From db032070b7d9be1350b7f598639943d053ab2c7b Mon Sep 17 00:00:00 2001 From: AlexSm Date: Mon, 22 Jul 2024 12:52:37 +0200 Subject: [PATCH] build: refresh Embedded UI (v6.11.0) (#6915) Co-authored-by: antonkovalenko --- .../viewer/monitoring/asset-manifest.json | 47 +++++++++++++++---- ydb/core/viewer/monitoring/index.html | 2 +- .../static/css/163.1284ddc4.chunk.css | 1 + .../static/css/2418.3ce054a3.chunk.css | 1 + .../static/css/321.e12415cc.chunk.css | 1 + .../static/css/328.a726d329.chunk.css | 1 + .../static/css/328.c0ade9c1.chunk.css | 1 - .../static/css/5246.49d67ade.chunk.css | 1 + .../static/css/5715.07ca45c9.chunk.css | 1 + .../static/css/7045.ebbcb0f7.chunk.css | 1 + .../static/css/7542.9a1fbaca.chunk.css | 1 + .../static/css/8076.5d26c70c.chunk.css | 1 + .../static/css/8429.ef9c97b7.chunk.css | 1 + .../static/css/9818.3ebe673f.chunk.css | 1 + .../monitoring/static/css/main.c8ce3bba.css | 9 ---- .../monitoring/static/css/main.efd6a3a5.css | 9 ++++ .../static/js/1343.b5e020af.chunk.js | 1 + .../static/js/163.2451f8a1.chunk.js | 1 + .../static/js/163.eea01641.chunk.js | 1 - .../static/js/2180.adcde51c.chunk.js | 1 + .../static/js/2335.eb54f5e5.chunk.js | 1 + .../static/js/2418.b7bfcc5a.chunk.js | 1 + .../static/js/321.9a9868e1.chunk.js | 2 + .../js/321.9a9868e1.chunk.js.LICENSE.txt | 3 ++ .../static/js/328.4a94f418.chunk.js | 1 + .../static/js/328.f24db8bf.chunk.js | 1 - .../static/js/496.5964f8aa.chunk.js | 1 + .../static/js/5246.224ba018.chunk.js | 1 + .../static/js/530.582a0d34.chunk.js | 1 + .../static/js/5715.0941d934.chunk.js | 1 + ...ac62d1.chunk.js => 6531.fbd78a3e.chunk.js} | 2 +- .../static/js/7045.53fa1aaf.chunk.js | 1 + .../static/js/7418.8548a710.chunk.js | 1 + .../static/js/7542.d61fc913.chunk.js | 1 + .../static/js/783.95eb5b37.chunk.js | 1 + .../static/js/8076.dac0f4f1.chunk.js | 1 + .../static/js/8429.b285ce5a.chunk.js | 1 + ...377882.chunk.js => 8607.e8952666.chunk.js} | 2 +- .../static/js/9759.7dadb893.chunk.js | 1 + .../static/js/9818.24b1ff88.chunk.js | 1 + .../monitoring/static/js/main.62a60ecb.js | 2 - .../monitoring/static/js/main.9fede0a0.js | 2 + ...CENSE.txt => main.9fede0a0.js.LICENSE.txt} | 13 +++-- ydb/core/viewer/ya.make | 44 +++++++++++++---- 44 files changed, 130 insertions(+), 39 deletions(-) create mode 100644 ydb/core/viewer/monitoring/static/css/163.1284ddc4.chunk.css create mode 100644 ydb/core/viewer/monitoring/static/css/2418.3ce054a3.chunk.css create mode 100644 ydb/core/viewer/monitoring/static/css/321.e12415cc.chunk.css create mode 100644 ydb/core/viewer/monitoring/static/css/328.a726d329.chunk.css delete mode 100644 ydb/core/viewer/monitoring/static/css/328.c0ade9c1.chunk.css create mode 100644 ydb/core/viewer/monitoring/static/css/5246.49d67ade.chunk.css create mode 100644 ydb/core/viewer/monitoring/static/css/5715.07ca45c9.chunk.css create mode 100644 ydb/core/viewer/monitoring/static/css/7045.ebbcb0f7.chunk.css create mode 100644 ydb/core/viewer/monitoring/static/css/7542.9a1fbaca.chunk.css create mode 100644 ydb/core/viewer/monitoring/static/css/8076.5d26c70c.chunk.css create mode 100644 ydb/core/viewer/monitoring/static/css/8429.ef9c97b7.chunk.css create mode 100644 ydb/core/viewer/monitoring/static/css/9818.3ebe673f.chunk.css delete mode 100644 ydb/core/viewer/monitoring/static/css/main.c8ce3bba.css create mode 100644 ydb/core/viewer/monitoring/static/css/main.efd6a3a5.css create mode 100644 ydb/core/viewer/monitoring/static/js/1343.b5e020af.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/163.2451f8a1.chunk.js delete mode 100644 ydb/core/viewer/monitoring/static/js/163.eea01641.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/2180.adcde51c.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/2335.eb54f5e5.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/2418.b7bfcc5a.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/321.9a9868e1.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/321.9a9868e1.chunk.js.LICENSE.txt create mode 100644 ydb/core/viewer/monitoring/static/js/328.4a94f418.chunk.js delete mode 100644 ydb/core/viewer/monitoring/static/js/328.f24db8bf.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/496.5964f8aa.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/5246.224ba018.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/530.582a0d34.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/5715.0941d934.chunk.js rename ydb/core/viewer/monitoring/static/js/{6531.7eac62d1.chunk.js => 6531.fbd78a3e.chunk.js} (96%) create mode 100644 ydb/core/viewer/monitoring/static/js/7045.53fa1aaf.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/7418.8548a710.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/7542.d61fc913.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/783.95eb5b37.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/8076.dac0f4f1.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/8429.b285ce5a.chunk.js rename ydb/core/viewer/monitoring/static/js/{8607.1e377882.chunk.js => 8607.e8952666.chunk.js} (99%) create mode 100644 ydb/core/viewer/monitoring/static/js/9759.7dadb893.chunk.js create mode 100644 ydb/core/viewer/monitoring/static/js/9818.24b1ff88.chunk.js delete mode 100644 ydb/core/viewer/monitoring/static/js/main.62a60ecb.js create mode 100644 ydb/core/viewer/monitoring/static/js/main.9fede0a0.js rename ydb/core/viewer/monitoring/static/js/{main.62a60ecb.js.LICENSE.txt => main.9fede0a0.js.LICENSE.txt} (88%) diff --git a/ydb/core/viewer/monitoring/asset-manifest.json b/ydb/core/viewer/monitoring/asset-manifest.json index bac25a42dd95..6a9aaa284f5c 100644 --- a/ydb/core/viewer/monitoring/asset-manifest.json +++ b/ydb/core/viewer/monitoring/asset-manifest.json @@ -1,7 +1,7 @@ { "files": { - "main.css": "./static/css/main.c8ce3bba.css", - "main.js": "./static/js/main.62a60ecb.js", + "main.css": "./static/css/main.efd6a3a5.css", + "main.js": "./static/js/main.9fede0a0.js", "static/js/3457.b193afe6.chunk.js": "./static/js/3457.b193afe6.chunk.js", "static/js/6876.867b698c.chunk.js": "./static/js/6876.867b698c.chunk.js", "static/js/2435.092e8d7f.chunk.js": "./static/js/2435.092e8d7f.chunk.js", @@ -106,7 +106,7 @@ "static/js/4964.c7c75eb0.chunk.js": "./static/js/4964.c7c75eb0.chunk.js", "static/js/1869.d6661a03.chunk.js": "./static/js/1869.d6661a03.chunk.js", "static/js/9917.67d792e3.chunk.js": "./static/js/9917.67d792e3.chunk.js", - "static/js/163.eea01641.chunk.js": "./static/js/163.eea01641.chunk.js", + "static/js/1343.b5e020af.chunk.js": "./static/js/1343.b5e020af.chunk.js", "static/js/3025.7e536c57.chunk.js": "./static/js/3025.7e536c57.chunk.js", "static/js/6156.0c562627.chunk.js": "./static/js/6156.0c562627.chunk.js", "static/js/6361.a9f11e7a.chunk.js": "./static/js/6361.a9f11e7a.chunk.js", @@ -151,13 +151,29 @@ "static/js/3898.1fec42e6.chunk.js": "./static/js/3898.1fec42e6.chunk.js", "static/js/1616.8a217b93.chunk.js": "./static/js/1616.8a217b93.chunk.js", "static/js/7522.1a0f9c02.chunk.js": "./static/js/7522.1a0f9c02.chunk.js", - "static/js/6531.7eac62d1.chunk.js": "./static/js/6531.7eac62d1.chunk.js", + "static/css/8429.ef9c97b7.chunk.css": "./static/css/8429.ef9c97b7.chunk.css", + "static/js/8429.b285ce5a.chunk.js": "./static/js/8429.b285ce5a.chunk.js", + "static/css/163.1284ddc4.chunk.css": "./static/css/163.1284ddc4.chunk.css", + "static/js/163.2451f8a1.chunk.js": "./static/js/163.2451f8a1.chunk.js", + "static/css/7045.ebbcb0f7.chunk.css": "./static/css/7045.ebbcb0f7.chunk.css", + "static/js/7045.53fa1aaf.chunk.js": "./static/js/7045.53fa1aaf.chunk.js", + "static/css/8076.5d26c70c.chunk.css": "./static/css/8076.5d26c70c.chunk.css", + "static/js/8076.dac0f4f1.chunk.js": "./static/js/8076.dac0f4f1.chunk.js", + "static/css/5715.07ca45c9.chunk.css": "./static/css/5715.07ca45c9.chunk.css", + "static/js/5715.0941d934.chunk.js": "./static/js/5715.0941d934.chunk.js", + "static/css/7542.9a1fbaca.chunk.css": "./static/css/7542.9a1fbaca.chunk.css", + "static/js/7542.d61fc913.chunk.js": "./static/js/7542.d61fc913.chunk.js", + "static/css/5246.49d67ade.chunk.css": "./static/css/5246.49d67ade.chunk.css", + "static/js/5246.224ba018.chunk.js": "./static/js/5246.224ba018.chunk.js", + "static/css/9818.3ebe673f.chunk.css": "./static/css/9818.3ebe673f.chunk.css", + "static/js/9818.24b1ff88.chunk.js": "./static/js/9818.24b1ff88.chunk.js", + "static/css/328.a726d329.chunk.css": "./static/css/328.a726d329.chunk.css", + "static/js/328.4a94f418.chunk.js": "./static/js/328.4a94f418.chunk.js", + "static/js/599.c58caf58.chunk.js": "./static/js/599.c58caf58.chunk.js", + "static/js/6531.fbd78a3e.chunk.js": "./static/js/6531.fbd78a3e.chunk.js", "static/css/4983.5c3e5de4.chunk.css": "./static/css/4983.5c3e5de4.chunk.css", "static/js/3757.7c534899.chunk.js": "./static/js/3757.7c534899.chunk.js", "static/js/4842.57182d38.chunk.js": "./static/js/4842.57182d38.chunk.js", - "static/css/328.c0ade9c1.chunk.css": "./static/css/328.c0ade9c1.chunk.css", - "static/js/328.f24db8bf.chunk.js": "./static/js/328.f24db8bf.chunk.js", - "static/js/599.c58caf58.chunk.js": "./static/js/599.c58caf58.chunk.js", "static/js/1155.4fce1854.chunk.js": "./static/js/1155.4fce1854.chunk.js", "static/js/6230.8e64216a.chunk.js": "./static/js/6230.8e64216a.chunk.js", "static/js/337.b6fc715e.chunk.js": "./static/js/337.b6fc715e.chunk.js", @@ -242,12 +258,23 @@ "static/js/8065.666ef449.chunk.js": "./static/js/8065.666ef449.chunk.js", "static/js/7520.d245d6ac.chunk.js": "./static/js/7520.d245d6ac.chunk.js", "static/js/4789.d52069de.chunk.js": "./static/js/4789.d52069de.chunk.js", - "static/js/8607.1e377882.chunk.js": "./static/js/8607.1e377882.chunk.js", + "static/js/8607.e8952666.chunk.js": "./static/js/8607.e8952666.chunk.js", + "static/css/2418.3ce054a3.chunk.css": "./static/css/2418.3ce054a3.chunk.css", + "static/js/2418.b7bfcc5a.chunk.js": "./static/js/2418.b7bfcc5a.chunk.js", "static/css/1551.d5e5efc2.chunk.css": "./static/css/1551.d5e5efc2.chunk.css", "static/js/1551.2e8e3e50.chunk.js": "./static/js/1551.2e8e3e50.chunk.js", "static/css/8424.308a04db.chunk.css": "./static/css/8424.308a04db.chunk.css", "static/js/8424.5b5c42b5.chunk.js": "./static/js/8424.5b5c42b5.chunk.js", + "static/js/530.582a0d34.chunk.js": "./static/js/530.582a0d34.chunk.js", + "static/css/321.e12415cc.chunk.css": "./static/css/321.e12415cc.chunk.css", + "static/js/321.9a9868e1.chunk.js": "./static/js/321.9a9868e1.chunk.js", "static/js/7645.6565454c.chunk.js": "./static/js/7645.6565454c.chunk.js", + "static/js/496.5964f8aa.chunk.js": "./static/js/496.5964f8aa.chunk.js", + "static/js/7418.8548a710.chunk.js": "./static/js/7418.8548a710.chunk.js", + "static/js/9759.7dadb893.chunk.js": "./static/js/9759.7dadb893.chunk.js", + "static/js/2180.adcde51c.chunk.js": "./static/js/2180.adcde51c.chunk.js", + "static/js/2335.eb54f5e5.chunk.js": "./static/js/2335.eb54f5e5.chunk.js", + "static/js/783.95eb5b37.chunk.js": "./static/js/783.95eb5b37.chunk.js", "static/media/codicon.ttf": "./static/media/codicon.762fced46d6cddbda272.ttf", "static/media/thumbsUp.svg": "./static/media/thumbsUp.d4a03fbaa64ce85a0045bf8ba77f8e2b.svg", "static/media/error.svg": "./static/media/error.ca9e31d5d3dc34da07e11a00f7af0842.svg", @@ -255,7 +282,7 @@ "index.html": "./index.html" }, "entrypoints": [ - "static/css/main.c8ce3bba.css", - "static/js/main.62a60ecb.js" + "static/css/main.efd6a3a5.css", + "static/js/main.9fede0a0.js" ] } \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/index.html b/ydb/core/viewer/monitoring/index.html index f2f7bcf03654..f827ebd48ef4 100644 --- a/ydb/core/viewer/monitoring/index.html +++ b/ydb/core/viewer/monitoring/index.html @@ -1 +1 @@ -YDB Monitoring
\ No newline at end of file +YDB Monitoring
\ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/163.1284ddc4.chunk.css b/ydb/core/viewer/monitoring/static/css/163.1284ddc4.chunk.css new file mode 100644 index 000000000000..6edb030ffba3 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/css/163.1284ddc4.chunk.css @@ -0,0 +1 @@ +.empty-state{padding:20px}.empty-state_size_m{height:400px}.empty-state__wrapper{display:grid;grid-template-areas:"image title" "image description" "image actions"}.empty-state__wrapper_size_s{height:120px;width:460px}.empty-state__wrapper_size_m{height:240px;width:800px}.empty-state__wrapper_position_center{margin:0 auto;position:relative}.empty-state__image{color:var(--g-color-base-info-light-hover);grid-area:image;justify-self:end;margin-right:60px}.g-root_theme_dark .empty-state__image{color:var(--g-color-base-generic)}.empty-state__title{align-self:center;font-weight:500;grid-area:title}.empty-state__title_size_s{font-size:var(--g-text-subheader-3-font-size);line-height:var(--g-text-subheader-3-line-height)}.empty-state__title_size_m{font-size:var(--g-text-header-2-font-size);line-height:var(--g-text-header-2-line-height)}.empty-state__description{font-size:var(--g-text-body-2-font-size);grid-area:description;line-height:var(--g-text-body-2-line-height)}.empty-state__actions{grid-area:actions}.empty-state__actions>*{margin-right:8px}.ydb-loader{align-items:center;flex:1 1 auto;justify-content:center}.kv-split,.ydb-loader{display:flex;height:100%}.kv-split{outline:none;-webkit-user-select:text;user-select:text;z-index:0}.kv-split.horizontal{flex-direction:row}.kv-split.vertical{flex-direction:column;min-height:100%;width:100%}.kv-split .gutter{background:var(--g-color-base-background);position:relative;z-index:10}.kv-split .gutter:after{background-color:var(--g-color-base-generic-ultralight);content:"";inset:0;position:absolute}.kv-split .gutter.active:after,.kv-split .gutter:hover:after{background-color:var(--g-color-line-generic-hover);transition:background-color 1s ease}.kv-split .gutter.disabled{display:none}.kv-split .gutter.gutter-vertical{cursor:row-resize;height:8px;width:100%}.kv-split .gutter.gutter-vertical:before{border-color:var(--g-color-base-generic-hover);border-style:solid;border-width:1px 0;content:"";height:4px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:16px}.kv-split .gutter.gutter-horizontal{cursor:col-resize;height:100%;width:8px}.kv-split .gutter.gutter-horizontal:before{border-color:var(--g-color-base-generic-hover);border-style:solid;border-width:0 1px;content:"";height:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:4px}.auto-refresh-control{align-items:center;display:flex;gap:var(--g-spacing-1)}.histogram{display:flex;flex:1 1 auto}.histogram__chart{align-items:baseline;border-bottom:1px solid var(--g-color-base-generic);border-left:1px solid var(--g-color-base-generic);display:flex;height:300px;margin-left:50px;margin-top:30px;position:relative;width:800px}.histogram__x-min{left:-3px}.histogram__x-max,.histogram__x-min{bottom:-25px;color:var(--g-color-text-secondary);position:absolute}.histogram__x-max{right:0}.histogram__y-min{bottom:-7px;left:-30px;width:20px}.histogram__y-max,.histogram__y-min{color:var(--g-color-text-secondary);position:absolute;text-align:right}.histogram__y-max{left:-60px;top:-5px;width:50px}.histogram__item{cursor:pointer;margin-right:.5%;width:1.5%}.heatmap{display:flex;flex:1 1 auto;flex-direction:column;height:100%;overflow:auto}.heatmap__limits{align-items:center;display:flex;margin-left:20px}.heatmap__limits-block{display:flex;margin-right:10px}.heatmap__limits-title{color:var(--g-color-text-secondary);margin-right:5px}.heatmap__row{align-items:center}.heatmap__row_overall{margin:15px 20px}.heatmap__row_overall .g-progress{margin:0;width:300px}.heatmap__label{font-size:var(--g-text-body-2-font-size);font-weight:500;line-height:var(--g-text-body-2-line-height);margin-right:16px;text-transform:uppercase}.heatmap__label_overall{margin-right:15px}.heatmap__items{overflow:auto}.heatmap__canvas-container{cursor:pointer;overflow:auto}.heatmap__filters{align-items:center;display:flex;margin:0 0 10px}.heatmap__filter-control{margin-right:10px;max-width:200px;min-width:100px}.heatmap__filter-control:last-child{margin-right:0}.heatmap__histogram-checkbox,.heatmap__sort-checkbox{margin-left:10px}.heatmap__row{display:flex}.heatmap .tablet,.heatmap__row{margin-bottom:2px}.ydb-resizeable-data-table{display:flex;padding-right:20px;width:-webkit-max-content;width:max-content}.ydb-search{min-width:100px}.table-skeleton{width:100%}.table-skeleton__row{align-items:center;display:flex;height:var(--data-table-row-height)}.table-skeleton__row .g-skeleton{height:var(--g-text-body-2-line-height)}.table-skeleton__col-1{margin-right:5%;width:10%}.table-skeleton__col-2{margin-right:5%;width:7%}.table-skeleton__col-3,.table-skeleton__col-4{margin-right:5%;width:5%}.table-skeleton__col-5{width:20%}.table-skeleton__col-full{width:100%}.ydb-table-with-controls-layout{box-sizing:border-box;display:inline-block;min-width:100%}.ydb-table-with-controls-layout__controls-wrapper{box-sizing:border-box;width:100%}.ydb-table-with-controls-layout__controls,.ydb-table-with-controls-layout__controls-wrapper{background-color:var(--g-color-base-background);left:0;position:-webkit-sticky;position:sticky;top:0;z-index:3}.ydb-table-with-controls-layout__controls{align-items:center;display:flex;gap:12px;height:62px;padding:16px 0 18px;width:-webkit-max-content;width:max-content}.ydb-table-with-controls-layout .ydb-paginated-table__head{top:62px}.ydb-table-with-controls-layout .data-table__sticky_moving{top:62px!important}.ydb-cell-with-popover{display:flex;max-width:100%}.ydb-cell-with-popover__popover{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.ydb-cell-with-popover__popover .g-popover__handler{display:inline}.ydb-status-icon__status-color_state_green{background-color:var(--ydb-color-status-green)}.ydb-status-icon__status-color_state_yellow{background-color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-color_state_blue{background-color:var(--ydb-color-status-blue)}.ydb-status-icon__status-color_state_red{background-color:var(--ydb-color-status-red)}.ydb-status-icon__status-color_state_grey{background-color:var(--ydb-color-status-grey)}.ydb-status-icon__status-color_state_orange{background-color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_blue{color:var(--ydb-color-status-blue)}.ydb-status-icon__status-icon_state_yellow{color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-icon_state_orange{color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_red{color:var(--ydb-color-status-red)}.ydb-status-icon__status-color,.ydb-status-icon__status-icon{border-radius:3px;flex-shrink:0}.ydb-status-icon__status-color_size_xs,.ydb-status-icon__status-icon_size_xs{aspect-ratio:1;height:12px;width:12px}.ydb-status-icon__status-color_size_s,.ydb-status-icon__status-icon_size_s{aspect-ratio:1;height:16px;width:16px}.ydb-status-icon__status-color_size_m,.ydb-status-icon__status-icon_size_m{aspect-ratio:1;height:18px;width:18px}.ydb-status-icon__status-color_size_l,.ydb-status-icon__status-icon_size_l{height:24px;width:24px}.entity-status{align-items:center;display:inline-flex;font-size:var(--g-text-body-2-font-size);height:100%;line-height:var(--g-text-body-2-line-height);max-width:100%}.entity-status__icon{margin-right:8px}.entity-status__clipboard-button{color:var(--g-color-text-secondary);display:flex;flex-shrink:0;margin-left:8px;opacity:0}.entity-status__clipboard-button:focus-visible,.entity-status__clipboard-button_visible{opacity:1}.entity-status__label{color:var(--g-color-text-complementary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin-right:2px}.entity-status__label_size_l{font-size:var(--g-text-header-2-font-size)}.entity-status__link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-status__link_with-left-trim{direction:rtl}.entity-status__link_with-left-trim .entity-status__name{unicode-bidi:plaintext}.entity-status__label_state_blue{color:var(--ydb-color-status-blue)}.entity-status__label_state_yellow{color:var(--ydb-color-status-yellow)}.entity-status__label_state_orange{color:var(--ydb-color-status-orange)}.entity-status__label_state_red{color:var(--ydb-color-status-red)}.ydb-node-host-wrapper__external-button{display:none;flex-shrink:0;margin-left:4px}.data-table__row:hover .ydb-node-host-wrapper__external-button,.ydb-paginated-table__row:hover .ydb-node-host-wrapper__external-button{display:inline-flex}.ydb-pool-bar{border:1px solid;border-radius:1px;cursor:pointer;height:20px;margin-right:2px;position:relative;width:6px}.ydb-pool-bar__popup-content{padding:10px;width:170px}.ydb-pool-bar:last-child{margin-right:0}.ydb-pool-bar_type_normal{border-color:var(--ydb-color-status-green)}.ydb-pool-bar_type_warning{border-color:var(--ydb-color-status-yellow)}.ydb-pool-bar_type_danger{border-color:var(--ydb-color-status-red)}.ydb-pool-bar__value{bottom:0;min-height:1px;position:absolute;width:100%}.ydb-pool-bar__value_type_normal{background-color:var(--ydb-color-status-green)}.ydb-pool-bar__value_type_warning{background-color:var(--ydb-color-status-yellow)}.ydb-pool-bar__value_type_danger{background-color:var(--ydb-color-status-red)}.ydb-pools-graph{display:flex}.progress-viewer{align-items:center;background:var(--g-color-base-generic);border-radius:2px;color:var(--g-color-text-complementary);display:flex;font-size:var(--g-text-body-2-font-size);height:23px;justify-content:center;min-width:120px;overflow:hidden;padding:0 4px;position:relative;white-space:nowrap;z-index:0}.progress-viewer_theme_dark{color:var(--g-color-text-light-primary)}.progress-viewer_theme_dark .progress-viewer__line{opacity:.75}.progress-viewer_status_good{background-color:var(--g-color-base-positive-light)}.progress-viewer_status_good .progress-viewer__line{background-color:var(--ydb-color-status-green)}.progress-viewer_status_warning{background-color:var(--g-color-base-yellow-light)}.progress-viewer_status_warning .progress-viewer__line{background-color:var(--ydb-color-status-yellow)}.progress-viewer_status_danger{background-color:var(--g-color-base-danger-light)}.progress-viewer_status_danger .progress-viewer__line{background-color:var(--ydb-color-status-red)}.progress-viewer__line{height:100%;left:0;position:absolute;top:0}.progress-viewer__text{position:relative;z-index:1}.progress-viewer_size_xs{font-size:var(--g-text-body-2-font-size);height:20px;line-height:var(--g-text-body-2-line-height)}.progress-viewer_size_s{font-size:var(--g-text-body-1-font-size);height:28px;line-height:28px}.progress-viewer_size_m{font-size:var(--g-text-body-2-font-size);height:32px;line-height:32px}.progress-viewer_size_ns{font-size:13px;height:24px;line-height:var(--g-text-subheader-3-line-height)}.progress-viewer_size_n{font-size:var(--g-text-body-1-font-size);height:36px;line-height:36px}.progress-viewer_size_l{font-size:var(--g-text-subheader-3-font-size);height:38px;line-height:38px}.progress-viewer_size_head{font-size:var(--g-text-body-1-font-size);line-height:36px}.tablets-statistic{align-items:center;display:flex;gap:2px}.tablets-statistic__tablet{border:1px solid;border-radius:2px;color:var(--g-color-text-secondary);display:inline-block;font-size:11px;height:20px;line-height:20px;padding:0 4px;text-align:center;text-decoration:none;text-transform:uppercase}.tablets-statistic__tablet_state_green{background-color:var(--g-color-base-positive-light);color:var(--g-color-text-positive)}.tablets-statistic__tablet_state_yellow{background-color:var(--g-color-base-warning-light);color:var(--g-color-text-warning)}.tablets-statistic__tablet_state_blue{background-color:var(--g-color-base-info-light);color:var(--g-color-text-info)}.tablets-statistic__tablet_state_orange{background-color:var(--g-color-base-warning-light);color:var(--g-color-text-warning-heavy)}.tablets-statistic__tablet_state_red{background:var(--g-color-base-danger-light);color:var(--g-color-text-danger)}.tablets-statistic__tablet_state_grey{border:1px solid var(--g-color-line-generic-hover);color:var(--g-color-text-secondary)}.ydb-usage-label_overload{background-color:var(--ydb-color-status-red);color:var(--g-color-text-light-primary)}.ydb-nodes__search{width:238px}.ydb-nodes__show-all-wrapper{left:0;margin-bottom:15px;position:-webkit-sticky;position:sticky}.ydb-nodes__node_unavailable{opacity:.6}.ydb-paginated-table{--paginated-table-cell-vertical-padding:5px;--paginated-table-cell-horizontal-padding:10px;--paginated-table-border-color:var(--g-color-base-generic-hover);--paginated-table-hover-color:var(--g-color-base-float-hover);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);width:100%}.ydb-paginated-table__table{border-collapse:initial;border-spacing:0;max-width:100%;table-layout:fixed;width:-webkit-max-content;width:max-content}.ydb-paginated-table__table th{padding:0}.ydb-paginated-table__row:hover{background:var(--paginated-table-hover-color)}.ydb-paginated-table__row_empty:hover{background-color:initial}.ydb-paginated-table__head{background-color:var(--g-color-base-background);left:0;position:-webkit-sticky;position:sticky;top:0;z-index:1}.ydb-paginated-table__sort-icon-container{color:inherit;display:flex;justify-content:center}.ydb-paginated-table__sort-icon-container_shadow{opacity:.15}.ydb-paginated-table__sort-icon_desc{transform:rotate(180deg)}.ydb-paginated-table__head-cell-wrapper{border-bottom:1px solid var(--paginated-table-border-color);display:flex;overflow-x:hidden;position:relative}.ydb-paginated-table__head-cell{align-items:center;display:flex;flex-direction:row;max-width:100%;padding:var(--paginated-table-cell-vertical-padding) var(--paginated-table-cell-horizontal-padding);width:100%}.ydb-paginated-table__head-cell_align_left{justify-content:left}.ydb-paginated-table__head-cell_align_center{justify-content:center}.ydb-paginated-table__head-cell_align_right{justify-content:right}.ydb-paginated-table__head-cell{cursor:default;font-weight:700;gap:8px}.ydb-paginated-table__head-cell_sortable{cursor:pointer}.ydb-paginated-table__head-cell_sortable.ydb-paginated-table__head-cell_align_right{flex-direction:row-reverse}.ydb-paginated-table__head-cell-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:-webkit-min-content;width:min-content}.ydb-paginated-table__row-cell{border-bottom:1px solid var(--paginated-table-border-color);display:table-cell;max-width:100%;overflow-x:hidden;padding:var(--paginated-table-cell-vertical-padding) var(--paginated-table-cell-horizontal-padding);text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;width:100%}.ydb-paginated-table__row-cell_align_left{text-align:left}.ydb-paginated-table__row-cell_align_center{text-align:center}.ydb-paginated-table__row-cell_align_right{text-align:right}.ydb-paginated-table__resize-handler{background-color:var(--g-color-base-generic);cursor:col-resize;height:100%;position:absolute;right:0;top:0;visibility:hidden;width:6px}.ydb-paginated-table__head-cell-wrapper:hover>.ydb-paginated-table__resize-handler,.ydb-paginated-table__resize-handler_resizing{visibility:visible}.usage-filter{min-width:100px}.usage-filter__option{flex-grow:1}.usage-filter__option-title{font-size:var(--g-text-body-1-font-size);height:var(--g-text-body-1-line-height);line-height:var(--g-text-body-1-line-height)}.usage-filter__option-meta{border-radius:3px;font-size:var(--g-text-caption-2-font-size);line-height:var(--g-text-caption-2-line-height);padding:0 5px;position:relative;z-index:0}.usage-filter__option-bar{background-color:var(--g-color-base-info-medium);border-radius:3px;bottom:0;left:0;position:absolute;top:0;z-index:-1}.stack{--ydb-stack-base-z-index:100;--ydb-stack-offset-x:4px;--ydb-stack-offset-y:4px;--ydb-stack-offset-x-hover:4px;--ydb-stack-offset-y-hover:8px;position:relative}.stack__layer{background:var(--g-color-base-background);transition:transform .1s ease-out}.stack__layer:first-child{position:relative;z-index:var(--ydb-stack-base-z-index)}.stack__layer+.stack__layer{height:100%;left:0;position:absolute;top:0;transform:translate(calc(var(--ydb-stack-level)*var(--ydb-stack-offset-x)),calc(var(--ydb-stack-level)*var(--ydb-stack-offset-y)));width:100%;z-index:calc(var(--ydb-stack-base-z-index) - var(--ydb-stack-level))}.stack:hover .stack__layer:first-child{transform:translate(calc(var(--ydb-stack-offset-x-hover)*-1),calc(var(--ydb-stack-offset-y-hover)*-1))}.stack:hover .stack__layer+.stack__layer{transform:translate(calc(var(--ydb-stack-level)*var(--ydb-stack-offset-x-hover)*2 - var(--ydb-stack-offset-x-hover)),calc(var(--ydb-stack-level)*var(--ydb-stack-offset-y-hover)*2 - var(--ydb-stack-offset-y-hover)))}.storage-disk-progress-bar{background-color:var(--g-color-base-misc-light);border:1px solid var(--g-color-base-misc-heavy);border-radius:4px;color:var(--g-color-text-primary);display:block;height:var(--g-text-body-3-line-height);min-width:50px;position:relative;text-align:center;z-index:0}.storage-disk-progress-bar_compact{border-radius:2px;height:12px;min-width:0}.storage-disk-progress-bar_compact .storage-disk-progress-bar__filled{border-radius:1px}.storage-disk-progress-bar .storage-disk-progress-bar__filled{background-color:var(--g-color-base-misc-medium)}.storage-disk-progress-bar_green{background-color:var(--g-color-base-positive-light);border-color:var(--g-color-base-positive-heavy)}.storage-disk-progress-bar_green .storage-disk-progress-bar__filled{background-color:var(--g-color-base-positive-medium)}.g-root_theme_dark .storage-disk-progress-bar_green .storage-disk-progress-bar__filled{background-color:#7ce37966}.storage-disk-progress-bar_blue{background-color:var(--g-color-base-info-light);border-color:var(--g-color-base-info-heavy)}.storage-disk-progress-bar_blue .storage-disk-progress-bar__filled{background-color:var(--g-color-base-info-medium)}.storage-disk-progress-bar_yellow{background-color:var(--g-color-base-yellow-light);border-color:var(--g-color-base-warning-heavy)}.storage-disk-progress-bar_yellow .storage-disk-progress-bar__filled{background-color:var(--g-color-base-yellow-medium)}.storage-disk-progress-bar_orange{background-color:var(--g-color-base-warning-light);border-color:var(--ydb-color-status-orange)}.storage-disk-progress-bar_orange .storage-disk-progress-bar__filled{background-color:var(--g-color-base-warning-medium)}.storage-disk-progress-bar_red{background-color:var(--g-color-base-danger-light);border-color:var(--g-color-base-danger-heavy)}.storage-disk-progress-bar_red .storage-disk-progress-bar__filled{background-color:var(--g-color-base-danger-medium)}.storage-disk-progress-bar__filled{border-radius:3px 0 0 3px;height:100%;left:0;position:absolute;top:0}.storage-disk-progress-bar_inverted .storage-disk-progress-bar__filled{border-radius:0 3px 3px 0;left:auto;right:0}.storage-disk-progress-bar__filled-title{color:inherit;font-size:var(--g-text-body-1-font-size);line-height:calc(var(--g-text-body-3-line-height) - 2px);position:relative;z-index:2}.pdisk-storage-popup,.vdisk-storage-popup{padding:12px}.vdisk-storage-popup .info-viewer+.info-viewer{border-top:1px solid var(--g-color-line-generic);margin-top:8px;padding-top:8px}.vdisk-storage-popup__donor-label{margin-bottom:8px}.ydb-vdisk-component,.ydb-vdisk-component__content{border-radius:4px}.global-storage-groups__vdisks-column{overflow:visible}.global-storage-groups__vdisks-wrapper{display:flex;gap:10px;justify-content:center;min-width:500px}.global-storage-groups__vdisks-item{flex-grow:1;max-width:200px}.data-table__row:hover .global-storage-groups__vdisks-item .stack__layer{background:var(--ydb-data-table-color-hover)}.global-storage-groups__pool-name-wrapper{width:230px}.global-storage-groups__group-id{font-weight:500}.pdisk-storage{position:relative;width:120px}.pdisk-storage__content{border-radius:4px;display:block;position:relative}.pdisk-storage__vdisks{display:flex;flex-wrap:wrap;gap:2px;margin-bottom:4px}.pdisk-storage__vdisks-item{flex-basis:5px;flex-shrink:0}.data-table__row:hover .pdisk-storage__vdisks-item .stack__layer{background:var(--ydb-data-table-color-hover)}.pdisk-storage__donors-stack{--ydb-stack-offset-x:0px;--ydb-stack-offset-y:-2px;--ydb-stack-offset-x-hover:0px;--ydb-stack-offset-y-hover:-7px}.pdisk-storage__media-type{color:var(--g-color-text-secondary);font-size:var(--g-text-body-1-font-size);line-height:var(--g-text-body-3-line-height);position:absolute;right:4px;top:0}.global-storage-nodes__pdisks-column{overflow:visible}.global-storage-nodes__pdisks-wrapper{align-items:flex-end;display:flex;justify-content:left;width:-webkit-max-content;width:max-content}.global-storage-nodes__pdisks-item{flex-grow:1;margin-right:10px;max-width:200px}.global-storage-nodes__pdisks-item:last-child{margin-right:0}.global-storage-nodes__group-id{font-weight:500}.global-storage-nodes__node_unavailable{opacity:.6}.global-storage__search{width:238px}.global-storage__table .g-tooltip{height:var(--g-text-body-2-line-height)!important}.global-storage .entity-status{justify-content:center}.ydb-critical-dialog{width:400px}.ydb-critical-dialog__warning-icon{color:var(--ydb-color-status-yellow);margin-right:16px}.ydb-critical-dialog__error-icon{color:var(--ydb-color-status-red);height:24px;margin-right:16px}.ydb-critical-dialog__body{align-items:center;display:flex}.developer-ui-link{display:none}.data-table__row:hover .developer-ui-link,.developer-ui-link_visible{display:inline-block}.schema-viewer__key-icon{align-items:center;display:flex}.speed-multimeter{display:flex;width:100%}.speed-multimeter__content{display:flex;flex-direction:row;flex-grow:1;justify-content:flex-end;line-height:22px}.speed-multimeter__displayed-value{display:flex;flex-direction:row;justify-content:flex-end;margin-right:10px}.speed-multimeter__bars{align-items:flex-start;display:flex;flex-direction:column;margin-right:5px;overflow:hidden;width:32px}.speed-multimeter__bar-container{height:6px;width:100%}.speed-multimeter__bar-container_highlighted{background:var(--g-color-line-generic)}.speed-multimeter__bar{height:100%;min-width:2px}.speed-multimeter__bar_color_light{background:var(--g-color-base-info-medium)}.speed-multimeter__bar_color_dark{background:var(--g-color-base-info-heavy)}.speed-multimeter__bar-container+.speed-multimeter__bar-container{margin-top:2px}.speed-multimeter__popover-container{align-items:center;display:flex;justify-content:center}.speed-multimeter__popover-content{padding:10px}.speed-multimeter__popover-header{display:block;font-size:18px;line-height:24px;margin-bottom:7px}.speed-multimeter__popover-row{display:block;font-size:13px;line-height:18px}.speed-multimeter__popover-row_color_primary{color:var(--g-color-text-primary)}.speed-multimeter__popover-row_color_secondary{color:var(--g-color-text-secondary)}.ydb-diagnostics-consumers-topic-stats{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.ydb-diagnostics-consumers-topic-stats__wrapper{border-left:1px solid var(--g-color-line-generic);display:flex;flex-direction:row;padding-left:16px}.ydb-diagnostics-consumers-topic-stats__item{display:flex;flex-direction:column;margin-right:20px}.ydb-diagnostics-consumers-topic-stats__label{color:var(--g-color-text-secondary);margin-bottom:4px}.ydb-diagnostics-consumers-topic-stats__value{align-items:center;display:flex;height:30px;justify-content:flex-start}.ydb-lag-popover-content__text{margin-bottom:10px}.ydb-lag-popover-content_type_read{max-width:280px}.ydb-lag-popover-content_type_write{max-width:220px}.ydb-diagnostics-consumers-columns-header__lags{white-space:nowrap}.ydb-diagnostics-consumers-columns__lags-header{text-align:center}.ydb-diagnostics-consumers{display:flex;flex-grow:1;flex:1 1 auto;flex-direction:column;height:100%;overflow:auto}.ydb-diagnostics-consumers__controls{align-items:center;display:flex;gap:12px;padding:16px 0 18px}.ydb-diagnostics-consumers__search{width:238px}.ydb-diagnostics-consumers__table-wrapper{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto}.ydb-diagnostics-consumers__table-content{height:100%;overflow:auto}.ydb-diagnostics-consumers__table .data-table__head-row:first-child .data-table__th:first-child,.ydb-diagnostics-consumers__table .data-table__td:first-child{background-color:var(--g-color-base-background);border-right:1px solid var(--g-color-line-generic);left:0;position:-webkit-sticky;position:sticky;z-index:2000}.ydb-diagnostics-consumers__table .data-table__row:hover .data-table__td:first-child{background-color:var(--ydb-data-table-color-hover)!important}.ydb-diagnostics-consumers__table .data-table__head-row:first-child .data-table__th:nth-child(0),.ydb-diagnostics-consumers__table .data-table__td:nth-child(0){border-right:initial;box-shadow:none}.ydb-diagnostics-consumers__table .data-table__head-row:first-child .data-table__th:first-child,.ydb-diagnostics-consumers__table .data-table__td:first-child{box-shadow:none}.kv-describe__message-container{padding:15px 0}.kv-describe__result{display:flex;flex:0 0 auto;overflow:auto;padding:10px 20px 20px 0}.kv-describe__tree{word-wrap:break-word;font-family:var(--g-font-family-monospace)!important;font-size:var(--g-text-code-1-font-size)!important;line-height:var(--g-text-code-1-line-height)!important;width:100%}.kv-describe__tree .json-inspector__leaf_composite:before{color:var(--g-color-text-secondary);font-size:9px;left:20px;position:absolute}.kv-describe__tree .json-inspector__leaf_composite.json-inspector__leaf_root:before{left:0}.kv-describe__tree :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:"[+]"}.kv-describe__tree .json-inspector__leaf_expanded.json-inspector__leaf_composite:before{content:"[-]"}.kv-describe__tree .json-inspector__key{color:var(--g-color-text-misc)}.kv-describe__tree .json-inspector__leaf{padding-left:20px;position:relative}.kv-describe__tree .json-inspector__leaf_root{padding-left:0}.kv-describe__tree .json-inspector__line{padding-left:20px}.kv-describe__tree .json-inspector__toolbar{border:1px solid var(--g-color-line-generic);border-radius:4px;margin-bottom:10px;width:300px}.kv-describe__tree .json-inspector__search{background:none;border:0 solid #0000;border-width:0 22px 0 8px;box-sizing:border-box;color:var(--g-color-text-primary);font-family:var(--g-text-body-font-family);font-size:13px;height:28px;margin:0;outline:0;padding:0;vertical-align:top;width:300px}.kv-describe__tree .json-inspector__value_helper{color:var(--g-color-text-secondary)}.kv-describe__tree .json-inspector__line:hover:after{background:var(--g-color-base-simple-hover)}.kv-describe__tree .json-inspector__show-original:before{color:var(--g-color-text-secondary)}.kv-describe__tree .json-inspector__show-original:hover:after,.kv-describe__tree .json-inspector__show-original:hover:before{color:var(--g-color-text-primary)}.kv-describe__tree .json-inspector__leaf.json-inspector__leaf_root.json-inspector__leaf_composite{max-width:calc(100% - 50px)}.ydb-external-data-source-info__location,.ydb-external-table-info__location{max-width:var(--tenant-object-info-max-value-width)}.ydb-view-info{display:flex;flex:1 1 auto;flex-direction:column}.ydb-view-info__properties-list{max-width:calc(100% - 40px)}.ydb-async-replication-paths__title,.ydb-overview-topic-stats__title,.ydb-view-info__title{font-size:var(--g-text-body-2-font-size);font-weight:600;line-height:var(--g-text-body-2-line-height);margin:15px 0 10px}.ydb-overview-topic-stats .ydb-loader{margin-top:50px}.ydb-overview-topic-stats .info-viewer__row{align-items:flex-start}.ydb-overview-topic-stats .speed-multimeter{margin-top:-5px}.ydb-overview-topic-stats .speed-multimeter__content{justify-content:flex-start}.ydb-overview-topic-stats__info .info-viewer__label-text_multiline{max-width:150px}.ydb-overview-topic-stats__bytes-written{margin-top:7px;padding-left:20px}.ydb-overview-topic-stats__bytes-written .info-viewer__label{min-width:180px}.ydb-diagnostics-table-info__title{font-size:var(--g-text-body-2-font-size);font-weight:600;line-height:var(--g-text-body-2-line-height);margin:15px 0 10px}.ydb-diagnostics-table-info__row{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}.ydb-diagnostics-table-info__col{align-items:flex-start;display:flex;flex-direction:column;justify-content:flex-start}.ydb-diagnostics-table-info__col:not(:last-child){margin-right:50px}.ydb-diagnostics-table-info__info-block{margin-bottom:20px}.ydb-diagnostics-table-info__info-block .info-viewer__items{grid-template-columns:minmax(-webkit-max-content,280px);grid-template-columns:minmax(max-content,280px)}.ydb-metric-chart{border:1px solid var(--g-color-line-generic);border-radius:8px;display:flex;flex-direction:column;padding:16px 16px 8px}.ydb-metric-chart__title{margin-bottom:10px}.ydb-metric-chart__chart{display:flex;height:100%;overflow:hidden;position:relative;width:100%}.ydb-metric-chart__error{left:50%;position:absolute;text-align:center;top:10%;transform:translateX(-50%);z-index:1}.ydb-timeframe-selector{display:flex;gap:2px}.ydb-tenant-dashboard{margin-bottom:var(--diagnostics-section-margin);width:var(--diagnostics-section-table-width)}.ydb-tenant-dashboard__controls{margin-bottom:10px}.ydb-tenant-dashboard__charts{display:flex;flex-flow:row wrap;gap:16px}.issue-tree-item{align-items:center;cursor:pointer;display:flex;height:40px;justify-content:space-between}.issue-tree-item__field{display:flex;overflow:hidden}.issue-tree-item__field_status{display:flex;white-space:nowrap}.issue-tree-item__field_additional{color:var(--g-color-text-link);cursor:pointer;width:-webkit-max-content;width:max-content}.issue-tree-item__field_additional:hover{color:var(--g-color-text-link-hover)}.issue-tree-item__field_message{flex-shrink:0;overflow:hidden;white-space:normal;width:300px}.issue-tree-item__field-tooltip.issue-tree-item__field-tooltip{max-width:500px;min-width:500px}.issue-tree-item__field-label{color:var(--g-color-text-secondary)}.issue-tree{display:flex}.issue-tree__block{width:100%}.issue-tree__checkbox{margin:5px 0 10px}.issue-tree__info-panel{background:var(--g-color-base-generic);border-radius:4px;height:100%;margin:11px 0;padding:8px 20px;position:-webkit-sticky;position:sticky}.issue-tree__inspector{word-wrap:break-word;font-family:var(--g-font-family-monospace)!important;font-size:var(--g-text-code-1-font-size)!important;line-height:var(--g-text-code-1-line-height)!important;width:100%}.issue-tree__inspector .json-inspector__leaf_composite:before{color:var(--g-color-text-secondary);font-size:9px;left:20px;position:absolute}.issue-tree__inspector .json-inspector__leaf_composite.json-inspector__leaf_root:before{left:0}.issue-tree__inspector :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:"[+]"}.issue-tree__inspector .json-inspector__leaf_expanded.json-inspector__leaf_composite:before{content:"[-]"}.issue-tree__inspector .json-inspector__key{color:var(--g-color-text-misc)}.issue-tree__inspector .json-inspector__leaf{padding-left:20px;position:relative}.issue-tree__inspector .json-inspector__leaf_root{padding-left:0}.issue-tree__inspector .json-inspector__line{padding-left:20px}.issue-tree__inspector .json-inspector__toolbar{border:1px solid var(--g-color-line-generic);border-radius:4px;margin-bottom:10px;width:300px}.issue-tree__inspector .json-inspector__search{background:none;border:0 solid #0000;border-width:0 22px 0 8px;box-sizing:border-box;color:var(--g-color-text-primary);font-family:var(--g-text-body-font-family);font-size:13px;height:28px;margin:0;outline:0;padding:0;vertical-align:top;width:300px}.issue-tree__inspector .json-inspector__value_helper{color:var(--g-color-text-secondary)}.issue-tree__inspector .json-inspector__line:hover:after{background:var(--g-color-base-simple-hover)}.issue-tree__inspector .json-inspector__show-original:before{color:var(--g-color-text-secondary)}.issue-tree__inspector .json-inspector__show-original:hover:after,.issue-tree__inspector .json-inspector__show-original:hover:before{color:var(--g-color-text-primary)}.issue-tree__inspector .json-inspector__leaf.json-inspector__leaf_root.json-inspector__leaf_composite{max-width:calc(100% - 50px)}.issue-tree__inspector .json-inspector__leaf_expanded.json-inspector__leaf_composite:before,.issue-tree__inspector :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:""}.issue-tree__inspector .json-inspector__line:hover:after{background:#0000}.issue-tree__inspector .json-inspector__show-original:hover:after,.issue-tree__inspector .json-inspector__show-original:hover:before{color:#0000}.issue-tree__inspector .json-inspector__value_helper{display:none}.issue-tree__inspector .json-inspector__value{overflow:hidden;word-break:break-all}.issue-tree__inspector .json-inspector__value>span{-webkit-user-select:all;user-select:all}.issue-tree .ydb-tree-view__item{height:40px}.issue-tree .ydb-tree-view .tree-view_arrow{height:40px;width:40px}.issue-tree .ydb-tree-view .ydb-tree-view__item{margin-left:calc(24px*var(--ydb-tree-view-level))!important;padding-left:0!important}.issue-tree .ydb-tree-view .issue-tree__info-panel{margin-left:calc(24px*var(--ydb-tree-view-level))}.healthcheck__details{width:872px}.healthcheck__details-content-wrapper{overflow-x:hidden}.healthcheck__preview{display:flex;flex-direction:column;height:100%}.healthcheck__preview-title{color:var(--g-color-text-link);font-size:var(--g-text-subheader-3-font-size);font-weight:600;line-height:var(--g-text-subheader-3-line-height)}.healthcheck__preview-content{line-height:24px;margin:auto}.healthcheck__preview-status-icon{height:64px;width:64px}.healthcheck__preview-title-wrapper{align-items:center;display:flex;gap:8px;margin-bottom:4px}.healthcheck__preview-issue{align-items:center;display:flex;flex-direction:column;gap:4px;position:relative;top:-8px}.healthcheck__preview-issue_good{color:var(--g-color-text-positive)}.healthcheck__preview-issue_good .healthcheck__self-check-status-indicator{background-color:var(--g-color-base-positive-light)}.healthcheck__preview-issue_degraded{color:var(--g-color-text-info)}.healthcheck__preview-issue_degraded .healthcheck__self-check-status-indicator{background-color:var(--g-color-base-info-light)}.healthcheck__preview-issue_emergency{color:var(--g-color-text-danger)}.healthcheck__preview-issue_emergency .healthcheck__self-check-status-indicator{background-color:var(--g-color-base-danger-light)}.healthcheck__preview-issue_unspecified{color:var(--g-color-text-misc)}.healthcheck__preview-issue_unspecified .healthcheck__self-check-status-indicator{background-color:var(--g-color-base-misc-light)}.healthcheck__preview-issue_maintenance_required{color:var(--g-color-text-warning-heavy)}.healthcheck__preview-issue_maintenance_required .healthcheck__self-check-status-indicator{background-color:var(--g-color-base-warning-light)}.healthcheck__self-check-status-indicator{text-wrap:nowrap;border-radius:4px;display:inline-block;font-size:13px;line-height:24px;padding:0 8px}.ydb-diagnostic-card{background-color:#0000;border:1px solid var(--g-color-line-generic);border-radius:8px;flex-shrink:0;padding:16px 16px 28px;width:206px}.ydb-diagnostic-card_active{background-color:var(--g-color-base-selection);border-color:var(--g-color-base-info-medium)}.ydb-diagnostic-card:hover{box-shadow:0 1px 5px var(--g-color-sfx-shadow);cursor:pointer}.ydb-metrics-card{min-height:252px}.ydb-metrics-card__header{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:10px}.ydb-metrics-card__label{color:var(--g-color-text-link);font-size:var(--g-text-subheader-3-font-size);font-weight:600;line-height:var(--g-text-subheader-3-line-height)}.ydb-metrics-card__content{color:var(--g-color-text-secondary);display:flex;flex-direction:column;gap:10px}.ydb-metrics-card__metric-title{height:var(--g-text-body-2-line-height)}.ydb-metrics-card_active .ydb-metrics-card__content{color:var(--g-color-text-complementary)}.metrics-cards{display:flex;gap:16px;margin-bottom:32px}.metrics-cards__tab{color:inherit;text-decoration:none}.kv-truncated-query{max-width:100%;vertical-align:top;white-space:pre;word-break:break-word}.kv-truncated-query__message{white-space:pre-wrap}.kv-truncated-query__message_color_secondary{color:var(--g-color-text-secondary)}.kv-truncated-query__popover-content{max-width:600px;overflow:hidden;white-space:pre}.kv-top-queries{display:flex;flex-direction:column;height:100%}.kv-top-queries .data-table__box .data-table__table-wrapper{padding-bottom:20px}.kv-top-queries .data-table__th{box-shadow:inset 0 -1px 0 0 var(--g-tabs-color-divider)}.kv-top-queries__search{width:238px}.kv-top-queries__row{cursor:pointer}.kv-top-queries__query{overflow:hidden;text-overflow:ellipsis;vertical-align:top;white-space:pre-wrap;word-break:break-word}.kv-top-queries__user-sid{max-width:200px;overflow:hidden;text-overflow:ellipsis}.tenant-overview{height:100%;overflow:auto;padding-bottom:20px}.tenant-overview__loader{display:flex;justify-content:center}.tenant-overview__tenant-name-wrapper{align-items:center;display:flex;overflow:hidden}.tenant-overview__top{align-items:center;display:flex;gap:4px;line-height:24px;margin-bottom:10px}.tenant-overview__top-label{font-weight:600;gap:10px;line-height:24px;margin-bottom:var(--diagnostics-section-title-margin)}.tenant-overview__info{left:0;position:-webkit-sticky;position:sticky;width:-webkit-max-content;width:max-content}.tenant-overview__title{font-size:var(--g-text-body-2-font-size);font-weight:700;line-height:var(--g-text-body-2-line-height);margin-bottom:10px}.tenant-overview__table:not(:last-child){margin-bottom:var(--diagnostics-section-margin)}.tenant-overview__top-queries-row{cursor:pointer}.tenant-overview__storage-info{margin-bottom:36px}.kv-detailed-overview{display:flex;gap:20px;height:100%;width:100%}.kv-detailed-overview__section{display:flex;flex-basis:calc(50% - 10px);flex-direction:column;flex-grow:1;flex-shrink:0;min-width:300px}.kv-detailed-overview__modal .g-modal__content{position:relative}.kv-detailed-overview__close-modal-button{position:absolute;right:13px;top:23px}.ydb-hot-keys__primary-key-column{align-items:center;display:flex;gap:5px}.ydb-hot-keys__help-card{left:0;margin-bottom:20px;padding:20px 40px 20px 20px;position:-webkit-sticky;position:sticky}.ydb-hot-keys__help-card__close-button{position:absolute;right:5px;top:5px}.node-network{border:1px solid #0000;border-radius:4px;box-sizing:border-box;color:var(--g-color-text-complementary);cursor:pointer;display:inline-block;font-size:12px;height:14px;line-height:14px;margin-bottom:5px;margin-right:5px;padding:0 5px;text-align:center;text-transform:uppercase;width:14px}.node-network_id{height:14px;width:42px}.node-network_blur{opacity:.25}.node-network_grey{background:var(--ydb-color-status-grey)}.node-network_black{background-color:var(--ydb-color-status-black);color:var(--g-color-text-light-primary)}.node-network_green{background-color:var(--ydb-color-status-green)}.node-network_yellow{background-color:var(--ydb-color-status-yellow)}.node-network_red{background-color:var(--ydb-color-status-red)}.node-network:hover{border:1px solid var(--g-color-text-primary)}.network{font-size:var(--g-text-body-2-font-size);justify-content:space-between;line-height:var(--g-text-body-2-line-height);max-width:1305px}.network,.network__nodes-row{display:flex;flex-grow:1;height:100%;overflow:auto}.network__nodes-row{align-items:flex-start;flex-direction:row}.network__inner{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto}.network__right{height:100%;padding-left:20px;width:100%}.network__left{border-right:1px solid var(--g-color-base-generic-accent);height:100%}.network__placeholder{align-items:center;display:flex;flex-direction:column;flex-grow:1;height:100%;justify-content:center;width:100%}.network__placeholder-text{margin-top:15px}.network__placeholder-img{color:#0000}.network__nodes{display:flex;flex-wrap:wrap}.network__nodes-container{min-width:325px}.network__nodes-container_right{margin-right:60px}.network__nodes-title{border-bottom:1px solid var(--g-color-base-generic-accent);color:var(--g-color-text-secondary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin:0 0 15px}.network__link{color:var(--g-color-base-brand);text-decoration:none}.network__title{font-size:var(--g-text-body-1-font-size);font-weight:500;line-height:var(--g-text-body-1-line-height);margin:20px 0}.network__checkbox-wrapper{align-items:center;display:flex}.network__checkbox-wrapper label{white-space:nowrap}.network__label{margin-bottom:16px}.network__controls{display:flex;gap:12px;margin:0 16px 16px 0}.network__controls-wrapper{display:flex;flex:1 1 auto;flex-direction:row;flex-direction:column}.network__select{margin:0 15px;max-width:115px}.network__rack-column{align-items:center;background-color:#00000012;border-radius:4px;display:flex;flex-direction:column;margin-bottom:5px;margin-right:5px;padding:2px}.network__rack-column .node-network{margin-right:0}.ydb-diagnostics-partitions-columns-header__multiline{white-space:normal}.ydb-diagnostics-partitions-columns-header__read-session{white-space:normal;width:80px}.ydb-diagnostics-partitions-columns-header__lags{white-space:nowrap}.ydb-diagnostics-partitions-columns-header__messages{white-space:normal;width:90px}.ydb-diagnostics-partitions-columns-header__messages-popover-content{max-width:200px}.ydb-diagnostics-partitions-columns__lags-header{text-align:center}.ydb-diagnostics-partitions{display:flex;flex-grow:1;flex:1 1 auto;flex-direction:column;height:100%;overflow:auto}.ydb-diagnostics-partitions__controls{align-items:center;display:flex;gap:12px;padding:16px 0 18px}.ydb-diagnostics-partitions__consumer-select{width:220px}.ydb-diagnostics-partitions__select-option_empty{color:var(--g-color-text-hint)}.ydb-diagnostics-partitions__search{width:238px}.ydb-diagnostics-partitions__search_partition{width:100px}.ydb-diagnostics-partitions__search_general{width:280px}.ydb-diagnostics-partitions__table-wrapper{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto}.ydb-diagnostics-partitions__table-content{height:100%;overflow:auto}.ydb-diagnostics-partitions__table .data-table__head-row:first-child .data-table__th:first-child,.ydb-diagnostics-partitions__table .data-table__td:first-child{background-color:var(--g-color-base-background);border-right:1px solid var(--g-color-line-generic);left:0;position:-webkit-sticky;position:sticky;z-index:2000}.ydb-diagnostics-partitions__table .data-table__row:hover .data-table__td:first-child{background-color:var(--ydb-data-table-color-hover)!important}.ydb-diagnostics-partitions__table .data-table__head-row:first-child .data-table__th:nth-child(0),.ydb-diagnostics-partitions__table .data-table__td:nth-child(0){border-right:initial;box-shadow:none}.ydb-diagnostics-partitions__table .data-table__head-row:first-child .data-table__th:first-child,.ydb-diagnostics-partitions__table .data-table__td:first-child{box-shadow:none}.date-range__input{background:#0000;border:1px solid var(--g-color-line-generic);border-radius:var(--g-border-radius-m);color:var(--g-color-text-primary);height:28px;min-width:190px;outline:none;padding:5px 8px}.date-range__input:focus,.date-range__input:focus-visible{border:1px solid var(--g-color-line-generic-hover)}.top-shards__hint{left:0;position:-webkit-sticky;position:sticky;width:-webkit-max-content;width:max-content}.kv-tenant-diagnostics{display:flex;flex-direction:column;height:100%;overflow:hidden}.kv-tenant-diagnostics__header-wrapper{background-color:var(--g-color-base-background);padding:0 20px 16px}.kv-tenant-diagnostics__tabs{align-items:center;box-shadow:inset 0 -1px 0 0 var(--g-color-line-generic);display:flex;justify-content:space-between}.kv-tenant-diagnostics__tabs .g-tabs_direction_horizontal{box-shadow:none}.kv-tenant-diagnostics__tab{margin-right:40px;text-decoration:none}.kv-tenant-diagnostics__tab:first-letter{text-transform:uppercase}.kv-tenant-diagnostics__page-wrapper{flex-grow:1;overflow:auto;padding:0 20px;width:100%}.kv-tenant-diagnostics__page-wrapper .ydb-table-with-controls-layout__controls{height:46px;padding-top:0}.kv-tenant-diagnostics__page-wrapper .ydb-table-with-controls-layout .data-table__sticky_moving,.kv-tenant-diagnostics__page-wrapper .ydb-table-with-controls-layout .ydb-paginated-table__head{top:46px!important}.ydb-queries-history{display:flex;flex:1 1 auto;flex-direction:column;height:100%;overflow:auto;padding:0 16px}.ydb-queries-history__table-row{cursor:pointer}.ydb-queries-history__query{flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:pre}.kv-pane-visibility-button_hidden{display:none}.kv-pane-visibility-button_bottom{transform:rotate(180deg)}.kv-pane-visibility-button_bottom.rotate{transform:rotate(0)}.kv-pane-visibility-button_left{transform:rotate(-90deg)}.kv-pane-visibility-button_left.rotate{transform:rotate(90deg)}.kv-pane-visibility-button_top.rotate{transform:rotate(180deg)}.kv-divider{background-color:var(--g-color-line-generic);height:100%;margin:0 4px;width:1px}.kv-fullscreen{background-color:var(--g-color-base-background);display:flex;flex-grow:1;inset:0;overflow:hidden;position:absolute;z-index:10}.kv-fullscreen__close-button{position:fixed;right:20px;top:8px;z-index:11}.kv-query-execution-status{align-items:center;color:var(--g-color-text-complementary);display:flex;gap:4px}.kv-query-execution-status__result-status-icon{color:var(--g-color-text-positive)}.kv-query-execution-status__result-status-icon_error{color:var(--g-color-text-danger)}.ydb-query-result-table__cell{cursor:pointer;display:inline-block;max-width:600px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.ydb-query-result-table__message{padding:15px 10px}.kv-shorty-string__toggle{font-size:.85em;margin-left:2em}.kv-result-issues{padding:0 10px}.kv-result-issues__error-message{align-items:center;background-color:var(--g-color-base-background);display:flex;left:0;padding:10px 0;position:-webkit-sticky;position:sticky;top:0;z-index:2}.kv-result-issues__error-message-text{margin:0 10px}.kv-issues{position:relative}.kv-issue_leaf{margin-left:31px}.kv-issue__issues{padding-left:24px}.kv-issue__line{align-items:flex-start;display:flex;margin:0 0 10px;padding:0 10px 0 0}.kv-issue__place-text{color:var(--g-color-text-secondary);display:inline-block;padding-right:10px;text-align:left}.kv-issue__message{display:flex;font-family:var(--g-font-family-monospace);font-size:var(--g-text-code-2-font-size);line-height:var(--g-text-header-2-line-height);margin-left:10px;margin-right:auto}.kv-issue__message-text{flex:1 1 auto;min-width:240px;white-space:pre-wrap;word-break:break-word}.kv-issue__code{color:var(--g-color-text-complementary);flex:0 0 auto;font-size:12px;margin-left:1.5em;padding:3px 0}.kv-issue__arrow-toggle{margin-right:5px}.yql-issue-severity{align-items:center;display:flex;line-height:28px;white-space:nowrap}.yql-issue-severity_severity_error .yql-issue-severity__icon,.yql-issue-severity_severity_fatal .yql-issue-severity__icon{color:var(--g-color-text-danger)}.yql-issue-severity_severity_warning .yql-issue-severity__icon{color:var(--g-color-text-warning)}.yql-issue-severity_severity_info .yql-issue-severity__icon{color:var(--g-color-text-info)}.yql-issue-severity__title{color:var(--g-color-text-complementary);margin-left:4px;text-transform:capitalize}.ydb-query-duration{align-items:center;color:var(--g-color-text-complementary);display:flex;margin-left:10px}.ydb-query-duration__item-with-popover{white-space:nowrap}.ydb-query-duration__popover{max-width:300px}.ydb-query-execute-result__result{display:flex;flex-direction:column;flex-grow:1;overflow:auto;padding-left:10px}.ydb-query-execute-result__result .data-table__box .data-table__table-wrapper{padding-bottom:20px}.ydb-query-execute-result__result .data-table__th{box-shadow:inset 0 -1px 0 0 var(--g-tabs-color-divider)}.ydb-query-execute-result__result .data-table__table-wrapper{padding-bottom:0}.ydb-query-execute-result__result-fullscreen-wrapper{display:flex;flex-direction:column;width:100%}.ydb-query-execute-result__result-tabs{padding-left:10px}.ydb-query-execute-result__error{padding:15px 10px}.ydb-query-execute-result__controls{align-items:center;background-color:var(--g-color-base-background);border-bottom:1px solid var(--g-color-line-generic);display:flex;height:53px;justify-content:space-between;padding:12px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:2}.ydb-query-execute-result__controls-right{display:flex;gap:12px;height:100%}.ydb-query-execute-result__controls-left{display:flex;gap:4px}.ydb-query-execute-result__inspector{word-wrap:break-word;font-family:var(--g-font-family-monospace)!important;font-size:var(--g-text-code-1-font-size)!important;line-height:var(--g-text-code-1-line-height)!important;padding:15px 10px;width:100%}.ydb-query-execute-result__inspector .json-inspector__leaf_composite:before{color:var(--g-color-text-secondary);font-size:9px;left:20px;position:absolute}.ydb-query-execute-result__inspector .json-inspector__leaf_composite.json-inspector__leaf_root:before{left:0}.ydb-query-execute-result__inspector :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:"[+]"}.ydb-query-execute-result__inspector .json-inspector__leaf_expanded.json-inspector__leaf_composite:before{content:"[-]"}.ydb-query-execute-result__inspector .json-inspector__key{color:var(--g-color-text-misc)}.ydb-query-execute-result__inspector .json-inspector__leaf{padding-left:20px;position:relative}.ydb-query-execute-result__inspector .json-inspector__leaf_root{padding-left:0}.ydb-query-execute-result__inspector .json-inspector__line{padding-left:20px}.ydb-query-execute-result__inspector .json-inspector__toolbar{border:1px solid var(--g-color-line-generic);border-radius:4px;margin-bottom:10px;width:300px}.ydb-query-execute-result__inspector .json-inspector__search{background:none;border:0 solid #0000;border-width:0 22px 0 8px;box-sizing:border-box;color:var(--g-color-text-primary);font-family:var(--g-text-body-font-family);font-size:13px;height:28px;margin:0;outline:0;padding:0;vertical-align:top;width:300px}.ydb-query-execute-result__inspector .json-inspector__value_helper{color:var(--g-color-text-secondary)}.ydb-query-execute-result__inspector .json-inspector__line:hover:after{background:var(--g-color-base-simple-hover)}.ydb-query-execute-result__inspector .json-inspector__show-original:before{color:var(--g-color-text-secondary)}.ydb-query-execute-result__inspector .json-inspector__show-original:hover:after,.ydb-query-execute-result__inspector .json-inspector__show-original:hover:before{color:var(--g-color-text-primary)}.ydb-query-execute-result__inspector .json-inspector__leaf.json-inspector__leaf_root.json-inspector__leaf_composite{max-width:calc(100% - 50px)}.ydb-query-execute-result__inspector_fullscreen{height:100%;overflow:auto;padding:10px;width:100%}.ydb-query-explain-result__result{display:flex;flex-direction:column;flex-grow:1;overflow:auto}.ydb-query-explain-result__text-message{padding:15px 20px}.ydb-query-explain-result__controls{align-items:center;background-color:var(--g-color-base-background);border-bottom:1px solid var(--g-color-line-generic);display:flex;height:53px;justify-content:space-between;padding:12px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:2}.ydb-query-explain-result__controls-right{display:flex;gap:12px;height:100%}.ydb-query-explain-result__controls-left{display:flex;gap:4px}.ydb-query-explain-result__explain-canvas-container{height:100%;overflow-y:auto;width:100%}.ydb-query-explain-result__explain-canvas-container_hidden{display:none}.ydb-query-explain-result__inspector{word-wrap:break-word;font-family:var(--g-font-family-monospace)!important;font-size:var(--g-text-code-1-font-size)!important;line-height:var(--g-text-code-1-line-height)!important;overflow-y:auto;padding:15px 20px;width:100%}.ydb-query-explain-result__inspector .json-inspector__leaf_composite:before{color:var(--g-color-text-secondary);font-size:9px;left:20px;position:absolute}.ydb-query-explain-result__inspector .json-inspector__leaf_composite.json-inspector__leaf_root:before{left:0}.ydb-query-explain-result__inspector :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:"[+]"}.ydb-query-explain-result__inspector .json-inspector__leaf_expanded.json-inspector__leaf_composite:before{content:"[-]"}.ydb-query-explain-result__inspector .json-inspector__key{color:var(--g-color-text-misc)}.ydb-query-explain-result__inspector .json-inspector__leaf{padding-left:20px;position:relative}.ydb-query-explain-result__inspector .json-inspector__leaf_root{padding-left:0}.ydb-query-explain-result__inspector .json-inspector__line{padding-left:20px}.ydb-query-explain-result__inspector .json-inspector__toolbar{border:1px solid var(--g-color-line-generic);border-radius:4px;margin-bottom:10px;width:300px}.ydb-query-explain-result__inspector .json-inspector__search{background:none;border:0 solid #0000;border-width:0 22px 0 8px;box-sizing:border-box;color:var(--g-color-text-primary);font-family:var(--g-text-body-font-family);font-size:13px;height:28px;margin:0;outline:0;padding:0;vertical-align:top;width:300px}.ydb-query-explain-result__inspector .json-inspector__value_helper{color:var(--g-color-text-secondary)}.ydb-query-explain-result__inspector .json-inspector__line:hover:after{background:var(--g-color-base-simple-hover)}.ydb-query-explain-result__inspector .json-inspector__show-original:before{color:var(--g-color-text-secondary)}.ydb-query-explain-result__inspector .json-inspector__show-original:hover:after,.ydb-query-explain-result__inspector .json-inspector__show-original:hover:before{color:var(--g-color-text-primary)}.ydb-query-explain-result__inspector .json-inspector__leaf.json-inspector__leaf_root.json-inspector__leaf_composite{max-width:calc(100% - 50px)}.ydb-query-explain-result__inspector_fullscreen{padding:10px}.ydb-query-explain-result__ast{height:100%;overflow:hidden;white-space:pre-wrap;width:100%}.ydb-query-explain-result__loader{align-items:center;display:flex;justify-content:center;margin-top:20px;width:100%}.kv-preview{display:flex;flex:1 1 auto;flex-direction:column;height:100%}.kv-preview .data-table__box .data-table__table-wrapper{padding-bottom:20px}.kv-preview .data-table__th{box-shadow:inset 0 -1px 0 0 var(--g-tabs-color-divider)}.kv-preview__header{align-items:center;background-color:var(--g-color-base-background);border-bottom:1px solid var(--g-color-line-generic);display:flex;height:53px;justify-content:space-between;padding:0 20px;position:-webkit-sticky;position:sticky;top:0}.kv-preview__title{display:flex}.kv-preview__table-name{color:var(--g-color-text-complementary);margin-left:4px}.kv-preview__controls-left{display:flex;gap:5px}.kv-preview__message-container{padding:15px 20px}.kv-preview__loader-container{align-items:center;display:flex;height:100%;justify-content:center}.kv-preview__result{height:calc(100% - 40px);overflow:auto;padding-left:10px;width:100%}.kv-fullscreen .kv-preview__result{height:100%}.ydb-save-query__dialog-row{align-items:flex-start;display:flex}.ydb-save-query__dialog-row+.ydb-save-query__dialog-row{margin-top:var(--g-text-body-1-line-height)}.ydb-save-query__field-title{font-weight:500;line-height:28px;margin-right:12px;white-space:nowrap}.ydb-save-query__field-title.required:after{color:var(--g-color-text-danger);content:"*"}.ydb-save-query__control-wrapper{display:flex;flex-grow:1;min-height:48px}.ydb-query-editor-controls{align-items:flex-end;display:flex;flex:0 0 40px;gap:24px;justify-content:space-between;min-height:40px;padding:5px 0}.ydb-query-editor-controls__left{display:flex;gap:12px}.ydb-query-editor-controls__mode-selector__button{margin-left:2px;width:241px}.ydb-query-editor-controls__mode-selector__button-content{align-items:center;display:flex;justify-content:space-between;width:215px}.ydb-query-editor-controls__mode-selector__popup{width:241px}.ydb-query-editor-controls__item-with-popover{align-items:center;display:flex;height:24px;line-height:normal}.ydb-query-editor-controls__popover{max-width:420px;white-space:pre-wrap}.query-editor{display:flex;flex:1 1 auto;flex-direction:column;height:100%;position:relative}.query-editor .data-table__box .data-table__table-wrapper{padding-bottom:20px}.query-editor .data-table__th{box-shadow:inset 0 -1px 0 0 var(--g-tabs-color-divider)}.query-editor__monaco{border:1px solid var(--g-color-line-generic);display:flex;height:100%;position:relative;width:100%}.query-editor__monaco-wrapper{height:calc(100% - 49px);min-height:0;width:100%}.query-editor__pane-wrapper{background-color:var(--g-color-base-background);display:flex;flex-direction:column;z-index:2}.query-editor__pane-wrapper_top{border-bottom:1px solid var(--g-color-line-generic);padding:0 16px}.ydb-saved-queries{display:flex;flex:1 1 auto;flex-direction:column;height:100%;overflow:auto;padding:0 16px}.ydb-saved-queries__row{cursor:pointer}.ydb-saved-queries__row :hover .ydb-saved-queries__controls{display:flex}.ydb-saved-queries__query-name{overflow:hidden;text-overflow:ellipsis;white-space:pre-wrap}.ydb-saved-queries__query{align-items:center;display:flex;flex-direction:row;justify-content:space-between}.ydb-saved-queries__query-body{flex-grow:1;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:pre}.ydb-saved-queries__controls{display:none}.ydb-saved-queries__dialog-query-name{font-weight:500}.ydb-query{display:flex;flex:1 1 auto;flex-direction:column;max-height:calc(100% - 56px)}.ydb-query__tabs{padding:0 20px 16px}.ydb-query__content{height:100%;overflow:hidden}.ydb-tenant-navigation{padding:12px 16px 8px}.ydb-tenant-navigation__item{align-items:center;display:flex;gap:5px}.ydb-tenant-navigation__icon{flex-shrink:0}.ydb-tenant-navigation__text{overflow:hidden;text-overflow:ellipsis}.object-general{display:flex;flex-direction:column;flex-grow:1;height:100%;max-height:100%;width:100%}.object-general__loader{display:flex}.ydb-acl{width:100%}.ydb-acl__owner-container{padding-bottom:25px}.ydb-acl__result{padding-bottom:16px}.ydb-acl__owner{font-weight:600}.ydb-acl__definition-content{display:flex;flex-direction:column}.ydb-acl__group-label{font-size:var(--g-text-subheader-2-font-size);line-height:var(--g-text-subheader-2-line-height)}.ydb-schema-create-directory-dialog__label{display:flex;flex-direction:column;margin-bottom:8px}.ydb-schema-create-directory-dialog__description{color:var(--g-color-text-secondary)}.ydb-schema-create-directory-dialog__input-wrapper{min-height:48px}.object-summary{display:flex;flex-direction:column;flex-grow:1;height:100%;max-height:100%;overflow:hidden;position:relative;width:100%}.object-summary__overview-wrapper{display:flex;flex-grow:1;overflow:auto;padding:0 12px 16px}.object-summary_hidden{visibility:hidden}.object-summary__action-button{background-color:var(--g-color-base-background);position:absolute;right:5px;top:19px}.object-summary__action-button_hidden{visibility:hidden}.object-summary__tree-wrapper{display:flex;flex-direction:column}.object-summary__tree{flex:1 1 auto;height:100%;overflow-y:scroll;padding:0 12px 12px 16px}.object-summary__tree-header{padding:23px 12px 17px 20px}.object-summary__sticky-top{background-color:var(--g-color-base-background);left:0;position:-webkit-sticky;position:sticky;top:0;z-index:5}.object-summary__tabs{padding:8px 12px 16px}.object-summary__tab{margin-right:40px;text-decoration:none}.object-summary__tab:first-letter{text-transform:uppercase}.object-summary__info{display:flex;flex-direction:column;overflow:hidden}.object-summary__info-controls{display:flex;gap:4px}.object-summary__info-action-button{background-color:var(--g-color-base-background)}.object-summary__info-action-button_hidden{display:none}.object-summary__rotated90{transform:rotate(-90deg)}.object-summary__rotated180{transform:rotate(180deg)}.object-summary__rotated270{transform:rotate(90deg)}.object-summary__info-header{align-items:center;border-bottom:1px solid var(--g-color-line-generic);display:flex;justify-content:space-between;padding:12px 12px 10px}.object-summary__info-title{align-items:center;display:flex;font-weight:600;overflow:hidden}.object-summary__path-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.object-summary__entity-type{background-color:var(--g-color-base-generic);border-radius:3px;display:inline-block;font-weight:400;margin-right:5px;padding:3px 8px;text-transform:lowercase}.object-summary__entity-type_error{background-color:#0000;padding:3px 0}.link{color:var(--g-color-text-link);text-decoration:none}.link_external{margin-right:10px}.link:hover{color:var(--g-color-text-link-hover)}.tenant-page{display:flex;flex:1 1 auto;flex-direction:column;font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);overflow:hidden}.tenant-page__main{flex-grow:1} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/2418.3ce054a3.chunk.css b/ydb/core/viewer/monitoring/static/css/2418.3ce054a3.chunk.css new file mode 100644 index 000000000000..150d32213d68 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/css/2418.3ce054a3.chunk.css @@ -0,0 +1 @@ +.g-select{display:inline-block;max-width:100%}.g-select_width_max{width:100%}.g-select-filter .g-select-filter__input,.g-select-filter .g-select-filter__input:focus,.g-select-filter .g-select-filter__input:hover{border-color:var(--g-color-line-generic-active)}.g-select-list{display:flex;margin:4px 0;overflow:hidden}.g-popup .g-select-list:first-child,.g-popup .g-select-list:last-child{border-radius:0}.g-select-list:not(.g-select-list_virtualized){overflow:auto}.g-select-list_mobile{max-height:100%}.g-select-list__group-label,.g-select-list__group-label-custom{box-sizing:border-box;height:auto;padding:0;position:relative;width:100%}.g-select-list__group-label{font-size:var(--g-text-body-1-font-size)}.g-select-list_size_s .g-select-list__group-label:not(.g-select-list__group-label_empty){height:24px;padding:8px 8px 4px}.g-select-list_size_m .g-select-list__group-label:not(.g-select-list__group-label_empty){height:28px;padding:8px 8px 4px}.g-select-list_size_l .g-select-list__group-label:not(.g-select-list__group-label_empty){height:36px;padding:10px 12px 6px}.g-select-list_size_xl .g-select-list__group-label:not(.g-select-list__group-label_empty){font-size:var(--g-text-body-2-font-size);height:44px;padding:12px 12px 8px}.g-select-list_mobile .g-select-list__group-label:not(.g-select-list__group-label_empty){font-size:var(--g-text-body-2-font-size);height:36px;padding:12px 12px 8px}.g-select-list__item:not(:first-child) .g-select-list__group-label{margin-block-start:5px}.g-select-list__item:not(:first-child) .g-select-list__group-label:before{background-color:var(--g-color-line-generic);content:"";height:1px;inset-block-start:-3px;inset-inline-start:0;position:absolute;width:100%}.g-select-list__group-label-content{font-weight:var(--g-text-accent-font-weight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.g-select-list__item.g-list__item_selected{background:none}.g-select-list__item.g-list__item_active,.g-select-list__item.g-list__item_selected:hover{background:var(--g-color-base-simple-hover)}.g-select-list__option{align-items:center;box-sizing:border-box;cursor:pointer;display:flex;height:100%;width:100%}.g-select-list_size_s .g-select-list__option{--_--select-tick-icon-padding-right:4px;padding:0 8px}.g-select-list_size_s .g-select-list__option .g-select-list__option-default-label{height:24px;line-height:24px}.g-select-list_size_m .g-select-list__option{--_--select-tick-icon-padding-right:4px;padding:0 8px}.g-select-list_size_m .g-select-list__option .g-select-list__option-default-label{height:28px;line-height:28px}.g-select-list_size_l .g-select-list__option{--_--select-tick-icon-padding-right:6px;padding:0 12px}.g-select-list_size_l .g-select-list__option .g-select-list__option-default-label{height:36px;line-height:36px}.g-select-list_size_xl .g-select-list__option{--_--select-tick-icon-padding-right:6px;padding:0 12px}.g-select-list_size_xl .g-select-list__option .g-select-list__option-default-label{font-size:var(--g-text-body-2-font-size);height:44px;line-height:44px}.g-select-list_mobile .g-select-list__option{padding:0 12px}.g-select-list_mobile .g-select-list__option .g-select-list__option-default-label{font-size:var(--g-text-body-2-font-size);height:36px;line-height:36px}.g-select-list_mobile .g-select-list__option .g-select-list__tick-icon{padding-inline-end:6px}.g-select-list__option_colored{background-color:var(--g-color-base-selection)}.g-select-list__option_disabled{cursor:default}.g-select-list__option-default-label{font-size:var(--g-text-body-1-font-size);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.g-select-list__option-default-label_disabled{color:var(--g-color-text-secondary)}.g-select-list__tick-icon{box-sizing:initial;color:var(--g-color-text-info);flex:0 0 16px;padding-inline-end:var(--_--select-tick-icon-padding-right);visibility:hidden}.g-select-list__tick-icon_shown{visibility:visible}.g-select-list__loading-indicator{align-items:center;display:flex;justify-content:center;width:100%}.g-select-empty-placeholder{color:var(--g-color-text-hint);margin:4px}.g-select-empty-placeholder_empty{margin-block-start:0}.g-select-control{--_--focus-outline-color:var(--g-select-focus-outline-color);align-items:center;background:none;border:none;box-sizing:border-box;color:inherit;cursor:pointer;display:inline-flex;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);outline:none;padding:0;position:relative;transition:transform .1s ease-out;width:100%;z-index:0}.g-select-control_disabled{cursor:default}.g-select-control_size_s{--_--text-right-padding:8px;--_--border-radius:var(--g-border-radius-s);height:24px;padding:4px calc(var(--_--text-right-padding) + 1px)}.g-select-control_size_m{--_--text-right-padding:8px;--_--border-radius:var(--g-border-radius-m);height:28px;padding:6px calc(var(--_--text-right-padding) + 1px)}.g-select-control_size_l{--_--text-right-padding:12px;--_--border-radius:var(--g-border-radius-l);height:36px;padding:10px calc(var(--_--text-right-padding) + 1px)}.g-select-control_size_xl{--_--text-right-padding:12px;--_--border-radius:var(--g-border-radius-xl);height:44px;padding:12px calc(var(--_--text-right-padding) + 1px)}.g-select-control__button{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:inline-flex;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);height:100%;outline:none;overflow:hidden;padding:0;transition:color .15s linear,background-color .15s linear;width:100%}.g-select-control__button.g-select-control__button_pin_round-round:before{border-radius:var(--_--border-radius)}.g-select-control__button.g-select-control__button_pin_brick-brick:before{border-radius:0}.g-select-control__button.g-select-control__button_pin_clear-clear:before{border-inline:0;border-radius:0}.g-select-control__button.g-select-control__button_pin_circle-circle:before{border-radius:100px}.g-select-control__button.g-select-control__button_pin_round-brick:before{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-start-end-radius:0;border-start-start-radius:var(--_--border-radius)}.g-select-control__button.g-select-control__button_pin_brick-round:before{border-end-end-radius:var(--_--border-radius);border-end-start-radius:0;border-start-end-radius:var(--_--border-radius);border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_round-clear:before{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-inline-end:0;border-start-end-radius:0;border-start-start-radius:var(--_--border-radius)}.g-select-control__button.g-select-control__button_pin_clear-round:before{border-end-end-radius:var(--_--border-radius);border-end-start-radius:0;border-inline-start:0;border-start-end-radius:var(--_--border-radius);border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_brick-clear:before{border-inline-end:0;border-radius:0}.g-select-control__button.g-select-control__button_pin_clear-brick:before{border-inline-start:0;border-radius:0}.g-select-control__button.g-select-control__button_pin_circle-brick:before{border-end-end-radius:0;border-end-start-radius:100px;border-start-end-radius:0;border-start-start-radius:100px}.g-select-control__button.g-select-control__button_pin_brick-circle:before{border-end-end-radius:100px;border-end-start-radius:0;border-start-end-radius:100px;border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_circle-clear:before{border-end-end-radius:0;border-end-start-radius:100px;border-inline-end:0;border-start-end-radius:0;border-start-start-radius:100px}.g-select-control__button.g-select-control__button_pin_clear-circle:before{border-end-end-radius:100px;border-end-start-radius:0;border-inline-start:0;border-start-end-radius:100px;border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_round-round:after{border-radius:var(--_--border-radius)}.g-select-control__button.g-select-control__button_pin_brick-brick:after{border-radius:0}.g-select-control__button.g-select-control__button_pin_clear-clear:after{border-inline:0;border-radius:0}.g-select-control__button.g-select-control__button_pin_circle-circle:after{border-radius:100px}.g-select-control__button.g-select-control__button_pin_round-brick:after{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-start-end-radius:0;border-start-start-radius:var(--_--border-radius)}.g-select-control__button.g-select-control__button_pin_brick-round:after{border-end-end-radius:var(--_--border-radius);border-end-start-radius:0;border-start-end-radius:var(--_--border-radius);border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_round-clear:after{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-inline-end:0;border-start-end-radius:0;border-start-start-radius:var(--_--border-radius)}.g-select-control__button.g-select-control__button_pin_clear-round:after{border-end-end-radius:var(--_--border-radius);border-end-start-radius:0;border-inline-start:0;border-start-end-radius:var(--_--border-radius);border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_brick-clear:after{border-inline-end:0;border-radius:0}.g-select-control__button.g-select-control__button_pin_clear-brick:after{border-inline-start:0;border-radius:0}.g-select-control__button.g-select-control__button_pin_circle-brick:after{border-end-end-radius:0;border-end-start-radius:100px;border-start-end-radius:0;border-start-start-radius:100px}.g-select-control__button.g-select-control__button_pin_brick-circle:after{border-end-end-radius:100px;border-end-start-radius:0;border-start-end-radius:100px;border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_circle-clear:after{border-end-end-radius:0;border-end-start-radius:100px;border-inline-end:0;border-start-end-radius:0;border-start-start-radius:100px}.g-select-control__button.g-select-control__button_pin_clear-circle:after{border-end-end-radius:100px;border-end-start-radius:0;border-inline-start:0;border-start-end-radius:100px;border-start-start-radius:0}.g-select-control__button:before{border:1px solid var(--g-color-line-generic);border-radius:var(--_--border-radius);content:"";inset:0;position:absolute}.g-select-control__button:after{content:"";inset:0;position:absolute;z-index:-1}.g-select-control__button_view_clear,.g-select-control__button_view_clear:after,.g-select-control__button_view_clear:before{border-color:#0000}.g-select-control__button_size_l,.g-select-control__button_size_m,.g-select-control__button_size_s{font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-short-line-height)}.g-select-control__button_size_xl{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.g-select-control__button_error:before{--_--focus-outline-color:var(--g-color-line-danger);border-color:var(--g-color-line-danger)}.g-select-control__button:hover:after{background-color:var(--g-color-base-simple-hover)}.g-select-control__button_disabled{color:var(--g-color-text-hint);pointer-events:none}.g-select-control__button_disabled:after{background-color:var(--g-color-base-generic-accent-disabled)}.g-select-control__button_disabled:before{border-color:#0000}.g-select-control__button:not(.g-select-control__button_error):not(.g-select-control__button_disabled):not(.g-select-control__button_view_clear):hover:before{border-color:var(--g-color-line-generic-hover)}.g-select-control__button:not(.g-select-control__button_error):not(.g-select-control__button_view_clear):focus-visible:before,.g-select-control__button_open:not(.g-select-control__button_error):not(.g-select-control__button_view_clear):before{border-color:var(--g-color-line-generic-active)}.g-select-control__button:focus-visible:before{outline:2px solid var(--_--focus-outline-color);outline:2px solid var(--g-select-focus-outline-color,var(--_--focus-outline-color));outline-offset:-1px}.g-select-control:not(.g-select-control_disabled):not(.g-select-control_no-active):active{transform:scale(.96)}.g-select-control__label{flex-shrink:0;font-weight:var(--g-text-accent-font-weight);margin-inline-end:4px;max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.g-select-control__option-text,.g-select-control__placeholder{overflow:hidden;padding-inline-end:var(--_--text-right-padding);text-overflow:ellipsis;white-space:nowrap}.g-select-control_has-clear.g-select-control_size_s .g-select-control__button_disabled .g-select-control__option-text,.g-select-control_has-clear.g-select-control_size_s .g-select-control__button_disabled .g-select-control__placeholder{padding-inline-end:calc(24px + var(--_--text-right-padding))}.g-select-control_has-clear.g-select-control_size_m .g-select-control__button_disabled .g-select-control__option-text,.g-select-control_has-clear.g-select-control_size_m .g-select-control__button_disabled .g-select-control__placeholder{padding-inline-end:calc(28px + var(--_--text-right-padding))}.g-select-control_has-clear.g-select-control_size_l .g-select-control__button_disabled .g-select-control__option-text,.g-select-control_has-clear.g-select-control_size_l .g-select-control__button_disabled .g-select-control__placeholder{padding-inline-end:calc(36px + var(--_--text-right-padding))}.g-select-control_has-clear.g-select-control_size_xl .g-select-control__button_disabled .g-select-control__option-text,.g-select-control_has-clear.g-select-control_size_xl .g-select-control__button_disabled .g-select-control__placeholder{padding-inline-end:calc(44px + var(--_--text-right-padding))}.g-select-control__placeholder{color:var(--g-color-text-hint)}.g-select-control_has-clear:not(.g-select-control_has-value).g-select-control_size_s .g-select-control__button:not(.g-select-control__button_disabled) .g-select-control__placeholder{padding-inline-end:calc(24px + var(--_--text-right-padding))}.g-select-control_has-clear:not(.g-select-control_has-value).g-select-control_size_m .g-select-control__button:not(.g-select-control__button_disabled) .g-select-control__placeholder{padding-inline-end:calc(28px + var(--_--text-right-padding))}.g-select-control_has-clear:not(.g-select-control_has-value).g-select-control_size_l .g-select-control__button:not(.g-select-control__button_disabled) .g-select-control__placeholder{padding-inline-end:calc(36px + var(--_--text-right-padding))}.g-select-control_has-clear:not(.g-select-control_has-value).g-select-control_size_xl .g-select-control__button:not(.g-select-control__button_disabled) .g-select-control__placeholder{padding-inline-end:calc(44px + var(--_--text-right-padding))}.g-select-control__chevron-icon{color:var(--g-color-text-secondary);flex:0 0 16px;margin-inline-start:auto}.g-select-control__chevron-icon_disabled{color:var(--g-color-text-hint)}.g-select-clear+.g-select-control__chevron-icon{margin-inline-start:0}.g-select-control__error-icon{background:none;border:none;border-radius:var(--g-focus-border-radius);box-sizing:initial;color:inherit;color:var(--g-color-text-danger);cursor:pointer;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);outline:none;padding:0;padding:var(--_--text-input-error-icon-padding)}.g-select-control__error-icon:focus{outline:2px solid var(--g-color-line-focus)}.g-select-control__error-icon:focus:not(:focus-visible){outline:0}.g-select-counter{align-items:center;background-color:var(--g-color-base-generic);display:flex;justify-content:center;margin-inline:4px}.g-select-counter__text{flex-grow:1;margin-inline:4px;text-align:center}.g-select-counter_size_xl .g-select-counter__text{margin-inline:6px}.g-select-counter_size_s{border-radius:var(--g-border-radius-xs);height:20px;min-width:20px}.g-select-counter_size_m{border-radius:var(--g-border-radius-s);height:24px;min-width:24px}.g-select-counter_size_l{border-radius:var(--g-border-radius-m);height:28px;min-width:28px}.g-select-counter_size_xl{border-radius:var(--g-border-radius-l);height:36px;margin-inline:4px;min-width:36px}.g-select-clear{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:inline-flex;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);justify-content:center;margin-inline-start:auto;outline:none;padding:0;z-index:1}.g-select-clear:focus-visible{border:1px solid var(--g-color-line-generic-active)}.g-select-clear_size_s{border-radius:var(--g-border-radius-s);height:24px;width:24px}.g-select-clear_size_m{border-radius:var(--g-border-radius-m);height:28px;width:28px}.g-select-clear_size_l{border-radius:var(--g-border-radius-l);height:36px;width:36px}.g-select-clear_size_xl{border-radius:var(--g-border-radius-xl);height:44px;width:44px}.g-select-clear__clear{color:var(--g-color-text-secondary)}.g-select-clear:hover .g-select-clear__clear{color:var(--g-color-text-primary)}.g-select-popup{display:flex;flex-direction:column;max-height:90vh}.g-sheet{position:fixed;z-index:100000}.g-sheet,.g-sheet__veil{height:100%;inset-block-start:0;inset-inline-start:0;width:100%}.g-sheet__veil{background-color:var(--g-color-sfx-veil);opacity:0;position:absolute;will-change:opacity}.g-sheet__veil_with-transition{transition:opacity .3s ease}.g-sheet__sheet{inset-block-start:100%;inset-inline-start:0;max-height:90%;position:absolute;width:100%;will-change:transform}.g-sheet__sheet_with-transition{transition:transform .3s ease}.g-sheet__sheet-swipe-area{height:40px;inset-block-start:-20px;inset-inline-start:0;position:absolute;width:100%;z-index:1}.g-sheet__sheet-top{background-color:var(--g-color-base-float);border-start-end-radius:20px;border-start-start-radius:20px;height:20px;position:relative}.g-sheet__sheet-top-resizer{--_--translate-x:calc(-50%*var(--g-flow-direction));background-color:var(--g-color-line-generic);border-radius:4px;height:4px;inset-block-start:50%;inset-inline-start:50%;position:absolute;transform:translateX(var(--_--translate-x)) translateY(-50%);width:40px}.g-sheet__sheet-content{background-color:var(--g-color-base-float);box-sizing:border-box;max-height:calc(90% - 20px);overflow:hidden auto;overscroll-behavior-y:contain;padding:0 10px;padding:var(--g-sheet-content-padding,0 10px);transition:height .3s ease;width:100%}.g-sheet__sheet-content_without-scroll{overflow:hidden}.g-sheet__sheet-content-title{font-size:var(--g-text-body-2-font-size);line-height:28px;overflow:hidden;padding-block-end:8px;text-align:center;text-overflow:ellipsis;white-space:nowrap} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/321.e12415cc.chunk.css b/ydb/core/viewer/monitoring/static/css/321.e12415cc.chunk.css new file mode 100644 index 000000000000..bc83b9a1381c --- /dev/null +++ b/ydb/core/viewer/monitoring/static/css/321.e12415cc.chunk.css @@ -0,0 +1 @@ +@charset "UTF-8";.g-checkbox__indicator{cursor:inherit;display:inline-block;position:relative}.g-checkbox__indicator:before{background-color:initial;border:1px solid var(--g-color-line-generic-accent);border-radius:4px;content:"";inset:0;position:absolute;transition:background .1s linear}.g-checkbox__indicator:after{content:" ";visibility:hidden}.g-checkbox__icon{align-items:center;color:#0000;display:flex;inset:0;justify-content:center;pointer-events:none;position:absolute;transform:translateY(-5px);transition:color .1s,transform .2s;visibility:hidden}.g-checkbox__control{border:none;cursor:inherit;margin:0;opacity:0;outline:none;padding:0}.g-checkbox__control,.g-checkbox__outline{background:none;height:100%;inset-block-start:0;inset-inline-start:0;position:absolute;width:100%}.g-checkbox__outline{border-radius:4px;pointer-events:none}.g-checkbox__control:focus-visible+.g-checkbox__outline{outline:2px solid var(--g-color-line-focus)}.g-checkbox_size_m .g-checkbox__icon-svg_type_tick{height:10px;width:8px}.g-checkbox_size_m .g-checkbox__icon-svg_type_dash{height:12px;width:12px}.g-checkbox_size_m .g-checkbox__indicator{height:14px;width:14px}.g-checkbox_size_l .g-checkbox__icon-svg_type_tick{height:9px;width:11px}.g-checkbox_size_l .g-checkbox__icon-svg_type_dash{height:15px;width:15px}.g-checkbox_size_l .g-checkbox__indicator{height:17px;width:17px}.g-checkbox:hover .g-checkbox__indicator:before{border-color:var(--g-color-line-generic-accent-hover)}.g-checkbox_checked .g-checkbox__indicator:before,.g-checkbox_indeterminate .g-checkbox__indicator:before{background-color:var(--g-color-base-brand);border:#0000}.g-checkbox_checked .g-checkbox__icon,.g-checkbox_indeterminate .g-checkbox__icon{color:var(--g-color-text-brand-contrast);transform:translateX(0);visibility:visible}.g-checkbox_disabled .g-checkbox__indicator:before{background-color:var(--g-color-base-generic-accent-disabled);border:#0000}.g-checkbox_disabled.g-checkbox_checked .g-checkbox__indicator:before,.g-checkbox_disabled.g-checkbox_indeterminate .g-checkbox__indicator:before{background-color:var(--g-color-base-brand);opacity:.5}.g-skeleton{--_--animation-from:calc(-100%*var(--g-flow-direction));--_--animation-to:calc(100%*var(--g-flow-direction));--_--gradient-deg:calc(90deg*var(--g-flow-direction));background-color:var(--g-color-base-generic);border-radius:5px;display:inline-block;overflow:hidden;position:relative;width:100%;z-index:0}.g-skeleton:after{animation:g-skeleton 1.2s ease-out infinite;background-image:linear-gradient(var(--_--gradient-deg),#0000,var(--g-color-base-generic));content:"";inset:0;position:absolute}@keyframes g-skeleton{0%{transform:translateX(var(--_--animation-from))}to{transform:translateX(var(--_--animation-to))}}.g-tooltip[class]{--g-popup-border-width:0}.g-tooltip[class]>div{animation-duration:1ms;box-shadow:0 1px 5px 0 #00000026;box-sizing:border-box;max-width:360px;padding:4px 8px}.g-tooltip__content{-webkit-box-orient:vertical;-ms-box-orient:vertical;-webkit-line-clamp:20;-moz-line-clamp:20;-ms-line-clamp:20;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.g-dialog{--_--side-padding:32px;--_--close-button-space:0px;display:flex;flex-direction:column;position:relative;width:var(--_--width);width:var(--g-dialog-width,var(--_--width))}.g-dialog_has-scroll{max-height:calc(100vh - 40px);max-height:calc(100vh - var(--g-modal-margin, 20px)*2);overflow-y:auto}.g-dialog_size_s{--_--width:480px}.g-dialog_size_m{--_--width:720px}.g-dialog_size_l{--_--width:900px}.g-dialog_has-close{--_--close-button-space:24px}.g-modal{-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:var(--g-color-sfx-veil);display:none;inset:0;margin:-9999px 0 0 -9999px;overflow:auto;position:fixed;visibility:hidden;z-index:1000}.g-modal__content-aligner{align-items:center;display:inline-flex;justify-content:center;min-height:100%;min-width:100%}.g-modal__content-wrapper{margin:20px;margin:var(--g-modal-margin,20px);overflow-x:hidden}.g-modal__content,.g-modal__content-wrapper{border-radius:5px;border-radius:var(--g-modal-border-radius,5px)}.g-modal__content{background-color:var(--g-color-base-modal)}.g-modal__content_has-scroll{max-height:calc(100vh - 40px);max-height:calc(100vh - var(--g-modal-margin, 20px)*2);overflow-y:auto}.g-modal,.g-modal__content{animation-fill-mode:forwards;animation-timing-function:ease-out;outline:none}.g-modal_exit_active,.g-modal_open{display:block;margin:0;visibility:visible}.g-modal_appear_active,.g-modal_enter_active{animation-duration:.15s;animation-name:g-modal-open}.g-modal_appear_active .g-modal__content,.g-modal_enter_active .g-modal__content{animation-duration:.15s;animation-name:g-modal-content-open}.g-modal_exit_active{animation-duration:.2s;animation-name:g-modal}@keyframes g-modal{0%{opacity:1}to{opacity:0}}@keyframes g-modal-open{0%{opacity:0}to{opacity:1}}@keyframes g-modal-content-open{0%{transform:scale(.75)}to{transform:scale(1)}}.g-dialog-btn-close{inset-block-start:14px;inset-inline-end:14px;position:absolute;z-index:1}.g-dialog-footer{align-items:center;display:flex;padding:28px var(--_--side-padding)}.g-dialog-footer__bts-wrapper{display:flex;gap:10px}.g-dialog-footer__children{align-items:center;display:flex;flex-grow:1;height:100%}.g-dialog-footer__button{min-width:128px;position:relative}.g-dialog-footer__error{color:var(--g-color-text-danger);padding:10px}.g-dialog-header{align-items:center;color:var(--g-color-text-primary);display:flex;justify-content:flex-start;line-height:24px;padding-block:20px 10px;padding-inline:var(--_--side-padding) calc(var(--_--side-padding) + var(--_--close-button-space)*var(--g-flow-is-ltr) + var(--_--close-button-space)*var(--g-flow-is-rtl))}.g-dialog-header__caption{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.g-dialog-body{flex:1 1 auto;overflow-y:auto;padding:10px var(--_--side-padding)}.g-dialog-body_has-borders{border-block-end:1px solid var(--g-color-line-generic)}.g-dialog-body_has-borders,.g-dialog-divider{border-block-start:1px solid var(--g-color-line-generic)}.g-dialog-divider{margin:0 calc(var(--_--side-padding)*-1)}.gc-help-popover__button{background:none;border:none;color:inherit;color:var(--g-color-text-hint);cursor:pointer;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);outline:none;padding:0}.gc-help-popover__button:focus-visible{border-radius:50%;outline:2px solid var(--g-color-line-focus)}.json-inspector,.json-inspector__selection{font:14px/1.4 Consolas,monospace}.json-inspector__leaf{padding-left:10px}.json-inspector__line{cursor:default;display:block;position:relative}.json-inspector__line:after{bottom:0;content:"";left:-200px;pointer-events:none;position:absolute;right:-50px;top:0;z-index:-1}.json-inspector__line:hover:after{background:#0000000f}.json-inspector__leaf_composite>.json-inspector__line{cursor:pointer}.json-inspector__flatpath,.json-inspector__radio{display:none}.json-inspector__value{margin-left:5px}.json-inspector__search{margin:0 10px 10px 0;min-width:300px;padding:2px}.json-inspector__key{color:#505050}.json-inspector__not-found,.json-inspector__value_helper,.json-inspector__value_null{color:#b0b0b0}.json-inspector__value_string{color:#798953}.json-inspector__value_boolean{color:#75b5aa}.json-inspector__value_number{color:#d28445}.json-inspector__hl{background:#ff0;border-radius:2px;box-shadow:0 -1px 0 2px #ff0}.json-inspector__show-original{color:#666;cursor:pointer;display:inline-block;padding:0 6px}.json-inspector__show-original:hover{color:#111}.json-inspector__show-original:before{content:"⥂"}.json-inspector__show-original:hover:after{content:" expand"}.gc-definition-list{margin:0}.gc-definition-list__title{margin-block-end:var(--g-spacing-3)}.gc-definition-list__title:not(:first-of-type){margin-block-start:var(--g-spacing-5)}.gc-definition-list .gc-definition-list__item:is(.gc-definition-list__item_grouped)+.gc-definition-list__item:not(.gc-definition-list__item_grouped){margin-block-start:var(--g-spacing-5)}.gc-definition-list__item{align-items:baseline;display:flex;gap:var(--g-spacing-1)}.gc-definition-list__item+.gc-definition-list__item{margin-block-start:var(--g-spacing-4)}.gc-definition-list__item_grouped+.gc-definition-list__item_grouped{margin-block-start:var(--g-spacing-3)}.gc-definition-list__term-container{align-items:baseline;display:flex;flex:0 0 300px;overflow:hidden;position:relative}.gc-definition-list__term-wrapper{color:var(--g-color-text-secondary);flex:0 1 auto;overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap}.gc-definition-list__term-container_multiline .gc-definition-list__term-wrapper{white-space:inherit}.gc-definition-list__term-container_multiline .gc-definition-list__item-note-tooltip{position:absolute}.gc-definition-list__dots{border-block-end:1px dotted var(--g-color-line-generic-active);box-sizing:border-box;flex:1 0 auto;margin:0 2px;min-width:40px}.gc-definition-list__dots_with-note{margin-inline-start:15px;min-width:25px}.gc-definition-list__definition{flex:0 1 auto;margin:0}.gc-definition-list_responsive .gc-definition-list__term-container{flex:1 0 auto}.gc-definition-list__copy-container{align-items:center;display:inline-flex;margin-inline-end:calc(var(--g-spacing-7)*-1);padding-inline-end:var(--g-spacing-7);position:relative}.gc-definition-list__copy-container:hover .gc-definition-list__copy-button{opacity:1}.gc-definition-list__copy-container_icon-inside{margin-inline-end:unset;padding-inline-end:unset}.gc-definition-list__copy-container_icon-inside .gc-definition-list__copy-button{inset-block-start:0}.gc-definition-list__copy-button{display:inline-block;inset-inline-end:0;margin-inline-start:10px;opacity:0;position:absolute}.gc-definition-list__copy-button:focus-visible{opacity:1}.chartkit{height:100%;width:100%}.chartkit_mobile .chartkit-scrollable-node{max-height:3000px}.chartkit-theme_common{--highcarts-navigator-border:var(--g-color-line-generic);--highcarts-navigator-track:var(--g-color-base-generic);--highcarts-navigator-body:var(--g-color-scroll-handle);--highcharts-series-border:var(--g-color-base-background);--highcharts-grid-line:var(--g-color-line-generic);--highcharts-axis-line:var(--g-color-line-generic);--highcharts-tick:var(--g-color-line-generic);--highcharts-title:var(--g-color-text-primary);--highcharts-axis-labels:var(--g-color-text-secondary);--highcharts-data-labels:var(--g-color-text-secondary);--highcharts-plot-line-label:var(--g-color-text-secondary);--highcharts-legend-item:var(--g-color-text-secondary);--highcharts-legend-item-hover:var(--g-color-text-primary);--highcharts-legend-item-hidden:var(--g-color-text-hint);--highcharts-floating-bg:var(--g-color-infographics-tooltip-bg);--highcharts-tooltip-text:var(--g-color-text-primary);--highcharts-tooltip-bg:var(--highcharts-floating-bg);--highcharts-tooltip-alternate-bg:var(--g-color-base-generic);--highcharts-tooltip-text-complementary:var(--g-color-text-secondary);--highcharts-holiday-band:var(--g-color-base-generic);--d3-data-labels:var(--g-color-text-secondary)}.chartkit-loader{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.ydb-tree-view{--ydb-tree-view-level:0;font-size:13px;line-height:18px}.ydb-tree-view,.ydb-tree-view *{box-sizing:border-box}.ydb-tree-view__item{align-items:center;border-bottom:1px solid var(--g-color-line-generic-solid);cursor:pointer;display:flex;height:24px;padding-left:calc(24px*var(--ydb-tree-view-level));padding-right:3px}.ydb-tree-view__item:hover{background-color:var(--g-color-base-simple-hover)}.ydb-tree-view__item:hover .ydb-tree-view__actions{display:flex}.ydb-tree-view__item_active{background-color:var(--g-color-base-selection);font-weight:700}.ydb-tree-view__item_active:hover{background-color:var(--g-color-base-selection-hover)}.ydb-tree-view__content{align-items:center;display:flex;flex-grow:1;overflow:hidden}.ydb-tree-view__icon{align-items:center;color:var(--g-color-text-hint);display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.ydb-tree-view__icon svg{display:block}.ydb-tree-view__text{flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ydb-tree-view__actions{align-items:center;display:none;margin-left:6px}.ydb-tree-view__arrow{background:url('data:image/svg+xml;utf8,') no-repeat 50%;border:none;cursor:pointer;flex-shrink:0;height:24px;padding:0;width:24px}.g-root_theme_dark .ydb-tree-view__arrow{background:url('data:image/svg+xml;utf8,') no-repeat 50%}.ydb-tree-view__arrow:focus-visible{outline:2px solid var(--g-color-line-focus)}.ydb-tree-view__arrow:not(.ydb-tree-view__arrow_collapsed){transform:rotate(90deg)}.ydb-tree-view__arrow_hidden{visibility:hidden}.ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:24px}.ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:48px}.ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:72px}.ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:96px}.ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:120px}.g-card{--_--background-color:#0000;--_--border-color:#0000;--_--border-width:0;--_--box-shadow:none;background-color:var(--_--background-color);background-color:var(--g-card-background-color,var(--_--background-color));border:var(--g-card-border-width,var(--_--border-width)) solid var(--g-card-border-color,var(--_--border-color));border-radius:var(--_--border-radius);border-radius:var(--g-card-border-radius,var(--_--border-radius));box-shadow:var(--_--box-shadow);box-shadow:var(--g-card-box-shadow,var(--_--box-shadow));box-sizing:border-box;outline:none}.g-card_theme_normal{--_--border-color:var(--g-color-line-generic);--_--background-color:var(--g-color-base-generic)}.g-card_theme_info{--_--border-color:var(--g-color-line-info);--_--background-color:var(--g-color-base-info-light)}.g-card_theme_success{--_--border-color:var(--g-color-line-positive);--_--background-color:var(--g-color-base-positive-light)}.g-card_theme_warning{--_--border-color:var(--g-color-line-warning);--_--background-color:var(--g-color-base-warning-light)}.g-card_theme_danger{--_--border-color:var(--g-color-line-danger);--_--background-color:var(--g-color-base-danger-light)}.g-card_theme_utility{--_--border-color:var(--g-color-line-utility);--_--background-color:var(--g-color-base-utility-light)}.g-card_view_clear,.g-card_view_outlined{--_--background-color:#0000}.g-card_view_outlined{--_--border-width:1px}.g-card_type_action{--_--background-color:var(--g-color-base-float);--_--box-shadow:0px 1px 5px var(--g-color-sfx-shadow)}.g-card_type_action:after{border-radius:var(--_--border-radius);border-radius:var(--g-card-border-radius,var(--_--border-radius));inset:0;pointer-events:none;position:absolute}.g-card_type_action.g-card_clickable{cursor:pointer;position:relative}.g-card_type_action.g-card_clickable:hover{--_--box-shadow:0px 3px 10px var(--g-color-sfx-shadow)}.g-card_type_action.g-card_clickable:focus-visible:after{content:"";outline:2px solid var(--g-color-line-focus)}.g-card_type_selection{--_--border-width:1px;--_--border-color:var(--g-color-line-generic);position:relative}.g-card_type_selection:before{inset:-1px}.g-card_type_selection:after,.g-card_type_selection:before{border-radius:var(--_--border-radius);border-radius:var(--g-card-border-radius,var(--_--border-radius));pointer-events:none;position:absolute}.g-card_type_selection:after{inset:0}.g-card_type_selection.g-card_clickable{cursor:pointer}.g-card_type_selection.g-card_clickable:hover{--_--border-color:#0000}.g-card_type_selection.g-card_clickable:hover:before{border:2px solid var(--g-color-line-brand);content:"";opacity:.5}.g-card_type_selection.g-card_clickable:hover:focus-visible:before{border-color:#0000}.g-card_type_selection.g-card_clickable:focus-visible:after{content:"";outline:2px solid var(--g-color-line-focus)}.g-card_type_selection.g-card_selected:not(.g-card_disabled){--_--border-color:#0000}.g-card_type_selection.g-card_selected:not(.g-card_disabled):before{border:2px solid var(--g-color-line-brand);content:""}.g-card_type_selection.g-card_view_clear{--_--border-color:#0000}.g-card_type_container.g-card_view_raised{--_--background-color:var(--g-color-base-float)}.g-card_type_container.g-card_view_raised.g-card_size_m{--_--box-shadow:0px 1px 5px var(--g-color-sfx-shadow)}.g-card_type_container.g-card_view_raised.g-card_size_l{--_--box-shadow:0px 1px 6px var(--g-color-sfx-shadow-light),1px 3px 13px var(--g-color-sfx-shadow-light)}.g-card_size_m{--_--border-radius:8px}.g-card_size_l{--_--border-radius:16px}.g-table-column-setup__status{color:var(--g-color-text-secondary);margin-inline-start:5px}.g-inner-table-column-setup{display:inline-block}.g-inner-table-column-setup__controls{margin:var(--g-spacing-1) var(--g-spacing-1) 0}.g-inner-table-column-setup__filter-input{border-block-end:1px solid var(--g-color-line-generic);box-sizing:border-box;padding:0 var(--g-spacing-2) var(--g-spacing-1)}.g-inner-table-column-setup__empty-placeholder{padding:var(--g-spacing-2)}.g-list-container-view{box-sizing:border-box;outline:none;width:100%}.g-list-container-view_fixed-height{height:300px;height:var(--g-list-container-height,300px)}.g-list-container-view:not(.g-list-container-view_fixed-height){overflow:auto}.g-list-item-view{flex-shrink:0}.g-list-item-view__main-content{grid-gap:2px;grid-gap:var(--g-spacing-half,2px);display:grid;gap:2px;gap:var(--g-spacing-half,2px);width:100%}.g-list-item-view:hover.g-list-item-view_activeOnHover,.g-list-item-view_active{background:var(--g-color-base-simple-hover)}.g-list-item-view_clickable{cursor:pointer}.g-list-item-view_selected,.g-list-item-view_selected.g-list-item-view_active,.g-list-item-view_selected:hover.g-list-item-view_activeOnHover{background:var(--g-color-base-selection)}.g-list-item-view_dragging,.g-list-item-view_dragging.g-list-item-view_active,.g-list-item-view_dragging.g-list-item-view_selected{background:var(--g-color-base-simple-hover-solid);z-index:100001!important}.g-list-item-view_radius_s{border-radius:3px;border-radius:var(--g-list-item-border-radius,3px)}.g-list-item-view_radius_m{border-radius:5px;border-radius:var(--g-list-item-border-radius,5px)}.g-list-item-view_radius_l{border-radius:6px;border-radius:var(--g-list-item-border-radius,6px)}.g-list-item-view_radius_xl{border-radius:8px;border-radius:var(--g-list-item-border-radius,8px)}.g-list-item-view__icon,.g-list-item-view__slot{flex-shrink:0}.g-tree-select{display:inline-block;max-width:100%}.g-tree-select_width_max{width:100%}.g-tree-select__popup{overflow:hidden;padding:4px 0}.g-tree-select__popup_size_s{border-radius:5px;border-radius:var(--g-list-container-border-radius,5px)}.g-tree-select__popup_size_m{border-radius:6px;border-radius:var(--g-list-container-border-radius,6px)}.g-tree-select__popup_size_l{border-radius:8px;border-radius:var(--g-list-container-border-radius,8px)}.g-tree-select__popup_size_xl{border-radius:10px;border-radius:var(--g-list-container-border-radius,10px)}.g-tree-select__list{padding:0 4px}.g-list-recursive-renderer{margin:0;padding:0}.ydb-navigation-tree-view-loader{align-items:center;display:flex;height:24px;justify-content:center;width:20px}.g-spin{animation:g-spin 1s linear infinite;-webkit-backface-visibility:hidden;backface-visibility:hidden;display:inline-block}.g-spin__inner{border:2px solid var(--g-color-line-brand);border-end-end-radius:25px;border-inline-start:none;border-start-end-radius:25px;box-sizing:border-box;height:100%;margin-inline-start:50%;width:50%}.g-spin_size_xs{height:16px;width:16px}.g-spin_size_s{height:24px;width:24px}.g-spin_size_m{height:28px;width:28px}.g-spin_size_l{height:32px;width:32px}.g-spin_size_xl{height:36px;width:36px}@keyframes g-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.ydb-navigation-tree-view-error{color:var(--g-color-text-danger)}.ydb-navigation-tree-view-empty{color:var(--g-color-text-secondary);font-style:italic} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/328.a726d329.chunk.css b/ydb/core/viewer/monitoring/static/css/328.a726d329.chunk.css new file mode 100644 index 000000000000..945b75f82206 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/css/328.a726d329.chunk.css @@ -0,0 +1 @@ +.g-card{--_--background-color:#0000;--_--border-color:#0000;--_--border-width:0;--_--box-shadow:none;background-color:var(--_--background-color);background-color:var(--g-card-background-color,var(--_--background-color));border:var(--g-card-border-width,var(--_--border-width)) solid var(--g-card-border-color,var(--_--border-color));border-radius:var(--_--border-radius);border-radius:var(--g-card-border-radius,var(--_--border-radius));box-shadow:var(--_--box-shadow);box-shadow:var(--g-card-box-shadow,var(--_--box-shadow));box-sizing:border-box;outline:none}.g-card_theme_normal{--_--border-color:var(--g-color-line-generic);--_--background-color:var(--g-color-base-generic)}.g-card_theme_info{--_--border-color:var(--g-color-line-info);--_--background-color:var(--g-color-base-info-light)}.g-card_theme_success{--_--border-color:var(--g-color-line-positive);--_--background-color:var(--g-color-base-positive-light)}.g-card_theme_warning{--_--border-color:var(--g-color-line-warning);--_--background-color:var(--g-color-base-warning-light)}.g-card_theme_danger{--_--border-color:var(--g-color-line-danger);--_--background-color:var(--g-color-base-danger-light)}.g-card_theme_utility{--_--border-color:var(--g-color-line-utility);--_--background-color:var(--g-color-base-utility-light)}.g-card_view_clear,.g-card_view_outlined{--_--background-color:#0000}.g-card_view_outlined{--_--border-width:1px}.g-card_type_action{--_--background-color:var(--g-color-base-float);--_--box-shadow:0px 1px 5px var(--g-color-sfx-shadow)}.g-card_type_action:after{border-radius:var(--_--border-radius);border-radius:var(--g-card-border-radius,var(--_--border-radius));inset:0;pointer-events:none;position:absolute}.g-card_type_action.g-card_clickable{cursor:pointer;position:relative}.g-card_type_action.g-card_clickable:hover{--_--box-shadow:0px 3px 10px var(--g-color-sfx-shadow)}.g-card_type_action.g-card_clickable:focus-visible:after{content:"";outline:2px solid var(--g-color-line-focus)}.g-card_type_selection{--_--border-width:1px;--_--border-color:var(--g-color-line-generic);position:relative}.g-card_type_selection:before{inset:-1px}.g-card_type_selection:after,.g-card_type_selection:before{border-radius:var(--_--border-radius);border-radius:var(--g-card-border-radius,var(--_--border-radius));pointer-events:none;position:absolute}.g-card_type_selection:after{inset:0}.g-card_type_selection.g-card_clickable{cursor:pointer}.g-card_type_selection.g-card_clickable:hover{--_--border-color:#0000}.g-card_type_selection.g-card_clickable:hover:before{border:2px solid var(--g-color-line-brand);content:"";opacity:.5}.g-card_type_selection.g-card_clickable:hover:focus-visible:before{border-color:#0000}.g-card_type_selection.g-card_clickable:focus-visible:after{content:"";outline:2px solid var(--g-color-line-focus)}.g-card_type_selection.g-card_selected:not(.g-card_disabled){--_--border-color:#0000}.g-card_type_selection.g-card_selected:not(.g-card_disabled):before{border:2px solid var(--g-color-line-brand);content:""}.g-card_type_selection.g-card_view_clear{--_--border-color:#0000}.g-card_type_container.g-card_view_raised{--_--background-color:var(--g-color-base-float)}.g-card_type_container.g-card_view_raised.g-card_size_m{--_--box-shadow:0px 1px 5px var(--g-color-sfx-shadow)}.g-card_type_container.g-card_view_raised.g-card_size_l{--_--box-shadow:0px 1px 6px var(--g-color-sfx-shadow-light),1px 3px 13px var(--g-color-sfx-shadow-light)}.g-card_size_m{--_--border-radius:8px}.g-card_size_l{--_--border-radius:16px}.g-alert_corners_square{--g-card-border-radius:0}.g-alert__text-content{width:100%}.g-alert__actions_minContent{width:-webkit-min-content;width:min-content}.g-alert__close-btn{flex-shrink:0} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/328.c0ade9c1.chunk.css b/ydb/core/viewer/monitoring/static/css/328.c0ade9c1.chunk.css deleted file mode 100644 index 378e7a1e4c4c..000000000000 --- a/ydb/core/viewer/monitoring/static/css/328.c0ade9c1.chunk.css +++ /dev/null @@ -1 +0,0 @@ -.g-alert_corners_square{--g-card-border-radius:0}.g-alert__text-content{width:100%}.g-alert__actions_minContent{width:-webkit-min-content;width:min-content}.g-alert__close-btn{flex-shrink:0} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/5246.49d67ade.chunk.css b/ydb/core/viewer/monitoring/static/css/5246.49d67ade.chunk.css new file mode 100644 index 000000000000..1c68937f1661 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/css/5246.49d67ade.chunk.css @@ -0,0 +1 @@ +.empty-state{padding:20px}.empty-state_size_m{height:400px}.empty-state__wrapper{display:grid;grid-template-areas:"image title" "image description" "image actions"}.empty-state__wrapper_size_s{height:120px;width:460px}.empty-state__wrapper_size_m{height:240px;width:800px}.empty-state__wrapper_position_center{margin:0 auto;position:relative}.empty-state__image{color:var(--g-color-base-info-light-hover);grid-area:image;justify-self:end;margin-right:60px}.g-root_theme_dark .empty-state__image{color:var(--g-color-base-generic)}.empty-state__title{align-self:center;font-weight:500;grid-area:title}.empty-state__title_size_s{font-size:var(--g-text-subheader-3-font-size);line-height:var(--g-text-subheader-3-line-height)}.empty-state__title_size_m{font-size:var(--g-text-header-2-font-size);line-height:var(--g-text-header-2-line-height)}.empty-state__description{font-size:var(--g-text-body-2-font-size);grid-area:description;line-height:var(--g-text-body-2-line-height)}.empty-state__actions{grid-area:actions}.empty-state__actions>*{margin-right:8px}.tablet{border-color:var(--g-color-base-generic-medium-hover);color:var(--g-color-text-complementary);cursor:pointer}.tablet__wrapper{margin-bottom:2px;margin-right:2px}.tablet__wrapper:last-child{margin-right:0}.tablet__popup-content{padding:10px}.tablet_status_grey{background-color:var(--ydb-color-status-grey)}.tablet_status_yellow{background-color:var(--ydb-color-status-yellow)}.tablet_status_orange{background-color:var(--ydb-color-status-orange)}.tablet_status_red{background-color:var(--ydb-color-status-red)}.tablet_status_green{background-color:var(--ydb-color-status-green)}.tablet_status_blue{background-color:var(--ydb-color-status-blue)}.tablet_status_black{background-color:var(--ydb-color-status-black)}.link{color:var(--g-color-text-link);text-decoration:none}.link_external{margin-right:10px}.link:hover{color:var(--g-color-text-link-hover)}.tablets-filters{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto}.tablets-filters__node{font-size:var(--g-text-body-1-font-size);line-height:var(--g-text-body-1-line-height);overflow:hidden}.tablets-filters__node-meta{color:var(--g-color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tablets-filters__items{flex:1 1 auto;overflow:auto;padding:5px 20px}.tablets-filters__filters{align-items:center;display:flex;margin:10px 0;padding:0 20px}.tablets-filters__filter-label{margin-right:15px;white-space:nowrap}.tablets-filters__filter-wrapper{align-items:center;display:flex;margin-right:15px}.tablets-filters__filter-control{margin-right:10px;max-width:200px;min-width:100px}.tablets-filters__filter-control:last-child{margin-right:0}.tablets-filters__tablet{margin-bottom:2px}.tablets-filters__empty-message{display:flex;justify-content:center}.tablets-filters__tenant{padding:20px 20px 10px}.tablets-filters .tablet{display:inline-block;line-height:18px;text-align:center} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/5715.07ca45c9.chunk.css b/ydb/core/viewer/monitoring/static/css/5715.07ca45c9.chunk.css new file mode 100644 index 000000000000..cf7b95a874c5 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/css/5715.07ca45c9.chunk.css @@ -0,0 +1 @@ +.auto-refresh-control{align-items:center;display:flex;gap:var(--g-spacing-1)}.ydb-critical-dialog{width:400px}.ydb-critical-dialog__warning-icon{color:var(--ydb-color-status-yellow);margin-right:16px}.ydb-critical-dialog__error-icon{color:var(--ydb-color-status-red);height:24px;margin-right:16px}.ydb-critical-dialog__body{align-items:center;display:flex}.g-dialog{--_--side-padding:32px;--_--close-button-space:0px;display:flex;flex-direction:column;position:relative;width:var(--_--width);width:var(--g-dialog-width,var(--_--width))}.g-dialog_has-scroll{max-height:calc(100vh - 40px);max-height:calc(100vh - var(--g-modal-margin, 20px)*2);overflow-y:auto}.g-dialog_size_s{--_--width:480px}.g-dialog_size_m{--_--width:720px}.g-dialog_size_l{--_--width:900px}.g-dialog_has-close{--_--close-button-space:24px}.g-modal{-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:var(--g-color-sfx-veil);display:none;inset:0;margin:-9999px 0 0 -9999px;overflow:auto;position:fixed;visibility:hidden;z-index:1000}.g-modal__content-aligner{align-items:center;display:inline-flex;justify-content:center;min-height:100%;min-width:100%}.g-modal__content-wrapper{margin:20px;margin:var(--g-modal-margin,20px);overflow-x:hidden}.g-modal__content,.g-modal__content-wrapper{border-radius:5px;border-radius:var(--g-modal-border-radius,5px)}.g-modal__content{background-color:var(--g-color-base-modal)}.g-modal__content_has-scroll{max-height:calc(100vh - 40px);max-height:calc(100vh - var(--g-modal-margin, 20px)*2);overflow-y:auto}.g-modal,.g-modal__content{animation-fill-mode:forwards;animation-timing-function:ease-out;outline:none}.g-modal_exit_active,.g-modal_open{display:block;margin:0;visibility:visible}.g-modal_appear_active,.g-modal_enter_active{animation-duration:.15s;animation-name:g-modal-open}.g-modal_appear_active .g-modal__content,.g-modal_enter_active .g-modal__content{animation-duration:.15s;animation-name:g-modal-content-open}.g-modal_exit_active{animation-duration:.2s;animation-name:g-modal}@keyframes g-modal{0%{opacity:1}to{opacity:0}}@keyframes g-modal-open{0%{opacity:0}to{opacity:1}}@keyframes g-modal-content-open{0%{transform:scale(.75)}to{transform:scale(1)}}.g-dialog-btn-close{inset-block-start:14px;inset-inline-end:14px;position:absolute;z-index:1}.g-dialog-footer{align-items:center;display:flex;padding:28px var(--_--side-padding)}.g-dialog-footer__bts-wrapper{display:flex;gap:10px}.g-dialog-footer__children{align-items:center;display:flex;flex-grow:1;height:100%}.g-dialog-footer__button{min-width:128px;position:relative}.g-dialog-footer__error{color:var(--g-color-text-danger);padding:10px}.g-dialog-header{align-items:center;color:var(--g-color-text-primary);display:flex;justify-content:flex-start;line-height:24px;padding-block:20px 10px;padding-inline:var(--_--side-padding) calc(var(--_--side-padding) + var(--_--close-button-space)*var(--g-flow-is-ltr) + var(--_--close-button-space)*var(--g-flow-is-rtl))}.g-dialog-header__caption{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.g-dialog-body{flex:1 1 auto;overflow-y:auto;padding:10px var(--_--side-padding)}.g-dialog-body_has-borders{border-block-end:1px solid var(--g-color-line-generic)}.g-dialog-body_has-borders,.g-dialog-divider{border-block-start:1px solid var(--g-color-line-generic)}.g-dialog-divider{margin:0 calc(var(--_--side-padding)*-1)}.ydb-status-icon__status-color_state_green{background-color:var(--ydb-color-status-green)}.ydb-status-icon__status-color_state_yellow{background-color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-color_state_blue{background-color:var(--ydb-color-status-blue)}.ydb-status-icon__status-color_state_red{background-color:var(--ydb-color-status-red)}.ydb-status-icon__status-color_state_grey{background-color:var(--ydb-color-status-grey)}.ydb-status-icon__status-color_state_orange{background-color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_blue{color:var(--ydb-color-status-blue)}.ydb-status-icon__status-icon_state_yellow{color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-icon_state_orange{color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_red{color:var(--ydb-color-status-red)}.ydb-status-icon__status-color,.ydb-status-icon__status-icon{border-radius:3px;flex-shrink:0}.ydb-status-icon__status-color_size_xs,.ydb-status-icon__status-icon_size_xs{aspect-ratio:1;height:12px;width:12px}.ydb-status-icon__status-color_size_s,.ydb-status-icon__status-icon_size_s{aspect-ratio:1;height:16px;width:16px}.ydb-status-icon__status-color_size_m,.ydb-status-icon__status-icon_size_m{aspect-ratio:1;height:18px;width:18px}.ydb-status-icon__status-color_size_l,.ydb-status-icon__status-icon_size_l{height:24px;width:24px}.ydb-disk-page-title{text-wrap:nowrap;align-items:baseline;display:flex;flex-flow:row nowrap;font-size:var(--g-text-header-2-font-size);line-height:var(--g-text-header-2-line-height)}.ydb-disk-page-title__prefix{color:var(--g-color-text-secondary);margin-right:6px}.ydb-disk-page-title__icon{margin-right:8px}.progress-viewer{align-items:center;background:var(--g-color-base-generic);border-radius:2px;color:var(--g-color-text-complementary);display:flex;font-size:var(--g-text-body-2-font-size);height:23px;justify-content:center;min-width:120px;overflow:hidden;padding:0 4px;position:relative;white-space:nowrap;z-index:0}.progress-viewer_theme_dark{color:var(--g-color-text-light-primary)}.progress-viewer_theme_dark .progress-viewer__line{opacity:.75}.progress-viewer_status_good{background-color:var(--g-color-base-positive-light)}.progress-viewer_status_good .progress-viewer__line{background-color:var(--ydb-color-status-green)}.progress-viewer_status_warning{background-color:var(--g-color-base-yellow-light)}.progress-viewer_status_warning .progress-viewer__line{background-color:var(--ydb-color-status-yellow)}.progress-viewer_status_danger{background-color:var(--g-color-base-danger-light)}.progress-viewer_status_danger .progress-viewer__line{background-color:var(--ydb-color-status-red)}.progress-viewer__line{height:100%;left:0;position:absolute;top:0}.progress-viewer__text{position:relative;z-index:1}.progress-viewer_size_xs{font-size:var(--g-text-body-2-font-size);height:20px;line-height:var(--g-text-body-2-line-height)}.progress-viewer_size_s{font-size:var(--g-text-body-1-font-size);height:28px;line-height:28px}.progress-viewer_size_m{font-size:var(--g-text-body-2-font-size);height:32px;line-height:32px}.progress-viewer_size_ns{font-size:13px;height:24px;line-height:var(--g-text-subheader-3-line-height)}.progress-viewer_size_n{font-size:var(--g-text-body-1-font-size);height:36px;line-height:36px}.progress-viewer_size_l{font-size:var(--g-text-subheader-3-font-size);height:38px;line-height:38px}.progress-viewer_size_head{font-size:var(--g-text-body-1-font-size);line-height:36px}.ydb-info-viewer-skeleton{display:flex;flex-direction:column;gap:16px}.ydb-info-viewer-skeleton__row{align-items:flex-start;display:flex}.ydb-info-viewer-skeleton__row,.ydb-info-viewer-skeleton__row .g-skeleton{min-height:var(--g-text-body-2-font-size)}.ydb-info-viewer-skeleton__label{align-items:baseline;display:flex;flex:0 1 auto;width:200px}.ydb-info-viewer-skeleton__label__text{width:100px}.ydb-info-viewer-skeleton__label__dots{border-bottom:1px dotted var(--g-color-text-secondary);margin:0 2px;width:100px}.ydb-info-viewer-skeleton__value{max-width:20%;min-width:200px}.g-skeleton{--_--animation-from:calc(-100%*var(--g-flow-direction));--_--animation-to:calc(100%*var(--g-flow-direction));--_--gradient-deg:calc(90deg*var(--g-flow-direction));background-color:var(--g-color-base-generic);border-radius:5px;display:inline-block;overflow:hidden;position:relative;width:100%;z-index:0}.g-skeleton:after{animation:g-skeleton 1.2s ease-out infinite;background-image:linear-gradient(var(--_--gradient-deg),#0000,var(--g-color-base-generic));content:"";inset:0;position:absolute}@keyframes g-skeleton{0%{transform:translateX(var(--_--animation-from))}to{transform:translateX(var(--_--animation-to))}}.ydb-page-meta{text-wrap:nowrap;color:var(--g-color-text-primary);display:flex;flex-flow:row nowrap;font-size:var(--g-text-body-2-font-size);height:var(--g-text-body-2-line-height);line-height:var(--g-text-body-2-line-height)}.ydb-page-meta__skeleton{height:80%;width:80%}.stack{--ydb-stack-base-z-index:100;--ydb-stack-offset-x:4px;--ydb-stack-offset-y:4px;--ydb-stack-offset-x-hover:4px;--ydb-stack-offset-y-hover:8px;position:relative}.stack__layer{background:var(--g-color-base-background);transition:transform .1s ease-out}.stack__layer:first-child{position:relative;z-index:var(--ydb-stack-base-z-index)}.stack__layer+.stack__layer{height:100%;left:0;position:absolute;top:0;transform:translate(calc(var(--ydb-stack-level)*var(--ydb-stack-offset-x)),calc(var(--ydb-stack-level)*var(--ydb-stack-offset-y)));width:100%;z-index:calc(var(--ydb-stack-base-z-index) - var(--ydb-stack-level))}.stack:hover .stack__layer:first-child{transform:translate(calc(var(--ydb-stack-offset-x-hover)*-1),calc(var(--ydb-stack-offset-y-hover)*-1))}.stack:hover .stack__layer+.stack__layer{transform:translate(calc(var(--ydb-stack-level)*var(--ydb-stack-offset-x-hover)*2 - var(--ydb-stack-offset-x-hover)),calc(var(--ydb-stack-level)*var(--ydb-stack-offset-y-hover)*2 - var(--ydb-stack-offset-y-hover)))}.storage-disk-progress-bar{background-color:var(--g-color-base-misc-light);border:1px solid var(--g-color-base-misc-heavy);border-radius:4px;color:var(--g-color-text-primary);display:block;height:var(--g-text-body-3-line-height);min-width:50px;position:relative;text-align:center;z-index:0}.storage-disk-progress-bar_compact{border-radius:2px;height:12px;min-width:0}.storage-disk-progress-bar_compact .storage-disk-progress-bar__filled{border-radius:1px}.storage-disk-progress-bar .storage-disk-progress-bar__filled{background-color:var(--g-color-base-misc-medium)}.storage-disk-progress-bar_green{background-color:var(--g-color-base-positive-light);border-color:var(--g-color-base-positive-heavy)}.storage-disk-progress-bar_green .storage-disk-progress-bar__filled{background-color:var(--g-color-base-positive-medium)}.g-root_theme_dark .storage-disk-progress-bar_green .storage-disk-progress-bar__filled{background-color:#7ce37966}.storage-disk-progress-bar_blue{background-color:var(--g-color-base-info-light);border-color:var(--g-color-base-info-heavy)}.storage-disk-progress-bar_blue .storage-disk-progress-bar__filled{background-color:var(--g-color-base-info-medium)}.storage-disk-progress-bar_yellow{background-color:var(--g-color-base-yellow-light);border-color:var(--g-color-base-warning-heavy)}.storage-disk-progress-bar_yellow .storage-disk-progress-bar__filled{background-color:var(--g-color-base-yellow-medium)}.storage-disk-progress-bar_orange{background-color:var(--g-color-base-warning-light);border-color:var(--ydb-color-status-orange)}.storage-disk-progress-bar_orange .storage-disk-progress-bar__filled{background-color:var(--g-color-base-warning-medium)}.storage-disk-progress-bar_red{background-color:var(--g-color-base-danger-light);border-color:var(--g-color-base-danger-heavy)}.storage-disk-progress-bar_red .storage-disk-progress-bar__filled{background-color:var(--g-color-base-danger-medium)}.storage-disk-progress-bar__filled{border-radius:3px 0 0 3px;height:100%;left:0;position:absolute;top:0}.storage-disk-progress-bar_inverted .storage-disk-progress-bar__filled{border-radius:0 3px 3px 0;left:auto;right:0}.storage-disk-progress-bar__filled-title{color:inherit;font-size:var(--g-text-body-1-font-size);line-height:calc(var(--g-text-body-3-line-height) - 2px);position:relative;z-index:2}.pdisk-storage-popup,.vdisk-storage-popup{padding:12px}.vdisk-storage-popup .info-viewer+.info-viewer{border-top:1px solid var(--g-color-line-generic);margin-top:8px;padding-top:8px}.vdisk-storage-popup__donor-label{margin-bottom:8px}.ydb-vdisk-component,.ydb-vdisk-component__content{border-radius:4px}.g-tooltip[class]{--g-popup-border-width:0}.g-tooltip[class]>div{animation-duration:1ms;box-shadow:0 1px 5px 0 #00000026;box-sizing:border-box;max-width:360px;padding:4px 8px}.g-tooltip__content{-webkit-box-orient:vertical;-ms-box-orient:vertical;-webkit-line-clamp:20;-moz-line-clamp:20;-ms-line-clamp:20;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.entity-status{align-items:center;display:inline-flex;font-size:var(--g-text-body-2-font-size);height:100%;line-height:var(--g-text-body-2-line-height);max-width:100%}.entity-status__icon{margin-right:8px}.entity-status__clipboard-button{color:var(--g-color-text-secondary);display:flex;flex-shrink:0;margin-left:8px;opacity:0}.entity-status__clipboard-button:focus-visible,.entity-status__clipboard-button_visible{opacity:1}.entity-status__label{color:var(--g-color-text-complementary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin-right:2px}.entity-status__label_size_l{font-size:var(--g-text-header-2-font-size)}.entity-status__link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-status__link_with-left-trim{direction:rtl}.entity-status__link_with-left-trim .entity-status__name{unicode-bidi:plaintext}.entity-status__label_state_blue{color:var(--ydb-color-status-blue)}.entity-status__label_state_yellow{color:var(--ydb-color-status-yellow)}.entity-status__label_state_orange{color:var(--ydb-color-status-orange)}.entity-status__label_state_red{color:var(--ydb-color-status-red)}.ydb-vdisk-info__links{display:flex;flex-flow:row wrap;gap:12px}.link{color:var(--g-color-text-link);text-decoration:none}.link_external{margin-right:10px}.link:hover{color:var(--g-color-text-link-hover)}.ydb-vdisk-page{display:flex;flex-direction:column;gap:20px;height:100%;overflow:auto;padding:20px;position:relative}.ydb-vdisk-page__controls{align-items:center;display:flex;gap:var(--g-spacing-2)}.ydb-vdisk-page__group-title{font-size:var(--g-text-header-1-font-size);line-height:var(--g-text-header-1-line-height)}.ydb-vdisk-page__group-disks{display:flex;flex-flow:row wrap;flex-grow:1;gap:10px;margin-top:20px}.ydb-vdisk-page__group-disk{width:150px}.ydb-vdisk-page__auto-refresh-control{margin-inline-start:auto} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/7045.ebbcb0f7.chunk.css b/ydb/core/viewer/monitoring/static/css/7045.ebbcb0f7.chunk.css new file mode 100644 index 000000000000..3152eb719240 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/css/7045.ebbcb0f7.chunk.css @@ -0,0 +1 @@ +.auto-refresh-control{align-items:center;display:flex;gap:var(--g-spacing-1)}.g-tooltip[class]{--g-popup-border-width:0}.g-tooltip[class]>div{animation-duration:1ms;box-shadow:0 1px 5px 0 #00000026;box-sizing:border-box;max-width:360px;padding:4px 8px}.g-tooltip__content{-webkit-box-orient:vertical;-ms-box-orient:vertical;-webkit-line-clamp:20;-moz-line-clamp:20;-ms-line-clamp:20;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.ydb-status-icon__status-color_state_green{background-color:var(--ydb-color-status-green)}.ydb-status-icon__status-color_state_yellow{background-color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-color_state_blue{background-color:var(--ydb-color-status-blue)}.ydb-status-icon__status-color_state_red{background-color:var(--ydb-color-status-red)}.ydb-status-icon__status-color_state_grey{background-color:var(--ydb-color-status-grey)}.ydb-status-icon__status-color_state_orange{background-color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_blue{color:var(--ydb-color-status-blue)}.ydb-status-icon__status-icon_state_yellow{color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-icon_state_orange{color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_red{color:var(--ydb-color-status-red)}.ydb-status-icon__status-color,.ydb-status-icon__status-icon{border-radius:3px;flex-shrink:0}.ydb-status-icon__status-color_size_xs,.ydb-status-icon__status-icon_size_xs{aspect-ratio:1;height:12px;width:12px}.ydb-status-icon__status-color_size_s,.ydb-status-icon__status-icon_size_s{aspect-ratio:1;height:16px;width:16px}.ydb-status-icon__status-color_size_m,.ydb-status-icon__status-icon_size_m{aspect-ratio:1;height:18px;width:18px}.ydb-status-icon__status-color_size_l,.ydb-status-icon__status-icon_size_l{height:24px;width:24px}.entity-status{align-items:center;display:inline-flex;font-size:var(--g-text-body-2-font-size);height:100%;line-height:var(--g-text-body-2-line-height);max-width:100%}.entity-status__icon{margin-right:8px}.entity-status__clipboard-button{color:var(--g-color-text-secondary);display:flex;flex-shrink:0;margin-left:8px;opacity:0}.entity-status__clipboard-button:focus-visible,.entity-status__clipboard-button_visible{opacity:1}.entity-status__label{color:var(--g-color-text-complementary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin-right:2px}.entity-status__label_size_l{font-size:var(--g-text-header-2-font-size)}.entity-status__link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-status__link_with-left-trim{direction:rtl}.entity-status__link_with-left-trim .entity-status__name{unicode-bidi:plaintext}.entity-status__label_state_blue{color:var(--ydb-color-status-blue)}.entity-status__label_state_yellow{color:var(--ydb-color-status-yellow)}.entity-status__label_state_orange{color:var(--ydb-color-status-orange)}.entity-status__label_state_red{color:var(--ydb-color-status-red)}.tag{background:var(--g-color-base-generic);border-radius:3px;color:var(--g-color-text-primary);font-size:12px;margin-right:5px;padding:2px 5px;text-transform:uppercase}.tag:last-child{margin-right:0}.tag_type_blue{background-color:var(--g-color-celestial-thunder)}.tags{align-items:center;display:flex;flex-wrap:wrap}.basic-node-viewer__link,.link{color:var(--g-color-text-link);text-decoration:none}.basic-node-viewer__link:hover,.link:hover{color:var(--g-color-text-link-hover)}.basic-node-viewer{align-items:center;display:flex;font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin:15px 0}.basic-node-viewer__title{font-weight:600;margin:0 20px 0 0;text-transform:uppercase}.basic-node-viewer__id{margin:0 15px 0 24px}.basic-node-viewer__label{color:var(--g-color-text-hint);line-height:18px;margin-right:10px;white-space:nowrap}.basic-node-viewer__link{margin-left:5px}.ydb-pool-usage{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.ydb-pool-usage__info{align-items:center;display:flex;justify-content:space-between}.ydb-pool-usage__pool-name{color:var(--g-color-text-primary)}.ydb-pool-usage__value{align-items:center;display:flex}.ydb-pool-usage__threads{color:var(--g-color-text-hint);font-size:var(--g-text-body-1-font-size)}.ydb-pool-usage__percents{color:var(--g-color-text-primary);font-size:var(--g-text-body-1-font-size);margin-right:2px}.ydb-pool-usage__visual{align-items:center;background-color:var(--g-color-base-generic-accent);border-radius:4px;display:flex;font-size:var(--g-text-body-2-font-size);height:6px;justify-content:center;overflow:hidden;position:relative}.ydb-pool-usage__usage-line{height:100%;left:0;position:absolute;top:0}.ydb-pool-usage__usage-line_type_green{background-color:var(--ydb-color-status-green)}.ydb-pool-usage__usage-line_type_blue{background-color:var(--ydb-color-status-blue)}.ydb-pool-usage__usage-line_type_yellow{background-color:var(--ydb-color-status-yellow)}.ydb-pool-usage__usage-line_type_red{background-color:var(--ydb-color-status-red)}.progress-viewer{align-items:center;background:var(--g-color-base-generic);border-radius:2px;color:var(--g-color-text-complementary);display:flex;font-size:var(--g-text-body-2-font-size);height:23px;justify-content:center;min-width:120px;overflow:hidden;padding:0 4px;position:relative;white-space:nowrap;z-index:0}.progress-viewer_theme_dark{color:var(--g-color-text-light-primary)}.progress-viewer_theme_dark .progress-viewer__line{opacity:.75}.progress-viewer_status_good{background-color:var(--g-color-base-positive-light)}.progress-viewer_status_good .progress-viewer__line{background-color:var(--ydb-color-status-green)}.progress-viewer_status_warning{background-color:var(--g-color-base-yellow-light)}.progress-viewer_status_warning .progress-viewer__line{background-color:var(--ydb-color-status-yellow)}.progress-viewer_status_danger{background-color:var(--g-color-base-danger-light)}.progress-viewer_status_danger .progress-viewer__line{background-color:var(--ydb-color-status-red)}.progress-viewer__line{height:100%;left:0;position:absolute;top:0}.progress-viewer__text{position:relative;z-index:1}.progress-viewer_size_xs{font-size:var(--g-text-body-2-font-size);height:20px;line-height:var(--g-text-body-2-line-height)}.progress-viewer_size_s{font-size:var(--g-text-body-1-font-size);height:28px;line-height:28px}.progress-viewer_size_m{font-size:var(--g-text-body-2-font-size);height:32px;line-height:32px}.progress-viewer_size_ns{font-size:13px;height:24px;line-height:var(--g-text-subheader-3-line-height)}.progress-viewer_size_n{font-size:var(--g-text-body-1-font-size);height:36px;line-height:36px}.progress-viewer_size_l{font-size:var(--g-text-subheader-3-font-size);height:38px;line-height:38px}.progress-viewer_size_head{font-size:var(--g-text-body-1-font-size);line-height:36px}.full-node-viewer{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.full-node-viewer__common-info{align-items:stretch;display:flex;flex-direction:column;justify-content:flex-start}.full-node-viewer__section{border-radius:10px}.full-node-viewer__section_pools{grid-gap:7px 20px;display:grid;grid-template-columns:110px 110px}.full-node-viewer .info-viewer__label{min-width:100px}.full-node-viewer__section-title{font-weight:600;margin:15px 0 10px}.ydb-loader{align-items:center;display:flex;flex:1 1 auto;height:100%;justify-content:center}.empty-state{padding:20px}.empty-state_size_m{height:400px}.empty-state__wrapper{display:grid;grid-template-areas:"image title" "image description" "image actions"}.empty-state__wrapper_size_s{height:120px;width:460px}.empty-state__wrapper_size_m{height:240px;width:800px}.empty-state__wrapper_position_center{margin:0 auto;position:relative}.empty-state__image{color:var(--g-color-base-info-light-hover);grid-area:image;justify-self:end;margin-right:60px}.g-root_theme_dark .empty-state__image{color:var(--g-color-base-generic)}.empty-state__title{align-self:center;font-weight:500;grid-area:title}.empty-state__title_size_s{font-size:var(--g-text-subheader-3-font-size);line-height:var(--g-text-subheader-3-line-height)}.empty-state__title_size_m{font-size:var(--g-text-header-2-font-size);line-height:var(--g-text-header-2-line-height)}.empty-state__description{font-size:var(--g-text-body-2-font-size);grid-area:description;line-height:var(--g-text-body-2-line-height)}.empty-state__actions{grid-area:actions}.empty-state__actions>*{margin-right:8px}.usage-filter,.ydb-search{min-width:100px}.usage-filter__option{flex-grow:1}.usage-filter__option-title{font-size:var(--g-text-body-1-font-size);height:var(--g-text-body-1-line-height);line-height:var(--g-text-body-1-line-height)}.usage-filter__option-meta{border-radius:3px;font-size:var(--g-text-caption-2-font-size);line-height:var(--g-text-caption-2-line-height);padding:0 5px;position:relative;z-index:0}.usage-filter__option-bar{background-color:var(--g-color-base-info-medium);border-radius:3px;bottom:0;left:0;position:absolute;top:0;z-index:-1}.table-skeleton{width:100%}.table-skeleton__row{align-items:center;display:flex;height:var(--data-table-row-height)}.table-skeleton__row .g-skeleton{height:var(--g-text-body-2-line-height)}.table-skeleton__col-1{margin-right:5%;width:10%}.table-skeleton__col-2{margin-right:5%;width:7%}.table-skeleton__col-3,.table-skeleton__col-4{margin-right:5%;width:5%}.table-skeleton__col-5{width:20%}.table-skeleton__col-full{width:100%}.g-skeleton{--_--animation-from:calc(-100%*var(--g-flow-direction));--_--animation-to:calc(100%*var(--g-flow-direction));--_--gradient-deg:calc(90deg*var(--g-flow-direction));background-color:var(--g-color-base-generic);border-radius:5px;display:inline-block;overflow:hidden;position:relative;width:100%;z-index:0}.g-skeleton:after{animation:g-skeleton 1.2s ease-out infinite;background-image:linear-gradient(var(--_--gradient-deg),#0000,var(--g-color-base-generic));content:"";inset:0;position:absolute}@keyframes g-skeleton{0%{transform:translateX(var(--_--animation-from))}to{transform:translateX(var(--_--animation-to))}}.ydb-table-with-controls-layout{box-sizing:border-box;display:inline-block;min-width:100%}.ydb-table-with-controls-layout__controls-wrapper{box-sizing:border-box;width:100%}.ydb-table-with-controls-layout__controls,.ydb-table-with-controls-layout__controls-wrapper{background-color:var(--g-color-base-background);left:0;position:-webkit-sticky;position:sticky;top:0;z-index:3}.ydb-table-with-controls-layout__controls{align-items:center;display:flex;gap:12px;height:62px;padding:16px 0 18px;width:-webkit-max-content;width:max-content}.ydb-table-with-controls-layout .ydb-paginated-table__head{top:62px}.ydb-table-with-controls-layout .data-table__sticky_moving{top:62px!important}.ydb-paginated-table{--paginated-table-cell-vertical-padding:5px;--paginated-table-cell-horizontal-padding:10px;--paginated-table-border-color:var(--g-color-base-generic-hover);--paginated-table-hover-color:var(--g-color-base-float-hover);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);width:100%}.ydb-paginated-table__table{border-collapse:initial;border-spacing:0;max-width:100%;table-layout:fixed;width:-webkit-max-content;width:max-content}.ydb-paginated-table__table th{padding:0}.ydb-paginated-table__row:hover{background:var(--paginated-table-hover-color)}.ydb-paginated-table__row_empty:hover{background-color:initial}.ydb-paginated-table__head{background-color:var(--g-color-base-background);left:0;position:-webkit-sticky;position:sticky;top:0;z-index:1}.ydb-paginated-table__sort-icon-container{color:inherit;display:flex;justify-content:center}.ydb-paginated-table__sort-icon-container_shadow{opacity:.15}.ydb-paginated-table__sort-icon_desc{transform:rotate(180deg)}.ydb-paginated-table__head-cell-wrapper{border-bottom:1px solid var(--paginated-table-border-color);display:flex;overflow-x:hidden;position:relative}.ydb-paginated-table__head-cell{align-items:center;display:flex;flex-direction:row;max-width:100%;padding:var(--paginated-table-cell-vertical-padding) var(--paginated-table-cell-horizontal-padding);width:100%}.ydb-paginated-table__head-cell_align_left{justify-content:left}.ydb-paginated-table__head-cell_align_center{justify-content:center}.ydb-paginated-table__head-cell_align_right{justify-content:right}.ydb-paginated-table__head-cell{cursor:default;font-weight:700;gap:8px}.ydb-paginated-table__head-cell_sortable{cursor:pointer}.ydb-paginated-table__head-cell_sortable.ydb-paginated-table__head-cell_align_right{flex-direction:row-reverse}.ydb-paginated-table__head-cell-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:-webkit-min-content;width:min-content}.ydb-paginated-table__row-cell{border-bottom:1px solid var(--paginated-table-border-color);display:table-cell;max-width:100%;overflow-x:hidden;padding:var(--paginated-table-cell-vertical-padding) var(--paginated-table-cell-horizontal-padding);text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;width:100%}.ydb-paginated-table__row-cell_align_left{text-align:left}.ydb-paginated-table__row-cell_align_center{text-align:center}.ydb-paginated-table__row-cell_align_right{text-align:right}.ydb-paginated-table__resize-handler{background-color:var(--g-color-base-generic);cursor:col-resize;height:100%;position:absolute;right:0;top:0;visibility:hidden;width:6px}.ydb-paginated-table__head-cell-wrapper:hover>.ydb-paginated-table__resize-handler,.ydb-paginated-table__resize-handler_resizing{visibility:visible}.ydb-cell-with-popover{display:flex;max-width:100%}.ydb-cell-with-popover__popover{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.ydb-cell-with-popover__popover .g-popover__handler{display:inline}.ydb-usage-label_overload{background-color:var(--ydb-color-status-red);color:var(--g-color-text-light-primary)}.stack{--ydb-stack-base-z-index:100;--ydb-stack-offset-x:4px;--ydb-stack-offset-y:4px;--ydb-stack-offset-x-hover:4px;--ydb-stack-offset-y-hover:8px;position:relative}.stack__layer{background:var(--g-color-base-background);transition:transform .1s ease-out}.stack__layer:first-child{position:relative;z-index:var(--ydb-stack-base-z-index)}.stack__layer+.stack__layer{height:100%;left:0;position:absolute;top:0;transform:translate(calc(var(--ydb-stack-level)*var(--ydb-stack-offset-x)),calc(var(--ydb-stack-level)*var(--ydb-stack-offset-y)));width:100%;z-index:calc(var(--ydb-stack-base-z-index) - var(--ydb-stack-level))}.stack:hover .stack__layer:first-child{transform:translate(calc(var(--ydb-stack-offset-x-hover)*-1),calc(var(--ydb-stack-offset-y-hover)*-1))}.stack:hover .stack__layer+.stack__layer{transform:translate(calc(var(--ydb-stack-level)*var(--ydb-stack-offset-x-hover)*2 - var(--ydb-stack-offset-x-hover)),calc(var(--ydb-stack-level)*var(--ydb-stack-offset-y-hover)*2 - var(--ydb-stack-offset-y-hover)))}.storage-disk-progress-bar{background-color:var(--g-color-base-misc-light);border:1px solid var(--g-color-base-misc-heavy);border-radius:4px;color:var(--g-color-text-primary);display:block;height:var(--g-text-body-3-line-height);min-width:50px;position:relative;text-align:center;z-index:0}.storage-disk-progress-bar_compact{border-radius:2px;height:12px;min-width:0}.storage-disk-progress-bar_compact .storage-disk-progress-bar__filled{border-radius:1px}.storage-disk-progress-bar .storage-disk-progress-bar__filled{background-color:var(--g-color-base-misc-medium)}.storage-disk-progress-bar_green{background-color:var(--g-color-base-positive-light);border-color:var(--g-color-base-positive-heavy)}.storage-disk-progress-bar_green .storage-disk-progress-bar__filled{background-color:var(--g-color-base-positive-medium)}.g-root_theme_dark .storage-disk-progress-bar_green .storage-disk-progress-bar__filled{background-color:#7ce37966}.storage-disk-progress-bar_blue{background-color:var(--g-color-base-info-light);border-color:var(--g-color-base-info-heavy)}.storage-disk-progress-bar_blue .storage-disk-progress-bar__filled{background-color:var(--g-color-base-info-medium)}.storage-disk-progress-bar_yellow{background-color:var(--g-color-base-yellow-light);border-color:var(--g-color-base-warning-heavy)}.storage-disk-progress-bar_yellow .storage-disk-progress-bar__filled{background-color:var(--g-color-base-yellow-medium)}.storage-disk-progress-bar_orange{background-color:var(--g-color-base-warning-light);border-color:var(--ydb-color-status-orange)}.storage-disk-progress-bar_orange .storage-disk-progress-bar__filled{background-color:var(--g-color-base-warning-medium)}.storage-disk-progress-bar_red{background-color:var(--g-color-base-danger-light);border-color:var(--g-color-base-danger-heavy)}.storage-disk-progress-bar_red .storage-disk-progress-bar__filled{background-color:var(--g-color-base-danger-medium)}.storage-disk-progress-bar__filled{border-radius:3px 0 0 3px;height:100%;left:0;position:absolute;top:0}.storage-disk-progress-bar_inverted .storage-disk-progress-bar__filled{border-radius:0 3px 3px 0;left:auto;right:0}.storage-disk-progress-bar__filled-title{color:inherit;font-size:var(--g-text-body-1-font-size);line-height:calc(var(--g-text-body-3-line-height) - 2px);position:relative;z-index:2}.pdisk-storage-popup,.vdisk-storage-popup{padding:12px}.vdisk-storage-popup .info-viewer+.info-viewer{border-top:1px solid var(--g-color-line-generic);margin-top:8px;padding-top:8px}.vdisk-storage-popup__donor-label{margin-bottom:8px}.ydb-vdisk-component,.ydb-vdisk-component__content{border-radius:4px}.global-storage-groups__vdisks-column{overflow:visible}.global-storage-groups__vdisks-wrapper{display:flex;gap:10px;justify-content:center;min-width:500px}.global-storage-groups__vdisks-item{flex-grow:1;max-width:200px}.data-table__row:hover .global-storage-groups__vdisks-item .stack__layer{background:var(--ydb-data-table-color-hover)}.global-storage-groups__pool-name-wrapper{width:230px}.global-storage-groups__group-id{font-weight:500}.ydb-node-host-wrapper__external-button{display:none;flex-shrink:0;margin-left:4px}.data-table__row:hover .ydb-node-host-wrapper__external-button,.ydb-paginated-table__row:hover .ydb-node-host-wrapper__external-button{display:inline-flex}.pdisk-storage{position:relative;width:120px}.pdisk-storage__content{border-radius:4px;display:block;position:relative}.pdisk-storage__vdisks{display:flex;flex-wrap:wrap;gap:2px;margin-bottom:4px}.pdisk-storage__vdisks-item{flex-basis:5px;flex-shrink:0}.data-table__row:hover .pdisk-storage__vdisks-item .stack__layer{background:var(--ydb-data-table-color-hover)}.pdisk-storage__donors-stack{--ydb-stack-offset-x:0px;--ydb-stack-offset-y:-2px;--ydb-stack-offset-x-hover:0px;--ydb-stack-offset-y-hover:-7px}.pdisk-storage__media-type{color:var(--g-color-text-secondary);font-size:var(--g-text-body-1-font-size);line-height:var(--g-text-body-3-line-height);position:absolute;right:4px;top:0}.ydb-resizeable-data-table{display:flex;padding-right:20px;width:-webkit-max-content;width:max-content}.global-storage-nodes__pdisks-column{overflow:visible}.global-storage-nodes__pdisks-wrapper{align-items:flex-end;display:flex;justify-content:left;width:-webkit-max-content;width:max-content}.global-storage-nodes__pdisks-item{flex-grow:1;margin-right:10px;max-width:200px}.global-storage-nodes__pdisks-item:last-child{margin-right:0}.global-storage-nodes__group-id{font-weight:500}.global-storage-nodes__node_unavailable{opacity:.6}.global-storage__search{width:238px}.global-storage__table .g-tooltip{height:var(--g-text-body-2-line-height)!important}.global-storage .entity-status{justify-content:center}.ydb-critical-dialog{width:400px}.ydb-critical-dialog__warning-icon{color:var(--ydb-color-status-yellow);margin-right:16px}.ydb-critical-dialog__error-icon{color:var(--ydb-color-status-red);height:24px;margin-right:16px}.ydb-critical-dialog__body{align-items:center;display:flex}.g-dialog{--_--side-padding:32px;--_--close-button-space:0px;display:flex;flex-direction:column;position:relative;width:var(--_--width);width:var(--g-dialog-width,var(--_--width))}.g-dialog_has-scroll{max-height:calc(100vh - 40px);max-height:calc(100vh - var(--g-modal-margin, 20px)*2);overflow-y:auto}.g-dialog_size_s{--_--width:480px}.g-dialog_size_m{--_--width:720px}.g-dialog_size_l{--_--width:900px}.g-dialog_has-close{--_--close-button-space:24px}.g-modal{-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:var(--g-color-sfx-veil);display:none;inset:0;margin:-9999px 0 0 -9999px;overflow:auto;position:fixed;visibility:hidden;z-index:1000}.g-modal__content-aligner{align-items:center;display:inline-flex;justify-content:center;min-height:100%;min-width:100%}.g-modal__content-wrapper{margin:20px;margin:var(--g-modal-margin,20px);overflow-x:hidden}.g-modal__content,.g-modal__content-wrapper{border-radius:5px;border-radius:var(--g-modal-border-radius,5px)}.g-modal__content{background-color:var(--g-color-base-modal)}.g-modal__content_has-scroll{max-height:calc(100vh - 40px);max-height:calc(100vh - var(--g-modal-margin, 20px)*2);overflow-y:auto}.g-modal,.g-modal__content{animation-fill-mode:forwards;animation-timing-function:ease-out;outline:none}.g-modal_exit_active,.g-modal_open{display:block;margin:0;visibility:visible}.g-modal_appear_active,.g-modal_enter_active{animation-duration:.15s;animation-name:g-modal-open}.g-modal_appear_active .g-modal__content,.g-modal_enter_active .g-modal__content{animation-duration:.15s;animation-name:g-modal-content-open}.g-modal_exit_active{animation-duration:.2s;animation-name:g-modal}@keyframes g-modal{0%{opacity:1}to{opacity:0}}@keyframes g-modal-open{0%{opacity:0}to{opacity:1}}@keyframes g-modal-content-open{0%{transform:scale(.75)}to{transform:scale(1)}}.g-dialog-btn-close{inset-block-start:14px;inset-inline-end:14px;position:absolute;z-index:1}.g-dialog-footer{align-items:center;display:flex;padding:28px var(--_--side-padding)}.g-dialog-footer__bts-wrapper{display:flex;gap:10px}.g-dialog-footer__children{align-items:center;display:flex;flex-grow:1;height:100%}.g-dialog-footer__button{min-width:128px;position:relative}.g-dialog-footer__error{color:var(--g-color-text-danger);padding:10px}.g-dialog-header{align-items:center;color:var(--g-color-text-primary);display:flex;justify-content:flex-start;line-height:24px;padding-block:20px 10px;padding-inline:var(--_--side-padding) calc(var(--_--side-padding) + var(--_--close-button-space)*var(--g-flow-is-ltr) + var(--_--close-button-space)*var(--g-flow-is-rtl))}.g-dialog-header__caption{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.g-dialog-body{flex:1 1 auto;overflow-y:auto;padding:10px var(--_--side-padding)}.g-dialog-body_has-borders{border-block-end:1px solid var(--g-color-line-generic)}.g-dialog-body_has-borders,.g-dialog-divider{border-block-start:1px solid var(--g-color-line-generic)}.g-dialog-divider{margin:0 calc(var(--_--side-padding)*-1)}.developer-ui-link{display:none}.data-table__row:hover .developer-ui-link,.developer-ui-link_visible{display:inline-block}.ydb-pdisk-info__links,.ydb-vdisk-info__links{display:flex;flex-flow:row wrap;gap:12px}.kv-node-structure{display:flex;flex-shrink:0;flex:1 1 auto;flex-direction:column;font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);overflow:auto;position:relative}.kv-node-structure__pdisk{border:1px solid var(--g-color-line-generic);border-radius:5px;display:flex;flex-direction:column;margin-bottom:8px;padding:0 10px 0 20px;width:573px}.kv-node-structure__pdisk-id{align-items:flex-end;display:flex}.kv-node-structure__pdisk-header{align-items:center;display:flex;height:48px;justify-content:space-between}.kv-node-structure__pdisk-title-wrapper{align-items:center;display:flex;font-weight:600;gap:16px}.kv-node-structure__pdisk-title-wrapper .entity-status__status-icon{margin-right:0}.kv-node-structure__pdisk-title-item{display:flex;gap:4px}.kv-node-structure__pdisk-title-item-label{color:var(--g-color-text-secondary);font-weight:400}.kv-node-structure__pdisk-title-id{min-width:110px}.kv-node-structure__pdisk-title-type{justify-content:flex-end;min-width:50px}.kv-node-structure__pdisk-title-size{min-width:150px}.kv-node-structure__pdisk-details{margin-bottom:20px}.kv-node-structure__link{color:var(--g-color-base-brand);text-decoration:none}.kv-node-structure__vdisks-header{font-weight:600}.kv-node-structure__vdisks-container{margin-bottom:42px}.kv-node-structure__vdisk-details{max-height:90vh;max-width:none;min-width:200px;overflow:auto}.kv-node-structure__vdisk-details .vdisk-pdisk-node__column{margin-bottom:0}.kv-node-structure__vdisk-details .vdisk-pdisk-node__section{padding-bottom:0}.kv-node-structure__vdisk-id{align-items:center;display:flex}.kv-node-structure__vdisk-details-button_selected,.kv-node-structure__vdisk-id_selected{color:var(--g-color-text-info)}.kv-node-structure__external-button{align-items:center;display:inline-flex;margin-left:4px;transform:translateY(-1px)}.kv-node-structure__external-button_hidden{visibility:hidden}.kv-node-structure .data-table__row:hover .kv-node-structure__external-button_hidden{visibility:visible}.kv-node-structure__selected-vdisk{animation:onSelectedVdiskAnimation 4s}.kv-node-structure__row{display:flex}.kv-node-structure__column{display:flex;flex-direction:column;margin-bottom:15px}.kv-node-structure__title{font-size:var(--g-text-body-2-font-size);font-weight:500;line-height:var(--g-text-body-2-line-height);margin-right:16px;text-transform:uppercase}@keyframes onSelectedVdiskAnimation{0%{background-color:var(--g-color-base-info-light-hover)}}.link{color:var(--g-color-text-link);text-decoration:none}.link_external{margin-right:10px}.link:hover{color:var(--g-color-text-link-hover)}.node{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto}.node__header{margin:16px 20px}.node__content{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto;position:relative}.node__storage{height:100%;overflow:auto;padding:0 20px}.node__tabs{--g-tabs-border-width:0;align-items:center;box-shadow:inset 0 -1px 0 0 var(--g-color-line-generic);display:flex;justify-content:space-between;padding:0 20px}.node__tab{margin-right:40px;text-decoration:none}.node__tab:last-child{margin-right:0}.node__tab:first-letter{text-transform:uppercase}.node__overview-wrapper{padding:0 20px 20px}.node__node-page-wrapper{height:100%;padding:20px} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/7542.9a1fbaca.chunk.css b/ydb/core/viewer/monitoring/static/css/7542.9a1fbaca.chunk.css new file mode 100644 index 000000000000..38dfcbd84fe1 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/css/7542.9a1fbaca.chunk.css @@ -0,0 +1 @@ +.empty-state{padding:20px}.empty-state_size_m{height:400px}.empty-state__wrapper{display:grid;grid-template-areas:"image title" "image description" "image actions"}.empty-state__wrapper_size_s{height:120px;width:460px}.empty-state__wrapper_size_m{height:240px;width:800px}.empty-state__wrapper_position_center{margin:0 auto;position:relative}.empty-state__image{color:var(--g-color-base-info-light-hover);grid-area:image;justify-self:end;margin-right:60px}.g-root_theme_dark .empty-state__image{color:var(--g-color-base-generic)}.empty-state__title{align-self:center;font-weight:500;grid-area:title}.empty-state__title_size_s{font-size:var(--g-text-subheader-3-font-size);line-height:var(--g-text-subheader-3-line-height)}.empty-state__title_size_m{font-size:var(--g-text-header-2-font-size);line-height:var(--g-text-header-2-line-height)}.empty-state__description{font-size:var(--g-text-body-2-font-size);grid-area:description;line-height:var(--g-text-body-2-line-height)}.empty-state__actions{grid-area:actions}.empty-state__actions>*{margin-right:8px}.g-tooltip[class]{--g-popup-border-width:0}.g-tooltip[class]>div{animation-duration:1ms;box-shadow:0 1px 5px 0 #00000026;box-sizing:border-box;max-width:360px;padding:4px 8px}.g-tooltip__content{-webkit-box-orient:vertical;-ms-box-orient:vertical;-webkit-line-clamp:20;-moz-line-clamp:20;-ms-line-clamp:20;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.ydb-status-icon__status-color_state_green{background-color:var(--ydb-color-status-green)}.ydb-status-icon__status-color_state_yellow{background-color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-color_state_blue{background-color:var(--ydb-color-status-blue)}.ydb-status-icon__status-color_state_red{background-color:var(--ydb-color-status-red)}.ydb-status-icon__status-color_state_grey{background-color:var(--ydb-color-status-grey)}.ydb-status-icon__status-color_state_orange{background-color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_blue{color:var(--ydb-color-status-blue)}.ydb-status-icon__status-icon_state_yellow{color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-icon_state_orange{color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_red{color:var(--ydb-color-status-red)}.ydb-status-icon__status-color,.ydb-status-icon__status-icon{border-radius:3px;flex-shrink:0}.ydb-status-icon__status-color_size_xs,.ydb-status-icon__status-icon_size_xs{aspect-ratio:1;height:12px;width:12px}.ydb-status-icon__status-color_size_s,.ydb-status-icon__status-icon_size_s{aspect-ratio:1;height:16px;width:16px}.ydb-status-icon__status-color_size_m,.ydb-status-icon__status-icon_size_m{aspect-ratio:1;height:18px;width:18px}.ydb-status-icon__status-color_size_l,.ydb-status-icon__status-icon_size_l{height:24px;width:24px}.link{color:var(--g-color-text-link);text-decoration:none}.link:hover{color:var(--g-color-text-link-hover)}.entity-status{align-items:center;display:inline-flex;font-size:var(--g-text-body-2-font-size);height:100%;line-height:var(--g-text-body-2-line-height);max-width:100%}.entity-status__icon{margin-right:8px}.entity-status__clipboard-button{color:var(--g-color-text-secondary);display:flex;flex-shrink:0;margin-left:8px;opacity:0}.entity-status__clipboard-button:focus-visible,.entity-status__clipboard-button_visible{opacity:1}.entity-status__label{color:var(--g-color-text-complementary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin-right:2px}.entity-status__label_size_l{font-size:var(--g-text-header-2-font-size)}.entity-status__link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-status__link_with-left-trim{direction:rtl}.entity-status__link_with-left-trim .entity-status__name{unicode-bidi:plaintext}.entity-status__label_state_blue{color:var(--ydb-color-status-blue)}.entity-status__label_state_yellow{color:var(--ydb-color-status-yellow)}.entity-status__label_state_orange{color:var(--ydb-color-status-orange)}.entity-status__label_state_red{color:var(--ydb-color-status-red)}.ydb-loader{align-items:center;display:flex;flex:1 1 auto;height:100%;justify-content:center}.tag{background:var(--g-color-base-generic);border-radius:3px;color:var(--g-color-text-primary);font-size:12px;margin-right:5px;padding:2px 5px;text-transform:uppercase}.tag:last-child{margin-right:0}.tag_type_blue{background-color:var(--g-color-celestial-thunder)}.ydb-critical-dialog{width:400px}.ydb-critical-dialog__warning-icon{color:var(--ydb-color-status-yellow);margin-right:16px}.ydb-critical-dialog__error-icon{color:var(--ydb-color-status-red);height:24px;margin-right:16px}.ydb-critical-dialog__body{align-items:center;display:flex}.g-dialog{--_--side-padding:32px;--_--close-button-space:0px;display:flex;flex-direction:column;position:relative;width:var(--_--width);width:var(--g-dialog-width,var(--_--width))}.g-dialog_has-scroll{max-height:calc(100vh - 40px);max-height:calc(100vh - var(--g-modal-margin, 20px)*2);overflow-y:auto}.g-dialog_size_s{--_--width:480px}.g-dialog_size_m{--_--width:720px}.g-dialog_size_l{--_--width:900px}.g-dialog_has-close{--_--close-button-space:24px}.g-modal{-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:var(--g-color-sfx-veil);display:none;inset:0;margin:-9999px 0 0 -9999px;overflow:auto;position:fixed;visibility:hidden;z-index:1000}.g-modal__content-aligner{align-items:center;display:inline-flex;justify-content:center;min-height:100%;min-width:100%}.g-modal__content-wrapper{margin:20px;margin:var(--g-modal-margin,20px);overflow-x:hidden}.g-modal__content,.g-modal__content-wrapper{border-radius:5px;border-radius:var(--g-modal-border-radius,5px)}.g-modal__content{background-color:var(--g-color-base-modal)}.g-modal__content_has-scroll{max-height:calc(100vh - 40px);max-height:calc(100vh - var(--g-modal-margin, 20px)*2);overflow-y:auto}.g-modal,.g-modal__content{animation-fill-mode:forwards;animation-timing-function:ease-out;outline:none}.g-modal_exit_active,.g-modal_open{display:block;margin:0;visibility:visible}.g-modal_appear_active,.g-modal_enter_active{animation-duration:.15s;animation-name:g-modal-open}.g-modal_appear_active .g-modal__content,.g-modal_enter_active .g-modal__content{animation-duration:.15s;animation-name:g-modal-content-open}.g-modal_exit_active{animation-duration:.2s;animation-name:g-modal}@keyframes g-modal{0%{opacity:1}to{opacity:0}}@keyframes g-modal-open{0%{opacity:0}to{opacity:1}}@keyframes g-modal-content-open{0%{transform:scale(.75)}to{transform:scale(1)}}.g-dialog-btn-close{inset-block-start:14px;inset-inline-end:14px;position:absolute;z-index:1}.g-dialog-footer{align-items:center;display:flex;padding:28px var(--_--side-padding)}.g-dialog-footer__bts-wrapper{display:flex;gap:10px}.g-dialog-footer__children{align-items:center;display:flex;flex-grow:1;height:100%}.g-dialog-footer__button{min-width:128px;position:relative}.g-dialog-footer__error{color:var(--g-color-text-danger);padding:10px}.g-dialog-header{align-items:center;color:var(--g-color-text-primary);display:flex;justify-content:flex-start;line-height:24px;padding-block:20px 10px;padding-inline:var(--_--side-padding) calc(var(--_--side-padding) + var(--_--close-button-space)*var(--g-flow-is-ltr) + var(--_--close-button-space)*var(--g-flow-is-rtl))}.g-dialog-header__caption{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.g-dialog-body{flex:1 1 auto;overflow-y:auto;padding:10px var(--_--side-padding)}.g-dialog-body_has-borders{border-block-end:1px solid var(--g-color-line-generic)}.g-dialog-body_has-borders,.g-dialog-divider{border-block-start:1px solid var(--g-color-line-generic)}.g-dialog-divider{margin:0 calc(var(--_--side-padding)*-1)}.ydb-resizeable-data-table{display:flex;padding-right:20px;width:-webkit-max-content;width:max-content}.link,.tablet-page__link{color:var(--g-color-text-link);text-decoration:none}.link_external{margin-right:10px}.link:hover,.tablet-page__link:hover{color:var(--g-color-text-link-hover)}.tablet-page{display:flex;flex-direction:column;padding:20px}.tablet-page__tenant{margin-bottom:20px}.tablet-page__pane-wrapper{display:flex}.tablet-page__left-pane{margin-right:70px}.tablet-page__history-title{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin-bottom:15px}.tablet-page__placeholder{flex:1 1 auto;justify-content:center}.tablet-page__placeholder,.tablet-page__row{align-items:center;display:flex}.tablet-page__row_header{margin-bottom:20px}.tablet-page__row_header .tablet-page__link{margin:0 10px 0 5px}.tablet-page__title{font-size:var(--g-text-body-2-font-size);font-weight:500;line-height:var(--g-text-body-2-line-height);margin-right:16px;text-transform:uppercase}.tablet-page__loader{width:25px}.tablet-page .info-viewer__items{grid-template-columns:auto}.tablet-page__controls{margin:20px 0 15px}.tablet-page__control{margin-right:15px}.tablet-page__links{display:flex;list-style-type:none;margin:5px 0 10px;padding:0}.tablet-page__links>*{margin:0 10px 0 0}.tablet-page__top-label{font-size:var(--g-text-body-2-font-size);font-weight:500;line-height:var(--g-text-body-2-line-height);margin-right:16px;text-transform:uppercase} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/8076.5d26c70c.chunk.css b/ydb/core/viewer/monitoring/static/css/8076.5d26c70c.chunk.css new file mode 100644 index 000000000000..86b740c43d51 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/css/8076.5d26c70c.chunk.css @@ -0,0 +1 @@ +.auto-refresh-control{align-items:center;display:flex;gap:var(--g-spacing-1)}.ydb-critical-dialog{width:400px}.ydb-critical-dialog__warning-icon{color:var(--ydb-color-status-yellow);margin-right:16px}.ydb-critical-dialog__error-icon{color:var(--ydb-color-status-red);height:24px;margin-right:16px}.ydb-critical-dialog__body{align-items:center;display:flex}.g-dialog{--_--side-padding:32px;--_--close-button-space:0px;display:flex;flex-direction:column;position:relative;width:var(--_--width);width:var(--g-dialog-width,var(--_--width))}.g-dialog_has-scroll{max-height:calc(100vh - 40px);max-height:calc(100vh - var(--g-modal-margin, 20px)*2);overflow-y:auto}.g-dialog_size_s{--_--width:480px}.g-dialog_size_m{--_--width:720px}.g-dialog_size_l{--_--width:900px}.g-dialog_has-close{--_--close-button-space:24px}.g-modal{-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:var(--g-color-sfx-veil);display:none;inset:0;margin:-9999px 0 0 -9999px;overflow:auto;position:fixed;visibility:hidden;z-index:1000}.g-modal__content-aligner{align-items:center;display:inline-flex;justify-content:center;min-height:100%;min-width:100%}.g-modal__content-wrapper{margin:20px;margin:var(--g-modal-margin,20px);overflow-x:hidden}.g-modal__content,.g-modal__content-wrapper{border-radius:5px;border-radius:var(--g-modal-border-radius,5px)}.g-modal__content{background-color:var(--g-color-base-modal)}.g-modal__content_has-scroll{max-height:calc(100vh - 40px);max-height:calc(100vh - var(--g-modal-margin, 20px)*2);overflow-y:auto}.g-modal,.g-modal__content{animation-fill-mode:forwards;animation-timing-function:ease-out;outline:none}.g-modal_exit_active,.g-modal_open{display:block;margin:0;visibility:visible}.g-modal_appear_active,.g-modal_enter_active{animation-duration:.15s;animation-name:g-modal-open}.g-modal_appear_active .g-modal__content,.g-modal_enter_active .g-modal__content{animation-duration:.15s;animation-name:g-modal-content-open}.g-modal_exit_active{animation-duration:.2s;animation-name:g-modal}@keyframes g-modal{0%{opacity:1}to{opacity:0}}@keyframes g-modal-open{0%{opacity:0}to{opacity:1}}@keyframes g-modal-content-open{0%{transform:scale(.75)}to{transform:scale(1)}}.g-dialog-btn-close{inset-block-start:14px;inset-inline-end:14px;position:absolute;z-index:1}.g-dialog-footer{align-items:center;display:flex;padding:28px var(--_--side-padding)}.g-dialog-footer__bts-wrapper{display:flex;gap:10px}.g-dialog-footer__children{align-items:center;display:flex;flex-grow:1;height:100%}.g-dialog-footer__button{min-width:128px;position:relative}.g-dialog-footer__error{color:var(--g-color-text-danger);padding:10px}.g-dialog-header{align-items:center;color:var(--g-color-text-primary);display:flex;justify-content:flex-start;line-height:24px;padding-block:20px 10px;padding-inline:var(--_--side-padding) calc(var(--_--side-padding) + var(--_--close-button-space)*var(--g-flow-is-ltr) + var(--_--close-button-space)*var(--g-flow-is-rtl))}.g-dialog-header__caption{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.g-dialog-body{flex:1 1 auto;overflow-y:auto;padding:10px var(--_--side-padding)}.g-dialog-body_has-borders{border-block-end:1px solid var(--g-color-line-generic)}.g-dialog-body_has-borders,.g-dialog-divider{border-block-start:1px solid var(--g-color-line-generic)}.g-dialog-divider{margin:0 calc(var(--_--side-padding)*-1)}.ydb-status-icon__status-color_state_green{background-color:var(--ydb-color-status-green)}.ydb-status-icon__status-color_state_yellow{background-color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-color_state_blue{background-color:var(--ydb-color-status-blue)}.ydb-status-icon__status-color_state_red{background-color:var(--ydb-color-status-red)}.ydb-status-icon__status-color_state_grey{background-color:var(--ydb-color-status-grey)}.ydb-status-icon__status-color_state_orange{background-color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_blue{color:var(--ydb-color-status-blue)}.ydb-status-icon__status-icon_state_yellow{color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-icon_state_orange{color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_red{color:var(--ydb-color-status-red)}.ydb-status-icon__status-color,.ydb-status-icon__status-icon{border-radius:3px;flex-shrink:0}.ydb-status-icon__status-color_size_xs,.ydb-status-icon__status-icon_size_xs{aspect-ratio:1;height:12px;width:12px}.ydb-status-icon__status-color_size_s,.ydb-status-icon__status-icon_size_s{aspect-ratio:1;height:16px;width:16px}.ydb-status-icon__status-color_size_m,.ydb-status-icon__status-icon_size_m{aspect-ratio:1;height:18px;width:18px}.ydb-status-icon__status-color_size_l,.ydb-status-icon__status-icon_size_l{height:24px;width:24px}.ydb-disk-page-title{text-wrap:nowrap;align-items:baseline;display:flex;flex-flow:row nowrap;font-size:var(--g-text-header-2-font-size);line-height:var(--g-text-header-2-line-height)}.ydb-disk-page-title__prefix{color:var(--g-color-text-secondary);margin-right:6px}.ydb-disk-page-title__icon{margin-right:8px}.ydb-info-viewer-skeleton{display:flex;flex-direction:column;gap:16px}.ydb-info-viewer-skeleton__row{align-items:flex-start;display:flex}.ydb-info-viewer-skeleton__row,.ydb-info-viewer-skeleton__row .g-skeleton{min-height:var(--g-text-body-2-font-size)}.ydb-info-viewer-skeleton__label{align-items:baseline;display:flex;flex:0 1 auto;width:200px}.ydb-info-viewer-skeleton__label__text{width:100px}.ydb-info-viewer-skeleton__label__dots{border-bottom:1px dotted var(--g-color-text-secondary);margin:0 2px;width:100px}.ydb-info-viewer-skeleton__value{max-width:20%;min-width:200px}.g-skeleton{--_--animation-from:calc(-100%*var(--g-flow-direction));--_--animation-to:calc(100%*var(--g-flow-direction));--_--gradient-deg:calc(90deg*var(--g-flow-direction));background-color:var(--g-color-base-generic);border-radius:5px;display:inline-block;overflow:hidden;position:relative;width:100%;z-index:0}.g-skeleton:after{animation:g-skeleton 1.2s ease-out infinite;background-image:linear-gradient(var(--_--gradient-deg),#0000,var(--g-color-base-generic));content:"";inset:0;position:absolute}@keyframes g-skeleton{0%{transform:translateX(var(--_--animation-from))}to{transform:translateX(var(--_--animation-to))}}.g-tooltip[class]{--g-popup-border-width:0}.g-tooltip[class]>div{animation-duration:1ms;box-shadow:0 1px 5px 0 #00000026;box-sizing:border-box;max-width:360px;padding:4px 8px}.g-tooltip__content{-webkit-box-orient:vertical;-ms-box-orient:vertical;-webkit-line-clamp:20;-moz-line-clamp:20;-ms-line-clamp:20;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.entity-status{align-items:center;display:inline-flex;font-size:var(--g-text-body-2-font-size);height:100%;line-height:var(--g-text-body-2-line-height);max-width:100%}.entity-status__icon{margin-right:8px}.entity-status__clipboard-button{color:var(--g-color-text-secondary);display:flex;flex-shrink:0;margin-left:8px;opacity:0}.entity-status__clipboard-button:focus-visible,.entity-status__clipboard-button_visible{opacity:1}.entity-status__label{color:var(--g-color-text-complementary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin-right:2px}.entity-status__label_size_l{font-size:var(--g-text-header-2-font-size)}.entity-status__link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-status__link_with-left-trim{direction:rtl}.entity-status__link_with-left-trim .entity-status__name{unicode-bidi:plaintext}.entity-status__label_state_blue{color:var(--ydb-color-status-blue)}.entity-status__label_state_yellow{color:var(--ydb-color-status-yellow)}.entity-status__label_state_orange{color:var(--ydb-color-status-orange)}.entity-status__label_state_red{color:var(--ydb-color-status-red)}.progress-viewer{align-items:center;background:var(--g-color-base-generic);border-radius:2px;color:var(--g-color-text-complementary);display:flex;font-size:var(--g-text-body-2-font-size);height:23px;justify-content:center;min-width:120px;overflow:hidden;padding:0 4px;position:relative;white-space:nowrap;z-index:0}.progress-viewer_theme_dark{color:var(--g-color-text-light-primary)}.progress-viewer_theme_dark .progress-viewer__line{opacity:.75}.progress-viewer_status_good{background-color:var(--g-color-base-positive-light)}.progress-viewer_status_good .progress-viewer__line{background-color:var(--ydb-color-status-green)}.progress-viewer_status_warning{background-color:var(--g-color-base-yellow-light)}.progress-viewer_status_warning .progress-viewer__line{background-color:var(--ydb-color-status-yellow)}.progress-viewer_status_danger{background-color:var(--g-color-base-danger-light)}.progress-viewer_status_danger .progress-viewer__line{background-color:var(--ydb-color-status-red)}.progress-viewer__line{height:100%;left:0;position:absolute;top:0}.progress-viewer__text{position:relative;z-index:1}.progress-viewer_size_xs{font-size:var(--g-text-body-2-font-size);height:20px;line-height:var(--g-text-body-2-line-height)}.progress-viewer_size_s{font-size:var(--g-text-body-1-font-size);height:28px;line-height:28px}.progress-viewer_size_m{font-size:var(--g-text-body-2-font-size);height:32px;line-height:32px}.progress-viewer_size_ns{font-size:13px;height:24px;line-height:var(--g-text-subheader-3-line-height)}.progress-viewer_size_n{font-size:var(--g-text-body-1-font-size);height:36px;line-height:36px}.progress-viewer_size_l{font-size:var(--g-text-subheader-3-font-size);height:38px;line-height:38px}.progress-viewer_size_head{font-size:var(--g-text-body-1-font-size);line-height:36px}.ydb-pdisk-info__links{display:flex;flex-flow:row wrap;gap:12px}.ydb-page-meta{text-wrap:nowrap;color:var(--g-color-text-primary);display:flex;flex-flow:row nowrap;font-size:var(--g-text-body-2-font-size);height:var(--g-text-body-2-line-height);line-height:var(--g-text-body-2-line-height)}.ydb-page-meta__skeleton{height:80%;width:80%}.ydb-resizeable-data-table{display:flex;padding-right:20px;width:-webkit-max-content;width:max-content}.table-skeleton{width:100%}.table-skeleton__row{align-items:center;display:flex;height:var(--data-table-row-height)}.table-skeleton__row .g-skeleton{height:var(--g-text-body-2-line-height)}.table-skeleton__col-1{margin-right:5%;width:10%}.table-skeleton__col-2{margin-right:5%;width:7%}.table-skeleton__col-3,.table-skeleton__col-4{margin-right:5%;width:5%}.table-skeleton__col-5{width:20%}.table-skeleton__col-full{width:100%}.ydb-cell-with-popover{display:flex;max-width:100%}.ydb-cell-with-popover__popover{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.ydb-cell-with-popover__popover .g-popover__handler{display:inline}.ydb-usage-label_overload{background-color:var(--ydb-color-status-red);color:var(--g-color-text-light-primary)}.stack{--ydb-stack-base-z-index:100;--ydb-stack-offset-x:4px;--ydb-stack-offset-y:4px;--ydb-stack-offset-x-hover:4px;--ydb-stack-offset-y-hover:8px;position:relative}.stack__layer{background:var(--g-color-base-background);transition:transform .1s ease-out}.stack__layer:first-child{position:relative;z-index:var(--ydb-stack-base-z-index)}.stack__layer+.stack__layer{height:100%;left:0;position:absolute;top:0;transform:translate(calc(var(--ydb-stack-level)*var(--ydb-stack-offset-x)),calc(var(--ydb-stack-level)*var(--ydb-stack-offset-y)));width:100%;z-index:calc(var(--ydb-stack-base-z-index) - var(--ydb-stack-level))}.stack:hover .stack__layer:first-child{transform:translate(calc(var(--ydb-stack-offset-x-hover)*-1),calc(var(--ydb-stack-offset-y-hover)*-1))}.stack:hover .stack__layer+.stack__layer{transform:translate(calc(var(--ydb-stack-level)*var(--ydb-stack-offset-x-hover)*2 - var(--ydb-stack-offset-x-hover)),calc(var(--ydb-stack-level)*var(--ydb-stack-offset-y-hover)*2 - var(--ydb-stack-offset-y-hover)))}.storage-disk-progress-bar{background-color:var(--g-color-base-misc-light);border:1px solid var(--g-color-base-misc-heavy);border-radius:4px;color:var(--g-color-text-primary);display:block;height:var(--g-text-body-3-line-height);min-width:50px;position:relative;text-align:center;z-index:0}.storage-disk-progress-bar_compact{border-radius:2px;height:12px;min-width:0}.storage-disk-progress-bar_compact .storage-disk-progress-bar__filled{border-radius:1px}.storage-disk-progress-bar .storage-disk-progress-bar__filled{background-color:var(--g-color-base-misc-medium)}.storage-disk-progress-bar_green{background-color:var(--g-color-base-positive-light);border-color:var(--g-color-base-positive-heavy)}.storage-disk-progress-bar_green .storage-disk-progress-bar__filled{background-color:var(--g-color-base-positive-medium)}.g-root_theme_dark .storage-disk-progress-bar_green .storage-disk-progress-bar__filled{background-color:#7ce37966}.storage-disk-progress-bar_blue{background-color:var(--g-color-base-info-light);border-color:var(--g-color-base-info-heavy)}.storage-disk-progress-bar_blue .storage-disk-progress-bar__filled{background-color:var(--g-color-base-info-medium)}.storage-disk-progress-bar_yellow{background-color:var(--g-color-base-yellow-light);border-color:var(--g-color-base-warning-heavy)}.storage-disk-progress-bar_yellow .storage-disk-progress-bar__filled{background-color:var(--g-color-base-yellow-medium)}.storage-disk-progress-bar_orange{background-color:var(--g-color-base-warning-light);border-color:var(--ydb-color-status-orange)}.storage-disk-progress-bar_orange .storage-disk-progress-bar__filled{background-color:var(--g-color-base-warning-medium)}.storage-disk-progress-bar_red{background-color:var(--g-color-base-danger-light);border-color:var(--g-color-base-danger-heavy)}.storage-disk-progress-bar_red .storage-disk-progress-bar__filled{background-color:var(--g-color-base-danger-medium)}.storage-disk-progress-bar__filled{border-radius:3px 0 0 3px;height:100%;left:0;position:absolute;top:0}.storage-disk-progress-bar_inverted .storage-disk-progress-bar__filled{border-radius:0 3px 3px 0;left:auto;right:0}.storage-disk-progress-bar__filled-title{color:inherit;font-size:var(--g-text-body-1-font-size);line-height:calc(var(--g-text-body-3-line-height) - 2px);position:relative;z-index:2}.pdisk-storage-popup,.vdisk-storage-popup{padding:12px}.vdisk-storage-popup .info-viewer+.info-viewer{border-top:1px solid var(--g-color-line-generic);margin-top:8px;padding-top:8px}.vdisk-storage-popup__donor-label{margin-bottom:8px}.ydb-vdisk-component,.ydb-vdisk-component__content{border-radius:4px}.global-storage-groups__vdisks-column{overflow:visible}.global-storage-groups__vdisks-wrapper{display:flex;gap:10px;justify-content:center;min-width:500px}.global-storage-groups__vdisks-item{flex-grow:1;max-width:200px}.data-table__row:hover .global-storage-groups__vdisks-item .stack__layer{background:var(--ydb-data-table-color-hover)}.global-storage-groups__pool-name-wrapper{width:230px}.global-storage-groups__group-id{font-weight:500}.link{color:var(--g-color-text-link);text-decoration:none}.link_external{margin-right:10px}.link:hover{color:var(--g-color-text-link-hover)}.ydb-pdisk-page{display:flex;flex-direction:column;gap:20px;height:100%;overflow:auto;padding:20px;position:relative}.ydb-pdisk-page__controls,.ydb-pdisk-page__groups-title,.ydb-pdisk-page__info,.ydb-pdisk-page__meta,.ydb-pdisk-page__title{left:0;position:-webkit-sticky;position:sticky}.ydb-pdisk-page__groups-title{font-size:var(--g-text-header-1-font-size);line-height:var(--g-text-header-1-line-height)}.ydb-pdisk-page__controls{align-items:center;display:flex;gap:var(--g-spacing-2)}.ydb-pdisk-page__auto-refresh-control{margin-inline-start:auto} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/8429.ef9c97b7.chunk.css b/ydb/core/viewer/monitoring/static/css/8429.ef9c97b7.chunk.css new file mode 100644 index 000000000000..3b1f8fac5bb8 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/css/8429.ef9c97b7.chunk.css @@ -0,0 +1 @@ +@charset "UTF-8";.auto-refresh-control{align-items:center;display:flex;gap:var(--g-spacing-1)}.g-tooltip[class]{--g-popup-border-width:0}.g-tooltip[class]>div{animation-duration:1ms;box-shadow:0 1px 5px 0 #00000026;box-sizing:border-box;max-width:360px;padding:4px 8px}.g-tooltip__content{-webkit-box-orient:vertical;-ms-box-orient:vertical;-webkit-line-clamp:20;-moz-line-clamp:20;-ms-line-clamp:20;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.ydb-status-icon__status-color_state_green{background-color:var(--ydb-color-status-green)}.ydb-status-icon__status-color_state_yellow{background-color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-color_state_blue{background-color:var(--ydb-color-status-blue)}.ydb-status-icon__status-color_state_red{background-color:var(--ydb-color-status-red)}.ydb-status-icon__status-color_state_grey{background-color:var(--ydb-color-status-grey)}.ydb-status-icon__status-color_state_orange{background-color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_blue{color:var(--ydb-color-status-blue)}.ydb-status-icon__status-icon_state_yellow{color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-icon_state_orange{color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_red{color:var(--ydb-color-status-red)}.ydb-status-icon__status-color,.ydb-status-icon__status-icon{border-radius:3px;flex-shrink:0}.ydb-status-icon__status-color_size_xs,.ydb-status-icon__status-icon_size_xs{aspect-ratio:1;height:12px;width:12px}.ydb-status-icon__status-color_size_s,.ydb-status-icon__status-icon_size_s{aspect-ratio:1;height:16px;width:16px}.ydb-status-icon__status-color_size_m,.ydb-status-icon__status-icon_size_m{aspect-ratio:1;height:18px;width:18px}.ydb-status-icon__status-color_size_l,.ydb-status-icon__status-icon_size_l{height:24px;width:24px}.entity-status{align-items:center;display:inline-flex;font-size:var(--g-text-body-2-font-size);height:100%;line-height:var(--g-text-body-2-line-height);max-width:100%}.entity-status__icon{margin-right:8px}.entity-status__clipboard-button{color:var(--g-color-text-secondary);display:flex;flex-shrink:0;margin-left:8px;opacity:0}.entity-status__clipboard-button:focus-visible,.entity-status__clipboard-button_visible{opacity:1}.entity-status__label{color:var(--g-color-text-complementary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin-right:2px}.entity-status__label_size_l{font-size:var(--g-text-header-2-font-size)}.entity-status__link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-status__link_with-left-trim{direction:rtl}.entity-status__link_with-left-trim .entity-status__name{unicode-bidi:plaintext}.entity-status__label_state_blue{color:var(--ydb-color-status-blue)}.entity-status__label_state_yellow{color:var(--ydb-color-status-yellow)}.entity-status__label_state_orange{color:var(--ydb-color-status-orange)}.entity-status__label_state_red{color:var(--ydb-color-status-red)}.empty-state{padding:20px}.empty-state_size_m{height:400px}.empty-state__wrapper{display:grid;grid-template-areas:"image title" "image description" "image actions"}.empty-state__wrapper_size_s{height:120px;width:460px}.empty-state__wrapper_size_m{height:240px;width:800px}.empty-state__wrapper_position_center{margin:0 auto;position:relative}.empty-state__image{color:var(--g-color-base-info-light-hover);grid-area:image;justify-self:end;margin-right:60px}.g-root_theme_dark .empty-state__image{color:var(--g-color-base-generic)}.empty-state__title{align-self:center;font-weight:500;grid-area:title}.empty-state__title_size_s{font-size:var(--g-text-subheader-3-font-size);line-height:var(--g-text-subheader-3-line-height)}.empty-state__title_size_m{font-size:var(--g-text-header-2-font-size);line-height:var(--g-text-header-2-line-height)}.empty-state__description{font-size:var(--g-text-body-2-font-size);grid-area:description;line-height:var(--g-text-body-2-line-height)}.empty-state__actions{grid-area:actions}.empty-state__actions>*{margin-right:8px}.ydb-resizeable-data-table{display:flex;padding-right:20px;width:-webkit-max-content;width:max-content}.ydb-search{min-width:100px}.table-skeleton{width:100%}.table-skeleton__row{align-items:center;display:flex;height:var(--data-table-row-height)}.table-skeleton__row .g-skeleton{height:var(--g-text-body-2-line-height)}.table-skeleton__col-1{margin-right:5%;width:10%}.table-skeleton__col-2{margin-right:5%;width:7%}.table-skeleton__col-3,.table-skeleton__col-4{margin-right:5%;width:5%}.table-skeleton__col-5{width:20%}.table-skeleton__col-full{width:100%}.g-skeleton{--_--animation-from:calc(-100%*var(--g-flow-direction));--_--animation-to:calc(100%*var(--g-flow-direction));--_--gradient-deg:calc(90deg*var(--g-flow-direction));background-color:var(--g-color-base-generic);border-radius:5px;display:inline-block;overflow:hidden;position:relative;width:100%;z-index:0}.g-skeleton:after{animation:g-skeleton 1.2s ease-out infinite;background-image:linear-gradient(var(--_--gradient-deg),#0000,var(--g-color-base-generic));content:"";inset:0;position:absolute}@keyframes g-skeleton{0%{transform:translateX(var(--_--animation-from))}to{transform:translateX(var(--_--animation-to))}}.ydb-table-with-controls-layout{box-sizing:border-box;display:inline-block;min-width:100%}.ydb-table-with-controls-layout__controls-wrapper{box-sizing:border-box;width:100%}.ydb-table-with-controls-layout__controls,.ydb-table-with-controls-layout__controls-wrapper{background-color:var(--g-color-base-background);left:0;position:-webkit-sticky;position:sticky;top:0;z-index:3}.ydb-table-with-controls-layout__controls{align-items:center;display:flex;gap:12px;height:62px;padding:16px 0 18px;width:-webkit-max-content;width:max-content}.ydb-table-with-controls-layout .ydb-paginated-table__head{top:62px}.ydb-table-with-controls-layout .data-table__sticky_moving{top:62px!important}.ydb-cell-with-popover{display:flex;max-width:100%}.ydb-cell-with-popover__popover{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.ydb-cell-with-popover__popover .g-popover__handler{display:inline}.ydb-node-host-wrapper__external-button{display:none;flex-shrink:0;margin-left:4px}.data-table__row:hover .ydb-node-host-wrapper__external-button,.ydb-paginated-table__row:hover .ydb-node-host-wrapper__external-button{display:inline-flex}.ydb-pool-bar{border:1px solid;border-radius:1px;cursor:pointer;height:20px;margin-right:2px;position:relative;width:6px}.ydb-pool-bar__popup-content{padding:10px;width:170px}.ydb-pool-bar:last-child{margin-right:0}.ydb-pool-bar_type_normal{border-color:var(--ydb-color-status-green)}.ydb-pool-bar_type_warning{border-color:var(--ydb-color-status-yellow)}.ydb-pool-bar_type_danger{border-color:var(--ydb-color-status-red)}.ydb-pool-bar__value{bottom:0;min-height:1px;position:absolute;width:100%}.ydb-pool-bar__value_type_normal{background-color:var(--ydb-color-status-green)}.ydb-pool-bar__value_type_warning{background-color:var(--ydb-color-status-yellow)}.ydb-pool-bar__value_type_danger{background-color:var(--ydb-color-status-red)}.ydb-pools-graph{display:flex}.progress-viewer{align-items:center;background:var(--g-color-base-generic);border-radius:2px;color:var(--g-color-text-complementary);display:flex;font-size:var(--g-text-body-2-font-size);height:23px;justify-content:center;min-width:120px;overflow:hidden;padding:0 4px;position:relative;white-space:nowrap;z-index:0}.progress-viewer_theme_dark{color:var(--g-color-text-light-primary)}.progress-viewer_theme_dark .progress-viewer__line{opacity:.75}.progress-viewer_status_good{background-color:var(--g-color-base-positive-light)}.progress-viewer_status_good .progress-viewer__line{background-color:var(--ydb-color-status-green)}.progress-viewer_status_warning{background-color:var(--g-color-base-yellow-light)}.progress-viewer_status_warning .progress-viewer__line{background-color:var(--ydb-color-status-yellow)}.progress-viewer_status_danger{background-color:var(--g-color-base-danger-light)}.progress-viewer_status_danger .progress-viewer__line{background-color:var(--ydb-color-status-red)}.progress-viewer__line{height:100%;left:0;position:absolute;top:0}.progress-viewer__text{position:relative;z-index:1}.progress-viewer_size_xs{font-size:var(--g-text-body-2-font-size);height:20px;line-height:var(--g-text-body-2-line-height)}.progress-viewer_size_s{font-size:var(--g-text-body-1-font-size);height:28px;line-height:28px}.progress-viewer_size_m{font-size:var(--g-text-body-2-font-size);height:32px;line-height:32px}.progress-viewer_size_ns{font-size:13px;height:24px;line-height:var(--g-text-subheader-3-line-height)}.progress-viewer_size_n{font-size:var(--g-text-body-1-font-size);height:36px;line-height:36px}.progress-viewer_size_l{font-size:var(--g-text-subheader-3-font-size);height:38px;line-height:38px}.progress-viewer_size_head{font-size:var(--g-text-body-1-font-size);line-height:36px}.tablets-statistic{align-items:center;display:flex;gap:2px}.tablets-statistic__tablet{border:1px solid;border-radius:2px;color:var(--g-color-text-secondary);display:inline-block;font-size:11px;height:20px;line-height:20px;padding:0 4px;text-align:center;text-decoration:none;text-transform:uppercase}.tablets-statistic__tablet_state_green{background-color:var(--g-color-base-positive-light);color:var(--g-color-text-positive)}.tablets-statistic__tablet_state_yellow{background-color:var(--g-color-base-warning-light);color:var(--g-color-text-warning)}.tablets-statistic__tablet_state_blue{background-color:var(--g-color-base-info-light);color:var(--g-color-text-info)}.tablets-statistic__tablet_state_orange{background-color:var(--g-color-base-warning-light);color:var(--g-color-text-warning-heavy)}.tablets-statistic__tablet_state_red{background:var(--g-color-base-danger-light);color:var(--g-color-text-danger)}.tablets-statistic__tablet_state_grey{border:1px solid var(--g-color-line-generic-hover);color:var(--g-color-text-secondary)}.ydb-usage-label_overload{background-color:var(--ydb-color-status-red);color:var(--g-color-text-light-primary)}.ydb-nodes__search{width:238px}.ydb-nodes__show-all-wrapper{left:0;margin-bottom:15px;position:-webkit-sticky;position:sticky}.ydb-nodes__node_unavailable{opacity:.6}.ydb-paginated-table{--paginated-table-cell-vertical-padding:5px;--paginated-table-cell-horizontal-padding:10px;--paginated-table-border-color:var(--g-color-base-generic-hover);--paginated-table-hover-color:var(--g-color-base-float-hover);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);width:100%}.ydb-paginated-table__table{border-collapse:initial;border-spacing:0;max-width:100%;table-layout:fixed;width:-webkit-max-content;width:max-content}.ydb-paginated-table__table th{padding:0}.ydb-paginated-table__row:hover{background:var(--paginated-table-hover-color)}.ydb-paginated-table__row_empty:hover{background-color:initial}.ydb-paginated-table__head{background-color:var(--g-color-base-background);left:0;position:-webkit-sticky;position:sticky;top:0;z-index:1}.ydb-paginated-table__sort-icon-container{color:inherit;display:flex;justify-content:center}.ydb-paginated-table__sort-icon-container_shadow{opacity:.15}.ydb-paginated-table__sort-icon_desc{transform:rotate(180deg)}.ydb-paginated-table__head-cell-wrapper{border-bottom:1px solid var(--paginated-table-border-color);display:flex;overflow-x:hidden;position:relative}.ydb-paginated-table__head-cell{align-items:center;display:flex;flex-direction:row;max-width:100%;padding:var(--paginated-table-cell-vertical-padding) var(--paginated-table-cell-horizontal-padding);width:100%}.ydb-paginated-table__head-cell_align_left{justify-content:left}.ydb-paginated-table__head-cell_align_center{justify-content:center}.ydb-paginated-table__head-cell_align_right{justify-content:right}.ydb-paginated-table__head-cell{cursor:default;font-weight:700;gap:8px}.ydb-paginated-table__head-cell_sortable{cursor:pointer}.ydb-paginated-table__head-cell_sortable.ydb-paginated-table__head-cell_align_right{flex-direction:row-reverse}.ydb-paginated-table__head-cell-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:-webkit-min-content;width:min-content}.ydb-paginated-table__row-cell{border-bottom:1px solid var(--paginated-table-border-color);display:table-cell;max-width:100%;overflow-x:hidden;padding:var(--paginated-table-cell-vertical-padding) var(--paginated-table-cell-horizontal-padding);text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;width:100%}.ydb-paginated-table__row-cell_align_left{text-align:left}.ydb-paginated-table__row-cell_align_center{text-align:center}.ydb-paginated-table__row-cell_align_right{text-align:right}.ydb-paginated-table__resize-handler{background-color:var(--g-color-base-generic);cursor:col-resize;height:100%;position:absolute;right:0;top:0;visibility:hidden;width:6px}.ydb-paginated-table__head-cell-wrapper:hover>.ydb-paginated-table__resize-handler,.ydb-paginated-table__resize-handler_resizing{visibility:visible}.usage-filter{min-width:100px}.usage-filter__option{flex-grow:1}.usage-filter__option-title{font-size:var(--g-text-body-1-font-size);height:var(--g-text-body-1-line-height);line-height:var(--g-text-body-1-line-height)}.usage-filter__option-meta{border-radius:3px;font-size:var(--g-text-caption-2-font-size);line-height:var(--g-text-caption-2-line-height);padding:0 5px;position:relative;z-index:0}.usage-filter__option-bar{background-color:var(--g-color-base-info-medium);border-radius:3px;bottom:0;left:0;position:absolute;top:0;z-index:-1}.stack{--ydb-stack-base-z-index:100;--ydb-stack-offset-x:4px;--ydb-stack-offset-y:4px;--ydb-stack-offset-x-hover:4px;--ydb-stack-offset-y-hover:8px;position:relative}.stack__layer{background:var(--g-color-base-background);transition:transform .1s ease-out}.stack__layer:first-child{position:relative;z-index:var(--ydb-stack-base-z-index)}.stack__layer+.stack__layer{height:100%;left:0;position:absolute;top:0;transform:translate(calc(var(--ydb-stack-level)*var(--ydb-stack-offset-x)),calc(var(--ydb-stack-level)*var(--ydb-stack-offset-y)));width:100%;z-index:calc(var(--ydb-stack-base-z-index) - var(--ydb-stack-level))}.stack:hover .stack__layer:first-child{transform:translate(calc(var(--ydb-stack-offset-x-hover)*-1),calc(var(--ydb-stack-offset-y-hover)*-1))}.stack:hover .stack__layer+.stack__layer{transform:translate(calc(var(--ydb-stack-level)*var(--ydb-stack-offset-x-hover)*2 - var(--ydb-stack-offset-x-hover)),calc(var(--ydb-stack-level)*var(--ydb-stack-offset-y-hover)*2 - var(--ydb-stack-offset-y-hover)))}.storage-disk-progress-bar{background-color:var(--g-color-base-misc-light);border:1px solid var(--g-color-base-misc-heavy);border-radius:4px;color:var(--g-color-text-primary);display:block;height:var(--g-text-body-3-line-height);min-width:50px;position:relative;text-align:center;z-index:0}.storage-disk-progress-bar_compact{border-radius:2px;height:12px;min-width:0}.storage-disk-progress-bar_compact .storage-disk-progress-bar__filled{border-radius:1px}.storage-disk-progress-bar .storage-disk-progress-bar__filled{background-color:var(--g-color-base-misc-medium)}.storage-disk-progress-bar_green{background-color:var(--g-color-base-positive-light);border-color:var(--g-color-base-positive-heavy)}.storage-disk-progress-bar_green .storage-disk-progress-bar__filled{background-color:var(--g-color-base-positive-medium)}.g-root_theme_dark .storage-disk-progress-bar_green .storage-disk-progress-bar__filled{background-color:#7ce37966}.storage-disk-progress-bar_blue{background-color:var(--g-color-base-info-light);border-color:var(--g-color-base-info-heavy)}.storage-disk-progress-bar_blue .storage-disk-progress-bar__filled{background-color:var(--g-color-base-info-medium)}.storage-disk-progress-bar_yellow{background-color:var(--g-color-base-yellow-light);border-color:var(--g-color-base-warning-heavy)}.storage-disk-progress-bar_yellow .storage-disk-progress-bar__filled{background-color:var(--g-color-base-yellow-medium)}.storage-disk-progress-bar_orange{background-color:var(--g-color-base-warning-light);border-color:var(--ydb-color-status-orange)}.storage-disk-progress-bar_orange .storage-disk-progress-bar__filled{background-color:var(--g-color-base-warning-medium)}.storage-disk-progress-bar_red{background-color:var(--g-color-base-danger-light);border-color:var(--g-color-base-danger-heavy)}.storage-disk-progress-bar_red .storage-disk-progress-bar__filled{background-color:var(--g-color-base-danger-medium)}.storage-disk-progress-bar__filled{border-radius:3px 0 0 3px;height:100%;left:0;position:absolute;top:0}.storage-disk-progress-bar_inverted .storage-disk-progress-bar__filled{border-radius:0 3px 3px 0;left:auto;right:0}.storage-disk-progress-bar__filled-title{color:inherit;font-size:var(--g-text-body-1-font-size);line-height:calc(var(--g-text-body-3-line-height) - 2px);position:relative;z-index:2}.pdisk-storage-popup,.vdisk-storage-popup{padding:12px}.vdisk-storage-popup .info-viewer+.info-viewer{border-top:1px solid var(--g-color-line-generic);margin-top:8px;padding-top:8px}.vdisk-storage-popup__donor-label{margin-bottom:8px}.ydb-vdisk-component,.ydb-vdisk-component__content{border-radius:4px}.global-storage-groups__vdisks-column{overflow:visible}.global-storage-groups__vdisks-wrapper{display:flex;gap:10px;justify-content:center;min-width:500px}.global-storage-groups__vdisks-item{flex-grow:1;max-width:200px}.data-table__row:hover .global-storage-groups__vdisks-item .stack__layer{background:var(--ydb-data-table-color-hover)}.global-storage-groups__pool-name-wrapper{width:230px}.global-storage-groups__group-id{font-weight:500}.pdisk-storage{position:relative;width:120px}.pdisk-storage__content{border-radius:4px;display:block;position:relative}.pdisk-storage__vdisks{display:flex;flex-wrap:wrap;gap:2px;margin-bottom:4px}.pdisk-storage__vdisks-item{flex-basis:5px;flex-shrink:0}.data-table__row:hover .pdisk-storage__vdisks-item .stack__layer{background:var(--ydb-data-table-color-hover)}.pdisk-storage__donors-stack{--ydb-stack-offset-x:0px;--ydb-stack-offset-y:-2px;--ydb-stack-offset-x-hover:0px;--ydb-stack-offset-y-hover:-7px}.pdisk-storage__media-type{color:var(--g-color-text-secondary);font-size:var(--g-text-body-1-font-size);line-height:var(--g-text-body-3-line-height);position:absolute;right:4px;top:0}.global-storage-nodes__pdisks-column{overflow:visible}.global-storage-nodes__pdisks-wrapper{align-items:flex-end;display:flex;justify-content:left;width:-webkit-max-content;width:max-content}.global-storage-nodes__pdisks-item{flex-grow:1;margin-right:10px;max-width:200px}.global-storage-nodes__pdisks-item:last-child{margin-right:0}.global-storage-nodes__group-id{font-weight:500}.global-storage-nodes__node_unavailable{opacity:.6}.global-storage__search{width:238px}.global-storage__table .g-tooltip{height:var(--g-text-body-2-line-height)!important}.global-storage .entity-status{justify-content:center}.tenants__format-label{margin-right:15px}.tenants__title{text-align:center}.tenants__tooltip{animation:none!important}.tenants__search{width:238px}.tenants__tablets{padding:0!important}.tenants__tablets .tablets-viewer__grid{grid-gap:20px}.tenants__type{align-items:center;display:flex;flex-direction:row;gap:10px}.tenants__type-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:-webkit-min-content;width:min-content}.tenants__type-button{display:none}.data-table__row:hover .tenants__type-button{display:block}.tenants__monitoring-button{margin-left:4px}.tenants__name{overflow:hidden}.ydb-loader{align-items:center;display:flex;flex:1 1 auto;height:100%;justify-content:center}.ydb-versions-nodes-tree-title__overview{align-items:center;display:flex;justify-content:space-between;width:100%}.ydb-versions-nodes-tree-title__overview-info{align-items:center;display:flex;margin-left:25px}.ydb-versions-nodes-tree-title__overview-info>:not(:first-child){margin-left:30px}.ydb-versions-nodes-tree-title__overview-container{align-items:center;display:flex}.ydb-versions-nodes-tree-title__info-label{color:var(--g-color-text-complementary);font-weight:200}.ydb-versions-nodes-tree-title__info-label_margin_left{margin-left:5px}.ydb-versions-nodes-tree-title__info-label_margin_right{margin-right:5px}.ydb-versions-nodes-tree-title__version-color{border-radius:100%;height:16px;margin-right:10px;width:16px}.ydb-versions-nodes-tree-title__version-progress{align-items:center;display:flex;width:250px}.ydb-versions-nodes-tree-title__version-progress .g-progress{width:200px}.ydb-versions-nodes-tree-title__overview-title{align-items:center;display:flex}.ydb-versions-nodes-tree-title__clipboard-button{color:var(--g-color-text-secondary);margin-left:8px;opacity:0}.g-progress{--_--empty-background-color:var(--g-color-base-generic);--_--empty-text-color:var(--g-color-text-primary);--_--filled-text-color:var(--g-color-text-primary);--_--filled-background-color:var(--g-color-base-neutral-medium);background-color:var(--_--empty-background-color);background-color:var(--g-progress-empty-background-color,var(--_--empty-background-color));border-radius:3px;margin:0 auto;overflow:hidden;position:relative;text-align:center}.g-progress__text{color:var(--_--empty-text-color);color:var(--g-progress-empty-text-color,var(--_--empty-text-color));position:relative}.g-progress__text,.g-progress__text-inner{box-sizing:border-box;font-family:var(--g-text-body-font-family);font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);padding:0 10px}.g-progress__text-inner{color:var(--_--empty-text-color);color:var(--g-progress-filled-text-color,var(--_--empty-text-color));height:100%;position:absolute;transition:transform .6s ease;width:100%}.g-progress__item{background-color:var(--_--filled-background-color);background-color:var(--g-progress-filled-background-color,var(--_--filled-background-color));float:left;height:100%;overflow:hidden;position:relative;transition:transform .6s ease,width .6s ease,background-color .6s ease;width:100%}[dir=rtl] .g-progress__item{float:right}.g-progress__item_theme_default{--_--filled-background-color:var(--g-color-base-neutral-medium)}.g-progress__item_theme_success{--_--filled-background-color:var(--g-color-base-positive-medium)}.g-progress__item_theme_warning{--_--filled-background-color:var(--g-color-base-warning-medium)}.g-progress__item_theme_danger{--_--filled-background-color:var(--g-color-base-danger-medium)}.g-progress__item_theme_info{--_--filled-background-color:var(--g-color-base-info-medium)}.g-progress__item_theme_misc{--_--filled-background-color:var(--g-color-base-misc-medium)}.g-progress__item_loading{animation:g-loading-animation .5s linear infinite;background-clip:padding-box;background-image:repeating-linear-gradient(-45deg,#ffffff4d,#ffffff4d 4px,#0000 0,#0000 8px);background-size:150%}.g-progress__stack{color:var(--g-color-text-light-primary);margin:0 auto;overflow:hidden;position:relative;transition:transform .6s ease;width:100%}.g-progress_size_m,.g-progress_size_m .g-progress__stack{height:20px;line-height:20px}.g-progress_size_m .g-progress__text{height:20px;margin-block-end:-20px}.g-progress_size_s,.g-progress_size_s .g-progress__stack{height:10px;line-height:10px}.g-progress_size_xs,.g-progress_size_xs .g-progress__stack{height:4px;line-height:4px}.g-progress_size_s .g-progress__text,.g-progress_size_s .g-progress__text-inner,.g-progress_size_xs .g-progress__text,.g-progress_size_xs .g-progress__text-inner{display:none}.ydb-versions-grouped-node-tree_first-level{border:1px solid var(--g-color-line-generic);border-radius:10px;margin-bottom:10px;margin-top:10px}.ydb-versions-grouped-node-tree__dt-wrapper{margin-left:24px;margin-right:24px;overflow:auto hidden;position:relative;z-index:0}.ydb-versions-grouped-node-tree__dt-wrapper .data-table__head-row:first-child .data-table__th:first-child,.ydb-versions-grouped-node-tree__dt-wrapper .data-table__td:first-child{background-color:var(--g-color-base-background);border-right:1px solid var(--g-color-line-generic);left:0;position:-webkit-sticky;position:sticky;z-index:2000}.ydb-versions-grouped-node-tree__dt-wrapper .data-table__row:hover .data-table__td:first-child{background-color:var(--ydb-data-table-color-hover)!important}.ydb-versions-grouped-node-tree__dt-wrapper .data-table__head-row:first-child .data-table__th:nth-child(2),.ydb-versions-grouped-node-tree__dt-wrapper .data-table__td:nth-child(2){background-color:var(--g-color-base-background);border-right:1px solid var(--g-color-line-generic);left:80px;position:-webkit-sticky;position:sticky;z-index:2000}.ydb-versions-grouped-node-tree__dt-wrapper .data-table__row:hover .data-table__td:nth-child(2){background-color:var(--ydb-data-table-color-hover)!important}.ydb-versions-grouped-node-tree__dt-wrapper .data-table__head-row:first-child .data-table__th:first-child,.ydb-versions-grouped-node-tree__dt-wrapper .data-table__head-row:first-child .data-table__th:nth-child(0),.ydb-versions-grouped-node-tree__dt-wrapper .data-table__td:first-child,.ydb-versions-grouped-node-tree__dt-wrapper .data-table__td:nth-child(0){border-right:initial;box-shadow:none}.ydb-versions-grouped-node-tree__dt-wrapper .data-table__head-row:first-child .data-table__th:nth-child(2),.ydb-versions-grouped-node-tree__dt-wrapper .data-table__td:nth-child(2){box-shadow:none}.ydb-versions-grouped-node-tree .ydb-tree-view{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.ydb-versions-grouped-node-tree .ydb-tree-view .ydb-tree-view{margin-left:24px}.ydb-versions-grouped-node-tree .tree-view_item{border:0;border-radius:10px;height:40px;margin:0;padding:0 10px!important}.ydb-versions-grouped-node-tree .tree-view_children .tree-view_item{width:100%}.ydb-versions-grouped-node-tree .g-progress__stack{cursor:pointer}.ydb-tree-view{--ydb-tree-view-level:0;font-size:13px;line-height:18px}.ydb-tree-view,.ydb-tree-view *{box-sizing:border-box}.ydb-tree-view__item{align-items:center;border-bottom:1px solid var(--g-color-line-generic-solid);cursor:pointer;display:flex;height:24px;padding-left:calc(24px*var(--ydb-tree-view-level));padding-right:3px}.ydb-tree-view__item:hover{background-color:var(--g-color-base-simple-hover)}.ydb-tree-view__item:hover .ydb-tree-view__actions{display:flex}.ydb-tree-view__item_active{background-color:var(--g-color-base-selection);font-weight:700}.ydb-tree-view__item_active:hover{background-color:var(--g-color-base-selection-hover)}.ydb-tree-view__content{align-items:center;display:flex;flex-grow:1;overflow:hidden}.ydb-tree-view__icon{align-items:center;color:var(--g-color-text-hint);display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.ydb-tree-view__icon svg{display:block}.ydb-tree-view__text{flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ydb-tree-view__actions{align-items:center;display:none;margin-left:6px}.ydb-tree-view__arrow{background:url('data:image/svg+xml;utf8,') no-repeat 50%;border:none;cursor:pointer;flex-shrink:0;height:24px;padding:0;width:24px}.g-root_theme_dark .ydb-tree-view__arrow{background:url('data:image/svg+xml;utf8,') no-repeat 50%}.ydb-tree-view__arrow:focus-visible{outline:2px solid var(--g-color-line-focus)}.ydb-tree-view__arrow:not(.ydb-tree-view__arrow_collapsed){transform:rotate(90deg)}.ydb-tree-view__arrow_hidden{visibility:hidden}.ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:24px}.ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:48px}.ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:72px}.ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:96px}.ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:120px}.ydb-versions__controls{align-items:center;display:flex;padding:0 0 20px}.ydb-versions__controls .ydb-versions__label{font-weight:500;margin-right:10px}.ydb-versions__controls .ydb-versions__checkbox{margin:0}.ydb-versions__controls>*{margin-right:25px}.g-checkbox__indicator{cursor:inherit;display:inline-block;position:relative}.g-checkbox__indicator:before{background-color:initial;border:1px solid var(--g-color-line-generic-accent);border-radius:4px;content:"";inset:0;position:absolute;transition:background .1s linear}.g-checkbox__indicator:after{content:" ";visibility:hidden}.g-checkbox__icon{align-items:center;color:#0000;display:flex;inset:0;justify-content:center;pointer-events:none;position:absolute;transform:translateY(-5px);transition:color .1s,transform .2s;visibility:hidden}.g-checkbox__control{border:none;cursor:inherit;margin:0;opacity:0;outline:none;padding:0}.g-checkbox__control,.g-checkbox__outline{background:none;height:100%;inset-block-start:0;inset-inline-start:0;position:absolute;width:100%}.g-checkbox__outline{border-radius:4px;pointer-events:none}.g-checkbox__control:focus-visible+.g-checkbox__outline{outline:2px solid var(--g-color-line-focus)}.g-checkbox_size_m .g-checkbox__icon-svg_type_tick{height:10px;width:8px}.g-checkbox_size_m .g-checkbox__icon-svg_type_dash{height:12px;width:12px}.g-checkbox_size_m .g-checkbox__indicator{height:14px;width:14px}.g-checkbox_size_l .g-checkbox__icon-svg_type_tick{height:9px;width:11px}.g-checkbox_size_l .g-checkbox__icon-svg_type_dash{height:15px;width:15px}.g-checkbox_size_l .g-checkbox__indicator{height:17px;width:17px}.g-checkbox:hover .g-checkbox__indicator:before{border-color:var(--g-color-line-generic-accent-hover)}.g-checkbox_checked .g-checkbox__indicator:before,.g-checkbox_indeterminate .g-checkbox__indicator:before{background-color:var(--g-color-base-brand);border:#0000}.g-checkbox_checked .g-checkbox__icon,.g-checkbox_indeterminate .g-checkbox__icon{color:var(--g-color-text-brand-contrast);transform:translateX(0);visibility:visible}.g-checkbox_disabled .g-checkbox__indicator:before{background-color:var(--g-color-base-generic-accent-disabled);border:#0000}.g-checkbox_disabled.g-checkbox_checked .g-checkbox__indicator:before,.g-checkbox_disabled.g-checkbox_indeterminate .g-checkbox__indicator:before{background-color:var(--g-color-base-brand);opacity:.5}.ydb-info-viewer-skeleton{display:flex;flex-direction:column;gap:16px}.ydb-info-viewer-skeleton__row{align-items:flex-start;display:flex}.ydb-info-viewer-skeleton__row,.ydb-info-viewer-skeleton__row .g-skeleton{min-height:var(--g-text-body-2-font-size)}.ydb-info-viewer-skeleton__label{align-items:baseline;display:flex;flex:0 1 auto;width:200px}.ydb-info-viewer-skeleton__label__text{width:100px}.ydb-info-viewer-skeleton__label__dots{border-bottom:1px dotted var(--g-color-text-secondary);margin:0 2px;width:100px}.ydb-info-viewer-skeleton__value{max-width:20%;min-width:200px}.tablet{border-color:var(--g-color-base-generic-medium-hover);color:var(--g-color-text-complementary);cursor:pointer}.tablet__wrapper{margin-bottom:2px;margin-right:2px}.tablet__wrapper:last-child{margin-right:0}.tablet__popup-content{padding:10px}.tablet_status_grey{background-color:var(--ydb-color-status-grey)}.tablet_status_yellow{background-color:var(--ydb-color-status-yellow)}.tablet_status_orange{background-color:var(--ydb-color-status-orange)}.tablet_status_red{background-color:var(--ydb-color-status-red)}.tablet_status_green{background-color:var(--ydb-color-status-green)}.tablet_status_blue{background-color:var(--ydb-color-status-blue)}.tablet_status_black{background-color:var(--ydb-color-status-black)}.tag{background:var(--g-color-base-generic);border-radius:3px;color:var(--g-color-text-primary);font-size:12px;margin-right:5px;padding:2px 5px;text-transform:uppercase}.tag:last-child{margin-right:0}.tag_type_blue{background-color:var(--g-color-celestial-thunder)}.tags{align-items:center;display:flex;flex-wrap:wrap}.ydb-cluster-versions-bar{display:flex;flex-direction:column;width:600px}.ydb-cluster-versions-bar .g-progress{width:100%}.ydb-cluster-versions-bar__versions{display:flex;flex-flow:row wrap;margin-top:6px}.ydb-cluster-versions-bar__version-title{margin-left:3px;white-space:nowrap}.ydb-cluster-versions-bar .g-progress__stack{cursor:pointer}.cluster-info{padding-top:20px}.cluster-info__skeleton{margin-top:5px}.cluster-info__error{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.cluster-info__system-tablets{align-items:center;display:flex;flex-wrap:wrap}.cluster-info__system-tablets .tablet{margin-top:2px}.cluster-info__metrics{margin:0 -15px;padding:0 15px!important}.cluster-info__metrics .info-viewer__items{grid-template-columns:repeat(2,minmax(auto,250px))}.cluster-info__metrics .info-viewer__label{width:50px}.cluster-info__metrics .info-viewer__value{width:130px}.cluster-info__tablets{margin-left:15px;padding:0!important}.cluster-info__links{display:flex;flex-flow:row wrap;gap:12px}.cluster-info__storage-groups-stats{display:flex;flex-direction:column;gap:11px}.cluster-info__groups-stats-bar{cursor:pointer}.cluster-info__groups-stats-popup-content{padding:12px}.cluster-info__clipboard-button{align-items:center;display:flex;margin-left:5px}.link{color:var(--g-color-text-link);text-decoration:none}.link_external{margin-right:10px}.link:hover{color:var(--g-color-text-link-hover)}.cluster{display:flex;flex-direction:column;flex-grow:1;flex:1 1 auto;height:100%;overflow:auto;padding:0 20px}.cluster__header{left:0;padding:20px 0;position:-webkit-sticky;position:sticky}.cluster__title{font-size:var(--g-text-header-1-font-size);font-weight:var(--g-text-header-font-weight);line-height:var(--g-text-header-1-line-height)}.cluster__title-skeleton{height:var(--g-text-header-1-line-height);min-width:200px;width:20%}.cluster__tabs{--g-tabs-border-width:0;align-items:center;box-shadow:inset 0 -1px 0 0 var(--g-color-line-generic);display:flex;justify-content:space-between;left:0;position:-webkit-sticky;position:sticky} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/9818.3ebe673f.chunk.css b/ydb/core/viewer/monitoring/static/css/9818.3ebe673f.chunk.css new file mode 100644 index 000000000000..9906841f5b08 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/css/9818.3ebe673f.chunk.css @@ -0,0 +1 @@ +.auto-refresh-control{align-items:center;display:flex;gap:var(--g-spacing-1)}.ydb-loader{align-items:center;display:flex;flex:1 1 auto;height:100%;justify-content:center}.ydb-resizeable-data-table{display:flex;padding-right:20px;width:-webkit-max-content;width:max-content}.ydb-search{min-width:100px}.progress-viewer{align-items:center;background:var(--g-color-base-generic);border-radius:2px;color:var(--g-color-text-complementary);display:flex;font-size:var(--g-text-body-2-font-size);height:23px;justify-content:center;min-width:120px;overflow:hidden;padding:0 4px;position:relative;white-space:nowrap;z-index:0}.progress-viewer_theme_dark{color:var(--g-color-text-light-primary)}.progress-viewer_theme_dark .progress-viewer__line{opacity:.75}.progress-viewer_status_good{background-color:var(--g-color-base-positive-light)}.progress-viewer_status_good .progress-viewer__line{background-color:var(--ydb-color-status-green)}.progress-viewer_status_warning{background-color:var(--g-color-base-yellow-light)}.progress-viewer_status_warning .progress-viewer__line{background-color:var(--ydb-color-status-yellow)}.progress-viewer_status_danger{background-color:var(--g-color-base-danger-light)}.progress-viewer_status_danger .progress-viewer__line{background-color:var(--ydb-color-status-red)}.progress-viewer__line{height:100%;left:0;position:absolute;top:0}.progress-viewer__text{position:relative;z-index:1}.progress-viewer_size_xs{font-size:var(--g-text-body-2-font-size);height:20px;line-height:var(--g-text-body-2-line-height)}.progress-viewer_size_s{font-size:var(--g-text-body-1-font-size);height:28px;line-height:28px}.progress-viewer_size_m{font-size:var(--g-text-body-2-font-size);height:32px;line-height:32px}.progress-viewer_size_ns{font-size:13px;height:24px;line-height:var(--g-text-subheader-3-line-height)}.progress-viewer_size_n{font-size:var(--g-text-body-1-font-size);height:36px;line-height:36px}.progress-viewer_size_l{font-size:var(--g-text-subheader-3-font-size);height:38px;line-height:38px}.progress-viewer_size_head{font-size:var(--g-text-body-1-font-size);line-height:36px}.kv-user{color:var(--g-color-text-primary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.kv-user,.kv-user__name{display:inline-block}.kv-user__name:first-letter{color:var(--g-color-text-danger)}.gc-help-popover__button{background:none;border:none;color:inherit;color:var(--g-color-text-hint);cursor:pointer;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);outline:none;padding:0}.gc-help-popover__button:focus-visible{border-radius:50%;outline:2px solid var(--g-color-line-focus)}.g-progress{--_--empty-background-color:var(--g-color-base-generic);--_--empty-text-color:var(--g-color-text-primary);--_--filled-text-color:var(--g-color-text-primary);--_--filled-background-color:var(--g-color-base-neutral-medium);background-color:var(--_--empty-background-color);background-color:var(--g-progress-empty-background-color,var(--_--empty-background-color));border-radius:3px;margin:0 auto;overflow:hidden;position:relative;text-align:center}.g-progress__text{color:var(--_--empty-text-color);color:var(--g-progress-empty-text-color,var(--_--empty-text-color));position:relative}.g-progress__text,.g-progress__text-inner{box-sizing:border-box;font-family:var(--g-text-body-font-family);font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);padding:0 10px}.g-progress__text-inner{color:var(--_--empty-text-color);color:var(--g-progress-filled-text-color,var(--_--empty-text-color));height:100%;position:absolute;transition:transform .6s ease;width:100%}.g-progress__item{background-color:var(--_--filled-background-color);background-color:var(--g-progress-filled-background-color,var(--_--filled-background-color));float:left;height:100%;overflow:hidden;position:relative;transition:transform .6s ease,width .6s ease,background-color .6s ease;width:100%}[dir=rtl] .g-progress__item{float:right}.g-progress__item_theme_default{--_--filled-background-color:var(--g-color-base-neutral-medium)}.g-progress__item_theme_success{--_--filled-background-color:var(--g-color-base-positive-medium)}.g-progress__item_theme_warning{--_--filled-background-color:var(--g-color-base-warning-medium)}.g-progress__item_theme_danger{--_--filled-background-color:var(--g-color-base-danger-medium)}.g-progress__item_theme_info{--_--filled-background-color:var(--g-color-base-info-medium)}.g-progress__item_theme_misc{--_--filled-background-color:var(--g-color-base-misc-medium)}.g-progress__item_loading{animation:g-loading-animation .5s linear infinite;background-clip:padding-box;background-image:repeating-linear-gradient(-45deg,#ffffff4d,#ffffff4d 4px,#0000 0,#0000 8px);background-size:150%}.g-progress__stack{color:var(--g-color-text-light-primary);margin:0 auto;overflow:hidden;position:relative;transition:transform .6s ease;width:100%}.g-progress_size_m,.g-progress_size_m .g-progress__stack{height:20px;line-height:20px}.g-progress_size_m .g-progress__text{height:20px;margin-block-end:-20px}.g-progress_size_s,.g-progress_size_s .g-progress__stack{height:10px;line-height:10px}.g-progress_size_xs,.g-progress_size_xs .g-progress__stack{height:4px;line-height:4px}.g-progress_size_s .g-progress__text,.g-progress_size_s .g-progress__text-inner,.g-progress_size_xs .g-progress__text,.g-progress_size_xs .g-progress__text-inner{display:none}.link{color:var(--g-color-text-link);text-decoration:none}.link_external{margin-right:10px}.link:hover{color:var(--g-color-text-link-hover)}.clusters{display:flex;flex:1 1 auto;flex-direction:column;font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);overflow:auto;padding-top:15px}.clusters__cluster{align-items:center;display:flex}.clusters__cluster-status{border-radius:3px;height:18px;margin-right:8px;width:18px}.clusters__cluster-status span{align-items:center;display:flex}.clusters__cluster-status_type_green{background-color:var(--ydb-color-status-green)}.clusters__cluster-status_type_yellow{background-color:var(--ydb-color-status-yellow)}.clusters__cluster-status_type_blue{background-color:var(--ydb-color-status-blue)}.clusters__cluster-status_type_red{background:var(--ydb-color-status-red)}.clusters__cluster-status_type_grey{background:var(--ydb-color-status-grey)}.clusters__cluster-status_type_orange{background:var(--ydb-color-status-orange)}.clusters__cluster-name{color:var(--g-color-text-link);text-decoration:none;white-space:normal}.clusters__cluster-versions{text-decoration:none}.clusters__cluster-version{overflow:hidden;text-overflow:ellipsis}.clusters__cluster-dc{white-space:normal}.clusters__controls{display:flex;margin-bottom:20px}.clusters__control{margin-right:15px;width:200px}.clusters__control_wide{width:300px}.clusters__empty-cell{color:var(--g-color-text-secondary)}.clusters__tooltip-content{word-break:break-all}.clusters .g-progress__item{transition:none}.clusters__aggregation,.clusters__controls{margin-left:15px}.clusters__aggregation{align-items:center;background:var(--g-color-base-generic-ultralight);border:1px solid var(--g-color-line-generic);border-radius:10px;display:flex;height:46px;margin-bottom:20px;padding:10px 20px;width:-webkit-max-content;width:max-content}.clusters__aggregation-value-container{align-items:center;display:flex;font-size:var(--g-text-subheader-3-font-size);line-height:var(--g-text-subheader-3-line-height);max-width:200px}.clusters__aggregation-value-container:not(:last-child){margin-right:30px}.clusters__aggregation-label{color:var(--g-color-text-complementary);font-weight:200;margin-right:8px}.clusters__text{color:var(--g-color-text-primary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.clusters__text:first-letter{color:var(--g-color-text-danger)}.clusters__description{max-width:200px;white-space:pre-wrap}.clusters__table-wrapper{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto;padding-left:5px}.clusters__table-content{height:100%;overflow:auto}.clusters__table .data-table__head-row:first-child .data-table__th:first-child,.clusters__table .data-table__td:first-child{background-color:var(--g-color-base-background);border-right:1px solid var(--g-color-line-generic);left:0;position:-webkit-sticky;position:sticky;z-index:2000}.clusters__table .data-table__row:hover .data-table__td:first-child{background-color:var(--ydb-data-table-color-hover)!important}.clusters__table .data-table__head-row:first-child .data-table__th:nth-child(0),.clusters__table .data-table__td:nth-child(0){border-right:initial;box-shadow:none}.clusters__table .data-table__head-row:first-child .data-table__th:first-child,.clusters__table .data-table__td:first-child{box-shadow:none}.clusters__balancer-cell{align-items:center;display:flex;flex-direction:row}.clusters__balancer-text{display:inline-block;margin-right:5px;max-width:92%;overflow:hidden;overflow-wrap:break-word!important;text-overflow:ellipsis}.clusters__balancer-icon{align-items:center;display:flex}.clusters__error{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin-left:15px}.g-table-column-setup__status{color:var(--g-color-text-secondary);margin-inline-start:5px}.g-inner-table-column-setup{display:inline-block}.g-inner-table-column-setup__controls{margin:var(--g-spacing-1) var(--g-spacing-1) 0}.g-inner-table-column-setup__filter-input{border-block-end:1px solid var(--g-color-line-generic);box-sizing:border-box;padding:0 var(--g-spacing-2) var(--g-spacing-1)}.g-inner-table-column-setup__empty-placeholder{padding:var(--g-spacing-2)}.g-list-container-view{box-sizing:border-box;outline:none;width:100%}.g-list-container-view_fixed-height{height:300px;height:var(--g-list-container-height,300px)}.g-list-container-view:not(.g-list-container-view_fixed-height){overflow:auto}.g-list-item-view{flex-shrink:0}.g-list-item-view__main-content{grid-gap:2px;grid-gap:var(--g-spacing-half,2px);display:grid;gap:2px;gap:var(--g-spacing-half,2px);width:100%}.g-list-item-view:hover.g-list-item-view_activeOnHover,.g-list-item-view_active{background:var(--g-color-base-simple-hover)}.g-list-item-view_clickable{cursor:pointer}.g-list-item-view_selected,.g-list-item-view_selected.g-list-item-view_active,.g-list-item-view_selected:hover.g-list-item-view_activeOnHover{background:var(--g-color-base-selection)}.g-list-item-view_dragging,.g-list-item-view_dragging.g-list-item-view_active,.g-list-item-view_dragging.g-list-item-view_selected{background:var(--g-color-base-simple-hover-solid);z-index:100001!important}.g-list-item-view_radius_s{border-radius:3px;border-radius:var(--g-list-item-border-radius,3px)}.g-list-item-view_radius_m{border-radius:5px;border-radius:var(--g-list-item-border-radius,5px)}.g-list-item-view_radius_l{border-radius:6px;border-radius:var(--g-list-item-border-radius,6px)}.g-list-item-view_radius_xl{border-radius:8px;border-radius:var(--g-list-item-border-radius,8px)}.g-list-item-view__icon,.g-list-item-view__slot{flex-shrink:0}.g-tree-select{display:inline-block;max-width:100%}.g-tree-select_width_max{width:100%}.g-tree-select__popup{overflow:hidden;padding:4px 0}.g-tree-select__popup_size_s{border-radius:5px;border-radius:var(--g-list-container-border-radius,5px)}.g-tree-select__popup_size_m{border-radius:6px;border-radius:var(--g-list-container-border-radius,6px)}.g-tree-select__popup_size_l{border-radius:8px;border-radius:var(--g-list-container-border-radius,8px)}.g-tree-select__popup_size_xl{border-radius:10px;border-radius:var(--g-list-container-border-radius,10px)}.g-tree-select__list{padding:0 4px}.g-list-recursive-renderer{margin:0;padding:0} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/main.c8ce3bba.css b/ydb/core/viewer/monitoring/static/css/main.c8ce3bba.css deleted file mode 100644 index 10e2ef01173a..000000000000 --- a/ydb/core/viewer/monitoring/static/css/main.c8ce3bba.css +++ /dev/null @@ -1,9 +0,0 @@ -@charset "UTF-8";@import url(https://fonts.googleapis.com/css2?family=Rubik&display=swap);.g-root{--g-font-family-sans:"Inter","Helvetica Neue","Helvetica","Arial",sans-serif;--g-font-family-monospace:"Menlo","Monaco","Consolas","Ubuntu Mono","Liberation Mono","DejaVu Sans Mono","Courier New","Courier",monospace;--g-text-body-font-family:var(--g-font-family-sans);--g-text-caption-font-family:var(--g-font-family-sans);--g-text-header-font-family:var(--g-font-family-sans);--g-text-subheader-font-family:var(--g-font-family-sans);--g-text-display-font-family:var(--g-font-family-sans);--g-text-code-font-family:var(--g-font-family-monospace);--g-text-body-font-weight:400;--g-text-caption-font-weight:400;--g-text-header-font-weight:600;--g-text-subheader-font-weight:600;--g-text-display-font-weight:600;--g-text-code-font-weight:400;--g-text-accent-font-weight:600;--g-text-body-1-font-size:13px;--g-text-body-1-line-height:18px;--g-text-body-2-font-size:15px;--g-text-body-2-line-height:20px;--g-text-body-3-font-size:17px;--g-text-body-3-line-height:24px;--g-text-body-short-font-size:13px;--g-text-body-short-line-height:16px;--g-text-caption-1-font-size:9px;--g-text-caption-1-line-height:12px;--g-text-caption-2-font-size:11px;--g-text-caption-2-line-height:16px;--g-text-header-1-font-size:20px;--g-text-header-1-line-height:24px;--g-text-header-2-font-size:24px;--g-text-header-2-line-height:28px;--g-text-subheader-1-font-size:13px;--g-text-subheader-1-line-height:18px;--g-text-subheader-2-font-size:15px;--g-text-subheader-2-line-height:20px;--g-text-subheader-3-font-size:17px;--g-text-subheader-3-line-height:24px;--g-text-display-1-font-size:28px;--g-text-display-1-line-height:36px;--g-text-display-2-font-size:32px;--g-text-display-2-line-height:40px;--g-text-display-3-font-size:40px;--g-text-display-3-line-height:48px;--g-text-display-4-font-size:48px;--g-text-display-4-line-height:52px;--g-text-code-1-font-size:12px;--g-text-code-1-line-height:18px;--g-text-code-2-font-size:14px;--g-text-code-2-line-height:20px;--g-text-code-3-font-size:16px;--g-text-code-3-line-height:24px;--g-text-code-inline-1-font-size:12px;--g-text-code-inline-1-line-height:14px;--g-text-code-inline-2-font-size:14px;--g-text-code-inline-2-line-height:16px;--g-text-code-inline-3-font-size:16px;--g-text-code-inline-3-line-height:20px;--g-spacing-base:4px;--g-spacing-0:calc(var(--g-spacing-base)*0);--g-spacing-half:calc(var(--g-spacing-base)*0.5);--g-spacing-1:var(--g-spacing-base);--g-spacing-2:calc(var(--g-spacing-base)*2);--g-spacing-3:calc(var(--g-spacing-base)*3);--g-spacing-4:calc(var(--g-spacing-base)*4);--g-spacing-5:calc(var(--g-spacing-base)*5);--g-spacing-6:calc(var(--g-spacing-base)*6);--g-spacing-7:calc(var(--g-spacing-base)*7);--g-spacing-8:calc(var(--g-spacing-base)*8);--g-spacing-9:calc(var(--g-spacing-base)*9);--g-spacing-10:calc(var(--g-spacing-base)*10);--g-scrollbar-width:12px;--g-border-radius-xs:3px;--g-border-radius-s:5px;--g-border-radius-m:6px;--g-border-radius-l:8px;--g-border-radius-xl:10px;--g-focus-border-radius:2px;background:var(--g-color-base-background);color:var(--g-color-text-primary);font-family:var(--g-font-family-sans);font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-root[dir=ltr],body.g-root{--g-flow-direction:1;--g-flow-is-ltr:1;--g-flow-is-rtl:0}.g-root[dir=rtl]{--g-flow-direction:-1;--g-flow-is-ltr:0;--g-flow-is-rtl:1}.g-root_theme_light{--g-color-private-blue-50:#3697f11a;--g-color-private-blue-100:#3697f126;--g-color-private-blue-150:#3697f133;--g-color-private-blue-200:#3697f14d;--g-color-private-blue-250:#3697f166;--g-color-private-blue-300:#3697f180;--g-color-private-blue-350:#3697f199;--g-color-private-blue-400:#3697f1b3;--g-color-private-blue-450:#3697f1cc;--g-color-private-blue-500:#3697f1e6;--g-color-private-blue-50-solid:#ebf5fe;--g-color-private-blue-100-solid:#e1effd;--g-color-private-blue-150-solid:#d7eafc;--g-color-private-blue-200-solid:#c3e0fb;--g-color-private-blue-250-solid:#afd5f9;--g-color-private-blue-300-solid:#9bcbf8;--g-color-private-blue-350-solid:#86c1f7;--g-color-private-blue-400-solid:#72b6f5;--g-color-private-blue-450-solid:#5eacf4;--g-color-private-blue-500-solid:#4aa1f2;--g-color-private-blue-550-solid:#3697f1;--g-color-private-blue-600-solid:#348bdc;--g-color-private-blue-650-solid:#327fc8;--g-color-private-blue-700-solid:#3072b3;--g-color-private-blue-750-solid:#2e669e;--g-color-private-blue-800-solid:#2c5a8a;--g-color-private-blue-850-solid:#2a4e75;--g-color-private-blue-900-solid:#284260;--g-color-private-blue-950-solid:#26354b;--g-color-private-blue-1000-solid:#252f41;--g-color-private-green-50:#32ba761a;--g-color-private-green-100:#32ba7626;--g-color-private-green-150:#32ba7633;--g-color-private-green-200:#32ba764d;--g-color-private-green-250:#32ba7666;--g-color-private-green-300:#32ba7680;--g-color-private-green-350:#32ba7699;--g-color-private-green-400:#32ba76b3;--g-color-private-green-450:#32ba76cc;--g-color-private-green-500:#32ba76e6;--g-color-private-green-50-solid:#ebf8f1;--g-color-private-green-100-solid:#e0f5ea;--g-color-private-green-150-solid:#d6f1e4;--g-color-private-green-200-solid:#c2ead6;--g-color-private-green-250-solid:#ade3c8;--g-color-private-green-300-solid:#9db;--g-color-private-green-350-solid:#84d6ad;--g-color-private-green-400-solid:#70cf9f;--g-color-private-green-450-solid:#5bc891;--g-color-private-green-500-solid:#47c184;--g-color-private-green-550-solid:#32ba76;--g-color-private-green-600-solid:#30aa6e;--g-color-private-green-650-solid:#2f9b65;--g-color-private-green-700-solid:#2d8b5d;--g-color-private-green-750-solid:#2c7b54;--g-color-private-green-800-solid:#2a6c4c;--g-color-private-green-850-solid:#285c44;--g-color-private-green-900-solid:#274c3b;--g-color-private-green-950-solid:#253c33;--g-color-private-green-1000-solid:#24352f;--g-color-private-yellow-50:#ffbe5c1a;--g-color-private-yellow-100:#ffbe5c26;--g-color-private-yellow-150:#ffbe5c33;--g-color-private-yellow-200:#ffbe5c4d;--g-color-private-yellow-250:#ffbe5c66;--g-color-private-yellow-300:#ffbe5c80;--g-color-private-yellow-350:#ffbe5c99;--g-color-private-yellow-400:#ffbe5cb3;--g-color-private-yellow-450:#ffbe5ccc;--g-color-private-yellow-500:#ffbe5ce6;--g-color-private-yellow-50-solid:#fff9ef;--g-color-private-yellow-100-solid:#fff5e7;--g-color-private-yellow-150-solid:#fff2de;--g-color-private-yellow-200-solid:#ffecce;--g-color-private-yellow-250-solid:#ffe5be;--g-color-private-yellow-300-solid:#ffdfae;--g-color-private-yellow-350-solid:#ffd89d;--g-color-private-yellow-400-solid:#ffd28d;--g-color-private-yellow-450-solid:#ffcb7d;--g-color-private-yellow-500-solid:#ffc56c;--g-color-private-yellow-550-solid:#ffbe5c;--g-color-private-yellow-600-solid:#e9ae56;--g-color-private-yellow-650-solid:#d39e50;--g-color-private-yellow-700-solid:#bd8e4b;--g-color-private-yellow-750-solid:#a77e45;--g-color-private-yellow-800-solid:#916e3f;--g-color-private-yellow-850-solid:#7a5d39;--g-color-private-yellow-900-solid:#644d33;--g-color-private-yellow-950-solid:#4e3d2e;--g-color-private-yellow-1000-solid:#43352b;--g-color-private-orange-400-solid:#ffa04d;--g-color-private-orange-500-solid:#ff8519;--g-color-private-orange-600-solid:#e96e03;--g-color-private-orange-650-solid:#d36507;--g-color-private-orange-700-solid:#bd5c0a;--g-color-private-orange-750-solid:#a7530e;--g-color-private-orange-800-solid:#914a11;--g-color-private-orange-850-solid:#7a4114;--g-color-private-orange-900-solid:#643818;--g-color-private-orange-950-solid:#4e2f1b;--g-color-private-orange-1000-solid:#432b1d;--g-color-private-red-50:#ff003d1a;--g-color-private-red-100:#ff003d26;--g-color-private-red-150:#ff003d33;--g-color-private-red-200:#ff003d4d;--g-color-private-red-250:#ff003d66;--g-color-private-red-300:#ff003d80;--g-color-private-red-350:#ff003d99;--g-color-private-red-400:#ff003db3;--g-color-private-red-450:#ff003dcc;--g-color-private-red-500:#ff003de6;--g-color-private-red-50-solid:#ffe6ec;--g-color-private-red-100-solid:#ffd9e2;--g-color-private-red-150-solid:#ffccd8;--g-color-private-red-200-solid:#ffb3c5;--g-color-private-red-250-solid:#ff99b1;--g-color-private-red-300-solid:#ff809e;--g-color-private-red-350-solid:#ff668b;--g-color-private-red-400-solid:#ff4d77;--g-color-private-red-450-solid:#ff3364;--g-color-private-red-500-solid:#ff1950;--g-color-private-red-550-solid:#ff003d;--g-color-private-red-600-solid:#e9033a;--g-color-private-red-650-solid:#d30638;--g-color-private-red-700-solid:#bd0935;--g-color-private-red-750-solid:#a70c32;--g-color-private-red-800-solid:#910f30;--g-color-private-red-850-solid:#7a112d;--g-color-private-red-900-solid:#64142a;--g-color-private-red-950-solid:#4e1727;--g-color-private-red-1000-solid:#431926;--g-color-private-purple-600-solid:#844dbb;--g-color-private-purple-650-solid:#7947aa;--g-color-private-purple-700-solid:#6e4299;--g-color-private-purple-750-solid:#633d88;--g-color-private-purple-800-solid:#593877;--g-color-private-purple-850-solid:#4e3266;--g-color-private-purple-900-solid:#432d55;--g-color-private-purple-950-solid:#382844;--g-color-private-purple-1000-solid:#32253c;--g-color-private-cool-grey-300-solid:#b5c2cc;--g-color-private-cool-grey-600-solid:#647a8d;--g-color-private-cool-grey-650-solid:#5c6f81;--g-color-private-cool-grey-700-solid:#556575;--g-color-private-cool-grey-750-solid:#4e5b69;--g-color-private-cool-grey-800-solid:#47515e;--g-color-private-cool-grey-850-solid:#3f4652;--g-color-private-cool-grey-900-solid:#383c46;--g-color-private-cool-grey-950-solid:#31323a;--g-color-private-cool-grey-1000-solid:#2d2c34;--g-color-text-primary:var(--g-color-text-dark-primary);--g-color-text-complementary:var(--g-color-text-dark-complementary);--g-color-text-secondary:var(--g-color-text-dark-secondary);--g-color-text-hint:var(--g-color-text-dark-hint);--g-color-text-info:var(--g-color-private-blue-600-solid);--g-color-text-positive:var(--g-color-private-green-600-solid);--g-color-text-warning:var(--g-color-private-yellow-700-solid);--g-color-text-danger:var(--g-color-private-red-600-solid);--g-color-text-utility:var(--g-color-private-purple-600-solid);--g-color-text-misc:var(--g-color-private-cool-grey-600-solid);--g-color-text-info-heavy:var(--g-color-private-blue-700-solid);--g-color-text-positive-heavy:var(--g-color-private-green-700-solid);--g-color-text-warning-heavy:var(--g-color-private-orange-700-solid);--g-color-text-danger-heavy:var(--g-color-private-red-700-solid);--g-color-text-utility-heavy:var(--g-color-private-purple-700-solid);--g-color-text-misc-heavy:var(--g-color-private-cool-grey-700-solid);--g-color-text-brand:var(--g-color-private-yellow-700-solid);--g-color-text-brand-heavy:var(--g-color-private-orange-700-solid);--g-color-text-brand-contrast:var(--g-color-text-dark-primary);--g-color-text-link:var(--g-color-private-yellow-650-solid);--g-color-text-link-hover:var(--g-color-private-orange-650-solid);--g-color-text-link-visited:var(--g-color-private-purple-550-solid);--g-color-text-link-visited-hover:var(--g-color-private-purple-800-solid);--g-color-text-dark-primary:var(--g-color-private-black-850);--g-color-text-dark-complementary:var(--g-color-private-black-700);--g-color-text-dark-secondary:var(--g-color-private-black-500);--g-color-text-dark-hint:var(--g-color-private-black-300);--g-color-text-light-primary:var(--g-color-private-white-1000-solid);--g-color-text-light-complementary:var(--g-color-private-white-850);--g-color-text-light-secondary:var(--g-color-private-white-700);--g-color-text-light-hint:var(--g-color-private-white-500);--g-color-text-inverted-primary:var(--g-color-text-light-primary);--g-color-text-inverted-complementary:var(--g-color-text-light-complementary);--g-color-text-inverted-secondary:var(--g-color-text-light-secondary);--g-color-text-inverted-hint:var(--g-color-text-light-hint);--g-color-base-background:var(--g-color-private-white-1000-solid);--g-color-base-generic:var(--g-color-private-black-50);--g-color-base-generic-hover:var(--g-color-private-black-150);--g-color-base-generic-medium:var(--g-color-private-black-150);--g-color-base-generic-medium-hover:var(--g-color-private-black-250);--g-color-base-generic-accent:var(--g-color-private-black-150);--g-color-base-generic-accent-disabled:var(--g-color-private-black-70);--g-color-base-generic-ultralight:var(--g-color-private-black-20-solid);--g-color-base-simple-hover:var(--g-color-private-black-50);--g-color-base-simple-hover-solid:var(--g-color-private-black-50-solid);--g-color-base-brand:var(--g-color-private-yellow-550-solid);--g-color-base-brand-hover:var(--g-color-private-yellow-600-solid);--g-color-base-selection:var(--g-color-private-yellow-200);--g-color-base-selection-hover:var(--g-color-private-yellow-300);--g-color-base-info-light:var(--g-color-private-blue-100);--g-color-base-info-light-hover:var(--g-color-private-blue-200);--g-color-base-info-medium:var(--g-color-private-blue-200);--g-color-base-info-medium-hover:var(--g-color-private-blue-300);--g-color-base-info-heavy:var(--g-color-private-blue-600-solid);--g-color-base-info-heavy-hover:var(--g-color-private-blue-700-solid);--g-color-base-positive-light:var(--g-color-private-green-100);--g-color-base-positive-light-hover:var(--g-color-private-green-200);--g-color-base-positive-medium:var(--g-color-private-green-200);--g-color-base-positive-medium-hover:var(--g-color-private-green-300);--g-color-base-positive-heavy:var(--g-color-private-green-600-solid);--g-color-base-positive-heavy-hover:var(--g-color-private-green-700-solid);--g-color-base-warning-light:var(--g-color-private-yellow-200);--g-color-base-warning-light-hover:var(--g-color-private-yellow-300);--g-color-base-warning-medium:var(--g-color-private-yellow-400);--g-color-base-warning-medium-hover:var(--g-color-private-yellow-500);--g-color-base-warning-heavy:var(--g-color-private-yellow-550-solid);--g-color-base-warning-heavy-hover:var(--g-color-private-yellow-650-solid);--g-color-base-danger-light:var(--g-color-private-red-100);--g-color-base-danger-light-hover:var(--g-color-private-red-200);--g-color-base-danger-medium:var(--g-color-private-red-200);--g-color-base-danger-medium-hover:var(--g-color-private-red-300);--g-color-base-danger-heavy:var(--g-color-private-red-600-solid);--g-color-base-danger-heavy-hover:var(--g-color-private-red-700-solid);--g-color-base-utility-light:var(--g-color-private-purple-100);--g-color-base-utility-light-hover:var(--g-color-private-purple-200);--g-color-base-utility-medium:var(--g-color-private-purple-200);--g-color-base-utility-medium-hover:var(--g-color-private-purple-300);--g-color-base-utility-heavy:var(--g-color-private-purple-600-solid);--g-color-base-utility-heavy-hover:var(--g-color-private-purple-700-solid);--g-color-base-neutral-light:var(--g-color-private-black-50);--g-color-base-neutral-light-hover:var(--g-color-private-black-100);--g-color-base-neutral-medium:var(--g-color-private-black-200);--g-color-base-neutral-medium-hover:var(--g-color-private-black-250);--g-color-base-neutral-heavy:var(--g-color-private-black-450);--g-color-base-neutral-heavy-hover:var(--g-color-private-black-550);--g-color-base-misc-light:var(--g-color-private-cool-grey-100);--g-color-base-misc-light-hover:var(--g-color-private-cool-grey-200);--g-color-base-misc-medium:var(--g-color-private-cool-grey-200);--g-color-base-misc-medium-hover:var(--g-color-private-cool-grey-300);--g-color-base-misc-heavy:var(--g-color-private-cool-grey-600-solid);--g-color-base-misc-heavy-hover:var(--g-color-private-cool-grey-700-solid);--g-color-base-light:var(--g-color-private-white-1000-solid);--g-color-base-light-hover:var(--g-color-private-white-850);--g-color-base-light-simple-hover:var(--g-color-private-white-150);--g-color-base-light-disabled:var(--g-color-private-white-150);--g-color-base-light-accent-disabled:var(--g-color-private-white-300);--g-color-base-float:var(--g-color-private-white-1000-solid);--g-color-base-float-hover:var(--g-color-private-black-50-solid);--g-color-base-float-medium:var(--g-color-private-black-550-solid);--g-color-base-float-heavy:var(--g-color-private-black-700-solid);--g-color-base-float-accent:var(--g-color-private-white-1000-solid);--g-color-base-float-accent-hover:var(--g-color-private-white-850);--g-color-base-float-announcement:var(--g-color-private-cool-grey-50-solid);--g-color-base-modal:var(--g-color-base-background);--g-color-line-generic:var(--g-color-private-black-100);--g-color-line-generic-hover:var(--g-color-private-black-150);--g-color-line-generic-active:var(--g-color-private-black-300);--g-color-line-generic-accent:var(--g-color-private-black-150);--g-color-line-generic-accent-hover:var(--g-color-private-black-300);--g-color-line-generic-solid:var(--g-color-private-black-100-solid);--g-color-line-brand:var(--g-color-private-yellow-600-solid);--g-color-line-focus:var(--g-color-private-cool-grey-450);--g-color-line-light:var(--g-color-private-white-500);--g-color-line-info:var(--g-color-private-blue-450);--g-color-line-positive:var(--g-color-private-green-450);--g-color-line-warning:var(--g-color-private-yellow-600-solid);--g-color-line-danger:var(--g-color-private-red-450);--g-color-line-utility:var(--g-color-private-purple-450);--g-color-line-misc:var(--g-color-private-cool-grey-450);--g-color-sfx-veil:var(--g-color-private-black-250);--g-color-sfx-shadow:var(--g-color-private-black-150);--g-color-sfx-shadow-heavy:var(--g-color-private-black-500);--g-color-sfx-shadow-light:var(--g-color-private-black-50);--g-color-sfx-fade:var(--g-color-private-white-300);--g-color-scroll-track:var(--g-color-base-background);--g-color-scroll-handle:var(--g-color-private-black-100);--g-color-scroll-handle-hover:var(--g-color-private-black-150);--g-color-scroll-corner:var(--g-color-private-black-100);--g-color-infographics-axis:var(--g-color-private-black-150-solid);--g-color-infographics-tooltip-bg:var(--g-color-private-white-950)}.g-root_theme_dark{--g-color-private-white-20-solid:#262226;--g-color-private-white-50-solid:#2d282d;--g-color-private-white-70-solid:#312d31;--g-color-private-white-100-solid:#383438;--g-color-private-white-150-solid:#433f43;--g-color-private-white-200-solid:#4e4a4e;--g-color-private-white-250-solid:#595559;--g-color-private-white-300-solid:#646164;--g-color-private-white-350-solid:#6f6c6f;--g-color-private-white-400-solid:#7a777a;--g-color-private-white-450-solid:#858385;--g-color-private-white-500-solid:#908e90;--g-color-private-white-550-solid:#9c999c;--g-color-private-white-600-solid:#a7a5a7;--g-color-private-white-650-solid:#b2b0b2;--g-color-private-white-700-solid:#bdbbbd;--g-color-private-white-750-solid:#c8c6c8;--g-color-private-white-800-solid:#d3d2d3;--g-color-private-white-850-solid:#deddde;--g-color-private-white-900-solid:#e9e8e9;--g-color-private-white-950-solid:#f4f4f4;--g-color-private-blue-50:#3697f11a;--g-color-private-blue-100:#3697f126;--g-color-private-blue-150:#3697f133;--g-color-private-blue-200:#3697f14d;--g-color-private-blue-250:#3697f166;--g-color-private-blue-300:#3697f180;--g-color-private-blue-350:#3697f199;--g-color-private-blue-400:#3697f1b3;--g-color-private-blue-450:#3697f1cc;--g-color-private-blue-500:#3697f1e6;--g-color-private-blue-50-solid:#242937;--g-color-private-blue-100-solid:#252f41;--g-color-private-blue-150-solid:#26354b;--g-color-private-blue-200-solid:#284260;--g-color-private-blue-250-solid:#2a4e75;--g-color-private-blue-300-solid:#2c5a8a;--g-color-private-blue-350-solid:#2e669e;--g-color-private-blue-400-solid:#3072b3;--g-color-private-blue-450-solid:#327fc8;--g-color-private-blue-500-solid:#348bdc;--g-color-private-blue-550-solid:#3697f1;--g-color-private-blue-600-solid:#4aa1f2;--g-color-private-blue-650-solid:#5eacf4;--g-color-private-blue-700-solid:#72b6f5;--g-color-private-blue-750-solid:#86c1f7;--g-color-private-blue-800-solid:#9bcbf8;--g-color-private-blue-850-solid:#afd5f9;--g-color-private-blue-900-solid:#c3e0fb;--g-color-private-blue-950-solid:#d7eafc;--g-color-private-blue-1000-solid:#e1effd;--g-color-private-green-50:#4db09b1a;--g-color-private-green-100:#4db09b26;--g-color-private-green-150:#4db09b33;--g-color-private-green-200:#4db09b4d;--g-color-private-green-250:#4db09b66;--g-color-private-green-300:#4db09b80;--g-color-private-green-350:#4db09b99;--g-color-private-green-400:#4db09bb3;--g-color-private-green-450:#4db09bcc;--g-color-private-green-500:#4db09be6;--g-color-private-green-50-solid:#262c2e;--g-color-private-green-100-solid:#283334;--g-color-private-green-150-solid:#2b3a3a;--g-color-private-green-200-solid:#2f4946;--g-color-private-green-250-solid:#335852;--g-color-private-green-300-solid:#38675f;--g-color-private-green-350-solid:#3c756b;--g-color-private-green-400-solid:#408477;--g-color-private-green-450-solid:#449383;--g-color-private-green-500-solid:#49a18f;--g-color-private-green-550-solid:#4db09b;--g-color-private-green-600-solid:#5fb8a5;--g-color-private-green-650-solid:#71c0af;--g-color-private-green-700-solid:#82c8b9;--g-color-private-green-750-solid:#94d0c3;--g-color-private-green-800-solid:#a6d8cd;--g-color-private-green-850-solid:#b8dfd7;--g-color-private-green-900-solid:#cae7e1;--g-color-private-green-950-solid:#dbefeb;--g-color-private-green-1000-solid:#e4f3f0;--g-color-private-yellow-50:#ffbe5c1a;--g-color-private-yellow-100:#ffbe5c26;--g-color-private-yellow-150:#ffbe5c33;--g-color-private-yellow-200:#ffbe5c4d;--g-color-private-yellow-250:#ffbe5c66;--g-color-private-yellow-300:#ffbe5c80;--g-color-private-yellow-350:#ffbe5c99;--g-color-private-yellow-400:#ffbe5cb3;--g-color-private-yellow-450:#ffbe5ccc;--g-color-private-yellow-500:#ffbe5ce6;--g-color-private-yellow-50-solid:#382d28;--g-color-private-yellow-100-solid:#43352b;--g-color-private-yellow-150-solid:#4e3d2e;--g-color-private-yellow-200-solid:#644d33;--g-color-private-yellow-250-solid:#7a5d39;--g-color-private-yellow-300-solid:#916e3f;--g-color-private-yellow-350-solid:#a77e45;--g-color-private-yellow-400-solid:#bd8e4b;--g-color-private-yellow-450-solid:#d39e50;--g-color-private-yellow-500-solid:#e9ae56;--g-color-private-yellow-550-solid:#ffbe5c;--g-color-private-yellow-600-solid:#ffc56c;--g-color-private-yellow-650-solid:#ffcb7d;--g-color-private-yellow-700-solid:#ffd28d;--g-color-private-yellow-750-solid:#ffd89d;--g-color-private-yellow-800-solid:#ffdfae;--g-color-private-yellow-850-solid:#ffe5be;--g-color-private-yellow-900-solid:#ffecce;--g-color-private-yellow-950-solid:#fff2de;--g-color-private-yellow-1000-solid:#fff5e7;--g-color-private-orange-50-solid:#332420;--g-color-private-orange-100-solid:#3b281f;--g-color-private-orange-150-solid:#432b1e;--g-color-private-orange-200-solid:#54321b;--g-color-private-orange-250-solid:#643919;--g-color-private-orange-300-solid:#754017;--g-color-private-orange-350-solid:#864715;--g-color-private-orange-400-solid:#964e13;--g-color-private-orange-450-solid:#a75510;--g-color-private-orange-500-solid:#b75c0e;--g-color-private-orange-700-solid:#d99255;--g-color-private-orange-800-solid:#e4b186;--g-color-private-red-50:#e5325d1a;--g-color-private-red-100:#e5325d26;--g-color-private-red-150:#e5325d33;--g-color-private-red-200:#e5325d4d;--g-color-private-red-250:#e5325d66;--g-color-private-red-300:#e5325d80;--g-color-private-red-350:#e5325d99;--g-color-private-red-400:#e5325db3;--g-color-private-red-450:#e5325dcc;--g-color-private-red-500:#e5325de6;--g-color-private-red-50-solid:#361f28;--g-color-private-red-100-solid:#3f202b;--g-color-private-red-150-solid:#49212e;--g-color-private-red-200-solid:#5d2334;--g-color-private-red-250-solid:#70253a;--g-color-private-red-300-solid:#842840;--g-color-private-red-350-solid:#972a45;--g-color-private-red-400-solid:#ab2c4b;--g-color-private-red-450-solid:#be2e51;--g-color-private-red-500-solid:#d23057;--g-color-private-red-550-solid:#e5325d;--g-color-private-red-600-solid:#e8476d;--g-color-private-red-650-solid:#ea5b7d;--g-color-private-red-700-solid:#ed708e;--g-color-private-red-750-solid:#ef849e;--g-color-private-red-800-solid:#f299ae;--g-color-private-red-850-solid:#f5adbe;--g-color-private-red-900-solid:#f7c2ce;--g-color-private-red-950-solid:#fad6df;--g-color-private-red-1000-solid:#fbe0e7;--g-color-private-purple-50-solid:#2d2233;--g-color-private-purple-100-solid:#32253c;--g-color-private-purple-150-solid:#382844;--g-color-private-purple-200-solid:#432d55;--g-color-private-purple-250-solid:#4e3266;--g-color-private-purple-300-solid:#593877;--g-color-private-purple-350-solid:#633d88;--g-color-private-purple-400-solid:#6e4299;--g-color-private-purple-450-solid:#7947aa;--g-color-private-purple-500-solid:#844dbb;--g-color-private-cool-grey-50-solid:#28272e;--g-color-private-cool-grey-100-solid:#2b2c34;--g-color-private-cool-grey-150-solid:#2e313a;--g-color-private-cool-grey-200-solid:#353b47;--g-color-private-cool-grey-250-solid:#3b4553;--g-color-private-cool-grey-300-solid:#414f5f;--g-color-private-cool-grey-350-solid:#47586b;--g-color-private-cool-grey-400-solid:#4d6277;--g-color-private-cool-grey-450-solid:#546c84;--g-color-private-cool-grey-500-solid:#5a7690;--g-color-private-cool-grey-750-solid:#a0b3c4;--g-color-private-cool-grey-800-solid:#b0c0ce;--g-color-text-primary:var(--g-color-text-light-primary);--g-color-text-complementary:var(--g-color-text-light-complementary);--g-color-text-secondary:var(--g-color-text-light-secondary);--g-color-text-hint:var(--g-color-text-light-hint);--g-color-text-info:var(--g-color-private-blue-550-solid);--g-color-text-positive:var(--g-color-private-green-550-solid);--g-color-text-warning:var(--g-color-private-yellow-550-solid);--g-color-text-danger:var(--g-color-private-red-550-solid);--g-color-text-utility:var(--g-color-private-purple-600-solid);--g-color-text-misc:var(--g-color-private-cool-grey-600-solid);--g-color-text-info-heavy:var(--g-color-private-blue-600-solid);--g-color-text-positive-heavy:var(--g-color-private-green-600-solid);--g-color-text-warning-heavy:var(--g-color-private-yellow-600-solid);--g-color-text-danger-heavy:var(--g-color-private-red-600-solid);--g-color-text-utility-heavy:var(--g-color-private-purple-650-solid);--g-color-text-misc-heavy:var(--g-color-private-cool-grey-650-solid);--g-color-text-brand:var(--g-color-private-yellow-600-solid);--g-color-text-brand-heavy:var(--g-color-private-yellow-700-solid);--g-color-text-brand-contrast:var(--g-color-text-dark-primary);--g-color-text-link:var(--g-color-private-yellow-550-solid);--g-color-text-link-hover:var(--g-color-private-orange-550-solid);--g-color-text-link-visited:var(--g-color-private-purple-600-solid);--g-color-text-link-visited-hover:var(--g-color-private-purple-750-solid);--g-color-text-dark-primary:var(--g-color-private-black-900);--g-color-text-dark-complementary:var(--g-color-private-black-700);--g-color-text-dark-secondary:var(--g-color-private-black-500);--g-color-text-dark-hint:var(--g-color-private-black-300);--g-color-text-light-primary:var(--g-color-private-white-850);--g-color-text-light-complementary:var(--g-color-private-white-700);--g-color-text-light-secondary:var(--g-color-private-white-500);--g-color-text-light-hint:var(--g-color-private-white-300);--g-color-text-inverted-primary:var(--g-color-text-dark-primary);--g-color-text-inverted-complementary:var(--g-color-text-dark-complementary);--g-color-text-inverted-secondary:var(--g-color-text-dark-secondary);--g-color-text-inverted-hint:var(--g-color-text-dark-hint);--g-color-base-background:#221d22;--g-color-base-generic:var(--g-color-private-white-100);--g-color-base-generic-hover:var(--g-color-private-white-150);--g-color-base-generic-medium:var(--g-color-private-white-250);--g-color-base-generic-medium-hover:var(--g-color-private-white-300);--g-color-base-generic-accent:var(--g-color-private-white-150);--g-color-base-generic-accent-disabled:var(--g-color-private-white-70);--g-color-base-generic-ultralight:var(--g-color-private-white-20-solid);--g-color-base-simple-hover:var(--g-color-private-white-100);--g-color-base-simple-hover-solid:var(--g-color-private-white-100-solid);--g-color-base-brand:var(--g-color-private-yellow-550-solid);--g-color-base-brand-hover:var(--g-color-private-yellow-650-solid);--g-color-base-selection:var(--g-color-private-yellow-150);--g-color-base-selection-hover:var(--g-color-private-yellow-200);--g-color-base-info-light:var(--g-color-private-blue-150);--g-color-base-info-light-hover:var(--g-color-private-blue-200);--g-color-base-info-medium:var(--g-color-private-blue-300);--g-color-base-info-medium-hover:var(--g-color-private-blue-400);--g-color-base-info-heavy:var(--g-color-private-blue-600-solid);--g-color-base-info-heavy-hover:var(--g-color-private-blue-700-solid);--g-color-base-positive-light:var(--g-color-private-green-150);--g-color-base-positive-light-hover:var(--g-color-private-green-200);--g-color-base-positive-medium:var(--g-color-private-green-300);--g-color-base-positive-medium-hover:var(--g-color-private-green-400);--g-color-base-positive-heavy:var(--g-color-private-green-600-solid);--g-color-base-positive-heavy-hover:var(--g-color-private-green-700-solid);--g-color-base-warning-light:var(--g-color-private-yellow-150);--g-color-base-warning-light-hover:var(--g-color-private-yellow-200);--g-color-base-warning-medium:var(--g-color-private-yellow-300);--g-color-base-warning-medium-hover:var(--g-color-private-yellow-400);--g-color-base-warning-heavy:var(--g-color-private-yellow-600-solid);--g-color-base-warning-heavy-hover:var(--g-color-private-yellow-700-solid);--g-color-base-danger-light:var(--g-color-private-red-150);--g-color-base-danger-light-hover:var(--g-color-private-red-200);--g-color-base-danger-medium:var(--g-color-private-red-300);--g-color-base-danger-medium-hover:var(--g-color-private-red-400);--g-color-base-danger-heavy:var(--g-color-private-red-600-solid);--g-color-base-danger-heavy-hover:var(--g-color-private-red-700-solid);--g-color-base-utility-light:var(--g-color-private-purple-150);--g-color-base-utility-light-hover:var(--g-color-private-purple-250);--g-color-base-utility-medium:var(--g-color-private-purple-300);--g-color-base-utility-medium-hover:var(--g-color-private-purple-400);--g-color-base-utility-heavy:var(--g-color-private-purple-600-solid);--g-color-base-utility-heavy-hover:var(--g-color-private-purple-700-solid);--g-color-base-neutral-light:var(--g-color-private-white-100);--g-color-base-neutral-light-hover:var(--g-color-private-white-150);--g-color-base-neutral-medium:var(--g-color-private-white-250);--g-color-base-neutral-medium-hover:var(--g-color-private-white-350);--g-color-base-neutral-heavy:var(--g-color-private-white-550);--g-color-base-neutral-heavy-hover:var(--g-color-private-white-650);--g-color-base-misc-light:var(--g-color-private-cool-grey-150);--g-color-base-misc-light-hover:var(--g-color-private-cool-grey-200);--g-color-base-misc-medium:var(--g-color-private-cool-grey-300);--g-color-base-misc-medium-hover:var(--g-color-private-cool-grey-400);--g-color-base-misc-heavy:var(--g-color-private-cool-grey-600-solid);--g-color-base-misc-heavy-hover:var(--g-color-private-cool-grey-700-solid);--g-color-base-light:var(--g-color-private-white-850);--g-color-base-light-hover:var(--g-color-private-white-700);--g-color-base-light-simple-hover:var(--g-color-private-white-150);--g-color-base-light-disabled:var(--g-color-private-white-150);--g-color-base-light-accent-disabled:var(--g-color-private-white-300);--g-color-base-float:var(--g-color-private-white-100-solid);--g-color-base-float-hover:var(--g-color-private-white-150-solid);--g-color-base-float-medium:var(--g-color-private-white-150-solid);--g-color-base-float-heavy:var(--g-color-private-white-250-solid);--g-color-base-float-accent:var(--g-color-private-white-150-solid);--g-color-base-float-accent-hover:var(--g-color-private-white-200-solid);--g-color-base-float-announcement:var(--g-color-private-white-150-solid);--g-color-base-modal:var(--g-color-base-background);--g-color-line-generic:var(--g-color-private-white-150);--g-color-line-generic-hover:var(--g-color-private-white-250);--g-color-line-generic-active:var(--g-color-private-white-300);--g-color-line-generic-accent:var(--g-color-private-white-150);--g-color-line-generic-accent-hover:var(--g-color-private-white-300);--g-color-line-generic-solid:var(--g-color-private-white-150-solid);--g-color-line-brand:var(--g-color-private-yellow-600-solid);--g-color-line-focus:var(--g-color-private-cool-grey-450);--g-color-line-light:var(--g-color-private-white-500);--g-color-line-info:var(--g-color-private-blue-450);--g-color-line-positive:var(--g-color-private-green-450);--g-color-line-warning:var(--g-color-private-yellow-450);--g-color-line-danger:var(--g-color-private-red-450);--g-color-line-utility:var(--g-color-private-purple-450);--g-color-line-misc:var(--g-color-private-cool-grey-450);--g-color-sfx-veil:var(--g-color-private-black-600);--g-color-sfx-shadow:var(--g-color-private-black-200);--g-color-sfx-shadow-heavy:var(--g-color-private-black-500);--g-color-sfx-shadow-light:var(--g-color-private-black-200);--g-color-sfx-fade:var(--g-color-private-white-250);--g-color-scroll-track:var(--g-color-base-background);--g-color-scroll-handle:var(--g-color-private-white-150);--g-color-scroll-handle-hover:var(--g-color-private-white-250);--g-color-scroll-corner:var(--g-color-private-white-150);--g-color-infographics-axis:var(--g-color-private-white-150-solid);--g-color-infographics-tooltip-bg:var(--g-color-private-white-opaque-150)}.g-root_theme_light-hc{--g-color-private-blue-50:#3697f11a;--g-color-private-blue-100:#3697f126;--g-color-private-blue-150:#3697f133;--g-color-private-blue-200:#3697f14d;--g-color-private-blue-250:#3697f166;--g-color-private-blue-300:#3697f180;--g-color-private-blue-350:#3697f199;--g-color-private-blue-400:#3697f1b3;--g-color-private-blue-450:#3697f1cc;--g-color-private-blue-500:#3697f1e6;--g-color-private-blue-50-solid:#ebf5fe;--g-color-private-blue-100-solid:#e1effd;--g-color-private-blue-150-solid:#d7eafc;--g-color-private-blue-200-solid:#c3e0fb;--g-color-private-blue-250-solid:#afd5f9;--g-color-private-blue-300-solid:#9bcbf8;--g-color-private-blue-350-solid:#86c1f7;--g-color-private-blue-400-solid:#72b6f5;--g-color-private-blue-450-solid:#5eacf4;--g-color-private-blue-500-solid:#4aa1f2;--g-color-private-blue-550-solid:#3697f1;--g-color-private-blue-600-solid:#328adb;--g-color-private-blue-650-solid:#2f7cc4;--g-color-private-blue-700-solid:#2b6fae;--g-color-private-blue-750-solid:#286198;--g-color-private-blue-800-solid:#245482;--g-color-private-blue-850-solid:#20476b;--g-color-private-blue-900-solid:#1d3955;--g-color-private-blue-950-solid:#192c3f;--g-color-private-blue-1000-solid:#172533;--g-color-private-green-50:#32ba761a;--g-color-private-green-100:#32ba7626;--g-color-private-green-150:#32ba7633;--g-color-private-green-200:#32ba764d;--g-color-private-green-250:#32ba7666;--g-color-private-green-300:#32ba7680;--g-color-private-green-350:#32ba7699;--g-color-private-green-400:#32ba76b3;--g-color-private-green-450:#32ba76cc;--g-color-private-green-500:#32ba76e6;--g-color-private-green-50-solid:#ebf8f1;--g-color-private-green-100-solid:#e0f5ea;--g-color-private-green-150-solid:#d6f1e4;--g-color-private-green-200-solid:#c2ead6;--g-color-private-green-250-solid:#ade3c8;--g-color-private-green-300-solid:#9db;--g-color-private-green-350-solid:#84d6ad;--g-color-private-green-400-solid:#70cf9f;--g-color-private-green-450-solid:#5bc891;--g-color-private-green-500-solid:#47c184;--g-color-private-green-550-solid:#32ba76;--g-color-private-green-600-solid:#2fa96c;--g-color-private-green-650-solid:#2c9862;--g-color-private-green-700-solid:#288758;--g-color-private-green-750-solid:#25764e;--g-color-private-green-800-solid:#264;--g-color-private-green-850-solid:#1f553a;--g-color-private-green-900-solid:#1c4430;--g-color-private-green-950-solid:#183326;--g-color-private-green-1000-solid:#172a21;--g-color-private-yellow-50:#ffbe5c1a;--g-color-private-yellow-100:#ffbe5c26;--g-color-private-yellow-150:#ffbe5c33;--g-color-private-yellow-200:#ffbe5c4d;--g-color-private-yellow-250:#ffbe5c66;--g-color-private-yellow-300:#ffbe5c80;--g-color-private-yellow-350:#ffbe5c99;--g-color-private-yellow-400:#ffbe5cb3;--g-color-private-yellow-450:#ffbe5ccc;--g-color-private-yellow-500:#ffbe5ce6;--g-color-private-yellow-50-solid:#fff9ef;--g-color-private-yellow-100-solid:#fff5e7;--g-color-private-yellow-150-solid:#fff2de;--g-color-private-yellow-200-solid:#ffecce;--g-color-private-yellow-250-solid:#ffe5be;--g-color-private-yellow-300-solid:#ffdfae;--g-color-private-yellow-350-solid:#ffd89d;--g-color-private-yellow-400-solid:#ffd28d;--g-color-private-yellow-450-solid:#ffcb7d;--g-color-private-yellow-500-solid:#ffc56c;--g-color-private-yellow-550-solid:#ffbe5c;--g-color-private-yellow-600-solid:#e7ad55;--g-color-private-yellow-650-solid:#d09b4d;--g-color-private-yellow-700-solid:#b88a46;--g-color-private-yellow-750-solid:#a0793e;--g-color-private-yellow-800-solid:#896837;--g-color-private-yellow-850-solid:#715630;--g-color-private-yellow-900-solid:#594528;--g-color-private-yellow-950-solid:#413421;--g-color-private-yellow-1000-solid:#362b1d;--g-color-private-orange-400-solid:#ffa04d;--g-color-private-orange-500-solid:#ff8519;--g-color-private-orange-600-solid:#e76d02;--g-color-private-orange-650-solid:#d06304;--g-color-private-orange-700-solid:#b85805;--g-color-private-orange-750-solid:#a04e07;--g-color-private-orange-800-solid:#894409;--g-color-private-orange-850-solid:#713a0b;--g-color-private-orange-900-solid:#59300d;--g-color-private-orange-950-solid:#41250e;--g-color-private-orange-1000-solid:#36200f;--g-color-private-red-50:#ff003d1a;--g-color-private-red-100:#ff003d26;--g-color-private-red-150:#ff003d33;--g-color-private-red-200:#ff003d4d;--g-color-private-red-250:#ff003d66;--g-color-private-red-300:#ff003d80;--g-color-private-red-350:#ff003d99;--g-color-private-red-400:#ff003db3;--g-color-private-red-450:#ff003dcc;--g-color-private-red-500:#ff003de6;--g-color-private-red-50-solid:#ffe6ec;--g-color-private-red-100-solid:#ffd9e2;--g-color-private-red-150-solid:#ffccd8;--g-color-private-red-200-solid:#ffb3c5;--g-color-private-red-250-solid:#ff99b1;--g-color-private-red-300-solid:#ff809e;--g-color-private-red-350-solid:#ff668b;--g-color-private-red-400-solid:#ff4d77;--g-color-private-red-450-solid:#ff3364;--g-color-private-red-500-solid:#ff1950;--g-color-private-red-550-solid:#ff003d;--g-color-private-red-600-solid:#e70239;--g-color-private-red-650-solid:#d00334;--g-color-private-red-700-solid:#b80530;--g-color-private-red-750-solid:#a0072c;--g-color-private-red-800-solid:#890928;--g-color-private-red-850-solid:#710a23;--g-color-private-red-900-solid:#590c1f;--g-color-private-red-950-solid:#410e1b;--g-color-private-red-1000-solid:#360e18;--g-color-private-purple-600-solid:#834cb9;--g-color-private-purple-650-solid:#7645a7;--g-color-private-purple-700-solid:#6a3f94;--g-color-private-purple-750-solid:#5d3882;--g-color-private-purple-800-solid:#51326f;--g-color-private-purple-850-solid:#442b5c;--g-color-private-purple-900-solid:#38254a;--g-color-private-purple-950-solid:#2b1e37;--g-color-private-purple-1000-solid:#251b2e;--g-color-private-cool-grey-300-solid:#b5c2cc;--g-color-private-cool-grey-600-solid:#62798c;--g-color-private-cool-grey-650-solid:#596d7e;--g-color-private-cool-grey-700-solid:#506271;--g-color-private-cool-grey-750-solid:#475663;--g-color-private-cool-grey-800-solid:#3f4b56;--g-color-private-cool-grey-850-solid:#363f48;--g-color-private-cool-grey-900-solid:#2d343b;--g-color-private-cool-grey-950-solid:#24282d;--g-color-private-cool-grey-1000-solid:#1f2226;--g-color-text-primary:var(--g-color-text-dark-primary);--g-color-text-complementary:var(--g-color-text-dark-complementary);--g-color-text-secondary:var(--g-color-text-dark-secondary);--g-color-text-hint:var(--g-color-text-dark-hint);--g-color-text-info:var(--g-color-private-blue-650-solid);--g-color-text-positive:var(--g-color-private-green-650-solid);--g-color-text-warning:var(--g-color-private-yellow-700-solid);--g-color-text-danger:var(--g-color-private-red-650-solid);--g-color-text-utility:var(--g-color-private-purple-650-solid);--g-color-text-misc:var(--g-color-private-cool-grey-650-solid);--g-color-text-info-heavy:var(--g-color-private-blue-900-solid);--g-color-text-positive-heavy:var(--g-color-private-green-900-solid);--g-color-text-warning-heavy:var(--g-color-private-orange-900-solid);--g-color-text-danger-heavy:var(--g-color-private-red-900-solid);--g-color-text-utility-heavy:var(--g-color-private-purple-900-solid);--g-color-text-misc-heavy:var(--g-color-private-cool-grey-900-solid);--g-color-text-brand:var(--g-color-private-yellow-700-solid);--g-color-text-brand-heavy:var(--g-color-private-orange-900-solid);--g-color-text-brand-contrast:var(--g-color-text-dark-primary);--g-color-text-link:var(--g-color-private-yellow-700-solid);--g-color-text-link-hover:var(--g-color-private-orange-700-solid);--g-color-text-link-visited:var(--g-color-private-purple-600-solid);--g-color-text-link-visited-hover:var(--g-color-private-purple-850-solid);--g-color-text-dark-primary:var(--g-color-private-black-1000-solid);--g-color-text-dark-complementary:var(--g-color-private-black-850);--g-color-text-dark-secondary:var(--g-color-private-black-700);--g-color-text-dark-hint:var(--g-color-private-black-500);--g-color-text-light-primary:var(--g-color-private-white-1000-solid);--g-color-text-light-complementary:var(--g-color-private-white-850);--g-color-text-light-secondary:var(--g-color-private-white-700);--g-color-text-light-hint:var(--g-color-private-white-500);--g-color-text-inverted-primary:var(--g-color-text-light-primary);--g-color-text-inverted-complementary:var(--g-color-text-light-complementary);--g-color-text-inverted-secondary:var(--g-color-text-light-secondary);--g-color-text-inverted-hint:var(--g-color-text-light-hint);--g-color-base-background:var(--g-color-private-white-1000-solid);--g-color-base-generic:var(--g-color-private-black-150);--g-color-base-generic-hover:var(--g-color-private-black-300);--g-color-base-generic-medium:var(--g-color-private-black-250);--g-color-base-generic-medium-hover:var(--g-color-private-black-350);--g-color-base-generic-accent:var(--g-color-private-black-250);--g-color-base-generic-accent-disabled:var(--g-color-private-black-150);--g-color-base-generic-ultralight:var(--g-color-private-black-50-solid);--g-color-base-simple-hover:var(--g-color-private-black-150);--g-color-base-simple-hover-solid:var(--g-color-private-black-150-solid);--g-color-base-brand:var(--g-color-private-yellow-550-solid);--g-color-base-brand-hover:var(--g-color-private-yellow-650-solid);--g-color-base-selection:var(--g-color-private-yellow-300);--g-color-base-selection-hover:var(--g-color-private-yellow-400);--g-color-base-info-light:var(--g-color-private-blue-250);--g-color-base-info-light-hover:var(--g-color-private-blue-350);--g-color-base-info-medium:var(--g-color-private-blue-400);--g-color-base-info-medium-hover:var(--g-color-private-blue-500);--g-color-base-info-heavy:var(--g-color-private-blue-700-solid);--g-color-base-info-heavy-hover:var(--g-color-private-blue-850-solid);--g-color-base-positive-light:var(--g-color-private-green-250);--g-color-base-positive-light-hover:var(--g-color-private-green-350);--g-color-base-positive-medium:var(--g-color-private-green-400);--g-color-base-positive-medium-hover:var(--g-color-private-green-500);--g-color-base-positive-heavy:var(--g-color-private-green-700-solid);--g-color-base-positive-heavy-hover:var(--g-color-private-green-800-solid);--g-color-base-warning-light:var(--g-color-private-yellow-300);--g-color-base-warning-light-hover:var(--g-color-private-yellow-400);--g-color-base-warning-medium:var(--g-color-private-yellow-400);--g-color-base-warning-medium-hover:var(--g-color-private-yellow-550-solid);--g-color-base-warning-heavy:var(--g-color-private-yellow-600-solid);--g-color-base-warning-heavy-hover:var(--g-color-private-yellow-700-solid);--g-color-base-danger-light:var(--g-color-private-red-250);--g-color-base-danger-light-hover:var(--g-color-private-red-350);--g-color-base-danger-medium:var(--g-color-private-red-400);--g-color-base-danger-medium-hover:var(--g-color-private-red-500);--g-color-base-danger-heavy:var(--g-color-private-red-700-solid);--g-color-base-danger-heavy-hover:var(--g-color-private-red-800-solid);--g-color-base-utility-light:var(--g-color-private-purple-250);--g-color-base-utility-light-hover:var(--g-color-private-purple-350);--g-color-base-utility-medium:var(--g-color-private-purple-400);--g-color-base-utility-medium-hover:var(--g-color-private-purple-500);--g-color-base-utility-heavy:var(--g-color-private-purple-700-solid);--g-color-base-utility-heavy-hover:var(--g-color-private-purple-800-solid);--g-color-base-neutral-light:var(--g-color-private-black-150);--g-color-base-neutral-light-hover:var(--g-color-private-black-250);--g-color-base-neutral-medium:var(--g-color-private-black-300);--g-color-base-neutral-medium-hover:var(--g-color-private-black-400);--g-color-base-neutral-heavy:var(--g-color-private-black-550);--g-color-base-neutral-heavy-hover:var(--g-color-private-black-650);--g-color-base-misc-light:var(--g-color-private-cool-grey-250);--g-color-base-misc-light-hover:var(--g-color-private-cool-grey-350);--g-color-base-misc-medium:var(--g-color-private-cool-grey-400);--g-color-base-misc-medium-hover:var(--g-color-private-cool-grey-500);--g-color-base-misc-heavy:var(--g-color-private-cool-grey-700-solid);--g-color-base-misc-heavy-hover:var(--g-color-private-cool-grey-800-solid);--g-color-base-light:var(--g-color-private-white-1000-solid);--g-color-base-light-hover:var(--g-color-private-white-850);--g-color-base-light-simple-hover:var(--g-color-private-white-300);--g-color-base-light-disabled:var(--g-color-private-white-150);--g-color-base-light-accent-disabled:var(--g-color-private-white-300);--g-color-base-float:var(--g-color-private-white-1000-solid);--g-color-base-float-hover:var(--g-color-private-black-150-solid);--g-color-base-float-medium:var(--g-color-private-black-550-solid);--g-color-base-float-heavy:var(--g-color-private-black-700-solid);--g-color-base-float-accent:var(--g-color-private-white-1000-solid);--g-color-base-float-accent-hover:var(--g-color-private-white-850);--g-color-base-float-announcement:var(--g-color-private-cool-grey-150-solid);--g-color-base-modal:var(--g-color-base-background);--g-color-line-generic:var(--g-color-private-black-200);--g-color-line-generic-hover:var(--g-color-private-black-400);--g-color-line-generic-active:var(--g-color-private-black-700);--g-color-line-generic-accent:var(--g-color-private-black-300);--g-color-line-generic-accent-hover:var(--g-color-private-black-700);--g-color-line-generic-solid:var(--g-color-private-black-200-solid);--g-color-line-brand:var(--g-color-private-yellow-600-solid);--g-color-line-focus:var(--g-color-private-cool-grey-450);--g-color-line-light:var(--g-color-private-white-500);--g-color-line-info:var(--g-color-private-blue-450);--g-color-line-positive:var(--g-color-private-green-450);--g-color-line-warning:var(--g-color-private-yellow-600-solid);--g-color-line-danger:var(--g-color-private-red-450);--g-color-line-utility:var(--g-color-private-purple-450);--g-color-line-misc:var(--g-color-private-cool-grey-450);--g-color-sfx-veil:var(--g-color-private-black-450);--g-color-sfx-shadow:var(--g-color-private-black-300);--g-color-sfx-shadow-heavy:var(--g-color-private-black-600);--g-color-sfx-shadow-light:var(--g-color-private-black-100);--g-color-sfx-fade:var(--g-color-private-white-300);--g-color-scroll-track:var(--g-color-base-background);--g-color-scroll-handle:var(--g-color-private-black-100);--g-color-scroll-handle-hover:var(--g-color-private-black-150);--g-color-scroll-corner:var(--g-color-private-black-100);--g-color-infographics-axis:var(--g-color-private-black-150-solid);--g-color-infographics-tooltip-bg:var(--g-color-private-white-950)}.g-root_theme_dark-hc{--g-color-private-white-50-solid:#1e1d1e;--g-color-private-white-70-solid:#232223;--g-color-private-white-100-solid:#2a292a;--g-color-private-white-150-solid:#363536;--g-color-private-white-200-solid:#414141;--g-color-private-white-250-solid:#4d4d4d;--g-color-private-white-300-solid:#595859;--g-color-private-white-350-solid:#656465;--g-color-private-white-400-solid:#717071;--g-color-private-white-450-solid:#7d7c7d;--g-color-private-white-500-solid:#888;--g-color-private-white-550-solid:#949494;--g-color-private-white-600-solid:#a0a0a0;--g-color-private-white-650-solid:#acacac;--g-color-private-white-700-solid:#b8b8b8;--g-color-private-white-750-solid:#c4c3c4;--g-color-private-white-800-solid:#d0cfd0;--g-color-private-white-850-solid:#d0cfd0;--g-color-private-white-900-solid:#e7e7e7;--g-color-private-white-950-solid:#f3f3f3;--g-color-private-blue-50:#3697f11a;--g-color-private-blue-100:#3697f126;--g-color-private-blue-150:#3697f133;--g-color-private-blue-200:#3697f14d;--g-color-private-blue-250:#3697f166;--g-color-private-blue-300:#3697f180;--g-color-private-blue-350:#3697f199;--g-color-private-blue-400:#3697f1b3;--g-color-private-blue-450:#3697f1cc;--g-color-private-blue-500:#3697f1e6;--g-color-private-blue-50-solid:#161e28;--g-color-private-blue-100-solid:#172533;--g-color-private-blue-150-solid:#192c3f;--g-color-private-blue-200-solid:#1d3955;--g-color-private-blue-250-solid:#20476b;--g-color-private-blue-300-solid:#245482;--g-color-private-blue-350-solid:#286198;--g-color-private-blue-400-solid:#2b6fae;--g-color-private-blue-450-solid:#2f7cc4;--g-color-private-blue-500-solid:#328adb;--g-color-private-blue-550-solid:#3697f1;--g-color-private-blue-600-solid:#4aa1f2;--g-color-private-blue-650-solid:#5eacf4;--g-color-private-blue-700-solid:#72b6f5;--g-color-private-blue-750-solid:#86c1f7;--g-color-private-blue-800-solid:#9bcbf8;--g-color-private-blue-850-solid:#afd5f9;--g-color-private-blue-900-solid:#c3e0fb;--g-color-private-blue-950-solid:#d7eafc;--g-color-private-blue-1000-solid:#e1effd;--g-color-private-green-50:#4db09b1a;--g-color-private-green-100:#4db09b26;--g-color-private-green-150:#4db09b33;--g-color-private-green-200:#4db09b4d;--g-color-private-green-250:#4db09b66;--g-color-private-green-300:#4db09b80;--g-color-private-green-350:#4db09b99;--g-color-private-green-400:#4db09bb3;--g-color-private-green-450:#4db09bcc;--g-color-private-green-500:#4db09be6;--g-color-private-green-50-solid:#182120;--g-color-private-green-100-solid:#1b2927;--g-color-private-green-150-solid:#1e312d;--g-color-private-green-200-solid:#24413b;--g-color-private-green-250-solid:#2a5149;--g-color-private-green-300-solid:#306157;--g-color-private-green-350-solid:#357064;--g-color-private-green-400-solid:#3b8072;--g-color-private-green-450-solid:#419080;--g-color-private-green-500-solid:#47a08d;--g-color-private-green-550-solid:#4db09b;--g-color-private-green-600-solid:#5fb8a5;--g-color-private-green-650-solid:#71c0af;--g-color-private-green-700-solid:#82c8b9;--g-color-private-green-750-solid:#94d0c3;--g-color-private-green-800-solid:#a6d8cd;--g-color-private-green-850-solid:#b8dfd7;--g-color-private-green-900-solid:#cae7e1;--g-color-private-green-950-solid:#dbefeb;--g-color-private-green-1000-solid:#e4f3f0;--g-color-private-yellow-50:#ffbe5c1a;--g-color-private-yellow-100:#ffbe5c26;--g-color-private-yellow-150:#ffbe5c33;--g-color-private-yellow-200:#ffbe5c4d;--g-color-private-yellow-250:#ffbe5c66;--g-color-private-yellow-300:#ffbe5c80;--g-color-private-yellow-350:#ffbe5c99;--g-color-private-yellow-400:#ffbe5cb3;--g-color-private-yellow-450:#ffbe5ccc;--g-color-private-yellow-500:#ffbe5ce6;--g-color-private-yellow-50-solid:#2a2219;--g-color-private-yellow-100-solid:#362b1d;--g-color-private-yellow-150-solid:#413421;--g-color-private-yellow-200-solid:#594528;--g-color-private-yellow-250-solid:#715630;--g-color-private-yellow-300-solid:#896837;--g-color-private-yellow-350-solid:#a0793e;--g-color-private-yellow-400-solid:#b88a46;--g-color-private-yellow-450-solid:#d09b4d;--g-color-private-yellow-500-solid:#e7ad55;--g-color-private-yellow-550-solid:#ffbe5c;--g-color-private-yellow-600-solid:#ffc56c;--g-color-private-yellow-650-solid:#ffcb7d;--g-color-private-yellow-700-solid:#ffd28d;--g-color-private-yellow-750-solid:#ffd89d;--g-color-private-yellow-800-solid:#ffdfae;--g-color-private-yellow-850-solid:#ffe5be;--g-color-private-yellow-900-solid:#ffecce;--g-color-private-yellow-950-solid:#fff2de;--g-color-private-yellow-1000-solid:#fff5e7;--g-color-private-orange-50-solid:#241911;--g-color-private-orange-100-solid:#2d1d11;--g-color-private-orange-150-solid:#362111;--g-color-private-orange-200-solid:#492a10;--g-color-private-orange-250-solid:#5b3210;--g-color-private-orange-300-solid:#6d3a0f;--g-color-private-orange-350-solid:#7f420e;--g-color-private-orange-400-solid:#914a0e;--g-color-private-orange-450-solid:#a4530d;--g-color-private-orange-500-solid:#b65b0d;--g-color-private-orange-700-solid:#d99255;--g-color-private-orange-800-solid:#e4b186;--g-color-private-red-50:#e5325d1a;--g-color-private-red-100:#e5325d26;--g-color-private-red-150:#e5325d33;--g-color-private-red-200:#e5325d4d;--g-color-private-red-250:#e5325d66;--g-color-private-red-300:#e5325d80;--g-color-private-red-350:#e5325d99;--g-color-private-red-400:#e5325db3;--g-color-private-red-450:#e5325dcc;--g-color-private-red-500:#e5325de6;--g-color-private-red-50-solid:#27141a;--g-color-private-red-100-solid:#32161d;--g-color-private-red-150-solid:#3c1821;--g-color-private-red-200-solid:#511b29;--g-color-private-red-250-solid:#661e30;--g-color-private-red-300-solid:#7c2238;--g-color-private-red-350-solid:#91253f;--g-color-private-red-400-solid:#a62847;--g-color-private-red-450-solid:#bb2b4e;--g-color-private-red-500-solid:#d02f56;--g-color-private-red-550-solid:#e5325d;--g-color-private-red-600-solid:#e8476d;--g-color-private-red-650-solid:#ea5b7d;--g-color-private-red-700-solid:#ed708e;--g-color-private-red-750-solid:#ef849e;--g-color-private-red-800-solid:#f299ae;--g-color-private-red-850-solid:#f5adbe;--g-color-private-red-900-solid:#f7c2ce;--g-color-private-red-950-solid:#fad6df;--g-color-private-red-1000-solid:#fbe0e7;--g-color-private-purple-50-solid:#1f1825;--g-color-private-purple-100-solid:#251b2e;--g-color-private-purple-150-solid:#2b1e37;--g-color-private-purple-200-solid:#38254a;--g-color-private-purple-250-solid:#442b5c;--g-color-private-purple-300-solid:#51326f;--g-color-private-purple-350-solid:#5d3882;--g-color-private-purple-400-solid:#6a3f94;--g-color-private-purple-450-solid:#7645a7;--g-color-private-purple-500-solid:#834cb9;--g-color-private-cool-grey-50-solid:#1a1c20;--g-color-private-cool-grey-100-solid:#1e2227;--g-color-private-cool-grey-150-solid:#22272e;--g-color-private-cool-grey-200-solid:#29323b;--g-color-private-cool-grey-250-solid:#313d49;--g-color-private-cool-grey-300-solid:#394957;--g-color-private-cool-grey-350-solid:#415465;--g-color-private-cool-grey-400-solid:#495f73;--g-color-private-cool-grey-450-solid:#506a80;--g-color-private-cool-grey-500-solid:#58758e;--g-color-private-cool-grey-750-solid:#a0b3c4;--g-color-private-cool-grey-800-solid:#b0c0ce;--g-color-text-primary:var(--g-color-text-light-primary);--g-color-text-complementary:var(--g-color-text-light-complementary);--g-color-text-secondary:var(--g-color-text-light-secondary);--g-color-text-hint:var(--g-color-text-light-hint);--g-color-text-info:var(--g-color-private-blue-650-solid);--g-color-text-positive:var(--g-color-private-green-650-solid);--g-color-text-warning:var(--g-color-private-yellow-650-solid);--g-color-text-danger:var(--g-color-private-red-650-solid);--g-color-text-utility:var(--g-color-private-purple-650-solid);--g-color-text-misc:var(--g-color-private-cool-grey-650-solid);--g-color-text-info-heavy:var(--g-color-private-blue-850-solid);--g-color-text-positive-heavy:var(--g-color-private-green-850-solid);--g-color-text-warning-heavy:var(--g-color-private-yellow-850-solid);--g-color-text-danger-heavy:var(--g-color-private-red-850-solid);--g-color-text-utility-heavy:var(--g-color-private-purple-850-solid);--g-color-text-misc-heavy:var(--g-color-private-cool-grey-850-solid);--g-color-text-brand:var(--g-color-private-yellow-600-solid);--g-color-text-brand-heavy:var(--g-color-private-yellow-700-solid);--g-color-text-brand-contrast:var(--g-color-text-dark-primary);--g-color-text-link:var(--g-color-private-yellow-550-solid);--g-color-text-link-hover:var(--g-color-private-orange-550-solid);--g-color-text-link-visited:var(--g-color-private-purple-650-solid);--g-color-text-link-visited-hover:var(--g-color-private-purple-800-solid);--g-color-text-dark-primary:var(--g-color-private-black-1000-solid);--g-color-text-dark-complementary:var(--g-color-private-black-800);--g-color-text-dark-secondary:var(--g-color-private-black-600);--g-color-text-dark-hint:var(--g-color-private-black-400);--g-color-text-light-primary:var(--g-color-private-white-1000-solid);--g-color-text-light-complementary:var(--g-color-private-white-800);--g-color-text-light-secondary:var(--g-color-private-white-600);--g-color-text-light-hint:var(--g-color-private-white-400);--g-color-text-inverted-primary:var(--g-color-text-dark-primary);--g-color-text-inverted-complementary:var(--g-color-text-dark-complementary);--g-color-text-inverted-secondary:var(--g-color-text-dark-secondary);--g-color-text-inverted-hint:var(--g-color-text-dark-hint);--g-color-base-background:#121112;--g-color-base-generic:var(--g-color-private-white-100);--g-color-base-generic-hover:var(--g-color-private-white-250);--g-color-base-generic-medium:var(--g-color-private-white-250);--g-color-base-generic-medium-hover:var(--g-color-private-white-400);--g-color-base-generic-accent:var(--g-color-private-white-200);--g-color-base-generic-accent-disabled:var(--g-color-private-white-150);--g-color-base-generic-ultralight:var(--g-color-private-white-50);--g-color-base-simple-hover:var(--g-color-private-white-250);--g-color-base-simple-hover-solid:var(--g-color-private-white-250-solid);--g-color-base-brand:var(--g-color-private-yellow-550-solid);--g-color-base-brand-hover:var(--g-color-private-yellow-700-solid);--g-color-base-selection:var(--g-color-private-yellow-250);--g-color-base-selection-hover:var(--g-color-private-yellow-400);--g-color-base-info-light:var(--g-color-private-blue-250);--g-color-base-info-light-hover:var(--g-color-private-blue-400);--g-color-base-info-medium:var(--g-color-private-blue-450);--g-color-base-info-medium-hover:var(--g-color-private-blue-600-solid);--g-color-base-info-heavy:var(--g-color-private-blue-700-solid);--g-color-base-info-heavy-hover:var(--g-color-private-blue-850-solid);--g-color-base-positive-light:var(--g-color-private-green-250);--g-color-base-positive-light-hover:var(--g-color-private-green-400);--g-color-base-positive-medium:var(--g-color-private-green-450);--g-color-base-positive-medium-hover:var(--g-color-private-green-600-solid);--g-color-base-positive-heavy:var(--g-color-private-green-700-solid);--g-color-base-positive-heavy-hover:var(--g-color-private-green-850-solid);--g-color-base-warning-light:var(--g-color-private-yellow-250);--g-color-base-warning-light-hover:var(--g-color-private-yellow-400);--g-color-base-warning-medium:var(--g-color-private-yellow-450);--g-color-base-warning-medium-hover:var(--g-color-private-yellow-600-solid);--g-color-base-warning-heavy:var(--g-color-private-yellow-700-solid);--g-color-base-warning-heavy-hover:var(--g-color-private-yellow-850-solid);--g-color-base-danger-light:var(--g-color-private-red-250);--g-color-base-danger-light-hover:var(--g-color-private-red-400);--g-color-base-danger-medium:var(--g-color-private-red-450);--g-color-base-danger-medium-hover:var(--g-color-private-red-600-solid);--g-color-base-danger-heavy:var(--g-color-private-red-700-solid);--g-color-base-danger-heavy-hover:var(--g-color-private-red-850-solid);--g-color-base-utility-light:var(--g-color-private-purple-250);--g-color-base-utility-light-hover:var(--g-color-private-purple-400);--g-color-base-utility-medium:var(--g-color-private-purple-450);--g-color-base-utility-medium-hover:var(--g-color-private-purple-600-solid);--g-color-base-utility-heavy:var(--g-color-private-purple-700-solid);--g-color-base-utility-heavy-hover:var(--g-color-private-purple-850-solid);--g-color-base-neutral-light:var(--g-color-private-white-200);--g-color-base-neutral-light-hover:var(--g-color-private-white-350);--g-color-base-neutral-medium:var(--g-color-private-white-400);--g-color-base-neutral-medium-hover:var(--g-color-private-white-550);--g-color-base-neutral-heavy:var(--g-color-private-white-650);--g-color-base-neutral-heavy-hover:var(--g-color-private-white-750);--g-color-base-misc-light:var(--g-color-private-cool-grey-250);--g-color-base-misc-light-hover:var(--g-color-private-cool-grey-400);--g-color-base-misc-medium:var(--g-color-private-cool-grey-450);--g-color-base-misc-medium-hover:var(--g-color-private-cool-grey-600-solid);--g-color-base-misc-heavy:var(--g-color-private-cool-grey-700-solid);--g-color-base-misc-heavy-hover:var(--g-color-private-cool-grey-850-solid);--g-color-base-light:var(--g-color-private-white-850);--g-color-base-light-hover:var(--g-color-private-white-700);--g-color-base-light-simple-hover:var(--g-color-private-white-150);--g-color-base-light-disabled:var(--g-color-private-white-150);--g-color-base-light-accent-disabled:var(--g-color-private-white-300);--g-color-base-float:var(--g-color-private-white-100-solid);--g-color-base-float-hover:var(--g-color-private-white-200-solid);--g-color-base-float-medium:var(--g-color-private-white-200-solid);--g-color-base-float-heavy:var(--g-color-private-white-300-solid);--g-color-base-float-accent:var(--g-color-private-white-300-solid);--g-color-base-float-accent-hover:var(--g-color-private-white-400-solid);--g-color-base-float-announcement:var(--g-color-private-white-200-solid);--g-color-base-modal:var(--g-color-base-background);--g-color-line-generic:var(--g-color-private-white-150);--g-color-line-generic-hover:var(--g-color-private-white-250);--g-color-line-generic-active:var(--g-color-private-white-600);--g-color-line-generic-accent:var(--g-color-private-white-350);--g-color-line-generic-accent-hover:var(--g-color-private-white-800);--g-color-line-generic-solid:var(--g-color-private-white-150-solid);--g-color-line-brand:var(--g-color-private-yellow-600-solid);--g-color-line-focus:var(--g-color-private-cool-grey-550-solid);--g-color-line-light:var(--g-color-private-white-500);--g-color-line-info:var(--g-color-private-blue-550-solid);--g-color-line-positive:var(--g-color-private-green-550-solid);--g-color-line-warning:var(--g-color-private-yellow-550-solid);--g-color-line-danger:var(--g-color-private-red-550-solid);--g-color-line-utility:var(--g-color-private-purple-550-solid);--g-color-line-misc:var(--g-color-private-cool-grey-550-solid);--g-color-sfx-veil:var(--g-color-private-black-700);--g-color-sfx-shadow:var(--g-color-private-black-200);--g-color-sfx-shadow-heavy:var(--g-color-private-black-400);--g-color-sfx-shadow-light:var(--g-color-private-black-200);--g-color-sfx-fade:var(--g-color-private-white-250);--g-color-scroll-track:var(--g-color-base-background);--g-color-scroll-handle:var(--g-color-private-white-150);--g-color-scroll-handle-hover:var(--g-color-private-white-250);--g-color-scroll-corner:var(--g-color-private-white-150);--g-color-infographics-axis:var(--g-color-private-white-150-solid);--g-color-infographics-tooltip-bg:var(--g-color-private-white-opaque-150)}.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar){scrollbar-color:var(--g-color-scroll-handle) var(--g-color-scroll-track);scrollbar-width:var(--g-scrollbar-width)}.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar) ::-webkit-scrollbar,.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar)::-webkit-scrollbar{background:var(--g-color-scroll-track);height:var(--g-scrollbar-width);width:var(--g-scrollbar-width)}.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar) ::-webkit-scrollbar-track,.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar)::-webkit-scrollbar-track{background:var(--g-color-scroll-track)}.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar) ::-webkit-scrollbar-corner,.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar)::-webkit-scrollbar-corner{background:var(--g-color-scroll-corner)}.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar) ::-webkit-scrollbar-thumb,.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar)::-webkit-scrollbar-thumb{background:var(--g-color-scroll-handle)}.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar) ::-webkit-scrollbar-thumb:hover,.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar)::-webkit-scrollbar-thumb:hover{background:var(--g-color-scroll-handle-hover)}@keyframes g-loading-animation{0%{background-position:-12px 0}to{background-position:0 0}}:root:has(body.g-root_theme_light),:root:has(body.g-root_theme_light-hc){color-scheme:light}:root:has(body.g-root_theme_dark),:root:has(body.g-root_theme_dark-hc){color-scheme:dark}:root{--data-table-header-vertical-padding:5px;--data-table-cell-vertical-padding:5px;--data-table-cell-horizontal-padding:10px;--data-table-cell-border-padding:var(--data-table-cell-horizontal-padding);--data-table-cell-align:top;--data-table-head-align:top;--data-table-row-height:30px;--data-table-sort-icon-space:18px;--data-table-sort-icon-opacity-inactive:0.15;--data-table-sort-icon-color:inherit}.data-table{box-sizing:border-box;position:relative}.data-table__box{box-sizing:border-box;height:100%;width:100%}.data-table__box_sticky-head_moving{overflow:visible;position:relative;z-index:0}.data-table__box_sticky-head_moving .data-table__th{border-bottom:0;border-top:0;padding-bottom:0;padding-top:0}.data-table__box_sticky-head_moving .data-table__head-cell{display:block;height:0;overflow:hidden}.data-table__box_sticky-head_moving .data-table__row_header-data{visibility:hidden}.data-table__box_sticky-footer_fixed,.data-table__box_sticky-head_fixed{overflow:auto}.data-table__table{border-collapse:collapse;table-layout:fixed}.data-table__table_sticky{background:var(--data-table-color-base);width:100%}.data-table__row{height:30px;height:var(--data-table-row-height)}.data-table__th{border:1px solid var(--data-table-border-color);box-sizing:border-box;cursor:default;font-weight:500;padding:5px 10px;padding:var(--data-table-header-vertical-padding) var(--data-table-cell-horizontal-padding);position:relative;text-align:left;vertical-align:top;vertical-align:var(--data-table-head-align)}.data-table__th_sortable{cursor:pointer}.data-table__th_sortable .data-table__head-cell{padding-right:18px;padding-right:var(--data-table-sort-icon-space)}.data-table__th_sortable.data-table__th_align_right .data-table__head-cell{padding-left:18px;padding-left:var(--data-table-sort-icon-space);padding-right:0}.data-table__th_sortable.data-table__th_align_right .data-table__sort-icon{left:0;right:auto;transform:translateY(-50%) scaleX(-1)}.data-table__td{border:1px solid var(--data-table-border-color);box-sizing:border-box;overflow:hidden;padding:5px 10px;padding:var(--data-table-cell-vertical-padding) var(--data-table-cell-horizontal-padding);text-overflow:ellipsis;vertical-align:top;vertical-align:var(--data-table-cell-align);white-space:nowrap}.data-table__td_index,.data-table__th_index{text-align:right}.data-table__td_align_left,.data-table__th_align_left{text-align:left}.data-table__td_align_center,.data-table__th_align_center{text-align:center}.data-table__td_align_right,.data-table__th_align_right{text-align:right}.data-table__td:first-child,.data-table__th:first-child{padding-left:10px;padding-left:var(--data-table-cell-border-padding)}.data-table__td:last-child,.data-table__th:last-child{padding-right:10px;padding-right:var(--data-table-cell-border-padding)}.data-table__index{text-align:right}.data-table__head-cell{box-sizing:border-box;display:inline-block;max-width:100%;overflow:hidden;position:relative;text-overflow:ellipsis;vertical-align:top;white-space:nowrap}.data-table__error{padding:20px;white-space:pre-wrap}.data-table__sort-icon{color:inherit;color:var(--data-table-sort-icon-color);display:inline-flex;position:absolute;right:0;top:50%;transform:translateY(-50%)}.data-table__sort-icon:after{content:attr(data-index);font-size:8px;left:100%;position:absolute;top:-5px}.data-table__sort-icon_shadow{opacity:.15;opacity:var(--data-table-sort-icon-opacity-inactive)}.data-table__sort-icon_shadow:after{content:none}.data-table__icon{vertical-align:top}.data-table__no-data{background:var(--data-table-color-stripe)}.data-table__sticky_fixed{left:0;overflow:hidden;position:absolute;right:0;z-index:1}.data-table__sticky_fixed.data-table__sticky_head{top:0}.data-table__sticky_fixed.data-table__sticky_footer{bottom:0}.data-table__sticky_moving{margin-bottom:-1px;position:-webkit-sticky;position:sticky;z-index:1}.data-table_striped-rows .data-table__row_odd{background:var(--data-table-color-stripe)}.data-table_highlight-rows .data-table__row:hover{background:var(--data-table-color-hover-area)}.data-table_header_multiline .data-table__head-cell{white-space:normal}.data-table_header_pre .data-table__head-cell{white-space:pre}.data-table__foot{background:var(--data-table-color-footer-area)}.data-table__foot_has-sticky-footer_moving{visibility:hidden}.data-table_theme_yandex-cloud{--data-table-color-base:var(--g-color-base-background,var(--yc-color-base-background));--data-table-color-stripe:var( --g-color-base-generic-ultralight,var(--yc-color-base-generic-ultralight) );--data-table-border-color:var( --g-color-base-generic-hover,var(--yc-color-base-generic-hover) );--data-table-color-hover-area:var( --g-color-base-simple-hover,var(--yc-color-base-simple-hover) );--data-table-color-footer-area:var(--data-table-color-base)}.data-table_theme_legacy{--data-table-color-base:#fff;--data-table-color-stripe:#00000008;--data-table-border-color:#ddd;--data-table-color-hover-area:#ffeba0;--data-table-color-footer-area:var(--data-table-color-base)}.data-table__resize-handler{background-color:var(--g-color-base-generic);cursor:col-resize;height:100%;position:absolute;right:0;top:0;visibility:hidden;width:6px}.data-table__resize-handler_resizing,.data-table__th:hover>.data-table__resize-handler{visibility:visible}.ydb-error-boundary{align-items:flex-start;display:flex;flex-direction:row;font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);padding:20px}.ydb-error-boundary__illustration{height:230px;margin-right:20px;width:230px}.ydb-error-boundary__error-title{font-size:var(--g-text-subheader-3-font-size);line-height:var(--g-text-subheader-3-line-height);margin-top:44px}.ydb-error-boundary__error-description{margin-top:12px}.ydb-error-boundary__show-details{margin-top:8px}.ydb-error-boundary__error-details{background-color:var(--g-color-base-generic-ultralight);border:1px solid var(--g-color-line-generic);padding:13px 18px}.ydb-error-boundary__actions{display:flex;flex-direction:row;gap:10px;margin-top:20px}.g-disclosure_size_m .g-disclosure__trigger{font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-disclosure_size_l .g-disclosure__trigger{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.g-disclosure_size_xl .g-disclosure__trigger{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.g-disclosure__trigger{align-items:center;background:none;border:none;border-radius:var(--g-focus-border-radius);color:inherit;cursor:pointer;display:flex;flex-flow:row nowrap;flex-shrink:0;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);font-weight:inherit;gap:8px;line-height:inherit;outline:none;padding:0}.g-disclosure__trigger:focus-visible{outline:2px solid var(--g-color-line-focus)}.g-disclosure__trigger_arrow_end{flex-direction:row-reverse}.g-disclosure__trigger_disabled{color:var(--g-color-text-secondary);cursor:auto}.g-disclosure__content{display:none}.g-disclosure__content_visible{display:block}.g-disclosure__content.g-disclosure_exit_active{animation-duration:.1s;animation-name:g-disclosure-collapsed;display:block;opacity:0}.g-disclosure__content.g-disclosure_enter_active{animation-duration:.2s;animation-name:g-disclosure-expanded}@keyframes g-disclosure-expanded{0%{opacity:.4}to{opacity:1}}@keyframes g-disclosure-collapsed{0%{opacity:1}to{opacity:0}}.g-icon{color:inherit;line-height:0;vertical-align:top}.g-arrow-toggle{display:inline-block;transition:transform .1s ease-out;vertical-align:middle}.g-arrow-toggle_direction_bottom{transform:matrix(1,0,0,1,0,0)}.g-arrow-toggle_direction_left{transform:matrix(0,1,-1,0,0,0)}.g-arrow-toggle_direction_top{transform:matrix(-1,0,0,-1,0,0)}.g-arrow-toggle_direction_right{transform:matrix(0,-1,1,0,0,0)}.g-button{--_--text-color:var(--g-color-text-primary);--_--text-color-hover:var(--_--text-color);--_--background-color:#0000;--_--background-color-hover:var(--g-color-base-simple-hover);--_--border-width:0;--_--border-color:currentColor;--_--focus-outline-color:var(--g-color-line-focus);--_--focus-outline-offset:0;--_--font-size:var(--g-text-body-1-font-size);-webkit-tap-highlight-color:rgba(0,0,0,0);background:none;background:#0000;border:none;box-sizing:border-box;color:inherit;color:var(--_--text-color);color:var(--g-button-text-color,var(--_--text-color));cursor:pointer;display:inline-flex;font-family:var(--g-text-body-font-family);font-size:inherit;font-size:var(--_--font-size);font-size:var(--g-button-font-size,var(--_--font-size));font-weight:var(--g-text-body-font-weight);gap:var(--_--icon-offset);gap:var(--g-button-icon-offset,var(--_--icon-offset));height:var(--_--height);height:var(--g-button-height,var(--_--height));justify-content:center;line-height:var(--_--height);line-height:var(--g-button-height,var(--_--height));outline:none;overflow:visible;padding:0;padding:0 var(--g-button-padding,var(--_--padding));position:relative;text-align:center;text-decoration:none;touch-action:manipulation;transform:scale(1);transition:transform .1s ease-out,color .15s linear;-webkit-user-select:none;user-select:none;white-space:nowrap}.g-button:before{background-color:var(--_--background-color);background-color:var(--g-button-background-color,var(--_--background-color));border:var(--g-button-border-width,var(--_--border-width)) var(--g-button-border-style,solid) var(--g-button-border-color,var(--_--border-color));content:"";inset:0;position:absolute;transition:background-color .15s linear;z-index:-1}.g-button:hover{color:var(--_--text-color-hover);color:var(--g-button-text-color-hover,var(--_--text-color-hover))}.g-button:hover:before{background-color:var(--_--background-color-hover);background-color:var(--g-button-background-color-hover,var(--_--background-color-hover))}.g-button:focus-visible:before{outline:var(--_--focus-outline-color) solid 2px;outline:var(--g-button-focus-outline-color,var(--_--focus-outline-color)) var(--g-button-focus-outline-style,solid) var(--g-button-focus-outline-width,2px);outline-offset:var(--_--focus-outline-offset);outline-offset:var(--g-button-focus-outline-offset,var(--_--focus-outline-offset))}.g-button:after{content:"";inset:0;position:absolute;transform:scale(1);transition:none;z-index:-1}.g-button:active{transform:scale(.96);transition:none}.g-button:active:after{transform:scale(1.042)}.g-button_size_xs{--_--height:20px;--_--border-radius:var(--g-border-radius-xs);--_--padding:6px;--_--icon-size:12px;--_--icon-offset:4px}.g-button_size_s{--_--height:24px;--_--border-radius:var(--g-border-radius-s);--_--padding:8px;--_--icon-size:16px;--_--icon-offset:4px}.g-button_size_m{--_--height:28px;--_--border-radius:var(--g-border-radius-m);--_--padding:12px;--_--icon-size:16px;--_--icon-offset:8px}.g-button_size_l{--_--height:36px;--_--border-radius:var(--g-border-radius-l);--_--padding:16px;--_--icon-size:16px;--_--icon-offset:8px}.g-button_size_xl{--_--height:44px;--_--border-radius:var(--g-border-radius-xl);--_--padding:24px;--_--icon-size:20px;--_--icon-offset:12px;--_--font-size:var(--g-text-body-2-font-size)}.g-button_view_normal{--_--background-color:var(--g-color-base-generic);--_--background-color-hover:var(--g-color-base-generic-hover)}.g-button_view_action{--_--text-color:var(--g-color-text-brand-contrast);--_--background-color:var(--g-color-base-brand);--_--background-color-hover:var(--g-color-base-brand-hover);--_--focus-outline-color:var(--g-color-base-brand);--_--focus-outline-offset:1px}.g-button_view_outlined{--_--border-width:1px;--_--border-color:var(--g-color-line-generic)}.g-button_view_outlined-info{--_--text-color:var(--g-color-text-info);--_--border-width:1px;--_--border-color:var(--g-color-line-info)}.g-button_view_outlined-success{--_--text-color:var(--g-color-text-positive);--_--border-width:1px;--_--border-color:var(--g-color-line-positive)}.g-button_view_outlined-warning{--_--text-color:var(--g-color-text-warning);--_--border-width:1px;--_--border-color:var(--g-color-line-warning)}.g-button_view_outlined-danger{--_--text-color:var(--g-color-text-danger);--_--border-width:1px;--_--border-color:var(--g-color-line-danger)}.g-button_view_outlined-utility{--_--text-color:var(--g-color-text-utility);--_--border-width:1px;--_--border-color:var(--g-color-line-utility)}.g-button_view_outlined-action{--_--text-color:var(--g-color-text-brand);--_--border-width:1px;--_--border-color:var(--g-color-line-brand)}.g-button_view_raised{--_--background-color-hover:var(--g-color-base-float-hover);background:var(--g-color-base-float)}.g-button_view_raised:before{box-shadow:0 3px 5px var(--g-color-sfx-shadow)}.g-button_view_raised:active:before{box-shadow:0 1px 2px var(--g-color-sfx-shadow)}.g-button_view_flat-secondary{--_--text-color:var(--g-color-text-secondary);--_--text-color-hover:var(--g-color-text-primary)}.g-button_view_flat-info{--_--text-color:var(--g-color-text-info)}.g-button_view_flat-success{--_--text-color:var(--g-color-text-positive)}.g-button_view_flat-warning{--_--text-color:var(--g-color-text-warning)}.g-button_view_flat-danger{--_--text-color:var(--g-color-text-danger)}.g-button_view_flat-utility{--_--text-color:var(--g-color-text-utility)}.g-button_view_flat-action{--_--text-color:var(--g-color-text-brand)}.g-button_view_normal-contrast{--_--text-color:var(--g-color-text-dark-primary);--_--background-color:var(--g-color-base-light);--_--background-color-hover:var(--g-color-base-light-hover);--_--focus-outline-color:var(--g-color-line-light)}.g-button_view_outlined-contrast{--_--text-color:var(--g-color-text-light-primary);--_--background-color-hover:var(--g-color-base-light-simple-hover);--_--border-width:1px;--_--border-color:var(--g-color-line-light);--_--focus-outline-color:var(--g-color-line-light)}.g-button_view_flat-contrast{--_--text-color:var(--g-color-text-light-primary);--_--background-color-hover:var(--g-color-base-light-simple-hover);--_--focus-outline-color:var(--g-color-line-light)}.g-button.g-button_pin_round-round.g-button{border-radius:var(--_--border-radius);border-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_brick-brick.g-button{border-radius:0}.g-button.g-button_pin_clear-clear.g-button{border-inline:0;border-radius:0}.g-button.g-button_pin_circle-circle.g-button{border-radius:100px}.g-button.g-button_pin_round-brick.g-button{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_brick-round.g-button{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-end-start-radius:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-button.g-button_pin_round-clear.g-button{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-button-border-radius,var(--_--border-radius));border-inline-end:0;border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_clear-round.g-button{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-end-start-radius:0;border-inline-start:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-button.g-button_pin_brick-clear.g-button{border-inline-end:0;border-radius:0}.g-button.g-button_pin_clear-brick.g-button{border-inline-start:0;border-radius:0}.g-button.g-button_pin_circle-brick.g-button{border-end-end-radius:0;border-end-start-radius:100px;border-start-end-radius:0;border-start-start-radius:100px}.g-button.g-button_pin_brick-circle.g-button{border-end-end-radius:100px;border-end-start-radius:0;border-start-end-radius:100px;border-start-start-radius:0}.g-button.g-button_pin_circle-clear.g-button{border-end-end-radius:0;border-end-start-radius:100px;border-inline-end:0;border-start-end-radius:0;border-start-start-radius:100px}.g-button.g-button_pin_clear-circle.g-button{border-end-end-radius:100px;border-end-start-radius:0;border-inline-start:0;border-start-end-radius:100px;border-start-start-radius:0}.g-button.g-button_pin_round-round:before{border-radius:var(--_--border-radius);border-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_brick-brick:before{border-radius:0}.g-button.g-button_pin_clear-clear:before{border-inline:0;border-radius:0}.g-button.g-button_pin_circle-circle:before{border-radius:100px}.g-button.g-button_pin_round-brick:before{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_brick-round:before{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-end-start-radius:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-button.g-button_pin_round-clear:before{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-button-border-radius,var(--_--border-radius));border-inline-end:0;border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_clear-round:before{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-end-start-radius:0;border-inline-start:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-button.g-button_pin_brick-clear:before{border-inline-end:0;border-radius:0}.g-button.g-button_pin_clear-brick:before{border-inline-start:0;border-radius:0}.g-button.g-button_pin_circle-brick:before{border-end-end-radius:0;border-end-start-radius:100px;border-start-end-radius:0;border-start-start-radius:100px}.g-button.g-button_pin_brick-circle:before{border-end-end-radius:100px;border-end-start-radius:0;border-start-end-radius:100px;border-start-start-radius:0}.g-button.g-button_pin_circle-clear:before{border-end-end-radius:0;border-end-start-radius:100px;border-inline-end:0;border-start-end-radius:0;border-start-start-radius:100px}.g-button.g-button_pin_clear-circle:before{border-end-end-radius:100px;border-end-start-radius:0;border-inline-start:0;border-start-end-radius:100px;border-start-start-radius:0}.g-button.g-button_pin_round-round:after{border-radius:var(--_--border-radius);border-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_brick-brick:after{border-radius:0}.g-button.g-button_pin_clear-clear:after{border-inline:0;border-radius:0}.g-button.g-button_pin_circle-circle:after{border-radius:100px}.g-button.g-button_pin_round-brick:after{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_brick-round:after{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-end-start-radius:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-button.g-button_pin_round-clear:after{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-button-border-radius,var(--_--border-radius));border-inline-end:0;border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_clear-round:after{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-end-start-radius:0;border-inline-start:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-button.g-button_pin_brick-clear:after{border-inline-end:0;border-radius:0}.g-button.g-button_pin_clear-brick:after{border-inline-start:0;border-radius:0}.g-button.g-button_pin_circle-brick:after{border-end-end-radius:0;border-end-start-radius:100px;border-start-end-radius:0;border-start-start-radius:100px}.g-button.g-button_pin_brick-circle:after{border-end-end-radius:100px;border-end-start-radius:0;border-start-end-radius:100px;border-start-start-radius:0}.g-button.g-button_pin_circle-clear:after{border-end-end-radius:0;border-end-start-radius:100px;border-inline-end:0;border-start-end-radius:0;border-start-start-radius:100px}.g-button.g-button_pin_clear-circle:after{border-end-end-radius:100px;border-end-start-radius:0;border-inline-start:0;border-start-end-radius:100px;border-start-start-radius:0}.g-button__text{display:inline-block;white-space:nowrap}.g-button__icon{display:inline-block;height:var(--_--height);height:var(--g-button-height,var(--_--height));margin:0 calc((var(--g-button-height, var(--_--height)) - var(--g-button-icon-size, var(--_--icon-size)))/2*-1);pointer-events:none;position:relative;width:var(--_--height);width:var(--g-button-height,var(--_--height))}.g-button__icon:after{content:" ";visibility:hidden}.g-button__icon-inner{align-items:center;display:flex;inset:0;justify-content:center;position:absolute}.g-button__icon_side_start{order:-1}.g-button__icon_side_end{order:1}.g-button:has(.g-button__icon:only-child){--_--padding:0}.g-button:has(.g-button__icon:only-child):not(.g-button_width_max){width:var(--_--height);width:var(--g-button-height,var(--_--height))}.g-button_disabled{cursor:default;pointer-events:none}.g-button_disabled:not(.g-button_loading){--_--text-color:var(--g-color-text-hint);--_--background-color:var(--g-color-base-generic-accent-disabled);--_--background-color-hover:var(--g-color-base-generic-accent-disabled);--_--border-width:0}.g-button_disabled:not(.g-button_loading):is(.g-button_view_normal-contrast,.g-button_view_outlined-contrast){--_--text-color:var(--g-color-text-light-secondary);--_--background-color:var(--g-color-base-light-disabled);--_--background-color-hover:var(--g-color-base-light-disabled)}.g-button_disabled:not(.g-button_loading):is(.g-button_view_flat,.g-button_view_flat-secondary,.g-button_view_flat-info,.g-button_view_flat-success,.g-button_view_flat-warning,.g-button_view_flat-danger,.g-button_view_flat-utility,.g-button_view_flat-action,.g-button_view_flat-contrast){--_--text-color:var(--g-color-text-hint);--_--background-color:#0000;--_--background-color-hover:#0000}.g-button_disabled:not(.g-button_loading).g-button_view_flat-contrast{--_--text-color:var(--g-color-text-light-hint)}.g-button_disabled:active{transform:scale(1)}.g-button_selected:not(.g-button_view_outlined-contrast){--_--border-width:0}.g-button_selected:not(.g-button_view_normal-contrast,.g-button_view_flat-contrast,.g-button_view_outlined-contrast){--_--text-color:var(--g-color-text-brand-heavy);--_--background-color:var(--g-color-base-selection);--_--background-color-hover:var(--g-color-base-selection-hover)}.g-button_selected.g-button_view_flat-info,.g-button_selected.g-button_view_outlined-info{--_--text-color:var(--g-color-text-info-heavy);--_--background-color:var(--g-color-base-info-light);--_--background-color-hover:var(--g-color-base-info-light-hover)}.g-button_selected.g-button_view_flat-success,.g-button_selected.g-button_view_outlined-success{--_--text-color:var(--g-color-text-positive-heavy);--_--background-color:var(--g-color-base-positive-light);--_--background-color-hover:var(--g-color-base-positive-light-hover)}.g-button_selected.g-button_view_flat-warning,.g-button_selected.g-button_view_outlined-warning{--_--text-color:var(--g-color-text-warning-heavy);--_--background-color:var(--g-color-base-warning-light);--_--background-color-hover:var(--g-color-base-warning-light-hover)}.g-button_selected.g-button_view_flat-danger,.g-button_selected.g-button_view_outlined-danger{--_--text-color:var(--g-color-text-danger-heavy);--_--background-color:var(--g-color-base-danger-light);--_--background-color-hover:var(--g-color-base-danger-light-hover)}.g-button_selected.g-button_view_flat-utility,.g-button_selected.g-button_view_outlined-utility{--_--text-color:var(--g-color-text-utility-heavy);--_--background-color:var(--g-color-base-utility-light);--_--background-color-hover:var(--g-color-base-utility-light-hover)}.g-button_loading:before{animation:g-loading-animation .5s linear infinite;background-clip:padding-box;background-image:repeating-linear-gradient(-45deg,var(--_--background-color),var(--_--background-color) 4px,var(--_--background-color-hover) 4px,var(--_--background-color-hover) 8px);background-image:repeating-linear-gradient(-45deg,var(--g-button-background-color,var(--_--background-color)),var(--g-button-background-color,var(--_--background-color)) 4px,var(--g-button-background-color-hover,var(--_--background-color-hover)) 4px,var(--g-button-background-color-hover,var(--_--background-color-hover)) 8px);background-size:150%}.g-button_width_auto{max-width:100%}.g-button_width_max{width:100%}.g-button_width_auto .g-button__text,.g-button_width_max .g-button__text{display:block;overflow:hidden;text-overflow:ellipsis}.gc-help-popover__button{background:none;border:none;color:inherit;color:var(--g-color-text-hint);cursor:pointer;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);outline:none;padding:0}.gc-help-popover__button:focus-visible{border-radius:50%;outline:2px solid var(--g-color-line-focus)}.g-popover{display:inline-block;position:relative}.g-popover:not(.g-popover_disabled){cursor:pointer}.g-popover__handler{display:inline-block}.g-popover__tooltip{--_--padding:16px;--_--close-offset:8px;--_--close-size:24px}.g-popover__tooltip-popup-content{box-sizing:border-box;cursor:default;max-width:300px;max-width:var(--g-popover-max-width,300px);min-height:40px;padding:var(--g-popover-padding,var(--_--padding))}.g-popover__tooltip-title{display:inline-flex;font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height);margin:0 0 12px}.g-popover__tooltip-buttons{display:flex;flex-wrap:wrap;gap:5px;margin-block-start:20px}.g-popover__tooltip-button{flex:1 1}.g-popover__tooltip-close{inset-block-start:var(--_--close-offset);inset-inline-end:var(--_--close-offset);position:absolute}.g-popover__tooltip-content{font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height);overflow-wrap:break-word}.g-popover__tooltip-content_secondary{opacity:.7}.g-popover__tooltip-links>*{margin-block-start:8px}.g-popover__tooltip-links>:first-child{margin-block-start:0}.g-popover__tooltip-content+.g-popover__tooltip-links>:first-child{margin-block-start:12px}.g-popover__tooltip-link{display:inline-block;font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-popover__tooltip_theme_announcement .g-popover__tooltip_theme_announcement,.g-popover__tooltip_theme_announcement.g-popover__tooltip_theme_info,.g-popover__tooltip_theme_info .g-popover__tooltip_theme_announcement,.g-popover__tooltip_theme_info.g-popover__tooltip_theme_info{color:var(--g-color-text-primary)}.g-popover__tooltip_force-links-appearance.g-popover__tooltip_theme_info .g-popover__tooltip-content a:not(.g-button),.g-popover__tooltip_theme_announcement .g-popover__tooltip-content a:not(.g-button){color:var(--g-color-text-link);text-decoration:none}.g-popover__tooltip_force-links-appearance.g-popover__tooltip_theme_info .g-popover__tooltip-content a:not(.g-button):hover,.g-popover__tooltip_theme_announcement .g-popover__tooltip-content a:not(.g-button):hover{color:var(--g-color-text-link-hover)}.g-popover__tooltip_theme_announcement{--g-popup-background-color:var(--g-color-base-simple-hover-solid);--g-popup-border-color:var(--g-color-base-simple-hover-solid)}.g-popover__tooltip_theme_special{--g-popup-background-color:var(--g-color-base-brand);--g-popup-border-color:var(--g-color-base-brand);color:var(--g-color-text-light-primary)}.g-popover__tooltip_theme_special .g-popover__tooltip-content a:not(.g-button){color:var(--g-color-text-light-primary);font-weight:var(--g-text-accent-font-weight)}.g-popover__tooltip_theme_special .g-popover__tooltip-content a:not(.g-button):hover{color:var(--g-color-text-light-secondary)}.g-popover__tooltip_theme_special .g-link{color:var(--g-color-text-light-primary)}.g-popover__tooltip_theme_special .g-link:hover{color:var(--g-color-text-light-secondary)}.g-popover__tooltip_size_l{--_--padding:24px}.g-popover__tooltip_size_l .g-popover__tooltip-title{font-size:var(--g-text-header-1-font-size);font-weight:var(--g-text-header-font-weight);line-height:var(--g-text-header-1-line-height)}.g-popover__tooltip_size_l .g-popover__tooltip-content{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.g-popover__tooltip_with-close .g-popover__tooltip-content,.g-popover__tooltip_with-close .g-popover__tooltip-title{padding-inline-end:calc(var(--_--close-offset) + var(--_--close-size) - var(--_--padding))}.g-popup{--_--background-color:var(--g-popup-background-color,var(--g-color-base-float));--_--border-color:var(--g-popup-border-color,var(--g-color-line-generic-solid));--_--border-width:var(--g-popup-border-width,1px);visibility:hidden;z-index:1000}.g-popup_exit_active,.g-popup_open{visibility:visible}.g-popup_exit_active[data-popper-placement*=bottom] .g-popup__content{animation-name:g-popup-bottom}.g-popup_exit_active[data-popper-placement*=top] .g-popup__content{animation-name:g-popup-top}.g-popup_exit_active[data-popper-placement*=left] .g-popup__content{animation-name:g-popup-left}.g-popup_exit_active[data-popper-placement*=right] .g-popup__content{animation-name:g-popup-right}.g-popup_appear_active[data-popper-placement*=bottom] .g-popup__content,.g-popup_enter_active[data-popper-placement*=bottom] .g-popup__content{animation-name:g-popup-bottom-open}.g-popup_appear_active[data-popper-placement*=top] .g-popup__content,.g-popup_enter_active[data-popper-placement*=top] .g-popup__content{animation-name:g-popup-top-open}.g-popup_appear_active[data-popper-placement*=left] .g-popup__content,.g-popup_enter_active[data-popper-placement*=left] .g-popup__content{animation-name:g-popup-left-open}.g-popup_appear_active[data-popper-placement*=right] .g-popup__content,.g-popup_enter_active[data-popper-placement*=right] .g-popup__content{animation-name:g-popup-right-open}.g-popup[data-popper-placement*=bottom] .g-popup__arrow{inset-block-start:-9px}.g-popup[data-popper-placement*=top] .g-popup__arrow{inset-block-end:-9px}.g-popup[data-popper-placement*=top] .g-popup__arrow-content{transform:rotate(180deg)}.g-popup[data-popper-placement*=left] .g-popup__arrow{right:-9px}.g-popup[data-popper-placement*=left] .g-popup__arrow-content{transform:rotate(90deg)}.g-popup[data-popper-placement*=right] .g-popup__arrow{left:-9px}.g-popup[data-popper-placement*=right] .g-popup__arrow-content{transform:rotate(-90deg)}.g-popup__content{animation-duration:.1s;animation-fill-mode:forwards;animation-timing-function:ease-out;background-color:var(--_--background-color);border-radius:4px;box-shadow:0 0 0 var(--_--border-width) var(--_--border-color),0 8px 20px var(--_--border-width) var(--g-color-sfx-shadow);outline:none;position:relative}.g-popup__content>.g-popup__arrow+*,.g-popup__content>:first-child:not(.g-popup__arrow){border-start-end-radius:inherit;border-start-start-radius:inherit}.g-popup__content>:last-child{border-end-end-radius:inherit;border-end-start-radius:inherit}.g-popup__arrow-content{display:flex;height:18px;overflow:hidden;position:relative;width:18px}.g-popup__arrow-circle-wrapper{background-color:initial;height:9px;overflow:hidden;position:relative;width:9px}.g-popup__arrow-circle{border-radius:50%;box-shadow:inset 0 0 0 calc(5px - var(--_--border-width)) var(--_--background-color),inset 0 0 0 5px var(--_--border-color);box-sizing:border-box;height:30px;position:absolute;width:28px}.g-popup__arrow-circle_left{inset-block-end:-4px;inset-inline-end:-5px}.g-popup__arrow-circle_right{inset-block-end:-4px;inset-inline-start:-5px}@keyframes g-popup-bottom{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}@keyframes g-popup-bottom-open{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes g-popup-top{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}@keyframes g-popup-top-open{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes g-popup-left{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-10px)}}@keyframes g-popup-left-open{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}@keyframes g-popup-right{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(10px)}}@keyframes g-popup-right-open{0%{opacity:0;transform:translateX(10px)}to{opacity:1;transform:translateX(0)}}.g-portal__theme-wrapper{display:contents}.g-link{-webkit-tap-highlight-color:rgba(0,0,0,0);border-radius:var(--g-focus-border-radius);cursor:pointer;text-decoration:none;touch-action:manipulation}.g-link:focus-visible{outline:2px solid var(--g-color-line-focus)}.g-link_view_normal{color:var(--g-color-text-link)}.g-link_view_primary{color:var(--g-color-text-primary)}.g-link_view_secondary{color:var(--g-color-text-secondary)}.g-link_view_normal:hover,.g-link_view_primary:hover,.g-link_view_secondary:hover{color:var(--g-color-text-link-hover)}.g-link_visitable:visited{color:var(--g-color-text-link-visited)}.g-link_visitable:visited:hover{color:var(--g-color-text-link-visited-hover)}.g-toast-animation-mobile_enter{opacity:0;position:absolute}.g-toast-animation-mobile_enter_active{animation:g-toast-enter-mobile .6s ease-out forwards;position:relative}.g-toast-animation-mobile_exit_active{animation:g-toast-exit-mobile .6s ease-in forwards}@keyframes g-toast-enter-mobile{0%{height:0;margin-block-end:0;opacity:0;padding:0;transform:translateY(10px)}50%{height:var(--_--item-height);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));opacity:0;padding:var(--g-toaster-item-padding,var(--_--item-padding));transform:translateY(10px)}to{opacity:1;transform:translateX(0)}}@keyframes g-toast-exit-mobile{0%{height:var(--_--item-height);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));opacity:1;padding:var(--g-toaster-item-padding,var(--_--item-padding));transform:translateX(0)}50%{height:var(--_--item-height);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));opacity:0;padding:var(--g-toaster-item-padding,var(--_--item-padding));transform:translateY(10px)}to{height:0;margin-block-end:0;opacity:0;padding:0;transform:translateY(10px)}}.g-toast-animation-desktop_enter{opacity:0;position:absolute}.g-toast-animation-desktop_enter_active{animation:g-toast-enter-desktop .6s ease-out forwards;position:relative}.g-toast-animation-desktop_exit_active{animation:g-toast-exit-desktop .6s ease-in forwards}@keyframes g-toast-enter-desktop{0%{height:0;margin-block-end:0;opacity:0;padding:0;transform:translateX(calc(var(--g-flow-direction)*10px))}50%{height:var(--_--item-height);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));opacity:0;padding:var(--g-toaster-item-padding,var(--_--item-padding));transform:translateX(calc(var(--g-flow-direction)*10px))}to{opacity:1;transform:translateX(0)}}@keyframes g-toast-exit-desktop{0%{height:var(--_--item-height);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));opacity:1;padding:var(--g-toaster-item-padding,var(--_--item-padding));transform:translateX(0)}50%{height:var(--_--item-height);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));opacity:0;padding:var(--g-toaster-item-padding,var(--_--item-padding));transform:translateX(calc(var(--g-flow-direction)*10px))}to{height:0;margin-block-end:0;opacity:0;padding:0;transform:translateX(calc(var(--g-flow-direction)*10px))}}.g-toaster{--_--width:312px;align-items:flex-end;display:flex;flex-direction:column;inset-block-end:0;inset-inline-end:10px;position:fixed;width:var(--_--width);width:var(--g-toaster-width,var(--_--width));z-index:100000}.g-toaster_mobile{--_--width:calc(100% - 20px);inset-inline-start:50%;transform:translate(-50%)}.g-toast{--_--item-gap:10px;--_--item-padding:16px;--_--background-color:var(--g-color-base-background);background-color:var(--_--background-color);border-radius:8px;box-shadow:0 0 15px var(--g-color-sfx-shadow);box-sizing:border-box;display:flex;font-size:var(--g-text-body-2-font-size);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));overflow:hidden;padding:var(--g-toaster-item-padding,var(--_--item-padding));position:relative;width:inherit;z-index:0}.g-toast_mobile{width:100%}.g-toast_theme_normal{--_--background-color:var(--g-color-base-float)}.g-toast_theme_info{--_--container-background-color:var(--g-color-base-info-light);--_--icon-color:var(--g-color-text-info-heavy)}.g-toast_theme_success{--_--container-background-color:var(--g-color-base-positive-light);--_--icon-color:var(--g-color-text-positive-heavy)}.g-toast_theme_warning{--_--container-background-color:var(--g-color-base-warning-light);--_--icon-color:var(--g-color-text-warning-heavy)}.g-toast_theme_danger{--_--container-background-color:var(--g-color-base-danger-light);--_--icon-color:var(--g-color-text-danger-heavy)}.g-toast_theme_utility{--_--container-background-color:var(--g-color-base-utility-light);--_--icon-color:var(--g-color-text-utility-heavy)}.g-toast__container{grid-row-gap:8px;display:grid;flex:1 1 auto;grid-template-columns:100%;height:100%;min-height:var(--g-text-body-2-line-height);min-width:0;row-gap:8px;width:100%}.g-toast__container:before{background-color:var(--_--container-background-color);content:"";height:100%;inset-block-start:0;inset-inline-start:0;pointer-events:none;position:absolute;width:100%;z-index:-1}.g-toast__icon-container{color:var(--_--icon-color);flex:0 0 auto;padding-block-start:2px;padding-inline-end:8px}.g-toast__title{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height);margin:0}.g-toast__content_without-title,.g-toast__title{padding-inline-end:32px}.g-toast__action{margin-inline-end:8px}.g-toast .g-toast__btn-close{inset-block-start:16px;inset-inline-end:16px;position:absolute}.g-switch{position:relative}.g-switch__control{cursor:pointer;opacity:0}.g-switch__indicator{display:inline-block;position:relative}.g-switch__indicator:before{background-color:var(--g-color-base-generic-medium);content:"";inset:0;position:absolute;transition:background .1s linear}.g-switch__indicator:after{content:" ";visibility:hidden}.g-switch__slider{background-color:var(--g-color-base-background);border-radius:50%;content:"";position:absolute;transition:transform .15s ease-out}.g-switch__outline{background:none;height:100%;inset-block-start:0;inset-inline-start:0;pointer-events:none;position:absolute;width:100%}.g-switch__control:focus-visible+.g-switch__outline{outline:2px solid var(--g-color-line-focus)}.g-switch_size_m .g-switch__indicator,.g-switch_size_m .g-switch__indicator:before,.g-switch_size_m .g-switch__outline{border-radius:10px;height:20px;width:36px}.g-switch_size_m .g-switch__slider{height:16px;inset-block-start:2px;inset-inline-start:2px;width:16px}.g-switch_size_m .g-switch__text{margin-block-start:3px}.g-switch_size_l .g-switch__indicator,.g-switch_size_l .g-switch__indicator:before,.g-switch_size_l .g-switch__outline{border-radius:12px;height:24px;width:42px}.g-switch_size_l .g-switch__slider{height:18px;inset-block-start:3px;inset-inline-start:3px;width:18px}.g-switch_size_l .g-switch__text{margin-block-start:4px}.g-switch:hover .g-switch__indicator:before{background-color:var(--g-color-base-generic-medium-hover)}.g-switch_checked .g-switch__slider{--_--translate-x:calc(100%*var(--g-flow-direction));transform:translateX(var(--_--translate-x))}.g-switch_checked .g-switch__indicator:before,.g-switch_checked:hover .g-switch__indicator:before{background-color:var(--g-color-base-brand)}.g-switch_disabled .g-switch__indicator:before{background-color:var(--g-color-base-generic-accent-disabled)}.g-switch_disabled.g-switch_checked .g-switch__indicator:before{background-color:var(--g-color-base-brand);opacity:.5}.g-control-label{-webkit-tap-highlight-color:rgba(0,0,0,0);color:var(--g-color-text-primary);cursor:pointer;display:inline-flex;font-family:var(--g-text-body-font-family);font-weight:var(--g-text-body-font-weight);touch-action:manipulation;-webkit-user-select:none;user-select:none}.g-control-label_disabled{cursor:default;pointer-events:none}.g-control-label_size_m{font-size:var(--g-text-body-1-font-size);line-height:15px}.g-control-label_size_l{font-size:var(--g-text-body-2-font-size);line-height:18px}.g-control-label__indicator{flex-shrink:0}.g-control-label__text{flex-grow:1;white-space:normal}.g-control-label_disabled .g-control-label__text{opacity:.6}.g-control-label_size_m .g-control-label__text{margin-inline-start:5px}.g-control-label_size_l .g-control-label__text{margin-inline-start:7px}.g-radio-button{--_--border-radius-inner:calc(var(--_--border-radius) - 3px);background-color:var(--g-color-base-generic);border-radius:var(--_--border-radius);box-sizing:border-box;display:inline-flex;flex-direction:row;font-family:var(--g-text-body-font-family);font-weight:var(--g-text-body-font-weight);position:relative}.g-radio-button__plate{inset-block:0;position:absolute;transition:left .2s,width .2s}.g-radio-button__plate[hidden]{display:none}.g-radio-button__option{border-radius:var(--_--border-radius-inner);cursor:pointer;flex:1 1 auto;font-size:var(--g-text-body-1-font-size);text-align:center;transform:scale(1);transition:color .15s linear;-webkit-user-select:none;user-select:none}.g-radio-button__option-outline{border-radius:var(--_--border-radius-inner);content:"";inset:3px;position:absolute;z-index:-1}.g-radio-button__option-control{border:none;cursor:inherit;height:100%;inset-block-start:0;inset-inline-start:0;margin:0;opacity:0;outline:none;padding:0;position:absolute;width:100%}.g-radio-button__option-control:focus-visible+.g-radio-button__option-outline{outline:2px solid var(--g-color-line-focus)}.g-radio-button__option-text{color:var(--g-color-text-complementary);display:inline-block;white-space:nowrap}.g-radio-button__option-text_icon{align-items:center;display:flex;height:100%}.g-radio-button__option:hover .g-radio-button__option-text,.g-radio-button__option_checked .g-radio-button__option-text{color:var(--g-color-text-primary)}.g-radio-button__option_checked{cursor:default}.g-radio-button__option_disabled{cursor:default;pointer-events:none}.g-radio-button__option_disabled .g-radio-button__option-text{color:var(--g-color-text-hint)}.g-radio-button__option:before,.g-radio-button__plate:before{border-radius:var(--_--border-radius-inner);inset:3px;position:absolute}.g-radio-button__option:before{z-index:-1}.g-radio-button__plate:before,.g-radio-button__plate[hidden]~.g-radio-button__option_checked:before{background-color:var(--g-color-base-background);content:""}.g-radio-button_size_s{--_--border-radius:var(--g-border-radius-s)}.g-radio-button_size_s .g-radio-button__option{height:24px;line-height:24px}.g-radio-button_size_s .g-radio-button__option-text{margin:0 10px}.g-radio-button_size_m{--_--border-radius:var(--g-border-radius-m)}.g-radio-button_size_m .g-radio-button__option{height:28px;line-height:28px}.g-radio-button_size_m .g-radio-button__option-text{margin:0 13px}.g-radio-button_size_l{--_--border-radius:var(--g-border-radius-l)}.g-radio-button_size_l .g-radio-button__option{height:36px;line-height:36px}.g-radio-button_size_l .g-radio-button__option-text{margin:0 18px}.g-radio-button_size_xl{--_--border-radius:var(--g-border-radius-xl)}.g-radio-button_size_xl .g-radio-button__option{font-size:var(--g-text-body-2-font-size);height:44px;line-height:44px}.g-radio-button_size_xl .g-radio-button__option-text{margin:0 25px}.g-radio-button_width_auto{max-width:100%}.g-radio-button_width_max{width:100%}.g-radio-button_width_auto .g-radio-button__option,.g-radio-button_width_max .g-radio-button__option{overflow:hidden}.g-radio-button_width_auto .g-radio-button__option-text,.g-radio-button_width_max .g-radio-button__option-text{display:block;overflow:hidden;text-overflow:ellipsis}.g-tabs{--_--vertical-item-padding:var(--g-tabs-vertical-item-padding,6px 20px);--_--vertical-item-height:var(--g-tabs-vertical-item-height,18px)}.g-tabs_size_m{--_--item-height:36px;--_--item-gap:24px;--_--item-border-width:2px}.g-tabs_size_m .g-tabs__item-counter,.g-tabs_size_m .g-tabs__item-title{font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-tabs_size_l{--_--item-height:40px;--_--item-gap:28px;--_--item-border-width:2px}.g-tabs_size_l .g-tabs__item-counter,.g-tabs_size_l .g-tabs__item-title{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.g-tabs_size_xl{--_--item-height:44px;--_--item-gap:32px;--_--item-border-width:3px}.g-tabs_size_xl .g-tabs__item-counter,.g-tabs_size_xl .g-tabs__item-title{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.g-tabs__item{cursor:pointer;outline:none;-webkit-user-select:none;user-select:none}.g-tabs__item-content{align-items:center;border-radius:var(--g-focus-border-radius);display:flex}.g-tabs__item_overflow .g-tabs__item-content{min-width:0}.g-tabs__item-icon{margin-inline-end:8px}.g-tabs__item-title{white-space:nowrap}.g-tabs__item_overflow .g-tabs__item-title{overflow:hidden;text-overflow:ellipsis}.g-tabs__item-counter,.g-tabs__item-label{margin-inline-start:8px}.g-tabs__item-icon>svg{display:block}.g-tabs_direction_horizontal{align-items:flex-end;box-shadow:inset 0 -1px 0 0 var(--g-color-line-generic);box-shadow:inset 0 calc(var(--g-tabs-border-width, 1px)*-1) 0 0 var(--g-color-line-generic);display:flex;flex-wrap:wrap;overflow:hidden}.g-tabs_direction_horizontal .g-tabs__item{align-items:center;border-block-end:var(--_--item-border-width) solid #0000;border-block-end:var(--g-tabs-item-border-width,var(--_--item-border-width)) solid #0000;box-sizing:border-box;display:flex;height:var(--_--item-height);height:var(--g-tabs-item-height,var(--_--item-height));padding-block-start:var(--_--item-border-width)}.g-tabs_direction_horizontal .g-tabs__item:focus-visible .g-tabs__item-content{outline:2px solid var(--g-color-line-focus);outline-offset:-2px}.g-tabs_direction_horizontal .g-tabs__item-meta{display:none}.g-tabs_direction_horizontal .g-tabs__item-title{color:var(--g-color-text-secondary)}.g-tabs_direction_horizontal .g-tabs__item-counter,.g-tabs_direction_horizontal .g-tabs__item-icon{color:var(--g-color-text-hint)}.g-tabs_direction_horizontal .g-tabs__item:focus-visible .g-tabs__item-title,.g-tabs_direction_horizontal .g-tabs__item:hover .g-tabs__item-title,.g-tabs_direction_horizontal .g-tabs__item_active .g-tabs__item-title{color:var(--g-color-text-primary)}.g-tabs_direction_horizontal .g-tabs__item:focus-visible .g-tabs__item-counter,.g-tabs_direction_horizontal .g-tabs__item:focus-visible .g-tabs__item-icon,.g-tabs_direction_horizontal .g-tabs__item:hover .g-tabs__item-counter,.g-tabs_direction_horizontal .g-tabs__item:hover .g-tabs__item-icon,.g-tabs_direction_horizontal .g-tabs__item_active .g-tabs__item-counter,.g-tabs_direction_horizontal .g-tabs__item_active .g-tabs__item-icon{color:var(--g-color-text-secondary)}.g-tabs_direction_horizontal .g-tabs__item_active,.g-tabs_direction_horizontal .g-tabs__item_active:focus-visible,.g-tabs_direction_horizontal .g-tabs__item_active:hover{border-color:var(--g-color-line-brand)}.g-tabs_direction_horizontal .g-tabs__item_disabled{pointer-events:none}.g-tabs_direction_horizontal .g-tabs__item_disabled .g-tabs__item-title{color:var(--g-color-text-hint)}.g-tabs_direction_horizontal>:not(:last-child){margin-inline-end:var(--_--item-gap);margin-inline-end:var(--g-tabs-item-gap,var(--_--item-gap))}.g-tabs_direction_vertical{display:flex;flex-direction:column}.g-tabs_direction_vertical .g-tabs__item{padding:var(--_--vertical-item-padding)}.g-tabs_direction_vertical .g-tabs__item-title{color:var(--g-color-text-primary);line-height:var(--_--vertical-item-height)}.g-tabs_direction_vertical .g-tabs__item-meta{color:var(--g-color-text-secondary);line-height:var(--_--vertical-item-height)}.g-tabs_direction_vertical .g-tabs__item-counter,.g-tabs_direction_vertical .g-tabs__item-icon{color:var(--g-color-text-secondary)}.g-tabs_direction_vertical .g-tabs__item:focus-visible,.g-tabs_direction_vertical .g-tabs__item:hover{background-color:var(--g-color-base-generic-hover)}.g-tabs_direction_vertical .g-tabs__item_active{background-color:var(--g-color-base-selection)}.g-tabs_direction_vertical .g-tabs__item_active:focus-visible,.g-tabs_direction_vertical .g-tabs__item_active:hover{background-color:var(--g-color-base-selection-hover)}.g-tabs_direction_vertical .g-tabs__item_disabled{pointer-events:none}.g-tabs_direction_vertical .g-tabs__item_disabled .g-tabs__item-title{color:var(--g-color-text-secondary)}.g-label{--border-size:0px;--_-bg-color:none;--_-bg-hover-color:none;--_-text-color:none;align-items:center;background-color:var(--_-bg-color);box-sizing:border-box;color:var(--_-text-color);display:inline-flex;isolation:isolate;position:relative;transition-duration:.15s;transition-property:opacity,color,background-color;transition-timing-function:ease-in-out}.g-label__text{align-items:baseline;display:flex;font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height);overflow:hidden;text-align:center;white-space:nowrap;width:100%}.g-label__content,.g-label__key{overflow:hidden;text-overflow:ellipsis}.g-label__value{display:flex;opacity:.7;overflow:hidden}.g-label__separator{margin:0 4px}.g-label__action-button{background:none;border:none;border-radius:inherit;color:inherit;cursor:pointer;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);outline:none;padding:0;z-index:1}.g-label__action-button:focus-visible{outline:2px solid var(--g-color-line-focus)}.g-label__action-button:empty{inset:0;position:absolute}.g-label .g-label__addon{align-items:center;display:flex;justify-content:center}.g-label .g-label__addon_side_left,.g-label .g-label__addon_side_right{inset-block-start:0;position:absolute}.g-label .g-label__addon_side_left{inset-inline-start:2px}.g-label .g-label__addon_side_right{inset-inline-end:0;z-index:2}.g-label .g-label__addon_interactive{--g-button-background-color:#0000;color:inherit;cursor:pointer;transition:color,background-color;transition-duration:.15s;transition-timing-function:ease-in-out}.g-label_size_xs{border-radius:var(--g-border-radius-xs);height:20px}.g-label_size_xs .g-label__text{line-height:20px;margin:0 8px}.g-label_size_xs .g-label__addon{--addon-size:calc(20px - var(--border-size)*2);height:var(--addon-size);width:var(--addon-size)}.g-label_size_xs.g-label_has-right-addon .g-label__text{margin-inline-end:22px}.g-label_size_xs.g-label_has-left-addon .g-label__text{margin-inline-start:24px}.g-label_size_s{border-radius:var(--g-border-radius-s);height:24px}.g-label_size_s .g-label__text{line-height:24px;margin:0 10px}.g-label_size_s .g-label__addon{--addon-size:calc(24px - var(--border-size)*2);height:var(--addon-size);width:var(--addon-size)}.g-label_size_s.g-label_has-right-addon .g-label__text{margin-inline-end:26px}.g-label_size_s.g-label_has-left-addon .g-label__text{margin-inline-start:28px}.g-label_size_m{border-radius:var(--g-border-radius-m);height:28px}.g-label_size_m .g-label__text{line-height:28px;margin:0 12px}.g-label_size_m .g-label__addon{--addon-size:calc(28px - var(--border-size)*2);height:var(--addon-size);width:var(--addon-size)}.g-label_size_m.g-label_has-right-addon .g-label__text{margin-inline-end:32px}.g-label_size_m.g-label_has-left-addon .g-label__text{margin-inline-start:32px}.g-label_disabled{opacity:.7;pointer-events:none}.g-label_is-interactive{cursor:pointer}.g-label_theme_normal{--_-bg-color:var(--g-color-base-misc-light);--_-bg-hover-color:var(--g-color-base-misc-light-hover);--_-text-color:var(--g-color-text-misc-heavy)}.g-label_theme_success{--_-bg-color:var(--g-color-base-positive-light);--_-bg-hover-color:var(--g-color-base-positive-light-hover);--_-text-color:var(--g-color-text-positive-heavy)}.g-label_theme_info{--_-bg-color:var(--g-color-base-info-light);--_-bg-hover-color:var(--g-color-base-info-light-hover);--_-text-color:var(--g-color-text-info-heavy)}.g-label_theme_warning{--_-bg-color:var(--g-color-base-warning-light);--_-bg-hover-color:var(--g-color-base-warning-light-hover);--_-text-color:var(--g-color-text-warning-heavy)}.g-label_theme_danger{--_-bg-color:var(--g-color-base-danger-light);--_-bg-hover-color:var(--g-color-base-danger-light-hover);--_-text-color:var(--g-color-text-danger-heavy)}.g-label_theme_utility{--_-bg-color:var(--g-color-base-utility-light);--_-bg-hover-color:var(--g-color-base-utility-light-hover);--_-text-color:var(--g-color-text-utility-heavy)}.g-label_theme_unknown{--_-bg-color:var(--g-color-base-neutral-light);--_-bg-hover-color:var(--g-color-base-neutral-light-hover);--_-text-color:var(--g-color-text-complementary)}.g-label_theme_clear{--_-bg-color:#0000;--_-bg-hover-color:var(--g-color-base-simple-hover-solid);--_-text-color:var(--g-color-text-complementary);--border-size:1px;border:var(--border-size) solid var(--g-color-line-generic)}.g-label_is-interactive:hover:not(:has(.g-label__addon_interactive:hover)){background-color:var(--_-bg-hover-color)}.g-label:not(.g-label_disabled) .g-label__addon_interactive{--g-button-background-color-hover:var(--_-bg-hover-color)}.g-label:not(.g-label_disabled) .g-label__addon_interactive:active,.g-label:not(.g-label_disabled) .g-label__addon_interactive:focus,.g-label:not(.g-label_disabled) .g-label__addon_interactive:hover{color:var(--_-text-color)}.g-text-input{--_--text-color:var(--g-color-text-primary);--_--label-color:inherit;--_--placeholder-color:var(--g-color-text-hint);--_--background-color:#0000;--_--border-width:1px;--_--focus-outline-color:var(--g-text-input-focus-outline-color);display:inline-block;position:relative;width:100%}.g-text-input__content{background-color:var(--_--background-color);background-color:var(--g-text-input-background-color,var(--_--background-color));border-color:var(--g-text-input-border-color,var(--_--border-color));border-style:solid;border-width:var(--g-text-input-border-width,var(--_--border-width));box-sizing:border-box;color:var(--_--text-color);color:var(--g-text-input-text-color,var(--_--text-color));display:flex;overflow:hidden;width:100%}.g-text-input__content:hover{border-color:var(--g-text-input-border-color-hover,var(--_--border-color-hover))}.g-text-input__content:focus-within{border-color:var(--g-text-input-border-color-active,var(--_--border-color-active));outline:2px solid var(--_--focus-outline-color);outline:2px solid var(--g-text-input-focus-outline-color,var(--_--focus-outline-color));outline-offset:-1px}.g-text-input__control{background-color:initial;border:none;box-sizing:border-box;color:inherit;display:inline-block;flex-grow:1;font-family:var(--g-text-body-font-family);font-weight:var(--g-text-body-font-weight);height:var(--g-text-input-height);margin:0;padding:0;position:relative;vertical-align:top;width:100%}.g-text-input__control::placeholder{color:var(--_--placeholder-color);color:var(--g-text-input-placeholder-color,var(--_--placeholder-color));overflow:hidden;white-space:nowrap}.g-text-input__control:focus{outline:none}.g-text-input__control[type=number]{-webkit-appearance:textfield;appearance:textfield}.g-text-input__label{box-sizing:border-box;color:var(--_--label-color);color:var(--g-text-input-label-color,var(--_--label-color));overflow:hidden;position:absolute;text-overflow:ellipsis;white-space:nowrap;z-index:1}.g-text-input__clear{flex-shrink:0;margin:auto 0}.g-text-input__clear_size_m,.g-text-input__clear_size_s{margin-inline-end:1px}.g-text-input__clear_size_l,.g-text-input__clear_size_xl{margin-inline-end:2px}.g-text-input__error-icon{box-sizing:initial;color:var(--g-color-text-danger);padding-block:var(--_--error-icon-padding-block);padding-inline:var(--_--error-icon-padding-inline)}.g-text-input__additional-content{align-items:center;display:flex}.g-text-input_size_s{--_--error-icon-padding-block:5px;--_--error-icon-padding-inline:0 5px;--_--border-radius:var(--g-border-radius-s)}.g-text-input_size_s .g-text-input__control{--_--input-control-border-width:var( - --g-text-input-border-width,var(--g-text-area-border-width,1px) - );height:calc(24px - var(--_--input-control-border-width)*2);padding:3px 8px}.g-text-input_size_s .g-text-input__control,.g-text-input_size_s .g-text-input__label{font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-short-line-height)}.g-text-input_size_s .g-text-input__label{font-weight:var(--g-text-accent-font-weight);padding-block:3px;padding-inline:8px 4px}.g-text-input_size_s.g-text-input_has-start-content .g-text-input__label{padding-inline-start:2px}.g-text-input_size_s .g-text-input__additional-content{height:22px}.g-text-input_size_s .g-text-input__additional-content_placement_start{padding-inline-start:1px}.g-text-input_size_s .g-text-input__additional-content_placement_end{padding-inline-end:1px}.g-text-input_size_m{--_--error-icon-padding-block:5px;--_--error-icon-padding-inline:0 5px;--_--border-radius:var(--g-border-radius-m)}.g-text-input_size_m .g-text-input__control{--_--input-control-border-width:var( - --g-text-input-border-width,var(--g-text-area-border-width,1px) - );height:calc(28px - var(--_--input-control-border-width)*2);padding:5px 8px}.g-text-input_size_m .g-text-input__control,.g-text-input_size_m .g-text-input__label{font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-short-line-height)}.g-text-input_size_m .g-text-input__label{font-weight:var(--g-text-accent-font-weight);padding-block:5px;padding-inline:8px 4px}.g-text-input_size_m.g-text-input_has-start-content .g-text-input__label{padding-inline-start:2px}.g-text-input_size_m .g-text-input__additional-content{height:26px}.g-text-input_size_m .g-text-input__additional-content_placement_start{padding-inline-start:1px}.g-text-input_size_m .g-text-input__additional-content_placement_end{padding-inline-end:1px}.g-text-input_size_l{--_--error-icon-padding-block:9px;--_--error-icon-padding-inline:0 9px;--_--border-radius:var(--g-border-radius-l)}.g-text-input_size_l .g-text-input__control{--_--input-control-border-width:var( - --g-text-input-border-width,var(--g-text-area-border-width,1px) - );height:calc(36px - var(--_--input-control-border-width)*2);padding:9px 12px}.g-text-input_size_l .g-text-input__control,.g-text-input_size_l .g-text-input__label{font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-short-line-height)}.g-text-input_size_l .g-text-input__label{font-weight:var(--g-text-accent-font-weight);padding-block:9px;padding-inline:12px 4px}.g-text-input_size_l.g-text-input_has-start-content .g-text-input__label{padding-inline-start:3px}.g-text-input_size_l .g-text-input__additional-content{height:34px}.g-text-input_size_l .g-text-input__additional-content_placement_start{padding-inline-start:3px}.g-text-input_size_l .g-text-input__additional-content_placement_end{padding-inline-end:3px}.g-text-input_size_xl{--_--error-icon-padding-block:13px;--_--error-icon-padding-inline:0 13px;--_--border-radius:var(--g-border-radius-xl)}.g-text-input_size_xl .g-text-input__control{--_--input-control-border-width:var( - --g-text-input-border-width,var(--g-text-area-border-width,1px) - );height:calc(44px - var(--_--input-control-border-width)*2);padding:11px 12px}.g-text-input_size_xl .g-text-input__control,.g-text-input_size_xl .g-text-input__label{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.g-text-input_size_xl .g-text-input__label{font-weight:var(--g-text-accent-font-weight);padding-block:11px;padding-inline:12px 4px}.g-text-input_size_xl.g-text-input_has-start-content .g-text-input__label{padding-inline-start:3px}.g-text-input_size_xl .g-text-input__additional-content{height:42px}.g-text-input_size_xl .g-text-input__additional-content_placement_start{padding-inline-start:3px}.g-text-input_size_xl .g-text-input__additional-content_placement_end{padding-inline-end:3px}.g-text-input_view_normal{--_--border-color:var(--g-color-line-generic);--_--border-color-hover:var(--g-color-line-generic-hover);--_--border-color-active:var(--g-color-line-generic-active)}.g-text-input_view_clear{--_--border-color:#0000;--_--border-color-hover:#0000;--_--border-color-active:#0000;--_--border-radius:0}.g-text-input_view_clear .g-text-input__content{border-inline:0}.g-text-input_view_clear .g-text-input__control{padding-inline:0}.g-text-input.g-text-input_pin_round-round .g-text-input__content{border-radius:var(--_--border-radius);border-radius:var(--g-text-input-border-radius,var(--_--border-radius))}.g-text-input.g-text-input_pin_brick-brick .g-text-input__content{border-radius:0}.g-text-input.g-text-input_pin_clear-clear .g-text-input__content{border-inline:0;border-radius:0}.g-text-input.g-text-input_pin_circle-circle .g-text-input__content{border-radius:100px}.g-text-input.g-text-input_pin_round-brick .g-text-input__content{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-text-input-border-radius,var(--_--border-radius));border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-text-input-border-radius,var(--_--border-radius))}.g-text-input.g-text-input_pin_brick-round .g-text-input__content{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-text-input-border-radius,var(--_--border-radius));border-end-start-radius:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-text-input-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-text-input.g-text-input_pin_round-clear .g-text-input__content{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-text-input-border-radius,var(--_--border-radius));border-inline-end:0;border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-text-input-border-radius,var(--_--border-radius))}.g-text-input.g-text-input_pin_clear-round .g-text-input__content{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-text-input-border-radius,var(--_--border-radius));border-end-start-radius:0;border-inline-start:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-text-input-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-text-input.g-text-input_pin_brick-clear .g-text-input__content{border-inline-end:0;border-radius:0}.g-text-input.g-text-input_pin_clear-brick .g-text-input__content{border-inline-start:0;border-radius:0}.g-text-input.g-text-input_pin_circle-brick .g-text-input__content{border-end-end-radius:0;border-end-start-radius:100px;border-start-end-radius:0;border-start-start-radius:100px}.g-text-input.g-text-input_pin_brick-circle .g-text-input__content{border-end-end-radius:100px;border-end-start-radius:0;border-start-end-radius:100px;border-start-start-radius:0}.g-text-input.g-text-input_pin_circle-clear .g-text-input__content{border-end-end-radius:0;border-end-start-radius:100px;border-inline-end:0;border-start-end-radius:0;border-start-start-radius:100px}.g-text-input.g-text-input_pin_clear-circle .g-text-input__content{border-end-end-radius:100px;border-end-start-radius:0;border-inline-start:0;border-start-end-radius:100px;border-start-start-radius:0}.g-text-input_disabled{--_--text-color:var(--g-color-text-hint);--_--background-color:var(--g-color-base-generic-accent-disabled);--_--border-color:#0000;--_--border-color-hover:#0000;--_--border-color-active:#0000}.g-text-input_has-scrollbar .g-text-input__clear{inset-inline-end:var(--g-scrollbar-width)}.g-text-input_has-start-content .g-text-input__control{padding-inline-start:2px}.g-text-input_has-end-content .g-text-input__control{padding-inline-end:2px}.g-text-input_state_error.g-text-input_view_normal .g-text-input__content,.g-text-input_state_error.g-text-input_view_normal .g-text-input__content:focus-within,.g-text-input_state_error.g-text-input_view_normal .g-text-input__content:hover{border-color:var(--g-color-line-danger)}.g-text-input_state_error.g-text-input_view_normal .g-text-input__content:focus-within{--_--focus-outline-color:var(--g-color-line-danger)}.g-text-input_state_error.g-text-input_view_clear .g-text-input__content,.g-text-input_state_error.g-text-input_view_clear .g-text-input__content:focus-within,.g-text-input_state_error.g-text-input_view_clear .g-text-input__content:hover{border-block-end:1px solid var(--g-color-line-danger)}.g-text-input_state_error.g-text-input_view_clear .g-text-input__content:focus-within{--_--focus-outline-color:var(--g-color-line-danger)}.g-clear-button{--g-button-text-color:var(--g-color-text-hint);--g-button-text-color-hover:var(--g-color-text-primary);--g-button-background-color:#0000;--g-button-background-color-hover:#0000}.g-outer-additional-content{display:flex;justify-content:space-between;vertical-align:top}.g-outer-additional-content__error,.g-outer-additional-content__note{margin-block-start:2px}.g-outer-additional-content__error{color:var(--g-color-text-danger);font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-outer-additional-content__error:not(:last-child){margin-inline-end:var(--g-spacing-2)}.g-outer-additional-content__note{margin-inline-start:auto}@keyframes g-pulse{50%{opacity:15%}}.g-loader{align-items:center;display:inline-flex}.g-loader__center,.g-loader__left,.g-loader__right{animation:g-pulse .8s ease infinite;background:var(--g-color-base-brand)}.g-loader__left{animation-delay:.2s}.g-loader__center{animation-delay:.4s}.g-loader__right{animation-delay:.6s}.g-loader_size_s .g-loader__left{height:13.33333px;width:5px}.g-loader_size_s .g-loader__center{height:20px;margin-inline-start:5px;width:5px}.g-loader_size_s .g-loader__right{height:13.33333px;margin-inline-start:5px;width:5px}.g-loader_size_m .g-loader__left{height:18.66667px;width:7px}.g-loader_size_m .g-loader__center{height:28px;margin-inline-start:7px;width:7px}.g-loader_size_m .g-loader__right{height:18.66667px;margin-inline-start:7px;width:7px}.g-loader_size_l .g-loader__left{height:24px;width:9px}.g-loader_size_l .g-loader__center{height:36px;margin-inline-start:9px;width:9px}.g-loader_size_l .g-loader__right{height:24px;margin-inline-start:9px;width:9px}.g-flex{display:flex}.g-flex_inline{display:inline-flex}.g-flex_center-content{align-items:center;justify-content:center}.g-flex_s_0{margin-block-start:calc(var(--g-spacing-0)*-1)!important;margin-inline-start:calc(var(--g-spacing-0)*-1)!important}.g-flex_s_0>*{padding-block-start:var(--g-spacing-0)!important;padding-inline-start:var(--g-spacing-0)!important}.g-flex_s_half{margin-block-start:calc(var(--g-spacing-half)*-1)!important;margin-inline-start:calc(var(--g-spacing-half)*-1)!important}.g-flex_s_half>*{padding-block-start:var(--g-spacing-half)!important;padding-inline-start:var(--g-spacing-half)!important}.g-flex_s_1{margin-block-start:calc(var(--g-spacing-1)*-1)!important;margin-inline-start:calc(var(--g-spacing-1)*-1)!important}.g-flex_s_1>*{padding-block-start:var(--g-spacing-1)!important;padding-inline-start:var(--g-spacing-1)!important}.g-flex_s_2{margin-block-start:calc(var(--g-spacing-2)*-1)!important;margin-inline-start:calc(var(--g-spacing-2)*-1)!important}.g-flex_s_2>*{padding-block-start:var(--g-spacing-2)!important;padding-inline-start:var(--g-spacing-2)!important}.g-flex_s_3{margin-block-start:calc(var(--g-spacing-3)*-1)!important;margin-inline-start:calc(var(--g-spacing-3)*-1)!important}.g-flex_s_3>*{padding-block-start:var(--g-spacing-3)!important;padding-inline-start:var(--g-spacing-3)!important}.g-flex_s_4{margin-block-start:calc(var(--g-spacing-4)*-1)!important;margin-inline-start:calc(var(--g-spacing-4)*-1)!important}.g-flex_s_4>*{padding-block-start:var(--g-spacing-4)!important;padding-inline-start:var(--g-spacing-4)!important}.g-flex_s_5{margin-block-start:calc(var(--g-spacing-5)*-1)!important;margin-inline-start:calc(var(--g-spacing-5)*-1)!important}.g-flex_s_5>*{padding-block-start:var(--g-spacing-5)!important;padding-inline-start:var(--g-spacing-5)!important}.g-flex_s_6{margin-block-start:calc(var(--g-spacing-6)*-1)!important;margin-inline-start:calc(var(--g-spacing-6)*-1)!important}.g-flex_s_6>*{padding-block-start:var(--g-spacing-6)!important;padding-inline-start:var(--g-spacing-6)!important}.g-flex_s_7{margin-block-start:calc(var(--g-spacing-7)*-1)!important;margin-inline-start:calc(var(--g-spacing-7)*-1)!important}.g-flex_s_7>*{padding-block-start:var(--g-spacing-7)!important;padding-inline-start:var(--g-spacing-7)!important}.g-flex_s_8{margin-block-start:calc(var(--g-spacing-8)*-1)!important;margin-inline-start:calc(var(--g-spacing-8)*-1)!important}.g-flex_s_8>*{padding-block-start:var(--g-spacing-8)!important;padding-inline-start:var(--g-spacing-8)!important}.g-flex_s_9{margin-block-start:calc(var(--g-spacing-9)*-1)!important;margin-inline-start:calc(var(--g-spacing-9)*-1)!important}.g-flex_s_9>*{padding-block-start:var(--g-spacing-9)!important;padding-inline-start:var(--g-spacing-9)!important}.g-flex_s_10{margin-block-start:calc(var(--g-spacing-10)*-1)!important;margin-inline-start:calc(var(--g-spacing-10)*-1)!important}.g-flex_s_10>*{padding-block-start:var(--g-spacing-10)!important;padding-inline-start:var(--g-spacing-10)!important}.g-box{box-sizing:border-box}.g-box_overflow_hidden{overflow:hidden}.g-box_overflow_auto{overflow:auto}.g-box_overflow_x{overflow:hidden auto}.g-box_overflow_y{overflow:auto hidden}.g-s__m_0{margin:var(--g-spacing-0)}.g-s__mr_0{margin-inline-end:var(--g-spacing-0)}.g-s__ml_0{margin-inline-start:var(--g-spacing-0)}.g-s__mt_0{margin-block-start:var(--g-spacing-0)}.g-s__mb_0{margin-block-end:var(--g-spacing-0)}.g-s__mx_0{margin-inline:var(--g-spacing-0)}.g-s__my_0{margin-block:var(--g-spacing-0)}.g-s__p_0{padding:var(--g-spacing-0)}.g-s__pl_0{padding-inline-start:var(--g-spacing-0)}.g-s__pr_0{padding-inline-end:var(--g-spacing-0)}.g-s__pb_0{padding-block-end:var(--g-spacing-0)}.g-s__pt_0{padding-block-start:var(--g-spacing-0)}.g-s__py_0{padding-block:var(--g-spacing-0)}.g-s__px_0{padding-inline:var(--g-spacing-0)}.g-s__m_half{margin:var(--g-spacing-half)}.g-s__mr_half{margin-inline-end:var(--g-spacing-half)}.g-s__ml_half{margin-inline-start:var(--g-spacing-half)}.g-s__mt_half{margin-block-start:var(--g-spacing-half)}.g-s__mb_half{margin-block-end:var(--g-spacing-half)}.g-s__mx_half{margin-inline:var(--g-spacing-half)}.g-s__my_half{margin-block:var(--g-spacing-half)}.g-s__p_half{padding:var(--g-spacing-half)}.g-s__pl_half{padding-inline-start:var(--g-spacing-half)}.g-s__pr_half{padding-inline-end:var(--g-spacing-half)}.g-s__pb_half{padding-block-end:var(--g-spacing-half)}.g-s__pt_half{padding-block-start:var(--g-spacing-half)}.g-s__py_half{padding-block:var(--g-spacing-half)}.g-s__px_half{padding-inline:var(--g-spacing-half)}.g-s__m_1{margin:var(--g-spacing-1)}.g-s__mr_1{margin-inline-end:var(--g-spacing-1)}.g-s__ml_1{margin-inline-start:var(--g-spacing-1)}.g-s__mt_1{margin-block-start:var(--g-spacing-1)}.g-s__mb_1{margin-block-end:var(--g-spacing-1)}.g-s__mx_1{margin-inline:var(--g-spacing-1)}.g-s__my_1{margin-block:var(--g-spacing-1)}.g-s__p_1{padding:var(--g-spacing-1)}.g-s__pl_1{padding-inline-start:var(--g-spacing-1)}.g-s__pr_1{padding-inline-end:var(--g-spacing-1)}.g-s__pb_1{padding-block-end:var(--g-spacing-1)}.g-s__pt_1{padding-block-start:var(--g-spacing-1)}.g-s__py_1{padding-block:var(--g-spacing-1)}.g-s__px_1{padding-inline:var(--g-spacing-1)}.g-s__m_2{margin:var(--g-spacing-2)}.g-s__mr_2{margin-inline-end:var(--g-spacing-2)}.g-s__ml_2{margin-inline-start:var(--g-spacing-2)}.g-s__mt_2{margin-block-start:var(--g-spacing-2)}.g-s__mb_2{margin-block-end:var(--g-spacing-2)}.g-s__mx_2{margin-inline:var(--g-spacing-2)}.g-s__my_2{margin-block:var(--g-spacing-2)}.g-s__p_2{padding:var(--g-spacing-2)}.g-s__pl_2{padding-inline-start:var(--g-spacing-2)}.g-s__pr_2{padding-inline-end:var(--g-spacing-2)}.g-s__pb_2{padding-block-end:var(--g-spacing-2)}.g-s__pt_2{padding-block-start:var(--g-spacing-2)}.g-s__py_2{padding-block:var(--g-spacing-2)}.g-s__px_2{padding-inline:var(--g-spacing-2)}.g-s__m_3{margin:var(--g-spacing-3)}.g-s__mr_3{margin-inline-end:var(--g-spacing-3)}.g-s__ml_3{margin-inline-start:var(--g-spacing-3)}.g-s__mt_3{margin-block-start:var(--g-spacing-3)}.g-s__mb_3{margin-block-end:var(--g-spacing-3)}.g-s__mx_3{margin-inline:var(--g-spacing-3)}.g-s__my_3{margin-block:var(--g-spacing-3)}.g-s__p_3{padding:var(--g-spacing-3)}.g-s__pl_3{padding-inline-start:var(--g-spacing-3)}.g-s__pr_3{padding-inline-end:var(--g-spacing-3)}.g-s__pb_3{padding-block-end:var(--g-spacing-3)}.g-s__pt_3{padding-block-start:var(--g-spacing-3)}.g-s__py_3{padding-block:var(--g-spacing-3)}.g-s__px_3{padding-inline:var(--g-spacing-3)}.g-s__m_4{margin:var(--g-spacing-4)}.g-s__mr_4{margin-inline-end:var(--g-spacing-4)}.g-s__ml_4{margin-inline-start:var(--g-spacing-4)}.g-s__mt_4{margin-block-start:var(--g-spacing-4)}.g-s__mb_4{margin-block-end:var(--g-spacing-4)}.g-s__mx_4{margin-inline:var(--g-spacing-4)}.g-s__my_4{margin-block:var(--g-spacing-4)}.g-s__p_4{padding:var(--g-spacing-4)}.g-s__pl_4{padding-inline-start:var(--g-spacing-4)}.g-s__pr_4{padding-inline-end:var(--g-spacing-4)}.g-s__pb_4{padding-block-end:var(--g-spacing-4)}.g-s__pt_4{padding-block-start:var(--g-spacing-4)}.g-s__py_4{padding-block:var(--g-spacing-4)}.g-s__px_4{padding-inline:var(--g-spacing-4)}.g-s__m_5{margin:var(--g-spacing-5)}.g-s__mr_5{margin-inline-end:var(--g-spacing-5)}.g-s__ml_5{margin-inline-start:var(--g-spacing-5)}.g-s__mt_5{margin-block-start:var(--g-spacing-5)}.g-s__mb_5{margin-block-end:var(--g-spacing-5)}.g-s__mx_5{margin-inline:var(--g-spacing-5)}.g-s__my_5{margin-block:var(--g-spacing-5)}.g-s__p_5{padding:var(--g-spacing-5)}.g-s__pl_5{padding-inline-start:var(--g-spacing-5)}.g-s__pr_5{padding-inline-end:var(--g-spacing-5)}.g-s__pb_5{padding-block-end:var(--g-spacing-5)}.g-s__pt_5{padding-block-start:var(--g-spacing-5)}.g-s__py_5{padding-block:var(--g-spacing-5)}.g-s__px_5{padding-inline:var(--g-spacing-5)}.g-s__m_6{margin:var(--g-spacing-6)}.g-s__mr_6{margin-inline-end:var(--g-spacing-6)}.g-s__ml_6{margin-inline-start:var(--g-spacing-6)}.g-s__mt_6{margin-block-start:var(--g-spacing-6)}.g-s__mb_6{margin-block-end:var(--g-spacing-6)}.g-s__mx_6{margin-inline:var(--g-spacing-6)}.g-s__my_6{margin-block:var(--g-spacing-6)}.g-s__p_6{padding:var(--g-spacing-6)}.g-s__pl_6{padding-inline-start:var(--g-spacing-6)}.g-s__pr_6{padding-inline-end:var(--g-spacing-6)}.g-s__pb_6{padding-block-end:var(--g-spacing-6)}.g-s__pt_6{padding-block-start:var(--g-spacing-6)}.g-s__py_6{padding-block:var(--g-spacing-6)}.g-s__px_6{padding-inline:var(--g-spacing-6)}.g-s__m_7{margin:var(--g-spacing-7)}.g-s__mr_7{margin-inline-end:var(--g-spacing-7)}.g-s__ml_7{margin-inline-start:var(--g-spacing-7)}.g-s__mt_7{margin-block-start:var(--g-spacing-7)}.g-s__mb_7{margin-block-end:var(--g-spacing-7)}.g-s__mx_7{margin-inline:var(--g-spacing-7)}.g-s__my_7{margin-block:var(--g-spacing-7)}.g-s__p_7{padding:var(--g-spacing-7)}.g-s__pl_7{padding-inline-start:var(--g-spacing-7)}.g-s__pr_7{padding-inline-end:var(--g-spacing-7)}.g-s__pb_7{padding-block-end:var(--g-spacing-7)}.g-s__pt_7{padding-block-start:var(--g-spacing-7)}.g-s__py_7{padding-block:var(--g-spacing-7)}.g-s__px_7{padding-inline:var(--g-spacing-7)}.g-s__m_8{margin:var(--g-spacing-8)}.g-s__mr_8{margin-inline-end:var(--g-spacing-8)}.g-s__ml_8{margin-inline-start:var(--g-spacing-8)}.g-s__mt_8{margin-block-start:var(--g-spacing-8)}.g-s__mb_8{margin-block-end:var(--g-spacing-8)}.g-s__mx_8{margin-inline:var(--g-spacing-8)}.g-s__my_8{margin-block:var(--g-spacing-8)}.g-s__p_8{padding:var(--g-spacing-8)}.g-s__pl_8{padding-inline-start:var(--g-spacing-8)}.g-s__pr_8{padding-inline-end:var(--g-spacing-8)}.g-s__pb_8{padding-block-end:var(--g-spacing-8)}.g-s__pt_8{padding-block-start:var(--g-spacing-8)}.g-s__py_8{padding-block:var(--g-spacing-8)}.g-s__px_8{padding-inline:var(--g-spacing-8)}.g-s__m_9{margin:var(--g-spacing-9)}.g-s__mr_9{margin-inline-end:var(--g-spacing-9)}.g-s__ml_9{margin-inline-start:var(--g-spacing-9)}.g-s__mt_9{margin-block-start:var(--g-spacing-9)}.g-s__mb_9{margin-block-end:var(--g-spacing-9)}.g-s__mx_9{margin-inline:var(--g-spacing-9)}.g-s__my_9{margin-block:var(--g-spacing-9)}.g-s__p_9{padding:var(--g-spacing-9)}.g-s__pl_9{padding-inline-start:var(--g-spacing-9)}.g-s__pr_9{padding-inline-end:var(--g-spacing-9)}.g-s__pb_9{padding-block-end:var(--g-spacing-9)}.g-s__pt_9{padding-block-start:var(--g-spacing-9)}.g-s__py_9{padding-block:var(--g-spacing-9)}.g-s__px_9{padding-inline:var(--g-spacing-9)}.g-s__m_10{margin:var(--g-spacing-10)}.g-s__mr_10{margin-inline-end:var(--g-spacing-10)}.g-s__ml_10{margin-inline-start:var(--g-spacing-10)}.g-s__mt_10{margin-block-start:var(--g-spacing-10)}.g-s__mb_10{margin-block-end:var(--g-spacing-10)}.g-s__mx_10{margin-inline:var(--g-spacing-10)}.g-s__my_10{margin-block:var(--g-spacing-10)}.g-s__p_10{padding:var(--g-spacing-10)}.g-s__pl_10{padding-inline-start:var(--g-spacing-10)}.g-s__pr_10{padding-inline-end:var(--g-spacing-10)}.g-s__pb_10{padding-block-end:var(--g-spacing-10)}.g-s__pt_10{padding-block-start:var(--g-spacing-10)}.g-s__py_10{padding-block:var(--g-spacing-10)}.g-s__px_10{padding-inline:var(--g-spacing-10)}.g-text_variant_display-1{font-size:var(--g-text-display-1-font-size);font-weight:var(--g-text-display-font-weight);line-height:var(--g-text-display-1-line-height)}.g-text_variant_display-2{font-size:var(--g-text-display-2-font-size);font-weight:var(--g-text-display-font-weight);line-height:var(--g-text-display-2-line-height)}.g-text_variant_display-3{font-size:var(--g-text-display-3-font-size);font-weight:var(--g-text-display-font-weight);line-height:var(--g-text-display-3-line-height)}.g-text_variant_display-4{font-size:var(--g-text-display-4-font-size);font-weight:var(--g-text-display-font-weight);line-height:var(--g-text-display-4-line-height)}.g-text_variant_code-1{font-size:var(--g-text-code-1-font-size);line-height:var(--g-text-code-1-line-height)}.g-text_variant_code-1,.g-text_variant_code-2{font-family:var(--g-font-family-monospace);font-weight:var(--g-text-code-font-weight)}.g-text_variant_code-2{font-size:var(--g-text-code-2-font-size);line-height:var(--g-text-code-2-line-height)}.g-text_variant_code-3{font-size:var(--g-text-code-3-font-size);line-height:var(--g-text-code-3-line-height)}.g-text_variant_code-3,.g-text_variant_code-inline-1{font-family:var(--g-font-family-monospace);font-weight:var(--g-text-code-font-weight)}.g-text_variant_code-inline-1{font-size:var(--g-text-code-inline-1-font-size);line-height:var(--g-text-code-inline-1-line-height)}.g-text_variant_code-inline-2{font-size:var(--g-text-code-inline-2-font-size);line-height:var(--g-text-code-inline-2-line-height)}.g-text_variant_code-inline-2,.g-text_variant_code-inline-3{font-family:var(--g-font-family-monospace);font-weight:var(--g-text-code-font-weight)}.g-text_variant_code-inline-3{font-size:var(--g-text-code-inline-3-font-size);line-height:var(--g-text-code-inline-3-line-height)}.g-text_variant_body-1{font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-text_variant_body-2{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.g-text_variant_body-3{font-size:var(--g-text-body-3-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-3-line-height)}.g-text_variant_body-short{font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-short-line-height)}.g-text_variant_caption-1{font-size:var(--g-text-caption-1-font-size);font-weight:var(--g-text-caption-font-weight);line-height:var(--g-text-caption-1-line-height)}.g-text_variant_caption-2{font-size:var(--g-text-caption-2-font-size);font-weight:var(--g-text-caption-font-weight);line-height:var(--g-text-caption-2-line-height)}.g-text_variant_header-1{font-size:var(--g-text-header-1-font-size);font-weight:var(--g-text-header-font-weight);line-height:var(--g-text-header-1-line-height)}.g-text_variant_header-2{font-size:var(--g-text-header-2-font-size);font-weight:var(--g-text-header-font-weight);line-height:var(--g-text-header-2-line-height)}.g-text_variant_subheader-1{font-size:var(--g-text-subheader-1-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-1-line-height)}.g-text_variant_subheader-2{font-size:var(--g-text-subheader-2-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-2-line-height)}.g-text_variant_subheader-3{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.g-text_ellipsis{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.g-text_ellipsis-lines{-webkit-box-orient:vertical;-webkit-line-clamp:2;align-self:center;display:-webkit-box;overflow:hidden;white-space:normal}.g-text_ws_nowrap{white-space:nowrap}.g-text_ws_break-spaces{white-space:break-spaces}.g-text_wb_break-all{word-break:break-all}.g-text_wb_break-word{word-break:break-word}.g-color-text_color_primary{color:var(--g-color-text-primary)}.g-color-text_color_complementary{color:var(--g-color-text-complementary)}.g-color-text_color_secondary{color:var(--g-color-text-secondary)}.g-color-text_color_hint{color:var(--g-color-text-hint)}.g-color-text_color_info{color:var(--g-color-text-info)}.g-color-text_color_info-heavy{color:var(--g-color-text-info-heavy)}.g-color-text_color_positive{color:var(--g-color-text-positive)}.g-color-text_color_positive-heavy{color:var(--g-color-text-positive-heavy)}.g-color-text_color_warning{color:var(--g-color-text-warning)}.g-color-text_color_warning-heavy{color:var(--g-color-text-warning-heavy)}.g-color-text_color_danger{color:var(--g-color-text-danger)}.g-color-text_color_danger-heavy{color:var(--g-color-text-danger-heavy)}.g-color-text_color_utility{color:var(--g-color-text-utility)}.g-color-text_color_utility-heavy{color:var(--g-color-text-utility-heavy)}.g-color-text_color_misc{color:var(--g-color-text-misc)}.g-color-text_color_misc-heavy{color:var(--g-color-text-misc-heavy)}.g-color-text_color_brand{color:var(--g-color-text-brand)}.g-color-text_color_link{color:var(--g-color-text-link)}.g-color-text_color_link-hover{color:var(--g-color-text-link-hover)}.g-color-text_color_link-visited{color:var(--g-color-text-link-visited)}.g-color-text_color_link-visited-hover{color:var(--g-color-text-link-visited-hover)}.g-color-text_color_dark-primary{color:var(--g-color-text-dark-primary)}.g-color-text_color_dark-complementary{color:var(--g-color-text-dark-complementary)}.g-color-text_color_dark-secondary{color:var(--g-color-text-dark-secondary)}.g-color-text_color_light-primary{color:var(--g-color-text-light-primary)}.g-color-text_color_light-complementary{color:var(--g-color-text-light-complementary)}.g-color-text_color_light-secondary{color:var(--g-color-text-light-secondary)}.g-color-text_color_light-hint{color:var(--g-color-text-light-hint)}.g-color-text_color_inverted-primary{color:var(--g-color-text-inverted-primary)}.g-color-text_color_inverted-complementary{color:var(--g-color-text-inverted-complementary)}.g-color-text_color_inverted-secondary{color:var(--g-color-text-inverted-secondary)}.g-color-text_color_inverted-hint{color:var(--g-color-text-inverted-hint)}.ydb-user-settings__item-with-popup{max-width:180px}.ydb-user-settings__popup{max-width:370px}.kv-ydb-internal-user{align-items:center;display:flex;flex-grow:1;justify-content:space-between;line-height:var(--g-text-body-2-line-height);margin-left:16px}.kv-ydb-internal-user__user-info-wrapper{display:flex;flex-direction:column}.kv-ydb-internal-user__ydb-internal-user-title{font-weight:500}.kv-ydb-internal-user__ydb-user-wrapper{padding:10px;width:300px}.info-viewer{--ydb-info-viewer-font-size:var(--g-text-body-2-font-size);--ydb-info-viewer-line-height:var(--g-text-body-2-line-height);--ydb-info-viewer-title-font-weight:600;--ydb-info-viewer-title-margin:15px 0 10px;--ydb-info-viewer-items-gap:7px;font-size:var(--ydb-info-viewer-font-size);line-height:var(--ydb-info-viewer-line-height)}.info-viewer__title{font-weight:var(--ydb-info-viewer-title-font-weight);margin:var(--ydb-info-viewer-title-margin)}.info-viewer__items{display:flex;flex-direction:column;gap:var(--ydb-info-viewer-items-gap);max-width:100%}.info-viewer__row{align-items:baseline;display:flex;max-width:100%;padding-top:4px}.info-viewer__label{align-items:baseline;color:var(--g-color-text-secondary);display:flex;flex:0 1 auto;min-width:200px;white-space:nowrap}.info-viewer__label-text_multiline{max-width:180px;overflow:visible;white-space:normal}.info-viewer__dots{border-bottom:1px dotted var(--g-color-text-secondary);display:flex;flex:1 1 auto;margin:0 2px}.info-viewer__value{display:flex;min-width:130px;word-break:break-all}.info-viewer_size_s{--ydb-info-viewer-font-size:var(--g-text-body-1-font-size);--ydb-info-viewer-line-height:var(--g-text-body-1-line-height);--ydb-info-viewer-title-font-weight:500;--ydb-info-viewer-title-margin:0 0 4px;--ydb-info-viewer-items-gap:4px}.info-viewer_size_s .info-viewer__row{height:auto}.info-viewer_size_s .info-viewer__label{min-width:85px}.ydb-node-endpoints-tooltip-content .info-viewer__value{min-width:70px}.popup2{animation:none!important;max-width:300px}.histogram-tooltip,.node-tootltip,.tabletsOverall-tooltip{padding:10px}.histogram-tooltip__label,.node-tootltip__label,.tabletsOverall-tooltip__label{color:var(--g-color-text-secondary);padding-right:15px}.json-tooltip{padding:20px 20px 20px 0}.json-tooltip__inspector{font-family:var(--g-font-family-monospace)!important;font-size:var(--g-text-code-1-font-size)!important;line-height:var(--g-text-code-1-line-height)!important}.json-tooltip__inspector .json-inspector__leaf_composite:before{color:var(--g-color-text-secondary);font-size:9px;left:20px;position:absolute}.json-tooltip__inspector .json-inspector__leaf_composite.json-inspector__leaf_root:before{left:0}.json-tooltip__inspector :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:"[+]"}.json-tooltip__inspector .json-inspector__leaf_expanded.json-inspector__leaf_composite:before{content:"[-]"}.json-tooltip__inspector .json-inspector__key{color:var(--g-color-text-misc)}.json-tooltip__inspector .json-inspector__leaf{padding-left:20px;position:relative}.json-tooltip__inspector .json-inspector__leaf_root{padding-left:0}.json-tooltip__inspector .json-inspector__line{padding-left:20px}.json-tooltip__inspector .json-inspector__toolbar{border:1px solid var(--g-color-line-generic);border-radius:4px;margin-bottom:10px;width:300px}.json-tooltip__inspector .json-inspector__search{background:none;border:0 solid #0000;border-width:0 22px 0 8px;box-sizing:border-box;color:var(--g-color-text-primary);font-family:var(--g-text-body-font-family);font-size:13px;height:28px;margin:0;outline:0;padding:0;vertical-align:top;width:300px}.json-tooltip__inspector .json-inspector__value_helper{color:var(--g-color-text-secondary)}.json-tooltip__inspector .json-inspector__line:hover:after{background:var(--g-color-base-simple-hover)}.json-tooltip__inspector .json-inspector__show-original:before{color:var(--g-color-text-secondary)}.json-tooltip__inspector .json-inspector__show-original:hover:after,.json-tooltip__inspector .json-inspector__show-original:hover:before{color:var(--g-color-text-primary)}.json-tooltip__inspector .json-inspector__leaf_expanded.json-inspector__leaf_composite:before,.json-tooltip__inspector :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:""}.json-tooltip__inspector .json-inspector__line:hover:after{background:#0000}.json-tooltip__inspector .json-inspector__show-original:hover:after,.json-tooltip__inspector .json-inspector__show-original:hover:before{color:#0000}.json-tooltip__inspector .json-inspector__value_helper{display:none}.cell-tooltip{padding:10px;word-break:break-word}.authentication{align-items:center;background-blend-mode:normal;background-color:#b8d4fd1a;background-image:radial-gradient(at 0 100%,#0066ff26 20%,#f7f7f700 40%),radial-gradient(at 55% 0,#0066ff26 20%,#f7f7f700 40%),radial-gradient(at 110% 100%,#0066ff26 20%,#f7f7f700 40%);display:flex;height:100%;justify-content:center}.authentication .g-text-input{display:flex}.authentication__header{align-items:center;display:flex;font-size:var(--g-text-body-1-font-size);justify-content:space-between;line-height:var(--g-text-header-1-line-height);width:100%}.authentication__logo{align-items:center;display:flex;font-size:16px;font-weight:600;gap:8px}.authentication__title{font-size:var(--g-text-header-2-font-size);font-weight:600;line-height:var(--g-text-header-2-line-height);margin:34px 0 16px}.authentication__form-wrapper{align-items:center;background-color:var(--g-color-base-background);border-radius:16px;display:flex;flex-direction:column;flex-shrink:0;justify-content:center;min-width:320px;padding:40px;width:400px}.authentication__field-wrapper{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px;width:320px}.authentication__field-wrapper .g-text-input_state_error{flex-direction:column}.authentication__button-sign-in{display:inline-flex;justify-content:center}.authentication__show-password-button{margin-left:4px}.authentication__close{position:absolute;right:40px;top:40px}.g-tooltip[class]{--g-popup-border-width:0}.g-tooltip[class]>div{animation-duration:.001ms;box-shadow:0 1px 5px 0 #00000026;box-sizing:border-box;max-width:360px;padding:4px 8px}.g-tooltip__content{-webkit-box-orient:vertical;-ms-box-orient:vertical;-webkit-line-clamp:20;-moz-line-clamp:20;-ms-line-clamp:20;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.ydb-status-icon__status-color_state_green{background-color:var(--ydb-color-status-green)}.ydb-status-icon__status-color_state_yellow{background-color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-color_state_blue{background-color:var(--ydb-color-status-blue)}.ydb-status-icon__status-color_state_red{background-color:var(--ydb-color-status-red)}.ydb-status-icon__status-color_state_grey{background-color:var(--ydb-color-status-grey)}.ydb-status-icon__status-color_state_orange{background-color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_blue{color:var(--ydb-color-status-blue)}.ydb-status-icon__status-icon_state_yellow{color:var(--ydb-color-status-yellow)}.ydb-status-icon__status-icon_state_orange{color:var(--ydb-color-status-orange)}.ydb-status-icon__status-icon_state_red{color:var(--ydb-color-status-red)}.ydb-status-icon__status-color,.ydb-status-icon__status-icon{border-radius:3px;flex-shrink:0}.ydb-status-icon__status-color_size_xs,.ydb-status-icon__status-icon_size_xs{aspect-ratio:1;height:12px;width:12px}.ydb-status-icon__status-color_size_s,.ydb-status-icon__status-icon_size_s{aspect-ratio:1;height:16px;width:16px}.ydb-status-icon__status-color_size_m,.ydb-status-icon__status-icon_size_m{aspect-ratio:1;height:18px;width:18px}.ydb-status-icon__status-color_size_l,.ydb-status-icon__status-icon_size_l{height:24px;width:24px}.entity-status{align-items:center;display:inline-flex;font-size:var(--g-text-body-2-font-size);height:100%;line-height:var(--g-text-body-2-line-height);max-width:100%}.entity-status__icon{margin-right:8px}.entity-status__clipboard-button{color:var(--g-color-text-secondary);display:flex;flex-shrink:0;margin-left:8px;opacity:0}.entity-status__clipboard-button:focus-visible,.entity-status__clipboard-button_visible{opacity:1}.entity-status__label{color:var(--g-color-text-complementary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin-right:2px}.entity-status__label_size_l{font-size:var(--g-text-header-2-font-size)}.entity-status__link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-status__link_with-left-trim{direction:rtl}.entity-status__link_with-left-trim .entity-status__name{unicode-bidi:plaintext}.entity-status__label_state_blue{color:var(--ydb-color-status-blue)}.entity-status__label_state_yellow{color:var(--ydb-color-status-yellow)}.entity-status__label_state_orange{color:var(--ydb-color-status-orange)}.entity-status__label_state_red{color:var(--ydb-color-status-red)}.empty-state{padding:20px}.empty-state_size_m{height:400px}.empty-state__wrapper{display:grid;grid-template-areas:"image title" "image description" "image actions"}.empty-state__wrapper_size_s{height:120px;width:460px}.empty-state__wrapper_size_m{height:240px;width:800px}.empty-state__wrapper_position_center{margin:0 auto;position:relative}.empty-state__image{color:var(--g-color-base-info-light-hover);grid-area:image;justify-self:end;margin-right:60px}.g-root_theme_dark .empty-state__image{color:var(--g-color-base-generic)}.empty-state__title{align-self:center;font-weight:500;grid-area:title}.empty-state__title_size_s{font-size:var(--g-text-subheader-3-font-size);line-height:var(--g-text-subheader-3-line-height)}.empty-state__title_size_m{font-size:var(--g-text-header-2-font-size);line-height:var(--g-text-header-2-line-height)}.empty-state__description{font-size:var(--g-text-body-2-font-size);grid-area:description;line-height:var(--g-text-body-2-line-height)}.empty-state__actions{grid-area:actions}.empty-state__actions>*{margin-right:8px}.ydb-resizeable-data-table{display:flex;padding-right:20px;width:-webkit-max-content;width:max-content}.ydb-search{min-width:100px}.table-skeleton{width:100%}.table-skeleton__row{align-items:center;display:flex;height:var(--data-table-row-height)}.table-skeleton__row .g-skeleton{height:var(--g-text-body-2-line-height)}.table-skeleton__col-1{margin-right:5%;width:10%}.table-skeleton__col-2{margin-right:5%;width:7%}.table-skeleton__col-3,.table-skeleton__col-4{margin-right:5%;width:5%}.table-skeleton__col-5{width:20%}.table-skeleton__col-full{width:100%}.g-skeleton{--_--animation-from:calc(-100%*var(--g-flow-direction));--_--animation-to:calc(100%*var(--g-flow-direction));--_--gradient-deg:calc(90deg*var(--g-flow-direction));background-color:var(--g-color-base-generic);border-radius:5px;display:inline-block;overflow:hidden;position:relative;width:100%;z-index:0}.g-skeleton:after{animation:g-skeleton 1.2s ease-out infinite;background-image:linear-gradient(var(--_--gradient-deg),#0000,var(--g-color-base-generic));content:"";inset:0;position:absolute}@keyframes g-skeleton{0%{transform:translateX(var(--_--animation-from))}to{transform:translateX(var(--_--animation-to))}}.ydb-table-with-controls-layout{box-sizing:border-box;display:inline-block;min-width:100%}.ydb-table-with-controls-layout__controls-wrapper{box-sizing:border-box;width:100%}.ydb-table-with-controls-layout__controls,.ydb-table-with-controls-layout__controls-wrapper{background-color:var(--g-color-base-background);left:0;position:-webkit-sticky;position:sticky;top:0;z-index:3}.ydb-table-with-controls-layout__controls{align-items:center;display:flex;gap:12px;height:62px;padding:16px 0 18px;width:-webkit-max-content;width:max-content}.ydb-table-with-controls-layout .ydb-virtual-table__head{top:62px}.ydb-table-with-controls-layout .data-table__sticky_moving{top:62px!important}.ydb-cell-with-popover{display:flex;max-width:100%}.ydb-cell-with-popover__popover{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.ydb-cell-with-popover__popover .g-popover__handler{display:inline}.ydb-node-host-wrapper__external-button{display:none;flex-shrink:0;margin-left:4px}.data-table__row:hover .ydb-node-host-wrapper__external-button,.ydb-virtual-table__row:hover .ydb-node-host-wrapper__external-button{display:inline-flex}.ydb-pool-bar{border:1px solid;border-radius:1px;cursor:pointer;height:20px;margin-right:2px;position:relative;width:6px}.ydb-pool-bar__popup-content{padding:10px;width:170px}.ydb-pool-bar:last-child{margin-right:0}.ydb-pool-bar_type_normal{border-color:var(--ydb-color-status-green)}.ydb-pool-bar_type_warning{border-color:var(--ydb-color-status-yellow)}.ydb-pool-bar_type_danger{border-color:var(--ydb-color-status-red)}.ydb-pool-bar__value{bottom:0;min-height:1px;position:absolute;width:100%}.ydb-pool-bar__value_type_normal{background-color:var(--ydb-color-status-green)}.ydb-pool-bar__value_type_warning{background-color:var(--ydb-color-status-yellow)}.ydb-pool-bar__value_type_danger{background-color:var(--ydb-color-status-red)}.ydb-pools-graph{display:flex}.progress-viewer{align-items:center;background:var(--g-color-base-generic);border-radius:2px;color:var(--g-color-text-complementary);display:flex;font-size:var(--g-text-body-2-font-size);height:23px;justify-content:center;min-width:120px;overflow:hidden;padding:0 4px;position:relative;white-space:nowrap;z-index:0}.progress-viewer_theme_dark{color:var(--g-color-text-light-primary)}.progress-viewer_theme_dark .progress-viewer__line{opacity:.75}.progress-viewer_status_good{background-color:var(--g-color-base-positive-light)}.progress-viewer_status_good .progress-viewer__line{background-color:var(--ydb-color-status-green)}.progress-viewer_status_warning{background-color:var(--g-color-base-yellow-light)}.progress-viewer_status_warning .progress-viewer__line{background-color:var(--ydb-color-status-yellow)}.progress-viewer_status_danger{background-color:var(--g-color-base-danger-light)}.progress-viewer_status_danger .progress-viewer__line{background-color:var(--ydb-color-status-red)}.progress-viewer__line{height:100%;left:0;position:absolute;top:0}.progress-viewer__text{position:relative;z-index:1}.progress-viewer_size_xs{font-size:var(--g-text-body-2-font-size);height:20px;line-height:var(--g-text-body-2-line-height)}.progress-viewer_size_s{font-size:var(--g-text-body-1-font-size);height:28px;line-height:28px}.progress-viewer_size_m{font-size:var(--g-text-body-2-font-size);height:32px;line-height:32px}.progress-viewer_size_ns{font-size:13px;height:24px;line-height:var(--g-text-subheader-3-line-height)}.progress-viewer_size_n{font-size:var(--g-text-body-1-font-size);height:36px;line-height:36px}.progress-viewer_size_l{font-size:var(--g-text-subheader-3-font-size);height:38px;line-height:38px}.progress-viewer_size_head{font-size:var(--g-text-body-1-font-size);line-height:36px}.tablets-statistic{align-items:center;display:flex;gap:2px}.tablets-statistic__tablet{border:1px solid;border-radius:2px;color:var(--g-color-text-secondary);display:inline-block;font-size:11px;height:20px;line-height:20px;padding:0 4px;text-align:center;text-decoration:none;text-transform:uppercase}.tablets-statistic__tablet_state_green{background-color:var(--g-color-base-positive-light);color:var(--g-color-text-positive)}.tablets-statistic__tablet_state_yellow{background-color:var(--g-color-base-warning-light);color:var(--g-color-text-warning)}.tablets-statistic__tablet_state_blue{background-color:var(--g-color-base-info-light);color:var(--g-color-text-info)}.tablets-statistic__tablet_state_orange{background-color:var(--g-color-base-warning-light);color:var(--g-color-text-warning-heavy)}.tablets-statistic__tablet_state_red{background:var(--g-color-base-danger-light);color:var(--g-color-text-danger)}.tablets-statistic__tablet_state_grey{border:1px solid var(--g-color-line-generic-hover);color:var(--g-color-text-secondary)}.ydb-usage-label_overload{background-color:var(--ydb-color-status-red);color:var(--g-color-text-light-primary)}.ydb-nodes__search{width:238px}.ydb-nodes__show-all-wrapper{left:0;margin-bottom:15px;position:-webkit-sticky;position:sticky}.ydb-nodes__node_unavailable{opacity:.6}.ydb-virtual-table{--virtual-table-cell-vertical-padding:5px;--virtual-table-cell-horizontal-padding:10px;--virtual-table-border-color:var(--g-color-base-generic-hover);--virtual-table-hover-color:var(--g-color-base-float-hover);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);width:100%}.ydb-virtual-table__table{border-collapse:initial;border-spacing:0;max-width:100%;table-layout:fixed;width:-webkit-max-content;width:max-content}.ydb-virtual-table__table th{padding:0}.ydb-virtual-table__row:hover{background:var(--virtual-table-hover-color)}.ydb-virtual-table__row_empty:hover{background-color:initial}.ydb-virtual-table__head{background-color:var(--g-color-base-background);left:0;position:-webkit-sticky;position:sticky;top:0;z-index:1}.ydb-virtual-table__sort-icon-container{color:inherit;display:flex;justify-content:center}.ydb-virtual-table__sort-icon-container_shadow{opacity:.15}.ydb-virtual-table__sort-icon_desc{transform:rotate(180deg)}.ydb-virtual-table__head-cell-wrapper{border-bottom:1px solid var(--virtual-table-border-color);display:flex;overflow-x:hidden;position:relative}.ydb-virtual-table__head-cell{align-items:center;display:flex;flex-direction:row;max-width:100%;padding:var(--virtual-table-cell-vertical-padding) var(--virtual-table-cell-horizontal-padding);width:100%}.ydb-virtual-table__head-cell_align_left{justify-content:left}.ydb-virtual-table__head-cell_align_center{justify-content:center}.ydb-virtual-table__head-cell_align_right{justify-content:right}.ydb-virtual-table__head-cell{cursor:default;font-weight:700;gap:8px}.ydb-virtual-table__head-cell_sortable{cursor:pointer}.ydb-virtual-table__head-cell_sortable.ydb-virtual-table__head-cell_align_right{flex-direction:row-reverse}.ydb-virtual-table__head-cell-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:-webkit-min-content;width:min-content}.ydb-virtual-table__row-cell{border-bottom:1px solid var(--virtual-table-border-color);display:table-cell;max-width:100%;overflow-x:hidden;padding:var(--virtual-table-cell-vertical-padding) var(--virtual-table-cell-horizontal-padding);text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;width:100%}.ydb-virtual-table__row-cell_align_left{text-align:left}.ydb-virtual-table__row-cell_align_center{text-align:center}.ydb-virtual-table__row-cell_align_right{text-align:right}.ydb-virtual-table__resize-handler{background-color:var(--g-color-base-generic);cursor:col-resize;height:100%;position:absolute;right:0;top:0;visibility:hidden;width:6px}.ydb-virtual-table__head-cell-wrapper:hover>.ydb-virtual-table__resize-handler,.ydb-virtual-table__resize-handler_resizing{visibility:visible}.usage-filter{min-width:100px}.usage-filter__option{flex-grow:1}.usage-filter__option-title{font-size:var(--g-text-body-1-font-size);height:var(--g-text-body-1-line-height);line-height:var(--g-text-body-1-line-height)}.usage-filter__option-meta{border-radius:3px;font-size:var(--g-text-caption-2-font-size);line-height:var(--g-text-caption-2-line-height);padding:0 5px;position:relative;z-index:0}.usage-filter__option-bar{background-color:var(--g-color-base-info-medium);border-radius:3px;bottom:0;left:0;position:absolute;top:0;z-index:-1}.g-select{display:inline-block;max-width:100%}.g-list,.g-select_width_max{width:100%}.g-list{--_--item-padding:var(--g-list-item-padding,0);display:flex;flex:1 1 auto;flex-direction:column;outline:none}.g-list__filter{flex:0 0 auto;margin-block-end:8px;padding:var(--_--item-padding)}.g-list__items{flex:1 1 auto}.g-list__empty-placeholder,.g-list__item{align-items:center;box-sizing:border-box;display:flex;overflow:hidden;padding:var(--_--item-padding);-webkit-user-select:none;user-select:none}.g-list__item_active{background:var(--g-color-base-simple-hover)}.g-list__item_selected{background:var(--g-color-base-selection)}.g-list__item_selected:hover{background:var(--g-color-base-selection-hover)}.g-list__item_sort-handle-align_right{flex-direction:row-reverse}.g-list__item_sort-handle-align_right .g-list__item-sort-icon{margin-inline:10px 0}.g-list__item_sortable[data-rbd-drag-handle-context-id]:active{cursor:grabbing}.g-list__item_dragging{background:var(--g-color-base-simple-hover-solid);z-index:100001}.g-list__empty-placeholder{box-sizing:border-box;color:var(--g-color-text-hint);min-height:36px;padding-block:8px}.g-list__item-content{align-items:center;display:flex;flex:1 1 auto;height:100%;overflow:hidden;text-overflow:ellipsis}.g-list__item-sort-icon{align-items:center;color:var(--g-color-text-hint);display:flex;flex:0 0 auto;margin-inline-end:4px;width:12px}.g-list__loading-indicator{align-items:center;display:flex;justify-content:center;width:100%}.g-select-filter .g-select-filter__input,.g-select-filter .g-select-filter__input:focus,.g-select-filter .g-select-filter__input:hover{border-color:var(--g-color-line-generic-active)}.g-select-list{display:flex;margin:4px 0;overflow:hidden}.g-popup .g-select-list:first-child,.g-popup .g-select-list:last-child{border-radius:0}.g-select-list:not(.g-select-list_virtualized){overflow:auto}.g-select-list_mobile{max-height:calc(90vh - 20px)}.g-select-list__group-label,.g-select-list__group-label-custom{box-sizing:border-box;height:auto;padding:0;position:relative;width:100%}.g-select-list__group-label{font-size:var(--g-text-body-1-font-size)}.g-select-list_size_s .g-select-list__group-label:not(.g-select-list__group-label_empty){height:24px;padding:8px 8px 4px}.g-select-list_size_m .g-select-list__group-label:not(.g-select-list__group-label_empty){height:28px;padding:8px 8px 4px}.g-select-list_size_l .g-select-list__group-label:not(.g-select-list__group-label_empty){height:36px;padding:10px 12px 6px}.g-select-list_size_xl .g-select-list__group-label:not(.g-select-list__group-label_empty){font-size:var(--g-text-body-2-font-size);height:44px;padding:12px 12px 8px}.g-select-list_mobile .g-select-list__group-label:not(.g-select-list__group-label_empty){font-size:var(--g-text-body-2-font-size);height:36px;padding:12px 12px 8px}.g-select-list__item:not(:first-child) .g-select-list__group-label{margin-block-start:5px}.g-select-list__item:not(:first-child) .g-select-list__group-label:before{background-color:var(--g-color-line-generic);content:"";height:1px;inset-block-start:-3px;inset-inline-start:0;position:absolute;width:100%}.g-select-list__group-label-content{font-weight:var(--g-text-accent-font-weight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.g-select-list__item.g-list__item_selected{background:none}.g-select-list__item.g-list__item_active,.g-select-list__item.g-list__item_selected:hover{background:var(--g-color-base-simple-hover)}.g-select-list__option{align-items:center;box-sizing:border-box;cursor:pointer;display:flex;height:100%;width:100%}.g-select-list_size_s .g-select-list__option{--_--select-tick-icon-padding-right:4px;padding:0 8px}.g-select-list_size_s .g-select-list__option .g-select-list__option-default-label{height:24px;line-height:24px}.g-select-list_size_m .g-select-list__option{--_--select-tick-icon-padding-right:4px;padding:0 8px}.g-select-list_size_m .g-select-list__option .g-select-list__option-default-label{height:28px;line-height:28px}.g-select-list_size_l .g-select-list__option{--_--select-tick-icon-padding-right:6px;padding:0 12px}.g-select-list_size_l .g-select-list__option .g-select-list__option-default-label{height:36px;line-height:36px}.g-select-list_size_xl .g-select-list__option{--_--select-tick-icon-padding-right:6px;padding:0 12px}.g-select-list_size_xl .g-select-list__option .g-select-list__option-default-label{font-size:var(--g-text-body-2-font-size);height:44px;line-height:44px}.g-select-list_mobile .g-select-list__option{padding:0 12px}.g-select-list_mobile .g-select-list__option .g-select-list__option-default-label{font-size:var(--g-text-body-2-font-size);height:36px;line-height:36px}.g-select-list_mobile .g-select-list__option .g-select-list__tick-icon{padding-inline-end:6px}.g-select-list__option_colored{background-color:var(--g-color-base-selection)}.g-select-list__option_disabled{cursor:default}.g-select-list__option-default-label{font-size:var(--g-text-body-1-font-size);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.g-select-list__option-default-label_disabled{color:var(--g-color-text-secondary)}.g-select-list__tick-icon{box-sizing:initial;color:var(--g-color-text-info);flex:0 0 16px;padding-inline-end:var(--_--select-tick-icon-padding-right);visibility:hidden}.g-select-list__tick-icon_shown{visibility:visible}.g-select-list__loading-indicator{align-items:center;display:flex;justify-content:center;width:100%}.g-select-empty-placeholder{color:var(--g-color-text-hint);margin:4px}.g-select-empty-placeholder_empty{margin-block-start:0}.g-select-control{--_--focus-outline-color:var(--g-select-focus-outline-color);align-items:center;background:none;border:none;box-sizing:border-box;color:inherit;cursor:pointer;display:inline-flex;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);outline:none;padding:0;position:relative;transition:transform .1s ease-out;width:100%;z-index:0}.g-select-control_disabled{cursor:default}.g-select-control_size_s{--_--text-right-padding:8px;--_--border-radius:var(--g-border-radius-s);height:24px;padding:4px calc(var(--_--text-right-padding) + 1px)}.g-select-control_size_m{--_--text-right-padding:8px;--_--border-radius:var(--g-border-radius-m);height:28px;padding:6px calc(var(--_--text-right-padding) + 1px)}.g-select-control_size_l{--_--text-right-padding:12px;--_--border-radius:var(--g-border-radius-l);height:36px;padding:10px calc(var(--_--text-right-padding) + 1px)}.g-select-control_size_xl{--_--text-right-padding:12px;--_--border-radius:var(--g-border-radius-xl);height:44px;padding:12px calc(var(--_--text-right-padding) + 1px)}.g-select-control__button{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:inline-flex;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);height:100%;outline:none;overflow:hidden;padding:0;transition:color .15s linear,background-color .15s linear;width:100%}.g-select-control__button.g-select-control__button_pin_round-round:before{border-radius:var(--_--border-radius)}.g-select-control__button.g-select-control__button_pin_brick-brick:before{border-radius:0}.g-select-control__button.g-select-control__button_pin_clear-clear:before{border-inline:0;border-radius:0}.g-select-control__button.g-select-control__button_pin_circle-circle:before{border-radius:100px}.g-select-control__button.g-select-control__button_pin_round-brick:before{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-start-end-radius:0;border-start-start-radius:var(--_--border-radius)}.g-select-control__button.g-select-control__button_pin_brick-round:before{border-end-end-radius:var(--_--border-radius);border-end-start-radius:0;border-start-end-radius:var(--_--border-radius);border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_round-clear:before{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-inline-end:0;border-start-end-radius:0;border-start-start-radius:var(--_--border-radius)}.g-select-control__button.g-select-control__button_pin_clear-round:before{border-end-end-radius:var(--_--border-radius);border-end-start-radius:0;border-inline-start:0;border-start-end-radius:var(--_--border-radius);border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_brick-clear:before{border-inline-end:0;border-radius:0}.g-select-control__button.g-select-control__button_pin_clear-brick:before{border-inline-start:0;border-radius:0}.g-select-control__button.g-select-control__button_pin_circle-brick:before{border-end-end-radius:0;border-end-start-radius:100px;border-start-end-radius:0;border-start-start-radius:100px}.g-select-control__button.g-select-control__button_pin_brick-circle:before{border-end-end-radius:100px;border-end-start-radius:0;border-start-end-radius:100px;border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_circle-clear:before{border-end-end-radius:0;border-end-start-radius:100px;border-inline-end:0;border-start-end-radius:0;border-start-start-radius:100px}.g-select-control__button.g-select-control__button_pin_clear-circle:before{border-end-end-radius:100px;border-end-start-radius:0;border-inline-start:0;border-start-end-radius:100px;border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_round-round:after{border-radius:var(--_--border-radius)}.g-select-control__button.g-select-control__button_pin_brick-brick:after{border-radius:0}.g-select-control__button.g-select-control__button_pin_clear-clear:after{border-inline:0;border-radius:0}.g-select-control__button.g-select-control__button_pin_circle-circle:after{border-radius:100px}.g-select-control__button.g-select-control__button_pin_round-brick:after{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-start-end-radius:0;border-start-start-radius:var(--_--border-radius)}.g-select-control__button.g-select-control__button_pin_brick-round:after{border-end-end-radius:var(--_--border-radius);border-end-start-radius:0;border-start-end-radius:var(--_--border-radius);border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_round-clear:after{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-inline-end:0;border-start-end-radius:0;border-start-start-radius:var(--_--border-radius)}.g-select-control__button.g-select-control__button_pin_clear-round:after{border-end-end-radius:var(--_--border-radius);border-end-start-radius:0;border-inline-start:0;border-start-end-radius:var(--_--border-radius);border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_brick-clear:after{border-inline-end:0;border-radius:0}.g-select-control__button.g-select-control__button_pin_clear-brick:after{border-inline-start:0;border-radius:0}.g-select-control__button.g-select-control__button_pin_circle-brick:after{border-end-end-radius:0;border-end-start-radius:100px;border-start-end-radius:0;border-start-start-radius:100px}.g-select-control__button.g-select-control__button_pin_brick-circle:after{border-end-end-radius:100px;border-end-start-radius:0;border-start-end-radius:100px;border-start-start-radius:0}.g-select-control__button.g-select-control__button_pin_circle-clear:after{border-end-end-radius:0;border-end-start-radius:100px;border-inline-end:0;border-start-end-radius:0;border-start-start-radius:100px}.g-select-control__button.g-select-control__button_pin_clear-circle:after{border-end-end-radius:100px;border-end-start-radius:0;border-inline-start:0;border-start-end-radius:100px;border-start-start-radius:0}.g-select-control__button:before{border:1px solid var(--g-color-line-generic);border-radius:var(--_--border-radius);content:"";inset:0;position:absolute}.g-select-control__button:after{content:"";inset:0;position:absolute;z-index:-1}.g-select-control__button_view_clear,.g-select-control__button_view_clear:after,.g-select-control__button_view_clear:before{border-color:#0000}.g-select-control__button_size_l,.g-select-control__button_size_m,.g-select-control__button_size_s{font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-short-line-height)}.g-select-control__button_size_xl{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.g-select-control__button_error:before{--_--focus-outline-color:var(--g-color-line-danger);border-color:var(--g-color-line-danger)}.g-select-control__button:hover:after{background-color:var(--g-color-base-simple-hover)}.g-select-control__button_disabled{color:var(--g-color-text-hint);pointer-events:none}.g-select-control__button_disabled:after{background-color:var(--g-color-base-generic-accent-disabled)}.g-select-control__button_disabled:before{border-color:#0000}.g-select-control__button:not(.g-select-control__button_error):not(.g-select-control__button_disabled):not(.g-select-control__button_view_clear):hover:before{border-color:var(--g-color-line-generic-hover)}.g-select-control__button:not(.g-select-control__button_error):not(.g-select-control__button_view_clear):focus-visible:before,.g-select-control__button_open:not(.g-select-control__button_error):not(.g-select-control__button_view_clear):before{border-color:var(--g-color-line-generic-active)}.g-select-control__button:focus-visible:before{outline:2px solid var(--_--focus-outline-color);outline:2px solid var(--g-select-focus-outline-color,var(--_--focus-outline-color));outline-offset:-1px}.g-select-control:not(.g-select-control_disabled):not(.g-select-control_no-active):active{transform:scale(.96)}.g-select-control__label{flex-shrink:0;font-weight:var(--g-text-accent-font-weight);margin-inline-end:4px;max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.g-select-control__option-text,.g-select-control__placeholder{overflow:hidden;padding-inline-end:var(--_--text-right-padding);text-overflow:ellipsis;white-space:nowrap}.g-select-control_has-clear.g-select-control_size_s .g-select-control__button_disabled .g-select-control__option-text,.g-select-control_has-clear.g-select-control_size_s .g-select-control__button_disabled .g-select-control__placeholder{padding-inline-end:calc(24px + var(--_--text-right-padding))}.g-select-control_has-clear.g-select-control_size_m .g-select-control__button_disabled .g-select-control__option-text,.g-select-control_has-clear.g-select-control_size_m .g-select-control__button_disabled .g-select-control__placeholder{padding-inline-end:calc(28px + var(--_--text-right-padding))}.g-select-control_has-clear.g-select-control_size_l .g-select-control__button_disabled .g-select-control__option-text,.g-select-control_has-clear.g-select-control_size_l .g-select-control__button_disabled .g-select-control__placeholder{padding-inline-end:calc(36px + var(--_--text-right-padding))}.g-select-control_has-clear.g-select-control_size_xl .g-select-control__button_disabled .g-select-control__option-text,.g-select-control_has-clear.g-select-control_size_xl .g-select-control__button_disabled .g-select-control__placeholder{padding-inline-end:calc(44px + var(--_--text-right-padding))}.g-select-control__placeholder{color:var(--g-color-text-hint)}.g-select-control_has-clear:not(.g-select-control_has-value).g-select-control_size_s .g-select-control__button:not(.g-select-control__button_disabled) .g-select-control__placeholder{padding-inline-end:calc(24px + var(--_--text-right-padding))}.g-select-control_has-clear:not(.g-select-control_has-value).g-select-control_size_m .g-select-control__button:not(.g-select-control__button_disabled) .g-select-control__placeholder{padding-inline-end:calc(28px + var(--_--text-right-padding))}.g-select-control_has-clear:not(.g-select-control_has-value).g-select-control_size_l .g-select-control__button:not(.g-select-control__button_disabled) .g-select-control__placeholder{padding-inline-end:calc(36px + var(--_--text-right-padding))}.g-select-control_has-clear:not(.g-select-control_has-value).g-select-control_size_xl .g-select-control__button:not(.g-select-control__button_disabled) .g-select-control__placeholder{padding-inline-end:calc(44px + var(--_--text-right-padding))}.g-select-control__chevron-icon{color:var(--g-color-text-secondary);flex:0 0 16px;margin-inline-start:auto}.g-select-control__chevron-icon_disabled{color:var(--g-color-text-hint)}.g-select-clear+.g-select-control__chevron-icon{margin-inline-start:0}.g-select-control__error-icon{background:none;border:none;border-radius:var(--g-focus-border-radius);box-sizing:initial;color:inherit;color:var(--g-color-text-danger);cursor:pointer;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);outline:none;padding:0;padding:var(--_--text-input-error-icon-padding)}.g-select-control__error-icon:focus{outline:2px solid var(--g-color-line-focus)}.g-select-control__error-icon:focus:not(:focus-visible){outline:0}.g-select-counter{align-items:center;background-color:var(--g-color-base-generic);display:flex;justify-content:center;margin-inline:4px}.g-select-counter__text{flex-grow:1;margin-inline:4px;text-align:center}.g-select-counter_size_xl .g-select-counter__text{margin-inline:6px}.g-select-counter_size_s{border-radius:var(--g-border-radius-xs);height:20px;min-width:20px}.g-select-counter_size_m{border-radius:var(--g-border-radius-s);height:24px;min-width:24px}.g-select-counter_size_l{border-radius:var(--g-border-radius-m);height:28px;min-width:28px}.g-select-counter_size_xl{border-radius:var(--g-border-radius-l);height:36px;margin-inline:4px;min-width:36px}.g-select-clear{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:inline-flex;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);justify-content:center;margin-inline-start:auto;outline:none;padding:0;z-index:1}.g-select-clear:focus-visible{border:1px solid var(--g-color-line-generic-active)}.g-select-clear_size_s{border-radius:var(--g-border-radius-s);height:24px;width:24px}.g-select-clear_size_m{border-radius:var(--g-border-radius-m);height:28px;width:28px}.g-select-clear_size_l{border-radius:var(--g-border-radius-l);height:36px;width:36px}.g-select-clear_size_xl{border-radius:var(--g-border-radius-xl);height:44px;width:44px}.g-select-clear__clear{color:var(--g-color-text-secondary)}.g-select-clear:hover .g-select-clear__clear{color:var(--g-color-text-primary)}.g-select-popup{display:flex;flex-direction:column;max-height:90vh}.g-sheet{position:fixed;z-index:100000}.g-sheet,.g-sheet__veil{height:100%;inset-block-start:0;inset-inline-start:0;width:100%}.g-sheet__veil{background-color:var(--g-color-sfx-veil);opacity:0;position:absolute;will-change:opacity}.g-sheet__veil_with-transition{transition:opacity .3s ease}.g-sheet__sheet{inset-block-start:100%;inset-inline-start:0;max-height:90%;position:absolute;width:100%;will-change:transform}.g-sheet__sheet_with-transition{transition:transform .3s ease}.g-sheet__sheet-swipe-area{height:40px;inset-block-start:-20px;inset-inline-start:0;position:absolute;width:100%;z-index:1}.g-sheet__sheet-top{background-color:var(--g-color-base-float);border-start-end-radius:20px;border-start-start-radius:20px;height:20px;position:relative}.g-sheet__sheet-top-resizer{--_--translate-x:calc(-50%*var(--g-flow-direction));background-color:var(--g-color-line-generic);border-radius:4px;height:4px;inset-block-start:50%;inset-inline-start:50%;position:absolute;transform:translateX(var(--_--translate-x)) translateY(-50%);width:40px}.g-sheet__sheet-content{background-color:var(--g-color-base-float);box-sizing:border-box;max-height:calc(90% - 20px);overflow:hidden auto;overscroll-behavior-y:contain;padding:0 10px;padding:var(--g-sheet-content-padding,0 10px);transition:height .3s ease;width:100%}.g-sheet__sheet-content_without-scroll{overflow:hidden}.g-sheet__sheet-content-title{font-size:var(--g-text-body-2-font-size);line-height:28px;overflow:hidden;padding-block-end:8px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.stack{--ydb-stack-base-z-index:100;--ydb-stack-offset-x:4px;--ydb-stack-offset-y:4px;--ydb-stack-offset-x-hover:4px;--ydb-stack-offset-y-hover:8px;position:relative}.stack__layer{background:var(--g-color-base-background);transition:transform .1s ease-out}.stack__layer:first-child{position:relative;z-index:var(--ydb-stack-base-z-index)}.stack__layer+.stack__layer{height:100%;left:0;position:absolute;top:0;transform:translate(calc(var(--ydb-stack-level)*var(--ydb-stack-offset-x)),calc(var(--ydb-stack-level)*var(--ydb-stack-offset-y)));width:100%;z-index:calc(var(--ydb-stack-base-z-index) - var(--ydb-stack-level))}.stack:hover .stack__layer:first-child{transform:translate(calc(var(--ydb-stack-offset-x-hover)*-1),calc(var(--ydb-stack-offset-y-hover)*-1))}.stack:hover .stack__layer+.stack__layer{transform:translate(calc(var(--ydb-stack-level)*var(--ydb-stack-offset-x-hover)*2 - var(--ydb-stack-offset-x-hover)),calc(var(--ydb-stack-level)*var(--ydb-stack-offset-y-hover)*2 - var(--ydb-stack-offset-y-hover)))}.storage-disk-progress-bar{background-color:var(--g-color-base-misc-light);border:1px solid var(--g-color-base-misc-heavy);border-radius:4px;color:var(--g-color-text-primary);display:block;height:var(--g-text-body-3-line-height);min-width:50px;position:relative;text-align:center;z-index:0}.storage-disk-progress-bar_compact{border-radius:2px;height:12px;min-width:0}.storage-disk-progress-bar_compact .storage-disk-progress-bar__filled{border-radius:1px}.storage-disk-progress-bar .storage-disk-progress-bar__filled{background-color:var(--g-color-base-misc-medium)}.storage-disk-progress-bar_green{background-color:var(--g-color-base-positive-light);border-color:var(--g-color-base-positive-heavy)}.storage-disk-progress-bar_green .storage-disk-progress-bar__filled{background-color:var(--g-color-base-positive-medium)}.g-root_theme_dark .storage-disk-progress-bar_green .storage-disk-progress-bar__filled{background-color:#7ce37966}.storage-disk-progress-bar_blue{background-color:var(--g-color-base-info-light);border-color:var(--g-color-base-info-heavy)}.storage-disk-progress-bar_blue .storage-disk-progress-bar__filled{background-color:var(--g-color-base-info-medium)}.storage-disk-progress-bar_yellow{background-color:var(--g-color-base-yellow-light);border-color:var(--g-color-base-warning-heavy)}.storage-disk-progress-bar_yellow .storage-disk-progress-bar__filled{background-color:var(--g-color-base-yellow-medium)}.storage-disk-progress-bar_orange{background-color:var(--g-color-base-warning-light);border-color:var(--ydb-color-status-orange)}.storage-disk-progress-bar_orange .storage-disk-progress-bar__filled{background-color:var(--g-color-base-warning-medium)}.storage-disk-progress-bar_red{background-color:var(--g-color-base-danger-light);border-color:var(--g-color-base-danger-heavy)}.storage-disk-progress-bar_red .storage-disk-progress-bar__filled{background-color:var(--g-color-base-danger-medium)}.storage-disk-progress-bar__filled{border-radius:3px 0 0 3px;height:100%;left:0;position:absolute;top:0}.storage-disk-progress-bar_inverted .storage-disk-progress-bar__filled{border-radius:0 3px 3px 0;left:auto;right:0}.storage-disk-progress-bar__filled-title{color:inherit;font-size:var(--g-text-body-1-font-size);line-height:calc(var(--g-text-body-3-line-height) - 2px);position:relative;z-index:2}.pdisk-storage-popup,.vdisk-storage-popup{padding:12px}.vdisk-storage-popup .info-viewer+.info-viewer{border-top:1px solid var(--g-color-line-generic);margin-top:8px;padding-top:8px}.vdisk-storage-popup__donor-label{margin-bottom:8px}.ydb-vdisk-component,.ydb-vdisk-component__content{border-radius:4px}.global-storage-groups__vdisks-column{overflow:visible}.global-storage-groups__vdisks-wrapper{display:flex;gap:10px;justify-content:center;min-width:500px}.global-storage-groups__vdisks-item{flex-grow:1;max-width:200px}.data-table__row:hover .global-storage-groups__vdisks-item .stack__layer{background:var(--ydb-data-table-color-hover)}.global-storage-groups__pool-name-wrapper{width:230px}.global-storage-groups__group-id{font-weight:500}.pdisk-storage{position:relative;width:120px}.pdisk-storage__content{border-radius:4px;display:block;position:relative}.pdisk-storage__vdisks{display:flex;flex-wrap:wrap;gap:2px;margin-bottom:4px}.pdisk-storage__vdisks-item{flex-basis:5px;flex-shrink:0}.data-table__row:hover .pdisk-storage__vdisks-item .stack__layer{background:var(--ydb-data-table-color-hover)}.pdisk-storage__donors-stack{--ydb-stack-offset-x:0px;--ydb-stack-offset-y:-2px;--ydb-stack-offset-x-hover:0px;--ydb-stack-offset-y-hover:-7px}.pdisk-storage__media-type{color:var(--g-color-text-secondary);font-size:var(--g-text-body-1-font-size);line-height:var(--g-text-body-3-line-height);position:absolute;right:4px;top:0}.global-storage-nodes__pdisks-column{overflow:visible}.global-storage-nodes__pdisks-wrapper{align-items:flex-end;display:flex;justify-content:left;width:-webkit-max-content;width:max-content}.global-storage-nodes__pdisks-item{flex-grow:1;margin-right:10px;max-width:200px}.global-storage-nodes__pdisks-item:last-child{margin-right:0}.global-storage-nodes__group-id{font-weight:500}.global-storage-nodes__node_unavailable{opacity:.6}.global-storage__search{width:238px}.global-storage__table .g-tooltip{height:var(--g-text-body-2-line-height)!important}.global-storage .entity-status{justify-content:center}.tenants__format-label{margin-right:15px}.tenants__title{text-align:center}.tenants__tooltip{animation:none!important}.tenants__search{width:238px}.tenants__tablets{padding:0!important}.tenants__tablets .tablets-viewer__grid{grid-gap:20px}.tenants__type{align-items:center;display:flex;flex-direction:row;gap:10px}.tenants__type-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:-webkit-min-content;width:min-content}.tenants__type-button{display:none}.data-table__row:hover .tenants__type-button{display:block}.tenants__monitoring-button{margin-left:4px}.tenants__name{overflow:hidden}.ydb-loader{align-items:center;display:flex;flex:1 1 auto;height:100%;justify-content:center}.ydb-versions-nodes-tree-title__overview{align-items:center;display:flex;justify-content:space-between;width:100%}.ydb-versions-nodes-tree-title__overview-info{align-items:center;display:flex;margin-left:25px}.ydb-versions-nodes-tree-title__overview-info>:not(:first-child){margin-left:30px}.ydb-versions-nodes-tree-title__overview-container{align-items:center;display:flex}.ydb-versions-nodes-tree-title__info-label{color:var(--g-color-text-complementary);font-weight:200}.ydb-versions-nodes-tree-title__info-label_margin_left{margin-left:5px}.ydb-versions-nodes-tree-title__info-label_margin_right{margin-right:5px}.ydb-versions-nodes-tree-title__version-color{border-radius:100%;height:16px;margin-right:10px;width:16px}.ydb-versions-nodes-tree-title__version-progress{align-items:center;display:flex;width:250px}.ydb-versions-nodes-tree-title__version-progress .g-progress{width:200px}.ydb-versions-nodes-tree-title__overview-title{align-items:center;display:flex}.ydb-versions-nodes-tree-title__clipboard-button{color:var(--g-color-text-secondary);margin-left:8px;visibility:hidden}.g-progress{--_--empty-background-color:var(--g-color-base-generic);--_--empty-text-color:var(--g-color-text-primary);--_--filled-text-color:var(--g-color-text-primary);--_--filled-background-color:var(--g-color-base-neutral-medium);background-color:var(--_--empty-background-color);background-color:var(--g-progress-empty-background-color,var(--_--empty-background-color));border-radius:3px;margin:0 auto;overflow:hidden;position:relative;text-align:center}.g-progress__text{color:var(--_--empty-text-color);color:var(--g-progress-empty-text-color,var(--_--empty-text-color));position:relative}.g-progress__text,.g-progress__text-inner{box-sizing:border-box;font-family:var(--g-text-body-font-family);font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);padding:0 10px}.g-progress__text-inner{color:var(--_--empty-text-color);color:var(--g-progress-filled-text-color,var(--_--empty-text-color));height:100%;position:absolute;transition:transform .6s ease;width:100%}.g-progress__item{background-color:var(--_--filled-background-color);background-color:var(--g-progress-filled-background-color,var(--_--filled-background-color));float:left;height:100%;overflow:hidden;position:relative;transition:transform .6s ease,width .6s ease,background-color .6s ease;width:100%}[dir=rtl] .g-progress__item{float:right}.g-progress__item_theme_default{--_--filled-background-color:var(--g-color-base-neutral-medium)}.g-progress__item_theme_success{--_--filled-background-color:var(--g-color-base-positive-medium)}.g-progress__item_theme_warning{--_--filled-background-color:var(--g-color-base-warning-medium)}.g-progress__item_theme_danger{--_--filled-background-color:var(--g-color-base-danger-medium)}.g-progress__item_theme_info{--_--filled-background-color:var(--g-color-base-info-medium)}.g-progress__item_theme_misc{--_--filled-background-color:var(--g-color-base-misc-medium)}.g-progress__item_loading{animation:g-loading-animation .5s linear infinite;background-clip:padding-box;background-image:repeating-linear-gradient(-45deg,#ffffff4d,#ffffff4d 4px,#0000 0,#0000 8px);background-size:150%}.g-progress__stack{color:var(--g-color-text-light-primary);margin:0 auto;overflow:hidden;position:relative;transition:transform .6s ease;width:100%}.g-progress_size_m,.g-progress_size_m .g-progress__stack{height:20px;line-height:20px}.g-progress_size_m .g-progress__text{height:20px;margin-block-end:-20px}.g-progress_size_s,.g-progress_size_s .g-progress__stack{height:10px;line-height:10px}.g-progress_size_xs,.g-progress_size_xs .g-progress__stack{height:4px;line-height:4px}.g-progress_size_s .g-progress__text,.g-progress_size_s .g-progress__text-inner,.g-progress_size_xs .g-progress__text,.g-progress_size_xs .g-progress__text-inner{display:none}.ydb-versions-grouped-node-tree_first-level{border:1px solid var(--g-color-line-generic);border-radius:10px;margin-bottom:10px;margin-top:10px}.ydb-versions-grouped-node-tree__dt-wrapper{margin-left:24px;margin-right:24px;overflow:auto hidden;position:relative;z-index:0}.ydb-versions-grouped-node-tree__dt-wrapper .data-table__head-row:first-child .data-table__th:first-child,.ydb-versions-grouped-node-tree__dt-wrapper .data-table__td:first-child{background-color:var(--g-color-base-background);border-right:1px solid var(--g-color-line-generic);left:0;position:-webkit-sticky;position:sticky;z-index:2000}.ydb-versions-grouped-node-tree__dt-wrapper .data-table__row:hover .data-table__td:first-child{background-color:var(--ydb-data-table-color-hover)!important}.ydb-versions-grouped-node-tree__dt-wrapper .data-table__head-row:first-child .data-table__th:nth-child(2),.ydb-versions-grouped-node-tree__dt-wrapper .data-table__td:nth-child(2){background-color:var(--g-color-base-background);border-right:1px solid var(--g-color-line-generic);left:80px;position:-webkit-sticky;position:sticky;z-index:2000}.ydb-versions-grouped-node-tree__dt-wrapper .data-table__row:hover .data-table__td:nth-child(2){background-color:var(--ydb-data-table-color-hover)!important}.ydb-versions-grouped-node-tree__dt-wrapper .data-table__head-row:first-child .data-table__th:first-child,.ydb-versions-grouped-node-tree__dt-wrapper .data-table__head-row:first-child .data-table__th:nth-child(0),.ydb-versions-grouped-node-tree__dt-wrapper .data-table__td:first-child,.ydb-versions-grouped-node-tree__dt-wrapper .data-table__td:nth-child(0){border-right:initial;box-shadow:none}.ydb-versions-grouped-node-tree__dt-wrapper .data-table__head-row:first-child .data-table__th:nth-child(2),.ydb-versions-grouped-node-tree__dt-wrapper .data-table__td:nth-child(2){box-shadow:none}.ydb-versions-grouped-node-tree .ydb-tree-view{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.ydb-versions-grouped-node-tree .ydb-tree-view .ydb-tree-view{margin-left:24px}.ydb-versions-grouped-node-tree .tree-view_item{border:0;border-radius:10px;height:40px;margin:0;padding:0 10px!important}.ydb-versions-grouped-node-tree .tree-view_children .tree-view_item{width:100%}.ydb-versions-grouped-node-tree .g-progress__stack{cursor:pointer}.ydb-tree-view{--ydb-tree-view-level:0;font-size:13px;line-height:18px}.ydb-tree-view,.ydb-tree-view *{box-sizing:border-box}.ydb-tree-view__item{align-items:center;border-bottom:1px solid var(--g-color-line-generic-solid);cursor:pointer;display:flex;height:24px;padding-left:calc(24px*var(--ydb-tree-view-level));padding-right:3px}.ydb-tree-view__item:hover{background-color:var(--g-color-base-simple-hover)}.ydb-tree-view__item:hover .ydb-tree-view__actions{display:flex}.ydb-tree-view__item_active{background-color:var(--g-color-base-selection);font-weight:700}.ydb-tree-view__item_active:hover{background-color:var(--g-color-base-selection-hover)}.ydb-tree-view__content{align-items:center;display:flex;flex-grow:1;overflow:hidden}.ydb-tree-view__icon{align-items:center;color:var(--g-color-text-hint);display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.ydb-tree-view__icon svg{display:block}.ydb-tree-view__text{flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ydb-tree-view__actions{align-items:center;display:none;margin-left:6px}.ydb-tree-view__arrow{background:url('data:image/svg+xml;utf8,') no-repeat 50%;border:none;cursor:pointer;flex-shrink:0;height:24px;padding:0;width:24px}.g-root_theme_dark .ydb-tree-view__arrow{background:url('data:image/svg+xml;utf8,') no-repeat 50%}.ydb-tree-view__arrow:focus-visible{outline:2px solid var(--g-color-line-focus)}.ydb-tree-view__arrow:not(.ydb-tree-view__arrow_collapsed){transform:rotate(90deg)}.ydb-tree-view__arrow_hidden{visibility:hidden}.ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:24px}.ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:48px}.ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:72px}.ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:96px}.ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view .ydb-tree-view__item{padding-left:120px}.g-dropdown-menu__switcher-wrapper{display:inline-block}.g-dropdown-menu__switcher-button{display:flex}.g-dropdown-menu__menu-item_separator{border-block-start:1px solid var(--g-color-line-generic-solid);margin:.5em 0;pointer-events:none}.g-dropdown-menu__sub-menu-arrow{inset-inline-end:-4px;position:relative}.g-dropdown-menu__sub-menu{position:relative}.g-dropdown-menu__sub-menu .g-dropdown-menu__menu:after,.g-dropdown-menu__sub-menu .g-dropdown-menu__menu:before{content:"";height:100%;inset-block-start:0;position:absolute;width:10px}.g-dropdown-menu__sub-menu .g-dropdown-menu__menu:before{inset-inline-start:-10px}.g-dropdown-menu__sub-menu .g-dropdown-menu__menu:after{inset-inline-end:-10px}.g-menu{background-color:var(--g-color-base-float);box-sizing:border-box;color:var(--g-color-text-primary);display:block;font-size:var(--g-text-body-1-font-size);list-style:none;margin:0;outline:none;overflow:hidden auto;padding:0;-webkit-user-select:none;user-select:none}.g-menu__list-group-item+.g-menu__list-group-item,.g-menu__list-group-item+.g-menu__list-item,.g-menu__list-item+.g-menu__list-group-item{border-block-start:1px solid var(--g-color-line-generic)}.g-menu__item{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;color:var(--g-color-text-primary);display:flex;outline:none;text-decoration:none;touch-action:manipulation}.g-menu__item-icon{display:flex}.g-menu__item-icon-end{display:flex;margin-inline-end:0}.g-menu__item-content{flex-grow:1;min-width:0}.g-menu__item_interactive{cursor:pointer}.g-menu__item_interactive:focus-visible,.g-menu__item_interactive:hover{background-color:var(--g-color-base-simple-hover)}.g-menu__item_selected{background-color:var(--g-color-base-simple-hover)}.g-menu__item_disabled{color:var(--g-color-text-secondary);cursor:default;pointer-events:none}.g-menu__item_disabled:hover{background-color:initial}.g-menu__item_active{background-color:var(--g-color-base-selection);cursor:default}.g-menu__item_active:focus-visible,.g-menu__item_active:hover{background-color:var(--g-color-base-selection-hover)}.g-menu__item_theme_danger:not(.g-menu__item_disabled){color:var(--g-color-text-danger)}.g-menu__group-label{color:var(--g-color-text-hint);font-weight:var(--g-text-accent-font-weight)}.g-menu__group-list{list-style:none;margin:0;padding:0}.g-menu_size_s{line-height:24px;padding:3px 0}.g-menu_size_s .g-menu__group-label,.g-menu_size_s .g-menu__item{padding:0 10px}.g-menu_size_s .g-menu__item-icon{margin-inline-end:3px}.g-menu_size_s .g-menu__item-icon-end{margin-inline-start:3px}.g-menu_size_s .g-menu__list-group-item+.g-menu__list-group-item,.g-menu_size_s .g-menu__list-group-item+.g-menu__list-item,.g-menu_size_s .g-menu__list-item+.g-menu__list-group-item{margin-block-start:3px;padding-block-start:3px}.g-menu_size_m{line-height:24px;padding:4px 0}.g-menu_size_m .g-menu__group-label,.g-menu_size_m .g-menu__item{padding:0 13px}.g-menu_size_m .g-menu__item-icon{margin-inline-end:4px}.g-menu_size_m .g-menu__item-icon-end{margin-inline-start:4px}.g-menu_size_m .g-menu__list-group-item+.g-menu__list-group-item,.g-menu_size_m .g-menu__list-group-item+.g-menu__list-item,.g-menu_size_m .g-menu__list-item+.g-menu__list-group-item{margin-block-start:4px;padding-block-start:4px}.g-menu_size_l{line-height:28px;padding:5px 0}.g-menu_size_l .g-menu__group-label,.g-menu_size_l .g-menu__item{padding:0 15px}.g-menu_size_l .g-menu__item-icon{margin-inline-end:5px}.g-menu_size_l .g-menu__item-icon-end{margin-inline-start:5px}.g-menu_size_l .g-menu__list-group-item+.g-menu__list-group-item,.g-menu_size_l .g-menu__list-group-item+.g-menu__list-item,.g-menu_size_l .g-menu__list-item+.g-menu__list-group-item{margin-block-start:5px;padding-block-start:5px}.g-menu_size_xl{font-size:var(--g-text-body-2-font-size);line-height:36px;padding:6px 0}.g-menu_size_xl .g-menu__group-label,.g-menu_size_xl .g-menu__item{padding:0 15px}.g-menu_size_xl .g-menu__item-icon{margin-inline-end:6px}.g-menu_size_xl .g-menu__item-icon-end{margin-inline-start:6px}.g-menu_size_xl .g-menu__list-group-item:not(:first-child){margin-block-start:6px;padding-block-start:6px}.g-menu_size_xl .g-menu__list-group-item:not(:last-child){margin-block-end:6px;padding-block-end:6px}.ydb-versions__controls{align-items:center;display:flex;padding:0 0 20px}.ydb-versions__controls .ydb-versions__label{font-weight:500;margin-right:10px}.ydb-versions__controls .ydb-versions__checkbox{margin:0}.ydb-versions__controls>*{margin-right:25px}.g-checkbox__indicator{cursor:inherit;display:inline-block;position:relative}.g-checkbox__indicator:before{background-color:initial;border:1px solid var(--g-color-line-generic-accent);border-radius:4px;content:"";inset:0;position:absolute;transition:background .1s linear}.g-checkbox__indicator:after{content:" ";visibility:hidden}.g-checkbox__icon{align-items:center;color:#0000;display:flex;inset:0;justify-content:center;pointer-events:none;position:absolute;transform:translateY(-5px);transition:color .1s,transform .2s;visibility:hidden}.g-checkbox__control{border:none;cursor:inherit;margin:0;opacity:0;outline:none;padding:0}.g-checkbox__control,.g-checkbox__outline{background:none;height:100%;inset-block-start:0;inset-inline-start:0;position:absolute;width:100%}.g-checkbox__outline{border-radius:4px;pointer-events:none}.g-checkbox__control:focus-visible+.g-checkbox__outline{outline:2px solid var(--g-color-line-focus)}.g-checkbox_size_m .g-checkbox__icon-svg_type_tick{height:10px;width:8px}.g-checkbox_size_m .g-checkbox__icon-svg_type_dash{height:12px;width:12px}.g-checkbox_size_m .g-checkbox__indicator{height:14px;width:14px}.g-checkbox_size_l .g-checkbox__icon-svg_type_tick{height:9px;width:11px}.g-checkbox_size_l .g-checkbox__icon-svg_type_dash{height:15px;width:15px}.g-checkbox_size_l .g-checkbox__indicator{height:17px;width:17px}.g-checkbox:hover .g-checkbox__indicator:before{border-color:var(--g-color-line-generic-accent-hover)}.g-checkbox_checked .g-checkbox__indicator:before,.g-checkbox_indeterminate .g-checkbox__indicator:before{background-color:var(--g-color-base-brand);border:#0000}.g-checkbox_checked .g-checkbox__icon,.g-checkbox_indeterminate .g-checkbox__icon{color:var(--g-color-text-brand-contrast);transform:translateX(0);visibility:visible}.g-checkbox_disabled .g-checkbox__indicator:before{background-color:var(--g-color-base-generic-accent-disabled);border:#0000}.g-checkbox_disabled.g-checkbox_checked .g-checkbox__indicator:before,.g-checkbox_disabled.g-checkbox_indeterminate .g-checkbox__indicator:before{background-color:var(--g-color-base-brand);opacity:.5}.ydb-info-viewer-skeleton{display:flex;flex-direction:column;gap:16px}.ydb-info-viewer-skeleton__row{align-items:flex-start;display:flex}.ydb-info-viewer-skeleton__row,.ydb-info-viewer-skeleton__row .g-skeleton{min-height:var(--g-text-body-2-font-size)}.ydb-info-viewer-skeleton__label{align-items:baseline;display:flex;flex:0 1 auto;width:200px}.ydb-info-viewer-skeleton__label__text{width:100px}.ydb-info-viewer-skeleton__label__dots{border-bottom:1px dotted var(--g-color-text-secondary);margin:0 2px;width:100px}.ydb-info-viewer-skeleton__value{max-width:20%;min-width:200px}.ydb-link-with-icon{align-items:center;display:flex;flex-wrap:nowrap;white-space:nowrap}.tablet-icon{border:1px solid;border-radius:4px;display:flex;font-size:10px;height:16px;justify-content:center;text-transform:uppercase;width:23px}.tablet-icon__type{line-height:14px}.tablet{border-color:var(--g-color-base-generic-medium-hover);color:var(--g-color-text-complementary);cursor:pointer}.tablet__wrapper{margin-bottom:2px;margin-right:2px}.tablet__wrapper:last-child{margin-right:0}.tablet__popup-content{padding:10px}.tablet_status_grey{background-color:var(--ydb-color-status-grey)}.tablet_status_yellow{background-color:var(--ydb-color-status-yellow)}.tablet_status_orange{background-color:var(--ydb-color-status-orange)}.tablet_status_red{background-color:var(--ydb-color-status-red)}.tablet_status_green{background-color:var(--ydb-color-status-green)}.tablet_status_blue{background-color:var(--ydb-color-status-blue)}.tablet_status_black{background-color:var(--ydb-color-status-black)}.tag{background:var(--g-color-base-generic);border-radius:3px;color:var(--g-color-text-primary);font-size:12px;margin-right:5px;padding:2px 5px;text-transform:uppercase}.tag:last-child{margin-right:0}.tag_type_blue{background-color:var(--g-color-celestial-thunder)}.tags{align-items:center;display:flex;flex-wrap:wrap}.ydb-cluster-versions-bar{display:flex;flex-direction:column;width:600px}.ydb-cluster-versions-bar .g-progress{width:100%}.ydb-cluster-versions-bar__versions{display:flex;flex-flow:row wrap;margin-top:6px}.ydb-cluster-versions-bar__version-title{margin-left:3px;white-space:nowrap}.ydb-cluster-versions-bar .g-progress__stack{cursor:pointer}.cluster-info{padding-top:20px}.cluster-info__skeleton{margin-top:5px}.cluster-info__error{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.cluster-info__system-tablets{align-items:center;display:flex;flex-wrap:wrap}.cluster-info__system-tablets .tablet{margin-top:2px}.cluster-info__metrics{margin:0 -15px;padding:0 15px!important}.cluster-info__metrics .info-viewer__items{grid-template-columns:repeat(2,minmax(auto,250px))}.cluster-info__metrics .info-viewer__label{width:50px}.cluster-info__metrics .info-viewer__value{width:130px}.cluster-info__tablets{margin-left:15px;padding:0!important}.cluster-info__links{display:flex;flex-flow:row wrap;gap:12px}.cluster-info__storage-groups-stats{display:flex;flex-direction:column;gap:11px}.cluster-info__groups-stats-bar{cursor:pointer}.cluster-info__groups-stats-popup-content{padding:12px}.cluster-info__clipboard-button{align-items:center;display:flex;margin-left:5px}.cluster{display:flex;flex-direction:column;flex-grow:1;flex:1 1 auto;height:100%;overflow:auto;padding:0 20px}.cluster__header{left:0;padding:20px 0;position:-webkit-sticky;position:sticky}.cluster__title{font-size:var(--g-text-header-1-font-size);font-weight:var(--g-text-header-font-weight);line-height:var(--g-text-header-1-line-height)}.cluster__title-skeleton{height:var(--g-text-header-1-line-height);min-width:200px;width:20%}.cluster__tabs{left:0;position:-webkit-sticky;position:sticky}.kv-user{color:var(--g-color-text-primary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.kv-user,.kv-user__name{display:inline-block}.kv-user__name:first-letter{color:var(--g-color-text-danger)}.g-action-tooltip{--g-popup-border-width:0;--g-popup-background-color:var(--g-color-base-float-heavy)}.g-action-tooltip__content{box-sizing:border-box;color:var(--g-color-text-light-primary);max-width:300px;padding:6px 12px}.g-action-tooltip__heading{align-items:baseline;display:flex;justify-content:space-between}.g-action-tooltip__title{color:var(--g-color-text-light-primary)}.g-action-tooltip__hotkey{margin-inline-start:8px}.g-action-tooltip__description{color:var(--g-color-text-light-secondary);margin-block-start:4px}.g-hotkey{border-radius:4px;padding:1px 5px}.g-hotkey,.g-hotkey kbd{font-family:var(--g-font-family-sans);font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-hotkey_view_light{background-color:var(--g-color-base-generic)}.g-hotkey_view_light .g-hotkey__plus{color:var(--g-color-text-hint)}.g-hotkey_view_dark{background-color:var(--g-color-base-light-simple-hover);color:var(--g-color-text-light-complementary)}.g-hotkey_view_dark .g-hotkey__plus{color:var(--g-color-text-light-hint)}.clusters{display:flex;flex:1 1 auto;flex-direction:column;font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);overflow:auto;padding-top:15px}.clusters__cluster{align-items:center;display:flex}.clusters__cluster-status{border-radius:3px;height:18px;margin-right:8px;width:18px}.clusters__cluster-status span{align-items:center;display:flex}.clusters__cluster-status_type_green{background-color:var(--ydb-color-status-green)}.clusters__cluster-status_type_yellow{background-color:var(--ydb-color-status-yellow)}.clusters__cluster-status_type_blue{background-color:var(--ydb-color-status-blue)}.clusters__cluster-status_type_red{background:var(--ydb-color-status-red)}.clusters__cluster-status_type_grey{background:var(--ydb-color-status-grey)}.clusters__cluster-status_type_orange{background:var(--ydb-color-status-orange)}.clusters__cluster-name{color:var(--g-color-text-link);text-decoration:none;white-space:normal}.clusters__cluster-versions{text-decoration:none}.clusters__cluster-version{overflow:hidden;text-overflow:ellipsis}.clusters__cluster-dc{white-space:normal}.clusters__controls{display:flex;margin-bottom:20px}.clusters__control{margin-right:15px;width:200px}.clusters__control_wide{width:300px}.clusters__empty-cell{color:var(--g-color-text-secondary)}.clusters__tooltip-content{word-break:break-all}.clusters .g-progress__item{transition:none}.clusters__aggregation,.clusters__controls{margin-left:15px}.clusters__aggregation{align-items:center;background:var(--g-color-base-generic-ultralight);border:1px solid var(--g-color-line-generic);border-radius:10px;display:flex;height:46px;margin-bottom:20px;padding:10px 20px;width:-webkit-max-content;width:max-content}.clusters__aggregation-value-container{align-items:center;display:flex;font-size:var(--g-text-subheader-3-font-size);line-height:var(--g-text-subheader-3-line-height);max-width:200px}.clusters__aggregation-value-container:not(:last-child){margin-right:30px}.clusters__aggregation-label{color:var(--g-color-text-complementary);font-weight:200;margin-right:8px}.clusters__text{color:var(--g-color-text-primary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.clusters__text:first-letter{color:var(--g-color-text-danger)}.clusters__description{max-width:200px;white-space:pre-wrap}.clusters__table-wrapper{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto;padding-left:5px}.clusters__table-content{height:100%;overflow:auto}.clusters__table .data-table__head-row:first-child .data-table__th:first-child,.clusters__table .data-table__td:first-child{background-color:var(--g-color-base-background);border-right:1px solid var(--g-color-line-generic);left:0;position:-webkit-sticky;position:sticky;z-index:2000}.clusters__table .data-table__row:hover .data-table__td:first-child{background-color:var(--ydb-data-table-color-hover)!important}.clusters__table .data-table__head-row:first-child .data-table__th:nth-child(0),.clusters__table .data-table__td:nth-child(0){border-right:initial;box-shadow:none}.clusters__table .data-table__head-row:first-child .data-table__th:first-child,.clusters__table .data-table__td:first-child{box-shadow:none}.clusters__balancer-cell{align-items:center;display:flex;flex-direction:row}.clusters__balancer-text{display:inline-block;margin-right:5px;max-width:92%;overflow:hidden;overflow-wrap:break-word!important;text-overflow:ellipsis}.clusters__balancer-icon{align-items:center;display:flex}.clusters__error{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin-left:15px}.g-table-column-setup__status{color:var(--g-color-text-secondary);margin-inline-start:5px}.g-inner-table-column-setup{display:inline-block}.g-inner-table-column-setup__controls{margin:var(--g-spacing-1) var(--g-spacing-1) 0}.g-list-container-view{box-sizing:border-box;outline:none;width:100%}.g-list-container-view_fixed-height{height:300px;height:var(--g-list-container-height,300px)}.g-list-container-view:not(.g-list-container-view_fixed-height){overflow:auto}.g-list-item-view{flex-shrink:0}.g-list-item-view__main-content{grid-gap:2px;grid-gap:var(--g-spacing-half,2px);display:grid;gap:2px;gap:var(--g-spacing-half,2px);width:100%}.g-list-item-view:hover.g-list-item-view_activeOnHover,.g-list-item-view_active{background:var(--g-color-base-simple-hover)}.g-list-item-view_clickable{cursor:pointer}.g-list-item-view_selected,.g-list-item-view_selected.g-list-item-view_active,.g-list-item-view_selected:hover.g-list-item-view_activeOnHover{background:var(--g-color-base-selection)}.g-list-item-view_dragging,.g-list-item-view_dragging.g-list-item-view_active,.g-list-item-view_dragging.g-list-item-view_selected{background:var(--g-color-base-simple-hover-solid)}.g-list-item-view_radius_s{border-radius:3px;border-radius:var(--g-list-item-border-radius,3px)}.g-list-item-view_radius_m{border-radius:5px;border-radius:var(--g-list-item-border-radius,5px)}.g-list-item-view_radius_l{border-radius:6px;border-radius:var(--g-list-item-border-radius,6px)}.g-list-item-view_radius_xl{border-radius:8px;border-radius:var(--g-list-item-border-radius,8px)}.g-list-item-view__icon,.g-list-item-view__slot{flex-shrink:0}.g-tree-select{max-width:100%}.g-tree-select_width_max{width:100%}.g-tree-select__popup{overflow:hidden;padding:4px 0}.g-tree-select__popup_size_s{border-radius:5px;border-radius:var(--g-list-container-border-radius,5px)}.g-tree-select__popup_size_m{border-radius:6px;border-radius:var(--g-list-container-border-radius,6px)}.g-tree-select__popup_size_l{border-radius:8px;border-radius:var(--g-list-container-border-radius,8px)}.g-tree-select__popup_size_xl{border-radius:10px;border-radius:var(--g-list-container-border-radius,10px)}.g-tree-select__list{padding:0 4px}.g-list-recursive-renderer{margin:0;padding:0}.header{border-bottom:1px solid var(--g-color-line-generic);flex:0 0 40px;justify-content:space-between;padding:0 20px 0 12px}.header,.header__breadcrumb{align-items:center;display:flex}.header__breadcrumb__icon{display:flex;margin-right:3px}.g-breadcrumbs__inner{align-items:center;display:inline-flex;gap:4px;min-height:24px;overflow:hidden;width:100%}.g-breadcrumbs__switcher{background:none;border:none;color:inherit;color:var(--g-color-text-secondary);cursor:pointer;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);outline:none;padding:0}.g-breadcrumbs__switcher:focus-visible{outline:2px solid var(--g-color-line-focus)}.g-breadcrumbs__item,.g-breadcrumbs__switcher{display:inline-block;flex-shrink:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.g-breadcrumbs__item:focus-visible,.g-breadcrumbs__switcher:focus-visible{border-radius:var(--g-focus-border-radius);outline:2px solid var(--g-color-line-focus)}.g-breadcrumbs_calculated_no .g-breadcrumbs__item{overflow:visible}.g-breadcrumbs__divider{align-items:center;color:var(--g-color-text-secondary);display:flex}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item .g-menu__item{padding-inline-start:80px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(0) .g-menu__item{padding-inline-start:0!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:first-child .g-menu__item{padding-inline-start:8px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(2) .g-menu__item{padding-inline-start:16px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(3) .g-menu__item{padding-inline-start:24px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(4) .g-menu__item{padding-inline-start:32px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(5) .g-menu__item{padding-inline-start:40px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(6) .g-menu__item{padding-inline-start:48px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(7) .g-menu__item{padding-inline-start:56px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(8) .g-menu__item{padding-inline-start:64px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(9) .g-menu__item{padding-inline-start:72px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(10) .g-menu__item{padding-inline-start:80px!important}.basic-node-viewer__link,.link{color:var(--g-color-text-link);text-decoration:none}.basic-node-viewer__link:hover,.link:hover{color:var(--g-color-text-link-hover)}.basic-node-viewer{align-items:center;display:flex;font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin:15px 0}.basic-node-viewer__title{font-weight:600;margin:0 20px 0 0;text-transform:uppercase}.basic-node-viewer__id{margin:0 15px 0 24px}.basic-node-viewer__label{color:var(--g-color-text-hint);line-height:18px;margin-right:10px;white-space:nowrap}.basic-node-viewer__link{margin-left:5px}.ydb-pool-usage{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.ydb-pool-usage__info{align-items:center;display:flex;justify-content:space-between}.ydb-pool-usage__pool-name{color:var(--g-color-text-primary)}.ydb-pool-usage__value{align-items:center;display:flex}.ydb-pool-usage__threads{color:var(--g-color-text-hint);font-size:var(--g-text-body-1-font-size)}.ydb-pool-usage__percents{color:var(--g-color-text-primary);font-size:var(--g-text-body-1-font-size);margin-right:2px}.ydb-pool-usage__visual{align-items:center;background-color:var(--g-color-base-generic-accent);border-radius:4px;display:flex;font-size:var(--g-text-body-2-font-size);height:6px;justify-content:center;overflow:hidden;position:relative}.ydb-pool-usage__usage-line{height:100%;left:0;position:absolute;top:0}.ydb-pool-usage__usage-line_type_green{background-color:var(--ydb-color-status-green)}.ydb-pool-usage__usage-line_type_blue{background-color:var(--ydb-color-status-blue)}.ydb-pool-usage__usage-line_type_yellow{background-color:var(--ydb-color-status-yellow)}.ydb-pool-usage__usage-line_type_red{background-color:var(--ydb-color-status-red)}.full-node-viewer{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.full-node-viewer__common-info{align-items:stretch;display:flex;flex-direction:column;justify-content:flex-start}.full-node-viewer__section{border-radius:10px}.full-node-viewer__section_pools{grid-gap:7px 20px;display:grid;grid-template-columns:110px 110px}.full-node-viewer .info-viewer__label{min-width:100px}.full-node-viewer__section-title{font-weight:600;margin:15px 0 10px}.ydb-critical-dialog{width:400px}.ydb-critical-dialog__warning-icon{color:var(--ydb-color-status-yellow);margin-right:16px}.ydb-critical-dialog__error-icon{color:var(--ydb-color-status-red);height:24px;margin-right:16px}.ydb-critical-dialog__body{align-items:center;display:flex}.g-dialog{--_--side-padding:32px;--_--close-button-space:0px;display:flex;flex-direction:column;position:relative;width:var(--_--width);width:var(--g-dialog-width,var(--_--width))}.g-dialog_has-scroll{max-height:calc(100vh - 40px);max-height:calc(100vh - var(--g-modal-margin, 20px)*2);overflow-y:auto}.g-dialog_size_s{--_--width:480px}.g-dialog_size_m{--_--width:720px}.g-dialog_size_l{--_--width:900px}.g-dialog_has-close{--_--close-button-space:24px}.g-modal{-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:var(--g-color-sfx-veil);display:none;inset:0;margin:-9999px 0 0 -9999px;overflow:auto;position:fixed;visibility:hidden;z-index:1000}.g-modal__content-aligner{align-items:center;display:inline-flex;justify-content:center;min-height:100%;min-width:100%}.g-modal__content-wrapper{margin:20px;margin:var(--g-modal-margin,20px);overflow-x:hidden}.g-modal__content,.g-modal__content-wrapper{border-radius:5px;border-radius:var(--g-modal-border-radius,5px)}.g-modal__content{background-color:var(--g-color-base-modal)}.g-modal__content_has-scroll{max-height:calc(100vh - 40px);max-height:calc(100vh - var(--g-modal-margin, 20px)*2);overflow-y:auto}.g-modal,.g-modal__content{animation-fill-mode:forwards;animation-timing-function:ease-out;outline:none}.g-modal_exit_active,.g-modal_open{display:block;margin:0;visibility:visible}.g-modal_appear_active,.g-modal_enter_active{animation-duration:.15s;animation-name:g-modal-open}.g-modal_appear_active .g-modal__content,.g-modal_enter_active .g-modal__content{animation-duration:.15s;animation-name:g-modal-content-open}.g-modal_exit_active{animation-duration:.2s;animation-name:g-modal}@keyframes g-modal{0%{opacity:1}to{opacity:0}}@keyframes g-modal-open{0%{opacity:0}to{opacity:1}}@keyframes g-modal-content-open{0%{transform:scale(.75)}to{transform:scale(1)}}.g-dialog-btn-close{inset-block-start:14px;inset-inline-end:14px;position:absolute;z-index:1}.g-dialog-footer{align-items:center;display:flex;padding:28px var(--_--side-padding)}.g-dialog-footer__bts-wrapper{display:flex;gap:10px}.g-dialog-footer__children{align-items:center;display:flex;flex-grow:1;height:100%}.g-dialog-footer__button{min-width:128px;position:relative}.g-dialog-footer__error{color:var(--g-color-text-danger);padding:10px}.g-dialog-header{align-items:center;color:var(--g-color-text-primary);display:flex;justify-content:flex-start;line-height:24px;padding-block:20px 10px;padding-inline:var(--_--side-padding) calc(var(--_--side-padding) + var(--_--close-button-space)*var(--g-flow-is-ltr) + var(--_--close-button-space)*var(--g-flow-is-rtl))}.g-dialog-header__caption{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.g-dialog-body{flex:1 1 auto;overflow-y:auto;padding:10px var(--_--side-padding)}.g-dialog-body_has-borders{border-block-end:1px solid var(--g-color-line-generic)}.g-dialog-body_has-borders,.g-dialog-divider{border-block-start:1px solid var(--g-color-line-generic)}.g-dialog-divider{margin:0 calc(var(--_--side-padding)*-1)}.ydb-pdisk-info__links,.ydb-vdisk-info__links{display:flex;flex-flow:row wrap;gap:12px}.kv-node-structure{display:flex;flex-shrink:0;flex:1 1 auto;flex-direction:column;font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);overflow:auto;position:relative}.kv-node-structure__pdisk{border:1px solid var(--g-color-line-generic);border-radius:5px;display:flex;flex-direction:column;margin-bottom:8px;padding:0 10px 0 20px;width:573px}.kv-node-structure__pdisk-id{align-items:flex-end;display:flex}.kv-node-structure__pdisk-header{align-items:center;display:flex;height:48px;justify-content:space-between}.kv-node-structure__pdisk-title-wrapper{align-items:center;display:flex;font-weight:600;gap:16px}.kv-node-structure__pdisk-title-wrapper .entity-status__status-icon{margin-right:0}.kv-node-structure__pdisk-title-item{display:flex;gap:4px}.kv-node-structure__pdisk-title-item-label{color:var(--g-color-text-secondary);font-weight:400}.kv-node-structure__pdisk-title-id{min-width:110px}.kv-node-structure__pdisk-title-type{justify-content:flex-end;min-width:50px}.kv-node-structure__pdisk-title-size{min-width:150px}.kv-node-structure__pdisk-details{margin-bottom:20px}.kv-node-structure__link{color:var(--g-color-base-brand);text-decoration:none}.kv-node-structure__vdisks-header{font-weight:600}.kv-node-structure__vdisks-container{margin-bottom:42px}.kv-node-structure__vdisk-details{max-height:90vh;max-width:none;min-width:200px;overflow:auto}.kv-node-structure__vdisk-details .vdisk-pdisk-node__column{margin-bottom:0}.kv-node-structure__vdisk-details .vdisk-pdisk-node__section{padding-bottom:0}.kv-node-structure__vdisk-id{align-items:center;display:flex}.kv-node-structure__vdisk-details-button_selected,.kv-node-structure__vdisk-id_selected{color:var(--g-color-text-info)}.kv-node-structure__external-button{align-items:center;display:inline-flex;margin-left:4px;transform:translateY(-1px)}.kv-node-structure__external-button_hidden{visibility:hidden}.kv-node-structure .data-table__row:hover .kv-node-structure__external-button_hidden{visibility:visible}.kv-node-structure__selected-vdisk{animation:onSelectedVdiskAnimation 4s}.kv-node-structure__row{display:flex}.kv-node-structure__column{display:flex;flex-direction:column;margin-bottom:15px}.kv-node-structure__title{font-size:var(--g-text-body-2-font-size);font-weight:500;line-height:var(--g-text-body-2-line-height);margin-right:16px;text-transform:uppercase}@keyframes onSelectedVdiskAnimation{0%{background-color:var(--g-color-base-info-light-hover)}}.node{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto}.node__header{margin:16px 20px}.node__content{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto;position:relative}.node__storage{height:100%;overflow:auto;padding:0 20px}.node__tabs{padding:0 20px}.node__tab{margin-right:40px;text-decoration:none}.node__tab:last-child{margin-right:0}.node__tab:first-letter{text-transform:uppercase}.node__overview-wrapper{padding:0 20px 20px}.node__node-page-wrapper{height:100%;padding:20px}.ydb-disk-page-title{text-wrap:nowrap;align-items:baseline;display:flex;flex-flow:row nowrap;font-size:var(--g-text-header-2-font-size);line-height:var(--g-text-header-2-line-height)}.ydb-disk-page-title__prefix{color:var(--g-color-text-secondary);margin-right:6px}.ydb-disk-page-title__icon{margin-right:8px}.ydb-page-meta{text-wrap:nowrap;color:var(--g-color-text-primary);display:flex;flex-flow:row nowrap;font-size:var(--g-text-body-2-font-size);height:var(--g-text-body-2-line-height);line-height:var(--g-text-body-2-line-height)}.ydb-page-meta__skeleton{height:80%;width:80%}.ydb-pdisk-page{display:flex;flex-direction:column;gap:20px;height:100%;overflow:auto;padding-left:20px;padding-top:20px;position:relative}.ydb-pdisk-page__controls,.ydb-pdisk-page__groups-title,.ydb-pdisk-page__info,.ydb-pdisk-page__meta,.ydb-pdisk-page__title{left:0;position:-webkit-sticky;position:sticky}.ydb-pdisk-page__groups-title{font-size:var(--g-text-header-1-font-size);line-height:var(--g-text-header-1-line-height)}.link,.tablet-page__link{color:var(--g-color-text-link);text-decoration:none}.link:hover,.tablet-page__link:hover{color:var(--g-color-text-link-hover)}.tablet-page{display:flex;flex-direction:column;padding:20px}.tablet-page__tenant{margin-bottom:20px}.tablet-page__pane-wrapper{display:flex}.tablet-page__left-pane{margin-right:70px}.tablet-page__history-title{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin-bottom:15px}.tablet-page__placeholder{flex:1 1 auto;justify-content:center}.tablet-page__placeholder,.tablet-page__row{align-items:center;display:flex}.tablet-page__row_header{margin-bottom:20px}.tablet-page__row_header .tablet-page__link{margin:0 10px 0 5px}.tablet-page__title{font-size:var(--g-text-body-2-font-size);font-weight:500;line-height:var(--g-text-body-2-line-height);margin-right:16px;text-transform:uppercase}.tablet-page__loader{width:25px}.tablet-page .info-viewer__items{grid-template-columns:auto}.tablet-page__controls{margin:20px 0 15px}.tablet-page__control{margin-right:15px}.tablet-page__links{display:flex;list-style-type:none;margin:5px 0 10px;padding:0}.tablet-page__links>*{margin:0 10px 0 0}.tablet-page__top-label{font-size:var(--g-text-body-2-font-size);font-weight:500;line-height:var(--g-text-body-2-line-height);margin-right:16px;text-transform:uppercase}.tablets-filters{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto}.tablets-filters__node{font-size:var(--g-text-body-1-font-size);line-height:var(--g-text-body-1-line-height);overflow:hidden}.tablets-filters__node-meta{color:var(--g-color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tablets-filters__items{flex:1 1 auto;overflow:auto;padding:5px 20px}.tablets-filters__filters{align-items:center;display:flex;margin:10px 0;padding:0 20px}.tablets-filters__filter-label{margin-right:15px;white-space:nowrap}.tablets-filters__filter-wrapper{align-items:center;display:flex;margin-right:15px}.tablets-filters__filter-control{margin-right:10px;max-width:200px;min-width:100px}.tablets-filters__filter-control:last-child{margin-right:0}.tablets-filters__tablet{margin-bottom:2px}.tablets-filters__empty-message{display:flex;justify-content:center}.tablets-filters__tenant{padding:20px 20px 10px}.tablets-filters .tablet{display:inline-block;line-height:18px;text-align:center}.kv-split{display:flex;height:100%;outline:none;-webkit-user-select:text;user-select:text;z-index:0}.kv-split.horizontal{flex-direction:row}.kv-split.vertical{flex-direction:column;min-height:100%;width:100%}.kv-split .gutter{background:var(--g-color-base-background);position:relative;z-index:10}.kv-split .gutter:after{background-color:var(--g-color-base-generic-ultralight);content:"";inset:0;position:absolute}.kv-split .gutter.active:after,.kv-split .gutter:hover:after{background-color:var(--g-color-line-generic-hover);transition:background-color 1s ease}.kv-split .gutter.disabled{display:none}.kv-split .gutter.gutter-vertical{cursor:row-resize;height:8px;width:100%}.kv-split .gutter.gutter-vertical:before{border-color:var(--g-color-base-generic-hover);border-style:solid;border-width:1px 0;content:"";height:4px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:16px}.kv-split .gutter.gutter-horizontal{cursor:col-resize;height:100%;width:8px}.kv-split .gutter.gutter-horizontal:before{border-color:var(--g-color-base-generic-hover);border-style:solid;border-width:0 1px;content:"";height:16px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:4px}.histogram{display:flex;flex:1 1 auto}.histogram__chart{align-items:baseline;border-bottom:1px solid var(--g-color-base-generic);border-left:1px solid var(--g-color-base-generic);display:flex;height:300px;margin-left:50px;margin-top:30px;position:relative;width:800px}.histogram__x-min{left:-3px}.histogram__x-max,.histogram__x-min{bottom:-25px;color:var(--g-color-text-secondary);position:absolute}.histogram__x-max{right:0}.histogram__y-min{bottom:-7px;left:-30px;width:20px}.histogram__y-max,.histogram__y-min{color:var(--g-color-text-secondary);position:absolute;text-align:right}.histogram__y-max{left:-60px;top:-5px;width:50px}.histogram__item{cursor:pointer;margin-right:.5%;width:1.5%}.heatmap{display:flex;flex:1 1 auto;flex-direction:column;height:100%;overflow:auto}.heatmap__limits{align-items:center;display:flex;margin-left:20px}.heatmap__limits-block{display:flex;margin-right:10px}.heatmap__limits-title{color:var(--g-color-text-secondary);margin-right:5px}.heatmap__row{align-items:center}.heatmap__row_overall{margin:15px 20px}.heatmap__row_overall .g-progress{margin:0;width:300px}.heatmap__label{font-size:var(--g-text-body-2-font-size);font-weight:500;line-height:var(--g-text-body-2-line-height);margin-right:16px;text-transform:uppercase}.heatmap__label_overall{margin-right:15px}.heatmap__items{overflow:auto}.heatmap__canvas-container{cursor:pointer;overflow:auto}.heatmap__filters{align-items:center;display:flex;margin:0 0 10px}.heatmap__filter-control{margin-right:10px;max-width:200px;min-width:100px}.heatmap__filter-control:last-child{margin-right:0}.heatmap__histogram-checkbox,.heatmap__sort-checkbox{margin-left:10px}.heatmap__row{display:flex}.heatmap .tablet,.heatmap__row{margin-bottom:2px}.autorefresh-control,.schema-viewer__key-icon{align-items:center;display:flex}.autorefresh-control{gap:var(--g-spacing-1)}.speed-multimeter{display:flex;width:100%}.speed-multimeter__content{display:flex;flex-direction:row;flex-grow:1;justify-content:flex-end;line-height:22px}.speed-multimeter__displayed-value{display:flex;flex-direction:row;justify-content:flex-end;margin-right:10px}.speed-multimeter__bars{align-items:flex-start;display:flex;flex-direction:column;margin-right:5px;overflow:hidden;width:32px}.speed-multimeter__bar-container{height:6px;width:100%}.speed-multimeter__bar-container_highlighted{background:var(--g-color-line-generic)}.speed-multimeter__bar{height:100%;min-width:2px}.speed-multimeter__bar_color_light{background:var(--g-color-base-info-medium)}.speed-multimeter__bar_color_dark{background:var(--g-color-base-info-heavy)}.speed-multimeter__bar-container+.speed-multimeter__bar-container{margin-top:2px}.speed-multimeter__popover-container{align-items:center;display:flex;justify-content:center}.speed-multimeter__popover-content{padding:10px}.speed-multimeter__popover-header{display:block;font-size:18px;line-height:24px;margin-bottom:7px}.speed-multimeter__popover-row{display:block;font-size:13px;line-height:18px}.speed-multimeter__popover-row_color_primary{color:var(--g-color-text-primary)}.speed-multimeter__popover-row_color_secondary{color:var(--g-color-text-secondary)}.ydb-diagnostics-consumers-topic-stats{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.ydb-diagnostics-consumers-topic-stats__wrapper{border-left:1px solid var(--g-color-line-generic);display:flex;flex-direction:row;padding-left:16px}.ydb-diagnostics-consumers-topic-stats__item{display:flex;flex-direction:column;margin-right:20px}.ydb-diagnostics-consumers-topic-stats__label{color:var(--g-color-text-secondary);margin-bottom:4px}.ydb-diagnostics-consumers-topic-stats__value{align-items:center;display:flex;height:30px;justify-content:flex-start}.ydb-lag-popover-content__text{margin-bottom:10px}.ydb-lag-popover-content_type_read{max-width:280px}.ydb-lag-popover-content_type_write{max-width:220px}.ydb-diagnostics-consumers-columns-header__lags{white-space:nowrap}.ydb-diagnostics-consumers-columns__lags-header{text-align:center}.ydb-diagnostics-consumers{display:flex;flex-grow:1;flex:1 1 auto;flex-direction:column;height:100%;overflow:auto}.ydb-diagnostics-consumers__controls{align-items:center;display:flex;gap:12px;padding:16px 0 18px}.ydb-diagnostics-consumers__search{width:238px}.ydb-diagnostics-consumers__table-wrapper{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto}.ydb-diagnostics-consumers__table-content{height:100%;overflow:auto}.ydb-diagnostics-consumers__table .data-table__head-row:first-child .data-table__th:first-child,.ydb-diagnostics-consumers__table .data-table__td:first-child{background-color:var(--g-color-base-background);border-right:1px solid var(--g-color-line-generic);left:0;position:-webkit-sticky;position:sticky;z-index:2000}.ydb-diagnostics-consumers__table .data-table__row:hover .data-table__td:first-child{background-color:var(--ydb-data-table-color-hover)!important}.ydb-diagnostics-consumers__table .data-table__head-row:first-child .data-table__th:nth-child(0),.ydb-diagnostics-consumers__table .data-table__td:nth-child(0){border-right:initial;box-shadow:none}.ydb-diagnostics-consumers__table .data-table__head-row:first-child .data-table__th:first-child,.ydb-diagnostics-consumers__table .data-table__td:first-child{box-shadow:none}.kv-describe__message-container{padding:15px 0}.kv-describe__result{display:flex;flex:0 0 auto;overflow:auto;padding:10px 20px 20px 0}.kv-describe__tree{font-family:var(--g-font-family-monospace)!important;font-size:var(--g-text-code-1-font-size)!important;line-height:var(--g-text-code-1-line-height)!important}.kv-describe__tree .json-inspector__leaf_composite:before{color:var(--g-color-text-secondary);font-size:9px;left:20px;position:absolute}.kv-describe__tree .json-inspector__leaf_composite.json-inspector__leaf_root:before{left:0}.kv-describe__tree :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:"[+]"}.kv-describe__tree .json-inspector__leaf_expanded.json-inspector__leaf_composite:before{content:"[-]"}.kv-describe__tree .json-inspector__key{color:var(--g-color-text-misc)}.kv-describe__tree .json-inspector__leaf{padding-left:20px;position:relative}.kv-describe__tree .json-inspector__leaf_root{padding-left:0}.kv-describe__tree .json-inspector__line{padding-left:20px}.kv-describe__tree .json-inspector__toolbar{border:1px solid var(--g-color-line-generic);border-radius:4px;margin-bottom:10px;width:300px}.kv-describe__tree .json-inspector__search{background:none;border:0 solid #0000;border-width:0 22px 0 8px;box-sizing:border-box;color:var(--g-color-text-primary);font-family:var(--g-text-body-font-family);font-size:13px;height:28px;margin:0;outline:0;padding:0;vertical-align:top;width:300px}.kv-describe__tree .json-inspector__value_helper{color:var(--g-color-text-secondary)}.kv-describe__tree .json-inspector__line:hover:after{background:var(--g-color-base-simple-hover)}.kv-describe__tree .json-inspector__show-original:before{color:var(--g-color-text-secondary)}.kv-describe__tree .json-inspector__show-original:hover:after,.kv-describe__tree .json-inspector__show-original:hover:before{color:var(--g-color-text-primary)}.json-inspector,.json-inspector__selection{font:14px/1.4 Consolas,monospace}.json-inspector__leaf{padding-left:10px}.json-inspector__line{cursor:default;display:block;position:relative}.json-inspector__line:after{bottom:0;content:"";left:-200px;pointer-events:none;position:absolute;right:-50px;top:0;z-index:-1}.json-inspector__line:hover:after{background:#0000000f}.json-inspector__leaf_composite>.json-inspector__line{cursor:pointer}.json-inspector__flatpath,.json-inspector__radio{display:none}.json-inspector__value{margin-left:5px}.json-inspector__search{margin:0 10px 10px 0;min-width:300px;padding:2px}.json-inspector__key{color:#505050}.json-inspector__not-found,.json-inspector__value_helper,.json-inspector__value_null{color:#b0b0b0}.json-inspector__value_string{color:#798953}.json-inspector__value_boolean{color:#75b5aa}.json-inspector__value_number{color:#d28445}.json-inspector__hl{background:#ff0;border-radius:2px;box-shadow:0 -1px 0 2px #ff0}.json-inspector__show-original{color:#666;cursor:pointer;display:inline-block;padding:0 6px}.json-inspector__show-original:hover{color:#111}.json-inspector__show-original:before{content:"⥂"}.json-inspector__show-original:hover:after{content:" expand"}.ydb-external-data-source-info__location,.ydb-external-table-info__location{max-width:var(--tenant-object-info-max-value-width)}.ydb-async-replication-paths__title,.ydb-overview-topic-stats__title{font-size:var(--g-text-body-2-font-size);font-weight:600;line-height:var(--g-text-body-2-line-height);margin:15px 0 10px}.ydb-overview-topic-stats .ydb-loader{margin-top:50px}.ydb-overview-topic-stats .info-viewer__row{align-items:flex-start}.ydb-overview-topic-stats .speed-multimeter{margin-top:-5px}.ydb-overview-topic-stats .speed-multimeter__content{justify-content:flex-start}.ydb-overview-topic-stats__info .info-viewer__label-text_multiline{max-width:150px}.ydb-overview-topic-stats__bytes-written{margin-top:7px;padding-left:20px}.ydb-overview-topic-stats__bytes-written .info-viewer__label{min-width:180px}.ydb-diagnostics-table-info{overflow:auto}.ydb-diagnostics-table-info__title{font-size:var(--g-text-body-2-font-size);font-weight:600;line-height:var(--g-text-body-2-line-height);margin:15px 0 10px}.ydb-diagnostics-table-info__row{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}.ydb-diagnostics-table-info__col{align-items:flex-start;display:flex;flex-direction:column;justify-content:flex-start}.ydb-diagnostics-table-info__col:not(:last-child){margin-right:50px}.ydb-diagnostics-table-info__info-block{margin-bottom:20px}.ydb-diagnostics-table-info__info-block .info-viewer__items{grid-template-columns:minmax(-webkit-max-content,280px);grid-template-columns:minmax(max-content,280px)}.ydb-metric-chart{border:1px solid var(--g-color-line-generic);border-radius:8px;display:flex;flex-direction:column;padding:16px 16px 8px}.ydb-metric-chart__title{margin-bottom:10px}.ydb-metric-chart__chart{display:flex;height:100%;overflow:hidden;position:relative;width:100%}.ydb-metric-chart__error{left:50%;position:absolute;text-align:center;top:10%;transform:translateX(-50%);z-index:1}.chartkit{height:100%;width:100%}.chartkit_mobile .chartkit-scrollable-node{max-height:3000px}.chartkit-theme_common{--highcarts-navigator-border:var(--g-color-line-generic);--highcarts-navigator-track:var(--g-color-base-generic);--highcarts-navigator-body:var(--g-color-scroll-handle);--highcharts-series-border:var(--g-color-base-background);--highcharts-grid-line:var(--g-color-line-generic);--highcharts-axis-line:var(--g-color-line-generic);--highcharts-tick:var(--g-color-line-generic);--highcharts-title:var(--g-color-text-primary);--highcharts-axis-labels:var(--g-color-text-secondary);--highcharts-data-labels:var(--g-color-text-secondary);--highcharts-plot-line-label:var(--g-color-text-secondary);--highcharts-legend-item:var(--g-color-text-secondary);--highcharts-legend-item-hover:var(--g-color-text-primary);--highcharts-legend-item-hidden:var(--g-color-text-hint);--highcharts-floating-bg:var(--g-color-infographics-tooltip-bg);--highcharts-tooltip-text:var(--g-color-text-primary);--highcharts-tooltip-bg:var(--highcharts-floating-bg);--highcharts-tooltip-alternate-bg:var(--g-color-base-generic);--highcharts-tooltip-text-complementary:var(--g-color-text-secondary);--highcharts-holiday-band:var(--g-color-base-generic);--d3-data-labels:var(--g-color-text-secondary)}.chartkit-loader{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.ydb-timeframe-selector{display:flex;gap:2px}.ydb-tenant-dashboard{margin-bottom:var(--diagnostics-section-margin);width:var(--diagnostics-section-table-width)}.ydb-tenant-dashboard__controls{margin-bottom:10px}.ydb-tenant-dashboard__charts{display:flex;flex-flow:row wrap;gap:16px}.issue-tree-item{align-items:center;cursor:pointer;display:flex;height:40px;justify-content:space-between}.issue-tree-item__field{display:flex;overflow:hidden}.issue-tree-item__field_status{display:flex;white-space:nowrap}.issue-tree-item__field_additional{color:var(--g-color-text-link);cursor:pointer;width:-webkit-max-content;width:max-content}.issue-tree-item__field_additional:hover{color:var(--g-color-text-link-hover)}.issue-tree-item__field_message{flex-shrink:0;overflow:hidden;white-space:normal;width:300px}.issue-tree-item__field-tooltip.issue-tree-item__field-tooltip{max-width:500px;min-width:500px}.issue-tree-item__field-label{color:var(--g-color-text-secondary)}.issue-tree{display:flex}.issue-tree__block{width:100%}.issue-tree__checkbox{margin:5px 0 10px}.issue-tree__info-panel{background:var(--g-color-base-generic);border-radius:4px;height:100%;margin:11px 0;padding:8px 20px;position:-webkit-sticky;position:sticky}.issue-tree__inspector{font-family:var(--g-font-family-monospace)!important;font-size:var(--g-text-code-1-font-size)!important;line-height:var(--g-text-code-1-line-height)!important}.issue-tree__inspector .json-inspector__leaf_composite:before{color:var(--g-color-text-secondary);font-size:9px;left:20px;position:absolute}.issue-tree__inspector .json-inspector__leaf_composite.json-inspector__leaf_root:before{left:0}.issue-tree__inspector :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:"[+]"}.issue-tree__inspector .json-inspector__leaf_expanded.json-inspector__leaf_composite:before{content:"[-]"}.issue-tree__inspector .json-inspector__key{color:var(--g-color-text-misc)}.issue-tree__inspector .json-inspector__leaf{padding-left:20px;position:relative}.issue-tree__inspector .json-inspector__leaf_root{padding-left:0}.issue-tree__inspector .json-inspector__line{padding-left:20px}.issue-tree__inspector .json-inspector__toolbar{border:1px solid var(--g-color-line-generic);border-radius:4px;margin-bottom:10px;width:300px}.issue-tree__inspector .json-inspector__search{background:none;border:0 solid #0000;border-width:0 22px 0 8px;box-sizing:border-box;color:var(--g-color-text-primary);font-family:var(--g-text-body-font-family);font-size:13px;height:28px;margin:0;outline:0;padding:0;vertical-align:top;width:300px}.issue-tree__inspector .json-inspector__value_helper{color:var(--g-color-text-secondary)}.issue-tree__inspector .json-inspector__line:hover:after{background:var(--g-color-base-simple-hover)}.issue-tree__inspector .json-inspector__show-original:before{color:var(--g-color-text-secondary)}.issue-tree__inspector .json-inspector__show-original:hover:after,.issue-tree__inspector .json-inspector__show-original:hover:before{color:var(--g-color-text-primary)}.issue-tree__inspector .json-inspector__leaf_expanded.json-inspector__leaf_composite:before,.issue-tree__inspector :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:""}.issue-tree__inspector .json-inspector__line:hover:after{background:#0000}.issue-tree__inspector .json-inspector__show-original:hover:after,.issue-tree__inspector .json-inspector__show-original:hover:before{color:#0000}.issue-tree__inspector .json-inspector__value_helper{display:none}.issue-tree__inspector .json-inspector__value{overflow:hidden;word-break:break-all}.issue-tree__inspector .json-inspector__value>span{-webkit-user-select:all;user-select:all}.issue-tree .ydb-tree-view__item{height:40px}.issue-tree .ydb-tree-view .tree-view_arrow{height:40px;width:40px}.issue-tree .ydb-tree-view .ydb-tree-view__item{margin-left:calc(24px*var(--ydb-tree-view-level))!important;padding-left:0!important}.issue-tree .ydb-tree-view .issue-tree__info-panel{margin-left:calc(24px*var(--ydb-tree-view-level))}.healthcheck{display:flex}.healthcheck_expanded{min-width:885px}.healthcheck__issue-preview{margin-bottom:15px}.healthcheck__message-container{padding:15px 0}.healthcheck__details{width:872px}.healthcheck__details-content-wrapper{overflow-x:hidden}.healthcheck__preview{height:100%}.healthcheck__preview-header{gap:8px;margin-bottom:var(--diagnostics-section-title-margin)}.healthcheck__preview-title{color:var(--g-color-text-link);font-size:var(--g-text-subheader-3-font-size);font-weight:600;line-height:var(--g-text-subheader-3-line-height)}.healthcheck__preview-content{line-height:24px}.healthcheck__preview-title-wrapper{align-items:center;display:flex;gap:8px;margin-bottom:4px}.healthcheck__issues-statistics{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}.healthcheck__self-check-status-indicator{border-radius:4px;display:inline-block;font-size:13px;line-height:24px;padding:0 8px}.healthcheck__self-check-status-indicator_good,.healthcheck__self-check-status-indicator_green{background-color:var(--g-color-base-positive-light);color:var(--g-color-text-positive)}.healthcheck__self-check-status-indicator_degraded,.healthcheck__self-check-status-indicator_yellow{background-color:var(--g-color-base-warning-light);color:var(--g-color-text-warning)}.healthcheck__self-check-status-indicator_blue{background-color:var(--g-color-base-info-light);color:var(--g-color-text-info)}.healthcheck__self-check-status-indicator_emergency,.healthcheck__self-check-status-indicator_red{background-color:var(--g-color-base-danger-light);color:var(--g-color-text-danger)}.healthcheck__self-check-status-indicator_grey,.healthcheck__self-check-status-indicator_unspecified{background-color:var(--g-color-base-misc-light);color:var(--g-color-text-misc)}.healthcheck__self-check-status-indicator_maintenance_required,.healthcheck__self-check-status-indicator_orange{background-color:var(--g-color-base-warning-light);color:var(--g-color-text-warning-heavy)}.ydb-diagnostic-card{background-color:#0000;border:1px solid var(--g-color-line-generic);border-radius:8px;flex-shrink:0;padding:16px 16px 28px;width:206px}.ydb-diagnostic-card_active{background-color:var(--g-color-base-selection);border-color:var(--g-color-base-info-medium)}.ydb-diagnostic-card:hover{box-shadow:0 1px 5px var(--g-color-sfx-shadow);cursor:pointer}.ydb-metrics-card{min-height:252px}.ydb-metrics-card__header{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:10px}.ydb-metrics-card__label{color:var(--g-color-text-link);font-size:var(--g-text-subheader-3-font-size);font-weight:600;line-height:var(--g-text-subheader-3-line-height)}.ydb-metrics-card__content{color:var(--g-color-text-secondary);display:flex;flex-direction:column;gap:10px}.ydb-metrics-card__metric-title{height:var(--g-text-body-2-line-height)}.ydb-metrics-card_active .ydb-metrics-card__content{color:var(--g-color-text-complementary)}.metrics-cards{display:flex;gap:16px;margin-bottom:32px}.metrics-cards__tab{color:inherit;text-decoration:none}.kv-truncated-query{max-width:100%;vertical-align:top;white-space:pre;word-break:break-word}.kv-truncated-query__message{white-space:pre-wrap}.kv-truncated-query__message_color_secondary{color:var(--g-color-text-secondary)}.kv-truncated-query__popover-content{max-width:600px;overflow:hidden;white-space:pre}.kv-top-queries{display:flex;flex-direction:column;height:100%}.kv-top-queries .data-table__td,.kv-top-queries .data-table__th{vertical-align:middle}.kv-top-queries .data-table__box .data-table__table-wrapper{padding-bottom:20px}.kv-top-queries .data-table__th{box-shadow:inset 0 -1px 0 0 var(--g-tabs-color-divider)}.kv-top-queries__search{width:238px}.kv-top-queries__row{cursor:pointer}.kv-top-queries__query{overflow:hidden;text-overflow:ellipsis;vertical-align:top;white-space:pre-wrap;word-break:break-word}.kv-top-queries__user-sid{max-width:200px;overflow:hidden;text-overflow:ellipsis}.tenant-overview{height:100%;overflow:auto;padding-bottom:20px}.tenant-overview__loader{display:flex;justify-content:center}.tenant-overview__tenant-name-wrapper{align-items:center;display:flex;overflow:hidden}.tenant-overview__top{align-items:center;display:flex;gap:4px;line-height:24px;margin-bottom:10px}.tenant-overview__top-label{font-weight:600;gap:10px;line-height:24px;margin-bottom:var(--diagnostics-section-title-margin)}.tenant-overview__info{left:0;position:-webkit-sticky;position:sticky;width:-webkit-max-content;width:max-content}.tenant-overview__title{font-size:var(--g-text-body-2-font-size);font-weight:700;line-height:var(--g-text-body-2-line-height);margin-bottom:10px}.tenant-overview__table:not(:last-child){margin-bottom:var(--diagnostics-section-margin)}.tenant-overview__table th{height:40px;vertical-align:middle}.tenant-overview__top-queries-row{cursor:pointer}.tenant-overview__storage-info{margin-bottom:36px}.kv-detailed-overview{display:flex;gap:20px;height:100%;width:100%}.kv-detailed-overview__section{display:flex;flex-basis:calc(50% - 10px);flex-direction:column;flex-grow:1;flex-shrink:0;min-width:300px}.kv-detailed-overview__modal .g-modal__content{position:relative}.kv-detailed-overview__close-modal-button{position:absolute;right:13px;top:23px}.ydb-hot-keys__primary-key-column{align-items:center;display:flex;gap:5px}.ydb-hot-keys__help-card{left:0;margin-bottom:20px;padding:20px 40px 20px 20px;position:-webkit-sticky;position:sticky}.ydb-hot-keys__help-card__close-button{position:absolute;right:5px;top:5px}.g-card{--_--background-color:#0000;--_--border-color:#0000;--_--border-width:0;--_--box-shadow:none;background-color:var(--_--background-color);background-color:var(--g-card-background-color,var(--_--background-color));border:var(--g-card-border-width,var(--_--border-width)) solid var(--g-card-border-color,var(--_--border-color));border-radius:var(--_--border-radius);border-radius:var(--g-card-border-radius,var(--_--border-radius));box-shadow:var(--_--box-shadow);box-shadow:var(--g-card-box-shadow,var(--_--box-shadow));box-sizing:border-box;outline:none}.g-card_theme_normal{--_--border-color:var(--g-color-line-generic);--_--background-color:var(--g-color-base-generic)}.g-card_theme_info{--_--border-color:var(--g-color-line-info);--_--background-color:var(--g-color-base-info-light)}.g-card_theme_success{--_--border-color:var(--g-color-line-positive);--_--background-color:var(--g-color-base-positive-light)}.g-card_theme_warning{--_--border-color:var(--g-color-line-warning);--_--background-color:var(--g-color-base-warning-light)}.g-card_theme_danger{--_--border-color:var(--g-color-line-danger);--_--background-color:var(--g-color-base-danger-light)}.g-card_theme_utility{--_--border-color:var(--g-color-line-utility);--_--background-color:var(--g-color-base-utility-light)}.g-card_view_clear,.g-card_view_outlined{--_--background-color:#0000}.g-card_view_outlined{--_--border-width:1px}.g-card_type_action{--_--background-color:var(--g-color-base-float);--_--box-shadow:0px 1px 5px var(--g-color-sfx-shadow)}.g-card_type_action:after{border-radius:var(--_--border-radius);border-radius:var(--g-card-border-radius,var(--_--border-radius));inset:0;pointer-events:none;position:absolute}.g-card_type_action.g-card_clickable{cursor:pointer;position:relative}.g-card_type_action.g-card_clickable:hover{--_--box-shadow:0px 3px 10px var(--g-color-sfx-shadow)}.g-card_type_action.g-card_clickable:focus-visible:after{content:"";outline:2px solid var(--g-color-line-focus)}.g-card_type_selection{--_--border-width:1px;--_--border-color:var(--g-color-line-generic);position:relative}.g-card_type_selection:before{inset:-1px}.g-card_type_selection:after,.g-card_type_selection:before{border-radius:var(--_--border-radius);border-radius:var(--g-card-border-radius,var(--_--border-radius));pointer-events:none;position:absolute}.g-card_type_selection:after{inset:0}.g-card_type_selection.g-card_clickable{cursor:pointer}.g-card_type_selection.g-card_clickable:hover{--_--border-color:#0000}.g-card_type_selection.g-card_clickable:hover:before{border:2px solid var(--g-color-line-brand);content:"";opacity:.5}.g-card_type_selection.g-card_clickable:hover:focus-visible:before{border-color:#0000}.g-card_type_selection.g-card_clickable:focus-visible:after{content:"";outline:2px solid var(--g-color-line-focus)}.g-card_type_selection.g-card_selected:not(.g-card_disabled){--_--border-color:#0000}.g-card_type_selection.g-card_selected:not(.g-card_disabled):before{border:2px solid var(--g-color-line-brand);content:""}.g-card_type_selection.g-card_view_clear{--_--border-color:#0000}.g-card_type_container.g-card_view_raised{--_--background-color:var(--g-color-base-float)}.g-card_type_container.g-card_view_raised.g-card_size_m{--_--box-shadow:0px 1px 5px var(--g-color-sfx-shadow)}.g-card_type_container.g-card_view_raised.g-card_size_l{--_--box-shadow:0px 1px 6px var(--g-color-sfx-shadow-light),1px 3px 13px var(--g-color-sfx-shadow-light)}.g-card_size_m{--_--border-radius:8px}.g-card_size_l{--_--border-radius:16px}.node-network{border:1px solid #0000;border-radius:4px;box-sizing:border-box;color:var(--g-color-text-complementary);cursor:pointer;display:inline-block;font-size:12px;height:14px;line-height:14px;margin-bottom:5px;margin-right:5px;padding:0 5px;text-align:center;text-transform:uppercase;width:14px}.node-network_id{height:14px;width:42px}.node-network_blur{opacity:.25}.node-network_grey{background:var(--ydb-color-status-grey)}.node-network_black{background-color:var(--ydb-color-status-black);color:var(--g-color-text-light-primary)}.node-network_green{background-color:var(--ydb-color-status-green)}.node-network_yellow{background-color:var(--ydb-color-status-yellow)}.node-network_red{background-color:var(--ydb-color-status-red)}.node-network:hover{border:1px solid var(--g-color-text-primary)}.network{font-size:var(--g-text-body-2-font-size);justify-content:space-between;line-height:var(--g-text-body-2-line-height);max-width:1305px}.network,.network__nodes-row{display:flex;flex-grow:1;height:100%;overflow:auto}.network__nodes-row{align-items:flex-start;flex-direction:row}.network__inner{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto}.network__right{height:100%;padding-left:20px;width:100%}.network__left{border-right:1px solid var(--g-color-base-generic-accent);height:100%}.network__placeholder{align-items:center;display:flex;flex-direction:column;flex-grow:1;height:100%;justify-content:center;width:100%}.network__placeholder-text{margin-top:15px}.network__placeholder-img{color:#0000}.network__nodes{display:flex;flex-wrap:wrap}.network__nodes-container{min-width:325px}.network__nodes-container_right{margin-right:60px}.network__nodes-title{border-bottom:1px solid var(--g-color-base-generic-accent);color:var(--g-color-text-secondary);font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);margin:0 0 15px}.network__link{color:var(--g-color-base-brand);text-decoration:none}.network__title{font-size:var(--g-text-body-1-font-size);font-weight:500;line-height:var(--g-text-body-1-line-height);margin:20px 0}.network__checkbox-wrapper{align-items:center;display:flex}.network__checkbox-wrapper label{white-space:nowrap}.network__label{margin-bottom:16px}.network__controls{display:flex;gap:12px;margin:0 16px 16px 0}.network__controls-wrapper{display:flex;flex:1 1 auto;flex-direction:row;flex-direction:column}.network__select{margin:0 15px;max-width:115px}.network__rack-column{align-items:center;background-color:#00000012;border-radius:4px;display:flex;flex-direction:column;margin-bottom:5px;margin-right:5px;padding:2px}.network__rack-column .node-network{margin-right:0}.ydb-diagnostics-partitions-columns-header__multiline{white-space:normal}.ydb-diagnostics-partitions-columns-header__read-session{white-space:normal;width:80px}.ydb-diagnostics-partitions-columns-header__lags{white-space:nowrap}.ydb-diagnostics-partitions-columns-header__messages{white-space:normal;width:90px}.ydb-diagnostics-partitions-columns-header__messages-popover-content{max-width:200px}.ydb-diagnostics-partitions-columns__lags-header{text-align:center}.ydb-diagnostics-partitions{display:flex;flex-grow:1;flex:1 1 auto;flex-direction:column;height:100%;overflow:auto}.ydb-diagnostics-partitions__controls{align-items:center;display:flex;gap:12px;padding:16px 0 18px}.ydb-diagnostics-partitions__consumer-select{width:220px}.ydb-diagnostics-partitions__select-option_empty{color:var(--g-color-text-hint)}.ydb-diagnostics-partitions__search{width:238px}.ydb-diagnostics-partitions__search_partition{width:100px}.ydb-diagnostics-partitions__search_general{width:280px}.ydb-diagnostics-partitions__table-wrapper{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto}.ydb-diagnostics-partitions__table-content{height:100%;overflow:auto}.ydb-diagnostics-partitions__table .data-table__head-row:first-child .data-table__th:first-child,.ydb-diagnostics-partitions__table .data-table__td:first-child{background-color:var(--g-color-base-background);border-right:1px solid var(--g-color-line-generic);left:0;position:-webkit-sticky;position:sticky;z-index:2000}.ydb-diagnostics-partitions__table .data-table__row:hover .data-table__td:first-child{background-color:var(--ydb-data-table-color-hover)!important}.ydb-diagnostics-partitions__table .data-table__head-row:first-child .data-table__th:nth-child(0),.ydb-diagnostics-partitions__table .data-table__td:nth-child(0){border-right:initial;box-shadow:none}.ydb-diagnostics-partitions__table .data-table__head-row:first-child .data-table__th:first-child,.ydb-diagnostics-partitions__table .data-table__td:first-child{box-shadow:none}.date-range__input{background:#0000;border:1px solid var(--g-color-line-generic);border-radius:var(--g-border-radius-m);color:var(--g-color-text-primary);height:28px;min-width:190px;outline:none;padding:5px 8px}.date-range__input:focus,.date-range__input:focus-visible{border:1px solid var(--g-color-line-generic-hover)}.top-shards__hint{left:0;position:-webkit-sticky;position:sticky;width:-webkit-max-content;width:max-content}.kv-tenant-diagnostics{display:flex;flex-direction:column;height:100%;overflow:hidden}.kv-tenant-diagnostics__header-wrapper{background-color:var(--g-color-base-background);padding:13px 20px 16px}.kv-tenant-diagnostics__tabs{align-items:center;box-shadow:inset 0 -1px 0 0 var(--g-color-line-generic);display:flex;justify-content:space-between}.kv-tenant-diagnostics__tabs .g-tabs_direction_horizontal{box-shadow:none}.kv-tenant-diagnostics__tab{margin-right:40px;text-decoration:none}.kv-tenant-diagnostics__tab:first-letter{text-transform:uppercase}.kv-tenant-diagnostics__page-wrapper{flex-grow:1;overflow:auto;padding:0 20px;width:100%}.kv-tenant-diagnostics__page-wrapper .ydb-table-with-controls-layout__controls{height:46px;padding-top:0}.kv-tenant-diagnostics__page-wrapper .ydb-table-with-controls-layout .data-table__sticky_moving,.kv-tenant-diagnostics__page-wrapper .ydb-table-with-controls-layout .ydb-virtual-table__head{top:46px!important}.ydb-queries-history{display:flex;flex:1 1 auto;flex-direction:column;height:100%;overflow:auto;padding:0 16px}.ydb-queries-history__table-row{cursor:pointer}.ydb-queries-history__query{flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:pre}.kv-pane-visibility-button_hidden{display:none}.kv-pane-visibility-button_bottom{transform:rotate(180deg)}.kv-pane-visibility-button_bottom.rotate{transform:rotate(0)}.kv-pane-visibility-button_left{transform:rotate(-90deg)}.kv-pane-visibility-button_left.rotate{transform:rotate(90deg)}.kv-pane-visibility-button_top.rotate{transform:rotate(180deg)}.kv-divider{background-color:var(--g-color-line-generic);height:100%;margin:0 4px;width:1px}.kv-fullscreen{background-color:var(--g-color-base-background);display:flex;flex-grow:1;inset:0;overflow:hidden;position:absolute;z-index:10}.kv-fullscreen__close-button{position:fixed;right:20px;top:8px;z-index:11}.kv-query-execution-status{align-items:center;color:var(--g-color-text-complementary);display:flex;gap:4px}.kv-query-execution-status__result-status-icon{color:var(--g-color-text-positive)}.kv-query-execution-status__result-status-icon_error{color:var(--g-color-text-danger)}.ydb-query-result-table__cell{cursor:pointer;display:inline-block;max-width:600px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.ydb-query-result-table__message{padding:15px 10px}.kv-shorty-string__toggle{font-size:.85em;margin-left:2em}.kv-result-issues{padding:0 10px}.kv-result-issues__error-message{align-items:center;background-color:var(--g-color-base-background);display:flex;left:0;padding:10px 0;position:-webkit-sticky;position:sticky;top:0;z-index:2}.kv-result-issues__error-message-text{margin:0 10px}.kv-issues{position:relative}.kv-issue_leaf{margin-left:31px}.kv-issue__issues{padding-left:24px}.kv-issue__line{align-items:flex-start;display:flex;margin:0 0 10px;padding:0 10px 0 0}.kv-issue__place-text{color:var(--g-color-text-secondary);display:inline-block;padding-right:10px;text-align:left}.kv-issue__message{display:flex;font-family:var(--g-font-family-monospace);font-size:var(--g-text-code-2-font-size);line-height:var(--g-text-header-2-line-height);margin-left:10px;margin-right:auto}.kv-issue__message-text{flex:1 1 auto;min-width:240px;white-space:pre-wrap;word-break:break-word}.kv-issue__code{color:var(--g-color-text-complementary);flex:0 0 auto;font-size:12px;margin-left:1.5em;padding:3px 0}.kv-issue__arrow-toggle{margin-right:5px}.yql-issue-severity{align-items:center;display:flex;line-height:28px;white-space:nowrap}.yql-issue-severity_severity_error .yql-issue-severity__icon,.yql-issue-severity_severity_fatal .yql-issue-severity__icon{color:var(--g-color-text-danger)}.yql-issue-severity_severity_warning .yql-issue-severity__icon{color:var(--g-color-text-warning)}.yql-issue-severity_severity_info .yql-issue-severity__icon{color:var(--g-color-text-info)}.yql-issue-severity__title{color:var(--g-color-text-complementary);margin-left:4px;text-transform:capitalize}.ydb-query-duration{align-items:center;color:var(--g-color-text-complementary);display:flex;margin-left:10px}.ydb-query-duration__item-with-popover{white-space:nowrap}.ydb-query-duration__popover{max-width:300px}.ydb-query-execute-result__result{display:flex;flex-direction:column;flex-grow:1;overflow:auto;padding-left:10px}.ydb-query-execute-result__result .data-table__td,.ydb-query-execute-result__result .data-table__th{vertical-align:middle}.ydb-query-execute-result__result .data-table__box .data-table__table-wrapper{padding-bottom:20px}.ydb-query-execute-result__result .data-table__th{box-shadow:inset 0 -1px 0 0 var(--g-tabs-color-divider)}.ydb-query-execute-result__result .data-table__table-wrapper{padding-bottom:0}.ydb-query-execute-result__result-fullscreen-wrapper{display:flex;flex-direction:column;width:100%}.ydb-query-execute-result__result-tabs{padding-left:10px}.ydb-query-execute-result__error{padding:15px 10px}.ydb-query-execute-result__controls{align-items:center;background-color:var(--g-color-base-background);border-bottom:1px solid var(--g-color-line-generic);display:flex;height:53px;justify-content:space-between;padding:12px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:2}.ydb-query-execute-result__controls-right{display:flex;gap:12px;height:100%}.ydb-query-execute-result__controls-left{display:flex;gap:4px}.ydb-query-execute-result__inspector{font-family:var(--g-font-family-monospace)!important;font-size:var(--g-text-code-1-font-size)!important;line-height:var(--g-text-code-1-line-height)!important;padding:15px 10px}.ydb-query-execute-result__inspector .json-inspector__leaf_composite:before{color:var(--g-color-text-secondary);font-size:9px;left:20px;position:absolute}.ydb-query-execute-result__inspector .json-inspector__leaf_composite.json-inspector__leaf_root:before{left:0}.ydb-query-execute-result__inspector :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:"[+]"}.ydb-query-execute-result__inspector .json-inspector__leaf_expanded.json-inspector__leaf_composite:before{content:"[-]"}.ydb-query-execute-result__inspector .json-inspector__key{color:var(--g-color-text-misc)}.ydb-query-execute-result__inspector .json-inspector__leaf{padding-left:20px;position:relative}.ydb-query-execute-result__inspector .json-inspector__leaf_root{padding-left:0}.ydb-query-execute-result__inspector .json-inspector__line{padding-left:20px}.ydb-query-execute-result__inspector .json-inspector__toolbar{border:1px solid var(--g-color-line-generic);border-radius:4px;margin-bottom:10px;width:300px}.ydb-query-execute-result__inspector .json-inspector__search{background:none;border:0 solid #0000;border-width:0 22px 0 8px;box-sizing:border-box;color:var(--g-color-text-primary);font-family:var(--g-text-body-font-family);font-size:13px;height:28px;margin:0;outline:0;padding:0;vertical-align:top;width:300px}.ydb-query-execute-result__inspector .json-inspector__value_helper{color:var(--g-color-text-secondary)}.ydb-query-execute-result__inspector .json-inspector__line:hover:after{background:var(--g-color-base-simple-hover)}.ydb-query-execute-result__inspector .json-inspector__show-original:before{color:var(--g-color-text-secondary)}.ydb-query-execute-result__inspector .json-inspector__show-original:hover:after,.ydb-query-execute-result__inspector .json-inspector__show-original:hover:before{color:var(--g-color-text-primary)}.ydb-query-execute-result__inspector_fullscreen{height:100%;overflow:auto;padding:10px;width:100%}.ydb-query-explain-result__result{display:flex;flex-direction:column;flex-grow:1;overflow:auto}.ydb-query-explain-result__text-message{padding:15px 20px}.ydb-query-explain-result__controls{align-items:center;background-color:var(--g-color-base-background);border-bottom:1px solid var(--g-color-line-generic);display:flex;height:53px;justify-content:space-between;padding:12px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:2}.ydb-query-explain-result__controls-right{display:flex;gap:12px;height:100%}.ydb-query-explain-result__controls-left{display:flex;gap:4px}.ydb-query-explain-result__explain-canvas-container{height:100%;overflow-y:auto;width:100%}.ydb-query-explain-result__explain-canvas-container_hidden{display:none}.ydb-query-explain-result__inspector{font-family:var(--g-font-family-monospace)!important;font-size:var(--g-text-code-1-font-size)!important;line-height:var(--g-text-code-1-line-height)!important;overflow-y:auto;padding:15px 20px;width:100%}.ydb-query-explain-result__inspector .json-inspector__leaf_composite:before{color:var(--g-color-text-secondary);font-size:9px;left:20px;position:absolute}.ydb-query-explain-result__inspector .json-inspector__leaf_composite.json-inspector__leaf_root:before{left:0}.ydb-query-explain-result__inspector :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:"[+]"}.ydb-query-explain-result__inspector .json-inspector__leaf_expanded.json-inspector__leaf_composite:before{content:"[-]"}.ydb-query-explain-result__inspector .json-inspector__key{color:var(--g-color-text-misc)}.ydb-query-explain-result__inspector .json-inspector__leaf{padding-left:20px;position:relative}.ydb-query-explain-result__inspector .json-inspector__leaf_root{padding-left:0}.ydb-query-explain-result__inspector .json-inspector__line{padding-left:20px}.ydb-query-explain-result__inspector .json-inspector__toolbar{border:1px solid var(--g-color-line-generic);border-radius:4px;margin-bottom:10px;width:300px}.ydb-query-explain-result__inspector .json-inspector__search{background:none;border:0 solid #0000;border-width:0 22px 0 8px;box-sizing:border-box;color:var(--g-color-text-primary);font-family:var(--g-text-body-font-family);font-size:13px;height:28px;margin:0;outline:0;padding:0;vertical-align:top;width:300px}.ydb-query-explain-result__inspector .json-inspector__value_helper{color:var(--g-color-text-secondary)}.ydb-query-explain-result__inspector .json-inspector__line:hover:after{background:var(--g-color-base-simple-hover)}.ydb-query-explain-result__inspector .json-inspector__show-original:before{color:var(--g-color-text-secondary)}.ydb-query-explain-result__inspector .json-inspector__show-original:hover:after,.ydb-query-explain-result__inspector .json-inspector__show-original:hover:before{color:var(--g-color-text-primary)}.ydb-query-explain-result__inspector .json-inspector__leaf.json-inspector__leaf_root.json-inspector__leaf_expanded.json-inspector__leaf_composite{max-width:calc(100% - 50px)}.ydb-query-explain-result__inspector_fullscreen{padding:10px}.ydb-query-explain-result__ast{height:100%;overflow:hidden;white-space:pre-wrap;width:100%}.ydb-query-explain-result__loader{align-items:center;display:flex;justify-content:center;margin-top:20px;width:100%}.kv-preview{display:flex;flex:1 1 auto;flex-direction:column;height:100%}.kv-preview .data-table__td,.kv-preview .data-table__th{vertical-align:middle}.kv-preview .data-table__box .data-table__table-wrapper{padding-bottom:20px}.kv-preview .data-table__th{box-shadow:inset 0 -1px 0 0 var(--g-tabs-color-divider)}.kv-preview__header{align-items:center;background-color:var(--g-color-base-background);border-bottom:1px solid var(--g-color-line-generic);display:flex;height:53px;justify-content:space-between;padding:0 20px;position:-webkit-sticky;position:sticky;top:0}.kv-preview__title{display:flex}.kv-preview__table-name{color:var(--g-color-text-complementary);margin-left:4px}.kv-preview__controls-left{display:flex;gap:5px}.kv-preview__message-container{padding:15px 20px}.kv-preview__loader-container{align-items:center;display:flex;height:100%;justify-content:center}.kv-preview__result{height:calc(100% - 40px);overflow:auto;padding-left:10px;width:100%}.kv-fullscreen .kv-preview__result{height:100%}.kv-save-query__dialog-row{align-items:flex-start;display:flex}.kv-save-query__dialog-row+.kv-save-query__dialog-row{margin-top:var(--g-text-body-1-line-height)}.kv-save-query__field-title{font-weight:500;line-height:28px;margin-right:12px;white-space:nowrap}.kv-save-query__field-title.required:after{color:var(--g-color-text-danger);content:"*"}.kv-save-query__control-wrapper{display:flex;flex-direction:column;flex-grow:1}.kv-save-query__error{color:var(--g-color-text-danger);display:inline-block;height:17px}.kv-save-query__embedded-tooltip{align-items:center;color:var(--g-color-text-secondary);display:flex;height:100%;margin-left:-10px}.kv-save-query__embedded-tooltip:hover{color:var(--g-color-text-complementary);cursor:pointer}.kv-save-query__embedded-popup{border-radius:5px;max-width:150px!important;padding:10px}.kv-save-query__embedded-popup:before{border-radius:5px}.ydb-query-editor-controls{align-items:flex-end;display:flex;flex:0 0 40px;gap:24px;justify-content:space-between;min-height:40px;padding:5px 0}.ydb-query-editor-controls__left{display:flex;gap:12px}.ydb-query-editor-controls__mode-selector__button{margin-left:2px;width:241px}.ydb-query-editor-controls__mode-selector__button-content{align-items:center;display:flex;justify-content:space-between;width:215px}.ydb-query-editor-controls__mode-selector__popup{width:241px}.ydb-query-editor-controls__item-with-popover{align-items:center;display:flex;height:24px;line-height:normal}.ydb-query-editor-controls__popover{max-width:420px;white-space:pre-wrap}.query-editor{display:flex;flex:1 1 auto;flex-direction:column;height:100%;position:relative}.query-editor .data-table__td,.query-editor .data-table__th{vertical-align:middle}.query-editor .data-table__box .data-table__table-wrapper{padding-bottom:20px}.query-editor .data-table__th{box-shadow:inset 0 -1px 0 0 var(--g-tabs-color-divider)}.query-editor__monaco{border:1px solid var(--g-color-line-generic);display:flex;height:100%;position:relative;width:100%}.query-editor__monaco-wrapper{height:calc(100% - 49px);min-height:0;width:100%}.query-editor__pane-wrapper{background-color:var(--g-color-base-background);display:flex;flex-direction:column;z-index:2}.query-editor__pane-wrapper_top{border-bottom:1px solid var(--g-color-line-generic);padding:0 16px}.ydb-saved-queries{display:flex;flex:1 1 auto;flex-direction:column;height:100%;overflow:auto;padding:0 16px}.ydb-saved-queries__row{cursor:pointer}.ydb-saved-queries__row :hover .ydb-saved-queries__controls{display:flex}.ydb-saved-queries__query-name{overflow:hidden;text-overflow:ellipsis;white-space:pre-wrap}.ydb-saved-queries__query{align-items:center;display:flex;flex-direction:row;justify-content:space-between}.ydb-saved-queries__query-body{flex-grow:1;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:pre}.ydb-saved-queries__controls{display:none}.ydb-saved-queries__dialog-query-name{font-weight:500}.ydb-query{display:flex;flex:1 1 auto;flex-direction:column;max-height:100%}.ydb-query__tabs{padding:13px 20px 16px}.ydb-query__content{height:100%;overflow:hidden}.object-general{display:flex;flex-direction:column;flex-grow:1;height:100%;max-height:100%;width:100%}.object-general__loader{display:flex}.ydb-acl__result{align-self:flex-start}.ydb-acl__owner-container{background-color:var(--g-color-base-background);padding-bottom:16px;position:-webkit-sticky;position:sticky;top:0;z-index:2}.ydb-navigation-tree-view-loader{align-items:center;display:flex;height:24px;justify-content:center;width:20px}.g-spin{animation:g-spin 1s linear infinite;-webkit-backface-visibility:hidden;backface-visibility:hidden;display:inline-block}.g-spin__inner{border:2px solid var(--g-color-line-brand);border-end-end-radius:25px;border-inline-start:none;border-start-end-radius:25px;box-sizing:border-box;height:100%;margin-inline-start:50%;width:50%}.g-spin_size_xs{height:16px;width:16px}.g-spin_size_s{height:24px;width:24px}.g-spin_size_m{height:28px;width:28px}.g-spin_size_l{height:32px;width:32px}.g-spin_size_xl{height:36px;width:36px}@keyframes g-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.ydb-navigation-tree-view-error{color:var(--g-color-text-danger)}.ydb-navigation-tree-view-empty{color:var(--g-color-text-secondary);font-style:italic}.object-summary{display:flex;flex-direction:column;flex-grow:1;height:100%;max-height:100%;overflow:hidden;position:relative;width:100%}.object-summary__overview-wrapper{display:flex;flex-grow:1;overflow:auto;padding:0 12px 16px}.object-summary_hidden{visibility:hidden}.object-summary__action-button{background-color:var(--g-color-base-background);position:absolute;right:5px;top:19px}.object-summary__action-button_hidden{visibility:hidden}.object-summary__tree-wrapper{display:flex;flex-direction:column}.object-summary__tree{flex:1 1 auto;height:100%;overflow-y:scroll;padding:0 12px 12px 16px}.object-summary__tree-header{padding:23px 12px 17px 20px}.object-summary__sticky-top{background-color:var(--g-color-base-background);left:0;position:-webkit-sticky;position:sticky;top:0;z-index:5}.object-summary__tabs{padding:8px 12px 16px}.object-summary__tab{margin-right:40px;text-decoration:none}.object-summary__tab:first-letter{text-transform:uppercase}.object-summary__info{display:flex;flex-direction:column;overflow:hidden}.object-summary__info-controls{display:flex;gap:4px}.object-summary__info-action-button{background-color:var(--g-color-base-background)}.object-summary__info-action-button_hidden{display:none}.object-summary__rotated90{transform:rotate(-90deg)}.object-summary__rotated180{transform:rotate(180deg)}.object-summary__rotated270{transform:rotate(90deg)}.object-summary__info-header{align-items:center;border-bottom:1px solid var(--g-color-line-generic);display:flex;justify-content:space-between;padding:12px 12px 10px}.object-summary__info-title{align-items:center;display:flex;font-weight:600;overflow:hidden}.object-summary__path-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.object-summary__entity-type{background-color:var(--g-color-base-generic);border-radius:3px;display:inline-block;font-weight:400;margin-right:5px;padding:3px 8px;text-transform:lowercase}.object-summary__entity-type_error{background-color:#0000;padding:3px 0}.tenant-page{flex:1 1 auto;font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);overflow:hidden}.tenant-page,.ydb-vdisk-page{display:flex;flex-direction:column}.ydb-vdisk-page{gap:20px;height:100%;overflow:auto;padding-left:20px;padding-top:20px;position:relative}.ydb-vdisk-page__group-title{font-size:var(--g-text-header-1-font-size);line-height:var(--g-text-header-1-line-height)}.ydb-vdisk-page__group-disks{display:flex;flex-flow:row wrap;flex-grow:1;gap:10px;margin-top:20px}.ydb-vdisk-page__group-disk{width:150px}.link{color:var(--g-color-text-link);text-decoration:none}.link_external{margin-right:10px}.link:hover{color:var(--g-color-text-link-hover)}*{font-feature-settings:"tnum";box-sizing:border-box;font-variant-numeric:tabular-nums}.g-select-popup__tick-icon{box-sizing:initial}#root,body,html{box-sizing:border-box;height:100%;margin:0;overflow:auto;padding:0}:root{--g-color-base-yellow-light:#ffc70026;--g-color-base-yellow-medium:#ffdb4d66;--data-table-row-height:40px}.g-root{--ydb-data-table-color-hover:var(--g-color-base-float-hover);--ydb-color-status-grey:var(--g-color-base-neutral-heavy);--ydb-color-status-green:var(--g-color-base-positive-heavy);--ydb-color-status-yellow:var(--g-color-base-warning-heavy);--ydb-color-status-orange:#ff922e;--ydb-color-status-red:var(--g-color-base-danger-heavy);--ydb-color-status-blue:var(--g-color-base-info-heavy);--ydb-color-status-black:var(--g-color-base-misc-heavy)}:is(#tab,.g-tabs-item_active .g-tabs-item__title){color:var(--g-color-text-primary)!important}:is(#tab,.g-tabs-item__title){color:var(--g-color-text-secondary)}.gn-aside-header__pane-container{height:100%}.gn-aside-header__content{display:flex;flex-direction:column;height:100%;overflow:auto;position:relative}.loader{align-items:center;display:flex;justify-content:center;left:50%;position:fixed;top:50%;z-index:99999999}.app{height:100%}.app,.app__main{display:flex;flex:1 1 auto;flex-direction:column}.app__main{overflow:auto}.app .data-table{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);width:100%}.app .data-table__table{border-collapse:initial;border-spacing:0;max-width:100%}.app .data-table__th{border-left:initial;border-right:initial;border-top:initial;font-weight:700}.app .data-table__sticky .data-table__th,.app .data-table__td{border-left:initial;border-right:initial;border-top:initial;height:40px;height:var(--data-table-row-height);vertical-align:middle}.error{color:var(--g-color-text-danger)}.data-table__row:hover .clipboard-button,.ydb-tree-view__item:hover .clipboard-button,.ydb-virtual-table__row:hover .clipboard-button{opacity:1}.g-root .data-table_highlight-rows .data-table__row:hover{background:var(--ydb-data-table-color-hover)}.g-table-column-setup__item{cursor:pointer!important;padding:0 8px 0 32px!important}.app_embedded{font-family:Rubik,sans-serif}.g-popup{max-width:500px}.kv-navigation__internal-user{align-items:center;display:flex;justify-content:space-between;line-height:var(--g-text-body-2-line-height);margin-left:16px}.kv-navigation__user-info-wrapper{display:flex;flex-direction:column}.kv-navigation__ydb-internal-user-title{font-weight:500}.kv-navigation__ydb-user-wrapper{padding:10px;width:300px}.kv-monitoring-button{display:none}.data-table__row:hover .kv-monitoring-button,.kv-monitoring-button_visible{display:inline-block}.extended-cluster{display:flex;height:100%}.extended-cluster__balancer{align-items:center;display:flex;flex-direction:row}.extended-cluster__clipboard-button{margin-left:5px}.g-root{--g-text-header-font-weight:500;--g-text-subheader-font-weight:500;--g-text-display-font-weight:500;--g-text-accent-font-weight:500}.g-root_theme_light{--g-color-base-background:#fff;--g-color-base-brand:var(--g-color-private-blue-550-solid);--g-color-base-brand-hover:var(--g-color-private-blue-600-solid);--g-color-base-selection:var(--g-color-private-blue-100);--g-color-base-selection-hover:var(--g-color-private-blue-200);--g-color-line-brand:var(--g-color-private-blue-550-solid);--g-color-text-brand:var(--g-color-private-blue-600-solid);--g-color-text-brand-heavy:var(--g-color-private-blue-700-solid);--g-color-text-brand-contrast:var(--g-color-text-light-primary);--g-color-text-link:var(--g-color-private-blue-600-solid);--g-color-text-link-hover:var(--g-color-private-blue-800-solid);--g-color-private-white-50:#ffffff0d;--g-color-private-white-70:#ffffff12;--g-color-private-white-100:#ffffff1a;--g-color-private-white-150:#ffffff26;--g-color-private-white-200:#fff3;--g-color-private-white-250:#ffffff40;--g-color-private-white-300:#ffffff4d;--g-color-private-white-350:#ffffff59;--g-color-private-white-400:#fff6;--g-color-private-white-450:#ffffff73;--g-color-private-white-500:#ffffff80;--g-color-private-white-550:#ffffff8c;--g-color-private-white-600:#fff9;--g-color-private-white-650:#ffffffa6;--g-color-private-white-700:#ffffffb3;--g-color-private-white-750:#ffffffbf;--g-color-private-white-800:#fffc;--g-color-private-white-850:#ffffffd9;--g-color-private-white-900:#ffffffe6;--g-color-private-white-950:#fffffff2;--g-color-private-white-1000-solid:#fff;--g-color-private-black-50:#0000000d;--g-color-private-black-70:#00000012;--g-color-private-black-100:#0000001a;--g-color-private-black-150:#00000026;--g-color-private-black-200:#0003;--g-color-private-black-250:#00000040;--g-color-private-black-300:#0000004d;--g-color-private-black-350:#00000059;--g-color-private-black-400:#0006;--g-color-private-black-450:#00000073;--g-color-private-black-500:#00000080;--g-color-private-black-550:#0000008c;--g-color-private-black-600:#0009;--g-color-private-black-650:#000000a6;--g-color-private-black-700:#000000b3;--g-color-private-black-750:#000000bf;--g-color-private-black-800:#000c;--g-color-private-black-850:#000000d9;--g-color-private-black-900:#000000e6;--g-color-private-black-950:#000000f2;--g-color-private-black-20-solid:#fafafa;--g-color-private-black-50-solid:#f2f2f2;--g-color-private-black-100-solid:#e5e5e5;--g-color-private-black-150-solid:#d9d9d9;--g-color-private-black-200-solid:#ccc;--g-color-private-black-250-solid:#bfbfbf;--g-color-private-black-300-solid:#b3b3b3;--g-color-private-black-350-solid:#a6a6a6;--g-color-private-black-400-solid:#999;--g-color-private-black-450-solid:#8c8c8c;--g-color-private-black-500-solid:grey;--g-color-private-black-550-solid:#737373;--g-color-private-black-600-solid:#666;--g-color-private-black-650-solid:#595959;--g-color-private-black-700-solid:#4c4c4c;--g-color-private-black-750-solid:#404040;--g-color-private-black-800-solid:#333;--g-color-private-black-850-solid:#262626;--g-color-private-black-900-solid:#1a1a1a;--g-color-private-black-950-solid:#0d0d0d;--g-color-private-black-1000-solid:#000;--g-color-private-blue-50:#5282ff1a;--g-color-private-blue-100:#5282ff26;--g-color-private-blue-150:#5282ff33;--g-color-private-blue-200:#5282ff4d;--g-color-private-blue-250:#5282ff66;--g-color-private-blue-300:#5282ff80;--g-color-private-blue-350:#5282ff99;--g-color-private-blue-400:#5282ffb3;--g-color-private-blue-450:#5282ffcc;--g-color-private-blue-500:#5282ffe6;--g-color-private-blue-50-solid:#eef3ff;--g-color-private-blue-100-solid:#e5ecff;--g-color-private-blue-150-solid:#dce6ff;--g-color-private-blue-200-solid:#cbdaff;--g-color-private-blue-250-solid:#bacdff;--g-color-private-blue-300-solid:#a8c1ff;--g-color-private-blue-350-solid:#97b4ff;--g-color-private-blue-400-solid:#86a8ff;--g-color-private-blue-450-solid:#749bff;--g-color-private-blue-500-solid:#638fff;--g-color-private-blue-550-solid:#5282ff;--g-color-private-blue-600-solid:#4e79eb;--g-color-private-blue-650-solid:#4a71d6;--g-color-private-blue-700-solid:#4768c2;--g-color-private-blue-750-solid:#4360ad;--g-color-private-blue-800-solid:#3f5799;--g-color-private-blue-850-solid:#3c4f85;--g-color-private-blue-900-solid:#384670;--g-color-private-blue-950-solid:#343d5c;--g-color-private-blue-1000-solid:#333952;--g-color-private-green-50:#3bc9351a;--g-color-private-green-100:#3bc93526;--g-color-private-green-150:#3bc93533;--g-color-private-green-200:#3bc9354d;--g-color-private-green-250:#3bc93566;--g-color-private-green-300:#3bc93580;--g-color-private-green-350:#3bc93599;--g-color-private-green-400:#3bc935b3;--g-color-private-green-450:#3bc935cc;--g-color-private-green-500:#3bc935e6;--g-color-private-green-50-solid:#ebfaeb;--g-color-private-green-100-solid:#e2f7e1;--g-color-private-green-150-solid:#d8f4d7;--g-color-private-green-200-solid:#c4efc2;--g-color-private-green-250-solid:#b1e9ae;--g-color-private-green-300-solid:#9de49a;--g-color-private-green-350-solid:#89df86;--g-color-private-green-400-solid:#76d972;--g-color-private-green-450-solid:#62d45d;--g-color-private-green-500-solid:#4fce49;--g-color-private-green-550-solid:#3bc935;--g-color-private-green-600-solid:#3ab935;--g-color-private-green-650-solid:#38aa35;--g-color-private-green-700-solid:#379a34;--g-color-private-green-750-solid:#358a34;--g-color-private-green-800-solid:#347b34;--g-color-private-green-850-solid:#336b34;--g-color-private-green-900-solid:#315b34;--g-color-private-green-950-solid:#304b33;--g-color-private-green-1000-solid:#2f4433;--g-color-private-yellow-50:#ffdb4d1a;--g-color-private-yellow-100:#ffdb4d26;--g-color-private-yellow-150:#ffdb4d33;--g-color-private-yellow-200:#ffdb4d4d;--g-color-private-yellow-250:#ffdb4d66;--g-color-private-yellow-300:#ffdb4d80;--g-color-private-yellow-350:#ffdb4d99;--g-color-private-yellow-400:#ffdb4db3;--g-color-private-yellow-450:#ffdb4dcc;--g-color-private-yellow-500:#ffdb4de6;--g-color-private-yellow-50-solid:#fffbed;--g-color-private-yellow-100-solid:#fffae4;--g-color-private-yellow-150-solid:#fff8db;--g-color-private-yellow-200-solid:#fff4ca;--g-color-private-yellow-250-solid:#fff1b8;--g-color-private-yellow-300-solid:#ffeda6;--g-color-private-yellow-350-solid:#ffe994;--g-color-private-yellow-400-solid:#ffe682;--g-color-private-yellow-450-solid:#ffe271;--g-color-private-yellow-500-solid:#ffdf5f;--g-color-private-yellow-550-solid:#ffdb4d;--g-color-private-yellow-600-solid:#eac94a;--g-color-private-yellow-650-solid:#d5b848;--g-color-private-yellow-700-solid:#c0a645;--g-color-private-yellow-750-solid:#ab9543;--g-color-private-yellow-800-solid:#968340;--g-color-private-yellow-850-solid:#81723d;--g-color-private-yellow-900-solid:#6c603b;--g-color-private-yellow-950-solid:#574f38;--g-color-private-yellow-1000-solid:#4d4637;--g-color-private-orange-50:#ff77001a;--g-color-private-orange-100:#ff770026;--g-color-private-orange-150:#f703;--g-color-private-orange-200:#ff77004d;--g-color-private-orange-250:#f706;--g-color-private-orange-300:#ff770080;--g-color-private-orange-350:#f709;--g-color-private-orange-400:#ff7700b3;--g-color-private-orange-450:#f70c;--g-color-private-orange-500:#ff7700e6;--g-color-private-orange-50-solid:#fff1e6;--g-color-private-orange-100-solid:#ffebd9;--g-color-private-orange-150-solid:#ffe4cc;--g-color-private-orange-200-solid:#ffd6b3;--g-color-private-orange-250-solid:#ffc999;--g-color-private-orange-300-solid:#ffbb80;--g-color-private-orange-350-solid:#ffad66;--g-color-private-orange-400-solid:#ffa04c;--g-color-private-orange-450-solid:#ff9233;--g-color-private-orange-500-solid:#ff851a;--g-color-private-orange-550-solid:#f70;--g-color-private-orange-600-solid:#ea7005;--g-color-private-orange-650-solid:#d5680a;--g-color-private-orange-700-solid:#c0600f;--g-color-private-orange-750-solid:#ab5914;--g-color-private-orange-800-solid:#965119;--g-color-private-orange-850-solid:#814a1f;--g-color-private-orange-900-solid:#6c4324;--g-color-private-orange-950-solid:#573b29;--g-color-private-orange-1000-solid:#4d372b;--g-color-private-red-50:#ff04001a;--g-color-private-red-100:#ff040026;--g-color-private-red-150:#ff040033;--g-color-private-red-200:#ff04004d;--g-color-private-red-250:#ff040066;--g-color-private-red-300:#ff040080;--g-color-private-red-350:#ff040099;--g-color-private-red-400:#ff0400b3;--g-color-private-red-450:#ff0400cc;--g-color-private-red-500:#ff0400e6;--g-color-private-red-50-solid:#ffe6e6;--g-color-private-red-100-solid:#ffd9d9;--g-color-private-red-150-solid:#ffcdcc;--g-color-private-red-200-solid:#ffb4b3;--g-color-private-red-250-solid:#ff9b99;--g-color-private-red-300-solid:#ff8280;--g-color-private-red-350-solid:#ff6966;--g-color-private-red-400-solid:#ff504c;--g-color-private-red-450-solid:#ff3733;--g-color-private-red-500-solid:#ff1e1a;--g-color-private-red-550-solid:#ff0400;--g-color-private-red-600-solid:#ea0805;--g-color-private-red-650-solid:#d50c0a;--g-color-private-red-700-solid:#c0100f;--g-color-private-red-750-solid:#ab1414;--g-color-private-red-800-solid:#961819;--g-color-private-red-850-solid:#811c1f;--g-color-private-red-900-solid:#6c2024;--g-color-private-red-950-solid:#572429;--g-color-private-red-1000-solid:#4d262b;--g-color-private-purple-50:#8f52cc1a;--g-color-private-purple-100:#8f52cc26;--g-color-private-purple-150:#8f52cc33;--g-color-private-purple-200:#8f52cc4d;--g-color-private-purple-250:#8f52cc66;--g-color-private-purple-300:#8f52cc80;--g-color-private-purple-350:#8f52cc99;--g-color-private-purple-400:#8f52ccb3;--g-color-private-purple-450:#8f52cccc;--g-color-private-purple-500:#8f52cce6;--g-color-private-purple-50-solid:#f4eefa;--g-color-private-purple-100-solid:#eee5f7;--g-color-private-purple-150-solid:#e9dcf5;--g-color-private-purple-200-solid:#ddcbf0;--g-color-private-purple-250-solid:#d2baeb;--g-color-private-purple-300-solid:#c7a9e6;--g-color-private-purple-350-solid:#bc97e0;--g-color-private-purple-400-solid:#b186db;--g-color-private-purple-450-solid:#a575d6;--g-color-private-purple-500-solid:#9a63d1;--g-color-private-purple-550-solid:#8f52cc;--g-color-private-purple-600-solid:#854ebd;--g-color-private-purple-650-solid:#7b4aad;--g-color-private-purple-700-solid:#72479e;--g-color-private-purple-750-solid:#68438f;--g-color-private-purple-800-solid:#5e3f80;--g-color-private-purple-850-solid:#543b70;--g-color-private-purple-900-solid:#4a3761;--g-color-private-purple-950-solid:#413452;--g-color-private-purple-1000-solid:#3c324a;--g-color-private-cool-grey-50:#6b84991a;--g-color-private-cool-grey-100:#6b849926;--g-color-private-cool-grey-150:#6b849933;--g-color-private-cool-grey-200:#6b84994d;--g-color-private-cool-grey-250:#6b849966;--g-color-private-cool-grey-300:#6b849980;--g-color-private-cool-grey-350:#6b849999;--g-color-private-cool-grey-400:#6b8499b3;--g-color-private-cool-grey-450:#6b8499cc;--g-color-private-cool-grey-500:#6b8499e6;--g-color-private-cool-grey-50-solid:#f0f3f5;--g-color-private-cool-grey-100-solid:#e9edf0;--g-color-private-cool-grey-150-solid:#e1e6eb;--g-color-private-cool-grey-200-solid:#d3dae0;--g-color-private-cool-grey-250-solid:#c4ced6;--g-color-private-cool-grey-300-solid:#b5c1cc;--g-color-private-cool-grey-350-solid:#a6b5c2;--g-color-private-cool-grey-400-solid:#97a9b8;--g-color-private-cool-grey-450-solid:#899dad;--g-color-private-cool-grey-500-solid:#7a90a3;--g-color-private-cool-grey-550-solid:#6b8499;--g-color-private-cool-grey-600-solid:#657b8f;--g-color-private-cool-grey-650-solid:#5f7285;--g-color-private-cool-grey-700-solid:#586a7a;--g-color-private-cool-grey-750-solid:#526170;--g-color-private-cool-grey-800-solid:#4c5866;--g-color-private-cool-grey-850-solid:#464f5c;--g-color-private-cool-grey-900-solid:#404652;--g-color-private-cool-grey-950-solid:#393e47;--g-color-private-cool-grey-1000-solid:#363942}.g-root_theme_light-hc{--g-color-base-background:#fff;--g-color-base-brand:var(--g-color-private-blue-600-solid);--g-color-base-brand-hover:var(--g-color-private-blue-800-solid);--g-color-base-selection:var(--g-color-private-blue-250);--g-color-base-selection-hover:var(--g-color-private-blue-350);--g-color-line-brand:var(--g-color-private-blue-600-solid);--g-color-text-brand:var(--g-color-private-blue-650-solid);--g-color-text-brand-heavy:var(--g-color-private-blue-900-solid);--g-color-text-brand-contrast:var(--g-color-text-light-primary);--g-color-text-link:var(--g-color-private-blue-650-solid);--g-color-text-link-hover:var(--g-color-private-blue-850-solid);--g-color-private-white-50:#ffffff0d;--g-color-private-white-70:#ffffff12;--g-color-private-white-100:#ffffff1a;--g-color-private-white-150:#ffffff26;--g-color-private-white-200:#fff3;--g-color-private-white-250:#ffffff40;--g-color-private-white-300:#ffffff4d;--g-color-private-white-350:#ffffff59;--g-color-private-white-400:#fff6;--g-color-private-white-450:#ffffff73;--g-color-private-white-500:#ffffff80;--g-color-private-white-550:#ffffff8c;--g-color-private-white-600:#fff9;--g-color-private-white-650:#ffffffa6;--g-color-private-white-700:#ffffffb3;--g-color-private-white-750:#ffffffbf;--g-color-private-white-800:#fffc;--g-color-private-white-850:#ffffffd9;--g-color-private-white-900:#ffffffe6;--g-color-private-white-950:#fffffff2;--g-color-private-white-1000-solid:#fff;--g-color-private-black-50:#0000000d;--g-color-private-black-100:#0000001a;--g-color-private-black-150:#00000026;--g-color-private-black-200:#0003;--g-color-private-black-250:#00000040;--g-color-private-black-300:#0000004d;--g-color-private-black-350:#00000059;--g-color-private-black-400:#0006;--g-color-private-black-450:#00000073;--g-color-private-black-500:#00000080;--g-color-private-black-550:#0000008c;--g-color-private-black-600:#0009;--g-color-private-black-650:#000000a6;--g-color-private-black-700:#000000b3;--g-color-private-black-750:#000000bf;--g-color-private-black-800:#000c;--g-color-private-black-850:#000000d9;--g-color-private-black-900:#000000e6;--g-color-private-black-950:#000000f2;--g-color-private-black-50-solid:#f2f2f2;--g-color-private-black-100-solid:#e5e5e5;--g-color-private-black-150-solid:#d9d9d9;--g-color-private-black-200-solid:#ccc;--g-color-private-black-250-solid:#bfbfbf;--g-color-private-black-300-solid:#b3b3b3;--g-color-private-black-350-solid:#a6a6a6;--g-color-private-black-400-solid:#999;--g-color-private-black-450-solid:#8c8c8c;--g-color-private-black-500-solid:grey;--g-color-private-black-550-solid:#737373;--g-color-private-black-600-solid:#666;--g-color-private-black-650-solid:#595959;--g-color-private-black-700-solid:#4c4c4c;--g-color-private-black-750-solid:#404040;--g-color-private-black-800-solid:#333;--g-color-private-black-850-solid:#262626;--g-color-private-black-900-solid:#1a1a1a;--g-color-private-black-950-solid:#0d0d0d;--g-color-private-black-1000-solid:#000;--g-color-private-blue-50:#5282ff1a;--g-color-private-blue-100:#5282ff26;--g-color-private-blue-150:#5282ff33;--g-color-private-blue-200:#5282ff4d;--g-color-private-blue-250:#5282ff66;--g-color-private-blue-300:#5282ff80;--g-color-private-blue-350:#5282ff99;--g-color-private-blue-400:#5282ffb3;--g-color-private-blue-450:#5282ffcc;--g-color-private-blue-500:#5282ffe6;--g-color-private-blue-50-solid:#eef3ff;--g-color-private-blue-100-solid:#e5ecff;--g-color-private-blue-150-solid:#dce6ff;--g-color-private-blue-200-solid:#cbdaff;--g-color-private-blue-250-solid:#bacdff;--g-color-private-blue-300-solid:#a8c1ff;--g-color-private-blue-350-solid:#97b4ff;--g-color-private-blue-400-solid:#86a8ff;--g-color-private-blue-450-solid:#749bff;--g-color-private-blue-500-solid:#638fff;--g-color-private-blue-550-solid:#5282ff;--g-color-private-blue-600-solid:#4d79e9;--g-color-private-blue-650-solid:#486fd4;--g-color-private-blue-700-solid:#4366be;--g-color-private-blue-750-solid:#3f5ca8;--g-color-private-blue-800-solid:#3a5393;--g-color-private-blue-850-solid:#35497d;--g-color-private-blue-900-solid:#304067;--g-color-private-blue-950-solid:#2c3651;--g-color-private-blue-1000-solid:#293147;--g-color-private-green-50:#3bc9351a;--g-color-private-green-100:#3bc93526;--g-color-private-green-150:#3bc93533;--g-color-private-green-200:#3bc9354d;--g-color-private-green-250:#3bc93566;--g-color-private-green-300:#3bc93580;--g-color-private-green-350:#3bc93599;--g-color-private-green-400:#3bc935b3;--g-color-private-green-450:#3bc935cc;--g-color-private-green-500:#3bc935e6;--g-color-private-green-50-solid:#ebfaeb;--g-color-private-green-100-solid:#e2f7e1;--g-color-private-green-150-solid:#d8f4d7;--g-color-private-green-200-solid:#c4efc2;--g-color-private-green-250-solid:#b1e9ae;--g-color-private-green-300-solid:#9de49a;--g-color-private-green-350-solid:#89df86;--g-color-private-green-400-solid:#76d972;--g-color-private-green-450-solid:#62d45d;--g-color-private-green-500-solid:#4fce49;--g-color-private-green-550-solid:#3bc935;--g-color-private-green-600-solid:#38b833;--g-color-private-green-650-solid:#36a832;--g-color-private-green-700-solid:#339730;--g-color-private-green-750-solid:#31872f;--g-color-private-green-800-solid:#2f762e;--g-color-private-green-850-solid:#2c652c;--g-color-private-green-900-solid:#29552b;--g-color-private-green-950-solid:#274429;--g-color-private-green-1000-solid:#263c28;--g-color-private-yellow-50:#ffdb4d1a;--g-color-private-yellow-100:#ffdb4d26;--g-color-private-yellow-150:#ffdb4d33;--g-color-private-yellow-200:#ffdb4d4d;--g-color-private-yellow-250:#ffdb4d66;--g-color-private-yellow-300:#ffdb4d80;--g-color-private-yellow-350:#ffdb4d99;--g-color-private-yellow-400:#ffdb4db3;--g-color-private-yellow-450:#ffdb4dcc;--g-color-private-yellow-500:#ffdb4de6;--g-color-private-yellow-50-solid:#fffbed;--g-color-private-yellow-100-solid:#fffae4;--g-color-private-yellow-150-solid:#fff8db;--g-color-private-yellow-200-solid:#fff4ca;--g-color-private-yellow-250-solid:#fff1b8;--g-color-private-yellow-300-solid:#ffeda6;--g-color-private-yellow-350-solid:#ffe994;--g-color-private-yellow-400-solid:#ffe682;--g-color-private-yellow-450-solid:#ffe271;--g-color-private-yellow-500-solid:#ffdf5f;--g-color-private-yellow-550-solid:#ffdb4d;--g-color-private-yellow-600-solid:#e9c949;--g-color-private-yellow-650-solid:#d3b645;--g-color-private-yellow-700-solid:#bda441;--g-color-private-yellow-750-solid:#a7913d;--g-color-private-yellow-800-solid:#907f3a;--g-color-private-yellow-850-solid:#7a6d36;--g-color-private-yellow-900-solid:#645a32;--g-color-private-yellow-950-solid:#4e482e;--g-color-private-yellow-1000-solid:#433f2c;--g-color-private-orange-50:#ff77001a;--g-color-private-orange-100:#ff770026;--g-color-private-orange-150:#f703;--g-color-private-orange-200:#ff77004d;--g-color-private-orange-250:#f706;--g-color-private-orange-300:#ff770080;--g-color-private-orange-350:#f709;--g-color-private-orange-400:#ff7700b3;--g-color-private-orange-450:#f70c;--g-color-private-orange-500:#ff7700e6;--g-color-private-orange-50-solid:#fff1e6;--g-color-private-orange-100-solid:#ffebd9;--g-color-private-orange-150-solid:#ffe4cc;--g-color-private-orange-200-solid:#ffd6b3;--g-color-private-orange-250-solid:#ffc999;--g-color-private-orange-300-solid:#ffbb80;--g-color-private-orange-350-solid:#ffad66;--g-color-private-orange-400-solid:#ffa04c;--g-color-private-orange-450-solid:#ff9233;--g-color-private-orange-500-solid:#ff851a;--g-color-private-orange-550-solid:#f70;--g-color-private-orange-600-solid:#e96f04;--g-color-private-orange-650-solid:#d36608;--g-color-private-orange-700-solid:#bd5e0b;--g-color-private-orange-750-solid:#a7550f;--g-color-private-orange-800-solid:#904d13;--g-color-private-orange-850-solid:#7a4517;--g-color-private-orange-900-solid:#643c1b;--g-color-private-orange-950-solid:#4e341e;--g-color-private-orange-1000-solid:#433020;--g-color-private-red-50:#ff04001a;--g-color-private-red-100:#ff040026;--g-color-private-red-150:#ff040033;--g-color-private-red-200:#ff04004d;--g-color-private-red-250:#ff040066;--g-color-private-red-300:#ff040080;--g-color-private-red-350:#ff040099;--g-color-private-red-400:#ff0400b3;--g-color-private-red-450:#ff0400cc;--g-color-private-red-500:#ff0400e6;--g-color-private-red-50-solid:#ffe6e6;--g-color-private-red-100-solid:#ffd9d9;--g-color-private-red-150-solid:#ffcdcc;--g-color-private-red-200-solid:#ffb4b3;--g-color-private-red-250-solid:#ff9b99;--g-color-private-red-300-solid:#ff8280;--g-color-private-red-350-solid:#ff6966;--g-color-private-red-400-solid:#ff504c;--g-color-private-red-450-solid:#ff3733;--g-color-private-red-500-solid:#ff1e1a;--g-color-private-red-550-solid:#ff0400;--g-color-private-red-600-solid:#e90804;--g-color-private-red-650-solid:#d30b08;--g-color-private-red-700-solid:#bd0e0b;--g-color-private-red-750-solid:#a6110f;--g-color-private-red-800-solid:#901413;--g-color-private-red-850-solid:#7a1717;--g-color-private-red-900-solid:#641a1b;--g-color-private-red-950-solid:#4e1d1e;--g-color-private-red-1000-solid:#431e20;--g-color-private-purple-50:#8f52cc1a;--g-color-private-purple-100:#8f52cc26;--g-color-private-purple-150:#8f52cc33;--g-color-private-purple-200:#8f52cc4d;--g-color-private-purple-250:#8f52cc66;--g-color-private-purple-300:#8f52cc80;--g-color-private-purple-350:#8f52cc99;--g-color-private-purple-400:#8f52ccb3;--g-color-private-purple-450:#8f52cccc;--g-color-private-purple-500:#8f52cce6;--g-color-private-purple-50-solid:#f4eefa;--g-color-private-purple-100-solid:#eee5f7;--g-color-private-purple-150-solid:#e9dcf5;--g-color-private-purple-200-solid:#ddcbf0;--g-color-private-purple-250-solid:#d2baeb;--g-color-private-purple-300-solid:#c7a9e6;--g-color-private-purple-350-solid:#bc97e0;--g-color-private-purple-400-solid:#b186db;--g-color-private-purple-450-solid:#a575d6;--g-color-private-purple-500-solid:#9a63d1;--g-color-private-purple-550-solid:#8f52cc;--g-color-private-purple-600-solid:#844dbb;--g-color-private-purple-650-solid:#7949ab;--g-color-private-purple-700-solid:#6e449a;--g-color-private-purple-750-solid:#633f8a;--g-color-private-purple-800-solid:#593b79;--g-color-private-purple-850-solid:#4e3668;--g-color-private-purple-900-solid:#433158;--g-color-private-purple-950-solid:#382c47;--g-color-private-purple-1000-solid:#322a3f;--g-color-private-cool-grey-50:#6b84991a;--g-color-private-cool-grey-100:#6b849926;--g-color-private-cool-grey-150:#6b849933;--g-color-private-cool-grey-200:#6b84994d;--g-color-private-cool-grey-250:#6b849966;--g-color-private-cool-grey-300:#6b849980;--g-color-private-cool-grey-350:#6b849999;--g-color-private-cool-grey-400:#6b8499b3;--g-color-private-cool-grey-450:#6b8499cc;--g-color-private-cool-grey-500:#6b8499e6;--g-color-private-cool-grey-50-solid:#f0f3f5;--g-color-private-cool-grey-100-solid:#e9edf0;--g-color-private-cool-grey-150-solid:#e1e6eb;--g-color-private-cool-grey-200-solid:#d3dae0;--g-color-private-cool-grey-250-solid:#c4ced6;--g-color-private-cool-grey-300-solid:#b5c1cc;--g-color-private-cool-grey-350-solid:#a6b5c2;--g-color-private-cool-grey-400-solid:#97a9b8;--g-color-private-cool-grey-450-solid:#899dad;--g-color-private-cool-grey-500-solid:#7a90a3;--g-color-private-cool-grey-550-solid:#6b8499;--g-color-private-cool-grey-600-solid:#647a8e;--g-color-private-cool-grey-650-solid:#5c7182;--g-color-private-cool-grey-700-solid:#556776;--g-color-private-cool-grey-750-solid:#4e5d6b;--g-color-private-cool-grey-800-solid:#465360;--g-color-private-cool-grey-850-solid:#3f4a54;--g-color-private-cool-grey-900-solid:#384049;--g-color-private-cool-grey-950-solid:#31363d;--g-color-private-cool-grey-1000-solid:#2d3237}.g-root_theme_dark{--g-color-base-background:#2d2c33;--g-color-base-brand:var(--g-color-private-blue-450-solid);--g-color-base-brand-hover:var(--g-color-private-blue-600-solid);--g-color-base-selection:var(--g-color-private-blue-150);--g-color-base-selection-hover:var(--g-color-private-blue-200);--g-color-line-brand:var(--g-color-private-blue-550-solid);--g-color-text-brand:var(--g-color-private-blue-550-solid);--g-color-text-brand-heavy:var(--g-color-private-blue-600-solid);--g-color-text-brand-contrast:var(--g-color-text-light-primary);--g-color-text-link:var(--g-color-private-blue-550-solid);--g-color-text-link-hover:var(--g-color-private-blue-700-solid);--g-color-private-white-20:#ffffff05;--g-color-private-white-50:#ffffff0d;--g-color-private-white-70:#ffffff12;--g-color-private-white-100:#ffffff1a;--g-color-private-white-150:#ffffff26;--g-color-private-white-200:#fff3;--g-color-private-white-250:#ffffff40;--g-color-private-white-300:#ffffff4d;--g-color-private-white-350:#ffffff59;--g-color-private-white-400:#fff6;--g-color-private-white-450:#ffffff73;--g-color-private-white-500:#ffffff80;--g-color-private-white-550:#ffffff8c;--g-color-private-white-600:#fff9;--g-color-private-white-650:#ffffffa6;--g-color-private-white-700:#ffffffb3;--g-color-private-white-750:#ffffffbf;--g-color-private-white-800:#fffc;--g-color-private-white-850:#ffffffd9;--g-color-private-white-900:#ffffffe6;--g-color-private-white-950:#fffffff2;--g-color-private-white-20-solid:#313037;--g-color-private-white-50-solid:#38373d;--g-color-private-white-70-solid:#3c3b41;--g-color-private-white-100-solid:#424147;--g-color-private-white-150-solid:#4d4c52;--g-color-private-white-200-solid:#57565c;--g-color-private-white-250-solid:#616166;--g-color-private-white-300-solid:#6c6b70;--g-color-private-white-350-solid:#77767a;--g-color-private-white-400-solid:#818085;--g-color-private-white-450-solid:#8b8b8f;--g-color-private-white-500-solid:#969699;--g-color-private-white-550-solid:#a0a0a3;--g-color-private-white-600-solid:#ababad;--g-color-private-white-650-solid:#b6b5b8;--g-color-private-white-700-solid:#c0c0c2;--g-color-private-white-750-solid:#cacacc;--g-color-private-white-800-solid:#d5d5d6;--g-color-private-white-850-solid:#dfdfe0;--g-color-private-white-900-solid:#eaeaeb;--g-color-private-white-950-solid:#f5f5f5;--g-color-private-white-1000-solid:#fff;--g-color-private-white-opaque-150:#4c4b51f2;--g-color-private-black-20:#00000005;--g-color-private-black-50:#0000000d;--g-color-private-black-100:#0000001a;--g-color-private-black-150:#00000026;--g-color-private-black-200:#0003;--g-color-private-black-250:#00000040;--g-color-private-black-300:#0000004d;--g-color-private-black-350:#00000059;--g-color-private-black-400:#0006;--g-color-private-black-450:#00000073;--g-color-private-black-500:#00000080;--g-color-private-black-550:#0000008c;--g-color-private-black-600:#0009;--g-color-private-black-650:#000000a6;--g-color-private-black-700:#000000b3;--g-color-private-black-750:#000000bf;--g-color-private-black-800:#000c;--g-color-private-black-850:#000000d9;--g-color-private-black-900:#000000e6;--g-color-private-black-950:#000000f2;--g-color-private-black-1000-solid:#000;--g-color-private-black-rock-850:#2d2c33;--g-color-private-blue-50:#5282ff1a;--g-color-private-blue-100:#5282ff26;--g-color-private-blue-150:#5282ff33;--g-color-private-blue-200:#5282ff4d;--g-color-private-blue-250:#5282ff66;--g-color-private-blue-300:#5282ff80;--g-color-private-blue-350:#5282ff99;--g-color-private-blue-400:#5282ffb3;--g-color-private-blue-450:#5282ffcc;--g-color-private-blue-500:#5282ffe6;--g-color-private-blue-50-solid:#313547;--g-color-private-blue-100-solid:#333952;--g-color-private-blue-150-solid:#343d5c;--g-color-private-blue-200-solid:#384670;--g-color-private-blue-250-solid:#3c4e85;--g-color-private-blue-300-solid:#405799;--g-color-private-blue-350-solid:#4360ad;--g-color-private-blue-400-solid:#4768c2;--g-color-private-blue-450-solid:#4b71d6;--g-color-private-blue-500-solid:#4e79eb;--g-color-private-blue-550-solid:#5282ff;--g-color-private-blue-600-solid:#638fff;--g-color-private-blue-650-solid:#759bff;--g-color-private-blue-700-solid:#86a8ff;--g-color-private-blue-750-solid:#97b4ff;--g-color-private-blue-800-solid:#a9c1ff;--g-color-private-blue-850-solid:#bacdff;--g-color-private-blue-900-solid:#cbdaff;--g-color-private-blue-950-solid:#dce6ff;--g-color-private-blue-1000-solid:#e5ecff;--g-color-private-green-50:#5bb5571a;--g-color-private-green-100:#5bb55726;--g-color-private-green-150:#5bb55733;--g-color-private-green-200:#5bb5574d;--g-color-private-green-250:#5bb55766;--g-color-private-green-300:#5bb55780;--g-color-private-green-350:#5bb55799;--g-color-private-green-400:#5bb557b3;--g-color-private-green-450:#5bb557cc;--g-color-private-green-500:#5bb557e6;--g-color-private-green-50-solid:#323a37;--g-color-private-green-100-solid:#344138;--g-color-private-green-150-solid:#36473a;--g-color-private-green-200-solid:#3b553e;--g-color-private-green-250-solid:#3f6341;--g-color-private-green-300-solid:#447145;--g-color-private-green-350-solid:#497e49;--g-color-private-green-400-solid:#4d8c4c;--g-color-private-green-450-solid:#529a50;--g-color-private-green-500-solid:#56a753;--g-color-private-green-550-solid:#5bb557;--g-color-private-green-600-solid:#6bbc68;--g-color-private-green-650-solid:#7cc479;--g-color-private-green-700-solid:#8ccb89;--g-color-private-green-750-solid:#9dd39a;--g-color-private-green-800-solid:#addaab;--g-color-private-green-850-solid:#bde1bc;--g-color-private-green-900-solid:#cee9cd;--g-color-private-green-950-solid:#def0dd;--g-color-private-green-1000-solid:#e6f4e6;--g-color-private-yellow-50:#ffcb001a;--g-color-private-yellow-100:#ffcb0026;--g-color-private-yellow-150:#ffcb0033;--g-color-private-yellow-200:#ffcb004d;--g-color-private-yellow-250:#ffcb0066;--g-color-private-yellow-300:#ffcb0080;--g-color-private-yellow-350:#ffcb0099;--g-color-private-yellow-400:#ffcb00b3;--g-color-private-yellow-450:#ffcb00cc;--g-color-private-yellow-500:#ffcb00e6;--g-color-private-yellow-50-solid:#423c2e;--g-color-private-yellow-100-solid:#4d442b;--g-color-private-yellow-150-solid:#574c29;--g-color-private-yellow-200-solid:#6c5c24;--g-color-private-yellow-250-solid:#816c1f;--g-color-private-yellow-300-solid:#967c19;--g-color-private-yellow-350-solid:#ab8c14;--g-color-private-yellow-400-solid:#c09b0f;--g-color-private-yellow-450-solid:#d5ab0a;--g-color-private-yellow-500-solid:#e9ba04;--g-color-private-yellow-550-solid:#ffcb00;--g-color-private-yellow-600-solid:#ffd01a;--g-color-private-yellow-650-solid:#ffd533;--g-color-private-yellow-700-solid:#ffdb4c;--g-color-private-yellow-750-solid:#ffe066;--g-color-private-yellow-800-solid:#ffe580;--g-color-private-yellow-850-solid:#ffea99;--g-color-private-yellow-900-solid:#ffefb3;--g-color-private-yellow-950-solid:#fff5cc;--g-color-private-yellow-1000-solid:#fff7d9;--g-color-private-orange-50:#c8630c1a;--g-color-private-orange-100:#c8630c26;--g-color-private-orange-150:#c8630c33;--g-color-private-orange-200:#c8630c4d;--g-color-private-orange-250:#c8630c66;--g-color-private-orange-300:#c8630c80;--g-color-private-orange-350:#c8630c99;--g-color-private-orange-400:#c8630cb3;--g-color-private-orange-450:#c8630ccc;--g-color-private-orange-500:#c8630ce6;--g-color-private-orange-50-solid:#3d322f;--g-color-private-orange-100-solid:#44342d;--g-color-private-orange-150-solid:#4c372b;--g-color-private-orange-200-solid:#5c3d27;--g-color-private-orange-250-solid:#6b4223;--g-color-private-orange-300-solid:#7b4720;--g-color-private-orange-350-solid:#8a4d1c;--g-color-private-orange-400-solid:#995218;--g-color-private-orange-450-solid:#a95814;--g-color-private-orange-500-solid:#b95e10;--g-color-private-orange-550-solid:#c8630c;--g-color-private-orange-600-solid:#ce7324;--g-color-private-orange-650-solid:#d3823d;--g-color-private-orange-700-solid:#d89255;--g-color-private-orange-750-solid:#dea16d;--g-color-private-orange-800-solid:#e3b185;--g-color-private-orange-850-solid:#e9c19e;--g-color-private-orange-900-solid:#efd0b6;--g-color-private-orange-950-solid:#f4e0ce;--g-color-private-orange-1000-solid:#f7e8db;--g-color-private-red-50:#e849451a;--g-color-private-red-100:#e8494526;--g-color-private-red-150:#e8494533;--g-color-private-red-200:#e849454d;--g-color-private-red-250:#e8494566;--g-color-private-red-300:#e8494580;--g-color-private-red-350:#e8494599;--g-color-private-red-400:#e84945b3;--g-color-private-red-450:#e84945cc;--g-color-private-red-500:#e84945e6;--g-color-private-red-50-solid:#402f35;--g-color-private-red-100-solid:#493036;--g-color-private-red-150-solid:#523237;--g-color-private-red-200-solid:#653539;--g-color-private-red-250-solid:#78383a;--g-color-private-red-300-solid:#8a3a3c;--g-color-private-red-350-solid:#9d3d3e;--g-color-private-red-400-solid:#b04040;--g-color-private-red-450-solid:#c34341;--g-color-private-red-500-solid:#d54644;--g-color-private-red-550-solid:#e84945;--g-color-private-red-600-solid:#ea5b58;--g-color-private-red-650-solid:#ec6d6b;--g-color-private-red-700-solid:#ef7f7d;--g-color-private-red-750-solid:#f19290;--g-color-private-red-800-solid:#f3a4a2;--g-color-private-red-850-solid:#f6b6b5;--g-color-private-red-900-solid:#f8c8c7;--g-color-private-red-950-solid:#fadbda;--g-color-private-red-1000-solid:#fce4e3;--g-color-private-purple-50:#8f52cc1a;--g-color-private-purple-100:#8f52cc26;--g-color-private-purple-150:#8f52cc33;--g-color-private-purple-200:#8f52cc4d;--g-color-private-purple-250:#8f52cc66;--g-color-private-purple-300:#8f52cc80;--g-color-private-purple-350:#8f52cc99;--g-color-private-purple-400:#8f52ccb3;--g-color-private-purple-450:#8f52cccc;--g-color-private-purple-500:#8f52cce6;--g-color-private-purple-50-solid:#373042;--g-color-private-purple-100-solid:#3c324a;--g-color-private-purple-150-solid:#413452;--g-color-private-purple-200-solid:#4a3761;--g-color-private-purple-250-solid:#543b70;--g-color-private-purple-300-solid:#5e3f80;--g-color-private-purple-350-solid:#68438f;--g-color-private-purple-400-solid:#72479e;--g-color-private-purple-450-solid:#7b4aad;--g-color-private-purple-500-solid:#854ebd;--g-color-private-purple-550-solid:#8f52cc;--g-color-private-purple-600-solid:#9a63d1;--g-color-private-purple-650-solid:#a575d6;--g-color-private-purple-700-solid:#b186db;--g-color-private-purple-750-solid:#bc97e0;--g-color-private-purple-800-solid:#c7a9e6;--g-color-private-purple-850-solid:#d2baeb;--g-color-private-purple-900-solid:#ddcbf0;--g-color-private-purple-950-solid:#e9dcf5;--g-color-private-purple-1000-solid:#eee5f7;--g-color-private-cool-grey-50:#60809c1a;--g-color-private-cool-grey-100:#60809c26;--g-color-private-cool-grey-150:#60809c33;--g-color-private-cool-grey-200:#60809c4d;--g-color-private-cool-grey-250:#60809c66;--g-color-private-cool-grey-300:#60809c80;--g-color-private-cool-grey-350:#60809c99;--g-color-private-cool-grey-400:#60809cb3;--g-color-private-cool-grey-450:#60809ccc;--g-color-private-cool-grey-500:#60809ce6;--g-color-private-cool-grey-50-solid:#32343e;--g-color-private-cool-grey-100-solid:#353943;--g-color-private-cool-grey-150-solid:#373d48;--g-color-private-cool-grey-200-solid:#3c4552;--g-color-private-cool-grey-250-solid:#414e5d;--g-color-private-cool-grey-300-solid:#465667;--g-color-private-cool-grey-350-solid:#4c5e72;--g-color-private-cool-grey-400-solid:#51677d;--g-color-private-cool-grey-450-solid:#566f87;--g-color-private-cool-grey-500-solid:#5b7892;--g-color-private-cool-grey-550-solid:#60809c;--g-color-private-cool-grey-600-solid:#708da6;--g-color-private-cool-grey-650-solid:#8099b0;--g-color-private-cool-grey-700-solid:#90a6ba;--g-color-private-cool-grey-750-solid:#a0b3c3;--g-color-private-cool-grey-800-solid:#b0bfcd;--g-color-private-cool-grey-850-solid:#bfccd7;--g-color-private-cool-grey-900-solid:#cfd9e1;--g-color-private-cool-grey-950-solid:#dfe6eb;--g-color-private-cool-grey-1000-solid:#e7ecf0}.g-root_theme_dark-hc{--g-color-base-background:#222326;--g-color-base-brand:var(--g-color-private-blue-450-solid);--g-color-base-brand-hover:var(--g-color-private-blue-650-solid);--g-color-base-selection:var(--g-color-private-blue-250);--g-color-base-selection-hover:var(--g-color-private-blue-400);--g-color-line-brand:var(--g-color-private-blue-550-solid);--g-color-text-brand:var(--g-color-private-blue-650-solid);--g-color-text-brand-heavy:var(--g-color-private-blue-850-solid);--g-color-text-brand-contrast:var(--g-color-text-light-primary);--g-color-text-link:var(--g-color-private-blue-650-solid);--g-color-text-link-hover:var(--g-color-private-blue-800-solid);--g-color-private-white-50:#ffffff0d;--g-color-private-white-70:#ffffff12;--g-color-private-white-100:#ffffff1a;--g-color-private-white-150:#ffffff26;--g-color-private-white-200:#fff3;--g-color-private-white-250:#ffffff40;--g-color-private-white-300:#ffffff4d;--g-color-private-white-350:#ffffff59;--g-color-private-white-400:#fff6;--g-color-private-white-450:#ffffff73;--g-color-private-white-500:#ffffff80;--g-color-private-white-550:#ffffff8c;--g-color-private-white-600:#fff9;--g-color-private-white-650:#ffffffa6;--g-color-private-white-700:#ffffffb3;--g-color-private-white-750:#ffffffbf;--g-color-private-white-800:#fffc;--g-color-private-white-850:#ffffffd9;--g-color-private-white-900:#ffffffe6;--g-color-private-white-950:#fffffff2;--g-color-private-white-50-solid:#2d2e31;--g-color-private-white-100-solid:#38393c;--g-color-private-white-150-solid:#434447;--g-color-private-white-200-solid:#4e4f51;--g-color-private-white-250-solid:#595a5c;--g-color-private-white-300-solid:#646567;--g-color-private-white-350-solid:#6f7072;--g-color-private-white-400-solid:#7a7b7d;--g-color-private-white-450-solid:#858688;--g-color-private-white-500-solid:#909193;--g-color-private-white-550-solid:#9c9c9d;--g-color-private-white-600-solid:#a7a7a8;--g-color-private-white-650-solid:#b2b2b3;--g-color-private-white-700-solid:#bdbdbe;--g-color-private-white-750-solid:#c8c8c9;--g-color-private-white-800-solid:#d3d3d4;--g-color-private-white-850-solid:#dededf;--g-color-private-white-900-solid:#e9e9e9;--g-color-private-white-950-solid:#f4f4f4;--g-color-private-white-1000-solid:#fff;--g-color-private-white-opaque-150:#38393cf7;--g-color-private-black-20:#00000005;--g-color-private-black-50:#0000000d;--g-color-private-black-100:#0000001a;--g-color-private-black-150:#00000026;--g-color-private-black-200:#0003;--g-color-private-black-250:#00000040;--g-color-private-black-300:#0000004d;--g-color-private-black-350:#00000059;--g-color-private-black-400:#0006;--g-color-private-black-450:#00000073;--g-color-private-black-500:#00000080;--g-color-private-black-550:#0000008c;--g-color-private-black-600:#0009;--g-color-private-black-650:#000000a6;--g-color-private-black-700:#000000b3;--g-color-private-black-750:#000000bf;--g-color-private-black-800:#000c;--g-color-private-black-850:#000000d9;--g-color-private-black-900:#000000e6;--g-color-private-black-950:#000000f2;--g-color-private-black-1000-solid:#000;--g-color-private-black-rock-850:#2d2c33;--g-color-private-black-rock-950:#222326;--g-color-private-blue-50:#5282ff1a;--g-color-private-blue-100:#5282ff26;--g-color-private-blue-150:#5282ff33;--g-color-private-blue-200:#5282ff4d;--g-color-private-blue-250:#5282ff66;--g-color-private-blue-300:#5282ff80;--g-color-private-blue-350:#5282ff99;--g-color-private-blue-400:#5282ffb3;--g-color-private-blue-450:#5282ffcc;--g-color-private-blue-500:#5282ffe6;--g-color-private-blue-50-solid:#272d3c;--g-color-private-blue-100-solid:#293147;--g-color-private-blue-150-solid:#2c3651;--g-color-private-blue-200-solid:#304067;--g-color-private-blue-250-solid:#35497d;--g-color-private-blue-300-solid:#3a5393;--g-color-private-blue-350-solid:#3f5ca8;--g-color-private-blue-400-solid:#4466be;--g-color-private-blue-450-solid:#486fd4;--g-color-private-blue-500-solid:#4d79e9;--g-color-private-blue-550-solid:#5282ff;--g-color-private-blue-600-solid:#638fff;--g-color-private-blue-650-solid:#759bff;--g-color-private-blue-700-solid:#86a8ff;--g-color-private-blue-750-solid:#97b4ff;--g-color-private-blue-800-solid:#a9c1ff;--g-color-private-blue-850-solid:#bacdff;--g-color-private-blue-900-solid:#cbdaff;--g-color-private-blue-950-solid:#dce6ff;--g-color-private-blue-1000-solid:#e5ecff;--g-color-private-green-50:#5bb5571a;--g-color-private-green-100:#5bb55726;--g-color-private-green-150:#000;--g-color-private-green-200:#5bb5574d;--g-color-private-green-250:#5bb55766;--g-color-private-green-300:#5bb55780;--g-color-private-green-350:#5bb55799;--g-color-private-green-400:#5bb557b3;--g-color-private-green-450:#5bb557cc;--g-color-private-green-500:#5bb557e6;--g-color-private-green-50-solid:#28322b;--g-color-private-green-100-solid:#2b392d;--g-color-private-green-150-solid:#2d4030;--g-color-private-green-200-solid:#334f35;--g-color-private-green-250-solid:#395d3a;--g-color-private-green-300-solid:#3f6c3f;--g-color-private-green-350-solid:#447b43;--g-color-private-green-400-solid:#4a8948;--g-color-private-green-450-solid:#50984d;--g-color-private-green-500-solid:#55a652;--g-color-private-green-550-solid:#5bb557;--g-color-private-green-600-solid:#6bbc68;--g-color-private-green-650-solid:#7cc479;--g-color-private-green-700-solid:#8ccb89;--g-color-private-green-750-solid:#9dd39a;--g-color-private-green-800-solid:#addaab;--g-color-private-green-850-solid:#bde1bc;--g-color-private-green-900-solid:#cee9cd;--g-color-private-green-950-solid:#def0dd;--g-color-private-green-1000-solid:#e6f4e6;--g-color-private-yellow-50:#ffcb001a;--g-color-private-yellow-100:#ffcb0026;--g-color-private-yellow-150:#ffcb0033;--g-color-private-yellow-200:#ffcb004d;--g-color-private-yellow-250:#ffcb0066;--g-color-private-yellow-300:#ffcb0080;--g-color-private-yellow-350:#ffcb0099;--g-color-private-yellow-400:#ffcb00b3;--g-color-private-yellow-450:#ffcb00cc;--g-color-private-yellow-500:#ffcb00e6;--g-color-private-yellow-50-solid:#383422;--g-color-private-yellow-100-solid:#433c20;--g-color-private-yellow-150-solid:#4e451e;--g-color-private-yellow-200-solid:#64551b;--g-color-private-yellow-250-solid:#7a6617;--g-color-private-yellow-300-solid:#907713;--g-color-private-yellow-350-solid:#a7880f;--g-color-private-yellow-400-solid:#bd990b;--g-color-private-yellow-450-solid:#d3a908;--g-color-private-yellow-500-solid:#e9ba04;--g-color-private-yellow-550-solid:#ffcb00;--g-color-private-yellow-600-solid:#ffd01a;--g-color-private-yellow-650-solid:#ffd533;--g-color-private-yellow-700-solid:#ffdb4c;--g-color-private-yellow-750-solid:#ffe066;--g-color-private-yellow-800-solid:#ffe580;--g-color-private-yellow-850-solid:#ffea99;--g-color-private-yellow-900-solid:#ffefb3;--g-color-private-yellow-950-solid:#fff5cc;--g-color-private-yellow-1000-solid:#fff7d9;--g-color-private-orange-50:#c8630c1a;--g-color-private-orange-100:#c8630c26;--g-color-private-orange-150:#c8630c33;--g-color-private-orange-200:#c8630c4d;--g-color-private-orange-250:#c8630c66;--g-color-private-orange-300:#c8630c80;--g-color-private-orange-350:#c8630c99;--g-color-private-orange-400:#c8630cb3;--g-color-private-orange-450:#c8630ccc;--g-color-private-orange-500:#c8630ce6;--g-color-private-orange-50-solid:#332923;--g-color-private-orange-100-solid:#3b2d22;--g-color-private-orange-150-solid:#433021;--g-color-private-orange-200-solid:#54361e;--g-color-private-orange-250-solid:#643d1c;--g-color-private-orange-300-solid:#754319;--g-color-private-orange-350-solid:#864916;--g-color-private-orange-400-solid:#965014;--g-color-private-orange-450-solid:#a75611;--g-color-private-orange-500-solid:#b75d0f;--g-color-private-orange-550-solid:#c8630c;--g-color-private-orange-600-solid:#ce7324;--g-color-private-orange-650-solid:#d3823d;--g-color-private-orange-700-solid:#d89255;--g-color-private-orange-750-solid:#dea16d;--g-color-private-orange-800-solid:#e3b185;--g-color-private-orange-850-solid:#e9c19e;--g-color-private-orange-900-solid:#efd0b6;--g-color-private-orange-950-solid:#f4e0ce;--g-color-private-orange-1000-solid:#f7e8db;--g-color-private-red-50:#e849451a;--g-color-private-red-100:#e8494526;--g-color-private-red-150:#e8494533;--g-color-private-red-200:#e849454d;--g-color-private-red-250:#e8494566;--g-color-private-red-300:#e8494580;--g-color-private-red-350:#e8494599;--g-color-private-red-400:#e84945b3;--g-color-private-red-450:#e84945cc;--g-color-private-red-500:#e84945e6;--g-color-private-red-50-solid:#362729;--g-color-private-red-100-solid:#40292b;--g-color-private-red-150-solid:#4a2b2c;--g-color-private-red-200-solid:#5d2e2f;--g-color-private-red-250-solid:#713233;--g-color-private-red-300-solid:#853636;--g-color-private-red-350-solid:#993a39;--g-color-private-red-400-solid:#ac3d3c;--g-color-private-red-450-solid:#c0413f;--g-color-private-red-500-solid:#d44542;--g-color-private-red-550-solid:#e84945;--g-color-private-red-600-solid:#ea5b58;--g-color-private-red-650-solid:#ec6d6b;--g-color-private-red-700-solid:#ef7f7d;--g-color-private-red-750-solid:#f19290;--g-color-private-red-800-solid:#f3a4a2;--g-color-private-red-850-solid:#f6b6b5;--g-color-private-red-900-solid:#f8c8c7;--g-color-private-red-950-solid:#fadbda;--g-color-private-red-1000-solid:#fce4e3;--g-color-private-purple-50:#8f52cc1a;--g-color-private-purple-100:#8f52cc26;--g-color-private-purple-150:#8f52cc33;--g-color-private-purple-200:#8f52cc4d;--g-color-private-purple-250:#8f52cc66;--g-color-private-purple-300:#8f52cc80;--g-color-private-purple-350:#8f52cc99;--g-color-private-purple-400:#8f52ccb3;--g-color-private-purple-450:#8f52cccc;--g-color-private-purple-500:#8f52cce6;--g-color-private-purple-50-solid:#2d2837;--g-color-private-purple-100-solid:#322a3f;--g-color-private-purple-150-solid:#382c47;--g-color-private-purple-200-solid:#433158;--g-color-private-purple-250-solid:#4e3668;--g-color-private-purple-300-solid:#593b79;--g-color-private-purple-350-solid:#633f8a;--g-color-private-purple-400-solid:#6e449a;--g-color-private-purple-450-solid:#7949ab;--g-color-private-purple-500-solid:#844dbb;--g-color-private-purple-550-solid:#8f52cc;--g-color-private-purple-600-solid:#9a63d1;--g-color-private-purple-650-solid:#a575d6;--g-color-private-purple-700-solid:#b186db;--g-color-private-purple-750-solid:#bc97e0;--g-color-private-purple-800-solid:#c7a9e6;--g-color-private-purple-850-solid:#d2baeb;--g-color-private-purple-900-solid:#ddcbf0;--g-color-private-purple-950-solid:#e9dcf5;--g-color-private-purple-1000-solid:#eee5f7;--g-color-private-cool-grey-50:#60809c1a;--g-color-private-cool-grey-100:#60809c26;--g-color-private-cool-grey-150:#60809c33;--g-color-private-cool-grey-200:#60809c4d;--g-color-private-cool-grey-250:#60809c66;--g-color-private-cool-grey-300:#60809c80;--g-color-private-cool-grey-350:#60809c99;--g-color-private-cool-grey-400:#60809cb3;--g-color-private-cool-grey-450:#60809ccc;--g-color-private-cool-grey-500:#60809ce6;--g-color-private-cool-grey-50-solid:#282c32;--g-color-private-cool-grey-100-solid:#2b3138;--g-color-private-cool-grey-150-solid:#2e363e;--g-color-private-cool-grey-200-solid:#353f49;--g-color-private-cool-grey-250-solid:#3b4855;--g-color-private-cool-grey-300-solid:#415161;--g-color-private-cool-grey-350-solid:#475b6d;--g-color-private-cool-grey-400-solid:#4d6479;--g-color-private-cool-grey-450-solid:#546d84;--g-color-private-cool-grey-500-solid:#5a7790;--g-color-private-cool-grey-550-solid:#60809c;--g-color-private-cool-grey-600-solid:#708da6;--g-color-private-cool-grey-650-solid:#8099b0;--g-color-private-cool-grey-700-solid:#90a6ba;--g-color-private-cool-grey-750-solid:#a0b3c3;--g-color-private-cool-grey-800-solid:#b0bfcd;--g-color-private-cool-grey-850-solid:#bfccd7;--g-color-private-cool-grey-900-solid:#cfd9e1;--g-color-private-cool-grey-950-solid:#dfe6eb;--g-color-private-cool-grey-1000-solid:#e7ecf0}:root{--tenant-object-info-max-value-width:300px;--diagnostics-section-title-margin:20px;--diagnostics-section-margin:16px;--diagnostics-section-table-width:872px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/css/main.efd6a3a5.css b/ydb/core/viewer/monitoring/static/css/main.efd6a3a5.css new file mode 100644 index 000000000000..2a603cb6bdbd --- /dev/null +++ b/ydb/core/viewer/monitoring/static/css/main.efd6a3a5.css @@ -0,0 +1,9 @@ +@charset "UTF-8";@import url(https://fonts.googleapis.com/css2?family=Rubik&display=swap);.g-root{--g-font-family-sans:"Inter","Helvetica Neue","Helvetica","Arial",sans-serif;--g-font-family-monospace:"Menlo","Monaco","Consolas","Ubuntu Mono","Liberation Mono","DejaVu Sans Mono","Courier New","Courier",monospace;--g-text-body-font-family:var(--g-font-family-sans);--g-text-caption-font-family:var(--g-font-family-sans);--g-text-header-font-family:var(--g-font-family-sans);--g-text-subheader-font-family:var(--g-font-family-sans);--g-text-display-font-family:var(--g-font-family-sans);--g-text-code-font-family:var(--g-font-family-monospace);--g-text-body-font-weight:400;--g-text-caption-font-weight:400;--g-text-header-font-weight:600;--g-text-display-font-weight:600;--g-text-code-font-weight:400;--g-text-accent-font-weight:600;--g-text-body-1-font-size:13px;--g-text-body-1-line-height:18px;--g-text-body-2-font-size:15px;--g-text-body-2-line-height:20px;--g-text-body-3-font-size:17px;--g-text-body-3-line-height:24px;--g-text-body-short-font-size:13px;--g-text-body-short-line-height:16px;--g-text-caption-1-font-size:9px;--g-text-caption-1-line-height:12px;--g-text-caption-2-font-size:11px;--g-text-caption-2-line-height:16px;--g-text-header-1-font-size:20px;--g-text-header-1-line-height:24px;--g-text-header-2-font-size:24px;--g-text-header-2-line-height:28px;--g-text-subheader-1-font-size:13px;--g-text-subheader-1-line-height:18px;--g-text-subheader-2-font-size:15px;--g-text-subheader-2-line-height:20px;--g-text-subheader-3-font-size:17px;--g-text-subheader-3-line-height:24px;--g-text-display-1-font-size:28px;--g-text-display-1-line-height:36px;--g-text-display-2-font-size:32px;--g-text-display-2-line-height:40px;--g-text-display-3-font-size:40px;--g-text-display-3-line-height:48px;--g-text-display-4-font-size:48px;--g-text-display-4-line-height:52px;--g-text-code-1-font-size:12px;--g-text-code-1-line-height:18px;--g-text-code-2-font-size:14px;--g-text-code-2-line-height:20px;--g-text-code-3-font-size:16px;--g-text-code-3-line-height:24px;--g-text-code-inline-1-font-size:12px;--g-text-code-inline-1-line-height:14px;--g-text-code-inline-2-font-size:14px;--g-text-code-inline-2-line-height:16px;--g-text-code-inline-3-font-size:16px;--g-text-code-inline-3-line-height:20px;--g-spacing-base:4px;--g-spacing-0:calc(var(--g-spacing-base)*0);--g-spacing-half:calc(var(--g-spacing-base)*0.5);--g-spacing-1:var(--g-spacing-base);--g-spacing-2:calc(var(--g-spacing-base)*2);--g-spacing-3:calc(var(--g-spacing-base)*3);--g-spacing-4:calc(var(--g-spacing-base)*4);--g-spacing-5:calc(var(--g-spacing-base)*5);--g-spacing-6:calc(var(--g-spacing-base)*6);--g-spacing-7:calc(var(--g-spacing-base)*7);--g-spacing-8:calc(var(--g-spacing-base)*8);--g-spacing-9:calc(var(--g-spacing-base)*9);--g-spacing-10:calc(var(--g-spacing-base)*10);--g-scrollbar-width:12px;--g-border-radius-xs:3px;--g-border-radius-s:5px;--g-border-radius-m:6px;--g-border-radius-l:8px;--g-border-radius-xl:10px;--g-focus-border-radius:2px;background:var(--g-color-base-background);color:var(--g-color-text-primary);font-family:var(--g-font-family-sans);font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-root[dir=ltr],body.g-root{--g-flow-direction:1;--g-flow-is-ltr:1;--g-flow-is-rtl:0}.g-root[dir=rtl]{--g-flow-direction:-1;--g-flow-is-ltr:0;--g-flow-is-rtl:1}.g-root_theme_light{--g-color-private-blue-50:#3697f11a;--g-color-private-blue-100:#3697f126;--g-color-private-blue-150:#3697f133;--g-color-private-blue-200:#3697f14d;--g-color-private-blue-250:#3697f166;--g-color-private-blue-300:#3697f180;--g-color-private-blue-350:#3697f199;--g-color-private-blue-400:#3697f1b3;--g-color-private-blue-450:#3697f1cc;--g-color-private-blue-500:#3697f1e6;--g-color-private-blue-50-solid:#ebf5fe;--g-color-private-blue-100-solid:#e1effd;--g-color-private-blue-150-solid:#d7eafc;--g-color-private-blue-200-solid:#c3e0fb;--g-color-private-blue-250-solid:#afd5f9;--g-color-private-blue-300-solid:#9bcbf8;--g-color-private-blue-350-solid:#86c1f7;--g-color-private-blue-400-solid:#72b6f5;--g-color-private-blue-450-solid:#5eacf4;--g-color-private-blue-500-solid:#4aa1f2;--g-color-private-blue-550-solid:#3697f1;--g-color-private-blue-600-solid:#348bdc;--g-color-private-blue-650-solid:#327fc8;--g-color-private-blue-700-solid:#3072b3;--g-color-private-blue-750-solid:#2e669e;--g-color-private-blue-800-solid:#2c5a8a;--g-color-private-blue-850-solid:#2a4e75;--g-color-private-blue-900-solid:#284260;--g-color-private-blue-950-solid:#26354b;--g-color-private-blue-1000-solid:#252f41;--g-color-private-green-50:#32ba761a;--g-color-private-green-100:#32ba7626;--g-color-private-green-150:#32ba7633;--g-color-private-green-200:#32ba764d;--g-color-private-green-250:#32ba7666;--g-color-private-green-300:#32ba7680;--g-color-private-green-350:#32ba7699;--g-color-private-green-400:#32ba76b3;--g-color-private-green-450:#32ba76cc;--g-color-private-green-500:#32ba76e6;--g-color-private-green-50-solid:#ebf8f1;--g-color-private-green-100-solid:#e0f5ea;--g-color-private-green-150-solid:#d6f1e4;--g-color-private-green-200-solid:#c2ead6;--g-color-private-green-250-solid:#ade3c8;--g-color-private-green-300-solid:#9db;--g-color-private-green-350-solid:#84d6ad;--g-color-private-green-400-solid:#70cf9f;--g-color-private-green-450-solid:#5bc891;--g-color-private-green-500-solid:#47c184;--g-color-private-green-550-solid:#32ba76;--g-color-private-green-600-solid:#30aa6e;--g-color-private-green-650-solid:#2f9b65;--g-color-private-green-700-solid:#2d8b5d;--g-color-private-green-750-solid:#2c7b54;--g-color-private-green-800-solid:#2a6c4c;--g-color-private-green-850-solid:#285c44;--g-color-private-green-900-solid:#274c3b;--g-color-private-green-950-solid:#253c33;--g-color-private-green-1000-solid:#24352f;--g-color-private-yellow-50:#ffbe5c1a;--g-color-private-yellow-100:#ffbe5c26;--g-color-private-yellow-150:#ffbe5c33;--g-color-private-yellow-200:#ffbe5c4d;--g-color-private-yellow-250:#ffbe5c66;--g-color-private-yellow-300:#ffbe5c80;--g-color-private-yellow-350:#ffbe5c99;--g-color-private-yellow-400:#ffbe5cb3;--g-color-private-yellow-450:#ffbe5ccc;--g-color-private-yellow-500:#ffbe5ce6;--g-color-private-yellow-50-solid:#fff9ef;--g-color-private-yellow-100-solid:#fff5e7;--g-color-private-yellow-150-solid:#fff2de;--g-color-private-yellow-200-solid:#ffecce;--g-color-private-yellow-250-solid:#ffe5be;--g-color-private-yellow-300-solid:#ffdfae;--g-color-private-yellow-350-solid:#ffd89d;--g-color-private-yellow-400-solid:#ffd28d;--g-color-private-yellow-450-solid:#ffcb7d;--g-color-private-yellow-500-solid:#ffc56c;--g-color-private-yellow-550-solid:#ffbe5c;--g-color-private-yellow-600-solid:#e9ae56;--g-color-private-yellow-650-solid:#d39e50;--g-color-private-yellow-700-solid:#bd8e4b;--g-color-private-yellow-750-solid:#a77e45;--g-color-private-yellow-800-solid:#916e3f;--g-color-private-yellow-850-solid:#7a5d39;--g-color-private-yellow-900-solid:#644d33;--g-color-private-yellow-950-solid:#4e3d2e;--g-color-private-yellow-1000-solid:#43352b;--g-color-private-orange-400-solid:#ffa04d;--g-color-private-orange-500-solid:#ff8519;--g-color-private-orange-600-solid:#e96e03;--g-color-private-orange-650-solid:#d36507;--g-color-private-orange-700-solid:#bd5c0a;--g-color-private-orange-750-solid:#a7530e;--g-color-private-orange-800-solid:#914a11;--g-color-private-orange-850-solid:#7a4114;--g-color-private-orange-900-solid:#643818;--g-color-private-orange-950-solid:#4e2f1b;--g-color-private-orange-1000-solid:#432b1d;--g-color-private-red-50:#ff003d1a;--g-color-private-red-100:#ff003d26;--g-color-private-red-150:#ff003d33;--g-color-private-red-200:#ff003d4d;--g-color-private-red-250:#ff003d66;--g-color-private-red-300:#ff003d80;--g-color-private-red-350:#ff003d99;--g-color-private-red-400:#ff003db3;--g-color-private-red-450:#ff003dcc;--g-color-private-red-500:#ff003de6;--g-color-private-red-50-solid:#ffe6ec;--g-color-private-red-100-solid:#ffd9e2;--g-color-private-red-150-solid:#ffccd8;--g-color-private-red-200-solid:#ffb3c5;--g-color-private-red-250-solid:#ff99b1;--g-color-private-red-300-solid:#ff809e;--g-color-private-red-350-solid:#ff668b;--g-color-private-red-400-solid:#ff4d77;--g-color-private-red-450-solid:#ff3364;--g-color-private-red-500-solid:#ff1950;--g-color-private-red-550-solid:#ff003d;--g-color-private-red-600-solid:#e9033a;--g-color-private-red-650-solid:#d30638;--g-color-private-red-700-solid:#bd0935;--g-color-private-red-750-solid:#a70c32;--g-color-private-red-800-solid:#910f30;--g-color-private-red-850-solid:#7a112d;--g-color-private-red-900-solid:#64142a;--g-color-private-red-950-solid:#4e1727;--g-color-private-red-1000-solid:#431926;--g-color-private-purple-600-solid:#844dbb;--g-color-private-purple-650-solid:#7947aa;--g-color-private-purple-700-solid:#6e4299;--g-color-private-purple-750-solid:#633d88;--g-color-private-purple-800-solid:#593877;--g-color-private-purple-850-solid:#4e3266;--g-color-private-purple-900-solid:#432d55;--g-color-private-purple-950-solid:#382844;--g-color-private-purple-1000-solid:#32253c;--g-color-private-cool-grey-300-solid:#b5c2cc;--g-color-private-cool-grey-600-solid:#647a8d;--g-color-private-cool-grey-650-solid:#5c6f81;--g-color-private-cool-grey-700-solid:#556575;--g-color-private-cool-grey-750-solid:#4e5b69;--g-color-private-cool-grey-800-solid:#47515e;--g-color-private-cool-grey-850-solid:#3f4652;--g-color-private-cool-grey-900-solid:#383c46;--g-color-private-cool-grey-950-solid:#31323a;--g-color-private-cool-grey-1000-solid:#2d2c34;--g-color-text-primary:var(--g-color-text-dark-primary);--g-color-text-complementary:var(--g-color-text-dark-complementary);--g-color-text-secondary:var(--g-color-text-dark-secondary);--g-color-text-hint:var(--g-color-text-dark-hint);--g-color-text-info:var(--g-color-private-blue-600-solid);--g-color-text-positive:var(--g-color-private-green-600-solid);--g-color-text-warning:var(--g-color-private-yellow-700-solid);--g-color-text-danger:var(--g-color-private-red-600-solid);--g-color-text-utility:var(--g-color-private-purple-600-solid);--g-color-text-misc:var(--g-color-private-cool-grey-600-solid);--g-color-text-info-heavy:var(--g-color-private-blue-700-solid);--g-color-text-positive-heavy:var(--g-color-private-green-700-solid);--g-color-text-warning-heavy:var(--g-color-private-orange-700-solid);--g-color-text-danger-heavy:var(--g-color-private-red-700-solid);--g-color-text-utility-heavy:var(--g-color-private-purple-700-solid);--g-color-text-misc-heavy:var(--g-color-private-cool-grey-700-solid);--g-color-text-brand:var(--g-color-private-yellow-700-solid);--g-color-text-brand-heavy:var(--g-color-private-orange-700-solid);--g-color-text-brand-contrast:var(--g-color-text-dark-primary);--g-color-text-link:var(--g-color-private-yellow-650-solid);--g-color-text-link-hover:var(--g-color-private-orange-650-solid);--g-color-text-link-visited:var(--g-color-private-purple-550-solid);--g-color-text-link-visited-hover:var(--g-color-private-purple-800-solid);--g-color-text-dark-primary:var(--g-color-private-black-850);--g-color-text-dark-complementary:var(--g-color-private-black-700);--g-color-text-dark-secondary:var(--g-color-private-black-500);--g-color-text-dark-hint:var(--g-color-private-black-300);--g-color-text-light-primary:var(--g-color-private-white-1000-solid);--g-color-text-light-complementary:var(--g-color-private-white-850);--g-color-text-light-secondary:var(--g-color-private-white-700);--g-color-text-light-hint:var(--g-color-private-white-500);--g-color-text-inverted-primary:var(--g-color-text-light-primary);--g-color-text-inverted-complementary:var(--g-color-text-light-complementary);--g-color-text-inverted-secondary:var(--g-color-text-light-secondary);--g-color-text-inverted-hint:var(--g-color-text-light-hint);--g-color-base-background:var(--g-color-private-white-1000-solid);--g-color-base-generic:var(--g-color-private-black-50);--g-color-base-generic-hover:var(--g-color-private-black-150);--g-color-base-generic-medium:var(--g-color-private-black-150);--g-color-base-generic-medium-hover:var(--g-color-private-black-250);--g-color-base-generic-accent:var(--g-color-private-black-150);--g-color-base-generic-accent-disabled:var(--g-color-private-black-70);--g-color-base-generic-ultralight:var(--g-color-private-black-20-solid);--g-color-base-simple-hover:var(--g-color-private-black-50);--g-color-base-simple-hover-solid:var(--g-color-private-black-50-solid);--g-color-base-brand:var(--g-color-private-yellow-550-solid);--g-color-base-brand-hover:var(--g-color-private-yellow-600-solid);--g-color-base-selection:var(--g-color-private-yellow-200);--g-color-base-selection-hover:var(--g-color-private-yellow-300);--g-color-base-info-light:var(--g-color-private-blue-100);--g-color-base-info-light-hover:var(--g-color-private-blue-200);--g-color-base-info-medium:var(--g-color-private-blue-200);--g-color-base-info-medium-hover:var(--g-color-private-blue-300);--g-color-base-info-heavy:var(--g-color-private-blue-600-solid);--g-color-base-info-heavy-hover:var(--g-color-private-blue-700-solid);--g-color-base-positive-light:var(--g-color-private-green-100);--g-color-base-positive-light-hover:var(--g-color-private-green-200);--g-color-base-positive-medium:var(--g-color-private-green-200);--g-color-base-positive-medium-hover:var(--g-color-private-green-300);--g-color-base-positive-heavy:var(--g-color-private-green-600-solid);--g-color-base-positive-heavy-hover:var(--g-color-private-green-700-solid);--g-color-base-warning-light:var(--g-color-private-yellow-200);--g-color-base-warning-light-hover:var(--g-color-private-yellow-300);--g-color-base-warning-medium:var(--g-color-private-yellow-400);--g-color-base-warning-medium-hover:var(--g-color-private-yellow-500);--g-color-base-warning-heavy:var(--g-color-private-yellow-550-solid);--g-color-base-warning-heavy-hover:var(--g-color-private-yellow-650-solid);--g-color-base-danger-light:var(--g-color-private-red-100);--g-color-base-danger-light-hover:var(--g-color-private-red-200);--g-color-base-danger-medium:var(--g-color-private-red-200);--g-color-base-danger-medium-hover:var(--g-color-private-red-300);--g-color-base-danger-heavy:var(--g-color-private-red-600-solid);--g-color-base-danger-heavy-hover:var(--g-color-private-red-700-solid);--g-color-base-utility-light:var(--g-color-private-purple-100);--g-color-base-utility-light-hover:var(--g-color-private-purple-200);--g-color-base-utility-medium:var(--g-color-private-purple-200);--g-color-base-utility-medium-hover:var(--g-color-private-purple-300);--g-color-base-utility-heavy:var(--g-color-private-purple-600-solid);--g-color-base-utility-heavy-hover:var(--g-color-private-purple-700-solid);--g-color-base-neutral-light:var(--g-color-private-black-50);--g-color-base-neutral-light-hover:var(--g-color-private-black-100);--g-color-base-neutral-medium:var(--g-color-private-black-200);--g-color-base-neutral-medium-hover:var(--g-color-private-black-250);--g-color-base-neutral-heavy:var(--g-color-private-black-450);--g-color-base-neutral-heavy-hover:var(--g-color-private-black-550);--g-color-base-misc-light:var(--g-color-private-cool-grey-100);--g-color-base-misc-light-hover:var(--g-color-private-cool-grey-200);--g-color-base-misc-medium:var(--g-color-private-cool-grey-200);--g-color-base-misc-medium-hover:var(--g-color-private-cool-grey-300);--g-color-base-misc-heavy:var(--g-color-private-cool-grey-600-solid);--g-color-base-misc-heavy-hover:var(--g-color-private-cool-grey-700-solid);--g-color-base-light:var(--g-color-private-white-1000-solid);--g-color-base-light-hover:var(--g-color-private-white-850);--g-color-base-light-simple-hover:var(--g-color-private-white-150);--g-color-base-light-disabled:var(--g-color-private-white-150);--g-color-base-light-accent-disabled:var(--g-color-private-white-300);--g-color-base-float:var(--g-color-private-white-1000-solid);--g-color-base-float-hover:var(--g-color-private-black-50-solid);--g-color-base-float-medium:var(--g-color-private-black-550-solid);--g-color-base-float-heavy:var(--g-color-private-black-700-solid);--g-color-base-float-accent:var(--g-color-private-white-1000-solid);--g-color-base-float-accent-hover:var(--g-color-private-white-850);--g-color-base-float-announcement:var(--g-color-private-cool-grey-50-solid);--g-color-base-modal:var(--g-color-base-background);--g-color-line-generic:var(--g-color-private-black-100);--g-color-line-generic-hover:var(--g-color-private-black-150);--g-color-line-generic-active:var(--g-color-private-black-300);--g-color-line-generic-accent:var(--g-color-private-black-150);--g-color-line-generic-accent-hover:var(--g-color-private-black-300);--g-color-line-generic-solid:var(--g-color-private-black-100-solid);--g-color-line-brand:var(--g-color-private-yellow-600-solid);--g-color-line-focus:var(--g-color-private-cool-grey-450);--g-color-line-light:var(--g-color-private-white-500);--g-color-line-info:var(--g-color-private-blue-450);--g-color-line-positive:var(--g-color-private-green-450);--g-color-line-warning:var(--g-color-private-yellow-600-solid);--g-color-line-danger:var(--g-color-private-red-450);--g-color-line-utility:var(--g-color-private-purple-450);--g-color-line-misc:var(--g-color-private-cool-grey-450);--g-color-sfx-veil:var(--g-color-private-black-250);--g-color-sfx-shadow:var(--g-color-private-black-150);--g-color-sfx-shadow-heavy:var(--g-color-private-black-500);--g-color-sfx-shadow-light:var(--g-color-private-black-50);--g-color-sfx-fade:var(--g-color-private-white-300);--g-color-scroll-track:var(--g-color-base-background);--g-color-scroll-handle:var(--g-color-private-black-100);--g-color-scroll-handle-hover:var(--g-color-private-black-150);--g-color-scroll-corner:var(--g-color-private-black-100);--g-color-infographics-axis:var(--g-color-private-black-150-solid);--g-color-infographics-tooltip-bg:var(--g-color-private-white-950)}.g-root_theme_dark{--g-color-private-white-20-solid:#262226;--g-color-private-white-50-solid:#2d282d;--g-color-private-white-70-solid:#312d31;--g-color-private-white-100-solid:#383438;--g-color-private-white-150-solid:#433f43;--g-color-private-white-200-solid:#4e4a4e;--g-color-private-white-250-solid:#595559;--g-color-private-white-300-solid:#646164;--g-color-private-white-350-solid:#6f6c6f;--g-color-private-white-400-solid:#7a777a;--g-color-private-white-450-solid:#858385;--g-color-private-white-500-solid:#908e90;--g-color-private-white-550-solid:#9c999c;--g-color-private-white-600-solid:#a7a5a7;--g-color-private-white-650-solid:#b2b0b2;--g-color-private-white-700-solid:#bdbbbd;--g-color-private-white-750-solid:#c8c6c8;--g-color-private-white-800-solid:#d3d2d3;--g-color-private-white-850-solid:#deddde;--g-color-private-white-900-solid:#e9e8e9;--g-color-private-white-950-solid:#f4f4f4;--g-color-private-blue-50:#3697f11a;--g-color-private-blue-100:#3697f126;--g-color-private-blue-150:#3697f133;--g-color-private-blue-200:#3697f14d;--g-color-private-blue-250:#3697f166;--g-color-private-blue-300:#3697f180;--g-color-private-blue-350:#3697f199;--g-color-private-blue-400:#3697f1b3;--g-color-private-blue-450:#3697f1cc;--g-color-private-blue-500:#3697f1e6;--g-color-private-blue-50-solid:#242937;--g-color-private-blue-100-solid:#252f41;--g-color-private-blue-150-solid:#26354b;--g-color-private-blue-200-solid:#284260;--g-color-private-blue-250-solid:#2a4e75;--g-color-private-blue-300-solid:#2c5a8a;--g-color-private-blue-350-solid:#2e669e;--g-color-private-blue-400-solid:#3072b3;--g-color-private-blue-450-solid:#327fc8;--g-color-private-blue-500-solid:#348bdc;--g-color-private-blue-550-solid:#3697f1;--g-color-private-blue-600-solid:#4aa1f2;--g-color-private-blue-650-solid:#5eacf4;--g-color-private-blue-700-solid:#72b6f5;--g-color-private-blue-750-solid:#86c1f7;--g-color-private-blue-800-solid:#9bcbf8;--g-color-private-blue-850-solid:#afd5f9;--g-color-private-blue-900-solid:#c3e0fb;--g-color-private-blue-950-solid:#d7eafc;--g-color-private-blue-1000-solid:#e1effd;--g-color-private-green-50:#4db09b1a;--g-color-private-green-100:#4db09b26;--g-color-private-green-150:#4db09b33;--g-color-private-green-200:#4db09b4d;--g-color-private-green-250:#4db09b66;--g-color-private-green-300:#4db09b80;--g-color-private-green-350:#4db09b99;--g-color-private-green-400:#4db09bb3;--g-color-private-green-450:#4db09bcc;--g-color-private-green-500:#4db09be6;--g-color-private-green-50-solid:#262c2e;--g-color-private-green-100-solid:#283334;--g-color-private-green-150-solid:#2b3a3a;--g-color-private-green-200-solid:#2f4946;--g-color-private-green-250-solid:#335852;--g-color-private-green-300-solid:#38675f;--g-color-private-green-350-solid:#3c756b;--g-color-private-green-400-solid:#408477;--g-color-private-green-450-solid:#449383;--g-color-private-green-500-solid:#49a18f;--g-color-private-green-550-solid:#4db09b;--g-color-private-green-600-solid:#5fb8a5;--g-color-private-green-650-solid:#71c0af;--g-color-private-green-700-solid:#82c8b9;--g-color-private-green-750-solid:#94d0c3;--g-color-private-green-800-solid:#a6d8cd;--g-color-private-green-850-solid:#b8dfd7;--g-color-private-green-900-solid:#cae7e1;--g-color-private-green-950-solid:#dbefeb;--g-color-private-green-1000-solid:#e4f3f0;--g-color-private-yellow-50:#ffbe5c1a;--g-color-private-yellow-100:#ffbe5c26;--g-color-private-yellow-150:#ffbe5c33;--g-color-private-yellow-200:#ffbe5c4d;--g-color-private-yellow-250:#ffbe5c66;--g-color-private-yellow-300:#ffbe5c80;--g-color-private-yellow-350:#ffbe5c99;--g-color-private-yellow-400:#ffbe5cb3;--g-color-private-yellow-450:#ffbe5ccc;--g-color-private-yellow-500:#ffbe5ce6;--g-color-private-yellow-50-solid:#382d28;--g-color-private-yellow-100-solid:#43352b;--g-color-private-yellow-150-solid:#4e3d2e;--g-color-private-yellow-200-solid:#644d33;--g-color-private-yellow-250-solid:#7a5d39;--g-color-private-yellow-300-solid:#916e3f;--g-color-private-yellow-350-solid:#a77e45;--g-color-private-yellow-400-solid:#bd8e4b;--g-color-private-yellow-450-solid:#d39e50;--g-color-private-yellow-500-solid:#e9ae56;--g-color-private-yellow-550-solid:#ffbe5c;--g-color-private-yellow-600-solid:#ffc56c;--g-color-private-yellow-650-solid:#ffcb7d;--g-color-private-yellow-700-solid:#ffd28d;--g-color-private-yellow-750-solid:#ffd89d;--g-color-private-yellow-800-solid:#ffdfae;--g-color-private-yellow-850-solid:#ffe5be;--g-color-private-yellow-900-solid:#ffecce;--g-color-private-yellow-950-solid:#fff2de;--g-color-private-yellow-1000-solid:#fff5e7;--g-color-private-orange-50-solid:#332420;--g-color-private-orange-100-solid:#3b281f;--g-color-private-orange-150-solid:#432b1e;--g-color-private-orange-200-solid:#54321b;--g-color-private-orange-250-solid:#643919;--g-color-private-orange-300-solid:#754017;--g-color-private-orange-350-solid:#864715;--g-color-private-orange-400-solid:#964e13;--g-color-private-orange-450-solid:#a75510;--g-color-private-orange-500-solid:#b75c0e;--g-color-private-orange-700-solid:#d99255;--g-color-private-orange-800-solid:#e4b186;--g-color-private-red-50:#e5325d1a;--g-color-private-red-100:#e5325d26;--g-color-private-red-150:#e5325d33;--g-color-private-red-200:#e5325d4d;--g-color-private-red-250:#e5325d66;--g-color-private-red-300:#e5325d80;--g-color-private-red-350:#e5325d99;--g-color-private-red-400:#e5325db3;--g-color-private-red-450:#e5325dcc;--g-color-private-red-500:#e5325de6;--g-color-private-red-50-solid:#361f28;--g-color-private-red-100-solid:#3f202b;--g-color-private-red-150-solid:#49212e;--g-color-private-red-200-solid:#5d2334;--g-color-private-red-250-solid:#70253a;--g-color-private-red-300-solid:#842840;--g-color-private-red-350-solid:#972a45;--g-color-private-red-400-solid:#ab2c4b;--g-color-private-red-450-solid:#be2e51;--g-color-private-red-500-solid:#d23057;--g-color-private-red-550-solid:#e5325d;--g-color-private-red-600-solid:#e8476d;--g-color-private-red-650-solid:#ea5b7d;--g-color-private-red-700-solid:#ed708e;--g-color-private-red-750-solid:#ef849e;--g-color-private-red-800-solid:#f299ae;--g-color-private-red-850-solid:#f5adbe;--g-color-private-red-900-solid:#f7c2ce;--g-color-private-red-950-solid:#fad6df;--g-color-private-red-1000-solid:#fbe0e7;--g-color-private-purple-50-solid:#2d2233;--g-color-private-purple-100-solid:#32253c;--g-color-private-purple-150-solid:#382844;--g-color-private-purple-200-solid:#432d55;--g-color-private-purple-250-solid:#4e3266;--g-color-private-purple-300-solid:#593877;--g-color-private-purple-350-solid:#633d88;--g-color-private-purple-400-solid:#6e4299;--g-color-private-purple-450-solid:#7947aa;--g-color-private-purple-500-solid:#844dbb;--g-color-private-cool-grey-50-solid:#28272e;--g-color-private-cool-grey-100-solid:#2b2c34;--g-color-private-cool-grey-150-solid:#2e313a;--g-color-private-cool-grey-200-solid:#353b47;--g-color-private-cool-grey-250-solid:#3b4553;--g-color-private-cool-grey-300-solid:#414f5f;--g-color-private-cool-grey-350-solid:#47586b;--g-color-private-cool-grey-400-solid:#4d6277;--g-color-private-cool-grey-450-solid:#546c84;--g-color-private-cool-grey-500-solid:#5a7690;--g-color-private-cool-grey-750-solid:#a0b3c4;--g-color-private-cool-grey-800-solid:#b0c0ce;--g-color-text-primary:var(--g-color-text-light-primary);--g-color-text-complementary:var(--g-color-text-light-complementary);--g-color-text-secondary:var(--g-color-text-light-secondary);--g-color-text-hint:var(--g-color-text-light-hint);--g-color-text-info:var(--g-color-private-blue-550-solid);--g-color-text-positive:var(--g-color-private-green-550-solid);--g-color-text-warning:var(--g-color-private-yellow-550-solid);--g-color-text-danger:var(--g-color-private-red-550-solid);--g-color-text-utility:var(--g-color-private-purple-600-solid);--g-color-text-misc:var(--g-color-private-cool-grey-600-solid);--g-color-text-info-heavy:var(--g-color-private-blue-600-solid);--g-color-text-positive-heavy:var(--g-color-private-green-600-solid);--g-color-text-warning-heavy:var(--g-color-private-yellow-600-solid);--g-color-text-danger-heavy:var(--g-color-private-red-600-solid);--g-color-text-utility-heavy:var(--g-color-private-purple-650-solid);--g-color-text-misc-heavy:var(--g-color-private-cool-grey-650-solid);--g-color-text-brand:var(--g-color-private-yellow-600-solid);--g-color-text-brand-heavy:var(--g-color-private-yellow-700-solid);--g-color-text-brand-contrast:var(--g-color-text-dark-primary);--g-color-text-link:var(--g-color-private-yellow-550-solid);--g-color-text-link-hover:var(--g-color-private-orange-550-solid);--g-color-text-link-visited:var(--g-color-private-purple-600-solid);--g-color-text-link-visited-hover:var(--g-color-private-purple-750-solid);--g-color-text-dark-primary:var(--g-color-private-black-900);--g-color-text-dark-complementary:var(--g-color-private-black-700);--g-color-text-dark-secondary:var(--g-color-private-black-500);--g-color-text-dark-hint:var(--g-color-private-black-300);--g-color-text-light-primary:var(--g-color-private-white-850);--g-color-text-light-complementary:var(--g-color-private-white-700);--g-color-text-light-secondary:var(--g-color-private-white-500);--g-color-text-light-hint:var(--g-color-private-white-300);--g-color-text-inverted-primary:var(--g-color-text-dark-primary);--g-color-text-inverted-complementary:var(--g-color-text-dark-complementary);--g-color-text-inverted-secondary:var(--g-color-text-dark-secondary);--g-color-text-inverted-hint:var(--g-color-text-dark-hint);--g-color-base-background:#221d22;--g-color-base-generic:var(--g-color-private-white-100);--g-color-base-generic-hover:var(--g-color-private-white-150);--g-color-base-generic-medium:var(--g-color-private-white-250);--g-color-base-generic-medium-hover:var(--g-color-private-white-300);--g-color-base-generic-accent:var(--g-color-private-white-150);--g-color-base-generic-accent-disabled:var(--g-color-private-white-70);--g-color-base-generic-ultralight:var(--g-color-private-white-20-solid);--g-color-base-simple-hover:var(--g-color-private-white-100);--g-color-base-simple-hover-solid:var(--g-color-private-white-100-solid);--g-color-base-brand:var(--g-color-private-yellow-550-solid);--g-color-base-brand-hover:var(--g-color-private-yellow-650-solid);--g-color-base-selection:var(--g-color-private-yellow-150);--g-color-base-selection-hover:var(--g-color-private-yellow-200);--g-color-base-info-light:var(--g-color-private-blue-150);--g-color-base-info-light-hover:var(--g-color-private-blue-200);--g-color-base-info-medium:var(--g-color-private-blue-300);--g-color-base-info-medium-hover:var(--g-color-private-blue-400);--g-color-base-info-heavy:var(--g-color-private-blue-600-solid);--g-color-base-info-heavy-hover:var(--g-color-private-blue-700-solid);--g-color-base-positive-light:var(--g-color-private-green-150);--g-color-base-positive-light-hover:var(--g-color-private-green-200);--g-color-base-positive-medium:var(--g-color-private-green-300);--g-color-base-positive-medium-hover:var(--g-color-private-green-400);--g-color-base-positive-heavy:var(--g-color-private-green-600-solid);--g-color-base-positive-heavy-hover:var(--g-color-private-green-700-solid);--g-color-base-warning-light:var(--g-color-private-yellow-150);--g-color-base-warning-light-hover:var(--g-color-private-yellow-200);--g-color-base-warning-medium:var(--g-color-private-yellow-300);--g-color-base-warning-medium-hover:var(--g-color-private-yellow-400);--g-color-base-warning-heavy:var(--g-color-private-yellow-600-solid);--g-color-base-warning-heavy-hover:var(--g-color-private-yellow-700-solid);--g-color-base-danger-light:var(--g-color-private-red-150);--g-color-base-danger-light-hover:var(--g-color-private-red-200);--g-color-base-danger-medium:var(--g-color-private-red-300);--g-color-base-danger-medium-hover:var(--g-color-private-red-400);--g-color-base-danger-heavy:var(--g-color-private-red-600-solid);--g-color-base-danger-heavy-hover:var(--g-color-private-red-700-solid);--g-color-base-utility-light:var(--g-color-private-purple-150);--g-color-base-utility-light-hover:var(--g-color-private-purple-250);--g-color-base-utility-medium:var(--g-color-private-purple-300);--g-color-base-utility-medium-hover:var(--g-color-private-purple-400);--g-color-base-utility-heavy:var(--g-color-private-purple-600-solid);--g-color-base-utility-heavy-hover:var(--g-color-private-purple-700-solid);--g-color-base-neutral-light:var(--g-color-private-white-100);--g-color-base-neutral-light-hover:var(--g-color-private-white-150);--g-color-base-neutral-medium:var(--g-color-private-white-250);--g-color-base-neutral-medium-hover:var(--g-color-private-white-350);--g-color-base-neutral-heavy:var(--g-color-private-white-550);--g-color-base-neutral-heavy-hover:var(--g-color-private-white-650);--g-color-base-misc-light:var(--g-color-private-cool-grey-150);--g-color-base-misc-light-hover:var(--g-color-private-cool-grey-200);--g-color-base-misc-medium:var(--g-color-private-cool-grey-300);--g-color-base-misc-medium-hover:var(--g-color-private-cool-grey-400);--g-color-base-misc-heavy:var(--g-color-private-cool-grey-600-solid);--g-color-base-misc-heavy-hover:var(--g-color-private-cool-grey-700-solid);--g-color-base-light:var(--g-color-private-white-850);--g-color-base-light-hover:var(--g-color-private-white-700);--g-color-base-light-simple-hover:var(--g-color-private-white-150);--g-color-base-light-disabled:var(--g-color-private-white-150);--g-color-base-light-accent-disabled:var(--g-color-private-white-300);--g-color-base-float:var(--g-color-private-white-100-solid);--g-color-base-float-hover:var(--g-color-private-white-150-solid);--g-color-base-float-medium:var(--g-color-private-white-150-solid);--g-color-base-float-heavy:var(--g-color-private-white-250-solid);--g-color-base-float-accent:var(--g-color-private-white-150-solid);--g-color-base-float-accent-hover:var(--g-color-private-white-200-solid);--g-color-base-float-announcement:var(--g-color-private-white-150-solid);--g-color-base-modal:var(--g-color-base-background);--g-color-line-generic:var(--g-color-private-white-150);--g-color-line-generic-hover:var(--g-color-private-white-250);--g-color-line-generic-active:var(--g-color-private-white-300);--g-color-line-generic-accent:var(--g-color-private-white-150);--g-color-line-generic-accent-hover:var(--g-color-private-white-300);--g-color-line-generic-solid:var(--g-color-private-white-150-solid);--g-color-line-brand:var(--g-color-private-yellow-600-solid);--g-color-line-focus:var(--g-color-private-cool-grey-450);--g-color-line-light:var(--g-color-private-white-500);--g-color-line-info:var(--g-color-private-blue-450);--g-color-line-positive:var(--g-color-private-green-450);--g-color-line-warning:var(--g-color-private-yellow-450);--g-color-line-danger:var(--g-color-private-red-450);--g-color-line-utility:var(--g-color-private-purple-450);--g-color-line-misc:var(--g-color-private-cool-grey-450);--g-color-sfx-veil:var(--g-color-private-black-600);--g-color-sfx-shadow:var(--g-color-private-black-200);--g-color-sfx-shadow-heavy:var(--g-color-private-black-500);--g-color-sfx-shadow-light:var(--g-color-private-black-200);--g-color-sfx-fade:var(--g-color-private-white-250);--g-color-scroll-track:var(--g-color-base-background);--g-color-scroll-handle:var(--g-color-private-white-150);--g-color-scroll-handle-hover:var(--g-color-private-white-250);--g-color-scroll-corner:var(--g-color-private-white-150);--g-color-infographics-axis:var(--g-color-private-white-150-solid);--g-color-infographics-tooltip-bg:var(--g-color-private-white-opaque-150)}.g-root_theme_light-hc{--g-color-private-blue-50:#3697f11a;--g-color-private-blue-100:#3697f126;--g-color-private-blue-150:#3697f133;--g-color-private-blue-200:#3697f14d;--g-color-private-blue-250:#3697f166;--g-color-private-blue-300:#3697f180;--g-color-private-blue-350:#3697f199;--g-color-private-blue-400:#3697f1b3;--g-color-private-blue-450:#3697f1cc;--g-color-private-blue-500:#3697f1e6;--g-color-private-blue-50-solid:#ebf5fe;--g-color-private-blue-100-solid:#e1effd;--g-color-private-blue-150-solid:#d7eafc;--g-color-private-blue-200-solid:#c3e0fb;--g-color-private-blue-250-solid:#afd5f9;--g-color-private-blue-300-solid:#9bcbf8;--g-color-private-blue-350-solid:#86c1f7;--g-color-private-blue-400-solid:#72b6f5;--g-color-private-blue-450-solid:#5eacf4;--g-color-private-blue-500-solid:#4aa1f2;--g-color-private-blue-550-solid:#3697f1;--g-color-private-blue-600-solid:#328adb;--g-color-private-blue-650-solid:#2f7cc4;--g-color-private-blue-700-solid:#2b6fae;--g-color-private-blue-750-solid:#286198;--g-color-private-blue-800-solid:#245482;--g-color-private-blue-850-solid:#20476b;--g-color-private-blue-900-solid:#1d3955;--g-color-private-blue-950-solid:#192c3f;--g-color-private-blue-1000-solid:#172533;--g-color-private-green-50:#32ba761a;--g-color-private-green-100:#32ba7626;--g-color-private-green-150:#32ba7633;--g-color-private-green-200:#32ba764d;--g-color-private-green-250:#32ba7666;--g-color-private-green-300:#32ba7680;--g-color-private-green-350:#32ba7699;--g-color-private-green-400:#32ba76b3;--g-color-private-green-450:#32ba76cc;--g-color-private-green-500:#32ba76e6;--g-color-private-green-50-solid:#ebf8f1;--g-color-private-green-100-solid:#e0f5ea;--g-color-private-green-150-solid:#d6f1e4;--g-color-private-green-200-solid:#c2ead6;--g-color-private-green-250-solid:#ade3c8;--g-color-private-green-300-solid:#9db;--g-color-private-green-350-solid:#84d6ad;--g-color-private-green-400-solid:#70cf9f;--g-color-private-green-450-solid:#5bc891;--g-color-private-green-500-solid:#47c184;--g-color-private-green-550-solid:#32ba76;--g-color-private-green-600-solid:#2fa96c;--g-color-private-green-650-solid:#2c9862;--g-color-private-green-700-solid:#288758;--g-color-private-green-750-solid:#25764e;--g-color-private-green-800-solid:#264;--g-color-private-green-850-solid:#1f553a;--g-color-private-green-900-solid:#1c4430;--g-color-private-green-950-solid:#183326;--g-color-private-green-1000-solid:#172a21;--g-color-private-yellow-50:#ffbe5c1a;--g-color-private-yellow-100:#ffbe5c26;--g-color-private-yellow-150:#ffbe5c33;--g-color-private-yellow-200:#ffbe5c4d;--g-color-private-yellow-250:#ffbe5c66;--g-color-private-yellow-300:#ffbe5c80;--g-color-private-yellow-350:#ffbe5c99;--g-color-private-yellow-400:#ffbe5cb3;--g-color-private-yellow-450:#ffbe5ccc;--g-color-private-yellow-500:#ffbe5ce6;--g-color-private-yellow-50-solid:#fff9ef;--g-color-private-yellow-100-solid:#fff5e7;--g-color-private-yellow-150-solid:#fff2de;--g-color-private-yellow-200-solid:#ffecce;--g-color-private-yellow-250-solid:#ffe5be;--g-color-private-yellow-300-solid:#ffdfae;--g-color-private-yellow-350-solid:#ffd89d;--g-color-private-yellow-400-solid:#ffd28d;--g-color-private-yellow-450-solid:#ffcb7d;--g-color-private-yellow-500-solid:#ffc56c;--g-color-private-yellow-550-solid:#ffbe5c;--g-color-private-yellow-600-solid:#e7ad55;--g-color-private-yellow-650-solid:#d09b4d;--g-color-private-yellow-700-solid:#b88a46;--g-color-private-yellow-750-solid:#a0793e;--g-color-private-yellow-800-solid:#896837;--g-color-private-yellow-850-solid:#715630;--g-color-private-yellow-900-solid:#594528;--g-color-private-yellow-950-solid:#413421;--g-color-private-yellow-1000-solid:#362b1d;--g-color-private-orange-400-solid:#ffa04d;--g-color-private-orange-500-solid:#ff8519;--g-color-private-orange-600-solid:#e76d02;--g-color-private-orange-650-solid:#d06304;--g-color-private-orange-700-solid:#b85805;--g-color-private-orange-750-solid:#a04e07;--g-color-private-orange-800-solid:#894409;--g-color-private-orange-850-solid:#713a0b;--g-color-private-orange-900-solid:#59300d;--g-color-private-orange-950-solid:#41250e;--g-color-private-orange-1000-solid:#36200f;--g-color-private-red-50:#ff003d1a;--g-color-private-red-100:#ff003d26;--g-color-private-red-150:#ff003d33;--g-color-private-red-200:#ff003d4d;--g-color-private-red-250:#ff003d66;--g-color-private-red-300:#ff003d80;--g-color-private-red-350:#ff003d99;--g-color-private-red-400:#ff003db3;--g-color-private-red-450:#ff003dcc;--g-color-private-red-500:#ff003de6;--g-color-private-red-50-solid:#ffe6ec;--g-color-private-red-100-solid:#ffd9e2;--g-color-private-red-150-solid:#ffccd8;--g-color-private-red-200-solid:#ffb3c5;--g-color-private-red-250-solid:#ff99b1;--g-color-private-red-300-solid:#ff809e;--g-color-private-red-350-solid:#ff668b;--g-color-private-red-400-solid:#ff4d77;--g-color-private-red-450-solid:#ff3364;--g-color-private-red-500-solid:#ff1950;--g-color-private-red-550-solid:#ff003d;--g-color-private-red-600-solid:#e70239;--g-color-private-red-650-solid:#d00334;--g-color-private-red-700-solid:#b80530;--g-color-private-red-750-solid:#a0072c;--g-color-private-red-800-solid:#890928;--g-color-private-red-850-solid:#710a23;--g-color-private-red-900-solid:#590c1f;--g-color-private-red-950-solid:#410e1b;--g-color-private-red-1000-solid:#360e18;--g-color-private-purple-600-solid:#834cb9;--g-color-private-purple-650-solid:#7645a7;--g-color-private-purple-700-solid:#6a3f94;--g-color-private-purple-750-solid:#5d3882;--g-color-private-purple-800-solid:#51326f;--g-color-private-purple-850-solid:#442b5c;--g-color-private-purple-900-solid:#38254a;--g-color-private-purple-950-solid:#2b1e37;--g-color-private-purple-1000-solid:#251b2e;--g-color-private-cool-grey-300-solid:#b5c2cc;--g-color-private-cool-grey-600-solid:#62798c;--g-color-private-cool-grey-650-solid:#596d7e;--g-color-private-cool-grey-700-solid:#506271;--g-color-private-cool-grey-750-solid:#475663;--g-color-private-cool-grey-800-solid:#3f4b56;--g-color-private-cool-grey-850-solid:#363f48;--g-color-private-cool-grey-900-solid:#2d343b;--g-color-private-cool-grey-950-solid:#24282d;--g-color-private-cool-grey-1000-solid:#1f2226;--g-color-text-primary:var(--g-color-text-dark-primary);--g-color-text-complementary:var(--g-color-text-dark-complementary);--g-color-text-secondary:var(--g-color-text-dark-secondary);--g-color-text-hint:var(--g-color-text-dark-hint);--g-color-text-info:var(--g-color-private-blue-650-solid);--g-color-text-positive:var(--g-color-private-green-650-solid);--g-color-text-warning:var(--g-color-private-yellow-700-solid);--g-color-text-danger:var(--g-color-private-red-650-solid);--g-color-text-utility:var(--g-color-private-purple-650-solid);--g-color-text-misc:var(--g-color-private-cool-grey-650-solid);--g-color-text-info-heavy:var(--g-color-private-blue-900-solid);--g-color-text-positive-heavy:var(--g-color-private-green-900-solid);--g-color-text-warning-heavy:var(--g-color-private-orange-900-solid);--g-color-text-danger-heavy:var(--g-color-private-red-900-solid);--g-color-text-utility-heavy:var(--g-color-private-purple-900-solid);--g-color-text-misc-heavy:var(--g-color-private-cool-grey-900-solid);--g-color-text-brand:var(--g-color-private-yellow-700-solid);--g-color-text-brand-heavy:var(--g-color-private-orange-900-solid);--g-color-text-brand-contrast:var(--g-color-text-dark-primary);--g-color-text-link:var(--g-color-private-yellow-700-solid);--g-color-text-link-hover:var(--g-color-private-orange-700-solid);--g-color-text-link-visited:var(--g-color-private-purple-600-solid);--g-color-text-link-visited-hover:var(--g-color-private-purple-850-solid);--g-color-text-dark-primary:var(--g-color-private-black-1000-solid);--g-color-text-dark-complementary:var(--g-color-private-black-850);--g-color-text-dark-secondary:var(--g-color-private-black-700);--g-color-text-dark-hint:var(--g-color-private-black-500);--g-color-text-light-primary:var(--g-color-private-white-1000-solid);--g-color-text-light-complementary:var(--g-color-private-white-850);--g-color-text-light-secondary:var(--g-color-private-white-700);--g-color-text-light-hint:var(--g-color-private-white-500);--g-color-text-inverted-primary:var(--g-color-text-light-primary);--g-color-text-inverted-complementary:var(--g-color-text-light-complementary);--g-color-text-inverted-secondary:var(--g-color-text-light-secondary);--g-color-text-inverted-hint:var(--g-color-text-light-hint);--g-color-base-background:var(--g-color-private-white-1000-solid);--g-color-base-generic:var(--g-color-private-black-150);--g-color-base-generic-hover:var(--g-color-private-black-300);--g-color-base-generic-medium:var(--g-color-private-black-250);--g-color-base-generic-medium-hover:var(--g-color-private-black-350);--g-color-base-generic-accent:var(--g-color-private-black-250);--g-color-base-generic-accent-disabled:var(--g-color-private-black-150);--g-color-base-generic-ultralight:var(--g-color-private-black-50-solid);--g-color-base-simple-hover:var(--g-color-private-black-150);--g-color-base-simple-hover-solid:var(--g-color-private-black-150-solid);--g-color-base-brand:var(--g-color-private-yellow-550-solid);--g-color-base-brand-hover:var(--g-color-private-yellow-650-solid);--g-color-base-selection:var(--g-color-private-yellow-300);--g-color-base-selection-hover:var(--g-color-private-yellow-400);--g-color-base-info-light:var(--g-color-private-blue-250);--g-color-base-info-light-hover:var(--g-color-private-blue-350);--g-color-base-info-medium:var(--g-color-private-blue-400);--g-color-base-info-medium-hover:var(--g-color-private-blue-500);--g-color-base-info-heavy:var(--g-color-private-blue-700-solid);--g-color-base-info-heavy-hover:var(--g-color-private-blue-850-solid);--g-color-base-positive-light:var(--g-color-private-green-250);--g-color-base-positive-light-hover:var(--g-color-private-green-350);--g-color-base-positive-medium:var(--g-color-private-green-400);--g-color-base-positive-medium-hover:var(--g-color-private-green-500);--g-color-base-positive-heavy:var(--g-color-private-green-700-solid);--g-color-base-positive-heavy-hover:var(--g-color-private-green-800-solid);--g-color-base-warning-light:var(--g-color-private-yellow-300);--g-color-base-warning-light-hover:var(--g-color-private-yellow-400);--g-color-base-warning-medium:var(--g-color-private-yellow-400);--g-color-base-warning-medium-hover:var(--g-color-private-yellow-550-solid);--g-color-base-warning-heavy:var(--g-color-private-yellow-600-solid);--g-color-base-warning-heavy-hover:var(--g-color-private-yellow-700-solid);--g-color-base-danger-light:var(--g-color-private-red-250);--g-color-base-danger-light-hover:var(--g-color-private-red-350);--g-color-base-danger-medium:var(--g-color-private-red-400);--g-color-base-danger-medium-hover:var(--g-color-private-red-500);--g-color-base-danger-heavy:var(--g-color-private-red-700-solid);--g-color-base-danger-heavy-hover:var(--g-color-private-red-800-solid);--g-color-base-utility-light:var(--g-color-private-purple-250);--g-color-base-utility-light-hover:var(--g-color-private-purple-350);--g-color-base-utility-medium:var(--g-color-private-purple-400);--g-color-base-utility-medium-hover:var(--g-color-private-purple-500);--g-color-base-utility-heavy:var(--g-color-private-purple-700-solid);--g-color-base-utility-heavy-hover:var(--g-color-private-purple-800-solid);--g-color-base-neutral-light:var(--g-color-private-black-150);--g-color-base-neutral-light-hover:var(--g-color-private-black-250);--g-color-base-neutral-medium:var(--g-color-private-black-300);--g-color-base-neutral-medium-hover:var(--g-color-private-black-400);--g-color-base-neutral-heavy:var(--g-color-private-black-550);--g-color-base-neutral-heavy-hover:var(--g-color-private-black-650);--g-color-base-misc-light:var(--g-color-private-cool-grey-250);--g-color-base-misc-light-hover:var(--g-color-private-cool-grey-350);--g-color-base-misc-medium:var(--g-color-private-cool-grey-400);--g-color-base-misc-medium-hover:var(--g-color-private-cool-grey-500);--g-color-base-misc-heavy:var(--g-color-private-cool-grey-700-solid);--g-color-base-misc-heavy-hover:var(--g-color-private-cool-grey-800-solid);--g-color-base-light:var(--g-color-private-white-1000-solid);--g-color-base-light-hover:var(--g-color-private-white-850);--g-color-base-light-simple-hover:var(--g-color-private-white-300);--g-color-base-light-disabled:var(--g-color-private-white-150);--g-color-base-light-accent-disabled:var(--g-color-private-white-300);--g-color-base-float:var(--g-color-private-white-1000-solid);--g-color-base-float-hover:var(--g-color-private-black-150-solid);--g-color-base-float-medium:var(--g-color-private-black-550-solid);--g-color-base-float-heavy:var(--g-color-private-black-700-solid);--g-color-base-float-accent:var(--g-color-private-white-1000-solid);--g-color-base-float-accent-hover:var(--g-color-private-white-850);--g-color-base-float-announcement:var(--g-color-private-cool-grey-150-solid);--g-color-base-modal:var(--g-color-base-background);--g-color-line-generic:var(--g-color-private-black-200);--g-color-line-generic-hover:var(--g-color-private-black-400);--g-color-line-generic-active:var(--g-color-private-black-700);--g-color-line-generic-accent:var(--g-color-private-black-300);--g-color-line-generic-accent-hover:var(--g-color-private-black-700);--g-color-line-generic-solid:var(--g-color-private-black-200-solid);--g-color-line-brand:var(--g-color-private-yellow-600-solid);--g-color-line-focus:var(--g-color-private-cool-grey-450);--g-color-line-light:var(--g-color-private-white-500);--g-color-line-info:var(--g-color-private-blue-450);--g-color-line-positive:var(--g-color-private-green-450);--g-color-line-warning:var(--g-color-private-yellow-600-solid);--g-color-line-danger:var(--g-color-private-red-450);--g-color-line-utility:var(--g-color-private-purple-450);--g-color-line-misc:var(--g-color-private-cool-grey-450);--g-color-sfx-veil:var(--g-color-private-black-450);--g-color-sfx-shadow:var(--g-color-private-black-300);--g-color-sfx-shadow-heavy:var(--g-color-private-black-600);--g-color-sfx-shadow-light:var(--g-color-private-black-100);--g-color-sfx-fade:var(--g-color-private-white-300);--g-color-scroll-track:var(--g-color-base-background);--g-color-scroll-handle:var(--g-color-private-black-100);--g-color-scroll-handle-hover:var(--g-color-private-black-150);--g-color-scroll-corner:var(--g-color-private-black-100);--g-color-infographics-axis:var(--g-color-private-black-150-solid);--g-color-infographics-tooltip-bg:var(--g-color-private-white-950)}.g-root_theme_dark-hc{--g-color-private-white-50-solid:#1e1d1e;--g-color-private-white-70-solid:#232223;--g-color-private-white-100-solid:#2a292a;--g-color-private-white-150-solid:#363536;--g-color-private-white-200-solid:#414141;--g-color-private-white-250-solid:#4d4d4d;--g-color-private-white-300-solid:#595859;--g-color-private-white-350-solid:#656465;--g-color-private-white-400-solid:#717071;--g-color-private-white-450-solid:#7d7c7d;--g-color-private-white-500-solid:#888;--g-color-private-white-550-solid:#949494;--g-color-private-white-600-solid:#a0a0a0;--g-color-private-white-650-solid:#acacac;--g-color-private-white-700-solid:#b8b8b8;--g-color-private-white-750-solid:#c4c3c4;--g-color-private-white-800-solid:#d0cfd0;--g-color-private-white-850-solid:#d0cfd0;--g-color-private-white-900-solid:#e7e7e7;--g-color-private-white-950-solid:#f3f3f3;--g-color-private-blue-50:#3697f11a;--g-color-private-blue-100:#3697f126;--g-color-private-blue-150:#3697f133;--g-color-private-blue-200:#3697f14d;--g-color-private-blue-250:#3697f166;--g-color-private-blue-300:#3697f180;--g-color-private-blue-350:#3697f199;--g-color-private-blue-400:#3697f1b3;--g-color-private-blue-450:#3697f1cc;--g-color-private-blue-500:#3697f1e6;--g-color-private-blue-50-solid:#161e28;--g-color-private-blue-100-solid:#172533;--g-color-private-blue-150-solid:#192c3f;--g-color-private-blue-200-solid:#1d3955;--g-color-private-blue-250-solid:#20476b;--g-color-private-blue-300-solid:#245482;--g-color-private-blue-350-solid:#286198;--g-color-private-blue-400-solid:#2b6fae;--g-color-private-blue-450-solid:#2f7cc4;--g-color-private-blue-500-solid:#328adb;--g-color-private-blue-550-solid:#3697f1;--g-color-private-blue-600-solid:#4aa1f2;--g-color-private-blue-650-solid:#5eacf4;--g-color-private-blue-700-solid:#72b6f5;--g-color-private-blue-750-solid:#86c1f7;--g-color-private-blue-800-solid:#9bcbf8;--g-color-private-blue-850-solid:#afd5f9;--g-color-private-blue-900-solid:#c3e0fb;--g-color-private-blue-950-solid:#d7eafc;--g-color-private-blue-1000-solid:#e1effd;--g-color-private-green-50:#4db09b1a;--g-color-private-green-100:#4db09b26;--g-color-private-green-150:#4db09b33;--g-color-private-green-200:#4db09b4d;--g-color-private-green-250:#4db09b66;--g-color-private-green-300:#4db09b80;--g-color-private-green-350:#4db09b99;--g-color-private-green-400:#4db09bb3;--g-color-private-green-450:#4db09bcc;--g-color-private-green-500:#4db09be6;--g-color-private-green-50-solid:#182120;--g-color-private-green-100-solid:#1b2927;--g-color-private-green-150-solid:#1e312d;--g-color-private-green-200-solid:#24413b;--g-color-private-green-250-solid:#2a5149;--g-color-private-green-300-solid:#306157;--g-color-private-green-350-solid:#357064;--g-color-private-green-400-solid:#3b8072;--g-color-private-green-450-solid:#419080;--g-color-private-green-500-solid:#47a08d;--g-color-private-green-550-solid:#4db09b;--g-color-private-green-600-solid:#5fb8a5;--g-color-private-green-650-solid:#71c0af;--g-color-private-green-700-solid:#82c8b9;--g-color-private-green-750-solid:#94d0c3;--g-color-private-green-800-solid:#a6d8cd;--g-color-private-green-850-solid:#b8dfd7;--g-color-private-green-900-solid:#cae7e1;--g-color-private-green-950-solid:#dbefeb;--g-color-private-green-1000-solid:#e4f3f0;--g-color-private-yellow-50:#ffbe5c1a;--g-color-private-yellow-100:#ffbe5c26;--g-color-private-yellow-150:#ffbe5c33;--g-color-private-yellow-200:#ffbe5c4d;--g-color-private-yellow-250:#ffbe5c66;--g-color-private-yellow-300:#ffbe5c80;--g-color-private-yellow-350:#ffbe5c99;--g-color-private-yellow-400:#ffbe5cb3;--g-color-private-yellow-450:#ffbe5ccc;--g-color-private-yellow-500:#ffbe5ce6;--g-color-private-yellow-50-solid:#2a2219;--g-color-private-yellow-100-solid:#362b1d;--g-color-private-yellow-150-solid:#413421;--g-color-private-yellow-200-solid:#594528;--g-color-private-yellow-250-solid:#715630;--g-color-private-yellow-300-solid:#896837;--g-color-private-yellow-350-solid:#a0793e;--g-color-private-yellow-400-solid:#b88a46;--g-color-private-yellow-450-solid:#d09b4d;--g-color-private-yellow-500-solid:#e7ad55;--g-color-private-yellow-550-solid:#ffbe5c;--g-color-private-yellow-600-solid:#ffc56c;--g-color-private-yellow-650-solid:#ffcb7d;--g-color-private-yellow-700-solid:#ffd28d;--g-color-private-yellow-750-solid:#ffd89d;--g-color-private-yellow-800-solid:#ffdfae;--g-color-private-yellow-850-solid:#ffe5be;--g-color-private-yellow-900-solid:#ffecce;--g-color-private-yellow-950-solid:#fff2de;--g-color-private-yellow-1000-solid:#fff5e7;--g-color-private-orange-50-solid:#241911;--g-color-private-orange-100-solid:#2d1d11;--g-color-private-orange-150-solid:#362111;--g-color-private-orange-200-solid:#492a10;--g-color-private-orange-250-solid:#5b3210;--g-color-private-orange-300-solid:#6d3a0f;--g-color-private-orange-350-solid:#7f420e;--g-color-private-orange-400-solid:#914a0e;--g-color-private-orange-450-solid:#a4530d;--g-color-private-orange-500-solid:#b65b0d;--g-color-private-orange-700-solid:#d99255;--g-color-private-orange-800-solid:#e4b186;--g-color-private-red-50:#e5325d1a;--g-color-private-red-100:#e5325d26;--g-color-private-red-150:#e5325d33;--g-color-private-red-200:#e5325d4d;--g-color-private-red-250:#e5325d66;--g-color-private-red-300:#e5325d80;--g-color-private-red-350:#e5325d99;--g-color-private-red-400:#e5325db3;--g-color-private-red-450:#e5325dcc;--g-color-private-red-500:#e5325de6;--g-color-private-red-50-solid:#27141a;--g-color-private-red-100-solid:#32161d;--g-color-private-red-150-solid:#3c1821;--g-color-private-red-200-solid:#511b29;--g-color-private-red-250-solid:#661e30;--g-color-private-red-300-solid:#7c2238;--g-color-private-red-350-solid:#91253f;--g-color-private-red-400-solid:#a62847;--g-color-private-red-450-solid:#bb2b4e;--g-color-private-red-500-solid:#d02f56;--g-color-private-red-550-solid:#e5325d;--g-color-private-red-600-solid:#e8476d;--g-color-private-red-650-solid:#ea5b7d;--g-color-private-red-700-solid:#ed708e;--g-color-private-red-750-solid:#ef849e;--g-color-private-red-800-solid:#f299ae;--g-color-private-red-850-solid:#f5adbe;--g-color-private-red-900-solid:#f7c2ce;--g-color-private-red-950-solid:#fad6df;--g-color-private-red-1000-solid:#fbe0e7;--g-color-private-purple-50-solid:#1f1825;--g-color-private-purple-100-solid:#251b2e;--g-color-private-purple-150-solid:#2b1e37;--g-color-private-purple-200-solid:#38254a;--g-color-private-purple-250-solid:#442b5c;--g-color-private-purple-300-solid:#51326f;--g-color-private-purple-350-solid:#5d3882;--g-color-private-purple-400-solid:#6a3f94;--g-color-private-purple-450-solid:#7645a7;--g-color-private-purple-500-solid:#834cb9;--g-color-private-cool-grey-50-solid:#1a1c20;--g-color-private-cool-grey-100-solid:#1e2227;--g-color-private-cool-grey-150-solid:#22272e;--g-color-private-cool-grey-200-solid:#29323b;--g-color-private-cool-grey-250-solid:#313d49;--g-color-private-cool-grey-300-solid:#394957;--g-color-private-cool-grey-350-solid:#415465;--g-color-private-cool-grey-400-solid:#495f73;--g-color-private-cool-grey-450-solid:#506a80;--g-color-private-cool-grey-500-solid:#58758e;--g-color-private-cool-grey-750-solid:#a0b3c4;--g-color-private-cool-grey-800-solid:#b0c0ce;--g-color-text-primary:var(--g-color-text-light-primary);--g-color-text-complementary:var(--g-color-text-light-complementary);--g-color-text-secondary:var(--g-color-text-light-secondary);--g-color-text-hint:var(--g-color-text-light-hint);--g-color-text-info:var(--g-color-private-blue-650-solid);--g-color-text-positive:var(--g-color-private-green-650-solid);--g-color-text-warning:var(--g-color-private-yellow-650-solid);--g-color-text-danger:var(--g-color-private-red-650-solid);--g-color-text-utility:var(--g-color-private-purple-650-solid);--g-color-text-misc:var(--g-color-private-cool-grey-650-solid);--g-color-text-info-heavy:var(--g-color-private-blue-850-solid);--g-color-text-positive-heavy:var(--g-color-private-green-850-solid);--g-color-text-warning-heavy:var(--g-color-private-yellow-850-solid);--g-color-text-danger-heavy:var(--g-color-private-red-850-solid);--g-color-text-utility-heavy:var(--g-color-private-purple-850-solid);--g-color-text-misc-heavy:var(--g-color-private-cool-grey-850-solid);--g-color-text-brand:var(--g-color-private-yellow-600-solid);--g-color-text-brand-heavy:var(--g-color-private-yellow-700-solid);--g-color-text-brand-contrast:var(--g-color-text-dark-primary);--g-color-text-link:var(--g-color-private-yellow-550-solid);--g-color-text-link-hover:var(--g-color-private-orange-550-solid);--g-color-text-link-visited:var(--g-color-private-purple-650-solid);--g-color-text-link-visited-hover:var(--g-color-private-purple-800-solid);--g-color-text-dark-primary:var(--g-color-private-black-1000-solid);--g-color-text-dark-complementary:var(--g-color-private-black-800);--g-color-text-dark-secondary:var(--g-color-private-black-600);--g-color-text-dark-hint:var(--g-color-private-black-400);--g-color-text-light-primary:var(--g-color-private-white-1000-solid);--g-color-text-light-complementary:var(--g-color-private-white-800);--g-color-text-light-secondary:var(--g-color-private-white-600);--g-color-text-light-hint:var(--g-color-private-white-400);--g-color-text-inverted-primary:var(--g-color-text-dark-primary);--g-color-text-inverted-complementary:var(--g-color-text-dark-complementary);--g-color-text-inverted-secondary:var(--g-color-text-dark-secondary);--g-color-text-inverted-hint:var(--g-color-text-dark-hint);--g-color-base-background:#121112;--g-color-base-generic:var(--g-color-private-white-100);--g-color-base-generic-hover:var(--g-color-private-white-250);--g-color-base-generic-medium:var(--g-color-private-white-250);--g-color-base-generic-medium-hover:var(--g-color-private-white-400);--g-color-base-generic-accent:var(--g-color-private-white-200);--g-color-base-generic-accent-disabled:var(--g-color-private-white-150);--g-color-base-generic-ultralight:var(--g-color-private-white-50);--g-color-base-simple-hover:var(--g-color-private-white-250);--g-color-base-simple-hover-solid:var(--g-color-private-white-250-solid);--g-color-base-brand:var(--g-color-private-yellow-550-solid);--g-color-base-brand-hover:var(--g-color-private-yellow-700-solid);--g-color-base-selection:var(--g-color-private-yellow-250);--g-color-base-selection-hover:var(--g-color-private-yellow-400);--g-color-base-info-light:var(--g-color-private-blue-250);--g-color-base-info-light-hover:var(--g-color-private-blue-400);--g-color-base-info-medium:var(--g-color-private-blue-450);--g-color-base-info-medium-hover:var(--g-color-private-blue-600-solid);--g-color-base-info-heavy:var(--g-color-private-blue-700-solid);--g-color-base-info-heavy-hover:var(--g-color-private-blue-850-solid);--g-color-base-positive-light:var(--g-color-private-green-250);--g-color-base-positive-light-hover:var(--g-color-private-green-400);--g-color-base-positive-medium:var(--g-color-private-green-450);--g-color-base-positive-medium-hover:var(--g-color-private-green-600-solid);--g-color-base-positive-heavy:var(--g-color-private-green-700-solid);--g-color-base-positive-heavy-hover:var(--g-color-private-green-850-solid);--g-color-base-warning-light:var(--g-color-private-yellow-250);--g-color-base-warning-light-hover:var(--g-color-private-yellow-400);--g-color-base-warning-medium:var(--g-color-private-yellow-450);--g-color-base-warning-medium-hover:var(--g-color-private-yellow-600-solid);--g-color-base-warning-heavy:var(--g-color-private-yellow-700-solid);--g-color-base-warning-heavy-hover:var(--g-color-private-yellow-850-solid);--g-color-base-danger-light:var(--g-color-private-red-250);--g-color-base-danger-light-hover:var(--g-color-private-red-400);--g-color-base-danger-medium:var(--g-color-private-red-450);--g-color-base-danger-medium-hover:var(--g-color-private-red-600-solid);--g-color-base-danger-heavy:var(--g-color-private-red-700-solid);--g-color-base-danger-heavy-hover:var(--g-color-private-red-850-solid);--g-color-base-utility-light:var(--g-color-private-purple-250);--g-color-base-utility-light-hover:var(--g-color-private-purple-400);--g-color-base-utility-medium:var(--g-color-private-purple-450);--g-color-base-utility-medium-hover:var(--g-color-private-purple-600-solid);--g-color-base-utility-heavy:var(--g-color-private-purple-700-solid);--g-color-base-utility-heavy-hover:var(--g-color-private-purple-850-solid);--g-color-base-neutral-light:var(--g-color-private-white-200);--g-color-base-neutral-light-hover:var(--g-color-private-white-350);--g-color-base-neutral-medium:var(--g-color-private-white-400);--g-color-base-neutral-medium-hover:var(--g-color-private-white-550);--g-color-base-neutral-heavy:var(--g-color-private-white-650);--g-color-base-neutral-heavy-hover:var(--g-color-private-white-750);--g-color-base-misc-light:var(--g-color-private-cool-grey-250);--g-color-base-misc-light-hover:var(--g-color-private-cool-grey-400);--g-color-base-misc-medium:var(--g-color-private-cool-grey-450);--g-color-base-misc-medium-hover:var(--g-color-private-cool-grey-600-solid);--g-color-base-misc-heavy:var(--g-color-private-cool-grey-700-solid);--g-color-base-misc-heavy-hover:var(--g-color-private-cool-grey-850-solid);--g-color-base-light:var(--g-color-private-white-850);--g-color-base-light-hover:var(--g-color-private-white-700);--g-color-base-light-simple-hover:var(--g-color-private-white-150);--g-color-base-light-disabled:var(--g-color-private-white-150);--g-color-base-light-accent-disabled:var(--g-color-private-white-300);--g-color-base-float:var(--g-color-private-white-100-solid);--g-color-base-float-hover:var(--g-color-private-white-200-solid);--g-color-base-float-medium:var(--g-color-private-white-200-solid);--g-color-base-float-heavy:var(--g-color-private-white-300-solid);--g-color-base-float-accent:var(--g-color-private-white-300-solid);--g-color-base-float-accent-hover:var(--g-color-private-white-400-solid);--g-color-base-float-announcement:var(--g-color-private-white-200-solid);--g-color-base-modal:var(--g-color-base-background);--g-color-line-generic:var(--g-color-private-white-150);--g-color-line-generic-hover:var(--g-color-private-white-250);--g-color-line-generic-active:var(--g-color-private-white-600);--g-color-line-generic-accent:var(--g-color-private-white-350);--g-color-line-generic-accent-hover:var(--g-color-private-white-800);--g-color-line-generic-solid:var(--g-color-private-white-150-solid);--g-color-line-brand:var(--g-color-private-yellow-600-solid);--g-color-line-focus:var(--g-color-private-cool-grey-550-solid);--g-color-line-light:var(--g-color-private-white-500);--g-color-line-info:var(--g-color-private-blue-550-solid);--g-color-line-positive:var(--g-color-private-green-550-solid);--g-color-line-warning:var(--g-color-private-yellow-550-solid);--g-color-line-danger:var(--g-color-private-red-550-solid);--g-color-line-utility:var(--g-color-private-purple-550-solid);--g-color-line-misc:var(--g-color-private-cool-grey-550-solid);--g-color-sfx-veil:var(--g-color-private-black-700);--g-color-sfx-shadow:var(--g-color-private-black-200);--g-color-sfx-shadow-heavy:var(--g-color-private-black-400);--g-color-sfx-shadow-light:var(--g-color-private-black-200);--g-color-sfx-fade:var(--g-color-private-white-250);--g-color-scroll-track:var(--g-color-base-background);--g-color-scroll-handle:var(--g-color-private-white-150);--g-color-scroll-handle-hover:var(--g-color-private-white-250);--g-color-scroll-corner:var(--g-color-private-white-150);--g-color-infographics-axis:var(--g-color-private-white-150-solid);--g-color-infographics-tooltip-bg:var(--g-color-private-white-opaque-150)}.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar){scrollbar-color:var(--g-color-scroll-handle) var(--g-color-scroll-track);scrollbar-width:var(--g-scrollbar-width)}.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar) ::-webkit-scrollbar,.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar)::-webkit-scrollbar{background:var(--g-color-scroll-track);height:var(--g-scrollbar-width);width:var(--g-scrollbar-width)}.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar) ::-webkit-scrollbar-track,.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar)::-webkit-scrollbar-track{background:var(--g-color-scroll-track)}.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar) ::-webkit-scrollbar-corner,.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar)::-webkit-scrollbar-corner{background:var(--g-color-scroll-corner)}.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar) ::-webkit-scrollbar-thumb,.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar)::-webkit-scrollbar-thumb{background:var(--g-color-scroll-handle)}.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar) ::-webkit-scrollbar-thumb:hover,.g-root:not(.g-root_mobile):not(.g-root_native-scrollbar)::-webkit-scrollbar-thumb:hover{background:var(--g-color-scroll-handle-hover)}@keyframes g-loading-animation{0%{background-position:-12px 0}to{background-position:0 0}}:root:has(body.g-root_theme_light),:root:has(body.g-root_theme_light-hc){color-scheme:light}:root:has(body.g-root_theme_dark),:root:has(body.g-root_theme_dark-hc){color-scheme:dark}:root{--data-table-header-vertical-padding:5px;--data-table-cell-vertical-padding:5px;--data-table-cell-horizontal-padding:10px;--data-table-cell-border-padding:var(--data-table-cell-horizontal-padding);--data-table-cell-align:top;--data-table-head-align:top;--data-table-row-height:30px;--data-table-sort-icon-space:18px;--data-table-sort-icon-opacity-inactive:0.15;--data-table-sort-icon-color:inherit}.data-table{box-sizing:border-box;position:relative}.data-table__box{box-sizing:border-box;height:100%;width:100%}.data-table__box_sticky-head_moving{overflow:visible;position:relative;z-index:0}.data-table__box_sticky-head_moving .data-table__th{border-bottom:0;border-top:0;padding-bottom:0;padding-top:0}.data-table__box_sticky-head_moving .data-table__head-cell{display:block;height:0;overflow:hidden}.data-table__box_sticky-head_moving .data-table__row_header-data{visibility:hidden}.data-table__box_sticky-footer_fixed,.data-table__box_sticky-head_fixed{overflow:auto}.data-table__table{border-collapse:collapse;table-layout:fixed}.data-table__table_sticky{background:var(--data-table-color-base);width:100%}.data-table__row{height:30px;height:var(--data-table-row-height)}.data-table__th{border:1px solid var(--data-table-border-color);box-sizing:border-box;cursor:default;font-weight:500;padding:5px 10px;padding:var(--data-table-header-vertical-padding) var(--data-table-cell-horizontal-padding);position:relative;text-align:left;vertical-align:top;vertical-align:var(--data-table-head-align)}.data-table__th_sortable{cursor:pointer}.data-table__th_sortable .data-table__head-cell{padding-right:18px;padding-right:var(--data-table-sort-icon-space)}.data-table__th_sortable.data-table__th_align_right .data-table__head-cell{padding-left:18px;padding-left:var(--data-table-sort-icon-space);padding-right:0}.data-table__th_sortable.data-table__th_align_right .data-table__sort-icon{left:0;right:auto;transform:translateY(-50%) scaleX(-1)}.data-table__td{border:1px solid var(--data-table-border-color);box-sizing:border-box;overflow:hidden;padding:5px 10px;padding:var(--data-table-cell-vertical-padding) var(--data-table-cell-horizontal-padding);text-overflow:ellipsis;vertical-align:top;vertical-align:var(--data-table-cell-align);white-space:nowrap}.data-table__td_index,.data-table__th_index{text-align:right}.data-table__td_align_left,.data-table__th_align_left{text-align:left}.data-table__td_align_center,.data-table__th_align_center{text-align:center}.data-table__td_align_right,.data-table__th_align_right{text-align:right}.data-table__td:first-child,.data-table__th:first-child{padding-left:10px;padding-left:var(--data-table-cell-border-padding)}.data-table__td:last-child,.data-table__th:last-child{padding-right:10px;padding-right:var(--data-table-cell-border-padding)}.data-table__index{text-align:right}.data-table__head-cell{box-sizing:border-box;display:inline-block;max-width:100%;overflow:hidden;position:relative;text-overflow:ellipsis;vertical-align:top;white-space:nowrap}.data-table__error{padding:20px;white-space:pre-wrap}.data-table__sort-icon{color:inherit;color:var(--data-table-sort-icon-color);display:inline-flex;position:absolute;right:0;top:50%;transform:translateY(-50%)}.data-table__sort-icon:after{content:attr(data-index);font-size:8px;left:100%;position:absolute;top:-5px}.data-table__sort-icon_shadow{opacity:.15;opacity:var(--data-table-sort-icon-opacity-inactive)}.data-table__sort-icon_shadow:after{content:none}.data-table__icon{vertical-align:top}.data-table__no-data{background:var(--data-table-color-stripe)}.data-table__sticky_fixed{left:0;overflow:hidden;position:absolute;right:0;z-index:1}.data-table__sticky_fixed.data-table__sticky_head{top:0}.data-table__sticky_fixed.data-table__sticky_footer{bottom:0}.data-table__sticky_moving{margin-bottom:-1px;position:-webkit-sticky;position:sticky;z-index:1}.data-table_striped-rows .data-table__row_odd{background:var(--data-table-color-stripe)}.data-table_highlight-rows .data-table__row:hover{background:var(--data-table-color-hover-area)}.data-table_header_multiline .data-table__head-cell{white-space:normal}.data-table_header_pre .data-table__head-cell{white-space:pre}.data-table__foot{background:var(--data-table-color-footer-area)}.data-table__foot_has-sticky-footer_moving{visibility:hidden}.data-table_theme_yandex-cloud{--data-table-color-base:var(--g-color-base-background,var(--yc-color-base-background));--data-table-color-stripe:var( --g-color-base-generic-ultralight,var(--yc-color-base-generic-ultralight) );--data-table-border-color:var( --g-color-base-generic-hover,var(--yc-color-base-generic-hover) );--data-table-color-hover-area:var( --g-color-base-simple-hover,var(--yc-color-base-simple-hover) );--data-table-color-footer-area:var(--data-table-color-base)}.data-table_theme_legacy{--data-table-color-base:#fff;--data-table-color-stripe:#00000008;--data-table-border-color:#ddd;--data-table-color-hover-area:#ffeba0;--data-table-color-footer-area:var(--data-table-color-base)}.data-table__resize-handler{background-color:var(--g-color-base-generic);cursor:col-resize;height:100%;position:absolute;right:0;top:0;visibility:hidden;width:6px}.data-table__resize-handler_resizing,.data-table__th:hover>.data-table__resize-handler{visibility:visible}.ydb-error-boundary{align-items:flex-start;display:flex;flex-direction:row;font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height);padding:20px}.ydb-error-boundary__illustration{height:230px;margin-right:20px;width:230px}.ydb-error-boundary__error-title{font-size:var(--g-text-subheader-3-font-size);line-height:var(--g-text-subheader-3-line-height);margin-top:44px}.ydb-error-boundary__error-description{margin-top:12px}.ydb-error-boundary__show-details{margin-top:8px}.ydb-error-boundary__error-details{background-color:var(--g-color-base-generic-ultralight);border:1px solid var(--g-color-line-generic);padding:13px 18px}.ydb-error-boundary__actions{display:flex;flex-direction:row;gap:10px;margin-top:20px}.g-disclosure_size_m .g-disclosure__trigger{font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-disclosure_size_l .g-disclosure__trigger{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.g-disclosure_size_xl .g-disclosure__trigger{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.g-disclosure__trigger{align-items:center;background:none;border:none;border-radius:var(--g-focus-border-radius);color:inherit;cursor:pointer;display:flex;flex-flow:row nowrap;flex-shrink:0;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);font-weight:inherit;gap:8px;line-height:inherit;outline:none;padding:0}.g-disclosure__trigger:focus-visible{outline:2px solid var(--g-color-line-focus)}.g-disclosure__trigger_arrow_end{flex-direction:row-reverse}.g-disclosure__trigger_disabled{color:var(--g-color-text-secondary);cursor:auto}.g-disclosure__content{display:none}.g-disclosure__content_visible{display:block}.g-disclosure__content.g-disclosure_exit_active{animation-duration:.1s;animation-name:g-disclosure-collapsed;display:block;opacity:0}.g-disclosure__content.g-disclosure_enter_active{animation-duration:.2s;animation-name:g-disclosure-expanded}@keyframes g-disclosure-expanded{0%{opacity:.4}to{opacity:1}}@keyframes g-disclosure-collapsed{0%{opacity:1}to{opacity:0}}.g-icon{color:inherit;line-height:0;vertical-align:top}.g-arrow-toggle{display:inline-block;transition:transform .1s ease-out;vertical-align:middle}.g-arrow-toggle_direction_bottom{transform:matrix(1,0,0,1,0,0)}.g-arrow-toggle_direction_left{transform:matrix(0,1,-1,0,0,0)}.g-arrow-toggle_direction_top{transform:matrix(-1,0,0,-1,0,0)}.g-arrow-toggle_direction_right{transform:matrix(0,-1,1,0,0,0)}.g-button{--_--text-color:var(--g-color-text-primary);--_--text-color-hover:var(--_--text-color);--_--background-color:#0000;--_--background-color-hover:var(--g-color-base-simple-hover);--_--border-width:0;--_--border-color:currentColor;--_--focus-outline-color:var(--g-color-line-focus);--_--focus-outline-offset:0;--_--font-size:var(--g-text-body-1-font-size);-webkit-tap-highlight-color:rgba(0,0,0,0);background:none;background:#0000;border:none;box-sizing:border-box;color:inherit;color:var(--_--text-color);color:var(--g-button-text-color,var(--_--text-color));cursor:pointer;display:inline-flex;font-family:var(--g-text-body-font-family);font-size:inherit;font-size:var(--_--font-size);font-size:var(--g-button-font-size,var(--_--font-size));font-weight:var(--g-text-body-font-weight);gap:var(--_--icon-offset);gap:var(--g-button-icon-offset,var(--_--icon-offset));height:var(--_--height);height:var(--g-button-height,var(--_--height));justify-content:center;line-height:var(--_--height);line-height:var(--g-button-height,var(--_--height));outline:none;overflow:visible;padding:0;padding:0 var(--g-button-padding,var(--_--padding));position:relative;text-align:center;text-decoration:none;touch-action:manipulation;transform:scale(1);transition:transform .1s ease-out,color .15s linear;-webkit-user-select:none;user-select:none;white-space:nowrap}.g-button:before{background-color:var(--_--background-color);background-color:var(--g-button-background-color,var(--_--background-color));border:var(--g-button-border-width,var(--_--border-width)) var(--g-button-border-style,solid) var(--g-button-border-color,var(--_--border-color));content:"";inset:0;position:absolute;transition:background-color .15s linear;z-index:-1}.g-button:hover{color:var(--_--text-color-hover);color:var(--g-button-text-color-hover,var(--_--text-color-hover))}.g-button:hover:before{background-color:var(--_--background-color-hover);background-color:var(--g-button-background-color-hover,var(--_--background-color-hover))}.g-button:focus-visible:before{outline:var(--_--focus-outline-color) solid 2px;outline:var(--g-button-focus-outline-color,var(--_--focus-outline-color)) var(--g-button-focus-outline-style,solid) var(--g-button-focus-outline-width,2px);outline-offset:var(--_--focus-outline-offset);outline-offset:var(--g-button-focus-outline-offset,var(--_--focus-outline-offset))}.g-button:after{content:"";inset:0;position:absolute;transform:scale(1);transition:none;z-index:-1}.g-button:active{transform:scale(.96);transition:none}.g-button:active:after{transform:scale(1.042)}.g-button_size_xs{--_--height:20px;--_--border-radius:var(--g-border-radius-xs);--_--padding:6px;--_--icon-size:12px;--_--icon-offset:4px}.g-button_size_s{--_--height:24px;--_--border-radius:var(--g-border-radius-s);--_--padding:8px;--_--icon-size:16px;--_--icon-offset:4px}.g-button_size_m{--_--height:28px;--_--border-radius:var(--g-border-radius-m);--_--padding:12px;--_--icon-size:16px;--_--icon-offset:8px}.g-button_size_l{--_--height:36px;--_--border-radius:var(--g-border-radius-l);--_--padding:16px;--_--icon-size:16px;--_--icon-offset:8px}.g-button_size_xl{--_--height:44px;--_--border-radius:var(--g-border-radius-xl);--_--padding:24px;--_--icon-size:20px;--_--icon-offset:12px;--_--font-size:var(--g-text-body-2-font-size)}.g-button_view_normal{--_--background-color:var(--g-color-base-generic);--_--background-color-hover:var(--g-color-base-generic-hover)}.g-button_view_action{--_--text-color:var(--g-color-text-brand-contrast);--_--background-color:var(--g-color-base-brand);--_--background-color-hover:var(--g-color-base-brand-hover);--_--focus-outline-color:var(--g-color-base-brand);--_--focus-outline-offset:1px}.g-button_view_outlined{--_--border-width:1px;--_--border-color:var(--g-color-line-generic)}.g-button_view_outlined-info{--_--text-color:var(--g-color-text-info);--_--border-width:1px;--_--border-color:var(--g-color-line-info)}.g-button_view_outlined-success{--_--text-color:var(--g-color-text-positive);--_--border-width:1px;--_--border-color:var(--g-color-line-positive)}.g-button_view_outlined-warning{--_--text-color:var(--g-color-text-warning);--_--border-width:1px;--_--border-color:var(--g-color-line-warning)}.g-button_view_outlined-danger{--_--text-color:var(--g-color-text-danger);--_--border-width:1px;--_--border-color:var(--g-color-line-danger)}.g-button_view_outlined-utility{--_--text-color:var(--g-color-text-utility);--_--border-width:1px;--_--border-color:var(--g-color-line-utility)}.g-button_view_outlined-action{--_--text-color:var(--g-color-text-brand);--_--border-width:1px;--_--border-color:var(--g-color-line-brand)}.g-button_view_raised{--_--background-color-hover:var(--g-color-base-float-hover);background:var(--g-color-base-float)}.g-button_view_raised:before{box-shadow:0 3px 5px var(--g-color-sfx-shadow)}.g-button_view_raised:active:before{box-shadow:0 1px 2px var(--g-color-sfx-shadow)}.g-button_view_flat-secondary{--_--text-color:var(--g-color-text-secondary);--_--text-color-hover:var(--g-color-text-primary)}.g-button_view_flat-info{--_--text-color:var(--g-color-text-info)}.g-button_view_flat-success{--_--text-color:var(--g-color-text-positive)}.g-button_view_flat-warning{--_--text-color:var(--g-color-text-warning)}.g-button_view_flat-danger{--_--text-color:var(--g-color-text-danger)}.g-button_view_flat-utility{--_--text-color:var(--g-color-text-utility)}.g-button_view_flat-action{--_--text-color:var(--g-color-text-brand)}.g-button_view_normal-contrast{--_--text-color:var(--g-color-text-dark-primary);--_--background-color:var(--g-color-base-light);--_--background-color-hover:var(--g-color-base-light-hover);--_--focus-outline-color:var(--g-color-line-light)}.g-button_view_normal-contrast.g-button_loading{--_--background-color-hover:var(--g-color-base-simple-hover)}.g-button_view_outlined-contrast{--_--text-color:var(--g-color-text-light-primary);--_--background-color-hover:var(--g-color-base-light-simple-hover);--_--border-width:1px;--_--border-color:var(--g-color-line-light);--_--focus-outline-color:var(--g-color-line-light)}.g-button_view_flat-contrast{--_--text-color:var(--g-color-text-light-primary);--_--background-color-hover:var(--g-color-base-light-simple-hover);--_--focus-outline-color:var(--g-color-line-light)}.g-button.g-button_pin_round-round.g-button{border-radius:var(--_--border-radius);border-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_brick-brick.g-button{border-radius:0}.g-button.g-button_pin_clear-clear.g-button{border-inline:0;border-radius:0}.g-button.g-button_pin_circle-circle.g-button{border-radius:100px}.g-button.g-button_pin_round-brick.g-button{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_brick-round.g-button{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-end-start-radius:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-button.g-button_pin_round-clear.g-button{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-button-border-radius,var(--_--border-radius));border-inline-end:0;border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_clear-round.g-button{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-end-start-radius:0;border-inline-start:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-button.g-button_pin_brick-clear.g-button{border-inline-end:0;border-radius:0}.g-button.g-button_pin_clear-brick.g-button{border-inline-start:0;border-radius:0}.g-button.g-button_pin_circle-brick.g-button{border-end-end-radius:0;border-end-start-radius:100px;border-start-end-radius:0;border-start-start-radius:100px}.g-button.g-button_pin_brick-circle.g-button{border-end-end-radius:100px;border-end-start-radius:0;border-start-end-radius:100px;border-start-start-radius:0}.g-button.g-button_pin_circle-clear.g-button{border-end-end-radius:0;border-end-start-radius:100px;border-inline-end:0;border-start-end-radius:0;border-start-start-radius:100px}.g-button.g-button_pin_clear-circle.g-button{border-end-end-radius:100px;border-end-start-radius:0;border-inline-start:0;border-start-end-radius:100px;border-start-start-radius:0}.g-button.g-button_pin_round-round:before{border-radius:var(--_--border-radius);border-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_brick-brick:before{border-radius:0}.g-button.g-button_pin_clear-clear:before{border-inline:0;border-radius:0}.g-button.g-button_pin_circle-circle:before{border-radius:100px}.g-button.g-button_pin_round-brick:before{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_brick-round:before{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-end-start-radius:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-button.g-button_pin_round-clear:before{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-button-border-radius,var(--_--border-radius));border-inline-end:0;border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_clear-round:before{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-end-start-radius:0;border-inline-start:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-button.g-button_pin_brick-clear:before{border-inline-end:0;border-radius:0}.g-button.g-button_pin_clear-brick:before{border-inline-start:0;border-radius:0}.g-button.g-button_pin_circle-brick:before{border-end-end-radius:0;border-end-start-radius:100px;border-start-end-radius:0;border-start-start-radius:100px}.g-button.g-button_pin_brick-circle:before{border-end-end-radius:100px;border-end-start-radius:0;border-start-end-radius:100px;border-start-start-radius:0}.g-button.g-button_pin_circle-clear:before{border-end-end-radius:0;border-end-start-radius:100px;border-inline-end:0;border-start-end-radius:0;border-start-start-radius:100px}.g-button.g-button_pin_clear-circle:before{border-end-end-radius:100px;border-end-start-radius:0;border-inline-start:0;border-start-end-radius:100px;border-start-start-radius:0}.g-button.g-button_pin_round-round:after{border-radius:var(--_--border-radius);border-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_brick-brick:after{border-radius:0}.g-button.g-button_pin_clear-clear:after{border-inline:0;border-radius:0}.g-button.g-button_pin_circle-circle:after{border-radius:100px}.g-button.g-button_pin_round-brick:after{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_brick-round:after{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-end-start-radius:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-button.g-button_pin_round-clear:after{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-button-border-radius,var(--_--border-radius));border-inline-end:0;border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-button-border-radius,var(--_--border-radius))}.g-button.g-button_pin_clear-round:after{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-end-start-radius:0;border-inline-start:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-button-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-button.g-button_pin_brick-clear:after{border-inline-end:0;border-radius:0}.g-button.g-button_pin_clear-brick:after{border-inline-start:0;border-radius:0}.g-button.g-button_pin_circle-brick:after{border-end-end-radius:0;border-end-start-radius:100px;border-start-end-radius:0;border-start-start-radius:100px}.g-button.g-button_pin_brick-circle:after{border-end-end-radius:100px;border-end-start-radius:0;border-start-end-radius:100px;border-start-start-radius:0}.g-button.g-button_pin_circle-clear:after{border-end-end-radius:0;border-end-start-radius:100px;border-inline-end:0;border-start-end-radius:0;border-start-start-radius:100px}.g-button.g-button_pin_clear-circle:after{border-end-end-radius:100px;border-end-start-radius:0;border-inline-start:0;border-start-end-radius:100px;border-start-start-radius:0}.g-button__text{display:inline-block;white-space:nowrap}.g-button__icon{display:inline-block;height:var(--_--height);height:var(--g-button-height,var(--_--height));margin:0 calc((var(--g-button-height, var(--_--height)) - var(--g-button-icon-size, var(--_--icon-size)))/2*-1);position:relative;width:var(--_--height);width:var(--g-button-height,var(--_--height))}.g-button__icon:after{content:" ";visibility:hidden}.g-button__icon-inner{align-items:center;display:flex;inset:0;justify-content:center;position:absolute}.g-button__icon_side_start{order:-1}.g-button__icon_side_end{order:1}.g-button__icon:only-child{margin:0}.g-button:has(.g-button__icon:only-child){--_--padding:0}.g-button:has(.g-button__icon:only-child):not(.g-button_width_max){width:var(--_--height);width:var(--g-button-height,var(--_--height))}.g-button_disabled{cursor:default;pointer-events:none}.g-button_disabled:not(.g-button_loading){--_--text-color:var(--g-color-text-hint);--_--background-color:var(--g-color-base-generic-accent-disabled);--_--background-color-hover:var(--g-color-base-generic-accent-disabled);--_--border-width:0}.g-button_disabled:not(.g-button_loading):is(.g-button_view_normal-contrast,.g-button_view_outlined-contrast){--_--text-color:var(--g-color-text-light-secondary);--_--background-color:var(--g-color-base-light-disabled);--_--background-color-hover:var(--g-color-base-light-disabled)}.g-button_disabled:not(.g-button_loading):is(.g-button_view_flat,.g-button_view_flat-secondary,.g-button_view_flat-info,.g-button_view_flat-success,.g-button_view_flat-warning,.g-button_view_flat-danger,.g-button_view_flat-utility,.g-button_view_flat-action,.g-button_view_flat-contrast){--_--text-color:var(--g-color-text-hint);--_--background-color:#0000;--_--background-color-hover:#0000}.g-button_disabled:not(.g-button_loading).g-button_view_flat-contrast{--_--text-color:var(--g-color-text-light-hint)}.g-button_disabled:active{transform:scale(1)}.g-button_selected:not(.g-button_view_outlined-contrast){--_--border-width:0}.g-button_selected:not(.g-button_view_normal-contrast,.g-button_view_flat-contrast,.g-button_view_outlined-contrast){--_--text-color:var(--g-color-text-brand-heavy);--_--background-color:var(--g-color-base-selection);--_--background-color-hover:var(--g-color-base-selection-hover)}.g-button_selected.g-button_view_flat-info,.g-button_selected.g-button_view_outlined-info{--_--text-color:var(--g-color-text-info-heavy);--_--background-color:var(--g-color-base-info-light);--_--background-color-hover:var(--g-color-base-info-light-hover)}.g-button_selected.g-button_view_flat-success,.g-button_selected.g-button_view_outlined-success{--_--text-color:var(--g-color-text-positive-heavy);--_--background-color:var(--g-color-base-positive-light);--_--background-color-hover:var(--g-color-base-positive-light-hover)}.g-button_selected.g-button_view_flat-warning,.g-button_selected.g-button_view_outlined-warning{--_--text-color:var(--g-color-text-warning-heavy);--_--background-color:var(--g-color-base-warning-light);--_--background-color-hover:var(--g-color-base-warning-light-hover)}.g-button_selected.g-button_view_flat-danger,.g-button_selected.g-button_view_outlined-danger{--_--text-color:var(--g-color-text-danger-heavy);--_--background-color:var(--g-color-base-danger-light);--_--background-color-hover:var(--g-color-base-danger-light-hover)}.g-button_selected.g-button_view_flat-utility,.g-button_selected.g-button_view_outlined-utility{--_--text-color:var(--g-color-text-utility-heavy);--_--background-color:var(--g-color-base-utility-light);--_--background-color-hover:var(--g-color-base-utility-light-hover)}.g-button_loading:before{animation:g-loading-animation .5s linear infinite;background-clip:padding-box;background-image:repeating-linear-gradient(-45deg,var(--_--background-color),var(--_--background-color) 4px,var(--_--background-color-hover) 4px,var(--_--background-color-hover) 8px);background-image:repeating-linear-gradient(-45deg,var(--g-button-background-color,var(--_--background-color)),var(--g-button-background-color,var(--_--background-color)) 4px,var(--g-button-background-color-hover,var(--_--background-color-hover)) 4px,var(--g-button-background-color-hover,var(--_--background-color-hover)) 8px);background-size:150%}.g-button_width_auto{max-width:100%}.g-button_width_max{width:100%}.g-button_width_auto .g-button__text,.g-button_width_max .g-button__text{display:block;overflow:hidden;text-overflow:ellipsis}.g-toast-animation-mobile_enter{opacity:0;position:absolute}.g-toast-animation-mobile_enter_active{animation:g-toast-enter-mobile .6s ease-out forwards;position:relative}.g-toast-animation-mobile_exit_active{animation:g-toast-exit-mobile .6s ease-in forwards}@keyframes g-toast-enter-mobile{0%{height:0;margin-block-end:0;opacity:0;padding:0;transform:translateY(10px)}50%{height:var(--_--item-height);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));opacity:0;padding:var(--g-toaster-item-padding,var(--_--item-padding));transform:translateY(10px)}to{opacity:1;transform:translateX(0)}}@keyframes g-toast-exit-mobile{0%{height:var(--_--item-height);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));opacity:1;padding:var(--g-toaster-item-padding,var(--_--item-padding));transform:translateX(0)}50%{height:var(--_--item-height);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));opacity:0;padding:var(--g-toaster-item-padding,var(--_--item-padding));transform:translateY(10px)}to{height:0;margin-block-end:0;opacity:0;padding:0;transform:translateY(10px)}}.g-toast-animation-desktop_enter{opacity:0;position:absolute}.g-toast-animation-desktop_enter_active{animation:g-toast-enter-desktop .6s ease-out forwards;position:relative}.g-toast-animation-desktop_exit_active{animation:g-toast-exit-desktop .6s ease-in forwards}@keyframes g-toast-enter-desktop{0%{height:0;margin-block-end:0;opacity:0;padding:0;transform:translateX(calc(var(--g-flow-direction)*10px))}50%{height:var(--_--item-height);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));opacity:0;padding:var(--g-toaster-item-padding,var(--_--item-padding));transform:translateX(calc(var(--g-flow-direction)*10px))}to{opacity:1;transform:translateX(0)}}@keyframes g-toast-exit-desktop{0%{height:var(--_--item-height);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));opacity:1;padding:var(--g-toaster-item-padding,var(--_--item-padding));transform:translateX(0)}50%{height:var(--_--item-height);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));opacity:0;padding:var(--g-toaster-item-padding,var(--_--item-padding));transform:translateX(calc(var(--g-flow-direction)*10px))}to{height:0;margin-block-end:0;opacity:0;padding:0;transform:translateX(calc(var(--g-flow-direction)*10px))}}.g-toaster{--_--width:312px;align-items:flex-end;display:flex;flex-direction:column;inset-block-end:0;inset-inline-end:10px;position:fixed;width:var(--_--width);width:var(--g-toaster-width,var(--_--width));z-index:100000}.g-toaster_mobile{--_--width:calc(100% - 20px);inset-inline-start:50%;transform:translate(-50%)}.g-toast{--_--item-gap:10px;--_--item-padding:16px;--_--background-color:var(--g-color-base-background);background-color:var(--_--background-color);border-radius:8px;box-shadow:0 0 15px var(--g-color-sfx-shadow);box-sizing:border-box;display:flex;font-size:var(--g-text-body-2-font-size);margin-block-end:var(--_--item-gap);margin-block-end:var(--g-toaster-item-gap,var(--_--item-gap));overflow:hidden;padding:var(--g-toaster-item-padding,var(--_--item-padding));position:relative;width:inherit;z-index:0}.g-toast_mobile{width:100%}.g-toast_theme_normal{--_--background-color:var(--g-color-base-float)}.g-toast_theme_info{--_--container-background-color:var(--g-color-base-info-light);--_--icon-color:var(--g-color-text-info-heavy)}.g-toast_theme_success{--_--container-background-color:var(--g-color-base-positive-light);--_--icon-color:var(--g-color-text-positive-heavy)}.g-toast_theme_warning{--_--container-background-color:var(--g-color-base-warning-light);--_--icon-color:var(--g-color-text-warning-heavy)}.g-toast_theme_danger{--_--container-background-color:var(--g-color-base-danger-light);--_--icon-color:var(--g-color-text-danger-heavy)}.g-toast_theme_utility{--_--container-background-color:var(--g-color-base-utility-light);--_--icon-color:var(--g-color-text-utility-heavy)}.g-toast__container{grid-row-gap:8px;display:grid;flex:1 1 auto;grid-template-columns:100%;height:100%;min-height:var(--g-text-body-2-line-height);min-width:0;row-gap:8px;width:100%}.g-toast__container:before{background-color:var(--_--container-background-color);content:"";height:100%;inset-block-start:0;inset-inline-start:0;pointer-events:none;position:absolute;width:100%;z-index:-1}.g-toast__icon-container{color:var(--_--icon-color);flex:0 0 auto;padding-block-start:2px;padding-inline-end:8px}.g-toast__title{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height);margin:0}.g-toast__content_without-title,.g-toast__title{padding-inline-end:32px}.g-toast__action{margin-inline-end:8px}.g-toast .g-toast__btn-close{inset-block-start:16px;inset-inline-end:16px;position:absolute}.g-portal__theme-wrapper{display:contents}.g-switch{position:relative}.g-switch__control{cursor:pointer;opacity:0}.g-switch__indicator{display:inline-block;position:relative}.g-switch__indicator:before{background-color:var(--g-color-base-generic-medium);content:"";inset:0;position:absolute;transition:background .1s linear}.g-switch__indicator:after{content:" ";visibility:hidden}.g-switch__slider{background-color:var(--g-color-base-background);border-radius:50%;content:"";position:absolute;transition:transform .15s ease-out}.g-switch__outline{background:none;height:100%;inset-block-start:0;inset-inline-start:0;pointer-events:none;position:absolute;width:100%}.g-switch__control:focus-visible+.g-switch__outline{outline:2px solid var(--g-color-line-focus)}.g-switch_size_m .g-switch__indicator,.g-switch_size_m .g-switch__indicator:before,.g-switch_size_m .g-switch__outline{border-radius:10px;height:20px;width:36px}.g-switch_size_m .g-switch__slider{height:16px;inset-block-start:2px;inset-inline-start:2px;width:16px}.g-switch_size_m .g-switch__text{margin-block-start:3px}.g-switch_size_l .g-switch__indicator,.g-switch_size_l .g-switch__indicator:before,.g-switch_size_l .g-switch__outline{border-radius:12px;height:24px;width:42px}.g-switch_size_l .g-switch__slider{height:18px;inset-block-start:3px;inset-inline-start:3px;width:18px}.g-switch_size_l .g-switch__text{margin-block-start:4px}.g-switch:hover .g-switch__indicator:before{background-color:var(--g-color-base-generic-medium-hover)}.g-switch_checked .g-switch__slider{--_--translate-x:calc(100%*var(--g-flow-direction));transform:translateX(var(--_--translate-x))}.g-switch_checked .g-switch__indicator:before,.g-switch_checked:hover .g-switch__indicator:before{background-color:var(--g-color-base-brand)}.g-switch_disabled .g-switch__indicator:before{background-color:var(--g-color-base-generic-accent-disabled)}.g-switch_disabled.g-switch_checked .g-switch__indicator:before{background-color:var(--g-color-base-brand);opacity:.5}.g-control-label{-webkit-tap-highlight-color:rgba(0,0,0,0);color:var(--g-color-text-primary);cursor:pointer;display:inline-flex;font-family:var(--g-text-body-font-family);font-weight:var(--g-text-body-font-weight);touch-action:manipulation;-webkit-user-select:none;user-select:none}.g-control-label_disabled{cursor:default;pointer-events:none}.g-control-label_size_m{font-size:var(--g-text-body-1-font-size);line-height:15px}.g-control-label_size_l{font-size:var(--g-text-body-2-font-size);line-height:18px}.g-control-label__indicator{flex-shrink:0}.g-control-label__text{flex-grow:1;white-space:normal}.g-control-label_disabled .g-control-label__text{opacity:.6}.g-control-label_size_m .g-control-label__text{margin-inline-start:5px}.g-control-label_size_l .g-control-label__text{margin-inline-start:7px}.g-radio-button{--_--border-radius-inner:calc(var(--_--border-radius) - 3px);background-color:var(--g-color-base-generic);border-radius:var(--_--border-radius);box-sizing:border-box;display:inline-flex;flex-direction:row;font-family:var(--g-text-body-font-family);font-weight:var(--g-text-body-font-weight);position:relative}.g-radio-button__plate{inset-block:0;position:absolute;transition:left .2s,width .2s}.g-radio-button__plate[hidden]{display:none}.g-radio-button__option{border-radius:var(--_--border-radius-inner);cursor:pointer;flex:1 1 auto;font-size:var(--g-text-body-1-font-size);text-align:center;transform:scale(1);transition:color .15s linear;-webkit-user-select:none;user-select:none}.g-radio-button__option-outline{border-radius:var(--_--border-radius-inner);content:"";inset:3px;position:absolute;z-index:-1}.g-radio-button__option-control{border:none;cursor:inherit;height:100%;inset-block-start:0;inset-inline-start:0;margin:0;opacity:0;outline:none;padding:0;position:absolute;width:100%}.g-radio-button__option-control:focus-visible+.g-radio-button__option-outline{outline:2px solid var(--g-color-line-focus)}.g-radio-button__option-text{color:var(--g-color-text-complementary);display:inline-block;white-space:nowrap}.g-radio-button__option-text_icon{align-items:center;display:flex;height:100%}.g-radio-button__option:hover .g-radio-button__option-text,.g-radio-button__option_checked .g-radio-button__option-text{color:var(--g-color-text-primary)}.g-radio-button__option_checked{cursor:default}.g-radio-button__option_disabled{cursor:default;pointer-events:none}.g-radio-button__option_disabled .g-radio-button__option-text{color:var(--g-color-text-hint)}.g-radio-button__option:before,.g-radio-button__plate:before{border-radius:var(--_--border-radius-inner);inset:3px;position:absolute}.g-radio-button__option:before{z-index:-1}.g-radio-button__plate:before,.g-radio-button__plate[hidden]~.g-radio-button__option_checked:before{background-color:var(--g-color-base-background);content:""}.g-radio-button_size_s{--_--border-radius:var(--g-border-radius-s)}.g-radio-button_size_s .g-radio-button__option{height:24px;line-height:24px}.g-radio-button_size_s .g-radio-button__option-text{margin:0 10px}.g-radio-button_size_m{--_--border-radius:var(--g-border-radius-m)}.g-radio-button_size_m .g-radio-button__option{height:28px;line-height:28px}.g-radio-button_size_m .g-radio-button__option-text{margin:0 13px}.g-radio-button_size_l{--_--border-radius:var(--g-border-radius-l)}.g-radio-button_size_l .g-radio-button__option{height:36px;line-height:36px}.g-radio-button_size_l .g-radio-button__option-text{margin:0 18px}.g-radio-button_size_xl{--_--border-radius:var(--g-border-radius-xl)}.g-radio-button_size_xl .g-radio-button__option{font-size:var(--g-text-body-2-font-size);height:44px;line-height:44px}.g-radio-button_size_xl .g-radio-button__option-text{margin:0 25px}.g-radio-button_width_auto{max-width:100%}.g-radio-button_width_max{width:100%}.g-radio-button_width_auto .g-radio-button__option,.g-radio-button_width_max .g-radio-button__option{overflow:hidden}.g-radio-button_width_auto .g-radio-button__option-text,.g-radio-button_width_max .g-radio-button__option-text{display:block;overflow:hidden;text-overflow:ellipsis}.g-tabs{--_--vertical-item-padding:var(--g-tabs-vertical-item-padding,6px 20px);--_--vertical-item-height:var(--g-tabs-vertical-item-height,18px)}.g-tabs_size_m{--_--item-height:36px;--_--item-gap:24px;--_--item-border-width:2px}.g-tabs_size_m .g-tabs__item-counter,.g-tabs_size_m .g-tabs__item-title{font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-tabs_size_l{--_--item-height:40px;--_--item-gap:28px;--_--item-border-width:2px}.g-tabs_size_l .g-tabs__item-counter,.g-tabs_size_l .g-tabs__item-title{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.g-tabs_size_xl{--_--item-height:44px;--_--item-gap:32px;--_--item-border-width:3px}.g-tabs_size_xl .g-tabs__item-counter,.g-tabs_size_xl .g-tabs__item-title{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.g-tabs__item{cursor:pointer;outline:none;-webkit-user-select:none;user-select:none}.g-tabs__item-content{align-items:center;border-radius:var(--g-focus-border-radius);display:flex}.g-tabs__item_overflow .g-tabs__item-content{min-width:0}.g-tabs__item-icon{margin-inline-end:8px}.g-tabs__item-title{white-space:nowrap}.g-tabs__item_overflow .g-tabs__item-title{overflow:hidden;text-overflow:ellipsis}.g-tabs__item-counter,.g-tabs__item-label{margin-inline-start:8px}.g-tabs__item-icon>svg{display:block}.g-tabs_direction_horizontal{align-items:flex-end;box-shadow:inset 0 -1px 0 0 var(--g-color-line-generic);box-shadow:inset 0 calc(var(--g-tabs-border-width, 1px)*-1) 0 0 var(--g-color-line-generic);display:flex;flex-wrap:wrap;overflow:hidden}.g-tabs_direction_horizontal .g-tabs__item{align-items:center;border-block-end:var(--_--item-border-width) solid #0000;border-block-end:var(--g-tabs-item-border-width,var(--_--item-border-width)) solid #0000;box-sizing:border-box;display:flex;height:var(--_--item-height);height:var(--g-tabs-item-height,var(--_--item-height));padding-block-start:var(--_--item-border-width)}.g-tabs_direction_horizontal .g-tabs__item:focus-visible .g-tabs__item-content{outline:2px solid var(--g-color-line-focus);outline-offset:-2px}.g-tabs_direction_horizontal .g-tabs__item-meta{display:none}.g-tabs_direction_horizontal .g-tabs__item-title{color:var(--g-color-text-secondary)}.g-tabs_direction_horizontal .g-tabs__item-counter,.g-tabs_direction_horizontal .g-tabs__item-icon{color:var(--g-color-text-hint)}.g-tabs_direction_horizontal .g-tabs__item:focus-visible .g-tabs__item-title,.g-tabs_direction_horizontal .g-tabs__item:hover .g-tabs__item-title,.g-tabs_direction_horizontal .g-tabs__item_active .g-tabs__item-title{color:var(--g-color-text-primary)}.g-tabs_direction_horizontal .g-tabs__item:focus-visible .g-tabs__item-counter,.g-tabs_direction_horizontal .g-tabs__item:focus-visible .g-tabs__item-icon,.g-tabs_direction_horizontal .g-tabs__item:hover .g-tabs__item-counter,.g-tabs_direction_horizontal .g-tabs__item:hover .g-tabs__item-icon,.g-tabs_direction_horizontal .g-tabs__item_active .g-tabs__item-counter,.g-tabs_direction_horizontal .g-tabs__item_active .g-tabs__item-icon{color:var(--g-color-text-secondary)}.g-tabs_direction_horizontal .g-tabs__item_active,.g-tabs_direction_horizontal .g-tabs__item_active:focus-visible,.g-tabs_direction_horizontal .g-tabs__item_active:hover{border-color:var(--g-color-line-brand)}.g-tabs_direction_horizontal .g-tabs__item_disabled{pointer-events:none}.g-tabs_direction_horizontal .g-tabs__item_disabled .g-tabs__item-title{color:var(--g-color-text-hint)}.g-tabs_direction_horizontal>:not(:last-child){margin-inline-end:var(--_--item-gap);margin-inline-end:var(--g-tabs-item-gap,var(--_--item-gap))}.g-tabs_direction_vertical{display:flex;flex-direction:column}.g-tabs_direction_vertical .g-tabs__item{padding:var(--_--vertical-item-padding)}.g-tabs_direction_vertical .g-tabs__item-title{color:var(--g-color-text-primary);line-height:var(--_--vertical-item-height)}.g-tabs_direction_vertical .g-tabs__item-meta{color:var(--g-color-text-secondary);line-height:var(--_--vertical-item-height)}.g-tabs_direction_vertical .g-tabs__item-counter,.g-tabs_direction_vertical .g-tabs__item-icon{color:var(--g-color-text-secondary)}.g-tabs_direction_vertical .g-tabs__item:focus-visible,.g-tabs_direction_vertical .g-tabs__item:hover{background-color:var(--g-color-base-generic-hover)}.g-tabs_direction_vertical .g-tabs__item_active{background-color:var(--g-color-base-selection)}.g-tabs_direction_vertical .g-tabs__item_active:focus-visible,.g-tabs_direction_vertical .g-tabs__item_active:hover{background-color:var(--g-color-base-selection-hover)}.g-tabs_direction_vertical .g-tabs__item_disabled{pointer-events:none}.g-tabs_direction_vertical .g-tabs__item_disabled .g-tabs__item-title{color:var(--g-color-text-secondary)}.g-label{--_--bg-color:none;--_--bg-color-hover:none;--_--text-color:none;align-items:center;background-color:var(--_--bg-color);border-radius:var(--_--border-radius);box-sizing:border-box;color:var(--_--text-color);display:inline-flex;height:var(--_--height);isolation:isolate;position:relative;transition-duration:.15s;transition-property:opacity,color,background-color;transition-timing-function:ease-in-out}.g-label__text{align-items:baseline;display:flex;font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height);line-height:var(--_--height);margin:0 var(--_--margin-inline);overflow:hidden;text-align:center;white-space:nowrap;width:100%}.g-label__content,.g-label__key{overflow:hidden;text-overflow:ellipsis}.g-label__value{display:flex;opacity:.7;overflow:hidden}.g-label__separator{margin:0 4px}.g-label__main-button{background:none;border:none;border-radius:inherit;color:inherit;cursor:pointer;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);outline:none;padding:0;z-index:1}.g-label__main-button:empty{inset:0;position:absolute}.g-label__addon{align-items:center;border-radius:var(--_--border-radius);display:flex;height:var(--_--height);justify-content:center;width:var(--_--height)}.g-label__addon_side_end,.g-label__addon_side_start{inset-block-start:0;position:absolute}.g-label__addon_side_start{border-end-end-radius:0;border-start-end-radius:0;inset-inline-start:2px}.g-label__addon_side_end{border-end-start-radius:0;border-start-start-radius:0;inset-inline-end:0}.g-label__addon_type_button{background:none;background-color:initial;border:none;color:inherit;color:var(--_--text-color);cursor:pointer;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);outline:none;padding:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,transform .1s ease-out;z-index:2}.g-label__addon_type_button:active{transform:scale(.96)}.g-label_size_xs{--_--height:20px;--_--border-radius:var(--g-border-radius-xs);--_--margin-inline:8px;--_--margin-addon-start:24px;--_--margin-addon-end:22px}.g-label_size_s{--_--height:24px;--_--border-radius:var(--g-border-radius-s);--_--margin-inline:10px;--_--margin-addon-start:28px;--_--margin-addon-end:26px}.g-label_size_m{--_--height:28px;--_--border-radius:var(--g-border-radius-m);--_--margin-inline:12px;--_--margin-addon-start:32px;--_--margin-addon-end:32px}.g-label_disabled{opacity:.7;pointer-events:none}.g-label_interactive{cursor:pointer}.g-label_theme_normal{--_--bg-color:var(--g-color-base-misc-light);--_--bg-color-hover:var(--g-color-base-misc-light-hover);--_--text-color:var(--g-color-text-misc-heavy)}.g-label_theme_success{--_--bg-color:var(--g-color-base-positive-light);--_--bg-color-hover:var(--g-color-base-positive-light-hover);--_--text-color:var(--g-color-text-positive-heavy)}.g-label_theme_info{--_--bg-color:var(--g-color-base-info-light);--_--bg-color-hover:var(--g-color-base-info-light-hover);--_--text-color:var(--g-color-text-info-heavy)}.g-label_theme_warning{--_--bg-color:var(--g-color-base-warning-light);--_--bg-color-hover:var(--g-color-base-warning-light-hover);--_--text-color:var(--g-color-text-warning-heavy)}.g-label_theme_danger{--_--bg-color:var(--g-color-base-danger-light);--_--bg-color-hover:var(--g-color-base-danger-light-hover);--_--text-color:var(--g-color-text-danger-heavy)}.g-label_theme_utility{--_--bg-color:var(--g-color-base-utility-light);--_--bg-color-hover:var(--g-color-base-utility-light-hover);--_--text-color:var(--g-color-text-utility-heavy)}.g-label_theme_unknown{--_--bg-color:var(--g-color-base-neutral-light);--_--bg-color-hover:var(--g-color-base-neutral-light-hover);--_--text-color:var(--g-color-text-complementary)}.g-label_theme_clear{--_--bg-color:#0000;--_--bg-color-hover:var(--g-color-base-simple-hover);--_--text-color:var(--g-color-text-complementary);box-shadow:inset 0 0 0 1px var(--g-color-line-generic)}.g-label:has(.g-label__addon_side_start) .g-label__text{margin-inline-start:var(--_--margin-addon-start)}.g-label:has(.g-label__addon_side_end) .g-label__text{margin-inline-end:var(--_--margin-addon-end)}.g-label__addon_type_button:hover,.g-label_interactive:hover:not(:has(.g-label__addon_type_button:hover)){background-color:var(--_--bg-color-hover)}.g-label__addon_type_button:focus-visible,.g-label__main-button:focus-visible{outline:2px solid var(--g-color-line-focus)}.g-text-input{--_--text-color:var(--g-color-text-primary);--_--label-color:inherit;--_--placeholder-color:var(--g-color-text-hint);--_--background-color:#0000;--_--border-width:1px;--_--focus-outline-color:var(--g-text-input-focus-outline-color);display:inline-block;position:relative;width:100%}.g-text-input__content{background-color:var(--_--background-color);background-color:var(--g-text-input-background-color,var(--_--background-color));border-color:var(--g-text-input-border-color,var(--_--border-color));border-style:solid;border-width:var(--g-text-input-border-width,var(--_--border-width));box-sizing:border-box;color:var(--_--text-color);color:var(--g-text-input-text-color,var(--_--text-color));display:flex;overflow:hidden;width:100%}.g-text-input__content:hover{border-color:var(--g-text-input-border-color-hover,var(--_--border-color-hover))}.g-text-input__content:focus-within{border-color:var(--g-text-input-border-color-active,var(--_--border-color-active));outline:2px solid var(--_--focus-outline-color);outline:2px solid var(--g-text-input-focus-outline-color,var(--_--focus-outline-color));outline-offset:-1px}.g-text-input__control{background-color:initial;border:none;box-sizing:border-box;color:inherit;display:inline-block;flex-grow:1;font-family:var(--g-text-body-font-family);font-weight:var(--g-text-body-font-weight);height:var(--g-text-input-height);margin:0;padding:0;position:relative;vertical-align:top;width:100%}.g-text-input__control::placeholder{color:var(--_--placeholder-color);color:var(--g-text-input-placeholder-color,var(--_--placeholder-color));overflow:hidden;white-space:nowrap}.g-text-input__control:focus{outline:none}.g-text-input__control[type=number]{-webkit-appearance:textfield;appearance:textfield}.g-text-input__label{box-sizing:border-box;color:var(--_--label-color);color:var(--g-text-input-label-color,var(--_--label-color));overflow:hidden;position:absolute;text-overflow:ellipsis;white-space:nowrap;z-index:1}.g-text-input__clear{flex-shrink:0;margin:auto 0}.g-text-input__clear_size_m,.g-text-input__clear_size_s{margin-inline-end:1px}.g-text-input__clear_size_l,.g-text-input__clear_size_xl{margin-inline-end:2px}.g-text-input__error-icon{box-sizing:initial;color:var(--g-color-text-danger);padding-block:var(--_--error-icon-padding-block);padding-inline:var(--_--error-icon-padding-inline)}.g-text-input__additional-content{align-items:center;display:flex}.g-text-input_size_s{--_--error-icon-padding-block:5px;--_--error-icon-padding-inline:0 5px;--_--border-radius:var(--g-border-radius-s)}.g-text-input_size_s .g-text-input__control{--_--input-control-border-width:var( + --g-text-input-border-width,var(--g-text-area-border-width,1px) + );height:calc(24px - var(--_--input-control-border-width)*2);padding:3px 8px}.g-text-input_size_s .g-text-input__control,.g-text-input_size_s .g-text-input__label{font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-short-line-height)}.g-text-input_size_s .g-text-input__label{font-weight:var(--g-text-accent-font-weight);padding-block:3px;padding-inline:8px 4px}.g-text-input_size_s.g-text-input_has-start-content .g-text-input__label{padding-inline-start:2px}.g-text-input_size_s .g-text-input__additional-content{height:22px}.g-text-input_size_s .g-text-input__additional-content_placement_start{padding-inline-start:1px}.g-text-input_size_s .g-text-input__additional-content_placement_end{padding-inline-end:1px}.g-text-input_size_m{--_--error-icon-padding-block:5px;--_--error-icon-padding-inline:0 5px;--_--border-radius:var(--g-border-radius-m)}.g-text-input_size_m .g-text-input__control{--_--input-control-border-width:var( + --g-text-input-border-width,var(--g-text-area-border-width,1px) + );height:calc(28px - var(--_--input-control-border-width)*2);padding:5px 8px}.g-text-input_size_m .g-text-input__control,.g-text-input_size_m .g-text-input__label{font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-short-line-height)}.g-text-input_size_m .g-text-input__label{font-weight:var(--g-text-accent-font-weight);padding-block:5px;padding-inline:8px 4px}.g-text-input_size_m.g-text-input_has-start-content .g-text-input__label{padding-inline-start:2px}.g-text-input_size_m .g-text-input__additional-content{height:26px}.g-text-input_size_m .g-text-input__additional-content_placement_start{padding-inline-start:1px}.g-text-input_size_m .g-text-input__additional-content_placement_end{padding-inline-end:1px}.g-text-input_size_l{--_--error-icon-padding-block:9px;--_--error-icon-padding-inline:0 9px;--_--border-radius:var(--g-border-radius-l)}.g-text-input_size_l .g-text-input__control{--_--input-control-border-width:var( + --g-text-input-border-width,var(--g-text-area-border-width,1px) + );height:calc(36px - var(--_--input-control-border-width)*2);padding:9px 12px}.g-text-input_size_l .g-text-input__control,.g-text-input_size_l .g-text-input__label{font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-short-line-height)}.g-text-input_size_l .g-text-input__label{font-weight:var(--g-text-accent-font-weight);padding-block:9px;padding-inline:12px 4px}.g-text-input_size_l.g-text-input_has-start-content .g-text-input__label{padding-inline-start:3px}.g-text-input_size_l .g-text-input__additional-content{height:34px}.g-text-input_size_l .g-text-input__additional-content_placement_start{padding-inline-start:3px}.g-text-input_size_l .g-text-input__additional-content_placement_end{padding-inline-end:3px}.g-text-input_size_xl{--_--error-icon-padding-block:13px;--_--error-icon-padding-inline:0 13px;--_--border-radius:var(--g-border-radius-xl)}.g-text-input_size_xl .g-text-input__control{--_--input-control-border-width:var( + --g-text-input-border-width,var(--g-text-area-border-width,1px) + );height:calc(44px - var(--_--input-control-border-width)*2);padding:11px 12px}.g-text-input_size_xl .g-text-input__control,.g-text-input_size_xl .g-text-input__label{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.g-text-input_size_xl .g-text-input__label{font-weight:var(--g-text-accent-font-weight);padding-block:11px;padding-inline:12px 4px}.g-text-input_size_xl.g-text-input_has-start-content .g-text-input__label{padding-inline-start:3px}.g-text-input_size_xl .g-text-input__additional-content{height:42px}.g-text-input_size_xl .g-text-input__additional-content_placement_start{padding-inline-start:3px}.g-text-input_size_xl .g-text-input__additional-content_placement_end{padding-inline-end:3px}.g-text-input_view_normal{--_--border-color:var(--g-color-line-generic);--_--border-color-hover:var(--g-color-line-generic-hover);--_--border-color-active:var(--g-color-line-generic-active)}.g-text-input_view_clear{--_--border-color:#0000;--_--border-color-hover:#0000;--_--border-color-active:#0000;--_--border-radius:0}.g-text-input_view_clear .g-text-input__content{border-inline:0}.g-text-input_view_clear .g-text-input__control{padding-inline:0}.g-text-input.g-text-input_pin_round-round .g-text-input__content{border-radius:var(--_--border-radius);border-radius:var(--g-text-input-border-radius,var(--_--border-radius))}.g-text-input.g-text-input_pin_brick-brick .g-text-input__content{border-radius:0}.g-text-input.g-text-input_pin_clear-clear .g-text-input__content{border-inline:0;border-radius:0}.g-text-input.g-text-input_pin_circle-circle .g-text-input__content{border-radius:100px}.g-text-input.g-text-input_pin_round-brick .g-text-input__content{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-text-input-border-radius,var(--_--border-radius));border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-text-input-border-radius,var(--_--border-radius))}.g-text-input.g-text-input_pin_brick-round .g-text-input__content{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-text-input-border-radius,var(--_--border-radius));border-end-start-radius:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-text-input-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-text-input.g-text-input_pin_round-clear .g-text-input__content{border-end-end-radius:0;border-end-start-radius:var(--_--border-radius);border-end-start-radius:var(--g-text-input-border-radius,var(--_--border-radius));border-inline-end:0;border-start-end-radius:0;border-start-start-radius:var(--_--border-radius);border-start-start-radius:var(--g-text-input-border-radius,var(--_--border-radius))}.g-text-input.g-text-input_pin_clear-round .g-text-input__content{border-end-end-radius:var(--_--border-radius);border-end-end-radius:var(--g-text-input-border-radius,var(--_--border-radius));border-end-start-radius:0;border-inline-start:0;border-start-end-radius:var(--_--border-radius);border-start-end-radius:var(--g-text-input-border-radius,var(--_--border-radius));border-start-start-radius:0}.g-text-input.g-text-input_pin_brick-clear .g-text-input__content{border-inline-end:0;border-radius:0}.g-text-input.g-text-input_pin_clear-brick .g-text-input__content{border-inline-start:0;border-radius:0}.g-text-input.g-text-input_pin_circle-brick .g-text-input__content{border-end-end-radius:0;border-end-start-radius:100px;border-start-end-radius:0;border-start-start-radius:100px}.g-text-input.g-text-input_pin_brick-circle .g-text-input__content{border-end-end-radius:100px;border-end-start-radius:0;border-start-end-radius:100px;border-start-start-radius:0}.g-text-input.g-text-input_pin_circle-clear .g-text-input__content{border-end-end-radius:0;border-end-start-radius:100px;border-inline-end:0;border-start-end-radius:0;border-start-start-radius:100px}.g-text-input.g-text-input_pin_clear-circle .g-text-input__content{border-end-end-radius:100px;border-end-start-radius:0;border-inline-start:0;border-start-end-radius:100px;border-start-start-radius:0}.g-text-input_disabled{--_--text-color:var(--g-color-text-hint);--_--background-color:var(--g-color-base-generic-accent-disabled);--_--border-color:#0000;--_--border-color-hover:#0000;--_--border-color-active:#0000}.g-text-input_has-scrollbar .g-text-input__clear{inset-inline-end:var(--g-scrollbar-width)}.g-text-input_has-start-content .g-text-input__control{padding-inline-start:2px}.g-text-input_has-end-content .g-text-input__control{padding-inline-end:2px}.g-text-input_state_error.g-text-input_view_normal .g-text-input__content,.g-text-input_state_error.g-text-input_view_normal .g-text-input__content:focus-within,.g-text-input_state_error.g-text-input_view_normal .g-text-input__content:hover{border-color:var(--g-color-line-danger)}.g-text-input_state_error.g-text-input_view_normal .g-text-input__content:focus-within{--_--focus-outline-color:var(--g-color-line-danger)}.g-text-input_state_error.g-text-input_view_clear .g-text-input__content,.g-text-input_state_error.g-text-input_view_clear .g-text-input__content:focus-within,.g-text-input_state_error.g-text-input_view_clear .g-text-input__content:hover{border-block-end:1px solid var(--g-color-line-danger)}.g-text-input_state_error.g-text-input_view_clear .g-text-input__content:focus-within{--_--focus-outline-color:var(--g-color-line-danger)}.g-clear-button{--g-button-text-color:var(--g-color-text-hint);--g-button-text-color-hover:var(--g-color-text-primary);--g-button-background-color:#0000;--g-button-background-color-hover:#0000}.g-popover{display:inline-block;position:relative}.g-popover:not(.g-popover_disabled){cursor:pointer}.g-popover__handler{display:inline-block}.g-popover__tooltip{--_--padding:16px;--_--close-offset:8px;--_--close-size:24px}.g-popover__tooltip-popup-content{box-sizing:border-box;cursor:default;max-width:300px;max-width:var(--g-popover-max-width,300px);min-height:40px;padding:var(--g-popover-padding,var(--_--padding))}.g-popover__tooltip-title{display:inline-flex;font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height);margin:0 0 12px}.g-popover__tooltip-buttons{display:flex;flex-wrap:wrap;gap:5px;margin-block-start:20px}.g-popover__tooltip-button{flex:1 1}.g-popover__tooltip-close{inset-block-start:var(--_--close-offset);inset-inline-end:var(--_--close-offset);position:absolute}.g-popover__tooltip-content{font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height);overflow-wrap:break-word}.g-popover__tooltip-content_secondary{opacity:.7}.g-popover__tooltip-links>*{margin-block-start:8px}.g-popover__tooltip-links>:first-child{margin-block-start:0}.g-popover__tooltip-content+.g-popover__tooltip-links>:first-child{margin-block-start:12px}.g-popover__tooltip-link{display:inline-block;font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-popover__tooltip_theme_announcement .g-popover__tooltip_theme_announcement,.g-popover__tooltip_theme_announcement.g-popover__tooltip_theme_info,.g-popover__tooltip_theme_info .g-popover__tooltip_theme_announcement,.g-popover__tooltip_theme_info.g-popover__tooltip_theme_info{color:var(--g-color-text-primary)}.g-popover__tooltip_force-links-appearance.g-popover__tooltip_theme_info .g-popover__tooltip-content a:not(.g-button),.g-popover__tooltip_theme_announcement .g-popover__tooltip-content a:not(.g-button){color:var(--g-color-text-link);text-decoration:none}.g-popover__tooltip_force-links-appearance.g-popover__tooltip_theme_info .g-popover__tooltip-content a:not(.g-button):hover,.g-popover__tooltip_theme_announcement .g-popover__tooltip-content a:not(.g-button):hover{color:var(--g-color-text-link-hover)}.g-popover__tooltip_theme_announcement{--g-popup-background-color:var(--g-color-base-simple-hover-solid);--g-popup-border-color:var(--g-color-base-simple-hover-solid)}.g-popover__tooltip_theme_special{--g-popup-background-color:var(--g-color-base-brand);--g-popup-border-color:var(--g-color-base-brand);color:var(--g-color-text-light-primary)}.g-popover__tooltip_theme_special .g-popover__tooltip-content a:not(.g-button){color:var(--g-color-text-light-primary);font-weight:var(--g-text-accent-font-weight)}.g-popover__tooltip_theme_special .g-popover__tooltip-content a:not(.g-button):hover{color:var(--g-color-text-light-secondary)}.g-popover__tooltip_theme_special .g-link{color:var(--g-color-text-light-primary)}.g-popover__tooltip_theme_special .g-link:hover{color:var(--g-color-text-light-secondary)}.g-popover__tooltip_size_l{--_--padding:24px}.g-popover__tooltip_size_l .g-popover__tooltip-title{font-size:var(--g-text-header-1-font-size);font-weight:var(--g-text-header-font-weight);line-height:var(--g-text-header-1-line-height)}.g-popover__tooltip_size_l .g-popover__tooltip-content{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.g-popover__tooltip_with-close .g-popover__tooltip-content,.g-popover__tooltip_with-close .g-popover__tooltip-title{padding-inline-end:calc(var(--_--close-offset) + var(--_--close-size) - var(--_--padding))}.g-popup{--_--background-color:var(--g-popup-background-color,var(--g-color-base-float));--_--border-color:var(--g-popup-border-color,var(--g-color-line-generic-solid));--_--border-width:var(--g-popup-border-width,1px);visibility:hidden;z-index:1000}.g-popup_exit_active,.g-popup_open{visibility:visible}.g-popup_exit_active[data-popper-placement*=bottom] .g-popup__content{animation-name:g-popup-bottom}.g-popup_exit_active[data-popper-placement*=top] .g-popup__content{animation-name:g-popup-top}.g-popup_exit_active[data-popper-placement*=left] .g-popup__content{animation-name:g-popup-left}.g-popup_exit_active[data-popper-placement*=right] .g-popup__content{animation-name:g-popup-right}.g-popup_appear_active[data-popper-placement*=bottom] .g-popup__content,.g-popup_enter_active[data-popper-placement*=bottom] .g-popup__content{animation-name:g-popup-bottom-open}.g-popup_appear_active[data-popper-placement*=top] .g-popup__content,.g-popup_enter_active[data-popper-placement*=top] .g-popup__content{animation-name:g-popup-top-open}.g-popup_appear_active[data-popper-placement*=left] .g-popup__content,.g-popup_enter_active[data-popper-placement*=left] .g-popup__content{animation-name:g-popup-left-open}.g-popup_appear_active[data-popper-placement*=right] .g-popup__content,.g-popup_enter_active[data-popper-placement*=right] .g-popup__content{animation-name:g-popup-right-open}.g-popup[data-popper-placement*=bottom] .g-popup__arrow{inset-block-start:-9px}.g-popup[data-popper-placement*=top] .g-popup__arrow{inset-block-end:-9px}.g-popup[data-popper-placement*=top] .g-popup__arrow-content{transform:rotate(180deg)}.g-popup[data-popper-placement*=left] .g-popup__arrow{right:-9px}.g-popup[data-popper-placement*=left] .g-popup__arrow-content{transform:rotate(90deg)}.g-popup[data-popper-placement*=right] .g-popup__arrow{left:-9px}.g-popup[data-popper-placement*=right] .g-popup__arrow-content{transform:rotate(-90deg)}.g-popup__content{animation-duration:.1s;animation-fill-mode:forwards;animation-timing-function:ease-out;background-color:var(--_--background-color);border-radius:4px;box-shadow:0 0 0 var(--_--border-width) var(--_--border-color),0 8px 20px var(--_--border-width) var(--g-color-sfx-shadow);outline:none;position:relative}.g-popup__content>.g-popup__arrow+*,.g-popup__content>:first-child:not(.g-popup__arrow){border-start-end-radius:inherit;border-start-start-radius:inherit}.g-popup__content>:last-child{border-end-end-radius:inherit;border-end-start-radius:inherit}.g-popup__arrow-content{display:flex;height:18px;overflow:hidden;position:relative;width:18px}.g-popup__arrow-circle-wrapper{background-color:initial;height:9px;overflow:hidden;position:relative;width:9px}.g-popup__arrow-circle{border-radius:50%;box-shadow:inset 0 0 0 calc(5px - var(--_--border-width)) var(--_--background-color),inset 0 0 0 5px var(--_--border-color);box-sizing:border-box;height:30px;position:absolute;width:28px}.g-popup__arrow-circle_left{inset-block-end:-4px;inset-inline-end:-5px}.g-popup__arrow-circle_right{inset-block-end:-4px;inset-inline-start:-5px}@keyframes g-popup-bottom{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}@keyframes g-popup-bottom-open{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes g-popup-top{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}@keyframes g-popup-top-open{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes g-popup-left{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-10px)}}@keyframes g-popup-left-open{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}@keyframes g-popup-right{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(10px)}}@keyframes g-popup-right-open{0%{opacity:0;transform:translateX(10px)}to{opacity:1;transform:translateX(0)}}.g-link{-webkit-tap-highlight-color:rgba(0,0,0,0);border-radius:var(--g-focus-border-radius);cursor:pointer;text-decoration:none;touch-action:manipulation}.g-link:focus-visible{outline:2px solid var(--g-color-line-focus)}.g-link_view_normal{color:var(--g-color-text-link)}.g-link_view_primary{color:var(--g-color-text-primary)}.g-link_view_secondary{color:var(--g-color-text-secondary)}.g-link_view_normal:hover,.g-link_view_primary:hover,.g-link_view_secondary:hover{color:var(--g-color-text-link-hover)}.g-link_visitable:visited{color:var(--g-color-text-link-visited)}.g-link_visitable:visited:hover{color:var(--g-color-text-link-visited-hover)}.g-link_underline{text-decoration:underline}.g-outer-additional-content{display:flex;justify-content:space-between;vertical-align:top}.g-outer-additional-content__error,.g-outer-additional-content__note{margin-block-start:2px}.g-outer-additional-content__error{color:var(--g-color-text-danger);font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-outer-additional-content__error:not(:last-child){margin-inline-end:var(--g-spacing-2)}.g-outer-additional-content__note{margin-inline-start:auto}@keyframes g-pulse{50%{opacity:15%}}.g-loader{align-items:center;display:inline-flex}.g-loader__center,.g-loader__left,.g-loader__right{animation:g-pulse .8s ease infinite;background:var(--g-color-base-brand)}.g-loader__left{animation-delay:.2s}.g-loader__center{animation-delay:.4s}.g-loader__right{animation-delay:.6s}.g-loader_size_s .g-loader__left{height:13.33333px;width:5px}.g-loader_size_s .g-loader__center{height:20px;margin-inline-start:5px;width:5px}.g-loader_size_s .g-loader__right{height:13.33333px;margin-inline-start:5px;width:5px}.g-loader_size_m .g-loader__left{height:18.66667px;width:7px}.g-loader_size_m .g-loader__center{height:28px;margin-inline-start:7px;width:7px}.g-loader_size_m .g-loader__right{height:18.66667px;margin-inline-start:7px;width:7px}.g-loader_size_l .g-loader__left{height:24px;width:9px}.g-loader_size_l .g-loader__center{height:36px;margin-inline-start:9px;width:9px}.g-loader_size_l .g-loader__right{height:24px;margin-inline-start:9px;width:9px}.g-flex{display:flex}.g-flex_inline{display:inline-flex}.g-flex_center-content{align-items:center;justify-content:center}.g-flex_s_0{margin-block-start:calc(var(--g-spacing-0)*-1)!important;margin-inline-start:calc(var(--g-spacing-0)*-1)!important}.g-flex_s_0>*{padding-block-start:var(--g-spacing-0)!important;padding-inline-start:var(--g-spacing-0)!important}.g-flex_s_half{margin-block-start:calc(var(--g-spacing-half)*-1)!important;margin-inline-start:calc(var(--g-spacing-half)*-1)!important}.g-flex_s_half>*{padding-block-start:var(--g-spacing-half)!important;padding-inline-start:var(--g-spacing-half)!important}.g-flex_s_1{margin-block-start:calc(var(--g-spacing-1)*-1)!important;margin-inline-start:calc(var(--g-spacing-1)*-1)!important}.g-flex_s_1>*{padding-block-start:var(--g-spacing-1)!important;padding-inline-start:var(--g-spacing-1)!important}.g-flex_s_2{margin-block-start:calc(var(--g-spacing-2)*-1)!important;margin-inline-start:calc(var(--g-spacing-2)*-1)!important}.g-flex_s_2>*{padding-block-start:var(--g-spacing-2)!important;padding-inline-start:var(--g-spacing-2)!important}.g-flex_s_3{margin-block-start:calc(var(--g-spacing-3)*-1)!important;margin-inline-start:calc(var(--g-spacing-3)*-1)!important}.g-flex_s_3>*{padding-block-start:var(--g-spacing-3)!important;padding-inline-start:var(--g-spacing-3)!important}.g-flex_s_4{margin-block-start:calc(var(--g-spacing-4)*-1)!important;margin-inline-start:calc(var(--g-spacing-4)*-1)!important}.g-flex_s_4>*{padding-block-start:var(--g-spacing-4)!important;padding-inline-start:var(--g-spacing-4)!important}.g-flex_s_5{margin-block-start:calc(var(--g-spacing-5)*-1)!important;margin-inline-start:calc(var(--g-spacing-5)*-1)!important}.g-flex_s_5>*{padding-block-start:var(--g-spacing-5)!important;padding-inline-start:var(--g-spacing-5)!important}.g-flex_s_6{margin-block-start:calc(var(--g-spacing-6)*-1)!important;margin-inline-start:calc(var(--g-spacing-6)*-1)!important}.g-flex_s_6>*{padding-block-start:var(--g-spacing-6)!important;padding-inline-start:var(--g-spacing-6)!important}.g-flex_s_7{margin-block-start:calc(var(--g-spacing-7)*-1)!important;margin-inline-start:calc(var(--g-spacing-7)*-1)!important}.g-flex_s_7>*{padding-block-start:var(--g-spacing-7)!important;padding-inline-start:var(--g-spacing-7)!important}.g-flex_s_8{margin-block-start:calc(var(--g-spacing-8)*-1)!important;margin-inline-start:calc(var(--g-spacing-8)*-1)!important}.g-flex_s_8>*{padding-block-start:var(--g-spacing-8)!important;padding-inline-start:var(--g-spacing-8)!important}.g-flex_s_9{margin-block-start:calc(var(--g-spacing-9)*-1)!important;margin-inline-start:calc(var(--g-spacing-9)*-1)!important}.g-flex_s_9>*{padding-block-start:var(--g-spacing-9)!important;padding-inline-start:var(--g-spacing-9)!important}.g-flex_s_10{margin-block-start:calc(var(--g-spacing-10)*-1)!important;margin-inline-start:calc(var(--g-spacing-10)*-1)!important}.g-flex_s_10>*{padding-block-start:var(--g-spacing-10)!important;padding-inline-start:var(--g-spacing-10)!important}.g-box{box-sizing:border-box}.g-box_overflow_hidden{overflow:hidden}.g-box_overflow_auto{overflow:auto}.g-box_overflow_x{overflow:hidden auto}.g-box_overflow_y{overflow:auto hidden}.g-s__m_0{margin:var(--g-spacing-0)}.g-s__mr_0{margin-inline-end:var(--g-spacing-0)}.g-s__ml_0{margin-inline-start:var(--g-spacing-0)}.g-s__mt_0{margin-block-start:var(--g-spacing-0)}.g-s__mb_0{margin-block-end:var(--g-spacing-0)}.g-s__mx_0{margin-inline:var(--g-spacing-0)}.g-s__my_0{margin-block:var(--g-spacing-0)}.g-s__p_0{padding:var(--g-spacing-0)}.g-s__pl_0{padding-inline-start:var(--g-spacing-0)}.g-s__pr_0{padding-inline-end:var(--g-spacing-0)}.g-s__pb_0{padding-block-end:var(--g-spacing-0)}.g-s__pt_0{padding-block-start:var(--g-spacing-0)}.g-s__py_0{padding-block:var(--g-spacing-0)}.g-s__px_0{padding-inline:var(--g-spacing-0)}.g-s__m_half{margin:var(--g-spacing-half)}.g-s__mr_half{margin-inline-end:var(--g-spacing-half)}.g-s__ml_half{margin-inline-start:var(--g-spacing-half)}.g-s__mt_half{margin-block-start:var(--g-spacing-half)}.g-s__mb_half{margin-block-end:var(--g-spacing-half)}.g-s__mx_half{margin-inline:var(--g-spacing-half)}.g-s__my_half{margin-block:var(--g-spacing-half)}.g-s__p_half{padding:var(--g-spacing-half)}.g-s__pl_half{padding-inline-start:var(--g-spacing-half)}.g-s__pr_half{padding-inline-end:var(--g-spacing-half)}.g-s__pb_half{padding-block-end:var(--g-spacing-half)}.g-s__pt_half{padding-block-start:var(--g-spacing-half)}.g-s__py_half{padding-block:var(--g-spacing-half)}.g-s__px_half{padding-inline:var(--g-spacing-half)}.g-s__m_1{margin:var(--g-spacing-1)}.g-s__mr_1{margin-inline-end:var(--g-spacing-1)}.g-s__ml_1{margin-inline-start:var(--g-spacing-1)}.g-s__mt_1{margin-block-start:var(--g-spacing-1)}.g-s__mb_1{margin-block-end:var(--g-spacing-1)}.g-s__mx_1{margin-inline:var(--g-spacing-1)}.g-s__my_1{margin-block:var(--g-spacing-1)}.g-s__p_1{padding:var(--g-spacing-1)}.g-s__pl_1{padding-inline-start:var(--g-spacing-1)}.g-s__pr_1{padding-inline-end:var(--g-spacing-1)}.g-s__pb_1{padding-block-end:var(--g-spacing-1)}.g-s__pt_1{padding-block-start:var(--g-spacing-1)}.g-s__py_1{padding-block:var(--g-spacing-1)}.g-s__px_1{padding-inline:var(--g-spacing-1)}.g-s__m_2{margin:var(--g-spacing-2)}.g-s__mr_2{margin-inline-end:var(--g-spacing-2)}.g-s__ml_2{margin-inline-start:var(--g-spacing-2)}.g-s__mt_2{margin-block-start:var(--g-spacing-2)}.g-s__mb_2{margin-block-end:var(--g-spacing-2)}.g-s__mx_2{margin-inline:var(--g-spacing-2)}.g-s__my_2{margin-block:var(--g-spacing-2)}.g-s__p_2{padding:var(--g-spacing-2)}.g-s__pl_2{padding-inline-start:var(--g-spacing-2)}.g-s__pr_2{padding-inline-end:var(--g-spacing-2)}.g-s__pb_2{padding-block-end:var(--g-spacing-2)}.g-s__pt_2{padding-block-start:var(--g-spacing-2)}.g-s__py_2{padding-block:var(--g-spacing-2)}.g-s__px_2{padding-inline:var(--g-spacing-2)}.g-s__m_3{margin:var(--g-spacing-3)}.g-s__mr_3{margin-inline-end:var(--g-spacing-3)}.g-s__ml_3{margin-inline-start:var(--g-spacing-3)}.g-s__mt_3{margin-block-start:var(--g-spacing-3)}.g-s__mb_3{margin-block-end:var(--g-spacing-3)}.g-s__mx_3{margin-inline:var(--g-spacing-3)}.g-s__my_3{margin-block:var(--g-spacing-3)}.g-s__p_3{padding:var(--g-spacing-3)}.g-s__pl_3{padding-inline-start:var(--g-spacing-3)}.g-s__pr_3{padding-inline-end:var(--g-spacing-3)}.g-s__pb_3{padding-block-end:var(--g-spacing-3)}.g-s__pt_3{padding-block-start:var(--g-spacing-3)}.g-s__py_3{padding-block:var(--g-spacing-3)}.g-s__px_3{padding-inline:var(--g-spacing-3)}.g-s__m_4{margin:var(--g-spacing-4)}.g-s__mr_4{margin-inline-end:var(--g-spacing-4)}.g-s__ml_4{margin-inline-start:var(--g-spacing-4)}.g-s__mt_4{margin-block-start:var(--g-spacing-4)}.g-s__mb_4{margin-block-end:var(--g-spacing-4)}.g-s__mx_4{margin-inline:var(--g-spacing-4)}.g-s__my_4{margin-block:var(--g-spacing-4)}.g-s__p_4{padding:var(--g-spacing-4)}.g-s__pl_4{padding-inline-start:var(--g-spacing-4)}.g-s__pr_4{padding-inline-end:var(--g-spacing-4)}.g-s__pb_4{padding-block-end:var(--g-spacing-4)}.g-s__pt_4{padding-block-start:var(--g-spacing-4)}.g-s__py_4{padding-block:var(--g-spacing-4)}.g-s__px_4{padding-inline:var(--g-spacing-4)}.g-s__m_5{margin:var(--g-spacing-5)}.g-s__mr_5{margin-inline-end:var(--g-spacing-5)}.g-s__ml_5{margin-inline-start:var(--g-spacing-5)}.g-s__mt_5{margin-block-start:var(--g-spacing-5)}.g-s__mb_5{margin-block-end:var(--g-spacing-5)}.g-s__mx_5{margin-inline:var(--g-spacing-5)}.g-s__my_5{margin-block:var(--g-spacing-5)}.g-s__p_5{padding:var(--g-spacing-5)}.g-s__pl_5{padding-inline-start:var(--g-spacing-5)}.g-s__pr_5{padding-inline-end:var(--g-spacing-5)}.g-s__pb_5{padding-block-end:var(--g-spacing-5)}.g-s__pt_5{padding-block-start:var(--g-spacing-5)}.g-s__py_5{padding-block:var(--g-spacing-5)}.g-s__px_5{padding-inline:var(--g-spacing-5)}.g-s__m_6{margin:var(--g-spacing-6)}.g-s__mr_6{margin-inline-end:var(--g-spacing-6)}.g-s__ml_6{margin-inline-start:var(--g-spacing-6)}.g-s__mt_6{margin-block-start:var(--g-spacing-6)}.g-s__mb_6{margin-block-end:var(--g-spacing-6)}.g-s__mx_6{margin-inline:var(--g-spacing-6)}.g-s__my_6{margin-block:var(--g-spacing-6)}.g-s__p_6{padding:var(--g-spacing-6)}.g-s__pl_6{padding-inline-start:var(--g-spacing-6)}.g-s__pr_6{padding-inline-end:var(--g-spacing-6)}.g-s__pb_6{padding-block-end:var(--g-spacing-6)}.g-s__pt_6{padding-block-start:var(--g-spacing-6)}.g-s__py_6{padding-block:var(--g-spacing-6)}.g-s__px_6{padding-inline:var(--g-spacing-6)}.g-s__m_7{margin:var(--g-spacing-7)}.g-s__mr_7{margin-inline-end:var(--g-spacing-7)}.g-s__ml_7{margin-inline-start:var(--g-spacing-7)}.g-s__mt_7{margin-block-start:var(--g-spacing-7)}.g-s__mb_7{margin-block-end:var(--g-spacing-7)}.g-s__mx_7{margin-inline:var(--g-spacing-7)}.g-s__my_7{margin-block:var(--g-spacing-7)}.g-s__p_7{padding:var(--g-spacing-7)}.g-s__pl_7{padding-inline-start:var(--g-spacing-7)}.g-s__pr_7{padding-inline-end:var(--g-spacing-7)}.g-s__pb_7{padding-block-end:var(--g-spacing-7)}.g-s__pt_7{padding-block-start:var(--g-spacing-7)}.g-s__py_7{padding-block:var(--g-spacing-7)}.g-s__px_7{padding-inline:var(--g-spacing-7)}.g-s__m_8{margin:var(--g-spacing-8)}.g-s__mr_8{margin-inline-end:var(--g-spacing-8)}.g-s__ml_8{margin-inline-start:var(--g-spacing-8)}.g-s__mt_8{margin-block-start:var(--g-spacing-8)}.g-s__mb_8{margin-block-end:var(--g-spacing-8)}.g-s__mx_8{margin-inline:var(--g-spacing-8)}.g-s__my_8{margin-block:var(--g-spacing-8)}.g-s__p_8{padding:var(--g-spacing-8)}.g-s__pl_8{padding-inline-start:var(--g-spacing-8)}.g-s__pr_8{padding-inline-end:var(--g-spacing-8)}.g-s__pb_8{padding-block-end:var(--g-spacing-8)}.g-s__pt_8{padding-block-start:var(--g-spacing-8)}.g-s__py_8{padding-block:var(--g-spacing-8)}.g-s__px_8{padding-inline:var(--g-spacing-8)}.g-s__m_9{margin:var(--g-spacing-9)}.g-s__mr_9{margin-inline-end:var(--g-spacing-9)}.g-s__ml_9{margin-inline-start:var(--g-spacing-9)}.g-s__mt_9{margin-block-start:var(--g-spacing-9)}.g-s__mb_9{margin-block-end:var(--g-spacing-9)}.g-s__mx_9{margin-inline:var(--g-spacing-9)}.g-s__my_9{margin-block:var(--g-spacing-9)}.g-s__p_9{padding:var(--g-spacing-9)}.g-s__pl_9{padding-inline-start:var(--g-spacing-9)}.g-s__pr_9{padding-inline-end:var(--g-spacing-9)}.g-s__pb_9{padding-block-end:var(--g-spacing-9)}.g-s__pt_9{padding-block-start:var(--g-spacing-9)}.g-s__py_9{padding-block:var(--g-spacing-9)}.g-s__px_9{padding-inline:var(--g-spacing-9)}.g-s__m_10{margin:var(--g-spacing-10)}.g-s__mr_10{margin-inline-end:var(--g-spacing-10)}.g-s__ml_10{margin-inline-start:var(--g-spacing-10)}.g-s__mt_10{margin-block-start:var(--g-spacing-10)}.g-s__mb_10{margin-block-end:var(--g-spacing-10)}.g-s__mx_10{margin-inline:var(--g-spacing-10)}.g-s__my_10{margin-block:var(--g-spacing-10)}.g-s__p_10{padding:var(--g-spacing-10)}.g-s__pl_10{padding-inline-start:var(--g-spacing-10)}.g-s__pr_10{padding-inline-end:var(--g-spacing-10)}.g-s__pb_10{padding-block-end:var(--g-spacing-10)}.g-s__pt_10{padding-block-start:var(--g-spacing-10)}.g-s__py_10{padding-block:var(--g-spacing-10)}.g-s__px_10{padding-inline:var(--g-spacing-10)}.g-text_variant_display-1{font-size:var(--g-text-display-1-font-size);font-weight:var(--g-text-display-font-weight);line-height:var(--g-text-display-1-line-height)}.g-text_variant_display-2{font-size:var(--g-text-display-2-font-size);font-weight:var(--g-text-display-font-weight);line-height:var(--g-text-display-2-line-height)}.g-text_variant_display-3{font-size:var(--g-text-display-3-font-size);font-weight:var(--g-text-display-font-weight);line-height:var(--g-text-display-3-line-height)}.g-text_variant_display-4{font-size:var(--g-text-display-4-font-size);font-weight:var(--g-text-display-font-weight);line-height:var(--g-text-display-4-line-height)}.g-text_variant_code-1{font-size:var(--g-text-code-1-font-size);line-height:var(--g-text-code-1-line-height)}.g-text_variant_code-1,.g-text_variant_code-2{font-family:var(--g-font-family-monospace);font-weight:var(--g-text-code-font-weight)}.g-text_variant_code-2{font-size:var(--g-text-code-2-font-size);line-height:var(--g-text-code-2-line-height)}.g-text_variant_code-3{font-size:var(--g-text-code-3-font-size);line-height:var(--g-text-code-3-line-height)}.g-text_variant_code-3,.g-text_variant_code-inline-1{font-family:var(--g-font-family-monospace);font-weight:var(--g-text-code-font-weight)}.g-text_variant_code-inline-1{font-size:var(--g-text-code-inline-1-font-size);line-height:var(--g-text-code-inline-1-line-height)}.g-text_variant_code-inline-2{font-size:var(--g-text-code-inline-2-font-size);line-height:var(--g-text-code-inline-2-line-height)}.g-text_variant_code-inline-2,.g-text_variant_code-inline-3{font-family:var(--g-font-family-monospace);font-weight:var(--g-text-code-font-weight)}.g-text_variant_code-inline-3{font-size:var(--g-text-code-inline-3-font-size);line-height:var(--g-text-code-inline-3-line-height)}.g-text_variant_body-1{font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-text_variant_body-2{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.g-text_variant_body-3{font-size:var(--g-text-body-3-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-3-line-height)}.g-text_variant_body-short{font-size:var(--g-text-body-short-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-short-line-height)}.g-text_variant_caption-1{font-size:var(--g-text-caption-1-font-size);font-weight:var(--g-text-caption-font-weight);line-height:var(--g-text-caption-1-line-height)}.g-text_variant_caption-2{font-size:var(--g-text-caption-2-font-size);font-weight:var(--g-text-caption-font-weight);line-height:var(--g-text-caption-2-line-height)}.g-text_variant_header-1{font-size:var(--g-text-header-1-font-size);font-weight:var(--g-text-header-font-weight);line-height:var(--g-text-header-1-line-height)}.g-text_variant_header-2{font-size:var(--g-text-header-2-font-size);font-weight:var(--g-text-header-font-weight);line-height:var(--g-text-header-2-line-height)}.g-text_variant_subheader-1{font-size:var(--g-text-subheader-1-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-1-line-height)}.g-text_variant_subheader-2{font-size:var(--g-text-subheader-2-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-2-line-height)}.g-text_variant_subheader-3{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.g-text_ellipsis{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.g-text_ellipsis-lines{-webkit-box-orient:vertical;-webkit-line-clamp:2;align-self:center;display:-webkit-box;overflow:hidden;white-space:normal}.g-text_ws_nowrap{white-space:nowrap}.g-text_ws_break-spaces{white-space:break-spaces}.g-text_wb_break-all{word-break:break-all}.g-text_wb_break-word{word-break:break-word}.g-color-text_color_primary{color:var(--g-color-text-primary)}.g-color-text_color_complementary{color:var(--g-color-text-complementary)}.g-color-text_color_secondary{color:var(--g-color-text-secondary)}.g-color-text_color_hint{color:var(--g-color-text-hint)}.g-color-text_color_info{color:var(--g-color-text-info)}.g-color-text_color_info-heavy{color:var(--g-color-text-info-heavy)}.g-color-text_color_positive{color:var(--g-color-text-positive)}.g-color-text_color_positive-heavy{color:var(--g-color-text-positive-heavy)}.g-color-text_color_warning{color:var(--g-color-text-warning)}.g-color-text_color_warning-heavy{color:var(--g-color-text-warning-heavy)}.g-color-text_color_danger{color:var(--g-color-text-danger)}.g-color-text_color_danger-heavy{color:var(--g-color-text-danger-heavy)}.g-color-text_color_utility{color:var(--g-color-text-utility)}.g-color-text_color_utility-heavy{color:var(--g-color-text-utility-heavy)}.g-color-text_color_misc{color:var(--g-color-text-misc)}.g-color-text_color_misc-heavy{color:var(--g-color-text-misc-heavy)}.g-color-text_color_brand{color:var(--g-color-text-brand)}.g-color-text_color_link{color:var(--g-color-text-link)}.g-color-text_color_link-hover{color:var(--g-color-text-link-hover)}.g-color-text_color_link-visited{color:var(--g-color-text-link-visited)}.g-color-text_color_link-visited-hover{color:var(--g-color-text-link-visited-hover)}.g-color-text_color_dark-primary{color:var(--g-color-text-dark-primary)}.g-color-text_color_dark-complementary{color:var(--g-color-text-dark-complementary)}.g-color-text_color_dark-secondary{color:var(--g-color-text-dark-secondary)}.g-color-text_color_light-primary{color:var(--g-color-text-light-primary)}.g-color-text_color_light-complementary{color:var(--g-color-text-light-complementary)}.g-color-text_color_light-secondary{color:var(--g-color-text-light-secondary)}.g-color-text_color_light-hint{color:var(--g-color-text-light-hint)}.g-color-text_color_inverted-primary{color:var(--g-color-text-inverted-primary)}.g-color-text_color_inverted-complementary{color:var(--g-color-text-inverted-complementary)}.g-color-text_color_inverted-secondary{color:var(--g-color-text-inverted-secondary)}.g-color-text_color_inverted-hint{color:var(--g-color-text-inverted-hint)}.kv-ydb-internal-user{align-items:center;display:flex;flex-grow:1;justify-content:space-between;line-height:var(--g-text-body-2-line-height);margin-left:16px}.kv-ydb-internal-user__user-info-wrapper{display:flex;flex-direction:column}.kv-ydb-internal-user__ydb-internal-user-title{font-weight:500}.kv-ydb-internal-user__ydb-user-wrapper{padding:10px;width:300px}.info-viewer{--ydb-info-viewer-font-size:var(--g-text-body-2-font-size);--ydb-info-viewer-line-height:var(--g-text-body-2-line-height);--ydb-info-viewer-title-font-weight:600;--ydb-info-viewer-title-margin:15px 0 10px;--ydb-info-viewer-items-gap:7px;font-size:var(--ydb-info-viewer-font-size);line-height:var(--ydb-info-viewer-line-height)}.info-viewer__title{font-weight:var(--ydb-info-viewer-title-font-weight);margin:var(--ydb-info-viewer-title-margin)}.info-viewer__items{display:flex;flex-direction:column;gap:var(--ydb-info-viewer-items-gap);max-width:100%}.info-viewer__row{align-items:baseline;display:flex;max-width:100%;padding-top:4px}.info-viewer__label{align-items:baseline;color:var(--g-color-text-secondary);display:flex;flex:0 1 auto;min-width:200px;white-space:nowrap}.info-viewer__label-text_multiline{max-width:180px;overflow:visible;white-space:normal}.info-viewer__dots{border-bottom:1px dotted var(--g-color-text-secondary);display:flex;flex:1 1 auto;margin:0 2px}.info-viewer__value{display:flex;min-width:130px;word-break:break-all}.info-viewer_size_s{--ydb-info-viewer-font-size:var(--g-text-body-1-font-size);--ydb-info-viewer-line-height:var(--g-text-body-1-line-height);--ydb-info-viewer-title-font-weight:500;--ydb-info-viewer-title-margin:0 0 4px;--ydb-info-viewer-items-gap:4px}.info-viewer_size_s .info-viewer__row{height:auto}.info-viewer_size_s .info-viewer__label{min-width:85px}.ydb-node-endpoints-tooltip-content .info-viewer__value{min-width:70px}.popup2{animation:none!important;max-width:300px}.histogram-tooltip,.node-tootltip,.tabletsOverall-tooltip{padding:10px}.histogram-tooltip__label,.node-tootltip__label,.tabletsOverall-tooltip__label{color:var(--g-color-text-secondary);padding-right:15px}.json-tooltip{padding:20px 20px 20px 0}.json-tooltip__inspector{word-wrap:break-word;font-family:var(--g-font-family-monospace)!important;font-size:var(--g-text-code-1-font-size)!important;line-height:var(--g-text-code-1-line-height)!important;width:100%}.json-tooltip__inspector .json-inspector__leaf_composite:before{color:var(--g-color-text-secondary);font-size:9px;left:20px;position:absolute}.json-tooltip__inspector .json-inspector__leaf_composite.json-inspector__leaf_root:before{left:0}.json-tooltip__inspector :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:"[+]"}.json-tooltip__inspector .json-inspector__leaf_expanded.json-inspector__leaf_composite:before{content:"[-]"}.json-tooltip__inspector .json-inspector__key{color:var(--g-color-text-misc)}.json-tooltip__inspector .json-inspector__leaf{padding-left:20px;position:relative}.json-tooltip__inspector .json-inspector__leaf_root{padding-left:0}.json-tooltip__inspector .json-inspector__line{padding-left:20px}.json-tooltip__inspector .json-inspector__toolbar{border:1px solid var(--g-color-line-generic);border-radius:4px;margin-bottom:10px;width:300px}.json-tooltip__inspector .json-inspector__search{background:none;border:0 solid #0000;border-width:0 22px 0 8px;box-sizing:border-box;color:var(--g-color-text-primary);font-family:var(--g-text-body-font-family);font-size:13px;height:28px;margin:0;outline:0;padding:0;vertical-align:top;width:300px}.json-tooltip__inspector .json-inspector__value_helper{color:var(--g-color-text-secondary)}.json-tooltip__inspector .json-inspector__line:hover:after{background:var(--g-color-base-simple-hover)}.json-tooltip__inspector .json-inspector__show-original:before{color:var(--g-color-text-secondary)}.json-tooltip__inspector .json-inspector__show-original:hover:after,.json-tooltip__inspector .json-inspector__show-original:hover:before{color:var(--g-color-text-primary)}.json-tooltip__inspector .json-inspector__leaf.json-inspector__leaf_root.json-inspector__leaf_composite{max-width:calc(100% - 50px)}.json-tooltip__inspector .json-inspector__leaf_expanded.json-inspector__leaf_composite:before,.json-tooltip__inspector :not(.json-inspector__leaf_expanded).json-inspector__leaf_composite:before{content:""}.json-tooltip__inspector .json-inspector__line:hover:after{background:#0000}.json-tooltip__inspector .json-inspector__show-original:hover:after,.json-tooltip__inspector .json-inspector__show-original:hover:before{color:#0000}.json-tooltip__inspector .json-inspector__value_helper{display:none}.cell-tooltip{padding:10px;word-break:break-word}.authentication{align-items:center;background-blend-mode:normal;background-color:#b8d4fd1a;background-image:radial-gradient(at 0 100%,#0066ff26 20%,#f7f7f700 40%),radial-gradient(at 55% 0,#0066ff26 20%,#f7f7f700 40%),radial-gradient(at 110% 100%,#0066ff26 20%,#f7f7f700 40%);display:flex;height:100%;justify-content:center}.authentication .g-text-input{display:flex}.authentication__header{align-items:center;display:flex;font-size:var(--g-text-body-1-font-size);justify-content:space-between;line-height:var(--g-text-header-1-line-height);width:100%}.authentication__logo{align-items:center;display:flex;font-size:16px;font-weight:600;gap:8px}.authentication__title{font-size:var(--g-text-header-2-font-size);font-weight:600;line-height:var(--g-text-header-2-line-height);margin:34px 0 16px}.authentication__form-wrapper{align-items:center;background-color:var(--g-color-base-background);border-radius:16px;display:flex;flex-direction:column;flex-shrink:0;justify-content:center;min-width:320px;padding:40px;width:400px}.authentication__field-wrapper{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px;width:320px}.authentication__field-wrapper .g-text-input_state_error{flex-direction:column}.authentication__button-sign-in{display:inline-flex;justify-content:center}.authentication__show-password-button{margin-left:4px}.authentication__close{position:absolute;right:40px;top:40px}.ydb-link-with-icon{align-items:center;display:flex;flex-wrap:nowrap;white-space:nowrap}.tablet-icon{border:1px solid;border-radius:4px;display:flex;font-size:10px;height:16px;justify-content:center;text-transform:uppercase;width:23px}.tablet-icon__type{line-height:14px}.header{align-items:center;border-bottom:1px solid var(--g-color-line-generic);display:flex;flex:0 0 40px;justify-content:space-between;padding:0 20px 0 12px}.header__breadcrumbs-item{color:var(--g-color-text-secondary);display:flex;gap:3px}.header__breadcrumbs-item_link:hover{color:var(--g-color-text-complementary)}.header__breadcrumbs-item_active{color:var(--g-color-text-primary)}.header__breadcrumbs-icon{align-items:center;display:flex}.g-breadcrumbs__inner{align-items:center;display:inline-flex;gap:4px;min-height:24px;overflow:hidden;width:100%}.g-breadcrumbs__switcher{background:none;border:none;color:inherit;color:var(--g-color-text-secondary);cursor:pointer;font-family:var(--g-text-body-font-family);font-size:inherit;font-weight:var(--g-text-body-font-weight);outline:none;padding:0}.g-breadcrumbs__switcher:focus-visible{outline:2px solid var(--g-color-line-focus)}.g-breadcrumbs__item,.g-breadcrumbs__switcher{display:inline-block;flex-shrink:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.g-breadcrumbs__item:focus-visible,.g-breadcrumbs__switcher:focus-visible{border-radius:var(--g-focus-border-radius);outline:2px solid var(--g-color-line-focus)}.g-breadcrumbs_calculated_no .g-breadcrumbs__item{overflow:visible}.g-breadcrumbs__divider{align-items:center;color:var(--g-color-text-secondary);display:flex}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item .g-menu__item{padding-inline-start:80px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(0) .g-menu__item{padding-inline-start:0!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:first-child .g-menu__item{padding-inline-start:8px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(2) .g-menu__item{padding-inline-start:16px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(3) .g-menu__item{padding-inline-start:24px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(4) .g-menu__item{padding-inline-start:32px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(5) .g-menu__item{padding-inline-start:40px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(6) .g-menu__item{padding-inline-start:48px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(7) .g-menu__item{padding-inline-start:56px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(8) .g-menu__item{padding-inline-start:64px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(9) .g-menu__item{padding-inline-start:72px!important}.g-breadcrumbs__popup_staircase .g-menu .g-menu__list-item:nth-child(10) .g-menu__item{padding-inline-start:80px!important}.g-dropdown-menu__switcher-wrapper{display:inline-block}.g-dropdown-menu__switcher-button{display:flex}.g-dropdown-menu__menu-item_separator{border-block-start:1px solid var(--g-color-line-generic-solid);margin:.5em 0;pointer-events:none}.g-dropdown-menu__sub-menu-arrow{inset-inline-end:-4px;position:relative}.g-dropdown-menu__sub-menu{position:relative}.g-dropdown-menu__sub-menu .g-dropdown-menu__menu:after,.g-dropdown-menu__sub-menu .g-dropdown-menu__menu:before{content:"";height:100%;inset-block-start:0;position:absolute;width:10px}.g-dropdown-menu__sub-menu .g-dropdown-menu__menu:before{inset-inline-start:-10px}.g-dropdown-menu__sub-menu .g-dropdown-menu__menu:after{inset-inline-end:-10px}.g-menu{background-color:var(--g-color-base-float);box-sizing:border-box;color:var(--g-color-text-primary);display:block;font-size:var(--g-text-body-1-font-size);list-style:none;margin:0;outline:none;overflow:hidden auto;padding:0;-webkit-user-select:none;user-select:none}.g-menu__list-group-item+.g-menu__list-group-item,.g-menu__list-group-item+.g-menu__list-item,.g-menu__list-item+.g-menu__list-group-item{border-block-start:1px solid var(--g-color-line-generic)}.g-menu__item{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;color:var(--g-color-text-primary);display:flex;outline:none;text-decoration:none;touch-action:manipulation}.g-menu__item-icon{display:flex}.g-menu__item-icon-end{display:flex;margin-inline-end:0}.g-menu__item-content{flex-grow:1;min-width:0}.g-menu__item_interactive{cursor:pointer}.g-menu__item_interactive:focus-visible,.g-menu__item_interactive:hover{background-color:var(--g-color-base-simple-hover)}.g-menu__item_selected{background-color:var(--g-color-base-simple-hover)}.g-menu__item_disabled{color:var(--g-color-text-secondary);cursor:default;pointer-events:none}.g-menu__item_disabled:hover{background-color:initial}.g-menu__item_active{background-color:var(--g-color-base-selection);cursor:default}.g-menu__item_active:focus-visible,.g-menu__item_active:hover{background-color:var(--g-color-base-selection-hover)}.g-menu__item_theme_danger:not(.g-menu__item_disabled){color:var(--g-color-text-danger)}.g-menu__group-label{color:var(--g-color-text-hint);font-weight:var(--g-text-accent-font-weight)}.g-menu__group-list{list-style:none;margin:0;padding:0}.g-menu_size_s{line-height:24px;padding:3px 0}.g-menu_size_s .g-menu__group-label,.g-menu_size_s .g-menu__item{padding:0 10px}.g-menu_size_s .g-menu__item-icon{margin-inline-end:3px}.g-menu_size_s .g-menu__item-icon-end{margin-inline-start:3px}.g-menu_size_s .g-menu__list-group-item+.g-menu__list-group-item,.g-menu_size_s .g-menu__list-group-item+.g-menu__list-item,.g-menu_size_s .g-menu__list-item+.g-menu__list-group-item{margin-block-start:3px;padding-block-start:3px}.g-menu_size_m{line-height:24px;padding:4px 0}.g-menu_size_m .g-menu__group-label,.g-menu_size_m .g-menu__item{padding:0 13px}.g-menu_size_m .g-menu__item-icon{margin-inline-end:4px}.g-menu_size_m .g-menu__item-icon-end{margin-inline-start:4px}.g-menu_size_m .g-menu__list-group-item+.g-menu__list-group-item,.g-menu_size_m .g-menu__list-group-item+.g-menu__list-item,.g-menu_size_m .g-menu__list-item+.g-menu__list-group-item{margin-block-start:4px;padding-block-start:4px}.g-menu_size_l{line-height:28px;padding:5px 0}.g-menu_size_l .g-menu__group-label,.g-menu_size_l .g-menu__item{padding:0 15px}.g-menu_size_l .g-menu__item-icon{margin-inline-end:5px}.g-menu_size_l .g-menu__item-icon-end{margin-inline-start:5px}.g-menu_size_l .g-menu__list-group-item+.g-menu__list-group-item,.g-menu_size_l .g-menu__list-group-item+.g-menu__list-item,.g-menu_size_l .g-menu__list-item+.g-menu__list-group-item{margin-block-start:5px;padding-block-start:5px}.g-menu_size_xl{font-size:var(--g-text-body-2-font-size);line-height:36px;padding:6px 0}.g-menu_size_xl .g-menu__group-label,.g-menu_size_xl .g-menu__item{padding:0 15px}.g-menu_size_xl .g-menu__item-icon{margin-inline-end:6px}.g-menu_size_xl .g-menu__item-icon-end{margin-inline-start:6px}.g-menu_size_xl .g-menu__list-group-item:not(:first-child){margin-block-start:6px;padding-block-start:6px}.g-menu_size_xl .g-menu__list-group-item:not(:last-child){margin-block-end:6px;padding-block-end:6px}.link{color:var(--g-color-text-link);text-decoration:none}.link_external{margin-right:10px}.link:hover{color:var(--g-color-text-link-hover)}*{font-feature-settings:"tnum";box-sizing:border-box;font-variant-numeric:tabular-nums}.g-select-popup__tick-icon{box-sizing:initial}#root,body,html{box-sizing:border-box;height:100%;margin:0;overflow:auto;padding:0}:root{--g-color-base-yellow-light:#ffc70026;--g-color-base-yellow-medium:#ffdb4d66;--tenant-object-info-max-value-width:300px;--diagnostics-section-title-margin:20px;--diagnostics-section-margin:30px;--diagnostics-section-table-width:872px}.g-root{--ydb-data-table-color-hover:var(--g-color-base-float-hover);--ydb-color-status-grey:var(--g-color-base-neutral-heavy);--ydb-color-status-green:var(--g-color-base-positive-heavy);--ydb-color-status-yellow:var(--g-color-base-warning-heavy);--ydb-color-status-orange:#ff922e;--ydb-color-status-red:var(--g-color-base-danger-heavy);--ydb-color-status-blue:var(--g-color-base-info-heavy);--ydb-color-status-black:var(--g-color-base-misc-heavy)}:is(#tab,.g-tabs-item_active .g-tabs-item__title){color:var(--g-color-text-primary)!important}:is(#tab,.g-tabs-item__title){color:var(--g-color-text-secondary)}.gn-aside-header__pane-container{height:100%}.gn-aside-header__content{display:flex;flex-direction:column;height:100%;overflow:auto;position:relative}.loader{align-items:center;display:flex;justify-content:center;left:50%;position:fixed;top:50%;z-index:99999999}.app{--data-table-row-height:40px;--data-table-cell-align:middle;--data-table-head-align:middle;display:flex;flex:1 1 auto;flex-direction:column;height:100%}.app .data-table{font-size:var(--g-text-body-2-font-size);line-height:var(--g-text-body-2-line-height)}.app .data-table__td,.app .data-table__th{border-left:initial;border-right:initial;border-top:initial;height:var(--data-table-row-height)}.app .data-table__th{font-weight:700}.app .data-table__table{border-collapse:initial;border-spacing:0}.app .data-table__box_sticky-head_moving .data-table__th{height:auto}.app__main{display:flex;flex:1 1 auto;flex-direction:column;overflow:auto}.error{color:var(--g-color-text-danger)}.data-table__row:hover .clipboard-button,.ydb-paginated-table__row:hover .clipboard-button,.ydb-tree-view__item:hover .clipboard-button{opacity:1}.g-root .data-table_highlight-rows .data-table__row:hover{background:var(--ydb-data-table-color-hover)}.g-table-column-setup__item{cursor:pointer!important;padding:0 8px 0 32px!important}.app_embedded{font-family:Rubik,sans-serif}.g-popup{max-width:500px}.kv-navigation__internal-user{align-items:center;display:flex;justify-content:space-between;line-height:var(--g-text-body-2-line-height);margin-left:16px}.kv-navigation__user-info-wrapper{display:flex;flex-direction:column}.kv-navigation__ydb-internal-user-title{font-weight:500}.kv-navigation__ydb-user-wrapper{padding:10px;width:300px}.g-action-tooltip{--g-popup-border-width:0;--g-popup-background-color:var(--g-color-base-float-heavy)}.g-action-tooltip__content{box-sizing:border-box;color:var(--g-color-text-light-primary);max-width:300px;padding:6px 12px}.g-action-tooltip__heading{align-items:baseline;display:flex;justify-content:space-between}.g-action-tooltip__title{color:var(--g-color-text-light-primary)}.g-action-tooltip__hotkey{margin-inline-start:8px}.g-action-tooltip__description{color:var(--g-color-text-light-secondary);margin-block-start:4px}.g-hotkey{border-radius:4px;padding:1px 5px}.g-hotkey,.g-hotkey kbd{font-family:var(--g-font-family-sans);font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.g-hotkey_view_light{background-color:var(--g-color-base-generic)}.g-hotkey_view_light .g-hotkey__plus{color:var(--g-color-text-hint)}.g-hotkey_view_dark{background-color:var(--g-color-base-light-simple-hover);color:var(--g-color-text-light-complementary)}.g-hotkey_view_dark .g-hotkey__plus{color:var(--g-color-text-light-hint)}.g-list{--_--item-padding:var(--g-list-item-padding,0);display:flex;flex:1 1 auto;flex-direction:column;outline:none;width:100%}.g-list__filter{flex:0 0 auto;margin-block-end:8px;padding:var(--_--item-padding)}.g-list__items{flex:1 1 auto}.g-list__empty-placeholder,.g-list__item{align-items:center;box-sizing:border-box;display:flex;overflow:hidden;padding:var(--_--item-padding);-webkit-user-select:none;user-select:none}.g-list__item_active{background:var(--g-color-base-simple-hover)}.g-list__item_selected{background:var(--g-color-base-selection)}.g-list__item_selected:hover{background:var(--g-color-base-selection-hover)}.g-list__item_sort-handle-align_right{flex-direction:row-reverse}.g-list__item_sort-handle-align_right .g-list__item-sort-icon{margin-inline:10px 0}.g-list__item_sortable[data-rbd-drag-handle-context-id]:active{cursor:grabbing}.g-list__item_dragging{background:var(--g-color-base-simple-hover-solid);z-index:100001}.g-list__empty-placeholder{box-sizing:border-box;color:var(--g-color-text-hint);min-height:36px;padding-block:8px}.g-list__item-content{align-items:center;display:flex;flex:1 1 auto;height:100%;overflow:hidden;text-overflow:ellipsis}.g-list__item-sort-icon{align-items:center;color:var(--g-color-text-hint);display:flex;flex:0 0 auto;margin-inline-end:4px;width:12px}.g-list__loading-indicator{align-items:center;display:flex;justify-content:center;width:100%}.kv-monitoring-button{display:none}.data-table__row:hover .kv-monitoring-button,.kv-monitoring-button_visible{display:inline-block}.extended-cluster{display:flex;height:100%}.extended-cluster__balancer{align-items:center;display:flex;flex-direction:row}.extended-cluster__clipboard-button{margin-left:5px}.g-root{--g-text-header-font-weight:500;--g-text-subheader-font-weight:600;--g-text-display-font-weight:500;--g-text-accent-font-weight:500}.g-root_theme_light{--g-color-base-background:#fff;--g-color-base-brand:var(--g-color-private-blue-550-solid);--g-color-base-brand-hover:var(--g-color-private-blue-600-solid);--g-color-base-selection:var(--g-color-private-blue-100);--g-color-base-selection-hover:var(--g-color-private-blue-200);--g-color-line-brand:var(--g-color-private-blue-550-solid);--g-color-text-brand:var(--g-color-private-blue-600-solid);--g-color-text-brand-heavy:var(--g-color-private-blue-700-solid);--g-color-text-brand-contrast:var(--g-color-text-light-primary);--g-color-text-link:var(--g-color-private-blue-600-solid);--g-color-text-link-hover:var(--g-color-private-blue-800-solid);--g-color-private-white-50:#ffffff0d;--g-color-private-white-70:#ffffff12;--g-color-private-white-100:#ffffff1a;--g-color-private-white-150:#ffffff26;--g-color-private-white-200:#fff3;--g-color-private-white-250:#ffffff40;--g-color-private-white-300:#ffffff4d;--g-color-private-white-350:#ffffff59;--g-color-private-white-400:#fff6;--g-color-private-white-450:#ffffff73;--g-color-private-white-500:#ffffff80;--g-color-private-white-550:#ffffff8c;--g-color-private-white-600:#fff9;--g-color-private-white-650:#ffffffa6;--g-color-private-white-700:#ffffffb3;--g-color-private-white-750:#ffffffbf;--g-color-private-white-800:#fffc;--g-color-private-white-850:#ffffffd9;--g-color-private-white-900:#ffffffe6;--g-color-private-white-950:#fffffff2;--g-color-private-white-1000-solid:#fff;--g-color-private-black-50:#0000000d;--g-color-private-black-70:#00000012;--g-color-private-black-100:#0000001a;--g-color-private-black-150:#00000026;--g-color-private-black-200:#0003;--g-color-private-black-250:#00000040;--g-color-private-black-300:#0000004d;--g-color-private-black-350:#00000059;--g-color-private-black-400:#0006;--g-color-private-black-450:#00000073;--g-color-private-black-500:#00000080;--g-color-private-black-550:#0000008c;--g-color-private-black-600:#0009;--g-color-private-black-650:#000000a6;--g-color-private-black-700:#000000b3;--g-color-private-black-750:#000000bf;--g-color-private-black-800:#000c;--g-color-private-black-850:#000000d9;--g-color-private-black-900:#000000e6;--g-color-private-black-950:#000000f2;--g-color-private-black-20-solid:#fafafa;--g-color-private-black-50-solid:#f2f2f2;--g-color-private-black-100-solid:#e5e5e5;--g-color-private-black-150-solid:#d9d9d9;--g-color-private-black-200-solid:#ccc;--g-color-private-black-250-solid:#bfbfbf;--g-color-private-black-300-solid:#b3b3b3;--g-color-private-black-350-solid:#a6a6a6;--g-color-private-black-400-solid:#999;--g-color-private-black-450-solid:#8c8c8c;--g-color-private-black-500-solid:grey;--g-color-private-black-550-solid:#737373;--g-color-private-black-600-solid:#666;--g-color-private-black-650-solid:#595959;--g-color-private-black-700-solid:#4c4c4c;--g-color-private-black-750-solid:#404040;--g-color-private-black-800-solid:#333;--g-color-private-black-850-solid:#262626;--g-color-private-black-900-solid:#1a1a1a;--g-color-private-black-950-solid:#0d0d0d;--g-color-private-black-1000-solid:#000;--g-color-private-blue-50:#5282ff1a;--g-color-private-blue-100:#5282ff26;--g-color-private-blue-150:#5282ff33;--g-color-private-blue-200:#5282ff4d;--g-color-private-blue-250:#5282ff66;--g-color-private-blue-300:#5282ff80;--g-color-private-blue-350:#5282ff99;--g-color-private-blue-400:#5282ffb3;--g-color-private-blue-450:#5282ffcc;--g-color-private-blue-500:#5282ffe6;--g-color-private-blue-50-solid:#eef3ff;--g-color-private-blue-100-solid:#e5ecff;--g-color-private-blue-150-solid:#dce6ff;--g-color-private-blue-200-solid:#cbdaff;--g-color-private-blue-250-solid:#bacdff;--g-color-private-blue-300-solid:#a8c1ff;--g-color-private-blue-350-solid:#97b4ff;--g-color-private-blue-400-solid:#86a8ff;--g-color-private-blue-450-solid:#749bff;--g-color-private-blue-500-solid:#638fff;--g-color-private-blue-550-solid:#5282ff;--g-color-private-blue-600-solid:#4e79eb;--g-color-private-blue-650-solid:#4a71d6;--g-color-private-blue-700-solid:#4768c2;--g-color-private-blue-750-solid:#4360ad;--g-color-private-blue-800-solid:#3f5799;--g-color-private-blue-850-solid:#3c4f85;--g-color-private-blue-900-solid:#384670;--g-color-private-blue-950-solid:#343d5c;--g-color-private-blue-1000-solid:#333952;--g-color-private-green-50:#3bc9351a;--g-color-private-green-100:#3bc93526;--g-color-private-green-150:#3bc93533;--g-color-private-green-200:#3bc9354d;--g-color-private-green-250:#3bc93566;--g-color-private-green-300:#3bc93580;--g-color-private-green-350:#3bc93599;--g-color-private-green-400:#3bc935b3;--g-color-private-green-450:#3bc935cc;--g-color-private-green-500:#3bc935e6;--g-color-private-green-50-solid:#ebfaeb;--g-color-private-green-100-solid:#e2f7e1;--g-color-private-green-150-solid:#d8f4d7;--g-color-private-green-200-solid:#c4efc2;--g-color-private-green-250-solid:#b1e9ae;--g-color-private-green-300-solid:#9de49a;--g-color-private-green-350-solid:#89df86;--g-color-private-green-400-solid:#76d972;--g-color-private-green-450-solid:#62d45d;--g-color-private-green-500-solid:#4fce49;--g-color-private-green-550-solid:#3bc935;--g-color-private-green-600-solid:#3ab935;--g-color-private-green-650-solid:#38aa35;--g-color-private-green-700-solid:#379a34;--g-color-private-green-750-solid:#358a34;--g-color-private-green-800-solid:#347b34;--g-color-private-green-850-solid:#336b34;--g-color-private-green-900-solid:#315b34;--g-color-private-green-950-solid:#304b33;--g-color-private-green-1000-solid:#2f4433;--g-color-private-yellow-50:#ffdb4d1a;--g-color-private-yellow-100:#ffdb4d26;--g-color-private-yellow-150:#ffdb4d33;--g-color-private-yellow-200:#ffdb4d4d;--g-color-private-yellow-250:#ffdb4d66;--g-color-private-yellow-300:#ffdb4d80;--g-color-private-yellow-350:#ffdb4d99;--g-color-private-yellow-400:#ffdb4db3;--g-color-private-yellow-450:#ffdb4dcc;--g-color-private-yellow-500:#ffdb4de6;--g-color-private-yellow-50-solid:#fffbed;--g-color-private-yellow-100-solid:#fffae4;--g-color-private-yellow-150-solid:#fff8db;--g-color-private-yellow-200-solid:#fff4ca;--g-color-private-yellow-250-solid:#fff1b8;--g-color-private-yellow-300-solid:#ffeda6;--g-color-private-yellow-350-solid:#ffe994;--g-color-private-yellow-400-solid:#ffe682;--g-color-private-yellow-450-solid:#ffe271;--g-color-private-yellow-500-solid:#ffdf5f;--g-color-private-yellow-550-solid:#ffdb4d;--g-color-private-yellow-600-solid:#eac94a;--g-color-private-yellow-650-solid:#d5b848;--g-color-private-yellow-700-solid:#c0a645;--g-color-private-yellow-750-solid:#ab9543;--g-color-private-yellow-800-solid:#968340;--g-color-private-yellow-850-solid:#81723d;--g-color-private-yellow-900-solid:#6c603b;--g-color-private-yellow-950-solid:#574f38;--g-color-private-yellow-1000-solid:#4d4637;--g-color-private-orange-50:#ff77001a;--g-color-private-orange-100:#ff770026;--g-color-private-orange-150:#f703;--g-color-private-orange-200:#ff77004d;--g-color-private-orange-250:#f706;--g-color-private-orange-300:#ff770080;--g-color-private-orange-350:#f709;--g-color-private-orange-400:#ff7700b3;--g-color-private-orange-450:#f70c;--g-color-private-orange-500:#ff7700e6;--g-color-private-orange-50-solid:#fff1e6;--g-color-private-orange-100-solid:#ffebd9;--g-color-private-orange-150-solid:#ffe4cc;--g-color-private-orange-200-solid:#ffd6b3;--g-color-private-orange-250-solid:#ffc999;--g-color-private-orange-300-solid:#ffbb80;--g-color-private-orange-350-solid:#ffad66;--g-color-private-orange-400-solid:#ffa04c;--g-color-private-orange-450-solid:#ff9233;--g-color-private-orange-500-solid:#ff851a;--g-color-private-orange-550-solid:#f70;--g-color-private-orange-600-solid:#ea7005;--g-color-private-orange-650-solid:#d5680a;--g-color-private-orange-700-solid:#c0600f;--g-color-private-orange-750-solid:#ab5914;--g-color-private-orange-800-solid:#965119;--g-color-private-orange-850-solid:#814a1f;--g-color-private-orange-900-solid:#6c4324;--g-color-private-orange-950-solid:#573b29;--g-color-private-orange-1000-solid:#4d372b;--g-color-private-red-50:#ff04001a;--g-color-private-red-100:#ff040026;--g-color-private-red-150:#ff040033;--g-color-private-red-200:#ff04004d;--g-color-private-red-250:#ff040066;--g-color-private-red-300:#ff040080;--g-color-private-red-350:#ff040099;--g-color-private-red-400:#ff0400b3;--g-color-private-red-450:#ff0400cc;--g-color-private-red-500:#ff0400e6;--g-color-private-red-50-solid:#ffe6e6;--g-color-private-red-100-solid:#ffd9d9;--g-color-private-red-150-solid:#ffcdcc;--g-color-private-red-200-solid:#ffb4b3;--g-color-private-red-250-solid:#ff9b99;--g-color-private-red-300-solid:#ff8280;--g-color-private-red-350-solid:#ff6966;--g-color-private-red-400-solid:#ff504c;--g-color-private-red-450-solid:#ff3733;--g-color-private-red-500-solid:#ff1e1a;--g-color-private-red-550-solid:#ff0400;--g-color-private-red-600-solid:#ea0805;--g-color-private-red-650-solid:#d50c0a;--g-color-private-red-700-solid:#c0100f;--g-color-private-red-750-solid:#ab1414;--g-color-private-red-800-solid:#961819;--g-color-private-red-850-solid:#811c1f;--g-color-private-red-900-solid:#6c2024;--g-color-private-red-950-solid:#572429;--g-color-private-red-1000-solid:#4d262b;--g-color-private-purple-50:#8f52cc1a;--g-color-private-purple-100:#8f52cc26;--g-color-private-purple-150:#8f52cc33;--g-color-private-purple-200:#8f52cc4d;--g-color-private-purple-250:#8f52cc66;--g-color-private-purple-300:#8f52cc80;--g-color-private-purple-350:#8f52cc99;--g-color-private-purple-400:#8f52ccb3;--g-color-private-purple-450:#8f52cccc;--g-color-private-purple-500:#8f52cce6;--g-color-private-purple-50-solid:#f4eefa;--g-color-private-purple-100-solid:#eee5f7;--g-color-private-purple-150-solid:#e9dcf5;--g-color-private-purple-200-solid:#ddcbf0;--g-color-private-purple-250-solid:#d2baeb;--g-color-private-purple-300-solid:#c7a9e6;--g-color-private-purple-350-solid:#bc97e0;--g-color-private-purple-400-solid:#b186db;--g-color-private-purple-450-solid:#a575d6;--g-color-private-purple-500-solid:#9a63d1;--g-color-private-purple-550-solid:#8f52cc;--g-color-private-purple-600-solid:#854ebd;--g-color-private-purple-650-solid:#7b4aad;--g-color-private-purple-700-solid:#72479e;--g-color-private-purple-750-solid:#68438f;--g-color-private-purple-800-solid:#5e3f80;--g-color-private-purple-850-solid:#543b70;--g-color-private-purple-900-solid:#4a3761;--g-color-private-purple-950-solid:#413452;--g-color-private-purple-1000-solid:#3c324a;--g-color-private-cool-grey-50:#6b84991a;--g-color-private-cool-grey-100:#6b849926;--g-color-private-cool-grey-150:#6b849933;--g-color-private-cool-grey-200:#6b84994d;--g-color-private-cool-grey-250:#6b849966;--g-color-private-cool-grey-300:#6b849980;--g-color-private-cool-grey-350:#6b849999;--g-color-private-cool-grey-400:#6b8499b3;--g-color-private-cool-grey-450:#6b8499cc;--g-color-private-cool-grey-500:#6b8499e6;--g-color-private-cool-grey-50-solid:#f0f3f5;--g-color-private-cool-grey-100-solid:#e9edf0;--g-color-private-cool-grey-150-solid:#e1e6eb;--g-color-private-cool-grey-200-solid:#d3dae0;--g-color-private-cool-grey-250-solid:#c4ced6;--g-color-private-cool-grey-300-solid:#b5c1cc;--g-color-private-cool-grey-350-solid:#a6b5c2;--g-color-private-cool-grey-400-solid:#97a9b8;--g-color-private-cool-grey-450-solid:#899dad;--g-color-private-cool-grey-500-solid:#7a90a3;--g-color-private-cool-grey-550-solid:#6b8499;--g-color-private-cool-grey-600-solid:#657b8f;--g-color-private-cool-grey-650-solid:#5f7285;--g-color-private-cool-grey-700-solid:#586a7a;--g-color-private-cool-grey-750-solid:#526170;--g-color-private-cool-grey-800-solid:#4c5866;--g-color-private-cool-grey-850-solid:#464f5c;--g-color-private-cool-grey-900-solid:#404652;--g-color-private-cool-grey-950-solid:#393e47;--g-color-private-cool-grey-1000-solid:#363942}.g-root_theme_light-hc{--g-color-base-background:#fff;--g-color-base-brand:var(--g-color-private-blue-600-solid);--g-color-base-brand-hover:var(--g-color-private-blue-800-solid);--g-color-base-selection:var(--g-color-private-blue-250);--g-color-base-selection-hover:var(--g-color-private-blue-350);--g-color-line-brand:var(--g-color-private-blue-600-solid);--g-color-text-brand:var(--g-color-private-blue-650-solid);--g-color-text-brand-heavy:var(--g-color-private-blue-900-solid);--g-color-text-brand-contrast:var(--g-color-text-light-primary);--g-color-text-link:var(--g-color-private-blue-650-solid);--g-color-text-link-hover:var(--g-color-private-blue-850-solid);--g-color-private-white-50:#ffffff0d;--g-color-private-white-70:#ffffff12;--g-color-private-white-100:#ffffff1a;--g-color-private-white-150:#ffffff26;--g-color-private-white-200:#fff3;--g-color-private-white-250:#ffffff40;--g-color-private-white-300:#ffffff4d;--g-color-private-white-350:#ffffff59;--g-color-private-white-400:#fff6;--g-color-private-white-450:#ffffff73;--g-color-private-white-500:#ffffff80;--g-color-private-white-550:#ffffff8c;--g-color-private-white-600:#fff9;--g-color-private-white-650:#ffffffa6;--g-color-private-white-700:#ffffffb3;--g-color-private-white-750:#ffffffbf;--g-color-private-white-800:#fffc;--g-color-private-white-850:#ffffffd9;--g-color-private-white-900:#ffffffe6;--g-color-private-white-950:#fffffff2;--g-color-private-white-1000-solid:#fff;--g-color-private-black-50:#0000000d;--g-color-private-black-100:#0000001a;--g-color-private-black-150:#00000026;--g-color-private-black-200:#0003;--g-color-private-black-250:#00000040;--g-color-private-black-300:#0000004d;--g-color-private-black-350:#00000059;--g-color-private-black-400:#0006;--g-color-private-black-450:#00000073;--g-color-private-black-500:#00000080;--g-color-private-black-550:#0000008c;--g-color-private-black-600:#0009;--g-color-private-black-650:#000000a6;--g-color-private-black-700:#000000b3;--g-color-private-black-750:#000000bf;--g-color-private-black-800:#000c;--g-color-private-black-850:#000000d9;--g-color-private-black-900:#000000e6;--g-color-private-black-950:#000000f2;--g-color-private-black-50-solid:#f2f2f2;--g-color-private-black-100-solid:#e5e5e5;--g-color-private-black-150-solid:#d9d9d9;--g-color-private-black-200-solid:#ccc;--g-color-private-black-250-solid:#bfbfbf;--g-color-private-black-300-solid:#b3b3b3;--g-color-private-black-350-solid:#a6a6a6;--g-color-private-black-400-solid:#999;--g-color-private-black-450-solid:#8c8c8c;--g-color-private-black-500-solid:grey;--g-color-private-black-550-solid:#737373;--g-color-private-black-600-solid:#666;--g-color-private-black-650-solid:#595959;--g-color-private-black-700-solid:#4c4c4c;--g-color-private-black-750-solid:#404040;--g-color-private-black-800-solid:#333;--g-color-private-black-850-solid:#262626;--g-color-private-black-900-solid:#1a1a1a;--g-color-private-black-950-solid:#0d0d0d;--g-color-private-black-1000-solid:#000;--g-color-private-blue-50:#5282ff1a;--g-color-private-blue-100:#5282ff26;--g-color-private-blue-150:#5282ff33;--g-color-private-blue-200:#5282ff4d;--g-color-private-blue-250:#5282ff66;--g-color-private-blue-300:#5282ff80;--g-color-private-blue-350:#5282ff99;--g-color-private-blue-400:#5282ffb3;--g-color-private-blue-450:#5282ffcc;--g-color-private-blue-500:#5282ffe6;--g-color-private-blue-50-solid:#eef3ff;--g-color-private-blue-100-solid:#e5ecff;--g-color-private-blue-150-solid:#dce6ff;--g-color-private-blue-200-solid:#cbdaff;--g-color-private-blue-250-solid:#bacdff;--g-color-private-blue-300-solid:#a8c1ff;--g-color-private-blue-350-solid:#97b4ff;--g-color-private-blue-400-solid:#86a8ff;--g-color-private-blue-450-solid:#749bff;--g-color-private-blue-500-solid:#638fff;--g-color-private-blue-550-solid:#5282ff;--g-color-private-blue-600-solid:#4d79e9;--g-color-private-blue-650-solid:#486fd4;--g-color-private-blue-700-solid:#4366be;--g-color-private-blue-750-solid:#3f5ca8;--g-color-private-blue-800-solid:#3a5393;--g-color-private-blue-850-solid:#35497d;--g-color-private-blue-900-solid:#304067;--g-color-private-blue-950-solid:#2c3651;--g-color-private-blue-1000-solid:#293147;--g-color-private-green-50:#3bc9351a;--g-color-private-green-100:#3bc93526;--g-color-private-green-150:#3bc93533;--g-color-private-green-200:#3bc9354d;--g-color-private-green-250:#3bc93566;--g-color-private-green-300:#3bc93580;--g-color-private-green-350:#3bc93599;--g-color-private-green-400:#3bc935b3;--g-color-private-green-450:#3bc935cc;--g-color-private-green-500:#3bc935e6;--g-color-private-green-50-solid:#ebfaeb;--g-color-private-green-100-solid:#e2f7e1;--g-color-private-green-150-solid:#d8f4d7;--g-color-private-green-200-solid:#c4efc2;--g-color-private-green-250-solid:#b1e9ae;--g-color-private-green-300-solid:#9de49a;--g-color-private-green-350-solid:#89df86;--g-color-private-green-400-solid:#76d972;--g-color-private-green-450-solid:#62d45d;--g-color-private-green-500-solid:#4fce49;--g-color-private-green-550-solid:#3bc935;--g-color-private-green-600-solid:#38b833;--g-color-private-green-650-solid:#36a832;--g-color-private-green-700-solid:#339730;--g-color-private-green-750-solid:#31872f;--g-color-private-green-800-solid:#2f762e;--g-color-private-green-850-solid:#2c652c;--g-color-private-green-900-solid:#29552b;--g-color-private-green-950-solid:#274429;--g-color-private-green-1000-solid:#263c28;--g-color-private-yellow-50:#ffdb4d1a;--g-color-private-yellow-100:#ffdb4d26;--g-color-private-yellow-150:#ffdb4d33;--g-color-private-yellow-200:#ffdb4d4d;--g-color-private-yellow-250:#ffdb4d66;--g-color-private-yellow-300:#ffdb4d80;--g-color-private-yellow-350:#ffdb4d99;--g-color-private-yellow-400:#ffdb4db3;--g-color-private-yellow-450:#ffdb4dcc;--g-color-private-yellow-500:#ffdb4de6;--g-color-private-yellow-50-solid:#fffbed;--g-color-private-yellow-100-solid:#fffae4;--g-color-private-yellow-150-solid:#fff8db;--g-color-private-yellow-200-solid:#fff4ca;--g-color-private-yellow-250-solid:#fff1b8;--g-color-private-yellow-300-solid:#ffeda6;--g-color-private-yellow-350-solid:#ffe994;--g-color-private-yellow-400-solid:#ffe682;--g-color-private-yellow-450-solid:#ffe271;--g-color-private-yellow-500-solid:#ffdf5f;--g-color-private-yellow-550-solid:#ffdb4d;--g-color-private-yellow-600-solid:#e9c949;--g-color-private-yellow-650-solid:#d3b645;--g-color-private-yellow-700-solid:#bda441;--g-color-private-yellow-750-solid:#a7913d;--g-color-private-yellow-800-solid:#907f3a;--g-color-private-yellow-850-solid:#7a6d36;--g-color-private-yellow-900-solid:#645a32;--g-color-private-yellow-950-solid:#4e482e;--g-color-private-yellow-1000-solid:#433f2c;--g-color-private-orange-50:#ff77001a;--g-color-private-orange-100:#ff770026;--g-color-private-orange-150:#f703;--g-color-private-orange-200:#ff77004d;--g-color-private-orange-250:#f706;--g-color-private-orange-300:#ff770080;--g-color-private-orange-350:#f709;--g-color-private-orange-400:#ff7700b3;--g-color-private-orange-450:#f70c;--g-color-private-orange-500:#ff7700e6;--g-color-private-orange-50-solid:#fff1e6;--g-color-private-orange-100-solid:#ffebd9;--g-color-private-orange-150-solid:#ffe4cc;--g-color-private-orange-200-solid:#ffd6b3;--g-color-private-orange-250-solid:#ffc999;--g-color-private-orange-300-solid:#ffbb80;--g-color-private-orange-350-solid:#ffad66;--g-color-private-orange-400-solid:#ffa04c;--g-color-private-orange-450-solid:#ff9233;--g-color-private-orange-500-solid:#ff851a;--g-color-private-orange-550-solid:#f70;--g-color-private-orange-600-solid:#e96f04;--g-color-private-orange-650-solid:#d36608;--g-color-private-orange-700-solid:#bd5e0b;--g-color-private-orange-750-solid:#a7550f;--g-color-private-orange-800-solid:#904d13;--g-color-private-orange-850-solid:#7a4517;--g-color-private-orange-900-solid:#643c1b;--g-color-private-orange-950-solid:#4e341e;--g-color-private-orange-1000-solid:#433020;--g-color-private-red-50:#ff04001a;--g-color-private-red-100:#ff040026;--g-color-private-red-150:#ff040033;--g-color-private-red-200:#ff04004d;--g-color-private-red-250:#ff040066;--g-color-private-red-300:#ff040080;--g-color-private-red-350:#ff040099;--g-color-private-red-400:#ff0400b3;--g-color-private-red-450:#ff0400cc;--g-color-private-red-500:#ff0400e6;--g-color-private-red-50-solid:#ffe6e6;--g-color-private-red-100-solid:#ffd9d9;--g-color-private-red-150-solid:#ffcdcc;--g-color-private-red-200-solid:#ffb4b3;--g-color-private-red-250-solid:#ff9b99;--g-color-private-red-300-solid:#ff8280;--g-color-private-red-350-solid:#ff6966;--g-color-private-red-400-solid:#ff504c;--g-color-private-red-450-solid:#ff3733;--g-color-private-red-500-solid:#ff1e1a;--g-color-private-red-550-solid:#ff0400;--g-color-private-red-600-solid:#e90804;--g-color-private-red-650-solid:#d30b08;--g-color-private-red-700-solid:#bd0e0b;--g-color-private-red-750-solid:#a6110f;--g-color-private-red-800-solid:#901413;--g-color-private-red-850-solid:#7a1717;--g-color-private-red-900-solid:#641a1b;--g-color-private-red-950-solid:#4e1d1e;--g-color-private-red-1000-solid:#431e20;--g-color-private-purple-50:#8f52cc1a;--g-color-private-purple-100:#8f52cc26;--g-color-private-purple-150:#8f52cc33;--g-color-private-purple-200:#8f52cc4d;--g-color-private-purple-250:#8f52cc66;--g-color-private-purple-300:#8f52cc80;--g-color-private-purple-350:#8f52cc99;--g-color-private-purple-400:#8f52ccb3;--g-color-private-purple-450:#8f52cccc;--g-color-private-purple-500:#8f52cce6;--g-color-private-purple-50-solid:#f4eefa;--g-color-private-purple-100-solid:#eee5f7;--g-color-private-purple-150-solid:#e9dcf5;--g-color-private-purple-200-solid:#ddcbf0;--g-color-private-purple-250-solid:#d2baeb;--g-color-private-purple-300-solid:#c7a9e6;--g-color-private-purple-350-solid:#bc97e0;--g-color-private-purple-400-solid:#b186db;--g-color-private-purple-450-solid:#a575d6;--g-color-private-purple-500-solid:#9a63d1;--g-color-private-purple-550-solid:#8f52cc;--g-color-private-purple-600-solid:#844dbb;--g-color-private-purple-650-solid:#7949ab;--g-color-private-purple-700-solid:#6e449a;--g-color-private-purple-750-solid:#633f8a;--g-color-private-purple-800-solid:#593b79;--g-color-private-purple-850-solid:#4e3668;--g-color-private-purple-900-solid:#433158;--g-color-private-purple-950-solid:#382c47;--g-color-private-purple-1000-solid:#322a3f;--g-color-private-cool-grey-50:#6b84991a;--g-color-private-cool-grey-100:#6b849926;--g-color-private-cool-grey-150:#6b849933;--g-color-private-cool-grey-200:#6b84994d;--g-color-private-cool-grey-250:#6b849966;--g-color-private-cool-grey-300:#6b849980;--g-color-private-cool-grey-350:#6b849999;--g-color-private-cool-grey-400:#6b8499b3;--g-color-private-cool-grey-450:#6b8499cc;--g-color-private-cool-grey-500:#6b8499e6;--g-color-private-cool-grey-50-solid:#f0f3f5;--g-color-private-cool-grey-100-solid:#e9edf0;--g-color-private-cool-grey-150-solid:#e1e6eb;--g-color-private-cool-grey-200-solid:#d3dae0;--g-color-private-cool-grey-250-solid:#c4ced6;--g-color-private-cool-grey-300-solid:#b5c1cc;--g-color-private-cool-grey-350-solid:#a6b5c2;--g-color-private-cool-grey-400-solid:#97a9b8;--g-color-private-cool-grey-450-solid:#899dad;--g-color-private-cool-grey-500-solid:#7a90a3;--g-color-private-cool-grey-550-solid:#6b8499;--g-color-private-cool-grey-600-solid:#647a8e;--g-color-private-cool-grey-650-solid:#5c7182;--g-color-private-cool-grey-700-solid:#556776;--g-color-private-cool-grey-750-solid:#4e5d6b;--g-color-private-cool-grey-800-solid:#465360;--g-color-private-cool-grey-850-solid:#3f4a54;--g-color-private-cool-grey-900-solid:#384049;--g-color-private-cool-grey-950-solid:#31363d;--g-color-private-cool-grey-1000-solid:#2d3237}.g-root_theme_dark{--g-color-base-background:#2d2c33;--g-color-base-brand:var(--g-color-private-blue-450-solid);--g-color-base-brand-hover:var(--g-color-private-blue-600-solid);--g-color-base-selection:var(--g-color-private-blue-150);--g-color-base-selection-hover:var(--g-color-private-blue-200);--g-color-line-brand:var(--g-color-private-blue-550-solid);--g-color-text-brand:var(--g-color-private-blue-550-solid);--g-color-text-brand-heavy:var(--g-color-private-blue-600-solid);--g-color-text-brand-contrast:var(--g-color-text-light-primary);--g-color-text-link:var(--g-color-private-blue-550-solid);--g-color-text-link-hover:var(--g-color-private-blue-700-solid);--g-color-private-white-20:#ffffff05;--g-color-private-white-50:#ffffff0d;--g-color-private-white-70:#ffffff12;--g-color-private-white-100:#ffffff1a;--g-color-private-white-150:#ffffff26;--g-color-private-white-200:#fff3;--g-color-private-white-250:#ffffff40;--g-color-private-white-300:#ffffff4d;--g-color-private-white-350:#ffffff59;--g-color-private-white-400:#fff6;--g-color-private-white-450:#ffffff73;--g-color-private-white-500:#ffffff80;--g-color-private-white-550:#ffffff8c;--g-color-private-white-600:#fff9;--g-color-private-white-650:#ffffffa6;--g-color-private-white-700:#ffffffb3;--g-color-private-white-750:#ffffffbf;--g-color-private-white-800:#fffc;--g-color-private-white-850:#ffffffd9;--g-color-private-white-900:#ffffffe6;--g-color-private-white-950:#fffffff2;--g-color-private-white-20-solid:#313037;--g-color-private-white-50-solid:#38373d;--g-color-private-white-70-solid:#3c3b41;--g-color-private-white-100-solid:#424147;--g-color-private-white-150-solid:#4d4c52;--g-color-private-white-200-solid:#57565c;--g-color-private-white-250-solid:#616166;--g-color-private-white-300-solid:#6c6b70;--g-color-private-white-350-solid:#77767a;--g-color-private-white-400-solid:#818085;--g-color-private-white-450-solid:#8b8b8f;--g-color-private-white-500-solid:#969699;--g-color-private-white-550-solid:#a0a0a3;--g-color-private-white-600-solid:#ababad;--g-color-private-white-650-solid:#b6b5b8;--g-color-private-white-700-solid:#c0c0c2;--g-color-private-white-750-solid:#cacacc;--g-color-private-white-800-solid:#d5d5d6;--g-color-private-white-850-solid:#dfdfe0;--g-color-private-white-900-solid:#eaeaeb;--g-color-private-white-950-solid:#f5f5f5;--g-color-private-white-1000-solid:#fff;--g-color-private-white-opaque-150:#4c4b51f2;--g-color-private-black-20:#00000005;--g-color-private-black-50:#0000000d;--g-color-private-black-100:#0000001a;--g-color-private-black-150:#00000026;--g-color-private-black-200:#0003;--g-color-private-black-250:#00000040;--g-color-private-black-300:#0000004d;--g-color-private-black-350:#00000059;--g-color-private-black-400:#0006;--g-color-private-black-450:#00000073;--g-color-private-black-500:#00000080;--g-color-private-black-550:#0000008c;--g-color-private-black-600:#0009;--g-color-private-black-650:#000000a6;--g-color-private-black-700:#000000b3;--g-color-private-black-750:#000000bf;--g-color-private-black-800:#000c;--g-color-private-black-850:#000000d9;--g-color-private-black-900:#000000e6;--g-color-private-black-950:#000000f2;--g-color-private-black-1000-solid:#000;--g-color-private-black-rock-850:#2d2c33;--g-color-private-blue-50:#5282ff1a;--g-color-private-blue-100:#5282ff26;--g-color-private-blue-150:#5282ff33;--g-color-private-blue-200:#5282ff4d;--g-color-private-blue-250:#5282ff66;--g-color-private-blue-300:#5282ff80;--g-color-private-blue-350:#5282ff99;--g-color-private-blue-400:#5282ffb3;--g-color-private-blue-450:#5282ffcc;--g-color-private-blue-500:#5282ffe6;--g-color-private-blue-50-solid:#313547;--g-color-private-blue-100-solid:#333952;--g-color-private-blue-150-solid:#343d5c;--g-color-private-blue-200-solid:#384670;--g-color-private-blue-250-solid:#3c4e85;--g-color-private-blue-300-solid:#405799;--g-color-private-blue-350-solid:#4360ad;--g-color-private-blue-400-solid:#4768c2;--g-color-private-blue-450-solid:#4b71d6;--g-color-private-blue-500-solid:#4e79eb;--g-color-private-blue-550-solid:#5282ff;--g-color-private-blue-600-solid:#638fff;--g-color-private-blue-650-solid:#759bff;--g-color-private-blue-700-solid:#86a8ff;--g-color-private-blue-750-solid:#97b4ff;--g-color-private-blue-800-solid:#a9c1ff;--g-color-private-blue-850-solid:#bacdff;--g-color-private-blue-900-solid:#cbdaff;--g-color-private-blue-950-solid:#dce6ff;--g-color-private-blue-1000-solid:#e5ecff;--g-color-private-green-50:#5bb5571a;--g-color-private-green-100:#5bb55726;--g-color-private-green-150:#5bb55733;--g-color-private-green-200:#5bb5574d;--g-color-private-green-250:#5bb55766;--g-color-private-green-300:#5bb55780;--g-color-private-green-350:#5bb55799;--g-color-private-green-400:#5bb557b3;--g-color-private-green-450:#5bb557cc;--g-color-private-green-500:#5bb557e6;--g-color-private-green-50-solid:#323a37;--g-color-private-green-100-solid:#344138;--g-color-private-green-150-solid:#36473a;--g-color-private-green-200-solid:#3b553e;--g-color-private-green-250-solid:#3f6341;--g-color-private-green-300-solid:#447145;--g-color-private-green-350-solid:#497e49;--g-color-private-green-400-solid:#4d8c4c;--g-color-private-green-450-solid:#529a50;--g-color-private-green-500-solid:#56a753;--g-color-private-green-550-solid:#5bb557;--g-color-private-green-600-solid:#6bbc68;--g-color-private-green-650-solid:#7cc479;--g-color-private-green-700-solid:#8ccb89;--g-color-private-green-750-solid:#9dd39a;--g-color-private-green-800-solid:#addaab;--g-color-private-green-850-solid:#bde1bc;--g-color-private-green-900-solid:#cee9cd;--g-color-private-green-950-solid:#def0dd;--g-color-private-green-1000-solid:#e6f4e6;--g-color-private-yellow-50:#ffcb001a;--g-color-private-yellow-100:#ffcb0026;--g-color-private-yellow-150:#ffcb0033;--g-color-private-yellow-200:#ffcb004d;--g-color-private-yellow-250:#ffcb0066;--g-color-private-yellow-300:#ffcb0080;--g-color-private-yellow-350:#ffcb0099;--g-color-private-yellow-400:#ffcb00b3;--g-color-private-yellow-450:#ffcb00cc;--g-color-private-yellow-500:#ffcb00e6;--g-color-private-yellow-50-solid:#423c2e;--g-color-private-yellow-100-solid:#4d442b;--g-color-private-yellow-150-solid:#574c29;--g-color-private-yellow-200-solid:#6c5c24;--g-color-private-yellow-250-solid:#816c1f;--g-color-private-yellow-300-solid:#967c19;--g-color-private-yellow-350-solid:#ab8c14;--g-color-private-yellow-400-solid:#c09b0f;--g-color-private-yellow-450-solid:#d5ab0a;--g-color-private-yellow-500-solid:#e9ba04;--g-color-private-yellow-550-solid:#ffcb00;--g-color-private-yellow-600-solid:#ffd01a;--g-color-private-yellow-650-solid:#ffd533;--g-color-private-yellow-700-solid:#ffdb4c;--g-color-private-yellow-750-solid:#ffe066;--g-color-private-yellow-800-solid:#ffe580;--g-color-private-yellow-850-solid:#ffea99;--g-color-private-yellow-900-solid:#ffefb3;--g-color-private-yellow-950-solid:#fff5cc;--g-color-private-yellow-1000-solid:#fff7d9;--g-color-private-orange-50:#c8630c1a;--g-color-private-orange-100:#c8630c26;--g-color-private-orange-150:#c8630c33;--g-color-private-orange-200:#c8630c4d;--g-color-private-orange-250:#c8630c66;--g-color-private-orange-300:#c8630c80;--g-color-private-orange-350:#c8630c99;--g-color-private-orange-400:#c8630cb3;--g-color-private-orange-450:#c8630ccc;--g-color-private-orange-500:#c8630ce6;--g-color-private-orange-50-solid:#3d322f;--g-color-private-orange-100-solid:#44342d;--g-color-private-orange-150-solid:#4c372b;--g-color-private-orange-200-solid:#5c3d27;--g-color-private-orange-250-solid:#6b4223;--g-color-private-orange-300-solid:#7b4720;--g-color-private-orange-350-solid:#8a4d1c;--g-color-private-orange-400-solid:#995218;--g-color-private-orange-450-solid:#a95814;--g-color-private-orange-500-solid:#b95e10;--g-color-private-orange-550-solid:#c8630c;--g-color-private-orange-600-solid:#ce7324;--g-color-private-orange-650-solid:#d3823d;--g-color-private-orange-700-solid:#d89255;--g-color-private-orange-750-solid:#dea16d;--g-color-private-orange-800-solid:#e3b185;--g-color-private-orange-850-solid:#e9c19e;--g-color-private-orange-900-solid:#efd0b6;--g-color-private-orange-950-solid:#f4e0ce;--g-color-private-orange-1000-solid:#f7e8db;--g-color-private-red-50:#e849451a;--g-color-private-red-100:#e8494526;--g-color-private-red-150:#e8494533;--g-color-private-red-200:#e849454d;--g-color-private-red-250:#e8494566;--g-color-private-red-300:#e8494580;--g-color-private-red-350:#e8494599;--g-color-private-red-400:#e84945b3;--g-color-private-red-450:#e84945cc;--g-color-private-red-500:#e84945e6;--g-color-private-red-50-solid:#402f35;--g-color-private-red-100-solid:#493036;--g-color-private-red-150-solid:#523237;--g-color-private-red-200-solid:#653539;--g-color-private-red-250-solid:#78383a;--g-color-private-red-300-solid:#8a3a3c;--g-color-private-red-350-solid:#9d3d3e;--g-color-private-red-400-solid:#b04040;--g-color-private-red-450-solid:#c34341;--g-color-private-red-500-solid:#d54644;--g-color-private-red-550-solid:#e84945;--g-color-private-red-600-solid:#ea5b58;--g-color-private-red-650-solid:#ec6d6b;--g-color-private-red-700-solid:#ef7f7d;--g-color-private-red-750-solid:#f19290;--g-color-private-red-800-solid:#f3a4a2;--g-color-private-red-850-solid:#f6b6b5;--g-color-private-red-900-solid:#f8c8c7;--g-color-private-red-950-solid:#fadbda;--g-color-private-red-1000-solid:#fce4e3;--g-color-private-purple-50:#8f52cc1a;--g-color-private-purple-100:#8f52cc26;--g-color-private-purple-150:#8f52cc33;--g-color-private-purple-200:#8f52cc4d;--g-color-private-purple-250:#8f52cc66;--g-color-private-purple-300:#8f52cc80;--g-color-private-purple-350:#8f52cc99;--g-color-private-purple-400:#8f52ccb3;--g-color-private-purple-450:#8f52cccc;--g-color-private-purple-500:#8f52cce6;--g-color-private-purple-50-solid:#373042;--g-color-private-purple-100-solid:#3c324a;--g-color-private-purple-150-solid:#413452;--g-color-private-purple-200-solid:#4a3761;--g-color-private-purple-250-solid:#543b70;--g-color-private-purple-300-solid:#5e3f80;--g-color-private-purple-350-solid:#68438f;--g-color-private-purple-400-solid:#72479e;--g-color-private-purple-450-solid:#7b4aad;--g-color-private-purple-500-solid:#854ebd;--g-color-private-purple-550-solid:#8f52cc;--g-color-private-purple-600-solid:#9a63d1;--g-color-private-purple-650-solid:#a575d6;--g-color-private-purple-700-solid:#b186db;--g-color-private-purple-750-solid:#bc97e0;--g-color-private-purple-800-solid:#c7a9e6;--g-color-private-purple-850-solid:#d2baeb;--g-color-private-purple-900-solid:#ddcbf0;--g-color-private-purple-950-solid:#e9dcf5;--g-color-private-purple-1000-solid:#eee5f7;--g-color-private-cool-grey-50:#60809c1a;--g-color-private-cool-grey-100:#60809c26;--g-color-private-cool-grey-150:#60809c33;--g-color-private-cool-grey-200:#60809c4d;--g-color-private-cool-grey-250:#60809c66;--g-color-private-cool-grey-300:#60809c80;--g-color-private-cool-grey-350:#60809c99;--g-color-private-cool-grey-400:#60809cb3;--g-color-private-cool-grey-450:#60809ccc;--g-color-private-cool-grey-500:#60809ce6;--g-color-private-cool-grey-50-solid:#32343e;--g-color-private-cool-grey-100-solid:#353943;--g-color-private-cool-grey-150-solid:#373d48;--g-color-private-cool-grey-200-solid:#3c4552;--g-color-private-cool-grey-250-solid:#414e5d;--g-color-private-cool-grey-300-solid:#465667;--g-color-private-cool-grey-350-solid:#4c5e72;--g-color-private-cool-grey-400-solid:#51677d;--g-color-private-cool-grey-450-solid:#566f87;--g-color-private-cool-grey-500-solid:#5b7892;--g-color-private-cool-grey-550-solid:#60809c;--g-color-private-cool-grey-600-solid:#708da6;--g-color-private-cool-grey-650-solid:#8099b0;--g-color-private-cool-grey-700-solid:#90a6ba;--g-color-private-cool-grey-750-solid:#a0b3c3;--g-color-private-cool-grey-800-solid:#b0bfcd;--g-color-private-cool-grey-850-solid:#bfccd7;--g-color-private-cool-grey-900-solid:#cfd9e1;--g-color-private-cool-grey-950-solid:#dfe6eb;--g-color-private-cool-grey-1000-solid:#e7ecf0}.g-root_theme_dark-hc{--g-color-base-background:#222326;--g-color-base-brand:var(--g-color-private-blue-450-solid);--g-color-base-brand-hover:var(--g-color-private-blue-650-solid);--g-color-base-selection:var(--g-color-private-blue-250);--g-color-base-selection-hover:var(--g-color-private-blue-400);--g-color-line-brand:var(--g-color-private-blue-550-solid);--g-color-text-brand:var(--g-color-private-blue-650-solid);--g-color-text-brand-heavy:var(--g-color-private-blue-850-solid);--g-color-text-brand-contrast:var(--g-color-text-light-primary);--g-color-text-link:var(--g-color-private-blue-650-solid);--g-color-text-link-hover:var(--g-color-private-blue-800-solid);--g-color-private-white-50:#ffffff0d;--g-color-private-white-70:#ffffff12;--g-color-private-white-100:#ffffff1a;--g-color-private-white-150:#ffffff26;--g-color-private-white-200:#fff3;--g-color-private-white-250:#ffffff40;--g-color-private-white-300:#ffffff4d;--g-color-private-white-350:#ffffff59;--g-color-private-white-400:#fff6;--g-color-private-white-450:#ffffff73;--g-color-private-white-500:#ffffff80;--g-color-private-white-550:#ffffff8c;--g-color-private-white-600:#fff9;--g-color-private-white-650:#ffffffa6;--g-color-private-white-700:#ffffffb3;--g-color-private-white-750:#ffffffbf;--g-color-private-white-800:#fffc;--g-color-private-white-850:#ffffffd9;--g-color-private-white-900:#ffffffe6;--g-color-private-white-950:#fffffff2;--g-color-private-white-50-solid:#2d2e31;--g-color-private-white-100-solid:#38393c;--g-color-private-white-150-solid:#434447;--g-color-private-white-200-solid:#4e4f51;--g-color-private-white-250-solid:#595a5c;--g-color-private-white-300-solid:#646567;--g-color-private-white-350-solid:#6f7072;--g-color-private-white-400-solid:#7a7b7d;--g-color-private-white-450-solid:#858688;--g-color-private-white-500-solid:#909193;--g-color-private-white-550-solid:#9c9c9d;--g-color-private-white-600-solid:#a7a7a8;--g-color-private-white-650-solid:#b2b2b3;--g-color-private-white-700-solid:#bdbdbe;--g-color-private-white-750-solid:#c8c8c9;--g-color-private-white-800-solid:#d3d3d4;--g-color-private-white-850-solid:#dededf;--g-color-private-white-900-solid:#e9e9e9;--g-color-private-white-950-solid:#f4f4f4;--g-color-private-white-1000-solid:#fff;--g-color-private-white-opaque-150:#38393cf7;--g-color-private-black-20:#00000005;--g-color-private-black-50:#0000000d;--g-color-private-black-100:#0000001a;--g-color-private-black-150:#00000026;--g-color-private-black-200:#0003;--g-color-private-black-250:#00000040;--g-color-private-black-300:#0000004d;--g-color-private-black-350:#00000059;--g-color-private-black-400:#0006;--g-color-private-black-450:#00000073;--g-color-private-black-500:#00000080;--g-color-private-black-550:#0000008c;--g-color-private-black-600:#0009;--g-color-private-black-650:#000000a6;--g-color-private-black-700:#000000b3;--g-color-private-black-750:#000000bf;--g-color-private-black-800:#000c;--g-color-private-black-850:#000000d9;--g-color-private-black-900:#000000e6;--g-color-private-black-950:#000000f2;--g-color-private-black-1000-solid:#000;--g-color-private-black-rock-850:#2d2c33;--g-color-private-black-rock-950:#222326;--g-color-private-blue-50:#5282ff1a;--g-color-private-blue-100:#5282ff26;--g-color-private-blue-150:#5282ff33;--g-color-private-blue-200:#5282ff4d;--g-color-private-blue-250:#5282ff66;--g-color-private-blue-300:#5282ff80;--g-color-private-blue-350:#5282ff99;--g-color-private-blue-400:#5282ffb3;--g-color-private-blue-450:#5282ffcc;--g-color-private-blue-500:#5282ffe6;--g-color-private-blue-50-solid:#272d3c;--g-color-private-blue-100-solid:#293147;--g-color-private-blue-150-solid:#2c3651;--g-color-private-blue-200-solid:#304067;--g-color-private-blue-250-solid:#35497d;--g-color-private-blue-300-solid:#3a5393;--g-color-private-blue-350-solid:#3f5ca8;--g-color-private-blue-400-solid:#4466be;--g-color-private-blue-450-solid:#486fd4;--g-color-private-blue-500-solid:#4d79e9;--g-color-private-blue-550-solid:#5282ff;--g-color-private-blue-600-solid:#638fff;--g-color-private-blue-650-solid:#759bff;--g-color-private-blue-700-solid:#86a8ff;--g-color-private-blue-750-solid:#97b4ff;--g-color-private-blue-800-solid:#a9c1ff;--g-color-private-blue-850-solid:#bacdff;--g-color-private-blue-900-solid:#cbdaff;--g-color-private-blue-950-solid:#dce6ff;--g-color-private-blue-1000-solid:#e5ecff;--g-color-private-green-50:#5bb5571a;--g-color-private-green-100:#5bb55726;--g-color-private-green-150:#000;--g-color-private-green-200:#5bb5574d;--g-color-private-green-250:#5bb55766;--g-color-private-green-300:#5bb55780;--g-color-private-green-350:#5bb55799;--g-color-private-green-400:#5bb557b3;--g-color-private-green-450:#5bb557cc;--g-color-private-green-500:#5bb557e6;--g-color-private-green-50-solid:#28322b;--g-color-private-green-100-solid:#2b392d;--g-color-private-green-150-solid:#2d4030;--g-color-private-green-200-solid:#334f35;--g-color-private-green-250-solid:#395d3a;--g-color-private-green-300-solid:#3f6c3f;--g-color-private-green-350-solid:#447b43;--g-color-private-green-400-solid:#4a8948;--g-color-private-green-450-solid:#50984d;--g-color-private-green-500-solid:#55a652;--g-color-private-green-550-solid:#5bb557;--g-color-private-green-600-solid:#6bbc68;--g-color-private-green-650-solid:#7cc479;--g-color-private-green-700-solid:#8ccb89;--g-color-private-green-750-solid:#9dd39a;--g-color-private-green-800-solid:#addaab;--g-color-private-green-850-solid:#bde1bc;--g-color-private-green-900-solid:#cee9cd;--g-color-private-green-950-solid:#def0dd;--g-color-private-green-1000-solid:#e6f4e6;--g-color-private-yellow-50:#ffcb001a;--g-color-private-yellow-100:#ffcb0026;--g-color-private-yellow-150:#ffcb0033;--g-color-private-yellow-200:#ffcb004d;--g-color-private-yellow-250:#ffcb0066;--g-color-private-yellow-300:#ffcb0080;--g-color-private-yellow-350:#ffcb0099;--g-color-private-yellow-400:#ffcb00b3;--g-color-private-yellow-450:#ffcb00cc;--g-color-private-yellow-500:#ffcb00e6;--g-color-private-yellow-50-solid:#383422;--g-color-private-yellow-100-solid:#433c20;--g-color-private-yellow-150-solid:#4e451e;--g-color-private-yellow-200-solid:#64551b;--g-color-private-yellow-250-solid:#7a6617;--g-color-private-yellow-300-solid:#907713;--g-color-private-yellow-350-solid:#a7880f;--g-color-private-yellow-400-solid:#bd990b;--g-color-private-yellow-450-solid:#d3a908;--g-color-private-yellow-500-solid:#e9ba04;--g-color-private-yellow-550-solid:#ffcb00;--g-color-private-yellow-600-solid:#ffd01a;--g-color-private-yellow-650-solid:#ffd533;--g-color-private-yellow-700-solid:#ffdb4c;--g-color-private-yellow-750-solid:#ffe066;--g-color-private-yellow-800-solid:#ffe580;--g-color-private-yellow-850-solid:#ffea99;--g-color-private-yellow-900-solid:#ffefb3;--g-color-private-yellow-950-solid:#fff5cc;--g-color-private-yellow-1000-solid:#fff7d9;--g-color-private-orange-50:#c8630c1a;--g-color-private-orange-100:#c8630c26;--g-color-private-orange-150:#c8630c33;--g-color-private-orange-200:#c8630c4d;--g-color-private-orange-250:#c8630c66;--g-color-private-orange-300:#c8630c80;--g-color-private-orange-350:#c8630c99;--g-color-private-orange-400:#c8630cb3;--g-color-private-orange-450:#c8630ccc;--g-color-private-orange-500:#c8630ce6;--g-color-private-orange-50-solid:#332923;--g-color-private-orange-100-solid:#3b2d22;--g-color-private-orange-150-solid:#433021;--g-color-private-orange-200-solid:#54361e;--g-color-private-orange-250-solid:#643d1c;--g-color-private-orange-300-solid:#754319;--g-color-private-orange-350-solid:#864916;--g-color-private-orange-400-solid:#965014;--g-color-private-orange-450-solid:#a75611;--g-color-private-orange-500-solid:#b75d0f;--g-color-private-orange-550-solid:#c8630c;--g-color-private-orange-600-solid:#ce7324;--g-color-private-orange-650-solid:#d3823d;--g-color-private-orange-700-solid:#d89255;--g-color-private-orange-750-solid:#dea16d;--g-color-private-orange-800-solid:#e3b185;--g-color-private-orange-850-solid:#e9c19e;--g-color-private-orange-900-solid:#efd0b6;--g-color-private-orange-950-solid:#f4e0ce;--g-color-private-orange-1000-solid:#f7e8db;--g-color-private-red-50:#e849451a;--g-color-private-red-100:#e8494526;--g-color-private-red-150:#e8494533;--g-color-private-red-200:#e849454d;--g-color-private-red-250:#e8494566;--g-color-private-red-300:#e8494580;--g-color-private-red-350:#e8494599;--g-color-private-red-400:#e84945b3;--g-color-private-red-450:#e84945cc;--g-color-private-red-500:#e84945e6;--g-color-private-red-50-solid:#362729;--g-color-private-red-100-solid:#40292b;--g-color-private-red-150-solid:#4a2b2c;--g-color-private-red-200-solid:#5d2e2f;--g-color-private-red-250-solid:#713233;--g-color-private-red-300-solid:#853636;--g-color-private-red-350-solid:#993a39;--g-color-private-red-400-solid:#ac3d3c;--g-color-private-red-450-solid:#c0413f;--g-color-private-red-500-solid:#d44542;--g-color-private-red-550-solid:#e84945;--g-color-private-red-600-solid:#ea5b58;--g-color-private-red-650-solid:#ec6d6b;--g-color-private-red-700-solid:#ef7f7d;--g-color-private-red-750-solid:#f19290;--g-color-private-red-800-solid:#f3a4a2;--g-color-private-red-850-solid:#f6b6b5;--g-color-private-red-900-solid:#f8c8c7;--g-color-private-red-950-solid:#fadbda;--g-color-private-red-1000-solid:#fce4e3;--g-color-private-purple-50:#8f52cc1a;--g-color-private-purple-100:#8f52cc26;--g-color-private-purple-150:#8f52cc33;--g-color-private-purple-200:#8f52cc4d;--g-color-private-purple-250:#8f52cc66;--g-color-private-purple-300:#8f52cc80;--g-color-private-purple-350:#8f52cc99;--g-color-private-purple-400:#8f52ccb3;--g-color-private-purple-450:#8f52cccc;--g-color-private-purple-500:#8f52cce6;--g-color-private-purple-50-solid:#2d2837;--g-color-private-purple-100-solid:#322a3f;--g-color-private-purple-150-solid:#382c47;--g-color-private-purple-200-solid:#433158;--g-color-private-purple-250-solid:#4e3668;--g-color-private-purple-300-solid:#593b79;--g-color-private-purple-350-solid:#633f8a;--g-color-private-purple-400-solid:#6e449a;--g-color-private-purple-450-solid:#7949ab;--g-color-private-purple-500-solid:#844dbb;--g-color-private-purple-550-solid:#8f52cc;--g-color-private-purple-600-solid:#9a63d1;--g-color-private-purple-650-solid:#a575d6;--g-color-private-purple-700-solid:#b186db;--g-color-private-purple-750-solid:#bc97e0;--g-color-private-purple-800-solid:#c7a9e6;--g-color-private-purple-850-solid:#d2baeb;--g-color-private-purple-900-solid:#ddcbf0;--g-color-private-purple-950-solid:#e9dcf5;--g-color-private-purple-1000-solid:#eee5f7;--g-color-private-cool-grey-50:#60809c1a;--g-color-private-cool-grey-100:#60809c26;--g-color-private-cool-grey-150:#60809c33;--g-color-private-cool-grey-200:#60809c4d;--g-color-private-cool-grey-250:#60809c66;--g-color-private-cool-grey-300:#60809c80;--g-color-private-cool-grey-350:#60809c99;--g-color-private-cool-grey-400:#60809cb3;--g-color-private-cool-grey-450:#60809ccc;--g-color-private-cool-grey-500:#60809ce6;--g-color-private-cool-grey-50-solid:#282c32;--g-color-private-cool-grey-100-solid:#2b3138;--g-color-private-cool-grey-150-solid:#2e363e;--g-color-private-cool-grey-200-solid:#353f49;--g-color-private-cool-grey-250-solid:#3b4855;--g-color-private-cool-grey-300-solid:#415161;--g-color-private-cool-grey-350-solid:#475b6d;--g-color-private-cool-grey-400-solid:#4d6479;--g-color-private-cool-grey-450-solid:#546d84;--g-color-private-cool-grey-500-solid:#5a7790;--g-color-private-cool-grey-550-solid:#60809c;--g-color-private-cool-grey-600-solid:#708da6;--g-color-private-cool-grey-650-solid:#8099b0;--g-color-private-cool-grey-700-solid:#90a6ba;--g-color-private-cool-grey-750-solid:#a0b3c3;--g-color-private-cool-grey-800-solid:#b0bfcd;--g-color-private-cool-grey-850-solid:#bfccd7;--g-color-private-cool-grey-900-solid:#cfd9e1;--g-color-private-cool-grey-950-solid:#dfe6eb;--g-color-private-cool-grey-1000-solid:#e7ecf0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace} \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/1343.b5e020af.chunk.js b/ydb/core/viewer/monitoring/static/js/1343.b5e020af.chunk.js new file mode 100644 index 000000000000..9f2bf5d4a36b --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/1343.b5e020af.chunk.js @@ -0,0 +1 @@ +(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[1343],{51343:function(e,d,_){e.exports=function(e){"use strict";function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var _=d(e),s={name:"oc-lnc",weekdays:"dimenge_diluns_dimars_dim\xe8cres_dij\xf2us_divendres_dissabte".split("_"),weekdaysShort:"Dg_Dl_Dm_Dc_Dj_Dv_Ds".split("_"),weekdaysMin:"dg_dl_dm_dc_dj_dv_ds".split("_"),months:"geni\xe8r_febri\xe8r_mar\xe7_abrial_mai_junh_julhet_agost_setembre_oct\xf2bre_novembre_decembre".split("_"),monthsShort:"gen_feb_mar\xe7_abr_mai_junh_julh_ago_set_oct_nov_dec".split("_"),weekStart:1,formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",LLL:"D MMMM [de] YYYY [a] H:mm",LLLL:"dddd D MMMM [de] YYYY [a] H:mm"},relativeTime:{future:"d'aqu\xed %s",past:"fa %s",s:"unas segondas",m:"una minuta",mm:"%d minutas",h:"una ora",hh:"%d oras",d:"un jorn",dd:"%d jorns",M:"un mes",MM:"%d meses",y:"un an",yy:"%d ans"},ordinal:function(e){return e+"\xba"}};return _.default.locale(s,null,!0),s}(_(22877))}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/163.2451f8a1.chunk.js b/ydb/core/viewer/monitoring/static/js/163.2451f8a1.chunk.js new file mode 100644 index 000000000000..53c17a069620 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/163.2451f8a1.chunk.js @@ -0,0 +1 @@ +(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[163],{14659:(e,t,a)=>{"use strict";a.d(t,{U:()=>y});var n=a(68963),r=a(17176),s=a(68330),o=a(76506),i=a(71586),l=a(25822),c=a(88776),d=a(24362),u=a(30817);const m=JSON.parse('{"default-error":"Something went wrong, action cannot be completed","no-rights-error":"You don\'t have enough rights to complete the operation","button-confirm":"Confirm","button-cancel":"Cancel","button-close":"Close"}'),p=(0,u.wZ)("ydb-critical-action-dialog",{en:m});var h=a(75859);const v=(0,d.cn)("ydb-critical-dialog"),g=e=>403===e.status?p("no-rights-error"):e.statusText?e.statusText:p("default-error");function x(e){let{visible:t,text:a,onClose:r,onConfirm:s,onConfirmActionSuccess:d,onConfirmActionError:u}=e;const[m,x]=n.useState(!1),[y,b]=n.useState(),S=async e=>(e.preventDefault(),x(!0),s().then((()=>{d(),r()})).catch((e=>{u(),b(e)})).finally((()=>{x(!1)})));return(0,h.jsx)(l.V,{open:t,hasCloseButton:!1,className:v(),size:"s",onClose:r,onTransitionExited:()=>b(void 0),children:y?(0,h.jsxs)(n.Fragment,{children:[(0,h.jsxs)(l.V.Body,{className:v("body"),children:[(0,h.jsx)("span",{className:v("error-icon"),children:(0,h.jsx)(o.Z,{width:"24",height:"22"})}),g(y)]}),(0,h.jsx)(l.V.Footer,{loading:!1,preset:"default",textButtonCancel:p("button-close"),onClickButtonCancel:r})]}):(0,h.jsxs)("form",{onSubmit:S,children:[(0,h.jsxs)(l.V.Body,{className:v("body"),children:[(0,h.jsx)("span",{className:v("warning-icon"),children:(0,h.jsx)(c.J,{data:i.Z,size:24})}),a]}),(0,h.jsx)(l.V.Footer,{loading:m,preset:"default",textButtonApply:p("button-confirm"),textButtonCancel:p("button-cancel"),propsButtonApply:{type:"submit"},onClickButtonCancel:r,onClickButtonApply:()=>{}})]})})}function y(e){let{children:t,onConfirmAction:a,onConfirmActionSuccess:o,dialogContent:i,buttonDisabled:l=!1,buttonView:c="action",buttonClassName:d,withPopover:u=!1,popoverContent:m,popoverPlacement:p="right",popoverDisabled:v=!0}=e;const[g,y]=n.useState(!1),[b,S]=n.useState(!1),j=()=>(0,h.jsx)(r.z,{onClick:()=>y(!0),view:c,disabled:l,loading:!l&&b,className:d,children:t});return(0,h.jsxs)(n.Fragment,{children:[(0,h.jsx)(x,{visible:g,text:i,onConfirm:async()=>{S(!0),await a(),S(!1)},onConfirmActionSuccess:async()=>{if(o){S(!0);try{await o()}catch{}finally{S(!1)}}},onConfirmActionError:()=>{S(!1)},onClose:()=>{y(!1)}}),u?(0,h.jsx)(s.J,{content:m,placement:p,disabled:v,children:j()}):j()]})}},58682:(e,t,a)=>{"use strict";a.d(t,{T:()=>c});var n=a(39683),r=a(17176),s=a(88776),o=a(24362),i=a(75859);const l=(0,o.cn)("developer-ui-link");function c(e){let{href:t,visible:a=!1,className:o}=e;return(0,i.jsx)(r.z,{size:"s",href:t,className:l({visible:a},o),target:"_blank",children:(0,i.jsx)(s.J,{data:n.Z})})}},66809:(e,t,a)=>{"use strict";a.d(t,{J:()=>A});var n=a(66950),r=a(10288),s=a(14979),o=a(88776),i=a(17095),l=a(14659),c=a(58682),d=a(69214),u=a(26688),m=a(74170),p=a(2098),h=a(22692),v=a(54665),g=a(27102),x=a(99399),y=a(28164),b=a(24362),S=a(52317),j=a(4119),f=a(34051),T=a(83496),N=a(92398),w=a(30817);const E=JSON.parse('{"noTabletsData":"No tablets data","Type":"Type","Tablet":"Tablet","State":"State","Node ID":"Node ID","Node FQDN":"Node FQDN","Generation":"Generation","Uptime":"Uptime","dialog.kill":"The tablet will be restarted. Do you want to proceed?","controls.kill-not-allowed":"You don\'t have enough rights to restart tablet"}'),C=(0,w.wZ)("ydb-tablets",{en:E});var I=a(75859);const P=(0,b.cn)("tablets"),D=[{name:"Type",get header(){return C("Type")},render:e=>{let{row:t}=e;return(0,I.jsxs)("span",{children:[t.Type," ",t.Leader?"":(0,I.jsx)(r.x,{color:"secondary",children:"follower"})]})}},{name:"TabletId",width:230,get header(){return C("Tablet")},render:e=>{var t;let{row:a}=e;const n=a.TabletId&&(0,v.ax)(v.ZP.tablet,{id:a.TabletId},{nodeId:a.NodeId,type:a.Type});return(0,I.jsx)(d.A,{name:null===(t=a.TabletId)||void 0===t?void 0:t.toString(),path:n,hasClipboardButton:!0,showStatus:!1,additionalControls:(0,I.jsx)(c.T,{href:"".concat(g.y3,"/tablets?TabletID=").concat(a.TabletId)})})}},{name:"State",get header(){return C("State")},render:e=>{let{row:t}=e;return(0,I.jsx)(s._,{theme:(0,T.KR)(t.State),children:t.State})}},{name:"NodeId",get header(){return C("Node ID")},render:e=>{let{row:t}=e;const a=void 0===t.NodeId?void 0:(0,N.a3)(t.NodeId);return(0,I.jsx)(m.h,{to:a,children:t.NodeId})},align:"right"},{name:"fqdn",get header(){return C("Node FQDN")},render:e=>{let{row:t}=e;return t.fqdn?(0,I.jsx)(d.A,{name:t.fqdn,showStatus:!1,hasClipboardButton:!0}):(0,I.jsx)("span",{children:"\u2014"})}},{name:"Generation",get header(){return C("Generation")},align:"right"},{name:"Uptime",get header(){return C("Uptime")},render:e=>{let{row:t}=e;return(0,j.fG)(t.ChangeTime)},sortAccessor:e=>-Number(e.ChangeTime),align:"right"},{name:"Actions",sortable:!1,resizeable:!1,header:"",render:e=>{let{row:t}=e;return(0,I.jsx)(R,{...t})}}];function R(e){const t=e.State===y.g.Stopped,a=(0,f.zL)(),{isUserAllowedToMakeChanges:r}=(0,f.ix)((e=>e.authentication));return(0,I.jsx)(l.U,{buttonView:"outlined",dialogContent:C("dialog.kill"),onConfirmAction:()=>window.api.killTablet(e.TabletId),onConfirmActionSuccess:()=>{a(x.zg.util.invalidateTags(["All"]))},buttonDisabled:t||!r,withPopover:!0,popoverContent:C("controls.kill-not-allowed"),popoverDisabled:r,children:(0,I.jsx)(o.J,{data:n.Z})})}function A(e){let{nodeId:t,path:a,className:n}=e;const[r]=(0,f.Rj)();let s={};const o=void 0===t?void 0:String(t);void 0!==o?s={nodes:[String(o)]}:a&&(s={path:a});const{currentData:l,isFetching:c,error:d}=x.zg.useGetTabletsInfoQuery(0===Object.keys(s).length?i.CN:s,{pollingInterval:r}),m=c&&void 0===l,v=(0,f.ix)((e=>(0,x.Sq)(e,s)));return m?(0,I.jsx)(h.h,{}):d?(0,I.jsx)(u.V,{error:d}):(0,I.jsx)("div",{className:P(null,n),children:(0,I.jsx)(p.G,{columns:D,data:v,settings:S.LE,emptyDataMessage:C("noTabletsData")})})}},23985:(e,t,a)=>{"use strict";a.r(t),a.d(t,{Tenant:()=>em});var n=a(68963),r=a(49352),s=a(52846),o=a(86969),i=a(16670),l=a(93838),c=a(24362),d=a(75859);const u=(0,c.cn)("kv-split"),m=[0,100],p=[50,50];const h=function(e){const[t,a]=n.useState(),r=t=>{const{defaultSizePaneKey:a}=e;localStorage.setItem(a,t.join(","))};return n.useEffect((()=>{const{collapsedSizes:t,triggerCollapse:n}=e;if(n){const e=t||m;r(e),a(e)}}),[e.triggerCollapse]),n.useEffect((()=>{const{triggerExpand:t,defaultSizes:n}=e,s=n||p;t&&(r(s),a(s))}),[e.triggerExpand]),(0,d.jsx)(n.Fragment,{children:(0,d.jsx)(l.Z,{direction:e.direction||"horizontal",sizes:t||(()=>{var t;const{defaultSizePaneKey:a,defaultSizes:n=p,initialSizes:r}=e;if(r)return r;return(null===(t=localStorage.getItem(a))||void 0===t?void 0:t.split(",").map(Number))||n})(),minSize:e.minSize||[0,0],onDrag:t=>{const{onSplitDragAdditional:a}=e;a&&a(),r(t)},className:u(null,e.direction||"horizontal"),gutterSize:8,onDragStart:()=>{const{onSplitStartDragAdditional:t}=e;t&&t(),a(void 0)},expandToMin:!0,children:e.children})})};var v=a(79061),g=a(6748),x=a(52317),y=a(34051),b=a(64270),S=a(24015),j=a(8179),f=a(83203),T=a(50422),N=a(54665),w=a(8511),E=a(2418),C=a(48897),I=a(26688),P=a(93717),D=a(3027),R=a(4119),A=a(43832),L=a.n(A),_=a(27102);const O=(0,c.cn)("heatmap"),M={width:0,height:0},k=10,F=2,z=e=>{const[t,a]=n.useState(M),{tablets:r}=e,s=n.useRef(null),o=n.useRef(null);n.useEffect((()=>{const e=s.current,a=e.getContext("2d");a.clearRect(0,0,e.offsetWidth,e.offsetHeight),r.map(function(e){return(a,n)=>{const{columnsCount:r}=t,s=n%r*(k+F),o=Math.floor(n/r)*(k+F);e.fillStyle=a.color||"grey",e.fillRect(s,o,k,k)}}(a))})),n.useLayoutEffect((()=>{const e=o.current;if(e){const t=e.offsetWidth-15,n=Math.floor(t/(k+F)),s=Math.ceil(r.length/n);a({width:t,height:s*(k+F),columnsCount:n,rowsCount:s})}}),[]);const i=()=>{let e=s.current,t=0;for(;e;)t+=e.offsetTop,e=e.offsetParent;return t},l=()=>{let e=s.current,t=0;for(;e;)t+=e.offsetLeft,e=e.offsetParent;return t},c=(e,a)=>{const{columnsCount:n}=t,r=k+F,s=k+F,o=Math.floor(e/r);return n*Math.floor(a/s)+o},u=L()(((t,a)=>{const n=new CustomEvent("scroll");window.dispatchEvent(n);const s=e.parentRef.current,o=t-l()+s.scrollLeft,d=a-i()+s.scrollTop,u=c(o,d),m=r[u];if(m){const n={name:m.currentMetric,value:m.formattedValue};e.showTooltip(void 0,m,"tablet",n,{left:t-20,top:a-20})}else e.hideTooltip()}),20);return(0,d.jsx)("div",{ref:o,className:O("canvas-container"),onMouseLeave:()=>{setTimeout((()=>{e.hideTooltip()}),40)},children:(0,d.jsx)("canvas",{ref:s,width:t.width,height:t.height,onClick:t=>{const a=e.parentRef.current,n=t.clientX-l()+a.scrollLeft,s=t.clientY-i()+a.scrollTop,o=c(n,s),d=r[o];d&&window.open((e=>{const{TabletId:t}=e,a=window.location.hostname,n=(0,N.ax)(N.ZP.tablet,{id:t}),r=[a,_.EZ,n].map((e=>e.startsWith("/")?e.slice(1):e)).filter(Boolean).join("/");return"".concat("https://").concat(r)})(d),"_blank")},onMouseMove:e=>u(e.clientX,e.clientY)})})},q={r:255,g:4,b:0},U={r:255,g:219,b:77},G={r:59,g:201,b:53},B={CPU:{min:0,max:1e6},Network:{min:0,max:1e9},Storage:{min:0,max:2e9},DataSize:{min:0,max:2e9},RowCount:{min:0},IndexSize:{min:0}},Q=e=>{const t=e.toString(16);return 1===t.length?"0".concat(t):t},H=(e,t,a)=>{if(1===e)return[t];if(2===e)return[t,a];const n=(t.r-a.r)/(e-1),r=(t.g-a.g)/(e-1),s=(t.b-a.b)/(e-1),o=[];for(let i=0;i(e=>{let{r:t,g:a,b:n}=e;return"#".concat(Q(t)).concat(Q(a)).concat(Q(n))})(e)))},Z=e=>{const t=Math.floor(e/2),a=t+1;return[...H(e%2===0?t:t+1,G,U),...H(a,U,q).slice(1)]},V=(e,t)=>{const a=new Set,n=B[e]||{};t.forEach((t=>{var n;a.add(Number(null===(n=t.metrics)||void 0===n?void 0:n[e]))})),Number.isInteger(n.min)&&a.add(n.min),Number.isInteger(n.max)&&a.add(n.max);const r=Array.from(a.values()).sort(((e,t)=>e-t));return{min:r[0],max:r[r.length-1]}},W=(0,c.cn)("histogram"),J=e=>{const t=n.useRef(),{data:a={},maxCount:r}=e,{count:s,leftBound:o,rightBound:i,color:l}=a,c=s/r*100;return(0,d.jsx)("div",{ref:t,className:W("item"),style:{backgroundColor:l,height:"".concat(c,"%")},onMouseEnter:()=>{const a=t.current;e.showTooltip(a,{count:s,leftBound:o,rightBound:i},"histogram")},onMouseLeave:e.hideTooltip})},K=e=>{const{tablets:t,currentMetric:a}=e,{min:n,max:r}=V(a,t),s=Z(50),o=(r-n)/50,i=s.map(((e,t)=>({color:e,count:0,leftBound:(0,R.uf)(n+t*o),rightBound:(0,R.uf)(n+(t+1)*o)})));let l=0;t.forEach((e=>{var t,n;const r=a&&Number(null===(t=e.metrics)||void 0===t?void 0:t[a]),s=Math.floor(r/o),c=(null===(n=i[s])||void 0===n?void 0:n.count)+1;c>l&&(l=c),i[s]={...i[s],count:c}}));return(0,d.jsx)("div",{className:W(),children:(0,d.jsxs)("div",{className:W("chart"),children:[Boolean(r)&&i.map(((t,a)=>(0,d.jsx)(J,{data:t,maxCount:l,showTooltip:e.showTooltip,hideTooltip:e.hideTooltip},a))),(0,d.jsx)("div",{className:W("x-min"),children:(0,R.uf)(n)}),(0,d.jsx)("div",{className:W("x-max"),children:(0,R.uf)(r)}),(0,d.jsx)("div",{className:W("y-min"),children:"0"}),(0,d.jsx)("div",{className:W("y-max"),children:(0,R.uf)(l)})]})})},Y=(0,c.cn)("heatmap"),X=Z(500),$=e=>{let{path:t}=e;const a=(0,y.zL)(),r=n.createRef(),[s]=(0,y.Rj)(),{currentData:o,isFetching:l,error:c}=P.Vc.useGetHeatmapTabletsInfoQuery({path:t},{pollingInterval:s}),u=l&&void 0===o,{tablets:m=[],metrics:p}=o||{},{sort:h,heatmap:v,currentMetric:g}=(0,y.ix)((e=>e.heatmap)),x=function(){a((0,D.hJ)(...arguments))},b=()=>{a((0,D.i8)())},S=e=>{a((0,P.U_)({currentMetric:e[0]}))},j=()=>{a((0,P.U_)({sort:!h}))},f=()=>{a((0,P.U_)({heatmap:!v}))},T=()=>{const{min:e,max:t}=V(g,m),a=m.map((a=>{var n;const r=g&&Number(null===(n=a.metrics)||void 0===n?void 0:n[g]),s=((e,t,a)=>0===a?0:Math.round((e-t)/(a-t)*499))(r,e,t),o=X[s];return{...a,color:o,value:r,formattedValue:(0,R.uf)(r),currentMetric:g}})),n=h?a.sort(((e,t)=>Number(t.value)-Number(e.value))):a;return(0,d.jsx)("div",{ref:r,className:Y("items"),children:(0,d.jsx)(z,{tablets:n,parentRef:r,showTooltip:x,hideTooltip:b})})};return u?(0,d.jsx)(i.a,{}):c?(0,d.jsx)(I.V,{error:c}):(()=>{const{min:e,max:t}=V(g,m);return(0,d.jsxs)("div",{className:Y(),children:[(0,d.jsxs)("div",{className:Y("filters"),children:[(0,d.jsx)(E.P,{className:Y("heatmap-select"),value:g?[g]:[],options:p,onUpdate:S,width:200}),(0,d.jsx)("div",{className:Y("sort-checkbox"),children:(0,d.jsx)(C.X,{onUpdate:j,checked:h,children:"Sort"})}),(0,d.jsx)("div",{className:Y("histogram-checkbox"),children:(0,d.jsx)(C.X,{onUpdate:f,checked:v,children:"Heatmap"})}),(0,d.jsxs)("div",{className:Y("limits"),children:[(0,d.jsxs)("div",{className:Y("limits-block"),children:[(0,d.jsx)("div",{className:Y("limits-title"),children:"min:"}),(0,d.jsx)("div",{className:Y("limits-value"),children:Number.isInteger(e)?(0,R.uf)(e):"\u2014"})]}),(0,d.jsxs)("div",{className:Y("limits-block"),children:[(0,d.jsx)("div",{className:Y("limits-title"),children:"max:"}),(0,d.jsx)("div",{className:Y("limits-value"),children:Number.isInteger(t)?(0,R.uf)(t):"\u2014"})]}),(0,d.jsxs)("div",{className:Y("limits-block"),children:[(0,d.jsx)("div",{className:Y("limits-title"),children:"count:"}),(0,d.jsx)("div",{className:Y("limits-value"),children:(0,R.uf)(m.length)})]})]})]}),v?T():(0,d.jsx)(K,{tablets:m,currentMetric:g,showTooltip:x,hideTooltip:b})]})})()};var ee=a(2335),te=a(70885),ae=a(66809),ne=a(19812),re=a(17095),se=a(2098),oe=a(22692),ie=a(39623),le=a(905);function ce(e){return"SELECT * FROM `".concat(e,"` LIMIT 0")}const de=le.h.injectEndpoints({endpoints:e=>({getViewSchema:e.query({queryFn:async e=>{let{database:t,path:a}=e;try{const e=await window.api.sendQuery({schema:"modern",query:ce(a),database:t,action:"execute-scan"});return(0,ie.gW)(e)?{error:e}:{data:e.columns||[]}}catch(n){return{error:n}}},providesTags:["All"]})}),overrideExisting:"throw"});var ue=a(6523),me=a(88776),pe=a(30817);const he=JSON.parse('{"column-title.id":"Id","column-title.name":"Name","column-title.key":"Key","column-title.type":"Type","column-title.notNull":"NotNull","column-title.autoIncrement":"AutoIncrement","column-title.family":"Family","column-title.media":"Media","column-title.compression":"Compression"}'),ve=(0,pe.wZ)("ydb-schema-viewer",{en:he}),ge=(0,c.cn)("schema-viewer");var xe;function ye(){return ye=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{row:t}=e;return t.id}},Ie={name:"name",get header(){return ve("column-title.name")},width:100,render:e=>{let{row:t}=e;return t.name}},Pe={name:Se,get header(){return ve("column-title.key")},width:70,resizeMinWidth:70,defaultOrder:ne.ZP.ASCENDING,sortAccessor:e=>e.keyAccessor,render:e=>{let{row:t}=e;return t.isKeyColumn?(0,d.jsx)("div",{className:ge("key-icon"),children:(0,d.jsx)(me.J,{data:be,width:12,height:7})}):null}},De={name:je,get header(){return ve("column-title.type")},width:100,render:e=>{let{row:t}=e;return t.type}},Re={name:fe,get header(){return ve("column-title.notNull")},width:100,defaultOrder:ne.ZP.DESCENDING,render:e=>{let{row:t}=e;if(t.notNull)return"\u2713"}},Ae={name:Te,get header(){return ve("column-title.autoIncrement")},width:100,defaultOrder:ne.ZP.DESCENDING,render:e=>{let{row:t}=e;if(t.autoIncrement)return"\u2713"}},Le={name:Ne,get header(){return ve("column-title.family")},width:100,render:e=>{let{row:t}=e;return t.familyName}},_e={name:we,get header(){return ve("column-title.media")},width:100,render:e=>{let{row:t}=e;return t.prefferedPoolKind}},Oe={name:Ee,get header(){return ve("column-title.compression")},width:100,render:e=>{let{row:t}=e;return t.columnCodec}};var Me=a(35638);function ke(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.reduce(((t,a,n)=>({...t,[a]:n-e.length})),{})}function Fe(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=function(e){var t,a,n;return null!==(t=null===e||void 0===e||null===(a=e.PartitionConfig)||void 0===a||null===(n=a.ColumnFamilies)||void 0===n?void 0:n.reduce(((e,t)=>t.Id?{...e,[t.Id]:t}:e),{}))&&void 0!==t?t:{}}(e),{Columns:a,KeyColumnIds:n}=e,r=ke(n);return(null===a||void 0===a?void 0:a.map((e=>{var a,s;const{Id:o,Name:i,NotNull:l,Type:c,Family:d,DefaultFromSequence:u}=e,m=Boolean(null===n||void 0===n?void 0:n.find((e=>e===o))),p=o&&r[o]?r[o]:1,h=d?t[d].Name:void 0,v=d?null===(a=t[d].StorageConfig)||void 0===a||null===(s=a.Data)||void 0===s?void 0:s.PreferredPoolKind:void 0,g=d?function(e){if(e)return e===Me.C6.ColumnCodecPlain?"None":e.replace("ColumnCodec","").toLocaleLowerCase()}(t[d].ColumnCodec):void 0;return{id:o,name:i,isKeyColumn:m,keyAccessor:p,type:c,notNull:l,autoIncrement:Boolean(u),familyName:h,prefferedPoolKind:v,columnCodec:g}})))||[]}function ze(e,t){const{Table:a,ColumnTableDescription:n,ExternalTableDescription:r}=(null===t||void 0===t?void 0:t.PathDescription)||{};return(0,ue.fd)(e)?Fe(a):(0,ue.Jp)(e)?function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{Schema:t={}}=e,{Columns:a,KeyColumnNames:n}=t,r=ke(n);return(null===a||void 0===a?void 0:a.map((e=>{const{Id:t,Name:a,Type:s,NotNull:o}=e,i=Boolean(null===n||void 0===n?void 0:n.find((e=>e===a))),l=a&&r[a]?r[a]:1;return{id:t,name:a,isKeyColumn:i,keyAccessor:l,type:s,notNull:o}})))||[]}(n):(0,ue.uL)(e)?function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{Columns:t}=e;return(null===t||void 0===t?void 0:t.map((e=>{const{Id:t,Name:a,Type:n,NotNull:r}=e;return{id:t,name:a,type:n,notNull:r}})))||[]}(r):[]}const qe=e=>{let{type:t,path:a,tenantName:r,extended:s=!1}=e;const{data:o,isLoading:i}=(0,g.hz)({path:a}),l=(0,ue.$J)(t)?{path:a,database:r}:re.CN,{data:c,isLoading:u}=de.useGetViewSchemaQuery(l),m=n.useMemo((()=>(0,ue.$J)(t)?function(e){return(null===e||void 0===e?void 0:e.map((e=>{var t;return{type:null!==(t=e.type)&&void 0!==t&&t.endsWith("?")?e.type.slice(0,-1):e.type,name:e.name}})))||[]}(c):ze(t,o)),[o,t,c]),p=n.useMemo((()=>m.some((e=>e.autoIncrement))),[m]),h=n.useMemo((()=>(0,ue.$J)(t)?[Ie,De]:(0,ue.uL)(t)?[Ce,Ie,De,Re]:(0,ue.Jp)(t)?[Ce,Pe,Ie,De,Re]:(0,ue.fd)(t)?function(e,t){const a=[Ce,Pe,Ie,De,Re];return e&&a.push(Le,_e,Oe),t&&a.push(Ae),a}(s,p):[]),[t,s,p]);return(0,d.jsx)("div",{className:ge(null),children:i||u?(0,d.jsx)(oe.h,{}):(0,d.jsx)(se.G,{columnsWidthLSKey:"schemaTableColumnsWidth",data:m,columns:h,settings:x.LE,initialSortOrder:{columnId:Se,order:ne.ZP.ASCENDING}})})};var Ue=a(95478),Ge=a(43680),Be=a.n(Ge),Qe=a(11551),He=a(36313),Ze=a(81854),Ve=a(1504);const We=le.h.injectEndpoints({endpoints:e=>({getTopic:e.query({queryFn:async e=>{try{const t=await window.api.getTopic(e);return"object"!==typeof t?{error:{}}:{data:t}}catch(t){return{error:t}}},providesTags:["All"]})}),overrideExisting:"throw"}),Je=(0,He.P1)((e=>e),(e=>We.endpoints.getTopic.select({path:e}))),Ke=(0,He.P1)((e=>e),((e,t)=>Je(t)),((e,t)=>{var a;return null===(a=t(e).data)||void 0===a?void 0:a.topic_stats})),Ye=(0,He.P1)((e=>e),((e,t)=>Je(t)),((e,t)=>{var a;return null===(a=t(e).data)||void 0===a?void 0:a.consumers})),Xe=(0,He.P1)(Ye,(e=>null===e||void 0===e?void 0:e.map((e=>null===e||void 0===e?void 0:e.name)).filter((e=>void 0!==e)))),$e=(0,He.P1)(Ke,(e=>{if(!e)return;const{store_size_bytes:t="0",min_last_write_time:a,max_write_time_lag:n,bytes_written:r}=e||{};return{storeSize:t,partitionsIdleTime:(0,Ve.lE)(a),partitionsWriteLag:(0,Ve.DA)(n),writeSpeed:(0,Ze.c4)(r)}})),et=(0,He.P1)(Ye,(e=>null===e||void 0===e?void 0:e.map((e=>{const{name:t,consumer_stats:a}=e||{},{min_partitions_last_read_time:n,max_read_time_lag:r,max_write_time_lag:s,bytes_read:o}=a||{};return{name:t,readSpeed:(0,Ze.c4)(o),writeLag:(0,Ve.DA)(s),readLag:(0,Ve.DA)(r),readIdleTime:(0,Ve.lE)(n)}}))));var tt=a(68330);const at=JSON.parse('{"averageSpeed":"Average speed","perMinute":"per minute","perHour":"per hour","perDay":"per day"}'),nt=JSON.parse('{"averageSpeed":"\u0421\u0440\u0435\u0434\u043d\u044f\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c","perMinute":"\u0437\u0430 \u043c\u0438\u043d\u0443\u0442\u0443","perHour":"\u0437\u0430 \u0447\u0430\u0441","perDay":"\u0437\u0430 \u0434\u0435\u043d\u044c"}'),rt=(0,pe.wZ)("ydb-components-speed-multimeter",{ru:nt,en:at}),st=(0,c.cn)("speed-multimeter"),ot=e=>{let{data:t,speedSize:a="kb",withValue:r=!0,withPopover:s=!0}=e;const{perMinute:o=0,perHour:i=0,perDay:l=0}=t||{},c=[o,i,l],u=e=>(0,Ze.td)({value:e,size:a,withSpeedLabel:!0}),m=[{value:u(o),label:rt("perMinute")},{value:u(i),label:rt("perHour")},{value:u(l),label:rt("perDay")}],[p,h]=n.useState(o),[v,g]=n.useState(r?0:void 0),[x,y]=n.useState(),b=(e,t)=>{h(e[t]),g(t),y(t)},S=e=>v===e,j=e=>x===e;return(0,d.jsx)("div",{className:st(),children:(0,d.jsxs)("div",{className:st("content"),children:[r&&(0,d.jsx)("div",{className:st("displayed-value"),children:u(p)}),(0,d.jsx)(tt.J,{content:(0,d.jsxs)("div",{className:st("popover-content"),children:[(0,d.jsx)("span",{className:st("popover-header"),children:rt("averageSpeed")}),m.map(((e,t)=>{return(0,d.jsx)("span",{className:st("popover-row",(a=S(t),a?{color:"primary"}:{color:"secondary"})),children:"".concat(e.label,": ").concat(e.value)},t);var a}))]}),className:st("popover-container"),placement:"bottom",disabled:!s,hasArrow:!0,size:"s",children:(0,d.jsx)("div",{className:st("bars"),onMouseLeave:()=>{h(o),g(r?0:void 0),y(void 0)},children:(()=>{const e=Math.max(...c,0)||1;return c.map(((t,a)=>(0,d.jsx)("div",{className:st("bar-container",{highlighted:j(a)}),onMouseEnter:b.bind(null,c,a),children:(0,d.jsx)("div",{className:st("bar",{color:S(a)?"dark":"light"}),style:{width:"".concat(100*t/e,"%")}})},a)))})()})})]})})},it=(0,c.cn)("ydb-diagnostics-consumers-topic-stats"),lt=e=>{let{data:t}=e;const{writeSpeed:a,partitionsWriteLag:n,partitionsIdleTime:r}=t||{},s=[{label:"Write speed",value:(0,d.jsx)(ot,{data:a})},{label:"Write lag",value:(0,R.gC)(n||0)},{label:"Write idle time",value:(0,R.gC)(r||0)}];return(0,d.jsx)("div",{className:it("wrapper"),children:s.map(((e,t)=>(0,d.jsxs)("div",{className:it("item"),children:[(0,d.jsx)("div",{className:it("label"),children:e.label}),(0,d.jsx)("div",{className:it("value"),children:e.value})]},t)))})};var ct=a(63041),dt=a.n(ct),ut=a(74170),mt=a(21986);const pt=e=>{let{text:t,popoverContent:a,className:n,contentClassName:r}=e;return(0,d.jsxs)("div",{className:n,children:[t,"\xa0",(0,d.jsx)(mt.J,{content:a,contentClassName:r})]})},ht=70,vt=54,gt=268,xt="#ADE8F5",yt="#f5be9d",bt=e=>{let{width:t,height:a,transform:n}=e;return(0,d.jsx)("path",{d:"M-".concat(t/2," 0 c0 -").concat(a,", ").concat(t," -").concat(a,", ").concat(t," 0"),fill:"none",strokeDasharray:"4,6",stroke:"#28f",strokeWidth:"1.6",transform:n})},St=e=>{let{width:t}=e;return(0,d.jsx)("path",{fill:"none",strokeWidth:"2",d:"M0 0 h".concat(t," l-10 -5 m0 10 l10 -5")})},jt=()=>(0,d.jsxs)("g",{fill:"var(--g-color-text-primary)",fontSize:"12",children:[(0,d.jsx)("g",{transform:"translate(0, ".concat(27,")"),stroke:yt,children:(0,d.jsx)(St,{width:203})}),(0,d.jsxs)("g",{transform:"translate(".concat(30,", 0)"),children:[(0,d.jsxs)("g",{transform:"translate(".concat(35,", ").concat(27,")"),children:[(0,d.jsx)(bt,{width:ht,height:15}),(0,d.jsx)("text",{x:"0",y:"-15",textAnchor:"middle",children:(0,d.jsx)("tspan",{x:"0",dy:"0",children:"write lag"})})]}),(0,d.jsxs)("g",{transform:"translate(".concat(119,", ").concat(27,")"),children:[(0,d.jsx)(bt,{width:98,height:15}),(0,d.jsx)("text",{x:"0",y:"-15",textAnchor:"middle",children:(0,d.jsx)("tspan",{x:"0",dy:"0",children:"write idle time"})})]})]}),(0,d.jsxs)("g",{transform:"translate(".concat(30,", 0)"),children:[(0,d.jsxs)("g",{transform:"translate(".concat(0,", ",27,")"),children:[(0,d.jsx)("use",{y:"-10",xlinkHref:"#check",stroke:yt}),(0,d.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,d.jsx)("tspan",{x:"0",dy:"0",children:"create time"})})]}),(0,d.jsxs)("g",{transform:"translate(".concat(ht,", ").concat(27,")"),children:[(0,d.jsx)("use",{y:"-10",xlinkHref:"#check",stroke:yt}),(0,d.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,d.jsx)("tspan",{x:"0",dy:"0",children:"write time"})})]}),(0,d.jsx)("g",{transform:"translate(".concat(168,", ").concat(27,")"),children:(0,d.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,d.jsx)("tspan",{x:"0",dy:"0",children:"now"})})})]})]}),ft=()=>(0,d.jsxs)("g",{fill:"var(--g-color-text-primary)",fontSize:"12",children:[(0,d.jsx)("g",{transform:"translate(0, ".concat(27,")"),stroke:xt,children:(0,d.jsx)(St,{width:gt})}),(0,d.jsxs)("g",{transform:"translate(".concat(30,", 0)"),children:[(0,d.jsxs)("g",{transform:"translate(".concat(105,", ").concat(27,")"),children:[(0,d.jsx)(bt,{width:ht,height:15}),(0,d.jsx)("text",{x:"0",y:"-15",textAnchor:"middle",children:(0,d.jsx)("tspan",{x:"0",dy:"0",children:"read lag"})})]}),(0,d.jsxs)("g",{transform:"translate(".concat(35,", ").concat(27,")"),children:[(0,d.jsx)(bt,{width:ht,height:15}),(0,d.jsx)("text",{x:"0",y:"-15",textAnchor:"middle",children:(0,d.jsx)("tspan",{x:"0",dy:"0",children:"write lag"})})]}),(0,d.jsxs)("g",{transform:"translate(".concat(182,", ").concat(27,")"),children:[(0,d.jsx)(bt,{width:91,height:15}),(0,d.jsx)("text",{x:"0",y:"-15",textAnchor:"middle",children:(0,d.jsx)("tspan",{x:"0",dy:"0",children:"read idle time"})})]})]}),(0,d.jsxs)("g",{transform:"translate(".concat(30,", ").concat(27,")"),children:[(0,d.jsxs)("g",{transform:"translate(".concat(0,", 0)"),children:[(0,d.jsx)("use",{y:"-10",xlinkHref:"#check",stroke:xt}),(0,d.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,d.jsx)("tspan",{x:"0",dy:"0",children:"create time"})})]}),(0,d.jsxs)("g",{transform:"translate(".concat(ht,", 0)"),children:[(0,d.jsx)("use",{y:"-10",xlinkHref:"#check",stroke:xt}),(0,d.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,d.jsx)("tspan",{x:"0",dy:"0",children:"write time"})})]}),(0,d.jsxs)("g",{transform:"translate(".concat(140,", 0)"),children:[(0,d.jsx)("use",{x:"-2",y:"-10",xlinkHref:"#check",stroke:xt}),(0,d.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,d.jsx)("tspan",{x:"0",dy:"0",children:"read time"})})]}),(0,d.jsx)("g",{transform:"translate(".concat(224,", 0)"),children:(0,d.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,d.jsx)("tspan",{x:"0",dy:"0",children:"now"})})})]})]}),Tt=e=>{let{id:t,fill:a}=e;return(0,d.jsx)("pattern",{id:t,x:"0",y:"0",width:"8",height:"8",patternUnits:"userSpaceOnUse",children:(0,d.jsx)("path",{d:"M0 5L5 0H8L0 8V5M5 8L8 5V8Z",fill:a})})},Nt=()=>(0,d.jsxs)("svg",{className:"paint",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",viewBox:"0 0 ".concat(gt," ").concat(vt),width:gt,height:vt,children:[(0,d.jsxs)("defs",{children:[(0,d.jsx)("g",{id:"check",children:(0,d.jsx)("path",{d:"M0 3 v14",strokeWidth:"2"})}),(0,d.jsx)(Tt,{id:"latest-read",fill:xt}),(0,d.jsx)(Tt,{id:"latest-write",fill:yt})]}),(0,d.jsx)(jt,{})]}),wt=()=>(0,d.jsxs)("svg",{className:"paint",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",viewBox:"0 0 ".concat(gt," ").concat(vt),width:gt,height:vt,children:[(0,d.jsxs)("defs",{children:[(0,d.jsx)("g",{id:"check",children:(0,d.jsx)("path",{d:"M0 3 v14",strokeWidth:"2"})}),(0,d.jsx)(Tt,{id:"latest-read",fill:xt}),(0,d.jsx)(Tt,{id:"latest-write",fill:yt})]}),(0,d.jsx)(ft,{})]}),Et=(0,c.cn)("ydb-lag-popover-content"),Ct=e=>{let{text:t,type:a}=e;return(0,d.jsxs)("div",{className:Et({type:a}),children:[(0,d.jsx)("div",{className:Et("text"),children:t}),(0,d.jsx)("div",{children:"read"===a?(0,d.jsx)(wt,{}):(0,d.jsx)(Nt,{})})]})},It=JSON.parse('{"noConsumersMessage.topic":"This topic has no consumers","noConsumersMessage.stream":"This changefeed has no consumers","lagsPopover.readLags":"Read lags statistics, maximum among all consumer partitions (time format dd hh:mm:ss)","table.emptyDataMessage":"No consumers match the current search","controls.search":"Consumer"}'),Pt=JSON.parse('{"noConsumersMessage.topic":"\u0423 \u044d\u0442\u043e\u0433\u043e \u0442\u043e\u043f\u0438\u043a\u0430 \u043d\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439","noConsumersMessage.stream":"\u0423 \u044d\u0442\u043e\u0433\u043e \u0441\u0442\u0440\u0438\u043c\u0430 \u043d\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439","lagsPopover.readLags":"\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043b\u0430\u0433\u043e\u0432 \u0447\u0442\u0435\u043d\u0438\u044f, \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0440\u0435\u0434\u0438 \u0432\u0441\u0435\u0445 \u043f\u0430\u0440\u0442\u0438\u0446\u0438\u0439 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f (\u0444\u043e\u0440\u043c\u0430\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0434\u0434 \u0447\u0447:\u043c\u043c:\u0441\u0441)","table.emptyDataMessage":"\u041f\u043e \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u043e\u0438\u0441\u043a\u0443 \u043d\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439","controls.search":"Consumer"}'),Dt=(0,pe.wZ)("ydb-diagnostics-consumers",{ru:Pt,en:It}),Rt="consumer",At="readSpeed",Lt="readLags",_t={[Rt]:"Consumer",[At]:"Read speed",[Lt]:"Read lags, duration"},Ot="writeLag",Mt="readLag",kt="readIdleTime",Ft={[Ot]:"write lag",[Mt]:"read lag",[kt]:"read idle time"},zt=(0,c.cn)("ydb-diagnostics-consumers-columns-header"),qt=()=>(0,d.jsx)(pt,{className:zt("lags"),text:_t[Lt],popoverContent:(0,d.jsx)(Ct,{text:Dt("lagsPopover.readLags"),type:"read"})}),Ut=(0,c.cn)("ydb-diagnostics-consumers-columns"),Gt=[{name:Rt,header:_t[Rt],align:ne.ZP.LEFT,render:e=>{let{row:t}=e;if(!t.name)return"\u2013";const a=dt().parse(location.search,{ignoreQueryPrefix:!0});return(0,d.jsx)(ut.h,{to:(0,N.ax)(N.ZP.tenant,void 0,{...a,[Ue.XV.diagnosticsTab]:S.qQ.partitions,selectedConsumer:t.name}),children:t.name})}},{name:At,header:_t[At],align:ne.ZP.RIGHT,resizeMinWidth:140,sortAccessor:e=>e.readSpeed.perMinute,render:e=>{let{row:t}=e;return(0,d.jsx)(ot,{data:t.readSpeed})}},{name:Lt,header:(0,d.jsx)(qt,{}),className:Ut("lags-header"),sub:[{name:Ot,header:Ft[Ot],align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,R.gC)(t.writeLag)}},{name:Mt,header:Ft[Mt],align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,R.gC)(t.readLag)}},{name:kt,header:Ft[kt],align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,R.gC)(t.readIdleTime)}}]}],Bt=(0,c.cn)("ydb-diagnostics-consumers"),Qt=e=>{let{path:t,type:a}=e;const r=(0,ue.zf)(a),[s,o]=n.useState(""),[l]=(0,y.Rj)(),{currentData:c,isFetching:u,error:m}=We.useGetTopicQuery({path:t},{pollingInterval:l}),p=u&&void 0===c,h=(0,y.ix)((e=>et(e,t))),v=(0,y.ix)((e=>$e(e,t))),g=n.useMemo((()=>{if(!h)return[];const e=new RegExp(Be()(s),"i");return h.filter((t=>e.test(String(t.name))))}),[h,s]);return p?(0,d.jsx)(i.a,{size:"m"}):m?(0,d.jsx)(I.V,{error:m}):h&&h.length?(0,d.jsxs)("div",{className:Bt(),children:[(0,d.jsxs)("div",{className:Bt("controls"),children:[(0,d.jsx)(Qe.o,{onChange:e=>{o(e)},placeholder:Dt("controls.search"),className:Bt("search"),value:s}),v&&(0,d.jsx)(lt,{data:v})]}),(0,d.jsx)("div",{className:Bt("table-wrapper"),children:(0,d.jsx)("div",{className:Bt("table-content"),children:(0,d.jsx)(se.G,{columnsWidthLSKey:"consumersColumnsWidth",wrapperClassName:Bt("table"),data:g,columns:Gt,settings:x.LE,emptyDataMessage:Dt("table.emptyDataMessage")})})})]}):(0,d.jsx)("div",{children:Dt("noConsumersMessage.".concat(r?"stream":"topic"))})};var Ht=a(83326),Zt=a.n(Ht),Vt=a(87555);const Wt=le.h.injectEndpoints({endpoints:e=>({getDescribe:e.query({queryFn:async(e,t)=>{let{signal:a}=t;try{const t=await Promise.all(e.map((e=>window.api.getDescribe({path:e},{signal:a}))));return{data:t.reduce(((e,t)=>(null!==t&&void 0!==t&&t.Path&&(e[t.Path]=t),e)),{})}}catch(n){return{error:n}}},providesTags:["All"]})}),overrideExisting:"throw"});a(55895);const Jt=(0,c.cn)("kv-describe"),Kt=new Map,Yt=e=>{let{path:t,type:a}=e;const[n]=(0,y.Rj)(),r=(0,ue.St)(a),s=(0,y.ix)((e=>(0,g.eU)(e,t,a)),Vt.wU);let o=re.CN;r?s&&(o=[t,...s]):o=[t];const{currentData:l,isFetching:c,error:u}=Wt.useGetDescribeQuery(o,{pollingInterval:n}),m=c&&void 0===l,p=l;let h;if(p){const e=Object.keys(p);h=1===e.length?p[e[0]]:p}return m||r&&!s?(0,d.jsx)(i.a,{size:"m"}):u?(0,d.jsx)(I.V,{error:u,className:Jt("message-container")}):m||h?(0,d.jsx)("div",{className:Jt(),children:(0,d.jsx)("div",{className:Jt("result"),children:(0,d.jsx)(Zt(),{data:h,className:Jt("tree"),onClick:e=>{let{path:t}=e;const a=!Kt.get(t);Kt.set(t,a)},searchOptions:{debounceTime:300},isExpanded:e=>Kt.get(e)||!1})})}):(0,d.jsx)("div",{className:Jt("message-container"),children:"Empty"})};var Xt=a(62206);const $t=e=>{const{PathType:t,PathSubType:a}=(null===e||void 0===e?void 0:e.Self)||{};return(0,ue.d)(t,a)},ea=e=>{var t;return null===e||void 0===e||null===(t=e.UserAttributes)||void 0===t?void 0:t.some((e=>{let{Key:t,Value:a}=e;return"__async_replica"===t&&"true"===a}))};var ta=a(31954),aa=a(93849);const na=(0,aa.a)({values:{PathType:e=>null===e||void 0===e?void 0:e.substring("EPathType".length),CreateStep:R.o0},labels:{PathType:(0,ta.Z)("common.type"),CreateStep:(0,ta.Z)("common.created")}}),ra=e=>{let{value:t,withSpeedLabel:a,...n}=e;const r=(0,Ze.td)({value:t,withSpeedLabel:a,...n}),s=(0,Ze.td)({value:t,withSpeedLabel:a,size:"b"});return(0,d.jsx)("span",{title:s,children:r})},sa=(e,t)=>e?(0,d.jsx)(ra,{value:e,significantDigits:2,...t}):null,oa=(0,aa.a)({values:{Type:e=>null===e||void 0===e?void 0:e.substring(10),State:e=>null===e||void 0===e?void 0:e.substring(11),KeyColumnNames:e=>null===e||void 0===e?void 0:e.join(", "),DataColumnNames:e=>null===e||void 0===e?void 0:e.join(", "),DataSize:sa},labels:{KeyColumnNames:"Columns",DataColumnNames:"Includes"}}),ia={[Me.tB.METERING_MODE_REQUEST_UNITS]:"request-units",[Me.tB.METERING_MODE_RESERVED_CAPACITY]:"reserved-capacity"},la=(0,aa.a)({values:{Partitions:e=>(0,R.uf)((null===e||void 0===e?void 0:e.length)||0),PQTabletConfig:e=>{const t=Math.round(e.PartitionConfig.LifetimeSeconds/x.RQ*100)/100;return"".concat((0,R.uf)(t)," hours")}},labels:{Partitions:"Partitions count",PQTabletConfig:"Retention"}}),ca=(0,aa.a)({values:{Codecs:e=>e&&Object.values(e.Codecs||{}).join(", "),MeteringMode:e=>e&&ia[e]},labels:{MeteringMode:"Metering mode"}}),da=(0,aa.a)({values:{StorageLimitBytes:R.td,WriteSpeedInBytesPerSecond:R.t$},labels:{StorageLimitBytes:"Retention storage",WriteSpeedInBytesPerSecond:"Partitions write speed"}}),ua=(0,aa.a)({values:{Mode:e=>null===e||void 0===e?void 0:e.substring("ECdcStreamMode".length),Format:e=>null===e||void 0===e?void 0:e.substring("ECdcStreamFormat".length)}}),ma=(0,aa.a)({values:{CPU:R.LO,Memory:sa,Storage:sa,Network:R.t$,ReadThroughput:R.t$,WriteThroughput:R.t$},defaultValueFormatter:R.uf}),pa=(0,aa.a)({values:{FollowerCount:R.uf},labels:{FollowerCountPerDataCenter:"FollowerCountPerDC"},defaultValueFormatter:e=>e&&String(e)}),ha=(0,aa.a)({values:{FollowerCount:R.uf,CrossDataCenterFollowerCount:R.uf}}),va=(0,aa.a)({values:{DataSize:sa,IndexSize:sa,LastAccessTime:R.o0,LastUpdateTime:R.o0},defaultValueFormatter:R.uf}),ga=new Set(["Type","State","DataSize","KeyColumnNames","DataColumnNames"]),xa=e=>{var t;let{data:a}=e;const n=$t(null===a||void 0===a?void 0:a.PathDescription);if(!a)return(0,d.jsxs)("div",{className:"error",children:["No ",n," data"]});const r=null===(t=a.PathDescription)||void 0===t?void 0:t.TableIndex,s=[];let o;for(o in r)ga.has(o)&&s.push(oa(o,null===r||void 0===r?void 0:r[o]));return(0,d.jsx)(Xt._P,{title:n,info:s})},ya=le.h.injectEndpoints({endpoints:e=>({getOverview:e.query({queryFn:async(e,t)=>{let{signal:a}=t;try{const[t,...n]=await Promise.all(e.map((e=>window.api.getDescribe({path:e},{signal:a}))));return{data:{data:t,additionalData:n}}}catch(n){return{error:n}}}})})});var ba=a(69214);const Sa=JSON.parse('{"external-objects.source-type":"Source Type","external-objects.data-source":"Data Source","external-objects.location":"Location","external-objects.auth-method":"Auth Method","external-objects.auth-method.none":"None","external-objects.auth-method.service-account":"Service Account","view.query-text":"Query Text"}'),ja=(0,pe.wZ)("ydb-tenant-objects-info",{en:Sa}),fa=(0,c.cn)("ydb-external-data-source-info"),Ta=e=>{var t,a,n,r;return[{label:ja("external-objects.source-type"),value:null===(t=e.PathDescription)||void 0===t||null===(a=t.ExternalDataSourceDescription)||void 0===a?void 0:a.SourceType},na("CreateStep",null===(n=e.PathDescription)||void 0===n||null===(r=n.Self)||void 0===r?void 0:r.CreateStep)]},Na=e=>{var t;const{Location:a,Auth:n}=(null===(t=e.PathDescription)||void 0===t?void 0:t.ExternalDataSourceDescription)||{};return[...Ta(e),{label:ja("external-objects.location"),value:(0,d.jsx)(ba.A,{name:a,showStatus:!1,hasClipboardButton:!0,clipboardButtonAlwaysVisible:!0,className:fa("location")})},{label:ja("external-objects.auth-method"),value:null!==n&&void 0!==n&&n.ServiceAccount?ja("external-objects.auth-method.service-account"):ja("external-objects.auth-method.none")}]},wa=e=>{let{data:t,prepareData:a}=e;const n=$t(null===t||void 0===t?void 0:t.PathDescription);return t?(0,d.jsx)(Xt._P,{title:n,info:a(t)}):(0,d.jsxs)("div",{className:"error",children:["No ",n," data"]})},Ea=e=>{let{data:t}=e;return(0,d.jsx)(wa,{data:t,prepareData:Na})};var Ca=a(86974),Ia=a(32270);const Pa=(0,c.cn)("ydb-external-table-info"),Da=(e,t)=>{var a,n;const{CreateStep:r}=(null===(a=e.PathDescription)||void 0===a?void 0:a.Self)||{},{SourceType:s,DataSourcePath:o}=(null===(n=e.PathDescription)||void 0===n?void 0:n.ExternalTableDescription)||{},i=null===o||void 0===o?void 0:o.split("/").pop();return[{label:ja("external-objects.source-type"),value:s},na("CreateStep",r),{label:ja("external-objects.data-source"),value:o&&(0,d.jsx)("span",{title:o,children:(0,d.jsx)(Ia.j,{title:i||"",url:t})})}]},Ra=(e,t)=>{var a,n;const r=null===(a=e.PathDescription)||void 0===a||null===(n=a.ExternalTableDescription)||void 0===n?void 0:n.Location;return[...Da(e,t),{label:ja("external-objects.location"),value:(0,d.jsx)(ba.A,{name:r,showStatus:!1,hasClipboardButton:!0,clipboardButtonAlwaysVisible:!0,className:Pa("location")})}]},Aa=e=>{var t,a;let{data:n,prepareData:r}=e;const s=(0,Ca.TH)(),o=(0,N.mB)(s),i=(0,N.vF)({...o,schema:null===n||void 0===n||null===(t=n.PathDescription)||void 0===t||null===(a=t.ExternalTableDescription)||void 0===a?void 0:a.DataSourcePath}),l=$t(null===n||void 0===n?void 0:n.PathDescription);return n?(0,d.jsx)(Xt._P,{title:l,info:r(n,i)}):(0,d.jsxs)("div",{className:"error",children:["No ",l," data"]})},La=e=>{let{data:t}=e;return(0,d.jsx)(Aa,{data:t,prepareData:Ra})};var _a=a(55334),Oa=a(10288);const Ma=(0,c.cn)("ydb-view-info"),ka=e=>{var t,a;const n=null===(t=e.PathDescription)||void 0===t||null===(a=t.ViewDescription)||void 0===a?void 0:a.QueryText;return[{name:ja("view.query-text"),copyText:n,content:(0,d.jsx)(Oa.x,{variant:"code-2",wordBreak:"break-word",children:n})}]};function Fa(e){let{data:t}=e;const a=$t(null===t||void 0===t?void 0:t.PathDescription);return t?(0,d.jsxs)("div",{className:Ma(null),children:[(0,d.jsx)("div",{className:Ma("title"),children:a}),(0,d.jsx)(_a.w,{nameMaxWidth:200,copyPosition:"outside",className:Ma("properties-list"),items:ka(t)})]}):(0,d.jsxs)("div",{className:"error",children:["No ",a," data"]})}var za=a(77796),qa=a(14979);function Ua(e){let{state:t}=e;return t?"StandBy"in t?(0,d.jsx)(qa._,{theme:"info",children:"Standby"}):"Paused"in t?(0,d.jsx)(qa._,{theme:"info",children:"Paused"}):"Done"in t?(0,d.jsx)(qa._,{theme:"success",children:"Done"}):"Error"in t?(0,d.jsx)(qa._,{theme:"danger",children:"Error"}):(0,d.jsx)(qa._,{size:"s",children:"Unknown"}):null}const Ga=JSON.parse('{"column.dstPath.name":"Dist","column.srcPath.name":"Source","everythingWithPrefix":"Everything with prefix:","noData":"No data.","title":"Replicated Paths"}'),Ba=(0,pe.wZ)("ydb-diagnostics-async-replication-paths",{en:Ga}),Qa=(0,c.cn)("ydb-async-replication-paths"),Ha=[{name:Ba("column.srcPath.name"),render:e=>{let{row:t}=e;return t.SrcPath},sortAccessor:e=>e.SrcPath},{name:Ba("column.dstPath.name"),render:e=>{let{row:t}=e;return t.DstPath},sortAccessor:e=>e.DstPath}];function Za(e){let{config:t}=e;if(!t)return null;let a=Ba("noData");var n,r;t.Everything&&(a=(0,d.jsxs)("span",{children:[Ba("everythingWithPrefix")," ",(0,d.jsx)(Oa.x,{variant:"code-inline-2",children:null!==(n=null===(r=t.Everything)||void 0===r?void 0:r.DstPrefix)&&void 0!==n?n:"undefined"}),"."]}));return t.Specific&&(a=(0,d.jsx)(se.G,{data:t.Specific.Targets,settings:x.E6,columns:Ha})),(0,d.jsxs)("div",{className:Qa(),children:[(0,d.jsx)("div",{className:Qa("title"),children:Ba("title")}),a]})}function Va(e){let{connection:t}=e;return t?t.StaticCredentials?(0,d.jsx)(qa._,{value:t.StaticCredentials.User,theme:"normal",children:"user"}):"OAuthToken"in t?"OAuth":"unknown":null}const Wa=JSON.parse('{"credentials.label":"Credentials","noData":"No data for entity:","srcConnection.database.label":"Source Database Path","srcConnection.endpoint.label":"Source Cluster Endpoint","state.label":"State"}'),Ja=(0,pe.wZ)("ydb-diagnostics-async-replication-info",{en:Wa});function Ka(e){var t,a,n,r,s,o,i,l,c,u,m,p,h,v,g;let{data:x}=e;const y=$t(null===x||void 0===x?void 0:x.PathDescription);return x?(0,d.jsxs)(za.k,{direction:"column",gap:"4",children:[(0,d.jsx)(Xt._P,{title:y,info:[{label:Ja("state.label"),value:(0,d.jsx)(Ua,{state:null===(t=x.PathDescription)||void 0===t||null===(a=t.ReplicationDescription)||void 0===a?void 0:a.State})},{label:Ja("srcConnection.endpoint.label"),value:(0,d.jsx)(Oa.x,{variant:"code-inline-2",children:null===(n=x.PathDescription)||void 0===n||null===(r=n.ReplicationDescription)||void 0===r||null===(s=r.Config)||void 0===s||null===(o=s.SrcConnectionParams)||void 0===o?void 0:o.Endpoint})},{label:Ja("srcConnection.database.label"),value:(0,d.jsx)(Oa.x,{variant:"code-inline-2",children:null===(i=x.PathDescription)||void 0===i||null===(l=i.ReplicationDescription)||void 0===l||null===(c=l.Config)||void 0===c||null===(u=c.SrcConnectionParams)||void 0===u?void 0:u.Database})},{label:Ja("credentials.label"),value:(0,d.jsx)(Va,{connection:null===(m=x.PathDescription)||void 0===m||null===(p=m.ReplicationDescription)||void 0===p||null===(h=p.Config)||void 0===h?void 0:h.SrcConnectionParams})}]}),(0,d.jsx)(Za,{config:null===(v=x.PathDescription)||void 0===v||null===(g=v.ReplicationDescription)||void 0===g?void 0:g.Config})]}):(0,d.jsxs)("div",{className:"error",children:[Ja("noData")," ",y]})}const Ya=JSON.parse('{"writeLagPopover":"Write lag, maximum among all topic partitions","writeIdleTimePopover":"Write idle time, maximum among all topic partitions"}'),Xa=JSON.parse('{"writeLagPopover":"\u041b\u0430\u0433 \u0437\u0430\u043f\u0438\u0441\u0438, \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0440\u0435\u0434\u0438 \u0432\u0441\u0435\u0445 \u043f\u0430\u0440\u0442\u0438\u0446\u0438\u0439 \u0442\u043e\u043f\u0438\u043a\u0430","writeIdleTimePopover":"\u0412\u0440\u0435\u043c\u044f \u0431\u0435\u0437 \u0437\u0430\u043f\u0438\u0441\u0438, \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0440\u0435\u0434\u0438 \u0432\u0441\u0435\u0445 \u043f\u0430\u0440\u0442\u0438\u0446\u0438\u0439 \u0442\u043e\u043f\u0438\u043a\u0430"}'),$a=(0,pe.wZ)("ydb-diagnostics-overview-topic-stats",{ru:Xa,en:Ya}),en=(0,c.cn)("ydb-overview-topic-stats"),tn=e=>[{label:"Store size",value:(0,R.td)(e.storeSize)},{label:(0,d.jsx)(pt,{text:"Write idle time",popoverContent:(0,d.jsx)(Ct,{text:$a("writeIdleTimePopover"),type:"write"})}),value:(0,Ve.tt)(e.partitionsIdleTime)},{label:(0,d.jsx)(pt,{text:"Write lag",popoverContent:(0,d.jsx)(Ct,{text:$a("writeLagPopover"),type:"write"})}),value:(0,Ve.tt)(e.partitionsWriteLag)},{label:"Average write speed",value:(0,d.jsx)(ot,{data:e.writeSpeed,withValue:!1})}],an=e=>{const t=e.writeSpeed;return[{label:"per minute",value:(0,R.t$)(t.perMinute)},{label:"per hour",value:(0,R.t$)(t.perHour)},{label:"per day",value:(0,R.t$)(t.perDay)}]},nn=e=>{let{path:t}=e;const[a]=(0,y.Rj)(),{currentData:n,isFetching:r,error:s}=We.useGetTopicQuery({path:t},{pollingInterval:a}),o=r&&void 0===n,l=(0,y.ix)((e=>$e(e,t)));return o?(0,d.jsx)("div",{className:en(),children:(0,d.jsx)(i.a,{size:"s"})}):s||!l?(0,d.jsxs)("div",{className:en(),children:[(0,d.jsx)("div",{className:en("title"),children:"Stats"}),(0,d.jsx)(I.V,{error:s})]}):(0,d.jsxs)("div",{className:en(),children:[(0,d.jsx)("div",{className:en("title"),children:"Stats"}),(0,d.jsx)("div",{className:en("info"),children:(0,d.jsx)(Xt._P,{info:tn(l),multilineLabels:!0})}),(0,d.jsx)("div",{className:en("bytes-written"),children:(0,d.jsx)(Xt._P,{info:an(l)})})]})},rn=e=>{var t;const a=null===e||void 0===e||null===(t=e.PathDescription)||void 0===t?void 0:t.PersQueueGroup;if(!a)return[];const{Partitions:n=[],PQTabletConfig:r={PartitionConfig:{LifetimeSeconds:0}}}=a,{Codecs:s,MeteringMode:o}=r,{WriteSpeedInBytesPerSecond:i,StorageLimitBytes:l}=r.PartitionConfig;return[...(0,Xt.Z6)(la,{Partitions:n,PQTabletConfig:r}),...(0,Xt.Z6)(da,{StorageLimitBytes:l,WriteSpeedInBytesPerSecond:i}),...(0,Xt.Z6)(ca,{Codecs:s,MeteringMode:o})]},sn=(e,t)=>{var a,n,r;if(!e&&!t)return[];const s=null===e||void 0===e||null===(a=e.PathDescription)||void 0===a?void 0:a.CdcStreamDescription,{Mode:o,Format:i}=s||{};return[na("CreateStep",null===e||void 0===e||null===(n=e.PathDescription)||void 0===n||null===(r=n.Self)||void 0===r?void 0:r.CreateStep),...(0,Xt.Z6)(ua,{Mode:o,Format:i}),...rn(t)]},on=e=>{let{path:t,data:a,topic:n}=e;const r=$t(null===a||void 0===a?void 0:a.PathDescription);return a&&n?(0,d.jsxs)("div",{children:[(0,d.jsx)(Xt._P,{title:r,info:sn(a,n)}),(0,d.jsx)(nn,{path:t})]}):(0,d.jsxs)("div",{className:"error",children:["No ",r," data"]})},ln=JSON.parse('{"page.title":"Database","pages.query":"Query","pages.diagnostics":"Diagnostics","acl.owner":"Owner","acl.empty":"No Acl data","summary.navigation":"Navigation","summary.showPreview":"Show preview","summary.source-type":"Source Type","summary.data-source":"Data Source","summary.copySchemaPath":"Copy schema path","summary.type":"Type","summary.subtype":"SubType","summary.id":"Id","summary.version":"Version","summary.created":"Created","summary.partitions":"Partitions count","summary.paths":"Paths","summary.shards":"Shards","summary.state":"State","summary.mode":"Mode","summary.format":"Format","summary.retention":"Retention","label.read-only":"ReadOnly","actions.copied":"The path is copied to the clipboard","actions.notCopied":"Couldn\u2019t copy the path","actions.copyPath":"Copy path","actions.openPreview":"Open preview","actions.createTable":"Create table...","actions.createExternalTable":"Create external table...","actions.createTopic":"Create topic...","actions.createColumnTable":"Create column table...","actions.createAsyncReplication":"Create async replication...","actions.createView":"Create view...","actions.dropTable":"Drop table...","actions.dropTopic":"Drop topic...","actions.dropView":"Drop view...","actions.alterTable":"Alter table...","actions.alterTopic":"Alter topic...","actions.selectQuery":"Select query...","actions.upsertQuery":"Upsert query...","actions.alterReplication":"Alter async replicaton...","actions.dropReplication":"Drop async replicaton...","actions.createDirectory":"Create directory","schema.tree.dialog.placeholder":"Relative path","schema.tree.dialog.invalid":"Invalid path","schema.tree.dialog.whitespace":"Whitespace is not allowed","schema.tree.dialog.empty":"Path is empty","schema.tree.dialog.header":"Create directory","schema.tree.dialog.description":"Inside","schema.tree.dialog.buttonCancel":"Cancel","schema.tree.dialog.buttonApply":"Create"}'),cn=(0,pe.wZ)("ydb-tenant",{en:ln});function dn(e){let{data:t}=e;const a=$t(t);return ea(t)?(0,d.jsxs)(za.k,{gap:1,wrap:"nowrap",children:[a," ",(0,d.jsx)(qa._,{children:cn("label.read-only")})]}):a}const un=JSON.parse('{"tableStats":"Table Stats","tabletMetrics":"Tablet Metrics","partitionConfig":"Partition Config"}'),mn=JSON.parse('{"tableStats":"\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b","tabletMetrics":"\u041c\u0435\u0442\u0440\u0438\u043a\u0438 \u0442\u0430\u0431\u043b\u0435\u0442\u043a\u0438","partitionConfig":"\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043f\u0430\u0440\u0442\u0438\u0446\u0438\u0438"}'),pn=(0,pe.wZ)("ydb-diagnostics-overview-table-info",{ru:mn,en:un}),hn=e=>e.SchemaPresetName&&void 0!==e.SchemaPresetId,vn=e=>{if(e.Enabled&&e.Enabled.ColumnName&&void 0!==e.Enabled.ExpireAfterSeconds){return{label:"TTL for rows",value:"column: '".concat(e.Enabled.ColumnName,"', expire after: ").concat((0,Ve.tt)(1e3*e.Enabled.ExpireAfterSeconds,1))}}};const gn=(e,t)=>{if(!e)return{};const{PathDescription:a={}}=e,{TableStats:n={},TabletMetrics:r={},Table:{PartitionConfig:s={},TTLSettings:o}={},ColumnTableDescription:i={}}=a,{PartCount:l,RowCount:c,DataSize:d,IndexSize:u,LastAccessTime:m,LastUpdateTime:p,ImmediateTxCompleted:h,PlannedTxCompleted:v,TxRejectedByOverload:g,TxRejectedBySpace:x,TxCompleteLagMsec:y,InFlightTxCount:b,RowUpdates:S,RowDeletes:j,RowReads:f,RangeReads:T,RangeReadRows:N}=n,{FollowerGroups:w,FollowerCount:E,CrossDataCenterFollowerCount:C}=s;let I=[];switch(t){case Me.gb.EPathTypeTable:I=((e,t)=>{var a;const{PartitioningPolicy:n={},FollowerGroups:r,EnableFilterByKey:s}=e,o=[],i=n.SizeToSplit&&Number(n.SizeToSplit)>0?"Enabled, split size: ".concat((0,R.td)(n.SizeToSplit)):"Disabled",l=null!==(a=n.SplitByLoadSettings)&&void 0!==a&&a.Enabled?"Enabled":"Disabled";if(o.push({label:"Partitioning by size",value:i},{label:"Partitioning by load",value:l},{label:"Min number of partitions",value:(0,R.uf)(n.MinPartitionsCount||0)}),n.MaxPartitionsCount&&o.push({label:"Max number of partitions",value:(0,R.uf)(n.MaxPartitionsCount)}),r&&r.length){const{RequireAllDataCenters:e,FollowerCountPerDataCenter:t,FollowerCount:a}=r[0];let n;n=e&&t?"PER_AZ: ".concat(a):"ANY_AZ: ".concat(a),o.push({label:"Read replicas (followers)",value:n})}if(t){const e=vn(t);e&&o.push(e)}return o.push({label:"Bloom filter",value:s?"Enabled":"Disabled"}),o})(s,o);break;case Me.gb.EPathTypeColumnTable:I=function(e){const t=[];if(t.push({label:"Standalone",value:String(!hn(e))}),e.Sharding&&e.Sharding.HashSharding&&t.push({label:"Sharding",value:"hash"}),e.TtlSettings){const a=vn(null===e||void 0===e?void 0:e.TtlSettings);a&&t.push(a)}return t}(i)}const P=[(0,Xt.Z6)(va,{PartCount:l,RowCount:c,DataSize:d,IndexSize:u}),(0,Xt.Z6)(va,{LastAccessTime:m,LastUpdateTime:p}),(0,Xt.Z6)(va,{ImmediateTxCompleted:h,PlannedTxCompleted:v,TxRejectedByOverload:g,TxRejectedBySpace:x,TxCompleteLagMsec:y,InFlightTxCount:b}),(0,Xt.Z6)(va,{RowUpdates:S,RowDeletes:j,RowReads:f,RangeReads:T,RangeReadRows:N})],D=(0,Xt.Z6)(ma,r);let A=[];return Array.isArray(w)&&w.length>0?A=(0,Xt.Z6)(pa,w[0]):void 0!==E?A.push(ha("FollowerCount",E)):void 0!==C&&A.push(ha("CrossDataCenterFollowerCount",C)),{generalInfo:I,tableStatsInfo:P,tabletMetricsInfo:D,partitionConfigInfo:A}},xn=(0,c.cn)("ydb-diagnostics-table-info"),yn=e=>{let{data:t,type:a}=e;const r=(0,d.jsx)(dn,{data:null===t||void 0===t?void 0:t.PathDescription}),{generalInfo:s,tableStatsInfo:o,tabletMetricsInfo:i=[],partitionConfigInfo:l=[]}=n.useMemo((()=>gn(t,a)),[t,a]);return(0,d.jsxs)("div",{className:xn(),children:[(0,d.jsx)(Xt._P,{info:s,title:r,className:xn("info-block"),renderEmptyState:()=>(0,d.jsx)("div",{className:xn("title"),children:r})}),(0,d.jsxs)("div",{className:xn("row"),children:[o?(0,d.jsx)("div",{className:xn("col"),children:o.map(((e,t)=>(0,d.jsx)(Xt._P,{info:e,title:0===t?pn("tableStats"):void 0,className:xn("info-block"),renderEmptyState:()=>null},t)))}):null,i.length>0||l.length>0?(0,d.jsxs)("div",{className:xn("col"),children:[(0,d.jsx)(Xt._P,{info:i,title:pn("tabletMetrics"),className:xn("info-block"),renderEmptyState:()=>null}),(0,d.jsx)(Xt._P,{info:l,title:pn("partitionConfig"),className:xn("info-block"),renderEmptyState:()=>null})]}):null]})]})},bn=e=>{let{data:t,path:a}=e;const n=$t(null===t||void 0===t?void 0:t.PathDescription);return t?(0,d.jsxs)("div",{children:[(0,d.jsx)(Xt._P,{title:n,info:rn(t)}),(0,d.jsx)(nn,{path:a})]}):(0,d.jsxs)("div",{className:"error",children:["No ",n," data"]})};const Sn=function(e){let{type:t,path:a}=e;const[n]=(0,y.Rj)(),r=(0,ue.St)(t),s=(0,y.ix)((e=>(0,g.eU)(e,a,t)),Vt.wU);let o=re.CN;r?s&&(o=[a,...s]):o=[a];const{currentData:l,isFetching:c,error:u}=ya.useGetOverviewQuery(o,{pollingInterval:n}),m=c&&void 0===l,{data:p,additionalData:h}=l||{},{error:v}=(0,g.hz)({path:a});return m||r&&!s?(0,d.jsx)(i.a,{size:"m"}):v||u?(0,d.jsx)(I.V,{error:v||u}):(()=>{var e;const n=null!==p&&void 0!==p?p:void 0,r={[Me.gb.EPathTypeInvalid]:void 0,[Me.gb.EPathTypeDir]:void 0,[Me.gb.EPathTypeTable]:void 0,[Me.gb.EPathTypeSubDomain]:void 0,[Me.gb.EPathTypeTableIndex]:()=>(0,d.jsx)(xa,{data:n}),[Me.gb.EPathTypeExtSubDomain]:void 0,[Me.gb.EPathTypeColumnStore]:void 0,[Me.gb.EPathTypeColumnTable]:void 0,[Me.gb.EPathTypeCdcStream]:()=>{var e;return(0,d.jsx)(on,{path:a,data:n,topic:null!==(e=null===h||void 0===h?void 0:h[0])&&void 0!==e?e:void 0})},[Me.gb.EPathTypePersQueueGroup]:()=>(0,d.jsx)(bn,{data:n,path:a}),[Me.gb.EPathTypeExternalTable]:()=>(0,d.jsx)(La,{data:n}),[Me.gb.EPathTypeExternalDataSource]:()=>(0,d.jsx)(Ea,{data:n}),[Me.gb.EPathTypeView]:()=>(0,d.jsx)(Fa,{data:n}),[Me.gb.EPathTypeReplication]:()=>(0,d.jsx)(Ka,{data:n})};return t&&(null===(e=r[t])||void 0===e?void 0:e.call(r))||(0,d.jsx)(yn,{data:n,type:t})})()};var jn=a(2982),fn=a(49687),Tn=a(8978),Nn=a(95280),wn=a(67141),En=a(39633);const Cn=["#7EB26D","#EAB839","#6ED0E0","#EF843C","#E24D42","#1F78C1","#BA43A9","#705DA0","#508642","#CCA300"];var In=a(47651);const Pn=e=>{switch(e){case"ms":return Dn;case"size":return Rn;case"percent":return An;default:return}};function Dn(e){return null===e?x.jX:(0,Ve.zm)((0,R.W0)(Ln(e),2))}function Rn(e){return null===e?x.jX:(0,Ze.td)({value:Ln(e),precision:3})}function An(e){return null===e?x.jX:Math.round(100*Ln(e))+"%"}function Ln(e){return(0,In.kE)(e)?Number(e):0}const _n={"30m":30*x.sU,"1h":x.RQ,"1d":x.ii,"1w":7*x.ii},On=JSON.parse('{"not-supported":"Charts are not supported on current ydb version"}'),Mn=(0,pe.wZ)("ydb-metric-chart",{en:On}),kn=le.h.injectEndpoints({endpoints:e=>({getChartData:e.query({queryFn:async(e,t)=>{let{signal:a}=t;try{const t=await async function(e){let{database:t,metrics:a,timeFrame:n,maxDataPoints:r}=e,{signal:s}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const o=a.map((e=>"target=".concat(e.target))).join("&"),i=Math.round(Date.now()/1e3),l=i-_n[n];return window.api.getChartData({target:o,from:l,until:i,maxDataPoints:r,database:t},{signal:s})}(e,{signal:a});if(Array.isArray(t)){const a=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0;const a=e.map((e=>{let{datapoints:a,target:n}=e;const r=t.find((e=>e.target===n));if(!r)return;const s=a.map((e=>e[0]));return{...r,data:s}})).filter((e=>void 0!==e));return{timeline:e[0].datapoints.map((e=>1e3*e[1])),metrics:a}}(t,e.metrics);return{data:a}}return{error:new Error("string"===typeof t?Mn("not-supported"):t.error)}}catch(n){return{error:n}}},providesTags:["All"],keepUnusedDataFor:0})}),overrideExisting:"throw"}),Fn=(0,c.cn)("ydb-metric-chart");Tn.X.set({plugins:[wn.YagrPlugin]});const zn=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{dataType:a,scaleRange:n}=t,r=Pn(a),s=!e.metrics.length,o=e.metrics.map(((e,t)=>{const a=e.color||Cn[t],n=function(e,t){const a=(0,En.Vi)(e);if(!a.isValid())throw new Error("Invalid color is passed");return a.alpha(t).toRgbString()}(a,.1);return{id:e.target,name:e.title||e.target,data:e.data,formatter:r,lineColor:a,color:n,legendColorKey:"lineColor"}}));return{data:{timeline:e.timeline,graphs:o},libraryConfig:{chart:{size:{padding:s?[10,0,10,0]:void 0},series:{type:"area",spanGaps:!0,lineWidth:1.5},select:{zoom:!1}},scales:{y:{type:"linear",range:"nice",min:(null===n||void 0===n?void 0:n.min)||0,max:null===n||void 0===n?void 0:n.max}},axes:{y:{values:r?(e,t)=>t.map(r):void 0}},tooltip:{show:!0,tracking:"sticky"}}}},qn={timeline:[],metrics:[]},Un=e=>{let{database:t,title:a,metrics:r,timeFrame:s="1h",autorefresh:o,width:l=400,height:c=l/1.5,chartOptions:u,onChartDataStatusChange:m,isChartVisible:p}=e;const{currentData:h,error:v,isFetching:g,status:x}=kn.useGetChartDataQuery({database:t,metrics:r,timeFrame:s,maxDataPoints:l/2},{pollingInterval:o}),y=g&&!h;n.useEffect((()=>null===m||void 0===m?void 0:m("fulfilled"===x?"success":"loading")),[x,m]);const b=zn(h||qn,u);return(0,d.jsxs)("div",{className:Fn(null),style:{height:c,width:l},children:[(0,d.jsx)("div",{className:Fn("title"),children:a}),y?(0,d.jsx)(i.a,{}):p?(0,d.jsxs)("div",{className:Fn("chart"),children:[(0,d.jsx)(Nn.ZP,{type:"yagr",data:b}),v?(0,d.jsx)(I.V,{className:Fn("error"),error:v}):null]}):null]})};var Gn=a(17176);const Bn=(0,c.cn)("ydb-timeframe-selector"),Qn=e=>{let{value:t,onChange:a,className:n}=e;return(0,d.jsx)("div",{className:Bn(null,n),children:Object.keys(_n).map((e=>(0,d.jsx)(Gn.z,{view:"flat",selected:t===e,onClick:()=>a(e),children:e},e)))})},Hn=(0,c.cn)("ydb-tenant-dashboard"),Zn=e=>{let{database:t,charts:a}=e;const[r,o]=n.useState(!0),[i="1h",l]=(0,s.useQueryParam)("timeframe",s.StringParam),[c]=(0,y.Rj)(),u=r?0:c,m=e=>{"success"===e&&o(!1)},p=1===a.length?872:428;return(0,d.jsxs)("div",{className:Hn(null),style:{display:r?"none":void 0},children:[(0,d.jsx)("div",{className:Hn("controls"),children:(0,d.jsx)(Qn,{value:i,onChange:l})}),(0,d.jsx)("div",{className:Hn("charts"),children:a.map((e=>{const a=e.metrics.map((e=>{let{target:t}=e;return t})).join("&");return(0,d.jsx)(Un,{database:t,title:e.title,metrics:e.metrics,timeFrame:i,chartOptions:e.options,autorefresh:u,width:p,height:285.3333333333333,onChartDataStatusChange:m,isChartVisible:!r},a)}))})]})},Vn=JSON.parse('{"no-data":"No data","no-pools-data":"No pools data","top-nodes.empty-data":"No such nodes","top-groups.empty-data":"No such groups","top":"Top","nodes":"nodes","shards":"shards","groups":"groups","queries":"queries","tables":"tables","by-pools-usage":"by pools usage","by-cpu-time":"by cpu time","by-cpu-usage":"by cpu usage","by-load":"by load","by-memory":"by memory","by-usage":"by usage","by-size":"by size","cards.cpu-label":"CPU","cards.storage-label":"Storage","cards.memory-label":"Memory","charts.queries-per-second":"Queries per second","charts.transaction-latency":"Transactions latencies {{percentile}}","charts.cpu-usage":"CPU usage by pool","charts.storage-usage":"Tablet storage usage","charts.memory-usage":"Memory usage","storage.tablet-storage-title":"Tablet storage","storage.tablet-storage-description":"Size of user data and indexes stored in schema objects (tables, topics, etc.)","storage.db-storage-title":"Database storage","storage.db-storage-description":"Size of data stored in distributed storage with all overheads for redundancy"}'),Wn=(0,pe.wZ)("ydb-diagnostics-tenant-overview",{en:Vn}),Jn=[{title:Wn("charts.queries-per-second"),metrics:[{target:"queries.requests",title:Wn("charts.queries-per-second")}]},{title:Wn("charts.transaction-latency",{percentile:""}),metrics:[{target:"queries.latencies.p50",title:Wn("charts.transaction-latency",{percentile:"p50"})},{target:"queries.latencies.p75",title:Wn("charts.transaction-latency",{percentile:"p75"})},{target:"queries.latencies.p90",title:Wn("charts.transaction-latency",{percentile:"p90"})},{target:"queries.latencies.p99",title:Wn("charts.transaction-latency",{percentile:"p99"})}],options:{dataType:"ms"}}],Kn=e=>{let{database:t}=e;return(0,d.jsx)(Zn,{database:t,charts:Jn})},Yn=le.h.injectEndpoints({endpoints:e=>({getHealthcheckInfo:e.query({queryFn:async(e,t)=>{let{database:a,maxLevel:n}=e,{signal:r}=t;try{return{data:await window.api.getHealthcheckInfo({database:a,maxLevel:n},{signal:r})}}catch(s){return{error:s}}},providesTags:["All"]})}),overrideExisting:"throw"}),Xn={RED:0,ORANGE:1,YELLOW:2,BLUE:3,GREEN:4},$n=e=>e.sort(((e,t)=>(Xn[e.status]||0)-(Xn[t.status]||0))),er=e=>{let{issue:t,data:a}=e;return $n(a.filter((e=>t.reason&&-1!==t.reason.indexOf(e.id))))},tr=e=>$n(e.filter((t=>!e.find((e=>e.reason&&-1!==e.reason.indexOf(t.id)))))),ar=e=>{let{data:t,roots:a}=e;return a?a.map((e=>{const a=ar({roots:er({issue:e,data:t}),data:t});return{...e,reasonsItems:a}})):[]},nr=e=>{const t={};for(const a of e)t[a.status]||(t[a.status]=0),t[a.status]++;return Object.entries(t).sort(((e,t)=>{let[a]=e,[n]=t;return(Xn[a]||0)-(Xn[n]||0)}))},rr=(0,He.P1)((e=>e),(e=>Yn.endpoints.getHealthcheckInfo.select({database:e}))),sr=(0,He.P1)((e=>e),((e,t)=>rr(t)),((e,t)=>{var a;return(null===(a=t(e).data)||void 0===a?void 0:a.issue_log)||[]})),or=(0,He.P1)(sr,(function(){return tr(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[])})),ir=(0,He.P1)([sr,or],(function(){return ar({data:arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],roots:arguments.length>1&&void 0!==arguments[1]?arguments[1]:[]})})),lr=(0,He.P1)(sr,(function(){return nr(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[])}));let cr,dr;!function(e){e.UNSPECIFIED="UNSPECIFIED",e.GOOD="GOOD",e.DEGRADED="DEGRADED",e.MAINTENANCE_REQUIRED="MAINTENANCE_REQUIRED",e.EMERGENCY="EMERGENCY"}(cr||(cr={})),function(e){e.UNSPECIFIED="UNSPECIFIED",e.GREY="GREY",e.GREEN="GREEN",e.BLUE="BLUE",e.YELLOW="YELLOW",e.ORANGE="ORANGE",e.RED="RED"}(dr||(dr={}));const ur=function(e){let{autorefresh:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{currentData:a,isFetching:n,error:r,refetch:s}=Yn.useGetHealthcheckInfoQuery({database:e},{pollingInterval:t}),o=(null===a||void 0===a?void 0:a.self_check_result)||cr.UNSPECIFIED,i=(0,y.ix)((t=>lr(t,e)));return{issueTrees:(0,y.ix)((t=>ir(t,e))),issuesStatistics:i,loading:void 0===a&&n,error:r,refetch:s,selfCheckResult:o}};var mr=a(87863),pr=a.n(mr),hr=a(40067),vr=a(75850);const gr={[dr.UNSPECIFIED]:vr.K.Grey,[dr.GREY]:vr.K.Grey,[dr.GREEN]:vr.K.Green,[dr.BLUE]:vr.K.Blue,[dr.YELLOW]:vr.K.Yellow,[dr.ORANGE]:vr.K.Orange,[dr.RED]:vr.K.Red},xr=(0,c.cn)("issue-tree-item"),yr=e=>{let{status:t,message:a,type:n,onClick:r}=e;return(0,d.jsxs)("div",{className:xr(),onClick:r,children:[(0,d.jsx)("div",{className:xr("field",{status:!0}),children:(0,d.jsx)(ba.A,{mode:"icons",status:t,name:n})}),(0,d.jsx)("div",{className:xr("field",{message:!0}),children:a})]})},br=(0,c.cn)("issue-tree"),Sr=e=>{let{issueTree:t}=e;const[a,r]=n.useState({}),s=n.useCallback((e=>e?(0,d.jsx)("div",{className:br("info-panel"),children:(0,d.jsx)(Zt(),{data:e,search:!1,isExpanded:()=>!0,className:br("inspector")})}):null),[]),o=n.useCallback((e=>e.map((e=>{const{id:t}=e,{status:n,message:i,type:l,reasonsItems:c,level:u,...m}=e,p="undefined"===typeof a[t]||a[t],h=()=>{r((e=>({...e,[t]:!p})))};return(0,d.jsxs)(hr.L,{name:(0,d.jsx)(yr,{status:gr[n],message:i,type:l}),collapsed:p,hasArrow:!0,onClick:h,onArrowClick:h,level:u-1,children:[s(pr()(m,["reason"])),o(c||[])]},t)}))),[a,s]);return(0,d.jsx)("div",{className:br(),children:(0,d.jsx)("div",{className:br("block"),children:o([t])})})},jr=JSON.parse('{"title.healthcheck":"Healthcheck","label.update":"Update","label.show-details":"Show details","label.issues":"Issues:","status_message.ok":"No issues","no-data":"no healthcheck data"}'),fr=JSON.parse('{"title.healthcheck":"Healthcheck","label.update":"\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c","label.show-details":"\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438","label.issues":"\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u044b:","status_message.ok":"\u041d\u0435\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c","no-data":"\u043d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445 healthcheck"}'),Tr=(0,pe.wZ)("ydb-diagnostics-healthcheck",{ru:fr,en:jr}),Nr=(0,c.cn)("healthcheck");function wr(e){let{tenantName:t}=e;const[a]=(0,y.Rj)(),{issueTrees:r,loading:s,error:o}=ur(t,{autorefresh:a});return(0,d.jsx)("div",{className:Nr("details"),children:(0,d.jsx)("div",{className:Nr("details-content-wrapper"),children:o?(0,d.jsx)(I.V,{error:o,defaultMessage:Tr("no-data")}):s?(0,d.jsx)(i.a,{size:"m"}):r&&r.length?(0,d.jsx)(n.Fragment,{children:r.map((e=>(0,d.jsx)(Sr,{issueTree:e},e.id)))}):Tr("status_message.ok")})})}var Er=a(35240),Cr=a(32257),Ir=a(96261),Pr=a(68010),Dr=a(80518),Rr=a(71586);const Ar=(0,c.cn)("ydb-diagnostic-card");function Lr(e){let{children:t,className:a,active:n}=e;return(0,d.jsx)("div",{className:Ar({active:n},a),children:t})}const _r=(0,c.cn)("healthcheck"),Or={[cr.UNSPECIFIED]:Cr.Z,[cr.GOOD]:Ir.Z,[cr.DEGRADED]:Pr.Z,[cr.MAINTENANCE_REQUIRED]:Dr.Z,[cr.EMERGENCY]:Rr.Z};function Mr(e){const{tenantName:t,active:a}=e,[n]=(0,y.Rj)(),{currentData:r,isFetching:s,error:o}=Yn.useGetHealthcheckInfoQuery({database:t},{pollingInterval:n}),l=s&&void 0===r;return(0,d.jsxs)(Lr,{className:_r("preview"),active:a,children:[(0,d.jsx)("div",{className:_r("preview-header"),children:(0,d.jsx)("div",{className:_r("preview-title-wrapper"),children:(0,d.jsx)("div",{className:_r("preview-title"),children:Tr("title.healthcheck")})})}),(()=>{if(o)return(0,d.jsx)(I.V,{error:o,defaultMessage:Tr("no-data")});if(l)return(0,d.jsx)(i.a,{size:"m"});const e=(null===r||void 0===r?void 0:r.self_check_result)||cr.UNSPECIFIED,t=e.toLowerCase();return(0,d.jsx)("div",{className:_r("preview-content"),children:(0,d.jsxs)("div",{className:_r("preview-issue",{[t]:!0}),children:[(0,d.jsx)(me.J,{className:_r("preview-status-icon"),data:Or[e]}),(0,d.jsx)("div",{className:_r("self-check-status-indicator"),children:e.replace(/_/g," ")})]})})})()]})}var kr=a(67359),Fr=a(98366);const zr=(0,c.cn)("ydb-metrics-card"),qr=e=>{let t;return"Warning"===e&&(t=vr.K.Yellow),"Danger"===e&&(t=vr.K.Red),t?(0,d.jsx)(Fr.J,{status:t,mode:"icons",size:"l"}):null};function Ur(e){let{active:t,label:a,status:n,metrics:r}=e;return(0,d.jsxs)(Lr,{className:zr({active:t}),active:t,children:[(0,d.jsxs)("div",{className:zr("header"),children:[a&&(0,d.jsx)("div",{className:zr("label"),children:a}),qr(n)]}),(0,d.jsx)("div",{className:zr("content"),children:r.map(((e,t)=>{let{title:a,...n}=e;return(0,d.jsxs)("div",{className:zr("metric"),children:[(0,d.jsx)("div",{className:zr("metric-title"),children:a}),(0,d.jsx)(kr.y,{size:"xs",colorizeProgress:!0,...n})]},t)}))})]})}const Gr=(0,c.cn)("metrics-cards");function Br(e){let{poolsCpuStats:t,memoryStats:a,blobStorageStats:n,tabletStorageStats:r,tenantName:s}=e;const o=(0,Ca.TH)(),{metricsTab:i}=(0,y.ix)((e=>e.tenant)),l=(0,N.mB)(o),c=e=>e===i?"":e,u={[S.Xk.cpu]:(0,Ue.Sj)({...l,[Ue.XV.metricsTab]:c(S.Xk.cpu)}),[S.Xk.storage]:(0,Ue.Sj)({...l,[Ue.XV.metricsTab]:c(S.Xk.storage)}),[S.Xk.memory]:(0,Ue.Sj)({...l,[Ue.XV.metricsTab]:c(S.Xk.memory)}),[S.Xk.healthcheck]:(0,Ue.Sj)({...l,[Ue.XV.metricsTab]:c(S.Xk.healthcheck)})};return(0,d.jsxs)("div",{className:Gr(),children:[(0,d.jsx)(f.rU,{to:u.cpu,className:Gr("tab"),children:(0,d.jsx)(Qr,{poolsCpuStats:t,active:i===S.Xk.cpu})}),(0,d.jsx)(f.rU,{to:u.storage,className:Gr("tab"),children:(0,d.jsx)(Hr,{blobStorageStats:n,tabletStorageStats:r,active:i===S.Xk.storage})}),(0,d.jsx)(f.rU,{to:u.memory,className:Gr("tab"),children:(0,d.jsx)(Zr,{memoryStats:a,active:i===S.Xk.memory})}),(0,d.jsx)(f.rU,{to:u.healthcheck,className:Gr("tab"),children:(0,d.jsx)(Mr,{tenantName:s,active:i===S.Xk.healthcheck})})]})}function Qr(e){let{poolsCpuStats:t=[],active:a}=e,n=Er.L.Unspecified;const r=t.filter((e=>!("Batch"===e.name||"IO"===e.name))).map((e=>{const{name:t,usage:a,limit:r,used:s}=e,o=(0,fn.Vn)(a);return Er.l[o]>Er.l[n]&&(n=o),{title:t,value:s,capacity:r,warningThreshold:fn.hJ,dangerThreshold:fn.Gz}}));return(0,d.jsx)(Ur,{label:Wn("cards.cpu-label"),active:a,metrics:r,status:n})}function Hr(e){let{blobStorageStats:t=[],tabletStorageStats:a,active:n}=e,r=Er.L.Unspecified;const s=(a||t).map((e=>{const{name:t,used:a,limit:n,usage:s}=e,o=(0,fn._W)(s);return Er.l[o]>Er.l[r]&&(r=o),{title:t,value:a,capacity:n,warningThreshold:fn._g,dangerThreshold:fn.nD,formatValues:R.QO}}));return(0,d.jsx)(Ur,{label:Wn("cards.storage-label"),active:n,metrics:s,status:r})}function Zr(e){let{active:t,memoryStats:a=[]}=e,n=Er.L.Unspecified;const r=a.map((e=>{const{name:t,used:a,limit:r,usage:s}=e,o=(0,fn.Lv)(s);return Er.l[o]>Er.l[n]&&(n=o),{title:t,value:a,capacity:r,warningThreshold:fn.B8,dangerThreshold:fn.nr,formatValues:R.QO}}));return(0,d.jsx)(Ur,{label:Wn("cards.memory-label"),active:t,metrics:r,status:n})}var Vr=a(46925);const Wr=le.h.injectEndpoints({endpoints:e=>({getTopNodes:e.query({queryFn:async(e,t)=>{let{signal:a}=t;try{const t=await window.api.getNodes({type:"any",sortOrder:-1,limit:x.fl,...e},{signal:a});return{data:(0,Vr.nH)(t).Nodes}}catch(n){return{error:n}}},providesTags:["All"]})}),overrideExisting:"throw"});var Jr=a(682);const Kr=(0,c.cn)("tenant-overview");function Yr(e){let{title:t,error:a,loading:r,tableClassNameModifiers:s={},...o}=e;return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)("div",{className:Kr("title"),children:t}),(0,d.jsx)("div",{className:Kr("table",s),children:a?(0,d.jsx)(I.V,{error:a}):r?(0,d.jsx)(oe.h,{rows:x.fl}):(0,d.jsx)(se.G,{settings:x.E6,...o})})]})}var Xr=a(68036);const $r=e=>{let{prefix:t=Wn("top"),entity:a,postfix:r,link:s}=e;return s?(0,d.jsxs)(n.Fragment,{children:[t," ",(0,d.jsx)(Xr.h,{to:s,children:a})," ",r]}):"".concat(t," ").concat(a," ").concat(r)};function es(e){let{tenantName:t,additionalNodesProps:a}=e;const n=(0,y.A3)(),[r]=(0,y.Rj)(),s=(0,Jr.LF)(null===a||void 0===a?void 0:a.getNodeRef),{currentData:o,isFetching:i,error:l}=Wr.useGetTopNodesQuery({tenant:t,sortValue:"CPU"},{pollingInterval:r}),c=i&&void 0===o,u=o,m=$r({entity:Wn("nodes"),postfix:Wn("by-pools-usage"),link:(0,Ue.Sj)({...n,[Ue.XV.diagnosticsTab]:S.qQ.nodes})});return(0,d.jsx)(Yr,{columnsWidthLSKey:Jr.t5,data:u||[],columns:s,title:m,loading:c,error:l,emptyDataMessage:Wn("top-nodes.empty-data")})}function ts(e){let{tenantName:t,additionalNodesProps:a}=e;const n=(0,y.A3)(),[r]=(0,y.Rj)(),s=(0,Jr.sQ)(null===a||void 0===a?void 0:a.getNodeRef),{currentData:o,isFetching:i,error:l}=Wr.useGetTopNodesQuery({tenant:t,sortValue:"LoadAverage"},{pollingInterval:r}),c=i&&void 0===o,u=o,m=$r({entity:Wn("nodes"),postfix:Wn("by-load"),link:(0,Ue.Sj)({...n,[Ue.XV.diagnosticsTab]:S.qQ.nodes})});return(0,d.jsx)(Yr,{columnsWidthLSKey:Jr.t5,data:u||[],columns:s,title:m,loading:c,error:l,emptyDataMessage:Wn("top-nodes.empty-data")})}var as=a(83786);const ns=le.h.injectEndpoints({endpoints:e=>({getOverviewTopQueries:e.query({queryFn:async(e,t)=>{let{database:a}=e,{signal:n}=t;try{const e=await window.api.sendQuery({schema:"modern",query:(r=a,"\nSELECT\n CPUTime as CPUTimeUs,\n QueryText,\nFROM `".concat(r,"/.sys/top_queries_by_cpu_time_one_hour`\nORDER BY CPUTimeUs DESC\nLIMIT ").concat(x.fl,"\n")),database:a,action:"execute-scan"},{signal:n});return(0,ie.gW)(e)?{error:e}:{data:(0,ie.gY)(e)}}catch(s){return{error:s||new Error("Unauthorized")}}var r},providesTags:["All"]})}),overrideExisting:"throw"});var rs=a(99683);const ss=(0,c.cn)("kv-truncated-query"),os=e=>{let{value:t="",maxQueryHeight:a=6}=e;const r=t.split("\n");if(r.length>a){const e=r.slice(0,a).join("\n"),t="\n...\nThe request was truncated. Click on the line to show the full query on the query tab";return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)("span",{className:ss(),children:e}),(0,d.jsx)("span",{className:ss("message",{color:"secondary"}),children:t})]})}return(0,d.jsx)(n.Fragment,{children:t})},is=e=>{let{value:t=""}=e;return(0,d.jsx)(rs.l,{contentClassName:ss("popover-content"),content:t,children:t})},ls="CPUTime",cs="QueryText",ds="EndTime",us="ReadRows",ms="ReadBytes",ps="UserSID",hs="OneLineQueryText",vs="QueryHash",gs="Duration",xs="CPUCores",ys="PeakTime",bs="IntervalEnd",Ss=[xs,"DataSize","InFlightTxCount"],js=[ls,ds,us,ms,ps,gs],fs=e=>Object.values(Ss).includes(e);var Ts=a(47694),Ns=a.n(Ts);const ws=6,Es={...x.LE,dynamicRenderType:"variable"},Cs=(0,c.cn)("kv-top-queries"),Is="topQueriesColumnsWidth",Ps={name:ls,sortAccessor:e=>Number(e.CPUTimeUs),render:e=>{var t;let{row:a}=e;return(0,Ve.zm)((0,Ve.BO)(null!==(t=a.CPUTimeUs)&&void 0!==t?t:void 0))},width:120,align:ne.ZP.RIGHT,sortable:!1},Ds={name:cs,sortAccessor:e=>Number(e.CPUTimeUs),render:e=>{var t;let{row:a}=e;return(0,d.jsx)("div",{className:Cs("query"),children:(0,d.jsx)(os,{value:null===(t=a.QueryText)||void 0===t?void 0:t.toString(),maxQueryHeight:ws})})},sortable:!1,width:500},Rs={name:ds,render:e=>{let{row:t}=e;return(0,R.o0)(new Date(t.EndTime).getTime())},align:ne.ZP.RIGHT,width:200},As={name:us,render:e=>{let{row:t}=e;return(0,R.uf)(t.ReadRows)},sortAccessor:e=>Number(e.ReadRows),align:ne.ZP.RIGHT,width:150},Ls={name:ms,render:e=>{let{row:t}=e;return(0,R.uf)(t.ReadBytes)},sortAccessor:e=>Number(e.ReadBytes),align:ne.ZP.RIGHT,width:150},_s={name:ps,render:e=>{let{row:t}=e;return(0,d.jsx)("div",{className:Cs("user-sid"),children:t.UserSID||"\u2013"})},sortAccessor:e=>String(e.UserSID),align:ne.ZP.LEFT},Os={name:hs,header:"QueryText",render:e=>{var t;let{row:a}=e;return(0,d.jsx)(is,{value:null===(t=a.QueryText)||void 0===t?void 0:t.toString()})},sortable:!1,width:500},Ms={name:vs,render:e=>{let{row:t}=e;return a=String(t.QueryText),(Ns().str(a)>>>0).toString(16).toUpperCase().padStart(8,"0");var a},width:130,sortable:!1},ks={name:gs,header:"Duration",render:e=>{var t;let{row:a}=e;return(0,Ve.zm)((0,Ve.BO)(null!==(t=a.Duration)&&void 0!==t?t:void 0))},sortAccessor:e=>Number(e.Duration),align:ne.ZP.RIGHT,width:150},Fs=()=>[Ms,Os,Ps];function zs(e){let{tenantName:t}=e;const a=(0,y.zL)(),r=(0,Ca.TH)(),s=(0,Ca.k6)(),o=(0,N.mB)(r),[i]=(0,y.Rj)(),l=Fs(),{currentData:c,isFetching:u,error:m}=ns.useGetOverviewTopQueriesQuery({database:t},{pollingInterval:i}),p=u&&void 0===c,{result:h}=c||{},v=n.useCallback((e=>{const{QueryText:t}=e;a((0,as.B8)({input:t}));const n=(0,N.mB)(r),o=(0,Ue.Sj)({...n,[S.bS]:S.m2.query,[Ue.XV.queryTab]:S._0.newQuery});s.push(o)}),[a,s,r]),g=$r({entity:Wn("queries"),postfix:Wn("by-cpu-time"),link:(0,Ue.Sj)({...o,[Ue.XV.diagnosticsTab]:S.qQ.topQueries})});return(0,d.jsx)(Yr,{columnsWidthLSKey:Is,data:h||[],columns:l,onRowClick:v,title:g,loading:p,error:(0,ie.fV)(m),rowClassName:()=>Kr("top-queries-row")})}function qs(e,t){const a=t?"CAST(SUBSTRING(CAST(Path AS String), ".concat(t.length,") AS Utf8) AS Path"):"Path";return"SELECT\n ".concat(a,",\n TabletId,\n CPUCores,\nFROM `.sys/partition_stats`\nWHERE\n Path='").concat(e,"'\n OR Path LIKE '").concat(e,"/%'\nORDER BY CPUCores DESC\nLIMIT ").concat(x.fl)}const Us=le.h.injectEndpoints({endpoints:e=>({getTopShards:e.query({queryFn:async(e,t)=>{let{database:a,path:n=""}=e,{signal:r}=t;try{const e=await window.api.sendQuery({schema:"modern",query:qs(n,a),database:a,action:"execute-scan"},{signal:r});return(0,ie.gW)(e)?{error:e}:{data:(0,ie.gY)(e)}}catch(s){return{error:s||new Error("Unauthorized")}}},providesTags:["All"]})}),overrideExisting:"throw"});var Gs=a(58682),Bs=a(86017);function Qs(e){let{path:t,location:a,...n}=e;const r=(0,N.mB)(a),s=(0,N.vF)({...r,schema:t});return(0,d.jsx)(Bs.r,{view:"normal",...n,href:s})}var Hs=a(80816);const Zs=(0,a(99106).p)(60,80,["success","warning","danger"]);var Vs=a(92398);const Ws="topShardsColumnsWidth",Js="TabletId",Ks="CPUCores",Ys="DataSize",Xs="Path",$s="NodeId",eo="InFlightTxCount",to={TabletId:"TabletId",CPUCores:"CPUCores",DataSize:"DataSize (B)",Path:"Path",NodeId:"NodeId",PeakTime:"PeakTime",InFlightTxCount:"InFlightTxCount",IntervalEnd:"IntervalEnd"};const ao=(e,t)=>({name:Xs,header:to[Xs],render:a=>{let{row:n}=a;return(0,d.jsx)(Qs,{path:e+n.Path,location:t,children:n.Path})},sortable:!1,width:300}),no={name:Ks,header:to[Ks],render:e=>{let{row:t}=e;return a=t.CPUCores||0,"".concat((0,R.W0)(100*Number(a),2),"%");var a},align:ne.ZP.RIGHT},ro={name:Ys,header:to[Ys],render:e=>{let{row:t}=e;return(0,R.uf)(t.DataSize)},align:ne.ZP.RIGHT},so={name:Js,header:to[Js],render:e=>{var t;let{row:a}=e;return a.TabletId?(0,d.jsx)(ba.A,{name:null===(t=a.TabletId)||void 0===t?void 0:t.toString(),path:(0,N.ax)(N.ZP.tablet,{id:a.TabletId}),hasClipboardButton:!0,showStatus:!1,additionalControls:(0,d.jsx)(Gs.T,{href:"".concat(_.y3,"/tablets?TabletID=").concat(a.TabletId)})}):"\u2013"},sortable:!1,width:190},oo={name:$s,header:to[$s],render:e=>{let{row:t}=e;return t.NodeId?(0,d.jsx)(ut.h,{to:(0,Vs.a3)(t.NodeId),children:t.NodeId}):"\u2013"},align:ne.ZP.RIGHT},io={name:Ks,header:to[Ks],render:e=>{let{row:t}=e;return(0,d.jsx)(Hs.a,{value:(0,R.W0)(100*Number(t.CPUCores),2),theme:Zs(100*Number(t.CPUCores))})},align:ne.ZP.RIGHT,sortable:!1,width:140,resizeMinWidth:140},lo={name:eo,header:to[eo],render:e=>{let{row:t}=e;return(0,R.uf)(t.InFlightTxCount)},align:ne.ZP.RIGHT},co=e=>{let{tenantName:t,path:a}=e;const n=(0,Ca.TH)(),r=(0,N.mB)(n),[s]=(0,y.Rj)(),{currentData:o,isFetching:i,error:l}=Us.useGetTopShardsQuery({database:t,path:a},{pollingInterval:s}),c=i&&void 0===o,{result:u}=o||{},m=((e,t)=>[so,ao(e,t),io])(t,n),p=$r({entity:Wn("shards"),postfix:Wn("by-cpu-usage"),link:(0,Ue.Sj)({...r,[Ue.XV.diagnosticsTab]:S.qQ.topShards})});return(0,d.jsx)(Yr,{columnsWidthLSKey:Ws,data:u||[],columns:m,title:p,loading:c,error:(0,ie.fV)(l)})},uo=[{title:Wn("charts.cpu-usage"),metrics:["IC","IO","Batch","User","System"].map((e=>({target:"resources.cpu.".concat(e,".usage"),title:e}))),options:{dataType:"percent",scaleRange:{min:0,max:1}}}];function mo(e){let{tenantName:t,additionalNodesProps:a}=e;return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)(Zn,{database:t,charts:uo}),(0,d.jsx)(ts,{tenantName:t,additionalNodesProps:a}),(0,d.jsx)(es,{tenantName:t,additionalNodesProps:a}),(0,d.jsx)(co,{tenantName:t,path:t}),(0,d.jsx)(zs,{tenantName:t})]})}function po(e){let{tenantName:t,additionalNodesProps:a}=e;const n=(0,y.A3)(),[r]=(0,y.Rj)(),s=(0,Jr.Cj)({getNodeRef:null===a||void 0===a?void 0:a.getNodeRef}),{currentData:o,isFetching:i,error:l}=Wr.useGetTopNodesQuery({tenant:t,sortValue:"Memory"},{pollingInterval:r}),c=i&&void 0===o,u=o,m=$r({entity:Wn("nodes"),postfix:Wn("by-memory"),link:(0,Ue.Sj)({...n,[Ue.XV.diagnosticsTab]:S.qQ.nodes})});return(0,d.jsx)(Yr,{columnsWidthLSKey:Jr.t5,data:u||[],columns:s,title:m,loading:c,error:l,emptyDataMessage:Wn("top-nodes.empty-data")})}const ho=[{title:Wn("charts.memory-usage"),metrics:[{target:"resources.memory.used_bytes",title:Wn("charts.memory-usage")}],options:{dataType:"size"}}];function vo(e){let{tenantName:t}=e;return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)(Zn,{database:t,charts:ho}),(0,d.jsx)(po,{tenantName:t})]})}var go=a(23373),xo=a(11431),yo=a(92092);const bo=e=>{const{StoragePools:t,StorageGroups:a}=e,n=(0,yo.sl)(a,t);return t&&n.sort(((e,t)=>t.Usage-e.Usage)),{groups:n.slice(0,x.fl)}},So=le.h.injectEndpoints({endpoints:e=>({getTopStorageGroups:e.query({queryFn:async(e,t)=>{let{signal:a}=t;try{const t=await window.api.getStorageInfo({visibleEntities:"all",sortOrder:-1,sortValue:"Usage",limit:x.fl,version:xo.w.v2,...e},{signal:a});return{data:bo(t).groups||[]}}catch(n){return{error:n}}},providesTags:["All"]})}),overrideExisting:"throw"});var jo=a(92076);function fo(e){let{tenant:t}=e;const a=(0,y.A3)(),[n]=(0,y.Rj)(),r=(0,jo.mk)(),{currentData:s,isFetching:o,error:i}=So.useGetTopStorageGroupsQuery({tenant:t},{pollingInterval:n}),l=o&&void 0===s,c=s,u=$r({entity:Wn("groups"),postfix:Wn("by-usage"),link:(0,Ue.Sj)({...a,[Ue.XV.diagnosticsTab]:S.qQ.storage})});return(0,d.jsx)(Yr,{columnsWidthLSKey:jo.Ty,data:c||[],columns:r,title:u,loading:l,error:i})}const To=e=>"\nSELECT\n Path, SUM(DataSize) as Size\nFROM `".concat(e,"/.sys/partition_stats`\nGROUP BY Path\n ORDER BY Size DESC\n LIMIT ").concat(x.fl,"\n"),No=le.h.injectEndpoints({endpoints:e=>({getTopTables:e.query({queryFn:async(e,t)=>{let{path:a}=e,{signal:n}=t;try{const e=await window.api.sendQuery({schema:"modern",query:To(a),database:a,action:"execute-scan"},{signal:n});return(0,ie.gW)(e)?{error:e}:{data:(0,ie.gY)(e)}}catch(r){return{error:r||"Unauthorized"}}},providesTags:["All"]})}),overrideExisting:"throw"}),wo="topTablesTableColumnsWidth";function Eo(e){let{path:t}=e;const a=(0,Ca.TH)(),[n]=(0,y.Rj)(),{currentData:r,error:s,isFetching:o}=No.useGetTopTablesQuery({path:t},{pollingInterval:n}),i=o&&void 0===r,{result:l}=r||{},c=[{name:"Size",width:100,sortable:!1,render:e=>{let{row:t}=e;return(e=>{const t=(0,Ze.dT)(null!==l&&void 0!==l&&l.length?Number(l[0].Size):0,0);return(0,Ze.td)({value:e,size:t,precision:1})})(Number(t.Size))},align:ne.ZP.RIGHT},{name:"Path",width:700,sortable:!1,render:e=>{let{row:t}=e;return t.Path?(0,d.jsx)(rs.l,{content:t.Path,children:(0,d.jsx)(Qs,{path:String(t.Path),location:a,children:t.Path})}):null}}],u=$r({entity:Wn("tables"),postfix:Wn("by-size")});return(0,d.jsx)(Yr,{columnsWidthLSKey:wo,data:l||[],columns:c,title:u,loading:i,error:(0,ie.fV)(s)})}const Co=[{title:Wn("charts.storage-usage"),metrics:[{target:"resources.storage.used_bytes",title:Wn("charts.storage-usage")}],options:{dataType:"size"}}];function Io(e){let{tenantName:t,metrics:a}=e;const{blobStorageUsed:r,tabletStorageUsed:s,blobStorageLimit:o,tabletStorageLimit:i}=a,l=[{label:(0,d.jsx)(pt,{text:Wn("storage.tablet-storage-title"),popoverContent:Wn("storage.tablet-storage-description")}),value:(0,d.jsx)(kr.y,{value:s,capacity:i,formatValues:R.QO,colorizeProgress:!0,warningThreshold:75,dangerThreshold:85})},{label:(0,d.jsx)(pt,{text:Wn("storage.db-storage-title"),popoverContent:Wn("storage.db-storage-description")}),value:(0,d.jsx)(kr.y,{value:r,capacity:o,formatValues:R.QO,colorizeProgress:!0,warningThreshold:75,dangerThreshold:85})}];return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)(Zn,{database:t,charts:Co}),(0,d.jsx)(go.Z,{className:Kr("storage-info"),title:"Storage details",info:l}),(0,d.jsx)(Eo,{path:t}),(0,d.jsx)(fo,{tenant:t})]})}function Po(e){var t,a,n;let{tenantName:r,additionalTenantProps:s,additionalNodesProps:o}=e;const{metricsTab:i}=(0,y.ix)((e=>e.tenant)),[l]=(0,y.Rj)(),{currentData:c,isFetching:u}=w.$1.useGetTenantInfoQuery({path:r},{pollingInterval:l}),m=u&&void 0===c,{Name:p,Type:h,Overall:v}=c||{},b=(0,ue.TV)(h),{data:j}=(0,g.hz)({path:r}),{Tables:f,Topics:T}=(null===j||void 0===j||null===(t=j.PathDescription)||void 0===t||null===(a=t.DomainDescription)||void 0===a?void 0:a.DiskSpaceUsage)||{},N=[null===f||void 0===f?void 0:f.TotalSize,null===T||void 0===T?void 0:T.AccountSize,null===T||void 0===T?void 0:T.DataSize,null===T||void 0===T?void 0:T.ReserveSize,null===T||void 0===T?void 0:T.UsedReserveSize].reduce(((e,t)=>t?e+Number(t):e),0),E={...c,Metrics:{...null===c||void 0===c?void 0:c.Metrics,Storage:String(N)}},{blobStorage:C,tabletStorage:I,blobStorageLimit:P,tabletStorageLimit:D,poolsStats:R,memoryStats:A,blobStorageStats:L,tabletStorageStats:_}=(0,fn.HH)(E),O={blobStorageUsed:C,blobStorageLimit:P,tabletStorageUsed:I,tabletStorageLimit:D};return m?(0,d.jsx)("div",{className:Kr("loader"),children:(0,d.jsx)(jn.a,{size:"m"})}):(0,d.jsxs)("div",{className:Kr(),children:[(0,d.jsxs)("div",{className:Kr("info"),children:[(0,d.jsx)("div",{className:Kr("top-label"),children:b}),(0,d.jsxs)("div",{className:Kr("top"),children:[(0,d.jsx)("div",{className:Kr("tenant-name-wrapper"),children:(0,d.jsx)(ba.A,{status:v,name:p||x.FU,withLeftTrim:!0,hasClipboardButton:Boolean(c),clipboardButtonAlwaysVisible:!0})}),null===s||void 0===s||null===(n=s.getMonitoringLink)||void 0===n?void 0:n.call(s,p,h)]}),(0,d.jsx)(Br,{poolsCpuStats:R,memoryStats:A,blobStorageStats:L,tabletStorageStats:_,tenantName:r})]}),(()=>{switch(i){case S.Xk.cpu:return(0,d.jsx)(mo,{tenantName:r,additionalNodesProps:o});case S.Xk.storage:return(0,d.jsx)(Io,{tenantName:r,metrics:O});case S.Xk.memory:return(0,d.jsx)(vo,{tenantName:r});case S.Xk.healthcheck:return(0,d.jsx)(wr,{tenantName:r});default:return(0,d.jsx)(Kn,{database:r})}})()]})}const Do=(0,c.cn)("kv-detailed-overview");const Ro=function(e){const{type:t,tenantName:a,path:n,additionalTenantProps:r,additionalNodesProps:s}=e,o=a===n;return(0,d.jsx)("div",{className:Do(),children:o?(0,d.jsx)("div",{className:Do("section"),children:(0,d.jsx)(Po,{tenantName:a,additionalTenantProps:r,additionalNodesProps:s})}):(0,d.jsx)(Sn,{type:t,path:n})})},Ao={id:S.qQ.overview,title:"Info"},Lo={id:S.qQ.schema,title:"Schema"},_o={id:S.qQ.topQueries,title:"Top queries"},Oo={id:S.qQ.topShards,title:"Top shards"},Mo={id:S.qQ.nodes,title:"Nodes"},ko={id:S.qQ.tablets,title:"Tablets"},Fo={id:S.qQ.storage,title:"Storage"},zo={id:S.qQ.network,title:"Network"},qo={id:S.qQ.describe,title:"Describe"},Uo={id:S.qQ.hotKeys,title:"Hot keys"},Go={id:S.qQ.graph,title:"Graph"},Bo={id:S.qQ.consumers,title:"Consumers"},Qo={id:S.qQ.partitions,title:"Partitions"},Ho=[Ao,ko,qo],Zo=[Ao,_o,Oo,Mo,ko,Fo,zo,qo],Vo=[Ao,Lo,Oo,Mo,Go,ko,Uo,qo],Wo=[Ao,Lo,Oo,Mo,Go,ko,qo],Jo=[Ao,Oo,Mo,qo],Ko=[Ao,Bo,Qo,Mo,ko,qo],Yo=[Ao,Bo,Qo,Mo,ko,qo],Xo=[Ao,qo],$o=[Ao,qo],ei=[Ao,qo],ti={[Me.gb.EPathTypeInvalid]:void 0,[Me.gb.EPathTypeSubDomain]:Zo,[Me.gb.EPathTypeExtSubDomain]:Zo,[Me.gb.EPathTypeColumnStore]:Zo,[Me.gb.EPathTypeTable]:Vo,[Me.gb.EPathTypeColumnTable]:Wo,[Me.gb.EPathTypeDir]:Jo,[Me.gb.EPathTypeTableIndex]:Jo,[Me.gb.EPathTypeCdcStream]:Ko,[Me.gb.EPathTypePersQueueGroup]:Yo,[Me.gb.EPathTypeExternalDataSource]:Xo,[Me.gb.EPathTypeExternalTable]:$o,[Me.gb.EPathTypeView]:ei,[Me.gb.EPathTypeReplication]:Ho},ai=e=>e&&ti[e]||Jo;var ni=a(77280),ri=a(91387);const si=le.h.injectEndpoints({endpoints:e=>({getHotKeys:e.query({queryFn:async(e,t)=>{let{path:a}=e,{signal:n}=t;try{var r;const e=await window.api.getHotKeys(a,!0,{signal:n});if(Array.isArray(e.hotkeys))return{data:e.hotkeys};await Promise.race([new Promise((e=>{setTimeout(e,5e3)})),new Promise(((e,t)=>{n.addEventListener("abort",t)}))]);return{data:null!==(r=(await window.api.getHotKeys(a,!1,{signal:n})).hotkeys)&&void 0!==r?r:null}}catch(s){return{error:s}}},providesTags:["All"]})}),overrideExisting:"throw"}),oi=JSON.parse('{"hot-keys-collecting":"Please wait a little while we are collecting hot keys samples...","no-data":"No information about hot keys","help":"Hot keys contains a list of table primary key values that are accessed most often. Sample is collected upon request to the tab during 5s time interval. Samples column indicates how many requests to the particular key value were registered during collection phase."}'),ii=(0,pe.wZ)("ydb-hot-keys",{en:oi}),li=(0,c.cn)("ydb-hot-keys"),ci={accessSample:"accessSample",keyValues:"keyValues"},di=function(){return[...(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).map(((e,t)=>({name:e,header:(0,d.jsxs)("div",{className:li("primary-key-column"),children:[(0,d.jsx)(me.J,{data:be,width:12,height:7}),e]}),render:e=>{let{row:a}=e;return a.keyValues[t]},align:ne.ZP.RIGHT,sortable:!1}))),{name:ci.accessSample,header:"Samples",render:e=>{let{row:t}=e;return t.accessSample},align:ne.ZP.RIGHT,sortable:!1}]};function ui(e){var t,a;let{path:r}=e;const{currentData:s,isFetching:o,error:i}=si.useGetHotKeysQuery({path:r}),l=o&&void 0===s,{data:c,isLoading:u}=(0,g.hz)({path:r}),m=null===c||void 0===c||null===(t=c.PathDescription)||void 0===t||null===(a=t.Table)||void 0===a?void 0:a.KeyColumnNames,p=n.useMemo((()=>di(m)),[m]);return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)(mi,{}),l||u?(0,d.jsx)("div",{children:ii("hot-keys-collecting")}):i?(0,d.jsx)(I.V,{error:i}):s?(0,d.jsx)(se.G,{wrapperClassName:li("table"),columns:p,data:s,settings:x.LE,initialSortOrder:{columnId:ci.accessSample,order:ne.ZP.DESCENDING}}):(0,d.jsx)("div",{children:ii("no-data")})]})}function mi(){const[e,t]=(0,y.yu)(x.RI);return e?null:(0,d.jsxs)(ri.Z,{theme:"info",view:"filled",type:"container",className:li("help-card"),children:[ii("help"),(0,d.jsx)(Gn.z,{className:li("help-card__close-button"),view:"flat",onClick:()=>t(!0),children:(0,d.jsx)(me.J,{data:ni.Z,size:18})})]})}var pi=a(56350),hi=a(74221);const vi=le.h.injectEndpoints({endpoints:e=>({getNetworkInfo:e.query({queryFn:async(e,t)=>{let{signal:a}=t;try{return{data:await window.api.getNetwork(e,{signal:a})}}catch(n){return{error:n}}},providesTags:["All"]})}),overrideExisting:"throw"});var gi=a(80839);const xi=(0,c.cn)("node-network");function yi(){}function bi(e){let{nodeId:t,connected:a,capacity:r,rack:s,status:o,onClick:i=yi,onMouseEnter:l=yi,onMouseLeave:c=yi,showID:u,isBlurred:m}=e;const p=n.useRef(null),h=o||function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const a=Math.floor(e/t*100);return 100===a?vr.K.Green:a>=70?vr.K.Yellow:a>=1?vr.K.Red:vr.K.Grey}(a,r);return(0,d.jsx)("div",{ref:p,className:xi({[h.toLowerCase()]:!0,id:u,blur:m}),onMouseEnter:()=>{l(p.current,{nodeId:t,connected:a,capacity:r,rack:s},"node")},onMouseLeave:()=>{c()},onClick:()=>i(t),children:u?t:null})}const Si=e=>null===e||void 0===e?void 0:e.reduce(((e,t)=>t.Connected?e+1:e),0);var ji,fi,Ti,Ni,wi,Ei,Ci,Ii,Pi,Di,Ri,Ai,Li,_i,Oi;function Mi(){return Mi=Object.assign?Object.assign.bind():function(e){for(var t=1;t{i((0,gi.M6)(e))},className:Fi("problem-filter")}),(0,d.jsx)("div",{className:Fi("checkbox-wrapper"),children:(0,d.jsx)(C.X,{onUpdate:()=>{m(!u)},checked:u,children:"ID"})}),(0,d.jsx)("div",{className:Fi("checkbox-wrapper"),children:(0,d.jsx)(C.X,{onUpdate:()=>{h(!p)},checked:p,children:"Racks"})})]})}),(0,d.jsx)(qi,{nodes:j,showId:u,showRacks:p,clickedNode:l,onClickNode:c})]}),(0,d.jsx)("div",{className:Fi("right"),children:l?(0,d.jsxs)("div",{children:[(0,d.jsxs)("div",{className:Fi("label"),children:["Connectivity of node"," ",(0,d.jsx)(f.rU,{className:Fi("link"),to:(0,Vs.a3)(l.NodeId),children:l.NodeId})," ","to other nodes"]}),(0,d.jsx)("div",{className:Fi("nodes-row"),children:(0,d.jsx)(qi,{nodes:T,isRight:!0,showId:u,showRacks:p,clickedNode:l,onClickNode:c})})]}):(0,d.jsxs)("div",{className:Fi("placeholder"),children:[(0,d.jsx)("div",{className:Fi("placeholder-img"),children:(0,d.jsx)(me.J,{data:ki,width:221,height:204})}),(0,d.jsx)("div",{className:Fi("placeholder-text"),children:"Select node to see its connectivity to other nodes"})]})})]})})})}function qi(e){let{nodes:t,isRight:a,showId:n,showRacks:r,clickedNode:s,onClickNode:o}=e;const i=(0,y.ix)(gi.qz),l=(0,y.zL)();let c=0;const u=Object.keys(t).map(((e,u)=>{const m=Ui(t[e],"Rack");return(0,d.jsxs)("div",{className:Fi("nodes-container",{right:a}),children:[(0,d.jsxs)("div",{className:Fi("nodes-title"),children:[e," nodes"]}),(0,d.jsx)("div",{className:Fi("nodes"),children:r?Object.keys(m).map(((e,t)=>(0,d.jsxs)("div",{className:Fi("rack-column"),children:[(0,d.jsx)("div",{className:Fi("rack-index"),children:"undefined"===e?"?":e}),m[e].map(((e,t)=>{let r,u;return!a&&"Peers"in e&&e.Peers&&(r=Object.keys(e.Peers).length,u=Si(e.Peers)),i===gi.pu.PROBLEMS&&r!==u||i===gi.pu.ALL||a?(c++,(0,d.jsx)(bi,{nodeId:e.NodeId,showID:n,rack:e.Rack,status:"ConnectStatus"in e?e.ConnectStatus:void 0,capacity:r,connected:u,onMouseEnter:function(){l((0,D.hJ)(...arguments))},onMouseLeave:()=>{l((0,D.i8)())},onClick:a?void 0:()=>{o(s&&e.NodeId===s.NodeId?void 0:e)},isBlurred:!a&&s&&s.NodeId!==e.NodeId},t)):null}))]},t))):t[e].map(((e,t)=>{let r,u;const m=e&&"Peers"in e?e.Peers:void 0;return!a&&"Peers"in e&&e.Peers&&(r=e.Peers.length,u=Si(m)),i===gi.pu.PROBLEMS&&r!==u||i===gi.pu.ALL||a?(c++,(0,d.jsx)(bi,{nodeId:e.NodeId,showID:n,rack:e.Rack,status:"ConnectStatus"in e?e.ConnectStatus:void 0,capacity:null===m||void 0===m?void 0:m.length,connected:u,onMouseEnter:function(){l((0,D.hJ)(...arguments))},onMouseLeave:()=>{l((0,D.i8)())},onClick:a?void 0:()=>{o(s&&e.NodeId===s.NodeId?void 0:e)},isBlurred:!a&&s&&s.NodeId!==e.NodeId},t)):null}))})]},u)}));return i===gi.pu.PROBLEMS&&0===c?(0,d.jsx)(pi.Q,{name:"thumbsUp",width:"200"}):u}function Ui(e,t){return e.reduce(((e,a)=>(e[a[t]]?e[a[t]].push(a):e[a[t]]=[a],e)),{})}var Gi=a(99337),Bi=a(42703),Qi=a(48857),Hi=a(30629);const Zi=JSON.parse('{"lagsPopover.writeLags":"Write lags statistics (time format dd hh:mm:ss)","lagsPopover.readLags":"Read lags statistics (time format dd hh:mm:ss)","headers.unread":"End offset - Last read offset","headers.uncommited":"End offset - Committed offset","controls.consumerSelector":"Consumer:","controls.consumerSelector.emptyOption":"No consumer","controls.partitionSearch":"Partition ID","controls.generalSearch":"Host, Host ID, Reader, Read Session ID","table.emptyDataMessage":"No partitions match the current search","noConsumersMessage.topic":"This topic has no consumers","noConsumersMessage.stream":"This changefeed has no consumers"}'),Vi=JSON.parse('{"lagsPopover.writeLags":"\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043b\u0430\u0433\u043e\u0432 \u0437\u0430\u043f\u0438\u0441\u0438 (\u0444\u043e\u0440\u043c\u0430\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0434\u0434 \u0447\u0447:\u043c\u043c:\u0441\u0441)","lagsPopover.readLags":"\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043b\u0430\u0433\u043e\u0432 \u0447\u0442\u0435\u043d\u0438\u044f (\u0444\u043e\u0440\u043c\u0430\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0434\u0434 \u0447\u0447:\u043c\u043c:\u0441\u0441)","headers.unread":"End offset - Last read offset","headers.uncommited":"End offset - Committed offset","controls.consumerSelector":"\u0427\u0438\u0442\u0430\u0442\u0435\u043b\u044c:","controls.consumerSelector.emptyOption":"\u041d\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f","controls.partitionSearch":"Partition ID","controls.generalSearch":"Host, Host ID, Reader, Read Session ID","table.emptyDataMessage":"\u041f\u043e \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u043e\u0438\u0441\u043a\u0443 \u043d\u0435\u0442 \u043f\u0430\u0440\u0442\u0438\u0446\u0438\u0439","noConsumersMessage.topic":"\u0423 \u044d\u0442\u043e\u0433\u043e \u0442\u043e\u043f\u0438\u043a\u0430 \u043d\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439","noConsumersMessage.stream":"\u0423 \u044d\u0442\u043e\u0433\u043e \u0441\u0442\u0440\u0438\u043c\u0430 \u043d\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439"}'),Wi=(0,pe.wZ)("ydb-diagnostics-partitions",{ru:Vi,en:Zi}),Ji={PARTITION_ID:"partitionId",STORE_SIZE:"storeSize",WRITE_SPEED:"writeSpeed",READ_SPEED:"readSpeed",WRITE_LAGS:"writeLags",READ_LAGS:"readLags",UNCOMMITED_MESSAGES:"uncommitedMessages",UNREAD_MESSAGES:"unreadMessages",START_OFFSET:"startOffset",END_OFFSET:"endOffset",COMMITED_OFFSET:"commitedOffset",READ_SESSION_ID:"readSessionId",READER_NAME:"readerName",PARTITION_HOST:"partitionHost",CONNECTION_HOST:"connectionHost"},Ki={[Ji.PARTITION_ID]:"Partition ID",[Ji.STORE_SIZE]:"Store size",[Ji.WRITE_SPEED]:"Write speed",[Ji.READ_SPEED]:"Read speed",[Ji.WRITE_LAGS]:"Write lags, duration",[Ji.READ_LAGS]:"Read lags, duration",[Ji.UNCOMMITED_MESSAGES]:"Uncommited messages",[Ji.UNREAD_MESSAGES]:"Unread messages",[Ji.START_OFFSET]:"Start offset",[Ji.END_OFFSET]:"End offset",[Ji.COMMITED_OFFSET]:"Commited offset",[Ji.READ_SESSION_ID]:"Read session ID",[Ji.READER_NAME]:"Reader name",[Ji.PARTITION_HOST]:"Partition host",[Ji.CONNECTION_HOST]:"Connection host"},Yi="partitionWriteLag",Xi="partitionWriteIdleTime",$i={[Yi]:"write lag",[Xi]:"write idle time"},el="consumerWriteLag",tl="consumerReadLag",al="consumerReadIdleTime",nl={[el]:"write lag",[tl]:"read lag",[al]:"read idle time"},rl=[Ji.PARTITION_ID,Ji.STORE_SIZE,Ji.WRITE_SPEED,Ji.WRITE_LAGS,Ji.START_OFFSET,Ji.END_OFFSET,Ji.PARTITION_HOST],sl=Object.values(Ji),ol=e=>{let{consumers:t,selectedConsumer:a,onSelectedConsumerChange:r,selectDisabled:s,partitions:o,onSearchChange:i,hiddenColumns:l,onHiddenColumnsChange:c,initialColumnsIds:u}=e;const[m,p]=n.useState(""),[h,v]=n.useState("");n.useEffect((()=>{if(!o)return;const e=new RegExp(Be()(h),"i"),t=new RegExp(Be()(m),"i"),a=o.filter((a=>{const{partitionId:n,readerName:r,readSessionId:s,partitionNodeId:o,connectionNodeId:i,partitionHost:l,connectionHost:c}=a,d=e.test(n),u=[r,s,o,i,l,c].filter(Boolean).map(String),m=0===u.length||u.some((e=>t.test(e)));return d&&m}));i(a)}),[h,m,o,i]);const g=n.useMemo((()=>{const e=t&&t.length?t.map((e=>({value:e,content:e}))):[];return[{value:"",content:Wi("controls.consumerSelector.emptyOption")},...e]}),[t]),x=n.useMemo((()=>{const e=[];for(const t of u){const a=t===Ji.PARTITION_ID,n={title:Ki[t],selected:Boolean(!l.includes(t)),id:t,required:a,sticky:a?"start":void 0};a?e.unshift(n):e.push(n)}return e}),[u,l]),y=e=>(0,d.jsx)("div",{className:xl("select-option",{empty:""===e.value}),children:e.content});return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)(E.P,{className:xl("consumer-select"),label:Wi("controls.consumerSelector"),options:g,value:[a],onUpdate:e=>{r(e[0])},filterable:t&&t.length>5,disabled:s||!t||!t.length,renderOption:y,renderSelectedOption:y}),(0,d.jsx)(Hi.o,{onChange:e=>{v(e)},placeholder:Wi("controls.partitionSearch"),className:xl("search",{partition:!0}),value:h}),(0,d.jsx)(Hi.o,{onChange:e=>{p(e)},placeholder:Wi("controls.generalSearch"),className:xl("search",{general:!0}),value:m}),(0,d.jsx)(Qi.N,{popupWidth:242,items:x,showStatus:!0,onUpdate:e=>{const t=[...l];e.forEach((e=>{e.selected||l.includes(e.id)?e.selected&&l.includes(e.id)&&t.splice(l.indexOf(e.id)):t.push(e.id)})),c(t)},sortable:!1},"TableColumnSetup")]})},il=(0,c.cn)("ydb-diagnostics-partitions-columns-header"),ll=e=>{let{title:t}=e;return(0,d.jsx)("div",{className:il("multiline"),children:t})},cl=()=>(0,d.jsx)("div",{className:il("read-session"),children:Ki[Ji.READ_SESSION_ID]}),dl=()=>(0,d.jsx)(pt,{className:il("lags"),text:Ki[Ji.WRITE_LAGS],popoverContent:(0,d.jsx)(Ct,{text:Wi("lagsPopover.writeLags"),type:"write"})}),ul=()=>(0,d.jsx)(pt,{className:il("lags"),text:Ki[Ji.READ_LAGS],popoverContent:(0,d.jsx)(Ct,{text:Wi("lagsPopover.readLags"),type:"read"})}),ml=()=>(0,d.jsx)(pt,{className:il("messages"),text:Ki[Ji.UNREAD_MESSAGES],popoverContent:(0,d.jsx)("div",{className:il("messages-popover-content"),children:Wi("headers.unread")})}),pl=()=>(0,d.jsx)(pt,{className:il("messages"),text:Ki[Ji.UNCOMMITED_MESSAGES],popoverContent:(0,d.jsx)("div",{className:il("messages-popover-content"),children:Wi("headers.uncommited")})}),hl=(0,c.cn)("ydb-diagnostics-partitions-columns"),vl=[{name:Ji.PARTITION_ID,header:(0,d.jsx)(ll,{title:Ki[Ji.PARTITION_ID]}),sortAccessor:e=>(0,In.kE)(e.partitionId)&&Number(e.partitionId),align:ne.ZP.LEFT,render:e=>{let{row:t}=e;return t.partitionId}},{name:Ji.STORE_SIZE,header:(0,d.jsx)(ll,{title:Ki[Ji.STORE_SIZE]}),align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,R.td)(t.storeSize)}},{name:Ji.WRITE_SPEED,header:Ki[Ji.WRITE_SPEED],align:ne.ZP.LEFT,resizeMinWidth:140,sortAccessor:e=>e.writeSpeed.perMinute,render:e=>{let{row:t}=e;return(0,d.jsx)(ot,{data:t.writeSpeed})}},{name:Ji.READ_SPEED,header:Ki[Ji.READ_SPEED],align:ne.ZP.LEFT,resizeMinWidth:140,sortAccessor:e=>{var t;return null===(t=e.readSpeed)||void 0===t?void 0:t.perMinute},render:e=>{let{row:t}=e;return(0,d.jsx)(ot,{data:t.readSpeed})}},{name:Ji.WRITE_LAGS,header:(0,d.jsx)(dl,{}),className:hl("lags-header"),sub:[{name:Yi,header:$i[Yi],align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,R.gC)(t.partitionWriteLag)}},{name:Xi,header:$i[Xi],align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,R.gC)(t.partitionWriteIdleTime)}}]},{name:Ji.READ_LAGS,header:(0,d.jsx)(ul,{}),className:hl("lags-header"),sub:[{name:el,header:nl[el],align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,R.gC)(t.consumerWriteLag)}},{name:tl,header:nl[tl],align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,R.gC)(t.consumerReadLag)}},{name:al,header:nl[al],align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,R.gC)(t.consumerReadIdleTime)}}]},{name:Ji.UNCOMMITED_MESSAGES,header:(0,d.jsx)(pl,{}),align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return t.uncommitedMessages}},{name:Ji.UNREAD_MESSAGES,header:(0,d.jsx)(ml,{}),align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return t.unreadMessages}},{name:Ji.START_OFFSET,header:(0,d.jsx)(ll,{title:Ki[Ji.START_OFFSET]}),sortAccessor:e=>(0,In.kE)(e.startOffset)&&Number(e.startOffset),align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return t.startOffset}},{name:Ji.END_OFFSET,header:(0,d.jsx)(ll,{title:Ki[Ji.END_OFFSET]}),sortAccessor:e=>(0,In.kE)(e.endOffset)&&Number(e.endOffset),align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return t.endOffset}},{name:Ji.COMMITED_OFFSET,header:(0,d.jsx)(ll,{title:Ki[Ji.COMMITED_OFFSET]}),sortAccessor:e=>(0,In.kE)(e.commitedOffset)&&Number(e.commitedOffset),align:ne.ZP.RIGHT,render:e=>{let{row:t}=e;return t.commitedOffset}},{name:Ji.READ_SESSION_ID,header:(0,d.jsx)(cl,{}),align:ne.ZP.LEFT,width:150,render:e=>{let{row:t}=e;return t.readSessionId?(0,d.jsx)(ba.A,{name:t.readSessionId,showStatus:!1,hasClipboardButton:!0}):"\u2013"}},{name:Ji.READER_NAME,header:(0,d.jsx)(ll,{title:Ki[Ji.READER_NAME]}),align:ne.ZP.LEFT,width:150,render:e=>{let{row:t}=e;return t.readerName?(0,d.jsx)(ba.A,{name:t.readerName,showStatus:!1,hasClipboardButton:!0}):"\u2013"}},{name:Ji.PARTITION_HOST,header:(0,d.jsx)(ll,{title:Ki[Ji.PARTITION_HOST]}),align:ne.ZP.LEFT,width:200,render:e=>{let{row:t}=e;return t.partitionNodeId&&t.partitionHost?(0,d.jsx)(ba.A,{name:t.partitionHost,path:(0,Vs.a3)(t.partitionNodeId),showStatus:!1,hasClipboardButton:!0}):"\u2013"}},{name:Ji.CONNECTION_HOST,header:(0,d.jsx)(ll,{title:Ki[Ji.CONNECTION_HOST]}),align:ne.ZP.LEFT,width:200,render:e=>{let{row:t}=e;return t.connectionNodeId&&t.connectionHost?(0,d.jsx)(ba.A,{name:t.connectionHost,path:(0,Vs.a3)(t.connectionNodeId),showStatus:!1,hasClipboardButton:!0}):"\u2013"}}],gl=vl.filter((e=>rl.includes(e.name))),xl=(0,c.cn)("ydb-diagnostics-partitions"),yl=e=>{let{path:t}=e;const a=(0,y.zL)(),[r,s]=n.useState([]),o=(0,y.ix)((e=>Xe(e,t))),[i]=(0,y.Rj)(),{selectedConsumer:l}=(0,y.ix)((e=>e.partitions)),{currentData:c,isFetching:u,error:m}=We.useGetTopicQuery({path:t}),p=u&&void 0===c,{currentData:h,isFetching:v,error:g}=Gi.W.useGetNodesListQuery(void 0),b=v&&void 0===h,S=(0,y.ix)(Gi.d),[j,f]=(0,y.yu)(x.ZY),[T,N]=(e=>{const[t,a]=n.useState([]),[r,s]=n.useState([]);return n.useEffect((()=>{e?(a(vl),s(sl)):(a(gl),s(rl))}),[e]),[t,r]})(l),w=!p&&t?{path:t,consumerName:l}:re.CN,{currentData:E,isFetching:C,error:P}=Bi.TB.useGetPartitionsQuery(w,{pollingInterval:i}),D=C&&void 0===E,R=E,A=n.useMemo((()=>function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0;return null===e||void 0===e?void 0:e.map((e=>{const a=e.partitionNodeId&&t?t.get(e.partitionNodeId):void 0,n=e.connectionNodeId&&t?t.get(e.connectionNodeId):void 0;return{...e,partitionHost:a,connectionHost:n}}))}(R,S)),[R,S]);n.useEffect((()=>{const e=!p&&!o,t=l&&o&&!o.includes(l);(e||t)&&a((0,Bi.M$)(""))}),[a,p,l,o]);const L=n.useMemo((()=>T.filter((e=>!j.includes(e.name)))),[T,j]),_=e=>{f(e)},O=e=>{a((0,Bi.M$)(e))},M=p||b||D,k=g||m||P;return(0,d.jsxs)("div",{className:xl(),children:[(0,d.jsx)("div",{className:xl("controls"),children:(0,d.jsx)(ol,{consumers:o,selectedConsumer:l,onSelectedConsumerChange:O,selectDisabled:Boolean(k)||M,partitions:A,onSearchChange:s,hiddenColumns:j,onHiddenColumnsChange:_,initialColumnsIds:N})}),(0,d.jsx)("div",{className:xl("table-wrapper"),children:(0,d.jsx)("div",{className:xl("table-content"),children:M?(0,d.jsx)(oe.h,{className:xl("loader")}):k?(0,d.jsx)(I.V,{error:k}):(0,d.jsx)(se.G,{columnsWidthLSKey:"partitionsColumnsWidth",wrapperClassName:xl("table"),data:r,columns:L,settings:x.LE,emptyDataMessage:Wi("table.emptyDataMessage")})})})]})},bl=(0,c.cn)("date-range"),Sl=e=>{if(!e||isNaN(e))return;const t=e-60*(new Date).getTimezoneOffset()*1e3;return new Date(t).toISOString().substring(0,"yyyy-MM-DDThh:mm".length)},jl=e=>{let{from:t,to:a,className:n,onChange:r}=e;const s=Sl(t),o=Sl(a);return(0,d.jsxs)("div",{className:bl(null,n),children:[(0,d.jsx)("input",{type:"datetime-local",value:s||"",max:o,onChange:e=>{let{target:{value:t}}=e,n=t?new Date(t).getTime():void 0;n&&a&&n>a&&(n=a),null===r||void 0===r||r({from:n,to:a})},className:bl("input")}),"\u2014",(0,d.jsx)("input",{type:"datetime-local",min:s,value:o||"",onChange:e=>{let{target:{value:a}}=e,n=a?new Date(a).getTime():void 0;t&&n&&t>n&&(n=t),null===r||void 0===r||r({from:t,to:n})},className:bl("input")})]})};var fl=a(47101),Tl=a(30667);const Nl=JSON.parse('{"no-data":"No data","filter.text.placeholder":"Search by query text..."}'),wl=JSON.parse('{"no-data":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445","filter.text.placeholder":"\u0418\u0441\u043a\u0430\u0442\u044c \u043f\u043e \u0442\u0435\u043a\u0441\u0442\u0443 \u0437\u0430\u043f\u0440\u043e\u0441\u0430..."}'),El=(0,pe.wZ)("ydb-diagnostics-top-queries",{ru:wl,en:Nl}),Cl=(0,c.cn)("kv-top-queries"),Il=e=>{let{tenantName:t,type:a}=e;const r=(0,y.zL)(),s=(0,Ca.TH)(),o=(0,Ca.k6)(),[i]=(0,y.Rj)(),l=(0,y.ix)((e=>e.executeTopQueries)),{currentData:c,isFetching:u,error:m}=Tl.MU.useGetTopQueriesQuery({database:t,filters:l},{pollingInterval:i}),p=u&&void 0===c,{result:h}=c||{},v=[Ps,Ds,Rs,ks,As,Ls,_s].map((e=>{return{...e,sortable:(t=e.name,Object.values(js).includes(t))};var t})),g=n.useCallback((e=>{const{QueryText:t}=e;r((0,as.B8)({input:t}));const a=(0,N.mB)(s),n=(0,Ue.Sj)({...a,[S.bS]:S.m2.query,[Ue.XV.queryTab]:S._0.newQuery});o.push(n)}),[r,o,s]),x=e=>{r((0,Tl.Im)({text:e}))},b=e=>{r((0,Tl.Im)(e))};return(0,d.jsxs)(fl.l,{children:[(0,d.jsx)(fl.l.Controls,{children:(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)(Qe.o,{value:l.text,onChange:x,placeholder:El("filter.text.placeholder"),className:Cl("search")}),(0,d.jsx)(jl,{from:l.from,to:l.to,onChange:b})]})}),(0,d.jsx)(fl.l.Table,{loading:p,children:m?(0,d.jsx)("div",{className:"error",children:(0,ie.fV)(m)}):!h||(0,ue.Jp)(a)?El("no-data"):(0,d.jsx)(se.G,{columnsWidthLSKey:Is,columns:v,data:h,settings:Es,onRowClick:g,rowClassName:()=>Cl("row")})})]})};var Pl=a(9345),Dl=a(58660),Rl=a(79734);const Al=JSON.parse('{"no-data":"No data","filters.mode.immediate":"Immediate","filters.mode.history":"Historical","description":"Historical data only tracks shards with CPU load over 70%"}'),Ll=JSON.parse('{"no-data":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445","filters.mode.immediate":"\u041c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u044b\u0435","filters.mode.history":"\u0418\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0435","description":"\u0418\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043e \u0448\u0430\u0440\u0434\u0430\u0445 \u0441 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439 CPU \u0432\u044b\u0448\u0435 70%"}'),_l=(0,pe.wZ)("ydb-diagnostics-top-shards",{ru:Ll,en:Al}),Ol=e=>{let{value:t,onChange:a}=e;const r=t.mode===Dl.F.Immediate?void 0:t.from,s=t.mode===Dl.F.Immediate?void 0:t.to;return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsxs)(Rl.E,{value:t.mode,onUpdate:e=>{if(!((e,t)=>Object.values(e).includes(t))(Dl.F,e)){const t=Object.values(Dl.F).join(", ");throw new Error('Unexpected TopShards mode "'.concat(e,'". Should be one of: ').concat(t))}a({mode:e})},children:[(0,d.jsx)(Rl.E.Option,{value:Dl.F.Immediate,children:_l("filters.mode.immediate")}),(0,d.jsx)(Rl.E.Option,{value:Dl.F.History,children:_l("filters.mode.history")})]}),(0,d.jsx)(jl,{from:r,to:s,onChange:e=>{a({mode:Dl.F.History,...e})}})]})},Ml=(0,c.cn)("top-shards"),kl={...x.LE,dynamicRender:!1,externalSort:!0,disableSortReset:!0,defaultOrder:ne.ZP.DESCENDING};function Fl(e){return e?(0,R.o0)(new Date(e).getTime()):"\u2013"}function zl(e){return e?e.split(",").map((e=>({columnId:e,order:ne.ZP.DESCENDING}))):void 0}function ql(e){return e.to=Date.now(),e.from=e.to-1e3*x.RQ,e}const Ul=e=>{let{tenantName:t,path:a,type:r}=e;const s=(0,y.zL)(),o=(0,Ca.TH)(),[i]=(0,y.Rj)(),l=(0,y.ix)((e=>e.shardsWorkload)),[c,u]=n.useState((()=>{const e={...l};return e.mode||(e.mode=Dl.F.Immediate),e.from||e.to||ql(e),e})),[m,p]=n.useState(xs),{data:h,isFetching:v,error:g}=Pl.Ag.useSendShardQueryQuery({database:t,path:a,sortOrder:(x=m,x?x.split(",").map((e=>({columnId:e,order:"DESC"}))):void 0),filters:c},{pollingInterval:i});var x;const b=v&&void 0===h,{result:S}=null!==h&&void 0!==h?h:{},j=e=>{p(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(Array.isArray(e)?e:[e]).map((e=>{let{columnId:t}=e;return t})).join(",")}(e))},f=e=>{const t={...e};if(!l.from&&!l.to&&!e.from&&!e.to)switch(e.mode){case Dl.F.Immediate:t.from=t.to=void 0;break;case Dl.F.History:ql(t)}s((0,Pl.K2)(e)),u((e=>({...e,...t})))},T=n.useMemo((()=>{const e=((e,t)=>[ao(e,t),no,ro,so,oo,lo])(t,o),a=e.map((e=>({...e,sortable:fs(e.name)})));return c.mode===Dl.F.History&&(a.splice(5,0,{name:ys,render:e=>{let{row:t}=e;return Fl(t.PeakTime)},sortable:!1}),a.push({name:bs,render:e=>{let{row:t}=e;return Fl(t.IntervalEnd)}})),a}),[c.mode,o,t]);return(0,d.jsxs)(fl.l,{children:[(0,d.jsx)(fl.l.Controls,{children:(0,d.jsx)(Ol,{value:c,onChange:f})}),c.mode===Dl.F.History&&(0,d.jsx)("div",{className:Ml("hint"),children:_l("description")}),(0,d.jsx)(fl.l.Table,{loading:b,children:g?(0,d.jsx)("div",{className:"error",children:(0,ie.fV)(g)}):!S||(0,ue.Jp)(r)?_l("no-data"):(0,d.jsx)(se.G,{columnsWidthLSKey:Ws,columns:T,data:S,settings:kl,onSort:j,sortOrder:zl(m)})})]})},Gl=(0,c.cn)("kv-tenant-diagnostics");const Bl=function(e){const t=n.useRef(null),a=(0,y.zL)(),{diagnosticsTab:o=S.qQ.overview}=(0,y.ix)((e=>e.tenant)),[i]=(0,s.useQueryParams)({name:s.StringParam,schema:s.StringParam,backend:s.StringParam,clusterName:s.StringParam}),l=(0,ue.dw)(e.type)?e.path:e.tenantName,c=(0,ue.dw)(e.type)||e.path===e.tenantName?Zo:ai(e.type);let u=c.find((e=>e.id===o));return u||(u=c[0]),n.useEffect((()=>{u&&u.id!==o&&a((0,w.$v)(u.id))}),[u,o,a]),(0,d.jsxs)("div",{className:Gl(),ref:t,children:[u?(0,d.jsx)(r.ql,{children:(0,d.jsx)("title",{children:u.title})}):null,(()=>{var e;return(0,d.jsx)("div",{className:Gl("header-wrapper"),children:(0,d.jsxs)("div",{className:Gl("tabs"),children:[(0,d.jsx)(j.m,{size:"l",items:c,activeTab:null===(e=u)||void 0===e?void 0:e.id,wrapTo:(e,t)=>{let{id:a}=e;const n=(0,N.ax)(N.ZP.tenant,void 0,{...i,[Ue.XV.diagnosticsTab]:a});return(0,d.jsx)(f.rU,{to:n,className:Gl("tab"),children:t},a)},allowNotSelected:!0}),(0,d.jsx)(T.q,{})]})})})(),(0,d.jsx)("div",{className:Gl("page-wrapper"),children:(()=>{var a;const{type:n,path:r}=e;switch(null===(a=u)||void 0===a?void 0:a.id){case S.qQ.overview:return(0,d.jsx)(Ro,{type:n,tenantName:l,path:r,additionalTenantProps:e.additionalTenantProps,additionalNodesProps:e.additionalNodesProps});case S.qQ.schema:return(0,d.jsx)(qe,{path:r,tenantName:l,type:n,extended:!0});case S.qQ.topQueries:return(0,d.jsx)(Il,{tenantName:l,type:n});case S.qQ.topShards:return(0,d.jsx)(Ul,{tenantName:l,path:r,type:n});case S.qQ.nodes:return(0,d.jsx)(ee.G,{path:r,additionalNodesProps:e.additionalNodesProps,parentContainer:t.current});case S.qQ.tablets:return(0,d.jsx)(ae.J,{path:r});case S.qQ.storage:return(0,d.jsx)(te.V,{tenant:l,parentContainer:t.current});case S.qQ.network:return(0,d.jsx)(zi,{tenantName:l});case S.qQ.describe:return(0,d.jsx)(Yt,{path:r,type:n});case S.qQ.hotKeys:return(0,d.jsx)(ui,{path:r});case S.qQ.graph:return(0,d.jsx)($,{path:r});case S.qQ.consumers:return(0,d.jsx)(Qt,{path:r,type:n});case S.qQ.partitions:return(0,d.jsx)(yl,{path:r});default:return(0,d.jsx)("div",{children:"No data..."})}})()})]})},Ql=JSON.parse('{"controls.query-mode-selector_type":"Query type:","tabs.newQuery":"Editor","tabs.history":"History","tabs.saved":"Saved","history.empty":"History is empty","saved.empty":"There are no saved queries","delete-dialog.header":"Delete query","delete-dialog.question":"Are you sure you want to delete query","delete-dialog.delete":"Delete","delete-dialog.cancel":"Cancel","preview.title":"Preview","preview.not-available":"Preview is not available","preview.close":"Close preview","method-description.script":"For YQL-scripts combining DDL and DML.\\nAPI call: schema.scripting","method-description.scan":"Read-only queries, potentially reading a lot of data.\\nAPI call: table.ExecuteScan","method-description.data":"DML queries for changing and fetching data in serialization mode.\\nAPI call: table.executeDataQuery","method-description.query":"Any query. An experimental API call supposed to replace all existing methods.\\nAPI Call: query.ExecuteScript","method-description.pg":"Queries in postgresql syntax.\\nAPI call: query.ExecuteScript","query-duration.description":"Duration of server-side query execution","action.send-query":"Send query","action.send-selected-query":"Send selected query","action.previous-query":"Previous query in history","action.next-query":"Next query in history","action.save-query":"Save query"}'),Hl=(0,pe.wZ)("ydb-query-editor",{en:Ql}),Zl=(0,c.cn)("ydb-queries-history"),Vl="queriesHistoryTableColumnsWidth";const Wl=function(e){let{changeUserInput:t}=e;const a=(0,y.zL)(),[n,r]=(0,y.$6)(),s=[...(0,y.ix)(as.qV)].reverse(),o=[{name:"queryText",header:"Query Text",render:e=>{let{row:t}=e;return(0,d.jsx)("div",{className:Zl("query"),children:(0,d.jsx)(os,{value:t.queryText,maxQueryHeight:ws})})},sortable:!1,width:600},{name:"syntax",header:"Syntax",render:e=>{let{row:t}=e;return t.syntax===ie.jM.pg?"PostgreSQL":"YQL"},sortable:!1,width:200}];return(0,d.jsx)("div",{className:Zl(),children:(0,d.jsx)(se.G,{columnsWidthLSKey:Vl,columns:o,data:s,settings:Es,emptyDataMessage:Hl("history.empty"),onRowClick:e=>{return(s=e).syntax===ie.jM.pg&&n!==ie.wZ.pg?r(ie.wZ.pg):s.syntax!==ie.jM.pg&&n===ie.wZ.pg&&r(ie.wZ.script),t({input:s.queryText}),void a((0,w.jk)(S._0.newQuery));var s},rowClassName:()=>Zl("table-row")})})};const Jl=(0,a(30410).k)((async()=>{const e=(await Promise.all([a.e(1551),a.e(3757)]).then(a.bind(a,93757))).default,{registerLanguages:t}=await Promise.all([a.e(1551),a.e(8424),a.e(4842)]).then(a.bind(a,14842));return t(),{Editor:e}}),"Editor"),Kl=new Set(["PlanNodeId","PlanNodeType","Node Type","Plans"]);function Yl(e){const t=[];if(e.Operators){const a=[];for(const t of e.Operators){const e={name:t.Name,items:[]};for(const[a,n]of Object.entries(t)){if("Name"===a)continue;const t=Array.isArray(n)?n.join(", "):n;e.items.push({name:a,value:t})}a.push(e)}t.push({group:"Operators",stats:a})}if("Connection"===e.PlanNodeType){const a=[];for(const[t,n]of Object.entries(e))Kl.has(t)||a.push({name:t,value:String(n)});a.length>0&&t.push({group:"Attributes",stats:a})}return t}function Xl(e){switch(e.PlanNodeType){case"Connection":return"connection";case"ResultSet":return"result";case"Query":return"query";default:return"stage"}}const $l={v2:"0.2"},ec=Object.values($l),tc=e=>{const{plan:t,ast:a}=(0,ie.CC)(e);if(!t)return{ast:a};const{tables:n,meta:r,Plan:s}=(0,ie.y5)(t);if(-1===ec.indexOf(r.version))return{plan:{pristine:t,version:r.version},ast:a};let o=[],i=[];if(s){const e=function(e){const t=[],a=[],n=e,r={name:String(n.PlanNodeId),data:{id:n.PlanNodeId,type:Xl(n),name:n["Node Type"]}};return t.push(r),function e(){let n=arguments.length>1?arguments[1]:void 0;(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).forEach((r=>{var s;const o={name:String(r.PlanNodeId),data:{id:r.PlanNodeId,type:Xl(r),name:r["Node Type"],operators:null===(s=r.Operators)||void 0===s?void 0:s.map((e=>e.Name)),stats:Yl(r),tables:r.Tables}};t.push(o),a.push({from:n,to:o.name}),e(r.Plans,o.name)}))}(n.Plans,r.name),{nodes:t,links:a}}(s);o=e.links,i=e.nodes}return{plan:{links:o,nodes:i,tables:n,version:r.version,pristine:t},ast:a}},ac=le.h.injectEndpoints({endpoints:e=>({explainQuery:e.mutation({queryFn:async e=>{let{query:t,database:a,mode:n}=e,r="explain",s=ie.jM.yql;"pg"===n?(r="explain-query",s=ie.jM.pg):n&&(r="explain-".concat(n));try{const e=await window.api.getExplainQuery(t,a,r,s);if((0,ie.gW)(e))return{error:e};return{data:tc(e)}}catch(o){return{error:o}}}})}),overrideExisting:"throw"});var nc=a(89003),rc=a(62729),sc=a(44822);let oc;!function(e){e.triggerCollapse="triggerCollapse",e.triggerExpand="triggerExpand",e.clear="clear"}(oc||(oc={}));const ic=e=>{localStorage.setItem(e,"true")},lc=e=>{localStorage.removeItem(e)};function cc(e){return function(t,a){switch(a){case oc.triggerCollapse:return ic(e),{...t,triggerCollapse:!0,triggerExpand:!1,collapsed:!0};case oc.triggerExpand:return lc(e),{...t,triggerCollapse:!1,triggerExpand:!0,collapsed:!1};case oc.clear:return lc(e),{triggerCollapse:!1,triggerExpand:!1,collapsed:!1};default:return t}}}const dc=(0,c.cn)("kv-pane-visibility-button");function uc(e){let{onCollapse:t,onExpand:a,isCollapsed:r,initialDirection:s="top",className:o}=e;return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)(Gn.z,{view:"flat-secondary",onClick:t,className:dc({hidden:r},o),title:"Collapse",children:(0,d.jsx)(me.J,{data:sc.Z,className:dc({[s]:!0})})}),(0,d.jsx)(Gn.z,{view:"flat-secondary",onClick:a,className:dc({hidden:!r},o),title:"Expand",children:(0,d.jsx)(me.J,{data:sc.Z,className:dc({[s]:!0},"rotate")})})]})}var mc=a(90861);const pc=(0,c.cn)("kv-divider");const hc=function(){return(0,d.jsx)("div",{className:pc()})};var vc=a(4140),gc=a(56963);const xc=function(e){let{disabled:t}=e;const a=(0,y.zL)();return(0,d.jsx)(Gn.z,{onClick:()=>{a((0,gc.Xl)())},view:"flat-secondary",disabled:t,title:"Fullscreen",children:(0,d.jsx)(me.J,{data:vc.Z})})};var yc,bc=a(38886);function Sc(){return Sc=Object.assign?Object.assign.bind():function(e){for(var t=1;t{t((0,gc.vj)())}),[t]);return n.useEffect((()=>{const e=e=>{"Escape"===e.key&&a()};return document.addEventListener("keydown",e,!1),()=>{document.removeEventListener("keydown",e,!1)}}),[a]),(0,d.jsx)(Tc,{children:(0,d.jsxs)("div",{className:fc(null,e.className),children:[(0,d.jsx)(Gn.z,{onClick:a,view:"raised",className:fc("close-button"),children:(0,d.jsx)(me.J,{data:jc})}),e.children]})})};var wc=a(65375),Ec=a(52369);const Cc=(0,c.cn)("kv-query-execution-status"),Ic=e=>{let t,a,{className:n,error:r}=e;if((0,Ec.IZ)(r)&&"ECONNABORTED"===r.code)t=(0,d.jsx)(me.J,{data:wc.Z}),a="Connection aborted";else{const e=Boolean(r);t=(0,d.jsx)(me.J,{data:e?Dr.Z:Ir.Z,className:Cc("result-status-icon",{error:e})}),a=e?"Failed":"Completed"}return(0,d.jsxs)("div",{className:Cc(null,n),children:[t,a]})},Pc=n.memo((function(e){const{className:t,value:a}=e,r=(0,y.zL)();return n.useEffect((()=>()=>{r((0,D.i8)())}),[r]),(0,d.jsx)("span",{className:_c("cell",t),onClick:e=>r((0,D.hJ)(e.target,a,"cell")),children:a})})),Dc=JSON.parse('{"empty":"Table is empty"}'),Rc=JSON.parse('{"empty":"\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u043f\u0443\u0441\u0442\u0430\u044f"}'),Ac=(0,pe.wZ)("ydb-query-result-table",{ru:Rc,en:Dc}),Lc={...x.LE,stripedRows:!0,dynamicRenderType:"variable",dynamicItemSizeGetter:()=>40},_c=(0,c.cn)("ydb-query-result-table"),Oc=(e,t)=>t,Mc=e=>{const{columns:t,data:a,settings:r,...s}=e,o=n.useMemo((()=>(0,ie.Xh)(a)),[a]),i=n.useMemo((()=>t?(e=>e.length?e.map((e=>{let{name:t,type:a}=e;const n=(0,ie.T$)(a);return{name:t,align:"number"===n?ne.ZP.RIGHT:ne.ZP.LEFT,sortAccessor:e=>{const a=e[t];return void 0===a||null===a?null:"number"===n?BigInt(a):a},render:e=>{let{row:a}=e;return(0,d.jsx)(Pc,{value:String(a[t])})}}})):[])(t):(e=>e.length?Object.keys(e[0]).map((t=>({name:t,align:(0,In.kE)(e[0][t])?ne.ZP.RIGHT:ne.ZP.LEFT,sortAccessor:e=>(0,In.kE)(e[t])?Number(e[t]):e[t],render:e=>{let{row:a}=e;return(0,d.jsx)(Pc,{value:String(a[t])})}}))):[])(o)),[o,t]),l=n.useMemo((()=>({...Lc,...r})),[r]);return Array.isArray(a)?i.length?(0,d.jsx)(se.G,{data:o,columns:i,settings:l,rowKey:Oc,...s}):(0,d.jsx)("div",{className:_c("message"),children:Ac("empty")}):null};var kc=a(5922),Fc=a(67585),zc=a(57225),qc=a(76506),Uc=a(33569);const Gc=JSON.parse('{"default_collapse_label":"Show less","default_expand_label":"Show more","chars_count":[" ({{count}} symbol)"," ({{count}} symbols)"," ({{count}} symbols)"," ({{count}} symbols)"]}'),Bc=JSON.parse('{"default_collapse_label":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043c\u0435\u043d\u044c\u0448\u0435","default_expand_label":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0435\u0449\u0451","chars_count":[" ({{count}} \u0441\u0438\u043c\u0432\u043e\u043b)"," ({{count}} \u0441\u0438\u043c\u0432\u043e\u043b\u0430)"," ({{count}} \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432)"," ({{count}} \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432)"]}'),Qc=(0,pe.wZ)("ydb-shorty-string",{ru:Bc,en:Gc}),Hc=(0,c.cn)("kv-shorty-string");function Zc(e){let{value:t="",limit:a=200,strict:r=!1,displayLength:s=!0,render:o=(e=>e),onToggle:i,expandLabel:l=Qc("default_expand_label"),collapseLabel:c=Qc("default_collapse_label")}=e;const[u,m]=n.useState(!1),p=(u?c:l)+(s&&!u?Qc("chars_count",{count:t.length}):""),h=t.length>a+(r?0:p.length),v=u||!h?t:t.slice(0,a-4)+"\xa0...";return(0,d.jsxs)("div",{className:Hc(),children:[o(v),h?(0,d.jsx)(Bs.r,{className:Hc("toggle"),href:"#",onClick:e=>{e.stopPropagation(),e.preventDefault(),m((e=>!e)),null===i||void 0===i||i()},children:p}):null]})}const Vc=["S_FATAL","S_ERROR","S_WARNING","S_INFO"];function Wc(e){return function(e){return!!e&&void 0!==Vc[e]}(e)?Vc[e]:"S_INFO"}const Jc=(0,c.cn)("kv-result-issues"),Kc=(0,c.cn)("kv-issues"),Yc=(0,c.cn)("kv-issue");function Xc(e){let{data:t}=e;const[a,r]=n.useState(!1),s="string"===typeof t||null===t||void 0===t?void 0:t.issues,o=Array.isArray(s)&&s.length>0;return(0,d.jsxs)("div",{className:Jc(),children:[(0,d.jsxs)("div",{className:Jc("error-message"),children:[(()=>{let e;if("string"===typeof t)e=t;else{var a,r;const s=Wc(null===t||void 0===t||null===(a=t.error)||void 0===a?void 0:a.severity);e=(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)(rd,{severity:s})," ",(0,d.jsx)("span",{className:Jc("error-message-text"),children:null===t||void 0===t||null===(r=t.error)||void 0===r?void 0:r.message})]})}return e})(),o&&(0,d.jsx)(Gn.z,{view:"normal",onClick:()=>r(!a),children:a?"Hide details":"Show details"})]}),o&&a&&(0,d.jsx)($c,{issues:s})]})}function $c(e){let{issues:t}=e;const a=null===t||void 0===t?void 0:t.reduce(((e,t)=>{var a;const n=null!==(a=t.severity)&&void 0!==a?a:10;return Math.min(e,n)}),10);return(0,d.jsx)("div",{className:Kc(null),children:null===t||void 0===t?void 0:t.map(((e,t)=>(0,d.jsx)(ed,{issue:e,expanded:e===a},t)))})}function ed(e){let{issue:t,level:a=0}=e;const[r,s]=n.useState(!0),o=Wc(t.severity),i=function(e){const{position:t}=e;if("object"!==typeof t||null===t||!(0,In.kE)(t.row))return"";const{row:a,column:n}=t;return(0,In.kE)(n)?"".concat(a,":").concat(n):"line ".concat(a)}(t),l=t.issues,c=Array.isArray(l)&&l.length>0,u=r?"bottom":"right";return(0,d.jsxs)("div",{className:Yc({leaf:!c,"has-issues":c}),children:[(0,d.jsxs)("div",{className:Yc("line"),children:[c&&(0,d.jsx)(Gn.z,{view:"flat-secondary",onClick:()=>s(!r),className:Yc("arrow-toggle"),children:(0,d.jsx)(Uc.F,{direction:u,size:16})}),(0,d.jsx)(rd,{severity:o}),(0,d.jsxs)("span",{className:Yc("message"),children:[i&&(0,d.jsx)("span",{className:Yc("place-text"),title:"Position",children:i}),(0,d.jsx)("div",{className:Yc("message-text"),children:(0,d.jsx)(Zc,{value:t.message,expandLabel:"Show full message"})})]}),t.issue_code?(0,d.jsxs)("span",{className:Yc("code"),children:["Code: ",t.issue_code]}):null]}),c&&r&&(0,d.jsx)("div",{className:Yc("issues"),children:(0,d.jsx)(td,{issues:l,level:a+1,expanded:r})})]})}function td(e){const{issues:t,level:a,expanded:n}=e;return(0,d.jsx)("div",{className:Yc("list"),children:t.map(((e,t)=>(0,d.jsx)(ed,{issue:e,level:a,expanded:n},t)))})}const ad={S_INFO:Fc.Z,S_WARNING:zc.Z,S_ERROR:Rr.Z,S_FATAL:qc.Z},nd=(0,c.cn)("yql-issue-severity");function rd(e){let{severity:t}=e;const a=t.slice(2).toLowerCase();return(0,d.jsxs)("span",{className:nd({severity:a}),children:[(0,d.jsx)(me.J,{className:nd("icon"),data:ad[t]}),(0,d.jsx)("span",{className:nd("title"),children:a})]})}const sd=(0,c.cn)("ydb-query-duration"),od=e=>{let{duration:t}=e;if(!t)return null;const a=(0,Ve.tt)((0,Ve.BO)(t),1);return(0,d.jsx)("span",{className:sd(),children:(0,d.jsx)(pt,{className:sd("item-with-popover"),contentClassName:sd("popover"),text:a,popoverContent:Hl("query-duration.description")})})};function id(e){return e.replaceAll("\\","\\\\").replaceAll("\n","\\n").replaceAll("\r","\\r").replaceAll("\t","\\t")}const ld=(0,c.cn)("ydb-query-execute-result"),cd={result:"result",stats:"stats"},dd=[{value:cd.result,content:"Result"},{value:cd.stats,content:"Stats"}];function ud(e){var t,a,r;let{data:s,stats:o,error:i,isResultsCollapsed:l,onCollapseResults:c,onExpandResults:u}=e;const[m,p]=n.useState(0),[h,v]=n.useState(cd.result),g=(0,y.ix)((e=>e.fullscreen)),x=(0,y.zL)(),b=null===s||void 0===s||null===(t=s.resultSets)||void 0===t?void 0:t.length,S=b&&b>0,f=S?null===s||void 0===s||null===(a=s.resultSets)||void 0===a?void 0:a[m].result:null===s||void 0===s?void 0:s.result,T=S?null===s||void 0===s||null===(r=s.resultSets)||void 0===r?void 0:r[m].columns:null===s||void 0===s?void 0:s.columns,N=function(e){if(null===e||void 0===e||!e.length)return"";const t=Object.keys(e[0]),a=[t.map(id).join("\t")];for(const n of e){const e=[];for(const a of t){const t=n[a];e.push(id("object"===typeof t?JSON.stringify(t):"".concat(t)))}a.push(e.join("\t"))}return a.join("\n")}(f),w=!N.length,E=(0,ie.dt)(i);n.useEffect((()=>()=>{x((0,gc.vj)())}),[x]);const C=(e,t)=>(0,d.jsx)(Mc,{data:e,columns:t,settings:{sortable:!1}}),I=()=>{const e=(0,d.jsx)(Zt(),{data:o,isExpanded:()=>!0,className:ld("inspector"),searchOptions:{debounceTime:300}});return(0,d.jsxs)(n.Fragment,{children:[e,g&&(0,d.jsx)(Nc,{children:(0,d.jsx)("div",{className:ld("inspector",{fullscreen:!0}),children:e})})]})},P=()=>{const e=(0,d.jsxs)(n.Fragment,{children:[S&&b>1&&(0,d.jsx)("div",{children:(0,d.jsx)(j.m,{className:ld("result-tabs"),size:"l",items:(0,kc.c)(b).map((e=>({id:String(e),title:"Result #".concat(e+1)}))),activeTab:String(m),onSelectTab:e=>p(Number(e))})}),(0,d.jsx)("div",{className:ld("result"),children:C(f,T)})]});return(0,d.jsxs)(n.Fragment,{children:[e,g&&(0,d.jsx)(Nc,{children:(0,d.jsx)("div",{className:ld("result-fullscreen-wrapper"),children:e})})]})},D=()=>{if(!E)return null;if("object"===typeof E){const e=(0,d.jsx)(Xc,{data:E});return(0,d.jsxs)(n.Fragment,{children:[e,g&&(0,d.jsx)(Nc,{children:(0,d.jsx)("div",{className:ld("result-fullscreen-wrapper",ld("result")),children:e})})]})}return(0,d.jsx)("div",{className:ld("error"),children:E})};return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsxs)("div",{className:ld("controls"),children:[(0,d.jsxs)("div",{className:ld("controls-right"),children:[(0,d.jsx)(Ic,{error:i}),o&&!i&&(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)(od,{duration:null===o||void 0===o?void 0:o.DurationUs}),(0,d.jsx)(hc,{}),(0,d.jsx)(Rl.E,{options:dd,value:h,onUpdate:e=>{v(e)}})]})]}),(0,d.jsxs)("div",{className:ld("controls-left"),children:[(0,d.jsx)(mc.m,{text:N,view:"flat-secondary",title:"Copy results",disabled:w}),(0,d.jsx)(xc,{}),(0,d.jsx)(uc,{onCollapse:c,onExpand:u,isCollapsed:l,initialDirection:"bottom"})]})]}),h!==cd.result||i?(0,d.jsxs)("div",{className:ld("result"),children:[h===cd.stats&&!i&&I(),D()]}):P()]})}var md=a(2128),pd=a(60749);const hd=e=>{const t=e.name.split("|");return t.length>1?t[1]:e.name},vd=(0,c.cn)("ydb-query-explain-result"),gd={automaticLayout:!0,selectOnLineNumbers:!0,readOnly:!0,minimap:{enabled:!1},wrappingIndent:"indent"},xd={schema:"schema",json:"json",ast:"ast"},yd=[{value:xd.schema,content:"Schema"},{value:xd.json,content:"JSON"},{value:xd.ast,content:"AST"}];function bd(e){const t=n.useRef(),{data:a,opts:r,shapes:s,theme:o}=e;return n.useEffect((()=>{const e=document.getElementById("graphRoot");if(!e)throw new Error("Can't find element with id #graphRoot");return e.innerHTML="",t.current=(0,md.hP)("graphRoot",a,r,s),t.current.render(),()=>{t.current=void 0}}),[o]),n.useEffect((()=>{var a,n;null===(a=t.current)||void 0===a||null===(n=a.updateData)||void 0===n||n.call(a,e.data)}),[e.data]),(0,d.jsx)("div",{id:"graphRoot",style:{height:"100vh"}})}function Sd(e){const t=(0,y.zL)(),[a,r]=n.useState(xd.schema),s=(0,y.ix)((e=>e.fullscreen));n.useEffect((()=>()=>{t((0,gc.vj)())}),[t]);const o=()=>{var t,n;switch(a){case xd.schema:return Boolean(null===(t=e.explain)||void 0===t||null===(n=t.nodes)||void 0===n?void 0:n.length);case xd.json:return Boolean(e.explain);case xd.ast:return Boolean(e.ast);default:return!1}};return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)("div",{className:vd("controls"),children:!e.loading&&(0,d.jsxs)(n.Fragment,{children:[(0,d.jsxs)("div",{className:vd("controls-right"),children:[(0,d.jsx)(Ic,{error:e.error}),!e.error&&(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)(hc,{}),(0,d.jsx)(Rl.E,{options:yd,value:a,onUpdate:e=>{r(e)}})]})]}),(0,d.jsxs)("div",{className:vd("controls-left"),children:[(0,d.jsx)(xc,{disabled:Boolean(e.error)||!o()}),(0,d.jsx)(uc,{onCollapse:e.onCollapseResults,onExpand:e.onExpandResults,isCollapsed:e.isResultsCollapsed,initialDirection:"bottom"})]})]})}),(0,d.jsx)("div",{className:vd("result"),children:(()=>{const{error:t,loading:r}=e;if(r)return(0,d.jsx)("div",{className:vd("loader"),children:(0,d.jsx)(jn.a,{size:"m"})});if(t)return(0,d.jsx)("div",{className:vd("text-message"),children:(0,ie.fV)(e.error)});if(!o())return(0,d.jsx)("div",{className:vd("text-message"),children:"There is no ".concat(a," for the request")});switch(a){case xd.json:return(()=>{var t;const a=(0,d.jsx)(Zt(),{data:null===(t=e.explain)||void 0===t?void 0:t.pristine,isExpanded:()=>!0,className:vd("inspector"),searchOptions:{debounceTime:300}});return(0,d.jsxs)(n.Fragment,{children:[a,s&&(0,d.jsx)(Nc,{children:a})]})})();case xd.ast:return(()=>{const t=(0,d.jsx)("div",{className:vd("ast"),children:(0,d.jsx)(Jl,{language:pd.K,value:e.ast,options:gd,wrappingIndent:"indent",theme:"vs-".concat(e.theme)})});return(0,d.jsxs)(n.Fragment,{children:[t,s&&(0,d.jsx)(Nc,{children:t})]})})();case xd.schema:return(()=>{const{explain:t={},theme:r}=e,{links:o,nodes:i,version:l}=t,c=l===$l.v2,u=o&&i&&i.length,m=c&&u?(0,d.jsx)("div",{className:vd("explain-canvas-container",{hidden:a!==xd.schema}),children:(0,d.jsx)(bd,{theme:r,data:{links:o,nodes:i},opts:{renderNodeTitle:hd,textOverflow:"normal",initialZoomFitsCanvas:!0},shapes:{node:md.od}})}):null;return(0,d.jsxs)(n.Fragment,{children:[!s&&m,s&&(0,d.jsx)(Nc,{children:m})]})})();default:return null}})()})]})}const jd=le.h.injectEndpoints({endpoints:e=>({sendQuery:e.query({queryFn:async(e,t)=>{let{query:a,database:n,action:r}=e,{signal:s}=t;try{const e=await window.api.sendQuery({schema:"modern",query:a,database:n,action:r},{signal:s});return(0,ie.gW)(e)?{error:e}:{data:(0,ie.gY)(e)}}catch(o){return{error:o||new Error("Unauthorized")}}},providesTags:["All"]})}),overrideExisting:"throw"}),fd=(0,c.cn)("kv-preview"),Td=e=>{var t;let{database:a,path:n,type:r}=e;const s=(0,y.zL)(),o=(0,ue.vp)(r),[i]=(0,y.Rj)(),l=(0,y.ix)((e=>e.fullscreen)),c="--!syntax_v1\nselect * from `".concat(n,"` limit 32"),{currentData:u,isFetching:m,error:p}=jd.useSendQueryQuery({database:a,query:c,action:(0,ue.uL)(r)?"execute-query":"execute-scan"},{pollingInterval:i,skip:!o}),h=null!==u&&void 0!==u?u:{},v=()=>{s((0,g.m7)(!1))};if(m&&void 0===u)return(0,d.jsx)("div",{className:fd("loader-container"),children:(0,d.jsx)(jn.a,{size:"m"})});let x;o?p&&(x=(0,d.jsx)("div",{className:fd("message-container","error"),children:(0,ie.fV)(p)})):x=(0,d.jsx)("div",{className:fd("message-container"),children:Hl("preview.not-available")});const b=null!==(t=x)&&void 0!==t?t:(0,d.jsx)("div",{className:fd("result"),children:(0,d.jsx)(Mc,{data:h.result,columns:h.columns})});return(0,d.jsxs)("div",{className:fd(),children:[(0,d.jsxs)("div",{className:fd("header"),children:[(0,d.jsxs)("div",{className:fd("title"),children:[Hl("preview.title")," ",(0,d.jsx)("div",{className:fd("table-name"),children:n})]}),(0,d.jsxs)("div",{className:fd("controls-left"),children:[(0,d.jsx)(xc,{disabled:Boolean(p)}),(0,d.jsx)(Gn.z,{view:"flat-secondary",onClick:v,title:Hl("preview.close"),children:(0,d.jsx)(me.J,{data:ni.Z,size:18})})]})]}),l?(0,d.jsx)(Nc,{children:b}):b]})};var Nd=a(46089),wd=a(57542),Ed=a(30044),Cd=a(25822),Id=a(77264),Pd=a(20566);function Dd(){const[e]=(0,Pd.useSetting)(Pd.SAVED_QUERIES_KEY,[]);return e}const Rd=JSON.parse('{"action.save":"Save query","action.edit":"Edit query","action.save-as-new":"Save as new","action.edit-existing":"Edit existing","description":"The query will be saved in your browser","input-label":"Query name","input-placeholder":"Enter query name","button-apply":"Save","button-cancel":"Cancel","error.name-exists":"This name already exists","error.name-not-empty":"Name should not be empty"}'),Ad=(0,pe.wZ)("ydb-save-query-dialog",{en:Rd}),Ld=(0,c.cn)("ydb-save-query");function _d(e){let{isSaveButtonDisabled:t}=e;const a=(0,y.zL)(),n=(0,y.ix)(nc.g0),r=()=>{a((0,nc.lm)("save")),a((0,nc.y3)())},s=()=>{a((0,nc.PM)(n)),a((0,nc.y3)())};return n?(()=>{const e=[{action:s,text:Ad("action.edit-existing")},{action:r,text:Ad("action.save-as-new")}];return(0,d.jsx)(Ed.h,{items:e,renderSwitcher:e=>(0,d.jsx)(Gn.z,{...e,disabled:t,children:Ad("action.edit")}),popupProps:{placement:"top"}})})():(0,d.jsx)(Gn.z,{onClick:r,disabled:t,children:Ad("action.save")})}function Od(){const e=Dd(),t=(0,y.zL)(),a=(0,y.ix)(nc.oK),[r,s]=n.useState(""),[o,i]=n.useState(),l=()=>{t((0,nc.lm)("idle")),s(""),i(void 0)};return(0,d.jsxs)(Cd.V,{open:"save"===a,hasCloseButton:!1,size:"s",onClose:l,children:[(0,d.jsx)(Cd.V.Header,{caption:Ad("action.save")}),(0,d.jsxs)("form",{onSubmit:a=>{a.preventDefault();const n=(s=r)?e.some((e=>e.name.toLowerCase()===s.trim().toLowerCase()))?Ad("error.name-exists"):void 0:Ad("error.name-not-empty");var s;i(n),n||(t((0,nc.PM)(r)),l())},children:[(0,d.jsxs)(Cd.V.Body,{className:Ld("dialog-body"),children:[(0,d.jsx)("div",{className:Ld("dialog-row"),children:Ad("description")}),(0,d.jsxs)("div",{className:Ld("dialog-row"),children:[(0,d.jsx)("label",{htmlFor:"queryName",className:Ld("field-title","required"),children:Ad("input-label")}),(0,d.jsx)("div",{className:Ld("control-wrapper"),children:(0,d.jsx)(Id.o,{id:"queryName",placeholder:Ad("input-placeholder"),value:r,onUpdate:e=>{s(e),i(void 0)},hasClear:!0,autoFocus:!0,autoComplete:!1,validationState:o?"invalid":void 0,errorMessage:o})})]})]}),(0,d.jsx)(Cd.V.Footer,{textButtonApply:Ad("button-apply"),textButtonCancel:Ad("button-cancel"),onClickButtonCancel:l,propsButtonApply:{type:"submit"}})]})]})}const Md=(0,c.cn)("ydb-query-editor-controls"),kd={[ie.wZ.script]:{title:ie.U4[ie.wZ.script],description:Hl("method-description.script")},[ie.wZ.scan]:{title:ie.U4[ie.wZ.scan],description:Hl("method-description.scan")},[ie.wZ.data]:{title:ie.U4[ie.wZ.data],description:Hl("method-description.data")},[ie.wZ.query]:{title:ie.U4[ie.wZ.query],description:Hl("method-description.query")},[ie.wZ.pg]:{title:ie.U4[ie.wZ.pg],description:Hl("method-description.pg")}},Fd=e=>{let{onRunButtonClick:t,runIsLoading:a,onExplainButtonClick:r,explainIsLoading:s,disabled:o,onUpdateQueryMode:i,queryMode:l,highlightedAction:c}=e;const u=n.useMemo((()=>Object.entries(kd).map((e=>{let[t,{title:a,description:n}]=e;return{text:(0,d.jsx)(pt,{className:Md("item-with-popover"),contentClassName:Md("popover"),text:a,popoverContent:n}),action:()=>{i(t)}}}))),[i]),m="execute"===c?"action":void 0,p="explain"===c?"action":void 0;return(0,d.jsxs)("div",{className:Md(),children:[(0,d.jsxs)("div",{className:Md("left"),children:[(0,d.jsxs)(Gn.z,{onClick:()=>{t(l)},disabled:o,loading:a,view:m,children:[(0,d.jsx)(me.J,{data:Nd.Z,size:14}),"Run"]}),(0,d.jsx)(Gn.z,{onClick:()=>{r(l)},disabled:o,loading:s,view:p,children:"Explain"}),(0,d.jsx)("div",{className:Md("mode-selector"),children:(0,d.jsx)(Ed.h,{items:u,popupProps:{className:Md("mode-selector__popup"),qa:"query-mode-selector-popup"},switcher:(0,d.jsx)(Gn.z,{className:Md("mode-selector__button"),qa:"query-mode-selector",children:(0,d.jsxs)("span",{className:Md("mode-selector__button-content"),children:["".concat(Hl("controls.query-mode-selector_type")," ").concat(kd[l].title),(0,d.jsx)(me.J,{data:wd.Z})]})})})})]}),(0,d.jsx)(_d,{isSaveButtonDisabled:o})]})},zd={automaticLayout:!0,selectOnLineNumbers:!0,minimap:{enabled:!1}};const qd="navigation",Ud={EXECUTE:"execute",EXPLAIN:"explain"},Gd={sendQuery:"sendQuery",sendSelectedQuery:"sendSelectedQuery"},Bd=(0,c.cn)("query-editor"),Qd={triggerExpand:!1,triggerCollapse:!1,collapsed:!0};const Hd={saveQueryToHistory:as.hO,goToPreviousQuery:as.NU,goToNextQuery:as.AJ,setShowPreview:g.m7,setTenantPath:as.K0,setQueryAction:nc.lm},Zd=(0,Vt.$j)((e=>({executeQuery:e.executeQuery,showPreview:e.schema.showPreview})),Hd)((function(e){const t=function(){const[e]=(0,y.yu)(x.y6),[t]=(0,y.yu)(x.XX);return n.useMemo((()=>{const a=Boolean(e);return{quickSuggestions:a,suggestOnTriggerCharacters:a,acceptSuggestionOnEnter:t?"on":"off",...zd}}),[e,t])}(),{tenantName:a,path:r,setTenantPath:s,setQueryAction:o,executeQuery:i,type:l,theme:c,changeUserInput:u,showPreview:m}=e,{tenantPath:p}=i,[v,g]=n.useState(Ud.EXECUTE),[b,S]=n.useState(!1),[j,f]=(0,y.$6)(),[T]=(0,y.yu)(x.Rq),[N,w]=(0,y.yu)(x.w7),[E,C]=n.useState(null),[I,P]=as.mg.useExecuteQueryMutation(),[D,R]=ac.useExplainQueryMutation();n.useEffect((()=>{p!==a&&(p&&u({input:""}),s(a))}),[u,s,a,p]);const[A,_]=n.useReducer(cc(x.eG),Qd),O=n.useRef();n.useEffect((()=>{const e=()=>{O.current&&O.current.layout()},t=L()((()=>{e()}),100);return e(),window.addEventListener("resize",t),()=>{window.removeEventListener("resize",t)}}),[]),n.useEffect((()=>{_(oc.triggerCollapse)}),[]),n.useEffect((()=>{e.showPreview||b?_(oc.triggerExpand):_(oc.triggerCollapse)}),[e.showPreview,b]),n.useEffect((()=>{var e;const{input:t,history:a}=i,n=!!t&&t!==(null===(e=a.queries[a.queries.length-1])||void 0===e?void 0:e.queryText);return window.onbeforeunload=n?e=>{e.preventDefault(),e.returnValue=""}:null,()=>{window.onbeforeunload=null}}),[i]);const M=(t,n)=>{if(!t)return;const{input:r,history:s}=i,o=T?"multi":"modern",l=null!==n&&void 0!==n?n:r;if(w(ie.Jf.execute),g(Ud.EXECUTE),I({query:l,database:a,mode:t,schema:o}),S(!0),e.setShowPreview(!1),!n){var c;const{queries:a,currentIndex:n}=s;l!==(null===(c=a[n])||void 0===c?void 0:c.queryText)&&e.saveQueryToHistory(r,t)}_(oc.triggerExpand)},k=t=>{const{input:n}=i;w(ie.Jf.explain),g(Ud.EXPLAIN),D({query:n,database:a,mode:t}),S(!0),e.setShowPreview(!1),_(oc.triggerExpand)};return n.useEffect((()=>{if(null!==E)switch(C(null),E){case Gd.sendQuery:N===ie.Jf.explain?k(j):M(j);break;case Gd.sendSelectedQuery:{var e,t;const a=null===(e=O.current)||void 0===e?void 0:e.getSelection(),n=null===(t=O.current)||void 0===t?void 0:t.getModel();if(a&&n){const e=n.getValueInRange({startLineNumber:a.getSelectionStart().lineNumber,startColumn:a.getSelectionStart().column,endLineNumber:a.getPosition().lineNumber,endColumn:a.getPosition().column});M(j,e)}break}}}),[E]),(0,d.jsxs)("div",{className:Bd(),children:[(0,d.jsxs)(h,{direction:"vertical",defaultSizePaneKey:x.XN,triggerCollapse:A.triggerCollapse,triggerExpand:A.triggerExpand,minSize:[0,52],collapsedSizes:[100,0],onSplitStartDragAdditional:()=>{_(oc.clear)},children:[(0,d.jsxs)("div",{className:Bd("pane-wrapper",{top:!0}),children:[(0,d.jsx)("div",{className:Bd("monaco-wrapper"),children:(0,d.jsx)("div",{className:Bd("monaco"),children:(0,d.jsx)(Jl,{language:rc.Oo,value:i.input,options:t,onChange:t=>{e.changeUserInput({input:t})},editorDidMount:(t,a)=>{const n=function(e){const{KeyMod:t,KeyCode:a}=e,n=t.CtrlCmd;return{sendQuery:n|a.Enter,sendSelectedQuery:n|t.Shift|e.KeyCode.Enter,selectPreviousQuery:n|a.UpArrow,selectNextQuery:n|a.DownArrow,saveQuery:n|a.KeyS,saveSelectedQuery:n|t.Shift|a.KeyS}}(a);O.current=t,t.focus(),t.addAction({id:"sendQuery",label:Hl("action.send-query"),keybindings:[n.sendQuery],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:qd,contextMenuOrder:1,run:()=>C(Gd.sendQuery)});const r=t.createContextKey("canSendSelectedText",!1);t.onDidChangeCursorSelection((e=>{let{selection:t,secondarySelections:a}=e;const n=t.selectionStartLineNumber!==t.positionLineNumber||t.selectionStartColumn!==t.positionColumn,s=a.length>0;r.set(n&&!s)})),t.addAction({id:"sendSelectedQuery",label:Hl("action.send-selected-query"),keybindings:[n.sendSelectedQuery],precondition:"canSendSelectedText",contextMenuGroupId:qd,contextMenuOrder:1,run:()=>C(Gd.sendSelectedQuery)}),t.addAction({id:"previous-query",label:Hl("action.previous-query"),keybindings:[n.selectPreviousQuery],contextMenuGroupId:qd,contextMenuOrder:2,run:()=>{e.goToPreviousQuery()}}),t.addAction({id:"next-query",label:Hl("action.next-query"),keybindings:[n.selectNextQuery],contextMenuGroupId:qd,contextMenuOrder:3,run:()=>{e.goToNextQuery()}}),t.addAction({id:"save-query",label:Hl("action.save-query"),keybindings:[n.saveQuery],run:()=>{o("save")}})},theme:"vs-".concat(c)})})}),(0,d.jsx)(Fd,{onRunButtonClick:M,runIsLoading:P.isLoading,onExplainButtonClick:k,explainIsLoading:R.isLoading,disabled:!i.input,onUpdateQueryMode:f,queryMode:j,highlightedAction:N})]}),(0,d.jsx)("div",{className:Bd("pane-wrapper"),children:(0,d.jsx)(Vd,{executeQueryData:P.data,executeQueryError:P.error,explainQueryData:R.data,explainQueryError:R.error,explainQueryLoading:R.isLoading,resultVisibilityState:A,onExpandResultHandler:()=>{_(oc.triggerExpand)},onCollapseResultHandler:()=>{_(oc.triggerCollapse)},type:l,theme:c,resultType:v,tenantName:a,path:r,showPreview:m})})]}),(0,d.jsx)(Od,{})]})}));function Vd(e){let{executeQueryData:t,executeQueryError:a,explainQueryData:n,explainQueryError:r,explainQueryLoading:s,resultVisibilityState:o,onExpandResultHandler:i,onCollapseResultHandler:l,type:c,theme:u,resultType:m,tenantName:p,path:h,showPreview:v}=e;if(v)return(0,d.jsx)(Td,{database:p,path:h,type:c});if(m===Ud.EXECUTE){if(t||a){const{stats:e,...n}=t||{};return(0,d.jsx)(ud,{data:n,stats:e,error:a,isResultsCollapsed:o.collapsed,onExpandResults:i,onCollapseResults:l})}return null}if(m===Ud.EXPLAIN){const{plan:e,ast:t}=n||{};return(0,d.jsx)(Sd,{error:r,explain:e,ast:t,loading:s,theme:u,isResultsCollapsed:o.collapsed,onExpandResults:i,onCollapseResults:l})}return null}const Wd=[{id:S._0.newQuery,title:Hl("tabs.newQuery")},{id:S._0.history,title:Hl("tabs.history")},{id:S._0.saved,title:Hl("tabs.saved")}],Jd=e=>{let{className:t,activeTab:a}=e;const n=(0,Ca.TH)(),r=(0,N.mB)(n);return(0,d.jsx)("div",{className:t,children:(0,d.jsx)(j.m,{size:"l",allowNotSelected:!0,activeTab:a,items:Wd,wrapTo:(e,t)=>{let{id:a}=e;const n=(0,Ue.Sj)({...r,[Ue.XV.queryTab]:a});return(0,d.jsx)(Xr.h,{to:n,children:t},a)}})})};var Kd=a(20847),Yd=a(16459);const Xd=(0,c.cn)("ydb-saved-queries"),$d=e=>{let{visible:t,queryName:a,onCancelClick:n,onConfirmClick:r}=e;return(0,d.jsxs)(Cd.V,{open:t,hasCloseButton:!1,size:"s",onClose:n,onEnterKeyDown:r,children:[(0,d.jsx)(Cd.V.Header,{caption:Hl("delete-dialog.header")}),(0,d.jsxs)(Cd.V.Body,{className:Xd("dialog-body"),children:[Hl("delete-dialog.question"),(0,d.jsx)("span",{className:Xd("dialog-query-name"),children:" ".concat(a,"?")})]}),(0,d.jsx)(Cd.V.Footer,{textButtonApply:Hl("delete-dialog.delete"),textButtonCancel:Hl("delete-dialog.cancel"),onClickButtonCancel:n,onClickButtonApply:r})]})},eu=e=>{let{changeUserInput:t}=e;const a=Dd(),r=(0,y.zL)(),[s,o]=n.useState(!1),[i,l]=n.useState(""),c=()=>{o(!1),l("")},u=[{name:"name",header:"Name",render:e=>{let{row:t}=e;return(0,d.jsx)("div",{className:Xd("query-name"),children:t.name})},width:200},{name:"body",header:"Query Text",render:e=>{let{row:t}=e;return(0,d.jsxs)("div",{className:Xd("query"),children:[(0,d.jsx)("div",{className:Xd("query-body"),children:(0,d.jsx)(os,{value:t.body,maxQueryHeight:ws})}),(0,d.jsxs)("span",{className:Xd("controls"),children:[(0,d.jsx)(Gn.z,{view:"flat-secondary",children:(0,d.jsx)(me.J,{data:Kd.Z})}),(0,d.jsx)(Gn.z,{view:"flat-secondary",onClick:(a=t.name,e=>{e.stopPropagation(),o(!0),l(a)}),children:(0,d.jsx)(me.J,{data:Yd.Z})})]})]});var a},sortable:!1,resizeMinWidth:650}];return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)("div",{className:Xd(),children:(0,d.jsx)(se.G,{columnsWidthLSKey:"savedQueriesTableColumnsWidth",columns:u,data:a,settings:Es,emptyDataMessage:Hl("saved.empty"),rowClassName:()=>Xd("row"),onRowClick:e=>{return a=e.body,n=e.name,t({input:a}),r((0,nc.GC)(n)),void r((0,w.jk)(S._0.newQuery));var a,n},initialSortOrder:{columnId:"name",order:ne.ZP.ASCENDING}})}),(0,d.jsx)($d,{visible:s,queryName:i,onCancelClick:()=>{c()},onConfirmClick:()=>{c(),r((0,nc.qF)(i)),l("")}})]})},tu=(0,c.cn)("ydb-query"),au=e=>{const t=(0,y.zL)(),{queryTab:a=S._0.newQuery}=(0,y.ix)((e=>e.tenant)),s=e=>{t((0,as.B8)(e))},o=n.useMemo((()=>Wd.find((e=>{let{id:t}=e;return t===a}))),[a]);return(0,d.jsxs)("div",{className:tu(),children:[o?(0,d.jsx)(r.ql,{children:(0,d.jsx)("title",{children:o.title})}):null,(0,d.jsx)(Jd,{className:tu("tabs"),activeTab:a}),(0,d.jsx)("div",{className:tu("content"),children:(()=>{switch(a){case S._0.newQuery:return(0,d.jsx)(Zd,{changeUserInput:s,...e});case S._0.history:return(0,d.jsx)(Wl,{changeUserInput:s});case S._0.saved:return(0,d.jsx)(eu,{changeUserInput:s});default:return null}})()})]})};var nu=a(68309),ru=a(85807);const su=["query","diagnostics"],ou={query:nu.Z,diagnostics:ru.Z};const iu=(0,c.cn)("ydb-tenant-navigation"),lu=e=>{let{id:t,title:a,icon:n}=e;return{value:t,content:(0,d.jsxs)("span",{className:iu("item"),children:[(0,d.jsx)(me.J,{data:n,size:16,className:iu("icon")}),(0,d.jsx)("span",{className:iu("text"),children:a})]})}},cu=()=>{const e=function(){const e=(0,Ca.k6)(),t=(0,Ca.TH)(),a=(0,N.mB)(t),[,r]=(0,y.yu)(x.pf),{tenantPage:s}=(0,y.ix)((e=>e.tenant)),o=n.useMemo((()=>{if(t.pathname!==N.ZP.tenant)return[];const n=su.map((t=>{const n=S.m2[t],o=(0,Ue.Sj)({...a,[S.bS]:n});return{id:n,title:cn("pages.".concat(t)),icon:ou[t],path:o,current:s===n,onForward:()=>{r(n),e.push(o)}}}));return n}),[s,r,t.pathname,e,a]);return o}();return(0,d.jsx)("div",{className:iu(),children:(0,d.jsx)(Rl.E,{width:"auto",onUpdate:t=>{const a=e.find((e=>e.id===t));null===a||void 0===a||a.onForward()},size:"l",className:iu("body"),value:(e.find((e=>e.current))||e[0]).id,options:e.map(lu)})})},du=(0,c.cn)("object-general");const uu=function(e){const t=(0,b.C)(),{tenantPage:a}=(0,y.ix)((e=>e.tenant));return(0,d.jsxs)("div",{className:du(),children:[(0,d.jsx)(cu,{}),(()=>{const{type:n,additionalTenantProps:r,additionalNodesProps:s,tenantName:o,path:i}=e;return a===S.m2.query?(0,d.jsx)(au,{tenantName:o,path:i,theme:t,type:n}):(0,d.jsx)(Bl,{type:n,tenantName:o,path:i,additionalTenantProps:r,additionalNodesProps:s})})()]})};var mu=a(9593);const pu=le.h.injectEndpoints({endpoints:e=>({getSchemaAcl:e.query({queryFn:async(e,t)=>{let{path:a}=e,{signal:n}=t;try{const e=await window.api.getSchemaAcl({path:a},{signal:n});return{data:{acl:e.Common.ACL,owner:e.Common.Owner}}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"}),hu=(0,c.cn)("ydb-acl"),vu=e=>{if(e&&e.endsWith("@staff")&&!e.startsWith("svc_")){return e.split("@")[0]}return e},gu=["access","type","inheritance"],xu={access:"Access",type:"Access type",inheritance:"Inheritance type"},yu="Allow",bu=new Set(["Object","Container"]);function Su(e){let{value:t}=e;const a="string"===typeof t?[t]:t;return(0,d.jsx)("div",{className:hu("definition-content"),children:a.map((e=>(0,d.jsx)("span",{children:e},e)))})}function ju(e){if(!e||!e.length)return[];const t=function(e){return e.map((e=>{const{AccessRules:t=[],AccessRights:a=[],AccessType:n,InheritanceType:r,Subject:s}=e,o=t.concat(a),i=n===yu?void 0:n;let l;return((null===r||void 0===r?void 0:r.length)!==bu.size||r.some((e=>!bu.has(e))))&&(l=r),{access:o.length?o:void 0,type:i,inheritance:l,Subject:s}}))}(e);return t.map((e=>{let{Subject:t,...a}=e;const n=Object.entries(a).filter((e=>{let[t,a]=e;return Boolean(a)}));return 1===n.length&&"access"===n[0][0]?{name:t,content:(0,d.jsx)(Su,{value:n[0][1]})}:{label:(0,d.jsx)("span",{className:hu("group-label"),children:t}),items:gu.map((e=>{const t=a[e];if(t)return{name:xu[e],content:(0,d.jsx)(Su,{value:t})}})).filter(kc.D)}}))}const fu=e=>{let{path:t}=e;const{currentData:a,isFetching:r,error:s}=pu.useGetSchemaAclQuery({path:t}),o=r&&!a,{acl:l,owner:c}=a||{},u=ju(l),m=function(e){const t=vu(e);return t?[{name:(0,d.jsx)("span",{className:hu("owner"),children:t}),content:(0,d.jsx)("span",{className:hu("owner"),children:cn("acl.owner")})}]:[]}(c);return o?(0,d.jsx)(i.a,{}):s?(0,d.jsx)(I.V,{error:s}):l||c?(0,d.jsxs)("div",{className:hu(),children:[m.length?(0,d.jsx)(_a.w,{items:m,nameMaxWidth:200,className:hu("owner-container")}):null,u.length?(0,d.jsx)(_a.w,{items:u,nameMaxWidth:200,className:hu("result")}):null]}):(0,d.jsx)(n.Fragment,{children:cn("acl.empty")})};var Tu=a(7504),Nu=a(69886),wu=a.n(Nu),Eu=a(80977);const Cu=e=>"-- docs: https://ydb.tech/en/docs/yql/reference/syntax/create_table\nCREATE TABLE `".concat(e,"/ydb_row_table` (\n category_id Uint64 NOT NULL,\n id Uint64,\n expire_at Datetime,\n updated_on Datetime,\n name Text,\n `binary-payload` Bytes,\n attributes JsonDocument,\n -- uncomment to add a secondary index\n -- INDEX idx_row_table_id GLOBAL SYNC ON ( id ) COVER ( name, attributes ), -- Secondary indexes docs https://ydb.tech/en/docs/yql/reference/syntax/create_table#secondary_index\n PRIMARY KEY (category_id, id)\n) \nWITH (\n AUTO_PARTITIONING_BY_SIZE = ENABLED,\n AUTO_PARTITIONING_PARTITION_SIZE_MB = 2048,\n AUTO_PARTITIONING_BY_LOAD = ENABLED,\n AUTO_PARTITIONING_MIN_PARTITIONS_COUNT = 4,\n AUTO_PARTITIONING_MAX_PARTITIONS_COUNT = 1024,\n -- uncomment to create a table with predefined partitions\n -- UNIFORM_PARTITIONS = 4, -- The number of partitions for uniform initial table partitioning.\n -- The primary key's first column must have type Uint64 or Uint32.\n -- A created table is immediately divided into the specified number of partitions\n -- uncomment to launch read only replicas in every AZ\n -- READ_REPLICAS_SETTINGS = 'PER_AZ:1', -- Enable read replicas for stale read, launch one replica in every availability zone\n -- uncomment to enable ttl\n -- TTL = Interval(\"PT1H\") ON expire_at, -- Enable background deletion of expired rows https://ydb.tech/en/docs/concepts/ttl\n KEY_BLOOM_FILTER = ENABLED -- With a Bloom filter, you can more efficiently determine\n -- if some keys are missing in a table when making multiple single queries by the primary key.\n)"),Iu=e=>"-- docs: https://ydb.tech/en/docs/yql/reference/syntax/create_table#olap-tables\nCREATE TABLE `".concat(e,"/ydb_column_table` (\n id Int64 NOT NULL,\n author Text,\n title Text,\n body Text,\n PRIMARY KEY (id)\n)\nPARTITION BY HASH(id)\nWITH (STORE = COLUMN)"),Pu=()=>'CREATE OBJECT secret_name (TYPE SECRET) WITH value="secret_value";\n\nCREATE ASYNC REPLICATION my_replication\nFOR `/remote_database/table_name` AS `local_table_name` --[, `/remote_database/another_table_name` AS `another_local_table_name` ...]\nWITH (\n CONNECTION_STRING="grpcs://mydb.ydb.tech:2135/?database=/remote_database",\n TOKEN_SECRET_NAME = "secret_name"\n -- ENDPOINT="mydb.ydb.tech:2135",\n -- DATABASE=`/remote_database`,\n -- USER="user",\n -- PASSWORD_SECRET_NAME="your_password"\n);',Du=e=>"ALTER TABLE `".concat(e,"`\n ADD COLUMN is_deleted Bool;"),Ru=e=>"SELECT *\n FROM `".concat(e,"`\n LIMIT 10;"),Au=e=>"UPSERT INTO `".concat(e,"`\n ( `id`, `name` )\nVALUES ( );"),Lu=e=>"DROP EXTERNAL TABLE `".concat(e,"`;"),_u=e=>{const t=e.split("/").slice(0,-1).join("/");return"CREATE EXTERNAL TABLE `".concat(t,'/my_external_table` (\n column1 Int,\n column2 Int\n) WITH (\n DATA_SOURCE="').concat(e,'",\n LOCATION="",\n FORMAT="json_as_string",\n `file_pattern`=""\n);')},Ou=e=>"-- docs: https://ydb.tech/en/docs/yql/reference/syntax/create_topic\nCREATE TOPIC `".concat(e,"/my_topic` (\n CONSUMER consumer1,\n CONSUMER consumer2 WITH (read_from = Datetime('1970-01-01T00:00:00Z')) -- Sets up the message write time starting from which the consumer will receive data.\n -- Value type: Datetime OR Timestamp OR integer (unix-timestamp in the numeric format). \n -- Default value: now\n) WITH (\n min_active_partitions = 1, -- Minimum number of topic partitions.\n partition_count_limit = 0, -- Maximum number of active partitions in the topic. 0 is interpreted as unlimited.\n retention_period = Interval('PT18H'), -- Data retention period in the topic. Value type: Interval.\n retention_storage_mb = 0, -- Limit on the maximum disk space occupied by the topic data. \n -- When this value is exceeded, the older data is cleared, like under a retention policy. \n -- 0 is interpreted as unlimited.\n partition_write_speed_bytes_per_second = 1048576, -- Maximum allowed write speed per partition.\n partition_write_burst_bytes = 0 -- Write quota allocated for write bursts. \n -- When set to zero, the actual write_burst value is equalled to \n -- the quota value (this allows write bursts of up to one second).\n);"),Mu=e=>"-- docs: https://ydb.tech/en/docs/yql/reference/syntax/alter_topic\nALTER TOPIC `".concat(e,"`\n ADD CONSUMER new_consumer WITH (read_from = Datetime('1970-01-01T00:00:00Z')), -- Sets up the message write time starting from which the consumer will receive data.\n -- Value type: Datetime OR Timestamp OR integer (unix-timestamp in the numeric format).\n -- Default value: now\n ALTER CONSUMER consumer1 SET (read_from = Datetime('1970-01-01T00:00:00Z')),\n DROP CONSUMER consumer2,\n SET (\n min_active_partitions = 1, -- Minimum number of topic partitions.\n partition_count_limit = 0, -- Maximum number of active partitions in the topic. 0 is interpreted as unlimited.\n retention_period = Interval('PT18H'), -- Data retention period in the topic. Value type: Interval.\n retention_storage_mb = 0, -- Limit on the maximum disk space occupied by the topic data. \n -- When this value is exceeded, the older data is cleared, like under a retention policy. \n -- 0 is interpreted as unlimited.\n partition_write_speed_bytes_per_second = 1048576, -- Maximum allowed write speed per partition.\n partition_write_burst_bytes = 0 -- Write quota allocated for write bursts. \n -- When set to zero, the actual write_burst value is equalled to\n -- the quota value (this allows write bursts of up to one second).\n );"),ku=e=>"DROP TOPIC `".concat(e,"`;"),Fu=e=>"CREATE VIEW `".concat(e,"/my_view` WITH (security_invoker = TRUE) AS SELECT 1;"),zu=e=>"DROP VIEW `".concat(e,"`;"),qu=e=>"DROP ASYNC REPLICATION `".concat(e,"`;"),Uu=e=>"ALTER ASYNC REPLICATION `".concat(e,'` SET (STATE = "DONE", FAILOVER_MODE = "FORCE");'),Gu=(e,t)=>(a,n)=>{const r=((e,t,a)=>{const{setActivePath:n,setQueryMode:r,showCreateDirectoryDialog:s}=a,o=(a,s)=>()=>{s&&r(s),t((0,as.B8)({input:a(e)})),t((0,w.Cs)(S.m2.query)),t((0,w.jk)(S._0.newQuery)),n(e)};return{createDirectory:s?()=>{s(e)}:void 0,createTable:o(Cu,"script"),createColumnTable:o(Iu,"script"),createAsyncReplication:o(Pu,"script"),alterAsyncReplication:o(Uu,"script"),dropAsyncReplication:o(qu,"script"),alterTable:o(Du,"script"),selectQuery:o(Ru),upsertQuery:o(Au),createExternalTable:o(_u,"script"),dropExternalTable:o(Lu,"script"),selectQueryFromExternalTable:o(Ru,"query"),createTopic:o(Ou,"script"),alterTopic:o(Mu,"script"),dropTopic:o(ku,"script"),createView:o(Fu,"script"),dropView:o(zu,"script"),copyPath:()=>{try{wu()(e),(0,Eu.Z)({name:"Copied",title:cn("actions.copied"),type:"success"})}catch{(0,Eu.Z)({name:"Not copied",title:cn("actions.notCopied"),type:"error"})}}}})(a,e,t),s={text:cn("actions.copyPath"),action:r.copyPath},o=[[s],[{text:cn("actions.createTable"),action:r.createTable},{text:cn("actions.createColumnTable"),action:r.createColumnTable},{text:cn("actions.createAsyncReplication"),action:r.createAsyncReplication},{text:cn("actions.createTopic"),action:r.createTopic},{text:cn("actions.createView"),action:r.createView}]];r.createDirectory&&o.splice(1,0,[{text:cn("actions.createDirectory"),action:r.createDirectory}]);const i=[[s],[{text:cn("actions.alterTable"),action:r.alterTable},{text:cn("actions.selectQuery"),action:r.selectQuery},{text:cn("actions.upsertQuery"),action:r.upsertQuery}]],l=[[s],[{text:cn("actions.alterTopic"),action:r.alterTopic},{text:cn("actions.dropTopic"),action:r.dropTopic}]],c=[[s],[{text:cn("actions.selectQuery"),action:r.selectQueryFromExternalTable}],[{text:cn("actions.dropTable"),action:r.dropExternalTable}]],d=[[s],[{text:cn("actions.createExternalTable"),action:r.createExternalTable}]],u=[[s],[{text:cn("actions.selectQuery"),action:r.selectQuery}],[{text:cn("actions.dropView"),action:r.dropView}]],m=[s];return{async_replication:[[s],[{text:cn("actions.alterReplication"),action:r.alterAsyncReplication},{text:cn("actions.dropReplication"),action:r.dropAsyncReplication}]],database:o,directory:o,table:i,column_table:i,index_table:m,topic:l,stream:m,index:m,external_table:c,external_data_source:d,view:u}[n]},Bu=(e,t)=>(a,n)=>{const r=((e,t,a)=>{const{setActivePath:n}=a;return{openPreview:()=>{t((0,g.m7)(!0)),t((0,w.Cs)(S.m2.query)),t((0,w.jk)(S._0.newQuery)),n(e)}}})(a,e,t),s=(0,d.jsx)(Gn.z,{view:"flat-secondary",onClick:r.openPreview,title:cn("actions.openPreview"),size:"s",children:(0,d.jsx)(me.J,{data:mu.Z})});return{async_replication:void 0,database:void 0,directory:void 0,table:s,column_table:s,index_table:void 0,topic:void 0,stream:void 0,index:void 0,external_table:s,external_data_source:void 0,view:s}[n]},Qu=(0,c.cn)("ydb-schema-create-directory-dialog"),Hu="relativePath";function Zu(e){let{open:t,onClose:a,parentPath:r,onSuccess:s}=e;const[o,i]=n.useState(""),[l,c]=n.useState(""),[u,m]=g.m3.useCreateDirectoryMutation(),p=()=>{i(""),m.reset()},h=()=>{a(),c(""),p()};return(0,d.jsxs)(Cd.V,{open:t,onClose:h,size:"s",children:[(0,d.jsx)(Cd.V.Header,{caption:cn("schema.tree.dialog.header")}),(0,d.jsxs)("form",{onSubmit:e=>{e.preventDefault();const t=(a=l)?/\s/.test(a)?cn("schema.tree.dialog.whitespace"):"":cn("schema.tree.dialog.empty");var a;i(t),t||(()=>{const e="".concat(r,"/").concat(l);u({database:r,path:e}).unwrap().then((()=>{h(),s(l)}))})()},children:[(0,d.jsxs)(Cd.V.Body,{children:[(0,d.jsxs)("label",{htmlFor:Hu,className:Qu("label"),children:[(0,d.jsx)("span",{className:Qu("description"),children:cn("schema.tree.dialog.description")}),"".concat(r,"/")]}),(0,d.jsx)("div",{className:Qu("input-wrapper"),children:(0,d.jsx)(Id.o,{placeholder:cn("schema.tree.dialog.placeholder"),value:l,onUpdate:e=>{c(e),p()},autoFocus:!0,hasClear:!0,autoComplete:!1,disabled:m.isLoading,validationState:o?"invalid":void 0,id:Hu,errorMessage:o})}),m.isError&&(0,d.jsx)(I.V,{error:m.error,defaultMessage:cn("schema.tree.dialog.invalid")})]}),(0,d.jsx)(Cd.V.Footer,{loading:m.isLoading,textButtonApply:cn("schema.tree.dialog.buttonApply"),textButtonCancel:cn("schema.tree.dialog.buttonCancel"),onClickButtonCancel:h,propsButtonApply:{type:"submit"}})]})]})}function Vu(e){const[t]=(0,y.yu)(Pd.USE_DIRECTORY_OPERATIONS),{rootPath:a,rootName:r,rootType:s,currentPath:o,onActivePathUpdate:i}=e,l=(0,y.zL)(),[c,u]=(0,y.$6)(),[m,p]=n.useState(!1),[h,v]=n.useState(""),[x,b]=n.useState("");n.useEffect((()=>{null!==o&&void 0!==o&&o.startsWith(a)||i(a)}),[o,i,a]);return(0,d.jsxs)(n.Fragment,{children:[(0,d.jsx)(Zu,{onClose:()=>{p(!1)},open:m,parentPath:h,onSuccess:e=>{const t="".concat(h,"/").concat(e);i(t),b(t)}}),(0,d.jsx)(Tu.f,{rootState:{path:a,name:r,type:(0,ue.lZ)(s),collapsed:!1},fetchPath:async e=>{let t;for(;;){const a=l(g.m3.endpoints.getSchema.initiate({path:e},{forceRefetch:!0})),{data:n,originalArgs:r}=await a;if(a.unsubscribe(),(null===r||void 0===r?void 0:r.path)===e){t=null===n||void 0===n?void 0:n[e];break}}if(!t)throw new Error("no describe data about path ".concat(e));const{PathDescription:{Children:a=[]}={}}=t;return a.map((e=>{const{Name:t="",PathType:a,PathSubType:n}=e;return{name:t,type:(0,ue.lZ)(a,n),expandable:!(0,ue.Sb)(a,n)}}))},getActions:Gu(l,{setActivePath:i,setQueryMode:u,showCreateDirectoryDialog:t?e=>{v(e),p(!0)}:void 0}),renderAdditionalNodeElements:Bu(l,{setActivePath:i}),activePath:o,onActivePathUpdate:i,cache:!1,virtualize:!0},x)]})}const Wu=(0,c.cn)("object-summary"),Ju=()=>({triggerExpand:!1,triggerCollapse:!1,collapsed:Boolean(localStorage.getItem(x.Mn))});function Ku(e){var t;let{type:a,subType:r,tenantName:s,path:o,onCollapseSummary:i,onExpandSummary:l,isCollapsed:c}=e;const u=(0,y.zL)(),[m,p]=n.useReducer(cc(x.Mn),void 0,Ju),{summaryTab:v=S.uw.overview}=(0,y.ix)((e=>e.tenant)),b=(0,Ca.TH)(),T=dt().parse(b.search,{ignoreQueryPrefix:!0}),{data:E}=(0,g.hz)({path:o}),C=null===E||void 0===E||null===(t=E.PathDescription)||void 0===t?void 0:t.Self;n.useEffect((()=>{const e=(0,ue.vp)(a);!a||e||Ue.Cc.find((e=>e.id===v))||u((0,w.Tu)(S.uw.overview))}),[u,a,v]);const I=()=>{const e=(0,ue.vp)(a)?[...Ue.Cc,...Ue.c7]:Ue.Cc;return(0,d.jsx)("div",{className:Wu("tabs"),children:(0,d.jsx)(j.m,{size:"l",items:e,activeTab:v,wrapTo:(e,t)=>{let{id:a}=e;const n=(0,N.ax)(N.ZP.tenant,void 0,{...T,name:s,[Ue.XV.summaryTab]:a});return(0,d.jsx)(f.rU,{to:n,className:Wu("tab"),children:t},a)},allowNotSelected:!0})})},P=()=>{switch(v){case S.uw.acl:return(0,d.jsx)(fu,{path:o});case S.uw.schema:return(0,d.jsx)(qe,{type:a,path:o,tenantName:s});default:return(()=>{var e;if(!C)return;const{CreateStep:t,PathType:a,PathSubType:n,PathId:r,PathVersion:s}=C,o=[];o.push({label:cn("summary.type"),value:null===a||void 0===a?void 0:a.replace(/^EPathType/,"")}),n!==Me.mR.EPathSubTypeEmpty&&o.push({label:cn("summary.subtype"),value:null===n||void 0===n?void 0:n.replace(/^EPathSubType/,"")}),o.push({label:cn("summary.id"),value:r}),o.push({label:cn("summary.version"),value:s}),o.push({label:cn("summary.created"),value:(0,R.o0)(t,"")});const{PathDescription:i}=E,l=(0,d.jsx)(dn,{data:i}),c={[Me.gb.EPathTypeInvalid]:void 0,[Me.gb.EPathTypeDir]:void 0,[Me.gb.EPathTypeTable]:()=>{var e;return[{label:cn("summary.partitions"),value:null===i||void 0===i||null===(e=i.TablePartitions)||void 0===e?void 0:e.length}]},[Me.gb.EPathTypeSubDomain]:void 0,[Me.gb.EPathTypeTableIndex]:void 0,[Me.gb.EPathTypeExtSubDomain]:()=>{var e,t;return[{label:cn("summary.paths"),value:null===i||void 0===i||null===(e=i.DomainDescription)||void 0===e?void 0:e.PathsInside},{label:cn("summary.shards"),value:null===i||void 0===i||null===(t=i.DomainDescription)||void 0===t?void 0:t.ShardsInside}]},[Me.gb.EPathTypeColumnStore]:()=>{var e,t;return[{label:cn("summary.partitions"),value:null===i||void 0===i||null===(e=i.ColumnStoreDescription)||void 0===e||null===(t=e.ColumnShards)||void 0===t?void 0:t.length}]},[Me.gb.EPathTypeColumnTable]:()=>{var e,t,a;return[{label:cn("summary.partitions"),value:null===i||void 0===i||null===(e=i.ColumnTableDescription)||void 0===e||null===(t=e.Sharding)||void 0===t||null===(a=t.ColumnShards)||void 0===a?void 0:a.length}]},[Me.gb.EPathTypeCdcStream]:()=>{const{Mode:e,Format:t}=(null===i||void 0===i?void 0:i.CdcStreamDescription)||{};return[{label:cn("summary.mode"),value:null===e||void 0===e?void 0:e.replace(/^ECdcStreamMode/,"")},{label:cn("summary.format"),value:null===t||void 0===t?void 0:t.replace(/^ECdcStreamFormat/,"")}]},[Me.gb.EPathTypePersQueueGroup]:()=>{var e,t,a;const n=null===i||void 0===i?void 0:i.PersQueueGroup,r=null===n||void 0===n||null===(e=n.PQTabletConfig)||void 0===e||null===(t=e.PartitionConfig)||void 0===t?void 0:t.LifetimeSeconds;return[{label:cn("summary.partitions"),value:null===n||void 0===n||null===(a=n.Partitions)||void 0===a?void 0:a.length},{label:cn("summary.retention"),value:r&&(0,R.xh)(r)}]},[Me.gb.EPathTypeExternalTable]:()=>{var e,t;const a=(0,N.vF)({...T,schema:null===i||void 0===i||null===(e=i.ExternalTableDescription)||void 0===e?void 0:e.DataSourcePath}),{SourceType:n,DataSourcePath:r}=(null===i||void 0===i?void 0:i.ExternalTableDescription)||{},s=(null===r||void 0===r||null===(t=r.match(/([^/]*)\/*$/))||void 0===t?void 0:t[1])||"";return[{label:cn("summary.source-type"),value:n},{label:cn("summary.data-source"),value:r&&(0,d.jsx)("span",{title:r,children:(0,d.jsx)(Ia.j,{title:s||"",url:a})})}]},[Me.gb.EPathTypeExternalDataSource]:()=>{var e;return[{label:cn("summary.source-type"),value:null===i||void 0===i||null===(e=i.ExternalDataSourceDescription)||void 0===e?void 0:e.SourceType}]},[Me.gb.EPathTypeView]:void 0,[Me.gb.EPathTypeReplication]:()=>{var e;const t=null===i||void 0===i||null===(e=i.ReplicationDescription)||void 0===e?void 0:e.State;return t?[{label:cn("summary.state"),value:(0,d.jsx)(Ua,{state:t})}]:[]}},u=a&&(null===(e=c[a])||void 0===e?void 0:e.call(c))||[];return o.push(...u),(0,d.jsx)(go.Z,{title:l,info:o.filter((e=>e.value))})})()}},D=()=>{p(oc.triggerCollapse)},A=()=>{p(oc.triggerExpand)},L=()=>{p(oc.clear)},_=()=>{u((0,g.m7)(!0)),u((0,w.Cs)(S.m2.query)),u((0,w.jk)(S._0.newQuery))},O=()=>{const e=(0,ue.vp)(a)&&!(0,ue.dC)(r);return(0,d.jsxs)(n.Fragment,{children:[e&&(0,d.jsx)(Gn.z,{view:"flat-secondary",onClick:_,title:cn("summary.showPreview"),children:(0,d.jsx)(me.J,{data:mu.Z})}),(0,d.jsx)(mc.m,{text:o,view:"flat-secondary",title:cn("summary.copySchemaPath")}),(0,d.jsx)(uc,{onCollapse:D,onExpand:A,isCollapsed:m.collapsed,initialDirection:"bottom"})]})},M=()=>{const{Status:e,Reason:t}=null!==E&&void 0!==E?E:{};let n;return!a&&e&&t&&(n="".concat(e,": ").concat(t)),a?(0,d.jsx)("div",{className:Wu("entity-type"),children:a.replace("EPathType","")}):(0,d.jsx)("div",{className:Wu("entity-type",{error:!0}),children:(0,d.jsx)(mt.J,{content:n,offset:{left:0}})})};return(0,d.jsxs)("div",{className:Wu(),children:[(0,d.jsx)("div",{className:Wu({hidden:c}),children:(0,d.jsxs)(h,{direction:"vertical",defaultSizePaneKey:x.wr,onSplitStartDragAdditional:L,triggerCollapse:m.triggerCollapse,triggerExpand:m.triggerExpand,minSize:[200,52],collapsedSizes:[100,0],children:[(0,d.jsx)(Yu,{tenantName:s,path:o}),(0,d.jsxs)("div",{className:Wu("info"),children:[(0,d.jsxs)("div",{className:Wu("sticky-top"),children:[(0,d.jsxs)("div",{className:Wu("info-header"),children:[(0,d.jsxs)("div",{className:Wu("info-title"),children:[M(),(0,d.jsx)("div",{className:Wu("path-name"),children:o})]}),(0,d.jsx)("div",{className:Wu("info-controls"),children:O()})]}),I()]}),(0,d.jsx)("div",{className:Wu("overview-wrapper"),children:P()})]})]})}),(0,d.jsx)(uc,{onCollapse:i,onExpand:l,isCollapsed:c,initialDirection:"left",className:Wu("action-button")})]})}function Yu(e){var t;let{tenantName:a,path:n}=e;const{data:r={},isLoading:o}=(0,g.hz)({path:a}),l=null===r||void 0===r||null===(t=r.PathDescription)||void 0===t?void 0:t.Self,[,c]=(0,s.useQueryParam)("schema",s.StringParam);return!l&&o?(0,d.jsx)("div",{children:(0,d.jsx)(i.a,{})}):(0,d.jsxs)("div",{className:Wu("tree-wrapper"),children:[(0,d.jsx)("div",{className:Wu("tree-header"),children:cn("summary.navigation")}),(0,d.jsx)("div",{className:Wu("tree"),children:l?(0,d.jsx)(Vu,{rootPath:a,rootName:l.Name||a,rootType:l.PathType,currentPath:n,onActivePathUpdate:c}):null})]})}const Xu=(0,c.cn)("tenant-page"),$u=()=>({triggerExpand:!1,triggerCollapse:!1,collapsed:Boolean(localStorage.getItem(x.sO))});function em(e){var t;const[l,c]=n.useReducer(cc(x.sO),void 0,$u),[{name:u,schema:m}]=(0,s.useQueryParams)({name:s.StringParam,schema:s.StringParam});if(!u)throw new Error("Tenant name is not defined");const p=n.useRef();n.useEffect((()=>{if(p.current!==u){(async()=>{const{registerYQLCompletionItemProvider:e}=await Promise.all([a.e(1551),a.e(8424),a.e(6531)]).then(a.bind(a,16531));e(u)})().catch(console.error),p.current=u}}),[u]);const b=(0,y.zL)();n.useEffect((()=>{b((0,v.J)("tenant",{tenantName:u}))}),[u,b]);const S=null!==m&&void 0!==m?m:u,{data:j,error:f,isLoading:T}=(0,g.hz)({path:S}),{PathType:N,PathSubType:w}=(null===j||void 0===j||null===(t=j.PathDescription)||void 0===t?void 0:t.Self)||{};let E=!1;f&&"object"===typeof f&&"status"in f&&(E=403===f.status);const C=S||cn("page.title");return(0,d.jsxs)("div",{className:Xu(),children:[(0,d.jsx)(r.ql,{defaultTitle:"".concat(C," \u2014 YDB Monitoring"),titleTemplate:"%s \u2014 ".concat(C," \u2014 YDB Monitoring")}),E?(0,d.jsx)(o.J,{}):(0,d.jsxs)(h,{defaultSizePaneKey:x.z4,defaultSizes:[25,75],triggerCollapse:l.triggerCollapse,triggerExpand:l.triggerExpand,minSize:[36,200],onSplitStartDragAdditional:()=>{c(oc.clear)},children:[(0,d.jsx)(Ku,{type:N,subType:w,tenantName:u,path:S,onCollapseSummary:()=>{c(oc.triggerCollapse)},onExpandSummary:()=>{c(oc.triggerExpand)},isCollapsed:l.collapsed}),(0,d.jsx)("div",{className:Xu("main"),children:T?(0,d.jsx)(i.a,{size:"l"}):(0,d.jsx)(uu,{type:N,additionalTenantProps:e.additionalTenantProps,additionalNodesProps:e.additionalNodesProps,tenantName:u,path:S})})]})]})}},60749:(e,t,a)=>{"use strict";a.d(t,{K:()=>n});const n="s-expression"},62729:(e,t,a)=>{"use strict";a.d(t,{EQ:()=>d,JX:()=>l,Oo:()=>n,Ot:()=>o,S8:()=>u,j:()=>s,t6:()=>i,vy:()=>r,yJ:()=>c});const n="yql",r=["String","Bool","Int32","Uint32","Int64","Uint64","Float","Double","Void","Yson","Utf8","Unit","Json","Date","Datetime","Timestamp","Interval","Null","Int8","Uint8","Int16","Uint16","TzDate","TzDatetime","TzTimestamp","Uuid","EmptyList","EmptyDict","JsonDocument","DyNumber"],s=["CAST","COALESCE","LENGTH","LEN","SUBSTRING","FIND","RFIND","StartsWith","EndsWith","IF","NANVL","Random","RandomNumber","RandomUuid","CurrentUtcDate","CurrentUtcDatetime","CurrentUtcTimestamp","CurrentTzDate","CurrentTzDatetime","CurrentTzTimestamp","AddTimezone","RemoveTimezone","MAX_OF","MIN_OF","GREATEST","LEAST","AsTuple","AsStruct","AsList","AsDict","AsSet","AsListStrict","AsDictStrict","AsSetStrict","Variant","AsVariant","Enum","AsEnum","AsTagged","Untag","TableRow","JoinTableRow","Ensure","EnsureType","EnsureConvertibleTo","ToBytes","FromBytes","ByteAt","TestBit","ClearBit","SetBit","FlipBit","Abs","Just","Unwrap","Nothing","Callable","StaticMap","StaticZip","ListCreate","AsListStrict","ListLength","ListHasItems","ListCollect","ListSort","ListSortAsc","ListSortDesc","ListExtend","ListExtendStrict","ListUnionAll","ListZip","ListZipAll","ListEnumerate","ListReverse","ListSkip","ListTake","ListIndexOf","ListMap","ListFilter","ListFlatMap","ListNotNull","ListFlatten","ListUniq","ListAny","ListAll","ListHas","ListHead","ListLast","ListMin","ListMax","ListSum","ListAvg","ListFold","ListFold1","ListFoldMap","ListFold1Map","ListFromRange","ListReplicate","ListConcat","ListExtract","ListTakeWhile","ListSkipWhile","ListAggregate","ToDict","ToMultiDict","ToSet","DictCreate","SetCreate","DictLength","DictHasItems","DictItems","DictKeys","DictPayloads","DictLookup","DictContains","DictAggregate","SetIsDisjoint","SetIntersection","SetIncludes","SetUnion","SetDifference","SetSymmetricDifference","TryMember","ExpandStruct","AddMember","RemoveMember","ForceRemoveMember","ChooseMembers","RemoveMembers","ForceRemoveMembers","CombineMembers","FlattenMembers","StructMembers","RenameMembers","ForceRenameMembers","GatherMembers","SpreadMembers","ForceSpreadMembers","FormatType","ParseType","TypeOf","InstanceOf","DataType","OptionalType","ListType","StreamType","DictType","TupleType","StructType","VariantType","ResourceType","CallableType","GenericType","UnitType","VoidType","OptionalItemType","ListItemType","StreamItemType","DictKeyType","DictPayloadType","TupleElementType","StructMemberType","CallableResultType","CallableArgumentType","VariantUnderlyingType","JSON_EXISTS","JSON_VALUE","JSON_QUERY"],o=["COUNT","MIN","MAX","SUM","AVG","COUNT_IF","SUM_IF","AVG_IF","SOME","CountDistinctEstimate","HyperLogLog","AGGREGATE_LIST","AGGREGATE_LIST_DISTINCT","AGG_LIST","AGG_LIST_DISTINCT","MAX_BY","MIN_BY","AGGREGATE_BY","MULTI_AGGREGATE_BY","TOP","BOTTOM","TOP_BY","BOTTOM_BY","TOPFREQ","MODE","STDDEV","VARIANCE","CORRELATION","COVARIANCE","PERCENTILE","MEDIAN","HISTOGRAM","LogarithmicHistogram","LogHistogram","LinearHistogram","BOOL_AND","BOOL_OR","BOOL_XOR","BIT_AND","BIT_OR","BIT_XOR","SessionStart"],i=Object.entries({DateTime:["EndOfMonth","Format","FromMicroseconds","FromMilliseconds","FromSeconds","GetDayOfMonth","GetDayOfWeek","GetDayOfWeekName","GetDayOfYear","GetHour","GetMicrosecondOfSecond","GetMillisecondOfSecond","GetMinute","GetMonth","GetMonthName","GetSecond","GetTimezoneId","GetTimezoneName","GetWeekOfYear","GetWeekOfYearIso8601","GetYear","IntervalFromDays","IntervalFromHours","IntervalFromMicroseconds","IntervalFromMilliseconds","IntervalFromMinutes","IntervalFromSeconds","MakeDate","MakeDatetime","MakeTimestamp","MakeTzDate","MakeTzDatetime","MakeTzTimestamp","Parse","ParseHttp","ParseIso8601","ParseRfc822","ParseX509","ShiftMonths","ShiftQuarters","ShiftYears","Split","StartOf","StartOfDay","StartOfMonth","StartOfQuarter","StartOfWeek","StartOfYear","TimeOfDay","ToDays","ToHours","ToMicroseconds","ToMilliseconds","ToMinutes","ToSeconds","Update"],Dsv:["Parse","ReadRecord","Serialize"],String:["AsciiToLower","AsciiToTitle","AsciiToUpper","Base32Decode","Base32Encode","Base32StrictDecode","Base64Decode","Base64Encode","Base64EncodeUrl","Base64StrictDecode","Bin","BinText","CgiEscape","CgiUnescape","Collapse","CollapseText","Contains","DecodeHtml","EncodeHtml","EndsWith","EndsWithIgnoreCase","EscapeC","FromByteList","HasPrefix","HasPrefixIgnoreCase","HasSuffix","HasSuffixIgnoreCase","Hex","HexDecode","HexEncode","HexText","HumanReadableBytes","HumanReadableDuration","HumanReadableQuantity","IsAscii","IsAsciiAlnum","IsAsciiAlpha","IsAsciiDigit","IsAsciiHex","IsAsciiLower","IsAsciiSpace","IsAsciiUpper","JoinFromList","LeftPad","LevensteinDistance","Prec","RemoveAll","RemoveFirst","RemoveLast","ReplaceAll","ReplaceFirst","ReplaceLast","RightPad","SBin","SHex","SplitToList","StartsWith","StartsWithIgnoreCase","Strip","ToByteList","UnescapeC"],Unicode:["Find","Fold","FromCodePointList","GetLength","IsAlnum","IsAlpha","IsAscii","IsDigit","IsHex","IsLower","IsSpace","IsUnicodeSet","IsUpper","IsUtf","JoinFromList","LevensteinDistance","Normalize","NormalizeNFC","NormalizeNFD","NormalizeNFKC","NormalizeNFKD","RFind","RemoveAll","RemoveFirst","RemoveLast","ReplaceAll","ReplaceFirst","ReplaceLast","Reverse","SplitToList","Strip","Substring","ToCodePointList","ToLower","ToTitle","ToUint64","ToUpper","Translit","TryToUint64"],Url:["BuildQueryString","CanBePunycodeHostName","CutQueryStringAndFragment","CutScheme","CutWWW","CutWWW2","Decode","Encode","ForceHostNameToPunycode","ForcePunycodeToHostName","GetCGIParam","GetDomain","GetDomainLevel","GetFragment","GetHost","GetHostPort","GetOwner","GetPath","GetPort","GetScheme","GetSchemeHost","GetSchemeHostPort","GetSignificantDomain","GetTLD","GetTail","HostNameToPunycode","IsAllowedByRobotsTxt","IsKnownTLD","IsWellKnownTLD","Normalize","NormalizeWithDefaultHttpScheme","Parse","PunycodeToHostName","QueryStringToDict","QueryStringToList"],Yson:["Attributes","Contains","ConvertTo","ConvertToBool","ConvertToBoolDict","ConvertToBoolList","ConvertToDict","ConvertToDouble","ConvertToDoubleDict","ConvertToDoubleList","ConvertToInt64","ConvertToInt64Dict","ConvertToInt64List","ConvertToList","ConvertToString","ConvertToStringDict","ConvertToStringList","ConvertToUint64","ConvertToUint64Dict","ConvertToUint64List","Equals","From","GetHash","GetLength","IsBool","IsDict","IsDouble","IsEntity","IsInt64","IsList","IsString","IsUint64","Lookup","LookupBool","LookupDict","LookupDouble","LookupInt64","LookupList","LookupString","LookupUint64","Options","Parse","ParseJson","ParseJsonDecodeUtf8","Serialize","SerializeJson","SerializePretty","SerializeText","WithAttributes","YPath","YPathBool","YPathDict","YPathDouble","YPathInt64","YPathList","YPathString","YPathUint64"],HyperLogLog:["AddValue","Create","Deserialize","GetResult","Merge","Serialize"],Hyperscan:["BacktrackingGrep","BacktrackingMatch","Capture","Grep","Match","MultiGrep","MultiMatch","Replace"],Ip:["ConvertToIPv6","FromString","GetSubnet","GetSubnetByMask","IsEmbeddedIPv4","IsIPv4","IsIPv6","SubnetFromString","SubnetMatch","SubnetToString","ToFixedIPv6String","ToString"],Json:["BoolAsJsonNode","CompilePath","DoubleAsJsonNode","JsonAsJsonNode","JsonDocumentSqlExists","JsonDocumentSqlQuery","JsonDocumentSqlQueryConditionalWrap","JsonDocumentSqlQueryWrap","JsonDocumentSqlTryExists","JsonDocumentSqlValueBool","JsonDocumentSqlValueConvertToUtf8","JsonDocumentSqlValueInt64","JsonDocumentSqlValueNumber","JsonDocumentSqlValueUtf8","Parse","Serialize","SerializeToJsonDocument","SqlExists","SqlQuery","SqlQueryConditionalWrap","SqlQueryWrap","SqlTryExists","SqlValueBool","SqlValueConvertToUtf8","SqlValueInt64","SqlValueNumber","SqlValueUtf8","Utf8AsJsonNode"],Math:["Abs","Acos","Asin","Asinh","Atan","Atan2","Cbrt","Ceil","Cos","Cosh","E","Eps","Erf","ErfInv","ErfcInv","Exp","Exp2","Fabs","Floor","Fmod","FuzzyEquals","Hypot","IsFinite","IsInf","IsNaN","Ldexp","Lgamma","Log","Log10","Log2","Mod","NearbyInt","Pi","Pow","Rem","Remainder","Rint","Round","RoundDownward","RoundToNearest","RoundTowardZero","RoundUpward","Sigmoid","Sin","Sinh","Sqrt","Tan","Tanh","Tgamma","Trunc"],Pire:["Capture","Grep","Match","MultiGrep","MultiMatch","Replace"],Re2:["Capture","Count","Escape","FindAndConsume","Grep","Match","Options","PatternFromLike","Replace"],Re2posix:["Capture","Count","Escape","FindAndConsume","Grep","Match","Options","PatternFromLike","Replace"],Digest:["Argon2","Blake2B","CityHash","CityHash128","Crc32c","Crc64","FarmHashFingerprint","FarmHashFingerprint128","FarmHashFingerprint2","FarmHashFingerprint32","FarmHashFingerprint64","Fnv32","Fnv64","HighwayHash","IntHash64","Md5HalfMix","Md5Hex","Md5Raw","MurMurHash","MurMurHash2A","MurMurHash2A32","MurMurHash32","NumericHash","Sha1","Sha256","SipHash","SuperFastHash","XXH3","XXH3_128"],Histogram:["CalcLowerBound","CalcLowerBoundSafe","CalcUpperBound","CalcUpperBoundSafe","GetSumAboveBound","GetSumBelowBound","GetSumInRange","Normalize","Print","ToCumulativeDistributionFunction"]}).reduce(((e,t)=>{let[a,n]=t;const r=n.map((e=>"".concat(a,"::").concat(e)));return e.concat(r)}),[]),l=["ROW_NUMBER","LAG","LEAD","FIRST_VALUE","LAST_VALUE","RANK","DENSE_RANK","SessionState"],c=[],d=["TablePathPrefix","Warning"],u={table:["AUTO_PARTITIONING_BY_SIZE","AUTO_PARTITIONING_PARTITION_SIZE_MB","AUTO_PARTITIONING_BY_LOAD","AUTO_PARTITIONING_MIN_PARTITIONS_COUNT","AUTO_PARTITIONING_MAX_PARTITIONS_COUNT","UNIFORM_PARTITIONS","READ_REPLICAS_SETTINGS","TTL","KEY_BLOOM_FILTER","STORE"],view:["security_invoker"],topic:["min_active_partitions","partition_count_limit","retention_period","retention_storage_mb","partition_write_speed_bytes_per_second","partition_write_burst_bytes","metering_mode"],object:[],user:[],group:[],externalDataSource:[],externalTable:[],tableStore:[],replication:["ENDPOINT","DATABASE","USER","PASSWORD"],tableIndex:[],topicConsumer:["important","read_from"]}},24960:()=>{},26759:()=>{},56272:()=>{}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/163.eea01641.chunk.js b/ydb/core/viewer/monitoring/static/js/163.eea01641.chunk.js deleted file mode 100644 index 758745f69571..000000000000 --- a/ydb/core/viewer/monitoring/static/js/163.eea01641.chunk.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[163],{51343:function(e,d,_){e.exports=function(e){"use strict";function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var _=d(e),s={name:"oc-lnc",weekdays:"dimenge_diluns_dimars_dim\xe8cres_dij\xf2us_divendres_dissabte".split("_"),weekdaysShort:"Dg_Dl_Dm_Dc_Dj_Dv_Ds".split("_"),weekdaysMin:"dg_dl_dm_dc_dj_dv_ds".split("_"),months:"geni\xe8r_febri\xe8r_mar\xe7_abrial_mai_junh_julhet_agost_setembre_oct\xf2bre_novembre_decembre".split("_"),monthsShort:"gen_feb_mar\xe7_abr_mai_junh_julh_ago_set_oct_nov_dec".split("_"),weekStart:1,formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",LLL:"D MMMM [de] YYYY [a] H:mm",LLLL:"dddd D MMMM [de] YYYY [a] H:mm"},relativeTime:{future:"d'aqu\xed %s",past:"fa %s",s:"unas segondas",m:"una minuta",mm:"%d minutas",h:"una ora",hh:"%d oras",d:"un jorn",dd:"%d jorns",M:"un mes",MM:"%d meses",y:"un an",yy:"%d ans"},ordinal:function(e){return e+"\xba"}};return _.default.locale(s,null,!0),s}(_(22877))}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/2180.adcde51c.chunk.js b/ydb/core/viewer/monitoring/static/js/2180.adcde51c.chunk.js new file mode 100644 index 000000000000..7c909219971b --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/2180.adcde51c.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[2180],{99683:(e,t,r)=>{r.d(t,{l:()=>o});var n=r(68330),s=r(24362),a=r(75859);const l=(0,s.cn)("ydb-cell-with-popover");function o(e){let{children:t,className:r,wrapperClassName:s,...o}=e;return(0,a.jsx)("div",{className:l(null,s),children:(0,a.jsx)(n.J,{className:l("popover",r),...o,children:t})})}},79023:(e,t,r)=>{r.d(t,{u:()=>y});var n,s,a,l,o,i,d,c,u,m,h,p=r(88776),g=r(24362),v=r(68963);function f(){return f=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{image:t,title:r,description:n,actions:s,size:a="m",position:l="center"}=e;return(0,x.jsx)("div",{className:N({size:a}),children:(0,x.jsxs)("div",{className:N("wrapper",{size:a,position:l}),children:[(0,x.jsx)("div",{className:N("image"),children:t||(0,x.jsx)(p.J,{data:w,width:b[a],height:b[a]})}),(0,x.jsx)("div",{className:N("title",{size:a}),children:r}),(0,x.jsx)("div",{className:N("description"),children:n}),(0,x.jsx)("div",{className:N("actions"),children:s})]})})}},49201:(e,t,r)=>{r.d(t,{C:()=>l});var n=r(14979);const s=(0,r(30817).wZ)("ydb-entities-count",{ru:{of:"\u0438\u0437"},en:{of:"of"}});var a=r(75859);const l=e=>{let{total:t,current:r,label:l,loading:o,className:i}=e,d="";return l&&(d+="".concat(l,": ")),o?d+="...":(d+="".concat(r),t&&Number(t)!==Number(r)&&(d+=" ".concat(s("of")," ").concat(t))),(0,a.jsx)(n._,{theme:"info",size:"m",className:i,children:d})}},82073:(e,t,r)=>{r.d(t,{J:()=>o});var n=r(79023),s=r(56350),a=r(68746),l=r(75859);const o=e=>{let{title:t,description:r,...o}=e;return(0,l.jsx)(n.u,{image:(0,l.jsx)(s.Q,{name:"403"}),title:t||(0,a.Z)("403.title"),description:r||(0,a.Z)("403.description"),...o})}},86969:(e,t,r)=>{r.d(t,{J:()=>n.J});var n=r(82073)},8747:(e,t,r)=>{r.d(t,{V:()=>a});var n=r(68746),s=r(75859);const a=e=>{let{error:t,className:r,defaultMessage:a=(0,n.Z)("responseError.defaultMessage")}=e,l="";return t&&"string"===typeof t&&(l=t),t&&"object"===typeof t&&("data"in t&&"string"===typeof t.data?l=t.data:"statusText"in t&&"string"===typeof t.statusText?l=t.statusText:"message"in t&&"string"===typeof t.message&&(l=t.message)),(0,s.jsx)("div",{className:"error ".concat(r),children:l||a})}},26688:(e,t,r)=>{r.d(t,{V:()=>n.V});var n=r(8747)},68746:(e,t,r)=>{r.d(t,{Z:()=>l});var n=r(30817);const s=JSON.parse('{"403.title":"Access denied","403.description":"You don\u2019t have the necessary roles to view this page.","responseError.defaultMessage":"Response error"}'),a=JSON.parse('{"403.title":"\u0414\u043e\u0441\u0442\u0443\u043f \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d","403.description":"\u0423 \u0432\u0430\u0441 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u0430\u0432 \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b.","responseError.defaultMessage":"\u041e\u0448\u0438\u0431\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430"}'),l=(0,n.wZ)("ydb-errors-access-denied",{ru:a,en:s})},16670:(e,t,r)=>{r.d(t,{a:()=>o});var n=r(2982),s=r(24362),a=r(75859);const l=(0,s.cn)("ydb-loader"),o=e=>{let{size:t="m",className:r}=e;return(0,a.jsx)("div",{className:l(null,r),children:(0,a.jsx)(n.a,{size:t})})}},65890:(e,t,r)=>{r.d(t,{k:()=>v});var n=r(39683),s=r(17176),a=r(88776),l=r(10502),o=r(92398),i=r(24362),d=r(48169),c=r(51688),u=r(99683),m=r(69214),h=r(27506),p=r(75859);const g=(0,i.cn)("ydb-node-host-wrapper"),v=e=>{let{node:t,getNodeRef:r}=e;if(!t.Host)return(0,p.jsx)("span",{children:"\u2014"});const i=!(0,c.TA)(t);let v;r?v=r(t)+"internal":t.NodeId&&(v=(0,d.wq)(t.NodeId)+"internal");const f=i?(0,o.a3)(t.NodeId,{tenantName:t.TenantName}):void 0,w=v?(0,p.jsx)(s.z,{size:"s",href:v,className:g("external-button"),target:"_blank",children:(0,p.jsx)(a.J,{data:n.Z})}):null;return(0,p.jsx)(u.l,{disabled:!i,content:(0,p.jsx)(h.bP,{data:t}),placement:["top","bottom"],behavior:l.x.Immediate,children:(0,p.jsx)(m.A,{name:t.Host,status:t.SystemState,path:f,hasClipboardButton:!0,additionalControls:w})})}},35113:(e,t,r)=>{r.d(t,{WQ:()=>_});var n=r(68963),s=r(5922),a=r(26688),l=r(47101),o=r(56711);const i="left",d=-1,c=40;const u=(0,r(24362).cn)("ydb-paginated-table");var m=r(75859);const h=e=>{let{children:t,className:r,height:n,width:s,align:a=i}=e;return(0,m.jsx)("td",{className:u("row-cell",{align:a},r),style:{height:"".concat(n,"px"),width:"".concat(s,"px"),maxWidth:"".concat(s,"px")},children:t})},p=e=>{let{index:t,columns:r,height:n}=e;return(0,m.jsx)("tr",{className:u("row"),children:r.map((e=>(0,m.jsx)(h,{height:n,width:e.width,align:e.align,className:e.className,children:(0,m.jsx)(o.O,{style:{width:"80%",height:"50%"}})},"".concat(e.name).concat(t))))})},g=e=>{let{row:t,index:r,columns:n,getRowClassName:s,height:a}=e;const l=null===s||void 0===s?void 0:s(t);return(0,m.jsx)("tr",{className:u("row",l),children:n.map((e=>(0,m.jsx)(h,{height:a,width:e.width,align:e.align,className:e.className,children:e.render({row:t,index:r})},"".concat(e.name).concat(r))))})},v=e=>{let{columns:t,children:r}=e;return(0,m.jsx)("tr",{className:u("row",{empty:!0}),children:(0,m.jsx)("td",{colSpan:t.length,className:u("td"),children:r})})},f=(0,n.memo)((function(e){var t;let{id:r,chunkSize:a,rowHeight:l,columns:o,chunkData:i,observer:d,getRowClassName:c}=e;const u=n.useRef(null);n.useEffect((()=>{const e=u.current;return e&&d.observe(e),()=>{e&&d.unobserve(e)}}),[d]);const h=null===i||void 0===i||null===(t=i.data)||void 0===t?void 0:t.length,v=h?h*l:a*l;return(0,m.jsx)("tbody",{ref:u,id:r.toString(),style:{height:"".concat(v,"px")},children:(()=>{var e;return i&&i.active?i.loading||i.error?(0,s.c)(a).map((e=>(0,m.jsx)(p,{columns:o,height:l,index:e},e))):null===(e=i.data)||void 0===e?void 0:e.map(((e,t)=>(0,m.jsx)(g,{index:t,row:e,columns:o,height:l,getRowClassName:c},t))):null})()})}));function w(e){let{minWidth:t,maxWidth:r,getCurrentColumnWidth:s,onResize:a}=e;const l=n.useRef(null),[o,i]=n.useState(!1);return n.useEffect((()=>{const e=l.current;if(!e)return;let n,o,d;const c=function(e){let t,r=null;return function(){for(var n=arguments.length,s=new Array(n),a=0;a{e(...t),r=null})))}}((e=>{if(x(e),"number"!==typeof n||"number"!==typeof o)return;const s=e.clientX-n,l=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:40,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1/0;return Math.max(t,Math.min(e,r))}(o+s,t,r);l!==d&&(d=l,null===a||void 0===a||a(d))})),u=e=>{x(e),void 0!==d&&(null===a||void 0===a||a(d)),i(!1),n=void 0,document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",u)},m=e=>{o=s(),x(e),n=e.clientX,i(!0),document.addEventListener("mousemove",c),document.addEventListener("mouseup",u)};return e.addEventListener("mousedown",m),()=>{e.removeEventListener("mousedown",m),document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",u)}}),[a,t,r,s]),(0,m.jsx)("span",{ref:l,className:u("resize-handler",{resizing:o}),onClick:e=>x(e)})}function x(e){e.preventDefault(),e.stopPropagation()}const N=e=>{let{order:t}=e;return(0,m.jsx)("svg",{className:u("sort-icon",{desc:-1===t}),viewBox:"0 0 10 6",width:"10",height:"6",children:(0,m.jsx)("path",{fill:"currentColor",d:"M0 5h10l-5 -5z"})})},b=e=>{let{sortOrder:t,sortable:r,defaultSortOrder:n}=e;return r?(0,m.jsx)("span",{className:u("sort-icon-container",{shadow:!t}),children:(0,m.jsx)(N,{order:t||n})}):null},y=e=>{var t;let{column:r,resizeable:s,sortOrder:a,defaultSortOrder:l,onSort:o,rowHeight:i,onCellMount:d,onCellUnMount:c,onColumnsResize:h}=e;const p=n.useRef(null);n.useEffect((()=>{const e=p.current;return e&&(null===d||void 0===d||d(e)),()=>{e&&(null===c||void 0===c||c(e))}}),[d,c]);const g=n.useCallback((()=>{var e;return null===(e=p.current)||void 0===e?void 0:e.getBoundingClientRect().width}),[]),v=n.useCallback((e=>{null===h||void 0===h||h(r.name,e)}),[h,r.name]),f=null!==(t=r.header)&&void 0!==t?t:r.name;return(0,m.jsx)("th",{children:(0,m.jsxs)("div",{ref:p,className:u("head-cell-wrapper"),style:{height:"".concat(i,"px"),width:"".concat(r.width,"px")},children:[(0,m.jsxs)("div",{className:u("head-cell",{align:r.align,sortable:r.sortable},r.className),onClick:()=>{r.sortable&&(null===o||void 0===o||o(r.name))},children:[(0,m.jsx)("div",{className:u("head-cell-content"),children:f}),(0,m.jsx)(b,{sortOrder:a,sortable:r.sortable,defaultSortOrder:l})]}),s?(0,m.jsx)(w,{maxWidth:r.resizeMaxWidth,minWidth:r.resizeMinWidth,getCurrentColumnWidth:g,onResize:v}):null]})})},j=e=>{let{columns:t,onSort:r,onColumnsResize:s,defaultSortOrder:a=d,rowHeight:l=c}=e;const[o,i]=n.useState({}),h=e=>{let t={};if(e===o.columnId){if(o.sortOrder&&o.sortOrder!==a)return i(t),void(null===r||void 0===r||r(t));t={sortOrder:1===o.sortOrder?-1:1,columnId:e}}else t={sortOrder:a,columnId:e};null===r||void 0===r||r(t),i(t)};return(0,m.jsxs)(n.Fragment,{children:[(0,m.jsx)("colgroup",{children:t.map((e=>(0,m.jsx)("col",{style:{width:"".concat(e.width,"px")}},e.name)))}),(0,m.jsx)("thead",{className:u("head"),children:(0,m.jsx)("tr",{children:t.map((e=>{var t;const r=o.columnId===e.name?o.sortOrder:void 0,n=s&&(null===(t=e.resizeable)||void 0===t||t);return(0,m.jsx)(y,{column:e,resizeable:n,sortOrder:r,defaultSortOrder:a,onSort:h,rowHeight:l,onColumnsResize:s},e.name)}))})})]})};var E=r(30817);const S=JSON.parse('{"empty":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445"}'),C=(0,E.wZ)("ydb-paginated-table",{ru:S,en:{empty:"No data"}}),k="infiniteTable/INIT_CHUNK",O="infiniteTable/REMOVE_CHUNK",I="infiniteTable/SET_CHUNK_LOADING",T="infiniteTable/SET_CHUNK_DATA",z="infiniteTable/SET_CHUNK_ERROR",U="infiniteTable/RESET_CHUNKS",D=e=>({type:k,data:{id:e}}),G=e=>{let{limit:t,fetchData:r,columns:o,getRowClassName:i,rowHeight:d=c,parentContainer:h,initialSortParams:p,onColumnsResize:g,renderControls:w,renderEmptyDataMessage:x,renderErrorMessage:N,dependencyArray:b}=e;const y=n.useRef(!1),E=n.useRef(null),[S,G]=n.useReducer(((e,t)=>{switch(t.type){case T:{const{id:r,data:n}=t.data;return{...e,[r]:{loading:!1,wasLoaded:!0,active:!0,data:n}}}case z:{const{id:r,error:n}=t.data;return{...e,[r]:{loading:!1,wasLoaded:!0,active:!0,error:n}}}case k:{const{id:r}=t.data;return{...e,[r]:{loading:!1,wasLoaded:!1,active:!0}}}case I:{const{id:r}=t.data;return{...e,[r]:{loading:!0,wasLoaded:!1,active:!0}}}case O:{const{id:r}=t.data,n={...e};return delete n[r],n}case U:return{};default:return e}}),{}),[R,_]=n.useState(p),[P,A]=n.useState(t),[M,F]=n.useState(0),[L,Z]=n.useState(),V=n.useRef({}),K=n.useCallback((async e=>{G((e=>({type:I,data:{id:e}}))(e));const n=setTimeout((async()=>{const n=Number(e)*t;try{const s=await r(t,n,R),{data:a,total:l,found:o}=s;A(l),F(o),y.current=!0,G(((e,t)=>({type:T,data:{id:e,data:t}}))(e,a))}catch(s){if(null!==s&&void 0!==s&&s.isCancelled)return;G(((e,t)=>({type:z,data:{id:e,error:t}}))(e,s)),Z(s)}}),200);if(V.current[e]){const t=V.current[e];window.clearTimeout(t)}V.current[e]=n}),[r,t,R]),W=n.useCallback((e=>{G(D(e))}),[]),H=n.useCallback((e=>{if(G((e=>({type:O,data:{id:e}}))(e)),V.current[e]){const t=V.current[e];window.clearTimeout(t),delete V.current[e]}}),[]);n.useEffect((()=>()=>{Object.values(V.current).forEach((e=>{window.clearTimeout(e)})),V.current={}}),[]),n.useEffect((()=>{for(const e of Object.keys(S)){const t=S[Number(e)];null===t||void 0===t||!t.active||null!==t&&void 0!==t&&t.loading||null!==t&&void 0!==t&&t.wasLoaded||K(e)}}),[K,S]),n.useEffect((()=>{var e;(A(t),F(0),Z(void 0),G({type:U}),y.current=!1,h)?h.scrollTo(0,0):null===(e=E.current)||void 0===e||e.scrollTo(0,0);G(D("0"))}),[b,t,h]);const J=e=>{_(e),(()=>{for(const t of Object.keys(S)){var e;null!==(e=S[Number(t)])&&void 0!==e&&e.active&&G(D(t))}})()},Y=(e=>{let{onEntry:t,onLeave:r,parentContainer:s}=e;const a=n.useRef();return n.useEffect((()=>(a.current=new IntersectionObserver((e=>{e.forEach((e=>{e.isIntersecting?t(e.target.id):r(e.target.id)}))}),{root:s,rootMargin:"100%"}),()=>{var e;null===(e=a.current)||void 0===e||e.disconnect(),a.current=void 0})),[s,t,r]),a.current})({onEntry:W,onLeave:H,parentContainer:h}),Q=M||t,B=Math.ceil(Q/t),q=()=>y.current&&0===M?(0,m.jsx)("tbody",{children:(0,m.jsx)(v,{columns:o,children:x?x():C("empty")})}):!y.current&&L?(0,m.jsx)("tbody",{children:(0,m.jsx)(v,{columns:o,children:N?N(L):(0,m.jsx)(a.V,{error:L})})}):Y?(0,s.c)(B).map((e=>{const r=S[e];return(0,m.jsx)(f,{observer:Y,id:e,chunkSize:t,rowHeight:d,columns:o,chunkData:r,getRowClassName:i},e)})):null,X=()=>(0,m.jsxs)("table",{className:u("table"),children:[(0,m.jsx)(j,{columns:o,onSort:J,onColumnsResize:g}),q()]});return(0,m.jsx)("div",{ref:E,className:u(null),children:w?(0,m.jsxs)(l.l,{children:[(0,m.jsx)(l.l.Controls,{children:w({inited:y.current,totalEntities:P,foundEntities:M})}),(0,m.jsx)(l.l.Table,{children:X()})]}):X()})};var R=r(89712);function _(e){let{columnsWidthLSKey:t,columns:r,...n}=e;const[s,a]=(0,R.M)(t),l=function(e,t){return e.map((e=>{var r;return{...e,width:null!==(r=t[e.name])&&void 0!==r?r:e.width}}))}(r,s);return(0,m.jsx)(G,{columns:l,onColumnsResize:a,...n})}},2098:(e,t,r)=>{r.d(t,{G:()=>d});var n=r(2639),s=r(19812),a=r(24362),l=r(89712),o=r(75859);const i=(0,a.cn)("ydb-resizeable-data-table");function d(e){let{columnsWidthLSKey:t,columns:r,settings:a,wrapperClassName:d,...c}=e;const[u,m]=(0,l.M)(t),h=(0,n.B)(r,u),p={...a,defaultResizeable:!0};return(0,o.jsx)("div",{className:i(null,d),children:(0,o.jsx)(s.ZP,{theme:"yandex-cloud",columns:h,onResize:m,settings:p,...c})})}},30629:(e,t,r)=>{r.d(t,{o:()=>i});var n=r(68963),s=r(77264),a=r(24362),l=r(75859);const o=(0,a.cn)("ydb-search"),i=e=>{let{onChange:t,value:r="",className:a,debounce:i=200,placeholder:d}=e;const[c,u]=n.useState(r),m=n.useRef();n.useEffect((()=>{u((e=>e!==r?r:e))}),[r]);return(0,l.jsx)(s.o,{hasClear:!0,autoFocus:!0,className:o(null,a),placeholder:d,value:c,onUpdate:e=>{u(e),window.clearTimeout(m.current),m.current=window.setTimeout((()=>{null===t||void 0===t||t(e)}),i)}})}},22692:(e,t,r)=>{r.d(t,{h:()=>o});var n=r(56711),s=r(24362),a=r(75859);const l=(0,s.cn)("table-skeleton"),o=e=>{let{rows:t=2,className:r}=e;return(0,a.jsxs)("div",{className:l(null,r),children:[(0,a.jsxs)("div",{className:l("row"),children:[(0,a.jsx)(n.O,{className:l("col-1")}),(0,a.jsx)(n.O,{className:l("col-2")}),(0,a.jsx)(n.O,{className:l("col-3")}),(0,a.jsx)(n.O,{className:l("col-4")}),(0,a.jsx)(n.O,{className:l("col-5")})]}),[...new Array(t)].map(((e,t)=>(0,a.jsx)("div",{className:l("row"),children:(0,a.jsx)(n.O,{className:l("col-full")})},"skeleton-row-".concat(t))))]})}},47101:(e,t,r)=>{r.d(t,{l:()=>o});var n=r(24362),s=r(22692),a=r(75859);const l=(0,n.cn)("ydb-table-with-controls-layout"),o=e=>{let{children:t,className:r}=e;return(0,a.jsx)("div",{className:l(null,r),children:t})};o.Controls=function(e){let{children:t,className:r}=e;return(0,a.jsx)("div",{className:l("controls-wrapper"),children:(0,a.jsx)("div",{className:l("controls",r),children:t})})},o.Table=function(e){let{children:t,loading:r,className:n}=e;return r?(0,a.jsx)(s.h,{className:l("loader")}):(0,a.jsx)("div",{className:l("table",n),children:t})}},43989:(e,t,r)=>{r.d(t,{X:()=>l});var n=r(79734),s=r(51688),a=r(75859);const l=e=>{let{value:t,onChange:r,className:l}=e;return(0,a.jsxs)(n.E,{value:t,onUpdate:r,className:l,children:[(0,a.jsx)(n.E.Option,{value:s.Uu.All,children:s.qU[s.Uu.All]}),(0,a.jsx)(n.E.Option,{value:s.Uu.SmallUptime,children:s.qU[s.Uu.SmallUptime]})]})}},80816:(e,t,r)=>{r.d(t,{a:()=>o});var n=r(14979),s=r(24362),a=r(75859);const l=(0,s.cn)("ydb-usage-label");function o(e){let{value:t,overloadThreshold:r=90,theme:s,...o}=e;return(0,a.jsxs)(n._,{theme:s,className:l({overload:Number(t)>=r}),...o,children:[t||0,"%"]})}},92076:(e,t,r)=>{r.d(t,{HI:()=>Q,Ty:()=>E,k8:()=>B,mk:()=>Y});var n=r(68963),s=r(71549),a=r(19812),l=r(10502),o=r(14979),i=r(68330),d=r(88776),c=r(99683),u=r(69214),m=r(80816),h=r(79255),p=r(95829),g=r(75850),v=r(24362),f=r(4119),w=r(15106),x=r(47651),N=r(10703),b=r(43817),y=(r(5384),r(75859));const j=(0,v.cn)("global-storage-groups"),E="storageGroupsColumnsWidth",S="MediaType",C="Erasure",k="GroupId",O="Used",I="Limit",T="Usage",z="UsedSpaceFlag",U="Read",D="Write",G="VDisks",R="Degraded",_={name:"PoolName",header:"Pool Name",width:250,render:e=>{var t;let{row:r}=e;const n=null===(t=r.PoolName)||void 0===t?void 0:t.split("/");return n&&(0,y.jsx)(c.l,{wrapperClassName:j("pool-name-wrapper"),content:r.PoolName,placement:["right"],behavior:l.x.Immediate,children:n[n.length-1]})},align:a.ZP.LEFT},P={name:S,header:"Type",width:100,resizeMinWidth:100,align:a.ZP.LEFT,render:e=>{let{row:t}=e;return(0,y.jsxs)(n.Fragment,{children:[(0,y.jsx)(o._,{children:t.MediaType||"\u2014"}),"\xa0",t.Encryption&&(0,y.jsx)(i.J,{content:(0,b.Z)("encrypted"),placement:"right",behavior:l.x.Immediate,children:(0,y.jsx)(o._,{children:(0,y.jsx)(d.J,{data:s.Z,size:18})})})]})},sortable:!1},A={name:C,header:"Erasure",width:100,render:e=>{let{row:t}=e;return t.ErasureSpecies?t.ErasureSpecies:"-"},align:a.ZP.LEFT,sortable:!1},M={name:R,header:"Degraded",width:110,resizeMinWidth:110,render:e=>{let{row:t}=e;return t.Degraded?(0,y.jsxs)(o._,{theme:(0,N._O)(t),children:["Degraded: ",t.Degraded]}):"-"},align:a.ZP.LEFT,defaultOrder:a.ZP.DESCENDING},F={name:T,header:"Usage",width:75,resizeMinWidth:75,render:e=>{let{row:t}=e;return t.Limit?(0,y.jsx)(m.a,{value:t.Usage,theme:(0,N.YC)(t.Usage)}):"-"},sortAccessor:e=>e.Limit?e.Usage:null,align:a.ZP.LEFT,sortable:!1},L={name:k,header:"Group ID",width:130,render:e=>{let{row:t}=e;return(0,y.jsx)("span",{className:j("group-id"),children:t.GroupID})},sortAccessor:e=>Number(e.GroupID),align:a.ZP.RIGHT,sortable:!1},Z={name:O,header:"Used",width:100,render:e=>{let{row:t}=e;return(0,x.Uz)(t.Used,!0)},align:a.ZP.RIGHT,sortable:!1},V={name:I,header:"Limit",width:100,render:e=>{let{row:t}=e;return(0,x.Uz)(t.Limit)},align:a.ZP.RIGHT,sortable:!1},K={name:z,header:"Space",width:110,render:e=>{let{row:t}=e;const r=t.UsedSpaceFlag;let n=g.K.Red;return r<100?n=g.K.Green:r<1e4?n=g.K.Yellow:r<1e6&&(n=g.K.Orange),(0,y.jsx)(u.A,{status:n})},align:a.ZP.CENTER},W={name:U,header:"Read",width:100,render:e=>{let{row:t}=e;return t.Read?(0,x.Qt)(t.Read):"-"},align:a.ZP.RIGHT},H={name:D,header:"Write",width:100,render:e=>{let{row:t}=e;return t.Write?(0,x.Qt)(t.Write):"-"},align:a.ZP.RIGHT},J=e=>({name:G,className:j("vdisks-column"),header:"VDisks",render:t=>{var r;let{row:n}=t;return(0,y.jsx)("div",{className:j("vdisks-wrapper"),children:null===(r=n.VDisks)||void 0===r?void 0:r.map((t=>(0,y.jsx)(h.c,{data:t,nodes:e,className:j("vdisks-item")},(0,f.a2)(t.VDiskId))))})},align:a.ZP.CENTER,width:900,resizeable:!1}),Y=()=>[L,P,A,F,Z,V],Q=e=>[_,P,A,M,L,F,Z,J(e)],B=(e,t)=>{const r=((e,t)=>t===p.G.space?e.filter((e=>e.name!==R)):t===p.G.missing?e.filter((e=>e.name!==z)):e.filter((e=>e.name!==R&&e.name!==z)))([_,P,A,M,F,L,Z,V,K,W,H,J(e)],t);return r.map((e=>({...e,sortable:(0,w.P7)(e.name)})))}},43817:(e,t,r)=>{r.d(t,{Z:()=>l});var n=r(30817);const s=JSON.parse('{"empty.default":"No such groups","empty.out_of_space":"No groups with out of space errors","empty.degraded":"No degraded groups","show_all":"Show all groups","encrypted":"Encrypted group"}'),a=JSON.parse('{"empty.default":"\u041d\u0435\u0442 \u0433\u0440\u0443\u043f\u043f","empty.out_of_space":"\u041d\u0435\u0442 \u0433\u0440\u0443\u043f\u043f, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043a\u043e\u043d\u0447\u0430\u0435\u0442\u0441\u044f \u043c\u0435\u0441\u0442\u043e","empty.degraded":"\u041d\u0435\u0442 \u0434\u0435\u0433\u0440\u0430\u0434\u0438\u0440\u043e\u0432\u0430\u0432\u0448\u0438\u0445 \u0433\u0440\u0443\u043f\u043f","show_all":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0441\u0435 \u0433\u0440\u0443\u043f\u043f\u044b","encrypted":"\u0417\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0433\u0440\u0443\u043f\u043f\u0430"}'),l=(0,n.wZ)("ydb-storage-groups",{ru:a,en:s})},70885:(e,t,r)=>{r.d(t,{V:()=>Je});var n=r(52317),s=r(34051),a=r(52846),l=r(82073),o=r(8747),i=r(99337),d=r(95829),c=r(95408);const u=c.z.nativeEnum(d.G).catch(d.G.all),m=c.z.nativeEnum(d.d).catch(d.d.groups);var h=r(51688),p=r(68963),g=r(49201),v=r(30629),f=r(43989),w=r(79734),x=r(75859);const N={[d.d.groups]:"Groups",[d.d.nodes]:"Nodes"},b=e=>{let{value:t,onChange:r}=e;return(0,x.jsxs)(w.E,{value:t,onUpdate:r,qa:"storage-type-filter",children:[(0,x.jsx)(w.E.Option,{value:d.d.groups,children:N[d.d.groups]}),(0,x.jsx)(w.E.Option,{value:d.d.nodes,children:N[d.d.nodes]})]})},y={[d.G.all]:"All",[d.G.missing]:"Degraded",[d.G.space]:"Out of Space"},j=e=>{let{value:t,onChange:r}=e;return(0,x.jsxs)(w.E,{value:t,onUpdate:r,qa:"storage-visible-entities-filter",children:[(0,x.jsx)(w.E.Option,{value:d.G.missing,children:y[d.G.missing]}),(0,x.jsx)(w.E.Option,{value:d.G.space,children:y[d.G.space]}),(0,x.jsx)(w.E.Option,{value:d.G.all,children:y[d.G.all]})]})};var E=r(2418),S=r(69214),C=r(24362),k=r(10703),O=r(30817);const I=JSON.parse('{"label":"Usage:","default_value":"Any","groups_count":["{{count}} group","{{count}} groups","{{count}} groups","No groups"]}'),T=JSON.parse('{"label":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435:","default_value":"\u041b\u044e\u0431\u043e\u0435","groups_count":["{{count}} \u0433\u0440\u0443\u043f\u043f\u0430","{{count}} \u0433\u0440\u0443\u043f\u043f\u044b","{{count}} \u0433\u0440\u0443\u043f\u043f","\u041d\u0435\u0442 \u0433\u0440\u0443\u043f\u043f"]}'),z=(0,O.wZ)("ydb-usage-filter",{ru:T,en:I}),U=(0,C.cn)("usage-filter"),D=e=>{const{className:t,value:r=[],groups:n=[],onChange:s,debounce:a=200}=e,[l,o]=p.useState(r),i=p.useRef();p.useEffect((()=>{o((e=>e.join(",")!==r.join(",")?r:e))}),[r]);const d=p.useMemo((()=>n.map((e=>{let{threshold:t,count:r}=e;return{value:String(t),text:"".concat(t,"%"),data:{count:r}}}))),[n]),c=Math.max(...n.map((e=>{let{count:t}=e;return t})));return(0,x.jsx)(E.P,{className:U(null,t),label:z("label"),value:l,placeholder:z("default_value"),options:d,multiple:!0,onUpdate:e=>{o(e),window.clearTimeout(i.current),i.current=window.setTimeout((()=>{null===s||void 0===s||s(e)}),a)},renderOption:e=>{let{value:t,data:r,text:n}=e;return(0,x.jsxs)("div",{className:U("option"),children:[(0,x.jsx)(S.A,{className:U("option-title"),status:(0,k.CZ)(Number(t)),name:n,size:"xs"}),(0,x.jsxs)("div",{className:U("option-meta"),children:[z("groups_count",{count:r.count}),(0,x.jsx)("div",{className:U("option-bar"),style:{width:"".concat(r.count/c*100,"%")}})]})]})},getOptionHeight:()=>50,popupWidth:280,disabled:0===n.length})},G=JSON.parse('{"groups":"Groups","nodes":"Nodes","controls_groups-search-placeholder":"Group ID, Pool name","controls_nodes-search-placeholder":"Node ID, FQDN"}'),R=JSON.parse('{"groups":"\u0413\u0440\u0443\u043f\u043f\u044b","nodes":"\u041d\u043e\u0434\u044b","controls_groups-search-placeholder":"ID \u0433\u0440\u0443\u043f\u043f\u044b, \u0438\u043c\u044f \u043f\u0443\u043b\u0430","controls_nodes-search-placeholder":"ID \u0443\u0437\u043b\u0430, FQDN"}'),_=(0,O.wZ)("ydb-storage",{ru:R,en:G}),P=(0,C.cn)("global-storage"),A=e=>{let{searchValue:t,handleSearchValueChange:r,withTypeSelector:n,storageType:s,handleStorageTypeChange:a,visibleEntities:l,handleVisibleEntitiesChange:o,nodesUptimeFilter:i,handleNodesUptimeFilterChange:c,withGroupsUsageFilter:u,groupsUsageFilter:m,groupsUsageFilterOptions:h,handleGroupsUsageFilterChange:w,entitiesCountCurrent:N,entitiesCountTotal:y,entitiesLoading:E}=e;const S=s===d.d.nodes,C=_(S?"nodes":"groups");return(0,x.jsxs)(p.Fragment,{children:[(0,x.jsx)(v.o,{value:t,onChange:r,placeholder:_(S?"controls_nodes-search-placeholder":"controls_groups-search-placeholder"),className:P("search")}),n&&(0,x.jsx)(b,{value:s,onChange:a}),(0,x.jsx)(j,{value:l,onChange:o}),S&&(0,x.jsx)(f.X,{value:i,onChange:c}),!S&&u&&(0,x.jsx)(D,{value:m,onChange:w,groups:h}),(0,x.jsx)(g.C,{label:C,loading:E,total:y,current:N})]})};var M=r(35113),F=r(17176),L=r(79023),Z=r(56350);const V=JSON.parse('{"default_message":"Everything is fine!","default_button_label":"Show All"}'),K=JSON.parse('{"default_message":"\u0412\u0441\u0451 \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435!","default_button_label":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0441\u0435"}'),W=(0,O.wZ)("ydb-storage-empty-filter",{ru:K,en:V}),H=e=>{let{title:t,message:r=W("default_message"),showAll:n=W("default_button_label"),onShowAll:s}=e;return(0,x.jsx)(L.u,{image:(0,x.jsx)(Z.Q,{name:"thumbsUp"}),position:"left",title:t,description:r,actions:s&&[(0,x.jsx)(F.z,{onClick:s,children:n},"show-all")]})};var J=r(43817);const Y=e=>{let t,{visibleEntities:r,onShowAll:n}=e;return r===d.G.space&&(t=(0,J.Z)("empty.out_of_space")),r===d.G.missing&&(t=(0,J.Z)("empty.degraded")),t?(0,x.jsx)(H,{title:t,showAll:(0,J.Z)("show_all"),onShowAll:n}):null};var Q=r(92092),B=r(11431);const q=(e,t)=>"getStorageGroups|offset".concat(t,"|limit").concat(e),X=async e=>{let{limit:t,offset:r,...n}=e;const s=await window.api.getStorageInfo({version:B.w.v2,limit:t,offset:r,...n},{concurrentId:q(t,r)}),a=(0,Q.KJ)(s);return{data:a.groups||[],found:a.found||0,total:a.total||0}};var $=r(92076);const ee=e=>{let{searchValue:t,visibleEntities:r,tenant:n,nodeId:s,nodesMap:a,onShowAll:l,parentContainer:o,renderControls:i,renderErrorMessage:c}=e;const u=p.useMemo((()=>[t,r,n,s]),[t,r,n,s]),m=p.useCallback((async function(e,a){let{sortOrder:l,columnId:o}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return await X({limit:e,offset:a,filter:t,visibleEntities:r,tenant:n,nodeId:s,sortOrder:l,sortValue:o})}),[s,t,n,r]),h=p.useMemo((()=>(0,$.k8)(a,r)),[a,r]);return(0,x.jsx)(M.WQ,{columnsWidthLSKey:$.Ty,parentContainer:o,columns:h,fetchData:m,limit:50,renderControls:i,renderErrorMessage:c,renderEmptyDataMessage:()=>r!==d.G.all?(0,x.jsx)(Y,{onShowAll:l,visibleEntities:r}):(0,J.Z)("empty.default"),dependencyArray:u})},te=JSON.parse('{"empty.default":"No such nodes","empty.out_of_space":"No nodes with out of space errors","empty.degraded":"No degraded nodes","empty.small_uptime":"No nodes with uptime < 1h","empty.several_filters":"No nodes match current filters combination","show_all":"Show all nodes"}'),re=JSON.parse('{"empty.default":"\u041d\u0435\u0442 \u0443\u0437\u043b\u043e\u0432","empty.out_of_space":"\u041d\u0435\u0442 \u0443\u0437\u043b\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043a\u043e\u043d\u0447\u0430\u0435\u0442\u0441\u044f \u043c\u0435\u0441\u0442\u043e","empty.degraded":"\u041d\u0435\u0442 \u0434\u0435\u0433\u0440\u0430\u0434\u0438\u0440\u043e\u0432\u0430\u0432\u0448\u0438\u0445 \u0443\u0437\u043b\u043e\u0432","empty.small_uptime":"\u041d\u0435\u0442 \u0443\u0437\u043b\u043e\u0432 \u0441 uptime < 1h","empty.several_filters":"\u041d\u0435\u0442 \u0443\u0437\u043b\u043e\u0432, \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u043f\u043e\u0434 \u0442\u0435\u043a\u0443\u0449\u0438\u0435 \u0444\u0438\u043b\u044c\u0442\u0440\u044b","show_all":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0441\u0435 \u0443\u0437\u043b\u044b"}'),ne=(0,O.wZ)("ydb-storage-nodes",{ru:re,en:te}),se=e=>{let t,{visibleEntities:r,nodesUptimeFilter:n,onShowAll:s}=e;return r===d.G.space&&(t=ne("empty.out_of_space")),r===d.G.missing&&(t=ne("empty.degraded")),n===h.Uu.SmallUptime&&(t=ne("empty.small_uptime")),r!==d.G.all&&n!==h.Uu.All&&(t=ne("empty.several_filters")),t?(0,x.jsx)(H,{title:t,showAll:ne("show_all"),onShowAll:s}):null},ae=(e,t)=>"getStorageNodes|offset".concat(t,"|limit").concat(e),le=async e=>{let{type:t="static",storage:r=!0,limit:n,offset:s,...a}=e;const l=await window.api.getNodes({type:t,storage:r,limit:n,offset:s,...a},{concurrentId:ae(n,s)}),o=(0,Q.Y2)(l);return{data:o.nodes||[],found:o.found||0,total:o.total||0}};var oe=r(19812),ie=r(65890),de=r(1796),ce=r(74170),ue=r(40073),me=r(79255),he=r(54665),pe=r(5922),ge=r(4119),ve=r(92398);const fe=(0,C.cn)("pdisk-storage"),we=e=>{let{nodeId:t,data:r={},vDisks:a}=e;const[l,o]=p.useState(!1),[i]=(0,s.yu)(n.fo),d=p.useRef(null);let c=(0,he.ax)(he.ZP.node,{id:t,activeTab:ve.pV},{pdiskId:r.PDiskId||""});return i&&(0,pe.D)(r.PDiskId)&&(c=(0,he.ds)(r.PDiskId,t)),(0,x.jsxs)(p.Fragment,{children:[(0,x.jsx)(ue.J,{data:r,anchorRef:d,open:l}),(0,x.jsxs)("div",{className:fe(),ref:d,children:[null!==a&&void 0!==a&&a.length?(0,x.jsx)("div",{className:fe("vdisks"),children:a.map((e=>(0,x.jsx)("div",{className:fe("vdisks-item"),style:{flexGrow:Number(e.AllocatedSize)||1},children:(0,x.jsx)(me.c,{data:e,compact:!0,stackClassName:fe("donors-stack")})},(0,ge.a2)(e.VDiskId))))}):null,(0,x.jsxs)(ce.h,{to:c,className:fe("content"),onMouseEnter:()=>{o(!0)},onMouseLeave:()=>{o(!1)},children:[(0,x.jsx)(de.p,{diskAllocatedPercent:r.AllocatedPercent,severity:r.Severity}),(0,x.jsx)("div",{className:fe("media-type"),children:r.Type})]})]})]})},xe=(0,C.cn)("global-storage-nodes"),Ne=e=>xe("node",{unavailable:(0,h.TA)(e)}),be="storageNodesColumnsWidth",ye="NodeId",je="Host",Ee="DC",Se="Rack",Ce="Uptime",ke="PDisks",Oe="Missing",Ie=(e,t)=>{const r=(e=>{const t=null===e||void 0===e?void 0:e.getNodeRef;return[{name:ye,header:"Node ID",width:100,align:oe.ZP.RIGHT,render:e=>{let{row:t}=e;return t.NodeId}},{name:je,header:"Host",width:350,render:e=>{let{row:r}=e;return(0,x.jsx)(ie.k,{node:r,getNodeRef:t})},align:oe.ZP.LEFT},{name:Ee,header:"DC",width:100,render:e=>{let{row:t}=e;return t.DC||n.jX},align:oe.ZP.LEFT},{name:Se,header:"Rack",width:100,render:e=>{let{row:t}=e;return t.Rack||"\u2014"},align:oe.ZP.LEFT},{name:Ce,header:"Uptime",width:130,sortAccessor:e=>{let{StartTime:t}=e;return t?-t:0},align:oe.ZP.RIGHT,render:e=>{let{row:t}=e;return t.Uptime}},{name:Oe,header:"Missing",width:100,align:oe.ZP.CENTER,defaultOrder:oe.ZP.DESCENDING,render:e=>{let{row:t}=e;return t.Missing}},{name:ke,className:xe("pdisks-column"),header:"PDisks",render:e=>{var t;let{row:r}=e;return(0,x.jsx)("div",{className:xe("pdisks-wrapper"),children:null===(t=r.PDisks)||void 0===t?void 0:t.map((e=>{var t;const n=null===(t=r.VDisks)||void 0===t?void 0:t.filter((t=>t.PDiskId===e.PDiskId));return(0,x.jsx)("div",{className:xe("pdisks-item"),children:(0,x.jsx)(we,{data:e,nodeId:r.NodeId,vDisks:n})},e.PDiskId)}))})},align:oe.ZP.CENTER,sortable:!1,width:900,resizeable:!1}]})(e),s=r.map((e=>({...e,sortable:(0,h.oh)(e.name)})));return t!==d.G.missing?s.filter((e=>e.name!==Oe)):s},Te=e=>{let{searchValue:t,visibleEntities:r,nodesUptimeFilter:n,tenant:s,additionalNodesProps:a,onShowAll:l,parentContainer:o,renderControls:i,renderErrorMessage:c}=e;const u=p.useMemo((()=>[t,r,n,s]),[t,r,n,s]),m=p.useCallback((async function(e,a){let{sortOrder:l,columnId:o}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return await le({limit:e,offset:a,filter:t,uptime:(0,h.RW)(n),visibleEntities:r,tenant:s,sortOrder:l,sortValue:o})}),[n,t,s,r]),g=p.useMemo((()=>Ie(a,r)),[a,r]);return(0,x.jsx)(M.WQ,{columnsWidthLSKey:be,parentContainer:o,columns:g,fetchData:m,rowHeight:50,limit:50,renderControls:i,renderErrorMessage:c,renderEmptyDataMessage:()=>r!==d.G.all||n!==h.Uu.All?(0,x.jsx)(se,{onShowAll:l,nodesUptimeFilter:n,visibleEntities:r}):ne("empty.default"),getRowClassName:Ne,dependencyArray:u})},ze=e=>{var t;let{tenant:r,nodeId:n,parentContainer:c,additionalNodesProps:p}=e;const[g,v]=(0,a.useQueryParams)({type:a.StringParam,visible:a.StringParam,search:a.StringParam,uptimeFilter:a.StringParam}),f=m.parse(g.type),w=u.parse(g.visible),N=null!==(t=g.search)&&void 0!==t?t:"",b=h.U8.parse(g.uptimeFilter),y=e=>{v({search:e||void 0},"replaceIn")},j=e=>{v({visible:e},"replaceIn")},E=e=>{v({type:e},"replaceIn")},S=e=>{v({uptimeFilter:e},"replaceIn")},C=(0,s.ix)(i.d),k=()=>{v({visible:d.G.all,uptimeFilter:h.Uu.All},"replaceIn")},O=e=>{let{totalEntities:t,foundEntities:r,inited:s}=e;return(0,x.jsx)(A,{searchValue:N,handleSearchValueChange:y,withTypeSelector:!n,storageType:f,handleStorageTypeChange:E,visibleEntities:w,handleVisibleEntitiesChange:j,nodesUptimeFilter:b,handleNodesUptimeFilterChange:S,withGroupsUsageFilter:!1,entitiesCountCurrent:r,entitiesCountTotal:t,entitiesLoading:!s})},I=e=>403===e.status?(0,x.jsx)(l.J,{position:"left"}):(0,x.jsx)(o.V,{error:e});return f===d.d.nodes?(0,x.jsx)(Te,{searchValue:N,visibleEntities:w,nodesUptimeFilter:b,tenant:r,additionalNodesProps:p,onShowAll:k,parentContainer:c,renderControls:O,renderErrorMessage:I}):(0,x.jsx)(ee,{searchValue:N,visibleEntities:w,tenant:r,nodeId:n,nodesMap:C,onShowAll:()=>{j(d.G.all)},parentContainer:c,renderControls:O,renderErrorMessage:I})};var Ue=r(86969),De=r(26688),Ge=r(47101),Re=r(15106),_e=r(14223);const Pe=e=>e.trim().toLowerCase(),Ae=(e,t)=>{const r=Pe(t);return r?e.filter((e=>{var t,n;return(null===(t=e.NodeId)||void 0===t?void 0:t.toString().includes(r))||(null===(n=e.Host)||void 0===n?void 0:n.toLowerCase().includes(r))})):e},Me=(e,t)=>{const r=Pe(t);return r?e.filter((e=>{var t,n;return(null===(t=e.PoolName)||void 0===t?void 0:t.toLowerCase().includes(r))||(null===(n=e.GroupID)||void 0===n?void 0:n.toString().includes(r))})):e},Fe=(e,t)=>Array.isArray(t)&&0!==t.length?e.filter((e=>{const r=e.Usage;return t.some((e=>Number(e)<=r&&r({getStorageNodesInfo:e.query({queryFn:async(e,t)=>{let{signal:r}=t;try{const t=await window.api.getNodes({storage:!0,type:"static",tablets:!1,...e},{signal:r});return{data:(0,Q.Y2)(t)}}catch(n){return{error:n}}},providesTags:["All"]}),getStorageGroupsInfo:e.query({queryFn:async(e,t)=>{let{signal:r}=t;try{const t=await window.api.getStorageInfo({version:B.w.v1,...e},{signal:r});return{data:(0,Q.KJ)(t)}}catch(n){return{error:n}}},providesTags:["All"]})}),overrideExisting:"throw"});var Ze=r(2098);r(5384);function Ve(e){let{data:t,tableSettings:r,visibleEntities:n,nodes:s,onShowAll:a,sort:l,handleSort:o}=e;const i=p.useMemo((()=>(0,$.k8)(s,n)),[s,n]);return t.length||n===d.G.all?(0,x.jsx)(Ze.G,{columnsWidthLSKey:$.Ty,data:t,columns:i,settings:r,emptyDataMessage:(0,J.Z)("empty.default"),sortOrder:l,onSort:o},n):(0,x.jsx)(Y,{onShowAll:a,visibleEntities:n})}function Ke(e){let{data:t,tableSettings:r,visibleEntities:n,onShowAll:s,nodesUptimeFilter:a,additionalNodesProps:l,sort:o,handleSort:i}=e;const c=Ie(l,n);return t.length||n===d.G.all&&a===h.Uu.All?(0,x.jsx)(Ze.G,{columnsWidthLSKey:be,data:t,columns:c,settings:{...r,dynamicRenderType:"variable"},emptyDataMessage:ne("empty.default"),rowClassName:Ne,sortOrder:o,onSort:i},n):(0,x.jsx)(se,{visibleEntities:n,nodesUptimeFilter:a,onShowAll:s})}const We=(0,a.withDefault)({encode:a.ArrayParam.encode,decode:e=>null===e||void 0===e?e:Array.isArray(e)?e.filter(Boolean):e?[e]:[]},[]),He=e=>{var t;let{additionalNodesProps:r,tenant:l,nodeId:o}=e;const[c]=(0,s.Rj)(),[g,v]=(0,a.useQueryParams)({type:a.StringParam,visible:a.StringParam,search:a.StringParam,uptimeFilter:a.StringParam,usageFilter:We}),f=m.parse(g.type),w=u.parse(g.visible),N=null!==(t=g.search)&&void 0!==t?t:"",b=h.U8.parse(g.uptimeFilter),y=g.usageFilter,j=(0,s.ix)(i.d),[E,S]=p.useState({sortOrder:void 0,sortValue:void 0}),C=E.sortValue?E:k.TP,[O,I]=p.useState({sortOrder:void 0,sortValue:void 0}),T=O.sortOrder?O:(0,k._r)(w),z=void 0!==o,U=z?d.d.groups:f,D=Le.useGetStorageNodesInfoQuery({tenant:l,visibleEntities:w},{skip:U!==d.d.nodes,pollingInterval:c}),G=Le.useGetStorageGroupsInfoQuery({tenant:l,visibleEntities:w,nodeId:o},{skip:U!==d.d.groups,pollingInterval:c}),{currentData:R,isFetching:_,error:M}=U===d.d.nodes?D:G,{currentData:{nodes:F=[]}={}}=D,{currentData:{groups:L=[]}={}}=G,{nodes:Z,groups:V,...K}=null!==R&&void 0!==R?R:{found:0,total:0},W=void 0===R&&_,H=p.useMemo((()=>function(e,t,r){let n=e||[];return n=Ae(n,t),n=(0,_e.f)(n,r),n}(F,N,b)),[N,F,b]),J=p.useMemo((()=>function(e,t,r){let n=e||[];return n=Me(n,t),n=Fe(n,r),n}(L,N,y)),[N,L,y]),Y=p.useMemo((()=>function(e){const t={};return null===e||void 0===e||e.forEach((e=>{const r=(0,Re.Ic)(e,5);Object.prototype.hasOwnProperty.call(t,r)||(t[r]=0),t[r]+=1})),Object.entries(t).map((e=>{let[t,r]=e;return{threshold:Number(t),count:r}})).sort(((e,t)=>t.threshold-e.threshold))}(L)),[L]),[Q,B]=(0,s.sC)(C,(e=>S(e))),[q,X]=(0,s.sC)(T,(e=>I(e))),$=e=>{v({usageFilter:e.length?e:void 0},"replaceIn")},ee=e=>{v({search:e||void 0},"replaceIn")},te=e=>{v({visible:e},"replaceIn")},re=e=>{v({type:e},"replaceIn")},ne=e=>{v({uptimeFilter:e},"replaceIn")},se=()=>{te(d.G.all),ne(h.Uu.All)};return M?403===M.status?(0,x.jsx)(Ue.J,{position:"left"}):(0,x.jsx)(De.V,{error:M}):(0,x.jsxs)(Ge.l,{children:[(0,x.jsx)(Ge.l.Controls,{children:(0,x.jsx)(A,{searchValue:N,handleSearchValueChange:ee,withTypeSelector:!z,storageType:U,handleStorageTypeChange:re,visibleEntities:w,handleVisibleEntitiesChange:te,nodesUptimeFilter:b,handleNodesUptimeFilterChange:ne,groupsUsageFilter:y,groupsUsageFilterOptions:Y,handleGroupsUsageFilterChange:$,entitiesCountCurrent:U===d.d.groups?J.length:H.length,entitiesCountTotal:K.total,entitiesLoading:W})}),(0,x.jsx)(Ge.l.Table,{loading:W,className:P("table"),children:(0,x.jsxs)(p.Fragment,{children:[U===d.d.groups&&(0,x.jsx)(Ve,{visibleEntities:w,data:J,tableSettings:n.LE,nodes:j,onShowAll:()=>te(d.G.all),sort:q,handleSort:X},"groups"),U===d.d.nodes&&(0,x.jsx)(Ke,{visibleEntities:w,nodesUptimeFilter:b,data:H,tableSettings:n.LE,onShowAll:se,additionalNodesProps:r,sort:Q,handleSort:B},"nodes")]})})]})},Je=e=>{let{parentContainer:t,...r}=e;const[a]=(0,s.yu)(n.Qy);return a?(0,x.jsx)(ze,{parentContainer:t,...r}):(0,x.jsx)(He,{...r})}},10703:(e,t,r)=>{r.d(t,{CZ:()=>h,TP:()=>p,YC:()=>m,_O:()=>u,_r:()=>w});var n=r(81413),s=r(95829),a=r(75850),l=r(99106),o=r(51688),i=r(15106);const d=(0,l.p)(1,2,["success","warning","danger"]),c={"block-4-2":(0,l.p)(1,2,["success","warning","danger"]),"mirror-3-dc":(0,l.p)(1,3,["success","warning","danger"])},u=e=>{var t;return(void 0!==(t=e.ErasureSpecies)&&t in c?c[e.ErasureSpecies]:d)(e.Degraded)},m=(0,l.p)(80,85,["success","warning","danger"]),h=(0,l.p)(80,85,[a.K.Green,a.K.Yellow,a.K.Red]),p={sortValue:o.Hk.NodeId,sortOrder:n.zE},g={sortValue:i.t5.PoolName,sortOrder:n.zE},v={sortValue:i.t5.Degraded,sortOrder:n.hr},f={sortValue:i.t5.Usage,sortOrder:n.hr};function w(e){return e===s.G.missing?v:e===s.G.space?f:g}},14223:(e,t,r)=>{r.d(t,{A:()=>m,f:()=>c});var n=r(75850),s=r(52317),a=r(4119),l=r(27070),o=r(51688),i=r(80839);const d=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(arguments.length>1?arguments[1]:void 0)===i.pu.ALL?e:e.filter((e=>{let{SystemState:t}=e;return t&&t!==n.K.Green}))},c=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(arguments.length>1?arguments[1]:void 0)===o.Uu.All?e:e.filter((e=>{let{StartTime:t}=e;return!t||(0,a.OW)(t)0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0;if(!t)return e;const r=(0,l.Y)(t);return e.filter((e=>!e.Host||(r.test(e.Host)||r.test(String(e.NodeId)))))};function m(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],{uptimeFilter:t,searchValue:r,problemFilter:n}=arguments.length>1?arguments[1]:void 0,s=c(e,t);return s=d(s,n),s=u(s,r),s}},95829:(e,t,r)=>{r.d(t,{G:()=>n,d:()=>s});const n={all:"all",missing:"missing",space:"space"},s={groups:"groups",nodes:"nodes"}},89712:(e,t,r)=>{r.d(t,{M:()=>l});var n=r(68963),s=r(2639),a=r(18193);const l=e=>{const t=n.useCallback((()=>e?a.r.readUserSettingsValue(e,{}):{}),[e]),r=n.useCallback((t=>{e&&a.r.setUserSettingsValue(e,t)}),[e]);return(0,s.M)({saveSizes:r,getSizes:t})}},83496:(e,t,r)=>{r.d(t,{FW:()=>i,KR:()=>d,LV:()=>o,uk:()=>l});var n=r(75850),s=r(28164);const a={[s.g.Dead]:n.K.Red,[s.g.Created]:n.K.Yellow,[s.g.ResolveStateStorage]:n.K.Yellow,[s.g.Candidate]:n.K.Yellow,[s.g.BlockBlobStorage]:n.K.Yellow,[s.g.WriteZeroEntry]:n.K.Yellow,[s.g.Restored]:n.K.Yellow,[s.g.Discover]:n.K.Yellow,[s.g.Lock]:n.K.Yellow,[s.g.Stopped]:n.K.Yellow,[s.g.ResolveLeader]:n.K.Yellow,[s.g.RebuildGraph]:n.K.Yellow,[s.g.Deleted]:n.K.Green,[s.g.Active]:n.K.Green},l=Object.keys(s.g),o=Object.entries(a).reduce(((e,t)=>{let[r,n]=t;return e[n]?e[n].push(r):e[n]=[r],e}),{}),i=e=>{if(!e)return n.K.Grey;return t=e,Object.values(n.K).includes(t)?e:a[e];var t};function d(e){if(!e)return"unknown";switch(e){case s.g.Dead:return"danger";case s.g.Active:case s.g.Deleted:return"success";default:return"warning"}}},5384:()=>{}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/2335.eb54f5e5.chunk.js b/ydb/core/viewer/monitoring/static/js/2335.eb54f5e5.chunk.js new file mode 100644 index 000000000000..6d0aff21b2f4 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/2335.eb54f5e5.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[2335],{94790:(e,t,r)=>{r.d(t,{f:()=>o});var a=r(68963),n=r(44920),s=r(75859);const o=e=>{let{children:t,content:r,className:o,hasArrow:l=!0,placement:d=["top","bottom"],...i}=e;const[u,c]=a.useState(!1),m=a.useRef(null);return(0,s.jsxs)(a.Fragment,{children:[(0,s.jsx)(n.G,{anchorRef:m,open:u,placement:d,hasArrow:l,...i,children:r}),(0,s.jsx)("span",{className:o,ref:m,onMouseEnter:()=>{c(!0)},onMouseLeave:()=>{c(!1)},children:t})]})}},36985:(e,t,r)=>{r.d(t,{C:()=>a.C});var a=r(49201)},68242:(e,t,r)=>{r.d(t,{m:()=>u});var a=r(24362),n=r(94790),s=r(27506),o=r(75859);const l=(0,a.cn)("ydb-pool-bar"),d=e=>{let{data:t={}}=e;const{Usage:r=0}=t,a=Math.min(100*r,100),d=(e=>e>=75?"danger":e>=50&&e<75?"warning":"normal")(a);return(0,o.jsx)(n.f,{className:l({type:d}),content:(0,o.jsx)(s.A8,{data:t,className:l("popup-content")}),children:(0,o.jsx)("div",{style:{height:"".concat(a,"%")},className:l("value",{type:d})})})},i=(0,a.cn)("ydb-pools-graph"),u=e=>{let{pools:t=[]}=e;return(0,o.jsx)("div",{className:i(),children:t.map(((e,t)=>(0,o.jsx)(d,{data:e},t)))})}},74221:(e,t,r)=>{r.d(t,{T:()=>o});var a=r(79734),n=r(80839),s=r(75859);const o=e=>{let{value:t,onChange:r,className:o}=e;return(0,s.jsxs)(a.E,{value:t,onUpdate:r,className:o,children:[(0,s.jsx)(a.E.Option,{value:n.pu.ALL,children:n.pu.ALL}),(0,s.jsx)(a.E.Option,{value:n.pu.PROBLEMS,children:n.pu.PROBLEMS})]})}},11551:(e,t,r)=>{r.d(t,{o:()=>a.o});var a=r(30629)},43070:(e,t,r)=>{r.d(t,{e:()=>u});var a=r(83203),n=r(54665),s=r(24362),o=r(52317),l=r(83496),d=r(75859);const i=(0,s.cn)("tablets-statistic"),u=e=>{let{tablets:t=[],path:r,nodeIds:s,backend:u}=e;const c=(e=>e.map((e=>({label:(0,o.qV)(e.Type),type:e.Type,count:e.Count,state:(0,l.FW)(e.State)}))).sort(((e,t)=>String(e.label).localeCompare(String(t.label)))))(t);return(0,d.jsx)("div",{className:i(),children:c.map(((e,t)=>{var o;const l=(0,n.ax)(n.ZP.tabletsFilters,void 0,{nodeIds:s,state:e.state,type:e.type,path:r,backend:u}),c="".concat(e.label,": ").concat(e.count),m=i("tablet",{state:null===(o=e.state)||void 0===o?void 0:o.toLowerCase()});return u?(0,d.jsx)("a",{href:l,className:m,children:c},t):(0,d.jsx)(a.rU,{to:l,className:m,children:c},t)}))})}},2335:(e,t,r)=>{r.d(t,{G:()=>O});var a=r(52317),n=r(34051),s=r(68963),o=r(81413),l=r(17095),d=r(52846),i=r(36985),u=r(86969),c=r(26688),m=r(56350),h=r(74221),p=r(2098),g=r(11551),v=r(47101),N=r(43989);let y;!function(e){e.v1="v1",e.v2="v2"}(y||(y={}));var b=r(905),w=r(46925);const f=b.h.injectEndpoints({endpoints:e=>({getNodes:e.query({queryFn:async(e,t)=>{let{signal:r}=t;try{const t=await window.api.getNodes({type:"any",storage:!1,...e},{signal:r});return{data:(0,w.nH)(t)}}catch(a){return{error:a}}},providesTags:["All"]}),getComputeNodes:e.query({queryFn:async(e,t)=>{let{signal:r}=t;try{const t=await window.api.getCompute({version:y.v2,...e},{signal:r});return{data:(0,w.Zf)(t)}}catch(a){return{error:a}}},providesTags:["All"]})}),overrideExisting:"throw"});var x=r(14223),C=r(80839),j=r(24362),P=r(51688),T=r(682),L=r(30817);const S=JSON.parse('{"empty.default":"No such nodes"}'),F=JSON.parse('{"empty.default":"\u041d\u0435\u0442 \u0443\u0437\u043b\u043e\u0432"}'),M=(0,L.wZ)("ydb-nodes",{ru:F,en:S});var E=r(75859);const A=(0,j.cn)("ydb-nodes"),U=e=>{var t;let{path:r,additionalNodesProps:y={}}=e;const[b,w]=(0,d.useQueryParams)({uptimeFilter:d.StringParam,search:d.StringParam}),j=P.U8.parse(b.uptimeFilter),L=null!==(t=b.search)&&void 0!==t?t:"",S=(0,n.zL)(),F=(0,n.ix)(C.qz),[U]=(0,n.Rj)(),[I]=(0,n.yu)(a.UF),R=r&&!I,Z=f.useGetNodesQuery(R?l.CN:{path:r},{pollingInterval:U}),z=f.useGetComputeNodesQuery(R?{path:r}:l.CN,{pollingInterval:U}),{currentData:D,isLoading:O,error:G}=R?z:Z,[V,W]=s.useState({sortValue:"NodeId",sortOrder:o.zE}),[k,q]=(0,n.sC)(V,(e=>{W(e)})),H=e=>{w({search:e||void 0},"replaceIn")},Q=e=>{S((0,C.M6)(e))},_=e=>{w({uptimeFilter:e},"replaceIn")},B=s.useMemo((()=>(0,x.A)(null===D||void 0===D?void 0:D.Nodes,{searchValue:L,uptimeFilter:j,problemFilter:F})),[D,L,j,F]),J=(null===D||void 0===D?void 0:D.TotalNodes)||0;return G?403===G.status?(0,E.jsx)(u.J,{}):(0,E.jsx)(c.V,{error:G}):(0,E.jsxs)(v.l,{children:[(0,E.jsx)(v.l.Controls,{children:(0,E.jsxs)(s.Fragment,{children:[(0,E.jsx)(g.o,{onChange:H,placeholder:"Host name",className:A("search"),value:L}),(0,E.jsx)(h.T,{value:F,onChange:Q}),(0,E.jsx)(N.X,{value:j,onChange:_}),(0,E.jsx)(i.C,{total:J,current:(null===B||void 0===B?void 0:B.length)||0,label:"Nodes",loading:O})]})}),(0,E.jsx)(v.l.Table,{loading:O,children:(()=>{const e=(0,T.gM)({getNodeRef:y.getNodeRef}).map((e=>({...e,sortable:(0,P.oh)(e.name)})));return!B||0!==B.length||F===C.pu.ALL&&j===P.Uu.All?(0,E.jsx)(p.G,{columnsWidthLSKey:T.t5,data:B||[],columns:e,settings:a.LE,sortOrder:k,onSort:q,emptyDataMessage:M("empty.default"),rowClassName:e=>A("node",{unavailable:(0,P.TA)(e)})}):(0,E.jsx)(m.Q,{name:"thumbsUp",width:"200"})})()})]})};var I=r(35113);const R=(e,t)=>"getNodes|offset".concat(t,"|limit").concat(e),Z=async e=>{let{type:t="any",storage:r=!1,limit:a,offset:n,...s}=e;const o=await window.api.getNodes({type:t,storage:r,limit:a,offset:n,...s},{concurrentId:R(a,n)}),l=(0,w.nH)(o);return{data:l.Nodes||[],found:l.FoundNodes||0,total:l.TotalNodes||0}},z=(0,j.cn)("ydb-nodes"),D=e=>{var t;let{path:r,parentContainer:a,additionalNodesProps:o}=e;const[l,p]=(0,d.useQueryParams)({uptimeFilter:d.StringParam,search:d.StringParam}),v=P.U8.parse(l.uptimeFilter),y=null!==(t=l.search)&&void 0!==t?t:"",b=(0,n.zL)(),w=(0,n.ix)(C.qz),f=s.useMemo((()=>[r,y,w,v]),[r,y,w,v]),x=s.useCallback((async function(e,t){let{sortOrder:a,columnId:n}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return await Z({limit:e,offset:t,path:r,filter:y,problems_only:(0,P.eV)(w),uptime:(0,P.RW)(v),sortOrder:a,sortValue:n})}),[r,w,y,v]),j=(0,T.gM)({getNodeRef:null===o||void 0===o?void 0:o.getNodeRef}).map((e=>({...e,sortable:(0,P.oh)(e.name)})));return(0,E.jsx)(I.WQ,{columnsWidthLSKey:T.t5,parentContainer:a,columns:j,fetchData:x,limit:50,renderControls:e=>{let{totalEntities:t,foundEntities:r,inited:a}=e;return(0,E.jsxs)(s.Fragment,{children:[(0,E.jsx)(g.o,{onChange:e=>{p({search:e||void 0},"replaceIn")},placeholder:"Host name",className:z("search"),value:y}),(0,E.jsx)(h.T,{value:w,onChange:e=>{b((0,C.M6)(e))}}),(0,E.jsx)(N.X,{value:v,onChange:e=>{p({uptimeFilter:e},"replaceIn")}}),(0,E.jsx)(i.C,{total:t,current:r,label:"Nodes",loading:!a})]})},renderErrorMessage:e=>e&&403===e.status?(0,E.jsx)(u.J,{position:"left"}):(0,E.jsx)(c.V,{error:e}),renderEmptyDataMessage:()=>w!==C.pu.ALL||v!==P.Uu.All?(0,E.jsx)(m.Q,{name:"thumbsUp",width:"200"}):M("empty.default"),dependencyArray:f,getRowClassName:e=>z("node",{unavailable:(0,P.TA)(e)})})},O=e=>{let{parentContainer:t,...r}=e;const[s]=(0,n.yu)(a.Qy);return s?(0,E.jsx)(D,{parentContainer:t,...r}):(0,E.jsx)(U,{...r})}},682:(e,t,r)=>{r.d(t,{Cj:()=>B,LF:()=>_,gM:()=>H,sQ:()=>Q,t5:()=>p});var a=r(19812),n=r(99683),s=r(65890),o=r(68242),l=r(67359),d=r(43070),i=r(80816),u=r(46925),c=r(52317),m=r(4119),h=r(75859);const p="nodesTableColumnsWidth",g="Host",v="DC",N="Rack",y="Version",b="Uptime",w="Memory",f="CPU",x="LoadAverage",C="Tablets",j="TopNodesLoadAverage",P="TopNodesMemory",T="SharedCacheUsage",L="MemoryUsedInAlloc",S="TotalSessions",F={name:"NodeId",header:"#",width:80,render:e=>{let{row:t}=e;return t.NodeId},align:a.ZP.RIGHT,sortable:!1},M=e=>({name:g,render:t=>{let{row:r}=t;return(0,h.jsx)(s.k,{node:r,getNodeRef:e})},width:350,align:a.ZP.LEFT,sortable:!1}),E=e=>({...M(e),width:void 0}),A={name:v,header:"DC",align:a.ZP.LEFT,render:e=>{let{row:t}=e;return t.DC||c.jX},width:60},U={name:N,header:"Rack",align:a.ZP.LEFT,render:e=>{let{row:t}=e;return t.Rack?t.Rack:"\u2014"},width:80},I={name:y,width:200,align:a.ZP.LEFT,render:e=>{let{row:t}=e;return(0,h.jsx)(n.l,{content:t.Version,children:t.Version})},sortable:!1},R={name:b,header:"Uptime",sortAccessor:e=>{let{StartTime:t}=e;return t&&-t},render:e=>{let{row:t}=e;return t.Uptime},align:a.ZP.RIGHT,width:110,sortable:!1},Z={name:w,header:"Memory",sortAccessor:e=>{let{MemoryUsed:t=0}=e;return Number(t)},defaultOrder:a.ZP.DESCENDING,render:e=>{let{row:t}=e;return t.MemoryUsed?(0,m.SX)(t.MemoryUsed):"\u2014"},align:a.ZP.RIGHT,width:120},z={name:f,header:"CPU",sortAccessor:e=>{let{PoolStats:t=[]}=e;return Math.max(...t.map((e=>{let{Usage:t}=e;return Number(t)})))},defaultOrder:a.ZP.DESCENDING,render:e=>{let{row:t}=e;return t.PoolStats?(0,h.jsx)(o.m,{pools:t.PoolStats}):"\u2014"},align:a.ZP.LEFT,width:80,resizeMinWidth:60,sortable:!1},D={name:x,header:"Load average",sortAccessor:e=>{let{LoadAveragePercents:t=[]}=e;return t[0]},defaultOrder:a.ZP.DESCENDING,render:e=>{let{row:t}=e;return t.LoadAveragePercents&&t.LoadAveragePercents.length>0?(0,h.jsx)(l.y,{value:t.LoadAveragePercents[0],percents:!0,colorizeProgress:!0,capacity:100}):"\u2014"},align:a.ZP.LEFT,width:140,resizeMinWidth:140,sortable:!1},O=e=>({name:C,width:500,resizeMinWidth:500,render:t=>{let{row:r}=t;return r.Tablets?(0,h.jsx)(d.e,{path:null!==e&&void 0!==e?e:r.TenantName,nodeIds:[r.NodeId],tablets:r.Tablets}):"\u2014"},align:a.ZP.LEFT,sortable:!1}),G={name:j,header:"Load",render:e=>{let{row:t}=e;return t.LoadAveragePercents&&t.LoadAveragePercents.length>0?(0,h.jsx)(i.a,{value:t.LoadAveragePercents[0].toFixed(),theme:(0,u.w6)(t.LoadAveragePercents[0])}):"\u2014"},align:a.ZP.LEFT,width:80,resizeMinWidth:70,sortable:!1},V={name:P,header:"Process",render:e=>{let{row:t}=e;return(0,h.jsx)(l.y,{value:t.MemoryUsed,capacity:t.MemoryLimit,formatValues:m.q3,colorizeProgress:!0})},align:a.ZP.LEFT,width:140,resizeMinWidth:140,sortable:!1},W={name:T,header:"Tablet Cache",render:e=>{let{row:t}=e;return(0,h.jsx)(l.y,{value:t.SharedCacheUsed,capacity:t.SharedCacheLimit,formatValues:m.q3,colorizeProgress:!0})},align:a.ZP.LEFT,width:140,resizeMinWidth:140,sortable:!1},k={name:L,header:"Query Runtime",render:e=>{let{row:t}=e;return(0,h.jsx)(l.y,{value:t.MemoryUsedInAlloc,capacity:t.MemoryLimit,formatValues:m.q3,colorizeProgress:!0})},align:a.ZP.LEFT,width:140,resizeMinWidth:140,sortable:!1},q={name:S,header:"Sessions",render:e=>{var t;let{row:r}=e;return null!==(t=r.TotalSessions)&&void 0!==t?t:"\u2014"},align:a.ZP.RIGHT,width:100,sortable:!1};function H(e){let{tabletsPath:t,getNodeRef:r}=e;return[F,M(r),A,U,I,R,Z,z,D,O(t)]}function Q(e){return[G,F,E(e),I]}function _(e){return[z,F,E(e)]}function B(e){let{tabletsPath:t,getNodeRef:r}=e;return[F,M(r),R,G,V,W,k,q,O(t)]}},46925:(e,t,r)=>{r.d(t,{Zf:()=>l,nH:()=>d,w6:()=>i});var a=r(4119),n=r(99106),s=r(51688);const o=(e,t)=>{var r;return{...e,TenantName:null!==(r=e.Tenant)&&void 0!==r?r:t,SystemState:null===e||void 0===e?void 0:e.Overall,Uptime:(0,a.fG)(null===e||void 0===e?void 0:e.StartTime),LoadAveragePercents:(0,s.y$)(e),DC:e.DataCenter}},l=e=>{const t=((e,t)=>{const r=[];if(e)e.forEach((e=>{r.push(o(e))}));else if(t)for(const n of t){var a;null===(a=n.Nodes)||void 0===a||a.forEach((e=>{r.push(o(e,n.Name))}))}return r})(e.Nodes,e.Tenants);return{Nodes:t,TotalNodes:Number(e.TotalNodes)||t.length,FoundNodes:Number(e.FoundNodes)}},d=e=>{const t=(e.Nodes||[]).map((e=>{var t,r,a,n;const o=Number(null===(t=e.SystemState.SharedCacheStats)||void 0===t?void 0:t.LimitBytes)||void 0;return{...(0,s.Ns)(e.SystemState),Tablets:e.Tablets,NodeId:e.NodeId,TenantName:null===(r=e.SystemState)||void 0===r||null===(a=r.Tenants)||void 0===a?void 0:a[0],SharedCacheUsed:null===(n=e.SystemState.SharedCacheStats)||void 0===n?void 0:n.UsedBytes,SharedCacheLimit:o}}));return{Nodes:t,TotalNodes:Number(e.TotalNodes)||t.length,FoundNodes:Number(e.FoundNodes)}},i=(0,n.p)(60,80,["success","warning","danger"])}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/2418.b7bfcc5a.chunk.js b/ydb/core/viewer/monitoring/static/js/2418.b7bfcc5a.chunk.js new file mode 100644 index 000000000000..ea4848d8b786 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/2418.b7bfcc5a.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[2418],{46318:(e,t,n)=>{n.d(t,{Z:()=>i});var o=n(68963);const i=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M13.488 3.43a.75.75 0 0 1 .081 1.058l-6 7a.75.75 0 0 1-1.1.042l-3.5-3.5A.75.75 0 0 1 4.03 6.97l2.928 2.927 5.473-6.385a.75.75 0 0 1 1.057-.081Z",clipRule:"evenodd"}))},2418:(e,t,n)=>{n.d(t,{P:()=>$});var o=n(68963),i=n(59926),s=n(56407),r=n(48027),l=n(95097),a=n(34505);var c=n(89646),u=n(38581),d=n(85636),h=n(97908),p=n(79805),v=n(77264),m=n(36951),f=n(95868);const g=(0,m.Ge)("select-filter"),b={padding:"4px 4px 0"},C=o.forwardRef(((e,t)=>{const{onChange:n,onKeyDown:i,renderFilter:s,size:r,value:l,placeholder:a}=e,c=o.useRef(null);return o.useImperativeHandle(t,(()=>({focus:()=>{var e;return null===(e=c.current)||void 0===e?void 0:e.focus({preventScroll:!0})}})),[]),s?s({onChange:n,onKeyDown:i,value:l,ref:c,style:b}):o.createElement("div",{className:g(),style:b},o.createElement(v.o,{controlRef:c,controlProps:{className:g("input"),size:1},size:r,value:l,placeholder:a,onUpdate:n,onKeyDown:i,qa:f.Gd.FILTER_INPUT}))}));C.displayName="SelectFilter";var E=n(24917);const w=e=>Boolean(e&&"label"in e),T=e=>{const t=e.reduce(((e,t)=>("label"in t?(e.push({label:t.label,disabled:!0}),e.push(...t.options||[])):e.push(t),e)),[]);return Object.defineProperty(t,f.YV,{enumerable:!1,value:{}}),t},y=e=>{const{getOptionHeight:t,getOptionGroupHeight:n,size:o,option:i,index:s,mobile:r}=e;let l=r?f.el:f._X[o];if(w(i)){const e=0===s?0:f.rn;return l=""===i.label?0:l,n?n(i,s):l+e}return t?t(i,s):l},S=e=>"string"===typeof e.content?e.content:"string"===typeof e.children?e.children:e.text?e.text:e.value,O=e=>(e=>o.Children.toArray(e))(e).reduce(((e,t)=>{let{props:n}=t;if("label"in n){const t=n.options||(e=>o.Children.toArray(e).reduce(((e,t)=>{let{props:n}=t;return"value"in n&&e.push(n),e}),[]))(n.children);e.push({options:t,label:n.label})}return"value"in n&&e.push(Object.assign({},n)),e}),[]),R=(e,t)=>t?t.findIndex((t=>{if(w(t))return!1;if(t.disabled)return!1;const n=S(t);return(o=e,new RegExp(o.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"i")).test(n);var o})):-1,H=e=>{var t;return(null===(t=null===e||void 0===e?void 0:e.current)||void 0===t?void 0:t.getItems())||[]},N=e=>{const{options:t,filter:n,filterOption:o}=e,i=t.filter((e=>!!w(e)||(o?o(e,n):((e,t)=>{const n=S(e).toLocaleLowerCase(),o=t.toLocaleLowerCase();return-1!==n.indexOf(o)})(e,n))));return i.reduce(((e,t,n)=>{const o=w(t),s=w(e[e.length-1]),r=n===i.length-1;return o&&s&&e.pop(),(!o||o&&!r)&&e.push(t),e}),[])},k=(0,m.Ge)("select-list"),x=e=>{let{option:t,renderOptionGroup:n}=e;return n?o.createElement("div",{className:k("group-label-custom")},n(t)):o.createElement("div",{className:k("group-label",{empty:""===t.label})},o.createElement("div",{className:k("group-label-content")},t.label))};var z=n(46318),I=n(88776);const A=(0,m.Ge)("select-list"),L=e=>{let{option:t}=e;const{content:n,children:i,disabled:s}=t;return o.createElement("span",{className:A("option-default-label",{disabled:s})},n||i)},P=e=>{const{renderOption:t,value:n,option:i,multiple:s}=e,r=-1!==n.indexOf(i.value),l=t?t(i):o.createElement(L,{option:i});return o.createElement("div",{"data-qa":i.qa,className:A("option",{colored:r&&!s,disabled:i.disabled})},s&&o.createElement(I.J,{className:A("tick-icon",{shown:r&&s}),data:z.Z}),l)};var W=n(63096),F=n(2982);const M=e=>{const t=o.useRef(null);return(0,W.s)({element:t.current,onIntersect:null===e||void 0===e?void 0:e.onIntersect}),o.createElement("div",{ref:t,className:(0,f.V_)("loading-indicator")},o.createElement(F.a,null))},Y={value:"__SELECT_LIST_ITEM_LOADING__",disabled:!0},B=o.forwardRef(((e,t)=>{const{onOptionClick:n,renderOption:i,renderOptionGroup:s,getOptionHeight:r,getOptionGroupHeight:l,size:a,flattenOptions:c,value:u,multiple:d,virtualized:h,mobile:p,loading:v,onLoadMore:m,id:g,onChangeActive:b}=e,C=o.useMemo((()=>v?[...c,Y]:c),[c,v]),w=o.useMemo((()=>c.reduce(((e,t,n)=>("value"in t&&u.includes(t.value)&&e.push(n),e)),[])),[c,u]),T=(e=>{const{getOptionHeight:t,getOptionGroupHeight:n,size:o,options:i,mobile:s}=e;return i.reduce(((e,i,r)=>e+y({getOptionHeight:t,getOptionGroupHeight:n,size:o,option:i,index:r,mobile:s})),0)})({options:C,getOptionHeight:r,getOptionGroupHeight:l,size:a,mobile:p}),S=o.useCallback(((e,t)=>y({getOptionHeight:r,getOptionGroupHeight:l,size:a,option:e,index:t,mobile:p})),[r,l,p,a]),O=o.useCallback(((e,t,n)=>{if("label"in e){const t=s?e=>s(e,{itemHeight:S(e,n)}):void 0;return o.createElement(x,{option:e,renderOptionGroup:t})}if(e.value===Y.value)return o.createElement(M,{onIntersect:0===n?void 0:m});const r=i?e=>i(e,{itemHeight:S(e,n)}):void 0;return o.createElement(P,{option:e,value:u,multiple:d,renderOption:r})}),[i,s,u,d,S,m]);return o.createElement(E.a,{ref:t,className:(0,f.V_)({size:a,virtualized:h,mobile:p}),qa:f.Gd.LIST,itemClassName:(0,f.V_)("item"),itemHeight:S,itemsHeight:h?T:void 0,items:C,filterable:!1,virtualized:h,renderItem:O,onItemClick:n,selectedItemIndex:w,id:g,role:"listbox",onChangeActive:b})}));B.displayName="SelectList";const G=(0,m.Ge)("select-empty-placeholder"),_=e=>{let{renderEmptyOptions:t,filter:n}=e;return o.createElement("div",{className:G({empty:!t})},null===t||void 0===t?void 0:t({filter:n}))};var V=n(24119),D=n(58414),j=n(92006);function q(e){const{name:t,value:n,disabled:i,form:s,onReset:r}=e,l=(0,j.q)({onReset:r,initialValue:n});return!t||i?null:0===n.length?o.createElement("input",{ref:l,type:"hidden",name:t,value:n,form:s,disabled:i}):o.createElement(o.Fragment,null,n.map(((e,n)=>o.createElement("input",{key:e,ref:0===n?l:void 0,value:e,type:"hidden",name:t,form:s,disabled:i}))))}const K=e=>{const{onChange:t,open:n,disabled:s}=e,[r,l]=o.useState(""),[a,c]=o.useState(),u=o.useCallback((e=>{if(clearTimeout(a),e){const e=window.setTimeout((()=>l("")),f.gX);c(e)}}),[a]),d=o.useCallback((e=>{e.stopPropagation();const t=((e,t)=>{const n=1===e.length;let o="";return e===i.V.BACKSPACE&&t.length?o=t.slice(0,t.length-1):n&&(o=(t+e).trim()),o})(e.key,r);r!==t&&(u(t),l(t))}),[u,r]);o.useEffect((()=>(n&&!s?document.addEventListener("keydown",d):n||s||l(""),()=>{n&&!s&&document.removeEventListener("keydown",d)})),[d,n,s]),o.useEffect((()=>(n||clearTimeout(a),()=>clearTimeout(a))),[n,a]),o.useEffect((()=>{t(r)}),[t,r])};var U=n(63639),J=n.n(U);function Z(e){return J()(e,[f.YV])}const X=e=>{let{renderFilter:t,renderList:n}=e;return o.createElement(o.Fragment,null,t(),n())},$=o.forwardRef((function(e,t){const{onUpdate:n,onOpenChange:v,onFilterChange:m,renderControl:g,renderFilter:b,renderOption:y,renderOptionGroup:k,renderSelectedOption:x,renderEmptyOptions:z,renderPopup:I=X,getOptionHeight:A,getOptionGroupHeight:L,filterOption:P,name:W,form:F,className:M,controlClassName:Y,popupClassName:G,qa:j,value:U,defaultValue:$,defaultOpen:Q,open:ee,label:te,placeholder:ne,filterPlaceholder:oe,width:ie,popupWidth:se,popupPlacement:re,error:le,virtualizationThreshold:ae=f._7,view:ce="normal",size:ue="m",pin:de="round-round",multiple:he=!1,disabled:pe=!1,filterable:ve=!1,filter:me,disablePortal:fe,hasClear:ge=!1,onClose:be,id:Ce,hasCounter:Ee,renderCounter:we,title:Te}=e,ye=(0,p.X)(),[Se,Oe]=(0,s.z)(me,"",m),Re=o.useRef(null),He=o.useRef(null),Ne=o.useRef(null),ke=o.useRef(null),xe=(0,r.c)(t,He),{value:ze,open:Ie,activeIndex:Ae,toggleOpen:Le,setValue:Pe,handleSelection:We,handleClearValue:Fe,setActiveIndex:Me}=(e=>{let{defaultOpen:t,onClose:n,onOpenChange:i,open:r,value:c,defaultValue:u=[],multiple:d,onUpdate:h}=e;const[p,v]=(0,s.z)(c,u,h),[m,f]=o.useState(),g=(0,a.Z)({defaultOpen:t,onClose:n,onOpenChange:i,open:r}),{toggleOpen:b}=g,C=(0,l._T)(g,["toggleOpen"]),E=o.useCallback((e=>{if(!p.includes(e.value)){const t=[e.value];v(t)}b(!1)}),[p,v,b]),w=o.useCallback((e=>{const t=p.includes(e.value)?p.filter((t=>t!==e.value)):[...p,e.value];v(t)}),[p,v]),T=o.useCallback((e=>{d?w(e):E(e)}),[d,E,w]),y=o.useCallback((()=>{v([])}),[v]);return Object.assign({value:p,activeIndex:m,setValue:v,handleSelection:T,handleClearValue:y,toggleOpen:b,setActiveIndex:f},C)})({onUpdate:n,value:U,defaultValue:$,defaultOpen:Q,multiple:he,open:ee,onClose:be,onOpenChange:v});o.useEffect((()=>{!Ie&&ve&&ye&&setTimeout((()=>{Oe("")}),300)}),[Ie,ve,Oe,ye]);const Ye=function(e){const{filter:t="",filterable:n,filterOption:i}=e,s=o.useMemo((()=>Z(e.options)?e.options:T(e.options)),[e.options]),r=o.useMemo((()=>n?N({options:s,filter:t,filterOption:i}):s),[t,n,i,s]);return s[f.YV].filteredOptions=r,s}({options:e.options||O(e.children),filter:Se,filterable:ve,filterOption:P}),Be=function(e){if(!Z(e))throw Error("You should use options generated by useSelectOptions hook");return J()(e,[f.YV,"filteredOptions"])}(Ye),Ge=((e,t,n)=>{if(0===t.length)return null;const i=e.filter((e=>!w(e))),s=t.reduce(((e,t)=>{const n=i.find((e=>e.value===t));return e.push(n||{value:t}),e}),[]);return n?s.map(((e,t)=>o.createElement(o.Fragment,{key:e.value},n(e,t)))):s.map((e=>S(e))).join(", ")})(Ye,ze,x),_e=Be.length>=ae,{errorMessage:Ve,errorPlacement:De,validationState:je}=(0,h.II)({error:le,errorMessage:e.errorMessage,errorPlacement:e.errorPlacement||"outside",validationState:e.validationState}),qe=(0,c.u)(),Ke="invalid"===je,Ue=Ke&&Boolean(Ve)&&"outside"===De,Je=Ke&&Boolean(Ve)&&"inside"===De,Ze=o.useCallback((e=>{var t,n;if(e&&!(null===e||void 0===e?void 0:e.disabled)&&!("label"in e)){if(he){const e=null===(t=null===ke||void 0===ke?void 0:ke.current)||void 0===t?void 0:t.getActiveItem();null===(n=Ne.current)||void 0===n||n.focus(),"number"===typeof e&&setTimeout((()=>{var t;null===(t=null===ke||void 0===ke?void 0:ke.current)||void 0===t||t.activateItem(e,!0)}),50)}We(e)}}),[We,he]),Xe=o.useCallback((e=>{var t;[i.V.ENTER,i.V.SPACEBAR].includes(e.key)&&Ie&&(e.preventDefault(),e.key===i.V.SPACEBAR&&Ze((e=>{var t;const n=H(e),o=null===(t=null===e||void 0===e?void 0:e.current)||void 0===t?void 0:t.getActiveItem();return"number"===typeof o?n[o]:void 0})(ke))),[i.V.ARROW_DOWN,i.V.ARROW_UP].includes(e.key)&&!Ie&&(e.preventDefault(),Le()),null===(t=null===ke||void 0===ke?void 0:ke.current)||void 0===t||t.onKeyDown(e)}),[Ze,Ie,Le]),$e=o.useCallback((e=>{var t;null===(t=null===ke||void 0===ke?void 0:ke.current)||void 0===t||t.onKeyDown(e)}),[]),Qe=o.useCallback((e=>{var t;if(e){const n=R(e,H(ke));"number"===typeof n&&-1!==n&&(null===(t=null===ke||void 0===ke?void 0:ke.current)||void 0===t||t.activateItem(n,!0))}}),[]);K({onChange:Qe,open:Ie,disabled:ve}),o.useEffect((()=>{var e;Ie&&((e=>{var t;const n=H(e);null===(t=null===e||void 0===e?void 0:e.current)||void 0===t||t.activateItem(E.a.findNextIndex(n,0,1),!1)})(ke),ve&&(null===(e=Ne.current)||void 0===e||e.focus()))}),[Ie,ve]);const et=Object.assign({},"max"===ie&&{width:ie}),tt={};"number"===typeof ie&&(tt.width=ie);const nt=o.useCallback((()=>Le(!1)),[Le]),{onFocus:ot,onBlur:it}=e,{focusWithinProps:st}=(0,u.L)({onFocusWithin:ot,onBlurWithin:o.useCallback((e=>{null===it||void 0===it||it(e),nt()}),[nt,it])}),rt=(0,c.u)(),lt=null!==Ce&&void 0!==Ce?Ce:rt,at="select-popup-".concat(lt);return o.createElement("div",Object.assign({ref:Re,className:(0,f.sj)(et,M)},st,{style:tt}),o.createElement(V.Y,{toggleOpen:Le,hasClear:ge,clearValue:Fe,ref:xe,className:Y,qa:j,view:ce,size:ue,pin:de,label:te,placeholder:ne,selectedOptionsContent:Ge,isErrorVisible:Ke,errorMessage:Je?Ve:void 0,open:Ie,disabled:pe,onKeyDown:Xe,renderControl:g,value:ze,popupId:at,selectId:lt,activeIndex:Ae,hasCounter:he&&Ee,renderCounter:we,title:Te}),o.createElement(D.h,{ref:Re,className:G,controlRef:He,width:se,open:Ie,handleClose:nt,disablePortal:fe,virtualized:_e,mobile:ye,placement:re,onAfterClose:ve?()=>{Oe("")}:void 0},I({renderFilter:()=>ve?o.createElement(C,{ref:Ne,size:ue,value:Se,placeholder:oe,onChange:Oe,onKeyDown:$e,renderFilter:b}):null,renderList:()=>Be.length||e.loading?o.createElement(B,{ref:ke,size:ue,value:ze,mobile:ye,flattenOptions:Be,multiple:he,virtualized:_e,onOptionClick:Ze,renderOption:y,renderOptionGroup:k,getOptionHeight:A,getOptionGroupHeight:L,loading:e.loading,onLoadMore:e.onLoadMore,id:at,onChangeActive:Me}):o.createElement(_,{filter:Se,renderEmptyOptions:z})})),o.createElement(d.Z,{errorMessage:Ue?Ve:null,errorMessageId:qe}),o.createElement(q,{name:W,value:ze,disabled:pe,form:F,onReset:Pe}))}));$.Option=e=>null,$.OptionGroup=e=>null},24119:(e,t,n)=>{n.d(t,{Y:()=>w});var o=n(68963),i=n(93316),s=n(57542),r=n(85198),l=n.n(r),a=n(89646),c=n(88776),u=n(68330),d=n(95868),h=n(54973);const p=JSON.parse('{"label_clear":"Clear","label_show-error-info":"Show popup with error info"}'),v=JSON.parse('{"label_clear":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c","label_show-error-info":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u043e\u043f\u0430\u043f \u0441 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0435\u0439 \u043e\u0431 \u043e\u0448\u0438\u0431\u043a\u0435"}'),m=(0,h.e)({en:p,ru:v},"Select");var f=n(77280);const g=e=>{const{size:t,onClick:n,onMouseEnter:i,onMouseLeave:s,renderIcon:r}=e,l=r?r():o.createElement(c.J,{className:(0,d.Hu)("clear"),data:f.Z});return o.createElement("button",{className:(0,d.Hu)({size:t}),"aria-label":m("label_clear"),onClick:n,onMouseEnter:i,onMouseLeave:s,"data-qa":d.Gd.CLEAR,type:"button"},l)};g.displayName="SelectClear";var b=n(10288);const C=(0,n(36951).Ge)("select-counter");function E(e){let{count:t,size:n,disabled:i}=e;return o.createElement("div",{className:C({size:n})},o.createElement(b.x,{variant:"xl"===n?"body-2":"body-1",color:i?"hint":"primary",className:C("text")},t))}const w=o.forwardRef(((e,t)=>{const{toggleOpen:n,clearValue:r,onKeyDown:h,renderControl:p,view:v,size:f,pin:b,selectedOptionsContent:C,className:w,qa:T,label:y,placeholder:S,isErrorVisible:O,errorMessage:R,open:H,disabled:N,value:k,hasClear:x,popupId:z,selectId:I,activeIndex:A,renderCounter:L,hasCounter:P,title:W}=e,F=Boolean(C),M=Boolean(S&&!F),Y=Array.isArray(k)&&!l()(k.filter(Boolean)),B=(0,a.u)(),[G,_]=o.useState(!1),V={open:H,size:f,pin:b,disabled:N,error:O,"has-clear":x,"no-active":G,"has-value":Y},D={open:H,size:f,view:v,pin:b,disabled:N,error:O},j=o.useCallback((e=>{e&&e.currentTarget!==document.activeElement&&"focus"in e.currentTarget&&e.currentTarget.focus(),n()}),[n]),q=o.useCallback((()=>{_(!0)}),[]),K=o.useCallback((()=>{_(!1)}),[]),U=o.useCallback((()=>{_(!1),r()}),[r]),J=()=>{if(!P)return null;const e=Number(null===k||void 0===k?void 0:k.length)||0,t=o.createElement(E,{count:e,size:f,disabled:N});return L?L(t,{count:e,size:f,disabled:N}):t},Z=e=>{const t=!(null===k||void 0===k?void 0:k[0]);return!x||!r||t||N?null:o.createElement(g,{size:f,onClick:U,onMouseEnter:q,onMouseLeave:K,renderIcon:e.renderIcon})};return p?p({onKeyDown:h,onClear:r,onClick:j,renderClear:e=>Z(e),renderCounter:J,ref:t,open:Boolean(H),popupId:z,selectId:I,activeIndex:A},{value:k}):o.createElement(o.Fragment,null,o.createElement("div",{className:(0,d.e9)(V),role:"group"},o.createElement("button",{id:I,ref:t,role:"combobox","aria-controls":z,className:(0,d.JW)(D,w),"aria-haspopup":"listbox","aria-expanded":H,"aria-activedescendant":void 0===A?void 0:"".concat(z,"-item-").concat(A),disabled:N,onClick:j,onKeyDown:h,type:"button","data-qa":T,title:W},y&&o.createElement("span",{className:(0,d.e9)("label")},y),M&&o.createElement("span",{className:(0,d.e9)("placeholder")},S),F&&o.createElement("span",{className:(0,d.e9)("option-text")},C)),J(),Z({}),R&&o.createElement(u.J,{content:R,tooltipId:B},o.createElement("button",{"aria-label":m("label_show-error-info"),"aria-describedby":B,className:(0,d.e9)("error-icon")},o.createElement(c.J,{data:i.Z,size:"s"===f?12:16}))),o.createElement(c.J,{className:(0,d.e9)("chevron-icon",{disabled:N}),data:s.Z,"aria-hidden":"true"})))}));w.displayName="SelectControl"},58414:(e,t,n)=>{n.d(t,{h:()=>S});var o=n(68963),i=n(44920),s=n(74100),r=n(57107),l=n(95097),a=n(66573);var c=n(84584);var u=n(36951);const d=(0,u.Ge)("sheet");class h{constructor(e,t){this.x=e,this.y=t,this.timeStamp=Date.now()}}class p{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:5;this.points=[],this.pointsLen=e,this.clear()}clear(){this.points=new Array(this.pointsLen)}addMovement(e){let{x:t,y:n}=e;this.points.pop(),this.points.unshift(new h(t,n))}getYAcceleration(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;const t=this.points[0],n=this.points[e];return t&&n?(t.y-n.y)/Math.pow(t.timeStamp-n.timeStamp,2):0}}let v=[];class m extends o.Component{constructor(){super(...arguments),this.veilRef=o.createRef(),this.sheetRef=o.createRef(),this.sheetTopRef=o.createRef(),this.sheetContentRef=o.createRef(),this.sheetInnerContentRef=o.createRef(),this.sheetTitleRef=o.createRef(),this.velocityTracker=new p,this.observer=null,this.resizeWindowTimer=null,this.state={startScrollTop:0,startY:0,deltaY:0,prevSheetHeight:0,swipeAreaTouched:!1,contentTouched:!1,veilTouched:!1,isAnimating:!1,inWindowResizeScope:!1},this.setStyles=e=>{let{status:t,deltaHeight:n=0}=e;if(!this.sheetRef.current||!this.veilRef.current)return;const o=this.sheetHeight-n,i="showing"===t?"translate3d(0, -".concat(o,"px, 0)"):"translate3d(0, 0, 0)";let s=0;"showing"===t&&(s=0===n?1:o/this.sheetHeight),this.veilRef.current.style.opacity=String(s),this.sheetRef.current.style.transform=i},this.getResultHeight=e=>{const t=.9*window.innerHeight-this.sheetTopHeight;return e>=t?t:e},this.show=()=>{this.setState({isAnimating:!0},(()=>{this.setStyles({status:"showing"}),this.setHash()}))},this.hide=()=>{this.setState({isAnimating:!0},(()=>{this.setStyles({status:"hiding"}),this.removeHash()}))},this.onSwipeAreaTouchStart=e=>{this.velocityTracker.clear(),this.setState({startY:e.nativeEvent.touches[0].clientY,swipeAreaTouched:!0})},this.onContentTouchStart=e=>{this.props.allowHideOnContentScroll&&!this.state.swipeAreaTouched&&(this.velocityTracker.clear(),this.setState({startY:e.nativeEvent.touches[0].clientY,startScrollTop:this.sheetScrollTop,contentTouched:!0}))},this.onSwipeAriaTouchMove=e=>{const t=e.nativeEvent.touches[0].clientY-this.state.startY;this.velocityTracker.addMovement({x:e.nativeEvent.touches[0].clientX,y:e.nativeEvent.touches[0].clientY}),this.setState({deltaY:t}),t<=0||this.setStyles({status:"showing",deltaHeight:t})},this.onContentTouchMove=e=>{if(!this.props.allowHideOnContentScroll)return;if(!this.state.startY)return void this.onContentTouchStart(e);const{startScrollTop:t,swipeAreaTouched:n}=this.state;if(n||this.sheetScrollTop>0||t>0&&t!==this.sheetScrollTop)return;const o=e.nativeEvent.touches[0].clientY-this.state.startY;this.velocityTracker.addMovement({x:e.nativeEvent.touches[0].clientX,y:e.nativeEvent.touches[0].clientY}),this.setState({deltaY:o}),o<=0||this.setStyles({status:"showing",deltaHeight:o})},this.onTouchEndAction=e=>{const t=this.velocityTracker.getYAcceleration();this.sheetHeight<=e?this.props.hideSheet():e>50&&t<=.08&&t>=-.02||t>.08?this.hide():0!==e&&this.show()},this.onSwipeAriaTouchEnd=()=>{const{deltaY:e}=this.state;this.onTouchEndAction(e),this.setState({startY:0,deltaY:0,swipeAreaTouched:!1})},this.onContentTouchEnd=()=>{const{deltaY:e,swipeAreaTouched:t}=this.state;this.props.allowHideOnContentScroll&&!t&&(this.onTouchEndAction(e),this.setState({startY:0,deltaY:0,contentTouched:!1}))},this.onVeilClick=()=>{this.setState({veilTouched:!0}),this.hide()},this.onVeilTransitionEnd=()=>{this.setState({isAnimating:!1}),"0"===this.veilOpacity&&this.props.hideSheet()},this.onContentTransitionEnd=e=>{"height"===e.propertyName&&this.sheetContentRef.current&&(this.sheetContentRef.current.style.transition="none")},this.onResizeWindow=()=>{this.setState({inWindowResizeScope:!0}),this.resizeWindowTimer&&window.clearTimeout(this.resizeWindowTimer),this.resizeWindowTimer=window.setTimeout((()=>{this.onResize()}),25)},this.onResize=()=>{if(!this.sheetRef.current||!this.sheetContentRef.current)return;const e=this.sheetFullHeight;if(e===this.state.prevSheetHeight&&!this.state.inWindowResizeScope)return;const t=this.getResultHeight(e);this.sheetContentRef.current.style.transition=this.state.prevSheetHeight>e?"height 0s ease ".concat("0.3s"):"none",this.sheetContentRef.current.style.height="".concat(t-this.sheetTopHeight,"px"),this.sheetRef.current.style.transform="translate3d(0, -".concat(t,"px, 0)"),this.setState({prevSheetHeight:e,inWindowResizeScope:!1})}}componentDidMount(){this.addListeners(),this.show();const e=this.getResultHeight(this.sheetFullHeight);this.setInitialStyles(e),this.setState({prevSheetHeight:e})}componentDidUpdate(e){const{visible:t,location:n}=this.props;!e.visible&&t&&this.show(),(e.visible&&!t||this.shouldClose(e))&&this.hide(),e.location.pathname!==n.pathname&&(v=[])}componentWillUnmount(){this.removeListeners()}render(){const{content:e,contentClassName:t,swipeAreaClassName:n,hideTopBar:i,title:s}=this.props,{deltaY:r,swipeAreaTouched:l,contentTouched:a,veilTouched:c,isAnimating:u,inWindowResizeScope:h}=this.state,p={"with-transition":!r||c},v={"with-transition":!h&&p["with-transition"]},m={"without-scroll":r>0&&a||l};return o.createElement(o.Fragment,null,o.createElement("div",{ref:this.veilRef,className:d("veil",p),onClick:u?void 0:this.onVeilClick,onTransitionEnd:this.onVeilTransitionEnd,role:"presentation"}),o.createElement("div",{ref:this.sheetRef,className:d("sheet",v),role:"dialog","aria-modal":"true","aria-label":s},!i&&o.createElement("div",{ref:this.sheetTopRef,className:d("sheet-top")},o.createElement("div",{className:d("sheet-top-resizer")})),o.createElement("div",{className:d("sheet-swipe-area",n),onTouchStart:this.onSwipeAreaTouchStart,onTouchMove:this.onSwipeAriaTouchMove,onTouchEnd:this.onSwipeAriaTouchEnd}),o.createElement("div",{ref:this.sheetContentRef,className:d("sheet-content",m,t),onTouchStart:this.onContentTouchStart,onTouchMove:this.onContentTouchMove,onTouchEnd:this.onContentTouchEnd,onTransitionEnd:this.onContentTransitionEnd},s&&o.createElement("div",{ref:this.sheetTitleRef,className:d("sheet-content-title")},s),o.createElement("div",{ref:this.sheetInnerContentRef},e))))}get veilOpacity(){var e;return(null===(e=this.veilRef.current)||void 0===e?void 0:e.style.opacity)||0}get sheetTopHeight(){var e;return(null===(e=this.sheetTopRef.current)||void 0===e?void 0:e.getBoundingClientRect().height)||0}get sheetHeight(){var e;return(null===(e=this.sheetRef.current)||void 0===e?void 0:e.getBoundingClientRect().height)||0}get innerContentHeight(){var e;return(null===(e=this.sheetInnerContentRef.current)||void 0===e?void 0:e.getBoundingClientRect().height)||0}get sheetTitleHeight(){var e;return(null===(e=this.sheetTitleRef.current)||void 0===e?void 0:e.getBoundingClientRect().height)||0}get sheetScrollTop(){var e;return(null===(e=this.sheetContentRef.current)||void 0===e?void 0:e.scrollTop)||0}get sheetFullHeight(){return this.sheetTitleHeight+this.innerContentHeight+this.sheetTopHeight}setInitialStyles(e){this.sheetContentRef.current&&this.sheetInnerContentRef.current&&(this.sheetContentRef.current.style.height="".concat(e,"px"))}addListeners(){window.addEventListener("resize",this.onResizeWindow),this.sheetInnerContentRef.current&&(this.observer=new ResizeObserver((()=>{this.state.inWindowResizeScope||this.onResize()})),this.observer.observe(this.sheetInnerContentRef.current))}removeListeners(){window.removeEventListener("resize",this.onResizeWindow),this.observer&&this.observer.disconnect()}setHash(){const{id:e,platform:t,location:n,history:o}=this.props;if(t===a.t.BROWSER)return;const i=Object.assign(Object.assign({},n),{hash:e});switch(t){case a.t.IOS:n.hash&&v.push(n.hash),o.replace(i);break;case a.t.ANDROID:o.push(i)}}removeHash(){var e;const{id:t,platform:n,location:o,history:i}=this.props;if(n!==a.t.BROWSER&&o.hash==="#".concat(t))switch(n){case a.t.IOS:i.replace(Object.assign(Object.assign({},o),{hash:null!==(e=v.pop())&&void 0!==e?e:""}));break;case a.t.ANDROID:i.goBack()}}shouldClose(e){const{id:t,platform:n,location:o,history:i}=this.props;return n!==a.t.BROWSER&&"POP"===i.action&&e.location.hash!==o.hash&&o.hash!=="#".concat(t)}}m.defaultProps={id:"sheet",allowHideOnContentScroll:!0};const f=function(e){var t;const n=(i=e).displayName||i.name||"Component";var i;return(t=class extends o.Component{render(){return o.createElement(e,Object.assign({},this.props,{mobile:this.context.mobile,platform:this.context.platform,useHistory:this.context.useHistory,useLocation:this.context.useLocation}))}}).displayName="withMobile(".concat(n,")"),t.contextType=c.z,t}(function(e){const t=t=>{const{useHistory:n,useLocation:i}=t,s=(0,l._T)(t,["useHistory","useLocation"]);return o.createElement(e,Object.assign({},s,{history:n(),location:i()}))},n=e.displayName||e.name||"Component";return t.displayName="withRouterWrapper(".concat(n,")"),t}(m)),g=e=>{let{children:t,onClose:n,visible:i,id:l,title:a,className:c,contentClassName:u,swipeAreaClassName:h,allowHideOnContentScroll:p,hideTopBar:v,qa:m}=e;const[g,b]=o.useState(i),[C,E]=o.useState(i);(0,s.y)({enabled:g}),!C&&i&&b(!0),i!==C&&E(i);return g?o.createElement(r.h,null,o.createElement("div",{"data-qa":m,className:d(null,c)},o.createElement(f,{id:l,content:t,contentClassName:u,swipeAreaClassName:h,title:a,visible:i,allowHideOnContentScroll:p,hideTopBar:v,hideSheet:()=>{n&&n(),b(!1)}}))):null};var b=n(95868);const C=e=>e-2*b.YF,E=(e,t,n)=>{let o=t;return o="number"===typeof e?e:"fit"===e?C(t):((e,t)=>t?e>b.T7?e:b.T7:C(e))(t,n),"".concat(o,"px")},w=e=>{const{width:t,disablePortal:n,virtualized:o}=e;return[{name:"sameWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:e=>{let{state:n,name:i}=e;var s;if(null===(s=n.modifiersData["".concat(i,"#persistent")])||void 0===s?void 0:s.skip)return;const r=E(t,n.rects.reference.width,o);"number"!==typeof t&&"fit"!==t?(n.styles.popper.minWidth=r,n.styles.popper.width=void 0):(n.styles.popper.minWidth=r,n.styles.popper.width=r),n.styles.popper.maxWidth="max(90vw, ".concat(C(n.rects.reference.width),"px)"),n.modifiersData["".concat(i,"#persistent")]={skip:"number"!==typeof t}},effect:e=>{let{state:n,name:i}=e;var s;if(null===(s=n.modifiersData["".concat(i,"#persistent")])||void 0===s?void 0:s.skip)return;const r=E(t,n.elements.reference.offsetWidth,o);"number"!==typeof t&&"fit"!==t?n.elements.popper.style.minWidth=r:(n.elements.popper.style.minWidth=r,n.elements.popper.style.width=r),n.elements.popper.style.maxWidth="max(90vw, ".concat(n.elements.reference.offsetWidth,"px)")}},{name:"preventOverflow",options:{padding:10,altBoundary:n,altAxis:!0}}]},T=(0,u.Ge)("select-popup"),y=["bottom-start","bottom-end","top-start","top-end"],S=o.forwardRef(((e,t)=>{let{handleClose:n,onAfterClose:s,width:r,open:l,placement:a=y,controlRef:c,children:u,className:d,disablePortal:h,virtualized:p,mobile:v,id:m}=e;return v?o.createElement(g,{qa:b.Gd.SHEET,className:d,visible:Boolean(l),onClose:n},u):o.createElement(i.G,{contentClassName:T(null,d),qa:b.Gd.POPUP,anchorRef:t,placement:a,offset:[b.YF,b.YF],open:l,onClose:n,disablePortal:h,restoreFocus:!0,restoreFocusRef:c,modifiers:w({width:r,disablePortal:h,virtualized:p}),id:m,onTransitionExited:s},u)}));S.displayName="SelectPopup"},95868:(e,t,n)=>{n.d(t,{Gd:()=>f,Hu:()=>a,JW:()=>r,T7:()=>p,V_:()=>l,YF:()=>h,YV:()=>g,_7:()=>m,_X:()=>c,e9:()=>s,el:()=>u,gX:()=>v,rn:()=>d,sj:()=>i});var o=n(36951);const i=(0,o.Ge)("select"),s=(0,o.Ge)("select-control"),r=(0,o.Ge)("select-control__button"),l=(0,o.Ge)("select-list"),a=(0,o.Ge)("select-clear"),c={s:28,m:28,l:32,xl:36},u=32,d=5,h=1,p=100,v=2e3,m=50,f={LIST:"select-list",POPUP:"select-popup",SHEET:"select-sheet",CLEAR:"select-clear",FILTER_INPUT:"select-filter-input"},g=Symbol("flatten")},38581:(e,t,n)=>{n.d(t,{L:()=>s});var o=n(68963);class i{constructor(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};var o,i;this.nativeEvent=t,this.target=null!==(o=n.target)&&void 0!==o?o:t.target,this.currentTarget=null!==(i=n.currentTarget)&&void 0!==i?i:t.currentTarget,this.relatedTarget=t.relatedTarget,this.bubbles=t.bubbles,this.cancelable=t.cancelable,this.defaultPrevented=t.defaultPrevented,this.eventPhase=t.eventPhase,this.isTrusted=t.isTrusted,this.timeStamp=t.timeStamp,this.type=e}isDefaultPrevented(){return this.nativeEvent.defaultPrevented}preventDefault(){this.defaultPrevented=!0,this.nativeEvent.preventDefault()}stopPropagation(){this.nativeEvent.stopPropagation(),this.isPropagationStopped=()=>!0}isPropagationStopped(){return!1}persist(){}}function s(e){const{onFocusWithin:t,onBlurWithin:n,onFocusWithinChange:s,isDisabled:r}=e,l=o.useRef(!1),a=o.useCallback((e=>{l.current||document.activeElement!==e.target||(l.current=!0,t&&t(e),s&&s(!0))}),[t,s]),c=o.useCallback((e=>{l.current&&(l.current=!1,n&&n(e),s&&s(!1))}),[n,s]),{onBlur:u,onFocus:d}=function(e){let{onFocus:t,onBlur:n,isDisabled:s}=e;const r=o.useRef(!1),l=o.useRef(null);o.useEffect((()=>{if(s)return;const e=function(){r.current=!1},t=function(e){if(!r.current&&l.current){const t=new FocusEvent("blur",Object.assign(Object.assign({},e),{relatedTarget:e.target,bubbles:!1,cancelable:!1}));n(new i("blur",t,{target:l.current,currentTarget:l.current})),l.current=null}};return window.addEventListener("focus",e,{capture:!0}),window.addEventListener("focusin",t),()=>{window.removeEventListener("focus",e,{capture:!0}),window.removeEventListener("focusin",t)}}),[s,n]);const a=o.useCallback((e=>{null!==e.relatedTarget&&e.relatedTarget!==document.body&&e.relatedTarget!==document||(n(e),l.current=null)}),[n]),c=function(e){const t=o.useRef({isFocused:!1,observer:null});return o.useEffect((()=>{const e=t.current;return()=>{e.observer&&(e.observer.disconnect(),e.observer=null)}}),[]),o.useCallback((n=>{const o=n.target;if(o instanceof HTMLButtonElement||o instanceof HTMLInputElement||o instanceof HTMLTextAreaElement||o instanceof HTMLSelectElement){t.current.isFocused=!0;const n=n=>{t.current.isFocused=!1,o.disabled&&(null===e||void 0===e||e(new i("blur",n))),t.current.observer&&(t.current.observer.disconnect(),t.current.observer=null)};o.addEventListener("focusout",n,{once:!0});const s=new MutationObserver((()=>{if(t.current.isFocused&&o.disabled){s.disconnect(),t.current.observer=null;const e=o===document.activeElement?null:document.activeElement;o.dispatchEvent(new FocusEvent("blur",{relatedTarget:e})),o.dispatchEvent(new FocusEvent("focusout",{relatedTarget:e,bubbles:!0}))}}));s.observe(o,{attributes:!0,attributeFilter:["disabled"]}),t.current.observer=s}}),[e])}(n),u=o.useCallback((e=>{r.current=!0,l.current=e.target,c(e),t(e)}),[c,t]);return{onBlur:a,onFocus:u}}({onFocus:a,onBlur:c,isDisabled:r});return r?{focusWithinProps:{onFocus:void 0,onBlur:void 0}}:{focusWithinProps:{onFocus:d,onBlur:u}}}},34505:(e,t,n)=>{n.d(t,{Z:()=>s});var o=n(68963),i=n(56407);const s=e=>{var t;const{onOpenChange:n,onClose:s}=e,r=o.useCallback((e=>{null===n||void 0===n||n(e),!1===e&&s&&s()}),[n,s]),[l,a]=(0,i.z)(e.open,null!==(t=e.defaultOpen)&&void 0!==t&&t,r),c=o.useCallback((e=>{a("boolean"===typeof e?e:!l)}),[l,a]);return{open:l,toggleOpen:c}}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/321.9a9868e1.chunk.js b/ydb/core/viewer/monitoring/static/js/321.9a9868e1.chunk.js new file mode 100644 index 000000000000..ef84dbfd4154 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/321.9a9868e1.chunk.js @@ -0,0 +1,2 @@ +/*! For license information please see 321.9a9868e1.chunk.js.LICENSE.txt */ +(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[321],{66307:(t,e,i)=>{"use strict";i.d(e,{a:()=>a,p:()=>o});var n=i(31329);const r=JSON.parse('{"common":{"tooltip-sum":"Sum","tooltip-rest":"Rest"},"chartkit":{"error":"Error","legend-series-hide":"Hide all lines","legend-series-show":"Show all lines","tooltip-point-format-size":"Size","tooltip-sum":"Sum","tooltip-rest":"Rest","error-incorrect-key-value-intro":"Incorrect notation of an object passed to","error-incorrect-key":", object keys must be convertible to integer","error-incorrect-value":", object values must be a string or a function which returns a string"},"chartkit-table":{"message-no-data":"No data","paginator-rows":"Rows"},"chartkit-ymap-legend":{"label-more":"Show more {{count}}","label-hide":"Hide","label-heatmap":"Heatmap"},"error":{"label_no-data":"No data","label_unknown-plugin":"Unknown plugin type \\"{{type}}\\"","label_unknown-error":"Unknown error","label_invalid-axis-category-data-point":"It seems you are trying to use inappropriate data type for \\"{{key}}\\" value in series \\"{{seriesName}}\\" for axis with type \\"category\\". Strings and numbers are allowed.","label_invalid-axis-datetime-data-point":"It seems you are trying to use inappropriate data type for \\"{{key}}\\" value in series \\"{{seriesName}}\\" for axis with type \\"datetime\\". Only numbers are allowed.","label_invalid-axis-linear-data-point":"It seems you are trying to use inappropriate data type for \\"{{key}}\\" value in series \\"{{seriesName}}\\" for axis with type \\"linear\\". Numbers and nulls are allowed.","label_invalid-pie-data-value":"It seems you are trying to use inappropriate data type for \\"value\\" value. Only numbers are allowed.","label_invalid-series-type":"It seems you haven\'t defined \\"series.type\\" property, or defined it incorrectly. Available values: [{{types}}].","label_invalid-series-property":"It seems you are trying to use inappropriate value for \\"{{key}}\\", or defined it incorrectly. Available values: [{{values}}].","label_invalid-treemap-redundant-value":"It seems you are trying to set \\"value\\" for container node. Check node with this properties: { id: \\"{{id}}\\", name: \\"{{name}}\\" }","label_invalid-treemap-missing-value":"It seems you are trying to use node without \\"value\\". Check node with this properties: { id: \\"{{id}}\\", name: \\"{{name}}\\" }","label_invalid-y-axis-index":"It seems you are trying to use inappropriate index for Y axis: \\"{{index}}\\""},"highcharts":{"reset-zoom-title":"Reset zoom","decimal-point":".","thousands-sep":" ","Mon":"Mon","Tue":"Tue","Wed":"Wed","Thu":"Thu","Fri":"Fri","Sat":"Sat","Sun":"Sun","Jan":"Jan","January":"January","Feb":"Feb","February":"February","Mar":"Mar","March":"March","Apr":"Apr","April":"April","May":"May","Jun":"Jun","June":"June","Jul":"Jul","July":"July","Aug":"Aug","August":"August","Sep":"Sep","September":"September","Oct":"Oct","October":"October","Nov":"Nov","November":"November","Dec":"Dec","December":"December"}}'),s=JSON.parse('{"common":{"tooltip-sum":"\u0421\u0443\u043c\u043c\u0430","tooltip-rest":"\u041e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435"},"chartkit":{"error":"\u041e\u0448\u0438\u0431\u043a\u0430","legend-series-hide":"\u0421\u043a\u0440\u044b\u0442\u044c \u0432\u0441\u0435 \u043b\u0438\u043d\u0438\u0438","legend-series-show":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0441\u0435 \u043b\u0438\u043d\u0438\u0438","loading":"\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430","tooltip-point-format-size":"\u0420\u0430\u0437\u043c\u0435\u0440","tooltip-sum":"\u0421\u0443\u043c\u043c\u0430","tooltip-rest":"\u041e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435","error-incorrect-key-value-intro":"\u041d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u0430\u043a \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432","error-incorrect-key":", \u043a\u043b\u044e\u0447\u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u043c\u044b \u0432 \u0446\u0435\u043b\u043e\u0435 \u0447\u0438\u0441\u043b\u043e","error-incorrect-value":", \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043b\u0438\u0431\u043e \u0441\u0442\u0440\u043e\u043a\u0430, \u043b\u0438\u0431\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0443"},"chartkit-table":{"message-no-data":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445","paginator-rows":"\u0421\u0442\u0440\u043e\u043a\u0438"},"chartkit-ymap-legend":{"label-more":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0435\u0449\u0451 {{count}}","label-hide":"\u0421\u0432\u0435\u0440\u043d\u0443\u0442\u044c","label-heatmap":"\u0422\u0435\u043f\u043b\u043e\u0432\u0430\u044f \u043a\u0430\u0440\u0442\u0430"},"error":{"label_no-data":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445","label_unknown-plugin":"\u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u0442\u0438\u043f \u043f\u043b\u0430\u0433\u0438\u043d\u0430 \\"{{type}}\\"","label_unknown-error":"\u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430","label_invalid-axis-category-data-point":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \\"{{key}}\\" \u0432 \u0441\u0435\u0440\u0438\u0438 \\"{{seriesName}}\\" \u0434\u043b\u044f \u043e\u0441\u0438 \u0441 \u0442\u0438\u043f\u043e\u043c \\"category\\". \u0414\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0442\u0440\u043e\u043a \u0438 \u0447\u0438\u0441\u0435\u043b.","label_invalid-axis-datetime-data-point":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \\"{{key}}\\" \u0432 \u0441\u0435\u0440\u0438\u0438 \\"{{seriesName}}\\" \u0434\u043b\u044f \u043e\u0441\u0438 \u0441 \u0442\u0438\u043f\u043e\u043c \\"datetime\\". \u0414\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0447\u0438\u0441\u0435\u043b.","label_invalid-axis-linear-data-point":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \\"{{key}}\\" \u0432 \u0441\u0435\u0440\u0438\u0438 \\"{{seriesName}}\\" \u0434\u043b\u044f \u043e\u0441\u0438 \u0441 \u0442\u0438\u043f\u043e\u043c \\"linear\\". \u0414\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0447\u0438\u0441\u0435\u043b \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 null.","label_invalid-pie-data-value":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \\"value\\". \u0414\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0447\u0438\u0441\u0435\u043b.","label_invalid-series-type":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \\"series.type\\" \u0438\u043b\u0438 \u0443\u043a\u0430\u0437\u0430\u043b\u0438 \u0435\u0433\u043e \u043d\u0435\u0432\u0435\u0440\u043d\u043e. \u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f: [{{types}}].","label_invalid-series-property":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \\"{{key}}\\", \u0438\u043b\u0438 \u0443\u043a\u0430\u0437\u0430\u043b\u0438 \u0435\u0433\u043e \u043d\u0435\u0432\u0435\u0440\u043d\u043e. \u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f: [{{values}}].","label_invalid-treemap-redundant-value":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \\"value\\" \u0434\u043b\u044f \u0443\u0437\u043b\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0433\u043e \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430. \u041f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u0443\u0437\u0435\u043b \u0441 \u044d\u0442\u0438\u043c\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438: { id: \\"{{id}}\\", name: \\"{{name}}\\" }","label_invalid-treemap-missing-value":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0443\u0437\u0435\u043b \u0431\u0435\u0437 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \\"value\\". \u041f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u0443\u0437\u0435\u043b \u0441 \u044d\u0442\u0438\u043c\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438: { id: \\"{{id}}\\", name: \\"{{name}}\\" }","label_invalid-y-axis-index":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441 \u0434\u043b\u044f \u043e\u0441\u0438 Y: \\"{{index}}\\""},"highcharts":{"reset-zoom-title":"\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435","decimal-point":",","thousands-sep":" ","Mon":"\u041f\u043d","Tue":"\u0412\u0442","Wed":"\u0421\u0440","Thu":"\u0427\u0442","Fri":"\u041f\u0442","Sat":"\u0421\u0431","Sun":"\u0412\u0441","Jan":"\u042f\u043d\u0432","January":"\u042f\u043d\u0432\u0430\u0440\u044c","Feb":"\u0424\u0435\u0432","February":"\u0424\u0435\u0432\u0440\u0430\u043b\u044c","Mar":"\u041c\u0430\u0440","March":"\u041c\u0430\u0440\u0442","Apr":"\u0410\u043f\u0440","April":"\u0410\u043f\u0440\u0435\u043b\u044c","May":"\u041c\u0430\u0439","Jun":"\u0418\u044e\u043d","June":"\u0418\u044e\u043d\u044c","Jul":"\u0418\u044e\u043b","July":"\u0418\u044e\u043b\u044c","Aug":"\u0410\u0432\u0433","August":"\u0410\u0432\u0433\u0443\u0441\u0442","Sep":"\u0421\u0435\u043d","September":"\u0421\u0435\u043d\u0442\u044f\u0431\u0440\u044c","Oct":"\u041e\u043a\u0442","October":"\u041e\u043a\u0442\u044f\u0431\u0440\u044c","Nov":"\u041d\u043e\u044f","November":"\u041d\u043e\u044f\u0431\u0440\u044c","Dec":"\u0414\u0435\u043a","December":"\u0414\u0435\u043a\u0430\u0431\u0440\u044c"}}'),o=new n.mb;o.registerKeysets("en",r),o.registerKeysets("ru",s);const a=o.i18n.bind(o)},95280:(t,e,i)=>{"use strict";i.d(e,{ZP:()=>b});var n=i(95097),r=i(68963),s=i(66307),o=i(8978),a=i(30746);const l=()=>"ck.".concat(((t,e)=>{let i="";for(let n=t;n>0;--n)i+=e[Math.floor(Math.random()*e.length)];return i})(10,"0123456789abcdefghijklmnopqrstuvwxyz")),h=r.memo;var c=i(5247);const u=(0,c.withNaming)({e:"__",m:"_"}),d=(0,c.withNaming)({n:"chartkit-",e:"__",m:"_"});class f extends r.Component{constructor(){super(...arguments),this.state={error:void 0},this.resetError=()=>{this.state.error&&this.setState({error:void 0})}}static getDerivedStateFromError(t){return{error:t}}componentDidCatch(){var t,e;const{error:i}=this.state;i&&(null===(e=(t=this.props).onError)||void 0===e||e.call(t,{error:i}))}componentDidUpdate(t){if(t.data!==this.props.data){const{error:t}=this.state;t&&"code"in t&&t.code===a.Wn.NO_DATA&&this.resetError()}}render(){const{error:t}=this.state;if(t){const e=function(t){const e="code"in t&&t.code;return(t.message||e||(0,s.a)("error","label_unknown-error")).toString()}(t);return this.props.renderError?this.props.renderError({error:t,message:e,resetError:this.resetError}):r.createElement("div",null,e)}return this.props.children}}var g=i(2982);const p=d("loader"),v=t=>{var{renderPluginLoader:e}=t,i=(0,n._T)(t,["renderPluginLoader"]);const s=null===e||void 0===e?void 0:e();return"undefined"!==typeof s?s:r.createElement("div",{className:p()},r.createElement(g.a,Object.assign({},i)))},m=u("chartkit"),y=t=>{const e=r.useRef(),{instanceRef:i,id:h,type:c,isMobile:u,renderPluginLoader:d}=t,f=(0,n._T)(t,["instanceRef","id","type","isMobile","renderPluginLoader"]),g=r.useMemo((()=>l()),[]),p=h||g,y=o.X.get("lang"),b=o.X.get("plugins").find((t=>t.type===c));if(!b)throw new a.Dx({code:a.Wn.UNKNOWN_PLUGIN,message:(0,s.a)("error","label_unknown-plugin",{type:c})});const x=b.renderer;return r.useImperativeHandle(i,(()=>({reflow(t){var i;(null===(i=e.current)||void 0===i?void 0:i.reflow)&&e.current.reflow(t)}})),[]),r.createElement(r.Suspense,{fallback:r.createElement(v,{renderPluginLoader:d})},r.createElement("div",{className:m({mobile:u},"chartkit-theme_common")},r.createElement(x,Object.assign({ref:e,id:p,lang:y},f))))},b=h(r.forwardRef((function(t,e){return r.createElement(f,{onError:t.onError,data:t.data,renderError:t.renderError},r.createElement(y,Object.assign({instanceRef:e},t)))})))},30746:(t,e,i)=>{"use strict";i.d(e,{Dx:()=>r,Wn:()=>n});const n={NO_DATA:"ERR.CK.NO_DATA",INVALID_DATA:"ERR.CK.INVALID_DATA",UNKNOWN:"ERR.CK.UNKNOWN_ERROR",UNKNOWN_PLUGIN:"ERR.CK.UNKNOWN_PLUGIN",TOO_MANY_LINES:"ERR.CK.TOO_MANY_LINES"};class r extends Error{constructor(){let{originalError:t,message:e,code:i=n.UNKNOWN}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};super(e),this.isCustomError=!0,this.code=i,t&&(this.name=t.name,this.stack=t.stack)}}},8978:(t,e,i)=>{"use strict";i.d(e,{X:()=>g});var n=i(24205),r=i(63639),s=i.n(r),o=i(51804),a=i.n(o),l=i(66307);var h=i(95188),c=i.n(h);function u(t,e,i){if("plugins"===i){const i=[...t],n=[...e];let r=i.map((t=>{const e=n.findIndex((e=>{let{type:i}=e;return i===t.type}));if(-1!==e){const i=n[e];return n.splice(e,1),{type:t.type,renderer:i.renderer}}return t}));return n.length>0&&(r=[...r,...n]),r}return c()(t)?a()(t,e,u):e}const d=new class{constructor(){this.events={}}on(t,e){this.events[t]?this.events[t].push(e):this.events[t]=[e]}off(t,e){this.events[t]&&(this.events[t]=this.events[t].filter((t=>{let{id:i}=t;return i!==e})))}dispatch(t,e){this.events[t]&&this.events[t].forEach((t=>{let{action:i}=t;i(e)}))}},f=t=>{(0,n.jQ)({lang:t}),l.p.setLang(t)};const g=new class{constructor(){this.settings={plugins:[],lang:"en"},f(this.get("lang"))}get(t){return s()(this.settings,t)}set(t){const e=(i=t,Object.entries(i).reduce(((t,e)=>{let[i,n]=e;return"undefined"!==typeof n&&(t[i]=n),t}),{}));var i;if(this.settings=a()(this.settings,e,u),e.lang){const t=e.lang||this.get("lang");f(t),d.dispatch("change-lang",t)}}}},67141:(t,e,i)=>{"use strict";i.d(e,{YagrPlugin:()=>n});const n={type:"yagr",renderer:i(68963).lazy((()=>Promise.all([i.e(7645),i.e(4983)]).then(i.bind(i,87645))))}},55334:(t,e,i)=>{"use strict";i.d(e,{w:()=>g});var n=i(68963),r=i(19797);const s=(0,i(31580).G)("definition-list");const o=t=>"label"in t&&!("name"in t);function a(t,e){return t||("string"===typeof e||"number"===typeof e?String(e):void 0)}function l(t){let{copyText:e,content:i,copyPosition:o}=t;const a="inside"===o,l=null!==i&&void 0!==i?i:"\u2014";return e?n.createElement("div",{className:s("copy-container",{"icon-inside":a})},n.createElement("span",null,l),n.createElement(r.m,{size:"s",text:e,className:s("copy-button"),view:a?"raised":"flat-secondary"})):l}var h=i(10288);function c(t){let{label:e}=t;return n.createElement("div",{className:s("title")},n.createElement(h.x,{variant:"subheader-1",color:"complementary"},e))}var u=i(21986);function d(t){let{note:e}=t;if(!e)return null;const i=s("item-note-tooltip");return"string"===typeof e?n.createElement(u.J,{className:i,content:e,placement:["bottom","top"]}):"object"===typeof e?n.createElement(u.J,Object.assign({className:i,placement:["bottom","top"]},e)):null}function f(t){let{note:e,name:i,nameTitle:r,multilineName:o}=t;const l=n.createElement(n.Fragment,null,"\xa0",n.createElement(d,{note:e}));return n.createElement(n.Fragment,null,n.createElement("div",{className:s("term-wrapper")},n.createElement("span",{title:a(r,i)},i),o&&l),!o&&l,n.createElement("div",{className:s("dots",{"with-note":Boolean(e)})}))}function g(t){let{items:e,responsive:i,nameMaxWidth:r,contentMaxWidth:h="auto",className:u,itemClassName:d,copyPosition:g="outside",qa:p}=t;const v=r?{flexBasis:r}:{},m="number"===typeof h?{flexBasis:h,maxWidth:h}:{},y=n.useMemo((()=>function(t){return t.reduce(((t,e)=>{var i;if(o(e)){t.push({label:e.label});const n=[...null!==(i=e.items)&&void 0!==i?i:[]].map((t=>Object.assign(Object.assign({},t),{isGrouped:!0})));t.push(...n)}else t.push(e);return t}),[])}(e).map(((t,e)=>Object.assign(Object.assign({},t),{key:e})))),[e]);return n.createElement("dl",{className:s({responsive:i},u),"data-qa":p},y.map((t=>{if(o(t)){const{key:e,label:i}=t;return n.createElement(c,{key:e,label:i})}const{name:e,key:i,content:r,contentTitle:h,nameTitle:u,copyText:p,note:y,multilineName:b,isGrouped:x}=t;return n.createElement("div",{key:i,className:s("item",{grouped:x},d)},n.createElement("dt",{className:s("term-container",{multiline:b}),style:v},n.createElement(f,{name:e,nameTitle:u,note:y,multilineName:b})),n.createElement("dd",{className:s("definition"),title:a(h,r),style:Object.assign(Object.assign({},m),{lineBreak:"string"===typeof r&&(_=20,function(t){return t.split(/\s+/).some((t=>t.length>_))})(r)?"anywhere":void 0})},n.createElement(l,{copyPosition:g,copyText:p,content:r})));var _})))}},66950:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 1.5a6.501 6.501 0 0 0-6.445 5.649.75.75 0 1 0 1.488.194A5.001 5.001 0 0 1 11.57 4.5h-1.32a.75.75 0 0 0 0 1.5h3a.75.75 0 0 0 .75-.75v-3a.75.75 0 0 0-1.5 0v1.06A6.48 6.48 0 0 0 8 1.5Zm-5.25 13a.75.75 0 0 1-.75-.75v-3a.75.75 0 0 1 .75-.75h3a.75.75 0 0 1 0 1.5H4.43a5.001 5.001 0 0 0 8.528-2.843.75.75 0 1 1 1.487.194A6.501 6.501 0 0 1 3.5 12.691v1.059a.75.75 0 0 1-.75.75Z",clipRule:"evenodd"}))},44822:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10.97 12.53a.75.75 0 1 0 1.06-1.06l-3.5-3.5a.75.75 0 0 0-1.06 0l-3.5 3.5a.75.75 0 1 0 1.06 1.06L8 9.56l2.97 2.97Zm0-5a.75.75 0 1 0 1.06-1.06l-3.5-3.5a.75.75 0 0 0-1.06 0l-3.5 3.5a.75.75 0 0 0 1.06 1.06L8 4.56l2.97 2.97Z",clipRule:"evenodd"}))},57225:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0Zm-6 2.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8.75 5a.75.75 0 0 0-1.5 0v2.5a.75.75 0 0 0 1.5 0V5Z",clipRule:"evenodd"}))},67585:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm1-9.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8 7.75a.75.75 0 0 1 .75.75V11a.75.75 0 0 1-1.5 0V8.5A.75.75 0 0 1 8 7.75Z",clipRule:"evenodd"}))},65375:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14ZM6.44 4.54c.43-.354.994-.565 1.56-.565 1.217 0 2.34.82 2.34 2.14 0 .377-.079.745-.298 1.1-.208.339-.513.614-.875.867-.217.153-.326.257-.379.328-.038.052-.038.07-.038.089a.75.75 0 0 1-1.5 0c0-.794.544-1.286 1.056-1.645.28-.196.402-.332.46-.425a.543.543 0 0 0 .073-.313c0-.3-.243-.641-.839-.641a.997.997 0 0 0-.608.224c-.167.137-.231.286-.231.417a.75.75 0 0 1-1.5 0c0-.673.345-1.22.78-1.577ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",clipRule:"evenodd"}))},80518:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M13.5 8a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0ZM15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0ZM6.53 5.47a.75.75 0 0 0-1.06 1.06L6.94 8 5.47 9.47a.75.75 0 1 0 1.06 1.06L8 9.06l1.47 1.47a.75.75 0 1 0 1.06-1.06L9.06 8l1.47-1.47a.75.75 0 1 0-1.06-1.06L8 6.94 6.53 5.47Z",clipRule:"evenodd"}))},76506:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14ZM6.53 5.47a.75.75 0 0 0-1.06 1.06L6.94 8 5.47 9.47a.75.75 0 1 0 1.06 1.06L8 9.06l1.47 1.47a.75.75 0 1 0 1.06-1.06L9.06 8l1.47-1.47a.75.75 0 1 0-1.06-1.06L8 6.94 6.53 5.47Z",clipRule:"evenodd"}))},9593:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M13.5 6H8.75v2.5h4.75V6ZM7.25 6H2.5v2.5h4.75V6ZM1 6V5a3 3 0 0 1 3-3h8a3 3 0 0 1 3 3v6a3 3 0 0 1-3 3H4a3 3 0 0 1-3-3V6Zm7.75 4h4.75v1a1.5 1.5 0 0 1-1.5 1.5H8.75V10ZM2.5 10h4.75v2.5H4A1.5 1.5 0 0 1 2.5 11v-1Z",clipRule:"evenodd"}))},20847:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M11.423 1A3.577 3.577 0 0 1 15 4.577c0 .27-.108.53-.3.722l-.528.529-1.971 1.971-5.059 5.059a3 3 0 0 1-1.533.82l-2.638.528a1 1 0 0 1-1.177-1.177l.528-2.638a3 3 0 0 1 .82-1.533l5.059-5.059 2.5-2.5c.191-.191.451-.299.722-.299Zm-2.31 4.009-4.91 4.91a1.5 1.5 0 0 0-.41.766l-.38 1.903 1.902-.38a1.5 1.5 0 0 0 .767-.41l4.91-4.91a2.077 2.077 0 0 0-1.88-1.88Zm3.098.658a3.59 3.59 0 0 0-1.878-1.879l1.28-1.28c.995.09 1.788.884 1.878 1.88l-1.28 1.28Z",clipRule:"evenodd"}))},46089:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("g",{clipPath:"url(#a)"},n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M14.756 10.164c1.665-.962 1.665-3.366 0-4.329L6.251.918C4.585-.045 2.5 1.158 2.5 3.083v9.834c0 1.925 2.085 3.128 3.751 2.164l8.505-4.917Z",clipRule:"evenodd"})),n.createElement("defs",null,n.createElement("clipPath",{id:"a"},n.createElement("path",{fill:"currentColor",d:"M0 0h16v16H0z"}))))},85807:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("g",{clipPath:"url(#a)"},n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M9.235 1a.75.75 0 0 1 .74.56l2.034 7.726 1.09-1.908A.75.75 0 0 1 13.75 7h1.5a.75.75 0 0 1 0 1.5h-1.065l-1.784 3.122a.75.75 0 0 1-1.376-.181l-1.71-6.496-2.083 9.466a.75.75 0 0 1-1.446.07L3.544 7.55l-.65 1.085A.75.75 0 0 1 2.25 9H.75a.75.75 0 1 1 0-1.5h1.075l1.282-2.136a.75.75 0 0 1 1.357.155l1.898 5.868 2.156-9.798A.75.75 0 0 1 9.235 1Z",clipRule:"evenodd"})),n.createElement("defs",null,n.createElement("clipPath",{id:"a"},n.createElement("path",{fill:"currentColor",d:"M0 0h16v16H0z"}))))},71549:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"m3.003 4.702 4.22-2.025a1.796 1.796 0 0 1 1.554 0l4.22 2.025a.886.886 0 0 1 .503.8V6a8.55 8.55 0 0 1-3.941 7.201l-.986.631a1.063 1.063 0 0 1-1.146 0l-.986-.63A8.55 8.55 0 0 1 2.5 6v-.498c0-.341.196-.652.503-.8Zm3.57-3.377L2.354 3.35A2.387 2.387 0 0 0 1 5.502V6a10.05 10.05 0 0 0 4.632 8.465l.986.63a2.563 2.563 0 0 0 2.764 0l.986-.63A10.05 10.05 0 0 0 15 6v-.498c0-.918-.526-1.755-1.354-2.152l-4.22-2.025a3.296 3.296 0 0 0-2.852 0ZM9.5 7a1.5 1.5 0 0 1-.75 1.3v1.95a.75.75 0 0 1-1.5 0V8.3A1.5 1.5 0 1 1 9.5 7Z",clipRule:"evenodd"}))},4140:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M4.5 3A1.5 1.5 0 0 0 3 4.5v1.75a.75.75 0 0 1-1.5 0V4.5a3 3 0 0 1 3-3h1.75a.75.75 0 0 1 0 1.5H4.5ZM9 2.25a.75.75 0 0 1 .75-.75h1.75a3 3 0 0 1 3 3v1.75a.75.75 0 0 1-1.5 0V4.5A1.5 1.5 0 0 0 11.5 3H9.75A.75.75 0 0 1 9 2.25ZM2.25 9a.75.75 0 0 1 .75.75v1.75A1.5 1.5 0 0 0 4.5 13h1.75a.75.75 0 0 1 0 1.5H4.5a3 3 0 0 1-3-3V9.75A.75.75 0 0 1 2.25 9Zm11.5 0a.75.75 0 0 1 .75.75v1.75a3 3 0 0 1-3 3H9.75a.75.75 0 0 1 0-1.5h1.75a1.5 1.5 0 0 0 1.5-1.5V9.75a.75.75 0 0 1 .75-.75Z",clipRule:"evenodd"}))},68309:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M12 3.5H4A1.5 1.5 0 0 0 2.5 5v6A1.5 1.5 0 0 0 4 12.5h8a1.5 1.5 0 0 0 1.5-1.5V5A1.5 1.5 0 0 0 12 3.5ZM4 2a3 3 0 0 0-3 3v6a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V5a3 3 0 0 0-3-3H4Zm.47 8.53a.75.75 0 0 1 0-1.06L5.94 8 4.47 6.53a.75.75 0 0 1 1.06-1.06l2 2a.75.75 0 0 1 0 1.06l-2 2a.75.75 0 0 1-1.06 0ZM8.75 9.5a.75.75 0 0 0 0 1.5h2.5a.75.75 0 0 0 0-1.5h-2.5Z",clipRule:"evenodd"}))},16459:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M9 2H7a.5.5 0 0 0-.5.5V3h3v-.5A.5.5 0 0 0 9 2Zm2 1v-.5a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2V3H2.251a.75.75 0 0 0 0 1.5h.312l.317 7.625A3 3 0 0 0 5.878 15h4.245a3 3 0 0 0 2.997-2.875l.318-7.625h.312a.75.75 0 0 0 0-1.5H11Zm.936 1.5H4.064l.315 7.562A1.5 1.5 0 0 0 5.878 13.5h4.245a1.5 1.5 0 0 0 1.498-1.438l.315-7.562Zm-6.186 2v5a.75.75 0 0 0 1.5 0v-5a.75.75 0 0 0-1.5 0Zm3.75-.75a.75.75 0 0 1 .75.75v5a.75.75 0 0 1-1.5 0v-5a.75.75 0 0 1 .75-.75Z",clipRule:"evenodd"}))},71586:(t,e,i)=>{"use strict";i.d(e,{Z:()=>r});var n=i(68963);const r=t=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},t),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M5.836 2.244c.962-1.665 3.366-1.665 4.328 0l4.917 8.505c.964 1.666-.239 3.751-2.164 3.751H3.083c-1.925 0-3.128-2.085-2.164-3.751l4.917-8.505ZM8 5a.75.75 0 0 1 .75.75v2a.75.75 0 1 1-1.5 0v-2A.75.75 0 0 1 8 5Zm1 5.75a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",clipRule:"evenodd"}))},2128:(t,e,i)=>{"use strict";i.d(e,{hP:()=>j,od:()=>Ct});var n=i(14702);function r(t,e){const i=document.createElement("button");return i.innerText=t,i.className="paranoid-button paranoid-button_".concat(e),i}const s="ParanoidC";function o(t,e){const i=document.getElementById(t);if(!i)throw new Error("Not found element with id ".concat(t));i.style.position="relative";const o=r("+","plus"),a=r("-","minus"),l=r("1:1","normal"),h=function(t,e){const i=document.createElement("canvas");i.setAttribute("id",s),i.setAttribute("width",String(t.offsetWidth)),i.setAttribute("height",String(t.offsetHeight)),t.appendChild(i);const r=e.colors||{};return new n.fabric.Canvas(s,{selection:!1,backgroundColor:r.fill,defaultCursor:"grab"})}(i,e),c=function(t,e,i,n){const r=document.createElement("div");r.className="paranoid-controls";const s=document.createElement("style");return s.innerText=function(t){return"\n .paranoid-controls {\n position: absolute;\n top: 10px;\n right: 10px;\n }\n .paranoid-button {\n margin-left: 12px;\n border-radius: 4px;\n height: 36px;\n width: 36px;\n line-height: 13px;\n font-family: Arial, sans-serif;\n font-size: 13px;\n text-align: center;\n padding: 0;\n box-shadow: 0px 5px 6px ".concat(t.nodeShadow,";\n border: 1px solid ").concat(t.buttonBorderColor,";\n background-color: ").concat(t.nodeFill,";\n color: ").concat(t.textColor,";\n cursor: pointer;\n }\n .paranoid-button:focus {\n outline: none;\n }\n .paranoid-button:active {\n border: 1px solid ").concat(t.buttonBorderColor,";\n }\n .paranoid-button_plus {\n margin-left: 0;\n border-left: none;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .paranoid-button_minus {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n")}(n),r.appendChild(s),r.appendChild(e),r.appendChild(t),r.appendChild(i),r}(o,a,l,e.colors);return i.appendChild(c),function(t,e,i,n,r){const s=r.minZoom||.2,o=r.zoomStep||.2,a=r.maxZoom||2,l=r.startZoom||1;t.setZoom(l),i.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation();let i=t.getZoom();i-=o,i{e.preventDefault(),e.stopPropagation();let i=t.getZoom();i+=o,i>a&&(i=a),t.setZoom(i)})),n.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation(),t.setZoom(1)}))}(h,o,a,l,e),function(t){let e=!1,i=0,n=0;t.on("mouse:down",(r=>{r.target||(t.setCursor("grabbing"),e=!0,i=r.pointer.x,n=r.pointer.y)})),t.on("mouse:move",(r=>{e&&(t.viewportTransform[4]+=r.pointer.x-i,t.viewportTransform[5]+=r.pointer.y-n,t.setCursor("grabbing"),t.getObjects().forEach((t=>t.setCoords())),t.requestRenderAll(),i=r.pointer.x,n=r.pointer.y)})),t.on("mouse:up",(()=>{e&&(t.setCursor("grab"),e=!1)}))}(h),h}const a={success:"rgba(59, 201, 53, 0.75)",error:"#ff0400",warning:"#ff7700",errorBackground:"rgba(235,50,38,0.08)",warningBackground:"rgba(255,219,77,0.3)",mute:"rgba(0,0,0,0.15)",stroke:"rgba(0,0,0,0.3)",fill:"#fafafa",nodeFill:"#ffffff",nodeShadow:"rgba(0,0,0,0.15)",titleColor:"#000000",textColor:"rgba(0,0,0,0.7)",buttonBorderColor:"rgba(0,0,0,0.07)",groupBorderColor:"rgba(2, 123, 243, 0.14)",groupFill:"rgba(2, 123, 243, 0.08)",titleHoverColor:"#004080",nodeHover:"#f3f3f3",specialHover:"rgba(2,123,243,1)"},l={hasControls:!1,hasRotatingPoint:!1,lockMovementX:!0,lockMovementY:!0,selectable:!1,hoverCursor:"default",subTargetCheck:!0},h="Arial, sans-serif",c=13,u=1.38;var d;!function(t){t.Group="GROUP"}(d||(d={}));i(69886);class f{constructor(t,e){this.children=[],this.members=[],this.data=t,this.canvasNode=e}add(t,e){const i=new f(t,e);i.addParent(this),this.children.push(i)}addNode(t){t.addParent(this),this.children.push(t)}addNodes(t){t.forEach((t=>{t.addParent(this)})),this.children=this.children.concat(t)}addCanvasNode(t){this.canvasNode=t}addShapeInstance(t){this.shapeInstance=t}hasChildren(){return this.children.length>0}addParent(t){this.parent=t}getLeftSibling(){if(!this.parent)return;const t=this.parent.children.findIndex((t=>t===this));return this.parent.children[t-1]}getRightSibling(){if(!this.parent)return;const t=this.parent.children.findIndex((t=>t===this));return this.parent.children[t+1]}}class g{constructor(t){this.nodesWithChildren=[],this.root=t}traverseBF(t){const e=[this.root];for(;e.length>0;){const i=e.shift();i&&(e.push(...i.children),t(i))}}traverseDF(t){const e=[this.root];for(;e.length;){const i=e.shift();let n=!1;i&&(i.children.length>0?e.unshift(...i.children):n=!0,t(i,n))}}traverseByLevels(t){let e=0,i=this.root.children;for(t([this.root],0);i.length>0;)e++,t(i,e),i=i.reduce(((t,e)=>t.concat(e.children)),[])}getTreeDepth(){let t=0;return this.traverseByLevels(((e,i)=>{t=i})),t}setCanvas(t){this.canvas=t}setNodesWithChildren(t){this.nodesWithChildren=t}}class p{constructor(t,e){this.nodes=new Map,this.data=t,this.opts=e}parseData(){const t=this.data,e=this.getGroups(t),i=[...t.nodes];e.forEach(((t,e)=>{i.push({name:e,children:t,type:d.Group})}));const n=this.findSources(i,t.links);let r=[],s={},o=new Map;return n.forEach((e=>{const n=this.mapNodesToTree(e,i,t.links);s=Object.assign(Object.assign({},n.groups),s),o=new Map([...o,...n.notGroupMemebersChildren]),r.push(n.tree)})),o.forEach(((t,e)=>{s[e]&&s[e].addNodes(t)})),r=r.reduce(((t,e)=>{const i=e.root.data.group;return i?s[i].members.push(e):t.push(e),t}),[]),r}getGroups(t){let{nodes:e}=t;const i=new Map;return e.forEach((t=>{if(t.group){const e=i.get(t.group);e?e.push(t.name):i.set(t.group,[t.name])}})),i}findSources(t,e){const i=e.map((t=>{let{to:e}=t;return e}));return t.reduce(((t,e)=>(i.includes(e.name)||t.push(e),t)),[])}mapNodesToTree(t,e,i){var n;const r=this.createNode(t),s={};this.appendGoup(s,r);const o=e.map((t=>{const e=i.reduce(((e,i)=>(i.from===t.name&&e.push(i.to),e)),[]);return Object.assign(Object.assign({},t),{children:e})})),a=this.getAppender(o,s)(r,(null===(n=o.find((e=>e.name===t.name)))||void 0===n?void 0:n.children)||[]);return{tree:new g(r),groups:s,notGroupMemebersChildren:a}}appendGoup(t,e){const i=e.data;e.data.type===d.Group&&(t[i.name]=e)}getAppender(t,e){const i=new Map,n=(r,s)=>{const o=s.map((i=>{const r=t.find((t=>{let{name:e}=t;return e===i})),s=this.createNode(r);return this.appendGoup(e,s),r.children.length>0&&n(s,r.children),s})),a=r.data.group,l=Boolean(a),h=[],c=[];if(o.forEach((t=>{const e=t.data.group;l?a===e?h.push(t):c.push(t):h.push(t)})),r.addNodes(h),a&&c.length>0){const t=i.get(a);t?t.push(...c):i.set(a,c)}return i};return n}createNode(t){const e=new f(t);return this.nodes.set(t.name,e),e}}class v extends CustomEvent{}class m extends EventTarget{dispatch(t,e){this.dispatchEvent(new v(t,{detail:e}))}}const y=16,b=16,x=24;function _(t){switch(t){case 0:return 0;case 1:return b;default:return x}}function C(t,e,i,n,r,s){const o=function(t,e,i,n,r,s,o){const a=new Map,l=new Map,h=new Map,c=[];return n.traverseBF((n=>{const{object:r,width:s,height:l}=function(t,e,i,n,r,s,o){var a,l;const h=null!==(a=e.shapeInstance)&&void 0!==a?a:s.node(t,{top:i,left:n},e,r,o),c=null!==(l=e.canvasNode)&&void 0!==l?l:h.getShape();return e.addShapeInstance(h),e.addCanvasNode(c),{object:c,top:i,left:n,width:c.getScaledWidth(),height:c.getScaledHeight()}}(t,n,0,0,e,i,o);a.set(n,{width:s,height:l}),c.push(r)})),function t(e){const{width:i}=a.get(e);let n=i,r=0;if(e.parent&&1===e.parent.children.length&&l.has(e.parent)){const t=l.get(e.parent);n0&&(r=(e.children.length-1)*y+e.children.reduce(((e,i)=>e+t(i)),0),h.set(e,r)),n=Math.max(n,r),l.set(e,n),n}(n.root),function t(e,i,n){let r=n,s=n;for(const o of e){const{width:e,height:n}=a.get(o),c=l.get(o),u=i,d=r+Math.floor(c/2)-Math.floor(e/2);if(o.canvasNode.set({top:u,left:d}),o.canvasNode.setCoords(),r=r+c+y,o.children.length){let e=0;const r=h.get(o);r{a=Math.max(a,(t.left||0)+t.getScaledWidth()),l=Math.max(l,(t.top||0)+t.getScaledHeight())})),{nodes:o,bottom:l,right:a}}function w(t){const e=t.canvasNode;if(e){const t=e.left||0,i=(e.top||0)+e.getScaledHeight();return{x:t+e.getScaledWidth()/2,y:i}}return{x:0,y:0}}function S(t){const e=t.canvasNode;if(e){const t=e.left||0,i=e.top||0;return{x:t+e.getScaledWidth()/2,y:i}}return{x:0,y:0}}class T{constructor(t,e,i,n){this.canvas=o(t,e),this.parser=new p(i,e),this.opts=e,this.shapes=n,this.em=new m,this.trees=[],this.nodes=[],this.links=[],this.listenNodeResize()}render(){requestAnimationFrame((()=>{this.trees=this.parser.parseData(),this.renderIntoCanvas(),this.opts.initialZoomFitsCanvas&&this.zoomObjectsToFitCanvas()}))}destroy(){const t=document.getElementById(s);t&&(this.canvas.dispose(),t.remove())}getEventEmmiter(){return this.em}getGraphNode(t){return this.parser.nodes.get(t)}getOpts(){return this.opts}getColors(){return this.opts.colors}getCanvas(){return this.canvas}renderIntoCanvas(){this.nodes.forEach((t=>{this.canvas.remove(t)})),this.nodes=[],this.links.forEach((t=>{this.canvas.remove(t)})),this.links=[];const t=this.canvas.getHeight()||0,e=this.canvas.getWidth()||0;let i=t,r=e;const s=this.opts.initialTop;let o=this.opts.initialLeft;this.trees.forEach((t=>{t.setCanvas(this.canvas);const{nodes:e,bottom:n,right:a}=C(t,s,o,this.opts,this.shapes,this.em);o=a+15,i=Math.max(n,i),r=Math.max(a,r),this.nodes.push(...e),this.canvas.add(...e)}));const a=function(t,e){const i=e.colors,r=[];return t.data.links.reduce(((e,s)=>{let{from:o}=s;const a=t.nodes.get(o);if(a&&1===a.children.length&&!r.includes(o)){const{x:t,y:s}=w(a),h=new n.fabric.Path("M ".concat(t," ").concat(s,"\n V ").concat(s+b),{fill:"",stroke:i.stroke,strokeWidth:1});e.push(new n.fabric.Group([h],Object.assign({},l))),r.push(o)}if(a&&a.children.length>1&&!r.includes(o)){const{x:t,y:s}=w(a),h=x/2,c=6,u=[new n.fabric.Path("M ".concat(t," ").concat(s,"\n V ").concat(s+h),{fill:"",stroke:i.stroke,strokeWidth:1})],{x:d,y:f}=S(a.children[0]),{x:g,y:p}=S(a.children[a.children.length-1]),v=new n.fabric.Path("M ".concat(d," ").concat(f,"\n V ").concat(f-h+c,"\n Q ").concat(d," ").concat(f-h," ").concat(d+c," ").concat(f-h,"\n H ").concat(g-c,"\n Q ").concat(g," ").concat(p-h," ").concat(g," ").concat(p+c-h,"\n V ").concat(p,"\n "),{fill:"",stroke:i.stroke,strokeWidth:1});u.push(v),a.children.forEach(((t,e)=>{if(0===e||e===a.children.length-1)return;const{x:r,y:s}=S(t),o=new n.fabric.Path("M ".concat(r," ").concat(s,"\n V ").concat(s-h,"\n "),{fill:"",stroke:i.stroke,strokeWidth:1});u.push(o)})),e.push(new n.fabric.Group(u,Object.assign({},l))),r.push(o)}return e}),[])}(this.parser,this.opts);this.links.push(...a),this.canvas.add(...a),this.bringNodesToFront()}bringNodesToFront(){var t;const e=null===(t=this.parser)||void 0===t?void 0:t.nodes;e&&e.forEach((t=>{t.canvasNode&&t.canvasNode.bringToFront()}))}listenNodeResize(){this.em.addEventListener("node:resize",(()=>{this.renderIntoCanvas()}))}zoomObjectsToFitCanvas(){let t=0,e=0;this.canvas.getObjects().forEach((i=>{const{top:n,left:r,height:s,width:o}=i.getBoundingRect(),a=r+o,l=n+s;a>t&&(t=a),l>e&&(e=l)})),t+=this.opts.initialLeft,e+=this.opts.initialTop;const i=this.canvas.getWidth()/t,r=this.canvas.getHeight()/e,s=Math.min(i,r);if(s<1){this.canvas.setZoom(s);const t=this.opts.initialTop*s,e=this.opts.initialLeft*s,i=this.opts.initialTop-t,r=this.opts.initialLeft-e;this.canvas.relativePan(new n.fabric.Point(r,i))}}}function O(){const t={success:"--g-color-text-positive",error:"--g-color-text-danger",warning:"--g-color-text-warning",errorBackground:"--g-color-base-danger-light",warningBackground:"--g-color-base-warning-light",mute:"--g-color-line-generic",stroke:"--g-color-text-hint",fill:"--g-color-base-generic-ultralight",nodeFill:"--g-color-base-float",nodeShadow:"--g-color-sfx-shadow",titleColor:"--g-color-text-primary",textColor:"--g-color-text-complementary",buttonBorderColor:"--g-color-line-generic",groupBorderColor:"--g-color-base-info-light-hover",groupFill:"--g-color-base-info-light",titleHoverColor:"--g-color-text-link-hover",nodeHover:"--g-color-base-float-hover",specialHover:"--g-color-line-brand"},e=getComputedStyle(document.body),i=Object.keys(t).reduce(((i,n)=>{const r=e.getPropertyValue(t[n]).replace(/ /g,"");return r&&(i[n]=r),i}),{});return Object.assign(Object.assign(Object.assign({},a),i),{getCommonColor:t=>e.getPropertyValue("--g-color-".concat(t)).replace(/ /g,"")})}const E={linkType:"arrow"};function k(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:E;const e=t.colors||{};return Object.assign(Object.assign({initialTop:10,initialLeft:10},t),{colors:Object.assign(Object.assign(Object.assign({},a),O()),e)})}function j(t,e,i,n){const r=k(i);return new T(t,r,e,n)}var P=i(68963),A=(i(57002),i(85690),function(){if("undefined"!==typeof Map)return Map;function t(t,e){var i=-1;return t.some((function(t,n){return t[0]===e&&(i=n,!0)})),i}return function(){function e(){this.__entries__=[]}return Object.defineProperty(e.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),e.prototype.get=function(e){var i=t(this.__entries__,e),n=this.__entries__[i];return n&&n[1]},e.prototype.set=function(e,i){var n=t(this.__entries__,e);~n?this.__entries__[n][1]=i:this.__entries__.push([e,i])},e.prototype.delete=function(e){var i=this.__entries__,n=t(i,e);~n&&i.splice(n,1)},e.prototype.has=function(e){return!!~t(this.__entries__,e)},e.prototype.clear=function(){this.__entries__.splice(0)},e.prototype.forEach=function(t,e){void 0===e&&(e=null);for(var i=0,n=this.__entries__;i0},t.prototype.connect_=function(){M&&!this.connected_&&(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),B?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},t.prototype.disconnect_=function(){M&&this.connected_&&(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},t.prototype.onTransitionEnd_=function(t){var e=t.propertyName,i=void 0===e?"":e;I.some((function(t){return!!~i.indexOf(t)}))&&this.refresh()},t.getInstance=function(){return this.instance_||(this.instance_=new t),this.instance_},t.instance_=null,t}(),z=function(t,e){for(var i=0,n=Object.keys(e);i0},t}(),$="undefined"!==typeof WeakMap?new WeakMap:new A,Q=function t(e){if(!(this instanceof t))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var i=H.getInstance(),n=new J(e,i,this);$.set(this,n)};["observe","unobserve","disconnect"].forEach((function(t){Q.prototype[t]=function(){var e;return(e=$.get(this))[t].apply(e,arguments)}}));"undefined"!==typeof D.ResizeObserver&&D.ResizeObserver;class tt extends P.Component{constructor(t){super(t),this.handleResize=debounce((t=>{var e,i,n;const{contentRect:r}=t[0];null===this.paranoid||void 0===e||e.getCanvas().setWidth(r.width),null===this.paranoid||void 0===i||i.getCanvas().setHeight(r.height),null===this.paranoid||void 0===n||n.getCanvas().renderAll()}),300),this.container=React.createRef(),this.resizeObserver=new ResizeObserver(this.handleResize)}componentDidMount(){this.paranoid=getTopology(paranoidRoot,this.props.data,this.props.opts,this.props.shapes),this.paranoid.render(),this.resizeObserver.observe(this.container.current),this.props.initListeners&&this.props.initListeners(this.paranoid)}componentDidUpdate(t){let{data:e,opts:i}=t;var n;!this.paranoid||isEqual(e,this.props.data)&&isEqual(i,this.props.opts)||(null===this.paranoid||void 0===n||n.destroy(),this.paranoid=getTopology(paranoidRoot,this.props.data,this.props.opts,this.props.shapes),this.paranoid.render(),this.props.initListeners&&this.props.initListeners(this.paranoid))}componentWillUnmount(){this.paranoid&&(this.paranoid.destroy(),this.paranoid=void 0),this.resizeObserver.disconnect()}render(){const{styles:t}=this.props;return React.createElement("div",{ref:this.container,id:paranoidRoot,style:t||{height:"100%"}})}}class et extends P.Component{componentDidMount(){this.paranoid=getCompactTopology(CompactTopology_paranoidRoot,this.props.data,this.props.opts),this.paranoid.renderCompactTopology()}componentDidUpdate(t){let{data:e,opts:i}=t;var n;!this.paranoid||isEqual(e,this.props.data)&&isEqual(i,this.props.opts)||(null===this.paranoid||void 0===n||n.destroy(),this.paranoid=getCompactTopology(CompactTopology_paranoidRoot,this.props.data,this.props.opts),this.paranoid.renderCompactTopology())}componentWillUnmount(){this.paranoid&&this.paranoid.destroy()}render(){const{styles:t}=this.props;return React.createElement("div",{id:CompactTopology_paranoidRoot,style:t||{height:"100%"}})}}var it=i(63639),nt=i.n(it);const rt={width:280,expandedWidth:360,borderRadius:4,titleFontSize:c,titleLineHeight:u,textFontSize:c,textLineHeight:u,padding:12,timeMaxWidth:25,percentageMaxWidth:25,textOffset:8,tagLeftOffset:4,tagTopOffset:5,statsOffset:24};class st{constructor(t,e,i,n){this.top=0,this.left=0,this.canvas=t,this.stats=e,this.coords=i,this.colors=n,this.textProps={fontSize:rt.textFontSize,lineHeight:rt.textLineHeight,fontFamily:h,fill:null===n||void 0===n?void 0:n.titleColor},this.selectedGroup=e[0].group;const r=this.createTitles(),s=r.map((t=>t.getScaledHeight())),o=Math.max.apply(null,s);this.lineTop=this.top+o+rt.textOffset;const a=this.createLine();this.content=this.createContent(r),this.group=this.createGroup(r,a,this.content),this.initListeners()}getCanvasObject(){return this.group}createTitles(){let t=this.left;return this.stats.map((t=>{let{group:e}=t;return e})).map((e=>{var i,r;const s=new n.fabric.Text(e,Object.assign(Object.assign({left:t,top:this.top},this.textProps),{fill:e===this.selectedGroup?null===(i=this.colors)||void 0===i?void 0:i.titleColor:null===(r=this.colors)||void 0===r?void 0:r.textColor}));return t+=s.getScaledWidth()+rt.statsOffset,s}))}createLine(){return new n.fabric.Path("M ".concat(this.left," ").concat(this.lineTop,"\n H ").concat(rt.expandedWidth-2*rt.padding),{fill:"",stroke:this.colors.stroke,strokeWidth:1})}createContent(t){return this.stats.map(((e,i)=>{let{group:r,stats:s}=e;const o=this.getContentItems(s,this.lineTop),a=t[i],l=a.left||0,h=l+a.getScaledWidth();return{group:r,items:new n.fabric.Group(o,{opacity:this.selectedGroup===r?1:0}),title:a,hoverLine:this.createHoverLine(l,h,r)}}))}getContentItems(t,e){let i=e+2*rt.textOffset;const r=[],s=t=>{t.forEach((t=>{let{name:e,value:s}=t;var o;const a=new n.fabric.Text(e,Object.assign({left:this.left,top:i},this.textProps)),l=rt.expandedWidth/2-rt.padding,h=rt.expandedWidth-2*rt.padding,c=new n.fabric.Textbox(String(s),Object.assign(Object.assign({left:l,top:i},this.textProps),{fill:null===(o=this.colors)||void 0===o?void 0:o.textColor,splitByGrapheme:!0,width:h-l}));r.push(a,c),i+=Math.max(a.getScaledHeight(),c.getScaledHeight())+rt.textOffset}))};return!function(t){var e;return Boolean(null===(e=t[0])||void 0===e?void 0:e.items)}(t)?s(t):t.forEach(((e,o)=>{let{name:a,items:l}=e;const h=new n.fabric.Text(a,Object.assign(Object.assign({left:this.left,top:i},this.textProps),{fontWeight:"bold"}));if(r.push(h),i+=h.getScaledHeight()+rt.textOffset,s(l),o!==t.length-1){const t=new n.fabric.Path("M ".concat(this.left," ").concat(i,"\n H ").concat(rt.expandedWidth-2*rt.padding),{fill:"",stroke:this.colors.stroke,strokeWidth:1,strokeDashArray:[6,4]});r.push(t),i+=t.getScaledHeight()+rt.textOffset}})),r}createGroup(t,e,i){const r=i.map((t=>{let{items:e}=t;return e})),s=i.map((t=>{let{hoverLine:e}=t;return e}));return new n.fabric.Group([...t,e,...r,...s],Object.assign({left:this.coords.left,top:this.coords.top},l))}createHoverLine(t,e,i){return new n.fabric.Path("M ".concat(t," ").concat(this.lineTop-1,"\n H ").concat(e),{fill:"",stroke:this.colors.specialHover,strokeWidth:2,opacity:this.selectedGroup===i?1:0})}initListeners(){this.content.forEach((t=>{let{group:e,title:i,items:n,hoverLine:r}=t;i.on("mousedown",(()=>{const t=this.selectedGroup,s=this.content.find((e=>e.group===t));s&&(s.title.set({fill:this.colors.textColor}),s.items.set({opacity:0}),s.hoverLine.set({opacity:0}),i.set({fill:this.colors.titleColor}),n.set({opacity:1}),r.set({opacity:1}),this.selectedGroup=e,this.canvas.requestRenderAll())}))}))}}function ot(t,e,i,n,r){return new st(t,e,{top:i,left:n},r).getCanvasObject()}function at(t,e,i){return new n.fabric.Textbox(t?"#".concat(t):"",{fontSize:12,lineHeight:14,textAlign:"right",fontFamily:h,fill:i.getCommonColor("text-secondary"),hoverCursor:e?"pointer":"default"})}const lt={width:112,expandedWidth:360,borderRadius:6,titleFontSize:c,titleLineHeight:u,textFontSize:c,textLineHeight:u,padding:16,textOffset:8},ht={scaleX:16/512,scaleY:16/512,originY:"center"};function ct(t,e,i){const r=new n.fabric.Text(t,{fontSize:lt.textFontSize,lineHeight:lt.textFontSize,fontFamily:h,fill:i.getCommonColor("text-misc"),originY:"center"}),s=[r];let o;switch(t){case"Merge":o=new n.fabric.Path("M232.5 5.171C247.4-1.718 264.6-1.718 279.5 5.171L498.1 106.2C506.6 110.1 512 118.6 512 127.1C512 137.3 506.6 145.8 498.1 149.8L279.5 250.8C264.6 257.7 247.4 257.7 232.5 250.8L13.93 149.8C5.438 145.8 0 137.3 0 127.1C0 118.6 5.437 110.1 13.93 106.2L232.5 5.171zM498.1 234.2C506.6 238.1 512 246.6 512 255.1C512 265.3 506.6 273.8 498.1 277.8L279.5 378.8C264.6 385.7 247.4 385.7 232.5 378.8L13.93 277.8C5.438 273.8 0 265.3 0 255.1C0 246.6 5.437 238.1 13.93 234.2L67.13 209.6L219.1 279.8C242.5 290.7 269.5 290.7 292.9 279.8L444.9 209.6L498.1 234.2zM292.9 407.8L444.9 337.6L498.1 362.2C506.6 366.1 512 374.6 512 383.1C512 393.3 506.6 401.8 498.1 405.8L279.5 506.8C264.6 513.7 247.4 513.7 232.5 506.8L13.93 405.8C5.438 401.8 0 393.3 0 383.1C0 374.6 5.437 366.1 13.93 362.2L67.13 337.6L219.1 407.8C242.5 418.7 269.5 418.7 292.9 407.8V407.8z",ht);break;case"UnionAll":o=new n.fabric.Path("M200 288H88c-21.4 0-32.1 25.8-17 41l32.9 31-99.2 99.3c-6.2 6.2-6.2 16.4 0 22.6l25.4 25.4c6.2 6.2 16.4 6.2 22.6 0L152 408l31.1 33c15.1 15.1 40.9 4.4 40.9-17V312c0-13.3-10.7-24-24-24zm112-64h112c21.4 0 32.1-25.9 17-41l-33-31 99.3-99.3c6.2-6.2 6.2-16.4 0-22.6L481.9 4.7c-6.2-6.2-16.4-6.2-22.6 0L360 104l-31.1-33C313.8 55.9 288 66.6 288 88v112c0 13.3 10.7 24 24 24zm96 136l33-31.1c15.1-15.1 4.4-40.9-17-40.9H312c-13.3 0-24 10.7-24 24v112c0 21.4 25.9 32.1 41 17l31-32.9 99.3 99.3c6.2 6.2 16.4 6.2 22.6 0l25.4-25.4c6.2-6.2 6.2-16.4 0-22.6L408 360zM183 71.1L152 104 52.7 4.7c-6.2-6.2-16.4-6.2-22.6 0L4.7 30.1c-6.2 6.2-6.2 16.4 0 22.6L104 152l-33 31.1C55.9 198.2 66.6 224 88 224h112c13.3 0 24-10.7 24-24V88c0-21.3-25.9-32-41-16.9z",ht);break;case"HashShuffle":o=new n.fabric.Path("M504.971 359.029c9.373 9.373 9.373 24.569 0 33.941l-80 79.984c-15.01 15.01-40.971 4.49-40.971-16.971V416h-58.785a12.004 12.004 0 0 1-8.773-3.812l-70.556-75.596 53.333-57.143L352 336h32v-39.981c0-21.438 25.943-31.998 40.971-16.971l80 79.981zM12 176h84l52.781 56.551 53.333-57.143-70.556-75.596A11.999 11.999 0 0 0 122.785 96H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12zm372 0v39.984c0 21.46 25.961 31.98 40.971 16.971l80-79.984c9.373-9.373 9.373-24.569 0-33.941l-80-79.981C409.943 24.021 384 34.582 384 56.019V96h-58.785a12.004 12.004 0 0 0-8.773 3.812L96 336H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12h110.785c3.326 0 6.503-1.381 8.773-3.812L352 176h32z",ht);break;case"Map":o=new n.fabric.Path("M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm-28.9 143.6l75.5 72.4H120c-13.3 0-24 10.7-24 24v16c0 13.3 10.7 24 24 24h182.6l-75.5 72.4c-9.7 9.3-9.9 24.8-.4 34.3l11 10.9c9.4 9.4 24.6 9.4 33.9 0L404.3 273c9.4-9.4 9.4-24.6 0-33.9L271.6 106.3c-9.4-9.4-24.6-9.4-33.9 0l-11 10.9c-9.5 9.6-9.3 25.1.4 34.4z",ht);break;case"Broadcast":o=new n.fabric.Path("M377.941 169.941V216H134.059v-46.059c0-21.382-25.851-32.09-40.971-16.971L7.029 239.029c-9.373 9.373-9.373 24.568 0 33.941l86.059 86.059c15.119 15.119 40.971 4.411 40.971-16.971V296h243.882v46.059c0 21.382 25.851 32.09 40.971 16.971l86.059-86.059c9.373-9.373 9.373-24.568 0-33.941l-86.059-86.059c-15.119-15.12-40.971-4.412-40.971 16.97z",ht)}return o&&(o.set({fill:i.getCommonColor("text-misc"),top:0,left:0,originY:"center"}),r.set({left:22}),s.push(o)),new n.fabric.Group(s,Object.assign(Object.assign({},l),{hoverCursor:e?"pointer":"default"}))}class ut{constructor(t,e,i,n,r){this.expanded=!1,this.expandedNodeHeight=0,this.nodeHeight=0,this.canvas=t,this.coords=e,this.treeNode=i,this.opts=n,this.em=r,this.data=nt()(i,["data","data"]),this.objects=this.prepareShapeObjects(),this.setShapeObjectsCoords(),this.body=this.prepareNodeBody(),this.group=this.createGroup(),this.initListeners()}getShape(){return this.group}getFillColor(){return this.opts.colors.getCommonColor("base-misc-light")}getHoverFillColor(){return this.opts.colors.getCommonColor("base-misc-light-hover")}getShadow(){}getHoverShadow(){}toggleHighlight(t){this.isExpandable()&&!this.expanded&&this.body.set({fill:t?this.getHoverFillColor():this.getFillColor()}),this.canvas.requestRenderAll()}prepareNodeBody(){const t=this.opts.colors,e=this.objects[this.objects.length-1];return this.nodeHeight=(e.top||0)+e.getScaledHeight()+lt.padding,new n.fabric.Rect({width:lt.width,height:this.nodeHeight,fill:this.getFillColor(),shadow:this.getShadow(),stroke:t.getCommonColor("line-misc"),rx:lt.borderRadius,ry:lt.borderRadius,hoverCursor:this.isExpandable()?"pointer":"default"})}prepareShapeObjects(){return[at(this.data.id,this.isExpandable(),this.opts.colors),ct(this.data.name||"",this.isExpandable(),this.opts.colors)]}setShapeObjectsCoords(){const[t,e]=this.objects,i=lt.padding,n=this.expanded?lt.expandedWidth:lt.width,r=e.getScaledWidth();t.set({left:0,top:4,width:n-4}),e.set({left:n/2-r/2,top:i})}createGroup(){const{top:t,left:e}=this.coords;return new n.fabric.Group([this.body,...this.objects],Object.assign({top:t,left:e},l))}initListeners(){this.initHover(),this.isExpandable()&&this.initExpand()}initHover(){this.group.on("mouseover",(()=>{this.em.dispatch("node:mouseover",this.treeNode),this.toggleHighlight(!0)})),this.group.on("mouseout",(()=>{this.em.dispatch("node:mouseout",this.treeNode),this.toggleHighlight(!1)}))}initExpand(){this.group.on("mousedown",(t=>{var e;this.stats&&(null===(e=t.subTargets)||void 0===e?void 0:e.includes(this.stats))||(this.expanded=!this.expanded,this.updateDimensions(),this.em.dispatch("node:resize",this.treeNode))}))}updateDimensions(){const t=this.opts.colors,[e,i]=this.objects,n=i.getScaledWidth();let r,s;this.expanded?(this.stats=ot(this.canvas,this.data.stats,(this.group.top||0)+this.body.getScaledHeight()+lt.padding,(this.group.left||0)+lt.padding,t),this.expandedNodeHeight=this.nodeHeight+this.stats.getScaledHeight()+2*lt.padding,r=lt.expandedWidth,s=this.expandedNodeHeight,this.group.addWithUpdate(this.stats)):(r=lt.width,s=this.nodeHeight,this.group.removeWithUpdate(this.stats),this.stats=void 0);const o=function(t,e){const i=[];return e.forEachObject((n=>{i.push(n),e.removeWithUpdate(n),t.add(n)})),()=>{i.forEach((i=>{t.remove(i),e.addWithUpdate(i)}))}}(this.canvas,this.group);this.body.set({width:r,height:s,fill:this.getFillColor(),shadow:this.getShadow()}),e.set({width:r-4}),i.set({left:(this.body.left||0)+(this.body.width||0)/2-n/2}),o()}isExpandable(){return Boolean(this.data.stats&&this.data.stats.length>0)}}const dt={width:190,bevelSize:10,titleFontSize:c,titleLineHeight:u,padding:12};class ft{constructor(t,e,i,r,s){this.nodeHeight=0,this.coords=e,this.opts=r,this.data=nt()(i,["data","data"]),this.shadow=new n.fabric.Shadow({color:r.colors.nodeShadow,offsetY:1,blur:5}),this.hoverShadow=new n.fabric.Shadow({color:r.colors.nodeShadow,offsetY:3,blur:8}),this.objects=this.prepareShapeObjects(),this.setShapeObjectsCoords(),this.body=this.prepareNodeBody(),this.group=this.createGroup()}getShape(){return this.group}getFillColor(){return this.opts.colors.nodeFill}getHoverFillColor(){return this.opts.colors.nodeHover}getShadow(){return this.shadow}getHoverShadow(){return this.hoverShadow}toggleHighlight(){}prepareNodeBody(){const t=this.opts.colors,e=this.objects[this.objects.length-1];return this.nodeHeight=(e.top||0)+e.getScaledHeight()+dt.padding,new n.fabric.Polygon([{x:dt.bevelSize,y:0},{x:dt.width-dt.bevelSize,y:0},{x:dt.width,y:dt.bevelSize},{x:dt.width,y:this.nodeHeight-dt.bevelSize},{x:dt.width-dt.bevelSize,y:this.nodeHeight},{x:dt.bevelSize,y:this.nodeHeight},{x:0,y:this.nodeHeight-dt.bevelSize},{x:0,y:dt.bevelSize}],{fill:this.getFillColor(),stroke:null===t||void 0===t?void 0:t.nodeShadow,shadow:this.getShadow(),hoverCursor:"default"})}prepareShapeObjects(){var t,e;return[(t=[this.data.name||""],e=this.opts.colors,new n.fabric.Text(t.join("\n"),{fontSize:dt.titleFontSize,lineHeight:dt.titleLineHeight,left:0,top:26,fontFamily:h,fontStyle:"italic",fill:e.getCommonColor("text-primary")}))]}setShapeObjectsCoords(){const[t]=this.objects,e=dt.padding,i=t.getScaledWidth();t.set({left:dt.width/2-i/2,top:e})}createGroup(){const{top:t,left:e}=this.coords;return new n.fabric.Group([this.body,...this.objects],Object.assign({top:t,left:e},l))}}const gt=40,pt=40,vt=20;class mt{constructor(t,e,i,r,s){this.coords=e,this.opts=r,this.shadow=new n.fabric.Shadow({color:r.colors.nodeShadow,offsetY:1,blur:5}),this.hoverShadow=new n.fabric.Shadow({color:r.colors.nodeShadow,offsetY:3,blur:8}),this.body=this.prepareNodeBody(),this.group=this.createGroup()}getShape(){return this.group}getFillColor(){return this.opts.colors.nodeFill}getHoverFillColor(){return this.opts.colors.nodeHover}getShadow(){return this.shadow}getHoverShadow(){return this.hoverShadow}toggleHighlight(){}prepareNodeBody(){const t=this.opts.colors;return new n.fabric.Rect({width:gt,height:pt,fill:this.getFillColor(),stroke:null===t||void 0===t?void 0:t.nodeShadow,rx:vt,ry:vt,shadow:this.getShadow(),hoverCursor:"default"})}createGroup(){const{top:t,left:e}=this.coords;return new n.fabric.Group([this.body],Object.assign({top:t,left:e},l))}}const yt={width:112,borderRadius:6,titleFontSize:c,titleLineHeight:u,textFontSize:c,textLineHeight:u,padding:12,textOffset:8};class bt{constructor(t,e,i,r,s){this.nodeHeight=0,this.coords=e,this.opts=r,this.data=nt()(i,["data","data"]),this.shadow=new n.fabric.Shadow({color:r.colors.nodeShadow,offsetY:1,blur:5}),this.hoverShadow=new n.fabric.Shadow({color:r.colors.nodeShadow,offsetY:3,blur:8}),this.objects=this.prepareShapeObjects(),this.setShapeObjectsCoords(),this.body=this.prepareNodeBody(),this.group=this.createGroup()}getShape(){return this.group}getFillColor(){return this.opts.colors.nodeFill}getHoverFillColor(){return this.opts.colors.nodeHover}getShadow(){return this.shadow}getHoverShadow(){return this.hoverShadow}toggleHighlight(){}prepareNodeBody(){const t=this.opts.colors,e=this.objects[this.objects.length-1];return this.nodeHeight=(e.top||0)+e.getScaledHeight()+yt.padding,new n.fabric.Rect({width:yt.width,height:this.nodeHeight,fill:this.getFillColor(),stroke:null===t||void 0===t?void 0:t.nodeShadow,shadow:this.getShadow(),hoverCursor:"default"})}prepareShapeObjects(){var t,e;return[(t=[this.data.name||""],e=this.opts.colors,new n.fabric.Text(t.join("\n"),{fontSize:yt.textFontSize,lineHeight:yt.textLineHeight,left:0,top:26,fontFamily:h,fill:e.getCommonColor("text-primary")}))]}setShapeObjectsCoords(){const[t]=this.objects,e=yt.padding,i=t.getScaledWidth();t.set({left:yt.width/2-i/2,top:e})}createGroup(){const{top:t,left:e}=this.coords;return new n.fabric.Group([this.body,...this.objects],Object.assign({top:t,left:e},l))}}const xt={width:248,expandedWidth:360,borderRadius:6,titleFontSize:c,titleLineHeight:u,textFontSize:c,textLineHeight:u,padding:12,textOffset:8};class _t{constructor(t,e,i,r,s){this.expanded=!1,this.expandedNodeHeight=0,this.nodeHeight=0,this.canvas=t,this.coords=e,this.treeNode=i,this.opts=r,this.em=s,this.data=nt()(i,["data","data"]),this.shadow=new n.fabric.Shadow({color:r.colors.nodeShadow,offsetY:1,blur:5}),this.hoverShadow=new n.fabric.Shadow({color:r.colors.nodeShadow,offsetY:3,blur:8}),this.objects=this.prepareShapeObjects(),this.setShapeObjectsCoords(),this.body=this.prepareNodeBody(),this.group=this.createGroup(),this.initListeners()}getShape(){return this.group}getFillColor(){return this.opts.colors.nodeFill}getHoverFillColor(){return this.opts.colors.nodeHover}getShadow(){return this.shadow}getHoverShadow(){return this.hoverShadow}toggleHighlight(t){this.isExpandable()&&!this.expanded&&this.body.set({fill:t?this.getHoverFillColor():this.getFillColor(),shadow:t?this.getHoverShadow():this.getShadow()}),this.canvas.requestRenderAll()}prepareNodeBody(){const t=this.opts.colors,e=this.objects[this.objects.length-1];return this.nodeHeight=(e.top||0)+e.getScaledHeight()+xt.padding,new n.fabric.Rect({width:xt.width,height:this.nodeHeight,fill:this.getFillColor(),stroke:null===t||void 0===t?void 0:t.nodeShadow,rx:xt.borderRadius,ry:xt.borderRadius,shadow:this.getShadow(),hoverCursor:this.isExpandable()?"pointer":"default"})}prepareShapeObjects(){const t=at(this.data.id,this.isExpandable(),this.opts.colors),e=(i=this.data.operators||[this.data.name||""],r=this.isExpandable(),s=this.opts.colors,new n.fabric.Text(i.join("\n"),{fontSize:xt.textFontSize,lineHeight:xt.textLineHeight,fontFamily:h,fill:s.getCommonColor("text-primary"),hoverCursor:r?"pointer":"default"}));var i,r,s;const o=function(t,e){if(0===t.length)return new n.fabric.Group([],Object.assign({top:0,left:0},l));const i=new n.fabric.Text("Tables:",{fontSize:xt.textFontSize,lineHeight:xt.textLineHeight,fontFamily:h,fill:e.getCommonColor("text-secondary"),hoverCursor:"pointer"}),r=i.getScaledWidth()+2,s=xt.width-2*xt.padding-r,o=new n.fabric.Textbox(t.join("\n"),{left:r,width:s,fontSize:xt.textFontSize,lineHeight:xt.textLineHeight,fontFamily:h,fill:e.getCommonColor("text-primary"),splitByGrapheme:!0,hoverCursor:"pointer"});return new n.fabric.Group([i,o],Object.assign({top:0,left:0},l))}(this.data.tables||[],this.opts.colors),a=function(t,e){if(!t)return new n.fabric.Group([],Object.assign({top:0,left:0},l));const i=new n.fabric.Text("CTE:",{fontSize:xt.textFontSize,lineHeight:xt.textLineHeight,fontFamily:h,fill:e.getCommonColor("text-secondary"),hoverCursor:"pointer"}),r=i.getScaledWidth()+2,s=xt.width-2*xt.padding-r,o=new n.fabric.Textbox(t,{left:r,width:s,fontSize:xt.textFontSize,lineHeight:xt.textLineHeight,fontFamily:h,fill:e.getCommonColor("text-primary"),splitByGrapheme:!0,hoverCursor:"pointer"});return new n.fabric.Group([i,o],Object.assign({top:0,left:0},l))}(this.data.cte||"",this.opts.colors);return[t,e,o,a]}setShapeObjectsCoords(){const[t,e,i,n]=this.objects;let r=xt.padding;const s=xt.padding;t.set({left:0,top:4,width:(this.expanded?xt.expandedWidth:xt.width)-4}),e.set({left:s,top:r}),r+=e.getScaledHeight(),i.set({left:s,top:r+(0===i.size()?0:xt.textOffset)}),r+=i.getScaledHeight(),n.set({left:s,top:r+(0===n.size()?0:xt.textOffset)})}createGroup(){const{top:t,left:e}=this.coords;return new n.fabric.Group([this.body,...this.objects],Object.assign({top:t,left:e},l))}initListeners(){this.initHover(),this.isExpandable()&&this.initExpand()}initHover(){this.group.on("mouseover",(()=>{this.em.dispatch("node:mouseover",this.treeNode),this.toggleHighlight(!0)})),this.group.on("mouseout",(()=>{this.em.dispatch("node:mouseout",this.treeNode),this.toggleHighlight(!1)}))}initExpand(){this.group.on("mousedown",(t=>{var e;this.stats&&(null===(e=t.subTargets)||void 0===e?void 0:e.includes(this.stats))||(this.updateDimensions(),this.expanded=!this.expanded,this.em.dispatch("node:resize",this.treeNode))}))}updateDimensions(){const t=this.opts.colors;if(this.expanded){const t=xt.width,e=this.nodeHeight;this.body.set({width:t,height:e,fill:this.getFillColor(),shadow:this.getShadow()}).setCoords(),this.objects[0].set({width:t-4}).setCoords(),this.group.removeWithUpdate(this.stats),this.stats=void 0}else{this.stats=ot(this.canvas,this.data.stats,(this.group.top||0)+this.body.getScaledHeight()+xt.padding,(this.group.left||0)+xt.padding,t),this.expandedNodeHeight=this.nodeHeight+this.stats.getScaledHeight()+2*xt.padding;const e=xt.expandedWidth,i=this.expandedNodeHeight;this.body.set({width:e,height:i,fill:this.getFillColor(),shadow:this.getShadow()}).setCoords(),this.objects[0].set({width:e-4}).setCoords(),this.group.addWithUpdate(this.stats)}}isExpandable(){return Boolean(this.data.stats&&this.data.stats.length>0)}}function Ct(t,e,i,n,r){return function(t){const e=nt()(t,["data","data"]);return"connection"===(null===e||void 0===e?void 0:e.type)}(i)?new ut(t,e,i,n,r):function(t){const e=nt()(t,["data","data"]);return"result"===(null===e||void 0===e?void 0:e.type)}(i)?new bt(t,e,i,n,r):function(t){const e=nt()(t,["data","data"]);return"query"===(null===e||void 0===e?void 0:e.type)}(i)?new mt(t,e,i,n,r):function(t){const e=nt()(t,["data","data"]);return"materialize"===(null===e||void 0===e?void 0:e.type)}(i)?new ft(t,e,i,n,r):new _t(t,e,i,n,r)}},91387:(t,e,i)=>{"use strict";i.d(e,{Z:()=>l});var n=i(95097),r=i(68963),s=i(68512),o=i(28989);const a=(0,i(36951).Ge)("card"),l=r.forwardRef((function(t,e){const{type:i="container",theme:l,view:h,size:c="m",children:u,className:d,onClick:f,disabled:g,selected:p}=t,v=(0,n._T)(t,["type","theme","view","size","children","className","onClick","disabled","selected"]),m="selection"===i,y="container"===i,b=("action"===i||m)&&Boolean(f)&&!(g||p),x=y?"normal":void 0,_=y||m?"outlined":void 0,C=b?f:void 0,{onKeyDown:w}=(0,s.b)(f);return r.createElement(o.x,Object.assign({ref:e,role:b?"button":void 0,className:a({theme:l||x,view:h||_,type:i,selected:p,size:c,disabled:g,clickable:b},d),onClick:C,onKeyDown:b?w:void 0,tabIndex:b?0:void 0},v),u)}))},48897:(t,e,i)=>{"use strict";i.d(e,{X:()=>h});var n=i(68963),r=i(33180),s=i(24288);function o(t){return n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 17 17",width:"16",height:"16",fill:"currentColor"},t),n.createElement("path",{d:"M4 7h9v3H4z"}))}function a(t){return n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 12 10",width:"16",height:"16",fill:"currentColor"},t),n.createElement("path",{d:"M.49 5.385l1.644-1.644 4.385 4.385L4.874 9.77.49 5.385zm4.384 1.096L10.356 1 12 2.644 6.519 8.126 4.874 6.48v.001z"}))}const l=(0,i(36951).Ge)("checkbox"),h=n.forwardRef((function(t,e){const{size:i="m",indeterminate:h,disabled:c=!1,content:u,children:d,title:f,style:g,className:p,qa:v}=t,{checked:m,inputProps:y}=(0,r.O)(t),b=u||d,x=n.createElement("span",{className:l("indicator")},n.createElement("span",{className:l("icon"),"aria-hidden":!0},h?n.createElement(o,{className:l("icon-svg",{type:"dash"})}):n.createElement(a,{className:l("icon-svg",{type:"tick"})})),n.createElement("input",Object.assign({},y,{className:l("control")})),n.createElement("span",{className:l("outline")}));return n.createElement(s.J,{ref:e,title:f,style:g,size:i,disabled:c,className:l({size:i,disabled:c,indeterminate:h,checked:m},p),qa:v,control:x},b)}))},25822:(t,e,i)=>{"use strict";i.d(e,{V:()=>P});var n=i(68963),r=i(62685),s=i(74100),o=i(95753),a=i(57107),l=i(89459),h=i(36951),c=i(3262),u=i(31445);const d=(0,h.Ge)("modal");function f(t){let{open:e=!1,keepMounted:i=!1,disableBodyScrollLock:h=!1,disableEscapeKeyDown:f,disableOutsideClick:g,disableFocusTrap:p,disableAutoFocus:v,focusTrap:m=!0,autoFocus:y=!0,restoreFocusRef:b,onEscapeKeyDown:x,onEnterKeyDown:_,onOutsideClick:C,onClose:w,onTransitionEnter:S,onTransitionEntered:T,onTransitionExit:O,onTransitionExited:E,children:k,style:j,contentOverflow:P="visible",className:A,contentClassName:M,"aria-labelledby":D,"aria-label":F,container:L,qa:R}=t;const I=n.useRef(null),B=n.useRef(null),[H,z]=n.useState(!1);(0,s.y)({enabled:!h&&(e||H)});const N=(0,o.H)({enabled:e||H,restoreFocusRef:b,focusTrapped:!0});return(0,c.s)({open:e,disableEscapeKeyDown:f,disableOutsideClick:g,onEscapeKeyDown:x,onEnterKeyDown:_,onOutsideClick:C,onClose:w,contentRefs:[B],type:"modal"}),n.createElement(r.Z,{nodeRef:I,in:e,addEndListener:t=>{var e;return null===(e=I.current)||void 0===e?void 0:e.addEventListener("animationend",t)},classNames:(0,u.Y)(d),mountOnEnter:!i,unmountOnExit:!i,appear:!0,onEnter:()=>{z(!0),null===S||void 0===S||S()},onExit:()=>{z(!0),null===O||void 0===O||O()},onEntered:()=>{z(!1),null===T||void 0===T||T()},onExited:()=>{z(!1),null===E||void 0===E||E()}},n.createElement(a.h,{container:L},n.createElement("div",{ref:I,style:j,className:d({open:e},A),"data-qa":R},n.createElement("div",{className:d("content-aligner")},n.createElement("div",{className:d("content-wrapper")},n.createElement(l.i,{enabled:!p&&m&&e&&!H,autoFocus:!v&&y},n.createElement("div",Object.assign({ref:B,tabIndex:-1,role:"dialog","aria-modal":e,"aria-label":F,"aria-labelledby":D,className:d("content",{"has-scroll":"auto"===P},M)},N),k)))))))}var g=i(77280),p=i(17176),v=i(88776),m=i(54973);const y=JSON.parse('{"close":"Close dialog"}'),b=JSON.parse('{"close":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u0434\u0438\u0430\u043b\u043e\u0433\u043e\u0432\u043e\u0435 \u043e\u043a\u043d\u043e"}'),x=(0,m.e)({en:y,ru:b},"Dialog"),_=(0,h.Ge)("dialog-btn-close");function C(t){let{onClose:e}=t;return n.createElement("div",{className:_()},n.createElement(p.z,{view:"flat",size:"l",className:_("btn"),onClick:t=>e(t,{isOutsideClick:!1}),extraProps:{"aria-label":x("close")}},n.createElement(v.J,{data:g.Z,size:20})))}const w=(0,h.Ge)("dialog-body");const S=(0,h.Ge)("dialog-divider");var T=i(44920);const O=(0,h.Ge)("dialog-footer");class E extends n.Component{constructor(){super(...arguments),this.errorTooltipRef=n.createRef(),this.handleKeyDown=t=>{"Enter"===t.key&&(t.preventDefault(),this.props.onClickButtonApply&&this.props.onClickButtonApply(t))}}componentDidMount(){this.props.listenKeyEnter&&this.attachKeyDownListeners()}componentDidUpdate(t){!this.props.listenKeyEnter&&t.listenKeyEnter&&this.detachKeyDownListeners(),this.props.listenKeyEnter&&!t.listenKeyEnter&&this.attachKeyDownListeners()}componentWillUnmount(){this.detachKeyDownListeners()}render(){const{onClickButtonCancel:t,onClickButtonApply:e,loading:i,textButtonCancel:r,textButtonApply:s,propsButtonCancel:o,propsButtonApply:a,preset:l,children:h,errorText:c,showError:u,renderButtons:d}=this.props,f=n.createElement("div",{className:O("button",{action:"cancel"})},n.createElement(p.z,Object.assign({view:s?"flat":"normal",size:"l",width:"max",onClick:t,disabled:i},o),r)),g=n.createElement("div",{className:O("button",{action:"apply"})},n.createElement(p.z,Object.assign({ref:this.errorTooltipRef,type:"submit",view:"action",size:"l",width:"max",onClick:e,loading:i,className:O("button-apply",{preset:l})},a),s),c&&n.createElement(T.G,{open:u,anchorRef:this.errorTooltipRef,placement:["bottom","top"],disableLayer:!0,disablePortal:!0,hasArrow:!0},n.createElement("div",{className:O("error")},c)));return n.createElement("div",{className:O()},n.createElement("div",{className:O("children")},h),n.createElement("div",{className:O("bts-wrapper")},d?d(g,f):n.createElement(n.Fragment,null,r&&f,s&&g)))}attachKeyDownListeners(){setTimeout((()=>{window.addEventListener("keydown",this.handleKeyDown)}),0)}detachKeyDownListeners(){window.removeEventListener("keydown",this.handleKeyDown)}}E.defaultProps={preset:"default",showError:!1,listenKeyEnter:!1};const k=(0,h.Ge)("dialog-header");const j=(0,h.Ge)("dialog");class P extends n.Component{constructor(){super(...arguments),this.handleCloseButtonClick=t=>{const{onClose:e}=this.props;e(t.nativeEvent,"closeButtonClick")}}render(){const{container:t,children:e,open:i,disableBodyScrollLock:r,disableEscapeKeyDown:s,disableOutsideClick:o,disableFocusTrap:a,disableAutoFocus:l,restoreFocusRef:h,keepMounted:c,size:u,contentOverflow:d="visible",className:g,modalClassName:p,hasCloseButton:v,onEscapeKeyDown:m,onEnterKeyDown:y,onOutsideClick:b,onClose:x,onTransitionEnter:_,onTransitionEntered:w,onTransitionExit:S,onTransitionExited:T,"aria-label":O,"aria-labelledby":E,qa:k}=this.props;return n.createElement(f,{open:i,contentOverflow:d,disableBodyScrollLock:r,disableEscapeKeyDown:s,disableOutsideClick:o,disableFocusTrap:a,disableAutoFocus:l,restoreFocusRef:h,keepMounted:c,onEscapeKeyDown:m,onEnterKeyDown:y,onOutsideClick:b,onClose:x,onTransitionEnter:_,onTransitionEntered:w,onTransitionExit:S,onTransitionExited:T,className:j("modal",p),"aria-label":O,"aria-labelledby":E,container:t,qa:k},n.createElement("div",{className:j({size:u,"has-close":v,"has-scroll":"auto"===d},g)},e,v&&n.createElement(C,{onClose:this.handleCloseButtonClick})))}}P.defaultProps={disableBodyScrollLock:!1,disableEscapeKeyDown:!1,disableOutsideClick:!1,keepMounted:!1,hasCloseButton:!0},P.Footer=E,P.Header=function(t){const{caption:e="",insertBefore:i,insertAfter:r,className:s,id:o}=t;return n.createElement("div",{className:k(null,s)},i,n.createElement("div",{className:k("caption"),id:o},e),r)},P.Body=function(t){const{className:e,hasBorders:i=!1}=t;return n.createElement("div",{className:w({"has-borders":i},e)},t.children)},P.Divider=function(t){let{className:e}=t;return n.createElement("div",{className:S(null,e)})}},56711:(t,e,i)=>{"use strict";i.d(e,{O:()=>s});var n=i(68963);const r=(0,i(36951).Ge)("skeleton");function s(t){let{className:e,style:i,qa:s}=t;return n.createElement("div",{className:r(null,e),style:i,"data-qa":s})}},27320:(t,e,i)=>{"use strict";i.d(e,{u:()=>c});var n=i(68963),r=i(48027),s=i(79004),o=i(44920),a=i(10288);const l=(0,i(36951).Ge)("tooltip"),h=["bottom","top"],c=t=>{const{children:e,content:i,disabled:c,placement:u=h,qa:d,id:f,className:g,style:p,disablePortal:v,contentClassName:m,openDelay:y=1e3,closeDelay:b}=t,[x,_]=n.useState(null),C=(0,s.p)(x,{openDelay:y,closeDelay:b,preventTriggerOnFocus:!0}),w=n.Children.only(e),S=w.ref,T=(0,r.c)(_,S);return n.createElement(n.Fragment,null,n.cloneElement(w,{ref:T}),x?n.createElement(o.G,{id:f,role:"tooltip",className:l(null,g),style:p,open:C&&!c,placement:u,anchorRef:{current:x},disablePortal:v,disableEscapeKeyDown:!0,disableOutsideClick:!0,disableLayer:!0,qa:d},n.createElement("div",{className:l("content",m)},n.createElement(a.x,{variant:"body-short",color:"complementary"},i))):null)}},47694:(t,e)=>{var i;i=function(t){t.version="1.2.2";var e=function(){for(var t=0,e=new Array(256),i=0;256!=i;++i)t=1&(t=1&(t=1&(t=1&(t=1&(t=1&(t=1&(t=1&(t=i)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1,e[i]=t;return"undefined"!==typeof Int32Array?new Int32Array(e):e}(),i=function(t){var e=0,i=0,n=0,r="undefined"!==typeof Int32Array?new Int32Array(4096):new Array(4096);for(n=0;256!=n;++n)r[n]=t[n];for(n=0;256!=n;++n)for(i=t[n],e=256+n;e<4096;e+=256)i=r[e]=i>>>8^t[255&i];var s=[];for(n=1;16!=n;++n)s[n-1]="undefined"!==typeof Int32Array?r.subarray(256*n,256*n+256):r.slice(256*n,256*n+256);return s}(e),n=i[0],r=i[1],s=i[2],o=i[3],a=i[4],l=i[5],h=i[6],c=i[7],u=i[8],d=i[9],f=i[10],g=i[11],p=i[12],v=i[13],m=i[14];t.table=e,t.bstr=function(t,i){for(var n=-1^i,r=0,s=t.length;r>>8^e[255&(n^t.charCodeAt(r++))];return~n},t.buf=function(t,i){for(var y=-1^i,b=t.length-15,x=0;x>8&255]^p[t[x++]^y>>16&255]^g[t[x++]^y>>>24]^f[t[x++]]^d[t[x++]]^u[t[x++]]^c[t[x++]]^h[t[x++]]^l[t[x++]]^a[t[x++]]^o[t[x++]]^s[t[x++]]^r[t[x++]]^n[t[x++]]^e[t[x++]];for(b+=15;x>>8^e[255&(y^t[x++])];return~y},t.str=function(t,i){for(var n=-1^i,r=0,s=t.length,o=0,a=0;r>>8^e[255&(n^o)]:o<2048?n=(n=n>>>8^e[255&(n^(192|o>>6&31))])>>>8^e[255&(n^(128|63&o))]:o>=55296&&o<57344?(o=64+(1023&o),a=1023&t.charCodeAt(r++),n=(n=(n=(n=n>>>8^e[255&(n^(240|o>>8&7))])>>>8^e[255&(n^(128|o>>2&63))])>>>8^e[255&(n^(128|a>>6&15|(3&o)<<4))])>>>8^e[255&(n^(128|63&a))]):n=(n=(n=n>>>8^e[255&(n^(224|o>>12&15))])>>>8^e[255&(n^(128|o>>6&63))])>>>8^e[255&(n^(128|63&o))];return~n}},"undefined"===typeof DO_NOT_EXPORT_CRC?i(e):i({})},14702:(t,e,i)=>{var n,r=r||{version:"5.3.0"};if(e.fabric=r,"undefined"!==typeof document&&"undefined"!==typeof window)document instanceof("undefined"!==typeof HTMLDocument?HTMLDocument:Document)?r.document=document:r.document=document.implementation.createHTMLDocument(""),r.window=window;else{var s=new(i(24960).JSDOM)(decodeURIComponent("%3C!DOCTYPE%20html%3E%3Chtml%3E%3Chead%3E%3C%2Fhead%3E%3Cbody%3E%3C%2Fbody%3E%3C%2Fhtml%3E"),{features:{FetchExternalResources:["img"]},resources:"usable"}).window;r.document=s.document,r.jsdomImplForWrapper=i(26759).implForWrapper,r.nodeCanvas=i(56272).Canvas,r.window=s,DOMParser=r.window.DOMParser}function o(t,e){var i=t.canvas,n=e.targetCanvas,r=n.getContext("2d");r.translate(0,n.height),r.scale(1,-1);var s=i.height-n.height;r.drawImage(i,0,s,n.width,n.height,0,0,n.width,n.height)}function a(t,e){var i=e.targetCanvas.getContext("2d"),n=e.destinationWidth,r=e.destinationHeight,s=n*r*4,o=new Uint8Array(this.imageBuffer,0,s),a=new Uint8ClampedArray(this.imageBuffer,0,s);t.readPixels(0,0,n,r,t.RGBA,t.UNSIGNED_BYTE,o);var l=new ImageData(a,n,r);i.putImageData(l,0,0)}r.isTouchSupported="ontouchstart"in r.window||"ontouchstart"in r.document||r.window&&r.window.navigator&&r.window.navigator.maxTouchPoints>0,r.isLikelyNode="undefined"!==typeof Buffer&&"undefined"===typeof window,r.SHARED_ATTRIBUTES=["display","transform","fill","fill-opacity","fill-rule","opacity","stroke","stroke-dasharray","stroke-linecap","stroke-dashoffset","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","id","paint-order","vector-effect","instantiated_by_use","clip-path"],r.DPI=96,r.reNum="(?:[-+]?(?:\\d+|\\d*\\.\\d+)(?:[eE][-+]?\\d+)?)",r.commaWsp="(?:\\s+,?\\s*|,\\s*)",r.rePathCommand=/([-+]?((\d+\.\d+)|((\d+)|(\.\d+)))(?:[eE][-+]?\d+)?)/gi,r.reNonWord=/[ \n\.,;!\?\-]/,r.fontPaths={},r.iMatrix=[1,0,0,1,0,0],r.svgNS="http://www.w3.org/2000/svg",r.perfLimitSizeTotal=2097152,r.maxCacheSideLimit=4096,r.minCacheSideLimit=256,r.charWidthsCache={},r.textureSize=2048,r.disableStyleCopyPaste=!1,r.enableGLFiltering=!0,r.devicePixelRatio=r.window.devicePixelRatio||r.window.webkitDevicePixelRatio||r.window.mozDevicePixelRatio||1,r.browserShadowBlurConstant=1,r.arcToSegmentsCache={},r.boundsOfCurveCache={},r.cachesBoundsOfCurve=!0,r.forceGLPutImageData=!1,r.initFilterBackend=function(){return r.enableGLFiltering&&r.isWebglSupported&&r.isWebglSupported(r.textureSize)?(console.log("max texture size: "+r.maxTextureSize),new r.WebglFilterBackend({tileSize:r.textureSize})):r.Canvas2dFilterBackend?new r.Canvas2dFilterBackend:void 0},"undefined"!==typeof document&&"undefined"!==typeof window&&(window.fabric=r),function(){function t(t,e){if(this.__eventListeners[t]){var i=this.__eventListeners[t];e?i[i.indexOf(e)]=!1:r.util.array.fill(i,!1)}}function e(t,e){var i=function(){e.apply(this,arguments),this.off(t,i)}.bind(this);this.on(t,i)}r.Observable={fire:function(t,e){if(!this.__eventListeners)return this;var i=this.__eventListeners[t];if(!i)return this;for(var n=0,r=i.length;n-1||!!e&&this._objects.some((function(e){return"function"===typeof e.contains&&e.contains(t,!0)}))},complexity:function(){return this._objects.reduce((function(t,e){return t+=e.complexity?e.complexity():0}),0)}},r.CommonMethods={_setOptions:function(t){for(var e in t)this.set(e,t[e])},_initGradient:function(t,e){!t||!t.colorStops||t instanceof r.Gradient||this.set(e,new r.Gradient(t))},_initPattern:function(t,e,i){!t||!t.source||t instanceof r.Pattern?i&&i():this.set(e,new r.Pattern(t,i))},_setObject:function(t){for(var e in t)this._set(e,t[e])},set:function(t,e){return"object"===typeof t?this._setObject(t):this._set(t,e),this},_set:function(t,e){this[t]=e},toggle:function(t){var e=this.get(t);return"boolean"===typeof e&&this.set(t,!e),this},get:function(t){return this[t]}},function(t){var e=Math.sqrt,i=Math.atan2,n=Math.pow,s=Math.PI/180,o=Math.PI/2;r.util={cos:function(t){if(0===t)return 1;switch(t<0&&(t=-t),t/o){case 1:case 3:return 0;case 2:return-1}return Math.cos(t)},sin:function(t){if(0===t)return 0;var e=1;switch(t<0&&(e=-1),t/o){case 1:return e;case 2:return 0;case 3:return-e}return Math.sin(t)},removeFromArray:function(t,e){var i=t.indexOf(e);return-1!==i&&t.splice(i,1),t},getRandomInt:function(t,e){return Math.floor(Math.random()*(e-t+1))+t},degreesToRadians:function(t){return t*s},radiansToDegrees:function(t){return t/s},rotatePoint:function(t,e,i){var n=new r.Point(t.x-e.x,t.y-e.y),s=r.util.rotateVector(n,i);return new r.Point(s.x,s.y).addEquals(e)},rotateVector:function(t,e){var i=r.util.sin(e),n=r.util.cos(e);return{x:t.x*n-t.y*i,y:t.x*i+t.y*n}},createVector:function(t,e){return new r.Point(e.x-t.x,e.y-t.y)},calcAngleBetweenVectors:function(t,e){return Math.acos((t.x*e.x+t.y*e.y)/(Math.hypot(t.x,t.y)*Math.hypot(e.x,e.y)))},getHatVector:function(t){return new r.Point(t.x,t.y).multiply(1/Math.hypot(t.x,t.y))},getBisector:function(t,e,i){var n=r.util.createVector(t,e),s=r.util.createVector(t,i),o=r.util.calcAngleBetweenVectors(n,s),a=o*(0===r.util.calcAngleBetweenVectors(r.util.rotateVector(n,o),s)?1:-1)/2;return{vector:r.util.getHatVector(r.util.rotateVector(n,a)),angle:o}},projectStrokeOnPoints:function(t,e,i){var n=[],s=e.strokeWidth/2,o=e.strokeUniform?new r.Point(1/e.scaleX,1/e.scaleY):new r.Point(1,1),a=function(t){var e=s/Math.hypot(t.x,t.y);return new r.Point(t.x*e*o.x,t.y*e*o.y)};return t.length<=1||t.forEach((function(l,h){var c,u,d=new r.Point(l.x,l.y);0===h?(u=t[h+1],c=i?a(r.util.createVector(u,d)).addEquals(d):t[t.length-1]):h===t.length-1?(c=t[h-1],u=i?a(r.util.createVector(c,d)).addEquals(d):t[0]):(c=t[h-1],u=t[h+1]);var f,g,p=r.util.getBisector(d,c,u),v=p.vector,m=p.angle;if("miter"===e.strokeLineJoin&&(f=-s/Math.sin(m/2),g=new r.Point(v.x*f*o.x,v.y*f*o.y),Math.hypot(g.x,g.y)/s<=e.strokeMiterLimit))return n.push(d.add(g)),void n.push(d.subtract(g));f=-s*Math.SQRT2,g=new r.Point(v.x*f*o.x,v.y*f*o.y),n.push(d.add(g)),n.push(d.subtract(g))})),n},transformPoint:function(t,e,i){return i?new r.Point(e[0]*t.x+e[2]*t.y,e[1]*t.x+e[3]*t.y):new r.Point(e[0]*t.x+e[2]*t.y+e[4],e[1]*t.x+e[3]*t.y+e[5])},makeBoundingBoxFromPoints:function(t,e){if(e)for(var i=0;i0&&(e>n?e-=n:e=0,i>n?i-=n:i=0);var r,s=!0,o=t.getImageData(e,i,2*n||1,2*n||1),a=o.data.length;for(r=3;r0)r.util.hasStyleChanged(s,h,!0)?o.push({start:n,end:n+1,style:h}):o[o.length-1].end++;s=h||{}}else n+=i[a].length;return o},stylesFromArray:function(t,e){if(!Array.isArray(t))return t;for(var i=e.split("\n"),n=-1,r=0,s={},o=0;o=r?s-r:2*Math.PI-(r-s)}function o(t,e,i){for(var o=i[1],a=i[2],l=i[3],h=i[4],c=i[5],u=function(t,e,i,o,a,l,h){var c=Math.PI,u=h*c/180,d=r.util.sin(u),f=r.util.cos(u),g=0,p=0,v=-f*t*.5-d*e*.5,m=-f*e*.5+d*t*.5,y=(i=Math.abs(i))*i,b=(o=Math.abs(o))*o,x=m*m,_=v*v,C=y*b-y*x-b*_,w=0;if(C<0){var S=Math.sqrt(1-C/(y*b));i*=S,o*=S}else w=(a===l?-1:1)*Math.sqrt(C/(y*x+b*_));var T=w*i*m/o,O=-w*o*v/i,E=f*T-d*O+.5*t,k=d*T+f*O+.5*e,j=s(1,0,(v-T)/i,(m-O)/o),P=s((v-T)/i,(m-O)/o,(-v-T)/i,(-m-O)/o);0===l&&P>0?P-=2*c:1===l&&P<0&&(P+=2*c);for(var A=Math.ceil(Math.abs(P/c*2)),M=[],D=P/A,F=8/3*Math.sin(D/4)*Math.sin(D/4)/Math.sin(D/2),L=j+D,R=0;R1e-4;)i=l(s),r=s,(n=a(h.x,h.y,i.x,i.y))+o>e?(s-=c,c/=2):(h=i,s+=c,o+=n);return i.angle=u(r),i}function g(t){for(var e,i,n,r,s=0,o=t.length,f=0,g=0,p=0,v=0,m=[],y=0;yw)for(var T=1,O=v.length;T2;for(e=e||0,c&&(l=t[2].xt[i-2].x?1:s.x===t[i-2].x?0:-1,h=s.y>t[i-2].y?1:s.y===t[i-2].y?0:-1),n.push(["L",s.x+l*e,s.y+h*e]),n},r.util.getPathSegmentsInfo=g,r.util.getBoundsOfCurve=function(e,i,n,s,o,a,l,h){var c;if(r.cachesBoundsOfCurve&&(c=t.call(arguments),r.boundsOfCurveCache[c]))return r.boundsOfCurveCache[c];var u,d,f,g,p,v,m,y,b=Math.sqrt,x=Math.min,_=Math.max,C=Math.abs,w=[],S=[[],[]];d=6*e-12*n+6*o,u=-3*e+9*n-9*o+3*l,f=3*n-3*e;for(var T=0;T<2;++T)if(T>0&&(d=6*i-12*s+6*a,u=-3*i+9*s-9*a+3*h,f=3*s-3*i),C(u)<1e-12){if(C(d)<1e-12)continue;0<(g=-f/d)&&g<1&&w.push(g)}else(m=d*d-4*f*u)<0||(0<(p=(-d+(y=b(m)))/(2*u))&&p<1&&w.push(p),0<(v=(-d-y)/(2*u))&&v<1&&w.push(v));for(var O,E,k,j=w.length,P=j;j--;)O=(k=1-(g=w[j]))*k*k*e+3*k*k*g*n+3*k*g*g*o+g*g*g*l,S[0][j]=O,E=k*k*k*i+3*k*k*g*s+3*k*g*g*a+g*g*g*h,S[1][j]=E;S[0][P]=e,S[1][P]=i,S[0][P+1]=l,S[1][P+1]=h;var A=[{x:x.apply(null,S[0]),y:x.apply(null,S[1])},{x:_.apply(null,S[0]),y:_.apply(null,S[1])}];return r.cachesBoundsOfCurve&&(r.boundsOfCurveCache[c]=A),A},r.util.getPointOnPath=function(t,e,i){i||(i=g(t));for(var n=0;e-i[n].length>0&&n=e}))}}}(),function(){function t(e,i,n){if(n)if(!r.isLikelyNode&&i instanceof Element)e=i;else if(i instanceof Array){e=[];for(var s=0,o=i.length;s57343)return t.charAt(e);if(55296<=i&&i<=56319){if(t.length<=e+1)throw"High surrogate without following low surrogate";var n=t.charCodeAt(e+1);if(56320>n||n>57343)throw"High surrogate without following low surrogate";return t.charAt(e)+t.charAt(e+1)}if(0===e)throw"Low surrogate without preceding high surrogate";var r=t.charCodeAt(e-1);if(55296>r||r>56319)throw"Low surrogate without preceding high surrogate";return!1}r.util.string={camelize:function(t){return t.replace(/-+(.)?/g,(function(t,e){return e?e.toUpperCase():""}))},capitalize:function(t,e){return t.charAt(0).toUpperCase()+(e?t.slice(1):t.slice(1).toLowerCase())},escapeXml:function(t){return t.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")},graphemeSplit:function(e){var i,n=0,r=[];for(n=0;n-1?t.prototype[r]=function(t){return function(){var i=this.constructor.superclass;this.constructor.superclass=n;var r=e[t].apply(this,arguments);if(this.constructor.superclass=i,"initialize"!==t)return r}}(r):t.prototype[r]=e[r],i&&(e.toString!==Object.prototype.toString&&(t.prototype.toString=e.toString),e.valueOf!==Object.prototype.valueOf&&(t.prototype.valueOf=e.valueOf))};function s(){}function o(e){for(var i=null,n=this;n.constructor.superclass;){var r=n.constructor.superclass.prototype[e];if(n[e]!==r){i=r;break}n=n.constructor.superclass.prototype}return i?arguments.length>1?i.apply(this,t.call(arguments,1)):i.call(this):console.log("tried to callSuper "+e+", method not found in prototype chain",this)}r.util.createClass=function(){var i=null,r=t.call(arguments,0);function a(){this.initialize.apply(this,arguments)}"function"===typeof r[0]&&(i=r.shift()),a.superclass=i,a.subclasses=[],i&&(s.prototype=i.prototype,a.prototype=new s,i.subclasses.push(a));for(var l=0,h=r.length;l-1||"touch"===t.pointerType}}(),function(){var t=r.document.createElement("div"),e="string"===typeof t.style.opacity,i="string"===typeof t.style.filter,n=/alpha\s*\(\s*opacity\s*=\s*([^\)]+)\)/,s=function(t){return t};e?s=function(t,e){return t.style.opacity=e,t}:i&&(s=function(t,e){var i=t.style;return t.currentStyle&&!t.currentStyle.hasLayout&&(i.zoom=1),n.test(i.filter)?(e=e>=.9999?"":"alpha(opacity="+100*e+")",i.filter=i.filter.replace(n,e)):i.filter+=" alpha(opacity="+100*e+")",t}),r.util.setStyle=function(t,e){var i=t.style;if(!i)return t;if("string"===typeof e)return t.style.cssText+=";"+e,e.indexOf("opacity")>-1?s(t,e.match(/opacity:\s*(\d?\.?\d*)/)[1]):t;for(var n in e)if("opacity"===n)s(t,e[n]);else{var r="float"===n||"cssFloat"===n?"undefined"===typeof i.styleFloat?"cssFloat":"styleFloat":n;i.setProperty(r,e[n])}return t}}(),function(){var t=Array.prototype.slice;var e,i,n=function(e){return t.call(e,0)};try{e=n(r.document.childNodes)instanceof Array}catch(a){}function s(t,e){var i=r.document.createElement(t);for(var n in e)"class"===n?i.className=e[n]:"for"===n?i.htmlFor=e[n]:i.setAttribute(n,e[n]);return i}function o(t){for(var e=0,i=0,n=r.document.documentElement,s=r.document.body||{scrollLeft:0,scrollTop:0};t&&(t.parentNode||t.host)&&((t=t.parentNode||t.host)===r.document?(e=s.scrollLeft||n.scrollLeft||0,i=s.scrollTop||n.scrollTop||0):(e+=t.scrollLeft||0,i+=t.scrollTop||0),1!==t.nodeType||"fixed"!==t.style.position););return{left:e,top:i}}e||(n=function(t){for(var e=new Array(t.length),i=t.length;i--;)e[i]=t[i];return e}),i=r.document.defaultView&&r.document.defaultView.getComputedStyle?function(t,e){var i=r.document.defaultView.getComputedStyle(t,null);return i?i[e]:void 0}:function(t,e){var i=t.style[e];return!i&&t.currentStyle&&(i=t.currentStyle[e]),i},function(){var t=r.document.documentElement.style,e="userSelect"in t?"userSelect":"MozUserSelect"in t?"MozUserSelect":"WebkitUserSelect"in t?"WebkitUserSelect":"KhtmlUserSelect"in t?"KhtmlUserSelect":"";r.util.makeElementUnselectable=function(t){return"undefined"!==typeof t.onselectstart&&(t.onselectstart=r.util.falseFunction),e?t.style[e]="none":"string"===typeof t.unselectable&&(t.unselectable="on"),t},r.util.makeElementSelectable=function(t){return"undefined"!==typeof t.onselectstart&&(t.onselectstart=null),e?t.style[e]="":"string"===typeof t.unselectable&&(t.unselectable=""),t}}(),r.util.setImageSmoothing=function(t,e){t.imageSmoothingEnabled=t.imageSmoothingEnabled||t.webkitImageSmoothingEnabled||t.mozImageSmoothingEnabled||t.msImageSmoothingEnabled||t.oImageSmoothingEnabled,t.imageSmoothingEnabled=e},r.util.getById=function(t){return"string"===typeof t?r.document.getElementById(t):t},r.util.toArray=n,r.util.addClass=function(t,e){t&&-1===(" "+t.className+" ").indexOf(" "+e+" ")&&(t.className+=(t.className?" ":"")+e)},r.util.makeElement=s,r.util.wrapElement=function(t,e,i){return"string"===typeof e&&(e=s(e,i)),t.parentNode&&t.parentNode.replaceChild(e,t),e.appendChild(t),e},r.util.getScrollLeftTop=o,r.util.getElementOffset=function(t){var e,n,r=t&&t.ownerDocument,s={left:0,top:0},a={left:0,top:0},l={borderLeftWidth:"left",borderTopWidth:"top",paddingLeft:"left",paddingTop:"top"};if(!r)return a;for(var h in l)a[l[h]]+=parseInt(i(t,h),10)||0;return e=r.documentElement,"undefined"!==typeof t.getBoundingClientRect&&(s=t.getBoundingClientRect()),n=o(t),{left:s.left+n.left-(e.clientLeft||0)+a.left,top:s.top+n.top-(e.clientTop||0)+a.top}},r.util.getNodeCanvas=function(t){var e=r.jsdomImplForWrapper(t);return e._canvas||e._image},r.util.cleanUpJsdomNode=function(t){if(r.isLikelyNode){var e=r.jsdomImplForWrapper(t);e&&(e._image=null,e._canvas=null,e._currentSrc=null,e._attributes=null,e._classList=null)}}}(),function(){function t(){}r.util.request=function(e,i){i||(i={});var n=i.method?i.method.toUpperCase():"GET",s=i.onComplete||function(){},o=new r.window.XMLHttpRequest,a=i.body||i.parameters;return o.onreadystatechange=function(){4===o.readyState&&(s(o),o.onreadystatechange=t)},"GET"===n&&(a=null,"string"===typeof i.parameters&&(e=function(t,e){return t+(/\?/.test(t)?"&":"?")+e}(e,i.parameters))),o.open(n,e,!0),"POST"!==n&&"PUT"!==n||o.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),o.send(a),o}}(),r.log=console.log,r.warn=console.warn,function(){var t=r.util.object.extend,e=r.util.object.clone,i=[];function n(){return!1}function s(t,e,i,n){return-i*Math.cos(t/n*(Math.PI/2))+i+e}r.util.object.extend(i,{cancelAll:function(){var t=this.splice(0);return t.forEach((function(t){t.cancel()})),t},cancelByCanvas:function(t){if(!t)return[];var e=this.filter((function(e){return"object"===typeof e.target&&e.target.canvas===t}));return e.forEach((function(t){t.cancel()})),e},cancelByTarget:function(t){var e=this.findAnimationsByTarget(t);return e.forEach((function(t){t.cancel()})),e},findAnimationIndex:function(t){return this.indexOf(this.findAnimation(t))},findAnimation:function(t){return this.find((function(e){return e.cancel===t}))},findAnimationsByTarget:function(t){return t?this.filter((function(e){return e.target===t})):[]}});var o=r.window.requestAnimationFrame||r.window.webkitRequestAnimationFrame||r.window.mozRequestAnimationFrame||r.window.oRequestAnimationFrame||r.window.msRequestAnimationFrame||function(t){return r.window.setTimeout(t,1e3/60)},a=r.window.cancelAnimationFrame||r.window.clearTimeout;function l(){return o.apply(r.window,arguments)}r.util.animate=function(i){i||(i={});var o,a=!1,h=function(){var t=r.runningAnimations.indexOf(o);return t>-1&&r.runningAnimations.splice(t,1)[0]};return o=t(e(i),{cancel:function(){return a=!0,h()},currentValue:"startValue"in i?i.startValue:0,completionRate:0,durationRate:0}),r.runningAnimations.push(o),l((function(t){var e,r=t||+new Date,c=i.duration||500,u=r+c,d=i.onChange||n,f=i.abort||n,g=i.onComplete||n,p=i.easing||s,v="startValue"in i&&i.startValue.length>0,m="startValue"in i?i.startValue:0,y="endValue"in i?i.endValue:100,b=i.byValue||(v?m.map((function(t,e){return y[e]-m[e]})):y-m);i.onStart&&i.onStart(),function t(i){var n=(e=i||+new Date)>u?c:e-r,s=n/c,x=v?m.map((function(t,e){return p(n,m[e],b[e],c)})):p(n,m,b,c),_=v?Math.abs((x[0]-m[0])/b[0]):Math.abs((x-m)/b);if(o.currentValue=v?x.slice():x,o.completionRate=_,o.durationRate=s,!a){if(!f(x,_,s))return e>u?(o.currentValue=v?y.slice():y,o.completionRate=1,o.durationRate=1,d(v?y.slice():y,1,1),g(y,1,1),void h()):(d(x,_,s),void l(t));h()}}(r)})),o.cancel},r.util.requestAnimFrame=l,r.util.cancelAnimFrame=function(){return a.apply(r.window,arguments)},r.runningAnimations=i}(),function(){function t(t,e,i){var n="rgba("+parseInt(t[0]+i*(e[0]-t[0]),10)+","+parseInt(t[1]+i*(e[1]-t[1]),10)+","+parseInt(t[2]+i*(e[2]-t[2]),10);return n+=","+(t&&e?parseFloat(t[3]+i*(e[3]-t[3])):1),n+=")"}r.util.animateColor=function(e,i,n,s){var o=new r.Color(e).getSource(),a=new r.Color(i).getSource(),l=s.onComplete,h=s.onChange;return s=s||{},r.util.animate(r.util.object.extend(s,{duration:n||500,startValue:o,endValue:a,byValue:a,easing:function(e,i,n,r){return t(i,n,s.colorEasing?s.colorEasing(e,r):1-Math.cos(e/r*(Math.PI/2)))},onComplete:function(e,i,n){if(l)return l(t(a,a,0),i,n)},onChange:function(e,i,n){if(h){if(Array.isArray(e))return h(t(e,e,0),i,n);h(e,i,n)}}}))}}(),function(){function t(t,e,i,n){return t-1&&c>-1&&c-1)&&(i="stroke")}else{if("href"===t||"xlink:href"===t||"font"===t)return i;if("imageSmoothing"===t)return"optimizeQuality"===i;a=l?i.map(s):s(i,r)}}else i="";return!l&&isNaN(a)?i:a}function f(t){return new RegExp("^("+t.join("|")+")\\b","i")}function g(t,e){var i,n,r,s,o=[];for(r=0,s=e.length;r1;)l.shift(),h=e.util.multiplyTransformMatrices(h,l[0]);return h}}();var y=new RegExp("^\\s*("+e.reNum+"+)\\s*,?\\s*("+e.reNum+"+)\\s*,?\\s*("+e.reNum+"+)\\s*,?\\s*("+e.reNum+"+)\\s*$");function b(t){if(!e.svgViewBoxElementsRegEx.test(t.nodeName))return{};var i,n,r,o,a,l,h=t.getAttribute("viewBox"),c=1,u=1,d=t.getAttribute("width"),f=t.getAttribute("height"),g=t.getAttribute("x")||0,p=t.getAttribute("y")||0,v=t.getAttribute("preserveAspectRatio")||"",m=!h||!(h=h.match(y)),b=!d||!f||"100%"===d||"100%"===f,x=m&&b,_={},C="",w=0,S=0;if(_.width=0,_.height=0,_.toBeParsed=x,m&&(g||p)&&t.parentNode&&"#document"!==t.parentNode.nodeName&&(C=" translate("+s(g)+" "+s(p)+") ",a=(t.getAttribute("transform")||"")+C,t.setAttribute("transform",a),t.removeAttribute("x"),t.removeAttribute("y")),x)return _;if(m)return _.width=s(d),_.height=s(f),_;if(i=-parseFloat(h[1]),n=-parseFloat(h[2]),r=parseFloat(h[3]),o=parseFloat(h[4]),_.minX=i,_.minY=n,_.viewBoxWidth=r,_.viewBoxHeight=o,b?(_.width=r,_.height=o):(_.width=s(d),_.height=s(f),c=_.width/r,u=_.height/o),"none"!==(v=e.util.parsePreserveAspectRatioAttribute(v)).alignX&&("meet"===v.meetOrSlice&&(u=c=c>u?u:c),"slice"===v.meetOrSlice&&(u=c=c>u?c:u),w=_.width-r*c,S=_.height-o*c,"Mid"===v.alignX&&(w/=2),"Mid"===v.alignY&&(S/=2),"Min"===v.alignX&&(w=0),"Min"===v.alignY&&(S=0)),1===c&&1===u&&0===i&&0===n&&0===g&&0===p)return _;if((g||p)&&"#document"!==t.parentNode.nodeName&&(C=" translate("+s(g)+" "+s(p)+") "),a=C+" matrix("+c+" 0 0 "+u+" "+(i*c+w)+" "+(n*u+S)+") ","svg"===t.nodeName){for(l=t.ownerDocument.createElementNS(e.svgNS,"g");t.firstChild;)l.appendChild(t.firstChild);t.appendChild(l)}else(l=t).removeAttribute("x"),l.removeAttribute("y"),a=l.getAttribute("transform")+a;return l.setAttribute("transform",a),_}function x(t,e){var i="xlink:href",n=m(t,e.getAttribute(i).slice(1));if(n&&n.getAttribute(i)&&x(t,n),["gradientTransform","x1","x2","y1","y2","gradientUnits","cx","cy","r","fx","fy"].forEach((function(t){n&&!e.hasAttribute(t)&&n.hasAttribute(t)&&e.setAttribute(t,n.getAttribute(t))})),!e.children.length)for(var r=n.cloneNode(!0);r.firstChild;)e.appendChild(r.firstChild);e.removeAttribute(i)}e.parseSVGDocument=function(t,i,r,s){if(t){!function(t){for(var i=g(t,["use","svg:use"]),n=0;i.length&&nt.x&&this.y>t.y},gte:function(t){return this.x>=t.x&&this.y>=t.y},lerp:function(t,e){return"undefined"===typeof e&&(e=.5),e=Math.max(Math.min(1,e),0),new i(this.x+(t.x-this.x)*e,this.y+(t.y-this.y)*e)},distanceFrom:function(t){var e=this.x-t.x,i=this.y-t.y;return Math.sqrt(e*e+i*i)},midPointFrom:function(t){return this.lerp(t)},min:function(t){return new i(Math.min(this.x,t.x),Math.min(this.y,t.y))},max:function(t){return new i(Math.max(this.x,t.x),Math.max(this.y,t.y))},toString:function(){return this.x+","+this.y},setXY:function(t,e){return this.x=t,this.y=e,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setFromPoint:function(t){return this.x=t.x,this.y=t.y,this},swap:function(t){var e=this.x,i=this.y;this.x=t.x,this.y=t.y,t.x=e,t.y=i},clone:function(){return new i(this.x,this.y)}})}(e),function(t){"use strict";var e=t.fabric||(t.fabric={});function i(t){this.status=t,this.points=[]}e.Intersection?e.warn("fabric.Intersection is already defined"):(e.Intersection=i,e.Intersection.prototype={constructor:i,appendPoint:function(t){return this.points.push(t),this},appendPoints:function(t){return this.points=this.points.concat(t),this}},e.Intersection.intersectLineLine=function(t,n,r,s){var o,a=(s.x-r.x)*(t.y-r.y)-(s.y-r.y)*(t.x-r.x),l=(n.x-t.x)*(t.y-r.y)-(n.y-t.y)*(t.x-r.x),h=(s.y-r.y)*(n.x-t.x)-(s.x-r.x)*(n.y-t.y);if(0!==h){var c=a/h,u=l/h;0<=c&&c<=1&&0<=u&&u<=1?(o=new i("Intersection")).appendPoint(new e.Point(t.x+c*(n.x-t.x),t.y+c*(n.y-t.y))):o=new i}else o=new i(0===a||0===l?"Coincident":"Parallel");return o},e.Intersection.intersectLinePolygon=function(t,e,n){var r,s,o,a,l=new i,h=n.length;for(a=0;a0&&(l.status="Intersection"),l},e.Intersection.intersectPolygonPolygon=function(t,e){var n,r=new i,s=t.length;for(n=0;n0&&(r.status="Intersection"),r},e.Intersection.intersectPolygonRectangle=function(t,n,r){var s=n.min(r),o=n.max(r),a=new e.Point(o.x,s.y),l=new e.Point(s.x,o.y),h=i.intersectLinePolygon(s,a,t),c=i.intersectLinePolygon(a,o,t),u=i.intersectLinePolygon(o,l,t),d=i.intersectLinePolygon(l,s,t),f=new i;return f.appendPoints(h.points),f.appendPoints(c.points),f.appendPoints(u.points),f.appendPoints(d.points),f.points.length>0&&(f.status="Intersection"),f})}(e),function(t){"use strict";var e=t.fabric||(t.fabric={});function i(t){t?this._tryParsingColor(t):this.setSource([0,0,0,1])}function n(t,e,i){return i<0&&(i+=1),i>1&&(i-=1),i<1/6?t+6*(e-t)*i:i<.5?e:i<2/3?t+(e-t)*(2/3-i)*6:t}e.Color?e.warn("fabric.Color is already defined."):(e.Color=i,e.Color.prototype={_tryParsingColor:function(t){var e;t in i.colorNameMap&&(t=i.colorNameMap[t]),"transparent"===t&&(e=[255,255,255,0]),e||(e=i.sourceFromHex(t)),e||(e=i.sourceFromRgb(t)),e||(e=i.sourceFromHsl(t)),e||(e=[0,0,0,1]),e&&this.setSource(e)},_rgbToHsl:function(t,i,n){t/=255,i/=255,n/=255;var r,s,o,a=e.util.array.max([t,i,n]),l=e.util.array.min([t,i,n]);if(o=(a+l)/2,a===l)r=s=0;else{var h=a-l;switch(s=o>.5?h/(2-a-l):h/(a+l),a){case t:r=(i-n)/h+(i0)-(t<0)||+t};function f(t,e){var i=t.angle+u(Math.atan2(e.y,e.x))+360;return Math.round(i%360/45)}function g(t,i){var n=i.transform.target,r=n.canvas,s=e.util.object.clone(i);s.target=n,r&&r.fire("object:"+t,s),n.fire(t,i)}function p(t,e){var i=e.canvas,n=t[i.uniScaleKey];return i.uniformScaling&&!n||!i.uniformScaling&&n}function v(t){return t.originX===h&&t.originY===h}function m(t,e,i){var n=t.lockScalingX,r=t.lockScalingY;return!(!n||!r)||(!(e||!n&&!r||!i)||(!(!n||"x"!==e)||!(!r||"y"!==e)))}function y(t,e,i,n){return{e:t,transform:e,pointer:{x:i,y:n}}}function b(t){return function(e,i,n,r){var s=i.target,o=s.getCenterPoint(),a=s.translateToOriginPoint(o,i.originX,i.originY),l=t(e,i,n,r);return s.setPositionByOrigin(a,i.originX,i.originY),l}}function x(t,e){return function(i,n,r,s){var o=e(i,n,r,s);return o&&g(t,y(i,n,r,s)),o}}function _(t,i,n,r,s){var o=t.target,a=o.controls[t.corner],l=o.canvas.getZoom(),h=o.padding/l,c=o.toLocalPoint(new e.Point(r,s),i,n);return c.x>=h&&(c.x-=h),c.x<=-h&&(c.x+=h),c.y>=h&&(c.y-=h),c.y<=h&&(c.y+=h),c.x-=a.offsetX,c.y-=a.offsetY,c}function C(t){return t.flipX!==t.flipY}function w(t,e,i,n,r){if(0!==t[e]){var s=r/t._getTransformedDimensions()[n]*t[i];t.set(i,s)}}function S(t,e,i,n){var r,h=e.target,c=h._getTransformedDimensions(0,h.skewY),d=_(e,e.originX,e.originY,i,n),f=Math.abs(2*d.x)-c.x,g=h.skewX;f<2?r=0:(r=u(Math.atan2(f/h.scaleX,c.y/h.scaleY)),e.originX===s&&e.originY===l&&(r=-r),e.originX===a&&e.originY===o&&(r=-r),C(h)&&(r=-r));var p=g!==r;if(p){var v=h._getTransformedDimensions().y;h.set("skewX",r),w(h,"skewY","scaleY","y",v)}return p}function T(t,e,i,n){var r,h=e.target,c=h._getTransformedDimensions(h.skewX,0),d=_(e,e.originX,e.originY,i,n),f=Math.abs(2*d.y)-c.y,g=h.skewY;f<2?r=0:(r=u(Math.atan2(f/h.scaleY,c.x/h.scaleX)),e.originX===s&&e.originY===l&&(r=-r),e.originX===a&&e.originY===o&&(r=-r),C(h)&&(r=-r));var p=g!==r;if(p){var v=h._getTransformedDimensions().x;h.set("skewY",r),w(h,"skewX","scaleX","x",v)}return p}function O(t,e,i,n,r){r=r||{};var s,o,a,l,h,u,f=e.target,g=f.lockScalingX,y=f.lockScalingY,b=r.by,x=p(t,f),C=m(f,b,x),w=e.gestureScale;if(C)return!1;if(w)o=e.scaleX*w,a=e.scaleY*w;else{if(s=_(e,e.originX,e.originY,i,n),h="y"!==b?d(s.x):1,u="x"!==b?d(s.y):1,e.signX||(e.signX=h),e.signY||(e.signY=u),f.lockScalingFlip&&(e.signX!==h||e.signY!==u))return!1;if(l=f._getTransformedDimensions(),x&&!b){var S=Math.abs(s.x)+Math.abs(s.y),T=e.original,O=S/(Math.abs(l.x*T.scaleX/f.scaleX)+Math.abs(l.y*T.scaleY/f.scaleY));o=T.scaleX*O,a=T.scaleY*O}else o=Math.abs(s.x*f.scaleX/l.x),a=Math.abs(s.y*f.scaleY/l.y);v(e)&&(o*=2,a*=2),e.signX!==h&&"y"!==b&&(e.originX=c[e.originX],o*=-1,e.signX=h),e.signY!==u&&"x"!==b&&(e.originY=c[e.originY],a*=-1,e.signY=u)}var E=f.scaleX,k=f.scaleY;return b?("x"===b&&f.set("scaleX",o),"y"===b&&f.set("scaleY",a)):(!g&&f.set("scaleX",o),!y&&f.set("scaleY",a)),E!==f.scaleX||k!==f.scaleY}r.scaleCursorStyleHandler=function(t,e,n){var r=p(t,n),s="";if(0!==e.x&&0===e.y?s="x":0===e.x&&0!==e.y&&(s="y"),m(n,s,r))return"not-allowed";var o=f(n,e);return i[o]+"-resize"},r.skewCursorStyleHandler=function(t,e,i){var r="not-allowed";if(0!==e.x&&i.lockSkewingY)return r;if(0!==e.y&&i.lockSkewingX)return r;var s=f(i,e)%4;return n[s]+"-resize"},r.scaleSkewCursorStyleHandler=function(t,e,i){return t[i.canvas.altActionKey]?r.skewCursorStyleHandler(t,e,i):r.scaleCursorStyleHandler(t,e,i)},r.rotationWithSnapping=x("rotating",b((function(t,e,i,n){var r=e,s=r.target,o=s.translateToOriginPoint(s.getCenterPoint(),r.originX,r.originY);if(s.lockRotation)return!1;var a,l=Math.atan2(r.ey-o.y,r.ex-o.x),h=Math.atan2(n-o.y,i-o.x),c=u(h-l+r.theta);if(s.snapAngle>0){var d=s.snapAngle,f=s.snapThreshold||d,g=Math.ceil(c/d)*d,p=Math.floor(c/d)*d;Math.abs(c-p)0?s:a:(c>0&&(r=u===o?s:a),c<0&&(r=u===o?a:s),C(l)&&(r=r===s?a:s)),e.originX=r,x("skewing",b(S))(t,e,i,n))},r.skewHandlerY=function(t,e,i,n){var r,a=e.target,c=a.skewY,u=e.originX;return!a.lockSkewingY&&(0===c?r=_(e,h,h,i,n).y>0?o:l:(c>0&&(r=u===s?o:l),c<0&&(r=u===s?l:o),C(a)&&(r=r===o?l:o)),e.originY=r,x("skewing",b(T))(t,e,i,n))},r.dragHandler=function(t,e,i,n){var r=e.target,s=i-e.offsetX,o=n-e.offsetY,a=!r.get("lockMovementX")&&r.left!==s,l=!r.get("lockMovementY")&&r.top!==o;return a&&r.set("left",s),l&&r.set("top",o),(a||l)&&g("moving",y(t,e,i,n)),a||l},r.scaleOrSkewActionName=function(t,e,i){var n=t[i.canvas.altActionKey];return 0===e.x?n?"skewX":"scaleY":0===e.y?n?"skewY":"scaleX":void 0},r.rotationStyleHandler=function(t,e,i){return i.lockRotation?"not-allowed":e.cursorStyle},r.fireEvent=g,r.wrapWithFixedAnchor=b,r.wrapWithFireEvent=x,r.getLocalPoint=_,e.controlsUtils=r}(e),function(t){"use strict";var e=t.fabric||(t.fabric={}),i=e.util.degreesToRadians,n=e.controlsUtils;n.renderCircleControl=function(t,e,i,n,r){n=n||{};var s,o=this.sizeX||n.cornerSize||r.cornerSize,a=this.sizeY||n.cornerSize||r.cornerSize,l="undefined"!==typeof n.transparentCorners?n.transparentCorners:r.transparentCorners,h=l?"stroke":"fill",c=!l&&(n.cornerStrokeColor||r.cornerStrokeColor),u=e,d=i;t.save(),t.fillStyle=n.cornerColor||r.cornerColor,t.strokeStyle=n.cornerStrokeColor||r.cornerStrokeColor,o>a?(s=o,t.scale(1,a/o),d=i*o/a):a>o?(s=a,t.scale(o/a,1),u=e*a/o):s=o,t.lineWidth=1,t.beginPath(),t.arc(u,d,s/2,0,2*Math.PI,!1),t[h](),c&&t.stroke(),t.restore()},n.renderSquareControl=function(t,e,n,r,s){r=r||{};var o=this.sizeX||r.cornerSize||s.cornerSize,a=this.sizeY||r.cornerSize||s.cornerSize,l="undefined"!==typeof r.transparentCorners?r.transparentCorners:s.transparentCorners,h=l?"stroke":"fill",c=!l&&(r.cornerStrokeColor||s.cornerStrokeColor),u=o/2,d=a/2;t.save(),t.fillStyle=r.cornerColor||s.cornerColor,t.strokeStyle=r.cornerStrokeColor||s.cornerStrokeColor,t.lineWidth=1,t.translate(e,n),t.rotate(i(s.angle)),t[h+"Rect"](-u,-d,o,a),c&&t.strokeRect(-u,-d,o,a),t.restore()}}(e),function(t){"use strict";var e=t.fabric||(t.fabric={});e.Control=function(t){for(var e in t)this[e]=t[e]},e.Control.prototype={visible:!0,actionName:"scale",angle:0,x:0,y:0,offsetX:0,offsetY:0,sizeX:null,sizeY:null,touchSizeX:null,touchSizeY:null,cursorStyle:"crosshair",withConnection:!1,actionHandler:function(){},mouseDownHandler:function(){},mouseUpHandler:function(){},getActionHandler:function(){return this.actionHandler},getMouseDownHandler:function(){return this.mouseDownHandler},getMouseUpHandler:function(){return this.mouseUpHandler},cursorStyleHandler:function(t,e){return e.cursorStyle},getActionName:function(t,e){return e.actionName},getVisibility:function(t,e){var i=t._controlsVisibility;return i&&"undefined"!==typeof i[e]?i[e]:this.visible},setVisibility:function(t){this.visible=t},positionHandler:function(t,i){return e.util.transformPoint({x:this.x*t.x+this.offsetX,y:this.y*t.y+this.offsetY},i)},calcCornerCoords:function(t,i,n,r,s){var o,a,l,h,c=s?this.touchSizeX:this.sizeX,u=s?this.touchSizeY:this.sizeY;if(c&&u&&c!==u){var d=Math.atan2(u,c),f=Math.sqrt(c*c+u*u)/2,g=d-e.util.degreesToRadians(t),p=Math.PI/2-d-e.util.degreesToRadians(t);o=f*e.util.cos(g),a=f*e.util.sin(g),l=f*e.util.cos(p),h=f*e.util.sin(p)}else{f=.7071067812*(c&&u?c:i);g=e.util.degreesToRadians(45-t);o=l=f*e.util.cos(g),a=h=f*e.util.sin(g)}return{tl:{x:n-h,y:r-l},tr:{x:n+o,y:r-a},bl:{x:n-o,y:r+a},br:{x:n+h,y:r+l}}},render:function(t,i,n,r,s){if("circle"===((r=r||{}).cornerStyle||s.cornerStyle))e.controlsUtils.renderCircleControl.call(this,t,i,n,r,s);else e.controlsUtils.renderSquareControl.call(this,t,i,n,r,s)}}}(e),function(){function t(t,e){var i,n,s,o,a=t.getAttribute("style"),l=t.getAttribute("offset")||0;if(l=(l=parseFloat(l)/(/%$/.test(l)?100:1))<0?0:l>1?1:l,a){var h=a.split(/\s*;\s*/);for(""===h[h.length-1]&&h.pop(),o=h.length;o--;){var c=h[o].split(/\s*:\s*/),u=c[0].trim(),d=c[1].trim();"stop-color"===u?i=d:"stop-opacity"===u&&(s=d)}}return i||(i=t.getAttribute("stop-color")||"rgb(0,0,0)"),s||(s=t.getAttribute("stop-opacity")),n=(i=new r.Color(i)).getAlpha(),s=isNaN(parseFloat(s))?1:parseFloat(s),s*=n*e,{offset:l,color:i.toRgb(),opacity:s}}var e=r.util.object.clone;r.Gradient=r.util.createClass({offsetX:0,offsetY:0,gradientTransform:null,gradientUnits:"pixels",type:"linear",initialize:function(t){t||(t={}),t.coords||(t.coords={});var e,i=this;Object.keys(t).forEach((function(e){i[e]=t[e]})),this.id?this.id+="_"+r.Object.__uid++:this.id=r.Object.__uid++,e={x1:t.coords.x1||0,y1:t.coords.y1||0,x2:t.coords.x2||0,y2:t.coords.y2||0},"radial"===this.type&&(e.r1=t.coords.r1||0,e.r2=t.coords.r2||0),this.coords=e,this.colorStops=t.colorStops.slice()},addColorStop:function(t){for(var e in t){var i=new r.Color(t[e]);this.colorStops.push({offset:parseFloat(e),color:i.toRgb(),opacity:i.getAlpha()})}return this},toObject:function(t){var e={type:this.type,coords:this.coords,colorStops:this.colorStops,offsetX:this.offsetX,offsetY:this.offsetY,gradientUnits:this.gradientUnits,gradientTransform:this.gradientTransform?this.gradientTransform.concat():this.gradientTransform};return r.util.populateWithProperties(this,e,t),e},toSVG:function(t,i){var n,s,o,a,l=e(this.coords,!0),h=(i=i||{},e(this.colorStops,!0)),c=l.r1>l.r2,u=this.gradientTransform?this.gradientTransform.concat():r.iMatrix.concat(),d=-this.offsetX,f=-this.offsetY,g=!!i.additionalTransform,p="pixels"===this.gradientUnits?"userSpaceOnUse":"objectBoundingBox";if(h.sort((function(t,e){return t.offset-e.offset})),"objectBoundingBox"===p?(d/=t.width,f/=t.height):(d+=t.width/2,f+=t.height/2),"path"===t.type&&"percentage"!==this.gradientUnits&&(d-=t.pathOffset.x,f-=t.pathOffset.y),u[4]-=d,u[5]-=f,a='id="SVGID_'+this.id+'" gradientUnits="'+p+'"',a+=' gradientTransform="'+(g?i.additionalTransform+" ":"")+r.util.matrixToSVG(u)+'" ',"linear"===this.type?o=["\n']:"radial"===this.type&&(o=["\n']),"radial"===this.type){if(c)for((h=h.concat()).reverse(),n=0,s=h.length;n0){var m=v/Math.max(l.r1,l.r2);for(n=0,s=h.length;n\n')}return o.push("linear"===this.type?"\n":"\n"),o.join("")},toLive:function(t){var e,i,n,s=r.util.object.clone(this.coords);if(this.type){for("linear"===this.type?e=t.createLinearGradient(s.x1,s.y1,s.x2,s.y2):"radial"===this.type&&(e=t.createRadialGradient(s.x1,s.y1,s.r1,s.x2,s.y2,s.r2)),i=0,n=this.colorStops.length;i1?1:o,isNaN(o)&&(o=1);var a,l,h,c,u=e.getElementsByTagName("stop"),d="userSpaceOnUse"===e.getAttribute("gradientUnits")?"pixels":"percentage",f=e.getAttribute("gradientTransform")||"",g=[],p=0,v=0;for("linearGradient"===e.nodeName||"LINEARGRADIENT"===e.nodeName?(a="linear",l=function(t){return{x1:t.getAttribute("x1")||0,y1:t.getAttribute("y1")||0,x2:t.getAttribute("x2")||"100%",y2:t.getAttribute("y2")||0}}(e)):(a="radial",l=function(t){return{x1:t.getAttribute("fx")||t.getAttribute("cx")||"50%",y1:t.getAttribute("fy")||t.getAttribute("cy")||"50%",r1:0,x2:t.getAttribute("cx")||"50%",y2:t.getAttribute("cy")||"50%",r2:t.getAttribute("r")||"50%"}}(e)),h=u.length;h--;)g.push(t(u[h],o));return c=r.parseTransformAttribute(f),function(t,e,i,n){var r,s;Object.keys(e).forEach((function(t){"Infinity"===(r=e[t])?s=1:"-Infinity"===r?s=0:(s=parseFloat(e[t],10),"string"===typeof r&&/^(\d+\.\d+)%|(\d+)%$/.test(r)&&(s*=.01,"pixels"===n&&("x1"!==t&&"x2"!==t&&"r2"!==t||(s*=i.viewBoxWidth||i.width),"y1"!==t&&"y2"!==t||(s*=i.viewBoxHeight||i.height)))),e[t]=s}))}(0,l,s,d),"pixels"===d&&(p=-i.left,v=-i.top),new r.Gradient({id:e.getAttribute("id"),type:a,coords:l,colorStops:g,gradientUnits:d,gradientTransform:c,offsetX:p,offsetY:v})}})}(),function(){"use strict";var t=r.util.toFixed;r.Pattern=r.util.createClass({repeat:"repeat",offsetX:0,offsetY:0,crossOrigin:"",patternTransform:null,initialize:function(t,e){if(t||(t={}),this.id=r.Object.__uid++,this.setOptions(t),!t.source||t.source&&"string"!==typeof t.source)e&&e(this);else{var i=this;this.source=r.util.createImage(),r.util.loadImage(t.source,(function(t,n){i.source=t,e&&e(i,n)}),null,this.crossOrigin)}},toObject:function(e){var i,n,s=r.Object.NUM_FRACTION_DIGITS;return"string"===typeof this.source.src?i=this.source.src:"object"===typeof this.source&&this.source.toDataURL&&(i=this.source.toDataURL()),n={type:"pattern",source:i,repeat:this.repeat,crossOrigin:this.crossOrigin,offsetX:t(this.offsetX,s),offsetY:t(this.offsetY,s),patternTransform:this.patternTransform?this.patternTransform.concat():null},r.util.populateWithProperties(this,n,e),n},toSVG:function(t){var e="function"===typeof this.source?this.source():this.source,i=e.width/t.width,n=e.height/t.height,r=this.offsetX/t.width,s=this.offsetY/t.height,o="";return"repeat-x"!==this.repeat&&"no-repeat"!==this.repeat||(n=1,s&&(n+=Math.abs(s))),"repeat-y"!==this.repeat&&"no-repeat"!==this.repeat||(i=1,r&&(i+=Math.abs(r))),e.src?o=e.src:e.toDataURL&&(o=e.toDataURL()),'\n\n\n'},setOptions:function(t){for(var e in t)this[e]=t[e]},toLive:function(t){var e=this.source;if(!e)return"";if("undefined"!==typeof e.src){if(!e.complete)return"";if(0===e.naturalWidth||0===e.naturalHeight)return""}return t.createPattern(e,this.repeat)}})}(),function(t){"use strict";var e=t.fabric||(t.fabric={}),i=e.util.toFixed;e.Shadow?e.warn("fabric.Shadow is already defined."):(e.Shadow=e.util.createClass({color:"rgb(0,0,0)",blur:0,offsetX:0,offsetY:0,affectStroke:!1,includeDefaultValues:!0,nonScaling:!1,initialize:function(t){for(var i in"string"===typeof t&&(t=this._parseShadow(t)),t)this[i]=t[i];this.id=e.Object.__uid++},_parseShadow:function(t){var i=t.trim(),n=e.Shadow.reOffsetsAndBlur.exec(i)||[];return{color:(i.replace(e.Shadow.reOffsetsAndBlur,"")||"rgb(0,0,0)").trim(),offsetX:parseFloat(n[1],10)||0,offsetY:parseFloat(n[2],10)||0,blur:parseFloat(n[3],10)||0}},toString:function(){return[this.offsetX,this.offsetY,this.blur,this.color].join("px ")},toSVG:function(t){var n=40,r=40,s=e.Object.NUM_FRACTION_DIGITS,o=e.util.rotateVector({x:this.offsetX,y:this.offsetY},e.util.degreesToRadians(-t.angle)),a=new e.Color(this.color);return t.width&&t.height&&(n=100*i((Math.abs(o.x)+this.blur)/t.width,s)+20,r=100*i((Math.abs(o.y)+this.blur)/t.height,s)+20),t.flipX&&(o.x*=-1),t.flipY&&(o.y*=-1),'\n\t\n\t\n\t\n\t\n\t\n\t\t\n\t\t\n\t\n\n'},toObject:function(){if(this.includeDefaultValues)return{color:this.color,blur:this.blur,offsetX:this.offsetX,offsetY:this.offsetY,affectStroke:this.affectStroke,nonScaling:this.nonScaling};var t={},i=e.Shadow.prototype;return["color","blur","offsetX","offsetY","affectStroke","nonScaling"].forEach((function(e){this[e]!==i[e]&&(t[e]=this[e])}),this),t}}),e.Shadow.reOffsetsAndBlur=/(?:\s|^)(-?\d+(?:\.\d*)?(?:px)?(?:\s?|$))?(-?\d+(?:\.\d*)?(?:px)?(?:\s?|$))?(\d+(?:\.\d*)?(?:px)?)?(?:\s?|$)(?:$|\s)/)}(e),function(){"use strict";if(r.StaticCanvas)r.warn("fabric.StaticCanvas is already defined.");else{var t=r.util.object.extend,e=r.util.getElementOffset,i=r.util.removeFromArray,n=r.util.toFixed,s=r.util.transformPoint,o=r.util.invertTransform,a=r.util.getNodeCanvas,l=r.util.createCanvasElement,h=new Error("Could not initialize `canvas` element");r.StaticCanvas=r.util.createClass(r.CommonMethods,{initialize:function(t,e){e||(e={}),this.renderAndResetBound=this.renderAndReset.bind(this),this.requestRenderAllBound=this.requestRenderAll.bind(this),this._initStatic(t,e)},backgroundColor:"",backgroundImage:null,overlayColor:"",overlayImage:null,includeDefaultValues:!0,stateful:!1,renderOnAddRemove:!0,controlsAboveOverlay:!1,allowTouchScrolling:!1,imageSmoothingEnabled:!0,viewportTransform:r.iMatrix.concat(),backgroundVpt:!0,overlayVpt:!0,enableRetinaScaling:!0,vptCoords:{},skipOffscreen:!0,clipPath:void 0,_initStatic:function(t,e){var i=this.requestRenderAllBound;this._objects=[],this._createLowerCanvas(t),this._initOptions(e),this.interactive||this._initRetinaScaling(),e.overlayImage&&this.setOverlayImage(e.overlayImage,i),e.backgroundImage&&this.setBackgroundImage(e.backgroundImage,i),e.backgroundColor&&this.setBackgroundColor(e.backgroundColor,i),e.overlayColor&&this.setOverlayColor(e.overlayColor,i),this.calcOffset()},_isRetinaScaling:function(){return r.devicePixelRatio>1&&this.enableRetinaScaling},getRetinaScaling:function(){return this._isRetinaScaling()?Math.max(1,r.devicePixelRatio):1},_initRetinaScaling:function(){if(this._isRetinaScaling()){var t=r.devicePixelRatio;this.__initRetinaScaling(t,this.lowerCanvasEl,this.contextContainer),this.upperCanvasEl&&this.__initRetinaScaling(t,this.upperCanvasEl,this.contextTop)}},__initRetinaScaling:function(t,e,i){e.setAttribute("width",this.width*t),e.setAttribute("height",this.height*t),i.scale(t,t)},calcOffset:function(){return this._offset=e(this.lowerCanvasEl),this},setOverlayImage:function(t,e,i){return this.__setBgOverlayImage("overlayImage",t,e,i)},setBackgroundImage:function(t,e,i){return this.__setBgOverlayImage("backgroundImage",t,e,i)},setOverlayColor:function(t,e){return this.__setBgOverlayColor("overlayColor",t,e)},setBackgroundColor:function(t,e){return this.__setBgOverlayColor("backgroundColor",t,e)},__setBgOverlayImage:function(t,e,i,n){return"string"===typeof e?r.util.loadImage(e,(function(e,s){if(e){var o=new r.Image(e,n);this[t]=o,o.canvas=this}i&&i(e,s)}),this,n&&n.crossOrigin):(n&&e.setOptions(n),this[t]=e,e&&(e.canvas=this),i&&i(e,!1)),this},__setBgOverlayColor:function(t,e,i){return this[t]=e,this._initGradient(e,t),this._initPattern(e,t,i),this},_createCanvasElement:function(){var t=l();if(!t)throw h;if(t.style||(t.style={}),"undefined"===typeof t.getContext)throw h;return t},_initOptions:function(t){var e=this.lowerCanvasEl;this._setOptions(t),this.width=this.width||parseInt(e.width,10)||0,this.height=this.height||parseInt(e.height,10)||0,this.lowerCanvasEl.style&&(e.width=this.width,e.height=this.height,e.style.width=this.width+"px",e.style.height=this.height+"px",this.viewportTransform=this.viewportTransform.slice())},_createLowerCanvas:function(t){t&&t.getContext?this.lowerCanvasEl=t:this.lowerCanvasEl=r.util.getById(t)||this._createCanvasElement(),r.util.addClass(this.lowerCanvasEl,"lower-canvas"),this._originalCanvasStyle=this.lowerCanvasEl.style,this.interactive&&this._applyCanvasStyle(this.lowerCanvasEl),this.contextContainer=this.lowerCanvasEl.getContext("2d")},getWidth:function(){return this.width},getHeight:function(){return this.height},setWidth:function(t,e){return this.setDimensions({width:t},e)},setHeight:function(t,e){return this.setDimensions({height:t},e)},setDimensions:function(t,e){var i;for(var n in e=e||{},t)i=t[n],e.cssOnly||(this._setBackstoreDimension(n,t[n]),i+="px",this.hasLostContext=!0),e.backstoreOnly||this._setCssDimension(n,i);return this._isCurrentlyDrawing&&this.freeDrawingBrush&&this.freeDrawingBrush._setBrushStyles(this.contextTop),this._initRetinaScaling(),this.calcOffset(),e.cssOnly||this.requestRenderAll(),this},_setBackstoreDimension:function(t,e){return this.lowerCanvasEl[t]=e,this.upperCanvasEl&&(this.upperCanvasEl[t]=e),this.cacheCanvasEl&&(this.cacheCanvasEl[t]=e),this[t]=e,this},_setCssDimension:function(t,e){return this.lowerCanvasEl.style[t]=e,this.upperCanvasEl&&(this.upperCanvasEl.style[t]=e),this.wrapperEl&&(this.wrapperEl.style[t]=e),this},getZoom:function(){return this.viewportTransform[0]},setViewportTransform:function(t){var e,i,n,r=this._activeObject,s=this.backgroundImage,o=this.overlayImage;for(this.viewportTransform=t,i=0,n=this._objects.length;i\n'),this._setSVGBgOverlayColor(i,"background"),this._setSVGBgOverlayImage(i,"backgroundImage",e),this._setSVGObjects(i,e),this.clipPath&&i.push("\n"),this._setSVGBgOverlayColor(i,"overlay"),this._setSVGBgOverlayImage(i,"overlayImage",e),i.push(""),i.join("")},_setSVGPreamble:function(t,e){e.suppressPreamble||t.push('\n','\n')},_setSVGHeader:function(t,e){var i,s=e.width||this.width,o=e.height||this.height,a='viewBox="0 0 '+this.width+" "+this.height+'" ',l=r.Object.NUM_FRACTION_DIGITS;e.viewBox?a='viewBox="'+e.viewBox.x+" "+e.viewBox.y+" "+e.viewBox.width+" "+e.viewBox.height+'" ':this.svgViewportTransformation&&(i=this.viewportTransform,a='viewBox="'+n(-i[4]/i[0],l)+" "+n(-i[5]/i[3],l)+" "+n(this.width/i[0],l)+" "+n(this.height/i[3],l)+'" '),t.push("\n',"Created with Fabric.js ",r.version,"\n","\n",this.createSVGFontFacesMarkup(),this.createSVGRefElementsMarkup(),this.createSVGClipPathMarkup(e),"\n")},createSVGClipPathMarkup:function(t){var e=this.clipPath;return e?(e.clipPathId="CLIPPATH_"+r.Object.__uid++,'\n'+this.clipPath.toClipPathSVG(t.reviver)+"\n"):""},createSVGRefElementsMarkup:function(){var t=this;return["background","overlay"].map((function(e){var i=t[e+"Color"];if(i&&i.toLive){var n=t[e+"Vpt"],s=t.viewportTransform,o={width:t.width/(n?s[0]:1),height:t.height/(n?s[3]:1)};return i.toSVG(o,{additionalTransform:n?r.util.matrixToSVG(s):""})}})).join("")},createSVGFontFacesMarkup:function(){var t,e,i,n,s,o,a,l,h="",c={},u=r.fontPaths,d=[];for(this._objects.forEach((function t(e){d.push(e),e._objects&&e._objects.forEach(t)})),a=0,l=d.length;a',"\n",h,"","\n"].join("")),h},_setSVGObjects:function(t,e){var i,n,r,s=this._objects;for(n=0,r=s.length;n\n")}else t.push('\n")},sendToBack:function(t){if(!t)return this;var e,n,r,s=this._activeObject;if(t===s&&"activeSelection"===t.type)for(e=(r=s._objects).length;e--;)n=r[e],i(this._objects,n),this._objects.unshift(n);else i(this._objects,t),this._objects.unshift(t);return this.renderOnAddRemove&&this.requestRenderAll(),this},bringToFront:function(t){if(!t)return this;var e,n,r,s=this._activeObject;if(t===s&&"activeSelection"===t.type)for(r=s._objects,e=0;e0+h&&(o=s-1,i(this._objects,r),this._objects.splice(o,0,r)),h++;else 0!==(s=this._objects.indexOf(t))&&(o=this._findNewLowerIndex(t,s,e),i(this._objects,t),this._objects.splice(o,0,t));return this.renderOnAddRemove&&this.requestRenderAll(),this},_findNewLowerIndex:function(t,e,i){var n,r;if(i)for(n=e,r=e-1;r>=0;--r){if(t.intersectsWithObject(this._objects[r])||t.isContainedWithinObject(this._objects[r])||this._objects[r].isContainedWithinObject(t)){n=r;break}}else n=e-1;return n},bringForward:function(t,e){if(!t)return this;var n,r,s,o,a,l=this._activeObject,h=0;if(t===l&&"activeSelection"===t.type)for(n=(a=l._objects).length;n--;)r=a[n],(s=this._objects.indexOf(r))"}}),t(r.StaticCanvas.prototype,r.Observable),t(r.StaticCanvas.prototype,r.Collection),t(r.StaticCanvas.prototype,r.DataURLExporter),t(r.StaticCanvas,{EMPTY_JSON:'{"objects": [], "background": "white"}',supports:function(t){var e=l();if(!e||!e.getContext)return null;var i=e.getContext("2d");return i&&"setLineDash"===t?"undefined"!==typeof i.setLineDash:null}}),r.StaticCanvas.prototype.toJSON=r.StaticCanvas.prototype.toObject,r.isLikelyNode&&(r.StaticCanvas.prototype.createPNGStream=function(){var t=a(this.lowerCanvasEl);return t&&t.createPNGStream()},r.StaticCanvas.prototype.createJPEGStream=function(t){var e=a(this.lowerCanvasEl);return e&&e.createJPEGStream(t)})}}(),r.BaseBrush=r.util.createClass({color:"rgb(0, 0, 0)",width:1,shadow:null,strokeLineCap:"round",strokeLineJoin:"round",strokeMiterLimit:10,strokeDashArray:null,limitedToCanvasSize:!1,_setBrushStyles:function(t){t.strokeStyle=this.color,t.lineWidth=this.width,t.lineCap=this.strokeLineCap,t.miterLimit=this.strokeMiterLimit,t.lineJoin=this.strokeLineJoin,t.setLineDash(this.strokeDashArray||[])},_saveAndTransform:function(t){var e=this.canvas.viewportTransform;t.save(),t.transform(e[0],e[1],e[2],e[3],e[4],e[5])},_setShadow:function(){if(this.shadow){var t=this.canvas,e=this.shadow,i=t.contextTop,n=t.getZoom();t&&t._isRetinaScaling()&&(n*=r.devicePixelRatio),i.shadowColor=e.color,i.shadowBlur=e.blur*n,i.shadowOffsetX=e.offsetX*n,i.shadowOffsetY=e.offsetY*n}},needsFullRender:function(){return new r.Color(this.color).getAlpha()<1||!!this.shadow},_resetShadow:function(){var t=this.canvas.contextTop;t.shadowColor="",t.shadowBlur=t.shadowOffsetX=t.shadowOffsetY=0},_isOutSideCanvas:function(t){return t.x<0||t.x>this.canvas.getWidth()||t.y<0||t.y>this.canvas.getHeight()}}),r.PencilBrush=r.util.createClass(r.BaseBrush,{decimate:.4,drawStraightLine:!1,straightLineKey:"shiftKey",initialize:function(t){this.canvas=t,this._points=[]},needsFullRender:function(){return this.callSuper("needsFullRender")||this._hasStraightLine},_drawSegment:function(t,e,i){var n=e.midPointFrom(i);return t.quadraticCurveTo(e.x,e.y,n.x,n.y),n},onMouseDown:function(t,e){this.canvas._isMainEvent(e.e)&&(this.drawStraightLine=e.e[this.straightLineKey],this._prepareForDrawing(t),this._captureDrawingPath(t),this._render())},onMouseMove:function(t,e){if(this.canvas._isMainEvent(e.e)&&(this.drawStraightLine=e.e[this.straightLineKey],(!0!==this.limitedToCanvasSize||!this._isOutSideCanvas(t))&&this._captureDrawingPath(t)&&this._points.length>1))if(this.needsFullRender())this.canvas.clearContext(this.canvas.contextTop),this._render();else{var i=this._points,n=i.length,r=this.canvas.contextTop;this._saveAndTransform(r),this.oldEnd&&(r.beginPath(),r.moveTo(this.oldEnd.x,this.oldEnd.y)),this.oldEnd=this._drawSegment(r,i[n-2],i[n-1],!0),r.stroke(),r.restore()}},onMouseUp:function(t){return!this.canvas._isMainEvent(t.e)||(this.drawStraightLine=!1,this.oldEnd=void 0,this._finalizeAndAddPath(),!1)},_prepareForDrawing:function(t){var e=new r.Point(t.x,t.y);this._reset(),this._addPoint(e),this.canvas.contextTop.moveTo(e.x,e.y)},_addPoint:function(t){return!(this._points.length>1&&t.eq(this._points[this._points.length-1]))&&(this.drawStraightLine&&this._points.length>1&&(this._hasStraightLine=!0,this._points.pop()),this._points.push(t),!0)},_reset:function(){this._points=[],this._setBrushStyles(this.canvas.contextTop),this._setShadow(),this._hasStraightLine=!1},_captureDrawingPath:function(t){var e=new r.Point(t.x,t.y);return this._addPoint(e)},_render:function(t){var e,i,n=this._points[0],s=this._points[1];if(t=t||this.canvas.contextTop,this._saveAndTransform(t),t.beginPath(),2===this._points.length&&n.x===s.x&&n.y===s.y){var o=this.width/1e3;n=new r.Point(n.x,n.y),s=new r.Point(s.x,s.y),n.x-=o,s.x+=o}for(t.moveTo(n.x,n.y),e=1,i=this._points.length;e=r&&(o=t[i],a.push(o));return a.push(t[s]),a},_finalizeAndAddPath:function(){this.canvas.contextTop.closePath(),this.decimate&&(this._points=this.decimatePoints(this._points,this.decimate));var t=this.convertPointsToSVGPath(this._points);if(this._isEmptySVGPath(t))this.canvas.requestRenderAll();else{var e=this.createPath(t);this.canvas.clearContext(this.canvas.contextTop),this.canvas.fire("before:path:created",{path:e}),this.canvas.add(e),this.canvas.requestRenderAll(),e.setCoords(),this._resetShadow(),this.canvas.fire("path:created",{path:e})}}}),r.CircleBrush=r.util.createClass(r.BaseBrush,{width:10,initialize:function(t){this.canvas=t,this.points=[]},drawDot:function(t){var e=this.addPoint(t),i=this.canvas.contextTop;this._saveAndTransform(i),this.dot(i,e),i.restore()},dot:function(t,e){t.fillStyle=e.fill,t.beginPath(),t.arc(e.x,e.y,e.radius,0,2*Math.PI,!1),t.closePath(),t.fill()},onMouseDown:function(t){this.points.length=0,this.canvas.clearContext(this.canvas.contextTop),this._setShadow(),this.drawDot(t)},_render:function(){var t,e,i=this.canvas.contextTop,n=this.points;for(this._saveAndTransform(i),t=0,e=n.length;t0&&!this.preserveObjectStacking){e=[],i=[];for(var r=0,s=this._objects.length;r1&&(this._activeObject._objects=i),e.push.apply(e,i)}else e=this._objects;return e},renderAll:function(){!this.contextTopDirty||this._groupSelector||this.isDrawingMode||(this.clearContext(this.contextTop),this.contextTopDirty=!1),this.hasLostContext&&(this.renderTopLayer(this.contextTop),this.hasLostContext=!1);var t=this.contextContainer;return this.renderCanvas(t,this._chooseObjectsToRender()),this},renderTopLayer:function(t){t.save(),this.isDrawingMode&&this._isCurrentlyDrawing&&(this.freeDrawingBrush&&this.freeDrawingBrush._render(),this.contextTopDirty=!0),this.selection&&this._groupSelector&&(this._drawSelection(t),this.contextTopDirty=!0),t.restore()},renderTop:function(){var t=this.contextTop;return this.clearContext(t),this.renderTopLayer(t),this.fire("after:render"),this},_normalizePointer:function(t,e){var i=t.calcTransformMatrix(),n=r.util.invertTransform(i),s=this.restorePointerVpt(e);return r.util.transformPoint(s,n)},isTargetTransparent:function(t,e,i){if(t.shouldCache()&&t._cacheCanvas&&t!==this._activeObject){var n=this._normalizePointer(t,{x:e,y:i}),s=Math.max(t.cacheTranslationX+n.x*t.zoomX,0),o=Math.max(t.cacheTranslationY+n.y*t.zoomY,0);return r.util.isTransparent(t._cacheContext,Math.round(s),Math.round(o),this.targetFindTolerance)}var a=this.contextCache,l=t.selectionBackgroundColor,h=this.viewportTransform;return t.selectionBackgroundColor="",this.clearContext(a),a.save(),a.transform(h[0],h[1],h[2],h[3],h[4],h[5]),t.render(a),a.restore(),t.selectionBackgroundColor=l,r.util.isTransparent(a,e,i,this.targetFindTolerance)},_isSelectionKeyPressed:function(t){return Array.isArray(this.selectionKey)?!!this.selectionKey.find((function(e){return!0===t[e]})):t[this.selectionKey]},_shouldClearSelection:function(t,e){var i=this.getActiveObjects(),n=this._activeObject;return!e||e&&n&&i.length>1&&-1===i.indexOf(e)&&n!==e&&!this._isSelectionKeyPressed(t)||e&&!e.evented||e&&!e.selectable&&n&&n!==e},_shouldCenterTransform:function(t,e,i){var n;if(t)return"scale"===e||"scaleX"===e||"scaleY"===e||"resizing"===e?n=this.centeredScaling||t.centeredScaling:"rotate"===e&&(n=this.centeredRotation||t.centeredRotation),n?!i:i},_getOriginFromCorner:function(t,e){var i={x:t.originX,y:t.originY};return"ml"===e||"tl"===e||"bl"===e?i.x="right":"mr"!==e&&"tr"!==e&&"br"!==e||(i.x="left"),"tl"===e||"mt"===e||"tr"===e?i.y="bottom":"bl"!==e&&"mb"!==e&&"br"!==e||(i.y="top"),i},_getActionFromCorner:function(t,e,i,n){if(!e||!t)return"drag";var r=n.controls[e];return r.getActionName(i,r,n)},_setupCurrentTransform:function(t,i,n){if(i){var s=this.getPointer(t),o=i.__corner,a=i.controls[o],l=n&&o?a.getActionHandler(t,i,a):r.controlsUtils.dragHandler,h=this._getActionFromCorner(n,o,t,i),c=this._getOriginFromCorner(i,o),u=t[this.centeredKey],d={target:i,action:h,actionHandler:l,corner:o,scaleX:i.scaleX,scaleY:i.scaleY,skewX:i.skewX,skewY:i.skewY,offsetX:s.x-i.left,offsetY:s.y-i.top,originX:c.x,originY:c.y,ex:s.x,ey:s.y,lastX:s.x,lastY:s.y,theta:e(i.angle),width:i.width*i.scaleX,shiftKey:t.shiftKey,altKey:u,original:r.util.saveObjectTransform(i)};this._shouldCenterTransform(i,h,u)&&(d.originX="center",d.originY="center"),d.original.originX=c.x,d.original.originY=c.y,this._currentTransform=d,this._beforeTransform(t)}},setCursor:function(t){this.upperCanvasEl.style.cursor=t},_drawSelection:function(t){var e=this._groupSelector,i=new r.Point(e.ex,e.ey),n=r.util.transformPoint(i,this.viewportTransform),s=new r.Point(e.ex+e.left,e.ey+e.top),o=r.util.transformPoint(s,this.viewportTransform),a=Math.min(n.x,o.x),l=Math.min(n.y,o.y),h=Math.max(n.x,o.x),c=Math.max(n.y,o.y),u=this.selectionLineWidth/2;this.selectionColor&&(t.fillStyle=this.selectionColor,t.fillRect(a,l,h-a,c-l)),this.selectionLineWidth&&this.selectionBorderColor&&(t.lineWidth=this.selectionLineWidth,t.strokeStyle=this.selectionBorderColor,a+=u,l+=u,h-=u,c-=u,r.Object.prototype._setLineDash.call(this,t,this.selectionDashArray),t.strokeRect(a,l,h-a,c-l))},findTarget:function(t,e){if(!this.skipTargetFind){var n,r,s=this.getPointer(t,!0),o=this._activeObject,a=this.getActiveObjects(),l=i(t),h=a.length>1&&!e||1===a.length;if(this.targets=[],h&&o._findTargetCorner(s,l))return o;if(a.length>1&&!e&&o===this._searchPossibleTargets([o],s))return o;if(1===a.length&&o===this._searchPossibleTargets([o],s)){if(!this.preserveObjectStacking)return o;n=o,r=this.targets,this.targets=[]}var c=this._searchPossibleTargets(this._objects,s);return t[this.altSelectionKey]&&c&&n&&c!==n&&(c=n,this.targets=r),c}},_checkTarget:function(t,e,i){if(e&&e.visible&&e.evented&&e.containsPoint(t)){if(!this.perPixelTargetFind&&!e.perPixelTargetFind||e.isEditing)return!0;if(!this.isTargetTransparent(e,i.x,i.y))return!0}},_searchPossibleTargets:function(t,e){for(var i,n,s=t.length;s--;){var o=t[s],a=o.group?this._normalizePointer(o.group,e):e;if(this._checkTarget(a,o,e)){(i=t[s]).subTargetCheck&&i instanceof r.Group&&(n=this._searchPossibleTargets(i._objects,e))&&this.targets.push(n);break}}return i},restorePointerVpt:function(t){return r.util.transformPoint(t,r.util.invertTransform(this.viewportTransform))},getPointer:function(e,i){if(this._absolutePointer&&!i)return this._absolutePointer;if(this._pointer&&i)return this._pointer;var n,r=t(e),s=this.upperCanvasEl,o=s.getBoundingClientRect(),a=o.width||0,l=o.height||0;a&&l||("top"in o&&"bottom"in o&&(l=Math.abs(o.top-o.bottom)),"right"in o&&"left"in o&&(a=Math.abs(o.right-o.left))),this.calcOffset(),r.x=r.x-this._offset.left,r.y=r.y-this._offset.top,i||(r=this.restorePointerVpt(r));var h=this.getRetinaScaling();return 1!==h&&(r.x/=h,r.y/=h),n=0===a||0===l?{width:1,height:1}:{width:s.width/a,height:s.height/l},{x:r.x*n.width,y:r.y*n.height}},_createUpperCanvas:function(){var t=this.lowerCanvasEl.className.replace(/\s*lower-canvas\s*/,""),e=this.lowerCanvasEl,i=this.upperCanvasEl;i?i.className="":(i=this._createCanvasElement(),this.upperCanvasEl=i),r.util.addClass(i,"upper-canvas "+t),this.wrapperEl.appendChild(i),this._copyCanvasStyle(e,i),this._applyCanvasStyle(i),this.contextTop=i.getContext("2d")},getTopContext:function(){return this.contextTop},_createCacheCanvas:function(){this.cacheCanvasEl=this._createCanvasElement(),this.cacheCanvasEl.setAttribute("width",this.width),this.cacheCanvasEl.setAttribute("height",this.height),this.contextCache=this.cacheCanvasEl.getContext("2d")},_initWrapperElement:function(){this.wrapperEl=r.util.wrapElement(this.lowerCanvasEl,"div",{class:this.containerClass}),r.util.setStyle(this.wrapperEl,{width:this.width+"px",height:this.height+"px",position:"relative"}),r.util.makeElementUnselectable(this.wrapperEl)},_applyCanvasStyle:function(t){var e=this.width||t.width,i=this.height||t.height;r.util.setStyle(t,{position:"absolute",width:e+"px",height:i+"px",left:0,top:0,"touch-action":this.allowTouchScrolling?"manipulation":"none","-ms-touch-action":this.allowTouchScrolling?"manipulation":"none"}),t.width=e,t.height=i,r.util.makeElementUnselectable(t)},_copyCanvasStyle:function(t,e){e.style.cssText=t.style.cssText},getSelectionContext:function(){return this.contextTop},getSelectionElement:function(){return this.upperCanvasEl},getActiveObject:function(){return this._activeObject},getActiveObjects:function(){var t=this._activeObject;return t?"activeSelection"===t.type&&t._objects?t._objects.slice(0):[t]:[]},_onObjectRemoved:function(t){t===this._activeObject&&(this.fire("before:selection:cleared",{target:t}),this._discardActiveObject(),this.fire("selection:cleared",{target:t}),t.fire("deselected")),t===this._hoveredTarget&&(this._hoveredTarget=null,this._hoveredTargets=[]),this.callSuper("_onObjectRemoved",t)},_fireSelectionEvents:function(t,e){var i=!1,n=this.getActiveObjects(),r=[],s=[];t.forEach((function(t){-1===n.indexOf(t)&&(i=!0,t.fire("deselected",{e:e,target:t}),s.push(t))})),n.forEach((function(n){-1===t.indexOf(n)&&(i=!0,n.fire("selected",{e:e,target:n}),r.push(n))})),t.length>0&&n.length>0?i&&this.fire("selection:updated",{e:e,selected:r,deselected:s}):n.length>0?this.fire("selection:created",{e:e,selected:r}):t.length>0&&this.fire("selection:cleared",{e:e,deselected:s})},setActiveObject:function(t,e){var i=this.getActiveObjects();return this._setActiveObject(t,e),this._fireSelectionEvents(i,e),this},_setActiveObject:function(t,e){return this._activeObject!==t&&(!!this._discardActiveObject(e,t)&&(!t.onSelect({e:e})&&(this._activeObject=t,!0)))},_discardActiveObject:function(t,e){var i=this._activeObject;if(i){if(i.onDeselect({e:t,object:e}))return!1;this._activeObject=null}return!0},discardActiveObject:function(t){var e=this.getActiveObjects(),i=this.getActiveObject();return e.length&&this.fire("before:selection:cleared",{target:i,e:t}),this._discardActiveObject(t),this._fireSelectionEvents(e,t),this},dispose:function(){var t=this.wrapperEl;return this.removeListeners(),t.removeChild(this.upperCanvasEl),t.removeChild(this.lowerCanvasEl),this.contextCache=null,this.contextTop=null,["upperCanvasEl","cacheCanvasEl"].forEach(function(t){r.util.cleanUpJsdomNode(this[t]),this[t]=void 0}.bind(this)),t.parentNode&&t.parentNode.replaceChild(this.lowerCanvasEl,this.wrapperEl),delete this.wrapperEl,r.StaticCanvas.prototype.dispose.call(this),this},clear:function(){return this.discardActiveObject(),this.clearContext(this.contextTop),this.callSuper("clear")},drawControls:function(t){var e=this._activeObject;e&&e._renderControls(t)},_toObject:function(t,e,i){var n=this._realizeGroupTransformOnObject(t),r=this.callSuper("_toObject",t,e,i);return this._unwindGroupTransformOnObject(t,n),r},_realizeGroupTransformOnObject:function(t){if(t.group&&"activeSelection"===t.group.type&&this._activeObject===t.group){var e={};return["angle","flipX","flipY","left","scaleX","scaleY","skewX","skewY","top"].forEach((function(i){e[i]=t[i]})),r.util.addTransformToObject(t,this._activeObject.calcOwnMatrix()),e}return null},_unwindGroupTransformOnObject:function(t,e){e&&t.set(e)},_setSVGObject:function(t,e,i){var n=this._realizeGroupTransformOnObject(e);this.callSuper("_setSVGObject",t,e,i),this._unwindGroupTransformOnObject(e,n)},setViewportTransform:function(t){this.renderOnAddRemove&&this._activeObject&&this._activeObject.isEditing&&this._activeObject.clearContextTop(),r.StaticCanvas.prototype.setViewportTransform.call(this,t)}}),r.StaticCanvas)"prototype"!==n&&(r.Canvas[n]=r.StaticCanvas[n])}(),function(){var t=r.util.addListener,e=r.util.removeListener,i={passive:!1};function n(t,e){return t.button&&t.button===e-1}r.util.object.extend(r.Canvas.prototype,{mainTouchId:null,_initEventListeners:function(){this.removeListeners(),this._bindEvents(),this.addOrRemove(t,"add")},_getEventPrefix:function(){return this.enablePointerEvents?"pointer":"mouse"},addOrRemove:function(t,e){var n=this.upperCanvasEl,s=this._getEventPrefix();t(r.window,"resize",this._onResize),t(n,s+"down",this._onMouseDown),t(n,s+"move",this._onMouseMove,i),t(n,s+"out",this._onMouseOut),t(n,s+"enter",this._onMouseEnter),t(n,"wheel",this._onMouseWheel),t(n,"contextmenu",this._onContextMenu),t(n,"dblclick",this._onDoubleClick),t(n,"dragover",this._onDragOver),t(n,"dragenter",this._onDragEnter),t(n,"dragleave",this._onDragLeave),t(n,"drop",this._onDrop),this.enablePointerEvents||t(n,"touchstart",this._onTouchStart,i),"undefined"!==typeof eventjs&&e in eventjs&&(eventjs[e](n,"gesture",this._onGesture),eventjs[e](n,"drag",this._onDrag),eventjs[e](n,"orientation",this._onOrientationChange),eventjs[e](n,"shake",this._onShake),eventjs[e](n,"longpress",this._onLongPress))},removeListeners:function(){this.addOrRemove(e,"remove");var t=this._getEventPrefix();e(r.document,t+"up",this._onMouseUp),e(r.document,"touchend",this._onTouchEnd,i),e(r.document,t+"move",this._onMouseMove,i),e(r.document,"touchmove",this._onMouseMove,i)},_bindEvents:function(){this.eventsBound||(this._onMouseDown=this._onMouseDown.bind(this),this._onTouchStart=this._onTouchStart.bind(this),this._onMouseMove=this._onMouseMove.bind(this),this._onMouseUp=this._onMouseUp.bind(this),this._onTouchEnd=this._onTouchEnd.bind(this),this._onResize=this._onResize.bind(this),this._onGesture=this._onGesture.bind(this),this._onDrag=this._onDrag.bind(this),this._onShake=this._onShake.bind(this),this._onLongPress=this._onLongPress.bind(this),this._onOrientationChange=this._onOrientationChange.bind(this),this._onMouseWheel=this._onMouseWheel.bind(this),this._onMouseOut=this._onMouseOut.bind(this),this._onMouseEnter=this._onMouseEnter.bind(this),this._onContextMenu=this._onContextMenu.bind(this),this._onDoubleClick=this._onDoubleClick.bind(this),this._onDragOver=this._onDragOver.bind(this),this._onDragEnter=this._simpleEventHandler.bind(this,"dragenter"),this._onDragLeave=this._simpleEventHandler.bind(this,"dragleave"),this._onDrop=this._onDrop.bind(this),this.eventsBound=!0)},_onGesture:function(t,e){this.__onTransformGesture&&this.__onTransformGesture(t,e)},_onDrag:function(t,e){this.__onDrag&&this.__onDrag(t,e)},_onMouseWheel:function(t){this.__onMouseWheel(t)},_onMouseOut:function(t){var e=this._hoveredTarget;this.fire("mouse:out",{target:e,e:t}),this._hoveredTarget=null,e&&e.fire("mouseout",{e:t});var i=this;this._hoveredTargets.forEach((function(n){i.fire("mouse:out",{target:e,e:t}),n&&e.fire("mouseout",{e:t})})),this._hoveredTargets=[]},_onMouseEnter:function(t){this._currentTransform||this.findTarget(t)||(this.fire("mouse:over",{target:null,e:t}),this._hoveredTarget=null,this._hoveredTargets=[])},_onOrientationChange:function(t,e){this.__onOrientationChange&&this.__onOrientationChange(t,e)},_onShake:function(t,e){this.__onShake&&this.__onShake(t,e)},_onLongPress:function(t,e){this.__onLongPress&&this.__onLongPress(t,e)},_onDragOver:function(t){t.preventDefault();var e=this._simpleEventHandler("dragover",t);this._fireEnterLeaveEvents(e,t)},_onDrop:function(t){return this._simpleEventHandler("drop:before",t),this._simpleEventHandler("drop",t)},_onContextMenu:function(t){return this.stopContextMenu&&(t.stopPropagation(),t.preventDefault()),!1},_onDoubleClick:function(t){this._cacheTransformEventData(t),this._handleEvent(t,"dblclick"),this._resetTransformEventData(t)},getPointerId:function(t){var e=t.changedTouches;return e?e[0]&&e[0].identifier:this.enablePointerEvents?t.pointerId:-1},_isMainEvent:function(t){return!0===t.isPrimary||!1!==t.isPrimary&&("touchend"===t.type&&0===t.touches.length||(!t.changedTouches||t.changedTouches[0].identifier===this.mainTouchId))},_onTouchStart:function(n){n.preventDefault(),null===this.mainTouchId&&(this.mainTouchId=this.getPointerId(n)),this.__onMouseDown(n),this._resetTransformEventData();var s=this.upperCanvasEl,o=this._getEventPrefix();t(r.document,"touchend",this._onTouchEnd,i),t(r.document,"touchmove",this._onMouseMove,i),e(s,o+"down",this._onMouseDown)},_onMouseDown:function(n){this.__onMouseDown(n),this._resetTransformEventData();var s=this.upperCanvasEl,o=this._getEventPrefix();e(s,o+"move",this._onMouseMove,i),t(r.document,o+"up",this._onMouseUp),t(r.document,o+"move",this._onMouseMove,i)},_onTouchEnd:function(n){if(!(n.touches.length>0)){this.__onMouseUp(n),this._resetTransformEventData(),this.mainTouchId=null;var s=this._getEventPrefix();e(r.document,"touchend",this._onTouchEnd,i),e(r.document,"touchmove",this._onMouseMove,i);var o=this;this._willAddMouseDown&&clearTimeout(this._willAddMouseDown),this._willAddMouseDown=setTimeout((function(){t(o.upperCanvasEl,s+"down",o._onMouseDown),o._willAddMouseDown=0}),400)}},_onMouseUp:function(n){this.__onMouseUp(n),this._resetTransformEventData();var s=this.upperCanvasEl,o=this._getEventPrefix();this._isMainEvent(n)&&(e(r.document,o+"up",this._onMouseUp),e(r.document,o+"move",this._onMouseMove,i),t(s,o+"move",this._onMouseMove,i))},_onMouseMove:function(t){!this.allowTouchScrolling&&t.preventDefault&&t.preventDefault(),this.__onMouseMove(t)},_onResize:function(){this.calcOffset()},_shouldRender:function(t){var e=this._activeObject;return!!(!!e!==!!t||e&&t&&e!==t)||(e&&e.isEditing,!1)},__onMouseUp:function(t){var e,i=this._currentTransform,s=this._groupSelector,o=!1,a=!s||0===s.left&&0===s.top;if(this._cacheTransformEventData(t),e=this._target,this._handleEvent(t,"up:before"),n(t,3))this.fireRightClick&&this._handleEvent(t,"up",3,a);else{if(n(t,2))return this.fireMiddleClick&&this._handleEvent(t,"up",2,a),void this._resetTransformEventData();if(this.isDrawingMode&&this._isCurrentlyDrawing)this._onMouseUpInDrawingMode(t);else if(this._isMainEvent(t)){if(i&&(this._finalizeCurrentTransform(t),o=i.actionPerformed),!a){var l=e===this._activeObject;this._maybeGroupObjects(t),o||(o=this._shouldRender(e)||!l&&e===this._activeObject)}var h,c;if(e){if(h=e._findTargetCorner(this.getPointer(t,!0),r.util.isTouchEvent(t)),e.selectable&&e!==this._activeObject&&"up"===e.activeOn)this.setActiveObject(e,t),o=!0;else{var u=e.controls[h],d=u&&u.getMouseUpHandler(t,e,u);d&&d(t,i,(c=this.getPointer(t)).x,c.y)}e.isMoving=!1}if(i&&(i.target!==e||i.corner!==h)){var f=i.target&&i.target.controls[i.corner],g=f&&f.getMouseUpHandler(t,e,u);c=c||this.getPointer(t),g&&g(t,i,c.x,c.y)}this._setCursorFromEvent(t,e),this._handleEvent(t,"up",1,a),this._groupSelector=null,this._currentTransform=null,e&&(e.__corner=0),o?this.requestRenderAll():a||this.renderTop()}}},_simpleEventHandler:function(t,e){var i=this.findTarget(e),n=this.targets,r={e:e,target:i,subTargets:n};if(this.fire(t,r),i&&i.fire(t,r),!n)return i;for(var s=0;s1&&(e=new r.ActiveSelection(i.reverse(),{canvas:this}),this.setActiveObject(e,t))},_collectObjects:function(i){for(var n,s=[],o=this._groupSelector.ex,a=this._groupSelector.ey,l=o+this._groupSelector.left,h=a+this._groupSelector.top,c=new r.Point(t(o,l),t(a,h)),u=new r.Point(e(o,l),e(a,h)),d=!this.selectionFullyContained,f=o===l&&a===h,g=this._objects.length;g--&&!((n=this._objects[g])&&n.selectable&&n.visible&&(d&&n.intersectsWithRect(c,u,!0)||n.isContainedWithinRect(c,u,!0)||d&&n.containsPoint(c,null,!0)||d&&n.containsPoint(u,null,!0))&&(s.push(n),f)););return s.length>1&&(s=s.filter((function(t){return!t.onSelect({e:i})}))),s},_maybeGroupObjects:function(t){this.selection&&this._groupSelector&&this._groupSelectedObjects(t),this.setCursor(this.defaultCursor),this._groupSelector=null}})}(),r.util.object.extend(r.StaticCanvas.prototype,{toDataURL:function(t){t||(t={});var e=t.format||"png",i=t.quality||1,n=(t.multiplier||1)*(t.enableRetinaScaling?this.getRetinaScaling():1),s=this.toCanvasElement(n,t);return r.util.toDataURL(s,e,i)},toCanvasElement:function(t,e){t=t||1;var i=((e=e||{}).width||this.width)*t,n=(e.height||this.height)*t,s=this.getZoom(),o=this.width,a=this.height,l=s*t,h=this.viewportTransform,c=(h[4]-(e.left||0))*t,u=(h[5]-(e.top||0))*t,d=this.interactive,f=[l,0,0,l,c,u],g=this.enableRetinaScaling,p=r.util.createCanvasElement(),v=this.contextTop;return p.width=i,p.height=n,this.contextTop=null,this.enableRetinaScaling=!1,this.interactive=!1,this.viewportTransform=f,this.width=i,this.height=n,this.calcViewportBoundaries(),this.renderCanvas(p.getContext("2d"),this._objects),this.viewportTransform=h,this.width=o,this.height=a,this.calcViewportBoundaries(),this.interactive=d,this.enableRetinaScaling=g,this.contextTop=v,p}}),r.util.object.extend(r.StaticCanvas.prototype,{loadFromJSON:function(t,e,i){if(t){var n="string"===typeof t?JSON.parse(t):r.util.object.clone(t),s=this,o=n.clipPath,a=this.renderOnAddRemove;return this.renderOnAddRemove=!1,delete n.clipPath,this._enlivenObjects(n.objects,(function(t){s.clear(),s._setBgOverlay(n,(function(){o?s._enlivenObjects([o],(function(i){s.clipPath=i[0],s.__setupCanvas.call(s,n,t,a,e)})):s.__setupCanvas.call(s,n,t,a,e)}))}),i),this}},__setupCanvas:function(t,e,i,n){var r=this;e.forEach((function(t,e){r.insertAt(t,e)})),this.renderOnAddRemove=i,delete t.objects,delete t.backgroundImage,delete t.overlayImage,delete t.background,delete t.overlay,this._setOptions(t),this.renderAll(),n&&n()},_setBgOverlay:function(t,e){var i={backgroundColor:!1,overlayColor:!1,backgroundImage:!1,overlayImage:!1};if(t.backgroundImage||t.overlayImage||t.background||t.overlay){var n=function(){i.backgroundImage&&i.overlayImage&&i.backgroundColor&&i.overlayColor&&e&&e()};this.__setBgOverlay("backgroundImage",t.backgroundImage,i,n),this.__setBgOverlay("overlayImage",t.overlayImage,i,n),this.__setBgOverlay("backgroundColor",t.background,i,n),this.__setBgOverlay("overlayColor",t.overlay,i,n)}else e&&e()},__setBgOverlay:function(t,e,i,n){var s=this;if(!e)return i[t]=!0,void(n&&n());"backgroundImage"===t||"overlayImage"===t?r.util.enlivenObjects([e],(function(e){s[t]=e[0],i[t]=!0,n&&n()})):this["set"+r.util.string.capitalize(t,!0)](e,(function(){i[t]=!0,n&&n()}))},_enlivenObjects:function(t,e,i){t&&0!==t.length?r.util.enlivenObjects(t,(function(t){e&&e(t)}),null,i):e&&e([])},_toDataURL:function(t,e){this.clone((function(i){e(i.toDataURL(t))}))},_toDataURLWithMultiplier:function(t,e,i){this.clone((function(n){i(n.toDataURLWithMultiplier(t,e))}))},clone:function(t,e){var i=JSON.stringify(this.toJSON(e));this.cloneWithoutData((function(e){e.loadFromJSON(i,(function(){t&&t(e)}))}))},cloneWithoutData:function(t){var e=r.util.createCanvasElement();e.width=this.width,e.height=this.height;var i=new r.Canvas(e);this.backgroundImage?(i.setBackgroundImage(this.backgroundImage.src,(function(){i.renderAll(),t&&t(i)})),i.backgroundImageOpacity=this.backgroundImageOpacity,i.backgroundImageStretch=this.backgroundImageStretch):t&&t(i)}}),function(t){"use strict";var e=t.fabric||(t.fabric={}),i=e.util.object.extend,n=e.util.object.clone,r=e.util.toFixed,s=e.util.string.capitalize,o=e.util.degreesToRadians,a=!e.isLikelyNode;e.Object||(e.Object=e.util.createClass(e.CommonMethods,{type:"object",originX:"left",originY:"top",top:0,left:0,width:0,height:0,scaleX:1,scaleY:1,flipX:!1,flipY:!1,opacity:1,angle:0,skewX:0,skewY:0,cornerSize:13,touchCornerSize:24,transparentCorners:!0,hoverCursor:null,moveCursor:null,padding:0,borderColor:"rgb(178,204,255)",borderDashArray:null,cornerColor:"rgb(178,204,255)",cornerStrokeColor:null,cornerStyle:"rect",cornerDashArray:null,centeredScaling:!1,centeredRotation:!0,fill:"rgb(0,0,0)",fillRule:"nonzero",globalCompositeOperation:"source-over",backgroundColor:"",selectionBackgroundColor:"",stroke:null,strokeWidth:1,strokeDashArray:null,strokeDashOffset:0,strokeLineCap:"butt",strokeLineJoin:"miter",strokeMiterLimit:4,shadow:null,borderOpacityWhenMoving:.4,borderScaleFactor:1,minScaleLimit:0,selectable:!0,evented:!0,visible:!0,hasControls:!0,hasBorders:!0,perPixelTargetFind:!1,includeDefaultValues:!0,lockMovementX:!1,lockMovementY:!1,lockRotation:!1,lockScalingX:!1,lockScalingY:!1,lockSkewingX:!1,lockSkewingY:!1,lockScalingFlip:!1,excludeFromExport:!1,objectCaching:a,statefullCache:!1,noScaleCache:!0,strokeUniform:!1,dirty:!0,__corner:0,paintFirst:"fill",activeOn:"down",stateProperties:"top left width height scaleX scaleY flipX flipY originX originY transformMatrix stroke strokeWidth strokeDashArray strokeLineCap strokeDashOffset strokeLineJoin strokeMiterLimit angle opacity fill globalCompositeOperation shadow visible backgroundColor skewX skewY fillRule paintFirst clipPath strokeUniform".split(" "),cacheProperties:"fill stroke strokeWidth strokeDashArray width height paintFirst strokeUniform strokeLineCap strokeDashOffset strokeLineJoin strokeMiterLimit backgroundColor clipPath".split(" "),colorProperties:"fill stroke backgroundColor".split(" "),clipPath:void 0,inverted:!1,absolutePositioned:!1,initialize:function(t){t&&this.setOptions(t)},_createCacheCanvas:function(){this._cacheProperties={},this._cacheCanvas=e.util.createCanvasElement(),this._cacheContext=this._cacheCanvas.getContext("2d"),this._updateCacheCanvas(),this.dirty=!0},_limitCacheSize:function(t){var i=e.perfLimitSizeTotal,n=t.width,r=t.height,s=e.maxCacheSideLimit,o=e.minCacheSideLimit;if(n<=s&&r<=s&&n*r<=i)return nc&&(t.zoomX/=n/c,t.width=c,t.capped=!0),r>u&&(t.zoomY/=r/u,t.height=u,t.capped=!0),t},_getCacheCanvasDimensions:function(){var t=this.getTotalObjectScaling(),e=this._getTransformedDimensions(0,0),i=e.x*t.scaleX/this.scaleX,n=e.y*t.scaleY/this.scaleY;return{width:i+2,height:n+2,zoomX:t.scaleX,zoomY:t.scaleY,x:i,y:n}},_updateCacheCanvas:function(){var t=this.canvas;if(this.noScaleCache&&t&&t._currentTransform){var i=t._currentTransform.target,n=t._currentTransform.action;if(this===i&&n.slice&&"scale"===n.slice(0,5))return!1}var r,s,o=this._cacheCanvas,a=this._limitCacheSize(this._getCacheCanvasDimensions()),l=e.minCacheSideLimit,h=a.width,c=a.height,u=a.zoomX,d=a.zoomY,f=h!==this.cacheWidth||c!==this.cacheHeight,g=this.zoomX!==u||this.zoomY!==d,p=f||g,v=0,m=0,y=!1;if(f){var b=this._cacheCanvas.width,x=this._cacheCanvas.height,_=h>b||c>x;y=_||(h<.9*b||c<.9*x)&&b>l&&x>l,_&&!a.capped&&(h>l||c>l)&&(v=.1*h,m=.1*c)}return this instanceof e.Text&&this.path&&(p=!0,y=!0,v+=this.getHeightOfLine(0)*this.zoomX,m+=this.getHeightOfLine(0)*this.zoomY),!!p&&(y?(o.width=Math.ceil(h+v),o.height=Math.ceil(c+m)):(this._cacheContext.setTransform(1,0,0,1,0,0),this._cacheContext.clearRect(0,0,o.width,o.height)),r=a.x/2,s=a.y/2,this.cacheTranslationX=Math.round(o.width/2-r)+r,this.cacheTranslationY=Math.round(o.height/2-s)+s,this.cacheWidth=h,this.cacheHeight=c,this._cacheContext.translate(this.cacheTranslationX,this.cacheTranslationY),this._cacheContext.scale(u,d),this.zoomX=u,this.zoomY=d,!0)},setOptions:function(t){this._setOptions(t),this._initGradient(t.fill,"fill"),this._initGradient(t.stroke,"stroke"),this._initPattern(t.fill,"fill"),this._initPattern(t.stroke,"stroke")},transform:function(t){var e=this.group&&!this.group._transformDone||this.group&&this.canvas&&t===this.canvas.contextTop,i=this.calcTransformMatrix(!e);t.transform(i[0],i[1],i[2],i[3],i[4],i[5])},toObject:function(t){var i=e.Object.NUM_FRACTION_DIGITS,n={type:this.type,version:e.version,originX:this.originX,originY:this.originY,left:r(this.left,i),top:r(this.top,i),width:r(this.width,i),height:r(this.height,i),fill:this.fill&&this.fill.toObject?this.fill.toObject():this.fill,stroke:this.stroke&&this.stroke.toObject?this.stroke.toObject():this.stroke,strokeWidth:r(this.strokeWidth,i),strokeDashArray:this.strokeDashArray?this.strokeDashArray.concat():this.strokeDashArray,strokeLineCap:this.strokeLineCap,strokeDashOffset:this.strokeDashOffset,strokeLineJoin:this.strokeLineJoin,strokeUniform:this.strokeUniform,strokeMiterLimit:r(this.strokeMiterLimit,i),scaleX:r(this.scaleX,i),scaleY:r(this.scaleY,i),angle:r(this.angle,i),flipX:this.flipX,flipY:this.flipY,opacity:r(this.opacity,i),shadow:this.shadow&&this.shadow.toObject?this.shadow.toObject():this.shadow,visible:this.visible,backgroundColor:this.backgroundColor,fillRule:this.fillRule,paintFirst:this.paintFirst,globalCompositeOperation:this.globalCompositeOperation,skewX:r(this.skewX,i),skewY:r(this.skewY,i)};return this.clipPath&&!this.clipPath.excludeFromExport&&(n.clipPath=this.clipPath.toObject(t),n.clipPath.inverted=this.clipPath.inverted,n.clipPath.absolutePositioned=this.clipPath.absolutePositioned),e.util.populateWithProperties(this,n,t),this.includeDefaultValues||(n=this._removeDefaultValues(n)),n},toDatalessObject:function(t){return this.toObject(t)},_removeDefaultValues:function(t){var i=e.util.getKlass(t.type).prototype;return i.stateProperties.forEach((function(e){"left"!==e&&"top"!==e&&(t[e]===i[e]&&delete t[e],Array.isArray(t[e])&&Array.isArray(i[e])&&0===t[e].length&&0===i[e].length&&delete t[e])})),t},toString:function(){return"#"},getObjectScaling:function(){if(!this.group)return{scaleX:this.scaleX,scaleY:this.scaleY};var t=e.util.qrDecompose(this.calcTransformMatrix());return{scaleX:Math.abs(t.scaleX),scaleY:Math.abs(t.scaleY)}},getTotalObjectScaling:function(){var t=this.getObjectScaling(),e=t.scaleX,i=t.scaleY;if(this.canvas){var n=this.canvas.getZoom(),r=this.canvas.getRetinaScaling();e*=n*r,i*=n*r}return{scaleX:e,scaleY:i}},getObjectOpacity:function(){var t=this.opacity;return this.group&&(t*=this.group.getObjectOpacity()),t},_set:function(t,i){var n="scaleX"===t||"scaleY"===t,r=this[t]!==i,s=!1;return n&&(i=this._constrainScale(i)),"scaleX"===t&&i<0?(this.flipX=!this.flipX,i*=-1):"scaleY"===t&&i<0?(this.flipY=!this.flipY,i*=-1):"shadow"!==t||!i||i instanceof e.Shadow?"dirty"===t&&this.group&&this.group.set("dirty",i):i=new e.Shadow(i),this[t]=i,r&&(s=this.group&&this.group.isOnACache(),this.cacheProperties.indexOf(t)>-1?(this.dirty=!0,s&&this.group.set("dirty",!0)):s&&this.stateProperties.indexOf(t)>-1&&this.group.set("dirty",!0)),this},setOnGroup:function(){},getViewportTransform:function(){return this.canvas&&this.canvas.viewportTransform?this.canvas.viewportTransform:e.iMatrix.concat()},isNotVisible:function(){return 0===this.opacity||!this.width&&!this.height&&0===this.strokeWidth||!this.visible},render:function(t){this.isNotVisible()||this.canvas&&this.canvas.skipOffscreen&&!this.group&&!this.isOnScreen()||(t.save(),this._setupCompositeOperation(t),this.drawSelectionBackground(t),this.transform(t),this._setOpacity(t),this._setShadow(t,this),this.shouldCache()?(this.renderCache(),this.drawCacheOnCanvas(t)):(this._removeCacheCanvas(),this.dirty=!1,this.drawObject(t),this.objectCaching&&this.statefullCache&&this.saveState({propertySet:"cacheProperties"})),t.restore())},renderCache:function(t){t=t||{},this._cacheCanvas&&this._cacheContext||this._createCacheCanvas(),this.isCacheDirty()&&(this.statefullCache&&this.saveState({propertySet:"cacheProperties"}),this.drawObject(this._cacheContext,t.forClipping),this.dirty=!1)},_removeCacheCanvas:function(){this._cacheCanvas=null,this._cacheContext=null,this.cacheWidth=0,this.cacheHeight=0},hasStroke:function(){return this.stroke&&"transparent"!==this.stroke&&0!==this.strokeWidth},hasFill:function(){return this.fill&&"transparent"!==this.fill},needsItsOwnCache:function(){return!("stroke"!==this.paintFirst||!this.hasFill()||!this.hasStroke()||"object"!==typeof this.shadow)||!!this.clipPath},shouldCache:function(){return this.ownCaching=this.needsItsOwnCache()||this.objectCaching&&(!this.group||!this.group.isOnACache()),this.ownCaching},willDrawShadow:function(){return!!this.shadow&&(0!==this.shadow.offsetX||0!==this.shadow.offsetY)},drawClipPathOnCache:function(t,i){if(t.save(),i.inverted?t.globalCompositeOperation="destination-out":t.globalCompositeOperation="destination-in",i.absolutePositioned){var n=e.util.invertTransform(this.calcTransformMatrix());t.transform(n[0],n[1],n[2],n[3],n[4],n[5])}i.transform(t),t.scale(1/i.zoomX,1/i.zoomY),t.drawImage(i._cacheCanvas,-i.cacheTranslationX,-i.cacheTranslationY),t.restore()},drawObject:function(t,e){var i=this.fill,n=this.stroke;e?(this.fill="black",this.stroke="",this._setClippingProperties(t)):this._renderBackground(t),this._render(t),this._drawClipPath(t,this.clipPath),this.fill=i,this.stroke=n},_drawClipPath:function(t,e){e&&(e.canvas=this.canvas,e.shouldCache(),e._transformDone=!0,e.renderCache({forClipping:!0}),this.drawClipPathOnCache(t,e))},drawCacheOnCanvas:function(t){t.scale(1/this.zoomX,1/this.zoomY),t.drawImage(this._cacheCanvas,-this.cacheTranslationX,-this.cacheTranslationY)},isCacheDirty:function(t){if(this.isNotVisible())return!1;if(this._cacheCanvas&&this._cacheContext&&!t&&this._updateCacheCanvas())return!0;if(this.dirty||this.clipPath&&this.clipPath.absolutePositioned||this.statefullCache&&this.hasStateChanged("cacheProperties")){if(this._cacheCanvas&&this._cacheContext&&!t){var e=this.cacheWidth/this.zoomX,i=this.cacheHeight/this.zoomY;this._cacheContext.clearRect(-e/2,-i/2,e,i)}return!0}return!1},_renderBackground:function(t){if(this.backgroundColor){var e=this._getNonTransformedDimensions();t.fillStyle=this.backgroundColor,t.fillRect(-e.x/2,-e.y/2,e.x,e.y),this._removeShadow(t)}},_setOpacity:function(t){this.group&&!this.group._transformDone?t.globalAlpha=this.getObjectOpacity():t.globalAlpha*=this.opacity},_setStrokeStyles:function(t,e){var i=e.stroke;i&&(t.lineWidth=e.strokeWidth,t.lineCap=e.strokeLineCap,t.lineDashOffset=e.strokeDashOffset,t.lineJoin=e.strokeLineJoin,t.miterLimit=e.strokeMiterLimit,i.toLive?"percentage"===i.gradientUnits||i.gradientTransform||i.patternTransform?this._applyPatternForTransformedGradient(t,i):(t.strokeStyle=i.toLive(t,this),this._applyPatternGradientTransform(t,i)):t.strokeStyle=e.stroke)},_setFillStyles:function(t,e){var i=e.fill;i&&(i.toLive?(t.fillStyle=i.toLive(t,this),this._applyPatternGradientTransform(t,e.fill)):t.fillStyle=i)},_setClippingProperties:function(t){t.globalAlpha=1,t.strokeStyle="transparent",t.fillStyle="#000000"},_setLineDash:function(t,e){e&&0!==e.length&&(1&e.length&&e.push.apply(e,e),t.setLineDash(e))},_renderControls:function(t,i){var n,r,s,a=this.getViewportTransform(),l=this.calcTransformMatrix();r="undefined"!==typeof(i=i||{}).hasBorders?i.hasBorders:this.hasBorders,s="undefined"!==typeof i.hasControls?i.hasControls:this.hasControls,l=e.util.multiplyTransformMatrices(a,l),n=e.util.qrDecompose(l),t.save(),t.translate(n.translateX,n.translateY),t.lineWidth=1*this.borderScaleFactor,this.group||(t.globalAlpha=this.isMoving?this.borderOpacityWhenMoving:1),this.flipX&&(n.angle-=180),t.rotate(o(this.group?n.angle:this.angle)),i.forActiveSelection||this.group?r&&this.drawBordersInGroup(t,n,i):r&&this.drawBorders(t,i),s&&this.drawControls(t,i),t.restore()},_setShadow:function(t){if(this.shadow){var i,n=this.shadow,r=this.canvas,s=r&&r.viewportTransform[0]||1,o=r&&r.viewportTransform[3]||1;i=n.nonScaling?{scaleX:1,scaleY:1}:this.getObjectScaling(),r&&r._isRetinaScaling()&&(s*=e.devicePixelRatio,o*=e.devicePixelRatio),t.shadowColor=n.color,t.shadowBlur=n.blur*e.browserShadowBlurConstant*(s+o)*(i.scaleX+i.scaleY)/4,t.shadowOffsetX=n.offsetX*s*i.scaleX,t.shadowOffsetY=n.offsetY*o*i.scaleY}},_removeShadow:function(t){this.shadow&&(t.shadowColor="",t.shadowBlur=t.shadowOffsetX=t.shadowOffsetY=0)},_applyPatternGradientTransform:function(t,e){if(!e||!e.toLive)return{offsetX:0,offsetY:0};var i=e.gradientTransform||e.patternTransform,n=-this.width/2+e.offsetX||0,r=-this.height/2+e.offsetY||0;return"percentage"===e.gradientUnits?t.transform(this.width,0,0,this.height,n,r):t.transform(1,0,0,1,n,r),i&&t.transform(i[0],i[1],i[2],i[3],i[4],i[5]),{offsetX:n,offsetY:r}},_renderPaintInOrder:function(t){"stroke"===this.paintFirst?(this._renderStroke(t),this._renderFill(t)):(this._renderFill(t),this._renderStroke(t))},_render:function(){},_renderFill:function(t){this.fill&&(t.save(),this._setFillStyles(t,this),"evenodd"===this.fillRule?t.fill("evenodd"):t.fill(),t.restore())},_renderStroke:function(t){if(this.stroke&&0!==this.strokeWidth){if(this.shadow&&!this.shadow.affectStroke&&this._removeShadow(t),t.save(),this.strokeUniform&&this.group){var e=this.getObjectScaling();t.scale(1/e.scaleX,1/e.scaleY)}else this.strokeUniform&&t.scale(1/this.scaleX,1/this.scaleY);this._setLineDash(t,this.strokeDashArray),this._setStrokeStyles(t,this),t.stroke(),t.restore()}},_applyPatternForTransformedGradient:function(t,i){var n,r=this._limitCacheSize(this._getCacheCanvasDimensions()),s=e.util.createCanvasElement(),o=this.canvas.getRetinaScaling(),a=r.x/this.scaleX/o,l=r.y/this.scaleY/o;s.width=a,s.height=l,(n=s.getContext("2d")).beginPath(),n.moveTo(0,0),n.lineTo(a,0),n.lineTo(a,l),n.lineTo(0,l),n.closePath(),n.translate(a/2,l/2),n.scale(r.zoomX/this.scaleX/o,r.zoomY/this.scaleY/o),this._applyPatternGradientTransform(n,i),n.fillStyle=i.toLive(t),n.fill(),t.translate(-this.width/2-this.strokeWidth/2,-this.height/2-this.strokeWidth/2),t.scale(o*this.scaleX/r.zoomX,o*this.scaleY/r.zoomY),t.strokeStyle=n.createPattern(s,"no-repeat")},_findCenterFromElement:function(){return{x:this.left+this.width/2,y:this.top+this.height/2}},_assignTransformMatrixProps:function(){if(this.transformMatrix){var t=e.util.qrDecompose(this.transformMatrix);this.flipX=!1,this.flipY=!1,this.set("scaleX",t.scaleX),this.set("scaleY",t.scaleY),this.angle=t.angle,this.skewX=t.skewX,this.skewY=0}},_removeTransformMatrix:function(t){var i=this._findCenterFromElement();this.transformMatrix&&(this._assignTransformMatrixProps(),i=e.util.transformPoint(i,this.transformMatrix)),this.transformMatrix=null,t&&(this.scaleX*=t.scaleX,this.scaleY*=t.scaleY,this.cropX=t.cropX,this.cropY=t.cropY,i.x+=t.offsetLeft,i.y+=t.offsetTop,this.width=t.width,this.height=t.height),this.setPositionByOrigin(i,"center","center")},clone:function(t,i){var n=this.toObject(i);this.constructor.fromObject?this.constructor.fromObject(n,t):e.Object._fromObject("Object",n,t)},cloneAsImage:function(t,i){var n=this.toCanvasElement(i);return t&&t(new e.Image(n)),this},toCanvasElement:function(t){t||(t={});var i=e.util,n=i.saveObjectTransform(this),r=this.group,s=this.shadow,o=Math.abs,a=(t.multiplier||1)*(t.enableRetinaScaling?e.devicePixelRatio:1);delete this.group,t.withoutTransform&&i.resetObjectTransform(this),t.withoutShadow&&(this.shadow=null);var l,h,c,u,d=e.util.createCanvasElement(),f=this.getBoundingRect(!0,!0),g=this.shadow,p={x:0,y:0};g&&(h=g.blur,l=g.nonScaling?{scaleX:1,scaleY:1}:this.getObjectScaling(),p.x=2*Math.round(o(g.offsetX)+h)*o(l.scaleX),p.y=2*Math.round(o(g.offsetY)+h)*o(l.scaleY)),c=f.width+p.x,u=f.height+p.y,d.width=Math.ceil(c),d.height=Math.ceil(u);var v=new e.StaticCanvas(d,{enableRetinaScaling:!1,renderOnAddRemove:!1,skipOffscreen:!1});"jpeg"===t.format&&(v.backgroundColor="#fff"),this.setPositionByOrigin(new e.Point(v.width/2,v.height/2),"center","center");var m=this.canvas;v.add(this);var y=v.toCanvasElement(a||1,t);return this.shadow=s,this.set("canvas",m),r&&(this.group=r),this.set(n).setCoords(),v._objects=[],v.dispose(),v=null,y},toDataURL:function(t){return t||(t={}),e.util.toDataURL(this.toCanvasElement(t),t.format||"png",t.quality||1)},isType:function(t){return arguments.length>1?Array.from(arguments).includes(this.type):this.type===t},complexity:function(){return 1},toJSON:function(t){return this.toObject(t)},rotate:function(t){var e=("center"!==this.originX||"center"!==this.originY)&&this.centeredRotation;return e&&this._setOriginToCenter(),this.set("angle",t),e&&this._resetOrigin(),this},centerH:function(){return this.canvas&&this.canvas.centerObjectH(this),this},viewportCenterH:function(){return this.canvas&&this.canvas.viewportCenterObjectH(this),this},centerV:function(){return this.canvas&&this.canvas.centerObjectV(this),this},viewportCenterV:function(){return this.canvas&&this.canvas.viewportCenterObjectV(this),this},center:function(){return this.canvas&&this.canvas.centerObject(this),this},viewportCenter:function(){return this.canvas&&this.canvas.viewportCenterObject(this),this},getLocalPointer:function(t,i){i=i||this.canvas.getPointer(t);var n=new e.Point(i.x,i.y),r=this._getLeftTopCoords();return this.angle&&(n=e.util.rotatePoint(n,r,o(-this.angle))),{x:n.x-r.x,y:n.y-r.y}},_setupCompositeOperation:function(t){this.globalCompositeOperation&&(t.globalCompositeOperation=this.globalCompositeOperation)},dispose:function(){e.runningAnimations&&e.runningAnimations.cancelByTarget(this)}}),e.util.createAccessors&&e.util.createAccessors(e.Object),i(e.Object.prototype,e.Observable),e.Object.NUM_FRACTION_DIGITS=2,e.Object.ENLIVEN_PROPS=["clipPath"],e.Object._fromObject=function(t,i,r,s){var o=e[t];i=n(i,!0),e.util.enlivenPatterns([i.fill,i.stroke],(function(t){"undefined"!==typeof t[0]&&(i.fill=t[0]),"undefined"!==typeof t[1]&&(i.stroke=t[1]),e.util.enlivenObjectEnlivables(i,i,(function(){var t=s?new o(i[s],i):new o(i);r&&r(t)}))}))},e.Object.__uid=0)}(e),function(){var t=r.util.degreesToRadians,e={left:-.5,center:0,right:.5},i={top:-.5,center:0,bottom:.5};r.util.object.extend(r.Object.prototype,{translateToGivenOrigin:function(t,n,s,o,a){var l,h,c,u=t.x,d=t.y;return"string"===typeof n?n=e[n]:n-=.5,"string"===typeof o?o=e[o]:o-=.5,"string"===typeof s?s=i[s]:s-=.5,"string"===typeof a?a=i[a]:a-=.5,h=a-s,((l=o-n)||h)&&(c=this._getTransformedDimensions(),u=t.x+l*c.x,d=t.y+h*c.y),new r.Point(u,d)},translateToCenterPoint:function(e,i,n){var s=this.translateToGivenOrigin(e,i,n,"center","center");return this.angle?r.util.rotatePoint(s,e,t(this.angle)):s},translateToOriginPoint:function(e,i,n){var s=this.translateToGivenOrigin(e,"center","center",i,n);return this.angle?r.util.rotatePoint(s,e,t(this.angle)):s},getCenterPoint:function(){var t=new r.Point(this.left,this.top);return this.translateToCenterPoint(t,this.originX,this.originY)},getPointByOrigin:function(t,e){var i=this.getCenterPoint();return this.translateToOriginPoint(i,t,e)},toLocalPoint:function(e,i,n){var s,o,a=this.getCenterPoint();return s="undefined"!==typeof i&&"undefined"!==typeof n?this.translateToGivenOrigin(a,"center","center",i,n):new r.Point(this.left,this.top),o=new r.Point(e.x,e.y),this.angle&&(o=r.util.rotatePoint(o,a,-t(this.angle))),o.subtractEquals(s)},setPositionByOrigin:function(t,e,i){var n=this.translateToCenterPoint(t,e,i),r=this.translateToOriginPoint(n,this.originX,this.originY);this.set("left",r.x),this.set("top",r.y)},adjustPosition:function(i){var n,s,o=t(this.angle),a=this.getScaledWidth(),l=r.util.cos(o)*a,h=r.util.sin(o)*a;n="string"===typeof this.originX?e[this.originX]:this.originX-.5,s="string"===typeof i?e[i]:i-.5,this.left+=l*(s-n),this.top+=h*(s-n),this.setCoords(),this.originX=i},_setOriginToCenter:function(){this._originalOriginX=this.originX,this._originalOriginY=this.originY;var t=this.getCenterPoint();this.originX="center",this.originY="center",this.left=t.x,this.top=t.y},_resetOrigin:function(){var t=this.translateToOriginPoint(this.getCenterPoint(),this._originalOriginX,this._originalOriginY);this.originX=this._originalOriginX,this.originY=this._originalOriginY,this.left=t.x,this.top=t.y,this._originalOriginX=null,this._originalOriginY=null},_getLeftTopCoords:function(){return this.translateToOriginPoint(this.getCenterPoint(),"left","top")}})}(),function(){var t=r.util,e=t.degreesToRadians,i=t.multiplyTransformMatrices,n=t.transformPoint;t.object.extend(r.Object.prototype,{oCoords:null,aCoords:null,lineCoords:null,ownMatrixCache:null,matrixCache:null,controls:{},_getCoords:function(t,e){return e?t?this.calcACoords():this.calcLineCoords():(this.aCoords&&this.lineCoords||this.setCoords(!0),t?this.aCoords:this.lineCoords)},getCoords:function(t,e){return i=this._getCoords(t,e),[new r.Point(i.tl.x,i.tl.y),new r.Point(i.tr.x,i.tr.y),new r.Point(i.br.x,i.br.y),new r.Point(i.bl.x,i.bl.y)];var i},intersectsWithRect:function(t,e,i,n){var s=this.getCoords(i,n);return"Intersection"===r.Intersection.intersectPolygonRectangle(s,t,e).status},intersectsWithObject:function(t,e,i){return"Intersection"===r.Intersection.intersectPolygonPolygon(this.getCoords(e,i),t.getCoords(e,i)).status||t.isContainedWithinObject(this,e,i)||this.isContainedWithinObject(t,e,i)},isContainedWithinObject:function(t,e,i){for(var n=this.getCoords(e,i),r=e?t.aCoords:t.lineCoords,s=0,o=t._getImageLines(r);s<4;s++)if(!t.containsPoint(n[s],o))return!1;return!0},isContainedWithinRect:function(t,e,i,n){var r=this.getBoundingRect(i,n);return r.left>=t.x&&r.left+r.width<=e.x&&r.top>=t.y&&r.top+r.height<=e.y},containsPoint:function(t,e,i,n){var r=this._getCoords(i,n),s=(e=e||this._getImageLines(r),this._findCrossPoints(t,e));return 0!==s&&s%2===1},isOnScreen:function(t){if(!this.canvas)return!1;var e=this.canvas.vptCoords.tl,i=this.canvas.vptCoords.br;return!!this.getCoords(!0,t).some((function(t){return t.x<=i.x&&t.x>=e.x&&t.y<=i.y&&t.y>=e.y}))||(!!this.intersectsWithRect(e,i,!0,t)||this._containsCenterOfCanvas(e,i,t))},_containsCenterOfCanvas:function(t,e,i){var n={x:(t.x+e.x)/2,y:(t.y+e.y)/2};return!!this.containsPoint(n,null,!0,i)},isPartiallyOnScreen:function(t){if(!this.canvas)return!1;var e=this.canvas.vptCoords.tl,i=this.canvas.vptCoords.br;return!!this.intersectsWithRect(e,i,!0,t)||this.getCoords(!0,t).every((function(t){return(t.x>=i.x||t.x<=e.x)&&(t.y>=i.y||t.y<=e.y)}))&&this._containsCenterOfCanvas(e,i,t)},_getImageLines:function(t){return{topline:{o:t.tl,d:t.tr},rightline:{o:t.tr,d:t.br},bottomline:{o:t.br,d:t.bl},leftline:{o:t.bl,d:t.tl}}},_findCrossPoints:function(t,e){var i,n,r,s=0;for(var o in e)if(!((r=e[o]).o.y=t.y&&r.d.y>=t.y)&&(r.o.x===r.d.x&&r.o.x>=t.x?n=r.o.x:(0,i=(r.d.y-r.o.y)/(r.d.x-r.o.x),n=-(t.y-0*t.x-(r.o.y-i*r.o.x))/(0-i)),n>=t.x&&(s+=1),2===s))break;return s},getBoundingRect:function(e,i){var n=this.getCoords(e,i);return t.makeBoundingBoxFromPoints(n)},getScaledWidth:function(){return this._getTransformedDimensions().x},getScaledHeight:function(){return this._getTransformedDimensions().y},_constrainScale:function(t){return Math.abs(t)\n')}},toSVG:function(t){return this._createBaseSVGMarkup(this._toSVG(t),{reviver:t})},toClipPathSVG:function(t){return"\t"+this._createBaseClipPathSVGMarkup(this._toSVG(t),{reviver:t})},_createBaseClipPathSVGMarkup:function(t,e){var i=(e=e||{}).reviver,n=e.additionalTransform||"",r=[this.getSvgTransform(!0,n),this.getSvgCommons()].join(""),s=t.indexOf("COMMON_PARTS");return t[s]=r,i?i(t.join("")):t.join("")},_createBaseSVGMarkup:function(t,e){var i,n,s=(e=e||{}).noStyle,o=e.reviver,a=s?"":'style="'+this.getSvgStyles()+'" ',l=e.withShadow?'style="'+this.getSvgFilter()+'" ':"",h=this.clipPath,c=this.strokeUniform?'vector-effect="non-scaling-stroke" ':"",u=h&&h.absolutePositioned,d=this.stroke,f=this.fill,g=this.shadow,p=[],v=t.indexOf("COMMON_PARTS"),m=e.additionalTransform;return h&&(h.clipPathId="CLIPPATH_"+r.Object.__uid++,n='\n'+h.toClipPathSVG(o)+"\n"),u&&p.push("\n"),p.push("\n"),i=[a,c,s?"":this.addPaintOrder()," ",m?'transform="'+m+'" ':""].join(""),t[v]=i,f&&f.toLive&&p.push(f.toSVG(this)),d&&d.toLive&&p.push(d.toSVG(this)),g&&p.push(g.toSVG(this)),h&&p.push(n),p.push(t.join("")),p.push("\n"),u&&p.push("\n"),o?o(p.join("")):p.join("")},addPaintOrder:function(){return"fill"!==this.paintFirst?' paint-order="'+this.paintFirst+'" ':""}})}(),function(){var t=r.util.object.extend,e="stateProperties";function i(e,i,n){var r={};n.forEach((function(t){r[t]=e[t]})),t(e[i],r,!0)}function n(t,e,i){if(t===e)return!0;if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(var r=0,s=t.length;r=0;l--)if(r=a[l],this.isControlVisible(r)&&(n=this._getImageLines(e?this.oCoords[r].touchCorner:this.oCoords[r].corner),0!==(i=this._findCrossPoints({x:s,y:o},n))&&i%2===1))return this.__corner=r,r;return!1},forEachControl:function(t){for(var e in this.controls)t(this.controls[e],e,this)},_setCornerCoords:function(){var t=this.oCoords;for(var e in t){var i=this.controls[e];t[e].corner=i.calcCornerCoords(this.angle,this.cornerSize,t[e].x,t[e].y,!1),t[e].touchCorner=i.calcCornerCoords(this.angle,this.touchCornerSize,t[e].x,t[e].y,!0)}},drawSelectionBackground:function(e){if(!this.selectionBackgroundColor||this.canvas&&!this.canvas.interactive||this.canvas&&this.canvas._activeObject!==this)return this;e.save();var i=this.getCenterPoint(),n=this._calculateCurrentDimensions(),r=this.canvas.viewportTransform;return e.translate(i.x,i.y),e.scale(1/r[0],1/r[3]),e.rotate(t(this.angle)),e.fillStyle=this.selectionBackgroundColor,e.fillRect(-n.x/2,-n.y/2,n.x,n.y),e.restore(),this},drawBorders:function(t,e){e=e||{};var i=this._calculateCurrentDimensions(),n=this.borderScaleFactor,r=i.x+n,s=i.y+n,o="undefined"!==typeof e.hasControls?e.hasControls:this.hasControls,a=!1;return t.save(),t.strokeStyle=e.borderColor||this.borderColor,this._setLineDash(t,e.borderDashArray||this.borderDashArray),t.strokeRect(-r/2,-s/2,r,s),o&&(t.beginPath(),this.forEachControl((function(e,i,n){e.withConnection&&e.getVisibility(n,i)&&(a=!0,t.moveTo(e.x*r,e.y*s),t.lineTo(e.x*r+e.offsetX,e.y*s+e.offsetY))})),a&&t.stroke()),t.restore(),this},drawBordersInGroup:function(t,e,i){i=i||{};var n=r.util.sizeAfterTransform(this.width,this.height,e),s=this.strokeWidth,o=this.strokeUniform,a=this.borderScaleFactor,l=n.x+s*(o?this.canvas.getZoom():e.scaleX)+a,h=n.y+s*(o?this.canvas.getZoom():e.scaleY)+a;return t.save(),this._setLineDash(t,i.borderDashArray||this.borderDashArray),t.strokeStyle=i.borderColor||this.borderColor,t.strokeRect(-l/2,-h/2,l,h),t.restore(),this},drawControls:function(t,e){e=e||{},t.save();var i,n,s=this.canvas.getRetinaScaling();return t.setTransform(s,0,0,s,0,0),t.strokeStyle=t.fillStyle=e.cornerColor||this.cornerColor,this.transparentCorners||(t.strokeStyle=e.cornerStrokeColor||this.cornerStrokeColor),this._setLineDash(t,e.cornerDashArray||this.cornerDashArray),this.setCoords(),this.group&&(i=this.group.calcTransformMatrix()),this.forEachControl((function(s,o,a){n=a.oCoords[o],s.getVisibility(a,o)&&(i&&(n=r.util.transformPoint(n,i)),s.render(t,n.x,n.y,e,a))})),t.restore(),this},isControlVisible:function(t){return this.controls[t]&&this.controls[t].getVisibility(this,t)},setControlVisible:function(t,e){return this._controlsVisibility||(this._controlsVisibility={}),this._controlsVisibility[t]=e,this},setControlsVisibility:function(t){for(var e in t||(t={}),t)this.setControlVisible(e,t[e]);return this},onDeselect:function(){},onSelect:function(){}})}(),r.util.object.extend(r.StaticCanvas.prototype,{FX_DURATION:500,fxCenterObjectH:function(t,e){var i=function(){},n=(e=e||{}).onComplete||i,s=e.onChange||i,o=this;return r.util.animate({target:this,startValue:t.left,endValue:this.getCenterPoint().x,duration:this.FX_DURATION,onChange:function(e){t.set("left",e),o.requestRenderAll(),s()},onComplete:function(){t.setCoords(),n()}})},fxCenterObjectV:function(t,e){var i=function(){},n=(e=e||{}).onComplete||i,s=e.onChange||i,o=this;return r.util.animate({target:this,startValue:t.top,endValue:this.getCenterPoint().y,duration:this.FX_DURATION,onChange:function(e){t.set("top",e),o.requestRenderAll(),s()},onComplete:function(){t.setCoords(),n()}})},fxRemove:function(t,e){var i=function(){},n=(e=e||{}).onComplete||i,s=e.onChange||i,o=this;return r.util.animate({target:this,startValue:t.opacity,endValue:0,duration:this.FX_DURATION,onChange:function(e){t.set("opacity",e),o.requestRenderAll(),s()},onComplete:function(){o.remove(t),n()}})}}),r.util.object.extend(r.Object.prototype,{animate:function(){if(arguments[0]&&"object"===typeof arguments[0]){var t,e,i=[],n=[];for(t in arguments[0])i.push(t);for(var r=0,s=i.length;r-1||s&&o.colorProperties.indexOf(s[1])>-1,l=s?this.get(s[0])[s[1]]:this.get(t);"from"in i||(i.from=l),a||(e=~e.indexOf("=")?l+parseFloat(e.replace("=","")):parseFloat(e));var h={target:this,startValue:i.from,endValue:e,byValue:i.by,easing:i.easing,duration:i.duration,abort:i.abort&&function(t,e,n){return i.abort.call(o,t,e,n)},onChange:function(e,r,a){s?o[s[0]][s[1]]=e:o.set(t,e),n||i.onChange&&i.onChange(e,r,a)},onComplete:function(t,e,r){n||(o.setCoords(),i.onComplete&&i.onComplete(t,e,r))}};return a?r.util.animateColor(h.startValue,h.endValue,h.duration,h):r.util.animate(h)}}),function(t){"use strict";var e=t.fabric||(t.fabric={}),i=e.util.object.extend,n=e.util.object.clone,r={x1:1,x2:1,y1:1,y2:1};function s(t,e){var i=t.origin,n=t.axis1,r=t.axis2,s=t.dimension,o=e.nearest,a=e.center,l=e.farthest;return function(){switch(this.get(i)){case o:return Math.min(this.get(n),this.get(r));case a:return Math.min(this.get(n),this.get(r))+.5*this.get(s);case l:return Math.max(this.get(n),this.get(r))}}}e.Line?e.warn("fabric.Line is already defined"):(e.Line=e.util.createClass(e.Object,{type:"line",x1:0,y1:0,x2:0,y2:0,cacheProperties:e.Object.prototype.cacheProperties.concat("x1","x2","y1","y2"),initialize:function(t,e){t||(t=[0,0,0,0]),this.callSuper("initialize",e),this.set("x1",t[0]),this.set("y1",t[1]),this.set("x2",t[2]),this.set("y2",t[3]),this._setWidthHeight(e)},_setWidthHeight:function(t){t||(t={}),this.width=Math.abs(this.x2-this.x1),this.height=Math.abs(this.y2-this.y1),this.left="left"in t?t.left:this._getLeftToOriginX(),this.top="top"in t?t.top:this._getTopToOriginY()},_set:function(t,e){return this.callSuper("_set",t,e),"undefined"!==typeof r[t]&&this._setWidthHeight(),this},_getLeftToOriginX:s({origin:"originX",axis1:"x1",axis2:"x2",dimension:"width"},{nearest:"left",center:"center",farthest:"right"}),_getTopToOriginY:s({origin:"originY",axis1:"y1",axis2:"y2",dimension:"height"},{nearest:"top",center:"center",farthest:"bottom"}),_render:function(t){t.beginPath();var e=this.calcLinePoints();t.moveTo(e.x1,e.y1),t.lineTo(e.x2,e.y2),t.lineWidth=this.strokeWidth;var i=t.strokeStyle;t.strokeStyle=this.stroke||t.fillStyle,this.stroke&&this._renderStroke(t),t.strokeStyle=i},_findCenterFromElement:function(){return{x:(this.x1+this.x2)/2,y:(this.y1+this.y2)/2}},toObject:function(t){return i(this.callSuper("toObject",t),this.calcLinePoints())},_getNonTransformedDimensions:function(){var t=this.callSuper("_getNonTransformedDimensions");return"butt"===this.strokeLineCap&&(0===this.width&&(t.y-=this.strokeWidth),0===this.height&&(t.x-=this.strokeWidth)),t},calcLinePoints:function(){var t=this.x1<=this.x2?-1:1,e=this.y1<=this.y2?-1:1,i=t*this.width*.5,n=e*this.height*.5;return{x1:i,x2:t*this.width*-.5,y1:n,y2:e*this.height*-.5}},_toSVG:function(){var t=this.calcLinePoints();return["\n']}}),e.Line.ATTRIBUTE_NAMES=e.SHARED_ATTRIBUTES.concat("x1 y1 x2 y2".split(" ")),e.Line.fromElement=function(t,n,r){r=r||{};var s=e.parseAttributes(t,e.Line.ATTRIBUTE_NAMES),o=[s.x1||0,s.y1||0,s.x2||0,s.y2||0];n(new e.Line(o,i(s,r)))},e.Line.fromObject=function(t,i){var r=n(t,!0);r.points=[t.x1,t.y1,t.x2,t.y2],e.Object._fromObject("Line",r,(function(t){delete t.points,i&&i(t)}),"points")})}(e),function(t){"use strict";var e=t.fabric||(t.fabric={}),i=e.util.degreesToRadians;e.Circle?e.warn("fabric.Circle is already defined."):(e.Circle=e.util.createClass(e.Object,{type:"circle",radius:0,startAngle:0,endAngle:360,cacheProperties:e.Object.prototype.cacheProperties.concat("radius","startAngle","endAngle"),_set:function(t,e){return this.callSuper("_set",t,e),"radius"===t&&this.setRadius(e),this},toObject:function(t){return this.callSuper("toObject",["radius","startAngle","endAngle"].concat(t))},_toSVG:function(){var t,n=(this.endAngle-this.startAngle)%360;if(0===n)t=["\n'];else{var r=i(this.startAngle),s=i(this.endAngle),o=this.radius;t=['180?"1":"0")+" 1"," "+e.util.cos(s)*o+" "+e.util.sin(s)*o,'" ',"COMMON_PARTS"," />\n"]}return t},_render:function(t){t.beginPath(),t.arc(0,0,this.radius,i(this.startAngle),i(this.endAngle),!1),this._renderPaintInOrder(t)},getRadiusX:function(){return this.get("radius")*this.get("scaleX")},getRadiusY:function(){return this.get("radius")*this.get("scaleY")},setRadius:function(t){return this.radius=t,this.set("width",2*t).set("height",2*t)}}),e.Circle.ATTRIBUTE_NAMES=e.SHARED_ATTRIBUTES.concat("cx cy r".split(" ")),e.Circle.fromElement=function(t,i){var n,r=e.parseAttributes(t,e.Circle.ATTRIBUTE_NAMES);if(!("radius"in(n=r)&&n.radius>=0))throw new Error("value of `r` attribute is required and can not be negative");r.left=(r.left||0)-r.radius,r.top=(r.top||0)-r.radius,i(new e.Circle(r))},e.Circle.fromObject=function(t,i){e.Object._fromObject("Circle",t,i)})}(e),function(t){"use strict";var e=t.fabric||(t.fabric={});e.Triangle?e.warn("fabric.Triangle is already defined"):(e.Triangle=e.util.createClass(e.Object,{type:"triangle",width:100,height:100,_render:function(t){var e=this.width/2,i=this.height/2;t.beginPath(),t.moveTo(-e,i),t.lineTo(0,-i),t.lineTo(e,i),t.closePath(),this._renderPaintInOrder(t)},_toSVG:function(){var t=this.width/2,e=this.height/2;return["']}}),e.Triangle.fromObject=function(t,i){return e.Object._fromObject("Triangle",t,i)})}(e),function(t){"use strict";var e=t.fabric||(t.fabric={}),i=2*Math.PI;e.Ellipse?e.warn("fabric.Ellipse is already defined."):(e.Ellipse=e.util.createClass(e.Object,{type:"ellipse",rx:0,ry:0,cacheProperties:e.Object.prototype.cacheProperties.concat("rx","ry"),initialize:function(t){this.callSuper("initialize",t),this.set("rx",t&&t.rx||0),this.set("ry",t&&t.ry||0)},_set:function(t,e){switch(this.callSuper("_set",t,e),t){case"rx":this.rx=e,this.set("width",2*e);break;case"ry":this.ry=e,this.set("height",2*e)}return this},getRx:function(){return this.get("rx")*this.get("scaleX")},getRy:function(){return this.get("ry")*this.get("scaleY")},toObject:function(t){return this.callSuper("toObject",["rx","ry"].concat(t))},_toSVG:function(){return["\n']},_render:function(t){t.beginPath(),t.save(),t.transform(1,0,0,this.ry/this.rx,0,0),t.arc(0,0,this.rx,0,i,!1),t.restore(),this._renderPaintInOrder(t)}}),e.Ellipse.ATTRIBUTE_NAMES=e.SHARED_ATTRIBUTES.concat("cx cy rx ry".split(" ")),e.Ellipse.fromElement=function(t,i){var n=e.parseAttributes(t,e.Ellipse.ATTRIBUTE_NAMES);n.left=(n.left||0)-n.rx,n.top=(n.top||0)-n.ry,i(new e.Ellipse(n))},e.Ellipse.fromObject=function(t,i){e.Object._fromObject("Ellipse",t,i)})}(e),function(t){"use strict";var e=t.fabric||(t.fabric={}),i=e.util.object.extend;e.Rect?e.warn("fabric.Rect is already defined"):(e.Rect=e.util.createClass(e.Object,{stateProperties:e.Object.prototype.stateProperties.concat("rx","ry"),type:"rect",rx:0,ry:0,cacheProperties:e.Object.prototype.cacheProperties.concat("rx","ry"),initialize:function(t){this.callSuper("initialize",t),this._initRxRy()},_initRxRy:function(){this.rx&&!this.ry?this.ry=this.rx:this.ry&&!this.rx&&(this.rx=this.ry)},_render:function(t){var e=this.rx?Math.min(this.rx,this.width/2):0,i=this.ry?Math.min(this.ry,this.height/2):0,n=this.width,r=this.height,s=-this.width/2,o=-this.height/2,a=0!==e||0!==i,l=.4477152502;t.beginPath(),t.moveTo(s+e,o),t.lineTo(s+n-e,o),a&&t.bezierCurveTo(s+n-l*e,o,s+n,o+l*i,s+n,o+i),t.lineTo(s+n,o+r-i),a&&t.bezierCurveTo(s+n,o+r-l*i,s+n-l*e,o+r,s+n-e,o+r),t.lineTo(s+e,o+r),a&&t.bezierCurveTo(s+l*e,o+r,s,o+r-l*i,s,o+r-i),t.lineTo(s,o+i),a&&t.bezierCurveTo(s,o+l*i,s+l*e,o,s+e,o),t.closePath(),this._renderPaintInOrder(t)},toObject:function(t){return this.callSuper("toObject",["rx","ry"].concat(t))},_toSVG:function(){return["\n']}}),e.Rect.ATTRIBUTE_NAMES=e.SHARED_ATTRIBUTES.concat("x y rx ry width height".split(" ")),e.Rect.fromElement=function(t,n,r){if(!t)return n(null);r=r||{};var s=e.parseAttributes(t,e.Rect.ATTRIBUTE_NAMES);s.left=s.left||0,s.top=s.top||0,s.height=s.height||0,s.width=s.width||0;var o=new e.Rect(i(r?e.util.object.clone(r):{},s));o.visible=o.visible&&o.width>0&&o.height>0,n(o)},e.Rect.fromObject=function(t,i){return e.Object._fromObject("Rect",t,i)})}(e),function(t){"use strict";var e=t.fabric||(t.fabric={}),i=e.util.object.extend,n=e.util.array.min,r=e.util.array.max,s=e.util.toFixed,o=e.util.projectStrokeOnPoints;e.Polyline?e.warn("fabric.Polyline is already defined"):(e.Polyline=e.util.createClass(e.Object,{type:"polyline",points:null,exactBoundingBox:!1,cacheProperties:e.Object.prototype.cacheProperties.concat("points"),initialize:function(t,e){e=e||{},this.points=t||[],this.callSuper("initialize",e),this._setPositionDimensions(e)},_projectStrokeOnPoints:function(){return o(this.points,this,!0)},_setPositionDimensions:function(t){var e,i=this._calcDimensions(t),n=this.exactBoundingBox?this.strokeWidth:0;this.width=i.width-n,this.height=i.height-n,t.fromSVG||(e=this.translateToGivenOrigin({x:i.left-this.strokeWidth/2+n/2,y:i.top-this.strokeWidth/2+n/2},"left","top",this.originX,this.originY)),"undefined"===typeof t.left&&(this.left=t.fromSVG?i.left:e.x),"undefined"===typeof t.top&&(this.top=t.fromSVG?i.top:e.y),this.pathOffset={x:i.left+this.width/2+n/2,y:i.top+this.height/2+n/2}},_calcDimensions:function(){var t=this.exactBoundingBox?this._projectStrokeOnPoints():this.points,e=n(t,"x")||0,i=n(t,"y")||0;return{left:e,top:i,width:(r(t,"x")||0)-e,height:(r(t,"y")||0)-i}},toObject:function(t){return i(this.callSuper("toObject",t),{points:this.points.concat()})},_toSVG:function(){for(var t=[],i=this.pathOffset.x,n=this.pathOffset.y,r=e.Object.NUM_FRACTION_DIGITS,o=0,a=this.points.length;o\n']},commonRender:function(t){var e,i=this.points.length,n=this.pathOffset.x,r=this.pathOffset.y;if(!i||isNaN(this.points[i-1].y))return!1;t.beginPath(),t.moveTo(this.points[0].x-n,this.points[0].y-r);for(var s=0;s"},toObject:function(t){return r(this.callSuper("toObject",t),{path:this.path.map((function(t){return t.slice()}))})},toDatalessObject:function(t){var e=this.toObject(["sourcePath"].concat(t));return e.sourcePath&&delete e.path,e},_toSVG:function(){return["\n"]},_getOffsetTransform:function(){var t=e.Object.NUM_FRACTION_DIGITS;return" translate("+o(-this.pathOffset.x,t)+", "+o(-this.pathOffset.y,t)+")"},toClipPathSVG:function(t){var e=this._getOffsetTransform();return"\t"+this._createBaseClipPathSVGMarkup(this._toSVG(),{reviver:t,additionalTransform:e})},toSVG:function(t){var e=this._getOffsetTransform();return this._createBaseSVGMarkup(this._toSVG(),{reviver:t,additionalTransform:e})},complexity:function(){return this.path.length},_calcDimensions:function(){for(var t,r,s=[],o=[],a=0,l=0,h=0,c=0,u=0,d=this.path.length;u"},addWithUpdate:function(t){var i=!!this.group;return this._restoreObjectsState(),e.util.resetObjectTransform(this),t&&(i&&e.util.removeTransformFromObject(t,this.group.calcTransformMatrix()),this._objects.push(t),t.group=this,t._set("canvas",this.canvas)),this._calcBounds(),this._updateObjectsCoords(),this.dirty=!0,i?this.group.addWithUpdate():this.setCoords(),this},removeWithUpdate:function(t){return this._restoreObjectsState(),e.util.resetObjectTransform(this),this.remove(t),this._calcBounds(),this._updateObjectsCoords(),this.setCoords(),this.dirty=!0,this},_onObjectAdded:function(t){this.dirty=!0,t.group=this,t._set("canvas",this.canvas)},_onObjectRemoved:function(t){this.dirty=!0,delete t.group},_set:function(t,i){var n=this._objects.length;if(this.useSetOnGroup)for(;n--;)this._objects[n].setOnGroup(t,i);if("canvas"===t)for(;n--;)this._objects[n]._set(t,i);e.Object.prototype._set.call(this,t,i)},toObject:function(t){var i=this.includeDefaultValues,n=this._objects.filter((function(t){return!t.excludeFromExport})).map((function(e){var n=e.includeDefaultValues;e.includeDefaultValues=i;var r=e.toObject(t);return e.includeDefaultValues=n,r})),r=e.Object.prototype.toObject.call(this,t);return r.objects=n,r},toDatalessObject:function(t){var i,n=this.sourcePath;if(n)i=n;else{var r=this.includeDefaultValues;i=this._objects.map((function(e){var i=e.includeDefaultValues;e.includeDefaultValues=r;var n=e.toDatalessObject(t);return e.includeDefaultValues=i,n}))}var s=e.Object.prototype.toDatalessObject.call(this,t);return s.objects=i,s},render:function(t){this._transformDone=!0,this.callSuper("render",t),this._transformDone=!1},shouldCache:function(){var t=e.Object.prototype.shouldCache.call(this);if(t)for(var i=0,n=this._objects.length;i\n"],i=0,n=this._objects.length;i\n"),e},getSvgStyles:function(){var t="undefined"!==typeof this.opacity&&1!==this.opacity?"opacity: "+this.opacity+";":"",e=this.visible?"":" visibility: hidden;";return[t,this.getSvgFilter(),e].join("")},toClipPathSVG:function(t){for(var e=[],i=0,n=this._objects.length;i"},shouldCache:function(){return!1},isOnACache:function(){return!1},_renderControls:function(t,e,i){t.save(),t.globalAlpha=this.isMoving?this.borderOpacityWhenMoving:1,this.callSuper("_renderControls",t,e),"undefined"===typeof(i=i||{}).hasControls&&(i.hasControls=!1),i.forActiveSelection=!0;for(var n=0,r=this._objects.length;n\n','\t\n',"\n"),a=' clip-path="url(#imageCrop_'+h+')" '}if(this.imageSmoothing||(l='" image-rendering="optimizeSpeed'),i.push("\t\n"),this.stroke||this.strokeDashArray){var c=this.fill;this.fill=null,t=["\t\n'],this.fill=c}return e="fill"!==this.paintFirst?e.concat(t,i):e.concat(i,t)},getSrc:function(t){var e=t?this._element:this._originalElement;return e?e.toDataURL?e.toDataURL():this.srcFromAttribute?e.getAttribute("src"):e.src:this.src||""},setSrc:function(t,e,i){return r.util.loadImage(t,(function(t,n){this.setElement(t,i),this._setWidthHeight(),e&&e(this,n)}),this,i&&i.crossOrigin),this},toString:function(){return'#'},applyResizeFilters:function(){var t=this.resizeFilter,e=this.minimumScaleTrigger,i=this.getTotalObjectScaling(),n=i.scaleX,s=i.scaleY,o=this._filteredEl||this._originalElement;if(this.group&&this.set("dirty",!0),!t||n>e&&s>e)return this._element=o,this._filterScalingX=1,this._filterScalingY=1,this._lastScaleX=n,void(this._lastScaleY=s);r.filterBackend||(r.filterBackend=r.initFilterBackend());var a=r.util.createCanvasElement(),l=this._filteredEl?this.cacheKey+"_filtered":this.cacheKey,h=o.width,c=o.height;a.width=h,a.height=c,this._element=a,this._lastScaleX=t.scaleX=n,this._lastScaleY=t.scaleY=s,r.filterBackend.applyFilters([t],o,h,c,this._element,l),this._filterScalingX=a.width/this._originalElement.width,this._filterScalingY=a.height/this._originalElement.height},applyFilters:function(t){if(t=(t=t||this.filters||[]).filter((function(t){return t&&!t.isNeutralState()})),this.set("dirty",!0),this.removeTexture(this.cacheKey+"_filtered"),0===t.length)return this._element=this._originalElement,this._filteredEl=null,this._filterScalingX=1,this._filterScalingY=1,this;var e=this._originalElement,i=e.naturalWidth||e.width,n=e.naturalHeight||e.height;if(this._element===this._originalElement){var s=r.util.createCanvasElement();s.width=i,s.height=n,this._element=s,this._filteredEl=s}else this._element=this._filteredEl,this._filteredEl.getContext("2d").clearRect(0,0,i,n),this._lastScaleX=1,this._lastScaleY=1;return r.filterBackend||(r.filterBackend=r.initFilterBackend()),r.filterBackend.applyFilters(t,this._originalElement,i,n,this._element,this.cacheKey),this._originalElement.width===this._element.width&&this._originalElement.height===this._element.height||(this._filterScalingX=this._element.width/this._originalElement.width,this._filterScalingY=this._element.height/this._originalElement.height),this},_render:function(t){r.util.setImageSmoothing(t,this.imageSmoothing),!0!==this.isMoving&&this.resizeFilter&&this._needsResize()&&this.applyResizeFilters(),this._stroke(t),this._renderPaintInOrder(t)},drawCacheOnCanvas:function(t){r.util.setImageSmoothing(t,this.imageSmoothing),r.Object.prototype.drawCacheOnCanvas.call(this,t)},shouldCache:function(){return this.needsItsOwnCache()},_renderFill:function(t){var e=this._element;if(e){var i=this._filterScalingX,n=this._filterScalingY,r=this.width,s=this.height,o=Math.min,a=Math.max,l=a(this.cropX,0),h=a(this.cropY,0),c=e.naturalWidth||e.width,u=e.naturalHeight||e.height,d=l*i,f=h*n,g=o(r*i,c-d),p=o(s*n,u-f),v=-r/2,m=-s/2,y=o(r,c/i-l),b=o(s,u/n-h);e&&t.drawImage(e,d,f,g,p,v,m,y,b)}},_needsResize:function(){var t=this.getTotalObjectScaling();return t.scaleX!==this._lastScaleX||t.scaleY!==this._lastScaleY},_resetWidthHeight:function(){this.set(this.getOriginalSize())},_initElement:function(t,e){this.setElement(r.util.getById(t),e),r.util.addClass(this.getElement(),r.Image.CSS_CANVAS)},_initConfig:function(t){t||(t={}),this.setOptions(t),this._setWidthHeight(t)},_initFilters:function(t,e){t&&t.length?r.util.enlivenObjects(t,(function(t){e&&e(t)}),"fabric.Image.filters"):e&&e()},_setWidthHeight:function(t){t||(t={});var e=this.getElement();this.width=t.width||e.naturalWidth||e.width||0,this.height=t.height||e.naturalHeight||e.height||0},parsePreserveAspectRatioAttribute:function(){var t,e=r.util.parsePreserveAspectRatioAttribute(this.preserveAspectRatio||""),i=this._element.width,n=this._element.height,s=1,o=1,a=0,l=0,h=0,c=0,u=this.width,d=this.height,f={width:u,height:d};return!e||"none"===e.alignX&&"none"===e.alignY?(s=u/i,o=d/n):("meet"===e.meetOrSlice&&(t=(u-i*(s=o=r.util.findScaleToFit(this._element,f)))/2,"Min"===e.alignX&&(a=-t),"Max"===e.alignX&&(a=t),t=(d-n*o)/2,"Min"===e.alignY&&(l=-t),"Max"===e.alignY&&(l=t)),"slice"===e.meetOrSlice&&(t=i-u/(s=o=r.util.findScaleToCover(this._element,f)),"Mid"===e.alignX&&(h=t/2),"Max"===e.alignX&&(h=t),t=n-d/o,"Mid"===e.alignY&&(c=t/2),"Max"===e.alignY&&(c=t),i=u/s,n=d/o)),{width:i,height:n,scaleX:s,scaleY:o,offsetLeft:a,offsetTop:l,cropX:h,cropY:c}}}),r.Image.CSS_CANVAS="canvas-img",r.Image.prototype.getSvgSrc=r.Image.prototype.getSrc,r.Image.fromObject=function(t,e){var i=r.util.object.clone(t);r.util.loadImage(i.src,(function(t,n){n?e&&e(null,!0):r.Image.prototype._initFilters.call(i,i.filters,(function(n){i.filters=n||[],r.Image.prototype._initFilters.call(i,[i.resizeFilter],(function(n){i.resizeFilter=n[0],r.util.enlivenObjectEnlivables(i,i,(function(){var n=new r.Image(t,i);e(n,!1)}))}))}))}),null,i.crossOrigin)},r.Image.fromURL=function(t,e,i){r.util.loadImage(t,(function(t,n){e&&e(new r.Image(t,i),n)}),null,i&&i.crossOrigin)},r.Image.ATTRIBUTE_NAMES=r.SHARED_ATTRIBUTES.concat("x y width height preserveAspectRatio xlink:href crossOrigin image-rendering".split(" ")),r.Image.fromElement=function(t,i,n){var s=r.parseAttributes(t,r.Image.ATTRIBUTE_NAMES);r.Image.fromURL(s["xlink:href"],i,e(n?r.util.object.clone(n):{},s))})}(e),r.util.object.extend(r.Object.prototype,{_getAngleValueForStraighten:function(){var t=this.angle%360;return t>0?90*Math.round((t-1)/90):90*Math.round(t/90)},straighten:function(){return this.rotate(this._getAngleValueForStraighten())},fxStraighten:function(t){var e=function(){},i=(t=t||{}).onComplete||e,n=t.onChange||e,s=this;return r.util.animate({target:this,startValue:this.get("angle"),endValue:this._getAngleValueForStraighten(),duration:this.FX_DURATION,onChange:function(t){s.rotate(t),n()},onComplete:function(){s.setCoords(),i()}})}}),r.util.object.extend(r.StaticCanvas.prototype,{straightenObject:function(t){return t.straighten(),this.requestRenderAll(),this},fxStraightenObject:function(t){return t.fxStraighten({onChange:this.requestRenderAllBound})}}),function(){"use strict";function t(t,e){var i="precision "+e+" float;\nvoid main(){}",n=t.createShader(t.FRAGMENT_SHADER);return t.shaderSource(n,i),t.compileShader(n),!!t.getShaderParameter(n,t.COMPILE_STATUS)}function e(t){t&&t.tileSize&&(this.tileSize=t.tileSize),this.setupGLContext(this.tileSize,this.tileSize),this.captureGPUInfo()}r.isWebglSupported=function(e){if(r.isLikelyNode)return!1;e=e||r.WebglFilterBackend.prototype.tileSize;var i=document.createElement("canvas"),n=i.getContext("webgl")||i.getContext("experimental-webgl"),s=!1;if(n){r.maxTextureSize=n.getParameter(n.MAX_TEXTURE_SIZE),s=r.maxTextureSize>=e;for(var o=["highp","mediump","lowp"],a=0;a<3;a++)if(t(n,o[a])){r.webGlPrecision=o[a];break}}return this.isSupported=s,s},r.WebglFilterBackend=e,e.prototype={tileSize:2048,resources:{},setupGLContext:function(t,e){this.dispose(),this.createWebGLCanvas(t,e),this.aPosition=new Float32Array([0,0,0,1,1,0,1,1]),this.chooseFastestCopyGLTo2DMethod(t,e)},chooseFastestCopyGLTo2DMethod:function(t,e){var i,n="undefined"!==typeof window.performance;try{new ImageData(1,1),i=!0}catch(g){i=!1}var s="undefined"!==typeof ArrayBuffer,l="undefined"!==typeof Uint8ClampedArray;if(n&&i&&s&&l){var h=r.util.createCanvasElement(),c=new ArrayBuffer(t*e*4);if(r.forceGLPutImageData)return this.imageBuffer=c,void(this.copyGLTo2D=a);var u,d,f={imageBuffer:c,destinationWidth:t,destinationHeight:e,targetCanvas:h};h.width=t,h.height=e,u=window.performance.now(),o.call(f,this.gl,f),d=window.performance.now()-u,u=window.performance.now(),a.call(f,this.gl,f),d>window.performance.now()-u?(this.imageBuffer=c,this.copyGLTo2D=a):this.copyGLTo2D=o}},createWebGLCanvas:function(t,e){var i=r.util.createCanvasElement();i.width=t,i.height=e;var n={alpha:!0,premultipliedAlpha:!1,depth:!1,stencil:!1,antialias:!1},s=i.getContext("webgl",n);s||(s=i.getContext("experimental-webgl",n)),s&&(s.clearColor(0,0,0,0),this.canvas=i,this.gl=s)},applyFilters:function(t,e,i,n,r,s){var o,a=this.gl;s&&(o=this.getCachedTexture(s,e));var l={originalWidth:e.width||e.originalWidth,originalHeight:e.height||e.originalHeight,sourceWidth:i,sourceHeight:n,destinationWidth:i,destinationHeight:n,context:a,sourceTexture:this.createTexture(a,i,n,!o&&e),targetTexture:this.createTexture(a,i,n),originalTexture:o||this.createTexture(a,i,n,!o&&e),passes:t.length,webgl:!0,aPosition:this.aPosition,programCache:this.programCache,pass:0,filterBackend:this,targetCanvas:r},h=a.createFramebuffer();return a.bindFramebuffer(a.FRAMEBUFFER,h),t.forEach((function(t){t&&t.applyTo(l)})),function(t){var e=t.targetCanvas,i=e.width,n=e.height,r=t.destinationWidth,s=t.destinationHeight;i===r&&n===s||(e.width=r,e.height=s)}(l),this.copyGLTo2D(a,l),a.bindTexture(a.TEXTURE_2D,null),a.deleteTexture(l.sourceTexture),a.deleteTexture(l.targetTexture),a.deleteFramebuffer(h),r.getContext("2d").setTransform(1,0,0,1,0,0),l},dispose:function(){this.canvas&&(this.canvas=null,this.gl=null),this.clearWebGLCaches()},clearWebGLCaches:function(){this.programCache={},this.textureCache={}},createTexture:function(t,e,i,n,r){var s=t.createTexture();return t.bindTexture(t.TEXTURE_2D,s),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,r||t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,r||t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),n?t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,n):t.texImage2D(t.TEXTURE_2D,0,t.RGBA,e,i,0,t.RGBA,t.UNSIGNED_BYTE,null),s},getCachedTexture:function(t,e){if(this.textureCache[t])return this.textureCache[t];var i=this.createTexture(this.gl,e.width,e.height,e);return this.textureCache[t]=i,i},evictCachesForKey:function(t){this.textureCache[t]&&(this.gl.deleteTexture(this.textureCache[t]),delete this.textureCache[t])},copyGLTo2D:o,captureGPUInfo:function(){if(this.gpuInfo)return this.gpuInfo;var t=this.gl,e={renderer:"",vendor:""};if(!t)return e;var i=t.getExtension("WEBGL_debug_renderer_info");if(i){var n=t.getParameter(i.UNMASKED_RENDERER_WEBGL),r=t.getParameter(i.UNMASKED_VENDOR_WEBGL);n&&(e.renderer=n.toLowerCase()),r&&(e.vendor=r.toLowerCase())}return this.gpuInfo=e,e}}}(),function(){"use strict";var t=function(){};function e(){}r.Canvas2dFilterBackend=e,e.prototype={evictCachesForKey:t,dispose:t,clearWebGLCaches:t,resources:{},applyFilters:function(t,e,i,n,r){var s=r.getContext("2d");s.drawImage(e,0,0,i,n);var o={sourceWidth:i,sourceHeight:n,imageData:s.getImageData(0,0,i,n),originalEl:e,originalImageData:s.getImageData(0,0,i,n),canvasEl:r,ctx:s,filterBackend:this};return t.forEach((function(t){t.applyTo(o)})),o.imageData.width===i&&o.imageData.height===n||(r.width=o.imageData.width,r.height=o.imageData.height),s.putImageData(o.imageData,0,0),o}}}(),r.Image=r.Image||{},r.Image.filters=r.Image.filters||{},r.Image.filters.BaseFilter=r.util.createClass({type:"BaseFilter",vertexSource:"attribute vec2 aPosition;\nvarying vec2 vTexCoord;\nvoid main() {\nvTexCoord = aPosition;\ngl_Position = vec4(aPosition * 2.0 - 1.0, 0.0, 1.0);\n}",fragmentSource:"precision highp float;\nvarying vec2 vTexCoord;\nuniform sampler2D uTexture;\nvoid main() {\ngl_FragColor = texture2D(uTexture, vTexCoord);\n}",initialize:function(t){t&&this.setOptions(t)},setOptions:function(t){for(var e in t)this[e]=t[e]},createProgram:function(t,e,i){e=e||this.fragmentSource,i=i||this.vertexSource,"highp"!==r.webGlPrecision&&(e=e.replace(/precision highp float/g,"precision "+r.webGlPrecision+" float"));var n=t.createShader(t.VERTEX_SHADER);if(t.shaderSource(n,i),t.compileShader(n),!t.getShaderParameter(n,t.COMPILE_STATUS))throw new Error("Vertex shader compile error for "+this.type+": "+t.getShaderInfoLog(n));var s=t.createShader(t.FRAGMENT_SHADER);if(t.shaderSource(s,e),t.compileShader(s),!t.getShaderParameter(s,t.COMPILE_STATUS))throw new Error("Fragment shader compile error for "+this.type+": "+t.getShaderInfoLog(s));var o=t.createProgram();if(t.attachShader(o,n),t.attachShader(o,s),t.linkProgram(o),!t.getProgramParameter(o,t.LINK_STATUS))throw new Error('Shader link error for "${this.type}" '+t.getProgramInfoLog(o));var a=this.getAttributeLocations(t,o),l=this.getUniformLocations(t,o)||{};return l.uStepW=t.getUniformLocation(o,"uStepW"),l.uStepH=t.getUniformLocation(o,"uStepH"),{program:o,attributeLocations:a,uniformLocations:l}},getAttributeLocations:function(t,e){return{aPosition:t.getAttribLocation(e,"aPosition")}},getUniformLocations:function(){return{}},sendAttributeData:function(t,e,i){var n=e.aPosition,r=t.createBuffer();t.bindBuffer(t.ARRAY_BUFFER,r),t.enableVertexAttribArray(n),t.vertexAttribPointer(n,2,t.FLOAT,!1,0,0),t.bufferData(t.ARRAY_BUFFER,i,t.STATIC_DRAW)},_setupFrameBuffer:function(t){var e,i,n=t.context;t.passes>1?(e=t.destinationWidth,i=t.destinationHeight,t.sourceWidth===e&&t.sourceHeight===i||(n.deleteTexture(t.targetTexture),t.targetTexture=t.filterBackend.createTexture(n,e,i)),n.framebufferTexture2D(n.FRAMEBUFFER,n.COLOR_ATTACHMENT0,n.TEXTURE_2D,t.targetTexture,0)):(n.bindFramebuffer(n.FRAMEBUFFER,null),n.finish())},_swapTextures:function(t){t.passes--,t.pass++;var e=t.targetTexture;t.targetTexture=t.sourceTexture,t.sourceTexture=e},isNeutralState:function(){var t=this.mainParameter,e=r.Image.filters[this.type].prototype;if(t){if(Array.isArray(e[t])){for(var i=e[t].length;i--;)if(this[t][i]!==e[t][i])return!1;return!0}return e[t]===this[t]}return!1},applyTo:function(t){t.webgl?(this._setupFrameBuffer(t),this.applyToWebGL(t),this._swapTextures(t)):this.applyTo2d(t)},retrieveShader:function(t){return t.programCache.hasOwnProperty(this.type)||(t.programCache[this.type]=this.createProgram(t.context)),t.programCache[this.type]},applyToWebGL:function(t){var e=t.context,i=this.retrieveShader(t);0===t.pass&&t.originalTexture?e.bindTexture(e.TEXTURE_2D,t.originalTexture):e.bindTexture(e.TEXTURE_2D,t.sourceTexture),e.useProgram(i.program),this.sendAttributeData(e,i.attributeLocations,t.aPosition),e.uniform1f(i.uniformLocations.uStepW,1/t.sourceWidth),e.uniform1f(i.uniformLocations.uStepH,1/t.sourceHeight),this.sendUniformData(e,i.uniformLocations),e.viewport(0,0,t.destinationWidth,t.destinationHeight),e.drawArrays(e.TRIANGLE_STRIP,0,4)},bindAdditionalTexture:function(t,e,i){t.activeTexture(i),t.bindTexture(t.TEXTURE_2D,e),t.activeTexture(t.TEXTURE0)},unbindAdditionalTexture:function(t,e){t.activeTexture(e),t.bindTexture(t.TEXTURE_2D,null),t.activeTexture(t.TEXTURE0)},getMainParameter:function(){return this[this.mainParameter]},setMainParameter:function(t){this[this.mainParameter]=t},sendUniformData:function(){},createHelpLayer:function(t){if(!t.helpLayer){var e=document.createElement("canvas");e.width=t.sourceWidth,e.height=t.sourceHeight,t.helpLayer=e}},toObject:function(){var t={type:this.type},e=this.mainParameter;return e&&(t[e]=this[e]),t},toJSON:function(){return this.toObject()}}),r.Image.filters.BaseFilter.fromObject=function(t,e){var i=new r.Image.filters[t.type](t);return e&&e(i),i},function(t){"use strict";var e=t.fabric||(t.fabric={}),i=e.Image.filters,n=e.util.createClass;i.ColorMatrix=n(i.BaseFilter,{type:"ColorMatrix",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nvarying vec2 vTexCoord;\nuniform mat4 uColorMatrix;\nuniform vec4 uConstants;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\ncolor *= uColorMatrix;\ncolor += uConstants;\ngl_FragColor = color;\n}",matrix:[1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0],mainParameter:"matrix",colorsOnly:!0,initialize:function(t){this.callSuper("initialize",t),this.matrix=this.matrix.slice(0)},applyTo2d:function(t){var e,i,n,r,s,o=t.imageData.data,a=o.length,l=this.matrix,h=this.colorsOnly;for(s=0;s=x||o<0||o>=b||(l=4*(a*b+o),h=v[f*m+d],e+=p[l]*h,i+=p[l+1]*h,n+=p[l+2]*h,w||(r+=p[l+3]*h));C[s]=e,C[s+1]=i,C[s+2]=n,C[s+3]=w?p[s+3]:r}t.imageData=_},getUniformLocations:function(t,e){return{uMatrix:t.getUniformLocation(e,"uMatrix"),uOpaque:t.getUniformLocation(e,"uOpaque"),uHalfSize:t.getUniformLocation(e,"uHalfSize"),uSize:t.getUniformLocation(e,"uSize")}},sendUniformData:function(t,e){t.uniform1fv(e.uMatrix,this.matrix)},toObject:function(){return i(this.callSuper("toObject"),{opaque:this.opaque,matrix:this.matrix})}}),e.Image.filters.Convolute.fromObject=e.Image.filters.BaseFilter.fromObject}(e),function(t){"use strict";var e=t.fabric||(t.fabric={}),i=e.Image.filters,n=e.util.createClass;i.Grayscale=n(i.BaseFilter,{type:"Grayscale",fragmentSource:{average:"precision highp float;\nuniform sampler2D uTexture;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nfloat average = (color.r + color.b + color.g) / 3.0;\ngl_FragColor = vec4(average, average, average, color.a);\n}",lightness:"precision highp float;\nuniform sampler2D uTexture;\nuniform int uMode;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 col = texture2D(uTexture, vTexCoord);\nfloat average = (max(max(col.r, col.g),col.b) + min(min(col.r, col.g),col.b)) / 2.0;\ngl_FragColor = vec4(average, average, average, col.a);\n}",luminosity:"precision highp float;\nuniform sampler2D uTexture;\nuniform int uMode;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 col = texture2D(uTexture, vTexCoord);\nfloat average = 0.21 * col.r + 0.72 * col.g + 0.07 * col.b;\ngl_FragColor = vec4(average, average, average, col.a);\n}"},mode:"average",mainParameter:"mode",applyTo2d:function(t){var e,i,n=t.imageData.data,r=n.length,s=this.mode;for(e=0;eh[0]&&r>h[1]&&s>h[2]&&n 0.0) {\n"+this.fragmentSource[t]+"}\n}"},retrieveShader:function(t){var e,i=this.type+"_"+this.mode;return t.programCache.hasOwnProperty(i)||(e=this.buildSource(this.mode),t.programCache[i]=this.createProgram(t.context,e)),t.programCache[i]},applyTo2d:function(t){var i,n,r,s,o,a,l,h=t.imageData.data,c=h.length,u=1-this.alpha;i=(l=new e.Color(this.color).getSource())[0]*this.alpha,n=l[1]*this.alpha,r=l[2]*this.alpha;for(var d=0;d=t||e<=-t)return 0;if(e<1.1920929e-7&&e>-1.1920929e-7)return 1;var i=(e*=Math.PI)/t;return a(e)/e*a(i)/i}},applyTo2d:function(t){var e=t.imageData,i=this.scaleX,n=this.scaleY;this.rcpScaleX=1/i,this.rcpScaleY=1/n;var r,s=e.width,a=e.height,l=o(s*i),h=o(a*n);"sliceHack"===this.resizeType?r=this.sliceByTwo(t,s,a,l,h):"hermite"===this.resizeType?r=this.hermiteFastResize(t,s,a,l,h):"bilinear"===this.resizeType?r=this.bilinearFiltering(t,s,a,l,h):"lanczos"===this.resizeType&&(r=this.lanczosResize(t,s,a,l,h)),t.imageData=r},sliceByTwo:function(t,i,r,s,o){var a,l,h=t.imageData,c=.5,u=!1,d=!1,f=i*c,g=r*c,p=e.filterBackend.resources,v=0,m=0,y=i,b=0;for(p.sliceByTwo||(p.sliceByTwo=document.createElement("canvas")),((a=p.sliceByTwo).width<1.5*i||a.height=e)){M=n(1e3*s(S-_.x)),x[M]||(x[M]={});for(var F=C.y-b;F<=C.y+b;F++)F<0||F>=o||(D=n(1e3*s(F-_.y)),x[M][D]||(x[M][D]=f(r(i(M*v,2)+i(D*m,2))/1e3)),(T=x[M][D])>0&&(E+=T,k+=T*c[O=4*(F*e+S)],j+=T*c[O+1],P+=T*c[O+2],A+=T*c[O+3]))}d[O=4*(w*a+l)]=k/E,d[O+1]=j/E,d[O+2]=P/E,d[O+3]=A/E}return++l1&&D<-1||(b=2*D*D*D-3*D*D+1)>0&&(T+=b*f[(M=4*(A+E*e))+3],_+=b,f[M+3]<255&&(b=b*f[M+3]/250),C+=b*f[M],w+=b*f[M+1],S+=b*f[M+2],x+=b)}p[y]=C/x,p[y+1]=w/x,p[y+2]=S/x,p[y+3]=T/_}return g},toObject:function(){return{type:this.type,scaleX:this.scaleX,scaleY:this.scaleY,resizeType:this.resizeType,lanczosLobes:this.lanczosLobes}}}),e.Image.filters.Resize.fromObject=e.Image.filters.BaseFilter.fromObject}(e),function(t){"use strict";var e=t.fabric||(t.fabric={}),i=e.Image.filters,n=e.util.createClass;i.Contrast=n(i.BaseFilter,{type:"Contrast",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uContrast;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nfloat contrastF = 1.015 * (uContrast + 1.0) / (1.0 * (1.015 - uContrast));\ncolor.rgb = contrastF * (color.rgb - 0.5) + 0.5;\ngl_FragColor = color;\n}",contrast:0,mainParameter:"contrast",applyTo2d:function(t){if(0!==this.contrast){var e,i=t.imageData.data,n=i.length,r=Math.floor(255*this.contrast),s=259*(r+255)/(255*(259-r));for(e=0;e1&&(e=1/this.aspectRatio):this.aspectRatio<1&&(e=this.aspectRatio),t=e*this.blur*.12,this.horizontal?i[0]=t:i[1]=t,i}}),i.Blur.fromObject=e.Image.filters.BaseFilter.fromObject}(e),function(t){"use strict";var e=t.fabric||(t.fabric={}),i=e.Image.filters,n=e.util.createClass;i.Gamma=n(i.BaseFilter,{type:"Gamma",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform vec3 uGamma;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nvec3 correction = (1.0 / uGamma);\ncolor.r = pow(color.r, correction.r);\ncolor.g = pow(color.g, correction.g);\ncolor.b = pow(color.b, correction.b);\ngl_FragColor = color;\ngl_FragColor.rgb *= color.a;\n}",gamma:[1,1,1],mainParameter:"gamma",initialize:function(t){this.gamma=[1,1,1],i.BaseFilter.prototype.initialize.call(this,t)},applyTo2d:function(t){var e,i=t.imageData.data,n=this.gamma,r=i.length,s=1/n[0],o=1/n[1],a=1/n[2];for(this.rVals||(this.rVals=new Uint8Array(256),this.gVals=new Uint8Array(256),this.bVals=new Uint8Array(256)),e=0,r=256;e'},_getCacheCanvasDimensions:function(){var t=this.callSuper("_getCacheCanvasDimensions"),e=this.fontSize;return t.width+=e*t.zoomX,t.height+=e*t.zoomY,t},_render:function(t){var e=this.path;e&&!e.isNotVisible()&&e._render(t),this._setTextStyles(t),this._renderTextLinesBackground(t),this._renderTextDecoration(t,"underline"),this._renderText(t),this._renderTextDecoration(t,"overline"),this._renderTextDecoration(t,"linethrough")},_renderText:function(t){"stroke"===this.paintFirst?(this._renderTextStroke(t),this._renderTextFill(t)):(this._renderTextFill(t),this._renderTextStroke(t))},_setTextStyles:function(t,e,i){if(t.textBaseline="alphabetical",this.path)switch(this.pathAlign){case"center":t.textBaseline="middle";break;case"ascender":t.textBaseline="top";break;case"descender":t.textBaseline="bottom"}t.font=this._getFontDeclaration(e,i)},calcTextWidth:function(){for(var t=this.getLineWidth(0),e=1,i=this._textLines.length;et&&(t=n)}return t},_renderTextLine:function(t,e,i,n,r,s){this._renderChars(t,e,i,n,r,s)},_renderTextLinesBackground:function(t){if(this.textBackgroundColor||this.styleHas("textBackgroundColor")){for(var e,i,n,r,s,o,a,l=t.fillStyle,h=this._getLeftOffset(),c=this._getTopOffset(),u=0,d=0,f=this.path,g=0,p=this._textLines.length;g=0:ia?u%=a:u<0&&(u+=a),this._setGraphemeOnPath(u,s,o),u+=s.kernedWidth}return{width:l,numOfSpaces:0}},_setGraphemeOnPath:function(t,i,n){var r=t+i.kernedWidth/2,s=this.path,o=e.util.getPointOnPath(s.path,r,s.segmentsInfo);i.renderLeft=o.x-n.x,i.renderTop=o.y-n.y,i.angle=o.angle+("right"===this.pathSide?Math.PI:0)},_getGraphemeBox:function(t,e,i,n,r){var s,o=this.getCompleteStyleDeclaration(e,i),a=n?this.getCompleteStyleDeclaration(e,i-1):{},l=this._measureChar(t,o,n,a),h=l.kernedWidth,c=l.width;0!==this.charSpacing&&(c+=s=this._getWidthOfCharSpacing(),h+=s);var u={width:c,left:0,height:o.fontSize,kernedWidth:h,deltaY:o.deltaY};if(i>0&&!r){var d=this.__charBounds[e][i-1];u.left=d.left+d.width+l.kernedWidth-l.width}return u},getHeightOfLine:function(t){if(this.__lineHeights[t])return this.__lineHeights[t];for(var e=this._textLines[t],i=this.getHeightOfChar(t,0),n=1,r=e.length;n0){var E=y+s+u;"rtl"===this.direction&&(E=this.width-E-d),h&&m&&(t.fillStyle=m,t.fillRect(E,c+C*n+o,d,this.fontSize/15)),u=f.left,d=f.width,h=g,m=v,n=r,o=a}else d+=f.kernedWidth;E=y+s+u;"rtl"===this.direction&&(E=this.width-E-d),t.fillStyle=v,g&&v&&t.fillRect(E,c+C*n+o,d-_,this.fontSize/15),b+=i}else b+=i;this._removeShadow(t)}},_getFontDeclaration:function(t,i){var n=t||this,r=this.fontFamily,s=e.Text.genericFonts.indexOf(r.toLowerCase())>-1,o=void 0===r||r.indexOf("'")>-1||r.indexOf(",")>-1||r.indexOf('"')>-1||s?n.fontFamily:'"'+n.fontFamily+'"';return[e.isLikelyNode?n.fontWeight:n.fontStyle,e.isLikelyNode?n.fontStyle:n.fontWeight,i?this.CACHE_FONT_SIZE+"px":n.fontSize+"px",o].join(" ")},render:function(t){this.visible&&(this.canvas&&this.canvas.skipOffscreen&&!this.group&&!this.isOnScreen()||(this._shouldClearDimensionCache()&&this.initDimensions(),this.callSuper("render",t)))},_splitTextIntoLines:function(t){for(var i=t.split(this._reNewline),n=new Array(i.length),r=["\n"],s=[],o=0;o-1&&(t.underline=!0),t.textDecoration.indexOf("line-through")>-1&&(t.linethrough=!0),t.textDecoration.indexOf("overline")>-1&&(t.overline=!0),delete t.textDecoration)}r.IText=r.util.createClass(r.Text,r.Observable,{type:"i-text",selectionStart:0,selectionEnd:0,selectionColor:"rgba(17,119,255,0.3)",isEditing:!1,editable:!0,editingBorderColor:"rgba(102,153,255,0.25)",cursorWidth:2,cursorColor:"",cursorDelay:1e3,cursorDuration:600,caching:!0,hiddenTextareaContainer:null,_reSpace:/\s|\n/,_currentCursorOpacity:0,_selectionDirection:null,_abortCursorAnimation:!1,__widthOfSpace:[],inCompositionMode:!1,initialize:function(t,e){this.callSuper("initialize",t,e),this.initBehavior()},setSelectionStart:function(t){t=Math.max(t,0),this._updateAndFire("selectionStart",t)},setSelectionEnd:function(t){t=Math.min(t,this.text.length),this._updateAndFire("selectionEnd",t)},_updateAndFire:function(t,e){this[t]!==e&&(this._fireSelectionChanged(),this[t]=e),this._updateTextarea()},_fireSelectionChanged:function(){this.fire("selection:changed"),this.canvas&&this.canvas.fire("text:selection:changed",{target:this})},initDimensions:function(){this.isEditing&&this.initDelayedCursor(),this.clearContextTop(),this.callSuper("initDimensions")},render:function(t){this.clearContextTop(),this.callSuper("render",t),this.cursorOffsetCache={},this.renderCursorOrSelection()},_render:function(t){this.callSuper("_render",t)},clearContextTop:function(t){if(this.isEditing&&this.canvas&&this.canvas.contextTop){var e=this.canvas.contextTop,i=this.canvas.viewportTransform;e.save(),e.transform(i[0],i[1],i[2],i[3],i[4],i[5]),this.transform(e),this._clearTextArea(e),t||e.restore()}},renderCursorOrSelection:function(){if(this.isEditing&&this.canvas&&this.canvas.contextTop){var t=this._getCursorBoundaries(),e=this.canvas.contextTop;this.clearContextTop(!0),this.selectionStart===this.selectionEnd?this.renderCursor(t,e):this.renderSelection(t,e),e.restore()}},_clearTextArea:function(t){var e=this.width+4,i=this.height+4;t.clearRect(-e/2,-i/2,e,i)},_getCursorBoundaries:function(t){"undefined"===typeof t&&(t=this.selectionStart);var e=this._getLeftOffset(),i=this._getTopOffset(),n=this._getCursorBoundariesOffsets(t);return{left:e,top:i,leftOffset:n.left,topOffset:n.top}},_getCursorBoundariesOffsets:function(t){if(this.cursorOffsetCache&&"top"in this.cursorOffsetCache)return this.cursorOffsetCache;var e,i,n,r,s=0,o=0,a=this.get2DCursorLocation(t);n=a.charIndex,i=a.lineIndex;for(var l=0;l0?o:0)},"rtl"===this.direction&&(r.left*=-1),this.cursorOffsetCache=r,this.cursorOffsetCache},renderCursor:function(t,e){var i=this.get2DCursorLocation(),n=i.lineIndex,r=i.charIndex>0?i.charIndex-1:0,s=this.getValueOfPropertyAt(n,r,"fontSize"),o=this.scaleX*this.canvas.getZoom(),a=this.cursorWidth/o,l=t.topOffset,h=this.getValueOfPropertyAt(n,r,"deltaY");l+=(1-this._fontSizeFraction)*this.getHeightOfLine(n)/this.lineHeight-s*(1-this._fontSizeFraction),this.inCompositionMode&&this.renderSelection(t,e),e.fillStyle=this.cursorColor||this.getValueOfPropertyAt(n,r,"fill"),e.globalAlpha=this.__isMousedown?1:this._currentCursorOpacity,e.fillRect(t.left+t.leftOffset-a/2,l+t.top+h,a,s)},renderSelection:function(t,e){for(var i=this.inCompositionMode?this.hiddenTextarea.selectionStart:this.selectionStart,n=this.inCompositionMode?this.hiddenTextarea.selectionEnd:this.selectionEnd,r=-1!==this.textAlign.indexOf("justify"),s=this.get2DCursorLocation(i),o=this.get2DCursorLocation(n),a=s.lineIndex,l=o.lineIndex,h=s.charIndex<0?0:s.charIndex,c=o.charIndex<0?0:o.charIndex,u=a;u<=l;u++){var d,f=this._getLineLeftOffset(u)||0,g=this.getHeightOfLine(u),p=0,v=0;if(u===a&&(p=this.__charBounds[a][h].left),u>=a&&u1)&&(g/=this.lineHeight);var y=t.left+f+p,b=v-p,x=g,_=0;this.inCompositionMode?(e.fillStyle=this.compositionColor||"black",x=1,_=g):e.fillStyle=this.selectionColor,"rtl"===this.direction&&(y=this.width-y-b),e.fillRect(y,t.top+t.topOffset+_,b,x),t.topOffset+=d}},getCurrentCharFontSize:function(){var t=this._getCurrentCharIndex();return this.getValueOfPropertyAt(t.l,t.c,"fontSize")},getCurrentCharColor:function(){var t=this._getCurrentCharIndex();return this.getValueOfPropertyAt(t.l,t.c,"fill")},_getCurrentCharIndex:function(){var t=this.get2DCursorLocation(this.selectionStart,!0),e=t.charIndex>0?t.charIndex-1:0;return{l:t.lineIndex,c:e}}}),r.IText.fromObject=function(e,i){var n=r.util.stylesFromArray(e.styles,e.text),s=Object.assign({},e,{styles:n});if(t(s),s.styles)for(var o in s.styles)for(var a in s.styles[o])t(s.styles[o][a]);r.Object._fromObject("IText",s,i,"text")}}(),function(){var t=r.util.object.clone;r.util.object.extend(r.IText.prototype,{initBehavior:function(){this.initAddedHandler(),this.initRemovedHandler(),this.initCursorSelectionHandlers(),this.initDoubleClickSimulation(),this.mouseMoveHandler=this.mouseMoveHandler.bind(this)},onDeselect:function(){this.isEditing&&this.exitEditing(),this.selected=!1},initAddedHandler:function(){var t=this;this.on("added",(function(){var e=t.canvas;e&&(e._hasITextHandlers||(e._hasITextHandlers=!0,t._initCanvasHandlers(e)),e._iTextInstances=e._iTextInstances||[],e._iTextInstances.push(t))}))},initRemovedHandler:function(){var t=this;this.on("removed",(function(){var e=t.canvas;e&&(e._iTextInstances=e._iTextInstances||[],r.util.removeFromArray(e._iTextInstances,t),0===e._iTextInstances.length&&(e._hasITextHandlers=!1,t._removeCanvasHandlers(e)))}))},_initCanvasHandlers:function(t){t._mouseUpITextHandler=function(){t._iTextInstances&&t._iTextInstances.forEach((function(t){t.__isMousedown=!1}))},t.on("mouse:up",t._mouseUpITextHandler)},_removeCanvasHandlers:function(t){t.off("mouse:up",t._mouseUpITextHandler)},_tick:function(){this._currentTickState=this._animateCursor(this,1,this.cursorDuration,"_onTickComplete")},_animateCursor:function(t,e,i,n){var r;return r={isAborted:!1,abort:function(){this.isAborted=!0}},t.animate("_currentCursorOpacity",e,{duration:i,onComplete:function(){r.isAborted||t[n]()},onChange:function(){t.canvas&&t.selectionStart===t.selectionEnd&&t.renderCursorOrSelection()},abort:function(){return r.isAborted}}),r},_onTickComplete:function(){var t=this;this._cursorTimeout1&&clearTimeout(this._cursorTimeout1),this._cursorTimeout1=setTimeout((function(){t._currentTickCompleteState=t._animateCursor(t,0,this.cursorDuration/2,"_tick")}),100)},initDelayedCursor:function(t){var e=this,i=t?0:this.cursorDelay;this.abortCursorAnimation(),this._currentCursorOpacity=1,this._cursorTimeout2=setTimeout((function(){e._tick()}),i)},abortCursorAnimation:function(){var t=this._currentTickState||this._currentTickCompleteState,e=this.canvas;this._currentTickState&&this._currentTickState.abort(),this._currentTickCompleteState&&this._currentTickCompleteState.abort(),clearTimeout(this._cursorTimeout1),clearTimeout(this._cursorTimeout2),this._currentCursorOpacity=0,t&&e&&e.clearContext(e.contextTop||e.contextContainer)},selectAll:function(){return this.selectionStart=0,this.selectionEnd=this._text.length,this._fireSelectionChanged(),this._updateTextarea(),this},getSelectedText:function(){return this._text.slice(this.selectionStart,this.selectionEnd).join("")},findWordBoundaryLeft:function(t){var e=0,i=t-1;if(this._reSpace.test(this._text[i]))for(;this._reSpace.test(this._text[i]);)e++,i--;for(;/\S/.test(this._text[i])&&i>-1;)e++,i--;return t-e},findWordBoundaryRight:function(t){var e=0,i=t;if(this._reSpace.test(this._text[i]))for(;this._reSpace.test(this._text[i]);)e++,i++;for(;/\S/.test(this._text[i])&&i-1;)e++,i--;return t-e},findLineBoundaryRight:function(t){for(var e=0,i=t;!/\n/.test(this._text[i])&&i0&&nthis.__selectionStartOnMouseDown?(this.selectionStart=this.__selectionStartOnMouseDown,this.selectionEnd=e):(this.selectionStart=e,this.selectionEnd=this.__selectionStartOnMouseDown),this.selectionStart===i&&this.selectionEnd===n||(this.restartCursorIfNeeded(),this._fireSelectionChanged(),this._updateTextarea(),this.renderCursorOrSelection()))}},_setEditingProps:function(){this.hoverCursor="text",this.canvas&&(this.canvas.defaultCursor=this.canvas.moveCursor="text"),this.borderColor=this.editingBorderColor,this.hasControls=this.selectable=!1,this.lockMovementX=this.lockMovementY=!0},fromStringToGraphemeSelection:function(t,e,i){var n=i.slice(0,t),s=r.util.string.graphemeSplit(n).length;if(t===e)return{selectionStart:s,selectionEnd:s};var o=i.slice(t,e);return{selectionStart:s,selectionEnd:s+r.util.string.graphemeSplit(o).length}},fromGraphemeToStringSelection:function(t,e,i){var n=i.slice(0,t).join("").length;return t===e?{selectionStart:n,selectionEnd:n}:{selectionStart:n,selectionEnd:n+i.slice(t,e).join("").length}},_updateTextarea:function(){if(this.cursorOffsetCache={},this.hiddenTextarea){if(!this.inCompositionMode){var t=this.fromGraphemeToStringSelection(this.selectionStart,this.selectionEnd,this._text);this.hiddenTextarea.selectionStart=t.selectionStart,this.hiddenTextarea.selectionEnd=t.selectionEnd}this.updateTextareaPosition()}},updateFromTextArea:function(){if(this.hiddenTextarea){this.cursorOffsetCache={},this.text=this.hiddenTextarea.value,this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords());var t=this.fromStringToGraphemeSelection(this.hiddenTextarea.selectionStart,this.hiddenTextarea.selectionEnd,this.hiddenTextarea.value);this.selectionEnd=this.selectionStart=t.selectionEnd,this.inCompositionMode||(this.selectionStart=t.selectionStart),this.updateTextareaPosition()}},updateTextareaPosition:function(){if(this.selectionStart===this.selectionEnd){var t=this._calcTextareaPosition();this.hiddenTextarea.style.left=t.left,this.hiddenTextarea.style.top=t.top}},_calcTextareaPosition:function(){if(!this.canvas)return{x:1,y:1};var t=this.inCompositionMode?this.compositionStart:this.selectionStart,e=this._getCursorBoundaries(t),i=this.get2DCursorLocation(t),n=i.lineIndex,s=i.charIndex,o=this.getValueOfPropertyAt(n,s,"fontSize")*this.lineHeight,a=e.leftOffset,l=this.calcTransformMatrix(),h={x:e.left+a,y:e.top+e.topOffset+o},c=this.canvas.getRetinaScaling(),u=this.canvas.upperCanvasEl,d=u.width/c,f=u.height/c,g=d-o,p=f-o,v=u.clientWidth/d,m=u.clientHeight/f;return h=r.util.transformPoint(h,l),(h=r.util.transformPoint(h,this.canvas.viewportTransform)).x*=v,h.y*=m,h.x<0&&(h.x=0),h.x>g&&(h.x=g),h.y<0&&(h.y=0),h.y>p&&(h.y=p),h.x+=this.canvas._offset.left,h.y+=this.canvas._offset.top,{left:h.x+"px",top:h.y+"px",fontSize:o+"px",charHeight:o}},_saveEditingProps:function(){this._savedProps={hasControls:this.hasControls,borderColor:this.borderColor,lockMovementX:this.lockMovementX,lockMovementY:this.lockMovementY,hoverCursor:this.hoverCursor,selectable:this.selectable,defaultCursor:this.canvas&&this.canvas.defaultCursor,moveCursor:this.canvas&&this.canvas.moveCursor}},_restoreEditingProps:function(){this._savedProps&&(this.hoverCursor=this._savedProps.hoverCursor,this.hasControls=this._savedProps.hasControls,this.borderColor=this._savedProps.borderColor,this.selectable=this._savedProps.selectable,this.lockMovementX=this._savedProps.lockMovementX,this.lockMovementY=this._savedProps.lockMovementY,this.canvas&&(this.canvas.defaultCursor=this._savedProps.defaultCursor,this.canvas.moveCursor=this._savedProps.moveCursor))},exitEditing:function(){var t=this._textBeforeEdit!==this.text,e=this.hiddenTextarea;return this.selected=!1,this.isEditing=!1,this.selectionEnd=this.selectionStart,e&&(e.blur&&e.blur(),e.parentNode&&e.parentNode.removeChild(e)),this.hiddenTextarea=null,this.abortCursorAnimation(),this._restoreEditingProps(),this._currentCursorOpacity=0,this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this.fire("editing:exited"),t&&this.fire("modified"),this.canvas&&(this.canvas.off("mouse:move",this.mouseMoveHandler),this.canvas.fire("text:editing:exited",{target:this}),t&&this.canvas.fire("object:modified",{target:this})),this},_removeExtraneousStyles:function(){for(var t in this.styles)this._textLines[t]||delete this.styles[t]},removeStyleFromTo:function(t,e){var i,n,r=this.get2DCursorLocation(t,!0),s=this.get2DCursorLocation(e,!0),o=r.lineIndex,a=r.charIndex,l=s.lineIndex,h=s.charIndex;if(o!==l){if(this.styles[o])for(i=a;i=h&&(n[c-d]=n[u],delete n[u])}},shiftLineStyles:function(e,i){var n=t(this.styles);for(var r in this.styles){var s=parseInt(r,10);s>e&&(this.styles[s+i]=n[s],n[s-i]||delete this.styles[s])}},restartCursorIfNeeded:function(){this._currentTickState&&!this._currentTickState.isAborted&&this._currentTickCompleteState&&!this._currentTickCompleteState.isAborted||this.initDelayedCursor()},insertNewlineStyleObject:function(e,i,n,r){var s,o={},a=!1,l=this._unwrappedTextLines[e].length===i;for(var h in n||(n=1),this.shiftLineStyles(e,n),this.styles[e]&&(s=this.styles[e][0===i?i:i-1]),this.styles[e]){var c=parseInt(h,10);c>=i&&(a=!0,o[c-i]=this.styles[e][h],l&&0===i||delete this.styles[e][h])}var u=!1;for(a&&!l&&(this.styles[e+n]=o,u=!0),u&&n--;n>0;)r&&r[n-1]?this.styles[e+n]={0:t(r[n-1])}:s?this.styles[e+n]={0:t(s)}:delete this.styles[e+n],n--;this._forceClearCache=!0},insertCharStyleObject:function(e,i,n,r){this.styles||(this.styles={});var s=this.styles[e],o=s?t(s):{};for(var a in n||(n=1),o){var l=parseInt(a,10);l>=i&&(s[l+n]=o[l],o[l-n]||delete s[l])}if(this._forceClearCache=!0,r)for(;n--;)Object.keys(r[n]).length&&(this.styles[e]||(this.styles[e]={}),this.styles[e][i+n]=t(r[n]));else if(s)for(var h=s[i?i-1:1];h&&n--;)this.styles[e][i+n]=t(h)},insertNewStyleBlock:function(t,e,i){for(var n=this.get2DCursorLocation(e,!0),r=[0],s=0,o=0;o0&&(this.insertCharStyleObject(n.lineIndex,n.charIndex,r[0],i),i=i&&i.slice(r[0]+1)),s&&this.insertNewlineStyleObject(n.lineIndex,n.charIndex+r[0],s);for(o=1;o0?this.insertCharStyleObject(n.lineIndex+o,0,r[o],i):i&&this.styles[n.lineIndex+o]&&i[0]&&(this.styles[n.lineIndex+o][0]=i[0]),i=i&&i.slice(r[o]+1);r[o]>0&&this.insertCharStyleObject(n.lineIndex+o,0,r[o],i)},setSelectionStartEndWithShift:function(t,e,i){i<=t?(e===t?this._selectionDirection="left":"right"===this._selectionDirection&&(this._selectionDirection="left",this.selectionEnd=t),this.selectionStart=i):i>t&&it?this.selectionStart=t:this.selectionStart<0&&(this.selectionStart=0),this.selectionEnd>t?this.selectionEnd=t:this.selectionEnd<0&&(this.selectionEnd=0)}})}(),r.util.object.extend(r.IText.prototype,{initDoubleClickSimulation:function(){this.__lastClickTime=+new Date,this.__lastLastClickTime=+new Date,this.__lastPointer={},this.on("mousedown",this.onMouseDown)},onMouseDown:function(t){if(this.canvas){this.__newClickTime=+new Date;var e=t.pointer;this.isTripleClick(e)&&(this.fire("tripleclick",t),this._stopEvent(t.e)),this.__lastLastClickTime=this.__lastClickTime,this.__lastClickTime=this.__newClickTime,this.__lastPointer=e,this.__lastIsEditing=this.isEditing,this.__lastSelected=this.selected}},isTripleClick:function(t){return this.__newClickTime-this.__lastClickTime<500&&this.__lastClickTime-this.__lastLastClickTime<500&&this.__lastPointer.x===t.x&&this.__lastPointer.y===t.y},_stopEvent:function(t){t.preventDefault&&t.preventDefault(),t.stopPropagation&&t.stopPropagation()},initCursorSelectionHandlers:function(){this.initMousedownHandler(),this.initMouseupHandler(),this.initClicks()},doubleClickHandler:function(t){this.isEditing&&this.selectWord(this.getSelectionStartFromPointer(t.e))},tripleClickHandler:function(t){this.isEditing&&this.selectLine(this.getSelectionStartFromPointer(t.e))},initClicks:function(){this.on("mousedblclick",this.doubleClickHandler),this.on("tripleclick",this.tripleClickHandler)},_mouseDownHandler:function(t){!this.canvas||!this.editable||t.e.button&&1!==t.e.button||(this.__isMousedown=!0,this.selected&&(this.inCompositionMode=!1,this.setCursorByClick(t.e)),this.isEditing&&(this.__selectionStartOnMouseDown=this.selectionStart,this.selectionStart===this.selectionEnd&&this.abortCursorAnimation(),this.renderCursorOrSelection()))},_mouseDownHandlerBefore:function(t){!this.canvas||!this.editable||t.e.button&&1!==t.e.button||(this.selected=this===this.canvas._activeObject)},initMousedownHandler:function(){this.on("mousedown",this._mouseDownHandler),this.on("mousedown:before",this._mouseDownHandlerBefore)},initMouseupHandler:function(){this.on("mouseup",this.mouseUpHandler)},mouseUpHandler:function(t){if(this.__isMousedown=!1,!(!this.editable||this.group||t.transform&&t.transform.actionPerformed||t.e.button&&1!==t.e.button)){if(this.canvas){var e=this.canvas._activeObject;if(e&&e!==this)return}this.__lastSelected&&!this.__corner?(this.selected=!1,this.__lastSelected=!1,this.enterEditing(t.e),this.selectionStart===this.selectionEnd?this.initDelayedCursor(!0):this.renderCursorOrSelection()):this.selected=!0}},setCursorByClick:function(t){var e=this.getSelectionStartFromPointer(t),i=this.selectionStart,n=this.selectionEnd;t.shiftKey?this.setSelectionStartEndWithShift(i,n,e):(this.selectionStart=e,this.selectionEnd=e),this.isEditing&&(this._fireSelectionChanged(),this._updateTextarea())},getSelectionStartFromPointer:function(t){for(var e,i=this.getLocalPointer(t),n=0,r=0,s=0,o=0,a=0,l=0,h=this._textLines.length;l0&&(o+=this._textLines[l-1].length+this.missingNewlineOffset(l-1));r=this._getLineLeftOffset(a)*this.scaleX,e=this._textLines[a],"rtl"===this.direction&&(i.x=this.width*this.scaleX-i.x+r);for(var c=0,u=e.length;cs||o<0?0:1);return this.flipX&&(a=r-a),a>this._text.length&&(a=this._text.length),a}}),r.util.object.extend(r.IText.prototype,{initHiddenTextarea:function(){this.hiddenTextarea=r.document.createElement("textarea"),this.hiddenTextarea.setAttribute("autocapitalize","off"),this.hiddenTextarea.setAttribute("autocorrect","off"),this.hiddenTextarea.setAttribute("autocomplete","off"),this.hiddenTextarea.setAttribute("spellcheck","false"),this.hiddenTextarea.setAttribute("data-fabric-hiddentextarea",""),this.hiddenTextarea.setAttribute("wrap","off");var t=this._calcTextareaPosition();this.hiddenTextarea.style.cssText="position: absolute; top: "+t.top+"; left: "+t.left+"; z-index: -999; opacity: 0; width: 1px; height: 1px; font-size: 1px; padding-top: "+t.fontSize+";",this.hiddenTextareaContainer?this.hiddenTextareaContainer.appendChild(this.hiddenTextarea):r.document.body.appendChild(this.hiddenTextarea),r.util.addListener(this.hiddenTextarea,"keydown",this.onKeyDown.bind(this)),r.util.addListener(this.hiddenTextarea,"keyup",this.onKeyUp.bind(this)),r.util.addListener(this.hiddenTextarea,"input",this.onInput.bind(this)),r.util.addListener(this.hiddenTextarea,"copy",this.copy.bind(this)),r.util.addListener(this.hiddenTextarea,"cut",this.copy.bind(this)),r.util.addListener(this.hiddenTextarea,"paste",this.paste.bind(this)),r.util.addListener(this.hiddenTextarea,"compositionstart",this.onCompositionStart.bind(this)),r.util.addListener(this.hiddenTextarea,"compositionupdate",this.onCompositionUpdate.bind(this)),r.util.addListener(this.hiddenTextarea,"compositionend",this.onCompositionEnd.bind(this)),!this._clickHandlerInitialized&&this.canvas&&(r.util.addListener(this.canvas.upperCanvasEl,"click",this.onClick.bind(this)),this._clickHandlerInitialized=!0)},keysMap:{9:"exitEditing",27:"exitEditing",33:"moveCursorUp",34:"moveCursorDown",35:"moveCursorRight",36:"moveCursorLeft",37:"moveCursorLeft",38:"moveCursorUp",39:"moveCursorRight",40:"moveCursorDown"},keysMapRtl:{9:"exitEditing",27:"exitEditing",33:"moveCursorUp",34:"moveCursorDown",35:"moveCursorLeft",36:"moveCursorRight",37:"moveCursorRight",38:"moveCursorUp",39:"moveCursorLeft",40:"moveCursorDown"},ctrlKeysMapUp:{67:"copy",88:"cut"},ctrlKeysMapDown:{65:"selectAll"},onClick:function(){this.hiddenTextarea&&this.hiddenTextarea.focus()},onKeyDown:function(t){if(this.isEditing){var e="rtl"===this.direction?this.keysMapRtl:this.keysMap;if(t.keyCode in e)this[e[t.keyCode]](t);else{if(!(t.keyCode in this.ctrlKeysMapDown)||!t.ctrlKey&&!t.metaKey)return;this[this.ctrlKeysMapDown[t.keyCode]](t)}t.stopImmediatePropagation(),t.preventDefault(),t.keyCode>=33&&t.keyCode<=40?(this.inCompositionMode=!1,this.clearContextTop(),this.renderCursorOrSelection()):this.canvas&&this.canvas.requestRenderAll()}},onKeyUp:function(t){!this.isEditing||this._copyDone||this.inCompositionMode?this._copyDone=!1:t.keyCode in this.ctrlKeysMapUp&&(t.ctrlKey||t.metaKey)&&(this[this.ctrlKeysMapUp[t.keyCode]](t),t.stopImmediatePropagation(),t.preventDefault(),this.canvas&&this.canvas.requestRenderAll())},onInput:function(t){var e=this.fromPaste;if(this.fromPaste=!1,t&&t.stopPropagation(),this.isEditing){var i,n,s,o,a,l=this._splitTextIntoLines(this.hiddenTextarea.value).graphemeText,h=this._text.length,c=l.length,u=c-h,d=this.selectionStart,f=this.selectionEnd,g=d!==f;if(""===this.hiddenTextarea.value)return this.styles={},this.updateFromTextArea(),this.fire("changed"),void(this.canvas&&(this.canvas.fire("text:changed",{target:this}),this.canvas.requestRenderAll()));var p=this.fromStringToGraphemeSelection(this.hiddenTextarea.selectionStart,this.hiddenTextarea.selectionEnd,this.hiddenTextarea.value),v=d>p.selectionStart;g?(i=this._text.slice(d,f),u+=f-d):c0&&(n+=(i=this.__charBounds[t][e-1]).left+i.width),n},getDownCursorOffset:function(t,e){var i=this._getSelectionForOffset(t,e),n=this.get2DCursorLocation(i),r=n.lineIndex;if(r===this._textLines.length-1||t.metaKey||34===t.keyCode)return this._text.length-i;var s=n.charIndex,o=this._getWidthBeforeCursor(r,s),a=this._getIndexOnLine(r+1,o);return this._textLines[r].slice(s).length+a+1+this.missingNewlineOffset(r)},_getSelectionForOffset:function(t,e){return t.shiftKey&&this.selectionStart!==this.selectionEnd&&e?this.selectionEnd:this.selectionStart},getUpCursorOffset:function(t,e){var i=this._getSelectionForOffset(t,e),n=this.get2DCursorLocation(i),r=n.lineIndex;if(0===r||t.metaKey||33===t.keyCode)return-i;var s=n.charIndex,o=this._getWidthBeforeCursor(r,s),a=this._getIndexOnLine(r-1,o),l=this._textLines[r].slice(0,s),h=this.missingNewlineOffset(r-1);return-this._textLines[r-1].length+a-l.length+(1-h)},_getIndexOnLine:function(t,e){for(var i,n,r=this._textLines[t],s=this._getLineLeftOffset(t),o=0,a=0,l=r.length;ae){n=!0;var h=s-i,c=s,u=Math.abs(h-e);o=Math.abs(c-e)=this._text.length&&this.selectionEnd>=this._text.length||this._moveCursorUpOrDown("Down",t)},moveCursorUp:function(t){0===this.selectionStart&&0===this.selectionEnd||this._moveCursorUpOrDown("Up",t)},_moveCursorUpOrDown:function(t,e){var i=this["get"+t+"CursorOffset"](e,"right"===this._selectionDirection);e.shiftKey?this.moveCursorWithShift(i):this.moveCursorWithoutShift(i),0!==i&&(this.setSelectionInBoundaries(),this.abortCursorAnimation(),this._currentCursorOpacity=1,this.initDelayedCursor(),this._fireSelectionChanged(),this._updateTextarea())},moveCursorWithShift:function(t){var e="left"===this._selectionDirection?this.selectionStart+t:this.selectionEnd+t;return this.setSelectionStartEndWithShift(this.selectionStart,this.selectionEnd,e),0!==t},moveCursorWithoutShift:function(t){return t<0?(this.selectionStart+=t,this.selectionEnd=this.selectionStart):(this.selectionEnd+=t,this.selectionStart=this.selectionEnd),0!==t},moveCursorLeft:function(t){0===this.selectionStart&&0===this.selectionEnd||this._moveCursorLeftOrRight("Left",t)},_move:function(t,e,i){var n;if(t.altKey)n=this["findWordBoundary"+i](this[e]);else{if(!t.metaKey&&35!==t.keyCode&&36!==t.keyCode)return this[e]+="Left"===i?-1:1,!0;n=this["findLineBoundary"+i](this[e])}if("undefined"!==typeof n&&this[e]!==n)return this[e]=n,!0},_moveLeft:function(t,e){return this._move(t,e,"Left")},_moveRight:function(t,e){return this._move(t,e,"Right")},moveCursorLeftWithoutShift:function(t){var e=!0;return this._selectionDirection="left",this.selectionEnd===this.selectionStart&&0!==this.selectionStart&&(e=this._moveLeft(t,"selectionStart")),this.selectionEnd=this.selectionStart,e},moveCursorLeftWithShift:function(t){return"right"===this._selectionDirection&&this.selectionStart!==this.selectionEnd?this._moveLeft(t,"selectionEnd"):0!==this.selectionStart?(this._selectionDirection="left",this._moveLeft(t,"selectionStart")):void 0},moveCursorRight:function(t){this.selectionStart>=this._text.length&&this.selectionEnd>=this._text.length||this._moveCursorLeftOrRight("Right",t)},_moveCursorLeftOrRight:function(t,e){var i="moveCursor"+t+"With";this._currentCursorOpacity=1,e.shiftKey?i+="Shift":i+="outShift",this[i](e)&&(this.abortCursorAnimation(),this.initDelayedCursor(),this._fireSelectionChanged(),this._updateTextarea())},moveCursorRightWithShift:function(t){return"left"===this._selectionDirection&&this.selectionStart!==this.selectionEnd?this._moveRight(t,"selectionStart"):this.selectionEnd!==this._text.length?(this._selectionDirection="right",this._moveRight(t,"selectionEnd")):void 0},moveCursorRightWithoutShift:function(t){var e=!0;return this._selectionDirection="right",this.selectionStart===this.selectionEnd?(e=this._moveRight(t,"selectionStart"),this.selectionEnd=this.selectionStart):this.selectionStart=this.selectionEnd,e},removeChars:function(t,e){"undefined"===typeof e&&(e=t+1),this.removeStyleFromTo(t,e),this._text.splice(t,e-t),this.text=this._text.join(""),this.set("dirty",!0),this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this._removeExtraneousStyles()},insertChars:function(t,e,i,n){"undefined"===typeof n&&(n=i),n>i&&this.removeStyleFromTo(i,n);var s=r.util.string.graphemeSplit(t);this.insertNewStyleBlock(s,i,e),this._text=[].concat(this._text.slice(0,i),s,this._text.slice(n)),this.text=this._text.join(""),this.set("dirty",!0),this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this._removeExtraneousStyles()}}),function(){var t=r.util.toFixed,e=/ +/g;r.util.object.extend(r.Text.prototype,{_toSVG:function(){var t=this._getSVGLeftTopOffsets(),e=this._getSVGTextAndBg(t.textTop,t.textLeft);return this._wrapSVGTextAndBg(e)},toSVG:function(t){return this._createBaseSVGMarkup(this._toSVG(),{reviver:t,noStyle:!0,withShadow:!0})},_getSVGLeftTopOffsets:function(){return{textLeft:-this.width/2,textTop:-this.height/2,lineTop:this.getHeightOfLine(0)}},_wrapSVGTextAndBg:function(t){var e=this.getSvgTextDecoration(this);return[t.textBgRects.join(""),'\t\t",t.textSpans.join(""),"\n"]},_getSVGTextAndBg:function(t,e){var i,n=[],r=[],s=t;this._setSVGBg(r);for(var o=0,a=this._textLines.length;o",r.util.string.escapeXml(i),""].join("")},_setSVGTextLineText:function(t,e,i,n){var s,o,a,l,h,c=this.getHeightOfLine(e),u=-1!==this.textAlign.indexOf("justify"),d="",f=0,g=this._textLines[e];n+=c*(1-this._fontSizeFraction)/this.lineHeight;for(var p=0,v=g.length-1;p<=v;p++)h=p===v||this.charSpacing,d+=g[p],a=this.__charBounds[e][p],0===f?(i+=a.kernedWidth-a.width,f+=a.width):f+=a.kernedWidth,u&&!h&&this._reSpaceAndTab.test(g[p])&&(h=!0),h||(s=s||this.getCompleteStyleDeclaration(e,p),o=this.getCompleteStyleDeclaration(e,p+1),h=r.util.hasStyleChanged(s,o,!0)),h&&(l=this._getStyleDeclaration(e,p)||{},t.push(this._createTextCharSpan(d,l,i,n)),d="",s=o,i+=f,f=0)},_pushTextBgRect:function(e,i,n,s,o,a){var l=r.Object.NUM_FRACTION_DIGITS;e.push("\t\t\n')},_setSVGTextLineBg:function(t,e,i,n){for(var r,s,o=this._textLines[e],a=this.getHeightOfLine(e)/this.lineHeight,l=0,h=0,c=this.getValueOfPropertyAt(e,0,"textBackgroundColor"),u=0,d=o.length;uthis.width&&this._set("width",this.dynamicMinWidth),-1!==this.textAlign.indexOf("justify")&&this.enlargeSpaces(),this.height=this.calcTextHeight(),this.saveState({propertySet:"_dimensionAffectingProps"}))},_generateStyleMap:function(t){for(var e=0,i=0,n=0,r={},s=0;s0?(i=0,n++,e++):!this.splitByGrapheme&&this._reSpaceAndTab.test(t.graphemeText[n])&&s>0&&(i++,n++),r[s]={line:e,offset:i},n+=t.graphemeLines[s].length,i+=t.graphemeLines[s].length;return r},styleHas:function(t,i){if(this._styleMap&&!this.isWrapping){var n=this._styleMap[i];n&&(i=n.line)}return e.Text.prototype.styleHas.call(this,t,i)},isEmptyStyles:function(t){if(!this.styles)return!0;var e,i,n=0,r=!1,s=this._styleMap[t],o=this._styleMap[t+1];for(var a in s&&(t=s.line,n=s.offset),o&&(r=o.line===t,e=o.offset),i="undefined"===typeof t?this.styles:{line:this.styles[t]})for(var l in i[a])if(l>=n&&(!r||ln&&!v?(a.push(l),l=[],s=f,v=!0):s+=m,v||o||l.push(d),l=l.concat(c),g=o?0:this._measureWord([d],i,u),u++,v=!1,f>p&&(p=f);return y&&a.push(l),p+r>this.dynamicMinWidth&&(this.dynamicMinWidth=p-m+r),a},isEndOfWrapping:function(t){return!this._styleMap[t+1]||this._styleMap[t+1].line!==this._styleMap[t].line},missingNewlineOffset:function(t){return this.splitByGrapheme?this.isEndOfWrapping(t)?1:0:1},_splitTextIntoLines:function(t){for(var i=e.Text.prototype._splitTextIntoLines.call(this,t),n=this._wrapText(i.lines,this.width),r=new Array(n.length),s=0;s{var n=i(17174),r=i(85157);t.exports=function t(e,i,s,o,a){var l=-1,h=e.length;for(s||(s=r),a||(a=[]);++l0&&s(c)?i>1?t(c,i-1,s,o,a):n(a,c):o||(a[a.length]=c)}return a}},32684:(t,e,i)=>{var n=i(31534),r=i(10207),s=i(25472),o=i(6996);t.exports=function(t,e){return e=n(e,t),null==(t=s(t,e))||delete t[o(r(e))]}},96274:(t,e,i)=>{var n=i(39010);t.exports=function(t){return n(t)?void 0:t}},65573:(t,e,i)=>{var n=i(83298),r=i(60485),s=i(37232);t.exports=function(t){return s(r(t,void 0,n),t+"")}},85157:(t,e,i)=>{var n=i(62279),r=i(38492),s=i(46296),o=n?n.isConcatSpreadable:void 0;t.exports=function(t){return s(t)||r(t)||!!(o&&t&&t[o])}},25472:(t,e,i)=>{var n=i(8013),r=i(12287);t.exports=function(t,e){return e.length<2?t:n(t,r(e,0,-1))}},83298:(t,e,i)=>{var n=i(54412);t.exports=function(t){return(null==t?0:t.length)?n(t,1):[]}},10207:t=>{t.exports=function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}},51804:(t,e,i)=>{var n=i(28141),r=i(89490)((function(t,e,i,r){n(t,e,i,r)}));t.exports=r},87863:(t,e,i)=>{var n=i(40341),r=i(1952),s=i(32684),o=i(31534),a=i(81742),l=i(96274),h=i(65573),c=i(99970),u=h((function(t,e){var i={};if(null==t)return i;var h=!1;e=n(e,(function(e){return e=o(e,t),h||(h=e.length>1),e})),a(t,c(t),i),h&&(i=r(i,7,l));for(var u=e.length;u--;)s(i,e[u]);return i}));t.exports=u},93838:(t,e,i)=>{"use strict";i.d(e,{Z:()=>k});var n=i(68963),r=i(50134),s=i.n(r),o="undefined"!==typeof window?window:null,a=null===o,l=a?void 0:o.document,h="addEventListener",c="removeEventListener",u="getBoundingClientRect",d="_a",f="_b",g="_c",p="horizontal",v=function(){return!1},m=a?"calc":["","-webkit-","-moz-","-o-"].filter((function(t){var e=l.createElement("div");return e.style.cssText="width:"+t+"calc(9px)",!!e.style.length})).shift()+"calc",y=function(t){return"string"===typeof t||t instanceof String},b=function(t){if(y(t)){var e=l.querySelector(t);if(!e)throw new Error("Selector "+t+" did not match a DOM element");return e}return t},x=function(t,e,i){var n=t[e];return void 0!==n?n:i},_=function(t,e,i,n){if(e){if("end"===n)return 0;if("center"===n)return t/2}else if(i){if("start"===n)return 0;if("center"===n)return t/2}return t},C=function(t,e){var i=l.createElement("div");return i.className="gutter gutter-"+e,i},w=function(t,e,i){var n={};return y(e)?n[t]=e:n[t]=m+"("+e+"% - "+i+"px)",n},S=function(t,e){var i;return(i={})[t]=e+"px",i};const T=function(t,e){if(void 0===e&&(e={}),a)return{};var i,n,r,s,m,y,T=t;Array.from&&(T=Array.from(T));var O=b(T[0]).parentNode,E=getComputedStyle?getComputedStyle(O):null,k=E?E.flexDirection:null,j=x(e,"sizes")||T.map((function(){return 100/T.length})),P=x(e,"minSize",100),A=Array.isArray(P)?P:T.map((function(){return P})),M=x(e,"maxSize",1/0),D=Array.isArray(M)?M:T.map((function(){return M})),F=x(e,"expandToMin",!1),L=x(e,"gutterSize",10),R=x(e,"gutterAlign","center"),I=x(e,"snapOffset",30),B=Array.isArray(I)?I:T.map((function(){return I})),H=x(e,"dragInterval",1),z=x(e,"direction",p),N=x(e,"cursor",z===p?"col-resize":"row-resize"),W=x(e,"gutter",C),V=x(e,"elementStyle",w),X=x(e,"gutterStyle",S);function G(t,e,n,r){var s=V(i,e,n,r);Object.keys(s).forEach((function(e){t.style[e]=s[e]}))}function Y(){return y.map((function(t){return t.size}))}function U(t){return"touches"in t?t.touches[0][n]:t[n]}function q(t){var e=y[this.a],i=y[this.b],n=e.size+i.size;e.size=t/this.size*n,i.size=n-t/this.size*n,G(e.element,e.size,this[f],e.i),G(i.element,i.size,this[g],i.i)}function Z(t){var i,n=y[this.a],r=y[this.b];this.dragging&&(i=U(t)-this.start+(this[f]-this.dragOffset),H>1&&(i=Math.round(i/H)*H),i<=n.minSize+n.snapOffset+this[f]?i=n.minSize+this[f]:i>=this.size-(r.minSize+r.snapOffset+this[g])&&(i=this.size-(r.minSize+this[g])),i>=n.maxSize-n.snapOffset+this[f]?i=n.maxSize+this[f]:i<=this.size-(r.maxSize-r.snapOffset+this[g])&&(i=this.size-(r.maxSize+this[g])),q.call(this,i),x(e,"onDrag",v)(Y()))}function K(){var t=y[this.a].element,e=y[this.b].element,n=t[u](),o=e[u]();this.size=n[i]+o[i]+this[f]+this[g],this.start=n[r],this.end=n[s]}function J(t){var e=function(t){if(!getComputedStyle)return null;var e=getComputedStyle(t);if(!e)return null;var i=t[m];return 0===i?null:i-=z===p?parseFloat(e.paddingLeft)+parseFloat(e.paddingRight):parseFloat(e.paddingTop)+parseFloat(e.paddingBottom)}(O);if(null===e)return t;if(A.reduce((function(t,e){return t+e}),0)>e)return t;var i=0,n=[],r=t.map((function(r,s){var o=e*r/100,a=_(L,0===s,s===t.length-1,R),l=A[s]+a;return o0&&n[r]-i>0){var o=Math.min(i,n[r]-i);i-=o,s=t-o}return s/e*100}))}function $(){var t=this,i=y[t.a].element,n=y[t.b].element;t.dragging&&x(e,"onDragEnd",v)(Y()),t.dragging=!1,o[c]("mouseup",t.stop),o[c]("touchend",t.stop),o[c]("touchcancel",t.stop),o[c]("mousemove",t.move),o[c]("touchmove",t.move),t.stop=null,t.move=null,i[c]("selectstart",v),i[c]("dragstart",v),n[c]("selectstart",v),n[c]("dragstart",v),i.style.userSelect="",i.style.webkitUserSelect="",i.style.MozUserSelect="",i.style.pointerEvents="",n.style.userSelect="",n.style.webkitUserSelect="",n.style.MozUserSelect="",n.style.pointerEvents="",t.gutter.style.cursor="",t.parent.style.cursor="",l.body.style.cursor=""}function Q(t){if(!("button"in t)||0===t.button){var i=this,n=y[i.a].element,r=y[i.b].element;i.dragging||x(e,"onDragStart",v)(Y()),t.preventDefault(),i.dragging=!0,i.move=Z.bind(i),i.stop=$.bind(i),o[h]("mouseup",i.stop),o[h]("touchend",i.stop),o[h]("touchcancel",i.stop),o[h]("mousemove",i.move),o[h]("touchmove",i.move),n[h]("selectstart",v),n[h]("dragstart",v),r[h]("selectstart",v),r[h]("dragstart",v),n.style.userSelect="none",n.style.webkitUserSelect="none",n.style.MozUserSelect="none",n.style.pointerEvents="none",r.style.userSelect="none",r.style.webkitUserSelect="none",r.style.MozUserSelect="none",r.style.pointerEvents="none",i.gutter.style.cursor=N,i.parent.style.cursor=N,l.body.style.cursor=N,K.call(i),i.dragOffset=U(t)-i.end}}z===p?(i="width",n="clientX",r="left",s="right",m="clientWidth"):"vertical"===z&&(i="height",n="clientY",r="top",s="bottom",m="clientHeight"),j=J(j);var tt=[];function et(t){var e=t.i===tt.length,i=e?tt[t.i-1]:tt[t.i];K.call(i);var n=e?i.size-t.minSize-i[g]:t.minSize+i[f];q.call(i,n)}return(y=T.map((function(t,e){var n,r={element:b(t),size:j[e],minSize:A[e],maxSize:D[e],snapOffset:B[e],i:e};if(e>0&&((n={a:e-1,b:e,dragging:!1,direction:z,parent:O})[f]=_(L,e-1===0,!1,R),n[g]=_(L,!1,e===T.length-1,R),"row-reverse"===k||"column-reverse"===k)){var s=n.a;n.a=n.b,n.b=s}if(e>0){var o=W(e,z,r.element);!function(t,e,n){var r=X(i,e,n);Object.keys(r).forEach((function(e){t.style[e]=r[e]}))}(o,L,e),n[d]=Q.bind(n),o[h]("mousedown",n[d]),o[h]("touchstart",n[d]),O.insertBefore(o,r.element),n.gutter=o}return G(r.element,r.size,_(L,0===e,e===T.length-1,R),e),e>0&&tt.push(n),r}))).forEach((function(t){var e=t.element[u]()[i];e0){var n=tt[i-1],r=y[n.a],s=y[n.b];r.size=e[i-1],s.size=t,G(r.element,r.size,n[f],r.i),G(s.element,s.size,n[g],s.i)}}))},getSizes:Y,collapse:function(t){et(y[t])},destroy:function(t,e){tt.forEach((function(n){if(!0!==e?n.parent.removeChild(n.gutter):(n.gutter[c]("mousedown",n[d]),n.gutter[c]("touchstart",n[d])),!0!==t){var r=V(i,n.a.size,n[f]);Object.keys(r).forEach((function(t){y[n.a].element.style[t]="",y[n.b].element.style[t]=""}))}}))},parent:O,pairs:tt}};function O(t,e){var i={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&-1===e.indexOf(n)&&(i[n]=t[n]);return i}var E=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.componentDidMount=function(){var t=this.props;t.children;var e=t.gutter,i=O(t,["children","gutter"]);i.gutter=function(t,i){var n;return e?n=e(t,i):(n=document.createElement("div")).className="gutter gutter-"+i,n.__isSplitGutter=!0,n},this.split=T(this.parent.children,i)},e.prototype.componentDidUpdate=function(t){var e=this,i=this.props;i.children;var n=i.minSize,r=i.sizes,s=i.collapsed,o=O(i,["children","minSize","sizes","collapsed"]),a=t.minSize,l=t.sizes,h=t.collapsed,c=["maxSize","expandToMin","gutterSize","gutterAlign","snapOffset","dragInterval","direction","cursor"].map((function(i){return e.props[i]!==t[i]})).reduce((function(t,e){return t||e}),!1);if(Array.isArray(n)&&Array.isArray(a)){var u=!1;n.forEach((function(t,e){u=u||t!==a[e]})),c=c||u}else c=!(!Array.isArray(n)&&!Array.isArray(a))||(c||n!==a);if(c)o.minSize=n,o.sizes=r||this.split.getSizes(),this.split.destroy(!0,!0),o.gutter=function(t,e,i){return i.previousSibling},this.split=T(Array.from(this.parent.children).filter((function(t){return!t.__isSplitGutter})),o);else if(r){var d=!1;r.forEach((function(t,e){d=d||t!==l[e]})),d&&this.split.setSizes(this.props.sizes)}Number.isInteger(s)&&(s!==h||c)&&this.split.collapse(s)},e.prototype.componentWillUnmount=function(){this.split.destroy(),delete this.split},e.prototype.render=function(){var t=this,e=this.props;e.sizes,e.minSize,e.maxSize,e.expandToMin,e.gutterSize,e.gutterAlign,e.snapOffset,e.dragInterval,e.direction,e.cursor,e.gutter,e.elementStyle,e.gutterStyle,e.onDrag,e.onDragStart,e.onDragEnd,e.collapsed;var i=e.children,r=O(e,["sizes","minSize","maxSize","expandToMin","gutterSize","gutterAlign","snapOffset","dragInterval","direction","cursor","gutter","elementStyle","gutterStyle","onDrag","onDragStart","onDragEnd","collapsed","children"]);return n.createElement("div",Object.assign({},{ref:function(e){t.parent=e}},r),i)},e}(n.Component);E.propTypes={sizes:s().arrayOf(s().number),minSize:s().oneOfType([s().number,s().arrayOf(s().number)]),maxSize:s().oneOfType([s().number,s().arrayOf(s().number)]),expandToMin:s().bool,gutterSize:s().number,gutterAlign:s().string,snapOffset:s().oneOfType([s().number,s().arrayOf(s().number)]),dragInterval:s().number,direction:s().string,cursor:s().string,gutter:s().func,elementStyle:s().func,gutterStyle:s().func,onDrag:s().func,onDragStart:s().func,onDragEnd:s().func,collapsed:s().number,children:s().arrayOf(s().element)},E.defaultProps={sizes:void 0,minSize:void 0,maxSize:void 0,expandToMin:void 0,gutterSize:void 0,gutterAlign:void 0,snapOffset:void 0,dragInterval:void 0,direction:void 0,cursor:void 0,gutter:void 0,elementStyle:void 0,gutterStyle:void 0,onDrag:void 0,onDragStart:void 0,onDragEnd:void 0,collapsed:void 0,children:void 0};const k=E},7504:(t,e,i)=>{"use strict";i.d(e,{f:()=>N});var n=i(75859),r=i(68963),s=i(83570),o=i.n(s),a=i(99879),l=i(40067),h=i(54973);const c=JSON.parse('{"label_error":"Error","label_empty":"No data"}'),u=JSON.parse('{"label_error":"\u041e\u0448\u0438\u0431\u043a\u0430","label_empty":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445"}'),d=(0,h.e)({en:c,ru:u},"ydb-navigation-tree"),f=(0,a.G)("ydb-navigation-tree-view-empty");function g(t){let{level:e}=t;return(0,n.jsx)(l.L,{name:(0,n.jsx)("span",{className:f(),children:d("label_empty")}),level:e})}const p=(0,a.G)("ydb-navigation-tree-view-error");function v(t){let{level:e}=t;return(0,n.jsx)(l.L,{name:(0,n.jsx)("span",{className:p(),children:d("label_error")}),level:e})}const m=(0,i(36951).Ge)("spin"),y=r.forwardRef((function(t,e){const{size:i="m",style:n,className:s,qa:o}=t;return r.createElement("div",{ref:e,style:n,className:m({size:i},s),"data-qa":o},r.createElement("div",{className:m("inner")}))})),b=(0,a.G)("ydb-navigation-tree-view-loader");function x(t){let{level:e}=t;return(0,n.jsx)(l.L,{name:(0,n.jsx)("div",{className:b(),children:(0,n.jsx)(y,{size:"xs"})}),level:e})}function _(t){return(0,n.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},t,{children:(0,n.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.22 15.03s-.001 0 0 0a.75.75 0 0 0 1.06-1.06l-.47-.47H10a3.016 3.016 0 0 0 1.507-.405A2.999 2.999 0 0 0 13 10.5V7.896h.003a2.735 2.735 0 0 0 .785-.366 2.75 2.75 0 1 0-2.288.366V10.5A1.5 1.5 0 0 1 10 12h-.19l.47-.47s0 .001 0 0a.75.75 0 0 0-1.06-1.06l-.47.47-1.28 1.28a.75.75 0 0 0 0 1.06l1.75 1.75ZM5.72 2.97a.75.75 0 0 1 1.06 0l.47.47 1.28 1.28a.748.748 0 0 1 0 1.06L6.78 7.53c.001 0 0 0 0 0a.751.751 0 0 1-1.06-1.06L6.19 6H6a1.5 1.5 0 0 0-1.5 1.5v2.604a2.757 2.757 0 0 1 2 2.646 2.738 2.738 0 0 1-1.212 2.28 2.737 2.737 0 0 1-1.538.47A2.747 2.747 0 0 1 1 12.75a2.751 2.751 0 0 1 2-2.646V7.5a2.999 2.999 0 0 1 3-3h.19l-.47-.47a.75.75 0 0 1 0-1.06Zm-.908 9.121A1.246 1.246 0 0 1 5 12.75a1.25 1.25 0 1 1-.188-.659ZM11 5.25a1.25 1.25 0 1 1 2.5 0 1.25 1.25 0 0 1-2.5 0Z"})}))}function C(t){return(0,n.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},t,{children:(0,n.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.01033 3.79551C2.11275 2.787 2.96447 2 4 2H5.5H7H9H10.5H12C13.1046 2 14 2.89543 14 4V5.5V12C14 13.1046 13.1046 14 12 14H10.5H9H7H5.5H4C2.89543 14 2 13.1046 2 12V5.5V4C2 3.93096 2.0035 3.86275 2.01033 3.79551ZM10.5 12.5H11.5C12.0523 12.5 12.5 12.0523 12.5 11.5V5.5H10.5L10.5 12.5ZM9 5.5L9 12.5H7L7 5.5H9ZM3.5 5.5H5.5L5.5 12.5H4.5C3.94772 12.5 3.5 12.0523 3.5 11.5V5.5Z"})}))}function w(t){return(0,n.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512",fill:"currentColor"},t,{children:(0,n.jsx)("path",{d:"M448 80V128C448 172.2 347.7 208 224 208C100.3 208 0 172.2 0 128V80C0 35.82 100.3 0 224 0C347.7 0 448 35.82 448 80zM393.2 214.7C413.1 207.3 433.1 197.8 448 186.1V288C448 332.2 347.7 368 224 368C100.3 368 0 332.2 0 288V186.1C14.93 197.8 34.02 207.3 54.85 214.7C99.66 230.7 159.5 240 224 240C288.5 240 348.3 230.7 393.2 214.7V214.7zM54.85 374.7C99.66 390.7 159.5 400 224 400C288.5 400 348.3 390.7 393.2 374.7C413.1 367.3 433.1 357.8 448 346.1V432C448 476.2 347.7 512 224 512C100.3 512 0 476.2 0 432V346.1C14.93 357.8 34.02 367.3 54.85 374.7z"})}))}function S(t){return(0,n.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},t,{children:(0,n.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 6.75C0 6.35156 0.338542 6 0.722222 6L3.61111 6V3L0.722222 3C0.338542 3 0 2.67188 0 2.25C0 1.85156 0.338542 1.5 0.722222 1.5L3.61111 1.5V0.750001C3.61111 0.351563 3.94965 0 4.33333 0C4.73958 0 5.05556 0.351563 5.05556 0.750001H5.77778C7.53819 0.750001 8.98264 2.03906 9.32118 3.75H12V5.25H9.32118C9.29095 5.4049 9.25189 5.55606 9.20457 5.70291C9.10459 5.73587 9.00778 5.77066 8.9144 5.80723C8.505 5.96755 8.12646 6.17556 7.83841 6.44187C7.5498 6.70871 7.3 7.08678 7.3 7.56255V7.90902C6.83862 8.12843 6.32337 8.25 5.77778 8.25H5.05556C5.05556 8.67188 4.73958 9 4.33333 9C3.94965 9 3.61111 8.67188 3.61111 8.25V7.5L0.722222 7.5C0.338542 7.5 0 7.17188 0 6.75ZM16 8.5V7.5625C16 6.70312 14.1964 6 12 6C9.78571 6 8 6.70312 8 7.5625V8.5C8 9.37891 9.78571 10.0625 12 10.0625C14.1964 10.0625 16 9.37891 16 8.5ZM16 9.65234C15.7321 9.86719 15.375 10.0625 15.0179 10.1992C14.2143 10.5117 13.1429 10.6875 12 10.6875C10.8393 10.6875 9.76786 10.5117 8.96429 10.1992C8.60714 10.0625 8.25 9.86719 8 9.65234V11.625C8 12.5039 9.78571 13.1875 12 13.1875C14.1964 13.1875 16 12.5039 16 11.625V9.65234ZM12 13.8125C10.8393 13.8125 9.76786 13.6367 8.96429 13.3242C8.60714 13.1875 8.25 12.9922 8 12.7773V14.4375C8 15.3164 9.78571 16 12 16C14.1964 16 16 15.3164 16 14.4375V12.7773C15.7321 12.9922 15.375 13.1875 15.0179 13.3242C14.2143 13.6367 13.1429 13.8125 12 13.8125Z"})}))}function T(t){return(0,n.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},t,{children:(0,n.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 6.75C0 6.35156 0.351562 6 0.75 6L3.75 6V3L0.75 3C0.351562 3 0 2.67188 0 2.25C0 1.85156 0.351562 1.5 0.75 1.5L3.75 1.5V0.750001C3.75 0.351563 4.10156 0 4.5 0C4.92188 0 5.25 0.351563 5.25 0.750001H6C7.82812 0.750001 9.32812 2.03906 9.67969 3.75H12V5.25H9.67969C9.60376 5.62455 9.47428 5.97724 9.2995 6.30005H7.19969C6.09701 6.30005 5.26846 7.20143 5.25 8.25C5.25 8.67188 4.92188 9 4.5 9C4.10156 9 3.75 8.67188 3.75 8.25V7.5L0.75 7.5C0.351562 7.5 0 7.17188 0 6.75ZM16 8.28571C16 7.58259 15.4336 7 14.75 7H7.25C6.54688 7 6 7.58259 6 8.28571V14.7143C6 15.4375 6.54688 16 7.25 16H14.75C15.4336 16 16 15.4375 16 14.7143V8.28571ZM10.375 9.57143V11.5H7.25V9.57143H10.375ZM7.25 14.7143V12.7857H10.375V14.7143H7.25ZM14.75 14.7143H11.625V12.7857H14.75V14.7143ZM14.75 9.57143V11.5H11.625V9.57143H14.75Z"})}))}function O(t){return(0,n.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},t,{children:(0,n.jsx)("path",{d:"M13.2812 4.875H8.40625L6.78125 3.25H2.71875C2.0332 3.25 1.5 3.80859 1.5 4.46875V11.7812C1.5 12.4668 2.0332 13 2.71875 13H13.2812C13.9414 13 14.5 12.4668 14.5 11.7812V6.09375C14.5 5.43359 13.9414 4.875 13.2812 4.875Z"})}))}function E(t){return(0,n.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},t,{children:(0,n.jsx)("path",{d:"M15.2109 9.06445C15.4648 8.6582 15.1602 8.125 14.6777 8.125H4.54688C4.01367 8.125 3.37891 8.50586 3.125 8.9375L1.29688 12.0859C1.04297 12.4922 1.34766 13 1.83008 13H11.9609C12.4941 13 13.1289 12.6445 13.3828 12.2129L15.2109 9.06445ZM4.54688 7.3125H12.875V6.09375C12.875 5.43359 12.3164 4.875 11.6562 4.875H7.59375L5.96875 3.25H1.90625C1.2207 3.25 0.6875 3.80859 0.6875 4.46875V11.5527L2.43945 8.53125C2.87109 7.79492 3.6582 7.3125 4.54688 7.3125Z"})}))}function k(t){return(0,n.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},t,{children:(0,n.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.24935 2.94323L8.5 9.5H12.1L11.1446 14.2772C11.0322 14.839 11.7994 15.1177 12.0738 14.6147L15.9111 7.57956C16.1765 7.09311 15.8244 6.5 15.2703 6.5H12.9L13.5325 3.33728C13.6192 2.90413 13.2879 2.5 12.8461 2.5H9.74611C9.49194 2.5 9.27821 2.69069 9.24935 2.94323ZM7.40003 10.5L8.25717 3H1.625C0.710938 3 0 3.73633 0 4.625V12.75C0 13.6641 0.710938 14.375 1.625 14.375H10.1517C10.1538 14.2803 10.1646 14.1822 10.1848 14.0811L10.901 10.5H7.40003ZM5.6875 8.6875V6.25H1.625V8.6875H5.6875ZM1.625 10.3125V12.75H5.6875V10.3125H1.625Z"})}))}function j(t){return(0,n.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},t,{children:(0,n.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.01033 3.79551C2.11275 2.787 2.96447 2 4 2H7.3H8.8H12C13.1046 2 14 2.89543 14 4V5.5V8.2002V9.7002V12C14 13.1046 13.1046 14 12 14H8.8H7.3H4C2.89543 14 2 13.1046 2 12V9.7002V8.2002V5.5V4C2 3.93096 2.0035 3.86275 2.01033 3.79551ZM8.8 12.5H11.5C12.0523 12.5 12.5 12.0523 12.5 11.5V9.7002H8.8V12.5ZM7.3 9.7002V12.5H4.5C3.94772 12.5 3.5 12.0523 3.5 11.5V9.7002H7.3ZM8.8 8.2002H12.5V5.5H8.8L8.8 8.2002ZM7.3 5.5L7.3 8.2002H3.5V5.5H7.3Z"})}))}function P(t){return(0,n.jsxs)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},t,{children:[(0,n.jsx)("rect",{x:"2",y:"2.20001",width:"9",height:"2.5",rx:"0.5"}),(0,n.jsx)("rect",{x:"5",y:"6.70001",width:"9",height:"2.5",rx:"0.5"}),(0,n.jsx)("rect",{x:"2",y:"11.2",width:"9",height:"2.5",rx:"0.5"})]}))}function A(t){return(0,n.jsxs)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},t,{children:[(0,n.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.625 2H7.49951C6.47457 2.77006 5.7552 3.92488 5.55588 5.25H1.625V7.6875H5.79193C6.48417 9.6186 8.33076 11 10.5 11C10.877 11 11.2443 10.9583 11.5974 10.8792L12.7748 12.5799C12.4905 13.0601 11.9665 13.375 11.375 13.375H1.625C0.710938 13.375 0 12.6641 0 11.75V3.625C0 2.73633 0.710938 2 1.625 2ZM1.625 11.75V9.3125H5.6875V11.75H1.625Z"}),(0,n.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.4411 8.71106C14.0985 7.9983 14.5 7.04604 14.5 6C14.5 3.79086 12.7091 2 10.5 2C8.29086 2 6.5 3.79086 6.5 6C6.5 8.20914 8.29086 10 10.5 10C11.0316 10 11.5389 9.89631 12.0029 9.70806L14.2807 12.9981C14.5557 13.3955 15.1008 13.4946 15.4981 13.2195C15.8955 12.9444 15.9946 12.3993 15.7195 12.002L13.4411 8.71106ZM12.5 6C12.5 7.10457 11.6046 8 10.5 8C9.39543 8 8.5 7.10457 8.5 6C8.5 4.89543 9.39543 4 10.5 4C11.6046 4 12.5 4.89543 12.5 6Z"})]}))}function M(t){return"status"in t}function D(t,e,i){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;const r=t[e];if(r&&(i(r,n,e,t),!r.collapsed))for(const s of r.children)D(t,"".concat(e,"/").concat(s),i,n+1)}var F;function L(t){return Object.assign(Object.assign(Object.assign({},{collapsed:!0,loading:!1,loaded:!1,error:!1,children:[]}),{expandable:"database"===t.type||"directory"===t.type}),t)}function R(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1?arguments[1]:void 0;var i,n;switch(e.type){case F.ToggleCollapsed:return Object.assign(Object.assign({},t),{[e.payload.path]:Object.assign(Object.assign({},t[e.payload.path]),{collapsed:!t[e.payload.path].collapsed})});case F.StartLoading:return Object.assign(Object.assign({},t),{[e.payload.path]:Object.assign(Object.assign({},t[e.payload.path]),{loading:!0,loaded:!1,error:!1,children:[]})});case F.FinishLoading:{const r=Object.assign(Object.assign({},t),{[e.payload.path]:Object.assign(Object.assign({},t[e.payload.path]),{loading:!1,loaded:Boolean(e.payload.data),error:!1})});if(e.payload.data){r[e.payload.path].children=e.payload.data.map((t=>{let{name:e}=t;return e}));for(const s of e.payload.data){const o="".concat(e.payload.path,"/").concat(s.name),{activePath:a=""}=e.payload,l=null!==(n=null===(i=t[o])||void 0===i?void 0:i.collapsed)&&void 0!==n?n:!a.startsWith("".concat(o,"/"));r[o]=L(Object.assign(Object.assign({},s),{collapsed:l,path:o}))}}return r}case F.ErrorLoading:return Object.assign(Object.assign({},t),{[e.payload.path]:Object.assign(Object.assign({},t[e.payload.path]),{loading:!1,loaded:!1,error:!0})});case F.ResetNode:return Object.assign(Object.assign({},t),{[e.payload.path]:Object.assign(Object.assign({},t[e.payload.path]),{collapsed:!0,loading:!1,loaded:!1,error:!1,children:[]})});default:return t}}function I(t,e){const i=[];return D(t,e,((t,e)=>{i.push(Object.assign(Object.assign({},t),{level:e}));const n=function(t,e){if(!t.collapsed)return t.loading?{path:t.path,status:"loading",level:e+1}:t.error?{path:t.path,status:"error",level:e+1}:t.loaded&&0===t.children.length?{path:t.path,status:"empty",level:e+1}:void 0}(t,e);n&&i.push(n)})),i}function B(t,e){switch(t){case"async_replication":return(0,n.jsx)(_,{height:16});case"database":return(0,n.jsx)(w,{height:14});case"directory":return e?(0,n.jsx)(O,{height:16}):(0,n.jsx)(E,{height:16});case"index":return(0,n.jsx)(k,{height:16});case"table":case"index_table":return(0,n.jsx)(j,{height:16});case"column_table":return(0,n.jsx)(C,{height:16});case"stream":case"topic":return(0,n.jsx)(P,{height:16});case"external_table":return(0,n.jsx)(T,{height:16});case"external_data_source":return(0,n.jsx)(S,{height:16});case"view":return(0,n.jsx)(A,{height:16});default:return null}}function H(t){let{path:e,fetchPath:i,activePath:s,state:o,level:a,dispatch:h,children:c,onActivate:u,getActions:d,renderAdditionalNodeElements:f,cache:g}=t;const p=o[e];r.useEffect((()=>{p.collapsed?g||h({type:F.ResetNode,payload:{path:e}}):p.loaded||p.loading||(h({type:F.StartLoading,payload:{path:e}}),i(e).then((t=>{h({type:F.FinishLoading,payload:{path:e,activePath:s,data:t}})})).catch((t=>{h({type:F.ErrorLoading,payload:{path:e,error:t}})})))}),[p.collapsed]);const v=r.useCallback((()=>{u&&u(e)}),[e,u]),m=r.useCallback((()=>{h({type:F.ToggleCollapsed,payload:{path:e}})}),[h,e]),y=r.useMemo((()=>null===f||void 0===f?void 0:f(p.path,p.type)),[f,p]),b=r.useMemo((()=>null===d||void 0===d?void 0:d(p.path,p.type)),[d,p]);return(0,n.jsx)(l.L,{name:p.name,icon:B(p.type,p.collapsed),collapsed:p.collapsed,active:p.path===s,actions:b,additionalNodeElements:y,hasArrow:p.expandable,onClick:v,onArrowClick:m,level:a,children:c})}!function(t){t.ToggleCollapsed="toggle-collapsed",t.StartLoading="start-loading",t.FinishLoading="finish-loading",t.ErrorLoading="error-loading",t.ResetNode="reset-node"}(F||(F={}));const z=t=>{const e="".concat(t.path,"|").concat(t.status);return"loading"===t.status?(0,n.jsx)(x,{level:t.level},e):"error"===t.status?(0,n.jsx)(v,{level:t.level},e):(0,n.jsx)(g,{level:t.level},e)};function N(t){let{rootState:e,fetchPath:i,getActions:s,renderAdditionalNodeElements:a,activePath:l,onActivePathUpdate:h,cache:c=!0,virtualize:u=!1}=t;const[d,f]=r.useReducer(R,{[e.path]:L(e)}),g=r.useMemo((()=>I(d,e.path)),[e.path,d]),p=t=>(0,n.jsx)(H,{state:d,path:t.path,activePath:l,fetchPath:i,dispatch:f,onActivate:h,getActions:s,renderAdditionalNodeElements:a,cache:c,level:t.level},t.path);return u?(0,n.jsx)(o(),{type:"uniform",length:g.length,useStaticSize:!0,itemRenderer:t=>{const e=g[t];return M(e)?z(e):p(e)}}):(0,n.jsx)(r.Fragment,{children:g.map((t=>M(t)?z(t):p(t)))})}},40067:(t,e,i)=>{"use strict";i.d(e,{L:()=>h});var n=i(75859),r=i(68963),s=i(30044),o=i(99879);const a="--ydb-tree-view-level",l=(0,o.G)("ydb-tree-view");function h(t){let{children:e,name:i,title:o,icon:h,collapsed:c=!0,active:u=!1,onClick:d,onArrowClick:f,hasArrow:g=!1,actions:p,additionalNodeElements:v,level:m}=t;const y=r.useCallback((t=>{if(!d)return;t.nativeEvent.composedPath().some((t=>t instanceof HTMLElement&&("BUTTON"===t.nodeName&&!t.hasAttribute("disabled")||t.hasAttribute("tabindex")&&t.tabIndex>-1)))||d()}),[d]),b=f||d;let x="tree-view_arrow",_="tree-view_children";return c&&(x+=" tree-view_arrow-collapsed",_+=" tree-view_children-collapsed"),(0,n.jsx)("div",{className:l(),style:{[a]:m},children:(0,n.jsxs)("div",{className:"tree-view",children:[(0,n.jsxs)("div",{className:"".concat("tree-view_item"," ").concat(l("item",{active:u})),onClick:y,children:[(0,n.jsx)("button",{type:"button",className:"".concat(x," ").concat(l("arrow",{collapsed:c,hidden:!g})),disabled:!b,onClick:b}),(0,n.jsxs)("div",{className:l("content"),children:[h&&(0,n.jsx)("div",{className:l("icon"),children:h}),(0,n.jsx)("div",{className:l("text"),title:o,children:i}),p&&p.length>0&&(0,n.jsxs)("div",{className:l("actions"),children:[v,(0,n.jsx)(s.h,{defaultSwitcherProps:{view:"flat-secondary",size:"s",pin:"brick-brick"},items:p})]})]})]}),(0,n.jsx)("div",{className:"".concat(_," ").concat(l("container",{collapsed:c})),children:c?null:e})]})})}},99879:(t,e,i)=>{"use strict";i.d(e,{G:()=>n});const n=(0,i(5247).withNaming)({e:"__",m:"_"})},55895:()=>{},39633:(t,e,i)=>{"use strict";i.d(e,{Vi:()=>j});var n={grad:.9,turn:360,rad:360/(2*Math.PI)},r=function(t){return"string"==typeof t?t.length>0:"number"==typeof t},s=function(t,e,i){return void 0===e&&(e=0),void 0===i&&(i=Math.pow(10,e)),Math.round(i*t)/i+0},o=function(t,e,i){return void 0===e&&(e=0),void 0===i&&(i=1),t>i?i:t>e?t:e},a=function(t){return(t=isFinite(t)?t%360:0)>0?t:t+360},l=function(t){return{r:o(t.r,0,255),g:o(t.g,0,255),b:o(t.b,0,255),a:o(t.a)}},h=function(t){return{r:s(t.r),g:s(t.g),b:s(t.b),a:s(t.a,3)}},c=/^#([0-9a-f]{3,8})$/i,u=function(t){var e=t.toString(16);return e.length<2?"0"+e:e},d=function(t){var e=t.r,i=t.g,n=t.b,r=t.a,s=Math.max(e,i,n),o=s-Math.min(e,i,n),a=o?s===e?(i-n)/o:s===i?2+(n-e)/o:4+(e-i)/o:0;return{h:60*(a<0?a+6:a),s:s?o/s*100:0,v:s/255*100,a:r}},f=function(t){var e=t.h,i=t.s,n=t.v,r=t.a;e=e/360*6,i/=100,n/=100;var s=Math.floor(e),o=n*(1-i),a=n*(1-(e-s)*i),l=n*(1-(1-e+s)*i),h=s%6;return{r:255*[n,a,o,o,l,n][h],g:255*[l,n,n,a,o,o][h],b:255*[o,o,l,n,n,a][h],a:r}},g=function(t){return{h:a(t.h),s:o(t.s,0,100),l:o(t.l,0,100),a:o(t.a)}},p=function(t){return{h:s(t.h),s:s(t.s),l:s(t.l),a:s(t.a,3)}},v=function(t){return f((i=(e=t).s,{h:e.h,s:(i*=((n=e.l)<50?n:100-n)/100)>0?2*i/(n+i)*100:0,v:n+i,a:e.a}));var e,i,n},m=function(t){return{h:(e=d(t)).h,s:(r=(200-(i=e.s))*(n=e.v)/100)>0&&r<200?i*n/100/(r<=100?r:200-r)*100:0,l:r/2,a:e.a};var e,i,n,r},y=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,b=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,x=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,_=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,C={string:[[function(t){var e=c.exec(t);return e?(t=e[1]).length<=4?{r:parseInt(t[0]+t[0],16),g:parseInt(t[1]+t[1],16),b:parseInt(t[2]+t[2],16),a:4===t.length?s(parseInt(t[3]+t[3],16)/255,2):1}:6===t.length||8===t.length?{r:parseInt(t.substr(0,2),16),g:parseInt(t.substr(2,2),16),b:parseInt(t.substr(4,2),16),a:8===t.length?s(parseInt(t.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(t){var e=x.exec(t)||_.exec(t);return e?e[2]!==e[4]||e[4]!==e[6]?null:l({r:Number(e[1])/(e[2]?100/255:1),g:Number(e[3])/(e[4]?100/255:1),b:Number(e[5])/(e[6]?100/255:1),a:void 0===e[7]?1:Number(e[7])/(e[8]?100:1)}):null},"rgb"],[function(t){var e=y.exec(t)||b.exec(t);if(!e)return null;var i,r,s=g({h:(i=e[1],r=e[2],void 0===r&&(r="deg"),Number(i)*(n[r]||1)),s:Number(e[3]),l:Number(e[4]),a:void 0===e[5]?1:Number(e[5])/(e[6]?100:1)});return v(s)},"hsl"]],object:[[function(t){var e=t.r,i=t.g,n=t.b,s=t.a,o=void 0===s?1:s;return r(e)&&r(i)&&r(n)?l({r:Number(e),g:Number(i),b:Number(n),a:Number(o)}):null},"rgb"],[function(t){var e=t.h,i=t.s,n=t.l,s=t.a,o=void 0===s?1:s;if(!r(e)||!r(i)||!r(n))return null;var a=g({h:Number(e),s:Number(i),l:Number(n),a:Number(o)});return v(a)},"hsl"],[function(t){var e=t.h,i=t.s,n=t.v,s=t.a,l=void 0===s?1:s;if(!r(e)||!r(i)||!r(n))return null;var h=function(t){return{h:a(t.h),s:o(t.s,0,100),v:o(t.v,0,100),a:o(t.a)}}({h:Number(e),s:Number(i),v:Number(n),a:Number(l)});return f(h)},"hsv"]]},w=function(t,e){for(var i=0;i=.5},t.prototype.toHex=function(){return e=(t=h(this.rgba)).r,i=t.g,n=t.b,o=(r=t.a)<1?u(s(255*r)):"","#"+u(e)+u(i)+u(n)+o;var t,e,i,n,r,o},t.prototype.toRgb=function(){return h(this.rgba)},t.prototype.toRgbString=function(){return e=(t=h(this.rgba)).r,i=t.g,n=t.b,(r=t.a)<1?"rgba("+e+", "+i+", "+n+", "+r+")":"rgb("+e+", "+i+", "+n+")";var t,e,i,n,r},t.prototype.toHsl=function(){return p(m(this.rgba))},t.prototype.toHslString=function(){return e=(t=p(m(this.rgba))).h,i=t.s,n=t.l,(r=t.a)<1?"hsla("+e+", "+i+"%, "+n+"%, "+r+")":"hsl("+e+", "+i+"%, "+n+"%)";var t,e,i,n,r},t.prototype.toHsv=function(){return t=d(this.rgba),{h:s(t.h),s:s(t.s),v:s(t.v),a:s(t.a,3)};var t},t.prototype.invert=function(){return j({r:255-(t=this.rgba).r,g:255-t.g,b:255-t.b,a:t.a});var t},t.prototype.saturate=function(t){return void 0===t&&(t=.1),j(T(this.rgba,t))},t.prototype.desaturate=function(t){return void 0===t&&(t=.1),j(T(this.rgba,-t))},t.prototype.grayscale=function(){return j(T(this.rgba,-1))},t.prototype.lighten=function(t){return void 0===t&&(t=.1),j(E(this.rgba,t))},t.prototype.darken=function(t){return void 0===t&&(t=.1),j(E(this.rgba,-t))},t.prototype.rotate=function(t){return void 0===t&&(t=15),this.hue(this.hue()+t)},t.prototype.alpha=function(t){return"number"==typeof t?j({r:(e=this.rgba).r,g:e.g,b:e.b,a:t}):s(this.rgba.a,3);var e},t.prototype.hue=function(t){var e=m(this.rgba);return"number"==typeof t?j({h:t,s:e.s,l:e.l,a:e.a}):s(e.h)},t.prototype.isEqual=function(t){return this.toHex()===j(t).toHex()},t}(),j=function(t){return t instanceof k?t:new k(t)}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/321.9a9868e1.chunk.js.LICENSE.txt b/ydb/core/viewer/monitoring/static/js/321.9a9868e1.chunk.js.LICENSE.txt new file mode 100644 index 000000000000..53debc06f187 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/321.9a9868e1.chunk.js.LICENSE.txt @@ -0,0 +1,3 @@ +/*! Fabric.js Copyright 2008-2015, Printio (Juriy Zaytsev, Maxim Chernyak) */ + +/*! crc32.js (C) 2014-present SheetJS -- http://sheetjs.com */ diff --git a/ydb/core/viewer/monitoring/static/js/328.4a94f418.chunk.js b/ydb/core/viewer/monitoring/static/js/328.4a94f418.chunk.js new file mode 100644 index 000000000000..561a55889c81 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/328.4a94f418.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[328],{67585:(e,t,l)=>{l.d(t,{Z:()=>a});var n=l(68963);const a=e=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm1-9.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8 7.75a.75.75 0 0 1 .75.75V11a.75.75 0 0 1-1.5 0V8.5A.75.75 0 0 1 8 7.75Z",clipRule:"evenodd"}))},80518:(e,t,l)=>{l.d(t,{Z:()=>a});var n=l(68963);const a=e=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M13.5 8a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0ZM15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0ZM6.53 5.47a.75.75 0 0 0-1.06 1.06L6.94 8 5.47 9.47a.75.75 0 1 0 1.06 1.06L8 9.06l1.47 1.47a.75.75 0 1 0 1.06-1.06L9.06 8l1.47-1.47a.75.75 0 1 0-1.06-1.06L8 6.94 6.53 5.47Z",clipRule:"evenodd"}))},76506:(e,t,l)=>{l.d(t,{Z:()=>a});var n=l(68963);const a=e=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14ZM6.53 5.47a.75.75 0 0 0-1.06 1.06L6.94 8 5.47 9.47a.75.75 0 1 0 1.06 1.06L8 9.06l1.47 1.47a.75.75 0 1 0 1.06-1.06L9.06 8l1.47-1.47a.75.75 0 1 0-1.06-1.06L8 6.94 6.53 5.47Z",clipRule:"evenodd"}))},71586:(e,t,l)=>{l.d(t,{Z:()=>a});var n=l(68963);const a=e=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M5.836 2.244c.962-1.665 3.366-1.665 4.328 0l4.917 8.505c.964 1.666-.239 3.751-2.164 3.751H3.083c-1.925 0-3.128-2.085-2.164-3.751l4.917-8.505ZM8 5a.75.75 0 0 1 .75.75v2a.75.75 0 1 1-1.5 0v-2A.75.75 0 0 1 8 5Zm1 5.75a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",clipRule:"evenodd"}))},30328:(e,t,l)=>{l.r(t),l.d(t,{TopPanel:()=>I});var n=l(68963),a=l(77280),o=l(17176),r=l(91387),i=l(88776),s=l(39137),c=l(95216),d=l(77796);const m=n.createContext(null),u=()=>{const e=n.useContext(m);if(!e)throw new Error('Alert: `useAlertContext` hook is used out of "AlertContext"');return e},v=e=>{const{view:t}=u();return n.createElement(o.z,Object.assign({view:"filled"===t?"normal-contrast":void 0},e))};var w=l(36951);const p=18,g=(0,w.Ge)("alert"),h=e=>{let{layout:t,view:l,children:a}=e;return n.createElement(m.Provider,{value:{layout:t,view:l}},a)};var f=l(76506),E=l(80518),b=l(67585),Z=l(68010);const y=e=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm3.1-8.55a.75.75 0 1 0-1.2-.9L7.419 8.858 6.03 7.47a.75.75 0 0 0-1.06 1.06l2 2a.75.75 0 0 0 1.13-.08l3-4Z",clipRule:"evenodd"}));var x=l(96261),C=l(71586),A=l(93316);const k=e=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),n.createElement("path",{fill:"currentColor",d:"m14.61 6.914-7.632 8.08a1.614 1.614 0 0 1-2.69-1.66L5.5 10H2.677A1.677 1.677 0 0 1 1.12 7.7l2.323-5.807A2.216 2.216 0 0 1 5.5.5h4c.968 0 1.637.967 1.298 1.873L10 4.5h3.569a1.431 1.431 0 0 1 1.04 2.414Z"}));var N=l(3442);const z={danger:{filled:f.Z,outlined:E.Z},info:{filled:b.Z,outlined:Z.Z},success:{filled:y,outlined:x.Z},warning:{filled:C.Z,outlined:A.Z},utility:{filled:k,outlined:N.Z},normal:null};var L=l(10288);var R=l(54973);const M=JSON.parse('{"label_close":"Close"}'),O=JSON.parse('{"label_close":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c"}'),j=(0,R.e)({en:M,ru:O},"Alert"),B=e=>{const{theme:t="normal",view:l="filled",layout:m="vertical",message:u,className:v,corners:w,style:f,onClose:E,align:b,qa:Z}=e;return n.createElement(h,{layout:m,view:l},n.createElement(r.Z,{style:f,className:g({corners:w},(0,c.W)({py:4,px:5},v)),theme:t,view:l,qa:Z},n.createElement(d.k,{gap:"3",alignItems:b},"undefined"===typeof e.icon?n.createElement(B.Icon,{theme:t,view:l}):e.icon,n.createElement(d.k,{direction:"vertical"===m?"column":"row",gap:"5",grow:!0},n.createElement(d.k,{gap:"2",grow:!0,className:g("text-content")},n.createElement(d.k,{direction:"column",gap:"1",grow:!0,justifyContent:b},"string"===typeof e.title?n.createElement(B.Title,{text:e.title}):e.title,u)),Array.isArray(e.actions)?n.createElement(B.Actions,{items:e.actions}):e.actions),E&&n.createElement(o.z,{view:"flat",className:g("close-btn"),onClick:E,extraProps:{"aria-label":j("label_close")}},n.createElement(i.J,{data:a.Z,size:p,className:(0,s.V)({color:"secondary"})})))))};B.Icon=e=>{let{className:t,theme:l,view:a="filled",size:o=p}=e;const r=z[l];if(!r)return null;let c;return"success"===l?c="positive":"normal"!==l&&(c=l),n.createElement("div",{className:g("icon",(0,s.V)({color:c},t))},n.createElement(i.J,{data:r[a],size:o}))},B.Title=e=>{let{text:t,className:l}=e;return n.createElement(L.x,{variant:"subheader-2",className:g("title",l)},t)},B.Actions=e=>{let{items:t,children:l,className:a}=e;const{layout:o}=u();return n.createElement(d.k,{className:g("actions",{minContent:"horizontal"===o},a),direction:"row",gap:"3",wrap:!0,alignItems:"horizontal"===o?"center":"flex-start"},(null===t||void 0===t?void 0:t.map(((e,t)=>{let{handler:l,text:a}=e;return n.createElement(v,{key:t,onClick:l},a)})))||l)},B.Action=v;var _=l(5687),T=l(50528);l(5247);const S=e=>{let{topAlert:t}=e;const l=n.useRef(null),a=(e=>{const[t,l]=n.useState(0);return n.useEffect((()=>{if(e.current){const{current:t}=e;l(t.clientHeight)}}),[e]),t})(l),o=n.useCallback((e=>{const t=document.getElementsByClassName("g-root").item(0);null===t||void 0===t||t.style.setProperty("--gn-aside-top-panel-height",e+"px")}),[]),r=n.useCallback((()=>{var e;l.current&&o((null===(e=l.current)||void 0===e?void 0:e.clientHeight)||0)}),[l,o]);return n.useLayoutEffect((()=>{const e=(0,_.d)(r,200,{leading:!0});return t&&(window.addEventListener("resize",e),e()),()=>{window.removeEventListener("resize",e),o(0)}}),[t,a,l,r,o]),{topRef:l,updateTopSize:r}},I=e=>{let{topAlert:t}=e;const{topRef:l,updateTopSize:a}=S({topAlert:t}),[o,r]=n.useState(!0),i=n.useCallback((()=>{var e;r(!1),null===(e=null===t||void 0===t?void 0:t.onCloseTopAlert)||void 0===e||e.call(t)}),[t]);return n.useEffect((()=>{o||a()}),[o,a]),t&&t.message?n.createElement("div",{ref:l,className:(0,T.b)("pane-top",{opened:o})},o&&n.createElement(n.Fragment,null,n.createElement(B,{className:(0,T.b)("pane-top-alert",{centered:t.centered,dense:t.dense}),corners:"square",layout:"horizontal",theme:t.theme||"warning",icon:t.icon,title:t.title,message:t.message,actions:t.actions,onClose:t.closable?i:void 0}),n.createElement("div",{className:(0,T.b)("pane-top-divider")}))):null}},91387:(e,t,l)=>{l.d(t,{Z:()=>s});var n=l(95097),a=l(68963),o=l(68512),r=l(28989);const i=(0,l(36951).Ge)("card"),s=a.forwardRef((function(e,t){const{type:l="container",theme:s,view:c,size:d="m",children:m,className:u,onClick:v,disabled:w,selected:p}=e,g=(0,n._T)(e,["type","theme","view","size","children","className","onClick","disabled","selected"]),h="selection"===l,f="container"===l,E=("action"===l||h)&&Boolean(v)&&!(w||p),b=f?"normal":void 0,Z=f||h?"outlined":void 0,y=E?v:void 0,{onKeyDown:x}=(0,o.b)(v);return a.createElement(r.x,Object.assign({ref:t,role:E?"button":void 0,className:i({theme:s||b,view:c||Z,type:l,selected:p,size:d,disabled:w,clickable:E},u),onClick:y,onKeyDown:E?x:void 0,tabIndex:E?0:void 0},g),m)}))}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/328.f24db8bf.chunk.js b/ydb/core/viewer/monitoring/static/js/328.f24db8bf.chunk.js deleted file mode 100644 index 5b6725dbd319..000000000000 --- a/ydb/core/viewer/monitoring/static/js/328.f24db8bf.chunk.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[328],{30328:(e,t,l)=>{l.r(t),l.d(t,{TopPanel:()=>P});var n=l(68963),a=l(77280),r=l(17176),o=l(91387),s=l(88776),i=l(39137),c=l(95216),u=l(77796);const d=n.createContext(null),m=()=>{const e=n.useContext(d);if(!e)throw new Error('Alert: `useAlertContext` hook is used out of "AlertContext"');return e},v=e=>{const{view:t}=m();return n.createElement(r.z,Object.assign({view:"filled"===t?"normal-contrast":void 0},e))};var p=l(36951);const g=18,w=(0,p.Ge)("alert"),f=e=>{let{layout:t,view:l,children:a}=e;return n.createElement(d.Provider,{value:{layout:t,view:l}},a)};var h=l(76506),E=l(80518),y=l(67585),b=l(68010);const C=e=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),n.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm3.1-8.55a.75.75 0 1 0-1.2-.9L7.419 8.858 6.03 7.47a.75.75 0 0 0-1.06 1.06l2 2a.75.75 0 0 0 1.13-.08l3-4Z",clipRule:"evenodd"}));var x=l(96261),N=l(71586),k=l(93316);const A=e=>n.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),n.createElement("path",{fill:"currentColor",d:"m14.61 6.914-7.632 8.08a1.614 1.614 0 0 1-2.69-1.66L5.5 10H2.677A1.677 1.677 0 0 1 1.12 7.7l2.323-5.807A2.216 2.216 0 0 1 5.5.5h4c.968 0 1.637.967 1.298 1.873L10 4.5h3.569a1.431 1.431 0 0 1 1.04 2.414Z"}));var Z=l(3442);const z={danger:{filled:h.Z,outlined:E.Z},info:{filled:y.Z,outlined:b.Z},success:{filled:C,outlined:x.Z},warning:{filled:N.Z,outlined:k.Z},utility:{filled:A,outlined:Z.Z},normal:null};var _=l(10288);var L=l(54973);const S=JSON.parse('{"label_close":"Close"}'),T=JSON.parse('{"label_close":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c"}'),O=(0,L.e)({en:S,ru:T},"Alert"),R=e=>{const{theme:t="normal",view:l="filled",layout:d="vertical",message:m,className:v,corners:p,style:h,onClose:E,align:y,qa:b}=e;return n.createElement(f,{layout:d,view:l},n.createElement(o.Z,{style:h,className:w({corners:p},(0,c.W)({py:4,px:5},v)),theme:t,view:l,qa:b},n.createElement(u.k,{gap:"3",alignItems:y},"undefined"===typeof e.icon?n.createElement(R.Icon,{theme:t,view:l}):e.icon,n.createElement(u.k,{direction:"vertical"===d?"column":"row",gap:"5",grow:!0},n.createElement(u.k,{gap:"2",grow:!0,className:w("text-content")},n.createElement(u.k,{direction:"column",gap:"1",grow:!0,justifyContent:y},"string"===typeof e.title?n.createElement(R.Title,{text:e.title}):e.title,m)),Array.isArray(e.actions)?n.createElement(R.Actions,{items:e.actions}):e.actions),E&&n.createElement(r.z,{view:"flat",className:w("close-btn"),onClick:E,extraProps:{"aria-label":O("label_close")}},n.createElement(s.J,{data:a.Z,size:g,className:(0,i.V)({color:"secondary"})})))))};R.Icon=e=>{let{className:t,theme:l,view:a="filled",size:r=g}=e;const o=z[l];if(!o)return null;let c;return"success"===l?c="positive":"normal"!==l&&(c=l),n.createElement("div",{className:w("icon",(0,i.V)({color:c},t))},n.createElement(s.J,{data:o[a],size:r}))},R.Title=e=>{let{text:t,className:l}=e;return n.createElement(_.x,{variant:"subheader-2",className:w("title",l)},t)},R.Actions=e=>{let{items:t,children:l,className:a}=e;const{layout:r}=m();return n.createElement(u.k,{className:w("actions",{minContent:"horizontal"===r},a),direction:"row",gap:"3",wrap:!0,alignItems:"horizontal"===r?"center":"flex-start"},(null===t||void 0===t?void 0:t.map(((e,t)=>{let{handler:l,text:a}=e;return n.createElement(v,{key:t,onClick:l},a)})))||l)},R.Action=v;var j=l(5687),I=l(50528);l(5247);const J=e=>{let{topAlert:t}=e;const l=n.useRef(null),a=(e=>{const[t,l]=n.useState(0);return n.useEffect((()=>{if(e.current){const{current:t}=e;l(t.clientHeight)}}),[e]),t})(l),r=n.useCallback((e=>{const t=document.getElementsByClassName("g-root").item(0);null===t||void 0===t||t.style.setProperty("--gn-aside-top-panel-height",e+"px")}),[]),o=n.useCallback((()=>{var e;l.current&&r((null===(e=l.current)||void 0===e?void 0:e.clientHeight)||0)}),[l,r]);return n.useLayoutEffect((()=>{const e=(0,j.d)(o,200,{leading:!0});return t&&(window.addEventListener("resize",e),e()),()=>{window.removeEventListener("resize",e),r(0)}}),[t,a,l,o,r]),{topRef:l,updateTopSize:o}},P=e=>{let{topAlert:t}=e;const{topRef:l,updateTopSize:a}=J({topAlert:t}),[r,o]=n.useState(!0),s=n.useCallback((()=>{var e;o(!1),null===(e=null===t||void 0===t?void 0:t.onCloseTopAlert)||void 0===e||e.call(t)}),[t]);return n.useEffect((()=>{r||a()}),[r,a]),t&&t.message?n.createElement("div",{ref:l,className:(0,I.b)("pane-top",{opened:r})},r&&n.createElement(n.Fragment,null,n.createElement(R,{className:(0,I.b)("pane-top-alert",{centered:t.centered,dense:t.dense}),corners:"square",layout:"horizontal",theme:t.theme||"warning",icon:t.icon,title:t.title,message:t.message,actions:t.actions,onClose:t.closable?s:void 0}),n.createElement("div",{className:(0,I.b)("pane-top-divider")}))):null}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/496.5964f8aa.chunk.js b/ydb/core/viewer/monitoring/static/js/496.5964f8aa.chunk.js new file mode 100644 index 000000000000..09a33689e1a4 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/496.5964f8aa.chunk.js @@ -0,0 +1 @@ +(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[496],{84317:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l});var a=n(68963);const l=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 1.5a6.501 6.501 0 0 1 6.445 5.649.75.75 0 1 1-1.488.194A5.001 5.001 0 0 0 4.43 4.5h1.32a.75.75 0 0 1 0 1.5h-3A.75.75 0 0 1 2 5.25v-3a.75.75 0 1 1 1.5 0v1.06A6.48 6.48 0 0 1 8 1.5Zm5.25 13a.75.75 0 0 0 .75-.75v-3a.75.75 0 0 0-.75-.75h-3a.75.75 0 1 0 0 1.5h1.32a5.001 5.001 0 0 1-8.528-2.843.75.75 0 1 0-1.487.194 6.501 6.501 0 0 0 10.945 3.84v1.059c0 .414.336.75.75.75Z",clipRule:"evenodd"}))},57225:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l});var a=n(68963);const l=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0Zm-6 2.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8.75 5a.75.75 0 0 0-1.5 0v2.5a.75.75 0 0 0 1.5 0V5Z",clipRule:"evenodd"}))},67585:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l});var a=n(68963);const l=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm1-9.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8 7.75a.75.75 0 0 1 .75.75V11a.75.75 0 0 1-1.5 0V8.5A.75.75 0 0 1 8 7.75Z",clipRule:"evenodd"}))},71549:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l});var a=n(68963);const l=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"m3.003 4.702 4.22-2.025a1.796 1.796 0 0 1 1.554 0l4.22 2.025a.886.886 0 0 1 .503.8V6a8.55 8.55 0 0 1-3.941 7.201l-.986.631a1.063 1.063 0 0 1-1.146 0l-.986-.63A8.55 8.55 0 0 1 2.5 6v-.498c0-.341.196-.652.503-.8Zm3.57-3.377L2.354 3.35A2.387 2.387 0 0 0 1 5.502V6a10.05 10.05 0 0 0 4.632 8.465l.986.63a2.563 2.563 0 0 0 2.764 0l.986-.63A10.05 10.05 0 0 0 15 6v-.498c0-.918-.526-1.755-1.354-2.152l-4.22-2.025a3.296 3.296 0 0 0-2.852 0ZM9.5 7a1.5 1.5 0 0 1-.75 1.3v1.95a.75.75 0 0 1-1.5 0V8.3A1.5 1.5 0 1 1 9.5 7Z",clipRule:"evenodd"}))},71586:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l});var a=n(68963);const l=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M5.836 2.244c.962-1.665 3.366-1.665 4.328 0l4.917 8.505c.964 1.666-.239 3.751-2.164 3.751H3.083c-1.925 0-3.128-2.085-2.164-3.751l4.917-8.505ZM8 5a.75.75 0 0 1 .75.75v2a.75.75 0 1 1-1.5 0v-2A.75.75 0 0 1 8 5Zm1 5.75a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",clipRule:"evenodd"}))},2639:(e,t,n)=>{"use strict";n.d(t,{B:()=>l,M:()=>s});var a=n(68963);function l(e,t){return e.map((e=>{var n;let a;e.sub&&(a=l(e.sub,t));const s=null!==(n=t[e.name])&&void 0!==n?n:e.width;return Object.assign(Object.assign({},e),{width:s,sub:a})}))}function s(e){let{saveSizes:t,getSizes:n}=e;const[l,s]=a.useState((()=>n()));return[l,a.useCallback(((e,n)=>{s((a=>{const l=Object.assign(Object.assign({},a),{[e]:n});return t(l),l}))}),[t])]}},48897:(e,t,n)=>{"use strict";n.d(t,{X:()=>o});var a=n(68963),l=n(33180),s=n(24288);function c(e){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 17 17",width:"16",height:"16",fill:"currentColor"},e),a.createElement("path",{d:"M4 7h9v3H4z"}))}function r(e){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 12 10",width:"16",height:"16",fill:"currentColor"},e),a.createElement("path",{d:"M.49 5.385l1.644-1.644 4.385 4.385L4.874 9.77.49 5.385zm4.384 1.096L10.356 1 12 2.644 6.519 8.126 4.874 6.48v.001z"}))}const i=(0,n(36951).Ge)("checkbox"),o=a.forwardRef((function(e,t){const{size:n="m",indeterminate:o,disabled:d=!1,content:m,children:u,title:v,style:h,className:f,qa:w}=e,{checked:p,inputProps:g}=(0,l.O)(e),b=m||u,E=a.createElement("span",{className:i("indicator")},a.createElement("span",{className:i("icon"),"aria-hidden":!0},o?a.createElement(c,{className:i("icon-svg",{type:"dash"})}):a.createElement(r,{className:i("icon-svg",{type:"tick"})})),a.createElement("input",Object.assign({},g,{className:i("control")})),a.createElement("span",{className:i("outline")}));return a.createElement(s.J,{ref:t,title:v,style:h,size:n,disabled:d,className:i({size:n,disabled:d,indeterminate:o,checked:p},f),qa:w,control:E},b)}))},84893:(e,t,n)=>{"use strict";n.d(t,{E:()=>m});var a=n(68963);const l=(0,n(36951).Ge)("progress");function s(e){const{text:t,offset:n=0}=e;return t?a.createElement("div",{className:l("text-inner"),style:{transform:"translateX(calc(var(--g-flow-direction) * ".concat(-n,"%))")}},t):null}function c(e){let{item:t}=e;const{value:n,color:s,className:c,theme:r,title:i,content:o,loading:d}=t,m={loading:d};return"undefined"===typeof s&&(m.theme=r||"default"),Number.isFinite(n)?a.createElement("div",{className:l("item",m,c),style:{width:"".concat(n,"%"),backgroundColor:s},title:i},o):null}function r(e){return e<100?e-100:0}function i(e){const{theme:t,colorStops:n,colorStopsValue:a,value:l}=e;if(n){const e=n.find(((e,t)=>{const s="number"===typeof a?a:l,c=t>1?n[t-1].stop:0,r=t=c&&s<=r}));return e?e.theme:t}return t}function o(e){const{stack:t,stackClassName:n,value:i,text:o}=e,d=r(i||function(e){return e.reduce(((e,t)=>{let{value:n}=t;return e+n}),0)}(t));return a.createElement("div",{className:l("stack",n),style:{transform:"translateX(calc(var(--g-flow-direction) * ".concat(d,"%))")}},a.createElement("div",{className:l("item"),style:{width:"".concat(-d,"%")}}),t.map(((e,t)=>a.createElement(c,{key:t,item:e}))),a.createElement(s,{offset:d,text:o}))}function d(e){const{value:t,loading:n,text:c}=e,o=r(t);return Number.isFinite(t)?a.createElement("div",{className:l("item",{theme:i(e),loading:n}),style:{transform:"translateX(calc(var(--g-flow-direction) * ".concat(o,"%))")}},a.createElement(s,{offset:o,text:c})):null}const m=a.forwardRef((function(e,t){const{text:n="",theme:s="default",size:c="m",loading:r=!1,className:i,qa:m}=e,u=Object.assign(Object.assign({},e),{text:n,theme:s,size:c,loading:r});return a.createElement("div",{ref:t,className:l({size:c},i),"data-qa":m},a.createElement("div",{className:l("text")},n),function(e){return void 0!==e.stack}(u)?a.createElement(o,Object.assign({},u)):a.createElement(d,Object.assign({},u)))}))},56711:(e,t,n)=>{"use strict";n.d(t,{O:()=>s});var a=n(68963);const l=(0,n(36951).Ge)("skeleton");function s(e){let{className:t,style:n,qa:s}=e;return a.createElement("div",{className:l(null,t),style:n,"data-qa":s})}},27320:(e,t,n)=>{"use strict";n.d(t,{u:()=>d});var a=n(68963),l=n(48027),s=n(79004),c=n(44920),r=n(10288);const i=(0,n(36951).Ge)("tooltip"),o=["bottom","top"],d=e=>{const{children:t,content:n,disabled:d,placement:m=o,qa:u,id:v,className:h,style:f,disablePortal:w,contentClassName:p,openDelay:g=1e3,closeDelay:b}=e,[E,x]=a.useState(null),N=(0,s.p)(E,{openDelay:g,closeDelay:b,preventTriggerOnFocus:!0}),y=a.Children.only(t),j=y.ref,k=(0,l.c)(x,j);return a.createElement(a.Fragment,null,a.cloneElement(y,{ref:k}),E?a.createElement(c.G,{id:v,role:"tooltip",className:i(null,h),style:f,open:N&&!d,placement:m,anchorRef:{current:E},disablePortal:w,disableEscapeKeyDown:!0,disableOutsideClick:!0,disableLayer:!0,qa:u},a.createElement("div",{className:i("content",p)},a.createElement(r.x,{variant:"body-short",color:"complementary"},n))):null)}},56829:(e,t,n)=>{"use strict";n.d(t,{F:()=>l});var a=n(40797);function l(){return(0,a.T)().theme}},38626:e=>{e.exports=function(e,t,n,a){for(var l=-1,s=null==e?0:e.length;++l{var a=n(46067);e.exports=function(e,t,n,l){return a(e,(function(e,a,s){t(l,e,n(e),s)})),l}},81670:(e,t,n)=>{var a=n(38626),l=n(30277),s=n(67173),c=n(46296);e.exports=function(e,t){return function(n,r){var i=c(n)?a:l,o=t?t():{};return i(n,e,s(r,2),o)}}},46754:(e,t,n)=>{var a=n(69519),l=n(81670),s=Object.prototype.hasOwnProperty,c=l((function(e,t,n){s.call(e,n)?e[n].push(t):a(e,n,[t])}));e.exports=c},40067:(e,t,n)=>{"use strict";n.d(t,{L:()=>o});var a=n(75859),l=n(68963),s=n(30044),c=n(99879);const r="--ydb-tree-view-level",i=(0,c.G)("ydb-tree-view");function o(e){let{children:t,name:n,title:c,icon:o,collapsed:d=!0,active:m=!1,onClick:u,onArrowClick:v,hasArrow:h=!1,actions:f,additionalNodeElements:w,level:p}=e;const g=l.useCallback((e=>{if(!u)return;e.nativeEvent.composedPath().some((e=>e instanceof HTMLElement&&("BUTTON"===e.nodeName&&!e.hasAttribute("disabled")||e.hasAttribute("tabindex")&&e.tabIndex>-1)))||u()}),[u]),b=v||u;let E="tree-view_arrow",x="tree-view_children";return d&&(E+=" tree-view_arrow-collapsed",x+=" tree-view_children-collapsed"),(0,a.jsx)("div",{className:i(),style:{[r]:p},children:(0,a.jsxs)("div",{className:"tree-view",children:[(0,a.jsxs)("div",{className:"".concat("tree-view_item"," ").concat(i("item",{active:m})),onClick:g,children:[(0,a.jsx)("button",{type:"button",className:"".concat(E," ").concat(i("arrow",{collapsed:d,hidden:!h})),disabled:!b,onClick:b}),(0,a.jsxs)("div",{className:i("content"),children:[o&&(0,a.jsx)("div",{className:i("icon"),children:o}),(0,a.jsx)("div",{className:i("text"),title:c,children:n}),f&&f.length>0&&(0,a.jsxs)("div",{className:i("actions"),children:[w,(0,a.jsx)(s.h,{defaultSwitcherProps:{view:"flat-secondary",size:"s",pin:"brick-brick"},items:f})]})]})]}),(0,a.jsx)("div",{className:"".concat(x," ").concat(i("container",{collapsed:d})),children:d?null:t})]})})}},99879:(e,t,n)=>{"use strict";n.d(t,{G:()=>a});const a=(0,n(5247).withNaming)({e:"__",m:"_"})}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/5246.224ba018.chunk.js b/ydb/core/viewer/monitoring/static/js/5246.224ba018.chunk.js new file mode 100644 index 000000000000..19c7987771fd --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/5246.224ba018.chunk.js @@ -0,0 +1 @@ +(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[5246],{94790:(e,t,s)=>{"use strict";s.d(t,{f:()=>l});var a=s(68963),r=s(44920),n=s(75859);const l=e=>{let{children:t,content:s,className:l,hasArrow:i=!0,placement:o=["top","bottom"],...c}=e;const[d,p]=a.useState(!1),u=a.useRef(null);return(0,n.jsxs)(a.Fragment,{children:[(0,n.jsx)(r.G,{anchorRef:u,open:d,placement:o,hasArrow:i,...c,children:s}),(0,n.jsx)("span",{className:l,ref:u,onMouseEnter:()=>{p(!0)},onMouseLeave:()=>{p(!1)},children:t})]})}},79023:(e,t,s)=>{"use strict";s.d(t,{u:()=>b});var a,r,n,l,i,o,c,d,p,u,h,m=s(88776),v=s(24362),g=s(68963);function f(){return f=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{image:t,title:s,description:a,actions:r,size:n="m",position:l="center"}=e;return(0,x.jsx)("div",{className:y({size:n}),children:(0,x.jsxs)("div",{className:y("wrapper",{size:n,position:l}),children:[(0,x.jsx)("div",{className:y("image"),children:t||(0,x.jsx)(m.J,{data:j,width:z[n],height:z[n]})}),(0,x.jsx)("div",{className:y("title",{size:n}),children:s}),(0,x.jsx)("div",{className:y("description"),children:a}),(0,x.jsx)("div",{className:y("actions"),children:r})]})})}},82073:(e,t,s)=>{"use strict";s.d(t,{J:()=>i});var a=s(79023),r=s(56350),n=s(68746),l=s(75859);const i=e=>{let{title:t,description:s,...i}=e;return(0,l.jsx)(a.u,{image:(0,l.jsx)(r.Q,{name:"403"}),title:t||(0,n.Z)("403.title"),description:s||(0,n.Z)("403.description"),...i})}},86969:(e,t,s)=>{"use strict";s.d(t,{J:()=>a.J});var a=s(82073)},8747:(e,t,s)=>{"use strict";s.d(t,{V:()=>n});var a=s(68746),r=s(75859);const n=e=>{let{error:t,className:s,defaultMessage:n=(0,a.Z)("responseError.defaultMessage")}=e,l="";return t&&"string"===typeof t&&(l=t),t&&"object"===typeof t&&("data"in t&&"string"===typeof t.data?l=t.data:"statusText"in t&&"string"===typeof t.statusText?l=t.statusText:"message"in t&&"string"===typeof t.message&&(l=t.message)),(0,r.jsx)("div",{className:"error ".concat(s),children:l||n})}},26688:(e,t,s)=>{"use strict";s.d(t,{V:()=>a.V});var a=s(8747)},68746:(e,t,s)=>{"use strict";s.d(t,{Z:()=>l});var a=s(30817);const r=JSON.parse('{"403.title":"Access denied","403.description":"You don\u2019t have the necessary roles to view this page.","responseError.defaultMessage":"Response error"}'),n=JSON.parse('{"403.title":"\u0414\u043e\u0441\u0442\u0443\u043f \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d","403.description":"\u0423 \u0432\u0430\u0441 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u0430\u0432 \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b.","responseError.defaultMessage":"\u041e\u0448\u0438\u0431\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430"}'),l=(0,a.wZ)("ydb-errors-access-denied",{ru:n,en:r})},63104:(e,t,s)=>{"use strict";s.d(t,{Y:()=>u});var a=s(54665),r=s(24362),n=s(52317),l=s(94790),i=s(74170),o=s(42784),c=s(27506),d=s(75859);const p=(0,r.cn)("tablet"),u=e=>{var t;let{tablet:s={},tenantName:r}=e;const{TabletId:u,NodeId:h,Type:m}=s,v=null===(t=s.Overall)||void 0===t?void 0:t.toLowerCase(),g=u&&(0,a.ax)(a.ZP.tablet,{id:u},{nodeId:h,tenantName:r,type:m});return(0,d.jsx)(l.f,{className:p("wrapper"),content:(0,d.jsx)(c.Fb,{data:s,className:p("popup-content")}),children:(0,d.jsx)(i.h,{to:g,children:(0,d.jsx)(o.v,{className:p({status:v}),text:(0,n.qV)(s.Type)})})})}},55246:(e,t,s)=>{"use strict";s.r(t),s.d(t,{TabletsFilters:()=>Y});var a=s(68963),r=s(2982),n=s(2418),l=s(99090),i=s.n(l),o=s(49352),c=s(83570),d=s.n(c),p=s(52846),u=s(95408),h=s(86969),m=s(26688),v=s(63104),g=s(79061),f=s(99337),j=s(99399),x=s(36313),y=s(87555);const z=[],b=(0,x.P1)(((e,t)=>{var s;return null===(s=(0,j.em)(e,t))||void 0===s?void 0:s.TabletStateInfo}),((e,t,s)=>s),((e,t,s,a)=>a),((e,t,s)=>{let a=null!==e&&void 0!==e?e:z;var r,n;s.length>0&&(a=null===(r=a)||void 0===r?void 0:r.filter((e=>s.some((t=>e.Type===t)))));t.length>0&&(a=null===(n=a)||void 0===n?void 0:n.filter((e=>t.some((t=>e.State===t)))));return a.length>0?a:z}),{argsMemoize:x.PP,argsMemoizeOptions:{equalityCheck:y.wU}});var N=s(24362),w=s(52317),E=s(34051),k=s(83496),S=s(30817);const F=JSON.parse('{"page.title":"Tablets"}'),M=JSON.parse('{"page.title":"\u0422\u0430\u0431\u043b\u0435\u0442\u043a\u0438"}'),A=(0,S.wZ)("ydb-tablets-filters-page",{en:F,ru:M});var C=s(75859);const K=(0,N.cn)("tablets-filters"),O=u.z.preprocess((e=>Array.isArray(e)?e.filter(Boolean).sort():[]),u.z.string().array()),T=u.z.preprocess((e=>Array.isArray(e)?e.flatMap((e=>k.LV[e]||e)).filter(Boolean):[]),u.z.string().array()),I=220,P=300;function Y(){var e;const[t,s]=(0,p.useQueryParams)({nodeIds:p.ArrayParam,type:p.ArrayParam,state:p.ArrayParam,path:p.StringParam,clusterName:p.StringParam}),n=null!==(e=t.path)&&void 0!==e?e:void 0,l=(0,E.zL)();a.useEffect((()=>{l((0,g.J)("tablets",{tenantName:n}))}),[l,n]);const c=O.parse(t.nodeIds),{currentData:u,isFetching:x,error:y}=j.zg.useGetTabletsInfoQuery({nodes:c,path:n},{pollingInterval:w.t_}),{data:z}=f.W.useGetNodesListQuery({},{pollingInterval:w.t_}),N=x&&void 0===u,S=T.parse(t.state),F=k.uk.map((e=>({value:e,content:e}))),M=O.parse(t.type),I=Array.from(new Set(...[i()(null===u||void 0===u?void 0:u.TabletStateInfo,(e=>e.Type))])).map((e=>({value:String(e),content:e}))),P=(0,E.ix)((e=>b(e,{nodes:c,path:n},S,M))),Y=(e,t)=>(0,C.jsx)(v.Y,{tablet:P[e],tenantName:n},t),L=i()(z,(e=>({content:e.Id,value:String(e.Id),data:e.Host})));return(0,C.jsxs)(a.Fragment,{children:[(0,C.jsx)(o.ql,{children:(0,C.jsx)("title",{children:"".concat(A("page.title")," \u2014 ").concat(n||t.clusterName||w.DO)})}),N?(0,C.jsx)("div",{className:"loader",children:(0,C.jsx)(r.a,{size:"l"})}):y&&"object"===typeof y&&"status"in y&&403===y.status?(0,C.jsx)(h.J,{}):(0,C.jsxs)("div",{className:K(),children:[n?(0,C.jsxs)("div",{className:K("tenant"),children:[(0,C.jsx)("span",{className:K("label"),children:"Database: "})," ",n]}):null,(0,C.jsx)(D,{nodesForSelect:L,nodeFilter:c,onChangeNodes:e=>s({nodeIds:e}),states:F,stateFilter:S,onChangeStates:e=>s({state:e}),types:I,typeFilter:M,onChangeTypes:e=>s({type:e})}),y?(0,C.jsx)(m.V,{error:y}):null,P.length>0?(0,C.jsx)("div",{className:K("items"),children:(0,C.jsx)(d(),{itemRenderer:Y,length:P.length,type:"uniform"})}):!y&&(0,C.jsx)("div",{className:K("empty-message"),children:"no tablets"})]})]})}function D(e){let{nodesForSelect:t,nodeFilter:s,onChangeNodes:a,states:r,stateFilter:l,onChangeStates:i,types:o,typeFilter:c,onChangeTypes:d}=e;return(0,C.jsxs)("div",{className:K("filters"),children:[(0,C.jsx)("div",{className:K("filter-wrapper"),children:(0,C.jsx)(n.P,{multiple:!0,label:"Node ID",width:I,popupWidth:P,placeholder:"All",options:t,value:s,onUpdate:a,renderOption:e=>(0,C.jsxs)("div",{className:K("node"),children:[(0,C.jsx)("div",{children:e.content}),(0,C.jsx)("div",{className:K("node-meta"),title:e.data,children:e.data})]}),getOptionHeight:()=>40})}),(0,C.jsx)("div",{className:K("filter-wrapper"),children:(0,C.jsx)(n.P,{multiple:!0,label:"multiple",width:I,placeholder:"All",options:r,value:l,onUpdate:i})}),(0,C.jsx)("div",{className:K("filter-wrapper"),children:(0,C.jsx)(n.P,{multiple:!0,label:"Types",width:I,placeholder:"All",options:o,value:c,onUpdate:d})})]})}},83496:(e,t,s)=>{"use strict";s.d(t,{FW:()=>o,KR:()=>c,LV:()=>i,uk:()=>l});var a=s(75850),r=s(28164);const n={[r.g.Dead]:a.K.Red,[r.g.Created]:a.K.Yellow,[r.g.ResolveStateStorage]:a.K.Yellow,[r.g.Candidate]:a.K.Yellow,[r.g.BlockBlobStorage]:a.K.Yellow,[r.g.WriteZeroEntry]:a.K.Yellow,[r.g.Restored]:a.K.Yellow,[r.g.Discover]:a.K.Yellow,[r.g.Lock]:a.K.Yellow,[r.g.Stopped]:a.K.Yellow,[r.g.ResolveLeader]:a.K.Yellow,[r.g.RebuildGraph]:a.K.Yellow,[r.g.Deleted]:a.K.Green,[r.g.Active]:a.K.Green},l=Object.keys(r.g),i=Object.entries(n).reduce(((e,t)=>{let[s,a]=t;return e[a]?e[a].push(s):e[a]=[s],e}),{}),o=e=>{if(!e)return a.K.Grey;return t=e,Object.values(a.K).includes(t)?e:n[e];var t};function c(e){if(!e)return"unknown";switch(e){case r.g.Dead:return"danger";case r.g.Active:case r.g.Deleted:return"success";default:return"warning"}}},16484:(e,t,s)=>{var a=s(46067),r=s(75345);e.exports=function(e,t){var s=-1,n=r(e)?Array(e.length):[];return a(e,(function(e,a,r){n[++s]=t(e,a,r)})),n}},99090:(e,t,s)=>{var a=s(40341),r=s(67173),n=s(16484),l=s(46296);e.exports=function(e,t){return(l(e)?a:n)(e,r(t,3))}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/530.582a0d34.chunk.js b/ydb/core/viewer/monitoring/static/js/530.582a0d34.chunk.js new file mode 100644 index 000000000000..28343bc2e6c1 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/530.582a0d34.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[530],{21986:(e,t,n)=>{n.d(t,{J:()=>o});var i=n(68963),a=n(32257),s=n(68330),l=n(88776);const d=(0,n(31580).G)("help-popover"),r=16;function o(e){var t;return i.createElement(s.J,Object.assign({},e,{className:d(null,e.className)}),i.createElement("button",Object.assign({ref:e.buttonRef,type:"button"},e.buttonProps,{className:d("button",null===(t=e.buttonProps)||void 0===t?void 0:t.className)}),i.createElement(l.J,{data:a.Z,size:r})))}},31580:(e,t,n)=>{n.d(t,{G:()=>a});var i=n(5247);(0,i.withNaming)({e:"__",m:"_",v:"_"});const a=(0,i.withNaming)({n:"gc-",e:"__",m:"_",v:"_"})},84317:(e,t,n)=>{n.d(t,{Z:()=>a});var i=n(68963);const a=e=>i.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),i.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 1.5a6.501 6.501 0 0 1 6.445 5.649.75.75 0 1 1-1.488.194A5.001 5.001 0 0 0 4.43 4.5h1.32a.75.75 0 0 1 0 1.5h-3A.75.75 0 0 1 2 5.25v-3a.75.75 0 1 1 1.5 0v1.06A6.48 6.48 0 0 1 8 1.5Zm5.25 13a.75.75 0 0 0 .75-.75v-3a.75.75 0 0 0-.75-.75h-3a.75.75 0 1 0 0 1.5h1.32a5.001 5.001 0 0 1-8.528-2.843.75.75 0 1 0-1.487.194 6.501 6.501 0 0 0 10.945 3.84v1.059c0 .414.336.75.75.75Z",clipRule:"evenodd"}))},2639:(e,t,n)=>{n.d(t,{B:()=>a,M:()=>s});var i=n(68963);function a(e,t){return e.map((e=>{var n;let i;e.sub&&(i=a(e.sub,t));const s=null!==(n=t[e.name])&&void 0!==n?n:e.width;return Object.assign(Object.assign({},e),{width:s,sub:i})}))}function s(e){let{saveSizes:t,getSizes:n}=e;const[a,s]=i.useState((()=>n()));return[a,i.useCallback(((e,n)=>{s((i=>{const a=Object.assign(Object.assign({},i),{[e]:n});return t(a),a}))}),[t])]}},48857:(e,t,n)=>{n.d(t,{N:()=>Se});var i=n(68963),a=n(21645),s=n(17176),l=n(88776),d=n(20397);const r=e=>i.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),i.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10.5 6V5a2.5 2.5 0 0 0-5 0v1h5ZM4 5v1a3 3 0 0 0-3 3v3a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V9a3 3 0 0 0-3-3V5a4 4 0 0 0-8 0Zm6.5 2.5H12A1.5 1.5 0 0 1 13.5 9v3a1.5 1.5 0 0 1-1.5 1.5H4A1.5 1.5 0 0 1 2.5 12V9A1.5 1.5 0 0 1 4 7.5h6.5Zm-1.75 2a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0v-2Z",clipRule:"evenodd"}));var o=n(90966),c=n(89646),u=n(68512),m=n(10288),p=n(48027),I=n(38581),v=n(34505),b=n(24119),g=n(58414),f=n(95097),h=n(77796),y=n(36951);const S=(0,y.Ge)("list-container-view"),x=i.forwardRef((function(e,t){let{as:n="div",role:a="listbox",children:s,id:l,className:d,fixedHeight:r,extraProps:o,qa:c,style:u}=e;return i.createElement(h.k,Object.assign({qa:c,as:n,direction:"column",ref:t,grow:!0,tabIndex:-1,id:l,role:a,style:u,className:S({"fixed-height":r},d)},o),s)})),B=e=>null!==e&&"object"===typeof e&&"data"in e,E=(0,y.Ge)("list-recursive-renderer");function O(e){var t,{id:n,itemSchema:a,list:s}=e,l=(0,f._T)(e,["id","itemSchema","list"]);const d=l.children(n,s.structure.idToFlattenIndex[n]);if(B(a)&&a.children){const e=!s.state.expandedById||!(n in s.state.expandedById)||s.state.expandedById[n];return i.createElement("ul",{style:l.style,className:E(null,l.className),role:"group"},d,e&&Boolean(null===(t=s.structure.groupsState[n])||void 0===t?void 0:t.childrenIds)&&a.children.map(((e,t)=>i.createElement(O,Object.assign({list:s,id:s.structure.groupsState[n].childrenIds[t],itemSchema:e,key:t},l)))))}return d}function w(e){var{containerRef:t,renderItem:n,list:a}=e,s=(0,f._T)(e,["containerRef","renderItem","list"]);return i.createElement(x,Object.assign({ref:t},s),a.structure.items.map(((e,t)=>i.createElement(O,{key:t,itemSchema:e,id:a.structure.rootIds[t],list:a},n))))}const C=e=>{let{list:t,multiple:n}=e;return e=>{let{id:i}=e;t.state.disabledById[i]||(t.state.setActiveItemId(i),t.state.expandedById&&i in t.state.expandedById&&t.state.setExpanded?t.state.setExpanded((e=>Object.assign(Object.assign({},e),{[i]:!e[i]}))):t.state.setSelected((e=>Object.assign(Object.assign({},n?e:{}),{[i]:!n||!e[i]}))))}};var j=n(59926);const k=e=>{let{list:t,index:n,step:i,disabledItems:a={}}=e;const s=t.length;let l=(n+s)%s;for(let d=0;d{var n;if(document){const i=(t||document).querySelector("[".concat(N,'="').concat(e,'"]'));i&&(null===(n=i.scrollIntoView)||void 0===n||n.call(i,{block:"nearest"}))}};var F=n(46318),P=n(57542);const D=e=>i.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),i.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M13.03 10.53a.75.75 0 0 1-1.06 0L8 6.56l-3.97 3.97a.75.75 0 1 1-1.06-1.06l4.5-4.5a.75.75 0 0 1 1.06 0l4.5 4.5a.75.75 0 0 1 0 1.06Z",clipRule:"evenodd"}));var z=n(39137),T=n(95216);const L=(0,y.Ge)("list-item-view"),A=e=>{var{children:t,indentation:n=1,className:a}=e,s=(0,f._T)(e,["children","indentation","className"]);return i.createElement(h.k,Object.assign({width:16*n,className:L("slot",a)},s),t)},q=i.forwardRef((function(e,t){var{id:n,as:a,size:s="m",active:d,selected:r,disabled:o,activeOnHover:c,className:u,hasSelectionIcon:p=!0,indentation:I,startSlot:v,subtitle:b,endSlot:g,title:y,height:S,expanded:x,dragging:B,style:E,role:O="option",onClick:w}=e,C=(0,f._T)(e,["id","as","size","active","selected","disabled","activeOnHover","className","hasSelectionIcon","indentation","startSlot","subtitle","endSlot","title","height","expanded","dragging","style","role","onClick"]);const j=a||"div",k="boolean"===typeof x,_=o?void 0:w,q="boolean"===typeof c?c:Boolean(_);return i.createElement(h.k,Object.assign({[N]:n,role:O,"aria-selected":r,onClick:_,className:L({active:B||d,selected:r&&!p,activeOnHover:q,radius:s,dragging:B,clickable:Boolean(_)},(0,T.W)({px:2},u)),style:Object.assign({minHeight:null!==S&&void 0!==S?S:R[s][Number(Boolean(b))]},E),as:j,ref:t,alignItems:"center",gap:"4",justifyContent:"space-between"},C),i.createElement(h.k,{gap:"2",alignItems:"center",grow:!0},p&&i.createElement(A,null,r?i.createElement(l.J,{data:F.Z,size:16,className:(0,z.V)({color:"info"})}):null),(e=>e&&e>=1?i.createElement(A,{indentation:Math.floor(e)}):null)(I),k?i.createElement(l.J,{className:L("icon",(0,z.V)({color:o?"hint":void 0})),data:x?P.Z:D,size:16}):null,v,i.createElement("div",{className:L("main-content")},"string"===typeof y?i.createElement(m.x,{ellipsis:!0,color:o?"hint":void 0,variant:k?"subheader-1":void 0},y):y,"string"===typeof b?i.createElement(m.x,{ellipsis:!0,color:o?"hint":"secondary"},b):b)),g)})),M=(0,y.Ge)("tree-list"),V=e=>{let{qa:t,id:n,size:a="m",className:s,list:l,multiple:d,containerRef:r,renderItem:o,renderContainer:u=w,onItemClick:m,mapItemDataToProps:p}=e;const I=(0,c.u)(),v=null!==n&&void 0!==n?n:I,b=i.useRef(null),g=null!==r&&void 0!==r?r:b,f=i.useMemo((()=>{if(null===m)return;return(e,t)=>{const n={id:e.id,list:l};if(m)null===m||void 0===m||m(n,t);else{C({list:l,multiple:d})(n,t)}}}),[m,l,d]);(e=>{let{containerRef:t,onItemClick:n,enabled:a,list:s}=e;const l=i.useCallback((function(e){let n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];var i,a;"number"===typeof e&&s.structure.visibleFlattenIds[e]&&(n&&_(s.structure.visibleFlattenIds[e],null===t||void 0===t?void 0:t.current),null===(a=(i=s.state).setActiveItemId)||void 0===a||a.call(i,s.structure.visibleFlattenIds[e]))}),[s.structure.visibleFlattenIds,s.state,t]),d=i.useCallback((function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;e.preventDefault();const i=s.structure.visibleFlattenIds.findIndex((e=>e===s.state.activeItemId)),a=k({list:s.structure.visibleFlattenIds,index:(i>-1?i:n)+t,step:Math.sign(t),disabledItems:s.state.disabledById});l(a)}),[l,s.state.activeItemId,s.state.disabledById,s.structure.visibleFlattenIds]);i.useLayoutEffect((()=>{const e=null===t||void 0===t?void 0:t.current;if(a||!e)return;const i=e=>{switch(e.key){case j.V.ARROW_DOWN:d(e,1,-1);break;case j.V.ARROW_UP:d(e,-1);break;case j.V.SPACEBAR:case j.V.ENTER:s.state.activeItemId&&!s.state.disabledById[s.state.activeItemId]&&(e.preventDefault(),null===n||void 0===n||n({id:s.state.activeItemId}))}};return e.addEventListener("keydown",i),()=>{e.removeEventListener("keydown",i)}}),[t,a,d,s.state.activeItemId,s.state.disabledById,n])})({containerRef:g,onItemClick:f,list:l});return u({qa:t,id:"list-".concat(v),size:a,containerRef:g,className:M(null,s),list:l,renderItem:(e,n,s)=>{const r=(e=>{let{qa:t,list:n,onItemClick:i,mapItemDataToProps:a,size:s="m",multiple:l=!1,id:d}=e;var r;const o=Object.assign(Object.assign(Object.assign({},n.structure.itemsState[d]),n.structure.groupsState[d]),{isLastItem:d===n.structure.visibleFlattenIds[n.structure.visibleFlattenIds.length-1]});let c;n.state.expandedById&&d in n.state.expandedById&&(c=n.state.expandedById[d]);const u=Object.assign({id:d,size:s,expanded:c,active:d===n.state.activeItemId,indentation:o.indentation,disabled:Boolean(null===(r=n.state.disabledById)||void 0===r?void 0:r[d]),selected:Boolean(n.state.selectedById[d]),hasSelectionIcon:Boolean(l)&&!o.childrenIds,onClick:i?e=>i({id:d},e):void 0},a(n.structure.itemsById[d]));return t&&(u.qa=((e,t)=>"".concat(e,"-").concat(t))(t,d)),{data:n.structure.itemsById[d],props:u,context:o}})({qa:t,id:e,size:a,multiple:d,mapItemDataToProps:p,onItemClick:f,list:l});return o?o({data:r.data,props:r.props,context:r.context,index:n,renderContainerProps:s,list:l}):i.createElement(q,Object.assign({},r.props,s))}})};var Z=n(79805);const J=e=>{let{item:t,groupedId:n,getItemId:i}=e,a=n;return"function"===typeof i?a=i(B(t)?t.data:t):t&&"object"===typeof t&&"id"in t&&t.id&&(a=t.id),a},U=(e,t)=>t?"".concat(t).concat("-").concat(e):"".concat(e),W=e=>e.split("-");function G(e){let{items:t,expandedById:n,getItemId:a}=e;const s=i.useMemo((()=>function(e){let{items:t,getItemId:n,expandedById:i={}}=e;const a=[],s=(e,t,l,d)=>{const r=U(l,d),o=J({groupedId:r,item:t,getItemId:n});return d||a.push(o),e.push(o),B(t)&&t.children&&(o in i&&!i[o]||e.push(...t.children.reduce(((e,t,n)=>s(e,t,n,o)),[]))),e},l=t.reduce(((e,t,n)=>s(e,t,n)),[]),d={};for(const[r,o]of l.entries())d[o]=r;return{rootIds:a,visibleFlattenIds:l,idToFlattenIndex:d}}({items:t,expandedById:n,getItemId:a})),[t,n,a]);return s}function H(e){let{items:t,defaultExpandedState:n="expanded",getItemId:i}=e;const a={itemsById:{},groupsState:{},itemsState:{},initialState:{disabledById:{},selectedById:{},expandedById:{}}},s=e=>{let{item:t,index:l,parentGroupedId:d,parentId:r}=e;const o=U(l,d),c=J({groupedId:o,item:t,getItemId:i});r&&a.groupsState[r].childrenIds.push(c),a.itemsById[c]=t.data,a.itemsState[c]||(a.itemsState[c]={indentation:0}),"undefined"!==typeof r&&(a.itemsState[c].parentId=r),"undefined"!==typeof t.selected&&(a.initialState.selectedById[c]=t.selected),"undefined"!==typeof t.disabled&&(a.initialState.disabledById[c]=t.disabled),o&&(a.itemsState[c].indentation=W(o).length-1),t.children&&(a.groupsState[c]={childrenIds:[]},a.initialState.expandedById&&("undefined"===typeof t.expanded?a.initialState.expandedById[c]="expanded"===n:a.initialState.expandedById[c]=t.expanded),t.children.forEach(((e,t)=>{s({item:e,index:t,parentGroupedId:o,parentId:c})})))};return t.forEach(((e,t)=>B(e)?s({item:e,index:t}):(e=>{let{item:t,index:n}=e;const s=J({groupedId:String(n),item:t,getItemId:i});a.itemsById[s]=t,a.itemsState[s]||(a.itemsState[s]={indentation:0}),t&&"object"===typeof t&&("selected"in t&&"boolean"===typeof t.selected&&(a.initialState.selectedById[s]=t.selected),"disabled"in t&&"boolean"===typeof t.disabled&&(a.initialState.disabledById[s]=t.disabled))})({item:e,index:t}))),a}const K=e=>{let{items:t,getItemId:n,defaultExpandedState:a="expanded",withExpandedState:s=!0,initialState:l,controlledState:d}=e;const{itemsById:r,groupsState:o,itemsState:c,initialState:u}=function(e){let{items:t,getItemId:n,defaultExpandedState:a}=e;const s=i.useRef(n).current;return i.useMemo((()=>H({items:t,getItemId:s,defaultExpandedState:a})),[s,a,t])}({items:t,getItemId:n,defaultExpandedState:a}),m=(e=>{let{initialState:t,withExpandedState:n}=e;const a=i.useRef(t),s=a.current!==t;a.current=t;const[l,d]=i.useState((()=>{var e;return null!==(e=null===t||void 0===t?void 0:t.disabledById)&&void 0!==e?e:{}})),[r,o]=i.useState((()=>{var e;return null!==(e=null===t||void 0===t?void 0:t.selectedById)&&void 0!==e?e:{}})),[c,u]=i.useState((()=>{var e;return null!==(e=null===t||void 0===t?void 0:t.expandedById)&&void 0!==e?e:{}})),[m,p]=i.useState((()=>null===t||void 0===t?void 0:t.activeItemId));s&&((null===t||void 0===t?void 0:t.disabledById)&&d((e=>Object.assign(Object.assign({},t.disabledById),e))),(null===t||void 0===t?void 0:t.selectedById)&&o((e=>Object.assign(Object.assign({},t.selectedById),e))),(null===t||void 0===t?void 0:t.expandedById)&&u((e=>Object.assign(Object.assign({},t.expandedById),e))),p((e=>null!==e&&void 0!==e?e:null===t||void 0===t?void 0:t.activeItemId)));const I={disabledById:l,selectedById:r,activeItemId:m,setDisabled:d,setSelected:o,setActiveItemId:p};return n&&(I.expandedById=c,I.setExpanded=u),I})({initialState:i.useMemo((()=>({expandedById:Object.assign(Object.assign({},null===l||void 0===l?void 0:l.expandedById),u.expandedById),selectedById:Object.assign(Object.assign({},null===l||void 0===l?void 0:l.selectedById),u.selectedById),disabledById:Object.assign(Object.assign({},null===l||void 0===l?void 0:l.disabledById),u.disabledById)})),[u.disabledById,u.expandedById,u.selectedById,null===l||void 0===l?void 0:l.disabledById,null===l||void 0===l?void 0:l.expandedById,null===l||void 0===l?void 0:l.selectedById]),withExpandedState:s}),{visibleFlattenIds:p,idToFlattenIndex:I,rootIds:v}=G({items:t,expandedById:m.expandedById,getItemId:n});return{state:i.useMemo((()=>d?Object.assign(Object.assign({},m),d):m),[d,m]),structure:{rootIds:v,items:t,visibleFlattenIds:p,idToFlattenIndex:I,itemsById:r,groupsState:o,itemsState:c}}},X=e=>{let{defaultValue:t=[],value:n,onUpdate:a}=e;const[s,l]=i.useState(t),d=null!==n&&void 0!==n?n:s,r=!n;return i.useMemo((()=>{const e=d.reduce(((e,t)=>(e[t]=!0,e)),{});return{value:d,selectedById:e,setSelected:t=>{const n=(e=>Object.entries(e).reduce(((e,t)=>{let[n,i]=t;return i&&e.push(n),e}),[]))("function"===typeof t?t(e):t);r?l(n):null===a||void 0===a||a(n)},setInnerValue:r?l:void 0}}),[a,r,d])},Y=(0,y.Ge)("tree-select"),Q=e=>i.createElement(q,Object.assign({},e.props,e.renderContainerProps)),$=i.forwardRef((function(e,t){let{id:n,qa:a,title:s,placement:l,slotBeforeListBody:d,slotAfterListBody:r,size:o="m",defaultOpen:u,width:m,containerRef:f,className:h,containerClassName:y,popupClassName:S,open:x,multiple:B,popupWidth:E,popupDisablePortal:O,items:w,value:j,defaultValue:k,withExpandedState:N=!0,defaultExpandedState:R="expanded",onClose:_,onOpenChange:F,onUpdate:P,renderControl:D,renderItem:z=Q,renderContainer:T,mapItemDataToProps:L,onFocus:A,onBlur:q,getItemId:M,onItemClick:J}=e;const U=(0,Z.X)(),W=(0,c.u)(),G=null!==n&&void 0!==n?n:W,H="tree-select-popup-".concat(G),$=i.useRef(null),ee=i.useRef(null),te=i.useRef(null),ne=null!==f&&void 0!==f?f:te,ie=(0,p.c)(t,ee),{toggleOpen:ae,open:se}=(0,v.Z)({defaultOpen:u,onClose:_,onOpenChange:F,open:x}),{value:le,selectedById:de,setSelected:re}=X({value:j,defaultValue:k,onUpdate:P}),oe=K({controlledState:{selectedById:de,setSelected:re},items:w,getItemId:M,defaultExpandedState:R,withExpandedState:N}),ce=i.useMemo((()=>{if(null===J)return;return(e,t)=>{const n={id:e.id,list:oe};if(J)null===J||void 0===J||J(n,t);else{C({list:oe,multiple:B})(n,t);const i=oe.state.expandedById&&e.id in oe.state.expandedById;B||i||ae(!1)}}}),[J,oe,B,ae]);i.useLayoutEffect((()=>{var e;return se&&(null===(e=ne.current)||void 0===e||e.focus()),()=>oe.state.setActiveItemId(void 0)}),[se]);const ue=i.useCallback((()=>ae(!1)),[ae]),{focusWithinProps:me}=(0,I.L)({onFocusWithin:A,onBlurWithin:i.useCallback((e=>{null===q||void 0===q||q(e),ue()}),[ue,q])}),pe={list:oe,open:se,toggleOpen:ae,clearValue:()=>oe.state.setSelected({}),ref:ie,size:o,value:le,id:G,activeItemId:oe.state.activeItemId,title:s},Ie=D?D(pe):i.createElement(b.Y,Object.assign({},pe,{selectedOptionsContent:i.Children.toArray(le.map((e=>L(oe.structure.itemsById[e]).title))).join(", "),view:"normal",pin:"round-round",popupId:H,selectId:G})),ve=Object.assign({},"max"===m&&{width:m}),be={};return"number"===typeof m&&(be.width=m),i.createElement("div",Object.assign({ref:$},me,{className:Y(ve,h),style:be}),Ie,i.createElement(g.h,{ref:$,className:Y("popup",{size:o},S),controlRef:ee,width:E,placement:l,open:se,handleClose:ue,disablePortal:O,mobile:U,id:H},d,i.createElement(V,{list:oe,size:o,className:Y("list",y),qa:a,multiple:B,id:"list-".concat(G),containerRef:ne,onItemClick:ce,renderContainer:T,mapItemDataToProps:L,renderItem:null!==z&&void 0!==z?z:Q}),r))}));var ee=n(77264),te=n(57002),ne=n.n(te);function ie(e,t){return!t||"object"!==typeof t||!("title"in t)||"string"!==typeof t.title||t.title.toLowerCase().includes((e||"").toLowerCase())}function ae(e){let{items:t,initialFilterValue:n="",filterItem:a,onFilterChange:s,filterItems:l,debounceTimeout:d=300}=e;const r=i.useRef(null),[o,c]=i.useState(n),[u,m]=i.useState(t),[p,I]=i.useState(t),v=i.useCallback(((e,t)=>{if(l)return()=>l(e,t);if(e){const n=a||ie;return()=>function(e,t){const n=(e,i)=>{if(B(i)&&i.children){const a=i.children.reduce(n,[]);a.length?e.push(Object.assign(Object.assign({},i),{data:i.data,children:a})):t(i.data)&&e.push(Object.assign(Object.assign({},i),{data:i.data,children:[]}))}else if(B(i)&&t(i.data)){const{children:t}=i,n=(0,f._T)(i,["children"]);e.push(n)}else!B(i)&&t(i)&&e.push(i);return e};return e.reduce(n,[])}(t,(t=>n(e,t)))}return()=>t}),[a,l]);t!==u&&(I(v(o,t)),m(t));const b=i.useCallback(ne()((e=>I(v(e,t))),d),[I,v,d]),{onFilterUpdate:g,reset:h}=i.useMemo((()=>({reset:()=>{c(n),null===s||void 0===s||s(n),b(n)},onFilterUpdate:e=>{c(e),null===s||void 0===s||s(e),b(e)}})),[b,n,s]);return{filterRef:r,filter:o,reset:h,items:p,onFilterUpdate:g}}var se=n(54973);const le=JSON.parse('{"button_apply":"Apply","button_reset":"Reset","button_switcher":"Columns"}'),de=JSON.parse('{"button_apply":"\u041f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c","button_reset":"\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c","button_switcher":"\u041a\u043e\u043b\u043e\u043d\u043a\u0438"}'),re=(0,se.e)({en:le,ru:de},"TableColumnSetupInner"),oe=(0,y.Ge)("inner-table-column-setup"),ce=oe("controls"),ue=oe("filter-input"),me=oe("empty-placeholder"),pe={isDragDisabled:!0},Ie=e=>({title:e.title}),ve=(e,t)=>"string"!==typeof t.title||t.title.toLowerCase().includes(e.trim().toLowerCase()),be=e=>{const{renderSwitcher:t,popupWidth:n,popupPlacement:p,items:I,onUpdate:v,sortable:b,renderControls:g,className:f,defaultItems:y=I,showResetButton:S,filterable:B,filterPlaceholder:E,filterEmptyMessage:O,filterSettings:w=ve}=e,[C,j]=i.useState(!1),[k,N]=i.useState(b),[R,_]=i.useState(b);b!==R&&(_(b),N(b));const[F,P]=i.useState(I),[D,z]=i.useState(I);I!==D&&(z(I),P(I));const T=ae({items:F,filterItem:w,debounceTimeout:0}),L=()=>{const e=F.map((e=>{let{id:t,isSelected:n}=e;return{id:t,isSelected:n}}));v(e),J(!1)},A=()=>i.createElement(s.z,{view:"action",width:"max",onClick:L},re("button_apply")),M="function"===typeof S?S(F):S,V=(e=>{let{onDragEnd:t,renderControls:n}=e;const a=(0,c.u)();return e=>{let{renderItem:s,list:l,containerRef:d,id:r,className:c}=e;const{stickyStartItemIdList:u,sortableItemIdList:m,stickyEndItemIdList:p}=((e,t)=>{let n=0;for(;n!==t.length;n++){const i=e[t[n]];if("left"!==(null===i||void 0===i?void 0:i.sticky)&&"start"!==(null===i||void 0===i?void 0:i.sticky))break}let i=t.length;for(;0!==i;i--){const n=e[t[i-1]];if("right"!==(null===n||void 0===n?void 0:n.sticky)&&"end"!==(null===n||void 0===n?void 0:n.sticky))break}return{stickyStartItemIdList:t.slice(0,n),sortableItemIdList:t.slice(n,i),stickyEndItemIdList:t.slice(i)}})(l.structure.itemsById,l.structure.visibleFlattenIds),I=u.map(((e,t)=>s(e,t,pe))),v=m.map(((e,t)=>s(e,t+u.length))),b=p.map(((e,t)=>s(e,I.length+v.length+t,pe)));return i.createElement(i.Fragment,null,i.createElement(x,{ref:d,id:r,className:c},I,i.createElement(o.Z5,{onDragEnd:t},i.createElement(o.bK,{droppableId:a,renderClone:(e,t,n)=>{const i={provided:e,snapshot:t};return s(l.structure.visibleFlattenIds[n.source.index],n.source.index,i)}},(e=>i.createElement("div",Object.assign({},e.droppableProps,{ref:e.innerRef}),v,e.placeholder)))),b),i.createElement("div",{className:ce},n()))}})({onDragEnd:e=>{let{destination:t,source:n}=e;void 0!==(null===t||void 0===t?void 0:t.index)&&(null===t||void 0===t?void 0:t.index)!==n.index&&P((e=>((e,t,n)=>{const i=[...e],[a]=i.splice(t,1);return i.splice(n,0,a),i})(e,n.index,t.index)))},renderControls:()=>g?g({DefaultApplyButton:A,onApply:L}):i.createElement(h.k,{gapRow:1,direction:"column",className:ce},M&&i.createElement(s.z,{onClick:()=>{P(y)},width:"max"},re("button_reset")),i.createElement(A,null))}),Z=(e=>t=>{let{data:n,props:a,index:s,renderContainerProps:c}=t;const u=!1===e||!0===(null===c||void 0===c?void 0:c.isDragDisabled),m=u?void 0:i.createElement(l.J,{data:d.Z,size:16}),p=!n.isRequired,I=n.isRequired?i.createElement(l.J,{data:r}):void 0,v=!n.isRequired&&a.selected,b=Object.assign(Object.assign({},a),{selected:v,startSlot:I,hasSelectionIcon:p,endSlot:m});if(u)return i.createElement(q,Object.assign({},b,{key:b.id}));const g=(e,t)=>i.createElement(q,Object.assign({},b,e.draggableProps,e.dragHandleProps,{ref:e.innerRef,dragging:t.isDragging}));return(null===c||void 0===c?void 0:c.provided)&&c.snapshot?g(c.provided,c.snapshot):i.createElement(o._l,{draggableId:a.id,index:s,key:"item-key-".concat(a.id),isDragDisabled:u},g)})(k),J=e=>{j(e),!1===e&&(P(I),N(b),T.reset())},U=i.useMemo((()=>(e=>{const t=[];return e.forEach((e=>{let{id:n,isSelected:i}=e;i&&t.push(n)})),t})(F)),[F]),W=(G=O,()=>i.createElement(m.x,{className:me},G));var G;const H=B?i.createElement(ee.o,{size:"m",view:"clear",placeholder:E,value:T.filter,className:ue,onUpdate:e=>{T.onFilterUpdate(e),N(!e.length)},hasClear:!0}):null,K=T.filter&&!T.items.length?W:V;return i.createElement($,{className:oe(null,f),mapItemDataToProps:Ie,multiple:!0,size:"l",open:C,value:U,items:T.filter?T.items:F,onUpdate:e=>{P((t=>t.map((t=>Object.assign(Object.assign({},t),{isSelected:t.isRequired||e.includes(t.id)})))))},popupWidth:n,onOpenChange:J,placement:p,slotBeforeListBody:H,renderContainer:K,renderControl:e=>{let{toggleOpen:n}=e;const d=(0,u.S)(n);return(null===t||void 0===t?void 0:t({onClick:n,onKeyDown:d}))||i.createElement(s.z,{onClick:n,extraProps:{onKeyDown:d}},i.createElement(l.J,{data:a.Z}),re("button_switcher"))},renderItem:Z})},ge=JSON.parse('{"button_switcher":"Columns"}'),fe=JSON.parse('{"button_switcher":"\u041a\u043e\u043b\u043e\u043d\u043a\u0438"}'),he=(0,se.e)({en:ge,ru:fe},"TableColumnSetup"),ye=(0,y.Ge)("table-column-setup"),Se=e=>{const{switcher:t,renderSwitcher:n,disabled:d,popupWidth:r,popupPlacement:o,className:c,items:u,sortable:m=!0,showStatus:p,onUpdate:I}=e,v=u.map((e=>{let{id:t,title:n,required:i,selected:a,sticky:s}=e;return{id:t,title:n,isRequired:i,isSelected:a,sticky:s}}));return i.createElement(be,{items:v,onUpdate:e=>{I(e.map((e=>{let{id:t,isSelected:n}=e;const i=u.find((e=>e.id===t));return{id:t,selected:n,title:null===i||void 0===i?void 0:i.title,required:null===i||void 0===i?void 0:i.required}})))},popupPlacement:o,popupWidth:r,renderSwitcher:e=>(null===n||void 0===n?void 0:n(e))||t||i.createElement(s.z,{disabled:d,onClick:e.onClick},i.createElement(l.J,{data:a.Z}),he("button_switcher"),(()=>{if(!p)return null;const e=u.reduce(((e,t)=>t.selected?e+1:e),0),t=u.length,n="".concat(e,"/").concat(t);return i.createElement("span",{className:ye("status")},n)})()),sortable:m,className:ye(null,c)})}},56829:(e,t,n)=>{n.d(t,{F:()=>a});var i=n(40797);function a(){return(0,i.T)().theme}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/5715.0941d934.chunk.js b/ydb/core/viewer/monitoring/static/js/5715.0941d934.chunk.js new file mode 100644 index 000000000000..3b8e110e9ef8 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/5715.0941d934.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[5715],{22200:(e,a,i)=>{i.d(a,{K:()=>I});var s=i(54665),o=i(5922),t=i(24362),n=i(4119),l=i(48169),d=i(47651),u=i(69214),r=i(62206),c=i(32270),v=i(67359),D=i(30817);const p=JSON.parse('{"slot-id":"VDisk Slot Id","pool-name":"Storage Pool Name","kind":"Kind","guid":"GUID","incarnation-guid":"Incarnation GUID","instance-guid":"Instance GUID","replication-status":"Replicated","state-status":"VDisk State","space-status":"Disk Space","fresh-rank-satisfaction":"Fresh Rank Satisfaction","level-rank-satisfaction":"Level Rank Satisfaction","front-queues":"Front Queues","has-unreadable-blobs":"Has Unreadable Blobs","size":"Size","read-throughput":"Read Throughput","write-throughput":"Write Throughput","links":"Links","vdisk-page":"VDisk Page","developer-ui":"Developer UI","yes":"Yes","no":"No"}'),k=(0,D.wZ)("ydb-vDisk-info",{en:p});var g=i(75859);const h=(0,t.cn)("ydb-vdisk-info");function I(e){var a,i;let{data:t,isVDiskPage:D=!1,...p}=e;const{AllocatedSize:I,DiskSpace:b,FrontQueues:f,Guid:m,Replicated:N,VDiskState:S,VDiskSlotId:w,Kind:x,SatisfactionRank:y,AvailableSize:j,HasUnreadableBlobs:P,IncarnationGuid:V,InstanceGuid:G,StoragePoolName:R,ReadThroughput:F,WriteThroughput:T,PDiskId:C,NodeId:z}=t,q=[];var A,L;((0,o.D)(w)&&q.push({label:k("slot-id"),value:w}),(0,o.D)(R)&&q.push({label:k("pool-name"),value:R}),(0,o.D)(S)&&q.push({label:k("state-status"),value:S}),Number(I)>=0&&Number(j)>=0&&q.push({label:k("size"),value:(0,g.jsx)(v.y,{value:I,capacity:Number(I)+Number(j),formatValues:n.q3,colorizeProgress:!0})}),(0,o.D)(x)&&q.push({label:k("kind"),value:x}),(0,o.D)(m)&&q.push({label:k("guid"),value:m}),(0,o.D)(V)&&q.push({label:k("incarnation-guid"),value:V}),(0,o.D)(G)&&q.push({label:k("instance-guid"),value:G}),(0,o.D)(N)&&q.push({label:k("replication-status"),value:k(N?"yes":"no")}),(0,o.D)(b)&&q.push({label:k("space-status"),value:(0,g.jsx)(u.A,{status:b})}),(0,o.D)(null===y||void 0===y||null===(a=y.FreshRank)||void 0===a?void 0:a.Flag))&&q.push({label:k("fresh-rank-satisfaction"),value:(0,g.jsx)(u.A,{status:null===y||void 0===y||null===(A=y.FreshRank)||void 0===A?void 0:A.Flag})});(0,o.D)(null===y||void 0===y||null===(i=y.LevelRank)||void 0===i?void 0:i.Flag)&&q.push({label:k("level-rank-satisfaction"),value:(0,g.jsx)(u.A,{status:null===y||void 0===y||null===(L=y.LevelRank)||void 0===L?void 0:L.Flag})});if((0,o.D)(f)&&q.push({label:k("front-queues"),value:(0,g.jsx)(u.A,{status:f})}),(0,o.D)(P)&&q.push({label:k("has-unreadable-blobs"),value:k(P?"yes":"no")}),(0,o.D)(F)&&q.push({label:k("read-throughput"),value:(0,d.Qt)(F)}),(0,o.D)(T)&&q.push({label:k("write-throughput"),value:(0,d.Qt)(T)}),(0,o.D)(C)&&(0,o.D)(z)&&(0,o.D)(w)){const e=(0,s.By)(w,C,z),a=(0,l.yf)({nodeId:z,pDiskId:C,vDiskSlotId:w});q.push({label:k("links"),value:(0,g.jsxs)("span",{className:h("links"),children:[!D&&(0,g.jsx)(c.j,{title:k("vdisk-page"),url:e,external:!1}),(0,g.jsx)(c.j,{title:k("developer-ui"),url:a})]})})}return(0,g.jsx)(r._P,{info:q,...p})}},65915:(e,a,i)=>{i.r(a),i.d(a,{VDiskPage:()=>U});var s=i(68963);const o=e=>s.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),s.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M9.28 4.78a.75.75 0 0 0 0-1.06l-2.5-2.5a.75.75 0 1 0-1.06 1.06L6.94 3.5H1.75a.75.75 0 1 0 0 1.5h5.19L5.72 6.22a.75.75 0 1 0 1.06 1.06l2.5-2.5Zm-.06 3.94-2.5 2.5a.75.75 0 0 0 0 1.06l2.5 2.5a.75.75 0 1 0 1.06-1.06L9.06 12.5h5.19a.75.75 0 0 0 0-1.5H9.06l1.22-1.22a.75.75 0 1 0-1.06-1.06ZM14 4.25a1.75 1.75 0 1 1-3.5 0 1.75 1.75 0 0 1 3.5 0ZM3.75 13.5a1.75 1.75 0 1 0 0-3.5 1.75 1.75 0 0 0 0 3.5Z",clipRule:"evenodd"}));var t=i(88776),n=i(17095),l=i(49352),d=i(52846),u=i(50422),r=i(14659),c=i(12824),v=i(5922),D=i(4119),p=i(62206),k=i(67359),g=i(30817);const h=JSON.parse('{"group-id":"Group ID","pool-name":"Storage Pool Name","size":"Size","erasure":"Erasure"}'),I=(0,g.wZ)("ydb-group-info",{en:h});var b=i(75859);function f(e){let{data:a,...i}=e;const{GroupID:s,PoolName:o,Used:t,Limit:n,ErasureSpecies:l}=a,d=[];return(0,v.D)(s)&&d.push({label:I("group-id"),value:s}),(0,v.D)(o)&&d.push({label:I("pool-name"),value:o}),(0,v.D)(l)&&d.push({label:I("erasure"),value:l}),Number(t)>=0&&Number(n)>=0&&d.push({label:I("size"),value:(0,b.jsx)(k.y,{value:t,capacity:n,formatValues:D.q3,colorizeProgress:!0})}),(0,b.jsx)(p._P,{info:d,...i})}var m=i(91816),N=i(16084),S=i(79255),w=i(22200),x=i(79061),y=i(99337),j=i(11431),P=i(905),V=i(3764),G=i(51688),R=i(92092);const F=P.h.injectEndpoints({endpoints:e=>({getVDiskData:e.query({queryFn:async e=>{let{nodeId:a,pDiskId:i,vDiskSlotId:s}=e;try{const{vDiskData:e,groupData:o}=await async function(e){let{nodeId:a,pDiskId:i,vDiskSlotId:s}=e,{signal:o}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const t=await Promise.all([window.api.getVDiskInfo({nodeId:a,pDiskId:i,vDiskSlotId:s},{signal:o}),window.api.getPDiskInfo({nodeId:a,pDiskId:i},{signal:o}),window.api.getNodeInfo(a,{signal:o})]),n=function(e){var a,i,s,o,t,n,l;let[d,u,r]=e;const c=null===(a=d.VDiskStateInfo)||void 0===a?void 0:a[0],v=(0,V.w)(c),D=null===(i=u.PDiskStateInfo)||void 0===i?void 0:i[0],p=(0,V.b)(D),k=null===(s=r.SystemStateInfo)||void 0===s?void 0:s[0],g=(0,G.Ns)(k),h=null!==(o=null!==(t=v.NodeId)&&void 0!==t?t:p.NodeId)&&void 0!==o?o:g.NodeId,I=g.Host,b=null===(n=g.Roles)||void 0===n?void 0:n[0],f=g.DC,m=null!==(l=v.PDiskId)&&void 0!==l?l:p.PDiskId,N=p.Type;return{...v,NodeId:h,NodeHost:I,NodeType:b,NodeDC:f,PDiskId:m,PDiskType:N}}(t),{StoragePoolName:l,VDiskId:d={}}=n,{GroupID:u}=d;let r;if((0,v.D)(l)&&(0,v.D)(u)){r=function(e,a,i){var s,o;const t=null===(s=e.StoragePools)||void 0===s?void 0:s.find((e=>e.Name===a)),n=null===t||void 0===t||null===(o=t.Groups)||void 0===o?void 0:o.find((e=>e.GroupID===i));if(n&&t)return(0,R.mD)(n,t)}(await window.api.getStorageInfo({nodeId:a,poolName:l,groupId:u,version:j.w.v1},{signal:o}),l,u)}return{vDiskData:n,groupData:r}}({nodeId:a,pDiskId:i,vDiskSlotId:s});return{data:{vDiskData:e,groupData:o}}}catch(o){return{error:o}}},providesTags:["All"]})}),overrideExisting:"throw"});var T=i(24362),C=i(92666),z=i(34051);const q=JSON.parse('{"fqdn":"FQDN","node":"Node","pdisk":"PDisk","vdisk":"VDisk","group":"Group","evict-vdisk-button":"Evict VDisk","evict-vdisk-dialog":"VDisk will be evicted. Do you want to proceed?","evict-vdisk-not-allowed":"You don\'t have enough rights to evict VDisk"}'),A=(0,g.wZ)("ydb-vDisk-page",{en:q}),L=(0,T.cn)("ydb-vdisk-page");function U(){const e=(0,z.zL)(),a=(0,z.ix)(y.d),{isUserAllowedToMakeChanges:i}=(0,z.ix)((e=>e.authentication)),[{nodeId:p,pDiskId:k,vDiskSlotId:g}]=(0,d.useQueryParams)({nodeId:d.StringParam,pDiskId:d.StringParam,vDiskSlotId:d.StringParam});s.useEffect((()=>{e((0,x.J)("vDisk",{nodeId:p,pDiskId:k,vDiskSlotId:g}))}),[e,p,k,g]);const[h]=(0,z.Rj)(),I=(0,v.D)(p)&&(0,v.D)(k)&&(0,v.D)(g)?{nodeId:p,pDiskId:k,vDiskSlotId:g}:n.CN,{currentData:j,isFetching:P,refetch:V}=F.useGetVDiskDataQuery(I,{pollingInterval:h}),G=P&&void 0===j,{vDiskData:R={},groupData:T}=j||{},{NodeHost:q,NodeId:U,NodeType:E,NodeDC:H,PDiskId:Q,PDiskType:Z,Severity:B,VDiskId:M}=R,_=async()=>{const{GroupID:e,GroupGeneration:a,Ring:i,Domain:s,VDisk:o}=M||{};if((0,v.D)(e)&&(0,v.D)(a)&&(0,v.D)(i)&&(0,v.D)(s)&&(0,v.D)(o))return window.api.evictVDisk({groupId:e,groupGeneration:a,failRealmIdx:i,failDomainIdx:s,vDiskIdx:o})},J=async()=>V(),K=()=>{var e;return T?(0,b.jsxs)(s.Fragment,{children:[(0,b.jsx)("div",{className:L("group-title"),children:A("group")}),(0,b.jsx)(f,{data:T}),(0,b.jsx)("div",{className:L("group-disks"),children:null===(e=T.VDisks)||void 0===e?void 0:e.map((e=>(0,b.jsx)(S.c,{data:e,nodes:a,className:L("group-disk")},(0,D.a2)(e.VDiskId))))})]}):null};return(0,b.jsxs)("div",{className:L(null),children:[(()=>{const e=g?"".concat(A("vdisk")," ").concat(g):A("vdisk"),a=k?"".concat(A("pdisk")," ").concat(k):A("pdisk"),i=q||A("node");return(0,b.jsx)(l.ql,{titleTemplate:"%s - ".concat(e," - ").concat(a," \u2014 ").concat(i," \u2014 YDB Monitoring"),defaultTitle:"".concat(e," - ").concat(a," \u2014 ").concat(i," \u2014 YDB Monitoring")})})(),(()=>{const e=q?"".concat(A("fqdn"),": ").concat(q):void 0,a=U?"".concat(A("node"),": ").concat(U):void 0,i=U?"".concat(A("pdisk"),": ").concat(Q):void 0;return(0,b.jsx)(N.V,{loading:G,items:[e,a,E,H,i,Z]})})(),(0,b.jsx)(c.b,{entityName:A("vdisk"),status:(0,C.b)(B),id:(0,D.a2)(null===R||void 0===R?void 0:R.VDiskId)}),(0,b.jsxs)("div",{className:L("controls"),children:[(0,b.jsxs)(r.U,{onConfirmAction:_,onConfirmActionSuccess:J,buttonDisabled:!M||!i,buttonView:"normal",dialogContent:A("evict-vdisk-dialog"),withPopover:!0,popoverContent:A("evict-vdisk-not-allowed"),popoverDisabled:i,children:[(0,b.jsx)(t.J,{data:o}),A("evict-vdisk-button")]}),(0,b.jsx)(u.q,{className:L("auto-refresh-control")})]}),G?(0,b.jsx)(m.b,{rows:20}):(0,b.jsxs)(s.Fragment,{children:[(0,b.jsx)(w.K,{data:R,isVDiskPage:!0}),K()]})]})}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/6531.7eac62d1.chunk.js b/ydb/core/viewer/monitoring/static/js/6531.fbd78a3e.chunk.js similarity index 96% rename from ydb/core/viewer/monitoring/static/js/6531.7eac62d1.chunk.js rename to ydb/core/viewer/monitoring/static/js/6531.fbd78a3e.chunk.js index 89ffe7c2c119..c87a395e78d6 100644 --- a/ydb/core/viewer/monitoring/static/js/6531.7eac62d1.chunk.js +++ b/ydb/core/viewer/monitoring/static/js/6531.fbd78a3e.chunk.js @@ -1 +1 @@ -"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[6531],{16531:(t,e,n)=>{n.r(e),n.d(e,{registerYQLCompletionItemProvider:()=>I});var s=n(88424),i=n(62729),a=n(41551);const r={Method:0,Function:1,Constructor:2,Field:3,Variable:4,Class:5,Struct:6,Interface:7,Module:8,Property:9,Event:10,Operator:11,Unit:12,Value:13,Constant:14,Enum:15,EnumMember:16,Keyword:17,Text:18,Color:19,File:20,Reference:21,Customcolor:22,Folder:23,TypeParameter:24,User:25,Issue:26,Snippet:27},u=/[\s'"-/@]/,o={externalDataSource:["external_data_source"],externalTable:["external_table"],replication:["replication"],table:["table","column_table"],tableStore:["column_store"],topic:["pers_queue_group"],view:["view"],tableIndex:["table_index","index"]},l=["dir","unknown"];function c(t){let e=t;return t.match(u)&&(e="`".concat(t,"`")),e}function g(t){let e=0,n=t.length;return t.startsWith("`")&&(e=1),t.endsWith("`")&&(n=-1),t.slice(e,n)}function d(t){return t.startsWith("/")?t.slice(1):t}function m(){let t=arguments.length>1?arguments[1]:void 0,e=d(g(arguments.length>0&&void 0!==arguments[0]?arguments[0]:""));const n=d(t);return e.startsWith(n)&&(e=e.slice(n.length)),d(e)}const f={suggestTemplates:0,suggestPragmas:1,suggestEntity:2,suggestColumns:3,suggestColumnAliases:4,suggestTableIndexes:5,suggestTableHints:6,suggestEntitySettings:7,suggestSimpleTypes:8,suggestKeywords:9,suggestAggregateFunctions:10,suggestTableFunctions:11,suggestWindowFunctions:12,suggestFunctions:13,suggestUdfs:14};function p(t){return f[t]}async function y(t,e,n,s){const i=m(s,n),u=await window.api.autocomplete({database:n,prefix:i,limit:1e3}),c=null===s||void 0===s?void 0:s.startsWith("`");if(u.Success){return function(t,e){const n=e.reduce(((t,e)=>{const n=o[e];return n&&n.forEach((e=>t.add(e))),t}),new Set(l));return t.filter((t=>{let{Type:e}=t;return n.has(e)}))}(u.Result.Entities,e).reduce(((e,n)=>{var s;let{Name:i,Type:u}=n;const o="dir"===u,l=o?"".concat(i,"/"):i;let g;return o&&!c&&(g="`".concat(l,"$0`")),e.push({label:l,insertText:null!==(s=g)&&void 0!==s?s:l,kind:o?r.Folder:r.Text,insertTextRules:g?a.languages.CompletionItemInsertTextRule.InsertAsSnippet:a.languages.CompletionItemInsertTextRule.None,detail:u,range:t,command:l.endsWith("/")?{id:"editor.action.triggerSuggest",title:""}:void 0,sortText:S(p("suggestEntity"))}),e}),[])}return[]}async function b(t){return(await async function(){return i.j}()).map((e=>({label:e,insertText:e,kind:r.Function,detail:"Function",range:t,sortText:S(p("suggestFunctions"))})))}async function T(t){return(await async function(){return i.vy}()).map((e=>({label:e,insertText:e,kind:r.TypeParameter,detail:"Type",range:t,sortText:S(p("suggestSimpleTypes"))})))}async function w(t){return(await async function(){return i.t6}()).map((e=>({label:e,insertText:e,kind:r.Function,detail:"UDF",range:t,sortText:S(p("suggestUdfs"))})))}async function v(t){return(await async function(){return i.JX}()).map((e=>({label:e,insertText:e,kind:r.Function,detail:"Window function",range:t,sortText:S(p("suggestWindowFunctions"))})))}async function x(t){return(await async function(){return i.yJ}()).map((e=>({label:e,insertText:e,kind:r.Function,detail:"Table function",range:t,sortText:S(p("suggestTableFunctions"))})))}async function h(t){return(await async function(){return i.Ot}()).map((e=>({label:e,insertText:e,kind:r.Function,detail:"Aggregate function",range:t,sortText:S(p("suggestAggregateFunctions"))})))}async function C(t){return(await async function(){return i.EQ}()).map((e=>({label:e,insertText:e,kind:r.Module,detail:"Pragma",range:t,sortText:S(p("suggestPragmas"))})))}async function F(t,e){const n=await async function(t){return i.S8[t]}(e);return n.map((e=>({label:e,insertText:e,kind:r.Property,detail:"Setting",range:t,sortText:S(p("suggestEntitySettings"))})))}const k="abcdefghijklmnopqrstuvwxyz";function S(t){const e=k[t];if(e)return e;const n=Math.floor(t/k.length),s=t%k.length;return k.slice(-1).repeat(n)+k[s]}function E(t){return async(e,s,i,a)=>{const u=function(t,e){const{startColumn:n,endColumn:s}=t.getWordUntilPosition(e),i="$"===t.getLineContent(e.lineNumber)[n-2]?1:0;return{startColumn:n-i,startLineNumber:e.lineNumber,endColumn:s,endLineNumber:e.lineNumber}}(e,s),o=await async function(t,e,s,i){const{parseYqlQuery:a}=await n.e(8607).then(n.bind(n,68607)),u={line:e.lineNumber,column:e.column},o=a(t.getValue(),u);let l=[],d=[],f=[],k=[],E=[],P=[],I=[],W=[],_=[];if(o.suggestEntity){const n=function(t,e){var n,s,i,a;const r=t.findPreviousMatch("\\s(`?[^\\s]*)",e,!0,!1,null,!0),u=t.findNextMatch("([^\\s]*)`?",e,!0,!1,null,!0);return"".concat(null!==(n=null===r||void 0===r||null===(s=r.matches)||void 0===s?void 0:s[1])&&void 0!==n?n:"").concat(null!==(i=null===u||void 0===u||null===(a=u.matches)||void 0===a?void 0:a[1])&&void 0!==i?i:"")}(t,e);l=await y(s,o.suggestEntity,i,n)}o.suggestFunctions&&(d=await b(s));o.suggestAggregateFunctions&&(f=await h(s));o.suggestWindowFunctions&&(k=await v(s));o.suggestTableFunctions&&(E=await x(s));o.suggestSimpleTypes&&(I=await T(s));o.suggestUdfs&&(P=await w(s));o.suggestPragmas&&(W=await C(s));o.suggestEntitySettings&&(_=await F(s,o.suggestEntitySettings));const N=await function(t,e){return e?null===e||void 0===e?void 0:e.map((e=>({label:e.name,insertText:e.name,kind:r.Field,detail:"Column alias",range:t,sortText:S(p("suggestColumnAliases"))}))):[]}(s,o.suggestColumnAliases),A=await async function(t,e,n){var s,i,a;if(null===e||void 0===e||!e.tables)return[];const u=[],o=e.tables.length>1,l=null!==(s=null===(i=e.tables)||void 0===i?void 0:i.map((t=>{let e=g(t.name);return e.endsWith("/")||(e="".concat(e,"/")),m(e,n)})))&&void 0!==s?s:[],d=Array.from(new Set(l)),f=await window.api.autocomplete({database:n,table:d,limit:1e3});if(!f.Success)return[];const y=null===(a=e.tables)||void 0===a?void 0:a.reduce(((t,e)=>{var s;const i=m(g(e.name),n),a=null!==(s=t[i])&&void 0!==s?s:[];return e.alias&&a.push(e.alias),t[i]=a,t}),{});return f.Result.Entities.forEach((e=>{if("column"!==e.Type)return;const s=c(e.Name),i=m(e.Parent,n),a=y[i];if(null!==a&&void 0!==a&&a.length)a.forEach((e=>{const n="".concat(e,".").concat(s);u.push({label:n,insertText:n,kind:r.Field,detail:"Column",range:t,sortText:S(p("suggestColumns"))})}));else{let e=s;o&&(e="".concat(c(i),".").concat(s)),u.push({label:e,insertText:e,kind:r.Field,detail:"Column",range:t,sortText:S(p("suggestColumns"))})}})),u}(s,o.suggestColumns,i),M=function(t,e){return e?null===e||void 0===e?void 0:e.map((e=>({label:e.value,insertText:e.value,kind:r.Keyword,detail:"Keyword",range:t,sortText:S(p("suggestKeywords"))}))):[]}(s,o.suggestKeywords),U=[...l,...d,...k,...E,...P,...I,...W,...N,...A,...M,...f,..._];return U}(e,s,u,t);return{suggestions:o}}}let P;function I(t){P&&P.dispose(),P=s.Mj.registerCompletionItemProvider(i.Oo,{triggerCharacters:[" ","",",",".","`","(","/"],provideCompletionItems:E(t)})}}}]); \ No newline at end of file +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[6531],{16531:(t,e,n)=>{n.r(e),n.d(e,{registerYQLCompletionItemProvider:()=>I});var s=n(88424),i=n(62729),a=n(41551);const r={Method:0,Function:1,Constructor:2,Field:3,Variable:4,Class:5,Struct:6,Interface:7,Module:8,Property:9,Event:10,Operator:11,Unit:12,Value:13,Constant:14,Enum:15,EnumMember:16,Keyword:17,Text:18,Color:19,File:20,Reference:21,Customcolor:22,Folder:23,TypeParameter:24,User:25,Issue:26,Snippet:27},u=/[\s'"-/@]/,o={externalDataSource:["external_data_source"],externalTable:["external_table"],replication:["replication"],table:["table","column_table"],tableStore:["column_store"],topic:["pers_queue_group"],view:["view"],tableIndex:["table_index","index"]},l=["dir","unknown"];function c(t){let e=t;return t.match(u)&&(e="`".concat(t,"`")),e}function g(t){let e=0,n=t.length;return t.startsWith("`")&&(e=1),t.endsWith("`")&&(n=-1),t.slice(e,n)}function d(t){return t.startsWith("/")?t.slice(1):t}function m(){let t=arguments.length>1?arguments[1]:void 0,e=d(g(arguments.length>0&&void 0!==arguments[0]?arguments[0]:""));const n=d(t);return e.startsWith(n)&&(e=e.slice(n.length)),d(e)}const f={suggestTemplates:0,suggestPragmas:1,suggestEntity:2,suggestColumns:3,suggestColumnAliases:4,suggestTableIndexes:5,suggestTableHints:6,suggestEntitySettings:7,suggestKeywords:8,suggestAggregateFunctions:9,suggestTableFunctions:10,suggestWindowFunctions:11,suggestFunctions:12,suggestSimpleTypes:13,suggestUdfs:14};function p(t){return f[t]}async function y(t,e,n,s){const i=m(s,n),u=await window.api.autocomplete({database:n,prefix:i,limit:1e3}),c=null===s||void 0===s?void 0:s.startsWith("`");if(u.Success){return function(t,e){const n=e.reduce(((t,e)=>{const n=o[e];return n&&n.forEach((e=>t.add(e))),t}),new Set(l));return t.filter((t=>{let{Type:e}=t;return n.has(e)}))}(u.Result.Entities,e).reduce(((e,n)=>{var s;let{Name:i,Type:u}=n;const o="dir"===u,l=o?"".concat(i,"/"):i;let g;return o&&!c&&(g="`".concat(l,"$0`")),e.push({label:l,insertText:null!==(s=g)&&void 0!==s?s:l,kind:o?r.Folder:r.Text,insertTextRules:g?a.languages.CompletionItemInsertTextRule.InsertAsSnippet:a.languages.CompletionItemInsertTextRule.None,detail:u,range:t,command:l.endsWith("/")?{id:"editor.action.triggerSuggest",title:""}:void 0,sortText:S(p("suggestEntity"))}),e}),[])}return[]}async function b(t){return(await async function(){return i.j}()).map((e=>({label:e,insertText:e,kind:r.Function,detail:"Function",range:t,sortText:S(p("suggestFunctions"))})))}async function T(t){return(await async function(){return i.vy}()).map((e=>({label:e,insertText:e,kind:r.TypeParameter,detail:"Type",range:t,sortText:S(p("suggestSimpleTypes"))})))}async function w(t){return(await async function(){return i.t6}()).map((e=>({label:e,insertText:e,kind:r.Function,detail:"UDF",range:t,sortText:S(p("suggestUdfs"))})))}async function v(t){return(await async function(){return i.JX}()).map((e=>({label:e,insertText:e,kind:r.Function,detail:"Window function",range:t,sortText:S(p("suggestWindowFunctions"))})))}async function x(t){return(await async function(){return i.yJ}()).map((e=>({label:e,insertText:e,kind:r.Function,detail:"Table function",range:t,sortText:S(p("suggestTableFunctions"))})))}async function h(t){return(await async function(){return i.Ot}()).map((e=>({label:e,insertText:e,kind:r.Function,detail:"Aggregate function",range:t,sortText:S(p("suggestAggregateFunctions"))})))}async function C(t){return(await async function(){return i.EQ}()).map((e=>({label:e,insertText:e,kind:r.Module,detail:"Pragma",range:t,sortText:S(p("suggestPragmas"))})))}async function F(t,e){const n=await async function(t){return i.S8[t]}(e);return n.map((e=>({label:e,insertText:e,kind:r.Property,detail:"Setting",range:t,sortText:S(p("suggestEntitySettings"))})))}const k="abcdefghijklmnopqrstuvwxyz";function S(t){const e=k[t];if(e)return e;const n=Math.floor(t/k.length),s=t%k.length;return k.slice(-1).repeat(n)+k[s]}function E(t){return async(e,s,i,a)=>{const u=function(t,e){const{startColumn:n,endColumn:s}=t.getWordUntilPosition(e),i="$"===t.getLineContent(e.lineNumber)[n-2]?1:0;return{startColumn:n-i,startLineNumber:e.lineNumber,endColumn:s,endLineNumber:e.lineNumber}}(e,s),o=await async function(t,e,s,i){const{parseYqlQuery:a}=await n.e(8607).then(n.bind(n,68607)),u={line:e.lineNumber,column:e.column},o=a(t.getValue(),u);let l=[],d=[],f=[],k=[],E=[],P=[],I=[],W=[],_=[];if(o.suggestEntity){const n=function(t,e){var n,s,i,a;const r=t.findPreviousMatch("\\s(`?[^\\s]*)",e,!0,!1,null,!0),u=t.findNextMatch("([^\\s]*)`?",e,!0,!1,null,!0);return"".concat(null!==(n=null===r||void 0===r||null===(s=r.matches)||void 0===s?void 0:s[1])&&void 0!==n?n:"").concat(null!==(i=null===u||void 0===u||null===(a=u.matches)||void 0===a?void 0:a[1])&&void 0!==i?i:"")}(t,e);l=await y(s,o.suggestEntity,i,n)}o.suggestFunctions&&(d=await b(s));o.suggestAggregateFunctions&&(f=await h(s));o.suggestWindowFunctions&&(k=await v(s));o.suggestTableFunctions&&(E=await x(s));o.suggestSimpleTypes&&(I=await T(s));o.suggestUdfs&&(P=await w(s));o.suggestPragmas&&(W=await C(s));o.suggestEntitySettings&&(_=await F(s,o.suggestEntitySettings));const N=await function(t,e){return e?null===e||void 0===e?void 0:e.map((e=>({label:e.name,insertText:e.name,kind:r.Field,detail:"Column alias",range:t,sortText:S(p("suggestColumnAliases"))}))):[]}(s,o.suggestColumnAliases),A=await async function(t,e,n){var s,i,a;if(null===e||void 0===e||!e.tables)return[];const u=[],o=e.tables.length>1,l=null!==(s=null===(i=e.tables)||void 0===i?void 0:i.map((t=>{let e=g(t.name);return e.endsWith("/")||(e="".concat(e,"/")),m(e,n)})))&&void 0!==s?s:[],d=Array.from(new Set(l)),f=await window.api.autocomplete({database:n,table:d,limit:1e3});if(!f.Success)return[];const y=null===(a=e.tables)||void 0===a?void 0:a.reduce(((t,e)=>{var s;const i=m(g(e.name),n),a=null!==(s=t[i])&&void 0!==s?s:[];return e.alias&&a.push(e.alias),t[i]=a,t}),{});return f.Result.Entities.forEach((e=>{if("column"!==e.Type)return;const s=c(e.Name),i=m(e.Parent,n),a=y[i];if(null!==a&&void 0!==a&&a.length)a.forEach((e=>{const n="".concat(e,".").concat(s);u.push({label:n,insertText:n,kind:r.Field,detail:"Column",range:t,sortText:S(p("suggestColumns"))})}));else{let e=s;o&&(e="".concat(c(i),".").concat(s)),u.push({label:e,insertText:e,kind:r.Field,detail:"Column",range:t,sortText:S(p("suggestColumns"))})}})),u}(s,o.suggestColumns,i),M=function(t,e){return e?null===e||void 0===e?void 0:e.map((e=>({label:e.value,insertText:e.value,kind:r.Keyword,detail:"Keyword",range:t,sortText:S(p("suggestKeywords"))}))):[]}(s,o.suggestKeywords),U=[...l,...d,...k,...E,...P,...I,...W,...N,...A,...M,...f,..._];return U}(e,s,u,t);return{suggestions:o}}}let P;function I(t){P&&P.dispose(),P=s.Mj.registerCompletionItemProvider(i.Oo,{triggerCharacters:[" ",".","`","(","/"],provideCompletionItems:E(t)})}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/7045.53fa1aaf.chunk.js b/ydb/core/viewer/monitoring/static/js/7045.53fa1aaf.chunk.js new file mode 100644 index 000000000000..a2b650f31866 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/7045.53fa1aaf.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[7045],{14659:(e,t,s)=>{s.d(t,{U:()=>g});var a=s(68963),n=s(17176),l=s(68330),i=s(76506),o=s(71586),r=s(25822),d=s(88776),c=s(24362),u=s(30817);const v=JSON.parse('{"default-error":"Something went wrong, action cannot be completed","no-rights-error":"You don\'t have enough rights to complete the operation","button-confirm":"Confirm","button-cancel":"Cancel","button-close":"Close"}'),p=(0,u.wZ)("ydb-critical-action-dialog",{en:v});var h=s(75859);const m=(0,c.cn)("ydb-critical-dialog"),b=e=>403===e.status?p("no-rights-error"):e.statusText?e.statusText:p("default-error");function x(e){let{visible:t,text:s,onClose:n,onConfirm:l,onConfirmActionSuccess:c,onConfirmActionError:u}=e;const[v,x]=a.useState(!1),[g,j]=a.useState(),N=async e=>(e.preventDefault(),x(!0),l().then((()=>{c(),n()})).catch((e=>{u(),j(e)})).finally((()=>{x(!1)})));return(0,h.jsx)(r.V,{open:t,hasCloseButton:!1,className:m(),size:"s",onClose:n,onTransitionExited:()=>j(void 0),children:g?(0,h.jsxs)(a.Fragment,{children:[(0,h.jsxs)(r.V.Body,{className:m("body"),children:[(0,h.jsx)("span",{className:m("error-icon"),children:(0,h.jsx)(i.Z,{width:"24",height:"22"})}),b(g)]}),(0,h.jsx)(r.V.Footer,{loading:!1,preset:"default",textButtonCancel:p("button-close"),onClickButtonCancel:n})]}):(0,h.jsxs)("form",{onSubmit:N,children:[(0,h.jsxs)(r.V.Body,{className:m("body"),children:[(0,h.jsx)("span",{className:m("warning-icon"),children:(0,h.jsx)(d.J,{data:o.Z,size:24})}),s]}),(0,h.jsx)(r.V.Footer,{loading:v,preset:"default",textButtonApply:p("button-confirm"),textButtonCancel:p("button-cancel"),propsButtonApply:{type:"submit"},onClickButtonCancel:n,onClickButtonApply:()=>{}})]})})}function g(e){let{children:t,onConfirmAction:s,onConfirmActionSuccess:i,dialogContent:o,buttonDisabled:r=!1,buttonView:d="action",buttonClassName:c,withPopover:u=!1,popoverContent:v,popoverPlacement:p="right",popoverDisabled:m=!0}=e;const[b,g]=a.useState(!1),[j,N]=a.useState(!1),k=()=>(0,h.jsx)(n.z,{onClick:()=>g(!0),view:d,disabled:r,loading:!r&&j,className:c,children:t});return(0,h.jsxs)(a.Fragment,{children:[(0,h.jsx)(x,{visible:b,text:o,onConfirm:async()=>{N(!0),await s(),N(!1)},onConfirmActionSuccess:async()=>{if(i){N(!0);try{await i()}catch{}finally{N(!1)}}},onConfirmActionError:()=>{N(!1)},onClose:()=>{g(!1)}}),u?(0,h.jsx)(l.J,{content:v,placement:p,disabled:m,children:k()}):k()]})}},58682:(e,t,s)=>{s.d(t,{T:()=>d});var a=s(39683),n=s(17176),l=s(88776),i=s(24362),o=s(75859);const r=(0,i.cn)("developer-ui-link");function d(e){let{href:t,visible:s=!1,className:i}=e;return(0,o.jsx)(n.z,{size:"s",href:t,className:r({visible:s},i),target:"_blank",children:(0,o.jsx)(l.J,{data:a.Z})})}},8659:(e,t,s)=>{s.d(t,{P:()=>g});var a=s(54665),n=s(5922),l=s(24362),i=s(52317),o=s(4119),r=s(48169),d=s(69214),c=s(23373),u=s(32270),v=s(67359),p=s(30817);const h=JSON.parse('{"path":"Path","guid":"GUID","category":"Category","type":"Type","size":"Size","state":"State","device":"Device","realtime":"Realtime","serial-number":"SerialNumber","links":"Links","developer-ui":"Developer UI","pdisk-page":"PDisk page"}'),m=(0,p.wZ)("ydb-pDisk-info",{en:h});var b=s(75859);const x=(0,l.cn)("ydb-pdisk-info");function g(e){let{pDisk:t,nodeId:s,isPDiskPage:l=!1,...p}=e;const{PDiskId:h,Path:g,Guid:j,Category:N,Type:k,Device:f,Realtime:D,State:I,SerialNumber:S,TotalSize:y,AvailableSize:w}=t,T=Number(y),C=Number(w),V=[];if((0,n.D)(g)&&V.push({label:m("path"),value:g}),(0,n.D)(j)&&V.push({label:m("guid"),value:j}),(0,n.D)(N)&&(V.push({label:m("category"),value:N}),V.push({label:m("type"),value:k})),T>=0&&C>=0&&V.push({label:m("size"),value:(0,b.jsx)(v.y,{value:T-C,capacity:T,formatValues:o.q3,colorizeProgress:!0})}),(0,n.D)(I)&&V.push({label:m("state"),value:I}),(0,n.D)(f)&&V.push({label:m("device"),value:(0,b.jsx)(d.A,{status:f})}),(0,n.D)(D)&&V.push({label:m("realtime"),value:(0,b.jsx)(d.A,{status:D})}),(0,n.D)(S)&&V.push({label:m("serial-number"),value:S||i.jX}),(0,n.D)(h)&&(0,n.D)(s)){const e=(0,a.ds)(h,s),t=(0,r.ok)({nodeId:s,pDiskId:h});V.push({label:m("links"),value:(0,b.jsxs)("span",{className:x("links"),children:[!l&&(0,b.jsx)(u.j,{title:m("pdisk-page"),url:e,external:!1}),(0,b.jsx)(u.j,{title:m("developer-ui"),url:t})]})})}return(0,b.jsx)(c._,{info:V,...p})}},94178:(e,t,s)=>{s.d(t,{V:()=>i});var a=s(24362),n=s(75859);const l=(0,a.cn)("tag"),i=e=>{let{text:t,type:s}=e;return(0,n.jsx)("div",{className:l({type:s}),children:t})}},47057:(e,t,s)=>{s.d(t,{$:()=>o});var a=s(24362),n=s(94178),l=s(75859);const i=(0,a.cn)("tags"),o=e=>{let{tags:t,tagsType:s,className:a=""}=e;return(0,l.jsx)("div",{className:i(null,a),children:t&&t.map(((e,t)=>(0,l.jsx)(n.V,{text:e,type:s},t)))})}},22200:(e,t,s)=>{s.d(t,{K:()=>g});var a=s(54665),n=s(5922),l=s(24362),i=s(4119),o=s(48169),r=s(47651),d=s(69214),c=s(62206),u=s(32270),v=s(67359),p=s(30817);const h=JSON.parse('{"slot-id":"VDisk Slot Id","pool-name":"Storage Pool Name","kind":"Kind","guid":"GUID","incarnation-guid":"Incarnation GUID","instance-guid":"Instance GUID","replication-status":"Replicated","state-status":"VDisk State","space-status":"Disk Space","fresh-rank-satisfaction":"Fresh Rank Satisfaction","level-rank-satisfaction":"Level Rank Satisfaction","front-queues":"Front Queues","has-unreadable-blobs":"Has Unreadable Blobs","size":"Size","read-throughput":"Read Throughput","write-throughput":"Write Throughput","links":"Links","vdisk-page":"VDisk Page","developer-ui":"Developer UI","yes":"Yes","no":"No"}'),m=(0,p.wZ)("ydb-vDisk-info",{en:h});var b=s(75859);const x=(0,l.cn)("ydb-vdisk-info");function g(e){var t,s;let{data:l,isVDiskPage:p=!1,...h}=e;const{AllocatedSize:g,DiskSpace:j,FrontQueues:N,Guid:k,Replicated:f,VDiskState:D,VDiskSlotId:I,Kind:S,SatisfactionRank:y,AvailableSize:w,HasUnreadableBlobs:T,IncarnationGuid:C,InstanceGuid:V,StoragePoolName:P,ReadThroughput:z,WriteThroughput:A,PDiskId:R,NodeId:F}=l,U=[];var Z,E;((0,n.D)(I)&&U.push({label:m("slot-id"),value:I}),(0,n.D)(P)&&U.push({label:m("pool-name"),value:P}),(0,n.D)(D)&&U.push({label:m("state-status"),value:D}),Number(g)>=0&&Number(w)>=0&&U.push({label:m("size"),value:(0,b.jsx)(v.y,{value:g,capacity:Number(g)+Number(w),formatValues:i.q3,colorizeProgress:!0})}),(0,n.D)(S)&&U.push({label:m("kind"),value:S}),(0,n.D)(k)&&U.push({label:m("guid"),value:k}),(0,n.D)(C)&&U.push({label:m("incarnation-guid"),value:C}),(0,n.D)(V)&&U.push({label:m("instance-guid"),value:V}),(0,n.D)(f)&&U.push({label:m("replication-status"),value:m(f?"yes":"no")}),(0,n.D)(j)&&U.push({label:m("space-status"),value:(0,b.jsx)(d.A,{status:j})}),(0,n.D)(null===y||void 0===y||null===(t=y.FreshRank)||void 0===t?void 0:t.Flag))&&U.push({label:m("fresh-rank-satisfaction"),value:(0,b.jsx)(d.A,{status:null===y||void 0===y||null===(Z=y.FreshRank)||void 0===Z?void 0:Z.Flag})});(0,n.D)(null===y||void 0===y||null===(s=y.LevelRank)||void 0===s?void 0:s.Flag)&&U.push({label:m("level-rank-satisfaction"),value:(0,b.jsx)(d.A,{status:null===y||void 0===y||null===(E=y.LevelRank)||void 0===E?void 0:E.Flag})});if((0,n.D)(N)&&U.push({label:m("front-queues"),value:(0,b.jsx)(d.A,{status:N})}),(0,n.D)(T)&&U.push({label:m("has-unreadable-blobs"),value:m(T?"yes":"no")}),(0,n.D)(z)&&U.push({label:m("read-throughput"),value:(0,r.Qt)(z)}),(0,n.D)(A)&&U.push({label:m("write-throughput"),value:(0,r.Qt)(A)}),(0,n.D)(R)&&(0,n.D)(F)&&(0,n.D)(I)){const e=(0,a.By)(I,R,F),t=(0,o.yf)({nodeId:F,pDiskId:R,vDiskSlotId:I});U.push({label:m("links"),value:(0,b.jsxs)("span",{className:x("links"),children:[!p&&(0,b.jsx)(u.j,{title:m("vdisk-page"),url:e,external:!1}),(0,b.jsx)(u.j,{title:m("developer-ui"),url:t})]})})}return(0,b.jsx)(c._P,{info:U,...h})}},55515:(e,t,s)=>{s.r(t),s.d(t,{Node:()=>ke,STORAGE_ROLE:()=>Ne});var a=s(68963),n=s(8179),l=s(49352),i=s(86974),o=s(83203),r=s(50422),d=s(39683),c=s(88776),u=s(24362),v=s(48169),p=s(69214),h=s(47057),m=s(75859);const b=(0,u.cn)("basic-node-viewer"),x=e=>{let t,{node:s,additionalNodesProps:n,className:l}=e;return null!==n&&void 0!==n&&n.getNodeRef?t=n.getNodeRef(s)+"internal":s.NodeId&&(t=(0,v.wq)(s.NodeId)+"internal"),(0,m.jsx)("div",{className:b(null,l),children:s?(0,m.jsxs)(a.Fragment,{children:[(0,m.jsx)("div",{className:b("title"),children:"Node"}),(0,m.jsx)(p.A,{status:s.SystemState,name:s.Host}),t&&(0,m.jsx)("a",{rel:"noopener noreferrer",className:b("link",{external:!0}),href:t,target:"_blank",children:(0,m.jsx)(c.J,{data:d.Z})}),(0,m.jsxs)("div",{className:b("id"),children:[(0,m.jsx)("label",{className:b("label"),children:"NodeID"}),(0,m.jsx)("label",{children:s.NodeId})]}),s.DC&&(0,m.jsx)(h.$,{tags:[s.DC]}),s.Roles&&(0,m.jsx)(h.$,{tags:s.Roles,tagsType:"blue"})]}):(0,m.jsx)("div",{className:"error",children:"no data"})})};var g=s(26688),j=s(52317),N=s(23373);const k=(0,u.cn)("ydb-pool-usage"),f=e=>{let t="green";return e>60&&e<=80?t="yellow":e>80&&(t="red"),t},D=e=>{let{data:t={}}=e;const{Threads:s,Name:a="Unknown",Usage:n=0}=t,l=n&&s,i=Math.floor(100*n),o=i>100?100:i;return(0,m.jsxs)("div",{className:k(),children:[(0,m.jsxs)("div",{className:k("info"),children:[(0,m.jsx)("div",{className:k("pool-name"),children:a}),l&&(0,m.jsxs)("div",{className:k("value"),children:[(0,m.jsxs)("div",{className:k("percents"),children:[i<1?"<1":i,"%"]}),(0,m.jsxs)("div",{className:k("threads"),children:["(\xd7",s,")"]})]})]}),(0,m.jsx)("div",{className:k("visual"),children:(0,m.jsx)("div",{className:k("usage-line",{type:f(o)}),style:{width:"".concat(o,"%")}})})]})};var I=s(67359);const S=(0,u.cn)("full-node-viewer"),y=e=>{var t,s,a,n;let{node:l,className:i}=e;const o=null===l||void 0===l||null===(t=l.Endpoints)||void 0===t?void 0:t.map((e=>{let{Name:t,Address:s}=e;return{label:t,value:s}})),r=[];null!==l&&void 0!==l&&null!==(s=l.Tenants)&&void 0!==s&&s.length&&r.push({label:"Database",value:l.Tenants[0]}),r.push({label:"Version",value:null===l||void 0===l?void 0:l.Version},{label:"Uptime",value:null===l||void 0===l?void 0:l.Uptime},{label:"DC",value:(null===l||void 0===l?void 0:l.DataCenterDescription)||(null===l||void 0===l?void 0:l.DC)},{label:"Rack",value:null===l||void 0===l?void 0:l.Rack});const d=null===l||void 0===l||null===(a=l.LoadAveragePercents)||void 0===a?void 0:a.map(((e,t)=>({label:j.x5[t],value:(0,m.jsx)(I.y,{value:e,percents:!0,colorizeProgress:!0,capacity:100})})));return(0,m.jsx)("div",{className:"".concat(S()," ").concat(i),children:l?(0,m.jsxs)("div",{className:S("common-info"),children:[(0,m.jsxs)("div",{children:[(0,m.jsx)("div",{className:S("section-title"),children:"Pools"}),(0,m.jsx)("div",{className:S("section",{pools:!0}),children:null===l||void 0===l||null===(n=l.PoolStats)||void 0===n?void 0:n.map(((e,t)=>(0,m.jsx)(D,{data:e},t)))})]}),o&&o.length&&(0,m.jsx)(N.Z,{title:"Endpoints",className:S("section"),info:o}),(0,m.jsx)(N.Z,{title:"Common info",className:S("section"),info:r}),(0,m.jsx)(N.Z,{title:"Load average",className:S("section",{average:!0}),info:d})]}):(0,m.jsx)("div",{className:"error",children:"no data"})})};var w=s(16670),T=s(54665),C=s(79061),V=s(905),P=s(51688);const z=e=>{var t;if(null===(t=e.SystemStateInfo)||void 0===t||!t.length)return{};const s=e.SystemStateInfo[0];return(0,P.Ns)(s)},A=V.h.injectEndpoints({endpoints:e=>({getNodeInfo:e.query({queryFn:async(e,t)=>{let{nodeId:s}=e,{signal:a}=t;try{const e=await window.api.getNodeInfo(s,{signal:a});return{data:z(e)}}catch(n){return{error:n}}},providesTags:["All"]}),getNodeStructure:e.query({queryFn:async(e,t)=>{let{nodeId:s}=e,{signal:a}=t;try{return{data:await window.api.getStorageInfo({nodeId:s},{signal:a})}}catch(n){return{error:n}}},providesTags:["All"]})}),overrideExisting:"throw"});var R=s(34051),F=s(70885),U=s(66809),Z=s(92398),E=s(92820),G=s(85198),B=s.n(G),q=s(36313),J=s(4119),O=s(3764);const L=(0,q.P1)((e=>e),(e=>A.endpoints.getNodeStructure.select({nodeId:e}))),_=(0,q.P1)((e=>e),((e,t)=>L(t)),((e,t)=>t(e).data)),K=(0,q.P1)(((e,t)=>Number(t)),((e,t)=>_(e,t)),((e,t)=>{const s=null===t||void 0===t?void 0:t.StoragePools,a={};null===s||void 0===s||s.forEach((t=>{const s=t.Groups;null===s||void 0===s||s.forEach((s=>{var n;const l=null===(n=s.VDisks)||void 0===n?void 0:n.filter((t=>t.NodeId===e));null===l||void 0===l||l.forEach((s=>{const n=(0,J.a2)(s.VDiskId),l=(0,O.b)(s.PDisk),i=l.PDiskId;a[String(i)]||(a[String(i)]={vDisks:{},...l}),a[String(i)].vDisks[n]={...s,PDiskId:i,NodeId:e,StoragePoolName:t.Name}}))}))}));return Object.keys(a).reduce(((e,t)=>{const s=a[t].vDisks,n=Object.keys(s).reduce(((e,t,a)=>(e.push({...s[t],id:t,order:a}),e)),[]);return e[t]={...a[t],vDisks:n},e}),{})}));var Q=s(67585),H=s(19812),M=s(17176),Y=s(68330),$=s(33569),W=s(8659),X=s(75850),ee=s(17632),te=s(5922),se=s(30817);const ae=JSON.parse('{"pdisk.developer-ui-button-title":"PDisk Developer UI page","vdisk.developer-ui-button-title":"VDisk Developer UI page"}'),ne=JSON.parse('{"pdisk.developer-ui-button-title":"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 PDisk \u0432 Developer UI","vdisk.developer-ui-button-title":"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 VDisk \u0432 Developer UI"}'),le=(0,se.wZ)("ydb-node-page",{en:ae,ru:ne}),ie=(0,u.cn)("kv-node-structure");function oe(e){let{label:t,value:s,className:a}=e;return(0,m.jsxs)("span",{className:ie("pdisk-title-item",a),children:[t&&(0,m.jsxs)("span",{className:ie("pdisk-title-item-label"),children:[t,":"]}),(0,m.jsx)("span",{className:ie("pdisk-title-item-value"),children:s})]})}var re=s(22200);const de=(0,u.cn)("kv-node-structure");function ce(e){let{data:t}=e;const{VDiskState:s,VDiskId:n}=t;return(0,m.jsxs)(a.Fragment,{children:[(0,m.jsxs)("div",{className:de("row"),children:[(0,m.jsx)("span",{className:de("title"),children:"VDisk "}),(0,m.jsx)(p.A,{status:s===ee.H.OK?X.K.Green:X.K.Red,name:(0,J.a2)(n)})]}),(0,m.jsx)("div",{className:de("column"),children:(0,m.jsx)(re.K,{className:de("section"),data:t})})]})}const ue=(0,u.cn)("kv-node-structure");var ve;!function(e){e.slotId="VDiskSlotId",e.VDiskState="VDiskState",e.Size="Size",e.Info="Info"}(ve||(ve={}));const pe={VDiskSlotId:"Slot id",VDiskState:"Status",Size:"Size",Info:""};function he(e){let{pDiskId:t,selectedVdiskId:s,nodeId:a}=e;return[{name:ve.slotId,header:pe[ve.slotId],width:100,render:e=>{let{row:n}=e;const l=n.VDiskSlotId;let i=null;return(0,te.D)(a)&&(0,te.D)(t)&&(0,te.D)(l)&&(i=(0,v.yf)({nodeId:a,pDiskId:t,vDiskSlotId:l})),(0,m.jsxs)("div",{className:ue("vdisk-id",{selected:n.id===s}),children:[(0,m.jsx)("span",{children:l}),i&&(0,m.jsx)(M.z,{size:"s",className:ue("external-button",{hidden:!0}),href:i,target:"_blank",title:le("vdisk.developer-ui-button-title"),children:(0,m.jsx)(c.J,{data:d.Z})})]})},align:H.ZP.LEFT},{name:ve.VDiskState,header:pe[ve.VDiskState],width:70,render:e=>{let{row:t}=e;return(0,m.jsx)(p.A,{status:t.VDiskState===ee.H.OK?X.K.Green:X.K.Red})},sortAccessor:e=>e.VDiskState===ee.H.OK?1:0,align:H.ZP.CENTER},{name:ve.Size,header:pe[ve.Size],width:100,render:e=>{let{row:t}=e;return(0,m.jsx)(I.y,{value:t.AllocatedSize,capacity:Number(t.AllocatedSize)+Number(t.AvailableSize),formatValues:J.q3,colorizeProgress:!0})},sortAccessor:e=>Number(e.AllocatedSize),align:H.ZP.CENTER},{name:ve.Info,header:pe[ve.Info],width:70,render:e=>{let{row:t}=e;return(0,m.jsx)(Y.J,{placement:["right"],content:(0,m.jsx)(ce,{data:t}),tooltipContentClassName:ue("vdisk-details"),children:(0,m.jsx)(M.z,{view:"flat-secondary",className:ue("vdisk-details-button",{selected:t.id===s}),children:(0,m.jsx)(c.J,{data:Q.Z,size:18})})})},sortable:!1}]}function me(e){let{id:t,data:s,selectedVdiskId:n,nodeId:l,unfolded:i}=e;const[o,r]=a.useState(null!==i&&void 0!==i&&i),{TotalSize:d=0,AvailableSize:c=0,Device:u,PDiskId:v,Type:h,vDisks:b}=s,x=Number(d),g=Number(c);return(0,m.jsxs)("div",{className:ue("pdisk"),id:t,children:[(0,m.jsxs)("div",{className:ue("pdisk-header"),children:[(0,m.jsxs)("div",{className:ue("pdisk-title-wrapper"),children:[(0,m.jsx)(p.A,{status:u}),(0,m.jsx)(oe,{label:"PDiskID",value:v,className:ue("pdisk-title-id")}),(0,m.jsx)(oe,{value:h,className:ue("pdisk-title-type")}),(0,m.jsx)(I.y,{value:x-g,capacity:x,formatValues:J.q3,colorizeProgress:!0,className:ue("pdisk-title-size")}),(0,m.jsx)(oe,{label:"VDisks",value:b.length})]}),(0,m.jsx)(M.z,{onClick:o?()=>{r(!1)}:()=>{r(!0)},view:"flat-secondary",children:(0,m.jsx)($.F,{direction:o?"top":"bottom"})})]}),o&&(B()(s)?(0,m.jsx)("div",{children:"No information about PDisk"}):(0,m.jsxs)("div",{children:[(0,m.jsx)(W.P,{pDisk:s,nodeId:l,className:ue("pdisk-details")}),(0,m.jsxs)("div",{className:ue("vdisks-container"),children:[(0,m.jsx)("div",{className:ue("vdisks-header"),children:"VDisks"}),(0,m.jsx)(H.ZP,{theme:"yandex-cloud",data:b,columns:he({nodeId:l,pDiskId:v,selectedVdiskId:n}),settings:{...j.LE,dynamicRender:!1},rowClassName:e=>e.id===n?ue("selected-vdisk"):""})]})]}))]})}const be=(0,u.cn)("kv-node-structure");function xe(e){let{type:t,id:s}=e;return"".concat(t,"-").concat(s)}const ge=function(e){let{nodeId:t,className:s}=e;const n=(0,R.ix)((e=>K(e,t))),[l]=(0,R.Rj)(),{currentData:i,isFetching:o,error:r}=A.useGetNodeStructureQuery({nodeId:t},{pollingInterval:l}),d=o&&void 0===i,{pdiskId:c,vdiskId:u}=E.parse(window.location.href,!0).query,v=a.useRef(null),p=a.useRef(!1);return a.useEffect((()=>{if(!B()(n)&&!p.current&&v.current){const t=document.getElementById(xe({type:"pdisk",id:c}));let s=0;if(u){var e;const t=null===(e=n[c])||void 0===e?void 0:e.vDisks,a=null===t||void 0===t?void 0:t.find((e=>e.id===u)),l=a?document.querySelector(".data-table"):void 0,i=(null===a||void 0===a?void 0:a.order)||0;l&&(s+=l.offsetTop+40*i)}t&&(v.current.scrollTo({behavior:"smooth",top:s||t.offsetTop}),p.current=!0)}}),[n,c,u]),(0,m.jsx)("div",{className:be(),ref:v,children:(0,m.jsx)("div",{className:s,children:d?(0,m.jsx)(w.a,{size:"m"}):r?(0,m.jsx)(g.V,{error:r}):(()=>{const e=Object.keys(n);return e.length>0?e.map((e=>(0,m.jsx)(me,{data:n[e],id:xe({type:"pdisk",id:e}),unfolded:c===e,selectedVdiskId:u,nodeId:t},e))):"There is no information about node structure."})()})})},je=(0,u.cn)("node"),Ne="Storage";function ke(e){var t;const s=a.useRef(null),d=(0,R.zL)(),c=(0,i.TH)(),u=null!==(t=(0,i.$B)(T.ZP.node))&&void 0!==t?t:Object.create(null),{id:v,activeTab:p}=u.params,{tenantName:h}=(0,T.mB)(c),[b]=(0,R.Rj)(),{currentData:j,isFetching:N,error:k}=A.useGetNodeInfoQuery({nodeId:v},{pollingInterval:b}),f=N&&void 0===j,D=j,{activeTabVerified:I,nodeTabs:S}=a.useMemo((()=>{var e;const t=((null===D||void 0===D||null===(e=D.Roles)||void 0===e?void 0:e.find((e=>e===Ne)))?Z.ZJ:Z.ZJ.filter((e=>e.id!==Z.P_))).map((e=>({...e,title:e.name})));let s=t.find((e=>{let{id:t}=e;return t===p}));return s||(s=t[0]),{activeTabVerified:s,nodeTabs:t}}),[p,D]);a.useEffect((()=>{var e;const t=(null===D||void 0===D||null===(e=D.Tenants)||void 0===e?void 0:e[0])||(null===h||void 0===h?void 0:h.toString());d((0,C.J)("node",{tenantName:t,nodeId:v}))}),[d,D,v,h]);const V=()=>{switch(I.id){case Z.P_:return(0,m.jsx)("div",{className:je("storage"),children:(0,m.jsx)(F.V,{nodeId:v,parentContainer:s.current})});case Z.IA:return(0,m.jsx)(U.J,{nodeId:v,className:je("node-page-wrapper")});case Z.mD:return(0,m.jsx)(y,{node:D,className:je("overview-wrapper")});case Z.pV:return(0,m.jsx)(ge,{className:je("node-page-wrapper"),nodeId:v});default:return!1}};return f?(0,m.jsx)(w.a,{size:"l"}):k?(0,m.jsx)(g.V,{error:k}):D?(0,m.jsxs)("div",{className:je(null,e.className),ref:s,children:[(0,m.jsx)(l.ql,{titleTemplate:"%s \u2014 ".concat(D.Host," \u2014 YDB Monitoring"),defaultTitle:"".concat(D.Host," \u2014 YDB Monitoring"),children:(0,m.jsx)("title",{children:I.title})}),(0,m.jsx)(x,{node:D,additionalNodesProps:e.additionalNodesProps,className:je("header")}),(0,m.jsxs)("div",{className:je("tabs"),children:[(0,m.jsx)(n.m,{size:"l",items:S,activeTab:I.id,wrapTo:(e,t)=>{let{id:s}=e;return(0,m.jsx)(o.rU,{to:(0,T.ax)(T.ZP.node,{id:v,activeTab:s}),className:je("tab"),children:t},s)},allowNotSelected:!0}),(0,m.jsx)(r.q,{})]}),(0,m.jsx)("div",{className:je("content"),children:V()})]}):(0,m.jsx)("div",{className:"error",children:"no node data"})}},66809:(e,t,s)=>{s.d(t,{J:()=>z});var a=s(66950),n=s(10288),l=s(14979),i=s(88776),o=s(17095),r=s(14659),d=s(58682),c=s(69214),u=s(26688),v=s(74170),p=s(2098),h=s(22692),m=s(54665),b=s(27102),x=s(99399),g=s(28164),j=s(24362),N=s(52317),k=s(4119),f=s(34051),D=s(83496),I=s(92398),S=s(30817);const y=JSON.parse('{"noTabletsData":"No tablets data","Type":"Type","Tablet":"Tablet","State":"State","Node ID":"Node ID","Node FQDN":"Node FQDN","Generation":"Generation","Uptime":"Uptime","dialog.kill":"The tablet will be restarted. Do you want to proceed?","controls.kill-not-allowed":"You don\'t have enough rights to restart tablet"}'),w=(0,S.wZ)("ydb-tablets",{en:y});var T=s(75859);const C=(0,j.cn)("tablets"),V=[{name:"Type",get header(){return w("Type")},render:e=>{let{row:t}=e;return(0,T.jsxs)("span",{children:[t.Type," ",t.Leader?"":(0,T.jsx)(n.x,{color:"secondary",children:"follower"})]})}},{name:"TabletId",width:230,get header(){return w("Tablet")},render:e=>{var t;let{row:s}=e;const a=s.TabletId&&(0,m.ax)(m.ZP.tablet,{id:s.TabletId},{nodeId:s.NodeId,type:s.Type});return(0,T.jsx)(c.A,{name:null===(t=s.TabletId)||void 0===t?void 0:t.toString(),path:a,hasClipboardButton:!0,showStatus:!1,additionalControls:(0,T.jsx)(d.T,{href:"".concat(b.y3,"/tablets?TabletID=").concat(s.TabletId)})})}},{name:"State",get header(){return w("State")},render:e=>{let{row:t}=e;return(0,T.jsx)(l._,{theme:(0,D.KR)(t.State),children:t.State})}},{name:"NodeId",get header(){return w("Node ID")},render:e=>{let{row:t}=e;const s=void 0===t.NodeId?void 0:(0,I.a3)(t.NodeId);return(0,T.jsx)(v.h,{to:s,children:t.NodeId})},align:"right"},{name:"fqdn",get header(){return w("Node FQDN")},render:e=>{let{row:t}=e;return t.fqdn?(0,T.jsx)(c.A,{name:t.fqdn,showStatus:!1,hasClipboardButton:!0}):(0,T.jsx)("span",{children:"\u2014"})}},{name:"Generation",get header(){return w("Generation")},align:"right"},{name:"Uptime",get header(){return w("Uptime")},render:e=>{let{row:t}=e;return(0,k.fG)(t.ChangeTime)},sortAccessor:e=>-Number(e.ChangeTime),align:"right"},{name:"Actions",sortable:!1,resizeable:!1,header:"",render:e=>{let{row:t}=e;return(0,T.jsx)(P,{...t})}}];function P(e){const t=e.State===g.g.Stopped,s=(0,f.zL)(),{isUserAllowedToMakeChanges:n}=(0,f.ix)((e=>e.authentication));return(0,T.jsx)(r.U,{buttonView:"outlined",dialogContent:w("dialog.kill"),onConfirmAction:()=>window.api.killTablet(e.TabletId),onConfirmActionSuccess:()=>{s(x.zg.util.invalidateTags(["All"]))},buttonDisabled:t||!n,withPopover:!0,popoverContent:w("controls.kill-not-allowed"),popoverDisabled:n,children:(0,T.jsx)(i.J,{data:a.Z})})}function z(e){let{nodeId:t,path:s,className:a}=e;const[n]=(0,f.Rj)();let l={};const i=void 0===t?void 0:String(t);void 0!==i?l={nodes:[String(i)]}:s&&(l={path:s});const{currentData:r,isFetching:d,error:c}=x.zg.useGetTabletsInfoQuery(0===Object.keys(l).length?o.CN:l,{pollingInterval:n}),v=d&&void 0===r,m=(0,f.ix)((e=>(0,x.Sq)(e,l)));return v?(0,T.jsx)(h.h,{}):c?(0,T.jsx)(u.V,{error:c}):(0,T.jsx)("div",{className:C(null,a),children:(0,T.jsx)(p.G,{columns:V,data:m,settings:N.LE,emptyDataMessage:w("noTabletsData")})})}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/7418.8548a710.chunk.js b/ydb/core/viewer/monitoring/static/js/7418.8548a710.chunk.js new file mode 100644 index 000000000000..3cd799d11d52 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/7418.8548a710.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[7418],{84317:(e,t,n)=>{n.d(t,{Z:()=>a});var l=n(68963);const a=e=>l.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),l.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 1.5a6.501 6.501 0 0 1 6.445 5.649.75.75 0 1 1-1.488.194A5.001 5.001 0 0 0 4.43 4.5h1.32a.75.75 0 0 1 0 1.5h-3A.75.75 0 0 1 2 5.25v-3a.75.75 0 1 1 1.5 0v1.06A6.48 6.48 0 0 1 8 1.5Zm5.25 13a.75.75 0 0 0 .75-.75v-3a.75.75 0 0 0-.75-.75h-3a.75.75 0 1 0 0 1.5h1.32a5.001 5.001 0 0 1-8.528-2.843.75.75 0 1 0-1.487.194 6.501 6.501 0 0 0 10.945 3.84v1.059c0 .414.336.75.75.75Z",clipRule:"evenodd"}))},66950:(e,t,n)=>{n.d(t,{Z:()=>a});var l=n(68963);const a=e=>l.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),l.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 1.5a6.501 6.501 0 0 0-6.445 5.649.75.75 0 1 0 1.488.194A5.001 5.001 0 0 1 11.57 4.5h-1.32a.75.75 0 0 0 0 1.5h3a.75.75 0 0 0 .75-.75v-3a.75.75 0 0 0-1.5 0v1.06A6.48 6.48 0 0 0 8 1.5Zm-5.25 13a.75.75 0 0 1-.75-.75v-3a.75.75 0 0 1 .75-.75h3a.75.75 0 0 1 0 1.5H4.43a5.001 5.001 0 0 0 8.528-2.843.75.75 0 1 1 1.487.194A6.501 6.501 0 0 1 3.5 12.691v1.059a.75.75 0 0 1-.75.75Z",clipRule:"evenodd"}))},57225:(e,t,n)=>{n.d(t,{Z:()=>a});var l=n(68963);const a=e=>l.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),l.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0Zm-6 2.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8.75 5a.75.75 0 0 0-1.5 0v2.5a.75.75 0 0 0 1.5 0V5Z",clipRule:"evenodd"}))},67585:(e,t,n)=>{n.d(t,{Z:()=>a});var l=n(68963);const a=e=>l.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),l.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm1-9.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8 7.75a.75.75 0 0 1 .75.75V11a.75.75 0 0 1-1.5 0V8.5A.75.75 0 0 1 8 7.75Z",clipRule:"evenodd"}))},76506:(e,t,n)=>{n.d(t,{Z:()=>a});var l=n(68963);const a=e=>l.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),l.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14ZM6.53 5.47a.75.75 0 0 0-1.06 1.06L6.94 8 5.47 9.47a.75.75 0 1 0 1.06 1.06L8 9.06l1.47 1.47a.75.75 0 1 0 1.06-1.06L9.06 8l1.47-1.47a.75.75 0 1 0-1.06-1.06L8 6.94 6.53 5.47Z",clipRule:"evenodd"}))},71549:(e,t,n)=>{n.d(t,{Z:()=>a});var l=n(68963);const a=e=>l.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),l.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"m3.003 4.702 4.22-2.025a1.796 1.796 0 0 1 1.554 0l4.22 2.025a.886.886 0 0 1 .503.8V6a8.55 8.55 0 0 1-3.941 7.201l-.986.631a1.063 1.063 0 0 1-1.146 0l-.986-.63A8.55 8.55 0 0 1 2.5 6v-.498c0-.341.196-.652.503-.8Zm3.57-3.377L2.354 3.35A2.387 2.387 0 0 0 1 5.502V6a10.05 10.05 0 0 0 4.632 8.465l.986.63a2.563 2.563 0 0 0 2.764 0l.986-.63A10.05 10.05 0 0 0 15 6v-.498c0-.918-.526-1.755-1.354-2.152l-4.22-2.025a3.296 3.296 0 0 0-2.852 0ZM9.5 7a1.5 1.5 0 0 1-.75 1.3v1.95a.75.75 0 0 1-1.5 0V8.3A1.5 1.5 0 1 1 9.5 7Z",clipRule:"evenodd"}))},71586:(e,t,n)=>{n.d(t,{Z:()=>a});var l=n(68963);const a=e=>l.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),l.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M5.836 2.244c.962-1.665 3.366-1.665 4.328 0l4.917 8.505c.964 1.666-.239 3.751-2.164 3.751H3.083c-1.925 0-3.128-2.085-2.164-3.751l4.917-8.505ZM8 5a.75.75 0 0 1 .75.75v2a.75.75 0 1 1-1.5 0v-2A.75.75 0 0 1 8 5Zm1 5.75a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",clipRule:"evenodd"}))},2639:(e,t,n)=>{n.d(t,{B:()=>a,M:()=>o});var l=n(68963);function a(e,t){return e.map((e=>{var n;let l;e.sub&&(l=a(e.sub,t));const o=null!==(n=t[e.name])&&void 0!==n?n:e.width;return Object.assign(Object.assign({},e),{width:o,sub:l})}))}function o(e){let{saveSizes:t,getSizes:n}=e;const[a,o]=l.useState((()=>n()));return[a,l.useCallback(((e,n)=>{o((l=>{const a=Object.assign(Object.assign({},l),{[e]:n});return t(a),a}))}),[t])]}},25822:(e,t,n)=>{n.d(t,{V:()=>R});var l=n(68963),a=n(62685),o=n(74100),s=n(95753),i=n(57107),r=n(89459),c=n(36951),d=n(3262),u=n(31445);const m=(0,c.Ge)("modal");function p(e){let{open:t=!1,keepMounted:n=!1,disableBodyScrollLock:c=!1,disableEscapeKeyDown:p,disableOutsideClick:v,disableFocusTrap:h,disableAutoFocus:E,focusTrap:w=!0,autoFocus:b=!0,restoreFocusRef:y,onEscapeKeyDown:f,onEnterKeyDown:g,onOutsideClick:C,onClose:k,onTransitionEnter:N,onTransitionEntered:O,onTransitionExit:x,onTransitionExited:D,children:B,style:K,contentOverflow:R="visible",className:Z,contentClassName:A,"aria-labelledby":T,"aria-label":L,container:F,qa:M}=e;const j=l.useRef(null),z=l.useRef(null),[G,S]=l.useState(!1);(0,o.y)({enabled:!c&&(t||G)});const q=(0,s.H)({enabled:t||G,restoreFocusRef:y,focusTrapped:!0});return(0,d.s)({open:t,disableEscapeKeyDown:p,disableOutsideClick:v,onEscapeKeyDown:f,onEnterKeyDown:g,onOutsideClick:C,onClose:k,contentRefs:[z],type:"modal"}),l.createElement(a.Z,{nodeRef:j,in:t,addEndListener:e=>{var t;return null===(t=j.current)||void 0===t?void 0:t.addEventListener("animationend",e)},classNames:(0,u.Y)(m),mountOnEnter:!n,unmountOnExit:!n,appear:!0,onEnter:()=>{S(!0),null===N||void 0===N||N()},onExit:()=>{S(!0),null===x||void 0===x||x()},onEntered:()=>{S(!1),null===O||void 0===O||O()},onExited:()=>{S(!1),null===D||void 0===D||D()}},l.createElement(i.h,{container:F},l.createElement("div",{ref:j,style:K,className:m({open:t},Z),"data-qa":M},l.createElement("div",{className:m("content-aligner")},l.createElement("div",{className:m("content-wrapper")},l.createElement(r.i,{enabled:!h&&w&&t&&!G,autoFocus:!E&&b},l.createElement("div",Object.assign({ref:z,tabIndex:-1,role:"dialog","aria-modal":t,"aria-label":L,"aria-labelledby":T,className:m("content",{"has-scroll":"auto"===R},A)},q),B)))))))}var v=n(77280),h=n(17176),E=n(88776),w=n(54973);const b=JSON.parse('{"close":"Close dialog"}'),y=JSON.parse('{"close":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u0434\u0438\u0430\u043b\u043e\u0433\u043e\u0432\u043e\u0435 \u043e\u043a\u043d\u043e"}'),f=(0,w.e)({en:b,ru:y},"Dialog"),g=(0,c.Ge)("dialog-btn-close");function C(e){let{onClose:t}=e;return l.createElement("div",{className:g()},l.createElement(h.z,{view:"flat",size:"l",className:g("btn"),onClick:e=>t(e,{isOutsideClick:!1}),extraProps:{"aria-label":f("close")}},l.createElement(E.J,{data:v.Z,size:20})))}const k=(0,c.Ge)("dialog-body");const N=(0,c.Ge)("dialog-divider");var O=n(44920);const x=(0,c.Ge)("dialog-footer");class D extends l.Component{constructor(){super(...arguments),this.errorTooltipRef=l.createRef(),this.handleKeyDown=e=>{"Enter"===e.key&&(e.preventDefault(),this.props.onClickButtonApply&&this.props.onClickButtonApply(e))}}componentDidMount(){this.props.listenKeyEnter&&this.attachKeyDownListeners()}componentDidUpdate(e){!this.props.listenKeyEnter&&e.listenKeyEnter&&this.detachKeyDownListeners(),this.props.listenKeyEnter&&!e.listenKeyEnter&&this.attachKeyDownListeners()}componentWillUnmount(){this.detachKeyDownListeners()}render(){const{onClickButtonCancel:e,onClickButtonApply:t,loading:n,textButtonCancel:a,textButtonApply:o,propsButtonCancel:s,propsButtonApply:i,preset:r,children:c,errorText:d,showError:u,renderButtons:m}=this.props,p=l.createElement("div",{className:x("button",{action:"cancel"})},l.createElement(h.z,Object.assign({view:o?"flat":"normal",size:"l",width:"max",onClick:e,disabled:n},s),a)),v=l.createElement("div",{className:x("button",{action:"apply"})},l.createElement(h.z,Object.assign({ref:this.errorTooltipRef,type:"submit",view:"action",size:"l",width:"max",onClick:t,loading:n,className:x("button-apply",{preset:r})},i),o),d&&l.createElement(O.G,{open:u,anchorRef:this.errorTooltipRef,placement:["bottom","top"],disableLayer:!0,disablePortal:!0,hasArrow:!0},l.createElement("div",{className:x("error")},d)));return l.createElement("div",{className:x()},l.createElement("div",{className:x("children")},c),l.createElement("div",{className:x("bts-wrapper")},m?m(v,p):l.createElement(l.Fragment,null,a&&p,o&&v)))}attachKeyDownListeners(){setTimeout((()=>{window.addEventListener("keydown",this.handleKeyDown)}),0)}detachKeyDownListeners(){window.removeEventListener("keydown",this.handleKeyDown)}}D.defaultProps={preset:"default",showError:!1,listenKeyEnter:!1};const B=(0,c.Ge)("dialog-header");const K=(0,c.Ge)("dialog");class R extends l.Component{constructor(){super(...arguments),this.handleCloseButtonClick=e=>{const{onClose:t}=this.props;t(e.nativeEvent,"closeButtonClick")}}render(){const{container:e,children:t,open:n,disableBodyScrollLock:a,disableEscapeKeyDown:o,disableOutsideClick:s,disableFocusTrap:i,disableAutoFocus:r,restoreFocusRef:c,keepMounted:d,size:u,contentOverflow:m="visible",className:v,modalClassName:h,hasCloseButton:E,onEscapeKeyDown:w,onEnterKeyDown:b,onOutsideClick:y,onClose:f,onTransitionEnter:g,onTransitionEntered:k,onTransitionExit:N,onTransitionExited:O,"aria-label":x,"aria-labelledby":D,qa:B}=this.props;return l.createElement(p,{open:n,contentOverflow:m,disableBodyScrollLock:a,disableEscapeKeyDown:o,disableOutsideClick:s,disableFocusTrap:i,disableAutoFocus:r,restoreFocusRef:c,keepMounted:d,onEscapeKeyDown:w,onEnterKeyDown:b,onOutsideClick:y,onClose:f,onTransitionEnter:g,onTransitionEntered:k,onTransitionExit:N,onTransitionExited:O,className:K("modal",h),"aria-label":x,"aria-labelledby":D,container:e,qa:B},l.createElement("div",{className:K({size:u,"has-close":E,"has-scroll":"auto"===m},v)},t,E&&l.createElement(C,{onClose:this.handleCloseButtonClick})))}}R.defaultProps={disableBodyScrollLock:!1,disableEscapeKeyDown:!1,disableOutsideClick:!1,keepMounted:!1,hasCloseButton:!0},R.Footer=D,R.Header=function(e){const{caption:t="",insertBefore:n,insertAfter:a,className:o,id:s}=e;return l.createElement("div",{className:B(null,o)},n,l.createElement("div",{className:B("caption"),id:s},t),a)},R.Body=function(e){const{className:t,hasBorders:n=!1}=e;return l.createElement("div",{className:k({"has-borders":n},t)},e.children)},R.Divider=function(e){let{className:t}=e;return l.createElement("div",{className:N(null,t)})}},56711:(e,t,n)=>{n.d(t,{O:()=>o});var l=n(68963);const a=(0,n(36951).Ge)("skeleton");function o(e){let{className:t,style:n,qa:o}=e;return l.createElement("div",{className:a(null,t),style:n,"data-qa":o})}},27320:(e,t,n)=>{n.d(t,{u:()=>d});var l=n(68963),a=n(48027),o=n(79004),s=n(44920),i=n(10288);const r=(0,n(36951).Ge)("tooltip"),c=["bottom","top"],d=e=>{const{children:t,content:n,disabled:d,placement:u=c,qa:m,id:p,className:v,style:h,disablePortal:E,contentClassName:w,openDelay:b=1e3,closeDelay:y}=e,[f,g]=l.useState(null),C=(0,o.p)(f,{openDelay:b,closeDelay:y,preventTriggerOnFocus:!0}),k=l.Children.only(t),N=k.ref,O=(0,a.c)(g,N);return l.createElement(l.Fragment,null,l.cloneElement(k,{ref:O}),f?l.createElement(s.G,{id:p,role:"tooltip",className:r(null,v),style:h,open:C&&!d,placement:u,anchorRef:{current:f},disablePortal:E,disableEscapeKeyDown:!0,disableOutsideClick:!0,disableLayer:!0,qa:m},l.createElement("div",{className:r("content",w)},l.createElement(i.x,{variant:"body-short",color:"complementary"},n))):null)}},56829:(e,t,n)=>{n.d(t,{F:()=>a});var l=n(40797);function a(){return(0,l.T)().theme}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/7542.d61fc913.chunk.js b/ydb/core/viewer/monitoring/static/js/7542.d61fc913.chunk.js new file mode 100644 index 000000000000..75a6c4c1a78d --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/7542.d61fc913.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[7542],{14659:(e,t,n)=>{n.d(t,{U:()=>w});var a=n(68963),s=n(17176),o=n(68330),l=n(76506),r=n(71586),i=n(25822),c=n(88776),d=n(24362),u=n(30817);const m=JSON.parse('{"default-error":"Something went wrong, action cannot be completed","no-rights-error":"You don\'t have enough rights to complete the operation","button-confirm":"Confirm","button-cancel":"Cancel","button-close":"Close"}'),p=(0,u.wZ)("ydb-critical-action-dialog",{en:m});var h=n(75859);const b=(0,d.cn)("ydb-critical-dialog"),v=e=>403===e.status?p("no-rights-error"):e.statusText?e.statusText:p("default-error");function g(e){let{visible:t,text:n,onClose:s,onConfirm:o,onConfirmActionSuccess:d,onConfirmActionError:u}=e;const[m,g]=a.useState(!1),[w,f]=a.useState(),y=async e=>(e.preventDefault(),g(!0),o().then((()=>{d(),s()})).catch((e=>{u(),f(e)})).finally((()=>{g(!1)})));return(0,h.jsx)(i.V,{open:t,hasCloseButton:!1,className:b(),size:"s",onClose:s,onTransitionExited:()=>f(void 0),children:w?(0,h.jsxs)(a.Fragment,{children:[(0,h.jsxs)(i.V.Body,{className:b("body"),children:[(0,h.jsx)("span",{className:b("error-icon"),children:(0,h.jsx)(l.Z,{width:"24",height:"22"})}),v(w)]}),(0,h.jsx)(i.V.Footer,{loading:!1,preset:"default",textButtonCancel:p("button-close"),onClickButtonCancel:s})]}):(0,h.jsxs)("form",{onSubmit:y,children:[(0,h.jsxs)(i.V.Body,{className:b("body"),children:[(0,h.jsx)("span",{className:b("warning-icon"),children:(0,h.jsx)(c.J,{data:r.Z,size:24})}),n]}),(0,h.jsx)(i.V.Footer,{loading:m,preset:"default",textButtonApply:p("button-confirm"),textButtonCancel:p("button-cancel"),propsButtonApply:{type:"submit"},onClickButtonCancel:s,onClickButtonApply:()=>{}})]})})}function w(e){let{children:t,onConfirmAction:n,onConfirmActionSuccess:l,dialogContent:r,buttonDisabled:i=!1,buttonView:c="action",buttonClassName:d,withPopover:u=!1,popoverContent:m,popoverPlacement:p="right",popoverDisabled:b=!0}=e;const[v,w]=a.useState(!1),[f,y]=a.useState(!1),x=()=>(0,h.jsx)(s.z,{onClick:()=>w(!0),view:c,disabled:i,loading:!i&&f,className:d,children:t});return(0,h.jsxs)(a.Fragment,{children:[(0,h.jsx)(g,{visible:v,text:r,onConfirm:async()=>{y(!0),await n(),y(!1)},onConfirmActionSuccess:async()=>{if(l){y(!0);try{await l()}catch{}finally{y(!1)}}},onConfirmActionError:()=>{y(!1)},onClose:()=>{w(!1)}}),u?(0,h.jsx)(o.J,{content:m,placement:p,disabled:b,children:x()}):x()]})}},90861:(e,t,n)=>{n.d(t,{m:()=>u});var a=n(27320),s=n(17176),o=n(11050),l=n(81434),r=n(24362),i=n(75859);const c=(0,r.cn)("clipboard-button");function d(e){let{className:t,status:n,title:l,...r}=e;return(0,i.jsx)(a.u,{content:"success"===n?"Copied!":l||"Copy",placement:"bottom-start",children:(0,i.jsx)(s.z,{...r,className:c(null,t),children:(0,i.jsx)(s.z.Icon,{children:(0,i.jsx)(o.K,{status:n,size:16})})})})}function u(e){let{text:t,...n}=e;return(0,i.jsx)(l.h,{text:t,timeout:1e3,children:e=>(0,i.jsx)(d,{...n,status:e})})}},79023:(e,t,n)=>{n.d(t,{u:()=>E});var a,s,o,l,r,i,c,d,u,m,p,h=n(88776),b=n(24362),v=n(68963);function g(){return g=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{image:t,title:n,description:a,actions:s,size:o="m",position:l="center"}=e;return(0,f.jsx)("div",{className:y({size:o}),children:(0,f.jsxs)("div",{className:y("wrapper",{size:o,position:l}),children:[(0,f.jsx)("div",{className:y("image"),children:t||(0,f.jsx)(h.J,{data:w,width:x[o],height:x[o]})}),(0,f.jsx)("div",{className:y("title",{size:o}),children:n}),(0,f.jsx)("div",{className:y("description"),children:a}),(0,f.jsx)("div",{className:y("actions"),children:s})]})})}},69214:(e,t,n)=>{n.d(t,{A:()=>u});var a=n(86017),s=n(75850),o=n(24362),l=n(90861),r=n(68036),i=n(98366),c=n(75859);const d=(0,o.cn)("entity-status");function u(e){let{status:t=s.K.Grey,name:n="",label:o,path:u,iconPath:m,size:p="s",mode:h="color",showStatus:b=!0,externalLink:v=!1,withLeftTrim:g=!1,hasClipboardButton:w,clipboardButtonAlwaysVisible:f=!1,className:y,additionalControls:x}=e;const E=()=>b?(0,c.jsx)(i.J,{className:d("icon"),status:t,size:p,mode:h}):null;return(0,c.jsxs)("div",{className:d(null,y),title:n,children:[m?(C=m,(0,c.jsx)(a.r,{target:"_blank",href:C,children:E()})):E(),o&&(0,c.jsx)("span",{title:o,className:d("label",{size:p,state:t.toLowerCase()}),children:o}),(0,c.jsx)("span",{className:d("link",{"with-left-trim":g}),children:u?v?(0,c.jsx)(a.r,{className:d("name"),href:u,children:n}):(0,c.jsx)(r.h,{className:d("name"),to:u,children:n}):n&&(0,c.jsx)("span",{className:d("name"),children:n})}),w&&(0,c.jsx)(l.m,{text:n,size:"s",className:d("clipboard-button",{visible:f})}),x]});var C}},8747:(e,t,n)=>{n.d(t,{V:()=>o});var a=n(68746),s=n(75859);const o=e=>{let{error:t,className:n,defaultMessage:o=(0,a.Z)("responseError.defaultMessage")}=e,l="";return t&&"string"===typeof t&&(l=t),t&&"object"===typeof t&&("data"in t&&"string"===typeof t.data?l=t.data:"statusText"in t&&"string"===typeof t.statusText?l=t.statusText:"message"in t&&"string"===typeof t.message&&(l=t.message)),(0,s.jsx)("div",{className:"error ".concat(n),children:l||o})}},26688:(e,t,n)=>{n.d(t,{V:()=>a.V});var a=n(8747)},68746:(e,t,n)=>{n.d(t,{Z:()=>l});var a=n(30817);const s=JSON.parse('{"403.title":"Access denied","403.description":"You don\u2019t have the necessary roles to view this page.","responseError.defaultMessage":"Response error"}'),o=JSON.parse('{"403.title":"\u0414\u043e\u0441\u0442\u0443\u043f \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d","403.description":"\u0423 \u0432\u0430\u0441 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u0430\u0432 \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b.","responseError.defaultMessage":"\u041e\u0448\u0438\u0431\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430"}'),l=(0,a.wZ)("ydb-errors-access-denied",{ru:o,en:s})},16670:(e,t,n)=>{n.d(t,{a:()=>r});var a=n(2982),s=n(24362),o=n(75859);const l=(0,s.cn)("ydb-loader"),r=e=>{let{size:t="m",className:n}=e;return(0,o.jsx)("div",{className:l(null,n),children:(0,o.jsx)(a.a,{size:t})})}},2098:(e,t,n)=>{n.d(t,{G:()=>c});var a=n(2639),s=n(19812),o=n(24362),l=n(89712),r=n(75859);const i=(0,o.cn)("ydb-resizeable-data-table");function c(e){let{columnsWidthLSKey:t,columns:n,settings:o,wrapperClassName:c,...d}=e;const[u,m]=(0,l.M)(t),p=(0,a.B)(n,u),h={...o,defaultResizeable:!0};return(0,r.jsx)("div",{className:i(null,c),children:(0,r.jsx)(s.ZP,{theme:"yandex-cloud",columns:p,onResize:m,settings:h,...d})})}},98366:(e,t,n)=>{n.d(t,{J:()=>m});var a=n(67585),s=n(57225),o=n(71586),l=n(88776),r=n(75850),i=n(24362),c=n(75859);const d=(0,i.cn)("ydb-status-icon"),u={[r.K.Blue]:a.Z,[r.K.Yellow]:s.Z,[r.K.Orange]:o.Z,[r.K.Red]:s.Z};function m(e){let{status:t=r.K.Grey,size:n="s",mode:a="color",className:s}=e;const o={state:t.toLowerCase(),size:n};return"icons"===a&&t in u?(0,c.jsx)(l.J,{className:d("status-icon",o,s),data:u[t]}):(0,c.jsx)("div",{className:d("status-color",o,s)})}},94178:(e,t,n)=>{n.d(t,{V:()=>l});var a=n(24362),s=n(75859);const o=(0,a.cn)("tag"),l=e=>{let{text:t,type:n}=e;return(0,s.jsx)("div",{className:o({type:n}),children:t})}},47542:(e,t,n)=>{n.r(t),n.d(t,{Tablet:()=>G,b:()=>P});var a=n(68963),s=n(39683),o=n(86017),l=n(88776),r=n(17095),i=n(49352),c=n(86974),d=n(79023),u=n(69214),m=n(26688),p=n(16670),h=n(94178),b=n(54665),v=n(27102),g=n(79061),w=n(51688);const f=n(905).h.injectEndpoints({endpoints:e=>({getTablet:e.query({queryFn:async(e,t)=>{let{id:n}=e,{signal:a}=t;try{const[e,t,s]=await Promise.all([window.api.getTablet({id:n},{signal:a}),window.api.getTabletHistory({id:n},{signal:a}),window.api.getNodesList({signal:a})]),o=(0,w.dn)(s),l=Object.keys(t).reduce(((e,n)=>{var a;const s=null===(a=t[n])||void 0===a?void 0:a.TabletStateInfo;if(s&&s.length){const t=s.find((e=>e.Leader))||s[0],{ChangeTime:a,Generation:l,State:r,Leader:i,FollowerId:c}=t,d=o&&n?o.get(Number(n)):void 0;e.push({nodeId:n,generation:l,changeTime:a,state:r,leader:i,followerId:c,fqdn:d})}return e}),[]),{TabletStateInfo:r=[]}=e,[i={}]=r,{TabletId:c}=i;return{data:{id:c,data:i,history:l}}}catch(s){return{error:s}}},providesTags:["All"]}),getTabletDescribe:e.query({queryFn:async(e,t)=>{let{tenantId:n}=e,{signal:a}=t;try{const e=await window.api.getTabletDescribe(n,{signal:a}),{SchemeShard:t,PathId:s}=n;return{data:(null===e||void 0===e?void 0:e.Path)||"".concat(t,":").concat(s)}}catch(s){return{error:s}}},providesTags:["All"]})}),overrideExisting:"throw"});var y=n(24362),x=n(52317),E=n(34051),C=n(14659),j=n(28164),N=n(30817);const k=JSON.parse('{"tablet.header":"Tablet","controls.kill":"Restart","controls.stop":"Stop","controls.resume":"Resume","controls.kill-not-allowed":"You don\'t have enough rights to restart tablet","controls.stop-not-allowed":"You don\'t have enough rights to stop tablet","controls.resume-not-allowed":"You don\'t have enough rights to resume tablet","dialog.kill":"The tablet will be restarted. Do you want to proceed?","dialog.stop":"The tablet will be stopped. Do you want to proceed?","dialog.resume":"The tablet will be resumed. Do you want to proceed?","emptyState":"The tablet was not found"}'),T=(0,N.wZ)("ydb-tablet-page",{en:k});var z=n(75859);const D=e=>{let{tablet:t,fetchData:n}=e;const{TabletId:s,HiveId:o}=t,{isUserAllowedToMakeChanges:l}=(0,E.ix)((e=>e.authentication)),r=t.State===j.g.Stopped,i=t.State!==j.g.Stopped&&t.State!==j.g.Dead,c=t.State===j.g.Stopped||t.State===j.g.Deleted;return(0,z.jsxs)("div",{className:P("controls"),children:[(0,z.jsx)(C.U,{dialogContent:T("dialog.kill"),onConfirmAction:()=>window.api.killTablet(s),onConfirmActionSuccess:n,buttonClassName:P("control"),buttonDisabled:r||!l,withPopover:!0,popoverContent:T("controls.kill-not-allowed"),popoverPlacement:"bottom",popoverDisabled:l,children:T("controls.kill")}),o&&"0"!==o?(0,z.jsxs)(a.Fragment,{children:[(0,z.jsx)(C.U,{dialogContent:T("dialog.stop"),onConfirmAction:()=>window.api.stopTablet(s,o),onConfirmActionSuccess:n,buttonClassName:P("control"),buttonDisabled:c||!l,withPopover:!0,popoverContent:T("controls.stop-not-allowed"),popoverPlacement:"bottom",popoverDisabled:l,children:T("controls.stop")}),(0,z.jsx)(C.U,{dialogContent:T("dialog.resume"),onConfirmAction:()=>window.api.resumeTablet(s,o),onConfirmActionSuccess:n,buttonClassName:P("control"),buttonDisabled:i||!l,withPopover:!0,popoverContent:T("controls.resume-not-allowed"),popoverPlacement:"bottom",popoverDisabled:l,children:T("controls.resume")})]}):null]})};var S=n(83203),B=n(62206),O=n(4119),A=n(92398);const I=e=>{let{tablet:t,tenantPath:n}=e;const{ChangeTime:a,Generation:s,FollowerId:l,NodeId:r,HiveId:i,State:c,Type:d,TenantId:{SchemeShard:u}={}}=t,m=i&&"0"!==i,p=c===j.g.Active,h=[{label:"Database",value:n||"-"}];return m&&h.push({label:"HiveId",value:(0,z.jsx)(o.r,{href:(0,b.ax)(b.ZP.tablet,{id:i}),target:"_blank",children:i})}),u&&h.push({label:"SchemeShard",value:(0,z.jsx)(o.r,{href:(0,b.ax)(b.ZP.tablet,{id:u}),target:"_blank",children:u})}),h.push({label:"Type",value:d},{label:"State",value:c}),p&&h.push({label:"Uptime",value:(0,O.fG)(a)}),h.push({label:"Generation",value:s},{label:"Node",value:(0,z.jsx)(S.rU,{className:P("link"),to:(0,A.a3)(String(r)),children:r})}),l&&h.push({label:"Follower",value:l}),(0,z.jsx)(B._P,{info:h})};var K=n(19812),F=n(68036),L=n(2098);const Z=[{name:"Generation",align:K.ZP.RIGHT,render:e=>{let{row:t}=e;return t.generation}},{name:"Change time",align:K.ZP.RIGHT,sortable:!1,render:e=>{let{row:t}=e;return(0,O.fG)(t.changeTime)}},{name:"State",sortable:!1,render:e=>{let{row:t}=e;return t.state}},{name:"Follower ID",sortable:!1,render:e=>{let{row:t}=e;return t.leader?"leader":t.followerId}},{name:"Node ID",align:K.ZP.RIGHT,sortable:!1,render:e=>{let{row:t}=e;return(0,z.jsx)(F.h,{to:(0,A.a3)(t.nodeId),children:t.nodeId})}},{name:"Node FQDN",sortable:!1,width:300,render:e=>{let{row:t}=e;return t.fqdn?(0,z.jsx)(u.A,{name:t.fqdn,showStatus:!1,hasClipboardButton:!0}):(0,z.jsx)("span",{children:"\u2014"})}}],M={displayIndices:!1},R=e=>{let{history:t}=e;return(0,z.jsx)(L.G,{columnsWidthLSKey:"tabletTableColumnsWidth",data:t,columns:Z,settings:M,initialSortOrder:{columnId:"Generation",order:K.ZP.DESCENDING}})},P=(0,y.cn)("tablet-page"),G=()=>{var e;const t=a.useRef(!0),n=(0,E.zL)(),w=(0,c.TH)(),y=(0,c.UO)(),{id:C}=y,{nodeId:j,tenantName:N,type:k,clusterName:S}=(0,b.mB)(w),[B]=(0,E.Rj)(),{currentData:O,isFetching:A,error:K,refetch:F}=f.useGetTabletQuery({id:C},{pollingInterval:B}),L=A&&void 0===O,{id:Z,data:M={},history:G=[]}=O||{},{currentData:V}=f.useGetTabletDescribeQuery(M.TenantId?{tenantId:M.TenantId}:r.CN),J=(null===(e=M.NodeId)||void 0===e?void 0:e.toString())||(null===j||void 0===j?void 0:j.toString()),q=V||(null===N||void 0===N?void 0:N.toString()),U=M.Type||(null===k||void 0===k?void 0:k.toString());a.useEffect((()=>{n((0,g.J)("tablet",{nodeIds:J?[J]:[],tenantName:q,tabletId:C,tabletType:U}))}),[n,q,C,J,U]);const H=(e,t)=>(0,z.jsx)("li",{className:P("link",{external:!0}),children:(0,z.jsx)(o.r,{href:"".concat(v.y3).concat(e.path),target:"_blank",children:e.name})},t);return(0,z.jsxs)(a.Fragment,{children:[(0,z.jsx)(i.ql,{children:(0,z.jsx)("title",{children:"".concat(C," \u2014 ").concat(T("tablet.header")," \u2014 ").concat(q||S||x.DO)})}),(()=>{if(L&&C!==Z&&t.current)return(0,z.jsx)(p.a,{size:"l"});if(K)return(0,z.jsx)(m.V,{error:K});if(!M||!Object.keys(M).length)return(0,z.jsx)("div",{className:P("placeholder"),children:(0,z.jsx)(d.u,{title:T("emptyState")})});const{TabletId:e,Overall:n,Leader:a}=M,o=[{name:"".concat(x.Ah," - tablet"),path:"/tablets?TabletID=".concat(e)}];return(0,z.jsx)("div",{className:P(),children:(0,z.jsxs)("div",{className:P("pane-wrapper"),children:[(0,z.jsxs)("div",{className:P("left-pane"),children:[(0,z.jsx)("ul",{className:P("links"),children:o.map(H)}),(0,z.jsxs)("div",{className:P("row",{header:!0}),children:[(0,z.jsx)("span",{className:P("title"),children:T("tablet.header")}),(0,z.jsx)(u.A,{status:n,name:e}),(0,z.jsx)("a",{rel:"noopener noreferrer",className:P("link",{external:!0}),href:"".concat(v.y3,"/tablets?TabletID=").concat(e),target:"_blank",children:(0,z.jsx)(l.J,{data:s.Z})}),a&&(0,z.jsx)(h.V,{text:"Leader",type:"blue"}),(0,z.jsx)("span",{className:P("loader"),children:L&&(0,z.jsx)(p.a,{size:"s"})})]}),(0,z.jsx)(I,{tablet:M,tenantPath:q}),(0,z.jsx)(D,{tablet:M,fetchData:F})]}),(0,z.jsx)("div",{className:P("rigth-pane"),children:(0,z.jsx)(R,{history:G})})]})})})()]})}},89712:(e,t,n)=>{n.d(t,{M:()=>l});var a=n(68963),s=n(2639),o=n(18193);const l=e=>{const t=a.useCallback((()=>e?o.r.readUserSettingsValue(e,{}):{}),[e]),n=a.useCallback((t=>{e&&o.r.setUserSettingsValue(e,t)}),[e]);return(0,s.M)({saveSizes:n,getSizes:t})}},57225:(e,t,n)=>{n.d(t,{Z:()=>s});var a=n(68963);const s=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0Zm-6 2.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8.75 5a.75.75 0 0 0-1.5 0v2.5a.75.75 0 0 0 1.5 0V5Z",clipRule:"evenodd"}))},67585:(e,t,n)=>{n.d(t,{Z:()=>s});var a=n(68963);const s=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm1-9.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8 7.75a.75.75 0 0 1 .75.75V11a.75.75 0 0 1-1.5 0V8.5A.75.75 0 0 1 8 7.75Z",clipRule:"evenodd"}))},76506:(e,t,n)=>{n.d(t,{Z:()=>s});var a=n(68963);const s=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14ZM6.53 5.47a.75.75 0 0 0-1.06 1.06L6.94 8 5.47 9.47a.75.75 0 1 0 1.06 1.06L8 9.06l1.47 1.47a.75.75 0 1 0 1.06-1.06L9.06 8l1.47-1.47a.75.75 0 1 0-1.06-1.06L8 6.94 6.53 5.47Z",clipRule:"evenodd"}))},71586:(e,t,n)=>{n.d(t,{Z:()=>s});var a=n(68963);const s=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M5.836 2.244c.962-1.665 3.366-1.665 4.328 0l4.917 8.505c.964 1.666-.239 3.751-2.164 3.751H3.083c-1.925 0-3.128-2.085-2.164-3.751l4.917-8.505ZM8 5a.75.75 0 0 1 .75.75v2a.75.75 0 1 1-1.5 0v-2A.75.75 0 0 1 8 5Zm1 5.75a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",clipRule:"evenodd"}))},2639:(e,t,n)=>{n.d(t,{B:()=>s,M:()=>o});var a=n(68963);function s(e,t){return e.map((e=>{var n;let a;e.sub&&(a=s(e.sub,t));const o=null!==(n=t[e.name])&&void 0!==n?n:e.width;return Object.assign(Object.assign({},e),{width:o,sub:a})}))}function o(e){let{saveSizes:t,getSizes:n}=e;const[s,o]=a.useState((()=>n()));return[s,a.useCallback(((e,n)=>{o((a=>{const s=Object.assign(Object.assign({},a),{[e]:n});return t(s),s}))}),[t])]}},25822:(e,t,n)=>{n.d(t,{V:()=>S});var a=n(68963),s=n(62685),o=n(74100),l=n(95753),r=n(57107),i=n(89459),c=n(36951),d=n(3262),u=n(31445);const m=(0,c.Ge)("modal");function p(e){let{open:t=!1,keepMounted:n=!1,disableBodyScrollLock:c=!1,disableEscapeKeyDown:p,disableOutsideClick:h,disableFocusTrap:b,disableAutoFocus:v,focusTrap:g=!0,autoFocus:w=!0,restoreFocusRef:f,onEscapeKeyDown:y,onEnterKeyDown:x,onOutsideClick:E,onClose:C,onTransitionEnter:j,onTransitionEntered:N,onTransitionExit:k,onTransitionExited:T,children:z,style:D,contentOverflow:S="visible",className:B,contentClassName:O,"aria-labelledby":A,"aria-label":I,container:K,qa:F}=e;const L=a.useRef(null),Z=a.useRef(null),[M,R]=a.useState(!1);(0,o.y)({enabled:!c&&(t||M)});const P=(0,l.H)({enabled:t||M,restoreFocusRef:f,focusTrapped:!0});return(0,d.s)({open:t,disableEscapeKeyDown:p,disableOutsideClick:h,onEscapeKeyDown:y,onEnterKeyDown:x,onOutsideClick:E,onClose:C,contentRefs:[Z],type:"modal"}),a.createElement(s.Z,{nodeRef:L,in:t,addEndListener:e=>{var t;return null===(t=L.current)||void 0===t?void 0:t.addEventListener("animationend",e)},classNames:(0,u.Y)(m),mountOnEnter:!n,unmountOnExit:!n,appear:!0,onEnter:()=>{R(!0),null===j||void 0===j||j()},onExit:()=>{R(!0),null===k||void 0===k||k()},onEntered:()=>{R(!1),null===N||void 0===N||N()},onExited:()=>{R(!1),null===T||void 0===T||T()}},a.createElement(r.h,{container:K},a.createElement("div",{ref:L,style:D,className:m({open:t},B),"data-qa":F},a.createElement("div",{className:m("content-aligner")},a.createElement("div",{className:m("content-wrapper")},a.createElement(i.i,{enabled:!b&&g&&t&&!M,autoFocus:!v&&w},a.createElement("div",Object.assign({ref:Z,tabIndex:-1,role:"dialog","aria-modal":t,"aria-label":I,"aria-labelledby":A,className:m("content",{"has-scroll":"auto"===S},O)},P),z)))))))}var h=n(77280),b=n(17176),v=n(88776),g=n(54973);const w=JSON.parse('{"close":"Close dialog"}'),f=JSON.parse('{"close":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u0434\u0438\u0430\u043b\u043e\u0433\u043e\u0432\u043e\u0435 \u043e\u043a\u043d\u043e"}'),y=(0,g.e)({en:w,ru:f},"Dialog"),x=(0,c.Ge)("dialog-btn-close");function E(e){let{onClose:t}=e;return a.createElement("div",{className:x()},a.createElement(b.z,{view:"flat",size:"l",className:x("btn"),onClick:e=>t(e,{isOutsideClick:!1}),extraProps:{"aria-label":y("close")}},a.createElement(v.J,{data:h.Z,size:20})))}const C=(0,c.Ge)("dialog-body");const j=(0,c.Ge)("dialog-divider");var N=n(44920);const k=(0,c.Ge)("dialog-footer");class T extends a.Component{constructor(){super(...arguments),this.errorTooltipRef=a.createRef(),this.handleKeyDown=e=>{"Enter"===e.key&&(e.preventDefault(),this.props.onClickButtonApply&&this.props.onClickButtonApply(e))}}componentDidMount(){this.props.listenKeyEnter&&this.attachKeyDownListeners()}componentDidUpdate(e){!this.props.listenKeyEnter&&e.listenKeyEnter&&this.detachKeyDownListeners(),this.props.listenKeyEnter&&!e.listenKeyEnter&&this.attachKeyDownListeners()}componentWillUnmount(){this.detachKeyDownListeners()}render(){const{onClickButtonCancel:e,onClickButtonApply:t,loading:n,textButtonCancel:s,textButtonApply:o,propsButtonCancel:l,propsButtonApply:r,preset:i,children:c,errorText:d,showError:u,renderButtons:m}=this.props,p=a.createElement("div",{className:k("button",{action:"cancel"})},a.createElement(b.z,Object.assign({view:o?"flat":"normal",size:"l",width:"max",onClick:e,disabled:n},l),s)),h=a.createElement("div",{className:k("button",{action:"apply"})},a.createElement(b.z,Object.assign({ref:this.errorTooltipRef,type:"submit",view:"action",size:"l",width:"max",onClick:t,loading:n,className:k("button-apply",{preset:i})},r),o),d&&a.createElement(N.G,{open:u,anchorRef:this.errorTooltipRef,placement:["bottom","top"],disableLayer:!0,disablePortal:!0,hasArrow:!0},a.createElement("div",{className:k("error")},d)));return a.createElement("div",{className:k()},a.createElement("div",{className:k("children")},c),a.createElement("div",{className:k("bts-wrapper")},m?m(h,p):a.createElement(a.Fragment,null,s&&p,o&&h)))}attachKeyDownListeners(){setTimeout((()=>{window.addEventListener("keydown",this.handleKeyDown)}),0)}detachKeyDownListeners(){window.removeEventListener("keydown",this.handleKeyDown)}}T.defaultProps={preset:"default",showError:!1,listenKeyEnter:!1};const z=(0,c.Ge)("dialog-header");const D=(0,c.Ge)("dialog");class S extends a.Component{constructor(){super(...arguments),this.handleCloseButtonClick=e=>{const{onClose:t}=this.props;t(e.nativeEvent,"closeButtonClick")}}render(){const{container:e,children:t,open:n,disableBodyScrollLock:s,disableEscapeKeyDown:o,disableOutsideClick:l,disableFocusTrap:r,disableAutoFocus:i,restoreFocusRef:c,keepMounted:d,size:u,contentOverflow:m="visible",className:h,modalClassName:b,hasCloseButton:v,onEscapeKeyDown:g,onEnterKeyDown:w,onOutsideClick:f,onClose:y,onTransitionEnter:x,onTransitionEntered:C,onTransitionExit:j,onTransitionExited:N,"aria-label":k,"aria-labelledby":T,qa:z}=this.props;return a.createElement(p,{open:n,contentOverflow:m,disableBodyScrollLock:s,disableEscapeKeyDown:o,disableOutsideClick:l,disableFocusTrap:r,disableAutoFocus:i,restoreFocusRef:c,keepMounted:d,onEscapeKeyDown:g,onEnterKeyDown:w,onOutsideClick:f,onClose:y,onTransitionEnter:x,onTransitionEntered:C,onTransitionExit:j,onTransitionExited:N,className:D("modal",b),"aria-label":k,"aria-labelledby":T,container:e,qa:z},a.createElement("div",{className:D({size:u,"has-close":v,"has-scroll":"auto"===m},h)},t,v&&a.createElement(E,{onClose:this.handleCloseButtonClick})))}}S.defaultProps={disableBodyScrollLock:!1,disableEscapeKeyDown:!1,disableOutsideClick:!1,keepMounted:!1,hasCloseButton:!0},S.Footer=T,S.Header=function(e){const{caption:t="",insertBefore:n,insertAfter:s,className:o,id:l}=e;return a.createElement("div",{className:z(null,o)},n,a.createElement("div",{className:z("caption"),id:l},t),s)},S.Body=function(e){const{className:t,hasBorders:n=!1}=e;return a.createElement("div",{className:C({"has-borders":n},t)},e.children)},S.Divider=function(e){let{className:t}=e;return a.createElement("div",{className:j(null,t)})}},27320:(e,t,n)=>{n.d(t,{u:()=>d});var a=n(68963),s=n(48027),o=n(79004),l=n(44920),r=n(10288);const i=(0,n(36951).Ge)("tooltip"),c=["bottom","top"],d=e=>{const{children:t,content:n,disabled:d,placement:u=c,qa:m,id:p,className:h,style:b,disablePortal:v,contentClassName:g,openDelay:w=1e3,closeDelay:f}=e,[y,x]=a.useState(null),E=(0,o.p)(y,{openDelay:w,closeDelay:f,preventTriggerOnFocus:!0}),C=a.Children.only(t),j=C.ref,N=(0,s.c)(x,j);return a.createElement(a.Fragment,null,a.cloneElement(C,{ref:N}),y?a.createElement(l.G,{id:p,role:"tooltip",className:i(null,h),style:b,open:E&&!d,placement:u,anchorRef:{current:y},disablePortal:v,disableEscapeKeyDown:!0,disableOutsideClick:!0,disableLayer:!0,qa:m},a.createElement("div",{className:i("content",g)},a.createElement(r.x,{variant:"body-short",color:"complementary"},n))):null)}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/783.95eb5b37.chunk.js b/ydb/core/viewer/monitoring/static/js/783.95eb5b37.chunk.js new file mode 100644 index 000000000000..208998af06db --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/783.95eb5b37.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[783],{14659:(e,t,n)=>{n.d(t,{U:()=>y});var o=n(68963),a=n(17176),s=n(68330),l=n(76506),i=n(71586),r=n(25822),c=n(88776),d=n(24362),u=n(30817);const m=JSON.parse('{"default-error":"Something went wrong, action cannot be completed","no-rights-error":"You don\'t have enough rights to complete the operation","button-confirm":"Confirm","button-cancel":"Cancel","button-close":"Close"}'),p=(0,u.wZ)("ydb-critical-action-dialog",{en:m});var h=n(75859);const v=(0,d.cn)("ydb-critical-dialog"),b=e=>403===e.status?p("no-rights-error"):e.statusText?e.statusText:p("default-error");function E(e){let{visible:t,text:n,onClose:a,onConfirm:s,onConfirmActionSuccess:d,onConfirmActionError:u}=e;const[m,E]=o.useState(!1),[y,w]=o.useState(),f=async e=>(e.preventDefault(),E(!0),s().then((()=>{d(),a()})).catch((e=>{u(),w(e)})).finally((()=>{E(!1)})));return(0,h.jsx)(r.V,{open:t,hasCloseButton:!1,className:v(),size:"s",onClose:a,onTransitionExited:()=>w(void 0),children:y?(0,h.jsxs)(o.Fragment,{children:[(0,h.jsxs)(r.V.Body,{className:v("body"),children:[(0,h.jsx)("span",{className:v("error-icon"),children:(0,h.jsx)(l.Z,{width:"24",height:"22"})}),b(y)]}),(0,h.jsx)(r.V.Footer,{loading:!1,preset:"default",textButtonCancel:p("button-close"),onClickButtonCancel:a})]}):(0,h.jsxs)("form",{onSubmit:f,children:[(0,h.jsxs)(r.V.Body,{className:v("body"),children:[(0,h.jsx)("span",{className:v("warning-icon"),children:(0,h.jsx)(c.J,{data:i.Z,size:24})}),n]}),(0,h.jsx)(r.V.Footer,{loading:m,preset:"default",textButtonApply:p("button-confirm"),textButtonCancel:p("button-cancel"),propsButtonApply:{type:"submit"},onClickButtonCancel:a,onClickButtonApply:()=>{}})]})})}function y(e){let{children:t,onConfirmAction:n,onConfirmActionSuccess:l,dialogContent:i,buttonDisabled:r=!1,buttonView:c="action",buttonClassName:d,withPopover:u=!1,popoverContent:m,popoverPlacement:p="right",popoverDisabled:v=!0}=e;const[b,y]=o.useState(!1),[w,f]=o.useState(!1),C=()=>(0,h.jsx)(a.z,{onClick:()=>y(!0),view:c,disabled:r,loading:!r&&w,className:d,children:t});return(0,h.jsxs)(o.Fragment,{children:[(0,h.jsx)(E,{visible:b,text:i,onConfirm:async()=>{f(!0),await n(),f(!1)},onConfirmActionSuccess:async()=>{if(l){f(!0);try{await l()}catch{}finally{f(!1)}}},onConfirmActionError:()=>{f(!1)},onClose:()=>{y(!1)}}),u?(0,h.jsx)(s.J,{content:m,placement:p,disabled:v,children:C()}):C()]})}},12824:(e,t,n)=>{n.d(t,{b:()=>i});var o=n(24362),a=n(98366),s=n(75859);const l=(0,o.cn)("ydb-disk-page-title");function i(e){let{entityName:t,status:n,id:o,className:i}=e;return(0,s.jsxs)("div",{className:l(null,i),children:[(0,s.jsx)("span",{className:l("prefix"),children:t}),(0,s.jsx)(a.J,{className:l("icon"),status:n,size:"s"}),o]})}},91816:(e,t,n)=>{n.d(t,{b:()=>r});var o=n(56711),a=n(24362),s=n(75859);const l=(0,a.cn)("ydb-info-viewer-skeleton"),i=()=>(0,s.jsxs)("div",{className:l("label"),children:[(0,s.jsx)(o.O,{className:l("label__text")}),(0,s.jsx)("div",{className:l("label__dots")})]}),r=e=>{let{rows:t=8,className:n}=e;return(0,s.jsx)("div",{className:l(null,n),children:[...new Array(t)].map(((e,t)=>(0,s.jsxs)("div",{className:l("row"),children:[(0,s.jsx)(i,{}),(0,s.jsx)(o.O,{className:l("value")})]},"skeleton-row-".concat(t))))})}},16084:(e,t,n)=>{n.d(t,{V:()=>i});var o=n(56711),a=n(24362),s=n(75859);const l=(0,a.cn)("ydb-page-meta");function i(e){let{items:t,loading:n,className:a}=e;return(0,s.jsx)("div",{className:l(null,a),children:n?(0,s.jsx)(o.O,{className:l("skeleton")}):t.filter((e=>Boolean(e))).join("\xa0\xa0\xb7\xa0\xa0")})}},84317:(e,t,n)=>{n.d(t,{Z:()=>a});var o=n(68963);const a=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 1.5a6.501 6.501 0 0 1 6.445 5.649.75.75 0 1 1-1.488.194A5.001 5.001 0 0 0 4.43 4.5h1.32a.75.75 0 0 1 0 1.5h-3A.75.75 0 0 1 2 5.25v-3a.75.75 0 1 1 1.5 0v1.06A6.48 6.48 0 0 1 8 1.5Zm5.25 13a.75.75 0 0 0 .75-.75v-3a.75.75 0 0 0-.75-.75h-3a.75.75 0 1 0 0 1.5h1.32a5.001 5.001 0 0 1-8.528-2.843.75.75 0 1 0-1.487.194 6.501 6.501 0 0 0 10.945 3.84v1.059c0 .414.336.75.75.75Z",clipRule:"evenodd"}))},57225:(e,t,n)=>{n.d(t,{Z:()=>a});var o=n(68963);const a=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0Zm-6 2.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8.75 5a.75.75 0 0 0-1.5 0v2.5a.75.75 0 0 0 1.5 0V5Z",clipRule:"evenodd"}))},67585:(e,t,n)=>{n.d(t,{Z:()=>a});var o=n(68963);const a=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm1-9.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8 7.75a.75.75 0 0 1 .75.75V11a.75.75 0 0 1-1.5 0V8.5A.75.75 0 0 1 8 7.75Z",clipRule:"evenodd"}))},76506:(e,t,n)=>{n.d(t,{Z:()=>a});var o=n(68963);const a=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14ZM6.53 5.47a.75.75 0 0 0-1.06 1.06L6.94 8 5.47 9.47a.75.75 0 1 0 1.06 1.06L8 9.06l1.47 1.47a.75.75 0 1 0 1.06-1.06L9.06 8l1.47-1.47a.75.75 0 1 0-1.06-1.06L8 6.94 6.53 5.47Z",clipRule:"evenodd"}))},71586:(e,t,n)=>{n.d(t,{Z:()=>a});var o=n(68963);const a=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M5.836 2.244c.962-1.665 3.366-1.665 4.328 0l4.917 8.505c.964 1.666-.239 3.751-2.164 3.751H3.083c-1.925 0-3.128-2.085-2.164-3.751l4.917-8.505ZM8 5a.75.75 0 0 1 .75.75v2a.75.75 0 1 1-1.5 0v-2A.75.75 0 0 1 8 5Zm1 5.75a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",clipRule:"evenodd"}))},25822:(e,t,n)=>{n.d(t,{V:()=>K});var o=n(68963),a=n(62685),s=n(74100),l=n(95753),i=n(57107),r=n(89459),c=n(36951),d=n(3262),u=n(31445);const m=(0,c.Ge)("modal");function p(e){let{open:t=!1,keepMounted:n=!1,disableBodyScrollLock:c=!1,disableEscapeKeyDown:p,disableOutsideClick:h,disableFocusTrap:v,disableAutoFocus:b,focusTrap:E=!0,autoFocus:y=!0,restoreFocusRef:w,onEscapeKeyDown:f,onEnterKeyDown:C,onOutsideClick:x,onClose:g,onTransitionEnter:N,onTransitionEntered:k,onTransitionExit:B,onTransitionExited:j,children:D,style:O,contentOverflow:K="visible",className:A,contentClassName:T,"aria-labelledby":R,"aria-label":Z,container:F,qa:L}=e;const S=o.useRef(null),M=o.useRef(null),[z,G]=o.useState(!1);(0,s.y)({enabled:!c&&(t||z)});const V=(0,l.H)({enabled:t||z,restoreFocusRef:w,focusTrapped:!0});return(0,d.s)({open:t,disableEscapeKeyDown:p,disableOutsideClick:h,onEscapeKeyDown:f,onEnterKeyDown:C,onOutsideClick:x,onClose:g,contentRefs:[M],type:"modal"}),o.createElement(a.Z,{nodeRef:S,in:t,addEndListener:e=>{var t;return null===(t=S.current)||void 0===t?void 0:t.addEventListener("animationend",e)},classNames:(0,u.Y)(m),mountOnEnter:!n,unmountOnExit:!n,appear:!0,onEnter:()=>{G(!0),null===N||void 0===N||N()},onExit:()=>{G(!0),null===B||void 0===B||B()},onEntered:()=>{G(!1),null===k||void 0===k||k()},onExited:()=>{G(!1),null===j||void 0===j||j()}},o.createElement(i.h,{container:F},o.createElement("div",{ref:S,style:O,className:m({open:t},A),"data-qa":L},o.createElement("div",{className:m("content-aligner")},o.createElement("div",{className:m("content-wrapper")},o.createElement(r.i,{enabled:!v&&E&&t&&!z,autoFocus:!b&&y},o.createElement("div",Object.assign({ref:M,tabIndex:-1,role:"dialog","aria-modal":t,"aria-label":Z,"aria-labelledby":R,className:m("content",{"has-scroll":"auto"===K},T)},V),D)))))))}var h=n(77280),v=n(17176),b=n(88776),E=n(54973);const y=JSON.parse('{"close":"Close dialog"}'),w=JSON.parse('{"close":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u0434\u0438\u0430\u043b\u043e\u0433\u043e\u0432\u043e\u0435 \u043e\u043a\u043d\u043e"}'),f=(0,E.e)({en:y,ru:w},"Dialog"),C=(0,c.Ge)("dialog-btn-close");function x(e){let{onClose:t}=e;return o.createElement("div",{className:C()},o.createElement(v.z,{view:"flat",size:"l",className:C("btn"),onClick:e=>t(e,{isOutsideClick:!1}),extraProps:{"aria-label":f("close")}},o.createElement(b.J,{data:h.Z,size:20})))}const g=(0,c.Ge)("dialog-body");const N=(0,c.Ge)("dialog-divider");var k=n(44920);const B=(0,c.Ge)("dialog-footer");class j extends o.Component{constructor(){super(...arguments),this.errorTooltipRef=o.createRef(),this.handleKeyDown=e=>{"Enter"===e.key&&(e.preventDefault(),this.props.onClickButtonApply&&this.props.onClickButtonApply(e))}}componentDidMount(){this.props.listenKeyEnter&&this.attachKeyDownListeners()}componentDidUpdate(e){!this.props.listenKeyEnter&&e.listenKeyEnter&&this.detachKeyDownListeners(),this.props.listenKeyEnter&&!e.listenKeyEnter&&this.attachKeyDownListeners()}componentWillUnmount(){this.detachKeyDownListeners()}render(){const{onClickButtonCancel:e,onClickButtonApply:t,loading:n,textButtonCancel:a,textButtonApply:s,propsButtonCancel:l,propsButtonApply:i,preset:r,children:c,errorText:d,showError:u,renderButtons:m}=this.props,p=o.createElement("div",{className:B("button",{action:"cancel"})},o.createElement(v.z,Object.assign({view:s?"flat":"normal",size:"l",width:"max",onClick:e,disabled:n},l),a)),h=o.createElement("div",{className:B("button",{action:"apply"})},o.createElement(v.z,Object.assign({ref:this.errorTooltipRef,type:"submit",view:"action",size:"l",width:"max",onClick:t,loading:n,className:B("button-apply",{preset:r})},i),s),d&&o.createElement(k.G,{open:u,anchorRef:this.errorTooltipRef,placement:["bottom","top"],disableLayer:!0,disablePortal:!0,hasArrow:!0},o.createElement("div",{className:B("error")},d)));return o.createElement("div",{className:B()},o.createElement("div",{className:B("children")},c),o.createElement("div",{className:B("bts-wrapper")},m?m(h,p):o.createElement(o.Fragment,null,a&&p,s&&h)))}attachKeyDownListeners(){setTimeout((()=>{window.addEventListener("keydown",this.handleKeyDown)}),0)}detachKeyDownListeners(){window.removeEventListener("keydown",this.handleKeyDown)}}j.defaultProps={preset:"default",showError:!1,listenKeyEnter:!1};const D=(0,c.Ge)("dialog-header");const O=(0,c.Ge)("dialog");class K extends o.Component{constructor(){super(...arguments),this.handleCloseButtonClick=e=>{const{onClose:t}=this.props;t(e.nativeEvent,"closeButtonClick")}}render(){const{container:e,children:t,open:n,disableBodyScrollLock:a,disableEscapeKeyDown:s,disableOutsideClick:l,disableFocusTrap:i,disableAutoFocus:r,restoreFocusRef:c,keepMounted:d,size:u,contentOverflow:m="visible",className:h,modalClassName:v,hasCloseButton:b,onEscapeKeyDown:E,onEnterKeyDown:y,onOutsideClick:w,onClose:f,onTransitionEnter:C,onTransitionEntered:g,onTransitionExit:N,onTransitionExited:k,"aria-label":B,"aria-labelledby":j,qa:D}=this.props;return o.createElement(p,{open:n,contentOverflow:m,disableBodyScrollLock:a,disableEscapeKeyDown:s,disableOutsideClick:l,disableFocusTrap:i,disableAutoFocus:r,restoreFocusRef:c,keepMounted:d,onEscapeKeyDown:E,onEnterKeyDown:y,onOutsideClick:w,onClose:f,onTransitionEnter:C,onTransitionEntered:g,onTransitionExit:N,onTransitionExited:k,className:O("modal",v),"aria-label":B,"aria-labelledby":j,container:e,qa:D},o.createElement("div",{className:O({size:u,"has-close":b,"has-scroll":"auto"===m},h)},t,b&&o.createElement(x,{onClose:this.handleCloseButtonClick})))}}K.defaultProps={disableBodyScrollLock:!1,disableEscapeKeyDown:!1,disableOutsideClick:!1,keepMounted:!1,hasCloseButton:!0},K.Footer=j,K.Header=function(e){const{caption:t="",insertBefore:n,insertAfter:a,className:s,id:l}=e;return o.createElement("div",{className:D(null,s)},n,o.createElement("div",{className:D("caption"),id:l},t),a)},K.Body=function(e){const{className:t,hasBorders:n=!1}=e;return o.createElement("div",{className:g({"has-borders":n},t)},e.children)},K.Divider=function(e){let{className:t}=e;return o.createElement("div",{className:N(null,t)})}},56711:(e,t,n)=>{n.d(t,{O:()=>s});var o=n(68963);const a=(0,n(36951).Ge)("skeleton");function s(e){let{className:t,style:n,qa:s}=e;return o.createElement("div",{className:a(null,t),style:n,"data-qa":s})}},27320:(e,t,n)=>{n.d(t,{u:()=>d});var o=n(68963),a=n(48027),s=n(79004),l=n(44920),i=n(10288);const r=(0,n(36951).Ge)("tooltip"),c=["bottom","top"],d=e=>{const{children:t,content:n,disabled:d,placement:u=c,qa:m,id:p,className:h,style:v,disablePortal:b,contentClassName:E,openDelay:y=1e3,closeDelay:w}=e,[f,C]=o.useState(null),x=(0,s.p)(f,{openDelay:y,closeDelay:w,preventTriggerOnFocus:!0}),g=o.Children.only(t),N=g.ref,k=(0,a.c)(C,N);return o.createElement(o.Fragment,null,o.cloneElement(g,{ref:k}),f?o.createElement(l.G,{id:p,role:"tooltip",className:r(null,h),style:v,open:x&&!d,placement:u,anchorRef:{current:f},disablePortal:b,disableEscapeKeyDown:!0,disableOutsideClick:!0,disableLayer:!0,qa:m},o.createElement("div",{className:r("content",E)},o.createElement(i.x,{variant:"body-short",color:"complementary"},n))):null)}},56829:(e,t,n)=>{n.d(t,{F:()=>a});var o=n(40797);function a(){return(0,o.T)().theme}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/8076.dac0f4f1.chunk.js b/ydb/core/viewer/monitoring/static/js/8076.dac0f4f1.chunk.js new file mode 100644 index 000000000000..981f7f8bae14 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/8076.dac0f4f1.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[8076],{99683:(e,s,a)=>{a.d(s,{l:()=>i});var r=a(68330),t=a(24362),n=a(75859);const o=(0,t.cn)("ydb-cell-with-popover");function i(e){let{children:s,className:a,wrapperClassName:t,...i}=e;return(0,n.jsx)("div",{className:o(null,t),children:(0,n.jsx)(r.J,{className:o("popover",a),...i,children:s})})}},8659:(e,s,a)=>{a.d(s,{P:()=>D});var r=a(54665),t=a(5922),n=a(24362),o=a(52317),i=a(4119),l=a(48169),d=a(69214),c=a(23373),u=a(32270),p=a(67359),m=a(30817);const g=JSON.parse('{"path":"Path","guid":"GUID","category":"Category","type":"Type","size":"Size","state":"State","device":"Device","realtime":"Realtime","serial-number":"SerialNumber","links":"Links","developer-ui":"Developer UI","pdisk-page":"PDisk page"}'),h=(0,m.wZ)("ydb-pDisk-info",{en:g});var v=a(75859);const w=(0,n.cn)("ydb-pdisk-info");function D(e){let{pDisk:s,nodeId:a,isPDiskPage:n=!1,...m}=e;const{PDiskId:g,Path:D,Guid:b,Category:N,Type:k,Device:x,Realtime:f,State:j,SerialNumber:y,TotalSize:I,AvailableSize:P}=s,S=Number(I),E=Number(P),T=[];if((0,t.D)(D)&&T.push({label:h("path"),value:D}),(0,t.D)(b)&&T.push({label:h("guid"),value:b}),(0,t.D)(N)&&(T.push({label:h("category"),value:N}),T.push({label:h("type"),value:k})),S>=0&&E>=0&&T.push({label:h("size"),value:(0,v.jsx)(p.y,{value:S-E,capacity:S,formatValues:i.q3,colorizeProgress:!0})}),(0,t.D)(j)&&T.push({label:h("state"),value:j}),(0,t.D)(x)&&T.push({label:h("device"),value:(0,v.jsx)(d.A,{status:x})}),(0,t.D)(f)&&T.push({label:h("realtime"),value:(0,v.jsx)(d.A,{status:f})}),(0,t.D)(y)&&T.push({label:h("serial-number"),value:y||o.jX}),(0,t.D)(g)&&(0,t.D)(a)){const e=(0,r.ds)(g,a),s=(0,l.ok)({nodeId:a,pDiskId:g});T.push({label:h("links"),value:(0,v.jsxs)("span",{className:w("links"),children:[!n&&(0,v.jsx)(u.j,{title:h("pdisk-page"),url:e,external:!1}),(0,v.jsx)(u.j,{title:h("developer-ui"),url:s})]})})}return(0,v.jsx)(c._,{info:T,...m})}},2098:(e,s,a)=>{a.d(s,{G:()=>d});var r=a(2639),t=a(19812),n=a(24362),o=a(89712),i=a(75859);const l=(0,n.cn)("ydb-resizeable-data-table");function d(e){let{columnsWidthLSKey:s,columns:a,settings:n,wrapperClassName:d,...c}=e;const[u,p]=(0,o.M)(s),m=(0,r.B)(a,u),g={...n,defaultResizeable:!0};return(0,i.jsx)("div",{className:l(null,d),children:(0,i.jsx)(t.ZP,{theme:"yandex-cloud",columns:m,onResize:p,settings:g,...c})})}},22692:(e,s,a)=>{a.d(s,{h:()=>i});var r=a(56711),t=a(24362),n=a(75859);const o=(0,t.cn)("table-skeleton"),i=e=>{let{rows:s=2,className:a}=e;return(0,n.jsxs)("div",{className:o(null,a),children:[(0,n.jsxs)("div",{className:o("row"),children:[(0,n.jsx)(r.O,{className:o("col-1")}),(0,n.jsx)(r.O,{className:o("col-2")}),(0,n.jsx)(r.O,{className:o("col-3")}),(0,n.jsx)(r.O,{className:o("col-4")}),(0,n.jsx)(r.O,{className:o("col-5")})]}),[...new Array(s)].map(((e,s)=>(0,n.jsx)("div",{className:o("row"),children:(0,n.jsx)(r.O,{className:o("col-full")})},"skeleton-row-".concat(s))))]})}},80816:(e,s,a)=>{a.d(s,{a:()=>i});var r=a(14979),t=a(24362),n=a(75859);const o=(0,t.cn)("ydb-usage-label");function i(e){let{value:s,overloadThreshold:a=90,theme:t,...i}=e;return(0,n.jsxs)(r._,{theme:t,className:o({overload:Number(s)>=a}),...i,children:[s||0,"%"]})}},25747:(e,s,a)=>{a.r(s),a.d(s,{PDiskPage:()=>z});var r=a(68963);const t=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 1.5a6.5 6.5 0 1 1-6.445 7.348.75.75 0 1 1 1.487-.194A5.001 5.001 0 1 0 4.43 4.5h1.32a.75.75 0 0 1 0 1.5h-3A.75.75 0 0 1 2 5.25v-3a.75.75 0 0 1 1.5 0v1.06A6.48 6.48 0 0 1 8 1.5Z",clipRule:"evenodd"}));var n=a(88776),o=a(17095),i=a(49352),l=a(52846),d=a(50422),c=a(14659),u=a(12824),p=a(91816),m=a(8659),g=a(16084),h=a(79061),v=a(99337),w=a(11431),D=a(905),b=a(3764),N=a(51688),k=a(92092);const x=D.h.injectEndpoints({endpoints:e=>({getPdiskInfo:e.query({queryFn:async(e,s)=>{let{nodeId:a,pDiskId:r}=e,{signal:t}=s;try{const e=function(e){var s,a,r,t;let[n,o]=e;const i=null===(s=n.PDiskStateInfo)||void 0===s?void 0:s[0],l=(0,b.b)(i),d=null===(a=o.SystemStateInfo)||void 0===a?void 0:a[0],c=(0,N.Ns)(d);return{...l,NodeId:null!==(r=l.NodeId)&&void 0!==r?r:c.NodeId,NodeHost:c.Host,NodeType:null===(t=c.Roles)||void 0===t?void 0:t[0],NodeDC:c.DC}}(await Promise.all([window.api.getPDiskInfo({nodeId:a,pDiskId:r},{signal:t}),window.api.getNodeInfo(a,{signal:t})]));return{data:e}}catch(n){return{error:n}}},providesTags:["All"]}),getStorageInfo:e.query({queryFn:async(e,s)=>{let{nodeId:a,pDiskId:r}=e,{signal:t}=s;try{const e=function(e,s,a){var r;const t=[];return null===(r=e.StoragePools)||void 0===r||r.forEach((e=>{var r;return null===(r=e.Groups)||void 0===r?void 0:r.forEach((r=>{var n;(null===(n=r.VDisks)||void 0===n?void 0:n.some((e=>{var r,t,n,o;const i=null!==(r=e.PDiskId)&&void 0!==r?r:null===(t=e.PDisk)||void 0===t?void 0:t.PDiskId,l=null!==(n=e.NodeId)&&void 0!==n?n:null===(o=e.PDisk)||void 0===o?void 0:o.NodeId;return i===Number(s)&&l===Number(a)})))&&t.push((0,k.mD)(r,e))}))})),t}(await window.api.getStorageInfo({nodeId:a,version:w.w.v1},{signal:t}),r,a);return{data:e}}catch(n){return{error:n}}},providesTags:["All"]})}),overrideExisting:"throw"});var f=a(5922),j=a(92666),y=a(34051),I=a(2098),P=a(22692),S=a(52317),E=a(92076),T=a(30817);const C=JSON.parse('{"fqdn":"FQDN","pdisk":"PDisk","groups":"Groups","node":"Node","restart-pdisk-button":"Restart PDisk","restart-pdisk-dialog":"PDisk will be restarted. Do you want to proceed?","restart-pdisk-not-allowed":"You don\'t have enough rights to restart PDisk"}'),G=(0,T.wZ)("ydb-pDisk-page",{en:C});const Z=(0,a(24362).cn)("ydb-pdisk-page");var O=a(75859);function R(e){let{data:s,nodesMap:a,loading:t}=e;const n=r.useMemo((()=>(0,E.HI)(a)),[a]);return(0,O.jsxs)(r.Fragment,{children:[(0,O.jsx)("div",{className:Z("groups-title"),children:G("groups")}),(0,O.jsx)("div",{children:t?(0,O.jsx)(P.h,{}):(0,O.jsx)(I.G,{columnsWidthLSKey:E.Ty,data:s,columns:n,settings:S.LE})})]})}function z(){var e;const s=(0,y.zL)(),a=(0,y.ix)(v.d),{isUserAllowedToMakeChanges:w}=(0,y.ix)((e=>e.authentication)),[{nodeId:D,pDiskId:b}]=(0,l.useQueryParams)({nodeId:l.StringParam,pDiskId:l.StringParam});r.useEffect((()=>{s((0,h.J)("pDisk",{nodeId:D,pDiskId:b}))}),[s,D,b]);const[N]=(0,y.Rj)(),k=(0,f.D)(D)&&(0,f.D)(b)?{nodeId:D,pDiskId:b}:o.CN,I=x.useGetPdiskInfoQuery(k,{pollingInterval:N}),P=I.isFetching&&void 0===I.currentData,S=I.currentData||{},{NodeHost:E,NodeId:T,NodeType:C,NodeDC:z,Severity:A}=S,U=x.useGetStorageInfoQuery(k,{pollingInterval:N}),_=U.isFetching&&void 0===U.currentData,M=null!==(e=U.currentData)&&void 0!==e?e:[],V=async()=>{if((0,f.D)(D)&&(0,f.D)(b))return window.api.restartPDisk(D,b).then((e=>{if(!1===(null===e||void 0===e?void 0:e.result)){throw{statusText:e.error}}}))},L=async()=>Promise.all([I.refetch(),U.refetch()]);return(0,O.jsxs)("div",{className:Z(null),children:[(()=>{const e=b?"".concat(G("pdisk")," ").concat(b):G("pdisk"),s=E||G("node");return(0,O.jsx)(i.ql,{titleTemplate:"%s - ".concat(e," \u2014 ").concat(s," \u2014 YDB Monitoring"),defaultTitle:"".concat(e," \u2014 ").concat(s," \u2014 YDB Monitoring")})})(),(()=>{const e=E?"".concat(G("fqdn"),": ").concat(E):void 0,s=T?"".concat(G("node"),": ").concat(T):void 0;return(0,O.jsx)(g.V,{className:Z("meta"),loading:P,items:[e,s,C,z]})})(),(0,O.jsx)(u.b,{entityName:G("pdisk"),status:(0,j.b)(A),id:b,className:Z("title")}),(0,O.jsxs)("div",{className:Z("controls"),children:[(0,O.jsxs)(c.U,{onConfirmAction:V,onConfirmActionSuccess:L,buttonDisabled:!D||!b||!w,buttonView:"normal",dialogContent:G("restart-pdisk-dialog"),withPopover:!0,popoverContent:G("restart-pdisk-not-allowed"),popoverDisabled:w,children:[(0,O.jsx)(n.J,{data:t}),G("restart-pdisk-button")]}),(0,O.jsx)(d.q,{className:Z("auto-refresh-control")})]}),P?(0,O.jsx)(p.b,{className:Z("info"),rows:10}):(0,O.jsx)(m.P,{pDisk:S,nodeId:D,className:Z("info"),isPDiskPage:!0}),(0,O.jsx)(R,{data:M,nodesMap:a,loading:_})]})}},92076:(e,s,a)=>{a.d(s,{HI:()=>Y,Ty:()=>j,k8:()=>B,mk:()=>K});var r=a(68963),t=a(71549),n=a(19812),o=a(10502),i=a(14979),l=a(68330),d=a(88776),c=a(99683),u=a(69214),p=a(80816),m=a(79255),g=a(95829),h=a(75850),v=a(24362),w=a(4119),D=a(15106),b=a(47651),N=a(10703),k=a(43817),x=(a(5384),a(75859));const f=(0,v.cn)("global-storage-groups"),j="storageGroupsColumnsWidth",y="MediaType",I="Erasure",P="GroupId",S="Used",E="Limit",T="Usage",C="UsedSpaceFlag",G="Read",Z="Write",O="VDisks",R="Degraded",z={name:"PoolName",header:"Pool Name",width:250,render:e=>{var s;let{row:a}=e;const r=null===(s=a.PoolName)||void 0===s?void 0:s.split("/");return r&&(0,x.jsx)(c.l,{wrapperClassName:f("pool-name-wrapper"),content:a.PoolName,placement:["right"],behavior:o.x.Immediate,children:r[r.length-1]})},align:n.ZP.LEFT},A={name:y,header:"Type",width:100,resizeMinWidth:100,align:n.ZP.LEFT,render:e=>{let{row:s}=e;return(0,x.jsxs)(r.Fragment,{children:[(0,x.jsx)(i._,{children:s.MediaType||"\u2014"}),"\xa0",s.Encryption&&(0,x.jsx)(l.J,{content:(0,k.Z)("encrypted"),placement:"right",behavior:o.x.Immediate,children:(0,x.jsx)(i._,{children:(0,x.jsx)(d.J,{data:t.Z,size:18})})})]})},sortable:!1},U={name:I,header:"Erasure",width:100,render:e=>{let{row:s}=e;return s.ErasureSpecies?s.ErasureSpecies:"-"},align:n.ZP.LEFT,sortable:!1},_={name:R,header:"Degraded",width:110,resizeMinWidth:110,render:e=>{let{row:s}=e;return s.Degraded?(0,x.jsxs)(i._,{theme:(0,N._O)(s),children:["Degraded: ",s.Degraded]}):"-"},align:n.ZP.LEFT,defaultOrder:n.ZP.DESCENDING},M={name:T,header:"Usage",width:75,resizeMinWidth:75,render:e=>{let{row:s}=e;return s.Limit?(0,x.jsx)(p.a,{value:s.Usage,theme:(0,N.YC)(s.Usage)}):"-"},sortAccessor:e=>e.Limit?e.Usage:null,align:n.ZP.LEFT,sortable:!1},V={name:P,header:"Group ID",width:130,render:e=>{let{row:s}=e;return(0,x.jsx)("span",{className:f("group-id"),children:s.GroupID})},sortAccessor:e=>Number(e.GroupID),align:n.ZP.RIGHT,sortable:!1},L={name:S,header:"Used",width:100,render:e=>{let{row:s}=e;return(0,b.Uz)(s.Used,!0)},align:n.ZP.RIGHT,sortable:!1},F={name:E,header:"Limit",width:100,render:e=>{let{row:s}=e;return(0,b.Uz)(s.Limit)},align:n.ZP.RIGHT,sortable:!1},H={name:C,header:"Space",width:110,render:e=>{let{row:s}=e;const a=s.UsedSpaceFlag;let r=h.K.Red;return a<100?r=h.K.Green:a<1e4?r=h.K.Yellow:a<1e6&&(r=h.K.Orange),(0,x.jsx)(u.A,{status:r})},align:n.ZP.CENTER},W={name:G,header:"Read",width:100,render:e=>{let{row:s}=e;return s.Read?(0,b.Qt)(s.Read):"-"},align:n.ZP.RIGHT},q={name:Z,header:"Write",width:100,render:e=>{let{row:s}=e;return s.Write?(0,b.Qt)(s.Write):"-"},align:n.ZP.RIGHT},J=e=>({name:O,className:f("vdisks-column"),header:"VDisks",render:s=>{var a;let{row:r}=s;return(0,x.jsx)("div",{className:f("vdisks-wrapper"),children:null===(a=r.VDisks)||void 0===a?void 0:a.map((s=>(0,x.jsx)(m.c,{data:s,nodes:e,className:f("vdisks-item")},(0,w.a2)(s.VDiskId))))})},align:n.ZP.CENTER,width:900,resizeable:!1}),K=()=>[V,A,U,M,L,F],Y=e=>[z,A,U,_,V,M,L,J(e)],B=(e,s)=>{const a=((e,s)=>s===g.G.space?e.filter((e=>e.name!==R)):s===g.G.missing?e.filter((e=>e.name!==C)):e.filter((e=>e.name!==R&&e.name!==C)))([z,A,U,_,M,V,L,F,H,W,q,J(e)],s);return a.map((e=>({...e,sortable:(0,D.P7)(e.name)})))}},43817:(e,s,a)=>{a.d(s,{Z:()=>o});var r=a(30817);const t=JSON.parse('{"empty.default":"No such groups","empty.out_of_space":"No groups with out of space errors","empty.degraded":"No degraded groups","show_all":"Show all groups","encrypted":"Encrypted group"}'),n=JSON.parse('{"empty.default":"\u041d\u0435\u0442 \u0433\u0440\u0443\u043f\u043f","empty.out_of_space":"\u041d\u0435\u0442 \u0433\u0440\u0443\u043f\u043f, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043a\u043e\u043d\u0447\u0430\u0435\u0442\u0441\u044f \u043c\u0435\u0441\u0442\u043e","empty.degraded":"\u041d\u0435\u0442 \u0434\u0435\u0433\u0440\u0430\u0434\u0438\u0440\u043e\u0432\u0430\u0432\u0448\u0438\u0445 \u0433\u0440\u0443\u043f\u043f","show_all":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0441\u0435 \u0433\u0440\u0443\u043f\u043f\u044b","encrypted":"\u0417\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0433\u0440\u0443\u043f\u043f\u0430"}'),o=(0,r.wZ)("ydb-storage-groups",{ru:n,en:t})},10703:(e,s,a)=>{a.d(s,{CZ:()=>m,TP:()=>g,YC:()=>p,_O:()=>u,_r:()=>D});var r=a(81413),t=a(95829),n=a(75850),o=a(99106),i=a(51688),l=a(15106);const d=(0,o.p)(1,2,["success","warning","danger"]),c={"block-4-2":(0,o.p)(1,2,["success","warning","danger"]),"mirror-3-dc":(0,o.p)(1,3,["success","warning","danger"])},u=e=>{var s;return(void 0!==(s=e.ErasureSpecies)&&s in c?c[e.ErasureSpecies]:d)(e.Degraded)},p=(0,o.p)(80,85,["success","warning","danger"]),m=(0,o.p)(80,85,[n.K.Green,n.K.Yellow,n.K.Red]),g={sortValue:i.Hk.NodeId,sortOrder:r.zE},h={sortValue:l.t5.PoolName,sortOrder:r.zE},v={sortValue:l.t5.Degraded,sortOrder:r.hr},w={sortValue:l.t5.Usage,sortOrder:r.hr};function D(e){return e===t.G.missing?v:e===t.G.space?w:h}},95829:(e,s,a)=>{a.d(s,{G:()=>r,d:()=>t});const r={all:"all",missing:"missing",space:"space"},t={groups:"groups",nodes:"nodes"}},89712:(e,s,a)=>{a.d(s,{M:()=>o});var r=a(68963),t=a(2639),n=a(18193);const o=e=>{const s=r.useCallback((()=>e?n.r.readUserSettingsValue(e,{}):{}),[e]),a=r.useCallback((s=>{e&&n.r.setUserSettingsValue(e,s)}),[e]);return(0,t.M)({saveSizes:a,getSizes:s})}},71549:(e,s,a)=>{a.d(s,{Z:()=>t});var r=a(68963);const t=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"m3.003 4.702 4.22-2.025a1.796 1.796 0 0 1 1.554 0l4.22 2.025a.886.886 0 0 1 .503.8V6a8.55 8.55 0 0 1-3.941 7.201l-.986.631a1.063 1.063 0 0 1-1.146 0l-.986-.63A8.55 8.55 0 0 1 2.5 6v-.498c0-.341.196-.652.503-.8Zm3.57-3.377L2.354 3.35A2.387 2.387 0 0 0 1 5.502V6a10.05 10.05 0 0 0 4.632 8.465l.986.63a2.563 2.563 0 0 0 2.764 0l.986-.63A10.05 10.05 0 0 0 15 6v-.498c0-.918-.526-1.755-1.354-2.152l-4.22-2.025a3.296 3.296 0 0 0-2.852 0ZM9.5 7a1.5 1.5 0 0 1-.75 1.3v1.95a.75.75 0 0 1-1.5 0V8.3A1.5 1.5 0 1 1 9.5 7Z",clipRule:"evenodd"}))},2639:(e,s,a)=>{a.d(s,{B:()=>t,M:()=>n});var r=a(68963);function t(e,s){return e.map((e=>{var a;let r;e.sub&&(r=t(e.sub,s));const n=null!==(a=s[e.name])&&void 0!==a?a:e.width;return Object.assign(Object.assign({},e),{width:n,sub:r})}))}function n(e){let{saveSizes:s,getSizes:a}=e;const[t,n]=r.useState((()=>a()));return[t,r.useCallback(((e,a)=>{n((r=>{const t=Object.assign(Object.assign({},r),{[e]:a});return s(t),t}))}),[s])]}},5384:()=>{}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/8429.b285ce5a.chunk.js b/ydb/core/viewer/monitoring/static/js/8429.b285ce5a.chunk.js new file mode 100644 index 000000000000..f67340dd15f5 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/8429.b285ce5a.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[8429],{91816:(e,s,t)=>{t.d(s,{b:()=>i});var r=t(56711),a=t(24362),n=t(75859);const l=(0,a.cn)("ydb-info-viewer-skeleton"),o=()=>(0,n.jsxs)("div",{className:l("label"),children:[(0,n.jsx)(r.O,{className:l("label__text")}),(0,n.jsx)("div",{className:l("label__dots")})]}),i=e=>{let{rows:s=8,className:t}=e;return(0,n.jsx)("div",{className:l(null,t),children:[...new Array(s)].map(((e,s)=>(0,n.jsxs)("div",{className:l("row"),children:[(0,n.jsx)(o,{}),(0,n.jsx)(r.O,{className:l("value")})]},"skeleton-row-".concat(s))))})}},63104:(e,s,t)=>{t.d(s,{Y:()=>v});var r=t(54665),a=t(24362),n=t(52317),l=t(94790),o=t(74170),i=t(42784),d=t(27506),c=t(75859);const u=(0,a.cn)("tablet"),v=e=>{var s;let{tablet:t={},tenantName:a}=e;const{TabletId:v,NodeId:m,Type:h}=t,p=null===(s=t.Overall)||void 0===s?void 0:s.toLowerCase(),x=v&&(0,r.ax)(r.ZP.tablet,{id:v},{nodeId:m,tenantName:a,type:h});return(0,c.jsx)(l.f,{className:u("wrapper"),content:(0,c.jsx)(d.Fb,{data:t,className:u("popup-content")}),children:(0,c.jsx)(o.h,{to:x,children:(0,c.jsx)(i.v,{className:u({status:p}),text:(0,n.qV)(t.Type)})})})}},94178:(e,s,t)=>{t.d(s,{V:()=>l});var r=t(24362),a=t(75859);const n=(0,r.cn)("tag"),l=e=>{let{text:s,type:t}=e;return(0,a.jsx)("div",{className:n({type:t}),children:s})}},47057:(e,s,t)=>{t.d(s,{$:()=>o});var r=t(24362),a=t(94178),n=t(75859);const l=(0,r.cn)("tags"),o=e=>{let{tags:s,tagsType:t,className:r=""}=e;return(0,n.jsx)("div",{className:l(null,r),children:s&&s.map(((e,s)=>(0,n.jsx)(a.V,{text:e,type:t},s)))})}},33091:(e,s,t)=>{t.r(s),t.d(s,{Cluster:()=>Fe});var r=t(68963),a=t(56711),n=t(8179),l=t(49352),o=t(86974),i=t(52846),d=t(50422),c=t(69214),u=t(74170),v=t(54665),m=t(77915),h=t(51688);const p=t(905).h.injectEndpoints({endpoints:e=>({getClusterNodes:e.query({queryFn:async()=>{try{const e=await window.api.getClusterNodes(),{SystemStateInfo:s=[]}=e;return{data:s.map(h.Ns)}}catch(e){return{error:e}}},providesTags:["All"]})}),overrideExisting:"throw"});var x=t(79061),j=t(24362),N=t(52317),g=t(34051),b=t(94076),y=t(30601);const T=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],s=arguments.length>1?arguments[1]:void 0;const t=e.reduce(((e,s)=>(s.Version&&(e[s.Version]?e[s.Version]=e[s.Version]+1:e[s.Version]=1),e)),{});return Object.keys(t).map((r=>({title:r,version:r,color:null===s||void 0===s?void 0:s.get((0,y.H)(r)),value:t[r]/e.length*100})))};var C=t(2335),w=t(70885),f=t(19812),S=t(17176),P=t(36985),E=t(26688),k=t(56350),O=t(68242),L=t(74221),A=t(2098),V=t(11551),D=t(47101),I=t(43070),z=t(27102),G=t(80839),M=t(36313),Z=t(43680),F=t.n(Z),R=t(75850),B=t(53809);const W=(0,M.P1)((e=>e),(e=>B.Xv.endpoints.getTenantsInfo.select({clusterName:e}))),H=(0,M.P1)((e=>e),((e,s)=>W(s)),((e,s)=>{var t;return null!==(t=s(e).data)&&void 0!==t?t:[]})),U=e=>e.tenants.searchValue,_=(0,M.P1)([H,G.qz,U],((e,s,t)=>{let r=((e,s)=>s===G.pu.ALL?e:e.filter((e=>e.Overall&&e.Overall!==R.K.Green)))(e,s);return r=((e,s)=>e.filter((e=>{const t=new RegExp(F()(s),"i");return t.test(e.Name||"")||t.test(e.controlPlaneName)})))(r,t),r}));var q=t(4119),Q=t(95478),Y=t(75859);const X=(0,j.cn)("tenants"),J=e=>{let{additionalTenantsProps:s}=e;const t=(0,g.zL)(),[a]=(0,g.Rj)(),{currentData:n,isFetching:l,error:o}=B.Xv.useGetTenantsInfoQuery({clusterName:z.qw},{pollingInterval:a}),i=l&&void 0===n,d=null!==n&&void 0!==n?n:[],u=(0,g.ix)(U),v=(0,g.ix)((e=>_(e,z.qw))),m=(0,g.ix)(G.qz),h=e=>{t((0,G.M6)(e))},p=e=>{t((0,B.gI)(e))};return o?(0,Y.jsx)(E.V,{error:o}):(0,Y.jsxs)(D.l,{children:[(0,Y.jsx)(D.l.Controls,{children:(0,Y.jsxs)(r.Fragment,{children:[(0,Y.jsx)(V.o,{value:u,onChange:p,placeholder:"Database name",className:X("search")}),(0,Y.jsx)(L.T,{value:m,onChange:h}),(0,Y.jsx)(P.C,{total:d.length,current:(null===v||void 0===v?void 0:v.length)||0,label:"Databases",loading:i})]})}),(0,Y.jsx)(D.l.Table,{loading:i,children:(()=>{const e=e=>{var t,r;const a=null!==(t=e.MonitoringEndpoint)&&void 0!==t?t:e.backend;return null===s||void 0===s||null===(r=s.prepareTenantBackend)||void 0===r?void 0:r.call(s,a)},t=[{name:"Name",header:"Database",render:t=>{var r;let{row:a}=t;const n=e(a),l=Boolean(n);return(0,Y.jsx)(c.A,{externalLink:l,className:X("name"),name:a.Name||"unknown database",withLeftTrim:!0,status:a.Overall,hasClipboardButton:!0,path:(0,Q.Sj)({name:a.Name,backend:n}),additionalControls:(0,Y.jsx)("span",{className:X("monitoring-button"),children:null===s||void 0===s||null===(r=s.getMonitoringLink)||void 0===r?void 0:r.call(s,a.Name,a.Type)})})},width:440,sortable:!0,defaultOrder:f.ZP.DESCENDING},{name:"controlPlaneName",header:"Name",render:e=>{let{row:s}=e;return s.controlPlaneName},width:200,sortable:!0,defaultOrder:f.ZP.DESCENDING},{name:"Type",width:200,resizeMinWidth:150,render:e=>{let{row:s}=e;return"Serverless"!==s.Type?s.Type:(0,Y.jsxs)("div",{className:X("type"),children:[(0,Y.jsx)("span",{className:X("type-value"),children:s.Type}),(0,Y.jsx)(S.z,{className:X("type-button"),onClick:()=>p(s.sharedTenantName||""),children:"Show shared"})]})}},{name:"State",width:90,render:e=>{let{row:s}=e;return s.State?s.State.toLowerCase():"\u2014"},customStyle:()=>({textTransform:"capitalize"})},{name:"cpu",header:"CPU",width:80,render:e=>{let{row:s}=e;return s.cpu&&s.cpu>1e4?(0,q.LO)(s.cpu):"\u2014"},align:f.ZP.RIGHT,defaultOrder:f.ZP.DESCENDING},{name:"memory",header:"Memory",width:120,render:e=>{let{row:s}=e;return s.memory?(0,q.SX)(s.memory):"\u2014"},align:f.ZP.RIGHT,defaultOrder:f.ZP.DESCENDING},{name:"storage",header:"Storage",width:120,render:e=>{let{row:s}=e;return s.storage?(0,q.SX)(s.storage):"\u2014"},align:f.ZP.RIGHT,defaultOrder:f.ZP.DESCENDING},{name:"nodesCount",header:"Nodes",width:100,render:e=>{let{row:s}=e;return s.nodesCount?(0,q.uf)(s.nodesCount):"\u2014"},align:f.ZP.RIGHT,defaultOrder:f.ZP.DESCENDING},{name:"groupsCount",header:"Groups",width:100,render:e=>{let{row:s}=e;return s.groupsCount?(0,q.uf)(s.groupsCount):"\u2014"},align:f.ZP.RIGHT,defaultOrder:f.ZP.DESCENDING},{name:"PoolStats",header:"Pools",width:100,resizeMinWidth:60,sortAccessor:e=>{let{PoolStats:s=[]}=e;return s.reduce(((e,s)=>e+(s.Usage||0)),0)},defaultOrder:f.ZP.DESCENDING,align:f.ZP.LEFT,render:e=>{let{row:s}=e;return(0,Y.jsx)(O.m,{pools:s.PoolStats})}},{name:"Tablets",header:"Tablets States",sortable:!1,width:500,resizeMinWidth:500,render:s=>{let{row:t}=s;const r=e(t);return t.Tablets?(0,Y.jsx)(I.e,{path:t.Name,tablets:t.Tablets,nodeIds:t.NodeIds||[],backend:r}):"\u2014"}}];return 0===v.length&&m!==G.pu.ALL?(0,Y.jsx)(k.Q,{name:"thumbsUp",width:"200"}):(0,Y.jsx)(A.G,{columnsWidthLSKey:"databasesTableColumnsWidth",data:v,columns:t,settings:N.LE,emptyDataMessage:"No such tenants"})})()})]})};var K=t(79734),$=t(48897),ee=t(16670),se=t(40067),te=t(67359),re=t(92398);const ae=[{name:"NodeId",header:"#",width:80,resizeMinWidth:80,align:f.ZP.LEFT,render:e=>{let{row:s}=e;return s.NodeId}},{name:"Host",render:e=>{var s;let{row:t}=e;const r=t.Endpoints&&(null===(s=t.Endpoints.find((e=>"http-mon"===e.Name)))||void 0===s?void 0:s.Address),a=t.Host&&"".concat(t.Host).concat(r||"")||"unknown",n=!(0,h.TA)(t)&&t.NodeId?(0,re.a3)(t.NodeId):void 0;return(0,Y.jsx)(c.A,{name:a,path:n,hasClipboardButton:!0,showStatus:!1})},width:400,align:f.ZP.LEFT},{name:"Endpoints",sortable:!1,render:e=>{let{row:s}=e;return s.Endpoints?s.Endpoints.map((e=>{let{Name:s,Address:t}=e;return"".concat(s," ").concat(t)})).join(", "):"-"},width:300,align:f.ZP.LEFT},{name:"Uptime",header:"Uptime",sortAccessor:e=>{let{StartTime:s}=e;return s&&-s},width:120,align:f.ZP.LEFT,render:e=>{let{row:s}=e;return s.Uptime}},{name:"MemoryUsed",header:"Memory used",sortAccessor:e=>{let{MemoryUsed:s=0}=e;return Number(s)},defaultOrder:f.ZP.DESCENDING,render:e=>{let{row:s}=e;return s.MemoryUsed?(0,q.td)(s.MemoryUsed):"\u2014"},width:120,align:f.ZP.RIGHT},{name:"MemoryLimit",header:"Memory limit",sortAccessor:e=>{let{MemoryLimit:s=0}=e;return Number(s)},defaultOrder:f.ZP.DESCENDING,render:e=>{let{row:s}=e;return s.MemoryLimit?(0,q.td)(s.MemoryLimit):"\u2014"},width:120,align:f.ZP.RIGHT},{name:"PoolStats",header:"Pools",sortAccessor:e=>{let{PoolStats:s=[]}=e;return s.reduce(((e,s)=>e+(s.Usage||0)),0)},defaultOrder:f.ZP.DESCENDING,width:80,resizeMinWidth:60,render:e=>{let{row:s}=e;return s.PoolStats?(0,Y.jsx)(O.m,{pools:s.PoolStats}):"\u2014"},align:f.ZP.LEFT},{name:"LoadAverage",header:"Load average",sortAccessor:e=>{let{LoadAveragePercents:s=[]}=e;return s[0]},defaultOrder:f.ZP.DESCENDING,width:140,resizeMinWidth:140,render:e=>{let{row:s}=e;return s.LoadAveragePercents&&s.LoadAveragePercents.length>0?(0,Y.jsx)(te.y,{value:s.LoadAveragePercents[0],percents:!0,capacity:100,colorizeProgress:!0}):"\u2014"},align:f.ZP.LEFT}],ne=e=>{let{nodes:s}=e;return(0,Y.jsx)(A.G,{columnsWidthLSKey:"versionsTableColumnsWidth",data:s,columns:ae,settings:N.LE})};var le=t(84893),oe=t(90861);const ie=(0,j.cn)("ydb-versions-nodes-tree-title"),de=e=>{let s,{title:t,nodes:r,items:a,versionColor:n,versionsValues:l}=e;return s=a?a.reduce(((e,s)=>s.nodes?e+s.nodes.length:e),0):r?r.length:0,(0,Y.jsxs)("div",{className:ie("overview"),children:[(0,Y.jsxs)("div",{className:ie("overview-container"),children:[n?(0,Y.jsx)("div",{className:ie("version-color"),style:{background:n}}):null,t?(0,Y.jsxs)("span",{className:ie("overview-title"),children:[t,(0,Y.jsx)(oe.m,{text:t,size:"s",className:ie("clipboard-button")})]}):null]}),(0,Y.jsxs)("div",{className:ie("overview-info"),children:[(0,Y.jsxs)("div",{children:[(0,Y.jsx)("span",{className:ie("info-value"),children:s}),(0,Y.jsx)("span",{className:ie("info-label",{margin:"left"}),children:"Nodes"})]}),l?(0,Y.jsxs)("div",{className:ie("version-progress"),children:[(0,Y.jsx)("span",{className:ie("info-label",{margin:"right"}),children:"Versions"}),(0,Y.jsx)(le.E,{size:"s",value:100,stack:l})]}):null]})]})},ce=(0,j.cn)("ydb-versions-grouped-node-tree"),ue=e=>{let{title:s,nodes:t,items:a,expanded:n=!1,versionColor:l,versionsValues:o,level:i=0}=e;const[d,c]=r.useState(!1);r.useEffect((()=>{c(n)}),[n]);const u=(0,Y.jsx)(de,{title:s,nodes:t,items:a,versionColor:l,versionsValues:o}),v=()=>{c((e=>!e))};return a?(0,Y.jsx)("div",{className:ce({"first-level":0===i}),children:(0,Y.jsx)(se.L,{name:u,collapsed:!d,hasArrow:!0,onClick:v,onArrowClick:v,children:a.map(((e,s)=>(0,Y.jsx)(ue,{title:e.title,nodes:e.nodes,expanded:n,versionColor:e.versionColor,level:i+1},s)))},s)}):(0,Y.jsx)("div",{className:ce({"first-level":0===i}),children:(0,Y.jsx)(se.L,{name:u,collapsed:!d,hasArrow:!0,onClick:v,onArrowClick:v,children:(0,Y.jsx)("div",{className:ce("dt-wrapper"),children:(0,Y.jsx)(ne,{nodes:t||[]})})},s)})};var ve=t(46754),me=t.n(ve);let he;!function(e){e.VERSION="Version",e.TENANT="Database",e.STORAGE="Storage"}(he||(he={}));const pe=(e,s)=>{var t;return(null===(t=e.title)||void 0===t?void 0:t.localeCompare(s.title||""))||-1},xe=(0,j.cn)("ydb-versions"),je=e=>{let{versionToColor:s}=e;const[t]=(0,g.Rj)(),{data:a=[],isLoading:n}=p.useGetClusterNodesQuery(void 0,{pollingInterval:t}),[l,o]=r.useState(he.VERSION),[i,d]=r.useState(!1),c=e=>{o(e)};if(n)return(0,Y.jsx)(ee.a,{});const u=((e,s,t)=>{if(e&&e.length){if(t===he.VERSION){const t=me()(e,"Version");return Object.keys(t).map((e=>{const r=t[e].filter((e=>{let{Tenants:s}=e;return Boolean(s)})),a=me()(r,"Tenants"),n=Object.keys(a).map((e=>({title:e,nodes:a[e]}))).sort(pe);return n.length?{title:e,items:n,versionColor:null===s||void 0===s?void 0:s.get((0,y.H)(e))}:null})).filter((e=>Boolean(e)))}{const t=e.filter((e=>{let{Tenants:s}=e;return Boolean(s)})),r=me()(t,"Tenants");return Object.keys(r).map((e=>{const t=T(r[e],s),a=me()(r[e],"Version"),n=Object.keys(a).map((e=>({title:e,nodes:a[e],versionColor:null===s||void 0===s?void 0:s.get((0,y.H)(e))})));return n.length?{title:e,items:n,versionsValues:t}:null})).filter((e=>Boolean(e))).sort(pe)}}})(a,s,l),v=((e,s)=>{if(!e||!e.length)return;const t=e.filter((e=>{let{Roles:s}=e;return null===s||void 0===s?void 0:s.includes("Storage")})),r=me()(t,"Version");return Object.keys(r).map((e=>({title:e,nodes:r[e],versionColor:null===s||void 0===s?void 0:s.get((0,y.H)(e))})))})(a,s),m=((e,s)=>{if(!e||!e.length)return;const t=e.filter((e=>{let{Roles:s}=e;return!s})),r=me()(t,"Version");return Object.keys(r).map((e=>({title:e,nodes:r[e],versionColor:null===s||void 0===s?void 0:s.get((0,y.H)(e))})))})(a,s),h=null!==v&&void 0!==v&&v.length?(0,Y.jsxs)(r.Fragment,{children:[(0,Y.jsx)("h3",{children:"Storage nodes"}),v.map((e=>{let{title:s,nodes:t,items:r,versionColor:a}=e;return(0,Y.jsx)(ue,{title:s,nodes:t,items:r,versionColor:a},"storage-nodes-".concat(s))}))]}):null,x=null!==u&&void 0!==u&&u.length?(0,Y.jsxs)(r.Fragment,{children:[(0,Y.jsx)("h3",{children:"Database nodes"}),(0,Y.jsxs)("div",{className:xe("controls"),children:[(0,Y.jsxs)("div",{className:xe("group"),children:[(0,Y.jsx)("span",{className:xe("label"),children:"Group by:"}),(0,Y.jsxs)(K.E,{value:l,onUpdate:c,children:[(0,Y.jsx)(K.E.Option,{value:he.TENANT,children:he.TENANT}),(0,Y.jsx)(K.E.Option,{value:he.VERSION,children:he.VERSION})]})]}),(0,Y.jsx)($.X,{className:xe("checkbox"),onChange:()=>d((e=>!e)),checked:i,children:"All expanded"})]}),u.map((e=>{let{title:s,nodes:t,items:r,versionColor:a,versionsValues:n}=e;return(0,Y.jsx)(ue,{title:s,nodes:t,items:r,expanded:i,versionColor:a,versionsValues:n},"tenant-nodes-".concat(s))}))]}):null,j=null!==m&&void 0!==m&&m.length?(0,Y.jsxs)(r.Fragment,{children:[(0,Y.jsx)("h3",{children:"Other nodes"}),m.map((e=>{let{title:s,nodes:t,items:r,versionColor:a,versionsValues:n}=e;return(0,Y.jsx)(ue,{title:s,nodes:t,items:r,versionColor:a,versionsValues:n},"other-nodes-".concat(s))}))]}):null;return(0,Y.jsxs)("div",{className:xe("versions"),children:[h,x,j]})};var Ne=t(94790),ge=t(23373),be=t(91816),ye=t(32270),Te=t(63104),Ce=t(47057),we=t(81854);const fe=(0,j.cn)("ydb-cluster-versions-bar"),Se=e=>{let{versionsValues:s=[]}=e;return(0,Y.jsxs)("div",{className:fe(),children:[(0,Y.jsx)(le.E,{value:100,stack:s,size:"s"}),(0,Y.jsx)("div",{className:fe("versions"),children:s.map(((e,t)=>(0,Y.jsx)("div",{className:fe("version-title"),style:{color:e.color},title:e.version,children:"".concat(e.version).concat(t===s.length-1?"":",")},e.version)))})]})};var Pe=t(30817);const Ee=JSON.parse('{"disk-type":"Disk Type","erasure":"Erasure","allocated":"Allocated","available":"Available","usage":"Usage","dc":"DC","tablets":"Tablets","databases":"Databases","nodes":"Nodes","load":"Load","storage-size":"Storage size","storage-groups":"Storage groups, {{diskType}}","links":"Links","versions":"Versions"}'),ke=JSON.parse('{"disk-type":"\u0422\u0438\u043f \u0434\u0438\u0441\u043a\u0430","erasure":"\u0420\u0435\u0436\u0438\u043c","allocated":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043e","available":"\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u043e","usage":"\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435","dc":"\u0414\u0426","tablets":"\u0422\u0430\u0431\u043b\u0435\u0442\u043a\u0438","databases":"\u0411\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445","nodes":"\u0423\u0437\u043b\u044b","load":"\u041d\u0430\u0433\u0440\u0443\u0437\u043a\u0430","storage-size":"\u0420\u0430\u0437\u043c\u0435\u0440 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430","storage-groups":"\u0413\u0440\u0443\u043f\u043f\u044b \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f, {{diskType}}","links":"\u0421\u0441\u044b\u043b\u043a\u0438","versions":"\u0412\u0435\u0440\u0441\u0438\u0438"}'),Oe=(0,Pe.wZ)("ydb-cluster",{ru:ke,en:Ee});var Le=t(28164);const Ae=(e,s)=>e.Type===Le.F.TxAllocator?1:s.Type===Le.F.TxAllocator?-1:0,Ve=(0,j.cn)("cluster-info"),De=e=>{let{stats:s}=e;const{diskType:t,erasure:r,allocatedSize:a,availableSize:n}=s,l=(0,we.dT)(Math.max(a,n),2),o=(0,we.td)({value:a,size:l}),i=(0,we.td)({value:n,size:l}),d=Math.round(a/(a+n)*100),c=[{label:Oe("disk-type"),value:t},{label:Oe("erasure"),value:r},{label:Oe("allocated"),value:o},{label:Oe("available"),value:i},{label:Oe("usage"),value:d+"%"}];return(0,Y.jsx)(ge.Z,{dots:!0,info:c,className:Ve("groups-stats-popup-content"),size:"s"})},Ie=e=>{let{stats:s}=e;return(0,Y.jsx)("div",{className:Ve("storage-groups-stats"),children:Object.values(s).map((e=>(0,Y.jsx)(Ne.f,{placement:["right"],content:(0,Y.jsx)(De,{stats:e}),children:(0,Y.jsx)(te.y,{className:Ve("groups-stats-bar"),value:e.createdGroups,capacity:e.totalGroups})},e.erasure)))})},ze=(e,s,t,r,a)=>{const n=[];if(e.DataCenters&&n.push({label:Oe("dc"),value:(0,Y.jsx)(Ce.$,{tags:e.DataCenters})}),e.SystemTablets){const s=e.SystemTablets.slice(0).sort(Ae);n.push({label:Oe("tablets"),value:(0,Y.jsx)("div",{className:Ve("system-tablets"),children:s.map(((e,s)=>(0,Y.jsx)(Te.Y,{tablet:e},s)))})})}return e.Tenants&&n.push({label:Oe("databases"),value:e.Tenants}),n.push({label:Oe("nodes"),value:(0,Y.jsx)(te.y,{value:null===e||void 0===e?void 0:e.NodesAlive,capacity:null===e||void 0===e?void 0:e.NodesTotal})},{label:Oe("load"),value:(0,Y.jsx)(te.y,{value:null===e||void 0===e?void 0:e.LoadAverage,capacity:null===e||void 0===e?void 0:e.NumberOfCpus})},{label:Oe("storage-size"),value:(0,Y.jsx)(te.y,{value:null===e||void 0===e?void 0:e.StorageUsed,capacity:null===e||void 0===e?void 0:e.StorageTotal,formatValues:q.QO})}),Object.keys(t).length&&n.push(...(e=>Object.keys(e).map((s=>({label:Oe("storage-groups",{diskType:s}),value:(0,Y.jsx)(Ie,{stats:e[s]})}))))(t)),n.push(...r,{label:Oe("links"),value:(0,Y.jsx)("div",{className:Ve("links"),children:a.map((e=>{let{title:s,url:t}=e;return(0,Y.jsx)(ye.j,{title:s,url:t},s)}))})},{label:Oe("versions"),value:(0,Y.jsx)(Se,{versionsValues:s})}),n},Ge=e=>{let{cluster:s={},versionsValues:t=[],groupsStats:r={},loading:a,error:n,additionalClusterProps:l={}}=e;const o=(0,g.ix)((e=>e.singleClusterMode));let i=z.y3+"/internal";o&&!z.j4&&(i="/internal");const{info:d=[],links:c=[]}=l,u=ze(s,t,r,d,[{title:N.Ah,url:i},...c]);return(0,Y.jsx)("div",{className:Ve(),children:(0,Y.jsx)("div",{className:Ve("info"),children:a?(0,Y.jsx)(be.b,{className:Ve("skeleton"),rows:9}):n?(0,Y.jsx)(E.V,{error:n,className:Ve("error")}):(0,Y.jsx)(ge.Z,{dots:!0,info:u})})})};var Me=t(81003);const Ze=(0,j.cn)("cluster");function Fe(e){var s,t;let{additionalClusterProps:h,additionalTenantsProps:j,additionalNodesProps:y,additionalVersionsProps:f}=e;const S=r.useRef(null),P=(0,g.zL)(),E=function(){const e=(0,g.zL)(),s=(0,g.ix)((e=>e.cluster.defaultClusterTab)),t=(0,o.$B)(v.ZP.cluster),{activeTab:a}=(null===t||void 0===t?void 0:t.params)||{};let n;n=(0,Me.V2)(a)?a:s;return r.useEffect((()=>{n!==s&&e((0,m.LQ)(n))}),[n,s,e]),n}(),[{clusterName:k,backend:O}]=(0,i.useQueryParams)({clusterName:i.StringParam,backend:i.StringParam}),[L]=(0,g.Rj)(),{data:{clusterData:A={},groupsStats:V}={},isLoading:D,error:I}=m.UM.useGetClusterInfoQuery(null!==k&&void 0!==k?k:void 0,{pollingInterval:L}),z=I&&"object"===typeof I?I:void 0,{data:G=[],isLoading:M}=p.useGetClusterNodesQuery(void 0),Z=D||M,{Name:F}=A;r.useEffect((()=>{P((0,x.J)("cluster",{}))}),[P,F]);const R=r.useMemo((()=>null!==f&&void 0!==f&&f.getVersionToColorMap?null===f||void 0===f?void 0:f.getVersionToColorMap():(0,b.ZP)(null===A||void 0===A?void 0:A.Versions)),[f,A]),B=r.useMemo((()=>T(G,R)),[G,R]),W=null!==(s=null!==(t=null===A||void 0===A?void 0:A.Name)&&void 0!==t?t:k)&&void 0!==s?s:N.DO,H=r.useMemo((()=>Me._Y.find((e=>{let{id:s}=e;return s===E}))),[E]);return(0,Y.jsxs)("div",{className:Ze(),ref:S,children:[(0,Y.jsx)(l.ql,{defaultTitle:"".concat(W," \u2014 YDB Monitoring"),titleTemplate:"%s \u2014 ".concat(W," \u2014 YDB Monitoring"),children:H?(0,Y.jsx)("title",{children:H.title}):null}),(0,Y.jsx)("div",{className:Ze("header"),children:(()=>{var e;return Z?(0,Y.jsx)(a.O,{className:Ze("title-skeleton")}):(0,Y.jsx)(c.A,{size:"m",status:null===A||void 0===A?void 0:A.Overall,name:null!==(e=null===A||void 0===A?void 0:A.Name)&&void 0!==e?e:N.DO,className:Ze("title")})})()}),(0,Y.jsxs)("div",{className:Ze("tabs"),children:[(0,Y.jsx)(n.m,{size:"l",allowNotSelected:!0,activeTab:E,items:Me._Y,wrapTo:(e,s)=>{let{id:t}=e;const r=(0,Me.B7)(t,{clusterName:k,backend:O});return(0,Y.jsx)(u.h,{to:r,onClick:()=>{P((0,m.LQ)(t))},children:s},t)}}),(0,Y.jsx)(d.q,{})]}),(0,Y.jsx)("div",{children:(0,Y.jsxs)(o.rs,{children:[(0,Y.jsx)(o.AW,{path:(0,v.Fz)((0,Me.B7)(Me.xu.overview)).pathname,children:(0,Y.jsx)(Ge,{cluster:A,groupsStats:V,versionsValues:B,loading:Z,error:z,additionalClusterProps:h})}),(0,Y.jsx)(o.AW,{path:(0,v.Fz)((0,Me.B7)(Me.xu.tenants)).pathname,children:(0,Y.jsx)(J,{additionalTenantsProps:j})}),(0,Y.jsx)(o.AW,{path:(0,v.Fz)((0,Me.B7)(Me.xu.nodes)).pathname,children:(0,Y.jsx)(C.G,{parentContainer:S.current,additionalNodesProps:y})}),(0,Y.jsx)(o.AW,{path:(0,v.Fz)((0,Me.B7)(Me.xu.storage)).pathname,children:(0,Y.jsx)(w.V,{parentContainer:S.current,additionalNodesProps:y})}),(0,Y.jsx)(o.AW,{path:(0,v.Fz)((0,Me.B7)(Me.xu.versions)).pathname,children:(0,Y.jsx)(je,{versionToColor:R})}),(0,Y.jsx)(o.AW,{render:()=>(0,Y.jsx)(o.l_,{to:(0,v.Fz)((0,Me.B7)(E))})})]})})]})}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/8607.1e377882.chunk.js b/ydb/core/viewer/monitoring/static/js/8607.e8952666.chunk.js similarity index 99% rename from ydb/core/viewer/monitoring/static/js/8607.1e377882.chunk.js rename to ydb/core/viewer/monitoring/static/js/8607.e8952666.chunk.js index bbfd94bb25ef..fbfed346d4c9 100644 --- a/ydb/core/viewer/monitoring/static/js/8607.1e377882.chunk.js +++ b/ydb/core/viewer/monitoring/static/js/8607.e8952666.chunk.js @@ -1 +1 @@ -"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[8607],{68607:(t,e,s)=>{function a(t,e){if(e.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}function r(t,e,s){a(t,e),e.set(t,s)}s.r(e),s.d(e,{TableOrViewSuggestion:()=>tn,parseClickHouseQuery:()=>$K,parseClickHouseQueryWithoutCursor:()=>zK,parseMySqlQuery:()=>ZK,parseMySqlQueryWithoutCursor:()=>JK,parsePostgreSqlQuery:()=>jK,parsePostgreSqlQueryWithoutCursor:()=>qK,parseYqQuery:()=>aQ,parseYqQueryWithoutCursor:()=>sQ,parseYqlQuery:()=>eQ,parseYqlQueryWithoutCursor:()=>tQ});var i,c,n,h,E,T,o,R,A,S,l,O,I,u,N,L,C,_,P,M,d,U,m,D,p,g,x,k,H,G,F,v,B,y,f,Y,w,b,W,V,X,K,Q,J,Z,q,j,z,$,tt,et,st,at,rt,it,ct,nt,ht,Et,Tt,ot,Rt,At,St,lt,Ot,It,ut,Nt,Lt,Ct,_t,Pt,Mt,dt,Ut,mt,Dt,pt,gt,xt,kt,Ht,Gt,Ft,vt,Bt,yt,ft,Yt,wt,bt,Wt,Vt,Xt,Kt,Qt,Jt,Zt,qt,jt,zt,$t,te,ee,se,ae,re,ie,ce,ne,he,Ee,Te,oe,Re,Ae,Se,le,Oe,Ie,ue,Ne,Le,Ce,_e,Pe,Me,de,Ue,me,De,pe,ge,xe,ke,He,Ge,Fe,ve,Be,ye,fe,Ye,we,be,We,Ve,Xe,Ke,Qe,Je,Ze,qe,je,ze,$e,ts,es,ss,as,rs,is,cs,ns,hs,Es,Ts,os,Rs,As,Ss,ls,Os,Is,us,Ns,Ls,Cs,_s,Ps,Ms,ds,Us,ms,Ds,ps,gs,xs,ks,Hs,Gs,Fs,vs,Bs,ys,fs,Ys,ws,bs,Ws,Vs,Xs,Ks,Qs,Js,Zs,qs,js=s(64572);function zs(t,e,s){if(!e.has(t))throw new TypeError("attempted to "+s+" private field on non-instance");return e.get(t)}function $s(t,e,s){return function(t,e,s){if(e.set)e.set.call(t,s);else{if(!e.writable)throw new TypeError("attempted to set read only private field");e.value=s}}(t,zs(t,e,"set"),s),s}function ta(t,e){return e.get?e.get.call(t):e.value}function ea(t,e){return ta(t,zs(t,e,"get"))}function sa(t,e,s){if(!e.has(t))throw new TypeError("attempted to get private field on non-instance");return s}function aa(t,e,s){return function(t,e){if(t!==e)throw new TypeError("Private static access of wrong provenance")}(t,e),function(t,e){if(void 0===t)throw new TypeError("attempted to "+e+" private static field before its declaration")}(s,"get"),ta(t,s)}var ra,ia,ca,na,ha=Object.defineProperty,Ea=(t,e)=>ha(t,"name",{value:e,configurable:!0});(ia=ra||(ra={})).EOF=-1,ia.UNKNOWN_SOURCE_NAME="",(na=ca||(ca={})).INVALID_TYPE=0,na.EPSILON=-2,na.MIN_USER_TOKEN_TYPE=1,na.EOF=ra.EOF,na.DEFAULT_CHANNEL=0,na.HIDDEN_CHANNEL=1,na.MIN_USER_CHANNEL_VALUE=2;var Ta=Ea((t=>{const e=t;return void 0!==e.tokenSource&&void 0!==e.channel}),"isToken"),oa=(c=new WeakMap,i=class t{constructor(t,e){(0,js.Z)(this,"start",void 0),(0,js.Z)(this,"stop",void 0),r(this,c,{writable:!0,value:void 0}),this.start=t,this.stop=e,$s(this,c,Math.imul(651+t,31)+e)}static of(e,s){return e!==s||e<0||e>t.INTERVAL_POOL_MAX_VALUE?new t(e,s):(aa(t,i,n)[e]||(aa(t,i,n)[e]=new t(e,e)),aa(t,i,n)[e])}equals(t){return this.start===t.start&&this.stop===t.stop}hashCode(){return ea(this,c)}startsBeforeDisjoint(t){return this.start=t.start}startsAfter(t){return this.start>t.start}startsAfterDisjoint(t){return this.start>t.stop}startsAfterNonDisjoint(t){return this.start>t.start&&this.start<=t.stop}disjoint(t){return this.startsBeforeDisjoint(t)||this.startsAfterDisjoint(t)}adjacent(t){return this.start===t.stop+1||this.stop===t.start-1}properlyContains(t){return t.start>=this.start&&t.stop<=this.stop}union(e){return t.of(Math.min(this.start,e.start),Math.max(this.stop,e.stop))}intersection(e){return t.of(Math.max(this.start,e.start),Math.min(this.stop,e.stop))}differenceNotProperlyContained(e){let s=null;return e.startsBeforeNonDisjoint(this)?s=t.of(Math.max(this.start,e.stop+1),this.stop):e.startsAfterNonDisjoint(this)&&(s=t.of(this.start,e.start-1)),s}toString(){return this.start===this.stop?this.start.toString():this.start.toString()+".."+this.stop.toString()}get length(){return this.stop0){const e=r.charAt(0);if("'"===e){a[t]=null;continue}if(e.toUpperCase()===e){s[t]=null;continue}}s[t]=null,a[t]=null}}return new t(s,a,e)}getMaxTokenType(){return this.maxTokenType}getLiteralName(t){return t>=0&&t=0&&t=0&&t0&&void 0!==arguments[0]?arguments[0]:aa(t,E,T)}static updateFromComparable(t,e){var s;return this.update(t,null!==(s=null===e||void 0===e?void 0:e.hashCode())&&void 0!==s?s:0)}static update(t,e){return e=(e=Math.imul(e,3432918353))<<15|e>>>17,t=(t^=e=Math.imul(e,461845907))<<13|t>>>19,t=Math.imul(t,5)+3864292196}},"MurmurHash"),T={writable:!0,value:701},(0,js.Z)(E,"finish",((t,e)=>(t^=4*e,t^=t>>>16,t=Math.imul(t,2246822507),t^=t>>>13,t=Math.imul(t,3266489909),t^=t>>>16))),(0,js.Z)(E,"hashCode",((t,e)=>E.finish(E.update(null!==e&&void 0!==e?e:aa(E,E,T),t),1))),E),Sa=(R=new WeakMap,A=new WeakMap,o=class t{constructor(t){r(this,R,{writable:!0,value:[]}),r(this,A,{writable:!0,value:void 0}),t&&this.addSet(t)}static of(e,s){const a=new t;return a.addRange(e,s),a}[Symbol.iterator](){return ea(this,R)[Symbol.iterator]()}get(t){return ea(this,R)[t]}get minElement(){return 0===ea(this,R).length?ca.INVALID_TYPE:ea(this,R)[0].start}get maxElement(){return 0===ea(this,R).length?ca.INVALID_TYPE:ea(this,R)[ea(this,R).length-1].stop}clear(){$s(this,A,void 0),$s(this,R,[])}addOne(t){this.addInterval(new oa(t,t))}addRange(t,e){this.addInterval(new oa(t,e))}addInterval(t){if($s(this,A,void 0),0===ea(this,R).length)ea(this,R).push(t);else{for(let e=0;ethis.addInterval(t)),this),this}complementWithVocabulary(e){const s=new t;return e?0===e.length?s:(s.addSet(e),s.subtract(this)):s}complement(e,s){const a=new t;return a.addInterval(new oa(e,s)),a.subtract(this)}or(e){const s=new t;return s.addSet(this),e.forEach((t=>s.addSet(t))),s}and(e){if(0===e.length)return new t;const s=ea(this,R),a=ea(e,R);let r;const i=s.length,c=a.length;let n=0,h=0;for(;nt.stop){a++;continue}let c,n;i.start>t.start&&(c=new oa(t.start,i.start-1)),i.stopt))return!0;s=a-1}}return!1}removeRange(t){if($s(this,A,void 0),t.start===t.stop)this.removeOne(t.start);else if(null!==ea(this,R)){let e=0;for(const s of ea(this,R)){if(t.stop<=s.start)return;if(t.start>s.start&&t.stop=s.stop?(ea(this,R).splice(e,1),e-=1):t.start1&&(e+="{");for(let s=0;s":e+=t?"'"+String.fromCodePoint(r)+"'":r:e+=t?"'"+String.fromCodePoint(r)+"'..'"+String.fromCodePoint(i)+"'":r+".."+i,s1&&(e+="}"),e}toStringWithVocabulary(t){if(0===ea(this,R).length)return"{}";let e="";this.length>1&&(e+="{");for(let s=0;s":e+=this.elementName(t,r);else for(let s=r;s<=i;++s)s>r&&(e+=", "),e+=this.elementName(t,s);s1&&(e+="}"),e}toStringWithRuleNames(t){if(0===ea(this,R).length)return"{}";let e="";this.length>1&&(e+="{");const s=Ra.fromTokenNames(t);for(let a=0;a":e+=this.elementName(s,r);else for(let a=r;a<=i;++a)a>r&&(e+=", "),e+=this.elementName(s,a);a1&&(e+="}"),e}toArray(){const t=[];for(const e of ea(this,R))for(let s=e.start;s<=e.stop;s++)t.push(s);return t}get length(){let t=0;if(1===ea(this,R).length){const t=ea(this,R)[0];return t.stop-t.start+1}for(const e of ea(this,R))t+=e.length;return t}elementName(t,e){return e===ca.EOF?"":e===ca.EPSILON?"":t.getDisplayName(e)}},Ea(o,"IntervalSet"),o),la=(Ea(S=class{constructor(t){(0,js.Z)(this,"target",void 0),this.target=t}get isEpsilon(){return!1}get label(){return null}},"Transition"),(0,js.Z)(S,"INVALID",0),(0,js.Z)(S,"EPSILON",1),(0,js.Z)(S,"RANGE",2),(0,js.Z)(S,"RULE",3),(0,js.Z)(S,"PREDICATE",4),(0,js.Z)(S,"ATOM",5),(0,js.Z)(S,"ACTION",6),(0,js.Z)(S,"SET",7),(0,js.Z)(S,"NOT_SET",8),(0,js.Z)(S,"WILDCARD",9),(0,js.Z)(S,"PRECEDENCE",10),S),Oa=(Ea(l=class extends la{constructor(t,e){super(t),(0,js.Z)(this,"set",void 0),this.set=e||Sa.of(ca.INVALID_TYPE,ca.INVALID_TYPE)}get transitionType(){return la.SET}get label(){return this.set}matches(t,e,s){return this.set.contains(t)}toString(){return this.set.toString()}},"SetTransition"),l),Ia=(Ea(O=class extends Oa{get transitionType(){return la.NOT_SET}matches(t,e,s){return t>=e&&t<=s&&!super.matches(t,e,s)}toString(){return"~"+super.toString()}},"NotSetTransition"),O),ua=(u=new WeakMap,Ea(I=class t{constructor(t){r(this,u,{writable:!0,value:void 0}),$s(this,u,t)}static calculateEmptyHashCode(){let t=Aa.initialize(31);return t=Aa.finish(t,0),t}static calculateHashCodeSingle(t,e){let s=Aa.initialize(31);return s=Aa.updateFromComparable(s,t),s=Aa.update(s,e),s=Aa.finish(s,2),s}static calculateHashCodeList(t,e){let s=Aa.initialize(31);for(const a of t)s=Aa.updateFromComparable(s,a);for(const a of e)s=Aa.update(s,a);return s=Aa.finish(s,2*t.length),s}isEmpty(){return!1}hasEmptyPath(){return this.getReturnState(this.length-1)===t.EMPTY_RETURN_STATE}hashCode(){return ea(this,u)}toString(t){return""}},"PredictionContext"),(0,js.Z)(I,"EMPTY_RETURN_STATE",2147483647),(0,js.Z)(I,"EMPTY",void 0),(0,js.Z)(I,"traceATNSimulator",!1),I),Na=Ea((t=>null===t?"null":t),"valueToString"),La=Ea((t=>Array.isArray(t)?"["+t.map(Na).join(", ")+"]":"null"),"arrayToString"),Ca=Ea(((t,e)=>{if(t===e)return!0;if(t.length!==e.length)return!1;for(let s=0;s{if(t===e)return!0;if(t.length!==e.length)return!1;for(let s=0;s1&&void 0!==arguments[1]&&arguments[1];return t=t.replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r"),e&&(t=t.replace(/ /g,"\xb7")),t}),"escapeWhitespace"),Ma=(N=class t extends ua{constructor(t,e){return super(ua.calculateHashCodeList(t,e)),(0,js.Z)(this,"parents",[]),(0,js.Z)(this,"returnStates",[]),this.parents=t,this.returnStates=e,this}isEmpty(){return this.returnStates[0]===ua.EMPTY_RETURN_STATE}get length(){return this.returnStates.length}getParent(t){return this.parents[t]}getReturnState(t){return this.returnStates[t]}equals(e){return this===e||e instanceof t&&this.hashCode()===e.hashCode()&&(_a(this.returnStates,e.returnStates)&&Ca(this.parents,e.parents))}toString(){if(this.isEmpty())return"[]";const t=[];for(let e=0;e":null!==(e=null===(s=this.symbol)||void 0===s?void 0:s.text)&&void 0!==e?e:""}toStringTree(){return this.toString()}},"TerminalNode"),_),Da=(Ea(P=class extends ma{accept(t){return t.visitErrorNode(this)}},"ErrorNode"),P),pa=(M=class t{static toStringTree(e,s,a){var r,i;s=null!==(r=s)&&void 0!==r?r:null,null!==(a=null!==(i=a)&&void 0!==i?i:null)&&(s=a.ruleNames);let c=t.getNodeText(e,s);c=Pa(c,!1);const n=e.getChildCount();if(0===n)return c;let h="("+c+" ";n>0&&(c=t.toStringTree(e.getChild(0),s),h=h.concat(c));for(let E=1;E1&&void 0!==arguments[1]?arguments[1]:-1;(0,js.Z)(this,"start",null),(0,js.Z)(this,"stop",null),(0,js.Z)(this,"children",[]),(0,js.Z)(this,"invokingState",void 0),r(this,U,{writable:!0,value:void 0}),$s(this,U,t),this.invokingState=e}copyFrom(t){$s(this,U,ea(t,U)),this.invokingState=t.invokingState,this.children.slice(0,this.children.length),this.start=t.start,this.stop=t.stop,t.children&&t.children.forEach((t=>{t instanceof Da&&(this.children.push(t),t.parent=this)}))}enterRule(t){}exitRule(t){}addChild(t){return this.children.push(t),t}removeLastChild(){this.children.pop()}addTokenNode(t){const e=new ma(t);return this.children.push(e),e.parent=this,e}addErrorNode(t){return t.parent=this,this.children.push(t),t}getChild(t,e){if(t<0||t>=this.children.length)return null;if(!e)return this.children[t];for(const s of this.children)if(s instanceof e){if(0===t)return s;t-=1}return null}getToken(t,e){if(e<0||e>=this.children.length)return null;for(const a of this.children){var s;if("symbol"in a)if((null===(s=a.symbol)||void 0===s?void 0:s.type)===t){if(0===e)return a;e-=1}}return null}getTokens(t){const e=[];for(const a of this.children){var s;if("symbol"in a)(null===(s=a.symbol)||void 0===s?void 0:s.type)===t&&e.push(a)}return e}getRuleContext(t,e){return this.getChild(t,e)}getRuleContexts(t){const e=[];for(const s of this.children)s instanceof t&&e.push(s);return e}getChildCount(){return this.children.length}getSourceInterval(){return null===this.start||null===this.stop?oa.INVALID_INTERVAL:new oa(this.start.tokenIndex,this.stop.tokenIndex)}get parent(){return ea(this,U)}set parent(t){$s(this,U,t)}depth(){let t=0,e=this;for(;null!==e;)e=e.parent,t+=1;return t}isEmpty(){return-1===this.invokingState}get ruleContext(){return this}get ruleIndex(){return-1}getPayload(){return this}getText(){return 0===this.children.length?"":this.children.map((t=>t.getText())).join("")}getAltNumber(){return ja.INVALID_ALT_NUMBER}setAltNumber(t){}accept(t){return t.visitChildren(this)}toStringTree(){return 1===arguments.length?pa.toStringTree(this,null,arguments.length<=0?void 0:arguments[0]):pa.toStringTree(this,arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1])}toString(t,e){var s,a;t=null!==(s=t)&&void 0!==s?s:null,e=null!==(a=e)&&void 0!==a?a:null;let r=this,i="[";for(;null!==r&&r!==e;){if(null===t)r.isEmpty()||(i+=r.invokingState);else{const e=r.ruleIndex;i+=e>=0&&e1&&void 0!==arguments[1]?arguments[1]:aa(t,p,F);if(r(this,g,{writable:!0,value:void 0}),r(this,x,{writable:!0,value:void 0}),r(this,k,{writable:!0,value:0}),r(this,H,{writable:!0,value:void 0}),e instanceof t){$s(this,g,ea(e,g)),$s(this,x,ea(e,x).slice(0));for(let t=0;tea(this,H)&&this.expand();const s=this.getBucket(t);let a=ea(this,x)[s];var r;if(!a)return a=[t],ea(this,x)[s]=a,$s(this,k,(r=ea(this,k),++r)),t;for(const i of a)if(ea(this,g).equals(i,t))return i;return a.push(t),$s(this,k,(e=ea(this,k),++e)),t}get(t){if(null==t)return t;const e=this.getBucket(t),s=ea(this,x)[e];if(s)for(const a of s)if(ea(this,g).equals(a,t))return a}hashCode(){let t=Aa.initialize();for(const e of ea(this,x))if(null!=e)for(const s of e){if(null==s)break;t=Aa.update(t,ea(this,g).hashCode(s))}return t=Aa.finish(t,this.size),t}equals(e){return e===this||e instanceof t&&(e.size===this.size&&this.containsAll(e))}add(t){return this.getOrAdd(t)===t}contains(t){return this.containsFast(t)}containsFast(t){return null!=t&&void 0!==this.get(t)}*[Symbol.iterator](){yield*this.toArray()}toArray(){const t=new Array(this.size);let e=0;for(const s of ea(this,x))if(null!=s)for(const a of s){if(null==a)break;t[e++]=a}return t}containsAll(e){if(e instanceof t){for(const t of ea(e,x))if(null!=t)for(const e of t){if(null==e)break;if(!this.containsFast(e))return!1}}else for(const t of e)if(!this.containsFast(t))return!1;return!0}addAll(t){let e=!1;for(const s of t){this.getOrAdd(s)!==s&&(e=!0)}return e}clear(){$s(this,x,this.createBuckets(aa(t,p,F))),$s(this,k,0),$s(this,H,Math.floor(aa(t,p,F)*aa(t,p,G)))}toString(){if(0===this.size)return"{}";let t="{",e=!0;for(const s of ea(this,x))if(null!=s)for(const a of s){if(null==a)break;e?e=!1:t+=", ",t+=a.toString()}return t+="}",t}toTableString(){let t="";for(const e of ea(this,x)){if(null==e){t+="null\n";continue}t+="[";let s=!0;for(const a of e)s?s=!1:t+=" ",t+=null==a?"_":a.toString();t+="]\n"}return t}getBucket(t){return ea(this,g).hashCode(t)&ea(this,x).length-1}expand(){const e=ea(this,x),s=2*ea(this,x).length,a=this.createBuckets(s);$s(this,x,a),$s(this,H,Math.floor(s*aa(t,p,G)));for(const t of e)if(t)for(const e of t){const t=this.getBucket(e);let s=ea(this,x)[t];s||(s=[],ea(this,x)[t]=s),s.push(e)}}get size(){return ea(this,k)}get isEmpty(){return 0===ea(this,k)}createBuckets(t){return new Array(t)}},Ea(p,"HashSet"),G={writable:!0,value:.75},F={writable:!0,value:16},p),Ga=(v=class{constructor(t){(0,js.Z)(this,"keyComparator",void 0),this.keyComparator=t}hashCode(t){return this.keyComparator.hashCode(t.key)}equals(t,e){return this.keyComparator.equals(t.key,e.key)}},Ea(v,"MapKeyEqualityComparator"),v),Fa=(Ea(B=class t{constructor(e){(0,js.Z)(this,"backingStore",void 0),this.backingStore=new Ha(e instanceof t?e.backingStore:new Ga(e))}clear(){this.backingStore.clear()}containsKey(t){return this.backingStore.contains({key:t})}get(t){const e=this.backingStore.get({key:t});if(e)return e.value}get isEmpty(){return this.backingStore.isEmpty}set(t,e){const s=this.backingStore.get({key:t,value:e});let a;return s?(a=s.value,s.value=e):this.backingStore.add({key:t,value:e}),a}setIfAbsent(t,e){const s=this.backingStore.get({key:t,value:e});let a;return s?a=s.value:this.backingStore.add({key:t,value:e}),a}values(){return this.backingStore.toArray().map((t=>t.value))}get size(){return this.backingStore.size}hashCode(){return this.backingStore.hashCode()}equals(t){return this.backingStore.equals(t.backingStore)}},"HashMap"),B),va=Ea(((t,e)=>{if(e||(e=ga.empty),!e.parent||e===ga.empty)return ua.EMPTY;const s=va(t,e.parent),a=t.states[e.invokingState].transitions[0];return da.create(s,a.followState.stateNumber)}),"predictionContextFromRuleContext"),Ba=Ea(((t,e,s)=>{if(t.isEmpty())return t;let a=s.get(t);if(a)return a;if(a=e.get(t),a)return s.set(t,a),a;let r,i=!1,c=[];for(let h=0;h{if(t===e)return t;if(t instanceof da&&e instanceof da)return wa(t,e,s,a);if(s){if(t instanceof Ua)return t;if(e instanceof Ua)return e}return t instanceof da&&(t=new Ma([t.parent],[t.returnState])),e instanceof da&&(e=new Ma([e.parent],[e.returnState])),fa(t,e,s,a)}),"merge"),fa=Ea(((t,e,s,a)=>{if(a){let s=a.get(t,e);if(s)return s;if(s=a.get(e,t),s)return s}let r=0,i=0,c=0,n=new Array(t.returnStates.length+e.returnStates.length).fill(0),h=new Array(t.returnStates.length+e.returnStates.length).fill(null);for(;r a"),t):T.equals(e)?(null!==a&&a.set(t,e,e),e):(Ya(h),null!==a&&a.set(t,e,T),ua.traceATNSimulator&&console.log("mergeArrays a="+t+",b="+e+" -> "+T),T)}),"mergeArrays"),Ya=Ea((t=>{const e=new Fa(xa.instance);for(const a of t)a&&(e.containsKey(a)||e.set(a,a));for(let a=0;a{if(null!==a){let s=a.get(t,e);if(null!==s)return s;if(s=a.get(e,t),null!==s)return s}const r=ba(t,e,s);if(null!==r)return null!==a&&a.set(t,e,r),r;if(t.returnState===e.returnState){const r=ya(t.parent,e.parent,s,a);if(r===t.parent)return t;if(r===e.parent)return e;const i=da.create(r,t.returnState);return null!==a&&a.set(t,e,i),i}{let s=null;if((t===e||null!==t.parent&&t.parent===e.parent)&&(s=t.parent),null!==s){const r=[t.returnState,e.returnState];t.returnState>e.returnState&&(r[0]=e.returnState,r[1]=t.returnState);const i=new Ma([s,s],r);return null!==a&&a.set(t,e,i),i}const r=[t.returnState,e.returnState];let i=[t.parent,e.parent];t.returnState>e.returnState&&(r[0]=e.returnState,r[1]=t.returnState,i=[e.parent,t.parent]);const c=new Ma(i,r);return null!==a&&a.set(t,e,c),c}}),"mergeSingletons"),ba=Ea(((t,e,s)=>{if(s){if(t===ua.EMPTY||e===ua.EMPTY)return ua.EMPTY}else{if(t===ua.EMPTY&&e===ua.EMPTY)return ua.EMPTY;if(t===ua.EMPTY){const t=[e.returnState,ua.EMPTY_RETURN_STATE],s=[e.parent,null];return new Ma(s,t)}if(e===ua.EMPTY){const e=[t.returnState,ua.EMPTY_RETURN_STATE],s=[t.parent,null];return new Ma(s,e)}}return null}),"mergeRoot"),Wa=(y=class{constructor(t){(0,js.Z)(this,"data",void 0),this.data=t?new Uint32Array(t.map((t=>t>>>0))):new Uint32Array(1)}[Symbol.iterator](){const t=this.data.length;let e=0,s=this.data[e];const a=this.data;return{[Symbol.iterator](){return this},next:()=>{for(;e>>5]&=~(1<>>5;return!(e>=this.data.length)&&0!==(this.data[e]&1<t)return e}set(t){if(t<0)throw new RangeError("index cannot be negative");this.resize(t),this.data[t>>>5]|=1<>>5;if(e<=this.data.length)return;const s=new Uint32Array(e);s.set(this.data),s.fill(0,this.data.length),this.data=s}bitCount(t){return t=(t=(858993459&(t-=t>>1&1431655765))+(t>>2&858993459))+(t>>4)&252645135,t+=t>>8,63&(t+=t>>16)}},Ea(y,"BitSet"),y),Va=(f=class{constructor(){(0,js.Z)(this,"stateNumber",0),(0,js.Z)(this,"ruleIndex",0),(0,js.Z)(this,"epsilonOnlyTransitions",!1),(0,js.Z)(this,"nextTokenWithinRule",void 0),(0,js.Z)(this,"transitions",[])}hashCode(){return this.stateNumber}equals(t){return this.stateNumber===t.stateNumber}toString(){return"".concat(this.stateNumber)}addTransitionAtIndex(t,e){0===this.transitions.length?this.epsilonOnlyTransitions=e.isEpsilon:this.epsilonOnlyTransitions!==e.isEpsilon&&(this.epsilonOnlyTransitions=!1),this.transitions.splice(t,1,e)}addTransition(t){0===this.transitions.length?this.epsilonOnlyTransitions=t.isEpsilon:this.epsilonOnlyTransitions!==t.isEpsilon&&(this.epsilonOnlyTransitions=!1),this.transitions.push(t)}setTransition(t,e){this.transitions.splice(t,1,e)}removeTransition(t){return this.transitions.splice(t,1)[0]}},Ea(f,"ATNState"),(0,js.Z)(f,"INVALID_STATE_NUMBER",-1),(0,js.Z)(f,"INVALID_TYPE",0),(0,js.Z)(f,"BASIC",1),(0,js.Z)(f,"RULE_START",2),(0,js.Z)(f,"BLOCK_START",3),(0,js.Z)(f,"PLUS_BLOCK_START",4),(0,js.Z)(f,"STAR_BLOCK_START",5),(0,js.Z)(f,"TOKEN_START",6),(0,js.Z)(f,"RULE_STOP",7),(0,js.Z)(f,"BLOCK_END",8),(0,js.Z)(f,"STAR_LOOP_BACK",9),(0,js.Z)(f,"STAR_LOOP_ENTRY",10),(0,js.Z)(f,"PLUS_LOOP_BACK",11),(0,js.Z)(f,"LOOP_END",12),(0,js.Z)(f,"stateType",f.INVALID_STATE_NUMBER),f),Xa=(Y=class t{constructor(){(0,js.Z)(this,"cachedHashCode",void 0)}static andContext(e,s){if(null===e||e===t.NONE)return s;if(null===s||s===t.NONE)return e;const a=new Ka(e,s);return 1===a.operands.length?a.operands[0]:a}static orContext(e,s){if(null===e)return s;if(null===s)return e;if(e===t.NONE||s===t.NONE)return t.NONE;const a=new Qa(e,s);return 1===a.operands.length?a.operands[0]:a}static filterPrecedencePredicates(e){const s=[];for(const a of e)a instanceof t.PrecedencePredicate&&s.push(a);return s}evalPrecedence(t,e){return this}},Ea(Y,"SemanticContext"),Y),Ka=(w=class t extends Xa{constructor(e,s){super(),(0,js.Z)(this,"operands",void 0);const a=new Ha;e instanceof t?e.operands.forEach((t=>{a.add(t)})):a.add(e),s instanceof t?s.operands.forEach((t=>{a.add(t)})):a.add(s);const r=Xa.filterPrecedencePredicates(a);if(r.length>0){let t=null;r.forEach((e=>{(null===t||e.precedence{r=null===r?t:Xa.andContext(r,t)})),r}toString(){const t=this.operands.map((t=>t.toString()));return(t.length>3?t.slice(3):t).join("&&")}},Ea(w,"AND"),w),Qa=(b=class t extends Xa{constructor(e,s){super(),(0,js.Z)(this,"operands",void 0);const a=new Ha;e instanceof t?e.operands.forEach((t=>{a.add(t)})):a.add(e),s instanceof t?s.operands.forEach((t=>{a.add(t)})):a.add(s);const r=Xa.filterPrecedencePredicates(a);if(r.length>0){const t=r.sort(((t,e)=>t.compareTo(e))),e=t[t.length-1];a.add(e)}this.operands=a.toArray()}equals(e){return this===e||e instanceof t&&Ca(this.operands,e.operands)}hashCode(){if(void 0===this.cachedHashCode){let t=Aa.initialize();for(const e of this.operands)t=Aa.updateFromComparable(t,e);t=Aa.update(t,3383313031),this.cachedHashCode=Aa.finish(t,this.operands.length+1)}return this.cachedHashCode}evaluate(t,e){for(const s of this.operands)if(s.evaluate(t,e))return!0;return!1}evalPrecedence(t,e){let s=!1;const a=[];for(const i of this.operands){const r=i.evalPrecedence(t,e);if(s||(s=r!==i),r===Xa.NONE)return Xa.NONE;null!==r&&a.push(r)}if(!s)return this;if(0===a.length)return null;let r=null;return a.forEach((t=>{r=null===r?t:Xa.orContext(r,t)})),r}toString(){const t=this.operands.map((t=>t.toString()));return(t.length>3?t.slice(3):t).join("||")}},Ea(b,"OR"),b);(t=>{class e extends t{constructor(t,e,s){super(),(0,js.Z)(this,"ruleIndex",void 0),(0,js.Z)(this,"predIndex",void 0),(0,js.Z)(this,"isCtxDependent",void 0),this.ruleIndex=null!==t&&void 0!==t?t:-1,this.predIndex=null!==e&&void 0!==e?e:-1,this.isCtxDependent=null!==s&&void 0!==s&&s}evaluate(t,e){const s=this.isCtxDependent?e:null;return t.sempred(s,this.ruleIndex,this.predIndex)}hashCode(){if(void 0===this.cachedHashCode){let t=Aa.initialize();t=Aa.update(t,this.ruleIndex),t=Aa.update(t,this.predIndex),t=Aa.update(t,this.isCtxDependent?1:0),t=Aa.finish(t,3),this.cachedHashCode=t}return this.cachedHashCode}equals(t){return this===t||this.ruleIndex===t.ruleIndex&&this.predIndex===t.predIndex&&this.isCtxDependent===t.isCtxDependent}toString(){return"{"+this.ruleIndex+":"+this.predIndex+"}?"}}Ea(e,"Predicate"),t.Predicate=e;class s extends t{constructor(t){super(),(0,js.Z)(this,"precedence",void 0),this.precedence=null!==t&&void 0!==t?t:0}evaluate(t,e){return t.precpred(e,this.precedence)}evalPrecedence(e,s){return e.precpred(null!==s&&void 0!==s?s:null,this.precedence)?t.NONE:null}compareTo(t){return this.precedence-t.precedence}hashCode(){return 31+this.precedence}equals(t){return this===t||this.precedence===t.precedence}toString(){return"{"+this.precedence+">=prec}?"}}Ea(s,"PrecedencePredicate"),t.PrecedencePredicate=s,t.NONE=new e})(Xa||(Xa={}));var Ja,Za=(V=new WeakMap,X=new WeakMap,W=class t{get semanticContext(){return ea(this,X)}constructor(t,e,s,a){(0,js.Z)(this,"state",void 0),(0,js.Z)(this,"alt",void 0),(0,js.Z)(this,"reachesIntoOuterContext",!1),(0,js.Z)(this,"precedenceFilterSuppressed",!1),(0,js.Z)(this,"cachedHashCode",void 0),r(this,V,{writable:!0,value:null}),r(this,X,{writable:!0,value:void 0}),this.state=e,this.alt=t.alt,this.context=s,$s(this,X,null!==a&&void 0!==a?a:Xa.NONE),this.reachesIntoOuterContext=t.reachesIntoOuterContext,void 0!==t.precedenceFilterSuppressed&&(this.precedenceFilterSuppressed=t.precedenceFilterSuppressed)}static duplicate(e,s){return new t(e,e.state,e.context,null!==s&&void 0!==s?s:e.semanticContext)}static createWithContext(e,s,a,r){return new t({alt:s},e,a,r)}static createWithConfig(e,s,a){return new t(s,e,null!==a&&void 0!==a?a:s.context,s.semanticContext)}static createWithSemanticContext(e,s,a){return new t(s,null!==e&&void 0!==e?e:s.state,s.context,a)}hashCode(){if(void 0===this.cachedHashCode){let t=Aa.initialize(7);t=Aa.update(t,this.state.stateNumber),t=Aa.update(t,this.alt),t=Aa.updateFromComparable(t,ea(this,V)),t=Aa.updateFromComparable(t,this.semanticContext),t=Aa.finish(t,4),this.cachedHashCode=t}return this.cachedHashCode}get context(){return ea(this,V)}set context(t){$s(this,V,t),this.cachedHashCode=void 0}equals(t){return this===t||this.state.stateNumber===t.state.stateNumber&&this.alt===t.alt&&(null===this.context?null===t.context:this.context.equals(t.context))&&this.semanticContext.equals(t.semanticContext)&&this.precedenceFilterSuppressed===t.precedenceFilterSuppressed}toString(t){let e="";return(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])&&(e=","+this.alt),"("+this.state+e+(null!==this.context?",["+this.context.toString()+"]":"")+(this.semanticContext!==Xa.NONE?","+this.semanticContext.toString():"")+(this.reachesIntoOuterContext?",up="+this.reachesIntoOuterContext:"")+")"}},Ea(W,"ATNConfig"),W),qa=(Q=new WeakMap,K=class t{constructor(){r(this,Q,{writable:!0,value:void 0})}getDecisionLookahead(e){if(!e)return;const s=e.transitions.length,a=new Array(s);for(let r=0;r0&&!s.contains(t.hitPredicate)&&(a[r]=s)}return a}look(t,e,s,a){$s(this,Q,t);const r=new Sa,i=a?va(t,a):null;return this.doLook(e,s,i,r,new Ha,new Wa,!0,!0),r}doLook(e,s,a,r,i,c,n,h){const E=Za.createWithContext(e,0,a);if(!i.get(E)){if(i.add(E),e===s){if(!a)return void r.addOne(ca.EPSILON);if(a.isEmpty()&&h)return void r.addOne(ca.EOF)}if(e.constructor.stateType===Va.RULE_STOP){if(!a)return void r.addOne(ca.EPSILON);if(a.isEmpty()&&h)return void r.addOne(ca.EOF);if(a!==ua.EMPTY){const t=c.get(e.ruleIndex);try{c.clear(e.ruleIndex);for(let t=0;t=this.states.length)throw new Error("Invalid state number.");const s=this.states[t];let a=this.nextTokens(s);if(!a.contains(ca.EPSILON))return a;let r=e;const i=new Sa;for(i.addSet(a),i.removeOne(ca.EPSILON);null!==r&&r.invokingState>=0&&a.contains(ca.EPSILON);){const t=this.states[r.invokingState].transitions[0];a=this.nextTokens(t.followState),i.addSet(a),i.removeOne(ca.EPSILON),r=r.parent}return a.contains(ca.EPSILON)&&i.addOne(ca.EOF),i}},Ea(J,"ATN"),(0,js.Z)(J,"INVALID_ALT_NUMBER",0),(0,js.Z)(J,"LEXER",0),(0,js.Z)(J,"PARSER",1),Z={writable:!0,value:new qa},J),za=(q=class{hashCode(t){let e=7;return e=31*e+t.state.stateNumber,e=31*e+t.alt,e=31*e+t.semanticContext.hashCode(),e}equals(t,e){return t===e||t.state.stateNumber===e.state.stateNumber&&t.alt===e.alt&&t.semanticContext.equals(e.semanticContext)}},Ea(q,"KeyTypeEqualityComparer"),(0,js.Z)(q,"instance",new q),q),$a=(z=new WeakMap,j=class{constructor(t){if((0,js.Z)(this,"configLookup",new Ha(za.instance)),(0,js.Z)(this,"configs",[]),(0,js.Z)(this,"uniqueAlt",0),(0,js.Z)(this,"hasSemanticContext",!1),(0,js.Z)(this,"dipsIntoOuterContext",!1),(0,js.Z)(this,"fullCtx",!1),(0,js.Z)(this,"readOnly",!1),(0,js.Z)(this,"conflictingAlts",null),(0,js.Z)(this,"firstStopState",void 0),r(this,z,{writable:!0,value:-1}),void 0!==t)if("boolean"===typeof t)this.fullCtx=null===t||void 0===t||t;else{const e=t;this.addAll(e.configs),this.uniqueAlt=e.uniqueAlt,this.conflictingAlts=e.conflictingAlts,this.hasSemanticContext=e.hasSemanticContext,this.dipsIntoOuterContext=e.dipsIntoOuterContext}}[Symbol.iterator](){return this.configs[Symbol.iterator]()}add(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(this.readOnly)throw new Error("This set is readonly");this.firstStopState||t.state.constructor.stateType!==Va.RULE_STOP||(this.firstStopState=t),this.hasSemanticContext||(this.hasSemanticContext=t.semanticContext!==Xa.NONE),this.dipsIntoOuterContext||(this.dipsIntoOuterContext=t.reachesIntoOuterContext);const s=this.configLookup.getOrAdd(t);if(s===t)return $s(this,z,-1),void this.configs.push(t);const a=!this.fullCtx,r=ya(s.context,t.context,a,e);s.reachesIntoOuterContext||(s.reachesIntoOuterContext=t.reachesIntoOuterContext),s.precedenceFilterSuppressed||(s.precedenceFilterSuppressed=t.precedenceFilterSuppressed),s.context=r}get elements(){return this.configs}getAlts(){const t=new Wa;for(const e of this.configs)t.set(e.alt);return t}getPredicates(){const t=[];for(const e of this.configs)e.semanticContext!==Xa.NONE&&t.push(e.semanticContext);return t}getStates(){const t=new Ha;for(const e of this.configs)t.add(e.state);return t}optimizeConfigs(t){if(this.readOnly)throw new Error("This set is readonly");if(0!==this.configLookup.size)for(const e of this.configs)e.context=t.getCachedContext(e.context)}addAll(t){for(const e of t)this.add(e);return!1}equals(t){return this===t||!(this.fullCtx!==t.fullCtx||this.uniqueAlt!==t.uniqueAlt||this.conflictingAlts!==t.conflictingAlts||this.hasSemanticContext!==t.hasSemanticContext||this.dipsIntoOuterContext!==t.dipsIntoOuterContext||!Ca(this.configs,t.configs))}hashCode(){return-1===ea(this,z)&&$s(this,z,this.computeHashCode()),ea(this,z)}get length(){return this.configs.length}isEmpty(){return 0===this.configs.length}contains(t){if(null===this.configLookup)throw new Error("This method is not implemented for readonly sets.");return this.configLookup.contains(t)}containsFast(t){if(null===this.configLookup)throw new Error("This method is not implemented for readonly sets.");return this.configLookup.contains(t)}clear(){if(this.readOnly)throw new Error("This set is readonly");this.configs=[],$s(this,z,-1),this.configLookup=new Ha(za.instance)}setReadonly(t){this.readOnly=t,t&&(this.configLookup=null)}toString(){return La(this.configs)+(this.hasSemanticContext?",hasSemanticContext="+this.hasSemanticContext:"")+(this.uniqueAlt!==ja.INVALID_ALT_NUMBER?",uniqueAlt="+this.uniqueAlt:"")+(null!==this.conflictingAlts?",conflictingAlts="+this.conflictingAlts:"")+(this.dipsIntoOuterContext?",dipsIntoOuterContext":"")}computeHashCode(){let t=Aa.initialize();return this.configs.forEach((e=>{t=Aa.update(t,e.hashCode())})),t=Aa.finish(t,this.configs.length),t}},Ea(j,"ATNConfigSet"),j),tr=(Ea($=class extends Va{},"BasicState"),(0,js.Z)($,"stateType",Va.BASIC),$),er=(Ea(tt=class extends Va{constructor(){super(...arguments),(0,js.Z)(this,"decision",-1),(0,js.Z)(this,"nonGreedy",!1)}},"DecisionState"),tt),sr=(Ea(et=class extends er{constructor(){super(...arguments),(0,js.Z)(this,"endState",void 0)}},"BlockStartState"),et),ar=(Ea(st=class extends Va{constructor(){super(...arguments),(0,js.Z)(this,"startState",void 0)}},"BlockEndState"),(0,js.Z)(st,"stateType",Va.BLOCK_END),st),rr=(Ea(at=class extends Va{constructor(){super(...arguments),(0,js.Z)(this,"loopBackState",void 0)}},"LoopEndState"),(0,js.Z)(at,"stateType",Va.LOOP_END),at),ir=(Ea(rt=class extends Va{constructor(){super(...arguments),(0,js.Z)(this,"stopState",void 0),(0,js.Z)(this,"isLeftRecursiveRule",!1),(0,js.Z)(this,"isPrecedenceRule",!1)}},"RuleStartState"),(0,js.Z)(rt,"stateType",Va.RULE_START),rt),cr=(Ea(it=class extends Va{},"RuleStopState"),(0,js.Z)(it,"stateType",Va.RULE_STOP),it),nr=(Ea(ct=class extends er{},"TokensStartState"),(0,js.Z)(ct,"stateType",Va.TOKEN_START),ct),hr=(Ea(nt=class extends er{},"PlusLoopbackState"),(0,js.Z)(nt,"stateType",Va.PLUS_LOOP_BACK),nt),Er=(Ea(ht=class extends Va{},"StarLoopbackState"),(0,js.Z)(ht,"stateType",Va.STAR_LOOP_BACK),ht),Tr=(Ea(Et=class extends er{constructor(){super(...arguments),(0,js.Z)(this,"loopBackState",void 0),(0,js.Z)(this,"precedenceRuleDecision",!1)}},"StarLoopEntryState"),(0,js.Z)(Et,"stateType",Va.STAR_LOOP_ENTRY),Et),or=(Ea(Tt=class extends sr{constructor(){super(...arguments),(0,js.Z)(this,"loopBackState",void 0)}},"PlusBlockStartState"),(0,js.Z)(Tt,"stateType",Va.PLUS_BLOCK_START),Tt),Rr=(Ea(ot=class extends sr{},"StarBlockStartState"),(0,js.Z)(ot,"stateType",Va.STAR_BLOCK_START),ot),Ar=(Ea(Rt=class extends sr{},"BasicBlockStartState"),(0,js.Z)(Rt,"stateType",Va.BLOCK_START),Rt),Sr=(St=new WeakMap,Ea(At=class extends la{constructor(t,e){super(t),(0,js.Z)(this,"labelValue",void 0),r(this,St,{writable:!0,value:void 0}),this.labelValue=e,$s(this,St,Sa.of(e,e))}get label(){return ea(this,St)}get transitionType(){return la.ATOM}matches(t){return this.labelValue===t}toString(){return this.labelValue.toString()}},"AtomTransition"),At),lr=(Ea(lt=class extends la{constructor(t,e,s,a){super(t),(0,js.Z)(this,"ruleIndex",void 0),(0,js.Z)(this,"precedence",void 0),(0,js.Z)(this,"followState",void 0),this.ruleIndex=e,this.precedence=s,this.followState=a}get isEpsilon(){return!0}get transitionType(){return la.RULE}matches(t,e,s){return!1}},"RuleTransition"),lt),Or=(It=new WeakMap,Ea(Ot=class extends la{constructor(t,e,s){super(t),(0,js.Z)(this,"start",void 0),(0,js.Z)(this,"stop",void 0),r(this,It,{writable:!0,value:new Sa}),this.start=e,this.stop=s,ea(this,It).addRange(e,s)}get label(){return ea(this,It)}get transitionType(){return la.RANGE}matches(t,e,s){return t>=this.start&&t<=this.stop}toString(){return"'"+String.fromCharCode(this.start)+"'..'"+String.fromCharCode(this.stop)+"'"}},"RangeTransition"),Ot),Ir=(Ea(ut=class extends la{constructor(t,e,s,a){super(t),(0,js.Z)(this,"ruleIndex",void 0),(0,js.Z)(this,"actionIndex",void 0),(0,js.Z)(this,"isCtxDependent",void 0),this.ruleIndex=e,this.actionIndex=void 0===s?-1:s,this.isCtxDependent=void 0!==a&&a}get isEpsilon(){return!0}get transitionType(){return la.ACTION}matches(t,e,s){return!1}toString(){return"action_"+this.ruleIndex+":"+this.actionIndex}},"ActionTransition"),ut),ur=(Lt=new WeakMap,Ea(Nt=class extends la{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;super(t),r(this,Lt,{writable:!0,value:void 0}),$s(this,Lt,e)}get outermostPrecedenceReturn(){return ea(this,Lt)}get isEpsilon(){return!0}get transitionType(){return la.EPSILON}matches(){return!1}toString(){return"epsilon"}},"EpsilonTransition"),Nt),Nr=(Ea(Ct=class extends la{get transitionType(){return la.WILDCARD}matches(t,e,s){return t>=e&&t<=s}toString(){return"."}},"WildcardTransition"),Ct),Lr=(Ea(_t=class extends la{constructor(t){super(t)}},"AbstractPredicateTransition"),_t),Cr=(Ea(Pt=class extends Lr{constructor(t,e,s,a){super(t),(0,js.Z)(this,"ruleIndex",void 0),(0,js.Z)(this,"predIndex",void 0),(0,js.Z)(this,"isCtxDependent",void 0),this.ruleIndex=e,this.predIndex=s,this.isCtxDependent=a}get isEpsilon(){return!0}matches(t,e,s){return!1}get transitionType(){return la.PREDICATE}getPredicate(){return new Xa.Predicate(this.ruleIndex,this.predIndex,this.isCtxDependent)}toString(){return"pred_"+this.ruleIndex+":"+this.predIndex}},"PredicateTransition"),Pt),_r=(Ea(Mt=class extends Lr{constructor(t,e){super(t),(0,js.Z)(this,"precedence",void 0),this.precedence=e}get isEpsilon(){return!0}matches(t,e,s){return!1}getPredicate(){return new Xa.PrecedencePredicate(this.precedence)}get transitionType(){return la.PRECEDENCE}toString(){return this.precedence+" >= _p"}},"PrecedencePredicateTransition"),Mt),Pr=0,Mr=1,dr=2,Ur=3,mr=4,Dr=5,pr=6,gr=7,xr=(Ea(dt=class{constructor(){(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),this.actionType=pr}equals(t){return t===this}hashCode(){return pr}execute(t){t.skip()}toString(){return"skip"}},"LexerSkipAction"),(0,js.Z)(dt,"instance",new dt),dt),kr=(mt=new WeakMap,Ea(Ut=class t{constructor(t){(0,js.Z)(this,"channel",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),r(this,mt,{writable:!0,value:void 0}),this.actionType=Pr,this.channel=t}execute(t){t.channel=this.channel}hashCode(){if(void 0===ea(this,mt)){let t=Aa.initialize();t=Aa.update(t,this.actionType),t=Aa.update(t,this.channel),$s(this,mt,Aa.finish(t,2))}return ea(this,mt)}equals(e){return this===e||e instanceof t&&this.channel===e.channel}toString(){return"channel("+this.channel+")"}},"LexerChannelAction"),Ut),Hr=(pt=new WeakMap,Ea(Dt=class t{constructor(t,e){(0,js.Z)(this,"ruleIndex",void 0),(0,js.Z)(this,"actionIndex",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!0),r(this,pt,{writable:!0,value:void 0}),this.actionType=Mr,this.ruleIndex=t,this.actionIndex=e}execute(t){t.action(null,this.ruleIndex,this.actionIndex)}hashCode(){if(void 0===ea(this,pt)){let t=Aa.initialize();t=Aa.update(t,this.actionType),t=Aa.update(t,this.ruleIndex),t=Aa.update(t,this.actionIndex),$s(this,pt,Aa.finish(t,3))}return ea(this,pt)}equals(e){return this===e||e instanceof t&&(this.ruleIndex===e.ruleIndex&&this.actionIndex===e.actionIndex)}},"LexerCustomAction"),Dt),Gr=(Ea(gt=class{constructor(){(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),this.actionType=Ur}equals(t){return t===this}hashCode(){return Ur}execute(t){t.more()}toString(){return"more"}},"LexerMoreAction"),(0,js.Z)(gt,"instance",new gt),gt),Fr=(kt=new WeakMap,Ea(xt=class t{constructor(t){(0,js.Z)(this,"type",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),r(this,kt,{writable:!0,value:void 0}),this.actionType=gr,this.type=t}execute(t){t.type=this.type}hashCode(){if(void 0===ea(this,kt)){let t=Aa.initialize();t=Aa.update(t,this.actionType),t=Aa.update(t,this.type),$s(this,kt,Aa.finish(t,2))}return ea(this,kt)}equals(e){return this===e||e instanceof t&&this.type===e.type}toString(){return"type("+this.type+")"}},"LexerTypeAction"),xt),vr=(Gt=new WeakMap,Ea(Ht=class t{constructor(t){(0,js.Z)(this,"mode",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),r(this,Gt,{writable:!0,value:void 0}),this.actionType=Dr,this.mode=t}execute(t){t.pushMode(this.mode)}hashCode(){if(void 0===ea(this,Gt)){let t=Aa.initialize();t=Aa.update(t,this.actionType),t=Aa.update(t,this.mode),$s(this,Gt,Aa.finish(t,2))}return ea(this,Gt)}equals(e){return this===e||e instanceof t&&this.mode===e.mode}toString(){return"pushMode("+this.mode+")"}},"LexerPushModeAction"),Ht),Br=(Ea(Ft=class{constructor(){(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),this.actionType=mr}equals(t){return t===this}hashCode(){return mr}execute(t){t.popMode()}toString(){return"popMode"}},"LexerPopModeAction"),(0,js.Z)(Ft,"instance",new Ft),Ft),yr=(Bt=new WeakMap,Ea(vt=class t{constructor(t){(0,js.Z)(this,"mode",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),r(this,Bt,{writable:!0,value:void 0}),this.actionType=dr,this.mode=t}execute(t){t.mode=this.mode}hashCode(){if(void 0===ea(this,Bt)){let t=Aa.initialize();t=Aa.update(t,this.actionType),t=Aa.update(t,this.mode),$s(this,Bt,Aa.finish(t,2))}return ea(this,Bt)}equals(e){return this===e||e instanceof t&&this.mode===e.mode}toString(){return"mode("+this.mode+")"}},"LexerModeAction"),vt),fr=(yt=class t{constructor(t){(0,js.Z)(this,"data",[]),(0,js.Z)(this,"pos",0),(0,js.Z)(this,"deserializationOptions",void 0),(0,js.Z)(this,"actionFactories",void 0),t||(t={readOnly:!1,verifyATN:!0,generateRuleBypassTransitions:!1}),this.deserializationOptions=t}deserialize(t){this.data=t,this.checkVersion();const e=this.readATN();this.readStates(e),this.readRules(e),this.readModes(e);const s=[];return this.readSets(e,s),this.readEdges(e,s),this.readDecisions(e),this.readLexerActions(e),this.markPrecedenceDecisions(e),this.verifyATN(e),this.deserializationOptions.generateRuleBypassTransitions&&e.grammarType===ja.PARSER&&(this.generateRuleBypassTransitions(e),this.verifyATN(e)),e}checkVersion(){const e=this.data[this.pos++];if(e!==t.SERIALIZED_VERSION)throw new Error("Could not deserialize ATN with version "+e+" (expected "+t.SERIALIZED_VERSION+").")}readATN(){const t=this.data[this.pos++],e=this.data[this.pos++];return new ja(t,e)}readStates(t){let e,s;const a=[],r=[],i=this.data[this.pos++];for(let E=0;E0;)r.addTransition(h.transitions[E-1]),h.transitions=h.transitions.slice(-1);t.ruleToStartState[e].addTransition(new ur(r)),n&&i.addTransition(new ur(n));const T=new tr;t.addState(T),T.addTransition(new Sr(i,t.ruleToTokenType[e])),r.addTransition(new ur(T))}stateIsEndStateFor(t,e){if(t.ruleIndex!==e)return null;if(!(t instanceof Tr))return null;const s=t.transitions[t.transitions.length-1].target;return s instanceof rr&&s.epsilonOnlyTransitions&&s.transitions[0].target instanceof cr?t:null}markPrecedenceDecisions(t){for(const e of t.states)if(e instanceof Tr&&t.ruleToStartState[e.ruleIndex].isPrecedenceRule){const t=e.transitions[e.transitions.length-1].target;t instanceof rr&&t.epsilonOnlyTransitions&&t.transitions[0].target instanceof cr&&(e.precedenceRuleDecision=!0)}}verifyATN(t){if(this.deserializationOptions.verifyATN)for(const e of t.states)if(null!==e)if(this.checkCondition(e.epsilonOnlyTransitions||e.transitions.length<=1),e instanceof or)this.checkCondition(null!==e.loopBackState);else if(e instanceof Tr)if(this.checkCondition(null!==e.loopBackState),this.checkCondition(2===e.transitions.length),e.transitions[0].target instanceof Rr)this.checkCondition(e.transitions[1].target instanceof rr),this.checkCondition(!e.nonGreedy);else{if(!(e.transitions[0].target instanceof rr))throw new Error("IllegalState");this.checkCondition(e.transitions[1].target instanceof Rr),this.checkCondition(e.nonGreedy)}else e instanceof Er?(this.checkCondition(1===e.transitions.length),this.checkCondition(e.transitions[0].target instanceof Tr)):e instanceof rr?this.checkCondition(null!==e.loopBackState):e instanceof ir?this.checkCondition(null!==e.stopState):e instanceof sr?this.checkCondition(null!==e.endState):e instanceof ar?this.checkCondition(null!==e.startState):e instanceof er?this.checkCondition(e.transitions.length<=1||e.decision>=0):this.checkCondition(e.transitions.length<=1||e instanceof cr)}checkCondition(t,e){if(!t)throw void 0!==e&&null!==e||(e="IllegalState"),e}edgeFactory(t,e,s,a,r,i,c){const n=t.states[s];switch(e){case la.EPSILON:return new ur(n);case la.RANGE:return new Or(n,0!==i?ca.EOF:a,r);case la.RULE:return new lr(t.states[a],r,i,n);case la.PREDICATE:return new Cr(n,a,r,0!==i);case la.PRECEDENCE:return new _r(n,a);case la.ATOM:return new Sr(n,0!==i?ca.EOF:a);case la.ACTION:return new Ir(n,a,r,0!==i);case la.SET:return new Oa(n,c[a]);case la.NOT_SET:return new Ia(n,c[a]);case la.WILDCARD:return new Nr(n);default:throw new Error("The specified transition type: "+e+" is not valid.")}}stateFactory(e,s){const a=t.stateTypeMapper.get(e);if(!a)throw new Error("The specified state type "+e+" is not valid.");const r=new a;return r.ruleIndex=s,r}lexerActionFactory(e,s,a){const r=t.lexerActionFactoryMapper.get(e);if(!r)throw new Error("The specified lexer action type "+e+" is not valid.");return r(s,a)}},Ea(yt,"ATNDeserializer"),(0,js.Z)(yt,"SERIALIZED_VERSION",4),(0,js.Z)(yt,"stateTypeMapper",new Map([[Va.INVALID_TYPE,void 0],[Va.BASIC,tr],[Va.RULE_START,ir],[Va.BLOCK_START,Ar],[Va.PLUS_BLOCK_START,or],[Va.STAR_BLOCK_START,Rr],[Va.TOKEN_START,nr],[Va.RULE_STOP,cr],[Va.BLOCK_END,ar],[Va.STAR_LOOP_BACK,Er],[Va.STAR_LOOP_ENTRY,Tr],[Va.PLUS_LOOP_BACK,hr],[Va.LOOP_END,rr]])),(0,js.Z)(yt,"lexerActionFactoryMapper",new Map([[Pr,t=>new kr(t)],[Mr,(t,e)=>new Hr(t,e)],[dr,t=>new yr(t)],[Ur,()=>Gr.instance],[mr,()=>Br.instance],[Dr,t=>new vr(t)],[pr,()=>xr.instance],[gr,t=>new Fr(t)]])),yt),Yr=(Yt=new WeakMap,Ea(ft=class t extends Fa{constructor(){super(...arguments),r(this,Yt,{writable:!0,value:[]})}clear(){super.clear(),$s(this,Yt,[])}get(t){return super.get(t)}set(t,e){const s=super.set(t,e);return void 0===s&&ea(this,Yt).push(t),s}setIfAbsent(t,e){const s=super.setIfAbsent(t,e);return void 0===s&&ea(this,Yt).push(t),s}values(){return{[Symbol.iterator]:()=>{let t=0;return{next:()=>t0)for(const e of this.atn.modeToStartState)this.data.push(e.stateNumber)}addRuleStatesAndLexerTokenTypes(){const t=this.atn.ruleToStartState.length;this.data.push(t);for(let e=0;e",this.predicates?t+=La(this.predicates):t+=this.prediction),t.toString()}},Ea(bt,"DFAState"),bt),br=(Ea(Wt=class{constructor(t,e){return(0,js.Z)(this,"atn",void 0),(0,js.Z)(this,"sharedContextCache",void 0),this.atn=t,this.sharedContextCache=e,this}getCachedContext(t){if(!this.sharedContextCache)return t;const e=new Fa(xa.instance);return Ba(t,this.sharedContextCache,e)}},"ATNSimulator"),(0,js.Z)(Wt,"ERROR",wr.fromState(2147483647)),Wt),Wr=(Ea(Vt=class t{static createWithCodePoint(e,s){return t.createWithCodePointRange(e,s,s)}static createWithCodePointRange(t,e,s){return e===s?new Sr(t,e):new Or(t,e,s)}},"CodePointTransitions"),Ea(Xt=class{constructor(t){(0,js.Z)(this,"decision",0),(0,js.Z)(this,"invocations",0),(0,js.Z)(this,"timeInPrediction",0),(0,js.Z)(this,"sllTotalLook",0),(0,js.Z)(this,"sllMinLook",0),(0,js.Z)(this,"sllMaxLook",0),(0,js.Z)(this,"sllMaxLookEvent",void 0),(0,js.Z)(this,"llTotalLook",0),(0,js.Z)(this,"llMinLook",0),(0,js.Z)(this,"llMaxLook",0),(0,js.Z)(this,"llMaxLookEvent",void 0),(0,js.Z)(this,"contextSensitivities",void 0),(0,js.Z)(this,"errors",void 0),(0,js.Z)(this,"ambiguities",void 0),(0,js.Z)(this,"predicateEvals",void 0),(0,js.Z)(this,"sllATNTransitions",0),(0,js.Z)(this,"sllDFATransitions",0),(0,js.Z)(this,"llFallback",0),(0,js.Z)(this,"llATNTransitions",0),(0,js.Z)(this,"llDFATransitions",0),this.decision=t,this.contextSensitivities=[],this.errors=[],this.ambiguities=[],this.predicateEvals=[]}toString1(){return"{decision="+this.decision+", contextSensitivities="+this.contextSensitivities.length+", errors="+this.errors.length+", ambiguities="+this.ambiguities.length+", sllLookahead="+this.sllTotalLook+", sllATNTransitions="+this.sllATNTransitions+", sllDFATransitions="+this.sllDFATransitions+", llFallback="+this.llFallback+", llLookahead="+this.llTotalLook+", llATNTransitions="+this.llATNTransitions+"}"}},"DecisionInfo"),Xt),Vr=(Ea(Kt=class t extends Za{constructor(e,s,a,r){var i;return super(e,s,null!==a&&void 0!==a?a:e.context,a?Xa.NONE:e.semanticContext),(0,js.Z)(this,"lexerActionExecutor",void 0),(0,js.Z)(this,"passedThroughNonGreedyDecision",void 0),this.lexerActionExecutor=a?r:null!==(i=e.lexerActionExecutor)&&void 0!==i?i:null,this.passedThroughNonGreedyDecision=t.checkNonGreedyDecision(e,this.state),this}static createWithExecutor(e,s,a){return new t(e,s,e.context,a)}static createWithConfig(e,s,a){return new t(s,e,null!==a&&void 0!==a?a:null,s.lexerActionExecutor)}static createWithContext(e,s,a){return new t({alt:s},e,a,null)}static checkNonGreedyDecision(t,e){return t.passedThroughNonGreedyDecision||"nonGreedy"in e&&e.nonGreedy}hashCode(){if(void 0===this.cachedHashCode){let t=Aa.initialize(7);t=Aa.update(t,this.state.stateNumber),t=Aa.update(t,this.alt),t=Aa.updateFromComparable(t,this.context),t=Aa.updateFromComparable(t,this.semanticContext),t=Aa.update(t,this.passedThroughNonGreedyDecision?1:0),t=Aa.updateFromComparable(t,this.lexerActionExecutor),t=Aa.finish(t,6),this.cachedHashCode=t}return this.cachedHashCode}equals(t){return this===t||this.passedThroughNonGreedyDecision===t.passedThroughNonGreedyDecision&&(this.lexerActionExecutor&&t.lexerActionExecutor?this.lexerActionExecutor.equals(t.lexerActionExecutor):!t.lexerActionExecutor)&&super.equals(t)}},"LexerATNConfig"),Kt),Xr=(Ea(Qt=class{syntaxError(t,e,s,a,r,i){}reportAmbiguity(t,e,s,a,r,i,c){}reportAttemptingFullContext(t,e,s,a,r,i){}reportContextSensitivity(t,e,s,a,r,i){}},"BaseErrorListener"),Qt),Kr=(Ea(Jt=class extends Xr{syntaxError(t,e,s,a,r,i){console.error("line "+s+":"+a+" "+r)}},"ConsoleErrorListener"),(0,js.Z)(Jt,"instance",new Jt),Jt),Qr=(Zt=class extends Xr{constructor(t){return super(),this.delegates=t,this}syntaxError(t,e,s,a,r,i){this.delegates.forEach((c=>{c.syntaxError(t,e,s,a,r,i)}))}reportAmbiguity(t,e,s,a,r,i,c){this.delegates.forEach((n=>{n.reportAmbiguity(t,e,s,a,r,i,c)}))}reportAttemptingFullContext(t,e,s,a,r,i){this.delegates.forEach((c=>{c.reportAttemptingFullContext(t,e,s,a,r,i)}))}reportContextSensitivity(t,e,s,a,r,i){this.delegates.forEach((c=>{c.reportContextSensitivity(t,e,s,a,r,i)}))}},Ea(Zt,"ProxyErrorListener"),Zt),Jr=(jt=new WeakMap,zt=new WeakMap,qt=class t{constructor(){(0,js.Z)(this,"interpreter",void 0),r(this,jt,{writable:!0,value:[Kr.instance]}),r(this,zt,{writable:!0,value:-1})}checkVersion(t){const e="4.13.1";e!==t&&console.error("ANTLR runtime and generated code versions disagree: "+e+"!="+t)}addErrorListener(t){ea(this,jt).push(t)}removeErrorListeners(){$s(this,jt,[])}removeErrorListener(t){for(let e=0;es.set(t,e))),t.ruleIndexMapCache.set(e,s)),s}getTokenType(t){const e=this.getTokenTypeMap().get(t);return e||ca.INVALID_TYPE}getErrorHeader(t){var e,s;return"line "+(null===(e=t.offendingToken)||void 0===e?void 0:e.line)+":"+(null===(s=t.offendingToken)||void 0===s?void 0:s.column)}get errorListenerDispatch(){return new Qr(ea(this,jt))}sempred(t,e,s){return!0}precpred(t,e){return!0}action(t,e,s){}get atn(){return this.interpreter.atn}get state(){return ea(this,zt)}set state(t){$s(this,zt,t)}getSerializedATN(){throw new Error("there is no serialized ATN")}getParseInfo(){return null}},Ea(qt,"Recognizer"),(0,js.Z)(qt,"EOF",-1),(0,js.Z)(qt,"tokenTypeMapCache",new Map),(0,js.Z)(qt,"ruleIndexMapCache",new Map),qt),Zr=(te=new WeakMap,$t=class t{constructor(t){var e,s,a,i,c,n;(0,js.Z)(this,"source",void 0),(0,js.Z)(this,"tokenIndex",void 0),(0,js.Z)(this,"start",void 0),(0,js.Z)(this,"stop",void 0),(0,js.Z)(this,"type",void 0),(0,js.Z)(this,"line",void 0),(0,js.Z)(this,"column",void 0),(0,js.Z)(this,"channel",void 0),r(this,te,{writable:!0,value:void 0}),this.type=t.type,this.source=t.source,this.tokenIndex=null!==(e=t.tokenIndex)&&void 0!==e?e:-1,this.line=null!==(s=t.line)&&void 0!==s?s:0,this.column=null!==(a=t.column)&&void 0!==a?a:-1,this.channel=null!==(i=t.channel)&&void 0!==i?i:ca.DEFAULT_CHANNEL,this.start=null!==(c=t.start)&&void 0!==c?c:0,this.stop=null!==(n=t.stop)&&void 0!==n?n:0,$s(this,te,t.text),null!==t.source[0]&&(this.line=t.source[0].line,this.column=t.source[0].column)}static fromToken(e){let s;return s="source"in e?e.source:[e.tokenSource,e.inputStream],new t({type:e.type,line:e.line,tokenIndex:e.tokenIndex,column:e.column,channel:e.channel,start:e.start,stop:e.stop,text:e.text,source:s})}static fromType(e,s){return new t({type:e,text:s,source:t.EMPTY_SOURCE})}static fromSource(e,s,a,r,i){return new t({type:s,channel:a,start:r,stop:i,source:e})}get tokenSource(){return this.source[0]}get inputStream(){return this.source[1]}clone(){return new t({source:this.source,type:this.type,channel:this.channel,start:this.start,stop:this.stop,tokenIndex:this.tokenIndex,line:this.line,column:this.column,text:ea(this,te)})}toString(t){let e="";this.channel>0&&(e=",channel="+this.channel);let s=this.text;s?(s=s.replace(/\n/g,"\\n"),s=s.replace(/\r/g,"\\r"),s=s.replace(/\t/g,"\\t")):s="";let a=String(this.type);var r;t&&(a=null!==(r=t.vocabulary.getDisplayName(this.type))&&void 0!==r?r:"");return"[@"+this.tokenIndex+","+this.start+":"+this.stop+"='"+s+"',<"+a+">"+e+","+this.line+":"+this.column+"]"}get text(){if(ea(this,te))return ea(this,te);const t=this.inputStream;if(!t)return;const e=t.size;return this.start"}set text(t){$s(this,te,t)}setText(t){$s(this,te,t)}setType(t){this.type=t}setLine(t){this.line=t}setCharPositionInLine(t){this.column=t}setChannel(t){this.channel=t}setTokenIndex(t){this.tokenIndex=t}},Ea($t,"CommonToken"),(0,js.Z)($t,"EMPTY_SOURCE",[null,null]),$t),qr=(Ea(ee=class{constructor(t){(0,js.Z)(this,"copyText",!1),this.copyText=null!==t&&void 0!==t&&t}create(t,e,s,a,r,i,c,n){const h=Zr.fromSource(t,e,a,r,i);return h.line=c,h.column=n,s?h.text=s:this.copyText&&null!==t[1]&&(h.text=t[1].getTextFromRange(r,i)),h}},"CommonTokenFactory"),(0,js.Z)(ee,"DEFAULT",new ee),ee),jr=(se=class t extends Error{constructor(e){super(e.message),(0,js.Z)(this,"ctx",void 0),(0,js.Z)(this,"offendingToken",null),(0,js.Z)(this,"offendingState",-1),(0,js.Z)(this,"recognizer",void 0),(0,js.Z)(this,"input",void 0),Error.captureStackTrace&&Error.captureStackTrace(this,t),this.message=e.message,this.recognizer=e.recognizer,this.input=e.input,this.ctx=e.ctx,null!==this.recognizer&&(this.offendingState=this.recognizer.state)}getExpectedTokens(){return null!==this.recognizer&&null!==this.ctx?this.recognizer.atn.getExpectedTokens(this.offendingState,this.ctx):null}toString(){return this.message}},Ea(se,"RecognitionException"),se),zr=(Ea(ae=class extends jr{constructor(t,e,s,a){super({message:"",recognizer:t,input:e,ctx:null}),(0,js.Z)(this,"startIndex",void 0),(0,js.Z)(this,"deadEndConfigs",void 0),this.startIndex=s,this.deadEndConfigs=a}toString(){let t="";return this.input&&this.startIndex>=0&&this.startIndex0&&void 0!==arguments[0])||arguments[0])&&ea(this,ie).seek(0),$s(this,ce,null),this.type=ca.INVALID_TYPE,this.channel=ca.DEFAULT_CHANNEL,this.tokenStartCharIndex=-1,this.currentTokenColumn=-1,this.currentTokenStartLine=-1,$s(this,Ee,void 0),$s(this,ne,!1),this.mode=t.DEFAULT_MODE,$s(this,he,[]),this.interpreter.reset()}nextToken(){if(null===ea(this,ie))throw new Error("nextToken requires a non-null input stream.");const e=ea(this,ie).mark();try{for(;;){if(ea(this,ne))return this.emitEOF(),ea(this,ce);$s(this,ce,null),this.channel=ca.DEFAULT_CHANNEL,this.tokenStartCharIndex=ea(this,ie).index,this.currentTokenColumn=this.interpreter.column,this.currentTokenStartLine=this.interpreter.line,$s(this,Ee,void 0);let e=!1;for(;;){this.type=ca.INVALID_TYPE;let a=t.SKIP;try{a=this.interpreter.match(ea(this,ie),this.mode)}catch(s){if(!(s instanceof zr))throw s;this.notifyListeners(s),this.recover(s)}if(ea(this,ie).LA(1)===ca.EOF&&$s(this,ne,!0),this.type===ca.INVALID_TYPE&&(this.type=a),this.type===t.SKIP){e=!0;break}if(this.type!==t.MORE)break}if(!e)return null===ea(this,ce)&&this.emit(),ea(this,ce)}}finally{ea(this,ie).release(e)}}skip(){this.type=t.SKIP}more(){this.type=t.MORE}pushMode(t){hi.debug&&console.log("pushMode "+t),ea(this,he).push(this.mode),this.mode=t}popMode(){if(0===ea(this,he).length)throw new Error("Empty Stack");return hi.debug&&console.log("popMode back to "+ea(this,he).slice(0,-1)),this.mode=ea(this,he).pop(),this.mode}get modeStack(){return ea(this,he)}emitToken(t){$s(this,ce,t)}emit(){const t=ea(this,Te).create([this,ea(this,ie)],this.type,ea(this,Ee),this.channel,this.tokenStartCharIndex,this.getCharIndex()-1,this.currentTokenStartLine,this.currentTokenColumn);return this.emitToken(t),t}emitEOF(){const t=ea(this,Te).create([this,ea(this,ie)],ca.EOF,void 0,ca.DEFAULT_CHANNEL,ea(this,ie).index,ea(this,ie).index-1,this.line,this.column);return this.emitToken(t),t}getCharIndex(){return ea(this,ie).index}getAllTokens(){const t=[];let e=this.nextToken();for(;e.type!==ca.EOF;)t.push(e),e=this.nextToken();return t}notifyListeners(t){const e=this.tokenStartCharIndex,s=ea(this,ie).index,a=ea(this,ie).getTextFromRange(e,s),r="token recognition error at: '"+this.getErrorDisplay(a)+"'";this.errorListenerDispatch.syntaxError(this,null,this.currentTokenStartLine,this.currentTokenColumn,r,t)}getErrorDisplay(t){return t}getErrorDisplayForChar(t){return t.charCodeAt(0)===ca.EOF?"":"\n"===t?"\\n":"\t"===t?"\\t":"\r"===t?"\\r":t}getCharErrorDisplay(t){return"'"+this.getErrorDisplayForChar(t)+"'"}recover(t){ea(this,ie).LA(1)!==ca.EOF&&(t instanceof zr?this.interpreter.consume(ea(this,ie)):ea(this,ie).consume())}get inputStream(){return ea(this,ie)}set inputStream(t){this.reset(!1),$s(this,ie,t)}set tokenFactory(t){$s(this,Te,t)}get tokenFactory(){return ea(this,Te)}get sourceName(){return ea(this,ie).getSourceName()}get line(){return this.interpreter.line}set line(t){this.interpreter.line=t}get column(){return this.interpreter.column}set column(t){this.interpreter.column=t}get text(){return ea(this,Ee)?ea(this,Ee):this.interpreter.getText(ea(this,ie))}set text(t){$s(this,Ee,t)}},Ea(re,"Lexer"),(0,js.Z)(re,"DEFAULT_MODE",0),(0,js.Z)(re,"MORE",-2),(0,js.Z)(re,"SKIP",-3),(0,js.Z)(re,"DEFAULT_TOKEN_CHANNEL",ca.DEFAULT_CHANNEL),(0,js.Z)(re,"HIDDEN",ca.HIDDEN_CHANNEL),re),ti=(oe=class t extends Error{constructor(e){super(),Error.captureStackTrace(this,t)}},Ea(oe,"ParseCancellationException"),oe),ei=(Re=class{static parseInterpreterData(t){const e=[],s=[],a=[],r=[],i=[],c=t.split("\n");let n=0,h=c[n++];if("token literal names:"!==h)throw new Error("Unexpected data entry");for(;;){if(h=c[n++],0===h.length)break;r.push("null"===h?null:h)}if(h=c[n++],"token symbolic names:"!==h)throw new Error("Unexpected data entry");for(;;){if(h=c[n++],0===h.length)break;i.push("null"===h?null:h)}if(h=c[n++],"rule names:"!==h)throw new Error("Unexpected data entry");for(;;){if(h=c[n++],0===h.length)break;e.push(h)}if(h=c[n++],"channel names:"===h){for(;;){if(h=c[n++],0===h.length)break;s.push(h)}if(h=c[n++],"mode names:"!==h)throw new Error("Unexpected data entry");for(;;){if(h=c[n++],0===h.length)break;a.push(h)}}if(h=c[n++],"atn:"!==h)throw new Error("Unexpected data entry");h=c[n++];const E=h.split(",");let T;const o=[];for(let R=0;R0?s:void 0,modes:a.length>0?a:void 0}}},Ea(Re,"InterpreterDataReader"),Se=new WeakMap,Ae=class t extends Ha{constructor(){super(...arguments),r(this,Se,{writable:!0,value:[]})}getOrAdd(t){const e=this.size,s=super.getOrAdd(t);return this.size>e&&ea(this,Se).push(t),s}equals(e){return e instanceof t&&super.equals(e)}add(t){return!!super.add(t)&&(ea(this,Se).push(t),!0)}clear(){super.clear(),$s(this,Se,[])}*[Symbol.iterator](){yield*ea(this,Se)}toArray(){return ea(this,Se).slice(0)}},Ea(Ae,"OrderedHashSet"),Ae),si=(Ea(le=class extends $a{constructor(){super(),this.configLookup=new ei}},"OrderedATNConfigSet"),le),ai=(Ie=new WeakMap,Ea(Oe=class t{constructor(t,e){(0,js.Z)(this,"offset",void 0),(0,js.Z)(this,"action",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!0),r(this,Ie,{writable:!0,value:void 0}),this.actionType=e.actionType,this.offset=t,this.action=e}execute(t){this.action.execute(t)}hashCode(){if(void 0===ea(this,Ie)){let t=Aa.initialize();t=Aa.update(t,this.offset),t=Aa.updateFromComparable(t,this.action),$s(this,Ie,Aa.finish(t,2))}return ea(this,Ie)}equals(e){return this===e||e instanceof t&&(this.offset===e.offset&&this.action===e.action)}},"LexerIndexedCustomAction"),Oe),ri=(Ne=new WeakMap,ue=class t{constructor(t){return(0,js.Z)(this,"lexerActions",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),r(this,Ne,{writable:!0,value:void 0}),this.actionType=-1,this.lexerActions=null!==t&&void 0!==t?t:[],this}static append(e,s){if(null===e)return new t([s]);const a=e.lexerActions.concat([s]);return new t(a)}fixOffsetBeforeMatch(e){let s=null;for(let t=0;te.equals(t.lexerActions[s]))))}},Ea(ue,"LexerActionExecutor"),ue),ii=(Le=class{constructor(t,e){(0,js.Z)(this,"dfa",void 0),(0,js.Z)(this,"vocabulary",void 0),this.dfa=t,this.vocabulary=e}toString(){if(!this.dfa.s0)return"";let t="";const e=this.dfa.getStates();for(const s of e){let e=0;e=s.edges.length;for(let a=0;a",t+=this.getStateString(e),t+="\n"}}}return t}getEdgeLabel(t){const e=this.vocabulary.getDisplayName(t-1);return"".concat(e)}getStateString(t){const e=t.stateNumber,s=(t.isAcceptState?":":"")+"s"+e+(t.requiresFullContext?"^":"");return t.isAcceptState?null!==t.predicates?"".concat(s,"=>").concat(t.predicates.toString()):"".concat(s,"=>").concat(t.prediction):"".concat(s)}},Ea(Le,"DFASerializer"),Le),ci=(Ce=class extends ii{constructor(t){super(t,Ra.EMPTY_VOCABULARY),(0,js.Z)(this,"getEdgeLabel",(t=>"'"+String.fromCharCode(t)+"'"))}},Ea(Ce,"LexerDFASerializer"),Ce),ni=(Pe=new WeakMap,_e=class{constructor(t,e){(0,js.Z)(this,"s0",void 0),(0,js.Z)(this,"decision",void 0),(0,js.Z)(this,"atnStartState",void 0),(0,js.Z)(this,"isPrecedenceDfa",void 0),r(this,Pe,{writable:!0,value:new Map}),(0,js.Z)(this,Symbol.iterator,(()=>ea(this,Pe).values()[Symbol.iterator]())),(0,js.Z)(this,"getPrecedenceStartState",(t=>{if(!this.isPrecedenceDfa)throw new Error("Only precedence DFAs may contain a precedence start state.");if(!(!this.s0||!this.s0.edges||t<0||t>=this.s0.edges.length))return this.s0.edges[t]})),(0,js.Z)(this,"setPrecedenceStartState",((t,e)=>{if(!this.isPrecedenceDfa)throw new Error("Only precedence DFAs may contain a precedence start state.");t<0||!this.s0||(this.s0.edges[t]=e)})),this.atnStartState=t,this.decision=null!==e&&void 0!==e?e:0;let s=!1;t instanceof Tr&&t.precedenceRuleDecision&&(s=!0,this.s0=wr.fromState(-1)),this.isPrecedenceDfa=s}getStates(){const t=[...ea(this,Pe).values()];return t.sort(((t,e)=>t.stateNumber-e.stateNumber)),t}getState(t){var e;return null!==(e=ea(this,Pe).get(t.configs.hashCode()))&&void 0!==e?e:null}getStateForConfigs(t){var e;return null!==(e=ea(this,Pe).get(t.hashCode()))&&void 0!==e?e:null}addState(t){const e=t.configs.hashCode();ea(this,Pe).has(e)||(ea(this,Pe).set(e,t),t.stateNumber=ea(this,Pe).size-1)}toString(t){var e;if(!t)return this.toString(Ra.EMPTY_VOCABULARY);if(!this.s0)return"";return null!==(e=new ii(this,t).toString())&&void 0!==e?e:""}toLexerString(){var t;if(!this.s0)return"";return null!==(t=new ci(this).toString())&&void 0!==t?t:""}get length(){return ea(this,Pe).size}},Ea(_e,"DFA"),_e),hi=(de=new WeakMap,Ue=new WeakMap,me=new WeakMap,Me=class t extends br{constructor(t,e,s,a){super(e,a),(0,js.Z)(this,"decisionToDFA",void 0),(0,js.Z)(this,"recognizer",null),(0,js.Z)(this,"startIndex",-1),(0,js.Z)(this,"line",1),(0,js.Z)(this,"column",0),(0,js.Z)(this,"mode",$r.DEFAULT_MODE),r(this,de,{writable:!0,value:void 0}),r(this,Ue,{writable:!0,value:void 0}),r(this,me,{writable:!0,value:void 0}),this.decisionToDFA=s,this.recognizer=t,t&&$s(this,Ue,t.options)}match(t,e){this.mode=e;const s=t.mark();try{this.startIndex=t.index,$s(this,de,void 0);const s=this.decisionToDFA[e];return s.s0?this.execATN(t,s.s0):this.matchATN(t)}finally{t.release(s)}}reset(){$s(this,de,void 0),this.startIndex=-1,this.line=1,this.column=0,this.mode=$r.DEFAULT_MODE}clearDFA(){for(let t=0;t=ea(this,Ue).minDFAEdge&&s<=ea(this,Ue).maxDFAEdge){const a=e.edges[s-ea(this,Ue).minDFAEdge];return t.debug&&a&&console.log("reuse state "+e.stateNumber+" edge to "+a.stateNumber),a}}computeTargetState(t,e,s){const a=new si;return this.getReachableConfigSet(t,e.configs,a,s),0===a.length?(a.hasSemanticContext||this.addDFAEdge(e,s,br.ERROR),br.ERROR):this.addDFAEdge(e,s,null,a)}failOrAccept(t,e,s){var a;if(null!==(a=ea(this,de))&&void 0!==a&&a.dfaState){const{dfaState:e,index:s,line:a,column:r}=ea(this,de);return this.accept(t,e.lexerActionExecutor,this.startIndex,s,a,r),e.prediction}if(s===ca.EOF&&t.index===this.startIndex)return ca.EOF;throw new zr(this.recognizer,t,this.startIndex,e)}getReachableConfigSet(e,s,a,r){let i=ja.INVALID_ALT_NUMBER;for(const c of s){const s=c.alt===i;if(!s||!c.passedThroughNonGreedyDecision){t.debug&&console.log("testing %s at %s\n",this.getTokenName(r),c.toString(this.recognizer,!0));for(const t of c.state.transitions){const n=this.getReachableTarget(t,r);if(n){let t=c.lexerActionExecutor;t&&(t=t.fixOffsetBeforeMatch(e.index-this.startIndex));const h=r===ca.EOF,E=Vr.createWithExecutor(c,n,t);this.closure(e,E,a,s,!0,h)&&(i=c.alt)}}}}}accept(e,s,a,r,i,c){t.debug&&console.log("ACTION %s\n",s),e.seek(r),this.line=i,this.column=c,s&&this.recognizer&&s.execute(this.recognizer,e,a)}getReachableTarget(t,e){return t.matches(e,ea(this,Ue).minCodePoint,ea(this,Ue).maxCodePoint)?t.target:void 0}computeStartState(t,e){const s=ua.EMPTY,a=new si;for(let r=0;r{var a;const r=da.create(null!==(a=e.context)&&void 0!==a?a:void 0,s.followState.stateNumber);return Vr.createWithConfig(s.target,e,r)},ea(this,me)[la.PRECEDENCE]=()=>{throw new Error("Precedence predicates are not supported in lexers.")},ea(this,me)[la.PREDICATE]=(e,s,a,r,i)=>{const c=a;return t.debug&&console.log("EVAL rule "+c.ruleIndex+":"+c.predIndex),r.hasSemanticContext=!0,this.evaluatePredicate(e,c.ruleIndex,c.predIndex,i)?Vr.createWithConfig(a.target,s):null},ea(this,me)[la.ACTION]=(t,e,s)=>{if(null===e.context||e.context.hasEmptyPath()){const t=ri.append(e.lexerActionExecutor,this.atn.lexerActions[s.actionIndex]);return Vr.createWithExecutor(e,s.target,t)}return Vr.createWithConfig(s.target,e)},ea(this,me)[la.EPSILON]=(t,e,s)=>Vr.createWithConfig(s.target,e);const e=Ea(((t,e,s,a,r,i)=>i&&s.matches(ca.EOF,ea(this,Ue).minCodePoint,ea(this,Ue).maxCodePoint)?Vr.createWithConfig(s.target,e):null),"simple");ea(this,me)[la.ATOM]=e,ea(this,me)[la.RANGE]=e,ea(this,me)[la.SET]=e}evaluatePredicate(t,e,s,a){if(!this.recognizer)return!0;if(!a)return this.recognizer.sempred(null,e,s);const r=this.column,i=this.line,c=t.index,n=t.mark();try{return this.consume(t),this.recognizer.sempred(null,e,s)}finally{this.column=r,this.line=i,t.seek(c),t.release(n)}}captureSimState(t,e){$s(this,de,{index:t.index,line:this.line,column:this.column,dfaState:e})}addDFAEdge(e,s,a,r){if(!a&&r){const t=r.hasSemanticContext;if(r.hasSemanticContext=!1,a=this.addDFAState(r),t)return a}return sea(this,Ue).maxDFAEdge||(t.debug&&console.log("EDGE "+e+" -> "+a+" upon "+s),e.edges[s-ea(this,Ue).minDFAEdge]=a),a}addDFAState(t){const e=this.decisionToDFA[this.mode],s=e.getStateForConfigs(t);if(s)return s;const a=wr.fromConfigs(t),r=t.firstStopState;return r&&(a.isAcceptState=!0,a.lexerActionExecutor=r.lexerActionExecutor,a.prediction=this.atn.ruleToTokenType[r.state.ruleIndex]),t.setReadonly(!0),e.addState(a),a}},Ea(Me,"LexerATNSimulator"),(0,js.Z)(Me,"debug",!1),Me),Ei=(De=class{constructor(t){(0,js.Z)(this,"atnSimulator",void 0),this.atnSimulator=t}getDecisionInfo(){return this.atnSimulator.getDecisionInfo()}getLLDecisions(){const t=this.atnSimulator.getDecisionInfo(),e=new Array;for(let s=0;s0&&e.push(s)}return e}getTotalTimeInPrediction(){const t=this.atnSimulator.getDecisionInfo();let e=0;for(const s of t)e+=s.timeInPrediction;return e}getTotalSLLLookaheadOps(){const t=this.atnSimulator.getDecisionInfo();let e=0;for(const s of t)e+=s.sllTotalLook;return e}getTotalLLLookaheadOps(){const t=this.atnSimulator.getDecisionInfo();let e=0;for(const s of t)e+=s.llTotalLook;return e}getTotalSLLATNLookaheadOps(){const t=this.atnSimulator.getDecisionInfo();let e=0;for(const s of t)e+=s.sllATNTransitions;return e}getTotalLLATNLookaheadOps(){const t=this.atnSimulator.getDecisionInfo();let e=0;for(const s of t)e+=s.llATNTransitions;return e}getTotalATNLookaheadOps(){const t=this.atnSimulator.getDecisionInfo();let e=0;for(const s of t)e+=s.sllATNTransitions,e+=s.llATNTransitions;return e}getDFASize(t){if(void 0===t){let t=0;const e=this.atnSimulator.decisionToDFA;for(let s=0;s1&&void 0!==arguments[1]?arguments[1]:null,c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,h=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,E=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null;E=null!==(e=E)&&void 0!==e?e:t.context,n=null!==(s=n)&&void 0!==s?s:t.getCurrentToken(),c=null!==(a=c)&&void 0!==a?a:t.getCurrentToken(),i=null!==(r=i)&&void 0!==r?r:t.inputStream,super({message:"",recognizer:t,input:i,ctx:E}),(0,js.Z)(this,"deadEndConfigs",null),(0,js.Z)(this,"startToken",void 0),this.deadEndConfigs=h,this.startToken=c,this.offendingToken=n}},"NoViableAltException"),pe),Ti=(ge=class{constructor(){(0,js.Z)(this,"cacheMap",void 0),this.cacheMap=new Fa(ka.instance)}get(t,e){var s,a;const r=null!==(s=this.cacheMap.get(t))&&void 0!==s?s:null;return null===r?null:null!==(a=r.get(e))&&void 0!==a?a:null}set(t,e,s){let a=this.cacheMap.get(t);a||(a=new Fa(ka.instance),this.cacheMap.set(t,a)),a.set(e,s)}},Ea(ge,"DoubleDict"),ge),oi=(xe=class{hashCode(t){let e=Aa.initialize(7);return e=Aa.update(e,t.state.stateNumber),e=Aa.updateFromComparable(e,t.context),e=Aa.finish(e,2),e}equals(t,e){var s,a;return t.state.stateNumber===e.state.stateNumber&&(null===(s=null===(a=t.context)||void 0===a?void 0:a.equals(e.context))||void 0===s||s)}},Ea(xe,"SubsetEqualityComparer"),(0,js.Z)(xe,"instance",new xe),xe),Ri=(ke=class t{static hasSLLConflictTerminatingPrediction(e,s){if(t.allConfigsInRuleStopStates(s))return!0;if(e===t.SLL&&s.hasSemanticContext){const t=new $a;for(let e of s)e=Za.duplicate(e,Xa.NONE),t.add(e);s=t}const a=t.getConflictingAltSubsets(s);return t.hasConflictingAltSet(a)&&!t.hasStateAssociatedWithOneAlt(s)}static hasConfigInRuleStopState(t){for(const e of t)if(e.state instanceof cr)return!0;return!1}static allConfigsInRuleStopStates(t){for(const e of t)if(!(e.state instanceof cr))return!1;return!0}static resolvesToJustOneViableAlt(e){return t.getSingleViableAlt(e)}static allSubsetsConflict(e){return!t.hasNonConflictingAltSet(e)}static hasNonConflictingAltSet(t){for(const e of t)if(1===e.length)return!0;return!1}static hasConflictingAltSet(t){for(const e of t)if(e.length>1)return!0;return!1}static allSubsetsEqual(t){let e=null;for(const s of t)if(null===e)e=s;else if(s!==e)return!1;return!0}static getUniqueAlt(e){const s=t.getAlts(e);return 1===s.length?s.nextSetBit(0):ja.INVALID_ALT_NUMBER}static getAlts(t){const e=new Wa;return t.forEach((t=>{e.or(t)})),e}static getConflictingAltSubsets(t){const e=new Fa(oi.instance);for(const s of t){let t=e.get(s);t||(t=new Wa,e.set(s,t)),t.set(s.alt)}return Array.from(e.values())}static getStateToAltMap(t){const e=new Fa(xa.instance);for(const s of t){let t=e.get(s.state);t||(t=new Wa,e.set(s.state,t)),t.set(s.alt)}return e}static hasStateAssociatedWithOneAlt(t){const e={};for(const s of t){const t=s.state.stateNumber;e[t]||(e[t]=0),e[t]++}return Object.values(e).some((t=>1===t))}static getSingleViableAlt(t){var e;let s=null;for(const a of t){const t=a.nextSetBit(0);if(null===s)s=t;else if(s!==t)return ja.INVALID_ALT_NUMBER}return null!==(e=s)&&void 0!==e?e:0}},Ea(ke,"PredictionMode"),(0,js.Z)(ke,"SLL",0),(0,js.Z)(ke,"LL",1),(0,js.Z)(ke,"LL_EXACT_AMBIG_DETECTION",2),ke),Ai=(He=class t extends br{constructor(t,e,s,a){super(e,a),(0,js.Z)(this,"predictionMode",void 0),(0,js.Z)(this,"decisionToDFA",void 0),(0,js.Z)(this,"parser",void 0),(0,js.Z)(this,"mergeCache",new Ti),(0,js.Z)(this,"predictionState",void 0),this.parser=t,this.decisionToDFA=s}static getUniqueAlt(t){let e=ja.INVALID_ALT_NUMBER;for(const s of t)if(e===ja.INVALID_ALT_NUMBER)e=s.alt;else if(s.alt!==e)return ja.INVALID_ALT_NUMBER;return e}reset(){}clearDFA(){for(let t=0;t"}getTokenName(t){var e,s;if(t===ca.EOF)return"EOF";const a=(null!==(e=null===(s=this.parser)||void 0===s?void 0:s.vocabulary)&&void 0!==e?e:Ra.EMPTY_VOCABULARY).getDisplayName(t);return a===t.toString()?a:a+"<"+t+">"}getLookaheadName(t){return this.getTokenName(t.LA(1))}dumpDeadEndConfigs(t){console.log("dead end configs: ");const e=t.deadEndConfigs;for(const s of e){let t="no edges";if(s.state.transitions.length>0){const e=s.state.transitions[0];if(e instanceof Sr)t="Atom "+this.getTokenName(e.labelValue);else if(e instanceof Oa){t=(e instanceof Ia?"~":"")+"Set "+e.label}}console.error(s.toString(this.parser,!0)+":"+t)}}predicateDFAState(t,e){const s=e.transitions.length,a=this.getConflictingAltsOrUniqueAlt(t.configs),r=this.getPredsForAmbigAlts(a,t.configs,s);null!==r?(t.predicates=this.getPredicatePredictions(a,r),t.prediction=ja.INVALID_ALT_NUMBER):t.prediction=a.nextSetBit(0)}execATNWithFullContext(e,s,a,r,i,c){(t.debug||t.traceATNSimulator)&&console.log("execATNWithFullContext "+a);let n,h=!1,E=a;r.seek(i);let T=r.LA(1),o=-1;for(;;){if(n=this.computeReachSet(E,T,true),null===n){const t=this.noViableAlt(r,c,E,i);r.seek(i);const e=this.getSynValidOrSemInvalidAltThatFinishedDecisionEntryRule(E,c);if(e!==ja.INVALID_ALT_NUMBER)return e;throw t}const e=Ri.getConflictingAltSubsets(n);if(t.debug&&console.log("LL altSubSets="+e+", predict="+Ri.getUniqueAlt(e)+", resolvesToJustOneViableAlt="+Ri.resolvesToJustOneViableAlt(e)),n.uniqueAlt=t.getUniqueAlt(n),n.uniqueAlt!==ja.INVALID_ALT_NUMBER){o=n.uniqueAlt;break}if(this.predictionMode!==Ri.LL_EXACT_AMBIG_DETECTION){if(o=Ri.resolvesToJustOneViableAlt(e),o!==ja.INVALID_ALT_NUMBER)break}else if(Ri.allSubsetsConflict(e)&&Ri.allSubsetsEqual(e)){h=!0,o=Ri.getSingleViableAlt(e);break}E=n,T!==ca.EOF&&(r.consume(),T=r.LA(1))}return n.uniqueAlt!==ja.INVALID_ALT_NUMBER?(this.reportContextSensitivity(e,o,n,i,r.index),o):(this.reportAmbiguity(e,s,i,r.index,h,void 0,n),o)}computeReachSet(e,s,a){t.debug&&console.log("in computeReachSet, starting closure: "+e);const r=new $a(a);let i=null;for(const n of e)if(t.debug&&console.log("testing "+this.getTokenName(s)+" at "+n),n.state instanceof cr)(a||s===ca.EOF)&&(null===i&&(i=[]),i.push(n));else for(const e of n.state.transitions){const a=this.getReachableTarget(e,s);if(null!==a){const e=Za.createWithConfig(a,n);r.add(e,this.mergeCache),t.debugAdd&&console.log("added "+e+" to intermediate")}}let c=null;if(null===i&&s!==ca.EOF&&(1===r.length||t.getUniqueAlt(r)!==ja.INVALID_ALT_NUMBER)&&(c=r),null===c){c=new $a(a);const t=new Ha,e=s===ca.EOF;for(const s of r)this.closure(s,c,t,!1,a,e)}if(s===ca.EOF&&(c=this.removeAllConfigsNotInRuleStopState(c,c===r)),null!==i&&(!a||!Ri.hasConfigInRuleStopState(c)))for(const t of i)c.add(t,this.mergeCache);return t.traceATNSimulator&&console.log("computeReachSet "+e+" -> "+c),0===c.length?null:c}removeAllConfigsNotInRuleStopState(t,e){if(Ri.allConfigsInRuleStopStates(t))return t;const s=new $a(t.fullCtx);for(const a of t)if(a.state instanceof cr)s.add(a,this.mergeCache);else if(e&&a.state.epsilonOnlyTransitions){if(this.atn.nextTokens(a.state).contains(ca.EPSILON)){const t=this.atn.ruleToStopState[a.state.ruleIndex];s.add(Za.createWithConfig(t,a),this.mergeCache)}}return s}computeStartState(e,s,a){const r=va(this.atn,s),i=new $a(a);t.traceATNSimulator&&console.log("computeStartState from ATN state "+e+" initialContext="+r.toString(this.parser));for(let t=0;t0&&(i=this.getAltThatFinishedDecisionEntryRule(r),i!==ja.INVALID_ALT_NUMBER)?i:ja.INVALID_ALT_NUMBER}getAltThatFinishedDecisionEntryRule(t){const e=[];for(const s of t)(s.reachesIntoOuterContext||s.state instanceof cr&&s.context.hasEmptyPath())&&e.indexOf(s.alt)<0&&e.push(s.alt);return 0===e.length?ja.INVALID_ALT_NUMBER:Math.min(...e)}splitAccordingToSemanticValidity(t,e){const s=new $a(t.fullCtx),a=new $a(t.fullCtx);for(const r of t)if(r.semanticContext!==Xa.NONE){r.semanticContext.evaluate(this.parser,e)?s.add(r):a.add(r)}else s.add(r);return[s,a]}evalSemanticContext(e,s,a){const r=new Wa;for(const i of e){if(i.pred===Xa.NONE){if(r.set(i.alt),!a)break;continue}const e=i.pred.evaluate(this.parser,s);if((t.debug||t.dfaDebug)&&console.log("eval pred "+i+"="+e),e&&(r.set(i.alt),!a))break}return r}closure(t,e,s,a,r,i){this.closureCheckingStopState(t,e,s,a,r,0,i)}closureCheckingStopState(e,s,a,r,i,c,n){if((t.traceATNSimulator||t.debugClosure)&&console.log("closure("+e.toString(this.parser,!0)+")"),e.state instanceof cr){if(e.context&&!e.context.isEmpty()){for(let h=0;h=0&&(r+=1)}this.closureCheckingStopState(l,s,a,S,i,r,n)}}}canDropLoopEntryEdgeInLeftRecursiveRule(t){const e=t.state;if(e.constructor.stateType!==Va.STAR_LOOP_ENTRY||!t.context)return!1;if(!e.precedenceRuleDecision||t.context.isEmpty()||t.context.hasEmptyPath())return!1;const s=t.context.length;for(let i=0;i=_p, ctx dependent=true"),null!==this.parser&&console.log("context surrounding pred is "+La(this.parser.getRuleInvocationStack())));let c=null;var n;if(a&&r)if(i&&null!==(n=this.predictionState)&&void 0!==n&&n.input){const t=this.predictionState.input.index;this.predictionState.input.seek(this.predictionState.startIndex);const a=s.getPredicate().evaluate(this.parser,this.predictionState.outerContext);this.predictionState.input.seek(t),a&&(c=Za.createWithConfig(s.target,e))}else{const t=Xa.andContext(e.semanticContext,s.getPredicate());c=Za.createWithSemanticContext(s.target,e,t)}else c=Za.createWithConfig(s.target,e);return t.debug&&console.log("config from pred transition="+c),c}predTransition(e,s,a,r,i){t.debug&&(console.log("PRED (collectPredicates="+a+") "+s.ruleIndex+":"+s.predIndex+", ctx dependent="+s.isCtxDependent),null!==this.parser&&console.log("context surrounding pred is "+La(this.parser.getRuleInvocationStack())));let c=null;var n;if(a&&(s.isCtxDependent&&r||!s.isCtxDependent))if(i&&null!==(n=this.predictionState)&&void 0!==n&&n.input){const t=this.predictionState.input.index;this.predictionState.input.seek(this.predictionState.startIndex);const a=s.getPredicate().evaluate(this.parser,this.predictionState.outerContext);this.predictionState.input.seek(t),a&&(c=Za.createWithConfig(s.target,e))}else{const t=Xa.andContext(e.semanticContext,s.getPredicate());c=Za.createWithSemanticContext(s.target,e,t)}else c=Za.createWithConfig(s.target,e);return t.debug&&console.log("config from pred transition="+c),c}ruleTransition(e,s){var a;t.debug&&console.log("CALL rule "+this.getRuleName(s.target.ruleIndex)+", ctx="+e.context);const r=s.followState,i=da.create(null!==(a=e.context)&&void 0!==a?a:void 0,r.stateNumber);return Za.createWithConfig(s.target,e,i)}getConflictingAlts(t){const e=Ri.getConflictingAltSubsets(t);return Ri.getAlts(e)}getConflictingAltsOrUniqueAlt(t){let e;return t.uniqueAlt!==ja.INVALID_ALT_NUMBER?(e=new Wa,e.set(t.uniqueAlt)):e=t.conflictingAlts,e}noViableAlt(t,e,s,a){return new Ei(this.parser,t,t.get(a),t.LT(1),s,e)}addDFAEdge(e,s,a,r){return t.debug&&console.log("EDGE "+s+" -> "+r+" upon "+this.getTokenName(a)),r=this.addDFAState(e,r),a<-1||a>this.atn.maxTokenType||(t.debug&&console.log("DFA=\n"+e.toString(null!=this.parser?this.parser.vocabulary:Ra.EMPTY_VOCABULARY)),s.edges[a+1]=r),r}addDFAState(e,s){if(s===br.ERROR)return s;const a=e.getState(s);return null!==a?a:(s.configs.readOnly||(s.configs.optimizeConfigs(this),s.configs.setReadonly(!0)),t.traceATNSimulator&&console.log("addDFAState new "+s),e.addState(s),s)}reportAttemptingFullContext(e,s,a,r,i){if(t.debug||t.retryDebug){const t=new oa(r,i+1);console.log("reportAttemptingFullContext decision="+e.decision+":"+a+", input="+this.parser.tokenStream.getTextFromInterval(t))}this.parser.errorListenerDispatch.reportAttemptingFullContext(this.parser,e,r,i,s,a)}reportContextSensitivity(e,s,a,r,i){if(t.debug||t.retryDebug){const t=new oa(r,i+1);console.log("reportContextSensitivity decision="+e.decision+":"+a+", input="+this.parser.tokenStream.getTextFromInterval(t))}this.parser.errorListenerDispatch.reportContextSensitivity(this.parser,e,r,i,s,a)}reportAmbiguity(e,s,a,r,i,c,n){if(t.debug||t.retryDebug){const t=new oa(a,r+1);console.log("reportAmbiguity "+c+":"+n+", input="+this.parser.tokenStream.getTextFromInterval(t))}this.parser.errorListenerDispatch.reportAmbiguity(this.parser,e,a,r,i,c,n)}},Ea(He,"ParserATNSimulator"),(0,js.Z)(He,"traceATNSimulator",!1),(0,js.Z)(He,"debug",void 0),(0,js.Z)(He,"debugAdd",!1),(0,js.Z)(He,"debugClosure",!1),(0,js.Z)(He,"dfaDebug",!1),(0,js.Z)(He,"retryDebug",!1),He),Si=(Ea(Ge=class{constructor(){(0,js.Z)(this,"cache",new Fa(xa.instance))}add(t){if(t===ua.EMPTY)return t;const e=this.cache.get(t);return e||(this.cache.set(t,t),t)}get(t){return this.cache.get(t)}get length(){return this.cache.size}},"PredictionContextCache"),Ge),li=(ve=new WeakMap,Be=new WeakMap,Fe=class extends Ai{constructor(t){const e=t.interpreter.sharedContextCache;if(super(t,t.interpreter.atn,t.interpreter.decisionToDFA,e),(0,js.Z)(this,"decisions",void 0),(0,js.Z)(this,"numDecisions",0),(0,js.Z)(this,"currentDecision",0),(0,js.Z)(this,"currentState",void 0),(0,js.Z)(this,"conflictingAltResolvedBySLL",void 0),r(this,ve,{writable:!0,value:0}),r(this,Be,{writable:!0,value:0}),e){this.numDecisions=this.atn.decisionToState.length,this.decisions=new Array(this.numDecisions);for(let t=0;tthis.decisions[e].sllMaxLook&&(this.decisions[e].sllMaxLook=c,this.decisions[e].sllMaxLookEvent={decision:e,configs:null,predictedAlt:r,input:t,startIndex:this.predictionState.startIndex,stopIndex:ea(this,ve),fullCtx:!1}),ea(this,Be)>=0){const s=ea(this,Be)-this.predictionState.startIndex+1;this.decisions[e].llTotalLook+=s,this.decisions[e].llMinLook=0===this.decisions[e].llMinLook?s:Math.min(this.decisions[e].llMinLook,s),s>this.decisions[e].llMaxLook&&(this.decisions[e].llMaxLook=s,this.decisions[e].llMaxLookEvent={decision:e,configs:null,predictedAlt:r,input:t,startIndex:this.predictionState.startIndex,stopIndex:ea(this,Be),fullCtx:!0})}return r}finally{this.currentDecision=-1}}getExistingTargetState(t,e){var s;if(null!==(s=this.predictionState)&&void 0!==s&&s.input){$s(this,ve,this.predictionState.input.index);const s=super.getExistingTargetState(t,e);return null!==s&&(this.decisions[this.currentDecision].sllDFATransitions++,s===br.ERROR&&this.decisions[this.currentDecision].errors.push({decision:this.currentDecision,configs:t.configs,input:this.predictionState.input,startIndex:this.predictionState.startIndex,stopIndex:ea(this,ve),fullCtx:!1})),this.currentState=s,s}}computeTargetState(t,e,s){const a=super.computeTargetState(t,e,s);return this.currentState=a,a}computeReachSet(t,e,s){var a,r;s&&null!==(a=this.predictionState)&&void 0!==a&&a.input&&$s(this,Be,this.predictionState.input.index);const i=super.computeReachSet(t,e,s);return null!==(r=this.predictionState)&&void 0!==r&&r.input&&(s?(this.decisions[this.currentDecision].llATNTransitions++,null===i&&this.decisions[this.currentDecision].errors.push({decision:this.currentDecision,configs:t,input:this.predictionState.input,startIndex:this.predictionState.startIndex,stopIndex:ea(this,ve),fullCtx:!0})):(this.decisions[this.currentDecision].sllATNTransitions++,null===i&&this.decisions[this.currentDecision].errors.push({decision:this.currentDecision,configs:t,input:this.predictionState.input,startIndex:this.predictionState.startIndex,stopIndex:ea(this,ve),fullCtx:!1}))),i}reportAttemptingFullContext(t,e,s,a,r){this.conflictingAltResolvedBySLL=null!==e?e.nextSetBit(0):s.getAlts().nextSetBit(0),this.decisions[this.currentDecision].llFallback++,e&&super.reportAttemptingFullContext(t,e,s,a,r)}reportContextSensitivity(t,e,s,a,r){e!==this.conflictingAltResolvedBySLL&&this.predictionState.input&&this.decisions[this.currentDecision].contextSensitivities.push({decision:this.currentDecision,configs:s,input:this.predictionState.input,startIndex:a,stopIndex:r,fullCtx:!0}),super.reportContextSensitivity(t,e,s,a,r)}reportAmbiguity(t,e,s,a,r,i,c){var n;let h;h=i?i.nextSetBit(0):c.getAlts().nextSetBit(0),null!==(n=this.predictionState)&&void 0!==n&&n.input&&(c.fullCtx&&h!==this.conflictingAltResolvedBySLL&&this.decisions[this.currentDecision].contextSensitivities.push({decision:this.currentDecision,configs:c,input:this.predictionState.input,startIndex:s,stopIndex:a,fullCtx:!0}),this.decisions[this.currentDecision].ambiguities.push({ambigAlts:i,decision:this.currentDecision,configs:c,input:this.predictionState.input,startIndex:s,stopIndex:a,fullCtx:c.fullCtx})),super.reportAmbiguity(t,e,s,a,r,i,c)}getDecisionInfo(){return this.decisions}getCurrentState(){return this.currentState}},Ea(Fe,"ProfilingATNSimulator"),Fe);(Ja||(Ja={})).toString=Ea((t=>"(".concat(t.pred,", ").concat(t.alt,")")),"toString");var Oi,Ii=(ye=class{visit(t){return t.accept(this)}visitChildren(t){let e=this.defaultResult();const s=t.getChildCount();for(let a=0;anew ui(t)),"fromString");var ui=(we=new WeakSet,Ea(Ye=class{constructor(t){var e,s;a(e=this,s=we),s.add(e),(0,js.Z)(this,"name",""),(0,js.Z)(this,"index",0),(0,js.Z)(this,"data",void 0);const r=[];for(const a of t)r.push(a.codePointAt(0));this.data=new Uint32Array(r)}reset(){this.index=0}consume(){if(this.index>=this.data.length)throw new Error("cannot consume EOF");this.index+=1}LA(t){if(0===t)return 0;t<0&&(t+=1);const e=this.index+t-1;return e<0||e>=this.data.length?ca.EOF:this.data[e]}mark(){return-1}release(t){}seek(t){t<=this.index?this.index=t:this.index=Math.min(t,this.data.length)}getTextFromRange(t,e){var s;return(e=null!==(s=e)&&void 0!==s?s:this.data.length-1)>=this.data.length&&(e=this.data.length-1),t>=this.data.length?"":sa(this,we,Ni).call(this,t,e+1)}getTextFromInterval(t){const e=t.start;let s=t.stop;return s>=this.data.length&&(s=this.data.length-1),e>=this.data.length?"":sa(this,we,Ni).call(this,e,s+1)}toString(){return sa(this,we,Ni).call(this,0)}get size(){return this.data.length}getSourceName(){return this.name?this.name:ra.UNKNOWN_SOURCE_NAME}},"CharStreamImpl"),Ye);function Ni(t,e){const s=this.data.slice(t,e);let a="";return s.forEach((t=>{a+=String.fromCodePoint(t)})),a}var Li,Ci,_i,Pi,Mi,di,Ui,mi,Di,pi,gi,xi,ki,Hi,Gi,Fi,vi,Bi,yi,fi,Yi,wi,bi,Wi,Vi,Xi,Ki,Qi,Ji,Zi,qi,ji,zi=(be=class{constructor(t){(0,js.Z)(this,"tokenSource",void 0),(0,js.Z)(this,"tokens",[]),(0,js.Z)(this,"p",-1),(0,js.Z)(this,"fetchedEOF",!1),this.tokenSource=t}mark(){return 0}release(t){}reset(){this.seek(0)}seek(t){this.lazyInit(),this.p=this.adjustSeekIndex(t)}get size(){return this.tokens.length}get index(){return this.p}get(t){return this.lazyInit(),this.tokens[t]}consume(){let t=!1;if(t=this.p>=0&&(this.fetchedEOF?this.p0){return this.fetch(e)>=e}return!0}fetch(t){if(this.fetchedEOF)return 0;for(let e=0;e=this.tokens.length||e<0||t>=this.tokens.length)throw new RangeError("start "+t+" or stop "+e+" not in 0.."+(this.tokens.length-1));if(t>e)return[];if(void 0===s)return this.tokens.slice(t,e+1);const r=[];e>=this.tokens.length&&(e=this.tokens.length-1);for(let i=t;i=this.tokens.length?this.tokens[this.tokens.length-1]:this.tokens[e]}adjustSeekIndex(t){return t}lazyInit(){-1===this.p&&this.setup()}setup(){this.sync(0),this.p=this.adjustSeekIndex(0)}setTokenSource(t){this.tokenSource=t,this.tokens=[],this.p=-1,this.fetchedEOF=!1}nextTokenOnChannel(t,e){if(this.sync(t),t>=this.tokens.length)return-1;let s=this.tokens[t];for(;s.channel!==e;){if(s.type===ca.EOF)return-1;t+=1,this.sync(t),s=this.tokens[t]}return t}previousTokenOnChannel(t,e){for(;t>=0&&this.tokens[t].channel!==e;)t-=1;return t}getHiddenTokensToRight(t,e){if(void 0===e&&(e=-1),this.lazyInit(),t<0||t>=this.tokens.length)throw new Error("".concat(t," not in 0..").concat(this.tokens.length-1));const s=this.nextTokenOnChannel(t+1,$r.DEFAULT_TOKEN_CHANNEL),a=t+1,r=-1===s?this.tokens.length-1:s;return this.filterForChannel(a,r,e)}getHiddenTokensToLeft(t,e){if(void 0===e&&(e=-1),this.lazyInit(),t<0||t>=this.tokens.length)throw new Error("".concat(t," not in 0..").concat(this.tokens.length-1));const s=this.previousTokenOnChannel(t-1,$r.DEFAULT_TOKEN_CHANNEL);if(s===t-1)return;const a=s+1,r=t-1;return this.filterForChannel(a,r,e)}filterForChannel(t,e,s){const a=[];for(let r=t;r=this.tokens.length&&(s=this.tokens.length-1);let a="";for(let r=e;r<=s;++r){const t=this.tokens[r];if(t.type===ca.EOF)break;a+=t.text}return a}getTextFromContext(t){return this.getTextFromInterval(t.getSourceInterval())}getTextFromRange(t,e){return null!==t&&null!==e?this.getTextFromInterval(oa.of(t.tokenIndex,e.tokenIndex)):""}fill(){for(this.lazyInit();1e3===this.fetch(1e3););}},Ea(be,"BufferedTokenStream"),be),$i=(We=class extends zi{constructor(t,e){super(t),(0,js.Z)(this,"channel",ca.DEFAULT_CHANNEL),this.channel=null!==e&&void 0!==e?e:ca.DEFAULT_CHANNEL}adjustSeekIndex(t){return this.nextTokenOnChannel(t,this.channel)}LB(t){if(0===t||this.index-t<0)return null;let e=this.index,s=1;for(;s<=t;)e=this.previousTokenOnChannel(e-1,this.channel),s+=1;return e<0?null:this.tokens[e]}LT(t){if(this.lazyInit(),0===t)return null;if(t<0)return this.LB(-t);let e=this.index,s=1;for(;snew ni(t,e)))),Ve),ec=(Ea(Xe=class extends Xr{syntaxError(t,e,s,a,r,i){}},"XPathLexerErrorListener"),Xe),sc=(Ea(Ke=class{constructor(t){(0,js.Z)(this,"invert",void 0),(0,js.Z)(this,"nodeName",void 0),this.nodeName=t,this.invert=!1}toString(){return"XPathElement["+(this.invert?"!":"")+this.nodeName+"]"}},"XPathElement"),Ke),ac=(Ea(Qe=class extends sc{constructor(t,e){super(t),(0,js.Z)(this,"ruleIndex",void 0),this.ruleIndex=e}evaluate(t){return pa.findAllRuleNodes(t,this.ruleIndex)}toString(){return"XPathRuleAnywhereElement["+(this.invert?"!":"")+this.nodeName+"]"}},"XPathRuleAnywhereElement"),Qe),rc=(Je=class extends sc{constructor(t,e){super(t),(0,js.Z)(this,"ruleIndex",void 0),this.ruleIndex=e}evaluate(t){const e=[];for(const s of pa.getChildren(t))s instanceof ga&&(s.ruleIndex===this.ruleIndex&&!this.invert||s.ruleIndex!==this.ruleIndex&&this.invert)&&e.push(s);return e}toString(){return"XPathRuleElement["+(this.invert?"!":"")+this.nodeName+"]"}},Ea(Je,"XPathRuleElement"),Je),ic=(Ea(Ze=class extends sc{constructor(t,e){super(t),(0,js.Z)(this,"tokenType",void 0),this.tokenType=e}evaluate(t){return pa.findAllTokenNodes(t,this.tokenType)}toString(){return"XPathTokenAnywhereElement["+(this.invert?"!":"")+this.nodeName+"]"}},"XPathTokenAnywhereElement"),Ze),cc=(qe=class extends sc{constructor(t,e){super(t),(0,js.Z)(this,"tokenType",void 0),this.tokenType=e}evaluate(t){const e=[];for(const s of pa.getChildren(t))s instanceof ma&&s.symbol&&(s.symbol.type===this.tokenType&&!this.invert||s.symbol.type!==this.tokenType&&this.invert)&&e.push(s);return e}toString(){return"XPathTokenElement["+(this.invert?"!":"")+this.nodeName+"]"}},Ea(qe,"XPathTokenElement"),qe),nc=(Ea(je=class extends sc{constructor(){super(Ec.WILDCARD)}evaluate(t){return this.invert?[]:pa.descendants(t)}toString(){return"XPathWildcardAnywhereElement["+(this.invert?"!":"")+this.nodeName+"]"}},"XPathWildcardAnywhereElement"),je),hc=(ze=class extends sc{constructor(){super(Ec.WILDCARD)}evaluate(t){const e=[];if(this.invert)return e;for(const s of pa.getChildren(t))e.push(s);return e}toString(){return"XPathWildcardElement["+(this.invert?"!":"")+this.nodeName+"]"}},Ea(ze,"XPathWildcardElement"),ze),Ec=($e=class t{constructor(t,e){(0,js.Z)(this,"path",void 0),(0,js.Z)(this,"elements",void 0),(0,js.Z)(this,"parser",void 0),this.parser=t,this.path=e,this.elements=this.split(e)}static findAll(e,s,a){return new t(a,s).evaluate(e)}split(t){const e=new tc(Oi.fromString(t));e.recover=t=>{throw t},e.removeErrorListeners(),e.addErrorListener(new ec);const s=new $i(e);try{s.fill()}catch(n){if(n instanceof zr){const s="Invalid tokens or characters at index "+e.column+" in path '"+t+"' -- "+n.message;throw new RangeError(s)}throw n}const a=s.getTokens(),r=[],i=a.length;let c=0;t:for(;c0){this.elements[a].evaluate(e).forEach((e=>{t.add(e)}),t)}a++,s=t}return s}getXPathElement(t,e){if(t.type===ca.EOF)throw new Error("Missing path element at end of path");const s=t.text;if(null==s)throw new Error("Expected wordToken to have text content.");const a=this.parser.getTokenType(s),r=this.parser.getRuleIndex(s);switch(t.type){case tc.WILDCARD:return e?new nc:new hc;case tc.TOKEN_REF:case tc.STRING:if(a===ca.INVALID_TYPE)throw new Error(s+" at index "+t.start+" isn't a valid token name");return e?new ic(s,a):new cc(s,a);default:if(-1===r)throw new Error(s+" at index "+t.start+" isn't a valid rule name");return e?new ac(s,r):new rc(s,r)}}},Ea($e,"XPath"),(0,js.Z)($e,"WILDCARD","*"),(0,js.Z)($e,"NOT","!"),$e),Tc=(Ea(ts=class{},"Chunk"),ts),oc=(Ea(es=class{constructor(t,e,s,a){(0,js.Z)(this,"tree",void 0),(0,js.Z)(this,"pattern",void 0),(0,js.Z)(this,"labels",void 0),(0,js.Z)(this,"mismatchedNode",void 0),this.tree=t,this.pattern=e,this.labels=s,this.mismatchedNode=a}get(t){const e=this.labels.get(t);return e&&0!==e.length?e[e.length-1]:null}getAll(t){const e=this.labels.get(t);return null!==e&&void 0!==e?e:[]}getLabels(){return this.labels}getMismatchedNode(){return this.mismatchedNode}succeeded(){return!this.mismatchedNode}getPattern(){return this.pattern}getTree(){return this.tree}toString(){return"Match ".concat(this.succeeded()?"succeeded":"failed","; found ").concat(this.getLabels().size," labels")}},"ParseTreeMatch"),es),Rc=(Ea(ss=class{constructor(t,e,s,a){(0,js.Z)(this,"patternRuleIndex",void 0),(0,js.Z)(this,"pattern",void 0),(0,js.Z)(this,"patternTree",void 0),(0,js.Z)(this,"matcher",void 0),this.matcher=t,this.patternRuleIndex=s,this.pattern=e,this.patternTree=a}match(t){return this.matcher.match(t,this)}matches(t){return this.matcher.match(t,this).succeeded()}findAll(t,e){const s=Ec.findAll(t,e,this.matcher.getParser()),a=new Array;for(const r of s){const t=this.match(r);t.succeeded()&&a.push(t)}return a}getMatcher(){return this.matcher}getPattern(){return this.pattern}getPatternRuleIndex(){return this.patternRuleIndex}getPatternTree(){return this.patternTree}},"ParseTreePattern"),ss),Ac=(Ea(as=class extends jr{constructor(t){super({message:"",recognizer:t,input:t.inputStream,ctx:t.context}),this.offendingToken=t.getCurrentToken()}},"InputMismatchException"),as),Sc=(Ea(rs=class extends jr{constructor(t,e){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;super({message:lc(null!==e&&void 0!==e?e:"no predicate",null!==s&&void 0!==s?s:null),recognizer:t,input:t.inputStream,ctx:t.context}),(0,js.Z)(this,"ruleIndex",0),(0,js.Z)(this,"predicateIndex",0),(0,js.Z)(this,"predicate",void 0);const a=t.atn.states[t.state].transitions[0];a instanceof Cr?(this.ruleIndex=a.ruleIndex,this.predicateIndex=a.predIndex):(this.ruleIndex=0,this.predicateIndex=0),this.predicate=e,this.offendingToken=t.getCurrentToken()}},"FailedPredicateException"),rs),lc=Ea(((t,e)=>null!==e?e:"failed predicate: {"+t+"}?"),"formatMessage"),Oc=(is=class{constructor(){(0,js.Z)(this,"errorRecoveryMode",!1),(0,js.Z)(this,"lastErrorIndex",-1),(0,js.Z)(this,"lastErrorStates",new Sa),(0,js.Z)(this,"nextTokensContext",null),(0,js.Z)(this,"nextTokenState",0)}reset(t){this.endErrorCondition(t)}beginErrorCondition(t){this.errorRecoveryMode=!0}inErrorRecoveryMode(t){return this.errorRecoveryMode}endErrorCondition(t){this.errorRecoveryMode=!1,this.lastErrorStates=new Sa,this.lastErrorIndex=-1}reportMatch(t){this.endErrorCondition(t)}reportError(t,e){this.inErrorRecoveryMode(t)||(this.beginErrorCondition(t),e instanceof Ei?this.reportNoViableAlternative(t,e):e instanceof Ac?this.reportInputMismatch(t,e):e instanceof Sc?this.reportFailedPredicate(t,e):t.notifyErrorListeners(e.message,e.offendingToken,e))}recover(t,e){var s,a,r;this.lastErrorIndex===(null===(s=t.inputStream)||void 0===s?void 0:s.index)&&this.lastErrorStates.contains(t.state)&&t.consume(),this.lastErrorIndex=null!==(a=null===(r=t.inputStream)||void 0===r?void 0:r.index)&&void 0!==a?a:0,this.lastErrorStates.addOne(t.state);const i=this.getErrorRecoverySet(t);this.consumeUntil(t,i)}sync(t){if(this.inErrorRecoveryMode(t))return;const e=t.atn.states[t.state],s=t.tokenStream.LA(1),a=t.atn.nextTokens(e);if(a.contains(s))return this.nextTokensContext=null,void(this.nextTokenState=Va.INVALID_STATE_NUMBER);if(a.contains(ca.EPSILON))null===this.nextTokensContext&&(this.nextTokensContext=t.context,this.nextTokenState=t.state);else switch(e.constructor.stateType){case Va.BLOCK_START:case Va.STAR_BLOCK_START:case Va.PLUS_BLOCK_START:case Va.STAR_LOOP_ENTRY:if(null!==this.singleTokenDeletion(t))return;throw new Ac(t);case Va.PLUS_LOOP_BACK:case Va.STAR_LOOP_BACK:{this.reportUnwantedToken(t);const e=new Sa;e.addSet(t.getExpectedTokens());const s=e.addSet(this.getErrorRecoverySet(t));this.consumeUntil(t,s);break}}}reportNoViableAlternative(t,e){if(e.message.length>0)return void t.notifyErrorListeners(e.message,e.offendingToken,e);const s=t.tokenStream;let a;a=null!==s&&e.startToken?e.startToken.type===ca.EOF?"":s.getTextFromRange(e.startToken,e.offendingToken):"";const r="no viable alternative at input "+this.escapeWSAndQuote(a);t.notifyErrorListeners(r,e.offendingToken,e)}reportInputMismatch(t,e){if(e.message.length>0)return void t.notifyErrorListeners(e.message,e.offendingToken,e);const s="mismatched input "+this.getTokenErrorDisplay(e.offendingToken)+" expecting "+e.getExpectedTokens().toStringWithVocabulary(t.vocabulary);t.notifyErrorListeners(s,e.offendingToken,e)}reportFailedPredicate(t,e){const s="rule "+t.ruleNames[t.context.ruleIndex]+" "+e.message;t.notifyErrorListeners(s,e.offendingToken,e)}reportUnwantedToken(t){if(this.inErrorRecoveryMode(t))return;this.beginErrorCondition(t);const e=t.getCurrentToken(),s="extraneous input "+this.getTokenErrorDisplay(e)+" expecting "+this.getExpectedTokens(t).toStringWithVocabulary(t.vocabulary);t.notifyErrorListeners(s,e,null)}reportMissingToken(t){if(this.inErrorRecoveryMode(t))return;this.beginErrorCondition(t);const e=t.getCurrentToken(),s="missing "+this.getExpectedTokens(t).toStringWithVocabulary(t.vocabulary)+" at "+this.getTokenErrorDisplay(e);t.notifyErrorListeners(s,e,null)}recoverInline(t){const e=this.singleTokenDeletion(t);if(e)return t.consume(),e;if(this.singleTokenInsertion(t))return this.getMissingSymbol(t);throw new Ac(t)}singleTokenInsertion(t){var e,s,a;const r=null!==(e=null===(s=t.tokenStream)||void 0===s?void 0:s.LA(1))&&void 0!==e?e:-1,i=t.atn,c=i.states[t.state].transitions[0].target;return!!i.nextTokens(c,null!==(a=t.context)&&void 0!==a?a:void 0).contains(r)&&(this.reportMissingToken(t),!0)}singleTokenDeletion(t){var e,s;const a=null!==(e=null===(s=t.tokenStream)||void 0===s?void 0:s.LA(2))&&void 0!==e?e:-1;if(this.getExpectedTokens(t).contains(a)){this.reportUnwantedToken(t),t.consume();const e=t.getCurrentToken();return this.reportMatch(t),e}return null}getMissingSymbol(t){var e;const s=t.getCurrentToken(),a=this.getExpectedTokens(t);let r,i=ca.INVALID_TYPE;0!==a.length&&(i=a.minElement),r=i===ca.EOF?"":"";let c=s;const n=null===(e=t.tokenStream)||void 0===e?void 0:e.LT(-1);return c.type===ca.EOF&&null!==n&&(c=n),t.getTokenFactory().create(c.source,i,r,ca.DEFAULT_CHANNEL,-1,-1,c.line,c.column)}getExpectedTokens(t){return t.getExpectedTokens()}getTokenErrorDisplay(t){if(null===t)return"";let e=t.text;return e||(e=t.type===ca.EOF?"":"<"+t.type+">"),this.escapeWSAndQuote(e)}escapeWSAndQuote(t){return"'"+(t=(t=(t=t.replace(/\n/g,"\\n")).replace(/\r/g,"\\r")).replace(/\t/g,"\\t"))+"'"}getErrorRecoverySet(t){const e=t.atn;let s=t.context;const a=new Sa;for(;null!==s&&s.invokingState>=0;){const t=e.states[s.invokingState].transitions[0],r=e.nextTokens(t.followState);a.addSet(r),s=s.parent}return a.removeOne(ca.EPSILON),a}consumeUntil(t,e){var s,a;let r=null!==(s=null===(a=t.tokenStream)||void 0===a?void 0:a.LA(1))&&void 0!==s?s:-1;for(;r!==ca.EOF&&!e.contains(r);){var i,c;t.consume(),r=null!==(i=null===(c=t.tokenStream)||void 0===c?void 0:c.LA(1))&&void 0!==i?i:-1}}},Ea(is,"DefaultErrorStrategy"),is),Ic=(Ea(cs=class extends Oc{recover(t,e){throw new ti(e)}recoverInline(t){const e=new Ac(t);throw new ti(e)}sync(t){}},"BailErrorStrategy"),cs),uc=(Ea(ns=class{constructor(t,e){(0,js.Z)(this,"sourceName",void 0),(0,js.Z)(this,"tokenFactory",qr.DEFAULT),(0,js.Z)(this,"tokens",void 0),(0,js.Z)(this,"i",void 0),(0,js.Z)(this,"eofToken",void 0),this.tokens=t,this.sourceName=null!==e&&void 0!==e?e:""}get column(){if(this.i0){const t=this.tokens[this.tokens.length-1],e=t.text;if(e){const t=e.lastIndexOf("\n");if(t>=0)return e.length-t-1}return t.column+t.stop-t.start+1}return 0}nextToken(){if(this.i>=this.tokens.length){if(null===this.eofToken){let t=-1;if(this.tokens.length>0){const e=this.tokens[this.tokens.length-1].stop;-1!==e&&(t=e+1)}const e=Math.max(-1,t-1);this.eofToken=this.tokenFactory.create([this,this.inputStream],ca.EOF,"EOF",ca.DEFAULT_CHANNEL,t,e,this.line,this.column)}return this.eofToken}const t=this.tokens[this.i];return this.i===this.tokens.length-1&&t.type===ca.EOF&&(this.eofToken=t),this.i++,t}get line(){if(this.i0){const t=this.tokens[this.tokens.length-1];let e=t.line;const s=t.text;if(s)for(const a of s)"\n"===a&&e++;return e}return 1}get inputStream(){return this.i0?this.tokens[this.tokens.length-1].inputStream:null}getSourceName(){if(null!==this.sourceName)return this.sourceName;const t=this.inputStream;return null!==t?t.getSourceName():"List"}},"ListTokenSource"),ns),Nc=(Es=new WeakMap,Ea(hs=class extends ga{constructor(t,e,s){super(e,s),r(this,Es,{writable:!0,value:void 0}),$s(this,Es,t)}get ruleIndex(){return ea(this,Es)}},"InterpreterRuleContext"),hs),Lc=(Ea(Ts=class{constructor(t){(0,js.Z)(this,"parser",void 0),this.parser=t}enterEveryRule(t){var e,s;console.log("enter "+this.parser.ruleNames[t.ruleIndex]+", LT(1)="+(null===(e=this.parser.inputStream)||void 0===e||null===(s=e.LT(1))||void 0===s?void 0:s.text))}visitTerminal(t){console.log("consume "+t.getSymbol()+" rule "+this.parser.ruleNames[this.parser.context.ruleIndex])}exitEveryRule(t){var e,s;console.log("exit "+this.parser.ruleNames[t.ruleIndex]+", LT(1)="+(null===(e=this.parser.inputStream)||void 0===e||null===(s=e.LT(1))||void 0===s?void 0:s.text))}visitErrorNode(t){}},"TraceListener"),Ts),Cc=(Rs=new WeakMap,As=new WeakMap,Ss=new WeakMap,os=class extends Jr{constructor(t){super(),(0,js.Z)(this,"printer",null),(0,js.Z)(this,"buildParseTrees",!0),(0,js.Z)(this,"errorHandler",new Oc),(0,js.Z)(this,"context",null),(0,js.Z)(this,"precedenceStack",[]),(0,js.Z)(this,"parseListeners",null),(0,js.Z)(this,"syntaxErrors",0),(0,js.Z)(this,"matchedEOF",!1),r(this,Rs,{writable:!0,value:null}),r(this,As,{writable:!0,value:null}),r(this,Ss,{writable:!0,value:void 0}),this.precedenceStack.push(0),this.syntaxErrors=0,$s(this,Ss,t)}reset(){(!(arguments.length>0&&void 0!==arguments[0])||arguments[0])&&this.inputStream.seek(0),this.errorHandler.reset(this),this.context=null,this.syntaxErrors=0,this.setTrace(!1),this.precedenceStack=[],this.precedenceStack.push(0),this.interpreter&&this.interpreter.reset()}match(t){let e=this.getCurrentToken();return e.type===t?(this.errorHandler.reportMatch(this),this.consume()):(e=this.errorHandler.recoverInline(this),this.buildParseTrees&&-1===e.tokenIndex&&this.context.addErrorNode(this.createErrorNode(this.context,e))),e}matchWildcard(){let t=this.getCurrentToken();return t.type>0?(this.errorHandler.reportMatch(this),this.consume()):(t=this.errorHandler.recoverInline(this),this.buildParseTrees&&-1===t.tokenIndex&&this.context.addErrorNode(this.createErrorNode(this.context,t))),t}getParseListeners(){var t;return null!==(t=this.parseListeners)&&void 0!==t?t:[]}addParseListener(t){if(null===t)throw new Error("listener");null===this.parseListeners&&(this.parseListeners=[]),this.parseListeners.push(t)}removeParseListener(t){if(null!==this.parseListeners&&null!==t){const e=this.parseListeners.indexOf(t);e>=0&&this.parseListeners.splice(e,1),0===this.parseListeners.length&&(this.parseListeners=null)}}removeParseListeners(){this.parseListeners=null}triggerEnterRuleEvent(){if(null!==this.parseListeners){const t=this.context;this.parseListeners.forEach((e=>{e.enterEveryRule(t),t.enterRule(e)}))}}triggerExitRuleEvent(){if(null!==this.parseListeners){const t=this.context;this.parseListeners.slice(0).reverse().forEach((e=>{t.exitRule(e),e.exitEveryRule(t)}))}}getTokenFactory(){return this.inputStream.tokenSource.tokenFactory}setTokenFactory(t){this.inputStream.tokenSource.tokenFactory=t}compileParseTreePattern(t,e,s){if(!s&&null!==this.tokenStream){const t=this.tokenStream.tokenSource;t instanceof $r&&(s=t)}if(!s)throw new Error("Parser can't discover a lexer to use");return new Dc(s,this).compile(t,e)}getATNWithBypassAlts(){const t=this.getSerializedATN();if(null===t)throw new Error("The current parser does not support an ATN with bypass alternatives.");if(null!==ea(this,As))return ea(this,As);return $s(this,As,new fr({readOnly:!1,verifyATN:!0,generateRuleBypassTransitions:!0}).deserialize(t)),ea(this,As)}get numberOfSyntaxErrors(){return this.syntaxErrors}get inputStream(){return ea(this,Ss)}set inputStream(t){this.tokenStream=t}get tokenStream(){return ea(this,Ss)}set tokenStream(t){this.reset(!1),$s(this,Ss,t)}getCurrentToken(){return this.inputStream.LT(1)}notifyErrorListeners(t,e,s){var a,r;s=null!==(r=s)&&void 0!==r?r:null,null===(e=null!==(a=e)&&void 0!==a?a:null)&&(e=this.getCurrentToken()),this.syntaxErrors+=1;const i=e.line,c=e.column;this.errorListenerDispatch.syntaxError(this,e,i,c,t,s)}consume(){const t=this.getCurrentToken();t.type!==ca.EOF&&this.tokenStream.consume();const e=null!==this.parseListeners&&this.parseListeners.length>0;if(this.buildParseTrees||e){let s;s=this.errorHandler.inErrorRecoveryMode(this)?this.context.addErrorNode(this.createErrorNode(this.context,t)):this.context.addTokenNode(t),e&&this.parseListeners.forEach((t=>{s instanceof Da?t.visitErrorNode(s):t.visitTerminal(s)}))}return t}addContextToParseTree(){var t;null!==(null===(t=this.context)||void 0===t?void 0:t.parent)&&this.context.parent.addChild(this.context)}enterRule(t,e,s){this.state=e,this.context=t,this.context.start=this.inputStream.LT(1),this.buildParseTrees&&this.addContextToParseTree(),this.triggerEnterRuleEvent()}exitRule(){this.context.stop=this.inputStream.LT(-1),this.triggerExitRuleEvent(),this.state=this.context.invokingState,this.context=this.context.parent}enterOuterAlt(t,e){t.setAltNumber(e),this.buildParseTrees&&this.context!==t&&null!==this.context.parent&&(this.context.parent.removeLastChild(),this.context.parent.addChild(t)),this.context=t}getPrecedence(){return 0===this.precedenceStack.length?-1:this.precedenceStack[this.precedenceStack.length-1]}enterRecursionRule(t,e,s,a){this.state=e,this.precedenceStack.push(a),this.context=t,this.context.start=this.inputStream.LT(1),this.triggerEnterRuleEvent()}pushNewRecursionContext(t,e,s){const a=this.context;a.parent=t,a.invokingState=e,a.stop=this.inputStream.LT(-1),this.context=t,this.context.start=a.start,this.buildParseTrees&&this.context.addChild(a),this.triggerEnterRuleEvent()}unrollRecursionContexts(t){this.precedenceStack.pop(),this.context.stop=this.inputStream.LT(-1);const e=this.context,s=this.getParseListeners();if(null!==s&&s.length>0)for(;this.context!==t;)this.triggerExitRuleEvent(),this.context=this.context.parent;else this.context=t;e.parent=t,this.buildParseTrees&&null!==t&&t.addChild(e)}getInvokingContext(t){let e=this.context;for(;null!==e;){if(e.ruleIndex===t)return e;e=e.parent}return null}precpred(t,e){return e>=this.precedenceStack[this.precedenceStack.length-1]}inContext(t){return!1}isExpectedToken(t){const e=this.interpreter.atn;let s=this.context;const a=e.states[this.state];let r=e.nextTokens(a);if(r.contains(t))return!0;if(!r.contains(ca.EPSILON))return!1;for(;null!==s&&s.invokingState>=0&&r.contains(ca.EPSILON);){const a=e.states[s.invokingState].transitions[0];if(r=e.nextTokens(a.followState),r.contains(t))return!0;s=s.parent}return!(!r.contains(ca.EPSILON)||t!==ca.EOF)}getExpectedTokens(){return this.interpreter.atn.getExpectedTokens(this.state,this.context)}getExpectedTokensWithinCurrentRule(){const t=this.interpreter.atn,e=t.states[this.state];return t.nextTokens(e)}getRuleIndex(t){var e;return null!==(e=this.getRuleIndexMap().get(t))&&void 0!==e?e:-1}getRuleInvocationStack(t){var e;null===(t=null!==(e=t)&&void 0!==e?e:null)&&(t=this.context);const s=[];for(;null!==t;){const e=t.ruleIndex;e<0?s.push("n/a"):s.push(this.ruleNames[e]),t=t.parent}return s}getDFAStrings(){return this.interpreter.decisionToDFA.toString()}dumpDFA(){let t=!1;for(const e of this.interpreter.decisionToDFA)e.length>0&&(t&&console.log(),this.printer&&(this.printer.println("Decision "+e.decision+":"),this.printer.print(e.toString(this.vocabulary))),t=!0)}getSourceName(){return this.inputStream.getSourceName()}setProfile(t){const e=this.interpreter,s=e.predictionMode;if(t)e instanceof li||(this.interpreter=new li(this));else if(e instanceof li){const t=e.sharedContextCache;if(t){const s=new Ai(this,this.atn,e.decisionToDFA,t);this.interpreter=s}}this.interpreter.predictionMode=s}setTrace(t){t?(null!==ea(this,Rs)&&this.removeParseListener(ea(this,Rs)),$s(this,Rs,new Lc(this)),this.addParseListener(ea(this,Rs))):(this.removeParseListener(ea(this,Rs)),$s(this,Rs,null))}createTerminalNode(t,e){return new ma(e)}createErrorNode(t,e){return new Da(e)}},Ea(os,"Parser"),os),_c=(Os=new WeakMap,Is=new WeakMap,us=new WeakMap,Ns=new WeakMap,Ls=new WeakMap,Cs=new WeakMap,_s=new WeakMap,Ps=new WeakMap,Ms=new WeakMap,ds=new WeakMap,Us=new WeakMap,ms=new WeakMap,ls=class extends Cc{constructor(t,e,s,a,i){super(i),(0,js.Z)(this,"rootContext",void 0),(0,js.Z)(this,"parentContextStack",[]),r(this,Os,{writable:!0,value:-1}),r(this,Is,{writable:!0,value:-1}),r(this,us,{writable:!0,value:-1}),r(this,Ns,{writable:!0,value:!1}),r(this,Ls,{writable:!0,value:null}),r(this,Cs,{writable:!0,value:void 0}),r(this,_s,{writable:!0,value:void 0}),r(this,Ps,{writable:!0,value:void 0}),r(this,Ms,{writable:!0,value:void 0}),r(this,ds,{writable:!0,value:void 0}),r(this,Us,{writable:!0,value:new Si}),r(this,ms,{writable:!0,value:void 0}),$s(this,Cs,t),$s(this,_s,a),$s(this,Ps,s.slice(0)),$s(this,Ms,e),$s(this,ms,new Wa);for(const r of a.states)r instanceof Tr&&r.precedenceRuleDecision&&ea(this,ms).set(r.stateNumber);$s(this,ds,a.decisionToState.map(((t,e)=>new ni(t,e)))),this.interpreter=new Ai(this,a,ea(this,ds),ea(this,Us))}reset(){super.reset(),$s(this,Ns,!1),$s(this,Ls,null)}get atn(){return ea(this,_s)}get vocabulary(){return ea(this,Ms)}get ruleNames(){return ea(this,Ps)}get grammarFileName(){return ea(this,Cs)}get atnState(){return ea(this,_s).states[this.state]}parse(t){var e;const s=ea(this,_s).ruleToStartState[t];for(this.rootContext=this.createInterpreterRuleContext(null,Va.INVALID_STATE_NUMBER,t),s.isPrecedenceRule?this.enterRecursionRule(this.rootContext,s.stateNumber,t,0):this.enterRule(this.rootContext,s.stateNumber,t);;){const t=this.atnState;if(t.constructor.stateType===Va.RULE_STOP){if(null!==(e=this.context)&&void 0!==e&&e.isEmpty){if(s.isPrecedenceRule){const t=this.context,e=this.parentContextStack.pop();return this.unrollRecursionContexts(e[0]),t}return this.exitRule(),this.rootContext}this.visitRuleStopState(t)}else try{this.visitState(t)}catch(a){if(!(a instanceof jr))throw a;this.state=ea(this,_s).ruleToStopState[t.ruleIndex].stateNumber,this.errorHandler.reportError(this,a),this.recover(a)}}}addDecisionOverride(t,e,s){$s(this,Os,t),$s(this,Is,e),$s(this,us,s)}get overrideDecisionRoot(){return ea(this,Ls)}enterRecursionRule(t,e,s,a){this.parentContextStack.push([this.context,t.invokingState]),super.enterRecursionRule(t,e,s,a)}visitState(t){let e=1;t instanceof er&&(e=this.visitDecisionState(t));const s=t.transitions[e-1];switch(s.transitionType){case la.EPSILON:if(ea(this,ms).get(t.stateNumber)&&s.target.constructor.stateType!==Va.LOOP_END){const e=this.parentContextStack[this.parentContextStack.length-1],s=this.createInterpreterRuleContext(e[0],e[1],this.context.ruleIndex);this.pushNewRecursionContext(s,ea(this,_s).ruleToStartState[t.ruleIndex].stateNumber,this.context.ruleIndex)}break;case la.ATOM:this.match(s.label.minElement);break;case la.RANGE:case la.SET:case la.NOT_SET:s.matches(this.inputStream.LA(1),ca.MIN_USER_TOKEN_TYPE,65535)||this.recoverInline(),this.matchWildcard();break;case la.WILDCARD:this.matchWildcard();break;case la.RULE:const e=s.target,a=e.ruleIndex,r=this.createInterpreterRuleContext(this.context,t.stateNumber,a);e.isPrecedenceRule?this.enterRecursionRule(r,e.stateNumber,a,s.precedence):this.enterRule(r,s.target.stateNumber,a);break;case la.PREDICATE:const i=s;if(!this.sempred(this.context,i.ruleIndex,i.predIndex))throw new Sc(this);break;case la.ACTION:const c=s;this.action(this.context,c.ruleIndex,c.actionIndex);break;case la.PRECEDENCE:if(!this.precpred(this.context,s.precedence)){const t=s.precedence;throw new Sc(this,"precpred(_ctx, ".concat(t,")"))}break;default:throw new Error("UnsupportedOperationException: Unrecognized ATN transition type.")}this.state=s.target.stateNumber}visitDecisionState(t){let e=1;if(t.transitions.length>1){this.errorHandler.sync(this);const s=t.decision;s!==ea(this,Os)||this.inputStream.index!==ea(this,Is)||ea(this,Ns)?e=this.interpreter.adaptivePredict(this.inputStream,s,this.context):(e=ea(this,us),$s(this,Ns,!0))}return e}createInterpreterRuleContext(t,e,s){return new Nc(s,t,e)}visitRuleStopState(t){if(ea(this,_s).ruleToStartState[t.ruleIndex].isPrecedenceRule){const[t,e]=this.parentContextStack.pop();this.unrollRecursionContexts(t),this.state=e}else this.exitRule();const e=ea(this,_s).states[this.state].transitions[0];this.state=e.followState.stateNumber}recover(t){const e=this.inputStream.index;if(this.errorHandler.recover(this,t),this.inputStream.index===e){var s;const e=t.offendingToken;if(!e)throw new Error("Expected exception to have an offending token");const a=e.tokenSource,r=[a,null!==(s=null===a||void 0===a?void 0:a.inputStream)&&void 0!==s?s:null];if(t instanceof Ac){const s=t.getExpectedTokens();if(!s)throw new Error("Expected the exception to provide expected tokens");let a=ca.INVALID_TYPE;0!==s.length&&(a=s.minElement);const i=this.getTokenFactory().create(r,a,e.text,ca.DEFAULT_CHANNEL,-1,-1,e.line,e.column);this.context.addErrorNode(this.createErrorNode(this.context,i))}else{const t=this.getTokenFactory().create(r,ca.INVALID_TYPE,e.text,ca.DEFAULT_CHANNEL,-1,-1,e.line,e.column);this.context.addErrorNode(this.createErrorNode(this.context,t))}}}recoverInline(){return this.errorHandler.recoverInline(this)}},Ea(ls,"ParserInterpreter"),ls),Pc=(Ds=class extends Map{map(t,e){let s=this.get(t);s||(s=new Array,this.set(t,s)),s.push(e)}getPairs(){const t=new Array;for(const s of this.keys()){var e;const a=null!==(e=this.get(s))&&void 0!==e?e:[];for(const e of a)t.push([s,e])}return t}},Ea(Ds,"MultiMap"),Ds),Mc=(Ea(ps=class{constructor(t,e,s){(0,js.Z)(this,"label",void 0),(0,js.Z)(this,"ruleName",void 0),(0,js.Z)(this,"bypassTokenType",void 0),this.ruleName=t,this.bypassTokenType=e,this.label=s}get channel(){return ca.DEFAULT_CHANNEL}get text(){return null!==this.label?"<"+this.label+":"+this.ruleName+">":"<"+this.ruleName+">"}get type(){return this.bypassTokenType}get line(){return 0}get column(){return-1}get tokenIndex(){return-1}get start(){return-1}get stop(){return-1}get tokenSource(){return null}get inputStream(){return null}toString(){return this.ruleName+":"+this.bypassTokenType}},"RuleTagToken"),ps),dc=(Ea(gs=class extends Tc{constructor(){let t,e;if(1===arguments.length?e=arguments.length<=0?void 0:arguments[0]:(t=arguments.length<=0?void 0:arguments[0],e=arguments.length<=1?void 0:arguments[1]),super(),(0,js.Z)(this,"tag",void 0),(0,js.Z)(this,"label",void 0),!e)throw new Error("tag cannot be null or empty");this.label=t,this.tag=e}toString(){return null!==this.label?this.label+":"+this.tag:this.tag}},"TagChunk"),gs),Uc=(Ea(xs=class extends Tc{constructor(t){super(),(0,js.Z)(this,"text",void 0),this.text=t}toString(){return"'"+this.text+"'"}},"TextChunk"),xs),mc=(Ea(ks=class extends Zr{constructor(t,e,s){super({type:e,source:Zr.EMPTY_SOURCE}),(0,js.Z)(this,"tokenName",void 0),(0,js.Z)(this,"label",void 0),this.tokenName=t,this.label=s}get text(){return null!==this.label?"<"+this.label+":"+this.tokenName+">":"<"+this.tokenName+">"}toString(){return this.tokenName+":"+this.type}},"TokenTagToken"),ks),Dc=(Hs=class t{constructor(t,e){(0,js.Z)(this,"start","<"),(0,js.Z)(this,"stop",">"),(0,js.Z)(this,"escape","\\"),(0,js.Z)(this,"lexer",void 0),(0,js.Z)(this,"parser",void 0),this.lexer=t,this.parser=e}setDelimiters(t,e,s){if(null===t||0===t.length)throw new Error("start cannot be null or empty");if(null===e||0===e.length)throw new Error("stop cannot be null or empty");this.start=t,this.stop=e,this.escape=s}matches(){for(var t=arguments.length,e=new Array(t),s=0;si.length)throw new Error("unterminated tag in pattern: "+t);if(r.length=i[n])throw new Error("tag delimiters out of order in pattern: "+t);if(0===c){const e=t.substring(0,s);a.push(new Uc(e))}if(c>0&&r[0]>0){const e=t.substring(0,r[0]);a.push(new Uc(e))}for(let n=0;n=0&&(s=e.substring(0,E),h=e.substring(E+1,e.length)),a.push(new dc(s,h)),n+10){const e=i[c-1]+this.stop.length;if(e{var n;if(this.exactOnly&&!r)return;const h=this.getDecisionDescription(t,e),E=this.getConflictingAlts(i,c),T=null===(n=t.tokenStream)||void 0===n?void 0:n.getTextFromInterval(oa.of(s,a)),o="reportAmbiguity d=".concat(h,": ambigAlts=").concat(E,", input='").concat(T,"'");t.notifyErrorListeners(o,null,null)})),(0,js.Z)(this,"reportAttemptingFullContext",((t,e,s,a,r,i)=>{var c;const n=this.getDecisionDescription(t,e),h=null===(c=t.tokenStream)||void 0===c?void 0:c.getTextFromInterval(oa.of(s,a)),E="reportAttemptingFullContext d=".concat(n,", input='").concat(h,"'");t.notifyErrorListeners(E,null,null)})),(0,js.Z)(this,"reportContextSensitivity",((t,e,s,a,r,i)=>{var c;const n=this.getDecisionDescription(t,e),h=null===(c=t.tokenStream)||void 0===c?void 0:c.getTextFromInterval(oa.of(s,a)),E="reportContextSensitivity d=".concat(n,", input='").concat(h,"'");t.notifyErrorListeners(E,null,null)})),(0,js.Z)(this,"getDecisionDescription",((t,e)=>{const s=e.decision,a=e.atnStartState.ruleIndex,r=t.ruleNames;if(a<0||a>=r.length)return s.toString();const i=r[a];return 0===i.length?s.toString():"".concat(s," (").concat(i,")")})),(0,js.Z)(this,"getConflictingAlts",((t,e)=>{if(t)return t;const s=new Wa;for(let a=0;anew ni(t,e)))),this.interpreter=new hi(this,c,ea(this,Vs),ea(this,Xs))}get atn(){return ea(this,fs)}get grammarFileName(){return ea(this,ys)}get ruleNames(){return ea(this,Ys)}get channelNames(){return ea(this,ws)}get modeNames(){return ea(this,bs)}get vocabulary(){return ea(this,Ws)}},Ea(Bs,"LexerInterpreter"),Ks=class t{constructor(t){(0,js.Z)(this,"tokens",void 0),(0,js.Z)(this,"programs",new Map),(0,js.Z)(this,"lastRewriteTokenIndexes",void 0),this.tokens=t}getTokenStream(){return this.tokens}insertAfter(e,s){let a,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.DEFAULT_PROGRAM_NAME;a="number"===typeof e?e:e.tokenIndex;const i=this.getProgram(r),c=new xc(this.tokens,a,i.length,s);i.push(c)}insertBefore(e,s){let a,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.DEFAULT_PROGRAM_NAME;a="number"===typeof e?e:e.tokenIndex;const i=this.getProgram(r),c=new gc(this.tokens,a,i.length,s);i.push(c)}replaceSingle(e,s){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.DEFAULT_PROGRAM_NAME;this.replace(e,e,s,a)}replace(e,s,a){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:t.DEFAULT_PROGRAM_NAME;if("number"!==typeof e&&(e=e.tokenIndex),"number"!==typeof s&&(s=s.tokenIndex),e>s||e<0||s<0||s>=this.tokens.size)throw new RangeError("replace: range invalid: ".concat(e,"..").concat(s,"(size=").concat(this.tokens.size,")"));const i=this.getProgram(r),c=new kc(this.tokens,e,s,i.length,a);i.push(c)}delete(e,s){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.DEFAULT_PROGRAM_NAME;null==s&&(s=e),this.replace(e,s,null,a)}getProgram(t){let e=this.programs.get(t);return null==e&&(e=this.initializeProgram(t)),e}initializeProgram(t){const e=[];return this.programs.set(t,e),e}getText(e){let s,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t.DEFAULT_PROGRAM_NAME;s=e instanceof oa?e:new oa(0,this.tokens.size-1),"string"===typeof e&&(a=e);const r=this.programs.get(a);let i=s.start,c=s.stop;if(c>this.tokens.size-1&&(c=this.tokens.size-1),i<0&&(i=0),null==r||0===r.length)return this.tokens.getTextFromInterval(new oa(i,c));const n=[],h=this.reduceToSingleOperationPerIndex(r);let E=i;for(;E<=c&&E=this.tokens.size-1&&n.push(String(t.text));return n.join("")}reduceToSingleOperationPerIndex(t){for(let s=0;sa.index&&s.index<=a.lastIndex&&(t[s.instructionIndex]=null);const i=this.getKindOfOps(t,kc,s);for(const s of i){if(s.index>=a.index&&s.lastIndex<=a.lastIndex){t[s.instructionIndex]=null;continue}const e=s.lastIndexa.lastIndex;if(null!=s.text||null!=a.text||e){if(!e)throw new Error("replace op boundaries of ".concat(a," overlap with previous ").concat(s))}else t[s.instructionIndex]=null,a.index=Math.min(s.index,a.index),a.lastIndex=Math.max(s.lastIndex,a.lastIndex)}}for(let s=0;s=c.index&&a.index<=c.lastIndex)throw new Error("insert op ".concat(a," within boundaries of previous ").concat(c))}else c.text=this.catOpText(a.text,c.text),t[s]=null}const e=new Map;for(const s of t)if(null!=s){if(null!=e.get(s.index))throw new Error("should only be one op per index");e.set(s.index,s)}return e}catOpText(t,e){let s="",a="";return null!=t&&(s=t.toString()),null!=e&&(a=e.toString()),s+a}getKindOfOps(t,e,s){return t.slice(0,s).filter((t=>t&&t instanceof e))}},Ea(Ks,"TokenStreamRewriter"),(0,js.Z)(Ks,"DEFAULT_PROGRAM_NAME","default"),(0,js.Z)(Ks,"PROGRAM_INIT_SIZE",100),(0,js.Z)(Ks,"MIN_TOKEN_INDEX",0),Ea(Qs=class{constructor(t,e,s,a){(0,js.Z)(this,"instructionIndex",void 0),(0,js.Z)(this,"index",void 0),(0,js.Z)(this,"text",void 0),(0,js.Z)(this,"tokens",void 0),this.tokens=t,this.instructionIndex=s,this.index=e,this.text=void 0===a?"":a}execute(t){return this.index}toString(){return"'}},"RewriteOperation"),Qs),gc=(Ea(Js=class extends pc{constructor(t,e,s,a){super(t,e,s,a)}execute(t){return this.text&&t.push(this.text.toString()),this.tokens.get(this.index).type!==ca.EOF&&t.push(String(this.tokens.get(this.index).text)),this.index+1}toString(){return"'}},"InsertBeforeOp"),Js),xc=(Ea(Zs=class extends gc{constructor(t,e,s,a){super(t,e+1,s,a)}toString(){return"'}},"InsertAfterOp"),Zs),kc=(qs=class extends pc{constructor(t,e,s,a,r){super(t,e,a,r),(0,js.Z)(this,"lastIndex",void 0),this.lastIndex=s}execute(t){return this.text&&t.push(this.text.toString()),this.lastIndex+1}toString(){return null==this.text?"":"'}},Ea(qs,"ReplaceOp"),qs),Hc=Object.defineProperty,Gc=(t,e)=>Hc(t,"name",{value:e,configurable:!0}),Fc=(Ci=new WeakMap,Gc(Li=class{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";(0,js.Z)(this,"name",void 0),(0,js.Z)(this,"context",void 0),(0,js.Z)(this,"modifiers",new Set),(0,js.Z)(this,"visibility",0),r(this,Ci,{writable:!0,value:void 0}),this.name=t}get parent(){return ea(this,Ci)}get firstSibling(){var t;if(ea(this,Ci))return null===(t=ea(this,Ci))||void 0===t?void 0:t.firstChild}get previousSibling(){if(ea(this,Ci))return ea(this,Ci)?ea(this,Ci).previousSiblingOf(this):this}get nextSibling(){var t;return null===(t=ea(this,Ci))||void 0===t?void 0:t.nextSiblingOf(this)}get lastSibling(){var t;return null===(t=ea(this,Ci))||void 0===t?void 0:t.lastChild}get next(){var t;return null===(t=ea(this,Ci))||void 0===t?void 0:t.nextOf(this)}get root(){let t=ea(this,Ci);for(;t;){if(!t.parent||this.isSymbolTable(t.parent))return t;t=t.parent}return t}get symbolTable(){if(this.isSymbolTable(this))return this;let t=ea(this,Ci);for(;t;){if(this.isSymbolTable(t))return t;t=t.parent}}get symbolPath(){const t=[];let e=this;for(;e&&(t.push(e),e.parent);)e=e.parent;return t}setParent(t){$s(this,Ci,t)}removeFromParent(){var t;null===(t=ea(this,Ci))||void 0===t||t.removeSymbol(this),$s(this,Ci,void 0)}async resolve(t){var e;let s=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return null===(e=ea(this,Ci))||void 0===e?void 0:e.resolve(t,s)}resolveSync(t){var e;let s=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return null===(e=ea(this,Ci))||void 0===e?void 0:e.resolveSync(t,s)}getParentOfType(t){let e=ea(this,Ci);for(;e;){if(e instanceof t)return e;e=e.parent}}qualifiedName(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:".",e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!s&&0===this.name.length)return"";let a=0===this.name.length?"":this.name,r=ea(this,Ci);for(;r&&((s||r.name.length>0)&&(a=(0===r.name.length?"":r.name)+t+a),e&&r.parent);)r=r.parent;return a}isSymbolTable(t){return void 0!==t.info}},"BaseSymbol"),Li),vc=(Gc(_i=class extends Fc{constructor(t,e,s){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;super(t),(0,js.Z)(this,"elementType",void 0),(0,js.Z)(this,"size",void 0),(0,js.Z)(this,"referenceKind",void 0),this.referenceKind=e,this.elementType=s,this.size=a}get baseTypes(){return[]}get kind(){return 9}get reference(){return this.referenceKind}},"ArrayType"),Pi=class extends Error{},Gc(Pi,"DuplicateSymbolError"),Pi),Bc=(di=new WeakMap,Ui=new WeakMap,Gc(Mi=class t extends Fc{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:""),r(this,di,{writable:!0,value:[]}),r(this,Ui,{writable:!0,value:new Map})}get directScopes(){return this.getSymbolsOfType(t)}get children(){return ea(this,di)}get firstChild(){if(ea(this,di).length>0)return ea(this,di)[0]}get lastChild(){if(ea(this,di).length>0)return ea(this,di)[ea(this,di).length-1]}clear(){$s(this,di,[]),ea(this,Ui).clear()}addSymbol(t){t.removeFromParent();const e=this.symbolTable,s=ea(this,Ui).get(t.name);if(e&&e.options.allowDuplicateSymbols)ea(this,Ui).set(t.name,void 0===s?1:s+1);else{var a;if(void 0!==s)throw new vc("Attempt to add duplicate symbol '"+(null!==(a=t.name)&&void 0!==a?a:"")+"'");ea(this,Ui).set(t.name,1);var r;if(ea(this,di).indexOf(t)>-1)throw new vc("Attempt to add duplicate symbol '"+(null!==(r=t.name)&&void 0!==r?r:"")+"'")}ea(this,di).push(t),t.setParent(this)}removeSymbol(t){const e=ea(this,di).indexOf(t);if(e>-1){ea(this,di).splice(e,1),t.setParent(void 0);const s=ea(this,Ui).get(t.name);void 0!==s&&(1===s?ea(this,Ui).delete(t.name):ea(this,Ui).set(t.name,s-1))}}async getNestedSymbolsOfType(e){const s=[],a=[];ea(this,di).forEach((r=>{r instanceof e&&s.push(r),r instanceof t&&a.push(r.getNestedSymbolsOfType(e))}));return(await Promise.all(a)).forEach((t=>{s.push(...t)})),s}getNestedSymbolsOfTypeSync(e){const s=[];return ea(this,di).forEach((a=>{a instanceof e&&s.push(a),a instanceof t&&s.push(...a.getNestedSymbolsOfTypeSync(e))})),s}async getAllNestedSymbols(e){const s=[],a=[];ea(this,di).forEach((r=>{e&&r.name!==e||s.push(r),r instanceof t&&a.push(r.getAllNestedSymbols(e))}));return(await Promise.all(a)).forEach((t=>{s.push(...t)})),s}getAllNestedSymbolsSync(e){const s=[];return ea(this,di).forEach((a=>{e&&a.name!==e||s.push(a),a instanceof t&&s.push(...a.getAllNestedSymbolsSync(e))})),s}getSymbolsOfType(t){return new Promise((e=>{const s=[];ea(this,di).forEach((e=>{e instanceof t&&s.push(e)})),e(s)}))}async getAllSymbols(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const s=[];for(const a of ea(this,di))if(a instanceof t&&s.push(a),this.isNamespace(a)){const e=await a.getAllSymbols(t,!0);s.push(...e)}if(!e&&this.parent){const e=await this.getAllSymbols(t,!0);s.push(...e)}return s}getAllSymbolsSync(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const s=[];for(const a of ea(this,di))if(a instanceof t&&s.push(a),this.isNamespace(a)){const e=a.getAllSymbolsSync(t,!0);s.push(...e)}if(!e&&this.parent){const e=this.getAllSymbolsSync(t,!0);s.push(...e)}return s}async resolve(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return new Promise((s=>{for(const e of ea(this,di))if(e.name===t)return void s(e);e||!this.parent?s(void 0):s(this.parent.resolve(t,!1))}))}resolveSync(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];for(const s of ea(this,di))if(s.name===t)return s;if(!e&&this.parent)return this.parent.resolveSync(t,!1)}symbolFromPath(e){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:".";const a=e.split(s);let r=0;a[0]!==this.name&&0!==a[0].length||++r;let i=this;for(;rt.name===a[r]));if(!e)return;i=e,++r}return i}indexOfChild(t){return ea(this,di).findIndex((e=>e===t))}nextSiblingOf(t){const e=this.indexOfChild(t);if(!(-1===e||e>=ea(this,di).length-1))return ea(this,di)[e+1]}previousSiblingOf(t){const e=this.indexOfChild(t);if(!(e<1))return ea(this,di)[e-1]}nextOf(e){if(!e.parent)return;if(e.parent!==this)return e.parent.nextOf(e);if(e instanceof t&&e.children.length>0)return e.children[0];const s=this.nextSiblingOf(e);return s||this.parent.nextOf(this)}isNamespace(t){return void 0!==t.inline&&void 0!==t.attributes}},"ScopedSymbol"),Mi),yc=(Gc(mi=class extends Bc{},"BlockSymbol"),Gc(Di=class extends Fc{constructor(t,e){super(t),(0,js.Z)(this,"type",void 0),this.type=e}},"TypedSymbol"),Di),fc=(Gc(pi=class extends yc{constructor(t,e,s){super(t,s),(0,js.Z)(this,"value",void 0),this.value=e}},"VariableSymbol"),pi),Yc=(Gc(gi=class extends fc{constructor(){super(...arguments),(0,js.Z)(this,"setter",void 0),(0,js.Z)(this,"getter",void 0)}},"FieldSymbol"),gi),wc=(Gc(xi=class extends fc{},"ParameterSymbol"),xi),bc=(Gc(ki=class extends Bc{constructor(t,e){super(t),(0,js.Z)(this,"returnType",void 0),this.returnType=e}getVariables(){return this.getSymbolsOfType(fc)}getParameters(){return this.getSymbolsOfType(wc)}},"RoutineSymbol"),ki),Wc=(Gc(Hi=class extends bc{constructor(){super(...arguments),(0,js.Z)(this,"methodFlags",0)}},"MethodSymbol"),Hi),Vc=(Gc(Gi=class extends Bc{constructor(t,e,s){super(t),(0,js.Z)(this,"isStruct",!1),(0,js.Z)(this,"reference",0),(0,js.Z)(this,"extends",void 0),(0,js.Z)(this,"implements",void 0),this.extends=e,this.implements=s}get baseTypes(){return this.extends}get kind(){return 7}getMethods(){return this.getSymbolsOfType(Wc)}getFields(){return this.getSymbolsOfType(Yc)}},"ClassSymbol"),Gc(Fi=class{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;(0,js.Z)(this,"name",void 0),(0,js.Z)(this,"typeKind",void 0),(0,js.Z)(this,"referenceKind",void 0),this.name=t,this.typeKind=e,this.referenceKind=s}get baseTypes(){return[]}get kind(){return this.typeKind}get reference(){return this.referenceKind}},"FundamentalType"),(0,js.Z)(Fi,"integerType",new Fi("int",1,3)),(0,js.Z)(Fi,"floatType",new Fi("float",2,3)),(0,js.Z)(Fi,"stringType",new Fi("string",4,3)),(0,js.Z)(Fi,"boolType",new Fi("bool",6,3)),Gc(vi=class extends Bc{constructor(t,e){super(t),(0,js.Z)(this,"reference",0),(0,js.Z)(this,"extends",void 0),this.extends=e}get baseTypes(){return this.extends}get kind(){return 8}getMethods(){return this.getSymbolsOfType(Wc)}getFields(){return this.getSymbolsOfType(Yc)}},"InterfaceSymbol"),Gc(Bi=class extends yc{constructor(t,e,s){super(t,s),(0,js.Z)(this,"value",void 0),this.value=e}},"LiteralSymbol"),Gc(yi=class extends Bc{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];super(t),(0,js.Z)(this,"inline",void 0),(0,js.Z)(this,"attributes",void 0),this.inline=e,this.attributes=s}},"NamespaceSymbol"),yi),Xc=(Gc(fi=class extends Fc{constructor(t,e){super(t),(0,js.Z)(this,"targetType",void 0),this.targetType=e}get baseTypes(){return[this.targetType]}get kind(){return 12}get reference(){return 0}},"TypeAlias"),Gc(((t,e)=>{if(!t||!e)return[];let s;for(s=0;s=t||e.type===ca.EOF))break;if(e.type===ca.EOF)break}const r=e?e.ruleIndex:0;if(this.processRule(this.atn.ruleToStartState[r],0,[],0,0),this.showResult){console.log("States processed: ".concat(this.statesProcessed)),console.log("\n\nCollected rules:\n");for(const e of this.candidates.rules){let t="";for(const s of e[1].ruleList)t+=this.ruleNames[s]+" ";console.log(this.ruleNames[e[0]]+", path: ",t)}const t=new Set;for(const e of this.candidates.tokens){var i;let s=null!==(i=this.vocabulary.getDisplayName(e[0]))&&void 0!==i?i:"";for(const t of e[1])s+=" "+this.vocabulary.getDisplayName(t);t.add(s)}console.log("\n\nCollected tokens:\n");for(const e of t)console.log(e);console.log("\n\n")}return this.candidates}checkPredicate(t){return t.getPredicate().evaluate(this.parser,ga.empty)}translateStackToRuleIndex(t){if(0===this.preferredRules.size)return!1;if(this.translateRulesTopDown){for(let e=t.length-1;e>=0;e--)if(this.translateToRuleIndex(e,t))return!0}else for(let e=0;e{let{ruleIndex:e}=t;return e}));let i=!0;for(const t of this.candidates.rules)if(t[0]===s&&t[1].ruleList.length===r.length&&r.every(((e,s)=>e===t[1].ruleList[s]))){i=!1;break}return i&&(this.candidates.rules.set(s,{startTokenIndex:a,ruleList:r}),this.showDebugOutput&&console.log("=====> collected: ",this.ruleNames[s])),!0}return!1}getFollowingTokens(t){const e=[],s=[t.target];for(;s.length>0;){const t=s.pop();t&&t.transitions.forEach((t=>{if(t.transitionType===la.ATOM)if(t.isEpsilon)s.push(t.target);else{const a=t.label.toArray();1!==a.length||this.ignoredTokens.has(a[0])||(e.push(a[0]),s.push(t.target))}}))}return e}determineFollowSets(t,e){const s=[],a=this.collectFollowSets(t,e,s,[],[]),r=new Sa;for(const i of s)r.addSet(i.intervals);return{sets:s,isExhaustive:a,combined:r}}collectFollowSets(t,e,s,a,r){if(a.find((e=>e===t)))return!0;if(a.push(t),t===e||t.constructor.stateType===Va.RULE_STOP)return a.pop(),!1;let i=!0;for(const n of t.transitions)if(n.transitionType===la.RULE){const t=n;if(-1!==r.indexOf(t.target.ruleIndex))continue;r.push(t.target.ruleIndex);const c=this.collectFollowSets(n.target,e,s,a,r);if(r.pop(),!c){const c=this.collectFollowSets(t.followState,e,s,a,r);i&&(i=c)}}else if(n.transitionType===la.PREDICATE){if(this.checkPredicate(n)){const t=this.collectFollowSets(n.target,e,s,a,r);i&&(i=t)}}else if(n.isEpsilon){const t=this.collectFollowSets(n.target,e,s,a,r);i&&(i=t)}else if(n.transitionType===la.WILDCARD){const t=new Qc;t.intervals=Sa.of(ca.MIN_USER_TOKEN_TYPE,this.atn.maxTokenType),t.path=r.slice(),s.push(t)}else{let t=n.label;if(t&&t.length>0){var c;n.transitionType===la.NOT_SET&&(t=t.complement(ca.MIN_USER_TOKEN_TYPE,this.atn.maxTokenType));const e=new Qc;e.intervals=null!==(c=t)&&void 0!==c?c:new Sa,e.path=r.slice(),e.following=this.getFollowingTokens(n),s.push(e)}}return a.pop(),i}processRule(e,s,a,r,i){let c=this.shortcutMap.get(e.ruleIndex);if(c){if(c.has(s))return this.showDebugOutput&&console.log("=====> shortcut"),c.get(s)}else c=new Map,this.shortcutMap.set(e.ruleIndex,c);const n=new Set;let h=t.followSetsByATN.get(this.parser.constructor.name);h||(h=new Map,t.followSetsByATN.set(this.parser.constructor.name,h));let E=h.get(e.stateNumber);if(!E){const t=this.atn.ruleToStopState[e.ruleIndex];E=this.determineFollowSets(e,t),h.set(e.stateNumber,E)}const T=this.tokens[s].tokenIndex;if(a.push({startTokenIndex:T,ruleIndex:e.ruleIndex}),s>=this.tokens.length-1){if(this.preferredRules.has(e.ruleIndex))this.translateStackToRuleIndex(a);else for(const t of E.sets){const e=a.slice(),s=t.path.map((t=>({startTokenIndex:T,ruleIndex:t})));if(e.push(...s),!this.translateStackToRuleIndex(e))for(const a of t.intervals.toArray())this.ignoredTokens.has(a)||(this.showDebugOutput&&console.log("=====> collected: ",this.vocabulary.getDisplayName(a)),this.candidates.tokens.has(a)?this.candidates.tokens.get(a)!==t.following&&this.candidates.tokens.set(a,[]):this.candidates.tokens.set(a,t.following))}return E.isExhaustive||n.add(s),a.pop(),n}{const t=this.tokens[s].type;if(E.isExhaustive&&!E.combined.contains(t))return a.pop(),n}e.isPrecedenceRule&&this.precedenceStack.push(r);const o=[];let R;for(o.push({state:e,tokenListIndex:s});o.length>0;){R=o.pop(),++this.statesProcessed;const t=this.tokens[R.tokenListIndex].type,e=R.tokenListIndex>=this.tokens.length-1;if(this.showDebugOutput&&(this.printDescription(i,R.state,this.generateBaseDescription(R.state),R.tokenListIndex),this.showRuleStack&&this.printRuleState(a)),R.state.constructor.stateType===Va.RULE_STOP){n.add(R.tokenListIndex);continue}const s=R.state.transitions;for(const r of s)switch(r.transitionType){case la.RULE:{const t=r,e=this.processRule(r.target,R.tokenListIndex,a,t.precedence,i+1);for(const s of e)o.push({state:r.followState,tokenListIndex:s});break}case la.PREDICATE:this.checkPredicate(r)&&o.push({state:r.target,tokenListIndex:R.tokenListIndex});break;case la.PRECEDENCE:r.precedence>=this.precedenceStack[this.precedenceStack.length-1]&&o.push({state:r.target,tokenListIndex:R.tokenListIndex});break;case la.WILDCARD:if(e){if(!this.translateStackToRuleIndex(a))for(const t of Sa.of(ca.MIN_USER_TOKEN_TYPE,this.atn.maxTokenType).toArray())this.ignoredTokens.has(t)||this.candidates.tokens.set(t,[])}else o.push({state:r.target,tokenListIndex:R.tokenListIndex+1});break;default:{if(r.isEpsilon){o.push({state:r.target,tokenListIndex:R.tokenListIndex});continue}let s=r.label;if(s&&s.length>0)if(r.transitionType===la.NOT_SET&&(s=s.complement(ca.MIN_USER_TOKEN_TYPE,this.atn.maxTokenType)),e){if(!this.translateStackToRuleIndex(a)){const t=s.toArray(),e=1===t.length;for(const s of t)if(!this.ignoredTokens.has(s)){this.showDebugOutput&&console.log("=====> collected: ",this.vocabulary.getDisplayName(s));const t=e?this.getFollowingTokens(r):[];this.candidates.tokens.has(s)?this.candidates.tokens.set(s,Xc(t,this.candidates.tokens.get(s))):this.candidates.tokens.set(s,t)}}}else s.contains(t)&&(this.showDebugOutput&&console.log("=====> consumed: ",this.vocabulary.getDisplayName(t)),o.push({state:r.target,tokenListIndex:R.tokenListIndex+1}))}}}return a.pop(),e.isPrecedenceRule&&this.precedenceStack.pop(),c.set(s,n),n}generateBaseDescription(e){const s=e.stateNumber===Va.INVALID_STATE_NUMBER?"Invalid":e.stateNumber,a=t.atnStateTypeMap[e.constructor.stateType];return"[".concat(s," ").concat(a,"] in ").concat(this.ruleNames[e.ruleIndex])}printDescription(e,s,a,r){const i=" ".repeat(e);let c=i,n="";if(this.debugOutputWithTransitions)for(const h of s.transitions){let e="";const s=h.label?h.label.toArray():[];if(s.length>2)e=this.vocabulary.getDisplayName(s[0])+" .. "+this.vocabulary.getDisplayName(s[s.length-1]);else for(const t of s)e.length>0&&(e+=", "),e+=this.vocabulary.getDisplayName(t);0===e.length&&(e="\u03b5");const a=t.atnStateTypeMap[h.target.constructor.stateType];n+="\n".concat(i,"\t(").concat(e,") [").concat(h.target.stateNumber," ").concat(a,"] in ").concat(this.ruleNames[h.target.ruleIndex])}r>=this.tokens.length-1?c+="<<".concat(this.tokenStartIndex+r,">> "):c+="<".concat(this.tokenStartIndex+r,"> "),console.log(c+"Current state: "+a+n)}printRuleState(t){if(0!==t.length)for(const e of t)console.log(this.ruleNames[e.ruleIndex]);else console.log("")}},Gc(bi,"CodeCompletionCore"),(0,js.Z)(bi,"followSetsByATN",new Map),(0,js.Z)(bi,"atnStateTypeMap",["invalid","basic","rule start","block start","plus block start","star block start","token start","rule stop","block end","star loop back","star loop entry","plus loop back","loop end"]),bi),Zc=(Wi=class extends Bc{constructor(t,e){super(t),(0,js.Z)(this,"dependencies",new Set),this.options=e}get info(){return{dependencyCount:this.dependencies.size,symbolCount:this.children.length}}clear(){super.clear(),this.dependencies.clear()}addDependencies(){for(var t=arguments.length,e=new Array(t),s=0;s{this.dependencies.add(t)}))}removeDependency(t){this.dependencies.has(t)&&this.dependencies.delete(t)}addNewSymbolOfType(t,e){for(var s=arguments.length,a=new Array(s>2?s-2:0),r=2;r2&&void 0!==arguments[2]?arguments[2]:".";const a=e.split(s);let r=0,i=void 0===t?this:t;for(;r2&&void 0!==arguments[2]?arguments[2]:".";const a=e.split(s);let r=0,i=void 0===t?this:t;for(;r1&&void 0!==arguments[1]&&arguments[1];const s=await super.getAllSymbols(t,e);if(!e){(await Promise.all([...this.dependencies].map((s=>s.getAllSymbols(t,e))))).forEach((t=>{s.push(...t)}))}return s}getAllSymbolsSync(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const s=super.getAllSymbolsSync(t,e);return e||this.dependencies.forEach((a=>{s.push(...a.getAllSymbolsSync(t,e))})),s}async symbolWithContext(t){const e=Gc((s=>{if(s.context===t)return s;if(s instanceof Bc)for(const t of s.children){const s=e(t);if(s)return s}}),"findRecursive");let s=await this.getAllSymbols(Fc);for(const a of s){const t=e(a);if(t)return t}for(const a of this.dependencies){s=await a.getAllSymbols(Fc);for(const t of s){const s=e(t);if(s)return s}}}symbolWithContextSync(t){const e=Gc((s=>{if(s.context===t)return s;if(s instanceof Bc)for(const t of s.children){const s=e(t);if(s)return s}}),"findRecursive");let s=this.getAllSymbolsSync(Fc);for(const a of s){const t=e(a);if(t)return t}for(const a of this.dependencies){s=a.getAllSymbolsSync(Fc);for(const t of s){const s=e(t);if(s)return s}}}async resolve(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=await super.resolve(t,e);if(!s&&!e)for(const a of this.dependencies)if(s=await a.resolve(t,!1),s)return s;return s}resolveSync(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=super.resolveSync(t,e);if(!s&&!e)for(const a of this.dependencies)if(s=a.resolveSync(t,!1),s)return s;return s}},Gc(Wi,"SymbolTable"),Wi),qc=class extends yc{constructor(t,e,s){super(t,s),this.name=t,this.alias=e}};function jc(t){return function(){let t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).reduce(((t,e)=>{var s;let a=null!==(s=t[e.name])&&void 0!==s?s:new Set;return e.alias&&a.add(e.alias),t[e.name]=a,t}),{});return Object.keys(t).reduce(((e,s)=>{let a=t[s];return a.size>0?null===a||void 0===a||a.forEach((t=>{e.push({name:s,alias:t})})):e.push({name:s}),e}),[])}(t.symbolTable.getNestedSymbolsOfTypeSync(qc))}var zc=class extends yc{constructor(t,e){super(t,e),this.name=t}};var $c,tn=($c=tn||{},$c.ALL="ALL",$c.TABLES="TABLES",$c.VIEWS="VIEWS",$c),en=/^\p{L}+$/u,sn=class extends $r{constructor(){super(...arguments),this.tags=[]}pushTag(){this.tags.push(this.text)}isTag(){return this.text===this.tags[0]}popTag(){this.tags.shift()}checkLA(t){return this.inputStream.LA(1)!==t}charIsLetter(){return en.test(this.inputStream.LA(-1))}HandleNumericFail(){this.inputStream.seek(this.inputStream.index-2),this.type=658}HandleLessLessGreaterGreater(){"<<"==this.text?this.type=18:">>"==this.text&&(this.type=19)}UnterminatedBlockCommentDebugAssert(){}CheckIfUtf32Letter(){let t,e=this.inputStream.LA(-2)<<8+this.inputStream.LA(-1);return e<65536?t=[e]:(e-=65536,t=[e/1024+55296,e%1024+56320]),en.test("".concat(t[0]))}},an=(Vi=class t extends sn{constructor(e){super(e),this.interpreter=new hi(this,t._ATN,t.decisionsToDFA,new Si)}get grammarFileName(){return"PostgreSqlLexer.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}get channelNames(){return t.channelNames}get modeNames(){return t.modeNames}action(t,e,s){switch(e){case 28:this.Operator_action(t,s);break;case 656:this.BeginDollarStringConstant_action(t,s);break;case 667:this.NumericFail_action(t,s);break;case 676:this.UnterminatedBlockComment_action(t,s);break;case 688:this.AfterEscapeStringConstantMode_NotContinued_action(t,s);break;case 692:this.AfterEscapeStringConstantWithNewlineMode_NotContinued_action(t,s);break;case 694:this.EndDollarStringConstant_action(t,s)}}Operator_action(t,e){if(0===e)this.HandleLessLessGreaterGreater()}BeginDollarStringConstant_action(t,e){if(1===e)this.pushTag()}NumericFail_action(t,e){if(2===e)this.HandleNumericFail()}UnterminatedBlockComment_action(t,e){if(3===e)this.UnterminatedBlockCommentDebugAssert()}AfterEscapeStringConstantMode_NotContinued_action(t,e){e}AfterEscapeStringConstantWithNewlineMode_NotContinued_action(t,e){e}EndDollarStringConstant_action(t,e){if(6===e)this.popTag()}sempred(t,e,s){switch(e){case 28:return this.Operator_sempred(t,s);case 29:return this.OperatorEndingWithPlusMinus_sempred(t,s);case 640:return this.IdentifierStartChar_sempred(t,s);case 694:return this.EndDollarStringConstant_sempred(t,s)}return!0}Operator_sempred(t,e){switch(e){case 0:return this.checkLA("-");case 1:case 2:return this.checkLA("*")}return!0}OperatorEndingWithPlusMinus_sempred(t,e){switch(e){case 3:case 5:return this.checkLA("-");case 4:return this.checkLA("*")}return!0}IdentifierStartChar_sempred(t,e){switch(e){case 6:return this.charIsLetter();case 7:return}return!0}EndDollarStringConstant_sempred(t,e){return 8!==e||this.isTag()}static get _ATN(){return t.__ATN||(t.__ATN=(new fr).deserialize(t._serializedATN)),t.__ATN}get vocabulary(){return t.vocabulary}},Vi.Dollar=1,Vi.OPEN_PAREN=2,Vi.CLOSE_PAREN=3,Vi.OPEN_BRACKET=4,Vi.CLOSE_BRACKET=5,Vi.COMMA=6,Vi.SEMI=7,Vi.COLON=8,Vi.STAR=9,Vi.EQUAL=10,Vi.DOT=11,Vi.PLUS=12,Vi.MINUS=13,Vi.SLASH=14,Vi.CARET=15,Vi.LT=16,Vi.GT=17,Vi.LESS_LESS=18,Vi.GREATER_GREATER=19,Vi.COLON_EQUALS=20,Vi.LESS_EQUALS=21,Vi.EQUALS_GREATER=22,Vi.GREATER_EQUALS=23,Vi.DOT_DOT=24,Vi.NOT_EQUALS=25,Vi.TYPECAST=26,Vi.PERCENT=27,Vi.PARAM=28,Vi.Operator=29,Vi.ALL=30,Vi.ANALYSE=31,Vi.ANALYZE=32,Vi.AND=33,Vi.ANY=34,Vi.ARRAY=35,Vi.AS=36,Vi.ASC=37,Vi.ASYMMETRIC=38,Vi.BOTH=39,Vi.CASE=40,Vi.CAST=41,Vi.CHECK=42,Vi.COLLATE=43,Vi.COLUMN=44,Vi.CONSTRAINT=45,Vi.CREATE=46,Vi.CURRENT_CATALOG=47,Vi.CURRENT_DATE=48,Vi.CURRENT_ROLE=49,Vi.CURRENT_TIME=50,Vi.CURRENT_TIMESTAMP=51,Vi.CURRENT_USER=52,Vi.DEFAULT=53,Vi.DEFERRABLE=54,Vi.DESC=55,Vi.DISTINCT=56,Vi.DO=57,Vi.ELSE=58,Vi.EXCEPT=59,Vi.FALSE_P=60,Vi.FETCH=61,Vi.FOR=62,Vi.FOREIGN=63,Vi.FROM=64,Vi.GRANT=65,Vi.GROUP_P=66,Vi.HAVING=67,Vi.IN_P=68,Vi.INITIALLY=69,Vi.INTERSECT=70,Vi.INTO=71,Vi.LATERAL_P=72,Vi.LEADING=73,Vi.LIMIT=74,Vi.LOCALTIME=75,Vi.LOCALTIMESTAMP=76,Vi.NOT=77,Vi.NULL_P=78,Vi.OFFSET=79,Vi.ON=80,Vi.ONLY=81,Vi.OR=82,Vi.ORDER=83,Vi.PLACING=84,Vi.PRIMARY=85,Vi.REFERENCES=86,Vi.RETURNING=87,Vi.SELECT=88,Vi.SESSION_USER=89,Vi.SOME=90,Vi.SYMMETRIC=91,Vi.TABLE=92,Vi.THEN=93,Vi.TO=94,Vi.TRAILING=95,Vi.TRUE_P=96,Vi.UNION=97,Vi.UNIQUE=98,Vi.USER=99,Vi.USING=100,Vi.VARIADIC=101,Vi.WHEN=102,Vi.WHERE=103,Vi.WINDOW=104,Vi.WITH=105,Vi.AUTHORIZATION=106,Vi.BINARY=107,Vi.COLLATION=108,Vi.CONCURRENTLY=109,Vi.CROSS=110,Vi.CURRENT_SCHEMA=111,Vi.FREEZE=112,Vi.FULL=113,Vi.ILIKE=114,Vi.INNER_P=115,Vi.IS=116,Vi.ISNULL=117,Vi.JOIN=118,Vi.LEFT=119,Vi.LIKE=120,Vi.NATURAL=121,Vi.NOTNULL=122,Vi.OUTER_P=123,Vi.OVER=124,Vi.OVERLAPS=125,Vi.RIGHT=126,Vi.SIMILAR=127,Vi.VERBOSE=128,Vi.ABORT_P=129,Vi.ABSOLUTE_P=130,Vi.ACCESS=131,Vi.ACTION=132,Vi.ADD_P=133,Vi.ADMIN=134,Vi.AFTER=135,Vi.AGGREGATE=136,Vi.ALSO=137,Vi.ALTER=138,Vi.ALWAYS=139,Vi.ASSERTION=140,Vi.ASSIGNMENT=141,Vi.AT=142,Vi.ATTRIBUTE=143,Vi.BACKWARD=144,Vi.BEFORE=145,Vi.BEGIN_P=146,Vi.BY=147,Vi.CACHE=148,Vi.CALLED=149,Vi.CASCADE=150,Vi.CASCADED=151,Vi.CATALOG=152,Vi.CHAIN=153,Vi.CHARACTERISTICS=154,Vi.CHECKPOINT=155,Vi.CLASS=156,Vi.CLOSE=157,Vi.CLUSTER=158,Vi.COMMENT=159,Vi.COMMENTS=160,Vi.COMMIT=161,Vi.COMMITTED=162,Vi.CONFIGURATION=163,Vi.CONNECTION=164,Vi.CONSTRAINTS=165,Vi.CONTENT_P=166,Vi.CONTINUE_P=167,Vi.CONVERSION_P=168,Vi.COPY=169,Vi.COST=170,Vi.CSV=171,Vi.CURSOR=172,Vi.CYCLE=173,Vi.DATA_P=174,Vi.DATABASE=175,Vi.DAY_P=176,Vi.DEALLOCATE=177,Vi.DECLARE=178,Vi.DEFAULTS=179,Vi.DEFERRED=180,Vi.DEFINER=181,Vi.DELETE_P=182,Vi.DELIMITER=183,Vi.DELIMITERS=184,Vi.DICTIONARY=185,Vi.DISABLE_P=186,Vi.DISCARD=187,Vi.DOCUMENT_P=188,Vi.DOMAIN_P=189,Vi.DOUBLE_P=190,Vi.DROP=191,Vi.EACH=192,Vi.ENABLE_P=193,Vi.ENCODING=194,Vi.ENCRYPTED=195,Vi.ENUM_P=196,Vi.ESCAPE=197,Vi.EVENT=198,Vi.EXCLUDE=199,Vi.EXCLUDING=200,Vi.EXCLUSIVE=201,Vi.EXECUTE=202,Vi.EXPLAIN=203,Vi.EXTENSION=204,Vi.EXTERNAL=205,Vi.FAMILY=206,Vi.FIRST_P=207,Vi.FOLLOWING=208,Vi.FORCE=209,Vi.FORWARD=210,Vi.FUNCTION=211,Vi.FUNCTIONS=212,Vi.GLOBAL=213,Vi.GRANTED=214,Vi.HANDLER=215,Vi.HEADER_P=216,Vi.HOLD=217,Vi.HOUR_P=218,Vi.IDENTITY_P=219,Vi.IF_P=220,Vi.IMMEDIATE=221,Vi.IMMUTABLE=222,Vi.IMPLICIT_P=223,Vi.INCLUDING=224,Vi.INCREMENT=225,Vi.INDEX=226,Vi.INDEXES=227,Vi.INHERIT=228,Vi.INHERITS=229,Vi.INLINE_P=230,Vi.INSENSITIVE=231,Vi.INSERT=232,Vi.INSTEAD=233,Vi.INVOKER=234,Vi.ISOLATION=235,Vi.KEY=236,Vi.LABEL=237,Vi.LANGUAGE=238,Vi.LARGE_P=239,Vi.LAST_P=240,Vi.LEAKPROOF=241,Vi.LEVEL=242,Vi.LISTEN=243,Vi.LOAD=244,Vi.LOCAL=245,Vi.LOCATION=246,Vi.LOCK_P=247,Vi.MAPPING=248,Vi.MATCH=249,Vi.MATCHED=250,Vi.MATERIALIZED=251,Vi.MAXVALUE=252,Vi.MERGE=253,Vi.MINUTE_P=254,Vi.MINVALUE=255,Vi.MODE=256,Vi.MONTH_P=257,Vi.MOVE=258,Vi.NAME_P=259,Vi.NAMES=260,Vi.NEXT=261,Vi.NO=262,Vi.NOTHING=263,Vi.NOTIFY=264,Vi.NOWAIT=265,Vi.NULLS_P=266,Vi.OBJECT_P=267,Vi.OF=268,Vi.OFF=269,Vi.OIDS=270,Vi.OPERATOR=271,Vi.OPTION=272,Vi.OPTIONS=273,Vi.OWNED=274,Vi.OWNER=275,Vi.PARSER=276,Vi.PARTIAL=277,Vi.PARTITION=278,Vi.PASSING=279,Vi.PASSWORD=280,Vi.PLANS=281,Vi.PRECEDING=282,Vi.PREPARE=283,Vi.PREPARED=284,Vi.PRESERVE=285,Vi.PRIOR=286,Vi.PRIVILEGES=287,Vi.PROCEDURAL=288,Vi.PROCEDURE=289,Vi.PROGRAM=290,Vi.QUOTE=291,Vi.RANGE=292,Vi.READ=293,Vi.REASSIGN=294,Vi.RECHECK=295,Vi.RECURSIVE=296,Vi.REF=297,Vi.REFRESH=298,Vi.REINDEX=299,Vi.RELATIVE_P=300,Vi.RELEASE=301,Vi.RENAME=302,Vi.REPEATABLE=303,Vi.REPLACE=304,Vi.REPLICA=305,Vi.RESET=306,Vi.RESTART=307,Vi.RESTRICT=308,Vi.RETURNS=309,Vi.REVOKE=310,Vi.ROLE=311,Vi.ROLLBACK=312,Vi.ROWS=313,Vi.RULE=314,Vi.SAVEPOINT=315,Vi.SCHEMA=316,Vi.SCROLL=317,Vi.SEARCH=318,Vi.SECOND_P=319,Vi.SECURITY=320,Vi.SEQUENCE=321,Vi.SEQUENCES=322,Vi.SERIALIZABLE=323,Vi.SERVER=324,Vi.SESSION=325,Vi.SET=326,Vi.SHARE=327,Vi.SHOW=328,Vi.SIMPLE=329,Vi.SNAPSHOT=330,Vi.STABLE=331,Vi.STANDALONE_P=332,Vi.START=333,Vi.STATEMENT=334,Vi.STATISTICS=335,Vi.STDIN=336,Vi.STDOUT=337,Vi.STORAGE=338,Vi.STRICT_P=339,Vi.STRIP_P=340,Vi.SYSID=341,Vi.SYSTEM_P=342,Vi.TABLES=343,Vi.TABLESPACE=344,Vi.TEMP=345,Vi.TEMPLATE=346,Vi.TEMPORARY=347,Vi.TEXT_P=348,Vi.TRANSACTION=349,Vi.TRIGGER=350,Vi.TRUNCATE=351,Vi.TRUSTED=352,Vi.TYPE_P=353,Vi.TYPES_P=354,Vi.UNBOUNDED=355,Vi.UNCOMMITTED=356,Vi.UNENCRYPTED=357,Vi.UNKNOWN=358,Vi.UNLISTEN=359,Vi.UNLOGGED=360,Vi.UNTIL=361,Vi.UPDATE=362,Vi.VACUUM=363,Vi.VALID=364,Vi.VALIDATE=365,Vi.VALIDATOR=366,Vi.VARYING=367,Vi.VERSION_P=368,Vi.VIEW=369,Vi.VOLATILE=370,Vi.WHITESPACE_P=371,Vi.WITHOUT=372,Vi.WORK=373,Vi.WRAPPER=374,Vi.WRITE=375,Vi.XML_P=376,Vi.YEAR_P=377,Vi.YES_P=378,Vi.ZONE=379,Vi.BETWEEN=380,Vi.BIGINT=381,Vi.BIT=382,Vi.BOOLEAN_P=383,Vi.CHAR_P=384,Vi.CHARACTER=385,Vi.COALESCE=386,Vi.DEC=387,Vi.DECIMAL_P=388,Vi.EXISTS=389,Vi.EXTRACT=390,Vi.FLOAT_P=391,Vi.GREATEST=392,Vi.INOUT=393,Vi.INT_P=394,Vi.INTEGER=395,Vi.INTERVAL=396,Vi.LEAST=397,Vi.NATIONAL=398,Vi.NCHAR=399,Vi.NONE=400,Vi.NULLIF=401,Vi.NUMERIC=402,Vi.OVERLAY=403,Vi.POSITION=404,Vi.PRECISION=405,Vi.REAL=406,Vi.ROW=407,Vi.SETOF=408,Vi.SMALLINT=409,Vi.SUBSTRING=410,Vi.TIME=411,Vi.TIMESTAMP=412,Vi.TREAT=413,Vi.TRIM=414,Vi.VALUES=415,Vi.VARCHAR=416,Vi.XMLATTRIBUTES=417,Vi.XMLCOMMENT=418,Vi.XMLAGG=419,Vi.XML_IS_WELL_FORMED=420,Vi.XML_IS_WELL_FORMED_DOCUMENT=421,Vi.XML_IS_WELL_FORMED_CONTENT=422,Vi.XPATH=423,Vi.XPATH_EXISTS=424,Vi.XMLCONCAT=425,Vi.XMLELEMENT=426,Vi.XMLEXISTS=427,Vi.XMLFOREST=428,Vi.XMLPARSE=429,Vi.XMLPI=430,Vi.XMLROOT=431,Vi.XMLSERIALIZE=432,Vi.CALL=433,Vi.CURRENT_P=434,Vi.ATTACH=435,Vi.DETACH=436,Vi.EXPRESSION=437,Vi.GENERATED=438,Vi.LOGGED=439,Vi.STORED=440,Vi.INCLUDE=441,Vi.ROUTINE=442,Vi.TRANSFORM=443,Vi.IMPORT_P=444,Vi.POLICY=445,Vi.METHOD=446,Vi.REFERENCING=447,Vi.NEW=448,Vi.OLD=449,Vi.VALUE_P=450,Vi.SUBSCRIPTION=451,Vi.PUBLICATION=452,Vi.OUT_P=453,Vi.END_P=454,Vi.ROUTINES=455,Vi.SCHEMAS=456,Vi.PROCEDURES=457,Vi.INPUT_P=458,Vi.SUPPORT=459,Vi.PARALLEL=460,Vi.SQL_P=461,Vi.DEPENDS=462,Vi.OVERRIDING=463,Vi.CONFLICT=464,Vi.SKIP_P=465,Vi.LOCKED=466,Vi.TIES=467,Vi.ROLLUP=468,Vi.CUBE=469,Vi.GROUPING=470,Vi.SETS=471,Vi.TABLESAMPLE=472,Vi.ORDINALITY=473,Vi.XMLTABLE=474,Vi.COLUMNS=475,Vi.XMLNAMESPACES=476,Vi.ROWTYPE=477,Vi.NORMALIZED=478,Vi.WITHIN=479,Vi.FILTER=480,Vi.GROUPS=481,Vi.OTHERS=482,Vi.NFC=483,Vi.NFD=484,Vi.NFKC=485,Vi.NFKD=486,Vi.UESCAPE=487,Vi.VIEWS=488,Vi.NORMALIZE=489,Vi.DUMP=490,Vi.PRINT_STRICT_PARAMS=491,Vi.VARIABLE_CONFLICT=492,Vi.ERROR=493,Vi.USE_VARIABLE=494,Vi.USE_COLUMN=495,Vi.ALIAS=496,Vi.CONSTANT=497,Vi.PERFORM=498,Vi.GET=499,Vi.DIAGNOSTICS=500,Vi.STACKED=501,Vi.ELSIF=502,Vi.WHILE=503,Vi.REVERSE=504,Vi.FOREACH=505,Vi.SLICE=506,Vi.EXIT=507,Vi.RETURN=508,Vi.QUERY=509,Vi.RAISE=510,Vi.SQLSTATE=511,Vi.DEBUG=512,Vi.LOG=513,Vi.INFO=514,Vi.NOTICE=515,Vi.WARNING=516,Vi.EXCEPTION=517,Vi.ASSERT=518,Vi.LOOP=519,Vi.OPEN=520,Vi.ABS=521,Vi.CBRT=522,Vi.CEIL=523,Vi.CEILING=524,Vi.DEGREES=525,Vi.DIV=526,Vi.EXP=527,Vi.FACTORIAL=528,Vi.FLOOR=529,Vi.GCD=530,Vi.LCM=531,Vi.LN=532,Vi.LOG10=533,Vi.MIN_SCALE=534,Vi.MOD=535,Vi.PI=536,Vi.POWER=537,Vi.RADIANS=538,Vi.ROUND=539,Vi.SCALE=540,Vi.SIGN=541,Vi.SQRT=542,Vi.TRIM_SCALE=543,Vi.TRUNC=544,Vi.WIDTH_BUCKET=545,Vi.RANDOM=546,Vi.SETSEED=547,Vi.ACOS=548,Vi.ACOSD=549,Vi.ASIN=550,Vi.ASIND=551,Vi.ATAN=552,Vi.ATAND=553,Vi.ATAN2=554,Vi.ATAN2D=555,Vi.COS=556,Vi.COSD=557,Vi.COT=558,Vi.COTD=559,Vi.SIN=560,Vi.SIND=561,Vi.TAN=562,Vi.TAND=563,Vi.SINH=564,Vi.COSH=565,Vi.TANH=566,Vi.ASINH=567,Vi.ACOSH=568,Vi.ATANH=569,Vi.BIT_LENGTH=570,Vi.CHAR_LENGTH=571,Vi.CHARACTER_LENGTH=572,Vi.LOWER=573,Vi.OCTET_LENGTH=574,Vi.UPPER=575,Vi.ASCII=576,Vi.BTRIM=577,Vi.CHR=578,Vi.CONCAT=579,Vi.CONCAT_WS=580,Vi.FORMAT=581,Vi.INITCAP=582,Vi.LENGTH=583,Vi.LPAD=584,Vi.LTRIM=585,Vi.MD5=586,Vi.PARSE_IDENT=587,Vi.PG_CLIENT_ENCODING=588,Vi.QUOTE_IDENT=589,Vi.QUOTE_LITERAL=590,Vi.QUOTE_NULLABLE=591,Vi.REGEXP_COUNT=592,Vi.REGEXP_INSTR=593,Vi.REGEXP_LIKE=594,Vi.REGEXP_MATCH=595,Vi.REGEXP_MATCHES=596,Vi.REGEXP_REPLACE=597,Vi.REGEXP_SPLIT_TO_ARRAY=598,Vi.REGEXP_SPLIT_TO_TABLE=599,Vi.REGEXP_SUBSTR=600,Vi.REPEAT=601,Vi.RPAD=602,Vi.RTRIM=603,Vi.SPLIT_PART=604,Vi.STARTS_WITH=605,Vi.STRING_TO_ARRAY=606,Vi.STRING_TO_TABLE=607,Vi.STRPOS=608,Vi.SUBSTR=609,Vi.TO_ASCII=610,Vi.TO_HEX=611,Vi.TRANSLATE=612,Vi.UNISTR=613,Vi.AGE=614,Vi.CLOCK_TIMESTAMP=615,Vi.DATE_BIN=616,Vi.DATE_PART=617,Vi.DATE_TRUNC=618,Vi.ISFINITE=619,Vi.JUSTIFY_DAYS=620,Vi.JUSTIFY_HOURS=621,Vi.JUSTIFY_INTERVAL=622,Vi.MAKE_DATE=623,Vi.MAKE_INTERVAL=624,Vi.MAKE_TIME=625,Vi.MAKE_TIMESTAMP=626,Vi.MAKE_TIMESTAMPTZ=627,Vi.NOW=628,Vi.STATEMENT_TIMESTAMP=629,Vi.TIMEOFDAY=630,Vi.TRANSACTION_TIMESTAMP=631,Vi.TO_TIMESTAMP=632,Vi.TO_CHAR=633,Vi.TO_DATE=634,Vi.TO_NUMBER=635,Vi.Identifier=636,Vi.QuotedIdentifier=637,Vi.UnterminatedQuotedIdentifier=638,Vi.InvalidQuotedIdentifier=639,Vi.InvalidUnterminatedQuotedIdentifier=640,Vi.UnicodeQuotedIdentifier=641,Vi.UnterminatedUnicodeQuotedIdentifier=642,Vi.InvalidUnicodeQuotedIdentifier=643,Vi.InvalidUnterminatedUnicodeQuotedIdentifier=644,Vi.StringConstant=645,Vi.UnterminatedStringConstant=646,Vi.UnicodeEscapeStringConstant=647,Vi.UnterminatedUnicodeEscapeStringConstant=648,Vi.BeginDollarStringConstant=649,Vi.BinaryStringConstant=650,Vi.UnterminatedBinaryStringConstant=651,Vi.InvalidBinaryStringConstant=652,Vi.InvalidUnterminatedBinaryStringConstant=653,Vi.HexadecimalStringConstant=654,Vi.UnterminatedHexadecimalStringConstant=655,Vi.InvalidHexadecimalStringConstant=656,Vi.InvalidUnterminatedHexadecimalStringConstant=657,Vi.Integral=658,Vi.NumericFail=659,Vi.Numeric=660,Vi.PLSQLVARIABLENAME=661,Vi.PLSQLIDENTIFIER=662,Vi.Whitespace=663,Vi.Newline=664,Vi.LineComment=665,Vi.BlockComment=666,Vi.UnterminatedBlockComment=667,Vi.MetaCommand=668,Vi.EndMetaCommand=669,Vi.ErrorCharacter=670,Vi.EscapeStringConstant=671,Vi.UnterminatedEscapeStringConstant=672,Vi.InvalidEscapeStringConstant=673,Vi.InvalidUnterminatedEscapeStringConstant=674,Vi.AfterEscapeStringConstantMode_NotContinued=675,Vi.AfterEscapeStringConstantWithNewlineMode_NotContinued=676,Vi.DollarText=677,Vi.EndDollarStringConstant=678,Vi.AfterEscapeStringConstantWithNewlineMode_Continued=679,Vi.EscapeStringConstantMode=1,Vi.AfterEscapeStringConstantMode=2,Vi.AfterEscapeStringConstantWithNewlineMode=3,Vi.DollarQuotedStringMode=4,Vi.channelNames=["DEFAULT_TOKEN_CHANNEL","HIDDEN"],Vi.literalNames=[null,"'$'","'('","')'","'['","']'","','","';'","':'","'*'","'='","'.'","'+'","'-'","'/'","'^'","'<'","'>'","'<<'","'>>'","':='","'<='","'=>'","'>='","'..'","'<>'","'::'","'%'",null,null,"'ALL'","'ANALYSE'","'ANALYZE'","'AND'","'ANY'","'ARRAY'","'AS'","'ASC'","'ASYMMETRIC'","'BOTH'","'CASE'","'CAST'","'CHECK'","'COLLATE'","'COLUMN'","'CONSTRAINT'","'CREATE'","'CURRENT_CATALOG'","'CURRENT_DATE'","'CURRENT_ROLE'","'CURRENT_TIME'","'CURRENT_TIMESTAMP'","'CURRENT_USER'","'DEFAULT'","'DEFERRABLE'","'DESC'","'DISTINCT'","'DO'","'ELSE'","'EXCEPT'","'FALSE'","'FETCH'","'FOR'","'FOREIGN'","'FROM'","'GRANT'","'GROUP'","'HAVING'","'IN'","'INITIALLY'","'INTERSECT'","'INTO'","'LATERAL'","'LEADING'","'LIMIT'","'LOCALTIME'","'LOCALTIMESTAMP'","'NOT'","'NULL'","'OFFSET'","'ON'","'ONLY'","'OR'","'ORDER'","'PLACING'","'PRIMARY'","'REFERENCES'","'RETURNING'","'SELECT'","'SESSION_USER'","'SOME'","'SYMMETRIC'","'TABLE'","'THEN'","'TO'","'TRAILING'","'TRUE'","'UNION'","'UNIQUE'","'USER'","'USING'","'VARIADIC'","'WHEN'","'WHERE'","'WINDOW'","'WITH'","'AUTHORIZATION'","'BINARY'","'COLLATION'","'CONCURRENTLY'","'CROSS'","'CURRENT_SCHEMA'","'FREEZE'","'FULL'","'ILIKE'","'INNER'","'IS'","'ISNULL'","'JOIN'","'LEFT'","'LIKE'","'NATURAL'","'NOTNULL'","'OUTER'","'OVER'","'OVERLAPS'","'RIGHT'","'SIMILAR'","'VERBOSE'","'ABORT'","'ABSOLUTE'","'ACCESS'","'ACTION'","'ADD'","'ADMIN'","'AFTER'","'AGGREGATE'","'ALSO'","'ALTER'","'ALWAYS'","'ASSERTION'","'ASSIGNMENT'","'AT'","'ATTRIBUTE'","'BACKWARD'","'BEFORE'","'BEGIN'","'BY'","'CACHE'","'CALLED'","'CASCADE'","'CASCADED'","'CATALOG'","'CHAIN'","'CHARACTERISTICS'","'CHECKPOINT'","'CLASS'","'CLOSE'","'CLUSTER'","'COMMENT'","'COMMENTS'","'COMMIT'","'COMMITTED'","'CONFIGURATION'","'CONNECTION'","'CONSTRAINTS'","'CONTENT'","'CONTINUE'","'CONVERSION'","'COPY'","'COST'","'CSV'","'CURSOR'","'CYCLE'","'DATA'","'DATABASE'","'DAY'","'DEALLOCATE'","'DECLARE'","'DEFAULTS'","'DEFERRED'","'DEFINER'","'DELETE'","'DELIMITER'","'DELIMITERS'","'DICTIONARY'","'DISABLE'","'DISCARD'","'DOCUMENT'","'DOMAIN'","'DOUBLE'","'DROP'","'EACH'","'ENABLE'","'ENCODING'","'ENCRYPTED'","'ENUM'","'ESCAPE'","'EVENT'","'EXCLUDE'","'EXCLUDING'","'EXCLUSIVE'","'EXECUTE'","'EXPLAIN'","'EXTENSION'","'EXTERNAL'","'FAMILY'","'FIRST'","'FOLLOWING'","'FORCE'","'FORWARD'","'FUNCTION'","'FUNCTIONS'","'GLOBAL'","'GRANTED'","'HANDLER'","'HEADER'","'HOLD'","'HOUR'","'IDENTITY'","'IF'","'IMMEDIATE'","'IMMUTABLE'","'IMPLICIT'","'INCLUDING'","'INCREMENT'","'INDEX'","'INDEXES'","'INHERIT'","'INHERITS'","'INLINE'","'INSENSITIVE'","'INSERT'","'INSTEAD'","'INVOKER'","'ISOLATION'","'KEY'","'LABEL'","'LANGUAGE'","'LARGE'","'LAST'","'LEAKPROOF'","'LEVEL'","'LISTEN'","'LOAD'","'LOCAL'","'LOCATION'","'LOCK'","'MAPPING'","'MATCH'","'MATCHED'","'MATERIALIZED'","'MAXVALUE'","'MERGE'","'MINUTE'","'MINVALUE'","'MODE'","'MONTH'","'MOVE'","'NAME'","'NAMES'","'NEXT'","'NO'","'NOTHING'","'NOTIFY'","'NOWAIT'","'NULLS'","'OBJECT'","'OF'","'OFF'","'OIDS'","'OPERATOR'","'OPTION'","'OPTIONS'","'OWNED'","'OWNER'","'PARSER'","'PARTIAL'","'PARTITION'","'PASSING'","'PASSWORD'","'PLANS'","'PRECEDING'","'PREPARE'","'PREPARED'","'PRESERVE'","'PRIOR'","'PRIVILEGES'","'PROCEDURAL'","'PROCEDURE'","'PROGRAM'","'QUOTE'","'RANGE'","'READ'","'REASSIGN'","'RECHECK'","'RECURSIVE'","'REF'","'REFRESH'","'REINDEX'","'RELATIVE'","'RELEASE'","'RENAME'","'REPEATABLE'","'REPLACE'","'REPLICA'","'RESET'","'RESTART'","'RESTRICT'","'RETURNS'","'REVOKE'","'ROLE'","'ROLLBACK'","'ROWS'","'RULE'","'SAVEPOINT'","'SCHEMA'","'SCROLL'","'SEARCH'","'SECOND'","'SECURITY'","'SEQUENCE'","'SEQUENCES'","'SERIALIZABLE'","'SERVER'","'SESSION'","'SET'","'SHARE'","'SHOW'","'SIMPLE'","'SNAPSHOT'","'STABLE'","'STANDALONE'","'START'","'STATEMENT'","'STATISTICS'","'STDIN'","'STDOUT'","'STORAGE'","'STRICT'","'STRIP'","'SYSID'","'SYSTEM'","'TABLES'","'TABLESPACE'","'TEMP'","'TEMPLATE'","'TEMPORARY'","'TEXT'","'TRANSACTION'","'TRIGGER'","'TRUNCATE'","'TRUSTED'","'TYPE'","'TYPES'","'UNBOUNDED'","'UNCOMMITTED'","'UNENCRYPTED'","'UNKNOWN'","'UNLISTEN'","'UNLOGGED'","'UNTIL'","'UPDATE'","'VACUUM'","'VALID'","'VALIDATE'","'VALIDATOR'","'VARYING'","'VERSION'","'VIEW'","'VOLATILE'","'WHITESPACE'","'WITHOUT'","'WORK'","'WRAPPER'","'WRITE'","'XML'","'YEAR'","'YES'","'ZONE'","'BETWEEN'","'BIGINT'","'BIT'","'BOOLEAN'","'CHAR'","'CHARACTER'","'COALESCE'","'DEC'","'DECIMAL'","'EXISTS'","'EXTRACT'","'FLOAT'","'GREATEST'","'INOUT'","'INT'","'INTEGER'","'INTERVAL'","'LEAST'","'NATIONAL'","'NCHAR'","'NONE'","'NULLIF'","'NUMERIC'","'OVERLAY'","'POSITION'","'PRECISION'","'REAL'","'ROW'","'SETOF'","'SMALLINT'","'SUBSTRING'","'TIME'","'TIMESTAMP'","'TREAT'","'TRIM'","'VALUES'","'VARCHAR'","'XMLATTRIBUTES'","'XMLCOMMENT'","'XMLAGG'","'XML_IS_WELL_FORMED'","'XML_IS_WELL_FORMED_DOCUMENT'","'XML_IS_WELL_FORMED_CONTENT'","'XPATH'","'XPATH_EXISTS'","'XMLCONCAT'","'XMLELEMENT'","'XMLEXISTS'","'XMLFOREST'","'XMLPARSE'","'XMLPI'","'XMLROOT'","'XMLSERIALIZE'","'CALL'","'CURRENT'","'ATTACH'","'DETACH'","'EXPRESSION'","'GENERATED'","'LOGGED'","'STORED'","'INCLUDE'","'ROUTINE'","'TRANSFORM'","'IMPORT'","'POLICY'","'METHOD'","'REFERENCING'","'NEW'","'OLD'","'VALUE'","'SUBSCRIPTION'","'PUBLICATION'","'OUT'","'END'","'ROUTINES'","'SCHEMAS'","'PROCEDURES'","'INPUT'","'SUPPORT'","'PARALLEL'","'SQL'","'DEPENDS'","'OVERRIDING'","'CONFLICT'","'SKIP'","'LOCKED'","'TIES'","'ROLLUP'","'CUBE'","'GROUPING'","'SETS'","'TABLESAMPLE'","'ORDINALITY'","'XMLTABLE'","'COLUMNS'","'XMLNAMESPACES'","'ROWTYPE'","'NORMALIZED'","'WITHIN'","'FILTER'","'GROUPS'","'OTHERS'","'NFC'","'NFD'","'NFKC'","'NFKD'","'UESCAPE'","'VIEWS'","'NORMALIZE'","'DUMP'","'PRINT_STRICT_PARAMS'","'VARIABLE_CONFLICT'","'ERROR'","'USE_VARIABLE'","'USE_COLUMN'","'ALIAS'","'CONSTANT'","'PERFORM'","'GET'","'DIAGNOSTICS'","'STACKED'","'ELSIF'","'WHILE'","'REVERSE'","'FOREACH'","'SLICE'","'EXIT'","'RETURN'","'QUERY'","'RAISE'","'SQLSTATE'","'DEBUG'","'LOG'","'INFO'","'NOTICE'","'WARNING'","'EXCEPTION'","'ASSERT'","'LOOP'","'OPEN'","'ABS'","'CBRT'","'CEIL'","'CEILING'","'DEGREES'","'DIV'","'EXP'","'FACTORIAL'","'FLOOR'","'GCD'","'LCM'","'LN'","'LOG10'","'MIN_SCALE'","'MOD'","'PI'","'POWER'","'RADIANS'","'ROUND'","'SCALE'","'SIGN'","'SQRT'","'TRIM_SCALE'","'TRUNC'","'WIDTH_BUCKET'","'RANDOM'","'SETSEED'","'ACOS'","'ACOSD'","'ASIN'","'ASIND'","'ATAN'","'ATAND'","'ATAN2'","'ATAN2D'","'COS'","'COSD'","'COT'","'COTD'","'SIN'","'SIND'","'TAN'","'TAND'","'SINH'","'COSH'","'TANH'","'ASINH'","'ACOSH'","'ATANH'","'BIT_LENGTH'","'CHAR_LENGTH'","'CHARACTER_LENGTH'","'LOWER'","'OCTET_LENGTH'","'UPPER'","'ASCII'","'BTRIM'","'CHR'","'CONCAT'","'CONCAT_WS'","'FORMAT'","'INITCAP'","'LENGTH'","'LPAD'","'LTRIM'","'MD5'","'PARSE_IDENT'","'PG_CLIENT_ENCODING'","'QUOTE_IDENT'","'QUOTE_LITERAL'","'QUOTE_NULLABLE'","'REGEXP_COUNT'","'REGEXP_INSTR'","'REGEXP_LIKE'","'REGEXP_MATCH'","'REGEXP_MATCHES'","'REGEXP_REPLACE'","'REGEXP_SPLIT_TO_ARRAY'","'REGEXP_SPLIT_TO_TABLE'","'REGEXP_SUBSTR'","'REPEAT'","'RPAD'","'RTRIM'","'SPLIT_PART'","'STARTS_WITH'","'STRING_TO_ARRAY'","'STRING_TO_TABLE'","'STRPOS'","'SUBSTR'","'TO_ASCII'","'TO_HEX'","'TRANSLATE'","'UNISTR'","'AGE'","'CLOCK_TIMESTAMP'","'DATE_BIN'","'DATE_PART'","'DATE_TRUNC'","'ISFINITE'","'JUSTIFY_DAYS'","'JUSTIFY_HOURS'","'JUSTIFY_INTERVAL'","'MAKE_DATE'","'MAKE_INTERVAL'","'MAKE_TIME'","'MAKE_TIMESTAMP'","'MAKE_TIMESTAMPTZ'","'NOW'","'STATEMENT_TIMESTAMP'","'TIMEOFDAY'","'TRANSACTION_TIMESTAMP'","'TO_TIMESTAMP'","'TO_CHAR'","'TO_DATE'","'TO_NUMBER'",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"'\\'",null,null,null,null,null,null,null,null,null,"'''"],Vi.symbolicNames=[null,"Dollar","OPEN_PAREN","CLOSE_PAREN","OPEN_BRACKET","CLOSE_BRACKET","COMMA","SEMI","COLON","STAR","EQUAL","DOT","PLUS","MINUS","SLASH","CARET","LT","GT","LESS_LESS","GREATER_GREATER","COLON_EQUALS","LESS_EQUALS","EQUALS_GREATER","GREATER_EQUALS","DOT_DOT","NOT_EQUALS","TYPECAST","PERCENT","PARAM","Operator","ALL","ANALYSE","ANALYZE","AND","ANY","ARRAY","AS","ASC","ASYMMETRIC","BOTH","CASE","CAST","CHECK","COLLATE","COLUMN","CONSTRAINT","CREATE","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","EXCEPT","FALSE_P","FETCH","FOR","FOREIGN","FROM","GRANT","GROUP_P","HAVING","IN_P","INITIALLY","INTERSECT","INTO","LATERAL_P","LEADING","LIMIT","LOCALTIME","LOCALTIMESTAMP","NOT","NULL_P","OFFSET","ON","ONLY","OR","ORDER","PLACING","PRIMARY","REFERENCES","RETURNING","SELECT","SESSION_USER","SOME","SYMMETRIC","TABLE","THEN","TO","TRAILING","TRUE_P","UNION","UNIQUE","USER","USING","VARIADIC","WHEN","WHERE","WINDOW","WITH","AUTHORIZATION","BINARY","COLLATION","CONCURRENTLY","CROSS","CURRENT_SCHEMA","FREEZE","FULL","ILIKE","INNER_P","IS","ISNULL","JOIN","LEFT","LIKE","NATURAL","NOTNULL","OUTER_P","OVER","OVERLAPS","RIGHT","SIMILAR","VERBOSE","ABORT_P","ABSOLUTE_P","ACCESS","ACTION","ADD_P","ADMIN","AFTER","AGGREGATE","ALSO","ALTER","ALWAYS","ASSERTION","ASSIGNMENT","AT","ATTRIBUTE","BACKWARD","BEFORE","BEGIN_P","BY","CACHE","CALLED","CASCADE","CASCADED","CATALOG","CHAIN","CHARACTERISTICS","CHECKPOINT","CLASS","CLOSE","CLUSTER","COMMENT","COMMENTS","COMMIT","COMMITTED","CONFIGURATION","CONNECTION","CONSTRAINTS","CONTENT_P","CONTINUE_P","CONVERSION_P","COPY","COST","CSV","CURSOR","CYCLE","DATA_P","DATABASE","DAY_P","DEALLOCATE","DECLARE","DEFAULTS","DEFERRED","DEFINER","DELETE_P","DELIMITER","DELIMITERS","DICTIONARY","DISABLE_P","DISCARD","DOCUMENT_P","DOMAIN_P","DOUBLE_P","DROP","EACH","ENABLE_P","ENCODING","ENCRYPTED","ENUM_P","ESCAPE","EVENT","EXCLUDE","EXCLUDING","EXCLUSIVE","EXECUTE","EXPLAIN","EXTENSION","EXTERNAL","FAMILY","FIRST_P","FOLLOWING","FORCE","FORWARD","FUNCTION","FUNCTIONS","GLOBAL","GRANTED","HANDLER","HEADER_P","HOLD","HOUR_P","IDENTITY_P","IF_P","IMMEDIATE","IMMUTABLE","IMPLICIT_P","INCLUDING","INCREMENT","INDEX","INDEXES","INHERIT","INHERITS","INLINE_P","INSENSITIVE","INSERT","INSTEAD","INVOKER","ISOLATION","KEY","LABEL","LANGUAGE","LARGE_P","LAST_P","LEAKPROOF","LEVEL","LISTEN","LOAD","LOCAL","LOCATION","LOCK_P","MAPPING","MATCH","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MINUTE_P","MINVALUE","MODE","MONTH_P","MOVE","NAME_P","NAMES","NEXT","NO","NOTHING","NOTIFY","NOWAIT","NULLS_P","OBJECT_P","OF","OFF","OIDS","OPERATOR","OPTION","OPTIONS","OWNED","OWNER","PARSER","PARTIAL","PARTITION","PASSING","PASSWORD","PLANS","PRECEDING","PREPARE","PREPARED","PRESERVE","PRIOR","PRIVILEGES","PROCEDURAL","PROCEDURE","PROGRAM","QUOTE","RANGE","READ","REASSIGN","RECHECK","RECURSIVE","REF","REFRESH","REINDEX","RELATIVE_P","RELEASE","RENAME","REPEATABLE","REPLACE","REPLICA","RESET","RESTART","RESTRICT","RETURNS","REVOKE","ROLE","ROLLBACK","ROWS","RULE","SAVEPOINT","SCHEMA","SCROLL","SEARCH","SECOND_P","SECURITY","SEQUENCE","SEQUENCES","SERIALIZABLE","SERVER","SESSION","SET","SHARE","SHOW","SIMPLE","SNAPSHOT","STABLE","STANDALONE_P","START","STATEMENT","STATISTICS","STDIN","STDOUT","STORAGE","STRICT_P","STRIP_P","SYSID","SYSTEM_P","TABLES","TABLESPACE","TEMP","TEMPLATE","TEMPORARY","TEXT_P","TRANSACTION","TRIGGER","TRUNCATE","TRUSTED","TYPE_P","TYPES_P","UNBOUNDED","UNCOMMITTED","UNENCRYPTED","UNKNOWN","UNLISTEN","UNLOGGED","UNTIL","UPDATE","VACUUM","VALID","VALIDATE","VALIDATOR","VARYING","VERSION_P","VIEW","VOLATILE","WHITESPACE_P","WITHOUT","WORK","WRAPPER","WRITE","XML_P","YEAR_P","YES_P","ZONE","BETWEEN","BIGINT","BIT","BOOLEAN_P","CHAR_P","CHARACTER","COALESCE","DEC","DECIMAL_P","EXISTS","EXTRACT","FLOAT_P","GREATEST","INOUT","INT_P","INTEGER","INTERVAL","LEAST","NATIONAL","NCHAR","NONE","NULLIF","NUMERIC","OVERLAY","POSITION","PRECISION","REAL","ROW","SETOF","SMALLINT","SUBSTRING","TIME","TIMESTAMP","TREAT","TRIM","VALUES","VARCHAR","XMLATTRIBUTES","XMLCOMMENT","XMLAGG","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_DOCUMENT","XML_IS_WELL_FORMED_CONTENT","XPATH","XPATH_EXISTS","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","CALL","CURRENT_P","ATTACH","DETACH","EXPRESSION","GENERATED","LOGGED","STORED","INCLUDE","ROUTINE","TRANSFORM","IMPORT_P","POLICY","METHOD","REFERENCING","NEW","OLD","VALUE_P","SUBSCRIPTION","PUBLICATION","OUT_P","END_P","ROUTINES","SCHEMAS","PROCEDURES","INPUT_P","SUPPORT","PARALLEL","SQL_P","DEPENDS","OVERRIDING","CONFLICT","SKIP_P","LOCKED","TIES","ROLLUP","CUBE","GROUPING","SETS","TABLESAMPLE","ORDINALITY","XMLTABLE","COLUMNS","XMLNAMESPACES","ROWTYPE","NORMALIZED","WITHIN","FILTER","GROUPS","OTHERS","NFC","NFD","NFKC","NFKD","UESCAPE","VIEWS","NORMALIZE","DUMP","PRINT_STRICT_PARAMS","VARIABLE_CONFLICT","ERROR","USE_VARIABLE","USE_COLUMN","ALIAS","CONSTANT","PERFORM","GET","DIAGNOSTICS","STACKED","ELSIF","WHILE","REVERSE","FOREACH","SLICE","EXIT","RETURN","QUERY","RAISE","SQLSTATE","DEBUG","LOG","INFO","NOTICE","WARNING","EXCEPTION","ASSERT","LOOP","OPEN","ABS","CBRT","CEIL","CEILING","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","ROUND","SCALE","SIGN","SQRT","TRIM_SCALE","TRUNC","WIDTH_BUCKET","RANDOM","SETSEED","ACOS","ACOSD","ASIN","ASIND","ATAN","ATAND","ATAN2","ATAN2D","COS","COSD","COT","COTD","SIN","SIND","TAN","TAND","SINH","COSH","TANH","ASINH","ACOSH","ATANH","BIT_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","LOWER","OCTET_LENGTH","UPPER","ASCII","BTRIM","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LENGTH","LPAD","LTRIM","MD5","PARSE_IDENT","PG_CLIENT_ENCODING","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REGEXP_SUBSTR","REPEAT","RPAD","RTRIM","SPLIT_PART","STARTS_WITH","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","TO_ASCII","TO_HEX","TRANSLATE","UNISTR","AGE","CLOCK_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","STATEMENT_TIMESTAMP","TIMEOFDAY","TRANSACTION_TIMESTAMP","TO_TIMESTAMP","TO_CHAR","TO_DATE","TO_NUMBER","Identifier","QuotedIdentifier","UnterminatedQuotedIdentifier","InvalidQuotedIdentifier","InvalidUnterminatedQuotedIdentifier","UnicodeQuotedIdentifier","UnterminatedUnicodeQuotedIdentifier","InvalidUnicodeQuotedIdentifier","InvalidUnterminatedUnicodeQuotedIdentifier","StringConstant","UnterminatedStringConstant","UnicodeEscapeStringConstant","UnterminatedUnicodeEscapeStringConstant","BeginDollarStringConstant","BinaryStringConstant","UnterminatedBinaryStringConstant","InvalidBinaryStringConstant","InvalidUnterminatedBinaryStringConstant","HexadecimalStringConstant","UnterminatedHexadecimalStringConstant","InvalidHexadecimalStringConstant","InvalidUnterminatedHexadecimalStringConstant","Integral","NumericFail","Numeric","PLSQLVARIABLENAME","PLSQLIDENTIFIER","Whitespace","Newline","LineComment","BlockComment","UnterminatedBlockComment","MetaCommand","EndMetaCommand","ErrorCharacter","EscapeStringConstant","UnterminatedEscapeStringConstant","InvalidEscapeStringConstant","InvalidUnterminatedEscapeStringConstant","AfterEscapeStringConstantMode_NotContinued","AfterEscapeStringConstantWithNewlineMode_NotContinued","DollarText","EndDollarStringConstant","AfterEscapeStringConstantWithNewlineMode_Continued"],Vi.modeNames=["DEFAULT_MODE","EscapeStringConstantMode","AfterEscapeStringConstantMode","AfterEscapeStringConstantWithNewlineMode","DollarQuotedStringMode"],Vi.ruleNames=["Dollar","OPEN_PAREN","CLOSE_PAREN","OPEN_BRACKET","CLOSE_BRACKET","COMMA","SEMI","COLON","STAR","EQUAL","DOT","PLUS","MINUS","SLASH","CARET","LT","GT","LESS_LESS","GREATER_GREATER","COLON_EQUALS","LESS_EQUALS","EQUALS_GREATER","GREATER_EQUALS","DOT_DOT","NOT_EQUALS","TYPECAST","PERCENT","PARAM","Operator","OperatorEndingWithPlusMinus","OperatorCharacter","OperatorCharacterNotAllowPlusMinusAtEnd","OperatorCharacterAllowPlusMinusAtEnd","ALL","ANALYSE","ANALYZE","AND","ANY","ARRAY","AS","ASC","ASYMMETRIC","BOTH","CASE","CAST","CHECK","COLLATE","COLUMN","CONSTRAINT","CREATE","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","EXCEPT","FALSE_P","FETCH","FOR","FOREIGN","FROM","GRANT","GROUP_P","HAVING","IN_P","INITIALLY","INTERSECT","INTO","LATERAL_P","LEADING","LIMIT","LOCALTIME","LOCALTIMESTAMP","NOT","NULL_P","OFFSET","ON","ONLY","OR","ORDER","PLACING","PRIMARY","REFERENCES","RETURNING","SELECT","SESSION_USER","SOME","SYMMETRIC","TABLE","THEN","TO","TRAILING","TRUE_P","UNION","UNIQUE","USER","USING","VARIADIC","WHEN","WHERE","WINDOW","WITH","AUTHORIZATION","BINARY","COLLATION","CONCURRENTLY","CROSS","CURRENT_SCHEMA","FREEZE","FULL","ILIKE","INNER_P","IS","ISNULL","JOIN","LEFT","LIKE","NATURAL","NOTNULL","OUTER_P","OVER","OVERLAPS","RIGHT","SIMILAR","VERBOSE","ABORT_P","ABSOLUTE_P","ACCESS","ACTION","ADD_P","ADMIN","AFTER","AGGREGATE","ALSO","ALTER","ALWAYS","ASSERTION","ASSIGNMENT","AT","ATTRIBUTE","BACKWARD","BEFORE","BEGIN_P","BY","CACHE","CALLED","CASCADE","CASCADED","CATALOG","CHAIN","CHARACTERISTICS","CHECKPOINT","CLASS","CLOSE","CLUSTER","COMMENT","COMMENTS","COMMIT","COMMITTED","CONFIGURATION","CONNECTION","CONSTRAINTS","CONTENT_P","CONTINUE_P","CONVERSION_P","COPY","COST","CSV","CURSOR","CYCLE","DATA_P","DATABASE","DAY_P","DEALLOCATE","DECLARE","DEFAULTS","DEFERRED","DEFINER","DELETE_P","DELIMITER","DELIMITERS","DICTIONARY","DISABLE_P","DISCARD","DOCUMENT_P","DOMAIN_P","DOUBLE_P","DROP","EACH","ENABLE_P","ENCODING","ENCRYPTED","ENUM_P","ESCAPE","EVENT","EXCLUDE","EXCLUDING","EXCLUSIVE","EXECUTE","EXPLAIN","EXTENSION","EXTERNAL","FAMILY","FIRST_P","FOLLOWING","FORCE","FORWARD","FUNCTION","FUNCTIONS","GLOBAL","GRANTED","HANDLER","HEADER_P","HOLD","HOUR_P","IDENTITY_P","IF_P","IMMEDIATE","IMMUTABLE","IMPLICIT_P","INCLUDING","INCREMENT","INDEX","INDEXES","INHERIT","INHERITS","INLINE_P","INSENSITIVE","INSERT","INSTEAD","INVOKER","ISOLATION","KEY","LABEL","LANGUAGE","LARGE_P","LAST_P","LEAKPROOF","LEVEL","LISTEN","LOAD","LOCAL","LOCATION","LOCK_P","MAPPING","MATCH","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MINUTE_P","MINVALUE","MODE","MONTH_P","MOVE","NAME_P","NAMES","NEXT","NO","NOTHING","NOTIFY","NOWAIT","NULLS_P","OBJECT_P","OF","OFF","OIDS","OPERATOR","OPTION","OPTIONS","OWNED","OWNER","PARSER","PARTIAL","PARTITION","PASSING","PASSWORD","PLANS","PRECEDING","PREPARE","PREPARED","PRESERVE","PRIOR","PRIVILEGES","PROCEDURAL","PROCEDURE","PROGRAM","QUOTE","RANGE","READ","REASSIGN","RECHECK","RECURSIVE","REF","REFRESH","REINDEX","RELATIVE_P","RELEASE","RENAME","REPEATABLE","REPLACE","REPLICA","RESET","RESTART","RESTRICT","RETURNS","REVOKE","ROLE","ROLLBACK","ROWS","RULE","SAVEPOINT","SCHEMA","SCROLL","SEARCH","SECOND_P","SECURITY","SEQUENCE","SEQUENCES","SERIALIZABLE","SERVER","SESSION","SET","SHARE","SHOW","SIMPLE","SNAPSHOT","STABLE","STANDALONE_P","START","STATEMENT","STATISTICS","STDIN","STDOUT","STORAGE","STRICT_P","STRIP_P","SYSID","SYSTEM_P","TABLES","TABLESPACE","TEMP","TEMPLATE","TEMPORARY","TEXT_P","TRANSACTION","TRIGGER","TRUNCATE","TRUSTED","TYPE_P","TYPES_P","UNBOUNDED","UNCOMMITTED","UNENCRYPTED","UNKNOWN","UNLISTEN","UNLOGGED","UNTIL","UPDATE","VACUUM","VALID","VALIDATE","VALIDATOR","VARYING","VERSION_P","VIEW","VOLATILE","WHITESPACE_P","WITHOUT","WORK","WRAPPER","WRITE","XML_P","YEAR_P","YES_P","ZONE","BETWEEN","BIGINT","BIT","BOOLEAN_P","CHAR_P","CHARACTER","COALESCE","DEC","DECIMAL_P","EXISTS","EXTRACT","FLOAT_P","GREATEST","INOUT","INT_P","INTEGER","INTERVAL","LEAST","NATIONAL","NCHAR","NONE","NULLIF","NUMERIC","OVERLAY","POSITION","PRECISION","REAL","ROW","SETOF","SMALLINT","SUBSTRING","TIME","TIMESTAMP","TREAT","TRIM","VALUES","VARCHAR","XMLATTRIBUTES","XMLCOMMENT","XMLAGG","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_DOCUMENT","XML_IS_WELL_FORMED_CONTENT","XPATH","XPATH_EXISTS","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","CALL","CURRENT_P","ATTACH","DETACH","EXPRESSION","GENERATED","LOGGED","STORED","INCLUDE","ROUTINE","TRANSFORM","IMPORT_P","POLICY","METHOD","REFERENCING","NEW","OLD","VALUE_P","SUBSCRIPTION","PUBLICATION","OUT_P","END_P","ROUTINES","SCHEMAS","PROCEDURES","INPUT_P","SUPPORT","PARALLEL","SQL_P","DEPENDS","OVERRIDING","CONFLICT","SKIP_P","LOCKED","TIES","ROLLUP","CUBE","GROUPING","SETS","TABLESAMPLE","ORDINALITY","XMLTABLE","COLUMNS","XMLNAMESPACES","ROWTYPE","NORMALIZED","WITHIN","FILTER","GROUPS","OTHERS","NFC","NFD","NFKC","NFKD","UESCAPE","VIEWS","NORMALIZE","DUMP","PRINT_STRICT_PARAMS","VARIABLE_CONFLICT","ERROR","USE_VARIABLE","USE_COLUMN","ALIAS","CONSTANT","PERFORM","GET","DIAGNOSTICS","STACKED","ELSIF","WHILE","REVERSE","FOREACH","SLICE","EXIT","RETURN","QUERY","RAISE","SQLSTATE","DEBUG","LOG","INFO","NOTICE","WARNING","EXCEPTION","ASSERT","LOOP","OPEN","ABS","CBRT","CEIL","CEILING","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","ROUND","SCALE","SIGN","SQRT","TRIM_SCALE","TRUNC","WIDTH_BUCKET","RANDOM","SETSEED","ACOS","ACOSD","ASIN","ASIND","ATAN","ATAND","ATAN2","ATAN2D","COS","COSD","COT","COTD","SIN","SIND","TAN","TAND","SINH","COSH","TANH","ASINH","ACOSH","ATANH","BIT_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","LOWER","OCTET_LENGTH","UPPER","ASCII","BTRIM","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LENGTH","LPAD","LTRIM","MD5","PARSE_IDENT","PG_CLIENT_ENCODING","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REGEXP_SUBSTR","REPEAT","RPAD","RTRIM","SPLIT_PART","STARTS_WITH","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","TO_ASCII","TO_HEX","TRANSLATE","UNISTR","AGE","CLOCK_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","STATEMENT_TIMESTAMP","TIMEOFDAY","TRANSACTION_TIMESTAMP","TO_TIMESTAMP","TO_CHAR","TO_DATE","TO_NUMBER","Identifier","IdentifierStartChar","IdentifierChar","StrictIdentifierChar","QuotedIdentifier","UnterminatedQuotedIdentifier","InvalidQuotedIdentifier","InvalidUnterminatedQuotedIdentifier","UnicodeQuotedIdentifier","UnterminatedUnicodeQuotedIdentifier","InvalidUnicodeQuotedIdentifier","InvalidUnterminatedUnicodeQuotedIdentifier","StringConstant","UnterminatedStringConstant","BeginEscapeStringConstant","UnicodeEscapeStringConstant","UnterminatedUnicodeEscapeStringConstant","BeginDollarStringConstant","Tag","BinaryStringConstant","UnterminatedBinaryStringConstant","InvalidBinaryStringConstant","InvalidUnterminatedBinaryStringConstant","HexadecimalStringConstant","UnterminatedHexadecimalStringConstant","InvalidHexadecimalStringConstant","InvalidUnterminatedHexadecimalStringConstant","Integral","NumericFail","Numeric","Digits","PLSQLVARIABLENAME","PLSQLIDENTIFIER","Whitespace","Newline","LineComment","BlockComment","UnterminatedBlockComment","MetaCommand","EndMetaCommand","ErrorCharacter","EscapeStringConstant","UnterminatedEscapeStringConstant","EscapeStringText","InvalidEscapeStringConstant","InvalidUnterminatedEscapeStringConstant","InvalidEscapeStringText","AfterEscapeStringConstantMode_Whitespace","AfterEscapeStringConstantMode_Newline","AfterEscapeStringConstantMode_NotContinued","AfterEscapeStringConstantWithNewlineMode_Whitespace","AfterEscapeStringConstantWithNewlineMode_Newline","AfterEscapeStringConstantWithNewlineMode_Continued","AfterEscapeStringConstantWithNewlineMode_NotContinued","DollarText","EndDollarStringConstant"],Vi._serializedATN=[4,0,679,6791,6,-1,6,-1,6,-1,6,-1,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,2,265,7,265,2,266,7,266,2,267,7,267,2,268,7,268,2,269,7,269,2,270,7,270,2,271,7,271,2,272,7,272,2,273,7,273,2,274,7,274,2,275,7,275,2,276,7,276,2,277,7,277,2,278,7,278,2,279,7,279,2,280,7,280,2,281,7,281,2,282,7,282,2,283,7,283,2,284,7,284,2,285,7,285,2,286,7,286,2,287,7,287,2,288,7,288,2,289,7,289,2,290,7,290,2,291,7,291,2,292,7,292,2,293,7,293,2,294,7,294,2,295,7,295,2,296,7,296,2,297,7,297,2,298,7,298,2,299,7,299,2,300,7,300,2,301,7,301,2,302,7,302,2,303,7,303,2,304,7,304,2,305,7,305,2,306,7,306,2,307,7,307,2,308,7,308,2,309,7,309,2,310,7,310,2,311,7,311,2,312,7,312,2,313,7,313,2,314,7,314,2,315,7,315,2,316,7,316,2,317,7,317,2,318,7,318,2,319,7,319,2,320,7,320,2,321,7,321,2,322,7,322,2,323,7,323,2,324,7,324,2,325,7,325,2,326,7,326,2,327,7,327,2,328,7,328,2,329,7,329,2,330,7,330,2,331,7,331,2,332,7,332,2,333,7,333,2,334,7,334,2,335,7,335,2,336,7,336,2,337,7,337,2,338,7,338,2,339,7,339,2,340,7,340,2,341,7,341,2,342,7,342,2,343,7,343,2,344,7,344,2,345,7,345,2,346,7,346,2,347,7,347,2,348,7,348,2,349,7,349,2,350,7,350,2,351,7,351,2,352,7,352,2,353,7,353,2,354,7,354,2,355,7,355,2,356,7,356,2,357,7,357,2,358,7,358,2,359,7,359,2,360,7,360,2,361,7,361,2,362,7,362,2,363,7,363,2,364,7,364,2,365,7,365,2,366,7,366,2,367,7,367,2,368,7,368,2,369,7,369,2,370,7,370,2,371,7,371,2,372,7,372,2,373,7,373,2,374,7,374,2,375,7,375,2,376,7,376,2,377,7,377,2,378,7,378,2,379,7,379,2,380,7,380,2,381,7,381,2,382,7,382,2,383,7,383,2,384,7,384,2,385,7,385,2,386,7,386,2,387,7,387,2,388,7,388,2,389,7,389,2,390,7,390,2,391,7,391,2,392,7,392,2,393,7,393,2,394,7,394,2,395,7,395,2,396,7,396,2,397,7,397,2,398,7,398,2,399,7,399,2,400,7,400,2,401,7,401,2,402,7,402,2,403,7,403,2,404,7,404,2,405,7,405,2,406,7,406,2,407,7,407,2,408,7,408,2,409,7,409,2,410,7,410,2,411,7,411,2,412,7,412,2,413,7,413,2,414,7,414,2,415,7,415,2,416,7,416,2,417,7,417,2,418,7,418,2,419,7,419,2,420,7,420,2,421,7,421,2,422,7,422,2,423,7,423,2,424,7,424,2,425,7,425,2,426,7,426,2,427,7,427,2,428,7,428,2,429,7,429,2,430,7,430,2,431,7,431,2,432,7,432,2,433,7,433,2,434,7,434,2,435,7,435,2,436,7,436,2,437,7,437,2,438,7,438,2,439,7,439,2,440,7,440,2,441,7,441,2,442,7,442,2,443,7,443,2,444,7,444,2,445,7,445,2,446,7,446,2,447,7,447,2,448,7,448,2,449,7,449,2,450,7,450,2,451,7,451,2,452,7,452,2,453,7,453,2,454,7,454,2,455,7,455,2,456,7,456,2,457,7,457,2,458,7,458,2,459,7,459,2,460,7,460,2,461,7,461,2,462,7,462,2,463,7,463,2,464,7,464,2,465,7,465,2,466,7,466,2,467,7,467,2,468,7,468,2,469,7,469,2,470,7,470,2,471,7,471,2,472,7,472,2,473,7,473,2,474,7,474,2,475,7,475,2,476,7,476,2,477,7,477,2,478,7,478,2,479,7,479,2,480,7,480,2,481,7,481,2,482,7,482,2,483,7,483,2,484,7,484,2,485,7,485,2,486,7,486,2,487,7,487,2,488,7,488,2,489,7,489,2,490,7,490,2,491,7,491,2,492,7,492,2,493,7,493,2,494,7,494,2,495,7,495,2,496,7,496,2,497,7,497,2,498,7,498,2,499,7,499,2,500,7,500,2,501,7,501,2,502,7,502,2,503,7,503,2,504,7,504,2,505,7,505,2,506,7,506,2,507,7,507,2,508,7,508,2,509,7,509,2,510,7,510,2,511,7,511,2,512,7,512,2,513,7,513,2,514,7,514,2,515,7,515,2,516,7,516,2,517,7,517,2,518,7,518,2,519,7,519,2,520,7,520,2,521,7,521,2,522,7,522,2,523,7,523,2,524,7,524,2,525,7,525,2,526,7,526,2,527,7,527,2,528,7,528,2,529,7,529,2,530,7,530,2,531,7,531,2,532,7,532,2,533,7,533,2,534,7,534,2,535,7,535,2,536,7,536,2,537,7,537,2,538,7,538,2,539,7,539,2,540,7,540,2,541,7,541,2,542,7,542,2,543,7,543,2,544,7,544,2,545,7,545,2,546,7,546,2,547,7,547,2,548,7,548,2,549,7,549,2,550,7,550,2,551,7,551,2,552,7,552,2,553,7,553,2,554,7,554,2,555,7,555,2,556,7,556,2,557,7,557,2,558,7,558,2,559,7,559,2,560,7,560,2,561,7,561,2,562,7,562,2,563,7,563,2,564,7,564,2,565,7,565,2,566,7,566,2,567,7,567,2,568,7,568,2,569,7,569,2,570,7,570,2,571,7,571,2,572,7,572,2,573,7,573,2,574,7,574,2,575,7,575,2,576,7,576,2,577,7,577,2,578,7,578,2,579,7,579,2,580,7,580,2,581,7,581,2,582,7,582,2,583,7,583,2,584,7,584,2,585,7,585,2,586,7,586,2,587,7,587,2,588,7,588,2,589,7,589,2,590,7,590,2,591,7,591,2,592,7,592,2,593,7,593,2,594,7,594,2,595,7,595,2,596,7,596,2,597,7,597,2,598,7,598,2,599,7,599,2,600,7,600,2,601,7,601,2,602,7,602,2,603,7,603,2,604,7,604,2,605,7,605,2,606,7,606,2,607,7,607,2,608,7,608,2,609,7,609,2,610,7,610,2,611,7,611,2,612,7,612,2,613,7,613,2,614,7,614,2,615,7,615,2,616,7,616,2,617,7,617,2,618,7,618,2,619,7,619,2,620,7,620,2,621,7,621,2,622,7,622,2,623,7,623,2,624,7,624,2,625,7,625,2,626,7,626,2,627,7,627,2,628,7,628,2,629,7,629,2,630,7,630,2,631,7,631,2,632,7,632,2,633,7,633,2,634,7,634,2,635,7,635,2,636,7,636,2,637,7,637,2,638,7,638,2,639,7,639,2,640,7,640,2,641,7,641,2,642,7,642,2,643,7,643,2,644,7,644,2,645,7,645,2,646,7,646,2,647,7,647,2,648,7,648,2,649,7,649,2,650,7,650,2,651,7,651,2,652,7,652,2,653,7,653,2,654,7,654,2,655,7,655,2,656,7,656,2,657,7,657,2,658,7,658,2,659,7,659,2,660,7,660,2,661,7,661,2,662,7,662,2,663,7,663,2,664,7,664,2,665,7,665,2,666,7,666,2,667,7,667,2,668,7,668,2,669,7,669,2,670,7,670,2,671,7,671,2,672,7,672,2,673,7,673,2,674,7,674,2,675,7,675,2,676,7,676,2,677,7,677,2,678,7,678,2,679,7,679,2,680,7,680,2,681,7,681,2,682,7,682,2,683,7,683,2,684,7,684,2,685,7,685,2,686,7,686,2,687,7,687,2,688,7,688,2,689,7,689,2,690,7,690,2,691,7,691,2,692,7,692,2,693,7,693,2,694,7,694,1,0,1,0,1,1,1,1,1,2,1,2,1,3,1,3,1,4,1,4,1,5,1,5,1,6,1,6,1,7,1,7,1,8,1,8,1,9,1,9,1,10,1,10,1,11,1,11,1,12,1,12,1,13,1,13,1,14,1,14,1,15,1,15,1,16,1,16,1,17,1,17,1,17,1,18,1,18,1,18,1,19,1,19,1,19,1,20,1,20,1,20,1,21,1,21,1,21,1,22,1,22,1,22,1,23,1,23,1,23,1,24,1,24,1,24,1,25,1,25,1,25,1,26,1,26,1,27,1,27,4,27,1461,8,27,11,27,12,27,1462,1,28,1,28,1,28,1,28,4,28,1469,8,28,11,28,12,28,1470,1,28,1,28,1,28,3,28,1476,8,28,1,28,1,28,4,28,1480,8,28,11,28,12,28,1481,1,28,3,28,1485,8,28,1,28,1,28,1,29,1,29,1,29,1,29,1,29,5,29,1494,8,29,10,29,12,29,1497,9,29,1,29,1,29,3,29,1501,8,29,1,29,1,29,1,29,4,29,1506,8,29,11,29,12,29,1507,1,29,1,29,1,30,1,30,1,31,1,31,1,32,1,32,1,33,1,33,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,36,1,36,1,36,1,36,1,37,1,37,1,37,1,37,1,38,1,38,1,38,1,38,1,38,1,38,1,39,1,39,1,39,1,40,1,40,1,40,1,40,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,42,1,42,1,42,1,42,1,42,1,43,1,43,1,43,1,43,1,43,1,44,1,44,1,44,1,44,1,44,1,45,1,45,1,45,1,45,1,45,1,45,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,58,1,58,1,58,1,58,1,58,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,60,1,60,1,60,1,61,1,61,1,61,1,61,1,61,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,63,1,63,1,63,1,63,1,63,1,63,1,64,1,64,1,64,1,64,1,64,1,64,1,65,1,65,1,65,1,65,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,67,1,67,1,67,1,67,1,67,1,68,1,68,1,68,1,68,1,68,1,68,1,69,1,69,1,69,1,69,1,69,1,69,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,74,1,74,1,74,1,74,1,74,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,77,1,77,1,77,1,77,1,77,1,77,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,80,1,80,1,80,1,80,1,81,1,81,1,81,1,81,1,81,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,83,1,83,1,83,1,84,1,84,1,84,1,84,1,84,1,85,1,85,1,85,1,86,1,86,1,86,1,86,1,86,1,86,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,89,1,89,1,89,1,89,1,89,1,89,1,89,1,89,1,89,1,89,1,89,1,90,1,90,1,90,1,90,1,90,1,90,1,90,1,90,1,90,1,90,1,91,1,91,1,91,1,91,1,91,1,91,1,91,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,93,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,95,1,95,1,95,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,1,97,1,97,1,97,1,98,1,98,1,98,1,98,1,98,1,98,1,98,1,98,1,98,1,99,1,99,1,99,1,99,1,99,1,100,1,100,1,100,1,100,1,100,1,100,1,101,1,101,1,101,1,101,1,101,1,101,1,101,1,102,1,102,1,102,1,102,1,102,1,103,1,103,1,103,1,103,1,103,1,103,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,105,1,105,1,105,1,105,1,105,1,106,1,106,1,106,1,106,1,106,1,106,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,108,1,108,1,108,1,108,1,108,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,113,1,113,1,113,1,113,1,113,1,113,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,115,1,115,1,115,1,115,1,115,1,115,1,115,1,116,1,116,1,116,1,116,1,116,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,119,1,119,1,119,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,121,1,121,1,121,1,121,1,121,1,122,1,122,1,122,1,122,1,122,1,123,1,123,1,123,1,123,1,123,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,126,1,126,1,126,1,126,1,126,1,126,1,127,1,127,1,127,1,127,1,127,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,129,1,129,1,129,1,129,1,129,1,129,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,132,1,132,1,132,1,132,1,132,1,132,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,134,1,134,1,134,1,134,1,134,1,134,1,134,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,136,1,136,1,136,1,136,1,137,1,137,1,137,1,137,1,137,1,137,1,138,1,138,1,138,1,138,1,138,1,138,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,140,1,140,1,140,1,140,1,140,1,141,1,141,1,141,1,141,1,141,1,141,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,144,1,144,1,144,1,144,1,144,1,144,1,144,1,144,1,144,1,144,1,144,1,145,1,145,1,145,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,148,1,148,1,148,1,148,1,148,1,148,1,148,1,149,1,149,1,149,1,149,1,149,1,149,1,150,1,150,1,150,1,151,1,151,1,151,1,151,1,151,1,151,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,154,1,154,1,154,1,154,1,154,1,154,1,154,1,154,1,154,1,155,1,155,1,155,1,155,1,155,1,155,1,155,1,155,1,156,1,156,1,156,1,156,1,156,1,156,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,159,1,159,1,159,1,159,1,159,1,159,1,160,1,160,1,160,1,160,1,160,1,160,1,161,1,161,1,161,1,161,1,161,1,161,1,161,1,161,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,172,1,172,1,172,1,172,1,172,1,173,1,173,1,173,1,173,1,173,1,174,1,174,1,174,1,174,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,176,1,176,1,176,1,176,1,176,1,176,1,177,1,177,1,177,1,177,1,177,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,179,1,179,1,179,1,179,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,184,1,184,1,184,1,184,1,184,1,184,1,184,1,184,1,185,1,185,1,185,1,185,1,185,1,185,1,185,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,189,1,189,1,189,1,189,1,189,1,189,1,189,1,189,1,190,1,190,1,190,1,190,1,190,1,190,1,190,1,190,1,191,1,191,1,191,1,191,1,191,1,191,1,191,1,191,1,191,1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,194,1,194,1,194,1,194,1,194,1,195,1,195,1,195,1,195,1,195,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,199,1,199,1,199,1,199,1,199,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,201,1,201,1,201,1,201,1,201,1,201,1,202,1,202,1,202,1,202,1,202,1,202,1,202,1,202,1,203,1,203,1,203,1,203,1,203,1,203,1,203,1,203,1,203,1,203,1,204,1,204,1,204,1,204,1,204,1,204,1,204,1,204,1,204,1,204,1,205,1,205,1,205,1,205,1,205,1,205,1,205,1,205,1,206,1,206,1,206,1,206,1,206,1,206,1,206,1,206,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,208,1,208,1,208,1,208,1,208,1,208,1,208,1,208,1,208,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,210,1,210,1,210,1,210,1,210,1,210,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,212,1,212,1,212,1,212,1,212,1,212,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,216,1,216,1,216,1,216,1,216,1,216,1,216,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,219,1,219,1,219,1,219,1,219,1,219,1,219,1,220,1,220,1,220,1,220,1,220,1,221,1,221,1,221,1,221,1,221,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,223,1,223,1,223,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,228,1,228,1,228,1,228,1,228,1,228,1,228,1,228,1,228,1,228,1,229,1,229,1,229,1,229,1,229,1,229,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,231,1,231,1,231,1,231,1,231,1,231,1,231,1,231,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,235,1,235,1,235,1,235,1,235,1,235,1,235,1,236,1,236,1,236,1,236,1,236,1,236,1,236,1,236,1,237,1,237,1,237,1,237,1,237,1,237,1,237,1,237,1,238,1,238,1,238,1,238,1,238,1,238,1,238,1,238,1,238,1,238,1,239,1,239,1,239,1,239,1,240,1,240,1,240,1,240,1,240,1,240,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,242,1,242,1,242,1,242,1,242,1,242,1,243,1,243,1,243,1,243,1,243,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,245,1,245,1,245,1,245,1,245,1,245,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,247,1,247,1,247,1,247,1,247,1,248,1,248,1,248,1,248,1,248,1,248,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,250,1,250,1,250,1,250,1,250,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,252,1,252,1,252,1,252,1,252,1,252,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,256,1,256,1,256,1,256,1,256,1,256,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,259,1,259,1,259,1,259,1,259,1,260,1,260,1,260,1,260,1,260,1,260,1,261,1,261,1,261,1,261,1,261,1,262,1,262,1,262,1,262,1,262,1,263,1,263,1,263,1,263,1,263,1,263,1,264,1,264,1,264,1,264,1,264,1,265,1,265,1,265,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,269,1,269,1,269,1,269,1,269,1,269,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,271,1,271,1,271,1,272,1,272,1,272,1,272,1,273,1,273,1,273,1,273,1,273,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,277,1,277,1,277,1,277,1,277,1,277,1,278,1,278,1,278,1,278,1,278,1,278,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,282,1,282,1,282,1,282,1,282,1,282,1,282,1,282,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,284,1,284,1,284,1,284,1,284,1,284,1,285,1,285,1,285,1,285,1,285,1,285,1,285,1,285,1,285,1,285,1,286,1,286,1,286,1,286,1,286,1,286,1,286,1,286,1,287,1,287,1,287,1,287,1,287,1,287,1,287,1,287,1,287,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,289,1,289,1,289,1,289,1,289,1,289,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,294,1,294,1,294,1,294,1,294,1,294,1,295,1,295,1,295,1,295,1,295,1,295,1,296,1,296,1,296,1,296,1,296,1,297,1,297,1,297,1,297,1,297,1,297,1,297,1,297,1,297,1,298,1,298,1,298,1,298,1,298,1,298,1,298,1,298,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,300,1,300,1,300,1,300,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,308,1,308,1,308,1,308,1,308,1,308,1,308,1,308,1,309,1,309,1,309,1,309,1,309,1,309,1,310,1,310,1,310,1,310,1,310,1,310,1,310,1,310,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,314,1,314,1,314,1,314,1,314,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,316,1,316,1,316,1,316,1,316,1,317,1,317,1,317,1,317,1,317,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,320,1,320,1,320,1,320,1,320,1,320,1,320,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,324,1,324,1,324,1,324,1,324,1,324,1,324,1,324,1,324,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,329,1,329,1,329,1,329,1,330,1,330,1,330,1,330,1,330,1,330,1,331,1,331,1,331,1,331,1,331,1,332,1,332,1,332,1,332,1,332,1,332,1,332,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,334,1,334,1,334,1,334,1,334,1,334,1,334,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,336,1,336,1,336,1,336,1,336,1,336,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,339,1,339,1,339,1,339,1,339,1,339,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,343,1,343,1,343,1,343,1,343,1,343,1,344,1,344,1,344,1,344,1,344,1,344,1,345,1,345,1,345,1,345,1,345,1,345,1,345,1,346,1,346,1,346,1,346,1,346,1,346,1,346,1,347,1,347,1,347,1,347,1,347,1,347,1,347,1,347,1,347,1,347,1,347,1,348,1,348,1,348,1,348,1,348,1,349,1,349,1,349,1,349,1,349,1,349,1,349,1,349,1,349,1,350,1,350,1,350,1,350,1,350,1,350,1,350,1,350,1,350,1,350,1,351,1,351,1,351,1,351,1,351,1,352,1,352,1,352,1,352,1,352,1,352,1,352,1,352,1,352,1,352,1,352,1,352,1,353,1,353,1,353,1,353,1,353,1,353,1,353,1,353,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,355,1,355,1,355,1,355,1,355,1,355,1,355,1,355,1,356,1,356,1,356,1,356,1,356,1,357,1,357,1,357,1,357,1,357,1,357,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,363,1,363,1,363,1,363,1,363,1,363,1,363,1,363,1,363,1,364,1,364,1,364,1,364,1,364,1,364,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,367,1,367,1,367,1,367,1,367,1,367,1,368,1,368,1,368,1,368,1,368,1,368,1,368,1,368,1,368,1,369,1,369,1,369,1,369,1,369,1,369,1,369,1,369,1,369,1,369,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,372,1,372,1,372,1,372,1,372,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,376,1,376,1,376,1,376,1,376,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,378,1,378,1,378,1,378,1,378,1,378,1,379,1,379,1,379,1,379,1,380,1,380,1,380,1,380,1,380,1,381,1,381,1,381,1,381,1,382,1,382,1,382,1,382,1,382,1,383,1,383,1,383,1,383,1,383,1,383,1,383,1,383,1,384,1,384,1,384,1,384,1,384,1,384,1,384,1,385,1,385,1,385,1,385,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,387,1,387,1,387,1,387,1,387,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,390,1,390,1,390,1,390,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,394,1,394,1,394,1,394,1,394,1,394,1,395,1,395,1,395,1,395,1,395,1,395,1,395,1,395,1,395,1,396,1,396,1,396,1,396,1,396,1,396,1,397,1,397,1,397,1,397,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,400,1,400,1,400,1,400,1,400,1,400,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,402,1,402,1,402,1,402,1,402,1,402,1,403,1,403,1,403,1,403,1,403,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,406,1,406,1,406,1,406,1,406,1,406,1,406,1,406,1,407,1,407,1,407,1,407,1,407,1,407,1,407,1,407,1,407,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,409,1,409,1,409,1,409,1,409,1,410,1,410,1,410,1,410,1,411,1,411,1,411,1,411,1,411,1,411,1,412,1,412,1,412,1,412,1,412,1,412,1,412,1,412,1,412,1,413,1,413,1,413,1,413,1,413,1,413,1,413,1,413,1,413,1,413,1,414,1,414,1,414,1,414,1,414,1,415,1,415,1,415,1,415,1,415,1,415,1,415,1,415,1,415,1,415,1,416,1,416,1,416,1,416,1,416,1,416,1,417,1,417,1,417,1,417,1,417,1,418,1,418,1,418,1,418,1,418,1,418,1,418,1,419,1,419,1,419,1,419,1,419,1,419,1,419,1,419,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,426,1,426,1,426,1,426,1,426,1,426,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,428,1,428,1,428,1,428,1,428,1,428,1,428,1,428,1,428,1,428,1,429,1,429,1,429,1,429,1,429,1,429,1,429,1,429,1,429,1,429,1,429,1,430,1,430,1,430,1,430,1,430,1,430,1,430,1,430,1,430,1,430,1,431,1,431,1,431,1,431,1,431,1,431,1,431,1,431,1,431,1,431,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,433,1,433,1,433,1,433,1,433,1,433,1,434,1,434,1,434,1,434,1,434,1,434,1,434,1,434,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,436,1,436,1,436,1,436,1,436,1,437,1,437,1,437,1,437,1,437,1,437,1,437,1,437,1,438,1,438,1,438,1,438,1,438,1,438,1,438,1,439,1,439,1,439,1,439,1,439,1,439,1,439,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,441,1,441,1,441,1,441,1,441,1,441,1,441,1,441,1,441,1,441,1,442,1,442,1,442,1,442,1,442,1,442,1,442,1,443,1,443,1,443,1,443,1,443,1,443,1,443,1,444,1,444,1,444,1,444,1,444,1,444,1,444,1,444,1,445,1,445,1,445,1,445,1,445,1,445,1,445,1,445,1,446,1,446,1,446,1,446,1,446,1,446,1,446,1,446,1,446,1,446,1,447,1,447,1,447,1,447,1,447,1,447,1,447,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,449,1,449,1,449,1,449,1,449,1,449,1,449,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,451,1,451,1,451,1,451,1,452,1,452,1,452,1,452,1,453,1,453,1,453,1,453,1,453,1,453,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,456,1,456,1,456,1,456,1,457,1,457,1,457,1,457,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,459,1,459,1,459,1,459,1,459,1,459,1,459,1,459,1,460,1,460,1,460,1,460,1,460,1,460,1,460,1,460,1,460,1,460,1,460,1,461,1,461,1,461,1,461,1,461,1,461,1,462,1,462,1,462,1,462,1,462,1,462,1,462,1,462,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,464,1,464,1,464,1,464,1,465,1,465,1,465,1,465,1,465,1,465,1,465,1,465,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,468,1,468,1,468,1,468,1,468,1,469,1,469,1,469,1,469,1,469,1,469,1,469,1,470,1,470,1,470,1,470,1,470,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,472,1,472,1,472,1,472,1,472,1,473,1,473,1,473,1,473,1,473,1,473,1,473,1,473,1,473,1,474,1,474,1,474,1,474,1,474,1,475,1,475,1,475,1,475,1,475,1,475,1,475,1,475,1,475,1,475,1,475,1,475,1,476,1,476,1,476,1,476,1,476,1,476,1,476,1,476,1,476,1,476,1,476,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,486,1,486,1,486,1,486,1,487,1,487,1,487,1,487,1,488,1,488,1,488,1,488,1,488,1,489,1,489,1,489,1,489,1,489,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,491,1,491,1,491,1,491,1,491,1,491,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,493,1,493,1,493,1,493,1,493,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,496,1,496,1,496,1,496,1,496,1,496,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,499,1,499,1,499,1,499,1,499,1,499,1,500,1,500,1,500,1,500,1,500,1,500,1,500,1,500,1,500,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,502,1,502,1,502,1,502,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,504,1,504,1,504,1,504,1,504,1,504,1,504,1,504,1,505,1,505,1,505,1,505,1,505,1,505,1,506,1,506,1,506,1,506,1,506,1,506,1,507,1,507,1,507,1,507,1,507,1,507,1,507,1,507,1,508,1,508,1,508,1,508,1,508,1,508,1,508,1,508,1,509,1,509,1,509,1,509,1,509,1,509,1,510,1,510,1,510,1,510,1,510,1,511,1,511,1,511,1,511,1,511,1,511,1,511,1,512,1,512,1,512,1,512,1,512,1,512,1,513,1,513,1,513,1,513,1,513,1,513,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,515,1,515,1,515,1,515,1,515,1,515,1,516,1,516,1,516,1,516,1,517,1,517,1,517,1,517,1,517,1,518,1,518,1,518,1,518,1,518,1,518,1,518,1,519,1,519,1,519,1,519,1,519,1,519,1,519,1,519,1,520,1,520,1,520,1,520,1,520,1,520,1,520,1,520,1,520,1,520,1,521,1,521,1,521,1,521,1,521,1,521,1,521,1,522,1,522,1,522,1,522,1,522,1,523,1,523,1,523,1,523,1,523,1,524,1,524,1,524,1,524,1,525,1,525,1,525,1,525,1,525,1,526,1,526,1,526,1,526,1,526,1,527,1,527,1,527,1,527,1,527,1,527,1,527,1,527,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,529,1,529,1,529,1,529,1,530,1,530,1,530,1,530,1,531,1,531,1,531,1,531,1,531,1,531,1,531,1,531,1,531,1,531,1,532,1,532,1,532,1,532,1,532,1,532,1,533,1,533,1,533,1,533,1,534,1,534,1,534,1,534,1,535,1,535,1,535,1,536,1,536,1,536,1,536,1,536,1,536,1,537,1,537,1,537,1,537,1,537,1,537,1,537,1,537,1,537,1,537,1,538,1,538,1,538,1,538,1,539,1,539,1,539,1,540,1,540,1,540,1,540,1,540,1,540,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,542,1,542,1,542,1,542,1,542,1,542,1,543,1,543,1,543,1,543,1,543,1,543,1,544,1,544,1,544,1,544,1,544,1,545,1,545,1,545,1,545,1,545,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,547,1,547,1,547,1,547,1,547,1,547,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,549,1,549,1,549,1,549,1,549,1,549,1,549,1,550,1,550,1,550,1,550,1,550,1,550,1,550,1,550,1,551,1,551,1,551,1,551,1,551,1,552,1,552,1,552,1,552,1,552,1,552,1,553,1,553,1,553,1,553,1,553,1,554,1,554,1,554,1,554,1,554,1,554,1,555,1,555,1,555,1,555,1,555,1,556,1,556,1,556,1,556,1,556,1,556,1,557,1,557,1,557,1,557,1,557,1,557,1,558,1,558,1,558,1,558,1,558,1,558,1,558,1,559,1,559,1,559,1,559,1,560,1,560,1,560,1,560,1,560,1,561,1,561,1,561,1,561,1,562,1,562,1,562,1,562,1,562,1,563,1,563,1,563,1,563,1,564,1,564,1,564,1,564,1,564,1,565,1,565,1,565,1,565,1,566,1,566,1,566,1,566,1,566,1,567,1,567,1,567,1,567,1,567,1,568,1,568,1,568,1,568,1,568,1,569,1,569,1,569,1,569,1,569,1,570,1,570,1,570,1,570,1,570,1,570,1,571,1,571,1,571,1,571,1,571,1,571,1,572,1,572,1,572,1,572,1,572,1,572,1,573,1,573,1,573,1,573,1,573,1,573,1,573,1,573,1,573,1,573,1,573,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,576,1,576,1,576,1,576,1,576,1,576,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,578,1,578,1,578,1,578,1,578,1,578,1,579,1,579,1,579,1,579,1,579,1,579,1,580,1,580,1,580,1,580,1,580,1,580,1,581,1,581,1,581,1,581,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,587,1,587,1,587,1,587,1,587,1,588,1,588,1,588,1,588,1,588,1,588,1,589,1,589,1,589,1,589,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,604,1,604,1,604,1,604,1,604,1,604,1,604,1,605,1,605,1,605,1,605,1,605,1,606,1,606,1,606,1,606,1,606,1,606,1,607,1,607,1,607,1,607,1,607,1,607,1,607,1,607,1,607,1,607,1,607,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,611,1,611,1,611,1,611,1,611,1,611,1,611,1,612,1,612,1,612,1,612,1,612,1,612,1,612,1,613,1,613,1,613,1,613,1,613,1,613,1,613,1,613,1,613,1,614,1,614,1,614,1,614,1,614,1,614,1,614,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,616,1,616,1,616,1,616,1,616,1,616,1,616,1,617,1,617,1,617,1,617,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,619,1,619,1,619,1,619,1,619,1,619,1,619,1,619,1,619,1,620,1,620,1,620,1,620,1,620,1,620,1,620,1,620,1,620,1,620,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,628,1,628,1,628,1,628,1,628,1,628,1,628,1,628,1,628,1,628,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,631,1,631,1,631,1,631,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,633,1,633,1,633,1,633,1,633,1,633,1,633,1,633,1,633,1,633,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,636,1,636,1,636,1,636,1,636,1,636,1,636,1,636,1,637,1,637,1,637,1,637,1,637,1,637,1,637,1,637,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,639,1,639,5,639,6323,8,639,10,639,12,639,6326,9,639,1,640,1,640,1,640,1,640,1,640,1,640,3,640,6334,8,640,1,641,1,641,3,641,6338,8,641,1,642,1,642,3,642,6342,8,642,1,643,1,643,1,643,1,644,1,644,1,644,1,644,5,644,6351,8,644,10,644,12,644,6354,9,644,1,645,1,645,1,645,1,646,1,646,1,646,1,646,5,646,6363,8,646,10,646,12,646,6366,9,646,1,647,1,647,1,647,1,647,1,648,1,648,1,648,1,648,1,649,1,649,1,649,1,649,1,650,1,650,1,650,1,650,1,651,1,651,1,651,1,652,1,652,1,652,1,652,5,652,6391,8,652,10,652,12,652,6394,9,652,1,653,1,653,1,653,1,653,1,653,1,653,1,654,1,654,1,654,1,655,1,655,1,655,1,655,1,656,1,656,3,656,6411,8,656,1,656,1,656,1,656,1,656,1,656,1,657,1,657,5,657,6420,8,657,10,657,12,657,6423,9,657,1,658,1,658,1,658,1,659,1,659,1,659,5,659,6431,8,659,10,659,12,659,6434,9,659,1,660,1,660,1,660,1,661,1,661,1,661,1,662,1,662,1,662,1,663,1,663,1,663,5,663,6448,8,663,10,663,12,663,6451,9,663,1,664,1,664,1,664,1,665,1,665,1,665,1,666,1,666,1,667,1,667,1,667,1,667,1,667,1,667,1,668,1,668,1,668,3,668,6470,8,668,1,668,1,668,3,668,6474,8,668,1,668,3,668,6477,8,668,1,668,1,668,1,668,1,668,3,668,6483,8,668,1,668,3,668,6486,8,668,1,668,1,668,1,668,3,668,6491,8,668,1,668,1,668,3,668,6495,8,668,1,669,4,669,6498,8,669,11,669,12,669,6499,1,670,1,670,1,670,5,670,6505,8,670,10,670,12,670,6508,9,670,1,671,1,671,1,671,1,671,1,671,1,671,1,671,1,671,5,671,6518,8,671,10,671,12,671,6521,9,671,1,671,1,671,1,672,4,672,6526,8,672,11,672,12,672,6527,1,672,1,672,1,673,1,673,3,673,6534,8,673,1,673,3,673,6537,8,673,1,673,1,673,1,674,1,674,1,674,1,674,5,674,6545,8,674,10,674,12,674,6548,9,674,1,674,1,674,1,675,1,675,1,675,1,675,5,675,6556,8,675,10,675,12,675,6559,9,675,1,675,1,675,1,675,4,675,6564,8,675,11,675,12,675,6565,1,675,1,675,4,675,6570,8,675,11,675,12,675,6571,1,675,5,675,6575,8,675,10,675,12,675,6578,9,675,1,675,5,675,6581,8,675,10,675,12,675,6584,9,675,1,675,1,675,1,675,1,675,1,675,1,676,1,676,1,676,1,676,5,676,6595,8,676,10,676,12,676,6598,9,676,1,676,1,676,1,676,4,676,6603,8,676,11,676,12,676,6604,1,676,1,676,4,676,6609,8,676,11,676,12,676,6610,1,676,3,676,6614,8,676,5,676,6616,8,676,10,676,12,676,6619,9,676,1,676,4,676,6622,8,676,11,676,12,676,6623,1,676,4,676,6627,8,676,11,676,12,676,6628,1,676,5,676,6632,8,676,10,676,12,676,6635,9,676,1,676,3,676,6638,8,676,1,676,1,676,1,677,1,677,1,677,1,677,5,677,6646,8,677,10,677,12,677,6649,9,677,1,677,5,677,6652,8,677,10,677,12,677,6655,9,677,1,677,1,677,5,677,6659,8,677,10,677,12,677,6662,9,677,3,677,6664,8,677,1,678,1,678,1,678,1,679,1,679,1,680,1,680,1,680,1,680,1,680,1,681,1,681,3,681,6678,8,681,1,681,1,681,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,3,682,6702,8,682,1,682,5,682,6705,8,682,10,682,12,682,6708,9,682,1,683,1,683,1,683,1,683,1,683,1,684,1,684,3,684,6717,8,684,1,684,1,684,1,685,1,685,1,685,1,685,1,685,5,685,6726,8,685,10,685,12,685,6729,9,685,1,686,1,686,1,686,1,686,1,686,1,687,1,687,1,687,1,687,1,687,1,687,1,688,1,688,1,688,1,688,1,688,1,689,1,689,1,689,1,689,1,689,1,690,1,690,1,690,1,690,1,690,1,691,1,691,1,691,1,691,1,691,1,692,1,692,1,692,1,692,1,692,1,693,4,693,6768,8,693,11,693,12,693,6769,1,693,1,693,5,693,6774,8,693,10,693,12,693,6777,9,693,3,693,6779,8,693,1,694,1,694,3,694,6783,8,694,1,694,1,694,1,694,1,694,1,694,1,694,1,694,0,0,695,5,1,7,2,9,3,11,4,13,5,15,6,17,7,19,8,21,9,23,10,25,11,27,12,29,13,31,14,33,15,35,16,37,17,39,18,41,19,43,20,45,21,47,22,49,23,51,24,53,25,55,26,57,27,59,28,61,29,63,0,65,0,67,0,69,0,71,30,73,31,75,32,77,33,79,34,81,35,83,36,85,37,87,38,89,39,91,40,93,41,95,42,97,43,99,44,101,45,103,46,105,47,107,48,109,49,111,50,113,51,115,52,117,53,119,54,121,55,123,56,125,57,127,58,129,59,131,60,133,61,135,62,137,63,139,64,141,65,143,66,145,67,147,68,149,69,151,70,153,71,155,72,157,73,159,74,161,75,163,76,165,77,167,78,169,79,171,80,173,81,175,82,177,83,179,84,181,85,183,86,185,87,187,88,189,89,191,90,193,91,195,92,197,93,199,94,201,95,203,96,205,97,207,98,209,99,211,100,213,101,215,102,217,103,219,104,221,105,223,106,225,107,227,108,229,109,231,110,233,111,235,112,237,113,239,114,241,115,243,116,245,117,247,118,249,119,251,120,253,121,255,122,257,123,259,124,261,125,263,126,265,127,267,128,269,129,271,130,273,131,275,132,277,133,279,134,281,135,283,136,285,137,287,138,289,139,291,140,293,141,295,142,297,143,299,144,301,145,303,146,305,147,307,148,309,149,311,150,313,151,315,152,317,153,319,154,321,155,323,156,325,157,327,158,329,159,331,160,333,161,335,162,337,163,339,164,341,165,343,166,345,167,347,168,349,169,351,170,353,171,355,172,357,173,359,174,361,175,363,176,365,177,367,178,369,179,371,180,373,181,375,182,377,183,379,184,381,185,383,186,385,187,387,188,389,189,391,190,393,191,395,192,397,193,399,194,401,195,403,196,405,197,407,198,409,199,411,200,413,201,415,202,417,203,419,204,421,205,423,206,425,207,427,208,429,209,431,210,433,211,435,212,437,213,439,214,441,215,443,216,445,217,447,218,449,219,451,220,453,221,455,222,457,223,459,224,461,225,463,226,465,227,467,228,469,229,471,230,473,231,475,232,477,233,479,234,481,235,483,236,485,237,487,238,489,239,491,240,493,241,495,242,497,243,499,244,501,245,503,246,505,247,507,248,509,249,511,250,513,251,515,252,517,253,519,254,521,255,523,256,525,257,527,258,529,259,531,260,533,261,535,262,537,263,539,264,541,265,543,266,545,267,547,268,549,269,551,270,553,271,555,272,557,273,559,274,561,275,563,276,565,277,567,278,569,279,571,280,573,281,575,282,577,283,579,284,581,285,583,286,585,287,587,288,589,289,591,290,593,291,595,292,597,293,599,294,601,295,603,296,605,297,607,298,609,299,611,300,613,301,615,302,617,303,619,304,621,305,623,306,625,307,627,308,629,309,631,310,633,311,635,312,637,313,639,314,641,315,643,316,645,317,647,318,649,319,651,320,653,321,655,322,657,323,659,324,661,325,663,326,665,327,667,328,669,329,671,330,673,331,675,332,677,333,679,334,681,335,683,336,685,337,687,338,689,339,691,340,693,341,695,342,697,343,699,344,701,345,703,346,705,347,707,348,709,349,711,350,713,351,715,352,717,353,719,354,721,355,723,356,725,357,727,358,729,359,731,360,733,361,735,362,737,363,739,364,741,365,743,366,745,367,747,368,749,369,751,370,753,371,755,372,757,373,759,374,761,375,763,376,765,377,767,378,769,379,771,380,773,381,775,382,777,383,779,384,781,385,783,386,785,387,787,388,789,389,791,390,793,391,795,392,797,393,799,394,801,395,803,396,805,397,807,398,809,399,811,400,813,401,815,402,817,403,819,404,821,405,823,406,825,407,827,408,829,409,831,410,833,411,835,412,837,413,839,414,841,415,843,416,845,417,847,418,849,419,851,420,853,421,855,422,857,423,859,424,861,425,863,426,865,427,867,428,869,429,871,430,873,431,875,432,877,433,879,434,881,435,883,436,885,437,887,438,889,439,891,440,893,441,895,442,897,443,899,444,901,445,903,446,905,447,907,448,909,449,911,450,913,451,915,452,917,453,919,454,921,455,923,456,925,457,927,458,929,459,931,460,933,461,935,462,937,463,939,464,941,465,943,466,945,467,947,468,949,469,951,470,953,471,955,472,957,473,959,474,961,475,963,476,965,477,967,478,969,479,971,480,973,481,975,482,977,483,979,484,981,485,983,486,985,487,987,488,989,489,991,490,993,491,995,492,997,493,999,494,1001,495,1003,496,1005,497,1007,498,1009,499,1011,500,1013,501,1015,502,1017,503,1019,504,1021,505,1023,506,1025,507,1027,508,1029,509,1031,510,1033,511,1035,512,1037,513,1039,514,1041,515,1043,516,1045,517,1047,518,1049,519,1051,520,1053,521,1055,522,1057,523,1059,524,1061,525,1063,526,1065,527,1067,528,1069,529,1071,530,1073,531,1075,532,1077,533,1079,534,1081,535,1083,536,1085,537,1087,538,1089,539,1091,540,1093,541,1095,542,1097,543,1099,544,1101,545,1103,546,1105,547,1107,548,1109,549,1111,550,1113,551,1115,552,1117,553,1119,554,1121,555,1123,556,1125,557,1127,558,1129,559,1131,560,1133,561,1135,562,1137,563,1139,564,1141,565,1143,566,1145,567,1147,568,1149,569,1151,570,1153,571,1155,572,1157,573,1159,574,1161,575,1163,576,1165,577,1167,578,1169,579,1171,580,1173,581,1175,582,1177,583,1179,584,1181,585,1183,586,1185,587,1187,588,1189,589,1191,590,1193,591,1195,592,1197,593,1199,594,1201,595,1203,596,1205,597,1207,598,1209,599,1211,600,1213,601,1215,602,1217,603,1219,604,1221,605,1223,606,1225,607,1227,608,1229,609,1231,610,1233,611,1235,612,1237,613,1239,614,1241,615,1243,616,1245,617,1247,618,1249,619,1251,620,1253,621,1255,622,1257,623,1259,624,1261,625,1263,626,1265,627,1267,628,1269,629,1271,630,1273,631,1275,632,1277,633,1279,634,1281,635,1283,636,1285,0,1287,0,1289,0,1291,637,1293,638,1295,639,1297,640,1299,641,1301,642,1303,643,1305,644,1307,645,1309,646,1311,0,1313,647,1315,648,1317,649,1319,0,1321,650,1323,651,1325,652,1327,653,1329,654,1331,655,1333,656,1335,657,1337,658,1339,659,1341,660,1343,0,1345,661,1347,662,1349,663,1351,664,1353,665,1355,666,1357,667,1359,668,1361,669,1363,670,1365,671,1367,672,1369,0,1371,673,1373,674,1375,0,1377,0,1379,0,1381,675,1383,0,1385,0,1387,679,1389,676,1391,677,1393,678,5,0,1,2,3,4,51,1,0,48,57,2,0,43,43,45,45,9,0,33,33,35,35,37,38,42,42,60,64,94,94,96,96,124,124,126,126,2,0,42,43,60,62,8,0,33,33,35,35,37,38,63,64,94,94,96,96,124,124,126,126,2,0,65,65,97,97,2,0,76,76,108,108,2,0,78,78,110,110,2,0,89,89,121,121,2,0,83,83,115,115,2,0,69,69,101,101,2,0,90,90,122,122,2,0,68,68,100,100,2,0,82,82,114,114,2,0,67,67,99,99,2,0,77,77,109,109,2,0,84,84,116,116,2,0,73,73,105,105,2,0,66,66,98,98,2,0,79,79,111,111,2,0,72,72,104,104,2,0,75,75,107,107,2,0,85,85,117,117,2,0,71,71,103,103,2,0,80,80,112,112,2,0,70,70,102,102,2,0,88,88,120,120,2,0,86,86,118,118,2,0,81,81,113,113,2,0,87,87,119,119,2,0,74,74,106,106,9,0,65,90,95,95,97,122,170,170,181,181,186,186,192,214,216,246,248,255,2,0,256,55295,57344,65535,1,0,55296,56319,1,0,56320,57343,2,0,0,0,34,34,1,0,34,34,1,0,39,39,1,0,48,49,3,0,48,57,65,70,97,102,3,0,65,90,95,95,97,122,5,0,36,36,48,57,65,90,95,95,97,122,2,0,34,34,92,92,2,0,9,9,32,32,2,0,10,10,13,13,2,0,42,42,47,47,4,0,10,10,13,13,34,34,92,92,3,0,10,10,13,13,34,34,3,0,85,85,117,117,120,120,2,0,39,39,92,92,1,0,36,36,6863,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,23,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,1,0,0,0,0,87,1,0,0,0,0,89,1,0,0,0,0,91,1,0,0,0,0,93,1,0,0,0,0,95,1,0,0,0,0,97,1,0,0,0,0,99,1,0,0,0,0,101,1,0,0,0,0,103,1,0,0,0,0,105,1,0,0,0,0,107,1,0,0,0,0,109,1,0,0,0,0,111,1,0,0,0,0,113,1,0,0,0,0,115,1,0,0,0,0,117,1,0,0,0,0,119,1,0,0,0,0,121,1,0,0,0,0,123,1,0,0,0,0,125,1,0,0,0,0,127,1,0,0,0,0,129,1,0,0,0,0,131,1,0,0,0,0,133,1,0,0,0,0,135,1,0,0,0,0,137,1,0,0,0,0,139,1,0,0,0,0,141,1,0,0,0,0,143,1,0,0,0,0,145,1,0,0,0,0,147,1,0,0,0,0,149,1,0,0,0,0,151,1,0,0,0,0,153,1,0,0,0,0,155,1,0,0,0,0,157,1,0,0,0,0,159,1,0,0,0,0,161,1,0,0,0,0,163,1,0,0,0,0,165,1,0,0,0,0,167,1,0,0,0,0,169,1,0,0,0,0,171,1,0,0,0,0,173,1,0,0,0,0,175,1,0,0,0,0,177,1,0,0,0,0,179,1,0,0,0,0,181,1,0,0,0,0,183,1,0,0,0,0,185,1,0,0,0,0,187,1,0,0,0,0,189,1,0,0,0,0,191,1,0,0,0,0,193,1,0,0,0,0,195,1,0,0,0,0,197,1,0,0,0,0,199,1,0,0,0,0,201,1,0,0,0,0,203,1,0,0,0,0,205,1,0,0,0,0,207,1,0,0,0,0,209,1,0,0,0,0,211,1,0,0,0,0,213,1,0,0,0,0,215,1,0,0,0,0,217,1,0,0,0,0,219,1,0,0,0,0,221,1,0,0,0,0,223,1,0,0,0,0,225,1,0,0,0,0,227,1,0,0,0,0,229,1,0,0,0,0,231,1,0,0,0,0,233,1,0,0,0,0,235,1,0,0,0,0,237,1,0,0,0,0,239,1,0,0,0,0,241,1,0,0,0,0,243,1,0,0,0,0,245,1,0,0,0,0,247,1,0,0,0,0,249,1,0,0,0,0,251,1,0,0,0,0,253,1,0,0,0,0,255,1,0,0,0,0,257,1,0,0,0,0,259,1,0,0,0,0,261,1,0,0,0,0,263,1,0,0,0,0,265,1,0,0,0,0,267,1,0,0,0,0,269,1,0,0,0,0,271,1,0,0,0,0,273,1,0,0,0,0,275,1,0,0,0,0,277,1,0,0,0,0,279,1,0,0,0,0,281,1,0,0,0,0,283,1,0,0,0,0,285,1,0,0,0,0,287,1,0,0,0,0,289,1,0,0,0,0,291,1,0,0,0,0,293,1,0,0,0,0,295,1,0,0,0,0,297,1,0,0,0,0,299,1,0,0,0,0,301,1,0,0,0,0,303,1,0,0,0,0,305,1,0,0,0,0,307,1,0,0,0,0,309,1,0,0,0,0,311,1,0,0,0,0,313,1,0,0,0,0,315,1,0,0,0,0,317,1,0,0,0,0,319,1,0,0,0,0,321,1,0,0,0,0,323,1,0,0,0,0,325,1,0,0,0,0,327,1,0,0,0,0,329,1,0,0,0,0,331,1,0,0,0,0,333,1,0,0,0,0,335,1,0,0,0,0,337,1,0,0,0,0,339,1,0,0,0,0,341,1,0,0,0,0,343,1,0,0,0,0,345,1,0,0,0,0,347,1,0,0,0,0,349,1,0,0,0,0,351,1,0,0,0,0,353,1,0,0,0,0,355,1,0,0,0,0,357,1,0,0,0,0,359,1,0,0,0,0,361,1,0,0,0,0,363,1,0,0,0,0,365,1,0,0,0,0,367,1,0,0,0,0,369,1,0,0,0,0,371,1,0,0,0,0,373,1,0,0,0,0,375,1,0,0,0,0,377,1,0,0,0,0,379,1,0,0,0,0,381,1,0,0,0,0,383,1,0,0,0,0,385,1,0,0,0,0,387,1,0,0,0,0,389,1,0,0,0,0,391,1,0,0,0,0,393,1,0,0,0,0,395,1,0,0,0,0,397,1,0,0,0,0,399,1,0,0,0,0,401,1,0,0,0,0,403,1,0,0,0,0,405,1,0,0,0,0,407,1,0,0,0,0,409,1,0,0,0,0,411,1,0,0,0,0,413,1,0,0,0,0,415,1,0,0,0,0,417,1,0,0,0,0,419,1,0,0,0,0,421,1,0,0,0,0,423,1,0,0,0,0,425,1,0,0,0,0,427,1,0,0,0,0,429,1,0,0,0,0,431,1,0,0,0,0,433,1,0,0,0,0,435,1,0,0,0,0,437,1,0,0,0,0,439,1,0,0,0,0,441,1,0,0,0,0,443,1,0,0,0,0,445,1,0,0,0,0,447,1,0,0,0,0,449,1,0,0,0,0,451,1,0,0,0,0,453,1,0,0,0,0,455,1,0,0,0,0,457,1,0,0,0,0,459,1,0,0,0,0,461,1,0,0,0,0,463,1,0,0,0,0,465,1,0,0,0,0,467,1,0,0,0,0,469,1,0,0,0,0,471,1,0,0,0,0,473,1,0,0,0,0,475,1,0,0,0,0,477,1,0,0,0,0,479,1,0,0,0,0,481,1,0,0,0,0,483,1,0,0,0,0,485,1,0,0,0,0,487,1,0,0,0,0,489,1,0,0,0,0,491,1,0,0,0,0,493,1,0,0,0,0,495,1,0,0,0,0,497,1,0,0,0,0,499,1,0,0,0,0,501,1,0,0,0,0,503,1,0,0,0,0,505,1,0,0,0,0,507,1,0,0,0,0,509,1,0,0,0,0,511,1,0,0,0,0,513,1,0,0,0,0,515,1,0,0,0,0,517,1,0,0,0,0,519,1,0,0,0,0,521,1,0,0,0,0,523,1,0,0,0,0,525,1,0,0,0,0,527,1,0,0,0,0,529,1,0,0,0,0,531,1,0,0,0,0,533,1,0,0,0,0,535,1,0,0,0,0,537,1,0,0,0,0,539,1,0,0,0,0,541,1,0,0,0,0,543,1,0,0,0,0,545,1,0,0,0,0,547,1,0,0,0,0,549,1,0,0,0,0,551,1,0,0,0,0,553,1,0,0,0,0,555,1,0,0,0,0,557,1,0,0,0,0,559,1,0,0,0,0,561,1,0,0,0,0,563,1,0,0,0,0,565,1,0,0,0,0,567,1,0,0,0,0,569,1,0,0,0,0,571,1,0,0,0,0,573,1,0,0,0,0,575,1,0,0,0,0,577,1,0,0,0,0,579,1,0,0,0,0,581,1,0,0,0,0,583,1,0,0,0,0,585,1,0,0,0,0,587,1,0,0,0,0,589,1,0,0,0,0,591,1,0,0,0,0,593,1,0,0,0,0,595,1,0,0,0,0,597,1,0,0,0,0,599,1,0,0,0,0,601,1,0,0,0,0,603,1,0,0,0,0,605,1,0,0,0,0,607,1,0,0,0,0,609,1,0,0,0,0,611,1,0,0,0,0,613,1,0,0,0,0,615,1,0,0,0,0,617,1,0,0,0,0,619,1,0,0,0,0,621,1,0,0,0,0,623,1,0,0,0,0,625,1,0,0,0,0,627,1,0,0,0,0,629,1,0,0,0,0,631,1,0,0,0,0,633,1,0,0,0,0,635,1,0,0,0,0,637,1,0,0,0,0,639,1,0,0,0,0,641,1,0,0,0,0,643,1,0,0,0,0,645,1,0,0,0,0,647,1,0,0,0,0,649,1,0,0,0,0,651,1,0,0,0,0,653,1,0,0,0,0,655,1,0,0,0,0,657,1,0,0,0,0,659,1,0,0,0,0,661,1,0,0,0,0,663,1,0,0,0,0,665,1,0,0,0,0,667,1,0,0,0,0,669,1,0,0,0,0,671,1,0,0,0,0,673,1,0,0,0,0,675,1,0,0,0,0,677,1,0,0,0,0,679,1,0,0,0,0,681,1,0,0,0,0,683,1,0,0,0,0,685,1,0,0,0,0,687,1,0,0,0,0,689,1,0,0,0,0,691,1,0,0,0,0,693,1,0,0,0,0,695,1,0,0,0,0,697,1,0,0,0,0,699,1,0,0,0,0,701,1,0,0,0,0,703,1,0,0,0,0,705,1,0,0,0,0,707,1,0,0,0,0,709,1,0,0,0,0,711,1,0,0,0,0,713,1,0,0,0,0,715,1,0,0,0,0,717,1,0,0,0,0,719,1,0,0,0,0,721,1,0,0,0,0,723,1,0,0,0,0,725,1,0,0,0,0,727,1,0,0,0,0,729,1,0,0,0,0,731,1,0,0,0,0,733,1,0,0,0,0,735,1,0,0,0,0,737,1,0,0,0,0,739,1,0,0,0,0,741,1,0,0,0,0,743,1,0,0,0,0,745,1,0,0,0,0,747,1,0,0,0,0,749,1,0,0,0,0,751,1,0,0,0,0,753,1,0,0,0,0,755,1,0,0,0,0,757,1,0,0,0,0,759,1,0,0,0,0,761,1,0,0,0,0,763,1,0,0,0,0,765,1,0,0,0,0,767,1,0,0,0,0,769,1,0,0,0,0,771,1,0,0,0,0,773,1,0,0,0,0,775,1,0,0,0,0,777,1,0,0,0,0,779,1,0,0,0,0,781,1,0,0,0,0,783,1,0,0,0,0,785,1,0,0,0,0,787,1,0,0,0,0,789,1,0,0,0,0,791,1,0,0,0,0,793,1,0,0,0,0,795,1,0,0,0,0,797,1,0,0,0,0,799,1,0,0,0,0,801,1,0,0,0,0,803,1,0,0,0,0,805,1,0,0,0,0,807,1,0,0,0,0,809,1,0,0,0,0,811,1,0,0,0,0,813,1,0,0,0,0,815,1,0,0,0,0,817,1,0,0,0,0,819,1,0,0,0,0,821,1,0,0,0,0,823,1,0,0,0,0,825,1,0,0,0,0,827,1,0,0,0,0,829,1,0,0,0,0,831,1,0,0,0,0,833,1,0,0,0,0,835,1,0,0,0,0,837,1,0,0,0,0,839,1,0,0,0,0,841,1,0,0,0,0,843,1,0,0,0,0,845,1,0,0,0,0,847,1,0,0,0,0,849,1,0,0,0,0,851,1,0,0,0,0,853,1,0,0,0,0,855,1,0,0,0,0,857,1,0,0,0,0,859,1,0,0,0,0,861,1,0,0,0,0,863,1,0,0,0,0,865,1,0,0,0,0,867,1,0,0,0,0,869,1,0,0,0,0,871,1,0,0,0,0,873,1,0,0,0,0,875,1,0,0,0,0,877,1,0,0,0,0,879,1,0,0,0,0,881,1,0,0,0,0,883,1,0,0,0,0,885,1,0,0,0,0,887,1,0,0,0,0,889,1,0,0,0,0,891,1,0,0,0,0,893,1,0,0,0,0,895,1,0,0,0,0,897,1,0,0,0,0,899,1,0,0,0,0,901,1,0,0,0,0,903,1,0,0,0,0,905,1,0,0,0,0,907,1,0,0,0,0,909,1,0,0,0,0,911,1,0,0,0,0,913,1,0,0,0,0,915,1,0,0,0,0,917,1,0,0,0,0,919,1,0,0,0,0,921,1,0,0,0,0,923,1,0,0,0,0,925,1,0,0,0,0,927,1,0,0,0,0,929,1,0,0,0,0,931,1,0,0,0,0,933,1,0,0,0,0,935,1,0,0,0,0,937,1,0,0,0,0,939,1,0,0,0,0,941,1,0,0,0,0,943,1,0,0,0,0,945,1,0,0,0,0,947,1,0,0,0,0,949,1,0,0,0,0,951,1,0,0,0,0,953,1,0,0,0,0,955,1,0,0,0,0,957,1,0,0,0,0,959,1,0,0,0,0,961,1,0,0,0,0,963,1,0,0,0,0,965,1,0,0,0,0,967,1,0,0,0,0,969,1,0,0,0,0,971,1,0,0,0,0,973,1,0,0,0,0,975,1,0,0,0,0,977,1,0,0,0,0,979,1,0,0,0,0,981,1,0,0,0,0,983,1,0,0,0,0,985,1,0,0,0,0,987,1,0,0,0,0,989,1,0,0,0,0,991,1,0,0,0,0,993,1,0,0,0,0,995,1,0,0,0,0,997,1,0,0,0,0,999,1,0,0,0,0,1001,1,0,0,0,0,1003,1,0,0,0,0,1005,1,0,0,0,0,1007,1,0,0,0,0,1009,1,0,0,0,0,1011,1,0,0,0,0,1013,1,0,0,0,0,1015,1,0,0,0,0,1017,1,0,0,0,0,1019,1,0,0,0,0,1021,1,0,0,0,0,1023,1,0,0,0,0,1025,1,0,0,0,0,1027,1,0,0,0,0,1029,1,0,0,0,0,1031,1,0,0,0,0,1033,1,0,0,0,0,1035,1,0,0,0,0,1037,1,0,0,0,0,1039,1,0,0,0,0,1041,1,0,0,0,0,1043,1,0,0,0,0,1045,1,0,0,0,0,1047,1,0,0,0,0,1049,1,0,0,0,0,1051,1,0,0,0,0,1053,1,0,0,0,0,1055,1,0,0,0,0,1057,1,0,0,0,0,1059,1,0,0,0,0,1061,1,0,0,0,0,1063,1,0,0,0,0,1065,1,0,0,0,0,1067,1,0,0,0,0,1069,1,0,0,0,0,1071,1,0,0,0,0,1073,1,0,0,0,0,1075,1,0,0,0,0,1077,1,0,0,0,0,1079,1,0,0,0,0,1081,1,0,0,0,0,1083,1,0,0,0,0,1085,1,0,0,0,0,1087,1,0,0,0,0,1089,1,0,0,0,0,1091,1,0,0,0,0,1093,1,0,0,0,0,1095,1,0,0,0,0,1097,1,0,0,0,0,1099,1,0,0,0,0,1101,1,0,0,0,0,1103,1,0,0,0,0,1105,1,0,0,0,0,1107,1,0,0,0,0,1109,1,0,0,0,0,1111,1,0,0,0,0,1113,1,0,0,0,0,1115,1,0,0,0,0,1117,1,0,0,0,0,1119,1,0,0,0,0,1121,1,0,0,0,0,1123,1,0,0,0,0,1125,1,0,0,0,0,1127,1,0,0,0,0,1129,1,0,0,0,0,1131,1,0,0,0,0,1133,1,0,0,0,0,1135,1,0,0,0,0,1137,1,0,0,0,0,1139,1,0,0,0,0,1141,1,0,0,0,0,1143,1,0,0,0,0,1145,1,0,0,0,0,1147,1,0,0,0,0,1149,1,0,0,0,0,1151,1,0,0,0,0,1153,1,0,0,0,0,1155,1,0,0,0,0,1157,1,0,0,0,0,1159,1,0,0,0,0,1161,1,0,0,0,0,1163,1,0,0,0,0,1165,1,0,0,0,0,1167,1,0,0,0,0,1169,1,0,0,0,0,1171,1,0,0,0,0,1173,1,0,0,0,0,1175,1,0,0,0,0,1177,1,0,0,0,0,1179,1,0,0,0,0,1181,1,0,0,0,0,1183,1,0,0,0,0,1185,1,0,0,0,0,1187,1,0,0,0,0,1189,1,0,0,0,0,1191,1,0,0,0,0,1193,1,0,0,0,0,1195,1,0,0,0,0,1197,1,0,0,0,0,1199,1,0,0,0,0,1201,1,0,0,0,0,1203,1,0,0,0,0,1205,1,0,0,0,0,1207,1,0,0,0,0,1209,1,0,0,0,0,1211,1,0,0,0,0,1213,1,0,0,0,0,1215,1,0,0,0,0,1217,1,0,0,0,0,1219,1,0,0,0,0,1221,1,0,0,0,0,1223,1,0,0,0,0,1225,1,0,0,0,0,1227,1,0,0,0,0,1229,1,0,0,0,0,1231,1,0,0,0,0,1233,1,0,0,0,0,1235,1,0,0,0,0,1237,1,0,0,0,0,1239,1,0,0,0,0,1241,1,0,0,0,0,1243,1,0,0,0,0,1245,1,0,0,0,0,1247,1,0,0,0,0,1249,1,0,0,0,0,1251,1,0,0,0,0,1253,1,0,0,0,0,1255,1,0,0,0,0,1257,1,0,0,0,0,1259,1,0,0,0,0,1261,1,0,0,0,0,1263,1,0,0,0,0,1265,1,0,0,0,0,1267,1,0,0,0,0,1269,1,0,0,0,0,1271,1,0,0,0,0,1273,1,0,0,0,0,1275,1,0,0,0,0,1277,1,0,0,0,0,1279,1,0,0,0,0,1281,1,0,0,0,0,1283,1,0,0,0,0,1291,1,0,0,0,0,1293,1,0,0,0,0,1295,1,0,0,0,0,1297,1,0,0,0,0,1299,1,0,0,0,0,1301,1,0,0,0,0,1303,1,0,0,0,0,1305,1,0,0,0,0,1307,1,0,0,0,0,1309,1,0,0,0,0,1311,1,0,0,0,0,1313,1,0,0,0,0,1315,1,0,0,0,0,1317,1,0,0,0,0,1321,1,0,0,0,0,1323,1,0,0,0,0,1325,1,0,0,0,0,1327,1,0,0,0,0,1329,1,0,0,0,0,1331,1,0,0,0,0,1333,1,0,0,0,0,1335,1,0,0,0,0,1337,1,0,0,0,0,1339,1,0,0,0,0,1341,1,0,0,0,0,1345,1,0,0,0,0,1347,1,0,0,0,0,1349,1,0,0,0,0,1351,1,0,0,0,0,1353,1,0,0,0,0,1355,1,0,0,0,0,1357,1,0,0,0,0,1359,1,0,0,0,0,1361,1,0,0,0,0,1363,1,0,0,0,1,1365,1,0,0,0,1,1367,1,0,0,0,1,1371,1,0,0,0,1,1373,1,0,0,0,2,1377,1,0,0,0,2,1379,1,0,0,0,2,1381,1,0,0,0,3,1383,1,0,0,0,3,1385,1,0,0,0,3,1387,1,0,0,0,3,1389,1,0,0,0,4,1391,1,0,0,0,4,1393,1,0,0,0,5,1395,1,0,0,0,7,1397,1,0,0,0,9,1399,1,0,0,0,11,1401,1,0,0,0,13,1403,1,0,0,0,15,1405,1,0,0,0,17,1407,1,0,0,0,19,1409,1,0,0,0,21,1411,1,0,0,0,23,1413,1,0,0,0,25,1415,1,0,0,0,27,1417,1,0,0,0,29,1419,1,0,0,0,31,1421,1,0,0,0,33,1423,1,0,0,0,35,1425,1,0,0,0,37,1427,1,0,0,0,39,1429,1,0,0,0,41,1432,1,0,0,0,43,1435,1,0,0,0,45,1438,1,0,0,0,47,1441,1,0,0,0,49,1444,1,0,0,0,51,1447,1,0,0,0,53,1450,1,0,0,0,55,1453,1,0,0,0,57,1456,1,0,0,0,59,1458,1,0,0,0,61,1484,1,0,0,0,63,1495,1,0,0,0,65,1511,1,0,0,0,67,1513,1,0,0,0,69,1515,1,0,0,0,71,1517,1,0,0,0,73,1521,1,0,0,0,75,1529,1,0,0,0,77,1537,1,0,0,0,79,1541,1,0,0,0,81,1545,1,0,0,0,83,1551,1,0,0,0,85,1554,1,0,0,0,87,1558,1,0,0,0,89,1569,1,0,0,0,91,1574,1,0,0,0,93,1579,1,0,0,0,95,1584,1,0,0,0,97,1590,1,0,0,0,99,1598,1,0,0,0,101,1605,1,0,0,0,103,1616,1,0,0,0,105,1623,1,0,0,0,107,1639,1,0,0,0,109,1652,1,0,0,0,111,1665,1,0,0,0,113,1678,1,0,0,0,115,1696,1,0,0,0,117,1709,1,0,0,0,119,1717,1,0,0,0,121,1728,1,0,0,0,123,1733,1,0,0,0,125,1742,1,0,0,0,127,1745,1,0,0,0,129,1750,1,0,0,0,131,1757,1,0,0,0,133,1763,1,0,0,0,135,1769,1,0,0,0,137,1773,1,0,0,0,139,1781,1,0,0,0,141,1786,1,0,0,0,143,1792,1,0,0,0,145,1798,1,0,0,0,147,1805,1,0,0,0,149,1808,1,0,0,0,151,1818,1,0,0,0,153,1828,1,0,0,0,155,1833,1,0,0,0,157,1841,1,0,0,0,159,1849,1,0,0,0,161,1855,1,0,0,0,163,1865,1,0,0,0,165,1880,1,0,0,0,167,1884,1,0,0,0,169,1889,1,0,0,0,171,1896,1,0,0,0,173,1899,1,0,0,0,175,1904,1,0,0,0,177,1907,1,0,0,0,179,1913,1,0,0,0,181,1921,1,0,0,0,183,1929,1,0,0,0,185,1940,1,0,0,0,187,1950,1,0,0,0,189,1957,1,0,0,0,191,1970,1,0,0,0,193,1975,1,0,0,0,195,1985,1,0,0,0,197,1991,1,0,0,0,199,1996,1,0,0,0,201,1999,1,0,0,0,203,2008,1,0,0,0,205,2013,1,0,0,0,207,2019,1,0,0,0,209,2026,1,0,0,0,211,2031,1,0,0,0,213,2037,1,0,0,0,215,2046,1,0,0,0,217,2051,1,0,0,0,219,2057,1,0,0,0,221,2064,1,0,0,0,223,2069,1,0,0,0,225,2083,1,0,0,0,227,2090,1,0,0,0,229,2100,1,0,0,0,231,2113,1,0,0,0,233,2119,1,0,0,0,235,2134,1,0,0,0,237,2141,1,0,0,0,239,2146,1,0,0,0,241,2152,1,0,0,0,243,2158,1,0,0,0,245,2161,1,0,0,0,247,2168,1,0,0,0,249,2173,1,0,0,0,251,2178,1,0,0,0,253,2183,1,0,0,0,255,2191,1,0,0,0,257,2199,1,0,0,0,259,2205,1,0,0,0,261,2210,1,0,0,0,263,2219,1,0,0,0,265,2225,1,0,0,0,267,2233,1,0,0,0,269,2241,1,0,0,0,271,2247,1,0,0,0,273,2256,1,0,0,0,275,2263,1,0,0,0,277,2270,1,0,0,0,279,2274,1,0,0,0,281,2280,1,0,0,0,283,2286,1,0,0,0,285,2296,1,0,0,0,287,2301,1,0,0,0,289,2307,1,0,0,0,291,2314,1,0,0,0,293,2324,1,0,0,0,295,2335,1,0,0,0,297,2338,1,0,0,0,299,2348,1,0,0,0,301,2357,1,0,0,0,303,2364,1,0,0,0,305,2370,1,0,0,0,307,2373,1,0,0,0,309,2379,1,0,0,0,311,2386,1,0,0,0,313,2394,1,0,0,0,315,2403,1,0,0,0,317,2411,1,0,0,0,319,2417,1,0,0,0,321,2433,1,0,0,0,323,2444,1,0,0,0,325,2450,1,0,0,0,327,2456,1,0,0,0,329,2464,1,0,0,0,331,2472,1,0,0,0,333,2481,1,0,0,0,335,2488,1,0,0,0,337,2498,1,0,0,0,339,2512,1,0,0,0,341,2523,1,0,0,0,343,2535,1,0,0,0,345,2543,1,0,0,0,347,2552,1,0,0,0,349,2563,1,0,0,0,351,2568,1,0,0,0,353,2573,1,0,0,0,355,2577,1,0,0,0,357,2584,1,0,0,0,359,2590,1,0,0,0,361,2595,1,0,0,0,363,2604,1,0,0,0,365,2608,1,0,0,0,367,2619,1,0,0,0,369,2627,1,0,0,0,371,2636,1,0,0,0,373,2645,1,0,0,0,375,2653,1,0,0,0,377,2660,1,0,0,0,379,2670,1,0,0,0,381,2681,1,0,0,0,383,2692,1,0,0,0,385,2700,1,0,0,0,387,2708,1,0,0,0,389,2717,1,0,0,0,391,2724,1,0,0,0,393,2731,1,0,0,0,395,2736,1,0,0,0,397,2741,1,0,0,0,399,2748,1,0,0,0,401,2757,1,0,0,0,403,2767,1,0,0,0,405,2772,1,0,0,0,407,2779,1,0,0,0,409,2785,1,0,0,0,411,2793,1,0,0,0,413,2803,1,0,0,0,415,2813,1,0,0,0,417,2821,1,0,0,0,419,2829,1,0,0,0,421,2839,1,0,0,0,423,2848,1,0,0,0,425,2855,1,0,0,0,427,2861,1,0,0,0,429,2871,1,0,0,0,431,2877,1,0,0,0,433,2885,1,0,0,0,435,2894,1,0,0,0,437,2904,1,0,0,0,439,2911,1,0,0,0,441,2919,1,0,0,0,443,2927,1,0,0,0,445,2934,1,0,0,0,447,2939,1,0,0,0,449,2944,1,0,0,0,451,2953,1,0,0,0,453,2956,1,0,0,0,455,2966,1,0,0,0,457,2976,1,0,0,0,459,2985,1,0,0,0,461,2995,1,0,0,0,463,3005,1,0,0,0,465,3011,1,0,0,0,467,3019,1,0,0,0,469,3027,1,0,0,0,471,3036,1,0,0,0,473,3043,1,0,0,0,475,3055,1,0,0,0,477,3062,1,0,0,0,479,3070,1,0,0,0,481,3078,1,0,0,0,483,3088,1,0,0,0,485,3092,1,0,0,0,487,3098,1,0,0,0,489,3107,1,0,0,0,491,3113,1,0,0,0,493,3118,1,0,0,0,495,3128,1,0,0,0,497,3134,1,0,0,0,499,3141,1,0,0,0,501,3146,1,0,0,0,503,3152,1,0,0,0,505,3161,1,0,0,0,507,3166,1,0,0,0,509,3174,1,0,0,0,511,3180,1,0,0,0,513,3188,1,0,0,0,515,3201,1,0,0,0,517,3210,1,0,0,0,519,3216,1,0,0,0,521,3223,1,0,0,0,523,3232,1,0,0,0,525,3237,1,0,0,0,527,3243,1,0,0,0,529,3248,1,0,0,0,531,3253,1,0,0,0,533,3259,1,0,0,0,535,3264,1,0,0,0,537,3267,1,0,0,0,539,3275,1,0,0,0,541,3282,1,0,0,0,543,3289,1,0,0,0,545,3295,1,0,0,0,547,3302,1,0,0,0,549,3305,1,0,0,0,551,3309,1,0,0,0,553,3314,1,0,0,0,555,3323,1,0,0,0,557,3330,1,0,0,0,559,3338,1,0,0,0,561,3344,1,0,0,0,563,3350,1,0,0,0,565,3357,1,0,0,0,567,3365,1,0,0,0,569,3375,1,0,0,0,571,3383,1,0,0,0,573,3392,1,0,0,0,575,3398,1,0,0,0,577,3408,1,0,0,0,579,3416,1,0,0,0,581,3425,1,0,0,0,583,3434,1,0,0,0,585,3440,1,0,0,0,587,3451,1,0,0,0,589,3462,1,0,0,0,591,3472,1,0,0,0,593,3480,1,0,0,0,595,3486,1,0,0,0,597,3492,1,0,0,0,599,3497,1,0,0,0,601,3506,1,0,0,0,603,3514,1,0,0,0,605,3524,1,0,0,0,607,3528,1,0,0,0,609,3536,1,0,0,0,611,3544,1,0,0,0,613,3553,1,0,0,0,615,3561,1,0,0,0,617,3568,1,0,0,0,619,3579,1,0,0,0,621,3587,1,0,0,0,623,3595,1,0,0,0,625,3601,1,0,0,0,627,3609,1,0,0,0,629,3618,1,0,0,0,631,3626,1,0,0,0,633,3633,1,0,0,0,635,3638,1,0,0,0,637,3647,1,0,0,0,639,3652,1,0,0,0,641,3657,1,0,0,0,643,3667,1,0,0,0,645,3674,1,0,0,0,647,3681,1,0,0,0,649,3688,1,0,0,0,651,3695,1,0,0,0,653,3704,1,0,0,0,655,3713,1,0,0,0,657,3723,1,0,0,0,659,3736,1,0,0,0,661,3743,1,0,0,0,663,3751,1,0,0,0,665,3755,1,0,0,0,667,3761,1,0,0,0,669,3766,1,0,0,0,671,3773,1,0,0,0,673,3782,1,0,0,0,675,3789,1,0,0,0,677,3800,1,0,0,0,679,3806,1,0,0,0,681,3816,1,0,0,0,683,3827,1,0,0,0,685,3833,1,0,0,0,687,3840,1,0,0,0,689,3848,1,0,0,0,691,3855,1,0,0,0,693,3861,1,0,0,0,695,3867,1,0,0,0,697,3874,1,0,0,0,699,3881,1,0,0,0,701,3892,1,0,0,0,703,3897,1,0,0,0,705,3906,1,0,0,0,707,3916,1,0,0,0,709,3921,1,0,0,0,711,3933,1,0,0,0,713,3941,1,0,0,0,715,3950,1,0,0,0,717,3958,1,0,0,0,719,3963,1,0,0,0,721,3969,1,0,0,0,723,3979,1,0,0,0,725,3991,1,0,0,0,727,4003,1,0,0,0,729,4011,1,0,0,0,731,4020,1,0,0,0,733,4029,1,0,0,0,735,4035,1,0,0,0,737,4042,1,0,0,0,739,4049,1,0,0,0,741,4055,1,0,0,0,743,4064,1,0,0,0,745,4074,1,0,0,0,747,4082,1,0,0,0,749,4090,1,0,0,0,751,4095,1,0,0,0,753,4104,1,0,0,0,755,4115,1,0,0,0,757,4123,1,0,0,0,759,4128,1,0,0,0,761,4136,1,0,0,0,763,4142,1,0,0,0,765,4146,1,0,0,0,767,4151,1,0,0,0,769,4155,1,0,0,0,771,4160,1,0,0,0,773,4168,1,0,0,0,775,4175,1,0,0,0,777,4179,1,0,0,0,779,4187,1,0,0,0,781,4192,1,0,0,0,783,4202,1,0,0,0,785,4211,1,0,0,0,787,4215,1,0,0,0,789,4223,1,0,0,0,791,4230,1,0,0,0,793,4238,1,0,0,0,795,4244,1,0,0,0,797,4253,1,0,0,0,799,4259,1,0,0,0,801,4263,1,0,0,0,803,4271,1,0,0,0,805,4280,1,0,0,0,807,4286,1,0,0,0,809,4295,1,0,0,0,811,4301,1,0,0,0,813,4306,1,0,0,0,815,4313,1,0,0,0,817,4321,1,0,0,0,819,4329,1,0,0,0,821,4338,1,0,0,0,823,4348,1,0,0,0,825,4353,1,0,0,0,827,4357,1,0,0,0,829,4363,1,0,0,0,831,4372,1,0,0,0,833,4382,1,0,0,0,835,4387,1,0,0,0,837,4397,1,0,0,0,839,4403,1,0,0,0,841,4408,1,0,0,0,843,4415,1,0,0,0,845,4423,1,0,0,0,847,4437,1,0,0,0,849,4448,1,0,0,0,851,4455,1,0,0,0,853,4474,1,0,0,0,855,4502,1,0,0,0,857,4529,1,0,0,0,859,4535,1,0,0,0,861,4548,1,0,0,0,863,4558,1,0,0,0,865,4569,1,0,0,0,867,4579,1,0,0,0,869,4589,1,0,0,0,871,4598,1,0,0,0,873,4604,1,0,0,0,875,4612,1,0,0,0,877,4625,1,0,0,0,879,4630,1,0,0,0,881,4638,1,0,0,0,883,4645,1,0,0,0,885,4652,1,0,0,0,887,4663,1,0,0,0,889,4673,1,0,0,0,891,4680,1,0,0,0,893,4687,1,0,0,0,895,4695,1,0,0,0,897,4703,1,0,0,0,899,4713,1,0,0,0,901,4720,1,0,0,0,903,4727,1,0,0,0,905,4734,1,0,0,0,907,4746,1,0,0,0,909,4750,1,0,0,0,911,4754,1,0,0,0,913,4760,1,0,0,0,915,4773,1,0,0,0,917,4785,1,0,0,0,919,4789,1,0,0,0,921,4793,1,0,0,0,923,4802,1,0,0,0,925,4810,1,0,0,0,927,4821,1,0,0,0,929,4827,1,0,0,0,931,4835,1,0,0,0,933,4844,1,0,0,0,935,4848,1,0,0,0,937,4856,1,0,0,0,939,4867,1,0,0,0,941,4876,1,0,0,0,943,4881,1,0,0,0,945,4888,1,0,0,0,947,4893,1,0,0,0,949,4900,1,0,0,0,951,4905,1,0,0,0,953,4914,1,0,0,0,955,4919,1,0,0,0,957,4931,1,0,0,0,959,4942,1,0,0,0,961,4951,1,0,0,0,963,4959,1,0,0,0,965,4973,1,0,0,0,967,4981,1,0,0,0,969,4992,1,0,0,0,971,4999,1,0,0,0,973,5006,1,0,0,0,975,5013,1,0,0,0,977,5020,1,0,0,0,979,5024,1,0,0,0,981,5028,1,0,0,0,983,5033,1,0,0,0,985,5038,1,0,0,0,987,5046,1,0,0,0,989,5052,1,0,0,0,991,5062,1,0,0,0,993,5067,1,0,0,0,995,5087,1,0,0,0,997,5105,1,0,0,0,999,5111,1,0,0,0,1001,5124,1,0,0,0,1003,5135,1,0,0,0,1005,5141,1,0,0,0,1007,5150,1,0,0,0,1009,5158,1,0,0,0,1011,5162,1,0,0,0,1013,5174,1,0,0,0,1015,5182,1,0,0,0,1017,5188,1,0,0,0,1019,5194,1,0,0,0,1021,5202,1,0,0,0,1023,5210,1,0,0,0,1025,5216,1,0,0,0,1027,5221,1,0,0,0,1029,5228,1,0,0,0,1031,5234,1,0,0,0,1033,5240,1,0,0,0,1035,5249,1,0,0,0,1037,5255,1,0,0,0,1039,5259,1,0,0,0,1041,5264,1,0,0,0,1043,5271,1,0,0,0,1045,5279,1,0,0,0,1047,5289,1,0,0,0,1049,5296,1,0,0,0,1051,5301,1,0,0,0,1053,5306,1,0,0,0,1055,5310,1,0,0,0,1057,5315,1,0,0,0,1059,5320,1,0,0,0,1061,5328,1,0,0,0,1063,5336,1,0,0,0,1065,5340,1,0,0,0,1067,5344,1,0,0,0,1069,5354,1,0,0,0,1071,5360,1,0,0,0,1073,5364,1,0,0,0,1075,5368,1,0,0,0,1077,5371,1,0,0,0,1079,5377,1,0,0,0,1081,5387,1,0,0,0,1083,5391,1,0,0,0,1085,5394,1,0,0,0,1087,5400,1,0,0,0,1089,5408,1,0,0,0,1091,5414,1,0,0,0,1093,5420,1,0,0,0,1095,5425,1,0,0,0,1097,5430,1,0,0,0,1099,5441,1,0,0,0,1101,5447,1,0,0,0,1103,5460,1,0,0,0,1105,5467,1,0,0,0,1107,5475,1,0,0,0,1109,5480,1,0,0,0,1111,5486,1,0,0,0,1113,5491,1,0,0,0,1115,5497,1,0,0,0,1117,5502,1,0,0,0,1119,5508,1,0,0,0,1121,5514,1,0,0,0,1123,5521,1,0,0,0,1125,5525,1,0,0,0,1127,5530,1,0,0,0,1129,5534,1,0,0,0,1131,5539,1,0,0,0,1133,5543,1,0,0,0,1135,5548,1,0,0,0,1137,5552,1,0,0,0,1139,5557,1,0,0,0,1141,5562,1,0,0,0,1143,5567,1,0,0,0,1145,5572,1,0,0,0,1147,5578,1,0,0,0,1149,5584,1,0,0,0,1151,5590,1,0,0,0,1153,5601,1,0,0,0,1155,5613,1,0,0,0,1157,5630,1,0,0,0,1159,5636,1,0,0,0,1161,5649,1,0,0,0,1163,5655,1,0,0,0,1165,5661,1,0,0,0,1167,5667,1,0,0,0,1169,5671,1,0,0,0,1171,5678,1,0,0,0,1173,5688,1,0,0,0,1175,5695,1,0,0,0,1177,5703,1,0,0,0,1179,5710,1,0,0,0,1181,5715,1,0,0,0,1183,5721,1,0,0,0,1185,5725,1,0,0,0,1187,5737,1,0,0,0,1189,5756,1,0,0,0,1191,5768,1,0,0,0,1193,5782,1,0,0,0,1195,5797,1,0,0,0,1197,5810,1,0,0,0,1199,5823,1,0,0,0,1201,5835,1,0,0,0,1203,5848,1,0,0,0,1205,5863,1,0,0,0,1207,5878,1,0,0,0,1209,5900,1,0,0,0,1211,5922,1,0,0,0,1213,5936,1,0,0,0,1215,5943,1,0,0,0,1217,5948,1,0,0,0,1219,5954,1,0,0,0,1221,5965,1,0,0,0,1223,5977,1,0,0,0,1225,5993,1,0,0,0,1227,6009,1,0,0,0,1229,6016,1,0,0,0,1231,6023,1,0,0,0,1233,6032,1,0,0,0,1235,6039,1,0,0,0,1237,6049,1,0,0,0,1239,6056,1,0,0,0,1241,6060,1,0,0,0,1243,6076,1,0,0,0,1245,6085,1,0,0,0,1247,6095,1,0,0,0,1249,6106,1,0,0,0,1251,6115,1,0,0,0,1253,6128,1,0,0,0,1255,6142,1,0,0,0,1257,6159,1,0,0,0,1259,6169,1,0,0,0,1261,6183,1,0,0,0,1263,6193,1,0,0,0,1265,6208,1,0,0,0,1267,6225,1,0,0,0,1269,6229,1,0,0,0,1271,6249,1,0,0,0,1273,6259,1,0,0,0,1275,6281,1,0,0,0,1277,6294,1,0,0,0,1279,6302,1,0,0,0,1281,6310,1,0,0,0,1283,6320,1,0,0,0,1285,6333,1,0,0,0,1287,6337,1,0,0,0,1289,6341,1,0,0,0,1291,6343,1,0,0,0,1293,6346,1,0,0,0,1295,6355,1,0,0,0,1297,6358,1,0,0,0,1299,6367,1,0,0,0,1301,6371,1,0,0,0,1303,6375,1,0,0,0,1305,6379,1,0,0,0,1307,6383,1,0,0,0,1309,6386,1,0,0,0,1311,6395,1,0,0,0,1313,6401,1,0,0,0,1315,6404,1,0,0,0,1317,6408,1,0,0,0,1319,6417,1,0,0,0,1321,6424,1,0,0,0,1323,6427,1,0,0,0,1325,6435,1,0,0,0,1327,6438,1,0,0,0,1329,6441,1,0,0,0,1331,6444,1,0,0,0,1333,6452,1,0,0,0,1335,6455,1,0,0,0,1337,6458,1,0,0,0,1339,6460,1,0,0,0,1341,6494,1,0,0,0,1343,6497,1,0,0,0,1345,6501,1,0,0,0,1347,6509,1,0,0,0,1349,6525,1,0,0,0,1351,6536,1,0,0,0,1353,6540,1,0,0,0,1355,6551,1,0,0,0,1357,6590,1,0,0,0,1359,6641,1,0,0,0,1361,6665,1,0,0,0,1363,6668,1,0,0,0,1365,6670,1,0,0,0,1367,6675,1,0,0,0,1369,6706,1,0,0,0,1371,6709,1,0,0,0,1373,6714,1,0,0,0,1375,6727,1,0,0,0,1377,6730,1,0,0,0,1379,6735,1,0,0,0,1381,6741,1,0,0,0,1383,6746,1,0,0,0,1385,6751,1,0,0,0,1387,6756,1,0,0,0,1389,6761,1,0,0,0,1391,6778,1,0,0,0,1393,6780,1,0,0,0,1395,1396,5,36,0,0,1396,6,1,0,0,0,1397,1398,5,40,0,0,1398,8,1,0,0,0,1399,1400,5,41,0,0,1400,10,1,0,0,0,1401,1402,5,91,0,0,1402,12,1,0,0,0,1403,1404,5,93,0,0,1404,14,1,0,0,0,1405,1406,5,44,0,0,1406,16,1,0,0,0,1407,1408,5,59,0,0,1408,18,1,0,0,0,1409,1410,5,58,0,0,1410,20,1,0,0,0,1411,1412,5,42,0,0,1412,22,1,0,0,0,1413,1414,5,61,0,0,1414,24,1,0,0,0,1415,1416,5,46,0,0,1416,26,1,0,0,0,1417,1418,5,43,0,0,1418,28,1,0,0,0,1419,1420,5,45,0,0,1420,30,1,0,0,0,1421,1422,5,47,0,0,1422,32,1,0,0,0,1423,1424,5,94,0,0,1424,34,1,0,0,0,1425,1426,5,60,0,0,1426,36,1,0,0,0,1427,1428,5,62,0,0,1428,38,1,0,0,0,1429,1430,5,60,0,0,1430,1431,5,60,0,0,1431,40,1,0,0,0,1432,1433,5,62,0,0,1433,1434,5,62,0,0,1434,42,1,0,0,0,1435,1436,5,58,0,0,1436,1437,5,61,0,0,1437,44,1,0,0,0,1438,1439,5,60,0,0,1439,1440,5,61,0,0,1440,46,1,0,0,0,1441,1442,5,61,0,0,1442,1443,5,62,0,0,1443,48,1,0,0,0,1444,1445,5,62,0,0,1445,1446,5,61,0,0,1446,50,1,0,0,0,1447,1448,5,46,0,0,1448,1449,5,46,0,0,1449,52,1,0,0,0,1450,1451,5,60,0,0,1451,1452,5,62,0,0,1452,54,1,0,0,0,1453,1454,5,58,0,0,1454,1455,5,58,0,0,1455,56,1,0,0,0,1456,1457,5,37,0,0,1457,58,1,0,0,0,1458,1460,5,36,0,0,1459,1461,7,0,0,0,1460,1459,1,0,0,0,1461,1462,1,0,0,0,1462,1460,1,0,0,0,1462,1463,1,0,0,0,1463,60,1,0,0,0,1464,1480,3,65,30,0,1465,1469,5,43,0,0,1466,1467,5,45,0,0,1467,1469,4,28,0,0,1468,1465,1,0,0,0,1468,1466,1,0,0,0,1469,1470,1,0,0,0,1470,1468,1,0,0,0,1470,1471,1,0,0,0,1471,1475,1,0,0,0,1472,1476,3,65,30,0,1473,1474,5,47,0,0,1474,1476,4,28,1,0,1475,1472,1,0,0,0,1475,1473,1,0,0,0,1476,1480,1,0,0,0,1477,1478,5,47,0,0,1478,1480,4,28,2,0,1479,1464,1,0,0,0,1479,1468,1,0,0,0,1479,1477,1,0,0,0,1480,1481,1,0,0,0,1481,1479,1,0,0,0,1481,1482,1,0,0,0,1482,1485,1,0,0,0,1483,1485,7,1,0,0,1484,1479,1,0,0,0,1484,1483,1,0,0,0,1485,1486,1,0,0,0,1486,1487,6,28,0,0,1487,62,1,0,0,0,1488,1494,3,67,31,0,1489,1490,5,45,0,0,1490,1494,4,29,3,0,1491,1492,5,47,0,0,1492,1494,4,29,4,0,1493,1488,1,0,0,0,1493,1489,1,0,0,0,1493,1491,1,0,0,0,1494,1497,1,0,0,0,1495,1493,1,0,0,0,1495,1496,1,0,0,0,1496,1498,1,0,0,0,1497,1495,1,0,0,0,1498,1500,3,69,32,0,1499,1501,3,61,28,0,1500,1499,1,0,0,0,1500,1501,1,0,0,0,1501,1505,1,0,0,0,1502,1506,5,43,0,0,1503,1504,5,45,0,0,1504,1506,4,29,5,0,1505,1502,1,0,0,0,1505,1503,1,0,0,0,1506,1507,1,0,0,0,1507,1505,1,0,0,0,1507,1508,1,0,0,0,1508,1509,1,0,0,0,1509,1510,6,29,1,0,1510,64,1,0,0,0,1511,1512,7,2,0,0,1512,66,1,0,0,0,1513,1514,7,3,0,0,1514,68,1,0,0,0,1515,1516,7,4,0,0,1516,70,1,0,0,0,1517,1518,7,5,0,0,1518,1519,7,6,0,0,1519,1520,7,6,0,0,1520,72,1,0,0,0,1521,1522,7,5,0,0,1522,1523,7,7,0,0,1523,1524,7,5,0,0,1524,1525,7,6,0,0,1525,1526,7,8,0,0,1526,1527,7,9,0,0,1527,1528,7,10,0,0,1528,74,1,0,0,0,1529,1530,7,5,0,0,1530,1531,7,7,0,0,1531,1532,7,5,0,0,1532,1533,7,6,0,0,1533,1534,7,8,0,0,1534,1535,7,11,0,0,1535,1536,7,10,0,0,1536,76,1,0,0,0,1537,1538,7,5,0,0,1538,1539,7,7,0,0,1539,1540,7,12,0,0,1540,78,1,0,0,0,1541,1542,7,5,0,0,1542,1543,7,7,0,0,1543,1544,7,8,0,0,1544,80,1,0,0,0,1545,1546,7,5,0,0,1546,1547,7,13,0,0,1547,1548,7,13,0,0,1548,1549,7,5,0,0,1549,1550,7,8,0,0,1550,82,1,0,0,0,1551,1552,7,5,0,0,1552,1553,7,9,0,0,1553,84,1,0,0,0,1554,1555,7,5,0,0,1555,1556,7,9,0,0,1556,1557,7,14,0,0,1557,86,1,0,0,0,1558,1559,7,5,0,0,1559,1560,7,9,0,0,1560,1561,7,8,0,0,1561,1562,7,15,0,0,1562,1563,7,15,0,0,1563,1564,7,10,0,0,1564,1565,7,16,0,0,1565,1566,7,13,0,0,1566,1567,7,17,0,0,1567,1568,7,14,0,0,1568,88,1,0,0,0,1569,1570,7,18,0,0,1570,1571,7,19,0,0,1571,1572,7,16,0,0,1572,1573,7,20,0,0,1573,90,1,0,0,0,1574,1575,7,14,0,0,1575,1576,7,5,0,0,1576,1577,7,9,0,0,1577,1578,7,10,0,0,1578,92,1,0,0,0,1579,1580,7,14,0,0,1580,1581,7,5,0,0,1581,1582,7,9,0,0,1582,1583,7,16,0,0,1583,94,1,0,0,0,1584,1585,7,14,0,0,1585,1586,7,20,0,0,1586,1587,7,10,0,0,1587,1588,7,14,0,0,1588,1589,7,21,0,0,1589,96,1,0,0,0,1590,1591,7,14,0,0,1591,1592,7,19,0,0,1592,1593,7,6,0,0,1593,1594,7,6,0,0,1594,1595,7,5,0,0,1595,1596,7,16,0,0,1596,1597,7,10,0,0,1597,98,1,0,0,0,1598,1599,7,14,0,0,1599,1600,7,19,0,0,1600,1601,7,6,0,0,1601,1602,7,22,0,0,1602,1603,7,15,0,0,1603,1604,7,7,0,0,1604,100,1,0,0,0,1605,1606,7,14,0,0,1606,1607,7,19,0,0,1607,1608,7,7,0,0,1608,1609,7,9,0,0,1609,1610,7,16,0,0,1610,1611,7,13,0,0,1611,1612,7,5,0,0,1612,1613,7,17,0,0,1613,1614,7,7,0,0,1614,1615,7,16,0,0,1615,102,1,0,0,0,1616,1617,7,14,0,0,1617,1618,7,13,0,0,1618,1619,7,10,0,0,1619,1620,7,5,0,0,1620,1621,7,16,0,0,1621,1622,7,10,0,0,1622,104,1,0,0,0,1623,1624,7,14,0,0,1624,1625,7,22,0,0,1625,1626,7,13,0,0,1626,1627,7,13,0,0,1627,1628,7,10,0,0,1628,1629,7,7,0,0,1629,1630,7,16,0,0,1630,1631,5,95,0,0,1631,1632,7,14,0,0,1632,1633,7,5,0,0,1633,1634,7,16,0,0,1634,1635,7,5,0,0,1635,1636,7,6,0,0,1636,1637,7,19,0,0,1637,1638,7,23,0,0,1638,106,1,0,0,0,1639,1640,7,14,0,0,1640,1641,7,22,0,0,1641,1642,7,13,0,0,1642,1643,7,13,0,0,1643,1644,7,10,0,0,1644,1645,7,7,0,0,1645,1646,7,16,0,0,1646,1647,5,95,0,0,1647,1648,7,12,0,0,1648,1649,7,5,0,0,1649,1650,7,16,0,0,1650,1651,7,10,0,0,1651,108,1,0,0,0,1652,1653,7,14,0,0,1653,1654,7,22,0,0,1654,1655,7,13,0,0,1655,1656,7,13,0,0,1656,1657,7,10,0,0,1657,1658,7,7,0,0,1658,1659,7,16,0,0,1659,1660,5,95,0,0,1660,1661,7,13,0,0,1661,1662,7,19,0,0,1662,1663,7,6,0,0,1663,1664,7,10,0,0,1664,110,1,0,0,0,1665,1666,7,14,0,0,1666,1667,7,22,0,0,1667,1668,7,13,0,0,1668,1669,7,13,0,0,1669,1670,7,10,0,0,1670,1671,7,7,0,0,1671,1672,7,16,0,0,1672,1673,5,95,0,0,1673,1674,7,16,0,0,1674,1675,7,17,0,0,1675,1676,7,15,0,0,1676,1677,7,10,0,0,1677,112,1,0,0,0,1678,1679,7,14,0,0,1679,1680,7,22,0,0,1680,1681,7,13,0,0,1681,1682,7,13,0,0,1682,1683,7,10,0,0,1683,1684,7,7,0,0,1684,1685,7,16,0,0,1685,1686,5,95,0,0,1686,1687,7,16,0,0,1687,1688,7,17,0,0,1688,1689,7,15,0,0,1689,1690,7,10,0,0,1690,1691,7,9,0,0,1691,1692,7,16,0,0,1692,1693,7,5,0,0,1693,1694,7,15,0,0,1694,1695,7,24,0,0,1695,114,1,0,0,0,1696,1697,7,14,0,0,1697,1698,7,22,0,0,1698,1699,7,13,0,0,1699,1700,7,13,0,0,1700,1701,7,10,0,0,1701,1702,7,7,0,0,1702,1703,7,16,0,0,1703,1704,5,95,0,0,1704,1705,7,22,0,0,1705,1706,7,9,0,0,1706,1707,7,10,0,0,1707,1708,7,13,0,0,1708,116,1,0,0,0,1709,1710,7,12,0,0,1710,1711,7,10,0,0,1711,1712,7,25,0,0,1712,1713,7,5,0,0,1713,1714,7,22,0,0,1714,1715,7,6,0,0,1715,1716,7,16,0,0,1716,118,1,0,0,0,1717,1718,7,12,0,0,1718,1719,7,10,0,0,1719,1720,7,25,0,0,1720,1721,7,10,0,0,1721,1722,7,13,0,0,1722,1723,7,13,0,0,1723,1724,7,5,0,0,1724,1725,7,18,0,0,1725,1726,7,6,0,0,1726,1727,7,10,0,0,1727,120,1,0,0,0,1728,1729,7,12,0,0,1729,1730,7,10,0,0,1730,1731,7,9,0,0,1731,1732,7,14,0,0,1732,122,1,0,0,0,1733,1734,7,12,0,0,1734,1735,7,17,0,0,1735,1736,7,9,0,0,1736,1737,7,16,0,0,1737,1738,7,17,0,0,1738,1739,7,7,0,0,1739,1740,7,14,0,0,1740,1741,7,16,0,0,1741,124,1,0,0,0,1742,1743,7,12,0,0,1743,1744,7,19,0,0,1744,126,1,0,0,0,1745,1746,7,10,0,0,1746,1747,7,6,0,0,1747,1748,7,9,0,0,1748,1749,7,10,0,0,1749,128,1,0,0,0,1750,1751,7,10,0,0,1751,1752,7,26,0,0,1752,1753,7,14,0,0,1753,1754,7,10,0,0,1754,1755,7,24,0,0,1755,1756,7,16,0,0,1756,130,1,0,0,0,1757,1758,7,25,0,0,1758,1759,7,5,0,0,1759,1760,7,6,0,0,1760,1761,7,9,0,0,1761,1762,7,10,0,0,1762,132,1,0,0,0,1763,1764,7,25,0,0,1764,1765,7,10,0,0,1765,1766,7,16,0,0,1766,1767,7,14,0,0,1767,1768,7,20,0,0,1768,134,1,0,0,0,1769,1770,7,25,0,0,1770,1771,7,19,0,0,1771,1772,7,13,0,0,1772,136,1,0,0,0,1773,1774,7,25,0,0,1774,1775,7,19,0,0,1775,1776,7,13,0,0,1776,1777,7,10,0,0,1777,1778,7,17,0,0,1778,1779,7,23,0,0,1779,1780,7,7,0,0,1780,138,1,0,0,0,1781,1782,7,25,0,0,1782,1783,7,13,0,0,1783,1784,7,19,0,0,1784,1785,7,15,0,0,1785,140,1,0,0,0,1786,1787,7,23,0,0,1787,1788,7,13,0,0,1788,1789,7,5,0,0,1789,1790,7,7,0,0,1790,1791,7,16,0,0,1791,142,1,0,0,0,1792,1793,7,23,0,0,1793,1794,7,13,0,0,1794,1795,7,19,0,0,1795,1796,7,22,0,0,1796,1797,7,24,0,0,1797,144,1,0,0,0,1798,1799,7,20,0,0,1799,1800,7,5,0,0,1800,1801,7,27,0,0,1801,1802,7,17,0,0,1802,1803,7,7,0,0,1803,1804,7,23,0,0,1804,146,1,0,0,0,1805,1806,7,17,0,0,1806,1807,7,7,0,0,1807,148,1,0,0,0,1808,1809,7,17,0,0,1809,1810,7,7,0,0,1810,1811,7,17,0,0,1811,1812,7,16,0,0,1812,1813,7,17,0,0,1813,1814,7,5,0,0,1814,1815,7,6,0,0,1815,1816,7,6,0,0,1816,1817,7,8,0,0,1817,150,1,0,0,0,1818,1819,7,17,0,0,1819,1820,7,7,0,0,1820,1821,7,16,0,0,1821,1822,7,10,0,0,1822,1823,7,13,0,0,1823,1824,7,9,0,0,1824,1825,7,10,0,0,1825,1826,7,14,0,0,1826,1827,7,16,0,0,1827,152,1,0,0,0,1828,1829,7,17,0,0,1829,1830,7,7,0,0,1830,1831,7,16,0,0,1831,1832,7,19,0,0,1832,154,1,0,0,0,1833,1834,7,6,0,0,1834,1835,7,5,0,0,1835,1836,7,16,0,0,1836,1837,7,10,0,0,1837,1838,7,13,0,0,1838,1839,7,5,0,0,1839,1840,7,6,0,0,1840,156,1,0,0,0,1841,1842,7,6,0,0,1842,1843,7,10,0,0,1843,1844,7,5,0,0,1844,1845,7,12,0,0,1845,1846,7,17,0,0,1846,1847,7,7,0,0,1847,1848,7,23,0,0,1848,158,1,0,0,0,1849,1850,7,6,0,0,1850,1851,7,17,0,0,1851,1852,7,15,0,0,1852,1853,7,17,0,0,1853,1854,7,16,0,0,1854,160,1,0,0,0,1855,1856,7,6,0,0,1856,1857,7,19,0,0,1857,1858,7,14,0,0,1858,1859,7,5,0,0,1859,1860,7,6,0,0,1860,1861,7,16,0,0,1861,1862,7,17,0,0,1862,1863,7,15,0,0,1863,1864,7,10,0,0,1864,162,1,0,0,0,1865,1866,7,6,0,0,1866,1867,7,19,0,0,1867,1868,7,14,0,0,1868,1869,7,5,0,0,1869,1870,7,6,0,0,1870,1871,7,16,0,0,1871,1872,7,17,0,0,1872,1873,7,15,0,0,1873,1874,7,10,0,0,1874,1875,7,9,0,0,1875,1876,7,16,0,0,1876,1877,7,5,0,0,1877,1878,7,15,0,0,1878,1879,7,24,0,0,1879,164,1,0,0,0,1880,1881,7,7,0,0,1881,1882,7,19,0,0,1882,1883,7,16,0,0,1883,166,1,0,0,0,1884,1885,7,7,0,0,1885,1886,7,22,0,0,1886,1887,7,6,0,0,1887,1888,7,6,0,0,1888,168,1,0,0,0,1889,1890,7,19,0,0,1890,1891,7,25,0,0,1891,1892,7,25,0,0,1892,1893,7,9,0,0,1893,1894,7,10,0,0,1894,1895,7,16,0,0,1895,170,1,0,0,0,1896,1897,7,19,0,0,1897,1898,7,7,0,0,1898,172,1,0,0,0,1899,1900,7,19,0,0,1900,1901,7,7,0,0,1901,1902,7,6,0,0,1902,1903,7,8,0,0,1903,174,1,0,0,0,1904,1905,7,19,0,0,1905,1906,7,13,0,0,1906,176,1,0,0,0,1907,1908,7,19,0,0,1908,1909,7,13,0,0,1909,1910,7,12,0,0,1910,1911,7,10,0,0,1911,1912,7,13,0,0,1912,178,1,0,0,0,1913,1914,7,24,0,0,1914,1915,7,6,0,0,1915,1916,7,5,0,0,1916,1917,7,14,0,0,1917,1918,7,17,0,0,1918,1919,7,7,0,0,1919,1920,7,23,0,0,1920,180,1,0,0,0,1921,1922,7,24,0,0,1922,1923,7,13,0,0,1923,1924,7,17,0,0,1924,1925,7,15,0,0,1925,1926,7,5,0,0,1926,1927,7,13,0,0,1927,1928,7,8,0,0,1928,182,1,0,0,0,1929,1930,7,13,0,0,1930,1931,7,10,0,0,1931,1932,7,25,0,0,1932,1933,7,10,0,0,1933,1934,7,13,0,0,1934,1935,7,10,0,0,1935,1936,7,7,0,0,1936,1937,7,14,0,0,1937,1938,7,10,0,0,1938,1939,7,9,0,0,1939,184,1,0,0,0,1940,1941,7,13,0,0,1941,1942,7,10,0,0,1942,1943,7,16,0,0,1943,1944,7,22,0,0,1944,1945,7,13,0,0,1945,1946,7,7,0,0,1946,1947,7,17,0,0,1947,1948,7,7,0,0,1948,1949,7,23,0,0,1949,186,1,0,0,0,1950,1951,7,9,0,0,1951,1952,7,10,0,0,1952,1953,7,6,0,0,1953,1954,7,10,0,0,1954,1955,7,14,0,0,1955,1956,7,16,0,0,1956,188,1,0,0,0,1957,1958,7,9,0,0,1958,1959,7,10,0,0,1959,1960,7,9,0,0,1960,1961,7,9,0,0,1961,1962,7,17,0,0,1962,1963,7,19,0,0,1963,1964,7,7,0,0,1964,1965,5,95,0,0,1965,1966,7,22,0,0,1966,1967,7,9,0,0,1967,1968,7,10,0,0,1968,1969,7,13,0,0,1969,190,1,0,0,0,1970,1971,7,9,0,0,1971,1972,7,19,0,0,1972,1973,7,15,0,0,1973,1974,7,10,0,0,1974,192,1,0,0,0,1975,1976,7,9,0,0,1976,1977,7,8,0,0,1977,1978,7,15,0,0,1978,1979,7,15,0,0,1979,1980,7,10,0,0,1980,1981,7,16,0,0,1981,1982,7,13,0,0,1982,1983,7,17,0,0,1983,1984,7,14,0,0,1984,194,1,0,0,0,1985,1986,7,16,0,0,1986,1987,7,5,0,0,1987,1988,7,18,0,0,1988,1989,7,6,0,0,1989,1990,7,10,0,0,1990,196,1,0,0,0,1991,1992,7,16,0,0,1992,1993,7,20,0,0,1993,1994,7,10,0,0,1994,1995,7,7,0,0,1995,198,1,0,0,0,1996,1997,7,16,0,0,1997,1998,7,19,0,0,1998,200,1,0,0,0,1999,2e3,7,16,0,0,2e3,2001,7,13,0,0,2001,2002,7,5,0,0,2002,2003,7,17,0,0,2003,2004,7,6,0,0,2004,2005,7,17,0,0,2005,2006,7,7,0,0,2006,2007,7,23,0,0,2007,202,1,0,0,0,2008,2009,7,16,0,0,2009,2010,7,13,0,0,2010,2011,7,22,0,0,2011,2012,7,10,0,0,2012,204,1,0,0,0,2013,2014,7,22,0,0,2014,2015,7,7,0,0,2015,2016,7,17,0,0,2016,2017,7,19,0,0,2017,2018,7,7,0,0,2018,206,1,0,0,0,2019,2020,7,22,0,0,2020,2021,7,7,0,0,2021,2022,7,17,0,0,2022,2023,7,28,0,0,2023,2024,7,22,0,0,2024,2025,7,10,0,0,2025,208,1,0,0,0,2026,2027,7,22,0,0,2027,2028,7,9,0,0,2028,2029,7,10,0,0,2029,2030,7,13,0,0,2030,210,1,0,0,0,2031,2032,7,22,0,0,2032,2033,7,9,0,0,2033,2034,7,17,0,0,2034,2035,7,7,0,0,2035,2036,7,23,0,0,2036,212,1,0,0,0,2037,2038,7,27,0,0,2038,2039,7,5,0,0,2039,2040,7,13,0,0,2040,2041,7,17,0,0,2041,2042,7,5,0,0,2042,2043,7,12,0,0,2043,2044,7,17,0,0,2044,2045,7,14,0,0,2045,214,1,0,0,0,2046,2047,7,29,0,0,2047,2048,7,20,0,0,2048,2049,7,10,0,0,2049,2050,7,7,0,0,2050,216,1,0,0,0,2051,2052,7,29,0,0,2052,2053,7,20,0,0,2053,2054,7,10,0,0,2054,2055,7,13,0,0,2055,2056,7,10,0,0,2056,218,1,0,0,0,2057,2058,7,29,0,0,2058,2059,7,17,0,0,2059,2060,7,7,0,0,2060,2061,7,12,0,0,2061,2062,7,19,0,0,2062,2063,7,29,0,0,2063,220,1,0,0,0,2064,2065,7,29,0,0,2065,2066,7,17,0,0,2066,2067,7,16,0,0,2067,2068,7,20,0,0,2068,222,1,0,0,0,2069,2070,7,5,0,0,2070,2071,7,22,0,0,2071,2072,7,16,0,0,2072,2073,7,20,0,0,2073,2074,7,19,0,0,2074,2075,7,13,0,0,2075,2076,7,17,0,0,2076,2077,7,11,0,0,2077,2078,7,5,0,0,2078,2079,7,16,0,0,2079,2080,7,17,0,0,2080,2081,7,19,0,0,2081,2082,7,7,0,0,2082,224,1,0,0,0,2083,2084,7,18,0,0,2084,2085,7,17,0,0,2085,2086,7,7,0,0,2086,2087,7,5,0,0,2087,2088,7,13,0,0,2088,2089,7,8,0,0,2089,226,1,0,0,0,2090,2091,7,14,0,0,2091,2092,7,19,0,0,2092,2093,7,6,0,0,2093,2094,7,6,0,0,2094,2095,7,5,0,0,2095,2096,7,16,0,0,2096,2097,7,17,0,0,2097,2098,7,19,0,0,2098,2099,7,7,0,0,2099,228,1,0,0,0,2100,2101,7,14,0,0,2101,2102,7,19,0,0,2102,2103,7,7,0,0,2103,2104,7,14,0,0,2104,2105,7,22,0,0,2105,2106,7,13,0,0,2106,2107,7,13,0,0,2107,2108,7,10,0,0,2108,2109,7,7,0,0,2109,2110,7,16,0,0,2110,2111,7,6,0,0,2111,2112,7,8,0,0,2112,230,1,0,0,0,2113,2114,7,14,0,0,2114,2115,7,13,0,0,2115,2116,7,19,0,0,2116,2117,7,9,0,0,2117,2118,7,9,0,0,2118,232,1,0,0,0,2119,2120,7,14,0,0,2120,2121,7,22,0,0,2121,2122,7,13,0,0,2122,2123,7,13,0,0,2123,2124,7,10,0,0,2124,2125,7,7,0,0,2125,2126,7,16,0,0,2126,2127,5,95,0,0,2127,2128,7,9,0,0,2128,2129,7,14,0,0,2129,2130,7,20,0,0,2130,2131,7,10,0,0,2131,2132,7,15,0,0,2132,2133,7,5,0,0,2133,234,1,0,0,0,2134,2135,7,25,0,0,2135,2136,7,13,0,0,2136,2137,7,10,0,0,2137,2138,7,10,0,0,2138,2139,7,11,0,0,2139,2140,7,10,0,0,2140,236,1,0,0,0,2141,2142,7,25,0,0,2142,2143,7,22,0,0,2143,2144,7,6,0,0,2144,2145,7,6,0,0,2145,238,1,0,0,0,2146,2147,7,17,0,0,2147,2148,7,6,0,0,2148,2149,7,17,0,0,2149,2150,7,21,0,0,2150,2151,7,10,0,0,2151,240,1,0,0,0,2152,2153,7,17,0,0,2153,2154,7,7,0,0,2154,2155,7,7,0,0,2155,2156,7,10,0,0,2156,2157,7,13,0,0,2157,242,1,0,0,0,2158,2159,7,17,0,0,2159,2160,7,9,0,0,2160,244,1,0,0,0,2161,2162,7,17,0,0,2162,2163,7,9,0,0,2163,2164,7,7,0,0,2164,2165,7,22,0,0,2165,2166,7,6,0,0,2166,2167,7,6,0,0,2167,246,1,0,0,0,2168,2169,7,30,0,0,2169,2170,7,19,0,0,2170,2171,7,17,0,0,2171,2172,7,7,0,0,2172,248,1,0,0,0,2173,2174,7,6,0,0,2174,2175,7,10,0,0,2175,2176,7,25,0,0,2176,2177,7,16,0,0,2177,250,1,0,0,0,2178,2179,7,6,0,0,2179,2180,7,17,0,0,2180,2181,7,21,0,0,2181,2182,7,10,0,0,2182,252,1,0,0,0,2183,2184,7,7,0,0,2184,2185,7,5,0,0,2185,2186,7,16,0,0,2186,2187,7,22,0,0,2187,2188,7,13,0,0,2188,2189,7,5,0,0,2189,2190,7,6,0,0,2190,254,1,0,0,0,2191,2192,7,7,0,0,2192,2193,7,19,0,0,2193,2194,7,16,0,0,2194,2195,7,7,0,0,2195,2196,7,22,0,0,2196,2197,7,6,0,0,2197,2198,7,6,0,0,2198,256,1,0,0,0,2199,2200,7,19,0,0,2200,2201,7,22,0,0,2201,2202,7,16,0,0,2202,2203,7,10,0,0,2203,2204,7,13,0,0,2204,258,1,0,0,0,2205,2206,7,19,0,0,2206,2207,7,27,0,0,2207,2208,7,10,0,0,2208,2209,7,13,0,0,2209,260,1,0,0,0,2210,2211,7,19,0,0,2211,2212,7,27,0,0,2212,2213,7,10,0,0,2213,2214,7,13,0,0,2214,2215,7,6,0,0,2215,2216,7,5,0,0,2216,2217,7,24,0,0,2217,2218,7,9,0,0,2218,262,1,0,0,0,2219,2220,7,13,0,0,2220,2221,7,17,0,0,2221,2222,7,23,0,0,2222,2223,7,20,0,0,2223,2224,7,16,0,0,2224,264,1,0,0,0,2225,2226,7,9,0,0,2226,2227,7,17,0,0,2227,2228,7,15,0,0,2228,2229,7,17,0,0,2229,2230,7,6,0,0,2230,2231,7,5,0,0,2231,2232,7,13,0,0,2232,266,1,0,0,0,2233,2234,7,27,0,0,2234,2235,7,10,0,0,2235,2236,7,13,0,0,2236,2237,7,18,0,0,2237,2238,7,19,0,0,2238,2239,7,9,0,0,2239,2240,7,10,0,0,2240,268,1,0,0,0,2241,2242,7,5,0,0,2242,2243,7,18,0,0,2243,2244,7,19,0,0,2244,2245,7,13,0,0,2245,2246,7,16,0,0,2246,270,1,0,0,0,2247,2248,7,5,0,0,2248,2249,7,18,0,0,2249,2250,7,9,0,0,2250,2251,7,19,0,0,2251,2252,7,6,0,0,2252,2253,7,22,0,0,2253,2254,7,16,0,0,2254,2255,7,10,0,0,2255,272,1,0,0,0,2256,2257,7,5,0,0,2257,2258,7,14,0,0,2258,2259,7,14,0,0,2259,2260,7,10,0,0,2260,2261,7,9,0,0,2261,2262,7,9,0,0,2262,274,1,0,0,0,2263,2264,7,5,0,0,2264,2265,7,14,0,0,2265,2266,7,16,0,0,2266,2267,7,17,0,0,2267,2268,7,19,0,0,2268,2269,7,7,0,0,2269,276,1,0,0,0,2270,2271,7,5,0,0,2271,2272,7,12,0,0,2272,2273,7,12,0,0,2273,278,1,0,0,0,2274,2275,7,5,0,0,2275,2276,7,12,0,0,2276,2277,7,15,0,0,2277,2278,7,17,0,0,2278,2279,7,7,0,0,2279,280,1,0,0,0,2280,2281,7,5,0,0,2281,2282,7,25,0,0,2282,2283,7,16,0,0,2283,2284,7,10,0,0,2284,2285,7,13,0,0,2285,282,1,0,0,0,2286,2287,7,5,0,0,2287,2288,7,23,0,0,2288,2289,7,23,0,0,2289,2290,7,13,0,0,2290,2291,7,10,0,0,2291,2292,7,23,0,0,2292,2293,7,5,0,0,2293,2294,7,16,0,0,2294,2295,7,10,0,0,2295,284,1,0,0,0,2296,2297,7,5,0,0,2297,2298,7,6,0,0,2298,2299,7,9,0,0,2299,2300,7,19,0,0,2300,286,1,0,0,0,2301,2302,7,5,0,0,2302,2303,7,6,0,0,2303,2304,7,16,0,0,2304,2305,7,10,0,0,2305,2306,7,13,0,0,2306,288,1,0,0,0,2307,2308,7,5,0,0,2308,2309,7,6,0,0,2309,2310,7,29,0,0,2310,2311,7,5,0,0,2311,2312,7,8,0,0,2312,2313,7,9,0,0,2313,290,1,0,0,0,2314,2315,7,5,0,0,2315,2316,7,9,0,0,2316,2317,7,9,0,0,2317,2318,7,10,0,0,2318,2319,7,13,0,0,2319,2320,7,16,0,0,2320,2321,7,17,0,0,2321,2322,7,19,0,0,2322,2323,7,7,0,0,2323,292,1,0,0,0,2324,2325,7,5,0,0,2325,2326,7,9,0,0,2326,2327,7,9,0,0,2327,2328,7,17,0,0,2328,2329,7,23,0,0,2329,2330,7,7,0,0,2330,2331,7,15,0,0,2331,2332,7,10,0,0,2332,2333,7,7,0,0,2333,2334,7,16,0,0,2334,294,1,0,0,0,2335,2336,7,5,0,0,2336,2337,7,16,0,0,2337,296,1,0,0,0,2338,2339,7,5,0,0,2339,2340,7,16,0,0,2340,2341,7,16,0,0,2341,2342,7,13,0,0,2342,2343,7,17,0,0,2343,2344,7,18,0,0,2344,2345,7,22,0,0,2345,2346,7,16,0,0,2346,2347,7,10,0,0,2347,298,1,0,0,0,2348,2349,7,18,0,0,2349,2350,7,5,0,0,2350,2351,7,14,0,0,2351,2352,7,21,0,0,2352,2353,7,29,0,0,2353,2354,7,5,0,0,2354,2355,7,13,0,0,2355,2356,7,12,0,0,2356,300,1,0,0,0,2357,2358,7,18,0,0,2358,2359,7,10,0,0,2359,2360,7,25,0,0,2360,2361,7,19,0,0,2361,2362,7,13,0,0,2362,2363,7,10,0,0,2363,302,1,0,0,0,2364,2365,7,18,0,0,2365,2366,7,10,0,0,2366,2367,7,23,0,0,2367,2368,7,17,0,0,2368,2369,7,7,0,0,2369,304,1,0,0,0,2370,2371,7,18,0,0,2371,2372,7,8,0,0,2372,306,1,0,0,0,2373,2374,7,14,0,0,2374,2375,7,5,0,0,2375,2376,7,14,0,0,2376,2377,7,20,0,0,2377,2378,7,10,0,0,2378,308,1,0,0,0,2379,2380,7,14,0,0,2380,2381,7,5,0,0,2381,2382,7,6,0,0,2382,2383,7,6,0,0,2383,2384,7,10,0,0,2384,2385,7,12,0,0,2385,310,1,0,0,0,2386,2387,7,14,0,0,2387,2388,7,5,0,0,2388,2389,7,9,0,0,2389,2390,7,14,0,0,2390,2391,7,5,0,0,2391,2392,7,12,0,0,2392,2393,7,10,0,0,2393,312,1,0,0,0,2394,2395,7,14,0,0,2395,2396,7,5,0,0,2396,2397,7,9,0,0,2397,2398,7,14,0,0,2398,2399,7,5,0,0,2399,2400,7,12,0,0,2400,2401,7,10,0,0,2401,2402,7,12,0,0,2402,314,1,0,0,0,2403,2404,7,14,0,0,2404,2405,7,5,0,0,2405,2406,7,16,0,0,2406,2407,7,5,0,0,2407,2408,7,6,0,0,2408,2409,7,19,0,0,2409,2410,7,23,0,0,2410,316,1,0,0,0,2411,2412,7,14,0,0,2412,2413,7,20,0,0,2413,2414,7,5,0,0,2414,2415,7,17,0,0,2415,2416,7,7,0,0,2416,318,1,0,0,0,2417,2418,7,14,0,0,2418,2419,7,20,0,0,2419,2420,7,5,0,0,2420,2421,7,13,0,0,2421,2422,7,5,0,0,2422,2423,7,14,0,0,2423,2424,7,16,0,0,2424,2425,7,10,0,0,2425,2426,7,13,0,0,2426,2427,7,17,0,0,2427,2428,7,9,0,0,2428,2429,7,16,0,0,2429,2430,7,17,0,0,2430,2431,7,14,0,0,2431,2432,7,9,0,0,2432,320,1,0,0,0,2433,2434,7,14,0,0,2434,2435,7,20,0,0,2435,2436,7,10,0,0,2436,2437,7,14,0,0,2437,2438,7,21,0,0,2438,2439,7,24,0,0,2439,2440,7,19,0,0,2440,2441,7,17,0,0,2441,2442,7,7,0,0,2442,2443,7,16,0,0,2443,322,1,0,0,0,2444,2445,7,14,0,0,2445,2446,7,6,0,0,2446,2447,7,5,0,0,2447,2448,7,9,0,0,2448,2449,7,9,0,0,2449,324,1,0,0,0,2450,2451,7,14,0,0,2451,2452,7,6,0,0,2452,2453,7,19,0,0,2453,2454,7,9,0,0,2454,2455,7,10,0,0,2455,326,1,0,0,0,2456,2457,7,14,0,0,2457,2458,7,6,0,0,2458,2459,7,22,0,0,2459,2460,7,9,0,0,2460,2461,7,16,0,0,2461,2462,7,10,0,0,2462,2463,7,13,0,0,2463,328,1,0,0,0,2464,2465,7,14,0,0,2465,2466,7,19,0,0,2466,2467,7,15,0,0,2467,2468,7,15,0,0,2468,2469,7,10,0,0,2469,2470,7,7,0,0,2470,2471,7,16,0,0,2471,330,1,0,0,0,2472,2473,7,14,0,0,2473,2474,7,19,0,0,2474,2475,7,15,0,0,2475,2476,7,15,0,0,2476,2477,7,10,0,0,2477,2478,7,7,0,0,2478,2479,7,16,0,0,2479,2480,7,9,0,0,2480,332,1,0,0,0,2481,2482,7,14,0,0,2482,2483,7,19,0,0,2483,2484,7,15,0,0,2484,2485,7,15,0,0,2485,2486,7,17,0,0,2486,2487,7,16,0,0,2487,334,1,0,0,0,2488,2489,7,14,0,0,2489,2490,7,19,0,0,2490,2491,7,15,0,0,2491,2492,7,15,0,0,2492,2493,7,17,0,0,2493,2494,7,16,0,0,2494,2495,7,16,0,0,2495,2496,7,10,0,0,2496,2497,7,12,0,0,2497,336,1,0,0,0,2498,2499,7,14,0,0,2499,2500,7,19,0,0,2500,2501,7,7,0,0,2501,2502,7,25,0,0,2502,2503,7,17,0,0,2503,2504,7,23,0,0,2504,2505,7,22,0,0,2505,2506,7,13,0,0,2506,2507,7,5,0,0,2507,2508,7,16,0,0,2508,2509,7,17,0,0,2509,2510,7,19,0,0,2510,2511,7,7,0,0,2511,338,1,0,0,0,2512,2513,7,14,0,0,2513,2514,7,19,0,0,2514,2515,7,7,0,0,2515,2516,7,7,0,0,2516,2517,7,10,0,0,2517,2518,7,14,0,0,2518,2519,7,16,0,0,2519,2520,7,17,0,0,2520,2521,7,19,0,0,2521,2522,7,7,0,0,2522,340,1,0,0,0,2523,2524,7,14,0,0,2524,2525,7,19,0,0,2525,2526,7,7,0,0,2526,2527,7,9,0,0,2527,2528,7,16,0,0,2528,2529,7,13,0,0,2529,2530,7,5,0,0,2530,2531,7,17,0,0,2531,2532,7,7,0,0,2532,2533,7,16,0,0,2533,2534,7,9,0,0,2534,342,1,0,0,0,2535,2536,7,14,0,0,2536,2537,7,19,0,0,2537,2538,7,7,0,0,2538,2539,7,16,0,0,2539,2540,7,10,0,0,2540,2541,7,7,0,0,2541,2542,7,16,0,0,2542,344,1,0,0,0,2543,2544,7,14,0,0,2544,2545,7,19,0,0,2545,2546,7,7,0,0,2546,2547,7,16,0,0,2547,2548,7,17,0,0,2548,2549,7,7,0,0,2549,2550,7,22,0,0,2550,2551,7,10,0,0,2551,346,1,0,0,0,2552,2553,7,14,0,0,2553,2554,7,19,0,0,2554,2555,7,7,0,0,2555,2556,7,27,0,0,2556,2557,7,10,0,0,2557,2558,7,13,0,0,2558,2559,7,9,0,0,2559,2560,7,17,0,0,2560,2561,7,19,0,0,2561,2562,7,7,0,0,2562,348,1,0,0,0,2563,2564,7,14,0,0,2564,2565,7,19,0,0,2565,2566,7,24,0,0,2566,2567,7,8,0,0,2567,350,1,0,0,0,2568,2569,7,14,0,0,2569,2570,7,19,0,0,2570,2571,7,9,0,0,2571,2572,7,16,0,0,2572,352,1,0,0,0,2573,2574,7,14,0,0,2574,2575,7,9,0,0,2575,2576,7,27,0,0,2576,354,1,0,0,0,2577,2578,7,14,0,0,2578,2579,7,22,0,0,2579,2580,7,13,0,0,2580,2581,7,9,0,0,2581,2582,7,19,0,0,2582,2583,7,13,0,0,2583,356,1,0,0,0,2584,2585,7,14,0,0,2585,2586,7,8,0,0,2586,2587,7,14,0,0,2587,2588,7,6,0,0,2588,2589,7,10,0,0,2589,358,1,0,0,0,2590,2591,7,12,0,0,2591,2592,7,5,0,0,2592,2593,7,16,0,0,2593,2594,7,5,0,0,2594,360,1,0,0,0,2595,2596,7,12,0,0,2596,2597,7,5,0,0,2597,2598,7,16,0,0,2598,2599,7,5,0,0,2599,2600,7,18,0,0,2600,2601,7,5,0,0,2601,2602,7,9,0,0,2602,2603,7,10,0,0,2603,362,1,0,0,0,2604,2605,7,12,0,0,2605,2606,7,5,0,0,2606,2607,7,8,0,0,2607,364,1,0,0,0,2608,2609,7,12,0,0,2609,2610,7,10,0,0,2610,2611,7,5,0,0,2611,2612,7,6,0,0,2612,2613,7,6,0,0,2613,2614,7,19,0,0,2614,2615,7,14,0,0,2615,2616,7,5,0,0,2616,2617,7,16,0,0,2617,2618,7,10,0,0,2618,366,1,0,0,0,2619,2620,7,12,0,0,2620,2621,7,10,0,0,2621,2622,7,14,0,0,2622,2623,7,6,0,0,2623,2624,7,5,0,0,2624,2625,7,13,0,0,2625,2626,7,10,0,0,2626,368,1,0,0,0,2627,2628,7,12,0,0,2628,2629,7,10,0,0,2629,2630,7,25,0,0,2630,2631,7,5,0,0,2631,2632,7,22,0,0,2632,2633,7,6,0,0,2633,2634,7,16,0,0,2634,2635,7,9,0,0,2635,370,1,0,0,0,2636,2637,7,12,0,0,2637,2638,7,10,0,0,2638,2639,7,25,0,0,2639,2640,7,10,0,0,2640,2641,7,13,0,0,2641,2642,7,13,0,0,2642,2643,7,10,0,0,2643,2644,7,12,0,0,2644,372,1,0,0,0,2645,2646,7,12,0,0,2646,2647,7,10,0,0,2647,2648,7,25,0,0,2648,2649,7,17,0,0,2649,2650,7,7,0,0,2650,2651,7,10,0,0,2651,2652,7,13,0,0,2652,374,1,0,0,0,2653,2654,7,12,0,0,2654,2655,7,10,0,0,2655,2656,7,6,0,0,2656,2657,7,10,0,0,2657,2658,7,16,0,0,2658,2659,7,10,0,0,2659,376,1,0,0,0,2660,2661,7,12,0,0,2661,2662,7,10,0,0,2662,2663,7,6,0,0,2663,2664,7,17,0,0,2664,2665,7,15,0,0,2665,2666,7,17,0,0,2666,2667,7,16,0,0,2667,2668,7,10,0,0,2668,2669,7,13,0,0,2669,378,1,0,0,0,2670,2671,7,12,0,0,2671,2672,7,10,0,0,2672,2673,7,6,0,0,2673,2674,7,17,0,0,2674,2675,7,15,0,0,2675,2676,7,17,0,0,2676,2677,7,16,0,0,2677,2678,7,10,0,0,2678,2679,7,13,0,0,2679,2680,7,9,0,0,2680,380,1,0,0,0,2681,2682,7,12,0,0,2682,2683,7,17,0,0,2683,2684,7,14,0,0,2684,2685,7,16,0,0,2685,2686,7,17,0,0,2686,2687,7,19,0,0,2687,2688,7,7,0,0,2688,2689,7,5,0,0,2689,2690,7,13,0,0,2690,2691,7,8,0,0,2691,382,1,0,0,0,2692,2693,7,12,0,0,2693,2694,7,17,0,0,2694,2695,7,9,0,0,2695,2696,7,5,0,0,2696,2697,7,18,0,0,2697,2698,7,6,0,0,2698,2699,7,10,0,0,2699,384,1,0,0,0,2700,2701,7,12,0,0,2701,2702,7,17,0,0,2702,2703,7,9,0,0,2703,2704,7,14,0,0,2704,2705,7,5,0,0,2705,2706,7,13,0,0,2706,2707,7,12,0,0,2707,386,1,0,0,0,2708,2709,7,12,0,0,2709,2710,7,19,0,0,2710,2711,7,14,0,0,2711,2712,7,22,0,0,2712,2713,7,15,0,0,2713,2714,7,10,0,0,2714,2715,7,7,0,0,2715,2716,7,16,0,0,2716,388,1,0,0,0,2717,2718,7,12,0,0,2718,2719,7,19,0,0,2719,2720,7,15,0,0,2720,2721,7,5,0,0,2721,2722,7,17,0,0,2722,2723,7,7,0,0,2723,390,1,0,0,0,2724,2725,7,12,0,0,2725,2726,7,19,0,0,2726,2727,7,22,0,0,2727,2728,7,18,0,0,2728,2729,7,6,0,0,2729,2730,7,10,0,0,2730,392,1,0,0,0,2731,2732,7,12,0,0,2732,2733,7,13,0,0,2733,2734,7,19,0,0,2734,2735,7,24,0,0,2735,394,1,0,0,0,2736,2737,7,10,0,0,2737,2738,7,5,0,0,2738,2739,7,14,0,0,2739,2740,7,20,0,0,2740,396,1,0,0,0,2741,2742,7,10,0,0,2742,2743,7,7,0,0,2743,2744,7,5,0,0,2744,2745,7,18,0,0,2745,2746,7,6,0,0,2746,2747,7,10,0,0,2747,398,1,0,0,0,2748,2749,7,10,0,0,2749,2750,7,7,0,0,2750,2751,7,14,0,0,2751,2752,7,19,0,0,2752,2753,7,12,0,0,2753,2754,7,17,0,0,2754,2755,7,7,0,0,2755,2756,7,23,0,0,2756,400,1,0,0,0,2757,2758,7,10,0,0,2758,2759,7,7,0,0,2759,2760,7,14,0,0,2760,2761,7,13,0,0,2761,2762,7,8,0,0,2762,2763,7,24,0,0,2763,2764,7,16,0,0,2764,2765,7,10,0,0,2765,2766,7,12,0,0,2766,402,1,0,0,0,2767,2768,7,10,0,0,2768,2769,7,7,0,0,2769,2770,7,22,0,0,2770,2771,7,15,0,0,2771,404,1,0,0,0,2772,2773,7,10,0,0,2773,2774,7,9,0,0,2774,2775,7,14,0,0,2775,2776,7,5,0,0,2776,2777,7,24,0,0,2777,2778,7,10,0,0,2778,406,1,0,0,0,2779,2780,7,10,0,0,2780,2781,7,27,0,0,2781,2782,7,10,0,0,2782,2783,7,7,0,0,2783,2784,7,16,0,0,2784,408,1,0,0,0,2785,2786,7,10,0,0,2786,2787,7,26,0,0,2787,2788,7,14,0,0,2788,2789,7,6,0,0,2789,2790,7,22,0,0,2790,2791,7,12,0,0,2791,2792,7,10,0,0,2792,410,1,0,0,0,2793,2794,7,10,0,0,2794,2795,7,26,0,0,2795,2796,7,14,0,0,2796,2797,7,6,0,0,2797,2798,7,22,0,0,2798,2799,7,12,0,0,2799,2800,7,17,0,0,2800,2801,7,7,0,0,2801,2802,7,23,0,0,2802,412,1,0,0,0,2803,2804,7,10,0,0,2804,2805,7,26,0,0,2805,2806,7,14,0,0,2806,2807,7,6,0,0,2807,2808,7,22,0,0,2808,2809,7,9,0,0,2809,2810,7,17,0,0,2810,2811,7,27,0,0,2811,2812,7,10,0,0,2812,414,1,0,0,0,2813,2814,7,10,0,0,2814,2815,7,26,0,0,2815,2816,7,10,0,0,2816,2817,7,14,0,0,2817,2818,7,22,0,0,2818,2819,7,16,0,0,2819,2820,7,10,0,0,2820,416,1,0,0,0,2821,2822,7,10,0,0,2822,2823,7,26,0,0,2823,2824,7,24,0,0,2824,2825,7,6,0,0,2825,2826,7,5,0,0,2826,2827,7,17,0,0,2827,2828,7,7,0,0,2828,418,1,0,0,0,2829,2830,7,10,0,0,2830,2831,7,26,0,0,2831,2832,7,16,0,0,2832,2833,7,10,0,0,2833,2834,7,7,0,0,2834,2835,7,9,0,0,2835,2836,7,17,0,0,2836,2837,7,19,0,0,2837,2838,7,7,0,0,2838,420,1,0,0,0,2839,2840,7,10,0,0,2840,2841,7,26,0,0,2841,2842,7,16,0,0,2842,2843,7,10,0,0,2843,2844,7,13,0,0,2844,2845,7,7,0,0,2845,2846,7,5,0,0,2846,2847,7,6,0,0,2847,422,1,0,0,0,2848,2849,7,25,0,0,2849,2850,7,5,0,0,2850,2851,7,15,0,0,2851,2852,7,17,0,0,2852,2853,7,6,0,0,2853,2854,7,8,0,0,2854,424,1,0,0,0,2855,2856,7,25,0,0,2856,2857,7,17,0,0,2857,2858,7,13,0,0,2858,2859,7,9,0,0,2859,2860,7,16,0,0,2860,426,1,0,0,0,2861,2862,7,25,0,0,2862,2863,7,19,0,0,2863,2864,7,6,0,0,2864,2865,7,6,0,0,2865,2866,7,19,0,0,2866,2867,7,29,0,0,2867,2868,7,17,0,0,2868,2869,7,7,0,0,2869,2870,7,23,0,0,2870,428,1,0,0,0,2871,2872,7,25,0,0,2872,2873,7,19,0,0,2873,2874,7,13,0,0,2874,2875,7,14,0,0,2875,2876,7,10,0,0,2876,430,1,0,0,0,2877,2878,7,25,0,0,2878,2879,7,19,0,0,2879,2880,7,13,0,0,2880,2881,7,29,0,0,2881,2882,7,5,0,0,2882,2883,7,13,0,0,2883,2884,7,12,0,0,2884,432,1,0,0,0,2885,2886,7,25,0,0,2886,2887,7,22,0,0,2887,2888,7,7,0,0,2888,2889,7,14,0,0,2889,2890,7,16,0,0,2890,2891,7,17,0,0,2891,2892,7,19,0,0,2892,2893,7,7,0,0,2893,434,1,0,0,0,2894,2895,7,25,0,0,2895,2896,7,22,0,0,2896,2897,7,7,0,0,2897,2898,7,14,0,0,2898,2899,7,16,0,0,2899,2900,7,17,0,0,2900,2901,7,19,0,0,2901,2902,7,7,0,0,2902,2903,7,9,0,0,2903,436,1,0,0,0,2904,2905,7,23,0,0,2905,2906,7,6,0,0,2906,2907,7,19,0,0,2907,2908,7,18,0,0,2908,2909,7,5,0,0,2909,2910,7,6,0,0,2910,438,1,0,0,0,2911,2912,7,23,0,0,2912,2913,7,13,0,0,2913,2914,7,5,0,0,2914,2915,7,7,0,0,2915,2916,7,16,0,0,2916,2917,7,10,0,0,2917,2918,7,12,0,0,2918,440,1,0,0,0,2919,2920,7,20,0,0,2920,2921,7,5,0,0,2921,2922,7,7,0,0,2922,2923,7,12,0,0,2923,2924,7,6,0,0,2924,2925,7,10,0,0,2925,2926,7,13,0,0,2926,442,1,0,0,0,2927,2928,7,20,0,0,2928,2929,7,10,0,0,2929,2930,7,5,0,0,2930,2931,7,12,0,0,2931,2932,7,10,0,0,2932,2933,7,13,0,0,2933,444,1,0,0,0,2934,2935,7,20,0,0,2935,2936,7,19,0,0,2936,2937,7,6,0,0,2937,2938,7,12,0,0,2938,446,1,0,0,0,2939,2940,7,20,0,0,2940,2941,7,19,0,0,2941,2942,7,22,0,0,2942,2943,7,13,0,0,2943,448,1,0,0,0,2944,2945,7,17,0,0,2945,2946,7,12,0,0,2946,2947,7,10,0,0,2947,2948,7,7,0,0,2948,2949,7,16,0,0,2949,2950,7,17,0,0,2950,2951,7,16,0,0,2951,2952,7,8,0,0,2952,450,1,0,0,0,2953,2954,7,17,0,0,2954,2955,7,25,0,0,2955,452,1,0,0,0,2956,2957,7,17,0,0,2957,2958,7,15,0,0,2958,2959,7,15,0,0,2959,2960,7,10,0,0,2960,2961,7,12,0,0,2961,2962,7,17,0,0,2962,2963,7,5,0,0,2963,2964,7,16,0,0,2964,2965,7,10,0,0,2965,454,1,0,0,0,2966,2967,7,17,0,0,2967,2968,7,15,0,0,2968,2969,7,15,0,0,2969,2970,7,22,0,0,2970,2971,7,16,0,0,2971,2972,7,5,0,0,2972,2973,7,18,0,0,2973,2974,7,6,0,0,2974,2975,7,10,0,0,2975,456,1,0,0,0,2976,2977,7,17,0,0,2977,2978,7,15,0,0,2978,2979,7,24,0,0,2979,2980,7,6,0,0,2980,2981,7,17,0,0,2981,2982,7,14,0,0,2982,2983,7,17,0,0,2983,2984,7,16,0,0,2984,458,1,0,0,0,2985,2986,7,17,0,0,2986,2987,7,7,0,0,2987,2988,7,14,0,0,2988,2989,7,6,0,0,2989,2990,7,22,0,0,2990,2991,7,12,0,0,2991,2992,7,17,0,0,2992,2993,7,7,0,0,2993,2994,7,23,0,0,2994,460,1,0,0,0,2995,2996,7,17,0,0,2996,2997,7,7,0,0,2997,2998,7,14,0,0,2998,2999,7,13,0,0,2999,3e3,7,10,0,0,3e3,3001,7,15,0,0,3001,3002,7,10,0,0,3002,3003,7,7,0,0,3003,3004,7,16,0,0,3004,462,1,0,0,0,3005,3006,7,17,0,0,3006,3007,7,7,0,0,3007,3008,7,12,0,0,3008,3009,7,10,0,0,3009,3010,7,26,0,0,3010,464,1,0,0,0,3011,3012,7,17,0,0,3012,3013,7,7,0,0,3013,3014,7,12,0,0,3014,3015,7,10,0,0,3015,3016,7,26,0,0,3016,3017,7,10,0,0,3017,3018,7,9,0,0,3018,466,1,0,0,0,3019,3020,7,17,0,0,3020,3021,7,7,0,0,3021,3022,7,20,0,0,3022,3023,7,10,0,0,3023,3024,7,13,0,0,3024,3025,7,17,0,0,3025,3026,7,16,0,0,3026,468,1,0,0,0,3027,3028,7,17,0,0,3028,3029,7,7,0,0,3029,3030,7,20,0,0,3030,3031,7,10,0,0,3031,3032,7,13,0,0,3032,3033,7,17,0,0,3033,3034,7,16,0,0,3034,3035,7,9,0,0,3035,470,1,0,0,0,3036,3037,7,17,0,0,3037,3038,7,7,0,0,3038,3039,7,6,0,0,3039,3040,7,17,0,0,3040,3041,7,7,0,0,3041,3042,7,10,0,0,3042,472,1,0,0,0,3043,3044,7,17,0,0,3044,3045,7,7,0,0,3045,3046,7,9,0,0,3046,3047,7,10,0,0,3047,3048,7,7,0,0,3048,3049,7,9,0,0,3049,3050,7,17,0,0,3050,3051,7,16,0,0,3051,3052,7,17,0,0,3052,3053,7,27,0,0,3053,3054,7,10,0,0,3054,474,1,0,0,0,3055,3056,7,17,0,0,3056,3057,7,7,0,0,3057,3058,7,9,0,0,3058,3059,7,10,0,0,3059,3060,7,13,0,0,3060,3061,7,16,0,0,3061,476,1,0,0,0,3062,3063,7,17,0,0,3063,3064,7,7,0,0,3064,3065,7,9,0,0,3065,3066,7,16,0,0,3066,3067,7,10,0,0,3067,3068,7,5,0,0,3068,3069,7,12,0,0,3069,478,1,0,0,0,3070,3071,7,17,0,0,3071,3072,7,7,0,0,3072,3073,7,27,0,0,3073,3074,7,19,0,0,3074,3075,7,21,0,0,3075,3076,7,10,0,0,3076,3077,7,13,0,0,3077,480,1,0,0,0,3078,3079,7,17,0,0,3079,3080,7,9,0,0,3080,3081,7,19,0,0,3081,3082,7,6,0,0,3082,3083,7,5,0,0,3083,3084,7,16,0,0,3084,3085,7,17,0,0,3085,3086,7,19,0,0,3086,3087,7,7,0,0,3087,482,1,0,0,0,3088,3089,7,21,0,0,3089,3090,7,10,0,0,3090,3091,7,8,0,0,3091,484,1,0,0,0,3092,3093,7,6,0,0,3093,3094,7,5,0,0,3094,3095,7,18,0,0,3095,3096,7,10,0,0,3096,3097,7,6,0,0,3097,486,1,0,0,0,3098,3099,7,6,0,0,3099,3100,7,5,0,0,3100,3101,7,7,0,0,3101,3102,7,23,0,0,3102,3103,7,22,0,0,3103,3104,7,5,0,0,3104,3105,7,23,0,0,3105,3106,7,10,0,0,3106,488,1,0,0,0,3107,3108,7,6,0,0,3108,3109,7,5,0,0,3109,3110,7,13,0,0,3110,3111,7,23,0,0,3111,3112,7,10,0,0,3112,490,1,0,0,0,3113,3114,7,6,0,0,3114,3115,7,5,0,0,3115,3116,7,9,0,0,3116,3117,7,16,0,0,3117,492,1,0,0,0,3118,3119,7,6,0,0,3119,3120,7,10,0,0,3120,3121,7,5,0,0,3121,3122,7,21,0,0,3122,3123,7,24,0,0,3123,3124,7,13,0,0,3124,3125,7,19,0,0,3125,3126,7,19,0,0,3126,3127,7,25,0,0,3127,494,1,0,0,0,3128,3129,7,6,0,0,3129,3130,7,10,0,0,3130,3131,7,27,0,0,3131,3132,7,10,0,0,3132,3133,7,6,0,0,3133,496,1,0,0,0,3134,3135,7,6,0,0,3135,3136,7,17,0,0,3136,3137,7,9,0,0,3137,3138,7,16,0,0,3138,3139,7,10,0,0,3139,3140,7,7,0,0,3140,498,1,0,0,0,3141,3142,7,6,0,0,3142,3143,7,19,0,0,3143,3144,7,5,0,0,3144,3145,7,12,0,0,3145,500,1,0,0,0,3146,3147,7,6,0,0,3147,3148,7,19,0,0,3148,3149,7,14,0,0,3149,3150,7,5,0,0,3150,3151,7,6,0,0,3151,502,1,0,0,0,3152,3153,7,6,0,0,3153,3154,7,19,0,0,3154,3155,7,14,0,0,3155,3156,7,5,0,0,3156,3157,7,16,0,0,3157,3158,7,17,0,0,3158,3159,7,19,0,0,3159,3160,7,7,0,0,3160,504,1,0,0,0,3161,3162,7,6,0,0,3162,3163,7,19,0,0,3163,3164,7,14,0,0,3164,3165,7,21,0,0,3165,506,1,0,0,0,3166,3167,7,15,0,0,3167,3168,7,5,0,0,3168,3169,7,24,0,0,3169,3170,7,24,0,0,3170,3171,7,17,0,0,3171,3172,7,7,0,0,3172,3173,7,23,0,0,3173,508,1,0,0,0,3174,3175,7,15,0,0,3175,3176,7,5,0,0,3176,3177,7,16,0,0,3177,3178,7,14,0,0,3178,3179,7,20,0,0,3179,510,1,0,0,0,3180,3181,7,15,0,0,3181,3182,7,5,0,0,3182,3183,7,16,0,0,3183,3184,7,14,0,0,3184,3185,7,20,0,0,3185,3186,7,10,0,0,3186,3187,7,12,0,0,3187,512,1,0,0,0,3188,3189,7,15,0,0,3189,3190,7,5,0,0,3190,3191,7,16,0,0,3191,3192,7,10,0,0,3192,3193,7,13,0,0,3193,3194,7,17,0,0,3194,3195,7,5,0,0,3195,3196,7,6,0,0,3196,3197,7,17,0,0,3197,3198,7,11,0,0,3198,3199,7,10,0,0,3199,3200,7,12,0,0,3200,514,1,0,0,0,3201,3202,7,15,0,0,3202,3203,7,5,0,0,3203,3204,7,26,0,0,3204,3205,7,27,0,0,3205,3206,7,5,0,0,3206,3207,7,6,0,0,3207,3208,7,22,0,0,3208,3209,7,10,0,0,3209,516,1,0,0,0,3210,3211,7,15,0,0,3211,3212,7,10,0,0,3212,3213,7,13,0,0,3213,3214,7,23,0,0,3214,3215,7,10,0,0,3215,518,1,0,0,0,3216,3217,7,15,0,0,3217,3218,7,17,0,0,3218,3219,7,7,0,0,3219,3220,7,22,0,0,3220,3221,7,16,0,0,3221,3222,7,10,0,0,3222,520,1,0,0,0,3223,3224,7,15,0,0,3224,3225,7,17,0,0,3225,3226,7,7,0,0,3226,3227,7,27,0,0,3227,3228,7,5,0,0,3228,3229,7,6,0,0,3229,3230,7,22,0,0,3230,3231,7,10,0,0,3231,522,1,0,0,0,3232,3233,7,15,0,0,3233,3234,7,19,0,0,3234,3235,7,12,0,0,3235,3236,7,10,0,0,3236,524,1,0,0,0,3237,3238,7,15,0,0,3238,3239,7,19,0,0,3239,3240,7,7,0,0,3240,3241,7,16,0,0,3241,3242,7,20,0,0,3242,526,1,0,0,0,3243,3244,7,15,0,0,3244,3245,7,19,0,0,3245,3246,7,27,0,0,3246,3247,7,10,0,0,3247,528,1,0,0,0,3248,3249,7,7,0,0,3249,3250,7,5,0,0,3250,3251,7,15,0,0,3251,3252,7,10,0,0,3252,530,1,0,0,0,3253,3254,7,7,0,0,3254,3255,7,5,0,0,3255,3256,7,15,0,0,3256,3257,7,10,0,0,3257,3258,7,9,0,0,3258,532,1,0,0,0,3259,3260,7,7,0,0,3260,3261,7,10,0,0,3261,3262,7,26,0,0,3262,3263,7,16,0,0,3263,534,1,0,0,0,3264,3265,7,7,0,0,3265,3266,7,19,0,0,3266,536,1,0,0,0,3267,3268,7,7,0,0,3268,3269,7,19,0,0,3269,3270,7,16,0,0,3270,3271,7,20,0,0,3271,3272,7,17,0,0,3272,3273,7,7,0,0,3273,3274,7,23,0,0,3274,538,1,0,0,0,3275,3276,7,7,0,0,3276,3277,7,19,0,0,3277,3278,7,16,0,0,3278,3279,7,17,0,0,3279,3280,7,25,0,0,3280,3281,7,8,0,0,3281,540,1,0,0,0,3282,3283,7,7,0,0,3283,3284,7,19,0,0,3284,3285,7,29,0,0,3285,3286,7,5,0,0,3286,3287,7,17,0,0,3287,3288,7,16,0,0,3288,542,1,0,0,0,3289,3290,7,7,0,0,3290,3291,7,22,0,0,3291,3292,7,6,0,0,3292,3293,7,6,0,0,3293,3294,7,9,0,0,3294,544,1,0,0,0,3295,3296,7,19,0,0,3296,3297,7,18,0,0,3297,3298,7,30,0,0,3298,3299,7,10,0,0,3299,3300,7,14,0,0,3300,3301,7,16,0,0,3301,546,1,0,0,0,3302,3303,7,19,0,0,3303,3304,7,25,0,0,3304,548,1,0,0,0,3305,3306,7,19,0,0,3306,3307,7,25,0,0,3307,3308,7,25,0,0,3308,550,1,0,0,0,3309,3310,7,19,0,0,3310,3311,7,17,0,0,3311,3312,7,12,0,0,3312,3313,7,9,0,0,3313,552,1,0,0,0,3314,3315,7,19,0,0,3315,3316,7,24,0,0,3316,3317,7,10,0,0,3317,3318,7,13,0,0,3318,3319,7,5,0,0,3319,3320,7,16,0,0,3320,3321,7,19,0,0,3321,3322,7,13,0,0,3322,554,1,0,0,0,3323,3324,7,19,0,0,3324,3325,7,24,0,0,3325,3326,7,16,0,0,3326,3327,7,17,0,0,3327,3328,7,19,0,0,3328,3329,7,7,0,0,3329,556,1,0,0,0,3330,3331,7,19,0,0,3331,3332,7,24,0,0,3332,3333,7,16,0,0,3333,3334,7,17,0,0,3334,3335,7,19,0,0,3335,3336,7,7,0,0,3336,3337,7,9,0,0,3337,558,1,0,0,0,3338,3339,7,19,0,0,3339,3340,7,29,0,0,3340,3341,7,7,0,0,3341,3342,7,10,0,0,3342,3343,7,12,0,0,3343,560,1,0,0,0,3344,3345,7,19,0,0,3345,3346,7,29,0,0,3346,3347,7,7,0,0,3347,3348,7,10,0,0,3348,3349,7,13,0,0,3349,562,1,0,0,0,3350,3351,7,24,0,0,3351,3352,7,5,0,0,3352,3353,7,13,0,0,3353,3354,7,9,0,0,3354,3355,7,10,0,0,3355,3356,7,13,0,0,3356,564,1,0,0,0,3357,3358,7,24,0,0,3358,3359,7,5,0,0,3359,3360,7,13,0,0,3360,3361,7,16,0,0,3361,3362,7,17,0,0,3362,3363,7,5,0,0,3363,3364,7,6,0,0,3364,566,1,0,0,0,3365,3366,7,24,0,0,3366,3367,7,5,0,0,3367,3368,7,13,0,0,3368,3369,7,16,0,0,3369,3370,7,17,0,0,3370,3371,7,16,0,0,3371,3372,7,17,0,0,3372,3373,7,19,0,0,3373,3374,7,7,0,0,3374,568,1,0,0,0,3375,3376,7,24,0,0,3376,3377,7,5,0,0,3377,3378,7,9,0,0,3378,3379,7,9,0,0,3379,3380,7,17,0,0,3380,3381,7,7,0,0,3381,3382,7,23,0,0,3382,570,1,0,0,0,3383,3384,7,24,0,0,3384,3385,7,5,0,0,3385,3386,7,9,0,0,3386,3387,7,9,0,0,3387,3388,7,29,0,0,3388,3389,7,19,0,0,3389,3390,7,13,0,0,3390,3391,7,12,0,0,3391,572,1,0,0,0,3392,3393,7,24,0,0,3393,3394,7,6,0,0,3394,3395,7,5,0,0,3395,3396,7,7,0,0,3396,3397,7,9,0,0,3397,574,1,0,0,0,3398,3399,7,24,0,0,3399,3400,7,13,0,0,3400,3401,7,10,0,0,3401,3402,7,14,0,0,3402,3403,7,10,0,0,3403,3404,7,12,0,0,3404,3405,7,17,0,0,3405,3406,7,7,0,0,3406,3407,7,23,0,0,3407,576,1,0,0,0,3408,3409,7,24,0,0,3409,3410,7,13,0,0,3410,3411,7,10,0,0,3411,3412,7,24,0,0,3412,3413,7,5,0,0,3413,3414,7,13,0,0,3414,3415,7,10,0,0,3415,578,1,0,0,0,3416,3417,7,24,0,0,3417,3418,7,13,0,0,3418,3419,7,10,0,0,3419,3420,7,24,0,0,3420,3421,7,5,0,0,3421,3422,7,13,0,0,3422,3423,7,10,0,0,3423,3424,7,12,0,0,3424,580,1,0,0,0,3425,3426,7,24,0,0,3426,3427,7,13,0,0,3427,3428,7,10,0,0,3428,3429,7,9,0,0,3429,3430,7,10,0,0,3430,3431,7,13,0,0,3431,3432,7,27,0,0,3432,3433,7,10,0,0,3433,582,1,0,0,0,3434,3435,7,24,0,0,3435,3436,7,13,0,0,3436,3437,7,17,0,0,3437,3438,7,19,0,0,3438,3439,7,13,0,0,3439,584,1,0,0,0,3440,3441,7,24,0,0,3441,3442,7,13,0,0,3442,3443,7,17,0,0,3443,3444,7,27,0,0,3444,3445,7,17,0,0,3445,3446,7,6,0,0,3446,3447,7,10,0,0,3447,3448,7,23,0,0,3448,3449,7,10,0,0,3449,3450,7,9,0,0,3450,586,1,0,0,0,3451,3452,7,24,0,0,3452,3453,7,13,0,0,3453,3454,7,19,0,0,3454,3455,7,14,0,0,3455,3456,7,10,0,0,3456,3457,7,12,0,0,3457,3458,7,22,0,0,3458,3459,7,13,0,0,3459,3460,7,5,0,0,3460,3461,7,6,0,0,3461,588,1,0,0,0,3462,3463,7,24,0,0,3463,3464,7,13,0,0,3464,3465,7,19,0,0,3465,3466,7,14,0,0,3466,3467,7,10,0,0,3467,3468,7,12,0,0,3468,3469,7,22,0,0,3469,3470,7,13,0,0,3470,3471,7,10,0,0,3471,590,1,0,0,0,3472,3473,7,24,0,0,3473,3474,7,13,0,0,3474,3475,7,19,0,0,3475,3476,7,23,0,0,3476,3477,7,13,0,0,3477,3478,7,5,0,0,3478,3479,7,15,0,0,3479,592,1,0,0,0,3480,3481,7,28,0,0,3481,3482,7,22,0,0,3482,3483,7,19,0,0,3483,3484,7,16,0,0,3484,3485,7,10,0,0,3485,594,1,0,0,0,3486,3487,7,13,0,0,3487,3488,7,5,0,0,3488,3489,7,7,0,0,3489,3490,7,23,0,0,3490,3491,7,10,0,0,3491,596,1,0,0,0,3492,3493,7,13,0,0,3493,3494,7,10,0,0,3494,3495,7,5,0,0,3495,3496,7,12,0,0,3496,598,1,0,0,0,3497,3498,7,13,0,0,3498,3499,7,10,0,0,3499,3500,7,5,0,0,3500,3501,7,9,0,0,3501,3502,7,9,0,0,3502,3503,7,17,0,0,3503,3504,7,23,0,0,3504,3505,7,7,0,0,3505,600,1,0,0,0,3506,3507,7,13,0,0,3507,3508,7,10,0,0,3508,3509,7,14,0,0,3509,3510,7,20,0,0,3510,3511,7,10,0,0,3511,3512,7,14,0,0,3512,3513,7,21,0,0,3513,602,1,0,0,0,3514,3515,7,13,0,0,3515,3516,7,10,0,0,3516,3517,7,14,0,0,3517,3518,7,22,0,0,3518,3519,7,13,0,0,3519,3520,7,9,0,0,3520,3521,7,17,0,0,3521,3522,7,27,0,0,3522,3523,7,10,0,0,3523,604,1,0,0,0,3524,3525,7,13,0,0,3525,3526,7,10,0,0,3526,3527,7,25,0,0,3527,606,1,0,0,0,3528,3529,7,13,0,0,3529,3530,7,10,0,0,3530,3531,7,25,0,0,3531,3532,7,13,0,0,3532,3533,7,10,0,0,3533,3534,7,9,0,0,3534,3535,7,20,0,0,3535,608,1,0,0,0,3536,3537,7,13,0,0,3537,3538,7,10,0,0,3538,3539,7,17,0,0,3539,3540,7,7,0,0,3540,3541,7,12,0,0,3541,3542,7,10,0,0,3542,3543,7,26,0,0,3543,610,1,0,0,0,3544,3545,7,13,0,0,3545,3546,7,10,0,0,3546,3547,7,6,0,0,3547,3548,7,5,0,0,3548,3549,7,16,0,0,3549,3550,7,17,0,0,3550,3551,7,27,0,0,3551,3552,7,10,0,0,3552,612,1,0,0,0,3553,3554,7,13,0,0,3554,3555,7,10,0,0,3555,3556,7,6,0,0,3556,3557,7,10,0,0,3557,3558,7,5,0,0,3558,3559,7,9,0,0,3559,3560,7,10,0,0,3560,614,1,0,0,0,3561,3562,7,13,0,0,3562,3563,7,10,0,0,3563,3564,7,7,0,0,3564,3565,7,5,0,0,3565,3566,7,15,0,0,3566,3567,7,10,0,0,3567,616,1,0,0,0,3568,3569,7,13,0,0,3569,3570,7,10,0,0,3570,3571,7,24,0,0,3571,3572,7,10,0,0,3572,3573,7,5,0,0,3573,3574,7,16,0,0,3574,3575,7,5,0,0,3575,3576,7,18,0,0,3576,3577,7,6,0,0,3577,3578,7,10,0,0,3578,618,1,0,0,0,3579,3580,7,13,0,0,3580,3581,7,10,0,0,3581,3582,7,24,0,0,3582,3583,7,6,0,0,3583,3584,7,5,0,0,3584,3585,7,14,0,0,3585,3586,7,10,0,0,3586,620,1,0,0,0,3587,3588,7,13,0,0,3588,3589,7,10,0,0,3589,3590,7,24,0,0,3590,3591,7,6,0,0,3591,3592,7,17,0,0,3592,3593,7,14,0,0,3593,3594,7,5,0,0,3594,622,1,0,0,0,3595,3596,7,13,0,0,3596,3597,7,10,0,0,3597,3598,7,9,0,0,3598,3599,7,10,0,0,3599,3600,7,16,0,0,3600,624,1,0,0,0,3601,3602,7,13,0,0,3602,3603,7,10,0,0,3603,3604,7,9,0,0,3604,3605,7,16,0,0,3605,3606,7,5,0,0,3606,3607,7,13,0,0,3607,3608,7,16,0,0,3608,626,1,0,0,0,3609,3610,7,13,0,0,3610,3611,7,10,0,0,3611,3612,7,9,0,0,3612,3613,7,16,0,0,3613,3614,7,13,0,0,3614,3615,7,17,0,0,3615,3616,7,14,0,0,3616,3617,7,16,0,0,3617,628,1,0,0,0,3618,3619,7,13,0,0,3619,3620,7,10,0,0,3620,3621,7,16,0,0,3621,3622,7,22,0,0,3622,3623,7,13,0,0,3623,3624,7,7,0,0,3624,3625,7,9,0,0,3625,630,1,0,0,0,3626,3627,7,13,0,0,3627,3628,7,10,0,0,3628,3629,7,27,0,0,3629,3630,7,19,0,0,3630,3631,7,21,0,0,3631,3632,7,10,0,0,3632,632,1,0,0,0,3633,3634,7,13,0,0,3634,3635,7,19,0,0,3635,3636,7,6,0,0,3636,3637,7,10,0,0,3637,634,1,0,0,0,3638,3639,7,13,0,0,3639,3640,7,19,0,0,3640,3641,7,6,0,0,3641,3642,7,6,0,0,3642,3643,7,18,0,0,3643,3644,7,5,0,0,3644,3645,7,14,0,0,3645,3646,7,21,0,0,3646,636,1,0,0,0,3647,3648,7,13,0,0,3648,3649,7,19,0,0,3649,3650,7,29,0,0,3650,3651,7,9,0,0,3651,638,1,0,0,0,3652,3653,7,13,0,0,3653,3654,7,22,0,0,3654,3655,7,6,0,0,3655,3656,7,10,0,0,3656,640,1,0,0,0,3657,3658,7,9,0,0,3658,3659,7,5,0,0,3659,3660,7,27,0,0,3660,3661,7,10,0,0,3661,3662,7,24,0,0,3662,3663,7,19,0,0,3663,3664,7,17,0,0,3664,3665,7,7,0,0,3665,3666,7,16,0,0,3666,642,1,0,0,0,3667,3668,7,9,0,0,3668,3669,7,14,0,0,3669,3670,7,20,0,0,3670,3671,7,10,0,0,3671,3672,7,15,0,0,3672,3673,7,5,0,0,3673,644,1,0,0,0,3674,3675,7,9,0,0,3675,3676,7,14,0,0,3676,3677,7,13,0,0,3677,3678,7,19,0,0,3678,3679,7,6,0,0,3679,3680,7,6,0,0,3680,646,1,0,0,0,3681,3682,7,9,0,0,3682,3683,7,10,0,0,3683,3684,7,5,0,0,3684,3685,7,13,0,0,3685,3686,7,14,0,0,3686,3687,7,20,0,0,3687,648,1,0,0,0,3688,3689,7,9,0,0,3689,3690,7,10,0,0,3690,3691,7,14,0,0,3691,3692,7,19,0,0,3692,3693,7,7,0,0,3693,3694,7,12,0,0,3694,650,1,0,0,0,3695,3696,7,9,0,0,3696,3697,7,10,0,0,3697,3698,7,14,0,0,3698,3699,7,22,0,0,3699,3700,7,13,0,0,3700,3701,7,17,0,0,3701,3702,7,16,0,0,3702,3703,7,8,0,0,3703,652,1,0,0,0,3704,3705,7,9,0,0,3705,3706,7,10,0,0,3706,3707,7,28,0,0,3707,3708,7,22,0,0,3708,3709,7,10,0,0,3709,3710,7,7,0,0,3710,3711,7,14,0,0,3711,3712,7,10,0,0,3712,654,1,0,0,0,3713,3714,7,9,0,0,3714,3715,7,10,0,0,3715,3716,7,28,0,0,3716,3717,7,22,0,0,3717,3718,7,10,0,0,3718,3719,7,7,0,0,3719,3720,7,14,0,0,3720,3721,7,10,0,0,3721,3722,7,9,0,0,3722,656,1,0,0,0,3723,3724,7,9,0,0,3724,3725,7,10,0,0,3725,3726,7,13,0,0,3726,3727,7,17,0,0,3727,3728,7,5,0,0,3728,3729,7,6,0,0,3729,3730,7,17,0,0,3730,3731,7,11,0,0,3731,3732,7,5,0,0,3732,3733,7,18,0,0,3733,3734,7,6,0,0,3734,3735,7,10,0,0,3735,658,1,0,0,0,3736,3737,7,9,0,0,3737,3738,7,10,0,0,3738,3739,7,13,0,0,3739,3740,7,27,0,0,3740,3741,7,10,0,0,3741,3742,7,13,0,0,3742,660,1,0,0,0,3743,3744,7,9,0,0,3744,3745,7,10,0,0,3745,3746,7,9,0,0,3746,3747,7,9,0,0,3747,3748,7,17,0,0,3748,3749,7,19,0,0,3749,3750,7,7,0,0,3750,662,1,0,0,0,3751,3752,7,9,0,0,3752,3753,7,10,0,0,3753,3754,7,16,0,0,3754,664,1,0,0,0,3755,3756,7,9,0,0,3756,3757,7,20,0,0,3757,3758,7,5,0,0,3758,3759,7,13,0,0,3759,3760,7,10,0,0,3760,666,1,0,0,0,3761,3762,7,9,0,0,3762,3763,7,20,0,0,3763,3764,7,19,0,0,3764,3765,7,29,0,0,3765,668,1,0,0,0,3766,3767,7,9,0,0,3767,3768,7,17,0,0,3768,3769,7,15,0,0,3769,3770,7,24,0,0,3770,3771,7,6,0,0,3771,3772,7,10,0,0,3772,670,1,0,0,0,3773,3774,7,9,0,0,3774,3775,7,7,0,0,3775,3776,7,5,0,0,3776,3777,7,24,0,0,3777,3778,7,9,0,0,3778,3779,7,20,0,0,3779,3780,7,19,0,0,3780,3781,7,16,0,0,3781,672,1,0,0,0,3782,3783,7,9,0,0,3783,3784,7,16,0,0,3784,3785,7,5,0,0,3785,3786,7,18,0,0,3786,3787,7,6,0,0,3787,3788,7,10,0,0,3788,674,1,0,0,0,3789,3790,7,9,0,0,3790,3791,7,16,0,0,3791,3792,7,5,0,0,3792,3793,7,7,0,0,3793,3794,7,12,0,0,3794,3795,7,5,0,0,3795,3796,7,6,0,0,3796,3797,7,19,0,0,3797,3798,7,7,0,0,3798,3799,7,10,0,0,3799,676,1,0,0,0,3800,3801,7,9,0,0,3801,3802,7,16,0,0,3802,3803,7,5,0,0,3803,3804,7,13,0,0,3804,3805,7,16,0,0,3805,678,1,0,0,0,3806,3807,7,9,0,0,3807,3808,7,16,0,0,3808,3809,7,5,0,0,3809,3810,7,16,0,0,3810,3811,7,10,0,0,3811,3812,7,15,0,0,3812,3813,7,10,0,0,3813,3814,7,7,0,0,3814,3815,7,16,0,0,3815,680,1,0,0,0,3816,3817,7,9,0,0,3817,3818,7,16,0,0,3818,3819,7,5,0,0,3819,3820,7,16,0,0,3820,3821,7,17,0,0,3821,3822,7,9,0,0,3822,3823,7,16,0,0,3823,3824,7,17,0,0,3824,3825,7,14,0,0,3825,3826,7,9,0,0,3826,682,1,0,0,0,3827,3828,7,9,0,0,3828,3829,7,16,0,0,3829,3830,7,12,0,0,3830,3831,7,17,0,0,3831,3832,7,7,0,0,3832,684,1,0,0,0,3833,3834,7,9,0,0,3834,3835,7,16,0,0,3835,3836,7,12,0,0,3836,3837,7,19,0,0,3837,3838,7,22,0,0,3838,3839,7,16,0,0,3839,686,1,0,0,0,3840,3841,7,9,0,0,3841,3842,7,16,0,0,3842,3843,7,19,0,0,3843,3844,7,13,0,0,3844,3845,7,5,0,0,3845,3846,7,23,0,0,3846,3847,7,10,0,0,3847,688,1,0,0,0,3848,3849,7,9,0,0,3849,3850,7,16,0,0,3850,3851,7,13,0,0,3851,3852,7,17,0,0,3852,3853,7,14,0,0,3853,3854,7,16,0,0,3854,690,1,0,0,0,3855,3856,7,9,0,0,3856,3857,7,16,0,0,3857,3858,7,13,0,0,3858,3859,7,17,0,0,3859,3860,7,24,0,0,3860,692,1,0,0,0,3861,3862,7,9,0,0,3862,3863,7,8,0,0,3863,3864,7,9,0,0,3864,3865,7,17,0,0,3865,3866,7,12,0,0,3866,694,1,0,0,0,3867,3868,7,9,0,0,3868,3869,7,8,0,0,3869,3870,7,9,0,0,3870,3871,7,16,0,0,3871,3872,7,10,0,0,3872,3873,7,15,0,0,3873,696,1,0,0,0,3874,3875,7,16,0,0,3875,3876,7,5,0,0,3876,3877,7,18,0,0,3877,3878,7,6,0,0,3878,3879,7,10,0,0,3879,3880,7,9,0,0,3880,698,1,0,0,0,3881,3882,7,16,0,0,3882,3883,7,5,0,0,3883,3884,7,18,0,0,3884,3885,7,6,0,0,3885,3886,7,10,0,0,3886,3887,7,9,0,0,3887,3888,7,24,0,0,3888,3889,7,5,0,0,3889,3890,7,14,0,0,3890,3891,7,10,0,0,3891,700,1,0,0,0,3892,3893,7,16,0,0,3893,3894,7,10,0,0,3894,3895,7,15,0,0,3895,3896,7,24,0,0,3896,702,1,0,0,0,3897,3898,7,16,0,0,3898,3899,7,10,0,0,3899,3900,7,15,0,0,3900,3901,7,24,0,0,3901,3902,7,6,0,0,3902,3903,7,5,0,0,3903,3904,7,16,0,0,3904,3905,7,10,0,0,3905,704,1,0,0,0,3906,3907,7,16,0,0,3907,3908,7,10,0,0,3908,3909,7,15,0,0,3909,3910,7,24,0,0,3910,3911,7,19,0,0,3911,3912,7,13,0,0,3912,3913,7,5,0,0,3913,3914,7,13,0,0,3914,3915,7,8,0,0,3915,706,1,0,0,0,3916,3917,7,16,0,0,3917,3918,7,10,0,0,3918,3919,7,26,0,0,3919,3920,7,16,0,0,3920,708,1,0,0,0,3921,3922,7,16,0,0,3922,3923,7,13,0,0,3923,3924,7,5,0,0,3924,3925,7,7,0,0,3925,3926,7,9,0,0,3926,3927,7,5,0,0,3927,3928,7,14,0,0,3928,3929,7,16,0,0,3929,3930,7,17,0,0,3930,3931,7,19,0,0,3931,3932,7,7,0,0,3932,710,1,0,0,0,3933,3934,7,16,0,0,3934,3935,7,13,0,0,3935,3936,7,17,0,0,3936,3937,7,23,0,0,3937,3938,7,23,0,0,3938,3939,7,10,0,0,3939,3940,7,13,0,0,3940,712,1,0,0,0,3941,3942,7,16,0,0,3942,3943,7,13,0,0,3943,3944,7,22,0,0,3944,3945,7,7,0,0,3945,3946,7,14,0,0,3946,3947,7,5,0,0,3947,3948,7,16,0,0,3948,3949,7,10,0,0,3949,714,1,0,0,0,3950,3951,7,16,0,0,3951,3952,7,13,0,0,3952,3953,7,22,0,0,3953,3954,7,9,0,0,3954,3955,7,16,0,0,3955,3956,7,10,0,0,3956,3957,7,12,0,0,3957,716,1,0,0,0,3958,3959,7,16,0,0,3959,3960,7,8,0,0,3960,3961,7,24,0,0,3961,3962,7,10,0,0,3962,718,1,0,0,0,3963,3964,7,16,0,0,3964,3965,7,8,0,0,3965,3966,7,24,0,0,3966,3967,7,10,0,0,3967,3968,7,9,0,0,3968,720,1,0,0,0,3969,3970,7,22,0,0,3970,3971,7,7,0,0,3971,3972,7,18,0,0,3972,3973,7,19,0,0,3973,3974,7,22,0,0,3974,3975,7,7,0,0,3975,3976,7,12,0,0,3976,3977,7,10,0,0,3977,3978,7,12,0,0,3978,722,1,0,0,0,3979,3980,7,22,0,0,3980,3981,7,7,0,0,3981,3982,7,14,0,0,3982,3983,7,19,0,0,3983,3984,7,15,0,0,3984,3985,7,15,0,0,3985,3986,7,17,0,0,3986,3987,7,16,0,0,3987,3988,7,16,0,0,3988,3989,7,10,0,0,3989,3990,7,12,0,0,3990,724,1,0,0,0,3991,3992,7,22,0,0,3992,3993,7,7,0,0,3993,3994,7,10,0,0,3994,3995,7,7,0,0,3995,3996,7,14,0,0,3996,3997,7,13,0,0,3997,3998,7,8,0,0,3998,3999,7,24,0,0,3999,4e3,7,16,0,0,4e3,4001,7,10,0,0,4001,4002,7,12,0,0,4002,726,1,0,0,0,4003,4004,7,22,0,0,4004,4005,7,7,0,0,4005,4006,7,21,0,0,4006,4007,7,7,0,0,4007,4008,7,19,0,0,4008,4009,7,29,0,0,4009,4010,7,7,0,0,4010,728,1,0,0,0,4011,4012,7,22,0,0,4012,4013,7,7,0,0,4013,4014,7,6,0,0,4014,4015,7,17,0,0,4015,4016,7,9,0,0,4016,4017,7,16,0,0,4017,4018,7,10,0,0,4018,4019,7,7,0,0,4019,730,1,0,0,0,4020,4021,7,22,0,0,4021,4022,7,7,0,0,4022,4023,7,6,0,0,4023,4024,7,19,0,0,4024,4025,7,23,0,0,4025,4026,7,23,0,0,4026,4027,7,10,0,0,4027,4028,7,12,0,0,4028,732,1,0,0,0,4029,4030,7,22,0,0,4030,4031,7,7,0,0,4031,4032,7,16,0,0,4032,4033,7,17,0,0,4033,4034,7,6,0,0,4034,734,1,0,0,0,4035,4036,7,22,0,0,4036,4037,7,24,0,0,4037,4038,7,12,0,0,4038,4039,7,5,0,0,4039,4040,7,16,0,0,4040,4041,7,10,0,0,4041,736,1,0,0,0,4042,4043,7,27,0,0,4043,4044,7,5,0,0,4044,4045,7,14,0,0,4045,4046,7,22,0,0,4046,4047,7,22,0,0,4047,4048,7,15,0,0,4048,738,1,0,0,0,4049,4050,7,27,0,0,4050,4051,7,5,0,0,4051,4052,7,6,0,0,4052,4053,7,17,0,0,4053,4054,7,12,0,0,4054,740,1,0,0,0,4055,4056,7,27,0,0,4056,4057,7,5,0,0,4057,4058,7,6,0,0,4058,4059,7,17,0,0,4059,4060,7,12,0,0,4060,4061,7,5,0,0,4061,4062,7,16,0,0,4062,4063,7,10,0,0,4063,742,1,0,0,0,4064,4065,7,27,0,0,4065,4066,7,5,0,0,4066,4067,7,6,0,0,4067,4068,7,17,0,0,4068,4069,7,12,0,0,4069,4070,7,5,0,0,4070,4071,7,16,0,0,4071,4072,7,19,0,0,4072,4073,7,13,0,0,4073,744,1,0,0,0,4074,4075,7,27,0,0,4075,4076,7,5,0,0,4076,4077,7,13,0,0,4077,4078,7,8,0,0,4078,4079,7,17,0,0,4079,4080,7,7,0,0,4080,4081,7,23,0,0,4081,746,1,0,0,0,4082,4083,7,27,0,0,4083,4084,7,10,0,0,4084,4085,7,13,0,0,4085,4086,7,9,0,0,4086,4087,7,17,0,0,4087,4088,7,19,0,0,4088,4089,7,7,0,0,4089,748,1,0,0,0,4090,4091,7,27,0,0,4091,4092,7,17,0,0,4092,4093,7,10,0,0,4093,4094,7,29,0,0,4094,750,1,0,0,0,4095,4096,7,27,0,0,4096,4097,7,19,0,0,4097,4098,7,6,0,0,4098,4099,7,5,0,0,4099,4100,7,16,0,0,4100,4101,7,17,0,0,4101,4102,7,6,0,0,4102,4103,7,10,0,0,4103,752,1,0,0,0,4104,4105,7,29,0,0,4105,4106,7,20,0,0,4106,4107,7,17,0,0,4107,4108,7,16,0,0,4108,4109,7,10,0,0,4109,4110,7,9,0,0,4110,4111,7,24,0,0,4111,4112,7,5,0,0,4112,4113,7,14,0,0,4113,4114,7,10,0,0,4114,754,1,0,0,0,4115,4116,7,29,0,0,4116,4117,7,17,0,0,4117,4118,7,16,0,0,4118,4119,7,20,0,0,4119,4120,7,19,0,0,4120,4121,7,22,0,0,4121,4122,7,16,0,0,4122,756,1,0,0,0,4123,4124,7,29,0,0,4124,4125,7,19,0,0,4125,4126,7,13,0,0,4126,4127,7,21,0,0,4127,758,1,0,0,0,4128,4129,7,29,0,0,4129,4130,7,13,0,0,4130,4131,7,5,0,0,4131,4132,7,24,0,0,4132,4133,7,24,0,0,4133,4134,7,10,0,0,4134,4135,7,13,0,0,4135,760,1,0,0,0,4136,4137,7,29,0,0,4137,4138,7,13,0,0,4138,4139,7,17,0,0,4139,4140,7,16,0,0,4140,4141,7,10,0,0,4141,762,1,0,0,0,4142,4143,7,26,0,0,4143,4144,7,15,0,0,4144,4145,7,6,0,0,4145,764,1,0,0,0,4146,4147,7,8,0,0,4147,4148,7,10,0,0,4148,4149,7,5,0,0,4149,4150,7,13,0,0,4150,766,1,0,0,0,4151,4152,7,8,0,0,4152,4153,7,10,0,0,4153,4154,7,9,0,0,4154,768,1,0,0,0,4155,4156,7,11,0,0,4156,4157,7,19,0,0,4157,4158,7,7,0,0,4158,4159,7,10,0,0,4159,770,1,0,0,0,4160,4161,7,18,0,0,4161,4162,7,10,0,0,4162,4163,7,16,0,0,4163,4164,7,29,0,0,4164,4165,7,10,0,0,4165,4166,7,10,0,0,4166,4167,7,7,0,0,4167,772,1,0,0,0,4168,4169,7,18,0,0,4169,4170,7,17,0,0,4170,4171,7,23,0,0,4171,4172,7,17,0,0,4172,4173,7,7,0,0,4173,4174,7,16,0,0,4174,774,1,0,0,0,4175,4176,7,18,0,0,4176,4177,7,17,0,0,4177,4178,7,16,0,0,4178,776,1,0,0,0,4179,4180,7,18,0,0,4180,4181,7,19,0,0,4181,4182,7,19,0,0,4182,4183,7,6,0,0,4183,4184,7,10,0,0,4184,4185,7,5,0,0,4185,4186,7,7,0,0,4186,778,1,0,0,0,4187,4188,7,14,0,0,4188,4189,7,20,0,0,4189,4190,7,5,0,0,4190,4191,7,13,0,0,4191,780,1,0,0,0,4192,4193,7,14,0,0,4193,4194,7,20,0,0,4194,4195,7,5,0,0,4195,4196,7,13,0,0,4196,4197,7,5,0,0,4197,4198,7,14,0,0,4198,4199,7,16,0,0,4199,4200,7,10,0,0,4200,4201,7,13,0,0,4201,782,1,0,0,0,4202,4203,7,14,0,0,4203,4204,7,19,0,0,4204,4205,7,5,0,0,4205,4206,7,6,0,0,4206,4207,7,10,0,0,4207,4208,7,9,0,0,4208,4209,7,14,0,0,4209,4210,7,10,0,0,4210,784,1,0,0,0,4211,4212,7,12,0,0,4212,4213,7,10,0,0,4213,4214,7,14,0,0,4214,786,1,0,0,0,4215,4216,7,12,0,0,4216,4217,7,10,0,0,4217,4218,7,14,0,0,4218,4219,7,17,0,0,4219,4220,7,15,0,0,4220,4221,7,5,0,0,4221,4222,7,6,0,0,4222,788,1,0,0,0,4223,4224,7,10,0,0,4224,4225,7,26,0,0,4225,4226,7,17,0,0,4226,4227,7,9,0,0,4227,4228,7,16,0,0,4228,4229,7,9,0,0,4229,790,1,0,0,0,4230,4231,7,10,0,0,4231,4232,7,26,0,0,4232,4233,7,16,0,0,4233,4234,7,13,0,0,4234,4235,7,5,0,0,4235,4236,7,14,0,0,4236,4237,7,16,0,0,4237,792,1,0,0,0,4238,4239,7,25,0,0,4239,4240,7,6,0,0,4240,4241,7,19,0,0,4241,4242,7,5,0,0,4242,4243,7,16,0,0,4243,794,1,0,0,0,4244,4245,7,23,0,0,4245,4246,7,13,0,0,4246,4247,7,10,0,0,4247,4248,7,5,0,0,4248,4249,7,16,0,0,4249,4250,7,10,0,0,4250,4251,7,9,0,0,4251,4252,7,16,0,0,4252,796,1,0,0,0,4253,4254,7,17,0,0,4254,4255,7,7,0,0,4255,4256,7,19,0,0,4256,4257,7,22,0,0,4257,4258,7,16,0,0,4258,798,1,0,0,0,4259,4260,7,17,0,0,4260,4261,7,7,0,0,4261,4262,7,16,0,0,4262,800,1,0,0,0,4263,4264,7,17,0,0,4264,4265,7,7,0,0,4265,4266,7,16,0,0,4266,4267,7,10,0,0,4267,4268,7,23,0,0,4268,4269,7,10,0,0,4269,4270,7,13,0,0,4270,802,1,0,0,0,4271,4272,7,17,0,0,4272,4273,7,7,0,0,4273,4274,7,16,0,0,4274,4275,7,10,0,0,4275,4276,7,13,0,0,4276,4277,7,27,0,0,4277,4278,7,5,0,0,4278,4279,7,6,0,0,4279,804,1,0,0,0,4280,4281,7,6,0,0,4281,4282,7,10,0,0,4282,4283,7,5,0,0,4283,4284,7,9,0,0,4284,4285,7,16,0,0,4285,806,1,0,0,0,4286,4287,7,7,0,0,4287,4288,7,5,0,0,4288,4289,7,16,0,0,4289,4290,7,17,0,0,4290,4291,7,19,0,0,4291,4292,7,7,0,0,4292,4293,7,5,0,0,4293,4294,7,6,0,0,4294,808,1,0,0,0,4295,4296,7,7,0,0,4296,4297,7,14,0,0,4297,4298,7,20,0,0,4298,4299,7,5,0,0,4299,4300,7,13,0,0,4300,810,1,0,0,0,4301,4302,7,7,0,0,4302,4303,7,19,0,0,4303,4304,7,7,0,0,4304,4305,7,10,0,0,4305,812,1,0,0,0,4306,4307,7,7,0,0,4307,4308,7,22,0,0,4308,4309,7,6,0,0,4309,4310,7,6,0,0,4310,4311,7,17,0,0,4311,4312,7,25,0,0,4312,814,1,0,0,0,4313,4314,7,7,0,0,4314,4315,7,22,0,0,4315,4316,7,15,0,0,4316,4317,7,10,0,0,4317,4318,7,13,0,0,4318,4319,7,17,0,0,4319,4320,7,14,0,0,4320,816,1,0,0,0,4321,4322,7,19,0,0,4322,4323,7,27,0,0,4323,4324,7,10,0,0,4324,4325,7,13,0,0,4325,4326,7,6,0,0,4326,4327,7,5,0,0,4327,4328,7,8,0,0,4328,818,1,0,0,0,4329,4330,7,24,0,0,4330,4331,7,19,0,0,4331,4332,7,9,0,0,4332,4333,7,17,0,0,4333,4334,7,16,0,0,4334,4335,7,17,0,0,4335,4336,7,19,0,0,4336,4337,7,7,0,0,4337,820,1,0,0,0,4338,4339,7,24,0,0,4339,4340,7,13,0,0,4340,4341,7,10,0,0,4341,4342,7,14,0,0,4342,4343,7,17,0,0,4343,4344,7,9,0,0,4344,4345,7,17,0,0,4345,4346,7,19,0,0,4346,4347,7,7,0,0,4347,822,1,0,0,0,4348,4349,7,13,0,0,4349,4350,7,10,0,0,4350,4351,7,5,0,0,4351,4352,7,6,0,0,4352,824,1,0,0,0,4353,4354,7,13,0,0,4354,4355,7,19,0,0,4355,4356,7,29,0,0,4356,826,1,0,0,0,4357,4358,7,9,0,0,4358,4359,7,10,0,0,4359,4360,7,16,0,0,4360,4361,7,19,0,0,4361,4362,7,25,0,0,4362,828,1,0,0,0,4363,4364,7,9,0,0,4364,4365,7,15,0,0,4365,4366,7,5,0,0,4366,4367,7,6,0,0,4367,4368,7,6,0,0,4368,4369,7,17,0,0,4369,4370,7,7,0,0,4370,4371,7,16,0,0,4371,830,1,0,0,0,4372,4373,7,9,0,0,4373,4374,7,22,0,0,4374,4375,7,18,0,0,4375,4376,7,9,0,0,4376,4377,7,16,0,0,4377,4378,7,13,0,0,4378,4379,7,17,0,0,4379,4380,7,7,0,0,4380,4381,7,23,0,0,4381,832,1,0,0,0,4382,4383,7,16,0,0,4383,4384,7,17,0,0,4384,4385,7,15,0,0,4385,4386,7,10,0,0,4386,834,1,0,0,0,4387,4388,7,16,0,0,4388,4389,7,17,0,0,4389,4390,7,15,0,0,4390,4391,7,10,0,0,4391,4392,7,9,0,0,4392,4393,7,16,0,0,4393,4394,7,5,0,0,4394,4395,7,15,0,0,4395,4396,7,24,0,0,4396,836,1,0,0,0,4397,4398,7,16,0,0,4398,4399,7,13,0,0,4399,4400,7,10,0,0,4400,4401,7,5,0,0,4401,4402,7,16,0,0,4402,838,1,0,0,0,4403,4404,7,16,0,0,4404,4405,7,13,0,0,4405,4406,7,17,0,0,4406,4407,7,15,0,0,4407,840,1,0,0,0,4408,4409,7,27,0,0,4409,4410,7,5,0,0,4410,4411,7,6,0,0,4411,4412,7,22,0,0,4412,4413,7,10,0,0,4413,4414,7,9,0,0,4414,842,1,0,0,0,4415,4416,7,27,0,0,4416,4417,7,5,0,0,4417,4418,7,13,0,0,4418,4419,7,14,0,0,4419,4420,7,20,0,0,4420,4421,7,5,0,0,4421,4422,7,13,0,0,4422,844,1,0,0,0,4423,4424,7,26,0,0,4424,4425,7,15,0,0,4425,4426,7,6,0,0,4426,4427,7,5,0,0,4427,4428,7,16,0,0,4428,4429,7,16,0,0,4429,4430,7,13,0,0,4430,4431,7,17,0,0,4431,4432,7,18,0,0,4432,4433,7,22,0,0,4433,4434,7,16,0,0,4434,4435,7,10,0,0,4435,4436,7,9,0,0,4436,846,1,0,0,0,4437,4438,7,26,0,0,4438,4439,7,15,0,0,4439,4440,7,6,0,0,4440,4441,7,14,0,0,4441,4442,7,19,0,0,4442,4443,7,15,0,0,4443,4444,7,15,0,0,4444,4445,7,10,0,0,4445,4446,7,7,0,0,4446,4447,7,16,0,0,4447,848,1,0,0,0,4448,4449,7,26,0,0,4449,4450,7,15,0,0,4450,4451,7,6,0,0,4451,4452,7,5,0,0,4452,4453,7,23,0,0,4453,4454,7,23,0,0,4454,850,1,0,0,0,4455,4456,7,26,0,0,4456,4457,7,15,0,0,4457,4458,7,6,0,0,4458,4459,5,95,0,0,4459,4460,7,17,0,0,4460,4461,7,9,0,0,4461,4462,5,95,0,0,4462,4463,7,29,0,0,4463,4464,7,10,0,0,4464,4465,7,6,0,0,4465,4466,7,6,0,0,4466,4467,5,95,0,0,4467,4468,7,25,0,0,4468,4469,7,19,0,0,4469,4470,7,13,0,0,4470,4471,7,15,0,0,4471,4472,7,10,0,0,4472,4473,7,12,0,0,4473,852,1,0,0,0,4474,4475,7,26,0,0,4475,4476,7,15,0,0,4476,4477,7,6,0,0,4477,4478,5,95,0,0,4478,4479,7,17,0,0,4479,4480,7,9,0,0,4480,4481,5,95,0,0,4481,4482,7,29,0,0,4482,4483,7,10,0,0,4483,4484,7,6,0,0,4484,4485,7,6,0,0,4485,4486,5,95,0,0,4486,4487,7,25,0,0,4487,4488,7,19,0,0,4488,4489,7,13,0,0,4489,4490,7,15,0,0,4490,4491,7,10,0,0,4491,4492,7,12,0,0,4492,4493,5,95,0,0,4493,4494,7,12,0,0,4494,4495,7,19,0,0,4495,4496,7,14,0,0,4496,4497,7,22,0,0,4497,4498,7,15,0,0,4498,4499,7,10,0,0,4499,4500,7,7,0,0,4500,4501,7,16,0,0,4501,854,1,0,0,0,4502,4503,7,26,0,0,4503,4504,7,15,0,0,4504,4505,7,6,0,0,4505,4506,5,95,0,0,4506,4507,7,17,0,0,4507,4508,7,9,0,0,4508,4509,5,95,0,0,4509,4510,7,29,0,0,4510,4511,7,10,0,0,4511,4512,7,6,0,0,4512,4513,7,6,0,0,4513,4514,5,95,0,0,4514,4515,7,25,0,0,4515,4516,7,19,0,0,4516,4517,7,13,0,0,4517,4518,7,15,0,0,4518,4519,7,10,0,0,4519,4520,7,12,0,0,4520,4521,5,95,0,0,4521,4522,7,14,0,0,4522,4523,7,19,0,0,4523,4524,7,7,0,0,4524,4525,7,16,0,0,4525,4526,7,10,0,0,4526,4527,7,7,0,0,4527,4528,7,16,0,0,4528,856,1,0,0,0,4529,4530,7,26,0,0,4530,4531,7,24,0,0,4531,4532,7,5,0,0,4532,4533,7,16,0,0,4533,4534,7,20,0,0,4534,858,1,0,0,0,4535,4536,7,26,0,0,4536,4537,7,24,0,0,4537,4538,7,5,0,0,4538,4539,7,16,0,0,4539,4540,7,20,0,0,4540,4541,5,95,0,0,4541,4542,7,10,0,0,4542,4543,7,26,0,0,4543,4544,7,17,0,0,4544,4545,7,9,0,0,4545,4546,7,16,0,0,4546,4547,7,9,0,0,4547,860,1,0,0,0,4548,4549,7,26,0,0,4549,4550,7,15,0,0,4550,4551,7,6,0,0,4551,4552,7,14,0,0,4552,4553,7,19,0,0,4553,4554,7,7,0,0,4554,4555,7,14,0,0,4555,4556,7,5,0,0,4556,4557,7,16,0,0,4557,862,1,0,0,0,4558,4559,7,26,0,0,4559,4560,7,15,0,0,4560,4561,7,6,0,0,4561,4562,7,10,0,0,4562,4563,7,6,0,0,4563,4564,7,10,0,0,4564,4565,7,15,0,0,4565,4566,7,10,0,0,4566,4567,7,7,0,0,4567,4568,7,16,0,0,4568,864,1,0,0,0,4569,4570,7,26,0,0,4570,4571,7,15,0,0,4571,4572,7,6,0,0,4572,4573,7,10,0,0,4573,4574,7,26,0,0,4574,4575,7,17,0,0,4575,4576,7,9,0,0,4576,4577,7,16,0,0,4577,4578,7,9,0,0,4578,866,1,0,0,0,4579,4580,7,26,0,0,4580,4581,7,15,0,0,4581,4582,7,6,0,0,4582,4583,7,25,0,0,4583,4584,7,19,0,0,4584,4585,7,13,0,0,4585,4586,7,10,0,0,4586,4587,7,9,0,0,4587,4588,7,16,0,0,4588,868,1,0,0,0,4589,4590,7,26,0,0,4590,4591,7,15,0,0,4591,4592,7,6,0,0,4592,4593,7,24,0,0,4593,4594,7,5,0,0,4594,4595,7,13,0,0,4595,4596,7,9,0,0,4596,4597,7,10,0,0,4597,870,1,0,0,0,4598,4599,7,26,0,0,4599,4600,7,15,0,0,4600,4601,7,6,0,0,4601,4602,7,24,0,0,4602,4603,7,17,0,0,4603,872,1,0,0,0,4604,4605,7,26,0,0,4605,4606,7,15,0,0,4606,4607,7,6,0,0,4607,4608,7,13,0,0,4608,4609,7,19,0,0,4609,4610,7,19,0,0,4610,4611,7,16,0,0,4611,874,1,0,0,0,4612,4613,7,26,0,0,4613,4614,7,15,0,0,4614,4615,7,6,0,0,4615,4616,7,9,0,0,4616,4617,7,10,0,0,4617,4618,7,13,0,0,4618,4619,7,17,0,0,4619,4620,7,5,0,0,4620,4621,7,6,0,0,4621,4622,7,17,0,0,4622,4623,7,11,0,0,4623,4624,7,10,0,0,4624,876,1,0,0,0,4625,4626,7,14,0,0,4626,4627,7,5,0,0,4627,4628,7,6,0,0,4628,4629,7,6,0,0,4629,878,1,0,0,0,4630,4631,7,14,0,0,4631,4632,7,22,0,0,4632,4633,7,13,0,0,4633,4634,7,13,0,0,4634,4635,7,10,0,0,4635,4636,7,7,0,0,4636,4637,7,16,0,0,4637,880,1,0,0,0,4638,4639,7,5,0,0,4639,4640,7,16,0,0,4640,4641,7,16,0,0,4641,4642,7,5,0,0,4642,4643,7,14,0,0,4643,4644,7,20,0,0,4644,882,1,0,0,0,4645,4646,7,12,0,0,4646,4647,7,10,0,0,4647,4648,7,16,0,0,4648,4649,7,5,0,0,4649,4650,7,14,0,0,4650,4651,7,20,0,0,4651,884,1,0,0,0,4652,4653,7,10,0,0,4653,4654,7,26,0,0,4654,4655,7,24,0,0,4655,4656,7,13,0,0,4656,4657,7,10,0,0,4657,4658,7,9,0,0,4658,4659,7,9,0,0,4659,4660,7,17,0,0,4660,4661,7,19,0,0,4661,4662,7,7,0,0,4662,886,1,0,0,0,4663,4664,7,23,0,0,4664,4665,7,10,0,0,4665,4666,7,7,0,0,4666,4667,7,10,0,0,4667,4668,7,13,0,0,4668,4669,7,5,0,0,4669,4670,7,16,0,0,4670,4671,7,10,0,0,4671,4672,7,12,0,0,4672,888,1,0,0,0,4673,4674,7,6,0,0,4674,4675,7,19,0,0,4675,4676,7,23,0,0,4676,4677,7,23,0,0,4677,4678,7,10,0,0,4678,4679,7,12,0,0,4679,890,1,0,0,0,4680,4681,7,9,0,0,4681,4682,7,16,0,0,4682,4683,7,19,0,0,4683,4684,7,13,0,0,4684,4685,7,10,0,0,4685,4686,7,12,0,0,4686,892,1,0,0,0,4687,4688,7,17,0,0,4688,4689,7,7,0,0,4689,4690,7,14,0,0,4690,4691,7,6,0,0,4691,4692,7,22,0,0,4692,4693,7,12,0,0,4693,4694,7,10,0,0,4694,894,1,0,0,0,4695,4696,7,13,0,0,4696,4697,7,19,0,0,4697,4698,7,22,0,0,4698,4699,7,16,0,0,4699,4700,7,17,0,0,4700,4701,7,7,0,0,4701,4702,7,10,0,0,4702,896,1,0,0,0,4703,4704,7,16,0,0,4704,4705,7,13,0,0,4705,4706,7,5,0,0,4706,4707,7,7,0,0,4707,4708,7,9,0,0,4708,4709,7,25,0,0,4709,4710,7,19,0,0,4710,4711,7,13,0,0,4711,4712,7,15,0,0,4712,898,1,0,0,0,4713,4714,7,17,0,0,4714,4715,7,15,0,0,4715,4716,7,24,0,0,4716,4717,7,19,0,0,4717,4718,7,13,0,0,4718,4719,7,16,0,0,4719,900,1,0,0,0,4720,4721,7,24,0,0,4721,4722,7,19,0,0,4722,4723,7,6,0,0,4723,4724,7,17,0,0,4724,4725,7,14,0,0,4725,4726,7,8,0,0,4726,902,1,0,0,0,4727,4728,7,15,0,0,4728,4729,7,10,0,0,4729,4730,7,16,0,0,4730,4731,7,20,0,0,4731,4732,7,19,0,0,4732,4733,7,12,0,0,4733,904,1,0,0,0,4734,4735,7,13,0,0,4735,4736,7,10,0,0,4736,4737,7,25,0,0,4737,4738,7,10,0,0,4738,4739,7,13,0,0,4739,4740,7,10,0,0,4740,4741,7,7,0,0,4741,4742,7,14,0,0,4742,4743,7,17,0,0,4743,4744,7,7,0,0,4744,4745,7,23,0,0,4745,906,1,0,0,0,4746,4747,7,7,0,0,4747,4748,7,10,0,0,4748,4749,7,29,0,0,4749,908,1,0,0,0,4750,4751,7,19,0,0,4751,4752,7,6,0,0,4752,4753,7,12,0,0,4753,910,1,0,0,0,4754,4755,7,27,0,0,4755,4756,7,5,0,0,4756,4757,7,6,0,0,4757,4758,7,22,0,0,4758,4759,7,10,0,0,4759,912,1,0,0,0,4760,4761,7,9,0,0,4761,4762,7,22,0,0,4762,4763,7,18,0,0,4763,4764,7,9,0,0,4764,4765,7,14,0,0,4765,4766,7,13,0,0,4766,4767,7,17,0,0,4767,4768,7,24,0,0,4768,4769,7,16,0,0,4769,4770,7,17,0,0,4770,4771,7,19,0,0,4771,4772,7,7,0,0,4772,914,1,0,0,0,4773,4774,7,24,0,0,4774,4775,7,22,0,0,4775,4776,7,18,0,0,4776,4777,7,6,0,0,4777,4778,7,17,0,0,4778,4779,7,14,0,0,4779,4780,7,5,0,0,4780,4781,7,16,0,0,4781,4782,7,17,0,0,4782,4783,7,19,0,0,4783,4784,7,7,0,0,4784,916,1,0,0,0,4785,4786,7,19,0,0,4786,4787,7,22,0,0,4787,4788,7,16,0,0,4788,918,1,0,0,0,4789,4790,7,10,0,0,4790,4791,7,7,0,0,4791,4792,7,12,0,0,4792,920,1,0,0,0,4793,4794,7,13,0,0,4794,4795,7,19,0,0,4795,4796,7,22,0,0,4796,4797,7,16,0,0,4797,4798,7,17,0,0,4798,4799,7,7,0,0,4799,4800,7,10,0,0,4800,4801,7,9,0,0,4801,922,1,0,0,0,4802,4803,7,9,0,0,4803,4804,7,14,0,0,4804,4805,7,20,0,0,4805,4806,7,10,0,0,4806,4807,7,15,0,0,4807,4808,7,5,0,0,4808,4809,7,9,0,0,4809,924,1,0,0,0,4810,4811,7,24,0,0,4811,4812,7,13,0,0,4812,4813,7,19,0,0,4813,4814,7,14,0,0,4814,4815,7,10,0,0,4815,4816,7,12,0,0,4816,4817,7,22,0,0,4817,4818,7,13,0,0,4818,4819,7,10,0,0,4819,4820,7,9,0,0,4820,926,1,0,0,0,4821,4822,7,17,0,0,4822,4823,7,7,0,0,4823,4824,7,24,0,0,4824,4825,7,22,0,0,4825,4826,7,16,0,0,4826,928,1,0,0,0,4827,4828,7,9,0,0,4828,4829,7,22,0,0,4829,4830,7,24,0,0,4830,4831,7,24,0,0,4831,4832,7,19,0,0,4832,4833,7,13,0,0,4833,4834,7,16,0,0,4834,930,1,0,0,0,4835,4836,7,24,0,0,4836,4837,7,5,0,0,4837,4838,7,13,0,0,4838,4839,7,5,0,0,4839,4840,7,6,0,0,4840,4841,7,6,0,0,4841,4842,7,10,0,0,4842,4843,7,6,0,0,4843,932,1,0,0,0,4844,4845,7,9,0,0,4845,4846,7,28,0,0,4846,4847,7,6,0,0,4847,934,1,0,0,0,4848,4849,7,12,0,0,4849,4850,7,10,0,0,4850,4851,7,24,0,0,4851,4852,7,10,0,0,4852,4853,7,7,0,0,4853,4854,7,12,0,0,4854,4855,7,9,0,0,4855,936,1,0,0,0,4856,4857,7,19,0,0,4857,4858,7,27,0,0,4858,4859,7,10,0,0,4859,4860,7,13,0,0,4860,4861,7,13,0,0,4861,4862,7,17,0,0,4862,4863,7,12,0,0,4863,4864,7,17,0,0,4864,4865,7,7,0,0,4865,4866,7,23,0,0,4866,938,1,0,0,0,4867,4868,7,14,0,0,4868,4869,7,19,0,0,4869,4870,7,7,0,0,4870,4871,7,25,0,0,4871,4872,7,6,0,0,4872,4873,7,17,0,0,4873,4874,7,14,0,0,4874,4875,7,16,0,0,4875,940,1,0,0,0,4876,4877,7,9,0,0,4877,4878,7,21,0,0,4878,4879,7,17,0,0,4879,4880,7,24,0,0,4880,942,1,0,0,0,4881,4882,7,6,0,0,4882,4883,7,19,0,0,4883,4884,7,14,0,0,4884,4885,7,21,0,0,4885,4886,7,10,0,0,4886,4887,7,12,0,0,4887,944,1,0,0,0,4888,4889,7,16,0,0,4889,4890,7,17,0,0,4890,4891,7,10,0,0,4891,4892,7,9,0,0,4892,946,1,0,0,0,4893,4894,7,13,0,0,4894,4895,7,19,0,0,4895,4896,7,6,0,0,4896,4897,7,6,0,0,4897,4898,7,22,0,0,4898,4899,7,24,0,0,4899,948,1,0,0,0,4900,4901,7,14,0,0,4901,4902,7,22,0,0,4902,4903,7,18,0,0,4903,4904,7,10,0,0,4904,950,1,0,0,0,4905,4906,7,23,0,0,4906,4907,7,13,0,0,4907,4908,7,19,0,0,4908,4909,7,22,0,0,4909,4910,7,24,0,0,4910,4911,7,17,0,0,4911,4912,7,7,0,0,4912,4913,7,23,0,0,4913,952,1,0,0,0,4914,4915,7,9,0,0,4915,4916,7,10,0,0,4916,4917,7,16,0,0,4917,4918,7,9,0,0,4918,954,1,0,0,0,4919,4920,7,16,0,0,4920,4921,7,5,0,0,4921,4922,7,18,0,0,4922,4923,7,6,0,0,4923,4924,7,10,0,0,4924,4925,7,9,0,0,4925,4926,7,5,0,0,4926,4927,7,15,0,0,4927,4928,7,24,0,0,4928,4929,7,6,0,0,4929,4930,7,10,0,0,4930,956,1,0,0,0,4931,4932,7,19,0,0,4932,4933,7,13,0,0,4933,4934,7,12,0,0,4934,4935,7,17,0,0,4935,4936,7,7,0,0,4936,4937,7,5,0,0,4937,4938,7,6,0,0,4938,4939,7,17,0,0,4939,4940,7,16,0,0,4940,4941,7,8,0,0,4941,958,1,0,0,0,4942,4943,7,26,0,0,4943,4944,7,15,0,0,4944,4945,7,6,0,0,4945,4946,7,16,0,0,4946,4947,7,5,0,0,4947,4948,7,18,0,0,4948,4949,7,6,0,0,4949,4950,7,10,0,0,4950,960,1,0,0,0,4951,4952,7,14,0,0,4952,4953,7,19,0,0,4953,4954,7,6,0,0,4954,4955,7,22,0,0,4955,4956,7,15,0,0,4956,4957,7,7,0,0,4957,4958,7,9,0,0,4958,962,1,0,0,0,4959,4960,7,26,0,0,4960,4961,7,15,0,0,4961,4962,7,6,0,0,4962,4963,7,7,0,0,4963,4964,7,5,0,0,4964,4965,7,15,0,0,4965,4966,7,10,0,0,4966,4967,7,9,0,0,4967,4968,7,24,0,0,4968,4969,7,5,0,0,4969,4970,7,14,0,0,4970,4971,7,10,0,0,4971,4972,7,9,0,0,4972,964,1,0,0,0,4973,4974,7,13,0,0,4974,4975,7,19,0,0,4975,4976,7,29,0,0,4976,4977,7,16,0,0,4977,4978,7,8,0,0,4978,4979,7,24,0,0,4979,4980,7,10,0,0,4980,966,1,0,0,0,4981,4982,7,7,0,0,4982,4983,7,19,0,0,4983,4984,7,13,0,0,4984,4985,7,15,0,0,4985,4986,7,5,0,0,4986,4987,7,6,0,0,4987,4988,7,17,0,0,4988,4989,7,11,0,0,4989,4990,7,10,0,0,4990,4991,7,12,0,0,4991,968,1,0,0,0,4992,4993,7,29,0,0,4993,4994,7,17,0,0,4994,4995,7,16,0,0,4995,4996,7,20,0,0,4996,4997,7,17,0,0,4997,4998,7,7,0,0,4998,970,1,0,0,0,4999,5e3,7,25,0,0,5e3,5001,7,17,0,0,5001,5002,7,6,0,0,5002,5003,7,16,0,0,5003,5004,7,10,0,0,5004,5005,7,13,0,0,5005,972,1,0,0,0,5006,5007,7,23,0,0,5007,5008,7,13,0,0,5008,5009,7,19,0,0,5009,5010,7,22,0,0,5010,5011,7,24,0,0,5011,5012,7,9,0,0,5012,974,1,0,0,0,5013,5014,7,19,0,0,5014,5015,7,16,0,0,5015,5016,7,20,0,0,5016,5017,7,10,0,0,5017,5018,7,13,0,0,5018,5019,7,9,0,0,5019,976,1,0,0,0,5020,5021,7,7,0,0,5021,5022,7,25,0,0,5022,5023,7,14,0,0,5023,978,1,0,0,0,5024,5025,7,7,0,0,5025,5026,7,25,0,0,5026,5027,7,12,0,0,5027,980,1,0,0,0,5028,5029,7,7,0,0,5029,5030,7,25,0,0,5030,5031,7,21,0,0,5031,5032,7,14,0,0,5032,982,1,0,0,0,5033,5034,7,7,0,0,5034,5035,7,25,0,0,5035,5036,7,21,0,0,5036,5037,7,12,0,0,5037,984,1,0,0,0,5038,5039,7,22,0,0,5039,5040,7,10,0,0,5040,5041,7,9,0,0,5041,5042,7,14,0,0,5042,5043,7,5,0,0,5043,5044,7,24,0,0,5044,5045,7,10,0,0,5045,986,1,0,0,0,5046,5047,7,27,0,0,5047,5048,7,17,0,0,5048,5049,7,10,0,0,5049,5050,7,29,0,0,5050,5051,7,9,0,0,5051,988,1,0,0,0,5052,5053,7,7,0,0,5053,5054,7,19,0,0,5054,5055,7,13,0,0,5055,5056,7,15,0,0,5056,5057,7,5,0,0,5057,5058,7,6,0,0,5058,5059,7,17,0,0,5059,5060,7,11,0,0,5060,5061,7,10,0,0,5061,990,1,0,0,0,5062,5063,7,12,0,0,5063,5064,7,22,0,0,5064,5065,7,15,0,0,5065,5066,7,24,0,0,5066,992,1,0,0,0,5067,5068,7,24,0,0,5068,5069,7,13,0,0,5069,5070,7,17,0,0,5070,5071,7,7,0,0,5071,5072,7,16,0,0,5072,5073,5,95,0,0,5073,5074,7,9,0,0,5074,5075,7,16,0,0,5075,5076,7,13,0,0,5076,5077,7,17,0,0,5077,5078,7,14,0,0,5078,5079,7,16,0,0,5079,5080,5,95,0,0,5080,5081,7,24,0,0,5081,5082,7,5,0,0,5082,5083,7,13,0,0,5083,5084,7,5,0,0,5084,5085,7,15,0,0,5085,5086,7,9,0,0,5086,994,1,0,0,0,5087,5088,7,27,0,0,5088,5089,7,5,0,0,5089,5090,7,13,0,0,5090,5091,7,17,0,0,5091,5092,7,5,0,0,5092,5093,7,18,0,0,5093,5094,7,6,0,0,5094,5095,7,10,0,0,5095,5096,5,95,0,0,5096,5097,7,14,0,0,5097,5098,7,19,0,0,5098,5099,7,7,0,0,5099,5100,7,25,0,0,5100,5101,7,6,0,0,5101,5102,7,17,0,0,5102,5103,7,14,0,0,5103,5104,7,16,0,0,5104,996,1,0,0,0,5105,5106,7,10,0,0,5106,5107,7,13,0,0,5107,5108,7,13,0,0,5108,5109,7,19,0,0,5109,5110,7,13,0,0,5110,998,1,0,0,0,5111,5112,7,22,0,0,5112,5113,7,9,0,0,5113,5114,7,10,0,0,5114,5115,5,95,0,0,5115,5116,7,27,0,0,5116,5117,7,5,0,0,5117,5118,7,13,0,0,5118,5119,7,17,0,0,5119,5120,7,5,0,0,5120,5121,7,18,0,0,5121,5122,7,6,0,0,5122,5123,7,10,0,0,5123,1e3,1,0,0,0,5124,5125,7,22,0,0,5125,5126,7,9,0,0,5126,5127,7,10,0,0,5127,5128,5,95,0,0,5128,5129,7,14,0,0,5129,5130,7,19,0,0,5130,5131,7,6,0,0,5131,5132,7,22,0,0,5132,5133,7,15,0,0,5133,5134,7,7,0,0,5134,1002,1,0,0,0,5135,5136,7,5,0,0,5136,5137,7,6,0,0,5137,5138,7,17,0,0,5138,5139,7,5,0,0,5139,5140,7,9,0,0,5140,1004,1,0,0,0,5141,5142,7,14,0,0,5142,5143,7,19,0,0,5143,5144,7,7,0,0,5144,5145,7,9,0,0,5145,5146,7,16,0,0,5146,5147,7,5,0,0,5147,5148,7,7,0,0,5148,5149,7,16,0,0,5149,1006,1,0,0,0,5150,5151,7,24,0,0,5151,5152,7,10,0,0,5152,5153,7,13,0,0,5153,5154,7,25,0,0,5154,5155,7,19,0,0,5155,5156,7,13,0,0,5156,5157,7,15,0,0,5157,1008,1,0,0,0,5158,5159,7,23,0,0,5159,5160,7,10,0,0,5160,5161,7,16,0,0,5161,1010,1,0,0,0,5162,5163,7,12,0,0,5163,5164,7,17,0,0,5164,5165,7,5,0,0,5165,5166,7,23,0,0,5166,5167,7,7,0,0,5167,5168,7,19,0,0,5168,5169,7,9,0,0,5169,5170,7,16,0,0,5170,5171,7,17,0,0,5171,5172,7,14,0,0,5172,5173,7,9,0,0,5173,1012,1,0,0,0,5174,5175,7,9,0,0,5175,5176,7,16,0,0,5176,5177,7,5,0,0,5177,5178,7,14,0,0,5178,5179,7,21,0,0,5179,5180,7,10,0,0,5180,5181,7,12,0,0,5181,1014,1,0,0,0,5182,5183,7,10,0,0,5183,5184,7,6,0,0,5184,5185,7,9,0,0,5185,5186,7,17,0,0,5186,5187,7,25,0,0,5187,1016,1,0,0,0,5188,5189,7,29,0,0,5189,5190,7,20,0,0,5190,5191,7,17,0,0,5191,5192,7,6,0,0,5192,5193,7,10,0,0,5193,1018,1,0,0,0,5194,5195,7,13,0,0,5195,5196,7,10,0,0,5196,5197,7,27,0,0,5197,5198,7,10,0,0,5198,5199,7,13,0,0,5199,5200,7,9,0,0,5200,5201,7,10,0,0,5201,1020,1,0,0,0,5202,5203,7,25,0,0,5203,5204,7,19,0,0,5204,5205,7,13,0,0,5205,5206,7,10,0,0,5206,5207,7,5,0,0,5207,5208,7,14,0,0,5208,5209,7,20,0,0,5209,1022,1,0,0,0,5210,5211,7,9,0,0,5211,5212,7,6,0,0,5212,5213,7,17,0,0,5213,5214,7,14,0,0,5214,5215,7,10,0,0,5215,1024,1,0,0,0,5216,5217,7,10,0,0,5217,5218,7,26,0,0,5218,5219,7,17,0,0,5219,5220,7,16,0,0,5220,1026,1,0,0,0,5221,5222,7,13,0,0,5222,5223,7,10,0,0,5223,5224,7,16,0,0,5224,5225,7,22,0,0,5225,5226,7,13,0,0,5226,5227,7,7,0,0,5227,1028,1,0,0,0,5228,5229,7,28,0,0,5229,5230,7,22,0,0,5230,5231,7,10,0,0,5231,5232,7,13,0,0,5232,5233,7,8,0,0,5233,1030,1,0,0,0,5234,5235,7,13,0,0,5235,5236,7,5,0,0,5236,5237,7,17,0,0,5237,5238,7,9,0,0,5238,5239,7,10,0,0,5239,1032,1,0,0,0,5240,5241,7,9,0,0,5241,5242,7,28,0,0,5242,5243,7,6,0,0,5243,5244,7,9,0,0,5244,5245,7,16,0,0,5245,5246,7,5,0,0,5246,5247,7,16,0,0,5247,5248,7,10,0,0,5248,1034,1,0,0,0,5249,5250,7,12,0,0,5250,5251,7,10,0,0,5251,5252,7,18,0,0,5252,5253,7,22,0,0,5253,5254,7,23,0,0,5254,1036,1,0,0,0,5255,5256,7,6,0,0,5256,5257,7,19,0,0,5257,5258,7,23,0,0,5258,1038,1,0,0,0,5259,5260,7,17,0,0,5260,5261,7,7,0,0,5261,5262,7,25,0,0,5262,5263,7,19,0,0,5263,1040,1,0,0,0,5264,5265,7,7,0,0,5265,5266,7,19,0,0,5266,5267,7,16,0,0,5267,5268,7,17,0,0,5268,5269,7,14,0,0,5269,5270,7,10,0,0,5270,1042,1,0,0,0,5271,5272,7,29,0,0,5272,5273,7,5,0,0,5273,5274,7,13,0,0,5274,5275,7,7,0,0,5275,5276,7,17,0,0,5276,5277,7,7,0,0,5277,5278,7,23,0,0,5278,1044,1,0,0,0,5279,5280,7,10,0,0,5280,5281,7,26,0,0,5281,5282,7,14,0,0,5282,5283,7,10,0,0,5283,5284,7,24,0,0,5284,5285,7,16,0,0,5285,5286,7,17,0,0,5286,5287,7,19,0,0,5287,5288,7,7,0,0,5288,1046,1,0,0,0,5289,5290,7,5,0,0,5290,5291,7,9,0,0,5291,5292,7,9,0,0,5292,5293,7,10,0,0,5293,5294,7,13,0,0,5294,5295,7,16,0,0,5295,1048,1,0,0,0,5296,5297,7,6,0,0,5297,5298,7,19,0,0,5298,5299,7,19,0,0,5299,5300,7,24,0,0,5300,1050,1,0,0,0,5301,5302,7,19,0,0,5302,5303,7,24,0,0,5303,5304,7,10,0,0,5304,5305,7,7,0,0,5305,1052,1,0,0,0,5306,5307,7,5,0,0,5307,5308,7,18,0,0,5308,5309,7,9,0,0,5309,1054,1,0,0,0,5310,5311,7,14,0,0,5311,5312,7,18,0,0,5312,5313,7,13,0,0,5313,5314,7,16,0,0,5314,1056,1,0,0,0,5315,5316,7,14,0,0,5316,5317,7,10,0,0,5317,5318,7,17,0,0,5318,5319,7,6,0,0,5319,1058,1,0,0,0,5320,5321,7,14,0,0,5321,5322,7,10,0,0,5322,5323,7,17,0,0,5323,5324,7,6,0,0,5324,5325,7,17,0,0,5325,5326,7,7,0,0,5326,5327,7,23,0,0,5327,1060,1,0,0,0,5328,5329,7,12,0,0,5329,5330,7,10,0,0,5330,5331,7,23,0,0,5331,5332,7,13,0,0,5332,5333,7,10,0,0,5333,5334,7,10,0,0,5334,5335,7,9,0,0,5335,1062,1,0,0,0,5336,5337,7,12,0,0,5337,5338,7,17,0,0,5338,5339,7,27,0,0,5339,1064,1,0,0,0,5340,5341,7,10,0,0,5341,5342,7,26,0,0,5342,5343,7,24,0,0,5343,1066,1,0,0,0,5344,5345,7,25,0,0,5345,5346,7,5,0,0,5346,5347,7,14,0,0,5347,5348,7,16,0,0,5348,5349,7,19,0,0,5349,5350,7,13,0,0,5350,5351,7,17,0,0,5351,5352,7,5,0,0,5352,5353,7,6,0,0,5353,1068,1,0,0,0,5354,5355,7,25,0,0,5355,5356,7,6,0,0,5356,5357,7,19,0,0,5357,5358,7,19,0,0,5358,5359,7,13,0,0,5359,1070,1,0,0,0,5360,5361,7,23,0,0,5361,5362,7,14,0,0,5362,5363,7,12,0,0,5363,1072,1,0,0,0,5364,5365,7,6,0,0,5365,5366,7,14,0,0,5366,5367,7,15,0,0,5367,1074,1,0,0,0,5368,5369,7,6,0,0,5369,5370,7,7,0,0,5370,1076,1,0,0,0,5371,5372,7,6,0,0,5372,5373,7,19,0,0,5373,5374,7,23,0,0,5374,5375,5,49,0,0,5375,5376,5,48,0,0,5376,1078,1,0,0,0,5377,5378,7,15,0,0,5378,5379,7,17,0,0,5379,5380,7,7,0,0,5380,5381,5,95,0,0,5381,5382,7,9,0,0,5382,5383,7,14,0,0,5383,5384,7,5,0,0,5384,5385,7,6,0,0,5385,5386,7,10,0,0,5386,1080,1,0,0,0,5387,5388,7,15,0,0,5388,5389,7,19,0,0,5389,5390,7,12,0,0,5390,1082,1,0,0,0,5391,5392,7,24,0,0,5392,5393,7,17,0,0,5393,1084,1,0,0,0,5394,5395,7,24,0,0,5395,5396,7,19,0,0,5396,5397,7,29,0,0,5397,5398,7,10,0,0,5398,5399,7,13,0,0,5399,1086,1,0,0,0,5400,5401,7,13,0,0,5401,5402,7,5,0,0,5402,5403,7,12,0,0,5403,5404,7,17,0,0,5404,5405,7,5,0,0,5405,5406,7,7,0,0,5406,5407,7,9,0,0,5407,1088,1,0,0,0,5408,5409,7,13,0,0,5409,5410,7,19,0,0,5410,5411,7,22,0,0,5411,5412,7,7,0,0,5412,5413,7,12,0,0,5413,1090,1,0,0,0,5414,5415,7,9,0,0,5415,5416,7,14,0,0,5416,5417,7,5,0,0,5417,5418,7,6,0,0,5418,5419,7,10,0,0,5419,1092,1,0,0,0,5420,5421,7,9,0,0,5421,5422,7,17,0,0,5422,5423,7,23,0,0,5423,5424,7,7,0,0,5424,1094,1,0,0,0,5425,5426,7,9,0,0,5426,5427,7,28,0,0,5427,5428,7,13,0,0,5428,5429,7,16,0,0,5429,1096,1,0,0,0,5430,5431,7,16,0,0,5431,5432,7,13,0,0,5432,5433,7,17,0,0,5433,5434,7,15,0,0,5434,5435,5,95,0,0,5435,5436,7,9,0,0,5436,5437,7,14,0,0,5437,5438,7,5,0,0,5438,5439,7,6,0,0,5439,5440,7,10,0,0,5440,1098,1,0,0,0,5441,5442,7,16,0,0,5442,5443,7,13,0,0,5443,5444,7,22,0,0,5444,5445,7,7,0,0,5445,5446,7,14,0,0,5446,1100,1,0,0,0,5447,5448,7,29,0,0,5448,5449,7,17,0,0,5449,5450,7,12,0,0,5450,5451,7,16,0,0,5451,5452,7,20,0,0,5452,5453,5,95,0,0,5453,5454,7,18,0,0,5454,5455,7,22,0,0,5455,5456,7,14,0,0,5456,5457,7,21,0,0,5457,5458,7,10,0,0,5458,5459,7,16,0,0,5459,1102,1,0,0,0,5460,5461,7,13,0,0,5461,5462,7,5,0,0,5462,5463,7,7,0,0,5463,5464,7,12,0,0,5464,5465,7,19,0,0,5465,5466,7,15,0,0,5466,1104,1,0,0,0,5467,5468,7,9,0,0,5468,5469,7,10,0,0,5469,5470,7,16,0,0,5470,5471,7,9,0,0,5471,5472,7,10,0,0,5472,5473,7,10,0,0,5473,5474,7,12,0,0,5474,1106,1,0,0,0,5475,5476,7,5,0,0,5476,5477,7,14,0,0,5477,5478,7,19,0,0,5478,5479,7,9,0,0,5479,1108,1,0,0,0,5480,5481,7,5,0,0,5481,5482,7,14,0,0,5482,5483,7,19,0,0,5483,5484,7,9,0,0,5484,5485,7,12,0,0,5485,1110,1,0,0,0,5486,5487,7,5,0,0,5487,5488,7,9,0,0,5488,5489,7,17,0,0,5489,5490,7,7,0,0,5490,1112,1,0,0,0,5491,5492,7,5,0,0,5492,5493,7,9,0,0,5493,5494,7,17,0,0,5494,5495,7,7,0,0,5495,5496,7,12,0,0,5496,1114,1,0,0,0,5497,5498,7,5,0,0,5498,5499,7,16,0,0,5499,5500,7,5,0,0,5500,5501,7,7,0,0,5501,1116,1,0,0,0,5502,5503,7,5,0,0,5503,5504,7,16,0,0,5504,5505,7,5,0,0,5505,5506,7,7,0,0,5506,5507,7,12,0,0,5507,1118,1,0,0,0,5508,5509,7,5,0,0,5509,5510,7,16,0,0,5510,5511,7,5,0,0,5511,5512,7,7,0,0,5512,5513,5,50,0,0,5513,1120,1,0,0,0,5514,5515,7,5,0,0,5515,5516,7,16,0,0,5516,5517,7,5,0,0,5517,5518,7,7,0,0,5518,5519,5,50,0,0,5519,5520,7,12,0,0,5520,1122,1,0,0,0,5521,5522,7,14,0,0,5522,5523,7,19,0,0,5523,5524,7,9,0,0,5524,1124,1,0,0,0,5525,5526,7,14,0,0,5526,5527,7,19,0,0,5527,5528,7,9,0,0,5528,5529,7,12,0,0,5529,1126,1,0,0,0,5530,5531,7,14,0,0,5531,5532,7,19,0,0,5532,5533,7,16,0,0,5533,1128,1,0,0,0,5534,5535,7,14,0,0,5535,5536,7,19,0,0,5536,5537,7,16,0,0,5537,5538,7,12,0,0,5538,1130,1,0,0,0,5539,5540,7,9,0,0,5540,5541,7,17,0,0,5541,5542,7,7,0,0,5542,1132,1,0,0,0,5543,5544,7,9,0,0,5544,5545,7,17,0,0,5545,5546,7,7,0,0,5546,5547,7,12,0,0,5547,1134,1,0,0,0,5548,5549,7,16,0,0,5549,5550,7,5,0,0,5550,5551,7,7,0,0,5551,1136,1,0,0,0,5552,5553,7,16,0,0,5553,5554,7,5,0,0,5554,5555,7,7,0,0,5555,5556,7,12,0,0,5556,1138,1,0,0,0,5557,5558,7,9,0,0,5558,5559,7,17,0,0,5559,5560,7,7,0,0,5560,5561,7,20,0,0,5561,1140,1,0,0,0,5562,5563,7,14,0,0,5563,5564,7,19,0,0,5564,5565,7,9,0,0,5565,5566,7,20,0,0,5566,1142,1,0,0,0,5567,5568,7,16,0,0,5568,5569,7,5,0,0,5569,5570,7,7,0,0,5570,5571,7,20,0,0,5571,1144,1,0,0,0,5572,5573,7,5,0,0,5573,5574,7,9,0,0,5574,5575,7,17,0,0,5575,5576,7,7,0,0,5576,5577,7,20,0,0,5577,1146,1,0,0,0,5578,5579,7,5,0,0,5579,5580,7,14,0,0,5580,5581,7,19,0,0,5581,5582,7,9,0,0,5582,5583,7,20,0,0,5583,1148,1,0,0,0,5584,5585,7,5,0,0,5585,5586,7,16,0,0,5586,5587,7,5,0,0,5587,5588,7,7,0,0,5588,5589,7,20,0,0,5589,1150,1,0,0,0,5590,5591,7,18,0,0,5591,5592,7,17,0,0,5592,5593,7,16,0,0,5593,5594,5,95,0,0,5594,5595,7,6,0,0,5595,5596,7,10,0,0,5596,5597,7,7,0,0,5597,5598,7,23,0,0,5598,5599,7,16,0,0,5599,5600,7,20,0,0,5600,1152,1,0,0,0,5601,5602,7,14,0,0,5602,5603,7,20,0,0,5603,5604,7,5,0,0,5604,5605,7,13,0,0,5605,5606,5,95,0,0,5606,5607,7,6,0,0,5607,5608,7,10,0,0,5608,5609,7,7,0,0,5609,5610,7,23,0,0,5610,5611,7,16,0,0,5611,5612,7,20,0,0,5612,1154,1,0,0,0,5613,5614,7,14,0,0,5614,5615,7,20,0,0,5615,5616,7,5,0,0,5616,5617,7,13,0,0,5617,5618,7,5,0,0,5618,5619,7,14,0,0,5619,5620,7,16,0,0,5620,5621,7,10,0,0,5621,5622,7,13,0,0,5622,5623,5,95,0,0,5623,5624,7,6,0,0,5624,5625,7,10,0,0,5625,5626,7,7,0,0,5626,5627,7,23,0,0,5627,5628,7,16,0,0,5628,5629,7,20,0,0,5629,1156,1,0,0,0,5630,5631,7,6,0,0,5631,5632,7,19,0,0,5632,5633,7,29,0,0,5633,5634,7,10,0,0,5634,5635,7,13,0,0,5635,1158,1,0,0,0,5636,5637,7,19,0,0,5637,5638,7,14,0,0,5638,5639,7,16,0,0,5639,5640,7,10,0,0,5640,5641,7,16,0,0,5641,5642,5,95,0,0,5642,5643,7,6,0,0,5643,5644,7,10,0,0,5644,5645,7,7,0,0,5645,5646,7,23,0,0,5646,5647,7,16,0,0,5647,5648,7,20,0,0,5648,1160,1,0,0,0,5649,5650,7,22,0,0,5650,5651,7,24,0,0,5651,5652,7,24,0,0,5652,5653,7,10,0,0,5653,5654,7,13,0,0,5654,1162,1,0,0,0,5655,5656,7,5,0,0,5656,5657,7,9,0,0,5657,5658,7,14,0,0,5658,5659,7,17,0,0,5659,5660,7,17,0,0,5660,1164,1,0,0,0,5661,5662,7,18,0,0,5662,5663,7,16,0,0,5663,5664,7,13,0,0,5664,5665,7,17,0,0,5665,5666,7,15,0,0,5666,1166,1,0,0,0,5667,5668,7,14,0,0,5668,5669,7,20,0,0,5669,5670,7,13,0,0,5670,1168,1,0,0,0,5671,5672,7,14,0,0,5672,5673,7,19,0,0,5673,5674,7,7,0,0,5674,5675,7,14,0,0,5675,5676,7,5,0,0,5676,5677,7,16,0,0,5677,1170,1,0,0,0,5678,5679,7,14,0,0,5679,5680,7,19,0,0,5680,5681,7,7,0,0,5681,5682,7,14,0,0,5682,5683,7,5,0,0,5683,5684,7,16,0,0,5684,5685,5,95,0,0,5685,5686,7,29,0,0,5686,5687,7,9,0,0,5687,1172,1,0,0,0,5688,5689,7,25,0,0,5689,5690,7,19,0,0,5690,5691,7,13,0,0,5691,5692,7,15,0,0,5692,5693,7,5,0,0,5693,5694,7,16,0,0,5694,1174,1,0,0,0,5695,5696,7,17,0,0,5696,5697,7,7,0,0,5697,5698,7,17,0,0,5698,5699,7,16,0,0,5699,5700,7,14,0,0,5700,5701,7,5,0,0,5701,5702,7,24,0,0,5702,1176,1,0,0,0,5703,5704,7,6,0,0,5704,5705,7,10,0,0,5705,5706,7,7,0,0,5706,5707,7,23,0,0,5707,5708,7,16,0,0,5708,5709,7,20,0,0,5709,1178,1,0,0,0,5710,5711,7,6,0,0,5711,5712,7,24,0,0,5712,5713,7,5,0,0,5713,5714,7,12,0,0,5714,1180,1,0,0,0,5715,5716,7,6,0,0,5716,5717,7,16,0,0,5717,5718,7,13,0,0,5718,5719,7,17,0,0,5719,5720,7,15,0,0,5720,1182,1,0,0,0,5721,5722,7,15,0,0,5722,5723,7,12,0,0,5723,5724,5,53,0,0,5724,1184,1,0,0,0,5725,5726,7,24,0,0,5726,5727,7,5,0,0,5727,5728,7,13,0,0,5728,5729,7,9,0,0,5729,5730,7,10,0,0,5730,5731,5,95,0,0,5731,5732,7,17,0,0,5732,5733,7,12,0,0,5733,5734,7,10,0,0,5734,5735,7,7,0,0,5735,5736,7,16,0,0,5736,1186,1,0,0,0,5737,5738,7,24,0,0,5738,5739,7,23,0,0,5739,5740,5,95,0,0,5740,5741,7,14,0,0,5741,5742,7,6,0,0,5742,5743,7,17,0,0,5743,5744,7,10,0,0,5744,5745,7,7,0,0,5745,5746,7,16,0,0,5746,5747,5,95,0,0,5747,5748,7,10,0,0,5748,5749,7,7,0,0,5749,5750,7,14,0,0,5750,5751,7,19,0,0,5751,5752,7,12,0,0,5752,5753,7,17,0,0,5753,5754,7,7,0,0,5754,5755,7,23,0,0,5755,1188,1,0,0,0,5756,5757,7,28,0,0,5757,5758,7,22,0,0,5758,5759,7,19,0,0,5759,5760,7,16,0,0,5760,5761,7,10,0,0,5761,5762,5,95,0,0,5762,5763,7,17,0,0,5763,5764,7,12,0,0,5764,5765,7,10,0,0,5765,5766,7,7,0,0,5766,5767,7,16,0,0,5767,1190,1,0,0,0,5768,5769,7,28,0,0,5769,5770,7,22,0,0,5770,5771,7,19,0,0,5771,5772,7,16,0,0,5772,5773,7,10,0,0,5773,5774,5,95,0,0,5774,5775,7,6,0,0,5775,5776,7,17,0,0,5776,5777,7,16,0,0,5777,5778,7,10,0,0,5778,5779,7,13,0,0,5779,5780,7,5,0,0,5780,5781,7,6,0,0,5781,1192,1,0,0,0,5782,5783,7,28,0,0,5783,5784,7,22,0,0,5784,5785,7,19,0,0,5785,5786,7,16,0,0,5786,5787,7,10,0,0,5787,5788,5,95,0,0,5788,5789,7,7,0,0,5789,5790,7,22,0,0,5790,5791,7,6,0,0,5791,5792,7,6,0,0,5792,5793,7,5,0,0,5793,5794,7,18,0,0,5794,5795,7,6,0,0,5795,5796,7,10,0,0,5796,1194,1,0,0,0,5797,5798,7,13,0,0,5798,5799,7,10,0,0,5799,5800,7,23,0,0,5800,5801,7,10,0,0,5801,5802,7,26,0,0,5802,5803,7,24,0,0,5803,5804,5,95,0,0,5804,5805,7,14,0,0,5805,5806,7,19,0,0,5806,5807,7,22,0,0,5807,5808,7,7,0,0,5808,5809,7,16,0,0,5809,1196,1,0,0,0,5810,5811,7,13,0,0,5811,5812,7,10,0,0,5812,5813,7,23,0,0,5813,5814,7,10,0,0,5814,5815,7,26,0,0,5815,5816,7,24,0,0,5816,5817,5,95,0,0,5817,5818,7,17,0,0,5818,5819,7,7,0,0,5819,5820,7,9,0,0,5820,5821,7,16,0,0,5821,5822,7,13,0,0,5822,1198,1,0,0,0,5823,5824,7,13,0,0,5824,5825,7,10,0,0,5825,5826,7,23,0,0,5826,5827,7,10,0,0,5827,5828,7,26,0,0,5828,5829,7,24,0,0,5829,5830,5,95,0,0,5830,5831,7,6,0,0,5831,5832,7,17,0,0,5832,5833,7,21,0,0,5833,5834,7,10,0,0,5834,1200,1,0,0,0,5835,5836,7,13,0,0,5836,5837,7,10,0,0,5837,5838,7,23,0,0,5838,5839,7,10,0,0,5839,5840,7,26,0,0,5840,5841,7,24,0,0,5841,5842,5,95,0,0,5842,5843,7,15,0,0,5843,5844,7,5,0,0,5844,5845,7,16,0,0,5845,5846,7,14,0,0,5846,5847,7,20,0,0,5847,1202,1,0,0,0,5848,5849,7,13,0,0,5849,5850,7,10,0,0,5850,5851,7,23,0,0,5851,5852,7,10,0,0,5852,5853,7,26,0,0,5853,5854,7,24,0,0,5854,5855,5,95,0,0,5855,5856,7,15,0,0,5856,5857,7,5,0,0,5857,5858,7,16,0,0,5858,5859,7,14,0,0,5859,5860,7,20,0,0,5860,5861,7,10,0,0,5861,5862,7,9,0,0,5862,1204,1,0,0,0,5863,5864,7,13,0,0,5864,5865,7,10,0,0,5865,5866,7,23,0,0,5866,5867,7,10,0,0,5867,5868,7,26,0,0,5868,5869,7,24,0,0,5869,5870,5,95,0,0,5870,5871,7,13,0,0,5871,5872,7,10,0,0,5872,5873,7,24,0,0,5873,5874,7,6,0,0,5874,5875,7,5,0,0,5875,5876,7,14,0,0,5876,5877,7,10,0,0,5877,1206,1,0,0,0,5878,5879,7,13,0,0,5879,5880,7,10,0,0,5880,5881,7,23,0,0,5881,5882,7,10,0,0,5882,5883,7,26,0,0,5883,5884,7,24,0,0,5884,5885,5,95,0,0,5885,5886,7,9,0,0,5886,5887,7,24,0,0,5887,5888,7,6,0,0,5888,5889,7,17,0,0,5889,5890,7,16,0,0,5890,5891,5,95,0,0,5891,5892,7,16,0,0,5892,5893,7,19,0,0,5893,5894,5,95,0,0,5894,5895,7,5,0,0,5895,5896,7,13,0,0,5896,5897,7,13,0,0,5897,5898,7,5,0,0,5898,5899,7,8,0,0,5899,1208,1,0,0,0,5900,5901,7,13,0,0,5901,5902,7,10,0,0,5902,5903,7,23,0,0,5903,5904,7,10,0,0,5904,5905,7,26,0,0,5905,5906,7,24,0,0,5906,5907,5,95,0,0,5907,5908,7,9,0,0,5908,5909,7,24,0,0,5909,5910,7,6,0,0,5910,5911,7,17,0,0,5911,5912,7,16,0,0,5912,5913,5,95,0,0,5913,5914,7,16,0,0,5914,5915,7,19,0,0,5915,5916,5,95,0,0,5916,5917,7,16,0,0,5917,5918,7,5,0,0,5918,5919,7,18,0,0,5919,5920,7,6,0,0,5920,5921,7,10,0,0,5921,1210,1,0,0,0,5922,5923,7,13,0,0,5923,5924,7,10,0,0,5924,5925,7,23,0,0,5925,5926,7,10,0,0,5926,5927,7,26,0,0,5927,5928,7,24,0,0,5928,5929,5,95,0,0,5929,5930,7,9,0,0,5930,5931,7,22,0,0,5931,5932,7,18,0,0,5932,5933,7,9,0,0,5933,5934,7,16,0,0,5934,5935,7,13,0,0,5935,1212,1,0,0,0,5936,5937,7,13,0,0,5937,5938,7,10,0,0,5938,5939,7,24,0,0,5939,5940,7,10,0,0,5940,5941,7,5,0,0,5941,5942,7,16,0,0,5942,1214,1,0,0,0,5943,5944,7,13,0,0,5944,5945,7,24,0,0,5945,5946,7,5,0,0,5946,5947,7,12,0,0,5947,1216,1,0,0,0,5948,5949,7,13,0,0,5949,5950,7,16,0,0,5950,5951,7,13,0,0,5951,5952,7,17,0,0,5952,5953,7,15,0,0,5953,1218,1,0,0,0,5954,5955,7,9,0,0,5955,5956,7,24,0,0,5956,5957,7,6,0,0,5957,5958,7,17,0,0,5958,5959,7,16,0,0,5959,5960,5,95,0,0,5960,5961,7,24,0,0,5961,5962,7,5,0,0,5962,5963,7,13,0,0,5963,5964,7,16,0,0,5964,1220,1,0,0,0,5965,5966,7,9,0,0,5966,5967,7,16,0,0,5967,5968,7,5,0,0,5968,5969,7,13,0,0,5969,5970,7,16,0,0,5970,5971,7,9,0,0,5971,5972,5,95,0,0,5972,5973,7,29,0,0,5973,5974,7,17,0,0,5974,5975,7,16,0,0,5975,5976,7,20,0,0,5976,1222,1,0,0,0,5977,5978,7,9,0,0,5978,5979,7,16,0,0,5979,5980,7,13,0,0,5980,5981,7,17,0,0,5981,5982,7,7,0,0,5982,5983,7,23,0,0,5983,5984,5,95,0,0,5984,5985,7,16,0,0,5985,5986,7,19,0,0,5986,5987,5,95,0,0,5987,5988,7,5,0,0,5988,5989,7,13,0,0,5989,5990,7,13,0,0,5990,5991,7,5,0,0,5991,5992,7,8,0,0,5992,1224,1,0,0,0,5993,5994,7,9,0,0,5994,5995,7,16,0,0,5995,5996,7,13,0,0,5996,5997,7,17,0,0,5997,5998,7,7,0,0,5998,5999,7,23,0,0,5999,6e3,5,95,0,0,6e3,6001,7,16,0,0,6001,6002,7,19,0,0,6002,6003,5,95,0,0,6003,6004,7,16,0,0,6004,6005,7,5,0,0,6005,6006,7,18,0,0,6006,6007,7,6,0,0,6007,6008,7,10,0,0,6008,1226,1,0,0,0,6009,6010,7,9,0,0,6010,6011,7,16,0,0,6011,6012,7,13,0,0,6012,6013,7,24,0,0,6013,6014,7,19,0,0,6014,6015,7,9,0,0,6015,1228,1,0,0,0,6016,6017,7,9,0,0,6017,6018,7,22,0,0,6018,6019,7,18,0,0,6019,6020,7,9,0,0,6020,6021,7,16,0,0,6021,6022,7,13,0,0,6022,1230,1,0,0,0,6023,6024,7,16,0,0,6024,6025,7,19,0,0,6025,6026,5,95,0,0,6026,6027,7,5,0,0,6027,6028,7,9,0,0,6028,6029,7,14,0,0,6029,6030,7,17,0,0,6030,6031,7,17,0,0,6031,1232,1,0,0,0,6032,6033,7,16,0,0,6033,6034,7,19,0,0,6034,6035,5,95,0,0,6035,6036,7,20,0,0,6036,6037,7,10,0,0,6037,6038,7,26,0,0,6038,1234,1,0,0,0,6039,6040,7,16,0,0,6040,6041,7,13,0,0,6041,6042,7,5,0,0,6042,6043,7,7,0,0,6043,6044,7,9,0,0,6044,6045,7,6,0,0,6045,6046,7,5,0,0,6046,6047,7,16,0,0,6047,6048,7,10,0,0,6048,1236,1,0,0,0,6049,6050,7,22,0,0,6050,6051,7,7,0,0,6051,6052,7,17,0,0,6052,6053,7,9,0,0,6053,6054,7,16,0,0,6054,6055,7,13,0,0,6055,1238,1,0,0,0,6056,6057,7,5,0,0,6057,6058,7,23,0,0,6058,6059,7,10,0,0,6059,1240,1,0,0,0,6060,6061,7,14,0,0,6061,6062,7,6,0,0,6062,6063,7,19,0,0,6063,6064,7,14,0,0,6064,6065,7,21,0,0,6065,6066,5,95,0,0,6066,6067,7,16,0,0,6067,6068,7,17,0,0,6068,6069,7,15,0,0,6069,6070,7,10,0,0,6070,6071,7,9,0,0,6071,6072,7,16,0,0,6072,6073,7,5,0,0,6073,6074,7,15,0,0,6074,6075,7,24,0,0,6075,1242,1,0,0,0,6076,6077,7,12,0,0,6077,6078,7,5,0,0,6078,6079,7,16,0,0,6079,6080,7,10,0,0,6080,6081,5,95,0,0,6081,6082,7,18,0,0,6082,6083,7,17,0,0,6083,6084,7,7,0,0,6084,1244,1,0,0,0,6085,6086,7,12,0,0,6086,6087,7,5,0,0,6087,6088,7,16,0,0,6088,6089,7,10,0,0,6089,6090,5,95,0,0,6090,6091,7,24,0,0,6091,6092,7,5,0,0,6092,6093,7,13,0,0,6093,6094,7,16,0,0,6094,1246,1,0,0,0,6095,6096,7,12,0,0,6096,6097,7,5,0,0,6097,6098,7,16,0,0,6098,6099,7,10,0,0,6099,6100,5,95,0,0,6100,6101,7,16,0,0,6101,6102,7,13,0,0,6102,6103,7,22,0,0,6103,6104,7,7,0,0,6104,6105,7,14,0,0,6105,1248,1,0,0,0,6106,6107,7,17,0,0,6107,6108,7,9,0,0,6108,6109,7,25,0,0,6109,6110,7,17,0,0,6110,6111,7,7,0,0,6111,6112,7,17,0,0,6112,6113,7,16,0,0,6113,6114,7,10,0,0,6114,1250,1,0,0,0,6115,6116,7,30,0,0,6116,6117,7,22,0,0,6117,6118,7,9,0,0,6118,6119,7,16,0,0,6119,6120,7,17,0,0,6120,6121,7,25,0,0,6121,6122,7,8,0,0,6122,6123,5,95,0,0,6123,6124,7,12,0,0,6124,6125,7,5,0,0,6125,6126,7,8,0,0,6126,6127,7,9,0,0,6127,1252,1,0,0,0,6128,6129,7,30,0,0,6129,6130,7,22,0,0,6130,6131,7,9,0,0,6131,6132,7,16,0,0,6132,6133,7,17,0,0,6133,6134,7,25,0,0,6134,6135,7,8,0,0,6135,6136,5,95,0,0,6136,6137,7,20,0,0,6137,6138,7,19,0,0,6138,6139,7,22,0,0,6139,6140,7,13,0,0,6140,6141,7,9,0,0,6141,1254,1,0,0,0,6142,6143,7,30,0,0,6143,6144,7,22,0,0,6144,6145,7,9,0,0,6145,6146,7,16,0,0,6146,6147,7,17,0,0,6147,6148,7,25,0,0,6148,6149,7,8,0,0,6149,6150,5,95,0,0,6150,6151,7,17,0,0,6151,6152,7,7,0,0,6152,6153,7,16,0,0,6153,6154,7,10,0,0,6154,6155,7,13,0,0,6155,6156,7,27,0,0,6156,6157,7,5,0,0,6157,6158,7,6,0,0,6158,1256,1,0,0,0,6159,6160,7,15,0,0,6160,6161,7,5,0,0,6161,6162,7,21,0,0,6162,6163,7,10,0,0,6163,6164,5,95,0,0,6164,6165,7,12,0,0,6165,6166,7,5,0,0,6166,6167,7,16,0,0,6167,6168,7,10,0,0,6168,1258,1,0,0,0,6169,6170,7,15,0,0,6170,6171,7,5,0,0,6171,6172,7,21,0,0,6172,6173,7,10,0,0,6173,6174,5,95,0,0,6174,6175,7,17,0,0,6175,6176,7,7,0,0,6176,6177,7,16,0,0,6177,6178,7,10,0,0,6178,6179,7,13,0,0,6179,6180,7,27,0,0,6180,6181,7,5,0,0,6181,6182,7,6,0,0,6182,1260,1,0,0,0,6183,6184,7,15,0,0,6184,6185,7,5,0,0,6185,6186,7,21,0,0,6186,6187,7,10,0,0,6187,6188,5,95,0,0,6188,6189,7,16,0,0,6189,6190,7,17,0,0,6190,6191,7,15,0,0,6191,6192,7,10,0,0,6192,1262,1,0,0,0,6193,6194,7,15,0,0,6194,6195,7,5,0,0,6195,6196,7,21,0,0,6196,6197,7,10,0,0,6197,6198,5,95,0,0,6198,6199,7,16,0,0,6199,6200,7,17,0,0,6200,6201,7,15,0,0,6201,6202,7,10,0,0,6202,6203,7,9,0,0,6203,6204,7,16,0,0,6204,6205,7,5,0,0,6205,6206,7,15,0,0,6206,6207,7,24,0,0,6207,1264,1,0,0,0,6208,6209,7,15,0,0,6209,6210,7,5,0,0,6210,6211,7,21,0,0,6211,6212,7,10,0,0,6212,6213,5,95,0,0,6213,6214,7,16,0,0,6214,6215,7,17,0,0,6215,6216,7,15,0,0,6216,6217,7,10,0,0,6217,6218,7,9,0,0,6218,6219,7,16,0,0,6219,6220,7,5,0,0,6220,6221,7,15,0,0,6221,6222,7,24,0,0,6222,6223,7,16,0,0,6223,6224,7,11,0,0,6224,1266,1,0,0,0,6225,6226,7,7,0,0,6226,6227,7,19,0,0,6227,6228,7,29,0,0,6228,1268,1,0,0,0,6229,6230,7,9,0,0,6230,6231,7,16,0,0,6231,6232,7,5,0,0,6232,6233,7,16,0,0,6233,6234,7,10,0,0,6234,6235,7,15,0,0,6235,6236,7,10,0,0,6236,6237,7,7,0,0,6237,6238,7,16,0,0,6238,6239,5,95,0,0,6239,6240,7,16,0,0,6240,6241,7,17,0,0,6241,6242,7,15,0,0,6242,6243,7,10,0,0,6243,6244,7,9,0,0,6244,6245,7,16,0,0,6245,6246,7,5,0,0,6246,6247,7,15,0,0,6247,6248,7,24,0,0,6248,1270,1,0,0,0,6249,6250,7,16,0,0,6250,6251,7,17,0,0,6251,6252,7,15,0,0,6252,6253,7,10,0,0,6253,6254,7,19,0,0,6254,6255,7,25,0,0,6255,6256,7,12,0,0,6256,6257,7,5,0,0,6257,6258,7,8,0,0,6258,1272,1,0,0,0,6259,6260,7,16,0,0,6260,6261,7,13,0,0,6261,6262,7,5,0,0,6262,6263,7,7,0,0,6263,6264,7,9,0,0,6264,6265,7,5,0,0,6265,6266,7,14,0,0,6266,6267,7,16,0,0,6267,6268,7,17,0,0,6268,6269,7,19,0,0,6269,6270,7,7,0,0,6270,6271,5,95,0,0,6271,6272,7,16,0,0,6272,6273,7,17,0,0,6273,6274,7,15,0,0,6274,6275,7,10,0,0,6275,6276,7,9,0,0,6276,6277,7,16,0,0,6277,6278,7,5,0,0,6278,6279,7,15,0,0,6279,6280,7,24,0,0,6280,1274,1,0,0,0,6281,6282,7,16,0,0,6282,6283,7,19,0,0,6283,6284,5,95,0,0,6284,6285,7,16,0,0,6285,6286,7,17,0,0,6286,6287,7,15,0,0,6287,6288,7,10,0,0,6288,6289,7,9,0,0,6289,6290,7,16,0,0,6290,6291,7,5,0,0,6291,6292,7,15,0,0,6292,6293,7,24,0,0,6293,1276,1,0,0,0,6294,6295,7,16,0,0,6295,6296,7,19,0,0,6296,6297,5,95,0,0,6297,6298,7,14,0,0,6298,6299,7,20,0,0,6299,6300,7,5,0,0,6300,6301,7,13,0,0,6301,1278,1,0,0,0,6302,6303,7,16,0,0,6303,6304,7,19,0,0,6304,6305,5,95,0,0,6305,6306,7,12,0,0,6306,6307,7,5,0,0,6307,6308,7,16,0,0,6308,6309,7,10,0,0,6309,1280,1,0,0,0,6310,6311,7,16,0,0,6311,6312,7,19,0,0,6312,6313,5,95,0,0,6313,6314,7,7,0,0,6314,6315,7,22,0,0,6315,6316,7,15,0,0,6316,6317,7,18,0,0,6317,6318,7,10,0,0,6318,6319,7,13,0,0,6319,1282,1,0,0,0,6320,6324,3,1285,640,0,6321,6323,3,1287,641,0,6322,6321,1,0,0,0,6323,6326,1,0,0,0,6324,6322,1,0,0,0,6324,6325,1,0,0,0,6325,1284,1,0,0,0,6326,6324,1,0,0,0,6327,6334,7,31,0,0,6328,6329,7,32,0,0,6329,6334,4,640,6,0,6330,6331,7,33,0,0,6331,6332,7,34,0,0,6332,6334,4,640,7,0,6333,6327,1,0,0,0,6333,6328,1,0,0,0,6333,6330,1,0,0,0,6334,1286,1,0,0,0,6335,6338,3,1289,642,0,6336,6338,5,36,0,0,6337,6335,1,0,0,0,6337,6336,1,0,0,0,6338,1288,1,0,0,0,6339,6342,3,1285,640,0,6340,6342,7,0,0,0,6341,6339,1,0,0,0,6341,6340,1,0,0,0,6342,1290,1,0,0,0,6343,6344,3,1293,644,0,6344,6345,5,34,0,0,6345,1292,1,0,0,0,6346,6352,5,34,0,0,6347,6348,5,34,0,0,6348,6351,5,34,0,0,6349,6351,8,35,0,0,6350,6347,1,0,0,0,6350,6349,1,0,0,0,6351,6354,1,0,0,0,6352,6350,1,0,0,0,6352,6353,1,0,0,0,6353,1294,1,0,0,0,6354,6352,1,0,0,0,6355,6356,3,1297,646,0,6356,6357,5,34,0,0,6357,1296,1,0,0,0,6358,6364,5,34,0,0,6359,6360,5,34,0,0,6360,6363,5,34,0,0,6361,6363,8,36,0,0,6362,6359,1,0,0,0,6362,6361,1,0,0,0,6363,6366,1,0,0,0,6364,6362,1,0,0,0,6364,6365,1,0,0,0,6365,1298,1,0,0,0,6366,6364,1,0,0,0,6367,6368,7,22,0,0,6368,6369,5,38,0,0,6369,6370,3,1291,643,0,6370,1300,1,0,0,0,6371,6372,7,22,0,0,6372,6373,5,38,0,0,6373,6374,3,1293,644,0,6374,1302,1,0,0,0,6375,6376,7,22,0,0,6376,6377,5,38,0,0,6377,6378,3,1295,645,0,6378,1304,1,0,0,0,6379,6380,7,22,0,0,6380,6381,5,38,0,0,6381,6382,3,1297,646,0,6382,1306,1,0,0,0,6383,6384,3,1309,652,0,6384,6385,5,39,0,0,6385,1308,1,0,0,0,6386,6392,5,39,0,0,6387,6388,5,39,0,0,6388,6391,5,39,0,0,6389,6391,8,37,0,0,6390,6387,1,0,0,0,6390,6389,1,0,0,0,6391,6394,1,0,0,0,6392,6390,1,0,0,0,6392,6393,1,0,0,0,6393,1310,1,0,0,0,6394,6392,1,0,0,0,6395,6396,7,10,0,0,6396,6397,5,39,0,0,6397,6398,1,0,0,0,6398,6399,6,653,2,0,6399,6400,6,653,3,0,6400,1312,1,0,0,0,6401,6402,3,1315,655,0,6402,6403,5,39,0,0,6403,1314,1,0,0,0,6404,6405,7,22,0,0,6405,6406,5,38,0,0,6406,6407,3,1309,652,0,6407,1316,1,0,0,0,6408,6410,5,36,0,0,6409,6411,3,1319,657,0,6410,6409,1,0,0,0,6410,6411,1,0,0,0,6411,6412,1,0,0,0,6412,6413,5,36,0,0,6413,6414,6,656,4,0,6414,6415,1,0,0,0,6415,6416,6,656,5,0,6416,1318,1,0,0,0,6417,6421,3,1285,640,0,6418,6420,3,1289,642,0,6419,6418,1,0,0,0,6420,6423,1,0,0,0,6421,6419,1,0,0,0,6421,6422,1,0,0,0,6422,1320,1,0,0,0,6423,6421,1,0,0,0,6424,6425,3,1323,659,0,6425,6426,5,39,0,0,6426,1322,1,0,0,0,6427,6428,7,18,0,0,6428,6432,5,39,0,0,6429,6431,7,38,0,0,6430,6429,1,0,0,0,6431,6434,1,0,0,0,6432,6430,1,0,0,0,6432,6433,1,0,0,0,6433,1324,1,0,0,0,6434,6432,1,0,0,0,6435,6436,3,1327,661,0,6436,6437,5,39,0,0,6437,1326,1,0,0,0,6438,6439,7,18,0,0,6439,6440,3,1309,652,0,6440,1328,1,0,0,0,6441,6442,3,1331,663,0,6442,6443,5,39,0,0,6443,1330,1,0,0,0,6444,6445,7,26,0,0,6445,6449,5,39,0,0,6446,6448,7,39,0,0,6447,6446,1,0,0,0,6448,6451,1,0,0,0,6449,6447,1,0,0,0,6449,6450,1,0,0,0,6450,1332,1,0,0,0,6451,6449,1,0,0,0,6452,6453,3,1335,665,0,6453,6454,5,39,0,0,6454,1334,1,0,0,0,6455,6456,7,26,0,0,6456,6457,3,1309,652,0,6457,1336,1,0,0,0,6458,6459,3,1343,669,0,6459,1338,1,0,0,0,6460,6461,3,1343,669,0,6461,6462,5,46,0,0,6462,6463,5,46,0,0,6463,6464,1,0,0,0,6464,6465,6,667,6,0,6465,1340,1,0,0,0,6466,6467,3,1343,669,0,6467,6469,5,46,0,0,6468,6470,3,1343,669,0,6469,6468,1,0,0,0,6469,6470,1,0,0,0,6470,6476,1,0,0,0,6471,6473,7,10,0,0,6472,6474,7,1,0,0,6473,6472,1,0,0,0,6473,6474,1,0,0,0,6474,6475,1,0,0,0,6475,6477,3,1343,669,0,6476,6471,1,0,0,0,6476,6477,1,0,0,0,6477,6495,1,0,0,0,6478,6479,5,46,0,0,6479,6485,3,1343,669,0,6480,6482,7,10,0,0,6481,6483,7,1,0,0,6482,6481,1,0,0,0,6482,6483,1,0,0,0,6483,6484,1,0,0,0,6484,6486,3,1343,669,0,6485,6480,1,0,0,0,6485,6486,1,0,0,0,6486,6495,1,0,0,0,6487,6488,3,1343,669,0,6488,6490,7,10,0,0,6489,6491,7,1,0,0,6490,6489,1,0,0,0,6490,6491,1,0,0,0,6491,6492,1,0,0,0,6492,6493,3,1343,669,0,6493,6495,1,0,0,0,6494,6466,1,0,0,0,6494,6478,1,0,0,0,6494,6487,1,0,0,0,6495,1342,1,0,0,0,6496,6498,7,0,0,0,6497,6496,1,0,0,0,6498,6499,1,0,0,0,6499,6497,1,0,0,0,6499,6500,1,0,0,0,6500,1344,1,0,0,0,6501,6502,5,58,0,0,6502,6506,7,40,0,0,6503,6505,7,41,0,0,6504,6503,1,0,0,0,6505,6508,1,0,0,0,6506,6504,1,0,0,0,6506,6507,1,0,0,0,6507,1346,1,0,0,0,6508,6506,1,0,0,0,6509,6510,5,58,0,0,6510,6511,5,34,0,0,6511,6519,1,0,0,0,6512,6513,5,92,0,0,6513,6518,9,0,0,0,6514,6515,5,34,0,0,6515,6518,5,34,0,0,6516,6518,8,42,0,0,6517,6512,1,0,0,0,6517,6514,1,0,0,0,6517,6516,1,0,0,0,6518,6521,1,0,0,0,6519,6517,1,0,0,0,6519,6520,1,0,0,0,6520,6522,1,0,0,0,6521,6519,1,0,0,0,6522,6523,5,34,0,0,6523,1348,1,0,0,0,6524,6526,7,43,0,0,6525,6524,1,0,0,0,6526,6527,1,0,0,0,6527,6525,1,0,0,0,6527,6528,1,0,0,0,6528,6529,1,0,0,0,6529,6530,6,672,7,0,6530,1350,1,0,0,0,6531,6533,5,13,0,0,6532,6534,5,10,0,0,6533,6532,1,0,0,0,6533,6534,1,0,0,0,6534,6537,1,0,0,0,6535,6537,5,10,0,0,6536,6531,1,0,0,0,6536,6535,1,0,0,0,6537,6538,1,0,0,0,6538,6539,6,673,7,0,6539,1352,1,0,0,0,6540,6541,5,45,0,0,6541,6542,5,45,0,0,6542,6546,1,0,0,0,6543,6545,8,44,0,0,6544,6543,1,0,0,0,6545,6548,1,0,0,0,6546,6544,1,0,0,0,6546,6547,1,0,0,0,6547,6549,1,0,0,0,6548,6546,1,0,0,0,6549,6550,6,674,8,0,6550,1354,1,0,0,0,6551,6552,5,47,0,0,6552,6553,5,42,0,0,6553,6576,1,0,0,0,6554,6556,5,47,0,0,6555,6554,1,0,0,0,6556,6559,1,0,0,0,6557,6555,1,0,0,0,6557,6558,1,0,0,0,6558,6560,1,0,0,0,6559,6557,1,0,0,0,6560,6575,3,1355,675,0,6561,6575,8,45,0,0,6562,6564,5,47,0,0,6563,6562,1,0,0,0,6564,6565,1,0,0,0,6565,6563,1,0,0,0,6565,6566,1,0,0,0,6566,6567,1,0,0,0,6567,6575,8,45,0,0,6568,6570,5,42,0,0,6569,6568,1,0,0,0,6570,6571,1,0,0,0,6571,6569,1,0,0,0,6571,6572,1,0,0,0,6572,6573,1,0,0,0,6573,6575,8,45,0,0,6574,6557,1,0,0,0,6574,6561,1,0,0,0,6574,6563,1,0,0,0,6574,6569,1,0,0,0,6575,6578,1,0,0,0,6576,6574,1,0,0,0,6576,6577,1,0,0,0,6577,6582,1,0,0,0,6578,6576,1,0,0,0,6579,6581,5,42,0,0,6580,6579,1,0,0,0,6581,6584,1,0,0,0,6582,6580,1,0,0,0,6582,6583,1,0,0,0,6583,6585,1,0,0,0,6584,6582,1,0,0,0,6585,6586,5,42,0,0,6586,6587,5,47,0,0,6587,6588,1,0,0,0,6588,6589,6,675,8,0,6589,1356,1,0,0,0,6590,6591,5,47,0,0,6591,6592,5,42,0,0,6592,6617,1,0,0,0,6593,6595,5,47,0,0,6594,6593,1,0,0,0,6595,6598,1,0,0,0,6596,6594,1,0,0,0,6596,6597,1,0,0,0,6597,6599,1,0,0,0,6598,6596,1,0,0,0,6599,6616,3,1355,675,0,6600,6616,8,45,0,0,6601,6603,5,47,0,0,6602,6601,1,0,0,0,6603,6604,1,0,0,0,6604,6602,1,0,0,0,6604,6605,1,0,0,0,6605,6606,1,0,0,0,6606,6614,8,45,0,0,6607,6609,5,42,0,0,6608,6607,1,0,0,0,6609,6610,1,0,0,0,6610,6608,1,0,0,0,6610,6611,1,0,0,0,6611,6612,1,0,0,0,6612,6614,8,45,0,0,6613,6602,1,0,0,0,6613,6608,1,0,0,0,6614,6616,1,0,0,0,6615,6596,1,0,0,0,6615,6600,1,0,0,0,6615,6613,1,0,0,0,6616,6619,1,0,0,0,6617,6615,1,0,0,0,6617,6618,1,0,0,0,6618,6637,1,0,0,0,6619,6617,1,0,0,0,6620,6622,5,47,0,0,6621,6620,1,0,0,0,6622,6623,1,0,0,0,6623,6621,1,0,0,0,6623,6624,1,0,0,0,6624,6638,1,0,0,0,6625,6627,5,42,0,0,6626,6625,1,0,0,0,6627,6628,1,0,0,0,6628,6626,1,0,0,0,6628,6629,1,0,0,0,6629,6638,1,0,0,0,6630,6632,5,47,0,0,6631,6630,1,0,0,0,6632,6635,1,0,0,0,6633,6631,1,0,0,0,6633,6634,1,0,0,0,6634,6636,1,0,0,0,6635,6633,1,0,0,0,6636,6638,3,1357,676,0,6637,6621,1,0,0,0,6637,6626,1,0,0,0,6637,6633,1,0,0,0,6637,6638,1,0,0,0,6638,6639,1,0,0,0,6639,6640,6,676,9,0,6640,1358,1,0,0,0,6641,6653,5,92,0,0,6642,6652,8,46,0,0,6643,6647,5,34,0,0,6644,6646,8,47,0,0,6645,6644,1,0,0,0,6646,6649,1,0,0,0,6647,6645,1,0,0,0,6647,6648,1,0,0,0,6648,6650,1,0,0,0,6649,6647,1,0,0,0,6650,6652,5,34,0,0,6651,6642,1,0,0,0,6651,6643,1,0,0,0,6652,6655,1,0,0,0,6653,6651,1,0,0,0,6653,6654,1,0,0,0,6654,6663,1,0,0,0,6655,6653,1,0,0,0,6656,6660,5,34,0,0,6657,6659,8,47,0,0,6658,6657,1,0,0,0,6659,6662,1,0,0,0,6660,6658,1,0,0,0,6660,6661,1,0,0,0,6661,6664,1,0,0,0,6662,6660,1,0,0,0,6663,6656,1,0,0,0,6663,6664,1,0,0,0,6664,1360,1,0,0,0,6665,6666,5,92,0,0,6666,6667,5,92,0,0,6667,1362,1,0,0,0,6668,6669,9,0,0,0,6669,1364,1,0,0,0,6670,6671,3,1369,682,0,6671,6672,5,39,0,0,6672,6673,1,0,0,0,6673,6674,6,680,10,0,6674,1366,1,0,0,0,6675,6677,3,1369,682,0,6676,6678,5,92,0,0,6677,6676,1,0,0,0,6677,6678,1,0,0,0,6678,6679,1,0,0,0,6679,6680,5,0,0,1,6680,1368,1,0,0,0,6681,6682,5,39,0,0,6682,6705,5,39,0,0,6683,6701,5,92,0,0,6684,6685,5,120,0,0,6685,6702,7,39,0,0,6686,6687,5,117,0,0,6687,6688,7,39,0,0,6688,6689,7,39,0,0,6689,6690,7,39,0,0,6690,6702,7,39,0,0,6691,6692,5,85,0,0,6692,6693,7,39,0,0,6693,6694,7,39,0,0,6694,6695,7,39,0,0,6695,6696,7,39,0,0,6696,6697,7,39,0,0,6697,6698,7,39,0,0,6698,6699,7,39,0,0,6699,6702,7,39,0,0,6700,6702,8,48,0,0,6701,6684,1,0,0,0,6701,6686,1,0,0,0,6701,6691,1,0,0,0,6701,6700,1,0,0,0,6702,6705,1,0,0,0,6703,6705,8,49,0,0,6704,6681,1,0,0,0,6704,6683,1,0,0,0,6704,6703,1,0,0,0,6705,6708,1,0,0,0,6706,6704,1,0,0,0,6706,6707,1,0,0,0,6707,1370,1,0,0,0,6708,6706,1,0,0,0,6709,6710,3,1375,685,0,6710,6711,5,39,0,0,6711,6712,1,0,0,0,6712,6713,6,683,10,0,6713,1372,1,0,0,0,6714,6716,3,1375,685,0,6715,6717,5,92,0,0,6716,6715,1,0,0,0,6716,6717,1,0,0,0,6717,6718,1,0,0,0,6718,6719,5,0,0,1,6719,1374,1,0,0,0,6720,6721,5,39,0,0,6721,6726,5,39,0,0,6722,6723,5,92,0,0,6723,6726,9,0,0,0,6724,6726,8,49,0,0,6725,6720,1,0,0,0,6725,6722,1,0,0,0,6725,6724,1,0,0,0,6726,6729,1,0,0,0,6727,6725,1,0,0,0,6727,6728,1,0,0,0,6728,1376,1,0,0,0,6729,6727,1,0,0,0,6730,6731,3,1349,672,0,6731,6732,1,0,0,0,6732,6733,6,686,11,0,6733,6734,6,686,7,0,6734,1378,1,0,0,0,6735,6736,3,1351,673,0,6736,6737,1,0,0,0,6737,6738,6,687,12,0,6738,6739,6,687,7,0,6739,6740,6,687,13,0,6740,1380,1,0,0,0,6741,6742,6,688,14,0,6742,6743,1,0,0,0,6743,6744,6,688,8,0,6744,6745,6,688,15,0,6745,1382,1,0,0,0,6746,6747,3,1349,672,0,6747,6748,1,0,0,0,6748,6749,6,689,11,0,6749,6750,6,689,7,0,6750,1384,1,0,0,0,6751,6752,3,1351,673,0,6752,6753,1,0,0,0,6753,6754,6,690,12,0,6754,6755,6,690,7,0,6755,1386,1,0,0,0,6756,6757,5,39,0,0,6757,6758,1,0,0,0,6758,6759,6,691,2,0,6759,6760,6,691,16,0,6760,1388,1,0,0,0,6761,6762,6,692,17,0,6762,6763,1,0,0,0,6763,6764,6,692,8,0,6764,6765,6,692,15,0,6765,1390,1,0,0,0,6766,6768,8,50,0,0,6767,6766,1,0,0,0,6768,6769,1,0,0,0,6769,6767,1,0,0,0,6769,6770,1,0,0,0,6770,6779,1,0,0,0,6771,6775,5,36,0,0,6772,6774,8,50,0,0,6773,6772,1,0,0,0,6774,6777,1,0,0,0,6775,6773,1,0,0,0,6775,6776,1,0,0,0,6776,6779,1,0,0,0,6777,6775,1,0,0,0,6778,6767,1,0,0,0,6778,6771,1,0,0,0,6779,1392,1,0,0,0,6780,6782,5,36,0,0,6781,6783,3,1319,657,0,6782,6781,1,0,0,0,6782,6783,1,0,0,0,6783,6784,1,0,0,0,6784,6785,5,36,0,0,6785,6786,1,0,0,0,6786,6787,4,694,8,0,6787,6788,6,694,18,0,6788,6789,1,0,0,0,6789,6790,6,694,15,0,6790,1394,1,0,0,0,78,0,1,2,3,4,1462,1468,1470,1475,1479,1481,1484,1493,1495,1500,1505,1507,6324,6333,6337,6341,6350,6352,6362,6364,6390,6392,6410,6421,6432,6449,6469,6473,6476,6482,6485,6490,6494,6499,6506,6517,6519,6527,6533,6536,6546,6557,6565,6571,6574,6576,6582,6596,6604,6610,6613,6615,6617,6623,6628,6633,6637,6647,6651,6653,6660,6663,6677,6701,6704,6706,6716,6725,6727,6769,6775,6778,6782,19,1,28,0,7,29,0,3,0,0,5,1,0,1,656,1,5,4,0,1,667,2,0,1,0,6,0,0,1,676,3,2,2,0,7,663,0,7,664,0,2,3,0,1,688,4,4,0,0,2,1,0,1,692,5,1,694,6],Vi.vocabulary=new Ra(Vi.literalNames,Vi.symbolicNames,[]),Vi.decisionsToDFA=Vi._ATN.decisionToState.map(((t,e)=>new ni(t,e))),Vi),rn=class extends Cc{ParseRoutineBody(t){let e=null;for(let S of t.createFunctionOptionItem()){var s,a,r,i,c,n;if(null!==S.LANGUAGE()&&null!==S.nonReservedWordOrSconst()&&null!==(null===(s=S.nonReservedWordOrSconst())||void 0===s?void 0:s.nonReservedWord())&&null!==(null===(a=S.nonReservedWordOrSconst())||void 0===a||null===(r=a.nonReservedWord())||void 0===r?void 0:r.identifier())&&null!==(null===(i=S.nonReservedWordOrSconst())||void 0===i||null===(c=i.nonReservedWord())||void 0===c||null===(n=c.identifier())||void 0===n?void 0:n.Identifier())){var h,E,T,o;e=null===(h=S.nonReservedWordOrSconst())||void 0===h||null===(E=h.nonReservedWord())||void 0===E||null===(T=E.identifier())||void 0===T||null===(o=T.Identifier())||void 0===o?void 0:o.getText();break}}if(null===e)return;let R=null;for(let S of t.createFunctionOptionItem())if(null!==S.functionAs()){R=S;break}if(null!==R){var A;let t=this.GetRoutineBodyString(null===(A=R.functionAs())||void 0===A?void 0:A.sconst(0)),s=this.getPostgreSQLParser(t);switch(e){case"plpgsql":R.functionAs().Definition=s.plsqlroot();break;case"sql":R.functionAs().Definition=s.root()}}}unquote(t){let e=t.length,s="",a=0;for(;a'","'<<'","'>>'","':='","'<='","'=>'","'>='","'..'","'<>'","'::'","'%'",null,null,"'ALL'","'ANALYSE'","'ANALYZE'","'AND'","'ANY'","'ARRAY'","'AS'","'ASC'","'ASYMMETRIC'","'BOTH'","'CASE'","'CAST'","'CHECK'","'COLLATE'","'COLUMN'","'CONSTRAINT'","'CREATE'","'CURRENT_CATALOG'","'CURRENT_DATE'","'CURRENT_ROLE'","'CURRENT_TIME'","'CURRENT_TIMESTAMP'","'CURRENT_USER'","'DEFAULT'","'DEFERRABLE'","'DESC'","'DISTINCT'","'DO'","'ELSE'","'EXCEPT'","'FALSE'","'FETCH'","'FOR'","'FOREIGN'","'FROM'","'GRANT'","'GROUP'","'HAVING'","'IN'","'INITIALLY'","'INTERSECT'","'INTO'","'LATERAL'","'LEADING'","'LIMIT'","'LOCALTIME'","'LOCALTIMESTAMP'","'NOT'","'NULL'","'OFFSET'","'ON'","'ONLY'","'OR'","'ORDER'","'PLACING'","'PRIMARY'","'REFERENCES'","'RETURNING'","'SELECT'","'SESSION_USER'","'SOME'","'SYMMETRIC'","'TABLE'","'THEN'","'TO'","'TRAILING'","'TRUE'","'UNION'","'UNIQUE'","'USER'","'USING'","'VARIADIC'","'WHEN'","'WHERE'","'WINDOW'","'WITH'","'AUTHORIZATION'","'BINARY'","'COLLATION'","'CONCURRENTLY'","'CROSS'","'CURRENT_SCHEMA'","'FREEZE'","'FULL'","'ILIKE'","'INNER'","'IS'","'ISNULL'","'JOIN'","'LEFT'","'LIKE'","'NATURAL'","'NOTNULL'","'OUTER'","'OVER'","'OVERLAPS'","'RIGHT'","'SIMILAR'","'VERBOSE'","'ABORT'","'ABSOLUTE'","'ACCESS'","'ACTION'","'ADD'","'ADMIN'","'AFTER'","'AGGREGATE'","'ALSO'","'ALTER'","'ALWAYS'","'ASSERTION'","'ASSIGNMENT'","'AT'","'ATTRIBUTE'","'BACKWARD'","'BEFORE'","'BEGIN'","'BY'","'CACHE'","'CALLED'","'CASCADE'","'CASCADED'","'CATALOG'","'CHAIN'","'CHARACTERISTICS'","'CHECKPOINT'","'CLASS'","'CLOSE'","'CLUSTER'","'COMMENT'","'COMMENTS'","'COMMIT'","'COMMITTED'","'CONFIGURATION'","'CONNECTION'","'CONSTRAINTS'","'CONTENT'","'CONTINUE'","'CONVERSION'","'COPY'","'COST'","'CSV'","'CURSOR'","'CYCLE'","'DATA'","'DATABASE'","'DAY'","'DEALLOCATE'","'DECLARE'","'DEFAULTS'","'DEFERRED'","'DEFINER'","'DELETE'","'DELIMITER'","'DELIMITERS'","'DICTIONARY'","'DISABLE'","'DISCARD'","'DOCUMENT'","'DOMAIN'","'DOUBLE'","'DROP'","'EACH'","'ENABLE'","'ENCODING'","'ENCRYPTED'","'ENUM'","'ESCAPE'","'EVENT'","'EXCLUDE'","'EXCLUDING'","'EXCLUSIVE'","'EXECUTE'","'EXPLAIN'","'EXTENSION'","'EXTERNAL'","'FAMILY'","'FIRST'","'FOLLOWING'","'FORCE'","'FORWARD'","'FUNCTION'","'FUNCTIONS'","'GLOBAL'","'GRANTED'","'HANDLER'","'HEADER'","'HOLD'","'HOUR'","'IDENTITY'","'IF'","'IMMEDIATE'","'IMMUTABLE'","'IMPLICIT'","'INCLUDING'","'INCREMENT'","'INDEX'","'INDEXES'","'INHERIT'","'INHERITS'","'INLINE'","'INSENSITIVE'","'INSERT'","'INSTEAD'","'INVOKER'","'ISOLATION'","'KEY'","'LABEL'","'LANGUAGE'","'LARGE'","'LAST'","'LEAKPROOF'","'LEVEL'","'LISTEN'","'LOAD'","'LOCAL'","'LOCATION'","'LOCK'","'MAPPING'","'MATCH'","'MATCHED'","'MATERIALIZED'","'MAXVALUE'","'MERGE'","'MINUTE'","'MINVALUE'","'MODE'","'MONTH'","'MOVE'","'NAME'","'NAMES'","'NEXT'","'NO'","'NOTHING'","'NOTIFY'","'NOWAIT'","'NULLS'","'OBJECT'","'OF'","'OFF'","'OIDS'","'OPERATOR'","'OPTION'","'OPTIONS'","'OWNED'","'OWNER'","'PARSER'","'PARTIAL'","'PARTITION'","'PASSING'","'PASSWORD'","'PLANS'","'PRECEDING'","'PREPARE'","'PREPARED'","'PRESERVE'","'PRIOR'","'PRIVILEGES'","'PROCEDURAL'","'PROCEDURE'","'PROGRAM'","'QUOTE'","'RANGE'","'READ'","'REASSIGN'","'RECHECK'","'RECURSIVE'","'REF'","'REFRESH'","'REINDEX'","'RELATIVE'","'RELEASE'","'RENAME'","'REPEATABLE'","'REPLACE'","'REPLICA'","'RESET'","'RESTART'","'RESTRICT'","'RETURNS'","'REVOKE'","'ROLE'","'ROLLBACK'","'ROWS'","'RULE'","'SAVEPOINT'","'SCHEMA'","'SCROLL'","'SEARCH'","'SECOND'","'SECURITY'","'SEQUENCE'","'SEQUENCES'","'SERIALIZABLE'","'SERVER'","'SESSION'","'SET'","'SHARE'","'SHOW'","'SIMPLE'","'SNAPSHOT'","'STABLE'","'STANDALONE'","'START'","'STATEMENT'","'STATISTICS'","'STDIN'","'STDOUT'","'STORAGE'","'STRICT'","'STRIP'","'SYSID'","'SYSTEM'","'TABLES'","'TABLESPACE'","'TEMP'","'TEMPLATE'","'TEMPORARY'","'TEXT'","'TRANSACTION'","'TRIGGER'","'TRUNCATE'","'TRUSTED'","'TYPE'","'TYPES'","'UNBOUNDED'","'UNCOMMITTED'","'UNENCRYPTED'","'UNKNOWN'","'UNLISTEN'","'UNLOGGED'","'UNTIL'","'UPDATE'","'VACUUM'","'VALID'","'VALIDATE'","'VALIDATOR'","'VARYING'","'VERSION'","'VIEW'","'VOLATILE'","'WHITESPACE'","'WITHOUT'","'WORK'","'WRAPPER'","'WRITE'","'XML'","'YEAR'","'YES'","'ZONE'","'BETWEEN'","'BIGINT'","'BIT'","'BOOLEAN'","'CHAR'","'CHARACTER'","'COALESCE'","'DEC'","'DECIMAL'","'EXISTS'","'EXTRACT'","'FLOAT'","'GREATEST'","'INOUT'","'INT'","'INTEGER'","'INTERVAL'","'LEAST'","'NATIONAL'","'NCHAR'","'NONE'","'NULLIF'","'NUMERIC'","'OVERLAY'","'POSITION'","'PRECISION'","'REAL'","'ROW'","'SETOF'","'SMALLINT'","'SUBSTRING'","'TIME'","'TIMESTAMP'","'TREAT'","'TRIM'","'VALUES'","'VARCHAR'","'XMLATTRIBUTES'","'XMLCOMMENT'","'XMLAGG'","'XML_IS_WELL_FORMED'","'XML_IS_WELL_FORMED_DOCUMENT'","'XML_IS_WELL_FORMED_CONTENT'","'XPATH'","'XPATH_EXISTS'","'XMLCONCAT'","'XMLELEMENT'","'XMLEXISTS'","'XMLFOREST'","'XMLPARSE'","'XMLPI'","'XMLROOT'","'XMLSERIALIZE'","'CALL'","'CURRENT'","'ATTACH'","'DETACH'","'EXPRESSION'","'GENERATED'","'LOGGED'","'STORED'","'INCLUDE'","'ROUTINE'","'TRANSFORM'","'IMPORT'","'POLICY'","'METHOD'","'REFERENCING'","'NEW'","'OLD'","'VALUE'","'SUBSCRIPTION'","'PUBLICATION'","'OUT'","'END'","'ROUTINES'","'SCHEMAS'","'PROCEDURES'","'INPUT'","'SUPPORT'","'PARALLEL'","'SQL'","'DEPENDS'","'OVERRIDING'","'CONFLICT'","'SKIP'","'LOCKED'","'TIES'","'ROLLUP'","'CUBE'","'GROUPING'","'SETS'","'TABLESAMPLE'","'ORDINALITY'","'XMLTABLE'","'COLUMNS'","'XMLNAMESPACES'","'ROWTYPE'","'NORMALIZED'","'WITHIN'","'FILTER'","'GROUPS'","'OTHERS'","'NFC'","'NFD'","'NFKC'","'NFKD'","'UESCAPE'","'VIEWS'","'NORMALIZE'","'DUMP'","'PRINT_STRICT_PARAMS'","'VARIABLE_CONFLICT'","'ERROR'","'USE_VARIABLE'","'USE_COLUMN'","'ALIAS'","'CONSTANT'","'PERFORM'","'GET'","'DIAGNOSTICS'","'STACKED'","'ELSIF'","'WHILE'","'REVERSE'","'FOREACH'","'SLICE'","'EXIT'","'RETURN'","'QUERY'","'RAISE'","'SQLSTATE'","'DEBUG'","'LOG'","'INFO'","'NOTICE'","'WARNING'","'EXCEPTION'","'ASSERT'","'LOOP'","'OPEN'","'ABS'","'CBRT'","'CEIL'","'CEILING'","'DEGREES'","'DIV'","'EXP'","'FACTORIAL'","'FLOOR'","'GCD'","'LCM'","'LN'","'LOG10'","'MIN_SCALE'","'MOD'","'PI'","'POWER'","'RADIANS'","'ROUND'","'SCALE'","'SIGN'","'SQRT'","'TRIM_SCALE'","'TRUNC'","'WIDTH_BUCKET'","'RANDOM'","'SETSEED'","'ACOS'","'ACOSD'","'ASIN'","'ASIND'","'ATAN'","'ATAND'","'ATAN2'","'ATAN2D'","'COS'","'COSD'","'COT'","'COTD'","'SIN'","'SIND'","'TAN'","'TAND'","'SINH'","'COSH'","'TANH'","'ASINH'","'ACOSH'","'ATANH'","'BIT_LENGTH'","'CHAR_LENGTH'","'CHARACTER_LENGTH'","'LOWER'","'OCTET_LENGTH'","'UPPER'","'ASCII'","'BTRIM'","'CHR'","'CONCAT'","'CONCAT_WS'","'FORMAT'","'INITCAP'","'LENGTH'","'LPAD'","'LTRIM'","'MD5'","'PARSE_IDENT'","'PG_CLIENT_ENCODING'","'QUOTE_IDENT'","'QUOTE_LITERAL'","'QUOTE_NULLABLE'","'REGEXP_COUNT'","'REGEXP_INSTR'","'REGEXP_LIKE'","'REGEXP_MATCH'","'REGEXP_MATCHES'","'REGEXP_REPLACE'","'REGEXP_SPLIT_TO_ARRAY'","'REGEXP_SPLIT_TO_TABLE'","'REGEXP_SUBSTR'","'REPEAT'","'RPAD'","'RTRIM'","'SPLIT_PART'","'STARTS_WITH'","'STRING_TO_ARRAY'","'STRING_TO_TABLE'","'STRPOS'","'SUBSTR'","'TO_ASCII'","'TO_HEX'","'TRANSLATE'","'UNISTR'","'AGE'","'CLOCK_TIMESTAMP'","'DATE_BIN'","'DATE_PART'","'DATE_TRUNC'","'ISFINITE'","'JUSTIFY_DAYS'","'JUSTIFY_HOURS'","'JUSTIFY_INTERVAL'","'MAKE_DATE'","'MAKE_INTERVAL'","'MAKE_TIME'","'MAKE_TIMESTAMP'","'MAKE_TIMESTAMPTZ'","'NOW'","'STATEMENT_TIMESTAMP'","'TIMEOFDAY'","'TRANSACTION_TIMESTAMP'","'TO_TIMESTAMP'","'TO_CHAR'","'TO_DATE'","'TO_NUMBER'",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"'\\'",null,null,null,null,null,null,null,null,null,"'''"],Xi.symbolicNames=[null,"Dollar","OPEN_PAREN","CLOSE_PAREN","OPEN_BRACKET","CLOSE_BRACKET","COMMA","SEMI","COLON","STAR","EQUAL","DOT","PLUS","MINUS","SLASH","CARET","LT","GT","LESS_LESS","GREATER_GREATER","COLON_EQUALS","LESS_EQUALS","EQUALS_GREATER","GREATER_EQUALS","DOT_DOT","NOT_EQUALS","TYPECAST","PERCENT","PARAM","Operator","ALL","ANALYSE","ANALYZE","AND","ANY","ARRAY","AS","ASC","ASYMMETRIC","BOTH","CASE","CAST","CHECK","COLLATE","COLUMN","CONSTRAINT","CREATE","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","EXCEPT","FALSE_P","FETCH","FOR","FOREIGN","FROM","GRANT","GROUP_P","HAVING","IN_P","INITIALLY","INTERSECT","INTO","LATERAL_P","LEADING","LIMIT","LOCALTIME","LOCALTIMESTAMP","NOT","NULL_P","OFFSET","ON","ONLY","OR","ORDER","PLACING","PRIMARY","REFERENCES","RETURNING","SELECT","SESSION_USER","SOME","SYMMETRIC","TABLE","THEN","TO","TRAILING","TRUE_P","UNION","UNIQUE","USER","USING","VARIADIC","WHEN","WHERE","WINDOW","WITH","AUTHORIZATION","BINARY","COLLATION","CONCURRENTLY","CROSS","CURRENT_SCHEMA","FREEZE","FULL","ILIKE","INNER_P","IS","ISNULL","JOIN","LEFT","LIKE","NATURAL","NOTNULL","OUTER_P","OVER","OVERLAPS","RIGHT","SIMILAR","VERBOSE","ABORT_P","ABSOLUTE_P","ACCESS","ACTION","ADD_P","ADMIN","AFTER","AGGREGATE","ALSO","ALTER","ALWAYS","ASSERTION","ASSIGNMENT","AT","ATTRIBUTE","BACKWARD","BEFORE","BEGIN_P","BY","CACHE","CALLED","CASCADE","CASCADED","CATALOG","CHAIN","CHARACTERISTICS","CHECKPOINT","CLASS","CLOSE","CLUSTER","COMMENT","COMMENTS","COMMIT","COMMITTED","CONFIGURATION","CONNECTION","CONSTRAINTS","CONTENT_P","CONTINUE_P","CONVERSION_P","COPY","COST","CSV","CURSOR","CYCLE","DATA_P","DATABASE","DAY_P","DEALLOCATE","DECLARE","DEFAULTS","DEFERRED","DEFINER","DELETE_P","DELIMITER","DELIMITERS","DICTIONARY","DISABLE_P","DISCARD","DOCUMENT_P","DOMAIN_P","DOUBLE_P","DROP","EACH","ENABLE_P","ENCODING","ENCRYPTED","ENUM_P","ESCAPE","EVENT","EXCLUDE","EXCLUDING","EXCLUSIVE","EXECUTE","EXPLAIN","EXTENSION","EXTERNAL","FAMILY","FIRST_P","FOLLOWING","FORCE","FORWARD","FUNCTION","FUNCTIONS","GLOBAL","GRANTED","HANDLER","HEADER_P","HOLD","HOUR_P","IDENTITY_P","IF_P","IMMEDIATE","IMMUTABLE","IMPLICIT_P","INCLUDING","INCREMENT","INDEX","INDEXES","INHERIT","INHERITS","INLINE_P","INSENSITIVE","INSERT","INSTEAD","INVOKER","ISOLATION","KEY","LABEL","LANGUAGE","LARGE_P","LAST_P","LEAKPROOF","LEVEL","LISTEN","LOAD","LOCAL","LOCATION","LOCK_P","MAPPING","MATCH","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MINUTE_P","MINVALUE","MODE","MONTH_P","MOVE","NAME_P","NAMES","NEXT","NO","NOTHING","NOTIFY","NOWAIT","NULLS_P","OBJECT_P","OF","OFF","OIDS","OPERATOR","OPTION","OPTIONS","OWNED","OWNER","PARSER","PARTIAL","PARTITION","PASSING","PASSWORD","PLANS","PRECEDING","PREPARE","PREPARED","PRESERVE","PRIOR","PRIVILEGES","PROCEDURAL","PROCEDURE","PROGRAM","QUOTE","RANGE","READ","REASSIGN","RECHECK","RECURSIVE","REF","REFRESH","REINDEX","RELATIVE_P","RELEASE","RENAME","REPEATABLE","REPLACE","REPLICA","RESET","RESTART","RESTRICT","RETURNS","REVOKE","ROLE","ROLLBACK","ROWS","RULE","SAVEPOINT","SCHEMA","SCROLL","SEARCH","SECOND_P","SECURITY","SEQUENCE","SEQUENCES","SERIALIZABLE","SERVER","SESSION","SET","SHARE","SHOW","SIMPLE","SNAPSHOT","STABLE","STANDALONE_P","START","STATEMENT","STATISTICS","STDIN","STDOUT","STORAGE","STRICT_P","STRIP_P","SYSID","SYSTEM_P","TABLES","TABLESPACE","TEMP","TEMPLATE","TEMPORARY","TEXT_P","TRANSACTION","TRIGGER","TRUNCATE","TRUSTED","TYPE_P","TYPES_P","UNBOUNDED","UNCOMMITTED","UNENCRYPTED","UNKNOWN","UNLISTEN","UNLOGGED","UNTIL","UPDATE","VACUUM","VALID","VALIDATE","VALIDATOR","VARYING","VERSION_P","VIEW","VOLATILE","WHITESPACE_P","WITHOUT","WORK","WRAPPER","WRITE","XML_P","YEAR_P","YES_P","ZONE","BETWEEN","BIGINT","BIT","BOOLEAN_P","CHAR_P","CHARACTER","COALESCE","DEC","DECIMAL_P","EXISTS","EXTRACT","FLOAT_P","GREATEST","INOUT","INT_P","INTEGER","INTERVAL","LEAST","NATIONAL","NCHAR","NONE","NULLIF","NUMERIC","OVERLAY","POSITION","PRECISION","REAL","ROW","SETOF","SMALLINT","SUBSTRING","TIME","TIMESTAMP","TREAT","TRIM","VALUES","VARCHAR","XMLATTRIBUTES","XMLCOMMENT","XMLAGG","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_DOCUMENT","XML_IS_WELL_FORMED_CONTENT","XPATH","XPATH_EXISTS","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","CALL","CURRENT_P","ATTACH","DETACH","EXPRESSION","GENERATED","LOGGED","STORED","INCLUDE","ROUTINE","TRANSFORM","IMPORT_P","POLICY","METHOD","REFERENCING","NEW","OLD","VALUE_P","SUBSCRIPTION","PUBLICATION","OUT_P","END_P","ROUTINES","SCHEMAS","PROCEDURES","INPUT_P","SUPPORT","PARALLEL","SQL_P","DEPENDS","OVERRIDING","CONFLICT","SKIP_P","LOCKED","TIES","ROLLUP","CUBE","GROUPING","SETS","TABLESAMPLE","ORDINALITY","XMLTABLE","COLUMNS","XMLNAMESPACES","ROWTYPE","NORMALIZED","WITHIN","FILTER","GROUPS","OTHERS","NFC","NFD","NFKC","NFKD","UESCAPE","VIEWS","NORMALIZE","DUMP","PRINT_STRICT_PARAMS","VARIABLE_CONFLICT","ERROR","USE_VARIABLE","USE_COLUMN","ALIAS","CONSTANT","PERFORM","GET","DIAGNOSTICS","STACKED","ELSIF","WHILE","REVERSE","FOREACH","SLICE","EXIT","RETURN","QUERY","RAISE","SQLSTATE","DEBUG","LOG","INFO","NOTICE","WARNING","EXCEPTION","ASSERT","LOOP","OPEN","ABS","CBRT","CEIL","CEILING","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","ROUND","SCALE","SIGN","SQRT","TRIM_SCALE","TRUNC","WIDTH_BUCKET","RANDOM","SETSEED","ACOS","ACOSD","ASIN","ASIND","ATAN","ATAND","ATAN2","ATAN2D","COS","COSD","COT","COTD","SIN","SIND","TAN","TAND","SINH","COSH","TANH","ASINH","ACOSH","ATANH","BIT_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","LOWER","OCTET_LENGTH","UPPER","ASCII","BTRIM","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LENGTH","LPAD","LTRIM","MD5","PARSE_IDENT","PG_CLIENT_ENCODING","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REGEXP_SUBSTR","REPEAT","RPAD","RTRIM","SPLIT_PART","STARTS_WITH","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","TO_ASCII","TO_HEX","TRANSLATE","UNISTR","AGE","CLOCK_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","STATEMENT_TIMESTAMP","TIMEOFDAY","TRANSACTION_TIMESTAMP","TO_TIMESTAMP","TO_CHAR","TO_DATE","TO_NUMBER","Identifier","QuotedIdentifier","UnterminatedQuotedIdentifier","InvalidQuotedIdentifier","InvalidUnterminatedQuotedIdentifier","UnicodeQuotedIdentifier","UnterminatedUnicodeQuotedIdentifier","InvalidUnicodeQuotedIdentifier","InvalidUnterminatedUnicodeQuotedIdentifier","StringConstant","UnterminatedStringConstant","UnicodeEscapeStringConstant","UnterminatedUnicodeEscapeStringConstant","BeginDollarStringConstant","BinaryStringConstant","UnterminatedBinaryStringConstant","InvalidBinaryStringConstant","InvalidUnterminatedBinaryStringConstant","HexadecimalStringConstant","UnterminatedHexadecimalStringConstant","InvalidHexadecimalStringConstant","InvalidUnterminatedHexadecimalStringConstant","Integral","NumericFail","Numeric","PLSQLVARIABLENAME","PLSQLIDENTIFIER","Whitespace","Newline","LineComment","BlockComment","UnterminatedBlockComment","MetaCommand","EndMetaCommand","ErrorCharacter","EscapeStringConstant","UnterminatedEscapeStringConstant","InvalidEscapeStringConstant","InvalidUnterminatedEscapeStringConstant","AfterEscapeStringConstantMode_NotContinued","AfterEscapeStringConstantWithNewlineMode_NotContinued","DollarText","EndDollarStringConstant","AfterEscapeStringConstantWithNewlineMode_Continued"],Xi.ruleNames=["root","plsqlRoot","statements","statement","plsqlConsoleCommand","callStatement","optionalWith","optionalRoleList","alterOptionalRoleList","alterRoleElemement","createRoleElement","createRoleStatement","alterRoleStatement","optionalInDatabase","alterRoleSetStatement","dropRoleStatement","addOrDrop","createSchemaStatement","optionalSchemaName","optionalSchemaList","schemaStatement","variableSetStatement","setStatementEnding","genericSetClause","setStatementMore","variableName","variableList","variableValue","isoLevel","booleanOrString","zoneValue","optionalEncoding","nonReservedWordOrSconst","variableResetStatement","resetClauseRest","genericResetClause","setResetClause","functionSetResetClause","variableShowStatement","setConstraintsStatement","constraintsSetList","constraintsSetMode","checkpointStatement","discardStatement","alterTableStatement","alterTableCommands","partitionCommand","indexPartitionCommand","alterTableCommand","alterColumnDefault","optionalDropBehavior","optionalCollateClause","alterUsing","replicaIdentity","relOptions","optionalRelOptions","relOptionList","relOptionElem","alterIdentityColumnOptionList","alterIdentityColumnOption","partitionBoundSpecification","hashPartitionBoundElement","hashPartitionBound","alterCompositeTypeStatement","alterTypeCommands","alterTypeCommand","closePortalStatement","copyStatement","fromOrTo","copyFileName","copyOptions","copyOptionsItem","copyDelimiter","copyGenericOptionList","copyGenericOptionElem","copyGenericOptionArgument","createStatement","temporaryOption","optionalTableElementList","optionalTypedTableElementList","tableElementList","typedTableElementList","tableElement","typedTableElement","columnDefinition","columnOptions","columnQualifierList","columnConstraint","columnConstraintElement","generatedWhen","constraintAttribute","tableLikeClause","tableLikeOptionList","tableLikeOption","tableConstraint","constraintElement","columnListWithParentheses","columnList","columnElement","optionalColumnListInclude","matchClause","exclusionConstraintList","exclusionConstraintElement","exclusionWhereClause","keyActions","onKeyUpdateClause","onKeyDeleteClause","keyAction","inheritClause","optionalPartitionSpecification","partitionSpecification","partitionElements","partitionElement","optionalTableAccessMethodClause","with","onCommitOption","optionalTablespace","usingIndexTablespace","existingIndex","createStatsStatement","alterStatsStatement","createAsStatement","createAsTarget","withData","createMaterializedViewStatement","createMaterializedViewTarget","refreshMaterializedViewStatement","createSequenceStatement","alterSequenceStatement","optionalParenthesizedSeqOptionsList","sequenceOptionList","sequenceOptionItem","numericOnly","numericOnlyList","createProcedureLangStatement","handlerName","optionalInlineHandler","validatorClause","optionalProcedural","createTablespaceStatement","optionalTablespaceOwner","dropTablespaceStatement","createExtensionStatement","createExtensionOptionItem","alterExtensionStatement","alterExtensionOptionItem","alterExtensionContentsStatement","createForeignDataWrapperStatement","forwardOption","forwardOptions","alterForeignDataWrapperStatement","createGenericOptions","genericOptionList","alterGenericOptions","alterGenericOptionList","alterGenericOptionElem","genericOptionElement","genericOptionName","genericOptionArgument","createForeignServerStatement","optionalType","foreignServerVersion","alterForeignServerStatement","createForeignTableStatement","importForeignSchemaStatement","importQualificationType","importQualification","createUserMappingStatement","authIdentifier","dropUserMappingStatement","alterUserMappingStatement","createPolicyStatement","alterPolicyStatement","rowSecurityOptionalExpression","rowSecurityOptionalWithCheck","rowSecurityOptionalToUser","rowSecurityDefaultPermissive","rowSecurityDefaultForCmd","rowSecurityCommand","createAccessMethodStatement","accessMethodType","createTriggerStatement","triggerActionTime","triggerEvents","triggerOneEvent","triggerReferencing","triggerTransitions","triggerTransition","transitionOldOrNew","transitionRowOrTable","transitionRelName","triggerForSpec","triggerForType","triggerWhen","functionOrProcedure","triggerFunctionArguments","triggerFunctionArgument","optionalConstraintFromTable","constraintAttributeSpecification","constraintAttributeElement","createEventTriggerStatement","eventTriggerWhenList","eventTriggerWhenItem","eventTriggerValueList","alterEventTriggerStatement","enableTrigger","createAssertionStatement","defineStatement","definition","definitionElement","definitionArgument","oldAggregateDefinition","oldAggregateElement","enumValueList","alterEnumStatement","optionalIfNotExists","createOperatorClassStatement","operatorClassItemList","operatorClassItem","optionalOperatorFamily","operatorClassPurpose","createOperatorFamilyStatement","alterOperatorFamilyStatement","operatorClassDropList","operatorClassDrop","dropOperatorClassStatement","dropOperatorFamilyStatement","dropOwnedStatement","reassignOwnedStatement","dropStatement","objectTypeAnyName","objectTypeName","dropTypeName","objectTypeNameOnAnyName","anyNameList","anyName","attributes","typeNameList","truncateStatement","optionalRestartSequences","commentStatement","commentText","securityLabelStatement","optionalProvider","securityLabel","fetchStatement","fetchArguments","fromOrIn","optionalFromOrIn","grantStatement","revokeStatement","privileges","privilegeList","privilege","privilegeTarget","granteeList","grantee","optionalWithGrantOption","grantPrivilegeStatement","revokePrivilegeStatement","optionalGrantAdminOption","optionalGrantedBy","alterDefaultPrivilegesStatement","defultPrivilegeOption","defaultPrivelegeAction","defultPrivilegeTarget","indexStatement","optionalAccessMethodClause","indexParameters","indexElemOptions","indexElement","optionalInclude","optionalCollate","optionalClass","optionalAscOrDesc","optionalNullsOrder","createFunctionStatement","optionalOrReplace","functionArgumentsList","functionWithArgumentTypesList","functionWithArgumentTypes","functionArgumentsWithDefaultsList","functionArgumentWithDefault","functionArgument","argumentClass","parameterName","functionReturn","functionType","aggregateArguments","aggregateArgumentsList","aggregateWithArgumentTypes","aggregateWithArgumentTypesList","createFunctionOptionList","commonFunctionOptionItem","createFunctionOptionItem","functionAs","transformTypeList","optionalDefinition","tableFunctionColumn","tableFunctionColumnList","alterFunctionStatement","removeFunctionStatement","removeAggregateStatement","removeOperatorStatement","operatorArgumentTypes","anyOperator","operatorWithArgumentTypesList","operatorWithArgumentTypes","doStatement","doStatementOptionsList","doStatementOptionItem","createCastStatement","castContext","dropCastStatement","optionalIfExists","createTransformStatement","transformElementList","dropTransformStatement","reindexStatement","reindexTargetType","reindexOptionList","reindexOptionElement","alterTablespaceStatement","renameStatement","optionalColumn","optionalSetData","alterObjectDependsStatement","alterObjectSchemaStatement","alterOperatorStatement","operatorDefinitionList","operatorDefinitionElement","operatorDefinitionArgument","alterTypeStatement","alterOwnerStatement","createPublicationStatement","optionalPublicationForTables","publicationForTables","alterPublicationStatement","createSubscriptionStatement","publicationNameList","publicationNameItem","alterSubscriptionStatement","dropSubscriptionStatement","ruleStatement","ruleActionList","ruleActionMulti","ruleActionStatement","ruleActionStatementOrEmpty","event","optionalInstead","notifyStatement","notifyPayload","listenStatement","unlistenStatement","transactionStatement","optionalTransaction","transactionModeItem","transactionModeList","optionalTransactionChain","viewStatement","optionalCheckOption","loadStatement","createDatabaseStatement","createDatabaseOptionList","createDatabaseOptionItem","createDatabaseOptionName","alterDatabaseStatement","alterDatabaseSetStatement","dropDatabaseStatement","alterCollationStatement","alterSystemStatement","createDomainStatement","alterDomainStatement","alterDomainCommand","optionalAs","altertsDictionaryStatement","altertsConfigurationStatement","createConversionStatement","clusterStatement","clusterIndexSpecification","vacuumStatement","analyzeStatement","vacuumAnalyzeOptionList","analyzeKeyword","vacuumAnalyzeOptionElement","vacuumAnalyzeOptionName","vacuumAnalyzeOptionArgument","optionalVerbose","optionalNameList","vacuumRelation","optionalVacuumRelationList","explainStatement","explainableStatement","explainOptionElement","explainOptionName","explainOptionArgument","prepareStatement","prepareTypeClause","preparableStatement","executeStatement","executeParameterClause","deallocateStatement","insertStatement","insertTarget","insertRest","overrideKind","insertColumnList","insertColumnItem","optionalOnConflict","optionalConflictExpr","returningClause","mergeStatement","mergeInsertClause","mergeUpdateClause","mergeDeleteClause","deleteStatement","usingClause","lockStatement","optionalLock","lockType","optionalNowait","optionalNowaitOrSkip","updateStatement","setClauseList","setClause","setTarget","declareCursorStatement","cursorName","optionalHold","selectStatement","selectWithParenthesis","selectWithoutParenthesis","selectClause","simpleSelectIntersect","simpleSelectStart","simpleSelectPramary","withClause","commonTableExpression","optionalMaterialized","intoClause","optionalTemporaryTableName","optionalTable","allOrDistinct","distinctClause","allClause","optionalSortClause","sortClause","sortByList","sortBy","selectLimit","optionalSelectLimit","limitClause","offsetClause","selectLimitValue","selectOffsetValue","selectFetchFirstValue","anyConst","rowOrRows","firstOrNext","groupClause","groupByList","groupByItem","havingClause","forLockingClause","forLockingItem","forLockingStrength","lockedRelationsList","valuesClause","fromClause","fromList","nonAnsiJoin","tableReference","aliasClause","optionalAliasClause","tableAliasClause","functionAliasClause","joinType","joinQualifier","viewName","relationExpression","relationExpressionList","relationExpressionOptionalAlias","tableSampleClause","functionTable","rowsFromItem","optionalColumnDefinitionList","optionalOrdinality","whereClause","whereOrCurrentClause","optionalTableFunctionElementList","tableFunctionElementList","tableFunctionElement","xmlTable","xmlTableColumnElement","xmlTableColumnOptionList","xmlTableColumnOptionElement","xmlNamespaceList","xmlNamespaceElement","typeName","simpleTypeName","constTypeName","genericType","optionalTypeModifiers","numeric","optionalFloat","bit","constBit","bitWithLength","bitWithoutLength","character","constCharacter","characterChar","optionalVarying","constDateTime","constInterval","optionalTimezone","optionalInterval","intervalSecond","optionalEscape","expression1","expression1Qualifier","expression1LessLess","expression1Or","expression1And","expression1Between","expression1In","expression1UnaryNot","expression1IsNull","expression1IsNot","expression1Compare","expression1Like","expression1qualifierOperator","expression1UnaryQualifierOperator","expression1Add","expressionMultiply","expression1Caret","expression1UnarySign","expression1AtTimeZone","expression1Collate","expression1Typecast","expression2","expression3","plsqlVariableName","functionApplication","functionExpression","functionExpressionWindowless","functionExpressionCommonSubexpr","xmlRootVersion","optionalXmlRootStandalone","xmlAttributes","xmlAttributeList","xmlAttributeElement","documentOrContent","xmlWhitespaceOption","xmlExistsArgument","xmlPassingMech","withinGroupClause","filterClause","windowClause","windowDefinitionList","windowDefinition","overClause","windowSpecification","optionalExistingWindowName","optionalPartitionClause","optionalFrameClause","frameExtent","frameBound","optionalWindowExclusionClause","row","explicitRow","implicitRow","subType","allOperator","mathOperator","operatorQualifier","allOperatorQualifier","subqueryOperator","expressionList","functionArgumentList","functionArgumentExpression","typeList","arrayExpression","arrayExpressionList","extractList","extractArgument","unicodeNormalForm","overlayList","positionList","substrList","trimList","inExpression","caseExpression","whenClauseList","whenClause","caseDefault","caseArg","columnReference","indirectionElement","indirection","optionalIndirection","optionalTargetList","targetList","targetElement","qualifiedNameList","databaseName","databaseNameList","schemaName","schemaNameList","indexName","indexNameList","triggerName","constraintName","sequenceName","sequenceNameList","qualifiedName","nameList","name","attributeName","fileName","functionName","aExpressionConst","xconst","bconst","fconst","iconst","sconst","anySconst","optionalUescape","signedIconst","roleName","roleNameList","columnId","tableAlias","typeFunctionName","nonReservedWord","columnLabel","identifier","plsqlIdentifier","unreservedKeyword","columnNameKeyword","typeFunctionNameKeyword","reservedKeyword","builtinFunctionName","plsqlFunction","computeOptions","computeOption","sharp","optionValue","optionalSemi","plsqlBlock","declareSection","declareStart","declareStatements","labelDeclaration","declareStatement","declareStatement2","optionalScrollable","declareCursorQuery","declareCursorArgs","declareCursorArglist","declareCursorArg","declareIsOrFor","declareAliasItem","declareVarname","declareConst","declareDatatype","declareCollate","declareNotNull","declareDefaultValue","declareDefaultKey","assignOperator","procedureSection","proceduralStatement","statementPerform","statementCall","optionalExpressionList","statementAssign","statementGetDiagram","optionalGetDiagramArea","getDiagramList","getDiagramListItem","getDiagramItem","getDiagramTarget","assignVariable","statementIf","statementElsifs","statementElse","statementCase","optionalExpressionUntilWhen","caseWhenList","caseWhen","optionalCaseElse","statementLoop","statementWhile","statementFor","forControl","optionalForUsingExpression","optionalCursorParameters","optionalReverse","optionalByExpression","forVariable","statementForeachA","foreachSlice","statementExit","exitType","statementReturn","optionalReturnResult","statementRaise","optionalStatementRaiseLevel","optionalRaiseList","optionalRaiseUsing","optionalRaiseUsingElement","statementAssert","optionalStatementAssertMessage","loopBody","statementExecSql","statementDynExecute","optionalExecuteUsing","optionalExecuteUsingList","optionalExecuteInto","statementOpen","optionalOpenBoundListItem","statementFetch","intoTarget","optionalCursorFrom","optionalFetchDirection","statementMove","statementClose","statementNull","statementCommit","statementRollback","plsqlOptionalTransactionChain","statementSet","cursorVariable","exceptionSection","procedureExceptions","procedureException","procedureConditions","procedureCondition","optionalBlockLabel","optionalLoopLabel","optionalLabel","optionalExitCondition","anyIdentifier","plsqlUnreservedKeyword","sqlExpression","expressionUntilThen","expressionUntilSemi","expressionUntilRightbracket","expressionUntilLoop","makeExecuteSqlStatement","optionalReturningClauseInto","roleOrAliases"],Xi._serializedATN=[4,1,679,10614,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,2,265,7,265,2,266,7,266,2,267,7,267,2,268,7,268,2,269,7,269,2,270,7,270,2,271,7,271,2,272,7,272,2,273,7,273,2,274,7,274,2,275,7,275,2,276,7,276,2,277,7,277,2,278,7,278,2,279,7,279,2,280,7,280,2,281,7,281,2,282,7,282,2,283,7,283,2,284,7,284,2,285,7,285,2,286,7,286,2,287,7,287,2,288,7,288,2,289,7,289,2,290,7,290,2,291,7,291,2,292,7,292,2,293,7,293,2,294,7,294,2,295,7,295,2,296,7,296,2,297,7,297,2,298,7,298,2,299,7,299,2,300,7,300,2,301,7,301,2,302,7,302,2,303,7,303,2,304,7,304,2,305,7,305,2,306,7,306,2,307,7,307,2,308,7,308,2,309,7,309,2,310,7,310,2,311,7,311,2,312,7,312,2,313,7,313,2,314,7,314,2,315,7,315,2,316,7,316,2,317,7,317,2,318,7,318,2,319,7,319,2,320,7,320,2,321,7,321,2,322,7,322,2,323,7,323,2,324,7,324,2,325,7,325,2,326,7,326,2,327,7,327,2,328,7,328,2,329,7,329,2,330,7,330,2,331,7,331,2,332,7,332,2,333,7,333,2,334,7,334,2,335,7,335,2,336,7,336,2,337,7,337,2,338,7,338,2,339,7,339,2,340,7,340,2,341,7,341,2,342,7,342,2,343,7,343,2,344,7,344,2,345,7,345,2,346,7,346,2,347,7,347,2,348,7,348,2,349,7,349,2,350,7,350,2,351,7,351,2,352,7,352,2,353,7,353,2,354,7,354,2,355,7,355,2,356,7,356,2,357,7,357,2,358,7,358,2,359,7,359,2,360,7,360,2,361,7,361,2,362,7,362,2,363,7,363,2,364,7,364,2,365,7,365,2,366,7,366,2,367,7,367,2,368,7,368,2,369,7,369,2,370,7,370,2,371,7,371,2,372,7,372,2,373,7,373,2,374,7,374,2,375,7,375,2,376,7,376,2,377,7,377,2,378,7,378,2,379,7,379,2,380,7,380,2,381,7,381,2,382,7,382,2,383,7,383,2,384,7,384,2,385,7,385,2,386,7,386,2,387,7,387,2,388,7,388,2,389,7,389,2,390,7,390,2,391,7,391,2,392,7,392,2,393,7,393,2,394,7,394,2,395,7,395,2,396,7,396,2,397,7,397,2,398,7,398,2,399,7,399,2,400,7,400,2,401,7,401,2,402,7,402,2,403,7,403,2,404,7,404,2,405,7,405,2,406,7,406,2,407,7,407,2,408,7,408,2,409,7,409,2,410,7,410,2,411,7,411,2,412,7,412,2,413,7,413,2,414,7,414,2,415,7,415,2,416,7,416,2,417,7,417,2,418,7,418,2,419,7,419,2,420,7,420,2,421,7,421,2,422,7,422,2,423,7,423,2,424,7,424,2,425,7,425,2,426,7,426,2,427,7,427,2,428,7,428,2,429,7,429,2,430,7,430,2,431,7,431,2,432,7,432,2,433,7,433,2,434,7,434,2,435,7,435,2,436,7,436,2,437,7,437,2,438,7,438,2,439,7,439,2,440,7,440,2,441,7,441,2,442,7,442,2,443,7,443,2,444,7,444,2,445,7,445,2,446,7,446,2,447,7,447,2,448,7,448,2,449,7,449,2,450,7,450,2,451,7,451,2,452,7,452,2,453,7,453,2,454,7,454,2,455,7,455,2,456,7,456,2,457,7,457,2,458,7,458,2,459,7,459,2,460,7,460,2,461,7,461,2,462,7,462,2,463,7,463,2,464,7,464,2,465,7,465,2,466,7,466,2,467,7,467,2,468,7,468,2,469,7,469,2,470,7,470,2,471,7,471,2,472,7,472,2,473,7,473,2,474,7,474,2,475,7,475,2,476,7,476,2,477,7,477,2,478,7,478,2,479,7,479,2,480,7,480,2,481,7,481,2,482,7,482,2,483,7,483,2,484,7,484,2,485,7,485,2,486,7,486,2,487,7,487,2,488,7,488,2,489,7,489,2,490,7,490,2,491,7,491,2,492,7,492,2,493,7,493,2,494,7,494,2,495,7,495,2,496,7,496,2,497,7,497,2,498,7,498,2,499,7,499,2,500,7,500,2,501,7,501,2,502,7,502,2,503,7,503,2,504,7,504,2,505,7,505,2,506,7,506,2,507,7,507,2,508,7,508,2,509,7,509,2,510,7,510,2,511,7,511,2,512,7,512,2,513,7,513,2,514,7,514,2,515,7,515,2,516,7,516,2,517,7,517,2,518,7,518,2,519,7,519,2,520,7,520,2,521,7,521,2,522,7,522,2,523,7,523,2,524,7,524,2,525,7,525,2,526,7,526,2,527,7,527,2,528,7,528,2,529,7,529,2,530,7,530,2,531,7,531,2,532,7,532,2,533,7,533,2,534,7,534,2,535,7,535,2,536,7,536,2,537,7,537,2,538,7,538,2,539,7,539,2,540,7,540,2,541,7,541,2,542,7,542,2,543,7,543,2,544,7,544,2,545,7,545,2,546,7,546,2,547,7,547,2,548,7,548,2,549,7,549,2,550,7,550,2,551,7,551,2,552,7,552,2,553,7,553,2,554,7,554,2,555,7,555,2,556,7,556,2,557,7,557,2,558,7,558,2,559,7,559,2,560,7,560,2,561,7,561,2,562,7,562,2,563,7,563,2,564,7,564,2,565,7,565,2,566,7,566,2,567,7,567,2,568,7,568,2,569,7,569,2,570,7,570,2,571,7,571,2,572,7,572,2,573,7,573,2,574,7,574,2,575,7,575,2,576,7,576,2,577,7,577,2,578,7,578,2,579,7,579,2,580,7,580,2,581,7,581,2,582,7,582,2,583,7,583,2,584,7,584,2,585,7,585,2,586,7,586,2,587,7,587,2,588,7,588,2,589,7,589,2,590,7,590,2,591,7,591,2,592,7,592,2,593,7,593,2,594,7,594,2,595,7,595,2,596,7,596,2,597,7,597,2,598,7,598,2,599,7,599,2,600,7,600,2,601,7,601,2,602,7,602,2,603,7,603,2,604,7,604,2,605,7,605,2,606,7,606,2,607,7,607,2,608,7,608,2,609,7,609,2,610,7,610,2,611,7,611,2,612,7,612,2,613,7,613,2,614,7,614,2,615,7,615,2,616,7,616,2,617,7,617,2,618,7,618,2,619,7,619,2,620,7,620,2,621,7,621,2,622,7,622,2,623,7,623,2,624,7,624,2,625,7,625,2,626,7,626,2,627,7,627,2,628,7,628,2,629,7,629,2,630,7,630,2,631,7,631,2,632,7,632,2,633,7,633,2,634,7,634,2,635,7,635,2,636,7,636,2,637,7,637,2,638,7,638,2,639,7,639,2,640,7,640,2,641,7,641,2,642,7,642,2,643,7,643,2,644,7,644,2,645,7,645,2,646,7,646,2,647,7,647,2,648,7,648,2,649,7,649,2,650,7,650,2,651,7,651,2,652,7,652,2,653,7,653,2,654,7,654,2,655,7,655,2,656,7,656,2,657,7,657,2,658,7,658,2,659,7,659,2,660,7,660,2,661,7,661,2,662,7,662,2,663,7,663,2,664,7,664,2,665,7,665,2,666,7,666,2,667,7,667,2,668,7,668,2,669,7,669,2,670,7,670,2,671,7,671,2,672,7,672,2,673,7,673,2,674,7,674,2,675,7,675,2,676,7,676,2,677,7,677,2,678,7,678,2,679,7,679,2,680,7,680,2,681,7,681,2,682,7,682,2,683,7,683,2,684,7,684,2,685,7,685,2,686,7,686,2,687,7,687,2,688,7,688,2,689,7,689,2,690,7,690,2,691,7,691,2,692,7,692,2,693,7,693,2,694,7,694,2,695,7,695,2,696,7,696,2,697,7,697,2,698,7,698,2,699,7,699,2,700,7,700,2,701,7,701,2,702,7,702,2,703,7,703,2,704,7,704,2,705,7,705,2,706,7,706,2,707,7,707,2,708,7,708,2,709,7,709,2,710,7,710,2,711,7,711,2,712,7,712,2,713,7,713,2,714,7,714,2,715,7,715,2,716,7,716,2,717,7,717,2,718,7,718,2,719,7,719,2,720,7,720,2,721,7,721,2,722,7,722,2,723,7,723,2,724,7,724,2,725,7,725,2,726,7,726,2,727,7,727,2,728,7,728,2,729,7,729,2,730,7,730,2,731,7,731,2,732,7,732,2,733,7,733,2,734,7,734,2,735,7,735,2,736,7,736,2,737,7,737,2,738,7,738,2,739,7,739,2,740,7,740,2,741,7,741,2,742,7,742,2,743,7,743,2,744,7,744,2,745,7,745,2,746,7,746,2,747,7,747,2,748,7,748,2,749,7,749,2,750,7,750,2,751,7,751,2,752,7,752,2,753,7,753,1,0,3,0,1510,8,0,1,0,1,0,1,1,1,1,1,2,1,2,3,2,1518,8,2,1,2,1,2,1,2,1,2,3,2,1524,8,2,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,3,3,1648,8,3,1,4,1,4,3,4,1652,8,4,1,5,1,5,1,5,1,6,1,6,3,6,1659,8,6,1,7,5,7,1662,8,7,10,7,12,7,1665,9,7,1,8,5,8,1668,8,8,10,8,12,8,1671,9,8,1,9,1,9,1,9,3,9,1676,8,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,3,9,1692,8,9,1,10,1,10,1,10,1,10,1,10,1,10,3,10,1700,8,10,1,10,1,10,1,10,3,10,1705,8,10,1,11,1,11,1,11,1,11,1,11,1,11,1,12,1,12,1,12,1,12,1,12,1,12,1,13,1,13,1,13,1,13,3,13,1723,8,13,1,14,1,14,1,14,3,14,1728,8,14,1,14,1,14,1,14,1,14,1,15,1,15,1,15,1,15,3,15,1738,8,15,1,15,1,15,1,16,1,16,1,17,1,17,1,17,1,17,1,17,3,17,1749,8,17,1,17,1,17,1,17,1,17,1,17,3,17,1756,8,17,1,17,1,17,1,18,1,18,3,18,1762,8,18,1,19,5,19,1765,8,19,10,19,12,19,1768,9,19,1,20,1,20,1,20,1,20,1,20,1,20,3,20,1776,8,20,1,21,1,21,3,21,1780,8,21,1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,3,22,1792,8,22,1,23,1,23,1,23,1,23,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,3,24,1824,8,24,1,25,1,25,1,25,5,25,1829,8,25,10,25,12,25,1832,9,25,1,26,1,26,1,26,5,26,1837,8,26,10,26,12,26,1840,9,26,1,27,1,27,3,27,1844,8,27,1,28,1,28,1,28,1,28,1,28,3,28,1851,8,28,1,29,1,29,1,29,1,29,3,29,1857,8,29,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,3,30,1874,8,30,1,31,1,31,1,31,3,31,1879,8,31,1,32,1,32,3,32,1883,8,32,1,33,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,3,34,1896,8,34,1,35,1,35,3,35,1900,8,35,1,36,1,36,1,36,3,36,1905,8,36,1,37,1,37,1,37,3,37,1910,8,37,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,3,38,1922,8,38,1,39,1,39,1,39,1,39,1,39,1,40,1,40,3,40,1931,8,40,1,41,1,41,1,42,1,42,1,43,1,43,1,43,1,44,1,44,1,44,1,44,3,44,1944,8,44,1,44,1,44,1,44,3,44,1949,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,1960,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,1971,8,44,1,44,1,44,1,44,3,44,1976,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,1987,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,1998,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,2008,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,2023,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,2035,8,44,1,44,1,44,1,44,3,44,2040,8,44,1,45,1,45,1,45,5,45,2045,8,45,10,45,12,45,2048,9,45,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,3,46,2058,8,46,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,4,48,2207,8,48,11,48,12,48,2208,1,48,1,48,1,48,1,48,1,48,1,48,1,48,3,48,2218,8,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,3,48,2238,8,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,3,48,2305,8,48,1,49,1,49,1,49,1,49,1,49,3,49,2312,8,49,1,50,1,50,1,50,3,50,2317,8,50,1,51,1,51,1,51,3,51,2322,8,51,1,52,1,52,1,52,3,52,2327,8,52,1,53,1,53,1,53,1,53,1,53,1,53,3,53,2335,8,53,1,54,1,54,1,54,1,54,1,55,1,55,1,55,3,55,2344,8,55,1,56,1,56,1,56,5,56,2349,8,56,10,56,12,56,2352,9,56,1,57,1,57,1,57,1,57,1,57,1,57,1,57,3,57,2361,8,57,3,57,2363,8,57,1,58,4,58,2366,8,58,11,58,12,58,2367,1,59,1,59,1,59,1,59,3,59,2374,8,59,1,59,1,59,1,59,1,59,3,59,2380,8,59,3,59,2382,8,59,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,3,60,2410,8,60,1,61,1,61,1,61,1,62,1,62,1,62,5,62,2418,8,62,10,62,12,62,2421,9,62,1,63,1,63,1,63,1,63,1,63,1,64,1,64,1,64,5,64,2431,8,64,10,64,12,64,2434,9,64,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,3,65,2445,8,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,3,65,2459,8,65,1,66,1,66,1,66,3,66,2464,8,66,1,67,1,67,3,67,2468,8,67,1,67,1,67,1,67,1,67,3,67,2474,8,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,3,67,2488,8,67,1,67,1,67,1,67,1,67,3,67,2494,8,67,1,68,1,68,1,69,1,69,1,69,3,69,2501,8,69,1,70,5,70,2504,8,70,10,70,12,70,2507,9,70,1,70,1,70,1,70,1,70,3,70,2513,8,70,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,3,71,2550,8,71,1,72,3,72,2553,8,72,1,72,1,72,1,72,3,72,2558,8,72,1,73,1,73,1,73,5,73,2563,8,73,10,73,12,73,2566,9,73,1,74,1,74,1,74,1,75,1,75,1,75,1,75,1,75,1,75,1,75,5,75,2578,8,75,10,75,12,75,2581,9,75,1,75,1,75,1,75,3,75,2586,8,75,1,76,1,76,1,76,1,76,1,76,1,76,3,76,2594,8,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,3,76,2627,8,76,1,77,1,77,1,77,1,77,1,77,1,77,1,77,1,77,3,77,2637,8,77,1,78,1,78,3,78,2641,8,78,1,79,1,79,1,79,1,79,1,79,3,79,2648,8,79,1,80,1,80,1,80,5,80,2653,8,80,10,80,12,80,2656,9,80,1,81,1,81,1,81,5,81,2661,8,81,10,81,12,81,2664,9,81,1,82,1,82,1,82,3,82,2669,8,82,1,83,1,83,3,83,2673,8,83,1,84,1,84,1,84,1,84,1,84,1,85,1,85,1,85,3,85,2683,8,85,1,85,1,85,1,86,5,86,2688,8,86,10,86,12,86,2691,9,86,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,3,87,2701,8,87,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,3,88,2721,8,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,3,88,2735,8,88,1,88,1,88,1,88,1,88,1,88,1,88,3,88,2743,8,88,1,89,1,89,1,89,3,89,2748,8,89,1,90,1,90,1,90,1,90,1,90,3,90,2755,8,90,1,91,1,91,1,91,1,91,1,92,1,92,5,92,2763,8,92,10,92,12,92,2766,9,92,1,93,1,93,1,94,1,94,1,94,1,94,1,94,3,94,2775,8,94,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,3,95,2795,8,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,3,95,2810,8,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,3,95,2835,8,95,1,96,1,96,1,96,1,96,1,96,3,96,2842,8,96,1,97,1,97,1,97,5,97,2847,8,97,10,97,12,97,2850,9,97,1,98,1,98,1,99,1,99,1,99,1,99,1,99,1,99,3,99,2860,8,99,1,100,1,100,1,100,3,100,2865,8,100,1,101,1,101,1,101,5,101,2870,8,101,10,101,12,101,2873,9,101,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,102,3,102,2883,8,102,1,103,1,103,1,103,1,103,1,103,1,103,3,103,2891,8,103,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,3,104,2902,8,104,1,105,1,105,1,105,1,105,1,106,1,106,1,106,1,106,1,107,1,107,1,107,1,107,1,107,1,107,3,107,2918,8,107,1,108,1,108,1,108,1,108,1,108,1,108,3,108,2926,8,108,1,109,1,109,3,109,2930,8,109,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,111,1,111,1,111,5,111,2942,8,111,10,111,12,111,2945,9,111,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,3,112,2961,8,112,1,113,1,113,1,113,3,113,2966,8,113,1,114,1,114,1,114,1,114,1,114,3,114,2973,8,114,1,115,1,115,1,115,1,115,1,115,1,115,1,115,3,115,2982,8,115,1,115,3,115,2985,8,115,1,116,1,116,1,116,3,116,2990,8,116,1,117,1,117,1,117,1,117,1,117,3,117,2997,8,117,1,118,1,118,1,118,1,118,1,119,1,119,1,119,1,119,1,119,3,119,3008,8,119,1,119,1,119,1,119,1,119,1,119,1,119,1,119,1,120,1,120,1,120,1,120,3,120,3021,8,120,1,120,1,120,1,120,1,120,1,120,1,121,1,121,1,121,1,121,1,121,1,121,3,121,3034,8,121,1,121,1,121,1,121,1,121,1,121,1,122,1,122,1,122,1,122,1,122,1,122,1,122,1,123,1,123,1,123,1,123,3,123,3052,8,123,1,123,3,123,3055,8,123,1,124,1,124,3,124,3059,8,124,1,124,1,124,1,124,1,124,1,124,3,124,3066,8,124,1,124,1,124,1,124,1,124,1,124,1,125,1,125,1,125,1,125,1,125,1,125,1,126,1,126,1,126,1,126,3,126,3083,8,126,1,126,1,126,1,126,1,127,1,127,1,127,1,127,1,127,1,127,3,127,3094,8,127,1,127,1,127,3,127,3098,8,127,1,128,1,128,1,128,1,128,3,128,3104,8,128,1,128,1,128,1,128,1,129,1,129,1,129,1,129,1,129,3,129,3114,8,129,1,130,4,130,3117,8,130,11,130,12,130,3118,1,131,1,131,1,131,1,131,1,131,1,131,1,131,3,131,3128,8,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,3,131,3150,8,131,3,131,3152,8,131,1,132,1,132,1,132,1,132,1,132,1,132,3,132,3160,8,132,1,133,1,133,1,133,5,133,3165,8,133,10,133,12,133,3168,9,133,1,134,1,134,1,134,3,134,3173,8,134,1,134,1,134,1,134,1,134,1,134,1,134,1,134,3,134,3182,8,134,3,134,3184,8,134,1,135,1,135,3,135,3188,8,135,1,136,1,136,1,136,3,136,3193,8,136,1,137,1,137,1,137,1,137,3,137,3199,8,137,1,138,1,138,3,138,3203,8,138,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,140,1,140,1,140,3,140,3216,8,140,1,141,1,141,1,141,1,141,3,141,3222,8,141,1,141,1,141,1,142,1,142,1,142,1,142,1,142,3,142,3231,8,142,1,142,1,142,1,142,5,142,3236,8,142,10,142,12,142,3239,9,142,1,143,1,143,1,143,1,143,1,143,1,143,1,143,3,143,3248,8,143,1,144,1,144,1,144,1,144,1,144,5,144,3255,8,144,10,144,12,144,3258,9,144,1,145,1,145,1,145,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,3,146,3402,8,146,1,147,1,147,1,147,1,147,1,147,1,147,3,147,3410,8,147,1,147,1,147,1,148,1,148,1,148,1,148,1,148,1,148,1,148,1,148,3,148,3422,8,148,1,149,4,149,3425,8,149,11,149,12,149,3426,1,150,1,150,1,150,1,150,1,150,1,150,3,150,3435,8,150,1,150,1,150,1,150,1,150,1,150,1,150,1,150,1,150,1,150,3,150,3446,8,150,1,151,1,151,1,151,1,151,1,151,1,151,3,151,3454,8,151,1,152,1,152,1,152,5,152,3459,8,152,10,152,12,152,3462,9,152,1,153,1,153,1,153,1,153,1,153,1,154,1,154,1,154,5,154,3472,8,154,10,154,12,154,3475,9,154,1,155,1,155,1,155,1,155,1,155,1,155,1,155,3,155,3484,8,155,1,156,1,156,1,156,1,157,1,157,1,158,1,158,1,159,1,159,1,159,1,159,1,159,3,159,3498,8,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,3,159,3514,8,159,1,159,1,159,1,159,1,159,1,159,1,159,3,159,3522,8,159,1,160,1,160,1,160,3,160,3527,8,160,1,161,1,161,1,161,3,161,3532,8,161,1,162,1,162,1,162,1,162,1,162,1,162,3,162,3540,8,162,3,162,3542,8,162,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,3,163,3600,8,163,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,165,1,165,1,165,3,165,3617,8,165,1,166,1,166,1,166,1,166,1,166,1,166,3,166,3625,8,166,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,3,167,3648,8,167,1,168,1,168,3,168,3652,8,168,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,3,169,3672,8,169,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,173,1,173,1,173,1,173,1,173,1,173,3,173,3709,8,173,1,174,1,174,1,174,1,174,1,174,1,174,1,174,3,174,3718,8,174,1,175,1,175,1,175,3,175,3723,8,175,1,176,1,176,1,176,3,176,3728,8,176,1,177,1,177,1,177,3,177,3733,8,177,1,178,1,178,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,180,1,180,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,3,181,3786,8,181,1,182,1,182,1,182,1,182,3,182,3792,8,182,1,183,1,183,1,183,5,183,3797,8,183,10,183,12,183,3800,9,183,1,184,1,184,1,184,1,184,1,184,1,184,1,184,3,184,3809,8,184,1,185,1,185,1,185,3,185,3814,8,185,1,186,4,186,3817,8,186,11,186,12,186,3818,1,187,1,187,1,187,1,187,1,187,1,188,1,188,1,189,1,189,1,190,1,190,1,191,1,191,3,191,3834,8,191,1,191,1,191,3,191,3838,8,191,1,192,1,192,1,193,1,193,1,193,1,193,1,193,1,193,3,193,3848,8,193,1,194,1,194,1,195,1,195,3,195,3854,8,195,1,195,1,195,5,195,3858,8,195,10,195,12,195,3861,9,195,1,196,1,196,1,196,1,196,3,196,3867,8,196,1,197,1,197,1,197,3,197,3872,8,197,1,198,5,198,3875,8,198,10,198,12,198,3878,9,198,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,3,199,3891,8,199,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,3,200,3919,8,200,1,201,1,201,1,201,5,201,3924,8,201,10,201,12,201,3927,9,201,1,202,1,202,1,202,1,202,1,202,1,202,1,203,1,203,1,203,5,203,3938,8,203,10,203,12,203,3941,9,203,1,204,1,204,1,204,1,204,1,204,1,204,1,205,1,205,1,205,1,205,1,205,1,205,3,205,3955,8,205,1,206,1,206,1,206,1,206,1,206,1,206,1,206,1,206,1,206,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,3,207,4007,8,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,3,207,4074,8,207,1,208,1,208,1,208,1,208,5,208,4080,8,208,10,208,12,208,4083,9,208,1,208,1,208,1,209,1,209,1,209,3,209,4090,8,209,1,210,1,210,1,210,1,210,1,210,1,210,3,210,4098,8,210,1,211,1,211,1,211,1,211,5,211,4104,8,211,10,211,12,211,4107,9,211,1,211,1,211,1,212,1,212,1,212,1,212,1,213,1,213,1,213,5,213,4118,8,213,10,213,12,213,4121,9,213,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,3,214,4160,8,214,1,215,1,215,1,215,1,215,3,215,4166,8,215,1,216,1,216,1,216,1,216,1,216,3,216,4173,8,216,1,216,1,216,1,216,1,216,1,216,1,216,1,216,1,216,1,216,1,217,1,217,1,217,5,217,4187,8,217,10,217,12,217,4190,9,217,1,218,1,218,1,218,1,218,1,218,3,218,4197,8,218,1,218,1,218,1,218,1,218,1,218,3,218,4204,8,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,3,218,4219,8,218,1,219,1,219,1,219,3,219,4224,8,219,1,220,1,220,1,220,1,220,1,220,1,220,1,220,3,220,4233,8,220,1,221,1,221,1,221,1,221,1,221,1,221,1,221,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,3,222,4260,8,222,1,223,1,223,1,223,5,223,4265,8,223,10,223,12,223,4268,9,223,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,3,224,4282,8,224,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,3,225,4302,8,225,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,3,226,4322,8,226,1,227,1,227,1,227,1,227,1,227,1,227,1,228,1,228,1,228,1,228,1,228,1,228,1,228,1,229,1,229,1,229,1,229,3,229,4341,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4350,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4359,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4368,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4377,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4386,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4397,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4442,8,229,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,3,230,4465,8,230,1,231,1,231,1,231,3,231,4470,8,231,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,3,232,4485,8,232,1,233,1,233,1,234,1,234,1,234,5,234,4492,8,234,10,234,12,234,4495,9,234,1,235,1,235,3,235,4499,8,235,1,236,1,236,4,236,4503,8,236,11,236,12,236,4504,1,237,1,237,1,237,5,237,4510,8,237,10,237,12,237,4513,9,237,1,238,1,238,1,238,1,238,1,238,1,238,1,239,1,239,1,239,1,239,1,239,3,239,4526,8,239,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,3,240,4625,8,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,3,240,4712,8,240,1,241,1,241,3,241,4716,8,241,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,3,242,4854,8,242,1,243,1,243,1,243,3,243,4859,8,243,1,244,1,244,3,244,4863,8,244,1,245,1,245,1,245,1,245,3,245,4869,8,245,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,4937,8,246,1,247,1,247,1,248,1,248,3,248,4943,8,248,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,3,250,4972,8,250,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,3,251,4989,8,251,1,252,1,252,1,252,5,252,4994,8,252,10,252,12,252,4997,9,252,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,3,253,5008,8,253,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,3,254,5048,8,254,1,255,1,255,1,255,5,255,5053,8,255,10,255,12,255,5056,9,255,1,256,1,256,1,256,3,256,5061,8,256,1,257,1,257,1,257,1,257,3,257,5067,8,257,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,3,259,5093,8,259,1,260,1,260,1,260,1,260,3,260,5099,8,260,1,261,1,261,1,261,1,261,3,261,5105,8,261,1,262,1,262,1,262,1,262,5,262,5111,8,262,10,262,12,262,5114,9,262,1,262,1,262,1,263,1,263,1,263,1,263,1,263,1,263,1,263,3,263,5125,8,263,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,3,264,5154,8,264,1,265,1,265,1,266,1,266,3,266,5160,8,266,1,266,1,266,3,266,5164,8,266,1,266,3,266,5167,8,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,3,266,5182,8,266,1,266,1,266,3,266,5186,8,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,3,266,5203,8,266,1,267,1,267,1,267,3,267,5208,8,267,1,268,1,268,1,268,5,268,5213,8,268,10,268,12,268,5216,9,268,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,3,269,5229,8,269,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,3,270,5242,8,270,1,271,1,271,1,271,1,271,1,271,5,271,5249,8,271,10,271,12,271,5252,9,271,1,271,1,271,1,271,3,271,5257,8,271,1,272,1,272,1,272,3,272,5262,8,272,1,273,1,273,3,273,5266,8,273,1,274,1,274,1,274,3,274,5271,8,274,1,275,1,275,1,275,1,275,1,275,3,275,5278,8,275,1,276,1,276,1,276,1,276,1,276,1,276,3,276,5286,8,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,3,276,5296,8,276,3,276,5298,8,276,1,276,1,276,1,277,1,277,1,277,3,277,5305,8,277,1,278,1,278,1,278,5,278,5310,8,278,10,278,12,278,5313,9,278,1,279,1,279,1,279,5,279,5318,8,279,10,279,12,279,5321,9,279,1,280,1,280,1,280,3,280,5326,8,280,1,280,1,280,1,280,1,280,1,280,3,280,5333,8,280,3,280,5335,8,280,1,281,1,281,1,281,5,281,5340,8,281,10,281,12,281,5343,9,281,1,282,1,282,1,282,3,282,5348,8,282,1,283,1,283,3,283,5352,8,283,1,283,1,283,1,283,1,283,3,283,5358,8,283,1,283,1,283,1,283,3,283,5363,8,283,1,284,1,284,3,284,5367,8,284,1,284,1,284,1,284,3,284,5372,8,284,1,285,1,285,1,285,1,285,3,285,5378,8,285,1,286,1,286,1,287,1,287,3,287,5384,8,287,1,287,1,287,1,287,1,287,3,287,5390,8,287,1,287,1,287,1,287,1,287,3,287,5396,8,287,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,3,288,5409,8,288,1,288,1,288,1,289,1,289,1,289,5,289,5416,8,289,10,289,12,289,5419,9,289,1,290,1,290,1,290,1,291,1,291,1,291,5,291,5427,8,291,10,291,12,291,5430,9,291,1,292,4,292,5433,8,292,11,292,12,292,5434,1,292,1,292,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,3,293,5474,8,293,1,294,1,294,1,294,1,294,1,294,1,294,1,294,1,294,3,294,5484,8,294,1,295,1,295,1,295,1,295,1,295,3,295,5491,8,295,1,296,1,296,1,296,1,296,1,296,1,296,1,296,5,296,5500,8,296,10,296,12,296,5503,9,296,1,297,1,297,1,297,3,297,5508,8,297,1,298,1,298,1,298,1,299,1,299,1,299,5,299,5516,8,299,10,299,12,299,5519,9,299,1,300,1,300,1,300,1,300,4,300,5525,8,300,11,300,12,300,5526,1,300,3,300,5530,8,300,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,3,301,5568,8,301,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,3,302,5582,8,302,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,3,303,5596,8,303,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,3,304,5620,8,304,1,305,1,305,1,305,5,305,5625,8,305,10,305,12,305,5628,9,305,1,305,1,305,1,306,1,306,1,306,5,306,5635,8,306,10,306,12,306,5638,9,306,1,307,1,307,1,307,1,308,1,308,1,308,1,309,4,309,5647,8,309,11,309,12,309,5648,1,310,1,310,1,310,3,310,5654,8,310,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,3,311,5690,8,311,1,312,1,312,1,312,1,312,1,312,3,312,5697,8,312,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,314,1,314,1,314,3,314,5712,8,314,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,3,316,5759,8,316,1,317,1,317,1,317,1,317,1,317,1,317,1,317,1,317,1,317,1,318,1,318,1,318,1,318,1,318,3,318,5775,8,318,1,318,1,318,3,318,5779,8,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,3,318,5788,8,318,1,318,1,318,3,318,5792,8,318,1,318,1,318,1,318,1,318,1,318,1,318,3,318,5800,8,318,1,318,1,318,3,318,5804,8,318,1,318,1,318,1,318,1,318,1,318,1,318,3,318,5812,8,318,1,318,1,318,3,318,5816,8,318,1,318,1,318,1,318,1,318,1,318,1,318,3,318,5824,8,318,1,318,1,318,3,318,5828,8,318,1,318,3,318,5831,8,318,1,319,1,319,1,320,1,320,1,320,5,320,5838,8,320,10,320,12,320,5841,9,320,1,321,1,321,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,322,3,322,5857,8,322,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,3,323,6029,8,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,3,323,6074,8,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,3,323,6165,8,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,3,323,6296,8,323,1,324,1,324,3,324,6300,8,324,1,325,1,325,1,325,3,325,6305,8,325,1,326,1,326,1,326,1,326,3,326,6311,8,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,3,326,6322,8,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,3,326,6333,8,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,3,326,6346,8,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,3,326,6358,8,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,3,326,6369,8,326,1,326,1,326,1,326,1,326,1,326,3,326,6376,8,326,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,3,327,6524,8,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,3,327,6590,8,327,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,329,1,329,1,329,5,329,6603,8,329,10,329,12,329,6606,9,329,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,3,330,6616,8,330,1,331,1,331,1,331,1,331,1,331,3,331,6623,8,331,1,332,1,332,1,332,1,332,1,332,1,332,1,332,1,332,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,3,333,6816,8,333,1,334,1,334,1,334,1,334,1,334,1,334,1,335,1,335,3,335,6826,8,335,1,336,1,336,1,336,1,336,1,336,1,336,3,336,6834,8,336,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,3,337,6863,8,337,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,339,1,339,1,339,5,339,6877,8,339,10,339,12,339,6880,9,339,1,340,1,340,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,3,341,6921,8,341,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,3,342,6935,8,342,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,344,1,344,1,344,1,344,1,344,1,344,3,344,6957,8,344,1,345,1,345,1,345,5,345,6962,8,345,10,345,12,345,6965,9,345,1,346,1,346,1,346,1,346,1,346,3,346,6972,8,346,1,347,1,347,3,347,6976,8,347,1,348,1,348,1,349,1,349,1,349,3,349,6983,8,349,1,350,1,350,1,350,1,350,1,351,1,351,1,351,3,351,6992,8,351,1,352,1,352,1,352,1,353,1,353,1,353,1,353,3,353,7001,8,353,1,354,1,354,1,354,1,354,1,354,1,354,1,354,3,354,7010,8,354,1,354,1,354,1,354,3,354,7015,8,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,3,354,7056,8,354,1,355,1,355,1,355,3,355,7061,8,355,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,3,356,7073,8,356,1,357,1,357,3,357,7077,8,357,1,357,5,357,7080,8,357,10,357,12,357,7083,9,357,1,358,1,358,3,358,7087,8,358,1,358,1,358,3,358,7091,8,358,1,359,1,359,1,359,3,359,7096,8,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,3,359,7112,8,359,1,359,1,359,1,359,1,359,1,360,1,360,3,360,7120,8,360,1,360,1,360,1,360,3,360,7125,8,360,1,361,1,361,1,361,1,362,1,362,1,362,1,362,1,362,1,362,1,363,4,363,7137,8,363,11,363,12,363,7138,1,363,3,363,7142,8,363,1,364,1,364,3,364,7146,8,364,1,364,1,364,1,364,3,364,7151,8,364,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,3,365,7161,8,365,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,3,366,7172,8,366,1,367,1,367,1,367,1,367,1,367,1,368,1,368,1,368,1,368,3,368,7183,8,368,1,368,1,368,1,368,1,368,1,368,1,368,5,368,7191,8,368,10,368,12,368,7194,9,368,1,368,1,368,3,368,7198,8,368,1,369,1,369,1,369,1,369,1,369,1,369,1,370,1,370,1,370,1,370,1,370,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,372,1,372,1,372,1,372,1,372,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,3,373,7236,8,373,1,373,1,373,1,373,1,373,1,373,1,373,3,373,7244,8,373,1,374,1,374,3,374,7248,8,374,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,3,376,7329,8,376,1,377,1,377,3,377,7333,8,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,3,378,7357,8,378,1,379,1,379,1,379,3,379,7362,8,379,1,380,1,380,3,380,7366,8,380,1,380,3,380,7369,8,380,1,380,1,380,3,380,7373,8,380,1,380,1,380,1,380,1,380,1,380,1,380,1,380,1,380,3,380,7383,8,380,1,381,1,381,1,381,1,381,1,381,1,381,1,381,1,381,1,381,1,381,3,381,7395,8,381,1,382,1,382,1,382,5,382,7400,8,382,10,382,12,382,7403,9,382,1,383,1,383,1,384,1,384,1,384,1,385,1,385,3,385,7412,8,385,1,386,1,386,1,386,3,386,7417,8,386,1,387,1,387,3,387,7421,8,387,1,388,1,388,1,388,1,388,1,388,3,388,7428,8,388,1,389,1,389,1,389,1,390,1,390,1,390,5,390,7436,8,390,10,390,12,390,7439,9,390,1,390,3,390,7442,8,390,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,5,391,7459,8,391,10,391,12,391,7462,9,391,1,391,1,391,1,391,3,391,7467,8,391,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,3,392,7478,8,392,1,393,1,393,1,393,1,394,1,394,3,394,7485,8,394,1,395,1,395,1,395,3,395,7490,8,395,1,396,1,396,1,396,1,396,1,396,1,396,1,397,1,397,1,397,1,397,1,397,3,397,7503,8,397,1,398,1,398,1,398,1,398,3,398,7509,8,398,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,3,399,7538,8,399,1,400,1,400,1,400,1,400,1,400,3,400,7545,8,400,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,401,3,401,7557,8,401,1,402,3,402,7560,8,402,1,402,1,402,1,402,1,402,1,402,1,402,1,402,1,403,1,403,1,403,3,403,7572,8,403,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,3,404,7587,8,404,1,404,1,404,1,404,1,404,3,404,7593,8,404,1,405,1,405,1,406,1,406,1,406,5,406,7600,8,406,10,406,12,406,7603,9,406,1,407,1,407,1,407,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,408,3,408,7618,8,408,1,408,3,408,7621,8,408,1,409,1,409,1,409,1,409,1,409,1,409,1,409,1,409,1,409,3,409,7632,8,409,1,410,1,410,1,410,3,410,7637,8,410,1,411,1,411,3,411,7641,8,411,1,411,1,411,3,411,7645,8,411,1,411,1,411,1,411,3,411,7650,8,411,1,411,3,411,7653,8,411,1,411,1,411,1,411,1,411,3,411,7659,8,411,1,411,1,411,3,411,7663,8,411,3,411,7665,8,411,1,411,3,411,7668,8,411,1,412,1,412,1,412,1,412,1,412,3,412,7675,8,412,1,412,3,412,7678,8,412,1,412,1,412,1,412,1,412,1,412,3,412,7685,8,412,1,412,1,412,1,413,1,413,1,413,1,413,3,413,7693,8,413,1,413,3,413,7696,8,413,1,413,1,413,1,413,1,413,1,414,1,414,1,414,3,414,7705,8,414,1,414,1,414,1,415,3,415,7710,8,415,1,415,1,415,1,415,1,415,1,415,1,415,1,415,1,416,1,416,1,416,3,416,7722,8,416,1,417,1,417,1,417,1,417,1,417,1,417,1,418,1,418,1,418,1,418,1,418,3,418,7735,8,418,1,419,1,419,1,419,1,419,1,419,1,419,1,419,1,419,1,419,3,419,7746,8,419,1,419,3,419,7749,8,419,1,420,1,420,3,420,7753,8,420,1,421,1,421,1,421,1,421,3,421,7759,8,421,1,422,3,422,7762,8,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,423,1,423,1,423,5,423,7775,8,423,10,423,12,423,7778,9,423,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,5,424,7788,8,424,10,424,12,424,7791,9,424,1,424,1,424,1,424,1,424,3,424,7797,8,424,1,425,1,425,1,425,1,426,1,426,1,426,1,426,1,426,1,426,1,426,5,426,7809,8,426,10,426,12,426,7812,9,426,1,426,1,426,1,426,1,426,1,426,1,427,1,427,1,428,1,428,1,428,1,428,1,428,3,428,7826,8,428,1,429,1,429,3,429,7830,8,429,1,430,1,430,1,430,1,430,1,430,1,430,1,430,1,430,3,430,7840,8,430,1,431,1,431,1,431,1,431,1,431,1,431,1,431,3,431,7849,8,431,3,431,7851,8,431,1,431,1,431,1,431,1,431,1,431,1,431,1,431,1,431,3,431,7861,8,431,3,431,7863,8,431,3,431,7865,8,431,1,432,1,432,1,432,1,432,1,432,5,432,7872,8,432,10,432,12,432,7875,9,432,1,433,1,433,1,433,1,433,1,433,5,433,7882,8,433,10,433,12,433,7885,9,433,1,434,1,434,3,434,7889,8,434,1,434,1,434,1,434,3,434,7894,8,434,1,434,1,434,1,434,3,434,7899,8,434,1,434,3,434,7902,8,434,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,3,435,7916,8,435,1,436,1,436,3,436,7920,8,436,1,436,1,436,1,436,5,436,7925,8,436,10,436,12,436,7928,9,436,1,437,1,437,1,437,1,437,1,437,1,437,1,437,1,437,1,438,1,438,1,438,1,438,3,438,7942,8,438,1,439,1,439,3,439,7946,8,439,1,439,1,439,3,439,7950,8,439,1,440,3,440,7953,8,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,3,440,7966,8,440,1,441,1,441,3,441,7970,8,441,1,442,1,442,1,442,3,442,7975,8,442,1,443,1,443,1,443,1,443,1,443,1,443,3,443,7983,8,443,1,444,1,444,1,445,1,445,3,445,7989,8,445,1,446,1,446,1,446,1,446,1,447,1,447,1,447,5,447,7998,8,447,10,447,12,447,8001,9,447,1,448,1,448,1,448,1,448,3,448,8007,8,448,1,448,1,448,1,449,1,449,3,449,8013,8,449,1,449,1,449,3,449,8017,8,449,3,449,8019,8,449,1,450,1,450,3,450,8023,8,450,1,451,1,451,1,451,1,451,3,451,8029,8,451,1,451,1,451,1,451,1,451,1,451,1,451,1,451,3,451,8038,8,451,1,451,1,451,1,451,1,451,3,451,8044,8,451,3,451,8046,8,451,3,451,8048,8,451,1,452,1,452,1,452,1,452,1,452,3,452,8055,8,452,1,453,1,453,3,453,8059,8,453,1,454,1,454,1,455,1,455,1,455,1,455,1,455,3,455,8068,8,455,1,456,1,456,3,456,8072,8,456,1,457,1,457,1,458,1,458,1,459,1,459,1,459,1,459,3,459,8082,8,459,1,460,1,460,1,460,5,460,8087,8,460,10,460,12,460,8090,9,460,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,3,461,8111,8,461,1,462,1,462,1,462,3,462,8116,8,462,1,463,4,463,8119,8,463,11,463,12,463,8120,1,463,1,463,1,463,3,463,8126,8,463,1,464,1,464,1,464,1,464,1,465,1,465,1,465,3,465,8135,8,465,1,465,1,465,3,465,8139,8,465,1,465,3,465,8142,8,465,1,466,1,466,1,466,3,466,8147,8,466,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,467,5,467,8158,8,467,10,467,12,467,8161,9,467,1,468,1,468,1,468,3,468,8166,8,468,1,469,1,469,1,469,1,469,5,469,8172,8,469,10,469,12,469,8175,9,469,3,469,8177,8,469,1,470,1,470,1,470,4,470,8182,8,470,11,470,12,470,8183,1,471,1,471,1,471,3,471,8189,8,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,3,471,8210,8,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,3,471,8219,8,471,1,471,1,471,1,471,3,471,8224,8,471,1,471,1,471,1,471,1,471,3,471,8230,8,471,1,471,1,471,1,471,3,471,8235,8,471,1,471,1,471,1,471,1,471,1,471,3,471,8242,8,471,1,471,1,471,1,471,3,471,8247,8,471,1,471,1,471,1,471,1,471,5,471,8253,8,471,10,471,12,471,8256,9,471,1,472,3,472,8259,8,472,1,472,1,472,1,472,1,472,1,472,3,472,8266,8,472,1,473,1,473,3,473,8270,8,473,1,474,3,474,8273,8,474,1,474,1,474,1,474,1,474,1,474,3,474,8280,8,474,1,475,1,475,1,475,3,475,8285,8,475,1,475,3,475,8288,8,475,1,475,1,475,1,475,1,475,1,475,3,475,8295,8,475,1,476,1,476,3,476,8299,8,476,1,477,1,477,1,477,1,477,1,477,1,477,1,477,3,477,8308,8,477,1,478,1,478,1,479,1,479,3,479,8314,8,479,1,479,1,479,1,479,1,479,1,479,1,479,3,479,8322,8,479,3,479,8324,8,479,1,480,1,480,1,480,5,480,8329,8,480,10,480,12,480,8332,9,480,1,481,1,481,3,481,8336,8,481,1,481,3,481,8339,8,481,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,5,483,8360,8,483,10,483,12,483,8363,9,483,1,483,1,483,1,483,3,483,8368,8,483,1,484,1,484,1,484,1,485,1,485,1,485,1,485,1,485,1,485,3,485,8379,8,485,1,486,1,486,1,486,3,486,8384,8,486,1,487,1,487,1,487,3,487,8389,8,487,1,488,1,488,1,488,1,488,1,488,3,488,8396,8,488,1,488,3,488,8399,8,488,1,489,1,489,3,489,8403,8,489,1,490,1,490,1,490,5,490,8408,8,490,10,490,12,490,8411,9,490,1,491,1,491,1,491,1,491,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,5,492,8425,8,492,10,492,12,492,8428,9,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,5,492,8441,8,492,10,492,12,492,8444,9,492,3,492,8446,8,492,1,492,1,492,1,493,1,493,1,493,3,493,8453,8,493,1,493,1,493,3,493,8457,8,493,1,494,4,494,8460,8,494,11,494,12,494,8461,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,3,495,8472,8,495,1,496,1,496,1,496,5,496,8477,8,496,10,496,12,496,8480,9,496,1,497,1,497,1,497,1,497,1,497,1,497,3,497,8488,8,497,1,498,3,498,8491,8,498,1,498,1,498,1,498,3,498,8496,8,498,1,498,5,498,8499,8,498,10,498,12,498,8502,9,498,1,498,1,498,1,498,1,498,1,498,3,498,8509,8,498,3,498,8511,8,498,1,498,1,498,1,498,1,498,3,498,8517,8,498,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,499,3,499,8530,8,499,3,499,8532,8,499,1,500,1,500,1,500,1,500,3,500,8538,8,500,1,501,1,501,1,501,1,501,3,501,8544,8,501,1,501,3,501,8547,8,501,1,501,1,501,1,502,1,502,1,502,1,502,1,502,3,502,8556,8,502,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,3,503,8574,8,503,1,504,1,504,1,504,1,504,1,504,3,504,8581,8,504,1,505,1,505,3,505,8585,8,505,1,506,1,506,3,506,8589,8,506,1,507,1,507,1,507,1,507,1,507,1,507,1,508,1,508,1,508,1,509,1,509,1,509,1,509,1,509,3,509,8605,8,509,1,510,1,510,1,510,1,510,1,510,3,510,8612,8,510,1,511,1,511,1,511,1,511,1,511,1,511,3,511,8620,8,511,1,512,1,512,3,512,8624,8,512,1,513,1,513,1,513,1,513,1,513,3,513,8631,8,513,1,513,1,513,1,514,1,514,1,515,1,515,1,515,1,515,1,515,1,515,1,515,3,515,8644,8,515,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,3,516,8660,8,516,1,516,1,516,1,516,1,516,3,516,8666,8,516,1,516,1,516,1,516,1,516,3,516,8672,8,516,1,517,1,517,1,517,1,517,1,517,3,517,8679,8,517,1,518,1,518,1,518,3,518,8684,8,518,1,519,1,519,1,520,1,520,3,520,8690,8,520,1,521,1,521,1,521,5,521,8695,8,521,10,521,12,521,8698,9,521,1,522,1,522,1,522,5,522,8703,8,522,10,522,12,522,8706,9,522,1,523,1,523,1,523,5,523,8711,8,523,10,523,12,523,8714,9,523,1,524,1,524,3,524,8718,8,524,1,524,1,524,3,524,8722,8,524,1,524,1,524,1,524,1,524,3,524,8728,8,524,1,525,1,525,3,525,8732,8,525,1,525,1,525,3,525,8736,8,525,1,526,3,526,8739,8,526,1,526,1,526,1,527,1,527,3,527,8745,8,527,1,528,1,528,1,528,3,528,8750,8,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,3,528,8766,8,528,1,528,3,528,8769,8,528,3,528,8771,8,528,1,529,1,529,1,529,1,529,1,529,1,529,1,529,1,529,1,529,1,529,3,529,8783,8,529,3,529,8785,8,529,1,530,1,530,3,530,8789,8,530,1,530,1,530,1,530,1,530,3,530,8795,8,530,1,530,1,530,1,530,3,530,8800,8,530,1,531,1,531,1,531,1,531,5,531,8806,8,531,10,531,12,531,8809,9,531,1,532,3,532,8812,8,532,1,532,1,532,1,533,1,533,1,533,5,533,8819,8,533,10,533,12,533,8822,9,533,1,534,1,534,1,534,5,534,8827,8,534,10,534,12,534,8830,9,534,1,535,1,535,1,535,3,535,8835,8,535,1,536,3,536,8838,8,536,1,536,1,536,1,537,1,537,1,537,1,537,1,537,3,537,8847,8,537,1,538,1,538,1,538,3,538,8852,8,538,1,539,1,539,1,539,5,539,8857,8,539,10,539,12,539,8860,9,539,1,540,1,540,1,540,1,540,1,540,1,540,1,540,3,540,8869,8,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,3,540,8895,8,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,3,540,8906,8,540,5,540,8908,8,540,10,540,12,540,8911,9,540,1,541,1,541,1,541,1,541,1,541,3,541,8918,8,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,3,541,8941,8,541,1,541,1,541,1,541,1,541,1,541,1,541,3,541,8949,8,541,1,542,1,542,1,543,1,543,1,543,1,543,1,543,1,543,3,543,8959,8,543,1,543,1,543,1,543,1,543,1,543,1,543,1,543,1,543,1,543,1,543,1,543,1,543,3,543,8973,8,543,1,543,1,543,1,544,1,544,1,544,1,544,1,544,1,544,3,544,8983,8,544,1,545,1,545,3,545,8987,8,545,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,3,546,9001,8,546,1,546,1,546,1,546,1,546,1,546,3,546,9008,8,546,1,546,1,546,1,546,1,546,1,546,3,546,9015,8,546,1,546,1,546,1,546,1,546,1,546,3,546,9022,8,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,3,546,9047,8,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,3,546,9076,8,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,3,546,9115,8,546,3,546,9117,8,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,3,546,9145,8,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,3,546,9166,8,546,1,547,1,547,1,547,1,547,1,547,3,547,9173,8,547,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,3,548,9186,8,548,1,549,1,549,1,549,1,549,1,549,1,550,1,550,1,550,5,550,9196,8,550,10,550,12,550,9199,9,550,1,551,1,551,1,551,3,551,9204,8,551,1,552,1,552,1,553,1,553,1,553,1,553,1,553,3,553,9213,8,553,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,3,554,9230,8,554,1,555,1,555,1,555,1,556,1,556,1,556,1,556,1,556,1,556,1,556,3,556,9242,8,556,1,557,1,557,1,557,1,557,1,557,1,557,1,557,3,557,9251,8,557,1,558,1,558,1,558,3,558,9256,8,558,1,559,1,559,1,559,5,559,9261,8,559,10,559,12,559,9264,9,559,1,560,1,560,1,560,1,560,1,561,1,561,1,561,3,561,9273,8,561,1,561,3,561,9276,8,561,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,563,1,563,3,563,9287,8,563,1,564,1,564,1,564,1,564,3,564,9293,8,564,1,565,1,565,1,565,1,565,1,565,1,565,1,565,1,565,1,565,1,565,1,565,1,565,1,565,3,565,9308,8,565,1,566,1,566,1,566,1,566,1,566,1,566,3,566,9316,8,566,1,567,1,567,1,567,1,567,1,567,1,567,1,567,3,567,9325,8,567,1,568,1,568,1,568,1,568,1,568,1,568,1,568,3,568,9334,8,568,1,568,3,568,9337,8,568,1,569,1,569,1,569,3,569,9342,8,569,1,569,1,569,1,569,1,569,1,569,1,569,1,569,3,569,9351,8,569,1,570,1,570,1,570,3,570,9356,8,570,1,570,1,570,1,571,1,571,1,571,1,571,1,571,1,571,1,572,1,572,1,573,1,573,3,573,9370,8,573,1,574,1,574,1,575,1,575,1,575,1,575,1,575,1,575,3,575,9380,8,575,1,576,1,576,1,576,1,576,1,576,1,576,3,576,9388,8,576,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,3,577,9402,8,577,1,578,1,578,1,578,5,578,9407,8,578,10,578,12,578,9410,9,578,1,579,1,579,1,579,5,579,9415,8,579,10,579,12,579,9418,9,579,1,580,1,580,1,580,1,580,1,580,3,580,9425,8,580,1,581,1,581,1,581,5,581,9430,8,581,10,581,12,581,9433,9,581,1,582,1,582,1,582,3,582,9438,8,582,1,582,1,582,1,583,1,583,1,583,5,583,9445,8,583,10,583,12,583,9448,9,583,1,584,1,584,1,584,1,584,1,584,3,584,9455,8,584,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,3,585,9465,8,585,1,586,1,586,1,587,1,587,1,587,1,587,1,587,1,587,1,587,3,587,9476,8,587,1,588,1,588,1,588,1,588,1,588,3,588,9483,8,588,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,3,589,9512,8,589,1,590,1,590,1,590,1,590,1,590,1,590,1,590,3,590,9521,8,590,1,591,1,591,1,591,1,591,1,591,3,591,9528,8,591,1,592,1,592,1,592,1,592,1,592,1,592,1,593,4,593,9537,8,593,11,593,12,593,9538,1,594,1,594,1,594,1,594,1,594,1,595,1,595,1,595,3,595,9549,8,595,1,596,1,596,3,596,9553,8,596,1,597,1,597,3,597,9557,8,597,1,598,1,598,1,598,3,598,9562,8,598,1,598,1,598,1,598,3,598,9567,8,598,1,598,1,598,3,598,9571,8,598,3,598,9573,8,598,1,598,3,598,9576,8,598,1,599,4,599,9579,8,599,11,599,12,599,9580,1,600,5,600,9584,8,600,10,600,12,600,9587,9,600,1,601,1,601,3,601,9591,8,601,1,602,1,602,1,602,5,602,9596,8,602,10,602,12,602,9599,9,602,1,603,1,603,1,603,1,603,1,603,1,603,3,603,9607,8,603,3,603,9609,8,603,1,604,1,604,1,604,5,604,9614,8,604,10,604,12,604,9617,9,604,1,605,1,605,1,606,1,606,1,606,5,606,9624,8,606,10,606,12,606,9627,9,606,1,607,1,607,1,608,1,608,1,608,5,608,9634,8,608,10,608,12,608,9637,9,608,1,609,1,609,1,610,1,610,1,610,5,610,9644,8,610,10,610,12,610,9647,9,610,1,611,1,611,1,612,1,612,1,613,1,613,1,614,1,614,1,614,5,614,9658,8,614,10,614,12,614,9661,9,614,1,615,1,615,3,615,9665,8,615,1,616,1,616,1,616,5,616,9670,8,616,10,616,12,616,9673,9,616,1,617,1,617,1,618,1,618,1,619,1,619,1,620,1,620,1,620,1,620,1,620,1,620,1,620,3,620,9688,8,620,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,3,621,9703,8,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,3,621,9717,8,621,1,621,1,621,1,621,3,621,9722,8,621,1,622,1,622,1,623,1,623,1,624,1,624,1,625,1,625,1,626,1,626,1,626,1,627,1,627,1,627,1,627,5,627,9739,8,627,10,627,12,627,9742,9,627,1,627,1,627,3,627,9746,8,627,1,628,1,628,1,628,3,628,9751,8,628,1,629,1,629,1,629,1,629,1,629,3,629,9758,8,629,1,630,1,630,1,630,3,630,9763,8,630,1,631,1,631,1,631,5,631,9768,8,631,10,631,12,631,9771,9,631,1,632,1,632,1,632,1,632,1,632,1,632,3,632,9779,8,632,1,633,1,633,1,633,1,633,3,633,9785,8,633,1,634,1,634,1,634,1,634,3,634,9791,8,634,1,635,1,635,1,635,1,635,3,635,9797,8,635,1,636,1,636,1,636,1,636,1,636,1,636,3,636,9805,8,636,1,637,1,637,1,637,1,637,1,637,1,637,1,637,3,637,9814,8,637,1,638,1,638,1,639,1,639,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,3,640,9872,8,640,1,641,1,641,1,642,1,642,1,643,1,643,1,644,1,644,1,644,1,644,1,645,5,645,9885,8,645,10,645,12,645,9888,9,645,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,3,646,9910,8,646,1,647,1,647,1,648,1,648,1,648,1,648,3,648,9918,8,648,1,649,1,649,3,649,9922,8,649,1,650,1,650,1,650,1,650,1,650,1,650,1,650,1,651,1,651,1,651,3,651,9934,8,651,3,651,9936,8,651,1,652,1,652,1,653,4,653,9941,8,653,11,653,12,653,9942,1,654,1,654,1,654,1,654,1,655,1,655,1,655,3,655,9952,8,655,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,3,656,9970,8,656,1,656,1,656,1,657,1,657,1,657,1,657,3,657,9978,8,657,1,658,1,658,1,659,1,659,1,659,1,659,1,659,3,659,9987,8,659,1,660,1,660,1,660,5,660,9992,8,660,10,660,12,660,9995,9,660,1,661,1,661,1,661,1,662,1,662,1,663,1,663,3,663,10004,8,663,1,664,1,664,1,665,1,665,3,665,10010,8,665,1,666,1,666,1,667,1,667,1,667,3,667,10017,8,667,1,668,1,668,1,668,3,668,10022,8,668,1,669,1,669,1,669,1,669,3,669,10028,8,669,1,670,1,670,3,670,10032,8,670,1,671,1,671,1,672,5,672,10037,8,672,10,672,12,672,10040,9,672,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,3,673,10069,8,673,1,674,1,674,1,674,1,674,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,3,675,10089,8,675,1,676,1,676,3,676,10093,8,676,1,677,1,677,1,677,1,677,1,677,1,678,1,678,1,678,1,678,1,678,1,678,1,679,1,679,1,679,3,679,10109,8,679,1,680,1,680,1,680,5,680,10114,8,680,10,680,12,680,10117,9,680,1,681,1,681,1,681,1,681,1,682,1,682,1,683,1,683,1,684,1,684,3,684,10129,8,684,1,684,1,684,1,684,1,684,5,684,10135,8,684,10,684,12,684,10138,9,684,1,685,1,685,1,685,1,685,1,685,1,685,1,685,1,685,1,685,1,685,1,686,1,686,1,686,1,686,1,686,5,686,10155,8,686,10,686,12,686,10158,9,686,1,687,1,687,1,687,3,687,10163,8,687,1,688,1,688,1,688,1,688,1,688,1,688,1,688,1,688,1,689,1,689,3,689,10175,8,689,1,690,4,690,10178,8,690,11,690,12,690,10179,1,691,1,691,1,691,1,691,1,691,1,692,1,692,1,692,3,692,10190,8,692,1,693,1,693,1,693,1,694,1,694,1,694,1,694,1,694,1,695,1,695,1,695,1,695,1,695,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,3,696,10222,8,696,1,697,1,697,1,697,3,697,10227,8,697,1,698,1,698,1,698,1,698,1,698,5,698,10234,8,698,10,698,12,698,10237,9,698,1,698,1,698,3,698,10241,8,698,1,699,1,699,3,699,10245,8,699,1,700,1,700,1,700,3,700,10250,8,700,1,701,1,701,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,703,1,703,1,703,3,703,10266,8,703,1,704,1,704,1,704,1,704,1,704,1,705,1,705,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,3,706,10284,8,706,1,706,3,706,10287,8,706,1,706,1,706,1,707,1,707,3,707,10293,8,707,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,3,708,10321,8,708,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,3,709,10331,8,709,1,710,1,710,1,710,4,710,10336,8,710,11,710,12,710,10337,3,710,10340,8,710,1,711,1,711,1,711,1,711,1,711,5,711,10347,8,711,10,711,12,711,10350,9,711,3,711,10352,8,711,1,712,1,712,1,712,1,712,1,713,1,713,1,713,1,713,1,713,1,714,1,714,1,714,3,714,10366,8,714,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,716,1,716,1,716,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,3,717,10387,8,717,1,717,1,717,1,718,1,718,1,718,3,718,10394,8,718,1,719,1,719,1,719,5,719,10399,8,719,10,719,12,719,10402,9,719,1,720,1,720,1,720,3,720,10407,8,720,1,720,3,720,10410,8,720,1,721,1,721,1,721,3,721,10415,8,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,3,721,10425,8,721,1,721,1,721,1,721,1,721,1,721,5,721,10432,8,721,10,721,12,721,10435,9,721,1,721,1,721,3,721,10439,8,721,3,721,10441,8,721,1,721,1,721,1,722,1,722,1,722,1,722,1,722,3,722,10450,8,722,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,724,1,724,1,725,1,725,1,725,3,725,10465,8,725,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,3,726,10482,8,726,3,726,10484,8,726,1,727,1,727,1,727,1,727,1,727,1,728,1,728,1,728,1,728,1,729,1,729,1,729,1,730,1,730,1,730,1,730,1,731,1,731,1,731,1,731,1,732,1,732,3,732,10508,8,732,1,732,1,732,3,732,10512,8,732,1,733,1,733,1,733,1,733,1,733,1,733,1,733,1,733,1,733,3,733,10523,8,733,1,733,3,733,10526,8,733,1,734,1,734,3,734,10530,8,734,1,735,1,735,1,735,3,735,10535,8,735,1,736,4,736,10538,8,736,11,736,12,736,10539,1,737,1,737,1,737,1,737,1,737,1,738,1,738,1,738,5,738,10550,8,738,10,738,12,738,10553,9,738,1,739,1,739,1,739,3,739,10558,8,739,1,740,1,740,3,740,10562,8,740,1,741,1,741,3,741,10566,8,741,1,742,1,742,3,742,10570,8,742,1,743,1,743,1,743,3,743,10575,8,743,1,744,1,744,3,744,10579,8,744,1,745,1,745,1,746,1,746,3,746,10585,8,746,1,746,1,746,1,746,1,746,1,746,1,746,1,747,1,747,1,748,1,748,1,749,1,749,1,750,1,750,1,751,1,751,1,751,1,752,1,752,3,752,10606,8,752,1,752,1,752,3,752,10610,8,752,1,753,1,753,1,753,0,1,1080,754,0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,312,314,316,318,320,322,324,326,328,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,376,378,380,382,384,386,388,390,392,394,396,398,400,402,404,406,408,410,412,414,416,418,420,422,424,426,428,430,432,434,436,438,440,442,444,446,448,450,452,454,456,458,460,462,464,466,468,470,472,474,476,478,480,482,484,486,488,490,492,494,496,498,500,502,504,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,564,566,568,570,572,574,576,578,580,582,584,586,588,590,592,594,596,598,600,602,604,606,608,610,612,614,616,618,620,622,624,626,628,630,632,634,636,638,640,642,644,646,648,650,652,654,656,658,660,662,664,666,668,670,672,674,676,678,680,682,684,686,688,690,692,694,696,698,700,702,704,706,708,710,712,714,716,718,720,722,724,726,728,730,732,734,736,738,740,742,744,746,748,750,752,754,756,758,760,762,764,766,768,770,772,774,776,778,780,782,784,786,788,790,792,794,796,798,800,802,804,806,808,810,812,814,816,818,820,822,824,826,828,830,832,834,836,838,840,842,844,846,848,850,852,854,856,858,860,862,864,866,868,870,872,874,876,878,880,882,884,886,888,890,892,894,896,898,900,902,904,906,908,910,912,914,916,918,920,922,924,926,928,930,932,934,936,938,940,942,944,946,948,950,952,954,956,958,960,962,964,966,968,970,972,974,976,978,980,982,984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1008,1010,1012,1014,1016,1018,1020,1022,1024,1026,1028,1030,1032,1034,1036,1038,1040,1042,1044,1046,1048,1050,1052,1054,1056,1058,1060,1062,1064,1066,1068,1070,1072,1074,1076,1078,1080,1082,1084,1086,1088,1090,1092,1094,1096,1098,1100,1102,1104,1106,1108,1110,1112,1114,1116,1118,1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1154,1156,1158,1160,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,1216,1218,1220,1222,1224,1226,1228,1230,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,1328,1330,1332,1334,1336,1338,1340,1342,1344,1346,1348,1350,1352,1354,1356,1358,1360,1362,1364,1366,1368,1370,1372,1374,1376,1378,1380,1382,1384,1386,1388,1390,1392,1394,1396,1398,1400,1402,1404,1406,1408,1410,1412,1414,1416,1418,1420,1422,1424,1426,1428,1430,1432,1434,1436,1438,1440,1442,1444,1446,1448,1450,1452,1454,1456,1458,1460,1462,1464,1466,1468,1470,1472,1474,1476,1478,1480,1482,1484,1486,1488,1490,1492,1494,1496,1498,1500,1502,1504,1506,0,69,2,0,195,195,357,357,2,0,133,133,191,191,2,0,245,245,325,325,2,0,10,10,94,94,2,0,162,162,356,356,2,0,180,180,221,221,5,0,30,30,281,281,322,322,345,345,347,347,2,0,139,139,305,305,2,0,30,30,99,99,2,0,64,64,94,94,2,0,345,345,347,347,2,0,200,200,224,224,9,0,30,30,160,160,165,165,179,179,219,219,227,227,335,335,338,338,438,438,3,0,113,113,277,277,329,329,2,0,53,53,78,78,3,0,173,173,252,252,255,255,5,0,30,30,88,88,182,182,232,232,362,362,2,0,92,92,226,226,1,0,448,449,2,0,92,92,407,407,2,0,334,334,407,407,2,0,211,211,289,289,2,0,314,314,445,445,2,0,64,64,68,68,5,0,212,212,322,322,343,343,455,455,457,457,5,0,212,212,322,322,343,343,354,354,455,456,2,0,10,10,53,53,3,0,211,211,289,289,442,442,2,0,92,92,342,342,3,0,109,109,128,128,344,344,4,0,88,88,182,182,232,232,362,362,2,0,151,151,245,245,2,0,306,306,326,326,1,0,31,32,2,0,99,99,342,342,2,0,201,201,327,327,2,0,59,59,97,97,2,0,213,213,245,245,2,0,313,313,407,407,2,0,207,207,261,261,4,0,113,113,115,115,119,119,126,126,2,0,353,353,477,477,2,0,384,385,399,399,1,0,384,385,1,0,411,412,1,0,18,19,2,0,117,117,122,122,5,0,10,10,16,17,21,21,23,23,25,25,1,0,12,13,3,0,9,9,14,14,27,27,2,0,30,30,56,56,3,0,39,39,73,73,95,95,2,0,166,166,188,188,2,0,297,297,450,450,2,0,208,208,282,282,3,0,30,30,34,34,90,90,6,0,9,10,12,17,21,21,23,23,25,25,27,27,2,0,20,20,22,22,1,0,483,486,11,0,124,124,129,249,251,252,254,303,305,379,433,452,455,469,471,471,473,473,475,475,478,488,5,0,106,118,120,123,125,125,127,128,472,472,4,0,30,52,54,70,72,105,454,454,5,0,304,304,418,424,504,504,513,513,521,635,2,0,62,62,116,116,2,0,10,10,20,20,2,0,167,167,507,507,2,0,144,144,210,210,36,0,33,33,35,35,43,45,53,53,57,57,61,61,92,92,116,116,123,123,130,130,144,144,153,153,157,157,161,161,167,167,172,172,207,207,210,210,232,232,240,240,258,258,261,262,272,272,286,286,300,300,306,306,312,312,316,317,326,326,353,353,433,434,477,477,490,502,506,512,514,518,520,520,3,0,66,66,99,99,311,311,11574,0,1509,1,0,0,0,2,1513,1,0,0,0,4,1523,1,0,0,0,6,1647,1,0,0,0,8,1649,1,0,0,0,10,1653,1,0,0,0,12,1658,1,0,0,0,14,1663,1,0,0,0,16,1669,1,0,0,0,18,1691,1,0,0,0,20,1704,1,0,0,0,22,1706,1,0,0,0,24,1712,1,0,0,0,26,1722,1,0,0,0,28,1724,1,0,0,0,30,1733,1,0,0,0,32,1741,1,0,0,0,34,1743,1,0,0,0,36,1761,1,0,0,0,38,1766,1,0,0,0,40,1775,1,0,0,0,42,1777,1,0,0,0,44,1791,1,0,0,0,46,1793,1,0,0,0,48,1823,1,0,0,0,50,1825,1,0,0,0,52,1833,1,0,0,0,54,1843,1,0,0,0,56,1850,1,0,0,0,58,1856,1,0,0,0,60,1873,1,0,0,0,62,1878,1,0,0,0,64,1882,1,0,0,0,66,1884,1,0,0,0,68,1895,1,0,0,0,70,1899,1,0,0,0,72,1904,1,0,0,0,74,1909,1,0,0,0,76,1911,1,0,0,0,78,1923,1,0,0,0,80,1930,1,0,0,0,82,1932,1,0,0,0,84,1934,1,0,0,0,86,1936,1,0,0,0,88,2039,1,0,0,0,90,2041,1,0,0,0,92,2057,1,0,0,0,94,2059,1,0,0,0,96,2304,1,0,0,0,98,2311,1,0,0,0,100,2316,1,0,0,0,102,2321,1,0,0,0,104,2326,1,0,0,0,106,2334,1,0,0,0,108,2336,1,0,0,0,110,2343,1,0,0,0,112,2345,1,0,0,0,114,2353,1,0,0,0,116,2365,1,0,0,0,118,2381,1,0,0,0,120,2409,1,0,0,0,122,2411,1,0,0,0,124,2414,1,0,0,0,126,2422,1,0,0,0,128,2427,1,0,0,0,130,2458,1,0,0,0,132,2460,1,0,0,0,134,2493,1,0,0,0,136,2495,1,0,0,0,138,2500,1,0,0,0,140,2512,1,0,0,0,142,2549,1,0,0,0,144,2557,1,0,0,0,146,2559,1,0,0,0,148,2567,1,0,0,0,150,2585,1,0,0,0,152,2587,1,0,0,0,154,2636,1,0,0,0,156,2640,1,0,0,0,158,2647,1,0,0,0,160,2649,1,0,0,0,162,2657,1,0,0,0,164,2668,1,0,0,0,166,2672,1,0,0,0,168,2674,1,0,0,0,170,2679,1,0,0,0,172,2689,1,0,0,0,174,2700,1,0,0,0,176,2742,1,0,0,0,178,2747,1,0,0,0,180,2754,1,0,0,0,182,2756,1,0,0,0,184,2764,1,0,0,0,186,2767,1,0,0,0,188,2774,1,0,0,0,190,2834,1,0,0,0,192,2841,1,0,0,0,194,2843,1,0,0,0,196,2851,1,0,0,0,198,2859,1,0,0,0,200,2864,1,0,0,0,202,2866,1,0,0,0,204,2874,1,0,0,0,206,2890,1,0,0,0,208,2901,1,0,0,0,210,2903,1,0,0,0,212,2907,1,0,0,0,214,2917,1,0,0,0,216,2925,1,0,0,0,218,2929,1,0,0,0,220,2931,1,0,0,0,222,2938,1,0,0,0,224,2960,1,0,0,0,226,2965,1,0,0,0,228,2972,1,0,0,0,230,2984,1,0,0,0,232,2989,1,0,0,0,234,2996,1,0,0,0,236,2998,1,0,0,0,238,3002,1,0,0,0,240,3016,1,0,0,0,242,3027,1,0,0,0,244,3040,1,0,0,0,246,3054,1,0,0,0,248,3056,1,0,0,0,250,3072,1,0,0,0,252,3078,1,0,0,0,254,3087,1,0,0,0,256,3099,1,0,0,0,258,3113,1,0,0,0,260,3116,1,0,0,0,262,3151,1,0,0,0,264,3159,1,0,0,0,266,3161,1,0,0,0,268,3169,1,0,0,0,270,3185,1,0,0,0,272,3192,1,0,0,0,274,3198,1,0,0,0,276,3202,1,0,0,0,278,3204,1,0,0,0,280,3215,1,0,0,0,282,3217,1,0,0,0,284,3225,1,0,0,0,286,3247,1,0,0,0,288,3249,1,0,0,0,290,3259,1,0,0,0,292,3401,1,0,0,0,294,3403,1,0,0,0,296,3421,1,0,0,0,298,3424,1,0,0,0,300,3445,1,0,0,0,302,3453,1,0,0,0,304,3455,1,0,0,0,306,3463,1,0,0,0,308,3468,1,0,0,0,310,3483,1,0,0,0,312,3485,1,0,0,0,314,3488,1,0,0,0,316,3490,1,0,0,0,318,3521,1,0,0,0,320,3526,1,0,0,0,322,3528,1,0,0,0,324,3533,1,0,0,0,326,3599,1,0,0,0,328,3601,1,0,0,0,330,3616,1,0,0,0,332,3624,1,0,0,0,334,3647,1,0,0,0,336,3651,1,0,0,0,338,3671,1,0,0,0,340,3673,1,0,0,0,342,3682,1,0,0,0,344,3693,1,0,0,0,346,3708,1,0,0,0,348,3717,1,0,0,0,350,3722,1,0,0,0,352,3727,1,0,0,0,354,3732,1,0,0,0,356,3734,1,0,0,0,358,3736,1,0,0,0,360,3745,1,0,0,0,362,3785,1,0,0,0,364,3791,1,0,0,0,366,3793,1,0,0,0,368,3808,1,0,0,0,370,3813,1,0,0,0,372,3816,1,0,0,0,374,3820,1,0,0,0,376,3825,1,0,0,0,378,3827,1,0,0,0,380,3829,1,0,0,0,382,3837,1,0,0,0,384,3839,1,0,0,0,386,3847,1,0,0,0,388,3849,1,0,0,0,390,3853,1,0,0,0,392,3866,1,0,0,0,394,3871,1,0,0,0,396,3876,1,0,0,0,398,3890,1,0,0,0,400,3918,1,0,0,0,402,3920,1,0,0,0,404,3928,1,0,0,0,406,3934,1,0,0,0,408,3942,1,0,0,0,410,3954,1,0,0,0,412,3956,1,0,0,0,414,4073,1,0,0,0,416,4075,1,0,0,0,418,4086,1,0,0,0,420,4097,1,0,0,0,422,4099,1,0,0,0,424,4110,1,0,0,0,426,4114,1,0,0,0,428,4159,1,0,0,0,430,4165,1,0,0,0,432,4167,1,0,0,0,434,4183,1,0,0,0,436,4218,1,0,0,0,438,4223,1,0,0,0,440,4232,1,0,0,0,442,4234,1,0,0,0,444,4259,1,0,0,0,446,4261,1,0,0,0,448,4281,1,0,0,0,450,4301,1,0,0,0,452,4321,1,0,0,0,454,4323,1,0,0,0,456,4329,1,0,0,0,458,4441,1,0,0,0,460,4464,1,0,0,0,462,4469,1,0,0,0,464,4484,1,0,0,0,466,4486,1,0,0,0,468,4488,1,0,0,0,470,4496,1,0,0,0,472,4502,1,0,0,0,474,4506,1,0,0,0,476,4514,1,0,0,0,478,4525,1,0,0,0,480,4711,1,0,0,0,482,4715,1,0,0,0,484,4853,1,0,0,0,486,4858,1,0,0,0,488,4862,1,0,0,0,490,4868,1,0,0,0,492,4936,1,0,0,0,494,4938,1,0,0,0,496,4942,1,0,0,0,498,4944,1,0,0,0,500,4971,1,0,0,0,502,4988,1,0,0,0,504,4990,1,0,0,0,506,5007,1,0,0,0,508,5047,1,0,0,0,510,5049,1,0,0,0,512,5060,1,0,0,0,514,5066,1,0,0,0,516,5068,1,0,0,0,518,5092,1,0,0,0,520,5098,1,0,0,0,522,5104,1,0,0,0,524,5106,1,0,0,0,526,5124,1,0,0,0,528,5153,1,0,0,0,530,5155,1,0,0,0,532,5202,1,0,0,0,534,5207,1,0,0,0,536,5209,1,0,0,0,538,5228,1,0,0,0,540,5241,1,0,0,0,542,5256,1,0,0,0,544,5261,1,0,0,0,546,5265,1,0,0,0,548,5270,1,0,0,0,550,5277,1,0,0,0,552,5279,1,0,0,0,554,5304,1,0,0,0,556,5306,1,0,0,0,558,5314,1,0,0,0,560,5334,1,0,0,0,562,5336,1,0,0,0,564,5344,1,0,0,0,566,5362,1,0,0,0,568,5371,1,0,0,0,570,5377,1,0,0,0,572,5379,1,0,0,0,574,5395,1,0,0,0,576,5397,1,0,0,0,578,5412,1,0,0,0,580,5420,1,0,0,0,582,5423,1,0,0,0,584,5432,1,0,0,0,586,5473,1,0,0,0,588,5483,1,0,0,0,590,5490,1,0,0,0,592,5492,1,0,0,0,594,5507,1,0,0,0,596,5509,1,0,0,0,598,5512,1,0,0,0,600,5520,1,0,0,0,602,5567,1,0,0,0,604,5581,1,0,0,0,606,5595,1,0,0,0,608,5619,1,0,0,0,610,5626,1,0,0,0,612,5631,1,0,0,0,614,5639,1,0,0,0,616,5642,1,0,0,0,618,5646,1,0,0,0,620,5653,1,0,0,0,622,5689,1,0,0,0,624,5696,1,0,0,0,626,5698,1,0,0,0,628,5711,1,0,0,0,630,5713,1,0,0,0,632,5758,1,0,0,0,634,5760,1,0,0,0,636,5830,1,0,0,0,638,5832,1,0,0,0,640,5834,1,0,0,0,642,5842,1,0,0,0,644,5856,1,0,0,0,646,6295,1,0,0,0,648,6299,1,0,0,0,650,6304,1,0,0,0,652,6375,1,0,0,0,654,6589,1,0,0,0,656,6591,1,0,0,0,658,6599,1,0,0,0,660,6615,1,0,0,0,662,6622,1,0,0,0,664,6624,1,0,0,0,666,6815,1,0,0,0,668,6817,1,0,0,0,670,6825,1,0,0,0,672,6833,1,0,0,0,674,6862,1,0,0,0,676,6864,1,0,0,0,678,6873,1,0,0,0,680,6881,1,0,0,0,682,6920,1,0,0,0,684,6934,1,0,0,0,686,6936,1,0,0,0,688,6956,1,0,0,0,690,6958,1,0,0,0,692,6971,1,0,0,0,694,6975,1,0,0,0,696,6977,1,0,0,0,698,6982,1,0,0,0,700,6984,1,0,0,0,702,6991,1,0,0,0,704,6993,1,0,0,0,706,7e3,1,0,0,0,708,7055,1,0,0,0,710,7060,1,0,0,0,712,7072,1,0,0,0,714,7074,1,0,0,0,716,7090,1,0,0,0,718,7092,1,0,0,0,720,7124,1,0,0,0,722,7126,1,0,0,0,724,7129,1,0,0,0,726,7141,1,0,0,0,728,7143,1,0,0,0,730,7160,1,0,0,0,732,7162,1,0,0,0,734,7173,1,0,0,0,736,7178,1,0,0,0,738,7199,1,0,0,0,740,7205,1,0,0,0,742,7210,1,0,0,0,744,7217,1,0,0,0,746,7243,1,0,0,0,748,7247,1,0,0,0,750,7249,1,0,0,0,752,7328,1,0,0,0,754,7330,1,0,0,0,756,7356,1,0,0,0,758,7361,1,0,0,0,760,7382,1,0,0,0,762,7394,1,0,0,0,764,7396,1,0,0,0,766,7404,1,0,0,0,768,7406,1,0,0,0,770,7411,1,0,0,0,772,7416,1,0,0,0,774,7420,1,0,0,0,776,7427,1,0,0,0,778,7429,1,0,0,0,780,7441,1,0,0,0,782,7466,1,0,0,0,784,7477,1,0,0,0,786,7479,1,0,0,0,788,7484,1,0,0,0,790,7489,1,0,0,0,792,7491,1,0,0,0,794,7502,1,0,0,0,796,7508,1,0,0,0,798,7537,1,0,0,0,800,7544,1,0,0,0,802,7556,1,0,0,0,804,7559,1,0,0,0,806,7568,1,0,0,0,808,7592,1,0,0,0,810,7594,1,0,0,0,812,7596,1,0,0,0,814,7604,1,0,0,0,816,7620,1,0,0,0,818,7631,1,0,0,0,820,7636,1,0,0,0,822,7638,1,0,0,0,824,7669,1,0,0,0,826,7688,1,0,0,0,828,7701,1,0,0,0,830,7709,1,0,0,0,832,7721,1,0,0,0,834,7723,1,0,0,0,836,7734,1,0,0,0,838,7748,1,0,0,0,840,7752,1,0,0,0,842,7758,1,0,0,0,844,7761,1,0,0,0,846,7771,1,0,0,0,848,7796,1,0,0,0,850,7798,1,0,0,0,852,7801,1,0,0,0,854,7818,1,0,0,0,856,7825,1,0,0,0,858,7829,1,0,0,0,860,7839,1,0,0,0,862,7864,1,0,0,0,864,7866,1,0,0,0,866,7876,1,0,0,0,868,7901,1,0,0,0,870,7915,1,0,0,0,872,7917,1,0,0,0,874,7929,1,0,0,0,876,7941,1,0,0,0,878,7943,1,0,0,0,880,7965,1,0,0,0,882,7969,1,0,0,0,884,7974,1,0,0,0,886,7976,1,0,0,0,888,7984,1,0,0,0,890,7988,1,0,0,0,892,7990,1,0,0,0,894,7994,1,0,0,0,896,8002,1,0,0,0,898,8018,1,0,0,0,900,8022,1,0,0,0,902,8047,1,0,0,0,904,8049,1,0,0,0,906,8058,1,0,0,0,908,8060,1,0,0,0,910,8067,1,0,0,0,912,8071,1,0,0,0,914,8073,1,0,0,0,916,8075,1,0,0,0,918,8081,1,0,0,0,920,8083,1,0,0,0,922,8110,1,0,0,0,924,8115,1,0,0,0,926,8125,1,0,0,0,928,8127,1,0,0,0,930,8131,1,0,0,0,932,8146,1,0,0,0,934,8148,1,0,0,0,936,8165,1,0,0,0,938,8176,1,0,0,0,940,8178,1,0,0,0,942,8234,1,0,0,0,944,8258,1,0,0,0,946,8269,1,0,0,0,948,8272,1,0,0,0,950,8294,1,0,0,0,952,8296,1,0,0,0,954,8307,1,0,0,0,956,8309,1,0,0,0,958,8323,1,0,0,0,960,8325,1,0,0,0,962,8333,1,0,0,0,964,8340,1,0,0,0,966,8367,1,0,0,0,968,8369,1,0,0,0,970,8378,1,0,0,0,972,8383,1,0,0,0,974,8388,1,0,0,0,976,8398,1,0,0,0,978,8402,1,0,0,0,980,8404,1,0,0,0,982,8412,1,0,0,0,984,8416,1,0,0,0,986,8449,1,0,0,0,988,8459,1,0,0,0,990,8471,1,0,0,0,992,8473,1,0,0,0,994,8487,1,0,0,0,996,8516,1,0,0,0,998,8531,1,0,0,0,1e3,8537,1,0,0,0,1002,8543,1,0,0,0,1004,8555,1,0,0,0,1006,8573,1,0,0,0,1008,8580,1,0,0,0,1010,8584,1,0,0,0,1012,8588,1,0,0,0,1014,8590,1,0,0,0,1016,8596,1,0,0,0,1018,8599,1,0,0,0,1020,8606,1,0,0,0,1022,8619,1,0,0,0,1024,8623,1,0,0,0,1026,8625,1,0,0,0,1028,8634,1,0,0,0,1030,8643,1,0,0,0,1032,8671,1,0,0,0,1034,8673,1,0,0,0,1036,8683,1,0,0,0,1038,8685,1,0,0,0,1040,8687,1,0,0,0,1042,8691,1,0,0,0,1044,8699,1,0,0,0,1046,8707,1,0,0,0,1048,8715,1,0,0,0,1050,8729,1,0,0,0,1052,8738,1,0,0,0,1054,8742,1,0,0,0,1056,8746,1,0,0,0,1058,8772,1,0,0,0,1060,8786,1,0,0,0,1062,8801,1,0,0,0,1064,8811,1,0,0,0,1066,8815,1,0,0,0,1068,8823,1,0,0,0,1070,8831,1,0,0,0,1072,8837,1,0,0,0,1074,8841,1,0,0,0,1076,8848,1,0,0,0,1078,8853,1,0,0,0,1080,8868,1,0,0,0,1082,8948,1,0,0,0,1084,8950,1,0,0,0,1086,8952,1,0,0,0,1088,8982,1,0,0,0,1090,8986,1,0,0,0,1092,9165,1,0,0,0,1094,9172,1,0,0,0,1096,9185,1,0,0,0,1098,9187,1,0,0,0,1100,9192,1,0,0,0,1102,9200,1,0,0,0,1104,9205,1,0,0,0,1106,9212,1,0,0,0,1108,9229,1,0,0,0,1110,9231,1,0,0,0,1112,9241,1,0,0,0,1114,9250,1,0,0,0,1116,9255,1,0,0,0,1118,9257,1,0,0,0,1120,9265,1,0,0,0,1122,9275,1,0,0,0,1124,9277,1,0,0,0,1126,9286,1,0,0,0,1128,9292,1,0,0,0,1130,9307,1,0,0,0,1132,9315,1,0,0,0,1134,9324,1,0,0,0,1136,9336,1,0,0,0,1138,9350,1,0,0,0,1140,9352,1,0,0,0,1142,9359,1,0,0,0,1144,9365,1,0,0,0,1146,9369,1,0,0,0,1148,9371,1,0,0,0,1150,9379,1,0,0,0,1152,9387,1,0,0,0,1154,9401,1,0,0,0,1156,9403,1,0,0,0,1158,9411,1,0,0,0,1160,9424,1,0,0,0,1162,9426,1,0,0,0,1164,9434,1,0,0,0,1166,9441,1,0,0,0,1168,9454,1,0,0,0,1170,9464,1,0,0,0,1172,9466,1,0,0,0,1174,9468,1,0,0,0,1176,9482,1,0,0,0,1178,9511,1,0,0,0,1180,9520,1,0,0,0,1182,9527,1,0,0,0,1184,9529,1,0,0,0,1186,9536,1,0,0,0,1188,9540,1,0,0,0,1190,9548,1,0,0,0,1192,9552,1,0,0,0,1194,9554,1,0,0,0,1196,9575,1,0,0,0,1198,9578,1,0,0,0,1200,9585,1,0,0,0,1202,9590,1,0,0,0,1204,9592,1,0,0,0,1206,9608,1,0,0,0,1208,9610,1,0,0,0,1210,9618,1,0,0,0,1212,9620,1,0,0,0,1214,9628,1,0,0,0,1216,9630,1,0,0,0,1218,9638,1,0,0,0,1220,9640,1,0,0,0,1222,9648,1,0,0,0,1224,9650,1,0,0,0,1226,9652,1,0,0,0,1228,9654,1,0,0,0,1230,9662,1,0,0,0,1232,9666,1,0,0,0,1234,9674,1,0,0,0,1236,9676,1,0,0,0,1238,9678,1,0,0,0,1240,9687,1,0,0,0,1242,9721,1,0,0,0,1244,9723,1,0,0,0,1246,9725,1,0,0,0,1248,9727,1,0,0,0,1250,9729,1,0,0,0,1252,9731,1,0,0,0,1254,9745,1,0,0,0,1256,9750,1,0,0,0,1258,9757,1,0,0,0,1260,9762,1,0,0,0,1262,9764,1,0,0,0,1264,9778,1,0,0,0,1266,9784,1,0,0,0,1268,9790,1,0,0,0,1270,9796,1,0,0,0,1272,9804,1,0,0,0,1274,9813,1,0,0,0,1276,9815,1,0,0,0,1278,9817,1,0,0,0,1280,9871,1,0,0,0,1282,9873,1,0,0,0,1284,9875,1,0,0,0,1286,9877,1,0,0,0,1288,9879,1,0,0,0,1290,9886,1,0,0,0,1292,9909,1,0,0,0,1294,9911,1,0,0,0,1296,9917,1,0,0,0,1298,9921,1,0,0,0,1300,9923,1,0,0,0,1302,9930,1,0,0,0,1304,9937,1,0,0,0,1306,9940,1,0,0,0,1308,9944,1,0,0,0,1310,9951,1,0,0,0,1312,9953,1,0,0,0,1314,9977,1,0,0,0,1316,9979,1,0,0,0,1318,9986,1,0,0,0,1320,9988,1,0,0,0,1322,9996,1,0,0,0,1324,9999,1,0,0,0,1326,10003,1,0,0,0,1328,10005,1,0,0,0,1330,10009,1,0,0,0,1332,10011,1,0,0,0,1334,10016,1,0,0,0,1336,10021,1,0,0,0,1338,10027,1,0,0,0,1340,10031,1,0,0,0,1342,10033,1,0,0,0,1344,10038,1,0,0,0,1346,10068,1,0,0,0,1348,10070,1,0,0,0,1350,10088,1,0,0,0,1352,10092,1,0,0,0,1354,10094,1,0,0,0,1356,10099,1,0,0,0,1358,10108,1,0,0,0,1360,10110,1,0,0,0,1362,10118,1,0,0,0,1364,10122,1,0,0,0,1366,10124,1,0,0,0,1368,10128,1,0,0,0,1370,10139,1,0,0,0,1372,10156,1,0,0,0,1374,10162,1,0,0,0,1376,10164,1,0,0,0,1378,10174,1,0,0,0,1380,10177,1,0,0,0,1382,10181,1,0,0,0,1384,10189,1,0,0,0,1386,10191,1,0,0,0,1388,10194,1,0,0,0,1390,10199,1,0,0,0,1392,10204,1,0,0,0,1394,10226,1,0,0,0,1396,10240,1,0,0,0,1398,10244,1,0,0,0,1400,10249,1,0,0,0,1402,10251,1,0,0,0,1404,10253,1,0,0,0,1406,10265,1,0,0,0,1408,10267,1,0,0,0,1410,10272,1,0,0,0,1412,10274,1,0,0,0,1414,10292,1,0,0,0,1416,10320,1,0,0,0,1418,10330,1,0,0,0,1420,10339,1,0,0,0,1422,10351,1,0,0,0,1424,10353,1,0,0,0,1426,10357,1,0,0,0,1428,10365,1,0,0,0,1430,10367,1,0,0,0,1432,10374,1,0,0,0,1434,10377,1,0,0,0,1436,10393,1,0,0,0,1438,10395,1,0,0,0,1440,10409,1,0,0,0,1442,10411,1,0,0,0,1444,10449,1,0,0,0,1446,10451,1,0,0,0,1448,10459,1,0,0,0,1450,10464,1,0,0,0,1452,10483,1,0,0,0,1454,10485,1,0,0,0,1456,10490,1,0,0,0,1458,10494,1,0,0,0,1460,10497,1,0,0,0,1462,10501,1,0,0,0,1464,10511,1,0,0,0,1466,10525,1,0,0,0,1468,10529,1,0,0,0,1470,10534,1,0,0,0,1472,10537,1,0,0,0,1474,10541,1,0,0,0,1476,10546,1,0,0,0,1478,10557,1,0,0,0,1480,10561,1,0,0,0,1482,10565,1,0,0,0,1484,10569,1,0,0,0,1486,10574,1,0,0,0,1488,10578,1,0,0,0,1490,10580,1,0,0,0,1492,10582,1,0,0,0,1494,10592,1,0,0,0,1496,10594,1,0,0,0,1498,10596,1,0,0,0,1500,10598,1,0,0,0,1502,10600,1,0,0,0,1504,10609,1,0,0,0,1506,10611,1,0,0,0,1508,1510,3,4,2,0,1509,1508,1,0,0,0,1509,1510,1,0,0,0,1510,1511,1,0,0,0,1511,1512,5,0,0,1,1512,1,1,0,0,0,1513,1514,3,1288,644,0,1514,3,1,0,0,0,1515,1517,3,6,3,0,1516,1518,5,7,0,0,1517,1516,1,0,0,0,1517,1518,1,0,0,0,1518,1524,1,0,0,0,1519,1520,3,6,3,0,1520,1521,5,7,0,0,1521,1522,3,4,2,0,1522,1524,1,0,0,0,1523,1515,1,0,0,0,1523,1519,1,0,0,0,1524,5,1,0,0,0,1525,1648,3,408,204,0,1526,1648,3,738,369,0,1527,1648,3,732,366,0,1528,1648,3,734,367,0,1529,1648,3,524,262,0,1530,1648,3,744,372,0,1531,1648,3,428,214,0,1532,1648,3,288,144,0,1533,1648,3,292,146,0,1534,1648,3,300,150,0,1535,1648,3,324,162,0,1536,1648,3,600,300,0,1537,1648,3,652,326,0,1538,1648,3,654,327,0,1539,1648,3,666,333,0,1540,1648,3,656,328,0,1541,1648,3,664,332,0,1542,1648,3,344,172,0,1543,1648,3,256,128,0,1544,1648,3,740,370,0,1545,1648,3,88,44,0,1546,1648,3,644,322,0,1547,1648,3,126,63,0,1548,1648,3,674,337,0,1549,1648,3,28,14,0,1550,1648,3,24,12,0,1551,1648,3,682,341,0,1552,1648,3,240,120,0,1553,1648,3,752,376,0,1554,1648,3,750,375,0,1555,1648,3,340,170,0,1556,1648,3,762,381,0,1557,1648,3,10,5,0,1558,1648,3,84,42,0,1559,1648,3,132,66,0,1560,1648,3,756,378,0,1561,1648,3,480,240,0,1562,1648,3,78,39,0,1563,1648,3,134,67,0,1564,1648,3,358,179,0,1565,1648,3,242,121,0,1566,1648,3,412,206,0,1567,1648,3,622,311,0,1568,1648,3,754,377,0,1569,1648,3,742,371,0,1570,1648,3,284,142,0,1571,1648,3,294,147,0,1572,1648,3,318,159,0,1573,1648,3,326,163,0,1574,1648,3,552,276,0,1575,1648,3,248,124,0,1576,1648,3,432,216,0,1577,1648,3,442,221,0,1578,1648,3,668,334,0,1579,1648,3,444,222,0,1580,1648,3,342,171,0,1581,1648,3,268,134,0,1582,1648,3,34,17,0,1583,1648,3,254,127,0,1584,1648,3,152,76,0,1585,1648,3,676,338,0,1586,1648,3,238,119,0,1587,1648,3,278,139,0,1588,1648,3,630,315,0,1589,1648,3,362,181,0,1590,1648,3,400,200,0,1591,1648,3,22,11,0,1592,1648,3,334,167,0,1593,1648,3,724,362,0,1594,1648,3,802,401,0,1595,1648,3,852,426,0,1596,1648,3,414,207,0,1597,1648,3,830,415,0,1598,1648,3,86,43,0,1599,1648,3,616,308,0,1600,1648,3,626,313,0,1601,1648,3,450,225,0,1602,1648,3,452,226,0,1603,1648,3,454,227,0,1604,1648,3,458,229,0,1605,1648,3,684,342,0,1606,1648,3,282,141,0,1607,1648,3,634,317,0,1608,1648,3,30,15,0,1609,1648,3,338,169,0,1610,1648,3,736,368,0,1611,1648,3,798,399,0,1612,1648,3,782,391,0,1613,1648,3,490,245,0,1614,1648,3,498,249,0,1615,1648,3,516,258,0,1616,1648,3,328,164,0,1617,1648,3,532,266,0,1618,1648,3,804,402,0,1619,1648,3,822,411,0,1620,1648,3,704,352,0,1621,1648,3,252,126,0,1622,1648,3,722,361,0,1623,1648,3,834,417,0,1624,1648,3,700,350,0,1625,1648,3,792,396,0,1626,1648,3,456,228,0,1627,1648,3,636,318,0,1628,1648,3,604,302,0,1629,1648,3,602,301,0,1630,1648,3,606,303,0,1631,1648,3,646,323,0,1632,1648,3,500,250,0,1633,1648,3,518,259,0,1634,1648,3,686,343,0,1635,1648,3,484,242,0,1636,1648,3,858,429,0,1637,1648,3,708,354,0,1638,1648,3,476,238,0,1639,1648,3,706,353,0,1640,1648,3,844,422,0,1641,1648,3,760,380,0,1642,1648,3,66,33,0,1643,1648,3,42,21,0,1644,1648,3,76,38,0,1645,1648,3,718,359,0,1646,1648,3,8,4,0,1647,1525,1,0,0,0,1647,1526,1,0,0,0,1647,1527,1,0,0,0,1647,1528,1,0,0,0,1647,1529,1,0,0,0,1647,1530,1,0,0,0,1647,1531,1,0,0,0,1647,1532,1,0,0,0,1647,1533,1,0,0,0,1647,1534,1,0,0,0,1647,1535,1,0,0,0,1647,1536,1,0,0,0,1647,1537,1,0,0,0,1647,1538,1,0,0,0,1647,1539,1,0,0,0,1647,1540,1,0,0,0,1647,1541,1,0,0,0,1647,1542,1,0,0,0,1647,1543,1,0,0,0,1647,1544,1,0,0,0,1647,1545,1,0,0,0,1647,1546,1,0,0,0,1647,1547,1,0,0,0,1647,1548,1,0,0,0,1647,1549,1,0,0,0,1647,1550,1,0,0,0,1647,1551,1,0,0,0,1647,1552,1,0,0,0,1647,1553,1,0,0,0,1647,1554,1,0,0,0,1647,1555,1,0,0,0,1647,1556,1,0,0,0,1647,1557,1,0,0,0,1647,1558,1,0,0,0,1647,1559,1,0,0,0,1647,1560,1,0,0,0,1647,1561,1,0,0,0,1647,1562,1,0,0,0,1647,1563,1,0,0,0,1647,1564,1,0,0,0,1647,1565,1,0,0,0,1647,1566,1,0,0,0,1647,1567,1,0,0,0,1647,1568,1,0,0,0,1647,1569,1,0,0,0,1647,1570,1,0,0,0,1647,1571,1,0,0,0,1647,1572,1,0,0,0,1647,1573,1,0,0,0,1647,1574,1,0,0,0,1647,1575,1,0,0,0,1647,1576,1,0,0,0,1647,1577,1,0,0,0,1647,1578,1,0,0,0,1647,1579,1,0,0,0,1647,1580,1,0,0,0,1647,1581,1,0,0,0,1647,1582,1,0,0,0,1647,1583,1,0,0,0,1647,1584,1,0,0,0,1647,1585,1,0,0,0,1647,1586,1,0,0,0,1647,1587,1,0,0,0,1647,1588,1,0,0,0,1647,1589,1,0,0,0,1647,1590,1,0,0,0,1647,1591,1,0,0,0,1647,1592,1,0,0,0,1647,1593,1,0,0,0,1647,1594,1,0,0,0,1647,1595,1,0,0,0,1647,1596,1,0,0,0,1647,1597,1,0,0,0,1647,1598,1,0,0,0,1647,1599,1,0,0,0,1647,1600,1,0,0,0,1647,1601,1,0,0,0,1647,1602,1,0,0,0,1647,1603,1,0,0,0,1647,1604,1,0,0,0,1647,1605,1,0,0,0,1647,1606,1,0,0,0,1647,1607,1,0,0,0,1647,1608,1,0,0,0,1647,1609,1,0,0,0,1647,1610,1,0,0,0,1647,1611,1,0,0,0,1647,1612,1,0,0,0,1647,1613,1,0,0,0,1647,1614,1,0,0,0,1647,1615,1,0,0,0,1647,1616,1,0,0,0,1647,1617,1,0,0,0,1647,1618,1,0,0,0,1647,1619,1,0,0,0,1647,1620,1,0,0,0,1647,1621,1,0,0,0,1647,1622,1,0,0,0,1647,1623,1,0,0,0,1647,1624,1,0,0,0,1647,1625,1,0,0,0,1647,1626,1,0,0,0,1647,1627,1,0,0,0,1647,1628,1,0,0,0,1647,1629,1,0,0,0,1647,1630,1,0,0,0,1647,1631,1,0,0,0,1647,1632,1,0,0,0,1647,1633,1,0,0,0,1647,1634,1,0,0,0,1647,1635,1,0,0,0,1647,1636,1,0,0,0,1647,1637,1,0,0,0,1647,1638,1,0,0,0,1647,1639,1,0,0,0,1647,1640,1,0,0,0,1647,1641,1,0,0,0,1647,1642,1,0,0,0,1647,1643,1,0,0,0,1647,1644,1,0,0,0,1647,1645,1,0,0,0,1647,1646,1,0,0,0,1648,7,1,0,0,0,1649,1651,5,668,0,0,1650,1652,5,669,0,0,1651,1650,1,0,0,0,1651,1652,1,0,0,0,1652,9,1,0,0,0,1653,1654,5,433,0,0,1654,1655,3,1086,543,0,1655,11,1,0,0,0,1656,1659,5,105,0,0,1657,1659,1,0,0,0,1658,1656,1,0,0,0,1658,1657,1,0,0,0,1659,13,1,0,0,0,1660,1662,3,20,10,0,1661,1660,1,0,0,0,1662,1665,1,0,0,0,1663,1661,1,0,0,0,1663,1664,1,0,0,0,1664,15,1,0,0,0,1665,1663,1,0,0,0,1666,1668,3,18,9,0,1667,1666,1,0,0,0,1668,1671,1,0,0,0,1669,1667,1,0,0,0,1669,1670,1,0,0,0,1670,17,1,0,0,0,1671,1669,1,0,0,0,1672,1675,5,280,0,0,1673,1676,3,1252,626,0,1674,1676,5,78,0,0,1675,1673,1,0,0,0,1675,1674,1,0,0,0,1676,1692,1,0,0,0,1677,1678,7,0,0,0,1678,1679,5,280,0,0,1679,1692,3,1252,626,0,1680,1692,5,228,0,0,1681,1682,5,164,0,0,1682,1683,5,74,0,0,1683,1692,3,1258,629,0,1684,1685,5,364,0,0,1685,1686,5,361,0,0,1686,1692,3,1252,626,0,1687,1688,3,1506,753,0,1688,1689,3,1262,631,0,1689,1692,1,0,0,0,1690,1692,3,1274,637,0,1691,1672,1,0,0,0,1691,1677,1,0,0,0,1691,1680,1,0,0,0,1691,1681,1,0,0,0,1691,1684,1,0,0,0,1691,1687,1,0,0,0,1691,1690,1,0,0,0,1692,19,1,0,0,0,1693,1705,3,18,9,0,1694,1695,5,341,0,0,1695,1705,3,1250,625,0,1696,1697,5,134,0,0,1697,1705,3,1262,631,0,1698,1700,5,68,0,0,1699,1698,1,0,0,0,1699,1700,1,0,0,0,1700,1701,1,0,0,0,1701,1702,3,1506,753,0,1702,1703,3,1262,631,0,1703,1705,1,0,0,0,1704,1693,1,0,0,0,1704,1694,1,0,0,0,1704,1696,1,0,0,0,1704,1699,1,0,0,0,1705,21,1,0,0,0,1706,1707,5,46,0,0,1707,1708,3,1506,753,0,1708,1709,3,1260,630,0,1709,1710,3,12,6,0,1710,1711,3,14,7,0,1711,23,1,0,0,0,1712,1713,5,138,0,0,1713,1714,3,1506,753,0,1714,1715,3,1260,630,0,1715,1716,3,12,6,0,1716,1717,3,16,8,0,1717,25,1,0,0,0,1718,1723,1,0,0,0,1719,1720,5,68,0,0,1720,1721,5,175,0,0,1721,1723,3,1210,605,0,1722,1718,1,0,0,0,1722,1719,1,0,0,0,1723,27,1,0,0,0,1724,1725,5,138,0,0,1725,1727,3,1506,753,0,1726,1728,5,30,0,0,1727,1726,1,0,0,0,1727,1728,1,0,0,0,1728,1729,1,0,0,0,1729,1730,3,1260,630,0,1730,1731,3,26,13,0,1731,1732,3,72,36,0,1732,29,1,0,0,0,1733,1734,5,191,0,0,1734,1737,3,1506,753,0,1735,1736,5,220,0,0,1736,1738,5,389,0,0,1737,1735,1,0,0,0,1737,1738,1,0,0,0,1738,1739,1,0,0,0,1739,1740,3,1262,631,0,1740,31,1,0,0,0,1741,1742,7,1,0,0,1742,33,1,0,0,0,1743,1744,5,46,0,0,1744,1748,5,316,0,0,1745,1746,5,220,0,0,1746,1747,5,77,0,0,1747,1749,5,389,0,0,1748,1745,1,0,0,0,1748,1749,1,0,0,0,1749,1755,1,0,0,0,1750,1751,3,36,18,0,1751,1752,5,106,0,0,1752,1753,3,1260,630,0,1753,1756,1,0,0,0,1754,1756,3,1264,632,0,1755,1750,1,0,0,0,1755,1754,1,0,0,0,1756,1757,1,0,0,0,1757,1758,3,38,19,0,1758,35,1,0,0,0,1759,1762,3,1264,632,0,1760,1762,1,0,0,0,1761,1759,1,0,0,0,1761,1760,1,0,0,0,1762,37,1,0,0,0,1763,1765,3,40,20,0,1764,1763,1,0,0,0,1765,1768,1,0,0,0,1766,1764,1,0,0,0,1766,1767,1,0,0,0,1767,39,1,0,0,0,1768,1766,1,0,0,0,1769,1776,3,152,76,0,1770,1776,3,532,266,0,1771,1776,3,254,127,0,1772,1776,3,362,181,0,1773,1776,3,498,249,0,1774,1776,3,718,359,0,1775,1769,1,0,0,0,1775,1770,1,0,0,0,1775,1771,1,0,0,0,1775,1772,1,0,0,0,1775,1773,1,0,0,0,1775,1774,1,0,0,0,1776,41,1,0,0,0,1777,1779,5,326,0,0,1778,1780,7,2,0,0,1779,1778,1,0,0,0,1779,1780,1,0,0,0,1780,1781,1,0,0,0,1781,1782,3,44,22,0,1782,43,1,0,0,0,1783,1784,5,349,0,0,1784,1792,3,714,357,0,1785,1786,5,325,0,0,1786,1787,5,154,0,0,1787,1788,5,36,0,0,1788,1789,5,349,0,0,1789,1792,3,714,357,0,1790,1792,3,48,24,0,1791,1783,1,0,0,0,1791,1785,1,0,0,0,1791,1790,1,0,0,0,1792,45,1,0,0,0,1793,1794,3,50,25,0,1794,1795,7,3,0,0,1795,1796,3,52,26,0,1796,47,1,0,0,0,1797,1824,3,46,23,0,1798,1799,3,50,25,0,1799,1800,5,64,0,0,1800,1801,5,434,0,0,1801,1824,1,0,0,0,1802,1803,5,411,0,0,1803,1804,5,379,0,0,1804,1824,3,60,30,0,1805,1806,5,152,0,0,1806,1824,3,1252,626,0,1807,1808,5,316,0,0,1808,1824,3,1214,607,0,1809,1810,5,260,0,0,1810,1824,3,62,31,0,1811,1812,3,1506,753,0,1812,1813,3,64,32,0,1813,1824,1,0,0,0,1814,1815,5,325,0,0,1815,1816,5,106,0,0,1816,1824,3,64,32,0,1817,1818,5,376,0,0,1818,1819,5,272,0,0,1819,1824,3,1104,552,0,1820,1821,5,349,0,0,1821,1822,5,330,0,0,1822,1824,3,1252,626,0,1823,1797,1,0,0,0,1823,1798,1,0,0,0,1823,1802,1,0,0,0,1823,1805,1,0,0,0,1823,1807,1,0,0,0,1823,1809,1,0,0,0,1823,1811,1,0,0,0,1823,1814,1,0,0,0,1823,1817,1,0,0,0,1823,1820,1,0,0,0,1824,49,1,0,0,0,1825,1830,3,1264,632,0,1826,1827,5,11,0,0,1827,1829,3,1264,632,0,1828,1826,1,0,0,0,1829,1832,1,0,0,0,1830,1828,1,0,0,0,1830,1831,1,0,0,0,1831,51,1,0,0,0,1832,1830,1,0,0,0,1833,1838,3,54,27,0,1834,1835,5,6,0,0,1835,1837,3,54,27,0,1836,1834,1,0,0,0,1837,1840,1,0,0,0,1838,1836,1,0,0,0,1838,1839,1,0,0,0,1839,53,1,0,0,0,1840,1838,1,0,0,0,1841,1844,3,58,29,0,1842,1844,3,264,132,0,1843,1841,1,0,0,0,1843,1842,1,0,0,0,1844,55,1,0,0,0,1845,1846,5,293,0,0,1846,1851,7,4,0,0,1847,1848,5,303,0,0,1848,1851,5,293,0,0,1849,1851,5,323,0,0,1850,1845,1,0,0,0,1850,1847,1,0,0,0,1850,1849,1,0,0,0,1851,57,1,0,0,0,1852,1857,5,96,0,0,1853,1857,5,60,0,0,1854,1857,5,80,0,0,1855,1857,3,64,32,0,1856,1852,1,0,0,0,1856,1853,1,0,0,0,1856,1854,1,0,0,0,1856,1855,1,0,0,0,1857,59,1,0,0,0,1858,1874,3,1252,626,0,1859,1874,3,1274,637,0,1860,1861,3,1028,514,0,1861,1862,3,1252,626,0,1862,1863,3,1032,516,0,1863,1874,1,0,0,0,1864,1865,3,1028,514,0,1865,1866,5,2,0,0,1866,1867,3,1250,625,0,1867,1868,5,3,0,0,1868,1869,3,1252,626,0,1869,1874,1,0,0,0,1870,1874,3,264,132,0,1871,1874,5,53,0,0,1872,1874,5,245,0,0,1873,1858,1,0,0,0,1873,1859,1,0,0,0,1873,1860,1,0,0,0,1873,1864,1,0,0,0,1873,1870,1,0,0,0,1873,1871,1,0,0,0,1873,1872,1,0,0,0,1874,61,1,0,0,0,1875,1879,3,1252,626,0,1876,1879,5,53,0,0,1877,1879,1,0,0,0,1878,1875,1,0,0,0,1878,1876,1,0,0,0,1878,1877,1,0,0,0,1879,63,1,0,0,0,1880,1883,3,1270,635,0,1881,1883,3,1252,626,0,1882,1880,1,0,0,0,1882,1881,1,0,0,0,1883,65,1,0,0,0,1884,1885,5,306,0,0,1885,1886,3,68,34,0,1886,67,1,0,0,0,1887,1896,3,70,35,0,1888,1889,5,411,0,0,1889,1896,5,379,0,0,1890,1891,5,349,0,0,1891,1892,5,235,0,0,1892,1896,5,242,0,0,1893,1894,5,325,0,0,1894,1896,5,106,0,0,1895,1887,1,0,0,0,1895,1888,1,0,0,0,1895,1890,1,0,0,0,1895,1893,1,0,0,0,1896,69,1,0,0,0,1897,1900,3,50,25,0,1898,1900,5,30,0,0,1899,1897,1,0,0,0,1899,1898,1,0,0,0,1900,71,1,0,0,0,1901,1902,5,326,0,0,1902,1905,3,44,22,0,1903,1905,3,66,33,0,1904,1901,1,0,0,0,1904,1903,1,0,0,0,1905,73,1,0,0,0,1906,1907,5,326,0,0,1907,1910,3,48,24,0,1908,1910,3,66,33,0,1909,1906,1,0,0,0,1909,1908,1,0,0,0,1910,75,1,0,0,0,1911,1921,5,328,0,0,1912,1922,3,50,25,0,1913,1914,5,411,0,0,1914,1922,5,379,0,0,1915,1916,5,349,0,0,1916,1917,5,235,0,0,1917,1922,5,242,0,0,1918,1919,5,325,0,0,1919,1922,5,106,0,0,1920,1922,5,30,0,0,1921,1912,1,0,0,0,1921,1913,1,0,0,0,1921,1915,1,0,0,0,1921,1918,1,0,0,0,1921,1920,1,0,0,0,1922,77,1,0,0,0,1923,1924,5,326,0,0,1924,1925,5,165,0,0,1925,1926,3,80,40,0,1926,1927,3,82,41,0,1927,79,1,0,0,0,1928,1931,5,30,0,0,1929,1931,3,1208,604,0,1930,1928,1,0,0,0,1930,1929,1,0,0,0,1931,81,1,0,0,0,1932,1933,7,5,0,0,1933,83,1,0,0,0,1934,1935,5,155,0,0,1935,85,1,0,0,0,1936,1937,5,187,0,0,1937,1938,7,6,0,0,1938,87,1,0,0,0,1939,1940,5,138,0,0,1940,1943,5,92,0,0,1941,1942,5,220,0,0,1942,1944,5,389,0,0,1943,1941,1,0,0,0,1943,1944,1,0,0,0,1944,1945,1,0,0,0,1945,1948,3,958,479,0,1946,1949,3,90,45,0,1947,1949,3,92,46,0,1948,1946,1,0,0,0,1948,1947,1,0,0,0,1949,2040,1,0,0,0,1950,1951,5,138,0,0,1951,1952,5,92,0,0,1952,1953,5,30,0,0,1953,1954,5,68,0,0,1954,1955,5,344,0,0,1955,1959,3,1234,617,0,1956,1957,5,274,0,0,1957,1958,5,147,0,0,1958,1960,3,1262,631,0,1959,1956,1,0,0,0,1959,1960,1,0,0,0,1960,1961,1,0,0,0,1961,1962,5,326,0,0,1962,1963,5,344,0,0,1963,1964,3,1234,617,0,1964,1965,3,840,420,0,1965,2040,1,0,0,0,1966,1967,5,138,0,0,1967,1970,5,226,0,0,1968,1969,5,220,0,0,1969,1971,5,389,0,0,1970,1968,1,0,0,0,1970,1971,1,0,0,0,1971,1972,1,0,0,0,1972,1975,3,1218,609,0,1973,1976,3,90,45,0,1974,1976,3,94,47,0,1975,1973,1,0,0,0,1975,1974,1,0,0,0,1976,2040,1,0,0,0,1977,1978,5,138,0,0,1978,1979,5,226,0,0,1979,1980,5,30,0,0,1980,1981,5,68,0,0,1981,1982,5,344,0,0,1982,1986,3,1234,617,0,1983,1984,5,274,0,0,1984,1985,5,147,0,0,1985,1987,3,1262,631,0,1986,1983,1,0,0,0,1986,1987,1,0,0,0,1987,1988,1,0,0,0,1988,1989,5,326,0,0,1989,1990,5,344,0,0,1990,1991,3,1234,617,0,1991,1992,3,840,420,0,1992,2040,1,0,0,0,1993,1994,5,138,0,0,1994,1997,5,369,0,0,1995,1996,5,220,0,0,1996,1998,5,389,0,0,1997,1995,1,0,0,0,1997,1998,1,0,0,0,1998,1999,1,0,0,0,1999,2e3,3,956,478,0,2e3,2001,3,90,45,0,2001,2040,1,0,0,0,2002,2003,5,138,0,0,2003,2004,5,251,0,0,2004,2007,5,369,0,0,2005,2006,5,220,0,0,2006,2008,5,389,0,0,2007,2005,1,0,0,0,2007,2008,1,0,0,0,2008,2009,1,0,0,0,2009,2010,3,1230,615,0,2010,2011,3,90,45,0,2011,2040,1,0,0,0,2012,2013,5,138,0,0,2013,2014,5,251,0,0,2014,2015,5,369,0,0,2015,2016,5,30,0,0,2016,2017,5,68,0,0,2017,2018,5,344,0,0,2018,2022,3,1234,617,0,2019,2020,5,274,0,0,2020,2021,5,147,0,0,2021,2023,3,1262,631,0,2022,2019,1,0,0,0,2022,2023,1,0,0,0,2023,2024,1,0,0,0,2024,2025,5,326,0,0,2025,2026,5,344,0,0,2026,2027,3,1234,617,0,2027,2028,3,840,420,0,2028,2040,1,0,0,0,2029,2030,5,138,0,0,2030,2031,5,63,0,0,2031,2034,5,92,0,0,2032,2033,5,220,0,0,2033,2035,5,389,0,0,2034,2032,1,0,0,0,2034,2035,1,0,0,0,2035,2036,1,0,0,0,2036,2037,3,958,479,0,2037,2038,3,90,45,0,2038,2040,1,0,0,0,2039,1939,1,0,0,0,2039,1950,1,0,0,0,2039,1966,1,0,0,0,2039,1977,1,0,0,0,2039,1993,1,0,0,0,2039,2002,1,0,0,0,2039,2012,1,0,0,0,2039,2029,1,0,0,0,2040,89,1,0,0,0,2041,2046,3,96,48,0,2042,2043,5,6,0,0,2043,2045,3,96,48,0,2044,2042,1,0,0,0,2045,2048,1,0,0,0,2046,2044,1,0,0,0,2046,2047,1,0,0,0,2047,91,1,0,0,0,2048,2046,1,0,0,0,2049,2050,5,435,0,0,2050,2051,5,278,0,0,2051,2052,3,1230,615,0,2052,2053,3,120,60,0,2053,2058,1,0,0,0,2054,2055,5,436,0,0,2055,2056,5,278,0,0,2056,2058,3,1230,615,0,2057,2049,1,0,0,0,2057,2054,1,0,0,0,2058,93,1,0,0,0,2059,2060,5,435,0,0,2060,2061,5,278,0,0,2061,2062,3,1230,615,0,2062,95,1,0,0,0,2063,2064,5,133,0,0,2064,2305,3,168,84,0,2065,2066,5,133,0,0,2066,2067,5,220,0,0,2067,2068,5,77,0,0,2068,2069,5,389,0,0,2069,2305,3,168,84,0,2070,2071,5,133,0,0,2071,2072,5,44,0,0,2072,2305,3,168,84,0,2073,2074,5,133,0,0,2074,2075,5,44,0,0,2075,2076,5,220,0,0,2076,2077,5,77,0,0,2077,2078,5,389,0,0,2078,2305,3,168,84,0,2079,2080,5,138,0,0,2080,2081,3,648,324,0,2081,2082,3,1264,632,0,2082,2083,3,98,49,0,2083,2305,1,0,0,0,2084,2085,5,138,0,0,2085,2086,3,648,324,0,2086,2087,3,1264,632,0,2087,2088,5,191,0,0,2088,2089,5,77,0,0,2089,2090,5,78,0,0,2090,2305,1,0,0,0,2091,2092,5,138,0,0,2092,2093,3,648,324,0,2093,2094,3,1264,632,0,2094,2095,5,326,0,0,2095,2096,5,77,0,0,2096,2097,5,78,0,0,2097,2305,1,0,0,0,2098,2099,5,138,0,0,2099,2100,3,648,324,0,2100,2101,3,1264,632,0,2101,2102,5,191,0,0,2102,2103,5,437,0,0,2103,2305,1,0,0,0,2104,2105,5,138,0,0,2105,2106,3,648,324,0,2106,2107,3,1264,632,0,2107,2108,5,191,0,0,2108,2109,5,437,0,0,2109,2110,5,220,0,0,2110,2111,5,389,0,0,2111,2305,1,0,0,0,2112,2113,5,138,0,0,2113,2114,3,648,324,0,2114,2115,3,1264,632,0,2115,2116,5,326,0,0,2116,2117,5,335,0,0,2117,2118,3,1258,629,0,2118,2305,1,0,0,0,2119,2120,5,138,0,0,2120,2121,3,648,324,0,2121,2122,3,1250,625,0,2122,2123,5,326,0,0,2123,2124,5,335,0,0,2124,2125,3,1258,629,0,2125,2305,1,0,0,0,2126,2127,5,138,0,0,2127,2128,3,648,324,0,2128,2129,3,1264,632,0,2129,2130,5,326,0,0,2130,2131,3,108,54,0,2131,2305,1,0,0,0,2132,2133,5,138,0,0,2133,2134,3,648,324,0,2134,2135,3,1264,632,0,2135,2136,5,306,0,0,2136,2137,3,108,54,0,2137,2305,1,0,0,0,2138,2139,5,138,0,0,2139,2140,3,648,324,0,2140,2141,3,1264,632,0,2141,2142,5,326,0,0,2142,2143,5,338,0,0,2143,2144,3,1264,632,0,2144,2305,1,0,0,0,2145,2146,5,138,0,0,2146,2147,3,648,324,0,2147,2148,3,1264,632,0,2148,2149,5,133,0,0,2149,2150,5,438,0,0,2150,2151,3,178,89,0,2151,2152,5,36,0,0,2152,2153,5,219,0,0,2153,2154,3,258,129,0,2154,2305,1,0,0,0,2155,2156,5,138,0,0,2156,2157,3,648,324,0,2157,2158,3,1264,632,0,2158,2159,3,116,58,0,2159,2305,1,0,0,0,2160,2161,5,138,0,0,2161,2162,3,648,324,0,2162,2163,3,1264,632,0,2163,2164,5,191,0,0,2164,2165,5,219,0,0,2165,2305,1,0,0,0,2166,2167,5,138,0,0,2167,2168,3,648,324,0,2168,2169,3,1264,632,0,2169,2170,5,191,0,0,2170,2171,5,219,0,0,2171,2172,5,220,0,0,2172,2173,5,389,0,0,2173,2305,1,0,0,0,2174,2175,5,191,0,0,2175,2176,3,648,324,0,2176,2177,5,220,0,0,2177,2178,5,389,0,0,2178,2179,3,1264,632,0,2179,2180,3,100,50,0,2180,2305,1,0,0,0,2181,2182,5,191,0,0,2182,2183,3,648,324,0,2183,2184,3,1264,632,0,2184,2185,3,100,50,0,2185,2305,1,0,0,0,2186,2187,5,138,0,0,2187,2188,3,648,324,0,2188,2189,3,1264,632,0,2189,2190,3,650,325,0,2190,2191,5,353,0,0,2191,2192,3,996,498,0,2192,2193,3,102,51,0,2193,2194,3,104,52,0,2194,2305,1,0,0,0,2195,2196,5,138,0,0,2196,2197,3,648,324,0,2197,2198,3,1264,632,0,2198,2199,3,306,153,0,2199,2305,1,0,0,0,2200,2201,5,133,0,0,2201,2305,3,188,94,0,2202,2203,5,138,0,0,2203,2204,5,45,0,0,2204,2206,3,1224,612,0,2205,2207,3,398,199,0,2206,2205,1,0,0,0,2207,2208,1,0,0,0,2208,2206,1,0,0,0,2208,2209,1,0,0,0,2209,2305,1,0,0,0,2210,2211,5,365,0,0,2211,2212,5,45,0,0,2212,2305,3,1224,612,0,2213,2214,5,191,0,0,2214,2217,5,45,0,0,2215,2216,5,220,0,0,2216,2218,5,389,0,0,2217,2215,1,0,0,0,2217,2218,1,0,0,0,2218,2219,1,0,0,0,2219,2220,3,1224,612,0,2220,2221,3,100,50,0,2221,2305,1,0,0,0,2222,2223,5,326,0,0,2223,2224,5,372,0,0,2224,2305,5,270,0,0,2225,2226,5,158,0,0,2226,2227,5,80,0,0,2227,2305,3,1234,617,0,2228,2229,5,326,0,0,2229,2230,5,372,0,0,2230,2305,5,158,0,0,2231,2232,5,326,0,0,2232,2305,5,439,0,0,2233,2234,5,326,0,0,2234,2305,5,360,0,0,2235,2237,5,193,0,0,2236,2238,7,7,0,0,2237,2236,1,0,0,0,2237,2238,1,0,0,0,2238,2239,1,0,0,0,2239,2240,5,350,0,0,2240,2305,3,1222,611,0,2241,2242,5,193,0,0,2242,2243,5,350,0,0,2243,2305,7,8,0,0,2244,2245,5,186,0,0,2245,2246,5,350,0,0,2246,2305,3,1222,611,0,2247,2248,5,186,0,0,2248,2249,5,350,0,0,2249,2305,7,8,0,0,2250,2251,5,193,0,0,2251,2252,5,314,0,0,2252,2305,3,1234,617,0,2253,2254,5,193,0,0,2254,2255,5,139,0,0,2255,2256,5,314,0,0,2256,2305,3,1234,617,0,2257,2258,5,193,0,0,2258,2259,5,305,0,0,2259,2260,5,314,0,0,2260,2305,3,1234,617,0,2261,2262,5,186,0,0,2262,2263,5,314,0,0,2263,2305,3,1234,617,0,2264,2265,5,228,0,0,2265,2305,3,1230,615,0,2266,2267,5,262,0,0,2267,2268,5,228,0,0,2268,2305,3,1230,615,0,2269,2270,5,268,0,0,2270,2305,3,470,235,0,2271,2272,5,77,0,0,2272,2305,5,268,0,0,2273,2274,5,275,0,0,2274,2275,5,94,0,0,2275,2305,3,1260,630,0,2276,2277,5,326,0,0,2277,2278,5,344,0,0,2278,2305,3,1234,617,0,2279,2280,5,326,0,0,2280,2305,3,108,54,0,2281,2282,5,306,0,0,2282,2305,3,108,54,0,2283,2284,5,305,0,0,2284,2285,5,219,0,0,2285,2305,3,106,53,0,2286,2287,5,193,0,0,2287,2288,5,407,0,0,2288,2289,5,242,0,0,2289,2305,5,320,0,0,2290,2291,5,186,0,0,2291,2292,5,407,0,0,2292,2293,5,242,0,0,2293,2305,5,320,0,0,2294,2295,5,209,0,0,2295,2296,5,407,0,0,2296,2297,5,242,0,0,2297,2305,5,320,0,0,2298,2299,5,262,0,0,2299,2300,5,209,0,0,2300,2301,5,407,0,0,2301,2302,5,242,0,0,2302,2305,5,320,0,0,2303,2305,3,306,153,0,2304,2063,1,0,0,0,2304,2065,1,0,0,0,2304,2070,1,0,0,0,2304,2073,1,0,0,0,2304,2079,1,0,0,0,2304,2084,1,0,0,0,2304,2091,1,0,0,0,2304,2098,1,0,0,0,2304,2104,1,0,0,0,2304,2112,1,0,0,0,2304,2119,1,0,0,0,2304,2126,1,0,0,0,2304,2132,1,0,0,0,2304,2138,1,0,0,0,2304,2145,1,0,0,0,2304,2155,1,0,0,0,2304,2160,1,0,0,0,2304,2166,1,0,0,0,2304,2174,1,0,0,0,2304,2181,1,0,0,0,2304,2186,1,0,0,0,2304,2195,1,0,0,0,2304,2200,1,0,0,0,2304,2202,1,0,0,0,2304,2210,1,0,0,0,2304,2213,1,0,0,0,2304,2222,1,0,0,0,2304,2225,1,0,0,0,2304,2228,1,0,0,0,2304,2231,1,0,0,0,2304,2233,1,0,0,0,2304,2235,1,0,0,0,2304,2241,1,0,0,0,2304,2244,1,0,0,0,2304,2247,1,0,0,0,2304,2250,1,0,0,0,2304,2253,1,0,0,0,2304,2257,1,0,0,0,2304,2261,1,0,0,0,2304,2264,1,0,0,0,2304,2266,1,0,0,0,2304,2269,1,0,0,0,2304,2271,1,0,0,0,2304,2273,1,0,0,0,2304,2276,1,0,0,0,2304,2279,1,0,0,0,2304,2281,1,0,0,0,2304,2283,1,0,0,0,2304,2286,1,0,0,0,2304,2290,1,0,0,0,2304,2294,1,0,0,0,2304,2298,1,0,0,0,2304,2303,1,0,0,0,2305,97,1,0,0,0,2306,2307,5,326,0,0,2307,2308,5,53,0,0,2308,2312,3,1038,519,0,2309,2310,5,191,0,0,2310,2312,5,53,0,0,2311,2306,1,0,0,0,2311,2309,1,0,0,0,2312,99,1,0,0,0,2313,2317,5,150,0,0,2314,2317,5,308,0,0,2315,2317,1,0,0,0,2316,2313,1,0,0,0,2316,2314,1,0,0,0,2316,2315,1,0,0,0,2317,101,1,0,0,0,2318,2319,5,43,0,0,2319,2322,3,470,235,0,2320,2322,1,0,0,0,2321,2318,1,0,0,0,2321,2320,1,0,0,0,2322,103,1,0,0,0,2323,2324,5,100,0,0,2324,2327,3,1038,519,0,2325,2327,1,0,0,0,2326,2323,1,0,0,0,2326,2325,1,0,0,0,2327,105,1,0,0,0,2328,2335,5,263,0,0,2329,2335,5,113,0,0,2330,2335,5,53,0,0,2331,2332,5,100,0,0,2332,2333,5,226,0,0,2333,2335,3,1218,609,0,2334,2328,1,0,0,0,2334,2329,1,0,0,0,2334,2330,1,0,0,0,2334,2331,1,0,0,0,2335,107,1,0,0,0,2336,2337,5,2,0,0,2337,2338,3,112,56,0,2338,2339,5,3,0,0,2339,109,1,0,0,0,2340,2341,5,105,0,0,2341,2344,3,108,54,0,2342,2344,1,0,0,0,2343,2340,1,0,0,0,2343,2342,1,0,0,0,2344,111,1,0,0,0,2345,2350,3,114,57,0,2346,2347,5,6,0,0,2347,2349,3,114,57,0,2348,2346,1,0,0,0,2349,2352,1,0,0,0,2350,2348,1,0,0,0,2350,2351,1,0,0,0,2351,113,1,0,0,0,2352,2350,1,0,0,0,2353,2362,3,1272,636,0,2354,2355,5,10,0,0,2355,2363,3,420,210,0,2356,2357,5,11,0,0,2357,2360,3,1272,636,0,2358,2359,5,10,0,0,2359,2361,3,420,210,0,2360,2358,1,0,0,0,2360,2361,1,0,0,0,2361,2363,1,0,0,0,2362,2354,1,0,0,0,2362,2356,1,0,0,0,2362,2363,1,0,0,0,2363,115,1,0,0,0,2364,2366,3,118,59,0,2365,2364,1,0,0,0,2366,2367,1,0,0,0,2367,2365,1,0,0,0,2367,2368,1,0,0,0,2368,117,1,0,0,0,2369,2373,5,307,0,0,2370,2371,3,12,6,0,2371,2372,3,264,132,0,2372,2374,1,0,0,0,2373,2370,1,0,0,0,2373,2374,1,0,0,0,2374,2382,1,0,0,0,2375,2379,5,326,0,0,2376,2380,3,262,131,0,2377,2378,5,438,0,0,2378,2380,3,178,89,0,2379,2376,1,0,0,0,2379,2377,1,0,0,0,2380,2382,1,0,0,0,2381,2369,1,0,0,0,2381,2375,1,0,0,0,2382,119,1,0,0,0,2383,2384,5,62,0,0,2384,2385,5,415,0,0,2385,2386,5,105,0,0,2386,2387,5,2,0,0,2387,2388,3,124,62,0,2388,2389,5,3,0,0,2389,2410,1,0,0,0,2390,2391,5,62,0,0,2391,2392,5,415,0,0,2392,2393,5,68,0,0,2393,2394,5,2,0,0,2394,2395,3,1156,578,0,2395,2396,5,3,0,0,2396,2410,1,0,0,0,2397,2398,5,62,0,0,2398,2399,5,415,0,0,2399,2400,5,64,0,0,2400,2401,5,2,0,0,2401,2402,3,1156,578,0,2402,2403,5,3,0,0,2403,2404,5,94,0,0,2404,2405,5,2,0,0,2405,2406,3,1156,578,0,2406,2407,5,3,0,0,2407,2410,1,0,0,0,2408,2410,5,53,0,0,2409,2383,1,0,0,0,2409,2390,1,0,0,0,2409,2397,1,0,0,0,2409,2408,1,0,0,0,2410,121,1,0,0,0,2411,2412,3,1270,635,0,2412,2413,3,1250,625,0,2413,123,1,0,0,0,2414,2419,3,122,61,0,2415,2416,5,6,0,0,2416,2418,3,122,61,0,2417,2415,1,0,0,0,2418,2421,1,0,0,0,2419,2417,1,0,0,0,2419,2420,1,0,0,0,2420,125,1,0,0,0,2421,2419,1,0,0,0,2422,2423,5,138,0,0,2423,2424,5,353,0,0,2424,2425,3,470,235,0,2425,2426,3,128,64,0,2426,127,1,0,0,0,2427,2432,3,130,65,0,2428,2429,5,6,0,0,2429,2431,3,130,65,0,2430,2428,1,0,0,0,2431,2434,1,0,0,0,2432,2430,1,0,0,0,2432,2433,1,0,0,0,2433,129,1,0,0,0,2434,2432,1,0,0,0,2435,2436,5,133,0,0,2436,2437,5,143,0,0,2437,2438,3,982,491,0,2438,2439,3,100,50,0,2439,2459,1,0,0,0,2440,2441,5,191,0,0,2441,2444,5,143,0,0,2442,2443,5,220,0,0,2443,2445,5,389,0,0,2444,2442,1,0,0,0,2444,2445,1,0,0,0,2445,2446,1,0,0,0,2446,2447,3,1264,632,0,2447,2448,3,100,50,0,2448,2459,1,0,0,0,2449,2450,5,138,0,0,2450,2451,5,143,0,0,2451,2452,3,1264,632,0,2452,2453,3,650,325,0,2453,2454,5,353,0,0,2454,2455,3,996,498,0,2455,2456,3,102,51,0,2456,2457,3,100,50,0,2457,2459,1,0,0,0,2458,2435,1,0,0,0,2458,2440,1,0,0,0,2458,2449,1,0,0,0,2459,131,1,0,0,0,2460,2463,5,157,0,0,2461,2464,3,854,427,0,2462,2464,5,30,0,0,2463,2461,1,0,0,0,2463,2462,1,0,0,0,2464,133,1,0,0,0,2465,2467,5,169,0,0,2466,2468,5,107,0,0,2467,2466,1,0,0,0,2467,2468,1,0,0,0,2468,2469,1,0,0,0,2469,2470,3,1230,615,0,2470,2471,3,192,96,0,2471,2473,3,136,68,0,2472,2474,5,290,0,0,2473,2472,1,0,0,0,2473,2474,1,0,0,0,2474,2475,1,0,0,0,2475,2476,3,138,69,0,2476,2477,3,144,72,0,2477,2478,3,12,6,0,2478,2479,3,140,70,0,2479,2480,3,974,487,0,2480,2494,1,0,0,0,2481,2482,5,169,0,0,2482,2483,5,2,0,0,2483,2484,3,796,398,0,2484,2485,5,3,0,0,2485,2487,5,94,0,0,2486,2488,5,290,0,0,2487,2486,1,0,0,0,2487,2488,1,0,0,0,2488,2489,1,0,0,0,2489,2490,3,138,69,0,2490,2491,3,12,6,0,2491,2492,3,140,70,0,2492,2494,1,0,0,0,2493,2465,1,0,0,0,2493,2481,1,0,0,0,2494,135,1,0,0,0,2495,2496,7,9,0,0,2496,137,1,0,0,0,2497,2501,3,1252,626,0,2498,2501,5,336,0,0,2499,2501,5,337,0,0,2500,2497,1,0,0,0,2500,2498,1,0,0,0,2500,2499,1,0,0,0,2501,139,1,0,0,0,2502,2504,3,142,71,0,2503,2502,1,0,0,0,2504,2507,1,0,0,0,2505,2503,1,0,0,0,2505,2506,1,0,0,0,2506,2513,1,0,0,0,2507,2505,1,0,0,0,2508,2509,5,2,0,0,2509,2510,3,146,73,0,2510,2511,5,3,0,0,2511,2513,1,0,0,0,2512,2505,1,0,0,0,2512,2508,1,0,0,0,2513,141,1,0,0,0,2514,2550,5,107,0,0,2515,2550,5,112,0,0,2516,2517,5,183,0,0,2517,2518,3,748,374,0,2518,2519,3,1252,626,0,2519,2550,1,0,0,0,2520,2521,5,78,0,0,2521,2522,3,748,374,0,2522,2523,3,1252,626,0,2523,2550,1,0,0,0,2524,2550,5,171,0,0,2525,2550,5,216,0,0,2526,2527,5,291,0,0,2527,2528,3,748,374,0,2528,2529,3,1252,626,0,2529,2550,1,0,0,0,2530,2531,5,197,0,0,2531,2532,3,748,374,0,2532,2533,3,1252,626,0,2533,2550,1,0,0,0,2534,2535,5,209,0,0,2535,2536,5,291,0,0,2536,2550,3,194,97,0,2537,2538,5,209,0,0,2538,2539,5,291,0,0,2539,2550,5,9,0,0,2540,2541,5,209,0,0,2541,2542,5,77,0,0,2542,2543,5,78,0,0,2543,2550,3,194,97,0,2544,2545,5,209,0,0,2545,2546,5,78,0,0,2546,2550,3,194,97,0,2547,2548,5,194,0,0,2548,2550,3,1252,626,0,2549,2514,1,0,0,0,2549,2515,1,0,0,0,2549,2516,1,0,0,0,2549,2520,1,0,0,0,2549,2524,1,0,0,0,2549,2525,1,0,0,0,2549,2526,1,0,0,0,2549,2530,1,0,0,0,2549,2534,1,0,0,0,2549,2537,1,0,0,0,2549,2540,1,0,0,0,2549,2544,1,0,0,0,2549,2547,1,0,0,0,2550,143,1,0,0,0,2551,2553,5,100,0,0,2552,2551,1,0,0,0,2552,2553,1,0,0,0,2553,2554,1,0,0,0,2554,2555,5,184,0,0,2555,2558,3,1252,626,0,2556,2558,1,0,0,0,2557,2552,1,0,0,0,2557,2556,1,0,0,0,2558,145,1,0,0,0,2559,2564,3,148,74,0,2560,2561,5,6,0,0,2561,2563,3,148,74,0,2562,2560,1,0,0,0,2563,2566,1,0,0,0,2564,2562,1,0,0,0,2564,2565,1,0,0,0,2565,147,1,0,0,0,2566,2564,1,0,0,0,2567,2568,3,1272,636,0,2568,2569,3,150,75,0,2569,149,1,0,0,0,2570,2586,3,58,29,0,2571,2586,3,264,132,0,2572,2586,5,9,0,0,2573,2574,5,2,0,0,2574,2579,3,58,29,0,2575,2576,5,6,0,0,2576,2578,3,58,29,0,2577,2575,1,0,0,0,2578,2581,1,0,0,0,2579,2577,1,0,0,0,2579,2580,1,0,0,0,2580,2582,1,0,0,0,2581,2579,1,0,0,0,2582,2583,5,3,0,0,2583,2586,1,0,0,0,2584,2586,1,0,0,0,2585,2570,1,0,0,0,2585,2571,1,0,0,0,2585,2572,1,0,0,0,2585,2573,1,0,0,0,2585,2584,1,0,0,0,2586,151,1,0,0,0,2587,2588,5,46,0,0,2588,2589,3,154,77,0,2589,2593,5,92,0,0,2590,2591,5,220,0,0,2591,2592,5,77,0,0,2592,2594,5,389,0,0,2593,2590,1,0,0,0,2593,2594,1,0,0,0,2594,2595,1,0,0,0,2595,2626,3,1230,615,0,2596,2597,5,2,0,0,2597,2598,3,156,78,0,2598,2599,5,3,0,0,2599,2600,3,216,108,0,2600,2601,3,218,109,0,2601,2602,3,226,113,0,2602,2603,3,228,114,0,2603,2604,3,230,115,0,2604,2605,3,232,116,0,2605,2627,1,0,0,0,2606,2607,5,268,0,0,2607,2608,3,470,235,0,2608,2609,3,158,79,0,2609,2610,3,218,109,0,2610,2611,3,226,113,0,2611,2612,3,228,114,0,2612,2613,3,230,115,0,2613,2614,3,232,116,0,2614,2627,1,0,0,0,2615,2616,5,278,0,0,2616,2617,5,268,0,0,2617,2618,3,1230,615,0,2618,2619,3,158,79,0,2619,2620,3,120,60,0,2620,2621,3,218,109,0,2621,2622,3,226,113,0,2622,2623,3,228,114,0,2623,2624,3,230,115,0,2624,2625,3,232,116,0,2625,2627,1,0,0,0,2626,2596,1,0,0,0,2626,2606,1,0,0,0,2626,2615,1,0,0,0,2627,153,1,0,0,0,2628,2637,5,347,0,0,2629,2637,5,345,0,0,2630,2631,5,245,0,0,2631,2637,7,10,0,0,2632,2633,5,213,0,0,2633,2637,7,10,0,0,2634,2637,5,360,0,0,2635,2637,1,0,0,0,2636,2628,1,0,0,0,2636,2629,1,0,0,0,2636,2630,1,0,0,0,2636,2632,1,0,0,0,2636,2634,1,0,0,0,2636,2635,1,0,0,0,2637,155,1,0,0,0,2638,2641,3,160,80,0,2639,2641,1,0,0,0,2640,2638,1,0,0,0,2640,2639,1,0,0,0,2641,157,1,0,0,0,2642,2643,5,2,0,0,2643,2644,3,162,81,0,2644,2645,5,3,0,0,2645,2648,1,0,0,0,2646,2648,1,0,0,0,2647,2642,1,0,0,0,2647,2646,1,0,0,0,2648,159,1,0,0,0,2649,2654,3,164,82,0,2650,2651,5,6,0,0,2651,2653,3,164,82,0,2652,2650,1,0,0,0,2653,2656,1,0,0,0,2654,2652,1,0,0,0,2654,2655,1,0,0,0,2655,161,1,0,0,0,2656,2654,1,0,0,0,2657,2662,3,166,83,0,2658,2659,5,6,0,0,2659,2661,3,166,83,0,2660,2658,1,0,0,0,2661,2664,1,0,0,0,2662,2660,1,0,0,0,2662,2663,1,0,0,0,2663,163,1,0,0,0,2664,2662,1,0,0,0,2665,2669,3,188,94,0,2666,2669,3,182,91,0,2667,2669,3,168,84,0,2668,2665,1,0,0,0,2668,2666,1,0,0,0,2668,2667,1,0,0,0,2669,165,1,0,0,0,2670,2673,3,170,85,0,2671,2673,3,188,94,0,2672,2670,1,0,0,0,2672,2671,1,0,0,0,2673,167,1,0,0,0,2674,2675,3,1264,632,0,2675,2676,3,996,498,0,2676,2677,3,302,151,0,2677,2678,3,172,86,0,2678,169,1,0,0,0,2679,2682,3,1264,632,0,2680,2681,5,105,0,0,2681,2683,5,273,0,0,2682,2680,1,0,0,0,2682,2683,1,0,0,0,2683,2684,1,0,0,0,2684,2685,3,172,86,0,2685,171,1,0,0,0,2686,2688,3,174,87,0,2687,2686,1,0,0,0,2688,2691,1,0,0,0,2689,2687,1,0,0,0,2689,2690,1,0,0,0,2690,173,1,0,0,0,2691,2689,1,0,0,0,2692,2693,5,45,0,0,2693,2694,3,1234,617,0,2694,2695,3,176,88,0,2695,2701,1,0,0,0,2696,2701,3,176,88,0,2697,2701,3,180,90,0,2698,2699,5,43,0,0,2699,2701,3,470,235,0,2700,2692,1,0,0,0,2700,2696,1,0,0,0,2700,2697,1,0,0,0,2700,2698,1,0,0,0,2701,175,1,0,0,0,2702,2703,5,77,0,0,2703,2743,5,78,0,0,2704,2743,5,78,0,0,2705,2706,5,98,0,0,2706,2707,3,594,297,0,2707,2708,3,234,117,0,2708,2743,1,0,0,0,2709,2710,5,85,0,0,2710,2711,5,236,0,0,2711,2712,3,594,297,0,2712,2713,3,234,117,0,2713,2743,1,0,0,0,2714,2715,5,42,0,0,2715,2716,5,2,0,0,2716,2717,3,1038,519,0,2717,2720,5,3,0,0,2718,2719,5,262,0,0,2719,2721,5,228,0,0,2720,2718,1,0,0,0,2720,2721,1,0,0,0,2721,2743,1,0,0,0,2722,2723,5,53,0,0,2723,2743,3,1080,540,0,2724,2725,5,438,0,0,2725,2726,3,178,89,0,2726,2734,5,36,0,0,2727,2728,5,219,0,0,2728,2735,3,258,129,0,2729,2730,5,2,0,0,2730,2731,3,1038,519,0,2731,2732,5,3,0,0,2732,2733,5,440,0,0,2733,2735,1,0,0,0,2734,2727,1,0,0,0,2734,2729,1,0,0,0,2735,2743,1,0,0,0,2736,2737,5,86,0,0,2737,2738,3,1230,615,0,2738,2739,3,192,96,0,2739,2740,3,200,100,0,2740,2741,3,208,104,0,2741,2743,1,0,0,0,2742,2702,1,0,0,0,2742,2704,1,0,0,0,2742,2705,1,0,0,0,2742,2709,1,0,0,0,2742,2714,1,0,0,0,2742,2722,1,0,0,0,2742,2724,1,0,0,0,2742,2736,1,0,0,0,2743,177,1,0,0,0,2744,2748,5,139,0,0,2745,2746,5,147,0,0,2746,2748,5,53,0,0,2747,2744,1,0,0,0,2747,2745,1,0,0,0,2748,179,1,0,0,0,2749,2755,5,54,0,0,2750,2751,5,77,0,0,2751,2755,5,54,0,0,2752,2753,5,69,0,0,2753,2755,7,5,0,0,2754,2749,1,0,0,0,2754,2750,1,0,0,0,2754,2752,1,0,0,0,2755,181,1,0,0,0,2756,2757,5,120,0,0,2757,2758,3,1230,615,0,2758,2759,3,184,92,0,2759,183,1,0,0,0,2760,2761,7,11,0,0,2761,2763,3,186,93,0,2762,2760,1,0,0,0,2763,2766,1,0,0,0,2764,2762,1,0,0,0,2764,2765,1,0,0,0,2765,185,1,0,0,0,2766,2764,1,0,0,0,2767,2768,7,12,0,0,2768,187,1,0,0,0,2769,2770,5,45,0,0,2770,2771,3,1234,617,0,2771,2772,3,190,95,0,2772,2775,1,0,0,0,2773,2775,3,190,95,0,2774,2769,1,0,0,0,2774,2773,1,0,0,0,2775,189,1,0,0,0,2776,2777,5,42,0,0,2777,2778,5,2,0,0,2778,2779,3,1038,519,0,2779,2780,5,3,0,0,2780,2781,3,396,198,0,2781,2835,1,0,0,0,2782,2794,5,98,0,0,2783,2784,5,2,0,0,2784,2785,3,194,97,0,2785,2786,5,3,0,0,2786,2787,3,198,99,0,2787,2788,3,594,297,0,2788,2789,3,234,117,0,2789,2790,3,396,198,0,2790,2795,1,0,0,0,2791,2792,3,236,118,0,2792,2793,3,396,198,0,2793,2795,1,0,0,0,2794,2783,1,0,0,0,2794,2791,1,0,0,0,2795,2835,1,0,0,0,2796,2797,5,85,0,0,2797,2809,5,236,0,0,2798,2799,5,2,0,0,2799,2800,3,194,97,0,2800,2801,5,3,0,0,2801,2802,3,198,99,0,2802,2803,3,594,297,0,2803,2804,3,234,117,0,2804,2805,3,396,198,0,2805,2810,1,0,0,0,2806,2807,3,236,118,0,2807,2808,3,396,198,0,2808,2810,1,0,0,0,2809,2798,1,0,0,0,2809,2806,1,0,0,0,2810,2835,1,0,0,0,2811,2812,5,199,0,0,2812,2813,3,534,267,0,2813,2814,5,2,0,0,2814,2815,3,202,101,0,2815,2816,5,3,0,0,2816,2817,3,198,99,0,2817,2818,3,594,297,0,2818,2819,3,234,117,0,2819,2820,3,206,103,0,2820,2821,3,396,198,0,2821,2835,1,0,0,0,2822,2823,5,63,0,0,2823,2824,5,236,0,0,2824,2825,5,2,0,0,2825,2826,3,194,97,0,2826,2827,5,3,0,0,2827,2828,5,86,0,0,2828,2829,3,1230,615,0,2829,2830,3,192,96,0,2830,2831,3,200,100,0,2831,2832,3,208,104,0,2832,2833,3,396,198,0,2833,2835,1,0,0,0,2834,2776,1,0,0,0,2834,2782,1,0,0,0,2834,2796,1,0,0,0,2834,2811,1,0,0,0,2834,2822,1,0,0,0,2835,191,1,0,0,0,2836,2837,5,2,0,0,2837,2838,3,194,97,0,2838,2839,5,3,0,0,2839,2842,1,0,0,0,2840,2842,1,0,0,0,2841,2836,1,0,0,0,2841,2840,1,0,0,0,2842,193,1,0,0,0,2843,2848,3,196,98,0,2844,2845,5,6,0,0,2845,2847,3,196,98,0,2846,2844,1,0,0,0,2847,2850,1,0,0,0,2848,2846,1,0,0,0,2848,2849,1,0,0,0,2849,195,1,0,0,0,2850,2848,1,0,0,0,2851,2852,3,1264,632,0,2852,197,1,0,0,0,2853,2854,5,441,0,0,2854,2855,5,2,0,0,2855,2856,3,194,97,0,2856,2857,5,3,0,0,2857,2860,1,0,0,0,2858,2860,1,0,0,0,2859,2853,1,0,0,0,2859,2858,1,0,0,0,2860,199,1,0,0,0,2861,2862,5,249,0,0,2862,2865,7,13,0,0,2863,2865,1,0,0,0,2864,2861,1,0,0,0,2864,2863,1,0,0,0,2865,201,1,0,0,0,2866,2871,3,204,102,0,2867,2868,5,6,0,0,2868,2870,3,204,102,0,2869,2867,1,0,0,0,2870,2873,1,0,0,0,2871,2869,1,0,0,0,2871,2872,1,0,0,0,2872,203,1,0,0,0,2873,2871,1,0,0,0,2874,2875,3,540,270,0,2875,2882,5,105,0,0,2876,2883,3,610,305,0,2877,2878,5,271,0,0,2878,2879,5,2,0,0,2879,2880,3,610,305,0,2880,2881,5,3,0,0,2881,2883,1,0,0,0,2882,2876,1,0,0,0,2882,2877,1,0,0,0,2883,205,1,0,0,0,2884,2885,5,103,0,0,2885,2886,5,2,0,0,2886,2887,3,1038,519,0,2887,2888,5,3,0,0,2888,2891,1,0,0,0,2889,2891,1,0,0,0,2890,2884,1,0,0,0,2890,2889,1,0,0,0,2891,207,1,0,0,0,2892,2902,3,210,105,0,2893,2902,3,212,106,0,2894,2895,3,210,105,0,2895,2896,3,212,106,0,2896,2902,1,0,0,0,2897,2898,3,212,106,0,2898,2899,3,210,105,0,2899,2902,1,0,0,0,2900,2902,1,0,0,0,2901,2892,1,0,0,0,2901,2893,1,0,0,0,2901,2894,1,0,0,0,2901,2897,1,0,0,0,2901,2900,1,0,0,0,2902,209,1,0,0,0,2903,2904,5,80,0,0,2904,2905,5,362,0,0,2905,2906,3,214,107,0,2906,211,1,0,0,0,2907,2908,5,80,0,0,2908,2909,5,182,0,0,2909,2910,3,214,107,0,2910,213,1,0,0,0,2911,2912,5,262,0,0,2912,2918,5,132,0,0,2913,2918,5,308,0,0,2914,2918,5,150,0,0,2915,2916,5,326,0,0,2916,2918,7,14,0,0,2917,2911,1,0,0,0,2917,2913,1,0,0,0,2917,2914,1,0,0,0,2917,2915,1,0,0,0,2918,215,1,0,0,0,2919,2920,5,229,0,0,2920,2921,5,2,0,0,2921,2922,3,1208,604,0,2922,2923,5,3,0,0,2923,2926,1,0,0,0,2924,2926,1,0,0,0,2925,2919,1,0,0,0,2925,2924,1,0,0,0,2926,217,1,0,0,0,2927,2930,3,220,110,0,2928,2930,1,0,0,0,2929,2927,1,0,0,0,2929,2928,1,0,0,0,2930,219,1,0,0,0,2931,2932,5,278,0,0,2932,2933,5,147,0,0,2933,2934,3,1264,632,0,2934,2935,5,2,0,0,2935,2936,3,222,111,0,2936,2937,5,3,0,0,2937,221,1,0,0,0,2938,2943,3,224,112,0,2939,2940,5,6,0,0,2940,2942,3,224,112,0,2941,2939,1,0,0,0,2942,2945,1,0,0,0,2943,2941,1,0,0,0,2943,2944,1,0,0,0,2944,223,1,0,0,0,2945,2943,1,0,0,0,2946,2947,3,1264,632,0,2947,2948,3,544,272,0,2948,2949,3,546,273,0,2949,2961,1,0,0,0,2950,2951,3,1090,545,0,2951,2952,3,544,272,0,2952,2953,3,546,273,0,2953,2961,1,0,0,0,2954,2955,5,2,0,0,2955,2956,3,1038,519,0,2956,2957,5,3,0,0,2957,2958,3,544,272,0,2958,2959,3,546,273,0,2959,2961,1,0,0,0,2960,2946,1,0,0,0,2960,2950,1,0,0,0,2960,2954,1,0,0,0,2961,225,1,0,0,0,2962,2963,5,100,0,0,2963,2966,3,1234,617,0,2964,2966,1,0,0,0,2965,2962,1,0,0,0,2965,2964,1,0,0,0,2966,227,1,0,0,0,2967,2968,5,105,0,0,2968,2973,3,108,54,0,2969,2970,5,372,0,0,2970,2973,5,270,0,0,2971,2973,1,0,0,0,2972,2967,1,0,0,0,2972,2969,1,0,0,0,2972,2971,1,0,0,0,2973,229,1,0,0,0,2974,2975,5,80,0,0,2975,2981,5,161,0,0,2976,2982,5,191,0,0,2977,2978,5,182,0,0,2978,2982,5,313,0,0,2979,2980,5,285,0,0,2980,2982,5,313,0,0,2981,2976,1,0,0,0,2981,2977,1,0,0,0,2981,2979,1,0,0,0,2982,2985,1,0,0,0,2983,2985,1,0,0,0,2984,2974,1,0,0,0,2984,2983,1,0,0,0,2985,231,1,0,0,0,2986,2987,5,344,0,0,2987,2990,3,1234,617,0,2988,2990,1,0,0,0,2989,2986,1,0,0,0,2989,2988,1,0,0,0,2990,233,1,0,0,0,2991,2992,5,100,0,0,2992,2993,5,226,0,0,2993,2994,5,344,0,0,2994,2997,3,1234,617,0,2995,2997,1,0,0,0,2996,2991,1,0,0,0,2996,2995,1,0,0,0,2997,235,1,0,0,0,2998,2999,5,100,0,0,2999,3e3,5,226,0,0,3e3,3001,3,1218,609,0,3001,237,1,0,0,0,3002,3003,5,46,0,0,3003,3007,5,335,0,0,3004,3005,5,220,0,0,3005,3006,5,77,0,0,3006,3008,5,389,0,0,3007,3004,1,0,0,0,3007,3008,1,0,0,0,3008,3009,1,0,0,0,3009,3010,3,470,235,0,3010,3011,3,776,388,0,3011,3012,5,80,0,0,3012,3013,3,1156,578,0,3013,3014,5,64,0,0,3014,3015,3,938,469,0,3015,239,1,0,0,0,3016,3017,5,138,0,0,3017,3020,5,335,0,0,3018,3019,5,220,0,0,3019,3021,5,389,0,0,3020,3018,1,0,0,0,3020,3021,1,0,0,0,3021,3022,1,0,0,0,3022,3023,3,470,235,0,3023,3024,5,326,0,0,3024,3025,5,335,0,0,3025,3026,3,1258,629,0,3026,241,1,0,0,0,3027,3028,5,46,0,0,3028,3029,3,154,77,0,3029,3033,5,92,0,0,3030,3031,5,220,0,0,3031,3032,5,77,0,0,3032,3034,5,389,0,0,3033,3030,1,0,0,0,3033,3034,1,0,0,0,3034,3035,1,0,0,0,3035,3036,3,244,122,0,3036,3037,5,36,0,0,3037,3038,3,858,429,0,3038,3039,3,246,123,0,3039,243,1,0,0,0,3040,3041,3,1230,615,0,3041,3042,3,192,96,0,3042,3043,3,226,113,0,3043,3044,3,228,114,0,3044,3045,3,230,115,0,3045,3046,3,232,116,0,3046,245,1,0,0,0,3047,3051,5,105,0,0,3048,3052,5,174,0,0,3049,3050,5,262,0,0,3050,3052,5,174,0,0,3051,3048,1,0,0,0,3051,3049,1,0,0,0,3052,3055,1,0,0,0,3053,3055,1,0,0,0,3054,3047,1,0,0,0,3054,3053,1,0,0,0,3055,247,1,0,0,0,3056,3058,5,46,0,0,3057,3059,5,360,0,0,3058,3057,1,0,0,0,3058,3059,1,0,0,0,3059,3060,1,0,0,0,3060,3061,5,251,0,0,3061,3065,5,369,0,0,3062,3063,5,220,0,0,3063,3064,5,77,0,0,3064,3066,5,389,0,0,3065,3062,1,0,0,0,3065,3066,1,0,0,0,3066,3067,1,0,0,0,3067,3068,3,250,125,0,3068,3069,5,36,0,0,3069,3070,3,858,429,0,3070,3071,3,246,123,0,3071,249,1,0,0,0,3072,3073,3,1230,615,0,3073,3074,3,192,96,0,3074,3075,3,226,113,0,3075,3076,3,110,55,0,3076,3077,3,232,116,0,3077,251,1,0,0,0,3078,3079,5,298,0,0,3079,3080,5,251,0,0,3080,3082,5,369,0,0,3081,3083,5,109,0,0,3082,3081,1,0,0,0,3082,3083,1,0,0,0,3083,3084,1,0,0,0,3084,3085,3,1230,615,0,3085,3086,3,246,123,0,3086,253,1,0,0,0,3087,3088,5,46,0,0,3088,3089,3,154,77,0,3089,3093,5,321,0,0,3090,3091,5,220,0,0,3091,3092,5,77,0,0,3092,3094,5,389,0,0,3093,3090,1,0,0,0,3093,3094,1,0,0,0,3094,3095,1,0,0,0,3095,3097,3,1230,615,0,3096,3098,3,260,130,0,3097,3096,1,0,0,0,3097,3098,1,0,0,0,3098,255,1,0,0,0,3099,3100,5,138,0,0,3100,3103,5,321,0,0,3101,3102,5,220,0,0,3102,3104,5,389,0,0,3103,3101,1,0,0,0,3103,3104,1,0,0,0,3104,3105,1,0,0,0,3105,3106,3,1226,613,0,3106,3107,3,260,130,0,3107,257,1,0,0,0,3108,3109,5,2,0,0,3109,3110,3,260,130,0,3110,3111,5,3,0,0,3111,3114,1,0,0,0,3112,3114,1,0,0,0,3113,3108,1,0,0,0,3113,3112,1,0,0,0,3114,259,1,0,0,0,3115,3117,3,262,131,0,3116,3115,1,0,0,0,3117,3118,1,0,0,0,3118,3116,1,0,0,0,3118,3119,1,0,0,0,3119,261,1,0,0,0,3120,3121,5,36,0,0,3121,3152,3,998,499,0,3122,3123,5,148,0,0,3123,3152,3,264,132,0,3124,3152,5,173,0,0,3125,3127,5,225,0,0,3126,3128,5,147,0,0,3127,3126,1,0,0,0,3127,3128,1,0,0,0,3128,3129,1,0,0,0,3129,3152,3,264,132,0,3130,3131,5,252,0,0,3131,3152,3,264,132,0,3132,3133,5,255,0,0,3133,3152,3,264,132,0,3134,3135,5,262,0,0,3135,3152,7,15,0,0,3136,3137,5,274,0,0,3137,3138,5,147,0,0,3138,3152,3,470,235,0,3139,3140,5,321,0,0,3140,3141,5,259,0,0,3141,3152,3,470,235,0,3142,3143,5,333,0,0,3143,3144,3,12,6,0,3144,3145,3,264,132,0,3145,3152,1,0,0,0,3146,3147,5,307,0,0,3147,3149,3,12,6,0,3148,3150,3,264,132,0,3149,3148,1,0,0,0,3149,3150,1,0,0,0,3150,3152,1,0,0,0,3151,3120,1,0,0,0,3151,3122,1,0,0,0,3151,3124,1,0,0,0,3151,3125,1,0,0,0,3151,3130,1,0,0,0,3151,3132,1,0,0,0,3151,3134,1,0,0,0,3151,3136,1,0,0,0,3151,3139,1,0,0,0,3151,3142,1,0,0,0,3151,3146,1,0,0,0,3152,263,1,0,0,0,3153,3160,3,1248,624,0,3154,3155,5,12,0,0,3155,3160,3,1248,624,0,3156,3157,5,13,0,0,3157,3160,3,1248,624,0,3158,3160,3,1258,629,0,3159,3153,1,0,0,0,3159,3154,1,0,0,0,3159,3156,1,0,0,0,3159,3158,1,0,0,0,3160,265,1,0,0,0,3161,3166,3,264,132,0,3162,3163,5,6,0,0,3163,3165,3,264,132,0,3164,3162,1,0,0,0,3165,3168,1,0,0,0,3166,3164,1,0,0,0,3166,3167,1,0,0,0,3167,267,1,0,0,0,3168,3166,1,0,0,0,3169,3170,5,46,0,0,3170,3172,3,554,277,0,3171,3173,5,352,0,0,3172,3171,1,0,0,0,3172,3173,1,0,0,0,3173,3174,1,0,0,0,3174,3175,3,276,138,0,3175,3176,5,238,0,0,3176,3183,3,1234,617,0,3177,3178,5,215,0,0,3178,3179,3,270,135,0,3179,3181,3,272,136,0,3180,3182,3,274,137,0,3181,3180,1,0,0,0,3181,3182,1,0,0,0,3182,3184,1,0,0,0,3183,3177,1,0,0,0,3183,3184,1,0,0,0,3184,269,1,0,0,0,3185,3187,3,1234,617,0,3186,3188,3,472,236,0,3187,3186,1,0,0,0,3187,3188,1,0,0,0,3188,271,1,0,0,0,3189,3190,5,230,0,0,3190,3193,3,270,135,0,3191,3193,1,0,0,0,3192,3189,1,0,0,0,3192,3191,1,0,0,0,3193,273,1,0,0,0,3194,3195,5,366,0,0,3195,3199,3,270,135,0,3196,3197,5,262,0,0,3197,3199,5,366,0,0,3198,3194,1,0,0,0,3198,3196,1,0,0,0,3199,275,1,0,0,0,3200,3203,5,288,0,0,3201,3203,1,0,0,0,3202,3200,1,0,0,0,3202,3201,1,0,0,0,3203,277,1,0,0,0,3204,3205,5,46,0,0,3205,3206,5,344,0,0,3206,3207,3,1234,617,0,3207,3208,3,280,140,0,3208,3209,5,246,0,0,3209,3210,3,1252,626,0,3210,3211,3,110,55,0,3211,279,1,0,0,0,3212,3213,5,275,0,0,3213,3216,3,1260,630,0,3214,3216,1,0,0,0,3215,3212,1,0,0,0,3215,3214,1,0,0,0,3216,281,1,0,0,0,3217,3218,5,191,0,0,3218,3221,5,344,0,0,3219,3220,5,220,0,0,3220,3222,5,389,0,0,3221,3219,1,0,0,0,3221,3222,1,0,0,0,3222,3223,1,0,0,0,3223,3224,3,1234,617,0,3224,283,1,0,0,0,3225,3226,5,46,0,0,3226,3230,5,204,0,0,3227,3228,5,220,0,0,3228,3229,5,77,0,0,3229,3231,5,389,0,0,3230,3227,1,0,0,0,3230,3231,1,0,0,0,3231,3232,1,0,0,0,3232,3233,3,1234,617,0,3233,3237,3,12,6,0,3234,3236,3,286,143,0,3235,3234,1,0,0,0,3236,3239,1,0,0,0,3237,3235,1,0,0,0,3237,3238,1,0,0,0,3238,285,1,0,0,0,3239,3237,1,0,0,0,3240,3241,5,316,0,0,3241,3248,3,1214,607,0,3242,3243,5,368,0,0,3243,3248,3,64,32,0,3244,3245,5,64,0,0,3245,3248,3,64,32,0,3246,3248,5,150,0,0,3247,3240,1,0,0,0,3247,3242,1,0,0,0,3247,3244,1,0,0,0,3247,3246,1,0,0,0,3248,287,1,0,0,0,3249,3250,5,138,0,0,3250,3251,5,204,0,0,3251,3252,3,1234,617,0,3252,3256,5,362,0,0,3253,3255,3,290,145,0,3254,3253,1,0,0,0,3255,3258,1,0,0,0,3256,3254,1,0,0,0,3256,3257,1,0,0,0,3257,289,1,0,0,0,3258,3256,1,0,0,0,3259,3260,5,94,0,0,3260,3261,3,64,32,0,3261,291,1,0,0,0,3262,3263,5,138,0,0,3263,3264,5,204,0,0,3264,3265,3,1234,617,0,3265,3266,3,32,16,0,3266,3267,3,462,231,0,3267,3268,3,1234,617,0,3268,3402,1,0,0,0,3269,3270,5,138,0,0,3270,3271,5,204,0,0,3271,3272,3,1234,617,0,3272,3273,3,32,16,0,3273,3274,5,311,0,0,3274,3275,3,1260,630,0,3275,3402,1,0,0,0,3276,3277,5,138,0,0,3277,3278,5,204,0,0,3278,3279,3,1234,617,0,3279,3280,3,32,16,0,3280,3281,5,175,0,0,3281,3282,3,1210,605,0,3282,3402,1,0,0,0,3283,3284,5,138,0,0,3284,3285,5,204,0,0,3285,3286,3,1234,617,0,3286,3287,3,32,16,0,3287,3288,5,316,0,0,3288,3289,3,1214,607,0,3289,3402,1,0,0,0,3290,3291,5,138,0,0,3291,3292,5,204,0,0,3292,3293,3,1234,617,0,3293,3294,3,32,16,0,3294,3295,5,226,0,0,3295,3296,3,1218,609,0,3296,3402,1,0,0,0,3297,3298,5,138,0,0,3298,3299,5,204,0,0,3299,3300,3,1234,617,0,3300,3301,3,32,16,0,3301,3302,3,460,230,0,3302,3303,3,470,235,0,3303,3402,1,0,0,0,3304,3305,5,138,0,0,3305,3306,5,204,0,0,3306,3307,3,1234,617,0,3307,3308,3,32,16,0,3308,3309,5,321,0,0,3309,3310,3,1226,613,0,3310,3402,1,0,0,0,3311,3312,5,138,0,0,3312,3313,5,204,0,0,3313,3314,3,1234,617,0,3314,3315,3,32,16,0,3315,3316,5,136,0,0,3316,3317,3,580,290,0,3317,3402,1,0,0,0,3318,3319,5,138,0,0,3319,3320,5,204,0,0,3320,3321,3,1234,617,0,3321,3322,3,32,16,0,3322,3323,5,41,0,0,3323,3324,5,2,0,0,3324,3325,3,996,498,0,3325,3326,5,36,0,0,3326,3327,3,996,498,0,3327,3328,5,3,0,0,3328,3402,1,0,0,0,3329,3330,5,138,0,0,3330,3331,5,204,0,0,3331,3332,3,1234,617,0,3332,3333,3,32,16,0,3333,3334,5,189,0,0,3334,3335,3,996,498,0,3335,3402,1,0,0,0,3336,3337,5,138,0,0,3337,3338,5,204,0,0,3338,3339,3,1234,617,0,3339,3340,3,32,16,0,3340,3341,5,211,0,0,3341,3342,3,560,280,0,3342,3402,1,0,0,0,3343,3344,5,138,0,0,3344,3345,5,204,0,0,3345,3346,3,1234,617,0,3346,3347,3,32,16,0,3347,3348,5,271,0,0,3348,3349,3,614,307,0,3349,3402,1,0,0,0,3350,3351,5,138,0,0,3351,3352,5,204,0,0,3352,3353,3,1234,617,0,3353,3354,3,32,16,0,3354,3355,5,271,0,0,3355,3356,5,156,0,0,3356,3357,3,470,235,0,3357,3358,5,100,0,0,3358,3359,3,1234,617,0,3359,3402,1,0,0,0,3360,3361,5,138,0,0,3361,3362,5,204,0,0,3362,3363,3,1234,617,0,3363,3364,3,32,16,0,3364,3365,5,271,0,0,3365,3366,5,206,0,0,3366,3367,3,470,235,0,3367,3368,5,100,0,0,3368,3369,3,1234,617,0,3369,3402,1,0,0,0,3370,3371,5,138,0,0,3371,3372,5,204,0,0,3372,3373,3,1234,617,0,3373,3374,3,32,16,0,3374,3375,5,289,0,0,3375,3376,3,560,280,0,3376,3402,1,0,0,0,3377,3378,5,138,0,0,3378,3379,5,204,0,0,3379,3380,3,1234,617,0,3380,3381,3,32,16,0,3381,3382,5,442,0,0,3382,3383,3,560,280,0,3383,3402,1,0,0,0,3384,3385,5,138,0,0,3385,3386,5,204,0,0,3386,3387,3,1234,617,0,3387,3388,3,32,16,0,3388,3389,5,443,0,0,3389,3390,5,62,0,0,3390,3391,3,996,498,0,3391,3392,5,238,0,0,3392,3393,3,1234,617,0,3393,3402,1,0,0,0,3394,3395,5,138,0,0,3395,3396,5,204,0,0,3396,3397,3,1234,617,0,3397,3398,3,32,16,0,3398,3399,5,353,0,0,3399,3400,3,996,498,0,3400,3402,1,0,0,0,3401,3262,1,0,0,0,3401,3269,1,0,0,0,3401,3276,1,0,0,0,3401,3283,1,0,0,0,3401,3290,1,0,0,0,3401,3297,1,0,0,0,3401,3304,1,0,0,0,3401,3311,1,0,0,0,3401,3318,1,0,0,0,3401,3329,1,0,0,0,3401,3336,1,0,0,0,3401,3343,1,0,0,0,3401,3350,1,0,0,0,3401,3360,1,0,0,0,3401,3370,1,0,0,0,3401,3377,1,0,0,0,3401,3384,1,0,0,0,3401,3394,1,0,0,0,3402,293,1,0,0,0,3403,3404,5,46,0,0,3404,3405,5,63,0,0,3405,3406,5,174,0,0,3406,3407,5,374,0,0,3407,3409,3,1234,617,0,3408,3410,3,298,149,0,3409,3408,1,0,0,0,3409,3410,1,0,0,0,3410,3411,1,0,0,0,3411,3412,3,302,151,0,3412,295,1,0,0,0,3413,3414,5,215,0,0,3414,3422,3,270,135,0,3415,3416,5,262,0,0,3416,3422,5,215,0,0,3417,3418,5,366,0,0,3418,3422,3,270,135,0,3419,3420,5,262,0,0,3420,3422,5,366,0,0,3421,3413,1,0,0,0,3421,3415,1,0,0,0,3421,3417,1,0,0,0,3421,3419,1,0,0,0,3422,297,1,0,0,0,3423,3425,3,296,148,0,3424,3423,1,0,0,0,3425,3426,1,0,0,0,3426,3424,1,0,0,0,3426,3427,1,0,0,0,3427,299,1,0,0,0,3428,3429,5,138,0,0,3429,3430,5,63,0,0,3430,3431,5,174,0,0,3431,3432,5,374,0,0,3432,3434,3,1234,617,0,3433,3435,3,298,149,0,3434,3433,1,0,0,0,3434,3435,1,0,0,0,3435,3436,1,0,0,0,3436,3437,3,306,153,0,3437,3446,1,0,0,0,3438,3439,5,138,0,0,3439,3440,5,63,0,0,3440,3441,5,174,0,0,3441,3442,5,374,0,0,3442,3443,3,1234,617,0,3443,3444,3,298,149,0,3444,3446,1,0,0,0,3445,3428,1,0,0,0,3445,3438,1,0,0,0,3446,301,1,0,0,0,3447,3448,5,273,0,0,3448,3449,5,2,0,0,3449,3450,3,304,152,0,3450,3451,5,3,0,0,3451,3454,1,0,0,0,3452,3454,1,0,0,0,3453,3447,1,0,0,0,3453,3452,1,0,0,0,3454,303,1,0,0,0,3455,3460,3,312,156,0,3456,3457,5,6,0,0,3457,3459,3,312,156,0,3458,3456,1,0,0,0,3459,3462,1,0,0,0,3460,3458,1,0,0,0,3460,3461,1,0,0,0,3461,305,1,0,0,0,3462,3460,1,0,0,0,3463,3464,5,273,0,0,3464,3465,5,2,0,0,3465,3466,3,308,154,0,3466,3467,5,3,0,0,3467,307,1,0,0,0,3468,3473,3,310,155,0,3469,3470,5,6,0,0,3470,3472,3,310,155,0,3471,3469,1,0,0,0,3472,3475,1,0,0,0,3473,3471,1,0,0,0,3473,3474,1,0,0,0,3474,309,1,0,0,0,3475,3473,1,0,0,0,3476,3484,3,312,156,0,3477,3478,5,326,0,0,3478,3484,3,312,156,0,3479,3480,5,133,0,0,3480,3484,3,312,156,0,3481,3482,5,191,0,0,3482,3484,3,314,157,0,3483,3476,1,0,0,0,3483,3477,1,0,0,0,3483,3479,1,0,0,0,3483,3481,1,0,0,0,3484,311,1,0,0,0,3485,3486,3,314,157,0,3486,3487,3,316,158,0,3487,313,1,0,0,0,3488,3489,3,1272,636,0,3489,315,1,0,0,0,3490,3491,3,1252,626,0,3491,317,1,0,0,0,3492,3493,5,46,0,0,3493,3494,5,324,0,0,3494,3495,3,1234,617,0,3495,3497,3,320,160,0,3496,3498,3,322,161,0,3497,3496,1,0,0,0,3497,3498,1,0,0,0,3498,3499,1,0,0,0,3499,3500,5,63,0,0,3500,3501,5,174,0,0,3501,3502,5,374,0,0,3502,3503,3,1234,617,0,3503,3504,3,302,151,0,3504,3522,1,0,0,0,3505,3506,5,46,0,0,3506,3507,5,324,0,0,3507,3508,5,220,0,0,3508,3509,5,77,0,0,3509,3510,5,389,0,0,3510,3511,3,1234,617,0,3511,3513,3,320,160,0,3512,3514,3,322,161,0,3513,3512,1,0,0,0,3513,3514,1,0,0,0,3514,3515,1,0,0,0,3515,3516,5,63,0,0,3516,3517,5,174,0,0,3517,3518,5,374,0,0,3518,3519,3,1234,617,0,3519,3520,3,302,151,0,3520,3522,1,0,0,0,3521,3492,1,0,0,0,3521,3505,1,0,0,0,3522,319,1,0,0,0,3523,3524,5,353,0,0,3524,3527,3,1252,626,0,3525,3527,1,0,0,0,3526,3523,1,0,0,0,3526,3525,1,0,0,0,3527,321,1,0,0,0,3528,3531,5,368,0,0,3529,3532,3,1252,626,0,3530,3532,5,78,0,0,3531,3529,1,0,0,0,3531,3530,1,0,0,0,3532,323,1,0,0,0,3533,3534,5,138,0,0,3534,3535,5,324,0,0,3535,3541,3,1234,617,0,3536,3542,3,306,153,0,3537,3539,3,322,161,0,3538,3540,3,306,153,0,3539,3538,1,0,0,0,3539,3540,1,0,0,0,3540,3542,1,0,0,0,3541,3536,1,0,0,0,3541,3537,1,0,0,0,3542,325,1,0,0,0,3543,3544,5,46,0,0,3544,3545,5,63,0,0,3545,3546,5,92,0,0,3546,3547,3,1230,615,0,3547,3548,5,2,0,0,3548,3549,3,156,78,0,3549,3550,5,3,0,0,3550,3551,3,216,108,0,3551,3552,5,324,0,0,3552,3553,3,1234,617,0,3553,3554,3,302,151,0,3554,3600,1,0,0,0,3555,3556,5,46,0,0,3556,3557,5,63,0,0,3557,3558,5,92,0,0,3558,3559,5,220,0,0,3559,3560,5,77,0,0,3560,3561,5,389,0,0,3561,3562,3,1230,615,0,3562,3563,5,2,0,0,3563,3564,3,156,78,0,3564,3565,5,3,0,0,3565,3566,3,216,108,0,3566,3567,5,324,0,0,3567,3568,3,1234,617,0,3568,3569,3,302,151,0,3569,3600,1,0,0,0,3570,3571,5,46,0,0,3571,3572,5,63,0,0,3572,3573,5,92,0,0,3573,3574,3,1230,615,0,3574,3575,5,278,0,0,3575,3576,5,268,0,0,3576,3577,3,1230,615,0,3577,3578,3,158,79,0,3578,3579,3,120,60,0,3579,3580,5,324,0,0,3580,3581,3,1234,617,0,3581,3582,3,302,151,0,3582,3600,1,0,0,0,3583,3584,5,46,0,0,3584,3585,5,63,0,0,3585,3586,5,92,0,0,3586,3587,5,220,0,0,3587,3588,5,77,0,0,3588,3589,5,389,0,0,3589,3590,3,1230,615,0,3590,3591,5,278,0,0,3591,3592,5,268,0,0,3592,3593,3,1230,615,0,3593,3594,3,158,79,0,3594,3595,3,120,60,0,3595,3596,5,324,0,0,3596,3597,3,1234,617,0,3597,3598,3,302,151,0,3598,3600,1,0,0,0,3599,3543,1,0,0,0,3599,3555,1,0,0,0,3599,3570,1,0,0,0,3599,3583,1,0,0,0,3600,327,1,0,0,0,3601,3602,5,444,0,0,3602,3603,5,63,0,0,3603,3604,5,316,0,0,3604,3605,3,1234,617,0,3605,3606,3,332,166,0,3606,3607,5,64,0,0,3607,3608,5,324,0,0,3608,3609,3,1234,617,0,3609,3610,5,71,0,0,3610,3611,3,1234,617,0,3611,3612,3,302,151,0,3612,329,1,0,0,0,3613,3614,5,74,0,0,3614,3617,5,94,0,0,3615,3617,5,59,0,0,3616,3613,1,0,0,0,3616,3615,1,0,0,0,3617,331,1,0,0,0,3618,3619,3,330,165,0,3619,3620,5,2,0,0,3620,3621,3,960,480,0,3621,3622,5,3,0,0,3622,3625,1,0,0,0,3623,3625,1,0,0,0,3624,3618,1,0,0,0,3624,3623,1,0,0,0,3625,333,1,0,0,0,3626,3627,5,46,0,0,3627,3628,5,99,0,0,3628,3629,5,248,0,0,3629,3630,5,62,0,0,3630,3631,3,336,168,0,3631,3632,5,324,0,0,3632,3633,3,1234,617,0,3633,3634,3,302,151,0,3634,3648,1,0,0,0,3635,3636,5,46,0,0,3636,3637,5,99,0,0,3637,3638,5,248,0,0,3638,3639,5,220,0,0,3639,3640,5,77,0,0,3640,3641,5,389,0,0,3641,3642,5,62,0,0,3642,3643,3,336,168,0,3643,3644,5,324,0,0,3644,3645,3,1234,617,0,3645,3646,3,302,151,0,3646,3648,1,0,0,0,3647,3626,1,0,0,0,3647,3635,1,0,0,0,3648,335,1,0,0,0,3649,3652,3,1260,630,0,3650,3652,5,99,0,0,3651,3649,1,0,0,0,3651,3650,1,0,0,0,3652,337,1,0,0,0,3653,3654,5,191,0,0,3654,3655,5,99,0,0,3655,3656,5,248,0,0,3656,3657,5,62,0,0,3657,3658,3,336,168,0,3658,3659,5,324,0,0,3659,3660,3,1234,617,0,3660,3672,1,0,0,0,3661,3662,5,191,0,0,3662,3663,5,99,0,0,3663,3664,5,248,0,0,3664,3665,5,220,0,0,3665,3666,5,389,0,0,3666,3667,5,62,0,0,3667,3668,3,336,168,0,3668,3669,5,324,0,0,3669,3670,3,1234,617,0,3670,3672,1,0,0,0,3671,3653,1,0,0,0,3671,3661,1,0,0,0,3672,339,1,0,0,0,3673,3674,5,138,0,0,3674,3675,5,99,0,0,3675,3676,5,248,0,0,3676,3677,5,62,0,0,3677,3678,3,336,168,0,3678,3679,5,324,0,0,3679,3680,3,1234,617,0,3680,3681,3,306,153,0,3681,341,1,0,0,0,3682,3683,5,46,0,0,3683,3684,5,445,0,0,3684,3685,3,1234,617,0,3685,3686,5,80,0,0,3686,3687,3,1230,615,0,3687,3688,3,352,176,0,3688,3689,3,354,177,0,3689,3690,3,350,175,0,3690,3691,3,346,173,0,3691,3692,3,348,174,0,3692,343,1,0,0,0,3693,3694,5,138,0,0,3694,3695,5,445,0,0,3695,3696,3,1234,617,0,3696,3697,5,80,0,0,3697,3698,3,1230,615,0,3698,3699,3,350,175,0,3699,3700,3,346,173,0,3700,3701,3,348,174,0,3701,345,1,0,0,0,3702,3703,5,100,0,0,3703,3704,5,2,0,0,3704,3705,3,1038,519,0,3705,3706,5,3,0,0,3706,3709,1,0,0,0,3707,3709,1,0,0,0,3708,3702,1,0,0,0,3708,3707,1,0,0,0,3709,347,1,0,0,0,3710,3711,5,105,0,0,3711,3712,5,42,0,0,3712,3713,5,2,0,0,3713,3714,3,1038,519,0,3714,3715,5,3,0,0,3715,3718,1,0,0,0,3716,3718,1,0,0,0,3717,3710,1,0,0,0,3717,3716,1,0,0,0,3718,349,1,0,0,0,3719,3720,5,94,0,0,3720,3723,3,1262,631,0,3721,3723,1,0,0,0,3722,3719,1,0,0,0,3722,3721,1,0,0,0,3723,351,1,0,0,0,3724,3725,5,36,0,0,3725,3728,3,1274,637,0,3726,3728,1,0,0,0,3727,3724,1,0,0,0,3727,3726,1,0,0,0,3728,353,1,0,0,0,3729,3730,5,62,0,0,3730,3733,3,356,178,0,3731,3733,1,0,0,0,3732,3729,1,0,0,0,3732,3731,1,0,0,0,3733,355,1,0,0,0,3734,3735,7,16,0,0,3735,357,1,0,0,0,3736,3737,5,46,0,0,3737,3738,5,131,0,0,3738,3739,5,446,0,0,3739,3740,3,1234,617,0,3740,3741,5,353,0,0,3741,3742,3,360,180,0,3742,3743,5,215,0,0,3743,3744,3,270,135,0,3744,359,1,0,0,0,3745,3746,7,17,0,0,3746,361,1,0,0,0,3747,3748,5,46,0,0,3748,3749,5,350,0,0,3749,3750,3,1234,617,0,3750,3751,3,364,182,0,3751,3752,3,366,183,0,3752,3753,5,80,0,0,3753,3754,3,1230,615,0,3754,3755,3,370,185,0,3755,3756,3,382,191,0,3756,3757,3,386,193,0,3757,3758,5,202,0,0,3758,3759,3,388,194,0,3759,3760,3,1240,620,0,3760,3761,5,2,0,0,3761,3762,3,390,195,0,3762,3763,5,3,0,0,3763,3786,1,0,0,0,3764,3765,5,46,0,0,3765,3766,5,45,0,0,3766,3767,5,350,0,0,3767,3768,3,1234,617,0,3768,3769,5,135,0,0,3769,3770,3,366,183,0,3770,3771,5,80,0,0,3771,3772,3,1230,615,0,3772,3773,3,394,197,0,3773,3774,3,396,198,0,3774,3775,5,62,0,0,3775,3776,5,192,0,0,3776,3777,5,407,0,0,3777,3778,3,386,193,0,3778,3779,5,202,0,0,3779,3780,3,388,194,0,3780,3781,3,1240,620,0,3781,3782,5,2,0,0,3782,3783,3,390,195,0,3783,3784,5,3,0,0,3784,3786,1,0,0,0,3785,3747,1,0,0,0,3785,3764,1,0,0,0,3786,363,1,0,0,0,3787,3792,5,145,0,0,3788,3792,5,135,0,0,3789,3790,5,233,0,0,3790,3792,5,268,0,0,3791,3787,1,0,0,0,3791,3788,1,0,0,0,3791,3789,1,0,0,0,3792,365,1,0,0,0,3793,3798,3,368,184,0,3794,3795,5,82,0,0,3795,3797,3,368,184,0,3796,3794,1,0,0,0,3797,3800,1,0,0,0,3798,3796,1,0,0,0,3798,3799,1,0,0,0,3799,367,1,0,0,0,3800,3798,1,0,0,0,3801,3809,5,232,0,0,3802,3809,5,182,0,0,3803,3809,5,362,0,0,3804,3805,5,362,0,0,3805,3806,5,268,0,0,3806,3809,3,194,97,0,3807,3809,5,351,0,0,3808,3801,1,0,0,0,3808,3802,1,0,0,0,3808,3803,1,0,0,0,3808,3804,1,0,0,0,3808,3807,1,0,0,0,3809,369,1,0,0,0,3810,3811,5,447,0,0,3811,3814,3,372,186,0,3812,3814,1,0,0,0,3813,3810,1,0,0,0,3813,3812,1,0,0,0,3814,371,1,0,0,0,3815,3817,3,374,187,0,3816,3815,1,0,0,0,3817,3818,1,0,0,0,3818,3816,1,0,0,0,3818,3819,1,0,0,0,3819,373,1,0,0,0,3820,3821,3,376,188,0,3821,3822,3,378,189,0,3822,3823,3,748,374,0,3823,3824,3,380,190,0,3824,375,1,0,0,0,3825,3826,7,18,0,0,3826,377,1,0,0,0,3827,3828,7,19,0,0,3828,379,1,0,0,0,3829,3830,3,1264,632,0,3830,381,1,0,0,0,3831,3833,5,62,0,0,3832,3834,5,192,0,0,3833,3832,1,0,0,0,3833,3834,1,0,0,0,3834,3835,1,0,0,0,3835,3838,3,384,192,0,3836,3838,1,0,0,0,3837,3831,1,0,0,0,3837,3836,1,0,0,0,3838,383,1,0,0,0,3839,3840,7,20,0,0,3840,385,1,0,0,0,3841,3842,5,102,0,0,3842,3843,5,2,0,0,3843,3844,3,1038,519,0,3844,3845,5,3,0,0,3845,3848,1,0,0,0,3846,3848,1,0,0,0,3847,3841,1,0,0,0,3847,3846,1,0,0,0,3848,387,1,0,0,0,3849,3850,7,21,0,0,3850,389,1,0,0,0,3851,3854,3,392,196,0,3852,3854,1,0,0,0,3853,3851,1,0,0,0,3853,3852,1,0,0,0,3854,3859,1,0,0,0,3855,3856,5,6,0,0,3856,3858,3,392,196,0,3857,3855,1,0,0,0,3858,3861,1,0,0,0,3859,3857,1,0,0,0,3859,3860,1,0,0,0,3860,391,1,0,0,0,3861,3859,1,0,0,0,3862,3867,3,1250,625,0,3863,3867,3,1248,624,0,3864,3867,3,1252,626,0,3865,3867,3,1272,636,0,3866,3862,1,0,0,0,3866,3863,1,0,0,0,3866,3864,1,0,0,0,3866,3865,1,0,0,0,3867,393,1,0,0,0,3868,3869,5,64,0,0,3869,3872,3,1230,615,0,3870,3872,1,0,0,0,3871,3868,1,0,0,0,3871,3870,1,0,0,0,3872,395,1,0,0,0,3873,3875,3,398,199,0,3874,3873,1,0,0,0,3875,3878,1,0,0,0,3876,3874,1,0,0,0,3876,3877,1,0,0,0,3877,397,1,0,0,0,3878,3876,1,0,0,0,3879,3880,5,77,0,0,3880,3891,5,54,0,0,3881,3891,5,54,0,0,3882,3883,5,69,0,0,3883,3891,5,221,0,0,3884,3885,5,69,0,0,3885,3891,5,180,0,0,3886,3887,5,77,0,0,3887,3891,5,364,0,0,3888,3889,5,262,0,0,3889,3891,5,228,0,0,3890,3879,1,0,0,0,3890,3881,1,0,0,0,3890,3882,1,0,0,0,3890,3884,1,0,0,0,3890,3886,1,0,0,0,3890,3888,1,0,0,0,3891,399,1,0,0,0,3892,3893,5,46,0,0,3893,3894,5,198,0,0,3894,3895,5,350,0,0,3895,3896,3,1234,617,0,3896,3897,5,80,0,0,3897,3898,3,1272,636,0,3898,3899,5,202,0,0,3899,3900,3,388,194,0,3900,3901,3,1240,620,0,3901,3902,5,2,0,0,3902,3903,5,3,0,0,3903,3919,1,0,0,0,3904,3905,5,46,0,0,3905,3906,5,198,0,0,3906,3907,5,350,0,0,3907,3908,3,1234,617,0,3908,3909,5,80,0,0,3909,3910,3,1272,636,0,3910,3911,5,102,0,0,3911,3912,3,402,201,0,3912,3913,5,202,0,0,3913,3914,3,388,194,0,3914,3915,3,1240,620,0,3915,3916,5,2,0,0,3916,3917,5,3,0,0,3917,3919,1,0,0,0,3918,3892,1,0,0,0,3918,3904,1,0,0,0,3919,401,1,0,0,0,3920,3925,3,404,202,0,3921,3922,5,33,0,0,3922,3924,3,404,202,0,3923,3921,1,0,0,0,3924,3927,1,0,0,0,3925,3923,1,0,0,0,3925,3926,1,0,0,0,3926,403,1,0,0,0,3927,3925,1,0,0,0,3928,3929,3,1264,632,0,3929,3930,5,68,0,0,3930,3931,5,2,0,0,3931,3932,3,406,203,0,3932,3933,5,3,0,0,3933,405,1,0,0,0,3934,3939,3,1252,626,0,3935,3936,5,6,0,0,3936,3938,3,1252,626,0,3937,3935,1,0,0,0,3938,3941,1,0,0,0,3939,3937,1,0,0,0,3939,3940,1,0,0,0,3940,407,1,0,0,0,3941,3939,1,0,0,0,3942,3943,5,138,0,0,3943,3944,5,198,0,0,3944,3945,5,350,0,0,3945,3946,3,1234,617,0,3946,3947,3,410,205,0,3947,409,1,0,0,0,3948,3955,5,193,0,0,3949,3950,5,193,0,0,3950,3955,5,305,0,0,3951,3952,5,193,0,0,3952,3955,5,139,0,0,3953,3955,5,186,0,0,3954,3948,1,0,0,0,3954,3949,1,0,0,0,3954,3951,1,0,0,0,3954,3953,1,0,0,0,3955,411,1,0,0,0,3956,3957,5,46,0,0,3957,3958,5,140,0,0,3958,3959,3,470,235,0,3959,3960,5,42,0,0,3960,3961,5,2,0,0,3961,3962,3,1038,519,0,3962,3963,5,3,0,0,3963,3964,3,396,198,0,3964,413,1,0,0,0,3965,3966,5,46,0,0,3966,3967,3,554,277,0,3967,3968,5,136,0,0,3968,3969,3,1240,620,0,3969,3970,3,576,288,0,3970,3971,3,416,208,0,3971,4074,1,0,0,0,3972,3973,5,46,0,0,3973,3974,3,554,277,0,3974,3975,5,136,0,0,3975,3976,3,1240,620,0,3976,3977,3,422,211,0,3977,4074,1,0,0,0,3978,3979,5,46,0,0,3979,3980,5,271,0,0,3980,3981,3,610,305,0,3981,3982,3,416,208,0,3982,4074,1,0,0,0,3983,3984,5,46,0,0,3984,3985,5,353,0,0,3985,3986,3,470,235,0,3986,3987,3,416,208,0,3987,4074,1,0,0,0,3988,3989,5,46,0,0,3989,3990,5,353,0,0,3990,4074,3,470,235,0,3991,3992,5,46,0,0,3992,3993,5,353,0,0,3993,3994,3,470,235,0,3994,3995,5,36,0,0,3995,3996,5,2,0,0,3996,3997,3,978,489,0,3997,3998,5,3,0,0,3998,4074,1,0,0,0,3999,4e3,5,46,0,0,4e3,4001,5,353,0,0,4001,4002,3,470,235,0,4002,4003,5,36,0,0,4003,4004,5,196,0,0,4004,4006,5,2,0,0,4005,4007,3,426,213,0,4006,4005,1,0,0,0,4006,4007,1,0,0,0,4007,4008,1,0,0,0,4008,4009,5,3,0,0,4009,4074,1,0,0,0,4010,4011,5,46,0,0,4011,4012,5,353,0,0,4012,4013,3,470,235,0,4013,4014,5,36,0,0,4014,4015,5,292,0,0,4015,4016,3,416,208,0,4016,4074,1,0,0,0,4017,4018,5,46,0,0,4018,4019,5,348,0,0,4019,4020,5,318,0,0,4020,4021,5,276,0,0,4021,4022,3,470,235,0,4022,4023,3,416,208,0,4023,4074,1,0,0,0,4024,4025,5,46,0,0,4025,4026,5,348,0,0,4026,4027,5,318,0,0,4027,4028,5,185,0,0,4028,4029,3,470,235,0,4029,4030,3,416,208,0,4030,4074,1,0,0,0,4031,4032,5,46,0,0,4032,4033,5,348,0,0,4033,4034,5,318,0,0,4034,4035,5,346,0,0,4035,4036,3,470,235,0,4036,4037,3,416,208,0,4037,4074,1,0,0,0,4038,4039,5,46,0,0,4039,4040,5,348,0,0,4040,4041,5,318,0,0,4041,4042,5,163,0,0,4042,4043,3,470,235,0,4043,4044,3,416,208,0,4044,4074,1,0,0,0,4045,4046,5,46,0,0,4046,4047,5,108,0,0,4047,4048,3,470,235,0,4048,4049,3,416,208,0,4049,4074,1,0,0,0,4050,4051,5,46,0,0,4051,4052,5,108,0,0,4052,4053,5,220,0,0,4053,4054,5,77,0,0,4054,4055,5,389,0,0,4055,4056,3,470,235,0,4056,4057,3,416,208,0,4057,4074,1,0,0,0,4058,4059,5,46,0,0,4059,4060,5,108,0,0,4060,4061,3,470,235,0,4061,4062,5,64,0,0,4062,4063,3,470,235,0,4063,4074,1,0,0,0,4064,4065,5,46,0,0,4065,4066,5,108,0,0,4066,4067,5,220,0,0,4067,4068,5,77,0,0,4068,4069,5,389,0,0,4069,4070,3,470,235,0,4070,4071,5,64,0,0,4071,4072,3,470,235,0,4072,4074,1,0,0,0,4073,3965,1,0,0,0,4073,3972,1,0,0,0,4073,3978,1,0,0,0,4073,3983,1,0,0,0,4073,3988,1,0,0,0,4073,3991,1,0,0,0,4073,3999,1,0,0,0,4073,4010,1,0,0,0,4073,4017,1,0,0,0,4073,4024,1,0,0,0,4073,4031,1,0,0,0,4073,4038,1,0,0,0,4073,4045,1,0,0,0,4073,4050,1,0,0,0,4073,4058,1,0,0,0,4073,4064,1,0,0,0,4074,415,1,0,0,0,4075,4076,5,2,0,0,4076,4081,3,418,209,0,4077,4078,5,6,0,0,4078,4080,3,418,209,0,4079,4077,1,0,0,0,4080,4083,1,0,0,0,4081,4079,1,0,0,0,4081,4082,1,0,0,0,4082,4084,1,0,0,0,4083,4081,1,0,0,0,4084,4085,5,3,0,0,4085,417,1,0,0,0,4086,4089,3,1272,636,0,4087,4088,5,10,0,0,4088,4090,3,420,210,0,4089,4087,1,0,0,0,4089,4090,1,0,0,0,4090,419,1,0,0,0,4091,4098,3,574,287,0,4092,4098,3,1284,642,0,4093,4098,3,1152,576,0,4094,4098,3,264,132,0,4095,4098,3,1252,626,0,4096,4098,5,400,0,0,4097,4091,1,0,0,0,4097,4092,1,0,0,0,4097,4093,1,0,0,0,4097,4094,1,0,0,0,4097,4095,1,0,0,0,4097,4096,1,0,0,0,4098,421,1,0,0,0,4099,4100,5,2,0,0,4100,4105,3,424,212,0,4101,4102,5,6,0,0,4102,4104,3,424,212,0,4103,4101,1,0,0,0,4104,4107,1,0,0,0,4105,4103,1,0,0,0,4105,4106,1,0,0,0,4106,4108,1,0,0,0,4107,4105,1,0,0,0,4108,4109,5,3,0,0,4109,423,1,0,0,0,4110,4111,3,1274,637,0,4111,4112,5,10,0,0,4112,4113,3,420,210,0,4113,425,1,0,0,0,4114,4119,3,1252,626,0,4115,4116,5,6,0,0,4116,4118,3,1252,626,0,4117,4115,1,0,0,0,4118,4121,1,0,0,0,4119,4117,1,0,0,0,4119,4120,1,0,0,0,4120,427,1,0,0,0,4121,4119,1,0,0,0,4122,4123,5,138,0,0,4123,4124,5,353,0,0,4124,4125,3,470,235,0,4125,4126,5,133,0,0,4126,4127,5,450,0,0,4127,4128,3,430,215,0,4128,4129,3,1252,626,0,4129,4160,1,0,0,0,4130,4131,5,138,0,0,4131,4132,5,353,0,0,4132,4133,3,470,235,0,4133,4134,5,133,0,0,4134,4135,5,450,0,0,4135,4136,3,430,215,0,4136,4137,3,1252,626,0,4137,4138,5,145,0,0,4138,4139,3,1252,626,0,4139,4160,1,0,0,0,4140,4141,5,138,0,0,4141,4142,5,353,0,0,4142,4143,3,470,235,0,4143,4144,5,133,0,0,4144,4145,5,450,0,0,4145,4146,3,430,215,0,4146,4147,3,1252,626,0,4147,4148,5,135,0,0,4148,4149,3,1252,626,0,4149,4160,1,0,0,0,4150,4151,5,138,0,0,4151,4152,5,353,0,0,4152,4153,3,470,235,0,4153,4154,5,302,0,0,4154,4155,5,450,0,0,4155,4156,3,1252,626,0,4156,4157,5,94,0,0,4157,4158,3,1252,626,0,4158,4160,1,0,0,0,4159,4122,1,0,0,0,4159,4130,1,0,0,0,4159,4140,1,0,0,0,4159,4150,1,0,0,0,4160,429,1,0,0,0,4161,4162,5,220,0,0,4162,4163,5,77,0,0,4163,4166,5,389,0,0,4164,4166,1,0,0,0,4165,4161,1,0,0,0,4165,4164,1,0,0,0,4166,431,1,0,0,0,4167,4168,5,46,0,0,4168,4169,5,271,0,0,4169,4170,5,156,0,0,4170,4172,3,470,235,0,4171,4173,5,53,0,0,4172,4171,1,0,0,0,4172,4173,1,0,0,0,4173,4174,1,0,0,0,4174,4175,5,62,0,0,4175,4176,5,353,0,0,4176,4177,3,996,498,0,4177,4178,5,100,0,0,4178,4179,3,1234,617,0,4179,4180,3,438,219,0,4180,4181,5,36,0,0,4181,4182,3,434,217,0,4182,433,1,0,0,0,4183,4188,3,436,218,0,4184,4185,5,6,0,0,4185,4187,3,436,218,0,4186,4184,1,0,0,0,4187,4190,1,0,0,0,4188,4186,1,0,0,0,4188,4189,1,0,0,0,4189,435,1,0,0,0,4190,4188,1,0,0,0,4191,4192,5,271,0,0,4192,4193,3,1250,625,0,4193,4194,3,610,305,0,4194,4196,3,440,220,0,4195,4197,5,295,0,0,4196,4195,1,0,0,0,4196,4197,1,0,0,0,4197,4219,1,0,0,0,4198,4199,5,271,0,0,4199,4200,3,1250,625,0,4200,4201,3,614,307,0,4201,4203,3,440,220,0,4202,4204,5,295,0,0,4203,4202,1,0,0,0,4203,4204,1,0,0,0,4204,4219,1,0,0,0,4205,4206,5,211,0,0,4206,4207,3,1250,625,0,4207,4208,3,560,280,0,4208,4219,1,0,0,0,4209,4210,5,211,0,0,4210,4211,3,1250,625,0,4211,4212,5,2,0,0,4212,4213,3,1162,581,0,4213,4214,5,3,0,0,4214,4215,3,560,280,0,4215,4219,1,0,0,0,4216,4217,5,338,0,0,4217,4219,3,996,498,0,4218,4191,1,0,0,0,4218,4198,1,0,0,0,4218,4205,1,0,0,0,4218,4209,1,0,0,0,4218,4216,1,0,0,0,4219,437,1,0,0,0,4220,4221,5,206,0,0,4221,4224,3,470,235,0,4222,4224,1,0,0,0,4223,4220,1,0,0,0,4223,4222,1,0,0,0,4224,439,1,0,0,0,4225,4226,5,62,0,0,4226,4233,5,318,0,0,4227,4228,5,62,0,0,4228,4229,5,83,0,0,4229,4230,5,147,0,0,4230,4233,3,470,235,0,4231,4233,1,0,0,0,4232,4225,1,0,0,0,4232,4227,1,0,0,0,4232,4231,1,0,0,0,4233,441,1,0,0,0,4234,4235,5,46,0,0,4235,4236,5,271,0,0,4236,4237,5,206,0,0,4237,4238,3,470,235,0,4238,4239,5,100,0,0,4239,4240,3,1234,617,0,4240,443,1,0,0,0,4241,4242,5,138,0,0,4242,4243,5,271,0,0,4243,4244,5,206,0,0,4244,4245,3,470,235,0,4245,4246,5,100,0,0,4246,4247,3,1234,617,0,4247,4248,5,133,0,0,4248,4249,3,434,217,0,4249,4260,1,0,0,0,4250,4251,5,138,0,0,4251,4252,5,271,0,0,4252,4253,5,206,0,0,4253,4254,3,470,235,0,4254,4255,5,100,0,0,4255,4256,3,1234,617,0,4256,4257,5,191,0,0,4257,4258,3,446,223,0,4258,4260,1,0,0,0,4259,4241,1,0,0,0,4259,4250,1,0,0,0,4260,445,1,0,0,0,4261,4266,3,448,224,0,4262,4263,5,6,0,0,4263,4265,3,448,224,0,4264,4262,1,0,0,0,4265,4268,1,0,0,0,4266,4264,1,0,0,0,4266,4267,1,0,0,0,4267,447,1,0,0,0,4268,4266,1,0,0,0,4269,4270,5,271,0,0,4270,4271,3,1250,625,0,4271,4272,5,2,0,0,4272,4273,3,1162,581,0,4273,4274,5,3,0,0,4274,4282,1,0,0,0,4275,4276,5,211,0,0,4276,4277,3,1250,625,0,4277,4278,5,2,0,0,4278,4279,3,1162,581,0,4279,4280,5,3,0,0,4280,4282,1,0,0,0,4281,4269,1,0,0,0,4281,4275,1,0,0,0,4282,449,1,0,0,0,4283,4284,5,191,0,0,4284,4285,5,271,0,0,4285,4286,5,156,0,0,4286,4287,3,470,235,0,4287,4288,5,100,0,0,4288,4289,3,1234,617,0,4289,4290,3,100,50,0,4290,4302,1,0,0,0,4291,4292,5,191,0,0,4292,4293,5,271,0,0,4293,4294,5,156,0,0,4294,4295,5,220,0,0,4295,4296,5,389,0,0,4296,4297,3,470,235,0,4297,4298,5,100,0,0,4298,4299,3,1234,617,0,4299,4300,3,100,50,0,4300,4302,1,0,0,0,4301,4283,1,0,0,0,4301,4291,1,0,0,0,4302,451,1,0,0,0,4303,4304,5,191,0,0,4304,4305,5,271,0,0,4305,4306,5,206,0,0,4306,4307,3,470,235,0,4307,4308,5,100,0,0,4308,4309,3,1234,617,0,4309,4310,3,100,50,0,4310,4322,1,0,0,0,4311,4312,5,191,0,0,4312,4313,5,271,0,0,4313,4314,5,206,0,0,4314,4315,5,220,0,0,4315,4316,5,389,0,0,4316,4317,3,470,235,0,4317,4318,5,100,0,0,4318,4319,3,1234,617,0,4319,4320,3,100,50,0,4320,4322,1,0,0,0,4321,4303,1,0,0,0,4321,4311,1,0,0,0,4322,453,1,0,0,0,4323,4324,5,191,0,0,4324,4325,5,274,0,0,4325,4326,5,147,0,0,4326,4327,3,1262,631,0,4327,4328,3,100,50,0,4328,455,1,0,0,0,4329,4330,5,294,0,0,4330,4331,5,274,0,0,4331,4332,5,147,0,0,4332,4333,3,1262,631,0,4333,4334,5,94,0,0,4334,4335,3,1260,630,0,4335,457,1,0,0,0,4336,4337,5,191,0,0,4337,4340,3,460,230,0,4338,4339,5,220,0,0,4339,4341,5,389,0,0,4340,4338,1,0,0,0,4340,4341,1,0,0,0,4341,4342,1,0,0,0,4342,4343,3,468,234,0,4343,4344,3,100,50,0,4344,4442,1,0,0,0,4345,4346,5,191,0,0,4346,4349,5,321,0,0,4347,4348,5,220,0,0,4348,4350,5,389,0,0,4349,4347,1,0,0,0,4349,4350,1,0,0,0,4350,4351,1,0,0,0,4351,4352,3,1228,614,0,4352,4353,3,100,50,0,4353,4442,1,0,0,0,4354,4355,5,191,0,0,4355,4358,5,226,0,0,4356,4357,5,220,0,0,4357,4359,5,389,0,0,4358,4356,1,0,0,0,4358,4359,1,0,0,0,4359,4360,1,0,0,0,4360,4361,3,1220,610,0,4361,4362,3,100,50,0,4362,4442,1,0,0,0,4363,4364,5,191,0,0,4364,4367,5,316,0,0,4365,4366,5,220,0,0,4366,4368,5,389,0,0,4367,4365,1,0,0,0,4367,4368,1,0,0,0,4368,4369,1,0,0,0,4369,4370,3,1216,608,0,4370,4371,3,100,50,0,4371,4442,1,0,0,0,4372,4373,5,191,0,0,4373,4376,3,464,232,0,4374,4375,5,220,0,0,4375,4377,5,389,0,0,4376,4374,1,0,0,0,4376,4377,1,0,0,0,4377,4378,1,0,0,0,4378,4379,3,1232,616,0,4379,4380,3,100,50,0,4380,4442,1,0,0,0,4381,4382,5,191,0,0,4382,4385,3,466,233,0,4383,4384,5,220,0,0,4384,4386,5,389,0,0,4385,4383,1,0,0,0,4385,4386,1,0,0,0,4386,4387,1,0,0,0,4387,4388,3,1234,617,0,4388,4389,5,80,0,0,4389,4390,3,470,235,0,4390,4391,3,100,50,0,4391,4442,1,0,0,0,4392,4393,5,191,0,0,4393,4396,5,350,0,0,4394,4395,5,220,0,0,4395,4397,5,389,0,0,4396,4394,1,0,0,0,4396,4397,1,0,0,0,4397,4398,1,0,0,0,4398,4399,3,1222,611,0,4399,4400,5,80,0,0,4400,4401,3,470,235,0,4401,4402,3,100,50,0,4402,4442,1,0,0,0,4403,4404,5,191,0,0,4404,4405,5,353,0,0,4405,4406,3,474,237,0,4406,4407,3,100,50,0,4407,4442,1,0,0,0,4408,4409,5,191,0,0,4409,4410,5,353,0,0,4410,4411,5,220,0,0,4411,4412,5,389,0,0,4412,4413,3,474,237,0,4413,4414,3,100,50,0,4414,4442,1,0,0,0,4415,4416,5,191,0,0,4416,4417,5,189,0,0,4417,4418,3,474,237,0,4418,4419,3,100,50,0,4419,4442,1,0,0,0,4420,4421,5,191,0,0,4421,4422,5,189,0,0,4422,4423,5,220,0,0,4423,4424,5,389,0,0,4424,4425,3,474,237,0,4425,4426,3,100,50,0,4426,4442,1,0,0,0,4427,4428,5,191,0,0,4428,4429,5,226,0,0,4429,4430,5,109,0,0,4430,4431,3,1218,609,0,4431,4432,3,100,50,0,4432,4442,1,0,0,0,4433,4434,5,191,0,0,4434,4435,5,226,0,0,4435,4436,5,109,0,0,4436,4437,5,220,0,0,4437,4438,5,389,0,0,4438,4439,3,1218,609,0,4439,4440,3,100,50,0,4440,4442,1,0,0,0,4441,4336,1,0,0,0,4441,4345,1,0,0,0,4441,4354,1,0,0,0,4441,4363,1,0,0,0,4441,4372,1,0,0,0,4441,4381,1,0,0,0,4441,4392,1,0,0,0,4441,4403,1,0,0,0,4441,4408,1,0,0,0,4441,4415,1,0,0,0,4441,4420,1,0,0,0,4441,4427,1,0,0,0,4441,4433,1,0,0,0,4442,459,1,0,0,0,4443,4465,5,92,0,0,4444,4465,5,369,0,0,4445,4446,5,251,0,0,4446,4465,5,369,0,0,4447,4448,5,63,0,0,4448,4465,5,92,0,0,4449,4465,5,108,0,0,4450,4465,5,168,0,0,4451,4465,5,335,0,0,4452,4453,5,348,0,0,4453,4454,5,318,0,0,4454,4465,5,276,0,0,4455,4456,5,348,0,0,4456,4457,5,318,0,0,4457,4465,5,185,0,0,4458,4459,5,348,0,0,4459,4460,5,318,0,0,4460,4465,5,346,0,0,4461,4462,5,348,0,0,4462,4463,5,318,0,0,4463,4465,5,163,0,0,4464,4443,1,0,0,0,4464,4444,1,0,0,0,4464,4445,1,0,0,0,4464,4447,1,0,0,0,4464,4449,1,0,0,0,4464,4450,1,0,0,0,4464,4451,1,0,0,0,4464,4452,1,0,0,0,4464,4455,1,0,0,0,4464,4458,1,0,0,0,4464,4461,1,0,0,0,4465,461,1,0,0,0,4466,4470,3,464,232,0,4467,4470,5,451,0,0,4468,4470,5,344,0,0,4469,4466,1,0,0,0,4469,4467,1,0,0,0,4469,4468,1,0,0,0,4470,463,1,0,0,0,4471,4472,5,131,0,0,4472,4485,5,446,0,0,4473,4474,5,198,0,0,4474,4485,5,350,0,0,4475,4485,5,204,0,0,4476,4477,5,63,0,0,4477,4478,5,174,0,0,4478,4485,5,374,0,0,4479,4480,3,276,138,0,4480,4481,5,238,0,0,4481,4485,1,0,0,0,4482,4485,5,452,0,0,4483,4485,5,324,0,0,4484,4471,1,0,0,0,4484,4473,1,0,0,0,4484,4475,1,0,0,0,4484,4476,1,0,0,0,4484,4479,1,0,0,0,4484,4482,1,0,0,0,4484,4483,1,0,0,0,4485,465,1,0,0,0,4486,4487,7,22,0,0,4487,467,1,0,0,0,4488,4493,3,470,235,0,4489,4490,5,6,0,0,4490,4492,3,470,235,0,4491,4489,1,0,0,0,4492,4495,1,0,0,0,4493,4491,1,0,0,0,4493,4494,1,0,0,0,4494,469,1,0,0,0,4495,4493,1,0,0,0,4496,4498,3,1264,632,0,4497,4499,3,472,236,0,4498,4497,1,0,0,0,4498,4499,1,0,0,0,4499,471,1,0,0,0,4500,4501,5,11,0,0,4501,4503,3,1236,618,0,4502,4500,1,0,0,0,4503,4504,1,0,0,0,4504,4502,1,0,0,0,4504,4505,1,0,0,0,4505,473,1,0,0,0,4506,4511,3,996,498,0,4507,4508,5,6,0,0,4508,4510,3,996,498,0,4509,4507,1,0,0,0,4510,4513,1,0,0,0,4511,4509,1,0,0,0,4511,4512,1,0,0,0,4512,475,1,0,0,0,4513,4511,1,0,0,0,4514,4515,5,351,0,0,4515,4516,3,882,441,0,4516,4517,3,960,480,0,4517,4518,3,478,239,0,4518,4519,3,100,50,0,4519,477,1,0,0,0,4520,4521,5,167,0,0,4521,4526,5,219,0,0,4522,4523,5,307,0,0,4523,4526,5,219,0,0,4524,4526,1,0,0,0,4525,4520,1,0,0,0,4525,4522,1,0,0,0,4525,4524,1,0,0,0,4526,479,1,0,0,0,4527,4528,5,159,0,0,4528,4529,5,80,0,0,4529,4530,3,460,230,0,4530,4531,3,470,235,0,4531,4532,5,116,0,0,4532,4533,3,482,241,0,4533,4712,1,0,0,0,4534,4535,5,159,0,0,4535,4536,5,80,0,0,4536,4537,5,321,0,0,4537,4538,3,1226,613,0,4538,4539,5,116,0,0,4539,4540,3,482,241,0,4540,4712,1,0,0,0,4541,4542,5,159,0,0,4542,4543,5,80,0,0,4543,4544,5,226,0,0,4544,4545,3,1218,609,0,4545,4546,5,116,0,0,4546,4547,3,482,241,0,4547,4712,1,0,0,0,4548,4549,5,159,0,0,4549,4550,5,80,0,0,4550,4551,5,44,0,0,4551,4552,3,470,235,0,4552,4553,5,116,0,0,4553,4554,3,482,241,0,4554,4712,1,0,0,0,4555,4556,5,159,0,0,4556,4557,5,80,0,0,4557,4558,3,462,231,0,4558,4559,3,1234,617,0,4559,4560,5,116,0,0,4560,4561,3,482,241,0,4561,4712,1,0,0,0,4562,4563,5,159,0,0,4563,4564,5,80,0,0,4564,4565,5,311,0,0,4565,4566,3,1260,630,0,4566,4567,5,116,0,0,4567,4568,3,482,241,0,4568,4712,1,0,0,0,4569,4570,5,159,0,0,4570,4571,5,80,0,0,4571,4572,5,175,0,0,4572,4573,3,1210,605,0,4573,4574,5,116,0,0,4574,4575,3,482,241,0,4575,4712,1,0,0,0,4576,4577,5,159,0,0,4577,4578,5,80,0,0,4578,4579,5,316,0,0,4579,4580,3,1214,607,0,4580,4581,5,116,0,0,4581,4582,3,482,241,0,4582,4712,1,0,0,0,4583,4584,5,159,0,0,4584,4585,5,80,0,0,4585,4586,5,353,0,0,4586,4587,3,996,498,0,4587,4588,5,116,0,0,4588,4589,3,482,241,0,4589,4712,1,0,0,0,4590,4591,5,159,0,0,4591,4592,5,80,0,0,4592,4593,5,189,0,0,4593,4594,3,996,498,0,4594,4595,5,116,0,0,4595,4596,3,482,241,0,4596,4712,1,0,0,0,4597,4598,5,159,0,0,4598,4599,5,80,0,0,4599,4600,5,136,0,0,4600,4601,3,580,290,0,4601,4602,5,116,0,0,4602,4603,3,482,241,0,4603,4712,1,0,0,0,4604,4605,5,159,0,0,4605,4606,5,80,0,0,4606,4607,5,211,0,0,4607,4608,3,560,280,0,4608,4609,5,116,0,0,4609,4610,3,482,241,0,4610,4712,1,0,0,0,4611,4612,5,159,0,0,4612,4613,5,80,0,0,4613,4614,5,271,0,0,4614,4615,3,614,307,0,4615,4616,5,116,0,0,4616,4617,3,482,241,0,4617,4712,1,0,0,0,4618,4619,5,159,0,0,4619,4620,5,80,0,0,4620,4621,5,45,0,0,4621,4622,3,1224,612,0,4622,4624,5,80,0,0,4623,4625,5,189,0,0,4624,4623,1,0,0,0,4624,4625,1,0,0,0,4625,4626,1,0,0,0,4626,4627,3,470,235,0,4627,4628,5,116,0,0,4628,4629,3,482,241,0,4629,4712,1,0,0,0,4630,4631,5,159,0,0,4631,4632,5,80,0,0,4632,4633,3,466,233,0,4633,4634,3,1234,617,0,4634,4635,5,80,0,0,4635,4636,3,470,235,0,4636,4637,5,116,0,0,4637,4638,3,482,241,0,4638,4712,1,0,0,0,4639,4640,5,159,0,0,4640,4641,5,80,0,0,4641,4642,5,350,0,0,4642,4643,3,1222,611,0,4643,4644,5,80,0,0,4644,4645,3,470,235,0,4645,4646,5,116,0,0,4646,4647,3,482,241,0,4647,4712,1,0,0,0,4648,4649,5,159,0,0,4649,4650,5,80,0,0,4650,4651,5,289,0,0,4651,4652,3,560,280,0,4652,4653,5,116,0,0,4653,4654,3,482,241,0,4654,4712,1,0,0,0,4655,4656,5,159,0,0,4656,4657,5,80,0,0,4657,4658,5,442,0,0,4658,4659,3,560,280,0,4659,4660,5,116,0,0,4660,4661,3,482,241,0,4661,4712,1,0,0,0,4662,4663,5,159,0,0,4663,4664,5,80,0,0,4664,4665,5,443,0,0,4665,4666,5,62,0,0,4666,4667,3,996,498,0,4667,4668,5,238,0,0,4668,4669,3,1234,617,0,4669,4670,5,116,0,0,4670,4671,3,482,241,0,4671,4712,1,0,0,0,4672,4673,5,159,0,0,4673,4674,5,80,0,0,4674,4675,5,271,0,0,4675,4676,5,156,0,0,4676,4677,3,470,235,0,4677,4678,5,100,0,0,4678,4679,3,1234,617,0,4679,4680,5,116,0,0,4680,4681,3,482,241,0,4681,4712,1,0,0,0,4682,4683,5,159,0,0,4683,4684,5,80,0,0,4684,4685,5,271,0,0,4685,4686,5,206,0,0,4686,4687,3,470,235,0,4687,4688,5,100,0,0,4688,4689,3,1234,617,0,4689,4690,5,116,0,0,4690,4691,3,482,241,0,4691,4712,1,0,0,0,4692,4693,5,159,0,0,4693,4694,5,80,0,0,4694,4695,5,239,0,0,4695,4696,5,267,0,0,4696,4697,3,264,132,0,4697,4698,5,116,0,0,4698,4699,3,482,241,0,4699,4712,1,0,0,0,4700,4701,5,159,0,0,4701,4702,5,80,0,0,4702,4703,5,41,0,0,4703,4704,5,2,0,0,4704,4705,3,996,498,0,4705,4706,5,36,0,0,4706,4707,3,996,498,0,4707,4708,5,3,0,0,4708,4709,5,116,0,0,4709,4710,3,482,241,0,4710,4712,1,0,0,0,4711,4527,1,0,0,0,4711,4534,1,0,0,0,4711,4541,1,0,0,0,4711,4548,1,0,0,0,4711,4555,1,0,0,0,4711,4562,1,0,0,0,4711,4569,1,0,0,0,4711,4576,1,0,0,0,4711,4583,1,0,0,0,4711,4590,1,0,0,0,4711,4597,1,0,0,0,4711,4604,1,0,0,0,4711,4611,1,0,0,0,4711,4618,1,0,0,0,4711,4630,1,0,0,0,4711,4639,1,0,0,0,4711,4648,1,0,0,0,4711,4655,1,0,0,0,4711,4662,1,0,0,0,4711,4672,1,0,0,0,4711,4682,1,0,0,0,4711,4692,1,0,0,0,4711,4700,1,0,0,0,4712,481,1,0,0,0,4713,4716,3,1252,626,0,4714,4716,5,78,0,0,4715,4713,1,0,0,0,4715,4714,1,0,0,0,4716,483,1,0,0,0,4717,4718,5,320,0,0,4718,4719,5,237,0,0,4719,4720,3,486,243,0,4720,4721,5,80,0,0,4721,4722,3,460,230,0,4722,4723,3,470,235,0,4723,4724,5,116,0,0,4724,4725,3,488,244,0,4725,4854,1,0,0,0,4726,4727,5,320,0,0,4727,4728,5,237,0,0,4728,4729,3,486,243,0,4729,4730,5,80,0,0,4730,4731,5,321,0,0,4731,4732,3,1226,613,0,4732,4733,5,116,0,0,4733,4734,3,488,244,0,4734,4854,1,0,0,0,4735,4736,5,320,0,0,4736,4737,5,237,0,0,4737,4738,3,486,243,0,4738,4739,5,80,0,0,4739,4740,5,226,0,0,4740,4741,3,1218,609,0,4741,4742,5,116,0,0,4742,4743,3,488,244,0,4743,4854,1,0,0,0,4744,4745,5,320,0,0,4745,4746,5,237,0,0,4746,4747,3,486,243,0,4747,4748,5,80,0,0,4748,4749,5,44,0,0,4749,4750,3,470,235,0,4750,4751,5,116,0,0,4751,4752,3,488,244,0,4752,4854,1,0,0,0,4753,4754,5,320,0,0,4754,4755,5,237,0,0,4755,4756,3,486,243,0,4756,4757,5,80,0,0,4757,4758,3,462,231,0,4758,4759,3,1234,617,0,4759,4760,5,116,0,0,4760,4761,3,488,244,0,4761,4854,1,0,0,0,4762,4763,5,320,0,0,4763,4764,5,237,0,0,4764,4765,3,486,243,0,4765,4766,5,80,0,0,4766,4767,5,311,0,0,4767,4768,3,1260,630,0,4768,4769,5,116,0,0,4769,4770,3,488,244,0,4770,4854,1,0,0,0,4771,4772,5,320,0,0,4772,4773,5,237,0,0,4773,4774,3,486,243,0,4774,4775,5,80,0,0,4775,4776,5,175,0,0,4776,4777,3,1210,605,0,4777,4778,5,116,0,0,4778,4779,3,488,244,0,4779,4854,1,0,0,0,4780,4781,5,320,0,0,4781,4782,5,237,0,0,4782,4783,3,486,243,0,4783,4784,5,80,0,0,4784,4785,5,316,0,0,4785,4786,3,1214,607,0,4786,4787,5,116,0,0,4787,4788,3,488,244,0,4788,4854,1,0,0,0,4789,4790,5,320,0,0,4790,4791,5,237,0,0,4791,4792,3,486,243,0,4792,4793,5,80,0,0,4793,4794,5,353,0,0,4794,4795,3,996,498,0,4795,4796,5,116,0,0,4796,4797,3,488,244,0,4797,4854,1,0,0,0,4798,4799,5,320,0,0,4799,4800,5,237,0,0,4800,4801,3,486,243,0,4801,4802,5,80,0,0,4802,4803,5,189,0,0,4803,4804,3,996,498,0,4804,4805,5,116,0,0,4805,4806,3,488,244,0,4806,4854,1,0,0,0,4807,4808,5,320,0,0,4808,4809,5,237,0,0,4809,4810,3,486,243,0,4810,4811,5,80,0,0,4811,4812,5,136,0,0,4812,4813,3,580,290,0,4813,4814,5,116,0,0,4814,4815,3,488,244,0,4815,4854,1,0,0,0,4816,4817,5,320,0,0,4817,4818,5,237,0,0,4818,4819,3,486,243,0,4819,4820,5,80,0,0,4820,4821,5,211,0,0,4821,4822,3,560,280,0,4822,4823,5,116,0,0,4823,4824,3,488,244,0,4824,4854,1,0,0,0,4825,4826,5,320,0,0,4826,4827,5,237,0,0,4827,4828,3,486,243,0,4828,4829,5,80,0,0,4829,4830,5,239,0,0,4830,4831,5,267,0,0,4831,4832,3,264,132,0,4832,4833,5,116,0,0,4833,4834,3,488,244,0,4834,4854,1,0,0,0,4835,4836,5,320,0,0,4836,4837,5,237,0,0,4837,4838,3,486,243,0,4838,4839,5,80,0,0,4839,4840,5,289,0,0,4840,4841,3,560,280,0,4841,4842,5,116,0,0,4842,4843,3,488,244,0,4843,4854,1,0,0,0,4844,4845,5,320,0,0,4845,4846,5,237,0,0,4846,4847,3,486,243,0,4847,4848,5,80,0,0,4848,4849,5,442,0,0,4849,4850,3,560,280,0,4850,4851,5,116,0,0,4851,4852,3,488,244,0,4852,4854,1,0,0,0,4853,4717,1,0,0,0,4853,4726,1,0,0,0,4853,4735,1,0,0,0,4853,4744,1,0,0,0,4853,4753,1,0,0,0,4853,4762,1,0,0,0,4853,4771,1,0,0,0,4853,4780,1,0,0,0,4853,4789,1,0,0,0,4853,4798,1,0,0,0,4853,4807,1,0,0,0,4853,4816,1,0,0,0,4853,4825,1,0,0,0,4853,4835,1,0,0,0,4853,4844,1,0,0,0,4854,485,1,0,0,0,4855,4856,5,62,0,0,4856,4859,3,64,32,0,4857,4859,1,0,0,0,4858,4855,1,0,0,0,4858,4857,1,0,0,0,4859,487,1,0,0,0,4860,4863,3,1252,626,0,4861,4863,5,78,0,0,4862,4860,1,0,0,0,4862,4861,1,0,0,0,4863,489,1,0,0,0,4864,4865,5,61,0,0,4865,4869,3,492,246,0,4866,4867,5,258,0,0,4867,4869,3,492,246,0,4868,4864,1,0,0,0,4868,4866,1,0,0,0,4869,491,1,0,0,0,4870,4937,3,854,427,0,4871,4872,3,494,247,0,4872,4873,3,854,427,0,4873,4937,1,0,0,0,4874,4875,5,261,0,0,4875,4876,3,496,248,0,4876,4877,3,854,427,0,4877,4937,1,0,0,0,4878,4879,5,286,0,0,4879,4880,3,496,248,0,4880,4881,3,854,427,0,4881,4937,1,0,0,0,4882,4883,5,207,0,0,4883,4884,3,496,248,0,4884,4885,3,854,427,0,4885,4937,1,0,0,0,4886,4887,5,240,0,0,4887,4888,3,496,248,0,4888,4889,3,854,427,0,4889,4937,1,0,0,0,4890,4891,5,130,0,0,4891,4892,3,1258,629,0,4892,4893,3,496,248,0,4893,4894,3,854,427,0,4894,4937,1,0,0,0,4895,4896,5,300,0,0,4896,4897,3,1258,629,0,4897,4898,3,496,248,0,4898,4899,3,854,427,0,4899,4937,1,0,0,0,4900,4901,3,1258,629,0,4901,4902,3,496,248,0,4902,4903,3,854,427,0,4903,4937,1,0,0,0,4904,4905,5,30,0,0,4905,4906,3,496,248,0,4906,4907,3,854,427,0,4907,4937,1,0,0,0,4908,4909,5,210,0,0,4909,4910,3,496,248,0,4910,4911,3,854,427,0,4911,4937,1,0,0,0,4912,4913,5,210,0,0,4913,4914,3,1258,629,0,4914,4915,3,496,248,0,4915,4916,3,854,427,0,4916,4937,1,0,0,0,4917,4918,5,210,0,0,4918,4919,5,30,0,0,4919,4920,3,496,248,0,4920,4921,3,854,427,0,4921,4937,1,0,0,0,4922,4923,5,144,0,0,4923,4924,3,496,248,0,4924,4925,3,854,427,0,4925,4937,1,0,0,0,4926,4927,5,144,0,0,4927,4928,3,1258,629,0,4928,4929,3,496,248,0,4929,4930,3,854,427,0,4930,4937,1,0,0,0,4931,4932,5,144,0,0,4932,4933,5,30,0,0,4933,4934,3,496,248,0,4934,4935,3,854,427,0,4935,4937,1,0,0,0,4936,4870,1,0,0,0,4936,4871,1,0,0,0,4936,4874,1,0,0,0,4936,4878,1,0,0,0,4936,4882,1,0,0,0,4936,4886,1,0,0,0,4936,4890,1,0,0,0,4936,4895,1,0,0,0,4936,4900,1,0,0,0,4936,4904,1,0,0,0,4936,4908,1,0,0,0,4936,4912,1,0,0,0,4936,4917,1,0,0,0,4936,4922,1,0,0,0,4936,4926,1,0,0,0,4936,4931,1,0,0,0,4937,493,1,0,0,0,4938,4939,7,23,0,0,4939,495,1,0,0,0,4940,4943,3,494,247,0,4941,4943,1,0,0,0,4942,4940,1,0,0,0,4942,4941,1,0,0,0,4943,497,1,0,0,0,4944,4945,5,65,0,0,4945,4946,3,502,251,0,4946,4947,5,80,0,0,4947,4948,3,508,254,0,4948,4949,5,94,0,0,4949,4950,3,510,255,0,4950,4951,3,514,257,0,4951,499,1,0,0,0,4952,4953,5,310,0,0,4953,4954,3,502,251,0,4954,4955,5,80,0,0,4955,4956,3,508,254,0,4956,4957,5,64,0,0,4957,4958,3,510,255,0,4958,4959,3,100,50,0,4959,4972,1,0,0,0,4960,4961,5,310,0,0,4961,4962,5,65,0,0,4962,4963,5,272,0,0,4963,4964,5,62,0,0,4964,4965,3,502,251,0,4965,4966,5,80,0,0,4966,4967,3,508,254,0,4967,4968,5,64,0,0,4968,4969,3,510,255,0,4969,4970,3,100,50,0,4970,4972,1,0,0,0,4971,4952,1,0,0,0,4971,4960,1,0,0,0,4972,501,1,0,0,0,4973,4989,3,504,252,0,4974,4989,5,30,0,0,4975,4976,5,30,0,0,4976,4989,5,287,0,0,4977,4978,5,30,0,0,4978,4979,5,2,0,0,4979,4980,3,194,97,0,4980,4981,5,3,0,0,4981,4989,1,0,0,0,4982,4983,5,30,0,0,4983,4984,5,287,0,0,4984,4985,5,2,0,0,4985,4986,3,194,97,0,4986,4987,5,3,0,0,4987,4989,1,0,0,0,4988,4973,1,0,0,0,4988,4974,1,0,0,0,4988,4975,1,0,0,0,4988,4977,1,0,0,0,4988,4982,1,0,0,0,4989,503,1,0,0,0,4990,4995,3,506,253,0,4991,4992,5,6,0,0,4992,4994,3,506,253,0,4993,4991,1,0,0,0,4994,4997,1,0,0,0,4995,4993,1,0,0,0,4995,4996,1,0,0,0,4996,505,1,0,0,0,4997,4995,1,0,0,0,4998,4999,5,88,0,0,4999,5008,3,192,96,0,5e3,5001,5,86,0,0,5001,5008,3,192,96,0,5002,5003,5,46,0,0,5003,5008,3,192,96,0,5004,5005,3,1264,632,0,5005,5006,3,192,96,0,5006,5008,1,0,0,0,5007,4998,1,0,0,0,5007,5e3,1,0,0,0,5007,5002,1,0,0,0,5007,5004,1,0,0,0,5008,507,1,0,0,0,5009,5048,3,1208,604,0,5010,5011,5,92,0,0,5011,5048,3,1208,604,0,5012,5013,5,321,0,0,5013,5048,3,1228,614,0,5014,5015,5,63,0,0,5015,5016,5,174,0,0,5016,5017,5,374,0,0,5017,5048,3,1232,616,0,5018,5019,5,63,0,0,5019,5020,5,324,0,0,5020,5048,3,1232,616,0,5021,5022,5,211,0,0,5022,5048,3,558,279,0,5023,5024,5,289,0,0,5024,5048,3,558,279,0,5025,5026,5,442,0,0,5026,5048,3,558,279,0,5027,5028,5,175,0,0,5028,5048,3,1212,606,0,5029,5030,5,189,0,0,5030,5048,3,468,234,0,5031,5032,5,238,0,0,5032,5048,3,1232,616,0,5033,5034,5,239,0,0,5034,5035,5,267,0,0,5035,5048,3,266,133,0,5036,5037,5,316,0,0,5037,5048,3,1216,608,0,5038,5039,5,344,0,0,5039,5048,3,1232,616,0,5040,5041,5,353,0,0,5041,5048,3,468,234,0,5042,5043,5,30,0,0,5043,5044,7,24,0,0,5044,5045,5,68,0,0,5045,5046,5,316,0,0,5046,5048,3,1216,608,0,5047,5009,1,0,0,0,5047,5010,1,0,0,0,5047,5012,1,0,0,0,5047,5014,1,0,0,0,5047,5018,1,0,0,0,5047,5021,1,0,0,0,5047,5023,1,0,0,0,5047,5025,1,0,0,0,5047,5027,1,0,0,0,5047,5029,1,0,0,0,5047,5031,1,0,0,0,5047,5033,1,0,0,0,5047,5036,1,0,0,0,5047,5038,1,0,0,0,5047,5040,1,0,0,0,5047,5042,1,0,0,0,5048,509,1,0,0,0,5049,5054,3,512,256,0,5050,5051,5,6,0,0,5051,5053,3,512,256,0,5052,5050,1,0,0,0,5053,5056,1,0,0,0,5054,5052,1,0,0,0,5054,5055,1,0,0,0,5055,511,1,0,0,0,5056,5054,1,0,0,0,5057,5061,3,1260,630,0,5058,5059,5,66,0,0,5059,5061,3,1260,630,0,5060,5057,1,0,0,0,5060,5058,1,0,0,0,5061,513,1,0,0,0,5062,5063,5,105,0,0,5063,5064,5,65,0,0,5064,5067,5,272,0,0,5065,5067,1,0,0,0,5066,5062,1,0,0,0,5066,5065,1,0,0,0,5067,515,1,0,0,0,5068,5069,5,65,0,0,5069,5070,3,504,252,0,5070,5071,5,94,0,0,5071,5072,3,1262,631,0,5072,5073,3,520,260,0,5073,5074,3,522,261,0,5074,517,1,0,0,0,5075,5076,5,310,0,0,5076,5077,3,504,252,0,5077,5078,5,64,0,0,5078,5079,3,1262,631,0,5079,5080,3,522,261,0,5080,5081,3,100,50,0,5081,5093,1,0,0,0,5082,5083,5,310,0,0,5083,5084,5,134,0,0,5084,5085,5,272,0,0,5085,5086,5,62,0,0,5086,5087,3,504,252,0,5087,5088,5,64,0,0,5088,5089,3,1262,631,0,5089,5090,3,522,261,0,5090,5091,3,100,50,0,5091,5093,1,0,0,0,5092,5075,1,0,0,0,5092,5082,1,0,0,0,5093,519,1,0,0,0,5094,5095,5,105,0,0,5095,5096,5,134,0,0,5096,5099,5,272,0,0,5097,5099,1,0,0,0,5098,5094,1,0,0,0,5098,5097,1,0,0,0,5099,521,1,0,0,0,5100,5101,5,214,0,0,5101,5102,5,147,0,0,5102,5105,3,1260,630,0,5103,5105,1,0,0,0,5104,5100,1,0,0,0,5104,5103,1,0,0,0,5105,523,1,0,0,0,5106,5107,5,138,0,0,5107,5108,5,53,0,0,5108,5112,5,287,0,0,5109,5111,3,526,263,0,5110,5109,1,0,0,0,5111,5114,1,0,0,0,5112,5110,1,0,0,0,5112,5113,1,0,0,0,5113,5115,1,0,0,0,5114,5112,1,0,0,0,5115,5116,3,528,264,0,5116,525,1,0,0,0,5117,5118,5,68,0,0,5118,5119,5,316,0,0,5119,5125,3,1216,608,0,5120,5121,5,62,0,0,5121,5122,3,1506,753,0,5122,5123,3,1262,631,0,5123,5125,1,0,0,0,5124,5117,1,0,0,0,5124,5120,1,0,0,0,5125,527,1,0,0,0,5126,5127,5,65,0,0,5127,5128,3,502,251,0,5128,5129,5,80,0,0,5129,5130,3,530,265,0,5130,5131,5,94,0,0,5131,5132,3,510,255,0,5132,5133,3,514,257,0,5133,5154,1,0,0,0,5134,5135,5,310,0,0,5135,5136,3,502,251,0,5136,5137,5,80,0,0,5137,5138,3,530,265,0,5138,5139,5,64,0,0,5139,5140,3,510,255,0,5140,5141,3,100,50,0,5141,5154,1,0,0,0,5142,5143,5,310,0,0,5143,5144,5,65,0,0,5144,5145,5,272,0,0,5145,5146,5,62,0,0,5146,5147,3,502,251,0,5147,5148,5,80,0,0,5148,5149,3,530,265,0,5149,5150,5,64,0,0,5150,5151,3,510,255,0,5151,5152,3,100,50,0,5152,5154,1,0,0,0,5153,5126,1,0,0,0,5153,5134,1,0,0,0,5153,5142,1,0,0,0,5154,529,1,0,0,0,5155,5156,7,25,0,0,5156,531,1,0,0,0,5157,5159,5,46,0,0,5158,5160,5,98,0,0,5159,5158,1,0,0,0,5159,5160,1,0,0,0,5160,5161,1,0,0,0,5161,5163,5,226,0,0,5162,5164,5,109,0,0,5163,5162,1,0,0,0,5163,5164,1,0,0,0,5164,5166,1,0,0,0,5165,5167,3,1234,617,0,5166,5165,1,0,0,0,5166,5167,1,0,0,0,5167,5168,1,0,0,0,5168,5169,5,80,0,0,5169,5170,3,958,479,0,5170,5171,3,534,267,0,5171,5172,5,2,0,0,5172,5173,3,536,268,0,5173,5174,5,3,0,0,5174,5175,3,542,271,0,5175,5176,3,110,55,0,5176,5177,3,232,116,0,5177,5178,3,974,487,0,5178,5203,1,0,0,0,5179,5181,5,46,0,0,5180,5182,5,98,0,0,5181,5180,1,0,0,0,5181,5182,1,0,0,0,5182,5183,1,0,0,0,5183,5185,5,226,0,0,5184,5186,5,109,0,0,5185,5184,1,0,0,0,5185,5186,1,0,0,0,5186,5187,1,0,0,0,5187,5188,5,220,0,0,5188,5189,5,77,0,0,5189,5190,5,389,0,0,5190,5191,3,1234,617,0,5191,5192,5,80,0,0,5192,5193,3,958,479,0,5193,5194,3,534,267,0,5194,5195,5,2,0,0,5195,5196,3,536,268,0,5196,5197,5,3,0,0,5197,5198,3,542,271,0,5198,5199,3,110,55,0,5199,5200,3,232,116,0,5200,5201,3,974,487,0,5201,5203,1,0,0,0,5202,5157,1,0,0,0,5202,5179,1,0,0,0,5203,533,1,0,0,0,5204,5205,5,100,0,0,5205,5208,3,1234,617,0,5206,5208,1,0,0,0,5207,5204,1,0,0,0,5207,5206,1,0,0,0,5208,535,1,0,0,0,5209,5214,3,540,270,0,5210,5211,5,6,0,0,5211,5213,3,540,270,0,5212,5210,1,0,0,0,5213,5216,1,0,0,0,5214,5212,1,0,0,0,5214,5215,1,0,0,0,5215,537,1,0,0,0,5216,5214,1,0,0,0,5217,5218,3,544,272,0,5218,5219,3,546,273,0,5219,5220,3,548,274,0,5220,5221,3,550,275,0,5221,5229,1,0,0,0,5222,5223,3,544,272,0,5223,5224,3,470,235,0,5224,5225,3,108,54,0,5225,5226,3,548,274,0,5226,5227,3,550,275,0,5227,5229,1,0,0,0,5228,5217,1,0,0,0,5228,5222,1,0,0,0,5229,539,1,0,0,0,5230,5231,3,1264,632,0,5231,5232,3,538,269,0,5232,5242,1,0,0,0,5233,5234,3,1090,545,0,5234,5235,3,538,269,0,5235,5242,1,0,0,0,5236,5237,5,2,0,0,5237,5238,3,1038,519,0,5238,5239,5,3,0,0,5239,5240,3,538,269,0,5240,5242,1,0,0,0,5241,5230,1,0,0,0,5241,5233,1,0,0,0,5241,5236,1,0,0,0,5242,541,1,0,0,0,5243,5244,5,441,0,0,5244,5245,5,2,0,0,5245,5250,3,540,270,0,5246,5247,5,6,0,0,5247,5249,3,540,270,0,5248,5246,1,0,0,0,5249,5252,1,0,0,0,5250,5248,1,0,0,0,5250,5251,1,0,0,0,5251,5253,1,0,0,0,5252,5250,1,0,0,0,5253,5254,5,3,0,0,5254,5257,1,0,0,0,5255,5257,1,0,0,0,5256,5243,1,0,0,0,5256,5255,1,0,0,0,5257,543,1,0,0,0,5258,5259,5,43,0,0,5259,5262,3,470,235,0,5260,5262,1,0,0,0,5261,5258,1,0,0,0,5261,5260,1,0,0,0,5262,545,1,0,0,0,5263,5266,3,470,235,0,5264,5266,1,0,0,0,5265,5263,1,0,0,0,5265,5264,1,0,0,0,5266,547,1,0,0,0,5267,5271,5,37,0,0,5268,5271,5,55,0,0,5269,5271,1,0,0,0,5270,5267,1,0,0,0,5270,5268,1,0,0,0,5270,5269,1,0,0,0,5271,549,1,0,0,0,5272,5273,5,266,0,0,5273,5278,5,207,0,0,5274,5275,5,266,0,0,5275,5278,5,240,0,0,5276,5278,1,0,0,0,5277,5272,1,0,0,0,5277,5274,1,0,0,0,5277,5276,1,0,0,0,5278,551,1,0,0,0,5279,5280,5,46,0,0,5280,5281,3,554,277,0,5281,5282,7,21,0,0,5282,5283,3,1240,620,0,5283,5285,5,2,0,0,5284,5286,3,562,281,0,5285,5284,1,0,0,0,5285,5286,1,0,0,0,5286,5287,1,0,0,0,5287,5297,5,3,0,0,5288,5295,5,309,0,0,5289,5296,3,572,286,0,5290,5291,5,92,0,0,5291,5292,5,2,0,0,5292,5293,3,598,299,0,5293,5294,5,3,0,0,5294,5296,1,0,0,0,5295,5289,1,0,0,0,5295,5290,1,0,0,0,5296,5298,1,0,0,0,5297,5288,1,0,0,0,5297,5298,1,0,0,0,5298,5299,1,0,0,0,5299,5300,3,584,292,0,5300,553,1,0,0,0,5301,5302,5,82,0,0,5302,5305,5,304,0,0,5303,5305,1,0,0,0,5304,5301,1,0,0,0,5304,5303,1,0,0,0,5305,555,1,0,0,0,5306,5311,3,566,283,0,5307,5308,5,6,0,0,5308,5310,3,566,283,0,5309,5307,1,0,0,0,5310,5313,1,0,0,0,5311,5309,1,0,0,0,5311,5312,1,0,0,0,5312,557,1,0,0,0,5313,5311,1,0,0,0,5314,5319,3,560,280,0,5315,5316,5,6,0,0,5316,5318,3,560,280,0,5317,5315,1,0,0,0,5318,5321,1,0,0,0,5319,5317,1,0,0,0,5319,5320,1,0,0,0,5320,559,1,0,0,0,5321,5319,1,0,0,0,5322,5323,3,1240,620,0,5323,5325,5,2,0,0,5324,5326,3,556,278,0,5325,5324,1,0,0,0,5325,5326,1,0,0,0,5326,5327,1,0,0,0,5327,5328,5,3,0,0,5328,5335,1,0,0,0,5329,5335,3,1282,641,0,5330,5332,3,1264,632,0,5331,5333,3,1198,599,0,5332,5331,1,0,0,0,5332,5333,1,0,0,0,5333,5335,1,0,0,0,5334,5322,1,0,0,0,5334,5329,1,0,0,0,5334,5330,1,0,0,0,5335,561,1,0,0,0,5336,5341,3,564,282,0,5337,5338,5,6,0,0,5338,5340,3,564,282,0,5339,5337,1,0,0,0,5340,5343,1,0,0,0,5341,5339,1,0,0,0,5341,5342,1,0,0,0,5342,563,1,0,0,0,5343,5341,1,0,0,0,5344,5347,3,566,283,0,5345,5346,7,26,0,0,5346,5348,3,1038,519,0,5347,5345,1,0,0,0,5347,5348,1,0,0,0,5348,565,1,0,0,0,5349,5351,3,568,284,0,5350,5352,3,570,285,0,5351,5350,1,0,0,0,5351,5352,1,0,0,0,5352,5353,1,0,0,0,5353,5354,3,574,287,0,5354,5363,1,0,0,0,5355,5357,3,570,285,0,5356,5358,3,568,284,0,5357,5356,1,0,0,0,5357,5358,1,0,0,0,5358,5359,1,0,0,0,5359,5360,3,574,287,0,5360,5363,1,0,0,0,5361,5363,3,574,287,0,5362,5349,1,0,0,0,5362,5355,1,0,0,0,5362,5361,1,0,0,0,5363,567,1,0,0,0,5364,5366,5,68,0,0,5365,5367,5,453,0,0,5366,5365,1,0,0,0,5366,5367,1,0,0,0,5367,5372,1,0,0,0,5368,5372,5,453,0,0,5369,5372,5,393,0,0,5370,5372,5,101,0,0,5371,5364,1,0,0,0,5371,5368,1,0,0,0,5371,5369,1,0,0,0,5371,5370,1,0,0,0,5372,569,1,0,0,0,5373,5378,3,1268,634,0,5374,5378,3,1286,643,0,5375,5378,5,119,0,0,5376,5378,5,126,0,0,5377,5373,1,0,0,0,5377,5374,1,0,0,0,5377,5375,1,0,0,0,5377,5376,1,0,0,0,5378,571,1,0,0,0,5379,5380,3,574,287,0,5380,573,1,0,0,0,5381,5396,3,996,498,0,5382,5384,5,408,0,0,5383,5382,1,0,0,0,5383,5384,1,0,0,0,5384,5389,1,0,0,0,5385,5390,3,1286,643,0,5386,5390,3,1268,634,0,5387,5390,5,119,0,0,5388,5390,5,126,0,0,5389,5385,1,0,0,0,5389,5386,1,0,0,0,5389,5387,1,0,0,0,5389,5388,1,0,0,0,5390,5391,1,0,0,0,5391,5392,3,472,236,0,5392,5393,5,27,0,0,5393,5394,5,353,0,0,5394,5396,1,0,0,0,5395,5381,1,0,0,0,5395,5383,1,0,0,0,5396,575,1,0,0,0,5397,5408,5,2,0,0,5398,5409,5,9,0,0,5399,5409,3,578,289,0,5400,5401,5,83,0,0,5401,5402,5,147,0,0,5402,5409,3,578,289,0,5403,5404,3,578,289,0,5404,5405,5,83,0,0,5405,5406,5,147,0,0,5406,5407,3,578,289,0,5407,5409,1,0,0,0,5408,5398,1,0,0,0,5408,5399,1,0,0,0,5408,5400,1,0,0,0,5408,5403,1,0,0,0,5409,5410,1,0,0,0,5410,5411,5,3,0,0,5411,577,1,0,0,0,5412,5417,3,566,283,0,5413,5414,5,6,0,0,5414,5416,3,566,283,0,5415,5413,1,0,0,0,5416,5419,1,0,0,0,5417,5415,1,0,0,0,5417,5418,1,0,0,0,5418,579,1,0,0,0,5419,5417,1,0,0,0,5420,5421,3,1240,620,0,5421,5422,3,576,288,0,5422,581,1,0,0,0,5423,5428,3,580,290,0,5424,5425,5,6,0,0,5425,5427,3,580,290,0,5426,5424,1,0,0,0,5427,5430,1,0,0,0,5428,5426,1,0,0,0,5428,5429,1,0,0,0,5429,583,1,0,0,0,5430,5428,1,0,0,0,5431,5433,3,588,294,0,5432,5431,1,0,0,0,5433,5434,1,0,0,0,5434,5432,1,0,0,0,5434,5435,1,0,0,0,5435,5436,1,0,0,0,5436,5437,6,292,-1,0,5437,585,1,0,0,0,5438,5439,5,149,0,0,5439,5440,5,80,0,0,5440,5441,5,78,0,0,5441,5474,5,458,0,0,5442,5443,5,309,0,0,5443,5444,5,78,0,0,5444,5445,5,80,0,0,5445,5446,5,78,0,0,5446,5474,5,458,0,0,5447,5474,5,339,0,0,5448,5474,5,222,0,0,5449,5474,5,331,0,0,5450,5474,5,370,0,0,5451,5452,5,205,0,0,5452,5453,5,320,0,0,5453,5474,5,181,0,0,5454,5455,5,205,0,0,5455,5456,5,320,0,0,5456,5474,5,234,0,0,5457,5458,5,320,0,0,5458,5474,5,181,0,0,5459,5460,5,320,0,0,5460,5474,5,234,0,0,5461,5474,5,241,0,0,5462,5463,5,77,0,0,5463,5474,5,241,0,0,5464,5465,5,170,0,0,5465,5474,3,264,132,0,5466,5467,5,313,0,0,5467,5474,3,264,132,0,5468,5469,5,459,0,0,5469,5474,3,470,235,0,5470,5474,3,74,37,0,5471,5472,5,460,0,0,5472,5474,3,1264,632,0,5473,5438,1,0,0,0,5473,5442,1,0,0,0,5473,5447,1,0,0,0,5473,5448,1,0,0,0,5473,5449,1,0,0,0,5473,5450,1,0,0,0,5473,5451,1,0,0,0,5473,5454,1,0,0,0,5473,5457,1,0,0,0,5473,5459,1,0,0,0,5473,5461,1,0,0,0,5473,5462,1,0,0,0,5473,5464,1,0,0,0,5473,5466,1,0,0,0,5473,5468,1,0,0,0,5473,5470,1,0,0,0,5473,5471,1,0,0,0,5474,587,1,0,0,0,5475,5476,5,36,0,0,5476,5484,3,590,295,0,5477,5478,5,238,0,0,5478,5484,3,64,32,0,5479,5480,5,443,0,0,5480,5484,3,592,296,0,5481,5484,5,104,0,0,5482,5484,3,586,293,0,5483,5475,1,0,0,0,5483,5477,1,0,0,0,5483,5479,1,0,0,0,5483,5481,1,0,0,0,5483,5482,1,0,0,0,5484,589,1,0,0,0,5485,5491,3,1252,626,0,5486,5487,3,1252,626,0,5487,5488,5,6,0,0,5488,5489,3,1252,626,0,5489,5491,1,0,0,0,5490,5485,1,0,0,0,5490,5486,1,0,0,0,5491,591,1,0,0,0,5492,5493,5,62,0,0,5493,5494,5,353,0,0,5494,5501,3,996,498,0,5495,5496,5,6,0,0,5496,5497,5,62,0,0,5497,5498,5,353,0,0,5498,5500,3,996,498,0,5499,5495,1,0,0,0,5500,5503,1,0,0,0,5501,5499,1,0,0,0,5501,5502,1,0,0,0,5502,593,1,0,0,0,5503,5501,1,0,0,0,5504,5505,5,105,0,0,5505,5508,3,416,208,0,5506,5508,1,0,0,0,5507,5504,1,0,0,0,5507,5506,1,0,0,0,5508,595,1,0,0,0,5509,5510,3,570,285,0,5510,5511,3,574,287,0,5511,597,1,0,0,0,5512,5517,3,596,298,0,5513,5514,5,6,0,0,5514,5516,3,596,298,0,5515,5513,1,0,0,0,5516,5519,1,0,0,0,5517,5515,1,0,0,0,5517,5518,1,0,0,0,5518,599,1,0,0,0,5519,5517,1,0,0,0,5520,5521,5,138,0,0,5521,5522,7,27,0,0,5522,5524,3,560,280,0,5523,5525,3,586,293,0,5524,5523,1,0,0,0,5525,5526,1,0,0,0,5526,5524,1,0,0,0,5526,5527,1,0,0,0,5527,5529,1,0,0,0,5528,5530,5,308,0,0,5529,5528,1,0,0,0,5529,5530,1,0,0,0,5530,601,1,0,0,0,5531,5532,5,191,0,0,5532,5533,5,211,0,0,5533,5534,3,558,279,0,5534,5535,3,100,50,0,5535,5568,1,0,0,0,5536,5537,5,191,0,0,5537,5538,5,211,0,0,5538,5539,5,220,0,0,5539,5540,5,389,0,0,5540,5541,3,558,279,0,5541,5542,3,100,50,0,5542,5568,1,0,0,0,5543,5544,5,191,0,0,5544,5545,5,289,0,0,5545,5546,3,558,279,0,5546,5547,3,100,50,0,5547,5568,1,0,0,0,5548,5549,5,191,0,0,5549,5550,5,289,0,0,5550,5551,5,220,0,0,5551,5552,5,389,0,0,5552,5553,3,558,279,0,5553,5554,3,100,50,0,5554,5568,1,0,0,0,5555,5556,5,191,0,0,5556,5557,5,442,0,0,5557,5558,3,558,279,0,5558,5559,3,100,50,0,5559,5568,1,0,0,0,5560,5561,5,191,0,0,5561,5562,5,442,0,0,5562,5563,5,220,0,0,5563,5564,5,389,0,0,5564,5565,3,558,279,0,5565,5566,3,100,50,0,5566,5568,1,0,0,0,5567,5531,1,0,0,0,5567,5536,1,0,0,0,5567,5543,1,0,0,0,5567,5548,1,0,0,0,5567,5555,1,0,0,0,5567,5560,1,0,0,0,5568,603,1,0,0,0,5569,5570,5,191,0,0,5570,5571,5,136,0,0,5571,5572,3,582,291,0,5572,5573,3,100,50,0,5573,5582,1,0,0,0,5574,5575,5,191,0,0,5575,5576,5,136,0,0,5576,5577,5,220,0,0,5577,5578,5,389,0,0,5578,5579,3,582,291,0,5579,5580,3,100,50,0,5580,5582,1,0,0,0,5581,5569,1,0,0,0,5581,5574,1,0,0,0,5582,605,1,0,0,0,5583,5584,5,191,0,0,5584,5585,5,271,0,0,5585,5586,3,612,306,0,5586,5587,3,100,50,0,5587,5596,1,0,0,0,5588,5589,5,191,0,0,5589,5590,5,271,0,0,5590,5591,5,220,0,0,5591,5592,5,389,0,0,5592,5593,3,612,306,0,5593,5594,3,100,50,0,5594,5596,1,0,0,0,5595,5583,1,0,0,0,5595,5588,1,0,0,0,5596,607,1,0,0,0,5597,5598,5,2,0,0,5598,5599,3,996,498,0,5599,5600,5,3,0,0,5600,5620,1,0,0,0,5601,5602,5,2,0,0,5602,5603,3,996,498,0,5603,5604,5,6,0,0,5604,5605,3,996,498,0,5605,5606,5,3,0,0,5606,5620,1,0,0,0,5607,5608,5,2,0,0,5608,5609,5,400,0,0,5609,5610,5,6,0,0,5610,5611,3,996,498,0,5611,5612,5,3,0,0,5612,5620,1,0,0,0,5613,5614,5,2,0,0,5614,5615,3,996,498,0,5615,5616,5,6,0,0,5616,5617,5,400,0,0,5617,5618,5,3,0,0,5618,5620,1,0,0,0,5619,5597,1,0,0,0,5619,5601,1,0,0,0,5619,5607,1,0,0,0,5619,5613,1,0,0,0,5620,609,1,0,0,0,5621,5622,3,1264,632,0,5622,5623,5,11,0,0,5623,5625,1,0,0,0,5624,5621,1,0,0,0,5625,5628,1,0,0,0,5626,5624,1,0,0,0,5626,5627,1,0,0,0,5627,5629,1,0,0,0,5628,5626,1,0,0,0,5629,5630,3,1146,573,0,5630,611,1,0,0,0,5631,5636,3,614,307,0,5632,5633,5,6,0,0,5633,5635,3,614,307,0,5634,5632,1,0,0,0,5635,5638,1,0,0,0,5636,5634,1,0,0,0,5636,5637,1,0,0,0,5637,613,1,0,0,0,5638,5636,1,0,0,0,5639,5640,3,610,305,0,5640,5641,3,608,304,0,5641,615,1,0,0,0,5642,5643,5,57,0,0,5643,5644,3,618,309,0,5644,617,1,0,0,0,5645,5647,3,620,310,0,5646,5645,1,0,0,0,5647,5648,1,0,0,0,5648,5646,1,0,0,0,5648,5649,1,0,0,0,5649,619,1,0,0,0,5650,5654,3,1252,626,0,5651,5652,5,238,0,0,5652,5654,3,64,32,0,5653,5650,1,0,0,0,5653,5651,1,0,0,0,5654,621,1,0,0,0,5655,5656,5,46,0,0,5656,5657,5,41,0,0,5657,5658,5,2,0,0,5658,5659,3,996,498,0,5659,5660,5,36,0,0,5660,5661,3,996,498,0,5661,5662,5,3,0,0,5662,5663,5,105,0,0,5663,5664,5,211,0,0,5664,5665,3,560,280,0,5665,5666,3,624,312,0,5666,5690,1,0,0,0,5667,5668,5,46,0,0,5668,5669,5,41,0,0,5669,5670,5,2,0,0,5670,5671,3,996,498,0,5671,5672,5,36,0,0,5672,5673,3,996,498,0,5673,5674,5,3,0,0,5674,5675,5,372,0,0,5675,5676,5,211,0,0,5676,5677,3,624,312,0,5677,5690,1,0,0,0,5678,5679,5,46,0,0,5679,5680,5,41,0,0,5680,5681,5,2,0,0,5681,5682,3,996,498,0,5682,5683,5,36,0,0,5683,5684,3,996,498,0,5684,5685,5,3,0,0,5685,5686,5,105,0,0,5686,5687,5,393,0,0,5687,5688,3,624,312,0,5688,5690,1,0,0,0,5689,5655,1,0,0,0,5689,5667,1,0,0,0,5689,5678,1,0,0,0,5690,623,1,0,0,0,5691,5692,5,36,0,0,5692,5697,5,223,0,0,5693,5694,5,36,0,0,5694,5697,5,141,0,0,5695,5697,1,0,0,0,5696,5691,1,0,0,0,5696,5693,1,0,0,0,5696,5695,1,0,0,0,5697,625,1,0,0,0,5698,5699,5,191,0,0,5699,5700,5,41,0,0,5700,5701,3,628,314,0,5701,5702,5,2,0,0,5702,5703,3,996,498,0,5703,5704,5,36,0,0,5704,5705,3,996,498,0,5705,5706,5,3,0,0,5706,5707,3,100,50,0,5707,627,1,0,0,0,5708,5709,5,220,0,0,5709,5712,5,389,0,0,5710,5712,1,0,0,0,5711,5708,1,0,0,0,5711,5710,1,0,0,0,5712,629,1,0,0,0,5713,5714,5,46,0,0,5714,5715,3,554,277,0,5715,5716,5,443,0,0,5716,5717,5,62,0,0,5717,5718,3,996,498,0,5718,5719,5,238,0,0,5719,5720,3,1234,617,0,5720,5721,5,2,0,0,5721,5722,3,632,316,0,5722,5723,5,3,0,0,5723,631,1,0,0,0,5724,5725,5,64,0,0,5725,5726,5,461,0,0,5726,5727,5,105,0,0,5727,5728,5,211,0,0,5728,5729,3,560,280,0,5729,5730,5,6,0,0,5730,5731,5,94,0,0,5731,5732,5,461,0,0,5732,5733,5,105,0,0,5733,5734,5,211,0,0,5734,5735,3,560,280,0,5735,5759,1,0,0,0,5736,5737,5,94,0,0,5737,5738,5,461,0,0,5738,5739,5,105,0,0,5739,5740,5,211,0,0,5740,5741,3,560,280,0,5741,5742,5,6,0,0,5742,5743,5,64,0,0,5743,5744,5,461,0,0,5744,5745,5,105,0,0,5745,5746,5,211,0,0,5746,5747,3,560,280,0,5747,5759,1,0,0,0,5748,5749,5,64,0,0,5749,5750,5,461,0,0,5750,5751,5,105,0,0,5751,5752,5,211,0,0,5752,5759,3,560,280,0,5753,5754,5,94,0,0,5754,5755,5,461,0,0,5755,5756,5,105,0,0,5756,5757,5,211,0,0,5757,5759,3,560,280,0,5758,5724,1,0,0,0,5758,5736,1,0,0,0,5758,5748,1,0,0,0,5758,5753,1,0,0,0,5759,633,1,0,0,0,5760,5761,5,191,0,0,5761,5762,5,443,0,0,5762,5763,3,628,314,0,5763,5764,5,62,0,0,5764,5765,3,996,498,0,5765,5766,5,238,0,0,5766,5767,3,1234,617,0,5767,5768,3,100,50,0,5768,635,1,0,0,0,5769,5774,5,299,0,0,5770,5771,5,2,0,0,5771,5772,3,640,320,0,5772,5773,5,3,0,0,5773,5775,1,0,0,0,5774,5770,1,0,0,0,5774,5775,1,0,0,0,5775,5776,1,0,0,0,5776,5778,3,638,319,0,5777,5779,5,109,0,0,5778,5777,1,0,0,0,5778,5779,1,0,0,0,5779,5780,1,0,0,0,5780,5781,3,1230,615,0,5781,5831,1,0,0,0,5782,5787,5,299,0,0,5783,5784,5,2,0,0,5784,5785,3,640,320,0,5785,5786,5,3,0,0,5786,5788,1,0,0,0,5787,5783,1,0,0,0,5787,5788,1,0,0,0,5788,5789,1,0,0,0,5789,5791,5,175,0,0,5790,5792,5,109,0,0,5791,5790,1,0,0,0,5791,5792,1,0,0,0,5792,5793,1,0,0,0,5793,5831,3,1210,605,0,5794,5799,5,299,0,0,5795,5796,5,2,0,0,5796,5797,3,640,320,0,5797,5798,5,3,0,0,5798,5800,1,0,0,0,5799,5795,1,0,0,0,5799,5800,1,0,0,0,5800,5801,1,0,0,0,5801,5803,5,316,0,0,5802,5804,5,109,0,0,5803,5802,1,0,0,0,5803,5804,1,0,0,0,5804,5805,1,0,0,0,5805,5831,3,1214,607,0,5806,5811,5,299,0,0,5807,5808,5,2,0,0,5808,5809,3,640,320,0,5809,5810,5,3,0,0,5810,5812,1,0,0,0,5811,5807,1,0,0,0,5811,5812,1,0,0,0,5812,5813,1,0,0,0,5813,5815,5,226,0,0,5814,5816,5,109,0,0,5815,5814,1,0,0,0,5815,5816,1,0,0,0,5816,5817,1,0,0,0,5817,5831,3,1218,609,0,5818,5823,5,299,0,0,5819,5820,5,2,0,0,5820,5821,3,640,320,0,5821,5822,5,3,0,0,5822,5824,1,0,0,0,5823,5819,1,0,0,0,5823,5824,1,0,0,0,5824,5825,1,0,0,0,5825,5827,5,342,0,0,5826,5828,5,109,0,0,5827,5826,1,0,0,0,5827,5828,1,0,0,0,5828,5829,1,0,0,0,5829,5831,3,1234,617,0,5830,5769,1,0,0,0,5830,5782,1,0,0,0,5830,5794,1,0,0,0,5830,5806,1,0,0,0,5830,5818,1,0,0,0,5831,637,1,0,0,0,5832,5833,7,28,0,0,5833,639,1,0,0,0,5834,5839,3,642,321,0,5835,5836,5,6,0,0,5836,5838,3,642,321,0,5837,5835,1,0,0,0,5838,5841,1,0,0,0,5839,5837,1,0,0,0,5839,5840,1,0,0,0,5840,641,1,0,0,0,5841,5839,1,0,0,0,5842,5843,7,29,0,0,5843,643,1,0,0,0,5844,5845,5,138,0,0,5845,5846,5,344,0,0,5846,5847,3,1234,617,0,5847,5848,5,326,0,0,5848,5849,3,108,54,0,5849,5857,1,0,0,0,5850,5851,5,138,0,0,5851,5852,5,344,0,0,5852,5853,3,1234,617,0,5853,5854,5,306,0,0,5854,5855,3,108,54,0,5855,5857,1,0,0,0,5856,5844,1,0,0,0,5856,5850,1,0,0,0,5857,645,1,0,0,0,5858,5859,5,138,0,0,5859,5860,5,136,0,0,5860,5861,3,580,290,0,5861,5862,5,302,0,0,5862,5863,5,94,0,0,5863,5864,3,1234,617,0,5864,6296,1,0,0,0,5865,5866,5,138,0,0,5866,5867,5,108,0,0,5867,5868,3,470,235,0,5868,5869,5,302,0,0,5869,5870,5,94,0,0,5870,5871,3,1234,617,0,5871,6296,1,0,0,0,5872,5873,5,138,0,0,5873,5874,5,168,0,0,5874,5875,3,470,235,0,5875,5876,5,302,0,0,5876,5877,5,94,0,0,5877,5878,3,1234,617,0,5878,6296,1,0,0,0,5879,5880,5,138,0,0,5880,5881,5,175,0,0,5881,5882,3,1210,605,0,5882,5883,5,302,0,0,5883,5884,5,94,0,0,5884,5885,3,1234,617,0,5885,6296,1,0,0,0,5886,5887,5,138,0,0,5887,5888,5,189,0,0,5888,5889,3,470,235,0,5889,5890,5,302,0,0,5890,5891,5,94,0,0,5891,5892,3,1234,617,0,5892,6296,1,0,0,0,5893,5894,5,138,0,0,5894,5895,5,189,0,0,5895,5896,3,470,235,0,5896,5897,5,302,0,0,5897,5898,5,45,0,0,5898,5899,3,1224,612,0,5899,5900,5,94,0,0,5900,5901,3,1234,617,0,5901,6296,1,0,0,0,5902,5903,5,138,0,0,5903,5904,5,63,0,0,5904,5905,5,174,0,0,5905,5906,5,374,0,0,5906,5907,3,1234,617,0,5907,5908,5,302,0,0,5908,5909,5,94,0,0,5909,5910,3,1234,617,0,5910,6296,1,0,0,0,5911,5912,5,138,0,0,5912,5913,5,211,0,0,5913,5914,3,560,280,0,5914,5915,5,302,0,0,5915,5916,5,94,0,0,5916,5917,3,1234,617,0,5917,6296,1,0,0,0,5918,5919,5,138,0,0,5919,5920,3,276,138,0,5920,5921,5,238,0,0,5921,5922,3,1234,617,0,5922,5923,5,302,0,0,5923,5924,5,94,0,0,5924,5925,3,1234,617,0,5925,6296,1,0,0,0,5926,5927,5,138,0,0,5927,5928,5,271,0,0,5928,5929,5,156,0,0,5929,5930,3,470,235,0,5930,5931,5,100,0,0,5931,5932,3,1234,617,0,5932,5933,5,302,0,0,5933,5934,5,94,0,0,5934,5935,3,1234,617,0,5935,6296,1,0,0,0,5936,5937,5,138,0,0,5937,5938,5,271,0,0,5938,5939,5,206,0,0,5939,5940,3,470,235,0,5940,5941,5,100,0,0,5941,5942,3,1234,617,0,5942,5943,5,302,0,0,5943,5944,5,94,0,0,5944,5945,3,1234,617,0,5945,6296,1,0,0,0,5946,5947,5,138,0,0,5947,5948,5,445,0,0,5948,5949,3,1234,617,0,5949,5950,5,80,0,0,5950,5951,3,1230,615,0,5951,5952,5,302,0,0,5952,5953,5,94,0,0,5953,5954,3,1234,617,0,5954,6296,1,0,0,0,5955,5956,5,138,0,0,5956,5957,5,445,0,0,5957,5958,5,220,0,0,5958,5959,5,389,0,0,5959,5960,3,1234,617,0,5960,5961,5,80,0,0,5961,5962,3,1230,615,0,5962,5963,5,302,0,0,5963,5964,5,94,0,0,5964,5965,3,1234,617,0,5965,6296,1,0,0,0,5966,5967,5,138,0,0,5967,5968,5,289,0,0,5968,5969,3,560,280,0,5969,5970,5,302,0,0,5970,5971,5,94,0,0,5971,5972,3,1234,617,0,5972,6296,1,0,0,0,5973,5974,5,138,0,0,5974,5975,5,452,0,0,5975,5976,3,1234,617,0,5976,5977,5,302,0,0,5977,5978,5,94,0,0,5978,5979,3,1234,617,0,5979,6296,1,0,0,0,5980,5981,5,138,0,0,5981,5982,5,442,0,0,5982,5983,3,560,280,0,5983,5984,5,302,0,0,5984,5985,5,94,0,0,5985,5986,3,1234,617,0,5986,6296,1,0,0,0,5987,5988,5,138,0,0,5988,5989,5,316,0,0,5989,5990,3,1214,607,0,5990,5991,5,302,0,0,5991,5992,5,94,0,0,5992,5993,3,1234,617,0,5993,6296,1,0,0,0,5994,5995,5,138,0,0,5995,5996,5,324,0,0,5996,5997,3,1234,617,0,5997,5998,5,302,0,0,5998,5999,5,94,0,0,5999,6e3,3,1234,617,0,6e3,6296,1,0,0,0,6001,6002,5,138,0,0,6002,6003,5,451,0,0,6003,6004,3,1234,617,0,6004,6005,5,302,0,0,6005,6006,5,94,0,0,6006,6007,3,1234,617,0,6007,6296,1,0,0,0,6008,6009,5,138,0,0,6009,6010,5,92,0,0,6010,6011,3,958,479,0,6011,6012,5,302,0,0,6012,6013,5,94,0,0,6013,6014,3,1234,617,0,6014,6296,1,0,0,0,6015,6016,5,138,0,0,6016,6017,5,92,0,0,6017,6018,5,220,0,0,6018,6019,5,389,0,0,6019,6020,3,958,479,0,6020,6021,5,302,0,0,6021,6022,5,94,0,0,6022,6023,3,1234,617,0,6023,6296,1,0,0,0,6024,6025,5,138,0,0,6025,6028,5,321,0,0,6026,6027,5,220,0,0,6027,6029,5,389,0,0,6028,6026,1,0,0,0,6028,6029,1,0,0,0,6029,6030,1,0,0,0,6030,6031,3,1226,613,0,6031,6032,5,302,0,0,6032,6033,5,94,0,0,6033,6034,3,1234,617,0,6034,6296,1,0,0,0,6035,6036,5,138,0,0,6036,6037,5,369,0,0,6037,6038,3,1230,615,0,6038,6039,5,302,0,0,6039,6040,5,94,0,0,6040,6041,3,1234,617,0,6041,6296,1,0,0,0,6042,6043,5,138,0,0,6043,6044,5,369,0,0,6044,6045,5,220,0,0,6045,6046,5,389,0,0,6046,6047,3,1230,615,0,6047,6048,5,302,0,0,6048,6049,5,94,0,0,6049,6050,3,1234,617,0,6050,6296,1,0,0,0,6051,6052,5,138,0,0,6052,6053,5,251,0,0,6053,6054,5,369,0,0,6054,6055,3,1230,615,0,6055,6056,5,302,0,0,6056,6057,5,94,0,0,6057,6058,3,1234,617,0,6058,6296,1,0,0,0,6059,6060,5,138,0,0,6060,6061,5,251,0,0,6061,6062,5,369,0,0,6062,6063,5,220,0,0,6063,6064,5,389,0,0,6064,6065,3,1230,615,0,6065,6066,5,302,0,0,6066,6067,5,94,0,0,6067,6068,3,1234,617,0,6068,6296,1,0,0,0,6069,6070,5,138,0,0,6070,6073,5,226,0,0,6071,6072,5,220,0,0,6072,6074,5,389,0,0,6073,6071,1,0,0,0,6073,6074,1,0,0,0,6074,6075,1,0,0,0,6075,6076,3,1218,609,0,6076,6077,5,302,0,0,6077,6078,5,94,0,0,6078,6079,3,1234,617,0,6079,6296,1,0,0,0,6080,6081,5,138,0,0,6081,6082,5,63,0,0,6082,6083,5,92,0,0,6083,6084,3,958,479,0,6084,6085,5,302,0,0,6085,6086,5,94,0,0,6086,6087,3,1234,617,0,6087,6296,1,0,0,0,6088,6089,5,138,0,0,6089,6090,5,63,0,0,6090,6091,5,92,0,0,6091,6092,5,220,0,0,6092,6093,5,389,0,0,6093,6094,3,958,479,0,6094,6095,5,302,0,0,6095,6096,5,94,0,0,6096,6097,3,1234,617,0,6097,6296,1,0,0,0,6098,6099,5,138,0,0,6099,6100,5,92,0,0,6100,6101,3,958,479,0,6101,6102,5,302,0,0,6102,6103,3,648,324,0,6103,6104,3,1234,617,0,6104,6105,5,94,0,0,6105,6106,3,1234,617,0,6106,6296,1,0,0,0,6107,6108,5,138,0,0,6108,6109,5,92,0,0,6109,6110,5,220,0,0,6110,6111,5,389,0,0,6111,6112,3,958,479,0,6112,6113,5,302,0,0,6113,6114,3,648,324,0,6114,6115,3,1234,617,0,6115,6116,5,94,0,0,6116,6117,3,1234,617,0,6117,6296,1,0,0,0,6118,6119,5,138,0,0,6119,6120,5,369,0,0,6120,6121,3,1230,615,0,6121,6122,5,302,0,0,6122,6123,3,648,324,0,6123,6124,3,1234,617,0,6124,6125,5,94,0,0,6125,6126,3,1234,617,0,6126,6296,1,0,0,0,6127,6128,5,138,0,0,6128,6129,5,369,0,0,6129,6130,5,220,0,0,6130,6131,5,389,0,0,6131,6132,3,1230,615,0,6132,6133,5,302,0,0,6133,6134,3,648,324,0,6134,6135,3,1234,617,0,6135,6136,5,94,0,0,6136,6137,3,1234,617,0,6137,6296,1,0,0,0,6138,6139,5,138,0,0,6139,6140,5,251,0,0,6140,6141,5,369,0,0,6141,6142,3,1230,615,0,6142,6143,5,302,0,0,6143,6144,3,648,324,0,6144,6145,3,1234,617,0,6145,6146,5,94,0,0,6146,6147,3,1234,617,0,6147,6296,1,0,0,0,6148,6149,5,138,0,0,6149,6150,5,251,0,0,6150,6151,5,369,0,0,6151,6152,5,220,0,0,6152,6153,5,389,0,0,6153,6154,3,1230,615,0,6154,6155,5,302,0,0,6155,6156,3,648,324,0,6156,6157,3,1234,617,0,6157,6158,5,94,0,0,6158,6159,3,1234,617,0,6159,6296,1,0,0,0,6160,6161,5,138,0,0,6161,6164,5,92,0,0,6162,6163,5,220,0,0,6163,6165,5,389,0,0,6164,6162,1,0,0,0,6164,6165,1,0,0,0,6165,6166,1,0,0,0,6166,6167,3,958,479,0,6167,6168,5,302,0,0,6168,6169,5,45,0,0,6169,6170,3,1224,612,0,6170,6171,5,94,0,0,6171,6172,3,1234,617,0,6172,6296,1,0,0,0,6173,6174,5,138,0,0,6174,6175,5,63,0,0,6175,6176,5,92,0,0,6176,6177,3,958,479,0,6177,6178,5,302,0,0,6178,6179,3,648,324,0,6179,6180,3,1234,617,0,6180,6181,5,94,0,0,6181,6182,3,1234,617,0,6182,6296,1,0,0,0,6183,6184,5,138,0,0,6184,6185,5,63,0,0,6185,6186,5,92,0,0,6186,6187,5,220,0,0,6187,6188,5,389,0,0,6188,6189,3,958,479,0,6189,6190,5,302,0,0,6190,6191,3,648,324,0,6191,6192,3,1234,617,0,6192,6193,5,94,0,0,6193,6194,3,1234,617,0,6194,6296,1,0,0,0,6195,6196,5,138,0,0,6196,6197,5,314,0,0,6197,6198,3,1234,617,0,6198,6199,5,80,0,0,6199,6200,3,1230,615,0,6200,6201,5,302,0,0,6201,6202,5,94,0,0,6202,6203,3,1234,617,0,6203,6296,1,0,0,0,6204,6205,5,138,0,0,6205,6206,5,350,0,0,6206,6207,3,1222,611,0,6207,6208,5,80,0,0,6208,6209,3,1230,615,0,6209,6210,5,302,0,0,6210,6211,5,94,0,0,6211,6212,3,1234,617,0,6212,6296,1,0,0,0,6213,6214,5,138,0,0,6214,6215,5,198,0,0,6215,6216,5,350,0,0,6216,6217,3,1234,617,0,6217,6218,5,302,0,0,6218,6219,5,94,0,0,6219,6220,3,1234,617,0,6220,6296,1,0,0,0,6221,6222,5,138,0,0,6222,6223,3,1506,753,0,6223,6224,3,1260,630,0,6224,6225,5,302,0,0,6225,6226,5,94,0,0,6226,6227,3,1260,630,0,6227,6296,1,0,0,0,6228,6229,5,138,0,0,6229,6230,5,344,0,0,6230,6231,3,1234,617,0,6231,6232,5,302,0,0,6232,6233,5,94,0,0,6233,6234,3,1234,617,0,6234,6296,1,0,0,0,6235,6236,5,138,0,0,6236,6237,5,335,0,0,6237,6238,3,470,235,0,6238,6239,5,302,0,0,6239,6240,5,94,0,0,6240,6241,3,1234,617,0,6241,6296,1,0,0,0,6242,6243,5,138,0,0,6243,6244,5,348,0,0,6244,6245,5,318,0,0,6245,6246,5,276,0,0,6246,6247,3,470,235,0,6247,6248,5,302,0,0,6248,6249,5,94,0,0,6249,6250,3,1234,617,0,6250,6296,1,0,0,0,6251,6252,5,138,0,0,6252,6253,5,348,0,0,6253,6254,5,318,0,0,6254,6255,5,185,0,0,6255,6256,3,470,235,0,6256,6257,5,302,0,0,6257,6258,5,94,0,0,6258,6259,3,1234,617,0,6259,6296,1,0,0,0,6260,6261,5,138,0,0,6261,6262,5,348,0,0,6262,6263,5,318,0,0,6263,6264,5,346,0,0,6264,6265,3,470,235,0,6265,6266,5,302,0,0,6266,6267,5,94,0,0,6267,6268,3,1234,617,0,6268,6296,1,0,0,0,6269,6270,5,138,0,0,6270,6271,5,348,0,0,6271,6272,5,318,0,0,6272,6273,5,163,0,0,6273,6274,3,470,235,0,6274,6275,5,302,0,0,6275,6276,5,94,0,0,6276,6277,3,1234,617,0,6277,6296,1,0,0,0,6278,6279,5,138,0,0,6279,6280,5,353,0,0,6280,6281,3,470,235,0,6281,6282,5,302,0,0,6282,6283,5,94,0,0,6283,6284,3,1234,617,0,6284,6296,1,0,0,0,6285,6286,5,138,0,0,6286,6287,5,353,0,0,6287,6288,3,470,235,0,6288,6289,5,302,0,0,6289,6290,5,143,0,0,6290,6291,3,1234,617,0,6291,6292,5,94,0,0,6292,6293,3,1234,617,0,6293,6294,3,100,50,0,6294,6296,1,0,0,0,6295,5858,1,0,0,0,6295,5865,1,0,0,0,6295,5872,1,0,0,0,6295,5879,1,0,0,0,6295,5886,1,0,0,0,6295,5893,1,0,0,0,6295,5902,1,0,0,0,6295,5911,1,0,0,0,6295,5918,1,0,0,0,6295,5926,1,0,0,0,6295,5936,1,0,0,0,6295,5946,1,0,0,0,6295,5955,1,0,0,0,6295,5966,1,0,0,0,6295,5973,1,0,0,0,6295,5980,1,0,0,0,6295,5987,1,0,0,0,6295,5994,1,0,0,0,6295,6001,1,0,0,0,6295,6008,1,0,0,0,6295,6015,1,0,0,0,6295,6024,1,0,0,0,6295,6035,1,0,0,0,6295,6042,1,0,0,0,6295,6051,1,0,0,0,6295,6059,1,0,0,0,6295,6069,1,0,0,0,6295,6080,1,0,0,0,6295,6088,1,0,0,0,6295,6098,1,0,0,0,6295,6107,1,0,0,0,6295,6118,1,0,0,0,6295,6127,1,0,0,0,6295,6138,1,0,0,0,6295,6148,1,0,0,0,6295,6160,1,0,0,0,6295,6173,1,0,0,0,6295,6183,1,0,0,0,6295,6195,1,0,0,0,6295,6204,1,0,0,0,6295,6213,1,0,0,0,6295,6221,1,0,0,0,6295,6228,1,0,0,0,6295,6235,1,0,0,0,6295,6242,1,0,0,0,6295,6251,1,0,0,0,6295,6260,1,0,0,0,6295,6269,1,0,0,0,6295,6278,1,0,0,0,6295,6285,1,0,0,0,6296,647,1,0,0,0,6297,6300,5,44,0,0,6298,6300,1,0,0,0,6299,6297,1,0,0,0,6299,6298,1,0,0,0,6300,649,1,0,0,0,6301,6302,5,326,0,0,6302,6305,5,174,0,0,6303,6305,1,0,0,0,6304,6301,1,0,0,0,6304,6303,1,0,0,0,6305,651,1,0,0,0,6306,6307,5,138,0,0,6307,6308,5,211,0,0,6308,6310,3,560,280,0,6309,6311,5,262,0,0,6310,6309,1,0,0,0,6310,6311,1,0,0,0,6311,6312,1,0,0,0,6312,6313,5,462,0,0,6313,6314,5,80,0,0,6314,6315,5,204,0,0,6315,6316,3,1234,617,0,6316,6376,1,0,0,0,6317,6318,5,138,0,0,6318,6319,5,289,0,0,6319,6321,3,560,280,0,6320,6322,5,262,0,0,6321,6320,1,0,0,0,6321,6322,1,0,0,0,6322,6323,1,0,0,0,6323,6324,5,462,0,0,6324,6325,5,80,0,0,6325,6326,5,204,0,0,6326,6327,3,1234,617,0,6327,6376,1,0,0,0,6328,6329,5,138,0,0,6329,6330,5,442,0,0,6330,6332,3,560,280,0,6331,6333,5,262,0,0,6332,6331,1,0,0,0,6332,6333,1,0,0,0,6333,6334,1,0,0,0,6334,6335,5,462,0,0,6335,6336,5,80,0,0,6336,6337,5,204,0,0,6337,6338,3,1234,617,0,6338,6376,1,0,0,0,6339,6340,5,138,0,0,6340,6341,5,350,0,0,6341,6342,3,1222,611,0,6342,6343,5,80,0,0,6343,6345,3,1230,615,0,6344,6346,5,262,0,0,6345,6344,1,0,0,0,6345,6346,1,0,0,0,6346,6347,1,0,0,0,6347,6348,5,462,0,0,6348,6349,5,80,0,0,6349,6350,5,204,0,0,6350,6351,3,1234,617,0,6351,6376,1,0,0,0,6352,6353,5,138,0,0,6353,6354,5,251,0,0,6354,6355,5,369,0,0,6355,6357,3,1230,615,0,6356,6358,5,262,0,0,6357,6356,1,0,0,0,6357,6358,1,0,0,0,6358,6359,1,0,0,0,6359,6360,5,462,0,0,6360,6361,5,80,0,0,6361,6362,5,204,0,0,6362,6363,3,1234,617,0,6363,6376,1,0,0,0,6364,6365,5,138,0,0,6365,6366,5,226,0,0,6366,6368,3,1218,609,0,6367,6369,5,262,0,0,6368,6367,1,0,0,0,6368,6369,1,0,0,0,6369,6370,1,0,0,0,6370,6371,5,462,0,0,6371,6372,5,80,0,0,6372,6373,5,204,0,0,6373,6374,3,1234,617,0,6374,6376,1,0,0,0,6375,6306,1,0,0,0,6375,6317,1,0,0,0,6375,6328,1,0,0,0,6375,6339,1,0,0,0,6375,6352,1,0,0,0,6375,6364,1,0,0,0,6376,653,1,0,0,0,6377,6378,5,138,0,0,6378,6379,5,136,0,0,6379,6380,3,580,290,0,6380,6381,5,326,0,0,6381,6382,5,316,0,0,6382,6383,3,1214,607,0,6383,6590,1,0,0,0,6384,6385,5,138,0,0,6385,6386,5,108,0,0,6386,6387,3,470,235,0,6387,6388,5,326,0,0,6388,6389,5,316,0,0,6389,6390,3,1214,607,0,6390,6590,1,0,0,0,6391,6392,5,138,0,0,6392,6393,5,168,0,0,6393,6394,3,470,235,0,6394,6395,5,326,0,0,6395,6396,5,316,0,0,6396,6397,3,1214,607,0,6397,6590,1,0,0,0,6398,6399,5,138,0,0,6399,6400,5,189,0,0,6400,6401,3,470,235,0,6401,6402,5,326,0,0,6402,6403,5,316,0,0,6403,6404,3,1214,607,0,6404,6590,1,0,0,0,6405,6406,5,138,0,0,6406,6407,5,204,0,0,6407,6408,3,1234,617,0,6408,6409,5,326,0,0,6409,6410,5,316,0,0,6410,6411,3,1214,607,0,6411,6590,1,0,0,0,6412,6413,5,138,0,0,6413,6414,5,211,0,0,6414,6415,3,560,280,0,6415,6416,5,326,0,0,6416,6417,5,316,0,0,6417,6418,3,1214,607,0,6418,6590,1,0,0,0,6419,6420,5,138,0,0,6420,6421,5,271,0,0,6421,6422,3,614,307,0,6422,6423,5,326,0,0,6423,6424,5,316,0,0,6424,6425,3,1214,607,0,6425,6590,1,0,0,0,6426,6427,5,138,0,0,6427,6428,5,271,0,0,6428,6429,5,156,0,0,6429,6430,3,470,235,0,6430,6431,5,100,0,0,6431,6432,3,1234,617,0,6432,6433,5,326,0,0,6433,6434,5,316,0,0,6434,6435,3,1214,607,0,6435,6590,1,0,0,0,6436,6437,5,138,0,0,6437,6438,5,271,0,0,6438,6439,5,206,0,0,6439,6440,3,470,235,0,6440,6441,5,100,0,0,6441,6442,3,1234,617,0,6442,6443,5,326,0,0,6443,6444,5,316,0,0,6444,6445,3,1214,607,0,6445,6590,1,0,0,0,6446,6447,5,138,0,0,6447,6448,5,289,0,0,6448,6449,3,560,280,0,6449,6450,5,326,0,0,6450,6451,5,316,0,0,6451,6452,3,1214,607,0,6452,6590,1,0,0,0,6453,6454,5,138,0,0,6454,6455,5,442,0,0,6455,6456,3,560,280,0,6456,6457,5,326,0,0,6457,6458,5,316,0,0,6458,6459,3,1214,607,0,6459,6590,1,0,0,0,6460,6461,5,138,0,0,6461,6462,5,92,0,0,6462,6463,3,958,479,0,6463,6464,5,326,0,0,6464,6465,5,316,0,0,6465,6466,3,1214,607,0,6466,6590,1,0,0,0,6467,6468,5,138,0,0,6468,6469,5,92,0,0,6469,6470,5,220,0,0,6470,6471,5,389,0,0,6471,6472,3,958,479,0,6472,6473,5,326,0,0,6473,6474,5,316,0,0,6474,6475,3,1214,607,0,6475,6590,1,0,0,0,6476,6477,5,138,0,0,6477,6478,5,335,0,0,6478,6479,3,470,235,0,6479,6480,5,326,0,0,6480,6481,5,316,0,0,6481,6482,3,1214,607,0,6482,6590,1,0,0,0,6483,6484,5,138,0,0,6484,6485,5,348,0,0,6485,6486,5,318,0,0,6486,6487,5,276,0,0,6487,6488,3,470,235,0,6488,6489,5,326,0,0,6489,6490,5,316,0,0,6490,6491,3,1214,607,0,6491,6590,1,0,0,0,6492,6493,5,138,0,0,6493,6494,5,348,0,0,6494,6495,5,318,0,0,6495,6496,5,185,0,0,6496,6497,3,470,235,0,6497,6498,5,326,0,0,6498,6499,5,316,0,0,6499,6500,3,1214,607,0,6500,6590,1,0,0,0,6501,6502,5,138,0,0,6502,6503,5,348,0,0,6503,6504,5,318,0,0,6504,6505,5,346,0,0,6505,6506,3,470,235,0,6506,6507,5,326,0,0,6507,6508,5,316,0,0,6508,6509,3,1214,607,0,6509,6590,1,0,0,0,6510,6511,5,138,0,0,6511,6512,5,348,0,0,6512,6513,5,318,0,0,6513,6514,5,163,0,0,6514,6515,3,470,235,0,6515,6516,5,326,0,0,6516,6517,5,316,0,0,6517,6518,3,1214,607,0,6518,6590,1,0,0,0,6519,6520,5,138,0,0,6520,6523,5,321,0,0,6521,6522,5,220,0,0,6522,6524,5,389,0,0,6523,6521,1,0,0,0,6523,6524,1,0,0,0,6524,6525,1,0,0,0,6525,6526,3,1226,613,0,6526,6527,5,326,0,0,6527,6528,5,316,0,0,6528,6529,3,1214,607,0,6529,6590,1,0,0,0,6530,6531,5,138,0,0,6531,6532,5,369,0,0,6532,6533,3,1230,615,0,6533,6534,5,326,0,0,6534,6535,5,316,0,0,6535,6536,3,1214,607,0,6536,6590,1,0,0,0,6537,6538,5,138,0,0,6538,6539,5,369,0,0,6539,6540,5,220,0,0,6540,6541,5,389,0,0,6541,6542,3,1230,615,0,6542,6543,5,326,0,0,6543,6544,5,316,0,0,6544,6545,3,1214,607,0,6545,6590,1,0,0,0,6546,6547,5,138,0,0,6547,6548,5,251,0,0,6548,6549,5,369,0,0,6549,6550,3,1230,615,0,6550,6551,5,326,0,0,6551,6552,5,316,0,0,6552,6553,3,1214,607,0,6553,6590,1,0,0,0,6554,6555,5,138,0,0,6555,6556,5,251,0,0,6556,6557,5,369,0,0,6557,6558,5,220,0,0,6558,6559,5,389,0,0,6559,6560,3,1230,615,0,6560,6561,5,326,0,0,6561,6562,5,316,0,0,6562,6563,3,1214,607,0,6563,6590,1,0,0,0,6564,6565,5,138,0,0,6565,6566,5,63,0,0,6566,6567,5,92,0,0,6567,6568,3,958,479,0,6568,6569,5,326,0,0,6569,6570,5,316,0,0,6570,6571,3,1214,607,0,6571,6590,1,0,0,0,6572,6573,5,138,0,0,6573,6574,5,63,0,0,6574,6575,5,92,0,0,6575,6576,5,220,0,0,6576,6577,5,389,0,0,6577,6578,3,958,479,0,6578,6579,5,326,0,0,6579,6580,5,316,0,0,6580,6581,3,1214,607,0,6581,6590,1,0,0,0,6582,6583,5,138,0,0,6583,6584,5,353,0,0,6584,6585,3,470,235,0,6585,6586,5,326,0,0,6586,6587,5,316,0,0,6587,6588,3,1214,607,0,6588,6590,1,0,0,0,6589,6377,1,0,0,0,6589,6384,1,0,0,0,6589,6391,1,0,0,0,6589,6398,1,0,0,0,6589,6405,1,0,0,0,6589,6412,1,0,0,0,6589,6419,1,0,0,0,6589,6426,1,0,0,0,6589,6436,1,0,0,0,6589,6446,1,0,0,0,6589,6453,1,0,0,0,6589,6460,1,0,0,0,6589,6467,1,0,0,0,6589,6476,1,0,0,0,6589,6483,1,0,0,0,6589,6492,1,0,0,0,6589,6501,1,0,0,0,6589,6510,1,0,0,0,6589,6519,1,0,0,0,6589,6530,1,0,0,0,6589,6537,1,0,0,0,6589,6546,1,0,0,0,6589,6554,1,0,0,0,6589,6564,1,0,0,0,6589,6572,1,0,0,0,6589,6582,1,0,0,0,6590,655,1,0,0,0,6591,6592,5,138,0,0,6592,6593,5,271,0,0,6593,6594,3,614,307,0,6594,6595,5,326,0,0,6595,6596,5,2,0,0,6596,6597,3,658,329,0,6597,6598,5,3,0,0,6598,657,1,0,0,0,6599,6604,3,660,330,0,6600,6601,5,6,0,0,6601,6603,3,660,330,0,6602,6600,1,0,0,0,6603,6606,1,0,0,0,6604,6602,1,0,0,0,6604,6605,1,0,0,0,6605,659,1,0,0,0,6606,6604,1,0,0,0,6607,6608,3,1272,636,0,6608,6609,5,10,0,0,6609,6610,5,400,0,0,6610,6616,1,0,0,0,6611,6612,3,1272,636,0,6612,6613,5,10,0,0,6613,6614,3,662,331,0,6614,6616,1,0,0,0,6615,6607,1,0,0,0,6615,6611,1,0,0,0,6616,661,1,0,0,0,6617,6623,3,574,287,0,6618,6623,3,1284,642,0,6619,6623,3,1152,576,0,6620,6623,3,264,132,0,6621,6623,3,1252,626,0,6622,6617,1,0,0,0,6622,6618,1,0,0,0,6622,6619,1,0,0,0,6622,6620,1,0,0,0,6622,6621,1,0,0,0,6623,663,1,0,0,0,6624,6625,5,138,0,0,6625,6626,5,353,0,0,6626,6627,3,470,235,0,6627,6628,5,326,0,0,6628,6629,5,2,0,0,6629,6630,3,658,329,0,6630,6631,5,3,0,0,6631,665,1,0,0,0,6632,6633,5,138,0,0,6633,6634,5,136,0,0,6634,6635,3,580,290,0,6635,6636,5,275,0,0,6636,6637,5,94,0,0,6637,6638,3,1260,630,0,6638,6816,1,0,0,0,6639,6640,5,138,0,0,6640,6641,5,108,0,0,6641,6642,3,470,235,0,6642,6643,5,275,0,0,6643,6644,5,94,0,0,6644,6645,3,1260,630,0,6645,6816,1,0,0,0,6646,6647,5,138,0,0,6647,6648,5,168,0,0,6648,6649,3,470,235,0,6649,6650,5,275,0,0,6650,6651,5,94,0,0,6651,6652,3,1260,630,0,6652,6816,1,0,0,0,6653,6654,5,138,0,0,6654,6655,5,175,0,0,6655,6656,3,1210,605,0,6656,6657,5,275,0,0,6657,6658,5,94,0,0,6658,6659,3,1260,630,0,6659,6816,1,0,0,0,6660,6661,5,138,0,0,6661,6662,5,189,0,0,6662,6663,3,470,235,0,6663,6664,5,275,0,0,6664,6665,5,94,0,0,6665,6666,3,1260,630,0,6666,6816,1,0,0,0,6667,6668,5,138,0,0,6668,6669,5,211,0,0,6669,6670,3,560,280,0,6670,6671,5,275,0,0,6671,6672,5,94,0,0,6672,6673,3,1260,630,0,6673,6816,1,0,0,0,6674,6675,5,138,0,0,6675,6676,3,276,138,0,6676,6677,5,238,0,0,6677,6678,3,1234,617,0,6678,6679,5,275,0,0,6679,6680,5,94,0,0,6680,6681,3,1260,630,0,6681,6816,1,0,0,0,6682,6683,5,138,0,0,6683,6684,5,239,0,0,6684,6685,5,267,0,0,6685,6686,3,264,132,0,6686,6687,5,275,0,0,6687,6688,5,94,0,0,6688,6689,3,1260,630,0,6689,6816,1,0,0,0,6690,6691,5,138,0,0,6691,6692,5,271,0,0,6692,6693,3,614,307,0,6693,6694,5,275,0,0,6694,6695,5,94,0,0,6695,6696,3,1260,630,0,6696,6816,1,0,0,0,6697,6698,5,138,0,0,6698,6699,5,271,0,0,6699,6700,5,156,0,0,6700,6701,3,470,235,0,6701,6702,5,100,0,0,6702,6703,3,1234,617,0,6703,6704,5,275,0,0,6704,6705,5,94,0,0,6705,6706,3,1260,630,0,6706,6816,1,0,0,0,6707,6708,5,138,0,0,6708,6709,5,271,0,0,6709,6710,5,206,0,0,6710,6711,3,470,235,0,6711,6712,5,100,0,0,6712,6713,3,1234,617,0,6713,6714,5,275,0,0,6714,6715,5,94,0,0,6715,6716,3,1260,630,0,6716,6816,1,0,0,0,6717,6718,5,138,0,0,6718,6719,5,289,0,0,6719,6720,3,560,280,0,6720,6721,5,275,0,0,6721,6722,5,94,0,0,6722,6723,3,1260,630,0,6723,6816,1,0,0,0,6724,6725,5,138,0,0,6725,6726,5,442,0,0,6726,6727,3,560,280,0,6727,6728,5,275,0,0,6728,6729,5,94,0,0,6729,6730,3,1260,630,0,6730,6816,1,0,0,0,6731,6732,5,138,0,0,6732,6733,5,316,0,0,6733,6734,3,1214,607,0,6734,6735,5,275,0,0,6735,6736,5,94,0,0,6736,6737,3,1260,630,0,6737,6816,1,0,0,0,6738,6739,5,138,0,0,6739,6740,5,353,0,0,6740,6741,3,470,235,0,6741,6742,5,275,0,0,6742,6743,5,94,0,0,6743,6744,3,1260,630,0,6744,6816,1,0,0,0,6745,6746,5,138,0,0,6746,6747,5,344,0,0,6747,6748,3,1234,617,0,6748,6749,5,275,0,0,6749,6750,5,94,0,0,6750,6751,3,1260,630,0,6751,6816,1,0,0,0,6752,6753,5,138,0,0,6753,6754,5,335,0,0,6754,6755,3,470,235,0,6755,6756,5,275,0,0,6756,6757,5,94,0,0,6757,6758,3,1260,630,0,6758,6816,1,0,0,0,6759,6760,5,138,0,0,6760,6761,5,348,0,0,6761,6762,5,318,0,0,6762,6763,5,185,0,0,6763,6764,3,470,235,0,6764,6765,5,275,0,0,6765,6766,5,94,0,0,6766,6767,3,1260,630,0,6767,6816,1,0,0,0,6768,6769,5,138,0,0,6769,6770,5,348,0,0,6770,6771,5,318,0,0,6771,6772,5,163,0,0,6772,6773,3,470,235,0,6773,6774,5,275,0,0,6774,6775,5,94,0,0,6775,6776,3,1260,630,0,6776,6816,1,0,0,0,6777,6778,5,138,0,0,6778,6779,5,63,0,0,6779,6780,5,174,0,0,6780,6781,5,374,0,0,6781,6782,3,1234,617,0,6782,6783,5,275,0,0,6783,6784,5,94,0,0,6784,6785,3,1260,630,0,6785,6816,1,0,0,0,6786,6787,5,138,0,0,6787,6788,5,324,0,0,6788,6789,3,1234,617,0,6789,6790,5,275,0,0,6790,6791,5,94,0,0,6791,6792,3,1260,630,0,6792,6816,1,0,0,0,6793,6794,5,138,0,0,6794,6795,5,198,0,0,6795,6796,5,350,0,0,6796,6797,3,1234,617,0,6797,6798,5,275,0,0,6798,6799,5,94,0,0,6799,6800,3,1260,630,0,6800,6816,1,0,0,0,6801,6802,5,138,0,0,6802,6803,5,452,0,0,6803,6804,3,1234,617,0,6804,6805,5,275,0,0,6805,6806,5,94,0,0,6806,6807,3,1260,630,0,6807,6816,1,0,0,0,6808,6809,5,138,0,0,6809,6810,5,451,0,0,6810,6811,3,1234,617,0,6811,6812,5,275,0,0,6812,6813,5,94,0,0,6813,6814,3,1260,630,0,6814,6816,1,0,0,0,6815,6632,1,0,0,0,6815,6639,1,0,0,0,6815,6646,1,0,0,0,6815,6653,1,0,0,0,6815,6660,1,0,0,0,6815,6667,1,0,0,0,6815,6674,1,0,0,0,6815,6682,1,0,0,0,6815,6690,1,0,0,0,6815,6697,1,0,0,0,6815,6707,1,0,0,0,6815,6717,1,0,0,0,6815,6724,1,0,0,0,6815,6731,1,0,0,0,6815,6738,1,0,0,0,6815,6745,1,0,0,0,6815,6752,1,0,0,0,6815,6759,1,0,0,0,6815,6768,1,0,0,0,6815,6777,1,0,0,0,6815,6786,1,0,0,0,6815,6793,1,0,0,0,6815,6801,1,0,0,0,6815,6808,1,0,0,0,6816,667,1,0,0,0,6817,6818,5,46,0,0,6818,6819,5,452,0,0,6819,6820,3,1234,617,0,6820,6821,3,670,335,0,6821,6822,3,594,297,0,6822,669,1,0,0,0,6823,6826,3,672,336,0,6824,6826,1,0,0,0,6825,6823,1,0,0,0,6825,6824,1,0,0,0,6826,671,1,0,0,0,6827,6828,5,62,0,0,6828,6829,5,92,0,0,6829,6834,3,960,480,0,6830,6831,5,62,0,0,6831,6832,5,30,0,0,6832,6834,5,343,0,0,6833,6827,1,0,0,0,6833,6830,1,0,0,0,6834,673,1,0,0,0,6835,6836,5,138,0,0,6836,6837,5,452,0,0,6837,6838,3,1234,617,0,6838,6839,5,326,0,0,6839,6840,3,416,208,0,6840,6863,1,0,0,0,6841,6842,5,138,0,0,6842,6843,5,452,0,0,6843,6844,3,1234,617,0,6844,6845,5,133,0,0,6845,6846,5,92,0,0,6846,6847,3,960,480,0,6847,6863,1,0,0,0,6848,6849,5,138,0,0,6849,6850,5,452,0,0,6850,6851,3,1234,617,0,6851,6852,5,326,0,0,6852,6853,5,92,0,0,6853,6854,3,960,480,0,6854,6863,1,0,0,0,6855,6856,5,138,0,0,6856,6857,5,452,0,0,6857,6858,3,1234,617,0,6858,6859,5,191,0,0,6859,6860,5,92,0,0,6860,6861,3,960,480,0,6861,6863,1,0,0,0,6862,6835,1,0,0,0,6862,6841,1,0,0,0,6862,6848,1,0,0,0,6862,6855,1,0,0,0,6863,675,1,0,0,0,6864,6865,5,46,0,0,6865,6866,5,451,0,0,6866,6867,3,1234,617,0,6867,6868,5,164,0,0,6868,6869,3,1252,626,0,6869,6870,5,452,0,0,6870,6871,3,678,339,0,6871,6872,3,594,297,0,6872,677,1,0,0,0,6873,6878,3,680,340,0,6874,6875,5,6,0,0,6875,6877,3,680,340,0,6876,6874,1,0,0,0,6877,6880,1,0,0,0,6878,6876,1,0,0,0,6878,6879,1,0,0,0,6879,679,1,0,0,0,6880,6878,1,0,0,0,6881,6882,3,1272,636,0,6882,681,1,0,0,0,6883,6884,5,138,0,0,6884,6885,5,451,0,0,6885,6886,3,1234,617,0,6886,6887,5,326,0,0,6887,6888,3,416,208,0,6888,6921,1,0,0,0,6889,6890,5,138,0,0,6890,6891,5,451,0,0,6891,6892,3,1234,617,0,6892,6893,5,164,0,0,6893,6894,3,1252,626,0,6894,6921,1,0,0,0,6895,6896,5,138,0,0,6896,6897,5,451,0,0,6897,6898,3,1234,617,0,6898,6899,5,298,0,0,6899,6900,5,452,0,0,6900,6901,3,594,297,0,6901,6921,1,0,0,0,6902,6903,5,138,0,0,6903,6904,5,451,0,0,6904,6905,3,1234,617,0,6905,6906,5,326,0,0,6906,6907,5,452,0,0,6907,6908,3,678,339,0,6908,6909,3,594,297,0,6909,6921,1,0,0,0,6910,6911,5,138,0,0,6911,6912,5,451,0,0,6912,6913,3,1234,617,0,6913,6914,5,193,0,0,6914,6921,1,0,0,0,6915,6916,5,138,0,0,6916,6917,5,451,0,0,6917,6918,3,1234,617,0,6918,6919,5,186,0,0,6919,6921,1,0,0,0,6920,6883,1,0,0,0,6920,6889,1,0,0,0,6920,6895,1,0,0,0,6920,6902,1,0,0,0,6920,6910,1,0,0,0,6920,6915,1,0,0,0,6921,683,1,0,0,0,6922,6923,5,191,0,0,6923,6924,5,451,0,0,6924,6925,3,1234,617,0,6925,6926,3,100,50,0,6926,6935,1,0,0,0,6927,6928,5,191,0,0,6928,6929,5,451,0,0,6929,6930,5,220,0,0,6930,6931,5,389,0,0,6931,6932,3,1234,617,0,6932,6933,3,100,50,0,6933,6935,1,0,0,0,6934,6922,1,0,0,0,6934,6927,1,0,0,0,6935,685,1,0,0,0,6936,6937,5,46,0,0,6937,6938,3,554,277,0,6938,6939,5,314,0,0,6939,6940,3,1234,617,0,6940,6941,5,36,0,0,6941,6942,5,80,0,0,6942,6943,3,696,348,0,6943,6944,5,94,0,0,6944,6945,3,1230,615,0,6945,6946,3,974,487,0,6946,6947,5,57,0,0,6947,6948,3,698,349,0,6948,6949,3,688,344,0,6949,687,1,0,0,0,6950,6957,5,263,0,0,6951,6957,3,692,346,0,6952,6953,5,2,0,0,6953,6954,3,690,345,0,6954,6955,5,3,0,0,6955,6957,1,0,0,0,6956,6950,1,0,0,0,6956,6951,1,0,0,0,6956,6952,1,0,0,0,6957,689,1,0,0,0,6958,6963,3,694,347,0,6959,6960,5,7,0,0,6960,6962,3,694,347,0,6961,6959,1,0,0,0,6962,6965,1,0,0,0,6963,6961,1,0,0,0,6963,6964,1,0,0,0,6964,691,1,0,0,0,6965,6963,1,0,0,0,6966,6972,3,858,429,0,6967,6972,3,804,402,0,6968,6972,3,844,422,0,6969,6972,3,830,415,0,6970,6972,3,700,350,0,6971,6966,1,0,0,0,6971,6967,1,0,0,0,6971,6968,1,0,0,0,6971,6969,1,0,0,0,6971,6970,1,0,0,0,6972,693,1,0,0,0,6973,6976,3,692,346,0,6974,6976,1,0,0,0,6975,6973,1,0,0,0,6975,6974,1,0,0,0,6976,695,1,0,0,0,6977,6978,7,30,0,0,6978,697,1,0,0,0,6979,6983,5,233,0,0,6980,6983,5,137,0,0,6981,6983,1,0,0,0,6982,6979,1,0,0,0,6982,6980,1,0,0,0,6982,6981,1,0,0,0,6983,699,1,0,0,0,6984,6985,5,264,0,0,6985,6986,3,1264,632,0,6986,6987,3,702,351,0,6987,701,1,0,0,0,6988,6989,5,6,0,0,6989,6992,3,1252,626,0,6990,6992,1,0,0,0,6991,6988,1,0,0,0,6991,6990,1,0,0,0,6992,703,1,0,0,0,6993,6994,5,243,0,0,6994,6995,3,1264,632,0,6995,705,1,0,0,0,6996,6997,5,359,0,0,6997,7001,3,1264,632,0,6998,6999,5,359,0,0,6999,7001,5,9,0,0,7e3,6996,1,0,0,0,7e3,6998,1,0,0,0,7001,707,1,0,0,0,7002,7003,5,129,0,0,7003,7004,3,710,355,0,7004,7005,3,716,358,0,7005,7056,1,0,0,0,7006,7007,5,146,0,0,7007,7009,3,710,355,0,7008,7010,3,714,357,0,7009,7008,1,0,0,0,7009,7010,1,0,0,0,7010,7056,1,0,0,0,7011,7012,5,333,0,0,7012,7014,5,349,0,0,7013,7015,3,714,357,0,7014,7013,1,0,0,0,7014,7015,1,0,0,0,7015,7056,1,0,0,0,7016,7017,5,161,0,0,7017,7018,3,710,355,0,7018,7019,3,716,358,0,7019,7056,1,0,0,0,7020,7021,5,454,0,0,7021,7022,3,710,355,0,7022,7023,3,716,358,0,7023,7056,1,0,0,0,7024,7025,5,312,0,0,7025,7026,3,710,355,0,7026,7027,3,716,358,0,7027,7056,1,0,0,0,7028,7029,5,315,0,0,7029,7056,3,1264,632,0,7030,7031,5,301,0,0,7031,7032,5,315,0,0,7032,7056,3,1264,632,0,7033,7034,5,301,0,0,7034,7056,3,1264,632,0,7035,7036,5,312,0,0,7036,7037,3,710,355,0,7037,7038,5,94,0,0,7038,7039,5,315,0,0,7039,7040,3,1264,632,0,7040,7056,1,0,0,0,7041,7042,5,312,0,0,7042,7043,3,710,355,0,7043,7044,5,94,0,0,7044,7045,3,1264,632,0,7045,7056,1,0,0,0,7046,7047,5,283,0,0,7047,7048,5,349,0,0,7048,7056,3,1252,626,0,7049,7050,5,161,0,0,7050,7051,5,284,0,0,7051,7056,3,1252,626,0,7052,7053,5,312,0,0,7053,7054,5,284,0,0,7054,7056,3,1252,626,0,7055,7002,1,0,0,0,7055,7006,1,0,0,0,7055,7011,1,0,0,0,7055,7016,1,0,0,0,7055,7020,1,0,0,0,7055,7024,1,0,0,0,7055,7028,1,0,0,0,7055,7030,1,0,0,0,7055,7033,1,0,0,0,7055,7035,1,0,0,0,7055,7041,1,0,0,0,7055,7046,1,0,0,0,7055,7049,1,0,0,0,7055,7052,1,0,0,0,7056,709,1,0,0,0,7057,7061,5,373,0,0,7058,7061,5,349,0,0,7059,7061,1,0,0,0,7060,7057,1,0,0,0,7060,7058,1,0,0,0,7060,7059,1,0,0,0,7061,711,1,0,0,0,7062,7063,5,235,0,0,7063,7064,5,242,0,0,7064,7073,3,56,28,0,7065,7066,5,293,0,0,7066,7073,5,81,0,0,7067,7068,5,293,0,0,7068,7073,5,375,0,0,7069,7073,5,54,0,0,7070,7071,5,77,0,0,7071,7073,5,54,0,0,7072,7062,1,0,0,0,7072,7065,1,0,0,0,7072,7067,1,0,0,0,7072,7069,1,0,0,0,7072,7070,1,0,0,0,7073,713,1,0,0,0,7074,7081,3,712,356,0,7075,7077,5,6,0,0,7076,7075,1,0,0,0,7076,7077,1,0,0,0,7077,7078,1,0,0,0,7078,7080,3,712,356,0,7079,7076,1,0,0,0,7080,7083,1,0,0,0,7081,7079,1,0,0,0,7081,7082,1,0,0,0,7082,715,1,0,0,0,7083,7081,1,0,0,0,7084,7086,5,33,0,0,7085,7087,5,262,0,0,7086,7085,1,0,0,0,7086,7087,1,0,0,0,7087,7088,1,0,0,0,7088,7091,5,153,0,0,7089,7091,1,0,0,0,7090,7084,1,0,0,0,7090,7089,1,0,0,0,7091,717,1,0,0,0,7092,7095,5,46,0,0,7093,7094,5,82,0,0,7094,7096,5,304,0,0,7095,7093,1,0,0,0,7095,7096,1,0,0,0,7096,7097,1,0,0,0,7097,7111,3,154,77,0,7098,7099,5,369,0,0,7099,7100,3,1230,615,0,7100,7101,3,192,96,0,7101,7102,3,110,55,0,7102,7112,1,0,0,0,7103,7104,5,296,0,0,7104,7105,5,369,0,0,7105,7106,3,1230,615,0,7106,7107,5,2,0,0,7107,7108,3,194,97,0,7108,7109,5,3,0,0,7109,7110,3,110,55,0,7110,7112,1,0,0,0,7111,7098,1,0,0,0,7111,7103,1,0,0,0,7112,7113,1,0,0,0,7113,7114,5,36,0,0,7114,7115,3,858,429,0,7115,7116,3,720,360,0,7116,719,1,0,0,0,7117,7119,5,105,0,0,7118,7120,7,31,0,0,7119,7118,1,0,0,0,7119,7120,1,0,0,0,7120,7121,1,0,0,0,7121,7122,5,42,0,0,7122,7125,5,272,0,0,7123,7125,1,0,0,0,7124,7117,1,0,0,0,7124,7123,1,0,0,0,7125,721,1,0,0,0,7126,7127,5,244,0,0,7127,7128,3,1238,619,0,7128,723,1,0,0,0,7129,7130,5,46,0,0,7130,7131,5,175,0,0,7131,7132,3,1234,617,0,7132,7133,3,12,6,0,7133,7134,3,726,363,0,7134,725,1,0,0,0,7135,7137,3,728,364,0,7136,7135,1,0,0,0,7137,7138,1,0,0,0,7138,7136,1,0,0,0,7138,7139,1,0,0,0,7139,7142,1,0,0,0,7140,7142,1,0,0,0,7141,7136,1,0,0,0,7141,7140,1,0,0,0,7142,727,1,0,0,0,7143,7145,3,730,365,0,7144,7146,5,10,0,0,7145,7144,1,0,0,0,7145,7146,1,0,0,0,7146,7150,1,0,0,0,7147,7151,3,1258,629,0,7148,7151,3,58,29,0,7149,7151,5,53,0,0,7150,7147,1,0,0,0,7150,7148,1,0,0,0,7150,7149,1,0,0,0,7151,729,1,0,0,0,7152,7161,3,1274,637,0,7153,7154,5,164,0,0,7154,7161,5,74,0,0,7155,7161,5,194,0,0,7156,7161,5,246,0,0,7157,7161,5,275,0,0,7158,7161,5,344,0,0,7159,7161,5,346,0,0,7160,7152,1,0,0,0,7160,7153,1,0,0,0,7160,7155,1,0,0,0,7160,7156,1,0,0,0,7160,7157,1,0,0,0,7160,7158,1,0,0,0,7160,7159,1,0,0,0,7161,731,1,0,0,0,7162,7163,5,138,0,0,7163,7164,5,175,0,0,7164,7171,3,1210,605,0,7165,7166,5,105,0,0,7166,7172,3,726,363,0,7167,7172,3,726,363,0,7168,7169,5,326,0,0,7169,7170,5,344,0,0,7170,7172,3,1234,617,0,7171,7165,1,0,0,0,7171,7167,1,0,0,0,7171,7168,1,0,0,0,7172,733,1,0,0,0,7173,7174,5,138,0,0,7174,7175,5,175,0,0,7175,7176,3,1210,605,0,7176,7177,3,72,36,0,7177,735,1,0,0,0,7178,7179,5,191,0,0,7179,7182,5,175,0,0,7180,7181,5,220,0,0,7181,7183,5,389,0,0,7182,7180,1,0,0,0,7182,7183,1,0,0,0,7183,7184,1,0,0,0,7184,7197,3,1210,605,0,7185,7186,3,12,6,0,7186,7187,5,2,0,0,7187,7192,5,209,0,0,7188,7189,5,6,0,0,7189,7191,5,209,0,0,7190,7188,1,0,0,0,7191,7194,1,0,0,0,7192,7190,1,0,0,0,7192,7193,1,0,0,0,7193,7195,1,0,0,0,7194,7192,1,0,0,0,7195,7196,5,3,0,0,7196,7198,1,0,0,0,7197,7185,1,0,0,0,7197,7198,1,0,0,0,7198,737,1,0,0,0,7199,7200,5,138,0,0,7200,7201,5,108,0,0,7201,7202,3,470,235,0,7202,7203,5,298,0,0,7203,7204,5,368,0,0,7204,739,1,0,0,0,7205,7206,5,138,0,0,7206,7207,5,342,0,0,7207,7208,7,32,0,0,7208,7209,3,46,23,0,7209,741,1,0,0,0,7210,7211,5,46,0,0,7211,7212,5,189,0,0,7212,7213,3,470,235,0,7213,7214,3,748,374,0,7214,7215,3,996,498,0,7215,7216,3,172,86,0,7216,743,1,0,0,0,7217,7218,5,138,0,0,7218,7219,5,189,0,0,7219,7220,3,470,235,0,7220,7221,3,746,373,0,7221,745,1,0,0,0,7222,7244,3,98,49,0,7223,7224,5,191,0,0,7224,7225,5,77,0,0,7225,7244,5,78,0,0,7226,7227,5,326,0,0,7227,7228,5,77,0,0,7228,7244,5,78,0,0,7229,7230,5,133,0,0,7230,7244,3,188,94,0,7231,7232,5,191,0,0,7232,7235,5,45,0,0,7233,7234,5,220,0,0,7234,7236,5,389,0,0,7235,7233,1,0,0,0,7235,7236,1,0,0,0,7236,7237,1,0,0,0,7237,7238,3,1224,612,0,7238,7239,3,100,50,0,7239,7244,1,0,0,0,7240,7241,5,365,0,0,7241,7242,5,45,0,0,7242,7244,3,1224,612,0,7243,7222,1,0,0,0,7243,7223,1,0,0,0,7243,7226,1,0,0,0,7243,7229,1,0,0,0,7243,7231,1,0,0,0,7243,7240,1,0,0,0,7244,747,1,0,0,0,7245,7248,5,36,0,0,7246,7248,1,0,0,0,7247,7245,1,0,0,0,7247,7246,1,0,0,0,7248,749,1,0,0,0,7249,7250,5,138,0,0,7250,7251,5,348,0,0,7251,7252,5,318,0,0,7252,7253,5,185,0,0,7253,7254,3,470,235,0,7254,7255,3,416,208,0,7255,751,1,0,0,0,7256,7257,5,138,0,0,7257,7258,5,348,0,0,7258,7259,5,318,0,0,7259,7260,5,163,0,0,7260,7261,3,470,235,0,7261,7262,5,133,0,0,7262,7263,5,248,0,0,7263,7264,5,62,0,0,7264,7265,3,1232,616,0,7265,7266,5,105,0,0,7266,7267,3,468,234,0,7267,7329,1,0,0,0,7268,7269,5,138,0,0,7269,7270,5,348,0,0,7270,7271,5,318,0,0,7271,7272,5,163,0,0,7272,7273,3,470,235,0,7273,7274,5,138,0,0,7274,7275,5,248,0,0,7275,7276,5,62,0,0,7276,7277,3,1232,616,0,7277,7278,5,105,0,0,7278,7279,3,468,234,0,7279,7329,1,0,0,0,7280,7281,5,138,0,0,7281,7282,5,348,0,0,7282,7283,5,318,0,0,7283,7284,5,163,0,0,7284,7285,3,470,235,0,7285,7286,5,138,0,0,7286,7287,5,248,0,0,7287,7288,5,304,0,0,7288,7289,3,470,235,0,7289,7290,5,105,0,0,7290,7291,3,470,235,0,7291,7329,1,0,0,0,7292,7293,5,138,0,0,7293,7294,5,348,0,0,7294,7295,5,318,0,0,7295,7296,5,163,0,0,7296,7297,3,470,235,0,7297,7298,5,138,0,0,7298,7299,5,248,0,0,7299,7300,5,62,0,0,7300,7301,3,1232,616,0,7301,7302,5,304,0,0,7302,7303,3,470,235,0,7303,7304,5,105,0,0,7304,7305,3,470,235,0,7305,7329,1,0,0,0,7306,7307,5,138,0,0,7307,7308,5,348,0,0,7308,7309,5,318,0,0,7309,7310,5,163,0,0,7310,7311,3,470,235,0,7311,7312,5,191,0,0,7312,7313,5,248,0,0,7313,7314,5,62,0,0,7314,7315,3,1232,616,0,7315,7329,1,0,0,0,7316,7317,5,138,0,0,7317,7318,5,348,0,0,7318,7319,5,318,0,0,7319,7320,5,163,0,0,7320,7321,3,470,235,0,7321,7322,5,191,0,0,7322,7323,5,248,0,0,7323,7324,5,220,0,0,7324,7325,5,389,0,0,7325,7326,5,62,0,0,7326,7327,3,1232,616,0,7327,7329,1,0,0,0,7328,7256,1,0,0,0,7328,7268,1,0,0,0,7328,7280,1,0,0,0,7328,7292,1,0,0,0,7328,7306,1,0,0,0,7328,7316,1,0,0,0,7329,753,1,0,0,0,7330,7332,5,46,0,0,7331,7333,5,53,0,0,7332,7331,1,0,0,0,7332,7333,1,0,0,0,7333,7334,1,0,0,0,7334,7335,5,168,0,0,7335,7336,3,470,235,0,7336,7337,5,62,0,0,7337,7338,3,1252,626,0,7338,7339,5,94,0,0,7339,7340,3,1252,626,0,7340,7341,5,64,0,0,7341,7342,3,470,235,0,7342,755,1,0,0,0,7343,7344,5,158,0,0,7344,7345,3,774,387,0,7345,7346,3,1230,615,0,7346,7347,3,758,379,0,7347,7357,1,0,0,0,7348,7349,5,158,0,0,7349,7357,3,774,387,0,7350,7351,5,158,0,0,7351,7352,3,774,387,0,7352,7353,3,1234,617,0,7353,7354,5,80,0,0,7354,7355,3,1230,615,0,7355,7357,1,0,0,0,7356,7343,1,0,0,0,7356,7348,1,0,0,0,7356,7350,1,0,0,0,7357,757,1,0,0,0,7358,7359,5,100,0,0,7359,7362,3,1234,617,0,7360,7362,1,0,0,0,7361,7358,1,0,0,0,7361,7360,1,0,0,0,7362,759,1,0,0,0,7363,7365,5,363,0,0,7364,7366,5,113,0,0,7365,7364,1,0,0,0,7365,7366,1,0,0,0,7366,7368,1,0,0,0,7367,7369,5,112,0,0,7368,7367,1,0,0,0,7368,7369,1,0,0,0,7369,7370,1,0,0,0,7370,7372,3,774,387,0,7371,7373,3,766,383,0,7372,7371,1,0,0,0,7372,7373,1,0,0,0,7373,7374,1,0,0,0,7374,7375,3,780,390,0,7375,7383,1,0,0,0,7376,7377,5,363,0,0,7377,7378,5,2,0,0,7378,7379,3,764,382,0,7379,7380,5,3,0,0,7380,7381,3,780,390,0,7381,7383,1,0,0,0,7382,7363,1,0,0,0,7382,7376,1,0,0,0,7383,761,1,0,0,0,7384,7385,3,766,383,0,7385,7386,3,774,387,0,7386,7387,3,780,390,0,7387,7395,1,0,0,0,7388,7389,3,766,383,0,7389,7390,5,2,0,0,7390,7391,3,764,382,0,7391,7392,5,3,0,0,7392,7393,3,780,390,0,7393,7395,1,0,0,0,7394,7384,1,0,0,0,7394,7388,1,0,0,0,7395,763,1,0,0,0,7396,7401,3,768,384,0,7397,7398,5,6,0,0,7398,7400,3,768,384,0,7399,7397,1,0,0,0,7400,7403,1,0,0,0,7401,7399,1,0,0,0,7401,7402,1,0,0,0,7402,765,1,0,0,0,7403,7401,1,0,0,0,7404,7405,7,33,0,0,7405,767,1,0,0,0,7406,7407,3,770,385,0,7407,7408,3,772,386,0,7408,769,1,0,0,0,7409,7412,3,1270,635,0,7410,7412,3,766,383,0,7411,7409,1,0,0,0,7411,7410,1,0,0,0,7412,771,1,0,0,0,7413,7417,3,58,29,0,7414,7417,3,264,132,0,7415,7417,1,0,0,0,7416,7413,1,0,0,0,7416,7414,1,0,0,0,7416,7415,1,0,0,0,7417,773,1,0,0,0,7418,7421,5,128,0,0,7419,7421,1,0,0,0,7420,7418,1,0,0,0,7420,7419,1,0,0,0,7421,775,1,0,0,0,7422,7423,5,2,0,0,7423,7424,3,1232,616,0,7424,7425,5,3,0,0,7425,7428,1,0,0,0,7426,7428,1,0,0,0,7427,7422,1,0,0,0,7427,7426,1,0,0,0,7428,777,1,0,0,0,7429,7430,3,1230,615,0,7430,7431,3,776,388,0,7431,779,1,0,0,0,7432,7437,3,778,389,0,7433,7434,5,6,0,0,7434,7436,3,778,389,0,7435,7433,1,0,0,0,7436,7439,1,0,0,0,7437,7435,1,0,0,0,7437,7438,1,0,0,0,7438,7442,1,0,0,0,7439,7437,1,0,0,0,7440,7442,1,0,0,0,7441,7432,1,0,0,0,7441,7440,1,0,0,0,7442,781,1,0,0,0,7443,7444,5,203,0,0,7444,7467,3,784,392,0,7445,7446,5,203,0,0,7446,7447,3,766,383,0,7447,7448,3,774,387,0,7448,7449,3,784,392,0,7449,7467,1,0,0,0,7450,7451,5,203,0,0,7451,7452,5,128,0,0,7452,7467,3,784,392,0,7453,7454,5,203,0,0,7454,7455,5,2,0,0,7455,7460,3,786,393,0,7456,7457,5,6,0,0,7457,7459,3,786,393,0,7458,7456,1,0,0,0,7459,7462,1,0,0,0,7460,7458,1,0,0,0,7460,7461,1,0,0,0,7461,7463,1,0,0,0,7462,7460,1,0,0,0,7463,7464,5,3,0,0,7464,7465,3,784,392,0,7465,7467,1,0,0,0,7466,7443,1,0,0,0,7466,7445,1,0,0,0,7466,7450,1,0,0,0,7466,7453,1,0,0,0,7467,783,1,0,0,0,7468,7478,3,858,429,0,7469,7478,3,804,402,0,7470,7478,3,844,422,0,7471,7478,3,830,415,0,7472,7478,3,852,426,0,7473,7478,3,242,121,0,7474,7478,3,248,124,0,7475,7478,3,252,126,0,7476,7478,3,798,399,0,7477,7468,1,0,0,0,7477,7469,1,0,0,0,7477,7470,1,0,0,0,7477,7471,1,0,0,0,7477,7472,1,0,0,0,7477,7473,1,0,0,0,7477,7474,1,0,0,0,7477,7475,1,0,0,0,7477,7476,1,0,0,0,7478,785,1,0,0,0,7479,7480,3,788,394,0,7480,7481,3,790,395,0,7481,787,1,0,0,0,7482,7485,3,1270,635,0,7483,7485,3,766,383,0,7484,7482,1,0,0,0,7484,7483,1,0,0,0,7485,789,1,0,0,0,7486,7490,3,58,29,0,7487,7490,3,264,132,0,7488,7490,1,0,0,0,7489,7486,1,0,0,0,7489,7487,1,0,0,0,7489,7488,1,0,0,0,7490,791,1,0,0,0,7491,7492,5,283,0,0,7492,7493,3,1234,617,0,7493,7494,3,794,397,0,7494,7495,5,36,0,0,7495,7496,3,796,398,0,7496,793,1,0,0,0,7497,7498,5,2,0,0,7498,7499,3,1162,581,0,7499,7500,5,3,0,0,7500,7503,1,0,0,0,7501,7503,1,0,0,0,7502,7497,1,0,0,0,7502,7501,1,0,0,0,7503,795,1,0,0,0,7504,7509,3,858,429,0,7505,7509,3,804,402,0,7506,7509,3,844,422,0,7507,7509,3,830,415,0,7508,7504,1,0,0,0,7508,7505,1,0,0,0,7508,7506,1,0,0,0,7508,7507,1,0,0,0,7509,797,1,0,0,0,7510,7511,5,202,0,0,7511,7512,3,1234,617,0,7512,7513,3,800,400,0,7513,7538,1,0,0,0,7514,7515,5,46,0,0,7515,7516,3,154,77,0,7516,7517,5,92,0,0,7517,7518,3,244,122,0,7518,7519,5,36,0,0,7519,7520,5,202,0,0,7520,7521,3,1234,617,0,7521,7522,3,800,400,0,7522,7523,3,246,123,0,7523,7538,1,0,0,0,7524,7525,5,46,0,0,7525,7526,3,154,77,0,7526,7527,5,92,0,0,7527,7528,5,220,0,0,7528,7529,5,77,0,0,7529,7530,5,389,0,0,7530,7531,3,244,122,0,7531,7532,5,36,0,0,7532,7533,5,202,0,0,7533,7534,3,1234,617,0,7534,7535,3,800,400,0,7535,7536,3,246,123,0,7536,7538,1,0,0,0,7537,7510,1,0,0,0,7537,7514,1,0,0,0,7537,7524,1,0,0,0,7538,799,1,0,0,0,7539,7540,5,2,0,0,7540,7541,3,1156,578,0,7541,7542,5,3,0,0,7542,7545,1,0,0,0,7543,7545,1,0,0,0,7544,7539,1,0,0,0,7544,7543,1,0,0,0,7545,801,1,0,0,0,7546,7547,5,177,0,0,7547,7557,3,1234,617,0,7548,7549,5,177,0,0,7549,7550,5,283,0,0,7550,7557,3,1234,617,0,7551,7552,5,177,0,0,7552,7557,5,30,0,0,7553,7554,5,177,0,0,7554,7555,5,283,0,0,7555,7557,5,30,0,0,7556,7546,1,0,0,0,7556,7548,1,0,0,0,7556,7551,1,0,0,0,7556,7553,1,0,0,0,7557,803,1,0,0,0,7558,7560,3,872,436,0,7559,7558,1,0,0,0,7559,7560,1,0,0,0,7560,7561,1,0,0,0,7561,7562,5,232,0,0,7562,7563,5,71,0,0,7563,7564,3,806,403,0,7564,7565,3,808,404,0,7565,7566,3,816,408,0,7566,7567,3,820,410,0,7567,805,1,0,0,0,7568,7571,3,1230,615,0,7569,7570,5,36,0,0,7570,7572,3,1264,632,0,7571,7569,1,0,0,0,7571,7572,1,0,0,0,7572,807,1,0,0,0,7573,7593,3,858,429,0,7574,7575,5,463,0,0,7575,7576,3,810,405,0,7576,7577,5,450,0,0,7577,7578,3,858,429,0,7578,7593,1,0,0,0,7579,7580,5,2,0,0,7580,7581,3,812,406,0,7581,7586,5,3,0,0,7582,7583,5,463,0,0,7583,7584,3,810,405,0,7584,7585,5,450,0,0,7585,7587,1,0,0,0,7586,7582,1,0,0,0,7586,7587,1,0,0,0,7587,7588,1,0,0,0,7588,7589,3,858,429,0,7589,7593,1,0,0,0,7590,7591,5,53,0,0,7591,7593,5,415,0,0,7592,7573,1,0,0,0,7592,7574,1,0,0,0,7592,7579,1,0,0,0,7592,7590,1,0,0,0,7593,809,1,0,0,0,7594,7595,7,34,0,0,7595,811,1,0,0,0,7596,7601,3,814,407,0,7597,7598,5,6,0,0,7598,7600,3,814,407,0,7599,7597,1,0,0,0,7600,7603,1,0,0,0,7601,7599,1,0,0,0,7601,7602,1,0,0,0,7602,813,1,0,0,0,7603,7601,1,0,0,0,7604,7605,3,1264,632,0,7605,7606,3,1200,600,0,7606,815,1,0,0,0,7607,7608,5,80,0,0,7608,7609,5,464,0,0,7609,7610,3,818,409,0,7610,7617,5,57,0,0,7611,7612,5,362,0,0,7612,7613,5,326,0,0,7613,7614,3,846,423,0,7614,7615,3,974,487,0,7615,7618,1,0,0,0,7616,7618,5,263,0,0,7617,7611,1,0,0,0,7617,7616,1,0,0,0,7618,7621,1,0,0,0,7619,7621,1,0,0,0,7620,7607,1,0,0,0,7620,7619,1,0,0,0,7621,817,1,0,0,0,7622,7623,5,2,0,0,7623,7624,3,536,268,0,7624,7625,5,3,0,0,7625,7626,3,974,487,0,7626,7632,1,0,0,0,7627,7628,5,80,0,0,7628,7629,5,45,0,0,7629,7632,3,1224,612,0,7630,7632,1,0,0,0,7631,7622,1,0,0,0,7631,7627,1,0,0,0,7631,7630,1,0,0,0,7632,819,1,0,0,0,7633,7634,5,87,0,0,7634,7637,3,1204,602,0,7635,7637,1,0,0,0,7636,7633,1,0,0,0,7636,7635,1,0,0,0,7637,821,1,0,0,0,7638,7640,5,253,0,0,7639,7641,5,71,0,0,7640,7639,1,0,0,0,7640,7641,1,0,0,0,7641,7642,1,0,0,0,7642,7644,3,1230,615,0,7643,7645,3,944,472,0,7644,7643,1,0,0,0,7644,7645,1,0,0,0,7645,7646,1,0,0,0,7646,7649,5,100,0,0,7647,7650,3,860,430,0,7648,7650,3,1230,615,0,7649,7647,1,0,0,0,7649,7648,1,0,0,0,7650,7652,1,0,0,0,7651,7653,3,944,472,0,7652,7651,1,0,0,0,7652,7653,1,0,0,0,7653,7654,1,0,0,0,7654,7655,5,80,0,0,7655,7664,3,1038,519,0,7656,7658,3,824,412,0,7657,7659,3,826,413,0,7658,7657,1,0,0,0,7658,7659,1,0,0,0,7659,7665,1,0,0,0,7660,7662,3,826,413,0,7661,7663,3,824,412,0,7662,7661,1,0,0,0,7662,7663,1,0,0,0,7663,7665,1,0,0,0,7664,7656,1,0,0,0,7664,7660,1,0,0,0,7665,7667,1,0,0,0,7666,7668,3,828,414,0,7667,7666,1,0,0,0,7667,7668,1,0,0,0,7668,823,1,0,0,0,7669,7670,5,102,0,0,7670,7671,5,77,0,0,7671,7674,5,250,0,0,7672,7673,5,33,0,0,7673,7675,3,1038,519,0,7674,7672,1,0,0,0,7674,7675,1,0,0,0,7675,7677,1,0,0,0,7676,7678,5,93,0,0,7677,7676,1,0,0,0,7677,7678,1,0,0,0,7678,7679,1,0,0,0,7679,7684,5,232,0,0,7680,7681,5,2,0,0,7681,7682,3,812,406,0,7682,7683,5,3,0,0,7683,7685,1,0,0,0,7684,7680,1,0,0,0,7684,7685,1,0,0,0,7685,7686,1,0,0,0,7686,7687,3,934,467,0,7687,825,1,0,0,0,7688,7689,5,102,0,0,7689,7692,5,250,0,0,7690,7691,5,33,0,0,7691,7693,3,1038,519,0,7692,7690,1,0,0,0,7692,7693,1,0,0,0,7693,7695,1,0,0,0,7694,7696,5,93,0,0,7695,7694,1,0,0,0,7695,7696,1,0,0,0,7696,7697,1,0,0,0,7697,7698,5,362,0,0,7698,7699,5,326,0,0,7699,7700,3,846,423,0,7700,827,1,0,0,0,7701,7702,5,102,0,0,7702,7704,5,250,0,0,7703,7705,5,93,0,0,7704,7703,1,0,0,0,7704,7705,1,0,0,0,7705,7706,1,0,0,0,7706,7707,5,182,0,0,7707,829,1,0,0,0,7708,7710,3,872,436,0,7709,7708,1,0,0,0,7709,7710,1,0,0,0,7710,7711,1,0,0,0,7711,7712,5,182,0,0,7712,7713,5,64,0,0,7713,7714,3,962,481,0,7714,7715,3,832,416,0,7715,7716,3,976,488,0,7716,7717,3,820,410,0,7717,831,1,0,0,0,7718,7719,5,100,0,0,7719,7722,3,938,469,0,7720,7722,1,0,0,0,7721,7718,1,0,0,0,7721,7720,1,0,0,0,7722,833,1,0,0,0,7723,7724,5,247,0,0,7724,7725,3,882,441,0,7725,7726,3,960,480,0,7726,7727,3,836,418,0,7727,7728,3,840,420,0,7728,835,1,0,0,0,7729,7730,5,68,0,0,7730,7731,3,838,419,0,7731,7732,5,256,0,0,7732,7735,1,0,0,0,7733,7735,1,0,0,0,7734,7729,1,0,0,0,7734,7733,1,0,0,0,7735,837,1,0,0,0,7736,7737,5,131,0,0,7737,7749,7,35,0,0,7738,7739,5,407,0,0,7739,7749,7,35,0,0,7740,7745,5,327,0,0,7741,7742,5,362,0,0,7742,7746,5,201,0,0,7743,7744,5,407,0,0,7744,7746,5,201,0,0,7745,7741,1,0,0,0,7745,7743,1,0,0,0,7745,7746,1,0,0,0,7746,7749,1,0,0,0,7747,7749,5,201,0,0,7748,7736,1,0,0,0,7748,7738,1,0,0,0,7748,7740,1,0,0,0,7748,7747,1,0,0,0,7749,839,1,0,0,0,7750,7753,5,265,0,0,7751,7753,1,0,0,0,7752,7750,1,0,0,0,7752,7751,1,0,0,0,7753,841,1,0,0,0,7754,7759,5,265,0,0,7755,7756,5,465,0,0,7756,7759,5,466,0,0,7757,7759,1,0,0,0,7758,7754,1,0,0,0,7758,7755,1,0,0,0,7758,7757,1,0,0,0,7759,843,1,0,0,0,7760,7762,3,872,436,0,7761,7760,1,0,0,0,7761,7762,1,0,0,0,7762,7763,1,0,0,0,7763,7764,5,362,0,0,7764,7765,3,962,481,0,7765,7766,5,326,0,0,7766,7767,3,846,423,0,7767,7768,3,936,468,0,7768,7769,3,976,488,0,7769,7770,3,820,410,0,7770,845,1,0,0,0,7771,7776,3,848,424,0,7772,7773,5,6,0,0,7773,7775,3,848,424,0,7774,7772,1,0,0,0,7775,7778,1,0,0,0,7776,7774,1,0,0,0,7776,7777,1,0,0,0,7777,847,1,0,0,0,7778,7776,1,0,0,0,7779,7780,3,850,425,0,7780,7781,5,10,0,0,7781,7782,3,1038,519,0,7782,7797,1,0,0,0,7783,7784,5,2,0,0,7784,7789,3,850,425,0,7785,7786,5,6,0,0,7786,7788,3,850,425,0,7787,7785,1,0,0,0,7788,7791,1,0,0,0,7789,7787,1,0,0,0,7789,7790,1,0,0,0,7790,7792,1,0,0,0,7791,7789,1,0,0,0,7792,7793,5,3,0,0,7793,7794,5,10,0,0,7794,7795,3,1038,519,0,7795,7797,1,0,0,0,7796,7779,1,0,0,0,7796,7783,1,0,0,0,7797,849,1,0,0,0,7798,7799,3,1264,632,0,7799,7800,3,1200,600,0,7800,851,1,0,0,0,7801,7802,5,178,0,0,7802,7810,3,854,427,0,7803,7804,5,262,0,0,7804,7809,5,317,0,0,7805,7809,5,317,0,0,7806,7809,5,107,0,0,7807,7809,5,231,0,0,7808,7803,1,0,0,0,7808,7805,1,0,0,0,7808,7806,1,0,0,0,7808,7807,1,0,0,0,7809,7812,1,0,0,0,7810,7808,1,0,0,0,7810,7811,1,0,0,0,7811,7813,1,0,0,0,7812,7810,1,0,0,0,7813,7814,5,172,0,0,7814,7815,3,856,428,0,7815,7816,5,62,0,0,7816,7817,3,858,429,0,7817,853,1,0,0,0,7818,7819,3,1234,617,0,7819,855,1,0,0,0,7820,7826,1,0,0,0,7821,7822,5,105,0,0,7822,7826,5,217,0,0,7823,7824,5,372,0,0,7824,7826,5,217,0,0,7825,7820,1,0,0,0,7825,7821,1,0,0,0,7825,7823,1,0,0,0,7826,857,1,0,0,0,7827,7830,3,862,431,0,7828,7830,3,860,430,0,7829,7827,1,0,0,0,7829,7828,1,0,0,0,7830,859,1,0,0,0,7831,7832,5,2,0,0,7832,7833,3,862,431,0,7833,7834,5,3,0,0,7834,7840,1,0,0,0,7835,7836,5,2,0,0,7836,7837,3,860,430,0,7837,7838,5,3,0,0,7838,7840,1,0,0,0,7839,7831,1,0,0,0,7839,7835,1,0,0,0,7840,861,1,0,0,0,7841,7842,3,864,432,0,7842,7850,3,890,445,0,7843,7844,3,926,463,0,7844,7845,3,900,450,0,7845,7851,1,0,0,0,7846,7848,3,898,449,0,7847,7849,3,926,463,0,7848,7847,1,0,0,0,7848,7849,1,0,0,0,7849,7851,1,0,0,0,7850,7843,1,0,0,0,7850,7846,1,0,0,0,7850,7851,1,0,0,0,7851,7865,1,0,0,0,7852,7853,3,872,436,0,7853,7854,3,864,432,0,7854,7862,3,890,445,0,7855,7856,3,926,463,0,7856,7857,3,900,450,0,7857,7863,1,0,0,0,7858,7860,3,898,449,0,7859,7861,3,926,463,0,7860,7859,1,0,0,0,7860,7861,1,0,0,0,7861,7863,1,0,0,0,7862,7855,1,0,0,0,7862,7858,1,0,0,0,7862,7863,1,0,0,0,7863,7865,1,0,0,0,7864,7841,1,0,0,0,7864,7852,1,0,0,0,7865,863,1,0,0,0,7866,7873,3,866,433,0,7867,7868,7,36,0,0,7868,7869,3,884,442,0,7869,7870,3,866,433,0,7870,7872,1,0,0,0,7871,7867,1,0,0,0,7872,7875,1,0,0,0,7873,7871,1,0,0,0,7873,7874,1,0,0,0,7874,865,1,0,0,0,7875,7873,1,0,0,0,7876,7883,3,870,435,0,7877,7878,5,70,0,0,7878,7879,3,884,442,0,7879,7880,3,870,435,0,7880,7882,1,0,0,0,7881,7877,1,0,0,0,7882,7885,1,0,0,0,7883,7881,1,0,0,0,7883,7884,1,0,0,0,7884,867,1,0,0,0,7885,7883,1,0,0,0,7886,7888,3,1204,602,0,7887,7889,3,878,439,0,7888,7887,1,0,0,0,7888,7889,1,0,0,0,7889,7902,1,0,0,0,7890,7891,3,888,444,0,7891,7893,3,1202,601,0,7892,7894,3,878,439,0,7893,7892,1,0,0,0,7893,7894,1,0,0,0,7894,7902,1,0,0,0,7895,7896,3,886,443,0,7896,7898,3,1204,602,0,7897,7899,3,878,439,0,7898,7897,1,0,0,0,7898,7899,1,0,0,0,7899,7902,1,0,0,0,7900,7902,3,878,439,0,7901,7886,1,0,0,0,7901,7890,1,0,0,0,7901,7895,1,0,0,0,7901,7900,1,0,0,0,7902,869,1,0,0,0,7903,7904,5,88,0,0,7904,7905,3,868,434,0,7905,7906,3,936,468,0,7906,7907,3,974,487,0,7907,7908,3,918,459,0,7908,7909,3,924,462,0,7909,7910,3,1116,558,0,7910,7916,1,0,0,0,7911,7916,3,934,467,0,7912,7913,5,92,0,0,7913,7916,3,958,479,0,7914,7916,3,860,430,0,7915,7903,1,0,0,0,7915,7911,1,0,0,0,7915,7912,1,0,0,0,7915,7914,1,0,0,0,7916,871,1,0,0,0,7917,7919,5,105,0,0,7918,7920,5,296,0,0,7919,7918,1,0,0,0,7919,7920,1,0,0,0,7920,7921,1,0,0,0,7921,7926,3,874,437,0,7922,7923,5,6,0,0,7923,7925,3,874,437,0,7924,7922,1,0,0,0,7925,7928,1,0,0,0,7926,7924,1,0,0,0,7926,7927,1,0,0,0,7927,873,1,0,0,0,7928,7926,1,0,0,0,7929,7930,3,1234,617,0,7930,7931,3,776,388,0,7931,7932,5,36,0,0,7932,7933,3,876,438,0,7933,7934,5,2,0,0,7934,7935,3,796,398,0,7935,7936,5,3,0,0,7936,875,1,0,0,0,7937,7942,5,251,0,0,7938,7939,5,77,0,0,7939,7942,5,251,0,0,7940,7942,1,0,0,0,7941,7937,1,0,0,0,7941,7938,1,0,0,0,7941,7940,1,0,0,0,7942,877,1,0,0,0,7943,7949,5,71,0,0,7944,7946,5,339,0,0,7945,7944,1,0,0,0,7945,7946,1,0,0,0,7946,7947,1,0,0,0,7947,7950,3,880,440,0,7948,7950,3,1448,724,0,7949,7945,1,0,0,0,7949,7948,1,0,0,0,7950,879,1,0,0,0,7951,7953,7,37,0,0,7952,7951,1,0,0,0,7952,7953,1,0,0,0,7953,7954,1,0,0,0,7954,7955,7,10,0,0,7955,7956,3,882,441,0,7956,7957,3,1230,615,0,7957,7966,1,0,0,0,7958,7959,5,360,0,0,7959,7960,3,882,441,0,7960,7961,3,1230,615,0,7961,7966,1,0,0,0,7962,7963,5,92,0,0,7963,7966,3,1230,615,0,7964,7966,3,1230,615,0,7965,7952,1,0,0,0,7965,7958,1,0,0,0,7965,7962,1,0,0,0,7965,7964,1,0,0,0,7966,881,1,0,0,0,7967,7970,5,92,0,0,7968,7970,1,0,0,0,7969,7967,1,0,0,0,7969,7968,1,0,0,0,7970,883,1,0,0,0,7971,7975,5,30,0,0,7972,7975,5,56,0,0,7973,7975,1,0,0,0,7974,7971,1,0,0,0,7974,7972,1,0,0,0,7974,7973,1,0,0,0,7975,885,1,0,0,0,7976,7982,5,56,0,0,7977,7978,5,80,0,0,7978,7979,5,2,0,0,7979,7980,3,1156,578,0,7980,7981,5,3,0,0,7981,7983,1,0,0,0,7982,7977,1,0,0,0,7982,7983,1,0,0,0,7983,887,1,0,0,0,7984,7985,5,30,0,0,7985,889,1,0,0,0,7986,7989,3,892,446,0,7987,7989,1,0,0,0,7988,7986,1,0,0,0,7988,7987,1,0,0,0,7989,891,1,0,0,0,7990,7991,5,83,0,0,7991,7992,5,147,0,0,7992,7993,3,894,447,0,7993,893,1,0,0,0,7994,7999,3,896,448,0,7995,7996,5,6,0,0,7996,7998,3,896,448,0,7997,7995,1,0,0,0,7998,8001,1,0,0,0,7999,7997,1,0,0,0,7999,8e3,1,0,0,0,8e3,895,1,0,0,0,8001,7999,1,0,0,0,8002,8006,3,1038,519,0,8003,8004,5,100,0,0,8004,8007,3,1152,576,0,8005,8007,3,548,274,0,8006,8003,1,0,0,0,8006,8005,1,0,0,0,8007,8008,1,0,0,0,8008,8009,3,550,275,0,8009,897,1,0,0,0,8010,8012,3,902,451,0,8011,8013,3,904,452,0,8012,8011,1,0,0,0,8012,8013,1,0,0,0,8013,8019,1,0,0,0,8014,8016,3,904,452,0,8015,8017,3,902,451,0,8016,8015,1,0,0,0,8016,8017,1,0,0,0,8017,8019,1,0,0,0,8018,8010,1,0,0,0,8018,8014,1,0,0,0,8019,899,1,0,0,0,8020,8023,3,898,449,0,8021,8023,1,0,0,0,8022,8020,1,0,0,0,8022,8021,1,0,0,0,8023,901,1,0,0,0,8024,8025,5,74,0,0,8025,8028,3,906,453,0,8026,8027,5,6,0,0,8027,8029,3,908,454,0,8028,8026,1,0,0,0,8028,8029,1,0,0,0,8029,8048,1,0,0,0,8030,8031,5,61,0,0,8031,8045,3,916,458,0,8032,8033,3,910,455,0,8033,8037,3,914,457,0,8034,8038,5,81,0,0,8035,8036,5,105,0,0,8036,8038,5,467,0,0,8037,8034,1,0,0,0,8037,8035,1,0,0,0,8038,8046,1,0,0,0,8039,8043,3,914,457,0,8040,8044,5,81,0,0,8041,8042,5,105,0,0,8042,8044,5,467,0,0,8043,8040,1,0,0,0,8043,8041,1,0,0,0,8044,8046,1,0,0,0,8045,8032,1,0,0,0,8045,8039,1,0,0,0,8046,8048,1,0,0,0,8047,8024,1,0,0,0,8047,8030,1,0,0,0,8048,903,1,0,0,0,8049,8054,5,79,0,0,8050,8055,3,908,454,0,8051,8052,3,910,455,0,8052,8053,3,914,457,0,8053,8055,1,0,0,0,8054,8050,1,0,0,0,8054,8051,1,0,0,0,8055,905,1,0,0,0,8056,8059,3,1038,519,0,8057,8059,5,30,0,0,8058,8056,1,0,0,0,8058,8057,1,0,0,0,8059,907,1,0,0,0,8060,8061,3,1038,519,0,8061,909,1,0,0,0,8062,8068,3,1082,541,0,8063,8064,5,12,0,0,8064,8068,3,912,456,0,8065,8066,5,13,0,0,8066,8068,3,912,456,0,8067,8062,1,0,0,0,8067,8063,1,0,0,0,8067,8065,1,0,0,0,8068,911,1,0,0,0,8069,8072,3,1250,625,0,8070,8072,3,1248,624,0,8071,8069,1,0,0,0,8071,8070,1,0,0,0,8072,913,1,0,0,0,8073,8074,7,38,0,0,8074,915,1,0,0,0,8075,8076,7,39,0,0,8076,917,1,0,0,0,8077,8078,5,66,0,0,8078,8079,5,147,0,0,8079,8082,3,920,460,0,8080,8082,1,0,0,0,8081,8077,1,0,0,0,8081,8080,1,0,0,0,8082,919,1,0,0,0,8083,8088,3,922,461,0,8084,8085,5,6,0,0,8085,8087,3,922,461,0,8086,8084,1,0,0,0,8087,8090,1,0,0,0,8088,8086,1,0,0,0,8088,8089,1,0,0,0,8089,921,1,0,0,0,8090,8088,1,0,0,0,8091,8111,3,1038,519,0,8092,8093,5,2,0,0,8093,8111,5,3,0,0,8094,8095,5,469,0,0,8095,8096,5,2,0,0,8096,8097,3,1156,578,0,8097,8098,5,3,0,0,8098,8111,1,0,0,0,8099,8100,5,468,0,0,8100,8101,5,2,0,0,8101,8102,3,1156,578,0,8102,8103,5,3,0,0,8103,8111,1,0,0,0,8104,8105,5,470,0,0,8105,8106,5,471,0,0,8106,8107,5,2,0,0,8107,8108,3,920,460,0,8108,8109,5,3,0,0,8109,8111,1,0,0,0,8110,8091,1,0,0,0,8110,8092,1,0,0,0,8110,8094,1,0,0,0,8110,8099,1,0,0,0,8110,8104,1,0,0,0,8111,923,1,0,0,0,8112,8113,5,67,0,0,8113,8116,3,1038,519,0,8114,8116,1,0,0,0,8115,8112,1,0,0,0,8115,8114,1,0,0,0,8116,925,1,0,0,0,8117,8119,3,928,464,0,8118,8117,1,0,0,0,8119,8120,1,0,0,0,8120,8118,1,0,0,0,8120,8121,1,0,0,0,8121,8126,1,0,0,0,8122,8123,5,62,0,0,8123,8124,5,293,0,0,8124,8126,5,81,0,0,8125,8118,1,0,0,0,8125,8122,1,0,0,0,8126,927,1,0,0,0,8127,8128,3,930,465,0,8128,8129,3,932,466,0,8129,8130,3,842,421,0,8130,929,1,0,0,0,8131,8141,5,62,0,0,8132,8133,5,262,0,0,8133,8135,5,236,0,0,8134,8132,1,0,0,0,8134,8135,1,0,0,0,8135,8136,1,0,0,0,8136,8142,5,362,0,0,8137,8139,5,236,0,0,8138,8137,1,0,0,0,8138,8139,1,0,0,0,8139,8140,1,0,0,0,8140,8142,5,327,0,0,8141,8134,1,0,0,0,8141,8138,1,0,0,0,8142,931,1,0,0,0,8143,8144,5,268,0,0,8144,8147,3,1208,604,0,8145,8147,1,0,0,0,8146,8143,1,0,0,0,8146,8145,1,0,0,0,8147,933,1,0,0,0,8148,8149,5,415,0,0,8149,8150,5,2,0,0,8150,8151,3,1156,578,0,8151,8159,5,3,0,0,8152,8153,5,6,0,0,8153,8154,5,2,0,0,8154,8155,3,1156,578,0,8155,8156,5,3,0,0,8156,8158,1,0,0,0,8157,8152,1,0,0,0,8158,8161,1,0,0,0,8159,8157,1,0,0,0,8159,8160,1,0,0,0,8160,935,1,0,0,0,8161,8159,1,0,0,0,8162,8163,5,64,0,0,8163,8166,3,938,469,0,8164,8166,1,0,0,0,8165,8162,1,0,0,0,8165,8164,1,0,0,0,8166,937,1,0,0,0,8167,8177,3,940,470,0,8168,8173,3,942,471,0,8169,8170,5,6,0,0,8170,8172,3,942,471,0,8171,8169,1,0,0,0,8172,8175,1,0,0,0,8173,8171,1,0,0,0,8173,8174,1,0,0,0,8174,8177,1,0,0,0,8175,8173,1,0,0,0,8176,8167,1,0,0,0,8176,8168,1,0,0,0,8177,939,1,0,0,0,8178,8181,3,942,471,0,8179,8180,5,6,0,0,8180,8182,3,942,471,0,8181,8179,1,0,0,0,8182,8183,1,0,0,0,8183,8181,1,0,0,0,8183,8184,1,0,0,0,8184,941,1,0,0,0,8185,8186,3,958,479,0,8186,8188,3,946,473,0,8187,8189,3,964,482,0,8188,8187,1,0,0,0,8188,8189,1,0,0,0,8189,8235,1,0,0,0,8190,8191,3,966,483,0,8191,8192,3,950,475,0,8192,8235,1,0,0,0,8193,8194,3,984,492,0,8194,8195,3,946,473,0,8195,8235,1,0,0,0,8196,8197,3,860,430,0,8197,8198,3,946,473,0,8198,8235,1,0,0,0,8199,8209,5,72,0,0,8200,8201,3,984,492,0,8201,8202,3,946,473,0,8202,8210,1,0,0,0,8203,8204,3,966,483,0,8204,8205,3,950,475,0,8205,8210,1,0,0,0,8206,8207,3,860,430,0,8207,8208,3,946,473,0,8208,8210,1,0,0,0,8209,8200,1,0,0,0,8209,8203,1,0,0,0,8209,8206,1,0,0,0,8210,8235,1,0,0,0,8211,8212,5,2,0,0,8212,8229,3,942,471,0,8213,8214,5,110,0,0,8214,8215,5,118,0,0,8215,8230,3,942,471,0,8216,8218,5,121,0,0,8217,8219,3,952,476,0,8218,8217,1,0,0,0,8218,8219,1,0,0,0,8219,8220,1,0,0,0,8220,8221,5,118,0,0,8221,8230,3,942,471,0,8222,8224,3,952,476,0,8223,8222,1,0,0,0,8223,8224,1,0,0,0,8224,8225,1,0,0,0,8225,8226,5,118,0,0,8226,8227,3,942,471,0,8227,8228,3,954,477,0,8228,8230,1,0,0,0,8229,8213,1,0,0,0,8229,8216,1,0,0,0,8229,8223,1,0,0,0,8229,8230,1,0,0,0,8230,8231,1,0,0,0,8231,8232,5,3,0,0,8232,8233,3,946,473,0,8233,8235,1,0,0,0,8234,8185,1,0,0,0,8234,8190,1,0,0,0,8234,8193,1,0,0,0,8234,8196,1,0,0,0,8234,8199,1,0,0,0,8234,8211,1,0,0,0,8235,8254,1,0,0,0,8236,8237,5,110,0,0,8237,8238,5,118,0,0,8238,8253,3,942,471,0,8239,8241,5,121,0,0,8240,8242,3,952,476,0,8241,8240,1,0,0,0,8241,8242,1,0,0,0,8242,8243,1,0,0,0,8243,8244,5,118,0,0,8244,8253,3,942,471,0,8245,8247,3,952,476,0,8246,8245,1,0,0,0,8246,8247,1,0,0,0,8247,8248,1,0,0,0,8248,8249,5,118,0,0,8249,8250,3,942,471,0,8250,8251,3,954,477,0,8251,8253,1,0,0,0,8252,8236,1,0,0,0,8252,8239,1,0,0,0,8252,8246,1,0,0,0,8253,8256,1,0,0,0,8254,8252,1,0,0,0,8254,8255,1,0,0,0,8255,943,1,0,0,0,8256,8254,1,0,0,0,8257,8259,5,36,0,0,8258,8257,1,0,0,0,8258,8259,1,0,0,0,8259,8260,1,0,0,0,8260,8265,3,1264,632,0,8261,8262,5,2,0,0,8262,8263,3,1232,616,0,8263,8264,5,3,0,0,8264,8266,1,0,0,0,8265,8261,1,0,0,0,8265,8266,1,0,0,0,8266,945,1,0,0,0,8267,8270,3,948,474,0,8268,8270,1,0,0,0,8269,8267,1,0,0,0,8269,8268,1,0,0,0,8270,947,1,0,0,0,8271,8273,5,36,0,0,8272,8271,1,0,0,0,8272,8273,1,0,0,0,8273,8274,1,0,0,0,8274,8279,3,1266,633,0,8275,8276,5,2,0,0,8276,8277,3,1232,616,0,8277,8278,5,3,0,0,8278,8280,1,0,0,0,8279,8275,1,0,0,0,8279,8280,1,0,0,0,8280,949,1,0,0,0,8281,8295,3,944,472,0,8282,8284,5,36,0,0,8283,8285,3,1264,632,0,8284,8283,1,0,0,0,8284,8285,1,0,0,0,8285,8288,1,0,0,0,8286,8288,3,1264,632,0,8287,8282,1,0,0,0,8287,8286,1,0,0,0,8288,8289,1,0,0,0,8289,8290,5,2,0,0,8290,8291,3,980,490,0,8291,8292,5,3,0,0,8292,8295,1,0,0,0,8293,8295,1,0,0,0,8294,8281,1,0,0,0,8294,8287,1,0,0,0,8294,8293,1,0,0,0,8295,951,1,0,0,0,8296,8298,7,40,0,0,8297,8299,5,123,0,0,8298,8297,1,0,0,0,8298,8299,1,0,0,0,8299,953,1,0,0,0,8300,8301,5,100,0,0,8301,8302,5,2,0,0,8302,8303,3,1232,616,0,8303,8304,5,3,0,0,8304,8308,1,0,0,0,8305,8306,5,80,0,0,8306,8308,3,1038,519,0,8307,8300,1,0,0,0,8307,8305,1,0,0,0,8308,955,1,0,0,0,8309,8310,3,1230,615,0,8310,957,1,0,0,0,8311,8313,3,1230,615,0,8312,8314,5,9,0,0,8313,8312,1,0,0,0,8313,8314,1,0,0,0,8314,8324,1,0,0,0,8315,8321,5,81,0,0,8316,8322,3,1230,615,0,8317,8318,5,2,0,0,8318,8319,3,1230,615,0,8319,8320,5,3,0,0,8320,8322,1,0,0,0,8321,8316,1,0,0,0,8321,8317,1,0,0,0,8322,8324,1,0,0,0,8323,8311,1,0,0,0,8323,8315,1,0,0,0,8324,959,1,0,0,0,8325,8330,3,958,479,0,8326,8327,5,6,0,0,8327,8329,3,958,479,0,8328,8326,1,0,0,0,8329,8332,1,0,0,0,8330,8328,1,0,0,0,8330,8331,1,0,0,0,8331,961,1,0,0,0,8332,8330,1,0,0,0,8333,8338,3,958,479,0,8334,8336,5,36,0,0,8335,8334,1,0,0,0,8335,8336,1,0,0,0,8336,8337,1,0,0,0,8337,8339,3,1264,632,0,8338,8335,1,0,0,0,8338,8339,1,0,0,0,8339,963,1,0,0,0,8340,8341,5,472,0,0,8341,8342,3,1240,620,0,8342,8343,5,2,0,0,8343,8344,3,1156,578,0,8344,8345,5,3,0,0,8345,8346,5,303,0,0,8346,8347,5,2,0,0,8347,8348,3,1038,519,0,8348,8349,5,3,0,0,8349,965,1,0,0,0,8350,8351,3,1090,545,0,8351,8352,3,972,486,0,8352,8368,1,0,0,0,8353,8354,5,313,0,0,8354,8355,5,64,0,0,8355,8356,5,2,0,0,8356,8361,3,968,484,0,8357,8358,5,6,0,0,8358,8360,3,968,484,0,8359,8357,1,0,0,0,8360,8363,1,0,0,0,8361,8359,1,0,0,0,8361,8362,1,0,0,0,8362,8364,1,0,0,0,8363,8361,1,0,0,0,8364,8365,5,3,0,0,8365,8366,3,972,486,0,8366,8368,1,0,0,0,8367,8350,1,0,0,0,8367,8353,1,0,0,0,8368,967,1,0,0,0,8369,8370,3,1090,545,0,8370,8371,3,970,485,0,8371,969,1,0,0,0,8372,8373,5,36,0,0,8373,8374,5,2,0,0,8374,8375,3,980,490,0,8375,8376,5,3,0,0,8376,8379,1,0,0,0,8377,8379,1,0,0,0,8378,8372,1,0,0,0,8378,8377,1,0,0,0,8379,971,1,0,0,0,8380,8381,5,105,0,0,8381,8384,5,473,0,0,8382,8384,1,0,0,0,8383,8380,1,0,0,0,8383,8382,1,0,0,0,8384,973,1,0,0,0,8385,8386,5,103,0,0,8386,8389,3,1038,519,0,8387,8389,1,0,0,0,8388,8385,1,0,0,0,8388,8387,1,0,0,0,8389,975,1,0,0,0,8390,8395,5,103,0,0,8391,8392,5,434,0,0,8392,8393,5,268,0,0,8393,8396,3,854,427,0,8394,8396,3,1038,519,0,8395,8391,1,0,0,0,8395,8394,1,0,0,0,8396,8399,1,0,0,0,8397,8399,1,0,0,0,8398,8390,1,0,0,0,8398,8397,1,0,0,0,8399,977,1,0,0,0,8400,8403,3,980,490,0,8401,8403,1,0,0,0,8402,8400,1,0,0,0,8402,8401,1,0,0,0,8403,979,1,0,0,0,8404,8409,3,982,491,0,8405,8406,5,6,0,0,8406,8408,3,982,491,0,8407,8405,1,0,0,0,8408,8411,1,0,0,0,8409,8407,1,0,0,0,8409,8410,1,0,0,0,8410,981,1,0,0,0,8411,8409,1,0,0,0,8412,8413,3,1264,632,0,8413,8414,3,996,498,0,8414,8415,3,102,51,0,8415,983,1,0,0,0,8416,8417,5,474,0,0,8417,8445,5,2,0,0,8418,8419,3,1082,541,0,8419,8420,3,1108,554,0,8420,8421,5,475,0,0,8421,8426,3,986,493,0,8422,8423,5,6,0,0,8423,8425,3,986,493,0,8424,8422,1,0,0,0,8425,8428,1,0,0,0,8426,8424,1,0,0,0,8426,8427,1,0,0,0,8427,8446,1,0,0,0,8428,8426,1,0,0,0,8429,8430,5,476,0,0,8430,8431,5,2,0,0,8431,8432,3,992,496,0,8432,8433,5,3,0,0,8433,8434,5,6,0,0,8434,8435,3,1082,541,0,8435,8436,3,1108,554,0,8436,8437,5,475,0,0,8437,8442,3,986,493,0,8438,8439,5,6,0,0,8439,8441,3,986,493,0,8440,8438,1,0,0,0,8441,8444,1,0,0,0,8442,8440,1,0,0,0,8442,8443,1,0,0,0,8443,8446,1,0,0,0,8444,8442,1,0,0,0,8445,8418,1,0,0,0,8445,8429,1,0,0,0,8446,8447,1,0,0,0,8447,8448,5,3,0,0,8448,985,1,0,0,0,8449,8456,3,1264,632,0,8450,8452,3,996,498,0,8451,8453,3,988,494,0,8452,8451,1,0,0,0,8452,8453,1,0,0,0,8453,8457,1,0,0,0,8454,8455,5,62,0,0,8455,8457,5,473,0,0,8456,8450,1,0,0,0,8456,8454,1,0,0,0,8457,987,1,0,0,0,8458,8460,3,990,495,0,8459,8458,1,0,0,0,8460,8461,1,0,0,0,8461,8459,1,0,0,0,8461,8462,1,0,0,0,8462,989,1,0,0,0,8463,8464,5,53,0,0,8464,8472,3,1038,519,0,8465,8466,3,1274,637,0,8466,8467,3,1038,519,0,8467,8472,1,0,0,0,8468,8469,5,77,0,0,8469,8472,5,78,0,0,8470,8472,5,78,0,0,8471,8463,1,0,0,0,8471,8465,1,0,0,0,8471,8468,1,0,0,0,8471,8470,1,0,0,0,8472,991,1,0,0,0,8473,8478,3,994,497,0,8474,8475,5,6,0,0,8475,8477,3,994,497,0,8476,8474,1,0,0,0,8477,8480,1,0,0,0,8478,8476,1,0,0,0,8478,8479,1,0,0,0,8479,993,1,0,0,0,8480,8478,1,0,0,0,8481,8482,3,1080,540,0,8482,8483,5,36,0,0,8483,8484,3,1272,636,0,8484,8488,1,0,0,0,8485,8486,5,53,0,0,8486,8488,3,1080,540,0,8487,8481,1,0,0,0,8487,8485,1,0,0,0,8488,995,1,0,0,0,8489,8491,5,408,0,0,8490,8489,1,0,0,0,8490,8491,1,0,0,0,8491,8492,1,0,0,0,8492,8510,3,998,499,0,8493,8495,5,4,0,0,8494,8496,3,1250,625,0,8495,8494,1,0,0,0,8495,8496,1,0,0,0,8496,8497,1,0,0,0,8497,8499,5,5,0,0,8498,8493,1,0,0,0,8499,8502,1,0,0,0,8500,8498,1,0,0,0,8500,8501,1,0,0,0,8501,8511,1,0,0,0,8502,8500,1,0,0,0,8503,8508,5,35,0,0,8504,8505,5,4,0,0,8505,8506,3,1250,625,0,8506,8507,5,5,0,0,8507,8509,1,0,0,0,8508,8504,1,0,0,0,8508,8509,1,0,0,0,8509,8511,1,0,0,0,8510,8500,1,0,0,0,8510,8503,1,0,0,0,8511,8517,1,0,0,0,8512,8513,3,1230,615,0,8513,8514,5,27,0,0,8514,8515,7,41,0,0,8515,8517,1,0,0,0,8516,8490,1,0,0,0,8516,8512,1,0,0,0,8517,997,1,0,0,0,8518,8532,3,1002,501,0,8519,8532,3,1006,503,0,8520,8532,3,1010,505,0,8521,8532,3,1018,509,0,8522,8532,3,1026,513,0,8523,8529,3,1028,514,0,8524,8530,3,1032,516,0,8525,8526,5,2,0,0,8526,8527,3,1250,625,0,8527,8528,5,3,0,0,8528,8530,1,0,0,0,8529,8524,1,0,0,0,8529,8525,1,0,0,0,8530,8532,1,0,0,0,8531,8518,1,0,0,0,8531,8519,1,0,0,0,8531,8520,1,0,0,0,8531,8521,1,0,0,0,8531,8522,1,0,0,0,8531,8523,1,0,0,0,8532,999,1,0,0,0,8533,8538,3,1006,503,0,8534,8538,3,1012,506,0,8535,8538,3,1020,510,0,8536,8538,3,1026,513,0,8537,8533,1,0,0,0,8537,8534,1,0,0,0,8537,8535,1,0,0,0,8537,8536,1,0,0,0,8538,1001,1,0,0,0,8539,8544,3,1286,643,0,8540,8544,3,1268,634,0,8541,8544,5,119,0,0,8542,8544,5,126,0,0,8543,8539,1,0,0,0,8543,8540,1,0,0,0,8543,8541,1,0,0,0,8543,8542,1,0,0,0,8544,8546,1,0,0,0,8545,8547,3,472,236,0,8546,8545,1,0,0,0,8546,8547,1,0,0,0,8547,8548,1,0,0,0,8548,8549,3,1004,502,0,8549,1003,1,0,0,0,8550,8551,5,2,0,0,8551,8552,3,1156,578,0,8552,8553,5,3,0,0,8553,8556,1,0,0,0,8554,8556,1,0,0,0,8555,8550,1,0,0,0,8555,8554,1,0,0,0,8556,1005,1,0,0,0,8557,8574,5,394,0,0,8558,8574,5,395,0,0,8559,8574,5,409,0,0,8560,8574,5,381,0,0,8561,8574,5,406,0,0,8562,8563,5,391,0,0,8563,8574,3,1008,504,0,8564,8565,5,190,0,0,8565,8574,5,405,0,0,8566,8567,5,388,0,0,8567,8574,3,1004,502,0,8568,8569,5,387,0,0,8569,8574,3,1004,502,0,8570,8571,5,402,0,0,8571,8574,3,1004,502,0,8572,8574,5,383,0,0,8573,8557,1,0,0,0,8573,8558,1,0,0,0,8573,8559,1,0,0,0,8573,8560,1,0,0,0,8573,8561,1,0,0,0,8573,8562,1,0,0,0,8573,8564,1,0,0,0,8573,8566,1,0,0,0,8573,8568,1,0,0,0,8573,8570,1,0,0,0,8573,8572,1,0,0,0,8574,1007,1,0,0,0,8575,8576,5,2,0,0,8576,8577,3,1250,625,0,8577,8578,5,3,0,0,8578,8581,1,0,0,0,8579,8581,1,0,0,0,8580,8575,1,0,0,0,8580,8579,1,0,0,0,8581,1009,1,0,0,0,8582,8585,3,1014,507,0,8583,8585,3,1016,508,0,8584,8582,1,0,0,0,8584,8583,1,0,0,0,8585,1011,1,0,0,0,8586,8589,3,1014,507,0,8587,8589,3,1016,508,0,8588,8586,1,0,0,0,8588,8587,1,0,0,0,8589,1013,1,0,0,0,8590,8591,5,382,0,0,8591,8592,3,1024,512,0,8592,8593,5,2,0,0,8593,8594,3,1156,578,0,8594,8595,5,3,0,0,8595,1015,1,0,0,0,8596,8597,5,382,0,0,8597,8598,3,1024,512,0,8598,1017,1,0,0,0,8599,8604,3,1022,511,0,8600,8601,5,2,0,0,8601,8602,3,1250,625,0,8602,8603,5,3,0,0,8603,8605,1,0,0,0,8604,8600,1,0,0,0,8604,8605,1,0,0,0,8605,1019,1,0,0,0,8606,8611,3,1022,511,0,8607,8608,5,2,0,0,8608,8609,3,1250,625,0,8609,8610,5,3,0,0,8610,8612,1,0,0,0,8611,8607,1,0,0,0,8611,8612,1,0,0,0,8612,1021,1,0,0,0,8613,8614,7,42,0,0,8614,8620,3,1024,512,0,8615,8620,5,416,0,0,8616,8617,5,398,0,0,8617,8618,7,43,0,0,8618,8620,3,1024,512,0,8619,8613,1,0,0,0,8619,8615,1,0,0,0,8619,8616,1,0,0,0,8620,1023,1,0,0,0,8621,8624,5,367,0,0,8622,8624,1,0,0,0,8623,8621,1,0,0,0,8623,8622,1,0,0,0,8624,1025,1,0,0,0,8625,8630,7,44,0,0,8626,8627,5,2,0,0,8627,8628,3,1250,625,0,8628,8629,5,3,0,0,8629,8631,1,0,0,0,8630,8626,1,0,0,0,8630,8631,1,0,0,0,8631,8632,1,0,0,0,8632,8633,3,1030,515,0,8633,1027,1,0,0,0,8634,8635,5,396,0,0,8635,1029,1,0,0,0,8636,8637,5,105,0,0,8637,8638,5,411,0,0,8638,8644,5,379,0,0,8639,8640,5,372,0,0,8640,8641,5,411,0,0,8641,8644,5,379,0,0,8642,8644,1,0,0,0,8643,8636,1,0,0,0,8643,8639,1,0,0,0,8643,8642,1,0,0,0,8644,1031,1,0,0,0,8645,8672,5,377,0,0,8646,8672,5,257,0,0,8647,8672,5,176,0,0,8648,8672,5,218,0,0,8649,8672,5,254,0,0,8650,8672,3,1034,517,0,8651,8652,5,377,0,0,8652,8653,5,94,0,0,8653,8672,5,257,0,0,8654,8655,5,176,0,0,8655,8659,5,94,0,0,8656,8660,5,218,0,0,8657,8660,5,254,0,0,8658,8660,3,1034,517,0,8659,8656,1,0,0,0,8659,8657,1,0,0,0,8659,8658,1,0,0,0,8660,8672,1,0,0,0,8661,8662,5,218,0,0,8662,8665,5,94,0,0,8663,8666,5,254,0,0,8664,8666,3,1034,517,0,8665,8663,1,0,0,0,8665,8664,1,0,0,0,8666,8672,1,0,0,0,8667,8668,5,254,0,0,8668,8669,5,94,0,0,8669,8672,3,1034,517,0,8670,8672,1,0,0,0,8671,8645,1,0,0,0,8671,8646,1,0,0,0,8671,8647,1,0,0,0,8671,8648,1,0,0,0,8671,8649,1,0,0,0,8671,8650,1,0,0,0,8671,8651,1,0,0,0,8671,8654,1,0,0,0,8671,8661,1,0,0,0,8671,8667,1,0,0,0,8671,8670,1,0,0,0,8672,1033,1,0,0,0,8673,8678,5,319,0,0,8674,8675,5,2,0,0,8675,8676,3,1250,625,0,8676,8677,5,3,0,0,8677,8679,1,0,0,0,8678,8674,1,0,0,0,8678,8679,1,0,0,0,8679,1035,1,0,0,0,8680,8681,5,197,0,0,8681,8684,3,1038,519,0,8682,8684,1,0,0,0,8683,8680,1,0,0,0,8683,8682,1,0,0,0,8684,1037,1,0,0,0,8685,8686,3,1040,520,0,8686,1039,1,0,0,0,8687,8689,3,1042,521,0,8688,8690,3,1150,575,0,8689,8688,1,0,0,0,8689,8690,1,0,0,0,8690,1041,1,0,0,0,8691,8696,3,1044,522,0,8692,8693,7,45,0,0,8693,8695,3,1044,522,0,8694,8692,1,0,0,0,8695,8698,1,0,0,0,8696,8694,1,0,0,0,8696,8697,1,0,0,0,8697,1043,1,0,0,0,8698,8696,1,0,0,0,8699,8704,3,1046,523,0,8700,8701,5,82,0,0,8701,8703,3,1046,523,0,8702,8700,1,0,0,0,8703,8706,1,0,0,0,8704,8702,1,0,0,0,8704,8705,1,0,0,0,8705,1045,1,0,0,0,8706,8704,1,0,0,0,8707,8712,3,1048,524,0,8708,8709,5,33,0,0,8709,8711,3,1048,524,0,8710,8708,1,0,0,0,8711,8714,1,0,0,0,8712,8710,1,0,0,0,8712,8713,1,0,0,0,8713,1047,1,0,0,0,8714,8712,1,0,0,0,8715,8727,3,1050,525,0,8716,8718,5,77,0,0,8717,8716,1,0,0,0,8717,8718,1,0,0,0,8718,8719,1,0,0,0,8719,8721,5,380,0,0,8720,8722,5,91,0,0,8721,8720,1,0,0,0,8721,8722,1,0,0,0,8722,8723,1,0,0,0,8723,8724,3,1050,525,0,8724,8725,5,33,0,0,8725,8726,3,1050,525,0,8726,8728,1,0,0,0,8727,8717,1,0,0,0,8727,8728,1,0,0,0,8728,1049,1,0,0,0,8729,8735,3,1052,526,0,8730,8732,5,77,0,0,8731,8730,1,0,0,0,8731,8732,1,0,0,0,8732,8733,1,0,0,0,8733,8734,5,68,0,0,8734,8736,3,1182,591,0,8735,8731,1,0,0,0,8735,8736,1,0,0,0,8736,1051,1,0,0,0,8737,8739,5,77,0,0,8738,8737,1,0,0,0,8738,8739,1,0,0,0,8739,8740,1,0,0,0,8740,8741,3,1054,527,0,8741,1053,1,0,0,0,8742,8744,3,1056,528,0,8743,8745,7,46,0,0,8744,8743,1,0,0,0,8744,8745,1,0,0,0,8745,1055,1,0,0,0,8746,8770,3,1058,529,0,8747,8749,5,116,0,0,8748,8750,5,77,0,0,8749,8748,1,0,0,0,8749,8750,1,0,0,0,8750,8768,1,0,0,0,8751,8769,5,78,0,0,8752,8769,5,96,0,0,8753,8769,5,60,0,0,8754,8769,5,358,0,0,8755,8756,5,56,0,0,8756,8757,5,64,0,0,8757,8769,3,1038,519,0,8758,8759,5,268,0,0,8759,8760,5,2,0,0,8760,8761,3,1162,581,0,8761,8762,5,3,0,0,8762,8769,1,0,0,0,8763,8769,5,188,0,0,8764,8766,3,1172,586,0,8765,8764,1,0,0,0,8765,8766,1,0,0,0,8766,8767,1,0,0,0,8767,8769,5,478,0,0,8768,8751,1,0,0,0,8768,8752,1,0,0,0,8768,8753,1,0,0,0,8768,8754,1,0,0,0,8768,8755,1,0,0,0,8768,8758,1,0,0,0,8768,8763,1,0,0,0,8768,8765,1,0,0,0,8769,8771,1,0,0,0,8770,8747,1,0,0,0,8770,8771,1,0,0,0,8771,1057,1,0,0,0,8772,8784,3,1060,530,0,8773,8774,7,47,0,0,8774,8785,3,1060,530,0,8775,8776,3,1154,577,0,8776,8782,3,1144,572,0,8777,8783,3,860,430,0,8778,8779,5,2,0,0,8779,8780,3,1038,519,0,8780,8781,5,3,0,0,8781,8783,1,0,0,0,8782,8777,1,0,0,0,8782,8778,1,0,0,0,8783,8785,1,0,0,0,8784,8773,1,0,0,0,8784,8775,1,0,0,0,8784,8785,1,0,0,0,8785,1059,1,0,0,0,8786,8799,3,1062,531,0,8787,8789,5,77,0,0,8788,8787,1,0,0,0,8788,8789,1,0,0,0,8789,8794,1,0,0,0,8790,8795,5,120,0,0,8791,8795,5,114,0,0,8792,8793,5,127,0,0,8793,8795,5,94,0,0,8794,8790,1,0,0,0,8794,8791,1,0,0,0,8794,8792,1,0,0,0,8795,8796,1,0,0,0,8796,8797,3,1062,531,0,8797,8798,3,1036,518,0,8798,8800,1,0,0,0,8799,8788,1,0,0,0,8799,8800,1,0,0,0,8800,1061,1,0,0,0,8801,8807,3,1064,532,0,8802,8803,3,1150,575,0,8803,8804,3,1064,532,0,8804,8806,1,0,0,0,8805,8802,1,0,0,0,8806,8809,1,0,0,0,8807,8805,1,0,0,0,8807,8808,1,0,0,0,8808,1063,1,0,0,0,8809,8807,1,0,0,0,8810,8812,3,1150,575,0,8811,8810,1,0,0,0,8811,8812,1,0,0,0,8812,8813,1,0,0,0,8813,8814,3,1066,533,0,8814,1065,1,0,0,0,8815,8820,3,1068,534,0,8816,8817,7,48,0,0,8817,8819,3,1068,534,0,8818,8816,1,0,0,0,8819,8822,1,0,0,0,8820,8818,1,0,0,0,8820,8821,1,0,0,0,8821,1067,1,0,0,0,8822,8820,1,0,0,0,8823,8828,3,1070,535,0,8824,8825,7,49,0,0,8825,8827,3,1070,535,0,8826,8824,1,0,0,0,8827,8830,1,0,0,0,8828,8826,1,0,0,0,8828,8829,1,0,0,0,8829,1069,1,0,0,0,8830,8828,1,0,0,0,8831,8834,3,1072,536,0,8832,8833,5,15,0,0,8833,8835,3,1038,519,0,8834,8832,1,0,0,0,8834,8835,1,0,0,0,8835,1071,1,0,0,0,8836,8838,7,48,0,0,8837,8836,1,0,0,0,8837,8838,1,0,0,0,8838,8839,1,0,0,0,8839,8840,3,1074,537,0,8840,1073,1,0,0,0,8841,8846,3,1076,538,0,8842,8843,5,142,0,0,8843,8844,5,411,0,0,8844,8845,5,379,0,0,8845,8847,3,1038,519,0,8846,8842,1,0,0,0,8846,8847,1,0,0,0,8847,1075,1,0,0,0,8848,8851,3,1078,539,0,8849,8850,5,43,0,0,8850,8852,3,470,235,0,8851,8849,1,0,0,0,8851,8852,1,0,0,0,8852,1077,1,0,0,0,8853,8858,3,1082,541,0,8854,8855,5,26,0,0,8855,8857,3,996,498,0,8856,8854,1,0,0,0,8857,8860,1,0,0,0,8858,8856,1,0,0,0,8858,8859,1,0,0,0,8859,1079,1,0,0,0,8860,8858,1,0,0,0,8861,8862,6,540,-1,0,8862,8869,3,1082,541,0,8863,8864,7,48,0,0,8864,8869,3,1080,540,9,8865,8866,3,1150,575,0,8866,8867,3,1080,540,3,8867,8869,1,0,0,0,8868,8861,1,0,0,0,8868,8863,1,0,0,0,8868,8865,1,0,0,0,8869,8909,1,0,0,0,8870,8871,10,8,0,0,8871,8872,5,15,0,0,8872,8908,3,1080,540,9,8873,8874,10,7,0,0,8874,8875,7,49,0,0,8875,8908,3,1080,540,8,8876,8877,10,6,0,0,8877,8878,7,48,0,0,8878,8908,3,1080,540,7,8879,8880,10,5,0,0,8880,8881,3,1150,575,0,8881,8882,3,1080,540,6,8882,8908,1,0,0,0,8883,8884,10,4,0,0,8884,8885,7,47,0,0,8885,8908,3,1080,540,5,8886,8887,10,10,0,0,8887,8888,5,26,0,0,8888,8908,3,996,498,0,8889,8890,10,2,0,0,8890,8908,3,1150,575,0,8891,8892,10,1,0,0,8892,8894,5,116,0,0,8893,8895,5,77,0,0,8894,8893,1,0,0,0,8894,8895,1,0,0,0,8895,8905,1,0,0,0,8896,8897,5,56,0,0,8897,8898,5,64,0,0,8898,8906,3,1080,540,0,8899,8900,5,268,0,0,8900,8901,5,2,0,0,8901,8902,3,1162,581,0,8902,8903,5,3,0,0,8903,8906,1,0,0,0,8904,8906,5,188,0,0,8905,8896,1,0,0,0,8905,8899,1,0,0,0,8905,8904,1,0,0,0,8906,8908,1,0,0,0,8907,8870,1,0,0,0,8907,8873,1,0,0,0,8907,8876,1,0,0,0,8907,8879,1,0,0,0,8907,8883,1,0,0,0,8907,8886,1,0,0,0,8907,8889,1,0,0,0,8907,8891,1,0,0,0,8908,8911,1,0,0,0,8909,8907,1,0,0,0,8909,8910,1,0,0,0,8910,1081,1,0,0,0,8911,8909,1,0,0,0,8912,8913,5,389,0,0,8913,8949,3,860,430,0,8914,8917,5,35,0,0,8915,8918,3,860,430,0,8916,8918,3,1164,582,0,8917,8915,1,0,0,0,8917,8916,1,0,0,0,8918,8949,1,0,0,0,8919,8920,5,28,0,0,8920,8949,3,1200,600,0,8921,8922,5,470,0,0,8922,8923,5,2,0,0,8923,8924,3,1156,578,0,8924,8925,5,3,0,0,8925,8949,1,0,0,0,8926,8927,5,98,0,0,8927,8949,3,860,430,0,8928,8949,3,1194,597,0,8929,8949,3,1242,621,0,8930,8949,3,1084,542,0,8931,8932,5,2,0,0,8932,8933,3,1038,519,0,8933,8934,5,3,0,0,8934,8935,3,1200,600,0,8935,8949,1,0,0,0,8936,8949,3,1184,592,0,8937,8949,3,1088,544,0,8938,8940,3,860,430,0,8939,8941,3,1198,599,0,8940,8939,1,0,0,0,8940,8941,1,0,0,0,8941,8949,1,0,0,0,8942,8949,3,1140,570,0,8943,8949,3,1142,571,0,8944,8945,3,1138,569,0,8945,8946,5,125,0,0,8946,8947,3,1138,569,0,8947,8949,1,0,0,0,8948,8912,1,0,0,0,8948,8914,1,0,0,0,8948,8919,1,0,0,0,8948,8921,1,0,0,0,8948,8926,1,0,0,0,8948,8928,1,0,0,0,8948,8929,1,0,0,0,8948,8930,1,0,0,0,8948,8931,1,0,0,0,8948,8936,1,0,0,0,8948,8937,1,0,0,0,8948,8938,1,0,0,0,8948,8942,1,0,0,0,8948,8943,1,0,0,0,8948,8944,1,0,0,0,8949,1083,1,0,0,0,8950,8951,5,661,0,0,8951,1085,1,0,0,0,8952,8953,3,1240,620,0,8953,8972,5,2,0,0,8954,8958,3,1158,579,0,8955,8956,5,6,0,0,8956,8957,5,101,0,0,8957,8959,3,1160,580,0,8958,8955,1,0,0,0,8958,8959,1,0,0,0,8959,8960,1,0,0,0,8960,8961,3,890,445,0,8961,8973,1,0,0,0,8962,8963,5,101,0,0,8963,8964,3,1160,580,0,8964,8965,3,890,445,0,8965,8973,1,0,0,0,8966,8967,7,50,0,0,8967,8968,3,1158,579,0,8968,8969,3,890,445,0,8969,8973,1,0,0,0,8970,8973,5,9,0,0,8971,8973,1,0,0,0,8972,8954,1,0,0,0,8972,8962,1,0,0,0,8972,8966,1,0,0,0,8972,8970,1,0,0,0,8972,8971,1,0,0,0,8973,8974,1,0,0,0,8974,8975,5,3,0,0,8975,1087,1,0,0,0,8976,8977,3,1086,543,0,8977,8978,3,1112,556,0,8978,8979,3,1114,557,0,8979,8980,3,1122,561,0,8980,8983,1,0,0,0,8981,8983,3,1092,546,0,8982,8976,1,0,0,0,8982,8981,1,0,0,0,8983,1089,1,0,0,0,8984,8987,3,1086,543,0,8985,8987,3,1092,546,0,8986,8984,1,0,0,0,8986,8985,1,0,0,0,8987,1091,1,0,0,0,8988,8989,5,108,0,0,8989,8990,5,62,0,0,8990,8991,5,2,0,0,8991,8992,3,1038,519,0,8992,8993,5,3,0,0,8993,9166,1,0,0,0,8994,9166,5,48,0,0,8995,9e3,5,50,0,0,8996,8997,5,2,0,0,8997,8998,3,1250,625,0,8998,8999,5,3,0,0,8999,9001,1,0,0,0,9e3,8996,1,0,0,0,9e3,9001,1,0,0,0,9001,9166,1,0,0,0,9002,9007,5,51,0,0,9003,9004,5,2,0,0,9004,9005,3,1250,625,0,9005,9006,5,3,0,0,9006,9008,1,0,0,0,9007,9003,1,0,0,0,9007,9008,1,0,0,0,9008,9166,1,0,0,0,9009,9014,5,75,0,0,9010,9011,5,2,0,0,9011,9012,3,1250,625,0,9012,9013,5,3,0,0,9013,9015,1,0,0,0,9014,9010,1,0,0,0,9014,9015,1,0,0,0,9015,9166,1,0,0,0,9016,9021,5,76,0,0,9017,9018,5,2,0,0,9018,9019,3,1250,625,0,9019,9020,5,3,0,0,9020,9022,1,0,0,0,9021,9017,1,0,0,0,9021,9022,1,0,0,0,9022,9166,1,0,0,0,9023,9166,5,49,0,0,9024,9166,5,52,0,0,9025,9166,5,89,0,0,9026,9166,5,99,0,0,9027,9166,5,47,0,0,9028,9166,5,111,0,0,9029,9030,5,41,0,0,9030,9031,5,2,0,0,9031,9032,3,1038,519,0,9032,9033,5,36,0,0,9033,9034,3,996,498,0,9034,9035,5,3,0,0,9035,9166,1,0,0,0,9036,9037,5,390,0,0,9037,9038,5,2,0,0,9038,9039,3,1168,584,0,9039,9040,5,3,0,0,9040,9166,1,0,0,0,9041,9042,5,489,0,0,9042,9043,5,2,0,0,9043,9046,3,1038,519,0,9044,9045,5,6,0,0,9045,9047,3,1172,586,0,9046,9044,1,0,0,0,9046,9047,1,0,0,0,9047,9048,1,0,0,0,9048,9049,5,3,0,0,9049,9166,1,0,0,0,9050,9051,5,403,0,0,9051,9052,5,2,0,0,9052,9053,3,1174,587,0,9053,9054,5,3,0,0,9054,9166,1,0,0,0,9055,9056,5,404,0,0,9056,9057,5,2,0,0,9057,9058,3,1176,588,0,9058,9059,5,3,0,0,9059,9166,1,0,0,0,9060,9061,5,410,0,0,9061,9062,5,2,0,0,9062,9063,3,1178,589,0,9063,9064,5,3,0,0,9064,9166,1,0,0,0,9065,9066,5,413,0,0,9066,9067,5,2,0,0,9067,9068,3,1038,519,0,9068,9069,5,36,0,0,9069,9070,3,996,498,0,9070,9071,5,3,0,0,9071,9166,1,0,0,0,9072,9073,5,414,0,0,9073,9075,5,2,0,0,9074,9076,7,51,0,0,9075,9074,1,0,0,0,9075,9076,1,0,0,0,9076,9077,1,0,0,0,9077,9078,3,1180,590,0,9078,9079,5,3,0,0,9079,9166,1,0,0,0,9080,9081,5,401,0,0,9081,9082,5,2,0,0,9082,9083,3,1038,519,0,9083,9084,5,6,0,0,9084,9085,3,1038,519,0,9085,9086,5,3,0,0,9086,9166,1,0,0,0,9087,9088,5,386,0,0,9088,9089,5,2,0,0,9089,9090,3,1156,578,0,9090,9091,5,3,0,0,9091,9166,1,0,0,0,9092,9093,5,392,0,0,9093,9094,5,2,0,0,9094,9095,3,1156,578,0,9095,9096,5,3,0,0,9096,9166,1,0,0,0,9097,9098,5,397,0,0,9098,9099,5,2,0,0,9099,9100,3,1156,578,0,9100,9101,5,3,0,0,9101,9166,1,0,0,0,9102,9103,5,425,0,0,9103,9104,5,2,0,0,9104,9105,3,1156,578,0,9105,9106,5,3,0,0,9106,9166,1,0,0,0,9107,9108,5,426,0,0,9108,9109,5,2,0,0,9109,9110,5,259,0,0,9110,9116,3,1272,636,0,9111,9114,5,6,0,0,9112,9115,3,1098,549,0,9113,9115,3,1156,578,0,9114,9112,1,0,0,0,9114,9113,1,0,0,0,9115,9117,1,0,0,0,9116,9111,1,0,0,0,9116,9117,1,0,0,0,9117,9118,1,0,0,0,9118,9119,5,3,0,0,9119,9166,1,0,0,0,9120,9121,5,427,0,0,9121,9122,5,2,0,0,9122,9123,3,1082,541,0,9123,9124,3,1108,554,0,9124,9125,5,3,0,0,9125,9166,1,0,0,0,9126,9127,5,428,0,0,9127,9128,5,2,0,0,9128,9129,3,1100,550,0,9129,9130,5,3,0,0,9130,9166,1,0,0,0,9131,9132,5,429,0,0,9132,9133,5,2,0,0,9133,9134,3,1104,552,0,9134,9135,3,1038,519,0,9135,9136,3,1106,553,0,9136,9137,5,3,0,0,9137,9166,1,0,0,0,9138,9139,5,430,0,0,9139,9140,5,2,0,0,9140,9141,5,259,0,0,9141,9144,3,1272,636,0,9142,9143,5,6,0,0,9143,9145,3,1038,519,0,9144,9142,1,0,0,0,9144,9145,1,0,0,0,9145,9146,1,0,0,0,9146,9147,5,3,0,0,9147,9166,1,0,0,0,9148,9149,5,431,0,0,9149,9150,5,2,0,0,9150,9151,5,376,0,0,9151,9152,3,1038,519,0,9152,9153,5,6,0,0,9153,9154,3,1094,547,0,9154,9155,3,1096,548,0,9155,9156,5,3,0,0,9156,9166,1,0,0,0,9157,9158,5,432,0,0,9158,9159,5,2,0,0,9159,9160,3,1104,552,0,9160,9161,3,1038,519,0,9161,9162,5,36,0,0,9162,9163,3,998,499,0,9163,9164,5,3,0,0,9164,9166,1,0,0,0,9165,8988,1,0,0,0,9165,8994,1,0,0,0,9165,8995,1,0,0,0,9165,9002,1,0,0,0,9165,9009,1,0,0,0,9165,9016,1,0,0,0,9165,9023,1,0,0,0,9165,9024,1,0,0,0,9165,9025,1,0,0,0,9165,9026,1,0,0,0,9165,9027,1,0,0,0,9165,9028,1,0,0,0,9165,9029,1,0,0,0,9165,9036,1,0,0,0,9165,9041,1,0,0,0,9165,9050,1,0,0,0,9165,9055,1,0,0,0,9165,9060,1,0,0,0,9165,9065,1,0,0,0,9165,9072,1,0,0,0,9165,9080,1,0,0,0,9165,9087,1,0,0,0,9165,9092,1,0,0,0,9165,9097,1,0,0,0,9165,9102,1,0,0,0,9165,9107,1,0,0,0,9165,9120,1,0,0,0,9165,9126,1,0,0,0,9165,9131,1,0,0,0,9165,9138,1,0,0,0,9165,9148,1,0,0,0,9165,9157,1,0,0,0,9166,1093,1,0,0,0,9167,9168,5,368,0,0,9168,9173,3,1038,519,0,9169,9170,5,368,0,0,9170,9171,5,262,0,0,9171,9173,5,450,0,0,9172,9167,1,0,0,0,9172,9169,1,0,0,0,9173,1095,1,0,0,0,9174,9175,5,6,0,0,9175,9176,5,332,0,0,9176,9186,5,378,0,0,9177,9178,5,6,0,0,9178,9179,5,332,0,0,9179,9186,5,262,0,0,9180,9181,5,6,0,0,9181,9182,5,332,0,0,9182,9183,5,262,0,0,9183,9186,5,450,0,0,9184,9186,1,0,0,0,9185,9174,1,0,0,0,9185,9177,1,0,0,0,9185,9180,1,0,0,0,9185,9184,1,0,0,0,9186,1097,1,0,0,0,9187,9188,5,417,0,0,9188,9189,5,2,0,0,9189,9190,3,1100,550,0,9190,9191,5,3,0,0,9191,1099,1,0,0,0,9192,9197,3,1102,551,0,9193,9194,5,6,0,0,9194,9196,3,1102,551,0,9195,9193,1,0,0,0,9196,9199,1,0,0,0,9197,9195,1,0,0,0,9197,9198,1,0,0,0,9198,1101,1,0,0,0,9199,9197,1,0,0,0,9200,9203,3,1038,519,0,9201,9202,5,36,0,0,9202,9204,3,1272,636,0,9203,9201,1,0,0,0,9203,9204,1,0,0,0,9204,1103,1,0,0,0,9205,9206,7,52,0,0,9206,1105,1,0,0,0,9207,9208,5,285,0,0,9208,9213,5,371,0,0,9209,9210,5,340,0,0,9210,9213,5,371,0,0,9211,9213,1,0,0,0,9212,9207,1,0,0,0,9212,9209,1,0,0,0,9212,9211,1,0,0,0,9213,1107,1,0,0,0,9214,9215,5,279,0,0,9215,9230,3,1082,541,0,9216,9217,5,279,0,0,9217,9218,3,1082,541,0,9218,9219,3,1110,555,0,9219,9230,1,0,0,0,9220,9221,5,279,0,0,9221,9222,3,1110,555,0,9222,9223,3,1082,541,0,9223,9230,1,0,0,0,9224,9225,5,279,0,0,9225,9226,3,1110,555,0,9226,9227,3,1082,541,0,9227,9228,3,1110,555,0,9228,9230,1,0,0,0,9229,9214,1,0,0,0,9229,9216,1,0,0,0,9229,9220,1,0,0,0,9229,9224,1,0,0,0,9230,1109,1,0,0,0,9231,9232,5,147,0,0,9232,9233,7,53,0,0,9233,1111,1,0,0,0,9234,9235,5,479,0,0,9235,9236,5,66,0,0,9236,9237,5,2,0,0,9237,9238,3,892,446,0,9238,9239,5,3,0,0,9239,9242,1,0,0,0,9240,9242,1,0,0,0,9241,9234,1,0,0,0,9241,9240,1,0,0,0,9242,1113,1,0,0,0,9243,9244,5,480,0,0,9244,9245,5,2,0,0,9245,9246,5,103,0,0,9246,9247,3,1038,519,0,9247,9248,5,3,0,0,9248,9251,1,0,0,0,9249,9251,1,0,0,0,9250,9243,1,0,0,0,9250,9249,1,0,0,0,9251,1115,1,0,0,0,9252,9253,5,104,0,0,9253,9256,3,1118,559,0,9254,9256,1,0,0,0,9255,9252,1,0,0,0,9255,9254,1,0,0,0,9256,1117,1,0,0,0,9257,9262,3,1120,560,0,9258,9259,5,6,0,0,9259,9261,3,1120,560,0,9260,9258,1,0,0,0,9261,9264,1,0,0,0,9262,9260,1,0,0,0,9262,9263,1,0,0,0,9263,1119,1,0,0,0,9264,9262,1,0,0,0,9265,9266,3,1264,632,0,9266,9267,5,36,0,0,9267,9268,3,1124,562,0,9268,1121,1,0,0,0,9269,9272,5,124,0,0,9270,9273,3,1124,562,0,9271,9273,3,1264,632,0,9272,9270,1,0,0,0,9272,9271,1,0,0,0,9273,9276,1,0,0,0,9274,9276,1,0,0,0,9275,9269,1,0,0,0,9275,9274,1,0,0,0,9276,1123,1,0,0,0,9277,9278,5,2,0,0,9278,9279,3,1126,563,0,9279,9280,3,1128,564,0,9280,9281,3,890,445,0,9281,9282,3,1130,565,0,9282,9283,5,3,0,0,9283,1125,1,0,0,0,9284,9287,3,1264,632,0,9285,9287,1,0,0,0,9286,9284,1,0,0,0,9286,9285,1,0,0,0,9287,1127,1,0,0,0,9288,9289,5,278,0,0,9289,9290,5,147,0,0,9290,9293,3,1156,578,0,9291,9293,1,0,0,0,9292,9288,1,0,0,0,9292,9291,1,0,0,0,9293,1129,1,0,0,0,9294,9295,5,292,0,0,9295,9296,3,1132,566,0,9296,9297,3,1136,568,0,9297,9308,1,0,0,0,9298,9299,5,313,0,0,9299,9300,3,1132,566,0,9300,9301,3,1136,568,0,9301,9308,1,0,0,0,9302,9303,5,481,0,0,9303,9304,3,1132,566,0,9304,9305,3,1136,568,0,9305,9308,1,0,0,0,9306,9308,1,0,0,0,9307,9294,1,0,0,0,9307,9298,1,0,0,0,9307,9302,1,0,0,0,9307,9306,1,0,0,0,9308,1131,1,0,0,0,9309,9316,3,1134,567,0,9310,9311,5,380,0,0,9311,9312,3,1134,567,0,9312,9313,5,33,0,0,9313,9314,3,1134,567,0,9314,9316,1,0,0,0,9315,9309,1,0,0,0,9315,9310,1,0,0,0,9316,1133,1,0,0,0,9317,9318,5,355,0,0,9318,9325,7,54,0,0,9319,9320,5,434,0,0,9320,9325,5,407,0,0,9321,9322,3,1038,519,0,9322,9323,7,54,0,0,9323,9325,1,0,0,0,9324,9317,1,0,0,0,9324,9319,1,0,0,0,9324,9321,1,0,0,0,9325,1135,1,0,0,0,9326,9333,5,199,0,0,9327,9328,5,434,0,0,9328,9334,5,407,0,0,9329,9334,5,66,0,0,9330,9334,5,467,0,0,9331,9332,5,262,0,0,9332,9334,5,482,0,0,9333,9327,1,0,0,0,9333,9329,1,0,0,0,9333,9330,1,0,0,0,9333,9331,1,0,0,0,9334,9337,1,0,0,0,9335,9337,1,0,0,0,9336,9326,1,0,0,0,9336,9335,1,0,0,0,9337,1137,1,0,0,0,9338,9339,5,407,0,0,9339,9341,5,2,0,0,9340,9342,3,1156,578,0,9341,9340,1,0,0,0,9341,9342,1,0,0,0,9342,9343,1,0,0,0,9343,9351,5,3,0,0,9344,9345,5,2,0,0,9345,9346,3,1156,578,0,9346,9347,5,6,0,0,9347,9348,3,1038,519,0,9348,9349,5,3,0,0,9349,9351,1,0,0,0,9350,9338,1,0,0,0,9350,9344,1,0,0,0,9351,1139,1,0,0,0,9352,9353,5,407,0,0,9353,9355,5,2,0,0,9354,9356,3,1156,578,0,9355,9354,1,0,0,0,9355,9356,1,0,0,0,9356,9357,1,0,0,0,9357,9358,5,3,0,0,9358,1141,1,0,0,0,9359,9360,5,2,0,0,9360,9361,3,1156,578,0,9361,9362,5,6,0,0,9362,9363,3,1038,519,0,9363,9364,5,3,0,0,9364,1143,1,0,0,0,9365,9366,7,55,0,0,9366,1145,1,0,0,0,9367,9370,5,29,0,0,9368,9370,3,1148,574,0,9369,9367,1,0,0,0,9369,9368,1,0,0,0,9370,1147,1,0,0,0,9371,9372,7,56,0,0,9372,1149,1,0,0,0,9373,9380,5,29,0,0,9374,9375,5,271,0,0,9375,9376,5,2,0,0,9376,9377,3,610,305,0,9377,9378,5,3,0,0,9378,9380,1,0,0,0,9379,9373,1,0,0,0,9379,9374,1,0,0,0,9380,1151,1,0,0,0,9381,9388,3,1146,573,0,9382,9383,5,271,0,0,9383,9384,5,2,0,0,9384,9385,3,610,305,0,9385,9386,5,3,0,0,9386,9388,1,0,0,0,9387,9381,1,0,0,0,9387,9382,1,0,0,0,9388,1153,1,0,0,0,9389,9402,3,1146,573,0,9390,9391,5,271,0,0,9391,9392,5,2,0,0,9392,9393,3,610,305,0,9393,9394,5,3,0,0,9394,9402,1,0,0,0,9395,9402,5,120,0,0,9396,9397,5,77,0,0,9397,9402,5,120,0,0,9398,9402,5,114,0,0,9399,9400,5,77,0,0,9400,9402,5,114,0,0,9401,9389,1,0,0,0,9401,9390,1,0,0,0,9401,9395,1,0,0,0,9401,9396,1,0,0,0,9401,9398,1,0,0,0,9401,9399,1,0,0,0,9402,1155,1,0,0,0,9403,9408,3,1038,519,0,9404,9405,5,6,0,0,9405,9407,3,1038,519,0,9406,9404,1,0,0,0,9407,9410,1,0,0,0,9408,9406,1,0,0,0,9408,9409,1,0,0,0,9409,1157,1,0,0,0,9410,9408,1,0,0,0,9411,9416,3,1160,580,0,9412,9413,5,6,0,0,9413,9415,3,1160,580,0,9414,9412,1,0,0,0,9415,9418,1,0,0,0,9416,9414,1,0,0,0,9416,9417,1,0,0,0,9417,1159,1,0,0,0,9418,9416,1,0,0,0,9419,9425,3,1038,519,0,9420,9421,3,570,285,0,9421,9422,7,57,0,0,9422,9423,3,1038,519,0,9423,9425,1,0,0,0,9424,9419,1,0,0,0,9424,9420,1,0,0,0,9425,1161,1,0,0,0,9426,9431,3,996,498,0,9427,9428,5,6,0,0,9428,9430,3,996,498,0,9429,9427,1,0,0,0,9430,9433,1,0,0,0,9431,9429,1,0,0,0,9431,9432,1,0,0,0,9432,1163,1,0,0,0,9433,9431,1,0,0,0,9434,9437,5,4,0,0,9435,9438,3,1156,578,0,9436,9438,3,1166,583,0,9437,9435,1,0,0,0,9437,9436,1,0,0,0,9437,9438,1,0,0,0,9438,9439,1,0,0,0,9439,9440,5,5,0,0,9440,1165,1,0,0,0,9441,9446,3,1164,582,0,9442,9443,5,6,0,0,9443,9445,3,1164,582,0,9444,9442,1,0,0,0,9445,9448,1,0,0,0,9446,9444,1,0,0,0,9446,9447,1,0,0,0,9447,1167,1,0,0,0,9448,9446,1,0,0,0,9449,9450,3,1170,585,0,9450,9451,5,64,0,0,9451,9452,3,1038,519,0,9452,9455,1,0,0,0,9453,9455,1,0,0,0,9454,9449,1,0,0,0,9454,9453,1,0,0,0,9455,1169,1,0,0,0,9456,9465,3,1274,637,0,9457,9465,5,377,0,0,9458,9465,5,257,0,0,9459,9465,5,176,0,0,9460,9465,5,218,0,0,9461,9465,5,254,0,0,9462,9465,5,319,0,0,9463,9465,3,1252,626,0,9464,9456,1,0,0,0,9464,9457,1,0,0,0,9464,9458,1,0,0,0,9464,9459,1,0,0,0,9464,9460,1,0,0,0,9464,9461,1,0,0,0,9464,9462,1,0,0,0,9464,9463,1,0,0,0,9465,1171,1,0,0,0,9466,9467,7,58,0,0,9467,1173,1,0,0,0,9468,9469,3,1038,519,0,9469,9470,5,84,0,0,9470,9471,3,1038,519,0,9471,9472,5,64,0,0,9472,9475,3,1038,519,0,9473,9474,5,62,0,0,9474,9476,3,1038,519,0,9475,9473,1,0,0,0,9475,9476,1,0,0,0,9476,1175,1,0,0,0,9477,9478,3,1080,540,0,9478,9479,5,68,0,0,9479,9480,3,1080,540,0,9480,9483,1,0,0,0,9481,9483,1,0,0,0,9482,9477,1,0,0,0,9482,9481,1,0,0,0,9483,1177,1,0,0,0,9484,9485,3,1038,519,0,9485,9486,5,64,0,0,9486,9487,3,1038,519,0,9487,9488,5,62,0,0,9488,9489,3,1038,519,0,9489,9512,1,0,0,0,9490,9491,3,1038,519,0,9491,9492,5,62,0,0,9492,9493,3,1038,519,0,9493,9494,5,64,0,0,9494,9495,3,1038,519,0,9495,9512,1,0,0,0,9496,9497,3,1038,519,0,9497,9498,5,64,0,0,9498,9499,3,1038,519,0,9499,9512,1,0,0,0,9500,9501,3,1038,519,0,9501,9502,5,62,0,0,9502,9503,3,1038,519,0,9503,9512,1,0,0,0,9504,9505,3,1038,519,0,9505,9506,5,127,0,0,9506,9507,3,1038,519,0,9507,9508,5,197,0,0,9508,9509,3,1038,519,0,9509,9512,1,0,0,0,9510,9512,3,1156,578,0,9511,9484,1,0,0,0,9511,9490,1,0,0,0,9511,9496,1,0,0,0,9511,9500,1,0,0,0,9511,9504,1,0,0,0,9511,9510,1,0,0,0,9512,1179,1,0,0,0,9513,9514,3,1038,519,0,9514,9515,5,64,0,0,9515,9516,3,1156,578,0,9516,9521,1,0,0,0,9517,9518,5,64,0,0,9518,9521,3,1156,578,0,9519,9521,3,1156,578,0,9520,9513,1,0,0,0,9520,9517,1,0,0,0,9520,9519,1,0,0,0,9521,1181,1,0,0,0,9522,9528,3,860,430,0,9523,9524,5,2,0,0,9524,9525,3,1156,578,0,9525,9526,5,3,0,0,9526,9528,1,0,0,0,9527,9522,1,0,0,0,9527,9523,1,0,0,0,9528,1183,1,0,0,0,9529,9530,5,40,0,0,9530,9531,3,1192,596,0,9531,9532,3,1186,593,0,9532,9533,3,1190,595,0,9533,9534,5,454,0,0,9534,1185,1,0,0,0,9535,9537,3,1188,594,0,9536,9535,1,0,0,0,9537,9538,1,0,0,0,9538,9536,1,0,0,0,9538,9539,1,0,0,0,9539,1187,1,0,0,0,9540,9541,5,102,0,0,9541,9542,3,1038,519,0,9542,9543,5,93,0,0,9543,9544,3,1038,519,0,9544,1189,1,0,0,0,9545,9546,5,58,0,0,9546,9549,3,1038,519,0,9547,9549,1,0,0,0,9548,9545,1,0,0,0,9548,9547,1,0,0,0,9549,1191,1,0,0,0,9550,9553,3,1038,519,0,9551,9553,1,0,0,0,9552,9550,1,0,0,0,9552,9551,1,0,0,0,9553,1193,1,0,0,0,9554,9556,3,1264,632,0,9555,9557,3,1198,599,0,9556,9555,1,0,0,0,9556,9557,1,0,0,0,9557,1195,1,0,0,0,9558,9561,5,11,0,0,9559,9562,3,1236,618,0,9560,9562,5,9,0,0,9561,9559,1,0,0,0,9561,9560,1,0,0,0,9562,9576,1,0,0,0,9563,9572,5,4,0,0,9564,9573,3,1038,519,0,9565,9567,3,1038,519,0,9566,9565,1,0,0,0,9566,9567,1,0,0,0,9567,9568,1,0,0,0,9568,9570,5,8,0,0,9569,9571,3,1038,519,0,9570,9569,1,0,0,0,9570,9571,1,0,0,0,9571,9573,1,0,0,0,9572,9564,1,0,0,0,9572,9566,1,0,0,0,9573,9574,1,0,0,0,9574,9576,5,5,0,0,9575,9558,1,0,0,0,9575,9563,1,0,0,0,9576,1197,1,0,0,0,9577,9579,3,1196,598,0,9578,9577,1,0,0,0,9579,9580,1,0,0,0,9580,9578,1,0,0,0,9580,9581,1,0,0,0,9581,1199,1,0,0,0,9582,9584,3,1196,598,0,9583,9582,1,0,0,0,9584,9587,1,0,0,0,9585,9583,1,0,0,0,9585,9586,1,0,0,0,9586,1201,1,0,0,0,9587,9585,1,0,0,0,9588,9591,3,1204,602,0,9589,9591,1,0,0,0,9590,9588,1,0,0,0,9590,9589,1,0,0,0,9591,1203,1,0,0,0,9592,9597,3,1206,603,0,9593,9594,5,6,0,0,9594,9596,3,1206,603,0,9595,9593,1,0,0,0,9596,9599,1,0,0,0,9597,9595,1,0,0,0,9597,9598,1,0,0,0,9598,1205,1,0,0,0,9599,9597,1,0,0,0,9600,9609,5,9,0,0,9601,9606,3,1038,519,0,9602,9603,5,36,0,0,9603,9607,3,1272,636,0,9604,9607,3,1274,637,0,9605,9607,1,0,0,0,9606,9602,1,0,0,0,9606,9604,1,0,0,0,9606,9605,1,0,0,0,9607,9609,1,0,0,0,9608,9600,1,0,0,0,9608,9601,1,0,0,0,9609,1207,1,0,0,0,9610,9615,3,1230,615,0,9611,9612,5,6,0,0,9612,9614,3,1230,615,0,9613,9611,1,0,0,0,9614,9617,1,0,0,0,9615,9613,1,0,0,0,9615,9616,1,0,0,0,9616,1209,1,0,0,0,9617,9615,1,0,0,0,9618,9619,3,1234,617,0,9619,1211,1,0,0,0,9620,9625,3,1210,605,0,9621,9622,5,6,0,0,9622,9624,3,1210,605,0,9623,9621,1,0,0,0,9624,9627,1,0,0,0,9625,9623,1,0,0,0,9625,9626,1,0,0,0,9626,1213,1,0,0,0,9627,9625,1,0,0,0,9628,9629,3,1234,617,0,9629,1215,1,0,0,0,9630,9635,3,1214,607,0,9631,9632,5,6,0,0,9632,9634,3,1214,607,0,9633,9631,1,0,0,0,9634,9637,1,0,0,0,9635,9633,1,0,0,0,9635,9636,1,0,0,0,9636,1217,1,0,0,0,9637,9635,1,0,0,0,9638,9639,3,1230,615,0,9639,1219,1,0,0,0,9640,9645,3,1218,609,0,9641,9642,5,6,0,0,9642,9644,3,1218,609,0,9643,9641,1,0,0,0,9644,9647,1,0,0,0,9645,9643,1,0,0,0,9645,9646,1,0,0,0,9646,1221,1,0,0,0,9647,9645,1,0,0,0,9648,9649,3,1234,617,0,9649,1223,1,0,0,0,9650,9651,3,1234,617,0,9651,1225,1,0,0,0,9652,9653,3,1230,615,0,9653,1227,1,0,0,0,9654,9659,3,1226,613,0,9655,9656,5,6,0,0,9656,9658,3,1226,613,0,9657,9655,1,0,0,0,9658,9661,1,0,0,0,9659,9657,1,0,0,0,9659,9660,1,0,0,0,9660,1229,1,0,0,0,9661,9659,1,0,0,0,9662,9664,3,1264,632,0,9663,9665,3,1198,599,0,9664,9663,1,0,0,0,9664,9665,1,0,0,0,9665,1231,1,0,0,0,9666,9671,3,1234,617,0,9667,9668,5,6,0,0,9668,9670,3,1234,617,0,9669,9667,1,0,0,0,9670,9673,1,0,0,0,9671,9669,1,0,0,0,9671,9672,1,0,0,0,9672,1233,1,0,0,0,9673,9671,1,0,0,0,9674,9675,3,1264,632,0,9675,1235,1,0,0,0,9676,9677,3,1272,636,0,9677,1237,1,0,0,0,9678,9679,3,1252,626,0,9679,1239,1,0,0,0,9680,9688,3,1286,643,0,9681,9688,3,1268,634,0,9682,9683,3,1264,632,0,9683,9684,3,1198,599,0,9684,9688,1,0,0,0,9685,9688,5,119,0,0,9686,9688,5,126,0,0,9687,9680,1,0,0,0,9687,9681,1,0,0,0,9687,9682,1,0,0,0,9687,9685,1,0,0,0,9687,9686,1,0,0,0,9688,1241,1,0,0,0,9689,9722,3,1250,625,0,9690,9722,3,1248,624,0,9691,9722,3,1252,626,0,9692,9722,3,1246,623,0,9693,9722,3,1244,622,0,9694,9702,3,1240,620,0,9695,9703,3,1252,626,0,9696,9697,5,2,0,0,9697,9698,3,1158,579,0,9698,9699,3,890,445,0,9699,9700,5,3,0,0,9700,9701,3,1252,626,0,9701,9703,1,0,0,0,9702,9695,1,0,0,0,9702,9696,1,0,0,0,9703,9722,1,0,0,0,9704,9705,3,1e3,500,0,9705,9706,3,1252,626,0,9706,9722,1,0,0,0,9707,9716,3,1028,514,0,9708,9709,3,1252,626,0,9709,9710,3,1032,516,0,9710,9717,1,0,0,0,9711,9712,5,2,0,0,9712,9713,3,1250,625,0,9713,9714,5,3,0,0,9714,9715,3,1252,626,0,9715,9717,1,0,0,0,9716,9708,1,0,0,0,9716,9711,1,0,0,0,9717,9722,1,0,0,0,9718,9722,5,96,0,0,9719,9722,5,60,0,0,9720,9722,5,78,0,0,9721,9689,1,0,0,0,9721,9690,1,0,0,0,9721,9691,1,0,0,0,9721,9692,1,0,0,0,9721,9693,1,0,0,0,9721,9694,1,0,0,0,9721,9704,1,0,0,0,9721,9707,1,0,0,0,9721,9718,1,0,0,0,9721,9719,1,0,0,0,9721,9720,1,0,0,0,9722,1243,1,0,0,0,9723,9724,5,654,0,0,9724,1245,1,0,0,0,9725,9726,5,650,0,0,9726,1247,1,0,0,0,9727,9728,5,660,0,0,9728,1249,1,0,0,0,9729,9730,5,658,0,0,9730,1251,1,0,0,0,9731,9732,3,1254,627,0,9732,9733,3,1256,628,0,9733,1253,1,0,0,0,9734,9746,5,645,0,0,9735,9746,5,647,0,0,9736,9740,5,649,0,0,9737,9739,5,677,0,0,9738,9737,1,0,0,0,9739,9742,1,0,0,0,9740,9738,1,0,0,0,9740,9741,1,0,0,0,9741,9743,1,0,0,0,9742,9740,1,0,0,0,9743,9746,5,678,0,0,9744,9746,5,671,0,0,9745,9734,1,0,0,0,9745,9735,1,0,0,0,9745,9736,1,0,0,0,9745,9744,1,0,0,0,9746,1255,1,0,0,0,9747,9748,5,487,0,0,9748,9751,3,1254,627,0,9749,9751,1,0,0,0,9750,9747,1,0,0,0,9750,9749,1,0,0,0,9751,1257,1,0,0,0,9752,9758,3,1250,625,0,9753,9754,5,12,0,0,9754,9758,3,1250,625,0,9755,9756,5,13,0,0,9756,9758,3,1250,625,0,9757,9752,1,0,0,0,9757,9753,1,0,0,0,9757,9755,1,0,0,0,9758,1259,1,0,0,0,9759,9763,3,1270,635,0,9760,9763,5,52,0,0,9761,9763,5,89,0,0,9762,9759,1,0,0,0,9762,9760,1,0,0,0,9762,9761,1,0,0,0,9763,1261,1,0,0,0,9764,9769,3,1260,630,0,9765,9766,5,6,0,0,9766,9768,3,1260,630,0,9767,9765,1,0,0,0,9768,9771,1,0,0,0,9769,9767,1,0,0,0,9769,9770,1,0,0,0,9770,1263,1,0,0,0,9771,9769,1,0,0,0,9772,9779,3,1274,637,0,9773,9779,3,1278,639,0,9774,9779,3,1280,640,0,9775,9779,3,1490,745,0,9776,9779,5,119,0,0,9777,9779,5,126,0,0,9778,9772,1,0,0,0,9778,9773,1,0,0,0,9778,9774,1,0,0,0,9778,9775,1,0,0,0,9778,9776,1,0,0,0,9778,9777,1,0,0,0,9779,1265,1,0,0,0,9780,9785,3,1274,637,0,9781,9785,3,1278,639,0,9782,9785,3,1280,640,0,9783,9785,3,1490,745,0,9784,9780,1,0,0,0,9784,9781,1,0,0,0,9784,9782,1,0,0,0,9784,9783,1,0,0,0,9785,1267,1,0,0,0,9786,9791,3,1274,637,0,9787,9791,3,1278,639,0,9788,9791,3,1490,745,0,9789,9791,3,1282,641,0,9790,9786,1,0,0,0,9790,9787,1,0,0,0,9790,9788,1,0,0,0,9790,9789,1,0,0,0,9791,1269,1,0,0,0,9792,9797,3,1274,637,0,9793,9797,3,1278,639,0,9794,9797,3,1280,640,0,9795,9797,3,1282,641,0,9796,9792,1,0,0,0,9796,9793,1,0,0,0,9796,9794,1,0,0,0,9796,9795,1,0,0,0,9797,1271,1,0,0,0,9798,9805,3,1274,637,0,9799,9805,3,1490,745,0,9800,9805,3,1278,639,0,9801,9805,3,1280,640,0,9802,9805,3,1282,641,0,9803,9805,3,1284,642,0,9804,9798,1,0,0,0,9804,9799,1,0,0,0,9804,9800,1,0,0,0,9804,9801,1,0,0,0,9804,9802,1,0,0,0,9804,9803,1,0,0,0,9805,1273,1,0,0,0,9806,9807,5,636,0,0,9807,9814,3,1256,628,0,9808,9814,5,637,0,0,9809,9814,5,641,0,0,9810,9814,3,1084,542,0,9811,9814,3,1276,638,0,9812,9814,3,1490,745,0,9813,9806,1,0,0,0,9813,9808,1,0,0,0,9813,9809,1,0,0,0,9813,9810,1,0,0,0,9813,9811,1,0,0,0,9813,9812,1,0,0,0,9814,1275,1,0,0,0,9815,9816,5,662,0,0,9816,1277,1,0,0,0,9817,9818,7,59,0,0,9818,1279,1,0,0,0,9819,9872,5,380,0,0,9820,9872,5,381,0,0,9821,9872,3,1010,505,0,9822,9872,5,383,0,0,9823,9872,5,384,0,0,9824,9872,3,1018,509,0,9825,9872,5,386,0,0,9826,9872,5,387,0,0,9827,9872,5,388,0,0,9828,9872,5,389,0,0,9829,9872,5,390,0,0,9830,9872,5,391,0,0,9831,9872,5,392,0,0,9832,9872,5,470,0,0,9833,9872,5,393,0,0,9834,9872,5,394,0,0,9835,9872,5,395,0,0,9836,9872,5,396,0,0,9837,9872,5,397,0,0,9838,9872,5,398,0,0,9839,9872,5,399,0,0,9840,9872,5,400,0,0,9841,9872,5,489,0,0,9842,9872,5,401,0,0,9843,9872,3,1006,503,0,9844,9872,5,453,0,0,9845,9872,5,403,0,0,9846,9872,5,404,0,0,9847,9872,5,405,0,0,9848,9872,5,406,0,0,9849,9872,5,407,0,0,9850,9872,5,408,0,0,9851,9872,5,409,0,0,9852,9872,5,410,0,0,9853,9872,5,411,0,0,9854,9872,5,412,0,0,9855,9872,5,413,0,0,9856,9872,5,414,0,0,9857,9872,5,415,0,0,9858,9872,5,416,0,0,9859,9872,5,417,0,0,9860,9872,5,425,0,0,9861,9872,5,426,0,0,9862,9872,5,427,0,0,9863,9872,5,428,0,0,9864,9872,5,476,0,0,9865,9872,5,429,0,0,9866,9872,5,430,0,0,9867,9872,5,431,0,0,9868,9872,5,432,0,0,9869,9872,5,474,0,0,9870,9872,3,1286,643,0,9871,9819,1,0,0,0,9871,9820,1,0,0,0,9871,9821,1,0,0,0,9871,9822,1,0,0,0,9871,9823,1,0,0,0,9871,9824,1,0,0,0,9871,9825,1,0,0,0,9871,9826,1,0,0,0,9871,9827,1,0,0,0,9871,9828,1,0,0,0,9871,9829,1,0,0,0,9871,9830,1,0,0,0,9871,9831,1,0,0,0,9871,9832,1,0,0,0,9871,9833,1,0,0,0,9871,9834,1,0,0,0,9871,9835,1,0,0,0,9871,9836,1,0,0,0,9871,9837,1,0,0,0,9871,9838,1,0,0,0,9871,9839,1,0,0,0,9871,9840,1,0,0,0,9871,9841,1,0,0,0,9871,9842,1,0,0,0,9871,9843,1,0,0,0,9871,9844,1,0,0,0,9871,9845,1,0,0,0,9871,9846,1,0,0,0,9871,9847,1,0,0,0,9871,9848,1,0,0,0,9871,9849,1,0,0,0,9871,9850,1,0,0,0,9871,9851,1,0,0,0,9871,9852,1,0,0,0,9871,9853,1,0,0,0,9871,9854,1,0,0,0,9871,9855,1,0,0,0,9871,9856,1,0,0,0,9871,9857,1,0,0,0,9871,9858,1,0,0,0,9871,9859,1,0,0,0,9871,9860,1,0,0,0,9871,9861,1,0,0,0,9871,9862,1,0,0,0,9871,9863,1,0,0,0,9871,9864,1,0,0,0,9871,9865,1,0,0,0,9871,9866,1,0,0,0,9871,9867,1,0,0,0,9871,9868,1,0,0,0,9871,9869,1,0,0,0,9871,9870,1,0,0,0,9872,1281,1,0,0,0,9873,9874,7,60,0,0,9874,1283,1,0,0,0,9875,9876,7,61,0,0,9876,1285,1,0,0,0,9877,9878,7,62,0,0,9878,1287,1,0,0,0,9879,9880,3,1290,645,0,9880,9881,3,1300,650,0,9881,9882,3,1298,649,0,9882,1289,1,0,0,0,9883,9885,3,1292,646,0,9884,9883,1,0,0,0,9885,9888,1,0,0,0,9886,9884,1,0,0,0,9886,9887,1,0,0,0,9887,1291,1,0,0,0,9888,9886,1,0,0,0,9889,9890,3,1294,647,0,9890,9891,5,272,0,0,9891,9892,5,490,0,0,9892,9910,1,0,0,0,9893,9894,3,1294,647,0,9894,9895,5,491,0,0,9895,9896,3,1296,648,0,9896,9910,1,0,0,0,9897,9898,3,1294,647,0,9898,9899,5,492,0,0,9899,9900,5,493,0,0,9900,9910,1,0,0,0,9901,9902,3,1294,647,0,9902,9903,5,492,0,0,9903,9904,5,494,0,0,9904,9910,1,0,0,0,9905,9906,3,1294,647,0,9906,9907,5,492,0,0,9907,9908,5,495,0,0,9908,9910,1,0,0,0,9909,9889,1,0,0,0,9909,9893,1,0,0,0,9909,9897,1,0,0,0,9909,9901,1,0,0,0,9909,9905,1,0,0,0,9910,1293,1,0,0,0,9911,9912,5,29,0,0,9912,1295,1,0,0,0,9913,9918,3,1252,626,0,9914,9918,3,1284,642,0,9915,9918,3,1490,745,0,9916,9918,3,1278,639,0,9917,9913,1,0,0,0,9917,9914,1,0,0,0,9917,9915,1,0,0,0,9917,9916,1,0,0,0,9918,1297,1,0,0,0,9919,9922,1,0,0,0,9920,9922,5,7,0,0,9921,9919,1,0,0,0,9921,9920,1,0,0,0,9922,1299,1,0,0,0,9923,9924,3,1302,651,0,9924,9925,5,146,0,0,9925,9926,3,1344,672,0,9926,9927,3,1470,735,0,9927,9928,5,454,0,0,9928,9929,3,1484,742,0,9929,1301,1,0,0,0,9930,9935,3,1480,740,0,9931,9933,3,1304,652,0,9932,9934,3,1306,653,0,9933,9932,1,0,0,0,9933,9934,1,0,0,0,9934,9936,1,0,0,0,9935,9931,1,0,0,0,9935,9936,1,0,0,0,9936,1303,1,0,0,0,9937,9938,5,178,0,0,9938,1305,1,0,0,0,9939,9941,3,1310,655,0,9940,9939,1,0,0,0,9941,9942,1,0,0,0,9942,9940,1,0,0,0,9942,9943,1,0,0,0,9943,1307,1,0,0,0,9944,9945,5,18,0,0,9945,9946,3,1488,744,0,9946,9947,5,19,0,0,9947,1309,1,0,0,0,9948,9952,3,1312,656,0,9949,9952,5,178,0,0,9950,9952,3,1308,654,0,9951,9948,1,0,0,0,9951,9949,1,0,0,0,9951,9950,1,0,0,0,9952,1311,1,0,0,0,9953,9969,3,1328,664,0,9954,9955,5,496,0,0,9955,9956,5,62,0,0,9956,9970,3,1326,663,0,9957,9958,3,1330,665,0,9958,9959,3,1332,666,0,9959,9960,3,1334,667,0,9960,9961,3,1336,668,0,9961,9962,3,1338,669,0,9962,9970,1,0,0,0,9963,9964,3,1314,657,0,9964,9965,5,172,0,0,9965,9966,3,1318,659,0,9966,9967,3,1324,662,0,9967,9968,3,1316,658,0,9968,9970,1,0,0,0,9969,9954,1,0,0,0,9969,9957,1,0,0,0,9969,9963,1,0,0,0,9970,9971,1,0,0,0,9971,9972,5,7,0,0,9972,1313,1,0,0,0,9973,9978,1,0,0,0,9974,9975,5,262,0,0,9975,9978,5,317,0,0,9976,9978,5,317,0,0,9977,9973,1,0,0,0,9977,9974,1,0,0,0,9977,9976,1,0,0,0,9978,1315,1,0,0,0,9979,9980,3,858,429,0,9980,1317,1,0,0,0,9981,9987,1,0,0,0,9982,9983,5,2,0,0,9983,9984,3,1320,660,0,9984,9985,5,3,0,0,9985,9987,1,0,0,0,9986,9981,1,0,0,0,9986,9982,1,0,0,0,9987,1319,1,0,0,0,9988,9993,3,1322,661,0,9989,9990,5,6,0,0,9990,9992,3,1322,661,0,9991,9989,1,0,0,0,9992,9995,1,0,0,0,9993,9991,1,0,0,0,9993,9994,1,0,0,0,9994,1321,1,0,0,0,9995,9993,1,0,0,0,9996,9997,3,1328,664,0,9997,9998,3,1332,666,0,9998,1323,1,0,0,0,9999,1e4,7,63,0,0,1e4,1325,1,0,0,0,10001,10004,5,28,0,0,10002,10004,3,1264,632,0,10003,10001,1,0,0,0,10003,10002,1,0,0,0,10004,1327,1,0,0,0,10005,10006,3,1488,744,0,10006,1329,1,0,0,0,10007,10010,1,0,0,0,10008,10010,5,497,0,0,10009,10007,1,0,0,0,10009,10008,1,0,0,0,10010,1331,1,0,0,0,10011,10012,3,996,498,0,10012,1333,1,0,0,0,10013,10017,1,0,0,0,10014,10015,5,43,0,0,10015,10017,3,470,235,0,10016,10013,1,0,0,0,10016,10014,1,0,0,0,10017,1335,1,0,0,0,10018,10022,1,0,0,0,10019,10020,5,77,0,0,10020,10022,5,78,0,0,10021,10018,1,0,0,0,10021,10019,1,0,0,0,10022,1337,1,0,0,0,10023,10028,1,0,0,0,10024,10025,3,1340,670,0,10025,10026,3,1492,746,0,10026,10028,1,0,0,0,10027,10023,1,0,0,0,10027,10024,1,0,0,0,10028,1339,1,0,0,0,10029,10032,3,1342,671,0,10030,10032,5,53,0,0,10031,10029,1,0,0,0,10031,10030,1,0,0,0,10032,1341,1,0,0,0,10033,10034,7,64,0,0,10034,1343,1,0,0,0,10035,10037,3,1346,673,0,10036,10035,1,0,0,0,10037,10040,1,0,0,0,10038,10036,1,0,0,0,10038,10039,1,0,0,0,10039,1345,1,0,0,0,10040,10038,1,0,0,0,10041,10042,3,1300,650,0,10042,10043,5,7,0,0,10043,10069,1,0,0,0,10044,10069,3,1412,706,0,10045,10069,3,1416,708,0,10046,10069,3,1354,677,0,10047,10069,3,1370,685,0,10048,10069,3,1376,688,0,10049,10069,3,1386,693,0,10050,10069,3,1388,694,0,10051,10069,3,1390,695,0,10052,10069,3,1404,702,0,10053,10069,3,1408,704,0,10054,10069,3,1426,713,0,10055,10069,3,1432,716,0,10056,10069,3,1434,717,0,10057,10069,3,1348,674,0,10058,10069,3,1350,675,0,10059,10069,3,1356,678,0,10060,10069,3,1442,721,0,10061,10069,3,1446,723,0,10062,10069,3,1454,727,0,10063,10069,3,1456,728,0,10064,10069,3,1458,729,0,10065,10069,3,1460,730,0,10066,10069,3,1462,731,0,10067,10069,3,1466,733,0,10068,10041,1,0,0,0,10068,10044,1,0,0,0,10068,10045,1,0,0,0,10068,10046,1,0,0,0,10068,10047,1,0,0,0,10068,10048,1,0,0,0,10068,10049,1,0,0,0,10068,10050,1,0,0,0,10068,10051,1,0,0,0,10068,10052,1,0,0,0,10068,10053,1,0,0,0,10068,10054,1,0,0,0,10068,10055,1,0,0,0,10068,10056,1,0,0,0,10068,10057,1,0,0,0,10068,10058,1,0,0,0,10068,10059,1,0,0,0,10068,10060,1,0,0,0,10068,10061,1,0,0,0,10068,10062,1,0,0,0,10068,10063,1,0,0,0,10068,10064,1,0,0,0,10068,10065,1,0,0,0,10068,10066,1,0,0,0,10068,10067,1,0,0,0,10069,1347,1,0,0,0,10070,10071,5,498,0,0,10071,10072,3,1496,748,0,10072,10073,5,7,0,0,10073,1349,1,0,0,0,10074,10075,5,433,0,0,10075,10076,3,1488,744,0,10076,10077,5,2,0,0,10077,10078,3,1352,676,0,10078,10079,5,3,0,0,10079,10080,5,7,0,0,10080,10089,1,0,0,0,10081,10082,5,57,0,0,10082,10083,3,1488,744,0,10083,10084,5,2,0,0,10084,10085,3,1352,676,0,10085,10086,5,3,0,0,10086,10087,5,7,0,0,10087,10089,1,0,0,0,10088,10074,1,0,0,0,10088,10081,1,0,0,0,10089,1351,1,0,0,0,10090,10093,1,0,0,0,10091,10093,3,1156,578,0,10092,10090,1,0,0,0,10092,10091,1,0,0,0,10093,1353,1,0,0,0,10094,10095,3,1368,684,0,10095,10096,3,1342,671,0,10096,10097,3,1492,746,0,10097,10098,5,7,0,0,10098,1355,1,0,0,0,10099,10100,5,499,0,0,10100,10101,3,1358,679,0,10101,10102,5,500,0,0,10102,10103,3,1360,680,0,10103,10104,5,7,0,0,10104,1357,1,0,0,0,10105,10109,1,0,0,0,10106,10109,5,434,0,0,10107,10109,5,501,0,0,10108,10105,1,0,0,0,10108,10106,1,0,0,0,10108,10107,1,0,0,0,10109,1359,1,0,0,0,10110,10115,3,1362,681,0,10111,10112,5,6,0,0,10112,10114,3,1362,681,0,10113,10111,1,0,0,0,10114,10117,1,0,0,0,10115,10113,1,0,0,0,10115,10116,1,0,0,0,10116,1361,1,0,0,0,10117,10115,1,0,0,0,10118,10119,3,1366,683,0,10119,10120,3,1342,671,0,10120,10121,3,1364,682,0,10121,1363,1,0,0,0,10122,10123,3,1264,632,0,10123,1365,1,0,0,0,10124,10125,3,1368,684,0,10125,1367,1,0,0,0,10126,10129,3,470,235,0,10127,10129,5,28,0,0,10128,10126,1,0,0,0,10128,10127,1,0,0,0,10129,10136,1,0,0,0,10130,10131,5,4,0,0,10131,10132,3,1498,749,0,10132,10133,5,5,0,0,10133,10135,1,0,0,0,10134,10130,1,0,0,0,10135,10138,1,0,0,0,10136,10134,1,0,0,0,10136,10137,1,0,0,0,10137,1369,1,0,0,0,10138,10136,1,0,0,0,10139,10140,5,220,0,0,10140,10141,3,1494,747,0,10141,10142,5,93,0,0,10142,10143,3,1344,672,0,10143,10144,3,1372,686,0,10144,10145,3,1374,687,0,10145,10146,5,454,0,0,10146,10147,5,220,0,0,10147,10148,5,7,0,0,10148,1371,1,0,0,0,10149,10150,5,502,0,0,10150,10151,3,1038,519,0,10151,10152,5,93,0,0,10152,10153,3,1344,672,0,10153,10155,1,0,0,0,10154,10149,1,0,0,0,10155,10158,1,0,0,0,10156,10154,1,0,0,0,10156,10157,1,0,0,0,10157,1373,1,0,0,0,10158,10156,1,0,0,0,10159,10163,1,0,0,0,10160,10161,5,58,0,0,10161,10163,3,1344,672,0,10162,10159,1,0,0,0,10162,10160,1,0,0,0,10163,1375,1,0,0,0,10164,10165,5,40,0,0,10165,10166,3,1378,689,0,10166,10167,3,1380,690,0,10167,10168,3,1384,692,0,10168,10169,5,454,0,0,10169,10170,5,40,0,0,10170,10171,5,7,0,0,10171,1377,1,0,0,0,10172,10175,1,0,0,0,10173,10175,3,1492,746,0,10174,10172,1,0,0,0,10174,10173,1,0,0,0,10175,1379,1,0,0,0,10176,10178,3,1382,691,0,10177,10176,1,0,0,0,10178,10179,1,0,0,0,10179,10177,1,0,0,0,10179,10180,1,0,0,0,10180,1381,1,0,0,0,10181,10182,5,102,0,0,10182,10183,3,1156,578,0,10183,10184,5,93,0,0,10184,10185,3,1344,672,0,10185,1383,1,0,0,0,10186,10190,1,0,0,0,10187,10188,5,58,0,0,10188,10190,3,1344,672,0,10189,10186,1,0,0,0,10189,10187,1,0,0,0,10190,1385,1,0,0,0,10191,10192,3,1482,741,0,10192,10193,3,1430,715,0,10193,1387,1,0,0,0,10194,10195,3,1482,741,0,10195,10196,5,503,0,0,10196,10197,3,1500,750,0,10197,10198,3,1430,715,0,10198,1389,1,0,0,0,10199,10200,3,1482,741,0,10200,10201,5,62,0,0,10201,10202,3,1392,696,0,10202,10203,3,1430,715,0,10203,1391,1,0,0,0,10204,10205,3,1402,701,0,10205,10221,5,68,0,0,10206,10207,3,854,427,0,10207,10208,3,1396,698,0,10208,10222,1,0,0,0,10209,10222,3,858,429,0,10210,10222,3,782,391,0,10211,10212,5,202,0,0,10212,10213,3,1038,519,0,10213,10214,3,1394,697,0,10214,10222,1,0,0,0,10215,10216,3,1398,699,0,10216,10217,3,1038,519,0,10217,10218,5,24,0,0,10218,10219,3,1038,519,0,10219,10220,3,1400,700,0,10220,10222,1,0,0,0,10221,10206,1,0,0,0,10221,10209,1,0,0,0,10221,10210,1,0,0,0,10221,10211,1,0,0,0,10221,10215,1,0,0,0,10222,1393,1,0,0,0,10223,10227,1,0,0,0,10224,10225,5,100,0,0,10225,10227,3,1156,578,0,10226,10223,1,0,0,0,10226,10224,1,0,0,0,10227,1395,1,0,0,0,10228,10241,1,0,0,0,10229,10230,5,2,0,0,10230,10235,3,1038,519,0,10231,10232,5,6,0,0,10232,10234,3,1038,519,0,10233,10231,1,0,0,0,10234,10237,1,0,0,0,10235,10233,1,0,0,0,10235,10236,1,0,0,0,10236,10238,1,0,0,0,10237,10235,1,0,0,0,10238,10239,5,3,0,0,10239,10241,1,0,0,0,10240,10228,1,0,0,0,10240,10229,1,0,0,0,10241,1397,1,0,0,0,10242,10245,1,0,0,0,10243,10245,5,504,0,0,10244,10242,1,0,0,0,10244,10243,1,0,0,0,10245,1399,1,0,0,0,10246,10250,1,0,0,0,10247,10248,5,147,0,0,10248,10250,3,1038,519,0,10249,10246,1,0,0,0,10249,10247,1,0,0,0,10250,1401,1,0,0,0,10251,10252,3,468,234,0,10252,1403,1,0,0,0,10253,10254,3,1482,741,0,10254,10255,5,505,0,0,10255,10256,3,1402,701,0,10256,10257,3,1406,703,0,10257,10258,5,68,0,0,10258,10259,5,35,0,0,10259,10260,3,1038,519,0,10260,10261,3,1430,715,0,10261,1405,1,0,0,0,10262,10266,1,0,0,0,10263,10264,5,506,0,0,10264,10266,3,1250,625,0,10265,10262,1,0,0,0,10265,10263,1,0,0,0,10266,1407,1,0,0,0,10267,10268,3,1410,705,0,10268,10269,3,1484,742,0,10269,10270,3,1486,743,0,10270,10271,5,7,0,0,10271,1409,1,0,0,0,10272,10273,7,65,0,0,10273,1411,1,0,0,0,10274,10286,5,508,0,0,10275,10276,5,261,0,0,10276,10287,3,1492,746,0,10277,10283,5,509,0,0,10278,10279,5,202,0,0,10279,10280,3,1038,519,0,10280,10281,3,1394,697,0,10281,10284,1,0,0,0,10282,10284,3,858,429,0,10283,10278,1,0,0,0,10283,10282,1,0,0,0,10284,10287,1,0,0,0,10285,10287,3,1414,707,0,10286,10275,1,0,0,0,10286,10277,1,0,0,0,10286,10285,1,0,0,0,10287,10288,1,0,0,0,10288,10289,5,7,0,0,10289,1413,1,0,0,0,10290,10293,1,0,0,0,10291,10293,3,1492,746,0,10292,10290,1,0,0,0,10292,10291,1,0,0,0,10293,1415,1,0,0,0,10294,10295,5,510,0,0,10295,10296,3,1418,709,0,10296,10297,3,1252,626,0,10297,10298,3,1420,710,0,10298,10299,3,1422,711,0,10299,10300,5,7,0,0,10300,10321,1,0,0,0,10301,10302,5,510,0,0,10302,10303,3,1418,709,0,10303,10304,3,1274,637,0,10304,10305,3,1422,711,0,10305,10306,5,7,0,0,10306,10321,1,0,0,0,10307,10308,5,510,0,0,10308,10309,3,1418,709,0,10309,10310,5,511,0,0,10310,10311,3,1252,626,0,10311,10312,3,1422,711,0,10312,10313,5,7,0,0,10313,10321,1,0,0,0,10314,10315,5,510,0,0,10315,10316,3,1418,709,0,10316,10317,3,1422,711,0,10317,10318,5,7,0,0,10318,10321,1,0,0,0,10319,10321,5,510,0,0,10320,10294,1,0,0,0,10320,10301,1,0,0,0,10320,10307,1,0,0,0,10320,10314,1,0,0,0,10320,10319,1,0,0,0,10321,1417,1,0,0,0,10322,10331,1,0,0,0,10323,10331,1,0,0,0,10324,10331,5,512,0,0,10325,10331,5,513,0,0,10326,10331,5,514,0,0,10327,10331,5,515,0,0,10328,10331,5,516,0,0,10329,10331,5,517,0,0,10330,10322,1,0,0,0,10330,10323,1,0,0,0,10330,10324,1,0,0,0,10330,10325,1,0,0,0,10330,10326,1,0,0,0,10330,10327,1,0,0,0,10330,10328,1,0,0,0,10330,10329,1,0,0,0,10331,1419,1,0,0,0,10332,10340,1,0,0,0,10333,10334,5,6,0,0,10334,10336,3,1038,519,0,10335,10333,1,0,0,0,10336,10337,1,0,0,0,10337,10335,1,0,0,0,10337,10338,1,0,0,0,10338,10340,1,0,0,0,10339,10332,1,0,0,0,10339,10335,1,0,0,0,10340,1421,1,0,0,0,10341,10352,1,0,0,0,10342,10343,5,100,0,0,10343,10348,3,1424,712,0,10344,10345,5,6,0,0,10345,10347,3,1424,712,0,10346,10344,1,0,0,0,10347,10350,1,0,0,0,10348,10346,1,0,0,0,10348,10349,1,0,0,0,10349,10352,1,0,0,0,10350,10348,1,0,0,0,10351,10341,1,0,0,0,10351,10342,1,0,0,0,10352,1423,1,0,0,0,10353,10354,3,1274,637,0,10354,10355,5,10,0,0,10355,10356,3,1038,519,0,10356,1425,1,0,0,0,10357,10358,5,518,0,0,10358,10359,3,1492,746,0,10359,10360,3,1428,714,0,10360,10361,5,7,0,0,10361,1427,1,0,0,0,10362,10366,1,0,0,0,10363,10364,5,6,0,0,10364,10366,3,1492,746,0,10365,10362,1,0,0,0,10365,10363,1,0,0,0,10366,1429,1,0,0,0,10367,10368,5,519,0,0,10368,10369,3,1344,672,0,10369,10370,5,454,0,0,10370,10371,5,519,0,0,10371,10372,3,1484,742,0,10372,10373,5,7,0,0,10373,1431,1,0,0,0,10374,10375,3,1502,751,0,10375,10376,5,7,0,0,10376,1433,1,0,0,0,10377,10378,5,202,0,0,10378,10386,3,1038,519,0,10379,10380,3,1440,720,0,10380,10381,3,1436,718,0,10381,10387,1,0,0,0,10382,10383,3,1436,718,0,10383,10384,3,1440,720,0,10384,10387,1,0,0,0,10385,10387,1,0,0,0,10386,10379,1,0,0,0,10386,10382,1,0,0,0,10386,10385,1,0,0,0,10387,10388,1,0,0,0,10388,10389,5,7,0,0,10389,1435,1,0,0,0,10390,10394,1,0,0,0,10391,10392,5,100,0,0,10392,10394,3,1438,719,0,10393,10390,1,0,0,0,10393,10391,1,0,0,0,10394,1437,1,0,0,0,10395,10400,3,1038,519,0,10396,10397,5,6,0,0,10397,10399,3,1038,519,0,10398,10396,1,0,0,0,10399,10402,1,0,0,0,10400,10398,1,0,0,0,10400,10401,1,0,0,0,10401,1439,1,0,0,0,10402,10400,1,0,0,0,10403,10410,1,0,0,0,10404,10406,5,71,0,0,10405,10407,5,339,0,0,10406,10405,1,0,0,0,10406,10407,1,0,0,0,10407,10408,1,0,0,0,10408,10410,3,1448,724,0,10409,10403,1,0,0,0,10409,10404,1,0,0,0,10410,1441,1,0,0,0,10411,10440,5,520,0,0,10412,10414,3,1468,734,0,10413,10415,5,262,0,0,10414,10413,1,0,0,0,10414,10415,1,0,0,0,10415,10416,1,0,0,0,10416,10417,5,317,0,0,10417,10424,5,62,0,0,10418,10425,3,858,429,0,10419,10420,5,202,0,0,10420,10421,3,1492,746,0,10421,10422,5,100,0,0,10422,10423,3,1156,578,0,10423,10425,1,0,0,0,10424,10418,1,0,0,0,10424,10419,1,0,0,0,10425,10441,1,0,0,0,10426,10438,3,1264,632,0,10427,10428,5,2,0,0,10428,10433,3,1444,722,0,10429,10430,5,6,0,0,10430,10432,3,1444,722,0,10431,10429,1,0,0,0,10432,10435,1,0,0,0,10433,10431,1,0,0,0,10433,10434,1,0,0,0,10434,10436,1,0,0,0,10435,10433,1,0,0,0,10436,10437,5,3,0,0,10437,10439,1,0,0,0,10438,10427,1,0,0,0,10438,10439,1,0,0,0,10439,10441,1,0,0,0,10440,10412,1,0,0,0,10440,10426,1,0,0,0,10441,10442,1,0,0,0,10442,10443,5,7,0,0,10443,1443,1,0,0,0,10444,10445,3,1264,632,0,10445,10446,5,20,0,0,10446,10447,3,1038,519,0,10447,10450,1,0,0,0,10448,10450,3,1038,519,0,10449,10444,1,0,0,0,10449,10448,1,0,0,0,10450,1445,1,0,0,0,10451,10452,5,61,0,0,10452,10453,3,1452,726,0,10453,10454,3,1450,725,0,10454,10455,3,1468,734,0,10455,10456,5,71,0,0,10456,10457,3,1448,724,0,10457,10458,5,7,0,0,10458,1447,1,0,0,0,10459,10460,3,1156,578,0,10460,1449,1,0,0,0,10461,10465,1,0,0,0,10462,10465,5,64,0,0,10463,10465,5,68,0,0,10464,10461,1,0,0,0,10464,10462,1,0,0,0,10464,10463,1,0,0,0,10465,1451,1,0,0,0,10466,10484,1,0,0,0,10467,10484,1,0,0,0,10468,10484,5,261,0,0,10469,10484,5,286,0,0,10470,10484,5,207,0,0,10471,10484,5,240,0,0,10472,10473,5,130,0,0,10473,10484,3,1038,519,0,10474,10475,5,300,0,0,10475,10484,3,1038,519,0,10476,10484,3,1038,519,0,10477,10484,5,30,0,0,10478,10481,7,66,0,0,10479,10482,3,1038,519,0,10480,10482,5,30,0,0,10481,10479,1,0,0,0,10481,10480,1,0,0,0,10481,10482,1,0,0,0,10482,10484,1,0,0,0,10483,10466,1,0,0,0,10483,10467,1,0,0,0,10483,10468,1,0,0,0,10483,10469,1,0,0,0,10483,10470,1,0,0,0,10483,10471,1,0,0,0,10483,10472,1,0,0,0,10483,10474,1,0,0,0,10483,10476,1,0,0,0,10483,10477,1,0,0,0,10483,10478,1,0,0,0,10484,1453,1,0,0,0,10485,10486,5,258,0,0,10486,10487,3,1452,726,0,10487,10488,3,1468,734,0,10488,10489,5,7,0,0,10489,1455,1,0,0,0,10490,10491,5,157,0,0,10491,10492,3,1468,734,0,10492,10493,5,7,0,0,10493,1457,1,0,0,0,10494,10495,5,78,0,0,10495,10496,5,7,0,0,10496,1459,1,0,0,0,10497,10498,5,161,0,0,10498,10499,3,1464,732,0,10499,10500,5,7,0,0,10500,1461,1,0,0,0,10501,10502,5,312,0,0,10502,10503,3,1464,732,0,10503,10504,5,7,0,0,10504,1463,1,0,0,0,10505,10507,5,33,0,0,10506,10508,5,262,0,0,10507,10506,1,0,0,0,10507,10508,1,0,0,0,10508,10509,1,0,0,0,10509,10512,5,153,0,0,10510,10512,1,0,0,0,10511,10505,1,0,0,0,10511,10510,1,0,0,0,10512,1465,1,0,0,0,10513,10514,5,326,0,0,10514,10515,3,470,235,0,10515,10516,5,94,0,0,10516,10517,5,53,0,0,10517,10518,5,7,0,0,10518,10526,1,0,0,0,10519,10522,5,306,0,0,10520,10523,3,470,235,0,10521,10523,5,30,0,0,10522,10520,1,0,0,0,10522,10521,1,0,0,0,10523,10524,1,0,0,0,10524,10526,5,7,0,0,10525,10513,1,0,0,0,10525,10519,1,0,0,0,10526,1467,1,0,0,0,10527,10530,3,1264,632,0,10528,10530,5,28,0,0,10529,10527,1,0,0,0,10529,10528,1,0,0,0,10530,1469,1,0,0,0,10531,10535,1,0,0,0,10532,10533,5,517,0,0,10533,10535,3,1472,736,0,10534,10531,1,0,0,0,10534,10532,1,0,0,0,10535,1471,1,0,0,0,10536,10538,3,1474,737,0,10537,10536,1,0,0,0,10538,10539,1,0,0,0,10539,10537,1,0,0,0,10539,10540,1,0,0,0,10540,1473,1,0,0,0,10541,10542,5,102,0,0,10542,10543,3,1476,738,0,10543,10544,5,93,0,0,10544,10545,3,1344,672,0,10545,1475,1,0,0,0,10546,10551,3,1478,739,0,10547,10548,5,82,0,0,10548,10550,3,1478,739,0,10549,10547,1,0,0,0,10550,10553,1,0,0,0,10551,10549,1,0,0,0,10551,10552,1,0,0,0,10552,1477,1,0,0,0,10553,10551,1,0,0,0,10554,10558,3,1488,744,0,10555,10556,5,511,0,0,10556,10558,3,1252,626,0,10557,10554,1,0,0,0,10557,10555,1,0,0,0,10558,1479,1,0,0,0,10559,10562,1,0,0,0,10560,10562,3,1308,654,0,10561,10559,1,0,0,0,10561,10560,1,0,0,0,10562,1481,1,0,0,0,10563,10566,1,0,0,0,10564,10566,3,1308,654,0,10565,10563,1,0,0,0,10565,10564,1,0,0,0,10566,1483,1,0,0,0,10567,10570,1,0,0,0,10568,10570,3,1488,744,0,10569,10567,1,0,0,0,10569,10568,1,0,0,0,10570,1485,1,0,0,0,10571,10572,5,102,0,0,10572,10575,3,1496,748,0,10573,10575,1,0,0,0,10574,10571,1,0,0,0,10574,10573,1,0,0,0,10575,1487,1,0,0,0,10576,10579,3,1264,632,0,10577,10579,3,1490,745,0,10578,10576,1,0,0,0,10578,10577,1,0,0,0,10579,1489,1,0,0,0,10580,10581,7,67,0,0,10581,1491,1,0,0,0,10582,10584,3,1202,601,0,10583,10585,3,878,439,0,10584,10583,1,0,0,0,10584,10585,1,0,0,0,10585,10586,1,0,0,0,10586,10587,3,936,468,0,10587,10588,3,974,487,0,10588,10589,3,918,459,0,10589,10590,3,924,462,0,10590,10591,3,1116,558,0,10591,1493,1,0,0,0,10592,10593,3,1492,746,0,10593,1495,1,0,0,0,10594,10595,3,1492,746,0,10595,1497,1,0,0,0,10596,10597,3,1038,519,0,10597,1499,1,0,0,0,10598,10599,3,1038,519,0,10599,1501,1,0,0,0,10600,10601,3,6,3,0,10601,10602,3,1504,752,0,10602,1503,1,0,0,0,10603,10605,5,71,0,0,10604,10606,5,339,0,0,10605,10604,1,0,0,0,10605,10606,1,0,0,0,10606,10607,1,0,0,0,10607,10610,3,1448,724,0,10608,10610,1,0,0,0,10609,10603,1,0,0,0,10609,10608,1,0,0,0,10610,1505,1,0,0,0,10611,10612,7,68,0,0,10612,1507,1,0,0,0,792,1509,1517,1523,1647,1651,1658,1663,1669,1675,1691,1699,1704,1722,1727,1737,1748,1755,1761,1766,1775,1779,1791,1823,1830,1838,1843,1850,1856,1873,1878,1882,1895,1899,1904,1909,1921,1930,1943,1948,1959,1970,1975,1986,1997,2007,2022,2034,2039,2046,2057,2208,2217,2237,2304,2311,2316,2321,2326,2334,2343,2350,2360,2362,2367,2373,2379,2381,2409,2419,2432,2444,2458,2463,2467,2473,2487,2493,2500,2505,2512,2549,2552,2557,2564,2579,2585,2593,2626,2636,2640,2647,2654,2662,2668,2672,2682,2689,2700,2720,2734,2742,2747,2754,2764,2774,2794,2809,2834,2841,2848,2859,2864,2871,2882,2890,2901,2917,2925,2929,2943,2960,2965,2972,2981,2984,2989,2996,3007,3020,3033,3051,3054,3058,3065,3082,3093,3097,3103,3113,3118,3127,3149,3151,3159,3166,3172,3181,3183,3187,3192,3198,3202,3215,3221,3230,3237,3247,3256,3401,3409,3421,3426,3434,3445,3453,3460,3473,3483,3497,3513,3521,3526,3531,3539,3541,3599,3616,3624,3647,3651,3671,3708,3717,3722,3727,3732,3785,3791,3798,3808,3813,3818,3833,3837,3847,3853,3859,3866,3871,3876,3890,3918,3925,3939,3954,4006,4073,4081,4089,4097,4105,4119,4159,4165,4172,4188,4196,4203,4218,4223,4232,4259,4266,4281,4301,4321,4340,4349,4358,4367,4376,4385,4396,4441,4464,4469,4484,4493,4498,4504,4511,4525,4624,4711,4715,4853,4858,4862,4868,4936,4942,4971,4988,4995,5007,5047,5054,5060,5066,5092,5098,5104,5112,5124,5153,5159,5163,5166,5181,5185,5202,5207,5214,5228,5241,5250,5256,5261,5265,5270,5277,5285,5295,5297,5304,5311,5319,5325,5332,5334,5341,5347,5351,5357,5362,5366,5371,5377,5383,5389,5395,5408,5417,5428,5434,5473,5483,5490,5501,5507,5517,5526,5529,5567,5581,5595,5619,5626,5636,5648,5653,5689,5696,5711,5758,5774,5778,5787,5791,5799,5803,5811,5815,5823,5827,5830,5839,5856,6028,6073,6164,6295,6299,6304,6310,6321,6332,6345,6357,6368,6375,6523,6589,6604,6615,6622,6815,6825,6833,6862,6878,6920,6934,6956,6963,6971,6975,6982,6991,7e3,7009,7014,7055,7060,7072,7076,7081,7086,7090,7095,7111,7119,7124,7138,7141,7145,7150,7160,7171,7182,7192,7197,7235,7243,7247,7328,7332,7356,7361,7365,7368,7372,7382,7394,7401,7411,7416,7420,7427,7437,7441,7460,7466,7477,7484,7489,7502,7508,7537,7544,7556,7559,7571,7586,7592,7601,7617,7620,7631,7636,7640,7644,7649,7652,7658,7662,7664,7667,7674,7677,7684,7692,7695,7704,7709,7721,7734,7745,7748,7752,7758,7761,7776,7789,7796,7808,7810,7825,7829,7839,7848,7850,7860,7862,7864,7873,7883,7888,7893,7898,7901,7915,7919,7926,7941,7945,7949,7952,7965,7969,7974,7982,7988,7999,8006,8012,8016,8018,8022,8028,8037,8043,8045,8047,8054,8058,8067,8071,8081,8088,8110,8115,8120,8125,8134,8138,8141,8146,8159,8165,8173,8176,8183,8188,8209,8218,8223,8229,8234,8241,8246,8252,8254,8258,8265,8269,8272,8279,8284,8287,8294,8298,8307,8313,8321,8323,8330,8335,8338,8361,8367,8378,8383,8388,8395,8398,8402,8409,8426,8442,8445,8452,8456,8461,8471,8478,8487,8490,8495,8500,8508,8510,8516,8529,8531,8537,8543,8546,8555,8573,8580,8584,8588,8604,8611,8619,8623,8630,8643,8659,8665,8671,8678,8683,8689,8696,8704,8712,8717,8721,8727,8731,8735,8738,8744,8749,8765,8768,8770,8782,8784,8788,8794,8799,8807,8811,8820,8828,8834,8837,8846,8851,8858,8868,8894,8905,8907,8909,8917,8940,8948,8958,8972,8982,8986,9e3,9007,9014,9021,9046,9075,9114,9116,9144,9165,9172,9185,9197,9203,9212,9229,9241,9250,9255,9262,9272,9275,9286,9292,9307,9315,9324,9333,9336,9341,9350,9355,9369,9379,9387,9401,9408,9416,9424,9431,9437,9446,9454,9464,9475,9482,9511,9520,9527,9538,9548,9552,9556,9561,9566,9570,9572,9575,9580,9585,9590,9597,9606,9608,9615,9625,9635,9645,9659,9664,9671,9687,9702,9716,9721,9740,9745,9750,9757,9762,9769,9778,9784,9790,9796,9804,9813,9871,9886,9909,9917,9921,9933,9935,9942,9951,9969,9977,9986,9993,10003,10009,10016,10021,10027,10031,10038,10068,10088,10092,10108,10115,10128,10136,10156,10162,10174,10179,10189,10221,10226,10235,10240,10244,10249,10265,10283,10286,10292,10320,10330,10337,10339,10348,10351,10365,10386,10393,10400,10406,10409,10414,10424,10433,10438,10440,10449,10464,10481,10483,10507,10511,10522,10525,10529,10534,10539,10551,10557,10561,10565,10569,10574,10578,10584,10605,10609],Xi.vocabulary=new Ra(Xi.literalNames,Xi.symbolicNames,[]),Xi.decisionsToDFA=Xi._ATN.decisionToState.map(((t,e)=>new ni(t,e))),Xi),nn=class extends ga{constructor(t,e){super(t,e)}EOF(){return this.getToken(cn.EOF,0)}statements(){return this.getRuleContext(0,En)}get ruleIndex(){return cn.RULE_root}accept(t){return t.visitRoot?t.visitRoot(this):t.visitChildren(this)}},hn=class extends ga{constructor(t,e){super(t,e)}plsqlFunction(){return this.getRuleContext(0,oN)}get ruleIndex(){return cn.RULE_plsqlRoot}accept(t){return t.visitPlsqlRoot?t.visitPlsqlRoot(this):t.visitChildren(this)}},En=class t extends ga{constructor(t,e){super(t,e)}statement(){return this.getRuleContext(0,Tn)}SEMI(){return this.getToken(cn.SEMI,0)}statements(){return this.getRuleContext(0,t)}get ruleIndex(){return cn.RULE_statements}accept(t){return t.visitStatements?t.visitStatements(this):t.visitChildren(this)}},Tn=class extends ga{constructor(t,e){super(t,e)}alterEventTriggerStatement(){return this.getRuleContext(0,ZT)}alterCollationStatement(){return this.getRuleContext(0,$A)}alterDatabaseStatement(){return this.getRuleContext(0,qA)}alterDatabaseSetStatement(){return this.getRuleContext(0,jA)}alterDefaultPrivilegesStatement(){return this.getRuleContext(0,tR)}alterDomainStatement(){return this.getRuleContext(0,sS)}alterEnumStatement(){return this.getRuleContext(0,io)}alterExtensionStatement(){return this.getRuleContext(0,WE)}alterExtensionContentsStatement(){return this.getRuleContext(0,XE)}alterForeignDataWrapperStatement(){return this.getRuleContext(0,ZE)}alterForeignServerStatement(){return this.getRuleContext(0,nT)}alterFunctionStatement(){return this.getRuleContext(0,yR)}alterObjectDependsStatement(){return this.getRuleContext(0,TA)}alterObjectSchemaStatement(){return this.getRuleContext(0,oA)}alterOwnerStatement(){return this.getRuleContext(0,IA)}alterOperatorStatement(){return this.getRuleContext(0,RA)}alterTypeStatement(){return this.getRuleContext(0,OA)}alterPolicyStatement(){return this.getRuleContext(0,IT)}alterSequenceStatement(){return this.getRuleContext(0,mE)}alterSystemStatement(){return this.getRuleContext(0,tS)}alterTableStatement(){return this.getRuleContext(0,jn)}alterTablespaceStatement(){return this.getRuleContext(0,cA)}alterCompositeTypeStatement(){return this.getRuleContext(0,Oh)}alterPublicationStatement(){return this.getRuleContext(0,CA)}alterRoleSetStatement(){return this.getRuleContext(0,Cn)}alterRoleStatement(){return this.getRuleContext(0,Nn)}alterSubscriptionStatement(){return this.getRuleContext(0,dA)}alterStatsStatement(){return this.getRuleContext(0,NE)}altertsConfigurationStatement(){return this.getRuleContext(0,cS)}altertsDictionaryStatement(){return this.getRuleContext(0,iS)}alterUserMappingStatement(){return this.getRuleContext(0,lT)}analyzeStatement(){return this.getRuleContext(0,oS)}callStatement(){return this.getRuleContext(0,Rn)}checkpointStatement(){return this.getRuleContext(0,Zn)}closePortalStatement(){return this.getRuleContext(0,Nh)}clusterStatement(){return this.getRuleContext(0,hS)}commentStatement(){return this.getRuleContext(0,ko)}setConstraintsStatement(){return this.getRuleContext(0,Kn)}copyStatement(){return this.getRuleContext(0,Lh)}createAccessMethodStatement(){return this.getRuleContext(0,MT)}createAsStatement(){return this.getRuleContext(0,LE)}createAssertionStatement(){return this.getRuleContext(0,jT)}createCastStatement(){return this.getRuleContext(0,ZR)}createConversionStatement(){return this.getRuleContext(0,nS)}createDomainStatement(){return this.getRuleContext(0,eS)}createExtensionStatement(){return this.getRuleContext(0,wE)}createForeignDataWrapperStatement(){return this.getRuleContext(0,KE)}createForeignServerStatement(){return this.getRuleContext(0,rT)}createForeignTableStatement(){return this.getRuleContext(0,hT)}createFunctionStatement(){return this.getRuleContext(0,SR)}createMaterializedViewStatement(){return this.getRuleContext(0,PE)}createOperatorClassStatement(){return this.getRuleContext(0,no)}createOperatorFamilyStatement(){return this.getRuleContext(0,Ro)}createPublicationStatement(){return this.getRuleContext(0,uA)}alterOperatorFamilyStatement(){return this.getRuleContext(0,Ao)}createPolicyStatement(){return this.getRuleContext(0,OT)}createProcedureLangStatement(){return this.getRuleContext(0,HE)}createSchemaStatement(){return this.getRuleContext(0,Mn)}createSequenceStatement(){return this.getRuleContext(0,UE)}createStatement(){return this.getRuleContext(0,ph)}createSubscriptionStatement(){return this.getRuleContext(0,_A)}createStatsStatement(){return this.getRuleContext(0,uE)}createTablespaceStatement(){return this.getRuleContext(0,yE)}createTransformStatement(){return this.getRuleContext(0,$R)}createTriggerStatement(){return this.getRuleContext(0,UT)}createEventTriggerStatement(){return this.getRuleContext(0,XT)}createRoleStatement(){return this.getRuleContext(0,un)}createUserMappingStatement(){return this.getRuleContext(0,RT)}createDatabaseStatement(){return this.getRuleContext(0,KA)}deallocateStatement(){return this.getRuleContext(0,xS)}declareCursorStatement(){return this.getRuleContext(0,sl)}defineStatement(){return this.getRuleContext(0,zT)}deleteStatement(){return this.getRuleContext(0,XS)}discardStatement(){return this.getRuleContext(0,qn)}doStatement(){return this.getRuleContext(0,KR)}dropCastStatement(){return this.getRuleContext(0,jR)}dropOperatorClassStatement(){return this.getRuleContext(0,Oo)}dropOperatorFamilyStatement(){return this.getRuleContext(0,Io)}dropOwnedStatement(){return this.getRuleContext(0,uo)}dropStatement(){return this.getRuleContext(0,Lo)}dropSubscriptionStatement(){return this.getRuleContext(0,UA)}dropTablespaceStatement(){return this.getRuleContext(0,YE)}dropTransformStatement(){return this.getRuleContext(0,eA)}dropRoleStatement(){return this.getRuleContext(0,_n)}dropUserMappingStatement(){return this.getRuleContext(0,ST)}dropDatabaseStatement(){return this.getRuleContext(0,zA)}executeStatement(){return this.getRuleContext(0,pS)}explainStatement(){return this.getRuleContext(0,CS)}fetchStatement(){return this.getRuleContext(0,Bo)}grantStatement(){return this.getRuleContext(0,wo)}grantPrivilegeStatement(){return this.getRuleContext(0,qo)}importForeignSchemaStatement(){return this.getRuleContext(0,ET)}indexStatement(){return this.getRuleContext(0,rR)}insertStatement(){return this.getRuleContext(0,kS)}mergeStatement(){return this.getRuleContext(0,wS)}listenStatement(){return this.getRuleContext(0,vA)}refreshMaterializedViewStatement(){return this.getRuleContext(0,dE)}loadStatement(){return this.getRuleContext(0,XA)}lockStatement(){return this.getRuleContext(0,QS)}notifyStatement(){return this.getRuleContext(0,GA)}prepareStatement(){return this.getRuleContext(0,US)}reassignOwnedStatement(){return this.getRuleContext(0,No)}reindexStatement(){return this.getRuleContext(0,sA)}removeAggregateStatement(){return this.getRuleContext(0,YR)}removeFunctionStatement(){return this.getRuleContext(0,fR)}removeOperatorStatement(){return this.getRuleContext(0,wR)}renameStatement(){return this.getRuleContext(0,nA)}revokeStatement(){return this.getRuleContext(0,bo)}revokePrivilegeStatement(){return this.getRuleContext(0,jo)}ruleStatement(){return this.getRuleContext(0,mA)}securityLabelStatement(){return this.getRuleContext(0,Go)}selectStatement(){return this.getRuleContext(0,il)}transactionStatement(){return this.getRuleContext(0,yA)}truncateStatement(){return this.getRuleContext(0,go)}unlistenStatement(){return this.getRuleContext(0,BA)}updateStatement(){return this.getRuleContext(0,zS)}vacuumStatement(){return this.getRuleContext(0,TS)}variableResetStatement(){return this.getRuleContext(0,Yn)}variableSetStatement(){return this.getRuleContext(0,Dn)}variableShowStatement(){return this.getRuleContext(0,Xn)}viewStatement(){return this.getRuleContext(0,WA)}plsqlConsoleCommand(){return this.getRuleContext(0,on)}get ruleIndex(){return cn.RULE_statement}accept(t){return t.visitStatement?t.visitStatement(this):t.visitChildren(this)}},on=class extends ga{constructor(t,e){super(t,e)}MetaCommand(){return this.getToken(cn.MetaCommand,0)}EndMetaCommand(){return this.getToken(cn.EndMetaCommand,0)}get ruleIndex(){return cn.RULE_plsqlConsoleCommand}accept(t){return t.visitPlsqlConsoleCommand?t.visitPlsqlConsoleCommand(this):t.visitChildren(this)}},Rn=class extends ga{constructor(t,e){super(t,e)}CALL(){return this.getToken(cn.CALL,0)}functionApplication(){return this.getRuleContext(0,SI)}get ruleIndex(){return cn.RULE_callStatement}accept(t){return t.visitCallStatement?t.visitCallStatement(this):t.visitChildren(this)}},An=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}get ruleIndex(){return cn.RULE_optionalWith}accept(t){return t.visitOptionalWith?t.visitOptionalWith(this):t.visitChildren(this)}},Sn=class extends ga{constructor(t,e){super(t,e)}createRoleElement(t){return void 0===t?this.getRuleContexts(In):this.getRuleContext(t,In)}get ruleIndex(){return cn.RULE_optionalRoleList}accept(t){return t.visitOptionalRoleList?t.visitOptionalRoleList(this):t.visitChildren(this)}},ln=class extends ga{constructor(t,e){super(t,e)}alterRoleElemement(t){return void 0===t?this.getRuleContexts(On):this.getRuleContext(t,On)}get ruleIndex(){return cn.RULE_alterOptionalRoleList}accept(t){return t.visitAlterOptionalRoleList?t.visitAlterOptionalRoleList(this):t.visitChildren(this)}},On=class extends ga{constructor(t,e){super(t,e)}PASSWORD(){return this.getToken(cn.PASSWORD,0)}sconst(){return this.getRuleContext(0,Qu)}NULL_P(){return this.getToken(cn.NULL_P,0)}ENCRYPTED(){return this.getToken(cn.ENCRYPTED,0)}UNENCRYPTED(){return this.getToken(cn.UNENCRYPTED,0)}INHERIT(){return this.getToken(cn.INHERIT,0)}CONNECTION(){return this.getToken(cn.CONNECTION,0)}LIMIT(){return this.getToken(cn.LIMIT,0)}signedIconst(){return this.getRuleContext(0,qu)}VALID(){return this.getToken(cn.VALID,0)}UNTIL(){return this.getToken(cn.UNTIL,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleNameList(){return this.getRuleContext(0,zu)}identifier(){return this.getRuleContext(0,rN)}get ruleIndex(){return cn.RULE_alterRoleElemement}accept(t){return t.visitAlterRoleElemement?t.visitAlterRoleElemement(this):t.visitChildren(this)}},In=class extends ga{constructor(t,e){super(t,e)}alterRoleElemement(){return this.getRuleContext(0,On)}SYSID(){return this.getToken(cn.SYSID,0)}iconst(){return this.getRuleContext(0,Ku)}ADMIN(){return this.getToken(cn.ADMIN,0)}roleNameList(){return this.getRuleContext(0,zu)}roleOrAliases(){return this.getRuleContext(0,RC)}IN_P(){return this.getToken(cn.IN_P,0)}get ruleIndex(){return cn.RULE_createRoleElement}accept(t){return t.visitCreateRoleElement?t.visitCreateRoleElement(this):t.visitChildren(this)}},un=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleName(){return this.getRuleContext(0,ju)}optionalWith(){return this.getRuleContext(0,An)}optionalRoleList(){return this.getRuleContext(0,Sn)}get ruleIndex(){return cn.RULE_createRoleStatement}accept(t){return t.visitCreateRoleStatement?t.visitCreateRoleStatement(this):t.visitChildren(this)}},Nn=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleName(){return this.getRuleContext(0,ju)}optionalWith(){return this.getRuleContext(0,An)}alterOptionalRoleList(){return this.getRuleContext(0,ln)}get ruleIndex(){return cn.RULE_alterRoleStatement}accept(t){return t.visitAlterRoleStatement?t.visitAlterRoleStatement(this):t.visitChildren(this)}},Ln=class extends ga{constructor(t,e){super(t,e)}IN_P(){return this.getToken(cn.IN_P,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}get ruleIndex(){return cn.RULE_optionalInDatabase}accept(t){return t.visitOptionalInDatabase?t.visitOptionalInDatabase(this):t.visitChildren(this)}},Cn=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleName(){return this.getRuleContext(0,ju)}optionalInDatabase(){return this.getRuleContext(0,Ln)}setResetClause(){return this.getRuleContext(0,Wn)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_alterRoleSetStatement}accept(t){return t.visitAlterRoleSetStatement?t.visitAlterRoleSetStatement(this):t.visitChildren(this)}},_n=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleNameList(){return this.getRuleContext(0,zu)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_dropRoleStatement}accept(t){return t.visitDropRoleStatement?t.visitDropRoleStatement(this):t.visitChildren(this)}},Pn=class extends ga{constructor(t,e){super(t,e)}ADD_P(){return this.getToken(cn.ADD_P,0)}DROP(){return this.getToken(cn.DROP,0)}get ruleIndex(){return cn.RULE_addOrDrop}accept(t){return t.visitAddOrDrop?t.visitAddOrDrop(this):t.visitChildren(this)}},Mn=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}optionalSchemaList(){return this.getRuleContext(0,Un)}optionalSchemaName(){return this.getRuleContext(0,dn)}AUTHORIZATION(){return this.getToken(cn.AUTHORIZATION,0)}roleName(){return this.getRuleContext(0,ju)}columnId(){return this.getRuleContext(0,$u)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createSchemaStatement}accept(t){return t.visitCreateSchemaStatement?t.visitCreateSchemaStatement(this):t.visitChildren(this)}},dn=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_optionalSchemaName}accept(t){return t.visitOptionalSchemaName?t.visitOptionalSchemaName(this):t.visitChildren(this)}},Un=class extends ga{constructor(t,e){super(t,e)}schemaStatement(t){return void 0===t?this.getRuleContexts(mn):this.getRuleContext(t,mn)}get ruleIndex(){return cn.RULE_optionalSchemaList}accept(t){return t.visitOptionalSchemaList?t.visitOptionalSchemaList(this):t.visitChildren(this)}},mn=class extends ga{constructor(t,e){super(t,e)}createStatement(){return this.getRuleContext(0,ph)}indexStatement(){return this.getRuleContext(0,rR)}createSequenceStatement(){return this.getRuleContext(0,UE)}createTriggerStatement(){return this.getRuleContext(0,UT)}grantStatement(){return this.getRuleContext(0,wo)}viewStatement(){return this.getRuleContext(0,WA)}get ruleIndex(){return cn.RULE_schemaStatement}accept(t){return t.visitSchemaStatement?t.visitSchemaStatement(this):t.visitChildren(this)}},Dn=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}setStatementEnding(){return this.getRuleContext(0,pn)}LOCAL(){return this.getToken(cn.LOCAL,0)}SESSION(){return this.getToken(cn.SESSION,0)}get ruleIndex(){return cn.RULE_variableSetStatement}accept(t){return t.visitVariableSetStatement?t.visitVariableSetStatement(this):t.visitChildren(this)}},pn=class extends ga{constructor(t,e){super(t,e)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}transactionModeList(){return this.getRuleContext(0,wA)}SESSION(){return this.getToken(cn.SESSION,0)}CHARACTERISTICS(){return this.getToken(cn.CHARACTERISTICS,0)}AS(){return this.getToken(cn.AS,0)}setStatementMore(){return this.getRuleContext(0,xn)}get ruleIndex(){return cn.RULE_setStatementEnding}accept(t){return t.visitSetStatementEnding?t.visitSetStatementEnding(this):t.visitChildren(this)}},gn=class extends ga{constructor(t,e){super(t,e)}variableName(){return this.getRuleContext(0,kn)}variableList(){return this.getRuleContext(0,Hn)}TO(){return this.getToken(cn.TO,0)}EQUAL(){return this.getToken(cn.EQUAL,0)}get ruleIndex(){return cn.RULE_genericSetClause}accept(t){return t.visitGenericSetClause?t.visitGenericSetClause(this):t.visitChildren(this)}},xn=class extends ga{constructor(t,e){super(t,e)}genericSetClause(){return this.getRuleContext(0,gn)}variableName(){return this.getRuleContext(0,kn)}FROM(){return this.getToken(cn.FROM,0)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}TIME(){return this.getToken(cn.TIME,0)}ZONE(){return this.getToken(cn.ZONE,0)}zoneValue(){return this.getRuleContext(0,Bn)}CATALOG(){return this.getToken(cn.CATALOG,0)}sconst(){return this.getRuleContext(0,Qu)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}NAMES(){return this.getToken(cn.NAMES,0)}optionalEncoding(){return this.getRuleContext(0,yn)}roleOrAliases(){return this.getRuleContext(0,RC)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}SESSION(){return this.getToken(cn.SESSION,0)}AUTHORIZATION(){return this.getToken(cn.AUTHORIZATION,0)}XML_P(){return this.getToken(cn.XML_P,0)}OPTION(){return this.getToken(cn.OPTION,0)}documentOrContent(){return this.getRuleContext(0,PI)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}SNAPSHOT(){return this.getToken(cn.SNAPSHOT,0)}get ruleIndex(){return cn.RULE_setStatementMore}accept(t){return t.visitSetStatementMore?t.visitSetStatementMore(this):t.visitChildren(this)}},kn=class extends ga{constructor(t,e){super(t,e)}columnId(t){return void 0===t?this.getRuleContexts($u):this.getRuleContext(t,$u)}DOT(t){return void 0===t?this.getTokens(cn.DOT):this.getToken(cn.DOT,t)}get ruleIndex(){return cn.RULE_variableName}accept(t){return t.visitVariableName?t.visitVariableName(this):t.visitChildren(this)}},Hn=class extends ga{constructor(t,e){super(t,e)}variableValue(t){return void 0===t?this.getRuleContexts(Gn):this.getRuleContext(t,Gn)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_variableList}accept(t){return t.visitVariableList?t.visitVariableList(this):t.visitChildren(this)}},Gn=class extends ga{constructor(t,e){super(t,e)}booleanOrString(){return this.getRuleContext(0,vn)}numericOnly(){return this.getRuleContext(0,xE)}get ruleIndex(){return cn.RULE_variableValue}accept(t){return t.visitVariableValue?t.visitVariableValue(this):t.visitChildren(this)}},Fn=class extends ga{constructor(t,e){super(t,e)}READ(){return this.getToken(cn.READ,0)}UNCOMMITTED(){return this.getToken(cn.UNCOMMITTED,0)}COMMITTED(){return this.getToken(cn.COMMITTED,0)}REPEATABLE(){return this.getToken(cn.REPEATABLE,0)}SERIALIZABLE(){return this.getToken(cn.SERIALIZABLE,0)}get ruleIndex(){return cn.RULE_isoLevel}accept(t){return t.visitIsoLevel?t.visitIsoLevel(this):t.visitChildren(this)}},vn=class extends ga{constructor(t,e){super(t,e)}TRUE_P(){return this.getToken(cn.TRUE_P,0)}FALSE_P(){return this.getToken(cn.FALSE_P,0)}ON(){return this.getToken(cn.ON,0)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}get ruleIndex(){return cn.RULE_booleanOrString}accept(t){return t.visitBooleanOrString?t.visitBooleanOrString(this):t.visitChildren(this)}},Bn=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}identifier(){return this.getRuleContext(0,rN)}constInterval(){return this.getRuleContext(0,vO)}optionalInterval(){return this.getRuleContext(0,yO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}numericOnly(){return this.getRuleContext(0,xE)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}LOCAL(){return this.getToken(cn.LOCAL,0)}get ruleIndex(){return cn.RULE_zoneValue}accept(t){return t.visitZoneValue?t.visitZoneValue(this):t.visitChildren(this)}},yn=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_optionalEncoding}accept(t){return t.visitOptionalEncoding?t.visitOptionalEncoding(this):t.visitChildren(this)}},fn=class extends ga{constructor(t,e){super(t,e)}nonReservedWord(){return this.getRuleContext(0,sN)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_nonReservedWordOrSconst}accept(t){return t.visitNonReservedWordOrSconst?t.visitNonReservedWordOrSconst(this):t.visitChildren(this)}},Yn=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(cn.RESET,0)}resetClauseRest(){return this.getRuleContext(0,wn)}get ruleIndex(){return cn.RULE_variableResetStatement}accept(t){return t.visitVariableResetStatement?t.visitVariableResetStatement(this):t.visitChildren(this)}},wn=class extends ga{constructor(t,e){super(t,e)}genericResetClause(){return this.getRuleContext(0,bn)}TIME(){return this.getToken(cn.TIME,0)}ZONE(){return this.getToken(cn.ZONE,0)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}ISOLATION(){return this.getToken(cn.ISOLATION,0)}LEVEL(){return this.getToken(cn.LEVEL,0)}SESSION(){return this.getToken(cn.SESSION,0)}AUTHORIZATION(){return this.getToken(cn.AUTHORIZATION,0)}get ruleIndex(){return cn.RULE_resetClauseRest}accept(t){return t.visitResetClauseRest?t.visitResetClauseRest(this):t.visitChildren(this)}},bn=class extends ga{constructor(t,e){super(t,e)}variableName(){return this.getRuleContext(0,kn)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_genericResetClause}accept(t){return t.visitGenericResetClause?t.visitGenericResetClause(this):t.visitChildren(this)}},Wn=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}setStatementEnding(){return this.getRuleContext(0,pn)}variableResetStatement(){return this.getRuleContext(0,Yn)}get ruleIndex(){return cn.RULE_setResetClause}accept(t){return t.visitSetResetClause?t.visitSetResetClause(this):t.visitChildren(this)}},Vn=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}setStatementMore(){return this.getRuleContext(0,xn)}variableResetStatement(){return this.getRuleContext(0,Yn)}get ruleIndex(){return cn.RULE_functionSetResetClause}accept(t){return t.visitFunctionSetResetClause?t.visitFunctionSetResetClause(this):t.visitChildren(this)}},Xn=class extends ga{constructor(t,e){super(t,e)}SHOW(){return this.getToken(cn.SHOW,0)}variableName(){return this.getRuleContext(0,kn)}TIME(){return this.getToken(cn.TIME,0)}ZONE(){return this.getToken(cn.ZONE,0)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}ISOLATION(){return this.getToken(cn.ISOLATION,0)}LEVEL(){return this.getToken(cn.LEVEL,0)}SESSION(){return this.getToken(cn.SESSION,0)}AUTHORIZATION(){return this.getToken(cn.AUTHORIZATION,0)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_variableShowStatement}accept(t){return t.visitVariableShowStatement?t.visitVariableShowStatement(this):t.visitChildren(this)}},Kn=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}CONSTRAINTS(){return this.getToken(cn.CONSTRAINTS,0)}constraintsSetList(){return this.getRuleContext(0,Qn)}constraintsSetMode(){return this.getRuleContext(0,Jn)}get ruleIndex(){return cn.RULE_setConstraintsStatement}accept(t){return t.visitSetConstraintsStatement?t.visitSetConstraintsStatement(this):t.visitChildren(this)}},Qn=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(cn.ALL,0)}qualifiedNameList(){return this.getRuleContext(0,du)}get ruleIndex(){return cn.RULE_constraintsSetList}accept(t){return t.visitConstraintsSetList?t.visitConstraintsSetList(this):t.visitChildren(this)}},Jn=class extends ga{constructor(t,e){super(t,e)}DEFERRED(){return this.getToken(cn.DEFERRED,0)}IMMEDIATE(){return this.getToken(cn.IMMEDIATE,0)}get ruleIndex(){return cn.RULE_constraintsSetMode}accept(t){return t.visitConstraintsSetMode?t.visitConstraintsSetMode(this):t.visitChildren(this)}},Zn=class extends ga{constructor(t,e){super(t,e)}CHECKPOINT(){return this.getToken(cn.CHECKPOINT,0)}get ruleIndex(){return cn.RULE_checkpointStatement}accept(t){return t.visitCheckpointStatement?t.visitCheckpointStatement(this):t.visitChildren(this)}},qn=class extends ga{constructor(t,e){super(t,e)}DISCARD(){return this.getToken(cn.DISCARD,0)}ALL(){return this.getToken(cn.ALL,0)}TEMP(){return this.getToken(cn.TEMP,0)}TEMPORARY(){return this.getToken(cn.TEMPORARY,0)}PLANS(){return this.getToken(cn.PLANS,0)}SEQUENCES(){return this.getToken(cn.SEQUENCES,0)}get ruleIndex(){return cn.RULE_discardStatement}accept(t){return t.visitDiscardStatement?t.visitDiscardStatement(this):t.visitChildren(this)}},jn=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}TABLE(){return this.getToken(cn.TABLE,0)}relationExpression(){return this.getRuleContext(0,eO)}alterTableCommands(){return this.getRuleContext(0,zn)}partitionCommand(){return this.getRuleContext(0,$n)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}ALL(){return this.getToken(cn.ALL,0)}IN_P(){return this.getToken(cn.IN_P,0)}TABLESPACE(t){return void 0===t?this.getTokens(cn.TABLESPACE):this.getToken(cn.TABLESPACE,t)}name(t){return void 0===t?this.getRuleContexts(yu):this.getRuleContext(t,yu)}SET(){return this.getToken(cn.SET,0)}optionalNowait(){return this.getRuleContext(0,qS)}OWNED(){return this.getToken(cn.OWNED,0)}BY(){return this.getToken(cn.BY,0)}roleNameList(){return this.getRuleContext(0,zu)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}indexPartitionCommand(){return this.getRuleContext(0,th)}VIEW(){return this.getToken(cn.VIEW,0)}viewName(){return this.getRuleContext(0,tO)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}qualifiedName(){return this.getRuleContext(0,vu)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}get ruleIndex(){return cn.RULE_alterTableStatement}accept(t){return t.visitAlterTableStatement?t.visitAlterTableStatement(this):t.visitChildren(this)}},zn=class extends ga{constructor(t,e){super(t,e)}alterTableCommand(t){return void 0===t?this.getRuleContexts(eh):this.getRuleContext(t,eh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_alterTableCommands}accept(t){return t.visitAlterTableCommands?t.visitAlterTableCommands(this):t.visitChildren(this)}},$n=class extends ga{constructor(t,e){super(t,e)}ATTACH(){return this.getToken(cn.ATTACH,0)}PARTITION(){return this.getToken(cn.PARTITION,0)}qualifiedName(){return this.getRuleContext(0,vu)}partitionBoundSpecification(){return this.getRuleContext(0,Ah)}DETACH(){return this.getToken(cn.DETACH,0)}get ruleIndex(){return cn.RULE_partitionCommand}accept(t){return t.visitPartitionCommand?t.visitPartitionCommand(this):t.visitChildren(this)}},th=class extends ga{constructor(t,e){super(t,e)}ATTACH(){return this.getToken(cn.ATTACH,0)}PARTITION(){return this.getToken(cn.PARTITION,0)}qualifiedName(){return this.getRuleContext(0,vu)}get ruleIndex(){return cn.RULE_indexPartitionCommand}accept(t){return t.visitIndexPartitionCommand?t.visitIndexPartitionCommand(this):t.visitChildren(this)}},eh=class extends ga{constructor(t,e){super(t,e)}ADD_P(){return this.getToken(cn.ADD_P,0)}columnDefinition(){return this.getRuleContext(0,Bh)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}COLUMN(){return this.getToken(cn.COLUMN,0)}ALTER(){return this.getToken(cn.ALTER,0)}optionalColumn(){return this.getRuleContext(0,hA)}columnId(t){return void 0===t?this.getRuleContexts($u):this.getRuleContext(t,$u)}alterColumnDefault(){return this.getRuleContext(0,sh)}DROP(){return this.getToken(cn.DROP,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}SET(){return this.getToken(cn.SET,0)}EXPRESSION(){return this.getToken(cn.EXPRESSION,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}signedIconst(){return this.getRuleContext(0,qu)}iconst(){return this.getRuleContext(0,Ku)}relOptions(){return this.getRuleContext(0,nh)}RESET(){return this.getToken(cn.RESET,0)}STORAGE(){return this.getToken(cn.STORAGE,0)}GENERATED(){return this.getToken(cn.GENERATED,0)}generatedWhen(){return this.getRuleContext(0,bh)}AS(){return this.getToken(cn.AS,0)}IDENTITY_P(){return this.getToken(cn.IDENTITY_P,0)}optionalParenthesizedSeqOptionsList(){return this.getRuleContext(0,DE)}alterIdentityColumnOptionList(){return this.getRuleContext(0,oh)}optionalDropBehavior(){return this.getRuleContext(0,ah)}optionalSetData(){return this.getRuleContext(0,EA)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}typeName(){return this.getRuleContext(0,LO)}optionalCollateClause(){return this.getRuleContext(0,rh)}alterUsing(){return this.getRuleContext(0,ih)}alterGenericOptions(){return this.getRuleContext(0,zE)}tableConstraint(){return this.getRuleContext(0,Qh)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}constraintName(){return this.getRuleContext(0,Hu)}constraintAttributeElement(t){return void 0===t?this.getRuleContexts(VT):this.getRuleContext(t,VT)}VALIDATE(){return this.getToken(cn.VALIDATE,0)}WITHOUT(){return this.getToken(cn.WITHOUT,0)}OIDS(){return this.getToken(cn.OIDS,0)}CLUSTER(){return this.getToken(cn.CLUSTER,0)}ON(){return this.getToken(cn.ON,0)}name(){return this.getRuleContext(0,yu)}LOGGED(){return this.getToken(cn.LOGGED,0)}UNLOGGED(){return this.getToken(cn.UNLOGGED,0)}ENABLE_P(){return this.getToken(cn.ENABLE_P,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}triggerName(){return this.getRuleContext(0,ku)}ALWAYS(){return this.getToken(cn.ALWAYS,0)}REPLICA(){return this.getToken(cn.REPLICA,0)}ALL(){return this.getToken(cn.ALL,0)}USER(){return this.getToken(cn.USER,0)}DISABLE_P(){return this.getToken(cn.DISABLE_P,0)}RULE(){return this.getToken(cn.RULE,0)}INHERIT(){return this.getToken(cn.INHERIT,0)}qualifiedName(){return this.getRuleContext(0,vu)}NO(){return this.getToken(cn.NO,0)}OF(){return this.getToken(cn.OF,0)}anyName(){return this.getRuleContext(0,mo)}OWNER(){return this.getToken(cn.OWNER,0)}TO(){return this.getToken(cn.TO,0)}roleName(){return this.getRuleContext(0,ju)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}replicaIdentity(){return this.getRuleContext(0,ch)}ROW(){return this.getToken(cn.ROW,0)}LEVEL(){return this.getToken(cn.LEVEL,0)}SECURITY(){return this.getToken(cn.SECURITY,0)}FORCE(){return this.getToken(cn.FORCE,0)}get ruleIndex(){return cn.RULE_alterTableCommand}accept(t){return t.visitAlterTableCommand?t.visitAlterTableCommand(this):t.visitChildren(this)}},sh=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}expression1(){return this.getRuleContext(0,wO)}DROP(){return this.getToken(cn.DROP,0)}get ruleIndex(){return cn.RULE_alterColumnDefault}accept(t){return t.visitAlterColumnDefault?t.visitAlterColumnDefault(this):t.visitChildren(this)}},ah=class extends ga{constructor(t,e){super(t,e)}CASCADE(){return this.getToken(cn.CASCADE,0)}RESTRICT(){return this.getToken(cn.RESTRICT,0)}get ruleIndex(){return cn.RULE_optionalDropBehavior}accept(t){return t.visitOptionalDropBehavior?t.visitOptionalDropBehavior(this):t.visitChildren(this)}},rh=class extends ga{constructor(t,e){super(t,e)}COLLATE(){return this.getToken(cn.COLLATE,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_optionalCollateClause}accept(t){return t.visitOptionalCollateClause?t.visitOptionalCollateClause(this):t.visitChildren(this)}},ih=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_alterUsing}accept(t){return t.visitAlterUsing?t.visitAlterUsing(this):t.visitChildren(this)}},ch=class extends ga{constructor(t,e){super(t,e)}NOTHING(){return this.getToken(cn.NOTHING,0)}FULL(){return this.getToken(cn.FULL,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}USING(){return this.getToken(cn.USING,0)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}get ruleIndex(){return cn.RULE_replicaIdentity}accept(t){return t.visitReplicaIdentity?t.visitReplicaIdentity(this):t.visitChildren(this)}},nh=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}relOptionList(){return this.getRuleContext(0,Eh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_relOptions}accept(t){return t.visitRelOptions?t.visitRelOptions(this):t.visitChildren(this)}},hh=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}relOptions(){return this.getRuleContext(0,nh)}get ruleIndex(){return cn.RULE_optionalRelOptions}accept(t){return t.visitOptionalRelOptions?t.visitOptionalRelOptions(this):t.visitChildren(this)}},Eh=class extends ga{constructor(t,e){super(t,e)}relOptionElem(t){return void 0===t?this.getRuleContexts(Th):this.getRuleContext(t,Th)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_relOptionList}accept(t){return t.visitRelOptionList?t.visitRelOptionList(this):t.visitChildren(this)}},Th=class extends ga{constructor(t,e){super(t,e)}columnLabel(t){return void 0===t?this.getRuleContexts(aN):this.getRuleContext(t,aN)}EQUAL(){return this.getToken(cn.EQUAL,0)}definitionArgument(){return this.getRuleContext(0,eo)}DOT(){return this.getToken(cn.DOT,0)}get ruleIndex(){return cn.RULE_relOptionElem}accept(t){return t.visitRelOptionElem?t.visitRelOptionElem(this):t.visitChildren(this)}},oh=class extends ga{constructor(t,e){super(t,e)}alterIdentityColumnOption(t){return void 0===t?this.getRuleContexts(Rh):this.getRuleContext(t,Rh)}get ruleIndex(){return cn.RULE_alterIdentityColumnOptionList}accept(t){return t.visitAlterIdentityColumnOptionList?t.visitAlterIdentityColumnOptionList(this):t.visitChildren(this)}},Rh=class extends ga{constructor(t,e){super(t,e)}RESTART(){return this.getToken(cn.RESTART,0)}optionalWith(){return this.getRuleContext(0,An)}numericOnly(){return this.getRuleContext(0,xE)}SET(){return this.getToken(cn.SET,0)}sequenceOptionItem(){return this.getRuleContext(0,gE)}GENERATED(){return this.getToken(cn.GENERATED,0)}generatedWhen(){return this.getRuleContext(0,bh)}get ruleIndex(){return cn.RULE_alterIdentityColumnOption}accept(t){return t.visitAlterIdentityColumnOption?t.visitAlterIdentityColumnOption(this):t.visitChildren(this)}},Ah=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}VALUES(){return this.getToken(cn.VALUES,0)}WITH(){return this.getToken(cn.WITH,0)}OPEN_PAREN(t){return void 0===t?this.getTokens(cn.OPEN_PAREN):this.getToken(cn.OPEN_PAREN,t)}hashPartitionBound(){return this.getRuleContext(0,lh)}CLOSE_PAREN(t){return void 0===t?this.getTokens(cn.CLOSE_PAREN):this.getToken(cn.CLOSE_PAREN,t)}IN_P(){return this.getToken(cn.IN_P,0)}expressionList(t){return void 0===t?this.getRuleContexts(ZI):this.getRuleContext(t,ZI)}FROM(){return this.getToken(cn.FROM,0)}TO(){return this.getToken(cn.TO,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_partitionBoundSpecification}accept(t){return t.visitPartitionBoundSpecification?t.visitPartitionBoundSpecification(this):t.visitChildren(this)}},Sh=class extends ga{constructor(t,e){super(t,e)}nonReservedWord(){return this.getRuleContext(0,sN)}iconst(){return this.getRuleContext(0,Ku)}get ruleIndex(){return cn.RULE_hashPartitionBoundElement}accept(t){return t.visitHashPartitionBoundElement?t.visitHashPartitionBoundElement(this):t.visitChildren(this)}},lh=class extends ga{constructor(t,e){super(t,e)}hashPartitionBoundElement(t){return void 0===t?this.getRuleContexts(Sh):this.getRuleContext(t,Sh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_hashPartitionBound}accept(t){return t.visitHashPartitionBound?t.visitHashPartitionBound(this):t.visitChildren(this)}},Oh=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}anyName(){return this.getRuleContext(0,mo)}alterTypeCommands(){return this.getRuleContext(0,Ih)}get ruleIndex(){return cn.RULE_alterCompositeTypeStatement}accept(t){return t.visitAlterCompositeTypeStatement?t.visitAlterCompositeTypeStatement(this):t.visitChildren(this)}},Ih=class extends ga{constructor(t,e){super(t,e)}alterTypeCommand(t){return void 0===t?this.getRuleContexts(uh):this.getRuleContext(t,uh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_alterTypeCommands}accept(t){return t.visitAlterTypeCommands?t.visitAlterTypeCommands(this):t.visitChildren(this)}},uh=class extends ga{constructor(t,e){super(t,e)}ADD_P(){return this.getToken(cn.ADD_P,0)}ATTRIBUTE(){return this.getToken(cn.ATTRIBUTE,0)}tableFunctionElement(){return this.getRuleContext(0,AO)}optionalDropBehavior(){return this.getRuleContext(0,ah)}DROP(){return this.getToken(cn.DROP,0)}columnId(){return this.getRuleContext(0,$u)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}ALTER(){return this.getToken(cn.ALTER,0)}optionalSetData(){return this.getRuleContext(0,EA)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}typeName(){return this.getRuleContext(0,LO)}optionalCollateClause(){return this.getRuleContext(0,rh)}get ruleIndex(){return cn.RULE_alterTypeCommand}accept(t){return t.visitAlterTypeCommand?t.visitAlterTypeCommand(this):t.visitChildren(this)}},Nh=class extends ga{constructor(t,e){super(t,e)}CLOSE(){return this.getToken(cn.CLOSE,0)}cursorName(){return this.getRuleContext(0,al)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_closePortalStatement}accept(t){return t.visitClosePortalStatement?t.visitClosePortalStatement(this):t.visitChildren(this)}},Lh=class extends ga{constructor(t,e){super(t,e)}COPY(){return this.getToken(cn.COPY,0)}qualifiedName(){return this.getRuleContext(0,vu)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}fromOrTo(){return this.getRuleContext(0,Ch)}copyFileName(){return this.getRuleContext(0,_h)}copyDelimiter(){return this.getRuleContext(0,dh)}optionalWith(){return this.getRuleContext(0,An)}copyOptions(){return this.getRuleContext(0,Ph)}whereClause(){return this.getRuleContext(0,EO)}BINARY(){return this.getToken(cn.BINARY,0)}PROGRAM(){return this.getToken(cn.PROGRAM,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}preparableStatement(){return this.getRuleContext(0,DS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}TO(){return this.getToken(cn.TO,0)}get ruleIndex(){return cn.RULE_copyStatement}accept(t){return t.visitCopyStatement?t.visitCopyStatement(this):t.visitChildren(this)}},Ch=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(cn.FROM,0)}TO(){return this.getToken(cn.TO,0)}get ruleIndex(){return cn.RULE_fromOrTo}accept(t){return t.visitFromOrTo?t.visitFromOrTo(this):t.visitChildren(this)}},_h=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}STDIN(){return this.getToken(cn.STDIN,0)}STDOUT(){return this.getToken(cn.STDOUT,0)}get ruleIndex(){return cn.RULE_copyFileName}accept(t){return t.visitCopyFileName?t.visitCopyFileName(this):t.visitChildren(this)}},Ph=class extends ga{constructor(t,e){super(t,e)}copyOptionsItem(t){return void 0===t?this.getRuleContexts(Mh):this.getRuleContext(t,Mh)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}copyGenericOptionList(){return this.getRuleContext(0,Uh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_copyOptions}accept(t){return t.visitCopyOptions?t.visitCopyOptions(this):t.visitChildren(this)}},Mh=class extends ga{constructor(t,e){super(t,e)}BINARY(){return this.getToken(cn.BINARY,0)}FREEZE(){return this.getToken(cn.FREEZE,0)}DELIMITER(){return this.getToken(cn.DELIMITER,0)}optionalAs(){return this.getRuleContext(0,rS)}sconst(){return this.getRuleContext(0,Qu)}NULL_P(){return this.getToken(cn.NULL_P,0)}CSV(){return this.getToken(cn.CSV,0)}HEADER_P(){return this.getToken(cn.HEADER_P,0)}QUOTE(){return this.getToken(cn.QUOTE,0)}ESCAPE(){return this.getToken(cn.ESCAPE,0)}FORCE(){return this.getToken(cn.FORCE,0)}columnList(){return this.getRuleContext(0,qh)}STAR(){return this.getToken(cn.STAR,0)}NOT(){return this.getToken(cn.NOT,0)}ENCODING(){return this.getToken(cn.ENCODING,0)}get ruleIndex(){return cn.RULE_copyOptionsItem}accept(t){return t.visitCopyOptionsItem?t.visitCopyOptionsItem(this):t.visitChildren(this)}},dh=class extends ga{constructor(t,e){super(t,e)}DELIMITERS(){return this.getToken(cn.DELIMITERS,0)}sconst(){return this.getRuleContext(0,Qu)}USING(){return this.getToken(cn.USING,0)}get ruleIndex(){return cn.RULE_copyDelimiter}accept(t){return t.visitCopyDelimiter?t.visitCopyDelimiter(this):t.visitChildren(this)}},Uh=class extends ga{constructor(t,e){super(t,e)}copyGenericOptionElem(t){return void 0===t?this.getRuleContexts(mh):this.getRuleContext(t,mh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_copyGenericOptionList}accept(t){return t.visitCopyGenericOptionList?t.visitCopyGenericOptionList(this):t.visitChildren(this)}},mh=class extends ga{constructor(t,e){super(t,e)}columnLabel(){return this.getRuleContext(0,aN)}copyGenericOptionArgument(){return this.getRuleContext(0,Dh)}get ruleIndex(){return cn.RULE_copyGenericOptionElem}accept(t){return t.visitCopyGenericOptionElem?t.visitCopyGenericOptionElem(this):t.visitChildren(this)}},Dh=class extends ga{constructor(t,e){super(t,e)}booleanOrString(t){return void 0===t?this.getRuleContexts(vn):this.getRuleContext(t,vn)}numericOnly(){return this.getRuleContext(0,xE)}STAR(){return this.getToken(cn.STAR,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_copyGenericOptionArgument}accept(t){return t.visitCopyGenericOptionArgument?t.visitCopyGenericOptionArgument(this):t.visitChildren(this)}},ph=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}temporaryOption(){return this.getRuleContext(0,gh)}TABLE(){return this.getToken(cn.TABLE,0)}qualifiedName(t){return void 0===t?this.getRuleContexts(vu):this.getRuleContext(t,vu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}optionalTableElementList(){return this.getRuleContext(0,xh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}inheritClause(){return this.getRuleContext(0,nE)}optionalPartitionSpecification(){return this.getRuleContext(0,hE)}optionalTableAccessMethodClause(){return this.getRuleContext(0,RE)}with(){return this.getRuleContext(0,AE)}onCommitOption(){return this.getRuleContext(0,SE)}optionalTablespace(){return this.getRuleContext(0,lE)}OF(){return this.getToken(cn.OF,0)}anyName(){return this.getRuleContext(0,mo)}optionalTypedTableElementList(){return this.getRuleContext(0,kh)}PARTITION(){return this.getToken(cn.PARTITION,0)}partitionBoundSpecification(){return this.getRuleContext(0,Ah)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createStatement}accept(t){return t.visitCreateStatement?t.visitCreateStatement(this):t.visitChildren(this)}},gh=class extends ga{constructor(t,e){super(t,e)}TEMPORARY(){return this.getToken(cn.TEMPORARY,0)}TEMP(){return this.getToken(cn.TEMP,0)}LOCAL(){return this.getToken(cn.LOCAL,0)}GLOBAL(){return this.getToken(cn.GLOBAL,0)}UNLOGGED(){return this.getToken(cn.UNLOGGED,0)}get ruleIndex(){return cn.RULE_temporaryOption}accept(t){return t.visitTemporaryOption?t.visitTemporaryOption(this):t.visitChildren(this)}},xh=class extends ga{constructor(t,e){super(t,e)}tableElementList(){return this.getRuleContext(0,Hh)}get ruleIndex(){return cn.RULE_optionalTableElementList}accept(t){return t.visitOptionalTableElementList?t.visitOptionalTableElementList(this):t.visitChildren(this)}},kh=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typedTableElementList(){return this.getRuleContext(0,Gh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalTypedTableElementList}accept(t){return t.visitOptionalTypedTableElementList?t.visitOptionalTypedTableElementList(this):t.visitChildren(this)}},Hh=class extends ga{constructor(t,e){super(t,e)}tableElement(t){return void 0===t?this.getRuleContexts(Fh):this.getRuleContext(t,Fh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_tableElementList}accept(t){return t.visitTableElementList?t.visitTableElementList(this):t.visitChildren(this)}},Gh=class extends ga{constructor(t,e){super(t,e)}typedTableElement(t){return void 0===t?this.getRuleContexts(vh):this.getRuleContext(t,vh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_typedTableElementList}accept(t){return t.visitTypedTableElementList?t.visitTypedTableElementList(this):t.visitChildren(this)}},Fh=class extends ga{constructor(t,e){super(t,e)}tableConstraint(){return this.getRuleContext(0,Qh)}tableLikeClause(){return this.getRuleContext(0,Vh)}columnDefinition(){return this.getRuleContext(0,Bh)}get ruleIndex(){return cn.RULE_tableElement}accept(t){return t.visitTableElement?t.visitTableElement(this):t.visitChildren(this)}},vh=class extends ga{constructor(t,e){super(t,e)}columnOptions(){return this.getRuleContext(0,yh)}tableConstraint(){return this.getRuleContext(0,Qh)}get ruleIndex(){return cn.RULE_typedTableElement}accept(t){return t.visitTypedTableElement?t.visitTypedTableElement(this):t.visitChildren(this)}},Bh=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}typeName(){return this.getRuleContext(0,LO)}createGenericOptions(){return this.getRuleContext(0,qE)}columnQualifierList(){return this.getRuleContext(0,fh)}get ruleIndex(){return cn.RULE_columnDefinition}accept(t){return t.visitColumnDefinition?t.visitColumnDefinition(this):t.visitChildren(this)}},yh=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}columnQualifierList(){return this.getRuleContext(0,fh)}WITH(){return this.getToken(cn.WITH,0)}OPTIONS(){return this.getToken(cn.OPTIONS,0)}get ruleIndex(){return cn.RULE_columnOptions}accept(t){return t.visitColumnOptions?t.visitColumnOptions(this):t.visitChildren(this)}},fh=class extends ga{constructor(t,e){super(t,e)}columnConstraint(t){return void 0===t?this.getRuleContexts(Yh):this.getRuleContext(t,Yh)}get ruleIndex(){return cn.RULE_columnQualifierList}accept(t){return t.visitColumnQualifierList?t.visitColumnQualifierList(this):t.visitChildren(this)}},Yh=class extends ga{constructor(t,e){super(t,e)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}name(){return this.getRuleContext(0,yu)}columnConstraintElement(){return this.getRuleContext(0,wh)}constraintAttribute(){return this.getRuleContext(0,Wh)}COLLATE(){return this.getToken(cn.COLLATE,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_columnConstraint}accept(t){return t.visitColumnConstraint?t.visitColumnConstraint(this):t.visitChildren(this)}},wh=class extends ga{constructor(t,e){super(t,e)}NOT(){return this.getToken(cn.NOT,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}UNIQUE(){return this.getToken(cn.UNIQUE,0)}optionalDefinition(){return this.getRuleContext(0,FR)}usingIndexTablespace(){return this.getRuleContext(0,OE)}PRIMARY(){return this.getToken(cn.PRIMARY,0)}KEY(){return this.getToken(cn.KEY,0)}CHECK(){return this.getToken(cn.CHECK,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}NO(){return this.getToken(cn.NO,0)}INHERIT(){return this.getToken(cn.INHERIT,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}expression2(){return this.getRuleContext(0,hI)}GENERATED(){return this.getToken(cn.GENERATED,0)}generatedWhen(){return this.getRuleContext(0,bh)}AS(){return this.getToken(cn.AS,0)}IDENTITY_P(){return this.getToken(cn.IDENTITY_P,0)}optionalParenthesizedSeqOptionsList(){return this.getRuleContext(0,DE)}STORED(){return this.getToken(cn.STORED,0)}REFERENCES(){return this.getToken(cn.REFERENCES,0)}qualifiedName(){return this.getRuleContext(0,vu)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}matchClause(){return this.getRuleContext(0,$h)}keyActions(){return this.getRuleContext(0,aE)}get ruleIndex(){return cn.RULE_columnConstraintElement}accept(t){return t.visitColumnConstraintElement?t.visitColumnConstraintElement(this):t.visitChildren(this)}},bh=class extends ga{constructor(t,e){super(t,e)}ALWAYS(){return this.getToken(cn.ALWAYS,0)}BY(){return this.getToken(cn.BY,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_generatedWhen}accept(t){return t.visitGeneratedWhen?t.visitGeneratedWhen(this):t.visitChildren(this)}},Wh=class extends ga{constructor(t,e){super(t,e)}DEFERRABLE(){return this.getToken(cn.DEFERRABLE,0)}NOT(){return this.getToken(cn.NOT,0)}INITIALLY(){return this.getToken(cn.INITIALLY,0)}DEFERRED(){return this.getToken(cn.DEFERRED,0)}IMMEDIATE(){return this.getToken(cn.IMMEDIATE,0)}get ruleIndex(){return cn.RULE_constraintAttribute}accept(t){return t.visitConstraintAttribute?t.visitConstraintAttribute(this):t.visitChildren(this)}},Vh=class extends ga{constructor(t,e){super(t,e)}LIKE(){return this.getToken(cn.LIKE,0)}qualifiedName(){return this.getRuleContext(0,vu)}tableLikeOptionList(){return this.getRuleContext(0,Xh)}get ruleIndex(){return cn.RULE_tableLikeClause}accept(t){return t.visitTableLikeClause?t.visitTableLikeClause(this):t.visitChildren(this)}},Xh=class extends ga{constructor(t,e){super(t,e)}tableLikeOption(t){return void 0===t?this.getRuleContexts(Kh):this.getRuleContext(t,Kh)}INCLUDING(t){return void 0===t?this.getTokens(cn.INCLUDING):this.getToken(cn.INCLUDING,t)}EXCLUDING(t){return void 0===t?this.getTokens(cn.EXCLUDING):this.getToken(cn.EXCLUDING,t)}get ruleIndex(){return cn.RULE_tableLikeOptionList}accept(t){return t.visitTableLikeOptionList?t.visitTableLikeOptionList(this):t.visitChildren(this)}},Kh=class extends ga{constructor(t,e){super(t,e)}COMMENTS(){return this.getToken(cn.COMMENTS,0)}CONSTRAINTS(){return this.getToken(cn.CONSTRAINTS,0)}DEFAULTS(){return this.getToken(cn.DEFAULTS,0)}IDENTITY_P(){return this.getToken(cn.IDENTITY_P,0)}GENERATED(){return this.getToken(cn.GENERATED,0)}INDEXES(){return this.getToken(cn.INDEXES,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}STORAGE(){return this.getToken(cn.STORAGE,0)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_tableLikeOption}accept(t){return t.visitTableLikeOption?t.visitTableLikeOption(this):t.visitChildren(this)}},Qh=class extends ga{constructor(t,e){super(t,e)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}name(){return this.getRuleContext(0,yu)}constraintElement(){return this.getRuleContext(0,Jh)}get ruleIndex(){return cn.RULE_tableConstraint}accept(t){return t.visitTableConstraint?t.visitTableConstraint(this):t.visitChildren(this)}},Jh=class extends ga{constructor(t,e){super(t,e)}CHECK(){return this.getToken(cn.CHECK,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}constraintAttributeSpecification(){return this.getRuleContext(0,WT)}UNIQUE(){return this.getToken(cn.UNIQUE,0)}columnList(){return this.getRuleContext(0,qh)}optionalColumnListInclude(){return this.getRuleContext(0,zh)}optionalDefinition(){return this.getRuleContext(0,FR)}usingIndexTablespace(){return this.getRuleContext(0,OE)}existingIndex(){return this.getRuleContext(0,IE)}PRIMARY(){return this.getToken(cn.PRIMARY,0)}KEY(){return this.getToken(cn.KEY,0)}EXCLUDE(){return this.getToken(cn.EXCLUDE,0)}optionalAccessMethodClause(){return this.getRuleContext(0,iR)}exclusionConstraintList(){return this.getRuleContext(0,tE)}exclusionWhereClause(){return this.getRuleContext(0,sE)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}REFERENCES(){return this.getToken(cn.REFERENCES,0)}qualifiedName(){return this.getRuleContext(0,vu)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}matchClause(){return this.getRuleContext(0,$h)}keyActions(){return this.getRuleContext(0,aE)}get ruleIndex(){return cn.RULE_constraintElement}accept(t){return t.visitConstraintElement?t.visitConstraintElement(this):t.visitChildren(this)}},Zh=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}columnList(){return this.getRuleContext(0,qh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_columnListWithParentheses}accept(t){return t.visitColumnListWithParentheses?t.visitColumnListWithParentheses(this):t.visitChildren(this)}},qh=class extends ga{constructor(t,e){super(t,e)}columnElement(t){return void 0===t?this.getRuleContexts(jh):this.getRuleContext(t,jh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_columnList}accept(t){return t.visitColumnList?t.visitColumnList(this):t.visitChildren(this)}},jh=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_columnElement}accept(t){return t.visitColumnElement?t.visitColumnElement(this):t.visitChildren(this)}},zh=class extends ga{constructor(t,e){super(t,e)}INCLUDE(){return this.getToken(cn.INCLUDE,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}columnList(){return this.getRuleContext(0,qh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalColumnListInclude}accept(t){return t.visitOptionalColumnListInclude?t.visitOptionalColumnListInclude(this):t.visitChildren(this)}},$h=class extends ga{constructor(t,e){super(t,e)}MATCH(){return this.getToken(cn.MATCH,0)}FULL(){return this.getToken(cn.FULL,0)}PARTIAL(){return this.getToken(cn.PARTIAL,0)}SIMPLE(){return this.getToken(cn.SIMPLE,0)}get ruleIndex(){return cn.RULE_matchClause}accept(t){return t.visitMatchClause?t.visitMatchClause(this):t.visitChildren(this)}},tE=class extends ga{constructor(t,e){super(t,e)}exclusionConstraintElement(t){return void 0===t?this.getRuleContexts(eE):this.getRuleContext(t,eE)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_exclusionConstraintList}accept(t){return t.visitExclusionConstraintList?t.visitExclusionConstraintList(this):t.visitChildren(this)}},eE=class extends ga{constructor(t,e){super(t,e)}indexElement(){return this.getRuleContext(0,hR)}WITH(){return this.getToken(cn.WITH,0)}anyOperator(){return this.getRuleContext(0,WR)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_exclusionConstraintElement}accept(t){return t.visitExclusionConstraintElement?t.visitExclusionConstraintElement(this):t.visitChildren(this)}},sE=class extends ga{constructor(t,e){super(t,e)}WHERE(){return this.getToken(cn.WHERE,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_exclusionWhereClause}accept(t){return t.visitExclusionWhereClause?t.visitExclusionWhereClause(this):t.visitChildren(this)}},aE=class extends ga{constructor(t,e){super(t,e)}onKeyUpdateClause(){return this.getRuleContext(0,rE)}onKeyDeleteClause(){return this.getRuleContext(0,iE)}get ruleIndex(){return cn.RULE_keyActions}accept(t){return t.visitKeyActions?t.visitKeyActions(this):t.visitChildren(this)}},rE=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(cn.ON,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}keyAction(){return this.getRuleContext(0,cE)}get ruleIndex(){return cn.RULE_onKeyUpdateClause}accept(t){return t.visitOnKeyUpdateClause?t.visitOnKeyUpdateClause(this):t.visitChildren(this)}},iE=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(cn.ON,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}keyAction(){return this.getRuleContext(0,cE)}get ruleIndex(){return cn.RULE_onKeyDeleteClause}accept(t){return t.visitOnKeyDeleteClause?t.visitOnKeyDeleteClause(this):t.visitChildren(this)}},cE=class extends ga{constructor(t,e){super(t,e)}NO(){return this.getToken(cn.NO,0)}ACTION(){return this.getToken(cn.ACTION,0)}RESTRICT(){return this.getToken(cn.RESTRICT,0)}CASCADE(){return this.getToken(cn.CASCADE,0)}SET(){return this.getToken(cn.SET,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_keyAction}accept(t){return t.visitKeyAction?t.visitKeyAction(this):t.visitChildren(this)}},nE=class extends ga{constructor(t,e){super(t,e)}INHERITS(){return this.getToken(cn.INHERITS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}qualifiedNameList(){return this.getRuleContext(0,du)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_inheritClause}accept(t){return t.visitInheritClause?t.visitInheritClause(this):t.visitChildren(this)}},hE=class extends ga{constructor(t,e){super(t,e)}partitionSpecification(){return this.getRuleContext(0,EE)}get ruleIndex(){return cn.RULE_optionalPartitionSpecification}accept(t){return t.visitOptionalPartitionSpecification?t.visitOptionalPartitionSpecification(this):t.visitChildren(this)}},EE=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(cn.PARTITION,0)}BY(){return this.getToken(cn.BY,0)}columnId(){return this.getRuleContext(0,$u)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}partitionElements(){return this.getRuleContext(0,TE)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_partitionSpecification}accept(t){return t.visitPartitionSpecification?t.visitPartitionSpecification(this):t.visitChildren(this)}},TE=class extends ga{constructor(t,e){super(t,e)}partitionElement(t){return void 0===t?this.getRuleContexts(oE):this.getRuleContext(t,oE)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_partitionElements}accept(t){return t.visitPartitionElements?t.visitPartitionElements(this):t.visitChildren(this)}},oE=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}optionalCollate(){return this.getRuleContext(0,TR)}optionalClass(){return this.getRuleContext(0,oR)}functionExpressionWindowless(){return this.getRuleContext(0,OI)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_partitionElement}accept(t){return t.visitPartitionElement?t.visitPartitionElement(this):t.visitChildren(this)}},RE=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_optionalTableAccessMethodClause}accept(t){return t.visitOptionalTableAccessMethodClause?t.visitOptionalTableAccessMethodClause(this):t.visitChildren(this)}},AE=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}relOptions(){return this.getRuleContext(0,nh)}WITHOUT(){return this.getToken(cn.WITHOUT,0)}OIDS(){return this.getToken(cn.OIDS,0)}get ruleIndex(){return cn.RULE_with}accept(t){return t.visitWith?t.visitWith(this):t.visitChildren(this)}},SE=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(cn.ON,0)}COMMIT(){return this.getToken(cn.COMMIT,0)}DROP(){return this.getToken(cn.DROP,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}ROWS(){return this.getToken(cn.ROWS,0)}PRESERVE(){return this.getToken(cn.PRESERVE,0)}get ruleIndex(){return cn.RULE_onCommitOption}accept(t){return t.visitOnCommitOption?t.visitOnCommitOption(this):t.visitChildren(this)}},lE=class extends ga{constructor(t,e){super(t,e)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_optionalTablespace}accept(t){return t.visitOptionalTablespace?t.visitOptionalTablespace(this):t.visitChildren(this)}},OE=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}INDEX(){return this.getToken(cn.INDEX,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_usingIndexTablespace}accept(t){return t.visitUsingIndexTablespace?t.visitUsingIndexTablespace(this):t.visitChildren(this)}},IE=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}get ruleIndex(){return cn.RULE_existingIndex}accept(t){return t.visitExistingIndex?t.visitExistingIndex(this):t.visitChildren(this)}},uE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}anyName(){return this.getRuleContext(0,mo)}optionalNameList(){return this.getRuleContext(0,uS)}ON(){return this.getToken(cn.ON,0)}expressionList(){return this.getRuleContext(0,ZI)}FROM(){return this.getToken(cn.FROM,0)}fromList(){return this.getRuleContext(0,Xl)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createStatsStatement}accept(t){return t.visitCreateStatsStatement?t.visitCreateStatsStatement(this):t.visitChildren(this)}},NE=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}STATISTICS(t){return void 0===t?this.getTokens(cn.STATISTICS):this.getToken(cn.STATISTICS,t)}anyName(){return this.getRuleContext(0,mo)}SET(){return this.getToken(cn.SET,0)}signedIconst(){return this.getRuleContext(0,qu)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_alterStatsStatement}accept(t){return t.visitAlterStatsStatement?t.visitAlterStatsStatement(this):t.visitChildren(this)}},LE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}temporaryOption(){return this.getRuleContext(0,gh)}TABLE(){return this.getToken(cn.TABLE,0)}createAsTarget(){return this.getRuleContext(0,CE)}AS(){return this.getToken(cn.AS,0)}selectStatement(){return this.getRuleContext(0,il)}withData(){return this.getRuleContext(0,_E)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createAsStatement}accept(t){return t.visitCreateAsStatement?t.visitCreateAsStatement(this):t.visitChildren(this)}},CE=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}optionalTableAccessMethodClause(){return this.getRuleContext(0,RE)}with(){return this.getRuleContext(0,AE)}onCommitOption(){return this.getRuleContext(0,SE)}optionalTablespace(){return this.getRuleContext(0,lE)}get ruleIndex(){return cn.RULE_createAsTarget}accept(t){return t.visitCreateAsTarget?t.visitCreateAsTarget(this):t.visitChildren(this)}},_E=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}NO(){return this.getToken(cn.NO,0)}get ruleIndex(){return cn.RULE_withData}accept(t){return t.visitWithData?t.visitWithData(this):t.visitChildren(this)}},PE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}VIEW(){return this.getToken(cn.VIEW,0)}createMaterializedViewTarget(){return this.getRuleContext(0,ME)}AS(){return this.getToken(cn.AS,0)}selectStatement(){return this.getRuleContext(0,il)}withData(){return this.getRuleContext(0,_E)}UNLOGGED(){return this.getToken(cn.UNLOGGED,0)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createMaterializedViewStatement}accept(t){return t.visitCreateMaterializedViewStatement?t.visitCreateMaterializedViewStatement(this):t.visitChildren(this)}},ME=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}optionalTableAccessMethodClause(){return this.getRuleContext(0,RE)}optionalRelOptions(){return this.getRuleContext(0,hh)}optionalTablespace(){return this.getRuleContext(0,lE)}get ruleIndex(){return cn.RULE_createMaterializedViewTarget}accept(t){return t.visitCreateMaterializedViewTarget?t.visitCreateMaterializedViewTarget(this):t.visitChildren(this)}},dE=class extends ga{constructor(t,e){super(t,e)}REFRESH(){return this.getToken(cn.REFRESH,0)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}VIEW(){return this.getToken(cn.VIEW,0)}qualifiedName(){return this.getRuleContext(0,vu)}withData(){return this.getRuleContext(0,_E)}CONCURRENTLY(){return this.getToken(cn.CONCURRENTLY,0)}get ruleIndex(){return cn.RULE_refreshMaterializedViewStatement}accept(t){return t.visitRefreshMaterializedViewStatement?t.visitRefreshMaterializedViewStatement(this):t.visitChildren(this)}},UE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}temporaryOption(){return this.getRuleContext(0,gh)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}qualifiedName(){return this.getRuleContext(0,vu)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}sequenceOptionList(){return this.getRuleContext(0,pE)}get ruleIndex(){return cn.RULE_createSequenceStatement}accept(t){return t.visitCreateSequenceStatement?t.visitCreateSequenceStatement(this):t.visitChildren(this)}},mE=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceName(){return this.getRuleContext(0,Gu)}sequenceOptionList(){return this.getRuleContext(0,pE)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_alterSequenceStatement}accept(t){return t.visitAlterSequenceStatement?t.visitAlterSequenceStatement(this):t.visitChildren(this)}},DE=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}sequenceOptionList(){return this.getRuleContext(0,pE)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalParenthesizedSeqOptionsList}accept(t){return t.visitOptionalParenthesizedSeqOptionsList?t.visitOptionalParenthesizedSeqOptionsList(this):t.visitChildren(this)}},pE=class extends ga{constructor(t,e){super(t,e)}sequenceOptionItem(t){return void 0===t?this.getRuleContexts(gE):this.getRuleContext(t,gE)}get ruleIndex(){return cn.RULE_sequenceOptionList}accept(t){return t.visitSequenceOptionList?t.visitSequenceOptionList(this):t.visitChildren(this)}},gE=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(cn.AS,0)}simpleTypeName(){return this.getRuleContext(0,CO)}CACHE(){return this.getToken(cn.CACHE,0)}numericOnly(){return this.getRuleContext(0,xE)}CYCLE(){return this.getToken(cn.CYCLE,0)}INCREMENT(){return this.getToken(cn.INCREMENT,0)}BY(){return this.getToken(cn.BY,0)}MAXVALUE(){return this.getToken(cn.MAXVALUE,0)}MINVALUE(){return this.getToken(cn.MINVALUE,0)}NO(){return this.getToken(cn.NO,0)}OWNED(){return this.getToken(cn.OWNED,0)}anyName(){return this.getRuleContext(0,mo)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}NAME_P(){return this.getToken(cn.NAME_P,0)}START(){return this.getToken(cn.START,0)}optionalWith(){return this.getRuleContext(0,An)}RESTART(){return this.getToken(cn.RESTART,0)}get ruleIndex(){return cn.RULE_sequenceOptionItem}accept(t){return t.visitSequenceOptionItem?t.visitSequenceOptionItem(this):t.visitChildren(this)}},xE=class extends ga{constructor(t,e){super(t,e)}fconst(){return this.getRuleContext(0,Xu)}PLUS(){return this.getToken(cn.PLUS,0)}MINUS(){return this.getToken(cn.MINUS,0)}signedIconst(){return this.getRuleContext(0,qu)}get ruleIndex(){return cn.RULE_numericOnly}accept(t){return t.visitNumericOnly?t.visitNumericOnly(this):t.visitChildren(this)}},kE=class extends ga{constructor(t,e){super(t,e)}numericOnly(t){return void 0===t?this.getRuleContexts(xE):this.getRuleContext(t,xE)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_numericOnlyList}accept(t){return t.visitNumericOnlyList?t.visitNumericOnlyList(this):t.visitChildren(this)}},HE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}optionalOrReplace(){return this.getRuleContext(0,lR)}optionalProcedural(){return this.getRuleContext(0,BE)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}name(){return this.getRuleContext(0,yu)}TRUSTED(){return this.getToken(cn.TRUSTED,0)}HANDLER(){return this.getToken(cn.HANDLER,0)}handlerName(){return this.getRuleContext(0,GE)}optionalInlineHandler(){return this.getRuleContext(0,FE)}validatorClause(){return this.getRuleContext(0,vE)}get ruleIndex(){return cn.RULE_createProcedureLangStatement}accept(t){return t.visitCreateProcedureLangStatement?t.visitCreateProcedureLangStatement(this):t.visitChildren(this)}},GE=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}attributes(){return this.getRuleContext(0,Do)}get ruleIndex(){return cn.RULE_handlerName}accept(t){return t.visitHandlerName?t.visitHandlerName(this):t.visitChildren(this)}},FE=class extends ga{constructor(t,e){super(t,e)}INLINE_P(){return this.getToken(cn.INLINE_P,0)}handlerName(){return this.getRuleContext(0,GE)}get ruleIndex(){return cn.RULE_optionalInlineHandler}accept(t){return t.visitOptionalInlineHandler?t.visitOptionalInlineHandler(this):t.visitChildren(this)}},vE=class extends ga{constructor(t,e){super(t,e)}VALIDATOR(){return this.getToken(cn.VALIDATOR,0)}handlerName(){return this.getRuleContext(0,GE)}NO(){return this.getToken(cn.NO,0)}get ruleIndex(){return cn.RULE_validatorClause}accept(t){return t.visitValidatorClause?t.visitValidatorClause(this):t.visitChildren(this)}},BE=class extends ga{constructor(t,e){super(t,e)}PROCEDURAL(){return this.getToken(cn.PROCEDURAL,0)}get ruleIndex(){return cn.RULE_optionalProcedural}accept(t){return t.visitOptionalProcedural?t.visitOptionalProcedural(this):t.visitChildren(this)}},yE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}name(){return this.getRuleContext(0,yu)}optionalTablespaceOwner(){return this.getRuleContext(0,fE)}LOCATION(){return this.getToken(cn.LOCATION,0)}sconst(){return this.getRuleContext(0,Qu)}optionalRelOptions(){return this.getRuleContext(0,hh)}get ruleIndex(){return cn.RULE_createTablespaceStatement}accept(t){return t.visitCreateTablespaceStatement?t.visitCreateTablespaceStatement(this):t.visitChildren(this)}},fE=class extends ga{constructor(t,e){super(t,e)}OWNER(){return this.getToken(cn.OWNER,0)}roleName(){return this.getRuleContext(0,ju)}get ruleIndex(){return cn.RULE_optionalTablespaceOwner}accept(t){return t.visitOptionalTablespaceOwner?t.visitOptionalTablespaceOwner(this):t.visitChildren(this)}},YE=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}name(){return this.getRuleContext(0,yu)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_dropTablespaceStatement}accept(t){return t.visitDropTablespaceStatement?t.visitDropTablespaceStatement(this):t.visitChildren(this)}},wE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}name(){return this.getRuleContext(0,yu)}optionalWith(){return this.getRuleContext(0,An)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}createExtensionOptionItem(t){return void 0===t?this.getRuleContexts(bE):this.getRuleContext(t,bE)}get ruleIndex(){return cn.RULE_createExtensionStatement}accept(t){return t.visitCreateExtensionStatement?t.visitCreateExtensionStatement(this):t.visitChildren(this)}},bE=class extends ga{constructor(t,e){super(t,e)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}VERSION_P(){return this.getToken(cn.VERSION_P,0)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}FROM(){return this.getToken(cn.FROM,0)}CASCADE(){return this.getToken(cn.CASCADE,0)}get ruleIndex(){return cn.RULE_createExtensionOptionItem}accept(t){return t.visitCreateExtensionOptionItem?t.visitCreateExtensionOptionItem(this):t.visitChildren(this)}},WE=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}name(){return this.getRuleContext(0,yu)}UPDATE(){return this.getToken(cn.UPDATE,0)}alterExtensionOptionItem(t){return void 0===t?this.getRuleContexts(VE):this.getRuleContext(t,VE)}get ruleIndex(){return cn.RULE_alterExtensionStatement}accept(t){return t.visitAlterExtensionStatement?t.visitAlterExtensionStatement(this):t.visitChildren(this)}},VE=class extends ga{constructor(t,e){super(t,e)}TO(){return this.getToken(cn.TO,0)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}get ruleIndex(){return cn.RULE_alterExtensionOptionItem}accept(t){return t.visitAlterExtensionOptionItem?t.visitAlterExtensionOptionItem(this):t.visitChildren(this)}},XE=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}name(t){return void 0===t?this.getRuleContexts(yu):this.getRuleContext(t,yu)}addOrDrop(){return this.getRuleContext(0,Pn)}objectTypeName(){return this.getRuleContext(0,_o)}ROLE(){return this.getToken(cn.ROLE,0)}roleName(){return this.getRuleContext(0,ju)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}objectTypeAnyName(){return this.getRuleContext(0,Co)}anyName(){return this.getRuleContext(0,mo)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceName(){return this.getRuleContext(0,Gu)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypes(){return this.getRuleContext(0,DR)}CAST(){return this.getToken(cn.CAST,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}AS(){return this.getToken(cn.AS,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}operatorWithArgumentTypes(){return this.getRuleContext(0,XR)}CLASS(){return this.getToken(cn.CLASS,0)}USING(){return this.getToken(cn.USING,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}TRANSFORM(){return this.getToken(cn.TRANSFORM,0)}FOR(){return this.getToken(cn.FOR,0)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}get ruleIndex(){return cn.RULE_alterExtensionContentsStatement}accept(t){return t.visitAlterExtensionContentsStatement?t.visitAlterExtensionContentsStatement(this):t.visitChildren(this)}},KE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}name(){return this.getRuleContext(0,yu)}createGenericOptions(){return this.getRuleContext(0,qE)}forwardOptions(){return this.getRuleContext(0,JE)}get ruleIndex(){return cn.RULE_createForeignDataWrapperStatement}accept(t){return t.visitCreateForeignDataWrapperStatement?t.visitCreateForeignDataWrapperStatement(this):t.visitChildren(this)}},QE=class extends ga{constructor(t,e){super(t,e)}HANDLER(){return this.getToken(cn.HANDLER,0)}handlerName(){return this.getRuleContext(0,GE)}NO(){return this.getToken(cn.NO,0)}VALIDATOR(){return this.getToken(cn.VALIDATOR,0)}get ruleIndex(){return cn.RULE_forwardOption}accept(t){return t.visitForwardOption?t.visitForwardOption(this):t.visitChildren(this)}},JE=class extends ga{constructor(t,e){super(t,e)}forwardOption(t){return void 0===t?this.getRuleContexts(QE):this.getRuleContext(t,QE)}get ruleIndex(){return cn.RULE_forwardOptions}accept(t){return t.visitForwardOptions?t.visitForwardOptions(this):t.visitChildren(this)}},ZE=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}name(){return this.getRuleContext(0,yu)}alterGenericOptions(){return this.getRuleContext(0,zE)}forwardOptions(){return this.getRuleContext(0,JE)}get ruleIndex(){return cn.RULE_alterForeignDataWrapperStatement}accept(t){return t.visitAlterForeignDataWrapperStatement?t.visitAlterForeignDataWrapperStatement(this):t.visitChildren(this)}},qE=class extends ga{constructor(t,e){super(t,e)}OPTIONS(){return this.getToken(cn.OPTIONS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}genericOptionList(){return this.getRuleContext(0,jE)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_createGenericOptions}accept(t){return t.visitCreateGenericOptions?t.visitCreateGenericOptions(this):t.visitChildren(this)}},jE=class extends ga{constructor(t,e){super(t,e)}genericOptionElement(t){return void 0===t?this.getRuleContexts(eT):this.getRuleContext(t,eT)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_genericOptionList}accept(t){return t.visitGenericOptionList?t.visitGenericOptionList(this):t.visitChildren(this)}},zE=class extends ga{constructor(t,e){super(t,e)}OPTIONS(){return this.getToken(cn.OPTIONS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}alterGenericOptionList(){return this.getRuleContext(0,$E)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_alterGenericOptions}accept(t){return t.visitAlterGenericOptions?t.visitAlterGenericOptions(this):t.visitChildren(this)}},$E=class extends ga{constructor(t,e){super(t,e)}alterGenericOptionElem(t){return void 0===t?this.getRuleContexts(tT):this.getRuleContext(t,tT)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_alterGenericOptionList}accept(t){return t.visitAlterGenericOptionList?t.visitAlterGenericOptionList(this):t.visitChildren(this)}},tT=class extends ga{constructor(t,e){super(t,e)}genericOptionElement(){return this.getRuleContext(0,eT)}SET(){return this.getToken(cn.SET,0)}ADD_P(){return this.getToken(cn.ADD_P,0)}DROP(){return this.getToken(cn.DROP,0)}genericOptionName(){return this.getRuleContext(0,sT)}get ruleIndex(){return cn.RULE_alterGenericOptionElem}accept(t){return t.visitAlterGenericOptionElem?t.visitAlterGenericOptionElem(this):t.visitChildren(this)}},eT=class extends ga{constructor(t,e){super(t,e)}genericOptionName(){return this.getRuleContext(0,sT)}genericOptionArgument(){return this.getRuleContext(0,aT)}get ruleIndex(){return cn.RULE_genericOptionElement}accept(t){return t.visitGenericOptionElement?t.visitGenericOptionElement(this):t.visitChildren(this)}},sT=class extends ga{constructor(t,e){super(t,e)}columnLabel(){return this.getRuleContext(0,aN)}get ruleIndex(){return cn.RULE_genericOptionName}accept(t){return t.visitGenericOptionName?t.visitGenericOptionName(this):t.visitChildren(this)}},aT=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_genericOptionArgument}accept(t){return t.visitGenericOptionArgument?t.visitGenericOptionArgument(this):t.visitChildren(this)}},rT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}SERVER(){return this.getToken(cn.SERVER,0)}name(t){return void 0===t?this.getRuleContexts(yu):this.getRuleContext(t,yu)}optionalType(){return this.getRuleContext(0,iT)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}createGenericOptions(){return this.getRuleContext(0,qE)}foreignServerVersion(){return this.getRuleContext(0,cT)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createForeignServerStatement}accept(t){return t.visitCreateForeignServerStatement?t.visitCreateForeignServerStatement(this):t.visitChildren(this)}},iT=class extends ga{constructor(t,e){super(t,e)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_optionalType}accept(t){return t.visitOptionalType?t.visitOptionalType(this):t.visitChildren(this)}},cT=class extends ga{constructor(t,e){super(t,e)}VERSION_P(){return this.getToken(cn.VERSION_P,0)}sconst(){return this.getRuleContext(0,Qu)}NULL_P(){return this.getToken(cn.NULL_P,0)}get ruleIndex(){return cn.RULE_foreignServerVersion}accept(t){return t.visitForeignServerVersion?t.visitForeignServerVersion(this):t.visitChildren(this)}},nT=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}SERVER(){return this.getToken(cn.SERVER,0)}name(){return this.getRuleContext(0,yu)}alterGenericOptions(){return this.getRuleContext(0,zE)}foreignServerVersion(){return this.getRuleContext(0,cT)}get ruleIndex(){return cn.RULE_alterForeignServerStatement}accept(t){return t.visitAlterForeignServerStatement?t.visitAlterForeignServerStatement(this):t.visitChildren(this)}},hT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}TABLE(){return this.getToken(cn.TABLE,0)}qualifiedName(t){return void 0===t?this.getRuleContexts(vu):this.getRuleContext(t,vu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}optionalTableElementList(){return this.getRuleContext(0,xh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}inheritClause(){return this.getRuleContext(0,nE)}SERVER(){return this.getToken(cn.SERVER,0)}name(){return this.getRuleContext(0,yu)}createGenericOptions(){return this.getRuleContext(0,qE)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}PARTITION(){return this.getToken(cn.PARTITION,0)}OF(){return this.getToken(cn.OF,0)}optionalTypedTableElementList(){return this.getRuleContext(0,kh)}partitionBoundSpecification(){return this.getRuleContext(0,Ah)}get ruleIndex(){return cn.RULE_createForeignTableStatement}accept(t){return t.visitCreateForeignTableStatement?t.visitCreateForeignTableStatement(this):t.visitChildren(this)}},ET=class extends ga{constructor(t,e){super(t,e)}IMPORT_P(){return this.getToken(cn.IMPORT_P,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}name(t){return void 0===t?this.getRuleContexts(yu):this.getRuleContext(t,yu)}importQualification(){return this.getRuleContext(0,oT)}FROM(){return this.getToken(cn.FROM,0)}SERVER(){return this.getToken(cn.SERVER,0)}INTO(){return this.getToken(cn.INTO,0)}createGenericOptions(){return this.getRuleContext(0,qE)}get ruleIndex(){return cn.RULE_importForeignSchemaStatement}accept(t){return t.visitImportForeignSchemaStatement?t.visitImportForeignSchemaStatement(this):t.visitChildren(this)}},TT=class extends ga{constructor(t,e){super(t,e)}LIMIT(){return this.getToken(cn.LIMIT,0)}TO(){return this.getToken(cn.TO,0)}EXCEPT(){return this.getToken(cn.EXCEPT,0)}get ruleIndex(){return cn.RULE_importQualificationType}accept(t){return t.visitImportQualificationType?t.visitImportQualificationType(this):t.visitChildren(this)}},oT=class extends ga{constructor(t,e){super(t,e)}importQualificationType(){return this.getRuleContext(0,TT)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}relationExpressionList(){return this.getRuleContext(0,sO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_importQualification}accept(t){return t.visitImportQualification?t.visitImportQualification(this):t.visitChildren(this)}},RT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}USER(){return this.getToken(cn.USER,0)}MAPPING(){return this.getToken(cn.MAPPING,0)}FOR(){return this.getToken(cn.FOR,0)}authIdentifier(){return this.getRuleContext(0,AT)}SERVER(){return this.getToken(cn.SERVER,0)}name(){return this.getRuleContext(0,yu)}createGenericOptions(){return this.getRuleContext(0,qE)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createUserMappingStatement}accept(t){return t.visitCreateUserMappingStatement?t.visitCreateUserMappingStatement(this):t.visitChildren(this)}},AT=class extends ga{constructor(t,e){super(t,e)}roleName(){return this.getRuleContext(0,ju)}USER(){return this.getToken(cn.USER,0)}get ruleIndex(){return cn.RULE_authIdentifier}accept(t){return t.visitAuthIdentifier?t.visitAuthIdentifier(this):t.visitChildren(this)}},ST=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}USER(){return this.getToken(cn.USER,0)}MAPPING(){return this.getToken(cn.MAPPING,0)}FOR(){return this.getToken(cn.FOR,0)}authIdentifier(){return this.getRuleContext(0,AT)}SERVER(){return this.getToken(cn.SERVER,0)}name(){return this.getRuleContext(0,yu)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_dropUserMappingStatement}accept(t){return t.visitDropUserMappingStatement?t.visitDropUserMappingStatement(this):t.visitChildren(this)}},lT=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}USER(){return this.getToken(cn.USER,0)}MAPPING(){return this.getToken(cn.MAPPING,0)}FOR(){return this.getToken(cn.FOR,0)}authIdentifier(){return this.getRuleContext(0,AT)}SERVER(){return this.getToken(cn.SERVER,0)}name(){return this.getRuleContext(0,yu)}alterGenericOptions(){return this.getRuleContext(0,zE)}get ruleIndex(){return cn.RULE_alterUserMappingStatement}accept(t){return t.visitAlterUserMappingStatement?t.visitAlterUserMappingStatement(this):t.visitChildren(this)}},OT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}POLICY(){return this.getToken(cn.POLICY,0)}name(){return this.getRuleContext(0,yu)}ON(){return this.getToken(cn.ON,0)}qualifiedName(){return this.getRuleContext(0,vu)}rowSecurityDefaultPermissive(){return this.getRuleContext(0,CT)}rowSecurityDefaultForCmd(){return this.getRuleContext(0,_T)}rowSecurityOptionalToUser(){return this.getRuleContext(0,LT)}rowSecurityOptionalExpression(){return this.getRuleContext(0,uT)}rowSecurityOptionalWithCheck(){return this.getRuleContext(0,NT)}get ruleIndex(){return cn.RULE_createPolicyStatement}accept(t){return t.visitCreatePolicyStatement?t.visitCreatePolicyStatement(this):t.visitChildren(this)}},IT=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}POLICY(){return this.getToken(cn.POLICY,0)}name(){return this.getRuleContext(0,yu)}ON(){return this.getToken(cn.ON,0)}qualifiedName(){return this.getRuleContext(0,vu)}rowSecurityOptionalToUser(){return this.getRuleContext(0,LT)}rowSecurityOptionalExpression(){return this.getRuleContext(0,uT)}rowSecurityOptionalWithCheck(){return this.getRuleContext(0,NT)}get ruleIndex(){return cn.RULE_alterPolicyStatement}accept(t){return t.visitAlterPolicyStatement?t.visitAlterPolicyStatement(this):t.visitChildren(this)}},uT=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_rowSecurityOptionalExpression}accept(t){return t.visitRowSecurityOptionalExpression?t.visitRowSecurityOptionalExpression(this):t.visitChildren(this)}},NT=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}CHECK(){return this.getToken(cn.CHECK,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_rowSecurityOptionalWithCheck}accept(t){return t.visitRowSecurityOptionalWithCheck?t.visitRowSecurityOptionalWithCheck(this):t.visitChildren(this)}},LT=class extends ga{constructor(t,e){super(t,e)}TO(){return this.getToken(cn.TO,0)}roleNameList(){return this.getRuleContext(0,zu)}get ruleIndex(){return cn.RULE_rowSecurityOptionalToUser}accept(t){return t.visitRowSecurityOptionalToUser?t.visitRowSecurityOptionalToUser(this):t.visitChildren(this)}},CT=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(cn.AS,0)}identifier(){return this.getRuleContext(0,rN)}get ruleIndex(){return cn.RULE_rowSecurityDefaultPermissive}accept(t){return t.visitRowSecurityDefaultPermissive?t.visitRowSecurityDefaultPermissive(this):t.visitChildren(this)}},_T=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}rowSecurityCommand(){return this.getRuleContext(0,PT)}get ruleIndex(){return cn.RULE_rowSecurityDefaultForCmd}accept(t){return t.visitRowSecurityDefaultForCmd?t.visitRowSecurityDefaultForCmd(this):t.visitChildren(this)}},PT=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(cn.ALL,0)}SELECT(){return this.getToken(cn.SELECT,0)}INSERT(){return this.getToken(cn.INSERT,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}get ruleIndex(){return cn.RULE_rowSecurityCommand}accept(t){return t.visitRowSecurityCommand?t.visitRowSecurityCommand(this):t.visitChildren(this)}},MT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}ACCESS(){return this.getToken(cn.ACCESS,0)}METHOD(){return this.getToken(cn.METHOD,0)}name(){return this.getRuleContext(0,yu)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}accessMethodType(){return this.getRuleContext(0,dT)}HANDLER(){return this.getToken(cn.HANDLER,0)}handlerName(){return this.getRuleContext(0,GE)}get ruleIndex(){return cn.RULE_createAccessMethodStatement}accept(t){return t.visitCreateAccessMethodStatement?t.visitCreateAccessMethodStatement(this):t.visitChildren(this)}},dT=class extends ga{constructor(t,e){super(t,e)}INDEX(){return this.getToken(cn.INDEX,0)}TABLE(){return this.getToken(cn.TABLE,0)}get ruleIndex(){return cn.RULE_accessMethodType}accept(t){return t.visitAccessMethodType?t.visitAccessMethodType(this):t.visitChildren(this)}},UT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}name(){return this.getRuleContext(0,yu)}triggerActionTime(){return this.getRuleContext(0,mT)}triggerEvents(){return this.getRuleContext(0,DT)}ON(){return this.getToken(cn.ON,0)}qualifiedName(){return this.getRuleContext(0,vu)}triggerReferencing(){return this.getRuleContext(0,gT)}triggerForSpec(){return this.getRuleContext(0,vT)}triggerWhen(){return this.getRuleContext(0,yT)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}functionOrProcedure(){return this.getRuleContext(0,fT)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}triggerFunctionArguments(){return this.getRuleContext(0,YT)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}AFTER(){return this.getToken(cn.AFTER,0)}optionalConstraintFromTable(){return this.getRuleContext(0,bT)}constraintAttributeSpecification(){return this.getRuleContext(0,WT)}FOR(){return this.getToken(cn.FOR,0)}EACH(){return this.getToken(cn.EACH,0)}ROW(){return this.getToken(cn.ROW,0)}get ruleIndex(){return cn.RULE_createTriggerStatement}accept(t){return t.visitCreateTriggerStatement?t.visitCreateTriggerStatement(this):t.visitChildren(this)}},mT=class extends ga{constructor(t,e){super(t,e)}BEFORE(){return this.getToken(cn.BEFORE,0)}AFTER(){return this.getToken(cn.AFTER,0)}INSTEAD(){return this.getToken(cn.INSTEAD,0)}OF(){return this.getToken(cn.OF,0)}get ruleIndex(){return cn.RULE_triggerActionTime}accept(t){return t.visitTriggerActionTime?t.visitTriggerActionTime(this):t.visitChildren(this)}},DT=class extends ga{constructor(t,e){super(t,e)}triggerOneEvent(t){return void 0===t?this.getRuleContexts(pT):this.getRuleContext(t,pT)}OR(t){return void 0===t?this.getTokens(cn.OR):this.getToken(cn.OR,t)}get ruleIndex(){return cn.RULE_triggerEvents}accept(t){return t.visitTriggerEvents?t.visitTriggerEvents(this):t.visitChildren(this)}},pT=class extends ga{constructor(t,e){super(t,e)}INSERT(){return this.getToken(cn.INSERT,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}OF(){return this.getToken(cn.OF,0)}columnList(){return this.getRuleContext(0,qh)}TRUNCATE(){return this.getToken(cn.TRUNCATE,0)}get ruleIndex(){return cn.RULE_triggerOneEvent}accept(t){return t.visitTriggerOneEvent?t.visitTriggerOneEvent(this):t.visitChildren(this)}},gT=class extends ga{constructor(t,e){super(t,e)}REFERENCING(){return this.getToken(cn.REFERENCING,0)}triggerTransitions(){return this.getRuleContext(0,xT)}get ruleIndex(){return cn.RULE_triggerReferencing}accept(t){return t.visitTriggerReferencing?t.visitTriggerReferencing(this):t.visitChildren(this)}},xT=class extends ga{constructor(t,e){super(t,e)}triggerTransition(t){return void 0===t?this.getRuleContexts(kT):this.getRuleContext(t,kT)}get ruleIndex(){return cn.RULE_triggerTransitions}accept(t){return t.visitTriggerTransitions?t.visitTriggerTransitions(this):t.visitChildren(this)}},kT=class extends ga{constructor(t,e){super(t,e)}transitionOldOrNew(){return this.getRuleContext(0,HT)}transitionRowOrTable(){return this.getRuleContext(0,GT)}optionalAs(){return this.getRuleContext(0,rS)}transitionRelName(){return this.getRuleContext(0,FT)}get ruleIndex(){return cn.RULE_triggerTransition}accept(t){return t.visitTriggerTransition?t.visitTriggerTransition(this):t.visitChildren(this)}},HT=class extends ga{constructor(t,e){super(t,e)}NEW(){return this.getToken(cn.NEW,0)}OLD(){return this.getToken(cn.OLD,0)}get ruleIndex(){return cn.RULE_transitionOldOrNew}accept(t){return t.visitTransitionOldOrNew?t.visitTransitionOldOrNew(this):t.visitChildren(this)}},GT=class extends ga{constructor(t,e){super(t,e)}TABLE(){return this.getToken(cn.TABLE,0)}ROW(){return this.getToken(cn.ROW,0)}get ruleIndex(){return cn.RULE_transitionRowOrTable}accept(t){return t.visitTransitionRowOrTable?t.visitTransitionRowOrTable(this):t.visitChildren(this)}},FT=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_transitionRelName}accept(t){return t.visitTransitionRelName?t.visitTransitionRelName(this):t.visitChildren(this)}},vT=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}triggerForType(){return this.getRuleContext(0,BT)}EACH(){return this.getToken(cn.EACH,0)}get ruleIndex(){return cn.RULE_triggerForSpec}accept(t){return t.visitTriggerForSpec?t.visitTriggerForSpec(this):t.visitChildren(this)}},BT=class extends ga{constructor(t,e){super(t,e)}ROW(){return this.getToken(cn.ROW,0)}STATEMENT(){return this.getToken(cn.STATEMENT,0)}get ruleIndex(){return cn.RULE_triggerForType}accept(t){return t.visitTriggerForType?t.visitTriggerForType(this):t.visitChildren(this)}},yT=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_triggerWhen}accept(t){return t.visitTriggerWhen?t.visitTriggerWhen(this):t.visitChildren(this)}},fT=class extends ga{constructor(t,e){super(t,e)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}get ruleIndex(){return cn.RULE_functionOrProcedure}accept(t){return t.visitFunctionOrProcedure?t.visitFunctionOrProcedure(this):t.visitChildren(this)}},YT=class extends ga{constructor(t,e){super(t,e)}triggerFunctionArgument(t){return void 0===t?this.getRuleContexts(wT):this.getRuleContext(t,wT)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_triggerFunctionArguments}accept(t){return t.visitTriggerFunctionArguments?t.visitTriggerFunctionArguments(this):t.visitChildren(this)}},wT=class extends ga{constructor(t,e){super(t,e)}iconst(){return this.getRuleContext(0,Ku)}fconst(){return this.getRuleContext(0,Xu)}sconst(){return this.getRuleContext(0,Qu)}columnLabel(){return this.getRuleContext(0,aN)}get ruleIndex(){return cn.RULE_triggerFunctionArgument}accept(t){return t.visitTriggerFunctionArgument?t.visitTriggerFunctionArgument(this):t.visitChildren(this)}},bT=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(cn.FROM,0)}qualifiedName(){return this.getRuleContext(0,vu)}get ruleIndex(){return cn.RULE_optionalConstraintFromTable}accept(t){return t.visitOptionalConstraintFromTable?t.visitOptionalConstraintFromTable(this):t.visitChildren(this)}},WT=class extends ga{constructor(t,e){super(t,e)}constraintAttributeElement(t){return void 0===t?this.getRuleContexts(VT):this.getRuleContext(t,VT)}get ruleIndex(){return cn.RULE_constraintAttributeSpecification}accept(t){return t.visitConstraintAttributeSpecification?t.visitConstraintAttributeSpecification(this):t.visitChildren(this)}},VT=class extends ga{constructor(t,e){super(t,e)}NOT(){return this.getToken(cn.NOT,0)}DEFERRABLE(){return this.getToken(cn.DEFERRABLE,0)}INITIALLY(){return this.getToken(cn.INITIALLY,0)}IMMEDIATE(){return this.getToken(cn.IMMEDIATE,0)}DEFERRED(){return this.getToken(cn.DEFERRED,0)}VALID(){return this.getToken(cn.VALID,0)}NO(){return this.getToken(cn.NO,0)}INHERIT(){return this.getToken(cn.INHERIT,0)}get ruleIndex(){return cn.RULE_constraintAttributeElement}accept(t){return t.visitConstraintAttributeElement?t.visitConstraintAttributeElement(this):t.visitChildren(this)}},XT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}EVENT(){return this.getToken(cn.EVENT,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}name(){return this.getRuleContext(0,yu)}ON(){return this.getToken(cn.ON,0)}columnLabel(){return this.getRuleContext(0,aN)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}functionOrProcedure(){return this.getRuleContext(0,fT)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}WHEN(){return this.getToken(cn.WHEN,0)}eventTriggerWhenList(){return this.getRuleContext(0,KT)}get ruleIndex(){return cn.RULE_createEventTriggerStatement}accept(t){return t.visitCreateEventTriggerStatement?t.visitCreateEventTriggerStatement(this):t.visitChildren(this)}},KT=class extends ga{constructor(t,e){super(t,e)}eventTriggerWhenItem(t){return void 0===t?this.getRuleContexts(QT):this.getRuleContext(t,QT)}AND(t){return void 0===t?this.getTokens(cn.AND):this.getToken(cn.AND,t)}get ruleIndex(){return cn.RULE_eventTriggerWhenList}accept(t){return t.visitEventTriggerWhenList?t.visitEventTriggerWhenList(this):t.visitChildren(this)}},QT=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}IN_P(){return this.getToken(cn.IN_P,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}eventTriggerValueList(){return this.getRuleContext(0,JT)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_eventTriggerWhenItem}accept(t){return t.visitEventTriggerWhenItem?t.visitEventTriggerWhenItem(this):t.visitChildren(this)}},JT=class extends ga{constructor(t,e){super(t,e)}sconst(t){return void 0===t?this.getRuleContexts(Qu):this.getRuleContext(t,Qu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_eventTriggerValueList}accept(t){return t.visitEventTriggerValueList?t.visitEventTriggerValueList(this):t.visitChildren(this)}},ZT=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}EVENT(){return this.getToken(cn.EVENT,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}name(){return this.getRuleContext(0,yu)}enableTrigger(){return this.getRuleContext(0,qT)}get ruleIndex(){return cn.RULE_alterEventTriggerStatement}accept(t){return t.visitAlterEventTriggerStatement?t.visitAlterEventTriggerStatement(this):t.visitChildren(this)}},qT=class extends ga{constructor(t,e){super(t,e)}ENABLE_P(){return this.getToken(cn.ENABLE_P,0)}REPLICA(){return this.getToken(cn.REPLICA,0)}ALWAYS(){return this.getToken(cn.ALWAYS,0)}DISABLE_P(){return this.getToken(cn.DISABLE_P,0)}get ruleIndex(){return cn.RULE_enableTrigger}accept(t){return t.visitEnableTrigger?t.visitEnableTrigger(this):t.visitChildren(this)}},jT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}ASSERTION(){return this.getToken(cn.ASSERTION,0)}anyName(){return this.getRuleContext(0,mo)}CHECK(){return this.getToken(cn.CHECK,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}constraintAttributeSpecification(){return this.getRuleContext(0,WT)}get ruleIndex(){return cn.RULE_createAssertionStatement}accept(t){return t.visitCreateAssertionStatement?t.visitCreateAssertionStatement(this):t.visitChildren(this)}},zT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}optionalOrReplace(){return this.getRuleContext(0,lR)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}functionName(){return this.getRuleContext(0,wu)}aggregateArguments(){return this.getRuleContext(0,UR)}definition(){return this.getRuleContext(0,$T)}oldAggregateDefinition(){return this.getRuleContext(0,so)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}anyOperator(){return this.getRuleContext(0,WR)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}anyName(t){return void 0===t?this.getRuleContexts(mo):this.getRuleContext(t,mo)}AS(){return this.getToken(cn.AS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}optionalTableFunctionElementList(){return this.getRuleContext(0,oO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}ENUM_P(){return this.getToken(cn.ENUM_P,0)}enumValueList(){return this.getRuleContext(0,ro)}RANGE(){return this.getToken(cn.RANGE,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}PARSER(){return this.getToken(cn.PARSER,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}TEMPLATE(){return this.getToken(cn.TEMPLATE,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}COLLATION(){return this.getToken(cn.COLLATION,0)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}FROM(){return this.getToken(cn.FROM,0)}get ruleIndex(){return cn.RULE_defineStatement}accept(t){return t.visitDefineStatement?t.visitDefineStatement(this):t.visitChildren(this)}},$T=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}definitionElement(t){return void 0===t?this.getRuleContexts(to):this.getRuleContext(t,to)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_definition}accept(t){return t.visitDefinition?t.visitDefinition(this):t.visitChildren(this)}},to=class extends ga{constructor(t,e){super(t,e)}columnLabel(){return this.getRuleContext(0,aN)}EQUAL(){return this.getToken(cn.EQUAL,0)}definitionArgument(){return this.getRuleContext(0,eo)}get ruleIndex(){return cn.RULE_definitionElement}accept(t){return t.visitDefinitionElement?t.visitDefinitionElement(this):t.visitChildren(this)}},eo=class extends ga{constructor(t,e){super(t,e)}functionType(){return this.getRuleContext(0,dR)}reservedKeyword(){return this.getRuleContext(0,EN)}allOperatorQualifier(){return this.getRuleContext(0,QI)}numericOnly(){return this.getRuleContext(0,xE)}sconst(){return this.getRuleContext(0,Qu)}NONE(){return this.getToken(cn.NONE,0)}get ruleIndex(){return cn.RULE_definitionArgument}accept(t){return t.visitDefinitionArgument?t.visitDefinitionArgument(this):t.visitChildren(this)}},so=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}oldAggregateElement(t){return void 0===t?this.getRuleContexts(ao):this.getRuleContext(t,ao)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_oldAggregateDefinition}accept(t){return t.visitOldAggregateDefinition?t.visitOldAggregateDefinition(this):t.visitChildren(this)}},ao=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}EQUAL(){return this.getToken(cn.EQUAL,0)}definitionArgument(){return this.getRuleContext(0,eo)}get ruleIndex(){return cn.RULE_oldAggregateElement}accept(t){return t.visitOldAggregateElement?t.visitOldAggregateElement(this):t.visitChildren(this)}},ro=class extends ga{constructor(t,e){super(t,e)}sconst(t){return void 0===t?this.getRuleContexts(Qu):this.getRuleContext(t,Qu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_enumValueList}accept(t){return t.visitEnumValueList?t.visitEnumValueList(this):t.visitChildren(this)}},io=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}anyName(){return this.getRuleContext(0,mo)}ADD_P(){return this.getToken(cn.ADD_P,0)}VALUE_P(){return this.getToken(cn.VALUE_P,0)}optionalIfNotExists(){return this.getRuleContext(0,co)}sconst(t){return void 0===t?this.getRuleContexts(Qu):this.getRuleContext(t,Qu)}BEFORE(){return this.getToken(cn.BEFORE,0)}AFTER(){return this.getToken(cn.AFTER,0)}RENAME(){return this.getToken(cn.RENAME,0)}TO(){return this.getToken(cn.TO,0)}get ruleIndex(){return cn.RULE_alterEnumStatement}accept(t){return t.visitAlterEnumStatement?t.visitAlterEnumStatement(this):t.visitChildren(this)}},co=class extends ga{constructor(t,e){super(t,e)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_optionalIfNotExists}accept(t){return t.visitOptionalIfNotExists?t.visitOptionalIfNotExists(this):t.visitChildren(this)}},no=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}CLASS(){return this.getToken(cn.CLASS,0)}anyName(){return this.getRuleContext(0,mo)}FOR(){return this.getToken(cn.FOR,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}typeName(){return this.getRuleContext(0,LO)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}optionalOperatorFamily(){return this.getRuleContext(0,To)}AS(){return this.getToken(cn.AS,0)}operatorClassItemList(){return this.getRuleContext(0,ho)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_createOperatorClassStatement}accept(t){return t.visitCreateOperatorClassStatement?t.visitCreateOperatorClassStatement(this):t.visitChildren(this)}},ho=class extends ga{constructor(t,e){super(t,e)}operatorClassItem(t){return void 0===t?this.getRuleContexts(Eo):this.getRuleContext(t,Eo)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_operatorClassItemList}accept(t){return t.visitOperatorClassItemList?t.visitOperatorClassItemList(this):t.visitChildren(this)}},Eo=class extends ga{constructor(t,e){super(t,e)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}iconst(){return this.getRuleContext(0,Ku)}anyOperator(){return this.getRuleContext(0,WR)}operatorClassPurpose(){return this.getRuleContext(0,oo)}RECHECK(){return this.getToken(cn.RECHECK,0)}operatorWithArgumentTypes(){return this.getRuleContext(0,XR)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeList(){return this.getRuleContext(0,zI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}STORAGE(){return this.getToken(cn.STORAGE,0)}typeName(){return this.getRuleContext(0,LO)}get ruleIndex(){return cn.RULE_operatorClassItem}accept(t){return t.visitOperatorClassItem?t.visitOperatorClassItem(this):t.visitChildren(this)}},To=class extends ga{constructor(t,e){super(t,e)}FAMILY(){return this.getToken(cn.FAMILY,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_optionalOperatorFamily}accept(t){return t.visitOptionalOperatorFamily?t.visitOptionalOperatorFamily(this):t.visitChildren(this)}},oo=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}ORDER(){return this.getToken(cn.ORDER,0)}BY(){return this.getToken(cn.BY,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_operatorClassPurpose}accept(t){return t.visitOperatorClassPurpose?t.visitOperatorClassPurpose(this):t.visitChildren(this)}},Ro=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}anyName(){return this.getRuleContext(0,mo)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_createOperatorFamilyStatement}accept(t){return t.visitCreateOperatorFamilyStatement?t.visitCreateOperatorFamilyStatement(this):t.visitChildren(this)}},Ao=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}anyName(){return this.getRuleContext(0,mo)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}ADD_P(){return this.getToken(cn.ADD_P,0)}operatorClassItemList(){return this.getRuleContext(0,ho)}DROP(){return this.getToken(cn.DROP,0)}operatorClassDropList(){return this.getRuleContext(0,So)}get ruleIndex(){return cn.RULE_alterOperatorFamilyStatement}accept(t){return t.visitAlterOperatorFamilyStatement?t.visitAlterOperatorFamilyStatement(this):t.visitChildren(this)}},So=class extends ga{constructor(t,e){super(t,e)}operatorClassDrop(t){return void 0===t?this.getRuleContexts(lo):this.getRuleContext(t,lo)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_operatorClassDropList}accept(t){return t.visitOperatorClassDropList?t.visitOperatorClassDropList(this):t.visitChildren(this)}},lo=class extends ga{constructor(t,e){super(t,e)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}iconst(){return this.getRuleContext(0,Ku)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeList(){return this.getRuleContext(0,zI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}get ruleIndex(){return cn.RULE_operatorClassDrop}accept(t){return t.visitOperatorClassDrop?t.visitOperatorClassDrop(this):t.visitChildren(this)}},Oo=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}CLASS(){return this.getToken(cn.CLASS,0)}anyName(){return this.getRuleContext(0,mo)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_dropOperatorClassStatement}accept(t){return t.visitDropOperatorClassStatement?t.visitDropOperatorClassStatement(this):t.visitChildren(this)}},Io=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}anyName(){return this.getRuleContext(0,mo)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_dropOperatorFamilyStatement}accept(t){return t.visitDropOperatorFamilyStatement?t.visitDropOperatorFamilyStatement(this):t.visitChildren(this)}},uo=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}OWNED(){return this.getToken(cn.OWNED,0)}BY(){return this.getToken(cn.BY,0)}roleNameList(){return this.getRuleContext(0,zu)}optionalDropBehavior(){return this.getRuleContext(0,ah)}get ruleIndex(){return cn.RULE_dropOwnedStatement}accept(t){return t.visitDropOwnedStatement?t.visitDropOwnedStatement(this):t.visitChildren(this)}},No=class extends ga{constructor(t,e){super(t,e)}REASSIGN(){return this.getToken(cn.REASSIGN,0)}OWNED(){return this.getToken(cn.OWNED,0)}BY(){return this.getToken(cn.BY,0)}roleNameList(){return this.getRuleContext(0,zu)}TO(){return this.getToken(cn.TO,0)}roleName(){return this.getRuleContext(0,ju)}get ruleIndex(){return cn.RULE_reassignOwnedStatement}accept(t){return t.visitReassignOwnedStatement?t.visitReassignOwnedStatement(this):t.visitChildren(this)}},Lo=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}objectTypeAnyName(){return this.getRuleContext(0,Co)}anyNameList(){return this.getRuleContext(0,Uo)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceNameList(){return this.getRuleContext(0,Fu)}INDEX(){return this.getToken(cn.INDEX,0)}indexNameList(){return this.getRuleContext(0,xu)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaNameList(){return this.getRuleContext(0,pu)}dropTypeName(){return this.getRuleContext(0,Po)}nameList(){return this.getRuleContext(0,Bu)}objectTypeNameOnAnyName(){return this.getRuleContext(0,Mo)}name(){return this.getRuleContext(0,yu)}ON(){return this.getToken(cn.ON,0)}anyName(){return this.getRuleContext(0,mo)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}triggerName(){return this.getRuleContext(0,ku)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}typeNameList(){return this.getRuleContext(0,po)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}CONCURRENTLY(){return this.getToken(cn.CONCURRENTLY,0)}indexName(){return this.getRuleContext(0,gu)}get ruleIndex(){return cn.RULE_dropStatement}accept(t){return t.visitDropStatement?t.visitDropStatement(this):t.visitChildren(this)}},Co=class extends ga{constructor(t,e){super(t,e)}TABLE(){return this.getToken(cn.TABLE,0)}VIEW(){return this.getToken(cn.VIEW,0)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}COLLATION(){return this.getToken(cn.COLLATION,0)}CONVERSION_P(){return this.getToken(cn.CONVERSION_P,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}PARSER(){return this.getToken(cn.PARSER,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}TEMPLATE(){return this.getToken(cn.TEMPLATE,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}get ruleIndex(){return cn.RULE_objectTypeAnyName}accept(t){return t.visitObjectTypeAnyName?t.visitObjectTypeAnyName(this):t.visitChildren(this)}},_o=class extends ga{constructor(t,e){super(t,e)}dropTypeName(){return this.getRuleContext(0,Po)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}get ruleIndex(){return cn.RULE_objectTypeName}accept(t){return t.visitObjectTypeName?t.visitObjectTypeName(this):t.visitChildren(this)}},Po=class extends ga{constructor(t,e){super(t,e)}ACCESS(){return this.getToken(cn.ACCESS,0)}METHOD(){return this.getToken(cn.METHOD,0)}EVENT(){return this.getToken(cn.EVENT,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}optionalProcedural(){return this.getRuleContext(0,BE)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}SERVER(){return this.getToken(cn.SERVER,0)}get ruleIndex(){return cn.RULE_dropTypeName}accept(t){return t.visitDropTypeName?t.visitDropTypeName(this):t.visitChildren(this)}},Mo=class extends ga{constructor(t,e){super(t,e)}POLICY(){return this.getToken(cn.POLICY,0)}RULE(){return this.getToken(cn.RULE,0)}get ruleIndex(){return cn.RULE_objectTypeNameOnAnyName}accept(t){return t.visitObjectTypeNameOnAnyName?t.visitObjectTypeNameOnAnyName(this):t.visitChildren(this)}},Uo=class extends ga{constructor(t,e){super(t,e)}anyName(t){return void 0===t?this.getRuleContexts(mo):this.getRuleContext(t,mo)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_anyNameList}accept(t){return t.visitAnyNameList?t.visitAnyNameList(this):t.visitChildren(this)}},mo=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}attributes(){return this.getRuleContext(0,Do)}get ruleIndex(){return cn.RULE_anyName}accept(t){return t.visitAnyName?t.visitAnyName(this):t.visitChildren(this)}},Do=class extends ga{constructor(t,e){super(t,e)}DOT(t){return void 0===t?this.getTokens(cn.DOT):this.getToken(cn.DOT,t)}attributeName(t){return void 0===t?this.getRuleContexts(fu):this.getRuleContext(t,fu)}get ruleIndex(){return cn.RULE_attributes}accept(t){return t.visitAttributes?t.visitAttributes(this):t.visitChildren(this)}},po=class extends ga{constructor(t,e){super(t,e)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_typeNameList}accept(t){return t.visitTypeNameList?t.visitTypeNameList(this):t.visitChildren(this)}},go=class extends ga{constructor(t,e){super(t,e)}TRUNCATE(){return this.getToken(cn.TRUNCATE,0)}optionalTable(){return this.getRuleContext(0,Il)}relationExpressionList(){return this.getRuleContext(0,sO)}optionalRestartSequences(){return this.getRuleContext(0,xo)}optionalDropBehavior(){return this.getRuleContext(0,ah)}get ruleIndex(){return cn.RULE_truncateStatement}accept(t){return t.visitTruncateStatement?t.visitTruncateStatement(this):t.visitChildren(this)}},xo=class extends ga{constructor(t,e){super(t,e)}CONTINUE_P(){return this.getToken(cn.CONTINUE_P,0)}IDENTITY_P(){return this.getToken(cn.IDENTITY_P,0)}RESTART(){return this.getToken(cn.RESTART,0)}get ruleIndex(){return cn.RULE_optionalRestartSequences}accept(t){return t.visitOptionalRestartSequences?t.visitOptionalRestartSequences(this):t.visitChildren(this)}},ko=class extends ga{constructor(t,e){super(t,e)}COMMENT(){return this.getToken(cn.COMMENT,0)}ON(t){return void 0===t?this.getTokens(cn.ON):this.getToken(cn.ON,t)}objectTypeAnyName(){return this.getRuleContext(0,Co)}anyName(){return this.getRuleContext(0,mo)}IS(){return this.getToken(cn.IS,0)}commentText(){return this.getRuleContext(0,Ho)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceName(){return this.getRuleContext(0,Gu)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}COLUMN(){return this.getToken(cn.COLUMN,0)}objectTypeName(){return this.getRuleContext(0,_o)}name(){return this.getRuleContext(0,yu)}ROLE(){return this.getToken(cn.ROLE,0)}roleName(){return this.getRuleContext(0,ju)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypes(){return this.getRuleContext(0,DR)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}operatorWithArgumentTypes(){return this.getRuleContext(0,XR)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}constraintName(){return this.getRuleContext(0,Hu)}objectTypeNameOnAnyName(){return this.getRuleContext(0,Mo)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}triggerName(){return this.getRuleContext(0,ku)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}TRANSFORM(){return this.getToken(cn.TRANSFORM,0)}FOR(){return this.getToken(cn.FOR,0)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}CLASS(){return this.getToken(cn.CLASS,0)}USING(){return this.getToken(cn.USING,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}LARGE_P(){return this.getToken(cn.LARGE_P,0)}OBJECT_P(){return this.getToken(cn.OBJECT_P,0)}numericOnly(){return this.getRuleContext(0,xE)}CAST(){return this.getToken(cn.CAST,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}AS(){return this.getToken(cn.AS,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_commentStatement}accept(t){return t.visitCommentStatement?t.visitCommentStatement(this):t.visitChildren(this)}},Ho=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}NULL_P(){return this.getToken(cn.NULL_P,0)}get ruleIndex(){return cn.RULE_commentText}accept(t){return t.visitCommentText?t.visitCommentText(this):t.visitChildren(this)}},Go=class extends ga{constructor(t,e){super(t,e)}SECURITY(){return this.getToken(cn.SECURITY,0)}LABEL(){return this.getToken(cn.LABEL,0)}optionalProvider(){return this.getRuleContext(0,Fo)}ON(){return this.getToken(cn.ON,0)}objectTypeAnyName(){return this.getRuleContext(0,Co)}anyName(){return this.getRuleContext(0,mo)}IS(){return this.getToken(cn.IS,0)}securityLabel(){return this.getRuleContext(0,vo)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceName(){return this.getRuleContext(0,Gu)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}COLUMN(){return this.getToken(cn.COLUMN,0)}objectTypeName(){return this.getRuleContext(0,_o)}name(){return this.getRuleContext(0,yu)}ROLE(){return this.getToken(cn.ROLE,0)}roleName(){return this.getRuleContext(0,ju)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}typeName(){return this.getRuleContext(0,LO)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypes(){return this.getRuleContext(0,DR)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}LARGE_P(){return this.getToken(cn.LARGE_P,0)}OBJECT_P(){return this.getToken(cn.OBJECT_P,0)}numericOnly(){return this.getRuleContext(0,xE)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}get ruleIndex(){return cn.RULE_securityLabelStatement}accept(t){return t.visitSecurityLabelStatement?t.visitSecurityLabelStatement(this):t.visitChildren(this)}},Fo=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}get ruleIndex(){return cn.RULE_optionalProvider}accept(t){return t.visitOptionalProvider?t.visitOptionalProvider(this):t.visitChildren(this)}},vo=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}NULL_P(){return this.getToken(cn.NULL_P,0)}get ruleIndex(){return cn.RULE_securityLabel}accept(t){return t.visitSecurityLabel?t.visitSecurityLabel(this):t.visitChildren(this)}},Bo=class extends ga{constructor(t,e){super(t,e)}FETCH(){return this.getToken(cn.FETCH,0)}fetchArguments(){return this.getRuleContext(0,yo)}MOVE(){return this.getToken(cn.MOVE,0)}get ruleIndex(){return cn.RULE_fetchStatement}accept(t){return t.visitFetchStatement?t.visitFetchStatement(this):t.visitChildren(this)}},yo=class extends ga{constructor(t,e){super(t,e)}cursorName(){return this.getRuleContext(0,al)}fromOrIn(){return this.getRuleContext(0,fo)}NEXT(){return this.getToken(cn.NEXT,0)}optionalFromOrIn(){return this.getRuleContext(0,Yo)}PRIOR(){return this.getToken(cn.PRIOR,0)}FIRST_P(){return this.getToken(cn.FIRST_P,0)}LAST_P(){return this.getToken(cn.LAST_P,0)}ABSOLUTE_P(){return this.getToken(cn.ABSOLUTE_P,0)}signedIconst(){return this.getRuleContext(0,qu)}RELATIVE_P(){return this.getToken(cn.RELATIVE_P,0)}ALL(){return this.getToken(cn.ALL,0)}FORWARD(){return this.getToken(cn.FORWARD,0)}BACKWARD(){return this.getToken(cn.BACKWARD,0)}get ruleIndex(){return cn.RULE_fetchArguments}accept(t){return t.visitFetchArguments?t.visitFetchArguments(this):t.visitChildren(this)}},fo=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(cn.FROM,0)}IN_P(){return this.getToken(cn.IN_P,0)}get ruleIndex(){return cn.RULE_fromOrIn}accept(t){return t.visitFromOrIn?t.visitFromOrIn(this):t.visitChildren(this)}},Yo=class extends ga{constructor(t,e){super(t,e)}fromOrIn(){return this.getRuleContext(0,fo)}get ruleIndex(){return cn.RULE_optionalFromOrIn}accept(t){return t.visitOptionalFromOrIn?t.visitOptionalFromOrIn(this):t.visitChildren(this)}},wo=class extends ga{constructor(t,e){super(t,e)}GRANT(){return this.getToken(cn.GRANT,0)}privileges(){return this.getRuleContext(0,Wo)}ON(){return this.getToken(cn.ON,0)}privilegeTarget(){return this.getRuleContext(0,Ko)}TO(){return this.getToken(cn.TO,0)}granteeList(){return this.getRuleContext(0,Qo)}optionalWithGrantOption(){return this.getRuleContext(0,Zo)}get ruleIndex(){return cn.RULE_grantStatement}accept(t){return t.visitGrantStatement?t.visitGrantStatement(this):t.visitChildren(this)}},bo=class extends ga{constructor(t,e){super(t,e)}REVOKE(){return this.getToken(cn.REVOKE,0)}privileges(){return this.getRuleContext(0,Wo)}ON(){return this.getToken(cn.ON,0)}privilegeTarget(){return this.getRuleContext(0,Ko)}FROM(){return this.getToken(cn.FROM,0)}granteeList(){return this.getRuleContext(0,Qo)}optionalDropBehavior(){return this.getRuleContext(0,ah)}GRANT(){return this.getToken(cn.GRANT,0)}OPTION(){return this.getToken(cn.OPTION,0)}FOR(){return this.getToken(cn.FOR,0)}get ruleIndex(){return cn.RULE_revokeStatement}accept(t){return t.visitRevokeStatement?t.visitRevokeStatement(this):t.visitChildren(this)}},Wo=class extends ga{constructor(t,e){super(t,e)}privilegeList(){return this.getRuleContext(0,Vo)}ALL(){return this.getToken(cn.ALL,0)}PRIVILEGES(){return this.getToken(cn.PRIVILEGES,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}columnList(){return this.getRuleContext(0,qh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_privileges}accept(t){return t.visitPrivileges?t.visitPrivileges(this):t.visitChildren(this)}},Vo=class extends ga{constructor(t,e){super(t,e)}privilege(t){return void 0===t?this.getRuleContexts(Xo):this.getRuleContext(t,Xo)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_privilegeList}accept(t){return t.visitPrivilegeList?t.visitPrivilegeList(this):t.visitChildren(this)}},Xo=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(cn.SELECT,0)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}REFERENCES(){return this.getToken(cn.REFERENCES,0)}CREATE(){return this.getToken(cn.CREATE,0)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_privilege}accept(t){return t.visitPrivilege?t.visitPrivilege(this):t.visitChildren(this)}},Ko=class extends ga{constructor(t,e){super(t,e)}qualifiedNameList(){return this.getRuleContext(0,du)}TABLE(){return this.getToken(cn.TABLE,0)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceNameList(){return this.getRuleContext(0,Fu)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}nameList(){return this.getRuleContext(0,Bu)}SERVER(){return this.getToken(cn.SERVER,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypesList(){return this.getRuleContext(0,IR)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseNameList(){return this.getRuleContext(0,mu)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}anyNameList(){return this.getRuleContext(0,Uo)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}LARGE_P(){return this.getToken(cn.LARGE_P,0)}OBJECT_P(){return this.getToken(cn.OBJECT_P,0)}numericOnlyList(){return this.getRuleContext(0,kE)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaNameList(){return this.getRuleContext(0,pu)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}ALL(){return this.getToken(cn.ALL,0)}IN_P(){return this.getToken(cn.IN_P,0)}TABLES(){return this.getToken(cn.TABLES,0)}SEQUENCES(){return this.getToken(cn.SEQUENCES,0)}FUNCTIONS(){return this.getToken(cn.FUNCTIONS,0)}PROCEDURES(){return this.getToken(cn.PROCEDURES,0)}ROUTINES(){return this.getToken(cn.ROUTINES,0)}get ruleIndex(){return cn.RULE_privilegeTarget}accept(t){return t.visitPrivilegeTarget?t.visitPrivilegeTarget(this):t.visitChildren(this)}},Qo=class extends ga{constructor(t,e){super(t,e)}grantee(t){return void 0===t?this.getRuleContexts(Jo):this.getRuleContext(t,Jo)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_granteeList}accept(t){return t.visitGranteeList?t.visitGranteeList(this):t.visitChildren(this)}},Jo=class extends ga{constructor(t,e){super(t,e)}roleName(){return this.getRuleContext(0,ju)}GROUP_P(){return this.getToken(cn.GROUP_P,0)}get ruleIndex(){return cn.RULE_grantee}accept(t){return t.visitGrantee?t.visitGrantee(this):t.visitChildren(this)}},Zo=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}GRANT(){return this.getToken(cn.GRANT,0)}OPTION(){return this.getToken(cn.OPTION,0)}get ruleIndex(){return cn.RULE_optionalWithGrantOption}accept(t){return t.visitOptionalWithGrantOption?t.visitOptionalWithGrantOption(this):t.visitChildren(this)}},qo=class extends ga{constructor(t,e){super(t,e)}GRANT(){return this.getToken(cn.GRANT,0)}privilegeList(){return this.getRuleContext(0,Vo)}TO(){return this.getToken(cn.TO,0)}roleNameList(){return this.getRuleContext(0,zu)}optionalGrantAdminOption(){return this.getRuleContext(0,zo)}optionalGrantedBy(){return this.getRuleContext(0,$o)}get ruleIndex(){return cn.RULE_grantPrivilegeStatement}accept(t){return t.visitGrantPrivilegeStatement?t.visitGrantPrivilegeStatement(this):t.visitChildren(this)}},jo=class extends ga{constructor(t,e){super(t,e)}REVOKE(){return this.getToken(cn.REVOKE,0)}privilegeList(){return this.getRuleContext(0,Vo)}FROM(){return this.getToken(cn.FROM,0)}roleNameList(){return this.getRuleContext(0,zu)}optionalGrantedBy(){return this.getRuleContext(0,$o)}optionalDropBehavior(){return this.getRuleContext(0,ah)}ADMIN(){return this.getToken(cn.ADMIN,0)}OPTION(){return this.getToken(cn.OPTION,0)}FOR(){return this.getToken(cn.FOR,0)}get ruleIndex(){return cn.RULE_revokePrivilegeStatement}accept(t){return t.visitRevokePrivilegeStatement?t.visitRevokePrivilegeStatement(this):t.visitChildren(this)}},zo=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}ADMIN(){return this.getToken(cn.ADMIN,0)}OPTION(){return this.getToken(cn.OPTION,0)}get ruleIndex(){return cn.RULE_optionalGrantAdminOption}accept(t){return t.visitOptionalGrantAdminOption?t.visitOptionalGrantAdminOption(this):t.visitChildren(this)}},$o=class extends ga{constructor(t,e){super(t,e)}GRANTED(){return this.getToken(cn.GRANTED,0)}BY(){return this.getToken(cn.BY,0)}roleName(){return this.getRuleContext(0,ju)}get ruleIndex(){return cn.RULE_optionalGrantedBy}accept(t){return t.visitOptionalGrantedBy?t.visitOptionalGrantedBy(this):t.visitChildren(this)}},tR=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}PRIVILEGES(){return this.getToken(cn.PRIVILEGES,0)}defaultPrivelegeAction(){return this.getRuleContext(0,sR)}defultPrivilegeOption(t){return void 0===t?this.getRuleContexts(eR):this.getRuleContext(t,eR)}get ruleIndex(){return cn.RULE_alterDefaultPrivilegesStatement}accept(t){return t.visitAlterDefaultPrivilegesStatement?t.visitAlterDefaultPrivilegesStatement(this):t.visitChildren(this)}},eR=class extends ga{constructor(t,e){super(t,e)}IN_P(){return this.getToken(cn.IN_P,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaNameList(){return this.getRuleContext(0,pu)}FOR(){return this.getToken(cn.FOR,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleNameList(){return this.getRuleContext(0,zu)}get ruleIndex(){return cn.RULE_defultPrivilegeOption}accept(t){return t.visitDefultPrivilegeOption?t.visitDefultPrivilegeOption(this):t.visitChildren(this)}},sR=class extends ga{constructor(t,e){super(t,e)}GRANT(){return this.getToken(cn.GRANT,0)}privileges(){return this.getRuleContext(0,Wo)}ON(){return this.getToken(cn.ON,0)}defultPrivilegeTarget(){return this.getRuleContext(0,aR)}TO(){return this.getToken(cn.TO,0)}granteeList(){return this.getRuleContext(0,Qo)}optionalWithGrantOption(){return this.getRuleContext(0,Zo)}REVOKE(){return this.getToken(cn.REVOKE,0)}FROM(){return this.getToken(cn.FROM,0)}optionalDropBehavior(){return this.getRuleContext(0,ah)}OPTION(){return this.getToken(cn.OPTION,0)}FOR(){return this.getToken(cn.FOR,0)}get ruleIndex(){return cn.RULE_defaultPrivelegeAction}accept(t){return t.visitDefaultPrivelegeAction?t.visitDefaultPrivelegeAction(this):t.visitChildren(this)}},aR=class extends ga{constructor(t,e){super(t,e)}TABLES(){return this.getToken(cn.TABLES,0)}FUNCTIONS(){return this.getToken(cn.FUNCTIONS,0)}ROUTINES(){return this.getToken(cn.ROUTINES,0)}SEQUENCES(){return this.getToken(cn.SEQUENCES,0)}TYPES_P(){return this.getToken(cn.TYPES_P,0)}SCHEMAS(){return this.getToken(cn.SCHEMAS,0)}get ruleIndex(){return cn.RULE_defultPrivilegeTarget}accept(t){return t.visitDefultPrivilegeTarget?t.visitDefultPrivilegeTarget(this):t.visitChildren(this)}},rR=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}INDEX(){return this.getToken(cn.INDEX,0)}ON(){return this.getToken(cn.ON,0)}relationExpression(){return this.getRuleContext(0,eO)}optionalAccessMethodClause(){return this.getRuleContext(0,iR)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}indexParameters(){return this.getRuleContext(0,cR)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}optionalInclude(){return this.getRuleContext(0,ER)}optionalRelOptions(){return this.getRuleContext(0,hh)}optionalTablespace(){return this.getRuleContext(0,lE)}whereClause(){return this.getRuleContext(0,EO)}UNIQUE(){return this.getToken(cn.UNIQUE,0)}CONCURRENTLY(){return this.getToken(cn.CONCURRENTLY,0)}name(){return this.getRuleContext(0,yu)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_indexStatement}accept(t){return t.visitIndexStatement?t.visitIndexStatement(this):t.visitChildren(this)}},iR=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_optionalAccessMethodClause}accept(t){return t.visitOptionalAccessMethodClause?t.visitOptionalAccessMethodClause(this):t.visitChildren(this)}},cR=class extends ga{constructor(t,e){super(t,e)}indexElement(t){return void 0===t?this.getRuleContexts(hR):this.getRuleContext(t,hR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_indexParameters}accept(t){return t.visitIndexParameters?t.visitIndexParameters(this):t.visitChildren(this)}},nR=class extends ga{constructor(t,e){super(t,e)}optionalCollate(){return this.getRuleContext(0,TR)}optionalClass(){return this.getRuleContext(0,oR)}optionalAscOrDesc(){return this.getRuleContext(0,RR)}optionalNullsOrder(){return this.getRuleContext(0,AR)}anyName(){return this.getRuleContext(0,mo)}relOptions(){return this.getRuleContext(0,nh)}get ruleIndex(){return cn.RULE_indexElemOptions}accept(t){return t.visitIndexElemOptions?t.visitIndexElemOptions(this):t.visitChildren(this)}},hR=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}indexElemOptions(){return this.getRuleContext(0,nR)}functionExpressionWindowless(){return this.getRuleContext(0,OI)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_indexElement}accept(t){return t.visitIndexElement?t.visitIndexElement(this):t.visitChildren(this)}},ER=class extends ga{constructor(t,e){super(t,e)}INCLUDE(){return this.getToken(cn.INCLUDE,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}indexElement(t){return void 0===t?this.getRuleContexts(hR):this.getRuleContext(t,hR)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_optionalInclude}accept(t){return t.visitOptionalInclude?t.visitOptionalInclude(this):t.visitChildren(this)}},TR=class extends ga{constructor(t,e){super(t,e)}COLLATE(){return this.getToken(cn.COLLATE,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_optionalCollate}accept(t){return t.visitOptionalCollate?t.visitOptionalCollate(this):t.visitChildren(this)}},oR=class extends ga{constructor(t,e){super(t,e)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_optionalClass}accept(t){return t.visitOptionalClass?t.visitOptionalClass(this):t.visitChildren(this)}},RR=class extends ga{constructor(t,e){super(t,e)}ASC(){return this.getToken(cn.ASC,0)}DESC(){return this.getToken(cn.DESC,0)}get ruleIndex(){return cn.RULE_optionalAscOrDesc}accept(t){return t.visitOptionalAscOrDesc?t.visitOptionalAscOrDesc(this):t.visitChildren(this)}},AR=class extends ga{constructor(t,e){super(t,e)}NULLS_P(){return this.getToken(cn.NULLS_P,0)}FIRST_P(){return this.getToken(cn.FIRST_P,0)}LAST_P(){return this.getToken(cn.LAST_P,0)}get ruleIndex(){return cn.RULE_optionalNullsOrder}accept(t){return t.visitOptionalNullsOrder?t.visitOptionalNullsOrder(this):t.visitChildren(this)}},SR=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}optionalOrReplace(){return this.getRuleContext(0,lR)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(t){return void 0===t?this.getTokens(cn.OPEN_PAREN):this.getToken(cn.OPEN_PAREN,t)}CLOSE_PAREN(t){return void 0===t?this.getTokens(cn.CLOSE_PAREN):this.getToken(cn.CLOSE_PAREN,t)}createFunctionOptionList(){return this.getRuleContext(0,gR)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}functionArgumentsWithDefaultsList(){return this.getRuleContext(0,NR)}RETURNS(){return this.getToken(cn.RETURNS,0)}functionReturn(){return this.getRuleContext(0,MR)}TABLE(){return this.getToken(cn.TABLE,0)}tableFunctionColumnList(){return this.getRuleContext(0,BR)}get ruleIndex(){return cn.RULE_createFunctionStatement}accept(t){return t.visitCreateFunctionStatement?t.visitCreateFunctionStatement(this):t.visitChildren(this)}},lR=class extends ga{constructor(t,e){super(t,e)}OR(){return this.getToken(cn.OR,0)}REPLACE(){return this.getToken(cn.REPLACE,0)}get ruleIndex(){return cn.RULE_optionalOrReplace}accept(t){return t.visitOptionalOrReplace?t.visitOptionalOrReplace(this):t.visitChildren(this)}},OR=class extends ga{constructor(t,e){super(t,e)}functionArgument(t){return void 0===t?this.getRuleContexts(CR):this.getRuleContext(t,CR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_functionArgumentsList}accept(t){return t.visitFunctionArgumentsList?t.visitFunctionArgumentsList(this):t.visitChildren(this)}},IR=class extends ga{constructor(t,e){super(t,e)}functionWithArgumentTypes(t){return void 0===t?this.getRuleContexts(uR):this.getRuleContext(t,uR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_functionWithArgumentTypesList}accept(t){return t.visitFunctionWithArgumentTypesList?t.visitFunctionWithArgumentTypesList(this):t.visitChildren(this)}},uR=class extends ga{constructor(t,e){super(t,e)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}functionArgumentsList(){return this.getRuleContext(0,OR)}typeFunctionNameKeyword(){return this.getRuleContext(0,hN)}columnId(){return this.getRuleContext(0,$u)}indirection(){return this.getRuleContext(0,uu)}get ruleIndex(){return cn.RULE_functionWithArgumentTypes}accept(t){return t.visitFunctionWithArgumentTypes?t.visitFunctionWithArgumentTypes(this):t.visitChildren(this)}},NR=class extends ga{constructor(t,e){super(t,e)}functionArgumentWithDefault(t){return void 0===t?this.getRuleContexts(LR):this.getRuleContext(t,LR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_functionArgumentsWithDefaultsList}accept(t){return t.visitFunctionArgumentsWithDefaultsList?t.visitFunctionArgumentsWithDefaultsList(this):t.visitChildren(this)}},LR=class extends ga{constructor(t,e){super(t,e)}functionArgument(){return this.getRuleContext(0,CR)}expression1(){return this.getRuleContext(0,wO)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}EQUAL(){return this.getToken(cn.EQUAL,0)}get ruleIndex(){return cn.RULE_functionArgumentWithDefault}accept(t){return t.visitFunctionArgumentWithDefault?t.visitFunctionArgumentWithDefault(this):t.visitChildren(this)}},CR=class extends ga{constructor(t,e){super(t,e)}argumentClass(){return this.getRuleContext(0,_R)}functionType(){return this.getRuleContext(0,dR)}parameterName(){return this.getRuleContext(0,PR)}get ruleIndex(){return cn.RULE_functionArgument}accept(t){return t.visitFunctionArgument?t.visitFunctionArgument(this):t.visitChildren(this)}},_R=class extends ga{constructor(t,e){super(t,e)}IN_P(){return this.getToken(cn.IN_P,0)}OUT_P(){return this.getToken(cn.OUT_P,0)}INOUT(){return this.getToken(cn.INOUT,0)}VARIADIC(){return this.getToken(cn.VARIADIC,0)}get ruleIndex(){return cn.RULE_argumentClass}accept(t){return t.visitArgumentClass?t.visitArgumentClass(this):t.visitChildren(this)}},PR=class extends ga{constructor(t,e){super(t,e)}typeFunctionName(){return this.getRuleContext(0,eN)}builtinFunctionName(){return this.getRuleContext(0,TN)}LEFT(){return this.getToken(cn.LEFT,0)}RIGHT(){return this.getToken(cn.RIGHT,0)}get ruleIndex(){return cn.RULE_parameterName}accept(t){return t.visitParameterName?t.visitParameterName(this):t.visitChildren(this)}},MR=class extends ga{constructor(t,e){super(t,e)}functionType(){return this.getRuleContext(0,dR)}get ruleIndex(){return cn.RULE_functionReturn}accept(t){return t.visitFunctionReturn?t.visitFunctionReturn(this):t.visitChildren(this)}},dR=class extends ga{constructor(t,e){super(t,e)}typeName(){return this.getRuleContext(0,LO)}attributes(){return this.getRuleContext(0,Do)}PERCENT(){return this.getToken(cn.PERCENT,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}builtinFunctionName(){return this.getRuleContext(0,TN)}typeFunctionName(){return this.getRuleContext(0,eN)}LEFT(){return this.getToken(cn.LEFT,0)}RIGHT(){return this.getToken(cn.RIGHT,0)}SETOF(){return this.getToken(cn.SETOF,0)}get ruleIndex(){return cn.RULE_functionType}accept(t){return t.visitFunctionType?t.visitFunctionType(this):t.visitChildren(this)}},UR=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}STAR(){return this.getToken(cn.STAR,0)}aggregateArgumentsList(t){return void 0===t?this.getRuleContexts(mR):this.getRuleContext(t,mR)}ORDER(){return this.getToken(cn.ORDER,0)}BY(){return this.getToken(cn.BY,0)}get ruleIndex(){return cn.RULE_aggregateArguments}accept(t){return t.visitAggregateArguments?t.visitAggregateArguments(this):t.visitChildren(this)}},mR=class extends ga{constructor(t,e){super(t,e)}functionArgument(t){return void 0===t?this.getRuleContexts(CR):this.getRuleContext(t,CR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_aggregateArgumentsList}accept(t){return t.visitAggregateArgumentsList?t.visitAggregateArgumentsList(this):t.visitChildren(this)}},DR=class extends ga{constructor(t,e){super(t,e)}functionName(){return this.getRuleContext(0,wu)}aggregateArguments(){return this.getRuleContext(0,UR)}get ruleIndex(){return cn.RULE_aggregateWithArgumentTypes}accept(t){return t.visitAggregateWithArgumentTypes?t.visitAggregateWithArgumentTypes(this):t.visitChildren(this)}},pR=class extends ga{constructor(t,e){super(t,e)}aggregateWithArgumentTypes(t){return void 0===t?this.getRuleContexts(DR):this.getRuleContext(t,DR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_aggregateWithArgumentTypesList}accept(t){return t.visitAggregateWithArgumentTypesList?t.visitAggregateWithArgumentTypesList(this):t.visitChildren(this)}},gR=class extends ga{constructor(t,e){super(t,e)}createFunctionOptionItem(t){return void 0===t?this.getRuleContexts(kR):this.getRuleContext(t,kR)}get ruleIndex(){return cn.RULE_createFunctionOptionList}accept(t){return t.visitCreateFunctionOptionList?t.visitCreateFunctionOptionList(this):t.visitChildren(this)}},xR=class extends ga{constructor(t,e){super(t,e)}CALLED(){return this.getToken(cn.CALLED,0)}ON(){return this.getToken(cn.ON,0)}NULL_P(t){return void 0===t?this.getTokens(cn.NULL_P):this.getToken(cn.NULL_P,t)}INPUT_P(){return this.getToken(cn.INPUT_P,0)}RETURNS(){return this.getToken(cn.RETURNS,0)}STRICT_P(){return this.getToken(cn.STRICT_P,0)}IMMUTABLE(){return this.getToken(cn.IMMUTABLE,0)}STABLE(){return this.getToken(cn.STABLE,0)}VOLATILE(){return this.getToken(cn.VOLATILE,0)}EXTERNAL(){return this.getToken(cn.EXTERNAL,0)}SECURITY(){return this.getToken(cn.SECURITY,0)}DEFINER(){return this.getToken(cn.DEFINER,0)}INVOKER(){return this.getToken(cn.INVOKER,0)}LEAKPROOF(){return this.getToken(cn.LEAKPROOF,0)}NOT(){return this.getToken(cn.NOT,0)}COST(){return this.getToken(cn.COST,0)}numericOnly(){return this.getRuleContext(0,xE)}ROWS(){return this.getToken(cn.ROWS,0)}SUPPORT(){return this.getToken(cn.SUPPORT,0)}anyName(){return this.getRuleContext(0,mo)}functionSetResetClause(){return this.getRuleContext(0,Vn)}PARALLEL(){return this.getToken(cn.PARALLEL,0)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_commonFunctionOptionItem}accept(t){return t.visitCommonFunctionOptionItem?t.visitCommonFunctionOptionItem(this):t.visitChildren(this)}},kR=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(cn.AS,0)}functionAs(){return this.getRuleContext(0,HR)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}TRANSFORM(){return this.getToken(cn.TRANSFORM,0)}transformTypeList(){return this.getRuleContext(0,GR)}WINDOW(){return this.getToken(cn.WINDOW,0)}commonFunctionOptionItem(){return this.getRuleContext(0,xR)}get ruleIndex(){return cn.RULE_createFunctionOptionItem}accept(t){return t.visitCreateFunctionOptionItem?t.visitCreateFunctionOptionItem(this):t.visitChildren(this)}},HR=class extends ga{constructor(t,e){super(t,e)}sconst(t){return void 0===t?this.getRuleContexts(Qu):this.getRuleContext(t,Qu)}COMMA(){return this.getToken(cn.COMMA,0)}get ruleIndex(){return cn.RULE_functionAs}accept(t){return t.visitFunctionAs?t.visitFunctionAs(this):t.visitChildren(this)}},GR=class extends ga{constructor(t,e){super(t,e)}FOR(t){return void 0===t?this.getTokens(cn.FOR):this.getToken(cn.FOR,t)}TYPE_P(t){return void 0===t?this.getTokens(cn.TYPE_P):this.getToken(cn.TYPE_P,t)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_transformTypeList}accept(t){return t.visitTransformTypeList?t.visitTransformTypeList(this):t.visitChildren(this)}},FR=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}definition(){return this.getRuleContext(0,$T)}get ruleIndex(){return cn.RULE_optionalDefinition}accept(t){return t.visitOptionalDefinition?t.visitOptionalDefinition(this):t.visitChildren(this)}},vR=class extends ga{constructor(t,e){super(t,e)}parameterName(){return this.getRuleContext(0,PR)}functionType(){return this.getRuleContext(0,dR)}get ruleIndex(){return cn.RULE_tableFunctionColumn}accept(t){return t.visitTableFunctionColumn?t.visitTableFunctionColumn(this):t.visitChildren(this)}},BR=class extends ga{constructor(t,e){super(t,e)}tableFunctionColumn(t){return void 0===t?this.getRuleContexts(vR):this.getRuleContext(t,vR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_tableFunctionColumnList}accept(t){return t.visitTableFunctionColumnList?t.visitTableFunctionColumnList(this):t.visitChildren(this)}},yR=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}commonFunctionOptionItem(t){return void 0===t?this.getRuleContexts(xR):this.getRuleContext(t,xR)}RESTRICT(){return this.getToken(cn.RESTRICT,0)}get ruleIndex(){return cn.RULE_alterFunctionStatement}accept(t){return t.visitAlterFunctionStatement?t.visitAlterFunctionStatement(this):t.visitChildren(this)}},fR=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypesList(){return this.getRuleContext(0,IR)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}get ruleIndex(){return cn.RULE_removeFunctionStatement}accept(t){return t.visitRemoveFunctionStatement?t.visitRemoveFunctionStatement(this):t.visitChildren(this)}},YR=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypesList(){return this.getRuleContext(0,pR)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_removeAggregateStatement}accept(t){return t.visitRemoveAggregateStatement?t.visitRemoveAggregateStatement(this):t.visitChildren(this)}},wR=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}operatorWithArgumentTypesList(){return this.getRuleContext(0,VR)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_removeOperatorStatement}accept(t){return t.visitRemoveOperatorStatement?t.visitRemoveOperatorStatement(this):t.visitChildren(this)}},bR=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(){return this.getToken(cn.COMMA,0)}NONE(){return this.getToken(cn.NONE,0)}get ruleIndex(){return cn.RULE_operatorArgumentTypes}accept(t){return t.visitOperatorArgumentTypes?t.visitOperatorArgumentTypes(this):t.visitChildren(this)}},WR=class extends ga{constructor(t,e){super(t,e)}allOperator(){return this.getRuleContext(0,VI)}columnId(t){return void 0===t?this.getRuleContexts($u):this.getRuleContext(t,$u)}DOT(t){return void 0===t?this.getTokens(cn.DOT):this.getToken(cn.DOT,t)}get ruleIndex(){return cn.RULE_anyOperator}accept(t){return t.visitAnyOperator?t.visitAnyOperator(this):t.visitChildren(this)}},VR=class extends ga{constructor(t,e){super(t,e)}operatorWithArgumentTypes(t){return void 0===t?this.getRuleContexts(XR):this.getRuleContext(t,XR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_operatorWithArgumentTypesList}accept(t){return t.visitOperatorWithArgumentTypesList?t.visitOperatorWithArgumentTypesList(this):t.visitChildren(this)}},XR=class extends ga{constructor(t,e){super(t,e)}anyOperator(){return this.getRuleContext(0,WR)}operatorArgumentTypes(){return this.getRuleContext(0,bR)}get ruleIndex(){return cn.RULE_operatorWithArgumentTypes}accept(t){return t.visitOperatorWithArgumentTypes?t.visitOperatorWithArgumentTypes(this):t.visitChildren(this)}},KR=class extends ga{constructor(t,e){super(t,e)}DO(){return this.getToken(cn.DO,0)}doStatementOptionsList(){return this.getRuleContext(0,QR)}get ruleIndex(){return cn.RULE_doStatement}accept(t){return t.visitDoStatement?t.visitDoStatement(this):t.visitChildren(this)}},QR=class extends ga{constructor(t,e){super(t,e)}doStatementOptionItem(t){return void 0===t?this.getRuleContexts(JR):this.getRuleContext(t,JR)}get ruleIndex(){return cn.RULE_doStatementOptionsList}accept(t){return t.visitDoStatementOptionsList?t.visitDoStatementOptionsList(this):t.visitChildren(this)}},JR=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}get ruleIndex(){return cn.RULE_doStatementOptionItem}accept(t){return t.visitDoStatementOptionItem?t.visitDoStatementOptionItem(this):t.visitChildren(this)}},ZR=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}CAST(){return this.getToken(cn.CAST,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}AS(){return this.getToken(cn.AS,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}WITH(){return this.getToken(cn.WITH,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}castContext(){return this.getRuleContext(0,qR)}WITHOUT(){return this.getToken(cn.WITHOUT,0)}INOUT(){return this.getToken(cn.INOUT,0)}get ruleIndex(){return cn.RULE_createCastStatement}accept(t){return t.visitCreateCastStatement?t.visitCreateCastStatement(this):t.visitChildren(this)}},qR=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(cn.AS,0)}IMPLICIT_P(){return this.getToken(cn.IMPLICIT_P,0)}ASSIGNMENT(){return this.getToken(cn.ASSIGNMENT,0)}get ruleIndex(){return cn.RULE_castContext}accept(t){return t.visitCastContext?t.visitCastContext(this):t.visitChildren(this)}},jR=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}CAST(){return this.getToken(cn.CAST,0)}optionalIfExists(){return this.getRuleContext(0,zR)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}AS(){return this.getToken(cn.AS,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}optionalDropBehavior(){return this.getRuleContext(0,ah)}get ruleIndex(){return cn.RULE_dropCastStatement}accept(t){return t.visitDropCastStatement?t.visitDropCastStatement(this):t.visitChildren(this)}},zR=class extends ga{constructor(t,e){super(t,e)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_optionalIfExists}accept(t){return t.visitOptionalIfExists?t.visitOptionalIfExists(this):t.visitChildren(this)}},$R=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}optionalOrReplace(){return this.getRuleContext(0,lR)}TRANSFORM(){return this.getToken(cn.TRANSFORM,0)}FOR(){return this.getToken(cn.FOR,0)}typeName(){return this.getRuleContext(0,LO)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}name(){return this.getRuleContext(0,yu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}transformElementList(){return this.getRuleContext(0,tA)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_createTransformStatement}accept(t){return t.visitCreateTransformStatement?t.visitCreateTransformStatement(this):t.visitChildren(this)}},tA=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(cn.FROM,0)}SQL_P(t){return void 0===t?this.getTokens(cn.SQL_P):this.getToken(cn.SQL_P,t)}WITH(t){return void 0===t?this.getTokens(cn.WITH):this.getToken(cn.WITH,t)}FUNCTION(t){return void 0===t?this.getTokens(cn.FUNCTION):this.getToken(cn.FUNCTION,t)}functionWithArgumentTypes(t){return void 0===t?this.getRuleContexts(uR):this.getRuleContext(t,uR)}COMMA(){return this.getToken(cn.COMMA,0)}TO(){return this.getToken(cn.TO,0)}get ruleIndex(){return cn.RULE_transformElementList}accept(t){return t.visitTransformElementList?t.visitTransformElementList(this):t.visitChildren(this)}},eA=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}TRANSFORM(){return this.getToken(cn.TRANSFORM,0)}optionalIfExists(){return this.getRuleContext(0,zR)}FOR(){return this.getToken(cn.FOR,0)}typeName(){return this.getRuleContext(0,LO)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}name(){return this.getRuleContext(0,yu)}optionalDropBehavior(){return this.getRuleContext(0,ah)}get ruleIndex(){return cn.RULE_dropTransformStatement}accept(t){return t.visitDropTransformStatement?t.visitDropTransformStatement(this):t.visitChildren(this)}},sA=class extends ga{constructor(t,e){super(t,e)}REINDEX(){return this.getToken(cn.REINDEX,0)}reindexTargetType(){return this.getRuleContext(0,aA)}qualifiedName(){return this.getRuleContext(0,vu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}reindexOptionList(){return this.getRuleContext(0,rA)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}CONCURRENTLY(){return this.getToken(cn.CONCURRENTLY,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}SYSTEM_P(){return this.getToken(cn.SYSTEM_P,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_reindexStatement}accept(t){return t.visitReindexStatement?t.visitReindexStatement(this):t.visitChildren(this)}},aA=class extends ga{constructor(t,e){super(t,e)}TABLE(){return this.getToken(cn.TABLE,0)}SYSTEM_P(){return this.getToken(cn.SYSTEM_P,0)}get ruleIndex(){return cn.RULE_reindexTargetType}accept(t){return t.visitReindexTargetType?t.visitReindexTargetType(this):t.visitChildren(this)}},rA=class extends ga{constructor(t,e){super(t,e)}reindexOptionElement(t){return void 0===t?this.getRuleContexts(iA):this.getRuleContext(t,iA)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_reindexOptionList}accept(t){return t.visitReindexOptionList?t.visitReindexOptionList(this):t.visitChildren(this)}},iA=class extends ga{constructor(t,e){super(t,e)}VERBOSE(){return this.getToken(cn.VERBOSE,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}CONCURRENTLY(){return this.getToken(cn.CONCURRENTLY,0)}get ruleIndex(){return cn.RULE_reindexOptionElement}accept(t){return t.visitReindexOptionElement?t.visitReindexOptionElement(this):t.visitChildren(this)}},cA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}name(){return this.getRuleContext(0,yu)}SET(){return this.getToken(cn.SET,0)}relOptions(){return this.getRuleContext(0,nh)}RESET(){return this.getToken(cn.RESET,0)}get ruleIndex(){return cn.RULE_alterTablespaceStatement}accept(t){return t.visitAlterTablespaceStatement?t.visitAlterTablespaceStatement(this):t.visitChildren(this)}},nA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypes(){return this.getRuleContext(0,DR)}RENAME(){return this.getToken(cn.RENAME,0)}TO(){return this.getToken(cn.TO,0)}name(t){return void 0===t?this.getRuleContexts(yu):this.getRuleContext(t,yu)}COLLATION(){return this.getToken(cn.COLLATION,0)}anyName(){return this.getRuleContext(0,mo)}CONVERSION_P(){return this.getToken(cn.CONVERSION_P,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}constraintName(){return this.getRuleContext(0,Hu)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}optionalProcedural(){return this.getRuleContext(0,BE)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}CLASS(){return this.getToken(cn.CLASS,0)}USING(){return this.getToken(cn.USING,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}POLICY(){return this.getToken(cn.POLICY,0)}ON(){return this.getToken(cn.ON,0)}qualifiedName(){return this.getRuleContext(0,vu)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}SERVER(){return this.getToken(cn.SERVER,0)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}TABLE(){return this.getToken(cn.TABLE,0)}relationExpression(){return this.getRuleContext(0,eO)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceName(){return this.getRuleContext(0,Gu)}VIEW(){return this.getToken(cn.VIEW,0)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}optionalColumn(){return this.getRuleContext(0,hA)}RULE(){return this.getToken(cn.RULE,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}triggerName(){return this.getRuleContext(0,ku)}EVENT(){return this.getToken(cn.EVENT,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleName(t){return void 0===t?this.getRuleContexts(ju):this.getRuleContext(t,ju)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}PARSER(){return this.getToken(cn.PARSER,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}TEMPLATE(){return this.getToken(cn.TEMPLATE,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}ATTRIBUTE(){return this.getToken(cn.ATTRIBUTE,0)}optionalDropBehavior(){return this.getRuleContext(0,ah)}get ruleIndex(){return cn.RULE_renameStatement}accept(t){return t.visitRenameStatement?t.visitRenameStatement(this):t.visitChildren(this)}},hA=class extends ga{constructor(t,e){super(t,e)}COLUMN(){return this.getToken(cn.COLUMN,0)}get ruleIndex(){return cn.RULE_optionalColumn}accept(t){return t.visitOptionalColumn?t.visitOptionalColumn(this):t.visitChildren(this)}},EA=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}get ruleIndex(){return cn.RULE_optionalSetData}accept(t){return t.visitOptionalSetData?t.visitOptionalSetData(this):t.visitChildren(this)}},TA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}DEPENDS(){return this.getToken(cn.DEPENDS,0)}ON(t){return void 0===t?this.getTokens(cn.ON):this.getToken(cn.ON,t)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}name(){return this.getRuleContext(0,yu)}NO(){return this.getToken(cn.NO,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}triggerName(){return this.getRuleContext(0,ku)}qualifiedName(){return this.getRuleContext(0,vu)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}VIEW(){return this.getToken(cn.VIEW,0)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}get ruleIndex(){return cn.RULE_alterObjectDependsStatement}accept(t){return t.visitAlterObjectDependsStatement?t.visitAlterObjectDependsStatement(this):t.visitChildren(this)}},oA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypes(){return this.getRuleContext(0,DR)}SET(){return this.getToken(cn.SET,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}COLLATION(){return this.getToken(cn.COLLATION,0)}anyName(){return this.getRuleContext(0,mo)}CONVERSION_P(){return this.getToken(cn.CONVERSION_P,0)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}name(){return this.getRuleContext(0,yu)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}operatorWithArgumentTypes(){return this.getRuleContext(0,XR)}CLASS(){return this.getToken(cn.CLASS,0)}USING(){return this.getToken(cn.USING,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}TABLE(){return this.getToken(cn.TABLE,0)}relationExpression(){return this.getRuleContext(0,eO)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}PARSER(){return this.getToken(cn.PARSER,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}TEMPLATE(){return this.getToken(cn.TEMPLATE,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceName(){return this.getRuleContext(0,Gu)}VIEW(){return this.getToken(cn.VIEW,0)}qualifiedName(){return this.getRuleContext(0,vu)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}get ruleIndex(){return cn.RULE_alterObjectSchemaStatement}accept(t){return t.visitAlterObjectSchemaStatement?t.visitAlterObjectSchemaStatement(this):t.visitChildren(this)}},RA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}operatorWithArgumentTypes(){return this.getRuleContext(0,XR)}SET(){return this.getToken(cn.SET,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}operatorDefinitionList(){return this.getRuleContext(0,AA)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_alterOperatorStatement}accept(t){return t.visitAlterOperatorStatement?t.visitAlterOperatorStatement(this):t.visitChildren(this)}},AA=class extends ga{constructor(t,e){super(t,e)}operatorDefinitionElement(t){return void 0===t?this.getRuleContexts(SA):this.getRuleContext(t,SA)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_operatorDefinitionList}accept(t){return t.visitOperatorDefinitionList?t.visitOperatorDefinitionList(this):t.visitChildren(this)}},SA=class extends ga{constructor(t,e){super(t,e)}columnLabel(){return this.getRuleContext(0,aN)}EQUAL(){return this.getToken(cn.EQUAL,0)}NONE(){return this.getToken(cn.NONE,0)}operatorDefinitionArgument(){return this.getRuleContext(0,lA)}get ruleIndex(){return cn.RULE_operatorDefinitionElement}accept(t){return t.visitOperatorDefinitionElement?t.visitOperatorDefinitionElement(this):t.visitChildren(this)}},lA=class extends ga{constructor(t,e){super(t,e)}functionType(){return this.getRuleContext(0,dR)}reservedKeyword(){return this.getRuleContext(0,EN)}allOperatorQualifier(){return this.getRuleContext(0,QI)}numericOnly(){return this.getRuleContext(0,xE)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_operatorDefinitionArgument}accept(t){return t.visitOperatorDefinitionArgument?t.visitOperatorDefinitionArgument(this):t.visitChildren(this)}},OA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}anyName(){return this.getRuleContext(0,mo)}SET(){return this.getToken(cn.SET,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}operatorDefinitionList(){return this.getRuleContext(0,AA)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_alterTypeStatement}accept(t){return t.visitAlterTypeStatement?t.visitAlterTypeStatement(this):t.visitChildren(this)}},IA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypes(){return this.getRuleContext(0,DR)}OWNER(){return this.getToken(cn.OWNER,0)}TO(){return this.getToken(cn.TO,0)}roleName(){return this.getRuleContext(0,ju)}COLLATION(){return this.getToken(cn.COLLATION,0)}anyName(){return this.getRuleContext(0,mo)}CONVERSION_P(){return this.getToken(cn.CONVERSION_P,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}optionalProcedural(){return this.getRuleContext(0,BE)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}name(){return this.getRuleContext(0,yu)}LARGE_P(){return this.getToken(cn.LARGE_P,0)}OBJECT_P(){return this.getToken(cn.OBJECT_P,0)}numericOnly(){return this.getRuleContext(0,xE)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}operatorWithArgumentTypes(){return this.getRuleContext(0,XR)}CLASS(){return this.getToken(cn.CLASS,0)}USING(){return this.getToken(cn.USING,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}SERVER(){return this.getToken(cn.SERVER,0)}EVENT(){return this.getToken(cn.EVENT,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}get ruleIndex(){return cn.RULE_alterOwnerStatement}accept(t){return t.visitAlterOwnerStatement?t.visitAlterOwnerStatement(this):t.visitChildren(this)}},uA=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}name(){return this.getRuleContext(0,yu)}optionalPublicationForTables(){return this.getRuleContext(0,NA)}optionalDefinition(){return this.getRuleContext(0,FR)}get ruleIndex(){return cn.RULE_createPublicationStatement}accept(t){return t.visitCreatePublicationStatement?t.visitCreatePublicationStatement(this):t.visitChildren(this)}},NA=class extends ga{constructor(t,e){super(t,e)}publicationForTables(){return this.getRuleContext(0,LA)}get ruleIndex(){return cn.RULE_optionalPublicationForTables}accept(t){return t.visitOptionalPublicationForTables?t.visitOptionalPublicationForTables(this):t.visitChildren(this)}},LA=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}TABLE(){return this.getToken(cn.TABLE,0)}relationExpressionList(){return this.getRuleContext(0,sO)}ALL(){return this.getToken(cn.ALL,0)}TABLES(){return this.getToken(cn.TABLES,0)}get ruleIndex(){return cn.RULE_publicationForTables}accept(t){return t.visitPublicationForTables?t.visitPublicationForTables(this):t.visitChildren(this)}},CA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}name(){return this.getRuleContext(0,yu)}SET(){return this.getToken(cn.SET,0)}definition(){return this.getRuleContext(0,$T)}ADD_P(){return this.getToken(cn.ADD_P,0)}TABLE(){return this.getToken(cn.TABLE,0)}relationExpressionList(){return this.getRuleContext(0,sO)}DROP(){return this.getToken(cn.DROP,0)}get ruleIndex(){return cn.RULE_alterPublicationStatement}accept(t){return t.visitAlterPublicationStatement?t.visitAlterPublicationStatement(this):t.visitChildren(this)}},_A=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}name(){return this.getRuleContext(0,yu)}CONNECTION(){return this.getToken(cn.CONNECTION,0)}sconst(){return this.getRuleContext(0,Qu)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}publicationNameList(){return this.getRuleContext(0,PA)}optionalDefinition(){return this.getRuleContext(0,FR)}get ruleIndex(){return cn.RULE_createSubscriptionStatement}accept(t){return t.visitCreateSubscriptionStatement?t.visitCreateSubscriptionStatement(this):t.visitChildren(this)}},PA=class extends ga{constructor(t,e){super(t,e)}publicationNameItem(t){return void 0===t?this.getRuleContexts(MA):this.getRuleContext(t,MA)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_publicationNameList}accept(t){return t.visitPublicationNameList?t.visitPublicationNameList(this):t.visitChildren(this)}},MA=class extends ga{constructor(t,e){super(t,e)}columnLabel(){return this.getRuleContext(0,aN)}get ruleIndex(){return cn.RULE_publicationNameItem}accept(t){return t.visitPublicationNameItem?t.visitPublicationNameItem(this):t.visitChildren(this)}},dA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}name(){return this.getRuleContext(0,yu)}SET(){return this.getToken(cn.SET,0)}definition(){return this.getRuleContext(0,$T)}CONNECTION(){return this.getToken(cn.CONNECTION,0)}sconst(){return this.getRuleContext(0,Qu)}REFRESH(){return this.getToken(cn.REFRESH,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}optionalDefinition(){return this.getRuleContext(0,FR)}publicationNameList(){return this.getRuleContext(0,PA)}ENABLE_P(){return this.getToken(cn.ENABLE_P,0)}DISABLE_P(){return this.getToken(cn.DISABLE_P,0)}get ruleIndex(){return cn.RULE_alterSubscriptionStatement}accept(t){return t.visitAlterSubscriptionStatement?t.visitAlterSubscriptionStatement(this):t.visitChildren(this)}},UA=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}name(){return this.getRuleContext(0,yu)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_dropSubscriptionStatement}accept(t){return t.visitDropSubscriptionStatement?t.visitDropSubscriptionStatement(this):t.visitChildren(this)}},mA=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}optionalOrReplace(){return this.getRuleContext(0,lR)}RULE(){return this.getToken(cn.RULE,0)}name(){return this.getRuleContext(0,yu)}AS(){return this.getToken(cn.AS,0)}ON(){return this.getToken(cn.ON,0)}event(){return this.getRuleContext(0,kA)}TO(){return this.getToken(cn.TO,0)}qualifiedName(){return this.getRuleContext(0,vu)}whereClause(){return this.getRuleContext(0,EO)}DO(){return this.getToken(cn.DO,0)}optionalInstead(){return this.getRuleContext(0,HA)}ruleActionList(){return this.getRuleContext(0,DA)}get ruleIndex(){return cn.RULE_ruleStatement}accept(t){return t.visitRuleStatement?t.visitRuleStatement(this):t.visitChildren(this)}},DA=class extends ga{constructor(t,e){super(t,e)}NOTHING(){return this.getToken(cn.NOTHING,0)}ruleActionStatement(){return this.getRuleContext(0,gA)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}ruleActionMulti(){return this.getRuleContext(0,pA)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_ruleActionList}accept(t){return t.visitRuleActionList?t.visitRuleActionList(this):t.visitChildren(this)}},pA=class extends ga{constructor(t,e){super(t,e)}ruleActionStatementOrEmpty(t){return void 0===t?this.getRuleContexts(xA):this.getRuleContext(t,xA)}SEMI(t){return void 0===t?this.getTokens(cn.SEMI):this.getToken(cn.SEMI,t)}get ruleIndex(){return cn.RULE_ruleActionMulti}accept(t){return t.visitRuleActionMulti?t.visitRuleActionMulti(this):t.visitChildren(this)}},gA=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,il)}insertStatement(){return this.getRuleContext(0,kS)}updateStatement(){return this.getRuleContext(0,zS)}deleteStatement(){return this.getRuleContext(0,XS)}notifyStatement(){return this.getRuleContext(0,GA)}get ruleIndex(){return cn.RULE_ruleActionStatement}accept(t){return t.visitRuleActionStatement?t.visitRuleActionStatement(this):t.visitChildren(this)}},xA=class extends ga{constructor(t,e){super(t,e)}ruleActionStatement(){return this.getRuleContext(0,gA)}get ruleIndex(){return cn.RULE_ruleActionStatementOrEmpty}accept(t){return t.visitRuleActionStatementOrEmpty?t.visitRuleActionStatementOrEmpty(this):t.visitChildren(this)}},kA=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(cn.SELECT,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}INSERT(){return this.getToken(cn.INSERT,0)}get ruleIndex(){return cn.RULE_event}accept(t){return t.visitEvent?t.visitEvent(this):t.visitChildren(this)}},HA=class extends ga{constructor(t,e){super(t,e)}INSTEAD(){return this.getToken(cn.INSTEAD,0)}ALSO(){return this.getToken(cn.ALSO,0)}get ruleIndex(){return cn.RULE_optionalInstead}accept(t){return t.visitOptionalInstead?t.visitOptionalInstead(this):t.visitChildren(this)}},GA=class extends ga{constructor(t,e){super(t,e)}NOTIFY(){return this.getToken(cn.NOTIFY,0)}columnId(){return this.getRuleContext(0,$u)}notifyPayload(){return this.getRuleContext(0,FA)}get ruleIndex(){return cn.RULE_notifyStatement}accept(t){return t.visitNotifyStatement?t.visitNotifyStatement(this):t.visitChildren(this)}},FA=class extends ga{constructor(t,e){super(t,e)}COMMA(){return this.getToken(cn.COMMA,0)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_notifyPayload}accept(t){return t.visitNotifyPayload?t.visitNotifyPayload(this):t.visitChildren(this)}},vA=class extends ga{constructor(t,e){super(t,e)}LISTEN(){return this.getToken(cn.LISTEN,0)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_listenStatement}accept(t){return t.visitListenStatement?t.visitListenStatement(this):t.visitChildren(this)}},BA=class extends ga{constructor(t,e){super(t,e)}UNLISTEN(){return this.getToken(cn.UNLISTEN,0)}columnId(){return this.getRuleContext(0,$u)}STAR(){return this.getToken(cn.STAR,0)}get ruleIndex(){return cn.RULE_unlistenStatement}accept(t){return t.visitUnlistenStatement?t.visitUnlistenStatement(this):t.visitChildren(this)}},yA=class extends ga{constructor(t,e){super(t,e)}ABORT_P(){return this.getToken(cn.ABORT_P,0)}optionalTransaction(){return this.getRuleContext(0,fA)}optionalTransactionChain(){return this.getRuleContext(0,bA)}BEGIN_P(){return this.getToken(cn.BEGIN_P,0)}transactionModeList(){return this.getRuleContext(0,wA)}START(){return this.getToken(cn.START,0)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}COMMIT(){return this.getToken(cn.COMMIT,0)}END_P(){return this.getToken(cn.END_P,0)}ROLLBACK(){return this.getToken(cn.ROLLBACK,0)}SAVEPOINT(){return this.getToken(cn.SAVEPOINT,0)}columnId(){return this.getRuleContext(0,$u)}RELEASE(){return this.getToken(cn.RELEASE,0)}TO(){return this.getToken(cn.TO,0)}PREPARE(){return this.getToken(cn.PREPARE,0)}sconst(){return this.getRuleContext(0,Qu)}PREPARED(){return this.getToken(cn.PREPARED,0)}get ruleIndex(){return cn.RULE_transactionStatement}accept(t){return t.visitTransactionStatement?t.visitTransactionStatement(this):t.visitChildren(this)}},fA=class extends ga{constructor(t,e){super(t,e)}WORK(){return this.getToken(cn.WORK,0)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}get ruleIndex(){return cn.RULE_optionalTransaction}accept(t){return t.visitOptionalTransaction?t.visitOptionalTransaction(this):t.visitChildren(this)}},YA=class extends ga{constructor(t,e){super(t,e)}ISOLATION(){return this.getToken(cn.ISOLATION,0)}LEVEL(){return this.getToken(cn.LEVEL,0)}isoLevel(){return this.getRuleContext(0,Fn)}READ(){return this.getToken(cn.READ,0)}ONLY(){return this.getToken(cn.ONLY,0)}WRITE(){return this.getToken(cn.WRITE,0)}DEFERRABLE(){return this.getToken(cn.DEFERRABLE,0)}NOT(){return this.getToken(cn.NOT,0)}get ruleIndex(){return cn.RULE_transactionModeItem}accept(t){return t.visitTransactionModeItem?t.visitTransactionModeItem(this):t.visitChildren(this)}},wA=class extends ga{constructor(t,e){super(t,e)}transactionModeItem(t){return void 0===t?this.getRuleContexts(YA):this.getRuleContext(t,YA)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_transactionModeList}accept(t){return t.visitTransactionModeList?t.visitTransactionModeList(this):t.visitChildren(this)}},bA=class extends ga{constructor(t,e){super(t,e)}AND(){return this.getToken(cn.AND,0)}CHAIN(){return this.getToken(cn.CHAIN,0)}NO(){return this.getToken(cn.NO,0)}get ruleIndex(){return cn.RULE_optionalTransactionChain}accept(t){return t.visitOptionalTransactionChain?t.visitOptionalTransactionChain(this):t.visitChildren(this)}},WA=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}temporaryOption(){return this.getRuleContext(0,gh)}AS(){return this.getToken(cn.AS,0)}selectStatement(){return this.getRuleContext(0,il)}optionalCheckOption(){return this.getRuleContext(0,VA)}VIEW(){return this.getToken(cn.VIEW,0)}qualifiedName(){return this.getRuleContext(0,vu)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}optionalRelOptions(){return this.getRuleContext(0,hh)}RECURSIVE(){return this.getToken(cn.RECURSIVE,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}columnList(){return this.getRuleContext(0,qh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}OR(){return this.getToken(cn.OR,0)}REPLACE(){return this.getToken(cn.REPLACE,0)}get ruleIndex(){return cn.RULE_viewStatement}accept(t){return t.visitViewStatement?t.visitViewStatement(this):t.visitChildren(this)}},VA=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}CHECK(){return this.getToken(cn.CHECK,0)}OPTION(){return this.getToken(cn.OPTION,0)}CASCADED(){return this.getToken(cn.CASCADED,0)}LOCAL(){return this.getToken(cn.LOCAL,0)}get ruleIndex(){return cn.RULE_optionalCheckOption}accept(t){return t.visitOptionalCheckOption?t.visitOptionalCheckOption(this):t.visitChildren(this)}},XA=class extends ga{constructor(t,e){super(t,e)}LOAD(){return this.getToken(cn.LOAD,0)}fileName(){return this.getRuleContext(0,Yu)}get ruleIndex(){return cn.RULE_loadStatement}accept(t){return t.visitLoadStatement?t.visitLoadStatement(this):t.visitChildren(this)}},KA=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}name(){return this.getRuleContext(0,yu)}optionalWith(){return this.getRuleContext(0,An)}createDatabaseOptionList(){return this.getRuleContext(0,QA)}get ruleIndex(){return cn.RULE_createDatabaseStatement}accept(t){return t.visitCreateDatabaseStatement?t.visitCreateDatabaseStatement(this):t.visitChildren(this)}},QA=class extends ga{constructor(t,e){super(t,e)}createDatabaseOptionItem(t){return void 0===t?this.getRuleContexts(JA):this.getRuleContext(t,JA)}get ruleIndex(){return cn.RULE_createDatabaseOptionList}accept(t){return t.visitCreateDatabaseOptionList?t.visitCreateDatabaseOptionList(this):t.visitChildren(this)}},JA=class extends ga{constructor(t,e){super(t,e)}createDatabaseOptionName(){return this.getRuleContext(0,ZA)}signedIconst(){return this.getRuleContext(0,qu)}booleanOrString(){return this.getRuleContext(0,vn)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}EQUAL(){return this.getToken(cn.EQUAL,0)}get ruleIndex(){return cn.RULE_createDatabaseOptionItem}accept(t){return t.visitCreateDatabaseOptionItem?t.visitCreateDatabaseOptionItem(this):t.visitChildren(this)}},ZA=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}CONNECTION(){return this.getToken(cn.CONNECTION,0)}LIMIT(){return this.getToken(cn.LIMIT,0)}ENCODING(){return this.getToken(cn.ENCODING,0)}LOCATION(){return this.getToken(cn.LOCATION,0)}OWNER(){return this.getToken(cn.OWNER,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}TEMPLATE(){return this.getToken(cn.TEMPLATE,0)}get ruleIndex(){return cn.RULE_createDatabaseOptionName}accept(t){return t.visitCreateDatabaseOptionName?t.visitCreateDatabaseOptionName(this):t.visitChildren(this)}},qA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}WITH(){return this.getToken(cn.WITH,0)}createDatabaseOptionList(){return this.getRuleContext(0,QA)}SET(){return this.getToken(cn.SET,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_alterDatabaseStatement}accept(t){return t.visitAlterDatabaseStatement?t.visitAlterDatabaseStatement(this):t.visitChildren(this)}},jA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}setResetClause(){return this.getRuleContext(0,Wn)}get ruleIndex(){return cn.RULE_alterDatabaseSetStatement}accept(t){return t.visitAlterDatabaseSetStatement?t.visitAlterDatabaseSetStatement(this):t.visitChildren(this)}},zA=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}optionalWith(){return this.getRuleContext(0,An)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}FORCE(t){return void 0===t?this.getTokens(cn.FORCE):this.getToken(cn.FORCE,t)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_dropDatabaseStatement}accept(t){return t.visitDropDatabaseStatement?t.visitDropDatabaseStatement(this):t.visitChildren(this)}},$A=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}COLLATION(){return this.getToken(cn.COLLATION,0)}anyName(){return this.getRuleContext(0,mo)}REFRESH(){return this.getToken(cn.REFRESH,0)}VERSION_P(){return this.getToken(cn.VERSION_P,0)}get ruleIndex(){return cn.RULE_alterCollationStatement}accept(t){return t.visitAlterCollationStatement?t.visitAlterCollationStatement(this):t.visitChildren(this)}},tS=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}SYSTEM_P(){return this.getToken(cn.SYSTEM_P,0)}genericSetClause(){return this.getRuleContext(0,gn)}SET(){return this.getToken(cn.SET,0)}RESET(){return this.getToken(cn.RESET,0)}get ruleIndex(){return cn.RULE_alterSystemStatement}accept(t){return t.visitAlterSystemStatement?t.visitAlterSystemStatement(this):t.visitChildren(this)}},eS=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}anyName(){return this.getRuleContext(0,mo)}optionalAs(){return this.getRuleContext(0,rS)}typeName(){return this.getRuleContext(0,LO)}columnQualifierList(){return this.getRuleContext(0,fh)}get ruleIndex(){return cn.RULE_createDomainStatement}accept(t){return t.visitCreateDomainStatement?t.visitCreateDomainStatement(this):t.visitChildren(this)}},sS=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}anyName(){return this.getRuleContext(0,mo)}alterDomainCommand(){return this.getRuleContext(0,aS)}get ruleIndex(){return cn.RULE_alterDomainStatement}accept(t){return t.visitAlterDomainStatement?t.visitAlterDomainStatement(this):t.visitChildren(this)}},aS=class extends ga{constructor(t,e){super(t,e)}alterColumnDefault(){return this.getRuleContext(0,sh)}DROP(){return this.getToken(cn.DROP,0)}NOT(){return this.getToken(cn.NOT,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}SET(){return this.getToken(cn.SET,0)}ADD_P(){return this.getToken(cn.ADD_P,0)}tableConstraint(){return this.getRuleContext(0,Qh)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}constraintName(){return this.getRuleContext(0,Hu)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}VALIDATE(){return this.getToken(cn.VALIDATE,0)}get ruleIndex(){return cn.RULE_alterDomainCommand}accept(t){return t.visitAlterDomainCommand?t.visitAlterDomainCommand(this):t.visitChildren(this)}},rS=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(cn.AS,0)}get ruleIndex(){return cn.RULE_optionalAs}accept(t){return t.visitOptionalAs?t.visitOptionalAs(this):t.visitChildren(this)}},iS=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}anyName(){return this.getRuleContext(0,mo)}definition(){return this.getRuleContext(0,$T)}get ruleIndex(){return cn.RULE_altertsDictionaryStatement}accept(t){return t.visitAltertsDictionaryStatement?t.visitAltertsDictionaryStatement(this):t.visitChildren(this)}},cS=class extends ga{constructor(t,e){super(t,e)}ALTER(t){return void 0===t?this.getTokens(cn.ALTER):this.getToken(cn.ALTER,t)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}anyName(t){return void 0===t?this.getRuleContexts(mo):this.getRuleContext(t,mo)}ADD_P(){return this.getToken(cn.ADD_P,0)}MAPPING(){return this.getToken(cn.MAPPING,0)}FOR(){return this.getToken(cn.FOR,0)}nameList(){return this.getRuleContext(0,Bu)}WITH(){return this.getToken(cn.WITH,0)}anyNameList(){return this.getRuleContext(0,Uo)}REPLACE(){return this.getToken(cn.REPLACE,0)}DROP(){return this.getToken(cn.DROP,0)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_altertsConfigurationStatement}accept(t){return t.visitAltertsConfigurationStatement?t.visitAltertsConfigurationStatement(this):t.visitChildren(this)}},nS=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}CONVERSION_P(){return this.getToken(cn.CONVERSION_P,0)}anyName(t){return void 0===t?this.getRuleContexts(mo):this.getRuleContext(t,mo)}FOR(){return this.getToken(cn.FOR,0)}sconst(t){return void 0===t?this.getRuleContexts(Qu):this.getRuleContext(t,Qu)}TO(){return this.getToken(cn.TO,0)}FROM(){return this.getToken(cn.FROM,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_createConversionStatement}accept(t){return t.visitCreateConversionStatement?t.visitCreateConversionStatement(this):t.visitChildren(this)}},hS=class extends ga{constructor(t,e){super(t,e)}CLUSTER(){return this.getToken(cn.CLUSTER,0)}optionalVerbose(){return this.getRuleContext(0,IS)}qualifiedName(){return this.getRuleContext(0,vu)}clusterIndexSpecification(){return this.getRuleContext(0,ES)}name(){return this.getRuleContext(0,yu)}ON(){return this.getToken(cn.ON,0)}get ruleIndex(){return cn.RULE_clusterStatement}accept(t){return t.visitClusterStatement?t.visitClusterStatement(this):t.visitChildren(this)}},ES=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_clusterIndexSpecification}accept(t){return t.visitClusterIndexSpecification?t.visitClusterIndexSpecification(this):t.visitChildren(this)}},TS=class extends ga{constructor(t,e){super(t,e)}VACUUM(){return this.getToken(cn.VACUUM,0)}optionalVerbose(){return this.getRuleContext(0,IS)}optionalVacuumRelationList(){return this.getRuleContext(0,LS)}FULL(){return this.getToken(cn.FULL,0)}FREEZE(){return this.getToken(cn.FREEZE,0)}analyzeKeyword(){return this.getRuleContext(0,AS)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}vacuumAnalyzeOptionList(){return this.getRuleContext(0,RS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_vacuumStatement}accept(t){return t.visitVacuumStatement?t.visitVacuumStatement(this):t.visitChildren(this)}},oS=class extends ga{constructor(t,e){super(t,e)}analyzeKeyword(){return this.getRuleContext(0,AS)}optionalVerbose(){return this.getRuleContext(0,IS)}optionalVacuumRelationList(){return this.getRuleContext(0,LS)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}vacuumAnalyzeOptionList(){return this.getRuleContext(0,RS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_analyzeStatement}accept(t){return t.visitAnalyzeStatement?t.visitAnalyzeStatement(this):t.visitChildren(this)}},RS=class extends ga{constructor(t,e){super(t,e)}vacuumAnalyzeOptionElement(t){return void 0===t?this.getRuleContexts(SS):this.getRuleContext(t,SS)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_vacuumAnalyzeOptionList}accept(t){return t.visitVacuumAnalyzeOptionList?t.visitVacuumAnalyzeOptionList(this):t.visitChildren(this)}},AS=class extends ga{constructor(t,e){super(t,e)}ANALYZE(){return this.getToken(cn.ANALYZE,0)}ANALYSE(){return this.getToken(cn.ANALYSE,0)}get ruleIndex(){return cn.RULE_analyzeKeyword}accept(t){return t.visitAnalyzeKeyword?t.visitAnalyzeKeyword(this):t.visitChildren(this)}},SS=class extends ga{constructor(t,e){super(t,e)}vacuumAnalyzeOptionName(){return this.getRuleContext(0,lS)}vacuumAnalyzeOptionArgument(){return this.getRuleContext(0,OS)}get ruleIndex(){return cn.RULE_vacuumAnalyzeOptionElement}accept(t){return t.visitVacuumAnalyzeOptionElement?t.visitVacuumAnalyzeOptionElement(this):t.visitChildren(this)}},lS=class extends ga{constructor(t,e){super(t,e)}nonReservedWord(){return this.getRuleContext(0,sN)}analyzeKeyword(){return this.getRuleContext(0,AS)}get ruleIndex(){return cn.RULE_vacuumAnalyzeOptionName}accept(t){return t.visitVacuumAnalyzeOptionName?t.visitVacuumAnalyzeOptionName(this):t.visitChildren(this)}},OS=class extends ga{constructor(t,e){super(t,e)}booleanOrString(){return this.getRuleContext(0,vn)}numericOnly(){return this.getRuleContext(0,xE)}get ruleIndex(){return cn.RULE_vacuumAnalyzeOptionArgument}accept(t){return t.visitVacuumAnalyzeOptionArgument?t.visitVacuumAnalyzeOptionArgument(this):t.visitChildren(this)}},IS=class extends ga{constructor(t,e){super(t,e)}VERBOSE(){return this.getToken(cn.VERBOSE,0)}get ruleIndex(){return cn.RULE_optionalVerbose}accept(t){return t.visitOptionalVerbose?t.visitOptionalVerbose(this):t.visitChildren(this)}},uS=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}nameList(){return this.getRuleContext(0,Bu)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalNameList}accept(t){return t.visitOptionalNameList?t.visitOptionalNameList(this):t.visitChildren(this)}},NS=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}optionalNameList(){return this.getRuleContext(0,uS)}get ruleIndex(){return cn.RULE_vacuumRelation}accept(t){return t.visitVacuumRelation?t.visitVacuumRelation(this):t.visitChildren(this)}},LS=class extends ga{constructor(t,e){super(t,e)}vacuumRelation(t){return void 0===t?this.getRuleContexts(NS):this.getRuleContext(t,NS)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_optionalVacuumRelationList}accept(t){return t.visitOptionalVacuumRelationList?t.visitOptionalVacuumRelationList(this):t.visitChildren(this)}},CS=class extends ga{constructor(t,e){super(t,e)}EXPLAIN(){return this.getToken(cn.EXPLAIN,0)}explainableStatement(){return this.getRuleContext(0,_S)}analyzeKeyword(){return this.getRuleContext(0,AS)}optionalVerbose(){return this.getRuleContext(0,IS)}VERBOSE(){return this.getToken(cn.VERBOSE,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}explainOptionElement(t){return void 0===t?this.getRuleContexts(PS):this.getRuleContext(t,PS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_explainStatement}accept(t){return t.visitExplainStatement?t.visitExplainStatement(this):t.visitChildren(this)}},_S=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,il)}insertStatement(){return this.getRuleContext(0,kS)}updateStatement(){return this.getRuleContext(0,zS)}deleteStatement(){return this.getRuleContext(0,XS)}declareCursorStatement(){return this.getRuleContext(0,sl)}createAsStatement(){return this.getRuleContext(0,LE)}createMaterializedViewStatement(){return this.getRuleContext(0,PE)}refreshMaterializedViewStatement(){return this.getRuleContext(0,dE)}executeStatement(){return this.getRuleContext(0,pS)}get ruleIndex(){return cn.RULE_explainableStatement}accept(t){return t.visitExplainableStatement?t.visitExplainableStatement(this):t.visitChildren(this)}},PS=class extends ga{constructor(t,e){super(t,e)}explainOptionName(){return this.getRuleContext(0,MS)}explainOptionArgument(){return this.getRuleContext(0,dS)}get ruleIndex(){return cn.RULE_explainOptionElement}accept(t){return t.visitExplainOptionElement?t.visitExplainOptionElement(this):t.visitChildren(this)}},MS=class extends ga{constructor(t,e){super(t,e)}nonReservedWord(){return this.getRuleContext(0,sN)}analyzeKeyword(){return this.getRuleContext(0,AS)}get ruleIndex(){return cn.RULE_explainOptionName}accept(t){return t.visitExplainOptionName?t.visitExplainOptionName(this):t.visitChildren(this)}},dS=class extends ga{constructor(t,e){super(t,e)}booleanOrString(){return this.getRuleContext(0,vn)}numericOnly(){return this.getRuleContext(0,xE)}get ruleIndex(){return cn.RULE_explainOptionArgument}accept(t){return t.visitExplainOptionArgument?t.visitExplainOptionArgument(this):t.visitChildren(this)}},US=class extends ga{constructor(t,e){super(t,e)}PREPARE(){return this.getToken(cn.PREPARE,0)}name(){return this.getRuleContext(0,yu)}prepareTypeClause(){return this.getRuleContext(0,mS)}AS(){return this.getToken(cn.AS,0)}preparableStatement(){return this.getRuleContext(0,DS)}get ruleIndex(){return cn.RULE_prepareStatement}accept(t){return t.visitPrepareStatement?t.visitPrepareStatement(this):t.visitChildren(this)}},mS=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeList(){return this.getRuleContext(0,zI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_prepareTypeClause}accept(t){return t.visitPrepareTypeClause?t.visitPrepareTypeClause(this):t.visitChildren(this)}},DS=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,il)}insertStatement(){return this.getRuleContext(0,kS)}updateStatement(){return this.getRuleContext(0,zS)}deleteStatement(){return this.getRuleContext(0,XS)}get ruleIndex(){return cn.RULE_preparableStatement}accept(t){return t.visitPreparableStatement?t.visitPreparableStatement(this):t.visitChildren(this)}},pS=class extends ga{constructor(t,e){super(t,e)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}name(){return this.getRuleContext(0,yu)}executeParameterClause(){return this.getRuleContext(0,gS)}CREATE(){return this.getToken(cn.CREATE,0)}temporaryOption(){return this.getRuleContext(0,gh)}TABLE(){return this.getToken(cn.TABLE,0)}createAsTarget(){return this.getRuleContext(0,CE)}AS(){return this.getToken(cn.AS,0)}withData(){return this.getRuleContext(0,_E)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_executeStatement}accept(t){return t.visitExecuteStatement?t.visitExecuteStatement(this):t.visitChildren(this)}},gS=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_executeParameterClause}accept(t){return t.visitExecuteParameterClause?t.visitExecuteParameterClause(this):t.visitChildren(this)}},xS=class extends ga{constructor(t,e){super(t,e)}DEALLOCATE(){return this.getToken(cn.DEALLOCATE,0)}name(){return this.getRuleContext(0,yu)}PREPARE(){return this.getToken(cn.PREPARE,0)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_deallocateStatement}accept(t){return t.visitDeallocateStatement?t.visitDeallocateStatement(this):t.visitChildren(this)}},kS=class extends ga{constructor(t,e){super(t,e)}INSERT(){return this.getToken(cn.INSERT,0)}INTO(){return this.getToken(cn.INTO,0)}insertTarget(){return this.getRuleContext(0,HS)}insertRest(){return this.getRuleContext(0,GS)}optionalOnConflict(){return this.getRuleContext(0,yS)}returningClause(){return this.getRuleContext(0,YS)}withClause(){return this.getRuleContext(0,Rl)}get ruleIndex(){return cn.RULE_insertStatement}accept(t){return t.visitInsertStatement?t.visitInsertStatement(this):t.visitChildren(this)}},HS=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}AS(){return this.getToken(cn.AS,0)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_insertTarget}accept(t){return t.visitInsertTarget?t.visitInsertTarget(this):t.visitChildren(this)}},GS=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,il)}OVERRIDING(){return this.getToken(cn.OVERRIDING,0)}overrideKind(){return this.getRuleContext(0,FS)}VALUE_P(){return this.getToken(cn.VALUE_P,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}insertColumnList(){return this.getRuleContext(0,vS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}VALUES(){return this.getToken(cn.VALUES,0)}get ruleIndex(){return cn.RULE_insertRest}accept(t){return t.visitInsertRest?t.visitInsertRest(this):t.visitChildren(this)}},FS=class extends ga{constructor(t,e){super(t,e)}USER(){return this.getToken(cn.USER,0)}SYSTEM_P(){return this.getToken(cn.SYSTEM_P,0)}get ruleIndex(){return cn.RULE_overrideKind}accept(t){return t.visitOverrideKind?t.visitOverrideKind(this):t.visitChildren(this)}},vS=class extends ga{constructor(t,e){super(t,e)}insertColumnItem(t){return void 0===t?this.getRuleContexts(BS):this.getRuleContext(t,BS)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_insertColumnList}accept(t){return t.visitInsertColumnList?t.visitInsertColumnList(this):t.visitChildren(this)}},BS=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}optionalIndirection(){return this.getRuleContext(0,Nu)}get ruleIndex(){return cn.RULE_insertColumnItem}accept(t){return t.visitInsertColumnItem?t.visitInsertColumnItem(this):t.visitChildren(this)}},yS=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(cn.ON,0)}CONFLICT(){return this.getToken(cn.CONFLICT,0)}optionalConflictExpr(){return this.getRuleContext(0,fS)}DO(){return this.getToken(cn.DO,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}SET(){return this.getToken(cn.SET,0)}setClauseList(){return this.getRuleContext(0,$S)}whereClause(){return this.getRuleContext(0,EO)}NOTHING(){return this.getToken(cn.NOTHING,0)}get ruleIndex(){return cn.RULE_optionalOnConflict}accept(t){return t.visitOptionalOnConflict?t.visitOptionalOnConflict(this):t.visitChildren(this)}},fS=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}indexParameters(){return this.getRuleContext(0,cR)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}whereClause(){return this.getRuleContext(0,EO)}ON(){return this.getToken(cn.ON,0)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}constraintName(){return this.getRuleContext(0,Hu)}get ruleIndex(){return cn.RULE_optionalConflictExpr}accept(t){return t.visitOptionalConflictExpr?t.visitOptionalConflictExpr(this):t.visitChildren(this)}},YS=class extends ga{constructor(t,e){super(t,e)}RETURNING(){return this.getToken(cn.RETURNING,0)}targetList(){return this.getRuleContext(0,Cu)}get ruleIndex(){return cn.RULE_returningClause}accept(t){return t.visitReturningClause?t.visitReturningClause(this):t.visitChildren(this)}},wS=class extends ga{constructor(t,e){super(t,e)}MERGE(){return this.getToken(cn.MERGE,0)}qualifiedName(t){return void 0===t?this.getRuleContexts(vu):this.getRuleContext(t,vu)}USING(){return this.getToken(cn.USING,0)}ON(){return this.getToken(cn.ON,0)}expression1(){return this.getRuleContext(0,wO)}selectWithParenthesis(){return this.getRuleContext(0,cl)}mergeInsertClause(){return this.getRuleContext(0,bS)}mergeUpdateClause(){return this.getRuleContext(0,WS)}INTO(){return this.getToken(cn.INTO,0)}aliasClause(t){return void 0===t?this.getRuleContexts(Jl):this.getRuleContext(t,Jl)}mergeDeleteClause(){return this.getRuleContext(0,VS)}get ruleIndex(){return cn.RULE_mergeStatement}accept(t){return t.visitMergeStatement?t.visitMergeStatement(this):t.visitChildren(this)}},bS=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}NOT(){return this.getToken(cn.NOT,0)}MATCHED(){return this.getToken(cn.MATCHED,0)}INSERT(){return this.getToken(cn.INSERT,0)}valuesClause(){return this.getRuleContext(0,Wl)}AND(){return this.getToken(cn.AND,0)}expression1(){return this.getRuleContext(0,wO)}THEN(){return this.getToken(cn.THEN,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}insertColumnList(){return this.getRuleContext(0,vS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_mergeInsertClause}accept(t){return t.visitMergeInsertClause?t.visitMergeInsertClause(this):t.visitChildren(this)}},WS=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}MATCHED(){return this.getToken(cn.MATCHED,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}SET(){return this.getToken(cn.SET,0)}setClauseList(){return this.getRuleContext(0,$S)}AND(){return this.getToken(cn.AND,0)}expression1(){return this.getRuleContext(0,wO)}THEN(){return this.getToken(cn.THEN,0)}get ruleIndex(){return cn.RULE_mergeUpdateClause}accept(t){return t.visitMergeUpdateClause?t.visitMergeUpdateClause(this):t.visitChildren(this)}},VS=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}MATCHED(){return this.getToken(cn.MATCHED,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}THEN(){return this.getToken(cn.THEN,0)}get ruleIndex(){return cn.RULE_mergeDeleteClause}accept(t){return t.visitMergeDeleteClause?t.visitMergeDeleteClause(this):t.visitChildren(this)}},XS=class extends ga{constructor(t,e){super(t,e)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}FROM(){return this.getToken(cn.FROM,0)}relationExpressionOptionalAlias(){return this.getRuleContext(0,aO)}usingClause(){return this.getRuleContext(0,KS)}whereOrCurrentClause(){return this.getRuleContext(0,TO)}returningClause(){return this.getRuleContext(0,YS)}withClause(){return this.getRuleContext(0,Rl)}get ruleIndex(){return cn.RULE_deleteStatement}accept(t){return t.visitDeleteStatement?t.visitDeleteStatement(this):t.visitChildren(this)}},KS=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}fromList(){return this.getRuleContext(0,Xl)}get ruleIndex(){return cn.RULE_usingClause}accept(t){return t.visitUsingClause?t.visitUsingClause(this):t.visitChildren(this)}},QS=class extends ga{constructor(t,e){super(t,e)}LOCK_P(){return this.getToken(cn.LOCK_P,0)}optionalTable(){return this.getRuleContext(0,Il)}relationExpressionList(){return this.getRuleContext(0,sO)}optionalLock(){return this.getRuleContext(0,JS)}optionalNowait(){return this.getRuleContext(0,qS)}get ruleIndex(){return cn.RULE_lockStatement}accept(t){return t.visitLockStatement?t.visitLockStatement(this):t.visitChildren(this)}},JS=class extends ga{constructor(t,e){super(t,e)}IN_P(){return this.getToken(cn.IN_P,0)}lockType(){return this.getRuleContext(0,ZS)}MODE(){return this.getToken(cn.MODE,0)}get ruleIndex(){return cn.RULE_optionalLock}accept(t){return t.visitOptionalLock?t.visitOptionalLock(this):t.visitChildren(this)}},ZS=class extends ga{constructor(t,e){super(t,e)}ACCESS(){return this.getToken(cn.ACCESS,0)}SHARE(){return this.getToken(cn.SHARE,0)}EXCLUSIVE(){return this.getToken(cn.EXCLUSIVE,0)}ROW(){return this.getToken(cn.ROW,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}get ruleIndex(){return cn.RULE_lockType}accept(t){return t.visitLockType?t.visitLockType(this):t.visitChildren(this)}},qS=class extends ga{constructor(t,e){super(t,e)}NOWAIT(){return this.getToken(cn.NOWAIT,0)}get ruleIndex(){return cn.RULE_optionalNowait}accept(t){return t.visitOptionalNowait?t.visitOptionalNowait(this):t.visitChildren(this)}},jS=class extends ga{constructor(t,e){super(t,e)}NOWAIT(){return this.getToken(cn.NOWAIT,0)}SKIP_P(){return this.getToken(cn.SKIP_P,0)}LOCKED(){return this.getToken(cn.LOCKED,0)}get ruleIndex(){return cn.RULE_optionalNowaitOrSkip}accept(t){return t.visitOptionalNowaitOrSkip?t.visitOptionalNowaitOrSkip(this):t.visitChildren(this)}},zS=class extends ga{constructor(t,e){super(t,e)}UPDATE(){return this.getToken(cn.UPDATE,0)}relationExpressionOptionalAlias(){return this.getRuleContext(0,aO)}SET(){return this.getToken(cn.SET,0)}setClauseList(){return this.getRuleContext(0,$S)}fromClause(){return this.getRuleContext(0,Vl)}whereOrCurrentClause(){return this.getRuleContext(0,TO)}returningClause(){return this.getRuleContext(0,YS)}withClause(){return this.getRuleContext(0,Rl)}get ruleIndex(){return cn.RULE_updateStatement}accept(t){return t.visitUpdateStatement?t.visitUpdateStatement(this):t.visitChildren(this)}},$S=class extends ga{constructor(t,e){super(t,e)}setClause(t){return void 0===t?this.getRuleContexts(tl):this.getRuleContext(t,tl)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_setClauseList}accept(t){return t.visitSetClauseList?t.visitSetClauseList(this):t.visitChildren(this)}},tl=class extends ga{constructor(t,e){super(t,e)}setTarget(t){return void 0===t?this.getRuleContexts(el):this.getRuleContext(t,el)}EQUAL(){return this.getToken(cn.EQUAL,0)}expression1(){return this.getRuleContext(0,wO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_setClause}accept(t){return t.visitSetClause?t.visitSetClause(this):t.visitChildren(this)}},el=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}optionalIndirection(){return this.getRuleContext(0,Nu)}get ruleIndex(){return cn.RULE_setTarget}accept(t){return t.visitSetTarget?t.visitSetTarget(this):t.visitChildren(this)}},sl=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(cn.DECLARE,0)}cursorName(){return this.getRuleContext(0,al)}CURSOR(){return this.getToken(cn.CURSOR,0)}optionalHold(){return this.getRuleContext(0,rl)}FOR(){return this.getToken(cn.FOR,0)}selectStatement(){return this.getRuleContext(0,il)}NO(t){return void 0===t?this.getTokens(cn.NO):this.getToken(cn.NO,t)}SCROLL(t){return void 0===t?this.getTokens(cn.SCROLL):this.getToken(cn.SCROLL,t)}BINARY(t){return void 0===t?this.getTokens(cn.BINARY):this.getToken(cn.BINARY,t)}INSENSITIVE(t){return void 0===t?this.getTokens(cn.INSENSITIVE):this.getToken(cn.INSENSITIVE,t)}get ruleIndex(){return cn.RULE_declareCursorStatement}accept(t){return t.visitDeclareCursorStatement?t.visitDeclareCursorStatement(this):t.visitChildren(this)}},al=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_cursorName}accept(t){return t.visitCursorName?t.visitCursorName(this):t.visitChildren(this)}},rl=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}HOLD(){return this.getToken(cn.HOLD,0)}WITHOUT(){return this.getToken(cn.WITHOUT,0)}get ruleIndex(){return cn.RULE_optionalHold}accept(t){return t.visitOptionalHold?t.visitOptionalHold(this):t.visitChildren(this)}},il=class extends ga{constructor(t,e){super(t,e)}selectWithoutParenthesis(){return this.getRuleContext(0,nl)}selectWithParenthesis(){return this.getRuleContext(0,cl)}get ruleIndex(){return cn.RULE_selectStatement}accept(t){return t.visitSelectStatement?t.visitSelectStatement(this):t.visitChildren(this)}},cl=class t extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}selectWithoutParenthesis(){return this.getRuleContext(0,nl)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}selectWithParenthesis(){return this.getRuleContext(0,t)}get ruleIndex(){return cn.RULE_selectWithParenthesis}accept(t){return t.visitSelectWithParenthesis?t.visitSelectWithParenthesis(this):t.visitChildren(this)}},nl=class extends ga{constructor(t,e){super(t,e)}selectClause(){return this.getRuleContext(0,hl)}optionalSortClause(){return this.getRuleContext(0,Cl)}forLockingClause(){return this.getRuleContext(0,fl)}optionalSelectLimit(){return this.getRuleContext(0,Ul)}selectLimit(){return this.getRuleContext(0,dl)}withClause(){return this.getRuleContext(0,Rl)}get ruleIndex(){return cn.RULE_selectWithoutParenthesis}accept(t){return t.visitSelectWithoutParenthesis?t.visitSelectWithoutParenthesis(this):t.visitChildren(this)}},hl=class extends ga{constructor(t,e){super(t,e)}simpleSelectIntersect(t){return void 0===t?this.getRuleContexts(El):this.getRuleContext(t,El)}allOrDistinct(t){return void 0===t?this.getRuleContexts(ul):this.getRuleContext(t,ul)}UNION(t){return void 0===t?this.getTokens(cn.UNION):this.getToken(cn.UNION,t)}EXCEPT(t){return void 0===t?this.getTokens(cn.EXCEPT):this.getToken(cn.EXCEPT,t)}get ruleIndex(){return cn.RULE_selectClause}accept(t){return t.visitSelectClause?t.visitSelectClause(this):t.visitChildren(this)}},El=class extends ga{constructor(t,e){super(t,e)}simpleSelectPramary(t){return void 0===t?this.getRuleContexts(ol):this.getRuleContext(t,ol)}INTERSECT(t){return void 0===t?this.getTokens(cn.INTERSECT):this.getToken(cn.INTERSECT,t)}allOrDistinct(t){return void 0===t?this.getRuleContexts(ul):this.getRuleContext(t,ul)}get ruleIndex(){return cn.RULE_simpleSelectIntersect}accept(t){return t.visitSimpleSelectIntersect?t.visitSimpleSelectIntersect(this):t.visitChildren(this)}},Tl=class extends ga{constructor(t,e){super(t,e)}targetList(){return this.getRuleContext(0,Cu)}intoClause(){return this.getRuleContext(0,ll)}allClause(){return this.getRuleContext(0,Ll)}optionalTargetList(){return this.getRuleContext(0,Lu)}distinctClause(){return this.getRuleContext(0,Nl)}get ruleIndex(){return cn.RULE_simpleSelectStart}accept(t){return t.visitSimpleSelectStart?t.visitSimpleSelectStart(this):t.visitChildren(this)}},ol=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(cn.SELECT,0)}simpleSelectStart(){return this.getRuleContext(0,Tl)}fromClause(){return this.getRuleContext(0,Vl)}whereClause(){return this.getRuleContext(0,EO)}groupClause(){return this.getRuleContext(0,Fl)}havingClause(){return this.getRuleContext(0,yl)}windowClause(){return this.getRuleContext(0,pI)}valuesClause(){return this.getRuleContext(0,Wl)}TABLE(){return this.getToken(cn.TABLE,0)}relationExpression(){return this.getRuleContext(0,eO)}selectWithParenthesis(){return this.getRuleContext(0,cl)}get ruleIndex(){return cn.RULE_simpleSelectPramary}accept(t){return t.visitSimpleSelectPramary?t.visitSimpleSelectPramary(this):t.visitChildren(this)}},Rl=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}commonTableExpression(t){return void 0===t?this.getRuleContexts(Al):this.getRuleContext(t,Al)}RECURSIVE(){return this.getToken(cn.RECURSIVE,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_withClause}accept(t){return t.visitWithClause?t.visitWithClause(this):t.visitChildren(this)}},Al=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}optionalNameList(){return this.getRuleContext(0,uS)}AS(){return this.getToken(cn.AS,0)}optionalMaterialized(){return this.getRuleContext(0,Sl)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}preparableStatement(){return this.getRuleContext(0,DS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_commonTableExpression}accept(t){return t.visitCommonTableExpression?t.visitCommonTableExpression(this):t.visitChildren(this)}},Sl=class extends ga{constructor(t,e){super(t,e)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}NOT(){return this.getToken(cn.NOT,0)}get ruleIndex(){return cn.RULE_optionalMaterialized}accept(t){return t.visitOptionalMaterialized?t.visitOptionalMaterialized(this):t.visitChildren(this)}},ll=class extends ga{constructor(t,e){super(t,e)}INTO(){return this.getToken(cn.INTO,0)}optionalTemporaryTableName(){return this.getRuleContext(0,Ol)}intoTarget(){return this.getRuleContext(0,BL)}STRICT_P(){return this.getToken(cn.STRICT_P,0)}get ruleIndex(){return cn.RULE_intoClause}accept(t){return t.visitIntoClause?t.visitIntoClause(this):t.visitChildren(this)}},Ol=class extends ga{constructor(t,e){super(t,e)}optionalTable(){return this.getRuleContext(0,Il)}qualifiedName(){return this.getRuleContext(0,vu)}TEMPORARY(){return this.getToken(cn.TEMPORARY,0)}TEMP(){return this.getToken(cn.TEMP,0)}LOCAL(){return this.getToken(cn.LOCAL,0)}GLOBAL(){return this.getToken(cn.GLOBAL,0)}UNLOGGED(){return this.getToken(cn.UNLOGGED,0)}TABLE(){return this.getToken(cn.TABLE,0)}get ruleIndex(){return cn.RULE_optionalTemporaryTableName}accept(t){return t.visitOptionalTemporaryTableName?t.visitOptionalTemporaryTableName(this):t.visitChildren(this)}},Il=class extends ga{constructor(t,e){super(t,e)}TABLE(){return this.getToken(cn.TABLE,0)}get ruleIndex(){return cn.RULE_optionalTable}accept(t){return t.visitOptionalTable?t.visitOptionalTable(this):t.visitChildren(this)}},ul=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(cn.ALL,0)}DISTINCT(){return this.getToken(cn.DISTINCT,0)}get ruleIndex(){return cn.RULE_allOrDistinct}accept(t){return t.visitAllOrDistinct?t.visitAllOrDistinct(this):t.visitChildren(this)}},Nl=class extends ga{constructor(t,e){super(t,e)}DISTINCT(){return this.getToken(cn.DISTINCT,0)}ON(){return this.getToken(cn.ON,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_distinctClause}accept(t){return t.visitDistinctClause?t.visitDistinctClause(this):t.visitChildren(this)}},Ll=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_allClause}accept(t){return t.visitAllClause?t.visitAllClause(this):t.visitChildren(this)}},Cl=class extends ga{constructor(t,e){super(t,e)}sortClause(){return this.getRuleContext(0,_l)}get ruleIndex(){return cn.RULE_optionalSortClause}accept(t){return t.visitOptionalSortClause?t.visitOptionalSortClause(this):t.visitChildren(this)}},_l=class extends ga{constructor(t,e){super(t,e)}ORDER(){return this.getToken(cn.ORDER,0)}BY(){return this.getToken(cn.BY,0)}sortByList(){return this.getRuleContext(0,Pl)}get ruleIndex(){return cn.RULE_sortClause}accept(t){return t.visitSortClause?t.visitSortClause(this):t.visitChildren(this)}},Pl=class extends ga{constructor(t,e){super(t,e)}sortBy(t){return void 0===t?this.getRuleContexts(Ml):this.getRuleContext(t,Ml)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_sortByList}accept(t){return t.visitSortByList?t.visitSortByList(this):t.visitChildren(this)}},Ml=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}optionalNullsOrder(){return this.getRuleContext(0,AR)}USING(){return this.getToken(cn.USING,0)}allOperatorQualifier(){return this.getRuleContext(0,QI)}optionalAscOrDesc(){return this.getRuleContext(0,RR)}get ruleIndex(){return cn.RULE_sortBy}accept(t){return t.visitSortBy?t.visitSortBy(this):t.visitChildren(this)}},dl=class extends ga{constructor(t,e){super(t,e)}limitClause(){return this.getRuleContext(0,ml)}offsetClause(){return this.getRuleContext(0,Dl)}get ruleIndex(){return cn.RULE_selectLimit}accept(t){return t.visitSelectLimit?t.visitSelectLimit(this):t.visitChildren(this)}},Ul=class extends ga{constructor(t,e){super(t,e)}selectLimit(){return this.getRuleContext(0,dl)}get ruleIndex(){return cn.RULE_optionalSelectLimit}accept(t){return t.visitOptionalSelectLimit?t.visitOptionalSelectLimit(this):t.visitChildren(this)}},ml=class extends ga{constructor(t,e){super(t,e)}LIMIT(){return this.getToken(cn.LIMIT,0)}selectLimitValue(){return this.getRuleContext(0,pl)}COMMA(){return this.getToken(cn.COMMA,0)}selectOffsetValue(){return this.getRuleContext(0,gl)}FETCH(){return this.getToken(cn.FETCH,0)}firstOrNext(){return this.getRuleContext(0,Gl)}selectFetchFirstValue(){return this.getRuleContext(0,xl)}rowOrRows(){return this.getRuleContext(0,Hl)}ONLY(){return this.getToken(cn.ONLY,0)}WITH(){return this.getToken(cn.WITH,0)}TIES(){return this.getToken(cn.TIES,0)}get ruleIndex(){return cn.RULE_limitClause}accept(t){return t.visitLimitClause?t.visitLimitClause(this):t.visitChildren(this)}},Dl=class extends ga{constructor(t,e){super(t,e)}OFFSET(){return this.getToken(cn.OFFSET,0)}selectOffsetValue(){return this.getRuleContext(0,gl)}selectFetchFirstValue(){return this.getRuleContext(0,xl)}rowOrRows(){return this.getRuleContext(0,Hl)}get ruleIndex(){return cn.RULE_offsetClause}accept(t){return t.visitOffsetClause?t.visitOffsetClause(this):t.visitChildren(this)}},pl=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_selectLimitValue}accept(t){return t.visitSelectLimitValue?t.visitSelectLimitValue(this):t.visitChildren(this)}},gl=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_selectOffsetValue}accept(t){return t.visitSelectOffsetValue?t.visitSelectOffsetValue(this):t.visitChildren(this)}},xl=class extends ga{constructor(t,e){super(t,e)}expression3(){return this.getRuleContext(0,EI)}PLUS(){return this.getToken(cn.PLUS,0)}anyConst(){return this.getRuleContext(0,kl)}MINUS(){return this.getToken(cn.MINUS,0)}get ruleIndex(){return cn.RULE_selectFetchFirstValue}accept(t){return t.visitSelectFetchFirstValue?t.visitSelectFetchFirstValue(this):t.visitChildren(this)}},kl=class extends ga{constructor(t,e){super(t,e)}iconst(){return this.getRuleContext(0,Ku)}fconst(){return this.getRuleContext(0,Xu)}get ruleIndex(){return cn.RULE_anyConst}accept(t){return t.visitAnyConst?t.visitAnyConst(this):t.visitChildren(this)}},Hl=class extends ga{constructor(t,e){super(t,e)}ROW(){return this.getToken(cn.ROW,0)}ROWS(){return this.getToken(cn.ROWS,0)}get ruleIndex(){return cn.RULE_rowOrRows}accept(t){return t.visitRowOrRows?t.visitRowOrRows(this):t.visitChildren(this)}},Gl=class extends ga{constructor(t,e){super(t,e)}FIRST_P(){return this.getToken(cn.FIRST_P,0)}NEXT(){return this.getToken(cn.NEXT,0)}get ruleIndex(){return cn.RULE_firstOrNext}accept(t){return t.visitFirstOrNext?t.visitFirstOrNext(this):t.visitChildren(this)}},Fl=class extends ga{constructor(t,e){super(t,e)}GROUP_P(){return this.getToken(cn.GROUP_P,0)}BY(){return this.getToken(cn.BY,0)}groupByList(){return this.getRuleContext(0,vl)}get ruleIndex(){return cn.RULE_groupClause}accept(t){return t.visitGroupClause?t.visitGroupClause(this):t.visitChildren(this)}},vl=class extends ga{constructor(t,e){super(t,e)}groupByItem(t){return void 0===t?this.getRuleContexts(Bl):this.getRuleContext(t,Bl)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_groupByList}accept(t){return t.visitGroupByList?t.visitGroupByList(this):t.visitChildren(this)}},Bl=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}CUBE(){return this.getToken(cn.CUBE,0)}expressionList(){return this.getRuleContext(0,ZI)}ROLLUP(){return this.getToken(cn.ROLLUP,0)}GROUPING(){return this.getToken(cn.GROUPING,0)}SETS(){return this.getToken(cn.SETS,0)}groupByList(){return this.getRuleContext(0,vl)}get ruleIndex(){return cn.RULE_groupByItem}accept(t){return t.visitGroupByItem?t.visitGroupByItem(this):t.visitChildren(this)}},yl=class extends ga{constructor(t,e){super(t,e)}HAVING(){return this.getToken(cn.HAVING,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_havingClause}accept(t){return t.visitHavingClause?t.visitHavingClause(this):t.visitChildren(this)}},fl=class extends ga{constructor(t,e){super(t,e)}forLockingItem(t){return void 0===t?this.getRuleContexts(Yl):this.getRuleContext(t,Yl)}FOR(){return this.getToken(cn.FOR,0)}READ(){return this.getToken(cn.READ,0)}ONLY(){return this.getToken(cn.ONLY,0)}get ruleIndex(){return cn.RULE_forLockingClause}accept(t){return t.visitForLockingClause?t.visitForLockingClause(this):t.visitChildren(this)}},Yl=class extends ga{constructor(t,e){super(t,e)}forLockingStrength(){return this.getRuleContext(0,wl)}lockedRelationsList(){return this.getRuleContext(0,bl)}optionalNowaitOrSkip(){return this.getRuleContext(0,jS)}get ruleIndex(){return cn.RULE_forLockingItem}accept(t){return t.visitForLockingItem?t.visitForLockingItem(this):t.visitChildren(this)}},wl=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}SHARE(){return this.getToken(cn.SHARE,0)}NO(){return this.getToken(cn.NO,0)}KEY(){return this.getToken(cn.KEY,0)}get ruleIndex(){return cn.RULE_forLockingStrength}accept(t){return t.visitForLockingStrength?t.visitForLockingStrength(this):t.visitChildren(this)}},bl=class extends ga{constructor(t,e){super(t,e)}OF(){return this.getToken(cn.OF,0)}qualifiedNameList(){return this.getRuleContext(0,du)}get ruleIndex(){return cn.RULE_lockedRelationsList}accept(t){return t.visitLockedRelationsList?t.visitLockedRelationsList(this):t.visitChildren(this)}},Wl=class extends ga{constructor(t,e){super(t,e)}VALUES(){return this.getToken(cn.VALUES,0)}OPEN_PAREN(t){return void 0===t?this.getTokens(cn.OPEN_PAREN):this.getToken(cn.OPEN_PAREN,t)}expressionList(t){return void 0===t?this.getRuleContexts(ZI):this.getRuleContext(t,ZI)}CLOSE_PAREN(t){return void 0===t?this.getTokens(cn.CLOSE_PAREN):this.getToken(cn.CLOSE_PAREN,t)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_valuesClause}accept(t){return t.visitValuesClause?t.visitValuesClause(this):t.visitChildren(this)}},Vl=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(cn.FROM,0)}fromList(){return this.getRuleContext(0,Xl)}get ruleIndex(){return cn.RULE_fromClause}accept(t){return t.visitFromClause?t.visitFromClause(this):t.visitChildren(this)}},Xl=class extends ga{constructor(t,e){super(t,e)}nonAnsiJoin(){return this.getRuleContext(0,Kl)}tableReference(t){return void 0===t?this.getRuleContexts(Ql):this.getRuleContext(t,Ql)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_fromList}accept(t){return t.visitFromList?t.visitFromList(this):t.visitChildren(this)}},Kl=class extends ga{constructor(t,e){super(t,e)}tableReference(t){return void 0===t?this.getRuleContexts(Ql):this.getRuleContext(t,Ql)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_nonAnsiJoin}accept(t){return t.visitNonAnsiJoin?t.visitNonAnsiJoin(this):t.visitChildren(this)}},Ql=class t extends ga{constructor(t,e){super(t,e)}relationExpression(){return this.getRuleContext(0,eO)}optionalAliasClause(){return this.getRuleContext(0,Zl)}functionTable(){return this.getRuleContext(0,iO)}functionAliasClause(){return this.getRuleContext(0,jl)}xmlTable(){return this.getRuleContext(0,SO)}selectWithParenthesis(){return this.getRuleContext(0,cl)}LATERAL_P(){return this.getToken(cn.LATERAL_P,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}tableReference(e){return void 0===e?this.getRuleContexts(t):this.getRuleContext(e,t)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}CROSS(t){return void 0===t?this.getTokens(cn.CROSS):this.getToken(cn.CROSS,t)}JOIN(t){return void 0===t?this.getTokens(cn.JOIN):this.getToken(cn.JOIN,t)}NATURAL(t){return void 0===t?this.getTokens(cn.NATURAL):this.getToken(cn.NATURAL,t)}joinQualifier(t){return void 0===t?this.getRuleContexts($l):this.getRuleContext(t,$l)}tableSampleClause(){return this.getRuleContext(0,rO)}joinType(t){return void 0===t?this.getRuleContexts(zl):this.getRuleContext(t,zl)}get ruleIndex(){return cn.RULE_tableReference}accept(t){return t.visitTableReference?t.visitTableReference(this):t.visitChildren(this)}},Jl=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}AS(){return this.getToken(cn.AS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}nameList(){return this.getRuleContext(0,Bu)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_aliasClause}accept(t){return t.visitAliasClause?t.visitAliasClause(this):t.visitChildren(this)}},Zl=class extends ga{constructor(t,e){super(t,e)}tableAliasClause(){return this.getRuleContext(0,ql)}get ruleIndex(){return cn.RULE_optionalAliasClause}accept(t){return t.visitOptionalAliasClause?t.visitOptionalAliasClause(this):t.visitChildren(this)}},ql=class extends ga{constructor(t,e){super(t,e)}tableAlias(){return this.getRuleContext(0,tN)}AS(){return this.getToken(cn.AS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}nameList(){return this.getRuleContext(0,Bu)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_tableAliasClause}accept(t){return t.visitTableAliasClause?t.visitTableAliasClause(this):t.visitChildren(this)}},jl=class extends ga{constructor(t,e){super(t,e)}aliasClause(){return this.getRuleContext(0,Jl)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}tableFunctionElementList(){return this.getRuleContext(0,RO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}AS(){return this.getToken(cn.AS,0)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_functionAliasClause}accept(t){return t.visitFunctionAliasClause?t.visitFunctionAliasClause(this):t.visitChildren(this)}},zl=class extends ga{constructor(t,e){super(t,e)}FULL(){return this.getToken(cn.FULL,0)}LEFT(){return this.getToken(cn.LEFT,0)}RIGHT(){return this.getToken(cn.RIGHT,0)}INNER_P(){return this.getToken(cn.INNER_P,0)}OUTER_P(){return this.getToken(cn.OUTER_P,0)}get ruleIndex(){return cn.RULE_joinType}accept(t){return t.visitJoinType?t.visitJoinType(this):t.visitChildren(this)}},$l=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}nameList(){return this.getRuleContext(0,Bu)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}ON(){return this.getToken(cn.ON,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_joinQualifier}accept(t){return t.visitJoinQualifier?t.visitJoinQualifier(this):t.visitChildren(this)}},tO=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}get ruleIndex(){return cn.RULE_viewName}accept(t){return t.visitViewName?t.visitViewName(this):t.visitChildren(this)}},eO=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}STAR(){return this.getToken(cn.STAR,0)}ONLY(){return this.getToken(cn.ONLY,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_relationExpression}accept(t){return t.visitRelationExpression?t.visitRelationExpression(this):t.visitChildren(this)}},sO=class extends ga{constructor(t,e){super(t,e)}relationExpression(t){return void 0===t?this.getRuleContexts(eO):this.getRuleContext(t,eO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_relationExpressionList}accept(t){return t.visitRelationExpressionList?t.visitRelationExpressionList(this):t.visitChildren(this)}},aO=class extends ga{constructor(t,e){super(t,e)}relationExpression(){return this.getRuleContext(0,eO)}columnId(){return this.getRuleContext(0,$u)}AS(){return this.getToken(cn.AS,0)}get ruleIndex(){return cn.RULE_relationExpressionOptionalAlias}accept(t){return t.visitRelationExpressionOptionalAlias?t.visitRelationExpressionOptionalAlias(this):t.visitChildren(this)}},rO=class extends ga{constructor(t,e){super(t,e)}TABLESAMPLE(){return this.getToken(cn.TABLESAMPLE,0)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(t){return void 0===t?this.getTokens(cn.OPEN_PAREN):this.getToken(cn.OPEN_PAREN,t)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(t){return void 0===t?this.getTokens(cn.CLOSE_PAREN):this.getToken(cn.CLOSE_PAREN,t)}REPEATABLE(){return this.getToken(cn.REPEATABLE,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_tableSampleClause}accept(t){return t.visitTableSampleClause?t.visitTableSampleClause(this):t.visitChildren(this)}},iO=class extends ga{constructor(t,e){super(t,e)}functionExpressionWindowless(){return this.getRuleContext(0,OI)}optionalOrdinality(){return this.getRuleContext(0,hO)}ROWS(){return this.getToken(cn.ROWS,0)}FROM(){return this.getToken(cn.FROM,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}rowsFromItem(t){return void 0===t?this.getRuleContexts(cO):this.getRuleContext(t,cO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_functionTable}accept(t){return t.visitFunctionTable?t.visitFunctionTable(this):t.visitChildren(this)}},cO=class extends ga{constructor(t,e){super(t,e)}functionExpressionWindowless(){return this.getRuleContext(0,OI)}optionalColumnDefinitionList(){return this.getRuleContext(0,nO)}get ruleIndex(){return cn.RULE_rowsFromItem}accept(t){return t.visitRowsFromItem?t.visitRowsFromItem(this):t.visitChildren(this)}},nO=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(cn.AS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}tableFunctionElementList(){return this.getRuleContext(0,RO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalColumnDefinitionList}accept(t){return t.visitOptionalColumnDefinitionList?t.visitOptionalColumnDefinitionList(this):t.visitChildren(this)}},hO=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}ORDINALITY(){return this.getToken(cn.ORDINALITY,0)}get ruleIndex(){return cn.RULE_optionalOrdinality}accept(t){return t.visitOptionalOrdinality?t.visitOptionalOrdinality(this):t.visitChildren(this)}},EO=class extends ga{constructor(t,e){super(t,e)}WHERE(){return this.getToken(cn.WHERE,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_whereClause}accept(t){return t.visitWhereClause?t.visitWhereClause(this):t.visitChildren(this)}},TO=class extends ga{constructor(t,e){super(t,e)}WHERE(){return this.getToken(cn.WHERE,0)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}OF(){return this.getToken(cn.OF,0)}cursorName(){return this.getRuleContext(0,al)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_whereOrCurrentClause}accept(t){return t.visitWhereOrCurrentClause?t.visitWhereOrCurrentClause(this):t.visitChildren(this)}},oO=class extends ga{constructor(t,e){super(t,e)}tableFunctionElementList(){return this.getRuleContext(0,RO)}get ruleIndex(){return cn.RULE_optionalTableFunctionElementList}accept(t){return t.visitOptionalTableFunctionElementList?t.visitOptionalTableFunctionElementList(this):t.visitChildren(this)}},RO=class extends ga{constructor(t,e){super(t,e)}tableFunctionElement(t){return void 0===t?this.getRuleContexts(AO):this.getRuleContext(t,AO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_tableFunctionElementList}accept(t){return t.visitTableFunctionElementList?t.visitTableFunctionElementList(this):t.visitChildren(this)}},AO=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}typeName(){return this.getRuleContext(0,LO)}optionalCollateClause(){return this.getRuleContext(0,rh)}get ruleIndex(){return cn.RULE_tableFunctionElement}accept(t){return t.visitTableFunctionElement?t.visitTableFunctionElement(this):t.visitChildren(this)}},SO=class extends ga{constructor(t,e){super(t,e)}XMLTABLE(){return this.getToken(cn.XMLTABLE,0)}OPEN_PAREN(t){return void 0===t?this.getTokens(cn.OPEN_PAREN):this.getToken(cn.OPEN_PAREN,t)}CLOSE_PAREN(t){return void 0===t?this.getTokens(cn.CLOSE_PAREN):this.getToken(cn.CLOSE_PAREN,t)}expression3(){return this.getRuleContext(0,EI)}xmlExistsArgument(){return this.getRuleContext(0,dI)}COLUMNS(){return this.getToken(cn.COLUMNS,0)}xmlTableColumnElement(t){return void 0===t?this.getRuleContexts(lO):this.getRuleContext(t,lO)}XMLNAMESPACES(){return this.getToken(cn.XMLNAMESPACES,0)}xmlNamespaceList(){return this.getRuleContext(0,uO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_xmlTable}accept(t){return t.visitXmlTable?t.visitXmlTable(this):t.visitChildren(this)}},lO=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}typeName(){return this.getRuleContext(0,LO)}FOR(){return this.getToken(cn.FOR,0)}ORDINALITY(){return this.getToken(cn.ORDINALITY,0)}xmlTableColumnOptionList(){return this.getRuleContext(0,OO)}get ruleIndex(){return cn.RULE_xmlTableColumnElement}accept(t){return t.visitXmlTableColumnElement?t.visitXmlTableColumnElement(this):t.visitChildren(this)}},OO=class extends ga{constructor(t,e){super(t,e)}xmlTableColumnOptionElement(t){return void 0===t?this.getRuleContexts(IO):this.getRuleContext(t,IO)}get ruleIndex(){return cn.RULE_xmlTableColumnOptionList}accept(t){return t.visitXmlTableColumnOptionList?t.visitXmlTableColumnOptionList(this):t.visitChildren(this)}},IO=class extends ga{constructor(t,e){super(t,e)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}expression1(){return this.getRuleContext(0,wO)}identifier(){return this.getRuleContext(0,rN)}NOT(){return this.getToken(cn.NOT,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}get ruleIndex(){return cn.RULE_xmlTableColumnOptionElement}accept(t){return t.visitXmlTableColumnOptionElement?t.visitXmlTableColumnOptionElement(this):t.visitChildren(this)}},uO=class extends ga{constructor(t,e){super(t,e)}xmlNamespaceElement(t){return void 0===t?this.getRuleContexts(NO):this.getRuleContext(t,NO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_xmlNamespaceList}accept(t){return t.visitXmlNamespaceList?t.visitXmlNamespaceList(this):t.visitChildren(this)}},NO=class extends ga{constructor(t,e){super(t,e)}expression2(){return this.getRuleContext(0,hI)}AS(){return this.getToken(cn.AS,0)}columnLabel(){return this.getRuleContext(0,aN)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_xmlNamespaceElement}accept(t){return t.visitXmlNamespaceElement?t.visitXmlNamespaceElement(this):t.visitChildren(this)}},LO=class extends ga{constructor(t,e){super(t,e)}simpleTypeName(){return this.getRuleContext(0,CO)}ARRAY(){return this.getToken(cn.ARRAY,0)}SETOF(){return this.getToken(cn.SETOF,0)}OPEN_BRACKET(t){return void 0===t?this.getTokens(cn.OPEN_BRACKET):this.getToken(cn.OPEN_BRACKET,t)}CLOSE_BRACKET(t){return void 0===t?this.getTokens(cn.CLOSE_BRACKET):this.getToken(cn.CLOSE_BRACKET,t)}iconst(t){return void 0===t?this.getRuleContexts(Ku):this.getRuleContext(t,Ku)}qualifiedName(){return this.getRuleContext(0,vu)}PERCENT(){return this.getToken(cn.PERCENT,0)}ROWTYPE(){return this.getToken(cn.ROWTYPE,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}get ruleIndex(){return cn.RULE_typeName}accept(t){return t.visitTypeName?t.visitTypeName(this):t.visitChildren(this)}},CO=class extends ga{constructor(t,e){super(t,e)}genericType(){return this.getRuleContext(0,PO)}numeric(){return this.getRuleContext(0,dO)}bit(){return this.getRuleContext(0,mO)}character(){return this.getRuleContext(0,xO)}constDateTime(){return this.getRuleContext(0,FO)}constInterval(){return this.getRuleContext(0,vO)}optionalInterval(){return this.getRuleContext(0,yO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_simpleTypeName}accept(t){return t.visitSimpleTypeName?t.visitSimpleTypeName(this):t.visitChildren(this)}},_O=class extends ga{constructor(t,e){super(t,e)}numeric(){return this.getRuleContext(0,dO)}constBit(){return this.getRuleContext(0,DO)}constCharacter(){return this.getRuleContext(0,kO)}constDateTime(){return this.getRuleContext(0,FO)}get ruleIndex(){return cn.RULE_constTypeName}accept(t){return t.visitConstTypeName?t.visitConstTypeName(this):t.visitChildren(this)}},PO=class extends ga{constructor(t,e){super(t,e)}optionalTypeModifiers(){return this.getRuleContext(0,MO)}builtinFunctionName(){return this.getRuleContext(0,TN)}typeFunctionName(){return this.getRuleContext(0,eN)}LEFT(){return this.getToken(cn.LEFT,0)}RIGHT(){return this.getToken(cn.RIGHT,0)}attributes(){return this.getRuleContext(0,Do)}get ruleIndex(){return cn.RULE_genericType}accept(t){return t.visitGenericType?t.visitGenericType(this):t.visitChildren(this)}},MO=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalTypeModifiers}accept(t){return t.visitOptionalTypeModifiers?t.visitOptionalTypeModifiers(this):t.visitChildren(this)}},dO=class extends ga{constructor(t,e){super(t,e)}INT_P(){return this.getToken(cn.INT_P,0)}INTEGER(){return this.getToken(cn.INTEGER,0)}SMALLINT(){return this.getToken(cn.SMALLINT,0)}BIGINT(){return this.getToken(cn.BIGINT,0)}REAL(){return this.getToken(cn.REAL,0)}FLOAT_P(){return this.getToken(cn.FLOAT_P,0)}optionalFloat(){return this.getRuleContext(0,UO)}DOUBLE_P(){return this.getToken(cn.DOUBLE_P,0)}PRECISION(){return this.getToken(cn.PRECISION,0)}DECIMAL_P(){return this.getToken(cn.DECIMAL_P,0)}optionalTypeModifiers(){return this.getRuleContext(0,MO)}DEC(){return this.getToken(cn.DEC,0)}NUMERIC(){return this.getToken(cn.NUMERIC,0)}BOOLEAN_P(){return this.getToken(cn.BOOLEAN_P,0)}get ruleIndex(){return cn.RULE_numeric}accept(t){return t.visitNumeric?t.visitNumeric(this):t.visitChildren(this)}},UO=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalFloat}accept(t){return t.visitOptionalFloat?t.visitOptionalFloat(this):t.visitChildren(this)}},mO=class extends ga{constructor(t,e){super(t,e)}bitWithLength(){return this.getRuleContext(0,pO)}bitWithoutLength(){return this.getRuleContext(0,gO)}get ruleIndex(){return cn.RULE_bit}accept(t){return t.visitBit?t.visitBit(this):t.visitChildren(this)}},DO=class extends ga{constructor(t,e){super(t,e)}bitWithLength(){return this.getRuleContext(0,pO)}bitWithoutLength(){return this.getRuleContext(0,gO)}get ruleIndex(){return cn.RULE_constBit}accept(t){return t.visitConstBit?t.visitConstBit(this):t.visitChildren(this)}},pO=class extends ga{constructor(t,e){super(t,e)}BIT(){return this.getToken(cn.BIT,0)}optionalVarying(){return this.getRuleContext(0,GO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_bitWithLength}accept(t){return t.visitBitWithLength?t.visitBitWithLength(this):t.visitChildren(this)}},gO=class extends ga{constructor(t,e){super(t,e)}BIT(){return this.getToken(cn.BIT,0)}optionalVarying(){return this.getRuleContext(0,GO)}get ruleIndex(){return cn.RULE_bitWithoutLength}accept(t){return t.visitBitWithoutLength?t.visitBitWithoutLength(this):t.visitChildren(this)}},xO=class extends ga{constructor(t,e){super(t,e)}characterChar(){return this.getRuleContext(0,HO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_character}accept(t){return t.visitCharacter?t.visitCharacter(this):t.visitChildren(this)}},kO=class extends ga{constructor(t,e){super(t,e)}characterChar(){return this.getRuleContext(0,HO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_constCharacter}accept(t){return t.visitConstCharacter?t.visitConstCharacter(this):t.visitChildren(this)}},HO=class extends ga{constructor(t,e){super(t,e)}optionalVarying(){return this.getRuleContext(0,GO)}CHARACTER(){return this.getToken(cn.CHARACTER,0)}CHAR_P(){return this.getToken(cn.CHAR_P,0)}NCHAR(){return this.getToken(cn.NCHAR,0)}VARCHAR(){return this.getToken(cn.VARCHAR,0)}NATIONAL(){return this.getToken(cn.NATIONAL,0)}get ruleIndex(){return cn.RULE_characterChar}accept(t){return t.visitCharacterChar?t.visitCharacterChar(this):t.visitChildren(this)}},GO=class extends ga{constructor(t,e){super(t,e)}VARYING(){return this.getToken(cn.VARYING,0)}get ruleIndex(){return cn.RULE_optionalVarying}accept(t){return t.visitOptionalVarying?t.visitOptionalVarying(this):t.visitChildren(this)}},FO=class extends ga{constructor(t,e){super(t,e)}optionalTimezone(){return this.getRuleContext(0,BO)}TIMESTAMP(){return this.getToken(cn.TIMESTAMP,0)}TIME(){return this.getToken(cn.TIME,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_constDateTime}accept(t){return t.visitConstDateTime?t.visitConstDateTime(this):t.visitChildren(this)}},vO=class extends ga{constructor(t,e){super(t,e)}INTERVAL(){return this.getToken(cn.INTERVAL,0)}get ruleIndex(){return cn.RULE_constInterval}accept(t){return t.visitConstInterval?t.visitConstInterval(this):t.visitChildren(this)}},BO=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}TIME(){return this.getToken(cn.TIME,0)}ZONE(){return this.getToken(cn.ZONE,0)}WITHOUT(){return this.getToken(cn.WITHOUT,0)}get ruleIndex(){return cn.RULE_optionalTimezone}accept(t){return t.visitOptionalTimezone?t.visitOptionalTimezone(this):t.visitChildren(this)}},yO=class extends ga{constructor(t,e){super(t,e)}YEAR_P(){return this.getToken(cn.YEAR_P,0)}MONTH_P(){return this.getToken(cn.MONTH_P,0)}DAY_P(){return this.getToken(cn.DAY_P,0)}HOUR_P(){return this.getToken(cn.HOUR_P,0)}MINUTE_P(){return this.getToken(cn.MINUTE_P,0)}intervalSecond(){return this.getRuleContext(0,fO)}TO(){return this.getToken(cn.TO,0)}get ruleIndex(){return cn.RULE_optionalInterval}accept(t){return t.visitOptionalInterval?t.visitOptionalInterval(this):t.visitChildren(this)}},fO=class extends ga{constructor(t,e){super(t,e)}SECOND_P(){return this.getToken(cn.SECOND_P,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_intervalSecond}accept(t){return t.visitIntervalSecond?t.visitIntervalSecond(this):t.visitChildren(this)}},YO=class extends ga{constructor(t,e){super(t,e)}ESCAPE(){return this.getToken(cn.ESCAPE,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_optionalEscape}accept(t){return t.visitOptionalEscape?t.visitOptionalEscape(this):t.visitChildren(this)}},wO=class extends ga{constructor(t,e){super(t,e)}expression1Qualifier(){return this.getRuleContext(0,bO)}get ruleIndex(){return cn.RULE_expression1}accept(t){return t.visitExpression1?t.visitExpression1(this):t.visitChildren(this)}},bO=class extends ga{constructor(t,e){super(t,e)}expression1LessLess(){return this.getRuleContext(0,WO)}operatorQualifier(){return this.getRuleContext(0,KI)}get ruleIndex(){return cn.RULE_expression1Qualifier}accept(t){return t.visitExpression1Qualifier?t.visitExpression1Qualifier(this):t.visitChildren(this)}},WO=class extends ga{constructor(t,e){super(t,e)}expression1Or(t){return void 0===t?this.getRuleContexts(VO):this.getRuleContext(t,VO)}LESS_LESS(t){return void 0===t?this.getTokens(cn.LESS_LESS):this.getToken(cn.LESS_LESS,t)}GREATER_GREATER(t){return void 0===t?this.getTokens(cn.GREATER_GREATER):this.getToken(cn.GREATER_GREATER,t)}get ruleIndex(){return cn.RULE_expression1LessLess}accept(t){return t.visitExpression1LessLess?t.visitExpression1LessLess(this):t.visitChildren(this)}},VO=class extends ga{constructor(t,e){super(t,e)}expression1And(t){return void 0===t?this.getRuleContexts(XO):this.getRuleContext(t,XO)}OR(t){return void 0===t?this.getTokens(cn.OR):this.getToken(cn.OR,t)}get ruleIndex(){return cn.RULE_expression1Or}accept(t){return t.visitExpression1Or?t.visitExpression1Or(this):t.visitChildren(this)}},XO=class extends ga{constructor(t,e){super(t,e)}expression1Between(t){return void 0===t?this.getRuleContexts(KO):this.getRuleContext(t,KO)}AND(t){return void 0===t?this.getTokens(cn.AND):this.getToken(cn.AND,t)}get ruleIndex(){return cn.RULE_expression1And}accept(t){return t.visitExpression1And?t.visitExpression1And(this):t.visitChildren(this)}},KO=class extends ga{constructor(t,e){super(t,e)}expression1In(t){return void 0===t?this.getRuleContexts(QO):this.getRuleContext(t,QO)}BETWEEN(){return this.getToken(cn.BETWEEN,0)}AND(){return this.getToken(cn.AND,0)}NOT(){return this.getToken(cn.NOT,0)}SYMMETRIC(){return this.getToken(cn.SYMMETRIC,0)}get ruleIndex(){return cn.RULE_expression1Between}accept(t){return t.visitExpression1Between?t.visitExpression1Between(this):t.visitChildren(this)}},QO=class extends ga{constructor(t,e){super(t,e)}expression1UnaryNot(){return this.getRuleContext(0,JO)}IN_P(){return this.getToken(cn.IN_P,0)}inExpression(){return this.getRuleContext(0,hu)}NOT(){return this.getToken(cn.NOT,0)}get ruleIndex(){return cn.RULE_expression1In}accept(t){return t.visitExpression1In?t.visitExpression1In(this):t.visitChildren(this)}},JO=class extends ga{constructor(t,e){super(t,e)}expression1IsNull(){return this.getRuleContext(0,ZO)}NOT(){return this.getToken(cn.NOT,0)}get ruleIndex(){return cn.RULE_expression1UnaryNot}accept(t){return t.visitExpression1UnaryNot?t.visitExpression1UnaryNot(this):t.visitChildren(this)}},ZO=class extends ga{constructor(t,e){super(t,e)}expression1IsNot(){return this.getRuleContext(0,qO)}ISNULL(){return this.getToken(cn.ISNULL,0)}NOTNULL(){return this.getToken(cn.NOTNULL,0)}get ruleIndex(){return cn.RULE_expression1IsNull}accept(t){return t.visitExpression1IsNull?t.visitExpression1IsNull(this):t.visitChildren(this)}},qO=class extends ga{constructor(t,e){super(t,e)}expression1Compare(){return this.getRuleContext(0,jO)}IS(){return this.getToken(cn.IS,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}TRUE_P(){return this.getToken(cn.TRUE_P,0)}FALSE_P(){return this.getToken(cn.FALSE_P,0)}UNKNOWN(){return this.getToken(cn.UNKNOWN,0)}DISTINCT(){return this.getToken(cn.DISTINCT,0)}FROM(){return this.getToken(cn.FROM,0)}expression1(){return this.getRuleContext(0,wO)}OF(){return this.getToken(cn.OF,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeList(){return this.getRuleContext(0,zI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}DOCUMENT_P(){return this.getToken(cn.DOCUMENT_P,0)}NORMALIZED(){return this.getToken(cn.NORMALIZED,0)}NOT(){return this.getToken(cn.NOT,0)}unicodeNormalForm(){return this.getRuleContext(0,au)}get ruleIndex(){return cn.RULE_expression1IsNot}accept(t){return t.visitExpression1IsNot?t.visitExpression1IsNot(this):t.visitChildren(this)}},jO=class extends ga{constructor(t,e){super(t,e)}expression1Like(t){return void 0===t?this.getRuleContexts(zO):this.getRuleContext(t,zO)}subqueryOperator(){return this.getRuleContext(0,JI)}subType(){return this.getRuleContext(0,WI)}LT(){return this.getToken(cn.LT,0)}GT(){return this.getToken(cn.GT,0)}EQUAL(){return this.getToken(cn.EQUAL,0)}LESS_EQUALS(){return this.getToken(cn.LESS_EQUALS,0)}GREATER_EQUALS(){return this.getToken(cn.GREATER_EQUALS,0)}NOT_EQUALS(){return this.getToken(cn.NOT_EQUALS,0)}selectWithParenthesis(){return this.getRuleContext(0,cl)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_expression1Compare}accept(t){return t.visitExpression1Compare?t.visitExpression1Compare(this):t.visitChildren(this)}},zO=class extends ga{constructor(t,e){super(t,e)}expression1qualifierOperator(t){return void 0===t?this.getRuleContexts($O):this.getRuleContext(t,$O)}optionalEscape(){return this.getRuleContext(0,YO)}LIKE(){return this.getToken(cn.LIKE,0)}ILIKE(){return this.getToken(cn.ILIKE,0)}SIMILAR(){return this.getToken(cn.SIMILAR,0)}TO(){return this.getToken(cn.TO,0)}NOT(){return this.getToken(cn.NOT,0)}get ruleIndex(){return cn.RULE_expression1Like}accept(t){return t.visitExpression1Like?t.visitExpression1Like(this):t.visitChildren(this)}},$O=class extends ga{constructor(t,e){super(t,e)}expression1UnaryQualifierOperator(t){return void 0===t?this.getRuleContexts(tI):this.getRuleContext(t,tI)}operatorQualifier(t){return void 0===t?this.getRuleContexts(KI):this.getRuleContext(t,KI)}get ruleIndex(){return cn.RULE_expression1qualifierOperator}accept(t){return t.visitExpression1qualifierOperator?t.visitExpression1qualifierOperator(this):t.visitChildren(this)}},tI=class extends ga{constructor(t,e){super(t,e)}expression1Add(){return this.getRuleContext(0,eI)}operatorQualifier(){return this.getRuleContext(0,KI)}get ruleIndex(){return cn.RULE_expression1UnaryQualifierOperator}accept(t){return t.visitExpression1UnaryQualifierOperator?t.visitExpression1UnaryQualifierOperator(this):t.visitChildren(this)}},eI=class extends ga{constructor(t,e){super(t,e)}expressionMultiply(t){return void 0===t?this.getRuleContexts(sI):this.getRuleContext(t,sI)}MINUS(t){return void 0===t?this.getTokens(cn.MINUS):this.getToken(cn.MINUS,t)}PLUS(t){return void 0===t?this.getTokens(cn.PLUS):this.getToken(cn.PLUS,t)}get ruleIndex(){return cn.RULE_expression1Add}accept(t){return t.visitExpression1Add?t.visitExpression1Add(this):t.visitChildren(this)}},sI=class extends ga{constructor(t,e){super(t,e)}expression1Caret(t){return void 0===t?this.getRuleContexts(aI):this.getRuleContext(t,aI)}STAR(t){return void 0===t?this.getTokens(cn.STAR):this.getToken(cn.STAR,t)}SLASH(t){return void 0===t?this.getTokens(cn.SLASH):this.getToken(cn.SLASH,t)}PERCENT(t){return void 0===t?this.getTokens(cn.PERCENT):this.getToken(cn.PERCENT,t)}get ruleIndex(){return cn.RULE_expressionMultiply}accept(t){return t.visitExpressionMultiply?t.visitExpressionMultiply(this):t.visitChildren(this)}},aI=class extends ga{constructor(t,e){super(t,e)}expression1UnarySign(){return this.getRuleContext(0,rI)}CARET(){return this.getToken(cn.CARET,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_expression1Caret}accept(t){return t.visitExpression1Caret?t.visitExpression1Caret(this):t.visitChildren(this)}},rI=class extends ga{constructor(t,e){super(t,e)}expression1AtTimeZone(){return this.getRuleContext(0,iI)}MINUS(){return this.getToken(cn.MINUS,0)}PLUS(){return this.getToken(cn.PLUS,0)}get ruleIndex(){return cn.RULE_expression1UnarySign}accept(t){return t.visitExpression1UnarySign?t.visitExpression1UnarySign(this):t.visitChildren(this)}},iI=class extends ga{constructor(t,e){super(t,e)}expression1Collate(){return this.getRuleContext(0,cI)}AT(){return this.getToken(cn.AT,0)}TIME(){return this.getToken(cn.TIME,0)}ZONE(){return this.getToken(cn.ZONE,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_expression1AtTimeZone}accept(t){return t.visitExpression1AtTimeZone?t.visitExpression1AtTimeZone(this):t.visitChildren(this)}},cI=class extends ga{constructor(t,e){super(t,e)}expression1Typecast(){return this.getRuleContext(0,nI)}COLLATE(){return this.getToken(cn.COLLATE,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_expression1Collate}accept(t){return t.visitExpression1Collate?t.visitExpression1Collate(this):t.visitChildren(this)}},nI=class extends ga{constructor(t,e){super(t,e)}expression3(){return this.getRuleContext(0,EI)}TYPECAST(t){return void 0===t?this.getTokens(cn.TYPECAST):this.getToken(cn.TYPECAST,t)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}get ruleIndex(){return cn.RULE_expression1Typecast}accept(t){return t.visitExpression1Typecast?t.visitExpression1Typecast(this):t.visitChildren(this)}},hI=class t extends ga{constructor(t,e){super(t,e)}expression3(){return this.getRuleContext(0,EI)}expression2(e){return void 0===e?this.getRuleContexts(t):this.getRuleContext(e,t)}PLUS(){return this.getToken(cn.PLUS,0)}MINUS(){return this.getToken(cn.MINUS,0)}operatorQualifier(){return this.getRuleContext(0,KI)}CARET(){return this.getToken(cn.CARET,0)}STAR(){return this.getToken(cn.STAR,0)}SLASH(){return this.getToken(cn.SLASH,0)}PERCENT(){return this.getToken(cn.PERCENT,0)}LT(){return this.getToken(cn.LT,0)}GT(){return this.getToken(cn.GT,0)}EQUAL(){return this.getToken(cn.EQUAL,0)}LESS_EQUALS(){return this.getToken(cn.LESS_EQUALS,0)}GREATER_EQUALS(){return this.getToken(cn.GREATER_EQUALS,0)}NOT_EQUALS(){return this.getToken(cn.NOT_EQUALS,0)}TYPECAST(){return this.getToken(cn.TYPECAST,0)}typeName(){return this.getRuleContext(0,LO)}IS(){return this.getToken(cn.IS,0)}DISTINCT(){return this.getToken(cn.DISTINCT,0)}FROM(){return this.getToken(cn.FROM,0)}OF(){return this.getToken(cn.OF,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeList(){return this.getRuleContext(0,zI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}DOCUMENT_P(){return this.getToken(cn.DOCUMENT_P,0)}NOT(){return this.getToken(cn.NOT,0)}get ruleIndex(){return cn.RULE_expression2}accept(t){return t.visitExpression2?t.visitExpression2(this):t.visitChildren(this)}},EI=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return cn.RULE_expression3}copyFrom(t){super.copyFrom(t)}},TI=class extends EI{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXISTS(){return this.getToken(cn.EXISTS,0)}selectWithParenthesis(){return this.getRuleContext(0,cl)}accept(t){return t.visitC_expr_exists?t.visitC_expr_exists(this):t.visitChildren(this)}},oI=class extends EI{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}caseExpression(){return this.getRuleContext(0,ou)}accept(t){return t.visitC_expr_case?t.visitC_expr_case(this):t.visitChildren(this)}},RI=class extends EI{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ARRAY(){return this.getToken(cn.ARRAY,0)}selectWithParenthesis(){return this.getRuleContext(0,cl)}arrayExpression(){return this.getRuleContext(0,$I)}PARAM(){return this.getToken(cn.PARAM,0)}optionalIndirection(){return this.getRuleContext(0,Nu)}GROUPING(){return this.getToken(cn.GROUPING,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}UNIQUE(){return this.getToken(cn.UNIQUE,0)}columnReference(){return this.getRuleContext(0,Ou)}aExpressionConst(){return this.getRuleContext(0,bu)}plsqlVariableName(){return this.getRuleContext(0,AI)}expression1(){return this.getRuleContext(0,wO)}functionExpression(){return this.getRuleContext(0,lI)}indirection(){return this.getRuleContext(0,uu)}explicitRow(){return this.getRuleContext(0,wI)}implicitRow(){return this.getRuleContext(0,bI)}row(t){return void 0===t?this.getRuleContexts(YI):this.getRuleContext(t,YI)}OVERLAPS(){return this.getToken(cn.OVERLAPS,0)}accept(t){return t.visitC_expr_expr?t.visitC_expr_expr(this):t.visitChildren(this)}},AI=class extends ga{constructor(t,e){super(t,e)}PLSQLVARIABLENAME(){return this.getToken(cn.PLSQLVARIABLENAME,0)}get ruleIndex(){return cn.RULE_plsqlVariableName}accept(t){return t.visitPlsqlVariableName?t.visitPlsqlVariableName(this):t.visitChildren(this)}},SI=class extends ga{constructor(t,e){super(t,e)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}functionArgumentList(){return this.getRuleContext(0,qI)}optionalSortClause(){return this.getRuleContext(0,Cl)}VARIADIC(){return this.getToken(cn.VARIADIC,0)}functionArgumentExpression(){return this.getRuleContext(0,jI)}STAR(){return this.getToken(cn.STAR,0)}ALL(){return this.getToken(cn.ALL,0)}DISTINCT(){return this.getToken(cn.DISTINCT,0)}COMMA(){return this.getToken(cn.COMMA,0)}get ruleIndex(){return cn.RULE_functionApplication}accept(t){return t.visitFunctionApplication?t.visitFunctionApplication(this):t.visitChildren(this)}},lI=class extends ga{constructor(t,e){super(t,e)}functionApplication(){return this.getRuleContext(0,SI)}withinGroupClause(){return this.getRuleContext(0,mI)}filterClause(){return this.getRuleContext(0,DI)}overClause(){return this.getRuleContext(0,kI)}functionExpressionCommonSubexpr(){return this.getRuleContext(0,II)}get ruleIndex(){return cn.RULE_functionExpression}accept(t){return t.visitFunctionExpression?t.visitFunctionExpression(this):t.visitChildren(this)}},OI=class extends ga{constructor(t,e){super(t,e)}functionApplication(){return this.getRuleContext(0,SI)}functionExpressionCommonSubexpr(){return this.getRuleContext(0,II)}get ruleIndex(){return cn.RULE_functionExpressionWindowless}accept(t){return t.visitFunctionExpressionWindowless?t.visitFunctionExpressionWindowless(this):t.visitChildren(this)}},II=class extends ga{constructor(t,e){super(t,e)}COLLATION(){return this.getToken(cn.COLLATION,0)}FOR(){return this.getToken(cn.FOR,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}CURRENT_DATE(){return this.getToken(cn.CURRENT_DATE,0)}CURRENT_TIME(){return this.getToken(cn.CURRENT_TIME,0)}iconst(){return this.getRuleContext(0,Ku)}CURRENT_TIMESTAMP(){return this.getToken(cn.CURRENT_TIMESTAMP,0)}LOCALTIME(){return this.getToken(cn.LOCALTIME,0)}LOCALTIMESTAMP(){return this.getToken(cn.LOCALTIMESTAMP,0)}CURRENT_ROLE(){return this.getToken(cn.CURRENT_ROLE,0)}CURRENT_USER(){return this.getToken(cn.CURRENT_USER,0)}SESSION_USER(){return this.getToken(cn.SESSION_USER,0)}USER(){return this.getToken(cn.USER,0)}CURRENT_CATALOG(){return this.getToken(cn.CURRENT_CATALOG,0)}CURRENT_SCHEMA(){return this.getToken(cn.CURRENT_SCHEMA,0)}CAST(){return this.getToken(cn.CAST,0)}AS(){return this.getToken(cn.AS,0)}typeName(){return this.getRuleContext(0,LO)}EXTRACT(){return this.getToken(cn.EXTRACT,0)}extractList(){return this.getRuleContext(0,eu)}NORMALIZE(){return this.getToken(cn.NORMALIZE,0)}COMMA(){return this.getToken(cn.COMMA,0)}unicodeNormalForm(){return this.getRuleContext(0,au)}OVERLAY(){return this.getToken(cn.OVERLAY,0)}overlayList(){return this.getRuleContext(0,ru)}POSITION(){return this.getToken(cn.POSITION,0)}positionList(){return this.getRuleContext(0,iu)}SUBSTRING(){return this.getToken(cn.SUBSTRING,0)}substrList(){return this.getRuleContext(0,cu)}TREAT(){return this.getToken(cn.TREAT,0)}TRIM(){return this.getToken(cn.TRIM,0)}trimList(){return this.getRuleContext(0,nu)}BOTH(){return this.getToken(cn.BOTH,0)}LEADING(){return this.getToken(cn.LEADING,0)}TRAILING(){return this.getToken(cn.TRAILING,0)}NULLIF(){return this.getToken(cn.NULLIF,0)}COALESCE(){return this.getToken(cn.COALESCE,0)}expressionList(){return this.getRuleContext(0,ZI)}GREATEST(){return this.getToken(cn.GREATEST,0)}LEAST(){return this.getToken(cn.LEAST,0)}XMLCONCAT(){return this.getToken(cn.XMLCONCAT,0)}XMLELEMENT(){return this.getToken(cn.XMLELEMENT,0)}NAME_P(){return this.getToken(cn.NAME_P,0)}columnLabel(){return this.getRuleContext(0,aN)}xmlAttributes(){return this.getRuleContext(0,LI)}XMLEXISTS(){return this.getToken(cn.XMLEXISTS,0)}expression3(){return this.getRuleContext(0,EI)}xmlExistsArgument(){return this.getRuleContext(0,dI)}XMLFOREST(){return this.getToken(cn.XMLFOREST,0)}xmlAttributeList(){return this.getRuleContext(0,CI)}XMLPARSE(){return this.getToken(cn.XMLPARSE,0)}documentOrContent(){return this.getRuleContext(0,PI)}xmlWhitespaceOption(){return this.getRuleContext(0,MI)}XMLPI(){return this.getToken(cn.XMLPI,0)}XMLROOT(){return this.getToken(cn.XMLROOT,0)}XML_P(){return this.getToken(cn.XML_P,0)}xmlRootVersion(){return this.getRuleContext(0,uI)}optionalXmlRootStandalone(){return this.getRuleContext(0,NI)}XMLSERIALIZE(){return this.getToken(cn.XMLSERIALIZE,0)}simpleTypeName(){return this.getRuleContext(0,CO)}get ruleIndex(){return cn.RULE_functionExpressionCommonSubexpr}accept(t){return t.visitFunctionExpressionCommonSubexpr?t.visitFunctionExpressionCommonSubexpr(this):t.visitChildren(this)}},uI=class extends ga{constructor(t,e){super(t,e)}VERSION_P(){return this.getToken(cn.VERSION_P,0)}expression1(){return this.getRuleContext(0,wO)}NO(){return this.getToken(cn.NO,0)}VALUE_P(){return this.getToken(cn.VALUE_P,0)}get ruleIndex(){return cn.RULE_xmlRootVersion}accept(t){return t.visitXmlRootVersion?t.visitXmlRootVersion(this):t.visitChildren(this)}},NI=class extends ga{constructor(t,e){super(t,e)}COMMA(){return this.getToken(cn.COMMA,0)}STANDALONE_P(){return this.getToken(cn.STANDALONE_P,0)}YES_P(){return this.getToken(cn.YES_P,0)}NO(){return this.getToken(cn.NO,0)}VALUE_P(){return this.getToken(cn.VALUE_P,0)}get ruleIndex(){return cn.RULE_optionalXmlRootStandalone}accept(t){return t.visitOptionalXmlRootStandalone?t.visitOptionalXmlRootStandalone(this):t.visitChildren(this)}},LI=class extends ga{constructor(t,e){super(t,e)}XMLATTRIBUTES(){return this.getToken(cn.XMLATTRIBUTES,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}xmlAttributeList(){return this.getRuleContext(0,CI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_xmlAttributes}accept(t){return t.visitXmlAttributes?t.visitXmlAttributes(this):t.visitChildren(this)}},CI=class extends ga{constructor(t,e){super(t,e)}xmlAttributeElement(t){return void 0===t?this.getRuleContexts(_I):this.getRuleContext(t,_I)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_xmlAttributeList}accept(t){return t.visitXmlAttributeList?t.visitXmlAttributeList(this):t.visitChildren(this)}},_I=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}AS(){return this.getToken(cn.AS,0)}columnLabel(){return this.getRuleContext(0,aN)}get ruleIndex(){return cn.RULE_xmlAttributeElement}accept(t){return t.visitXmlAttributeElement?t.visitXmlAttributeElement(this):t.visitChildren(this)}},PI=class extends ga{constructor(t,e){super(t,e)}DOCUMENT_P(){return this.getToken(cn.DOCUMENT_P,0)}CONTENT_P(){return this.getToken(cn.CONTENT_P,0)}get ruleIndex(){return cn.RULE_documentOrContent}accept(t){return t.visitDocumentOrContent?t.visitDocumentOrContent(this):t.visitChildren(this)}},MI=class extends ga{constructor(t,e){super(t,e)}PRESERVE(){return this.getToken(cn.PRESERVE,0)}WHITESPACE_P(){return this.getToken(cn.WHITESPACE_P,0)}STRIP_P(){return this.getToken(cn.STRIP_P,0)}get ruleIndex(){return cn.RULE_xmlWhitespaceOption}accept(t){return t.visitXmlWhitespaceOption?t.visitXmlWhitespaceOption(this):t.visitChildren(this)}},dI=class extends ga{constructor(t,e){super(t,e)}PASSING(){return this.getToken(cn.PASSING,0)}expression3(){return this.getRuleContext(0,EI)}xmlPassingMech(t){return void 0===t?this.getRuleContexts(UI):this.getRuleContext(t,UI)}get ruleIndex(){return cn.RULE_xmlExistsArgument}accept(t){return t.visitXmlExistsArgument?t.visitXmlExistsArgument(this):t.visitChildren(this)}},UI=class extends ga{constructor(t,e){super(t,e)}BY(){return this.getToken(cn.BY,0)}REF(){return this.getToken(cn.REF,0)}VALUE_P(){return this.getToken(cn.VALUE_P,0)}get ruleIndex(){return cn.RULE_xmlPassingMech}accept(t){return t.visitXmlPassingMech?t.visitXmlPassingMech(this):t.visitChildren(this)}},mI=class extends ga{constructor(t,e){super(t,e)}WITHIN(){return this.getToken(cn.WITHIN,0)}GROUP_P(){return this.getToken(cn.GROUP_P,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}sortClause(){return this.getRuleContext(0,_l)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_withinGroupClause}accept(t){return t.visitWithinGroupClause?t.visitWithinGroupClause(this):t.visitChildren(this)}},DI=class extends ga{constructor(t,e){super(t,e)}FILTER(){return this.getToken(cn.FILTER,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}WHERE(){return this.getToken(cn.WHERE,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_filterClause}accept(t){return t.visitFilterClause?t.visitFilterClause(this):t.visitChildren(this)}},pI=class extends ga{constructor(t,e){super(t,e)}WINDOW(){return this.getToken(cn.WINDOW,0)}windowDefinitionList(){return this.getRuleContext(0,gI)}get ruleIndex(){return cn.RULE_windowClause}accept(t){return t.visitWindowClause?t.visitWindowClause(this):t.visitChildren(this)}},gI=class extends ga{constructor(t,e){super(t,e)}windowDefinition(t){return void 0===t?this.getRuleContexts(xI):this.getRuleContext(t,xI)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_windowDefinitionList}accept(t){return t.visitWindowDefinitionList?t.visitWindowDefinitionList(this):t.visitChildren(this)}},xI=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}AS(){return this.getToken(cn.AS,0)}windowSpecification(){return this.getRuleContext(0,HI)}get ruleIndex(){return cn.RULE_windowDefinition}accept(t){return t.visitWindowDefinition?t.visitWindowDefinition(this):t.visitChildren(this)}},kI=class extends ga{constructor(t,e){super(t,e)}OVER(){return this.getToken(cn.OVER,0)}windowSpecification(){return this.getRuleContext(0,HI)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_overClause}accept(t){return t.visitOverClause?t.visitOverClause(this):t.visitChildren(this)}},HI=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}optionalExistingWindowName(){return this.getRuleContext(0,GI)}optionalPartitionClause(){return this.getRuleContext(0,FI)}optionalSortClause(){return this.getRuleContext(0,Cl)}optionalFrameClause(){return this.getRuleContext(0,vI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_windowSpecification}accept(t){return t.visitWindowSpecification?t.visitWindowSpecification(this):t.visitChildren(this)}},GI=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_optionalExistingWindowName}accept(t){return t.visitOptionalExistingWindowName?t.visitOptionalExistingWindowName(this):t.visitChildren(this)}},FI=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(cn.PARTITION,0)}BY(){return this.getToken(cn.BY,0)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_optionalPartitionClause}accept(t){return t.visitOptionalPartitionClause?t.visitOptionalPartitionClause(this):t.visitChildren(this)}},vI=class extends ga{constructor(t,e){super(t,e)}RANGE(){return this.getToken(cn.RANGE,0)}frameExtent(){return this.getRuleContext(0,BI)}optionalWindowExclusionClause(){return this.getRuleContext(0,fI)}ROWS(){return this.getToken(cn.ROWS,0)}GROUPS(){return this.getToken(cn.GROUPS,0)}get ruleIndex(){return cn.RULE_optionalFrameClause}accept(t){return t.visitOptionalFrameClause?t.visitOptionalFrameClause(this):t.visitChildren(this)}},BI=class extends ga{constructor(t,e){super(t,e)}frameBound(t){return void 0===t?this.getRuleContexts(yI):this.getRuleContext(t,yI)}BETWEEN(){return this.getToken(cn.BETWEEN,0)}AND(){return this.getToken(cn.AND,0)}get ruleIndex(){return cn.RULE_frameExtent}accept(t){return t.visitFrameExtent?t.visitFrameExtent(this):t.visitChildren(this)}},yI=class extends ga{constructor(t,e){super(t,e)}UNBOUNDED(){return this.getToken(cn.UNBOUNDED,0)}PRECEDING(){return this.getToken(cn.PRECEDING,0)}FOLLOWING(){return this.getToken(cn.FOLLOWING,0)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}ROW(){return this.getToken(cn.ROW,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_frameBound}accept(t){return t.visitFrameBound?t.visitFrameBound(this):t.visitChildren(this)}},fI=class extends ga{constructor(t,e){super(t,e)}EXCLUDE(){return this.getToken(cn.EXCLUDE,0)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}ROW(){return this.getToken(cn.ROW,0)}GROUP_P(){return this.getToken(cn.GROUP_P,0)}TIES(){return this.getToken(cn.TIES,0)}NO(){return this.getToken(cn.NO,0)}OTHERS(){return this.getToken(cn.OTHERS,0)}get ruleIndex(){return cn.RULE_optionalWindowExclusionClause}accept(t){return t.visitOptionalWindowExclusionClause?t.visitOptionalWindowExclusionClause(this):t.visitChildren(this)}},YI=class extends ga{constructor(t,e){super(t,e)}ROW(){return this.getToken(cn.ROW,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}COMMA(){return this.getToken(cn.COMMA,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_row}accept(t){return t.visitRow?t.visitRow(this):t.visitChildren(this)}},wI=class extends ga{constructor(t,e){super(t,e)}ROW(){return this.getToken(cn.ROW,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_explicitRow}accept(t){return t.visitExplicitRow?t.visitExplicitRow(this):t.visitChildren(this)}},bI=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}COMMA(){return this.getToken(cn.COMMA,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_implicitRow}accept(t){return t.visitImplicitRow?t.visitImplicitRow(this):t.visitChildren(this)}},WI=class extends ga{constructor(t,e){super(t,e)}ANY(){return this.getToken(cn.ANY,0)}SOME(){return this.getToken(cn.SOME,0)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_subType}accept(t){return t.visitSubType?t.visitSubType(this):t.visitChildren(this)}},VI=class extends ga{constructor(t,e){super(t,e)}Operator(){return this.getToken(cn.Operator,0)}mathOperator(){return this.getRuleContext(0,XI)}get ruleIndex(){return cn.RULE_allOperator}accept(t){return t.visitAllOperator?t.visitAllOperator(this):t.visitChildren(this)}},XI=class extends ga{constructor(t,e){super(t,e)}PLUS(){return this.getToken(cn.PLUS,0)}MINUS(){return this.getToken(cn.MINUS,0)}STAR(){return this.getToken(cn.STAR,0)}SLASH(){return this.getToken(cn.SLASH,0)}PERCENT(){return this.getToken(cn.PERCENT,0)}CARET(){return this.getToken(cn.CARET,0)}LT(){return this.getToken(cn.LT,0)}GT(){return this.getToken(cn.GT,0)}EQUAL(){return this.getToken(cn.EQUAL,0)}LESS_EQUALS(){return this.getToken(cn.LESS_EQUALS,0)}GREATER_EQUALS(){return this.getToken(cn.GREATER_EQUALS,0)}NOT_EQUALS(){return this.getToken(cn.NOT_EQUALS,0)}get ruleIndex(){return cn.RULE_mathOperator}accept(t){return t.visitMathOperator?t.visitMathOperator(this):t.visitChildren(this)}},KI=class extends ga{constructor(t,e){super(t,e)}Operator(){return this.getToken(cn.Operator,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}anyOperator(){return this.getRuleContext(0,WR)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_operatorQualifier}accept(t){return t.visitOperatorQualifier?t.visitOperatorQualifier(this):t.visitChildren(this)}},QI=class extends ga{constructor(t,e){super(t,e)}allOperator(){return this.getRuleContext(0,VI)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}anyOperator(){return this.getRuleContext(0,WR)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_allOperatorQualifier}accept(t){return t.visitAllOperatorQualifier?t.visitAllOperatorQualifier(this):t.visitChildren(this)}},JI=class extends ga{constructor(t,e){super(t,e)}allOperator(){return this.getRuleContext(0,VI)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}anyOperator(){return this.getRuleContext(0,WR)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}LIKE(){return this.getToken(cn.LIKE,0)}NOT(){return this.getToken(cn.NOT,0)}ILIKE(){return this.getToken(cn.ILIKE,0)}get ruleIndex(){return cn.RULE_subqueryOperator}accept(t){return t.visitSubqueryOperator?t.visitSubqueryOperator(this):t.visitChildren(this)}},ZI=class extends ga{constructor(t,e){super(t,e)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_expressionList}accept(t){return t.visitExpressionList?t.visitExpressionList(this):t.visitChildren(this)}},qI=class extends ga{constructor(t,e){super(t,e)}functionArgumentExpression(t){return void 0===t?this.getRuleContexts(jI):this.getRuleContext(t,jI)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_functionArgumentList}accept(t){return t.visitFunctionArgumentList?t.visitFunctionArgumentList(this):t.visitChildren(this)}},jI=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}parameterName(){return this.getRuleContext(0,PR)}COLON_EQUALS(){return this.getToken(cn.COLON_EQUALS,0)}EQUALS_GREATER(){return this.getToken(cn.EQUALS_GREATER,0)}get ruleIndex(){return cn.RULE_functionArgumentExpression}accept(t){return t.visitFunctionArgumentExpression?t.visitFunctionArgumentExpression(this):t.visitChildren(this)}},zI=class extends ga{constructor(t,e){super(t,e)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_typeList}accept(t){return t.visitTypeList?t.visitTypeList(this):t.visitChildren(this)}},$I=class extends ga{constructor(t,e){super(t,e)}OPEN_BRACKET(){return this.getToken(cn.OPEN_BRACKET,0)}CLOSE_BRACKET(){return this.getToken(cn.CLOSE_BRACKET,0)}expressionList(){return this.getRuleContext(0,ZI)}arrayExpressionList(){return this.getRuleContext(0,tu)}get ruleIndex(){return cn.RULE_arrayExpression}accept(t){return t.visitArrayExpression?t.visitArrayExpression(this):t.visitChildren(this)}},tu=class extends ga{constructor(t,e){super(t,e)}arrayExpression(t){return void 0===t?this.getRuleContexts($I):this.getRuleContext(t,$I)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_arrayExpressionList}accept(t){return t.visitArrayExpressionList?t.visitArrayExpressionList(this):t.visitChildren(this)}},eu=class extends ga{constructor(t,e){super(t,e)}extractArgument(){return this.getRuleContext(0,su)}FROM(){return this.getToken(cn.FROM,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_extractList}accept(t){return t.visitExtractList?t.visitExtractList(this):t.visitChildren(this)}},su=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}YEAR_P(){return this.getToken(cn.YEAR_P,0)}MONTH_P(){return this.getToken(cn.MONTH_P,0)}DAY_P(){return this.getToken(cn.DAY_P,0)}HOUR_P(){return this.getToken(cn.HOUR_P,0)}MINUTE_P(){return this.getToken(cn.MINUTE_P,0)}SECOND_P(){return this.getToken(cn.SECOND_P,0)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_extractArgument}accept(t){return t.visitExtractArgument?t.visitExtractArgument(this):t.visitChildren(this)}},au=class extends ga{constructor(t,e){super(t,e)}NFC(){return this.getToken(cn.NFC,0)}NFD(){return this.getToken(cn.NFD,0)}NFKC(){return this.getToken(cn.NFKC,0)}NFKD(){return this.getToken(cn.NFKD,0)}get ruleIndex(){return cn.RULE_unicodeNormalForm}accept(t){return t.visitUnicodeNormalForm?t.visitUnicodeNormalForm(this):t.visitChildren(this)}},ru=class extends ga{constructor(t,e){super(t,e)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}PLACING(){return this.getToken(cn.PLACING,0)}FROM(){return this.getToken(cn.FROM,0)}FOR(){return this.getToken(cn.FOR,0)}get ruleIndex(){return cn.RULE_overlayList}accept(t){return t.visitOverlayList?t.visitOverlayList(this):t.visitChildren(this)}},iu=class extends ga{constructor(t,e){super(t,e)}expression2(t){return void 0===t?this.getRuleContexts(hI):this.getRuleContext(t,hI)}IN_P(){return this.getToken(cn.IN_P,0)}get ruleIndex(){return cn.RULE_positionList}accept(t){return t.visitPositionList?t.visitPositionList(this):t.visitChildren(this)}},cu=class extends ga{constructor(t,e){super(t,e)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}FROM(){return this.getToken(cn.FROM,0)}FOR(){return this.getToken(cn.FOR,0)}SIMILAR(){return this.getToken(cn.SIMILAR,0)}ESCAPE(){return this.getToken(cn.ESCAPE,0)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_substrList}accept(t){return t.visitSubstrList?t.visitSubstrList(this):t.visitChildren(this)}},nu=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}FROM(){return this.getToken(cn.FROM,0)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_trimList}accept(t){return t.visitTrimList?t.visitTrimList(this):t.visitChildren(this)}},hu=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return cn.RULE_inExpression}copyFrom(t){super.copyFrom(t)}},Eu=class extends hu{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}accept(t){return t.visitIn_expr_list?t.visitIn_expr_list(this):t.visitChildren(this)}},Tu=class extends hu{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}selectWithParenthesis(){return this.getRuleContext(0,cl)}accept(t){return t.visitIn_expr_select?t.visitIn_expr_select(this):t.visitChildren(this)}},ou=class extends ga{constructor(t,e){super(t,e)}CASE(){return this.getToken(cn.CASE,0)}caseArg(){return this.getRuleContext(0,lu)}whenClauseList(){return this.getRuleContext(0,Ru)}caseDefault(){return this.getRuleContext(0,Su)}END_P(){return this.getToken(cn.END_P,0)}get ruleIndex(){return cn.RULE_caseExpression}accept(t){return t.visitCaseExpression?t.visitCaseExpression(this):t.visitChildren(this)}},Ru=class extends ga{constructor(t,e){super(t,e)}whenClause(t){return void 0===t?this.getRuleContexts(Au):this.getRuleContext(t,Au)}get ruleIndex(){return cn.RULE_whenClauseList}accept(t){return t.visitWhenClauseList?t.visitWhenClauseList(this):t.visitChildren(this)}},Au=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}THEN(){return this.getToken(cn.THEN,0)}get ruleIndex(){return cn.RULE_whenClause}accept(t){return t.visitWhenClause?t.visitWhenClause(this):t.visitChildren(this)}},Su=class extends ga{constructor(t,e){super(t,e)}ELSE(){return this.getToken(cn.ELSE,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_caseDefault}accept(t){return t.visitCaseDefault?t.visitCaseDefault(this):t.visitChildren(this)}},lu=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_caseArg}accept(t){return t.visitCaseArg?t.visitCaseArg(this):t.visitChildren(this)}},Ou=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}indirection(){return this.getRuleContext(0,uu)}get ruleIndex(){return cn.RULE_columnReference}accept(t){return t.visitColumnReference?t.visitColumnReference(this):t.visitChildren(this)}},Iu=class extends ga{constructor(t,e){super(t,e)}DOT(){return this.getToken(cn.DOT,0)}attributeName(){return this.getRuleContext(0,fu)}STAR(){return this.getToken(cn.STAR,0)}OPEN_BRACKET(){return this.getToken(cn.OPEN_BRACKET,0)}CLOSE_BRACKET(){return this.getToken(cn.CLOSE_BRACKET,0)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}COLON(){return this.getToken(cn.COLON,0)}get ruleIndex(){return cn.RULE_indirectionElement}accept(t){return t.visitIndirectionElement?t.visitIndirectionElement(this):t.visitChildren(this)}},uu=class extends ga{constructor(t,e){super(t,e)}indirectionElement(t){return void 0===t?this.getRuleContexts(Iu):this.getRuleContext(t,Iu)}get ruleIndex(){return cn.RULE_indirection}accept(t){return t.visitIndirection?t.visitIndirection(this):t.visitChildren(this)}},Nu=class extends ga{constructor(t,e){super(t,e)}indirectionElement(t){return void 0===t?this.getRuleContexts(Iu):this.getRuleContext(t,Iu)}get ruleIndex(){return cn.RULE_optionalIndirection}accept(t){return t.visitOptionalIndirection?t.visitOptionalIndirection(this):t.visitChildren(this)}},Lu=class extends ga{constructor(t,e){super(t,e)}targetList(){return this.getRuleContext(0,Cu)}get ruleIndex(){return cn.RULE_optionalTargetList}accept(t){return t.visitOptionalTargetList?t.visitOptionalTargetList(this):t.visitChildren(this)}},Cu=class extends ga{constructor(t,e){super(t,e)}targetElement(t){return void 0===t?this.getRuleContexts(_u):this.getRuleContext(t,_u)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_targetList}accept(t){return t.visitTargetList?t.visitTargetList(this):t.visitChildren(this)}},_u=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return cn.RULE_targetElement}copyFrom(t){super.copyFrom(t)}},Pu=class extends _u{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STAR(){return this.getToken(cn.STAR,0)}accept(t){return t.visitTarget_star?t.visitTarget_star(this):t.visitChildren(this)}},Mu=class extends _u{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}expression1(){return this.getRuleContext(0,wO)}AS(){return this.getToken(cn.AS,0)}columnLabel(){return this.getRuleContext(0,aN)}identifier(){return this.getRuleContext(0,rN)}accept(t){return t.visitTarget_label?t.visitTarget_label(this):t.visitChildren(this)}},du=class extends ga{constructor(t,e){super(t,e)}qualifiedName(t){return void 0===t?this.getRuleContexts(vu):this.getRuleContext(t,vu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_qualifiedNameList}accept(t){return t.visitQualifiedNameList?t.visitQualifiedNameList(this):t.visitChildren(this)}},Uu=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_databaseName}accept(t){return t.visitDatabaseName?t.visitDatabaseName(this):t.visitChildren(this)}},mu=class extends ga{constructor(t,e){super(t,e)}databaseName(t){return void 0===t?this.getRuleContexts(Uu):this.getRuleContext(t,Uu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_databaseNameList}accept(t){return t.visitDatabaseNameList?t.visitDatabaseNameList(this):t.visitChildren(this)}},Du=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_schemaName}accept(t){return t.visitSchemaName?t.visitSchemaName(this):t.visitChildren(this)}},pu=class extends ga{constructor(t,e){super(t,e)}schemaName(t){return void 0===t?this.getRuleContexts(Du):this.getRuleContext(t,Du)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_schemaNameList}accept(t){return t.visitSchemaNameList?t.visitSchemaNameList(this):t.visitChildren(this)}},gu=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}get ruleIndex(){return cn.RULE_indexName}accept(t){return t.visitIndexName?t.visitIndexName(this):t.visitChildren(this)}},xu=class extends ga{constructor(t,e){super(t,e)}indexName(t){return void 0===t?this.getRuleContexts(gu):this.getRuleContext(t,gu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_indexNameList}accept(t){return t.visitIndexNameList?t.visitIndexNameList(this):t.visitChildren(this)}},ku=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_triggerName}accept(t){return t.visitTriggerName?t.visitTriggerName(this):t.visitChildren(this)}},Hu=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_constraintName}accept(t){return t.visitConstraintName?t.visitConstraintName(this):t.visitChildren(this)}},Gu=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}get ruleIndex(){return cn.RULE_sequenceName}accept(t){return t.visitSequenceName?t.visitSequenceName(this):t.visitChildren(this)}},Fu=class extends ga{constructor(t,e){super(t,e)}sequenceName(t){return void 0===t?this.getRuleContexts(Gu):this.getRuleContext(t,Gu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_sequenceNameList}accept(t){return t.visitSequenceNameList?t.visitSequenceNameList(this):t.visitChildren(this)}},vu=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}indirection(){return this.getRuleContext(0,uu)}get ruleIndex(){return cn.RULE_qualifiedName}accept(t){return t.visitQualifiedName?t.visitQualifiedName(this):t.visitChildren(this)}},Bu=class extends ga{constructor(t,e){super(t,e)}name(t){return void 0===t?this.getRuleContexts(yu):this.getRuleContext(t,yu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_nameList}accept(t){return t.visitNameList?t.visitNameList(this):t.visitChildren(this)}},yu=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_name}accept(t){return t.visitName?t.visitName(this):t.visitChildren(this)}},fu=class extends ga{constructor(t,e){super(t,e)}columnLabel(){return this.getRuleContext(0,aN)}get ruleIndex(){return cn.RULE_attributeName}accept(t){return t.visitAttributeName?t.visitAttributeName(this):t.visitChildren(this)}},Yu=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_fileName}accept(t){return t.visitFileName?t.visitFileName(this):t.visitChildren(this)}},wu=class extends ga{constructor(t,e){super(t,e)}builtinFunctionName(){return this.getRuleContext(0,TN)}typeFunctionName(){return this.getRuleContext(0,eN)}columnId(){return this.getRuleContext(0,$u)}indirection(){return this.getRuleContext(0,uu)}LEFT(){return this.getToken(cn.LEFT,0)}RIGHT(){return this.getToken(cn.RIGHT,0)}get ruleIndex(){return cn.RULE_functionName}accept(t){return t.visitFunctionName?t.visitFunctionName(this):t.visitChildren(this)}},bu=class extends ga{constructor(t,e){super(t,e)}iconst(){return this.getRuleContext(0,Ku)}fconst(){return this.getRuleContext(0,Xu)}sconst(){return this.getRuleContext(0,Qu)}bconst(){return this.getRuleContext(0,Vu)}xconst(){return this.getRuleContext(0,Wu)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}functionArgumentList(){return this.getRuleContext(0,qI)}optionalSortClause(){return this.getRuleContext(0,Cl)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}constTypeName(){return this.getRuleContext(0,_O)}constInterval(){return this.getRuleContext(0,vO)}optionalInterval(){return this.getRuleContext(0,yO)}TRUE_P(){return this.getToken(cn.TRUE_P,0)}FALSE_P(){return this.getToken(cn.FALSE_P,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}get ruleIndex(){return cn.RULE_aExpressionConst}accept(t){return t.visitAExpressionConst?t.visitAExpressionConst(this):t.visitChildren(this)}},Wu=class extends ga{constructor(t,e){super(t,e)}HexadecimalStringConstant(){return this.getToken(cn.HexadecimalStringConstant,0)}get ruleIndex(){return cn.RULE_xconst}accept(t){return t.visitXconst?t.visitXconst(this):t.visitChildren(this)}},Vu=class extends ga{constructor(t,e){super(t,e)}BinaryStringConstant(){return this.getToken(cn.BinaryStringConstant,0)}get ruleIndex(){return cn.RULE_bconst}accept(t){return t.visitBconst?t.visitBconst(this):t.visitChildren(this)}},Xu=class extends ga{constructor(t,e){super(t,e)}Numeric(){return this.getToken(cn.Numeric,0)}get ruleIndex(){return cn.RULE_fconst}accept(t){return t.visitFconst?t.visitFconst(this):t.visitChildren(this)}},Ku=class extends ga{constructor(t,e){super(t,e)}Integral(){return this.getToken(cn.Integral,0)}get ruleIndex(){return cn.RULE_iconst}accept(t){return t.visitIconst?t.visitIconst(this):t.visitChildren(this)}},Qu=class extends ga{constructor(t,e){super(t,e)}anySconst(){return this.getRuleContext(0,Ju)}optionalUescape(){return this.getRuleContext(0,Zu)}get ruleIndex(){return cn.RULE_sconst}accept(t){return t.visitSconst?t.visitSconst(this):t.visitChildren(this)}},Ju=class extends ga{constructor(t,e){super(t,e)}StringConstant(){return this.getToken(cn.StringConstant,0)}UnicodeEscapeStringConstant(){return this.getToken(cn.UnicodeEscapeStringConstant,0)}BeginDollarStringConstant(){return this.getToken(cn.BeginDollarStringConstant,0)}EndDollarStringConstant(){return this.getToken(cn.EndDollarStringConstant,0)}DollarText(t){return void 0===t?this.getTokens(cn.DollarText):this.getToken(cn.DollarText,t)}EscapeStringConstant(){return this.getToken(cn.EscapeStringConstant,0)}get ruleIndex(){return cn.RULE_anySconst}accept(t){return t.visitAnySconst?t.visitAnySconst(this):t.visitChildren(this)}},Zu=class extends ga{constructor(t,e){super(t,e)}UESCAPE(){return this.getToken(cn.UESCAPE,0)}anySconst(){return this.getRuleContext(0,Ju)}get ruleIndex(){return cn.RULE_optionalUescape}accept(t){return t.visitOptionalUescape?t.visitOptionalUescape(this):t.visitChildren(this)}},qu=class extends ga{constructor(t,e){super(t,e)}iconst(){return this.getRuleContext(0,Ku)}PLUS(){return this.getToken(cn.PLUS,0)}MINUS(){return this.getToken(cn.MINUS,0)}get ruleIndex(){return cn.RULE_signedIconst}accept(t){return t.visitSignedIconst?t.visitSignedIconst(this):t.visitChildren(this)}},ju=class extends ga{constructor(t,e){super(t,e)}nonReservedWord(){return this.getRuleContext(0,sN)}CURRENT_USER(){return this.getToken(cn.CURRENT_USER,0)}SESSION_USER(){return this.getToken(cn.SESSION_USER,0)}get ruleIndex(){return cn.RULE_roleName}accept(t){return t.visitRoleName?t.visitRoleName(this):t.visitChildren(this)}},zu=class extends ga{constructor(t,e){super(t,e)}roleName(t){return void 0===t?this.getRuleContexts(ju):this.getRuleContext(t,ju)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_roleNameList}accept(t){return t.visitRoleNameList?t.visitRoleNameList(this):t.visitChildren(this)}},$u=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}unreservedKeyword(){return this.getRuleContext(0,cN)}columnNameKeyword(){return this.getRuleContext(0,nN)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}LEFT(){return this.getToken(cn.LEFT,0)}RIGHT(){return this.getToken(cn.RIGHT,0)}get ruleIndex(){return cn.RULE_columnId}accept(t){return t.visitColumnId?t.visitColumnId(this):t.visitChildren(this)}},tN=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}unreservedKeyword(){return this.getRuleContext(0,cN)}columnNameKeyword(){return this.getRuleContext(0,nN)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}get ruleIndex(){return cn.RULE_tableAlias}accept(t){return t.visitTableAlias?t.visitTableAlias(this):t.visitChildren(this)}},eN=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}unreservedKeyword(){return this.getRuleContext(0,cN)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}typeFunctionNameKeyword(){return this.getRuleContext(0,hN)}get ruleIndex(){return cn.RULE_typeFunctionName}accept(t){return t.visitTypeFunctionName?t.visitTypeFunctionName(this):t.visitChildren(this)}},sN=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}unreservedKeyword(){return this.getRuleContext(0,cN)}columnNameKeyword(){return this.getRuleContext(0,nN)}typeFunctionNameKeyword(){return this.getRuleContext(0,hN)}get ruleIndex(){return cn.RULE_nonReservedWord}accept(t){return t.visitNonReservedWord?t.visitNonReservedWord(this):t.visitChildren(this)}},aN=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}unreservedKeyword(){return this.getRuleContext(0,cN)}columnNameKeyword(){return this.getRuleContext(0,nN)}typeFunctionNameKeyword(){return this.getRuleContext(0,hN)}reservedKeyword(){return this.getRuleContext(0,EN)}get ruleIndex(){return cn.RULE_columnLabel}accept(t){return t.visitColumnLabel?t.visitColumnLabel(this):t.visitChildren(this)}},rN=class extends ga{constructor(t,e){super(t,e)}Identifier(){return this.getToken(cn.Identifier,0)}optionalUescape(){return this.getRuleContext(0,Zu)}QuotedIdentifier(){return this.getToken(cn.QuotedIdentifier,0)}UnicodeQuotedIdentifier(){return this.getToken(cn.UnicodeQuotedIdentifier,0)}plsqlVariableName(){return this.getRuleContext(0,AI)}plsqlIdentifier(){return this.getRuleContext(0,iN)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}get ruleIndex(){return cn.RULE_identifier}accept(t){return t.visitIdentifier?t.visitIdentifier(this):t.visitChildren(this)}},iN=class extends ga{constructor(t,e){super(t,e)}PLSQLIDENTIFIER(){return this.getToken(cn.PLSQLIDENTIFIER,0)}get ruleIndex(){return cn.RULE_plsqlIdentifier}accept(t){return t.visitPlsqlIdentifier?t.visitPlsqlIdentifier(this):t.visitChildren(this)}},cN=class extends ga{constructor(t,e){super(t,e)}ABORT_P(){return this.getToken(cn.ABORT_P,0)}ABSOLUTE_P(){return this.getToken(cn.ABSOLUTE_P,0)}ACCESS(){return this.getToken(cn.ACCESS,0)}ACTION(){return this.getToken(cn.ACTION,0)}ADD_P(){return this.getToken(cn.ADD_P,0)}ADMIN(){return this.getToken(cn.ADMIN,0)}AFTER(){return this.getToken(cn.AFTER,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}ALSO(){return this.getToken(cn.ALSO,0)}ALTER(){return this.getToken(cn.ALTER,0)}ALWAYS(){return this.getToken(cn.ALWAYS,0)}ASSERTION(){return this.getToken(cn.ASSERTION,0)}ASSIGNMENT(){return this.getToken(cn.ASSIGNMENT,0)}AT(){return this.getToken(cn.AT,0)}ATTACH(){return this.getToken(cn.ATTACH,0)}ATTRIBUTE(){return this.getToken(cn.ATTRIBUTE,0)}BACKWARD(){return this.getToken(cn.BACKWARD,0)}BEFORE(){return this.getToken(cn.BEFORE,0)}BEGIN_P(){return this.getToken(cn.BEGIN_P,0)}BY(){return this.getToken(cn.BY,0)}CACHE(){return this.getToken(cn.CACHE,0)}CALL(){return this.getToken(cn.CALL,0)}CALLED(){return this.getToken(cn.CALLED,0)}CASCADE(){return this.getToken(cn.CASCADE,0)}CASCADED(){return this.getToken(cn.CASCADED,0)}CATALOG(){return this.getToken(cn.CATALOG,0)}CHAIN(){return this.getToken(cn.CHAIN,0)}CHARACTERISTICS(){return this.getToken(cn.CHARACTERISTICS,0)}CHECKPOINT(){return this.getToken(cn.CHECKPOINT,0)}CLASS(){return this.getToken(cn.CLASS,0)}CLOSE(){return this.getToken(cn.CLOSE,0)}CLUSTER(){return this.getToken(cn.CLUSTER,0)}COLUMNS(){return this.getToken(cn.COLUMNS,0)}COMMENT(){return this.getToken(cn.COMMENT,0)}COMMENTS(){return this.getToken(cn.COMMENTS,0)}COMMIT(){return this.getToken(cn.COMMIT,0)}COMMITTED(){return this.getToken(cn.COMMITTED,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}CONFLICT(){return this.getToken(cn.CONFLICT,0)}CONNECTION(){return this.getToken(cn.CONNECTION,0)}CONSTRAINTS(){return this.getToken(cn.CONSTRAINTS,0)}CONTENT_P(){return this.getToken(cn.CONTENT_P,0)}CONTINUE_P(){return this.getToken(cn.CONTINUE_P,0)}CONVERSION_P(){return this.getToken(cn.CONVERSION_P,0)}COPY(){return this.getToken(cn.COPY,0)}COST(){return this.getToken(cn.COST,0)}CSV(){return this.getToken(cn.CSV,0)}CUBE(){return this.getToken(cn.CUBE,0)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}CURSOR(){return this.getToken(cn.CURSOR,0)}CYCLE(){return this.getToken(cn.CYCLE,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}DAY_P(){return this.getToken(cn.DAY_P,0)}DEALLOCATE(){return this.getToken(cn.DEALLOCATE,0)}DECLARE(){return this.getToken(cn.DECLARE,0)}DEFAULTS(){return this.getToken(cn.DEFAULTS,0)}DEFERRED(){return this.getToken(cn.DEFERRED,0)}DEFINER(){return this.getToken(cn.DEFINER,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}DELIMITER(){return this.getToken(cn.DELIMITER,0)}DELIMITERS(){return this.getToken(cn.DELIMITERS,0)}DEPENDS(){return this.getToken(cn.DEPENDS,0)}DETACH(){return this.getToken(cn.DETACH,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}DISABLE_P(){return this.getToken(cn.DISABLE_P,0)}DISCARD(){return this.getToken(cn.DISCARD,0)}DOCUMENT_P(){return this.getToken(cn.DOCUMENT_P,0)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}DOUBLE_P(){return this.getToken(cn.DOUBLE_P,0)}DROP(){return this.getToken(cn.DROP,0)}EACH(){return this.getToken(cn.EACH,0)}ENABLE_P(){return this.getToken(cn.ENABLE_P,0)}ENCODING(){return this.getToken(cn.ENCODING,0)}ENCRYPTED(){return this.getToken(cn.ENCRYPTED,0)}ENUM_P(){return this.getToken(cn.ENUM_P,0)}ESCAPE(){return this.getToken(cn.ESCAPE,0)}EVENT(){return this.getToken(cn.EVENT,0)}EXCLUDE(){return this.getToken(cn.EXCLUDE,0)}EXCLUDING(){return this.getToken(cn.EXCLUDING,0)}EXCLUSIVE(){return this.getToken(cn.EXCLUSIVE,0)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}EXPLAIN(){return this.getToken(cn.EXPLAIN,0)}EXPRESSION(){return this.getToken(cn.EXPRESSION,0)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}EXTERNAL(){return this.getToken(cn.EXTERNAL,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}FILTER(){return this.getToken(cn.FILTER,0)}FIRST_P(){return this.getToken(cn.FIRST_P,0)}FOLLOWING(){return this.getToken(cn.FOLLOWING,0)}FORCE(){return this.getToken(cn.FORCE,0)}FORWARD(){return this.getToken(cn.FORWARD,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}FUNCTIONS(){return this.getToken(cn.FUNCTIONS,0)}GENERATED(){return this.getToken(cn.GENERATED,0)}GLOBAL(){return this.getToken(cn.GLOBAL,0)}GRANTED(){return this.getToken(cn.GRANTED,0)}GROUPS(){return this.getToken(cn.GROUPS,0)}HANDLER(){return this.getToken(cn.HANDLER,0)}HEADER_P(){return this.getToken(cn.HEADER_P,0)}HOLD(){return this.getToken(cn.HOLD,0)}HOUR_P(){return this.getToken(cn.HOUR_P,0)}IDENTITY_P(){return this.getToken(cn.IDENTITY_P,0)}IF_P(){return this.getToken(cn.IF_P,0)}IMMEDIATE(){return this.getToken(cn.IMMEDIATE,0)}IMMUTABLE(){return this.getToken(cn.IMMUTABLE,0)}IMPLICIT_P(){return this.getToken(cn.IMPLICIT_P,0)}IMPORT_P(){return this.getToken(cn.IMPORT_P,0)}INCLUDE(){return this.getToken(cn.INCLUDE,0)}INCLUDING(){return this.getToken(cn.INCLUDING,0)}INCREMENT(){return this.getToken(cn.INCREMENT,0)}INDEX(){return this.getToken(cn.INDEX,0)}INDEXES(){return this.getToken(cn.INDEXES,0)}INHERIT(){return this.getToken(cn.INHERIT,0)}INHERITS(){return this.getToken(cn.INHERITS,0)}INLINE_P(){return this.getToken(cn.INLINE_P,0)}INPUT_P(){return this.getToken(cn.INPUT_P,0)}INSENSITIVE(){return this.getToken(cn.INSENSITIVE,0)}INSERT(){return this.getToken(cn.INSERT,0)}INSTEAD(){return this.getToken(cn.INSTEAD,0)}INVOKER(){return this.getToken(cn.INVOKER,0)}ISOLATION(){return this.getToken(cn.ISOLATION,0)}KEY(){return this.getToken(cn.KEY,0)}LABEL(){return this.getToken(cn.LABEL,0)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}LARGE_P(){return this.getToken(cn.LARGE_P,0)}LAST_P(){return this.getToken(cn.LAST_P,0)}LEAKPROOF(){return this.getToken(cn.LEAKPROOF,0)}LEVEL(){return this.getToken(cn.LEVEL,0)}LISTEN(){return this.getToken(cn.LISTEN,0)}LOAD(){return this.getToken(cn.LOAD,0)}LOCAL(){return this.getToken(cn.LOCAL,0)}LOCATION(){return this.getToken(cn.LOCATION,0)}LOCK_P(){return this.getToken(cn.LOCK_P,0)}LOCKED(){return this.getToken(cn.LOCKED,0)}LOGGED(){return this.getToken(cn.LOGGED,0)}MAPPING(){return this.getToken(cn.MAPPING,0)}MATCH(){return this.getToken(cn.MATCH,0)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}MAXVALUE(){return this.getToken(cn.MAXVALUE,0)}METHOD(){return this.getToken(cn.METHOD,0)}MINUTE_P(){return this.getToken(cn.MINUTE_P,0)}MINVALUE(){return this.getToken(cn.MINVALUE,0)}MODE(){return this.getToken(cn.MODE,0)}MONTH_P(){return this.getToken(cn.MONTH_P,0)}MOVE(){return this.getToken(cn.MOVE,0)}NAME_P(){return this.getToken(cn.NAME_P,0)}NAMES(){return this.getToken(cn.NAMES,0)}NEW(){return this.getToken(cn.NEW,0)}NEXT(){return this.getToken(cn.NEXT,0)}NFC(){return this.getToken(cn.NFC,0)}NFD(){return this.getToken(cn.NFD,0)}NFKC(){return this.getToken(cn.NFKC,0)}NFKD(){return this.getToken(cn.NFKD,0)}NO(){return this.getToken(cn.NO,0)}NORMALIZED(){return this.getToken(cn.NORMALIZED,0)}NOTHING(){return this.getToken(cn.NOTHING,0)}NOTIFY(){return this.getToken(cn.NOTIFY,0)}NOWAIT(){return this.getToken(cn.NOWAIT,0)}NULLS_P(){return this.getToken(cn.NULLS_P,0)}OBJECT_P(){return this.getToken(cn.OBJECT_P,0)}OF(){return this.getToken(cn.OF,0)}OFF(){return this.getToken(cn.OFF,0)}OIDS(){return this.getToken(cn.OIDS,0)}OLD(){return this.getToken(cn.OLD,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}OPTION(){return this.getToken(cn.OPTION,0)}OPTIONS(){return this.getToken(cn.OPTIONS,0)}ORDINALITY(){return this.getToken(cn.ORDINALITY,0)}OTHERS(){return this.getToken(cn.OTHERS,0)}OVER(){return this.getToken(cn.OVER,0)}OVERRIDING(){return this.getToken(cn.OVERRIDING,0)}OWNED(){return this.getToken(cn.OWNED,0)}OWNER(){return this.getToken(cn.OWNER,0)}PARALLEL(){return this.getToken(cn.PARALLEL,0)}PARSER(){return this.getToken(cn.PARSER,0)}PARTIAL(){return this.getToken(cn.PARTIAL,0)}PARTITION(){return this.getToken(cn.PARTITION,0)}PASSING(){return this.getToken(cn.PASSING,0)}PASSWORD(){return this.getToken(cn.PASSWORD,0)}PLANS(){return this.getToken(cn.PLANS,0)}POLICY(){return this.getToken(cn.POLICY,0)}PRECEDING(){return this.getToken(cn.PRECEDING,0)}PREPARE(){return this.getToken(cn.PREPARE,0)}PREPARED(){return this.getToken(cn.PREPARED,0)}PRESERVE(){return this.getToken(cn.PRESERVE,0)}PRIOR(){return this.getToken(cn.PRIOR,0)}PRIVILEGES(){return this.getToken(cn.PRIVILEGES,0)}PROCEDURAL(){return this.getToken(cn.PROCEDURAL,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}PROCEDURES(){return this.getToken(cn.PROCEDURES,0)}PROGRAM(){return this.getToken(cn.PROGRAM,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}QUOTE(){return this.getToken(cn.QUOTE,0)}RANGE(){return this.getToken(cn.RANGE,0)}READ(){return this.getToken(cn.READ,0)}REASSIGN(){return this.getToken(cn.REASSIGN,0)}RECHECK(){return this.getToken(cn.RECHECK,0)}RECURSIVE(){return this.getToken(cn.RECURSIVE,0)}REF(){return this.getToken(cn.REF,0)}REFERENCING(){return this.getToken(cn.REFERENCING,0)}REFRESH(){return this.getToken(cn.REFRESH,0)}REINDEX(){return this.getToken(cn.REINDEX,0)}RELATIVE_P(){return this.getToken(cn.RELATIVE_P,0)}RELEASE(){return this.getToken(cn.RELEASE,0)}RENAME(){return this.getToken(cn.RENAME,0)}REPEATABLE(){return this.getToken(cn.REPEATABLE,0)}REPLICA(){return this.getToken(cn.REPLICA,0)}RESET(){return this.getToken(cn.RESET,0)}RESTART(){return this.getToken(cn.RESTART,0)}RESTRICT(){return this.getToken(cn.RESTRICT,0)}RETURNS(){return this.getToken(cn.RETURNS,0)}REVOKE(){return this.getToken(cn.REVOKE,0)}ROLE(){return this.getToken(cn.ROLE,0)}ROLLBACK(){return this.getToken(cn.ROLLBACK,0)}ROLLUP(){return this.getToken(cn.ROLLUP,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}ROUTINES(){return this.getToken(cn.ROUTINES,0)}ROWS(){return this.getToken(cn.ROWS,0)}RULE(){return this.getToken(cn.RULE,0)}SAVEPOINT(){return this.getToken(cn.SAVEPOINT,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}SCHEMAS(){return this.getToken(cn.SCHEMAS,0)}SCROLL(){return this.getToken(cn.SCROLL,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}SECOND_P(){return this.getToken(cn.SECOND_P,0)}SECURITY(){return this.getToken(cn.SECURITY,0)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}SEQUENCES(){return this.getToken(cn.SEQUENCES,0)}SERIALIZABLE(){return this.getToken(cn.SERIALIZABLE,0)}SERVER(){return this.getToken(cn.SERVER,0)}SESSION(){return this.getToken(cn.SESSION,0)}SET(){return this.getToken(cn.SET,0)}SETS(){return this.getToken(cn.SETS,0)}SHARE(){return this.getToken(cn.SHARE,0)}SHOW(){return this.getToken(cn.SHOW,0)}SIMPLE(){return this.getToken(cn.SIMPLE,0)}SKIP_P(){return this.getToken(cn.SKIP_P,0)}SNAPSHOT(){return this.getToken(cn.SNAPSHOT,0)}SQL_P(){return this.getToken(cn.SQL_P,0)}STABLE(){return this.getToken(cn.STABLE,0)}STANDALONE_P(){return this.getToken(cn.STANDALONE_P,0)}START(){return this.getToken(cn.START,0)}STATEMENT(){return this.getToken(cn.STATEMENT,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}STDIN(){return this.getToken(cn.STDIN,0)}STDOUT(){return this.getToken(cn.STDOUT,0)}STORAGE(){return this.getToken(cn.STORAGE,0)}STORED(){return this.getToken(cn.STORED,0)}STRICT_P(){return this.getToken(cn.STRICT_P,0)}STRIP_P(){return this.getToken(cn.STRIP_P,0)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}SUPPORT(){return this.getToken(cn.SUPPORT,0)}SYSID(){return this.getToken(cn.SYSID,0)}SYSTEM_P(){return this.getToken(cn.SYSTEM_P,0)}TABLES(){return this.getToken(cn.TABLES,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}TEMP(){return this.getToken(cn.TEMP,0)}TEMPLATE(){return this.getToken(cn.TEMPLATE,0)}TEMPORARY(){return this.getToken(cn.TEMPORARY,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}TIES(){return this.getToken(cn.TIES,0)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}TRANSFORM(){return this.getToken(cn.TRANSFORM,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}TRUNCATE(){return this.getToken(cn.TRUNCATE,0)}TRUSTED(){return this.getToken(cn.TRUSTED,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}TYPES_P(){return this.getToken(cn.TYPES_P,0)}UESCAPE(){return this.getToken(cn.UESCAPE,0)}UNBOUNDED(){return this.getToken(cn.UNBOUNDED,0)}UNCOMMITTED(){return this.getToken(cn.UNCOMMITTED,0)}UNENCRYPTED(){return this.getToken(cn.UNENCRYPTED,0)}UNKNOWN(){return this.getToken(cn.UNKNOWN,0)}UNLISTEN(){return this.getToken(cn.UNLISTEN,0)}UNLOGGED(){return this.getToken(cn.UNLOGGED,0)}UNTIL(){return this.getToken(cn.UNTIL,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}VACUUM(){return this.getToken(cn.VACUUM,0)}VALID(){return this.getToken(cn.VALID,0)}VALIDATE(){return this.getToken(cn.VALIDATE,0)}VALIDATOR(){return this.getToken(cn.VALIDATOR,0)}VALUE_P(){return this.getToken(cn.VALUE_P,0)}VARYING(){return this.getToken(cn.VARYING,0)}VERSION_P(){return this.getToken(cn.VERSION_P,0)}VIEW(){return this.getToken(cn.VIEW,0)}VIEWS(){return this.getToken(cn.VIEWS,0)}VOLATILE(){return this.getToken(cn.VOLATILE,0)}WHITESPACE_P(){return this.getToken(cn.WHITESPACE_P,0)}WITHIN(){return this.getToken(cn.WITHIN,0)}WITHOUT(){return this.getToken(cn.WITHOUT,0)}WORK(){return this.getToken(cn.WORK,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}WRITE(){return this.getToken(cn.WRITE,0)}XML_P(){return this.getToken(cn.XML_P,0)}YEAR_P(){return this.getToken(cn.YEAR_P,0)}YES_P(){return this.getToken(cn.YES_P,0)}ZONE(){return this.getToken(cn.ZONE,0)}get ruleIndex(){return cn.RULE_unreservedKeyword}accept(t){return t.visitUnreservedKeyword?t.visitUnreservedKeyword(this):t.visitChildren(this)}},nN=class extends ga{constructor(t,e){super(t,e)}BETWEEN(){return this.getToken(cn.BETWEEN,0)}BIGINT(){return this.getToken(cn.BIGINT,0)}bit(){return this.getRuleContext(0,mO)}BOOLEAN_P(){return this.getToken(cn.BOOLEAN_P,0)}CHAR_P(){return this.getToken(cn.CHAR_P,0)}character(){return this.getRuleContext(0,xO)}COALESCE(){return this.getToken(cn.COALESCE,0)}DEC(){return this.getToken(cn.DEC,0)}DECIMAL_P(){return this.getToken(cn.DECIMAL_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}EXTRACT(){return this.getToken(cn.EXTRACT,0)}FLOAT_P(){return this.getToken(cn.FLOAT_P,0)}GREATEST(){return this.getToken(cn.GREATEST,0)}GROUPING(){return this.getToken(cn.GROUPING,0)}INOUT(){return this.getToken(cn.INOUT,0)}INT_P(){return this.getToken(cn.INT_P,0)}INTEGER(){return this.getToken(cn.INTEGER,0)}INTERVAL(){return this.getToken(cn.INTERVAL,0)}LEAST(){return this.getToken(cn.LEAST,0)}NATIONAL(){return this.getToken(cn.NATIONAL,0)}NCHAR(){return this.getToken(cn.NCHAR,0)}NONE(){return this.getToken(cn.NONE,0)}NORMALIZE(){return this.getToken(cn.NORMALIZE,0)}NULLIF(){return this.getToken(cn.NULLIF,0)}numeric(){return this.getRuleContext(0,dO)}OUT_P(){return this.getToken(cn.OUT_P,0)}OVERLAY(){return this.getToken(cn.OVERLAY,0)}POSITION(){return this.getToken(cn.POSITION,0)}PRECISION(){return this.getToken(cn.PRECISION,0)}REAL(){return this.getToken(cn.REAL,0)}ROW(){return this.getToken(cn.ROW,0)}SETOF(){return this.getToken(cn.SETOF,0)}SMALLINT(){return this.getToken(cn.SMALLINT,0)}SUBSTRING(){return this.getToken(cn.SUBSTRING,0)}TIME(){return this.getToken(cn.TIME,0)}TIMESTAMP(){return this.getToken(cn.TIMESTAMP,0)}TREAT(){return this.getToken(cn.TREAT,0)}TRIM(){return this.getToken(cn.TRIM,0)}VALUES(){return this.getToken(cn.VALUES,0)}VARCHAR(){return this.getToken(cn.VARCHAR,0)}XMLATTRIBUTES(){return this.getToken(cn.XMLATTRIBUTES,0)}XMLCONCAT(){return this.getToken(cn.XMLCONCAT,0)}XMLELEMENT(){return this.getToken(cn.XMLELEMENT,0)}XMLEXISTS(){return this.getToken(cn.XMLEXISTS,0)}XMLFOREST(){return this.getToken(cn.XMLFOREST,0)}XMLNAMESPACES(){return this.getToken(cn.XMLNAMESPACES,0)}XMLPARSE(){return this.getToken(cn.XMLPARSE,0)}XMLPI(){return this.getToken(cn.XMLPI,0)}XMLROOT(){return this.getToken(cn.XMLROOT,0)}XMLSERIALIZE(){return this.getToken(cn.XMLSERIALIZE,0)}XMLTABLE(){return this.getToken(cn.XMLTABLE,0)}builtinFunctionName(){return this.getRuleContext(0,TN)}get ruleIndex(){return cn.RULE_columnNameKeyword}accept(t){return t.visitColumnNameKeyword?t.visitColumnNameKeyword(this):t.visitChildren(this)}},hN=class extends ga{constructor(t,e){super(t,e)}AUTHORIZATION(){return this.getToken(cn.AUTHORIZATION,0)}BINARY(){return this.getToken(cn.BINARY,0)}COLLATION(){return this.getToken(cn.COLLATION,0)}CONCURRENTLY(){return this.getToken(cn.CONCURRENTLY,0)}CROSS(){return this.getToken(cn.CROSS,0)}CURRENT_SCHEMA(){return this.getToken(cn.CURRENT_SCHEMA,0)}FREEZE(){return this.getToken(cn.FREEZE,0)}FULL(){return this.getToken(cn.FULL,0)}ILIKE(){return this.getToken(cn.ILIKE,0)}INNER_P(){return this.getToken(cn.INNER_P,0)}IS(){return this.getToken(cn.IS,0)}ISNULL(){return this.getToken(cn.ISNULL,0)}JOIN(){return this.getToken(cn.JOIN,0)}LIKE(){return this.getToken(cn.LIKE,0)}NATURAL(){return this.getToken(cn.NATURAL,0)}NOTNULL(){return this.getToken(cn.NOTNULL,0)}OUTER_P(){return this.getToken(cn.OUTER_P,0)}OVERLAPS(){return this.getToken(cn.OVERLAPS,0)}SIMILAR(){return this.getToken(cn.SIMILAR,0)}TABLESAMPLE(){return this.getToken(cn.TABLESAMPLE,0)}VERBOSE(){return this.getToken(cn.VERBOSE,0)}get ruleIndex(){return cn.RULE_typeFunctionNameKeyword}accept(t){return t.visitTypeFunctionNameKeyword?t.visitTypeFunctionNameKeyword(this):t.visitChildren(this)}},EN=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(cn.ALL,0)}ANALYSE(){return this.getToken(cn.ANALYSE,0)}ANALYZE(){return this.getToken(cn.ANALYZE,0)}AND(){return this.getToken(cn.AND,0)}ANY(){return this.getToken(cn.ANY,0)}ARRAY(){return this.getToken(cn.ARRAY,0)}AS(){return this.getToken(cn.AS,0)}ASC(){return this.getToken(cn.ASC,0)}ASYMMETRIC(){return this.getToken(cn.ASYMMETRIC,0)}BOTH(){return this.getToken(cn.BOTH,0)}CASE(){return this.getToken(cn.CASE,0)}CAST(){return this.getToken(cn.CAST,0)}CHECK(){return this.getToken(cn.CHECK,0)}COLLATE(){return this.getToken(cn.COLLATE,0)}COLUMN(){return this.getToken(cn.COLUMN,0)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}CREATE(){return this.getToken(cn.CREATE,0)}CURRENT_CATALOG(){return this.getToken(cn.CURRENT_CATALOG,0)}CURRENT_DATE(){return this.getToken(cn.CURRENT_DATE,0)}CURRENT_ROLE(){return this.getToken(cn.CURRENT_ROLE,0)}CURRENT_TIME(){return this.getToken(cn.CURRENT_TIME,0)}CURRENT_TIMESTAMP(){return this.getToken(cn.CURRENT_TIMESTAMP,0)}CURRENT_USER(){return this.getToken(cn.CURRENT_USER,0)}DEFERRABLE(){return this.getToken(cn.DEFERRABLE,0)}DESC(){return this.getToken(cn.DESC,0)}DISTINCT(){return this.getToken(cn.DISTINCT,0)}DO(){return this.getToken(cn.DO,0)}ELSE(){return this.getToken(cn.ELSE,0)}END_P(){return this.getToken(cn.END_P,0)}EXCEPT(){return this.getToken(cn.EXCEPT,0)}FALSE_P(){return this.getToken(cn.FALSE_P,0)}FETCH(){return this.getToken(cn.FETCH,0)}FOR(){return this.getToken(cn.FOR,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}FROM(){return this.getToken(cn.FROM,0)}GRANT(){return this.getToken(cn.GRANT,0)}GROUP_P(){return this.getToken(cn.GROUP_P,0)}HAVING(){return this.getToken(cn.HAVING,0)}IN_P(){return this.getToken(cn.IN_P,0)}INITIALLY(){return this.getToken(cn.INITIALLY,0)}INTERSECT(){return this.getToken(cn.INTERSECT,0)}LATERAL_P(){return this.getToken(cn.LATERAL_P,0)}LEADING(){return this.getToken(cn.LEADING,0)}LIMIT(){return this.getToken(cn.LIMIT,0)}LOCALTIME(){return this.getToken(cn.LOCALTIME,0)}LOCALTIMESTAMP(){return this.getToken(cn.LOCALTIMESTAMP,0)}NOT(){return this.getToken(cn.NOT,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}OFFSET(){return this.getToken(cn.OFFSET,0)}ON(){return this.getToken(cn.ON,0)}ONLY(){return this.getToken(cn.ONLY,0)}OR(){return this.getToken(cn.OR,0)}ORDER(){return this.getToken(cn.ORDER,0)}PLACING(){return this.getToken(cn.PLACING,0)}PRIMARY(){return this.getToken(cn.PRIMARY,0)}REFERENCES(){return this.getToken(cn.REFERENCES,0)}RETURNING(){return this.getToken(cn.RETURNING,0)}SELECT(){return this.getToken(cn.SELECT,0)}SESSION_USER(){return this.getToken(cn.SESSION_USER,0)}SOME(){return this.getToken(cn.SOME,0)}SYMMETRIC(){return this.getToken(cn.SYMMETRIC,0)}TABLE(){return this.getToken(cn.TABLE,0)}THEN(){return this.getToken(cn.THEN,0)}TO(){return this.getToken(cn.TO,0)}TRAILING(){return this.getToken(cn.TRAILING,0)}TRUE_P(){return this.getToken(cn.TRUE_P,0)}UNION(){return this.getToken(cn.UNION,0)}UNIQUE(){return this.getToken(cn.UNIQUE,0)}USER(){return this.getToken(cn.USER,0)}USING(){return this.getToken(cn.USING,0)}VARIADIC(){return this.getToken(cn.VARIADIC,0)}WHEN(){return this.getToken(cn.WHEN,0)}WHERE(){return this.getToken(cn.WHERE,0)}WINDOW(){return this.getToken(cn.WINDOW,0)}WITH(){return this.getToken(cn.WITH,0)}get ruleIndex(){return cn.RULE_reservedKeyword}accept(t){return t.visitReservedKeyword?t.visitReservedKeyword(this):t.visitChildren(this)}},TN=class extends ga{constructor(t,e){super(t,e)}XMLCOMMENT(){return this.getToken(cn.XMLCOMMENT,0)}XML_IS_WELL_FORMED(){return this.getToken(cn.XML_IS_WELL_FORMED,0)}XML_IS_WELL_FORMED_DOCUMENT(){return this.getToken(cn.XML_IS_WELL_FORMED_DOCUMENT,0)}XML_IS_WELL_FORMED_CONTENT(){return this.getToken(cn.XML_IS_WELL_FORMED_CONTENT,0)}XMLAGG(){return this.getToken(cn.XMLAGG,0)}XPATH(){return this.getToken(cn.XPATH,0)}XPATH_EXISTS(){return this.getToken(cn.XPATH_EXISTS,0)}ABS(){return this.getToken(cn.ABS,0)}CBRT(){return this.getToken(cn.CBRT,0)}CEIL(){return this.getToken(cn.CEIL,0)}CEILING(){return this.getToken(cn.CEILING,0)}DEGREES(){return this.getToken(cn.DEGREES,0)}DIV(){return this.getToken(cn.DIV,0)}EXP(){return this.getToken(cn.EXP,0)}FACTORIAL(){return this.getToken(cn.FACTORIAL,0)}FLOOR(){return this.getToken(cn.FLOOR,0)}GCD(){return this.getToken(cn.GCD,0)}LCM(){return this.getToken(cn.LCM,0)}LN(){return this.getToken(cn.LN,0)}LOG(){return this.getToken(cn.LOG,0)}LOG10(){return this.getToken(cn.LOG10,0)}MIN_SCALE(){return this.getToken(cn.MIN_SCALE,0)}MOD(){return this.getToken(cn.MOD,0)}PI(){return this.getToken(cn.PI,0)}POWER(){return this.getToken(cn.POWER,0)}RADIANS(){return this.getToken(cn.RADIANS,0)}ROUND(){return this.getToken(cn.ROUND,0)}SCALE(){return this.getToken(cn.SCALE,0)}SIGN(){return this.getToken(cn.SIGN,0)}SQRT(){return this.getToken(cn.SQRT,0)}TRIM_SCALE(){return this.getToken(cn.TRIM_SCALE,0)}TRUNC(){return this.getToken(cn.TRUNC,0)}WIDTH_BUCKET(){return this.getToken(cn.WIDTH_BUCKET,0)}RANDOM(){return this.getToken(cn.RANDOM,0)}SETSEED(){return this.getToken(cn.SETSEED,0)}ACOS(){return this.getToken(cn.ACOS,0)}ACOSD(){return this.getToken(cn.ACOSD,0)}ACOSH(){return this.getToken(cn.ACOSH,0)}ASIN(){return this.getToken(cn.ASIN,0)}ASIND(){return this.getToken(cn.ASIND,0)}ASINH(){return this.getToken(cn.ASINH,0)}ATAN(){return this.getToken(cn.ATAN,0)}ATAND(){return this.getToken(cn.ATAND,0)}ATANH(){return this.getToken(cn.ATANH,0)}ATAN2(){return this.getToken(cn.ATAN2,0)}ATAN2D(){return this.getToken(cn.ATAN2D,0)}COS(){return this.getToken(cn.COS,0)}COSD(){return this.getToken(cn.COSD,0)}COSH(){return this.getToken(cn.COSH,0)}COT(){return this.getToken(cn.COT,0)}COTD(){return this.getToken(cn.COTD,0)}SIN(){return this.getToken(cn.SIN,0)}SIND(){return this.getToken(cn.SIND,0)}SINH(){return this.getToken(cn.SINH,0)}TAN(){return this.getToken(cn.TAN,0)}TAND(){return this.getToken(cn.TAND,0)}TANH(){return this.getToken(cn.TANH,0)}BIT_LENGTH(){return this.getToken(cn.BIT_LENGTH,0)}CHAR_LENGTH(){return this.getToken(cn.CHAR_LENGTH,0)}CHARACTER_LENGTH(){return this.getToken(cn.CHARACTER_LENGTH,0)}LOWER(){return this.getToken(cn.LOWER,0)}OCTET_LENGTH(){return this.getToken(cn.OCTET_LENGTH,0)}UPPER(){return this.getToken(cn.UPPER,0)}ASCII(){return this.getToken(cn.ASCII,0)}BTRIM(){return this.getToken(cn.BTRIM,0)}CHR(){return this.getToken(cn.CHR,0)}CONCAT(){return this.getToken(cn.CONCAT,0)}CONCAT_WS(){return this.getToken(cn.CONCAT_WS,0)}FORMAT(){return this.getToken(cn.FORMAT,0)}INITCAP(){return this.getToken(cn.INITCAP,0)}LENGTH(){return this.getToken(cn.LENGTH,0)}LPAD(){return this.getToken(cn.LPAD,0)}LTRIM(){return this.getToken(cn.LTRIM,0)}MD5(){return this.getToken(cn.MD5,0)}PARSE_IDENT(){return this.getToken(cn.PARSE_IDENT,0)}PG_CLIENT_ENCODING(){return this.getToken(cn.PG_CLIENT_ENCODING,0)}QUOTE_IDENT(){return this.getToken(cn.QUOTE_IDENT,0)}QUOTE_LITERAL(){return this.getToken(cn.QUOTE_LITERAL,0)}QUOTE_NULLABLE(){return this.getToken(cn.QUOTE_NULLABLE,0)}REGEXP_COUNT(){return this.getToken(cn.REGEXP_COUNT,0)}REGEXP_INSTR(){return this.getToken(cn.REGEXP_INSTR,0)}REGEXP_LIKE(){return this.getToken(cn.REGEXP_LIKE,0)}REGEXP_MATCH(){return this.getToken(cn.REGEXP_MATCH,0)}REGEXP_MATCHES(){return this.getToken(cn.REGEXP_MATCHES,0)}REGEXP_REPLACE(){return this.getToken(cn.REGEXP_REPLACE,0)}REGEXP_SPLIT_TO_ARRAY(){return this.getToken(cn.REGEXP_SPLIT_TO_ARRAY,0)}REGEXP_SPLIT_TO_TABLE(){return this.getToken(cn.REGEXP_SPLIT_TO_TABLE,0)}REGEXP_SUBSTR(){return this.getToken(cn.REGEXP_SUBSTR,0)}REPEAT(){return this.getToken(cn.REPEAT,0)}REPLACE(){return this.getToken(cn.REPLACE,0)}REVERSE(){return this.getToken(cn.REVERSE,0)}RPAD(){return this.getToken(cn.RPAD,0)}RTRIM(){return this.getToken(cn.RTRIM,0)}SPLIT_PART(){return this.getToken(cn.SPLIT_PART,0)}STARTS_WITH(){return this.getToken(cn.STARTS_WITH,0)}STRING_TO_ARRAY(){return this.getToken(cn.STRING_TO_ARRAY,0)}STRING_TO_TABLE(){return this.getToken(cn.STRING_TO_TABLE,0)}STRPOS(){return this.getToken(cn.STRPOS,0)}SUBSTR(){return this.getToken(cn.SUBSTR,0)}TO_ASCII(){return this.getToken(cn.TO_ASCII,0)}TO_HEX(){return this.getToken(cn.TO_HEX,0)}TRANSLATE(){return this.getToken(cn.TRANSLATE,0)}UNISTR(){return this.getToken(cn.UNISTR,0)}AGE(){return this.getToken(cn.AGE,0)}DATE_BIN(){return this.getToken(cn.DATE_BIN,0)}DATE_PART(){return this.getToken(cn.DATE_PART,0)}DATE_TRUNC(){return this.getToken(cn.DATE_TRUNC,0)}ISFINITE(){return this.getToken(cn.ISFINITE,0)}JUSTIFY_DAYS(){return this.getToken(cn.JUSTIFY_DAYS,0)}JUSTIFY_HOURS(){return this.getToken(cn.JUSTIFY_HOURS,0)}JUSTIFY_INTERVAL(){return this.getToken(cn.JUSTIFY_INTERVAL,0)}MAKE_DATE(){return this.getToken(cn.MAKE_DATE,0)}MAKE_INTERVAL(){return this.getToken(cn.MAKE_INTERVAL,0)}MAKE_TIME(){return this.getToken(cn.MAKE_TIME,0)}MAKE_TIMESTAMP(){return this.getToken(cn.MAKE_TIMESTAMP,0)}MAKE_TIMESTAMPTZ(){return this.getToken(cn.MAKE_TIMESTAMPTZ,0)}CLOCK_TIMESTAMP(){return this.getToken(cn.CLOCK_TIMESTAMP,0)}NOW(){return this.getToken(cn.NOW,0)}STATEMENT_TIMESTAMP(){return this.getToken(cn.STATEMENT_TIMESTAMP,0)}TIMEOFDAY(){return this.getToken(cn.TIMEOFDAY,0)}TRANSACTION_TIMESTAMP(){return this.getToken(cn.TRANSACTION_TIMESTAMP,0)}TO_TIMESTAMP(){return this.getToken(cn.TO_TIMESTAMP,0)}TO_CHAR(){return this.getToken(cn.TO_CHAR,0)}TO_DATE(){return this.getToken(cn.TO_DATE,0)}TO_NUMBER(){return this.getToken(cn.TO_NUMBER,0)}get ruleIndex(){return cn.RULE_builtinFunctionName}accept(t){return t.visitBuiltinFunctionName?t.visitBuiltinFunctionName(this):t.visitChildren(this)}},oN=class extends ga{constructor(t,e){super(t,e)}computeOptions(){return this.getRuleContext(0,RN)}plsqlBlock(){return this.getRuleContext(0,IN)}optionalSemi(){return this.getRuleContext(0,ON)}get ruleIndex(){return cn.RULE_plsqlFunction}accept(t){return t.visitPlsqlFunction?t.visitPlsqlFunction(this):t.visitChildren(this)}},RN=class extends ga{constructor(t,e){super(t,e)}computeOption(t){return void 0===t?this.getRuleContexts(AN):this.getRuleContext(t,AN)}get ruleIndex(){return cn.RULE_computeOptions}accept(t){return t.visitComputeOptions?t.visitComputeOptions(this):t.visitChildren(this)}},AN=class extends ga{constructor(t,e){super(t,e)}sharp(){return this.getRuleContext(0,SN)}OPTION(){return this.getToken(cn.OPTION,0)}DUMP(){return this.getToken(cn.DUMP,0)}PRINT_STRICT_PARAMS(){return this.getToken(cn.PRINT_STRICT_PARAMS,0)}optionValue(){return this.getRuleContext(0,lN)}VARIABLE_CONFLICT(){return this.getToken(cn.VARIABLE_CONFLICT,0)}ERROR(){return this.getToken(cn.ERROR,0)}USE_VARIABLE(){return this.getToken(cn.USE_VARIABLE,0)}USE_COLUMN(){return this.getToken(cn.USE_COLUMN,0)}get ruleIndex(){return cn.RULE_computeOption}accept(t){return t.visitComputeOption?t.visitComputeOption(this):t.visitChildren(this)}},SN=class extends ga{constructor(t,e){super(t,e)}Operator(){return this.getToken(cn.Operator,0)}get ruleIndex(){return cn.RULE_sharp}accept(t){return t.visitSharp?t.visitSharp(this):t.visitChildren(this)}},lN=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}reservedKeyword(){return this.getRuleContext(0,EN)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}unreservedKeyword(){return this.getRuleContext(0,cN)}get ruleIndex(){return cn.RULE_optionValue}accept(t){return t.visitOptionValue?t.visitOptionValue(this):t.visitChildren(this)}},ON=class extends ga{constructor(t,e){super(t,e)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_optionalSemi}accept(t){return t.visitOptionalSemi?t.visitOptionalSemi(this):t.visitChildren(this)}},IN=class extends ga{constructor(t,e){super(t,e)}declareSection(){return this.getRuleContext(0,uN)}BEGIN_P(){return this.getToken(cn.BEGIN_P,0)}procedureSection(){return this.getRuleContext(0,fN)}exceptionSection(){return this.getRuleContext(0,JL)}END_P(){return this.getToken(cn.END_P,0)}optionalLabel(){return this.getRuleContext(0,eC)}get ruleIndex(){return cn.RULE_plsqlBlock}accept(t){return t.visitPlsqlBlock?t.visitPlsqlBlock(this):t.visitChildren(this)}},uN=class extends ga{constructor(t,e){super(t,e)}optionalBlockLabel(){return this.getRuleContext(0,$L)}declareStart(){return this.getRuleContext(0,NN)}declareStatements(){return this.getRuleContext(0,LN)}get ruleIndex(){return cn.RULE_declareSection}accept(t){return t.visitDeclareSection?t.visitDeclareSection(this):t.visitChildren(this)}},NN=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(cn.DECLARE,0)}get ruleIndex(){return cn.RULE_declareStart}accept(t){return t.visitDeclareStart?t.visitDeclareStart(this):t.visitChildren(this)}},LN=class extends ga{constructor(t,e){super(t,e)}declareStatement(t){return void 0===t?this.getRuleContexts(_N):this.getRuleContext(t,_N)}get ruleIndex(){return cn.RULE_declareStatements}accept(t){return t.visitDeclareStatements?t.visitDeclareStatements(this):t.visitChildren(this)}},CN=class extends ga{constructor(t,e){super(t,e)}LESS_LESS(){return this.getToken(cn.LESS_LESS,0)}anyIdentifier(){return this.getRuleContext(0,aC)}GREATER_GREATER(){return this.getToken(cn.GREATER_GREATER,0)}get ruleIndex(){return cn.RULE_labelDeclaration}accept(t){return t.visitLabelDeclaration?t.visitLabelDeclaration(this):t.visitChildren(this)}},_N=class extends ga{constructor(t,e){super(t,e)}declareStatement2(){return this.getRuleContext(0,PN)}DECLARE(){return this.getToken(cn.DECLARE,0)}labelDeclaration(){return this.getRuleContext(0,CN)}get ruleIndex(){return cn.RULE_declareStatement}accept(t){return t.visitDeclareStatement?t.visitDeclareStatement(this):t.visitChildren(this)}},PN=class extends ga{constructor(t,e){super(t,e)}declareVarname(){return this.getRuleContext(0,xN)}SEMI(){return this.getToken(cn.SEMI,0)}ALIAS(){return this.getToken(cn.ALIAS,0)}FOR(){return this.getToken(cn.FOR,0)}declareAliasItem(){return this.getRuleContext(0,gN)}declareConst(){return this.getRuleContext(0,kN)}declareDatatype(){return this.getRuleContext(0,HN)}declareCollate(){return this.getRuleContext(0,GN)}declareNotNull(){return this.getRuleContext(0,FN)}declareDefaultValue(){return this.getRuleContext(0,vN)}optionalScrollable(){return this.getRuleContext(0,MN)}CURSOR(){return this.getToken(cn.CURSOR,0)}declareCursorArgs(){return this.getRuleContext(0,UN)}declareIsOrFor(){return this.getRuleContext(0,pN)}declareCursorQuery(){return this.getRuleContext(0,dN)}get ruleIndex(){return cn.RULE_declareStatement2}accept(t){return t.visitDeclareStatement2?t.visitDeclareStatement2(this):t.visitChildren(this)}},MN=class extends ga{constructor(t,e){super(t,e)}NO(){return this.getToken(cn.NO,0)}SCROLL(){return this.getToken(cn.SCROLL,0)}get ruleIndex(){return cn.RULE_optionalScrollable}accept(t){return t.visitOptionalScrollable?t.visitOptionalScrollable(this):t.visitChildren(this)}},dN=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,il)}get ruleIndex(){return cn.RULE_declareCursorQuery}accept(t){return t.visitDeclareCursorQuery?t.visitDeclareCursorQuery(this):t.visitChildren(this)}},UN=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}declareCursorArglist(){return this.getRuleContext(0,mN)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_declareCursorArgs}accept(t){return t.visitDeclareCursorArgs?t.visitDeclareCursorArgs(this):t.visitChildren(this)}},mN=class extends ga{constructor(t,e){super(t,e)}declareCursorArg(t){return void 0===t?this.getRuleContexts(DN):this.getRuleContext(t,DN)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_declareCursorArglist}accept(t){return t.visitDeclareCursorArglist?t.visitDeclareCursorArglist(this):t.visitChildren(this)}},DN=class extends ga{constructor(t,e){super(t,e)}declareVarname(){return this.getRuleContext(0,xN)}declareDatatype(){return this.getRuleContext(0,HN)}get ruleIndex(){return cn.RULE_declareCursorArg}accept(t){return t.visitDeclareCursorArg?t.visitDeclareCursorArg(this):t.visitChildren(this)}},pN=class extends ga{constructor(t,e){super(t,e)}IS(){return this.getToken(cn.IS,0)}FOR(){return this.getToken(cn.FOR,0)}get ruleIndex(){return cn.RULE_declareIsOrFor}accept(t){return t.visitDeclareIsOrFor?t.visitDeclareIsOrFor(this):t.visitChildren(this)}},gN=class extends ga{constructor(t,e){super(t,e)}PARAM(){return this.getToken(cn.PARAM,0)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_declareAliasItem}accept(t){return t.visitDeclareAliasItem?t.visitDeclareAliasItem(this):t.visitChildren(this)}},xN=class extends ga{constructor(t,e){super(t,e)}anyIdentifier(){return this.getRuleContext(0,aC)}get ruleIndex(){return cn.RULE_declareVarname}accept(t){return t.visitDeclareVarname?t.visitDeclareVarname(this):t.visitChildren(this)}},kN=class extends ga{constructor(t,e){super(t,e)}CONSTANT(){return this.getToken(cn.CONSTANT,0)}get ruleIndex(){return cn.RULE_declareConst}accept(t){return t.visitDeclareConst?t.visitDeclareConst(this):t.visitChildren(this)}},HN=class extends ga{constructor(t,e){super(t,e)}typeName(){return this.getRuleContext(0,LO)}get ruleIndex(){return cn.RULE_declareDatatype}accept(t){return t.visitDeclareDatatype?t.visitDeclareDatatype(this):t.visitChildren(this)}},GN=class extends ga{constructor(t,e){super(t,e)}COLLATE(){return this.getToken(cn.COLLATE,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_declareCollate}accept(t){return t.visitDeclareCollate?t.visitDeclareCollate(this):t.visitChildren(this)}},FN=class extends ga{constructor(t,e){super(t,e)}NOT(){return this.getToken(cn.NOT,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}get ruleIndex(){return cn.RULE_declareNotNull}accept(t){return t.visitDeclareNotNull?t.visitDeclareNotNull(this):t.visitChildren(this)}},vN=class extends ga{constructor(t,e){super(t,e)}declareDefaultKey(){return this.getRuleContext(0,BN)}sqlExpression(){return this.getRuleContext(0,iC)}get ruleIndex(){return cn.RULE_declareDefaultValue}accept(t){return t.visitDeclareDefaultValue?t.visitDeclareDefaultValue(this):t.visitChildren(this)}},BN=class extends ga{constructor(t,e){super(t,e)}assignOperator(){return this.getRuleContext(0,yN)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_declareDefaultKey}accept(t){return t.visitDeclareDefaultKey?t.visitDeclareDefaultKey(this):t.visitChildren(this)}},yN=class extends ga{constructor(t,e){super(t,e)}EQUAL(){return this.getToken(cn.EQUAL,0)}COLON_EQUALS(){return this.getToken(cn.COLON_EQUALS,0)}get ruleIndex(){return cn.RULE_assignOperator}accept(t){return t.visitAssignOperator?t.visitAssignOperator(this):t.visitChildren(this)}},fN=class extends ga{constructor(t,e){super(t,e)}proceduralStatement(t){return void 0===t?this.getRuleContexts(YN):this.getRuleContext(t,YN)}get ruleIndex(){return cn.RULE_procedureSection}accept(t){return t.visitProcedureSection?t.visitProcedureSection(this):t.visitChildren(this)}},YN=class extends ga{constructor(t,e){super(t,e)}plsqlBlock(){return this.getRuleContext(0,IN)}SEMI(){return this.getToken(cn.SEMI,0)}statementReturn(){return this.getRuleContext(0,NL)}statementRaise(){return this.getRuleContext(0,CL)}statementAssign(){return this.getRuleContext(0,VN)}statementIf(){return this.getRuleContext(0,zN)}statementCase(){return this.getRuleContext(0,eL)}statementLoop(){return this.getRuleContext(0,cL)}statementWhile(){return this.getRuleContext(0,nL)}statementFor(){return this.getRuleContext(0,hL)}statementForeachA(){return this.getRuleContext(0,lL)}statementExit(){return this.getRuleContext(0,IL)}statementAssert(){return this.getRuleContext(0,UL)}statementExecSql(){return this.getRuleContext(0,pL)}statementDynExecute(){return this.getRuleContext(0,gL)}statementPerform(){return this.getRuleContext(0,wN)}statementCall(){return this.getRuleContext(0,bN)}statementGetDiagram(){return this.getRuleContext(0,XN)}statementOpen(){return this.getRuleContext(0,GL)}statementFetch(){return this.getRuleContext(0,vL)}statementMove(){return this.getRuleContext(0,YL)}statementClose(){return this.getRuleContext(0,wL)}statementNull(){return this.getRuleContext(0,bL)}statementCommit(){return this.getRuleContext(0,WL)}statementRollback(){return this.getRuleContext(0,VL)}statementSet(){return this.getRuleContext(0,KL)}get ruleIndex(){return cn.RULE_proceduralStatement}accept(t){return t.visitProceduralStatement?t.visitProceduralStatement(this):t.visitChildren(this)}},wN=class extends ga{constructor(t,e){super(t,e)}PERFORM(){return this.getToken(cn.PERFORM,0)}expressionUntilSemi(){return this.getRuleContext(0,nC)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementPerform}accept(t){return t.visitStatementPerform?t.visitStatementPerform(this):t.visitChildren(this)}},bN=class extends ga{constructor(t,e){super(t,e)}CALL(){return this.getToken(cn.CALL,0)}anyIdentifier(){return this.getRuleContext(0,aC)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}optionalExpressionList(){return this.getRuleContext(0,WN)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}SEMI(){return this.getToken(cn.SEMI,0)}DO(){return this.getToken(cn.DO,0)}get ruleIndex(){return cn.RULE_statementCall}accept(t){return t.visitStatementCall?t.visitStatementCall(this):t.visitChildren(this)}},WN=class extends ga{constructor(t,e){super(t,e)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_optionalExpressionList}accept(t){return t.visitOptionalExpressionList?t.visitOptionalExpressionList(this):t.visitChildren(this)}},VN=class extends ga{constructor(t,e){super(t,e)}assignVariable(){return this.getRuleContext(0,jN)}assignOperator(){return this.getRuleContext(0,yN)}sqlExpression(){return this.getRuleContext(0,iC)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementAssign}accept(t){return t.visitStatementAssign?t.visitStatementAssign(this):t.visitChildren(this)}},XN=class extends ga{constructor(t,e){super(t,e)}GET(){return this.getToken(cn.GET,0)}optionalGetDiagramArea(){return this.getRuleContext(0,KN)}DIAGNOSTICS(){return this.getToken(cn.DIAGNOSTICS,0)}getDiagramList(){return this.getRuleContext(0,QN)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementGetDiagram}accept(t){return t.visitStatementGetDiagram?t.visitStatementGetDiagram(this):t.visitChildren(this)}},KN=class extends ga{constructor(t,e){super(t,e)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}STACKED(){return this.getToken(cn.STACKED,0)}get ruleIndex(){return cn.RULE_optionalGetDiagramArea}accept(t){return t.visitOptionalGetDiagramArea?t.visitOptionalGetDiagramArea(this):t.visitChildren(this)}},QN=class extends ga{constructor(t,e){super(t,e)}getDiagramListItem(t){return void 0===t?this.getRuleContexts(JN):this.getRuleContext(t,JN)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_getDiagramList}accept(t){return t.visitGetDiagramList?t.visitGetDiagramList(this):t.visitChildren(this)}},JN=class extends ga{constructor(t,e){super(t,e)}getDiagramTarget(){return this.getRuleContext(0,qN)}assignOperator(){return this.getRuleContext(0,yN)}getDiagramItem(){return this.getRuleContext(0,ZN)}get ruleIndex(){return cn.RULE_getDiagramListItem}accept(t){return t.visitGetDiagramListItem?t.visitGetDiagramListItem(this):t.visitChildren(this)}},ZN=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_getDiagramItem}accept(t){return t.visitGetDiagramItem?t.visitGetDiagramItem(this):t.visitChildren(this)}},qN=class extends ga{constructor(t,e){super(t,e)}assignVariable(){return this.getRuleContext(0,jN)}get ruleIndex(){return cn.RULE_getDiagramTarget}accept(t){return t.visitGetDiagramTarget?t.visitGetDiagramTarget(this):t.visitChildren(this)}},jN=class extends ga{constructor(t,e){super(t,e)}anyName(){return this.getRuleContext(0,mo)}PARAM(){return this.getToken(cn.PARAM,0)}OPEN_BRACKET(t){return void 0===t?this.getTokens(cn.OPEN_BRACKET):this.getToken(cn.OPEN_BRACKET,t)}expressionUntilRightbracket(t){return void 0===t?this.getRuleContexts(hC):this.getRuleContext(t,hC)}CLOSE_BRACKET(t){return void 0===t?this.getTokens(cn.CLOSE_BRACKET):this.getToken(cn.CLOSE_BRACKET,t)}get ruleIndex(){return cn.RULE_assignVariable}accept(t){return t.visitAssignVariable?t.visitAssignVariable(this):t.visitChildren(this)}},zN=class extends ga{constructor(t,e){super(t,e)}IF_P(t){return void 0===t?this.getTokens(cn.IF_P):this.getToken(cn.IF_P,t)}expressionUntilThen(){return this.getRuleContext(0,cC)}THEN(){return this.getToken(cn.THEN,0)}procedureSection(){return this.getRuleContext(0,fN)}statementElsifs(){return this.getRuleContext(0,$N)}statementElse(){return this.getRuleContext(0,tL)}END_P(){return this.getToken(cn.END_P,0)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementIf}accept(t){return t.visitStatementIf?t.visitStatementIf(this):t.visitChildren(this)}},$N=class extends ga{constructor(t,e){super(t,e)}ELSIF(t){return void 0===t?this.getTokens(cn.ELSIF):this.getToken(cn.ELSIF,t)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}THEN(t){return void 0===t?this.getTokens(cn.THEN):this.getToken(cn.THEN,t)}procedureSection(t){return void 0===t?this.getRuleContexts(fN):this.getRuleContext(t,fN)}get ruleIndex(){return cn.RULE_statementElsifs}accept(t){return t.visitStatementElsifs?t.visitStatementElsifs(this):t.visitChildren(this)}},tL=class extends ga{constructor(t,e){super(t,e)}ELSE(){return this.getToken(cn.ELSE,0)}procedureSection(){return this.getRuleContext(0,fN)}get ruleIndex(){return cn.RULE_statementElse}accept(t){return t.visitStatementElse?t.visitStatementElse(this):t.visitChildren(this)}},eL=class extends ga{constructor(t,e){super(t,e)}CASE(t){return void 0===t?this.getTokens(cn.CASE):this.getToken(cn.CASE,t)}optionalExpressionUntilWhen(){return this.getRuleContext(0,sL)}caseWhenList(){return this.getRuleContext(0,aL)}optionalCaseElse(){return this.getRuleContext(0,iL)}END_P(){return this.getToken(cn.END_P,0)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementCase}accept(t){return t.visitStatementCase?t.visitStatementCase(this):t.visitChildren(this)}},sL=class extends ga{constructor(t,e){super(t,e)}sqlExpression(){return this.getRuleContext(0,iC)}get ruleIndex(){return cn.RULE_optionalExpressionUntilWhen}accept(t){return t.visitOptionalExpressionUntilWhen?t.visitOptionalExpressionUntilWhen(this):t.visitChildren(this)}},aL=class extends ga{constructor(t,e){super(t,e)}caseWhen(t){return void 0===t?this.getRuleContexts(rL):this.getRuleContext(t,rL)}get ruleIndex(){return cn.RULE_caseWhenList}accept(t){return t.visitCaseWhenList?t.visitCaseWhenList(this):t.visitChildren(this)}},rL=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}expressionList(){return this.getRuleContext(0,ZI)}THEN(){return this.getToken(cn.THEN,0)}procedureSection(){return this.getRuleContext(0,fN)}get ruleIndex(){return cn.RULE_caseWhen}accept(t){return t.visitCaseWhen?t.visitCaseWhen(this):t.visitChildren(this)}},iL=class extends ga{constructor(t,e){super(t,e)}ELSE(){return this.getToken(cn.ELSE,0)}procedureSection(){return this.getRuleContext(0,fN)}get ruleIndex(){return cn.RULE_optionalCaseElse}accept(t){return t.visitOptionalCaseElse?t.visitOptionalCaseElse(this):t.visitChildren(this)}},cL=class extends ga{constructor(t,e){super(t,e)}optionalLoopLabel(){return this.getRuleContext(0,tC)}loopBody(){return this.getRuleContext(0,DL)}get ruleIndex(){return cn.RULE_statementLoop}accept(t){return t.visitStatementLoop?t.visitStatementLoop(this):t.visitChildren(this)}},nL=class extends ga{constructor(t,e){super(t,e)}optionalLoopLabel(){return this.getRuleContext(0,tC)}WHILE(){return this.getToken(cn.WHILE,0)}expressionUntilLoop(){return this.getRuleContext(0,EC)}loopBody(){return this.getRuleContext(0,DL)}get ruleIndex(){return cn.RULE_statementWhile}accept(t){return t.visitStatementWhile?t.visitStatementWhile(this):t.visitChildren(this)}},hL=class extends ga{constructor(t,e){super(t,e)}optionalLoopLabel(){return this.getRuleContext(0,tC)}FOR(){return this.getToken(cn.FOR,0)}forControl(){return this.getRuleContext(0,EL)}loopBody(){return this.getRuleContext(0,DL)}get ruleIndex(){return cn.RULE_statementFor}accept(t){return t.visitStatementFor?t.visitStatementFor(this):t.visitChildren(this)}},EL=class extends ga{constructor(t,e){super(t,e)}forVariable(){return this.getRuleContext(0,SL)}IN_P(){return this.getToken(cn.IN_P,0)}cursorName(){return this.getRuleContext(0,al)}optionalCursorParameters(){return this.getRuleContext(0,oL)}selectStatement(){return this.getRuleContext(0,il)}explainStatement(){return this.getRuleContext(0,CS)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}optionalForUsingExpression(){return this.getRuleContext(0,TL)}optionalReverse(){return this.getRuleContext(0,RL)}DOT_DOT(){return this.getToken(cn.DOT_DOT,0)}optionalByExpression(){return this.getRuleContext(0,AL)}get ruleIndex(){return cn.RULE_forControl}accept(t){return t.visitForControl?t.visitForControl(this):t.visitChildren(this)}},TL=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_optionalForUsingExpression}accept(t){return t.visitOptionalForUsingExpression?t.visitOptionalForUsingExpression(this):t.visitChildren(this)}},oL=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_optionalCursorParameters}accept(t){return t.visitOptionalCursorParameters?t.visitOptionalCursorParameters(this):t.visitChildren(this)}},RL=class extends ga{constructor(t,e){super(t,e)}REVERSE(){return this.getToken(cn.REVERSE,0)}get ruleIndex(){return cn.RULE_optionalReverse}accept(t){return t.visitOptionalReverse?t.visitOptionalReverse(this):t.visitChildren(this)}},AL=class extends ga{constructor(t,e){super(t,e)}BY(){return this.getToken(cn.BY,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_optionalByExpression}accept(t){return t.visitOptionalByExpression?t.visitOptionalByExpression(this):t.visitChildren(this)}},SL=class extends ga{constructor(t,e){super(t,e)}anyNameList(){return this.getRuleContext(0,Uo)}get ruleIndex(){return cn.RULE_forVariable}accept(t){return t.visitForVariable?t.visitForVariable(this):t.visitChildren(this)}},lL=class extends ga{constructor(t,e){super(t,e)}optionalLoopLabel(){return this.getRuleContext(0,tC)}FOREACH(){return this.getToken(cn.FOREACH,0)}forVariable(){return this.getRuleContext(0,SL)}foreachSlice(){return this.getRuleContext(0,OL)}IN_P(){return this.getToken(cn.IN_P,0)}ARRAY(){return this.getToken(cn.ARRAY,0)}expression1(){return this.getRuleContext(0,wO)}loopBody(){return this.getRuleContext(0,DL)}get ruleIndex(){return cn.RULE_statementForeachA}accept(t){return t.visitStatementForeachA?t.visitStatementForeachA(this):t.visitChildren(this)}},OL=class extends ga{constructor(t,e){super(t,e)}SLICE(){return this.getToken(cn.SLICE,0)}iconst(){return this.getRuleContext(0,Ku)}get ruleIndex(){return cn.RULE_foreachSlice}accept(t){return t.visitForeachSlice?t.visitForeachSlice(this):t.visitChildren(this)}},IL=class extends ga{constructor(t,e){super(t,e)}exitType(){return this.getRuleContext(0,uL)}optionalLabel(){return this.getRuleContext(0,eC)}optionalExitCondition(){return this.getRuleContext(0,sC)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementExit}accept(t){return t.visitStatementExit?t.visitStatementExit(this):t.visitChildren(this)}},uL=class extends ga{constructor(t,e){super(t,e)}EXIT(){return this.getToken(cn.EXIT,0)}CONTINUE_P(){return this.getToken(cn.CONTINUE_P,0)}get ruleIndex(){return cn.RULE_exitType}accept(t){return t.visitExitType?t.visitExitType(this):t.visitChildren(this)}},NL=class extends ga{constructor(t,e){super(t,e)}RETURN(){return this.getToken(cn.RETURN,0)}SEMI(){return this.getToken(cn.SEMI,0)}NEXT(){return this.getToken(cn.NEXT,0)}sqlExpression(){return this.getRuleContext(0,iC)}QUERY(){return this.getToken(cn.QUERY,0)}optionalReturnResult(){return this.getRuleContext(0,LL)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}expression1(){return this.getRuleContext(0,wO)}optionalForUsingExpression(){return this.getRuleContext(0,TL)}selectStatement(){return this.getRuleContext(0,il)}get ruleIndex(){return cn.RULE_statementReturn}accept(t){return t.visitStatementReturn?t.visitStatementReturn(this):t.visitChildren(this)}},LL=class extends ga{constructor(t,e){super(t,e)}sqlExpression(){return this.getRuleContext(0,iC)}get ruleIndex(){return cn.RULE_optionalReturnResult}accept(t){return t.visitOptionalReturnResult?t.visitOptionalReturnResult(this):t.visitChildren(this)}},CL=class extends ga{constructor(t,e){super(t,e)}RAISE(){return this.getToken(cn.RAISE,0)}optionalStatementRaiseLevel(){return this.getRuleContext(0,_L)}sconst(){return this.getRuleContext(0,Qu)}optionalRaiseList(){return this.getRuleContext(0,PL)}optionalRaiseUsing(){return this.getRuleContext(0,ML)}SEMI(){return this.getToken(cn.SEMI,0)}identifier(){return this.getRuleContext(0,rN)}SQLSTATE(){return this.getToken(cn.SQLSTATE,0)}get ruleIndex(){return cn.RULE_statementRaise}accept(t){return t.visitStatementRaise?t.visitStatementRaise(this):t.visitChildren(this)}},_L=class extends ga{constructor(t,e){super(t,e)}DEBUG(){return this.getToken(cn.DEBUG,0)}LOG(){return this.getToken(cn.LOG,0)}INFO(){return this.getToken(cn.INFO,0)}NOTICE(){return this.getToken(cn.NOTICE,0)}WARNING(){return this.getToken(cn.WARNING,0)}EXCEPTION(){return this.getToken(cn.EXCEPTION,0)}get ruleIndex(){return cn.RULE_optionalStatementRaiseLevel}accept(t){return t.visitOptionalStatementRaiseLevel?t.visitOptionalStatementRaiseLevel(this):t.visitChildren(this)}},PL=class extends ga{constructor(t,e){super(t,e)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}get ruleIndex(){return cn.RULE_optionalRaiseList}accept(t){return t.visitOptionalRaiseList?t.visitOptionalRaiseList(this):t.visitChildren(this)}},ML=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}optionalRaiseUsingElement(t){return void 0===t?this.getRuleContexts(dL):this.getRuleContext(t,dL)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_optionalRaiseUsing}accept(t){return t.visitOptionalRaiseUsing?t.visitOptionalRaiseUsing(this):t.visitChildren(this)}},dL=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}EQUAL(){return this.getToken(cn.EQUAL,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_optionalRaiseUsingElement}accept(t){return t.visitOptionalRaiseUsingElement?t.visitOptionalRaiseUsingElement(this):t.visitChildren(this)}},UL=class extends ga{constructor(t,e){super(t,e)}ASSERT(){return this.getToken(cn.ASSERT,0)}sqlExpression(){return this.getRuleContext(0,iC)}optionalStatementAssertMessage(){return this.getRuleContext(0,mL)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementAssert}accept(t){return t.visitStatementAssert?t.visitStatementAssert(this):t.visitChildren(this)}},mL=class extends ga{constructor(t,e){super(t,e)}COMMA(){return this.getToken(cn.COMMA,0)}sqlExpression(){return this.getRuleContext(0,iC)}get ruleIndex(){return cn.RULE_optionalStatementAssertMessage}accept(t){return t.visitOptionalStatementAssertMessage?t.visitOptionalStatementAssertMessage(this):t.visitChildren(this)}},DL=class extends ga{constructor(t,e){super(t,e)}LOOP(t){return void 0===t?this.getTokens(cn.LOOP):this.getToken(cn.LOOP,t)}procedureSection(){return this.getRuleContext(0,fN)}END_P(){return this.getToken(cn.END_P,0)}optionalLabel(){return this.getRuleContext(0,eC)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_loopBody}accept(t){return t.visitLoopBody?t.visitLoopBody(this):t.visitChildren(this)}},pL=class extends ga{constructor(t,e){super(t,e)}makeExecuteSqlStatement(){return this.getRuleContext(0,TC)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementExecSql}accept(t){return t.visitStatementExecSql?t.visitStatementExecSql(this):t.visitChildren(this)}},gL=class extends ga{constructor(t,e){super(t,e)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}expression1(){return this.getRuleContext(0,wO)}SEMI(){return this.getToken(cn.SEMI,0)}optionalExecuteInto(){return this.getRuleContext(0,HL)}optionalExecuteUsing(){return this.getRuleContext(0,xL)}get ruleIndex(){return cn.RULE_statementDynExecute}accept(t){return t.visitStatementDynExecute?t.visitStatementDynExecute(this):t.visitChildren(this)}},xL=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}optionalExecuteUsingList(){return this.getRuleContext(0,kL)}get ruleIndex(){return cn.RULE_optionalExecuteUsing}accept(t){return t.visitOptionalExecuteUsing?t.visitOptionalExecuteUsing(this):t.visitChildren(this)}},kL=class extends ga{constructor(t,e){super(t,e)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_optionalExecuteUsingList}accept(t){return t.visitOptionalExecuteUsingList?t.visitOptionalExecuteUsingList(this):t.visitChildren(this)}},HL=class extends ga{constructor(t,e){super(t,e)}INTO(){return this.getToken(cn.INTO,0)}intoTarget(){return this.getRuleContext(0,BL)}STRICT_P(){return this.getToken(cn.STRICT_P,0)}get ruleIndex(){return cn.RULE_optionalExecuteInto}accept(t){return t.visitOptionalExecuteInto?t.visitOptionalExecuteInto(this):t.visitChildren(this)}},GL=class extends ga{constructor(t,e){super(t,e)}OPEN(){return this.getToken(cn.OPEN,0)}SEMI(){return this.getToken(cn.SEMI,0)}cursorVariable(){return this.getRuleContext(0,QL)}SCROLL(){return this.getToken(cn.SCROLL,0)}FOR(){return this.getToken(cn.FOR,0)}columnId(){return this.getRuleContext(0,$u)}selectStatement(){return this.getRuleContext(0,il)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}sqlExpression(){return this.getRuleContext(0,iC)}USING(){return this.getToken(cn.USING,0)}expressionList(){return this.getRuleContext(0,ZI)}NO(){return this.getToken(cn.NO,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}optionalOpenBoundListItem(t){return void 0===t?this.getRuleContexts(FL):this.getRuleContext(t,FL)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_statementOpen}accept(t){return t.visitStatementOpen?t.visitStatementOpen(this):t.visitChildren(this)}},FL=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}COLON_EQUALS(){return this.getToken(cn.COLON_EQUALS,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_optionalOpenBoundListItem}accept(t){return t.visitOptionalOpenBoundListItem?t.visitOptionalOpenBoundListItem(this):t.visitChildren(this)}},vL=class extends ga{constructor(t,e){super(t,e)}FETCH(){return this.getToken(cn.FETCH,0)}optionalCursorFrom(){return this.getRuleContext(0,yL)}cursorVariable(){return this.getRuleContext(0,QL)}INTO(){return this.getToken(cn.INTO,0)}intoTarget(){return this.getRuleContext(0,BL)}SEMI(){return this.getToken(cn.SEMI,0)}optionalFetchDirection(){return this.getRuleContext(0,fL)}get ruleIndex(){return cn.RULE_statementFetch}accept(t){return t.visitStatementFetch?t.visitStatementFetch(this):t.visitChildren(this)}},BL=class extends ga{constructor(t,e){super(t,e)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_intoTarget}accept(t){return t.visitIntoTarget?t.visitIntoTarget(this):t.visitChildren(this)}},yL=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(cn.FROM,0)}IN_P(){return this.getToken(cn.IN_P,0)}get ruleIndex(){return cn.RULE_optionalCursorFrom}accept(t){return t.visitOptionalCursorFrom?t.visitOptionalCursorFrom(this):t.visitChildren(this)}},fL=class extends ga{constructor(t,e){super(t,e)}NEXT(){return this.getToken(cn.NEXT,0)}PRIOR(){return this.getToken(cn.PRIOR,0)}FIRST_P(){return this.getToken(cn.FIRST_P,0)}LAST_P(){return this.getToken(cn.LAST_P,0)}ABSOLUTE_P(){return this.getToken(cn.ABSOLUTE_P,0)}expression1(){return this.getRuleContext(0,wO)}RELATIVE_P(){return this.getToken(cn.RELATIVE_P,0)}ALL(){return this.getToken(cn.ALL,0)}FORWARD(){return this.getToken(cn.FORWARD,0)}BACKWARD(){return this.getToken(cn.BACKWARD,0)}get ruleIndex(){return cn.RULE_optionalFetchDirection}accept(t){return t.visitOptionalFetchDirection?t.visitOptionalFetchDirection(this):t.visitChildren(this)}},YL=class extends ga{constructor(t,e){super(t,e)}MOVE(){return this.getToken(cn.MOVE,0)}optionalFetchDirection(){return this.getRuleContext(0,fL)}cursorVariable(){return this.getRuleContext(0,QL)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementMove}accept(t){return t.visitStatementMove?t.visitStatementMove(this):t.visitChildren(this)}},wL=class extends ga{constructor(t,e){super(t,e)}CLOSE(){return this.getToken(cn.CLOSE,0)}cursorVariable(){return this.getRuleContext(0,QL)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementClose}accept(t){return t.visitStatementClose?t.visitStatementClose(this):t.visitChildren(this)}},bL=class extends ga{constructor(t,e){super(t,e)}NULL_P(){return this.getToken(cn.NULL_P,0)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementNull}accept(t){return t.visitStatementNull?t.visitStatementNull(this):t.visitChildren(this)}},WL=class extends ga{constructor(t,e){super(t,e)}COMMIT(){return this.getToken(cn.COMMIT,0)}plsqlOptionalTransactionChain(){return this.getRuleContext(0,XL)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementCommit}accept(t){return t.visitStatementCommit?t.visitStatementCommit(this):t.visitChildren(this)}},VL=class extends ga{constructor(t,e){super(t,e)}ROLLBACK(){return this.getToken(cn.ROLLBACK,0)}plsqlOptionalTransactionChain(){return this.getRuleContext(0,XL)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementRollback}accept(t){return t.visitStatementRollback?t.visitStatementRollback(this):t.visitChildren(this)}},XL=class extends ga{constructor(t,e){super(t,e)}AND(){return this.getToken(cn.AND,0)}CHAIN(){return this.getToken(cn.CHAIN,0)}NO(){return this.getToken(cn.NO,0)}get ruleIndex(){return cn.RULE_plsqlOptionalTransactionChain}accept(t){return t.visitPlsqlOptionalTransactionChain?t.visitPlsqlOptionalTransactionChain(this):t.visitChildren(this)}},KL=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}anyName(){return this.getRuleContext(0,mo)}TO(){return this.getToken(cn.TO,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}SEMI(){return this.getToken(cn.SEMI,0)}RESET(){return this.getToken(cn.RESET,0)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_statementSet}accept(t){return t.visitStatementSet?t.visitStatementSet(this):t.visitChildren(this)}},QL=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}PARAM(){return this.getToken(cn.PARAM,0)}get ruleIndex(){return cn.RULE_cursorVariable}accept(t){return t.visitCursorVariable?t.visitCursorVariable(this):t.visitChildren(this)}},JL=class extends ga{constructor(t,e){super(t,e)}EXCEPTION(){return this.getToken(cn.EXCEPTION,0)}procedureExceptions(){return this.getRuleContext(0,ZL)}get ruleIndex(){return cn.RULE_exceptionSection}accept(t){return t.visitExceptionSection?t.visitExceptionSection(this):t.visitChildren(this)}},ZL=class extends ga{constructor(t,e){super(t,e)}procedureException(t){return void 0===t?this.getRuleContexts(qL):this.getRuleContext(t,qL)}get ruleIndex(){return cn.RULE_procedureExceptions}accept(t){return t.visitProcedureExceptions?t.visitProcedureExceptions(this):t.visitChildren(this)}},qL=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}procedureConditions(){return this.getRuleContext(0,jL)}THEN(){return this.getToken(cn.THEN,0)}procedureSection(){return this.getRuleContext(0,fN)}get ruleIndex(){return cn.RULE_procedureException}accept(t){return t.visitProcedureException?t.visitProcedureException(this):t.visitChildren(this)}},jL=class extends ga{constructor(t,e){super(t,e)}procedureCondition(t){return void 0===t?this.getRuleContexts(zL):this.getRuleContext(t,zL)}OR(t){return void 0===t?this.getTokens(cn.OR):this.getToken(cn.OR,t)}get ruleIndex(){return cn.RULE_procedureConditions}accept(t){return t.visitProcedureConditions?t.visitProcedureConditions(this):t.visitChildren(this)}},zL=class extends ga{constructor(t,e){super(t,e)}anyIdentifier(){return this.getRuleContext(0,aC)}SQLSTATE(){return this.getToken(cn.SQLSTATE,0)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_procedureCondition}accept(t){return t.visitProcedureCondition?t.visitProcedureCondition(this):t.visitChildren(this)}},$L=class extends ga{constructor(t,e){super(t,e)}labelDeclaration(){return this.getRuleContext(0,CN)}get ruleIndex(){return cn.RULE_optionalBlockLabel}accept(t){return t.visitOptionalBlockLabel?t.visitOptionalBlockLabel(this):t.visitChildren(this)}},tC=class extends ga{constructor(t,e){super(t,e)}labelDeclaration(){return this.getRuleContext(0,CN)}get ruleIndex(){return cn.RULE_optionalLoopLabel}accept(t){return t.visitOptionalLoopLabel?t.visitOptionalLoopLabel(this):t.visitChildren(this)}},eC=class extends ga{constructor(t,e){super(t,e)}anyIdentifier(){return this.getRuleContext(0,aC)}get ruleIndex(){return cn.RULE_optionalLabel}accept(t){return t.visitOptionalLabel?t.visitOptionalLabel(this):t.visitChildren(this)}},sC=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}expressionUntilSemi(){return this.getRuleContext(0,nC)}get ruleIndex(){return cn.RULE_optionalExitCondition}accept(t){return t.visitOptionalExitCondition?t.visitOptionalExitCondition(this):t.visitChildren(this)}},aC=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}get ruleIndex(){return cn.RULE_anyIdentifier}accept(t){return t.visitAnyIdentifier?t.visitAnyIdentifier(this):t.visitChildren(this)}},rC=class extends ga{constructor(t,e){super(t,e)}ABSOLUTE_P(){return this.getToken(cn.ABSOLUTE_P,0)}ALIAS(){return this.getToken(cn.ALIAS,0)}AND(){return this.getToken(cn.AND,0)}ARRAY(){return this.getToken(cn.ARRAY,0)}ASSERT(){return this.getToken(cn.ASSERT,0)}BACKWARD(){return this.getToken(cn.BACKWARD,0)}CALL(){return this.getToken(cn.CALL,0)}CHAIN(){return this.getToken(cn.CHAIN,0)}CLOSE(){return this.getToken(cn.CLOSE,0)}COLLATE(){return this.getToken(cn.COLLATE,0)}COLUMN(){return this.getToken(cn.COLUMN,0)}COMMIT(){return this.getToken(cn.COMMIT,0)}CONSTANT(){return this.getToken(cn.CONSTANT,0)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}CONTINUE_P(){return this.getToken(cn.CONTINUE_P,0)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}CURSOR(){return this.getToken(cn.CURSOR,0)}DEBUG(){return this.getToken(cn.DEBUG,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}DIAGNOSTICS(){return this.getToken(cn.DIAGNOSTICS,0)}DO(){return this.getToken(cn.DO,0)}DUMP(){return this.getToken(cn.DUMP,0)}ELSIF(){return this.getToken(cn.ELSIF,0)}ERROR(){return this.getToken(cn.ERROR,0)}EXCEPTION(){return this.getToken(cn.EXCEPTION,0)}EXIT(){return this.getToken(cn.EXIT,0)}FETCH(){return this.getToken(cn.FETCH,0)}FIRST_P(){return this.getToken(cn.FIRST_P,0)}FORWARD(){return this.getToken(cn.FORWARD,0)}GET(){return this.getToken(cn.GET,0)}INFO(){return this.getToken(cn.INFO,0)}INSERT(){return this.getToken(cn.INSERT,0)}IS(){return this.getToken(cn.IS,0)}LAST_P(){return this.getToken(cn.LAST_P,0)}MOVE(){return this.getToken(cn.MOVE,0)}NEXT(){return this.getToken(cn.NEXT,0)}NO(){return this.getToken(cn.NO,0)}NOTICE(){return this.getToken(cn.NOTICE,0)}OPEN(){return this.getToken(cn.OPEN,0)}OPTION(){return this.getToken(cn.OPTION,0)}PERFORM(){return this.getToken(cn.PERFORM,0)}PRINT_STRICT_PARAMS(){return this.getToken(cn.PRINT_STRICT_PARAMS,0)}PRIOR(){return this.getToken(cn.PRIOR,0)}QUERY(){return this.getToken(cn.QUERY,0)}RAISE(){return this.getToken(cn.RAISE,0)}RELATIVE_P(){return this.getToken(cn.RELATIVE_P,0)}RESET(){return this.getToken(cn.RESET,0)}RETURN(){return this.getToken(cn.RETURN,0)}ROLLBACK(){return this.getToken(cn.ROLLBACK,0)}ROWTYPE(){return this.getToken(cn.ROWTYPE,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}SCROLL(){return this.getToken(cn.SCROLL,0)}SET(){return this.getToken(cn.SET,0)}SLICE(){return this.getToken(cn.SLICE,0)}SQLSTATE(){return this.getToken(cn.SQLSTATE,0)}STACKED(){return this.getToken(cn.STACKED,0)}TABLE(){return this.getToken(cn.TABLE,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}USE_COLUMN(){return this.getToken(cn.USE_COLUMN,0)}USE_VARIABLE(){return this.getToken(cn.USE_VARIABLE,0)}VARIABLE_CONFLICT(){return this.getToken(cn.VARIABLE_CONFLICT,0)}WARNING(){return this.getToken(cn.WARNING,0)}OUTER_P(){return this.getToken(cn.OUTER_P,0)}get ruleIndex(){return cn.RULE_plsqlUnreservedKeyword}accept(t){return t.visitPlsqlUnreservedKeyword?t.visitPlsqlUnreservedKeyword(this):t.visitChildren(this)}},iC=class extends ga{constructor(t,e){super(t,e)}optionalTargetList(){return this.getRuleContext(0,Lu)}fromClause(){return this.getRuleContext(0,Vl)}whereClause(){return this.getRuleContext(0,EO)}groupClause(){return this.getRuleContext(0,Fl)}havingClause(){return this.getRuleContext(0,yl)}windowClause(){return this.getRuleContext(0,pI)}intoClause(){return this.getRuleContext(0,ll)}get ruleIndex(){return cn.RULE_sqlExpression}accept(t){return t.visitSqlExpression?t.visitSqlExpression(this):t.visitChildren(this)}},cC=class extends ga{constructor(t,e){super(t,e)}sqlExpression(){return this.getRuleContext(0,iC)}get ruleIndex(){return cn.RULE_expressionUntilThen}accept(t){return t.visitExpressionUntilThen?t.visitExpressionUntilThen(this):t.visitChildren(this)}},nC=class extends ga{constructor(t,e){super(t,e)}sqlExpression(){return this.getRuleContext(0,iC)}get ruleIndex(){return cn.RULE_expressionUntilSemi}accept(t){return t.visitExpressionUntilSemi?t.visitExpressionUntilSemi(this):t.visitChildren(this)}},hC=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_expressionUntilRightbracket}accept(t){return t.visitExpressionUntilRightbracket?t.visitExpressionUntilRightbracket(this):t.visitChildren(this)}},EC=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_expressionUntilLoop}accept(t){return t.visitExpressionUntilLoop?t.visitExpressionUntilLoop(this):t.visitChildren(this)}},TC=class extends ga{constructor(t,e){super(t,e)}statement(){return this.getRuleContext(0,Tn)}optionalReturningClauseInto(){return this.getRuleContext(0,oC)}get ruleIndex(){return cn.RULE_makeExecuteSqlStatement}accept(t){return t.visitMakeExecuteSqlStatement?t.visitMakeExecuteSqlStatement(this):t.visitChildren(this)}},oC=class extends ga{constructor(t,e){super(t,e)}INTO(){return this.getToken(cn.INTO,0)}intoTarget(){return this.getRuleContext(0,BL)}STRICT_P(){return this.getToken(cn.STRICT_P,0)}get ruleIndex(){return cn.RULE_optionalReturningClauseInto}accept(t){return t.visitOptionalReturningClauseInto?t.visitOptionalReturningClauseInto(this):t.visitChildren(this)}},RC=class extends ga{constructor(t,e){super(t,e)}ROLE(){return this.getToken(cn.ROLE,0)}USER(){return this.getToken(cn.USER,0)}GROUP_P(){return this.getToken(cn.GROUP_P,0)}get ruleIndex(){return cn.RULE_roleOrAliases}accept(t){return t.visitRoleOrAliases?t.visitRoleOrAliases(this):t.visitChildren(this)}},AC=class extends Ii{},SC=/[\w]$/,lC=/\r\n|\n|\r/g;function OC(t,e){var s,a;let r=t.column,i=t.column+((null===(s=t.text)||void 0===s?void 0:s.length)||0),c=t.line;return{startColumn:r,startLine:c,endColumn:i,endLine:t.type===e&&t.text?c+((null===(a=t.text.match(lC))||void 0===a?void 0:a.length)||0):c}}function IC(t,e,s,a){let r=e.column-1;for(let i=0;ie.line||h===e.line&&E>r)return a?i:i>0&&h===e.line&&n===r&&SC.test(t.get(i-1).text||"")?i-1:t.get(i).type===s?i+1:i}}function uC(t,e){return t===e.startTokenIndex}var NC="(\\s|\r\n|\n|\r)+",LC=new RegExp("^(".concat(NC,")?explain").concat(NC,"$")),CC=new RegExp("^(".concat(NC,")?\\S+").concat(NC));function _C(t,e){let s=function(t,e){let s=t.split(lC),a=t.match(lC),r="";a&&(r=a[0]);let i=0;return s.reduce(((t,s,a)=>(e.line-1===a&&(i=t.length?t.length+e.column:e.column-1),0===a?s:t+r+s)),""),i}(t,e),a=function(t,e){let s=t.slice(0,e-1),a=t.slice(e-1),r=s.lastIndexOf(";"),i=a.indexOf(";"),c=r>-1?r+1:0,n=i>-1?i+s.length:t.length;return{statement:t.slice(c,n),cursorIndex:e-c}}(t,s),r=a.statement.slice(0,a.cursorIndex).toLowerCase();return!(0!==s&&r.match(CC)&&!r.match(LC))}function PC(t,e,s){let a=new t(Oi.fromString(s)),r=new e(new $i(a));return r.removeErrorListeners(),r}function MC(t,e,s){let a=e;for(;a-1;){let s=t.get(r);if(s.type===e.SEMICOLON)return;if(s.type===a)return s;r--}}function mC(t,e,s,a,r,i,c,n,h){let E=IC(i,c,a.SPACE,!0);if(!E)throw new Error("Could not find actualCursorTokenIndex at Ln ".concat(c.line,", Col ").concat(c.column));let T={},o=function(t,e,s){let a=t.get(t.size-1).start,r=e,i=!1;for(;r>=0&&r=0;){let e=t.get(r);if(e.type===s.SEMICOLON)return;if(e.type===s.ALTER&&!UC(t,s,r,s.ALTER))return{start:e.start,end:a,type:"alter"};if(e.type===s.INSERT)return{start:e.start,end:a,type:"insert"};if(e.type===s.UPDATE)return{start:e.start,end:a,type:"update"};r--}}(i,E,a);if(o){let a=r(PC(t,e,n.slice(o.start,o.end)),o.type);if(s.visit(a),h&&o.joinTableQueryPosition){let a=r(PC(t,e,n.slice(o.joinTableQueryPosition.start,o.joinTableQueryPosition.end)),"from");s.visit(a)}if(o.selectTableQueryPosition){let a=r(PC(t,e,n.slice(o.selectTableQueryPosition.start,o.selectTableQueryPosition.end)),"select");s.visit(a)}let i=jc(s);i.length&&(T.tableContextSuggestion={tables:i});let c=function(t){return t.symbolTable.getNestedSymbolsOfTypeSync(zc).map((t=>{let{name:e}=t;return{name:e}}))}(s);c.length&&(T.suggestColumnAliases=c.map((t=>{let{name:e}=t;return{name:e}})))}return T}var DC={SPACE:cn.Whitespace,FROM:cn.FROM,OPENING_BRACKET:cn.OPEN_PAREN,CLOSING_BRACKET:cn.CLOSE_PAREN,ALTER:cn.ALTER,INSERT:cn.INSERT,UPDATE:cn.UPDATE,JOIN:cn.JOIN,SEMICOLON:cn.SEMI,SELECT:cn.SELECT};var pC=new Set(function(){let t=[],e=cn.Dollar,s=cn.Operator;for(let i=e;i<=s;i++)i!==cn.STAR&&t.push(i);let a=cn.ABS,r=cn.AfterEscapeStringConstantWithNewlineMode_Continued;for(let i=a;i<=r;i++)t.push(i);return t.push(cn.EOF),t}()),gC=new Set([cn.RULE_columnId,cn.RULE_functionName,cn.RULE_functionExpressionCommonSubexpr,cn.RULE_indexName,cn.RULE_triggerName,cn.RULE_constraintName,cn.RULE_sequenceName,cn.RULE_schemaName,cn.RULE_databaseName,cn.RULE_roleName,cn.RULE_identifier,cn.RULE_plsqlVariableName,cn.RULE_constTypeName,cn.RULE_columnNameKeyword,cn.RULE_unreservedKeyword,cn.RULE_plsqlUnreservedKeyword,cn.RULE_typeFunctionNameKeyword,cn.RULE_reservedKeyword]),xC=class extends AC{constructor(){super(),this.visitRelationExpression=t=>{try{var e;this.symbolTable.addNewSymbolOfType(qc,this.scope,(null===(e=t.qualifiedName())||void 0===e?void 0:e.getText())||"")}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitTableReference=t=>{try{var e,s,a,r,i;this.symbolTable.addNewSymbolOfType(qc,this.scope,(null===(e=t.relationExpression())||void 0===e||null===(s=e.qualifiedName())||void 0===s?void 0:s.getText())||"",null===(a=t.optionalAliasClause())||void 0===a||null===(r=a.tableAliasClause())||void 0===r||null===(i=r.tableAlias())||void 0===i?void 0:i.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitInsertTarget=t=>{try{var e,s;this.symbolTable.addNewSymbolOfType(qc,this.scope,(null===(e=t.qualifiedName())||void 0===e?void 0:e.getText())||"",null===(s=t.columnId())||void 0===s?void 0:s.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitTarget_label=t=>{try{var e,s;let a=(null===(e=t.columnLabel())||void 0===e?void 0:e.getText())||(null===(s=t.identifier())||void 0===s?void 0:s.getText());a&&this.symbolTable.addNewSymbolOfType(zc,this.scope,a)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitViewName=t=>{try{this.symbolTable.addNewSymbolOfType(qc,this.scope,t.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.symbolTable=new Zc("",{allowDuplicateSymbols:!0}),this.scope=this.symbolTable.addNewSymbolOfType(Bc,void 0)}};function kC(t,e){if(!e)return t.root();switch(e){case"from":return t.nonAnsiJoin();case"alter":return t.alterTableStatement();case"insert":return t.insertStatement();case"update":return t.updateStatement();case"select":return t.selectStatement()}}var HC={Lexer:an,Parser:cn,tokenDictionary:DC,ignoredTokens:pC,rulesToVisit:gC,getParseTree:kC,enrichAutocompleteResult:function(t,e,s,a,r,i){let{shouldSuggestColumns:c,shouldSuggestColumnAliases:n,shouldSuggestConstraints:h,...E}=function(t,e,s){let a,r=!1,i=!1,c=!1,n=!1,h=!1,E=!1,T=!1,o=!1,R=!1,A=!1,S=!1;for(let[l,O]of t)if(uC(e,O))switch(l){case cn.RULE_functionExpressionCommonSubexpr:case cn.RULE_functionName:i=!0,r=!0;break;case cn.RULE_columnId:{let t=O.ruleList.includes(cn.RULE_qualifiedName)&&(O.ruleList.includes(cn.RULE_insertTarget)||O.ruleList.includes(cn.RULE_relationExpression)),r=!O.ruleList.includes(cn.RULE_createStatement)&&(t||O.ruleList.includes(cn.RULE_functionTable));UC(s,DC,e,cn.VIEW)&&!UC(s,DC,e,cn.Identifier)&&(O.ruleList.includes(cn.RULE_alterTableStatement)||O.ruleList.includes(cn.RULE_refreshMaterializedViewStatement)||O.ruleList.includes(cn.RULE_renameStatement)||O.ruleList.includes(cn.RULE_alterObjectDependsStatement)||O.ruleList.includes(cn.RULE_alterObjectSchemaStatement)||O.ruleList.includes(cn.RULE_dropStatement))?a="VIEWS":UC(s,DC,e,cn.TABLE)&&(O.ruleList.includes(cn.RULE_dropStatement)||r)?a="TABLES":r?a="ALL":!O.ruleList.includes(cn.RULE_selectLimitValue)&&!O.ruleList.includes(cn.RULE_selectOffsetValue)&&(A=!0,(O.ruleList.includes(cn.RULE_groupByItem)||O.ruleList.includes(cn.RULE_sortBy))&&(S=!0));break}case cn.RULE_indexName:c=!0;break;case cn.RULE_triggerName:n=!0;break;case cn.RULE_constraintName:R=!0;break;case cn.RULE_sequenceName:h=!0;break;case cn.RULE_schemaName:E=!0;break;case cn.RULE_databaseName:T=!0;break;case cn.RULE_roleName:o=!0}return{suggestViewsOrTables:a,suggestAggregateFunctions:r,suggestFunctions:i,suggestIndexes:c,suggestTriggers:n,shouldSuggestConstraints:R,suggestSequences:h,suggestSchemas:E,suggestDatabases:T,suggestRoles:o,shouldSuggestColumns:A,shouldSuggestColumnAliases:S}}(e,a,s),T={...t,...E,suggestTemplates:_C(i,r)};if(c||h||n){let t=new xC,{tableContextSuggestion:e,suggestColumnAliases:a}=mC(an,cn,t,DC,kC,s,r,i,!0);c&&e&&(T.suggestColumns=e),h&&e&&(T.suggestConstraints=e),n&&a&&(T.suggestColumnAliases=a)}return T}},GC=(Ki=class t extends $r{constructor(e){super(e),this.interpreter=new hi(this,t._ATN,t.decisionsToDFA,new Si)}get grammarFileName(){return"MySqlLexer.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}get channelNames(){return t.channelNames}get modeNames(){return t.modeNames}static get _ATN(){return t.__ATN||(t.__ATN=(new fr).deserialize(t._serializedATN)),t.__ATN}get vocabulary(){return t.vocabulary}},Ki.SPACE=1,Ki.SPEC_MYSQL_COMMENT=2,Ki.COMMENT_INPUT=3,Ki.LINE_COMMENT=4,Ki.ADD=5,Ki.ALL=6,Ki.ALTER=7,Ki.ALWAYS=8,Ki.ANALYZE=9,Ki.AND=10,Ki.ARRAY=11,Ki.AS=12,Ki.ASC=13,Ki.ATTRIBUTE=14,Ki.BEFORE=15,Ki.BETWEEN=16,Ki.BOTH=17,Ki.BUCKETS=18,Ki.BY=19,Ki.CALL=20,Ki.CASCADE=21,Ki.CASE=22,Ki.CAST=23,Ki.CHANGE=24,Ki.CHARACTER=25,Ki.CHECK=26,Ki.COLLATE=27,Ki.COLUMN=28,Ki.CONDITION=29,Ki.CONSTRAINT=30,Ki.CONTINUE=31,Ki.CONVERT=32,Ki.CREATE=33,Ki.CROSS=34,Ki.CURRENT=35,Ki.CURRENT_ROLE=36,Ki.CURRENT_USER=37,Ki.CURSOR=38,Ki.DATABASE=39,Ki.DATABASES=40,Ki.DECLARE=41,Ki.DEFAULT=42,Ki.DELAYED=43,Ki.DELETE=44,Ki.DESC=45,Ki.DESCRIBE=46,Ki.DETERMINISTIC=47,Ki.DIAGNOSTICS=48,Ki.DISTINCT=49,Ki.DISTINCTROW=50,Ki.DROP=51,Ki.EACH=52,Ki.ELSE=53,Ki.ELSEIF=54,Ki.EMPTY=55,Ki.ENCLOSED=56,Ki.ENFORCED=57,Ki.ESCAPED=58,Ki.EXCEPT=59,Ki.EXISTS=60,Ki.EXIT=61,Ki.EXPLAIN=62,Ki.FALSE=63,Ki.FETCH=64,Ki.FOR=65,Ki.FORCE=66,Ki.FOREIGN=67,Ki.FROM=68,Ki.FULLTEXT=69,Ki.GENERATED=70,Ki.GET=71,Ki.GRANT=72,Ki.GROUP=73,Ki.HAVING=74,Ki.HIGH_PRIORITY=75,Ki.HISTOGRAM=76,Ki.IF=77,Ki.IGNORE=78,Ki.IGNORED=79,Ki.IN=80,Ki.INDEX=81,Ki.INFILE=82,Ki.INNER=83,Ki.INOUT=84,Ki.INSERT=85,Ki.INTERVAL=86,Ki.INTO=87,Ki.IS=88,Ki.ITERATE=89,Ki.JOIN=90,Ki.KEY=91,Ki.KEYS=92,Ki.KILL=93,Ki.LATERAL=94,Ki.LEADING=95,Ki.LEAVE=96,Ki.LEFT=97,Ki.LIKE=98,Ki.LIMIT=99,Ki.LINEAR=100,Ki.LINES=101,Ki.LOAD=102,Ki.LOCK=103,Ki.LOCKED=104,Ki.LOOP=105,Ki.LOW_PRIORITY=106,Ki.MASTER_BIND=107,Ki.MASTER_SSL_VERIFY_SERVER_CERT=108,Ki.MATCH=109,Ki.MAXVALUE=110,Ki.MINVALUE=111,Ki.MODIFIES=112,Ki.NATURAL=113,Ki.NOT=114,Ki.NO_WRITE_TO_BINLOG=115,Ki.NULL_LITERAL=116,Ki.NUMBER=117,Ki.ON=118,Ki.OPTIMIZE=119,Ki.OPTION=120,Ki.OPTIONAL=121,Ki.OPTIONALLY=122,Ki.OR=123,Ki.ORDER=124,Ki.OUT=125,Ki.OUTER=126,Ki.OUTFILE=127,Ki.OVER=128,Ki.PARTITION=129,Ki.PRIMARY=130,Ki.PROCEDURE=131,Ki.PURGE=132,Ki.RANGE=133,Ki.READ=134,Ki.READS=135,Ki.REFERENCES=136,Ki.REGEXP=137,Ki.RELEASE=138,Ki.RENAME=139,Ki.REPEAT=140,Ki.REPLACE=141,Ki.REQUIRE=142,Ki.RESIGNAL=143,Ki.RESTRICT=144,Ki.RETAIN=145,Ki.RETURN=146,Ki.REVOKE=147,Ki.RIGHT=148,Ki.RLIKE=149,Ki.SCHEMA=150,Ki.SCHEMAS=151,Ki.SELECT=152,Ki.SET=153,Ki.SEPARATOR=154,Ki.SHOW=155,Ki.SIGNAL=156,Ki.SKIP_=157,Ki.SKIP_QUERY_REWRITE=158,Ki.SPATIAL=159,Ki.SQL=160,Ki.SQLEXCEPTION=161,Ki.SQLSTATE=162,Ki.SQLWARNING=163,Ki.SQL_BIG_RESULT=164,Ki.SQL_CALC_FOUND_ROWS=165,Ki.SQL_SMALL_RESULT=166,Ki.SSL=167,Ki.STACKED=168,Ki.STARTING=169,Ki.STATEMENT=170,Ki.STRAIGHT_JOIN=171,Ki.TABLE=172,Ki.TERMINATED=173,Ki.THEN=174,Ki.TO=175,Ki.TRAILING=176,Ki.TRIGGER=177,Ki.TRUE=178,Ki.UNDO=179,Ki.UNION=180,Ki.UNIQUE=181,Ki.UNLOCK=182,Ki.UNSIGNED=183,Ki.UPDATE=184,Ki.USAGE=185,Ki.USE=186,Ki.USING=187,Ki.VALUES=188,Ki.WHEN=189,Ki.WHERE=190,Ki.WHILE=191,Ki.WITH=192,Ki.WRITE=193,Ki.XOR=194,Ki.ZEROFILL=195,Ki.TINYINT=196,Ki.SMALLINT=197,Ki.MEDIUMINT=198,Ki.MIDDLEINT=199,Ki.INT=200,Ki.INT1=201,Ki.INT2=202,Ki.INT3=203,Ki.INT4=204,Ki.INT8=205,Ki.INTEGER=206,Ki.BIGINT=207,Ki.REAL=208,Ki.DOUBLE=209,Ki.PRECISION=210,Ki.FLOAT=211,Ki.FLOAT4=212,Ki.FLOAT8=213,Ki.DECIMAL=214,Ki.DEC=215,Ki.NUMERIC=216,Ki.DATE=217,Ki.TIME=218,Ki.TIMESTAMP=219,Ki.DATETIME=220,Ki.YEAR=221,Ki.CHAR=222,Ki.VARCHAR=223,Ki.NVARCHAR=224,Ki.NATIONAL=225,Ki.BINARY=226,Ki.VARBINARY=227,Ki.TINYBLOB=228,Ki.BLOB=229,Ki.MEDIUMBLOB=230,Ki.LONG=231,Ki.LONGBLOB=232,Ki.TINYTEXT=233,Ki.TEXT=234,Ki.MEDIUMTEXT=235,Ki.LONGTEXT=236,Ki.ENUM=237,Ki.VARYING=238,Ki.SERIAL=239,Ki.YEAR_MONTH=240,Ki.DAY_HOUR=241,Ki.DAY_MINUTE=242,Ki.DAY_SECOND=243,Ki.HOUR_MINUTE=244,Ki.HOUR_SECOND=245,Ki.MINUTE_SECOND=246,Ki.SECOND_MICROSECOND=247,Ki.MINUTE_MICROSECOND=248,Ki.HOUR_MICROSECOND=249,Ki.DAY_MICROSECOND=250,Ki.JSON_ARRAY=251,Ki.JSON_ARRAYAGG=252,Ki.JSON_ARRAY_APPEND=253,Ki.JSON_ARRAY_INSERT=254,Ki.JSON_CONTAINS=255,Ki.JSON_CONTAINS_PATH=256,Ki.JSON_DEPTH=257,Ki.JSON_EXTRACT=258,Ki.JSON_INSERT=259,Ki.JSON_KEYS=260,Ki.JSON_LENGTH=261,Ki.JSON_MERGE=262,Ki.JSON_MERGE_PATCH=263,Ki.JSON_MERGE_PRESERVE=264,Ki.JSON_OBJECT=265,Ki.JSON_OBJECTAGG=266,Ki.JSON_OVERLAPS=267,Ki.JSON_PRETTY=268,Ki.JSON_QUOTE=269,Ki.JSON_REMOVE=270,Ki.JSON_REPLACE=271,Ki.JSON_SCHEMA_VALID=272,Ki.JSON_SCHEMA_VALIDATION_REPORT=273,Ki.JSON_SEARCH=274,Ki.JSON_SET=275,Ki.JSON_STORAGE_FREE=276,Ki.JSON_STORAGE_SIZE=277,Ki.JSON_TABLE=278,Ki.JSON_TYPE=279,Ki.JSON_UNQUOTE=280,Ki.JSON_VALID=281,Ki.JSON_VALUE=282,Ki.NESTED=283,Ki.ORDINALITY=284,Ki.PATH=285,Ki.AVG=286,Ki.BIT_AND=287,Ki.BIT_OR=288,Ki.BIT_XOR=289,Ki.COUNT=290,Ki.CUME_DIST=291,Ki.DENSE_RANK=292,Ki.FIRST_VALUE=293,Ki.GROUP_CONCAT=294,Ki.LAG=295,Ki.LAST_VALUE=296,Ki.LEAD=297,Ki.MAX=298,Ki.MIN=299,Ki.NTILE=300,Ki.NTH_VALUE=301,Ki.PERCENT_RANK=302,Ki.RANK=303,Ki.ROW_NUMBER=304,Ki.STD=305,Ki.STDDEV=306,Ki.STDDEV_POP=307,Ki.STDDEV_SAMP=308,Ki.SUM=309,Ki.VAR_POP=310,Ki.VAR_SAMP=311,Ki.VARIANCE=312,Ki.CURRENT_DATE=313,Ki.CURRENT_TIME=314,Ki.CURRENT_TIMESTAMP=315,Ki.LOCALTIME=316,Ki.CURDATE=317,Ki.CURTIME=318,Ki.DATE_ADD=319,Ki.DATE_SUB=320,Ki.EXTRACT=321,Ki.LOCALTIMESTAMP=322,Ki.NOW=323,Ki.POSITION=324,Ki.SUBSTR=325,Ki.SUBSTRING=326,Ki.SYSDATE=327,Ki.TRIM=328,Ki.UTC_DATE=329,Ki.UTC_TIME=330,Ki.UTC_TIMESTAMP=331,Ki.ACCOUNT=332,Ki.ACTION=333,Ki.AFTER=334,Ki.AGGREGATE=335,Ki.ALGORITHM=336,Ki.ANY=337,Ki.AT=338,Ki.AUTHORS=339,Ki.AUTOCOMMIT=340,Ki.AUTOEXTEND_SIZE=341,Ki.AUTO_INCREMENT=342,Ki.AVG_ROW_LENGTH=343,Ki.BEGIN=344,Ki.BINLOG=345,Ki.BIT=346,Ki.BLOCK=347,Ki.BOOL=348,Ki.BOOLEAN=349,Ki.BTREE=350,Ki.CACHE=351,Ki.CASCADED=352,Ki.CHAIN=353,Ki.CHANGED=354,Ki.CHANNEL=355,Ki.CHECKSUM=356,Ki.PAGE_CHECKSUM=357,Ki.CIPHER=358,Ki.CLASS_ORIGIN=359,Ki.CLIENT=360,Ki.CLOSE=361,Ki.CLUSTERING=362,Ki.COALESCE=363,Ki.CODE=364,Ki.COLUMNS=365,Ki.COLUMN_FORMAT=366,Ki.COLUMN_NAME=367,Ki.COMMENT=368,Ki.COMMIT=369,Ki.COMPACT=370,Ki.COMPLETION=371,Ki.COMPRESSED=372,Ki.COMPRESSION=373,Ki.CONCURRENT=374,Ki.CONNECT=375,Ki.CONNECTION=376,Ki.CONSISTENT=377,Ki.CONSTRAINT_CATALOG=378,Ki.CONSTRAINT_SCHEMA=379,Ki.CONSTRAINT_NAME=380,Ki.CONTAINS=381,Ki.CONTEXT=382,Ki.CONTRIBUTORS=383,Ki.COPY=384,Ki.CPU=385,Ki.CYCLE=386,Ki.CURSOR_NAME=387,Ki.DATA=388,Ki.DATAFILE=389,Ki.DEALLOCATE=390,Ki.DEFAULT_AUTH=391,Ki.DEFINER=392,Ki.DELAY_KEY_WRITE=393,Ki.DES_KEY_FILE=394,Ki.DIRECTORY=395,Ki.DISABLE=396,Ki.DISCARD=397,Ki.DISK=398,Ki.DO=399,Ki.DUMPFILE=400,Ki.DUPLICATE=401,Ki.DYNAMIC=402,Ki.ENABLE=403,Ki.ENCRYPTED=404,Ki.ENCRYPTION=405,Ki.ENCRYPTION_KEY_ID=406,Ki.END=407,Ki.ENDS=408,Ki.ENGINE=409,Ki.ENGINES=410,Ki.ERROR=411,Ki.ERRORS=412,Ki.ESCAPE=413,Ki.EVEN=414,Ki.EVENT=415,Ki.EVENTS=416,Ki.EVERY=417,Ki.EXCHANGE=418,Ki.EXCLUSIVE=419,Ki.EXPIRE=420,Ki.EXPORT=421,Ki.EXTENDED=422,Ki.EXTENT_SIZE=423,Ki.FAILED_LOGIN_ATTEMPTS=424,Ki.FAST=425,Ki.FAULTS=426,Ki.FIELDS=427,Ki.FILE_BLOCK_SIZE=428,Ki.FILTER=429,Ki.FIRST=430,Ki.FIXED=431,Ki.FLUSH=432,Ki.FOLLOWING=433,Ki.FOLLOWS=434,Ki.FOUND=435,Ki.FULL=436,Ki.FUNCTION=437,Ki.GENERAL=438,Ki.GLOBAL=439,Ki.GRANTS=440,Ki.GROUP_REPLICATION=441,Ki.HANDLER=442,Ki.HASH=443,Ki.HELP=444,Ki.HISTORY=445,Ki.HOST=446,Ki.HOSTS=447,Ki.IDENTIFIED=448,Ki.IGNORE_SERVER_IDS=449,Ki.IMPORT=450,Ki.INCREMENT=451,Ki.INDEXES=452,Ki.INITIAL_SIZE=453,Ki.INPLACE=454,Ki.INSERT_METHOD=455,Ki.INSTALL=456,Ki.INSTANCE=457,Ki.INSTANT=458,Ki.INVISIBLE=459,Ki.INVOKER=460,Ki.IO=461,Ki.IO_THREAD=462,Ki.IPC=463,Ki.ISOLATION=464,Ki.ISSUER=465,Ki.JSON=466,Ki.KEY_BLOCK_SIZE=467,Ki.LANGUAGE=468,Ki.LAST=469,Ki.LEAVES=470,Ki.LESS=471,Ki.LEVEL=472,Ki.LIST=473,Ki.LOCAL=474,Ki.LOGFILE=475,Ki.LOGS=476,Ki.MASTER=477,Ki.MASTER_AUTO_POSITION=478,Ki.MASTER_CONNECT_RETRY=479,Ki.MASTER_DELAY=480,Ki.MASTER_HEARTBEAT_PERIOD=481,Ki.MASTER_HOST=482,Ki.MASTER_LOG_FILE=483,Ki.MASTER_LOG_POS=484,Ki.MASTER_PASSWORD=485,Ki.MASTER_PORT=486,Ki.MASTER_RETRY_COUNT=487,Ki.MASTER_SSL=488,Ki.MASTER_SSL_CA=489,Ki.MASTER_SSL_CAPATH=490,Ki.MASTER_SSL_CERT=491,Ki.MASTER_SSL_CIPHER=492,Ki.MASTER_SSL_CRL=493,Ki.MASTER_SSL_CRLPATH=494,Ki.MASTER_SSL_KEY=495,Ki.MASTER_TLS_VERSION=496,Ki.MASTER_USER=497,Ki.MAX_CONNECTIONS_PER_HOUR=498,Ki.MAX_QUERIES_PER_HOUR=499,Ki.MAX_ROWS=500,Ki.MAX_SIZE=501,Ki.MAX_UPDATES_PER_HOUR=502,Ki.MAX_USER_CONNECTIONS=503,Ki.MEDIUM=504,Ki.MEMBER=505,Ki.MERGE=506,Ki.MESSAGE_TEXT=507,Ki.MID=508,Ki.MIGRATE=509,Ki.MIN_ROWS=510,Ki.MODE=511,Ki.MODIFY=512,Ki.MUTEX=513,Ki.MYSQL=514,Ki.MYSQL_ERRNO=515,Ki.NAME=516,Ki.NAMES=517,Ki.NCHAR=518,Ki.NEVER=519,Ki.NEXT=520,Ki.NO=521,Ki.NOCACHE=522,Ki.NOCOPY=523,Ki.NOCYCLE=524,Ki.NOMAXVALUE=525,Ki.NOMINVALUE=526,Ki.NOWAIT=527,Ki.NODEGROUP=528,Ki.NONE=529,Ki.ODBC=530,Ki.OFFLINE=531,Ki.OFFSET=532,Ki.OF=533,Ki.OJ=534,Ki.OLD_PASSWORD=535,Ki.ONE=536,Ki.ONLINE=537,Ki.ONLY=538,Ki.OPEN=539,Ki.OPTIMIZER_COSTS=540,Ki.OPTIONS=541,Ki.OWNER=542,Ki.PACK_KEYS=543,Ki.PAGE=544,Ki.PAGE_COMPRESSED=545,Ki.PAGE_COMPRESSION_LEVEL=546,Ki.PARSER=547,Ki.PARTIAL=548,Ki.PARTITIONING=549,Ki.PARTITIONS=550,Ki.PASSWORD=551,Ki.PASSWORD_LOCK_TIME=552,Ki.PHASE=553,Ki.PLUGIN=554,Ki.PLUGIN_DIR=555,Ki.PLUGINS=556,Ki.PORT=557,Ki.PRECEDES=558,Ki.PRECEDING=559,Ki.PREPARE=560,Ki.PRESERVE=561,Ki.PREV=562,Ki.PROCESSLIST=563,Ki.PROFILE=564,Ki.PROFILES=565,Ki.PROXY=566,Ki.QUERY=567,Ki.QUICK=568,Ki.REBUILD=569,Ki.RECOVER=570,Ki.RECURSIVE=571,Ki.REDO_BUFFER_SIZE=572,Ki.REDUNDANT=573,Ki.RELAY=574,Ki.RELAY_LOG_FILE=575,Ki.RELAY_LOG_POS=576,Ki.RELAYLOG=577,Ki.REMOVE=578,Ki.REORGANIZE=579,Ki.REPAIR=580,Ki.REPLICATE_DO_DB=581,Ki.REPLICATE_DO_TABLE=582,Ki.REPLICATE_IGNORE_DB=583,Ki.REPLICATE_IGNORE_TABLE=584,Ki.REPLICATE_REWRITE_DB=585,Ki.REPLICATE_WILD_DO_TABLE=586,Ki.REPLICATE_WILD_IGNORE_TABLE=587,Ki.REPLICATION=588,Ki.RESET=589,Ki.RESTART=590,Ki.RESUME=591,Ki.RETURNED_SQLSTATE=592,Ki.RETURNING=593,Ki.RETURNS=594,Ki.REUSE=595,Ki.ROLE=596,Ki.ROLLBACK=597,Ki.ROLLUP=598,Ki.ROTATE=599,Ki.ROW=600,Ki.ROWS=601,Ki.ROW_FORMAT=602,Ki.RTREE=603,Ki.SAVEPOINT=604,Ki.SCHEDULE=605,Ki.SECURITY=606,Ki.SEQUENCE=607,Ki.SERVER=608,Ki.SESSION=609,Ki.SHARE=610,Ki.SHARED=611,Ki.SIGNED=612,Ki.SIMPLE=613,Ki.SLAVE=614,Ki.SLOW=615,Ki.SNAPSHOT=616,Ki.SOCKET=617,Ki.SOME=618,Ki.SONAME=619,Ki.SOUNDS=620,Ki.SOURCE=621,Ki.SQL_AFTER_GTIDS=622,Ki.SQL_AFTER_MTS_GAPS=623,Ki.SQL_BEFORE_GTIDS=624,Ki.SQL_BUFFER_RESULT=625,Ki.SQL_CACHE=626,Ki.SQL_NO_CACHE=627,Ki.SQL_THREAD=628,Ki.START=629,Ki.STARTS=630,Ki.STATS_AUTO_RECALC=631,Ki.STATS_PERSISTENT=632,Ki.STATS_SAMPLE_PAGES=633,Ki.STATUS=634,Ki.STOP=635,Ki.STORAGE=636,Ki.STORED=637,Ki.STRING=638,Ki.SUBCLASS_ORIGIN=639,Ki.SUBJECT=640,Ki.SUBPARTITION=641,Ki.SUBPARTITIONS=642,Ki.SUSPEND=643,Ki.SWAPS=644,Ki.SWITCHES=645,Ki.TABLE_NAME=646,Ki.TABLESPACE=647,Ki.TABLE_TYPE=648,Ki.TEMPORARY=649,Ki.TEMPTABLE=650,Ki.THAN=651,Ki.TRADITIONAL=652,Ki.TRANSACTION=653,Ki.TRANSACTIONAL=654,Ki.TRIGGERS=655,Ki.TRUNCATE=656,Ki.UNBOUNDED=657,Ki.UNDEFINED=658,Ki.UNDOFILE=659,Ki.UNDO_BUFFER_SIZE=660,Ki.UNINSTALL=661,Ki.UNKNOWN=662,Ki.UNTIL=663,Ki.UPGRADE=664,Ki.USER=665,Ki.USE_FRM=666,Ki.USER_RESOURCES=667,Ki.VALIDATION=668,Ki.VALUE=669,Ki.VARIABLES=670,Ki.VIEW=671,Ki.VIRTUAL=672,Ki.VISIBLE=673,Ki.WAIT=674,Ki.WARNINGS=675,Ki.WINDOW=676,Ki.WITHOUT=677,Ki.WORK=678,Ki.WRAPPER=679,Ki.X509=680,Ki.XA=681,Ki.XML=682,Ki.YES=683,Ki.EUR=684,Ki.USA=685,Ki.JIS=686,Ki.ISO=687,Ki.INTERNAL=688,Ki.QUARTER=689,Ki.MONTH=690,Ki.DAY=691,Ki.HOUR=692,Ki.MINUTE=693,Ki.WEEK=694,Ki.SECOND=695,Ki.MICROSECOND=696,Ki.ADMIN=697,Ki.APPLICATION_PASSWORD_ADMIN=698,Ki.AUDIT_ABORT_EXEMPT=699,Ki.AUDIT_ADMIN=700,Ki.AUTHENTICATION_POLICY_ADMIN=701,Ki.BACKUP_ADMIN=702,Ki.BINLOG_ADMIN=703,Ki.BINLOG_ENCRYPTION_ADMIN=704,Ki.CLONE_ADMIN=705,Ki.CONNECTION_ADMIN=706,Ki.ENCRYPTION_KEY_ADMIN=707,Ki.EXECUTE=708,Ki.FILE=709,Ki.FIREWALL_ADMIN=710,Ki.FIREWALL_EXEMPT=711,Ki.FIREWALL_USER=712,Ki.FLUSH_OPTIMIZER_COSTS=713,Ki.FLUSH_STATUS=714,Ki.FLUSH_TABLES=715,Ki.FLUSH_USER_RESOURCES=716,Ki.GROUP_REPLICATION_ADMIN=717,Ki.INNODB_REDO_LOG_ARCHIVE=718,Ki.INNODB_REDO_LOG_ENABLE=719,Ki.INVOKE=720,Ki.LAMBDA=721,Ki.NDB_STORED_USER=722,Ki.PASSWORDLESS_USER_ADMIN=723,Ki.PERSIST_RO_VARIABLES_ADMIN=724,Ki.PRIVILEGES=725,Ki.PROCESS=726,Ki.RELOAD=727,Ki.REPLICATION_APPLIER=728,Ki.REPLICATION_SLAVE_ADMIN=729,Ki.RESOURCE_GROUP_ADMIN=730,Ki.RESOURCE_GROUP_USER=731,Ki.ROLE_ADMIN=732,Ki.ROUTINE=733,Ki.S3=734,Ki.SERVICE_CONNECTION_ADMIN=735,Ki.SESSION_VARIABLES_ADMIN=736,Ki.SET_USER_ID=737,Ki.SHOW_ROUTINE=738,Ki.SHUTDOWN=739,Ki.SUPER=740,Ki.SYSTEM_VARIABLES_ADMIN=741,Ki.TABLES=742,Ki.TABLE_ENCRYPTION_ADMIN=743,Ki.VERSION_TOKEN_ADMIN=744,Ki.XA_RECOVER_ADMIN=745,Ki.ARMSCII8=746,Ki.ASCII=747,Ki.BIG5=748,Ki.CP1250=749,Ki.CP1251=750,Ki.CP1256=751,Ki.CP1257=752,Ki.CP850=753,Ki.CP852=754,Ki.CP866=755,Ki.CP932=756,Ki.DEC8=757,Ki.EUCJPMS=758,Ki.EUCKR=759,Ki.GB18030=760,Ki.GB2312=761,Ki.GBK=762,Ki.GEOSTD8=763,Ki.GREEK=764,Ki.HEBREW=765,Ki.HP8=766,Ki.KEYBCS2=767,Ki.KOI8R=768,Ki.KOI8U=769,Ki.LATIN1=770,Ki.LATIN2=771,Ki.LATIN5=772,Ki.LATIN7=773,Ki.MACCE=774,Ki.MACROMAN=775,Ki.SJIS=776,Ki.SWE7=777,Ki.TIS620=778,Ki.UCS2=779,Ki.UJIS=780,Ki.UTF16=781,Ki.UTF16LE=782,Ki.UTF32=783,Ki.UTF8=784,Ki.UTF8MB3=785,Ki.UTF8MB4=786,Ki.ARCHIVE=787,Ki.BLACKHOLE=788,Ki.CSV=789,Ki.FEDERATED=790,Ki.INNODB=791,Ki.MEMORY=792,Ki.MRG_MYISAM=793,Ki.MYISAM=794,Ki.NDB=795,Ki.NDBCLUSTER=796,Ki.PERFORMANCE_SCHEMA=797,Ki.TOKUDB=798,Ki.REPEATABLE=799,Ki.COMMITTED=800,Ki.UNCOMMITTED=801,Ki.SERIALIZABLE=802,Ki.GEOMETRYCOLLECTION=803,Ki.GEOMCOLLECTION=804,Ki.GEOMETRY=805,Ki.LINESTRING=806,Ki.MULTILINESTRING=807,Ki.MULTIPOINT=808,Ki.MULTIPOLYGON=809,Ki.POINT=810,Ki.POLYGON=811,Ki.ABS=812,Ki.ACOS=813,Ki.ADDDATE=814,Ki.ADDTIME=815,Ki.AES_DECRYPT=816,Ki.AES_ENCRYPT=817,Ki.AREA=818,Ki.ASBINARY=819,Ki.ASIN=820,Ki.ASTEXT=821,Ki.ASWKB=822,Ki.ASWKT=823,Ki.ASYMMETRIC_DECRYPT=824,Ki.ASYMMETRIC_DERIVE=825,Ki.ASYMMETRIC_ENCRYPT=826,Ki.ASYMMETRIC_SIGN=827,Ki.ASYMMETRIC_VERIFY=828,Ki.ATAN=829,Ki.ATAN2=830,Ki.BENCHMARK=831,Ki.BIN=832,Ki.BIT_COUNT=833,Ki.BIT_LENGTH=834,Ki.BUFFER=835,Ki.CATALOG_NAME=836,Ki.CEIL=837,Ki.CEILING=838,Ki.CENTROID=839,Ki.CHARACTER_LENGTH=840,Ki.CHARSET=841,Ki.CHAR_LENGTH=842,Ki.COERCIBILITY=843,Ki.COLLATION=844,Ki.COMPRESS=845,Ki.CONCAT=846,Ki.CONCAT_WS=847,Ki.CONNECTION_ID=848,Ki.CONV=849,Ki.CONVERT_TZ=850,Ki.COS=851,Ki.COT=852,Ki.CRC32=853,Ki.CREATE_ASYMMETRIC_PRIV_KEY=854,Ki.CREATE_ASYMMETRIC_PUB_KEY=855,Ki.CREATE_DH_PARAMETERS=856,Ki.CREATE_DIGEST=857,Ki.CROSSES=858,Ki.DATEDIFF=859,Ki.DATE_FORMAT=860,Ki.DAYNAME=861,Ki.DAYOFMONTH=862,Ki.DAYOFWEEK=863,Ki.DAYOFYEAR=864,Ki.DECODE=865,Ki.DEGREES=866,Ki.DES_DECRYPT=867,Ki.DES_ENCRYPT=868,Ki.DIMENSION=869,Ki.DISJOINT=870,Ki.ELT=871,Ki.ENCODE=872,Ki.ENCRYPT=873,Ki.ENDPOINT=874,Ki.ENGINE_ATTRIBUTE=875,Ki.ENVELOPE=876,Ki.EQUALS=877,Ki.EXP=878,Ki.EXPORT_SET=879,Ki.EXTERIORRING=880,Ki.EXTRACTVALUE=881,Ki.FIELD=882,Ki.FIND_IN_SET=883,Ki.FLOOR=884,Ki.FORMAT=885,Ki.FOUND_ROWS=886,Ki.FROM_BASE64=887,Ki.FROM_DAYS=888,Ki.FROM_UNIXTIME=889,Ki.GEOMCOLLFROMTEXT=890,Ki.GEOMCOLLFROMWKB=891,Ki.GEOMETRYCOLLECTIONFROMTEXT=892,Ki.GEOMETRYCOLLECTIONFROMWKB=893,Ki.GEOMETRYFROMTEXT=894,Ki.GEOMETRYFROMWKB=895,Ki.GEOMETRYN=896,Ki.GEOMETRYTYPE=897,Ki.GEOMFROMTEXT=898,Ki.GEOMFROMWKB=899,Ki.GET_FORMAT=900,Ki.GET_LOCK=901,Ki.GLENGTH=902,Ki.GREATEST=903,Ki.GTID_SUBSET=904,Ki.GTID_SUBTRACT=905,Ki.HEX=906,Ki.IFNULL=907,Ki.INET6_ATON=908,Ki.INET6_NTOA=909,Ki.INET_ATON=910,Ki.INET_NTOA=911,Ki.INSTR=912,Ki.INTERIORRINGN=913,Ki.INTERSECTS=914,Ki.ISCLOSED=915,Ki.ISEMPTY=916,Ki.ISNULL=917,Ki.ISSIMPLE=918,Ki.IS_FREE_LOCK=919,Ki.IS_IPV4=920,Ki.IS_IPV4_COMPAT=921,Ki.IS_IPV4_MAPPED=922,Ki.IS_IPV6=923,Ki.IS_USED_LOCK=924,Ki.LAST_INSERT_ID=925,Ki.LCASE=926,Ki.LEAST=927,Ki.LENGTH=928,Ki.LINEFROMTEXT=929,Ki.LINEFROMWKB=930,Ki.LINESTRINGFROMTEXT=931,Ki.LINESTRINGFROMWKB=932,Ki.LN=933,Ki.LOAD_FILE=934,Ki.LOCATE=935,Ki.LOG=936,Ki.LOG10=937,Ki.LOG2=938,Ki.LOWER=939,Ki.LPAD=940,Ki.LTRIM=941,Ki.MAKEDATE=942,Ki.MAKETIME=943,Ki.MAKE_SET=944,Ki.MASTER_POS_WAIT=945,Ki.MBRCONTAINS=946,Ki.MBRDISJOINT=947,Ki.MBREQUAL=948,Ki.MBRINTERSECTS=949,Ki.MBROVERLAPS=950,Ki.MBRTOUCHES=951,Ki.MBRWITHIN=952,Ki.MD5=953,Ki.MLINEFROMTEXT=954,Ki.MLINEFROMWKB=955,Ki.MONTHNAME=956,Ki.MPOINTFROMTEXT=957,Ki.MPOINTFROMWKB=958,Ki.MPOLYFROMTEXT=959,Ki.MPOLYFROMWKB=960,Ki.MULTILINESTRINGFROMTEXT=961,Ki.MULTILINESTRINGFROMWKB=962,Ki.MULTIPOINTFROMTEXT=963,Ki.MULTIPOINTFROMWKB=964,Ki.MULTIPOLYGONFROMTEXT=965,Ki.MULTIPOLYGONFROMWKB=966,Ki.NAME_CONST=967,Ki.NULLIF=968,Ki.NUMGEOMETRIES=969,Ki.NUMINTERIORRINGS=970,Ki.NUMPOINTS=971,Ki.OCT=972,Ki.OCTET_LENGTH=973,Ki.ORD=974,Ki.OVERLAPS=975,Ki.PERIOD_ADD=976,Ki.PERIOD_DIFF=977,Ki.PI=978,Ki.POINTFROMTEXT=979,Ki.POINTFROMWKB=980,Ki.POINTN=981,Ki.POLYFROMTEXT=982,Ki.POLYFROMWKB=983,Ki.POLYGONFROMTEXT=984,Ki.POLYGONFROMWKB=985,Ki.POW=986,Ki.POWER=987,Ki.QUOTE=988,Ki.RADIANS=989,Ki.RAND=990,Ki.RANDOM=991,Ki.RANDOM_BYTES=992,Ki.RELEASE_LOCK=993,Ki.REVERSE=994,Ki.ROUND=995,Ki.ROW_COUNT=996,Ki.RPAD=997,Ki.RTRIM=998,Ki.SEC_TO_TIME=999,Ki.SECONDARY_ENGINE_ATTRIBUTE=1e3,Ki.SESSION_USER=1001,Ki.SHA=1002,Ki.SHA1=1003,Ki.SHA2=1004,Ki.SCHEMA_NAME=1005,Ki.SIGN=1006,Ki.SIN=1007,Ki.SLEEP=1008,Ki.SOUNDEX=1009,Ki.SQL_THREAD_WAIT_AFTER_GTIDS=1010,Ki.SQRT=1011,Ki.SRID=1012,Ki.STARTPOINT=1013,Ki.STRCMP=1014,Ki.STR_TO_DATE=1015,Ki.ST_AREA=1016,Ki.ST_ASBINARY=1017,Ki.ST_ASTEXT=1018,Ki.ST_ASWKB=1019,Ki.ST_ASWKT=1020,Ki.ST_BUFFER=1021,Ki.ST_CENTROID=1022,Ki.ST_CONTAINS=1023,Ki.ST_CROSSES=1024,Ki.ST_DIFFERENCE=1025,Ki.ST_DIMENSION=1026,Ki.ST_DISJOINT=1027,Ki.ST_DISTANCE=1028,Ki.ST_ENDPOINT=1029,Ki.ST_ENVELOPE=1030,Ki.ST_EQUALS=1031,Ki.ST_EXTERIORRING=1032,Ki.ST_GEOMCOLLFROMTEXT=1033,Ki.ST_GEOMCOLLFROMTXT=1034,Ki.ST_GEOMCOLLFROMWKB=1035,Ki.ST_GEOMETRYCOLLECTIONFROMTEXT=1036,Ki.ST_GEOMETRYCOLLECTIONFROMWKB=1037,Ki.ST_GEOMETRYFROMTEXT=1038,Ki.ST_GEOMETRYFROMWKB=1039,Ki.ST_GEOMETRYN=1040,Ki.ST_GEOMETRYTYPE=1041,Ki.ST_GEOMFROMTEXT=1042,Ki.ST_GEOMFROMWKB=1043,Ki.ST_INTERIORRINGN=1044,Ki.ST_INTERSECTION=1045,Ki.ST_INTERSECTS=1046,Ki.ST_ISCLOSED=1047,Ki.ST_ISEMPTY=1048,Ki.ST_ISSIMPLE=1049,Ki.ST_LINEFROMTEXT=1050,Ki.ST_LINEFROMWKB=1051,Ki.ST_LINESTRINGFROMTEXT=1052,Ki.ST_LINESTRINGFROMWKB=1053,Ki.ST_NUMGEOMETRIES=1054,Ki.ST_NUMINTERIORRING=1055,Ki.ST_NUMINTERIORRINGS=1056,Ki.ST_NUMPOINTS=1057,Ki.ST_OVERLAPS=1058,Ki.ST_POINTFROMTEXT=1059,Ki.ST_POINTFROMWKB=1060,Ki.ST_POINTN=1061,Ki.ST_POLYFROMTEXT=1062,Ki.ST_POLYFROMWKB=1063,Ki.ST_POLYGONFROMTEXT=1064,Ki.ST_POLYGONFROMWKB=1065,Ki.ST_SRID=1066,Ki.ST_STARTPOINT=1067,Ki.ST_SYMDIFFERENCE=1068,Ki.ST_TOUCHES=1069,Ki.ST_UNION=1070,Ki.ST_WITHIN=1071,Ki.ST_X=1072,Ki.ST_Y=1073,Ki.SUBDATE=1074,Ki.SUBSTRING_INDEX=1075,Ki.SUBTIME=1076,Ki.SYSTEM_USER=1077,Ki.TAN=1078,Ki.TIMEDIFF=1079,Ki.TIMESTAMPADD=1080,Ki.TIMESTAMPDIFF=1081,Ki.TIME_FORMAT=1082,Ki.TIME_TO_SEC=1083,Ki.TOUCHES=1084,Ki.TO_BASE64=1085,Ki.TO_DAYS=1086,Ki.TO_SECONDS=1087,Ki.TP_CONNECTION_ADMIN=1088,Ki.UCASE=1089,Ki.UNCOMPRESS=1090,Ki.UNCOMPRESSED_LENGTH=1091,Ki.UNHEX=1092,Ki.UNIX_TIMESTAMP=1093,Ki.UPDATEXML=1094,Ki.UPPER=1095,Ki.UUID=1096,Ki.UUID_SHORT=1097,Ki.VALIDATE_PASSWORD_STRENGTH=1098,Ki.VERSION=1099,Ki.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS=1100,Ki.WEEKDAY=1101,Ki.WEEKOFYEAR=1102,Ki.WEIGHT_STRING=1103,Ki.WITHIN=1104,Ki.YEARWEEK=1105,Ki.Y_FUNCTION=1106,Ki.X_FUNCTION=1107,Ki.VAR_ASSIGN=1108,Ki.PLUS_ASSIGN=1109,Ki.MINUS_ASSIGN=1110,Ki.MULT_ASSIGN=1111,Ki.DIV_ASSIGN=1112,Ki.MOD_ASSIGN=1113,Ki.AND_ASSIGN=1114,Ki.XOR_ASSIGN=1115,Ki.OR_ASSIGN=1116,Ki.STAR=1117,Ki.DIVIDE=1118,Ki.MODULE=1119,Ki.PLUS=1120,Ki.MINUS=1121,Ki.DIV=1122,Ki.MOD=1123,Ki.EQUAL_SYMBOL=1124,Ki.GREATER_SYMBOL=1125,Ki.LESS_SYMBOL=1126,Ki.EXCLAMATION_SYMBOL=1127,Ki.BIT_NOT_OP=1128,Ki.BIT_OR_OP=1129,Ki.BIT_AND_OP=1130,Ki.BIT_XOR_OP=1131,Ki.DOT=1132,Ki.LR_BRACKET=1133,Ki.RR_BRACKET=1134,Ki.COMMA=1135,Ki.SEMI=1136,Ki.AT_SIGN=1137,Ki.ZERO_DECIMAL=1138,Ki.ONE_DECIMAL=1139,Ki.TWO_DECIMAL=1140,Ki.SINGLE_QUOTE_SYMB=1141,Ki.DOUBLE_QUOTE_SYMB=1142,Ki.REVERSE_QUOTE_SYMB=1143,Ki.COLON_SYMB=1144,Ki.CHARSET_REVERSE_QOUTE_STRING=1145,Ki.FILESIZE_LITERAL=1146,Ki.START_NATIONAL_STRING_LITERAL=1147,Ki.STRING_LITERAL=1148,Ki.DECIMAL_LITERAL=1149,Ki.HEXADECIMAL_LITERAL=1150,Ki.REAL_LITERAL=1151,Ki.NULL_SPEC_LITERAL=1152,Ki.BIT_STRING=1153,Ki.STRING_CHARSET_NAME=1154,Ki.DOT_ID=1155,Ki.ID=1156,Ki.REVERSE_QUOTE_ID=1157,Ki.HOST_IP_ADDRESS=1158,Ki.LOCAL_ID=1159,Ki.GLOBAL_ID=1160,Ki.ERROR_RECONGNIGION=1161,Ki.channelNames=["DEFAULT_TOKEN_CHANNEL","HIDDEN","MYSQLCOMMENT","ERRORCHANNEL"],Ki.literalNames=[null,null,null,null,null,"'ADD'","'ALL'","'ALTER'","'ALWAYS'","'ANALYZE'","'AND'","'ARRAY'","'AS'","'ASC'","'ATTRIBUTE'","'BEFORE'","'BETWEEN'","'BOTH'","'BUCKETS'","'BY'","'CALL'","'CASCADE'","'CASE'","'CAST'","'CHANGE'","'CHARACTER'","'CHECK'","'COLLATE'","'COLUMN'","'CONDITION'","'CONSTRAINT'","'CONTINUE'","'CONVERT'","'CREATE'","'CROSS'","'CURRENT'","'CURRENT_ROLE'","'CURRENT_USER'","'CURSOR'","'DATABASE'","'DATABASES'","'DECLARE'","'DEFAULT'","'DELAYED'","'DELETE'","'DESC'","'DESCRIBE'","'DETERMINISTIC'","'DIAGNOSTICS'","'DISTINCT'","'DISTINCTROW'","'DROP'","'EACH'","'ELSE'","'ELSEIF'","'EMPTY'","'ENCLOSED'","'ENFORCED'","'ESCAPED'","'EXCEPT'","'EXISTS'","'EXIT'","'EXPLAIN'","'FALSE'","'FETCH'","'FOR'","'FORCE'","'FOREIGN'","'FROM'","'FULLTEXT'","'GENERATED'","'GET'","'GRANT'","'GROUP'","'HAVING'","'HIGH_PRIORITY'","'HISTOGRAM'","'IF'","'IGNORE'","'IGNORED'","'IN'","'INDEX'","'INFILE'","'INNER'","'INOUT'","'INSERT'","'INTERVAL'","'INTO'","'IS'","'ITERATE'","'JOIN'","'KEY'","'KEYS'","'KILL'","'LATERAL'","'LEADING'","'LEAVE'","'LEFT'","'LIKE'","'LIMIT'","'LINEAR'","'LINES'","'LOAD'","'LOCK'","'LOCKED'","'LOOP'","'LOW_PRIORITY'","'MASTER_BIND'","'MASTER_SSL_VERIFY_SERVER_CERT'","'MATCH'","'MAXVALUE'","'MINVALUE'","'MODIFIES'","'NATURAL'","'NOT'","'NO_WRITE_TO_BINLOG'","'NULL'","'NUMBER'","'ON'","'OPTIMIZE'","'OPTION'","'OPTIONAL'","'OPTIONALLY'","'OR'","'ORDER'","'OUT'","'OUTER'","'OUTFILE'","'OVER'","'PARTITION'","'PRIMARY'","'PROCEDURE'","'PURGE'","'RANGE'","'READ'","'READS'","'REFERENCES'","'REGEXP'","'RELEASE'","'RENAME'","'REPEAT'","'REPLACE'","'REQUIRE'","'RESIGNAL'","'RESTRICT'","'RETAIN'","'RETURN'","'REVOKE'","'RIGHT'","'RLIKE'","'SCHEMA'","'SCHEMAS'","'SELECT'","'SET'","'SEPARATOR'","'SHOW'","'SIGNAL'","'SKIP'","'SKIP_QUERY_REWRITE'","'SPATIAL'","'SQL'","'SQLEXCEPTION'","'SQLSTATE'","'SQLWARNING'","'SQL_BIG_RESULT'","'SQL_CALC_FOUND_ROWS'","'SQL_SMALL_RESULT'","'SSL'","'STACKED'","'STARTING'","'STATEMENT'","'STRAIGHT_JOIN'","'TABLE'","'TERMINATED'","'THEN'","'TO'","'TRAILING'","'TRIGGER'","'TRUE'","'UNDO'","'UNION'","'UNIQUE'","'UNLOCK'","'UNSIGNED'","'UPDATE'","'USAGE'","'USE'","'USING'","'VALUES'","'WHEN'","'WHERE'","'WHILE'","'WITH'","'WRITE'","'XOR'","'ZEROFILL'","'TINYINT'","'SMALLINT'","'MEDIUMINT'","'MIDDLEINT'","'INT'","'INT1'","'INT2'","'INT3'","'INT4'","'INT8'","'INTEGER'","'BIGINT'","'REAL'","'DOUBLE'","'PRECISION'","'FLOAT'","'FLOAT4'","'FLOAT8'","'DECIMAL'","'DEC'","'NUMERIC'","'DATE'","'TIME'","'TIMESTAMP'","'DATETIME'","'YEAR'","'CHAR'","'VARCHAR'","'NVARCHAR'","'NATIONAL'","'BINARY'","'VARBINARY'","'TINYBLOB'","'BLOB'","'MEDIUMBLOB'","'LONG'","'LONGBLOB'","'TINYTEXT'","'TEXT'","'MEDIUMTEXT'","'LONGTEXT'","'ENUM'","'VARYING'","'SERIAL'","'YEAR_MONTH'","'DAY_HOUR'","'DAY_MINUTE'","'DAY_SECOND'","'HOUR_MINUTE'","'HOUR_SECOND'","'MINUTE_SECOND'","'SECOND_MICROSECOND'","'MINUTE_MICROSECOND'","'HOUR_MICROSECOND'","'DAY_MICROSECOND'","'JSON_ARRAY'","'JSON_ARRAYAGG'","'JSON_ARRAY_APPEND'","'JSON_ARRAY_INSERT'","'JSON_CONTAINS'","'JSON_CONTAINS_PATH'","'JSON_DEPTH'","'JSON_EXTRACT'","'JSON_INSERT'","'JSON_KEYS'","'JSON_LENGTH'","'JSON_MERGE'","'JSON_MERGE_PATCH'","'JSON_MERGE_PRESERVE'","'JSON_OBJECT'","'JSON_OBJECTAGG'","'JSON_OVERLAPS'","'JSON_PRETTY'","'JSON_QUOTE'","'JSON_REMOVE'","'JSON_REPLACE'","'JSON_SCHEMA_VALID'","'JSON_SCHEMA_VALIDATION_REPORT'","'JSON_SEARCH'","'JSON_SET'","'JSON_STORAGE_FREE'","'JSON_STORAGE_SIZE'","'JSON_TABLE'","'JSON_TYPE'","'JSON_UNQUOTE'","'JSON_VALID'","'JSON_VALUE'","'NESTED'","'ORDINALITY'","'PATH'","'AVG'","'BIT_AND'","'BIT_OR'","'BIT_XOR'","'COUNT'","'CUME_DIST'","'DENSE_RANK'","'FIRST_VALUE'","'GROUP_CONCAT'","'LAG'","'LAST_VALUE'","'LEAD'","'MAX'","'MIN'","'NTILE'","'NTH_VALUE'","'PERCENT_RANK'","'RANK'","'ROW_NUMBER'","'STD'","'STDDEV'","'STDDEV_POP'","'STDDEV_SAMP'","'SUM'","'VAR_POP'","'VAR_SAMP'","'VARIANCE'","'CURRENT_DATE'","'CURRENT_TIME'","'CURRENT_TIMESTAMP'","'LOCALTIME'","'CURDATE'","'CURTIME'","'DATE_ADD'","'DATE_SUB'","'EXTRACT'","'LOCALTIMESTAMP'","'NOW'","'POSITION'","'SUBSTR'","'SUBSTRING'","'SYSDATE'","'TRIM'","'UTC_DATE'","'UTC_TIME'","'UTC_TIMESTAMP'","'ACCOUNT'","'ACTION'","'AFTER'","'AGGREGATE'","'ALGORITHM'","'ANY'","'AT'","'AUTHORS'","'AUTOCOMMIT'","'AUTOEXTEND_SIZE'","'AUTO_INCREMENT'","'AVG_ROW_LENGTH'","'BEGIN'","'BINLOG'","'BIT'","'BLOCK'","'BOOL'","'BOOLEAN'","'BTREE'","'CACHE'","'CASCADED'","'CHAIN'","'CHANGED'","'CHANNEL'","'CHECKSUM'","'PAGE_CHECKSUM'","'CIPHER'","'CLASS_ORIGIN'","'CLIENT'","'CLOSE'","'CLUSTERING'","'COALESCE'","'CODE'","'COLUMNS'","'COLUMN_FORMAT'","'COLUMN_NAME'","'COMMENT'","'COMMIT'","'COMPACT'","'COMPLETION'","'COMPRESSED'","'COMPRESSION'","'CONCURRENT'","'CONNECT'","'CONNECTION'","'CONSISTENT'","'CONSTRAINT_CATALOG'","'CONSTRAINT_SCHEMA'","'CONSTRAINT_NAME'","'CONTAINS'","'CONTEXT'","'CONTRIBUTORS'","'COPY'","'CPU'","'CYCLE'","'CURSOR_NAME'","'DATA'","'DATAFILE'","'DEALLOCATE'","'DEFAULT_AUTH'","'DEFINER'","'DELAY_KEY_WRITE'","'DES_KEY_FILE'","'DIRECTORY'","'DISABLE'","'DISCARD'","'DISK'","'DO'","'DUMPFILE'","'DUPLICATE'","'DYNAMIC'","'ENABLE'","'ENCRYPTED'","'ENCRYPTION'","'ENCRYPTION_KEY_ID'","'END'","'ENDS'","'ENGINE'","'ENGINES'","'ERROR'","'ERRORS'","'ESCAPE'","'EVEN'","'EVENT'","'EVENTS'","'EVERY'","'EXCHANGE'","'EXCLUSIVE'","'EXPIRE'","'EXPORT'","'EXTENDED'","'EXTENT_SIZE'","'FAILED_LOGIN_ATTEMPTS'","'FAST'","'FAULTS'","'FIELDS'","'FILE_BLOCK_SIZE'","'FILTER'","'FIRST'","'FIXED'","'FLUSH'","'FOLLOWING'","'FOLLOWS'","'FOUND'","'FULL'","'FUNCTION'","'GENERAL'","'GLOBAL'","'GRANTS'","'GROUP_REPLICATION'","'HANDLER'","'HASH'","'HELP'","'HISTORY'","'HOST'","'HOSTS'","'IDENTIFIED'","'IGNORE_SERVER_IDS'","'IMPORT'","'INCREMENT'","'INDEXES'","'INITIAL_SIZE'","'INPLACE'","'INSERT_METHOD'","'INSTALL'","'INSTANCE'","'INSTANT'","'INVISIBLE'","'INVOKER'","'IO'","'IO_THREAD'","'IPC'","'ISOLATION'","'ISSUER'","'JSON'","'KEY_BLOCK_SIZE'","'LANGUAGE'","'LAST'","'LEAVES'","'LESS'","'LEVEL'","'LIST'","'LOCAL'","'LOGFILE'","'LOGS'","'MASTER'","'MASTER_AUTO_POSITION'","'MASTER_CONNECT_RETRY'","'MASTER_DELAY'","'MASTER_HEARTBEAT_PERIOD'","'MASTER_HOST'","'MASTER_LOG_FILE'","'MASTER_LOG_POS'","'MASTER_PASSWORD'","'MASTER_PORT'","'MASTER_RETRY_COUNT'","'MASTER_SSL'","'MASTER_SSL_CA'","'MASTER_SSL_CAPATH'","'MASTER_SSL_CERT'","'MASTER_SSL_CIPHER'","'MASTER_SSL_CRL'","'MASTER_SSL_CRLPATH'","'MASTER_SSL_KEY'","'MASTER_TLS_VERSION'","'MASTER_USER'","'MAX_CONNECTIONS_PER_HOUR'","'MAX_QUERIES_PER_HOUR'","'MAX_ROWS'","'MAX_SIZE'","'MAX_UPDATES_PER_HOUR'","'MAX_USER_CONNECTIONS'","'MEDIUM'","'MEMBER'","'MERGE'","'MESSAGE_TEXT'","'MID'","'MIGRATE'","'MIN_ROWS'","'MODE'","'MODIFY'","'MUTEX'","'MYSQL'","'MYSQL_ERRNO'","'NAME'","'NAMES'","'NCHAR'","'NEVER'","'NEXT'","'NO'","'NOCACHE'","'NOCOPY'","'NOCYCLE'","'NOMAXVALUE'","'NOMINVALUE'","'NOWAIT'","'NODEGROUP'","'NONE'","'ODBC'","'OFFLINE'","'OFFSET'","'OF'","'OJ'","'OLD_PASSWORD'","'ONE'","'ONLINE'","'ONLY'","'OPEN'","'OPTIMIZER_COSTS'","'OPTIONS'","'OWNER'","'PACK_KEYS'","'PAGE'","'PAGE_COMPRESSED'","'PAGE_COMPRESSION_LEVEL'","'PARSER'","'PARTIAL'","'PARTITIONING'","'PARTITIONS'","'PASSWORD'","'PASSWORD_LOCK_TIME'","'PHASE'","'PLUGIN'","'PLUGIN_DIR'","'PLUGINS'","'PORT'","'PRECEDES'","'PRECEDING'","'PREPARE'","'PRESERVE'","'PREV'","'PROCESSLIST'","'PROFILE'","'PROFILES'","'PROXY'","'QUERY'","'QUICK'","'REBUILD'","'RECOVER'","'RECURSIVE'","'REDO_BUFFER_SIZE'","'REDUNDANT'","'RELAY'","'RELAY_LOG_FILE'","'RELAY_LOG_POS'","'RELAYLOG'","'REMOVE'","'REORGANIZE'","'REPAIR'","'REPLICATE_DO_DB'","'REPLICATE_DO_TABLE'","'REPLICATE_IGNORE_DB'","'REPLICATE_IGNORE_TABLE'","'REPLICATE_REWRITE_DB'","'REPLICATE_WILD_DO_TABLE'","'REPLICATE_WILD_IGNORE_TABLE'","'REPLICATION'","'RESET'","'RESTART'","'RESUME'","'RETURNED_SQLSTATE'","'RETURNING'","'RETURNS'","'REUSE'","'ROLE'","'ROLLBACK'","'ROLLUP'","'ROTATE'","'ROW'","'ROWS'","'ROW_FORMAT'","'RTREE'","'SAVEPOINT'","'SCHEDULE'","'SECURITY'","'SEQUENCE'","'SERVER'","'SESSION'","'SHARE'","'SHARED'","'SIGNED'","'SIMPLE'","'SLAVE'","'SLOW'","'SNAPSHOT'","'SOCKET'","'SOME'","'SONAME'","'SOUNDS'","'SOURCE'","'SQL_AFTER_GTIDS'","'SQL_AFTER_MTS_GAPS'","'SQL_BEFORE_GTIDS'","'SQL_BUFFER_RESULT'","'SQL_CACHE'","'SQL_NO_CACHE'","'SQL_THREAD'","'START'","'STARTS'","'STATS_AUTO_RECALC'","'STATS_PERSISTENT'","'STATS_SAMPLE_PAGES'","'STATUS'","'STOP'","'STORAGE'","'STORED'","'STRING'","'SUBCLASS_ORIGIN'","'SUBJECT'","'SUBPARTITION'","'SUBPARTITIONS'","'SUSPEND'","'SWAPS'","'SWITCHES'","'TABLE_NAME'","'TABLESPACE'","'TABLE_TYPE'","'TEMPORARY'","'TEMPTABLE'","'THAN'","'TRADITIONAL'","'TRANSACTION'","'TRANSACTIONAL'","'TRIGGERS'","'TRUNCATE'","'UNBOUNDED'","'UNDEFINED'","'UNDOFILE'","'UNDO_BUFFER_SIZE'","'UNINSTALL'","'UNKNOWN'","'UNTIL'","'UPGRADE'","'USER'","'USE_FRM'","'USER_RESOURCES'","'VALIDATION'","'VALUE'","'VARIABLES'","'VIEW'","'VIRTUAL'","'VISIBLE'","'WAIT'","'WARNINGS'","'WINDOW'","'WITHOUT'","'WORK'","'WRAPPER'","'X509'","'XA'","'XML'","'YES'","'EUR'","'USA'","'JIS'","'ISO'","'INTERNAL'","'QUARTER'","'MONTH'","'DAY'","'HOUR'","'MINUTE'","'WEEK'","'SECOND'","'MICROSECOND'","'ADMIN'","'APPLICATION_PASSWORD_ADMIN'","'AUDIT_ABORT_EXEMPT'","'AUDIT_ADMIN'","'AUTHENTICATION_POLICY_ADMIN'","'BACKUP_ADMIN'","'BINLOG_ADMIN'","'BINLOG_ENCRYPTION_ADMIN'","'CLONE_ADMIN'","'CONNECTION_ADMIN'","'ENCRYPTION_KEY_ADMIN'","'EXECUTE'","'FILE'","'FIREWALL_ADMIN'","'FIREWALL_EXEMPT'","'FIREWALL_USER'","'FLUSH_OPTIMIZER_COSTS'","'FLUSH_STATUS'","'FLUSH_TABLES'","'FLUSH_USER_RESOURCES'","'GROUP_REPLICATION_ADMIN'","'INNODB_REDO_LOG_ARCHIVE'","'INNODB_REDO_LOG_ENABLE'","'INVOKE'","'LAMBDA'","'NDB_STORED_USER'","'PASSWORDLESS_USER_ADMIN'","'PERSIST_RO_VARIABLES_ADMIN'","'PRIVILEGES'","'PROCESS'","'RELOAD'","'REPLICATION_APPLIER'","'REPLICATION_SLAVE_ADMIN'","'RESOURCE_GROUP_ADMIN'","'RESOURCE_GROUP_USER'","'ROLE_ADMIN'","'ROUTINE'","'S3'","'SERVICE_CONNECTION_ADMIN'",null,"'SET_USER_ID'","'SHOW_ROUTINE'","'SHUTDOWN'","'SUPER'","'SYSTEM_VARIABLES_ADMIN'","'TABLES'","'TABLE_ENCRYPTION_ADMIN'","'VERSION_TOKEN_ADMIN'","'XA_RECOVER_ADMIN'","'ARMSCII8'","'ASCII'","'BIG5'","'CP1250'","'CP1251'","'CP1256'","'CP1257'","'CP850'","'CP852'","'CP866'","'CP932'","'DEC8'","'EUCJPMS'","'EUCKR'","'GB18030'","'GB2312'","'GBK'","'GEOSTD8'","'GREEK'","'HEBREW'","'HP8'","'KEYBCS2'","'KOI8R'","'KOI8U'","'LATIN1'","'LATIN2'","'LATIN5'","'LATIN7'","'MACCE'","'MACROMAN'","'SJIS'","'SWE7'","'TIS620'","'UCS2'","'UJIS'","'UTF16'","'UTF16LE'","'UTF32'","'UTF8'","'UTF8MB3'","'UTF8MB4'","'ARCHIVE'","'BLACKHOLE'","'CSV'","'FEDERATED'","'INNODB'","'MEMORY'","'MRG_MYISAM'","'MYISAM'","'NDB'","'NDBCLUSTER'","'PERFORMANCE_SCHEMA'","'TOKUDB'","'REPEATABLE'","'COMMITTED'","'UNCOMMITTED'","'SERIALIZABLE'","'GEOMETRYCOLLECTION'","'GEOMCOLLECTION'","'GEOMETRY'","'LINESTRING'","'MULTILINESTRING'","'MULTIPOINT'","'MULTIPOLYGON'","'POINT'","'POLYGON'","'ABS'","'ACOS'","'ADDDATE'","'ADDTIME'","'AES_DECRYPT'","'AES_ENCRYPT'","'AREA'","'ASBINARY'","'ASIN'","'ASTEXT'","'ASWKB'","'ASWKT'","'ASYMMETRIC_DECRYPT'","'ASYMMETRIC_DERIVE'","'ASYMMETRIC_ENCRYPT'","'ASYMMETRIC_SIGN'","'ASYMMETRIC_VERIFY'","'ATAN'","'ATAN2'","'BENCHMARK'","'BIN'","'BIT_COUNT'","'BIT_LENGTH'","'BUFFER'","'CATALOG_NAME'","'CEIL'","'CEILING'","'CENTROID'","'CHARACTER_LENGTH'","'CHARSET'","'CHAR_LENGTH'","'COERCIBILITY'","'COLLATION'","'COMPRESS'","'CONCAT'","'CONCAT_WS'","'CONNECTION_ID'","'CONV'","'CONVERT_TZ'","'COS'","'COT'","'CRC32'","'CREATE_ASYMMETRIC_PRIV_KEY'","'CREATE_ASYMMETRIC_PUB_KEY'","'CREATE_DH_PARAMETERS'","'CREATE_DIGEST'","'CROSSES'","'DATEDIFF'","'DATE_FORMAT'","'DAYNAME'","'DAYOFMONTH'","'DAYOFWEEK'","'DAYOFYEAR'","'DECODE'","'DEGREES'","'DES_DECRYPT'","'DES_ENCRYPT'","'DIMENSION'","'DISJOINT'","'ELT'","'ENCODE'","'ENCRYPT'","'ENDPOINT'","'ENGINE_ATTRIBUTE'","'ENVELOPE'","'EQUALS'","'EXP'","'EXPORT_SET'","'EXTERIORRING'","'EXTRACTVALUE'","'FIELD'","'FIND_IN_SET'","'FLOOR'","'FORMAT'","'FOUND_ROWS'","'FROM_BASE64'","'FROM_DAYS'","'FROM_UNIXTIME'","'GEOMCOLLFROMTEXT'","'GEOMCOLLFROMWKB'","'GEOMETRYCOLLECTIONFROMTEXT'","'GEOMETRYCOLLECTIONFROMWKB'","'GEOMETRYFROMTEXT'","'GEOMETRYFROMWKB'","'GEOMETRYN'","'GEOMETRYTYPE'","'GEOMFROMTEXT'","'GEOMFROMWKB'","'GET_FORMAT'","'GET_LOCK'","'GLENGTH'","'GREATEST'","'GTID_SUBSET'","'GTID_SUBTRACT'","'HEX'","'IFNULL'","'INET6_ATON'","'INET6_NTOA'","'INET_ATON'","'INET_NTOA'","'INSTR'","'INTERIORRINGN'","'INTERSECTS'","'ISCLOSED'","'ISEMPTY'","'ISNULL'","'ISSIMPLE'","'IS_FREE_LOCK'","'IS_IPV4'","'IS_IPV4_COMPAT'","'IS_IPV4_MAPPED'","'IS_IPV6'","'IS_USED_LOCK'","'LAST_INSERT_ID'","'LCASE'","'LEAST'","'LENGTH'","'LINEFROMTEXT'","'LINEFROMWKB'","'LINESTRINGFROMTEXT'","'LINESTRINGFROMWKB'","'LN'","'LOAD_FILE'","'LOCATE'","'LOG'","'LOG10'","'LOG2'","'LOWER'","'LPAD'","'LTRIM'","'MAKEDATE'","'MAKETIME'","'MAKE_SET'","'MASTER_POS_WAIT'","'MBRCONTAINS'","'MBRDISJOINT'","'MBREQUAL'","'MBRINTERSECTS'","'MBROVERLAPS'","'MBRTOUCHES'","'MBRWITHIN'","'MD5'","'MLINEFROMTEXT'","'MLINEFROMWKB'","'MONTHNAME'","'MPOINTFROMTEXT'","'MPOINTFROMWKB'","'MPOLYFROMTEXT'","'MPOLYFROMWKB'","'MULTILINESTRINGFROMTEXT'","'MULTILINESTRINGFROMWKB'","'MULTIPOINTFROMTEXT'","'MULTIPOINTFROMWKB'","'MULTIPOLYGONFROMTEXT'","'MULTIPOLYGONFROMWKB'","'NAME_CONST'","'NULLIF'","'NUMGEOMETRIES'","'NUMINTERIORRINGS'","'NUMPOINTS'","'OCT'","'OCTET_LENGTH'","'ORD'","'OVERLAPS'","'PERIOD_ADD'","'PERIOD_DIFF'","'PI'","'POINTFROMTEXT'","'POINTFROMWKB'","'POINTN'","'POLYFROMTEXT'","'POLYFROMWKB'","'POLYGONFROMTEXT'","'POLYGONFROMWKB'","'POW'","'POWER'","'QUOTE'","'RADIANS'","'RAND'","'RANDOM'","'RANDOM_BYTES'","'RELEASE_LOCK'","'REVERSE'","'ROUND'","'ROW_COUNT'","'RPAD'","'RTRIM'","'SEC_TO_TIME'","'SECONDARY_ENGINE_ATTRIBUTE'","'SESSION_USER'","'SHA'","'SHA1'","'SHA2'","'SCHEMA_NAME'","'SIGN'","'SIN'","'SLEEP'","'SOUNDEX'","'SQL_THREAD_WAIT_AFTER_GTIDS'","'SQRT'","'SRID'","'STARTPOINT'","'STRCMP'","'STR_TO_DATE'","'ST_AREA'","'ST_ASBINARY'","'ST_ASTEXT'","'ST_ASWKB'","'ST_ASWKT'","'ST_BUFFER'","'ST_CENTROID'","'ST_CONTAINS'","'ST_CROSSES'","'ST_DIFFERENCE'","'ST_DIMENSION'","'ST_DISJOINT'","'ST_DISTANCE'","'ST_ENDPOINT'","'ST_ENVELOPE'","'ST_EQUALS'","'ST_EXTERIORRING'","'ST_GEOMCOLLFROMTEXT'","'ST_GEOMCOLLFROMTXT'","'ST_GEOMCOLLFROMWKB'","'ST_GEOMETRYCOLLECTIONFROMTEXT'","'ST_GEOMETRYCOLLECTIONFROMWKB'","'ST_GEOMETRYFROMTEXT'","'ST_GEOMETRYFROMWKB'","'ST_GEOMETRYN'","'ST_GEOMETRYTYPE'","'ST_GEOMFROMTEXT'","'ST_GEOMFROMWKB'","'ST_INTERIORRINGN'","'ST_INTERSECTION'","'ST_INTERSECTS'","'ST_ISCLOSED'","'ST_ISEMPTY'","'ST_ISSIMPLE'","'ST_LINEFROMTEXT'","'ST_LINEFROMWKB'","'ST_LINESTRINGFROMTEXT'","'ST_LINESTRINGFROMWKB'","'ST_NUMGEOMETRIES'","'ST_NUMINTERIORRING'","'ST_NUMINTERIORRINGS'","'ST_NUMPOINTS'","'ST_OVERLAPS'","'ST_POINTFROMTEXT'","'ST_POINTFROMWKB'","'ST_POINTN'","'ST_POLYFROMTEXT'","'ST_POLYFROMWKB'","'ST_POLYGONFROMTEXT'","'ST_POLYGONFROMWKB'","'ST_SRID'","'ST_STARTPOINT'","'ST_SYMDIFFERENCE'","'ST_TOUCHES'","'ST_UNION'","'ST_WITHIN'","'ST_X'","'ST_Y'","'SUBDATE'","'SUBSTRING_INDEX'","'SUBTIME'","'SYSTEM_USER'","'TAN'","'TIMEDIFF'","'TIMESTAMPADD'","'TIMESTAMPDIFF'","'TIME_FORMAT'","'TIME_TO_SEC'","'TOUCHES'","'TO_BASE64'","'TO_DAYS'","'TO_SECONDS'","'TP_CONNECTION_ADMIN'","'UCASE'","'UNCOMPRESS'","'UNCOMPRESSED_LENGTH'","'UNHEX'","'UNIX_TIMESTAMP'","'UPDATEXML'","'UPPER'","'UUID'","'UUID_SHORT'","'VALIDATE_PASSWORD_STRENGTH'","'VERSION'","'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS'","'WEEKDAY'","'WEEKOFYEAR'","'WEIGHT_STRING'","'WITHIN'","'YEARWEEK'","'Y'","'X'","':='","'+='","'-='","'*='","'/='","'%='","'&='","'^='","'|='","'*'","'/'","'%'","'+'","'-'","'DIV'","'MOD'","'='","'>'","'<'","'!'","'~'","'|'","'&'","'^'","'.'","'('","')'","','","';'","'@'","'0'","'1'","'2'","'''","'\"'","'`'","':'"],Ki.symbolicNames=[null,"SPACE","SPEC_MYSQL_COMMENT","COMMENT_INPUT","LINE_COMMENT","ADD","ALL","ALTER","ALWAYS","ANALYZE","AND","ARRAY","AS","ASC","ATTRIBUTE","BEFORE","BETWEEN","BOTH","BUCKETS","BY","CALL","CASCADE","CASE","CAST","CHANGE","CHARACTER","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_ROLE","CURRENT_USER","CURSOR","DATABASE","DATABASES","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DIAGNOSTICS","DISTINCT","DISTINCTROW","DROP","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ENFORCED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GET","GRANT","GROUP","HAVING","HIGH_PRIORITY","HISTOGRAM","IF","IGNORE","IGNORED","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LATERAL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCK","LOCKED","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINVALUE","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL_LITERAL","NUMBER","ON","OPTIMIZE","OPTION","OPTIONAL","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETAIN","RETURN","REVOKE","RIGHT","RLIKE","SCHEMA","SCHEMAS","SELECT","SET","SEPARATOR","SHOW","SIGNAL","SKIP_","SKIP_QUERY_REWRITE","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STACKED","STARTING","STATEMENT","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","VALUES","WHEN","WHERE","WHILE","WITH","WRITE","XOR","ZEROFILL","TINYINT","SMALLINT","MEDIUMINT","MIDDLEINT","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","BIGINT","REAL","DOUBLE","PRECISION","FLOAT","FLOAT4","FLOAT8","DECIMAL","DEC","NUMERIC","DATE","TIME","TIMESTAMP","DATETIME","YEAR","CHAR","VARCHAR","NVARCHAR","NATIONAL","BINARY","VARBINARY","TINYBLOB","BLOB","MEDIUMBLOB","LONG","LONGBLOB","TINYTEXT","TEXT","MEDIUMTEXT","LONGTEXT","ENUM","VARYING","SERIAL","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND","SECOND_MICROSECOND","MINUTE_MICROSECOND","HOUR_MICROSECOND","DAY_MICROSECOND","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","NESTED","ORDINALITY","PATH","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","GROUP_CONCAT","LAG","LAST_VALUE","LEAD","MAX","MIN","NTILE","NTH_VALUE","PERCENT_RANK","RANK","ROW_NUMBER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","LOCALTIME","CURDATE","CURTIME","DATE_ADD","DATE_SUB","EXTRACT","LOCALTIMESTAMP","NOW","POSITION","SUBSTR","SUBSTRING","SYSDATE","TRIM","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","ACCOUNT","ACTION","AFTER","AGGREGATE","ALGORITHM","ANY","AT","AUTHORS","AUTOCOMMIT","AUTOEXTEND_SIZE","AUTO_INCREMENT","AVG_ROW_LENGTH","BEGIN","BINLOG","BIT","BLOCK","BOOL","BOOLEAN","BTREE","CACHE","CASCADED","CHAIN","CHANGED","CHANNEL","CHECKSUM","PAGE_CHECKSUM","CIPHER","CLASS_ORIGIN","CLIENT","CLOSE","CLUSTERING","COALESCE","CODE","COLUMNS","COLUMN_FORMAT","COLUMN_NAME","COMMENT","COMMIT","COMPACT","COMPLETION","COMPRESSED","COMPRESSION","CONCURRENT","CONNECT","CONNECTION","CONSISTENT","CONSTRAINT_CATALOG","CONSTRAINT_SCHEMA","CONSTRAINT_NAME","CONTAINS","CONTEXT","CONTRIBUTORS","COPY","CPU","CYCLE","CURSOR_NAME","DATA","DATAFILE","DEALLOCATE","DEFAULT_AUTH","DEFINER","DELAY_KEY_WRITE","DES_KEY_FILE","DIRECTORY","DISABLE","DISCARD","DISK","DO","DUMPFILE","DUPLICATE","DYNAMIC","ENABLE","ENCRYPTED","ENCRYPTION","ENCRYPTION_KEY_ID","END","ENDS","ENGINE","ENGINES","ERROR","ERRORS","ESCAPE","EVEN","EVENT","EVENTS","EVERY","EXCHANGE","EXCLUSIVE","EXPIRE","EXPORT","EXTENDED","EXTENT_SIZE","FAILED_LOGIN_ATTEMPTS","FAST","FAULTS","FIELDS","FILE_BLOCK_SIZE","FILTER","FIRST","FIXED","FLUSH","FOLLOWING","FOLLOWS","FOUND","FULL","FUNCTION","GENERAL","GLOBAL","GRANTS","GROUP_REPLICATION","HANDLER","HASH","HELP","HISTORY","HOST","HOSTS","IDENTIFIED","IGNORE_SERVER_IDS","IMPORT","INCREMENT","INDEXES","INITIAL_SIZE","INPLACE","INSERT_METHOD","INSTALL","INSTANCE","INSTANT","INVISIBLE","INVOKER","IO","IO_THREAD","IPC","ISOLATION","ISSUER","JSON","KEY_BLOCK_SIZE","LANGUAGE","LAST","LEAVES","LESS","LEVEL","LIST","LOCAL","LOGFILE","LOGS","MASTER","MASTER_AUTO_POSITION","MASTER_CONNECT_RETRY","MASTER_DELAY","MASTER_HEARTBEAT_PERIOD","MASTER_HOST","MASTER_LOG_FILE","MASTER_LOG_POS","MASTER_PASSWORD","MASTER_PORT","MASTER_RETRY_COUNT","MASTER_SSL","MASTER_SSL_CA","MASTER_SSL_CAPATH","MASTER_SSL_CERT","MASTER_SSL_CIPHER","MASTER_SSL_CRL","MASTER_SSL_CRLPATH","MASTER_SSL_KEY","MASTER_TLS_VERSION","MASTER_USER","MAX_CONNECTIONS_PER_HOUR","MAX_QUERIES_PER_HOUR","MAX_ROWS","MAX_SIZE","MAX_UPDATES_PER_HOUR","MAX_USER_CONNECTIONS","MEDIUM","MEMBER","MERGE","MESSAGE_TEXT","MID","MIGRATE","MIN_ROWS","MODE","MODIFY","MUTEX","MYSQL","MYSQL_ERRNO","NAME","NAMES","NCHAR","NEVER","NEXT","NO","NOCACHE","NOCOPY","NOCYCLE","NOMAXVALUE","NOMINVALUE","NOWAIT","NODEGROUP","NONE","ODBC","OFFLINE","OFFSET","OF","OJ","OLD_PASSWORD","ONE","ONLINE","ONLY","OPEN","OPTIMIZER_COSTS","OPTIONS","OWNER","PACK_KEYS","PAGE","PAGE_COMPRESSED","PAGE_COMPRESSION_LEVEL","PARSER","PARTIAL","PARTITIONING","PARTITIONS","PASSWORD","PASSWORD_LOCK_TIME","PHASE","PLUGIN","PLUGIN_DIR","PLUGINS","PORT","PRECEDES","PRECEDING","PREPARE","PRESERVE","PREV","PROCESSLIST","PROFILE","PROFILES","PROXY","QUERY","QUICK","REBUILD","RECOVER","RECURSIVE","REDO_BUFFER_SIZE","REDUNDANT","RELAY","RELAY_LOG_FILE","RELAY_LOG_POS","RELAYLOG","REMOVE","REORGANIZE","REPAIR","REPLICATE_DO_DB","REPLICATE_DO_TABLE","REPLICATE_IGNORE_DB","REPLICATE_IGNORE_TABLE","REPLICATE_REWRITE_DB","REPLICATE_WILD_DO_TABLE","REPLICATE_WILD_IGNORE_TABLE","REPLICATION","RESET","RESTART","RESUME","RETURNED_SQLSTATE","RETURNING","RETURNS","REUSE","ROLE","ROLLBACK","ROLLUP","ROTATE","ROW","ROWS","ROW_FORMAT","RTREE","SAVEPOINT","SCHEDULE","SECURITY","SEQUENCE","SERVER","SESSION","SHARE","SHARED","SIGNED","SIMPLE","SLAVE","SLOW","SNAPSHOT","SOCKET","SOME","SONAME","SOUNDS","SOURCE","SQL_AFTER_GTIDS","SQL_AFTER_MTS_GAPS","SQL_BEFORE_GTIDS","SQL_BUFFER_RESULT","SQL_CACHE","SQL_NO_CACHE","SQL_THREAD","START","STARTS","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STATUS","STOP","STORAGE","STORED","STRING","SUBCLASS_ORIGIN","SUBJECT","SUBPARTITION","SUBPARTITIONS","SUSPEND","SWAPS","SWITCHES","TABLE_NAME","TABLESPACE","TABLE_TYPE","TEMPORARY","TEMPTABLE","THAN","TRADITIONAL","TRANSACTION","TRANSACTIONAL","TRIGGERS","TRUNCATE","UNBOUNDED","UNDEFINED","UNDOFILE","UNDO_BUFFER_SIZE","UNINSTALL","UNKNOWN","UNTIL","UPGRADE","USER","USE_FRM","USER_RESOURCES","VALIDATION","VALUE","VARIABLES","VIEW","VIRTUAL","VISIBLE","WAIT","WARNINGS","WINDOW","WITHOUT","WORK","WRAPPER","X509","XA","XML","YES","EUR","USA","JIS","ISO","INTERNAL","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","MICROSECOND","ADMIN","APPLICATION_PASSWORD_ADMIN","AUDIT_ABORT_EXEMPT","AUDIT_ADMIN","AUTHENTICATION_POLICY_ADMIN","BACKUP_ADMIN","BINLOG_ADMIN","BINLOG_ENCRYPTION_ADMIN","CLONE_ADMIN","CONNECTION_ADMIN","ENCRYPTION_KEY_ADMIN","EXECUTE","FILE","FIREWALL_ADMIN","FIREWALL_EXEMPT","FIREWALL_USER","FLUSH_OPTIMIZER_COSTS","FLUSH_STATUS","FLUSH_TABLES","FLUSH_USER_RESOURCES","GROUP_REPLICATION_ADMIN","INNODB_REDO_LOG_ARCHIVE","INNODB_REDO_LOG_ENABLE","INVOKE","LAMBDA","NDB_STORED_USER","PASSWORDLESS_USER_ADMIN","PERSIST_RO_VARIABLES_ADMIN","PRIVILEGES","PROCESS","RELOAD","REPLICATION_APPLIER","REPLICATION_SLAVE_ADMIN","RESOURCE_GROUP_ADMIN","RESOURCE_GROUP_USER","ROLE_ADMIN","ROUTINE","S3","SERVICE_CONNECTION_ADMIN","SESSION_VARIABLES_ADMIN","SET_USER_ID","SHOW_ROUTINE","SHUTDOWN","SUPER","SYSTEM_VARIABLES_ADMIN","TABLES","TABLE_ENCRYPTION_ADMIN","VERSION_TOKEN_ADMIN","XA_RECOVER_ADMIN","ARMSCII8","ASCII","BIG5","CP1250","CP1251","CP1256","CP1257","CP850","CP852","CP866","CP932","DEC8","EUCJPMS","EUCKR","GB18030","GB2312","GBK","GEOSTD8","GREEK","HEBREW","HP8","KEYBCS2","KOI8R","KOI8U","LATIN1","LATIN2","LATIN5","LATIN7","MACCE","MACROMAN","SJIS","SWE7","TIS620","UCS2","UJIS","UTF16","UTF16LE","UTF32","UTF8","UTF8MB3","UTF8MB4","ARCHIVE","BLACKHOLE","CSV","FEDERATED","INNODB","MEMORY","MRG_MYISAM","MYISAM","NDB","NDBCLUSTER","PERFORMANCE_SCHEMA","TOKUDB","REPEATABLE","COMMITTED","UNCOMMITTED","SERIALIZABLE","GEOMETRYCOLLECTION","GEOMCOLLECTION","GEOMETRY","LINESTRING","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","POINT","POLYGON","ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","AREA","ASBINARY","ASIN","ASTEXT","ASWKB","ASWKT","ASYMMETRIC_DECRYPT","ASYMMETRIC_DERIVE","ASYMMETRIC_ENCRYPT","ASYMMETRIC_SIGN","ASYMMETRIC_VERIFY","ATAN","ATAN2","BENCHMARK","BIN","BIT_COUNT","BIT_LENGTH","BUFFER","CATALOG_NAME","CEIL","CEILING","CENTROID","CHARACTER_LENGTH","CHARSET","CHAR_LENGTH","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","CREATE_ASYMMETRIC_PRIV_KEY","CREATE_ASYMMETRIC_PUB_KEY","CREATE_DH_PARAMETERS","CREATE_DIGEST","CROSSES","DATEDIFF","DATE_FORMAT","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEGREES","DES_DECRYPT","DES_ENCRYPT","DIMENSION","DISJOINT","ELT","ENCODE","ENCRYPT","ENDPOINT","ENGINE_ATTRIBUTE","ENVELOPE","EQUALS","EXP","EXPORT_SET","EXTERIORRING","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLFROMTEXT","GEOMCOLLFROMWKB","GEOMETRYCOLLECTIONFROMTEXT","GEOMETRYCOLLECTIONFROMWKB","GEOMETRYFROMTEXT","GEOMETRYFROMWKB","GEOMETRYN","GEOMETRYTYPE","GEOMFROMTEXT","GEOMFROMWKB","GET_FORMAT","GET_LOCK","GLENGTH","GREATEST","GTID_SUBSET","GTID_SUBTRACT","HEX","IFNULL","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSTR","INTERIORRINGN","INTERSECTS","ISCLOSED","ISEMPTY","ISNULL","ISSIMPLE","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LINEFROMTEXT","LINEFROMWKB","LINESTRINGFROMTEXT","LINESTRINGFROMWKB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKEDATE","MAKETIME","MAKE_SET","MASTER_POS_WAIT","MBRCONTAINS","MBRDISJOINT","MBREQUAL","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MLINEFROMTEXT","MLINEFROMWKB","MONTHNAME","MPOINTFROMTEXT","MPOINTFROMWKB","MPOLYFROMTEXT","MPOLYFROMWKB","MULTILINESTRINGFROMTEXT","MULTILINESTRINGFROMWKB","MULTIPOINTFROMTEXT","MULTIPOINTFROMWKB","MULTIPOLYGONFROMTEXT","MULTIPOLYGONFROMWKB","NAME_CONST","NULLIF","NUMGEOMETRIES","NUMINTERIORRINGS","NUMPOINTS","OCT","OCTET_LENGTH","ORD","OVERLAPS","PERIOD_ADD","PERIOD_DIFF","PI","POINTFROMTEXT","POINTFROMWKB","POINTN","POLYFROMTEXT","POLYFROMWKB","POLYGONFROMTEXT","POLYGONFROMWKB","POW","POWER","QUOTE","RADIANS","RAND","RANDOM","RANDOM_BYTES","RELEASE_LOCK","REVERSE","ROUND","ROW_COUNT","RPAD","RTRIM","SEC_TO_TIME","SECONDARY_ENGINE_ATTRIBUTE","SESSION_USER","SHA","SHA1","SHA2","SCHEMA_NAME","SIGN","SIN","SLEEP","SOUNDEX","SQL_THREAD_WAIT_AFTER_GTIDS","SQRT","SRID","STARTPOINT","STRCMP","STR_TO_DATE","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_ASWKB","ST_ASWKT","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMTXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYCOLLECTIONFROMTEXT","ST_GEOMETRYCOLLECTIONFROMWKB","ST_GEOMETRYFROMTEXT","ST_GEOMETRYFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINESTRINGFROMTEXT","ST_LINESTRINGFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMINTERIORRINGS","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_POLYGONFROMTEXT","ST_POLYGONFROMWKB","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_Y","SUBDATE","SUBSTRING_INDEX","SUBTIME","SYSTEM_USER","TAN","TIMEDIFF","TIMESTAMPADD","TIMESTAMPDIFF","TIME_FORMAT","TIME_TO_SEC","TOUCHES","TO_BASE64","TO_DAYS","TO_SECONDS","TP_CONNECTION_ADMIN","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VALIDATE_PASSWORD_STRENGTH","VERSION","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","WITHIN","YEARWEEK","Y_FUNCTION","X_FUNCTION","VAR_ASSIGN","PLUS_ASSIGN","MINUS_ASSIGN","MULT_ASSIGN","DIV_ASSIGN","MOD_ASSIGN","AND_ASSIGN","XOR_ASSIGN","OR_ASSIGN","STAR","DIVIDE","MODULE","PLUS","MINUS","DIV","MOD","EQUAL_SYMBOL","GREATER_SYMBOL","LESS_SYMBOL","EXCLAMATION_SYMBOL","BIT_NOT_OP","BIT_OR_OP","BIT_AND_OP","BIT_XOR_OP","DOT","LR_BRACKET","RR_BRACKET","COMMA","SEMI","AT_SIGN","ZERO_DECIMAL","ONE_DECIMAL","TWO_DECIMAL","SINGLE_QUOTE_SYMB","DOUBLE_QUOTE_SYMB","REVERSE_QUOTE_SYMB","COLON_SYMB","CHARSET_REVERSE_QOUTE_STRING","FILESIZE_LITERAL","START_NATIONAL_STRING_LITERAL","STRING_LITERAL","DECIMAL_LITERAL","HEXADECIMAL_LITERAL","REAL_LITERAL","NULL_SPEC_LITERAL","BIT_STRING","STRING_CHARSET_NAME","DOT_ID","ID","REVERSE_QUOTE_ID","HOST_IP_ADDRESS","LOCAL_ID","GLOBAL_ID","ERROR_RECONGNIGION"],Ki.modeNames=["DEFAULT_MODE"],Ki.ruleNames=["SPACE","SPEC_MYSQL_COMMENT","COMMENT_INPUT","LINE_COMMENT","ADD","ALL","ALTER","ALWAYS","ANALYZE","AND","ARRAY","AS","ASC","ATTRIBUTE","BEFORE","BETWEEN","BOTH","BUCKETS","BY","CALL","CASCADE","CASE","CAST","CHANGE","CHARACTER","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_ROLE","CURRENT_USER","CURSOR","DATABASE","DATABASES","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DIAGNOSTICS","DISTINCT","DISTINCTROW","DROP","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ENFORCED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GET","GRANT","GROUP","HAVING","HIGH_PRIORITY","HISTOGRAM","IF","IGNORE","IGNORED","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LATERAL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCK","LOCKED","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINVALUE","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL_LITERAL","NUMBER","ON","OPTIMIZE","OPTION","OPTIONAL","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETAIN","RETURN","REVOKE","RIGHT","RLIKE","SCHEMA","SCHEMAS","SELECT","SET","SEPARATOR","SHOW","SIGNAL","SKIP_","SKIP_QUERY_REWRITE","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STACKED","STARTING","STATEMENT","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","VALUES","WHEN","WHERE","WHILE","WITH","WRITE","XOR","ZEROFILL","TINYINT","SMALLINT","MEDIUMINT","MIDDLEINT","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","BIGINT","REAL","DOUBLE","PRECISION","FLOAT","FLOAT4","FLOAT8","DECIMAL","DEC","NUMERIC","DATE","TIME","TIMESTAMP","DATETIME","YEAR","CHAR","VARCHAR","NVARCHAR","NATIONAL","BINARY","VARBINARY","TINYBLOB","BLOB","MEDIUMBLOB","LONG","LONGBLOB","TINYTEXT","TEXT","MEDIUMTEXT","LONGTEXT","ENUM","VARYING","SERIAL","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND","SECOND_MICROSECOND","MINUTE_MICROSECOND","HOUR_MICROSECOND","DAY_MICROSECOND","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","NESTED","ORDINALITY","PATH","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","GROUP_CONCAT","LAG","LAST_VALUE","LEAD","MAX","MIN","NTILE","NTH_VALUE","PERCENT_RANK","RANK","ROW_NUMBER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","LOCALTIME","CURDATE","CURTIME","DATE_ADD","DATE_SUB","EXTRACT","LOCALTIMESTAMP","NOW","POSITION","SUBSTR","SUBSTRING","SYSDATE","TRIM","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","ACCOUNT","ACTION","AFTER","AGGREGATE","ALGORITHM","ANY","AT","AUTHORS","AUTOCOMMIT","AUTOEXTEND_SIZE","AUTO_INCREMENT","AVG_ROW_LENGTH","BEGIN","BINLOG","BIT","BLOCK","BOOL","BOOLEAN","BTREE","CACHE","CASCADED","CHAIN","CHANGED","CHANNEL","CHECKSUM","PAGE_CHECKSUM","CIPHER","CLASS_ORIGIN","CLIENT","CLOSE","CLUSTERING","COALESCE","CODE","COLUMNS","COLUMN_FORMAT","COLUMN_NAME","COMMENT","COMMIT","COMPACT","COMPLETION","COMPRESSED","COMPRESSION","CONCURRENT","CONNECT","CONNECTION","CONSISTENT","CONSTRAINT_CATALOG","CONSTRAINT_SCHEMA","CONSTRAINT_NAME","CONTAINS","CONTEXT","CONTRIBUTORS","COPY","CPU","CYCLE","CURSOR_NAME","DATA","DATAFILE","DEALLOCATE","DEFAULT_AUTH","DEFINER","DELAY_KEY_WRITE","DES_KEY_FILE","DIRECTORY","DISABLE","DISCARD","DISK","DO","DUMPFILE","DUPLICATE","DYNAMIC","ENABLE","ENCRYPTED","ENCRYPTION","ENCRYPTION_KEY_ID","END","ENDS","ENGINE","ENGINES","ERROR","ERRORS","ESCAPE","EVEN","EVENT","EVENTS","EVERY","EXCHANGE","EXCLUSIVE","EXPIRE","EXPORT","EXTENDED","EXTENT_SIZE","FAILED_LOGIN_ATTEMPTS","FAST","FAULTS","FIELDS","FILE_BLOCK_SIZE","FILTER","FIRST","FIXED","FLUSH","FOLLOWING","FOLLOWS","FOUND","FULL","FUNCTION","GENERAL","GLOBAL","GRANTS","GROUP_REPLICATION","HANDLER","HASH","HELP","HISTORY","HOST","HOSTS","IDENTIFIED","IGNORE_SERVER_IDS","IMPORT","INCREMENT","INDEXES","INITIAL_SIZE","INPLACE","INSERT_METHOD","INSTALL","INSTANCE","INSTANT","INVISIBLE","INVOKER","IO","IO_THREAD","IPC","ISOLATION","ISSUER","JSON","KEY_BLOCK_SIZE","LANGUAGE","LAST","LEAVES","LESS","LEVEL","LIST","LOCAL","LOGFILE","LOGS","MASTER","MASTER_AUTO_POSITION","MASTER_CONNECT_RETRY","MASTER_DELAY","MASTER_HEARTBEAT_PERIOD","MASTER_HOST","MASTER_LOG_FILE","MASTER_LOG_POS","MASTER_PASSWORD","MASTER_PORT","MASTER_RETRY_COUNT","MASTER_SSL","MASTER_SSL_CA","MASTER_SSL_CAPATH","MASTER_SSL_CERT","MASTER_SSL_CIPHER","MASTER_SSL_CRL","MASTER_SSL_CRLPATH","MASTER_SSL_KEY","MASTER_TLS_VERSION","MASTER_USER","MAX_CONNECTIONS_PER_HOUR","MAX_QUERIES_PER_HOUR","MAX_ROWS","MAX_SIZE","MAX_UPDATES_PER_HOUR","MAX_USER_CONNECTIONS","MEDIUM","MEMBER","MERGE","MESSAGE_TEXT","MID","MIGRATE","MIN_ROWS","MODE","MODIFY","MUTEX","MYSQL","MYSQL_ERRNO","NAME","NAMES","NCHAR","NEVER","NEXT","NO","NOCACHE","NOCOPY","NOCYCLE","NOMAXVALUE","NOMINVALUE","NOWAIT","NODEGROUP","NONE","ODBC","OFFLINE","OFFSET","OF","OJ","OLD_PASSWORD","ONE","ONLINE","ONLY","OPEN","OPTIMIZER_COSTS","OPTIONS","OWNER","PACK_KEYS","PAGE","PAGE_COMPRESSED","PAGE_COMPRESSION_LEVEL","PARSER","PARTIAL","PARTITIONING","PARTITIONS","PASSWORD","PASSWORD_LOCK_TIME","PHASE","PLUGIN","PLUGIN_DIR","PLUGINS","PORT","PRECEDES","PRECEDING","PREPARE","PRESERVE","PREV","PROCESSLIST","PROFILE","PROFILES","PROXY","QUERY","QUICK","REBUILD","RECOVER","RECURSIVE","REDO_BUFFER_SIZE","REDUNDANT","RELAY","RELAY_LOG_FILE","RELAY_LOG_POS","RELAYLOG","REMOVE","REORGANIZE","REPAIR","REPLICATE_DO_DB","REPLICATE_DO_TABLE","REPLICATE_IGNORE_DB","REPLICATE_IGNORE_TABLE","REPLICATE_REWRITE_DB","REPLICATE_WILD_DO_TABLE","REPLICATE_WILD_IGNORE_TABLE","REPLICATION","RESET","RESTART","RESUME","RETURNED_SQLSTATE","RETURNING","RETURNS","REUSE","ROLE","ROLLBACK","ROLLUP","ROTATE","ROW","ROWS","ROW_FORMAT","RTREE","SAVEPOINT","SCHEDULE","SECURITY","SEQUENCE","SERVER","SESSION","SHARE","SHARED","SIGNED","SIMPLE","SLAVE","SLOW","SNAPSHOT","SOCKET","SOME","SONAME","SOUNDS","SOURCE","SQL_AFTER_GTIDS","SQL_AFTER_MTS_GAPS","SQL_BEFORE_GTIDS","SQL_BUFFER_RESULT","SQL_CACHE","SQL_NO_CACHE","SQL_THREAD","START","STARTS","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STATUS","STOP","STORAGE","STORED","STRING","SUBCLASS_ORIGIN","SUBJECT","SUBPARTITION","SUBPARTITIONS","SUSPEND","SWAPS","SWITCHES","TABLE_NAME","TABLESPACE","TABLE_TYPE","TEMPORARY","TEMPTABLE","THAN","TRADITIONAL","TRANSACTION","TRANSACTIONAL","TRIGGERS","TRUNCATE","UNBOUNDED","UNDEFINED","UNDOFILE","UNDO_BUFFER_SIZE","UNINSTALL","UNKNOWN","UNTIL","UPGRADE","USER","USE_FRM","USER_RESOURCES","VALIDATION","VALUE","VARIABLES","VIEW","VIRTUAL","VISIBLE","WAIT","WARNINGS","WINDOW","WITHOUT","WORK","WRAPPER","X509","XA","XML","YES","EUR","USA","JIS","ISO","INTERNAL","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","MICROSECOND","ADMIN","APPLICATION_PASSWORD_ADMIN","AUDIT_ABORT_EXEMPT","AUDIT_ADMIN","AUTHENTICATION_POLICY_ADMIN","BACKUP_ADMIN","BINLOG_ADMIN","BINLOG_ENCRYPTION_ADMIN","CLONE_ADMIN","CONNECTION_ADMIN","ENCRYPTION_KEY_ADMIN","EXECUTE","FILE","FIREWALL_ADMIN","FIREWALL_EXEMPT","FIREWALL_USER","FLUSH_OPTIMIZER_COSTS","FLUSH_STATUS","FLUSH_TABLES","FLUSH_USER_RESOURCES","GROUP_REPLICATION_ADMIN","INNODB_REDO_LOG_ARCHIVE","INNODB_REDO_LOG_ENABLE","INVOKE","LAMBDA","NDB_STORED_USER","PASSWORDLESS_USER_ADMIN","PERSIST_RO_VARIABLES_ADMIN","PRIVILEGES","PROCESS","RELOAD","REPLICATION_APPLIER","REPLICATION_SLAVE_ADMIN","RESOURCE_GROUP_ADMIN","RESOURCE_GROUP_USER","ROLE_ADMIN","ROUTINE","S3","SERVICE_CONNECTION_ADMIN","SESSION_VARIABLES_ADMIN","SET_USER_ID","SHOW_ROUTINE","SHUTDOWN","SUPER","SYSTEM_VARIABLES_ADMIN","TABLES","TABLE_ENCRYPTION_ADMIN","VERSION_TOKEN_ADMIN","XA_RECOVER_ADMIN","ARMSCII8","ASCII","BIG5","CP1250","CP1251","CP1256","CP1257","CP850","CP852","CP866","CP932","DEC8","EUCJPMS","EUCKR","GB18030","GB2312","GBK","GEOSTD8","GREEK","HEBREW","HP8","KEYBCS2","KOI8R","KOI8U","LATIN1","LATIN2","LATIN5","LATIN7","MACCE","MACROMAN","SJIS","SWE7","TIS620","UCS2","UJIS","UTF16","UTF16LE","UTF32","UTF8","UTF8MB3","UTF8MB4","ARCHIVE","BLACKHOLE","CSV","FEDERATED","INNODB","MEMORY","MRG_MYISAM","MYISAM","NDB","NDBCLUSTER","PERFORMANCE_SCHEMA","TOKUDB","REPEATABLE","COMMITTED","UNCOMMITTED","SERIALIZABLE","GEOMETRYCOLLECTION","GEOMCOLLECTION","GEOMETRY","LINESTRING","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","POINT","POLYGON","ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","AREA","ASBINARY","ASIN","ASTEXT","ASWKB","ASWKT","ASYMMETRIC_DECRYPT","ASYMMETRIC_DERIVE","ASYMMETRIC_ENCRYPT","ASYMMETRIC_SIGN","ASYMMETRIC_VERIFY","ATAN","ATAN2","BENCHMARK","BIN","BIT_COUNT","BIT_LENGTH","BUFFER","CATALOG_NAME","CEIL","CEILING","CENTROID","CHARACTER_LENGTH","CHARSET","CHAR_LENGTH","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","CREATE_ASYMMETRIC_PRIV_KEY","CREATE_ASYMMETRIC_PUB_KEY","CREATE_DH_PARAMETERS","CREATE_DIGEST","CROSSES","DATEDIFF","DATE_FORMAT","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEGREES","DES_DECRYPT","DES_ENCRYPT","DIMENSION","DISJOINT","ELT","ENCODE","ENCRYPT","ENDPOINT","ENGINE_ATTRIBUTE","ENVELOPE","EQUALS","EXP","EXPORT_SET","EXTERIORRING","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLFROMTEXT","GEOMCOLLFROMWKB","GEOMETRYCOLLECTIONFROMTEXT","GEOMETRYCOLLECTIONFROMWKB","GEOMETRYFROMTEXT","GEOMETRYFROMWKB","GEOMETRYN","GEOMETRYTYPE","GEOMFROMTEXT","GEOMFROMWKB","GET_FORMAT","GET_LOCK","GLENGTH","GREATEST","GTID_SUBSET","GTID_SUBTRACT","HEX","IFNULL","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSTR","INTERIORRINGN","INTERSECTS","ISCLOSED","ISEMPTY","ISNULL","ISSIMPLE","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LINEFROMTEXT","LINEFROMWKB","LINESTRINGFROMTEXT","LINESTRINGFROMWKB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKEDATE","MAKETIME","MAKE_SET","MASTER_POS_WAIT","MBRCONTAINS","MBRDISJOINT","MBREQUAL","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MLINEFROMTEXT","MLINEFROMWKB","MONTHNAME","MPOINTFROMTEXT","MPOINTFROMWKB","MPOLYFROMTEXT","MPOLYFROMWKB","MULTILINESTRINGFROMTEXT","MULTILINESTRINGFROMWKB","MULTIPOINTFROMTEXT","MULTIPOINTFROMWKB","MULTIPOLYGONFROMTEXT","MULTIPOLYGONFROMWKB","NAME_CONST","NULLIF","NUMGEOMETRIES","NUMINTERIORRINGS","NUMPOINTS","OCT","OCTET_LENGTH","ORD","OVERLAPS","PERIOD_ADD","PERIOD_DIFF","PI","POINTFROMTEXT","POINTFROMWKB","POINTN","POLYFROMTEXT","POLYFROMWKB","POLYGONFROMTEXT","POLYGONFROMWKB","POW","POWER","QUOTE","RADIANS","RAND","RANDOM","RANDOM_BYTES","RELEASE_LOCK","REVERSE","ROUND","ROW_COUNT","RPAD","RTRIM","SEC_TO_TIME","SECONDARY_ENGINE_ATTRIBUTE","SESSION_USER","SHA","SHA1","SHA2","SCHEMA_NAME","SIGN","SIN","SLEEP","SOUNDEX","SQL_THREAD_WAIT_AFTER_GTIDS","SQRT","SRID","STARTPOINT","STRCMP","STR_TO_DATE","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_ASWKB","ST_ASWKT","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMTXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYCOLLECTIONFROMTEXT","ST_GEOMETRYCOLLECTIONFROMWKB","ST_GEOMETRYFROMTEXT","ST_GEOMETRYFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINESTRINGFROMTEXT","ST_LINESTRINGFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMINTERIORRINGS","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_POLYGONFROMTEXT","ST_POLYGONFROMWKB","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_Y","SUBDATE","SUBSTRING_INDEX","SUBTIME","SYSTEM_USER","TAN","TIMEDIFF","TIMESTAMPADD","TIMESTAMPDIFF","TIME_FORMAT","TIME_TO_SEC","TOUCHES","TO_BASE64","TO_DAYS","TO_SECONDS","TP_CONNECTION_ADMIN","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VALIDATE_PASSWORD_STRENGTH","VERSION","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","WITHIN","YEARWEEK","Y_FUNCTION","X_FUNCTION","VAR_ASSIGN","PLUS_ASSIGN","MINUS_ASSIGN","MULT_ASSIGN","DIV_ASSIGN","MOD_ASSIGN","AND_ASSIGN","XOR_ASSIGN","OR_ASSIGN","STAR","DIVIDE","MODULE","PLUS","MINUS","DIV","MOD","EQUAL_SYMBOL","GREATER_SYMBOL","LESS_SYMBOL","EXCLAMATION_SYMBOL","BIT_NOT_OP","BIT_OR_OP","BIT_AND_OP","BIT_XOR_OP","DOT","LR_BRACKET","RR_BRACKET","COMMA","SEMI","AT_SIGN","ZERO_DECIMAL","ONE_DECIMAL","TWO_DECIMAL","SINGLE_QUOTE_SYMB","DOUBLE_QUOTE_SYMB","REVERSE_QUOTE_SYMB","COLON_SYMB","QUOTE_SYMB","CHARSET_REVERSE_QOUTE_STRING","FILESIZE_LITERAL","START_NATIONAL_STRING_LITERAL","STRING_LITERAL","DECIMAL_LITERAL","HEXADECIMAL_LITERAL","REAL_LITERAL","NULL_SPEC_LITERAL","BIT_STRING","STRING_CHARSET_NAME","DOT_ID","ID","REVERSE_QUOTE_ID","HOST_IP_ADDRESS","LOCAL_ID","GLOBAL_ID","CHARSET_NAME","EXPONENT_NUM_PART","ID_LITERAL","DQUOTA_STRING","SQUOTA_STRING","BQUOTA_STRING","HEX_DIGIT","DEC_DIGIT","BIT_STRING_L","IP_ADDRESS","ERROR_RECONGNIGION"],Ki._serializedATN=[4,0,1161,13703,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,2,265,7,265,2,266,7,266,2,267,7,267,2,268,7,268,2,269,7,269,2,270,7,270,2,271,7,271,2,272,7,272,2,273,7,273,2,274,7,274,2,275,7,275,2,276,7,276,2,277,7,277,2,278,7,278,2,279,7,279,2,280,7,280,2,281,7,281,2,282,7,282,2,283,7,283,2,284,7,284,2,285,7,285,2,286,7,286,2,287,7,287,2,288,7,288,2,289,7,289,2,290,7,290,2,291,7,291,2,292,7,292,2,293,7,293,2,294,7,294,2,295,7,295,2,296,7,296,2,297,7,297,2,298,7,298,2,299,7,299,2,300,7,300,2,301,7,301,2,302,7,302,2,303,7,303,2,304,7,304,2,305,7,305,2,306,7,306,2,307,7,307,2,308,7,308,2,309,7,309,2,310,7,310,2,311,7,311,2,312,7,312,2,313,7,313,2,314,7,314,2,315,7,315,2,316,7,316,2,317,7,317,2,318,7,318,2,319,7,319,2,320,7,320,2,321,7,321,2,322,7,322,2,323,7,323,2,324,7,324,2,325,7,325,2,326,7,326,2,327,7,327,2,328,7,328,2,329,7,329,2,330,7,330,2,331,7,331,2,332,7,332,2,333,7,333,2,334,7,334,2,335,7,335,2,336,7,336,2,337,7,337,2,338,7,338,2,339,7,339,2,340,7,340,2,341,7,341,2,342,7,342,2,343,7,343,2,344,7,344,2,345,7,345,2,346,7,346,2,347,7,347,2,348,7,348,2,349,7,349,2,350,7,350,2,351,7,351,2,352,7,352,2,353,7,353,2,354,7,354,2,355,7,355,2,356,7,356,2,357,7,357,2,358,7,358,2,359,7,359,2,360,7,360,2,361,7,361,2,362,7,362,2,363,7,363,2,364,7,364,2,365,7,365,2,366,7,366,2,367,7,367,2,368,7,368,2,369,7,369,2,370,7,370,2,371,7,371,2,372,7,372,2,373,7,373,2,374,7,374,2,375,7,375,2,376,7,376,2,377,7,377,2,378,7,378,2,379,7,379,2,380,7,380,2,381,7,381,2,382,7,382,2,383,7,383,2,384,7,384,2,385,7,385,2,386,7,386,2,387,7,387,2,388,7,388,2,389,7,389,2,390,7,390,2,391,7,391,2,392,7,392,2,393,7,393,2,394,7,394,2,395,7,395,2,396,7,396,2,397,7,397,2,398,7,398,2,399,7,399,2,400,7,400,2,401,7,401,2,402,7,402,2,403,7,403,2,404,7,404,2,405,7,405,2,406,7,406,2,407,7,407,2,408,7,408,2,409,7,409,2,410,7,410,2,411,7,411,2,412,7,412,2,413,7,413,2,414,7,414,2,415,7,415,2,416,7,416,2,417,7,417,2,418,7,418,2,419,7,419,2,420,7,420,2,421,7,421,2,422,7,422,2,423,7,423,2,424,7,424,2,425,7,425,2,426,7,426,2,427,7,427,2,428,7,428,2,429,7,429,2,430,7,430,2,431,7,431,2,432,7,432,2,433,7,433,2,434,7,434,2,435,7,435,2,436,7,436,2,437,7,437,2,438,7,438,2,439,7,439,2,440,7,440,2,441,7,441,2,442,7,442,2,443,7,443,2,444,7,444,2,445,7,445,2,446,7,446,2,447,7,447,2,448,7,448,2,449,7,449,2,450,7,450,2,451,7,451,2,452,7,452,2,453,7,453,2,454,7,454,2,455,7,455,2,456,7,456,2,457,7,457,2,458,7,458,2,459,7,459,2,460,7,460,2,461,7,461,2,462,7,462,2,463,7,463,2,464,7,464,2,465,7,465,2,466,7,466,2,467,7,467,2,468,7,468,2,469,7,469,2,470,7,470,2,471,7,471,2,472,7,472,2,473,7,473,2,474,7,474,2,475,7,475,2,476,7,476,2,477,7,477,2,478,7,478,2,479,7,479,2,480,7,480,2,481,7,481,2,482,7,482,2,483,7,483,2,484,7,484,2,485,7,485,2,486,7,486,2,487,7,487,2,488,7,488,2,489,7,489,2,490,7,490,2,491,7,491,2,492,7,492,2,493,7,493,2,494,7,494,2,495,7,495,2,496,7,496,2,497,7,497,2,498,7,498,2,499,7,499,2,500,7,500,2,501,7,501,2,502,7,502,2,503,7,503,2,504,7,504,2,505,7,505,2,506,7,506,2,507,7,507,2,508,7,508,2,509,7,509,2,510,7,510,2,511,7,511,2,512,7,512,2,513,7,513,2,514,7,514,2,515,7,515,2,516,7,516,2,517,7,517,2,518,7,518,2,519,7,519,2,520,7,520,2,521,7,521,2,522,7,522,2,523,7,523,2,524,7,524,2,525,7,525,2,526,7,526,2,527,7,527,2,528,7,528,2,529,7,529,2,530,7,530,2,531,7,531,2,532,7,532,2,533,7,533,2,534,7,534,2,535,7,535,2,536,7,536,2,537,7,537,2,538,7,538,2,539,7,539,2,540,7,540,2,541,7,541,2,542,7,542,2,543,7,543,2,544,7,544,2,545,7,545,2,546,7,546,2,547,7,547,2,548,7,548,2,549,7,549,2,550,7,550,2,551,7,551,2,552,7,552,2,553,7,553,2,554,7,554,2,555,7,555,2,556,7,556,2,557,7,557,2,558,7,558,2,559,7,559,2,560,7,560,2,561,7,561,2,562,7,562,2,563,7,563,2,564,7,564,2,565,7,565,2,566,7,566,2,567,7,567,2,568,7,568,2,569,7,569,2,570,7,570,2,571,7,571,2,572,7,572,2,573,7,573,2,574,7,574,2,575,7,575,2,576,7,576,2,577,7,577,2,578,7,578,2,579,7,579,2,580,7,580,2,581,7,581,2,582,7,582,2,583,7,583,2,584,7,584,2,585,7,585,2,586,7,586,2,587,7,587,2,588,7,588,2,589,7,589,2,590,7,590,2,591,7,591,2,592,7,592,2,593,7,593,2,594,7,594,2,595,7,595,2,596,7,596,2,597,7,597,2,598,7,598,2,599,7,599,2,600,7,600,2,601,7,601,2,602,7,602,2,603,7,603,2,604,7,604,2,605,7,605,2,606,7,606,2,607,7,607,2,608,7,608,2,609,7,609,2,610,7,610,2,611,7,611,2,612,7,612,2,613,7,613,2,614,7,614,2,615,7,615,2,616,7,616,2,617,7,617,2,618,7,618,2,619,7,619,2,620,7,620,2,621,7,621,2,622,7,622,2,623,7,623,2,624,7,624,2,625,7,625,2,626,7,626,2,627,7,627,2,628,7,628,2,629,7,629,2,630,7,630,2,631,7,631,2,632,7,632,2,633,7,633,2,634,7,634,2,635,7,635,2,636,7,636,2,637,7,637,2,638,7,638,2,639,7,639,2,640,7,640,2,641,7,641,2,642,7,642,2,643,7,643,2,644,7,644,2,645,7,645,2,646,7,646,2,647,7,647,2,648,7,648,2,649,7,649,2,650,7,650,2,651,7,651,2,652,7,652,2,653,7,653,2,654,7,654,2,655,7,655,2,656,7,656,2,657,7,657,2,658,7,658,2,659,7,659,2,660,7,660,2,661,7,661,2,662,7,662,2,663,7,663,2,664,7,664,2,665,7,665,2,666,7,666,2,667,7,667,2,668,7,668,2,669,7,669,2,670,7,670,2,671,7,671,2,672,7,672,2,673,7,673,2,674,7,674,2,675,7,675,2,676,7,676,2,677,7,677,2,678,7,678,2,679,7,679,2,680,7,680,2,681,7,681,2,682,7,682,2,683,7,683,2,684,7,684,2,685,7,685,2,686,7,686,2,687,7,687,2,688,7,688,2,689,7,689,2,690,7,690,2,691,7,691,2,692,7,692,2,693,7,693,2,694,7,694,2,695,7,695,2,696,7,696,2,697,7,697,2,698,7,698,2,699,7,699,2,700,7,700,2,701,7,701,2,702,7,702,2,703,7,703,2,704,7,704,2,705,7,705,2,706,7,706,2,707,7,707,2,708,7,708,2,709,7,709,2,710,7,710,2,711,7,711,2,712,7,712,2,713,7,713,2,714,7,714,2,715,7,715,2,716,7,716,2,717,7,717,2,718,7,718,2,719,7,719,2,720,7,720,2,721,7,721,2,722,7,722,2,723,7,723,2,724,7,724,2,725,7,725,2,726,7,726,2,727,7,727,2,728,7,728,2,729,7,729,2,730,7,730,2,731,7,731,2,732,7,732,2,733,7,733,2,734,7,734,2,735,7,735,2,736,7,736,2,737,7,737,2,738,7,738,2,739,7,739,2,740,7,740,2,741,7,741,2,742,7,742,2,743,7,743,2,744,7,744,2,745,7,745,2,746,7,746,2,747,7,747,2,748,7,748,2,749,7,749,2,750,7,750,2,751,7,751,2,752,7,752,2,753,7,753,2,754,7,754,2,755,7,755,2,756,7,756,2,757,7,757,2,758,7,758,2,759,7,759,2,760,7,760,2,761,7,761,2,762,7,762,2,763,7,763,2,764,7,764,2,765,7,765,2,766,7,766,2,767,7,767,2,768,7,768,2,769,7,769,2,770,7,770,2,771,7,771,2,772,7,772,2,773,7,773,2,774,7,774,2,775,7,775,2,776,7,776,2,777,7,777,2,778,7,778,2,779,7,779,2,780,7,780,2,781,7,781,2,782,7,782,2,783,7,783,2,784,7,784,2,785,7,785,2,786,7,786,2,787,7,787,2,788,7,788,2,789,7,789,2,790,7,790,2,791,7,791,2,792,7,792,2,793,7,793,2,794,7,794,2,795,7,795,2,796,7,796,2,797,7,797,2,798,7,798,2,799,7,799,2,800,7,800,2,801,7,801,2,802,7,802,2,803,7,803,2,804,7,804,2,805,7,805,2,806,7,806,2,807,7,807,2,808,7,808,2,809,7,809,2,810,7,810,2,811,7,811,2,812,7,812,2,813,7,813,2,814,7,814,2,815,7,815,2,816,7,816,2,817,7,817,2,818,7,818,2,819,7,819,2,820,7,820,2,821,7,821,2,822,7,822,2,823,7,823,2,824,7,824,2,825,7,825,2,826,7,826,2,827,7,827,2,828,7,828,2,829,7,829,2,830,7,830,2,831,7,831,2,832,7,832,2,833,7,833,2,834,7,834,2,835,7,835,2,836,7,836,2,837,7,837,2,838,7,838,2,839,7,839,2,840,7,840,2,841,7,841,2,842,7,842,2,843,7,843,2,844,7,844,2,845,7,845,2,846,7,846,2,847,7,847,2,848,7,848,2,849,7,849,2,850,7,850,2,851,7,851,2,852,7,852,2,853,7,853,2,854,7,854,2,855,7,855,2,856,7,856,2,857,7,857,2,858,7,858,2,859,7,859,2,860,7,860,2,861,7,861,2,862,7,862,2,863,7,863,2,864,7,864,2,865,7,865,2,866,7,866,2,867,7,867,2,868,7,868,2,869,7,869,2,870,7,870,2,871,7,871,2,872,7,872,2,873,7,873,2,874,7,874,2,875,7,875,2,876,7,876,2,877,7,877,2,878,7,878,2,879,7,879,2,880,7,880,2,881,7,881,2,882,7,882,2,883,7,883,2,884,7,884,2,885,7,885,2,886,7,886,2,887,7,887,2,888,7,888,2,889,7,889,2,890,7,890,2,891,7,891,2,892,7,892,2,893,7,893,2,894,7,894,2,895,7,895,2,896,7,896,2,897,7,897,2,898,7,898,2,899,7,899,2,900,7,900,2,901,7,901,2,902,7,902,2,903,7,903,2,904,7,904,2,905,7,905,2,906,7,906,2,907,7,907,2,908,7,908,2,909,7,909,2,910,7,910,2,911,7,911,2,912,7,912,2,913,7,913,2,914,7,914,2,915,7,915,2,916,7,916,2,917,7,917,2,918,7,918,2,919,7,919,2,920,7,920,2,921,7,921,2,922,7,922,2,923,7,923,2,924,7,924,2,925,7,925,2,926,7,926,2,927,7,927,2,928,7,928,2,929,7,929,2,930,7,930,2,931,7,931,2,932,7,932,2,933,7,933,2,934,7,934,2,935,7,935,2,936,7,936,2,937,7,937,2,938,7,938,2,939,7,939,2,940,7,940,2,941,7,941,2,942,7,942,2,943,7,943,2,944,7,944,2,945,7,945,2,946,7,946,2,947,7,947,2,948,7,948,2,949,7,949,2,950,7,950,2,951,7,951,2,952,7,952,2,953,7,953,2,954,7,954,2,955,7,955,2,956,7,956,2,957,7,957,2,958,7,958,2,959,7,959,2,960,7,960,2,961,7,961,2,962,7,962,2,963,7,963,2,964,7,964,2,965,7,965,2,966,7,966,2,967,7,967,2,968,7,968,2,969,7,969,2,970,7,970,2,971,7,971,2,972,7,972,2,973,7,973,2,974,7,974,2,975,7,975,2,976,7,976,2,977,7,977,2,978,7,978,2,979,7,979,2,980,7,980,2,981,7,981,2,982,7,982,2,983,7,983,2,984,7,984,2,985,7,985,2,986,7,986,2,987,7,987,2,988,7,988,2,989,7,989,2,990,7,990,2,991,7,991,2,992,7,992,2,993,7,993,2,994,7,994,2,995,7,995,2,996,7,996,2,997,7,997,2,998,7,998,2,999,7,999,2,1e3,7,1e3,2,1001,7,1001,2,1002,7,1002,2,1003,7,1003,2,1004,7,1004,2,1005,7,1005,2,1006,7,1006,2,1007,7,1007,2,1008,7,1008,2,1009,7,1009,2,1010,7,1010,2,1011,7,1011,2,1012,7,1012,2,1013,7,1013,2,1014,7,1014,2,1015,7,1015,2,1016,7,1016,2,1017,7,1017,2,1018,7,1018,2,1019,7,1019,2,1020,7,1020,2,1021,7,1021,2,1022,7,1022,2,1023,7,1023,2,1024,7,1024,2,1025,7,1025,2,1026,7,1026,2,1027,7,1027,2,1028,7,1028,2,1029,7,1029,2,1030,7,1030,2,1031,7,1031,2,1032,7,1032,2,1033,7,1033,2,1034,7,1034,2,1035,7,1035,2,1036,7,1036,2,1037,7,1037,2,1038,7,1038,2,1039,7,1039,2,1040,7,1040,2,1041,7,1041,2,1042,7,1042,2,1043,7,1043,2,1044,7,1044,2,1045,7,1045,2,1046,7,1046,2,1047,7,1047,2,1048,7,1048,2,1049,7,1049,2,1050,7,1050,2,1051,7,1051,2,1052,7,1052,2,1053,7,1053,2,1054,7,1054,2,1055,7,1055,2,1056,7,1056,2,1057,7,1057,2,1058,7,1058,2,1059,7,1059,2,1060,7,1060,2,1061,7,1061,2,1062,7,1062,2,1063,7,1063,2,1064,7,1064,2,1065,7,1065,2,1066,7,1066,2,1067,7,1067,2,1068,7,1068,2,1069,7,1069,2,1070,7,1070,2,1071,7,1071,2,1072,7,1072,2,1073,7,1073,2,1074,7,1074,2,1075,7,1075,2,1076,7,1076,2,1077,7,1077,2,1078,7,1078,2,1079,7,1079,2,1080,7,1080,2,1081,7,1081,2,1082,7,1082,2,1083,7,1083,2,1084,7,1084,2,1085,7,1085,2,1086,7,1086,2,1087,7,1087,2,1088,7,1088,2,1089,7,1089,2,1090,7,1090,2,1091,7,1091,2,1092,7,1092,2,1093,7,1093,2,1094,7,1094,2,1095,7,1095,2,1096,7,1096,2,1097,7,1097,2,1098,7,1098,2,1099,7,1099,2,1100,7,1100,2,1101,7,1101,2,1102,7,1102,2,1103,7,1103,2,1104,7,1104,2,1105,7,1105,2,1106,7,1106,2,1107,7,1107,2,1108,7,1108,2,1109,7,1109,2,1110,7,1110,2,1111,7,1111,2,1112,7,1112,2,1113,7,1113,2,1114,7,1114,2,1115,7,1115,2,1116,7,1116,2,1117,7,1117,2,1118,7,1118,2,1119,7,1119,2,1120,7,1120,2,1121,7,1121,2,1122,7,1122,2,1123,7,1123,2,1124,7,1124,2,1125,7,1125,2,1126,7,1126,2,1127,7,1127,2,1128,7,1128,2,1129,7,1129,2,1130,7,1130,2,1131,7,1131,2,1132,7,1132,2,1133,7,1133,2,1134,7,1134,2,1135,7,1135,2,1136,7,1136,2,1137,7,1137,2,1138,7,1138,2,1139,7,1139,2,1140,7,1140,2,1141,7,1141,2,1142,7,1142,2,1143,7,1143,2,1144,7,1144,2,1145,7,1145,2,1146,7,1146,2,1147,7,1147,2,1148,7,1148,2,1149,7,1149,2,1150,7,1150,2,1151,7,1151,2,1152,7,1152,2,1153,7,1153,2,1154,7,1154,2,1155,7,1155,2,1156,7,1156,2,1157,7,1157,2,1158,7,1158,2,1159,7,1159,2,1160,7,1160,2,1161,7,1161,2,1162,7,1162,2,1163,7,1163,2,1164,7,1164,2,1165,7,1165,2,1166,7,1166,2,1167,7,1167,2,1168,7,1168,2,1169,7,1169,2,1170,7,1170,2,1171,7,1171,1,0,4,0,2347,8,0,11,0,12,0,2348,1,0,1,0,1,1,1,1,1,1,1,1,1,1,4,1,2358,8,1,11,1,12,1,2359,1,1,1,1,1,1,1,1,1,1,1,2,1,2,1,2,1,2,5,2,2371,8,2,10,2,12,2,2374,9,2,1,2,1,2,1,2,1,2,1,2,1,3,1,3,1,3,1,3,5,3,2385,8,3,10,3,12,3,2388,9,3,1,3,3,3,2391,8,3,1,3,5,3,2394,8,3,10,3,12,3,2397,9,3,1,3,3,3,2400,8,3,1,3,1,3,3,3,2404,8,3,1,3,1,3,1,3,1,3,3,3,2410,8,3,1,3,1,3,3,3,2414,8,3,3,3,2416,8,3,1,3,1,3,1,4,1,4,1,4,1,4,1,5,1,5,1,5,1,5,1,6,1,6,1,6,1,6,1,6,1,6,1,7,1,7,1,7,1,7,1,7,1,7,1,7,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,9,1,9,1,9,1,9,1,10,1,10,1,10,1,10,1,10,1,10,1,11,1,11,1,11,1,12,1,12,1,12,1,12,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,14,1,14,1,14,1,14,1,14,1,14,1,14,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,16,1,16,1,16,1,16,1,16,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,18,1,18,1,18,1,19,1,19,1,19,1,19,1,19,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,21,1,21,1,21,1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,23,1,23,1,23,1,23,1,23,1,23,1,23,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,25,1,25,1,25,1,25,1,25,1,25,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,28,1,28,1,28,1,28,1,28,1,28,1,28,1,28,1,28,1,28,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,32,1,32,1,32,1,32,1,32,1,32,1,32,1,33,1,33,1,33,1,33,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,40,1,40,1,40,1,40,1,40,1,40,1,40,1,40,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,43,1,43,1,43,1,43,1,43,1,43,1,43,1,44,1,44,1,44,1,44,1,44,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,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,50,1,50,1,50,1,50,1,50,1,51,1,51,1,51,1,51,1,51,1,52,1,52,1,52,1,52,1,52,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,54,1,54,1,54,1,54,1,54,1,54,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,60,1,60,1,60,1,60,1,60,1,61,1,61,1,61,1,61,1,61,1,61,1,61,1,61,1,62,1,62,1,62,1,62,1,62,1,62,1,63,1,63,1,63,1,63,1,63,1,63,1,64,1,64,1,64,1,64,1,65,1,65,1,65,1,65,1,65,1,65,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,67,1,67,1,67,1,67,1,67,1,68,1,68,1,68,1,68,1,68,1,68,1,68,1,68,1,68,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,71,1,71,1,71,1,72,1,72,1,72,1,72,1,72,1,72,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,76,1,76,1,76,1,77,1,77,1,77,1,77,1,77,1,77,1,77,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,79,1,79,1,79,1,80,1,80,1,80,1,80,1,80,1,80,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,82,1,82,1,82,1,82,1,82,1,82,1,83,1,83,1,83,1,83,1,83,1,83,1,84,1,84,1,84,1,84,1,84,1,84,1,84,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,86,1,86,1,86,1,86,1,86,1,87,1,87,1,87,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,89,1,89,1,89,1,89,1,89,1,90,1,90,1,90,1,90,1,91,1,91,1,91,1,91,1,91,1,92,1,92,1,92,1,92,1,92,1,93,1,93,1,93,1,93,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,95,1,95,1,95,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,1,97,1,97,1,97,1,97,1,97,1,98,1,98,1,98,1,98,1,98,1,98,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,100,1,100,1,100,1,100,1,100,1,100,1,101,1,101,1,101,1,101,1,101,1,102,1,102,1,102,1,102,1,102,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,104,1,104,1,104,1,104,1,104,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,108,1,108,1,108,1,108,1,108,1,108,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,113,1,113,1,113,1,113,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,115,1,115,1,115,1,115,1,115,1,116,1,116,1,116,1,116,1,116,1,116,1,116,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,119,1,119,1,119,1,119,1,119,1,119,1,119,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,122,1,122,1,122,1,123,1,123,1,123,1,123,1,123,1,123,1,124,1,124,1,124,1,124,1,125,1,125,1,125,1,125,1,125,1,125,1,126,1,126,1,126,1,126,1,126,1,126,1,126,1,126,1,127,1,127,1,127,1,127,1,127,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,131,1,131,1,131,1,131,1,131,1,131,1,132,1,132,1,132,1,132,1,132,1,132,1,133,1,133,1,133,1,133,1,133,1,134,1,134,1,134,1,134,1,134,1,134,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,136,1,136,1,136,1,136,1,136,1,136,1,136,1,137,1,137,1,137,1,137,1,137,1,137,1,137,1,137,1,138,1,138,1,138,1,138,1,138,1,138,1,138,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,144,1,144,1,144,1,144,1,144,1,144,1,144,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,147,1,147,1,147,1,147,1,147,1,147,1,148,1,148,1,148,1,148,1,148,1,148,1,149,1,149,1,149,1,149,1,149,1,149,1,149,1,150,1,150,1,150,1,150,1,150,1,150,1,150,1,150,1,151,1,151,1,151,1,151,1,151,1,151,1,151,1,152,1,152,1,152,1,152,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,154,1,154,1,154,1,154,1,154,1,155,1,155,1,155,1,155,1,155,1,155,1,155,1,156,1,156,1,156,1,156,1,156,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,159,1,159,1,159,1,159,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,161,1,161,1,161,1,161,1,161,1,161,1,161,1,161,1,161,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,166,1,166,1,166,1,166,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,171,1,171,1,171,1,171,1,171,1,171,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,173,1,173,1,173,1,173,1,173,1,174,1,174,1,174,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,176,1,176,1,176,1,176,1,176,1,176,1,176,1,176,1,177,1,177,1,177,1,177,1,177,1,178,1,178,1,178,1,178,1,178,1,179,1,179,1,179,1,179,1,179,1,179,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,184,1,184,1,184,1,184,1,184,1,184,1,185,1,185,1,185,1,185,1,186,1,186,1,186,1,186,1,186,1,186,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,188,1,188,1,188,1,188,1,188,1,189,1,189,1,189,1,189,1,189,1,189,1,190,1,190,1,190,1,190,1,190,1,190,1,191,1,191,1,191,1,191,1,191,1,192,1,192,1,192,1,192,1,192,1,192,1,193,1,193,1,193,1,193,1,194,1,194,1,194,1,194,1,194,1,194,1,194,1,194,1,194,1,195,1,195,1,195,1,195,1,195,1,195,1,195,1,195,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,199,1,199,1,199,1,199,1,200,1,200,1,200,1,200,1,200,1,201,1,201,1,201,1,201,1,201,1,202,1,202,1,202,1,202,1,202,1,203,1,203,1,203,1,203,1,203,1,204,1,204,1,204,1,204,1,204,1,205,1,205,1,205,1,205,1,205,1,205,1,205,1,205,1,206,1,206,1,206,1,206,1,206,1,206,1,206,1,207,1,207,1,207,1,207,1,207,1,208,1,208,1,208,1,208,1,208,1,208,1,208,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,210,1,210,1,210,1,210,1,210,1,210,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,214,1,214,1,214,1,214,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,216,1,216,1,216,1,216,1,216,1,217,1,217,1,217,1,217,1,217,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,219,1,219,1,219,1,219,1,219,1,219,1,219,1,219,1,219,1,220,1,220,1,220,1,220,1,220,1,221,1,221,1,221,1,221,1,221,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,223,1,223,1,223,1,223,1,223,1,223,1,223,1,223,1,223,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,228,1,228,1,228,1,228,1,228,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,230,1,230,1,230,1,230,1,230,1,231,1,231,1,231,1,231,1,231,1,231,1,231,1,231,1,231,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,233,1,233,1,233,1,233,1,233,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,235,1,235,1,235,1,235,1,235,1,235,1,235,1,235,1,235,1,236,1,236,1,236,1,236,1,236,1,237,1,237,1,237,1,237,1,237,1,237,1,237,1,237,1,238,1,238,1,238,1,238,1,238,1,238,1,238,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,256,1,256,1,256,1,256,1,256,1,256,1,256,1,256,1,256,1,256,1,256,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,277,1,277,1,277,1,277,1,277,1,277,1,277,1,277,1,277,1,277,1,277,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,282,1,282,1,282,1,282,1,282,1,282,1,282,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,284,1,284,1,284,1,284,1,284,1,285,1,285,1,285,1,285,1,286,1,286,1,286,1,286,1,286,1,286,1,286,1,286,1,287,1,287,1,287,1,287,1,287,1,287,1,287,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,289,1,289,1,289,1,289,1,289,1,289,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,294,1,294,1,294,1,294,1,295,1,295,1,295,1,295,1,295,1,295,1,295,1,295,1,295,1,295,1,295,1,296,1,296,1,296,1,296,1,296,1,297,1,297,1,297,1,297,1,298,1,298,1,298,1,298,1,299,1,299,1,299,1,299,1,299,1,299,1,300,1,300,1,300,1,300,1,300,1,300,1,300,1,300,1,300,1,300,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,302,1,302,1,302,1,302,1,302,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,304,1,304,1,304,1,304,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,308,1,308,1,308,1,308,1,309,1,309,1,309,1,309,1,309,1,309,1,309,1,309,1,310,1,310,1,310,1,310,1,310,1,310,1,310,1,310,1,310,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,317,1,317,1,317,1,317,1,317,1,317,1,317,1,317,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,320,1,320,1,320,1,320,1,320,1,320,1,320,1,320,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,322,1,322,1,322,1,322,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,324,1,324,1,324,1,324,1,324,1,324,1,324,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,327,1,327,1,327,1,327,1,327,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,329,1,329,1,329,1,329,1,329,1,329,1,329,1,329,1,329,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,332,1,332,1,332,1,332,1,332,1,332,1,332,1,333,1,333,1,333,1,333,1,333,1,333,1,334,1,334,1,334,1,334,1,334,1,334,1,334,1,334,1,334,1,334,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,336,1,336,1,336,1,336,1,337,1,337,1,337,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,343,1,343,1,343,1,343,1,343,1,343,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,345,1,345,1,345,1,345,1,346,1,346,1,346,1,346,1,346,1,346,1,347,1,347,1,347,1,347,1,347,1,348,1,348,1,348,1,348,1,348,1,348,1,348,1,348,1,349,1,349,1,349,1,349,1,349,1,349,1,350,1,350,1,350,1,350,1,350,1,350,1,351,1,351,1,351,1,351,1,351,1,351,1,351,1,351,1,351,1,352,1,352,1,352,1,352,1,352,1,352,1,353,1,353,1,353,1,353,1,353,1,353,1,353,1,353,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,355,1,355,1,355,1,355,1,355,1,355,1,355,1,355,1,355,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,357,1,357,1,357,1,357,1,357,1,357,1,357,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,360,1,360,1,360,1,360,1,360,1,360,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,363,1,363,1,363,1,363,1,363,1,364,1,364,1,364,1,364,1,364,1,364,1,364,1,364,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,367,1,367,1,367,1,367,1,367,1,367,1,367,1,367,1,368,1,368,1,368,1,368,1,368,1,368,1,368,1,369,1,369,1,369,1,369,1,369,1,369,1,369,1,369,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,372,1,372,1,372,1,372,1,372,1,372,1,372,1,372,1,372,1,372,1,372,1,372,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,380,1,380,1,380,1,380,1,380,1,380,1,380,1,380,1,380,1,381,1,381,1,381,1,381,1,381,1,381,1,381,1,381,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,383,1,383,1,383,1,383,1,383,1,384,1,384,1,384,1,384,1,385,1,385,1,385,1,385,1,385,1,385,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,387,1,387,1,387,1,387,1,387,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,394,1,394,1,394,1,394,1,394,1,394,1,394,1,394,1,394,1,394,1,395,1,395,1,395,1,395,1,395,1,395,1,395,1,395,1,396,1,396,1,396,1,396,1,396,1,396,1,396,1,396,1,397,1,397,1,397,1,397,1,397,1,398,1,398,1,398,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,400,1,400,1,400,1,400,1,400,1,400,1,400,1,400,1,400,1,400,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,402,1,402,1,402,1,402,1,402,1,402,1,402,1,403,1,403,1,403,1,403,1,403,1,403,1,403,1,403,1,403,1,403,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,406,1,406,1,406,1,406,1,407,1,407,1,407,1,407,1,407,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,409,1,409,1,409,1,409,1,409,1,409,1,409,1,409,1,410,1,410,1,410,1,410,1,410,1,410,1,411,1,411,1,411,1,411,1,411,1,411,1,411,1,412,1,412,1,412,1,412,1,412,1,412,1,412,1,413,1,413,1,413,1,413,1,413,1,414,1,414,1,414,1,414,1,414,1,414,1,415,1,415,1,415,1,415,1,415,1,415,1,415,1,416,1,416,1,416,1,416,1,416,1,416,1,417,1,417,1,417,1,417,1,417,1,417,1,417,1,417,1,417,1,418,1,418,1,418,1,418,1,418,1,418,1,418,1,418,1,418,1,418,1,419,1,419,1,419,1,419,1,419,1,419,1,419,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,424,1,424,1,424,1,424,1,424,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,426,1,426,1,426,1,426,1,426,1,426,1,426,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,428,1,428,1,428,1,428,1,428,1,428,1,428,1,429,1,429,1,429,1,429,1,429,1,429,1,430,1,430,1,430,1,430,1,430,1,430,1,431,1,431,1,431,1,431,1,431,1,431,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,433,1,433,1,433,1,433,1,433,1,433,1,433,1,433,1,434,1,434,1,434,1,434,1,434,1,434,1,435,1,435,1,435,1,435,1,435,1,436,1,436,1,436,1,436,1,436,1,436,1,436,1,436,1,436,1,437,1,437,1,437,1,437,1,437,1,437,1,437,1,437,1,438,1,438,1,438,1,438,1,438,1,438,1,438,1,439,1,439,1,439,1,439,1,439,1,439,1,439,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,441,1,441,1,441,1,441,1,441,1,441,1,441,1,441,1,442,1,442,1,442,1,442,1,442,1,443,1,443,1,443,1,443,1,443,1,444,1,444,1,444,1,444,1,444,1,444,1,444,1,444,1,445,1,445,1,445,1,445,1,445,1,446,1,446,1,446,1,446,1,446,1,446,1,447,1,447,1,447,1,447,1,447,1,447,1,447,1,447,1,447,1,447,1,447,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,449,1,449,1,449,1,449,1,449,1,449,1,449,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,451,1,451,1,451,1,451,1,451,1,451,1,451,1,451,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,453,1,453,1,453,1,453,1,453,1,453,1,453,1,453,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,456,1,456,1,456,1,456,1,456,1,456,1,456,1,456,1,456,1,457,1,457,1,457,1,457,1,457,1,457,1,457,1,457,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,459,1,459,1,459,1,459,1,459,1,459,1,459,1,459,1,460,1,460,1,460,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,462,1,462,1,462,1,462,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,464,1,464,1,464,1,464,1,464,1,464,1,464,1,465,1,465,1,465,1,465,1,465,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,468,1,468,1,468,1,468,1,468,1,469,1,469,1,469,1,469,1,469,1,469,1,469,1,470,1,470,1,470,1,470,1,470,1,471,1,471,1,471,1,471,1,471,1,471,1,472,1,472,1,472,1,472,1,472,1,473,1,473,1,473,1,473,1,473,1,473,1,474,1,474,1,474,1,474,1,474,1,474,1,474,1,474,1,475,1,475,1,475,1,475,1,475,1,476,1,476,1,476,1,476,1,476,1,476,1,476,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,487,1,487,1,487,1,487,1,487,1,487,1,487,1,487,1,487,1,487,1,487,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,496,1,496,1,496,1,496,1,496,1,496,1,496,1,496,1,496,1,496,1,496,1,496,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,500,1,500,1,500,1,500,1,500,1,500,1,500,1,500,1,500,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,504,1,504,1,504,1,504,1,504,1,504,1,504,1,505,1,505,1,505,1,505,1,505,1,505,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,507,1,507,1,507,1,507,1,508,1,508,1,508,1,508,1,508,1,508,1,508,1,508,1,509,1,509,1,509,1,509,1,509,1,509,1,509,1,509,1,509,1,510,1,510,1,510,1,510,1,510,1,511,1,511,1,511,1,511,1,511,1,511,1,511,1,512,1,512,1,512,1,512,1,512,1,512,1,513,1,513,1,513,1,513,1,513,1,513,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,515,1,515,1,515,1,515,1,515,1,516,1,516,1,516,1,516,1,516,1,516,1,517,1,517,1,517,1,517,1,517,1,517,1,518,1,518,1,518,1,518,1,518,1,518,1,519,1,519,1,519,1,519,1,519,1,520,1,520,1,520,1,521,1,521,1,521,1,521,1,521,1,521,1,521,1,521,1,522,1,522,1,522,1,522,1,522,1,522,1,522,1,523,1,523,1,523,1,523,1,523,1,523,1,523,1,523,1,524,1,524,1,524,1,524,1,524,1,524,1,524,1,524,1,524,1,524,1,524,1,525,1,525,1,525,1,525,1,525,1,525,1,525,1,525,1,525,1,525,1,525,1,526,1,526,1,526,1,526,1,526,1,526,1,526,1,527,1,527,1,527,1,527,1,527,1,527,1,527,1,527,1,527,1,527,1,528,1,528,1,528,1,528,1,528,1,529,1,529,1,529,1,529,1,529,1,530,1,530,1,530,1,530,1,530,1,530,1,530,1,530,1,531,1,531,1,531,1,531,1,531,1,531,1,531,1,532,1,532,1,532,1,533,1,533,1,533,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,535,1,535,1,535,1,535,1,536,1,536,1,536,1,536,1,536,1,536,1,536,1,537,1,537,1,537,1,537,1,537,1,538,1,538,1,538,1,538,1,538,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,541,1,541,1,541,1,541,1,541,1,541,1,542,1,542,1,542,1,542,1,542,1,542,1,542,1,542,1,542,1,542,1,543,1,543,1,543,1,543,1,543,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,547,1,547,1,547,1,547,1,547,1,547,1,547,1,547,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,549,1,549,1,549,1,549,1,549,1,549,1,549,1,549,1,549,1,549,1,549,1,550,1,550,1,550,1,550,1,550,1,550,1,550,1,550,1,550,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,552,1,552,1,552,1,552,1,552,1,552,1,553,1,553,1,553,1,553,1,553,1,553,1,553,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,555,1,555,1,555,1,555,1,555,1,555,1,555,1,555,1,556,1,556,1,556,1,556,1,556,1,557,1,557,1,557,1,557,1,557,1,557,1,557,1,557,1,557,1,558,1,558,1,558,1,558,1,558,1,558,1,558,1,558,1,558,1,558,1,559,1,559,1,559,1,559,1,559,1,559,1,559,1,559,1,560,1,560,1,560,1,560,1,560,1,560,1,560,1,560,1,560,1,561,1,561,1,561,1,561,1,561,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,563,1,563,1,563,1,563,1,563,1,563,1,563,1,563,1,564,1,564,1,564,1,564,1,564,1,564,1,564,1,564,1,564,1,565,1,565,1,565,1,565,1,565,1,565,1,566,1,566,1,566,1,566,1,566,1,566,1,567,1,567,1,567,1,567,1,567,1,567,1,568,1,568,1,568,1,568,1,568,1,568,1,568,1,568,1,569,1,569,1,569,1,569,1,569,1,569,1,569,1,569,1,570,1,570,1,570,1,570,1,570,1,570,1,570,1,570,1,570,1,570,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,572,1,572,1,572,1,572,1,572,1,572,1,572,1,572,1,572,1,572,1,573,1,573,1,573,1,573,1,573,1,573,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,576,1,576,1,576,1,576,1,576,1,576,1,576,1,576,1,576,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,578,1,578,1,578,1,578,1,578,1,578,1,578,1,578,1,578,1,578,1,578,1,579,1,579,1,579,1,579,1,579,1,579,1,579,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,587,1,587,1,587,1,587,1,587,1,587,1,587,1,587,1,587,1,587,1,587,1,587,1,588,1,588,1,588,1,588,1,588,1,588,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,594,1,594,1,594,1,594,1,594,1,594,1,595,1,595,1,595,1,595,1,595,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,599,1,599,1,599,1,599,1,600,1,600,1,600,1,600,1,600,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,602,1,602,1,602,1,602,1,602,1,602,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,604,1,604,1,604,1,604,1,604,1,604,1,604,1,604,1,604,1,605,1,605,1,605,1,605,1,605,1,605,1,605,1,605,1,605,1,606,1,606,1,606,1,606,1,606,1,606,1,606,1,606,1,606,1,607,1,607,1,607,1,607,1,607,1,607,1,607,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,609,1,609,1,609,1,609,1,609,1,609,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,611,1,611,1,611,1,611,1,611,1,611,1,611,1,612,1,612,1,612,1,612,1,612,1,612,1,612,1,613,1,613,1,613,1,613,1,613,1,613,1,614,1,614,1,614,1,614,1,614,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,616,1,616,1,616,1,616,1,616,1,616,1,616,1,617,1,617,1,617,1,617,1,617,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,619,1,619,1,619,1,619,1,619,1,619,1,619,1,620,1,620,1,620,1,620,1,620,1,620,1,620,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,628,1,628,1,628,1,628,1,628,1,628,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,633,1,633,1,633,1,633,1,633,1,633,1,633,1,634,1,634,1,634,1,634,1,634,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,636,1,636,1,636,1,636,1,636,1,636,1,636,1,637,1,637,1,637,1,637,1,637,1,637,1,637,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,639,1,639,1,639,1,639,1,639,1,639,1,639,1,639,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,642,1,642,1,642,1,642,1,642,1,642,1,642,1,642,1,643,1,643,1,643,1,643,1,643,1,643,1,644,1,644,1,644,1,644,1,644,1,644,1,644,1,644,1,644,1,645,1,645,1,645,1,645,1,645,1,645,1,645,1,645,1,645,1,645,1,645,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,647,1,647,1,647,1,647,1,647,1,647,1,647,1,647,1,647,1,647,1,647,1,648,1,648,1,648,1,648,1,648,1,648,1,648,1,648,1,648,1,648,1,649,1,649,1,649,1,649,1,649,1,649,1,649,1,649,1,649,1,649,1,650,1,650,1,650,1,650,1,650,1,651,1,651,1,651,1,651,1,651,1,651,1,651,1,651,1,651,1,651,1,651,1,651,1,652,1,652,1,652,1,652,1,652,1,652,1,652,1,652,1,652,1,652,1,652,1,652,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,654,1,654,1,654,1,654,1,654,1,654,1,654,1,654,1,654,1,655,1,655,1,655,1,655,1,655,1,655,1,655,1,655,1,655,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,657,1,657,1,657,1,657,1,657,1,657,1,657,1,657,1,657,1,657,1,658,1,658,1,658,1,658,1,658,1,658,1,658,1,658,1,658,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,660,1,660,1,660,1,660,1,660,1,660,1,660,1,660,1,660,1,660,1,661,1,661,1,661,1,661,1,661,1,661,1,661,1,661,1,662,1,662,1,662,1,662,1,662,1,662,1,663,1,663,1,663,1,663,1,663,1,663,1,663,1,663,1,664,1,664,1,664,1,664,1,664,1,665,1,665,1,665,1,665,1,665,1,665,1,665,1,665,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,667,1,667,1,667,1,667,1,667,1,667,1,667,1,667,1,667,1,667,1,667,1,668,1,668,1,668,1,668,1,668,1,668,1,669,1,669,1,669,1,669,1,669,1,669,1,669,1,669,1,669,1,669,1,670,1,670,1,670,1,670,1,670,1,671,1,671,1,671,1,671,1,671,1,671,1,671,1,671,1,672,1,672,1,672,1,672,1,672,1,672,1,672,1,672,1,673,1,673,1,673,1,673,1,673,1,674,1,674,1,674,1,674,1,674,1,674,1,674,1,674,1,674,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,676,1,676,1,676,1,676,1,676,1,676,1,676,1,676,1,677,1,677,1,677,1,677,1,677,1,678,1,678,1,678,1,678,1,678,1,678,1,678,1,678,1,679,1,679,1,679,1,679,1,679,1,680,1,680,1,680,1,681,1,681,1,681,1,681,1,682,1,682,1,682,1,682,1,683,1,683,1,683,1,683,1,684,1,684,1,684,1,684,1,685,1,685,1,685,1,685,1,686,1,686,1,686,1,686,1,687,1,687,1,687,1,687,1,687,1,687,1,687,1,687,1,687,1,688,1,688,1,688,1,688,1,688,1,688,1,688,1,688,1,689,1,689,1,689,1,689,1,689,1,689,1,690,1,690,1,690,1,690,1,691,1,691,1,691,1,691,1,691,1,692,1,692,1,692,1,692,1,692,1,692,1,692,1,693,1,693,1,693,1,693,1,693,1,694,1,694,1,694,1,694,1,694,1,694,1,694,1,695,1,695,1,695,1,695,1,695,1,695,1,695,1,695,1,695,1,695,1,695,1,695,1,696,1,696,1,696,1,696,1,696,1,696,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,699,1,699,1,699,1,699,1,699,1,699,1,699,1,699,1,699,1,699,1,699,1,699,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,704,1,704,1,704,1,704,1,704,1,704,1,704,1,704,1,704,1,704,1,704,1,704,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,707,1,707,1,707,1,707,1,707,1,707,1,707,1,707,1,708,1,708,1,708,1,708,1,708,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,719,1,719,1,719,1,719,1,719,1,719,1,719,1,720,1,720,1,720,1,720,1,720,1,720,1,720,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,724,1,724,1,724,1,724,1,724,1,724,1,724,1,724,1,724,1,724,1,724,1,725,1,725,1,725,1,725,1,725,1,725,1,725,1,725,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,731,1,731,1,731,1,731,1,731,1,731,1,731,1,731,1,731,1,731,1,731,1,732,1,732,1,732,1,732,1,732,1,732,1,732,1,732,1,733,1,733,1,733,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,735,3,735,9262,8,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,3,735,9289,8,735,1,736,1,736,1,736,1,736,1,736,1,736,1,736,1,736,1,736,1,736,1,736,1,736,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,738,1,738,1,738,1,738,1,738,1,738,1,738,1,738,1,738,1,739,1,739,1,739,1,739,1,739,1,739,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,741,1,741,1,741,1,741,1,741,1,741,1,741,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,745,1,745,1,745,1,745,1,745,1,745,1,745,1,745,1,745,1,746,1,746,1,746,1,746,1,746,1,746,1,747,1,747,1,747,1,747,1,747,1,748,1,748,1,748,1,748,1,748,1,748,1,748,1,749,1,749,1,749,1,749,1,749,1,749,1,749,1,750,1,750,1,750,1,750,1,750,1,750,1,750,1,751,1,751,1,751,1,751,1,751,1,751,1,751,1,752,1,752,1,752,1,752,1,752,1,752,1,753,1,753,1,753,1,753,1,753,1,753,1,754,1,754,1,754,1,754,1,754,1,754,1,755,1,755,1,755,1,755,1,755,1,755,1,756,1,756,1,756,1,756,1,756,1,757,1,757,1,757,1,757,1,757,1,757,1,757,1,757,1,758,1,758,1,758,1,758,1,758,1,758,1,759,1,759,1,759,1,759,1,759,1,759,1,759,1,759,1,760,1,760,1,760,1,760,1,760,1,760,1,760,1,761,1,761,1,761,1,761,1,762,1,762,1,762,1,762,1,762,1,762,1,762,1,762,1,763,1,763,1,763,1,763,1,763,1,763,1,764,1,764,1,764,1,764,1,764,1,764,1,764,1,765,1,765,1,765,1,765,1,766,1,766,1,766,1,766,1,766,1,766,1,766,1,766,1,767,1,767,1,767,1,767,1,767,1,767,1,768,1,768,1,768,1,768,1,768,1,768,1,769,1,769,1,769,1,769,1,769,1,769,1,769,1,770,1,770,1,770,1,770,1,770,1,770,1,770,1,771,1,771,1,771,1,771,1,771,1,771,1,771,1,772,1,772,1,772,1,772,1,772,1,772,1,772,1,773,1,773,1,773,1,773,1,773,1,773,1,774,1,774,1,774,1,774,1,774,1,774,1,774,1,774,1,774,1,775,1,775,1,775,1,775,1,775,1,776,1,776,1,776,1,776,1,776,1,777,1,777,1,777,1,777,1,777,1,777,1,777,1,778,1,778,1,778,1,778,1,778,1,779,1,779,1,779,1,779,1,779,1,780,1,780,1,780,1,780,1,780,1,780,1,781,1,781,1,781,1,781,1,781,1,781,1,781,1,781,1,782,1,782,1,782,1,782,1,782,1,782,1,783,1,783,1,783,1,783,1,783,1,784,1,784,1,784,1,784,1,784,1,784,1,784,1,784,1,785,1,785,1,785,1,785,1,785,1,785,1,785,1,785,1,786,1,786,1,786,1,786,1,786,1,786,1,786,1,786,1,787,1,787,1,787,1,787,1,787,1,787,1,787,1,787,1,787,1,787,1,788,1,788,1,788,1,788,1,789,1,789,1,789,1,789,1,789,1,789,1,789,1,789,1,789,1,789,1,790,1,790,1,790,1,790,1,790,1,790,1,790,1,791,1,791,1,791,1,791,1,791,1,791,1,791,1,792,1,792,1,792,1,792,1,792,1,792,1,792,1,792,1,792,1,792,1,792,1,793,1,793,1,793,1,793,1,793,1,793,1,793,1,794,1,794,1,794,1,794,1,795,1,795,1,795,1,795,1,795,1,795,1,795,1,795,1,795,1,795,1,795,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,797,1,797,1,797,1,797,1,797,1,797,1,797,1,798,1,798,1,798,1,798,1,798,1,798,1,798,1,798,1,798,1,798,1,798,1,799,1,799,1,799,1,799,1,799,1,799,1,799,1,799,1,799,1,799,1,800,1,800,1,800,1,800,1,800,1,800,1,800,1,800,1,800,1,800,1,800,1,800,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,804,1,804,1,804,1,804,1,804,1,804,1,804,1,804,1,804,1,805,1,805,1,805,1,805,1,805,1,805,1,805,1,805,1,805,1,805,1,805,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,807,1,807,1,807,1,807,1,807,1,807,1,807,1,807,1,807,1,807,1,807,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,809,1,809,1,809,1,809,1,809,1,809,1,810,1,810,1,810,1,810,1,810,1,810,1,810,1,810,1,811,1,811,1,811,1,811,1,812,1,812,1,812,1,812,1,812,1,813,1,813,1,813,1,813,1,813,1,813,1,813,1,813,1,814,1,814,1,814,1,814,1,814,1,814,1,814,1,814,1,815,1,815,1,815,1,815,1,815,1,815,1,815,1,815,1,815,1,815,1,815,1,815,1,816,1,816,1,816,1,816,1,816,1,816,1,816,1,816,1,816,1,816,1,816,1,816,1,817,1,817,1,817,1,817,1,817,1,818,1,818,1,818,1,818,1,818,1,818,1,818,1,818,1,818,1,819,1,819,1,819,1,819,1,819,1,820,1,820,1,820,1,820,1,820,1,820,1,820,1,821,1,821,1,821,1,821,1,821,1,821,1,822,1,822,1,822,1,822,1,822,1,822,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,828,1,828,1,828,1,828,1,828,1,829,1,829,1,829,1,829,1,829,1,829,1,830,1,830,1,830,1,830,1,830,1,830,1,830,1,830,1,830,1,830,1,831,1,831,1,831,1,831,1,832,1,832,1,832,1,832,1,832,1,832,1,832,1,832,1,832,1,832,1,833,1,833,1,833,1,833,1,833,1,833,1,833,1,833,1,833,1,833,1,833,1,834,1,834,1,834,1,834,1,834,1,834,1,834,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,836,1,836,1,836,1,836,1,836,1,837,1,837,1,837,1,837,1,837,1,837,1,837,1,837,1,838,1,838,1,838,1,838,1,838,1,838,1,838,1,838,1,838,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,840,1,840,1,840,1,840,1,840,1,840,1,840,1,840,1,841,1,841,1,841,1,841,1,841,1,841,1,841,1,841,1,841,1,841,1,841,1,841,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,843,1,843,1,843,1,843,1,843,1,843,1,843,1,843,1,843,1,843,1,844,1,844,1,844,1,844,1,844,1,844,1,844,1,844,1,844,1,845,1,845,1,845,1,845,1,845,1,845,1,845,1,846,1,846,1,846,1,846,1,846,1,846,1,846,1,846,1,846,1,846,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,848,1,848,1,848,1,848,1,848,1,849,1,849,1,849,1,849,1,849,1,849,1,849,1,849,1,849,1,849,1,849,1,850,1,850,1,850,1,850,1,851,1,851,1,851,1,851,1,852,1,852,1,852,1,852,1,852,1,852,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,857,1,857,1,857,1,857,1,857,1,857,1,857,1,857,1,858,1,858,1,858,1,858,1,858,1,858,1,858,1,858,1,858,1,859,1,859,1,859,1,859,1,859,1,859,1,859,1,859,1,859,1,859,1,859,1,859,1,860,1,860,1,860,1,860,1,860,1,860,1,860,1,860,1,861,1,861,1,861,1,861,1,861,1,861,1,861,1,861,1,861,1,861,1,861,1,862,1,862,1,862,1,862,1,862,1,862,1,862,1,862,1,862,1,862,1,863,1,863,1,863,1,863,1,863,1,863,1,863,1,863,1,863,1,863,1,864,1,864,1,864,1,864,1,864,1,864,1,864,1,865,1,865,1,865,1,865,1,865,1,865,1,865,1,865,1,866,1,866,1,866,1,866,1,866,1,866,1,866,1,866,1,866,1,866,1,866,1,866,1,867,1,867,1,867,1,867,1,867,1,867,1,867,1,867,1,867,1,867,1,867,1,867,1,868,1,868,1,868,1,868,1,868,1,868,1,868,1,868,1,868,1,868,1,869,1,869,1,869,1,869,1,869,1,869,1,869,1,869,1,869,1,870,1,870,1,870,1,870,1,871,1,871,1,871,1,871,1,871,1,871,1,871,1,872,1,872,1,872,1,872,1,872,1,872,1,872,1,872,1,873,1,873,1,873,1,873,1,873,1,873,1,873,1,873,1,873,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,875,1,875,1,875,1,875,1,875,1,875,1,875,1,875,1,875,1,876,1,876,1,876,1,876,1,876,1,876,1,876,1,877,1,877,1,877,1,877,1,878,1,878,1,878,1,878,1,878,1,878,1,878,1,878,1,878,1,878,1,878,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,881,1,881,1,881,1,881,1,881,1,881,1,882,1,882,1,882,1,882,1,882,1,882,1,882,1,882,1,882,1,882,1,882,1,882,1,883,1,883,1,883,1,883,1,883,1,883,1,884,1,884,1,884,1,884,1,884,1,884,1,884,1,885,1,885,1,885,1,885,1,885,1,885,1,885,1,885,1,885,1,885,1,885,1,886,1,886,1,886,1,886,1,886,1,886,1,886,1,886,1,886,1,886,1,886,1,886,1,887,1,887,1,887,1,887,1,887,1,887,1,887,1,887,1,887,1,887,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,895,1,895,1,895,1,895,1,895,1,895,1,895,1,895,1,895,1,895,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,898,1,898,1,898,1,898,1,898,1,898,1,898,1,898,1,898,1,898,1,898,1,898,1,899,1,899,1,899,1,899,1,899,1,899,1,899,1,899,1,899,1,899,1,899,1,900,1,900,1,900,1,900,1,900,1,900,1,900,1,900,1,900,1,901,1,901,1,901,1,901,1,901,1,901,1,901,1,901,1,902,1,902,1,902,1,902,1,902,1,902,1,902,1,902,1,902,1,903,1,903,1,903,1,903,1,903,1,903,1,903,1,903,1,903,1,903,1,903,1,903,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,905,1,905,1,905,1,905,1,906,1,906,1,906,1,906,1,906,1,906,1,906,1,907,1,907,1,907,1,907,1,907,1,907,1,907,1,907,1,907,1,907,1,907,1,908,1,908,1,908,1,908,1,908,1,908,1,908,1,908,1,908,1,908,1,908,1,909,1,909,1,909,1,909,1,909,1,909,1,909,1,909,1,909,1,909,1,910,1,910,1,910,1,910,1,910,1,910,1,910,1,910,1,910,1,910,1,911,1,911,1,911,1,911,1,911,1,911,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,913,1,913,1,913,1,913,1,913,1,913,1,913,1,913,1,913,1,913,1,913,1,914,1,914,1,914,1,914,1,914,1,914,1,914,1,914,1,914,1,915,1,915,1,915,1,915,1,915,1,915,1,915,1,915,1,916,1,916,1,916,1,916,1,916,1,916,1,916,1,917,1,917,1,917,1,917,1,917,1,917,1,917,1,917,1,917,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,919,1,919,1,919,1,919,1,919,1,919,1,919,1,919,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,922,1,922,1,922,1,922,1,922,1,922,1,922,1,922,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,925,1,925,1,925,1,925,1,925,1,925,1,926,1,926,1,926,1,926,1,926,1,926,1,927,1,927,1,927,1,927,1,927,1,927,1,927,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,929,1,929,1,929,1,929,1,929,1,929,1,929,1,929,1,929,1,929,1,929,1,929,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,932,1,932,1,932,1,933,1,933,1,933,1,933,1,933,1,933,1,933,1,933,1,933,1,933,1,934,1,934,1,934,1,934,1,934,1,934,1,934,1,935,1,935,1,935,1,935,1,936,1,936,1,936,1,936,1,936,1,936,1,937,1,937,1,937,1,937,1,937,1,938,1,938,1,938,1,938,1,938,1,938,1,939,1,939,1,939,1,939,1,939,1,940,1,940,1,940,1,940,1,940,1,940,1,941,1,941,1,941,1,941,1,941,1,941,1,941,1,941,1,941,1,942,1,942,1,942,1,942,1,942,1,942,1,942,1,942,1,942,1,943,1,943,1,943,1,943,1,943,1,943,1,943,1,943,1,943,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,945,1,945,1,945,1,945,1,945,1,945,1,945,1,945,1,945,1,945,1,945,1,945,1,946,1,946,1,946,1,946,1,946,1,946,1,946,1,946,1,946,1,946,1,946,1,946,1,947,1,947,1,947,1,947,1,947,1,947,1,947,1,947,1,947,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,949,1,949,1,949,1,949,1,949,1,949,1,949,1,949,1,949,1,949,1,949,1,949,1,950,1,950,1,950,1,950,1,950,1,950,1,950,1,950,1,950,1,950,1,950,1,951,1,951,1,951,1,951,1,951,1,951,1,951,1,951,1,951,1,951,1,952,1,952,1,952,1,952,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,955,1,955,1,955,1,955,1,955,1,955,1,955,1,955,1,955,1,955,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,966,1,966,1,966,1,966,1,966,1,966,1,966,1,966,1,966,1,966,1,966,1,967,1,967,1,967,1,967,1,967,1,967,1,967,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,970,1,970,1,970,1,970,1,970,1,970,1,970,1,970,1,970,1,970,1,971,1,971,1,971,1,971,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,973,1,973,1,973,1,973,1,974,1,974,1,974,1,974,1,974,1,974,1,974,1,974,1,974,1,975,1,975,1,975,1,975,1,975,1,975,1,975,1,975,1,975,1,975,1,975,1,976,1,976,1,976,1,976,1,976,1,976,1,976,1,976,1,976,1,976,1,976,1,976,1,977,1,977,1,977,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,980,1,980,1,980,1,980,1,980,1,980,1,980,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,982,1,982,1,982,1,982,1,982,1,982,1,982,1,982,1,982,1,982,1,982,1,982,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,985,1,985,1,985,1,985,1,986,1,986,1,986,1,986,1,986,1,986,1,987,1,987,1,987,1,987,1,987,1,987,1,988,1,988,1,988,1,988,1,988,1,988,1,988,1,988,1,989,1,989,1,989,1,989,1,989,1,990,1,990,1,990,1,990,1,990,1,990,1,990,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,993,1,993,1,993,1,993,1,993,1,993,1,993,1,993,1,994,1,994,1,994,1,994,1,994,1,994,1,995,1,995,1,995,1,995,1,995,1,995,1,995,1,995,1,995,1,995,1,996,1,996,1,996,1,996,1,996,1,997,1,997,1,997,1,997,1,997,1,997,1,998,1,998,1,998,1,998,1,998,1,998,1,998,1,998,1,998,1,998,1,998,1,998,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1001,1,1001,1,1001,1,1001,1,1002,1,1002,1,1002,1,1002,1,1002,1,1003,1,1003,1,1003,1,1003,1,1003,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1005,1,1005,1,1005,1,1005,1,1005,1,1006,1,1006,1,1006,1,1006,1,1007,1,1007,1,1007,1,1007,1,1007,1,1007,1,1008,1,1008,1,1008,1,1008,1,1008,1,1008,1,1008,1,1008,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1010,1,1010,1,1010,1,1010,1,1010,1,1011,1,1011,1,1011,1,1011,1,1011,1,1012,1,1012,1,1012,1,1012,1,1012,1,1012,1,1012,1,1012,1,1012,1,1012,1,1012,1,1013,1,1013,1,1013,1,1013,1,1013,1,1013,1,1013,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1015,1,1015,1,1015,1,1015,1,1015,1,1015,1,1015,1,1015,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1017,1,1017,1,1017,1,1017,1,1017,1,1017,1,1017,1,1017,1,1017,1,1017,1,1018,1,1018,1,1018,1,1018,1,1018,1,1018,1,1018,1,1018,1,1018,1,1019,1,1019,1,1019,1,1019,1,1019,1,1019,1,1019,1,1019,1,1019,1,1020,1,1020,1,1020,1,1020,1,1020,1,1020,1,1020,1,1020,1,1020,1,1020,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1023,1,1023,1,1023,1,1023,1,1023,1,1023,1,1023,1,1023,1,1023,1,1023,1,1023,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1030,1,1030,1,1030,1,1030,1,1030,1,1030,1,1030,1,1030,1,1030,1,1030,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1047,1,1047,1,1047,1,1047,1,1047,1,1047,1,1047,1,1047,1,1047,1,1047,1,1047,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1060,1,1060,1,1060,1,1060,1,1060,1,1060,1,1060,1,1060,1,1060,1,1060,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1065,1,1065,1,1065,1,1065,1,1065,1,1065,1,1065,1,1065,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1068,1,1068,1,1068,1,1068,1,1068,1,1068,1,1068,1,1068,1,1068,1,1068,1,1068,1,1069,1,1069,1,1069,1,1069,1,1069,1,1069,1,1069,1,1069,1,1069,1,1070,1,1070,1,1070,1,1070,1,1070,1,1070,1,1070,1,1070,1,1070,1,1070,1,1071,1,1071,1,1071,1,1071,1,1071,1,1072,1,1072,1,1072,1,1072,1,1072,1,1073,1,1073,1,1073,1,1073,1,1073,1,1073,1,1073,1,1073,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1075,1,1075,1,1075,1,1075,1,1075,1,1075,1,1075,1,1075,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1077,1,1077,1,1077,1,1077,1,1078,1,1078,1,1078,1,1078,1,1078,1,1078,1,1078,1,1078,1,1078,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1083,1,1083,1,1083,1,1083,1,1083,1,1083,1,1083,1,1083,1,1084,1,1084,1,1084,1,1084,1,1084,1,1084,1,1084,1,1084,1,1084,1,1084,1,1085,1,1085,1,1085,1,1085,1,1085,1,1085,1,1085,1,1085,1,1086,1,1086,1,1086,1,1086,1,1086,1,1086,1,1086,1,1086,1,1086,1,1086,1,1086,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1088,1,1088,1,1088,1,1088,1,1088,1,1088,1,1089,1,1089,1,1089,1,1089,1,1089,1,1089,1,1089,1,1089,1,1089,1,1089,1,1089,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1091,1,1091,1,1091,1,1091,1,1091,1,1091,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1093,1,1093,1,1093,1,1093,1,1093,1,1093,1,1093,1,1093,1,1093,1,1093,1,1094,1,1094,1,1094,1,1094,1,1094,1,1094,1,1095,1,1095,1,1095,1,1095,1,1095,1,1096,1,1096,1,1096,1,1096,1,1096,1,1096,1,1096,1,1096,1,1096,1,1096,1,1096,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1098,1,1098,1,1098,1,1098,1,1098,1,1098,1,1098,1,1098,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1100,1,1100,1,1100,1,1100,1,1100,1,1100,1,1100,1,1100,1,1101,1,1101,1,1101,1,1101,1,1101,1,1101,1,1101,1,1101,1,1101,1,1101,1,1101,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1103,1,1103,1,1103,1,1103,1,1103,1,1103,1,1103,1,1104,1,1104,1,1104,1,1104,1,1104,1,1104,1,1104,1,1104,1,1104,1,1105,1,1105,1,1106,1,1106,1,1107,1,1107,1,1107,1,1108,1,1108,1,1108,1,1109,1,1109,1,1109,1,1110,1,1110,1,1110,1,1111,1,1111,1,1111,1,1112,1,1112,1,1112,1,1113,1,1113,1,1113,1,1114,1,1114,1,1114,1,1115,1,1115,1,1115,1,1116,1,1116,1,1117,1,1117,1,1118,1,1118,1,1119,1,1119,1,1120,1,1120,1,1121,1,1121,1,1121,1,1121,1,1122,1,1122,1,1122,1,1122,1,1123,1,1123,1,1124,1,1124,1,1125,1,1125,1,1126,1,1126,1,1127,1,1127,1,1128,1,1128,1,1129,1,1129,1,1130,1,1130,1,1131,1,1131,1,1132,1,1132,1,1133,1,1133,1,1134,1,1134,1,1135,1,1135,1,1136,1,1136,1,1137,1,1137,1,1138,1,1138,1,1139,1,1139,1,1140,1,1140,1,1141,1,1141,1,1142,1,1142,1,1143,1,1143,1,1144,1,1144,1,1144,3,1144,13422,8,1144,1,1145,1,1145,1,1145,1,1145,1,1146,4,1146,13429,8,1146,11,1146,12,1146,13430,1,1146,1,1146,1,1147,1,1147,1,1147,1,1148,1,1148,1,1148,3,1148,13441,8,1148,1,1149,4,1149,13444,8,1149,11,1149,12,1149,13445,1,1150,1,1150,1,1150,1,1150,1,1150,4,1150,13453,8,1150,11,1150,12,1150,13454,1,1150,1,1150,1,1150,1,1150,1,1150,1,1150,4,1150,13463,8,1150,11,1150,12,1150,13464,3,1150,13467,8,1150,1,1151,5,1151,13470,8,1151,10,1151,12,1151,13473,9,1151,1,1151,1,1151,4,1151,13477,8,1151,11,1151,12,1151,13478,1,1151,4,1151,13482,8,1151,11,1151,12,1151,13483,1,1151,1,1151,1,1151,1,1151,5,1151,13490,8,1151,10,1151,12,1151,13493,9,1151,1,1151,1,1151,4,1151,13497,8,1151,11,1151,12,1151,13498,1,1151,1,1151,1,1151,4,1151,13504,8,1151,11,1151,12,1151,13505,1,1151,1,1151,3,1151,13510,8,1151,1,1152,1,1152,1,1152,1,1153,1,1153,1,1154,1,1154,1,1154,1,1155,1,1155,1,1155,1,1156,1,1156,1,1157,1,1157,1,1158,1,1158,1,1158,1,1159,1,1159,1,1159,4,1159,13533,8,1159,11,1159,12,1159,13534,3,1159,13537,8,1159,1,1160,1,1160,1,1160,4,1160,13542,8,1160,11,1160,12,1160,13543,1,1160,3,1160,13547,8,1160,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,3,1161,13590,8,1161,1,1162,1,1162,3,1162,13594,8,1162,1,1162,4,1162,13597,8,1162,11,1162,12,1162,13598,1,1163,5,1163,13602,8,1163,10,1163,12,1163,13605,9,1163,1,1163,4,1163,13608,8,1163,11,1163,12,1163,13609,1,1163,5,1163,13613,8,1163,10,1163,12,1163,13616,9,1163,1,1164,1,1164,1,1164,1,1164,1,1164,1,1164,5,1164,13624,8,1164,10,1164,12,1164,13627,9,1164,1,1164,1,1164,1,1165,1,1165,1,1165,1,1165,1,1165,1,1165,5,1165,13637,8,1165,10,1165,12,1165,13640,9,1165,1,1165,1,1165,1,1166,1,1166,1,1166,1,1166,5,1166,13648,8,1166,10,1166,12,1166,13651,9,1166,1,1166,1,1166,1,1167,1,1167,1,1168,1,1168,1,1169,1,1169,1,1169,4,1169,13662,8,1169,11,1169,12,1169,13663,1,1169,1,1169,1,1170,4,1170,13669,8,1170,11,1170,12,1170,13670,1,1170,1,1170,4,1170,13675,8,1170,11,1170,12,1170,13676,1,1170,5,1170,13680,8,1170,10,1170,12,1170,13683,9,1170,1,1170,1,1170,5,1170,13687,8,1170,10,1170,12,1170,13690,9,1170,1,1170,1,1170,4,1170,13694,8,1170,11,1170,12,1170,13695,3,1170,13698,8,1170,1,1171,1,1171,1,1171,1,1171,4,2359,2372,13603,13609,0,1172,1,1,3,2,5,3,7,4,9,5,11,6,13,7,15,8,17,9,19,10,21,11,23,12,25,13,27,14,29,15,31,16,33,17,35,18,37,19,39,20,41,21,43,22,45,23,47,24,49,25,51,26,53,27,55,28,57,29,59,30,61,31,63,32,65,33,67,34,69,35,71,36,73,37,75,38,77,39,79,40,81,41,83,42,85,43,87,44,89,45,91,46,93,47,95,48,97,49,99,50,101,51,103,52,105,53,107,54,109,55,111,56,113,57,115,58,117,59,119,60,121,61,123,62,125,63,127,64,129,65,131,66,133,67,135,68,137,69,139,70,141,71,143,72,145,73,147,74,149,75,151,76,153,77,155,78,157,79,159,80,161,81,163,82,165,83,167,84,169,85,171,86,173,87,175,88,177,89,179,90,181,91,183,92,185,93,187,94,189,95,191,96,193,97,195,98,197,99,199,100,201,101,203,102,205,103,207,104,209,105,211,106,213,107,215,108,217,109,219,110,221,111,223,112,225,113,227,114,229,115,231,116,233,117,235,118,237,119,239,120,241,121,243,122,245,123,247,124,249,125,251,126,253,127,255,128,257,129,259,130,261,131,263,132,265,133,267,134,269,135,271,136,273,137,275,138,277,139,279,140,281,141,283,142,285,143,287,144,289,145,291,146,293,147,295,148,297,149,299,150,301,151,303,152,305,153,307,154,309,155,311,156,313,157,315,158,317,159,319,160,321,161,323,162,325,163,327,164,329,165,331,166,333,167,335,168,337,169,339,170,341,171,343,172,345,173,347,174,349,175,351,176,353,177,355,178,357,179,359,180,361,181,363,182,365,183,367,184,369,185,371,186,373,187,375,188,377,189,379,190,381,191,383,192,385,193,387,194,389,195,391,196,393,197,395,198,397,199,399,200,401,201,403,202,405,203,407,204,409,205,411,206,413,207,415,208,417,209,419,210,421,211,423,212,425,213,427,214,429,215,431,216,433,217,435,218,437,219,439,220,441,221,443,222,445,223,447,224,449,225,451,226,453,227,455,228,457,229,459,230,461,231,463,232,465,233,467,234,469,235,471,236,473,237,475,238,477,239,479,240,481,241,483,242,485,243,487,244,489,245,491,246,493,247,495,248,497,249,499,250,501,251,503,252,505,253,507,254,509,255,511,256,513,257,515,258,517,259,519,260,521,261,523,262,525,263,527,264,529,265,531,266,533,267,535,268,537,269,539,270,541,271,543,272,545,273,547,274,549,275,551,276,553,277,555,278,557,279,559,280,561,281,563,282,565,283,567,284,569,285,571,286,573,287,575,288,577,289,579,290,581,291,583,292,585,293,587,294,589,295,591,296,593,297,595,298,597,299,599,300,601,301,603,302,605,303,607,304,609,305,611,306,613,307,615,308,617,309,619,310,621,311,623,312,625,313,627,314,629,315,631,316,633,317,635,318,637,319,639,320,641,321,643,322,645,323,647,324,649,325,651,326,653,327,655,328,657,329,659,330,661,331,663,332,665,333,667,334,669,335,671,336,673,337,675,338,677,339,679,340,681,341,683,342,685,343,687,344,689,345,691,346,693,347,695,348,697,349,699,350,701,351,703,352,705,353,707,354,709,355,711,356,713,357,715,358,717,359,719,360,721,361,723,362,725,363,727,364,729,365,731,366,733,367,735,368,737,369,739,370,741,371,743,372,745,373,747,374,749,375,751,376,753,377,755,378,757,379,759,380,761,381,763,382,765,383,767,384,769,385,771,386,773,387,775,388,777,389,779,390,781,391,783,392,785,393,787,394,789,395,791,396,793,397,795,398,797,399,799,400,801,401,803,402,805,403,807,404,809,405,811,406,813,407,815,408,817,409,819,410,821,411,823,412,825,413,827,414,829,415,831,416,833,417,835,418,837,419,839,420,841,421,843,422,845,423,847,424,849,425,851,426,853,427,855,428,857,429,859,430,861,431,863,432,865,433,867,434,869,435,871,436,873,437,875,438,877,439,879,440,881,441,883,442,885,443,887,444,889,445,891,446,893,447,895,448,897,449,899,450,901,451,903,452,905,453,907,454,909,455,911,456,913,457,915,458,917,459,919,460,921,461,923,462,925,463,927,464,929,465,931,466,933,467,935,468,937,469,939,470,941,471,943,472,945,473,947,474,949,475,951,476,953,477,955,478,957,479,959,480,961,481,963,482,965,483,967,484,969,485,971,486,973,487,975,488,977,489,979,490,981,491,983,492,985,493,987,494,989,495,991,496,993,497,995,498,997,499,999,500,1001,501,1003,502,1005,503,1007,504,1009,505,1011,506,1013,507,1015,508,1017,509,1019,510,1021,511,1023,512,1025,513,1027,514,1029,515,1031,516,1033,517,1035,518,1037,519,1039,520,1041,521,1043,522,1045,523,1047,524,1049,525,1051,526,1053,527,1055,528,1057,529,1059,530,1061,531,1063,532,1065,533,1067,534,1069,535,1071,536,1073,537,1075,538,1077,539,1079,540,1081,541,1083,542,1085,543,1087,544,1089,545,1091,546,1093,547,1095,548,1097,549,1099,550,1101,551,1103,552,1105,553,1107,554,1109,555,1111,556,1113,557,1115,558,1117,559,1119,560,1121,561,1123,562,1125,563,1127,564,1129,565,1131,566,1133,567,1135,568,1137,569,1139,570,1141,571,1143,572,1145,573,1147,574,1149,575,1151,576,1153,577,1155,578,1157,579,1159,580,1161,581,1163,582,1165,583,1167,584,1169,585,1171,586,1173,587,1175,588,1177,589,1179,590,1181,591,1183,592,1185,593,1187,594,1189,595,1191,596,1193,597,1195,598,1197,599,1199,600,1201,601,1203,602,1205,603,1207,604,1209,605,1211,606,1213,607,1215,608,1217,609,1219,610,1221,611,1223,612,1225,613,1227,614,1229,615,1231,616,1233,617,1235,618,1237,619,1239,620,1241,621,1243,622,1245,623,1247,624,1249,625,1251,626,1253,627,1255,628,1257,629,1259,630,1261,631,1263,632,1265,633,1267,634,1269,635,1271,636,1273,637,1275,638,1277,639,1279,640,1281,641,1283,642,1285,643,1287,644,1289,645,1291,646,1293,647,1295,648,1297,649,1299,650,1301,651,1303,652,1305,653,1307,654,1309,655,1311,656,1313,657,1315,658,1317,659,1319,660,1321,661,1323,662,1325,663,1327,664,1329,665,1331,666,1333,667,1335,668,1337,669,1339,670,1341,671,1343,672,1345,673,1347,674,1349,675,1351,676,1353,677,1355,678,1357,679,1359,680,1361,681,1363,682,1365,683,1367,684,1369,685,1371,686,1373,687,1375,688,1377,689,1379,690,1381,691,1383,692,1385,693,1387,694,1389,695,1391,696,1393,697,1395,698,1397,699,1399,700,1401,701,1403,702,1405,703,1407,704,1409,705,1411,706,1413,707,1415,708,1417,709,1419,710,1421,711,1423,712,1425,713,1427,714,1429,715,1431,716,1433,717,1435,718,1437,719,1439,720,1441,721,1443,722,1445,723,1447,724,1449,725,1451,726,1453,727,1455,728,1457,729,1459,730,1461,731,1463,732,1465,733,1467,734,1469,735,1471,736,1473,737,1475,738,1477,739,1479,740,1481,741,1483,742,1485,743,1487,744,1489,745,1491,746,1493,747,1495,748,1497,749,1499,750,1501,751,1503,752,1505,753,1507,754,1509,755,1511,756,1513,757,1515,758,1517,759,1519,760,1521,761,1523,762,1525,763,1527,764,1529,765,1531,766,1533,767,1535,768,1537,769,1539,770,1541,771,1543,772,1545,773,1547,774,1549,775,1551,776,1553,777,1555,778,1557,779,1559,780,1561,781,1563,782,1565,783,1567,784,1569,785,1571,786,1573,787,1575,788,1577,789,1579,790,1581,791,1583,792,1585,793,1587,794,1589,795,1591,796,1593,797,1595,798,1597,799,1599,800,1601,801,1603,802,1605,803,1607,804,1609,805,1611,806,1613,807,1615,808,1617,809,1619,810,1621,811,1623,812,1625,813,1627,814,1629,815,1631,816,1633,817,1635,818,1637,819,1639,820,1641,821,1643,822,1645,823,1647,824,1649,825,1651,826,1653,827,1655,828,1657,829,1659,830,1661,831,1663,832,1665,833,1667,834,1669,835,1671,836,1673,837,1675,838,1677,839,1679,840,1681,841,1683,842,1685,843,1687,844,1689,845,1691,846,1693,847,1695,848,1697,849,1699,850,1701,851,1703,852,1705,853,1707,854,1709,855,1711,856,1713,857,1715,858,1717,859,1719,860,1721,861,1723,862,1725,863,1727,864,1729,865,1731,866,1733,867,1735,868,1737,869,1739,870,1741,871,1743,872,1745,873,1747,874,1749,875,1751,876,1753,877,1755,878,1757,879,1759,880,1761,881,1763,882,1765,883,1767,884,1769,885,1771,886,1773,887,1775,888,1777,889,1779,890,1781,891,1783,892,1785,893,1787,894,1789,895,1791,896,1793,897,1795,898,1797,899,1799,900,1801,901,1803,902,1805,903,1807,904,1809,905,1811,906,1813,907,1815,908,1817,909,1819,910,1821,911,1823,912,1825,913,1827,914,1829,915,1831,916,1833,917,1835,918,1837,919,1839,920,1841,921,1843,922,1845,923,1847,924,1849,925,1851,926,1853,927,1855,928,1857,929,1859,930,1861,931,1863,932,1865,933,1867,934,1869,935,1871,936,1873,937,1875,938,1877,939,1879,940,1881,941,1883,942,1885,943,1887,944,1889,945,1891,946,1893,947,1895,948,1897,949,1899,950,1901,951,1903,952,1905,953,1907,954,1909,955,1911,956,1913,957,1915,958,1917,959,1919,960,1921,961,1923,962,1925,963,1927,964,1929,965,1931,966,1933,967,1935,968,1937,969,1939,970,1941,971,1943,972,1945,973,1947,974,1949,975,1951,976,1953,977,1955,978,1957,979,1959,980,1961,981,1963,982,1965,983,1967,984,1969,985,1971,986,1973,987,1975,988,1977,989,1979,990,1981,991,1983,992,1985,993,1987,994,1989,995,1991,996,1993,997,1995,998,1997,999,1999,1e3,2001,1001,2003,1002,2005,1003,2007,1004,2009,1005,2011,1006,2013,1007,2015,1008,2017,1009,2019,1010,2021,1011,2023,1012,2025,1013,2027,1014,2029,1015,2031,1016,2033,1017,2035,1018,2037,1019,2039,1020,2041,1021,2043,1022,2045,1023,2047,1024,2049,1025,2051,1026,2053,1027,2055,1028,2057,1029,2059,1030,2061,1031,2063,1032,2065,1033,2067,1034,2069,1035,2071,1036,2073,1037,2075,1038,2077,1039,2079,1040,2081,1041,2083,1042,2085,1043,2087,1044,2089,1045,2091,1046,2093,1047,2095,1048,2097,1049,2099,1050,2101,1051,2103,1052,2105,1053,2107,1054,2109,1055,2111,1056,2113,1057,2115,1058,2117,1059,2119,1060,2121,1061,2123,1062,2125,1063,2127,1064,2129,1065,2131,1066,2133,1067,2135,1068,2137,1069,2139,1070,2141,1071,2143,1072,2145,1073,2147,1074,2149,1075,2151,1076,2153,1077,2155,1078,2157,1079,2159,1080,2161,1081,2163,1082,2165,1083,2167,1084,2169,1085,2171,1086,2173,1087,2175,1088,2177,1089,2179,1090,2181,1091,2183,1092,2185,1093,2187,1094,2189,1095,2191,1096,2193,1097,2195,1098,2197,1099,2199,1100,2201,1101,2203,1102,2205,1103,2207,1104,2209,1105,2211,1106,2213,1107,2215,1108,2217,1109,2219,1110,2221,1111,2223,1112,2225,1113,2227,1114,2229,1115,2231,1116,2233,1117,2235,1118,2237,1119,2239,1120,2241,1121,2243,1122,2245,1123,2247,1124,2249,1125,2251,1126,2253,1127,2255,1128,2257,1129,2259,1130,2261,1131,2263,1132,2265,1133,2267,1134,2269,1135,2271,1136,2273,1137,2275,1138,2277,1139,2279,1140,2281,1141,2283,1142,2285,1143,2287,1144,2289,0,2291,1145,2293,1146,2295,1147,2297,1148,2299,1149,2301,1150,2303,1151,2305,1152,2307,1153,2309,1154,2311,1155,2313,1156,2315,1157,2317,1158,2319,1159,2321,1160,2323,0,2325,0,2327,0,2329,0,2331,0,2333,0,2335,0,2337,0,2339,0,2341,0,2343,1161,1,0,42,3,0,9,10,13,13,32,32,2,0,9,9,32,32,2,0,10,10,13,13,2,0,65,65,97,97,2,0,68,68,100,100,2,0,76,76,108,108,2,0,84,84,116,116,2,0,69,69,101,101,2,0,82,82,114,114,2,0,87,87,119,119,2,0,89,89,121,121,2,0,83,83,115,115,2,0,78,78,110,110,2,0,90,90,122,122,2,0,67,67,99,99,2,0,73,73,105,105,2,0,66,66,98,98,2,0,85,85,117,117,2,0,70,70,102,102,2,0,79,79,111,111,2,0,72,72,104,104,2,0,75,75,107,107,2,0,71,71,103,103,2,0,77,77,109,109,2,0,86,86,118,118,2,0,80,80,112,112,2,0,88,88,120,120,2,0,74,74,106,106,2,0,81,81,113,113,8,0,71,71,75,75,77,77,84,84,103,103,107,107,109,109,116,116,7,0,36,36,46,46,48,57,65,90,95,95,97,122,128,65535,2,0,43,43,45,45,6,0,36,36,48,57,65,90,95,95,97,122,128,65535,5,0,36,36,65,90,95,95,97,122,128,65535,2,0,34,34,92,92,2,0,39,39,92,92,1,0,96,96,3,0,48,57,65,70,97,102,1,0,48,57,1,0,48,49,2,0,46,46,48,57,3,0,48,58,65,70,97,102,13786,0,1,1,0,0,0,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,23,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,0,0,0,0,65,1,0,0,0,0,67,1,0,0,0,0,69,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,1,0,0,0,0,87,1,0,0,0,0,89,1,0,0,0,0,91,1,0,0,0,0,93,1,0,0,0,0,95,1,0,0,0,0,97,1,0,0,0,0,99,1,0,0,0,0,101,1,0,0,0,0,103,1,0,0,0,0,105,1,0,0,0,0,107,1,0,0,0,0,109,1,0,0,0,0,111,1,0,0,0,0,113,1,0,0,0,0,115,1,0,0,0,0,117,1,0,0,0,0,119,1,0,0,0,0,121,1,0,0,0,0,123,1,0,0,0,0,125,1,0,0,0,0,127,1,0,0,0,0,129,1,0,0,0,0,131,1,0,0,0,0,133,1,0,0,0,0,135,1,0,0,0,0,137,1,0,0,0,0,139,1,0,0,0,0,141,1,0,0,0,0,143,1,0,0,0,0,145,1,0,0,0,0,147,1,0,0,0,0,149,1,0,0,0,0,151,1,0,0,0,0,153,1,0,0,0,0,155,1,0,0,0,0,157,1,0,0,0,0,159,1,0,0,0,0,161,1,0,0,0,0,163,1,0,0,0,0,165,1,0,0,0,0,167,1,0,0,0,0,169,1,0,0,0,0,171,1,0,0,0,0,173,1,0,0,0,0,175,1,0,0,0,0,177,1,0,0,0,0,179,1,0,0,0,0,181,1,0,0,0,0,183,1,0,0,0,0,185,1,0,0,0,0,187,1,0,0,0,0,189,1,0,0,0,0,191,1,0,0,0,0,193,1,0,0,0,0,195,1,0,0,0,0,197,1,0,0,0,0,199,1,0,0,0,0,201,1,0,0,0,0,203,1,0,0,0,0,205,1,0,0,0,0,207,1,0,0,0,0,209,1,0,0,0,0,211,1,0,0,0,0,213,1,0,0,0,0,215,1,0,0,0,0,217,1,0,0,0,0,219,1,0,0,0,0,221,1,0,0,0,0,223,1,0,0,0,0,225,1,0,0,0,0,227,1,0,0,0,0,229,1,0,0,0,0,231,1,0,0,0,0,233,1,0,0,0,0,235,1,0,0,0,0,237,1,0,0,0,0,239,1,0,0,0,0,241,1,0,0,0,0,243,1,0,0,0,0,245,1,0,0,0,0,247,1,0,0,0,0,249,1,0,0,0,0,251,1,0,0,0,0,253,1,0,0,0,0,255,1,0,0,0,0,257,1,0,0,0,0,259,1,0,0,0,0,261,1,0,0,0,0,263,1,0,0,0,0,265,1,0,0,0,0,267,1,0,0,0,0,269,1,0,0,0,0,271,1,0,0,0,0,273,1,0,0,0,0,275,1,0,0,0,0,277,1,0,0,0,0,279,1,0,0,0,0,281,1,0,0,0,0,283,1,0,0,0,0,285,1,0,0,0,0,287,1,0,0,0,0,289,1,0,0,0,0,291,1,0,0,0,0,293,1,0,0,0,0,295,1,0,0,0,0,297,1,0,0,0,0,299,1,0,0,0,0,301,1,0,0,0,0,303,1,0,0,0,0,305,1,0,0,0,0,307,1,0,0,0,0,309,1,0,0,0,0,311,1,0,0,0,0,313,1,0,0,0,0,315,1,0,0,0,0,317,1,0,0,0,0,319,1,0,0,0,0,321,1,0,0,0,0,323,1,0,0,0,0,325,1,0,0,0,0,327,1,0,0,0,0,329,1,0,0,0,0,331,1,0,0,0,0,333,1,0,0,0,0,335,1,0,0,0,0,337,1,0,0,0,0,339,1,0,0,0,0,341,1,0,0,0,0,343,1,0,0,0,0,345,1,0,0,0,0,347,1,0,0,0,0,349,1,0,0,0,0,351,1,0,0,0,0,353,1,0,0,0,0,355,1,0,0,0,0,357,1,0,0,0,0,359,1,0,0,0,0,361,1,0,0,0,0,363,1,0,0,0,0,365,1,0,0,0,0,367,1,0,0,0,0,369,1,0,0,0,0,371,1,0,0,0,0,373,1,0,0,0,0,375,1,0,0,0,0,377,1,0,0,0,0,379,1,0,0,0,0,381,1,0,0,0,0,383,1,0,0,0,0,385,1,0,0,0,0,387,1,0,0,0,0,389,1,0,0,0,0,391,1,0,0,0,0,393,1,0,0,0,0,395,1,0,0,0,0,397,1,0,0,0,0,399,1,0,0,0,0,401,1,0,0,0,0,403,1,0,0,0,0,405,1,0,0,0,0,407,1,0,0,0,0,409,1,0,0,0,0,411,1,0,0,0,0,413,1,0,0,0,0,415,1,0,0,0,0,417,1,0,0,0,0,419,1,0,0,0,0,421,1,0,0,0,0,423,1,0,0,0,0,425,1,0,0,0,0,427,1,0,0,0,0,429,1,0,0,0,0,431,1,0,0,0,0,433,1,0,0,0,0,435,1,0,0,0,0,437,1,0,0,0,0,439,1,0,0,0,0,441,1,0,0,0,0,443,1,0,0,0,0,445,1,0,0,0,0,447,1,0,0,0,0,449,1,0,0,0,0,451,1,0,0,0,0,453,1,0,0,0,0,455,1,0,0,0,0,457,1,0,0,0,0,459,1,0,0,0,0,461,1,0,0,0,0,463,1,0,0,0,0,465,1,0,0,0,0,467,1,0,0,0,0,469,1,0,0,0,0,471,1,0,0,0,0,473,1,0,0,0,0,475,1,0,0,0,0,477,1,0,0,0,0,479,1,0,0,0,0,481,1,0,0,0,0,483,1,0,0,0,0,485,1,0,0,0,0,487,1,0,0,0,0,489,1,0,0,0,0,491,1,0,0,0,0,493,1,0,0,0,0,495,1,0,0,0,0,497,1,0,0,0,0,499,1,0,0,0,0,501,1,0,0,0,0,503,1,0,0,0,0,505,1,0,0,0,0,507,1,0,0,0,0,509,1,0,0,0,0,511,1,0,0,0,0,513,1,0,0,0,0,515,1,0,0,0,0,517,1,0,0,0,0,519,1,0,0,0,0,521,1,0,0,0,0,523,1,0,0,0,0,525,1,0,0,0,0,527,1,0,0,0,0,529,1,0,0,0,0,531,1,0,0,0,0,533,1,0,0,0,0,535,1,0,0,0,0,537,1,0,0,0,0,539,1,0,0,0,0,541,1,0,0,0,0,543,1,0,0,0,0,545,1,0,0,0,0,547,1,0,0,0,0,549,1,0,0,0,0,551,1,0,0,0,0,553,1,0,0,0,0,555,1,0,0,0,0,557,1,0,0,0,0,559,1,0,0,0,0,561,1,0,0,0,0,563,1,0,0,0,0,565,1,0,0,0,0,567,1,0,0,0,0,569,1,0,0,0,0,571,1,0,0,0,0,573,1,0,0,0,0,575,1,0,0,0,0,577,1,0,0,0,0,579,1,0,0,0,0,581,1,0,0,0,0,583,1,0,0,0,0,585,1,0,0,0,0,587,1,0,0,0,0,589,1,0,0,0,0,591,1,0,0,0,0,593,1,0,0,0,0,595,1,0,0,0,0,597,1,0,0,0,0,599,1,0,0,0,0,601,1,0,0,0,0,603,1,0,0,0,0,605,1,0,0,0,0,607,1,0,0,0,0,609,1,0,0,0,0,611,1,0,0,0,0,613,1,0,0,0,0,615,1,0,0,0,0,617,1,0,0,0,0,619,1,0,0,0,0,621,1,0,0,0,0,623,1,0,0,0,0,625,1,0,0,0,0,627,1,0,0,0,0,629,1,0,0,0,0,631,1,0,0,0,0,633,1,0,0,0,0,635,1,0,0,0,0,637,1,0,0,0,0,639,1,0,0,0,0,641,1,0,0,0,0,643,1,0,0,0,0,645,1,0,0,0,0,647,1,0,0,0,0,649,1,0,0,0,0,651,1,0,0,0,0,653,1,0,0,0,0,655,1,0,0,0,0,657,1,0,0,0,0,659,1,0,0,0,0,661,1,0,0,0,0,663,1,0,0,0,0,665,1,0,0,0,0,667,1,0,0,0,0,669,1,0,0,0,0,671,1,0,0,0,0,673,1,0,0,0,0,675,1,0,0,0,0,677,1,0,0,0,0,679,1,0,0,0,0,681,1,0,0,0,0,683,1,0,0,0,0,685,1,0,0,0,0,687,1,0,0,0,0,689,1,0,0,0,0,691,1,0,0,0,0,693,1,0,0,0,0,695,1,0,0,0,0,697,1,0,0,0,0,699,1,0,0,0,0,701,1,0,0,0,0,703,1,0,0,0,0,705,1,0,0,0,0,707,1,0,0,0,0,709,1,0,0,0,0,711,1,0,0,0,0,713,1,0,0,0,0,715,1,0,0,0,0,717,1,0,0,0,0,719,1,0,0,0,0,721,1,0,0,0,0,723,1,0,0,0,0,725,1,0,0,0,0,727,1,0,0,0,0,729,1,0,0,0,0,731,1,0,0,0,0,733,1,0,0,0,0,735,1,0,0,0,0,737,1,0,0,0,0,739,1,0,0,0,0,741,1,0,0,0,0,743,1,0,0,0,0,745,1,0,0,0,0,747,1,0,0,0,0,749,1,0,0,0,0,751,1,0,0,0,0,753,1,0,0,0,0,755,1,0,0,0,0,757,1,0,0,0,0,759,1,0,0,0,0,761,1,0,0,0,0,763,1,0,0,0,0,765,1,0,0,0,0,767,1,0,0,0,0,769,1,0,0,0,0,771,1,0,0,0,0,773,1,0,0,0,0,775,1,0,0,0,0,777,1,0,0,0,0,779,1,0,0,0,0,781,1,0,0,0,0,783,1,0,0,0,0,785,1,0,0,0,0,787,1,0,0,0,0,789,1,0,0,0,0,791,1,0,0,0,0,793,1,0,0,0,0,795,1,0,0,0,0,797,1,0,0,0,0,799,1,0,0,0,0,801,1,0,0,0,0,803,1,0,0,0,0,805,1,0,0,0,0,807,1,0,0,0,0,809,1,0,0,0,0,811,1,0,0,0,0,813,1,0,0,0,0,815,1,0,0,0,0,817,1,0,0,0,0,819,1,0,0,0,0,821,1,0,0,0,0,823,1,0,0,0,0,825,1,0,0,0,0,827,1,0,0,0,0,829,1,0,0,0,0,831,1,0,0,0,0,833,1,0,0,0,0,835,1,0,0,0,0,837,1,0,0,0,0,839,1,0,0,0,0,841,1,0,0,0,0,843,1,0,0,0,0,845,1,0,0,0,0,847,1,0,0,0,0,849,1,0,0,0,0,851,1,0,0,0,0,853,1,0,0,0,0,855,1,0,0,0,0,857,1,0,0,0,0,859,1,0,0,0,0,861,1,0,0,0,0,863,1,0,0,0,0,865,1,0,0,0,0,867,1,0,0,0,0,869,1,0,0,0,0,871,1,0,0,0,0,873,1,0,0,0,0,875,1,0,0,0,0,877,1,0,0,0,0,879,1,0,0,0,0,881,1,0,0,0,0,883,1,0,0,0,0,885,1,0,0,0,0,887,1,0,0,0,0,889,1,0,0,0,0,891,1,0,0,0,0,893,1,0,0,0,0,895,1,0,0,0,0,897,1,0,0,0,0,899,1,0,0,0,0,901,1,0,0,0,0,903,1,0,0,0,0,905,1,0,0,0,0,907,1,0,0,0,0,909,1,0,0,0,0,911,1,0,0,0,0,913,1,0,0,0,0,915,1,0,0,0,0,917,1,0,0,0,0,919,1,0,0,0,0,921,1,0,0,0,0,923,1,0,0,0,0,925,1,0,0,0,0,927,1,0,0,0,0,929,1,0,0,0,0,931,1,0,0,0,0,933,1,0,0,0,0,935,1,0,0,0,0,937,1,0,0,0,0,939,1,0,0,0,0,941,1,0,0,0,0,943,1,0,0,0,0,945,1,0,0,0,0,947,1,0,0,0,0,949,1,0,0,0,0,951,1,0,0,0,0,953,1,0,0,0,0,955,1,0,0,0,0,957,1,0,0,0,0,959,1,0,0,0,0,961,1,0,0,0,0,963,1,0,0,0,0,965,1,0,0,0,0,967,1,0,0,0,0,969,1,0,0,0,0,971,1,0,0,0,0,973,1,0,0,0,0,975,1,0,0,0,0,977,1,0,0,0,0,979,1,0,0,0,0,981,1,0,0,0,0,983,1,0,0,0,0,985,1,0,0,0,0,987,1,0,0,0,0,989,1,0,0,0,0,991,1,0,0,0,0,993,1,0,0,0,0,995,1,0,0,0,0,997,1,0,0,0,0,999,1,0,0,0,0,1001,1,0,0,0,0,1003,1,0,0,0,0,1005,1,0,0,0,0,1007,1,0,0,0,0,1009,1,0,0,0,0,1011,1,0,0,0,0,1013,1,0,0,0,0,1015,1,0,0,0,0,1017,1,0,0,0,0,1019,1,0,0,0,0,1021,1,0,0,0,0,1023,1,0,0,0,0,1025,1,0,0,0,0,1027,1,0,0,0,0,1029,1,0,0,0,0,1031,1,0,0,0,0,1033,1,0,0,0,0,1035,1,0,0,0,0,1037,1,0,0,0,0,1039,1,0,0,0,0,1041,1,0,0,0,0,1043,1,0,0,0,0,1045,1,0,0,0,0,1047,1,0,0,0,0,1049,1,0,0,0,0,1051,1,0,0,0,0,1053,1,0,0,0,0,1055,1,0,0,0,0,1057,1,0,0,0,0,1059,1,0,0,0,0,1061,1,0,0,0,0,1063,1,0,0,0,0,1065,1,0,0,0,0,1067,1,0,0,0,0,1069,1,0,0,0,0,1071,1,0,0,0,0,1073,1,0,0,0,0,1075,1,0,0,0,0,1077,1,0,0,0,0,1079,1,0,0,0,0,1081,1,0,0,0,0,1083,1,0,0,0,0,1085,1,0,0,0,0,1087,1,0,0,0,0,1089,1,0,0,0,0,1091,1,0,0,0,0,1093,1,0,0,0,0,1095,1,0,0,0,0,1097,1,0,0,0,0,1099,1,0,0,0,0,1101,1,0,0,0,0,1103,1,0,0,0,0,1105,1,0,0,0,0,1107,1,0,0,0,0,1109,1,0,0,0,0,1111,1,0,0,0,0,1113,1,0,0,0,0,1115,1,0,0,0,0,1117,1,0,0,0,0,1119,1,0,0,0,0,1121,1,0,0,0,0,1123,1,0,0,0,0,1125,1,0,0,0,0,1127,1,0,0,0,0,1129,1,0,0,0,0,1131,1,0,0,0,0,1133,1,0,0,0,0,1135,1,0,0,0,0,1137,1,0,0,0,0,1139,1,0,0,0,0,1141,1,0,0,0,0,1143,1,0,0,0,0,1145,1,0,0,0,0,1147,1,0,0,0,0,1149,1,0,0,0,0,1151,1,0,0,0,0,1153,1,0,0,0,0,1155,1,0,0,0,0,1157,1,0,0,0,0,1159,1,0,0,0,0,1161,1,0,0,0,0,1163,1,0,0,0,0,1165,1,0,0,0,0,1167,1,0,0,0,0,1169,1,0,0,0,0,1171,1,0,0,0,0,1173,1,0,0,0,0,1175,1,0,0,0,0,1177,1,0,0,0,0,1179,1,0,0,0,0,1181,1,0,0,0,0,1183,1,0,0,0,0,1185,1,0,0,0,0,1187,1,0,0,0,0,1189,1,0,0,0,0,1191,1,0,0,0,0,1193,1,0,0,0,0,1195,1,0,0,0,0,1197,1,0,0,0,0,1199,1,0,0,0,0,1201,1,0,0,0,0,1203,1,0,0,0,0,1205,1,0,0,0,0,1207,1,0,0,0,0,1209,1,0,0,0,0,1211,1,0,0,0,0,1213,1,0,0,0,0,1215,1,0,0,0,0,1217,1,0,0,0,0,1219,1,0,0,0,0,1221,1,0,0,0,0,1223,1,0,0,0,0,1225,1,0,0,0,0,1227,1,0,0,0,0,1229,1,0,0,0,0,1231,1,0,0,0,0,1233,1,0,0,0,0,1235,1,0,0,0,0,1237,1,0,0,0,0,1239,1,0,0,0,0,1241,1,0,0,0,0,1243,1,0,0,0,0,1245,1,0,0,0,0,1247,1,0,0,0,0,1249,1,0,0,0,0,1251,1,0,0,0,0,1253,1,0,0,0,0,1255,1,0,0,0,0,1257,1,0,0,0,0,1259,1,0,0,0,0,1261,1,0,0,0,0,1263,1,0,0,0,0,1265,1,0,0,0,0,1267,1,0,0,0,0,1269,1,0,0,0,0,1271,1,0,0,0,0,1273,1,0,0,0,0,1275,1,0,0,0,0,1277,1,0,0,0,0,1279,1,0,0,0,0,1281,1,0,0,0,0,1283,1,0,0,0,0,1285,1,0,0,0,0,1287,1,0,0,0,0,1289,1,0,0,0,0,1291,1,0,0,0,0,1293,1,0,0,0,0,1295,1,0,0,0,0,1297,1,0,0,0,0,1299,1,0,0,0,0,1301,1,0,0,0,0,1303,1,0,0,0,0,1305,1,0,0,0,0,1307,1,0,0,0,0,1309,1,0,0,0,0,1311,1,0,0,0,0,1313,1,0,0,0,0,1315,1,0,0,0,0,1317,1,0,0,0,0,1319,1,0,0,0,0,1321,1,0,0,0,0,1323,1,0,0,0,0,1325,1,0,0,0,0,1327,1,0,0,0,0,1329,1,0,0,0,0,1331,1,0,0,0,0,1333,1,0,0,0,0,1335,1,0,0,0,0,1337,1,0,0,0,0,1339,1,0,0,0,0,1341,1,0,0,0,0,1343,1,0,0,0,0,1345,1,0,0,0,0,1347,1,0,0,0,0,1349,1,0,0,0,0,1351,1,0,0,0,0,1353,1,0,0,0,0,1355,1,0,0,0,0,1357,1,0,0,0,0,1359,1,0,0,0,0,1361,1,0,0,0,0,1363,1,0,0,0,0,1365,1,0,0,0,0,1367,1,0,0,0,0,1369,1,0,0,0,0,1371,1,0,0,0,0,1373,1,0,0,0,0,1375,1,0,0,0,0,1377,1,0,0,0,0,1379,1,0,0,0,0,1381,1,0,0,0,0,1383,1,0,0,0,0,1385,1,0,0,0,0,1387,1,0,0,0,0,1389,1,0,0,0,0,1391,1,0,0,0,0,1393,1,0,0,0,0,1395,1,0,0,0,0,1397,1,0,0,0,0,1399,1,0,0,0,0,1401,1,0,0,0,0,1403,1,0,0,0,0,1405,1,0,0,0,0,1407,1,0,0,0,0,1409,1,0,0,0,0,1411,1,0,0,0,0,1413,1,0,0,0,0,1415,1,0,0,0,0,1417,1,0,0,0,0,1419,1,0,0,0,0,1421,1,0,0,0,0,1423,1,0,0,0,0,1425,1,0,0,0,0,1427,1,0,0,0,0,1429,1,0,0,0,0,1431,1,0,0,0,0,1433,1,0,0,0,0,1435,1,0,0,0,0,1437,1,0,0,0,0,1439,1,0,0,0,0,1441,1,0,0,0,0,1443,1,0,0,0,0,1445,1,0,0,0,0,1447,1,0,0,0,0,1449,1,0,0,0,0,1451,1,0,0,0,0,1453,1,0,0,0,0,1455,1,0,0,0,0,1457,1,0,0,0,0,1459,1,0,0,0,0,1461,1,0,0,0,0,1463,1,0,0,0,0,1465,1,0,0,0,0,1467,1,0,0,0,0,1469,1,0,0,0,0,1471,1,0,0,0,0,1473,1,0,0,0,0,1475,1,0,0,0,0,1477,1,0,0,0,0,1479,1,0,0,0,0,1481,1,0,0,0,0,1483,1,0,0,0,0,1485,1,0,0,0,0,1487,1,0,0,0,0,1489,1,0,0,0,0,1491,1,0,0,0,0,1493,1,0,0,0,0,1495,1,0,0,0,0,1497,1,0,0,0,0,1499,1,0,0,0,0,1501,1,0,0,0,0,1503,1,0,0,0,0,1505,1,0,0,0,0,1507,1,0,0,0,0,1509,1,0,0,0,0,1511,1,0,0,0,0,1513,1,0,0,0,0,1515,1,0,0,0,0,1517,1,0,0,0,0,1519,1,0,0,0,0,1521,1,0,0,0,0,1523,1,0,0,0,0,1525,1,0,0,0,0,1527,1,0,0,0,0,1529,1,0,0,0,0,1531,1,0,0,0,0,1533,1,0,0,0,0,1535,1,0,0,0,0,1537,1,0,0,0,0,1539,1,0,0,0,0,1541,1,0,0,0,0,1543,1,0,0,0,0,1545,1,0,0,0,0,1547,1,0,0,0,0,1549,1,0,0,0,0,1551,1,0,0,0,0,1553,1,0,0,0,0,1555,1,0,0,0,0,1557,1,0,0,0,0,1559,1,0,0,0,0,1561,1,0,0,0,0,1563,1,0,0,0,0,1565,1,0,0,0,0,1567,1,0,0,0,0,1569,1,0,0,0,0,1571,1,0,0,0,0,1573,1,0,0,0,0,1575,1,0,0,0,0,1577,1,0,0,0,0,1579,1,0,0,0,0,1581,1,0,0,0,0,1583,1,0,0,0,0,1585,1,0,0,0,0,1587,1,0,0,0,0,1589,1,0,0,0,0,1591,1,0,0,0,0,1593,1,0,0,0,0,1595,1,0,0,0,0,1597,1,0,0,0,0,1599,1,0,0,0,0,1601,1,0,0,0,0,1603,1,0,0,0,0,1605,1,0,0,0,0,1607,1,0,0,0,0,1609,1,0,0,0,0,1611,1,0,0,0,0,1613,1,0,0,0,0,1615,1,0,0,0,0,1617,1,0,0,0,0,1619,1,0,0,0,0,1621,1,0,0,0,0,1623,1,0,0,0,0,1625,1,0,0,0,0,1627,1,0,0,0,0,1629,1,0,0,0,0,1631,1,0,0,0,0,1633,1,0,0,0,0,1635,1,0,0,0,0,1637,1,0,0,0,0,1639,1,0,0,0,0,1641,1,0,0,0,0,1643,1,0,0,0,0,1645,1,0,0,0,0,1647,1,0,0,0,0,1649,1,0,0,0,0,1651,1,0,0,0,0,1653,1,0,0,0,0,1655,1,0,0,0,0,1657,1,0,0,0,0,1659,1,0,0,0,0,1661,1,0,0,0,0,1663,1,0,0,0,0,1665,1,0,0,0,0,1667,1,0,0,0,0,1669,1,0,0,0,0,1671,1,0,0,0,0,1673,1,0,0,0,0,1675,1,0,0,0,0,1677,1,0,0,0,0,1679,1,0,0,0,0,1681,1,0,0,0,0,1683,1,0,0,0,0,1685,1,0,0,0,0,1687,1,0,0,0,0,1689,1,0,0,0,0,1691,1,0,0,0,0,1693,1,0,0,0,0,1695,1,0,0,0,0,1697,1,0,0,0,0,1699,1,0,0,0,0,1701,1,0,0,0,0,1703,1,0,0,0,0,1705,1,0,0,0,0,1707,1,0,0,0,0,1709,1,0,0,0,0,1711,1,0,0,0,0,1713,1,0,0,0,0,1715,1,0,0,0,0,1717,1,0,0,0,0,1719,1,0,0,0,0,1721,1,0,0,0,0,1723,1,0,0,0,0,1725,1,0,0,0,0,1727,1,0,0,0,0,1729,1,0,0,0,0,1731,1,0,0,0,0,1733,1,0,0,0,0,1735,1,0,0,0,0,1737,1,0,0,0,0,1739,1,0,0,0,0,1741,1,0,0,0,0,1743,1,0,0,0,0,1745,1,0,0,0,0,1747,1,0,0,0,0,1749,1,0,0,0,0,1751,1,0,0,0,0,1753,1,0,0,0,0,1755,1,0,0,0,0,1757,1,0,0,0,0,1759,1,0,0,0,0,1761,1,0,0,0,0,1763,1,0,0,0,0,1765,1,0,0,0,0,1767,1,0,0,0,0,1769,1,0,0,0,0,1771,1,0,0,0,0,1773,1,0,0,0,0,1775,1,0,0,0,0,1777,1,0,0,0,0,1779,1,0,0,0,0,1781,1,0,0,0,0,1783,1,0,0,0,0,1785,1,0,0,0,0,1787,1,0,0,0,0,1789,1,0,0,0,0,1791,1,0,0,0,0,1793,1,0,0,0,0,1795,1,0,0,0,0,1797,1,0,0,0,0,1799,1,0,0,0,0,1801,1,0,0,0,0,1803,1,0,0,0,0,1805,1,0,0,0,0,1807,1,0,0,0,0,1809,1,0,0,0,0,1811,1,0,0,0,0,1813,1,0,0,0,0,1815,1,0,0,0,0,1817,1,0,0,0,0,1819,1,0,0,0,0,1821,1,0,0,0,0,1823,1,0,0,0,0,1825,1,0,0,0,0,1827,1,0,0,0,0,1829,1,0,0,0,0,1831,1,0,0,0,0,1833,1,0,0,0,0,1835,1,0,0,0,0,1837,1,0,0,0,0,1839,1,0,0,0,0,1841,1,0,0,0,0,1843,1,0,0,0,0,1845,1,0,0,0,0,1847,1,0,0,0,0,1849,1,0,0,0,0,1851,1,0,0,0,0,1853,1,0,0,0,0,1855,1,0,0,0,0,1857,1,0,0,0,0,1859,1,0,0,0,0,1861,1,0,0,0,0,1863,1,0,0,0,0,1865,1,0,0,0,0,1867,1,0,0,0,0,1869,1,0,0,0,0,1871,1,0,0,0,0,1873,1,0,0,0,0,1875,1,0,0,0,0,1877,1,0,0,0,0,1879,1,0,0,0,0,1881,1,0,0,0,0,1883,1,0,0,0,0,1885,1,0,0,0,0,1887,1,0,0,0,0,1889,1,0,0,0,0,1891,1,0,0,0,0,1893,1,0,0,0,0,1895,1,0,0,0,0,1897,1,0,0,0,0,1899,1,0,0,0,0,1901,1,0,0,0,0,1903,1,0,0,0,0,1905,1,0,0,0,0,1907,1,0,0,0,0,1909,1,0,0,0,0,1911,1,0,0,0,0,1913,1,0,0,0,0,1915,1,0,0,0,0,1917,1,0,0,0,0,1919,1,0,0,0,0,1921,1,0,0,0,0,1923,1,0,0,0,0,1925,1,0,0,0,0,1927,1,0,0,0,0,1929,1,0,0,0,0,1931,1,0,0,0,0,1933,1,0,0,0,0,1935,1,0,0,0,0,1937,1,0,0,0,0,1939,1,0,0,0,0,1941,1,0,0,0,0,1943,1,0,0,0,0,1945,1,0,0,0,0,1947,1,0,0,0,0,1949,1,0,0,0,0,1951,1,0,0,0,0,1953,1,0,0,0,0,1955,1,0,0,0,0,1957,1,0,0,0,0,1959,1,0,0,0,0,1961,1,0,0,0,0,1963,1,0,0,0,0,1965,1,0,0,0,0,1967,1,0,0,0,0,1969,1,0,0,0,0,1971,1,0,0,0,0,1973,1,0,0,0,0,1975,1,0,0,0,0,1977,1,0,0,0,0,1979,1,0,0,0,0,1981,1,0,0,0,0,1983,1,0,0,0,0,1985,1,0,0,0,0,1987,1,0,0,0,0,1989,1,0,0,0,0,1991,1,0,0,0,0,1993,1,0,0,0,0,1995,1,0,0,0,0,1997,1,0,0,0,0,1999,1,0,0,0,0,2001,1,0,0,0,0,2003,1,0,0,0,0,2005,1,0,0,0,0,2007,1,0,0,0,0,2009,1,0,0,0,0,2011,1,0,0,0,0,2013,1,0,0,0,0,2015,1,0,0,0,0,2017,1,0,0,0,0,2019,1,0,0,0,0,2021,1,0,0,0,0,2023,1,0,0,0,0,2025,1,0,0,0,0,2027,1,0,0,0,0,2029,1,0,0,0,0,2031,1,0,0,0,0,2033,1,0,0,0,0,2035,1,0,0,0,0,2037,1,0,0,0,0,2039,1,0,0,0,0,2041,1,0,0,0,0,2043,1,0,0,0,0,2045,1,0,0,0,0,2047,1,0,0,0,0,2049,1,0,0,0,0,2051,1,0,0,0,0,2053,1,0,0,0,0,2055,1,0,0,0,0,2057,1,0,0,0,0,2059,1,0,0,0,0,2061,1,0,0,0,0,2063,1,0,0,0,0,2065,1,0,0,0,0,2067,1,0,0,0,0,2069,1,0,0,0,0,2071,1,0,0,0,0,2073,1,0,0,0,0,2075,1,0,0,0,0,2077,1,0,0,0,0,2079,1,0,0,0,0,2081,1,0,0,0,0,2083,1,0,0,0,0,2085,1,0,0,0,0,2087,1,0,0,0,0,2089,1,0,0,0,0,2091,1,0,0,0,0,2093,1,0,0,0,0,2095,1,0,0,0,0,2097,1,0,0,0,0,2099,1,0,0,0,0,2101,1,0,0,0,0,2103,1,0,0,0,0,2105,1,0,0,0,0,2107,1,0,0,0,0,2109,1,0,0,0,0,2111,1,0,0,0,0,2113,1,0,0,0,0,2115,1,0,0,0,0,2117,1,0,0,0,0,2119,1,0,0,0,0,2121,1,0,0,0,0,2123,1,0,0,0,0,2125,1,0,0,0,0,2127,1,0,0,0,0,2129,1,0,0,0,0,2131,1,0,0,0,0,2133,1,0,0,0,0,2135,1,0,0,0,0,2137,1,0,0,0,0,2139,1,0,0,0,0,2141,1,0,0,0,0,2143,1,0,0,0,0,2145,1,0,0,0,0,2147,1,0,0,0,0,2149,1,0,0,0,0,2151,1,0,0,0,0,2153,1,0,0,0,0,2155,1,0,0,0,0,2157,1,0,0,0,0,2159,1,0,0,0,0,2161,1,0,0,0,0,2163,1,0,0,0,0,2165,1,0,0,0,0,2167,1,0,0,0,0,2169,1,0,0,0,0,2171,1,0,0,0,0,2173,1,0,0,0,0,2175,1,0,0,0,0,2177,1,0,0,0,0,2179,1,0,0,0,0,2181,1,0,0,0,0,2183,1,0,0,0,0,2185,1,0,0,0,0,2187,1,0,0,0,0,2189,1,0,0,0,0,2191,1,0,0,0,0,2193,1,0,0,0,0,2195,1,0,0,0,0,2197,1,0,0,0,0,2199,1,0,0,0,0,2201,1,0,0,0,0,2203,1,0,0,0,0,2205,1,0,0,0,0,2207,1,0,0,0,0,2209,1,0,0,0,0,2211,1,0,0,0,0,2213,1,0,0,0,0,2215,1,0,0,0,0,2217,1,0,0,0,0,2219,1,0,0,0,0,2221,1,0,0,0,0,2223,1,0,0,0,0,2225,1,0,0,0,0,2227,1,0,0,0,0,2229,1,0,0,0,0,2231,1,0,0,0,0,2233,1,0,0,0,0,2235,1,0,0,0,0,2237,1,0,0,0,0,2239,1,0,0,0,0,2241,1,0,0,0,0,2243,1,0,0,0,0,2245,1,0,0,0,0,2247,1,0,0,0,0,2249,1,0,0,0,0,2251,1,0,0,0,0,2253,1,0,0,0,0,2255,1,0,0,0,0,2257,1,0,0,0,0,2259,1,0,0,0,0,2261,1,0,0,0,0,2263,1,0,0,0,0,2265,1,0,0,0,0,2267,1,0,0,0,0,2269,1,0,0,0,0,2271,1,0,0,0,0,2273,1,0,0,0,0,2275,1,0,0,0,0,2277,1,0,0,0,0,2279,1,0,0,0,0,2281,1,0,0,0,0,2283,1,0,0,0,0,2285,1,0,0,0,0,2287,1,0,0,0,0,2291,1,0,0,0,0,2293,1,0,0,0,0,2295,1,0,0,0,0,2297,1,0,0,0,0,2299,1,0,0,0,0,2301,1,0,0,0,0,2303,1,0,0,0,0,2305,1,0,0,0,0,2307,1,0,0,0,0,2309,1,0,0,0,0,2311,1,0,0,0,0,2313,1,0,0,0,0,2315,1,0,0,0,0,2317,1,0,0,0,0,2319,1,0,0,0,0,2321,1,0,0,0,0,2343,1,0,0,0,1,2346,1,0,0,0,3,2352,1,0,0,0,5,2366,1,0,0,0,7,2415,1,0,0,0,9,2419,1,0,0,0,11,2423,1,0,0,0,13,2427,1,0,0,0,15,2433,1,0,0,0,17,2440,1,0,0,0,19,2448,1,0,0,0,21,2452,1,0,0,0,23,2458,1,0,0,0,25,2461,1,0,0,0,27,2465,1,0,0,0,29,2475,1,0,0,0,31,2482,1,0,0,0,33,2490,1,0,0,0,35,2495,1,0,0,0,37,2503,1,0,0,0,39,2506,1,0,0,0,41,2511,1,0,0,0,43,2519,1,0,0,0,45,2524,1,0,0,0,47,2529,1,0,0,0,49,2536,1,0,0,0,51,2546,1,0,0,0,53,2552,1,0,0,0,55,2560,1,0,0,0,57,2567,1,0,0,0,59,2577,1,0,0,0,61,2588,1,0,0,0,63,2597,1,0,0,0,65,2605,1,0,0,0,67,2612,1,0,0,0,69,2618,1,0,0,0,71,2626,1,0,0,0,73,2639,1,0,0,0,75,2652,1,0,0,0,77,2659,1,0,0,0,79,2668,1,0,0,0,81,2678,1,0,0,0,83,2686,1,0,0,0,85,2694,1,0,0,0,87,2702,1,0,0,0,89,2709,1,0,0,0,91,2714,1,0,0,0,93,2723,1,0,0,0,95,2737,1,0,0,0,97,2749,1,0,0,0,99,2758,1,0,0,0,101,2770,1,0,0,0,103,2775,1,0,0,0,105,2780,1,0,0,0,107,2785,1,0,0,0,109,2792,1,0,0,0,111,2798,1,0,0,0,113,2807,1,0,0,0,115,2816,1,0,0,0,117,2824,1,0,0,0,119,2831,1,0,0,0,121,2838,1,0,0,0,123,2843,1,0,0,0,125,2851,1,0,0,0,127,2857,1,0,0,0,129,2863,1,0,0,0,131,2867,1,0,0,0,133,2873,1,0,0,0,135,2881,1,0,0,0,137,2886,1,0,0,0,139,2895,1,0,0,0,141,2905,1,0,0,0,143,2909,1,0,0,0,145,2915,1,0,0,0,147,2921,1,0,0,0,149,2928,1,0,0,0,151,2942,1,0,0,0,153,2952,1,0,0,0,155,2955,1,0,0,0,157,2962,1,0,0,0,159,2970,1,0,0,0,161,2973,1,0,0,0,163,2979,1,0,0,0,165,2986,1,0,0,0,167,2992,1,0,0,0,169,2998,1,0,0,0,171,3005,1,0,0,0,173,3014,1,0,0,0,175,3019,1,0,0,0,177,3022,1,0,0,0,179,3030,1,0,0,0,181,3035,1,0,0,0,183,3039,1,0,0,0,185,3044,1,0,0,0,187,3049,1,0,0,0,189,3057,1,0,0,0,191,3065,1,0,0,0,193,3071,1,0,0,0,195,3076,1,0,0,0,197,3081,1,0,0,0,199,3087,1,0,0,0,201,3094,1,0,0,0,203,3100,1,0,0,0,205,3105,1,0,0,0,207,3110,1,0,0,0,209,3117,1,0,0,0,211,3122,1,0,0,0,213,3135,1,0,0,0,215,3147,1,0,0,0,217,3177,1,0,0,0,219,3183,1,0,0,0,221,3192,1,0,0,0,223,3201,1,0,0,0,225,3210,1,0,0,0,227,3218,1,0,0,0,229,3222,1,0,0,0,231,3241,1,0,0,0,233,3246,1,0,0,0,235,3253,1,0,0,0,237,3256,1,0,0,0,239,3265,1,0,0,0,241,3272,1,0,0,0,243,3281,1,0,0,0,245,3292,1,0,0,0,247,3295,1,0,0,0,249,3301,1,0,0,0,251,3305,1,0,0,0,253,3311,1,0,0,0,255,3319,1,0,0,0,257,3324,1,0,0,0,259,3334,1,0,0,0,261,3342,1,0,0,0,263,3352,1,0,0,0,265,3358,1,0,0,0,267,3364,1,0,0,0,269,3369,1,0,0,0,271,3375,1,0,0,0,273,3386,1,0,0,0,275,3393,1,0,0,0,277,3401,1,0,0,0,279,3408,1,0,0,0,281,3415,1,0,0,0,283,3423,1,0,0,0,285,3431,1,0,0,0,287,3440,1,0,0,0,289,3449,1,0,0,0,291,3456,1,0,0,0,293,3463,1,0,0,0,295,3470,1,0,0,0,297,3476,1,0,0,0,299,3482,1,0,0,0,301,3489,1,0,0,0,303,3497,1,0,0,0,305,3504,1,0,0,0,307,3508,1,0,0,0,309,3518,1,0,0,0,311,3523,1,0,0,0,313,3530,1,0,0,0,315,3535,1,0,0,0,317,3554,1,0,0,0,319,3562,1,0,0,0,321,3566,1,0,0,0,323,3579,1,0,0,0,325,3588,1,0,0,0,327,3599,1,0,0,0,329,3614,1,0,0,0,331,3634,1,0,0,0,333,3651,1,0,0,0,335,3655,1,0,0,0,337,3663,1,0,0,0,339,3672,1,0,0,0,341,3682,1,0,0,0,343,3696,1,0,0,0,345,3702,1,0,0,0,347,3713,1,0,0,0,349,3718,1,0,0,0,351,3721,1,0,0,0,353,3730,1,0,0,0,355,3738,1,0,0,0,357,3743,1,0,0,0,359,3748,1,0,0,0,361,3754,1,0,0,0,363,3761,1,0,0,0,365,3768,1,0,0,0,367,3777,1,0,0,0,369,3784,1,0,0,0,371,3790,1,0,0,0,373,3794,1,0,0,0,375,3800,1,0,0,0,377,3807,1,0,0,0,379,3812,1,0,0,0,381,3818,1,0,0,0,383,3824,1,0,0,0,385,3829,1,0,0,0,387,3835,1,0,0,0,389,3839,1,0,0,0,391,3848,1,0,0,0,393,3856,1,0,0,0,395,3865,1,0,0,0,397,3875,1,0,0,0,399,3885,1,0,0,0,401,3889,1,0,0,0,403,3894,1,0,0,0,405,3899,1,0,0,0,407,3904,1,0,0,0,409,3909,1,0,0,0,411,3914,1,0,0,0,413,3922,1,0,0,0,415,3929,1,0,0,0,417,3934,1,0,0,0,419,3941,1,0,0,0,421,3951,1,0,0,0,423,3957,1,0,0,0,425,3964,1,0,0,0,427,3971,1,0,0,0,429,3979,1,0,0,0,431,3983,1,0,0,0,433,3991,1,0,0,0,435,3996,1,0,0,0,437,4001,1,0,0,0,439,4011,1,0,0,0,441,4020,1,0,0,0,443,4025,1,0,0,0,445,4030,1,0,0,0,447,4038,1,0,0,0,449,4047,1,0,0,0,451,4056,1,0,0,0,453,4063,1,0,0,0,455,4073,1,0,0,0,457,4082,1,0,0,0,459,4087,1,0,0,0,461,4098,1,0,0,0,463,4103,1,0,0,0,465,4112,1,0,0,0,467,4121,1,0,0,0,469,4126,1,0,0,0,471,4137,1,0,0,0,473,4146,1,0,0,0,475,4151,1,0,0,0,477,4159,1,0,0,0,479,4166,1,0,0,0,481,4177,1,0,0,0,483,4186,1,0,0,0,485,4197,1,0,0,0,487,4208,1,0,0,0,489,4220,1,0,0,0,491,4232,1,0,0,0,493,4246,1,0,0,0,495,4265,1,0,0,0,497,4284,1,0,0,0,499,4301,1,0,0,0,501,4317,1,0,0,0,503,4328,1,0,0,0,505,4342,1,0,0,0,507,4360,1,0,0,0,509,4378,1,0,0,0,511,4392,1,0,0,0,513,4411,1,0,0,0,515,4422,1,0,0,0,517,4435,1,0,0,0,519,4447,1,0,0,0,521,4457,1,0,0,0,523,4469,1,0,0,0,525,4480,1,0,0,0,527,4497,1,0,0,0,529,4517,1,0,0,0,531,4529,1,0,0,0,533,4544,1,0,0,0,535,4558,1,0,0,0,537,4570,1,0,0,0,539,4581,1,0,0,0,541,4593,1,0,0,0,543,4606,1,0,0,0,545,4624,1,0,0,0,547,4654,1,0,0,0,549,4666,1,0,0,0,551,4675,1,0,0,0,553,4693,1,0,0,0,555,4711,1,0,0,0,557,4722,1,0,0,0,559,4732,1,0,0,0,561,4745,1,0,0,0,563,4756,1,0,0,0,565,4767,1,0,0,0,567,4774,1,0,0,0,569,4785,1,0,0,0,571,4790,1,0,0,0,573,4794,1,0,0,0,575,4802,1,0,0,0,577,4809,1,0,0,0,579,4817,1,0,0,0,581,4823,1,0,0,0,583,4833,1,0,0,0,585,4844,1,0,0,0,587,4856,1,0,0,0,589,4869,1,0,0,0,591,4873,1,0,0,0,593,4884,1,0,0,0,595,4889,1,0,0,0,597,4893,1,0,0,0,599,4897,1,0,0,0,601,4903,1,0,0,0,603,4913,1,0,0,0,605,4926,1,0,0,0,607,4931,1,0,0,0,609,4942,1,0,0,0,611,4946,1,0,0,0,613,4953,1,0,0,0,615,4964,1,0,0,0,617,4976,1,0,0,0,619,4980,1,0,0,0,621,4988,1,0,0,0,623,4997,1,0,0,0,625,5006,1,0,0,0,627,5019,1,0,0,0,629,5032,1,0,0,0,631,5050,1,0,0,0,633,5060,1,0,0,0,635,5068,1,0,0,0,637,5076,1,0,0,0,639,5085,1,0,0,0,641,5094,1,0,0,0,643,5102,1,0,0,0,645,5117,1,0,0,0,647,5121,1,0,0,0,649,5130,1,0,0,0,651,5137,1,0,0,0,653,5147,1,0,0,0,655,5155,1,0,0,0,657,5160,1,0,0,0,659,5169,1,0,0,0,661,5178,1,0,0,0,663,5192,1,0,0,0,665,5200,1,0,0,0,667,5207,1,0,0,0,669,5213,1,0,0,0,671,5223,1,0,0,0,673,5233,1,0,0,0,675,5237,1,0,0,0,677,5240,1,0,0,0,679,5248,1,0,0,0,681,5259,1,0,0,0,683,5275,1,0,0,0,685,5290,1,0,0,0,687,5305,1,0,0,0,689,5311,1,0,0,0,691,5318,1,0,0,0,693,5322,1,0,0,0,695,5328,1,0,0,0,697,5333,1,0,0,0,699,5341,1,0,0,0,701,5347,1,0,0,0,703,5353,1,0,0,0,705,5362,1,0,0,0,707,5368,1,0,0,0,709,5376,1,0,0,0,711,5384,1,0,0,0,713,5393,1,0,0,0,715,5407,1,0,0,0,717,5414,1,0,0,0,719,5427,1,0,0,0,721,5434,1,0,0,0,723,5440,1,0,0,0,725,5451,1,0,0,0,727,5460,1,0,0,0,729,5465,1,0,0,0,731,5473,1,0,0,0,733,5487,1,0,0,0,735,5499,1,0,0,0,737,5507,1,0,0,0,739,5514,1,0,0,0,741,5522,1,0,0,0,743,5533,1,0,0,0,745,5544,1,0,0,0,747,5556,1,0,0,0,749,5567,1,0,0,0,751,5575,1,0,0,0,753,5586,1,0,0,0,755,5597,1,0,0,0,757,5616,1,0,0,0,759,5634,1,0,0,0,761,5650,1,0,0,0,763,5659,1,0,0,0,765,5667,1,0,0,0,767,5680,1,0,0,0,769,5685,1,0,0,0,771,5689,1,0,0,0,773,5695,1,0,0,0,775,5707,1,0,0,0,777,5712,1,0,0,0,779,5721,1,0,0,0,781,5732,1,0,0,0,783,5745,1,0,0,0,785,5753,1,0,0,0,787,5769,1,0,0,0,789,5782,1,0,0,0,791,5792,1,0,0,0,793,5800,1,0,0,0,795,5808,1,0,0,0,797,5813,1,0,0,0,799,5816,1,0,0,0,801,5825,1,0,0,0,803,5835,1,0,0,0,805,5843,1,0,0,0,807,5850,1,0,0,0,809,5860,1,0,0,0,811,5871,1,0,0,0,813,5889,1,0,0,0,815,5893,1,0,0,0,817,5898,1,0,0,0,819,5905,1,0,0,0,821,5913,1,0,0,0,823,5919,1,0,0,0,825,5926,1,0,0,0,827,5933,1,0,0,0,829,5938,1,0,0,0,831,5944,1,0,0,0,833,5951,1,0,0,0,835,5957,1,0,0,0,837,5966,1,0,0,0,839,5976,1,0,0,0,841,5983,1,0,0,0,843,5990,1,0,0,0,845,5999,1,0,0,0,847,6011,1,0,0,0,849,6033,1,0,0,0,851,6038,1,0,0,0,853,6045,1,0,0,0,855,6052,1,0,0,0,857,6068,1,0,0,0,859,6075,1,0,0,0,861,6081,1,0,0,0,863,6087,1,0,0,0,865,6093,1,0,0,0,867,6103,1,0,0,0,869,6111,1,0,0,0,871,6117,1,0,0,0,873,6122,1,0,0,0,875,6131,1,0,0,0,877,6139,1,0,0,0,879,6146,1,0,0,0,881,6153,1,0,0,0,883,6171,1,0,0,0,885,6179,1,0,0,0,887,6184,1,0,0,0,889,6189,1,0,0,0,891,6197,1,0,0,0,893,6202,1,0,0,0,895,6208,1,0,0,0,897,6219,1,0,0,0,899,6237,1,0,0,0,901,6244,1,0,0,0,903,6254,1,0,0,0,905,6262,1,0,0,0,907,6275,1,0,0,0,909,6283,1,0,0,0,911,6297,1,0,0,0,913,6305,1,0,0,0,915,6314,1,0,0,0,917,6322,1,0,0,0,919,6332,1,0,0,0,921,6340,1,0,0,0,923,6343,1,0,0,0,925,6353,1,0,0,0,927,6357,1,0,0,0,929,6367,1,0,0,0,931,6374,1,0,0,0,933,6379,1,0,0,0,935,6394,1,0,0,0,937,6403,1,0,0,0,939,6408,1,0,0,0,941,6415,1,0,0,0,943,6420,1,0,0,0,945,6426,1,0,0,0,947,6431,1,0,0,0,949,6437,1,0,0,0,951,6445,1,0,0,0,953,6450,1,0,0,0,955,6457,1,0,0,0,957,6478,1,0,0,0,959,6499,1,0,0,0,961,6512,1,0,0,0,963,6536,1,0,0,0,965,6548,1,0,0,0,967,6564,1,0,0,0,969,6579,1,0,0,0,971,6595,1,0,0,0,973,6607,1,0,0,0,975,6626,1,0,0,0,977,6637,1,0,0,0,979,6651,1,0,0,0,981,6669,1,0,0,0,983,6685,1,0,0,0,985,6703,1,0,0,0,987,6718,1,0,0,0,989,6737,1,0,0,0,991,6752,1,0,0,0,993,6771,1,0,0,0,995,6783,1,0,0,0,997,6808,1,0,0,0,999,6829,1,0,0,0,1001,6838,1,0,0,0,1003,6847,1,0,0,0,1005,6868,1,0,0,0,1007,6889,1,0,0,0,1009,6896,1,0,0,0,1011,6903,1,0,0,0,1013,6909,1,0,0,0,1015,6922,1,0,0,0,1017,6926,1,0,0,0,1019,6934,1,0,0,0,1021,6943,1,0,0,0,1023,6948,1,0,0,0,1025,6955,1,0,0,0,1027,6961,1,0,0,0,1029,6967,1,0,0,0,1031,6979,1,0,0,0,1033,6984,1,0,0,0,1035,6990,1,0,0,0,1037,6996,1,0,0,0,1039,7002,1,0,0,0,1041,7007,1,0,0,0,1043,7010,1,0,0,0,1045,7018,1,0,0,0,1047,7025,1,0,0,0,1049,7033,1,0,0,0,1051,7044,1,0,0,0,1053,7055,1,0,0,0,1055,7062,1,0,0,0,1057,7072,1,0,0,0,1059,7077,1,0,0,0,1061,7082,1,0,0,0,1063,7090,1,0,0,0,1065,7097,1,0,0,0,1067,7100,1,0,0,0,1069,7103,1,0,0,0,1071,7116,1,0,0,0,1073,7120,1,0,0,0,1075,7127,1,0,0,0,1077,7132,1,0,0,0,1079,7137,1,0,0,0,1081,7153,1,0,0,0,1083,7161,1,0,0,0,1085,7167,1,0,0,0,1087,7177,1,0,0,0,1089,7182,1,0,0,0,1091,7198,1,0,0,0,1093,7221,1,0,0,0,1095,7228,1,0,0,0,1097,7236,1,0,0,0,1099,7249,1,0,0,0,1101,7260,1,0,0,0,1103,7269,1,0,0,0,1105,7288,1,0,0,0,1107,7294,1,0,0,0,1109,7301,1,0,0,0,1111,7312,1,0,0,0,1113,7320,1,0,0,0,1115,7325,1,0,0,0,1117,7334,1,0,0,0,1119,7344,1,0,0,0,1121,7352,1,0,0,0,1123,7361,1,0,0,0,1125,7366,1,0,0,0,1127,7378,1,0,0,0,1129,7386,1,0,0,0,1131,7395,1,0,0,0,1133,7401,1,0,0,0,1135,7407,1,0,0,0,1137,7413,1,0,0,0,1139,7421,1,0,0,0,1141,7429,1,0,0,0,1143,7439,1,0,0,0,1145,7456,1,0,0,0,1147,7466,1,0,0,0,1149,7472,1,0,0,0,1151,7487,1,0,0,0,1153,7501,1,0,0,0,1155,7510,1,0,0,0,1157,7517,1,0,0,0,1159,7528,1,0,0,0,1161,7535,1,0,0,0,1163,7551,1,0,0,0,1165,7570,1,0,0,0,1167,7590,1,0,0,0,1169,7613,1,0,0,0,1171,7634,1,0,0,0,1173,7658,1,0,0,0,1175,7686,1,0,0,0,1177,7698,1,0,0,0,1179,7704,1,0,0,0,1181,7712,1,0,0,0,1183,7719,1,0,0,0,1185,7737,1,0,0,0,1187,7747,1,0,0,0,1189,7755,1,0,0,0,1191,7761,1,0,0,0,1193,7766,1,0,0,0,1195,7775,1,0,0,0,1197,7782,1,0,0,0,1199,7789,1,0,0,0,1201,7793,1,0,0,0,1203,7798,1,0,0,0,1205,7809,1,0,0,0,1207,7815,1,0,0,0,1209,7825,1,0,0,0,1211,7834,1,0,0,0,1213,7843,1,0,0,0,1215,7852,1,0,0,0,1217,7859,1,0,0,0,1219,7867,1,0,0,0,1221,7873,1,0,0,0,1223,7880,1,0,0,0,1225,7887,1,0,0,0,1227,7894,1,0,0,0,1229,7900,1,0,0,0,1231,7905,1,0,0,0,1233,7914,1,0,0,0,1235,7921,1,0,0,0,1237,7926,1,0,0,0,1239,7933,1,0,0,0,1241,7940,1,0,0,0,1243,7947,1,0,0,0,1245,7963,1,0,0,0,1247,7982,1,0,0,0,1249,7999,1,0,0,0,1251,8017,1,0,0,0,1253,8027,1,0,0,0,1255,8040,1,0,0,0,1257,8051,1,0,0,0,1259,8057,1,0,0,0,1261,8064,1,0,0,0,1263,8082,1,0,0,0,1265,8099,1,0,0,0,1267,8118,1,0,0,0,1269,8125,1,0,0,0,1271,8130,1,0,0,0,1273,8138,1,0,0,0,1275,8145,1,0,0,0,1277,8152,1,0,0,0,1279,8168,1,0,0,0,1281,8176,1,0,0,0,1283,8189,1,0,0,0,1285,8203,1,0,0,0,1287,8211,1,0,0,0,1289,8217,1,0,0,0,1291,8226,1,0,0,0,1293,8237,1,0,0,0,1295,8248,1,0,0,0,1297,8259,1,0,0,0,1299,8269,1,0,0,0,1301,8279,1,0,0,0,1303,8284,1,0,0,0,1305,8296,1,0,0,0,1307,8308,1,0,0,0,1309,8322,1,0,0,0,1311,8331,1,0,0,0,1313,8340,1,0,0,0,1315,8350,1,0,0,0,1317,8360,1,0,0,0,1319,8369,1,0,0,0,1321,8386,1,0,0,0,1323,8396,1,0,0,0,1325,8404,1,0,0,0,1327,8410,1,0,0,0,1329,8418,1,0,0,0,1331,8423,1,0,0,0,1333,8431,1,0,0,0,1335,8446,1,0,0,0,1337,8457,1,0,0,0,1339,8463,1,0,0,0,1341,8473,1,0,0,0,1343,8478,1,0,0,0,1345,8486,1,0,0,0,1347,8494,1,0,0,0,1349,8499,1,0,0,0,1351,8508,1,0,0,0,1353,8515,1,0,0,0,1355,8523,1,0,0,0,1357,8528,1,0,0,0,1359,8536,1,0,0,0,1361,8541,1,0,0,0,1363,8544,1,0,0,0,1365,8548,1,0,0,0,1367,8552,1,0,0,0,1369,8556,1,0,0,0,1371,8560,1,0,0,0,1373,8564,1,0,0,0,1375,8568,1,0,0,0,1377,8577,1,0,0,0,1379,8585,1,0,0,0,1381,8591,1,0,0,0,1383,8595,1,0,0,0,1385,8600,1,0,0,0,1387,8607,1,0,0,0,1389,8612,1,0,0,0,1391,8619,1,0,0,0,1393,8631,1,0,0,0,1395,8637,1,0,0,0,1397,8664,1,0,0,0,1399,8683,1,0,0,0,1401,8695,1,0,0,0,1403,8723,1,0,0,0,1405,8736,1,0,0,0,1407,8749,1,0,0,0,1409,8773,1,0,0,0,1411,8785,1,0,0,0,1413,8802,1,0,0,0,1415,8823,1,0,0,0,1417,8831,1,0,0,0,1419,8836,1,0,0,0,1421,8851,1,0,0,0,1423,8867,1,0,0,0,1425,8881,1,0,0,0,1427,8903,1,0,0,0,1429,8916,1,0,0,0,1431,8929,1,0,0,0,1433,8950,1,0,0,0,1435,8974,1,0,0,0,1437,8998,1,0,0,0,1439,9021,1,0,0,0,1441,9028,1,0,0,0,1443,9035,1,0,0,0,1445,9051,1,0,0,0,1447,9075,1,0,0,0,1449,9102,1,0,0,0,1451,9113,1,0,0,0,1453,9121,1,0,0,0,1455,9128,1,0,0,0,1457,9148,1,0,0,0,1459,9172,1,0,0,0,1461,9193,1,0,0,0,1463,9213,1,0,0,0,1465,9224,1,0,0,0,1467,9232,1,0,0,0,1469,9235,1,0,0,0,1471,9261,1,0,0,0,1473,9290,1,0,0,0,1475,9302,1,0,0,0,1477,9315,1,0,0,0,1479,9324,1,0,0,0,1481,9330,1,0,0,0,1483,9353,1,0,0,0,1485,9360,1,0,0,0,1487,9383,1,0,0,0,1489,9403,1,0,0,0,1491,9420,1,0,0,0,1493,9429,1,0,0,0,1495,9435,1,0,0,0,1497,9440,1,0,0,0,1499,9447,1,0,0,0,1501,9454,1,0,0,0,1503,9461,1,0,0,0,1505,9468,1,0,0,0,1507,9474,1,0,0,0,1509,9480,1,0,0,0,1511,9486,1,0,0,0,1513,9492,1,0,0,0,1515,9497,1,0,0,0,1517,9505,1,0,0,0,1519,9511,1,0,0,0,1521,9519,1,0,0,0,1523,9526,1,0,0,0,1525,9530,1,0,0,0,1527,9538,1,0,0,0,1529,9544,1,0,0,0,1531,9551,1,0,0,0,1533,9555,1,0,0,0,1535,9563,1,0,0,0,1537,9569,1,0,0,0,1539,9575,1,0,0,0,1541,9582,1,0,0,0,1543,9589,1,0,0,0,1545,9596,1,0,0,0,1547,9603,1,0,0,0,1549,9609,1,0,0,0,1551,9618,1,0,0,0,1553,9623,1,0,0,0,1555,9628,1,0,0,0,1557,9635,1,0,0,0,1559,9640,1,0,0,0,1561,9645,1,0,0,0,1563,9651,1,0,0,0,1565,9659,1,0,0,0,1567,9665,1,0,0,0,1569,9670,1,0,0,0,1571,9678,1,0,0,0,1573,9686,1,0,0,0,1575,9694,1,0,0,0,1577,9704,1,0,0,0,1579,9708,1,0,0,0,1581,9718,1,0,0,0,1583,9725,1,0,0,0,1585,9732,1,0,0,0,1587,9743,1,0,0,0,1589,9750,1,0,0,0,1591,9754,1,0,0,0,1593,9765,1,0,0,0,1595,9784,1,0,0,0,1597,9791,1,0,0,0,1599,9802,1,0,0,0,1601,9812,1,0,0,0,1603,9824,1,0,0,0,1605,9837,1,0,0,0,1607,9856,1,0,0,0,1609,9871,1,0,0,0,1611,9880,1,0,0,0,1613,9891,1,0,0,0,1615,9907,1,0,0,0,1617,9918,1,0,0,0,1619,9931,1,0,0,0,1621,9937,1,0,0,0,1623,9945,1,0,0,0,1625,9949,1,0,0,0,1627,9954,1,0,0,0,1629,9962,1,0,0,0,1631,9970,1,0,0,0,1633,9982,1,0,0,0,1635,9994,1,0,0,0,1637,9999,1,0,0,0,1639,10008,1,0,0,0,1641,10013,1,0,0,0,1643,10020,1,0,0,0,1645,10026,1,0,0,0,1647,10032,1,0,0,0,1649,10051,1,0,0,0,1651,10069,1,0,0,0,1653,10088,1,0,0,0,1655,10104,1,0,0,0,1657,10122,1,0,0,0,1659,10127,1,0,0,0,1661,10133,1,0,0,0,1663,10143,1,0,0,0,1665,10147,1,0,0,0,1667,10157,1,0,0,0,1669,10168,1,0,0,0,1671,10175,1,0,0,0,1673,10188,1,0,0,0,1675,10193,1,0,0,0,1677,10201,1,0,0,0,1679,10210,1,0,0,0,1681,10227,1,0,0,0,1683,10235,1,0,0,0,1685,10247,1,0,0,0,1687,10260,1,0,0,0,1689,10270,1,0,0,0,1691,10279,1,0,0,0,1693,10286,1,0,0,0,1695,10296,1,0,0,0,1697,10310,1,0,0,0,1699,10315,1,0,0,0,1701,10326,1,0,0,0,1703,10330,1,0,0,0,1705,10334,1,0,0,0,1707,10340,1,0,0,0,1709,10367,1,0,0,0,1711,10393,1,0,0,0,1713,10414,1,0,0,0,1715,10428,1,0,0,0,1717,10436,1,0,0,0,1719,10445,1,0,0,0,1721,10457,1,0,0,0,1723,10465,1,0,0,0,1725,10476,1,0,0,0,1727,10486,1,0,0,0,1729,10496,1,0,0,0,1731,10503,1,0,0,0,1733,10511,1,0,0,0,1735,10523,1,0,0,0,1737,10535,1,0,0,0,1739,10545,1,0,0,0,1741,10554,1,0,0,0,1743,10558,1,0,0,0,1745,10565,1,0,0,0,1747,10573,1,0,0,0,1749,10582,1,0,0,0,1751,10599,1,0,0,0,1753,10608,1,0,0,0,1755,10615,1,0,0,0,1757,10619,1,0,0,0,1759,10630,1,0,0,0,1761,10643,1,0,0,0,1763,10656,1,0,0,0,1765,10662,1,0,0,0,1767,10674,1,0,0,0,1769,10680,1,0,0,0,1771,10687,1,0,0,0,1773,10698,1,0,0,0,1775,10710,1,0,0,0,1777,10720,1,0,0,0,1779,10734,1,0,0,0,1781,10751,1,0,0,0,1783,10767,1,0,0,0,1785,10794,1,0,0,0,1787,10820,1,0,0,0,1789,10837,1,0,0,0,1791,10853,1,0,0,0,1793,10863,1,0,0,0,1795,10876,1,0,0,0,1797,10889,1,0,0,0,1799,10901,1,0,0,0,1801,10912,1,0,0,0,1803,10921,1,0,0,0,1805,10929,1,0,0,0,1807,10938,1,0,0,0,1809,10950,1,0,0,0,1811,10964,1,0,0,0,1813,10968,1,0,0,0,1815,10975,1,0,0,0,1817,10986,1,0,0,0,1819,10997,1,0,0,0,1821,11007,1,0,0,0,1823,11017,1,0,0,0,1825,11023,1,0,0,0,1827,11037,1,0,0,0,1829,11048,1,0,0,0,1831,11057,1,0,0,0,1833,11065,1,0,0,0,1835,11072,1,0,0,0,1837,11081,1,0,0,0,1839,11094,1,0,0,0,1841,11102,1,0,0,0,1843,11117,1,0,0,0,1845,11132,1,0,0,0,1847,11140,1,0,0,0,1849,11153,1,0,0,0,1851,11168,1,0,0,0,1853,11174,1,0,0,0,1855,11180,1,0,0,0,1857,11187,1,0,0,0,1859,11200,1,0,0,0,1861,11212,1,0,0,0,1863,11231,1,0,0,0,1865,11249,1,0,0,0,1867,11252,1,0,0,0,1869,11262,1,0,0,0,1871,11269,1,0,0,0,1873,11273,1,0,0,0,1875,11279,1,0,0,0,1877,11284,1,0,0,0,1879,11290,1,0,0,0,1881,11295,1,0,0,0,1883,11301,1,0,0,0,1885,11310,1,0,0,0,1887,11319,1,0,0,0,1889,11328,1,0,0,0,1891,11344,1,0,0,0,1893,11356,1,0,0,0,1895,11368,1,0,0,0,1897,11377,1,0,0,0,1899,11391,1,0,0,0,1901,11403,1,0,0,0,1903,11414,1,0,0,0,1905,11424,1,0,0,0,1907,11428,1,0,0,0,1909,11442,1,0,0,0,1911,11455,1,0,0,0,1913,11465,1,0,0,0,1915,11480,1,0,0,0,1917,11494,1,0,0,0,1919,11508,1,0,0,0,1921,11521,1,0,0,0,1923,11545,1,0,0,0,1925,11568,1,0,0,0,1927,11587,1,0,0,0,1929,11605,1,0,0,0,1931,11626,1,0,0,0,1933,11646,1,0,0,0,1935,11657,1,0,0,0,1937,11664,1,0,0,0,1939,11678,1,0,0,0,1941,11695,1,0,0,0,1943,11705,1,0,0,0,1945,11709,1,0,0,0,1947,11722,1,0,0,0,1949,11726,1,0,0,0,1951,11735,1,0,0,0,1953,11746,1,0,0,0,1955,11758,1,0,0,0,1957,11761,1,0,0,0,1959,11775,1,0,0,0,1961,11788,1,0,0,0,1963,11795,1,0,0,0,1965,11808,1,0,0,0,1967,11820,1,0,0,0,1969,11836,1,0,0,0,1971,11851,1,0,0,0,1973,11855,1,0,0,0,1975,11861,1,0,0,0,1977,11867,1,0,0,0,1979,11875,1,0,0,0,1981,11880,1,0,0,0,1983,11887,1,0,0,0,1985,11900,1,0,0,0,1987,11913,1,0,0,0,1989,11921,1,0,0,0,1991,11927,1,0,0,0,1993,11937,1,0,0,0,1995,11942,1,0,0,0,1997,11948,1,0,0,0,1999,11960,1,0,0,0,2001,11987,1,0,0,0,2003,12e3,1,0,0,0,2005,12004,1,0,0,0,2007,12009,1,0,0,0,2009,12014,1,0,0,0,2011,12026,1,0,0,0,2013,12031,1,0,0,0,2015,12035,1,0,0,0,2017,12041,1,0,0,0,2019,12049,1,0,0,0,2021,12077,1,0,0,0,2023,12082,1,0,0,0,2025,12087,1,0,0,0,2027,12098,1,0,0,0,2029,12105,1,0,0,0,2031,12117,1,0,0,0,2033,12125,1,0,0,0,2035,12137,1,0,0,0,2037,12147,1,0,0,0,2039,12156,1,0,0,0,2041,12165,1,0,0,0,2043,12175,1,0,0,0,2045,12187,1,0,0,0,2047,12199,1,0,0,0,2049,12210,1,0,0,0,2051,12224,1,0,0,0,2053,12237,1,0,0,0,2055,12249,1,0,0,0,2057,12261,1,0,0,0,2059,12273,1,0,0,0,2061,12285,1,0,0,0,2063,12295,1,0,0,0,2065,12311,1,0,0,0,2067,12331,1,0,0,0,2069,12350,1,0,0,0,2071,12369,1,0,0,0,2073,12399,1,0,0,0,2075,12428,1,0,0,0,2077,12448,1,0,0,0,2079,12467,1,0,0,0,2081,12480,1,0,0,0,2083,12496,1,0,0,0,2085,12512,1,0,0,0,2087,12527,1,0,0,0,2089,12544,1,0,0,0,2091,12560,1,0,0,0,2093,12574,1,0,0,0,2095,12586,1,0,0,0,2097,12597,1,0,0,0,2099,12609,1,0,0,0,2101,12625,1,0,0,0,2103,12640,1,0,0,0,2105,12662,1,0,0,0,2107,12683,1,0,0,0,2109,12700,1,0,0,0,2111,12719,1,0,0,0,2113,12739,1,0,0,0,2115,12752,1,0,0,0,2117,12764,1,0,0,0,2119,12781,1,0,0,0,2121,12797,1,0,0,0,2123,12807,1,0,0,0,2125,12823,1,0,0,0,2127,12838,1,0,0,0,2129,12857,1,0,0,0,2131,12875,1,0,0,0,2133,12883,1,0,0,0,2135,12897,1,0,0,0,2137,12914,1,0,0,0,2139,12925,1,0,0,0,2141,12934,1,0,0,0,2143,12944,1,0,0,0,2145,12949,1,0,0,0,2147,12954,1,0,0,0,2149,12962,1,0,0,0,2151,12978,1,0,0,0,2153,12986,1,0,0,0,2155,12998,1,0,0,0,2157,13002,1,0,0,0,2159,13011,1,0,0,0,2161,13024,1,0,0,0,2163,13038,1,0,0,0,2165,13050,1,0,0,0,2167,13062,1,0,0,0,2169,13070,1,0,0,0,2171,13080,1,0,0,0,2173,13088,1,0,0,0,2175,13099,1,0,0,0,2177,13119,1,0,0,0,2179,13125,1,0,0,0,2181,13136,1,0,0,0,2183,13156,1,0,0,0,2185,13162,1,0,0,0,2187,13177,1,0,0,0,2189,13187,1,0,0,0,2191,13193,1,0,0,0,2193,13198,1,0,0,0,2195,13209,1,0,0,0,2197,13236,1,0,0,0,2199,13244,1,0,0,0,2201,13278,1,0,0,0,2203,13286,1,0,0,0,2205,13297,1,0,0,0,2207,13311,1,0,0,0,2209,13318,1,0,0,0,2211,13327,1,0,0,0,2213,13329,1,0,0,0,2215,13331,1,0,0,0,2217,13334,1,0,0,0,2219,13337,1,0,0,0,2221,13340,1,0,0,0,2223,13343,1,0,0,0,2225,13346,1,0,0,0,2227,13349,1,0,0,0,2229,13352,1,0,0,0,2231,13355,1,0,0,0,2233,13358,1,0,0,0,2235,13360,1,0,0,0,2237,13362,1,0,0,0,2239,13364,1,0,0,0,2241,13366,1,0,0,0,2243,13368,1,0,0,0,2245,13372,1,0,0,0,2247,13376,1,0,0,0,2249,13378,1,0,0,0,2251,13380,1,0,0,0,2253,13382,1,0,0,0,2255,13384,1,0,0,0,2257,13386,1,0,0,0,2259,13388,1,0,0,0,2261,13390,1,0,0,0,2263,13392,1,0,0,0,2265,13394,1,0,0,0,2267,13396,1,0,0,0,2269,13398,1,0,0,0,2271,13400,1,0,0,0,2273,13402,1,0,0,0,2275,13404,1,0,0,0,2277,13406,1,0,0,0,2279,13408,1,0,0,0,2281,13410,1,0,0,0,2283,13412,1,0,0,0,2285,13414,1,0,0,0,2287,13416,1,0,0,0,2289,13421,1,0,0,0,2291,13423,1,0,0,0,2293,13428,1,0,0,0,2295,13434,1,0,0,0,2297,13440,1,0,0,0,2299,13443,1,0,0,0,2301,13466,1,0,0,0,2303,13509,1,0,0,0,2305,13511,1,0,0,0,2307,13514,1,0,0,0,2309,13516,1,0,0,0,2311,13519,1,0,0,0,2313,13522,1,0,0,0,2315,13524,1,0,0,0,2317,13526,1,0,0,0,2319,13529,1,0,0,0,2321,13538,1,0,0,0,2323,13589,1,0,0,0,2325,13591,1,0,0,0,2327,13603,1,0,0,0,2329,13617,1,0,0,0,2331,13630,1,0,0,0,2333,13643,1,0,0,0,2335,13654,1,0,0,0,2337,13656,1,0,0,0,2339,13658,1,0,0,0,2341,13697,1,0,0,0,2343,13699,1,0,0,0,2345,2347,7,0,0,0,2346,2345,1,0,0,0,2347,2348,1,0,0,0,2348,2346,1,0,0,0,2348,2349,1,0,0,0,2349,2350,1,0,0,0,2350,2351,6,0,0,0,2351,2,1,0,0,0,2352,2353,5,47,0,0,2353,2354,5,42,0,0,2354,2355,5,33,0,0,2355,2357,1,0,0,0,2356,2358,9,0,0,0,2357,2356,1,0,0,0,2358,2359,1,0,0,0,2359,2360,1,0,0,0,2359,2357,1,0,0,0,2360,2361,1,0,0,0,2361,2362,5,42,0,0,2362,2363,5,47,0,0,2363,2364,1,0,0,0,2364,2365,6,1,1,0,2365,4,1,0,0,0,2366,2367,5,47,0,0,2367,2368,5,42,0,0,2368,2372,1,0,0,0,2369,2371,9,0,0,0,2370,2369,1,0,0,0,2371,2374,1,0,0,0,2372,2373,1,0,0,0,2372,2370,1,0,0,0,2373,2375,1,0,0,0,2374,2372,1,0,0,0,2375,2376,5,42,0,0,2376,2377,5,47,0,0,2377,2378,1,0,0,0,2378,2379,6,2,1,0,2379,6,1,0,0,0,2380,2381,5,45,0,0,2381,2382,5,45,0,0,2382,2386,1,0,0,0,2383,2385,7,1,0,0,2384,2383,1,0,0,0,2385,2388,1,0,0,0,2386,2384,1,0,0,0,2386,2387,1,0,0,0,2387,2391,1,0,0,0,2388,2386,1,0,0,0,2389,2391,5,35,0,0,2390,2380,1,0,0,0,2390,2389,1,0,0,0,2391,2395,1,0,0,0,2392,2394,8,2,0,0,2393,2392,1,0,0,0,2394,2397,1,0,0,0,2395,2393,1,0,0,0,2395,2396,1,0,0,0,2396,2403,1,0,0,0,2397,2395,1,0,0,0,2398,2400,5,13,0,0,2399,2398,1,0,0,0,2399,2400,1,0,0,0,2400,2401,1,0,0,0,2401,2404,5,10,0,0,2402,2404,5,0,0,1,2403,2399,1,0,0,0,2403,2402,1,0,0,0,2404,2416,1,0,0,0,2405,2406,5,45,0,0,2406,2407,5,45,0,0,2407,2413,1,0,0,0,2408,2410,5,13,0,0,2409,2408,1,0,0,0,2409,2410,1,0,0,0,2410,2411,1,0,0,0,2411,2414,5,10,0,0,2412,2414,5,0,0,1,2413,2409,1,0,0,0,2413,2412,1,0,0,0,2414,2416,1,0,0,0,2415,2390,1,0,0,0,2415,2405,1,0,0,0,2416,2417,1,0,0,0,2417,2418,6,3,1,0,2418,8,1,0,0,0,2419,2420,7,3,0,0,2420,2421,7,4,0,0,2421,2422,7,4,0,0,2422,10,1,0,0,0,2423,2424,7,3,0,0,2424,2425,7,5,0,0,2425,2426,7,5,0,0,2426,12,1,0,0,0,2427,2428,7,3,0,0,2428,2429,7,5,0,0,2429,2430,7,6,0,0,2430,2431,7,7,0,0,2431,2432,7,8,0,0,2432,14,1,0,0,0,2433,2434,7,3,0,0,2434,2435,7,5,0,0,2435,2436,7,9,0,0,2436,2437,7,3,0,0,2437,2438,7,10,0,0,2438,2439,7,11,0,0,2439,16,1,0,0,0,2440,2441,7,3,0,0,2441,2442,7,12,0,0,2442,2443,7,3,0,0,2443,2444,7,5,0,0,2444,2445,7,10,0,0,2445,2446,7,13,0,0,2446,2447,7,7,0,0,2447,18,1,0,0,0,2448,2449,7,3,0,0,2449,2450,7,12,0,0,2450,2451,7,4,0,0,2451,20,1,0,0,0,2452,2453,7,3,0,0,2453,2454,7,8,0,0,2454,2455,7,8,0,0,2455,2456,7,3,0,0,2456,2457,7,10,0,0,2457,22,1,0,0,0,2458,2459,7,3,0,0,2459,2460,7,11,0,0,2460,24,1,0,0,0,2461,2462,7,3,0,0,2462,2463,7,11,0,0,2463,2464,7,14,0,0,2464,26,1,0,0,0,2465,2466,7,3,0,0,2466,2467,7,6,0,0,2467,2468,7,6,0,0,2468,2469,7,8,0,0,2469,2470,7,15,0,0,2470,2471,7,16,0,0,2471,2472,7,17,0,0,2472,2473,7,6,0,0,2473,2474,7,7,0,0,2474,28,1,0,0,0,2475,2476,7,16,0,0,2476,2477,7,7,0,0,2477,2478,7,18,0,0,2478,2479,7,19,0,0,2479,2480,7,8,0,0,2480,2481,7,7,0,0,2481,30,1,0,0,0,2482,2483,7,16,0,0,2483,2484,7,7,0,0,2484,2485,7,6,0,0,2485,2486,7,9,0,0,2486,2487,7,7,0,0,2487,2488,7,7,0,0,2488,2489,7,12,0,0,2489,32,1,0,0,0,2490,2491,7,16,0,0,2491,2492,7,19,0,0,2492,2493,7,6,0,0,2493,2494,7,20,0,0,2494,34,1,0,0,0,2495,2496,7,16,0,0,2496,2497,7,17,0,0,2497,2498,7,14,0,0,2498,2499,7,21,0,0,2499,2500,7,7,0,0,2500,2501,7,6,0,0,2501,2502,7,11,0,0,2502,36,1,0,0,0,2503,2504,7,16,0,0,2504,2505,7,10,0,0,2505,38,1,0,0,0,2506,2507,7,14,0,0,2507,2508,7,3,0,0,2508,2509,7,5,0,0,2509,2510,7,5,0,0,2510,40,1,0,0,0,2511,2512,7,14,0,0,2512,2513,7,3,0,0,2513,2514,7,11,0,0,2514,2515,7,14,0,0,2515,2516,7,3,0,0,2516,2517,7,4,0,0,2517,2518,7,7,0,0,2518,42,1,0,0,0,2519,2520,7,14,0,0,2520,2521,7,3,0,0,2521,2522,7,11,0,0,2522,2523,7,7,0,0,2523,44,1,0,0,0,2524,2525,7,14,0,0,2525,2526,7,3,0,0,2526,2527,7,11,0,0,2527,2528,7,6,0,0,2528,46,1,0,0,0,2529,2530,7,14,0,0,2530,2531,7,20,0,0,2531,2532,7,3,0,0,2532,2533,7,12,0,0,2533,2534,7,22,0,0,2534,2535,7,7,0,0,2535,48,1,0,0,0,2536,2537,7,14,0,0,2537,2538,7,20,0,0,2538,2539,7,3,0,0,2539,2540,7,8,0,0,2540,2541,7,3,0,0,2541,2542,7,14,0,0,2542,2543,7,6,0,0,2543,2544,7,7,0,0,2544,2545,7,8,0,0,2545,50,1,0,0,0,2546,2547,7,14,0,0,2547,2548,7,20,0,0,2548,2549,7,7,0,0,2549,2550,7,14,0,0,2550,2551,7,21,0,0,2551,52,1,0,0,0,2552,2553,7,14,0,0,2553,2554,7,19,0,0,2554,2555,7,5,0,0,2555,2556,7,5,0,0,2556,2557,7,3,0,0,2557,2558,7,6,0,0,2558,2559,7,7,0,0,2559,54,1,0,0,0,2560,2561,7,14,0,0,2561,2562,7,19,0,0,2562,2563,7,5,0,0,2563,2564,7,17,0,0,2564,2565,7,23,0,0,2565,2566,7,12,0,0,2566,56,1,0,0,0,2567,2568,7,14,0,0,2568,2569,7,19,0,0,2569,2570,7,12,0,0,2570,2571,7,4,0,0,2571,2572,7,15,0,0,2572,2573,7,6,0,0,2573,2574,7,15,0,0,2574,2575,7,19,0,0,2575,2576,7,12,0,0,2576,58,1,0,0,0,2577,2578,7,14,0,0,2578,2579,7,19,0,0,2579,2580,7,12,0,0,2580,2581,7,11,0,0,2581,2582,7,6,0,0,2582,2583,7,8,0,0,2583,2584,7,3,0,0,2584,2585,7,15,0,0,2585,2586,7,12,0,0,2586,2587,7,6,0,0,2587,60,1,0,0,0,2588,2589,7,14,0,0,2589,2590,7,19,0,0,2590,2591,7,12,0,0,2591,2592,7,6,0,0,2592,2593,7,15,0,0,2593,2594,7,12,0,0,2594,2595,7,17,0,0,2595,2596,7,7,0,0,2596,62,1,0,0,0,2597,2598,7,14,0,0,2598,2599,7,19,0,0,2599,2600,7,12,0,0,2600,2601,7,24,0,0,2601,2602,7,7,0,0,2602,2603,7,8,0,0,2603,2604,7,6,0,0,2604,64,1,0,0,0,2605,2606,7,14,0,0,2606,2607,7,8,0,0,2607,2608,7,7,0,0,2608,2609,7,3,0,0,2609,2610,7,6,0,0,2610,2611,7,7,0,0,2611,66,1,0,0,0,2612,2613,7,14,0,0,2613,2614,7,8,0,0,2614,2615,7,19,0,0,2615,2616,7,11,0,0,2616,2617,7,11,0,0,2617,68,1,0,0,0,2618,2619,7,14,0,0,2619,2620,7,17,0,0,2620,2621,7,8,0,0,2621,2622,7,8,0,0,2622,2623,7,7,0,0,2623,2624,7,12,0,0,2624,2625,7,6,0,0,2625,70,1,0,0,0,2626,2627,7,14,0,0,2627,2628,7,17,0,0,2628,2629,7,8,0,0,2629,2630,7,8,0,0,2630,2631,7,7,0,0,2631,2632,7,12,0,0,2632,2633,7,6,0,0,2633,2634,5,95,0,0,2634,2635,7,8,0,0,2635,2636,7,19,0,0,2636,2637,7,5,0,0,2637,2638,7,7,0,0,2638,72,1,0,0,0,2639,2640,7,14,0,0,2640,2641,7,17,0,0,2641,2642,7,8,0,0,2642,2643,7,8,0,0,2643,2644,7,7,0,0,2644,2645,7,12,0,0,2645,2646,7,6,0,0,2646,2647,5,95,0,0,2647,2648,7,17,0,0,2648,2649,7,11,0,0,2649,2650,7,7,0,0,2650,2651,7,8,0,0,2651,74,1,0,0,0,2652,2653,7,14,0,0,2653,2654,7,17,0,0,2654,2655,7,8,0,0,2655,2656,7,11,0,0,2656,2657,7,19,0,0,2657,2658,7,8,0,0,2658,76,1,0,0,0,2659,2660,7,4,0,0,2660,2661,7,3,0,0,2661,2662,7,6,0,0,2662,2663,7,3,0,0,2663,2664,7,16,0,0,2664,2665,7,3,0,0,2665,2666,7,11,0,0,2666,2667,7,7,0,0,2667,78,1,0,0,0,2668,2669,7,4,0,0,2669,2670,7,3,0,0,2670,2671,7,6,0,0,2671,2672,7,3,0,0,2672,2673,7,16,0,0,2673,2674,7,3,0,0,2674,2675,7,11,0,0,2675,2676,7,7,0,0,2676,2677,7,11,0,0,2677,80,1,0,0,0,2678,2679,7,4,0,0,2679,2680,7,7,0,0,2680,2681,7,14,0,0,2681,2682,7,5,0,0,2682,2683,7,3,0,0,2683,2684,7,8,0,0,2684,2685,7,7,0,0,2685,82,1,0,0,0,2686,2687,7,4,0,0,2687,2688,7,7,0,0,2688,2689,7,18,0,0,2689,2690,7,3,0,0,2690,2691,7,17,0,0,2691,2692,7,5,0,0,2692,2693,7,6,0,0,2693,84,1,0,0,0,2694,2695,7,4,0,0,2695,2696,7,7,0,0,2696,2697,7,5,0,0,2697,2698,7,3,0,0,2698,2699,7,10,0,0,2699,2700,7,7,0,0,2700,2701,7,4,0,0,2701,86,1,0,0,0,2702,2703,7,4,0,0,2703,2704,7,7,0,0,2704,2705,7,5,0,0,2705,2706,7,7,0,0,2706,2707,7,6,0,0,2707,2708,7,7,0,0,2708,88,1,0,0,0,2709,2710,7,4,0,0,2710,2711,7,7,0,0,2711,2712,7,11,0,0,2712,2713,7,14,0,0,2713,90,1,0,0,0,2714,2715,7,4,0,0,2715,2716,7,7,0,0,2716,2717,7,11,0,0,2717,2718,7,14,0,0,2718,2719,7,8,0,0,2719,2720,7,15,0,0,2720,2721,7,16,0,0,2721,2722,7,7,0,0,2722,92,1,0,0,0,2723,2724,7,4,0,0,2724,2725,7,7,0,0,2725,2726,7,6,0,0,2726,2727,7,7,0,0,2727,2728,7,8,0,0,2728,2729,7,23,0,0,2729,2730,7,15,0,0,2730,2731,7,12,0,0,2731,2732,7,15,0,0,2732,2733,7,11,0,0,2733,2734,7,6,0,0,2734,2735,7,15,0,0,2735,2736,7,14,0,0,2736,94,1,0,0,0,2737,2738,7,4,0,0,2738,2739,7,15,0,0,2739,2740,7,3,0,0,2740,2741,7,22,0,0,2741,2742,7,12,0,0,2742,2743,7,19,0,0,2743,2744,7,11,0,0,2744,2745,7,6,0,0,2745,2746,7,15,0,0,2746,2747,7,14,0,0,2747,2748,7,11,0,0,2748,96,1,0,0,0,2749,2750,7,4,0,0,2750,2751,7,15,0,0,2751,2752,7,11,0,0,2752,2753,7,6,0,0,2753,2754,7,15,0,0,2754,2755,7,12,0,0,2755,2756,7,14,0,0,2756,2757,7,6,0,0,2757,98,1,0,0,0,2758,2759,7,4,0,0,2759,2760,7,15,0,0,2760,2761,7,11,0,0,2761,2762,7,6,0,0,2762,2763,7,15,0,0,2763,2764,7,12,0,0,2764,2765,7,14,0,0,2765,2766,7,6,0,0,2766,2767,7,8,0,0,2767,2768,7,19,0,0,2768,2769,7,9,0,0,2769,100,1,0,0,0,2770,2771,7,4,0,0,2771,2772,7,8,0,0,2772,2773,7,19,0,0,2773,2774,7,25,0,0,2774,102,1,0,0,0,2775,2776,7,7,0,0,2776,2777,7,3,0,0,2777,2778,7,14,0,0,2778,2779,7,20,0,0,2779,104,1,0,0,0,2780,2781,7,7,0,0,2781,2782,7,5,0,0,2782,2783,7,11,0,0,2783,2784,7,7,0,0,2784,106,1,0,0,0,2785,2786,7,7,0,0,2786,2787,7,5,0,0,2787,2788,7,11,0,0,2788,2789,7,7,0,0,2789,2790,7,15,0,0,2790,2791,7,18,0,0,2791,108,1,0,0,0,2792,2793,7,7,0,0,2793,2794,7,23,0,0,2794,2795,7,25,0,0,2795,2796,7,6,0,0,2796,2797,7,10,0,0,2797,110,1,0,0,0,2798,2799,7,7,0,0,2799,2800,7,12,0,0,2800,2801,7,14,0,0,2801,2802,7,5,0,0,2802,2803,7,19,0,0,2803,2804,7,11,0,0,2804,2805,7,7,0,0,2805,2806,7,4,0,0,2806,112,1,0,0,0,2807,2808,7,7,0,0,2808,2809,7,12,0,0,2809,2810,7,18,0,0,2810,2811,7,19,0,0,2811,2812,7,8,0,0,2812,2813,7,14,0,0,2813,2814,7,7,0,0,2814,2815,7,4,0,0,2815,114,1,0,0,0,2816,2817,7,7,0,0,2817,2818,7,11,0,0,2818,2819,7,14,0,0,2819,2820,7,3,0,0,2820,2821,7,25,0,0,2821,2822,7,7,0,0,2822,2823,7,4,0,0,2823,116,1,0,0,0,2824,2825,7,7,0,0,2825,2826,7,26,0,0,2826,2827,7,14,0,0,2827,2828,7,7,0,0,2828,2829,7,25,0,0,2829,2830,7,6,0,0,2830,118,1,0,0,0,2831,2832,7,7,0,0,2832,2833,7,26,0,0,2833,2834,7,15,0,0,2834,2835,7,11,0,0,2835,2836,7,6,0,0,2836,2837,7,11,0,0,2837,120,1,0,0,0,2838,2839,7,7,0,0,2839,2840,7,26,0,0,2840,2841,7,15,0,0,2841,2842,7,6,0,0,2842,122,1,0,0,0,2843,2844,7,7,0,0,2844,2845,7,26,0,0,2845,2846,7,25,0,0,2846,2847,7,5,0,0,2847,2848,7,3,0,0,2848,2849,7,15,0,0,2849,2850,7,12,0,0,2850,124,1,0,0,0,2851,2852,7,18,0,0,2852,2853,7,3,0,0,2853,2854,7,5,0,0,2854,2855,7,11,0,0,2855,2856,7,7,0,0,2856,126,1,0,0,0,2857,2858,7,18,0,0,2858,2859,7,7,0,0,2859,2860,7,6,0,0,2860,2861,7,14,0,0,2861,2862,7,20,0,0,2862,128,1,0,0,0,2863,2864,7,18,0,0,2864,2865,7,19,0,0,2865,2866,7,8,0,0,2866,130,1,0,0,0,2867,2868,7,18,0,0,2868,2869,7,19,0,0,2869,2870,7,8,0,0,2870,2871,7,14,0,0,2871,2872,7,7,0,0,2872,132,1,0,0,0,2873,2874,7,18,0,0,2874,2875,7,19,0,0,2875,2876,7,8,0,0,2876,2877,7,7,0,0,2877,2878,7,15,0,0,2878,2879,7,22,0,0,2879,2880,7,12,0,0,2880,134,1,0,0,0,2881,2882,7,18,0,0,2882,2883,7,8,0,0,2883,2884,7,19,0,0,2884,2885,7,23,0,0,2885,136,1,0,0,0,2886,2887,7,18,0,0,2887,2888,7,17,0,0,2888,2889,7,5,0,0,2889,2890,7,5,0,0,2890,2891,7,6,0,0,2891,2892,7,7,0,0,2892,2893,7,26,0,0,2893,2894,7,6,0,0,2894,138,1,0,0,0,2895,2896,7,22,0,0,2896,2897,7,7,0,0,2897,2898,7,12,0,0,2898,2899,7,7,0,0,2899,2900,7,8,0,0,2900,2901,7,3,0,0,2901,2902,7,6,0,0,2902,2903,7,7,0,0,2903,2904,7,4,0,0,2904,140,1,0,0,0,2905,2906,7,22,0,0,2906,2907,7,7,0,0,2907,2908,7,6,0,0,2908,142,1,0,0,0,2909,2910,7,22,0,0,2910,2911,7,8,0,0,2911,2912,7,3,0,0,2912,2913,7,12,0,0,2913,2914,7,6,0,0,2914,144,1,0,0,0,2915,2916,7,22,0,0,2916,2917,7,8,0,0,2917,2918,7,19,0,0,2918,2919,7,17,0,0,2919,2920,7,25,0,0,2920,146,1,0,0,0,2921,2922,7,20,0,0,2922,2923,7,3,0,0,2923,2924,7,24,0,0,2924,2925,7,15,0,0,2925,2926,7,12,0,0,2926,2927,7,22,0,0,2927,148,1,0,0,0,2928,2929,7,20,0,0,2929,2930,7,15,0,0,2930,2931,7,22,0,0,2931,2932,7,20,0,0,2932,2933,5,95,0,0,2933,2934,7,25,0,0,2934,2935,7,8,0,0,2935,2936,7,15,0,0,2936,2937,7,19,0,0,2937,2938,7,8,0,0,2938,2939,7,15,0,0,2939,2940,7,6,0,0,2940,2941,7,10,0,0,2941,150,1,0,0,0,2942,2943,7,20,0,0,2943,2944,7,15,0,0,2944,2945,7,11,0,0,2945,2946,7,6,0,0,2946,2947,7,19,0,0,2947,2948,7,22,0,0,2948,2949,7,8,0,0,2949,2950,7,3,0,0,2950,2951,7,23,0,0,2951,152,1,0,0,0,2952,2953,7,15,0,0,2953,2954,7,18,0,0,2954,154,1,0,0,0,2955,2956,7,15,0,0,2956,2957,7,22,0,0,2957,2958,7,12,0,0,2958,2959,7,19,0,0,2959,2960,7,8,0,0,2960,2961,7,7,0,0,2961,156,1,0,0,0,2962,2963,7,15,0,0,2963,2964,7,22,0,0,2964,2965,7,12,0,0,2965,2966,7,19,0,0,2966,2967,7,8,0,0,2967,2968,7,7,0,0,2968,2969,7,4,0,0,2969,158,1,0,0,0,2970,2971,7,15,0,0,2971,2972,7,12,0,0,2972,160,1,0,0,0,2973,2974,7,15,0,0,2974,2975,7,12,0,0,2975,2976,7,4,0,0,2976,2977,7,7,0,0,2977,2978,7,26,0,0,2978,162,1,0,0,0,2979,2980,7,15,0,0,2980,2981,7,12,0,0,2981,2982,7,18,0,0,2982,2983,7,15,0,0,2983,2984,7,5,0,0,2984,2985,7,7,0,0,2985,164,1,0,0,0,2986,2987,7,15,0,0,2987,2988,7,12,0,0,2988,2989,7,12,0,0,2989,2990,7,7,0,0,2990,2991,7,8,0,0,2991,166,1,0,0,0,2992,2993,7,15,0,0,2993,2994,7,12,0,0,2994,2995,7,19,0,0,2995,2996,7,17,0,0,2996,2997,7,6,0,0,2997,168,1,0,0,0,2998,2999,7,15,0,0,2999,3e3,7,12,0,0,3e3,3001,7,11,0,0,3001,3002,7,7,0,0,3002,3003,7,8,0,0,3003,3004,7,6,0,0,3004,170,1,0,0,0,3005,3006,7,15,0,0,3006,3007,7,12,0,0,3007,3008,7,6,0,0,3008,3009,7,7,0,0,3009,3010,7,8,0,0,3010,3011,7,24,0,0,3011,3012,7,3,0,0,3012,3013,7,5,0,0,3013,172,1,0,0,0,3014,3015,7,15,0,0,3015,3016,7,12,0,0,3016,3017,7,6,0,0,3017,3018,7,19,0,0,3018,174,1,0,0,0,3019,3020,7,15,0,0,3020,3021,7,11,0,0,3021,176,1,0,0,0,3022,3023,7,15,0,0,3023,3024,7,6,0,0,3024,3025,7,7,0,0,3025,3026,7,8,0,0,3026,3027,7,3,0,0,3027,3028,7,6,0,0,3028,3029,7,7,0,0,3029,178,1,0,0,0,3030,3031,7,27,0,0,3031,3032,7,19,0,0,3032,3033,7,15,0,0,3033,3034,7,12,0,0,3034,180,1,0,0,0,3035,3036,7,21,0,0,3036,3037,7,7,0,0,3037,3038,7,10,0,0,3038,182,1,0,0,0,3039,3040,7,21,0,0,3040,3041,7,7,0,0,3041,3042,7,10,0,0,3042,3043,7,11,0,0,3043,184,1,0,0,0,3044,3045,7,21,0,0,3045,3046,7,15,0,0,3046,3047,7,5,0,0,3047,3048,7,5,0,0,3048,186,1,0,0,0,3049,3050,7,5,0,0,3050,3051,7,3,0,0,3051,3052,7,6,0,0,3052,3053,7,7,0,0,3053,3054,7,8,0,0,3054,3055,7,3,0,0,3055,3056,7,5,0,0,3056,188,1,0,0,0,3057,3058,7,5,0,0,3058,3059,7,7,0,0,3059,3060,7,3,0,0,3060,3061,7,4,0,0,3061,3062,7,15,0,0,3062,3063,7,12,0,0,3063,3064,7,22,0,0,3064,190,1,0,0,0,3065,3066,7,5,0,0,3066,3067,7,7,0,0,3067,3068,7,3,0,0,3068,3069,7,24,0,0,3069,3070,7,7,0,0,3070,192,1,0,0,0,3071,3072,7,5,0,0,3072,3073,7,7,0,0,3073,3074,7,18,0,0,3074,3075,7,6,0,0,3075,194,1,0,0,0,3076,3077,7,5,0,0,3077,3078,7,15,0,0,3078,3079,7,21,0,0,3079,3080,7,7,0,0,3080,196,1,0,0,0,3081,3082,7,5,0,0,3082,3083,7,15,0,0,3083,3084,7,23,0,0,3084,3085,7,15,0,0,3085,3086,7,6,0,0,3086,198,1,0,0,0,3087,3088,7,5,0,0,3088,3089,7,15,0,0,3089,3090,7,12,0,0,3090,3091,7,7,0,0,3091,3092,7,3,0,0,3092,3093,7,8,0,0,3093,200,1,0,0,0,3094,3095,7,5,0,0,3095,3096,7,15,0,0,3096,3097,7,12,0,0,3097,3098,7,7,0,0,3098,3099,7,11,0,0,3099,202,1,0,0,0,3100,3101,7,5,0,0,3101,3102,7,19,0,0,3102,3103,7,3,0,0,3103,3104,7,4,0,0,3104,204,1,0,0,0,3105,3106,7,5,0,0,3106,3107,7,19,0,0,3107,3108,7,14,0,0,3108,3109,7,21,0,0,3109,206,1,0,0,0,3110,3111,7,5,0,0,3111,3112,7,19,0,0,3112,3113,7,14,0,0,3113,3114,7,21,0,0,3114,3115,7,7,0,0,3115,3116,7,4,0,0,3116,208,1,0,0,0,3117,3118,7,5,0,0,3118,3119,7,19,0,0,3119,3120,7,19,0,0,3120,3121,7,25,0,0,3121,210,1,0,0,0,3122,3123,7,5,0,0,3123,3124,7,19,0,0,3124,3125,7,9,0,0,3125,3126,5,95,0,0,3126,3127,7,25,0,0,3127,3128,7,8,0,0,3128,3129,7,15,0,0,3129,3130,7,19,0,0,3130,3131,7,8,0,0,3131,3132,7,15,0,0,3132,3133,7,6,0,0,3133,3134,7,10,0,0,3134,212,1,0,0,0,3135,3136,7,23,0,0,3136,3137,7,3,0,0,3137,3138,7,11,0,0,3138,3139,7,6,0,0,3139,3140,7,7,0,0,3140,3141,7,8,0,0,3141,3142,5,95,0,0,3142,3143,7,16,0,0,3143,3144,7,15,0,0,3144,3145,7,12,0,0,3145,3146,7,4,0,0,3146,214,1,0,0,0,3147,3148,7,23,0,0,3148,3149,7,3,0,0,3149,3150,7,11,0,0,3150,3151,7,6,0,0,3151,3152,7,7,0,0,3152,3153,7,8,0,0,3153,3154,5,95,0,0,3154,3155,7,11,0,0,3155,3156,7,11,0,0,3156,3157,7,5,0,0,3157,3158,5,95,0,0,3158,3159,7,24,0,0,3159,3160,7,7,0,0,3160,3161,7,8,0,0,3161,3162,7,15,0,0,3162,3163,7,18,0,0,3163,3164,7,10,0,0,3164,3165,5,95,0,0,3165,3166,7,11,0,0,3166,3167,7,7,0,0,3167,3168,7,8,0,0,3168,3169,7,24,0,0,3169,3170,7,7,0,0,3170,3171,7,8,0,0,3171,3172,5,95,0,0,3172,3173,7,14,0,0,3173,3174,7,7,0,0,3174,3175,7,8,0,0,3175,3176,7,6,0,0,3176,216,1,0,0,0,3177,3178,7,23,0,0,3178,3179,7,3,0,0,3179,3180,7,6,0,0,3180,3181,7,14,0,0,3181,3182,7,20,0,0,3182,218,1,0,0,0,3183,3184,7,23,0,0,3184,3185,7,3,0,0,3185,3186,7,26,0,0,3186,3187,7,24,0,0,3187,3188,7,3,0,0,3188,3189,7,5,0,0,3189,3190,7,17,0,0,3190,3191,7,7,0,0,3191,220,1,0,0,0,3192,3193,7,23,0,0,3193,3194,7,15,0,0,3194,3195,7,12,0,0,3195,3196,7,24,0,0,3196,3197,7,3,0,0,3197,3198,7,5,0,0,3198,3199,7,17,0,0,3199,3200,7,7,0,0,3200,222,1,0,0,0,3201,3202,7,23,0,0,3202,3203,7,19,0,0,3203,3204,7,4,0,0,3204,3205,7,15,0,0,3205,3206,7,18,0,0,3206,3207,7,15,0,0,3207,3208,7,7,0,0,3208,3209,7,11,0,0,3209,224,1,0,0,0,3210,3211,7,12,0,0,3211,3212,7,3,0,0,3212,3213,7,6,0,0,3213,3214,7,17,0,0,3214,3215,7,8,0,0,3215,3216,7,3,0,0,3216,3217,7,5,0,0,3217,226,1,0,0,0,3218,3219,7,12,0,0,3219,3220,7,19,0,0,3220,3221,7,6,0,0,3221,228,1,0,0,0,3222,3223,7,12,0,0,3223,3224,7,19,0,0,3224,3225,5,95,0,0,3225,3226,7,9,0,0,3226,3227,7,8,0,0,3227,3228,7,15,0,0,3228,3229,7,6,0,0,3229,3230,7,7,0,0,3230,3231,5,95,0,0,3231,3232,7,6,0,0,3232,3233,7,19,0,0,3233,3234,5,95,0,0,3234,3235,7,16,0,0,3235,3236,7,15,0,0,3236,3237,7,12,0,0,3237,3238,7,5,0,0,3238,3239,7,19,0,0,3239,3240,7,22,0,0,3240,230,1,0,0,0,3241,3242,7,12,0,0,3242,3243,7,17,0,0,3243,3244,7,5,0,0,3244,3245,7,5,0,0,3245,232,1,0,0,0,3246,3247,7,12,0,0,3247,3248,7,17,0,0,3248,3249,7,23,0,0,3249,3250,7,16,0,0,3250,3251,7,7,0,0,3251,3252,7,8,0,0,3252,234,1,0,0,0,3253,3254,7,19,0,0,3254,3255,7,12,0,0,3255,236,1,0,0,0,3256,3257,7,19,0,0,3257,3258,7,25,0,0,3258,3259,7,6,0,0,3259,3260,7,15,0,0,3260,3261,7,23,0,0,3261,3262,7,15,0,0,3262,3263,7,13,0,0,3263,3264,7,7,0,0,3264,238,1,0,0,0,3265,3266,7,19,0,0,3266,3267,7,25,0,0,3267,3268,7,6,0,0,3268,3269,7,15,0,0,3269,3270,7,19,0,0,3270,3271,7,12,0,0,3271,240,1,0,0,0,3272,3273,7,19,0,0,3273,3274,7,25,0,0,3274,3275,7,6,0,0,3275,3276,7,15,0,0,3276,3277,7,19,0,0,3277,3278,7,12,0,0,3278,3279,7,3,0,0,3279,3280,7,5,0,0,3280,242,1,0,0,0,3281,3282,7,19,0,0,3282,3283,7,25,0,0,3283,3284,7,6,0,0,3284,3285,7,15,0,0,3285,3286,7,19,0,0,3286,3287,7,12,0,0,3287,3288,7,3,0,0,3288,3289,7,5,0,0,3289,3290,7,5,0,0,3290,3291,7,10,0,0,3291,244,1,0,0,0,3292,3293,7,19,0,0,3293,3294,7,8,0,0,3294,246,1,0,0,0,3295,3296,7,19,0,0,3296,3297,7,8,0,0,3297,3298,7,4,0,0,3298,3299,7,7,0,0,3299,3300,7,8,0,0,3300,248,1,0,0,0,3301,3302,7,19,0,0,3302,3303,7,17,0,0,3303,3304,7,6,0,0,3304,250,1,0,0,0,3305,3306,7,19,0,0,3306,3307,7,17,0,0,3307,3308,7,6,0,0,3308,3309,7,7,0,0,3309,3310,7,8,0,0,3310,252,1,0,0,0,3311,3312,7,19,0,0,3312,3313,7,17,0,0,3313,3314,7,6,0,0,3314,3315,7,18,0,0,3315,3316,7,15,0,0,3316,3317,7,5,0,0,3317,3318,7,7,0,0,3318,254,1,0,0,0,3319,3320,7,19,0,0,3320,3321,7,24,0,0,3321,3322,7,7,0,0,3322,3323,7,8,0,0,3323,256,1,0,0,0,3324,3325,7,25,0,0,3325,3326,7,3,0,0,3326,3327,7,8,0,0,3327,3328,7,6,0,0,3328,3329,7,15,0,0,3329,3330,7,6,0,0,3330,3331,7,15,0,0,3331,3332,7,19,0,0,3332,3333,7,12,0,0,3333,258,1,0,0,0,3334,3335,7,25,0,0,3335,3336,7,8,0,0,3336,3337,7,15,0,0,3337,3338,7,23,0,0,3338,3339,7,3,0,0,3339,3340,7,8,0,0,3340,3341,7,10,0,0,3341,260,1,0,0,0,3342,3343,7,25,0,0,3343,3344,7,8,0,0,3344,3345,7,19,0,0,3345,3346,7,14,0,0,3346,3347,7,7,0,0,3347,3348,7,4,0,0,3348,3349,7,17,0,0,3349,3350,7,8,0,0,3350,3351,7,7,0,0,3351,262,1,0,0,0,3352,3353,7,25,0,0,3353,3354,7,17,0,0,3354,3355,7,8,0,0,3355,3356,7,22,0,0,3356,3357,7,7,0,0,3357,264,1,0,0,0,3358,3359,7,8,0,0,3359,3360,7,3,0,0,3360,3361,7,12,0,0,3361,3362,7,22,0,0,3362,3363,7,7,0,0,3363,266,1,0,0,0,3364,3365,7,8,0,0,3365,3366,7,7,0,0,3366,3367,7,3,0,0,3367,3368,7,4,0,0,3368,268,1,0,0,0,3369,3370,7,8,0,0,3370,3371,7,7,0,0,3371,3372,7,3,0,0,3372,3373,7,4,0,0,3373,3374,7,11,0,0,3374,270,1,0,0,0,3375,3376,7,8,0,0,3376,3377,7,7,0,0,3377,3378,7,18,0,0,3378,3379,7,7,0,0,3379,3380,7,8,0,0,3380,3381,7,7,0,0,3381,3382,7,12,0,0,3382,3383,7,14,0,0,3383,3384,7,7,0,0,3384,3385,7,11,0,0,3385,272,1,0,0,0,3386,3387,7,8,0,0,3387,3388,7,7,0,0,3388,3389,7,22,0,0,3389,3390,7,7,0,0,3390,3391,7,26,0,0,3391,3392,7,25,0,0,3392,274,1,0,0,0,3393,3394,7,8,0,0,3394,3395,7,7,0,0,3395,3396,7,5,0,0,3396,3397,7,7,0,0,3397,3398,7,3,0,0,3398,3399,7,11,0,0,3399,3400,7,7,0,0,3400,276,1,0,0,0,3401,3402,7,8,0,0,3402,3403,7,7,0,0,3403,3404,7,12,0,0,3404,3405,7,3,0,0,3405,3406,7,23,0,0,3406,3407,7,7,0,0,3407,278,1,0,0,0,3408,3409,7,8,0,0,3409,3410,7,7,0,0,3410,3411,7,25,0,0,3411,3412,7,7,0,0,3412,3413,7,3,0,0,3413,3414,7,6,0,0,3414,280,1,0,0,0,3415,3416,7,8,0,0,3416,3417,7,7,0,0,3417,3418,7,25,0,0,3418,3419,7,5,0,0,3419,3420,7,3,0,0,3420,3421,7,14,0,0,3421,3422,7,7,0,0,3422,282,1,0,0,0,3423,3424,7,8,0,0,3424,3425,7,7,0,0,3425,3426,7,28,0,0,3426,3427,7,17,0,0,3427,3428,7,15,0,0,3428,3429,7,8,0,0,3429,3430,7,7,0,0,3430,284,1,0,0,0,3431,3432,7,8,0,0,3432,3433,7,7,0,0,3433,3434,7,11,0,0,3434,3435,7,15,0,0,3435,3436,7,22,0,0,3436,3437,7,12,0,0,3437,3438,7,3,0,0,3438,3439,7,5,0,0,3439,286,1,0,0,0,3440,3441,7,8,0,0,3441,3442,7,7,0,0,3442,3443,7,11,0,0,3443,3444,7,6,0,0,3444,3445,7,8,0,0,3445,3446,7,15,0,0,3446,3447,7,14,0,0,3447,3448,7,6,0,0,3448,288,1,0,0,0,3449,3450,7,8,0,0,3450,3451,7,7,0,0,3451,3452,7,6,0,0,3452,3453,7,3,0,0,3453,3454,7,15,0,0,3454,3455,7,12,0,0,3455,290,1,0,0,0,3456,3457,7,8,0,0,3457,3458,7,7,0,0,3458,3459,7,6,0,0,3459,3460,7,17,0,0,3460,3461,7,8,0,0,3461,3462,7,12,0,0,3462,292,1,0,0,0,3463,3464,7,8,0,0,3464,3465,7,7,0,0,3465,3466,7,24,0,0,3466,3467,7,19,0,0,3467,3468,7,21,0,0,3468,3469,7,7,0,0,3469,294,1,0,0,0,3470,3471,7,8,0,0,3471,3472,7,15,0,0,3472,3473,7,22,0,0,3473,3474,7,20,0,0,3474,3475,7,6,0,0,3475,296,1,0,0,0,3476,3477,7,8,0,0,3477,3478,7,5,0,0,3478,3479,7,15,0,0,3479,3480,7,21,0,0,3480,3481,7,7,0,0,3481,298,1,0,0,0,3482,3483,7,11,0,0,3483,3484,7,14,0,0,3484,3485,7,20,0,0,3485,3486,7,7,0,0,3486,3487,7,23,0,0,3487,3488,7,3,0,0,3488,300,1,0,0,0,3489,3490,7,11,0,0,3490,3491,7,14,0,0,3491,3492,7,20,0,0,3492,3493,7,7,0,0,3493,3494,7,23,0,0,3494,3495,7,3,0,0,3495,3496,7,11,0,0,3496,302,1,0,0,0,3497,3498,7,11,0,0,3498,3499,7,7,0,0,3499,3500,7,5,0,0,3500,3501,7,7,0,0,3501,3502,7,14,0,0,3502,3503,7,6,0,0,3503,304,1,0,0,0,3504,3505,7,11,0,0,3505,3506,7,7,0,0,3506,3507,7,6,0,0,3507,306,1,0,0,0,3508,3509,7,11,0,0,3509,3510,7,7,0,0,3510,3511,7,25,0,0,3511,3512,7,3,0,0,3512,3513,7,8,0,0,3513,3514,7,3,0,0,3514,3515,7,6,0,0,3515,3516,7,19,0,0,3516,3517,7,8,0,0,3517,308,1,0,0,0,3518,3519,7,11,0,0,3519,3520,7,20,0,0,3520,3521,7,19,0,0,3521,3522,7,9,0,0,3522,310,1,0,0,0,3523,3524,7,11,0,0,3524,3525,7,15,0,0,3525,3526,7,22,0,0,3526,3527,7,12,0,0,3527,3528,7,3,0,0,3528,3529,7,5,0,0,3529,312,1,0,0,0,3530,3531,7,11,0,0,3531,3532,7,21,0,0,3532,3533,7,15,0,0,3533,3534,7,25,0,0,3534,314,1,0,0,0,3535,3536,7,11,0,0,3536,3537,7,21,0,0,3537,3538,7,15,0,0,3538,3539,7,25,0,0,3539,3540,5,95,0,0,3540,3541,7,28,0,0,3541,3542,7,17,0,0,3542,3543,7,7,0,0,3543,3544,7,8,0,0,3544,3545,7,10,0,0,3545,3546,5,95,0,0,3546,3547,7,8,0,0,3547,3548,7,7,0,0,3548,3549,7,9,0,0,3549,3550,7,8,0,0,3550,3551,7,15,0,0,3551,3552,7,6,0,0,3552,3553,7,7,0,0,3553,316,1,0,0,0,3554,3555,7,11,0,0,3555,3556,7,25,0,0,3556,3557,7,3,0,0,3557,3558,7,6,0,0,3558,3559,7,15,0,0,3559,3560,7,3,0,0,3560,3561,7,5,0,0,3561,318,1,0,0,0,3562,3563,7,11,0,0,3563,3564,7,28,0,0,3564,3565,7,5,0,0,3565,320,1,0,0,0,3566,3567,7,11,0,0,3567,3568,7,28,0,0,3568,3569,7,5,0,0,3569,3570,7,7,0,0,3570,3571,7,26,0,0,3571,3572,7,14,0,0,3572,3573,7,7,0,0,3573,3574,7,25,0,0,3574,3575,7,6,0,0,3575,3576,7,15,0,0,3576,3577,7,19,0,0,3577,3578,7,12,0,0,3578,322,1,0,0,0,3579,3580,7,11,0,0,3580,3581,7,28,0,0,3581,3582,7,5,0,0,3582,3583,7,11,0,0,3583,3584,7,6,0,0,3584,3585,7,3,0,0,3585,3586,7,6,0,0,3586,3587,7,7,0,0,3587,324,1,0,0,0,3588,3589,7,11,0,0,3589,3590,7,28,0,0,3590,3591,7,5,0,0,3591,3592,7,9,0,0,3592,3593,7,3,0,0,3593,3594,7,8,0,0,3594,3595,7,12,0,0,3595,3596,7,15,0,0,3596,3597,7,12,0,0,3597,3598,7,22,0,0,3598,326,1,0,0,0,3599,3600,7,11,0,0,3600,3601,7,28,0,0,3601,3602,7,5,0,0,3602,3603,5,95,0,0,3603,3604,7,16,0,0,3604,3605,7,15,0,0,3605,3606,7,22,0,0,3606,3607,5,95,0,0,3607,3608,7,8,0,0,3608,3609,7,7,0,0,3609,3610,7,11,0,0,3610,3611,7,17,0,0,3611,3612,7,5,0,0,3612,3613,7,6,0,0,3613,328,1,0,0,0,3614,3615,7,11,0,0,3615,3616,7,28,0,0,3616,3617,7,5,0,0,3617,3618,5,95,0,0,3618,3619,7,14,0,0,3619,3620,7,3,0,0,3620,3621,7,5,0,0,3621,3622,7,14,0,0,3622,3623,5,95,0,0,3623,3624,7,18,0,0,3624,3625,7,19,0,0,3625,3626,7,17,0,0,3626,3627,7,12,0,0,3627,3628,7,4,0,0,3628,3629,5,95,0,0,3629,3630,7,8,0,0,3630,3631,7,19,0,0,3631,3632,7,9,0,0,3632,3633,7,11,0,0,3633,330,1,0,0,0,3634,3635,7,11,0,0,3635,3636,7,28,0,0,3636,3637,7,5,0,0,3637,3638,5,95,0,0,3638,3639,7,11,0,0,3639,3640,7,23,0,0,3640,3641,7,3,0,0,3641,3642,7,5,0,0,3642,3643,7,5,0,0,3643,3644,5,95,0,0,3644,3645,7,8,0,0,3645,3646,7,7,0,0,3646,3647,7,11,0,0,3647,3648,7,17,0,0,3648,3649,7,5,0,0,3649,3650,7,6,0,0,3650,332,1,0,0,0,3651,3652,7,11,0,0,3652,3653,7,11,0,0,3653,3654,7,5,0,0,3654,334,1,0,0,0,3655,3656,7,11,0,0,3656,3657,7,6,0,0,3657,3658,7,3,0,0,3658,3659,7,14,0,0,3659,3660,7,21,0,0,3660,3661,7,7,0,0,3661,3662,7,4,0,0,3662,336,1,0,0,0,3663,3664,7,11,0,0,3664,3665,7,6,0,0,3665,3666,7,3,0,0,3666,3667,7,8,0,0,3667,3668,7,6,0,0,3668,3669,7,15,0,0,3669,3670,7,12,0,0,3670,3671,7,22,0,0,3671,338,1,0,0,0,3672,3673,7,11,0,0,3673,3674,7,6,0,0,3674,3675,7,3,0,0,3675,3676,7,6,0,0,3676,3677,7,7,0,0,3677,3678,7,23,0,0,3678,3679,7,7,0,0,3679,3680,7,12,0,0,3680,3681,7,6,0,0,3681,340,1,0,0,0,3682,3683,7,11,0,0,3683,3684,7,6,0,0,3684,3685,7,8,0,0,3685,3686,7,3,0,0,3686,3687,7,15,0,0,3687,3688,7,22,0,0,3688,3689,7,20,0,0,3689,3690,7,6,0,0,3690,3691,5,95,0,0,3691,3692,7,27,0,0,3692,3693,7,19,0,0,3693,3694,7,15,0,0,3694,3695,7,12,0,0,3695,342,1,0,0,0,3696,3697,7,6,0,0,3697,3698,7,3,0,0,3698,3699,7,16,0,0,3699,3700,7,5,0,0,3700,3701,7,7,0,0,3701,344,1,0,0,0,3702,3703,7,6,0,0,3703,3704,7,7,0,0,3704,3705,7,8,0,0,3705,3706,7,23,0,0,3706,3707,7,15,0,0,3707,3708,7,12,0,0,3708,3709,7,3,0,0,3709,3710,7,6,0,0,3710,3711,7,7,0,0,3711,3712,7,4,0,0,3712,346,1,0,0,0,3713,3714,7,6,0,0,3714,3715,7,20,0,0,3715,3716,7,7,0,0,3716,3717,7,12,0,0,3717,348,1,0,0,0,3718,3719,7,6,0,0,3719,3720,7,19,0,0,3720,350,1,0,0,0,3721,3722,7,6,0,0,3722,3723,7,8,0,0,3723,3724,7,3,0,0,3724,3725,7,15,0,0,3725,3726,7,5,0,0,3726,3727,7,15,0,0,3727,3728,7,12,0,0,3728,3729,7,22,0,0,3729,352,1,0,0,0,3730,3731,7,6,0,0,3731,3732,7,8,0,0,3732,3733,7,15,0,0,3733,3734,7,22,0,0,3734,3735,7,22,0,0,3735,3736,7,7,0,0,3736,3737,7,8,0,0,3737,354,1,0,0,0,3738,3739,7,6,0,0,3739,3740,7,8,0,0,3740,3741,7,17,0,0,3741,3742,7,7,0,0,3742,356,1,0,0,0,3743,3744,7,17,0,0,3744,3745,7,12,0,0,3745,3746,7,4,0,0,3746,3747,7,19,0,0,3747,358,1,0,0,0,3748,3749,7,17,0,0,3749,3750,7,12,0,0,3750,3751,7,15,0,0,3751,3752,7,19,0,0,3752,3753,7,12,0,0,3753,360,1,0,0,0,3754,3755,7,17,0,0,3755,3756,7,12,0,0,3756,3757,7,15,0,0,3757,3758,7,28,0,0,3758,3759,7,17,0,0,3759,3760,7,7,0,0,3760,362,1,0,0,0,3761,3762,7,17,0,0,3762,3763,7,12,0,0,3763,3764,7,5,0,0,3764,3765,7,19,0,0,3765,3766,7,14,0,0,3766,3767,7,21,0,0,3767,364,1,0,0,0,3768,3769,7,17,0,0,3769,3770,7,12,0,0,3770,3771,7,11,0,0,3771,3772,7,15,0,0,3772,3773,7,22,0,0,3773,3774,7,12,0,0,3774,3775,7,7,0,0,3775,3776,7,4,0,0,3776,366,1,0,0,0,3777,3778,7,17,0,0,3778,3779,7,25,0,0,3779,3780,7,4,0,0,3780,3781,7,3,0,0,3781,3782,7,6,0,0,3782,3783,7,7,0,0,3783,368,1,0,0,0,3784,3785,7,17,0,0,3785,3786,7,11,0,0,3786,3787,7,3,0,0,3787,3788,7,22,0,0,3788,3789,7,7,0,0,3789,370,1,0,0,0,3790,3791,7,17,0,0,3791,3792,7,11,0,0,3792,3793,7,7,0,0,3793,372,1,0,0,0,3794,3795,7,17,0,0,3795,3796,7,11,0,0,3796,3797,7,15,0,0,3797,3798,7,12,0,0,3798,3799,7,22,0,0,3799,374,1,0,0,0,3800,3801,7,24,0,0,3801,3802,7,3,0,0,3802,3803,7,5,0,0,3803,3804,7,17,0,0,3804,3805,7,7,0,0,3805,3806,7,11,0,0,3806,376,1,0,0,0,3807,3808,7,9,0,0,3808,3809,7,20,0,0,3809,3810,7,7,0,0,3810,3811,7,12,0,0,3811,378,1,0,0,0,3812,3813,7,9,0,0,3813,3814,7,20,0,0,3814,3815,7,7,0,0,3815,3816,7,8,0,0,3816,3817,7,7,0,0,3817,380,1,0,0,0,3818,3819,7,9,0,0,3819,3820,7,20,0,0,3820,3821,7,15,0,0,3821,3822,7,5,0,0,3822,3823,7,7,0,0,3823,382,1,0,0,0,3824,3825,7,9,0,0,3825,3826,7,15,0,0,3826,3827,7,6,0,0,3827,3828,7,20,0,0,3828,384,1,0,0,0,3829,3830,7,9,0,0,3830,3831,7,8,0,0,3831,3832,7,15,0,0,3832,3833,7,6,0,0,3833,3834,7,7,0,0,3834,386,1,0,0,0,3835,3836,7,26,0,0,3836,3837,7,19,0,0,3837,3838,7,8,0,0,3838,388,1,0,0,0,3839,3840,7,13,0,0,3840,3841,7,7,0,0,3841,3842,7,8,0,0,3842,3843,7,19,0,0,3843,3844,7,18,0,0,3844,3845,7,15,0,0,3845,3846,7,5,0,0,3846,3847,7,5,0,0,3847,390,1,0,0,0,3848,3849,7,6,0,0,3849,3850,7,15,0,0,3850,3851,7,12,0,0,3851,3852,7,10,0,0,3852,3853,7,15,0,0,3853,3854,7,12,0,0,3854,3855,7,6,0,0,3855,392,1,0,0,0,3856,3857,7,11,0,0,3857,3858,7,23,0,0,3858,3859,7,3,0,0,3859,3860,7,5,0,0,3860,3861,7,5,0,0,3861,3862,7,15,0,0,3862,3863,7,12,0,0,3863,3864,7,6,0,0,3864,394,1,0,0,0,3865,3866,7,23,0,0,3866,3867,7,7,0,0,3867,3868,7,4,0,0,3868,3869,7,15,0,0,3869,3870,7,17,0,0,3870,3871,7,23,0,0,3871,3872,7,15,0,0,3872,3873,7,12,0,0,3873,3874,7,6,0,0,3874,396,1,0,0,0,3875,3876,7,23,0,0,3876,3877,7,15,0,0,3877,3878,7,4,0,0,3878,3879,7,4,0,0,3879,3880,7,5,0,0,3880,3881,7,7,0,0,3881,3882,7,15,0,0,3882,3883,7,12,0,0,3883,3884,7,6,0,0,3884,398,1,0,0,0,3885,3886,7,15,0,0,3886,3887,7,12,0,0,3887,3888,7,6,0,0,3888,400,1,0,0,0,3889,3890,7,15,0,0,3890,3891,7,12,0,0,3891,3892,7,6,0,0,3892,3893,5,49,0,0,3893,402,1,0,0,0,3894,3895,7,15,0,0,3895,3896,7,12,0,0,3896,3897,7,6,0,0,3897,3898,5,50,0,0,3898,404,1,0,0,0,3899,3900,7,15,0,0,3900,3901,7,12,0,0,3901,3902,7,6,0,0,3902,3903,5,51,0,0,3903,406,1,0,0,0,3904,3905,7,15,0,0,3905,3906,7,12,0,0,3906,3907,7,6,0,0,3907,3908,5,52,0,0,3908,408,1,0,0,0,3909,3910,7,15,0,0,3910,3911,7,12,0,0,3911,3912,7,6,0,0,3912,3913,5,56,0,0,3913,410,1,0,0,0,3914,3915,7,15,0,0,3915,3916,7,12,0,0,3916,3917,7,6,0,0,3917,3918,7,7,0,0,3918,3919,7,22,0,0,3919,3920,7,7,0,0,3920,3921,7,8,0,0,3921,412,1,0,0,0,3922,3923,7,16,0,0,3923,3924,7,15,0,0,3924,3925,7,22,0,0,3925,3926,7,15,0,0,3926,3927,7,12,0,0,3927,3928,7,6,0,0,3928,414,1,0,0,0,3929,3930,7,8,0,0,3930,3931,7,7,0,0,3931,3932,7,3,0,0,3932,3933,7,5,0,0,3933,416,1,0,0,0,3934,3935,7,4,0,0,3935,3936,7,19,0,0,3936,3937,7,17,0,0,3937,3938,7,16,0,0,3938,3939,7,5,0,0,3939,3940,7,7,0,0,3940,418,1,0,0,0,3941,3942,7,25,0,0,3942,3943,7,8,0,0,3943,3944,7,7,0,0,3944,3945,7,14,0,0,3945,3946,7,15,0,0,3946,3947,7,11,0,0,3947,3948,7,15,0,0,3948,3949,7,19,0,0,3949,3950,7,12,0,0,3950,420,1,0,0,0,3951,3952,7,18,0,0,3952,3953,7,5,0,0,3953,3954,7,19,0,0,3954,3955,7,3,0,0,3955,3956,7,6,0,0,3956,422,1,0,0,0,3957,3958,7,18,0,0,3958,3959,7,5,0,0,3959,3960,7,19,0,0,3960,3961,7,3,0,0,3961,3962,7,6,0,0,3962,3963,5,52,0,0,3963,424,1,0,0,0,3964,3965,7,18,0,0,3965,3966,7,5,0,0,3966,3967,7,19,0,0,3967,3968,7,3,0,0,3968,3969,7,6,0,0,3969,3970,5,56,0,0,3970,426,1,0,0,0,3971,3972,7,4,0,0,3972,3973,7,7,0,0,3973,3974,7,14,0,0,3974,3975,7,15,0,0,3975,3976,7,23,0,0,3976,3977,7,3,0,0,3977,3978,7,5,0,0,3978,428,1,0,0,0,3979,3980,7,4,0,0,3980,3981,7,7,0,0,3981,3982,7,14,0,0,3982,430,1,0,0,0,3983,3984,7,12,0,0,3984,3985,7,17,0,0,3985,3986,7,23,0,0,3986,3987,7,7,0,0,3987,3988,7,8,0,0,3988,3989,7,15,0,0,3989,3990,7,14,0,0,3990,432,1,0,0,0,3991,3992,7,4,0,0,3992,3993,7,3,0,0,3993,3994,7,6,0,0,3994,3995,7,7,0,0,3995,434,1,0,0,0,3996,3997,7,6,0,0,3997,3998,7,15,0,0,3998,3999,7,23,0,0,3999,4e3,7,7,0,0,4e3,436,1,0,0,0,4001,4002,7,6,0,0,4002,4003,7,15,0,0,4003,4004,7,23,0,0,4004,4005,7,7,0,0,4005,4006,7,11,0,0,4006,4007,7,6,0,0,4007,4008,7,3,0,0,4008,4009,7,23,0,0,4009,4010,7,25,0,0,4010,438,1,0,0,0,4011,4012,7,4,0,0,4012,4013,7,3,0,0,4013,4014,7,6,0,0,4014,4015,7,7,0,0,4015,4016,7,6,0,0,4016,4017,7,15,0,0,4017,4018,7,23,0,0,4018,4019,7,7,0,0,4019,440,1,0,0,0,4020,4021,7,10,0,0,4021,4022,7,7,0,0,4022,4023,7,3,0,0,4023,4024,7,8,0,0,4024,442,1,0,0,0,4025,4026,7,14,0,0,4026,4027,7,20,0,0,4027,4028,7,3,0,0,4028,4029,7,8,0,0,4029,444,1,0,0,0,4030,4031,7,24,0,0,4031,4032,7,3,0,0,4032,4033,7,8,0,0,4033,4034,7,14,0,0,4034,4035,7,20,0,0,4035,4036,7,3,0,0,4036,4037,7,8,0,0,4037,446,1,0,0,0,4038,4039,7,12,0,0,4039,4040,7,24,0,0,4040,4041,7,3,0,0,4041,4042,7,8,0,0,4042,4043,7,14,0,0,4043,4044,7,20,0,0,4044,4045,7,3,0,0,4045,4046,7,8,0,0,4046,448,1,0,0,0,4047,4048,7,12,0,0,4048,4049,7,3,0,0,4049,4050,7,6,0,0,4050,4051,7,15,0,0,4051,4052,7,19,0,0,4052,4053,7,12,0,0,4053,4054,7,3,0,0,4054,4055,7,5,0,0,4055,450,1,0,0,0,4056,4057,7,16,0,0,4057,4058,7,15,0,0,4058,4059,7,12,0,0,4059,4060,7,3,0,0,4060,4061,7,8,0,0,4061,4062,7,10,0,0,4062,452,1,0,0,0,4063,4064,7,24,0,0,4064,4065,7,3,0,0,4065,4066,7,8,0,0,4066,4067,7,16,0,0,4067,4068,7,15,0,0,4068,4069,7,12,0,0,4069,4070,7,3,0,0,4070,4071,7,8,0,0,4071,4072,7,10,0,0,4072,454,1,0,0,0,4073,4074,7,6,0,0,4074,4075,7,15,0,0,4075,4076,7,12,0,0,4076,4077,7,10,0,0,4077,4078,7,16,0,0,4078,4079,7,5,0,0,4079,4080,7,19,0,0,4080,4081,7,16,0,0,4081,456,1,0,0,0,4082,4083,7,16,0,0,4083,4084,7,5,0,0,4084,4085,7,19,0,0,4085,4086,7,16,0,0,4086,458,1,0,0,0,4087,4088,7,23,0,0,4088,4089,7,7,0,0,4089,4090,7,4,0,0,4090,4091,7,15,0,0,4091,4092,7,17,0,0,4092,4093,7,23,0,0,4093,4094,7,16,0,0,4094,4095,7,5,0,0,4095,4096,7,19,0,0,4096,4097,7,16,0,0,4097,460,1,0,0,0,4098,4099,7,5,0,0,4099,4100,7,19,0,0,4100,4101,7,12,0,0,4101,4102,7,22,0,0,4102,462,1,0,0,0,4103,4104,7,5,0,0,4104,4105,7,19,0,0,4105,4106,7,12,0,0,4106,4107,7,22,0,0,4107,4108,7,16,0,0,4108,4109,7,5,0,0,4109,4110,7,19,0,0,4110,4111,7,16,0,0,4111,464,1,0,0,0,4112,4113,7,6,0,0,4113,4114,7,15,0,0,4114,4115,7,12,0,0,4115,4116,7,10,0,0,4116,4117,7,6,0,0,4117,4118,7,7,0,0,4118,4119,7,26,0,0,4119,4120,7,6,0,0,4120,466,1,0,0,0,4121,4122,7,6,0,0,4122,4123,7,7,0,0,4123,4124,7,26,0,0,4124,4125,7,6,0,0,4125,468,1,0,0,0,4126,4127,7,23,0,0,4127,4128,7,7,0,0,4128,4129,7,4,0,0,4129,4130,7,15,0,0,4130,4131,7,17,0,0,4131,4132,7,23,0,0,4132,4133,7,6,0,0,4133,4134,7,7,0,0,4134,4135,7,26,0,0,4135,4136,7,6,0,0,4136,470,1,0,0,0,4137,4138,7,5,0,0,4138,4139,7,19,0,0,4139,4140,7,12,0,0,4140,4141,7,22,0,0,4141,4142,7,6,0,0,4142,4143,7,7,0,0,4143,4144,7,26,0,0,4144,4145,7,6,0,0,4145,472,1,0,0,0,4146,4147,7,7,0,0,4147,4148,7,12,0,0,4148,4149,7,17,0,0,4149,4150,7,23,0,0,4150,474,1,0,0,0,4151,4152,7,24,0,0,4152,4153,7,3,0,0,4153,4154,7,8,0,0,4154,4155,7,10,0,0,4155,4156,7,15,0,0,4156,4157,7,12,0,0,4157,4158,7,22,0,0,4158,476,1,0,0,0,4159,4160,7,11,0,0,4160,4161,7,7,0,0,4161,4162,7,8,0,0,4162,4163,7,15,0,0,4163,4164,7,3,0,0,4164,4165,7,5,0,0,4165,478,1,0,0,0,4166,4167,7,10,0,0,4167,4168,7,7,0,0,4168,4169,7,3,0,0,4169,4170,7,8,0,0,4170,4171,5,95,0,0,4171,4172,7,23,0,0,4172,4173,7,19,0,0,4173,4174,7,12,0,0,4174,4175,7,6,0,0,4175,4176,7,20,0,0,4176,480,1,0,0,0,4177,4178,7,4,0,0,4178,4179,7,3,0,0,4179,4180,7,10,0,0,4180,4181,5,95,0,0,4181,4182,7,20,0,0,4182,4183,7,19,0,0,4183,4184,7,17,0,0,4184,4185,7,8,0,0,4185,482,1,0,0,0,4186,4187,7,4,0,0,4187,4188,7,3,0,0,4188,4189,7,10,0,0,4189,4190,5,95,0,0,4190,4191,7,23,0,0,4191,4192,7,15,0,0,4192,4193,7,12,0,0,4193,4194,7,17,0,0,4194,4195,7,6,0,0,4195,4196,7,7,0,0,4196,484,1,0,0,0,4197,4198,7,4,0,0,4198,4199,7,3,0,0,4199,4200,7,10,0,0,4200,4201,5,95,0,0,4201,4202,7,11,0,0,4202,4203,7,7,0,0,4203,4204,7,14,0,0,4204,4205,7,19,0,0,4205,4206,7,12,0,0,4206,4207,7,4,0,0,4207,486,1,0,0,0,4208,4209,7,20,0,0,4209,4210,7,19,0,0,4210,4211,7,17,0,0,4211,4212,7,8,0,0,4212,4213,5,95,0,0,4213,4214,7,23,0,0,4214,4215,7,15,0,0,4215,4216,7,12,0,0,4216,4217,7,17,0,0,4217,4218,7,6,0,0,4218,4219,7,7,0,0,4219,488,1,0,0,0,4220,4221,7,20,0,0,4221,4222,7,19,0,0,4222,4223,7,17,0,0,4223,4224,7,8,0,0,4224,4225,5,95,0,0,4225,4226,7,11,0,0,4226,4227,7,7,0,0,4227,4228,7,14,0,0,4228,4229,7,19,0,0,4229,4230,7,12,0,0,4230,4231,7,4,0,0,4231,490,1,0,0,0,4232,4233,7,23,0,0,4233,4234,7,15,0,0,4234,4235,7,12,0,0,4235,4236,7,17,0,0,4236,4237,7,6,0,0,4237,4238,7,7,0,0,4238,4239,5,95,0,0,4239,4240,7,11,0,0,4240,4241,7,7,0,0,4241,4242,7,14,0,0,4242,4243,7,19,0,0,4243,4244,7,12,0,0,4244,4245,7,4,0,0,4245,492,1,0,0,0,4246,4247,7,11,0,0,4247,4248,7,7,0,0,4248,4249,7,14,0,0,4249,4250,7,19,0,0,4250,4251,7,12,0,0,4251,4252,7,4,0,0,4252,4253,5,95,0,0,4253,4254,7,23,0,0,4254,4255,7,15,0,0,4255,4256,7,14,0,0,4256,4257,7,8,0,0,4257,4258,7,19,0,0,4258,4259,7,11,0,0,4259,4260,7,7,0,0,4260,4261,7,14,0,0,4261,4262,7,19,0,0,4262,4263,7,12,0,0,4263,4264,7,4,0,0,4264,494,1,0,0,0,4265,4266,7,23,0,0,4266,4267,7,15,0,0,4267,4268,7,12,0,0,4268,4269,7,17,0,0,4269,4270,7,6,0,0,4270,4271,7,7,0,0,4271,4272,5,95,0,0,4272,4273,7,23,0,0,4273,4274,7,15,0,0,4274,4275,7,14,0,0,4275,4276,7,8,0,0,4276,4277,7,19,0,0,4277,4278,7,11,0,0,4278,4279,7,7,0,0,4279,4280,7,14,0,0,4280,4281,7,19,0,0,4281,4282,7,12,0,0,4282,4283,7,4,0,0,4283,496,1,0,0,0,4284,4285,7,20,0,0,4285,4286,7,19,0,0,4286,4287,7,17,0,0,4287,4288,7,8,0,0,4288,4289,5,95,0,0,4289,4290,7,23,0,0,4290,4291,7,15,0,0,4291,4292,7,14,0,0,4292,4293,7,8,0,0,4293,4294,7,19,0,0,4294,4295,7,11,0,0,4295,4296,7,7,0,0,4296,4297,7,14,0,0,4297,4298,7,19,0,0,4298,4299,7,12,0,0,4299,4300,7,4,0,0,4300,498,1,0,0,0,4301,4302,7,4,0,0,4302,4303,7,3,0,0,4303,4304,7,10,0,0,4304,4305,5,95,0,0,4305,4306,7,23,0,0,4306,4307,7,15,0,0,4307,4308,7,14,0,0,4308,4309,7,8,0,0,4309,4310,7,19,0,0,4310,4311,7,11,0,0,4311,4312,7,7,0,0,4312,4313,7,14,0,0,4313,4314,7,19,0,0,4314,4315,7,12,0,0,4315,4316,7,4,0,0,4316,500,1,0,0,0,4317,4318,7,27,0,0,4318,4319,7,11,0,0,4319,4320,7,19,0,0,4320,4321,7,12,0,0,4321,4322,5,95,0,0,4322,4323,7,3,0,0,4323,4324,7,8,0,0,4324,4325,7,8,0,0,4325,4326,7,3,0,0,4326,4327,7,10,0,0,4327,502,1,0,0,0,4328,4329,7,27,0,0,4329,4330,7,11,0,0,4330,4331,7,19,0,0,4331,4332,7,12,0,0,4332,4333,5,95,0,0,4333,4334,7,3,0,0,4334,4335,7,8,0,0,4335,4336,7,8,0,0,4336,4337,7,3,0,0,4337,4338,7,10,0,0,4338,4339,7,3,0,0,4339,4340,7,22,0,0,4340,4341,7,22,0,0,4341,504,1,0,0,0,4342,4343,7,27,0,0,4343,4344,7,11,0,0,4344,4345,7,19,0,0,4345,4346,7,12,0,0,4346,4347,5,95,0,0,4347,4348,7,3,0,0,4348,4349,7,8,0,0,4349,4350,7,8,0,0,4350,4351,7,3,0,0,4351,4352,7,10,0,0,4352,4353,5,95,0,0,4353,4354,7,3,0,0,4354,4355,7,25,0,0,4355,4356,7,25,0,0,4356,4357,7,7,0,0,4357,4358,7,12,0,0,4358,4359,7,4,0,0,4359,506,1,0,0,0,4360,4361,7,27,0,0,4361,4362,7,11,0,0,4362,4363,7,19,0,0,4363,4364,7,12,0,0,4364,4365,5,95,0,0,4365,4366,7,3,0,0,4366,4367,7,8,0,0,4367,4368,7,8,0,0,4368,4369,7,3,0,0,4369,4370,7,10,0,0,4370,4371,5,95,0,0,4371,4372,7,15,0,0,4372,4373,7,12,0,0,4373,4374,7,11,0,0,4374,4375,7,7,0,0,4375,4376,7,8,0,0,4376,4377,7,6,0,0,4377,508,1,0,0,0,4378,4379,7,27,0,0,4379,4380,7,11,0,0,4380,4381,7,19,0,0,4381,4382,7,12,0,0,4382,4383,5,95,0,0,4383,4384,7,14,0,0,4384,4385,7,19,0,0,4385,4386,7,12,0,0,4386,4387,7,6,0,0,4387,4388,7,3,0,0,4388,4389,7,15,0,0,4389,4390,7,12,0,0,4390,4391,7,11,0,0,4391,510,1,0,0,0,4392,4393,7,27,0,0,4393,4394,7,11,0,0,4394,4395,7,19,0,0,4395,4396,7,12,0,0,4396,4397,5,95,0,0,4397,4398,7,14,0,0,4398,4399,7,19,0,0,4399,4400,7,12,0,0,4400,4401,7,6,0,0,4401,4402,7,3,0,0,4402,4403,7,15,0,0,4403,4404,7,12,0,0,4404,4405,7,11,0,0,4405,4406,5,95,0,0,4406,4407,7,25,0,0,4407,4408,7,3,0,0,4408,4409,7,6,0,0,4409,4410,7,20,0,0,4410,512,1,0,0,0,4411,4412,7,27,0,0,4412,4413,7,11,0,0,4413,4414,7,19,0,0,4414,4415,7,12,0,0,4415,4416,5,95,0,0,4416,4417,7,4,0,0,4417,4418,7,7,0,0,4418,4419,7,25,0,0,4419,4420,7,6,0,0,4420,4421,7,20,0,0,4421,514,1,0,0,0,4422,4423,7,27,0,0,4423,4424,7,11,0,0,4424,4425,7,19,0,0,4425,4426,7,12,0,0,4426,4427,5,95,0,0,4427,4428,7,7,0,0,4428,4429,7,26,0,0,4429,4430,7,6,0,0,4430,4431,7,8,0,0,4431,4432,7,3,0,0,4432,4433,7,14,0,0,4433,4434,7,6,0,0,4434,516,1,0,0,0,4435,4436,7,27,0,0,4436,4437,7,11,0,0,4437,4438,7,19,0,0,4438,4439,7,12,0,0,4439,4440,5,95,0,0,4440,4441,7,15,0,0,4441,4442,7,12,0,0,4442,4443,7,11,0,0,4443,4444,7,7,0,0,4444,4445,7,8,0,0,4445,4446,7,6,0,0,4446,518,1,0,0,0,4447,4448,7,27,0,0,4448,4449,7,11,0,0,4449,4450,7,19,0,0,4450,4451,7,12,0,0,4451,4452,5,95,0,0,4452,4453,7,21,0,0,4453,4454,7,7,0,0,4454,4455,7,10,0,0,4455,4456,7,11,0,0,4456,520,1,0,0,0,4457,4458,7,27,0,0,4458,4459,7,11,0,0,4459,4460,7,19,0,0,4460,4461,7,12,0,0,4461,4462,5,95,0,0,4462,4463,7,5,0,0,4463,4464,7,7,0,0,4464,4465,7,12,0,0,4465,4466,7,22,0,0,4466,4467,7,6,0,0,4467,4468,7,20,0,0,4468,522,1,0,0,0,4469,4470,7,27,0,0,4470,4471,7,11,0,0,4471,4472,7,19,0,0,4472,4473,7,12,0,0,4473,4474,5,95,0,0,4474,4475,7,23,0,0,4475,4476,7,7,0,0,4476,4477,7,8,0,0,4477,4478,7,22,0,0,4478,4479,7,7,0,0,4479,524,1,0,0,0,4480,4481,7,27,0,0,4481,4482,7,11,0,0,4482,4483,7,19,0,0,4483,4484,7,12,0,0,4484,4485,5,95,0,0,4485,4486,7,23,0,0,4486,4487,7,7,0,0,4487,4488,7,8,0,0,4488,4489,7,22,0,0,4489,4490,7,7,0,0,4490,4491,5,95,0,0,4491,4492,7,25,0,0,4492,4493,7,3,0,0,4493,4494,7,6,0,0,4494,4495,7,14,0,0,4495,4496,7,20,0,0,4496,526,1,0,0,0,4497,4498,7,27,0,0,4498,4499,7,11,0,0,4499,4500,7,19,0,0,4500,4501,7,12,0,0,4501,4502,5,95,0,0,4502,4503,7,23,0,0,4503,4504,7,7,0,0,4504,4505,7,8,0,0,4505,4506,7,22,0,0,4506,4507,7,7,0,0,4507,4508,5,95,0,0,4508,4509,7,25,0,0,4509,4510,7,8,0,0,4510,4511,7,7,0,0,4511,4512,7,11,0,0,4512,4513,7,7,0,0,4513,4514,7,8,0,0,4514,4515,7,24,0,0,4515,4516,7,7,0,0,4516,528,1,0,0,0,4517,4518,7,27,0,0,4518,4519,7,11,0,0,4519,4520,7,19,0,0,4520,4521,7,12,0,0,4521,4522,5,95,0,0,4522,4523,7,19,0,0,4523,4524,7,16,0,0,4524,4525,7,27,0,0,4525,4526,7,7,0,0,4526,4527,7,14,0,0,4527,4528,7,6,0,0,4528,530,1,0,0,0,4529,4530,7,27,0,0,4530,4531,7,11,0,0,4531,4532,7,19,0,0,4532,4533,7,12,0,0,4533,4534,5,95,0,0,4534,4535,7,19,0,0,4535,4536,7,16,0,0,4536,4537,7,27,0,0,4537,4538,7,7,0,0,4538,4539,7,14,0,0,4539,4540,7,6,0,0,4540,4541,7,3,0,0,4541,4542,7,22,0,0,4542,4543,7,22,0,0,4543,532,1,0,0,0,4544,4545,7,27,0,0,4545,4546,7,11,0,0,4546,4547,7,19,0,0,4547,4548,7,12,0,0,4548,4549,5,95,0,0,4549,4550,7,19,0,0,4550,4551,7,24,0,0,4551,4552,7,7,0,0,4552,4553,7,8,0,0,4553,4554,7,5,0,0,4554,4555,7,3,0,0,4555,4556,7,25,0,0,4556,4557,7,11,0,0,4557,534,1,0,0,0,4558,4559,7,27,0,0,4559,4560,7,11,0,0,4560,4561,7,19,0,0,4561,4562,7,12,0,0,4562,4563,5,95,0,0,4563,4564,7,25,0,0,4564,4565,7,8,0,0,4565,4566,7,7,0,0,4566,4567,7,6,0,0,4567,4568,7,6,0,0,4568,4569,7,10,0,0,4569,536,1,0,0,0,4570,4571,7,27,0,0,4571,4572,7,11,0,0,4572,4573,7,19,0,0,4573,4574,7,12,0,0,4574,4575,5,95,0,0,4575,4576,7,28,0,0,4576,4577,7,17,0,0,4577,4578,7,19,0,0,4578,4579,7,6,0,0,4579,4580,7,7,0,0,4580,538,1,0,0,0,4581,4582,7,27,0,0,4582,4583,7,11,0,0,4583,4584,7,19,0,0,4584,4585,7,12,0,0,4585,4586,5,95,0,0,4586,4587,7,8,0,0,4587,4588,7,7,0,0,4588,4589,7,23,0,0,4589,4590,7,19,0,0,4590,4591,7,24,0,0,4591,4592,7,7,0,0,4592,540,1,0,0,0,4593,4594,7,27,0,0,4594,4595,7,11,0,0,4595,4596,7,19,0,0,4596,4597,7,12,0,0,4597,4598,5,95,0,0,4598,4599,7,8,0,0,4599,4600,7,7,0,0,4600,4601,7,25,0,0,4601,4602,7,5,0,0,4602,4603,7,3,0,0,4603,4604,7,14,0,0,4604,4605,7,7,0,0,4605,542,1,0,0,0,4606,4607,7,27,0,0,4607,4608,7,11,0,0,4608,4609,7,19,0,0,4609,4610,7,12,0,0,4610,4611,5,95,0,0,4611,4612,7,11,0,0,4612,4613,7,14,0,0,4613,4614,7,20,0,0,4614,4615,7,7,0,0,4615,4616,7,23,0,0,4616,4617,7,3,0,0,4617,4618,5,95,0,0,4618,4619,7,24,0,0,4619,4620,7,3,0,0,4620,4621,7,5,0,0,4621,4622,7,15,0,0,4622,4623,7,4,0,0,4623,544,1,0,0,0,4624,4625,7,27,0,0,4625,4626,7,11,0,0,4626,4627,7,19,0,0,4627,4628,7,12,0,0,4628,4629,5,95,0,0,4629,4630,7,11,0,0,4630,4631,7,14,0,0,4631,4632,7,20,0,0,4632,4633,7,7,0,0,4633,4634,7,23,0,0,4634,4635,7,3,0,0,4635,4636,5,95,0,0,4636,4637,7,24,0,0,4637,4638,7,3,0,0,4638,4639,7,5,0,0,4639,4640,7,15,0,0,4640,4641,7,4,0,0,4641,4642,7,3,0,0,4642,4643,7,6,0,0,4643,4644,7,15,0,0,4644,4645,7,19,0,0,4645,4646,7,12,0,0,4646,4647,5,95,0,0,4647,4648,7,8,0,0,4648,4649,7,7,0,0,4649,4650,7,25,0,0,4650,4651,7,19,0,0,4651,4652,7,8,0,0,4652,4653,7,6,0,0,4653,546,1,0,0,0,4654,4655,7,27,0,0,4655,4656,7,11,0,0,4656,4657,7,19,0,0,4657,4658,7,12,0,0,4658,4659,5,95,0,0,4659,4660,7,11,0,0,4660,4661,7,7,0,0,4661,4662,7,3,0,0,4662,4663,7,8,0,0,4663,4664,7,14,0,0,4664,4665,7,20,0,0,4665,548,1,0,0,0,4666,4667,7,27,0,0,4667,4668,7,11,0,0,4668,4669,7,19,0,0,4669,4670,7,12,0,0,4670,4671,5,95,0,0,4671,4672,7,11,0,0,4672,4673,7,7,0,0,4673,4674,7,6,0,0,4674,550,1,0,0,0,4675,4676,7,27,0,0,4676,4677,7,11,0,0,4677,4678,7,19,0,0,4678,4679,7,12,0,0,4679,4680,5,95,0,0,4680,4681,7,11,0,0,4681,4682,7,6,0,0,4682,4683,7,19,0,0,4683,4684,7,8,0,0,4684,4685,7,3,0,0,4685,4686,7,22,0,0,4686,4687,7,7,0,0,4687,4688,5,95,0,0,4688,4689,7,18,0,0,4689,4690,7,8,0,0,4690,4691,7,7,0,0,4691,4692,7,7,0,0,4692,552,1,0,0,0,4693,4694,7,27,0,0,4694,4695,7,11,0,0,4695,4696,7,19,0,0,4696,4697,7,12,0,0,4697,4698,5,95,0,0,4698,4699,7,11,0,0,4699,4700,7,6,0,0,4700,4701,7,19,0,0,4701,4702,7,8,0,0,4702,4703,7,3,0,0,4703,4704,7,22,0,0,4704,4705,7,7,0,0,4705,4706,5,95,0,0,4706,4707,7,11,0,0,4707,4708,7,15,0,0,4708,4709,7,13,0,0,4709,4710,7,7,0,0,4710,554,1,0,0,0,4711,4712,7,27,0,0,4712,4713,7,11,0,0,4713,4714,7,19,0,0,4714,4715,7,12,0,0,4715,4716,5,95,0,0,4716,4717,7,6,0,0,4717,4718,7,3,0,0,4718,4719,7,16,0,0,4719,4720,7,5,0,0,4720,4721,7,7,0,0,4721,556,1,0,0,0,4722,4723,7,27,0,0,4723,4724,7,11,0,0,4724,4725,7,19,0,0,4725,4726,7,12,0,0,4726,4727,5,95,0,0,4727,4728,7,6,0,0,4728,4729,7,10,0,0,4729,4730,7,25,0,0,4730,4731,7,7,0,0,4731,558,1,0,0,0,4732,4733,7,27,0,0,4733,4734,7,11,0,0,4734,4735,7,19,0,0,4735,4736,7,12,0,0,4736,4737,5,95,0,0,4737,4738,7,17,0,0,4738,4739,7,12,0,0,4739,4740,7,28,0,0,4740,4741,7,17,0,0,4741,4742,7,19,0,0,4742,4743,7,6,0,0,4743,4744,7,7,0,0,4744,560,1,0,0,0,4745,4746,7,27,0,0,4746,4747,7,11,0,0,4747,4748,7,19,0,0,4748,4749,7,12,0,0,4749,4750,5,95,0,0,4750,4751,7,24,0,0,4751,4752,7,3,0,0,4752,4753,7,5,0,0,4753,4754,7,15,0,0,4754,4755,7,4,0,0,4755,562,1,0,0,0,4756,4757,7,27,0,0,4757,4758,7,11,0,0,4758,4759,7,19,0,0,4759,4760,7,12,0,0,4760,4761,5,95,0,0,4761,4762,7,24,0,0,4762,4763,7,3,0,0,4763,4764,7,5,0,0,4764,4765,7,17,0,0,4765,4766,7,7,0,0,4766,564,1,0,0,0,4767,4768,7,12,0,0,4768,4769,7,7,0,0,4769,4770,7,11,0,0,4770,4771,7,6,0,0,4771,4772,7,7,0,0,4772,4773,7,4,0,0,4773,566,1,0,0,0,4774,4775,7,19,0,0,4775,4776,7,8,0,0,4776,4777,7,4,0,0,4777,4778,7,15,0,0,4778,4779,7,12,0,0,4779,4780,7,3,0,0,4780,4781,7,5,0,0,4781,4782,7,15,0,0,4782,4783,7,6,0,0,4783,4784,7,10,0,0,4784,568,1,0,0,0,4785,4786,7,25,0,0,4786,4787,7,3,0,0,4787,4788,7,6,0,0,4788,4789,7,20,0,0,4789,570,1,0,0,0,4790,4791,7,3,0,0,4791,4792,7,24,0,0,4792,4793,7,22,0,0,4793,572,1,0,0,0,4794,4795,7,16,0,0,4795,4796,7,15,0,0,4796,4797,7,6,0,0,4797,4798,5,95,0,0,4798,4799,7,3,0,0,4799,4800,7,12,0,0,4800,4801,7,4,0,0,4801,574,1,0,0,0,4802,4803,7,16,0,0,4803,4804,7,15,0,0,4804,4805,7,6,0,0,4805,4806,5,95,0,0,4806,4807,7,19,0,0,4807,4808,7,8,0,0,4808,576,1,0,0,0,4809,4810,7,16,0,0,4810,4811,7,15,0,0,4811,4812,7,6,0,0,4812,4813,5,95,0,0,4813,4814,7,26,0,0,4814,4815,7,19,0,0,4815,4816,7,8,0,0,4816,578,1,0,0,0,4817,4818,7,14,0,0,4818,4819,7,19,0,0,4819,4820,7,17,0,0,4820,4821,7,12,0,0,4821,4822,7,6,0,0,4822,580,1,0,0,0,4823,4824,7,14,0,0,4824,4825,7,17,0,0,4825,4826,7,23,0,0,4826,4827,7,7,0,0,4827,4828,5,95,0,0,4828,4829,7,4,0,0,4829,4830,7,15,0,0,4830,4831,7,11,0,0,4831,4832,7,6,0,0,4832,582,1,0,0,0,4833,4834,7,4,0,0,4834,4835,7,7,0,0,4835,4836,7,12,0,0,4836,4837,7,11,0,0,4837,4838,7,7,0,0,4838,4839,5,95,0,0,4839,4840,7,8,0,0,4840,4841,7,3,0,0,4841,4842,7,12,0,0,4842,4843,7,21,0,0,4843,584,1,0,0,0,4844,4845,7,18,0,0,4845,4846,7,15,0,0,4846,4847,7,8,0,0,4847,4848,7,11,0,0,4848,4849,7,6,0,0,4849,4850,5,95,0,0,4850,4851,7,24,0,0,4851,4852,7,3,0,0,4852,4853,7,5,0,0,4853,4854,7,17,0,0,4854,4855,7,7,0,0,4855,586,1,0,0,0,4856,4857,7,22,0,0,4857,4858,7,8,0,0,4858,4859,7,19,0,0,4859,4860,7,17,0,0,4860,4861,7,25,0,0,4861,4862,5,95,0,0,4862,4863,7,14,0,0,4863,4864,7,19,0,0,4864,4865,7,12,0,0,4865,4866,7,14,0,0,4866,4867,7,3,0,0,4867,4868,7,6,0,0,4868,588,1,0,0,0,4869,4870,7,5,0,0,4870,4871,7,3,0,0,4871,4872,7,22,0,0,4872,590,1,0,0,0,4873,4874,7,5,0,0,4874,4875,7,3,0,0,4875,4876,7,11,0,0,4876,4877,7,6,0,0,4877,4878,5,95,0,0,4878,4879,7,24,0,0,4879,4880,7,3,0,0,4880,4881,7,5,0,0,4881,4882,7,17,0,0,4882,4883,7,7,0,0,4883,592,1,0,0,0,4884,4885,7,5,0,0,4885,4886,7,7,0,0,4886,4887,7,3,0,0,4887,4888,7,4,0,0,4888,594,1,0,0,0,4889,4890,7,23,0,0,4890,4891,7,3,0,0,4891,4892,7,26,0,0,4892,596,1,0,0,0,4893,4894,7,23,0,0,4894,4895,7,15,0,0,4895,4896,7,12,0,0,4896,598,1,0,0,0,4897,4898,7,12,0,0,4898,4899,7,6,0,0,4899,4900,7,15,0,0,4900,4901,7,5,0,0,4901,4902,7,7,0,0,4902,600,1,0,0,0,4903,4904,7,12,0,0,4904,4905,7,6,0,0,4905,4906,7,20,0,0,4906,4907,5,95,0,0,4907,4908,7,24,0,0,4908,4909,7,3,0,0,4909,4910,7,5,0,0,4910,4911,7,17,0,0,4911,4912,7,7,0,0,4912,602,1,0,0,0,4913,4914,7,25,0,0,4914,4915,7,7,0,0,4915,4916,7,8,0,0,4916,4917,7,14,0,0,4917,4918,7,7,0,0,4918,4919,7,12,0,0,4919,4920,7,6,0,0,4920,4921,5,95,0,0,4921,4922,7,8,0,0,4922,4923,7,3,0,0,4923,4924,7,12,0,0,4924,4925,7,21,0,0,4925,604,1,0,0,0,4926,4927,7,8,0,0,4927,4928,7,3,0,0,4928,4929,7,12,0,0,4929,4930,7,21,0,0,4930,606,1,0,0,0,4931,4932,7,8,0,0,4932,4933,7,19,0,0,4933,4934,7,9,0,0,4934,4935,5,95,0,0,4935,4936,7,12,0,0,4936,4937,7,17,0,0,4937,4938,7,23,0,0,4938,4939,7,16,0,0,4939,4940,7,7,0,0,4940,4941,7,8,0,0,4941,608,1,0,0,0,4942,4943,7,11,0,0,4943,4944,7,6,0,0,4944,4945,7,4,0,0,4945,610,1,0,0,0,4946,4947,7,11,0,0,4947,4948,7,6,0,0,4948,4949,7,4,0,0,4949,4950,7,4,0,0,4950,4951,7,7,0,0,4951,4952,7,24,0,0,4952,612,1,0,0,0,4953,4954,7,11,0,0,4954,4955,7,6,0,0,4955,4956,7,4,0,0,4956,4957,7,4,0,0,4957,4958,7,7,0,0,4958,4959,7,24,0,0,4959,4960,5,95,0,0,4960,4961,7,25,0,0,4961,4962,7,19,0,0,4962,4963,7,25,0,0,4963,614,1,0,0,0,4964,4965,7,11,0,0,4965,4966,7,6,0,0,4966,4967,7,4,0,0,4967,4968,7,4,0,0,4968,4969,7,7,0,0,4969,4970,7,24,0,0,4970,4971,5,95,0,0,4971,4972,7,11,0,0,4972,4973,7,3,0,0,4973,4974,7,23,0,0,4974,4975,7,25,0,0,4975,616,1,0,0,0,4976,4977,7,11,0,0,4977,4978,7,17,0,0,4978,4979,7,23,0,0,4979,618,1,0,0,0,4980,4981,7,24,0,0,4981,4982,7,3,0,0,4982,4983,7,8,0,0,4983,4984,5,95,0,0,4984,4985,7,25,0,0,4985,4986,7,19,0,0,4986,4987,7,25,0,0,4987,620,1,0,0,0,4988,4989,7,24,0,0,4989,4990,7,3,0,0,4990,4991,7,8,0,0,4991,4992,5,95,0,0,4992,4993,7,11,0,0,4993,4994,7,3,0,0,4994,4995,7,23,0,0,4995,4996,7,25,0,0,4996,622,1,0,0,0,4997,4998,7,24,0,0,4998,4999,7,3,0,0,4999,5e3,7,8,0,0,5e3,5001,7,15,0,0,5001,5002,7,3,0,0,5002,5003,7,12,0,0,5003,5004,7,14,0,0,5004,5005,7,7,0,0,5005,624,1,0,0,0,5006,5007,7,14,0,0,5007,5008,7,17,0,0,5008,5009,7,8,0,0,5009,5010,7,8,0,0,5010,5011,7,7,0,0,5011,5012,7,12,0,0,5012,5013,7,6,0,0,5013,5014,5,95,0,0,5014,5015,7,4,0,0,5015,5016,7,3,0,0,5016,5017,7,6,0,0,5017,5018,7,7,0,0,5018,626,1,0,0,0,5019,5020,7,14,0,0,5020,5021,7,17,0,0,5021,5022,7,8,0,0,5022,5023,7,8,0,0,5023,5024,7,7,0,0,5024,5025,7,12,0,0,5025,5026,7,6,0,0,5026,5027,5,95,0,0,5027,5028,7,6,0,0,5028,5029,7,15,0,0,5029,5030,7,23,0,0,5030,5031,7,7,0,0,5031,628,1,0,0,0,5032,5033,7,14,0,0,5033,5034,7,17,0,0,5034,5035,7,8,0,0,5035,5036,7,8,0,0,5036,5037,7,7,0,0,5037,5038,7,12,0,0,5038,5039,7,6,0,0,5039,5040,5,95,0,0,5040,5041,7,6,0,0,5041,5042,7,15,0,0,5042,5043,7,23,0,0,5043,5044,7,7,0,0,5044,5045,7,11,0,0,5045,5046,7,6,0,0,5046,5047,7,3,0,0,5047,5048,7,23,0,0,5048,5049,7,25,0,0,5049,630,1,0,0,0,5050,5051,7,5,0,0,5051,5052,7,19,0,0,5052,5053,7,14,0,0,5053,5054,7,3,0,0,5054,5055,7,5,0,0,5055,5056,7,6,0,0,5056,5057,7,15,0,0,5057,5058,7,23,0,0,5058,5059,7,7,0,0,5059,632,1,0,0,0,5060,5061,7,14,0,0,5061,5062,7,17,0,0,5062,5063,7,8,0,0,5063,5064,7,4,0,0,5064,5065,7,3,0,0,5065,5066,7,6,0,0,5066,5067,7,7,0,0,5067,634,1,0,0,0,5068,5069,7,14,0,0,5069,5070,7,17,0,0,5070,5071,7,8,0,0,5071,5072,7,6,0,0,5072,5073,7,15,0,0,5073,5074,7,23,0,0,5074,5075,7,7,0,0,5075,636,1,0,0,0,5076,5077,7,4,0,0,5077,5078,7,3,0,0,5078,5079,7,6,0,0,5079,5080,7,7,0,0,5080,5081,5,95,0,0,5081,5082,7,3,0,0,5082,5083,7,4,0,0,5083,5084,7,4,0,0,5084,638,1,0,0,0,5085,5086,7,4,0,0,5086,5087,7,3,0,0,5087,5088,7,6,0,0,5088,5089,7,7,0,0,5089,5090,5,95,0,0,5090,5091,7,11,0,0,5091,5092,7,17,0,0,5092,5093,7,16,0,0,5093,640,1,0,0,0,5094,5095,7,7,0,0,5095,5096,7,26,0,0,5096,5097,7,6,0,0,5097,5098,7,8,0,0,5098,5099,7,3,0,0,5099,5100,7,14,0,0,5100,5101,7,6,0,0,5101,642,1,0,0,0,5102,5103,7,5,0,0,5103,5104,7,19,0,0,5104,5105,7,14,0,0,5105,5106,7,3,0,0,5106,5107,7,5,0,0,5107,5108,7,6,0,0,5108,5109,7,15,0,0,5109,5110,7,23,0,0,5110,5111,7,7,0,0,5111,5112,7,11,0,0,5112,5113,7,6,0,0,5113,5114,7,3,0,0,5114,5115,7,23,0,0,5115,5116,7,25,0,0,5116,644,1,0,0,0,5117,5118,7,12,0,0,5118,5119,7,19,0,0,5119,5120,7,9,0,0,5120,646,1,0,0,0,5121,5122,7,25,0,0,5122,5123,7,19,0,0,5123,5124,7,11,0,0,5124,5125,7,15,0,0,5125,5126,7,6,0,0,5126,5127,7,15,0,0,5127,5128,7,19,0,0,5128,5129,7,12,0,0,5129,648,1,0,0,0,5130,5131,7,11,0,0,5131,5132,7,17,0,0,5132,5133,7,16,0,0,5133,5134,7,11,0,0,5134,5135,7,6,0,0,5135,5136,7,8,0,0,5136,650,1,0,0,0,5137,5138,7,11,0,0,5138,5139,7,17,0,0,5139,5140,7,16,0,0,5140,5141,7,11,0,0,5141,5142,7,6,0,0,5142,5143,7,8,0,0,5143,5144,7,15,0,0,5144,5145,7,12,0,0,5145,5146,7,22,0,0,5146,652,1,0,0,0,5147,5148,7,11,0,0,5148,5149,7,10,0,0,5149,5150,7,11,0,0,5150,5151,7,4,0,0,5151,5152,7,3,0,0,5152,5153,7,6,0,0,5153,5154,7,7,0,0,5154,654,1,0,0,0,5155,5156,7,6,0,0,5156,5157,7,8,0,0,5157,5158,7,15,0,0,5158,5159,7,23,0,0,5159,656,1,0,0,0,5160,5161,7,17,0,0,5161,5162,7,6,0,0,5162,5163,7,14,0,0,5163,5164,5,95,0,0,5164,5165,7,4,0,0,5165,5166,7,3,0,0,5166,5167,7,6,0,0,5167,5168,7,7,0,0,5168,658,1,0,0,0,5169,5170,7,17,0,0,5170,5171,7,6,0,0,5171,5172,7,14,0,0,5172,5173,5,95,0,0,5173,5174,7,6,0,0,5174,5175,7,15,0,0,5175,5176,7,23,0,0,5176,5177,7,7,0,0,5177,660,1,0,0,0,5178,5179,7,17,0,0,5179,5180,7,6,0,0,5180,5181,7,14,0,0,5181,5182,5,95,0,0,5182,5183,7,6,0,0,5183,5184,7,15,0,0,5184,5185,7,23,0,0,5185,5186,7,7,0,0,5186,5187,7,11,0,0,5187,5188,7,6,0,0,5188,5189,7,3,0,0,5189,5190,7,23,0,0,5190,5191,7,25,0,0,5191,662,1,0,0,0,5192,5193,7,3,0,0,5193,5194,7,14,0,0,5194,5195,7,14,0,0,5195,5196,7,19,0,0,5196,5197,7,17,0,0,5197,5198,7,12,0,0,5198,5199,7,6,0,0,5199,664,1,0,0,0,5200,5201,7,3,0,0,5201,5202,7,14,0,0,5202,5203,7,6,0,0,5203,5204,7,15,0,0,5204,5205,7,19,0,0,5205,5206,7,12,0,0,5206,666,1,0,0,0,5207,5208,7,3,0,0,5208,5209,7,18,0,0,5209,5210,7,6,0,0,5210,5211,7,7,0,0,5211,5212,7,8,0,0,5212,668,1,0,0,0,5213,5214,7,3,0,0,5214,5215,7,22,0,0,5215,5216,7,22,0,0,5216,5217,7,8,0,0,5217,5218,7,7,0,0,5218,5219,7,22,0,0,5219,5220,7,3,0,0,5220,5221,7,6,0,0,5221,5222,7,7,0,0,5222,670,1,0,0,0,5223,5224,7,3,0,0,5224,5225,7,5,0,0,5225,5226,7,22,0,0,5226,5227,7,19,0,0,5227,5228,7,8,0,0,5228,5229,7,15,0,0,5229,5230,7,6,0,0,5230,5231,7,20,0,0,5231,5232,7,23,0,0,5232,672,1,0,0,0,5233,5234,7,3,0,0,5234,5235,7,12,0,0,5235,5236,7,10,0,0,5236,674,1,0,0,0,5237,5238,7,3,0,0,5238,5239,7,6,0,0,5239,676,1,0,0,0,5240,5241,7,3,0,0,5241,5242,7,17,0,0,5242,5243,7,6,0,0,5243,5244,7,20,0,0,5244,5245,7,19,0,0,5245,5246,7,8,0,0,5246,5247,7,11,0,0,5247,678,1,0,0,0,5248,5249,7,3,0,0,5249,5250,7,17,0,0,5250,5251,7,6,0,0,5251,5252,7,19,0,0,5252,5253,7,14,0,0,5253,5254,7,19,0,0,5254,5255,7,23,0,0,5255,5256,7,23,0,0,5256,5257,7,15,0,0,5257,5258,7,6,0,0,5258,680,1,0,0,0,5259,5260,7,3,0,0,5260,5261,7,17,0,0,5261,5262,7,6,0,0,5262,5263,7,19,0,0,5263,5264,7,7,0,0,5264,5265,7,26,0,0,5265,5266,7,6,0,0,5266,5267,7,7,0,0,5267,5268,7,12,0,0,5268,5269,7,4,0,0,5269,5270,5,95,0,0,5270,5271,7,11,0,0,5271,5272,7,15,0,0,5272,5273,7,13,0,0,5273,5274,7,7,0,0,5274,682,1,0,0,0,5275,5276,7,3,0,0,5276,5277,7,17,0,0,5277,5278,7,6,0,0,5278,5279,7,19,0,0,5279,5280,5,95,0,0,5280,5281,7,15,0,0,5281,5282,7,12,0,0,5282,5283,7,14,0,0,5283,5284,7,8,0,0,5284,5285,7,7,0,0,5285,5286,7,23,0,0,5286,5287,7,7,0,0,5287,5288,7,12,0,0,5288,5289,7,6,0,0,5289,684,1,0,0,0,5290,5291,7,3,0,0,5291,5292,7,24,0,0,5292,5293,7,22,0,0,5293,5294,5,95,0,0,5294,5295,7,8,0,0,5295,5296,7,19,0,0,5296,5297,7,9,0,0,5297,5298,5,95,0,0,5298,5299,7,5,0,0,5299,5300,7,7,0,0,5300,5301,7,12,0,0,5301,5302,7,22,0,0,5302,5303,7,6,0,0,5303,5304,7,20,0,0,5304,686,1,0,0,0,5305,5306,7,16,0,0,5306,5307,7,7,0,0,5307,5308,7,22,0,0,5308,5309,7,15,0,0,5309,5310,7,12,0,0,5310,688,1,0,0,0,5311,5312,7,16,0,0,5312,5313,7,15,0,0,5313,5314,7,12,0,0,5314,5315,7,5,0,0,5315,5316,7,19,0,0,5316,5317,7,22,0,0,5317,690,1,0,0,0,5318,5319,7,16,0,0,5319,5320,7,15,0,0,5320,5321,7,6,0,0,5321,692,1,0,0,0,5322,5323,7,16,0,0,5323,5324,7,5,0,0,5324,5325,7,19,0,0,5325,5326,7,14,0,0,5326,5327,7,21,0,0,5327,694,1,0,0,0,5328,5329,7,16,0,0,5329,5330,7,19,0,0,5330,5331,7,19,0,0,5331,5332,7,5,0,0,5332,696,1,0,0,0,5333,5334,7,16,0,0,5334,5335,7,19,0,0,5335,5336,7,19,0,0,5336,5337,7,5,0,0,5337,5338,7,7,0,0,5338,5339,7,3,0,0,5339,5340,7,12,0,0,5340,698,1,0,0,0,5341,5342,7,16,0,0,5342,5343,7,6,0,0,5343,5344,7,8,0,0,5344,5345,7,7,0,0,5345,5346,7,7,0,0,5346,700,1,0,0,0,5347,5348,7,14,0,0,5348,5349,7,3,0,0,5349,5350,7,14,0,0,5350,5351,7,20,0,0,5351,5352,7,7,0,0,5352,702,1,0,0,0,5353,5354,7,14,0,0,5354,5355,7,3,0,0,5355,5356,7,11,0,0,5356,5357,7,14,0,0,5357,5358,7,3,0,0,5358,5359,7,4,0,0,5359,5360,7,7,0,0,5360,5361,7,4,0,0,5361,704,1,0,0,0,5362,5363,7,14,0,0,5363,5364,7,20,0,0,5364,5365,7,3,0,0,5365,5366,7,15,0,0,5366,5367,7,12,0,0,5367,706,1,0,0,0,5368,5369,7,14,0,0,5369,5370,7,20,0,0,5370,5371,7,3,0,0,5371,5372,7,12,0,0,5372,5373,7,22,0,0,5373,5374,7,7,0,0,5374,5375,7,4,0,0,5375,708,1,0,0,0,5376,5377,7,14,0,0,5377,5378,7,20,0,0,5378,5379,7,3,0,0,5379,5380,7,12,0,0,5380,5381,7,12,0,0,5381,5382,7,7,0,0,5382,5383,7,5,0,0,5383,710,1,0,0,0,5384,5385,7,14,0,0,5385,5386,7,20,0,0,5386,5387,7,7,0,0,5387,5388,7,14,0,0,5388,5389,7,21,0,0,5389,5390,7,11,0,0,5390,5391,7,17,0,0,5391,5392,7,23,0,0,5392,712,1,0,0,0,5393,5394,7,25,0,0,5394,5395,7,3,0,0,5395,5396,7,22,0,0,5396,5397,7,7,0,0,5397,5398,5,95,0,0,5398,5399,7,14,0,0,5399,5400,7,20,0,0,5400,5401,7,7,0,0,5401,5402,7,14,0,0,5402,5403,7,21,0,0,5403,5404,7,11,0,0,5404,5405,7,17,0,0,5405,5406,7,23,0,0,5406,714,1,0,0,0,5407,5408,7,14,0,0,5408,5409,7,15,0,0,5409,5410,7,25,0,0,5410,5411,7,20,0,0,5411,5412,7,7,0,0,5412,5413,7,8,0,0,5413,716,1,0,0,0,5414,5415,7,14,0,0,5415,5416,7,5,0,0,5416,5417,7,3,0,0,5417,5418,7,11,0,0,5418,5419,7,11,0,0,5419,5420,5,95,0,0,5420,5421,7,19,0,0,5421,5422,7,8,0,0,5422,5423,7,15,0,0,5423,5424,7,22,0,0,5424,5425,7,15,0,0,5425,5426,7,12,0,0,5426,718,1,0,0,0,5427,5428,7,14,0,0,5428,5429,7,5,0,0,5429,5430,7,15,0,0,5430,5431,7,7,0,0,5431,5432,7,12,0,0,5432,5433,7,6,0,0,5433,720,1,0,0,0,5434,5435,7,14,0,0,5435,5436,7,5,0,0,5436,5437,7,19,0,0,5437,5438,7,11,0,0,5438,5439,7,7,0,0,5439,722,1,0,0,0,5440,5441,7,14,0,0,5441,5442,7,5,0,0,5442,5443,7,17,0,0,5443,5444,7,11,0,0,5444,5445,7,6,0,0,5445,5446,7,7,0,0,5446,5447,7,8,0,0,5447,5448,7,15,0,0,5448,5449,7,12,0,0,5449,5450,7,22,0,0,5450,724,1,0,0,0,5451,5452,7,14,0,0,5452,5453,7,19,0,0,5453,5454,7,3,0,0,5454,5455,7,5,0,0,5455,5456,7,7,0,0,5456,5457,7,11,0,0,5457,5458,7,14,0,0,5458,5459,7,7,0,0,5459,726,1,0,0,0,5460,5461,7,14,0,0,5461,5462,7,19,0,0,5462,5463,7,4,0,0,5463,5464,7,7,0,0,5464,728,1,0,0,0,5465,5466,7,14,0,0,5466,5467,7,19,0,0,5467,5468,7,5,0,0,5468,5469,7,17,0,0,5469,5470,7,23,0,0,5470,5471,7,12,0,0,5471,5472,7,11,0,0,5472,730,1,0,0,0,5473,5474,7,14,0,0,5474,5475,7,19,0,0,5475,5476,7,5,0,0,5476,5477,7,17,0,0,5477,5478,7,23,0,0,5478,5479,7,12,0,0,5479,5480,5,95,0,0,5480,5481,7,18,0,0,5481,5482,7,19,0,0,5482,5483,7,8,0,0,5483,5484,7,23,0,0,5484,5485,7,3,0,0,5485,5486,7,6,0,0,5486,732,1,0,0,0,5487,5488,7,14,0,0,5488,5489,7,19,0,0,5489,5490,7,5,0,0,5490,5491,7,17,0,0,5491,5492,7,23,0,0,5492,5493,7,12,0,0,5493,5494,5,95,0,0,5494,5495,7,12,0,0,5495,5496,7,3,0,0,5496,5497,7,23,0,0,5497,5498,7,7,0,0,5498,734,1,0,0,0,5499,5500,7,14,0,0,5500,5501,7,19,0,0,5501,5502,7,23,0,0,5502,5503,7,23,0,0,5503,5504,7,7,0,0,5504,5505,7,12,0,0,5505,5506,7,6,0,0,5506,736,1,0,0,0,5507,5508,7,14,0,0,5508,5509,7,19,0,0,5509,5510,7,23,0,0,5510,5511,7,23,0,0,5511,5512,7,15,0,0,5512,5513,7,6,0,0,5513,738,1,0,0,0,5514,5515,7,14,0,0,5515,5516,7,19,0,0,5516,5517,7,23,0,0,5517,5518,7,25,0,0,5518,5519,7,3,0,0,5519,5520,7,14,0,0,5520,5521,7,6,0,0,5521,740,1,0,0,0,5522,5523,7,14,0,0,5523,5524,7,19,0,0,5524,5525,7,23,0,0,5525,5526,7,25,0,0,5526,5527,7,5,0,0,5527,5528,7,7,0,0,5528,5529,7,6,0,0,5529,5530,7,15,0,0,5530,5531,7,19,0,0,5531,5532,7,12,0,0,5532,742,1,0,0,0,5533,5534,7,14,0,0,5534,5535,7,19,0,0,5535,5536,7,23,0,0,5536,5537,7,25,0,0,5537,5538,7,8,0,0,5538,5539,7,7,0,0,5539,5540,7,11,0,0,5540,5541,7,11,0,0,5541,5542,7,7,0,0,5542,5543,7,4,0,0,5543,744,1,0,0,0,5544,5545,7,14,0,0,5545,5546,7,19,0,0,5546,5547,7,23,0,0,5547,5548,7,25,0,0,5548,5549,7,8,0,0,5549,5550,7,7,0,0,5550,5551,7,11,0,0,5551,5552,7,11,0,0,5552,5553,7,15,0,0,5553,5554,7,19,0,0,5554,5555,7,12,0,0,5555,746,1,0,0,0,5556,5557,7,14,0,0,5557,5558,7,19,0,0,5558,5559,7,12,0,0,5559,5560,7,14,0,0,5560,5561,7,17,0,0,5561,5562,7,8,0,0,5562,5563,7,8,0,0,5563,5564,7,7,0,0,5564,5565,7,12,0,0,5565,5566,7,6,0,0,5566,748,1,0,0,0,5567,5568,7,14,0,0,5568,5569,7,19,0,0,5569,5570,7,12,0,0,5570,5571,7,12,0,0,5571,5572,7,7,0,0,5572,5573,7,14,0,0,5573,5574,7,6,0,0,5574,750,1,0,0,0,5575,5576,7,14,0,0,5576,5577,7,19,0,0,5577,5578,7,12,0,0,5578,5579,7,12,0,0,5579,5580,7,7,0,0,5580,5581,7,14,0,0,5581,5582,7,6,0,0,5582,5583,7,15,0,0,5583,5584,7,19,0,0,5584,5585,7,12,0,0,5585,752,1,0,0,0,5586,5587,7,14,0,0,5587,5588,7,19,0,0,5588,5589,7,12,0,0,5589,5590,7,11,0,0,5590,5591,7,15,0,0,5591,5592,7,11,0,0,5592,5593,7,6,0,0,5593,5594,7,7,0,0,5594,5595,7,12,0,0,5595,5596,7,6,0,0,5596,754,1,0,0,0,5597,5598,7,14,0,0,5598,5599,7,19,0,0,5599,5600,7,12,0,0,5600,5601,7,11,0,0,5601,5602,7,6,0,0,5602,5603,7,8,0,0,5603,5604,7,3,0,0,5604,5605,7,15,0,0,5605,5606,7,12,0,0,5606,5607,7,6,0,0,5607,5608,5,95,0,0,5608,5609,7,14,0,0,5609,5610,7,3,0,0,5610,5611,7,6,0,0,5611,5612,7,3,0,0,5612,5613,7,5,0,0,5613,5614,7,19,0,0,5614,5615,7,22,0,0,5615,756,1,0,0,0,5616,5617,7,14,0,0,5617,5618,7,19,0,0,5618,5619,7,12,0,0,5619,5620,7,11,0,0,5620,5621,7,6,0,0,5621,5622,7,8,0,0,5622,5623,7,3,0,0,5623,5624,7,15,0,0,5624,5625,7,12,0,0,5625,5626,7,6,0,0,5626,5627,5,95,0,0,5627,5628,7,11,0,0,5628,5629,7,14,0,0,5629,5630,7,20,0,0,5630,5631,7,7,0,0,5631,5632,7,23,0,0,5632,5633,7,3,0,0,5633,758,1,0,0,0,5634,5635,7,14,0,0,5635,5636,7,19,0,0,5636,5637,7,12,0,0,5637,5638,7,11,0,0,5638,5639,7,6,0,0,5639,5640,7,8,0,0,5640,5641,7,3,0,0,5641,5642,7,15,0,0,5642,5643,7,12,0,0,5643,5644,7,6,0,0,5644,5645,5,95,0,0,5645,5646,7,12,0,0,5646,5647,7,3,0,0,5647,5648,7,23,0,0,5648,5649,7,7,0,0,5649,760,1,0,0,0,5650,5651,7,14,0,0,5651,5652,7,19,0,0,5652,5653,7,12,0,0,5653,5654,7,6,0,0,5654,5655,7,3,0,0,5655,5656,7,15,0,0,5656,5657,7,12,0,0,5657,5658,7,11,0,0,5658,762,1,0,0,0,5659,5660,7,14,0,0,5660,5661,7,19,0,0,5661,5662,7,12,0,0,5662,5663,7,6,0,0,5663,5664,7,7,0,0,5664,5665,7,26,0,0,5665,5666,7,6,0,0,5666,764,1,0,0,0,5667,5668,7,14,0,0,5668,5669,7,19,0,0,5669,5670,7,12,0,0,5670,5671,7,6,0,0,5671,5672,7,8,0,0,5672,5673,7,15,0,0,5673,5674,7,16,0,0,5674,5675,7,17,0,0,5675,5676,7,6,0,0,5676,5677,7,19,0,0,5677,5678,7,8,0,0,5678,5679,7,11,0,0,5679,766,1,0,0,0,5680,5681,7,14,0,0,5681,5682,7,19,0,0,5682,5683,7,25,0,0,5683,5684,7,10,0,0,5684,768,1,0,0,0,5685,5686,7,14,0,0,5686,5687,7,25,0,0,5687,5688,7,17,0,0,5688,770,1,0,0,0,5689,5690,7,14,0,0,5690,5691,7,10,0,0,5691,5692,7,14,0,0,5692,5693,7,5,0,0,5693,5694,7,7,0,0,5694,772,1,0,0,0,5695,5696,7,14,0,0,5696,5697,7,17,0,0,5697,5698,7,8,0,0,5698,5699,7,11,0,0,5699,5700,7,19,0,0,5700,5701,7,8,0,0,5701,5702,5,95,0,0,5702,5703,7,12,0,0,5703,5704,7,3,0,0,5704,5705,7,23,0,0,5705,5706,7,7,0,0,5706,774,1,0,0,0,5707,5708,7,4,0,0,5708,5709,7,3,0,0,5709,5710,7,6,0,0,5710,5711,7,3,0,0,5711,776,1,0,0,0,5712,5713,7,4,0,0,5713,5714,7,3,0,0,5714,5715,7,6,0,0,5715,5716,7,3,0,0,5716,5717,7,18,0,0,5717,5718,7,15,0,0,5718,5719,7,5,0,0,5719,5720,7,7,0,0,5720,778,1,0,0,0,5721,5722,7,4,0,0,5722,5723,7,7,0,0,5723,5724,7,3,0,0,5724,5725,7,5,0,0,5725,5726,7,5,0,0,5726,5727,7,19,0,0,5727,5728,7,14,0,0,5728,5729,7,3,0,0,5729,5730,7,6,0,0,5730,5731,7,7,0,0,5731,780,1,0,0,0,5732,5733,7,4,0,0,5733,5734,7,7,0,0,5734,5735,7,18,0,0,5735,5736,7,3,0,0,5736,5737,7,17,0,0,5737,5738,7,5,0,0,5738,5739,7,6,0,0,5739,5740,5,95,0,0,5740,5741,7,3,0,0,5741,5742,7,17,0,0,5742,5743,7,6,0,0,5743,5744,7,20,0,0,5744,782,1,0,0,0,5745,5746,7,4,0,0,5746,5747,7,7,0,0,5747,5748,7,18,0,0,5748,5749,7,15,0,0,5749,5750,7,12,0,0,5750,5751,7,7,0,0,5751,5752,7,8,0,0,5752,784,1,0,0,0,5753,5754,7,4,0,0,5754,5755,7,7,0,0,5755,5756,7,5,0,0,5756,5757,7,3,0,0,5757,5758,7,10,0,0,5758,5759,5,95,0,0,5759,5760,7,21,0,0,5760,5761,7,7,0,0,5761,5762,7,10,0,0,5762,5763,5,95,0,0,5763,5764,7,9,0,0,5764,5765,7,8,0,0,5765,5766,7,15,0,0,5766,5767,7,6,0,0,5767,5768,7,7,0,0,5768,786,1,0,0,0,5769,5770,7,4,0,0,5770,5771,7,7,0,0,5771,5772,7,11,0,0,5772,5773,5,95,0,0,5773,5774,7,21,0,0,5774,5775,7,7,0,0,5775,5776,7,10,0,0,5776,5777,5,95,0,0,5777,5778,7,18,0,0,5778,5779,7,15,0,0,5779,5780,7,5,0,0,5780,5781,7,7,0,0,5781,788,1,0,0,0,5782,5783,7,4,0,0,5783,5784,7,15,0,0,5784,5785,7,8,0,0,5785,5786,7,7,0,0,5786,5787,7,14,0,0,5787,5788,7,6,0,0,5788,5789,7,19,0,0,5789,5790,7,8,0,0,5790,5791,7,10,0,0,5791,790,1,0,0,0,5792,5793,7,4,0,0,5793,5794,7,15,0,0,5794,5795,7,11,0,0,5795,5796,7,3,0,0,5796,5797,7,16,0,0,5797,5798,7,5,0,0,5798,5799,7,7,0,0,5799,792,1,0,0,0,5800,5801,7,4,0,0,5801,5802,7,15,0,0,5802,5803,7,11,0,0,5803,5804,7,14,0,0,5804,5805,7,3,0,0,5805,5806,7,8,0,0,5806,5807,7,4,0,0,5807,794,1,0,0,0,5808,5809,7,4,0,0,5809,5810,7,15,0,0,5810,5811,7,11,0,0,5811,5812,7,21,0,0,5812,796,1,0,0,0,5813,5814,7,4,0,0,5814,5815,7,19,0,0,5815,798,1,0,0,0,5816,5817,7,4,0,0,5817,5818,7,17,0,0,5818,5819,7,23,0,0,5819,5820,7,25,0,0,5820,5821,7,18,0,0,5821,5822,7,15,0,0,5822,5823,7,5,0,0,5823,5824,7,7,0,0,5824,800,1,0,0,0,5825,5826,7,4,0,0,5826,5827,7,17,0,0,5827,5828,7,25,0,0,5828,5829,7,5,0,0,5829,5830,7,15,0,0,5830,5831,7,14,0,0,5831,5832,7,3,0,0,5832,5833,7,6,0,0,5833,5834,7,7,0,0,5834,802,1,0,0,0,5835,5836,7,4,0,0,5836,5837,7,10,0,0,5837,5838,7,12,0,0,5838,5839,7,3,0,0,5839,5840,7,23,0,0,5840,5841,7,15,0,0,5841,5842,7,14,0,0,5842,804,1,0,0,0,5843,5844,7,7,0,0,5844,5845,7,12,0,0,5845,5846,7,3,0,0,5846,5847,7,16,0,0,5847,5848,7,5,0,0,5848,5849,7,7,0,0,5849,806,1,0,0,0,5850,5851,7,7,0,0,5851,5852,7,12,0,0,5852,5853,7,14,0,0,5853,5854,7,8,0,0,5854,5855,7,10,0,0,5855,5856,7,25,0,0,5856,5857,7,6,0,0,5857,5858,7,7,0,0,5858,5859,7,4,0,0,5859,808,1,0,0,0,5860,5861,7,7,0,0,5861,5862,7,12,0,0,5862,5863,7,14,0,0,5863,5864,7,8,0,0,5864,5865,7,10,0,0,5865,5866,7,25,0,0,5866,5867,7,6,0,0,5867,5868,7,15,0,0,5868,5869,7,19,0,0,5869,5870,7,12,0,0,5870,810,1,0,0,0,5871,5872,7,7,0,0,5872,5873,7,12,0,0,5873,5874,7,14,0,0,5874,5875,7,8,0,0,5875,5876,7,10,0,0,5876,5877,7,25,0,0,5877,5878,7,6,0,0,5878,5879,7,15,0,0,5879,5880,7,19,0,0,5880,5881,7,12,0,0,5881,5882,5,95,0,0,5882,5883,7,21,0,0,5883,5884,7,7,0,0,5884,5885,7,10,0,0,5885,5886,5,95,0,0,5886,5887,7,15,0,0,5887,5888,7,4,0,0,5888,812,1,0,0,0,5889,5890,7,7,0,0,5890,5891,7,12,0,0,5891,5892,7,4,0,0,5892,814,1,0,0,0,5893,5894,7,7,0,0,5894,5895,7,12,0,0,5895,5896,7,4,0,0,5896,5897,7,11,0,0,5897,816,1,0,0,0,5898,5899,7,7,0,0,5899,5900,7,12,0,0,5900,5901,7,22,0,0,5901,5902,7,15,0,0,5902,5903,7,12,0,0,5903,5904,7,7,0,0,5904,818,1,0,0,0,5905,5906,7,7,0,0,5906,5907,7,12,0,0,5907,5908,7,22,0,0,5908,5909,7,15,0,0,5909,5910,7,12,0,0,5910,5911,7,7,0,0,5911,5912,7,11,0,0,5912,820,1,0,0,0,5913,5914,7,7,0,0,5914,5915,7,8,0,0,5915,5916,7,8,0,0,5916,5917,7,19,0,0,5917,5918,7,8,0,0,5918,822,1,0,0,0,5919,5920,7,7,0,0,5920,5921,7,8,0,0,5921,5922,7,8,0,0,5922,5923,7,19,0,0,5923,5924,7,8,0,0,5924,5925,7,11,0,0,5925,824,1,0,0,0,5926,5927,7,7,0,0,5927,5928,7,11,0,0,5928,5929,7,14,0,0,5929,5930,7,3,0,0,5930,5931,7,25,0,0,5931,5932,7,7,0,0,5932,826,1,0,0,0,5933,5934,7,7,0,0,5934,5935,7,24,0,0,5935,5936,7,7,0,0,5936,5937,7,12,0,0,5937,828,1,0,0,0,5938,5939,7,7,0,0,5939,5940,7,24,0,0,5940,5941,7,7,0,0,5941,5942,7,12,0,0,5942,5943,7,6,0,0,5943,830,1,0,0,0,5944,5945,7,7,0,0,5945,5946,7,24,0,0,5946,5947,7,7,0,0,5947,5948,7,12,0,0,5948,5949,7,6,0,0,5949,5950,7,11,0,0,5950,832,1,0,0,0,5951,5952,7,7,0,0,5952,5953,7,24,0,0,5953,5954,7,7,0,0,5954,5955,7,8,0,0,5955,5956,7,10,0,0,5956,834,1,0,0,0,5957,5958,7,7,0,0,5958,5959,7,26,0,0,5959,5960,7,14,0,0,5960,5961,7,20,0,0,5961,5962,7,3,0,0,5962,5963,7,12,0,0,5963,5964,7,22,0,0,5964,5965,7,7,0,0,5965,836,1,0,0,0,5966,5967,7,7,0,0,5967,5968,7,26,0,0,5968,5969,7,14,0,0,5969,5970,7,5,0,0,5970,5971,7,17,0,0,5971,5972,7,11,0,0,5972,5973,7,15,0,0,5973,5974,7,24,0,0,5974,5975,7,7,0,0,5975,838,1,0,0,0,5976,5977,7,7,0,0,5977,5978,7,26,0,0,5978,5979,7,25,0,0,5979,5980,7,15,0,0,5980,5981,7,8,0,0,5981,5982,7,7,0,0,5982,840,1,0,0,0,5983,5984,7,7,0,0,5984,5985,7,26,0,0,5985,5986,7,25,0,0,5986,5987,7,19,0,0,5987,5988,7,8,0,0,5988,5989,7,6,0,0,5989,842,1,0,0,0,5990,5991,7,7,0,0,5991,5992,7,26,0,0,5992,5993,7,6,0,0,5993,5994,7,7,0,0,5994,5995,7,12,0,0,5995,5996,7,4,0,0,5996,5997,7,7,0,0,5997,5998,7,4,0,0,5998,844,1,0,0,0,5999,6e3,7,7,0,0,6e3,6001,7,26,0,0,6001,6002,7,6,0,0,6002,6003,7,7,0,0,6003,6004,7,12,0,0,6004,6005,7,6,0,0,6005,6006,5,95,0,0,6006,6007,7,11,0,0,6007,6008,7,15,0,0,6008,6009,7,13,0,0,6009,6010,7,7,0,0,6010,846,1,0,0,0,6011,6012,7,18,0,0,6012,6013,7,3,0,0,6013,6014,7,15,0,0,6014,6015,7,5,0,0,6015,6016,7,7,0,0,6016,6017,7,4,0,0,6017,6018,5,95,0,0,6018,6019,7,5,0,0,6019,6020,7,19,0,0,6020,6021,7,22,0,0,6021,6022,7,15,0,0,6022,6023,7,12,0,0,6023,6024,5,95,0,0,6024,6025,7,3,0,0,6025,6026,7,6,0,0,6026,6027,7,6,0,0,6027,6028,7,7,0,0,6028,6029,7,23,0,0,6029,6030,7,25,0,0,6030,6031,7,6,0,0,6031,6032,7,11,0,0,6032,848,1,0,0,0,6033,6034,7,18,0,0,6034,6035,7,3,0,0,6035,6036,7,11,0,0,6036,6037,7,6,0,0,6037,850,1,0,0,0,6038,6039,7,18,0,0,6039,6040,7,3,0,0,6040,6041,7,17,0,0,6041,6042,7,5,0,0,6042,6043,7,6,0,0,6043,6044,7,11,0,0,6044,852,1,0,0,0,6045,6046,7,18,0,0,6046,6047,7,15,0,0,6047,6048,7,7,0,0,6048,6049,7,5,0,0,6049,6050,7,4,0,0,6050,6051,7,11,0,0,6051,854,1,0,0,0,6052,6053,7,18,0,0,6053,6054,7,15,0,0,6054,6055,7,5,0,0,6055,6056,7,7,0,0,6056,6057,5,95,0,0,6057,6058,7,16,0,0,6058,6059,7,5,0,0,6059,6060,7,19,0,0,6060,6061,7,14,0,0,6061,6062,7,21,0,0,6062,6063,5,95,0,0,6063,6064,7,11,0,0,6064,6065,7,15,0,0,6065,6066,7,13,0,0,6066,6067,7,7,0,0,6067,856,1,0,0,0,6068,6069,7,18,0,0,6069,6070,7,15,0,0,6070,6071,7,5,0,0,6071,6072,7,6,0,0,6072,6073,7,7,0,0,6073,6074,7,8,0,0,6074,858,1,0,0,0,6075,6076,7,18,0,0,6076,6077,7,15,0,0,6077,6078,7,8,0,0,6078,6079,7,11,0,0,6079,6080,7,6,0,0,6080,860,1,0,0,0,6081,6082,7,18,0,0,6082,6083,7,15,0,0,6083,6084,7,26,0,0,6084,6085,7,7,0,0,6085,6086,7,4,0,0,6086,862,1,0,0,0,6087,6088,7,18,0,0,6088,6089,7,5,0,0,6089,6090,7,17,0,0,6090,6091,7,11,0,0,6091,6092,7,20,0,0,6092,864,1,0,0,0,6093,6094,7,18,0,0,6094,6095,7,19,0,0,6095,6096,7,5,0,0,6096,6097,7,5,0,0,6097,6098,7,19,0,0,6098,6099,7,9,0,0,6099,6100,7,15,0,0,6100,6101,7,12,0,0,6101,6102,7,22,0,0,6102,866,1,0,0,0,6103,6104,7,18,0,0,6104,6105,7,19,0,0,6105,6106,7,5,0,0,6106,6107,7,5,0,0,6107,6108,7,19,0,0,6108,6109,7,9,0,0,6109,6110,7,11,0,0,6110,868,1,0,0,0,6111,6112,7,18,0,0,6112,6113,7,19,0,0,6113,6114,7,17,0,0,6114,6115,7,12,0,0,6115,6116,7,4,0,0,6116,870,1,0,0,0,6117,6118,7,18,0,0,6118,6119,7,17,0,0,6119,6120,7,5,0,0,6120,6121,7,5,0,0,6121,872,1,0,0,0,6122,6123,7,18,0,0,6123,6124,7,17,0,0,6124,6125,7,12,0,0,6125,6126,7,14,0,0,6126,6127,7,6,0,0,6127,6128,7,15,0,0,6128,6129,7,19,0,0,6129,6130,7,12,0,0,6130,874,1,0,0,0,6131,6132,7,22,0,0,6132,6133,7,7,0,0,6133,6134,7,12,0,0,6134,6135,7,7,0,0,6135,6136,7,8,0,0,6136,6137,7,3,0,0,6137,6138,7,5,0,0,6138,876,1,0,0,0,6139,6140,7,22,0,0,6140,6141,7,5,0,0,6141,6142,7,19,0,0,6142,6143,7,16,0,0,6143,6144,7,3,0,0,6144,6145,7,5,0,0,6145,878,1,0,0,0,6146,6147,7,22,0,0,6147,6148,7,8,0,0,6148,6149,7,3,0,0,6149,6150,7,12,0,0,6150,6151,7,6,0,0,6151,6152,7,11,0,0,6152,880,1,0,0,0,6153,6154,7,22,0,0,6154,6155,7,8,0,0,6155,6156,7,19,0,0,6156,6157,7,17,0,0,6157,6158,7,25,0,0,6158,6159,5,95,0,0,6159,6160,7,8,0,0,6160,6161,7,7,0,0,6161,6162,7,25,0,0,6162,6163,7,5,0,0,6163,6164,7,15,0,0,6164,6165,7,14,0,0,6165,6166,7,3,0,0,6166,6167,7,6,0,0,6167,6168,7,15,0,0,6168,6169,7,19,0,0,6169,6170,7,12,0,0,6170,882,1,0,0,0,6171,6172,7,20,0,0,6172,6173,7,3,0,0,6173,6174,7,12,0,0,6174,6175,7,4,0,0,6175,6176,7,5,0,0,6176,6177,7,7,0,0,6177,6178,7,8,0,0,6178,884,1,0,0,0,6179,6180,7,20,0,0,6180,6181,7,3,0,0,6181,6182,7,11,0,0,6182,6183,7,20,0,0,6183,886,1,0,0,0,6184,6185,7,20,0,0,6185,6186,7,7,0,0,6186,6187,7,5,0,0,6187,6188,7,25,0,0,6188,888,1,0,0,0,6189,6190,7,20,0,0,6190,6191,7,15,0,0,6191,6192,7,11,0,0,6192,6193,7,6,0,0,6193,6194,7,19,0,0,6194,6195,7,8,0,0,6195,6196,7,10,0,0,6196,890,1,0,0,0,6197,6198,7,20,0,0,6198,6199,7,19,0,0,6199,6200,7,11,0,0,6200,6201,7,6,0,0,6201,892,1,0,0,0,6202,6203,7,20,0,0,6203,6204,7,19,0,0,6204,6205,7,11,0,0,6205,6206,7,6,0,0,6206,6207,7,11,0,0,6207,894,1,0,0,0,6208,6209,7,15,0,0,6209,6210,7,4,0,0,6210,6211,7,7,0,0,6211,6212,7,12,0,0,6212,6213,7,6,0,0,6213,6214,7,15,0,0,6214,6215,7,18,0,0,6215,6216,7,15,0,0,6216,6217,7,7,0,0,6217,6218,7,4,0,0,6218,896,1,0,0,0,6219,6220,7,15,0,0,6220,6221,7,22,0,0,6221,6222,7,12,0,0,6222,6223,7,19,0,0,6223,6224,7,8,0,0,6224,6225,7,7,0,0,6225,6226,5,95,0,0,6226,6227,7,11,0,0,6227,6228,7,7,0,0,6228,6229,7,8,0,0,6229,6230,7,24,0,0,6230,6231,7,7,0,0,6231,6232,7,8,0,0,6232,6233,5,95,0,0,6233,6234,7,15,0,0,6234,6235,7,4,0,0,6235,6236,7,11,0,0,6236,898,1,0,0,0,6237,6238,7,15,0,0,6238,6239,7,23,0,0,6239,6240,7,25,0,0,6240,6241,7,19,0,0,6241,6242,7,8,0,0,6242,6243,7,6,0,0,6243,900,1,0,0,0,6244,6245,7,15,0,0,6245,6246,7,12,0,0,6246,6247,7,14,0,0,6247,6248,7,8,0,0,6248,6249,7,7,0,0,6249,6250,7,23,0,0,6250,6251,7,7,0,0,6251,6252,7,12,0,0,6252,6253,7,6,0,0,6253,902,1,0,0,0,6254,6255,7,15,0,0,6255,6256,7,12,0,0,6256,6257,7,4,0,0,6257,6258,7,7,0,0,6258,6259,7,26,0,0,6259,6260,7,7,0,0,6260,6261,7,11,0,0,6261,904,1,0,0,0,6262,6263,7,15,0,0,6263,6264,7,12,0,0,6264,6265,7,15,0,0,6265,6266,7,6,0,0,6266,6267,7,15,0,0,6267,6268,7,3,0,0,6268,6269,7,5,0,0,6269,6270,5,95,0,0,6270,6271,7,11,0,0,6271,6272,7,15,0,0,6272,6273,7,13,0,0,6273,6274,7,7,0,0,6274,906,1,0,0,0,6275,6276,7,15,0,0,6276,6277,7,12,0,0,6277,6278,7,25,0,0,6278,6279,7,5,0,0,6279,6280,7,3,0,0,6280,6281,7,14,0,0,6281,6282,7,7,0,0,6282,908,1,0,0,0,6283,6284,7,15,0,0,6284,6285,7,12,0,0,6285,6286,7,11,0,0,6286,6287,7,7,0,0,6287,6288,7,8,0,0,6288,6289,7,6,0,0,6289,6290,5,95,0,0,6290,6291,7,23,0,0,6291,6292,7,7,0,0,6292,6293,7,6,0,0,6293,6294,7,20,0,0,6294,6295,7,19,0,0,6295,6296,7,4,0,0,6296,910,1,0,0,0,6297,6298,7,15,0,0,6298,6299,7,12,0,0,6299,6300,7,11,0,0,6300,6301,7,6,0,0,6301,6302,7,3,0,0,6302,6303,7,5,0,0,6303,6304,7,5,0,0,6304,912,1,0,0,0,6305,6306,7,15,0,0,6306,6307,7,12,0,0,6307,6308,7,11,0,0,6308,6309,7,6,0,0,6309,6310,7,3,0,0,6310,6311,7,12,0,0,6311,6312,7,14,0,0,6312,6313,7,7,0,0,6313,914,1,0,0,0,6314,6315,7,15,0,0,6315,6316,7,12,0,0,6316,6317,7,11,0,0,6317,6318,7,6,0,0,6318,6319,7,3,0,0,6319,6320,7,12,0,0,6320,6321,7,6,0,0,6321,916,1,0,0,0,6322,6323,7,15,0,0,6323,6324,7,12,0,0,6324,6325,7,24,0,0,6325,6326,7,15,0,0,6326,6327,7,11,0,0,6327,6328,7,15,0,0,6328,6329,7,16,0,0,6329,6330,7,5,0,0,6330,6331,7,7,0,0,6331,918,1,0,0,0,6332,6333,7,15,0,0,6333,6334,7,12,0,0,6334,6335,7,24,0,0,6335,6336,7,19,0,0,6336,6337,7,21,0,0,6337,6338,7,7,0,0,6338,6339,7,8,0,0,6339,920,1,0,0,0,6340,6341,7,15,0,0,6341,6342,7,19,0,0,6342,922,1,0,0,0,6343,6344,7,15,0,0,6344,6345,7,19,0,0,6345,6346,5,95,0,0,6346,6347,7,6,0,0,6347,6348,7,20,0,0,6348,6349,7,8,0,0,6349,6350,7,7,0,0,6350,6351,7,3,0,0,6351,6352,7,4,0,0,6352,924,1,0,0,0,6353,6354,7,15,0,0,6354,6355,7,25,0,0,6355,6356,7,14,0,0,6356,926,1,0,0,0,6357,6358,7,15,0,0,6358,6359,7,11,0,0,6359,6360,7,19,0,0,6360,6361,7,5,0,0,6361,6362,7,3,0,0,6362,6363,7,6,0,0,6363,6364,7,15,0,0,6364,6365,7,19,0,0,6365,6366,7,12,0,0,6366,928,1,0,0,0,6367,6368,7,15,0,0,6368,6369,7,11,0,0,6369,6370,7,11,0,0,6370,6371,7,17,0,0,6371,6372,7,7,0,0,6372,6373,7,8,0,0,6373,930,1,0,0,0,6374,6375,7,27,0,0,6375,6376,7,11,0,0,6376,6377,7,19,0,0,6377,6378,7,12,0,0,6378,932,1,0,0,0,6379,6380,7,21,0,0,6380,6381,7,7,0,0,6381,6382,7,10,0,0,6382,6383,5,95,0,0,6383,6384,7,16,0,0,6384,6385,7,5,0,0,6385,6386,7,19,0,0,6386,6387,7,14,0,0,6387,6388,7,21,0,0,6388,6389,5,95,0,0,6389,6390,7,11,0,0,6390,6391,7,15,0,0,6391,6392,7,13,0,0,6392,6393,7,7,0,0,6393,934,1,0,0,0,6394,6395,7,5,0,0,6395,6396,7,3,0,0,6396,6397,7,12,0,0,6397,6398,7,22,0,0,6398,6399,7,17,0,0,6399,6400,7,3,0,0,6400,6401,7,22,0,0,6401,6402,7,7,0,0,6402,936,1,0,0,0,6403,6404,7,5,0,0,6404,6405,7,3,0,0,6405,6406,7,11,0,0,6406,6407,7,6,0,0,6407,938,1,0,0,0,6408,6409,7,5,0,0,6409,6410,7,7,0,0,6410,6411,7,3,0,0,6411,6412,7,24,0,0,6412,6413,7,7,0,0,6413,6414,7,11,0,0,6414,940,1,0,0,0,6415,6416,7,5,0,0,6416,6417,7,7,0,0,6417,6418,7,11,0,0,6418,6419,7,11,0,0,6419,942,1,0,0,0,6420,6421,7,5,0,0,6421,6422,7,7,0,0,6422,6423,7,24,0,0,6423,6424,7,7,0,0,6424,6425,7,5,0,0,6425,944,1,0,0,0,6426,6427,7,5,0,0,6427,6428,7,15,0,0,6428,6429,7,11,0,0,6429,6430,7,6,0,0,6430,946,1,0,0,0,6431,6432,7,5,0,0,6432,6433,7,19,0,0,6433,6434,7,14,0,0,6434,6435,7,3,0,0,6435,6436,7,5,0,0,6436,948,1,0,0,0,6437,6438,7,5,0,0,6438,6439,7,19,0,0,6439,6440,7,22,0,0,6440,6441,7,18,0,0,6441,6442,7,15,0,0,6442,6443,7,5,0,0,6443,6444,7,7,0,0,6444,950,1,0,0,0,6445,6446,7,5,0,0,6446,6447,7,19,0,0,6447,6448,7,22,0,0,6448,6449,7,11,0,0,6449,952,1,0,0,0,6450,6451,7,23,0,0,6451,6452,7,3,0,0,6452,6453,7,11,0,0,6453,6454,7,6,0,0,6454,6455,7,7,0,0,6455,6456,7,8,0,0,6456,954,1,0,0,0,6457,6458,7,23,0,0,6458,6459,7,3,0,0,6459,6460,7,11,0,0,6460,6461,7,6,0,0,6461,6462,7,7,0,0,6462,6463,7,8,0,0,6463,6464,5,95,0,0,6464,6465,7,3,0,0,6465,6466,7,17,0,0,6466,6467,7,6,0,0,6467,6468,7,19,0,0,6468,6469,5,95,0,0,6469,6470,7,25,0,0,6470,6471,7,19,0,0,6471,6472,7,11,0,0,6472,6473,7,15,0,0,6473,6474,7,6,0,0,6474,6475,7,15,0,0,6475,6476,7,19,0,0,6476,6477,7,12,0,0,6477,956,1,0,0,0,6478,6479,7,23,0,0,6479,6480,7,3,0,0,6480,6481,7,11,0,0,6481,6482,7,6,0,0,6482,6483,7,7,0,0,6483,6484,7,8,0,0,6484,6485,5,95,0,0,6485,6486,7,14,0,0,6486,6487,7,19,0,0,6487,6488,7,12,0,0,6488,6489,7,12,0,0,6489,6490,7,7,0,0,6490,6491,7,14,0,0,6491,6492,7,6,0,0,6492,6493,5,95,0,0,6493,6494,7,8,0,0,6494,6495,7,7,0,0,6495,6496,7,6,0,0,6496,6497,7,8,0,0,6497,6498,7,10,0,0,6498,958,1,0,0,0,6499,6500,7,23,0,0,6500,6501,7,3,0,0,6501,6502,7,11,0,0,6502,6503,7,6,0,0,6503,6504,7,7,0,0,6504,6505,7,8,0,0,6505,6506,5,95,0,0,6506,6507,7,4,0,0,6507,6508,7,7,0,0,6508,6509,7,5,0,0,6509,6510,7,3,0,0,6510,6511,7,10,0,0,6511,960,1,0,0,0,6512,6513,7,23,0,0,6513,6514,7,3,0,0,6514,6515,7,11,0,0,6515,6516,7,6,0,0,6516,6517,7,7,0,0,6517,6518,7,8,0,0,6518,6519,5,95,0,0,6519,6520,7,20,0,0,6520,6521,7,7,0,0,6521,6522,7,3,0,0,6522,6523,7,8,0,0,6523,6524,7,6,0,0,6524,6525,7,16,0,0,6525,6526,7,7,0,0,6526,6527,7,3,0,0,6527,6528,7,6,0,0,6528,6529,5,95,0,0,6529,6530,7,25,0,0,6530,6531,7,7,0,0,6531,6532,7,8,0,0,6532,6533,7,15,0,0,6533,6534,7,19,0,0,6534,6535,7,4,0,0,6535,962,1,0,0,0,6536,6537,7,23,0,0,6537,6538,7,3,0,0,6538,6539,7,11,0,0,6539,6540,7,6,0,0,6540,6541,7,7,0,0,6541,6542,7,8,0,0,6542,6543,5,95,0,0,6543,6544,7,20,0,0,6544,6545,7,19,0,0,6545,6546,7,11,0,0,6546,6547,7,6,0,0,6547,964,1,0,0,0,6548,6549,7,23,0,0,6549,6550,7,3,0,0,6550,6551,7,11,0,0,6551,6552,7,6,0,0,6552,6553,7,7,0,0,6553,6554,7,8,0,0,6554,6555,5,95,0,0,6555,6556,7,5,0,0,6556,6557,7,19,0,0,6557,6558,7,22,0,0,6558,6559,5,95,0,0,6559,6560,7,18,0,0,6560,6561,7,15,0,0,6561,6562,7,5,0,0,6562,6563,7,7,0,0,6563,966,1,0,0,0,6564,6565,7,23,0,0,6565,6566,7,3,0,0,6566,6567,7,11,0,0,6567,6568,7,6,0,0,6568,6569,7,7,0,0,6569,6570,7,8,0,0,6570,6571,5,95,0,0,6571,6572,7,5,0,0,6572,6573,7,19,0,0,6573,6574,7,22,0,0,6574,6575,5,95,0,0,6575,6576,7,25,0,0,6576,6577,7,19,0,0,6577,6578,7,11,0,0,6578,968,1,0,0,0,6579,6580,7,23,0,0,6580,6581,7,3,0,0,6581,6582,7,11,0,0,6582,6583,7,6,0,0,6583,6584,7,7,0,0,6584,6585,7,8,0,0,6585,6586,5,95,0,0,6586,6587,7,25,0,0,6587,6588,7,3,0,0,6588,6589,7,11,0,0,6589,6590,7,11,0,0,6590,6591,7,9,0,0,6591,6592,7,19,0,0,6592,6593,7,8,0,0,6593,6594,7,4,0,0,6594,970,1,0,0,0,6595,6596,7,23,0,0,6596,6597,7,3,0,0,6597,6598,7,11,0,0,6598,6599,7,6,0,0,6599,6600,7,7,0,0,6600,6601,7,8,0,0,6601,6602,5,95,0,0,6602,6603,7,25,0,0,6603,6604,7,19,0,0,6604,6605,7,8,0,0,6605,6606,7,6,0,0,6606,972,1,0,0,0,6607,6608,7,23,0,0,6608,6609,7,3,0,0,6609,6610,7,11,0,0,6610,6611,7,6,0,0,6611,6612,7,7,0,0,6612,6613,7,8,0,0,6613,6614,5,95,0,0,6614,6615,7,8,0,0,6615,6616,7,7,0,0,6616,6617,7,6,0,0,6617,6618,7,8,0,0,6618,6619,7,10,0,0,6619,6620,5,95,0,0,6620,6621,7,14,0,0,6621,6622,7,19,0,0,6622,6623,7,17,0,0,6623,6624,7,12,0,0,6624,6625,7,6,0,0,6625,974,1,0,0,0,6626,6627,7,23,0,0,6627,6628,7,3,0,0,6628,6629,7,11,0,0,6629,6630,7,6,0,0,6630,6631,7,7,0,0,6631,6632,7,8,0,0,6632,6633,5,95,0,0,6633,6634,7,11,0,0,6634,6635,7,11,0,0,6635,6636,7,5,0,0,6636,976,1,0,0,0,6637,6638,7,23,0,0,6638,6639,7,3,0,0,6639,6640,7,11,0,0,6640,6641,7,6,0,0,6641,6642,7,7,0,0,6642,6643,7,8,0,0,6643,6644,5,95,0,0,6644,6645,7,11,0,0,6645,6646,7,11,0,0,6646,6647,7,5,0,0,6647,6648,5,95,0,0,6648,6649,7,14,0,0,6649,6650,7,3,0,0,6650,978,1,0,0,0,6651,6652,7,23,0,0,6652,6653,7,3,0,0,6653,6654,7,11,0,0,6654,6655,7,6,0,0,6655,6656,7,7,0,0,6656,6657,7,8,0,0,6657,6658,5,95,0,0,6658,6659,7,11,0,0,6659,6660,7,11,0,0,6660,6661,7,5,0,0,6661,6662,5,95,0,0,6662,6663,7,14,0,0,6663,6664,7,3,0,0,6664,6665,7,25,0,0,6665,6666,7,3,0,0,6666,6667,7,6,0,0,6667,6668,7,20,0,0,6668,980,1,0,0,0,6669,6670,7,23,0,0,6670,6671,7,3,0,0,6671,6672,7,11,0,0,6672,6673,7,6,0,0,6673,6674,7,7,0,0,6674,6675,7,8,0,0,6675,6676,5,95,0,0,6676,6677,7,11,0,0,6677,6678,7,11,0,0,6678,6679,7,5,0,0,6679,6680,5,95,0,0,6680,6681,7,14,0,0,6681,6682,7,7,0,0,6682,6683,7,8,0,0,6683,6684,7,6,0,0,6684,982,1,0,0,0,6685,6686,7,23,0,0,6686,6687,7,3,0,0,6687,6688,7,11,0,0,6688,6689,7,6,0,0,6689,6690,7,7,0,0,6690,6691,7,8,0,0,6691,6692,5,95,0,0,6692,6693,7,11,0,0,6693,6694,7,11,0,0,6694,6695,7,5,0,0,6695,6696,5,95,0,0,6696,6697,7,14,0,0,6697,6698,7,15,0,0,6698,6699,7,25,0,0,6699,6700,7,20,0,0,6700,6701,7,7,0,0,6701,6702,7,8,0,0,6702,984,1,0,0,0,6703,6704,7,23,0,0,6704,6705,7,3,0,0,6705,6706,7,11,0,0,6706,6707,7,6,0,0,6707,6708,7,7,0,0,6708,6709,7,8,0,0,6709,6710,5,95,0,0,6710,6711,7,11,0,0,6711,6712,7,11,0,0,6712,6713,7,5,0,0,6713,6714,5,95,0,0,6714,6715,7,14,0,0,6715,6716,7,8,0,0,6716,6717,7,5,0,0,6717,986,1,0,0,0,6718,6719,7,23,0,0,6719,6720,7,3,0,0,6720,6721,7,11,0,0,6721,6722,7,6,0,0,6722,6723,7,7,0,0,6723,6724,7,8,0,0,6724,6725,5,95,0,0,6725,6726,7,11,0,0,6726,6727,7,11,0,0,6727,6728,7,5,0,0,6728,6729,5,95,0,0,6729,6730,7,14,0,0,6730,6731,7,8,0,0,6731,6732,7,5,0,0,6732,6733,7,25,0,0,6733,6734,7,3,0,0,6734,6735,7,6,0,0,6735,6736,7,20,0,0,6736,988,1,0,0,0,6737,6738,7,23,0,0,6738,6739,7,3,0,0,6739,6740,7,11,0,0,6740,6741,7,6,0,0,6741,6742,7,7,0,0,6742,6743,7,8,0,0,6743,6744,5,95,0,0,6744,6745,7,11,0,0,6745,6746,7,11,0,0,6746,6747,7,5,0,0,6747,6748,5,95,0,0,6748,6749,7,21,0,0,6749,6750,7,7,0,0,6750,6751,7,10,0,0,6751,990,1,0,0,0,6752,6753,7,23,0,0,6753,6754,7,3,0,0,6754,6755,7,11,0,0,6755,6756,7,6,0,0,6756,6757,7,7,0,0,6757,6758,7,8,0,0,6758,6759,5,95,0,0,6759,6760,7,6,0,0,6760,6761,7,5,0,0,6761,6762,7,11,0,0,6762,6763,5,95,0,0,6763,6764,7,24,0,0,6764,6765,7,7,0,0,6765,6766,7,8,0,0,6766,6767,7,11,0,0,6767,6768,7,15,0,0,6768,6769,7,19,0,0,6769,6770,7,12,0,0,6770,992,1,0,0,0,6771,6772,7,23,0,0,6772,6773,7,3,0,0,6773,6774,7,11,0,0,6774,6775,7,6,0,0,6775,6776,7,7,0,0,6776,6777,7,8,0,0,6777,6778,5,95,0,0,6778,6779,7,17,0,0,6779,6780,7,11,0,0,6780,6781,7,7,0,0,6781,6782,7,8,0,0,6782,994,1,0,0,0,6783,6784,7,23,0,0,6784,6785,7,3,0,0,6785,6786,7,26,0,0,6786,6787,5,95,0,0,6787,6788,7,14,0,0,6788,6789,7,19,0,0,6789,6790,7,12,0,0,6790,6791,7,12,0,0,6791,6792,7,7,0,0,6792,6793,7,14,0,0,6793,6794,7,6,0,0,6794,6795,7,15,0,0,6795,6796,7,19,0,0,6796,6797,7,12,0,0,6797,6798,7,11,0,0,6798,6799,5,95,0,0,6799,6800,7,25,0,0,6800,6801,7,7,0,0,6801,6802,7,8,0,0,6802,6803,5,95,0,0,6803,6804,7,20,0,0,6804,6805,7,19,0,0,6805,6806,7,17,0,0,6806,6807,7,8,0,0,6807,996,1,0,0,0,6808,6809,7,23,0,0,6809,6810,7,3,0,0,6810,6811,7,26,0,0,6811,6812,5,95,0,0,6812,6813,7,28,0,0,6813,6814,7,17,0,0,6814,6815,7,7,0,0,6815,6816,7,8,0,0,6816,6817,7,15,0,0,6817,6818,7,7,0,0,6818,6819,7,11,0,0,6819,6820,5,95,0,0,6820,6821,7,25,0,0,6821,6822,7,7,0,0,6822,6823,7,8,0,0,6823,6824,5,95,0,0,6824,6825,7,20,0,0,6825,6826,7,19,0,0,6826,6827,7,17,0,0,6827,6828,7,8,0,0,6828,998,1,0,0,0,6829,6830,7,23,0,0,6830,6831,7,3,0,0,6831,6832,7,26,0,0,6832,6833,5,95,0,0,6833,6834,7,8,0,0,6834,6835,7,19,0,0,6835,6836,7,9,0,0,6836,6837,7,11,0,0,6837,1e3,1,0,0,0,6838,6839,7,23,0,0,6839,6840,7,3,0,0,6840,6841,7,26,0,0,6841,6842,5,95,0,0,6842,6843,7,11,0,0,6843,6844,7,15,0,0,6844,6845,7,13,0,0,6845,6846,7,7,0,0,6846,1002,1,0,0,0,6847,6848,7,23,0,0,6848,6849,7,3,0,0,6849,6850,7,26,0,0,6850,6851,5,95,0,0,6851,6852,7,17,0,0,6852,6853,7,25,0,0,6853,6854,7,4,0,0,6854,6855,7,3,0,0,6855,6856,7,6,0,0,6856,6857,7,7,0,0,6857,6858,7,11,0,0,6858,6859,5,95,0,0,6859,6860,7,25,0,0,6860,6861,7,7,0,0,6861,6862,7,8,0,0,6862,6863,5,95,0,0,6863,6864,7,20,0,0,6864,6865,7,19,0,0,6865,6866,7,17,0,0,6866,6867,7,8,0,0,6867,1004,1,0,0,0,6868,6869,7,23,0,0,6869,6870,7,3,0,0,6870,6871,7,26,0,0,6871,6872,5,95,0,0,6872,6873,7,17,0,0,6873,6874,7,11,0,0,6874,6875,7,7,0,0,6875,6876,7,8,0,0,6876,6877,5,95,0,0,6877,6878,7,14,0,0,6878,6879,7,19,0,0,6879,6880,7,12,0,0,6880,6881,7,12,0,0,6881,6882,7,7,0,0,6882,6883,7,14,0,0,6883,6884,7,6,0,0,6884,6885,7,15,0,0,6885,6886,7,19,0,0,6886,6887,7,12,0,0,6887,6888,7,11,0,0,6888,1006,1,0,0,0,6889,6890,7,23,0,0,6890,6891,7,7,0,0,6891,6892,7,4,0,0,6892,6893,7,15,0,0,6893,6894,7,17,0,0,6894,6895,7,23,0,0,6895,1008,1,0,0,0,6896,6897,7,23,0,0,6897,6898,7,7,0,0,6898,6899,7,23,0,0,6899,6900,7,16,0,0,6900,6901,7,7,0,0,6901,6902,7,8,0,0,6902,1010,1,0,0,0,6903,6904,7,23,0,0,6904,6905,7,7,0,0,6905,6906,7,8,0,0,6906,6907,7,22,0,0,6907,6908,7,7,0,0,6908,1012,1,0,0,0,6909,6910,7,23,0,0,6910,6911,7,7,0,0,6911,6912,7,11,0,0,6912,6913,7,11,0,0,6913,6914,7,3,0,0,6914,6915,7,22,0,0,6915,6916,7,7,0,0,6916,6917,5,95,0,0,6917,6918,7,6,0,0,6918,6919,7,7,0,0,6919,6920,7,26,0,0,6920,6921,7,6,0,0,6921,1014,1,0,0,0,6922,6923,7,23,0,0,6923,6924,7,15,0,0,6924,6925,7,4,0,0,6925,1016,1,0,0,0,6926,6927,7,23,0,0,6927,6928,7,15,0,0,6928,6929,7,22,0,0,6929,6930,7,8,0,0,6930,6931,7,3,0,0,6931,6932,7,6,0,0,6932,6933,7,7,0,0,6933,1018,1,0,0,0,6934,6935,7,23,0,0,6935,6936,7,15,0,0,6936,6937,7,12,0,0,6937,6938,5,95,0,0,6938,6939,7,8,0,0,6939,6940,7,19,0,0,6940,6941,7,9,0,0,6941,6942,7,11,0,0,6942,1020,1,0,0,0,6943,6944,7,23,0,0,6944,6945,7,19,0,0,6945,6946,7,4,0,0,6946,6947,7,7,0,0,6947,1022,1,0,0,0,6948,6949,7,23,0,0,6949,6950,7,19,0,0,6950,6951,7,4,0,0,6951,6952,7,15,0,0,6952,6953,7,18,0,0,6953,6954,7,10,0,0,6954,1024,1,0,0,0,6955,6956,7,23,0,0,6956,6957,7,17,0,0,6957,6958,7,6,0,0,6958,6959,7,7,0,0,6959,6960,7,26,0,0,6960,1026,1,0,0,0,6961,6962,7,23,0,0,6962,6963,7,10,0,0,6963,6964,7,11,0,0,6964,6965,7,28,0,0,6965,6966,7,5,0,0,6966,1028,1,0,0,0,6967,6968,7,23,0,0,6968,6969,7,10,0,0,6969,6970,7,11,0,0,6970,6971,7,28,0,0,6971,6972,7,5,0,0,6972,6973,5,95,0,0,6973,6974,7,7,0,0,6974,6975,7,8,0,0,6975,6976,7,8,0,0,6976,6977,7,12,0,0,6977,6978,7,19,0,0,6978,1030,1,0,0,0,6979,6980,7,12,0,0,6980,6981,7,3,0,0,6981,6982,7,23,0,0,6982,6983,7,7,0,0,6983,1032,1,0,0,0,6984,6985,7,12,0,0,6985,6986,7,3,0,0,6986,6987,7,23,0,0,6987,6988,7,7,0,0,6988,6989,7,11,0,0,6989,1034,1,0,0,0,6990,6991,7,12,0,0,6991,6992,7,14,0,0,6992,6993,7,20,0,0,6993,6994,7,3,0,0,6994,6995,7,8,0,0,6995,1036,1,0,0,0,6996,6997,7,12,0,0,6997,6998,7,7,0,0,6998,6999,7,24,0,0,6999,7e3,7,7,0,0,7e3,7001,7,8,0,0,7001,1038,1,0,0,0,7002,7003,7,12,0,0,7003,7004,7,7,0,0,7004,7005,7,26,0,0,7005,7006,7,6,0,0,7006,1040,1,0,0,0,7007,7008,7,12,0,0,7008,7009,7,19,0,0,7009,1042,1,0,0,0,7010,7011,7,12,0,0,7011,7012,7,19,0,0,7012,7013,7,14,0,0,7013,7014,7,3,0,0,7014,7015,7,14,0,0,7015,7016,7,20,0,0,7016,7017,7,7,0,0,7017,1044,1,0,0,0,7018,7019,7,12,0,0,7019,7020,7,19,0,0,7020,7021,7,14,0,0,7021,7022,7,19,0,0,7022,7023,7,25,0,0,7023,7024,7,10,0,0,7024,1046,1,0,0,0,7025,7026,7,12,0,0,7026,7027,7,19,0,0,7027,7028,7,14,0,0,7028,7029,7,10,0,0,7029,7030,7,14,0,0,7030,7031,7,5,0,0,7031,7032,7,7,0,0,7032,1048,1,0,0,0,7033,7034,7,12,0,0,7034,7035,7,19,0,0,7035,7036,7,23,0,0,7036,7037,7,3,0,0,7037,7038,7,26,0,0,7038,7039,7,24,0,0,7039,7040,7,3,0,0,7040,7041,7,5,0,0,7041,7042,7,17,0,0,7042,7043,7,7,0,0,7043,1050,1,0,0,0,7044,7045,7,12,0,0,7045,7046,7,19,0,0,7046,7047,7,23,0,0,7047,7048,7,15,0,0,7048,7049,7,12,0,0,7049,7050,7,24,0,0,7050,7051,7,3,0,0,7051,7052,7,5,0,0,7052,7053,7,17,0,0,7053,7054,7,7,0,0,7054,1052,1,0,0,0,7055,7056,7,12,0,0,7056,7057,7,19,0,0,7057,7058,7,9,0,0,7058,7059,7,3,0,0,7059,7060,7,15,0,0,7060,7061,7,6,0,0,7061,1054,1,0,0,0,7062,7063,7,12,0,0,7063,7064,7,19,0,0,7064,7065,7,4,0,0,7065,7066,7,7,0,0,7066,7067,7,22,0,0,7067,7068,7,8,0,0,7068,7069,7,19,0,0,7069,7070,7,17,0,0,7070,7071,7,25,0,0,7071,1056,1,0,0,0,7072,7073,7,12,0,0,7073,7074,7,19,0,0,7074,7075,7,12,0,0,7075,7076,7,7,0,0,7076,1058,1,0,0,0,7077,7078,7,19,0,0,7078,7079,7,4,0,0,7079,7080,7,16,0,0,7080,7081,7,14,0,0,7081,1060,1,0,0,0,7082,7083,7,19,0,0,7083,7084,7,18,0,0,7084,7085,7,18,0,0,7085,7086,7,5,0,0,7086,7087,7,15,0,0,7087,7088,7,12,0,0,7088,7089,7,7,0,0,7089,1062,1,0,0,0,7090,7091,7,19,0,0,7091,7092,7,18,0,0,7092,7093,7,18,0,0,7093,7094,7,11,0,0,7094,7095,7,7,0,0,7095,7096,7,6,0,0,7096,1064,1,0,0,0,7097,7098,7,19,0,0,7098,7099,7,18,0,0,7099,1066,1,0,0,0,7100,7101,7,19,0,0,7101,7102,7,27,0,0,7102,1068,1,0,0,0,7103,7104,7,19,0,0,7104,7105,7,5,0,0,7105,7106,7,4,0,0,7106,7107,5,95,0,0,7107,7108,7,25,0,0,7108,7109,7,3,0,0,7109,7110,7,11,0,0,7110,7111,7,11,0,0,7111,7112,7,9,0,0,7112,7113,7,19,0,0,7113,7114,7,8,0,0,7114,7115,7,4,0,0,7115,1070,1,0,0,0,7116,7117,7,19,0,0,7117,7118,7,12,0,0,7118,7119,7,7,0,0,7119,1072,1,0,0,0,7120,7121,7,19,0,0,7121,7122,7,12,0,0,7122,7123,7,5,0,0,7123,7124,7,15,0,0,7124,7125,7,12,0,0,7125,7126,7,7,0,0,7126,1074,1,0,0,0,7127,7128,7,19,0,0,7128,7129,7,12,0,0,7129,7130,7,5,0,0,7130,7131,7,10,0,0,7131,1076,1,0,0,0,7132,7133,7,19,0,0,7133,7134,7,25,0,0,7134,7135,7,7,0,0,7135,7136,7,12,0,0,7136,1078,1,0,0,0,7137,7138,7,19,0,0,7138,7139,7,25,0,0,7139,7140,7,6,0,0,7140,7141,7,15,0,0,7141,7142,7,23,0,0,7142,7143,7,15,0,0,7143,7144,7,13,0,0,7144,7145,7,7,0,0,7145,7146,7,8,0,0,7146,7147,5,95,0,0,7147,7148,7,14,0,0,7148,7149,7,19,0,0,7149,7150,7,11,0,0,7150,7151,7,6,0,0,7151,7152,7,11,0,0,7152,1080,1,0,0,0,7153,7154,7,19,0,0,7154,7155,7,25,0,0,7155,7156,7,6,0,0,7156,7157,7,15,0,0,7157,7158,7,19,0,0,7158,7159,7,12,0,0,7159,7160,7,11,0,0,7160,1082,1,0,0,0,7161,7162,7,19,0,0,7162,7163,7,9,0,0,7163,7164,7,12,0,0,7164,7165,7,7,0,0,7165,7166,7,8,0,0,7166,1084,1,0,0,0,7167,7168,7,25,0,0,7168,7169,7,3,0,0,7169,7170,7,14,0,0,7170,7171,7,21,0,0,7171,7172,5,95,0,0,7172,7173,7,21,0,0,7173,7174,7,7,0,0,7174,7175,7,10,0,0,7175,7176,7,11,0,0,7176,1086,1,0,0,0,7177,7178,7,25,0,0,7178,7179,7,3,0,0,7179,7180,7,22,0,0,7180,7181,7,7,0,0,7181,1088,1,0,0,0,7182,7183,7,25,0,0,7183,7184,7,3,0,0,7184,7185,7,22,0,0,7185,7186,7,7,0,0,7186,7187,5,95,0,0,7187,7188,7,14,0,0,7188,7189,7,19,0,0,7189,7190,7,23,0,0,7190,7191,7,25,0,0,7191,7192,7,8,0,0,7192,7193,7,7,0,0,7193,7194,7,11,0,0,7194,7195,7,11,0,0,7195,7196,7,7,0,0,7196,7197,7,4,0,0,7197,1090,1,0,0,0,7198,7199,7,25,0,0,7199,7200,7,3,0,0,7200,7201,7,22,0,0,7201,7202,7,7,0,0,7202,7203,5,95,0,0,7203,7204,7,14,0,0,7204,7205,7,19,0,0,7205,7206,7,23,0,0,7206,7207,7,25,0,0,7207,7208,7,8,0,0,7208,7209,7,7,0,0,7209,7210,7,11,0,0,7210,7211,7,11,0,0,7211,7212,7,15,0,0,7212,7213,7,19,0,0,7213,7214,7,12,0,0,7214,7215,5,95,0,0,7215,7216,7,5,0,0,7216,7217,7,7,0,0,7217,7218,7,24,0,0,7218,7219,7,7,0,0,7219,7220,7,5,0,0,7220,1092,1,0,0,0,7221,7222,7,25,0,0,7222,7223,7,3,0,0,7223,7224,7,8,0,0,7224,7225,7,11,0,0,7225,7226,7,7,0,0,7226,7227,7,8,0,0,7227,1094,1,0,0,0,7228,7229,7,25,0,0,7229,7230,7,3,0,0,7230,7231,7,8,0,0,7231,7232,7,6,0,0,7232,7233,7,15,0,0,7233,7234,7,3,0,0,7234,7235,7,5,0,0,7235,1096,1,0,0,0,7236,7237,7,25,0,0,7237,7238,7,3,0,0,7238,7239,7,8,0,0,7239,7240,7,6,0,0,7240,7241,7,15,0,0,7241,7242,7,6,0,0,7242,7243,7,15,0,0,7243,7244,7,19,0,0,7244,7245,7,12,0,0,7245,7246,7,15,0,0,7246,7247,7,12,0,0,7247,7248,7,22,0,0,7248,1098,1,0,0,0,7249,7250,7,25,0,0,7250,7251,7,3,0,0,7251,7252,7,8,0,0,7252,7253,7,6,0,0,7253,7254,7,15,0,0,7254,7255,7,6,0,0,7255,7256,7,15,0,0,7256,7257,7,19,0,0,7257,7258,7,12,0,0,7258,7259,7,11,0,0,7259,1100,1,0,0,0,7260,7261,7,25,0,0,7261,7262,7,3,0,0,7262,7263,7,11,0,0,7263,7264,7,11,0,0,7264,7265,7,9,0,0,7265,7266,7,19,0,0,7266,7267,7,8,0,0,7267,7268,7,4,0,0,7268,1102,1,0,0,0,7269,7270,7,25,0,0,7270,7271,7,3,0,0,7271,7272,7,11,0,0,7272,7273,7,11,0,0,7273,7274,7,9,0,0,7274,7275,7,19,0,0,7275,7276,7,8,0,0,7276,7277,7,4,0,0,7277,7278,5,95,0,0,7278,7279,7,5,0,0,7279,7280,7,19,0,0,7280,7281,7,14,0,0,7281,7282,7,21,0,0,7282,7283,5,95,0,0,7283,7284,7,6,0,0,7284,7285,7,15,0,0,7285,7286,7,23,0,0,7286,7287,7,7,0,0,7287,1104,1,0,0,0,7288,7289,7,25,0,0,7289,7290,7,20,0,0,7290,7291,7,3,0,0,7291,7292,7,11,0,0,7292,7293,7,7,0,0,7293,1106,1,0,0,0,7294,7295,7,25,0,0,7295,7296,7,5,0,0,7296,7297,7,17,0,0,7297,7298,7,22,0,0,7298,7299,7,15,0,0,7299,7300,7,12,0,0,7300,1108,1,0,0,0,7301,7302,7,25,0,0,7302,7303,7,5,0,0,7303,7304,7,17,0,0,7304,7305,7,22,0,0,7305,7306,7,15,0,0,7306,7307,7,12,0,0,7307,7308,5,95,0,0,7308,7309,7,4,0,0,7309,7310,7,15,0,0,7310,7311,7,8,0,0,7311,1110,1,0,0,0,7312,7313,7,25,0,0,7313,7314,7,5,0,0,7314,7315,7,17,0,0,7315,7316,7,22,0,0,7316,7317,7,15,0,0,7317,7318,7,12,0,0,7318,7319,7,11,0,0,7319,1112,1,0,0,0,7320,7321,7,25,0,0,7321,7322,7,19,0,0,7322,7323,7,8,0,0,7323,7324,7,6,0,0,7324,1114,1,0,0,0,7325,7326,7,25,0,0,7326,7327,7,8,0,0,7327,7328,7,7,0,0,7328,7329,7,14,0,0,7329,7330,7,7,0,0,7330,7331,7,4,0,0,7331,7332,7,7,0,0,7332,7333,7,11,0,0,7333,1116,1,0,0,0,7334,7335,7,25,0,0,7335,7336,7,8,0,0,7336,7337,7,7,0,0,7337,7338,7,14,0,0,7338,7339,7,7,0,0,7339,7340,7,4,0,0,7340,7341,7,15,0,0,7341,7342,7,12,0,0,7342,7343,7,22,0,0,7343,1118,1,0,0,0,7344,7345,7,25,0,0,7345,7346,7,8,0,0,7346,7347,7,7,0,0,7347,7348,7,25,0,0,7348,7349,7,3,0,0,7349,7350,7,8,0,0,7350,7351,7,7,0,0,7351,1120,1,0,0,0,7352,7353,7,25,0,0,7353,7354,7,8,0,0,7354,7355,7,7,0,0,7355,7356,7,11,0,0,7356,7357,7,7,0,0,7357,7358,7,8,0,0,7358,7359,7,24,0,0,7359,7360,7,7,0,0,7360,1122,1,0,0,0,7361,7362,7,25,0,0,7362,7363,7,8,0,0,7363,7364,7,7,0,0,7364,7365,7,24,0,0,7365,1124,1,0,0,0,7366,7367,7,25,0,0,7367,7368,7,8,0,0,7368,7369,7,19,0,0,7369,7370,7,14,0,0,7370,7371,7,7,0,0,7371,7372,7,11,0,0,7372,7373,7,11,0,0,7373,7374,7,5,0,0,7374,7375,7,15,0,0,7375,7376,7,11,0,0,7376,7377,7,6,0,0,7377,1126,1,0,0,0,7378,7379,7,25,0,0,7379,7380,7,8,0,0,7380,7381,7,19,0,0,7381,7382,7,18,0,0,7382,7383,7,15,0,0,7383,7384,7,5,0,0,7384,7385,7,7,0,0,7385,1128,1,0,0,0,7386,7387,7,25,0,0,7387,7388,7,8,0,0,7388,7389,7,19,0,0,7389,7390,7,18,0,0,7390,7391,7,15,0,0,7391,7392,7,5,0,0,7392,7393,7,7,0,0,7393,7394,7,11,0,0,7394,1130,1,0,0,0,7395,7396,7,25,0,0,7396,7397,7,8,0,0,7397,7398,7,19,0,0,7398,7399,7,26,0,0,7399,7400,7,10,0,0,7400,1132,1,0,0,0,7401,7402,7,28,0,0,7402,7403,7,17,0,0,7403,7404,7,7,0,0,7404,7405,7,8,0,0,7405,7406,7,10,0,0,7406,1134,1,0,0,0,7407,7408,7,28,0,0,7408,7409,7,17,0,0,7409,7410,7,15,0,0,7410,7411,7,14,0,0,7411,7412,7,21,0,0,7412,1136,1,0,0,0,7413,7414,7,8,0,0,7414,7415,7,7,0,0,7415,7416,7,16,0,0,7416,7417,7,17,0,0,7417,7418,7,15,0,0,7418,7419,7,5,0,0,7419,7420,7,4,0,0,7420,1138,1,0,0,0,7421,7422,7,8,0,0,7422,7423,7,7,0,0,7423,7424,7,14,0,0,7424,7425,7,19,0,0,7425,7426,7,24,0,0,7426,7427,7,7,0,0,7427,7428,7,8,0,0,7428,1140,1,0,0,0,7429,7430,7,8,0,0,7430,7431,7,7,0,0,7431,7432,7,14,0,0,7432,7433,7,17,0,0,7433,7434,7,8,0,0,7434,7435,7,11,0,0,7435,7436,7,15,0,0,7436,7437,7,24,0,0,7437,7438,7,7,0,0,7438,1142,1,0,0,0,7439,7440,7,8,0,0,7440,7441,7,7,0,0,7441,7442,7,4,0,0,7442,7443,7,19,0,0,7443,7444,5,95,0,0,7444,7445,7,16,0,0,7445,7446,7,17,0,0,7446,7447,7,18,0,0,7447,7448,7,18,0,0,7448,7449,7,7,0,0,7449,7450,7,8,0,0,7450,7451,5,95,0,0,7451,7452,7,11,0,0,7452,7453,7,15,0,0,7453,7454,7,13,0,0,7454,7455,7,7,0,0,7455,1144,1,0,0,0,7456,7457,7,8,0,0,7457,7458,7,7,0,0,7458,7459,7,4,0,0,7459,7460,7,17,0,0,7460,7461,7,12,0,0,7461,7462,7,4,0,0,7462,7463,7,3,0,0,7463,7464,7,12,0,0,7464,7465,7,6,0,0,7465,1146,1,0,0,0,7466,7467,7,8,0,0,7467,7468,7,7,0,0,7468,7469,7,5,0,0,7469,7470,7,3,0,0,7470,7471,7,10,0,0,7471,1148,1,0,0,0,7472,7473,7,8,0,0,7473,7474,7,7,0,0,7474,7475,7,5,0,0,7475,7476,7,3,0,0,7476,7477,7,10,0,0,7477,7478,5,95,0,0,7478,7479,7,5,0,0,7479,7480,7,19,0,0,7480,7481,7,22,0,0,7481,7482,5,95,0,0,7482,7483,7,18,0,0,7483,7484,7,15,0,0,7484,7485,7,5,0,0,7485,7486,7,7,0,0,7486,1150,1,0,0,0,7487,7488,7,8,0,0,7488,7489,7,7,0,0,7489,7490,7,5,0,0,7490,7491,7,3,0,0,7491,7492,7,10,0,0,7492,7493,5,95,0,0,7493,7494,7,5,0,0,7494,7495,7,19,0,0,7495,7496,7,22,0,0,7496,7497,5,95,0,0,7497,7498,7,25,0,0,7498,7499,7,19,0,0,7499,7500,7,11,0,0,7500,1152,1,0,0,0,7501,7502,7,8,0,0,7502,7503,7,7,0,0,7503,7504,7,5,0,0,7504,7505,7,3,0,0,7505,7506,7,10,0,0,7506,7507,7,5,0,0,7507,7508,7,19,0,0,7508,7509,7,22,0,0,7509,1154,1,0,0,0,7510,7511,7,8,0,0,7511,7512,7,7,0,0,7512,7513,7,23,0,0,7513,7514,7,19,0,0,7514,7515,7,24,0,0,7515,7516,7,7,0,0,7516,1156,1,0,0,0,7517,7518,7,8,0,0,7518,7519,7,7,0,0,7519,7520,7,19,0,0,7520,7521,7,8,0,0,7521,7522,7,22,0,0,7522,7523,7,3,0,0,7523,7524,7,12,0,0,7524,7525,7,15,0,0,7525,7526,7,13,0,0,7526,7527,7,7,0,0,7527,1158,1,0,0,0,7528,7529,7,8,0,0,7529,7530,7,7,0,0,7530,7531,7,25,0,0,7531,7532,7,3,0,0,7532,7533,7,15,0,0,7533,7534,7,8,0,0,7534,1160,1,0,0,0,7535,7536,7,8,0,0,7536,7537,7,7,0,0,7537,7538,7,25,0,0,7538,7539,7,5,0,0,7539,7540,7,15,0,0,7540,7541,7,14,0,0,7541,7542,7,3,0,0,7542,7543,7,6,0,0,7543,7544,7,7,0,0,7544,7545,5,95,0,0,7545,7546,7,4,0,0,7546,7547,7,19,0,0,7547,7548,5,95,0,0,7548,7549,7,4,0,0,7549,7550,7,16,0,0,7550,1162,1,0,0,0,7551,7552,7,8,0,0,7552,7553,7,7,0,0,7553,7554,7,25,0,0,7554,7555,7,5,0,0,7555,7556,7,15,0,0,7556,7557,7,14,0,0,7557,7558,7,3,0,0,7558,7559,7,6,0,0,7559,7560,7,7,0,0,7560,7561,5,95,0,0,7561,7562,7,4,0,0,7562,7563,7,19,0,0,7563,7564,5,95,0,0,7564,7565,7,6,0,0,7565,7566,7,3,0,0,7566,7567,7,16,0,0,7567,7568,7,5,0,0,7568,7569,7,7,0,0,7569,1164,1,0,0,0,7570,7571,7,8,0,0,7571,7572,7,7,0,0,7572,7573,7,25,0,0,7573,7574,7,5,0,0,7574,7575,7,15,0,0,7575,7576,7,14,0,0,7576,7577,7,3,0,0,7577,7578,7,6,0,0,7578,7579,7,7,0,0,7579,7580,5,95,0,0,7580,7581,7,15,0,0,7581,7582,7,22,0,0,7582,7583,7,12,0,0,7583,7584,7,19,0,0,7584,7585,7,8,0,0,7585,7586,7,7,0,0,7586,7587,5,95,0,0,7587,7588,7,4,0,0,7588,7589,7,16,0,0,7589,1166,1,0,0,0,7590,7591,7,8,0,0,7591,7592,7,7,0,0,7592,7593,7,25,0,0,7593,7594,7,5,0,0,7594,7595,7,15,0,0,7595,7596,7,14,0,0,7596,7597,7,3,0,0,7597,7598,7,6,0,0,7598,7599,7,7,0,0,7599,7600,5,95,0,0,7600,7601,7,15,0,0,7601,7602,7,22,0,0,7602,7603,7,12,0,0,7603,7604,7,19,0,0,7604,7605,7,8,0,0,7605,7606,7,7,0,0,7606,7607,5,95,0,0,7607,7608,7,6,0,0,7608,7609,7,3,0,0,7609,7610,7,16,0,0,7610,7611,7,5,0,0,7611,7612,7,7,0,0,7612,1168,1,0,0,0,7613,7614,7,8,0,0,7614,7615,7,7,0,0,7615,7616,7,25,0,0,7616,7617,7,5,0,0,7617,7618,7,15,0,0,7618,7619,7,14,0,0,7619,7620,7,3,0,0,7620,7621,7,6,0,0,7621,7622,7,7,0,0,7622,7623,5,95,0,0,7623,7624,7,8,0,0,7624,7625,7,7,0,0,7625,7626,7,9,0,0,7626,7627,7,8,0,0,7627,7628,7,15,0,0,7628,7629,7,6,0,0,7629,7630,7,7,0,0,7630,7631,5,95,0,0,7631,7632,7,4,0,0,7632,7633,7,16,0,0,7633,1170,1,0,0,0,7634,7635,7,8,0,0,7635,7636,7,7,0,0,7636,7637,7,25,0,0,7637,7638,7,5,0,0,7638,7639,7,15,0,0,7639,7640,7,14,0,0,7640,7641,7,3,0,0,7641,7642,7,6,0,0,7642,7643,7,7,0,0,7643,7644,5,95,0,0,7644,7645,7,9,0,0,7645,7646,7,15,0,0,7646,7647,7,5,0,0,7647,7648,7,4,0,0,7648,7649,5,95,0,0,7649,7650,7,4,0,0,7650,7651,7,19,0,0,7651,7652,5,95,0,0,7652,7653,7,6,0,0,7653,7654,7,3,0,0,7654,7655,7,16,0,0,7655,7656,7,5,0,0,7656,7657,7,7,0,0,7657,1172,1,0,0,0,7658,7659,7,8,0,0,7659,7660,7,7,0,0,7660,7661,7,25,0,0,7661,7662,7,5,0,0,7662,7663,7,15,0,0,7663,7664,7,14,0,0,7664,7665,7,3,0,0,7665,7666,7,6,0,0,7666,7667,7,7,0,0,7667,7668,5,95,0,0,7668,7669,7,9,0,0,7669,7670,7,15,0,0,7670,7671,7,5,0,0,7671,7672,7,4,0,0,7672,7673,5,95,0,0,7673,7674,7,15,0,0,7674,7675,7,22,0,0,7675,7676,7,12,0,0,7676,7677,7,19,0,0,7677,7678,7,8,0,0,7678,7679,7,7,0,0,7679,7680,5,95,0,0,7680,7681,7,6,0,0,7681,7682,7,3,0,0,7682,7683,7,16,0,0,7683,7684,7,5,0,0,7684,7685,7,7,0,0,7685,1174,1,0,0,0,7686,7687,7,8,0,0,7687,7688,7,7,0,0,7688,7689,7,25,0,0,7689,7690,7,5,0,0,7690,7691,7,15,0,0,7691,7692,7,14,0,0,7692,7693,7,3,0,0,7693,7694,7,6,0,0,7694,7695,7,15,0,0,7695,7696,7,19,0,0,7696,7697,7,12,0,0,7697,1176,1,0,0,0,7698,7699,7,8,0,0,7699,7700,7,7,0,0,7700,7701,7,11,0,0,7701,7702,7,7,0,0,7702,7703,7,6,0,0,7703,1178,1,0,0,0,7704,7705,7,8,0,0,7705,7706,7,7,0,0,7706,7707,7,11,0,0,7707,7708,7,6,0,0,7708,7709,7,3,0,0,7709,7710,7,8,0,0,7710,7711,7,6,0,0,7711,1180,1,0,0,0,7712,7713,7,8,0,0,7713,7714,7,7,0,0,7714,7715,7,11,0,0,7715,7716,7,17,0,0,7716,7717,7,23,0,0,7717,7718,7,7,0,0,7718,1182,1,0,0,0,7719,7720,7,8,0,0,7720,7721,7,7,0,0,7721,7722,7,6,0,0,7722,7723,7,17,0,0,7723,7724,7,8,0,0,7724,7725,7,12,0,0,7725,7726,7,7,0,0,7726,7727,7,4,0,0,7727,7728,5,95,0,0,7728,7729,7,11,0,0,7729,7730,7,28,0,0,7730,7731,7,5,0,0,7731,7732,7,11,0,0,7732,7733,7,6,0,0,7733,7734,7,3,0,0,7734,7735,7,6,0,0,7735,7736,7,7,0,0,7736,1184,1,0,0,0,7737,7738,7,8,0,0,7738,7739,7,7,0,0,7739,7740,7,6,0,0,7740,7741,7,17,0,0,7741,7742,7,8,0,0,7742,7743,7,12,0,0,7743,7744,7,15,0,0,7744,7745,7,12,0,0,7745,7746,7,22,0,0,7746,1186,1,0,0,0,7747,7748,7,8,0,0,7748,7749,7,7,0,0,7749,7750,7,6,0,0,7750,7751,7,17,0,0,7751,7752,7,8,0,0,7752,7753,7,12,0,0,7753,7754,7,11,0,0,7754,1188,1,0,0,0,7755,7756,7,8,0,0,7756,7757,7,7,0,0,7757,7758,7,17,0,0,7758,7759,7,11,0,0,7759,7760,7,7,0,0,7760,1190,1,0,0,0,7761,7762,7,8,0,0,7762,7763,7,19,0,0,7763,7764,7,5,0,0,7764,7765,7,7,0,0,7765,1192,1,0,0,0,7766,7767,7,8,0,0,7767,7768,7,19,0,0,7768,7769,7,5,0,0,7769,7770,7,5,0,0,7770,7771,7,16,0,0,7771,7772,7,3,0,0,7772,7773,7,14,0,0,7773,7774,7,21,0,0,7774,1194,1,0,0,0,7775,7776,7,8,0,0,7776,7777,7,19,0,0,7777,7778,7,5,0,0,7778,7779,7,5,0,0,7779,7780,7,17,0,0,7780,7781,7,25,0,0,7781,1196,1,0,0,0,7782,7783,7,8,0,0,7783,7784,7,19,0,0,7784,7785,7,6,0,0,7785,7786,7,3,0,0,7786,7787,7,6,0,0,7787,7788,7,7,0,0,7788,1198,1,0,0,0,7789,7790,7,8,0,0,7790,7791,7,19,0,0,7791,7792,7,9,0,0,7792,1200,1,0,0,0,7793,7794,7,8,0,0,7794,7795,7,19,0,0,7795,7796,7,9,0,0,7796,7797,7,11,0,0,7797,1202,1,0,0,0,7798,7799,7,8,0,0,7799,7800,7,19,0,0,7800,7801,7,9,0,0,7801,7802,5,95,0,0,7802,7803,7,18,0,0,7803,7804,7,19,0,0,7804,7805,7,8,0,0,7805,7806,7,23,0,0,7806,7807,7,3,0,0,7807,7808,7,6,0,0,7808,1204,1,0,0,0,7809,7810,7,8,0,0,7810,7811,7,6,0,0,7811,7812,7,8,0,0,7812,7813,7,7,0,0,7813,7814,7,7,0,0,7814,1206,1,0,0,0,7815,7816,7,11,0,0,7816,7817,7,3,0,0,7817,7818,7,24,0,0,7818,7819,7,7,0,0,7819,7820,7,25,0,0,7820,7821,7,19,0,0,7821,7822,7,15,0,0,7822,7823,7,12,0,0,7823,7824,7,6,0,0,7824,1208,1,0,0,0,7825,7826,7,11,0,0,7826,7827,7,14,0,0,7827,7828,7,20,0,0,7828,7829,7,7,0,0,7829,7830,7,4,0,0,7830,7831,7,17,0,0,7831,7832,7,5,0,0,7832,7833,7,7,0,0,7833,1210,1,0,0,0,7834,7835,7,11,0,0,7835,7836,7,7,0,0,7836,7837,7,14,0,0,7837,7838,7,17,0,0,7838,7839,7,8,0,0,7839,7840,7,15,0,0,7840,7841,7,6,0,0,7841,7842,7,10,0,0,7842,1212,1,0,0,0,7843,7844,7,11,0,0,7844,7845,7,7,0,0,7845,7846,7,28,0,0,7846,7847,7,17,0,0,7847,7848,7,7,0,0,7848,7849,7,12,0,0,7849,7850,7,14,0,0,7850,7851,7,7,0,0,7851,1214,1,0,0,0,7852,7853,7,11,0,0,7853,7854,7,7,0,0,7854,7855,7,8,0,0,7855,7856,7,24,0,0,7856,7857,7,7,0,0,7857,7858,7,8,0,0,7858,1216,1,0,0,0,7859,7860,7,11,0,0,7860,7861,7,7,0,0,7861,7862,7,11,0,0,7862,7863,7,11,0,0,7863,7864,7,15,0,0,7864,7865,7,19,0,0,7865,7866,7,12,0,0,7866,1218,1,0,0,0,7867,7868,7,11,0,0,7868,7869,7,20,0,0,7869,7870,7,3,0,0,7870,7871,7,8,0,0,7871,7872,7,7,0,0,7872,1220,1,0,0,0,7873,7874,7,11,0,0,7874,7875,7,20,0,0,7875,7876,7,3,0,0,7876,7877,7,8,0,0,7877,7878,7,7,0,0,7878,7879,7,4,0,0,7879,1222,1,0,0,0,7880,7881,7,11,0,0,7881,7882,7,15,0,0,7882,7883,7,22,0,0,7883,7884,7,12,0,0,7884,7885,7,7,0,0,7885,7886,7,4,0,0,7886,1224,1,0,0,0,7887,7888,7,11,0,0,7888,7889,7,15,0,0,7889,7890,7,23,0,0,7890,7891,7,25,0,0,7891,7892,7,5,0,0,7892,7893,7,7,0,0,7893,1226,1,0,0,0,7894,7895,7,11,0,0,7895,7896,7,5,0,0,7896,7897,7,3,0,0,7897,7898,7,24,0,0,7898,7899,7,7,0,0,7899,1228,1,0,0,0,7900,7901,7,11,0,0,7901,7902,7,5,0,0,7902,7903,7,19,0,0,7903,7904,7,9,0,0,7904,1230,1,0,0,0,7905,7906,7,11,0,0,7906,7907,7,12,0,0,7907,7908,7,3,0,0,7908,7909,7,25,0,0,7909,7910,7,11,0,0,7910,7911,7,20,0,0,7911,7912,7,19,0,0,7912,7913,7,6,0,0,7913,1232,1,0,0,0,7914,7915,7,11,0,0,7915,7916,7,19,0,0,7916,7917,7,14,0,0,7917,7918,7,21,0,0,7918,7919,7,7,0,0,7919,7920,7,6,0,0,7920,1234,1,0,0,0,7921,7922,7,11,0,0,7922,7923,7,19,0,0,7923,7924,7,23,0,0,7924,7925,7,7,0,0,7925,1236,1,0,0,0,7926,7927,7,11,0,0,7927,7928,7,19,0,0,7928,7929,7,12,0,0,7929,7930,7,3,0,0,7930,7931,7,23,0,0,7931,7932,7,7,0,0,7932,1238,1,0,0,0,7933,7934,7,11,0,0,7934,7935,7,19,0,0,7935,7936,7,17,0,0,7936,7937,7,12,0,0,7937,7938,7,4,0,0,7938,7939,7,11,0,0,7939,1240,1,0,0,0,7940,7941,7,11,0,0,7941,7942,7,19,0,0,7942,7943,7,17,0,0,7943,7944,7,8,0,0,7944,7945,7,14,0,0,7945,7946,7,7,0,0,7946,1242,1,0,0,0,7947,7948,7,11,0,0,7948,7949,7,28,0,0,7949,7950,7,5,0,0,7950,7951,5,95,0,0,7951,7952,7,3,0,0,7952,7953,7,18,0,0,7953,7954,7,6,0,0,7954,7955,7,7,0,0,7955,7956,7,8,0,0,7956,7957,5,95,0,0,7957,7958,7,22,0,0,7958,7959,7,6,0,0,7959,7960,7,15,0,0,7960,7961,7,4,0,0,7961,7962,7,11,0,0,7962,1244,1,0,0,0,7963,7964,7,11,0,0,7964,7965,7,28,0,0,7965,7966,7,5,0,0,7966,7967,5,95,0,0,7967,7968,7,3,0,0,7968,7969,7,18,0,0,7969,7970,7,6,0,0,7970,7971,7,7,0,0,7971,7972,7,8,0,0,7972,7973,5,95,0,0,7973,7974,7,23,0,0,7974,7975,7,6,0,0,7975,7976,7,11,0,0,7976,7977,5,95,0,0,7977,7978,7,22,0,0,7978,7979,7,3,0,0,7979,7980,7,25,0,0,7980,7981,7,11,0,0,7981,1246,1,0,0,0,7982,7983,7,11,0,0,7983,7984,7,28,0,0,7984,7985,7,5,0,0,7985,7986,5,95,0,0,7986,7987,7,16,0,0,7987,7988,7,7,0,0,7988,7989,7,18,0,0,7989,7990,7,19,0,0,7990,7991,7,8,0,0,7991,7992,7,7,0,0,7992,7993,5,95,0,0,7993,7994,7,22,0,0,7994,7995,7,6,0,0,7995,7996,7,15,0,0,7996,7997,7,4,0,0,7997,7998,7,11,0,0,7998,1248,1,0,0,0,7999,8e3,7,11,0,0,8e3,8001,7,28,0,0,8001,8002,7,5,0,0,8002,8003,5,95,0,0,8003,8004,7,16,0,0,8004,8005,7,17,0,0,8005,8006,7,18,0,0,8006,8007,7,18,0,0,8007,8008,7,7,0,0,8008,8009,7,8,0,0,8009,8010,5,95,0,0,8010,8011,7,8,0,0,8011,8012,7,7,0,0,8012,8013,7,11,0,0,8013,8014,7,17,0,0,8014,8015,7,5,0,0,8015,8016,7,6,0,0,8016,1250,1,0,0,0,8017,8018,7,11,0,0,8018,8019,7,28,0,0,8019,8020,7,5,0,0,8020,8021,5,95,0,0,8021,8022,7,14,0,0,8022,8023,7,3,0,0,8023,8024,7,14,0,0,8024,8025,7,20,0,0,8025,8026,7,7,0,0,8026,1252,1,0,0,0,8027,8028,7,11,0,0,8028,8029,7,28,0,0,8029,8030,7,5,0,0,8030,8031,5,95,0,0,8031,8032,7,12,0,0,8032,8033,7,19,0,0,8033,8034,5,95,0,0,8034,8035,7,14,0,0,8035,8036,7,3,0,0,8036,8037,7,14,0,0,8037,8038,7,20,0,0,8038,8039,7,7,0,0,8039,1254,1,0,0,0,8040,8041,7,11,0,0,8041,8042,7,28,0,0,8042,8043,7,5,0,0,8043,8044,5,95,0,0,8044,8045,7,6,0,0,8045,8046,7,20,0,0,8046,8047,7,8,0,0,8047,8048,7,7,0,0,8048,8049,7,3,0,0,8049,8050,7,4,0,0,8050,1256,1,0,0,0,8051,8052,7,11,0,0,8052,8053,7,6,0,0,8053,8054,7,3,0,0,8054,8055,7,8,0,0,8055,8056,7,6,0,0,8056,1258,1,0,0,0,8057,8058,7,11,0,0,8058,8059,7,6,0,0,8059,8060,7,3,0,0,8060,8061,7,8,0,0,8061,8062,7,6,0,0,8062,8063,7,11,0,0,8063,1260,1,0,0,0,8064,8065,7,11,0,0,8065,8066,7,6,0,0,8066,8067,7,3,0,0,8067,8068,7,6,0,0,8068,8069,7,11,0,0,8069,8070,5,95,0,0,8070,8071,7,3,0,0,8071,8072,7,17,0,0,8072,8073,7,6,0,0,8073,8074,7,19,0,0,8074,8075,5,95,0,0,8075,8076,7,8,0,0,8076,8077,7,7,0,0,8077,8078,7,14,0,0,8078,8079,7,3,0,0,8079,8080,7,5,0,0,8080,8081,7,14,0,0,8081,1262,1,0,0,0,8082,8083,7,11,0,0,8083,8084,7,6,0,0,8084,8085,7,3,0,0,8085,8086,7,6,0,0,8086,8087,7,11,0,0,8087,8088,5,95,0,0,8088,8089,7,25,0,0,8089,8090,7,7,0,0,8090,8091,7,8,0,0,8091,8092,7,11,0,0,8092,8093,7,15,0,0,8093,8094,7,11,0,0,8094,8095,7,6,0,0,8095,8096,7,7,0,0,8096,8097,7,12,0,0,8097,8098,7,6,0,0,8098,1264,1,0,0,0,8099,8100,7,11,0,0,8100,8101,7,6,0,0,8101,8102,7,3,0,0,8102,8103,7,6,0,0,8103,8104,7,11,0,0,8104,8105,5,95,0,0,8105,8106,7,11,0,0,8106,8107,7,3,0,0,8107,8108,7,23,0,0,8108,8109,7,25,0,0,8109,8110,7,5,0,0,8110,8111,7,7,0,0,8111,8112,5,95,0,0,8112,8113,7,25,0,0,8113,8114,7,3,0,0,8114,8115,7,22,0,0,8115,8116,7,7,0,0,8116,8117,7,11,0,0,8117,1266,1,0,0,0,8118,8119,7,11,0,0,8119,8120,7,6,0,0,8120,8121,7,3,0,0,8121,8122,7,6,0,0,8122,8123,7,17,0,0,8123,8124,7,11,0,0,8124,1268,1,0,0,0,8125,8126,7,11,0,0,8126,8127,7,6,0,0,8127,8128,7,19,0,0,8128,8129,7,25,0,0,8129,1270,1,0,0,0,8130,8131,7,11,0,0,8131,8132,7,6,0,0,8132,8133,7,19,0,0,8133,8134,7,8,0,0,8134,8135,7,3,0,0,8135,8136,7,22,0,0,8136,8137,7,7,0,0,8137,1272,1,0,0,0,8138,8139,7,11,0,0,8139,8140,7,6,0,0,8140,8141,7,19,0,0,8141,8142,7,8,0,0,8142,8143,7,7,0,0,8143,8144,7,4,0,0,8144,1274,1,0,0,0,8145,8146,7,11,0,0,8146,8147,7,6,0,0,8147,8148,7,8,0,0,8148,8149,7,15,0,0,8149,8150,7,12,0,0,8150,8151,7,22,0,0,8151,1276,1,0,0,0,8152,8153,7,11,0,0,8153,8154,7,17,0,0,8154,8155,7,16,0,0,8155,8156,7,14,0,0,8156,8157,7,5,0,0,8157,8158,7,3,0,0,8158,8159,7,11,0,0,8159,8160,7,11,0,0,8160,8161,5,95,0,0,8161,8162,7,19,0,0,8162,8163,7,8,0,0,8163,8164,7,15,0,0,8164,8165,7,22,0,0,8165,8166,7,15,0,0,8166,8167,7,12,0,0,8167,1278,1,0,0,0,8168,8169,7,11,0,0,8169,8170,7,17,0,0,8170,8171,7,16,0,0,8171,8172,7,27,0,0,8172,8173,7,7,0,0,8173,8174,7,14,0,0,8174,8175,7,6,0,0,8175,1280,1,0,0,0,8176,8177,7,11,0,0,8177,8178,7,17,0,0,8178,8179,7,16,0,0,8179,8180,7,25,0,0,8180,8181,7,3,0,0,8181,8182,7,8,0,0,8182,8183,7,6,0,0,8183,8184,7,15,0,0,8184,8185,7,6,0,0,8185,8186,7,15,0,0,8186,8187,7,19,0,0,8187,8188,7,12,0,0,8188,1282,1,0,0,0,8189,8190,7,11,0,0,8190,8191,7,17,0,0,8191,8192,7,16,0,0,8192,8193,7,25,0,0,8193,8194,7,3,0,0,8194,8195,7,8,0,0,8195,8196,7,6,0,0,8196,8197,7,15,0,0,8197,8198,7,6,0,0,8198,8199,7,15,0,0,8199,8200,7,19,0,0,8200,8201,7,12,0,0,8201,8202,7,11,0,0,8202,1284,1,0,0,0,8203,8204,7,11,0,0,8204,8205,7,17,0,0,8205,8206,7,11,0,0,8206,8207,7,25,0,0,8207,8208,7,7,0,0,8208,8209,7,12,0,0,8209,8210,7,4,0,0,8210,1286,1,0,0,0,8211,8212,7,11,0,0,8212,8213,7,9,0,0,8213,8214,7,3,0,0,8214,8215,7,25,0,0,8215,8216,7,11,0,0,8216,1288,1,0,0,0,8217,8218,7,11,0,0,8218,8219,7,9,0,0,8219,8220,7,15,0,0,8220,8221,7,6,0,0,8221,8222,7,14,0,0,8222,8223,7,20,0,0,8223,8224,7,7,0,0,8224,8225,7,11,0,0,8225,1290,1,0,0,0,8226,8227,7,6,0,0,8227,8228,7,3,0,0,8228,8229,7,16,0,0,8229,8230,7,5,0,0,8230,8231,7,7,0,0,8231,8232,5,95,0,0,8232,8233,7,12,0,0,8233,8234,7,3,0,0,8234,8235,7,23,0,0,8235,8236,7,7,0,0,8236,1292,1,0,0,0,8237,8238,7,6,0,0,8238,8239,7,3,0,0,8239,8240,7,16,0,0,8240,8241,7,5,0,0,8241,8242,7,7,0,0,8242,8243,7,11,0,0,8243,8244,7,25,0,0,8244,8245,7,3,0,0,8245,8246,7,14,0,0,8246,8247,7,7,0,0,8247,1294,1,0,0,0,8248,8249,7,6,0,0,8249,8250,7,3,0,0,8250,8251,7,16,0,0,8251,8252,7,5,0,0,8252,8253,7,7,0,0,8253,8254,5,95,0,0,8254,8255,7,6,0,0,8255,8256,7,10,0,0,8256,8257,7,25,0,0,8257,8258,7,7,0,0,8258,1296,1,0,0,0,8259,8260,7,6,0,0,8260,8261,7,7,0,0,8261,8262,7,23,0,0,8262,8263,7,25,0,0,8263,8264,7,19,0,0,8264,8265,7,8,0,0,8265,8266,7,3,0,0,8266,8267,7,8,0,0,8267,8268,7,10,0,0,8268,1298,1,0,0,0,8269,8270,7,6,0,0,8270,8271,7,7,0,0,8271,8272,7,23,0,0,8272,8273,7,25,0,0,8273,8274,7,6,0,0,8274,8275,7,3,0,0,8275,8276,7,16,0,0,8276,8277,7,5,0,0,8277,8278,7,7,0,0,8278,1300,1,0,0,0,8279,8280,7,6,0,0,8280,8281,7,20,0,0,8281,8282,7,3,0,0,8282,8283,7,12,0,0,8283,1302,1,0,0,0,8284,8285,7,6,0,0,8285,8286,7,8,0,0,8286,8287,7,3,0,0,8287,8288,7,4,0,0,8288,8289,7,15,0,0,8289,8290,7,6,0,0,8290,8291,7,15,0,0,8291,8292,7,19,0,0,8292,8293,7,12,0,0,8293,8294,7,3,0,0,8294,8295,7,5,0,0,8295,1304,1,0,0,0,8296,8297,7,6,0,0,8297,8298,7,8,0,0,8298,8299,7,3,0,0,8299,8300,7,12,0,0,8300,8301,7,11,0,0,8301,8302,7,3,0,0,8302,8303,7,14,0,0,8303,8304,7,6,0,0,8304,8305,7,15,0,0,8305,8306,7,19,0,0,8306,8307,7,12,0,0,8307,1306,1,0,0,0,8308,8309,7,6,0,0,8309,8310,7,8,0,0,8310,8311,7,3,0,0,8311,8312,7,12,0,0,8312,8313,7,11,0,0,8313,8314,7,3,0,0,8314,8315,7,14,0,0,8315,8316,7,6,0,0,8316,8317,7,15,0,0,8317,8318,7,19,0,0,8318,8319,7,12,0,0,8319,8320,7,3,0,0,8320,8321,7,5,0,0,8321,1308,1,0,0,0,8322,8323,7,6,0,0,8323,8324,7,8,0,0,8324,8325,7,15,0,0,8325,8326,7,22,0,0,8326,8327,7,22,0,0,8327,8328,7,7,0,0,8328,8329,7,8,0,0,8329,8330,7,11,0,0,8330,1310,1,0,0,0,8331,8332,7,6,0,0,8332,8333,7,8,0,0,8333,8334,7,17,0,0,8334,8335,7,12,0,0,8335,8336,7,14,0,0,8336,8337,7,3,0,0,8337,8338,7,6,0,0,8338,8339,7,7,0,0,8339,1312,1,0,0,0,8340,8341,7,17,0,0,8341,8342,7,12,0,0,8342,8343,7,16,0,0,8343,8344,7,19,0,0,8344,8345,7,17,0,0,8345,8346,7,12,0,0,8346,8347,7,4,0,0,8347,8348,7,7,0,0,8348,8349,7,4,0,0,8349,1314,1,0,0,0,8350,8351,7,17,0,0,8351,8352,7,12,0,0,8352,8353,7,4,0,0,8353,8354,7,7,0,0,8354,8355,7,18,0,0,8355,8356,7,15,0,0,8356,8357,7,12,0,0,8357,8358,7,7,0,0,8358,8359,7,4,0,0,8359,1316,1,0,0,0,8360,8361,7,17,0,0,8361,8362,7,12,0,0,8362,8363,7,4,0,0,8363,8364,7,19,0,0,8364,8365,7,18,0,0,8365,8366,7,15,0,0,8366,8367,7,5,0,0,8367,8368,7,7,0,0,8368,1318,1,0,0,0,8369,8370,7,17,0,0,8370,8371,7,12,0,0,8371,8372,7,4,0,0,8372,8373,7,19,0,0,8373,8374,5,95,0,0,8374,8375,7,16,0,0,8375,8376,7,17,0,0,8376,8377,7,18,0,0,8377,8378,7,18,0,0,8378,8379,7,7,0,0,8379,8380,7,8,0,0,8380,8381,5,95,0,0,8381,8382,7,11,0,0,8382,8383,7,15,0,0,8383,8384,7,13,0,0,8384,8385,7,7,0,0,8385,1320,1,0,0,0,8386,8387,7,17,0,0,8387,8388,7,12,0,0,8388,8389,7,15,0,0,8389,8390,7,12,0,0,8390,8391,7,11,0,0,8391,8392,7,6,0,0,8392,8393,7,3,0,0,8393,8394,7,5,0,0,8394,8395,7,5,0,0,8395,1322,1,0,0,0,8396,8397,7,17,0,0,8397,8398,7,12,0,0,8398,8399,7,21,0,0,8399,8400,7,12,0,0,8400,8401,7,19,0,0,8401,8402,7,9,0,0,8402,8403,7,12,0,0,8403,1324,1,0,0,0,8404,8405,7,17,0,0,8405,8406,7,12,0,0,8406,8407,7,6,0,0,8407,8408,7,15,0,0,8408,8409,7,5,0,0,8409,1326,1,0,0,0,8410,8411,7,17,0,0,8411,8412,7,25,0,0,8412,8413,7,22,0,0,8413,8414,7,8,0,0,8414,8415,7,3,0,0,8415,8416,7,4,0,0,8416,8417,7,7,0,0,8417,1328,1,0,0,0,8418,8419,7,17,0,0,8419,8420,7,11,0,0,8420,8421,7,7,0,0,8421,8422,7,8,0,0,8422,1330,1,0,0,0,8423,8424,7,17,0,0,8424,8425,7,11,0,0,8425,8426,7,7,0,0,8426,8427,5,95,0,0,8427,8428,7,18,0,0,8428,8429,7,8,0,0,8429,8430,7,23,0,0,8430,1332,1,0,0,0,8431,8432,7,17,0,0,8432,8433,7,11,0,0,8433,8434,7,7,0,0,8434,8435,7,8,0,0,8435,8436,5,95,0,0,8436,8437,7,8,0,0,8437,8438,7,7,0,0,8438,8439,7,11,0,0,8439,8440,7,19,0,0,8440,8441,7,17,0,0,8441,8442,7,8,0,0,8442,8443,7,14,0,0,8443,8444,7,7,0,0,8444,8445,7,11,0,0,8445,1334,1,0,0,0,8446,8447,7,24,0,0,8447,8448,7,3,0,0,8448,8449,7,5,0,0,8449,8450,7,15,0,0,8450,8451,7,4,0,0,8451,8452,7,3,0,0,8452,8453,7,6,0,0,8453,8454,7,15,0,0,8454,8455,7,19,0,0,8455,8456,7,12,0,0,8456,1336,1,0,0,0,8457,8458,7,24,0,0,8458,8459,7,3,0,0,8459,8460,7,5,0,0,8460,8461,7,17,0,0,8461,8462,7,7,0,0,8462,1338,1,0,0,0,8463,8464,7,24,0,0,8464,8465,7,3,0,0,8465,8466,7,8,0,0,8466,8467,7,15,0,0,8467,8468,7,3,0,0,8468,8469,7,16,0,0,8469,8470,7,5,0,0,8470,8471,7,7,0,0,8471,8472,7,11,0,0,8472,1340,1,0,0,0,8473,8474,7,24,0,0,8474,8475,7,15,0,0,8475,8476,7,7,0,0,8476,8477,7,9,0,0,8477,1342,1,0,0,0,8478,8479,7,24,0,0,8479,8480,7,15,0,0,8480,8481,7,8,0,0,8481,8482,7,6,0,0,8482,8483,7,17,0,0,8483,8484,7,3,0,0,8484,8485,7,5,0,0,8485,1344,1,0,0,0,8486,8487,7,24,0,0,8487,8488,7,15,0,0,8488,8489,7,11,0,0,8489,8490,7,15,0,0,8490,8491,7,16,0,0,8491,8492,7,5,0,0,8492,8493,7,7,0,0,8493,1346,1,0,0,0,8494,8495,7,9,0,0,8495,8496,7,3,0,0,8496,8497,7,15,0,0,8497,8498,7,6,0,0,8498,1348,1,0,0,0,8499,8500,7,9,0,0,8500,8501,7,3,0,0,8501,8502,7,8,0,0,8502,8503,7,12,0,0,8503,8504,7,15,0,0,8504,8505,7,12,0,0,8505,8506,7,22,0,0,8506,8507,7,11,0,0,8507,1350,1,0,0,0,8508,8509,7,9,0,0,8509,8510,7,15,0,0,8510,8511,7,12,0,0,8511,8512,7,4,0,0,8512,8513,7,19,0,0,8513,8514,7,9,0,0,8514,1352,1,0,0,0,8515,8516,7,9,0,0,8516,8517,7,15,0,0,8517,8518,7,6,0,0,8518,8519,7,20,0,0,8519,8520,7,19,0,0,8520,8521,7,17,0,0,8521,8522,7,6,0,0,8522,1354,1,0,0,0,8523,8524,7,9,0,0,8524,8525,7,19,0,0,8525,8526,7,8,0,0,8526,8527,7,21,0,0,8527,1356,1,0,0,0,8528,8529,7,9,0,0,8529,8530,7,8,0,0,8530,8531,7,3,0,0,8531,8532,7,25,0,0,8532,8533,7,25,0,0,8533,8534,7,7,0,0,8534,8535,7,8,0,0,8535,1358,1,0,0,0,8536,8537,7,26,0,0,8537,8538,5,53,0,0,8538,8539,5,48,0,0,8539,8540,5,57,0,0,8540,1360,1,0,0,0,8541,8542,7,26,0,0,8542,8543,7,3,0,0,8543,1362,1,0,0,0,8544,8545,7,26,0,0,8545,8546,7,23,0,0,8546,8547,7,5,0,0,8547,1364,1,0,0,0,8548,8549,7,10,0,0,8549,8550,7,7,0,0,8550,8551,7,11,0,0,8551,1366,1,0,0,0,8552,8553,7,7,0,0,8553,8554,7,17,0,0,8554,8555,7,8,0,0,8555,1368,1,0,0,0,8556,8557,7,17,0,0,8557,8558,7,11,0,0,8558,8559,7,3,0,0,8559,1370,1,0,0,0,8560,8561,7,27,0,0,8561,8562,7,15,0,0,8562,8563,7,11,0,0,8563,1372,1,0,0,0,8564,8565,7,15,0,0,8565,8566,7,11,0,0,8566,8567,7,19,0,0,8567,1374,1,0,0,0,8568,8569,7,15,0,0,8569,8570,7,12,0,0,8570,8571,7,6,0,0,8571,8572,7,7,0,0,8572,8573,7,8,0,0,8573,8574,7,12,0,0,8574,8575,7,3,0,0,8575,8576,7,5,0,0,8576,1376,1,0,0,0,8577,8578,7,28,0,0,8578,8579,7,17,0,0,8579,8580,7,3,0,0,8580,8581,7,8,0,0,8581,8582,7,6,0,0,8582,8583,7,7,0,0,8583,8584,7,8,0,0,8584,1378,1,0,0,0,8585,8586,7,23,0,0,8586,8587,7,19,0,0,8587,8588,7,12,0,0,8588,8589,7,6,0,0,8589,8590,7,20,0,0,8590,1380,1,0,0,0,8591,8592,7,4,0,0,8592,8593,7,3,0,0,8593,8594,7,10,0,0,8594,1382,1,0,0,0,8595,8596,7,20,0,0,8596,8597,7,19,0,0,8597,8598,7,17,0,0,8598,8599,7,8,0,0,8599,1384,1,0,0,0,8600,8601,7,23,0,0,8601,8602,7,15,0,0,8602,8603,7,12,0,0,8603,8604,7,17,0,0,8604,8605,7,6,0,0,8605,8606,7,7,0,0,8606,1386,1,0,0,0,8607,8608,7,9,0,0,8608,8609,7,7,0,0,8609,8610,7,7,0,0,8610,8611,7,21,0,0,8611,1388,1,0,0,0,8612,8613,7,11,0,0,8613,8614,7,7,0,0,8614,8615,7,14,0,0,8615,8616,7,19,0,0,8616,8617,7,12,0,0,8617,8618,7,4,0,0,8618,1390,1,0,0,0,8619,8620,7,23,0,0,8620,8621,7,15,0,0,8621,8622,7,14,0,0,8622,8623,7,8,0,0,8623,8624,7,19,0,0,8624,8625,7,11,0,0,8625,8626,7,7,0,0,8626,8627,7,14,0,0,8627,8628,7,19,0,0,8628,8629,7,12,0,0,8629,8630,7,4,0,0,8630,1392,1,0,0,0,8631,8632,7,3,0,0,8632,8633,7,4,0,0,8633,8634,7,23,0,0,8634,8635,7,15,0,0,8635,8636,7,12,0,0,8636,1394,1,0,0,0,8637,8638,7,3,0,0,8638,8639,7,25,0,0,8639,8640,7,25,0,0,8640,8641,7,5,0,0,8641,8642,7,15,0,0,8642,8643,7,14,0,0,8643,8644,7,3,0,0,8644,8645,7,6,0,0,8645,8646,7,15,0,0,8646,8647,7,19,0,0,8647,8648,7,12,0,0,8648,8649,5,95,0,0,8649,8650,7,25,0,0,8650,8651,7,3,0,0,8651,8652,7,11,0,0,8652,8653,7,11,0,0,8653,8654,7,9,0,0,8654,8655,7,19,0,0,8655,8656,7,8,0,0,8656,8657,7,4,0,0,8657,8658,5,95,0,0,8658,8659,7,3,0,0,8659,8660,7,4,0,0,8660,8661,7,23,0,0,8661,8662,7,15,0,0,8662,8663,7,12,0,0,8663,1396,1,0,0,0,8664,8665,7,3,0,0,8665,8666,7,17,0,0,8666,8667,7,4,0,0,8667,8668,7,15,0,0,8668,8669,7,6,0,0,8669,8670,5,95,0,0,8670,8671,7,3,0,0,8671,8672,7,16,0,0,8672,8673,7,19,0,0,8673,8674,7,8,0,0,8674,8675,7,6,0,0,8675,8676,5,95,0,0,8676,8677,7,7,0,0,8677,8678,7,26,0,0,8678,8679,7,7,0,0,8679,8680,7,23,0,0,8680,8681,7,25,0,0,8681,8682,7,6,0,0,8682,1398,1,0,0,0,8683,8684,7,3,0,0,8684,8685,7,17,0,0,8685,8686,7,4,0,0,8686,8687,7,15,0,0,8687,8688,7,6,0,0,8688,8689,5,95,0,0,8689,8690,7,3,0,0,8690,8691,7,4,0,0,8691,8692,7,23,0,0,8692,8693,7,15,0,0,8693,8694,7,12,0,0,8694,1400,1,0,0,0,8695,8696,7,3,0,0,8696,8697,7,17,0,0,8697,8698,7,6,0,0,8698,8699,7,20,0,0,8699,8700,7,7,0,0,8700,8701,7,12,0,0,8701,8702,7,6,0,0,8702,8703,7,15,0,0,8703,8704,7,14,0,0,8704,8705,7,3,0,0,8705,8706,7,6,0,0,8706,8707,7,15,0,0,8707,8708,7,19,0,0,8708,8709,7,12,0,0,8709,8710,5,95,0,0,8710,8711,7,25,0,0,8711,8712,7,19,0,0,8712,8713,7,5,0,0,8713,8714,7,15,0,0,8714,8715,7,14,0,0,8715,8716,7,10,0,0,8716,8717,5,95,0,0,8717,8718,7,3,0,0,8718,8719,7,4,0,0,8719,8720,7,23,0,0,8720,8721,7,15,0,0,8721,8722,7,12,0,0,8722,1402,1,0,0,0,8723,8724,7,16,0,0,8724,8725,7,3,0,0,8725,8726,7,14,0,0,8726,8727,7,21,0,0,8727,8728,7,17,0,0,8728,8729,7,25,0,0,8729,8730,5,95,0,0,8730,8731,7,3,0,0,8731,8732,7,4,0,0,8732,8733,7,23,0,0,8733,8734,7,15,0,0,8734,8735,7,12,0,0,8735,1404,1,0,0,0,8736,8737,7,16,0,0,8737,8738,7,15,0,0,8738,8739,7,12,0,0,8739,8740,7,5,0,0,8740,8741,7,19,0,0,8741,8742,7,22,0,0,8742,8743,5,95,0,0,8743,8744,7,3,0,0,8744,8745,7,4,0,0,8745,8746,7,23,0,0,8746,8747,7,15,0,0,8747,8748,7,12,0,0,8748,1406,1,0,0,0,8749,8750,7,16,0,0,8750,8751,7,15,0,0,8751,8752,7,12,0,0,8752,8753,7,5,0,0,8753,8754,7,19,0,0,8754,8755,7,22,0,0,8755,8756,5,95,0,0,8756,8757,7,7,0,0,8757,8758,7,12,0,0,8758,8759,7,14,0,0,8759,8760,7,8,0,0,8760,8761,7,10,0,0,8761,8762,7,25,0,0,8762,8763,7,6,0,0,8763,8764,7,15,0,0,8764,8765,7,19,0,0,8765,8766,7,12,0,0,8766,8767,5,95,0,0,8767,8768,7,3,0,0,8768,8769,7,4,0,0,8769,8770,7,23,0,0,8770,8771,7,15,0,0,8771,8772,7,12,0,0,8772,1408,1,0,0,0,8773,8774,7,14,0,0,8774,8775,7,5,0,0,8775,8776,7,19,0,0,8776,8777,7,12,0,0,8777,8778,7,7,0,0,8778,8779,5,95,0,0,8779,8780,7,3,0,0,8780,8781,7,4,0,0,8781,8782,7,23,0,0,8782,8783,7,15,0,0,8783,8784,7,12,0,0,8784,1410,1,0,0,0,8785,8786,7,14,0,0,8786,8787,7,19,0,0,8787,8788,7,12,0,0,8788,8789,7,12,0,0,8789,8790,7,7,0,0,8790,8791,7,14,0,0,8791,8792,7,6,0,0,8792,8793,7,15,0,0,8793,8794,7,19,0,0,8794,8795,7,12,0,0,8795,8796,5,95,0,0,8796,8797,7,3,0,0,8797,8798,7,4,0,0,8798,8799,7,23,0,0,8799,8800,7,15,0,0,8800,8801,7,12,0,0,8801,1412,1,0,0,0,8802,8803,7,7,0,0,8803,8804,7,12,0,0,8804,8805,7,14,0,0,8805,8806,7,8,0,0,8806,8807,7,10,0,0,8807,8808,7,25,0,0,8808,8809,7,6,0,0,8809,8810,7,15,0,0,8810,8811,7,19,0,0,8811,8812,7,12,0,0,8812,8813,5,95,0,0,8813,8814,7,21,0,0,8814,8815,7,7,0,0,8815,8816,7,10,0,0,8816,8817,5,95,0,0,8817,8818,7,3,0,0,8818,8819,7,4,0,0,8819,8820,7,23,0,0,8820,8821,7,15,0,0,8821,8822,7,12,0,0,8822,1414,1,0,0,0,8823,8824,7,7,0,0,8824,8825,7,26,0,0,8825,8826,7,7,0,0,8826,8827,7,14,0,0,8827,8828,7,17,0,0,8828,8829,7,6,0,0,8829,8830,7,7,0,0,8830,1416,1,0,0,0,8831,8832,7,18,0,0,8832,8833,7,15,0,0,8833,8834,7,5,0,0,8834,8835,7,7,0,0,8835,1418,1,0,0,0,8836,8837,7,18,0,0,8837,8838,7,15,0,0,8838,8839,7,8,0,0,8839,8840,7,7,0,0,8840,8841,7,9,0,0,8841,8842,7,3,0,0,8842,8843,7,5,0,0,8843,8844,7,5,0,0,8844,8845,5,95,0,0,8845,8846,7,3,0,0,8846,8847,7,4,0,0,8847,8848,7,23,0,0,8848,8849,7,15,0,0,8849,8850,7,12,0,0,8850,1420,1,0,0,0,8851,8852,7,18,0,0,8852,8853,7,15,0,0,8853,8854,7,8,0,0,8854,8855,7,7,0,0,8855,8856,7,9,0,0,8856,8857,7,3,0,0,8857,8858,7,5,0,0,8858,8859,7,5,0,0,8859,8860,5,95,0,0,8860,8861,7,7,0,0,8861,8862,7,26,0,0,8862,8863,7,7,0,0,8863,8864,7,23,0,0,8864,8865,7,25,0,0,8865,8866,7,6,0,0,8866,1422,1,0,0,0,8867,8868,7,18,0,0,8868,8869,7,15,0,0,8869,8870,7,8,0,0,8870,8871,7,7,0,0,8871,8872,7,9,0,0,8872,8873,7,3,0,0,8873,8874,7,5,0,0,8874,8875,7,5,0,0,8875,8876,5,95,0,0,8876,8877,7,17,0,0,8877,8878,7,11,0,0,8878,8879,7,7,0,0,8879,8880,7,8,0,0,8880,1424,1,0,0,0,8881,8882,7,18,0,0,8882,8883,7,5,0,0,8883,8884,7,17,0,0,8884,8885,7,11,0,0,8885,8886,7,20,0,0,8886,8887,5,95,0,0,8887,8888,7,19,0,0,8888,8889,7,25,0,0,8889,8890,7,6,0,0,8890,8891,7,15,0,0,8891,8892,7,23,0,0,8892,8893,7,15,0,0,8893,8894,7,13,0,0,8894,8895,7,7,0,0,8895,8896,7,8,0,0,8896,8897,5,95,0,0,8897,8898,7,14,0,0,8898,8899,7,19,0,0,8899,8900,7,11,0,0,8900,8901,7,6,0,0,8901,8902,7,11,0,0,8902,1426,1,0,0,0,8903,8904,7,18,0,0,8904,8905,7,5,0,0,8905,8906,7,17,0,0,8906,8907,7,11,0,0,8907,8908,7,20,0,0,8908,8909,5,95,0,0,8909,8910,7,11,0,0,8910,8911,7,6,0,0,8911,8912,7,3,0,0,8912,8913,7,6,0,0,8913,8914,7,17,0,0,8914,8915,7,11,0,0,8915,1428,1,0,0,0,8916,8917,7,18,0,0,8917,8918,7,5,0,0,8918,8919,7,17,0,0,8919,8920,7,11,0,0,8920,8921,7,20,0,0,8921,8922,5,95,0,0,8922,8923,7,6,0,0,8923,8924,7,3,0,0,8924,8925,7,16,0,0,8925,8926,7,5,0,0,8926,8927,7,7,0,0,8927,8928,7,11,0,0,8928,1430,1,0,0,0,8929,8930,7,18,0,0,8930,8931,7,5,0,0,8931,8932,7,17,0,0,8932,8933,7,11,0,0,8933,8934,7,20,0,0,8934,8935,5,95,0,0,8935,8936,7,17,0,0,8936,8937,7,11,0,0,8937,8938,7,7,0,0,8938,8939,7,8,0,0,8939,8940,5,95,0,0,8940,8941,7,8,0,0,8941,8942,7,7,0,0,8942,8943,7,11,0,0,8943,8944,7,19,0,0,8944,8945,7,17,0,0,8945,8946,7,8,0,0,8946,8947,7,14,0,0,8947,8948,7,7,0,0,8948,8949,7,11,0,0,8949,1432,1,0,0,0,8950,8951,7,22,0,0,8951,8952,7,8,0,0,8952,8953,7,19,0,0,8953,8954,7,17,0,0,8954,8955,7,25,0,0,8955,8956,5,95,0,0,8956,8957,7,8,0,0,8957,8958,7,7,0,0,8958,8959,7,25,0,0,8959,8960,7,5,0,0,8960,8961,7,15,0,0,8961,8962,7,14,0,0,8962,8963,7,3,0,0,8963,8964,7,6,0,0,8964,8965,7,15,0,0,8965,8966,7,19,0,0,8966,8967,7,12,0,0,8967,8968,5,95,0,0,8968,8969,7,3,0,0,8969,8970,7,4,0,0,8970,8971,7,23,0,0,8971,8972,7,15,0,0,8972,8973,7,12,0,0,8973,1434,1,0,0,0,8974,8975,7,15,0,0,8975,8976,7,12,0,0,8976,8977,7,12,0,0,8977,8978,7,19,0,0,8978,8979,7,4,0,0,8979,8980,7,16,0,0,8980,8981,5,95,0,0,8981,8982,7,8,0,0,8982,8983,7,7,0,0,8983,8984,7,4,0,0,8984,8985,7,19,0,0,8985,8986,5,95,0,0,8986,8987,7,5,0,0,8987,8988,7,19,0,0,8988,8989,7,22,0,0,8989,8990,5,95,0,0,8990,8991,7,3,0,0,8991,8992,7,8,0,0,8992,8993,7,14,0,0,8993,8994,7,20,0,0,8994,8995,7,15,0,0,8995,8996,7,24,0,0,8996,8997,7,7,0,0,8997,1436,1,0,0,0,8998,8999,7,15,0,0,8999,9e3,7,12,0,0,9e3,9001,7,12,0,0,9001,9002,7,19,0,0,9002,9003,7,4,0,0,9003,9004,7,16,0,0,9004,9005,5,95,0,0,9005,9006,7,8,0,0,9006,9007,7,7,0,0,9007,9008,7,4,0,0,9008,9009,7,19,0,0,9009,9010,5,95,0,0,9010,9011,7,5,0,0,9011,9012,7,19,0,0,9012,9013,7,22,0,0,9013,9014,5,95,0,0,9014,9015,7,7,0,0,9015,9016,7,12,0,0,9016,9017,7,3,0,0,9017,9018,7,16,0,0,9018,9019,7,5,0,0,9019,9020,7,7,0,0,9020,1438,1,0,0,0,9021,9022,7,15,0,0,9022,9023,7,12,0,0,9023,9024,7,24,0,0,9024,9025,7,19,0,0,9025,9026,7,21,0,0,9026,9027,7,7,0,0,9027,1440,1,0,0,0,9028,9029,7,5,0,0,9029,9030,7,3,0,0,9030,9031,7,23,0,0,9031,9032,7,16,0,0,9032,9033,7,4,0,0,9033,9034,7,3,0,0,9034,1442,1,0,0,0,9035,9036,7,12,0,0,9036,9037,7,4,0,0,9037,9038,7,16,0,0,9038,9039,5,95,0,0,9039,9040,7,11,0,0,9040,9041,7,6,0,0,9041,9042,7,19,0,0,9042,9043,7,8,0,0,9043,9044,7,7,0,0,9044,9045,7,4,0,0,9045,9046,5,95,0,0,9046,9047,7,17,0,0,9047,9048,7,11,0,0,9048,9049,7,7,0,0,9049,9050,7,8,0,0,9050,1444,1,0,0,0,9051,9052,7,25,0,0,9052,9053,7,3,0,0,9053,9054,7,11,0,0,9054,9055,7,11,0,0,9055,9056,7,9,0,0,9056,9057,7,19,0,0,9057,9058,7,8,0,0,9058,9059,7,4,0,0,9059,9060,7,5,0,0,9060,9061,7,7,0,0,9061,9062,7,11,0,0,9062,9063,7,11,0,0,9063,9064,5,95,0,0,9064,9065,7,17,0,0,9065,9066,7,11,0,0,9066,9067,7,7,0,0,9067,9068,7,8,0,0,9068,9069,5,95,0,0,9069,9070,7,3,0,0,9070,9071,7,4,0,0,9071,9072,7,23,0,0,9072,9073,7,15,0,0,9073,9074,7,12,0,0,9074,1446,1,0,0,0,9075,9076,7,25,0,0,9076,9077,7,7,0,0,9077,9078,7,8,0,0,9078,9079,7,11,0,0,9079,9080,7,15,0,0,9080,9081,7,11,0,0,9081,9082,7,6,0,0,9082,9083,5,95,0,0,9083,9084,7,8,0,0,9084,9085,7,19,0,0,9085,9086,5,95,0,0,9086,9087,7,24,0,0,9087,9088,7,3,0,0,9088,9089,7,8,0,0,9089,9090,7,15,0,0,9090,9091,7,3,0,0,9091,9092,7,16,0,0,9092,9093,7,5,0,0,9093,9094,7,7,0,0,9094,9095,7,11,0,0,9095,9096,5,95,0,0,9096,9097,7,3,0,0,9097,9098,7,4,0,0,9098,9099,7,23,0,0,9099,9100,7,15,0,0,9100,9101,7,12,0,0,9101,1448,1,0,0,0,9102,9103,7,25,0,0,9103,9104,7,8,0,0,9104,9105,7,15,0,0,9105,9106,7,24,0,0,9106,9107,7,15,0,0,9107,9108,7,5,0,0,9108,9109,7,7,0,0,9109,9110,7,22,0,0,9110,9111,7,7,0,0,9111,9112,7,11,0,0,9112,1450,1,0,0,0,9113,9114,7,25,0,0,9114,9115,7,8,0,0,9115,9116,7,19,0,0,9116,9117,7,14,0,0,9117,9118,7,7,0,0,9118,9119,7,11,0,0,9119,9120,7,11,0,0,9120,1452,1,0,0,0,9121,9122,7,8,0,0,9122,9123,7,7,0,0,9123,9124,7,5,0,0,9124,9125,7,19,0,0,9125,9126,7,3,0,0,9126,9127,7,4,0,0,9127,1454,1,0,0,0,9128,9129,7,8,0,0,9129,9130,7,7,0,0,9130,9131,7,25,0,0,9131,9132,7,5,0,0,9132,9133,7,15,0,0,9133,9134,7,14,0,0,9134,9135,7,3,0,0,9135,9136,7,6,0,0,9136,9137,7,15,0,0,9137,9138,7,19,0,0,9138,9139,7,12,0,0,9139,9140,5,95,0,0,9140,9141,7,3,0,0,9141,9142,7,25,0,0,9142,9143,7,25,0,0,9143,9144,7,5,0,0,9144,9145,7,15,0,0,9145,9146,7,7,0,0,9146,9147,7,8,0,0,9147,1456,1,0,0,0,9148,9149,7,8,0,0,9149,9150,7,7,0,0,9150,9151,7,25,0,0,9151,9152,7,5,0,0,9152,9153,7,15,0,0,9153,9154,7,14,0,0,9154,9155,7,3,0,0,9155,9156,7,6,0,0,9156,9157,7,15,0,0,9157,9158,7,19,0,0,9158,9159,7,12,0,0,9159,9160,5,95,0,0,9160,9161,7,11,0,0,9161,9162,7,5,0,0,9162,9163,7,3,0,0,9163,9164,7,24,0,0,9164,9165,7,7,0,0,9165,9166,5,95,0,0,9166,9167,7,3,0,0,9167,9168,7,4,0,0,9168,9169,7,23,0,0,9169,9170,7,15,0,0,9170,9171,7,12,0,0,9171,1458,1,0,0,0,9172,9173,7,8,0,0,9173,9174,7,7,0,0,9174,9175,7,11,0,0,9175,9176,7,19,0,0,9176,9177,7,17,0,0,9177,9178,7,8,0,0,9178,9179,7,14,0,0,9179,9180,7,7,0,0,9180,9181,5,95,0,0,9181,9182,7,22,0,0,9182,9183,7,8,0,0,9183,9184,7,19,0,0,9184,9185,7,17,0,0,9185,9186,7,25,0,0,9186,9187,5,95,0,0,9187,9188,7,3,0,0,9188,9189,7,4,0,0,9189,9190,7,23,0,0,9190,9191,7,15,0,0,9191,9192,7,12,0,0,9192,1460,1,0,0,0,9193,9194,7,8,0,0,9194,9195,7,7,0,0,9195,9196,7,11,0,0,9196,9197,7,19,0,0,9197,9198,7,17,0,0,9198,9199,7,8,0,0,9199,9200,7,14,0,0,9200,9201,7,7,0,0,9201,9202,5,95,0,0,9202,9203,7,22,0,0,9203,9204,7,8,0,0,9204,9205,7,19,0,0,9205,9206,7,17,0,0,9206,9207,7,25,0,0,9207,9208,5,95,0,0,9208,9209,7,17,0,0,9209,9210,7,11,0,0,9210,9211,7,7,0,0,9211,9212,7,8,0,0,9212,1462,1,0,0,0,9213,9214,7,8,0,0,9214,9215,7,19,0,0,9215,9216,7,5,0,0,9216,9217,7,7,0,0,9217,9218,5,95,0,0,9218,9219,7,3,0,0,9219,9220,7,4,0,0,9220,9221,7,23,0,0,9221,9222,7,15,0,0,9222,9223,7,12,0,0,9223,1464,1,0,0,0,9224,9225,7,8,0,0,9225,9226,7,19,0,0,9226,9227,7,17,0,0,9227,9228,7,6,0,0,9228,9229,7,15,0,0,9229,9230,7,12,0,0,9230,9231,7,7,0,0,9231,1466,1,0,0,0,9232,9233,7,11,0,0,9233,9234,5,51,0,0,9234,1468,1,0,0,0,9235,9236,7,11,0,0,9236,9237,7,7,0,0,9237,9238,7,8,0,0,9238,9239,7,24,0,0,9239,9240,7,15,0,0,9240,9241,7,14,0,0,9241,9242,7,7,0,0,9242,9243,5,95,0,0,9243,9244,7,14,0,0,9244,9245,7,19,0,0,9245,9246,7,12,0,0,9246,9247,7,12,0,0,9247,9248,7,7,0,0,9248,9249,7,14,0,0,9249,9250,7,6,0,0,9250,9251,7,15,0,0,9251,9252,7,19,0,0,9252,9253,7,12,0,0,9253,9254,5,95,0,0,9254,9255,7,3,0,0,9255,9256,7,4,0,0,9256,9257,7,23,0,0,9257,9258,7,15,0,0,9258,9259,7,12,0,0,9259,1470,1,0,0,0,9260,9262,3,2289,1144,0,9261,9260,1,0,0,0,9261,9262,1,0,0,0,9262,9263,1,0,0,0,9263,9264,7,11,0,0,9264,9265,7,7,0,0,9265,9266,7,11,0,0,9266,9267,7,11,0,0,9267,9268,7,15,0,0,9268,9269,7,19,0,0,9269,9270,7,12,0,0,9270,9271,5,95,0,0,9271,9272,7,24,0,0,9272,9273,7,3,0,0,9273,9274,7,8,0,0,9274,9275,7,15,0,0,9275,9276,7,3,0,0,9276,9277,7,16,0,0,9277,9278,7,5,0,0,9278,9279,7,7,0,0,9279,9280,7,11,0,0,9280,9281,5,95,0,0,9281,9282,7,3,0,0,9282,9283,7,4,0,0,9283,9284,7,23,0,0,9284,9285,7,15,0,0,9285,9286,7,12,0,0,9286,9288,1,0,0,0,9287,9289,3,2289,1144,0,9288,9287,1,0,0,0,9288,9289,1,0,0,0,9289,1472,1,0,0,0,9290,9291,7,11,0,0,9291,9292,7,7,0,0,9292,9293,7,6,0,0,9293,9294,5,95,0,0,9294,9295,7,17,0,0,9295,9296,7,11,0,0,9296,9297,7,7,0,0,9297,9298,7,8,0,0,9298,9299,5,95,0,0,9299,9300,7,15,0,0,9300,9301,7,4,0,0,9301,1474,1,0,0,0,9302,9303,7,11,0,0,9303,9304,7,20,0,0,9304,9305,7,19,0,0,9305,9306,7,9,0,0,9306,9307,5,95,0,0,9307,9308,7,8,0,0,9308,9309,7,19,0,0,9309,9310,7,17,0,0,9310,9311,7,6,0,0,9311,9312,7,15,0,0,9312,9313,7,12,0,0,9313,9314,7,7,0,0,9314,1476,1,0,0,0,9315,9316,7,11,0,0,9316,9317,7,20,0,0,9317,9318,7,17,0,0,9318,9319,7,6,0,0,9319,9320,7,4,0,0,9320,9321,7,19,0,0,9321,9322,7,9,0,0,9322,9323,7,12,0,0,9323,1478,1,0,0,0,9324,9325,7,11,0,0,9325,9326,7,17,0,0,9326,9327,7,25,0,0,9327,9328,7,7,0,0,9328,9329,7,8,0,0,9329,1480,1,0,0,0,9330,9331,7,11,0,0,9331,9332,7,10,0,0,9332,9333,7,11,0,0,9333,9334,7,6,0,0,9334,9335,7,7,0,0,9335,9336,7,23,0,0,9336,9337,5,95,0,0,9337,9338,7,24,0,0,9338,9339,7,3,0,0,9339,9340,7,8,0,0,9340,9341,7,15,0,0,9341,9342,7,3,0,0,9342,9343,7,16,0,0,9343,9344,7,5,0,0,9344,9345,7,7,0,0,9345,9346,7,11,0,0,9346,9347,5,95,0,0,9347,9348,7,3,0,0,9348,9349,7,4,0,0,9349,9350,7,23,0,0,9350,9351,7,15,0,0,9351,9352,7,12,0,0,9352,1482,1,0,0,0,9353,9354,7,6,0,0,9354,9355,7,3,0,0,9355,9356,7,16,0,0,9356,9357,7,5,0,0,9357,9358,7,7,0,0,9358,9359,7,11,0,0,9359,1484,1,0,0,0,9360,9361,7,6,0,0,9361,9362,7,3,0,0,9362,9363,7,16,0,0,9363,9364,7,5,0,0,9364,9365,7,7,0,0,9365,9366,5,95,0,0,9366,9367,7,7,0,0,9367,9368,7,12,0,0,9368,9369,7,14,0,0,9369,9370,7,8,0,0,9370,9371,7,10,0,0,9371,9372,7,25,0,0,9372,9373,7,6,0,0,9373,9374,7,15,0,0,9374,9375,7,19,0,0,9375,9376,7,12,0,0,9376,9377,5,95,0,0,9377,9378,7,3,0,0,9378,9379,7,4,0,0,9379,9380,7,23,0,0,9380,9381,7,15,0,0,9381,9382,7,12,0,0,9382,1486,1,0,0,0,9383,9384,7,24,0,0,9384,9385,7,7,0,0,9385,9386,7,8,0,0,9386,9387,7,11,0,0,9387,9388,7,15,0,0,9388,9389,7,19,0,0,9389,9390,7,12,0,0,9390,9391,5,95,0,0,9391,9392,7,6,0,0,9392,9393,7,19,0,0,9393,9394,7,21,0,0,9394,9395,7,7,0,0,9395,9396,7,12,0,0,9396,9397,5,95,0,0,9397,9398,7,3,0,0,9398,9399,7,4,0,0,9399,9400,7,23,0,0,9400,9401,7,15,0,0,9401,9402,7,12,0,0,9402,1488,1,0,0,0,9403,9404,7,26,0,0,9404,9405,7,3,0,0,9405,9406,5,95,0,0,9406,9407,7,8,0,0,9407,9408,7,7,0,0,9408,9409,7,14,0,0,9409,9410,7,19,0,0,9410,9411,7,24,0,0,9411,9412,7,7,0,0,9412,9413,7,8,0,0,9413,9414,5,95,0,0,9414,9415,7,3,0,0,9415,9416,7,4,0,0,9416,9417,7,23,0,0,9417,9418,7,15,0,0,9418,9419,7,12,0,0,9419,1490,1,0,0,0,9420,9421,7,3,0,0,9421,9422,7,8,0,0,9422,9423,7,23,0,0,9423,9424,7,11,0,0,9424,9425,7,14,0,0,9425,9426,7,15,0,0,9426,9427,7,15,0,0,9427,9428,5,56,0,0,9428,1492,1,0,0,0,9429,9430,7,3,0,0,9430,9431,7,11,0,0,9431,9432,7,14,0,0,9432,9433,7,15,0,0,9433,9434,7,15,0,0,9434,1494,1,0,0,0,9435,9436,7,16,0,0,9436,9437,7,15,0,0,9437,9438,7,22,0,0,9438,9439,5,53,0,0,9439,1496,1,0,0,0,9440,9441,7,14,0,0,9441,9442,7,25,0,0,9442,9443,5,49,0,0,9443,9444,5,50,0,0,9444,9445,5,53,0,0,9445,9446,5,48,0,0,9446,1498,1,0,0,0,9447,9448,7,14,0,0,9448,9449,7,25,0,0,9449,9450,5,49,0,0,9450,9451,5,50,0,0,9451,9452,5,53,0,0,9452,9453,5,49,0,0,9453,1500,1,0,0,0,9454,9455,7,14,0,0,9455,9456,7,25,0,0,9456,9457,5,49,0,0,9457,9458,5,50,0,0,9458,9459,5,53,0,0,9459,9460,5,54,0,0,9460,1502,1,0,0,0,9461,9462,7,14,0,0,9462,9463,7,25,0,0,9463,9464,5,49,0,0,9464,9465,5,50,0,0,9465,9466,5,53,0,0,9466,9467,5,55,0,0,9467,1504,1,0,0,0,9468,9469,7,14,0,0,9469,9470,7,25,0,0,9470,9471,5,56,0,0,9471,9472,5,53,0,0,9472,9473,5,48,0,0,9473,1506,1,0,0,0,9474,9475,7,14,0,0,9475,9476,7,25,0,0,9476,9477,5,56,0,0,9477,9478,5,53,0,0,9478,9479,5,50,0,0,9479,1508,1,0,0,0,9480,9481,7,14,0,0,9481,9482,7,25,0,0,9482,9483,5,56,0,0,9483,9484,5,54,0,0,9484,9485,5,54,0,0,9485,1510,1,0,0,0,9486,9487,7,14,0,0,9487,9488,7,25,0,0,9488,9489,5,57,0,0,9489,9490,5,51,0,0,9490,9491,5,50,0,0,9491,1512,1,0,0,0,9492,9493,7,4,0,0,9493,9494,7,7,0,0,9494,9495,7,14,0,0,9495,9496,5,56,0,0,9496,1514,1,0,0,0,9497,9498,7,7,0,0,9498,9499,7,17,0,0,9499,9500,7,14,0,0,9500,9501,7,27,0,0,9501,9502,7,25,0,0,9502,9503,7,23,0,0,9503,9504,7,11,0,0,9504,1516,1,0,0,0,9505,9506,7,7,0,0,9506,9507,7,17,0,0,9507,9508,7,14,0,0,9508,9509,7,21,0,0,9509,9510,7,8,0,0,9510,1518,1,0,0,0,9511,9512,7,22,0,0,9512,9513,7,16,0,0,9513,9514,5,49,0,0,9514,9515,5,56,0,0,9515,9516,5,48,0,0,9516,9517,5,51,0,0,9517,9518,5,48,0,0,9518,1520,1,0,0,0,9519,9520,7,22,0,0,9520,9521,7,16,0,0,9521,9522,5,50,0,0,9522,9523,5,51,0,0,9523,9524,5,49,0,0,9524,9525,5,50,0,0,9525,1522,1,0,0,0,9526,9527,7,22,0,0,9527,9528,7,16,0,0,9528,9529,7,21,0,0,9529,1524,1,0,0,0,9530,9531,7,22,0,0,9531,9532,7,7,0,0,9532,9533,7,19,0,0,9533,9534,7,11,0,0,9534,9535,7,6,0,0,9535,9536,7,4,0,0,9536,9537,5,56,0,0,9537,1526,1,0,0,0,9538,9539,7,22,0,0,9539,9540,7,8,0,0,9540,9541,7,7,0,0,9541,9542,7,7,0,0,9542,9543,7,21,0,0,9543,1528,1,0,0,0,9544,9545,7,20,0,0,9545,9546,7,7,0,0,9546,9547,7,16,0,0,9547,9548,7,8,0,0,9548,9549,7,7,0,0,9549,9550,7,9,0,0,9550,1530,1,0,0,0,9551,9552,7,20,0,0,9552,9553,7,25,0,0,9553,9554,5,56,0,0,9554,1532,1,0,0,0,9555,9556,7,21,0,0,9556,9557,7,7,0,0,9557,9558,7,10,0,0,9558,9559,7,16,0,0,9559,9560,7,14,0,0,9560,9561,7,11,0,0,9561,9562,5,50,0,0,9562,1534,1,0,0,0,9563,9564,7,21,0,0,9564,9565,7,19,0,0,9565,9566,7,15,0,0,9566,9567,5,56,0,0,9567,9568,7,8,0,0,9568,1536,1,0,0,0,9569,9570,7,21,0,0,9570,9571,7,19,0,0,9571,9572,7,15,0,0,9572,9573,5,56,0,0,9573,9574,7,17,0,0,9574,1538,1,0,0,0,9575,9576,7,5,0,0,9576,9577,7,3,0,0,9577,9578,7,6,0,0,9578,9579,7,15,0,0,9579,9580,7,12,0,0,9580,9581,5,49,0,0,9581,1540,1,0,0,0,9582,9583,7,5,0,0,9583,9584,7,3,0,0,9584,9585,7,6,0,0,9585,9586,7,15,0,0,9586,9587,7,12,0,0,9587,9588,5,50,0,0,9588,1542,1,0,0,0,9589,9590,7,5,0,0,9590,9591,7,3,0,0,9591,9592,7,6,0,0,9592,9593,7,15,0,0,9593,9594,7,12,0,0,9594,9595,5,53,0,0,9595,1544,1,0,0,0,9596,9597,7,5,0,0,9597,9598,7,3,0,0,9598,9599,7,6,0,0,9599,9600,7,15,0,0,9600,9601,7,12,0,0,9601,9602,5,55,0,0,9602,1546,1,0,0,0,9603,9604,7,23,0,0,9604,9605,7,3,0,0,9605,9606,7,14,0,0,9606,9607,7,14,0,0,9607,9608,7,7,0,0,9608,1548,1,0,0,0,9609,9610,7,23,0,0,9610,9611,7,3,0,0,9611,9612,7,14,0,0,9612,9613,7,8,0,0,9613,9614,7,19,0,0,9614,9615,7,23,0,0,9615,9616,7,3,0,0,9616,9617,7,12,0,0,9617,1550,1,0,0,0,9618,9619,7,11,0,0,9619,9620,7,27,0,0,9620,9621,7,15,0,0,9621,9622,7,11,0,0,9622,1552,1,0,0,0,9623,9624,7,11,0,0,9624,9625,7,9,0,0,9625,9626,7,7,0,0,9626,9627,5,55,0,0,9627,1554,1,0,0,0,9628,9629,7,6,0,0,9629,9630,7,15,0,0,9630,9631,7,11,0,0,9631,9632,5,54,0,0,9632,9633,5,50,0,0,9633,9634,5,48,0,0,9634,1556,1,0,0,0,9635,9636,7,17,0,0,9636,9637,7,14,0,0,9637,9638,7,11,0,0,9638,9639,5,50,0,0,9639,1558,1,0,0,0,9640,9641,7,17,0,0,9641,9642,7,27,0,0,9642,9643,7,15,0,0,9643,9644,7,11,0,0,9644,1560,1,0,0,0,9645,9646,7,17,0,0,9646,9647,7,6,0,0,9647,9648,7,18,0,0,9648,9649,5,49,0,0,9649,9650,5,54,0,0,9650,1562,1,0,0,0,9651,9652,7,17,0,0,9652,9653,7,6,0,0,9653,9654,7,18,0,0,9654,9655,5,49,0,0,9655,9656,5,54,0,0,9656,9657,7,5,0,0,9657,9658,7,7,0,0,9658,1564,1,0,0,0,9659,9660,7,17,0,0,9660,9661,7,6,0,0,9661,9662,7,18,0,0,9662,9663,5,51,0,0,9663,9664,5,50,0,0,9664,1566,1,0,0,0,9665,9666,7,17,0,0,9666,9667,7,6,0,0,9667,9668,7,18,0,0,9668,9669,5,56,0,0,9669,1568,1,0,0,0,9670,9671,7,17,0,0,9671,9672,7,6,0,0,9672,9673,7,18,0,0,9673,9674,5,56,0,0,9674,9675,7,23,0,0,9675,9676,7,16,0,0,9676,9677,5,51,0,0,9677,1570,1,0,0,0,9678,9679,7,17,0,0,9679,9680,7,6,0,0,9680,9681,7,18,0,0,9681,9682,5,56,0,0,9682,9683,7,23,0,0,9683,9684,7,16,0,0,9684,9685,5,52,0,0,9685,1572,1,0,0,0,9686,9687,7,3,0,0,9687,9688,7,8,0,0,9688,9689,7,14,0,0,9689,9690,7,20,0,0,9690,9691,7,15,0,0,9691,9692,7,24,0,0,9692,9693,7,7,0,0,9693,1574,1,0,0,0,9694,9695,7,16,0,0,9695,9696,7,5,0,0,9696,9697,7,3,0,0,9697,9698,7,14,0,0,9698,9699,7,21,0,0,9699,9700,7,20,0,0,9700,9701,7,19,0,0,9701,9702,7,5,0,0,9702,9703,7,7,0,0,9703,1576,1,0,0,0,9704,9705,7,14,0,0,9705,9706,7,11,0,0,9706,9707,7,24,0,0,9707,1578,1,0,0,0,9708,9709,7,18,0,0,9709,9710,7,7,0,0,9710,9711,7,4,0,0,9711,9712,7,7,0,0,9712,9713,7,8,0,0,9713,9714,7,3,0,0,9714,9715,7,6,0,0,9715,9716,7,7,0,0,9716,9717,7,4,0,0,9717,1580,1,0,0,0,9718,9719,7,15,0,0,9719,9720,7,12,0,0,9720,9721,7,12,0,0,9721,9722,7,19,0,0,9722,9723,7,4,0,0,9723,9724,7,16,0,0,9724,1582,1,0,0,0,9725,9726,7,23,0,0,9726,9727,7,7,0,0,9727,9728,7,23,0,0,9728,9729,7,19,0,0,9729,9730,7,8,0,0,9730,9731,7,10,0,0,9731,1584,1,0,0,0,9732,9733,7,23,0,0,9733,9734,7,8,0,0,9734,9735,7,22,0,0,9735,9736,5,95,0,0,9736,9737,7,23,0,0,9737,9738,7,10,0,0,9738,9739,7,15,0,0,9739,9740,7,11,0,0,9740,9741,7,3,0,0,9741,9742,7,23,0,0,9742,1586,1,0,0,0,9743,9744,7,23,0,0,9744,9745,7,10,0,0,9745,9746,7,15,0,0,9746,9747,7,11,0,0,9747,9748,7,3,0,0,9748,9749,7,23,0,0,9749,1588,1,0,0,0,9750,9751,7,12,0,0,9751,9752,7,4,0,0,9752,9753,7,16,0,0,9753,1590,1,0,0,0,9754,9755,7,12,0,0,9755,9756,7,4,0,0,9756,9757,7,16,0,0,9757,9758,7,14,0,0,9758,9759,7,5,0,0,9759,9760,7,17,0,0,9760,9761,7,11,0,0,9761,9762,7,6,0,0,9762,9763,7,7,0,0,9763,9764,7,8,0,0,9764,1592,1,0,0,0,9765,9766,7,25,0,0,9766,9767,7,7,0,0,9767,9768,7,8,0,0,9768,9769,7,18,0,0,9769,9770,7,19,0,0,9770,9771,7,8,0,0,9771,9772,7,23,0,0,9772,9773,7,3,0,0,9773,9774,7,12,0,0,9774,9775,7,14,0,0,9775,9776,7,7,0,0,9776,9777,5,95,0,0,9777,9778,7,11,0,0,9778,9779,7,14,0,0,9779,9780,7,20,0,0,9780,9781,7,7,0,0,9781,9782,7,23,0,0,9782,9783,7,3,0,0,9783,1594,1,0,0,0,9784,9785,7,6,0,0,9785,9786,7,19,0,0,9786,9787,7,21,0,0,9787,9788,7,17,0,0,9788,9789,7,4,0,0,9789,9790,7,16,0,0,9790,1596,1,0,0,0,9791,9792,7,8,0,0,9792,9793,7,7,0,0,9793,9794,7,25,0,0,9794,9795,7,7,0,0,9795,9796,7,3,0,0,9796,9797,7,6,0,0,9797,9798,7,3,0,0,9798,9799,7,16,0,0,9799,9800,7,5,0,0,9800,9801,7,7,0,0,9801,1598,1,0,0,0,9802,9803,7,14,0,0,9803,9804,7,19,0,0,9804,9805,7,23,0,0,9805,9806,7,23,0,0,9806,9807,7,15,0,0,9807,9808,7,6,0,0,9808,9809,7,6,0,0,9809,9810,7,7,0,0,9810,9811,7,4,0,0,9811,1600,1,0,0,0,9812,9813,7,17,0,0,9813,9814,7,12,0,0,9814,9815,7,14,0,0,9815,9816,7,19,0,0,9816,9817,7,23,0,0,9817,9818,7,23,0,0,9818,9819,7,15,0,0,9819,9820,7,6,0,0,9820,9821,7,6,0,0,9821,9822,7,7,0,0,9822,9823,7,4,0,0,9823,1602,1,0,0,0,9824,9825,7,11,0,0,9825,9826,7,7,0,0,9826,9827,7,8,0,0,9827,9828,7,15,0,0,9828,9829,7,3,0,0,9829,9830,7,5,0,0,9830,9831,7,15,0,0,9831,9832,7,13,0,0,9832,9833,7,3,0,0,9833,9834,7,16,0,0,9834,9835,7,5,0,0,9835,9836,7,7,0,0,9836,1604,1,0,0,0,9837,9838,7,22,0,0,9838,9839,7,7,0,0,9839,9840,7,19,0,0,9840,9841,7,23,0,0,9841,9842,7,7,0,0,9842,9843,7,6,0,0,9843,9844,7,8,0,0,9844,9845,7,10,0,0,9845,9846,7,14,0,0,9846,9847,7,19,0,0,9847,9848,7,5,0,0,9848,9849,7,5,0,0,9849,9850,7,7,0,0,9850,9851,7,14,0,0,9851,9852,7,6,0,0,9852,9853,7,15,0,0,9853,9854,7,19,0,0,9854,9855,7,12,0,0,9855,1606,1,0,0,0,9856,9857,7,22,0,0,9857,9858,7,7,0,0,9858,9859,7,19,0,0,9859,9860,7,23,0,0,9860,9861,7,14,0,0,9861,9862,7,19,0,0,9862,9863,7,5,0,0,9863,9864,7,5,0,0,9864,9865,7,7,0,0,9865,9866,7,14,0,0,9866,9867,7,6,0,0,9867,9868,7,15,0,0,9868,9869,7,19,0,0,9869,9870,7,12,0,0,9870,1608,1,0,0,0,9871,9872,7,22,0,0,9872,9873,7,7,0,0,9873,9874,7,19,0,0,9874,9875,7,23,0,0,9875,9876,7,7,0,0,9876,9877,7,6,0,0,9877,9878,7,8,0,0,9878,9879,7,10,0,0,9879,1610,1,0,0,0,9880,9881,7,5,0,0,9881,9882,7,15,0,0,9882,9883,7,12,0,0,9883,9884,7,7,0,0,9884,9885,7,11,0,0,9885,9886,7,6,0,0,9886,9887,7,8,0,0,9887,9888,7,15,0,0,9888,9889,7,12,0,0,9889,9890,7,22,0,0,9890,1612,1,0,0,0,9891,9892,7,23,0,0,9892,9893,7,17,0,0,9893,9894,7,5,0,0,9894,9895,7,6,0,0,9895,9896,7,15,0,0,9896,9897,7,5,0,0,9897,9898,7,15,0,0,9898,9899,7,12,0,0,9899,9900,7,7,0,0,9900,9901,7,11,0,0,9901,9902,7,6,0,0,9902,9903,7,8,0,0,9903,9904,7,15,0,0,9904,9905,7,12,0,0,9905,9906,7,22,0,0,9906,1614,1,0,0,0,9907,9908,7,23,0,0,9908,9909,7,17,0,0,9909,9910,7,5,0,0,9910,9911,7,6,0,0,9911,9912,7,15,0,0,9912,9913,7,25,0,0,9913,9914,7,19,0,0,9914,9915,7,15,0,0,9915,9916,7,12,0,0,9916,9917,7,6,0,0,9917,1616,1,0,0,0,9918,9919,7,23,0,0,9919,9920,7,17,0,0,9920,9921,7,5,0,0,9921,9922,7,6,0,0,9922,9923,7,15,0,0,9923,9924,7,25,0,0,9924,9925,7,19,0,0,9925,9926,7,5,0,0,9926,9927,7,10,0,0,9927,9928,7,22,0,0,9928,9929,7,19,0,0,9929,9930,7,12,0,0,9930,1618,1,0,0,0,9931,9932,7,25,0,0,9932,9933,7,19,0,0,9933,9934,7,15,0,0,9934,9935,7,12,0,0,9935,9936,7,6,0,0,9936,1620,1,0,0,0,9937,9938,7,25,0,0,9938,9939,7,19,0,0,9939,9940,7,5,0,0,9940,9941,7,10,0,0,9941,9942,7,22,0,0,9942,9943,7,19,0,0,9943,9944,7,12,0,0,9944,1622,1,0,0,0,9945,9946,7,3,0,0,9946,9947,7,16,0,0,9947,9948,7,11,0,0,9948,1624,1,0,0,0,9949,9950,7,3,0,0,9950,9951,7,14,0,0,9951,9952,7,19,0,0,9952,9953,7,11,0,0,9953,1626,1,0,0,0,9954,9955,7,3,0,0,9955,9956,7,4,0,0,9956,9957,7,4,0,0,9957,9958,7,4,0,0,9958,9959,7,3,0,0,9959,9960,7,6,0,0,9960,9961,7,7,0,0,9961,1628,1,0,0,0,9962,9963,7,3,0,0,9963,9964,7,4,0,0,9964,9965,7,4,0,0,9965,9966,7,6,0,0,9966,9967,7,15,0,0,9967,9968,7,23,0,0,9968,9969,7,7,0,0,9969,1630,1,0,0,0,9970,9971,7,3,0,0,9971,9972,7,7,0,0,9972,9973,7,11,0,0,9973,9974,5,95,0,0,9974,9975,7,4,0,0,9975,9976,7,7,0,0,9976,9977,7,14,0,0,9977,9978,7,8,0,0,9978,9979,7,10,0,0,9979,9980,7,25,0,0,9980,9981,7,6,0,0,9981,1632,1,0,0,0,9982,9983,7,3,0,0,9983,9984,7,7,0,0,9984,9985,7,11,0,0,9985,9986,5,95,0,0,9986,9987,7,7,0,0,9987,9988,7,12,0,0,9988,9989,7,14,0,0,9989,9990,7,8,0,0,9990,9991,7,10,0,0,9991,9992,7,25,0,0,9992,9993,7,6,0,0,9993,1634,1,0,0,0,9994,9995,7,3,0,0,9995,9996,7,8,0,0,9996,9997,7,7,0,0,9997,9998,7,3,0,0,9998,1636,1,0,0,0,9999,1e4,7,3,0,0,1e4,10001,7,11,0,0,10001,10002,7,16,0,0,10002,10003,7,15,0,0,10003,10004,7,12,0,0,10004,10005,7,3,0,0,10005,10006,7,8,0,0,10006,10007,7,10,0,0,10007,1638,1,0,0,0,10008,10009,7,3,0,0,10009,10010,7,11,0,0,10010,10011,7,15,0,0,10011,10012,7,12,0,0,10012,1640,1,0,0,0,10013,10014,7,3,0,0,10014,10015,7,11,0,0,10015,10016,7,6,0,0,10016,10017,7,7,0,0,10017,10018,7,26,0,0,10018,10019,7,6,0,0,10019,1642,1,0,0,0,10020,10021,7,3,0,0,10021,10022,7,11,0,0,10022,10023,7,9,0,0,10023,10024,7,21,0,0,10024,10025,7,16,0,0,10025,1644,1,0,0,0,10026,10027,7,3,0,0,10027,10028,7,11,0,0,10028,10029,7,9,0,0,10029,10030,7,21,0,0,10030,10031,7,6,0,0,10031,1646,1,0,0,0,10032,10033,7,3,0,0,10033,10034,7,11,0,0,10034,10035,7,10,0,0,10035,10036,7,23,0,0,10036,10037,7,23,0,0,10037,10038,7,7,0,0,10038,10039,7,6,0,0,10039,10040,7,8,0,0,10040,10041,7,15,0,0,10041,10042,7,14,0,0,10042,10043,5,95,0,0,10043,10044,7,4,0,0,10044,10045,7,7,0,0,10045,10046,7,14,0,0,10046,10047,7,8,0,0,10047,10048,7,10,0,0,10048,10049,7,25,0,0,10049,10050,7,6,0,0,10050,1648,1,0,0,0,10051,10052,7,3,0,0,10052,10053,7,11,0,0,10053,10054,7,10,0,0,10054,10055,7,23,0,0,10055,10056,7,23,0,0,10056,10057,7,7,0,0,10057,10058,7,6,0,0,10058,10059,7,8,0,0,10059,10060,7,15,0,0,10060,10061,7,14,0,0,10061,10062,5,95,0,0,10062,10063,7,4,0,0,10063,10064,7,7,0,0,10064,10065,7,8,0,0,10065,10066,7,15,0,0,10066,10067,7,24,0,0,10067,10068,7,7,0,0,10068,1650,1,0,0,0,10069,10070,7,3,0,0,10070,10071,7,11,0,0,10071,10072,7,10,0,0,10072,10073,7,23,0,0,10073,10074,7,23,0,0,10074,10075,7,7,0,0,10075,10076,7,6,0,0,10076,10077,7,8,0,0,10077,10078,7,15,0,0,10078,10079,7,14,0,0,10079,10080,5,95,0,0,10080,10081,7,7,0,0,10081,10082,7,12,0,0,10082,10083,7,14,0,0,10083,10084,7,8,0,0,10084,10085,7,10,0,0,10085,10086,7,25,0,0,10086,10087,7,6,0,0,10087,1652,1,0,0,0,10088,10089,7,3,0,0,10089,10090,7,11,0,0,10090,10091,7,10,0,0,10091,10092,7,23,0,0,10092,10093,7,23,0,0,10093,10094,7,7,0,0,10094,10095,7,6,0,0,10095,10096,7,8,0,0,10096,10097,7,15,0,0,10097,10098,7,14,0,0,10098,10099,5,95,0,0,10099,10100,7,11,0,0,10100,10101,7,15,0,0,10101,10102,7,22,0,0,10102,10103,7,12,0,0,10103,1654,1,0,0,0,10104,10105,7,3,0,0,10105,10106,7,11,0,0,10106,10107,7,10,0,0,10107,10108,7,23,0,0,10108,10109,7,23,0,0,10109,10110,7,7,0,0,10110,10111,7,6,0,0,10111,10112,7,8,0,0,10112,10113,7,15,0,0,10113,10114,7,14,0,0,10114,10115,5,95,0,0,10115,10116,7,24,0,0,10116,10117,7,7,0,0,10117,10118,7,8,0,0,10118,10119,7,15,0,0,10119,10120,7,18,0,0,10120,10121,7,10,0,0,10121,1656,1,0,0,0,10122,10123,7,3,0,0,10123,10124,7,6,0,0,10124,10125,7,3,0,0,10125,10126,7,12,0,0,10126,1658,1,0,0,0,10127,10128,7,3,0,0,10128,10129,7,6,0,0,10129,10130,7,3,0,0,10130,10131,7,12,0,0,10131,10132,5,50,0,0,10132,1660,1,0,0,0,10133,10134,7,16,0,0,10134,10135,7,7,0,0,10135,10136,7,12,0,0,10136,10137,7,14,0,0,10137,10138,7,20,0,0,10138,10139,7,23,0,0,10139,10140,7,3,0,0,10140,10141,7,8,0,0,10141,10142,7,21,0,0,10142,1662,1,0,0,0,10143,10144,7,16,0,0,10144,10145,7,15,0,0,10145,10146,7,12,0,0,10146,1664,1,0,0,0,10147,10148,7,16,0,0,10148,10149,7,15,0,0,10149,10150,7,6,0,0,10150,10151,5,95,0,0,10151,10152,7,14,0,0,10152,10153,7,19,0,0,10153,10154,7,17,0,0,10154,10155,7,12,0,0,10155,10156,7,6,0,0,10156,1666,1,0,0,0,10157,10158,7,16,0,0,10158,10159,7,15,0,0,10159,10160,7,6,0,0,10160,10161,5,95,0,0,10161,10162,7,5,0,0,10162,10163,7,7,0,0,10163,10164,7,12,0,0,10164,10165,7,22,0,0,10165,10166,7,6,0,0,10166,10167,7,20,0,0,10167,1668,1,0,0,0,10168,10169,7,16,0,0,10169,10170,7,17,0,0,10170,10171,7,18,0,0,10171,10172,7,18,0,0,10172,10173,7,7,0,0,10173,10174,7,8,0,0,10174,1670,1,0,0,0,10175,10176,7,14,0,0,10176,10177,7,3,0,0,10177,10178,7,6,0,0,10178,10179,7,3,0,0,10179,10180,7,5,0,0,10180,10181,7,19,0,0,10181,10182,7,22,0,0,10182,10183,5,95,0,0,10183,10184,7,12,0,0,10184,10185,7,3,0,0,10185,10186,7,23,0,0,10186,10187,7,7,0,0,10187,1672,1,0,0,0,10188,10189,7,14,0,0,10189,10190,7,7,0,0,10190,10191,7,15,0,0,10191,10192,7,5,0,0,10192,1674,1,0,0,0,10193,10194,7,14,0,0,10194,10195,7,7,0,0,10195,10196,7,15,0,0,10196,10197,7,5,0,0,10197,10198,7,15,0,0,10198,10199,7,12,0,0,10199,10200,7,22,0,0,10200,1676,1,0,0,0,10201,10202,7,14,0,0,10202,10203,7,7,0,0,10203,10204,7,12,0,0,10204,10205,7,6,0,0,10205,10206,7,8,0,0,10206,10207,7,19,0,0,10207,10208,7,15,0,0,10208,10209,7,4,0,0,10209,1678,1,0,0,0,10210,10211,7,14,0,0,10211,10212,7,20,0,0,10212,10213,7,3,0,0,10213,10214,7,8,0,0,10214,10215,7,3,0,0,10215,10216,7,14,0,0,10216,10217,7,6,0,0,10217,10218,7,7,0,0,10218,10219,7,8,0,0,10219,10220,5,95,0,0,10220,10221,7,5,0,0,10221,10222,7,7,0,0,10222,10223,7,12,0,0,10223,10224,7,22,0,0,10224,10225,7,6,0,0,10225,10226,7,20,0,0,10226,1680,1,0,0,0,10227,10228,7,14,0,0,10228,10229,7,20,0,0,10229,10230,7,3,0,0,10230,10231,7,8,0,0,10231,10232,7,11,0,0,10232,10233,7,7,0,0,10233,10234,7,6,0,0,10234,1682,1,0,0,0,10235,10236,7,14,0,0,10236,10237,7,20,0,0,10237,10238,7,3,0,0,10238,10239,7,8,0,0,10239,10240,5,95,0,0,10240,10241,7,5,0,0,10241,10242,7,7,0,0,10242,10243,7,12,0,0,10243,10244,7,22,0,0,10244,10245,7,6,0,0,10245,10246,7,20,0,0,10246,1684,1,0,0,0,10247,10248,7,14,0,0,10248,10249,7,19,0,0,10249,10250,7,7,0,0,10250,10251,7,8,0,0,10251,10252,7,14,0,0,10252,10253,7,15,0,0,10253,10254,7,16,0,0,10254,10255,7,15,0,0,10255,10256,7,5,0,0,10256,10257,7,15,0,0,10257,10258,7,6,0,0,10258,10259,7,10,0,0,10259,1686,1,0,0,0,10260,10261,7,14,0,0,10261,10262,7,19,0,0,10262,10263,7,5,0,0,10263,10264,7,5,0,0,10264,10265,7,3,0,0,10265,10266,7,6,0,0,10266,10267,7,15,0,0,10267,10268,7,19,0,0,10268,10269,7,12,0,0,10269,1688,1,0,0,0,10270,10271,7,14,0,0,10271,10272,7,19,0,0,10272,10273,7,23,0,0,10273,10274,7,25,0,0,10274,10275,7,8,0,0,10275,10276,7,7,0,0,10276,10277,7,11,0,0,10277,10278,7,11,0,0,10278,1690,1,0,0,0,10279,10280,7,14,0,0,10280,10281,7,19,0,0,10281,10282,7,12,0,0,10282,10283,7,14,0,0,10283,10284,7,3,0,0,10284,10285,7,6,0,0,10285,1692,1,0,0,0,10286,10287,7,14,0,0,10287,10288,7,19,0,0,10288,10289,7,12,0,0,10289,10290,7,14,0,0,10290,10291,7,3,0,0,10291,10292,7,6,0,0,10292,10293,5,95,0,0,10293,10294,7,9,0,0,10294,10295,7,11,0,0,10295,1694,1,0,0,0,10296,10297,7,14,0,0,10297,10298,7,19,0,0,10298,10299,7,12,0,0,10299,10300,7,12,0,0,10300,10301,7,7,0,0,10301,10302,7,14,0,0,10302,10303,7,6,0,0,10303,10304,7,15,0,0,10304,10305,7,19,0,0,10305,10306,7,12,0,0,10306,10307,5,95,0,0,10307,10308,7,15,0,0,10308,10309,7,4,0,0,10309,1696,1,0,0,0,10310,10311,7,14,0,0,10311,10312,7,19,0,0,10312,10313,7,12,0,0,10313,10314,7,24,0,0,10314,1698,1,0,0,0,10315,10316,7,14,0,0,10316,10317,7,19,0,0,10317,10318,7,12,0,0,10318,10319,7,24,0,0,10319,10320,7,7,0,0,10320,10321,7,8,0,0,10321,10322,7,6,0,0,10322,10323,5,95,0,0,10323,10324,7,6,0,0,10324,10325,7,13,0,0,10325,1700,1,0,0,0,10326,10327,7,14,0,0,10327,10328,7,19,0,0,10328,10329,7,11,0,0,10329,1702,1,0,0,0,10330,10331,7,14,0,0,10331,10332,7,19,0,0,10332,10333,7,6,0,0,10333,1704,1,0,0,0,10334,10335,7,14,0,0,10335,10336,7,8,0,0,10336,10337,7,14,0,0,10337,10338,5,51,0,0,10338,10339,5,50,0,0,10339,1706,1,0,0,0,10340,10341,7,14,0,0,10341,10342,7,8,0,0,10342,10343,7,7,0,0,10343,10344,7,3,0,0,10344,10345,7,6,0,0,10345,10346,7,7,0,0,10346,10347,5,95,0,0,10347,10348,7,3,0,0,10348,10349,7,11,0,0,10349,10350,7,10,0,0,10350,10351,7,23,0,0,10351,10352,7,23,0,0,10352,10353,7,7,0,0,10353,10354,7,6,0,0,10354,10355,7,8,0,0,10355,10356,7,15,0,0,10356,10357,7,14,0,0,10357,10358,5,95,0,0,10358,10359,7,25,0,0,10359,10360,7,8,0,0,10360,10361,7,15,0,0,10361,10362,7,24,0,0,10362,10363,5,95,0,0,10363,10364,7,21,0,0,10364,10365,7,7,0,0,10365,10366,7,10,0,0,10366,1708,1,0,0,0,10367,10368,7,14,0,0,10368,10369,7,8,0,0,10369,10370,7,7,0,0,10370,10371,7,3,0,0,10371,10372,7,6,0,0,10372,10373,7,7,0,0,10373,10374,5,95,0,0,10374,10375,7,3,0,0,10375,10376,7,11,0,0,10376,10377,7,10,0,0,10377,10378,7,23,0,0,10378,10379,7,23,0,0,10379,10380,7,7,0,0,10380,10381,7,6,0,0,10381,10382,7,8,0,0,10382,10383,7,15,0,0,10383,10384,7,14,0,0,10384,10385,5,95,0,0,10385,10386,7,25,0,0,10386,10387,7,17,0,0,10387,10388,7,16,0,0,10388,10389,5,95,0,0,10389,10390,7,21,0,0,10390,10391,7,7,0,0,10391,10392,7,10,0,0,10392,1710,1,0,0,0,10393,10394,7,14,0,0,10394,10395,7,8,0,0,10395,10396,7,7,0,0,10396,10397,7,3,0,0,10397,10398,7,6,0,0,10398,10399,7,7,0,0,10399,10400,5,95,0,0,10400,10401,7,4,0,0,10401,10402,7,20,0,0,10402,10403,5,95,0,0,10403,10404,7,25,0,0,10404,10405,7,3,0,0,10405,10406,7,8,0,0,10406,10407,7,3,0,0,10407,10408,7,23,0,0,10408,10409,7,7,0,0,10409,10410,7,6,0,0,10410,10411,7,7,0,0,10411,10412,7,8,0,0,10412,10413,7,11,0,0,10413,1712,1,0,0,0,10414,10415,7,14,0,0,10415,10416,7,8,0,0,10416,10417,7,7,0,0,10417,10418,7,3,0,0,10418,10419,7,6,0,0,10419,10420,7,7,0,0,10420,10421,5,95,0,0,10421,10422,7,4,0,0,10422,10423,7,15,0,0,10423,10424,7,22,0,0,10424,10425,7,7,0,0,10425,10426,7,11,0,0,10426,10427,7,6,0,0,10427,1714,1,0,0,0,10428,10429,7,14,0,0,10429,10430,7,8,0,0,10430,10431,7,19,0,0,10431,10432,7,11,0,0,10432,10433,7,11,0,0,10433,10434,7,7,0,0,10434,10435,7,11,0,0,10435,1716,1,0,0,0,10436,10437,7,4,0,0,10437,10438,7,3,0,0,10438,10439,7,6,0,0,10439,10440,7,7,0,0,10440,10441,7,4,0,0,10441,10442,7,15,0,0,10442,10443,7,18,0,0,10443,10444,7,18,0,0,10444,1718,1,0,0,0,10445,10446,7,4,0,0,10446,10447,7,3,0,0,10447,10448,7,6,0,0,10448,10449,7,7,0,0,10449,10450,5,95,0,0,10450,10451,7,18,0,0,10451,10452,7,19,0,0,10452,10453,7,8,0,0,10453,10454,7,23,0,0,10454,10455,7,3,0,0,10455,10456,7,6,0,0,10456,1720,1,0,0,0,10457,10458,7,4,0,0,10458,10459,7,3,0,0,10459,10460,7,10,0,0,10460,10461,7,12,0,0,10461,10462,7,3,0,0,10462,10463,7,23,0,0,10463,10464,7,7,0,0,10464,1722,1,0,0,0,10465,10466,7,4,0,0,10466,10467,7,3,0,0,10467,10468,7,10,0,0,10468,10469,7,19,0,0,10469,10470,7,18,0,0,10470,10471,7,23,0,0,10471,10472,7,19,0,0,10472,10473,7,12,0,0,10473,10474,7,6,0,0,10474,10475,7,20,0,0,10475,1724,1,0,0,0,10476,10477,7,4,0,0,10477,10478,7,3,0,0,10478,10479,7,10,0,0,10479,10480,7,19,0,0,10480,10481,7,18,0,0,10481,10482,7,9,0,0,10482,10483,7,7,0,0,10483,10484,7,7,0,0,10484,10485,7,21,0,0,10485,1726,1,0,0,0,10486,10487,7,4,0,0,10487,10488,7,3,0,0,10488,10489,7,10,0,0,10489,10490,7,19,0,0,10490,10491,7,18,0,0,10491,10492,7,10,0,0,10492,10493,7,7,0,0,10493,10494,7,3,0,0,10494,10495,7,8,0,0,10495,1728,1,0,0,0,10496,10497,7,4,0,0,10497,10498,7,7,0,0,10498,10499,7,14,0,0,10499,10500,7,19,0,0,10500,10501,7,4,0,0,10501,10502,7,7,0,0,10502,1730,1,0,0,0,10503,10504,7,4,0,0,10504,10505,7,7,0,0,10505,10506,7,22,0,0,10506,10507,7,8,0,0,10507,10508,7,7,0,0,10508,10509,7,7,0,0,10509,10510,7,11,0,0,10510,1732,1,0,0,0,10511,10512,7,4,0,0,10512,10513,7,7,0,0,10513,10514,7,11,0,0,10514,10515,5,95,0,0,10515,10516,7,4,0,0,10516,10517,7,7,0,0,10517,10518,7,14,0,0,10518,10519,7,8,0,0,10519,10520,7,10,0,0,10520,10521,7,25,0,0,10521,10522,7,6,0,0,10522,1734,1,0,0,0,10523,10524,7,4,0,0,10524,10525,7,7,0,0,10525,10526,7,11,0,0,10526,10527,5,95,0,0,10527,10528,7,7,0,0,10528,10529,7,12,0,0,10529,10530,7,14,0,0,10530,10531,7,8,0,0,10531,10532,7,10,0,0,10532,10533,7,25,0,0,10533,10534,7,6,0,0,10534,1736,1,0,0,0,10535,10536,7,4,0,0,10536,10537,7,15,0,0,10537,10538,7,23,0,0,10538,10539,7,7,0,0,10539,10540,7,12,0,0,10540,10541,7,11,0,0,10541,10542,7,15,0,0,10542,10543,7,19,0,0,10543,10544,7,12,0,0,10544,1738,1,0,0,0,10545,10546,7,4,0,0,10546,10547,7,15,0,0,10547,10548,7,11,0,0,10548,10549,7,27,0,0,10549,10550,7,19,0,0,10550,10551,7,15,0,0,10551,10552,7,12,0,0,10552,10553,7,6,0,0,10553,1740,1,0,0,0,10554,10555,7,7,0,0,10555,10556,7,5,0,0,10556,10557,7,6,0,0,10557,1742,1,0,0,0,10558,10559,7,7,0,0,10559,10560,7,12,0,0,10560,10561,7,14,0,0,10561,10562,7,19,0,0,10562,10563,7,4,0,0,10563,10564,7,7,0,0,10564,1744,1,0,0,0,10565,10566,7,7,0,0,10566,10567,7,12,0,0,10567,10568,7,14,0,0,10568,10569,7,8,0,0,10569,10570,7,10,0,0,10570,10571,7,25,0,0,10571,10572,7,6,0,0,10572,1746,1,0,0,0,10573,10574,7,7,0,0,10574,10575,7,12,0,0,10575,10576,7,4,0,0,10576,10577,7,25,0,0,10577,10578,7,19,0,0,10578,10579,7,15,0,0,10579,10580,7,12,0,0,10580,10581,7,6,0,0,10581,1748,1,0,0,0,10582,10583,7,7,0,0,10583,10584,7,12,0,0,10584,10585,7,22,0,0,10585,10586,7,15,0,0,10586,10587,7,12,0,0,10587,10588,7,7,0,0,10588,10589,5,95,0,0,10589,10590,7,3,0,0,10590,10591,7,6,0,0,10591,10592,7,6,0,0,10592,10593,7,8,0,0,10593,10594,7,15,0,0,10594,10595,7,16,0,0,10595,10596,7,17,0,0,10596,10597,7,6,0,0,10597,10598,7,7,0,0,10598,1750,1,0,0,0,10599,10600,7,7,0,0,10600,10601,7,12,0,0,10601,10602,7,24,0,0,10602,10603,7,7,0,0,10603,10604,7,5,0,0,10604,10605,7,19,0,0,10605,10606,7,25,0,0,10606,10607,7,7,0,0,10607,1752,1,0,0,0,10608,10609,7,7,0,0,10609,10610,7,28,0,0,10610,10611,7,17,0,0,10611,10612,7,3,0,0,10612,10613,7,5,0,0,10613,10614,7,11,0,0,10614,1754,1,0,0,0,10615,10616,7,7,0,0,10616,10617,7,26,0,0,10617,10618,7,25,0,0,10618,1756,1,0,0,0,10619,10620,7,7,0,0,10620,10621,7,26,0,0,10621,10622,7,25,0,0,10622,10623,7,19,0,0,10623,10624,7,8,0,0,10624,10625,7,6,0,0,10625,10626,5,95,0,0,10626,10627,7,11,0,0,10627,10628,7,7,0,0,10628,10629,7,6,0,0,10629,1758,1,0,0,0,10630,10631,7,7,0,0,10631,10632,7,26,0,0,10632,10633,7,6,0,0,10633,10634,7,7,0,0,10634,10635,7,8,0,0,10635,10636,7,15,0,0,10636,10637,7,19,0,0,10637,10638,7,8,0,0,10638,10639,7,8,0,0,10639,10640,7,15,0,0,10640,10641,7,12,0,0,10641,10642,7,22,0,0,10642,1760,1,0,0,0,10643,10644,7,7,0,0,10644,10645,7,26,0,0,10645,10646,7,6,0,0,10646,10647,7,8,0,0,10647,10648,7,3,0,0,10648,10649,7,14,0,0,10649,10650,7,6,0,0,10650,10651,7,24,0,0,10651,10652,7,3,0,0,10652,10653,7,5,0,0,10653,10654,7,17,0,0,10654,10655,7,7,0,0,10655,1762,1,0,0,0,10656,10657,7,18,0,0,10657,10658,7,15,0,0,10658,10659,7,7,0,0,10659,10660,7,5,0,0,10660,10661,7,4,0,0,10661,1764,1,0,0,0,10662,10663,7,18,0,0,10663,10664,7,15,0,0,10664,10665,7,12,0,0,10665,10666,7,4,0,0,10666,10667,5,95,0,0,10667,10668,7,15,0,0,10668,10669,7,12,0,0,10669,10670,5,95,0,0,10670,10671,7,11,0,0,10671,10672,7,7,0,0,10672,10673,7,6,0,0,10673,1766,1,0,0,0,10674,10675,7,18,0,0,10675,10676,7,5,0,0,10676,10677,7,19,0,0,10677,10678,7,19,0,0,10678,10679,7,8,0,0,10679,1768,1,0,0,0,10680,10681,7,18,0,0,10681,10682,7,19,0,0,10682,10683,7,8,0,0,10683,10684,7,23,0,0,10684,10685,7,3,0,0,10685,10686,7,6,0,0,10686,1770,1,0,0,0,10687,10688,7,18,0,0,10688,10689,7,19,0,0,10689,10690,7,17,0,0,10690,10691,7,12,0,0,10691,10692,7,4,0,0,10692,10693,5,95,0,0,10693,10694,7,8,0,0,10694,10695,7,19,0,0,10695,10696,7,9,0,0,10696,10697,7,11,0,0,10697,1772,1,0,0,0,10698,10699,7,18,0,0,10699,10700,7,8,0,0,10700,10701,7,19,0,0,10701,10702,7,23,0,0,10702,10703,5,95,0,0,10703,10704,7,16,0,0,10704,10705,7,3,0,0,10705,10706,7,11,0,0,10706,10707,7,7,0,0,10707,10708,5,54,0,0,10708,10709,5,52,0,0,10709,1774,1,0,0,0,10710,10711,7,18,0,0,10711,10712,7,8,0,0,10712,10713,7,19,0,0,10713,10714,7,23,0,0,10714,10715,5,95,0,0,10715,10716,7,4,0,0,10716,10717,7,3,0,0,10717,10718,7,10,0,0,10718,10719,7,11,0,0,10719,1776,1,0,0,0,10720,10721,7,18,0,0,10721,10722,7,8,0,0,10722,10723,7,19,0,0,10723,10724,7,23,0,0,10724,10725,5,95,0,0,10725,10726,7,17,0,0,10726,10727,7,12,0,0,10727,10728,7,15,0,0,10728,10729,7,26,0,0,10729,10730,7,6,0,0,10730,10731,7,15,0,0,10731,10732,7,23,0,0,10732,10733,7,7,0,0,10733,1778,1,0,0,0,10734,10735,7,22,0,0,10735,10736,7,7,0,0,10736,10737,7,19,0,0,10737,10738,7,23,0,0,10738,10739,7,14,0,0,10739,10740,7,19,0,0,10740,10741,7,5,0,0,10741,10742,7,5,0,0,10742,10743,7,18,0,0,10743,10744,7,8,0,0,10744,10745,7,19,0,0,10745,10746,7,23,0,0,10746,10747,7,6,0,0,10747,10748,7,7,0,0,10748,10749,7,26,0,0,10749,10750,7,6,0,0,10750,1780,1,0,0,0,10751,10752,7,22,0,0,10752,10753,7,7,0,0,10753,10754,7,19,0,0,10754,10755,7,23,0,0,10755,10756,7,14,0,0,10756,10757,7,19,0,0,10757,10758,7,5,0,0,10758,10759,7,5,0,0,10759,10760,7,18,0,0,10760,10761,7,8,0,0,10761,10762,7,19,0,0,10762,10763,7,23,0,0,10763,10764,7,9,0,0,10764,10765,7,21,0,0,10765,10766,7,16,0,0,10766,1782,1,0,0,0,10767,10768,7,22,0,0,10768,10769,7,7,0,0,10769,10770,7,19,0,0,10770,10771,7,23,0,0,10771,10772,7,7,0,0,10772,10773,7,6,0,0,10773,10774,7,8,0,0,10774,10775,7,10,0,0,10775,10776,7,14,0,0,10776,10777,7,19,0,0,10777,10778,7,5,0,0,10778,10779,7,5,0,0,10779,10780,7,7,0,0,10780,10781,7,14,0,0,10781,10782,7,6,0,0,10782,10783,7,15,0,0,10783,10784,7,19,0,0,10784,10785,7,12,0,0,10785,10786,7,18,0,0,10786,10787,7,8,0,0,10787,10788,7,19,0,0,10788,10789,7,23,0,0,10789,10790,7,6,0,0,10790,10791,7,7,0,0,10791,10792,7,26,0,0,10792,10793,7,6,0,0,10793,1784,1,0,0,0,10794,10795,7,22,0,0,10795,10796,7,7,0,0,10796,10797,7,19,0,0,10797,10798,7,23,0,0,10798,10799,7,7,0,0,10799,10800,7,6,0,0,10800,10801,7,8,0,0,10801,10802,7,10,0,0,10802,10803,7,14,0,0,10803,10804,7,19,0,0,10804,10805,7,5,0,0,10805,10806,7,5,0,0,10806,10807,7,7,0,0,10807,10808,7,14,0,0,10808,10809,7,6,0,0,10809,10810,7,15,0,0,10810,10811,7,19,0,0,10811,10812,7,12,0,0,10812,10813,7,18,0,0,10813,10814,7,8,0,0,10814,10815,7,19,0,0,10815,10816,7,23,0,0,10816,10817,7,9,0,0,10817,10818,7,21,0,0,10818,10819,7,16,0,0,10819,1786,1,0,0,0,10820,10821,7,22,0,0,10821,10822,7,7,0,0,10822,10823,7,19,0,0,10823,10824,7,23,0,0,10824,10825,7,7,0,0,10825,10826,7,6,0,0,10826,10827,7,8,0,0,10827,10828,7,10,0,0,10828,10829,7,18,0,0,10829,10830,7,8,0,0,10830,10831,7,19,0,0,10831,10832,7,23,0,0,10832,10833,7,6,0,0,10833,10834,7,7,0,0,10834,10835,7,26,0,0,10835,10836,7,6,0,0,10836,1788,1,0,0,0,10837,10838,7,22,0,0,10838,10839,7,7,0,0,10839,10840,7,19,0,0,10840,10841,7,23,0,0,10841,10842,7,7,0,0,10842,10843,7,6,0,0,10843,10844,7,8,0,0,10844,10845,7,10,0,0,10845,10846,7,18,0,0,10846,10847,7,8,0,0,10847,10848,7,19,0,0,10848,10849,7,23,0,0,10849,10850,7,9,0,0,10850,10851,7,21,0,0,10851,10852,7,16,0,0,10852,1790,1,0,0,0,10853,10854,7,22,0,0,10854,10855,7,7,0,0,10855,10856,7,19,0,0,10856,10857,7,23,0,0,10857,10858,7,7,0,0,10858,10859,7,6,0,0,10859,10860,7,8,0,0,10860,10861,7,10,0,0,10861,10862,7,12,0,0,10862,1792,1,0,0,0,10863,10864,7,22,0,0,10864,10865,7,7,0,0,10865,10866,7,19,0,0,10866,10867,7,23,0,0,10867,10868,7,7,0,0,10868,10869,7,6,0,0,10869,10870,7,8,0,0,10870,10871,7,10,0,0,10871,10872,7,6,0,0,10872,10873,7,10,0,0,10873,10874,7,25,0,0,10874,10875,7,7,0,0,10875,1794,1,0,0,0,10876,10877,7,22,0,0,10877,10878,7,7,0,0,10878,10879,7,19,0,0,10879,10880,7,23,0,0,10880,10881,7,18,0,0,10881,10882,7,8,0,0,10882,10883,7,19,0,0,10883,10884,7,23,0,0,10884,10885,7,6,0,0,10885,10886,7,7,0,0,10886,10887,7,26,0,0,10887,10888,7,6,0,0,10888,1796,1,0,0,0,10889,10890,7,22,0,0,10890,10891,7,7,0,0,10891,10892,7,19,0,0,10892,10893,7,23,0,0,10893,10894,7,18,0,0,10894,10895,7,8,0,0,10895,10896,7,19,0,0,10896,10897,7,23,0,0,10897,10898,7,9,0,0,10898,10899,7,21,0,0,10899,10900,7,16,0,0,10900,1798,1,0,0,0,10901,10902,7,22,0,0,10902,10903,7,7,0,0,10903,10904,7,6,0,0,10904,10905,5,95,0,0,10905,10906,7,18,0,0,10906,10907,7,19,0,0,10907,10908,7,8,0,0,10908,10909,7,23,0,0,10909,10910,7,3,0,0,10910,10911,7,6,0,0,10911,1800,1,0,0,0,10912,10913,7,22,0,0,10913,10914,7,7,0,0,10914,10915,7,6,0,0,10915,10916,5,95,0,0,10916,10917,7,5,0,0,10917,10918,7,19,0,0,10918,10919,7,14,0,0,10919,10920,7,21,0,0,10920,1802,1,0,0,0,10921,10922,7,22,0,0,10922,10923,7,5,0,0,10923,10924,7,7,0,0,10924,10925,7,12,0,0,10925,10926,7,22,0,0,10926,10927,7,6,0,0,10927,10928,7,20,0,0,10928,1804,1,0,0,0,10929,10930,7,22,0,0,10930,10931,7,8,0,0,10931,10932,7,7,0,0,10932,10933,7,3,0,0,10933,10934,7,6,0,0,10934,10935,7,7,0,0,10935,10936,7,11,0,0,10936,10937,7,6,0,0,10937,1806,1,0,0,0,10938,10939,7,22,0,0,10939,10940,7,6,0,0,10940,10941,7,15,0,0,10941,10942,7,4,0,0,10942,10943,5,95,0,0,10943,10944,7,11,0,0,10944,10945,7,17,0,0,10945,10946,7,16,0,0,10946,10947,7,11,0,0,10947,10948,7,7,0,0,10948,10949,7,6,0,0,10949,1808,1,0,0,0,10950,10951,7,22,0,0,10951,10952,7,6,0,0,10952,10953,7,15,0,0,10953,10954,7,4,0,0,10954,10955,5,95,0,0,10955,10956,7,11,0,0,10956,10957,7,17,0,0,10957,10958,7,16,0,0,10958,10959,7,6,0,0,10959,10960,7,8,0,0,10960,10961,7,3,0,0,10961,10962,7,14,0,0,10962,10963,7,6,0,0,10963,1810,1,0,0,0,10964,10965,7,20,0,0,10965,10966,7,7,0,0,10966,10967,7,26,0,0,10967,1812,1,0,0,0,10968,10969,7,15,0,0,10969,10970,7,18,0,0,10970,10971,7,12,0,0,10971,10972,7,17,0,0,10972,10973,7,5,0,0,10973,10974,7,5,0,0,10974,1814,1,0,0,0,10975,10976,7,15,0,0,10976,10977,7,12,0,0,10977,10978,7,7,0,0,10978,10979,7,6,0,0,10979,10980,5,54,0,0,10980,10981,5,95,0,0,10981,10982,7,3,0,0,10982,10983,7,6,0,0,10983,10984,7,19,0,0,10984,10985,7,12,0,0,10985,1816,1,0,0,0,10986,10987,7,15,0,0,10987,10988,7,12,0,0,10988,10989,7,7,0,0,10989,10990,7,6,0,0,10990,10991,5,54,0,0,10991,10992,5,95,0,0,10992,10993,7,12,0,0,10993,10994,7,6,0,0,10994,10995,7,19,0,0,10995,10996,7,3,0,0,10996,1818,1,0,0,0,10997,10998,7,15,0,0,10998,10999,7,12,0,0,10999,11e3,7,7,0,0,11e3,11001,7,6,0,0,11001,11002,5,95,0,0,11002,11003,7,3,0,0,11003,11004,7,6,0,0,11004,11005,7,19,0,0,11005,11006,7,12,0,0,11006,1820,1,0,0,0,11007,11008,7,15,0,0,11008,11009,7,12,0,0,11009,11010,7,7,0,0,11010,11011,7,6,0,0,11011,11012,5,95,0,0,11012,11013,7,12,0,0,11013,11014,7,6,0,0,11014,11015,7,19,0,0,11015,11016,7,3,0,0,11016,1822,1,0,0,0,11017,11018,7,15,0,0,11018,11019,7,12,0,0,11019,11020,7,11,0,0,11020,11021,7,6,0,0,11021,11022,7,8,0,0,11022,1824,1,0,0,0,11023,11024,7,15,0,0,11024,11025,7,12,0,0,11025,11026,7,6,0,0,11026,11027,7,7,0,0,11027,11028,7,8,0,0,11028,11029,7,15,0,0,11029,11030,7,19,0,0,11030,11031,7,8,0,0,11031,11032,7,8,0,0,11032,11033,7,15,0,0,11033,11034,7,12,0,0,11034,11035,7,22,0,0,11035,11036,7,12,0,0,11036,1826,1,0,0,0,11037,11038,7,15,0,0,11038,11039,7,12,0,0,11039,11040,7,6,0,0,11040,11041,7,7,0,0,11041,11042,7,8,0,0,11042,11043,7,11,0,0,11043,11044,7,7,0,0,11044,11045,7,14,0,0,11045,11046,7,6,0,0,11046,11047,7,11,0,0,11047,1828,1,0,0,0,11048,11049,7,15,0,0,11049,11050,7,11,0,0,11050,11051,7,14,0,0,11051,11052,7,5,0,0,11052,11053,7,19,0,0,11053,11054,7,11,0,0,11054,11055,7,7,0,0,11055,11056,7,4,0,0,11056,1830,1,0,0,0,11057,11058,7,15,0,0,11058,11059,7,11,0,0,11059,11060,7,7,0,0,11060,11061,7,23,0,0,11061,11062,7,25,0,0,11062,11063,7,6,0,0,11063,11064,7,10,0,0,11064,1832,1,0,0,0,11065,11066,7,15,0,0,11066,11067,7,11,0,0,11067,11068,7,12,0,0,11068,11069,7,17,0,0,11069,11070,7,5,0,0,11070,11071,7,5,0,0,11071,1834,1,0,0,0,11072,11073,7,15,0,0,11073,11074,7,11,0,0,11074,11075,7,11,0,0,11075,11076,7,15,0,0,11076,11077,7,23,0,0,11077,11078,7,25,0,0,11078,11079,7,5,0,0,11079,11080,7,7,0,0,11080,1836,1,0,0,0,11081,11082,7,15,0,0,11082,11083,7,11,0,0,11083,11084,5,95,0,0,11084,11085,7,18,0,0,11085,11086,7,8,0,0,11086,11087,7,7,0,0,11087,11088,7,7,0,0,11088,11089,5,95,0,0,11089,11090,7,5,0,0,11090,11091,7,19,0,0,11091,11092,7,14,0,0,11092,11093,7,21,0,0,11093,1838,1,0,0,0,11094,11095,7,15,0,0,11095,11096,7,11,0,0,11096,11097,5,95,0,0,11097,11098,7,15,0,0,11098,11099,7,25,0,0,11099,11100,7,24,0,0,11100,11101,5,52,0,0,11101,1840,1,0,0,0,11102,11103,7,15,0,0,11103,11104,7,11,0,0,11104,11105,5,95,0,0,11105,11106,7,15,0,0,11106,11107,7,25,0,0,11107,11108,7,24,0,0,11108,11109,5,52,0,0,11109,11110,5,95,0,0,11110,11111,7,14,0,0,11111,11112,7,19,0,0,11112,11113,7,23,0,0,11113,11114,7,25,0,0,11114,11115,7,3,0,0,11115,11116,7,6,0,0,11116,1842,1,0,0,0,11117,11118,7,15,0,0,11118,11119,7,11,0,0,11119,11120,5,95,0,0,11120,11121,7,15,0,0,11121,11122,7,25,0,0,11122,11123,7,24,0,0,11123,11124,5,52,0,0,11124,11125,5,95,0,0,11125,11126,7,23,0,0,11126,11127,7,3,0,0,11127,11128,7,25,0,0,11128,11129,7,25,0,0,11129,11130,7,7,0,0,11130,11131,7,4,0,0,11131,1844,1,0,0,0,11132,11133,7,15,0,0,11133,11134,7,11,0,0,11134,11135,5,95,0,0,11135,11136,7,15,0,0,11136,11137,7,25,0,0,11137,11138,7,24,0,0,11138,11139,5,54,0,0,11139,1846,1,0,0,0,11140,11141,7,15,0,0,11141,11142,7,11,0,0,11142,11143,5,95,0,0,11143,11144,7,17,0,0,11144,11145,7,11,0,0,11145,11146,7,7,0,0,11146,11147,7,4,0,0,11147,11148,5,95,0,0,11148,11149,7,5,0,0,11149,11150,7,19,0,0,11150,11151,7,14,0,0,11151,11152,7,21,0,0,11152,1848,1,0,0,0,11153,11154,7,5,0,0,11154,11155,7,3,0,0,11155,11156,7,11,0,0,11156,11157,7,6,0,0,11157,11158,5,95,0,0,11158,11159,7,15,0,0,11159,11160,7,12,0,0,11160,11161,7,11,0,0,11161,11162,7,7,0,0,11162,11163,7,8,0,0,11163,11164,7,6,0,0,11164,11165,5,95,0,0,11165,11166,7,15,0,0,11166,11167,7,4,0,0,11167,1850,1,0,0,0,11168,11169,7,5,0,0,11169,11170,7,14,0,0,11170,11171,7,3,0,0,11171,11172,7,11,0,0,11172,11173,7,7,0,0,11173,1852,1,0,0,0,11174,11175,7,5,0,0,11175,11176,7,7,0,0,11176,11177,7,3,0,0,11177,11178,7,11,0,0,11178,11179,7,6,0,0,11179,1854,1,0,0,0,11180,11181,7,5,0,0,11181,11182,7,7,0,0,11182,11183,7,12,0,0,11183,11184,7,22,0,0,11184,11185,7,6,0,0,11185,11186,7,20,0,0,11186,1856,1,0,0,0,11187,11188,7,5,0,0,11188,11189,7,15,0,0,11189,11190,7,12,0,0,11190,11191,7,7,0,0,11191,11192,7,18,0,0,11192,11193,7,8,0,0,11193,11194,7,19,0,0,11194,11195,7,23,0,0,11195,11196,7,6,0,0,11196,11197,7,7,0,0,11197,11198,7,26,0,0,11198,11199,7,6,0,0,11199,1858,1,0,0,0,11200,11201,7,5,0,0,11201,11202,7,15,0,0,11202,11203,7,12,0,0,11203,11204,7,7,0,0,11204,11205,7,18,0,0,11205,11206,7,8,0,0,11206,11207,7,19,0,0,11207,11208,7,23,0,0,11208,11209,7,9,0,0,11209,11210,7,21,0,0,11210,11211,7,16,0,0,11211,1860,1,0,0,0,11212,11213,7,5,0,0,11213,11214,7,15,0,0,11214,11215,7,12,0,0,11215,11216,7,7,0,0,11216,11217,7,11,0,0,11217,11218,7,6,0,0,11218,11219,7,8,0,0,11219,11220,7,15,0,0,11220,11221,7,12,0,0,11221,11222,7,22,0,0,11222,11223,7,18,0,0,11223,11224,7,8,0,0,11224,11225,7,19,0,0,11225,11226,7,23,0,0,11226,11227,7,6,0,0,11227,11228,7,7,0,0,11228,11229,7,26,0,0,11229,11230,7,6,0,0,11230,1862,1,0,0,0,11231,11232,7,5,0,0,11232,11233,7,15,0,0,11233,11234,7,12,0,0,11234,11235,7,7,0,0,11235,11236,7,11,0,0,11236,11237,7,6,0,0,11237,11238,7,8,0,0,11238,11239,7,15,0,0,11239,11240,7,12,0,0,11240,11241,7,22,0,0,11241,11242,7,18,0,0,11242,11243,7,8,0,0,11243,11244,7,19,0,0,11244,11245,7,23,0,0,11245,11246,7,9,0,0,11246,11247,7,21,0,0,11247,11248,7,16,0,0,11248,1864,1,0,0,0,11249,11250,7,5,0,0,11250,11251,7,12,0,0,11251,1866,1,0,0,0,11252,11253,7,5,0,0,11253,11254,7,19,0,0,11254,11255,7,3,0,0,11255,11256,7,4,0,0,11256,11257,5,95,0,0,11257,11258,7,18,0,0,11258,11259,7,15,0,0,11259,11260,7,5,0,0,11260,11261,7,7,0,0,11261,1868,1,0,0,0,11262,11263,7,5,0,0,11263,11264,7,19,0,0,11264,11265,7,14,0,0,11265,11266,7,3,0,0,11266,11267,7,6,0,0,11267,11268,7,7,0,0,11268,1870,1,0,0,0,11269,11270,7,5,0,0,11270,11271,7,19,0,0,11271,11272,7,22,0,0,11272,1872,1,0,0,0,11273,11274,7,5,0,0,11274,11275,7,19,0,0,11275,11276,7,22,0,0,11276,11277,5,49,0,0,11277,11278,5,48,0,0,11278,1874,1,0,0,0,11279,11280,7,5,0,0,11280,11281,7,19,0,0,11281,11282,7,22,0,0,11282,11283,5,50,0,0,11283,1876,1,0,0,0,11284,11285,7,5,0,0,11285,11286,7,19,0,0,11286,11287,7,9,0,0,11287,11288,7,7,0,0,11288,11289,7,8,0,0,11289,1878,1,0,0,0,11290,11291,7,5,0,0,11291,11292,7,25,0,0,11292,11293,7,3,0,0,11293,11294,7,4,0,0,11294,1880,1,0,0,0,11295,11296,7,5,0,0,11296,11297,7,6,0,0,11297,11298,7,8,0,0,11298,11299,7,15,0,0,11299,11300,7,23,0,0,11300,1882,1,0,0,0,11301,11302,7,23,0,0,11302,11303,7,3,0,0,11303,11304,7,21,0,0,11304,11305,7,7,0,0,11305,11306,7,4,0,0,11306,11307,7,3,0,0,11307,11308,7,6,0,0,11308,11309,7,7,0,0,11309,1884,1,0,0,0,11310,11311,7,23,0,0,11311,11312,7,3,0,0,11312,11313,7,21,0,0,11313,11314,7,7,0,0,11314,11315,7,6,0,0,11315,11316,7,15,0,0,11316,11317,7,23,0,0,11317,11318,7,7,0,0,11318,1886,1,0,0,0,11319,11320,7,23,0,0,11320,11321,7,3,0,0,11321,11322,7,21,0,0,11322,11323,7,7,0,0,11323,11324,5,95,0,0,11324,11325,7,11,0,0,11325,11326,7,7,0,0,11326,11327,7,6,0,0,11327,1888,1,0,0,0,11328,11329,7,23,0,0,11329,11330,7,3,0,0,11330,11331,7,11,0,0,11331,11332,7,6,0,0,11332,11333,7,7,0,0,11333,11334,7,8,0,0,11334,11335,5,95,0,0,11335,11336,7,25,0,0,11336,11337,7,19,0,0,11337,11338,7,11,0,0,11338,11339,5,95,0,0,11339,11340,7,9,0,0,11340,11341,7,3,0,0,11341,11342,7,15,0,0,11342,11343,7,6,0,0,11343,1890,1,0,0,0,11344,11345,7,23,0,0,11345,11346,7,16,0,0,11346,11347,7,8,0,0,11347,11348,7,14,0,0,11348,11349,7,19,0,0,11349,11350,7,12,0,0,11350,11351,7,6,0,0,11351,11352,7,3,0,0,11352,11353,7,15,0,0,11353,11354,7,12,0,0,11354,11355,7,11,0,0,11355,1892,1,0,0,0,11356,11357,7,23,0,0,11357,11358,7,16,0,0,11358,11359,7,8,0,0,11359,11360,7,4,0,0,11360,11361,7,15,0,0,11361,11362,7,11,0,0,11362,11363,7,27,0,0,11363,11364,7,19,0,0,11364,11365,7,15,0,0,11365,11366,7,12,0,0,11366,11367,7,6,0,0,11367,1894,1,0,0,0,11368,11369,7,23,0,0,11369,11370,7,16,0,0,11370,11371,7,8,0,0,11371,11372,7,7,0,0,11372,11373,7,28,0,0,11373,11374,7,17,0,0,11374,11375,7,3,0,0,11375,11376,7,5,0,0,11376,1896,1,0,0,0,11377,11378,7,23,0,0,11378,11379,7,16,0,0,11379,11380,7,8,0,0,11380,11381,7,15,0,0,11381,11382,7,12,0,0,11382,11383,7,6,0,0,11383,11384,7,7,0,0,11384,11385,7,8,0,0,11385,11386,7,11,0,0,11386,11387,7,7,0,0,11387,11388,7,14,0,0,11388,11389,7,6,0,0,11389,11390,7,11,0,0,11390,1898,1,0,0,0,11391,11392,7,23,0,0,11392,11393,7,16,0,0,11393,11394,7,8,0,0,11394,11395,7,19,0,0,11395,11396,7,24,0,0,11396,11397,7,7,0,0,11397,11398,7,8,0,0,11398,11399,7,5,0,0,11399,11400,7,3,0,0,11400,11401,7,25,0,0,11401,11402,7,11,0,0,11402,1900,1,0,0,0,11403,11404,7,23,0,0,11404,11405,7,16,0,0,11405,11406,7,8,0,0,11406,11407,7,6,0,0,11407,11408,7,19,0,0,11408,11409,7,17,0,0,11409,11410,7,14,0,0,11410,11411,7,20,0,0,11411,11412,7,7,0,0,11412,11413,7,11,0,0,11413,1902,1,0,0,0,11414,11415,7,23,0,0,11415,11416,7,16,0,0,11416,11417,7,8,0,0,11417,11418,7,9,0,0,11418,11419,7,15,0,0,11419,11420,7,6,0,0,11420,11421,7,20,0,0,11421,11422,7,15,0,0,11422,11423,7,12,0,0,11423,1904,1,0,0,0,11424,11425,7,23,0,0,11425,11426,7,4,0,0,11426,11427,5,53,0,0,11427,1906,1,0,0,0,11428,11429,7,23,0,0,11429,11430,7,5,0,0,11430,11431,7,15,0,0,11431,11432,7,12,0,0,11432,11433,7,7,0,0,11433,11434,7,18,0,0,11434,11435,7,8,0,0,11435,11436,7,19,0,0,11436,11437,7,23,0,0,11437,11438,7,6,0,0,11438,11439,7,7,0,0,11439,11440,7,26,0,0,11440,11441,7,6,0,0,11441,1908,1,0,0,0,11442,11443,7,23,0,0,11443,11444,7,5,0,0,11444,11445,7,15,0,0,11445,11446,7,12,0,0,11446,11447,7,7,0,0,11447,11448,7,18,0,0,11448,11449,7,8,0,0,11449,11450,7,19,0,0,11450,11451,7,23,0,0,11451,11452,7,9,0,0,11452,11453,7,21,0,0,11453,11454,7,16,0,0,11454,1910,1,0,0,0,11455,11456,7,23,0,0,11456,11457,7,19,0,0,11457,11458,7,12,0,0,11458,11459,7,6,0,0,11459,11460,7,20,0,0,11460,11461,7,12,0,0,11461,11462,7,3,0,0,11462,11463,7,23,0,0,11463,11464,7,7,0,0,11464,1912,1,0,0,0,11465,11466,7,23,0,0,11466,11467,7,25,0,0,11467,11468,7,19,0,0,11468,11469,7,15,0,0,11469,11470,7,12,0,0,11470,11471,7,6,0,0,11471,11472,7,18,0,0,11472,11473,7,8,0,0,11473,11474,7,19,0,0,11474,11475,7,23,0,0,11475,11476,7,6,0,0,11476,11477,7,7,0,0,11477,11478,7,26,0,0,11478,11479,7,6,0,0,11479,1914,1,0,0,0,11480,11481,7,23,0,0,11481,11482,7,25,0,0,11482,11483,7,19,0,0,11483,11484,7,15,0,0,11484,11485,7,12,0,0,11485,11486,7,6,0,0,11486,11487,7,18,0,0,11487,11488,7,8,0,0,11488,11489,7,19,0,0,11489,11490,7,23,0,0,11490,11491,7,9,0,0,11491,11492,7,21,0,0,11492,11493,7,16,0,0,11493,1916,1,0,0,0,11494,11495,7,23,0,0,11495,11496,7,25,0,0,11496,11497,7,19,0,0,11497,11498,7,5,0,0,11498,11499,7,10,0,0,11499,11500,7,18,0,0,11500,11501,7,8,0,0,11501,11502,7,19,0,0,11502,11503,7,23,0,0,11503,11504,7,6,0,0,11504,11505,7,7,0,0,11505,11506,7,26,0,0,11506,11507,7,6,0,0,11507,1918,1,0,0,0,11508,11509,7,23,0,0,11509,11510,7,25,0,0,11510,11511,7,19,0,0,11511,11512,7,5,0,0,11512,11513,7,10,0,0,11513,11514,7,18,0,0,11514,11515,7,8,0,0,11515,11516,7,19,0,0,11516,11517,7,23,0,0,11517,11518,7,9,0,0,11518,11519,7,21,0,0,11519,11520,7,16,0,0,11520,1920,1,0,0,0,11521,11522,7,23,0,0,11522,11523,7,17,0,0,11523,11524,7,5,0,0,11524,11525,7,6,0,0,11525,11526,7,15,0,0,11526,11527,7,5,0,0,11527,11528,7,15,0,0,11528,11529,7,12,0,0,11529,11530,7,7,0,0,11530,11531,7,11,0,0,11531,11532,7,6,0,0,11532,11533,7,8,0,0,11533,11534,7,15,0,0,11534,11535,7,12,0,0,11535,11536,7,22,0,0,11536,11537,7,18,0,0,11537,11538,7,8,0,0,11538,11539,7,19,0,0,11539,11540,7,23,0,0,11540,11541,7,6,0,0,11541,11542,7,7,0,0,11542,11543,7,26,0,0,11543,11544,7,6,0,0,11544,1922,1,0,0,0,11545,11546,7,23,0,0,11546,11547,7,17,0,0,11547,11548,7,5,0,0,11548,11549,7,6,0,0,11549,11550,7,15,0,0,11550,11551,7,5,0,0,11551,11552,7,15,0,0,11552,11553,7,12,0,0,11553,11554,7,7,0,0,11554,11555,7,11,0,0,11555,11556,7,6,0,0,11556,11557,7,8,0,0,11557,11558,7,15,0,0,11558,11559,7,12,0,0,11559,11560,7,22,0,0,11560,11561,7,18,0,0,11561,11562,7,8,0,0,11562,11563,7,19,0,0,11563,11564,7,23,0,0,11564,11565,7,9,0,0,11565,11566,7,21,0,0,11566,11567,7,16,0,0,11567,1924,1,0,0,0,11568,11569,7,23,0,0,11569,11570,7,17,0,0,11570,11571,7,5,0,0,11571,11572,7,6,0,0,11572,11573,7,15,0,0,11573,11574,7,25,0,0,11574,11575,7,19,0,0,11575,11576,7,15,0,0,11576,11577,7,12,0,0,11577,11578,7,6,0,0,11578,11579,7,18,0,0,11579,11580,7,8,0,0,11580,11581,7,19,0,0,11581,11582,7,23,0,0,11582,11583,7,6,0,0,11583,11584,7,7,0,0,11584,11585,7,26,0,0,11585,11586,7,6,0,0,11586,1926,1,0,0,0,11587,11588,7,23,0,0,11588,11589,7,17,0,0,11589,11590,7,5,0,0,11590,11591,7,6,0,0,11591,11592,7,15,0,0,11592,11593,7,25,0,0,11593,11594,7,19,0,0,11594,11595,7,15,0,0,11595,11596,7,12,0,0,11596,11597,7,6,0,0,11597,11598,7,18,0,0,11598,11599,7,8,0,0,11599,11600,7,19,0,0,11600,11601,7,23,0,0,11601,11602,7,9,0,0,11602,11603,7,21,0,0,11603,11604,7,16,0,0,11604,1928,1,0,0,0,11605,11606,7,23,0,0,11606,11607,7,17,0,0,11607,11608,7,5,0,0,11608,11609,7,6,0,0,11609,11610,7,15,0,0,11610,11611,7,25,0,0,11611,11612,7,19,0,0,11612,11613,7,5,0,0,11613,11614,7,10,0,0,11614,11615,7,22,0,0,11615,11616,7,19,0,0,11616,11617,7,12,0,0,11617,11618,7,18,0,0,11618,11619,7,8,0,0,11619,11620,7,19,0,0,11620,11621,7,23,0,0,11621,11622,7,6,0,0,11622,11623,7,7,0,0,11623,11624,7,26,0,0,11624,11625,7,6,0,0,11625,1930,1,0,0,0,11626,11627,7,23,0,0,11627,11628,7,17,0,0,11628,11629,7,5,0,0,11629,11630,7,6,0,0,11630,11631,7,15,0,0,11631,11632,7,25,0,0,11632,11633,7,19,0,0,11633,11634,7,5,0,0,11634,11635,7,10,0,0,11635,11636,7,22,0,0,11636,11637,7,19,0,0,11637,11638,7,12,0,0,11638,11639,7,18,0,0,11639,11640,7,8,0,0,11640,11641,7,19,0,0,11641,11642,7,23,0,0,11642,11643,7,9,0,0,11643,11644,7,21,0,0,11644,11645,7,16,0,0,11645,1932,1,0,0,0,11646,11647,7,12,0,0,11647,11648,7,3,0,0,11648,11649,7,23,0,0,11649,11650,7,7,0,0,11650,11651,5,95,0,0,11651,11652,7,14,0,0,11652,11653,7,19,0,0,11653,11654,7,12,0,0,11654,11655,7,11,0,0,11655,11656,7,6,0,0,11656,1934,1,0,0,0,11657,11658,7,12,0,0,11658,11659,7,17,0,0,11659,11660,7,5,0,0,11660,11661,7,5,0,0,11661,11662,7,15,0,0,11662,11663,7,18,0,0,11663,1936,1,0,0,0,11664,11665,7,12,0,0,11665,11666,7,17,0,0,11666,11667,7,23,0,0,11667,11668,7,22,0,0,11668,11669,7,7,0,0,11669,11670,7,19,0,0,11670,11671,7,23,0,0,11671,11672,7,7,0,0,11672,11673,7,6,0,0,11673,11674,7,8,0,0,11674,11675,7,15,0,0,11675,11676,7,7,0,0,11676,11677,7,11,0,0,11677,1938,1,0,0,0,11678,11679,7,12,0,0,11679,11680,7,17,0,0,11680,11681,7,23,0,0,11681,11682,7,15,0,0,11682,11683,7,12,0,0,11683,11684,7,6,0,0,11684,11685,7,7,0,0,11685,11686,7,8,0,0,11686,11687,7,15,0,0,11687,11688,7,19,0,0,11688,11689,7,8,0,0,11689,11690,7,8,0,0,11690,11691,7,15,0,0,11691,11692,7,12,0,0,11692,11693,7,22,0,0,11693,11694,7,11,0,0,11694,1940,1,0,0,0,11695,11696,7,12,0,0,11696,11697,7,17,0,0,11697,11698,7,23,0,0,11698,11699,7,25,0,0,11699,11700,7,19,0,0,11700,11701,7,15,0,0,11701,11702,7,12,0,0,11702,11703,7,6,0,0,11703,11704,7,11,0,0,11704,1942,1,0,0,0,11705,11706,7,19,0,0,11706,11707,7,14,0,0,11707,11708,7,6,0,0,11708,1944,1,0,0,0,11709,11710,7,19,0,0,11710,11711,7,14,0,0,11711,11712,7,6,0,0,11712,11713,7,7,0,0,11713,11714,7,6,0,0,11714,11715,5,95,0,0,11715,11716,7,5,0,0,11716,11717,7,7,0,0,11717,11718,7,12,0,0,11718,11719,7,22,0,0,11719,11720,7,6,0,0,11720,11721,7,20,0,0,11721,1946,1,0,0,0,11722,11723,7,19,0,0,11723,11724,7,8,0,0,11724,11725,7,4,0,0,11725,1948,1,0,0,0,11726,11727,7,19,0,0,11727,11728,7,24,0,0,11728,11729,7,7,0,0,11729,11730,7,8,0,0,11730,11731,7,5,0,0,11731,11732,7,3,0,0,11732,11733,7,25,0,0,11733,11734,7,11,0,0,11734,1950,1,0,0,0,11735,11736,7,25,0,0,11736,11737,7,7,0,0,11737,11738,7,8,0,0,11738,11739,7,15,0,0,11739,11740,7,19,0,0,11740,11741,7,4,0,0,11741,11742,5,95,0,0,11742,11743,7,3,0,0,11743,11744,7,4,0,0,11744,11745,7,4,0,0,11745,1952,1,0,0,0,11746,11747,7,25,0,0,11747,11748,7,7,0,0,11748,11749,7,8,0,0,11749,11750,7,15,0,0,11750,11751,7,19,0,0,11751,11752,7,4,0,0,11752,11753,5,95,0,0,11753,11754,7,4,0,0,11754,11755,7,15,0,0,11755,11756,7,18,0,0,11756,11757,7,18,0,0,11757,1954,1,0,0,0,11758,11759,7,25,0,0,11759,11760,7,15,0,0,11760,1956,1,0,0,0,11761,11762,7,25,0,0,11762,11763,7,19,0,0,11763,11764,7,15,0,0,11764,11765,7,12,0,0,11765,11766,7,6,0,0,11766,11767,7,18,0,0,11767,11768,7,8,0,0,11768,11769,7,19,0,0,11769,11770,7,23,0,0,11770,11771,7,6,0,0,11771,11772,7,7,0,0,11772,11773,7,26,0,0,11773,11774,7,6,0,0,11774,1958,1,0,0,0,11775,11776,7,25,0,0,11776,11777,7,19,0,0,11777,11778,7,15,0,0,11778,11779,7,12,0,0,11779,11780,7,6,0,0,11780,11781,7,18,0,0,11781,11782,7,8,0,0,11782,11783,7,19,0,0,11783,11784,7,23,0,0,11784,11785,7,9,0,0,11785,11786,7,21,0,0,11786,11787,7,16,0,0,11787,1960,1,0,0,0,11788,11789,7,25,0,0,11789,11790,7,19,0,0,11790,11791,7,15,0,0,11791,11792,7,12,0,0,11792,11793,7,6,0,0,11793,11794,7,12,0,0,11794,1962,1,0,0,0,11795,11796,7,25,0,0,11796,11797,7,19,0,0,11797,11798,7,5,0,0,11798,11799,7,10,0,0,11799,11800,7,18,0,0,11800,11801,7,8,0,0,11801,11802,7,19,0,0,11802,11803,7,23,0,0,11803,11804,7,6,0,0,11804,11805,7,7,0,0,11805,11806,7,26,0,0,11806,11807,7,6,0,0,11807,1964,1,0,0,0,11808,11809,7,25,0,0,11809,11810,7,19,0,0,11810,11811,7,5,0,0,11811,11812,7,10,0,0,11812,11813,7,18,0,0,11813,11814,7,8,0,0,11814,11815,7,19,0,0,11815,11816,7,23,0,0,11816,11817,7,9,0,0,11817,11818,7,21,0,0,11818,11819,7,16,0,0,11819,1966,1,0,0,0,11820,11821,7,25,0,0,11821,11822,7,19,0,0,11822,11823,7,5,0,0,11823,11824,7,10,0,0,11824,11825,7,22,0,0,11825,11826,7,19,0,0,11826,11827,7,12,0,0,11827,11828,7,18,0,0,11828,11829,7,8,0,0,11829,11830,7,19,0,0,11830,11831,7,23,0,0,11831,11832,7,6,0,0,11832,11833,7,7,0,0,11833,11834,7,26,0,0,11834,11835,7,6,0,0,11835,1968,1,0,0,0,11836,11837,7,25,0,0,11837,11838,7,19,0,0,11838,11839,7,5,0,0,11839,11840,7,10,0,0,11840,11841,7,22,0,0,11841,11842,7,19,0,0,11842,11843,7,12,0,0,11843,11844,7,18,0,0,11844,11845,7,8,0,0,11845,11846,7,19,0,0,11846,11847,7,23,0,0,11847,11848,7,9,0,0,11848,11849,7,21,0,0,11849,11850,7,16,0,0,11850,1970,1,0,0,0,11851,11852,7,25,0,0,11852,11853,7,19,0,0,11853,11854,7,9,0,0,11854,1972,1,0,0,0,11855,11856,7,25,0,0,11856,11857,7,19,0,0,11857,11858,7,9,0,0,11858,11859,7,7,0,0,11859,11860,7,8,0,0,11860,1974,1,0,0,0,11861,11862,7,28,0,0,11862,11863,7,17,0,0,11863,11864,7,19,0,0,11864,11865,7,6,0,0,11865,11866,7,7,0,0,11866,1976,1,0,0,0,11867,11868,7,8,0,0,11868,11869,7,3,0,0,11869,11870,7,4,0,0,11870,11871,7,15,0,0,11871,11872,7,3,0,0,11872,11873,7,12,0,0,11873,11874,7,11,0,0,11874,1978,1,0,0,0,11875,11876,7,8,0,0,11876,11877,7,3,0,0,11877,11878,7,12,0,0,11878,11879,7,4,0,0,11879,1980,1,0,0,0,11880,11881,7,8,0,0,11881,11882,7,3,0,0,11882,11883,7,12,0,0,11883,11884,7,4,0,0,11884,11885,7,19,0,0,11885,11886,7,23,0,0,11886,1982,1,0,0,0,11887,11888,7,8,0,0,11888,11889,7,3,0,0,11889,11890,7,12,0,0,11890,11891,7,4,0,0,11891,11892,7,19,0,0,11892,11893,7,23,0,0,11893,11894,5,95,0,0,11894,11895,7,16,0,0,11895,11896,7,10,0,0,11896,11897,7,6,0,0,11897,11898,7,7,0,0,11898,11899,7,11,0,0,11899,1984,1,0,0,0,11900,11901,7,8,0,0,11901,11902,7,7,0,0,11902,11903,7,5,0,0,11903,11904,7,7,0,0,11904,11905,7,3,0,0,11905,11906,7,11,0,0,11906,11907,7,7,0,0,11907,11908,5,95,0,0,11908,11909,7,5,0,0,11909,11910,7,19,0,0,11910,11911,7,14,0,0,11911,11912,7,21,0,0,11912,1986,1,0,0,0,11913,11914,7,8,0,0,11914,11915,7,7,0,0,11915,11916,7,24,0,0,11916,11917,7,7,0,0,11917,11918,7,8,0,0,11918,11919,7,11,0,0,11919,11920,7,7,0,0,11920,1988,1,0,0,0,11921,11922,7,8,0,0,11922,11923,7,19,0,0,11923,11924,7,17,0,0,11924,11925,7,12,0,0,11925,11926,7,4,0,0,11926,1990,1,0,0,0,11927,11928,7,8,0,0,11928,11929,7,19,0,0,11929,11930,7,9,0,0,11930,11931,5,95,0,0,11931,11932,7,14,0,0,11932,11933,7,19,0,0,11933,11934,7,17,0,0,11934,11935,7,12,0,0,11935,11936,7,6,0,0,11936,1992,1,0,0,0,11937,11938,7,8,0,0,11938,11939,7,25,0,0,11939,11940,7,3,0,0,11940,11941,7,4,0,0,11941,1994,1,0,0,0,11942,11943,7,8,0,0,11943,11944,7,6,0,0,11944,11945,7,8,0,0,11945,11946,7,15,0,0,11946,11947,7,23,0,0,11947,1996,1,0,0,0,11948,11949,7,11,0,0,11949,11950,7,7,0,0,11950,11951,7,14,0,0,11951,11952,5,95,0,0,11952,11953,7,6,0,0,11953,11954,7,19,0,0,11954,11955,5,95,0,0,11955,11956,7,6,0,0,11956,11957,7,15,0,0,11957,11958,7,23,0,0,11958,11959,7,7,0,0,11959,1998,1,0,0,0,11960,11961,7,11,0,0,11961,11962,7,7,0,0,11962,11963,7,14,0,0,11963,11964,7,19,0,0,11964,11965,7,12,0,0,11965,11966,7,4,0,0,11966,11967,7,3,0,0,11967,11968,7,8,0,0,11968,11969,7,10,0,0,11969,11970,5,95,0,0,11970,11971,7,7,0,0,11971,11972,7,12,0,0,11972,11973,7,22,0,0,11973,11974,7,15,0,0,11974,11975,7,12,0,0,11975,11976,7,7,0,0,11976,11977,5,95,0,0,11977,11978,7,3,0,0,11978,11979,7,6,0,0,11979,11980,7,6,0,0,11980,11981,7,8,0,0,11981,11982,7,15,0,0,11982,11983,7,16,0,0,11983,11984,7,17,0,0,11984,11985,7,6,0,0,11985,11986,7,7,0,0,11986,2e3,1,0,0,0,11987,11988,7,11,0,0,11988,11989,7,7,0,0,11989,11990,7,11,0,0,11990,11991,7,11,0,0,11991,11992,7,15,0,0,11992,11993,7,19,0,0,11993,11994,7,12,0,0,11994,11995,5,95,0,0,11995,11996,7,17,0,0,11996,11997,7,11,0,0,11997,11998,7,7,0,0,11998,11999,7,8,0,0,11999,2002,1,0,0,0,12e3,12001,7,11,0,0,12001,12002,7,20,0,0,12002,12003,7,3,0,0,12003,2004,1,0,0,0,12004,12005,7,11,0,0,12005,12006,7,20,0,0,12006,12007,7,3,0,0,12007,12008,5,49,0,0,12008,2006,1,0,0,0,12009,12010,7,11,0,0,12010,12011,7,20,0,0,12011,12012,7,3,0,0,12012,12013,5,50,0,0,12013,2008,1,0,0,0,12014,12015,7,11,0,0,12015,12016,7,14,0,0,12016,12017,7,20,0,0,12017,12018,7,7,0,0,12018,12019,7,23,0,0,12019,12020,7,3,0,0,12020,12021,5,95,0,0,12021,12022,7,12,0,0,12022,12023,7,3,0,0,12023,12024,7,23,0,0,12024,12025,7,7,0,0,12025,2010,1,0,0,0,12026,12027,7,11,0,0,12027,12028,7,15,0,0,12028,12029,7,22,0,0,12029,12030,7,12,0,0,12030,2012,1,0,0,0,12031,12032,7,11,0,0,12032,12033,7,15,0,0,12033,12034,7,12,0,0,12034,2014,1,0,0,0,12035,12036,7,11,0,0,12036,12037,7,5,0,0,12037,12038,7,7,0,0,12038,12039,7,7,0,0,12039,12040,7,25,0,0,12040,2016,1,0,0,0,12041,12042,7,11,0,0,12042,12043,7,19,0,0,12043,12044,7,17,0,0,12044,12045,7,12,0,0,12045,12046,7,4,0,0,12046,12047,7,7,0,0,12047,12048,7,26,0,0,12048,2018,1,0,0,0,12049,12050,7,11,0,0,12050,12051,7,28,0,0,12051,12052,7,5,0,0,12052,12053,5,95,0,0,12053,12054,7,6,0,0,12054,12055,7,20,0,0,12055,12056,7,8,0,0,12056,12057,7,7,0,0,12057,12058,7,3,0,0,12058,12059,7,4,0,0,12059,12060,5,95,0,0,12060,12061,7,9,0,0,12061,12062,7,3,0,0,12062,12063,7,15,0,0,12063,12064,7,6,0,0,12064,12065,5,95,0,0,12065,12066,7,3,0,0,12066,12067,7,18,0,0,12067,12068,7,6,0,0,12068,12069,7,7,0,0,12069,12070,7,8,0,0,12070,12071,5,95,0,0,12071,12072,7,22,0,0,12072,12073,7,6,0,0,12073,12074,7,15,0,0,12074,12075,7,4,0,0,12075,12076,7,11,0,0,12076,2020,1,0,0,0,12077,12078,7,11,0,0,12078,12079,7,28,0,0,12079,12080,7,8,0,0,12080,12081,7,6,0,0,12081,2022,1,0,0,0,12082,12083,7,11,0,0,12083,12084,7,8,0,0,12084,12085,7,15,0,0,12085,12086,7,4,0,0,12086,2024,1,0,0,0,12087,12088,7,11,0,0,12088,12089,7,6,0,0,12089,12090,7,3,0,0,12090,12091,7,8,0,0,12091,12092,7,6,0,0,12092,12093,7,25,0,0,12093,12094,7,19,0,0,12094,12095,7,15,0,0,12095,12096,7,12,0,0,12096,12097,7,6,0,0,12097,2026,1,0,0,0,12098,12099,7,11,0,0,12099,12100,7,6,0,0,12100,12101,7,8,0,0,12101,12102,7,14,0,0,12102,12103,7,23,0,0,12103,12104,7,25,0,0,12104,2028,1,0,0,0,12105,12106,7,11,0,0,12106,12107,7,6,0,0,12107,12108,7,8,0,0,12108,12109,5,95,0,0,12109,12110,7,6,0,0,12110,12111,7,19,0,0,12111,12112,5,95,0,0,12112,12113,7,4,0,0,12113,12114,7,3,0,0,12114,12115,7,6,0,0,12115,12116,7,7,0,0,12116,2030,1,0,0,0,12117,12118,7,11,0,0,12118,12119,7,6,0,0,12119,12120,5,95,0,0,12120,12121,7,3,0,0,12121,12122,7,8,0,0,12122,12123,7,7,0,0,12123,12124,7,3,0,0,12124,2032,1,0,0,0,12125,12126,7,11,0,0,12126,12127,7,6,0,0,12127,12128,5,95,0,0,12128,12129,7,3,0,0,12129,12130,7,11,0,0,12130,12131,7,16,0,0,12131,12132,7,15,0,0,12132,12133,7,12,0,0,12133,12134,7,3,0,0,12134,12135,7,8,0,0,12135,12136,7,10,0,0,12136,2034,1,0,0,0,12137,12138,7,11,0,0,12138,12139,7,6,0,0,12139,12140,5,95,0,0,12140,12141,7,3,0,0,12141,12142,7,11,0,0,12142,12143,7,6,0,0,12143,12144,7,7,0,0,12144,12145,7,26,0,0,12145,12146,7,6,0,0,12146,2036,1,0,0,0,12147,12148,7,11,0,0,12148,12149,7,6,0,0,12149,12150,5,95,0,0,12150,12151,7,3,0,0,12151,12152,7,11,0,0,12152,12153,7,9,0,0,12153,12154,7,21,0,0,12154,12155,7,16,0,0,12155,2038,1,0,0,0,12156,12157,7,11,0,0,12157,12158,7,6,0,0,12158,12159,5,95,0,0,12159,12160,7,3,0,0,12160,12161,7,11,0,0,12161,12162,7,9,0,0,12162,12163,7,21,0,0,12163,12164,7,6,0,0,12164,2040,1,0,0,0,12165,12166,7,11,0,0,12166,12167,7,6,0,0,12167,12168,5,95,0,0,12168,12169,7,16,0,0,12169,12170,7,17,0,0,12170,12171,7,18,0,0,12171,12172,7,18,0,0,12172,12173,7,7,0,0,12173,12174,7,8,0,0,12174,2042,1,0,0,0,12175,12176,7,11,0,0,12176,12177,7,6,0,0,12177,12178,5,95,0,0,12178,12179,7,14,0,0,12179,12180,7,7,0,0,12180,12181,7,12,0,0,12181,12182,7,6,0,0,12182,12183,7,8,0,0,12183,12184,7,19,0,0,12184,12185,7,15,0,0,12185,12186,7,4,0,0,12186,2044,1,0,0,0,12187,12188,7,11,0,0,12188,12189,7,6,0,0,12189,12190,5,95,0,0,12190,12191,7,14,0,0,12191,12192,7,19,0,0,12192,12193,7,12,0,0,12193,12194,7,6,0,0,12194,12195,7,3,0,0,12195,12196,7,15,0,0,12196,12197,7,12,0,0,12197,12198,7,11,0,0,12198,2046,1,0,0,0,12199,12200,7,11,0,0,12200,12201,7,6,0,0,12201,12202,5,95,0,0,12202,12203,7,14,0,0,12203,12204,7,8,0,0,12204,12205,7,19,0,0,12205,12206,7,11,0,0,12206,12207,7,11,0,0,12207,12208,7,7,0,0,12208,12209,7,11,0,0,12209,2048,1,0,0,0,12210,12211,7,11,0,0,12211,12212,7,6,0,0,12212,12213,5,95,0,0,12213,12214,7,4,0,0,12214,12215,7,15,0,0,12215,12216,7,18,0,0,12216,12217,7,18,0,0,12217,12218,7,7,0,0,12218,12219,7,8,0,0,12219,12220,7,7,0,0,12220,12221,7,12,0,0,12221,12222,7,14,0,0,12222,12223,7,7,0,0,12223,2050,1,0,0,0,12224,12225,7,11,0,0,12225,12226,7,6,0,0,12226,12227,5,95,0,0,12227,12228,7,4,0,0,12228,12229,7,15,0,0,12229,12230,7,23,0,0,12230,12231,7,7,0,0,12231,12232,7,12,0,0,12232,12233,7,11,0,0,12233,12234,7,15,0,0,12234,12235,7,19,0,0,12235,12236,7,12,0,0,12236,2052,1,0,0,0,12237,12238,7,11,0,0,12238,12239,7,6,0,0,12239,12240,5,95,0,0,12240,12241,7,4,0,0,12241,12242,7,15,0,0,12242,12243,7,11,0,0,12243,12244,7,27,0,0,12244,12245,7,19,0,0,12245,12246,7,15,0,0,12246,12247,7,12,0,0,12247,12248,7,6,0,0,12248,2054,1,0,0,0,12249,12250,7,11,0,0,12250,12251,7,6,0,0,12251,12252,5,95,0,0,12252,12253,7,4,0,0,12253,12254,7,15,0,0,12254,12255,7,11,0,0,12255,12256,7,6,0,0,12256,12257,7,3,0,0,12257,12258,7,12,0,0,12258,12259,7,14,0,0,12259,12260,7,7,0,0,12260,2056,1,0,0,0,12261,12262,7,11,0,0,12262,12263,7,6,0,0,12263,12264,5,95,0,0,12264,12265,7,7,0,0,12265,12266,7,12,0,0,12266,12267,7,4,0,0,12267,12268,7,25,0,0,12268,12269,7,19,0,0,12269,12270,7,15,0,0,12270,12271,7,12,0,0,12271,12272,7,6,0,0,12272,2058,1,0,0,0,12273,12274,7,11,0,0,12274,12275,7,6,0,0,12275,12276,5,95,0,0,12276,12277,7,7,0,0,12277,12278,7,12,0,0,12278,12279,7,24,0,0,12279,12280,7,7,0,0,12280,12281,7,5,0,0,12281,12282,7,19,0,0,12282,12283,7,25,0,0,12283,12284,7,7,0,0,12284,2060,1,0,0,0,12285,12286,7,11,0,0,12286,12287,7,6,0,0,12287,12288,5,95,0,0,12288,12289,7,7,0,0,12289,12290,7,28,0,0,12290,12291,7,17,0,0,12291,12292,7,3,0,0,12292,12293,7,5,0,0,12293,12294,7,11,0,0,12294,2062,1,0,0,0,12295,12296,7,11,0,0,12296,12297,7,6,0,0,12297,12298,5,95,0,0,12298,12299,7,7,0,0,12299,12300,7,26,0,0,12300,12301,7,6,0,0,12301,12302,7,7,0,0,12302,12303,7,8,0,0,12303,12304,7,15,0,0,12304,12305,7,19,0,0,12305,12306,7,8,0,0,12306,12307,7,8,0,0,12307,12308,7,15,0,0,12308,12309,7,12,0,0,12309,12310,7,22,0,0,12310,2064,1,0,0,0,12311,12312,7,11,0,0,12312,12313,7,6,0,0,12313,12314,5,95,0,0,12314,12315,7,22,0,0,12315,12316,7,7,0,0,12316,12317,7,19,0,0,12317,12318,7,23,0,0,12318,12319,7,14,0,0,12319,12320,7,19,0,0,12320,12321,7,5,0,0,12321,12322,7,5,0,0,12322,12323,7,18,0,0,12323,12324,7,8,0,0,12324,12325,7,19,0,0,12325,12326,7,23,0,0,12326,12327,7,6,0,0,12327,12328,7,7,0,0,12328,12329,7,26,0,0,12329,12330,7,6,0,0,12330,2066,1,0,0,0,12331,12332,7,11,0,0,12332,12333,7,6,0,0,12333,12334,5,95,0,0,12334,12335,7,22,0,0,12335,12336,7,7,0,0,12336,12337,7,19,0,0,12337,12338,7,23,0,0,12338,12339,7,14,0,0,12339,12340,7,19,0,0,12340,12341,7,5,0,0,12341,12342,7,5,0,0,12342,12343,7,18,0,0,12343,12344,7,8,0,0,12344,12345,7,19,0,0,12345,12346,7,23,0,0,12346,12347,7,6,0,0,12347,12348,7,26,0,0,12348,12349,7,6,0,0,12349,2068,1,0,0,0,12350,12351,7,11,0,0,12351,12352,7,6,0,0,12352,12353,5,95,0,0,12353,12354,7,22,0,0,12354,12355,7,7,0,0,12355,12356,7,19,0,0,12356,12357,7,23,0,0,12357,12358,7,14,0,0,12358,12359,7,19,0,0,12359,12360,7,5,0,0,12360,12361,7,5,0,0,12361,12362,7,18,0,0,12362,12363,7,8,0,0,12363,12364,7,19,0,0,12364,12365,7,23,0,0,12365,12366,7,9,0,0,12366,12367,7,21,0,0,12367,12368,7,16,0,0,12368,2070,1,0,0,0,12369,12370,7,11,0,0,12370,12371,7,6,0,0,12371,12372,5,95,0,0,12372,12373,7,22,0,0,12373,12374,7,7,0,0,12374,12375,7,19,0,0,12375,12376,7,23,0,0,12376,12377,7,7,0,0,12377,12378,7,6,0,0,12378,12379,7,8,0,0,12379,12380,7,10,0,0,12380,12381,7,14,0,0,12381,12382,7,19,0,0,12382,12383,7,5,0,0,12383,12384,7,5,0,0,12384,12385,7,7,0,0,12385,12386,7,14,0,0,12386,12387,7,6,0,0,12387,12388,7,15,0,0,12388,12389,7,19,0,0,12389,12390,7,12,0,0,12390,12391,7,18,0,0,12391,12392,7,8,0,0,12392,12393,7,19,0,0,12393,12394,7,23,0,0,12394,12395,7,6,0,0,12395,12396,7,7,0,0,12396,12397,7,26,0,0,12397,12398,7,6,0,0,12398,2072,1,0,0,0,12399,12400,7,11,0,0,12400,12401,7,6,0,0,12401,12402,5,95,0,0,12402,12403,7,22,0,0,12403,12404,7,7,0,0,12404,12405,7,19,0,0,12405,12406,7,23,0,0,12406,12407,7,7,0,0,12407,12408,7,6,0,0,12408,12409,7,8,0,0,12409,12410,7,10,0,0,12410,12411,7,14,0,0,12411,12412,7,19,0,0,12412,12413,7,5,0,0,12413,12414,7,5,0,0,12414,12415,7,7,0,0,12415,12416,7,14,0,0,12416,12417,7,6,0,0,12417,12418,7,15,0,0,12418,12419,7,19,0,0,12419,12420,7,12,0,0,12420,12421,7,18,0,0,12421,12422,7,8,0,0,12422,12423,7,19,0,0,12423,12424,7,23,0,0,12424,12425,7,9,0,0,12425,12426,7,21,0,0,12426,12427,7,16,0,0,12427,2074,1,0,0,0,12428,12429,7,11,0,0,12429,12430,7,6,0,0,12430,12431,5,95,0,0,12431,12432,7,22,0,0,12432,12433,7,7,0,0,12433,12434,7,19,0,0,12434,12435,7,23,0,0,12435,12436,7,7,0,0,12436,12437,7,6,0,0,12437,12438,7,8,0,0,12438,12439,7,10,0,0,12439,12440,7,18,0,0,12440,12441,7,8,0,0,12441,12442,7,19,0,0,12442,12443,7,23,0,0,12443,12444,7,6,0,0,12444,12445,7,7,0,0,12445,12446,7,26,0,0,12446,12447,7,6,0,0,12447,2076,1,0,0,0,12448,12449,7,11,0,0,12449,12450,7,6,0,0,12450,12451,5,95,0,0,12451,12452,7,22,0,0,12452,12453,7,7,0,0,12453,12454,7,19,0,0,12454,12455,7,23,0,0,12455,12456,7,7,0,0,12456,12457,7,6,0,0,12457,12458,7,8,0,0,12458,12459,7,10,0,0,12459,12460,7,18,0,0,12460,12461,7,8,0,0,12461,12462,7,19,0,0,12462,12463,7,23,0,0,12463,12464,7,9,0,0,12464,12465,7,21,0,0,12465,12466,7,16,0,0,12466,2078,1,0,0,0,12467,12468,7,11,0,0,12468,12469,7,6,0,0,12469,12470,5,95,0,0,12470,12471,7,22,0,0,12471,12472,7,7,0,0,12472,12473,7,19,0,0,12473,12474,7,23,0,0,12474,12475,7,7,0,0,12475,12476,7,6,0,0,12476,12477,7,8,0,0,12477,12478,7,10,0,0,12478,12479,7,12,0,0,12479,2080,1,0,0,0,12480,12481,7,11,0,0,12481,12482,7,6,0,0,12482,12483,5,95,0,0,12483,12484,7,22,0,0,12484,12485,7,7,0,0,12485,12486,7,19,0,0,12486,12487,7,23,0,0,12487,12488,7,7,0,0,12488,12489,7,6,0,0,12489,12490,7,8,0,0,12490,12491,7,10,0,0,12491,12492,7,6,0,0,12492,12493,7,10,0,0,12493,12494,7,25,0,0,12494,12495,7,7,0,0,12495,2082,1,0,0,0,12496,12497,7,11,0,0,12497,12498,7,6,0,0,12498,12499,5,95,0,0,12499,12500,7,22,0,0,12500,12501,7,7,0,0,12501,12502,7,19,0,0,12502,12503,7,23,0,0,12503,12504,7,18,0,0,12504,12505,7,8,0,0,12505,12506,7,19,0,0,12506,12507,7,23,0,0,12507,12508,7,6,0,0,12508,12509,7,7,0,0,12509,12510,7,26,0,0,12510,12511,7,6,0,0,12511,2084,1,0,0,0,12512,12513,7,11,0,0,12513,12514,7,6,0,0,12514,12515,5,95,0,0,12515,12516,7,22,0,0,12516,12517,7,7,0,0,12517,12518,7,19,0,0,12518,12519,7,23,0,0,12519,12520,7,18,0,0,12520,12521,7,8,0,0,12521,12522,7,19,0,0,12522,12523,7,23,0,0,12523,12524,7,9,0,0,12524,12525,7,21,0,0,12525,12526,7,16,0,0,12526,2086,1,0,0,0,12527,12528,7,11,0,0,12528,12529,7,6,0,0,12529,12530,5,95,0,0,12530,12531,7,15,0,0,12531,12532,7,12,0,0,12532,12533,7,6,0,0,12533,12534,7,7,0,0,12534,12535,7,8,0,0,12535,12536,7,15,0,0,12536,12537,7,19,0,0,12537,12538,7,8,0,0,12538,12539,7,8,0,0,12539,12540,7,15,0,0,12540,12541,7,12,0,0,12541,12542,7,22,0,0,12542,12543,7,12,0,0,12543,2088,1,0,0,0,12544,12545,7,11,0,0,12545,12546,7,6,0,0,12546,12547,5,95,0,0,12547,12548,7,15,0,0,12548,12549,7,12,0,0,12549,12550,7,6,0,0,12550,12551,7,7,0,0,12551,12552,7,8,0,0,12552,12553,7,11,0,0,12553,12554,7,7,0,0,12554,12555,7,14,0,0,12555,12556,7,6,0,0,12556,12557,7,15,0,0,12557,12558,7,19,0,0,12558,12559,7,12,0,0,12559,2090,1,0,0,0,12560,12561,7,11,0,0,12561,12562,7,6,0,0,12562,12563,5,95,0,0,12563,12564,7,15,0,0,12564,12565,7,12,0,0,12565,12566,7,6,0,0,12566,12567,7,7,0,0,12567,12568,7,8,0,0,12568,12569,7,11,0,0,12569,12570,7,7,0,0,12570,12571,7,14,0,0,12571,12572,7,6,0,0,12572,12573,7,11,0,0,12573,2092,1,0,0,0,12574,12575,7,11,0,0,12575,12576,7,6,0,0,12576,12577,5,95,0,0,12577,12578,7,15,0,0,12578,12579,7,11,0,0,12579,12580,7,14,0,0,12580,12581,7,5,0,0,12581,12582,7,19,0,0,12582,12583,7,11,0,0,12583,12584,7,7,0,0,12584,12585,7,4,0,0,12585,2094,1,0,0,0,12586,12587,7,11,0,0,12587,12588,7,6,0,0,12588,12589,5,95,0,0,12589,12590,7,15,0,0,12590,12591,7,11,0,0,12591,12592,7,7,0,0,12592,12593,7,23,0,0,12593,12594,7,25,0,0,12594,12595,7,6,0,0,12595,12596,7,10,0,0,12596,2096,1,0,0,0,12597,12598,7,11,0,0,12598,12599,7,6,0,0,12599,12600,5,95,0,0,12600,12601,7,15,0,0,12601,12602,7,11,0,0,12602,12603,7,11,0,0,12603,12604,7,15,0,0,12604,12605,7,23,0,0,12605,12606,7,25,0,0,12606,12607,7,5,0,0,12607,12608,7,7,0,0,12608,2098,1,0,0,0,12609,12610,7,11,0,0,12610,12611,7,6,0,0,12611,12612,5,95,0,0,12612,12613,7,5,0,0,12613,12614,7,15,0,0,12614,12615,7,12,0,0,12615,12616,7,7,0,0,12616,12617,7,18,0,0,12617,12618,7,8,0,0,12618,12619,7,19,0,0,12619,12620,7,23,0,0,12620,12621,7,6,0,0,12621,12622,7,7,0,0,12622,12623,7,26,0,0,12623,12624,7,6,0,0,12624,2100,1,0,0,0,12625,12626,7,11,0,0,12626,12627,7,6,0,0,12627,12628,5,95,0,0,12628,12629,7,5,0,0,12629,12630,7,15,0,0,12630,12631,7,12,0,0,12631,12632,7,7,0,0,12632,12633,7,18,0,0,12633,12634,7,8,0,0,12634,12635,7,19,0,0,12635,12636,7,23,0,0,12636,12637,7,9,0,0,12637,12638,7,21,0,0,12638,12639,7,16,0,0,12639,2102,1,0,0,0,12640,12641,7,11,0,0,12641,12642,7,6,0,0,12642,12643,5,95,0,0,12643,12644,7,5,0,0,12644,12645,7,15,0,0,12645,12646,7,12,0,0,12646,12647,7,7,0,0,12647,12648,7,11,0,0,12648,12649,7,6,0,0,12649,12650,7,8,0,0,12650,12651,7,15,0,0,12651,12652,7,12,0,0,12652,12653,7,22,0,0,12653,12654,7,18,0,0,12654,12655,7,8,0,0,12655,12656,7,19,0,0,12656,12657,7,23,0,0,12657,12658,7,6,0,0,12658,12659,7,7,0,0,12659,12660,7,26,0,0,12660,12661,7,6,0,0,12661,2104,1,0,0,0,12662,12663,7,11,0,0,12663,12664,7,6,0,0,12664,12665,5,95,0,0,12665,12666,7,5,0,0,12666,12667,7,15,0,0,12667,12668,7,12,0,0,12668,12669,7,7,0,0,12669,12670,7,11,0,0,12670,12671,7,6,0,0,12671,12672,7,8,0,0,12672,12673,7,15,0,0,12673,12674,7,12,0,0,12674,12675,7,22,0,0,12675,12676,7,18,0,0,12676,12677,7,8,0,0,12677,12678,7,19,0,0,12678,12679,7,23,0,0,12679,12680,7,9,0,0,12680,12681,7,21,0,0,12681,12682,7,16,0,0,12682,2106,1,0,0,0,12683,12684,7,11,0,0,12684,12685,7,6,0,0,12685,12686,5,95,0,0,12686,12687,7,12,0,0,12687,12688,7,17,0,0,12688,12689,7,23,0,0,12689,12690,7,22,0,0,12690,12691,7,7,0,0,12691,12692,7,19,0,0,12692,12693,7,23,0,0,12693,12694,7,7,0,0,12694,12695,7,6,0,0,12695,12696,7,8,0,0,12696,12697,7,15,0,0,12697,12698,7,7,0,0,12698,12699,7,11,0,0,12699,2108,1,0,0,0,12700,12701,7,11,0,0,12701,12702,7,6,0,0,12702,12703,5,95,0,0,12703,12704,7,12,0,0,12704,12705,7,17,0,0,12705,12706,7,23,0,0,12706,12707,7,15,0,0,12707,12708,7,12,0,0,12708,12709,7,6,0,0,12709,12710,7,7,0,0,12710,12711,7,8,0,0,12711,12712,7,15,0,0,12712,12713,7,19,0,0,12713,12714,7,8,0,0,12714,12715,7,8,0,0,12715,12716,7,15,0,0,12716,12717,7,12,0,0,12717,12718,7,22,0,0,12718,2110,1,0,0,0,12719,12720,7,11,0,0,12720,12721,7,6,0,0,12721,12722,5,95,0,0,12722,12723,7,12,0,0,12723,12724,7,17,0,0,12724,12725,7,23,0,0,12725,12726,7,15,0,0,12726,12727,7,12,0,0,12727,12728,7,6,0,0,12728,12729,7,7,0,0,12729,12730,7,8,0,0,12730,12731,7,15,0,0,12731,12732,7,19,0,0,12732,12733,7,8,0,0,12733,12734,7,8,0,0,12734,12735,7,15,0,0,12735,12736,7,12,0,0,12736,12737,7,22,0,0,12737,12738,7,11,0,0,12738,2112,1,0,0,0,12739,12740,7,11,0,0,12740,12741,7,6,0,0,12741,12742,5,95,0,0,12742,12743,7,12,0,0,12743,12744,7,17,0,0,12744,12745,7,23,0,0,12745,12746,7,25,0,0,12746,12747,7,19,0,0,12747,12748,7,15,0,0,12748,12749,7,12,0,0,12749,12750,7,6,0,0,12750,12751,7,11,0,0,12751,2114,1,0,0,0,12752,12753,7,11,0,0,12753,12754,7,6,0,0,12754,12755,5,95,0,0,12755,12756,7,19,0,0,12756,12757,7,24,0,0,12757,12758,7,7,0,0,12758,12759,7,8,0,0,12759,12760,7,5,0,0,12760,12761,7,3,0,0,12761,12762,7,25,0,0,12762,12763,7,11,0,0,12763,2116,1,0,0,0,12764,12765,7,11,0,0,12765,12766,7,6,0,0,12766,12767,5,95,0,0,12767,12768,7,25,0,0,12768,12769,7,19,0,0,12769,12770,7,15,0,0,12770,12771,7,12,0,0,12771,12772,7,6,0,0,12772,12773,7,18,0,0,12773,12774,7,8,0,0,12774,12775,7,19,0,0,12775,12776,7,23,0,0,12776,12777,7,6,0,0,12777,12778,7,7,0,0,12778,12779,7,26,0,0,12779,12780,7,6,0,0,12780,2118,1,0,0,0,12781,12782,7,11,0,0,12782,12783,7,6,0,0,12783,12784,5,95,0,0,12784,12785,7,25,0,0,12785,12786,7,19,0,0,12786,12787,7,15,0,0,12787,12788,7,12,0,0,12788,12789,7,6,0,0,12789,12790,7,18,0,0,12790,12791,7,8,0,0,12791,12792,7,19,0,0,12792,12793,7,23,0,0,12793,12794,7,9,0,0,12794,12795,7,21,0,0,12795,12796,7,16,0,0,12796,2120,1,0,0,0,12797,12798,7,11,0,0,12798,12799,7,6,0,0,12799,12800,5,95,0,0,12800,12801,7,25,0,0,12801,12802,7,19,0,0,12802,12803,7,15,0,0,12803,12804,7,12,0,0,12804,12805,7,6,0,0,12805,12806,7,12,0,0,12806,2122,1,0,0,0,12807,12808,7,11,0,0,12808,12809,7,6,0,0,12809,12810,5,95,0,0,12810,12811,7,25,0,0,12811,12812,7,19,0,0,12812,12813,7,5,0,0,12813,12814,7,10,0,0,12814,12815,7,18,0,0,12815,12816,7,8,0,0,12816,12817,7,19,0,0,12817,12818,7,23,0,0,12818,12819,7,6,0,0,12819,12820,7,7,0,0,12820,12821,7,26,0,0,12821,12822,7,6,0,0,12822,2124,1,0,0,0,12823,12824,7,11,0,0,12824,12825,7,6,0,0,12825,12826,5,95,0,0,12826,12827,7,25,0,0,12827,12828,7,19,0,0,12828,12829,7,5,0,0,12829,12830,7,10,0,0,12830,12831,7,18,0,0,12831,12832,7,8,0,0,12832,12833,7,19,0,0,12833,12834,7,23,0,0,12834,12835,7,9,0,0,12835,12836,7,21,0,0,12836,12837,7,16,0,0,12837,2126,1,0,0,0,12838,12839,7,11,0,0,12839,12840,7,6,0,0,12840,12841,5,95,0,0,12841,12842,7,25,0,0,12842,12843,7,19,0,0,12843,12844,7,5,0,0,12844,12845,7,10,0,0,12845,12846,7,22,0,0,12846,12847,7,19,0,0,12847,12848,7,12,0,0,12848,12849,7,18,0,0,12849,12850,7,8,0,0,12850,12851,7,19,0,0,12851,12852,7,23,0,0,12852,12853,7,6,0,0,12853,12854,7,7,0,0,12854,12855,7,26,0,0,12855,12856,7,6,0,0,12856,2128,1,0,0,0,12857,12858,7,11,0,0,12858,12859,7,6,0,0,12859,12860,5,95,0,0,12860,12861,7,25,0,0,12861,12862,7,19,0,0,12862,12863,7,5,0,0,12863,12864,7,10,0,0,12864,12865,7,22,0,0,12865,12866,7,19,0,0,12866,12867,7,12,0,0,12867,12868,7,18,0,0,12868,12869,7,8,0,0,12869,12870,7,19,0,0,12870,12871,7,23,0,0,12871,12872,7,9,0,0,12872,12873,7,21,0,0,12873,12874,7,16,0,0,12874,2130,1,0,0,0,12875,12876,7,11,0,0,12876,12877,7,6,0,0,12877,12878,5,95,0,0,12878,12879,7,11,0,0,12879,12880,7,8,0,0,12880,12881,7,15,0,0,12881,12882,7,4,0,0,12882,2132,1,0,0,0,12883,12884,7,11,0,0,12884,12885,7,6,0,0,12885,12886,5,95,0,0,12886,12887,7,11,0,0,12887,12888,7,6,0,0,12888,12889,7,3,0,0,12889,12890,7,8,0,0,12890,12891,7,6,0,0,12891,12892,7,25,0,0,12892,12893,7,19,0,0,12893,12894,7,15,0,0,12894,12895,7,12,0,0,12895,12896,7,6,0,0,12896,2134,1,0,0,0,12897,12898,7,11,0,0,12898,12899,7,6,0,0,12899,12900,5,95,0,0,12900,12901,7,11,0,0,12901,12902,7,10,0,0,12902,12903,7,23,0,0,12903,12904,7,4,0,0,12904,12905,7,15,0,0,12905,12906,7,18,0,0,12906,12907,7,18,0,0,12907,12908,7,7,0,0,12908,12909,7,8,0,0,12909,12910,7,7,0,0,12910,12911,7,12,0,0,12911,12912,7,14,0,0,12912,12913,7,7,0,0,12913,2136,1,0,0,0,12914,12915,7,11,0,0,12915,12916,7,6,0,0,12916,12917,5,95,0,0,12917,12918,7,6,0,0,12918,12919,7,19,0,0,12919,12920,7,17,0,0,12920,12921,7,14,0,0,12921,12922,7,20,0,0,12922,12923,7,7,0,0,12923,12924,7,11,0,0,12924,2138,1,0,0,0,12925,12926,7,11,0,0,12926,12927,7,6,0,0,12927,12928,5,95,0,0,12928,12929,7,17,0,0,12929,12930,7,12,0,0,12930,12931,7,15,0,0,12931,12932,7,19,0,0,12932,12933,7,12,0,0,12933,2140,1,0,0,0,12934,12935,7,11,0,0,12935,12936,7,6,0,0,12936,12937,5,95,0,0,12937,12938,7,9,0,0,12938,12939,7,15,0,0,12939,12940,7,6,0,0,12940,12941,7,20,0,0,12941,12942,7,15,0,0,12942,12943,7,12,0,0,12943,2142,1,0,0,0,12944,12945,7,11,0,0,12945,12946,7,6,0,0,12946,12947,5,95,0,0,12947,12948,7,26,0,0,12948,2144,1,0,0,0,12949,12950,7,11,0,0,12950,12951,7,6,0,0,12951,12952,5,95,0,0,12952,12953,7,10,0,0,12953,2146,1,0,0,0,12954,12955,7,11,0,0,12955,12956,7,17,0,0,12956,12957,7,16,0,0,12957,12958,7,4,0,0,12958,12959,7,3,0,0,12959,12960,7,6,0,0,12960,12961,7,7,0,0,12961,2148,1,0,0,0,12962,12963,7,11,0,0,12963,12964,7,17,0,0,12964,12965,7,16,0,0,12965,12966,7,11,0,0,12966,12967,7,6,0,0,12967,12968,7,8,0,0,12968,12969,7,15,0,0,12969,12970,7,12,0,0,12970,12971,7,22,0,0,12971,12972,5,95,0,0,12972,12973,7,15,0,0,12973,12974,7,12,0,0,12974,12975,7,4,0,0,12975,12976,7,7,0,0,12976,12977,7,26,0,0,12977,2150,1,0,0,0,12978,12979,7,11,0,0,12979,12980,7,17,0,0,12980,12981,7,16,0,0,12981,12982,7,6,0,0,12982,12983,7,15,0,0,12983,12984,7,23,0,0,12984,12985,7,7,0,0,12985,2152,1,0,0,0,12986,12987,7,11,0,0,12987,12988,7,10,0,0,12988,12989,7,11,0,0,12989,12990,7,6,0,0,12990,12991,7,7,0,0,12991,12992,7,23,0,0,12992,12993,5,95,0,0,12993,12994,7,17,0,0,12994,12995,7,11,0,0,12995,12996,7,7,0,0,12996,12997,7,8,0,0,12997,2154,1,0,0,0,12998,12999,7,6,0,0,12999,13e3,7,3,0,0,13e3,13001,7,12,0,0,13001,2156,1,0,0,0,13002,13003,7,6,0,0,13003,13004,7,15,0,0,13004,13005,7,23,0,0,13005,13006,7,7,0,0,13006,13007,7,4,0,0,13007,13008,7,15,0,0,13008,13009,7,18,0,0,13009,13010,7,18,0,0,13010,2158,1,0,0,0,13011,13012,7,6,0,0,13012,13013,7,15,0,0,13013,13014,7,23,0,0,13014,13015,7,7,0,0,13015,13016,7,11,0,0,13016,13017,7,6,0,0,13017,13018,7,3,0,0,13018,13019,7,23,0,0,13019,13020,7,25,0,0,13020,13021,7,3,0,0,13021,13022,7,4,0,0,13022,13023,7,4,0,0,13023,2160,1,0,0,0,13024,13025,7,6,0,0,13025,13026,7,15,0,0,13026,13027,7,23,0,0,13027,13028,7,7,0,0,13028,13029,7,11,0,0,13029,13030,7,6,0,0,13030,13031,7,3,0,0,13031,13032,7,23,0,0,13032,13033,7,25,0,0,13033,13034,7,4,0,0,13034,13035,7,15,0,0,13035,13036,7,18,0,0,13036,13037,7,18,0,0,13037,2162,1,0,0,0,13038,13039,7,6,0,0,13039,13040,7,15,0,0,13040,13041,7,23,0,0,13041,13042,7,7,0,0,13042,13043,5,95,0,0,13043,13044,7,18,0,0,13044,13045,7,19,0,0,13045,13046,7,8,0,0,13046,13047,7,23,0,0,13047,13048,7,3,0,0,13048,13049,7,6,0,0,13049,2164,1,0,0,0,13050,13051,7,6,0,0,13051,13052,7,15,0,0,13052,13053,7,23,0,0,13053,13054,7,7,0,0,13054,13055,5,95,0,0,13055,13056,7,6,0,0,13056,13057,7,19,0,0,13057,13058,5,95,0,0,13058,13059,7,11,0,0,13059,13060,7,7,0,0,13060,13061,7,14,0,0,13061,2166,1,0,0,0,13062,13063,7,6,0,0,13063,13064,7,19,0,0,13064,13065,7,17,0,0,13065,13066,7,14,0,0,13066,13067,7,20,0,0,13067,13068,7,7,0,0,13068,13069,7,11,0,0,13069,2168,1,0,0,0,13070,13071,7,6,0,0,13071,13072,7,19,0,0,13072,13073,5,95,0,0,13073,13074,7,16,0,0,13074,13075,7,3,0,0,13075,13076,7,11,0,0,13076,13077,7,7,0,0,13077,13078,5,54,0,0,13078,13079,5,52,0,0,13079,2170,1,0,0,0,13080,13081,7,6,0,0,13081,13082,7,19,0,0,13082,13083,5,95,0,0,13083,13084,7,4,0,0,13084,13085,7,3,0,0,13085,13086,7,10,0,0,13086,13087,7,11,0,0,13087,2172,1,0,0,0,13088,13089,7,6,0,0,13089,13090,7,19,0,0,13090,13091,5,95,0,0,13091,13092,7,11,0,0,13092,13093,7,7,0,0,13093,13094,7,14,0,0,13094,13095,7,19,0,0,13095,13096,7,12,0,0,13096,13097,7,4,0,0,13097,13098,7,11,0,0,13098,2174,1,0,0,0,13099,13100,7,6,0,0,13100,13101,7,25,0,0,13101,13102,5,95,0,0,13102,13103,7,14,0,0,13103,13104,7,19,0,0,13104,13105,7,12,0,0,13105,13106,7,12,0,0,13106,13107,7,7,0,0,13107,13108,7,14,0,0,13108,13109,7,6,0,0,13109,13110,7,15,0,0,13110,13111,7,19,0,0,13111,13112,7,12,0,0,13112,13113,5,95,0,0,13113,13114,7,3,0,0,13114,13115,7,4,0,0,13115,13116,7,23,0,0,13116,13117,7,15,0,0,13117,13118,7,12,0,0,13118,2176,1,0,0,0,13119,13120,7,17,0,0,13120,13121,7,14,0,0,13121,13122,7,3,0,0,13122,13123,7,11,0,0,13123,13124,7,7,0,0,13124,2178,1,0,0,0,13125,13126,7,17,0,0,13126,13127,7,12,0,0,13127,13128,7,14,0,0,13128,13129,7,19,0,0,13129,13130,7,23,0,0,13130,13131,7,25,0,0,13131,13132,7,8,0,0,13132,13133,7,7,0,0,13133,13134,7,11,0,0,13134,13135,7,11,0,0,13135,2180,1,0,0,0,13136,13137,7,17,0,0,13137,13138,7,12,0,0,13138,13139,7,14,0,0,13139,13140,7,19,0,0,13140,13141,7,23,0,0,13141,13142,7,25,0,0,13142,13143,7,8,0,0,13143,13144,7,7,0,0,13144,13145,7,11,0,0,13145,13146,7,11,0,0,13146,13147,7,7,0,0,13147,13148,7,4,0,0,13148,13149,5,95,0,0,13149,13150,7,5,0,0,13150,13151,7,7,0,0,13151,13152,7,12,0,0,13152,13153,7,22,0,0,13153,13154,7,6,0,0,13154,13155,7,20,0,0,13155,2182,1,0,0,0,13156,13157,7,17,0,0,13157,13158,7,12,0,0,13158,13159,7,20,0,0,13159,13160,7,7,0,0,13160,13161,7,26,0,0,13161,2184,1,0,0,0,13162,13163,7,17,0,0,13163,13164,7,12,0,0,13164,13165,7,15,0,0,13165,13166,7,26,0,0,13166,13167,5,95,0,0,13167,13168,7,6,0,0,13168,13169,7,15,0,0,13169,13170,7,23,0,0,13170,13171,7,7,0,0,13171,13172,7,11,0,0,13172,13173,7,6,0,0,13173,13174,7,3,0,0,13174,13175,7,23,0,0,13175,13176,7,25,0,0,13176,2186,1,0,0,0,13177,13178,7,17,0,0,13178,13179,7,25,0,0,13179,13180,7,4,0,0,13180,13181,7,3,0,0,13181,13182,7,6,0,0,13182,13183,7,7,0,0,13183,13184,7,26,0,0,13184,13185,7,23,0,0,13185,13186,7,5,0,0,13186,2188,1,0,0,0,13187,13188,7,17,0,0,13188,13189,7,25,0,0,13189,13190,7,25,0,0,13190,13191,7,7,0,0,13191,13192,7,8,0,0,13192,2190,1,0,0,0,13193,13194,7,17,0,0,13194,13195,7,17,0,0,13195,13196,7,15,0,0,13196,13197,7,4,0,0,13197,2192,1,0,0,0,13198,13199,7,17,0,0,13199,13200,7,17,0,0,13200,13201,7,15,0,0,13201,13202,7,4,0,0,13202,13203,5,95,0,0,13203,13204,7,11,0,0,13204,13205,7,20,0,0,13205,13206,7,19,0,0,13206,13207,7,8,0,0,13207,13208,7,6,0,0,13208,2194,1,0,0,0,13209,13210,7,24,0,0,13210,13211,7,3,0,0,13211,13212,7,5,0,0,13212,13213,7,15,0,0,13213,13214,7,4,0,0,13214,13215,7,3,0,0,13215,13216,7,6,0,0,13216,13217,7,7,0,0,13217,13218,5,95,0,0,13218,13219,7,25,0,0,13219,13220,7,3,0,0,13220,13221,7,11,0,0,13221,13222,7,11,0,0,13222,13223,7,9,0,0,13223,13224,7,19,0,0,13224,13225,7,8,0,0,13225,13226,7,4,0,0,13226,13227,5,95,0,0,13227,13228,7,11,0,0,13228,13229,7,6,0,0,13229,13230,7,8,0,0,13230,13231,7,7,0,0,13231,13232,7,12,0,0,13232,13233,7,22,0,0,13233,13234,7,6,0,0,13234,13235,7,20,0,0,13235,2196,1,0,0,0,13236,13237,7,24,0,0,13237,13238,7,7,0,0,13238,13239,7,8,0,0,13239,13240,7,11,0,0,13240,13241,7,15,0,0,13241,13242,7,19,0,0,13242,13243,7,12,0,0,13243,2198,1,0,0,0,13244,13245,7,9,0,0,13245,13246,7,3,0,0,13246,13247,7,15,0,0,13247,13248,7,6,0,0,13248,13249,5,95,0,0,13249,13250,7,17,0,0,13250,13251,7,12,0,0,13251,13252,7,6,0,0,13252,13253,7,15,0,0,13253,13254,7,5,0,0,13254,13255,5,95,0,0,13255,13256,7,11,0,0,13256,13257,7,28,0,0,13257,13258,7,5,0,0,13258,13259,5,95,0,0,13259,13260,7,6,0,0,13260,13261,7,20,0,0,13261,13262,7,8,0,0,13262,13263,7,7,0,0,13263,13264,7,3,0,0,13264,13265,7,4,0,0,13265,13266,5,95,0,0,13266,13267,7,3,0,0,13267,13268,7,18,0,0,13268,13269,7,6,0,0,13269,13270,7,7,0,0,13270,13271,7,8,0,0,13271,13272,5,95,0,0,13272,13273,7,22,0,0,13273,13274,7,6,0,0,13274,13275,7,15,0,0,13275,13276,7,4,0,0,13276,13277,7,11,0,0,13277,2200,1,0,0,0,13278,13279,7,9,0,0,13279,13280,7,7,0,0,13280,13281,7,7,0,0,13281,13282,7,21,0,0,13282,13283,7,4,0,0,13283,13284,7,3,0,0,13284,13285,7,10,0,0,13285,2202,1,0,0,0,13286,13287,7,9,0,0,13287,13288,7,7,0,0,13288,13289,7,7,0,0,13289,13290,7,21,0,0,13290,13291,7,19,0,0,13291,13292,7,18,0,0,13292,13293,7,10,0,0,13293,13294,7,7,0,0,13294,13295,7,3,0,0,13295,13296,7,8,0,0,13296,2204,1,0,0,0,13297,13298,7,9,0,0,13298,13299,7,7,0,0,13299,13300,7,15,0,0,13300,13301,7,22,0,0,13301,13302,7,20,0,0,13302,13303,7,6,0,0,13303,13304,5,95,0,0,13304,13305,7,11,0,0,13305,13306,7,6,0,0,13306,13307,7,8,0,0,13307,13308,7,15,0,0,13308,13309,7,12,0,0,13309,13310,7,22,0,0,13310,2206,1,0,0,0,13311,13312,7,9,0,0,13312,13313,7,15,0,0,13313,13314,7,6,0,0,13314,13315,7,20,0,0,13315,13316,7,15,0,0,13316,13317,7,12,0,0,13317,2208,1,0,0,0,13318,13319,7,10,0,0,13319,13320,7,7,0,0,13320,13321,7,3,0,0,13321,13322,7,8,0,0,13322,13323,7,9,0,0,13323,13324,7,7,0,0,13324,13325,7,7,0,0,13325,13326,7,21,0,0,13326,2210,1,0,0,0,13327,13328,7,10,0,0,13328,2212,1,0,0,0,13329,13330,7,26,0,0,13330,2214,1,0,0,0,13331,13332,5,58,0,0,13332,13333,5,61,0,0,13333,2216,1,0,0,0,13334,13335,5,43,0,0,13335,13336,5,61,0,0,13336,2218,1,0,0,0,13337,13338,5,45,0,0,13338,13339,5,61,0,0,13339,2220,1,0,0,0,13340,13341,5,42,0,0,13341,13342,5,61,0,0,13342,2222,1,0,0,0,13343,13344,5,47,0,0,13344,13345,5,61,0,0,13345,2224,1,0,0,0,13346,13347,5,37,0,0,13347,13348,5,61,0,0,13348,2226,1,0,0,0,13349,13350,5,38,0,0,13350,13351,5,61,0,0,13351,2228,1,0,0,0,13352,13353,5,94,0,0,13353,13354,5,61,0,0,13354,2230,1,0,0,0,13355,13356,5,124,0,0,13356,13357,5,61,0,0,13357,2232,1,0,0,0,13358,13359,5,42,0,0,13359,2234,1,0,0,0,13360,13361,5,47,0,0,13361,2236,1,0,0,0,13362,13363,5,37,0,0,13363,2238,1,0,0,0,13364,13365,5,43,0,0,13365,2240,1,0,0,0,13366,13367,5,45,0,0,13367,2242,1,0,0,0,13368,13369,7,4,0,0,13369,13370,7,15,0,0,13370,13371,7,24,0,0,13371,2244,1,0,0,0,13372,13373,7,23,0,0,13373,13374,7,19,0,0,13374,13375,7,4,0,0,13375,2246,1,0,0,0,13376,13377,5,61,0,0,13377,2248,1,0,0,0,13378,13379,5,62,0,0,13379,2250,1,0,0,0,13380,13381,5,60,0,0,13381,2252,1,0,0,0,13382,13383,5,33,0,0,13383,2254,1,0,0,0,13384,13385,5,126,0,0,13385,2256,1,0,0,0,13386,13387,5,124,0,0,13387,2258,1,0,0,0,13388,13389,5,38,0,0,13389,2260,1,0,0,0,13390,13391,5,94,0,0,13391,2262,1,0,0,0,13392,13393,5,46,0,0,13393,2264,1,0,0,0,13394,13395,5,40,0,0,13395,2266,1,0,0,0,13396,13397,5,41,0,0,13397,2268,1,0,0,0,13398,13399,5,44,0,0,13399,2270,1,0,0,0,13400,13401,5,59,0,0,13401,2272,1,0,0,0,13402,13403,5,64,0,0,13403,2274,1,0,0,0,13404,13405,5,48,0,0,13405,2276,1,0,0,0,13406,13407,5,49,0,0,13407,2278,1,0,0,0,13408,13409,5,50,0,0,13409,2280,1,0,0,0,13410,13411,5,39,0,0,13411,2282,1,0,0,0,13412,13413,5,34,0,0,13413,2284,1,0,0,0,13414,13415,5,96,0,0,13415,2286,1,0,0,0,13416,13417,5,58,0,0,13417,2288,1,0,0,0,13418,13422,3,2281,1140,0,13419,13422,3,2283,1141,0,13420,13422,3,2285,1142,0,13421,13418,1,0,0,0,13421,13419,1,0,0,0,13421,13420,1,0,0,0,13422,2290,1,0,0,0,13423,13424,5,96,0,0,13424,13425,3,2323,1161,0,13425,13426,5,96,0,0,13426,2292,1,0,0,0,13427,13429,3,2337,1168,0,13428,13427,1,0,0,0,13429,13430,1,0,0,0,13430,13428,1,0,0,0,13430,13431,1,0,0,0,13431,13432,1,0,0,0,13432,13433,7,29,0,0,13433,2294,1,0,0,0,13434,13435,7,12,0,0,13435,13436,3,2331,1165,0,13436,2296,1,0,0,0,13437,13441,3,2329,1164,0,13438,13441,3,2331,1165,0,13439,13441,3,2333,1166,0,13440,13437,1,0,0,0,13440,13438,1,0,0,0,13440,13439,1,0,0,0,13441,2298,1,0,0,0,13442,13444,3,2337,1168,0,13443,13442,1,0,0,0,13444,13445,1,0,0,0,13445,13443,1,0,0,0,13445,13446,1,0,0,0,13446,2300,1,0,0,0,13447,13448,7,26,0,0,13448,13452,5,39,0,0,13449,13450,3,2335,1167,0,13450,13451,3,2335,1167,0,13451,13453,1,0,0,0,13452,13449,1,0,0,0,13453,13454,1,0,0,0,13454,13452,1,0,0,0,13454,13455,1,0,0,0,13455,13456,1,0,0,0,13456,13457,5,39,0,0,13457,13467,1,0,0,0,13458,13459,5,48,0,0,13459,13460,7,26,0,0,13460,13462,1,0,0,0,13461,13463,3,2335,1167,0,13462,13461,1,0,0,0,13463,13464,1,0,0,0,13464,13462,1,0,0,0,13464,13465,1,0,0,0,13465,13467,1,0,0,0,13466,13447,1,0,0,0,13466,13458,1,0,0,0,13467,2302,1,0,0,0,13468,13470,3,2337,1168,0,13469,13468,1,0,0,0,13470,13473,1,0,0,0,13471,13469,1,0,0,0,13471,13472,1,0,0,0,13472,13474,1,0,0,0,13473,13471,1,0,0,0,13474,13476,5,46,0,0,13475,13477,3,2337,1168,0,13476,13475,1,0,0,0,13477,13478,1,0,0,0,13478,13476,1,0,0,0,13478,13479,1,0,0,0,13479,13510,1,0,0,0,13480,13482,3,2337,1168,0,13481,13480,1,0,0,0,13482,13483,1,0,0,0,13483,13481,1,0,0,0,13483,13484,1,0,0,0,13484,13485,1,0,0,0,13485,13486,5,46,0,0,13486,13487,3,2325,1162,0,13487,13510,1,0,0,0,13488,13490,3,2337,1168,0,13489,13488,1,0,0,0,13490,13493,1,0,0,0,13491,13489,1,0,0,0,13491,13492,1,0,0,0,13492,13494,1,0,0,0,13493,13491,1,0,0,0,13494,13496,5,46,0,0,13495,13497,3,2337,1168,0,13496,13495,1,0,0,0,13497,13498,1,0,0,0,13498,13496,1,0,0,0,13498,13499,1,0,0,0,13499,13500,1,0,0,0,13500,13501,3,2325,1162,0,13501,13510,1,0,0,0,13502,13504,3,2337,1168,0,13503,13502,1,0,0,0,13504,13505,1,0,0,0,13505,13503,1,0,0,0,13505,13506,1,0,0,0,13506,13507,1,0,0,0,13507,13508,3,2325,1162,0,13508,13510,1,0,0,0,13509,13471,1,0,0,0,13509,13481,1,0,0,0,13509,13491,1,0,0,0,13509,13503,1,0,0,0,13510,2304,1,0,0,0,13511,13512,5,92,0,0,13512,13513,7,12,0,0,13513,2306,1,0,0,0,13514,13515,3,2339,1169,0,13515,2308,1,0,0,0,13516,13517,5,95,0,0,13517,13518,3,2323,1161,0,13518,2310,1,0,0,0,13519,13520,5,46,0,0,13520,13521,3,2327,1163,0,13521,2312,1,0,0,0,13522,13523,3,2327,1163,0,13523,2314,1,0,0,0,13524,13525,3,2333,1166,0,13525,2316,1,0,0,0,13526,13527,3,2273,1136,0,13527,13528,3,2341,1170,0,13528,2318,1,0,0,0,13529,13536,3,2273,1136,0,13530,13537,3,2297,1148,0,13531,13533,7,30,0,0,13532,13531,1,0,0,0,13533,13534,1,0,0,0,13534,13532,1,0,0,0,13534,13535,1,0,0,0,13535,13537,1,0,0,0,13536,13530,1,0,0,0,13536,13532,1,0,0,0,13537,2320,1,0,0,0,13538,13539,3,2273,1136,0,13539,13546,3,2273,1136,0,13540,13542,7,30,0,0,13541,13540,1,0,0,0,13542,13543,1,0,0,0,13543,13541,1,0,0,0,13543,13544,1,0,0,0,13544,13547,1,0,0,0,13545,13547,3,2333,1166,0,13546,13541,1,0,0,0,13546,13545,1,0,0,0,13547,2322,1,0,0,0,13548,13590,3,1491,745,0,13549,13590,3,1493,746,0,13550,13590,3,1495,747,0,13551,13590,3,451,225,0,13552,13590,3,1497,748,0,13553,13590,3,1499,749,0,13554,13590,3,1501,750,0,13555,13590,3,1503,751,0,13556,13590,3,1505,752,0,13557,13590,3,1507,753,0,13558,13590,3,1509,754,0,13559,13590,3,1511,755,0,13560,13590,3,1513,756,0,13561,13590,3,1515,757,0,13562,13590,3,1517,758,0,13563,13590,3,1521,760,0,13564,13590,3,1523,761,0,13565,13590,3,1525,762,0,13566,13590,3,1527,763,0,13567,13590,3,1529,764,0,13568,13590,3,1531,765,0,13569,13590,3,1533,766,0,13570,13590,3,1535,767,0,13571,13590,3,1537,768,0,13572,13590,3,1539,769,0,13573,13590,3,1541,770,0,13574,13590,3,1543,771,0,13575,13590,3,1545,772,0,13576,13590,3,1547,773,0,13577,13590,3,1549,774,0,13578,13590,3,1551,775,0,13579,13590,3,1553,776,0,13580,13590,3,1555,777,0,13581,13590,3,1557,778,0,13582,13590,3,1559,779,0,13583,13590,3,1561,780,0,13584,13590,3,1563,781,0,13585,13590,3,1565,782,0,13586,13590,3,1567,783,0,13587,13590,3,1569,784,0,13588,13590,3,1571,785,0,13589,13548,1,0,0,0,13589,13549,1,0,0,0,13589,13550,1,0,0,0,13589,13551,1,0,0,0,13589,13552,1,0,0,0,13589,13553,1,0,0,0,13589,13554,1,0,0,0,13589,13555,1,0,0,0,13589,13556,1,0,0,0,13589,13557,1,0,0,0,13589,13558,1,0,0,0,13589,13559,1,0,0,0,13589,13560,1,0,0,0,13589,13561,1,0,0,0,13589,13562,1,0,0,0,13589,13563,1,0,0,0,13589,13564,1,0,0,0,13589,13565,1,0,0,0,13589,13566,1,0,0,0,13589,13567,1,0,0,0,13589,13568,1,0,0,0,13589,13569,1,0,0,0,13589,13570,1,0,0,0,13589,13571,1,0,0,0,13589,13572,1,0,0,0,13589,13573,1,0,0,0,13589,13574,1,0,0,0,13589,13575,1,0,0,0,13589,13576,1,0,0,0,13589,13577,1,0,0,0,13589,13578,1,0,0,0,13589,13579,1,0,0,0,13589,13580,1,0,0,0,13589,13581,1,0,0,0,13589,13582,1,0,0,0,13589,13583,1,0,0,0,13589,13584,1,0,0,0,13589,13585,1,0,0,0,13589,13586,1,0,0,0,13589,13587,1,0,0,0,13589,13588,1,0,0,0,13590,2324,1,0,0,0,13591,13593,7,7,0,0,13592,13594,7,31,0,0,13593,13592,1,0,0,0,13593,13594,1,0,0,0,13594,13596,1,0,0,0,13595,13597,3,2337,1168,0,13596,13595,1,0,0,0,13597,13598,1,0,0,0,13598,13596,1,0,0,0,13598,13599,1,0,0,0,13599,2326,1,0,0,0,13600,13602,7,32,0,0,13601,13600,1,0,0,0,13602,13605,1,0,0,0,13603,13604,1,0,0,0,13603,13601,1,0,0,0,13604,13607,1,0,0,0,13605,13603,1,0,0,0,13606,13608,7,33,0,0,13607,13606,1,0,0,0,13608,13609,1,0,0,0,13609,13610,1,0,0,0,13609,13607,1,0,0,0,13610,13614,1,0,0,0,13611,13613,7,32,0,0,13612,13611,1,0,0,0,13613,13616,1,0,0,0,13614,13612,1,0,0,0,13614,13615,1,0,0,0,13615,2328,1,0,0,0,13616,13614,1,0,0,0,13617,13625,5,34,0,0,13618,13619,5,92,0,0,13619,13624,9,0,0,0,13620,13621,5,34,0,0,13621,13624,5,34,0,0,13622,13624,8,34,0,0,13623,13618,1,0,0,0,13623,13620,1,0,0,0,13623,13622,1,0,0,0,13624,13627,1,0,0,0,13625,13623,1,0,0,0,13625,13626,1,0,0,0,13626,13628,1,0,0,0,13627,13625,1,0,0,0,13628,13629,5,34,0,0,13629,2330,1,0,0,0,13630,13638,5,39,0,0,13631,13632,5,92,0,0,13632,13637,9,0,0,0,13633,13634,5,39,0,0,13634,13637,5,39,0,0,13635,13637,8,35,0,0,13636,13631,1,0,0,0,13636,13633,1,0,0,0,13636,13635,1,0,0,0,13637,13640,1,0,0,0,13638,13636,1,0,0,0,13638,13639,1,0,0,0,13639,13641,1,0,0,0,13640,13638,1,0,0,0,13641,13642,5,39,0,0,13642,2332,1,0,0,0,13643,13649,5,96,0,0,13644,13648,8,36,0,0,13645,13646,5,96,0,0,13646,13648,5,96,0,0,13647,13644,1,0,0,0,13647,13645,1,0,0,0,13648,13651,1,0,0,0,13649,13647,1,0,0,0,13649,13650,1,0,0,0,13650,13652,1,0,0,0,13651,13649,1,0,0,0,13652,13653,5,96,0,0,13653,2334,1,0,0,0,13654,13655,7,37,0,0,13655,2336,1,0,0,0,13656,13657,7,38,0,0,13657,2338,1,0,0,0,13658,13659,7,16,0,0,13659,13661,5,39,0,0,13660,13662,7,39,0,0,13661,13660,1,0,0,0,13662,13663,1,0,0,0,13663,13661,1,0,0,0,13663,13664,1,0,0,0,13664,13665,1,0,0,0,13665,13666,5,39,0,0,13666,2340,1,0,0,0,13667,13669,7,38,0,0,13668,13667,1,0,0,0,13669,13670,1,0,0,0,13670,13668,1,0,0,0,13670,13671,1,0,0,0,13671,13672,1,0,0,0,13672,13674,5,46,0,0,13673,13675,7,40,0,0,13674,13673,1,0,0,0,13675,13676,1,0,0,0,13676,13674,1,0,0,0,13676,13677,1,0,0,0,13677,13698,1,0,0,0,13678,13680,7,37,0,0,13679,13678,1,0,0,0,13680,13683,1,0,0,0,13681,13679,1,0,0,0,13681,13682,1,0,0,0,13682,13684,1,0,0,0,13683,13681,1,0,0,0,13684,13688,5,58,0,0,13685,13687,7,37,0,0,13686,13685,1,0,0,0,13687,13690,1,0,0,0,13688,13686,1,0,0,0,13688,13689,1,0,0,0,13689,13691,1,0,0,0,13690,13688,1,0,0,0,13691,13693,5,58,0,0,13692,13694,7,41,0,0,13693,13692,1,0,0,0,13694,13695,1,0,0,0,13695,13693,1,0,0,0,13695,13696,1,0,0,0,13696,13698,1,0,0,0,13697,13668,1,0,0,0,13697,13681,1,0,0,0,13698,2342,1,0,0,0,13699,13700,9,0,0,0,13700,13701,1,0,0,0,13701,13702,6,1171,2,0,13702,2344,1,0,0,0,51,0,2348,2359,2372,2386,2390,2395,2399,2403,2409,2413,2415,9261,9288,13421,13430,13440,13445,13454,13464,13466,13471,13478,13483,13491,13498,13505,13509,13534,13536,13543,13546,13589,13593,13598,13603,13609,13614,13623,13625,13636,13638,13647,13649,13663,13670,13676,13681,13688,13695,13697,3,0,1,0,6,0,0,0,3,0],Ki.vocabulary=new Ra(Ki.literalNames,Ki.symbolicNames,[]),Ki.decisionsToDFA=Ki._ATN.decisionToState.map(((t,e)=>new ni(t,e))),Ki),FC=(Qi=class t extends Cc{get grammarFileName(){return"MySqlParser.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}createFailedPredicateException(t,e){return new Sc(this,t,e)}constructor(e){super(e),this.interpreter=new Ai(this,t._ATN,t.decisionsToDFA,new Si)}root(){let e,s=new vC(this.context,this.state);this.enterRule(s,0,t.RULE_root);try{this.enterOuterAlt(s,1),this.state=751,this.errorHandler.sync(this),e=this.tokenStream.LA(1),(!(-32&e)&&1<'","'<'","'!'","'~'","'|'","'&'","'^'","'.'","'('","')'","','","';'","'@'","'0'","'1'","'2'","'''","'\"'","'`'","':'"],Qi.symbolicNames=[null,"SPACE","SPEC_MYSQL_COMMENT","COMMENT_INPUT","LINE_COMMENT","ADD","ALL","ALTER","ALWAYS","ANALYZE","AND","ARRAY","AS","ASC","ATTRIBUTE","BEFORE","BETWEEN","BOTH","BUCKETS","BY","CALL","CASCADE","CASE","CAST","CHANGE","CHARACTER","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_ROLE","CURRENT_USER","CURSOR","DATABASE","DATABASES","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DIAGNOSTICS","DISTINCT","DISTINCTROW","DROP","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ENFORCED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GET","GRANT","GROUP","HAVING","HIGH_PRIORITY","HISTOGRAM","IF","IGNORE","IGNORED","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LATERAL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCK","LOCKED","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINVALUE","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL_LITERAL","NUMBER","ON","OPTIMIZE","OPTION","OPTIONAL","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETAIN","RETURN","REVOKE","RIGHT","RLIKE","SCHEMA","SCHEMAS","SELECT","SET","SEPARATOR","SHOW","SIGNAL","SKIP_","SKIP_QUERY_REWRITE","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STACKED","STARTING","STATEMENT","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","VALUES","WHEN","WHERE","WHILE","WITH","WRITE","XOR","ZEROFILL","TINYINT","SMALLINT","MEDIUMINT","MIDDLEINT","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","BIGINT","REAL","DOUBLE","PRECISION","FLOAT","FLOAT4","FLOAT8","DECIMAL","DEC","NUMERIC","DATE","TIME","TIMESTAMP","DATETIME","YEAR","CHAR","VARCHAR","NVARCHAR","NATIONAL","BINARY","VARBINARY","TINYBLOB","BLOB","MEDIUMBLOB","LONG","LONGBLOB","TINYTEXT","TEXT","MEDIUMTEXT","LONGTEXT","ENUM","VARYING","SERIAL","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND","SECOND_MICROSECOND","MINUTE_MICROSECOND","HOUR_MICROSECOND","DAY_MICROSECOND","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","NESTED","ORDINALITY","PATH","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","GROUP_CONCAT","LAG","LAST_VALUE","LEAD","MAX","MIN","NTILE","NTH_VALUE","PERCENT_RANK","RANK","ROW_NUMBER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","LOCALTIME","CURDATE","CURTIME","DATE_ADD","DATE_SUB","EXTRACT","LOCALTIMESTAMP","NOW","POSITION","SUBSTR","SUBSTRING","SYSDATE","TRIM","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","ACCOUNT","ACTION","AFTER","AGGREGATE","ALGORITHM","ANY","AT","AUTHORS","AUTOCOMMIT","AUTOEXTEND_SIZE","AUTO_INCREMENT","AVG_ROW_LENGTH","BEGIN","BINLOG","BIT","BLOCK","BOOL","BOOLEAN","BTREE","CACHE","CASCADED","CHAIN","CHANGED","CHANNEL","CHECKSUM","PAGE_CHECKSUM","CIPHER","CLASS_ORIGIN","CLIENT","CLOSE","CLUSTERING","COALESCE","CODE","COLUMNS","COLUMN_FORMAT","COLUMN_NAME","COMMENT","COMMIT","COMPACT","COMPLETION","COMPRESSED","COMPRESSION","CONCURRENT","CONNECT","CONNECTION","CONSISTENT","CONSTRAINT_CATALOG","CONSTRAINT_SCHEMA","CONSTRAINT_NAME","CONTAINS","CONTEXT","CONTRIBUTORS","COPY","CPU","CYCLE","CURSOR_NAME","DATA","DATAFILE","DEALLOCATE","DEFAULT_AUTH","DEFINER","DELAY_KEY_WRITE","DES_KEY_FILE","DIRECTORY","DISABLE","DISCARD","DISK","DO","DUMPFILE","DUPLICATE","DYNAMIC","ENABLE","ENCRYPTED","ENCRYPTION","ENCRYPTION_KEY_ID","END","ENDS","ENGINE","ENGINES","ERROR","ERRORS","ESCAPE","EVEN","EVENT","EVENTS","EVERY","EXCHANGE","EXCLUSIVE","EXPIRE","EXPORT","EXTENDED","EXTENT_SIZE","FAILED_LOGIN_ATTEMPTS","FAST","FAULTS","FIELDS","FILE_BLOCK_SIZE","FILTER","FIRST","FIXED","FLUSH","FOLLOWING","FOLLOWS","FOUND","FULL","FUNCTION","GENERAL","GLOBAL","GRANTS","GROUP_REPLICATION","HANDLER","HASH","HELP","HISTORY","HOST","HOSTS","IDENTIFIED","IGNORE_SERVER_IDS","IMPORT","INCREMENT","INDEXES","INITIAL_SIZE","INPLACE","INSERT_METHOD","INSTALL","INSTANCE","INSTANT","INVISIBLE","INVOKER","IO","IO_THREAD","IPC","ISOLATION","ISSUER","JSON","KEY_BLOCK_SIZE","LANGUAGE","LAST","LEAVES","LESS","LEVEL","LIST","LOCAL","LOGFILE","LOGS","MASTER","MASTER_AUTO_POSITION","MASTER_CONNECT_RETRY","MASTER_DELAY","MASTER_HEARTBEAT_PERIOD","MASTER_HOST","MASTER_LOG_FILE","MASTER_LOG_POS","MASTER_PASSWORD","MASTER_PORT","MASTER_RETRY_COUNT","MASTER_SSL","MASTER_SSL_CA","MASTER_SSL_CAPATH","MASTER_SSL_CERT","MASTER_SSL_CIPHER","MASTER_SSL_CRL","MASTER_SSL_CRLPATH","MASTER_SSL_KEY","MASTER_TLS_VERSION","MASTER_USER","MAX_CONNECTIONS_PER_HOUR","MAX_QUERIES_PER_HOUR","MAX_ROWS","MAX_SIZE","MAX_UPDATES_PER_HOUR","MAX_USER_CONNECTIONS","MEDIUM","MEMBER","MERGE","MESSAGE_TEXT","MID","MIGRATE","MIN_ROWS","MODE","MODIFY","MUTEX","MYSQL","MYSQL_ERRNO","NAME","NAMES","NCHAR","NEVER","NEXT","NO","NOCACHE","NOCOPY","NOCYCLE","NOMAXVALUE","NOMINVALUE","NOWAIT","NODEGROUP","NONE","ODBC","OFFLINE","OFFSET","OF","OJ","OLD_PASSWORD","ONE","ONLINE","ONLY","OPEN","OPTIMIZER_COSTS","OPTIONS","OWNER","PACK_KEYS","PAGE","PAGE_COMPRESSED","PAGE_COMPRESSION_LEVEL","PARSER","PARTIAL","PARTITIONING","PARTITIONS","PASSWORD","PASSWORD_LOCK_TIME","PHASE","PLUGIN","PLUGIN_DIR","PLUGINS","PORT","PRECEDES","PRECEDING","PREPARE","PRESERVE","PREV","PROCESSLIST","PROFILE","PROFILES","PROXY","QUERY","QUICK","REBUILD","RECOVER","RECURSIVE","REDO_BUFFER_SIZE","REDUNDANT","RELAY","RELAY_LOG_FILE","RELAY_LOG_POS","RELAYLOG","REMOVE","REORGANIZE","REPAIR","REPLICATE_DO_DB","REPLICATE_DO_TABLE","REPLICATE_IGNORE_DB","REPLICATE_IGNORE_TABLE","REPLICATE_REWRITE_DB","REPLICATE_WILD_DO_TABLE","REPLICATE_WILD_IGNORE_TABLE","REPLICATION","RESET","RESTART","RESUME","RETURNED_SQLSTATE","RETURNING","RETURNS","REUSE","ROLE","ROLLBACK","ROLLUP","ROTATE","ROW","ROWS","ROW_FORMAT","RTREE","SAVEPOINT","SCHEDULE","SECURITY","SEQUENCE","SERVER","SESSION","SHARE","SHARED","SIGNED","SIMPLE","SLAVE","SLOW","SNAPSHOT","SOCKET","SOME","SONAME","SOUNDS","SOURCE","SQL_AFTER_GTIDS","SQL_AFTER_MTS_GAPS","SQL_BEFORE_GTIDS","SQL_BUFFER_RESULT","SQL_CACHE","SQL_NO_CACHE","SQL_THREAD","START","STARTS","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STATUS","STOP","STORAGE","STORED","STRING","SUBCLASS_ORIGIN","SUBJECT","SUBPARTITION","SUBPARTITIONS","SUSPEND","SWAPS","SWITCHES","TABLE_NAME","TABLESPACE","TABLE_TYPE","TEMPORARY","TEMPTABLE","THAN","TRADITIONAL","TRANSACTION","TRANSACTIONAL","TRIGGERS","TRUNCATE","UNBOUNDED","UNDEFINED","UNDOFILE","UNDO_BUFFER_SIZE","UNINSTALL","UNKNOWN","UNTIL","UPGRADE","USER","USE_FRM","USER_RESOURCES","VALIDATION","VALUE","VARIABLES","VIEW","VIRTUAL","VISIBLE","WAIT","WARNINGS","WINDOW","WITHOUT","WORK","WRAPPER","X509","XA","XML","YES","EUR","USA","JIS","ISO","INTERNAL","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","MICROSECOND","ADMIN","APPLICATION_PASSWORD_ADMIN","AUDIT_ABORT_EXEMPT","AUDIT_ADMIN","AUTHENTICATION_POLICY_ADMIN","BACKUP_ADMIN","BINLOG_ADMIN","BINLOG_ENCRYPTION_ADMIN","CLONE_ADMIN","CONNECTION_ADMIN","ENCRYPTION_KEY_ADMIN","EXECUTE","FILE","FIREWALL_ADMIN","FIREWALL_EXEMPT","FIREWALL_USER","FLUSH_OPTIMIZER_COSTS","FLUSH_STATUS","FLUSH_TABLES","FLUSH_USER_RESOURCES","GROUP_REPLICATION_ADMIN","INNODB_REDO_LOG_ARCHIVE","INNODB_REDO_LOG_ENABLE","INVOKE","LAMBDA","NDB_STORED_USER","PASSWORDLESS_USER_ADMIN","PERSIST_RO_VARIABLES_ADMIN","PRIVILEGES","PROCESS","RELOAD","REPLICATION_APPLIER","REPLICATION_SLAVE_ADMIN","RESOURCE_GROUP_ADMIN","RESOURCE_GROUP_USER","ROLE_ADMIN","ROUTINE","S3","SERVICE_CONNECTION_ADMIN","SESSION_VARIABLES_ADMIN","SET_USER_ID","SHOW_ROUTINE","SHUTDOWN","SUPER","SYSTEM_VARIABLES_ADMIN","TABLES","TABLE_ENCRYPTION_ADMIN","VERSION_TOKEN_ADMIN","XA_RECOVER_ADMIN","ARMSCII8","ASCII","BIG5","CP1250","CP1251","CP1256","CP1257","CP850","CP852","CP866","CP932","DEC8","EUCJPMS","EUCKR","GB18030","GB2312","GBK","GEOSTD8","GREEK","HEBREW","HP8","KEYBCS2","KOI8R","KOI8U","LATIN1","LATIN2","LATIN5","LATIN7","MACCE","MACROMAN","SJIS","SWE7","TIS620","UCS2","UJIS","UTF16","UTF16LE","UTF32","UTF8","UTF8MB3","UTF8MB4","ARCHIVE","BLACKHOLE","CSV","FEDERATED","INNODB","MEMORY","MRG_MYISAM","MYISAM","NDB","NDBCLUSTER","PERFORMANCE_SCHEMA","TOKUDB","REPEATABLE","COMMITTED","UNCOMMITTED","SERIALIZABLE","GEOMETRYCOLLECTION","GEOMCOLLECTION","GEOMETRY","LINESTRING","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","POINT","POLYGON","ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","AREA","ASBINARY","ASIN","ASTEXT","ASWKB","ASWKT","ASYMMETRIC_DECRYPT","ASYMMETRIC_DERIVE","ASYMMETRIC_ENCRYPT","ASYMMETRIC_SIGN","ASYMMETRIC_VERIFY","ATAN","ATAN2","BENCHMARK","BIN","BIT_COUNT","BIT_LENGTH","BUFFER","CATALOG_NAME","CEIL","CEILING","CENTROID","CHARACTER_LENGTH","CHARSET","CHAR_LENGTH","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","CREATE_ASYMMETRIC_PRIV_KEY","CREATE_ASYMMETRIC_PUB_KEY","CREATE_DH_PARAMETERS","CREATE_DIGEST","CROSSES","DATEDIFF","DATE_FORMAT","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEGREES","DES_DECRYPT","DES_ENCRYPT","DIMENSION","DISJOINT","ELT","ENCODE","ENCRYPT","ENDPOINT","ENGINE_ATTRIBUTE","ENVELOPE","EQUALS","EXP","EXPORT_SET","EXTERIORRING","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLFROMTEXT","GEOMCOLLFROMWKB","GEOMETRYCOLLECTIONFROMTEXT","GEOMETRYCOLLECTIONFROMWKB","GEOMETRYFROMTEXT","GEOMETRYFROMWKB","GEOMETRYN","GEOMETRYTYPE","GEOMFROMTEXT","GEOMFROMWKB","GET_FORMAT","GET_LOCK","GLENGTH","GREATEST","GTID_SUBSET","GTID_SUBTRACT","HEX","IFNULL","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSTR","INTERIORRINGN","INTERSECTS","ISCLOSED","ISEMPTY","ISNULL","ISSIMPLE","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LINEFROMTEXT","LINEFROMWKB","LINESTRINGFROMTEXT","LINESTRINGFROMWKB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKEDATE","MAKETIME","MAKE_SET","MASTER_POS_WAIT","MBRCONTAINS","MBRDISJOINT","MBREQUAL","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MLINEFROMTEXT","MLINEFROMWKB","MONTHNAME","MPOINTFROMTEXT","MPOINTFROMWKB","MPOLYFROMTEXT","MPOLYFROMWKB","MULTILINESTRINGFROMTEXT","MULTILINESTRINGFROMWKB","MULTIPOINTFROMTEXT","MULTIPOINTFROMWKB","MULTIPOLYGONFROMTEXT","MULTIPOLYGONFROMWKB","NAME_CONST","NULLIF","NUMGEOMETRIES","NUMINTERIORRINGS","NUMPOINTS","OCT","OCTET_LENGTH","ORD","OVERLAPS","PERIOD_ADD","PERIOD_DIFF","PI","POINTFROMTEXT","POINTFROMWKB","POINTN","POLYFROMTEXT","POLYFROMWKB","POLYGONFROMTEXT","POLYGONFROMWKB","POW","POWER","QUOTE","RADIANS","RAND","RANDOM","RANDOM_BYTES","RELEASE_LOCK","REVERSE","ROUND","ROW_COUNT","RPAD","RTRIM","SEC_TO_TIME","SECONDARY_ENGINE_ATTRIBUTE","SESSION_USER","SHA","SHA1","SHA2","SCHEMA_NAME","SIGN","SIN","SLEEP","SOUNDEX","SQL_THREAD_WAIT_AFTER_GTIDS","SQRT","SRID","STARTPOINT","STRCMP","STR_TO_DATE","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_ASWKB","ST_ASWKT","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMTXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYCOLLECTIONFROMTEXT","ST_GEOMETRYCOLLECTIONFROMWKB","ST_GEOMETRYFROMTEXT","ST_GEOMETRYFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINESTRINGFROMTEXT","ST_LINESTRINGFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMINTERIORRINGS","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_POLYGONFROMTEXT","ST_POLYGONFROMWKB","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_Y","SUBDATE","SUBSTRING_INDEX","SUBTIME","SYSTEM_USER","TAN","TIMEDIFF","TIMESTAMPADD","TIMESTAMPDIFF","TIME_FORMAT","TIME_TO_SEC","TOUCHES","TO_BASE64","TO_DAYS","TO_SECONDS","TP_CONNECTION_ADMIN","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VALIDATE_PASSWORD_STRENGTH","VERSION","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","WITHIN","YEARWEEK","Y_FUNCTION","X_FUNCTION","VAR_ASSIGN","PLUS_ASSIGN","MINUS_ASSIGN","MULT_ASSIGN","DIV_ASSIGN","MOD_ASSIGN","AND_ASSIGN","XOR_ASSIGN","OR_ASSIGN","STAR","DIVIDE","MODULE","PLUS","MINUS","DIV","MOD","EQUAL_SYMBOL","GREATER_SYMBOL","LESS_SYMBOL","EXCLAMATION_SYMBOL","BIT_NOT_OP","BIT_OR_OP","BIT_AND_OP","BIT_XOR_OP","DOT","LR_BRACKET","RR_BRACKET","COMMA","SEMI","AT_SIGN","ZERO_DECIMAL","ONE_DECIMAL","TWO_DECIMAL","SINGLE_QUOTE_SYMB","DOUBLE_QUOTE_SYMB","REVERSE_QUOTE_SYMB","COLON_SYMB","CHARSET_REVERSE_QOUTE_STRING","FILESIZE_LITERAL","START_NATIONAL_STRING_LITERAL","STRING_LITERAL","DECIMAL_LITERAL","HEXADECIMAL_LITERAL","REAL_LITERAL","NULL_SPEC_LITERAL","BIT_STRING","STRING_CHARSET_NAME","DOT_ID","ID","REVERSE_QUOTE_ID","HOST_IP_ADDRESS","LOCAL_ID","GLOBAL_ID","ERROR_RECONGNIGION"],Qi.ruleNames=["root","statements","statement","ddlStatement","dmlStatement","transactionStatement","replicationStatement","preparedStatement","compoundStatement","administrationStatement","utilityStatement","createDatabase","createEvent","createIndex","createLogfileGroup","createProcedure","createFunction","createRole","createServer","createTable","createTablespaceInnodb","createTablespaceNdb","createTrigger","withClause","commonTableExpressions","cteName","cteColumnName","createView","createDatabaseOption","charSet","currentUserExpression","ownerStatement","scheduleExpression","timestampValue","intervalExpr","intervalType","enableType","indexType","indexOption","procedureParameter","functionParameter","routineOption","serverOption","createDefinitions","createDefinition","columnDefinition","columnConstraint","tableConstraint","referenceDefinition","referenceAction","referenceControlType","indexColumnDefinition","tableOption","tableType","tablespaceStorage","partitionDefinitions","partitionFunctionDefinition","subpartitionFunctionDefinition","partitionDefinition","partitionDefinerAtom","partitionDefinerVector","subpartitionDefinition","partitionOption","alterDatabase","alterEvent","alterFunction","alterInstance","alterLogfileGroup","alterProcedure","alterServer","alterTable","alterTablespace","alterView","alterSpecification","alterPartitionSpecification","dropDatabase","dropEvent","dropIndex","dropLogfileGroup","dropProcedure","dropFunction","dropServer","dropTable","dropTablespace","dropTrigger","dropView","dropRole","setRole","renameTable","renameTableClause","truncateTable","callStatement","deleteStatement","doStatement","handlerStatement","insertStatement","loadDataStatement","loadXmlStatement","replaceStatement","selectStatement","updateStatement","valuesStatement","insertStatementValue","updatedElement","assignmentField","lockClause","singleDeleteStatement","multipleDeleteStatement","handlerOpenStatement","handlerReadIndexStatement","handlerReadStatement","handlerCloseStatement","singleUpdateStatement","multipleUpdateStatement","orderByClause","orderByExpression","tableSources","tableSource","tableSourceItem","indexHint","indexHintType","joinPart","joinSpec","queryExpression","queryExpressionNointo","querySpecification","querySpecificationNointo","unionParenthesis","unionStatement","lateralStatement","jsonTable","jsonColumnList","jsonColumn","jsonOnEmpty","jsonOnError","selectSpec","selectElements","selectElementAlias","selectElement","selectIntoExpression","selectFieldsInto","selectLinesInto","fromClause","groupByClause","havingClause","windowClause","groupByItem","limitClause","limitClauseAtom","startTransaction","beginWork","commitWork","rollbackWork","savepointStatement","rollbackStatement","releaseStatement","lockTables","unlockTables","setAutocommitStatement","setTransactionStatement","transactionMode","lockTableElement","lockAction","transactionOption","transactionLevel","changeMaster","changeReplicationFilter","purgeBinaryLogs","resetMaster","resetSlave","startSlave","stopSlave","startGroupReplication","stopGroupReplication","masterOption","stringMasterOption","decimalMasterOption","boolMasterOption","channelOption","replicationFilter","tablePair","threadType","untilOption","connectionOption","gtuidSet","xaStartTransaction","xaEndTransaction","xaPrepareStatement","xaCommitWork","xaRollbackWork","xaRecoverWork","prepareStatement","executeStatement","deallocatePrepare","routineBody","blockStatement","caseStatement","ifStatement","iterateStatement","leaveStatement","loopStatement","repeatStatement","returnStatement","whileStatement","cursorStatement","declareVariable","declareCondition","declareCursor","declareHandler","handlerConditionValue","procedureSqlStatement","caseAlternative","elifAlternative","alterUser","createUser","dropUser","grantStatement","roleOption","grantProxy","renameUser","revokeStatement","revokeProxy","setPasswordStatement","userSpecification","newUserAuthOptionList","newUserAuthOption","authOptionClause","authenticationRule","tlsOption","userResourceOption","userPasswordOption","userLockOption","privelegeClause","privilege","privilegeLevel","renameUserClause","analyzeTable","checkTable","checksumTable","optimizeTable","repairTable","checkTableOption","createUdfunction","installPlugin","uninstallPlugin","setStatement","showStatement","variableClause","showCommonEntity","showFilter","showGlobalInfoClause","showSchemaEntity","showProfileType","binlogStatement","cacheIndexStatement","flushStatement","killStatement","loadIndexIntoCache","resetStatement","shutdownStatement","tableIndexes","flushOption","flushTableOption","loadedTableIndexes","simpleDescribeStatement","fullDescribeStatement","helpStatement","useStatement","signalStatement","resignalStatement","signalConditionInformation","withStatement","tableStatement","diagnosticsStatement","diagnosticsConditionInformationName","describeObjectClause","fullId","tableName","tableNames","userOrRoleName","userOrRoleNameList","newRoleNameList","newRoleName","roleNameList","roleName","fullColumnName","databaseName","indexName","constraintName","triggerName","indexNameList","indexColumnName","simpleUserName","hostName","userNameList","newUserName","userName","mysqlVariable","charsetName","collationName","engineName","engineNameBase","uuidSet","xid","xuidStringId","authPlugin","uid","simpleId","dottedId","decimalLiteral","fileSizeLiteral","stringLiteral","booleanLiteral","hexadecimalLiteral","nullNotnull","constant","dataType","collectionOptions","convertedDataType","lengthOneDimension","lengthTwoDimension","lengthTwoOptionalDimension","uidList","fullColumnNameList","tables","indexColumnNames","expressions","expressionsWithDefaults","constants","simpleStrings","userVariables","defaultValue","currentTimestamp","expressionOrDefault","ifExists","ifNotExists","orReplace","waitNowaitClause","functionCall","specificFunction","caseFuncAlternative","levelsInWeightString","levelInWeightListElement","aggregateWindowedFunction","nonAggregateWindowedFunction","overClause","windowSpec","windowName","frameClause","frameUnits","frameExtent","frameBetween","frameRange","partitionClause","scalarFunctionName","passwordFunctionClause","functionArgs","functionArg","expression","predicate","expressionAtom","unaryOperator","comparisonOperator","logicalOperator","bitOperator","multOperator","addOperator","jsonOperator","charsetNameBase","transactionLevelBase","privilegesBase","intervalTypeBase","dataTypeBase","keywordsCanBeId","functionNameBase"],Qi._serializedATN=[4,1,1161,7380,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,2,265,7,265,2,266,7,266,2,267,7,267,2,268,7,268,2,269,7,269,2,270,7,270,2,271,7,271,2,272,7,272,2,273,7,273,2,274,7,274,2,275,7,275,2,276,7,276,2,277,7,277,2,278,7,278,2,279,7,279,2,280,7,280,2,281,7,281,2,282,7,282,2,283,7,283,2,284,7,284,2,285,7,285,2,286,7,286,2,287,7,287,2,288,7,288,2,289,7,289,2,290,7,290,2,291,7,291,2,292,7,292,2,293,7,293,2,294,7,294,2,295,7,295,2,296,7,296,2,297,7,297,2,298,7,298,2,299,7,299,2,300,7,300,2,301,7,301,2,302,7,302,2,303,7,303,2,304,7,304,2,305,7,305,2,306,7,306,2,307,7,307,2,308,7,308,2,309,7,309,2,310,7,310,2,311,7,311,2,312,7,312,2,313,7,313,2,314,7,314,2,315,7,315,2,316,7,316,2,317,7,317,2,318,7,318,2,319,7,319,2,320,7,320,2,321,7,321,2,322,7,322,2,323,7,323,2,324,7,324,2,325,7,325,2,326,7,326,2,327,7,327,2,328,7,328,2,329,7,329,2,330,7,330,2,331,7,331,2,332,7,332,2,333,7,333,2,334,7,334,2,335,7,335,2,336,7,336,2,337,7,337,2,338,7,338,2,339,7,339,2,340,7,340,2,341,7,341,2,342,7,342,2,343,7,343,2,344,7,344,2,345,7,345,2,346,7,346,2,347,7,347,2,348,7,348,2,349,7,349,2,350,7,350,2,351,7,351,2,352,7,352,2,353,7,353,2,354,7,354,2,355,7,355,2,356,7,356,2,357,7,357,2,358,7,358,2,359,7,359,2,360,7,360,2,361,7,361,2,362,7,362,2,363,7,363,2,364,7,364,2,365,7,365,2,366,7,366,2,367,7,367,2,368,7,368,2,369,7,369,2,370,7,370,2,371,7,371,2,372,7,372,2,373,7,373,2,374,7,374,1,0,3,0,752,8,0,1,0,1,0,1,1,1,1,3,1,758,8,1,1,1,1,1,1,1,1,1,3,1,764,8,1,1,2,1,2,1,2,1,2,1,2,1,2,1,2,3,2,773,8,2,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,3,3,813,8,3,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,3,4,828,8,4,1,5,1,5,1,5,1,5,1,5,1,5,1,5,1,5,1,5,3,5,839,8,5,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,3,6,856,8,6,1,7,1,7,1,7,3,7,861,8,7,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,873,8,8,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,3,9,900,8,9,1,10,1,10,1,10,1,10,1,10,1,10,1,10,3,10,909,8,10,1,11,1,11,1,11,3,11,914,8,11,1,11,1,11,5,11,918,8,11,10,11,12,11,921,9,11,1,12,1,12,3,12,925,8,12,1,12,1,12,3,12,929,8,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,3,12,938,8,12,1,12,3,12,941,8,12,1,12,3,12,944,8,12,1,12,1,12,3,12,948,8,12,1,12,1,12,1,12,1,13,1,13,3,13,955,8,13,1,13,3,13,958,8,13,1,13,1,13,1,13,3,13,963,8,13,1,13,1,13,1,13,1,13,5,13,969,8,13,10,13,12,13,972,9,13,1,13,1,13,3,13,976,8,13,1,13,1,13,1,13,3,13,981,8,13,1,13,5,13,984,8,13,10,13,12,13,987,9,13,1,14,1,14,1,14,1,14,1,14,1,14,1,14,1,14,1,14,3,14,998,8,14,1,14,3,14,1001,8,14,1,14,1,14,3,14,1005,8,14,1,14,3,14,1008,8,14,1,14,1,14,3,14,1012,8,14,1,14,3,14,1015,8,14,1,14,1,14,3,14,1019,8,14,1,14,3,14,1022,8,14,1,14,3,14,1025,8,14,1,14,1,14,3,14,1029,8,14,1,14,3,14,1032,8,14,1,14,1,14,3,14,1036,8,14,1,14,1,14,1,15,1,15,3,15,1042,8,15,1,15,1,15,1,15,1,15,3,15,1048,8,15,1,15,1,15,5,15,1052,8,15,10,15,12,15,1055,9,15,1,15,1,15,5,15,1059,8,15,10,15,12,15,1062,9,15,1,15,1,15,1,16,1,16,3,16,1068,8,16,1,16,3,16,1071,8,16,1,16,1,16,3,16,1075,8,16,1,16,1,16,1,16,3,16,1080,8,16,1,16,1,16,5,16,1084,8,16,10,16,12,16,1087,9,16,1,16,1,16,1,16,1,16,5,16,1093,8,16,10,16,12,16,1096,9,16,1,16,1,16,3,16,1100,8,16,1,17,1,17,1,17,3,17,1105,8,17,1,17,1,17,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,5,18,1121,8,18,10,18,12,18,1124,9,18,1,18,1,18,1,19,1,19,3,19,1130,8,19,1,19,1,19,3,19,1134,8,19,1,19,1,19,1,19,1,19,1,19,1,19,1,19,1,19,3,19,1144,8,19,1,19,1,19,3,19,1148,8,19,1,19,1,19,3,19,1152,8,19,1,19,1,19,3,19,1156,8,19,1,19,1,19,3,19,1160,8,19,1,19,5,19,1163,8,19,10,19,12,19,1166,9,19,3,19,1168,8,19,1,19,3,19,1171,8,19,1,19,3,19,1174,8,19,1,19,3,19,1177,8,19,1,19,1,19,1,19,1,19,3,19,1183,8,19,1,19,1,19,3,19,1187,8,19,1,19,1,19,1,19,1,19,3,19,1193,8,19,1,19,5,19,1196,8,19,10,19,12,19,1199,9,19,3,19,1201,8,19,1,19,3,19,1204,8,19,3,19,1206,8,19,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,3,20,1217,8,20,1,20,1,20,3,20,1221,8,20,1,20,3,20,1224,8,20,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,3,21,1238,8,21,1,21,3,21,1241,8,21,1,21,1,21,3,21,1245,8,21,1,21,3,21,1248,8,21,1,21,1,21,3,21,1252,8,21,1,21,3,21,1255,8,21,1,21,1,21,3,21,1259,8,21,1,21,3,21,1262,8,21,1,21,1,21,3,21,1266,8,21,1,21,3,21,1269,8,21,1,21,3,21,1272,8,21,1,21,1,21,3,21,1276,8,21,1,21,3,21,1279,8,21,1,21,1,21,3,21,1283,8,21,1,21,1,21,1,22,1,22,3,22,1289,8,22,1,22,1,22,3,22,1293,8,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,3,22,1305,8,22,1,22,1,22,1,23,1,23,3,23,1311,8,23,1,23,1,23,1,24,1,24,1,24,1,24,1,24,5,24,1320,8,24,10,24,12,24,1323,9,24,1,24,1,24,3,24,1327,8,24,1,24,1,24,1,24,1,24,1,24,1,24,3,24,1335,8,24,1,25,1,25,1,26,1,26,1,27,1,27,3,27,1343,8,27,1,27,1,27,1,27,3,27,1348,8,27,1,27,3,27,1351,8,27,1,27,1,27,1,27,3,27,1356,8,27,1,27,1,27,1,27,1,27,1,27,1,27,3,27,1364,8,27,1,27,1,27,1,27,3,27,1369,8,27,1,27,1,27,1,27,1,27,3,27,1375,8,27,1,27,1,27,1,27,3,27,1380,8,27,1,27,1,27,3,27,1384,8,27,3,27,1386,8,27,1,28,3,28,1389,8,28,1,28,1,28,3,28,1393,8,28,1,28,1,28,3,28,1397,8,28,1,28,3,28,1400,8,28,1,28,1,28,3,28,1404,8,28,1,28,1,28,3,28,1408,8,28,1,28,1,28,3,28,1412,8,28,1,28,1,28,1,28,1,28,3,28,1418,8,28,1,28,3,28,1421,8,28,1,29,1,29,1,29,1,29,1,29,3,29,1428,8,29,1,30,1,30,1,30,3,30,1433,8,30,1,31,1,31,1,31,1,31,3,31,1439,8,31,1,32,1,32,1,32,5,32,1444,8,32,10,32,12,32,1447,9,32,1,32,1,32,1,32,3,32,1452,8,32,1,32,1,32,1,32,1,32,5,32,1458,8,32,10,32,12,32,1461,9,32,3,32,1463,8,32,1,32,1,32,1,32,5,32,1468,8,32,10,32,12,32,1471,9,32,3,32,1473,8,32,3,32,1475,8,32,1,33,1,33,1,33,1,33,3,33,1481,8,33,1,34,1,34,1,34,1,34,3,34,1487,8,34,1,34,1,34,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,3,35,1504,8,35,1,36,1,36,1,36,1,36,1,36,3,36,1511,8,36,1,37,1,37,1,37,1,38,1,38,3,38,1518,8,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,3,38,1530,8,38,1,38,1,38,1,38,3,38,1535,8,38,1,38,3,38,1538,8,38,1,39,3,39,1541,8,39,1,39,1,39,1,39,1,40,1,40,1,40,1,41,1,41,1,41,1,41,1,41,3,41,1554,8,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,3,41,1567,8,41,1,41,1,41,1,41,3,41,1572,8,41,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,3,42,1588,8,42,1,43,1,43,1,43,1,43,5,43,1594,8,43,10,43,12,43,1597,9,43,1,43,1,43,1,44,1,44,1,44,1,44,1,44,3,44,1606,8,44,1,44,3,44,1609,8,44,1,44,3,44,1612,8,44,1,45,1,45,5,45,1616,8,45,10,45,12,45,1619,9,45,1,45,3,45,1622,8,45,1,45,3,45,1625,8,45,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,3,46,1636,8,46,1,46,3,46,1639,8,46,1,46,1,46,1,46,3,46,1644,8,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,3,46,1657,8,46,1,46,1,46,1,46,1,46,1,46,3,46,1664,8,46,1,46,1,46,1,46,1,46,1,46,3,46,1671,8,46,3,46,1673,8,46,1,46,1,46,1,46,1,46,1,46,3,46,1680,8,46,1,47,1,47,3,47,1684,8,47,3,47,1686,8,47,1,47,1,47,1,47,3,47,1691,8,47,1,47,3,47,1694,8,47,1,47,1,47,5,47,1698,8,47,10,47,12,47,1701,9,47,1,47,1,47,3,47,1705,8,47,3,47,1707,8,47,1,47,1,47,3,47,1711,8,47,1,47,3,47,1714,8,47,1,47,3,47,1717,8,47,1,47,1,47,5,47,1721,8,47,10,47,12,47,1724,9,47,1,47,1,47,3,47,1728,8,47,3,47,1730,8,47,1,47,1,47,1,47,3,47,1735,8,47,1,47,1,47,1,47,1,47,1,47,3,47,1742,8,47,3,47,1744,8,47,1,47,1,47,1,47,1,47,1,47,3,47,1751,8,47,1,48,1,48,1,48,3,48,1756,8,48,1,48,1,48,3,48,1760,8,48,1,48,3,48,1763,8,48,1,49,1,49,1,49,1,49,1,49,1,49,3,49,1771,8,49,1,49,1,49,1,49,1,49,1,49,1,49,3,49,1779,8,49,3,49,1781,8,49,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,3,50,1791,8,50,1,51,1,51,3,51,1795,8,51,1,51,3,51,1798,8,51,1,51,1,51,5,51,1802,8,51,10,51,12,51,1805,9,51,1,51,1,51,3,51,1809,8,51,1,51,3,51,1812,8,51,1,51,1,51,5,51,1816,8,51,10,51,12,51,1819,9,51,3,51,1821,8,51,1,52,1,52,3,52,1825,8,52,1,52,3,52,1828,8,52,1,52,1,52,3,52,1832,8,52,1,52,1,52,1,52,3,52,1837,8,52,1,52,1,52,1,52,3,52,1842,8,52,1,52,1,52,1,52,3,52,1847,8,52,1,52,1,52,3,52,1851,8,52,1,52,1,52,3,52,1855,8,52,1,52,1,52,3,52,1859,8,52,1,52,1,52,3,52,1863,8,52,1,52,1,52,3,52,1867,8,52,1,52,1,52,3,52,1871,8,52,1,52,1,52,1,52,3,52,1876,8,52,1,52,1,52,1,52,3,52,1881,8,52,1,52,1,52,1,52,3,52,1886,8,52,1,52,1,52,1,52,1,52,3,52,1892,8,52,1,52,1,52,1,52,3,52,1897,8,52,1,52,1,52,1,52,3,52,1902,8,52,1,52,1,52,1,52,3,52,1907,8,52,1,52,1,52,1,52,3,52,1912,8,52,1,52,1,52,1,52,3,52,1917,8,52,1,52,1,52,1,52,1,52,3,52,1923,8,52,1,52,1,52,1,52,3,52,1928,8,52,1,52,1,52,1,52,3,52,1933,8,52,1,52,1,52,1,52,3,52,1938,8,52,1,52,1,52,1,52,3,52,1943,8,52,1,52,1,52,1,52,3,52,1948,8,52,1,52,1,52,1,52,3,52,1953,8,52,1,52,1,52,1,52,3,52,1958,8,52,1,52,1,52,1,52,1,52,1,52,3,52,1965,8,52,1,52,1,52,1,52,3,52,1970,8,52,1,52,1,52,1,52,3,52,1975,8,52,1,52,1,52,1,52,3,52,1980,8,52,1,52,1,52,3,52,1984,8,52,1,52,1,52,1,52,3,52,1989,8,52,1,52,1,52,1,52,1,52,1,52,1,52,3,52,1997,8,52,1,52,1,52,1,52,3,52,2002,8,52,1,52,1,52,1,52,1,52,3,52,2008,8,52,1,53,1,53,1,54,1,54,1,54,1,55,1,55,1,55,1,55,1,55,3,55,2020,8,55,1,55,1,55,1,55,1,55,1,55,3,55,2027,8,55,3,55,2029,8,55,1,55,1,55,1,55,1,55,5,55,2035,8,55,10,55,12,55,2038,9,55,1,55,1,55,3,55,2042,8,55,1,56,3,56,2045,8,56,1,56,1,56,1,56,1,56,1,56,1,56,3,56,2053,8,56,1,56,1,56,1,56,1,56,3,56,2059,8,56,1,56,1,56,3,56,2063,8,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,3,56,2076,8,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,3,56,2088,8,56,3,56,2090,8,56,1,57,3,57,2093,8,57,1,57,1,57,1,57,1,57,1,57,1,57,3,57,2101,8,57,1,57,1,57,1,57,1,57,3,57,2107,8,57,1,57,1,57,1,57,1,57,3,57,2113,8,57,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,5,58,2124,8,58,10,58,12,58,2127,9,58,1,58,1,58,5,58,2131,8,58,10,58,12,58,2134,9,58,1,58,1,58,1,58,1,58,5,58,2140,8,58,10,58,12,58,2143,9,58,1,58,1,58,3,58,2147,8,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,5,58,2156,8,58,10,58,12,58,2159,9,58,1,58,1,58,1,58,1,58,5,58,2165,8,58,10,58,12,58,2168,9,58,1,58,1,58,3,58,2172,8,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,5,58,2182,8,58,10,58,12,58,2185,9,58,1,58,1,58,5,58,2189,8,58,10,58,12,58,2192,9,58,1,58,1,58,1,58,1,58,5,58,2198,8,58,10,58,12,58,2201,9,58,1,58,1,58,3,58,2205,8,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,5,58,2215,8,58,10,58,12,58,2218,9,58,1,58,1,58,5,58,2222,8,58,10,58,12,58,2225,9,58,1,58,1,58,1,58,1,58,5,58,2231,8,58,10,58,12,58,2234,9,58,1,58,1,58,3,58,2238,8,58,1,58,1,58,1,58,5,58,2243,8,58,10,58,12,58,2246,9,58,1,58,1,58,1,58,1,58,5,58,2252,8,58,10,58,12,58,2255,9,58,1,58,1,58,3,58,2259,8,58,3,58,2261,8,58,1,59,1,59,1,59,3,59,2266,8,59,1,60,1,60,1,60,1,60,4,60,2272,8,60,11,60,12,60,2273,1,60,1,60,1,61,1,61,1,61,5,61,2281,8,61,10,61,12,61,2284,9,61,1,62,3,62,2287,8,62,1,62,3,62,2290,8,62,1,62,1,62,3,62,2294,8,62,1,62,1,62,1,62,3,62,2299,8,62,1,62,1,62,1,62,1,62,3,62,2305,8,62,1,62,1,62,1,62,1,62,3,62,2311,8,62,1,62,1,62,1,62,3,62,2316,8,62,1,62,1,62,1,62,3,62,2321,8,62,1,62,1,62,1,62,3,62,2326,8,62,1,62,1,62,1,62,3,62,2331,8,62,1,62,3,62,2334,8,62,1,63,1,63,1,63,1,63,4,63,2340,8,63,11,63,12,63,2341,1,63,1,63,1,63,1,63,1,63,1,63,1,63,1,63,3,63,2352,8,63,1,64,1,64,3,64,2356,8,64,1,64,1,64,1,64,1,64,1,64,3,64,2363,8,64,1,64,1,64,1,64,3,64,2368,8,64,1,64,3,64,2371,8,64,1,64,1,64,1,64,3,64,2376,8,64,1,64,3,64,2379,8,64,1,64,1,64,3,64,2383,8,64,1,64,1,64,3,64,2387,8,64,1,65,1,65,1,65,1,65,5,65,2393,8,65,10,65,12,65,2396,9,65,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,3,67,2414,8,67,1,67,3,67,2417,8,67,1,67,3,67,2420,8,67,1,67,1,67,3,67,2424,8,67,1,67,1,67,1,68,1,68,1,68,1,68,5,68,2432,8,68,10,68,12,68,2435,9,68,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,5,69,2445,8,69,10,69,12,69,2448,9,69,1,69,1,69,1,70,1,70,3,70,2454,8,70,1,70,3,70,2457,8,70,1,70,1,70,1,70,3,70,2462,8,70,1,70,1,70,1,70,5,70,2467,8,70,10,70,12,70,2470,9,70,3,70,2472,8,70,1,70,3,70,2475,8,70,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,3,71,2486,8,71,1,71,3,71,2489,8,71,1,71,1,71,3,71,2493,8,71,1,71,1,71,1,72,1,72,1,72,1,72,3,72,2501,8,72,1,72,3,72,2504,8,72,1,72,1,72,1,72,3,72,2509,8,72,1,72,1,72,1,72,1,72,1,72,1,72,3,72,2517,8,72,1,72,1,72,1,72,1,72,3,72,2523,8,72,1,72,1,72,3,72,2527,8,72,1,73,1,73,3,73,2531,8,73,1,73,5,73,2534,8,73,10,73,12,73,2537,9,73,1,73,1,73,3,73,2541,8,73,1,73,1,73,1,73,1,73,1,73,3,73,2548,8,73,1,73,1,73,3,73,2552,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,5,73,2561,8,73,10,73,12,73,2564,9,73,1,73,1,73,1,73,1,73,1,73,3,73,2571,8,73,1,73,3,73,2574,8,73,1,73,1,73,5,73,2578,8,73,10,73,12,73,2581,9,73,1,73,1,73,1,73,3,73,2586,8,73,3,73,2588,8,73,1,73,1,73,1,73,3,73,2593,8,73,1,73,3,73,2596,8,73,1,73,1,73,5,73,2600,8,73,10,73,12,73,2603,9,73,1,73,1,73,1,73,3,73,2608,8,73,3,73,2610,8,73,1,73,1,73,3,73,2614,8,73,1,73,3,73,2617,8,73,1,73,3,73,2620,8,73,1,73,1,73,5,73,2624,8,73,10,73,12,73,2627,9,73,1,73,1,73,1,73,3,73,2632,8,73,1,73,3,73,2635,8,73,1,73,1,73,5,73,2639,8,73,10,73,12,73,2642,9,73,1,73,1,73,1,73,3,73,2647,8,73,3,73,2649,8,73,1,73,1,73,1,73,3,73,2654,8,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2662,8,73,3,73,2664,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2673,8,73,1,73,3,73,2676,8,73,1,73,3,73,2679,8,73,1,73,1,73,1,73,3,73,2684,8,73,3,73,2686,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2695,8,73,1,73,3,73,2698,8,73,1,73,3,73,2701,8,73,1,73,1,73,1,73,3,73,2706,8,73,3,73,2708,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2717,8,73,1,73,1,73,1,73,3,73,2722,8,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2730,8,73,1,73,1,73,3,73,2734,8,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2742,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2752,8,73,1,73,1,73,1,73,3,73,2757,8,73,1,73,1,73,1,73,1,73,1,73,3,73,2764,8,73,1,73,1,73,3,73,2768,8,73,1,73,1,73,3,73,2772,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2791,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2801,8,73,1,73,1,73,1,73,1,73,3,73,2807,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2824,8,73,1,73,1,73,3,73,2828,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2838,8,73,1,73,1,73,1,73,3,73,2843,8,73,1,73,3,73,2846,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2855,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2866,8,73,1,73,1,73,1,73,1,73,5,73,2872,8,73,10,73,12,73,2875,9,73,1,73,1,73,1,73,3,73,2880,8,73,1,74,1,74,1,74,1,74,1,74,1,74,5,74,2888,8,74,10,74,12,74,2891,9,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,3,74,2902,8,74,1,74,1,74,1,74,1,74,1,74,3,74,2909,8,74,1,74,1,74,1,74,1,74,1,74,3,74,2916,8,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,5,74,2929,8,74,10,74,12,74,2932,9,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,3,74,2944,8,74,1,74,1,74,1,74,1,74,3,74,2950,8,74,1,74,1,74,1,74,1,74,3,74,2956,8,74,1,74,1,74,1,74,1,74,3,74,2962,8,74,1,74,1,74,1,74,1,74,3,74,2968,8,74,1,74,1,74,1,74,1,74,3,74,2974,8,74,1,74,1,74,1,74,1,74,3,74,2980,8,74,1,75,1,75,1,75,3,75,2985,8,75,1,75,1,75,1,76,1,76,1,76,3,76,2992,8,76,1,76,1,76,1,77,1,77,1,77,3,77,2999,8,77,1,77,1,77,1,77,1,77,1,77,3,77,3006,8,77,1,77,1,77,1,77,3,77,3011,8,77,1,77,5,77,3014,8,77,10,77,12,77,3017,9,77,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,79,1,79,1,79,3,79,3030,8,79,1,79,1,79,1,80,1,80,1,80,3,80,3037,8,80,1,80,1,80,1,81,1,81,1,81,3,81,3044,8,81,1,81,1,81,1,82,1,82,3,82,3050,8,82,1,82,1,82,3,82,3054,8,82,1,82,1,82,3,82,3058,8,82,1,83,1,83,1,83,1,83,1,83,3,83,3065,8,83,1,83,3,83,3068,8,83,1,84,1,84,1,84,3,84,3073,8,84,1,84,1,84,1,85,1,85,1,85,3,85,3080,8,85,1,85,1,85,1,85,5,85,3085,8,85,10,85,12,85,3088,9,85,1,85,3,85,3091,8,85,1,86,1,86,1,86,3,86,3096,8,86,1,86,1,86,1,87,1,87,1,87,1,87,1,87,1,87,3,87,3106,8,87,1,87,1,87,1,87,1,87,1,87,3,87,3113,8,87,1,88,1,88,1,88,1,88,1,88,5,88,3120,8,88,10,88,12,88,3123,9,88,1,89,1,89,1,89,1,89,1,90,1,90,3,90,3131,8,90,1,90,1,90,1,91,1,91,1,91,1,91,1,91,3,91,3140,8,91,1,91,3,91,3143,8,91,1,92,1,92,3,92,3147,8,92,1,93,1,93,1,93,1,94,1,94,1,94,1,94,3,94,3156,8,94,1,95,1,95,3,95,3160,8,95,1,95,3,95,3163,8,95,1,95,3,95,3166,8,95,1,95,1,95,1,95,1,95,3,95,3172,8,95,1,95,3,95,3175,8,95,1,95,1,95,3,95,3179,8,95,1,95,3,95,3182,8,95,1,95,1,95,3,95,3186,8,95,1,95,3,95,3189,8,95,1,95,1,95,1,95,1,95,5,95,3195,8,95,10,95,12,95,3198,9,95,3,95,3200,8,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,5,95,3209,8,95,10,95,12,95,3212,9,95,3,95,3214,8,95,1,96,1,96,1,96,3,96,3219,8,96,1,96,3,96,3222,8,96,1,96,1,96,1,96,3,96,3227,8,96,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,96,3,96,3237,8,96,1,96,1,96,1,96,3,96,3242,8,96,1,96,1,96,4,96,3246,8,96,11,96,12,96,3247,3,96,3250,8,96,1,96,1,96,4,96,3254,8,96,11,96,12,96,3255,3,96,3258,8,96,1,96,1,96,1,96,1,96,3,96,3264,8,96,1,96,1,96,1,96,1,96,5,96,3270,8,96,10,96,12,96,3273,9,96,1,96,1,96,3,96,3277,8,96,1,96,1,96,1,96,1,96,5,96,3283,8,96,10,96,12,96,3286,9,96,3,96,3288,8,96,1,97,1,97,1,97,3,97,3293,8,97,1,97,3,97,3296,8,97,1,97,1,97,1,97,3,97,3301,8,97,1,97,1,97,1,97,1,97,1,97,1,97,3,97,3309,8,97,1,97,1,97,1,97,1,97,1,97,1,97,3,97,3317,8,97,1,97,1,97,1,97,1,97,3,97,3323,8,97,1,97,1,97,1,97,1,97,5,97,3329,8,97,10,97,12,97,3332,9,97,1,97,1,97,3,97,3336,8,97,1,97,1,97,1,97,1,97,5,97,3342,8,97,10,97,12,97,3345,9,97,3,97,3347,8,97,1,98,1,98,3,98,3351,8,98,1,98,3,98,3354,8,98,1,98,1,98,1,98,1,98,1,98,1,98,3,98,3362,8,98,1,98,1,98,1,98,1,98,3,98,3368,8,98,1,98,1,98,1,98,1,98,1,98,5,98,3375,8,98,10,98,12,98,3378,9,98,3,98,3380,8,98,1,99,1,99,3,99,3384,8,99,1,99,1,99,3,99,3388,8,99,1,99,1,99,3,99,3392,8,99,1,99,4,99,3395,8,99,11,99,12,99,3396,1,99,1,99,3,99,3401,8,99,1,99,1,99,3,99,3405,8,99,3,99,3407,8,99,1,99,3,99,3410,8,99,1,99,3,99,3413,8,99,1,99,3,99,3416,8,99,1,99,1,99,4,99,3420,8,99,11,99,12,99,3421,1,99,1,99,3,99,3426,8,99,1,99,3,99,3429,8,99,1,99,3,99,3432,8,99,1,99,3,99,3435,8,99,1,99,3,99,3438,8,99,1,99,1,99,1,99,4,99,3443,8,99,11,99,12,99,3444,3,99,3447,8,99,1,100,1,100,3,100,3451,8,100,1,101,1,101,1,101,3,101,3456,8,101,1,101,1,101,1,101,1,101,3,101,3462,8,101,1,101,5,101,3465,8,101,10,101,12,101,3468,9,101,1,102,1,102,1,102,1,102,3,102,3474,8,102,1,102,1,102,1,102,1,102,3,102,3480,8,102,1,102,5,102,3483,8,102,10,102,12,102,3486,9,102,3,102,3488,8,102,1,103,1,103,1,103,1,103,3,103,3494,8,103,1,104,1,104,3,104,3498,8,104,1,105,1,105,1,105,1,105,1,105,1,105,3,105,3506,8,105,1,106,1,106,3,106,3510,8,106,1,106,3,106,3513,8,106,1,106,3,106,3516,8,106,1,106,1,106,1,106,3,106,3521,8,106,1,106,3,106,3524,8,106,1,106,1,106,1,106,1,106,1,106,3,106,3531,8,106,1,106,1,106,3,106,3535,8,106,1,106,3,106,3538,8,106,1,106,1,106,3,106,3542,8,106,1,107,1,107,3,107,3546,8,107,1,107,3,107,3549,8,107,1,107,3,107,3552,8,107,1,107,1,107,1,107,3,107,3557,8,107,1,107,1,107,1,107,1,107,3,107,3563,8,107,5,107,3565,8,107,10,107,12,107,3568,9,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,3577,8,107,1,107,1,107,1,107,1,107,3,107,3583,8,107,5,107,3585,8,107,10,107,12,107,3588,9,107,1,107,1,107,1,107,3,107,3593,8,107,1,107,1,107,3,107,3597,8,107,1,108,1,108,1,108,1,108,3,108,3603,8,108,1,108,3,108,3606,8,108,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,3,109,3618,8,109,1,109,1,109,3,109,3622,8,109,1,109,1,109,3,109,3626,8,109,1,110,1,110,1,110,1,110,1,110,1,110,3,110,3634,8,110,1,110,1,110,3,110,3638,8,110,1,111,1,111,1,111,1,111,1,112,1,112,3,112,3646,8,112,1,112,3,112,3649,8,112,1,112,1,112,3,112,3653,8,112,1,112,3,112,3656,8,112,1,112,1,112,1,112,1,112,5,112,3662,8,112,10,112,12,112,3665,9,112,1,112,1,112,3,112,3669,8,112,1,112,3,112,3672,8,112,1,112,3,112,3675,8,112,1,113,1,113,3,113,3679,8,113,1,113,3,113,3682,8,113,1,113,1,113,1,113,1,113,1,113,5,113,3689,8,113,10,113,12,113,3692,9,113,1,113,1,113,3,113,3696,8,113,1,114,1,114,1,114,1,114,1,114,5,114,3703,8,114,10,114,12,114,3706,9,114,1,115,1,115,3,115,3710,8,115,1,116,1,116,1,116,5,116,3715,8,116,10,116,12,116,3718,9,116,1,117,1,117,5,117,3722,8,117,10,117,12,117,3725,9,117,1,117,1,117,1,117,5,117,3730,8,117,10,117,12,117,3733,9,117,1,117,1,117,1,117,3,117,3738,8,117,1,118,1,118,1,118,1,118,1,118,1,118,3,118,3746,8,118,1,118,3,118,3749,8,118,1,118,3,118,3752,8,118,1,118,1,118,1,118,5,118,3757,8,118,10,118,12,118,3760,9,118,3,118,3762,8,118,1,118,1,118,1,118,1,118,1,118,3,118,3769,8,118,1,118,1,118,1,118,1,118,1,118,1,118,3,118,3777,8,118,1,119,1,119,1,119,1,119,3,119,3783,8,119,1,119,1,119,1,119,1,119,1,120,1,120,1,120,1,120,1,120,3,120,3794,8,120,1,121,3,121,3797,8,121,1,121,1,121,3,121,3801,8,121,1,121,1,121,5,121,3805,8,121,10,121,12,121,3808,9,121,1,121,1,121,1,121,1,121,5,121,3814,8,121,10,121,12,121,3817,9,121,1,121,1,121,3,121,3821,8,121,1,121,1,121,3,121,3825,8,121,1,121,1,121,5,121,3829,8,121,10,121,12,121,3832,9,121,1,121,1,121,1,121,3,121,3837,8,121,3,121,3839,8,121,1,121,1,121,3,121,3843,8,121,1,122,1,122,1,122,1,122,1,122,1,122,1,122,3,122,3852,8,122,1,123,1,123,1,123,1,123,1,123,1,123,1,123,1,123,3,123,3862,8,123,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,124,3,124,3872,8,124,1,125,1,125,5,125,3876,8,125,10,125,12,125,3879,9,125,1,125,1,125,3,125,3883,8,125,1,125,1,125,3,125,3887,8,125,1,125,3,125,3890,8,125,1,125,3,125,3893,8,125,1,125,3,125,3896,8,125,1,125,3,125,3899,8,125,1,125,1,125,5,125,3903,8,125,10,125,12,125,3906,9,125,1,125,1,125,1,125,3,125,3911,8,125,1,125,3,125,3914,8,125,1,125,3,125,3917,8,125,1,125,3,125,3920,8,125,1,125,3,125,3923,8,125,1,125,3,125,3926,8,125,3,125,3928,8,125,1,126,1,126,5,126,3932,8,126,10,126,12,126,3935,9,126,1,126,1,126,1,126,3,126,3940,8,126,1,126,3,126,3943,8,126,1,126,3,126,3946,8,126,1,126,3,126,3949,8,126,1,126,3,126,3952,8,126,1,126,3,126,3955,8,126,1,127,1,127,3,127,3959,8,127,1,127,1,127,1,128,1,128,3,128,3965,8,128,1,128,1,128,3,128,3969,8,128,1,129,1,129,1,129,1,129,1,129,1,129,3,129,3977,8,129,1,129,1,129,3,129,3981,8,129,1,129,3,129,3984,8,129,3,129,3986,8,129,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,3,130,3999,8,130,1,130,3,130,4002,8,130,1,131,1,131,1,131,5,131,4007,8,131,10,131,12,131,4010,9,131,1,132,1,132,1,132,1,132,1,132,1,132,1,132,3,132,4019,8,132,1,132,3,132,4022,8,132,1,132,1,132,1,132,3,132,4027,8,132,3,132,4029,8,132,1,132,1,132,3,132,4033,8,132,1,132,1,132,1,132,1,132,1,132,1,132,3,132,4041,8,132,1,133,1,133,1,133,1,133,3,133,4047,8,133,1,133,1,133,1,133,1,134,1,134,1,134,1,134,3,134,4056,8,134,1,134,1,134,1,134,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,3,135,4069,8,135,1,136,1,136,3,136,4073,8,136,1,136,1,136,5,136,4077,8,136,10,136,12,136,4080,9,136,1,137,3,137,4083,8,137,1,137,1,137,1,138,1,138,1,138,1,138,1,138,1,138,3,138,4093,8,138,1,138,1,138,3,138,4097,8,138,1,138,1,138,3,138,4101,8,138,1,138,1,138,3,138,4105,8,138,3,138,4107,8,138,1,139,1,139,1,139,1,139,5,139,4113,8,139,10,139,12,139,4116,9,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,3,139,4127,8,139,1,139,1,139,4,139,4131,8,139,11,139,12,139,4132,3,139,4135,8,139,1,139,1,139,4,139,4139,8,139,11,139,12,139,4140,3,139,4143,8,139,3,139,4145,8,139,1,140,1,140,1,140,1,140,3,140,4151,8,140,1,140,1,140,1,140,1,140,1,140,1,140,3,140,4159,8,140,1,141,1,141,1,141,1,141,1,141,1,141,3,141,4167,8,141,1,142,1,142,3,142,4171,8,142,1,142,1,142,3,142,4175,8,142,1,143,1,143,1,143,1,143,1,143,5,143,4182,8,143,10,143,12,143,4185,9,143,1,143,1,143,3,143,4189,8,143,1,144,1,144,1,144,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,145,5,145,4207,8,145,10,145,12,145,4210,9,145,1,146,1,146,3,146,4214,8,146,1,147,1,147,1,147,1,147,3,147,4220,8,147,1,147,1,147,1,147,1,147,1,147,3,147,4227,8,147,1,148,1,148,1,148,3,148,4232,8,148,1,149,1,149,1,149,1,149,1,149,5,149,4239,8,149,10,149,12,149,4242,9,149,3,149,4244,8,149,1,150,1,150,3,150,4248,8,150,1,151,1,151,3,151,4252,8,151,1,151,1,151,3,151,4256,8,151,1,151,3,151,4259,8,151,1,151,3,151,4262,8,151,1,151,3,151,4265,8,151,1,152,1,152,3,152,4269,8,152,1,152,1,152,3,152,4273,8,152,1,152,3,152,4276,8,152,1,152,3,152,4279,8,152,1,152,3,152,4282,8,152,1,153,1,153,1,153,1,154,1,154,3,154,4289,8,154,1,154,1,154,3,154,4293,8,154,1,154,1,154,1,155,1,155,1,155,1,155,1,156,1,156,1,156,1,156,1,156,5,156,4306,8,156,10,156,12,156,4309,9,156,1,156,3,156,4312,8,156,1,157,1,157,1,157,1,158,1,158,1,158,1,158,1,158,1,159,1,159,3,159,4324,8,159,1,159,1,159,1,159,1,159,5,159,4330,8,159,10,159,12,159,4333,9,159,1,160,1,160,1,160,1,160,1,160,1,160,1,160,3,160,4342,8,160,1,161,1,161,3,161,4346,8,161,1,161,3,161,4349,8,161,1,161,1,161,1,162,1,162,3,162,4355,8,162,1,162,3,162,4358,8,162,1,162,3,162,4361,8,162,1,163,1,163,1,163,1,163,1,163,1,163,1,163,3,163,4370,8,163,1,164,1,164,1,164,1,164,1,164,1,164,1,164,3,164,4379,8,164,1,165,1,165,1,165,1,165,1,165,1,165,5,165,4387,8,165,10,165,12,165,4390,9,165,1,165,3,165,4393,8,165,1,166,1,166,1,166,1,166,1,166,1,166,5,166,4401,8,166,10,166,12,166,4404,9,166,1,167,1,167,1,167,1,167,1,167,1,167,1,167,3,167,4413,8,167,1,168,1,168,1,168,1,169,1,169,1,169,3,169,4421,8,169,1,169,3,169,4424,8,169,1,170,1,170,1,170,1,170,1,170,5,170,4431,8,170,10,170,12,170,4434,9,170,3,170,4436,8,170,1,170,1,170,3,170,4440,8,170,1,170,5,170,4443,8,170,10,170,12,170,4446,9,170,1,170,3,170,4449,8,170,1,171,1,171,1,171,1,171,1,171,5,171,4456,8,171,10,171,12,171,4459,9,171,3,171,4461,8,171,1,172,1,172,1,172,1,173,1,173,1,173,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,5,174,4490,8,174,10,174,12,174,4493,9,174,3,174,4495,8,174,1,174,3,174,4498,8,174,1,175,1,175,1,176,1,176,1,177,1,177,1,178,1,178,1,178,1,178,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,5,179,4552,8,179,10,179,12,179,4555,9,179,1,179,1,179,3,179,4559,8,179,1,180,1,180,1,180,1,180,1,180,1,180,1,181,1,181,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,3,182,4587,8,182,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,3,183,4601,8,183,1,184,1,184,1,184,5,184,4606,8,184,10,184,12,184,4609,9,184,1,184,3,184,4612,8,184,1,185,1,185,1,185,1,185,3,185,4618,8,185,1,186,1,186,1,186,1,186,1,186,1,186,3,186,4626,8,186,3,186,4628,8,186,1,187,1,187,1,187,1,187,1,188,1,188,1,188,1,188,1,188,3,188,4639,8,188,1,189,1,189,1,189,1,189,1,190,1,190,1,190,1,190,3,190,4649,8,190,1,191,1,191,1,191,1,191,1,191,3,191,4656,8,191,1,192,1,192,1,192,1,192,3,192,4662,8,192,1,193,1,193,1,193,1,193,1,194,1,194,3,194,4670,8,194,1,195,1,195,1,195,3,195,4675,8,195,1,195,1,195,1,195,1,195,5,195,4681,8,195,10,195,12,195,4684,9,195,1,195,1,195,1,195,5,195,4689,8,195,10,195,12,195,4692,9,195,1,195,1,195,1,195,5,195,4697,8,195,10,195,12,195,4700,9,195,1,195,1,195,1,195,5,195,4705,8,195,10,195,12,195,4708,9,195,1,195,5,195,4711,8,195,10,195,12,195,4714,9,195,1,195,1,195,3,195,4718,8,195,1,196,1,196,1,196,3,196,4723,8,196,1,196,4,196,4726,8,196,11,196,12,196,4727,1,196,1,196,4,196,4732,8,196,11,196,12,196,4733,3,196,4736,8,196,1,196,1,196,1,196,1,197,1,197,1,197,1,197,4,197,4745,8,197,11,197,12,197,4746,1,197,5,197,4750,8,197,10,197,12,197,4753,9,197,1,197,1,197,4,197,4757,8,197,11,197,12,197,4758,3,197,4761,8,197,1,197,1,197,1,197,1,198,1,198,1,198,1,199,1,199,1,199,1,200,1,200,1,200,3,200,4775,8,200,1,200,1,200,4,200,4779,8,200,11,200,12,200,4780,1,200,1,200,1,200,3,200,4786,8,200,1,201,1,201,1,201,3,201,4791,8,201,1,201,1,201,4,201,4795,8,201,11,201,12,201,4796,1,201,1,201,1,201,1,201,1,201,3,201,4804,8,201,1,202,1,202,1,202,1,203,1,203,1,203,3,203,4812,8,203,1,203,1,203,1,203,1,203,4,203,4818,8,203,11,203,12,203,4819,1,203,1,203,1,203,3,203,4825,8,203,1,204,1,204,1,204,1,204,3,204,4831,8,204,1,204,3,204,4834,8,204,1,204,1,204,1,204,1,204,1,204,1,204,3,204,4842,8,204,1,205,1,205,1,205,1,205,1,205,3,205,4849,8,205,1,206,1,206,1,206,1,206,1,206,1,206,1,206,3,206,4858,8,206,1,206,3,206,4861,8,206,1,207,1,207,1,207,1,207,1,207,1,207,1,208,1,208,1,208,1,208,1,208,1,208,1,208,5,208,4876,8,208,10,208,12,208,4879,9,208,1,208,1,208,1,209,1,209,1,209,3,209,4886,8,209,1,209,1,209,1,209,1,209,1,209,1,209,3,209,4894,8,209,1,210,1,210,3,210,4898,8,210,1,210,1,210,1,211,1,211,1,211,3,211,4905,8,211,1,211,1,211,4,211,4909,8,211,11,211,12,211,4910,1,212,1,212,1,212,1,212,4,212,4917,8,212,11,212,12,212,4918,1,213,1,213,1,213,1,213,1,213,5,213,4926,8,213,10,213,12,213,4929,9,213,1,213,1,213,1,213,3,213,4934,8,213,1,213,1,213,1,213,1,213,1,213,3,213,4941,8,213,1,213,5,213,4944,8,213,10,213,12,213,4947,9,213,3,213,4949,8,213,3,213,4951,8,213,1,213,1,213,4,213,4955,8,213,11,213,12,213,4956,3,213,4959,8,213,1,213,1,213,5,213,4963,8,213,10,213,12,213,4966,9,213,1,213,1,213,1,213,1,213,3,213,4972,8,213,1,213,1,213,1,213,3,213,4977,8,213,1,213,1,213,1,213,1,213,1,213,3,213,4984,8,213,1,214,1,214,1,214,1,214,1,214,1,214,3,214,4992,8,214,1,214,1,214,1,214,1,214,3,214,4998,8,214,1,214,1,214,1,214,1,214,3,214,5004,8,214,1,214,5,214,5007,8,214,10,214,12,214,5010,9,214,3,214,5012,8,214,3,214,5014,8,214,1,214,1,214,4,214,5018,8,214,11,214,12,214,5019,3,214,5022,8,214,1,214,1,214,5,214,5026,8,214,10,214,12,214,5029,9,214,1,214,1,214,1,214,1,214,3,214,5035,8,214,3,214,5037,8,214,1,215,1,215,1,215,3,215,5042,8,215,1,215,1,215,1,216,1,216,1,216,1,216,5,216,5050,8,216,10,216,12,216,5053,9,216,1,216,1,216,3,216,5057,8,216,1,216,1,216,1,216,1,216,1,216,1,216,1,216,3,216,5066,8,216,1,216,5,216,5069,8,216,10,216,12,216,5072,9,216,3,216,5074,8,216,3,216,5076,8,216,1,216,1,216,1,216,1,216,5,216,5082,8,216,10,216,12,216,5085,9,216,3,216,5087,8,216,1,216,1,216,1,216,1,216,1,216,1,216,3,216,5095,8,216,1,216,1,216,1,216,1,216,1,216,1,216,1,216,3,216,5104,8,216,3,216,5106,8,216,1,217,1,217,1,217,1,217,1,217,3,217,5113,8,217,1,217,3,217,5116,8,217,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,5,218,5126,8,218,10,218,12,218,5129,9,218,1,218,1,218,1,218,3,218,5134,8,218,1,219,1,219,1,219,1,219,1,219,5,219,5141,8,219,10,219,12,219,5144,9,219,1,220,1,220,1,220,1,220,5,220,5150,8,220,10,220,12,220,5153,9,220,1,220,1,220,3,220,5157,8,220,1,220,1,220,1,220,1,220,1,220,1,220,1,220,3,220,5166,8,220,1,220,1,220,1,220,1,220,1,220,1,220,1,220,1,220,1,220,5,220,5177,8,220,10,220,12,220,5180,9,220,3,220,5182,8,220,1,221,1,221,1,221,1,221,1,221,1,221,1,221,1,221,5,221,5192,8,221,10,221,12,221,5195,9,221,1,222,1,222,1,222,1,222,3,222,5201,8,222,1,222,1,222,1,222,3,222,5206,8,222,1,223,1,223,1,223,1,224,1,224,1,224,5,224,5214,8,224,10,224,12,224,5217,9,224,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,3,225,5244,8,225,1,226,1,226,3,226,5248,8,226,1,226,1,226,1,226,3,226,5253,8,226,1,227,1,227,1,227,1,227,1,227,3,227,5260,8,227,1,227,3,227,5263,8,227,1,227,1,227,1,227,1,227,3,227,5269,8,227,1,228,1,228,1,228,1,228,1,228,1,228,1,228,1,228,3,228,5279,8,228,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,5289,8,229,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,3,230,5299,8,230,1,230,1,230,1,230,1,230,3,230,5305,8,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,3,230,5314,8,230,1,230,1,230,1,230,1,230,3,230,5320,8,230,1,230,1,230,1,230,1,230,1,230,3,230,5327,8,230,3,230,5329,8,230,1,231,1,231,1,231,1,232,1,232,1,232,1,232,1,232,3,232,5339,8,232,1,233,1,233,3,233,5343,8,233,1,233,1,233,3,233,5347,8,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,3,233,5357,8,233,1,233,1,233,1,233,3,233,5362,8,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,3,233,5434,8,233,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,3,234,5452,8,234,1,235,1,235,1,235,1,235,1,236,1,236,3,236,5460,8,236,1,236,1,236,1,236,1,236,1,236,1,236,1,236,1,236,5,236,5470,8,236,10,236,12,236,5473,9,236,1,236,1,236,1,236,1,236,3,236,5479,8,236,3,236,5481,8,236,1,236,1,236,1,236,1,236,1,236,1,236,5,236,5489,8,236,10,236,12,236,5492,9,236,3,236,5494,8,236,1,237,1,237,1,237,1,237,5,237,5500,8,237,10,237,12,237,5503,9,237,1,238,1,238,1,238,1,238,3,238,5509,8,238,1,239,1,239,3,239,5513,8,239,1,239,1,239,1,239,1,240,1,240,3,240,5520,8,240,1,240,1,240,1,240,3,240,5525,8,240,1,240,3,240,5528,8,240,1,240,3,240,5531,8,240,1,241,1,241,1,241,1,241,1,241,1,241,1,241,3,241,5540,8,241,1,242,1,242,3,242,5544,8,242,1,242,1,242,3,242,5548,8,242,1,242,1,242,1,242,1,242,1,242,1,242,1,243,1,243,1,243,1,243,1,243,1,243,1,244,1,244,1,244,1,244,1,245,1,245,1,245,1,245,1,245,3,245,5571,8,245,1,245,1,245,1,245,1,245,1,245,3,245,5578,8,245,5,245,5580,8,245,10,245,12,245,5583,9,245,1,245,1,245,1,245,1,245,3,245,5589,8,245,1,245,1,245,1,245,1,245,1,245,3,245,5596,8,245,1,245,3,245,5599,8,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,5,245,5613,8,245,10,245,12,245,5616,9,245,3,245,5618,8,245,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,5628,8,246,1,246,1,246,3,246,5632,8,246,1,246,1,246,1,246,1,246,3,246,5638,8,246,1,246,3,246,5641,8,246,1,246,1,246,1,246,3,246,5646,8,246,1,246,1,246,3,246,5650,8,246,1,246,1,246,1,246,1,246,1,246,3,246,5657,8,246,1,246,3,246,5660,8,246,1,246,1,246,1,246,1,246,3,246,5666,8,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,5698,8,246,1,246,3,246,5701,8,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,5713,8,246,1,246,3,246,5716,8,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,5726,8,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,5734,8,246,1,246,1,246,3,246,5738,8,246,1,246,1,246,1,246,1,246,1,246,3,246,5745,8,246,1,246,3,246,5748,8,246,1,246,1,246,1,246,1,246,1,246,5,246,5755,8,246,10,246,12,246,5758,9,246,1,246,1,246,1,246,3,246,5763,8,246,1,246,1,246,1,246,1,246,3,246,5769,8,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,5779,8,246,3,246,5781,8,246,1,247,1,247,1,247,1,247,3,247,5787,8,247,1,247,3,247,5790,8,247,1,247,3,247,5793,8,247,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,3,248,5805,8,248,1,248,3,248,5808,8,248,1,249,1,249,1,249,1,249,3,249,5814,8,249,1,250,3,250,5817,8,250,1,250,1,250,1,250,1,250,1,250,1,250,3,250,5825,8,250,1,250,1,250,1,250,1,250,1,250,1,250,3,250,5833,8,250,1,251,1,251,1,251,1,251,3,251,5839,8,251,1,251,1,251,3,251,5843,8,251,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,3,252,5857,8,252,1,253,1,253,1,253,1,254,1,254,1,254,1,254,1,254,5,254,5867,8,254,10,254,12,254,5870,9,254,1,254,1,254,1,254,1,254,3,254,5876,8,254,1,254,3,254,5879,8,254,1,254,1,254,1,254,1,255,1,255,3,255,5886,8,255,1,255,1,255,1,255,5,255,5891,8,255,10,255,12,255,5894,9,255,1,256,1,256,3,256,5898,8,256,1,256,1,256,1,257,1,257,1,257,1,257,1,257,1,257,1,257,5,257,5909,8,257,10,257,12,257,5912,9,257,1,258,1,258,1,258,1,258,1,259,1,259,1,260,1,260,3,260,5922,8,260,1,260,1,260,1,260,1,260,3,260,5928,8,260,1,261,1,261,1,261,3,261,5933,8,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,3,261,5946,8,261,3,261,5948,8,261,1,261,1,261,1,261,3,261,5953,8,261,1,261,1,261,3,261,5957,8,261,1,261,3,261,5960,8,261,3,261,5962,8,261,1,262,1,262,1,262,1,262,1,262,3,262,5969,8,262,1,263,1,263,1,263,1,263,1,263,3,263,5976,8,263,1,263,3,263,5979,8,263,1,263,3,263,5982,8,263,1,263,1,263,1,263,1,263,3,263,5988,8,263,1,263,1,263,3,263,5992,8,263,1,264,1,264,1,264,1,264,3,264,5998,8,264,1,265,1,265,1,265,1,265,3,265,6004,8,265,1,265,1,265,1,266,1,266,1,266,1,267,1,267,1,267,1,268,1,268,1,268,3,268,6017,8,268,1,268,1,268,1,268,3,268,6022,8,268,1,268,1,268,1,268,1,268,5,268,6028,8,268,10,268,12,268,6031,9,268,3,268,6033,8,268,1,269,1,269,1,269,3,269,6038,8,269,1,269,1,269,1,269,3,269,6043,8,269,1,269,1,269,1,269,1,269,5,269,6049,8,269,10,269,12,269,6052,9,269,3,269,6054,8,269,1,270,1,270,1,270,1,270,1,270,1,270,3,270,6062,8,270,1,271,1,271,3,271,6066,8,271,1,271,1,271,1,271,5,271,6071,8,271,10,271,12,271,6074,9,271,1,272,1,272,1,272,3,272,6079,8,272,1,272,3,272,6082,8,272,1,273,1,273,3,273,6086,8,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,5,273,6097,8,273,10,273,12,273,6100,9,273,1,273,1,273,1,273,3,273,6105,8,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,5,273,6115,8,273,10,273,12,273,6118,9,273,3,273,6120,8,273,1,274,1,274,1,275,1,275,1,275,1,275,1,275,3,275,6129,8,275,1,275,1,275,1,275,3,275,6134,8,275,1,276,1,276,1,276,1,276,3,276,6140,8,276,1,277,1,277,1,278,1,278,1,278,5,278,6147,8,278,10,278,12,278,6150,9,278,1,279,1,279,3,279,6154,8,279,1,280,1,280,1,280,5,280,6159,8,280,10,280,12,280,6162,9,280,1,281,1,281,1,281,5,281,6167,8,281,10,281,12,281,6170,9,281,1,282,1,282,1,283,1,283,1,283,5,283,6177,8,283,10,283,12,283,6180,9,283,1,284,1,284,1,285,1,285,1,285,3,285,6187,8,285,3,285,6189,8,285,1,285,3,285,6192,8,285,1,285,1,285,3,285,6196,8,285,3,285,6198,8,285,1,286,1,286,1,287,1,287,1,288,1,288,1,289,1,289,1,290,1,290,1,290,5,290,6211,8,290,10,290,12,290,6214,9,290,1,291,1,291,3,291,6218,8,291,1,291,1,291,1,291,1,291,3,291,6224,8,291,1,291,3,291,6227,8,291,1,291,3,291,6230,8,291,1,292,1,292,1,292,1,292,3,292,6236,8,292,1,293,1,293,1,294,1,294,1,294,5,294,6243,8,294,10,294,12,294,6246,9,294,1,295,1,295,1,295,1,295,1,295,3,295,6253,8,295,1,296,1,296,1,297,1,297,1,298,1,298,1,298,1,298,3,298,6263,8,298,1,299,1,299,3,299,6267,8,299,1,300,1,300,1,300,3,300,6272,8,300,1,301,1,301,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,4,302,6290,8,302,11,302,12,302,6291,1,303,1,303,1,303,1,303,1,303,3,303,6299,8,303,3,303,6301,8,303,1,304,1,304,1,304,4,304,6306,8,304,11,304,12,304,6307,3,304,6310,8,304,1,305,1,305,3,305,6314,8,305,1,306,1,306,1,306,3,306,6319,8,306,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,3,307,6330,8,307,1,308,1,308,1,308,3,308,6335,8,308,1,309,1,309,1,310,1,310,3,310,6341,8,310,1,311,3,311,6344,8,311,1,311,1,311,3,311,6348,8,311,1,311,4,311,6351,8,311,11,311,12,311,6352,1,311,3,311,6356,8,311,1,311,1,311,3,311,6360,8,311,1,311,1,311,3,311,6364,8,311,3,311,6366,8,311,1,312,1,312,1,313,3,313,6371,8,313,1,313,1,313,1,314,3,314,6376,8,314,1,314,1,314,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,3,315,6389,8,315,1,315,3,315,6392,8,315,1,316,1,316,3,316,6396,8,316,1,316,3,316,6399,8,316,1,316,3,316,6402,8,316,1,316,1,316,1,316,3,316,6407,8,316,1,316,1,316,1,316,3,316,6412,8,316,1,316,1,316,1,316,1,316,3,316,6418,8,316,1,316,3,316,6421,8,316,1,316,1,316,1,316,3,316,6426,8,316,1,316,3,316,6429,8,316,1,316,1,316,1,316,3,316,6434,8,316,1,316,3,316,6437,8,316,1,316,1,316,3,316,6441,8,316,1,316,5,316,6444,8,316,10,316,12,316,6447,9,316,1,316,1,316,3,316,6451,8,316,1,316,5,316,6454,8,316,10,316,12,316,6457,9,316,1,316,1,316,3,316,6461,8,316,1,316,3,316,6464,8,316,1,316,5,316,6467,8,316,10,316,12,316,6470,9,316,1,316,1,316,3,316,6474,8,316,1,316,5,316,6477,8,316,10,316,12,316,6480,9,316,1,316,1,316,1,316,3,316,6485,8,316,1,316,1,316,1,316,3,316,6490,8,316,1,316,1,316,1,316,3,316,6495,8,316,1,316,1,316,1,316,3,316,6500,8,316,1,316,1,316,3,316,6504,8,316,1,316,3,316,6507,8,316,1,316,1,316,1,316,3,316,6512,8,316,1,316,1,316,3,316,6516,8,316,1,316,1,316,3,316,6520,8,316,1,317,1,317,1,317,1,317,5,317,6526,8,317,10,317,12,317,6529,9,317,1,317,1,317,1,318,1,318,3,318,6535,8,318,1,318,1,318,3,318,6539,8,318,1,318,1,318,1,318,3,318,6544,8,318,1,318,1,318,1,318,3,318,6549,8,318,1,318,1,318,3,318,6553,8,318,3,318,6555,8,318,1,318,3,318,6558,8,318,1,319,1,319,1,319,1,319,1,320,1,320,1,320,1,320,1,320,1,320,1,321,1,321,1,321,1,321,3,321,6574,8,321,1,321,1,321,1,322,1,322,1,322,5,322,6581,8,322,10,322,12,322,6584,9,322,1,323,1,323,1,323,5,323,6589,8,323,10,323,12,323,6592,9,323,1,324,1,324,1,324,5,324,6597,8,324,10,324,12,324,6600,9,324,1,325,1,325,1,325,1,325,5,325,6606,8,325,10,325,12,325,6609,9,325,1,325,1,325,1,326,1,326,1,326,5,326,6616,8,326,10,326,12,326,6619,9,326,1,327,1,327,1,327,5,327,6624,8,327,10,327,12,327,6627,9,327,1,328,1,328,1,328,5,328,6632,8,328,10,328,12,328,6635,9,328,1,329,1,329,1,329,5,329,6640,8,329,10,329,12,329,6643,9,329,1,330,1,330,1,330,5,330,6648,8,330,10,330,12,330,6651,9,330,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,331,3,331,6662,8,331,1,331,1,331,1,331,1,331,1,331,3,331,6669,8,331,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,331,3,331,6679,8,331,1,332,1,332,1,332,3,332,6684,8,332,1,332,3,332,6687,8,332,1,332,1,332,1,332,3,332,6692,8,332,1,332,3,332,6695,8,332,1,333,1,333,3,333,6699,8,333,1,334,1,334,1,334,1,335,1,335,1,335,1,335,1,336,1,336,1,336,1,337,1,337,1,337,3,337,6714,8,337,1,338,1,338,1,338,1,338,1,338,1,338,3,338,6722,8,338,1,338,1,338,1,338,1,338,1,338,3,338,6729,8,338,1,338,1,338,1,338,3,338,6734,8,338,1,339,1,339,1,339,3,339,6739,8,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,4,339,6771,8,339,11,339,12,339,6772,1,339,1,339,3,339,6777,8,339,1,339,1,339,1,339,1,339,4,339,6783,8,339,11,339,12,339,6784,1,339,1,339,3,339,6789,8,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6798,8,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6806,8,339,1,339,1,339,1,339,3,339,6811,8,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6819,8,339,1,339,1,339,1,339,3,339,6824,8,339,1,339,1,339,1,339,3,339,6829,8,339,3,339,6831,8,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6840,8,339,1,339,1,339,1,339,3,339,6845,8,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6853,8,339,1,339,1,339,1,339,3,339,6858,8,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6866,8,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6874,8,339,1,339,3,339,6877,8,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6887,8,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6905,8,339,1,339,3,339,6908,8,339,1,339,3,339,6911,8,339,1,339,1,339,3,339,6915,8,339,1,340,1,340,1,340,1,340,1,340,1,341,1,341,1,341,1,341,5,341,6926,8,341,10,341,12,341,6929,9,341,1,341,1,341,1,341,1,341,1,341,3,341,6936,8,341,1,342,1,342,3,342,6940,8,342,1,343,1,343,1,343,3,343,6945,8,343,1,343,1,343,1,343,3,343,6950,8,343,1,343,1,343,1,343,1,343,3,343,6956,8,343,1,343,1,343,1,343,3,343,6961,8,343,1,343,1,343,3,343,6965,8,343,1,343,1,343,1,343,3,343,6970,8,343,1,343,1,343,1,343,3,343,6975,8,343,1,343,1,343,1,343,3,343,6980,8,343,1,343,1,343,1,343,1,343,1,343,1,343,5,343,6988,8,343,10,343,12,343,6991,9,343,3,343,6993,8,343,1,343,1,343,3,343,6997,8,343,1,343,1,343,3,343,7001,8,343,1,344,1,344,1,344,1,344,1,344,3,344,7008,8,344,1,344,1,344,3,344,7012,8,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,3,344,7041,8,344,1,345,1,345,1,345,1,345,1,345,1,345,3,345,7049,8,345,1,346,3,346,7052,8,346,1,346,3,346,7055,8,346,1,346,3,346,7058,8,346,1,346,3,346,7061,8,346,1,347,1,347,1,348,1,348,1,348,1,349,1,349,1,350,1,350,3,350,7072,8,350,1,351,1,351,1,351,1,351,1,351,1,352,1,352,1,352,1,352,1,352,1,352,1,352,3,352,7086,8,352,1,353,1,353,1,353,1,353,1,353,5,353,7093,8,353,10,353,12,353,7096,9,353,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,3,354,7122,8,354,1,355,1,355,1,355,1,355,1,355,1,356,1,356,1,356,1,356,3,356,7133,8,356,1,356,1,356,1,356,1,356,1,356,3,356,7140,8,356,5,356,7142,8,356,10,356,12,356,7145,9,356,1,357,1,357,1,357,1,357,3,357,7151,8,357,1,358,1,358,1,358,1,358,1,358,1,358,3,358,7159,8,358,1,358,1,358,1,358,3,358,7164,8,358,1,358,1,358,1,358,1,358,5,358,7170,8,358,10,358,12,358,7173,9,358,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,3,359,7184,8,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,3,359,7197,8,359,1,359,1,359,1,359,1,359,3,359,7203,8,359,1,359,1,359,1,359,1,359,3,359,7209,8,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,3,359,7225,8,359,1,359,1,359,1,359,1,359,3,359,7231,8,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,5,359,7240,8,359,10,359,12,359,7243,9,359,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,5,360,7262,8,360,10,360,12,360,7265,9,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,4,360,7274,8,360,11,360,12,360,7275,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,3,360,7293,8,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,5,360,7314,8,360,10,360,12,360,7317,9,360,1,361,1,361,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,3,362,7335,8,362,1,363,1,363,1,363,1,363,1,363,1,363,1,363,3,363,7344,8,363,1,364,1,364,1,364,1,364,1,364,1,364,1,364,3,364,7353,8,364,1,365,1,365,1,366,1,366,1,367,1,367,1,367,1,367,1,367,3,367,7364,8,367,1,368,1,368,1,369,1,369,1,370,1,370,1,371,1,371,1,372,1,372,1,373,1,373,1,374,1,374,1,374,0,3,716,718,720,375,0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,312,314,316,318,320,322,324,326,328,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,376,378,380,382,384,386,388,390,392,394,396,398,400,402,404,406,408,410,412,414,416,418,420,422,424,426,428,430,432,434,436,438,440,442,444,446,448,450,452,454,456,458,460,462,464,466,468,470,472,474,476,478,480,482,484,486,488,490,492,494,496,498,500,502,504,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,564,566,568,570,572,574,576,578,580,582,584,586,588,590,592,594,596,598,600,602,604,606,608,610,612,614,616,618,620,622,624,626,628,630,632,634,636,638,640,642,644,646,648,650,652,654,656,658,660,662,664,666,668,670,672,674,676,678,680,682,684,686,688,690,692,694,696,698,700,702,704,706,708,710,712,714,716,718,720,722,724,726,728,730,732,734,736,738,740,742,744,746,748,0,145,2,0,39,39,150,150,2,0,531,531,537,537,3,0,69,69,159,159,181,181,3,0,42,42,384,384,454,454,4,0,42,42,419,419,529,529,611,611,2,0,514,514,1148,1148,2,0,78,78,141,141,2,0,15,15,334,334,3,0,44,44,85,85,184,184,2,0,434,434,558,558,3,0,506,506,650,650,658,658,2,0,392,392,460,460,2,0,352,352,474,474,2,0,42,42,1138,1139,2,0,350,350,443,443,2,0,459,459,673,673,3,0,80,80,84,84,125,125,3,0,42,42,402,402,431,431,3,0,42,42,398,398,792,792,2,0,637,637,672,672,2,0,81,81,91,91,3,0,436,436,548,548,613,613,2,0,69,69,159,159,1,0,356,357,1,0,1138,1139,2,0,1148,1148,1156,1156,2,0,81,81,388,388,2,0,545,545,1148,1148,2,0,546,546,1148,1148,3,0,430,430,469,469,521,521,7,0,42,42,370,370,372,372,402,402,431,431,573,573,1156,1156,2,0,514,514,530,530,1,0,1139,1140,2,0,5,5,51,51,4,0,42,42,384,384,454,454,458,458,2,0,26,26,30,30,2,0,12,12,175,175,2,0,192,192,677,677,2,0,21,21,144,144,3,0,43,43,75,75,106,106,2,0,106,106,374,374,2,0,365,365,427,427,2,0,101,101,601,601,2,0,43,43,106,106,2,0,6,6,49,49,2,0,188,188,669,669,4,0,430,430,469,469,520,520,562,562,2,0,430,430,520,520,2,0,13,13,45,45,3,0,66,66,78,78,186,186,2,0,34,34,83,83,2,0,97,97,148,148,2,0,6,6,49,50,1,0,626,627,2,0,172,172,742,742,2,0,439,439,609,609,2,0,226,226,477,477,5,0,107,107,482,483,485,485,489,497,575,575,4,0,479,480,484,484,486,487,576,576,3,0,108,108,478,478,488,488,2,0,462,462,628,628,2,0,622,622,624,624,2,0,344,344,629,629,2,0,90,90,591,591,2,0,51,51,390,390,3,0,31,31,61,61,179,179,3,0,131,131,172,172,437,437,3,0,12,12,19,19,187,187,2,0,42,42,121,121,2,0,103,103,182,182,2,0,360,360,614,614,2,0,40,40,671,671,2,0,115,115,474,474,2,0,422,422,568,568,4,0,206,206,208,208,214,214,638,638,2,0,1108,1108,1124,1124,2,0,345,345,577,577,2,0,68,68,80,80,3,0,131,131,415,415,437,437,2,0,172,172,671,671,2,0,513,513,634,634,2,0,412,412,675,675,2,0,131,131,437,437,3,0,81,81,92,92,452,452,3,0,439,439,474,474,609,609,2,0,634,634,670,670,2,0,376,376,567,567,6,0,226,226,409,409,411,411,438,438,574,574,615,615,2,0,45,46,62,62,3,0,422,422,550,550,885,885,2,0,466,466,652,652,10,0,359,359,367,367,378,380,387,387,507,507,515,515,639,639,646,646,836,836,1005,1005,2,0,35,35,168,168,2,0,117,117,996,996,11,0,359,359,367,367,378,380,387,387,507,507,515,515,592,592,639,639,646,646,836,836,1005,1005,2,0,1137,1137,1158,1159,1,0,1159,1160,2,0,375,375,787,798,3,0,1138,1140,1149,1149,1151,1151,2,0,63,63,178,178,2,0,116,116,1152,1152,5,0,25,25,222,224,231,231,233,236,518,518,2,0,25,25,222,222,2,0,25,25,222,223,1,0,196,207,3,0,183,183,195,195,612,612,2,0,211,216,431,431,6,0,217,217,228,228,230,230,232,232,239,239,348,349,4,0,218,221,226,227,229,229,346,346,2,0,153,153,237,237,2,0,466,466,803,811,3,0,211,211,226,226,518,518,6,0,200,200,206,206,209,209,217,218,220,221,466,466,1,0,214,215,2,0,183,183,612,612,2,0,200,200,206,206,2,0,315,316,322,322,3,0,150,150,313,316,331,331,1,0,325,326,3,0,17,17,95,95,176,176,2,0,222,222,226,226,2,0,217,218,220,220,3,0,13,13,45,45,994,994,3,0,286,286,298,299,309,309,3,0,287,289,305,308,310,312,2,0,295,295,297,297,2,0,293,293,296,296,2,0,291,292,302,304,2,0,133,133,601,601,2,0,433,433,559,559,2,0,535,535,551,551,2,0,114,114,1127,1127,3,0,63,63,178,178,662,662,2,0,137,137,149,149,3,0,6,6,337,337,618,618,3,0,114,114,1120,1121,1127,1128,2,0,1117,1119,1122,1123,1,0,1120,1121,2,0,226,226,746,786,1,0,799,802,5,0,708,709,725,727,733,733,739,740,742,742,1,0,689,696,3,0,217,221,234,234,237,237,59,0,11,11,14,14,18,18,29,29,35,35,37,37,42,42,48,48,55,55,57,57,59,59,73,73,79,79,94,94,117,117,121,121,124,124,130,130,158,158,168,168,239,239,283,290,294,294,298,299,305,312,332,385,387,403,405,405,407,432,434,450,452,458,460,521,523,523,527,544,547,558,560,589,591,592,594,606,608,636,638,672,674,675,677,682,684,688,697,697,699,707,710,712,717,718,720,724,728,732,734,734,736,738,741,741,743,745,792,792,836,836,875,875,1e3,1e3,1005,1005,1088,1088,23,0,39,39,97,97,148,148,150,150,217,219,221,221,251,282,290,293,295,297,300,304,324,324,459,459,673,673,689,696,736,736,803,803,806,835,837,874,876,999,1001,1004,1006,1087,1089,1107,1123,1123,8658,0,751,1,0,0,0,2,763,1,0,0,0,4,772,1,0,0,0,6,812,1,0,0,0,8,827,1,0,0,0,10,838,1,0,0,0,12,855,1,0,0,0,14,860,1,0,0,0,16,872,1,0,0,0,18,899,1,0,0,0,20,908,1,0,0,0,22,910,1,0,0,0,24,922,1,0,0,0,26,952,1,0,0,0,28,988,1,0,0,0,30,1039,1,0,0,0,32,1065,1,0,0,0,34,1101,1,0,0,0,36,1108,1,0,0,0,38,1205,1,0,0,0,40,1207,1,0,0,0,42,1225,1,0,0,0,44,1286,1,0,0,0,46,1308,1,0,0,0,48,1314,1,0,0,0,50,1336,1,0,0,0,52,1338,1,0,0,0,54,1340,1,0,0,0,56,1420,1,0,0,0,58,1427,1,0,0,0,60,1429,1,0,0,0,62,1434,1,0,0,0,64,1474,1,0,0,0,66,1480,1,0,0,0,68,1482,1,0,0,0,70,1503,1,0,0,0,72,1510,1,0,0,0,74,1512,1,0,0,0,76,1537,1,0,0,0,78,1540,1,0,0,0,80,1545,1,0,0,0,82,1571,1,0,0,0,84,1587,1,0,0,0,86,1589,1,0,0,0,88,1611,1,0,0,0,90,1613,1,0,0,0,92,1679,1,0,0,0,94,1750,1,0,0,0,96,1752,1,0,0,0,98,1780,1,0,0,0,100,1790,1,0,0,0,102,1820,1,0,0,0,104,2007,1,0,0,0,106,2009,1,0,0,0,108,2011,1,0,0,0,110,2014,1,0,0,0,112,2089,1,0,0,0,114,2112,1,0,0,0,116,2260,1,0,0,0,118,2265,1,0,0,0,120,2267,1,0,0,0,122,2277,1,0,0,0,124,2333,1,0,0,0,126,2351,1,0,0,0,128,2353,1,0,0,0,130,2388,1,0,0,0,132,2397,1,0,0,0,134,2404,1,0,0,0,136,2427,1,0,0,0,138,2436,1,0,0,0,140,2451,1,0,0,0,142,2476,1,0,0,0,144,2496,1,0,0,0,146,2879,1,0,0,0,148,2979,1,0,0,0,150,2981,1,0,0,0,152,2988,1,0,0,0,154,2995,1,0,0,0,156,3018,1,0,0,0,158,3026,1,0,0,0,160,3033,1,0,0,0,162,3040,1,0,0,0,164,3047,1,0,0,0,166,3059,1,0,0,0,168,3069,1,0,0,0,170,3076,1,0,0,0,172,3092,1,0,0,0,174,3112,1,0,0,0,176,3114,1,0,0,0,178,3124,1,0,0,0,180,3128,1,0,0,0,182,3134,1,0,0,0,184,3146,1,0,0,0,186,3148,1,0,0,0,188,3155,1,0,0,0,190,3157,1,0,0,0,192,3215,1,0,0,0,194,3289,1,0,0,0,196,3348,1,0,0,0,198,3446,1,0,0,0,200,3450,1,0,0,0,202,3452,1,0,0,0,204,3487,1,0,0,0,206,3489,1,0,0,0,208,3497,1,0,0,0,210,3505,1,0,0,0,212,3507,1,0,0,0,214,3543,1,0,0,0,216,3598,1,0,0,0,218,3607,1,0,0,0,220,3627,1,0,0,0,222,3639,1,0,0,0,224,3643,1,0,0,0,226,3676,1,0,0,0,228,3697,1,0,0,0,230,3707,1,0,0,0,232,3711,1,0,0,0,234,3737,1,0,0,0,236,3776,1,0,0,0,238,3778,1,0,0,0,240,3793,1,0,0,0,242,3842,1,0,0,0,244,3851,1,0,0,0,246,3861,1,0,0,0,248,3871,1,0,0,0,250,3927,1,0,0,0,252,3929,1,0,0,0,254,3956,1,0,0,0,256,3962,1,0,0,0,258,3970,1,0,0,0,260,3987,1,0,0,0,262,4003,1,0,0,0,264,4040,1,0,0,0,266,4046,1,0,0,0,268,4055,1,0,0,0,270,4068,1,0,0,0,272,4072,1,0,0,0,274,4082,1,0,0,0,276,4106,1,0,0,0,278,4144,1,0,0,0,280,4158,1,0,0,0,282,4166,1,0,0,0,284,4170,1,0,0,0,286,4176,1,0,0,0,288,4190,1,0,0,0,290,4193,1,0,0,0,292,4211,1,0,0,0,294,4215,1,0,0,0,296,4231,1,0,0,0,298,4233,1,0,0,0,300,4245,1,0,0,0,302,4249,1,0,0,0,304,4266,1,0,0,0,306,4283,1,0,0,0,308,4286,1,0,0,0,310,4296,1,0,0,0,312,4300,1,0,0,0,314,4313,1,0,0,0,316,4316,1,0,0,0,318,4321,1,0,0,0,320,4341,1,0,0,0,322,4343,1,0,0,0,324,4360,1,0,0,0,326,4369,1,0,0,0,328,4378,1,0,0,0,330,4380,1,0,0,0,332,4394,1,0,0,0,334,4405,1,0,0,0,336,4414,1,0,0,0,338,4417,1,0,0,0,340,4425,1,0,0,0,342,4450,1,0,0,0,344,4462,1,0,0,0,346,4465,1,0,0,0,348,4497,1,0,0,0,350,4499,1,0,0,0,352,4501,1,0,0,0,354,4503,1,0,0,0,356,4505,1,0,0,0,358,4558,1,0,0,0,360,4560,1,0,0,0,362,4566,1,0,0,0,364,4586,1,0,0,0,366,4600,1,0,0,0,368,4611,1,0,0,0,370,4613,1,0,0,0,372,4619,1,0,0,0,374,4629,1,0,0,0,376,4633,1,0,0,0,378,4640,1,0,0,0,380,4644,1,0,0,0,382,4650,1,0,0,0,384,4657,1,0,0,0,386,4663,1,0,0,0,388,4669,1,0,0,0,390,4674,1,0,0,0,392,4719,1,0,0,0,394,4740,1,0,0,0,396,4765,1,0,0,0,398,4768,1,0,0,0,400,4774,1,0,0,0,402,4790,1,0,0,0,404,4805,1,0,0,0,406,4811,1,0,0,0,408,4841,1,0,0,0,410,4843,1,0,0,0,412,4850,1,0,0,0,414,4862,1,0,0,0,416,4868,1,0,0,0,418,4893,1,0,0,0,420,4897,1,0,0,0,422,4901,1,0,0,0,424,4912,1,0,0,0,426,4983,1,0,0,0,428,5036,1,0,0,0,430,5038,1,0,0,0,432,5105,1,0,0,0,434,5115,1,0,0,0,436,5117,1,0,0,0,438,5135,1,0,0,0,440,5181,1,0,0,0,442,5183,1,0,0,0,444,5196,1,0,0,0,446,5207,1,0,0,0,448,5210,1,0,0,0,450,5243,1,0,0,0,452,5247,1,0,0,0,454,5268,1,0,0,0,456,5278,1,0,0,0,458,5288,1,0,0,0,460,5328,1,0,0,0,462,5330,1,0,0,0,464,5333,1,0,0,0,466,5433,1,0,0,0,468,5451,1,0,0,0,470,5453,1,0,0,0,472,5457,1,0,0,0,474,5495,1,0,0,0,476,5504,1,0,0,0,478,5510,1,0,0,0,480,5517,1,0,0,0,482,5539,1,0,0,0,484,5541,1,0,0,0,486,5555,1,0,0,0,488,5561,1,0,0,0,490,5617,1,0,0,0,492,5780,1,0,0,0,494,5792,1,0,0,0,496,5807,1,0,0,0,498,5813,1,0,0,0,500,5832,1,0,0,0,502,5842,1,0,0,0,504,5856,1,0,0,0,506,5858,1,0,0,0,508,5861,1,0,0,0,510,5883,1,0,0,0,512,5895,1,0,0,0,514,5901,1,0,0,0,516,5913,1,0,0,0,518,5917,1,0,0,0,520,5919,1,0,0,0,522,5961,1,0,0,0,524,5968,1,0,0,0,526,5970,1,0,0,0,528,5993,1,0,0,0,530,5999,1,0,0,0,532,6007,1,0,0,0,534,6010,1,0,0,0,536,6013,1,0,0,0,538,6034,1,0,0,0,540,6055,1,0,0,0,542,6063,1,0,0,0,544,6075,1,0,0,0,546,6083,1,0,0,0,548,6121,1,0,0,0,550,6133,1,0,0,0,552,6135,1,0,0,0,554,6141,1,0,0,0,556,6143,1,0,0,0,558,6153,1,0,0,0,560,6155,1,0,0,0,562,6163,1,0,0,0,564,6171,1,0,0,0,566,6173,1,0,0,0,568,6181,1,0,0,0,570,6197,1,0,0,0,572,6199,1,0,0,0,574,6201,1,0,0,0,576,6203,1,0,0,0,578,6205,1,0,0,0,580,6207,1,0,0,0,582,6226,1,0,0,0,584,6235,1,0,0,0,586,6237,1,0,0,0,588,6239,1,0,0,0,590,6252,1,0,0,0,592,6254,1,0,0,0,594,6256,1,0,0,0,596,6262,1,0,0,0,598,6266,1,0,0,0,600,6271,1,0,0,0,602,6273,1,0,0,0,604,6275,1,0,0,0,606,6293,1,0,0,0,608,6309,1,0,0,0,610,6313,1,0,0,0,612,6318,1,0,0,0,614,6329,1,0,0,0,616,6334,1,0,0,0,618,6336,1,0,0,0,620,6340,1,0,0,0,622,6365,1,0,0,0,624,6367,1,0,0,0,626,6370,1,0,0,0,628,6375,1,0,0,0,630,6391,1,0,0,0,632,6519,1,0,0,0,634,6521,1,0,0,0,636,6554,1,0,0,0,638,6559,1,0,0,0,640,6563,1,0,0,0,642,6569,1,0,0,0,644,6577,1,0,0,0,646,6585,1,0,0,0,648,6593,1,0,0,0,650,6601,1,0,0,0,652,6612,1,0,0,0,654,6620,1,0,0,0,656,6628,1,0,0,0,658,6636,1,0,0,0,660,6644,1,0,0,0,662,6678,1,0,0,0,664,6694,1,0,0,0,666,6698,1,0,0,0,668,6700,1,0,0,0,670,6703,1,0,0,0,672,6707,1,0,0,0,674,6713,1,0,0,0,676,6733,1,0,0,0,678,6914,1,0,0,0,680,6916,1,0,0,0,682,6935,1,0,0,0,684,6937,1,0,0,0,686,7e3,1,0,0,0,688,7040,1,0,0,0,690,7042,1,0,0,0,692,7051,1,0,0,0,694,7062,1,0,0,0,696,7064,1,0,0,0,698,7067,1,0,0,0,700,7071,1,0,0,0,702,7073,1,0,0,0,704,7085,1,0,0,0,706,7087,1,0,0,0,708,7121,1,0,0,0,710,7123,1,0,0,0,712,7132,1,0,0,0,714,7150,1,0,0,0,716,7163,1,0,0,0,718,7174,1,0,0,0,720,7292,1,0,0,0,722,7318,1,0,0,0,724,7334,1,0,0,0,726,7343,1,0,0,0,728,7352,1,0,0,0,730,7354,1,0,0,0,732,7356,1,0,0,0,734,7363,1,0,0,0,736,7365,1,0,0,0,738,7367,1,0,0,0,740,7369,1,0,0,0,742,7371,1,0,0,0,744,7373,1,0,0,0,746,7375,1,0,0,0,748,7377,1,0,0,0,750,752,3,2,1,0,751,750,1,0,0,0,751,752,1,0,0,0,752,753,1,0,0,0,753,754,5,0,0,1,754,1,1,0,0,0,755,757,3,4,2,0,756,758,5,1136,0,0,757,756,1,0,0,0,757,758,1,0,0,0,758,764,1,0,0,0,759,760,3,4,2,0,760,761,5,1136,0,0,761,762,3,2,1,0,762,764,1,0,0,0,763,755,1,0,0,0,763,759,1,0,0,0,764,3,1,0,0,0,765,773,3,6,3,0,766,773,3,8,4,0,767,773,3,10,5,0,768,773,3,12,6,0,769,773,3,14,7,0,770,773,3,18,9,0,771,773,3,20,10,0,772,765,1,0,0,0,772,766,1,0,0,0,772,767,1,0,0,0,772,768,1,0,0,0,772,769,1,0,0,0,772,770,1,0,0,0,772,771,1,0,0,0,773,5,1,0,0,0,774,813,3,22,11,0,775,813,3,24,12,0,776,813,3,26,13,0,777,813,3,28,14,0,778,813,3,30,15,0,779,813,3,32,16,0,780,813,3,36,18,0,781,813,3,38,19,0,782,813,3,40,20,0,783,813,3,42,21,0,784,813,3,44,22,0,785,813,3,54,27,0,786,813,3,34,17,0,787,813,3,126,63,0,788,813,3,128,64,0,789,813,3,130,65,0,790,813,3,132,66,0,791,813,3,134,67,0,792,813,3,136,68,0,793,813,3,138,69,0,794,813,3,140,70,0,795,813,3,142,71,0,796,813,3,144,72,0,797,813,3,150,75,0,798,813,3,152,76,0,799,813,3,154,77,0,800,813,3,156,78,0,801,813,3,158,79,0,802,813,3,160,80,0,803,813,3,162,81,0,804,813,3,164,82,0,805,813,3,166,83,0,806,813,3,168,84,0,807,813,3,170,85,0,808,813,3,172,86,0,809,813,3,174,87,0,810,813,3,176,88,0,811,813,3,180,90,0,812,774,1,0,0,0,812,775,1,0,0,0,812,776,1,0,0,0,812,777,1,0,0,0,812,778,1,0,0,0,812,779,1,0,0,0,812,780,1,0,0,0,812,781,1,0,0,0,812,782,1,0,0,0,812,783,1,0,0,0,812,784,1,0,0,0,812,785,1,0,0,0,812,786,1,0,0,0,812,787,1,0,0,0,812,788,1,0,0,0,812,789,1,0,0,0,812,790,1,0,0,0,812,791,1,0,0,0,812,792,1,0,0,0,812,793,1,0,0,0,812,794,1,0,0,0,812,795,1,0,0,0,812,796,1,0,0,0,812,797,1,0,0,0,812,798,1,0,0,0,812,799,1,0,0,0,812,800,1,0,0,0,812,801,1,0,0,0,812,802,1,0,0,0,812,803,1,0,0,0,812,804,1,0,0,0,812,805,1,0,0,0,812,806,1,0,0,0,812,807,1,0,0,0,812,808,1,0,0,0,812,809,1,0,0,0,812,810,1,0,0,0,812,811,1,0,0,0,813,7,1,0,0,0,814,828,3,198,99,0,815,828,3,190,95,0,816,828,3,200,100,0,817,828,3,184,92,0,818,828,3,196,98,0,819,828,3,182,91,0,820,828,3,192,96,0,821,828,3,194,97,0,822,828,3,186,93,0,823,828,3,188,94,0,824,828,3,202,101,0,825,828,3,542,271,0,826,828,3,544,272,0,827,814,1,0,0,0,827,815,1,0,0,0,827,816,1,0,0,0,827,817,1,0,0,0,827,818,1,0,0,0,827,819,1,0,0,0,827,820,1,0,0,0,827,821,1,0,0,0,827,822,1,0,0,0,827,823,1,0,0,0,827,824,1,0,0,0,827,825,1,0,0,0,827,826,1,0,0,0,828,9,1,0,0,0,829,839,3,298,149,0,830,839,3,300,150,0,831,839,3,302,151,0,832,839,3,304,152,0,833,839,3,306,153,0,834,839,3,308,154,0,835,839,3,310,155,0,836,839,3,312,156,0,837,839,3,314,157,0,838,829,1,0,0,0,838,830,1,0,0,0,838,831,1,0,0,0,838,832,1,0,0,0,838,833,1,0,0,0,838,834,1,0,0,0,838,835,1,0,0,0,838,836,1,0,0,0,838,837,1,0,0,0,839,11,1,0,0,0,840,856,3,330,165,0,841,856,3,332,166,0,842,856,3,334,167,0,843,856,3,336,168,0,844,856,3,338,169,0,845,856,3,340,170,0,846,856,3,342,171,0,847,856,3,344,172,0,848,856,3,346,173,0,849,856,3,370,185,0,850,856,3,372,186,0,851,856,3,374,187,0,852,856,3,376,188,0,853,856,3,378,189,0,854,856,3,380,190,0,855,840,1,0,0,0,855,841,1,0,0,0,855,842,1,0,0,0,855,843,1,0,0,0,855,844,1,0,0,0,855,845,1,0,0,0,855,846,1,0,0,0,855,847,1,0,0,0,855,848,1,0,0,0,855,849,1,0,0,0,855,850,1,0,0,0,855,851,1,0,0,0,855,852,1,0,0,0,855,853,1,0,0,0,855,854,1,0,0,0,856,13,1,0,0,0,857,861,3,382,191,0,858,861,3,384,192,0,859,861,3,386,193,0,860,857,1,0,0,0,860,858,1,0,0,0,860,859,1,0,0,0,861,15,1,0,0,0,862,873,3,390,195,0,863,873,3,392,196,0,864,873,3,394,197,0,865,873,3,398,199,0,866,873,3,400,200,0,867,873,3,402,201,0,868,873,3,406,203,0,869,873,3,396,198,0,870,873,3,404,202,0,871,873,3,408,204,0,872,862,1,0,0,0,872,863,1,0,0,0,872,864,1,0,0,0,872,865,1,0,0,0,872,866,1,0,0,0,872,867,1,0,0,0,872,868,1,0,0,0,872,869,1,0,0,0,872,870,1,0,0,0,872,871,1,0,0,0,873,17,1,0,0,0,874,900,3,426,213,0,875,900,3,428,214,0,876,900,3,430,215,0,877,900,3,432,216,0,878,900,3,436,218,0,879,900,3,438,219,0,880,900,3,440,220,0,881,900,3,442,221,0,882,900,3,472,236,0,883,900,3,474,237,0,884,900,3,476,238,0,885,900,3,478,239,0,886,900,3,480,240,0,887,900,3,484,242,0,888,900,3,486,243,0,889,900,3,488,244,0,890,900,3,490,245,0,891,900,3,492,246,0,892,900,3,506,253,0,893,900,3,508,254,0,894,900,3,510,255,0,895,900,3,512,256,0,896,900,3,514,257,0,897,900,3,516,258,0,898,900,3,518,259,0,899,874,1,0,0,0,899,875,1,0,0,0,899,876,1,0,0,0,899,877,1,0,0,0,899,878,1,0,0,0,899,879,1,0,0,0,899,880,1,0,0,0,899,881,1,0,0,0,899,882,1,0,0,0,899,883,1,0,0,0,899,884,1,0,0,0,899,885,1,0,0,0,899,886,1,0,0,0,899,887,1,0,0,0,899,888,1,0,0,0,899,889,1,0,0,0,899,890,1,0,0,0,899,891,1,0,0,0,899,892,1,0,0,0,899,893,1,0,0,0,899,894,1,0,0,0,899,895,1,0,0,0,899,896,1,0,0,0,899,897,1,0,0,0,899,898,1,0,0,0,900,19,1,0,0,0,901,909,3,528,264,0,902,909,3,530,265,0,903,909,3,532,266,0,904,909,3,534,267,0,905,909,3,536,268,0,906,909,3,538,269,0,907,909,3,546,273,0,908,901,1,0,0,0,908,902,1,0,0,0,908,903,1,0,0,0,908,904,1,0,0,0,908,905,1,0,0,0,908,906,1,0,0,0,908,907,1,0,0,0,909,21,1,0,0,0,910,911,5,33,0,0,911,913,7,0,0,0,912,914,3,670,335,0,913,912,1,0,0,0,913,914,1,0,0,0,914,915,1,0,0,0,915,919,3,612,306,0,916,918,3,56,28,0,917,916,1,0,0,0,918,921,1,0,0,0,919,917,1,0,0,0,919,920,1,0,0,0,920,23,1,0,0,0,921,919,1,0,0,0,922,924,5,33,0,0,923,925,3,62,31,0,924,923,1,0,0,0,924,925,1,0,0,0,925,926,1,0,0,0,926,928,5,415,0,0,927,929,3,670,335,0,928,927,1,0,0,0,928,929,1,0,0,0,929,930,1,0,0,0,930,931,3,552,276,0,931,932,5,118,0,0,932,933,5,605,0,0,933,940,3,64,32,0,934,935,5,118,0,0,935,937,5,371,0,0,936,938,5,114,0,0,937,936,1,0,0,0,937,938,1,0,0,0,938,939,1,0,0,0,939,941,5,561,0,0,940,934,1,0,0,0,940,941,1,0,0,0,941,943,1,0,0,0,942,944,3,72,36,0,943,942,1,0,0,0,943,944,1,0,0,0,944,947,1,0,0,0,945,946,5,368,0,0,946,948,5,1148,0,0,947,945,1,0,0,0,947,948,1,0,0,0,948,949,1,0,0,0,949,950,5,399,0,0,950,951,3,388,194,0,951,25,1,0,0,0,952,954,5,33,0,0,953,955,7,1,0,0,954,953,1,0,0,0,954,955,1,0,0,0,955,957,1,0,0,0,956,958,7,2,0,0,957,956,1,0,0,0,957,958,1,0,0,0,958,959,1,0,0,0,959,960,5,81,0,0,960,962,3,612,306,0,961,963,3,74,37,0,962,961,1,0,0,0,962,963,1,0,0,0,963,964,1,0,0,0,964,965,5,118,0,0,965,966,3,554,277,0,966,970,3,650,325,0,967,969,3,76,38,0,968,967,1,0,0,0,969,972,1,0,0,0,970,968,1,0,0,0,970,971,1,0,0,0,971,985,1,0,0,0,972,970,1,0,0,0,973,975,5,336,0,0,974,976,5,1124,0,0,975,974,1,0,0,0,975,976,1,0,0,0,976,977,1,0,0,0,977,984,7,3,0,0,978,980,5,103,0,0,979,981,5,1124,0,0,980,979,1,0,0,0,980,981,1,0,0,0,981,982,1,0,0,0,982,984,7,4,0,0,983,973,1,0,0,0,983,978,1,0,0,0,984,987,1,0,0,0,985,983,1,0,0,0,985,986,1,0,0,0,986,27,1,0,0,0,987,985,1,0,0,0,988,989,5,33,0,0,989,990,5,475,0,0,990,991,5,73,0,0,991,992,3,612,306,0,992,993,5,5,0,0,993,994,5,659,0,0,994,1e3,5,1148,0,0,995,997,5,453,0,0,996,998,5,1124,0,0,997,996,1,0,0,0,997,998,1,0,0,0,998,999,1,0,0,0,999,1001,3,620,310,0,1e3,995,1,0,0,0,1e3,1001,1,0,0,0,1001,1007,1,0,0,0,1002,1004,5,660,0,0,1003,1005,5,1124,0,0,1004,1003,1,0,0,0,1004,1005,1,0,0,0,1005,1006,1,0,0,0,1006,1008,3,620,310,0,1007,1002,1,0,0,0,1007,1008,1,0,0,0,1008,1014,1,0,0,0,1009,1011,5,572,0,0,1010,1012,5,1124,0,0,1011,1010,1,0,0,0,1011,1012,1,0,0,0,1012,1013,1,0,0,0,1013,1015,3,620,310,0,1014,1009,1,0,0,0,1014,1015,1,0,0,0,1015,1021,1,0,0,0,1016,1018,5,528,0,0,1017,1019,5,1124,0,0,1018,1017,1,0,0,0,1018,1019,1,0,0,0,1019,1020,1,0,0,0,1020,1022,3,612,306,0,1021,1016,1,0,0,0,1021,1022,1,0,0,0,1022,1024,1,0,0,0,1023,1025,5,674,0,0,1024,1023,1,0,0,0,1024,1025,1,0,0,0,1025,1031,1,0,0,0,1026,1028,5,368,0,0,1027,1029,5,1124,0,0,1028,1027,1,0,0,0,1028,1029,1,0,0,0,1029,1030,1,0,0,0,1030,1032,5,1148,0,0,1031,1026,1,0,0,0,1031,1032,1,0,0,0,1032,1033,1,0,0,0,1033,1035,5,409,0,0,1034,1036,5,1124,0,0,1035,1034,1,0,0,0,1035,1036,1,0,0,0,1036,1037,1,0,0,0,1037,1038,3,600,300,0,1038,29,1,0,0,0,1039,1041,5,33,0,0,1040,1042,3,62,31,0,1041,1040,1,0,0,0,1041,1042,1,0,0,0,1042,1043,1,0,0,0,1043,1044,5,131,0,0,1044,1045,3,552,276,0,1045,1047,5,1133,0,0,1046,1048,3,78,39,0,1047,1046,1,0,0,0,1047,1048,1,0,0,0,1048,1053,1,0,0,0,1049,1050,5,1135,0,0,1050,1052,3,78,39,0,1051,1049,1,0,0,0,1052,1055,1,0,0,0,1053,1051,1,0,0,0,1053,1054,1,0,0,0,1054,1056,1,0,0,0,1055,1053,1,0,0,0,1056,1060,5,1134,0,0,1057,1059,3,82,41,0,1058,1057,1,0,0,0,1059,1062,1,0,0,0,1060,1058,1,0,0,0,1060,1061,1,0,0,0,1061,1063,1,0,0,0,1062,1060,1,0,0,0,1063,1064,3,388,194,0,1064,31,1,0,0,0,1065,1067,5,33,0,0,1066,1068,3,62,31,0,1067,1066,1,0,0,0,1067,1068,1,0,0,0,1068,1070,1,0,0,0,1069,1071,5,335,0,0,1070,1069,1,0,0,0,1070,1071,1,0,0,0,1071,1072,1,0,0,0,1072,1074,5,437,0,0,1073,1075,3,670,335,0,1074,1073,1,0,0,0,1074,1075,1,0,0,0,1075,1076,1,0,0,0,1076,1077,3,552,276,0,1077,1079,5,1133,0,0,1078,1080,3,80,40,0,1079,1078,1,0,0,0,1079,1080,1,0,0,0,1080,1085,1,0,0,0,1081,1082,5,1135,0,0,1082,1084,3,80,40,0,1083,1081,1,0,0,0,1084,1087,1,0,0,0,1085,1083,1,0,0,0,1085,1086,1,0,0,0,1086,1088,1,0,0,0,1087,1085,1,0,0,0,1088,1089,5,1134,0,0,1089,1090,5,594,0,0,1090,1094,3,632,316,0,1091,1093,3,82,41,0,1092,1091,1,0,0,0,1093,1096,1,0,0,0,1094,1092,1,0,0,0,1094,1095,1,0,0,0,1095,1099,1,0,0,0,1096,1094,1,0,0,0,1097,1100,3,388,194,0,1098,1100,3,404,202,0,1099,1097,1,0,0,0,1099,1098,1,0,0,0,1100,33,1,0,0,0,1101,1102,5,33,0,0,1102,1104,5,596,0,0,1103,1105,3,670,335,0,1104,1103,1,0,0,0,1104,1105,1,0,0,0,1105,1106,1,0,0,0,1106,1107,3,562,281,0,1107,35,1,0,0,0,1108,1109,5,33,0,0,1109,1110,5,608,0,0,1110,1111,3,612,306,0,1111,1112,5,67,0,0,1112,1113,5,388,0,0,1113,1114,5,679,0,0,1114,1115,7,5,0,0,1115,1116,5,541,0,0,1116,1117,5,1133,0,0,1117,1122,3,84,42,0,1118,1119,5,1135,0,0,1119,1121,3,84,42,0,1120,1118,1,0,0,0,1121,1124,1,0,0,0,1122,1120,1,0,0,0,1122,1123,1,0,0,0,1123,1125,1,0,0,0,1124,1122,1,0,0,0,1125,1126,5,1134,0,0,1126,37,1,0,0,0,1127,1129,5,33,0,0,1128,1130,5,649,0,0,1129,1128,1,0,0,0,1129,1130,1,0,0,0,1130,1131,1,0,0,0,1131,1133,5,172,0,0,1132,1134,3,670,335,0,1133,1132,1,0,0,0,1133,1134,1,0,0,0,1134,1135,1,0,0,0,1135,1143,3,554,277,0,1136,1137,5,98,0,0,1137,1144,3,554,277,0,1138,1139,5,1133,0,0,1139,1140,5,98,0,0,1140,1141,3,554,277,0,1141,1142,5,1134,0,0,1142,1144,1,0,0,0,1143,1136,1,0,0,0,1143,1138,1,0,0,0,1144,1206,1,0,0,0,1145,1147,5,33,0,0,1146,1148,5,649,0,0,1147,1146,1,0,0,0,1147,1148,1,0,0,0,1148,1149,1,0,0,0,1149,1151,5,172,0,0,1150,1152,3,670,335,0,1151,1150,1,0,0,0,1151,1152,1,0,0,0,1152,1153,1,0,0,0,1153,1155,3,554,277,0,1154,1156,3,86,43,0,1155,1154,1,0,0,0,1155,1156,1,0,0,0,1156,1167,1,0,0,0,1157,1164,3,104,52,0,1158,1160,5,1135,0,0,1159,1158,1,0,0,0,1159,1160,1,0,0,0,1160,1161,1,0,0,0,1161,1163,3,104,52,0,1162,1159,1,0,0,0,1163,1166,1,0,0,0,1164,1162,1,0,0,0,1164,1165,1,0,0,0,1165,1168,1,0,0,0,1166,1164,1,0,0,0,1167,1157,1,0,0,0,1167,1168,1,0,0,0,1168,1170,1,0,0,0,1169,1171,3,110,55,0,1170,1169,1,0,0,0,1170,1171,1,0,0,0,1171,1173,1,0,0,0,1172,1174,7,6,0,0,1173,1172,1,0,0,0,1173,1174,1,0,0,0,1174,1176,1,0,0,0,1175,1177,5,12,0,0,1176,1175,1,0,0,0,1176,1177,1,0,0,0,1177,1178,1,0,0,0,1178,1179,3,198,99,0,1179,1206,1,0,0,0,1180,1182,5,33,0,0,1181,1183,5,649,0,0,1182,1181,1,0,0,0,1182,1183,1,0,0,0,1183,1184,1,0,0,0,1184,1186,5,172,0,0,1185,1187,3,670,335,0,1186,1185,1,0,0,0,1186,1187,1,0,0,0,1187,1188,1,0,0,0,1188,1189,3,554,277,0,1189,1200,3,86,43,0,1190,1197,3,104,52,0,1191,1193,5,1135,0,0,1192,1191,1,0,0,0,1192,1193,1,0,0,0,1193,1194,1,0,0,0,1194,1196,3,104,52,0,1195,1192,1,0,0,0,1196,1199,1,0,0,0,1197,1195,1,0,0,0,1197,1198,1,0,0,0,1198,1201,1,0,0,0,1199,1197,1,0,0,0,1200,1190,1,0,0,0,1200,1201,1,0,0,0,1201,1203,1,0,0,0,1202,1204,3,110,55,0,1203,1202,1,0,0,0,1203,1204,1,0,0,0,1204,1206,1,0,0,0,1205,1127,1,0,0,0,1205,1145,1,0,0,0,1205,1180,1,0,0,0,1206,39,1,0,0,0,1207,1208,5,33,0,0,1208,1209,5,647,0,0,1209,1210,3,612,306,0,1210,1211,5,5,0,0,1211,1212,5,389,0,0,1212,1216,5,1148,0,0,1213,1214,5,428,0,0,1214,1215,5,1124,0,0,1215,1217,3,620,310,0,1216,1213,1,0,0,0,1216,1217,1,0,0,0,1217,1223,1,0,0,0,1218,1220,5,409,0,0,1219,1221,5,1124,0,0,1220,1219,1,0,0,0,1220,1221,1,0,0,0,1221,1222,1,0,0,0,1222,1224,3,600,300,0,1223,1218,1,0,0,0,1223,1224,1,0,0,0,1224,41,1,0,0,0,1225,1226,5,33,0,0,1226,1227,5,647,0,0,1227,1228,3,612,306,0,1228,1229,5,5,0,0,1229,1230,5,389,0,0,1230,1231,5,1148,0,0,1231,1232,5,186,0,0,1232,1233,5,475,0,0,1233,1234,5,73,0,0,1234,1240,3,612,306,0,1235,1237,5,423,0,0,1236,1238,5,1124,0,0,1237,1236,1,0,0,0,1237,1238,1,0,0,0,1238,1239,1,0,0,0,1239,1241,3,620,310,0,1240,1235,1,0,0,0,1240,1241,1,0,0,0,1241,1247,1,0,0,0,1242,1244,5,453,0,0,1243,1245,5,1124,0,0,1244,1243,1,0,0,0,1244,1245,1,0,0,0,1245,1246,1,0,0,0,1246,1248,3,620,310,0,1247,1242,1,0,0,0,1247,1248,1,0,0,0,1248,1254,1,0,0,0,1249,1251,5,341,0,0,1250,1252,5,1124,0,0,1251,1250,1,0,0,0,1251,1252,1,0,0,0,1252,1253,1,0,0,0,1253,1255,3,620,310,0,1254,1249,1,0,0,0,1254,1255,1,0,0,0,1255,1261,1,0,0,0,1256,1258,5,501,0,0,1257,1259,5,1124,0,0,1258,1257,1,0,0,0,1258,1259,1,0,0,0,1259,1260,1,0,0,0,1260,1262,3,620,310,0,1261,1256,1,0,0,0,1261,1262,1,0,0,0,1262,1268,1,0,0,0,1263,1265,5,528,0,0,1264,1266,5,1124,0,0,1265,1264,1,0,0,0,1265,1266,1,0,0,0,1266,1267,1,0,0,0,1267,1269,3,612,306,0,1268,1263,1,0,0,0,1268,1269,1,0,0,0,1269,1271,1,0,0,0,1270,1272,5,674,0,0,1271,1270,1,0,0,0,1271,1272,1,0,0,0,1272,1278,1,0,0,0,1273,1275,5,368,0,0,1274,1276,5,1124,0,0,1275,1274,1,0,0,0,1275,1276,1,0,0,0,1276,1277,1,0,0,0,1277,1279,5,1148,0,0,1278,1273,1,0,0,0,1278,1279,1,0,0,0,1279,1280,1,0,0,0,1280,1282,5,409,0,0,1281,1283,5,1124,0,0,1282,1281,1,0,0,0,1282,1283,1,0,0,0,1283,1284,1,0,0,0,1284,1285,3,600,300,0,1285,43,1,0,0,0,1286,1288,5,33,0,0,1287,1289,3,62,31,0,1288,1287,1,0,0,0,1288,1289,1,0,0,0,1289,1290,1,0,0,0,1290,1292,5,177,0,0,1291,1293,3,670,335,0,1292,1291,1,0,0,0,1292,1293,1,0,0,0,1293,1294,1,0,0,0,1294,1295,3,552,276,0,1295,1296,7,7,0,0,1296,1297,7,8,0,0,1297,1298,5,118,0,0,1298,1299,3,554,277,0,1299,1300,5,65,0,0,1300,1301,5,52,0,0,1301,1304,5,600,0,0,1302,1303,7,9,0,0,1303,1305,3,552,276,0,1304,1302,1,0,0,0,1304,1305,1,0,0,0,1305,1306,1,0,0,0,1306,1307,3,388,194,0,1307,45,1,0,0,0,1308,1310,5,192,0,0,1309,1311,5,571,0,0,1310,1309,1,0,0,0,1310,1311,1,0,0,0,1311,1312,1,0,0,0,1312,1313,3,48,24,0,1313,47,1,0,0,0,1314,1326,3,50,25,0,1315,1316,5,1133,0,0,1316,1321,3,52,26,0,1317,1318,5,1135,0,0,1318,1320,3,52,26,0,1319,1317,1,0,0,0,1320,1323,1,0,0,0,1321,1319,1,0,0,0,1321,1322,1,0,0,0,1322,1324,1,0,0,0,1323,1321,1,0,0,0,1324,1325,5,1134,0,0,1325,1327,1,0,0,0,1326,1315,1,0,0,0,1326,1327,1,0,0,0,1327,1328,1,0,0,0,1328,1329,5,12,0,0,1329,1330,5,1133,0,0,1330,1331,3,8,4,0,1331,1334,5,1134,0,0,1332,1333,5,1135,0,0,1333,1335,3,48,24,0,1334,1332,1,0,0,0,1334,1335,1,0,0,0,1335,49,1,0,0,0,1336,1337,3,612,306,0,1337,51,1,0,0,0,1338,1339,3,612,306,0,1339,53,1,0,0,0,1340,1342,5,33,0,0,1341,1343,3,672,336,0,1342,1341,1,0,0,0,1342,1343,1,0,0,0,1343,1347,1,0,0,0,1344,1345,5,336,0,0,1345,1346,5,1124,0,0,1346,1348,7,10,0,0,1347,1344,1,0,0,0,1347,1348,1,0,0,0,1348,1350,1,0,0,0,1349,1351,3,62,31,0,1350,1349,1,0,0,0,1350,1351,1,0,0,0,1351,1355,1,0,0,0,1352,1353,5,160,0,0,1353,1354,5,606,0,0,1354,1356,7,11,0,0,1355,1352,1,0,0,0,1355,1356,1,0,0,0,1356,1357,1,0,0,0,1357,1358,5,671,0,0,1358,1363,3,552,276,0,1359,1360,5,1133,0,0,1360,1361,3,644,322,0,1361,1362,5,1134,0,0,1362,1364,1,0,0,0,1363,1359,1,0,0,0,1363,1364,1,0,0,0,1364,1365,1,0,0,0,1365,1385,5,12,0,0,1366,1368,5,1133,0,0,1367,1369,3,46,23,0,1368,1367,1,0,0,0,1368,1369,1,0,0,0,1369,1370,1,0,0,0,1370,1371,3,198,99,0,1371,1372,5,1134,0,0,1372,1386,1,0,0,0,1373,1375,3,46,23,0,1374,1373,1,0,0,0,1374,1375,1,0,0,0,1375,1376,1,0,0,0,1376,1383,3,198,99,0,1377,1379,5,192,0,0,1378,1380,7,12,0,0,1379,1378,1,0,0,0,1379,1380,1,0,0,0,1380,1381,1,0,0,0,1381,1382,5,26,0,0,1382,1384,5,120,0,0,1383,1377,1,0,0,0,1383,1384,1,0,0,0,1384,1386,1,0,0,0,1385,1366,1,0,0,0,1385,1374,1,0,0,0,1386,55,1,0,0,0,1387,1389,5,42,0,0,1388,1387,1,0,0,0,1388,1389,1,0,0,0,1389,1390,1,0,0,0,1390,1392,3,58,29,0,1391,1393,5,1124,0,0,1392,1391,1,0,0,0,1392,1393,1,0,0,0,1393,1396,1,0,0,0,1394,1397,3,596,298,0,1395,1397,5,42,0,0,1396,1394,1,0,0,0,1396,1395,1,0,0,0,1397,1421,1,0,0,0,1398,1400,5,42,0,0,1399,1398,1,0,0,0,1399,1400,1,0,0,0,1400,1401,1,0,0,0,1401,1403,5,27,0,0,1402,1404,5,1124,0,0,1403,1402,1,0,0,0,1403,1404,1,0,0,0,1404,1405,1,0,0,0,1405,1421,3,598,299,0,1406,1408,5,42,0,0,1407,1406,1,0,0,0,1407,1408,1,0,0,0,1408,1409,1,0,0,0,1409,1411,5,405,0,0,1410,1412,5,1124,0,0,1411,1410,1,0,0,0,1411,1412,1,0,0,0,1412,1413,1,0,0,0,1413,1421,5,1148,0,0,1414,1415,5,134,0,0,1415,1417,5,538,0,0,1416,1418,5,1124,0,0,1417,1416,1,0,0,0,1417,1418,1,0,0,0,1418,1419,1,0,0,0,1419,1421,7,13,0,0,1420,1388,1,0,0,0,1420,1399,1,0,0,0,1420,1407,1,0,0,0,1420,1414,1,0,0,0,1421,57,1,0,0,0,1422,1423,5,25,0,0,1423,1428,5,153,0,0,1424,1428,5,841,0,0,1425,1426,5,222,0,0,1426,1428,5,153,0,0,1427,1422,1,0,0,0,1427,1424,1,0,0,0,1427,1425,1,0,0,0,1428,59,1,0,0,0,1429,1432,5,37,0,0,1430,1431,5,1133,0,0,1431,1433,5,1134,0,0,1432,1430,1,0,0,0,1432,1433,1,0,0,0,1433,61,1,0,0,0,1434,1435,5,392,0,0,1435,1438,5,1124,0,0,1436,1439,3,592,296,0,1437,1439,3,60,30,0,1438,1436,1,0,0,0,1438,1437,1,0,0,0,1439,63,1,0,0,0,1440,1441,5,338,0,0,1441,1445,3,66,33,0,1442,1444,3,68,34,0,1443,1442,1,0,0,0,1444,1447,1,0,0,0,1445,1443,1,0,0,0,1445,1446,1,0,0,0,1446,1475,1,0,0,0,1447,1445,1,0,0,0,1448,1451,5,417,0,0,1449,1452,3,618,309,0,1450,1452,3,716,358,0,1451,1449,1,0,0,0,1451,1450,1,0,0,0,1452,1453,1,0,0,0,1453,1462,3,70,35,0,1454,1455,5,630,0,0,1455,1459,3,66,33,0,1456,1458,3,68,34,0,1457,1456,1,0,0,0,1458,1461,1,0,0,0,1459,1457,1,0,0,0,1459,1460,1,0,0,0,1460,1463,1,0,0,0,1461,1459,1,0,0,0,1462,1454,1,0,0,0,1462,1463,1,0,0,0,1463,1472,1,0,0,0,1464,1465,5,408,0,0,1465,1469,3,66,33,0,1466,1468,3,68,34,0,1467,1466,1,0,0,0,1468,1471,1,0,0,0,1469,1467,1,0,0,0,1469,1470,1,0,0,0,1470,1473,1,0,0,0,1471,1469,1,0,0,0,1472,1464,1,0,0,0,1472,1473,1,0,0,0,1473,1475,1,0,0,0,1474,1440,1,0,0,0,1474,1448,1,0,0,0,1475,65,1,0,0,0,1476,1481,5,315,0,0,1477,1481,3,622,311,0,1478,1481,3,618,309,0,1479,1481,3,716,358,0,1480,1476,1,0,0,0,1480,1477,1,0,0,0,1480,1478,1,0,0,0,1480,1479,1,0,0,0,1481,67,1,0,0,0,1482,1483,5,1120,0,0,1483,1486,5,86,0,0,1484,1487,3,618,309,0,1485,1487,3,716,358,0,1486,1484,1,0,0,0,1486,1485,1,0,0,0,1487,1488,1,0,0,0,1488,1489,3,70,35,0,1489,69,1,0,0,0,1490,1504,3,742,371,0,1491,1504,5,221,0,0,1492,1504,5,240,0,0,1493,1504,5,241,0,0,1494,1504,5,242,0,0,1495,1504,5,243,0,0,1496,1504,5,244,0,0,1497,1504,5,245,0,0,1498,1504,5,246,0,0,1499,1504,5,247,0,0,1500,1504,5,248,0,0,1501,1504,5,249,0,0,1502,1504,5,250,0,0,1503,1490,1,0,0,0,1503,1491,1,0,0,0,1503,1492,1,0,0,0,1503,1493,1,0,0,0,1503,1494,1,0,0,0,1503,1495,1,0,0,0,1503,1496,1,0,0,0,1503,1497,1,0,0,0,1503,1498,1,0,0,0,1503,1499,1,0,0,0,1503,1500,1,0,0,0,1503,1501,1,0,0,0,1503,1502,1,0,0,0,1504,71,1,0,0,0,1505,1511,5,403,0,0,1506,1511,5,396,0,0,1507,1508,5,396,0,0,1508,1509,5,118,0,0,1509,1511,5,614,0,0,1510,1505,1,0,0,0,1510,1506,1,0,0,0,1510,1507,1,0,0,0,1511,73,1,0,0,0,1512,1513,5,187,0,0,1513,1514,7,14,0,0,1514,75,1,0,0,0,1515,1517,5,467,0,0,1516,1518,5,1124,0,0,1517,1516,1,0,0,0,1517,1518,1,0,0,0,1518,1519,1,0,0,0,1519,1538,3,620,310,0,1520,1538,3,74,37,0,1521,1522,5,192,0,0,1522,1523,5,547,0,0,1523,1538,3,612,306,0,1524,1525,5,368,0,0,1525,1538,5,1148,0,0,1526,1538,7,15,0,0,1527,1529,5,875,0,0,1528,1530,5,1124,0,0,1529,1528,1,0,0,0,1529,1530,1,0,0,0,1530,1531,1,0,0,0,1531,1538,5,1148,0,0,1532,1534,5,1e3,0,0,1533,1535,5,1124,0,0,1534,1533,1,0,0,0,1534,1535,1,0,0,0,1535,1536,1,0,0,0,1536,1538,5,1148,0,0,1537,1515,1,0,0,0,1537,1520,1,0,0,0,1537,1521,1,0,0,0,1537,1524,1,0,0,0,1537,1526,1,0,0,0,1537,1527,1,0,0,0,1537,1532,1,0,0,0,1538,77,1,0,0,0,1539,1541,7,16,0,0,1540,1539,1,0,0,0,1540,1541,1,0,0,0,1541,1542,1,0,0,0,1542,1543,3,612,306,0,1543,1544,3,632,316,0,1544,79,1,0,0,0,1545,1546,3,612,306,0,1546,1547,3,632,316,0,1547,81,1,0,0,0,1548,1549,5,368,0,0,1549,1572,5,1148,0,0,1550,1551,5,468,0,0,1551,1572,5,160,0,0,1552,1554,5,114,0,0,1553,1552,1,0,0,0,1553,1554,1,0,0,0,1554,1555,1,0,0,0,1555,1572,5,47,0,0,1556,1557,5,381,0,0,1557,1567,5,160,0,0,1558,1559,5,521,0,0,1559,1567,5,160,0,0,1560,1561,5,135,0,0,1561,1562,5,160,0,0,1562,1567,5,388,0,0,1563,1564,5,112,0,0,1564,1565,5,160,0,0,1565,1567,5,388,0,0,1566,1556,1,0,0,0,1566,1558,1,0,0,0,1566,1560,1,0,0,0,1566,1563,1,0,0,0,1567,1572,1,0,0,0,1568,1569,5,160,0,0,1569,1570,5,606,0,0,1570,1572,7,11,0,0,1571,1548,1,0,0,0,1571,1550,1,0,0,0,1571,1553,1,0,0,0,1571,1566,1,0,0,0,1571,1568,1,0,0,0,1572,83,1,0,0,0,1573,1574,5,446,0,0,1574,1588,5,1148,0,0,1575,1576,5,39,0,0,1576,1588,5,1148,0,0,1577,1578,5,665,0,0,1578,1588,5,1148,0,0,1579,1580,5,551,0,0,1580,1588,5,1148,0,0,1581,1582,5,617,0,0,1582,1588,5,1148,0,0,1583,1584,5,542,0,0,1584,1588,5,1148,0,0,1585,1586,5,557,0,0,1586,1588,3,618,309,0,1587,1573,1,0,0,0,1587,1575,1,0,0,0,1587,1577,1,0,0,0,1587,1579,1,0,0,0,1587,1581,1,0,0,0,1587,1583,1,0,0,0,1587,1585,1,0,0,0,1588,85,1,0,0,0,1589,1590,5,1133,0,0,1590,1595,3,88,44,0,1591,1592,5,1135,0,0,1592,1594,3,88,44,0,1593,1591,1,0,0,0,1594,1597,1,0,0,0,1595,1593,1,0,0,0,1595,1596,1,0,0,0,1596,1598,1,0,0,0,1597,1595,1,0,0,0,1598,1599,5,1134,0,0,1599,87,1,0,0,0,1600,1601,3,570,285,0,1601,1602,3,90,45,0,1602,1612,1,0,0,0,1603,1605,3,94,47,0,1604,1606,5,114,0,0,1605,1604,1,0,0,0,1605,1606,1,0,0,0,1606,1608,1,0,0,0,1607,1609,5,57,0,0,1608,1607,1,0,0,0,1608,1609,1,0,0,0,1609,1612,1,0,0,0,1610,1612,3,102,51,0,1611,1600,1,0,0,0,1611,1603,1,0,0,0,1611,1610,1,0,0,0,1612,89,1,0,0,0,1613,1617,3,632,316,0,1614,1616,3,92,46,0,1615,1614,1,0,0,0,1616,1619,1,0,0,0,1617,1615,1,0,0,0,1617,1618,1,0,0,0,1618,1621,1,0,0,0,1619,1617,1,0,0,0,1620,1622,5,114,0,0,1621,1620,1,0,0,0,1621,1622,1,0,0,0,1622,1624,1,0,0,0,1623,1625,5,57,0,0,1624,1623,1,0,0,0,1624,1625,1,0,0,0,1625,91,1,0,0,0,1626,1680,3,628,314,0,1627,1628,5,42,0,0,1628,1680,3,662,331,0,1629,1680,5,673,0,0,1630,1680,5,459,0,0,1631,1636,5,342,0,0,1632,1633,5,118,0,0,1633,1634,5,184,0,0,1634,1636,3,664,332,0,1635,1631,1,0,0,0,1635,1632,1,0,0,0,1636,1680,1,0,0,0,1637,1639,5,130,0,0,1638,1637,1,0,0,0,1638,1639,1,0,0,0,1639,1640,1,0,0,0,1640,1680,5,91,0,0,1641,1643,5,181,0,0,1642,1644,5,91,0,0,1643,1642,1,0,0,0,1643,1644,1,0,0,0,1644,1680,1,0,0,0,1645,1646,5,368,0,0,1646,1680,5,1148,0,0,1647,1648,5,366,0,0,1648,1680,7,17,0,0,1649,1650,5,636,0,0,1650,1680,7,18,0,0,1651,1680,3,96,48,0,1652,1653,5,27,0,0,1653,1680,3,598,299,0,1654,1655,5,70,0,0,1655,1657,5,8,0,0,1656,1654,1,0,0,0,1656,1657,1,0,0,0,1657,1658,1,0,0,0,1658,1659,5,12,0,0,1659,1660,5,1133,0,0,1660,1661,3,716,358,0,1661,1663,5,1134,0,0,1662,1664,7,19,0,0,1663,1662,1,0,0,0,1663,1664,1,0,0,0,1664,1680,1,0,0,0,1665,1666,5,239,0,0,1666,1667,5,42,0,0,1667,1680,5,669,0,0,1668,1670,5,30,0,0,1669,1671,3,612,306,0,1670,1669,1,0,0,0,1670,1671,1,0,0,0,1671,1673,1,0,0,0,1672,1668,1,0,0,0,1672,1673,1,0,0,0,1673,1674,1,0,0,0,1674,1675,5,26,0,0,1675,1676,5,1133,0,0,1676,1677,3,716,358,0,1677,1678,5,1134,0,0,1678,1680,1,0,0,0,1679,1626,1,0,0,0,1679,1627,1,0,0,0,1679,1629,1,0,0,0,1679,1630,1,0,0,0,1679,1635,1,0,0,0,1679,1638,1,0,0,0,1679,1641,1,0,0,0,1679,1645,1,0,0,0,1679,1647,1,0,0,0,1679,1649,1,0,0,0,1679,1651,1,0,0,0,1679,1652,1,0,0,0,1679,1656,1,0,0,0,1679,1665,1,0,0,0,1679,1672,1,0,0,0,1680,93,1,0,0,0,1681,1683,5,30,0,0,1682,1684,3,612,306,0,1683,1682,1,0,0,0,1683,1684,1,0,0,0,1684,1686,1,0,0,0,1685,1681,1,0,0,0,1685,1686,1,0,0,0,1686,1687,1,0,0,0,1687,1688,5,130,0,0,1688,1690,5,91,0,0,1689,1691,3,612,306,0,1690,1689,1,0,0,0,1690,1691,1,0,0,0,1691,1693,1,0,0,0,1692,1694,3,74,37,0,1693,1692,1,0,0,0,1693,1694,1,0,0,0,1694,1695,1,0,0,0,1695,1699,3,650,325,0,1696,1698,3,76,38,0,1697,1696,1,0,0,0,1698,1701,1,0,0,0,1699,1697,1,0,0,0,1699,1700,1,0,0,0,1700,1751,1,0,0,0,1701,1699,1,0,0,0,1702,1704,5,30,0,0,1703,1705,3,612,306,0,1704,1703,1,0,0,0,1704,1705,1,0,0,0,1705,1707,1,0,0,0,1706,1702,1,0,0,0,1706,1707,1,0,0,0,1707,1708,1,0,0,0,1708,1710,5,181,0,0,1709,1711,7,20,0,0,1710,1709,1,0,0,0,1710,1711,1,0,0,0,1711,1713,1,0,0,0,1712,1714,3,612,306,0,1713,1712,1,0,0,0,1713,1714,1,0,0,0,1714,1716,1,0,0,0,1715,1717,3,74,37,0,1716,1715,1,0,0,0,1716,1717,1,0,0,0,1717,1718,1,0,0,0,1718,1722,3,650,325,0,1719,1721,3,76,38,0,1720,1719,1,0,0,0,1721,1724,1,0,0,0,1722,1720,1,0,0,0,1722,1723,1,0,0,0,1723,1751,1,0,0,0,1724,1722,1,0,0,0,1725,1727,5,30,0,0,1726,1728,3,612,306,0,1727,1726,1,0,0,0,1727,1728,1,0,0,0,1728,1730,1,0,0,0,1729,1725,1,0,0,0,1729,1730,1,0,0,0,1730,1731,1,0,0,0,1731,1732,5,67,0,0,1732,1734,5,91,0,0,1733,1735,3,612,306,0,1734,1733,1,0,0,0,1734,1735,1,0,0,0,1735,1736,1,0,0,0,1736,1737,3,650,325,0,1737,1738,3,96,48,0,1738,1751,1,0,0,0,1739,1741,5,30,0,0,1740,1742,3,612,306,0,1741,1740,1,0,0,0,1741,1742,1,0,0,0,1742,1744,1,0,0,0,1743,1739,1,0,0,0,1743,1744,1,0,0,0,1744,1745,1,0,0,0,1745,1746,5,26,0,0,1746,1747,5,1133,0,0,1747,1748,3,716,358,0,1748,1749,5,1134,0,0,1749,1751,1,0,0,0,1750,1685,1,0,0,0,1750,1706,1,0,0,0,1750,1729,1,0,0,0,1750,1743,1,0,0,0,1751,95,1,0,0,0,1752,1753,5,136,0,0,1753,1755,3,554,277,0,1754,1756,3,650,325,0,1755,1754,1,0,0,0,1755,1756,1,0,0,0,1756,1759,1,0,0,0,1757,1758,5,109,0,0,1758,1760,7,21,0,0,1759,1757,1,0,0,0,1759,1760,1,0,0,0,1760,1762,1,0,0,0,1761,1763,3,98,49,0,1762,1761,1,0,0,0,1762,1763,1,0,0,0,1763,97,1,0,0,0,1764,1765,5,118,0,0,1765,1766,5,44,0,0,1766,1770,3,100,50,0,1767,1768,5,118,0,0,1768,1769,5,184,0,0,1769,1771,3,100,50,0,1770,1767,1,0,0,0,1770,1771,1,0,0,0,1771,1781,1,0,0,0,1772,1773,5,118,0,0,1773,1774,5,184,0,0,1774,1778,3,100,50,0,1775,1776,5,118,0,0,1776,1777,5,44,0,0,1777,1779,3,100,50,0,1778,1775,1,0,0,0,1778,1779,1,0,0,0,1779,1781,1,0,0,0,1780,1764,1,0,0,0,1780,1772,1,0,0,0,1781,99,1,0,0,0,1782,1791,5,144,0,0,1783,1791,5,21,0,0,1784,1785,5,153,0,0,1785,1791,5,116,0,0,1786,1787,5,521,0,0,1787,1791,5,333,0,0,1788,1789,5,153,0,0,1789,1791,5,42,0,0,1790,1782,1,0,0,0,1790,1783,1,0,0,0,1790,1784,1,0,0,0,1790,1786,1,0,0,0,1790,1788,1,0,0,0,1791,101,1,0,0,0,1792,1794,7,20,0,0,1793,1795,3,612,306,0,1794,1793,1,0,0,0,1794,1795,1,0,0,0,1795,1797,1,0,0,0,1796,1798,3,74,37,0,1797,1796,1,0,0,0,1797,1798,1,0,0,0,1798,1799,1,0,0,0,1799,1803,3,650,325,0,1800,1802,3,76,38,0,1801,1800,1,0,0,0,1802,1805,1,0,0,0,1803,1801,1,0,0,0,1803,1804,1,0,0,0,1804,1821,1,0,0,0,1805,1803,1,0,0,0,1806,1808,7,22,0,0,1807,1809,7,20,0,0,1808,1807,1,0,0,0,1808,1809,1,0,0,0,1809,1811,1,0,0,0,1810,1812,3,612,306,0,1811,1810,1,0,0,0,1811,1812,1,0,0,0,1812,1813,1,0,0,0,1813,1817,3,650,325,0,1814,1816,3,76,38,0,1815,1814,1,0,0,0,1816,1819,1,0,0,0,1817,1815,1,0,0,0,1817,1818,1,0,0,0,1818,1821,1,0,0,0,1819,1817,1,0,0,0,1820,1792,1,0,0,0,1820,1806,1,0,0,0,1821,103,1,0,0,0,1822,1824,5,409,0,0,1823,1825,5,1124,0,0,1824,1823,1,0,0,0,1824,1825,1,0,0,0,1825,1827,1,0,0,0,1826,1828,3,600,300,0,1827,1826,1,0,0,0,1827,1828,1,0,0,0,1828,2008,1,0,0,0,1829,1831,5,875,0,0,1830,1832,5,1124,0,0,1831,1830,1,0,0,0,1831,1832,1,0,0,0,1832,1833,1,0,0,0,1833,2008,5,1148,0,0,1834,1836,5,341,0,0,1835,1837,5,1124,0,0,1836,1835,1,0,0,0,1836,1837,1,0,0,0,1837,1838,1,0,0,0,1838,2008,3,618,309,0,1839,1841,5,342,0,0,1840,1842,5,1124,0,0,1841,1840,1,0,0,0,1841,1842,1,0,0,0,1842,1843,1,0,0,0,1843,2008,3,618,309,0,1844,1846,5,343,0,0,1845,1847,5,1124,0,0,1846,1845,1,0,0,0,1846,1847,1,0,0,0,1847,1848,1,0,0,0,1848,2008,3,618,309,0,1849,1851,5,42,0,0,1850,1849,1,0,0,0,1850,1851,1,0,0,0,1851,1852,1,0,0,0,1852,1854,3,58,29,0,1853,1855,5,1124,0,0,1854,1853,1,0,0,0,1854,1855,1,0,0,0,1855,1858,1,0,0,0,1856,1859,3,596,298,0,1857,1859,5,42,0,0,1858,1856,1,0,0,0,1858,1857,1,0,0,0,1859,2008,1,0,0,0,1860,1862,7,23,0,0,1861,1863,5,1124,0,0,1862,1861,1,0,0,0,1862,1863,1,0,0,0,1863,1864,1,0,0,0,1864,2008,7,24,0,0,1865,1867,5,42,0,0,1866,1865,1,0,0,0,1866,1867,1,0,0,0,1867,1868,1,0,0,0,1868,1870,5,27,0,0,1869,1871,5,1124,0,0,1870,1869,1,0,0,0,1870,1871,1,0,0,0,1871,1872,1,0,0,0,1872,2008,3,598,299,0,1873,1875,5,368,0,0,1874,1876,5,1124,0,0,1875,1874,1,0,0,0,1875,1876,1,0,0,0,1876,1877,1,0,0,0,1877,2008,5,1148,0,0,1878,1880,5,373,0,0,1879,1881,5,1124,0,0,1880,1879,1,0,0,0,1880,1881,1,0,0,0,1881,1882,1,0,0,0,1882,2008,7,25,0,0,1883,1885,5,376,0,0,1884,1886,5,1124,0,0,1885,1884,1,0,0,0,1885,1886,1,0,0,0,1886,1887,1,0,0,0,1887,2008,5,1148,0,0,1888,1889,7,26,0,0,1889,1891,5,395,0,0,1890,1892,5,1124,0,0,1891,1890,1,0,0,0,1891,1892,1,0,0,0,1892,1893,1,0,0,0,1893,2008,5,1148,0,0,1894,1896,5,393,0,0,1895,1897,5,1124,0,0,1896,1895,1,0,0,0,1896,1897,1,0,0,0,1897,1898,1,0,0,0,1898,2008,7,24,0,0,1899,1901,5,405,0,0,1900,1902,5,1124,0,0,1901,1900,1,0,0,0,1901,1902,1,0,0,0,1902,1903,1,0,0,0,1903,2008,5,1148,0,0,1904,1906,7,27,0,0,1905,1907,5,1124,0,0,1906,1905,1,0,0,0,1906,1907,1,0,0,0,1907,1908,1,0,0,0,1908,2008,7,24,0,0,1909,1911,7,28,0,0,1910,1912,5,1124,0,0,1911,1910,1,0,0,0,1911,1912,1,0,0,0,1912,1913,1,0,0,0,1913,2008,3,618,309,0,1914,1916,5,406,0,0,1915,1917,5,1124,0,0,1916,1915,1,0,0,0,1916,1917,1,0,0,0,1917,1918,1,0,0,0,1918,2008,3,618,309,0,1919,1920,5,81,0,0,1920,1922,5,395,0,0,1921,1923,5,1124,0,0,1922,1921,1,0,0,0,1922,1923,1,0,0,0,1923,1924,1,0,0,0,1924,2008,5,1148,0,0,1925,1927,5,455,0,0,1926,1928,5,1124,0,0,1927,1926,1,0,0,0,1927,1928,1,0,0,0,1928,1929,1,0,0,0,1929,2008,7,29,0,0,1930,1932,5,467,0,0,1931,1933,5,1124,0,0,1932,1931,1,0,0,0,1932,1933,1,0,0,0,1933,1934,1,0,0,0,1934,2008,3,620,310,0,1935,1937,5,500,0,0,1936,1938,5,1124,0,0,1937,1936,1,0,0,0,1937,1938,1,0,0,0,1938,1939,1,0,0,0,1939,2008,3,618,309,0,1940,1942,5,510,0,0,1941,1943,5,1124,0,0,1942,1941,1,0,0,0,1942,1943,1,0,0,0,1943,1944,1,0,0,0,1944,2008,3,618,309,0,1945,1947,5,543,0,0,1946,1948,5,1124,0,0,1947,1946,1,0,0,0,1947,1948,1,0,0,0,1948,1949,1,0,0,0,1949,2008,7,13,0,0,1950,1952,5,551,0,0,1951,1953,5,1124,0,0,1952,1951,1,0,0,0,1952,1953,1,0,0,0,1953,1954,1,0,0,0,1954,2008,5,1148,0,0,1955,1957,5,602,0,0,1956,1958,5,1124,0,0,1957,1956,1,0,0,0,1957,1958,1,0,0,0,1958,1959,1,0,0,0,1959,2008,7,30,0,0,1960,1961,5,629,0,0,1961,2008,5,653,0,0,1962,1964,5,1e3,0,0,1963,1965,5,1124,0,0,1964,1963,1,0,0,0,1964,1965,1,0,0,0,1965,1966,1,0,0,0,1966,2008,5,1148,0,0,1967,1969,5,631,0,0,1968,1970,5,1124,0,0,1969,1968,1,0,0,0,1969,1970,1,0,0,0,1970,1971,1,0,0,0,1971,2008,7,13,0,0,1972,1974,5,632,0,0,1973,1975,5,1124,0,0,1974,1973,1,0,0,0,1974,1975,1,0,0,0,1975,1976,1,0,0,0,1976,2008,7,13,0,0,1977,1979,5,633,0,0,1978,1980,5,1124,0,0,1979,1978,1,0,0,0,1979,1980,1,0,0,0,1980,1983,1,0,0,0,1981,1984,5,42,0,0,1982,1984,3,618,309,0,1983,1981,1,0,0,0,1983,1982,1,0,0,0,1984,2008,1,0,0,0,1985,1986,5,647,0,0,1986,1988,3,612,306,0,1987,1989,3,108,54,0,1988,1987,1,0,0,0,1988,1989,1,0,0,0,1989,2008,1,0,0,0,1990,1991,5,648,0,0,1991,1992,5,1124,0,0,1992,2008,3,106,53,0,1993,2008,3,108,54,0,1994,1996,5,654,0,0,1995,1997,5,1124,0,0,1996,1995,1,0,0,0,1996,1997,1,0,0,0,1997,1998,1,0,0,0,1998,2008,7,24,0,0,1999,2001,5,180,0,0,2e3,2002,5,1124,0,0,2001,2e3,1,0,0,0,2001,2002,1,0,0,0,2002,2003,1,0,0,0,2003,2004,5,1133,0,0,2004,2005,3,648,324,0,2005,2006,5,1134,0,0,2006,2008,1,0,0,0,2007,1822,1,0,0,0,2007,1829,1,0,0,0,2007,1834,1,0,0,0,2007,1839,1,0,0,0,2007,1844,1,0,0,0,2007,1850,1,0,0,0,2007,1860,1,0,0,0,2007,1866,1,0,0,0,2007,1873,1,0,0,0,2007,1878,1,0,0,0,2007,1883,1,0,0,0,2007,1888,1,0,0,0,2007,1894,1,0,0,0,2007,1899,1,0,0,0,2007,1904,1,0,0,0,2007,1909,1,0,0,0,2007,1914,1,0,0,0,2007,1919,1,0,0,0,2007,1925,1,0,0,0,2007,1930,1,0,0,0,2007,1935,1,0,0,0,2007,1940,1,0,0,0,2007,1945,1,0,0,0,2007,1950,1,0,0,0,2007,1955,1,0,0,0,2007,1960,1,0,0,0,2007,1962,1,0,0,0,2007,1967,1,0,0,0,2007,1972,1,0,0,0,2007,1977,1,0,0,0,2007,1985,1,0,0,0,2007,1990,1,0,0,0,2007,1993,1,0,0,0,2007,1994,1,0,0,0,2007,1999,1,0,0,0,2008,105,1,0,0,0,2009,2010,7,31,0,0,2010,107,1,0,0,0,2011,2012,5,636,0,0,2012,2013,7,18,0,0,2013,109,1,0,0,0,2014,2015,5,129,0,0,2015,2016,5,19,0,0,2016,2019,3,112,56,0,2017,2018,5,550,0,0,2018,2020,3,618,309,0,2019,2017,1,0,0,0,2019,2020,1,0,0,0,2020,2028,1,0,0,0,2021,2022,5,641,0,0,2022,2023,5,19,0,0,2023,2026,3,114,57,0,2024,2025,5,642,0,0,2025,2027,3,618,309,0,2026,2024,1,0,0,0,2026,2027,1,0,0,0,2027,2029,1,0,0,0,2028,2021,1,0,0,0,2028,2029,1,0,0,0,2029,2041,1,0,0,0,2030,2031,5,1133,0,0,2031,2036,3,116,58,0,2032,2033,5,1135,0,0,2033,2035,3,116,58,0,2034,2032,1,0,0,0,2035,2038,1,0,0,0,2036,2034,1,0,0,0,2036,2037,1,0,0,0,2037,2039,1,0,0,0,2038,2036,1,0,0,0,2039,2040,5,1134,0,0,2040,2042,1,0,0,0,2041,2030,1,0,0,0,2041,2042,1,0,0,0,2042,111,1,0,0,0,2043,2045,5,100,0,0,2044,2043,1,0,0,0,2044,2045,1,0,0,0,2045,2046,1,0,0,0,2046,2047,5,443,0,0,2047,2048,5,1133,0,0,2048,2049,3,716,358,0,2049,2050,5,1134,0,0,2050,2090,1,0,0,0,2051,2053,5,100,0,0,2052,2051,1,0,0,0,2052,2053,1,0,0,0,2053,2054,1,0,0,0,2054,2058,5,91,0,0,2055,2056,5,336,0,0,2056,2057,5,1124,0,0,2057,2059,7,32,0,0,2058,2055,1,0,0,0,2058,2059,1,0,0,0,2059,2060,1,0,0,0,2060,2062,5,1133,0,0,2061,2063,3,644,322,0,2062,2061,1,0,0,0,2062,2063,1,0,0,0,2063,2064,1,0,0,0,2064,2090,5,1134,0,0,2065,2075,5,133,0,0,2066,2067,5,1133,0,0,2067,2068,3,716,358,0,2068,2069,5,1134,0,0,2069,2076,1,0,0,0,2070,2071,5,365,0,0,2071,2072,5,1133,0,0,2072,2073,3,644,322,0,2073,2074,5,1134,0,0,2074,2076,1,0,0,0,2075,2066,1,0,0,0,2075,2070,1,0,0,0,2076,2090,1,0,0,0,2077,2087,5,473,0,0,2078,2079,5,1133,0,0,2079,2080,3,716,358,0,2080,2081,5,1134,0,0,2081,2088,1,0,0,0,2082,2083,5,365,0,0,2083,2084,5,1133,0,0,2084,2085,3,644,322,0,2085,2086,5,1134,0,0,2086,2088,1,0,0,0,2087,2078,1,0,0,0,2087,2082,1,0,0,0,2088,2090,1,0,0,0,2089,2044,1,0,0,0,2089,2052,1,0,0,0,2089,2065,1,0,0,0,2089,2077,1,0,0,0,2090,113,1,0,0,0,2091,2093,5,100,0,0,2092,2091,1,0,0,0,2092,2093,1,0,0,0,2093,2094,1,0,0,0,2094,2095,5,443,0,0,2095,2096,5,1133,0,0,2096,2097,3,716,358,0,2097,2098,5,1134,0,0,2098,2113,1,0,0,0,2099,2101,5,100,0,0,2100,2099,1,0,0,0,2100,2101,1,0,0,0,2101,2102,1,0,0,0,2102,2106,5,91,0,0,2103,2104,5,336,0,0,2104,2105,5,1124,0,0,2105,2107,7,32,0,0,2106,2103,1,0,0,0,2106,2107,1,0,0,0,2107,2108,1,0,0,0,2108,2109,5,1133,0,0,2109,2110,3,644,322,0,2110,2111,5,1134,0,0,2111,2113,1,0,0,0,2112,2092,1,0,0,0,2112,2100,1,0,0,0,2113,115,1,0,0,0,2114,2115,5,129,0,0,2115,2116,3,612,306,0,2116,2117,5,188,0,0,2117,2118,5,471,0,0,2118,2119,5,651,0,0,2119,2120,5,1133,0,0,2120,2125,3,118,59,0,2121,2122,5,1135,0,0,2122,2124,3,118,59,0,2123,2121,1,0,0,0,2124,2127,1,0,0,0,2125,2123,1,0,0,0,2125,2126,1,0,0,0,2126,2128,1,0,0,0,2127,2125,1,0,0,0,2128,2132,5,1134,0,0,2129,2131,3,124,62,0,2130,2129,1,0,0,0,2131,2134,1,0,0,0,2132,2130,1,0,0,0,2132,2133,1,0,0,0,2133,2146,1,0,0,0,2134,2132,1,0,0,0,2135,2136,5,1133,0,0,2136,2141,3,122,61,0,2137,2138,5,1135,0,0,2138,2140,3,122,61,0,2139,2137,1,0,0,0,2140,2143,1,0,0,0,2141,2139,1,0,0,0,2141,2142,1,0,0,0,2142,2144,1,0,0,0,2143,2141,1,0,0,0,2144,2145,5,1134,0,0,2145,2147,1,0,0,0,2146,2135,1,0,0,0,2146,2147,1,0,0,0,2147,2261,1,0,0,0,2148,2149,5,129,0,0,2149,2150,3,612,306,0,2150,2151,5,188,0,0,2151,2152,5,471,0,0,2152,2153,5,651,0,0,2153,2157,3,118,59,0,2154,2156,3,124,62,0,2155,2154,1,0,0,0,2156,2159,1,0,0,0,2157,2155,1,0,0,0,2157,2158,1,0,0,0,2158,2171,1,0,0,0,2159,2157,1,0,0,0,2160,2161,5,1133,0,0,2161,2166,3,122,61,0,2162,2163,5,1135,0,0,2163,2165,3,122,61,0,2164,2162,1,0,0,0,2165,2168,1,0,0,0,2166,2164,1,0,0,0,2166,2167,1,0,0,0,2167,2169,1,0,0,0,2168,2166,1,0,0,0,2169,2170,5,1134,0,0,2170,2172,1,0,0,0,2171,2160,1,0,0,0,2171,2172,1,0,0,0,2172,2261,1,0,0,0,2173,2174,5,129,0,0,2174,2175,3,612,306,0,2175,2176,5,188,0,0,2176,2177,5,80,0,0,2177,2178,5,1133,0,0,2178,2183,3,118,59,0,2179,2180,5,1135,0,0,2180,2182,3,118,59,0,2181,2179,1,0,0,0,2182,2185,1,0,0,0,2183,2181,1,0,0,0,2183,2184,1,0,0,0,2184,2186,1,0,0,0,2185,2183,1,0,0,0,2186,2190,5,1134,0,0,2187,2189,3,124,62,0,2188,2187,1,0,0,0,2189,2192,1,0,0,0,2190,2188,1,0,0,0,2190,2191,1,0,0,0,2191,2204,1,0,0,0,2192,2190,1,0,0,0,2193,2194,5,1133,0,0,2194,2199,3,122,61,0,2195,2196,5,1135,0,0,2196,2198,3,122,61,0,2197,2195,1,0,0,0,2198,2201,1,0,0,0,2199,2197,1,0,0,0,2199,2200,1,0,0,0,2200,2202,1,0,0,0,2201,2199,1,0,0,0,2202,2203,5,1134,0,0,2203,2205,1,0,0,0,2204,2193,1,0,0,0,2204,2205,1,0,0,0,2205,2261,1,0,0,0,2206,2207,5,129,0,0,2207,2208,3,612,306,0,2208,2209,5,188,0,0,2209,2210,5,80,0,0,2210,2211,5,1133,0,0,2211,2216,3,120,60,0,2212,2213,5,1135,0,0,2213,2215,3,120,60,0,2214,2212,1,0,0,0,2215,2218,1,0,0,0,2216,2214,1,0,0,0,2216,2217,1,0,0,0,2217,2219,1,0,0,0,2218,2216,1,0,0,0,2219,2223,5,1134,0,0,2220,2222,3,124,62,0,2221,2220,1,0,0,0,2222,2225,1,0,0,0,2223,2221,1,0,0,0,2223,2224,1,0,0,0,2224,2237,1,0,0,0,2225,2223,1,0,0,0,2226,2227,5,1133,0,0,2227,2232,3,122,61,0,2228,2229,5,1135,0,0,2229,2231,3,122,61,0,2230,2228,1,0,0,0,2231,2234,1,0,0,0,2232,2230,1,0,0,0,2232,2233,1,0,0,0,2233,2235,1,0,0,0,2234,2232,1,0,0,0,2235,2236,5,1134,0,0,2236,2238,1,0,0,0,2237,2226,1,0,0,0,2237,2238,1,0,0,0,2238,2261,1,0,0,0,2239,2240,5,129,0,0,2240,2244,3,612,306,0,2241,2243,3,124,62,0,2242,2241,1,0,0,0,2243,2246,1,0,0,0,2244,2242,1,0,0,0,2244,2245,1,0,0,0,2245,2258,1,0,0,0,2246,2244,1,0,0,0,2247,2248,5,1133,0,0,2248,2253,3,122,61,0,2249,2250,5,1135,0,0,2250,2252,3,122,61,0,2251,2249,1,0,0,0,2252,2255,1,0,0,0,2253,2251,1,0,0,0,2253,2254,1,0,0,0,2254,2256,1,0,0,0,2255,2253,1,0,0,0,2256,2257,5,1134,0,0,2257,2259,1,0,0,0,2258,2247,1,0,0,0,2258,2259,1,0,0,0,2259,2261,1,0,0,0,2260,2114,1,0,0,0,2260,2148,1,0,0,0,2260,2173,1,0,0,0,2260,2206,1,0,0,0,2260,2239,1,0,0,0,2261,117,1,0,0,0,2262,2266,3,630,315,0,2263,2266,3,716,358,0,2264,2266,5,110,0,0,2265,2262,1,0,0,0,2265,2263,1,0,0,0,2265,2264,1,0,0,0,2266,119,1,0,0,0,2267,2268,5,1133,0,0,2268,2271,3,118,59,0,2269,2270,5,1135,0,0,2270,2272,3,118,59,0,2271,2269,1,0,0,0,2272,2273,1,0,0,0,2273,2271,1,0,0,0,2273,2274,1,0,0,0,2274,2275,1,0,0,0,2275,2276,5,1134,0,0,2276,121,1,0,0,0,2277,2278,5,641,0,0,2278,2282,3,612,306,0,2279,2281,3,124,62,0,2280,2279,1,0,0,0,2281,2284,1,0,0,0,2282,2280,1,0,0,0,2282,2283,1,0,0,0,2283,123,1,0,0,0,2284,2282,1,0,0,0,2285,2287,5,42,0,0,2286,2285,1,0,0,0,2286,2287,1,0,0,0,2287,2289,1,0,0,0,2288,2290,5,636,0,0,2289,2288,1,0,0,0,2289,2290,1,0,0,0,2290,2291,1,0,0,0,2291,2293,5,409,0,0,2292,2294,5,1124,0,0,2293,2292,1,0,0,0,2293,2294,1,0,0,0,2294,2295,1,0,0,0,2295,2334,3,600,300,0,2296,2298,5,368,0,0,2297,2299,5,1124,0,0,2298,2297,1,0,0,0,2298,2299,1,0,0,0,2299,2300,1,0,0,0,2300,2334,5,1148,0,0,2301,2302,5,388,0,0,2302,2304,5,395,0,0,2303,2305,5,1124,0,0,2304,2303,1,0,0,0,2304,2305,1,0,0,0,2305,2306,1,0,0,0,2306,2334,5,1148,0,0,2307,2308,5,81,0,0,2308,2310,5,395,0,0,2309,2311,5,1124,0,0,2310,2309,1,0,0,0,2310,2311,1,0,0,0,2311,2312,1,0,0,0,2312,2334,5,1148,0,0,2313,2315,5,500,0,0,2314,2316,5,1124,0,0,2315,2314,1,0,0,0,2315,2316,1,0,0,0,2316,2317,1,0,0,0,2317,2334,3,618,309,0,2318,2320,5,510,0,0,2319,2321,5,1124,0,0,2320,2319,1,0,0,0,2320,2321,1,0,0,0,2321,2322,1,0,0,0,2322,2334,3,618,309,0,2323,2325,5,647,0,0,2324,2326,5,1124,0,0,2325,2324,1,0,0,0,2325,2326,1,0,0,0,2326,2327,1,0,0,0,2327,2334,3,612,306,0,2328,2330,5,528,0,0,2329,2331,5,1124,0,0,2330,2329,1,0,0,0,2330,2331,1,0,0,0,2331,2332,1,0,0,0,2332,2334,3,612,306,0,2333,2286,1,0,0,0,2333,2296,1,0,0,0,2333,2301,1,0,0,0,2333,2307,1,0,0,0,2333,2313,1,0,0,0,2333,2318,1,0,0,0,2333,2323,1,0,0,0,2333,2328,1,0,0,0,2334,125,1,0,0,0,2335,2336,5,7,0,0,2336,2337,7,0,0,0,2337,2339,3,572,286,0,2338,2340,3,56,28,0,2339,2338,1,0,0,0,2340,2341,1,0,0,0,2341,2339,1,0,0,0,2341,2342,1,0,0,0,2342,2352,1,0,0,0,2343,2344,5,7,0,0,2344,2345,7,0,0,0,2345,2346,3,572,286,0,2346,2347,5,664,0,0,2347,2348,5,388,0,0,2348,2349,5,395,0,0,2349,2350,5,516,0,0,2350,2352,1,0,0,0,2351,2335,1,0,0,0,2351,2343,1,0,0,0,2352,127,1,0,0,0,2353,2355,5,7,0,0,2354,2356,3,62,31,0,2355,2354,1,0,0,0,2355,2356,1,0,0,0,2356,2357,1,0,0,0,2357,2358,5,415,0,0,2358,2362,3,552,276,0,2359,2360,5,118,0,0,2360,2361,5,605,0,0,2361,2363,3,64,32,0,2362,2359,1,0,0,0,2362,2363,1,0,0,0,2363,2370,1,0,0,0,2364,2365,5,118,0,0,2365,2367,5,371,0,0,2366,2368,5,114,0,0,2367,2366,1,0,0,0,2367,2368,1,0,0,0,2368,2369,1,0,0,0,2369,2371,5,561,0,0,2370,2364,1,0,0,0,2370,2371,1,0,0,0,2371,2375,1,0,0,0,2372,2373,5,139,0,0,2373,2374,5,175,0,0,2374,2376,3,552,276,0,2375,2372,1,0,0,0,2375,2376,1,0,0,0,2376,2378,1,0,0,0,2377,2379,3,72,36,0,2378,2377,1,0,0,0,2378,2379,1,0,0,0,2379,2382,1,0,0,0,2380,2381,5,368,0,0,2381,2383,5,1148,0,0,2382,2380,1,0,0,0,2382,2383,1,0,0,0,2383,2386,1,0,0,0,2384,2385,5,399,0,0,2385,2387,3,388,194,0,2386,2384,1,0,0,0,2386,2387,1,0,0,0,2387,129,1,0,0,0,2388,2389,5,7,0,0,2389,2390,5,437,0,0,2390,2394,3,552,276,0,2391,2393,3,82,41,0,2392,2391,1,0,0,0,2393,2396,1,0,0,0,2394,2392,1,0,0,0,2394,2395,1,0,0,0,2395,131,1,0,0,0,2396,2394,1,0,0,0,2397,2398,5,7,0,0,2398,2399,5,457,0,0,2399,2400,5,599,0,0,2400,2401,5,791,0,0,2401,2402,5,477,0,0,2402,2403,5,91,0,0,2403,133,1,0,0,0,2404,2405,5,7,0,0,2405,2406,5,475,0,0,2406,2407,5,73,0,0,2407,2408,3,612,306,0,2408,2409,5,5,0,0,2409,2410,5,659,0,0,2410,2416,5,1148,0,0,2411,2413,5,453,0,0,2412,2414,5,1124,0,0,2413,2412,1,0,0,0,2413,2414,1,0,0,0,2414,2415,1,0,0,0,2415,2417,3,620,310,0,2416,2411,1,0,0,0,2416,2417,1,0,0,0,2417,2419,1,0,0,0,2418,2420,5,674,0,0,2419,2418,1,0,0,0,2419,2420,1,0,0,0,2420,2421,1,0,0,0,2421,2423,5,409,0,0,2422,2424,5,1124,0,0,2423,2422,1,0,0,0,2423,2424,1,0,0,0,2424,2425,1,0,0,0,2425,2426,3,600,300,0,2426,135,1,0,0,0,2427,2428,5,7,0,0,2428,2429,5,131,0,0,2429,2433,3,552,276,0,2430,2432,3,82,41,0,2431,2430,1,0,0,0,2432,2435,1,0,0,0,2433,2431,1,0,0,0,2433,2434,1,0,0,0,2434,137,1,0,0,0,2435,2433,1,0,0,0,2436,2437,5,7,0,0,2437,2438,5,608,0,0,2438,2439,3,612,306,0,2439,2440,5,541,0,0,2440,2441,5,1133,0,0,2441,2446,3,84,42,0,2442,2443,5,1135,0,0,2443,2445,3,84,42,0,2444,2442,1,0,0,0,2445,2448,1,0,0,0,2446,2444,1,0,0,0,2446,2447,1,0,0,0,2447,2449,1,0,0,0,2448,2446,1,0,0,0,2449,2450,5,1134,0,0,2450,139,1,0,0,0,2451,2453,5,7,0,0,2452,2454,7,1,0,0,2453,2452,1,0,0,0,2453,2454,1,0,0,0,2454,2456,1,0,0,0,2455,2457,5,78,0,0,2456,2455,1,0,0,0,2456,2457,1,0,0,0,2457,2458,1,0,0,0,2458,2459,5,172,0,0,2459,2461,3,554,277,0,2460,2462,3,674,337,0,2461,2460,1,0,0,0,2461,2462,1,0,0,0,2462,2471,1,0,0,0,2463,2468,3,146,73,0,2464,2465,5,1135,0,0,2465,2467,3,146,73,0,2466,2464,1,0,0,0,2467,2470,1,0,0,0,2468,2466,1,0,0,0,2468,2469,1,0,0,0,2469,2472,1,0,0,0,2470,2468,1,0,0,0,2471,2463,1,0,0,0,2471,2472,1,0,0,0,2472,2474,1,0,0,0,2473,2475,3,110,55,0,2474,2473,1,0,0,0,2474,2475,1,0,0,0,2475,141,1,0,0,0,2476,2477,5,7,0,0,2477,2478,5,647,0,0,2478,2479,3,612,306,0,2479,2480,7,33,0,0,2480,2481,5,389,0,0,2481,2485,5,1148,0,0,2482,2483,5,453,0,0,2483,2484,5,1124,0,0,2484,2486,3,620,310,0,2485,2482,1,0,0,0,2485,2486,1,0,0,0,2486,2488,1,0,0,0,2487,2489,5,674,0,0,2488,2487,1,0,0,0,2488,2489,1,0,0,0,2489,2490,1,0,0,0,2490,2492,5,409,0,0,2491,2493,5,1124,0,0,2492,2491,1,0,0,0,2492,2493,1,0,0,0,2493,2494,1,0,0,0,2494,2495,3,600,300,0,2495,143,1,0,0,0,2496,2500,5,7,0,0,2497,2498,5,336,0,0,2498,2499,5,1124,0,0,2499,2501,7,10,0,0,2500,2497,1,0,0,0,2500,2501,1,0,0,0,2501,2503,1,0,0,0,2502,2504,3,62,31,0,2503,2502,1,0,0,0,2503,2504,1,0,0,0,2504,2508,1,0,0,0,2505,2506,5,160,0,0,2506,2507,5,606,0,0,2507,2509,7,11,0,0,2508,2505,1,0,0,0,2508,2509,1,0,0,0,2509,2510,1,0,0,0,2510,2511,5,671,0,0,2511,2516,3,552,276,0,2512,2513,5,1133,0,0,2513,2514,3,644,322,0,2514,2515,5,1134,0,0,2515,2517,1,0,0,0,2516,2512,1,0,0,0,2516,2517,1,0,0,0,2517,2518,1,0,0,0,2518,2519,5,12,0,0,2519,2526,3,198,99,0,2520,2522,5,192,0,0,2521,2523,7,12,0,0,2522,2521,1,0,0,0,2522,2523,1,0,0,0,2523,2524,1,0,0,0,2524,2525,5,26,0,0,2525,2527,5,120,0,0,2526,2520,1,0,0,0,2526,2527,1,0,0,0,2527,145,1,0,0,0,2528,2535,3,104,52,0,2529,2531,5,1135,0,0,2530,2529,1,0,0,0,2530,2531,1,0,0,0,2531,2532,1,0,0,0,2532,2534,3,104,52,0,2533,2530,1,0,0,0,2534,2537,1,0,0,0,2535,2533,1,0,0,0,2535,2536,1,0,0,0,2536,2880,1,0,0,0,2537,2535,1,0,0,0,2538,2540,5,5,0,0,2539,2541,5,28,0,0,2540,2539,1,0,0,0,2540,2541,1,0,0,0,2541,2542,1,0,0,0,2542,2543,3,612,306,0,2543,2547,3,90,45,0,2544,2548,5,430,0,0,2545,2546,5,334,0,0,2546,2548,3,612,306,0,2547,2544,1,0,0,0,2547,2545,1,0,0,0,2547,2548,1,0,0,0,2548,2880,1,0,0,0,2549,2551,5,5,0,0,2550,2552,5,28,0,0,2551,2550,1,0,0,0,2551,2552,1,0,0,0,2552,2553,1,0,0,0,2553,2554,5,1133,0,0,2554,2555,3,612,306,0,2555,2562,3,90,45,0,2556,2557,5,1135,0,0,2557,2558,3,612,306,0,2558,2559,3,90,45,0,2559,2561,1,0,0,0,2560,2556,1,0,0,0,2561,2564,1,0,0,0,2562,2560,1,0,0,0,2562,2563,1,0,0,0,2563,2565,1,0,0,0,2564,2562,1,0,0,0,2565,2566,5,1134,0,0,2566,2880,1,0,0,0,2567,2568,5,5,0,0,2568,2570,7,20,0,0,2569,2571,3,612,306,0,2570,2569,1,0,0,0,2570,2571,1,0,0,0,2571,2573,1,0,0,0,2572,2574,3,74,37,0,2573,2572,1,0,0,0,2573,2574,1,0,0,0,2574,2575,1,0,0,0,2575,2579,3,650,325,0,2576,2578,3,76,38,0,2577,2576,1,0,0,0,2578,2581,1,0,0,0,2579,2577,1,0,0,0,2579,2580,1,0,0,0,2580,2880,1,0,0,0,2581,2579,1,0,0,0,2582,2587,5,5,0,0,2583,2585,5,30,0,0,2584,2586,3,612,306,0,2585,2584,1,0,0,0,2585,2586,1,0,0,0,2586,2588,1,0,0,0,2587,2583,1,0,0,0,2587,2588,1,0,0,0,2588,2589,1,0,0,0,2589,2590,5,130,0,0,2590,2592,5,91,0,0,2591,2593,3,612,306,0,2592,2591,1,0,0,0,2592,2593,1,0,0,0,2593,2595,1,0,0,0,2594,2596,3,74,37,0,2595,2594,1,0,0,0,2595,2596,1,0,0,0,2596,2597,1,0,0,0,2597,2601,3,650,325,0,2598,2600,3,76,38,0,2599,2598,1,0,0,0,2600,2603,1,0,0,0,2601,2599,1,0,0,0,2601,2602,1,0,0,0,2602,2880,1,0,0,0,2603,2601,1,0,0,0,2604,2609,5,5,0,0,2605,2607,5,30,0,0,2606,2608,3,612,306,0,2607,2606,1,0,0,0,2607,2608,1,0,0,0,2608,2610,1,0,0,0,2609,2605,1,0,0,0,2609,2610,1,0,0,0,2610,2611,1,0,0,0,2611,2613,5,181,0,0,2612,2614,7,20,0,0,2613,2612,1,0,0,0,2613,2614,1,0,0,0,2614,2616,1,0,0,0,2615,2617,3,612,306,0,2616,2615,1,0,0,0,2616,2617,1,0,0,0,2617,2619,1,0,0,0,2618,2620,3,74,37,0,2619,2618,1,0,0,0,2619,2620,1,0,0,0,2620,2621,1,0,0,0,2621,2625,3,650,325,0,2622,2624,3,76,38,0,2623,2622,1,0,0,0,2624,2627,1,0,0,0,2625,2623,1,0,0,0,2625,2626,1,0,0,0,2626,2880,1,0,0,0,2627,2625,1,0,0,0,2628,2629,5,5,0,0,2629,2631,7,22,0,0,2630,2632,7,20,0,0,2631,2630,1,0,0,0,2631,2632,1,0,0,0,2632,2634,1,0,0,0,2633,2635,3,612,306,0,2634,2633,1,0,0,0,2634,2635,1,0,0,0,2635,2636,1,0,0,0,2636,2640,3,650,325,0,2637,2639,3,76,38,0,2638,2637,1,0,0,0,2639,2642,1,0,0,0,2640,2638,1,0,0,0,2640,2641,1,0,0,0,2641,2880,1,0,0,0,2642,2640,1,0,0,0,2643,2648,5,5,0,0,2644,2646,5,30,0,0,2645,2647,3,612,306,0,2646,2645,1,0,0,0,2646,2647,1,0,0,0,2647,2649,1,0,0,0,2648,2644,1,0,0,0,2648,2649,1,0,0,0,2649,2650,1,0,0,0,2650,2651,5,67,0,0,2651,2653,5,91,0,0,2652,2654,3,612,306,0,2653,2652,1,0,0,0,2653,2654,1,0,0,0,2654,2655,1,0,0,0,2655,2656,3,650,325,0,2656,2657,3,96,48,0,2657,2880,1,0,0,0,2658,2663,5,5,0,0,2659,2661,5,30,0,0,2660,2662,3,612,306,0,2661,2660,1,0,0,0,2661,2662,1,0,0,0,2662,2664,1,0,0,0,2663,2659,1,0,0,0,2663,2664,1,0,0,0,2664,2665,1,0,0,0,2665,2672,5,26,0,0,2666,2673,3,612,306,0,2667,2673,3,622,311,0,2668,2669,5,1133,0,0,2669,2670,3,716,358,0,2670,2671,5,1134,0,0,2671,2673,1,0,0,0,2672,2666,1,0,0,0,2672,2667,1,0,0,0,2672,2668,1,0,0,0,2673,2675,1,0,0,0,2674,2676,5,114,0,0,2675,2674,1,0,0,0,2675,2676,1,0,0,0,2676,2678,1,0,0,0,2677,2679,5,57,0,0,2678,2677,1,0,0,0,2678,2679,1,0,0,0,2679,2880,1,0,0,0,2680,2685,5,7,0,0,2681,2683,5,30,0,0,2682,2684,3,576,288,0,2683,2682,1,0,0,0,2683,2684,1,0,0,0,2684,2686,1,0,0,0,2685,2681,1,0,0,0,2685,2686,1,0,0,0,2686,2687,1,0,0,0,2687,2694,5,26,0,0,2688,2695,3,612,306,0,2689,2695,3,622,311,0,2690,2691,5,1133,0,0,2691,2692,3,716,358,0,2692,2693,5,1134,0,0,2693,2695,1,0,0,0,2694,2688,1,0,0,0,2694,2689,1,0,0,0,2694,2690,1,0,0,0,2695,2697,1,0,0,0,2696,2698,5,114,0,0,2697,2696,1,0,0,0,2697,2698,1,0,0,0,2698,2700,1,0,0,0,2699,2701,5,57,0,0,2700,2699,1,0,0,0,2700,2701,1,0,0,0,2701,2880,1,0,0,0,2702,2707,5,5,0,0,2703,2705,5,30,0,0,2704,2706,3,612,306,0,2705,2704,1,0,0,0,2705,2706,1,0,0,0,2706,2708,1,0,0,0,2707,2703,1,0,0,0,2707,2708,1,0,0,0,2708,2709,1,0,0,0,2709,2710,5,26,0,0,2710,2711,5,1133,0,0,2711,2712,3,716,358,0,2712,2713,5,1134,0,0,2713,2880,1,0,0,0,2714,2716,5,336,0,0,2715,2717,5,1124,0,0,2716,2715,1,0,0,0,2716,2717,1,0,0,0,2717,2718,1,0,0,0,2718,2880,7,34,0,0,2719,2721,5,7,0,0,2720,2722,5,28,0,0,2721,2720,1,0,0,0,2721,2722,1,0,0,0,2722,2723,1,0,0,0,2723,2729,3,612,306,0,2724,2725,5,153,0,0,2725,2726,5,42,0,0,2726,2730,3,662,331,0,2727,2728,5,51,0,0,2728,2730,5,42,0,0,2729,2724,1,0,0,0,2729,2727,1,0,0,0,2730,2880,1,0,0,0,2731,2733,5,24,0,0,2732,2734,5,28,0,0,2733,2732,1,0,0,0,2733,2734,1,0,0,0,2734,2735,1,0,0,0,2735,2736,3,612,306,0,2736,2737,3,612,306,0,2737,2741,3,90,45,0,2738,2742,5,430,0,0,2739,2740,5,334,0,0,2740,2742,3,612,306,0,2741,2738,1,0,0,0,2741,2739,1,0,0,0,2741,2742,1,0,0,0,2742,2880,1,0,0,0,2743,2744,5,139,0,0,2744,2745,5,28,0,0,2745,2746,3,612,306,0,2746,2747,5,175,0,0,2747,2748,3,612,306,0,2748,2880,1,0,0,0,2749,2751,5,103,0,0,2750,2752,5,1124,0,0,2751,2750,1,0,0,0,2751,2752,1,0,0,0,2752,2753,1,0,0,0,2753,2880,7,4,0,0,2754,2756,5,512,0,0,2755,2757,5,28,0,0,2756,2755,1,0,0,0,2756,2757,1,0,0,0,2757,2758,1,0,0,0,2758,2759,3,612,306,0,2759,2763,3,90,45,0,2760,2764,5,430,0,0,2761,2762,5,334,0,0,2762,2764,3,612,306,0,2763,2760,1,0,0,0,2763,2761,1,0,0,0,2763,2764,1,0,0,0,2764,2880,1,0,0,0,2765,2767,5,51,0,0,2766,2768,5,28,0,0,2767,2766,1,0,0,0,2767,2768,1,0,0,0,2768,2769,1,0,0,0,2769,2771,3,612,306,0,2770,2772,5,144,0,0,2771,2770,1,0,0,0,2771,2772,1,0,0,0,2772,2880,1,0,0,0,2773,2774,5,51,0,0,2774,2775,7,35,0,0,2775,2880,3,576,288,0,2776,2777,5,51,0,0,2777,2778,5,130,0,0,2778,2880,5,91,0,0,2779,2780,5,51,0,0,2780,2781,7,20,0,0,2781,2880,3,574,287,0,2782,2783,5,139,0,0,2783,2784,7,20,0,0,2784,2785,3,574,287,0,2785,2786,5,175,0,0,2786,2787,3,612,306,0,2787,2880,1,0,0,0,2788,2790,5,7,0,0,2789,2791,5,28,0,0,2790,2789,1,0,0,0,2790,2791,1,0,0,0,2791,2792,1,0,0,0,2792,2806,3,612,306,0,2793,2794,5,153,0,0,2794,2800,5,42,0,0,2795,2801,3,622,311,0,2796,2797,5,1133,0,0,2797,2798,3,716,358,0,2798,2799,5,1134,0,0,2799,2801,1,0,0,0,2800,2795,1,0,0,0,2800,2796,1,0,0,0,2801,2807,1,0,0,0,2802,2803,5,153,0,0,2803,2807,7,15,0,0,2804,2805,5,51,0,0,2805,2807,5,42,0,0,2806,2793,1,0,0,0,2806,2802,1,0,0,0,2806,2804,1,0,0,0,2807,2880,1,0,0,0,2808,2809,5,7,0,0,2809,2810,5,81,0,0,2810,2811,3,574,287,0,2811,2812,7,15,0,0,2812,2880,1,0,0,0,2813,2814,5,51,0,0,2814,2815,5,67,0,0,2815,2816,5,91,0,0,2816,2880,3,612,306,0,2817,2818,5,396,0,0,2818,2880,5,92,0,0,2819,2820,5,403,0,0,2820,2880,5,92,0,0,2821,2823,5,139,0,0,2822,2824,7,36,0,0,2823,2822,1,0,0,0,2823,2824,1,0,0,0,2824,2827,1,0,0,0,2825,2828,3,612,306,0,2826,2828,3,552,276,0,2827,2825,1,0,0,0,2827,2826,1,0,0,0,2828,2880,1,0,0,0,2829,2830,5,124,0,0,2830,2831,5,19,0,0,2831,2880,3,644,322,0,2832,2833,5,32,0,0,2833,2837,5,175,0,0,2834,2838,5,841,0,0,2835,2836,5,25,0,0,2836,2838,5,153,0,0,2837,2834,1,0,0,0,2837,2835,1,0,0,0,2838,2839,1,0,0,0,2839,2842,3,596,298,0,2840,2841,5,27,0,0,2841,2843,3,598,299,0,2842,2840,1,0,0,0,2842,2843,1,0,0,0,2843,2880,1,0,0,0,2844,2846,5,42,0,0,2845,2844,1,0,0,0,2845,2846,1,0,0,0,2846,2847,1,0,0,0,2847,2848,5,25,0,0,2848,2849,5,153,0,0,2849,2850,5,1124,0,0,2850,2854,3,596,298,0,2851,2852,5,27,0,0,2852,2853,5,1124,0,0,2853,2855,3,598,299,0,2854,2851,1,0,0,0,2854,2855,1,0,0,0,2855,2880,1,0,0,0,2856,2857,5,397,0,0,2857,2880,5,647,0,0,2858,2859,5,450,0,0,2859,2880,5,647,0,0,2860,2880,5,66,0,0,2861,2862,7,37,0,0,2862,2880,5,668,0,0,2863,2865,5,5,0,0,2864,2866,5,28,0,0,2865,2864,1,0,0,0,2865,2866,1,0,0,0,2866,2867,1,0,0,0,2867,2868,5,1133,0,0,2868,2873,3,88,44,0,2869,2870,5,1135,0,0,2870,2872,3,88,44,0,2871,2869,1,0,0,0,2872,2875,1,0,0,0,2873,2871,1,0,0,0,2873,2874,1,0,0,0,2874,2876,1,0,0,0,2875,2873,1,0,0,0,2876,2877,5,1134,0,0,2877,2880,1,0,0,0,2878,2880,3,148,74,0,2879,2528,1,0,0,0,2879,2538,1,0,0,0,2879,2549,1,0,0,0,2879,2567,1,0,0,0,2879,2582,1,0,0,0,2879,2604,1,0,0,0,2879,2628,1,0,0,0,2879,2643,1,0,0,0,2879,2658,1,0,0,0,2879,2680,1,0,0,0,2879,2702,1,0,0,0,2879,2714,1,0,0,0,2879,2719,1,0,0,0,2879,2731,1,0,0,0,2879,2743,1,0,0,0,2879,2749,1,0,0,0,2879,2754,1,0,0,0,2879,2765,1,0,0,0,2879,2773,1,0,0,0,2879,2776,1,0,0,0,2879,2779,1,0,0,0,2879,2782,1,0,0,0,2879,2788,1,0,0,0,2879,2808,1,0,0,0,2879,2813,1,0,0,0,2879,2817,1,0,0,0,2879,2819,1,0,0,0,2879,2821,1,0,0,0,2879,2829,1,0,0,0,2879,2832,1,0,0,0,2879,2845,1,0,0,0,2879,2856,1,0,0,0,2879,2858,1,0,0,0,2879,2860,1,0,0,0,2879,2861,1,0,0,0,2879,2863,1,0,0,0,2879,2878,1,0,0,0,2880,147,1,0,0,0,2881,2882,5,5,0,0,2882,2883,5,129,0,0,2883,2884,5,1133,0,0,2884,2889,3,116,58,0,2885,2886,5,1135,0,0,2886,2888,3,116,58,0,2887,2885,1,0,0,0,2888,2891,1,0,0,0,2889,2887,1,0,0,0,2889,2890,1,0,0,0,2890,2892,1,0,0,0,2891,2889,1,0,0,0,2892,2893,5,1134,0,0,2893,2980,1,0,0,0,2894,2895,5,51,0,0,2895,2896,5,129,0,0,2896,2980,3,644,322,0,2897,2898,5,397,0,0,2898,2901,5,129,0,0,2899,2902,3,644,322,0,2900,2902,5,6,0,0,2901,2899,1,0,0,0,2901,2900,1,0,0,0,2902,2903,1,0,0,0,2903,2980,5,647,0,0,2904,2905,5,450,0,0,2905,2908,5,129,0,0,2906,2909,3,644,322,0,2907,2909,5,6,0,0,2908,2906,1,0,0,0,2908,2907,1,0,0,0,2909,2910,1,0,0,0,2910,2980,5,647,0,0,2911,2912,5,656,0,0,2912,2915,5,129,0,0,2913,2916,3,644,322,0,2914,2916,5,6,0,0,2915,2913,1,0,0,0,2915,2914,1,0,0,0,2916,2980,1,0,0,0,2917,2918,5,363,0,0,2918,2919,5,129,0,0,2919,2980,3,618,309,0,2920,2921,5,579,0,0,2921,2922,5,129,0,0,2922,2923,3,644,322,0,2923,2924,5,87,0,0,2924,2925,5,1133,0,0,2925,2930,3,116,58,0,2926,2927,5,1135,0,0,2927,2929,3,116,58,0,2928,2926,1,0,0,0,2929,2932,1,0,0,0,2930,2928,1,0,0,0,2930,2931,1,0,0,0,2931,2933,1,0,0,0,2932,2930,1,0,0,0,2933,2934,5,1134,0,0,2934,2980,1,0,0,0,2935,2936,5,418,0,0,2936,2937,5,129,0,0,2937,2938,3,612,306,0,2938,2939,5,192,0,0,2939,2940,5,172,0,0,2940,2943,3,554,277,0,2941,2942,7,37,0,0,2942,2944,5,668,0,0,2943,2941,1,0,0,0,2943,2944,1,0,0,0,2944,2980,1,0,0,0,2945,2946,5,9,0,0,2946,2949,5,129,0,0,2947,2950,3,644,322,0,2948,2950,5,6,0,0,2949,2947,1,0,0,0,2949,2948,1,0,0,0,2950,2980,1,0,0,0,2951,2952,5,26,0,0,2952,2955,5,129,0,0,2953,2956,3,644,322,0,2954,2956,5,6,0,0,2955,2953,1,0,0,0,2955,2954,1,0,0,0,2956,2980,1,0,0,0,2957,2958,5,119,0,0,2958,2961,5,129,0,0,2959,2962,3,644,322,0,2960,2962,5,6,0,0,2961,2959,1,0,0,0,2961,2960,1,0,0,0,2962,2980,1,0,0,0,2963,2964,5,569,0,0,2964,2967,5,129,0,0,2965,2968,3,644,322,0,2966,2968,5,6,0,0,2967,2965,1,0,0,0,2967,2966,1,0,0,0,2968,2980,1,0,0,0,2969,2970,5,580,0,0,2970,2973,5,129,0,0,2971,2974,3,644,322,0,2972,2974,5,6,0,0,2973,2971,1,0,0,0,2973,2972,1,0,0,0,2974,2980,1,0,0,0,2975,2976,5,578,0,0,2976,2980,5,549,0,0,2977,2978,5,664,0,0,2978,2980,5,549,0,0,2979,2881,1,0,0,0,2979,2894,1,0,0,0,2979,2897,1,0,0,0,2979,2904,1,0,0,0,2979,2911,1,0,0,0,2979,2917,1,0,0,0,2979,2920,1,0,0,0,2979,2935,1,0,0,0,2979,2945,1,0,0,0,2979,2951,1,0,0,0,2979,2957,1,0,0,0,2979,2963,1,0,0,0,2979,2969,1,0,0,0,2979,2975,1,0,0,0,2979,2977,1,0,0,0,2980,149,1,0,0,0,2981,2982,5,51,0,0,2982,2984,7,0,0,0,2983,2985,3,668,334,0,2984,2983,1,0,0,0,2984,2985,1,0,0,0,2985,2986,1,0,0,0,2986,2987,3,572,286,0,2987,151,1,0,0,0,2988,2989,5,51,0,0,2989,2991,5,415,0,0,2990,2992,3,668,334,0,2991,2990,1,0,0,0,2991,2992,1,0,0,0,2992,2993,1,0,0,0,2993,2994,3,552,276,0,2994,153,1,0,0,0,2995,2996,5,51,0,0,2996,2998,5,81,0,0,2997,2999,7,1,0,0,2998,2997,1,0,0,0,2998,2999,1,0,0,0,2999,3e3,1,0,0,0,3e3,3001,3,574,287,0,3001,3002,5,118,0,0,3002,3015,3,554,277,0,3003,3005,5,336,0,0,3004,3006,5,1124,0,0,3005,3004,1,0,0,0,3005,3006,1,0,0,0,3006,3007,1,0,0,0,3007,3014,7,3,0,0,3008,3010,5,103,0,0,3009,3011,5,1124,0,0,3010,3009,1,0,0,0,3010,3011,1,0,0,0,3011,3012,1,0,0,0,3012,3014,7,4,0,0,3013,3003,1,0,0,0,3013,3008,1,0,0,0,3014,3017,1,0,0,0,3015,3013,1,0,0,0,3015,3016,1,0,0,0,3016,155,1,0,0,0,3017,3015,1,0,0,0,3018,3019,5,51,0,0,3019,3020,5,475,0,0,3020,3021,5,73,0,0,3021,3022,3,612,306,0,3022,3023,5,409,0,0,3023,3024,5,1124,0,0,3024,3025,3,600,300,0,3025,157,1,0,0,0,3026,3027,5,51,0,0,3027,3029,5,131,0,0,3028,3030,3,668,334,0,3029,3028,1,0,0,0,3029,3030,1,0,0,0,3030,3031,1,0,0,0,3031,3032,3,552,276,0,3032,159,1,0,0,0,3033,3034,5,51,0,0,3034,3036,5,437,0,0,3035,3037,3,668,334,0,3036,3035,1,0,0,0,3036,3037,1,0,0,0,3037,3038,1,0,0,0,3038,3039,3,552,276,0,3039,161,1,0,0,0,3040,3041,5,51,0,0,3041,3043,5,608,0,0,3042,3044,3,668,334,0,3043,3042,1,0,0,0,3043,3044,1,0,0,0,3044,3045,1,0,0,0,3045,3046,3,612,306,0,3046,163,1,0,0,0,3047,3049,5,51,0,0,3048,3050,5,649,0,0,3049,3048,1,0,0,0,3049,3050,1,0,0,0,3050,3051,1,0,0,0,3051,3053,5,172,0,0,3052,3054,3,668,334,0,3053,3052,1,0,0,0,3053,3054,1,0,0,0,3054,3055,1,0,0,0,3055,3057,3,648,324,0,3056,3058,7,38,0,0,3057,3056,1,0,0,0,3057,3058,1,0,0,0,3058,165,1,0,0,0,3059,3060,5,51,0,0,3060,3061,5,647,0,0,3061,3067,3,612,306,0,3062,3064,5,409,0,0,3063,3065,5,1124,0,0,3064,3063,1,0,0,0,3064,3065,1,0,0,0,3065,3066,1,0,0,0,3066,3068,3,600,300,0,3067,3062,1,0,0,0,3067,3068,1,0,0,0,3068,167,1,0,0,0,3069,3070,5,51,0,0,3070,3072,5,177,0,0,3071,3073,3,668,334,0,3072,3071,1,0,0,0,3072,3073,1,0,0,0,3073,3074,1,0,0,0,3074,3075,3,578,289,0,3075,169,1,0,0,0,3076,3077,5,51,0,0,3077,3079,5,671,0,0,3078,3080,3,668,334,0,3079,3078,1,0,0,0,3079,3080,1,0,0,0,3080,3081,1,0,0,0,3081,3086,3,552,276,0,3082,3083,5,1135,0,0,3083,3085,3,552,276,0,3084,3082,1,0,0,0,3085,3088,1,0,0,0,3086,3084,1,0,0,0,3086,3087,1,0,0,0,3087,3090,1,0,0,0,3088,3086,1,0,0,0,3089,3091,7,38,0,0,3090,3089,1,0,0,0,3090,3091,1,0,0,0,3091,171,1,0,0,0,3092,3093,5,51,0,0,3093,3095,5,596,0,0,3094,3096,3,668,334,0,3095,3094,1,0,0,0,3095,3096,1,0,0,0,3096,3097,1,0,0,0,3097,3098,3,566,283,0,3098,173,1,0,0,0,3099,3100,5,153,0,0,3100,3101,5,42,0,0,3101,3105,5,596,0,0,3102,3106,5,529,0,0,3103,3106,5,6,0,0,3104,3106,3,566,283,0,3105,3102,1,0,0,0,3105,3103,1,0,0,0,3105,3104,1,0,0,0,3106,3107,1,0,0,0,3107,3108,5,175,0,0,3108,3113,3,588,294,0,3109,3110,5,153,0,0,3110,3111,5,596,0,0,3111,3113,3,434,217,0,3112,3099,1,0,0,0,3112,3109,1,0,0,0,3113,175,1,0,0,0,3114,3115,5,139,0,0,3115,3116,5,172,0,0,3116,3121,3,178,89,0,3117,3118,5,1135,0,0,3118,3120,3,178,89,0,3119,3117,1,0,0,0,3120,3123,1,0,0,0,3121,3119,1,0,0,0,3121,3122,1,0,0,0,3122,177,1,0,0,0,3123,3121,1,0,0,0,3124,3125,3,554,277,0,3125,3126,5,175,0,0,3126,3127,3,554,277,0,3127,179,1,0,0,0,3128,3130,5,656,0,0,3129,3131,5,172,0,0,3130,3129,1,0,0,0,3130,3131,1,0,0,0,3131,3132,1,0,0,0,3132,3133,3,554,277,0,3133,181,1,0,0,0,3134,3135,5,20,0,0,3135,3142,3,552,276,0,3136,3139,5,1133,0,0,3137,3140,3,656,328,0,3138,3140,3,652,326,0,3139,3137,1,0,0,0,3139,3138,1,0,0,0,3139,3140,1,0,0,0,3140,3141,1,0,0,0,3141,3143,5,1134,0,0,3142,3136,1,0,0,0,3142,3143,1,0,0,0,3143,183,1,0,0,0,3144,3147,3,212,106,0,3145,3147,3,214,107,0,3146,3144,1,0,0,0,3146,3145,1,0,0,0,3147,185,1,0,0,0,3148,3149,5,399,0,0,3149,3150,3,652,326,0,3150,187,1,0,0,0,3151,3156,3,216,108,0,3152,3156,3,218,109,0,3153,3156,3,220,110,0,3154,3156,3,222,111,0,3155,3151,1,0,0,0,3155,3152,1,0,0,0,3155,3153,1,0,0,0,3155,3154,1,0,0,0,3156,189,1,0,0,0,3157,3159,5,85,0,0,3158,3160,7,39,0,0,3159,3158,1,0,0,0,3159,3160,1,0,0,0,3160,3162,1,0,0,0,3161,3163,5,78,0,0,3162,3161,1,0,0,0,3162,3163,1,0,0,0,3163,3165,1,0,0,0,3164,3166,5,87,0,0,3165,3164,1,0,0,0,3165,3166,1,0,0,0,3166,3167,1,0,0,0,3167,3174,3,554,277,0,3168,3169,5,129,0,0,3169,3171,5,1133,0,0,3170,3172,3,644,322,0,3171,3170,1,0,0,0,3171,3172,1,0,0,0,3172,3173,1,0,0,0,3173,3175,5,1134,0,0,3174,3168,1,0,0,0,3174,3175,1,0,0,0,3175,3199,1,0,0,0,3176,3178,5,1133,0,0,3177,3179,3,646,323,0,3178,3177,1,0,0,0,3178,3179,1,0,0,0,3179,3180,1,0,0,0,3180,3182,5,1134,0,0,3181,3176,1,0,0,0,3181,3182,1,0,0,0,3182,3183,1,0,0,0,3183,3188,3,204,102,0,3184,3186,5,12,0,0,3185,3184,1,0,0,0,3185,3186,1,0,0,0,3186,3187,1,0,0,0,3187,3189,3,612,306,0,3188,3185,1,0,0,0,3188,3189,1,0,0,0,3189,3200,1,0,0,0,3190,3191,5,153,0,0,3191,3196,3,206,103,0,3192,3193,5,1135,0,0,3193,3195,3,206,103,0,3194,3192,1,0,0,0,3195,3198,1,0,0,0,3196,3194,1,0,0,0,3196,3197,1,0,0,0,3197,3200,1,0,0,0,3198,3196,1,0,0,0,3199,3181,1,0,0,0,3199,3190,1,0,0,0,3200,3213,1,0,0,0,3201,3202,5,118,0,0,3202,3203,5,401,0,0,3203,3204,5,91,0,0,3204,3205,5,184,0,0,3205,3210,3,206,103,0,3206,3207,5,1135,0,0,3207,3209,3,206,103,0,3208,3206,1,0,0,0,3209,3212,1,0,0,0,3210,3208,1,0,0,0,3210,3211,1,0,0,0,3211,3214,1,0,0,0,3212,3210,1,0,0,0,3213,3201,1,0,0,0,3213,3214,1,0,0,0,3214,191,1,0,0,0,3215,3216,5,102,0,0,3216,3218,5,388,0,0,3217,3219,7,40,0,0,3218,3217,1,0,0,0,3218,3219,1,0,0,0,3219,3221,1,0,0,0,3220,3222,5,474,0,0,3221,3220,1,0,0,0,3221,3222,1,0,0,0,3222,3223,1,0,0,0,3223,3224,5,82,0,0,3224,3226,5,1148,0,0,3225,3227,7,6,0,0,3226,3225,1,0,0,0,3226,3227,1,0,0,0,3227,3228,1,0,0,0,3228,3229,5,87,0,0,3229,3230,5,172,0,0,3230,3236,3,554,277,0,3231,3232,5,129,0,0,3232,3233,5,1133,0,0,3233,3234,3,644,322,0,3234,3235,5,1134,0,0,3235,3237,1,0,0,0,3236,3231,1,0,0,0,3236,3237,1,0,0,0,3237,3241,1,0,0,0,3238,3239,5,25,0,0,3239,3240,5,153,0,0,3240,3242,3,596,298,0,3241,3238,1,0,0,0,3241,3242,1,0,0,0,3242,3249,1,0,0,0,3243,3245,7,41,0,0,3244,3246,3,280,140,0,3245,3244,1,0,0,0,3246,3247,1,0,0,0,3247,3245,1,0,0,0,3247,3248,1,0,0,0,3248,3250,1,0,0,0,3249,3243,1,0,0,0,3249,3250,1,0,0,0,3250,3257,1,0,0,0,3251,3253,5,101,0,0,3252,3254,3,282,141,0,3253,3252,1,0,0,0,3254,3255,1,0,0,0,3255,3253,1,0,0,0,3255,3256,1,0,0,0,3256,3258,1,0,0,0,3257,3251,1,0,0,0,3257,3258,1,0,0,0,3258,3263,1,0,0,0,3259,3260,5,78,0,0,3260,3261,3,618,309,0,3261,3262,7,42,0,0,3262,3264,1,0,0,0,3263,3259,1,0,0,0,3263,3264,1,0,0,0,3264,3276,1,0,0,0,3265,3266,5,1133,0,0,3266,3271,3,208,104,0,3267,3268,5,1135,0,0,3268,3270,3,208,104,0,3269,3267,1,0,0,0,3270,3273,1,0,0,0,3271,3269,1,0,0,0,3271,3272,1,0,0,0,3272,3274,1,0,0,0,3273,3271,1,0,0,0,3274,3275,5,1134,0,0,3275,3277,1,0,0,0,3276,3265,1,0,0,0,3276,3277,1,0,0,0,3277,3287,1,0,0,0,3278,3279,5,153,0,0,3279,3284,3,206,103,0,3280,3281,5,1135,0,0,3281,3283,3,206,103,0,3282,3280,1,0,0,0,3283,3286,1,0,0,0,3284,3282,1,0,0,0,3284,3285,1,0,0,0,3285,3288,1,0,0,0,3286,3284,1,0,0,0,3287,3278,1,0,0,0,3287,3288,1,0,0,0,3288,193,1,0,0,0,3289,3290,5,102,0,0,3290,3292,5,682,0,0,3291,3293,7,40,0,0,3292,3291,1,0,0,0,3292,3293,1,0,0,0,3293,3295,1,0,0,0,3294,3296,5,474,0,0,3295,3294,1,0,0,0,3295,3296,1,0,0,0,3296,3297,1,0,0,0,3297,3298,5,82,0,0,3298,3300,5,1148,0,0,3299,3301,7,6,0,0,3300,3299,1,0,0,0,3300,3301,1,0,0,0,3301,3302,1,0,0,0,3302,3303,5,87,0,0,3303,3304,5,172,0,0,3304,3308,3,554,277,0,3305,3306,5,25,0,0,3306,3307,5,153,0,0,3307,3309,3,596,298,0,3308,3305,1,0,0,0,3308,3309,1,0,0,0,3309,3316,1,0,0,0,3310,3311,5,601,0,0,3311,3312,5,448,0,0,3312,3313,5,19,0,0,3313,3314,5,1126,0,0,3314,3315,5,1148,0,0,3315,3317,5,1125,0,0,3316,3310,1,0,0,0,3316,3317,1,0,0,0,3317,3322,1,0,0,0,3318,3319,5,78,0,0,3319,3320,3,618,309,0,3320,3321,7,42,0,0,3321,3323,1,0,0,0,3322,3318,1,0,0,0,3322,3323,1,0,0,0,3323,3335,1,0,0,0,3324,3325,5,1133,0,0,3325,3330,3,208,104,0,3326,3327,5,1135,0,0,3327,3329,3,208,104,0,3328,3326,1,0,0,0,3329,3332,1,0,0,0,3330,3328,1,0,0,0,3330,3331,1,0,0,0,3331,3333,1,0,0,0,3332,3330,1,0,0,0,3333,3334,5,1134,0,0,3334,3336,1,0,0,0,3335,3324,1,0,0,0,3335,3336,1,0,0,0,3336,3346,1,0,0,0,3337,3338,5,153,0,0,3338,3343,3,206,103,0,3339,3340,5,1135,0,0,3340,3342,3,206,103,0,3341,3339,1,0,0,0,3342,3345,1,0,0,0,3343,3341,1,0,0,0,3343,3344,1,0,0,0,3344,3347,1,0,0,0,3345,3343,1,0,0,0,3346,3337,1,0,0,0,3346,3347,1,0,0,0,3347,195,1,0,0,0,3348,3350,5,141,0,0,3349,3351,7,43,0,0,3350,3349,1,0,0,0,3350,3351,1,0,0,0,3351,3353,1,0,0,0,3352,3354,5,87,0,0,3353,3352,1,0,0,0,3353,3354,1,0,0,0,3354,3355,1,0,0,0,3355,3361,3,554,277,0,3356,3357,5,129,0,0,3357,3358,5,1133,0,0,3358,3359,3,644,322,0,3359,3360,5,1134,0,0,3360,3362,1,0,0,0,3361,3356,1,0,0,0,3361,3362,1,0,0,0,3362,3379,1,0,0,0,3363,3364,5,1133,0,0,3364,3365,3,644,322,0,3365,3366,5,1134,0,0,3366,3368,1,0,0,0,3367,3363,1,0,0,0,3367,3368,1,0,0,0,3368,3369,1,0,0,0,3369,3380,3,204,102,0,3370,3371,5,153,0,0,3371,3376,3,206,103,0,3372,3373,5,1135,0,0,3373,3375,3,206,103,0,3374,3372,1,0,0,0,3375,3378,1,0,0,0,3376,3374,1,0,0,0,3376,3377,1,0,0,0,3377,3380,1,0,0,0,3378,3376,1,0,0,0,3379,3367,1,0,0,0,3379,3370,1,0,0,0,3380,197,1,0,0,0,3381,3383,3,250,125,0,3382,3384,3,210,105,0,3383,3382,1,0,0,0,3383,3384,1,0,0,0,3384,3447,1,0,0,0,3385,3387,3,246,123,0,3386,3388,3,210,105,0,3387,3386,1,0,0,0,3387,3388,1,0,0,0,3388,3447,1,0,0,0,3389,3392,3,252,126,0,3390,3392,3,248,124,0,3391,3389,1,0,0,0,3391,3390,1,0,0,0,3392,3394,1,0,0,0,3393,3395,3,256,128,0,3394,3393,1,0,0,0,3395,3396,1,0,0,0,3396,3394,1,0,0,0,3396,3397,1,0,0,0,3397,3406,1,0,0,0,3398,3400,5,180,0,0,3399,3401,7,44,0,0,3400,3399,1,0,0,0,3400,3401,1,0,0,0,3401,3404,1,0,0,0,3402,3405,3,250,125,0,3403,3405,3,246,123,0,3404,3402,1,0,0,0,3404,3403,1,0,0,0,3405,3407,1,0,0,0,3406,3398,1,0,0,0,3406,3407,1,0,0,0,3407,3409,1,0,0,0,3408,3410,3,228,114,0,3409,3408,1,0,0,0,3409,3410,1,0,0,0,3410,3412,1,0,0,0,3411,3413,3,294,147,0,3412,3411,1,0,0,0,3412,3413,1,0,0,0,3413,3415,1,0,0,0,3414,3416,3,210,105,0,3415,3414,1,0,0,0,3415,3416,1,0,0,0,3416,3447,1,0,0,0,3417,3419,3,248,124,0,3418,3420,3,254,127,0,3419,3418,1,0,0,0,3420,3421,1,0,0,0,3421,3419,1,0,0,0,3421,3422,1,0,0,0,3422,3428,1,0,0,0,3423,3425,5,180,0,0,3424,3426,7,44,0,0,3425,3424,1,0,0,0,3425,3426,1,0,0,0,3426,3427,1,0,0,0,3427,3429,3,246,123,0,3428,3423,1,0,0,0,3428,3429,1,0,0,0,3429,3431,1,0,0,0,3430,3432,3,228,114,0,3431,3430,1,0,0,0,3431,3432,1,0,0,0,3432,3434,1,0,0,0,3433,3435,3,294,147,0,3434,3433,1,0,0,0,3434,3435,1,0,0,0,3435,3437,1,0,0,0,3436,3438,3,210,105,0,3437,3436,1,0,0,0,3437,3438,1,0,0,0,3438,3447,1,0,0,0,3439,3442,3,252,126,0,3440,3441,5,1135,0,0,3441,3443,3,258,129,0,3442,3440,1,0,0,0,3443,3444,1,0,0,0,3444,3442,1,0,0,0,3444,3445,1,0,0,0,3445,3447,1,0,0,0,3446,3381,1,0,0,0,3446,3385,1,0,0,0,3446,3391,1,0,0,0,3446,3417,1,0,0,0,3446,3439,1,0,0,0,3447,199,1,0,0,0,3448,3451,3,224,112,0,3449,3451,3,226,113,0,3450,3448,1,0,0,0,3450,3449,1,0,0,0,3451,201,1,0,0,0,3452,3453,5,188,0,0,3453,3455,5,1133,0,0,3454,3456,3,654,327,0,3455,3454,1,0,0,0,3455,3456,1,0,0,0,3456,3457,1,0,0,0,3457,3466,5,1134,0,0,3458,3459,5,1135,0,0,3459,3461,5,1133,0,0,3460,3462,3,654,327,0,3461,3460,1,0,0,0,3461,3462,1,0,0,0,3462,3463,1,0,0,0,3463,3465,5,1134,0,0,3464,3458,1,0,0,0,3465,3468,1,0,0,0,3466,3464,1,0,0,0,3466,3467,1,0,0,0,3467,203,1,0,0,0,3468,3466,1,0,0,0,3469,3488,3,198,99,0,3470,3471,7,45,0,0,3471,3473,5,1133,0,0,3472,3474,3,654,327,0,3473,3472,1,0,0,0,3473,3474,1,0,0,0,3474,3475,1,0,0,0,3475,3484,5,1134,0,0,3476,3477,5,1135,0,0,3477,3479,5,1133,0,0,3478,3480,3,654,327,0,3479,3478,1,0,0,0,3479,3480,1,0,0,0,3480,3481,1,0,0,0,3481,3483,5,1134,0,0,3482,3476,1,0,0,0,3483,3486,1,0,0,0,3484,3482,1,0,0,0,3484,3485,1,0,0,0,3485,3488,1,0,0,0,3486,3484,1,0,0,0,3487,3469,1,0,0,0,3487,3470,1,0,0,0,3488,205,1,0,0,0,3489,3490,3,570,285,0,3490,3493,5,1124,0,0,3491,3494,3,716,358,0,3492,3494,5,42,0,0,3493,3491,1,0,0,0,3493,3492,1,0,0,0,3494,207,1,0,0,0,3495,3498,3,612,306,0,3496,3498,5,1159,0,0,3497,3495,1,0,0,0,3497,3496,1,0,0,0,3498,209,1,0,0,0,3499,3500,5,65,0,0,3500,3506,5,184,0,0,3501,3502,5,103,0,0,3502,3503,5,80,0,0,3503,3504,5,610,0,0,3504,3506,5,511,0,0,3505,3499,1,0,0,0,3505,3501,1,0,0,0,3506,211,1,0,0,0,3507,3509,5,44,0,0,3508,3510,5,106,0,0,3509,3508,1,0,0,0,3509,3510,1,0,0,0,3510,3512,1,0,0,0,3511,3513,5,568,0,0,3512,3511,1,0,0,0,3512,3513,1,0,0,0,3513,3515,1,0,0,0,3514,3516,5,78,0,0,3515,3514,1,0,0,0,3515,3516,1,0,0,0,3516,3517,1,0,0,0,3517,3518,5,68,0,0,3518,3523,3,554,277,0,3519,3521,5,12,0,0,3520,3519,1,0,0,0,3520,3521,1,0,0,0,3521,3522,1,0,0,0,3522,3524,3,612,306,0,3523,3520,1,0,0,0,3523,3524,1,0,0,0,3524,3530,1,0,0,0,3525,3526,5,129,0,0,3526,3527,5,1133,0,0,3527,3528,3,644,322,0,3528,3529,5,1134,0,0,3529,3531,1,0,0,0,3530,3525,1,0,0,0,3530,3531,1,0,0,0,3531,3534,1,0,0,0,3532,3533,5,190,0,0,3533,3535,3,716,358,0,3534,3532,1,0,0,0,3534,3535,1,0,0,0,3535,3537,1,0,0,0,3536,3538,3,228,114,0,3537,3536,1,0,0,0,3537,3538,1,0,0,0,3538,3541,1,0,0,0,3539,3540,5,99,0,0,3540,3542,3,296,148,0,3541,3539,1,0,0,0,3541,3542,1,0,0,0,3542,213,1,0,0,0,3543,3545,5,44,0,0,3544,3546,5,106,0,0,3545,3544,1,0,0,0,3545,3546,1,0,0,0,3546,3548,1,0,0,0,3547,3549,5,568,0,0,3548,3547,1,0,0,0,3548,3549,1,0,0,0,3549,3551,1,0,0,0,3550,3552,5,78,0,0,3551,3550,1,0,0,0,3551,3552,1,0,0,0,3552,3592,1,0,0,0,3553,3556,3,554,277,0,3554,3555,5,1132,0,0,3555,3557,5,1117,0,0,3556,3554,1,0,0,0,3556,3557,1,0,0,0,3557,3566,1,0,0,0,3558,3559,5,1135,0,0,3559,3562,3,554,277,0,3560,3561,5,1132,0,0,3561,3563,5,1117,0,0,3562,3560,1,0,0,0,3562,3563,1,0,0,0,3563,3565,1,0,0,0,3564,3558,1,0,0,0,3565,3568,1,0,0,0,3566,3564,1,0,0,0,3566,3567,1,0,0,0,3567,3569,1,0,0,0,3568,3566,1,0,0,0,3569,3570,5,68,0,0,3570,3571,3,232,116,0,3571,3593,1,0,0,0,3572,3573,5,68,0,0,3573,3576,3,554,277,0,3574,3575,5,1132,0,0,3575,3577,5,1117,0,0,3576,3574,1,0,0,0,3576,3577,1,0,0,0,3577,3586,1,0,0,0,3578,3579,5,1135,0,0,3579,3582,3,554,277,0,3580,3581,5,1132,0,0,3581,3583,5,1117,0,0,3582,3580,1,0,0,0,3582,3583,1,0,0,0,3583,3585,1,0,0,0,3584,3578,1,0,0,0,3585,3588,1,0,0,0,3586,3584,1,0,0,0,3586,3587,1,0,0,0,3587,3589,1,0,0,0,3588,3586,1,0,0,0,3589,3590,5,187,0,0,3590,3591,3,232,116,0,3591,3593,1,0,0,0,3592,3553,1,0,0,0,3592,3572,1,0,0,0,3593,3596,1,0,0,0,3594,3595,5,190,0,0,3595,3597,3,716,358,0,3596,3594,1,0,0,0,3596,3597,1,0,0,0,3597,215,1,0,0,0,3598,3599,5,442,0,0,3599,3600,3,554,277,0,3600,3605,5,539,0,0,3601,3603,5,12,0,0,3602,3601,1,0,0,0,3602,3603,1,0,0,0,3603,3604,1,0,0,0,3604,3606,3,612,306,0,3605,3602,1,0,0,0,3605,3606,1,0,0,0,3606,217,1,0,0,0,3607,3608,5,442,0,0,3608,3609,3,554,277,0,3609,3610,5,134,0,0,3610,3617,3,612,306,0,3611,3612,3,724,362,0,3612,3613,5,1133,0,0,3613,3614,3,656,328,0,3614,3615,5,1134,0,0,3615,3618,1,0,0,0,3616,3618,7,46,0,0,3617,3611,1,0,0,0,3617,3616,1,0,0,0,3618,3621,1,0,0,0,3619,3620,5,190,0,0,3620,3622,3,716,358,0,3621,3619,1,0,0,0,3621,3622,1,0,0,0,3622,3625,1,0,0,0,3623,3624,5,99,0,0,3624,3626,3,296,148,0,3625,3623,1,0,0,0,3625,3626,1,0,0,0,3626,219,1,0,0,0,3627,3628,5,442,0,0,3628,3629,3,554,277,0,3629,3630,5,134,0,0,3630,3633,7,47,0,0,3631,3632,5,190,0,0,3632,3634,3,716,358,0,3633,3631,1,0,0,0,3633,3634,1,0,0,0,3634,3637,1,0,0,0,3635,3636,5,99,0,0,3636,3638,3,296,148,0,3637,3635,1,0,0,0,3637,3638,1,0,0,0,3638,221,1,0,0,0,3639,3640,5,442,0,0,3640,3641,3,554,277,0,3641,3642,5,361,0,0,3642,223,1,0,0,0,3643,3645,5,184,0,0,3644,3646,5,106,0,0,3645,3644,1,0,0,0,3645,3646,1,0,0,0,3646,3648,1,0,0,0,3647,3649,5,78,0,0,3648,3647,1,0,0,0,3648,3649,1,0,0,0,3649,3650,1,0,0,0,3650,3655,3,554,277,0,3651,3653,5,12,0,0,3652,3651,1,0,0,0,3652,3653,1,0,0,0,3653,3654,1,0,0,0,3654,3656,3,612,306,0,3655,3652,1,0,0,0,3655,3656,1,0,0,0,3656,3657,1,0,0,0,3657,3658,5,153,0,0,3658,3663,3,206,103,0,3659,3660,5,1135,0,0,3660,3662,3,206,103,0,3661,3659,1,0,0,0,3662,3665,1,0,0,0,3663,3661,1,0,0,0,3663,3664,1,0,0,0,3664,3668,1,0,0,0,3665,3663,1,0,0,0,3666,3667,5,190,0,0,3667,3669,3,716,358,0,3668,3666,1,0,0,0,3668,3669,1,0,0,0,3669,3671,1,0,0,0,3670,3672,3,228,114,0,3671,3670,1,0,0,0,3671,3672,1,0,0,0,3672,3674,1,0,0,0,3673,3675,3,294,147,0,3674,3673,1,0,0,0,3674,3675,1,0,0,0,3675,225,1,0,0,0,3676,3678,5,184,0,0,3677,3679,5,106,0,0,3678,3677,1,0,0,0,3678,3679,1,0,0,0,3679,3681,1,0,0,0,3680,3682,5,78,0,0,3681,3680,1,0,0,0,3681,3682,1,0,0,0,3682,3683,1,0,0,0,3683,3684,3,556,278,0,3684,3685,5,153,0,0,3685,3690,3,206,103,0,3686,3687,5,1135,0,0,3687,3689,3,206,103,0,3688,3686,1,0,0,0,3689,3692,1,0,0,0,3690,3688,1,0,0,0,3690,3691,1,0,0,0,3691,3695,1,0,0,0,3692,3690,1,0,0,0,3693,3694,5,190,0,0,3694,3696,3,716,358,0,3695,3693,1,0,0,0,3695,3696,1,0,0,0,3696,227,1,0,0,0,3697,3698,5,124,0,0,3698,3699,5,19,0,0,3699,3704,3,230,115,0,3700,3701,5,1135,0,0,3701,3703,3,230,115,0,3702,3700,1,0,0,0,3703,3706,1,0,0,0,3704,3702,1,0,0,0,3704,3705,1,0,0,0,3705,229,1,0,0,0,3706,3704,1,0,0,0,3707,3709,3,716,358,0,3708,3710,7,48,0,0,3709,3708,1,0,0,0,3709,3710,1,0,0,0,3710,231,1,0,0,0,3711,3716,3,234,117,0,3712,3713,5,1135,0,0,3713,3715,3,234,117,0,3714,3712,1,0,0,0,3715,3718,1,0,0,0,3716,3714,1,0,0,0,3716,3717,1,0,0,0,3717,233,1,0,0,0,3718,3716,1,0,0,0,3719,3723,3,236,118,0,3720,3722,3,242,121,0,3721,3720,1,0,0,0,3722,3725,1,0,0,0,3723,3721,1,0,0,0,3723,3724,1,0,0,0,3724,3738,1,0,0,0,3725,3723,1,0,0,0,3726,3727,5,1133,0,0,3727,3731,3,236,118,0,3728,3730,3,242,121,0,3729,3728,1,0,0,0,3730,3733,1,0,0,0,3731,3729,1,0,0,0,3731,3732,1,0,0,0,3732,3734,1,0,0,0,3733,3731,1,0,0,0,3734,3735,5,1134,0,0,3735,3738,1,0,0,0,3736,3738,3,260,130,0,3737,3719,1,0,0,0,3737,3726,1,0,0,0,3737,3736,1,0,0,0,3738,235,1,0,0,0,3739,3745,3,554,277,0,3740,3741,5,129,0,0,3741,3742,5,1133,0,0,3742,3743,3,644,322,0,3743,3744,5,1134,0,0,3744,3746,1,0,0,0,3745,3740,1,0,0,0,3745,3746,1,0,0,0,3746,3751,1,0,0,0,3747,3749,5,12,0,0,3748,3747,1,0,0,0,3748,3749,1,0,0,0,3749,3750,1,0,0,0,3750,3752,3,612,306,0,3751,3748,1,0,0,0,3751,3752,1,0,0,0,3752,3761,1,0,0,0,3753,3758,3,238,119,0,3754,3755,5,1135,0,0,3755,3757,3,238,119,0,3756,3754,1,0,0,0,3757,3760,1,0,0,0,3758,3756,1,0,0,0,3758,3759,1,0,0,0,3759,3762,1,0,0,0,3760,3758,1,0,0,0,3761,3753,1,0,0,0,3761,3762,1,0,0,0,3762,3777,1,0,0,0,3763,3764,5,1133,0,0,3764,3765,3,198,99,0,3765,3766,5,1134,0,0,3766,3768,1,0,0,0,3767,3769,5,12,0,0,3768,3767,1,0,0,0,3768,3769,1,0,0,0,3769,3770,1,0,0,0,3770,3771,3,612,306,0,3771,3777,1,0,0,0,3772,3773,5,1133,0,0,3773,3774,3,232,116,0,3774,3775,5,1134,0,0,3775,3777,1,0,0,0,3776,3739,1,0,0,0,3776,3763,1,0,0,0,3776,3772,1,0,0,0,3777,237,1,0,0,0,3778,3779,7,49,0,0,3779,3782,7,20,0,0,3780,3781,5,65,0,0,3781,3783,3,240,120,0,3782,3780,1,0,0,0,3782,3783,1,0,0,0,3783,3784,1,0,0,0,3784,3785,5,1133,0,0,3785,3786,3,580,290,0,3786,3787,5,1134,0,0,3787,239,1,0,0,0,3788,3794,5,90,0,0,3789,3790,5,124,0,0,3790,3794,5,19,0,0,3791,3792,5,73,0,0,3792,3794,5,19,0,0,3793,3788,1,0,0,0,3793,3789,1,0,0,0,3793,3791,1,0,0,0,3794,241,1,0,0,0,3795,3797,7,50,0,0,3796,3795,1,0,0,0,3796,3797,1,0,0,0,3797,3798,1,0,0,0,3798,3800,5,90,0,0,3799,3801,5,94,0,0,3800,3799,1,0,0,0,3800,3801,1,0,0,0,3801,3802,1,0,0,0,3802,3806,3,236,118,0,3803,3805,3,244,122,0,3804,3803,1,0,0,0,3805,3808,1,0,0,0,3806,3804,1,0,0,0,3806,3807,1,0,0,0,3807,3843,1,0,0,0,3808,3806,1,0,0,0,3809,3810,5,171,0,0,3810,3815,3,236,118,0,3811,3812,5,118,0,0,3812,3814,3,716,358,0,3813,3811,1,0,0,0,3814,3817,1,0,0,0,3815,3813,1,0,0,0,3815,3816,1,0,0,0,3816,3843,1,0,0,0,3817,3815,1,0,0,0,3818,3820,7,51,0,0,3819,3821,5,126,0,0,3820,3819,1,0,0,0,3820,3821,1,0,0,0,3821,3822,1,0,0,0,3822,3824,5,90,0,0,3823,3825,5,94,0,0,3824,3823,1,0,0,0,3824,3825,1,0,0,0,3825,3826,1,0,0,0,3826,3830,3,236,118,0,3827,3829,3,244,122,0,3828,3827,1,0,0,0,3829,3832,1,0,0,0,3830,3828,1,0,0,0,3830,3831,1,0,0,0,3831,3843,1,0,0,0,3832,3830,1,0,0,0,3833,3838,5,113,0,0,3834,3836,7,51,0,0,3835,3837,5,126,0,0,3836,3835,1,0,0,0,3836,3837,1,0,0,0,3837,3839,1,0,0,0,3838,3834,1,0,0,0,3838,3839,1,0,0,0,3839,3840,1,0,0,0,3840,3841,5,90,0,0,3841,3843,3,236,118,0,3842,3796,1,0,0,0,3842,3809,1,0,0,0,3842,3818,1,0,0,0,3842,3833,1,0,0,0,3843,243,1,0,0,0,3844,3845,5,118,0,0,3845,3852,3,716,358,0,3846,3847,5,187,0,0,3847,3848,5,1133,0,0,3848,3849,3,644,322,0,3849,3850,5,1134,0,0,3850,3852,1,0,0,0,3851,3844,1,0,0,0,3851,3846,1,0,0,0,3852,245,1,0,0,0,3853,3854,5,1133,0,0,3854,3855,3,250,125,0,3855,3856,5,1134,0,0,3856,3862,1,0,0,0,3857,3858,5,1133,0,0,3858,3859,3,246,123,0,3859,3860,5,1134,0,0,3860,3862,1,0,0,0,3861,3853,1,0,0,0,3861,3857,1,0,0,0,3862,247,1,0,0,0,3863,3864,5,1133,0,0,3864,3865,3,252,126,0,3865,3866,5,1134,0,0,3866,3872,1,0,0,0,3867,3868,5,1133,0,0,3868,3869,3,248,124,0,3869,3870,5,1134,0,0,3870,3872,1,0,0,0,3871,3863,1,0,0,0,3871,3867,1,0,0,0,3872,249,1,0,0,0,3873,3877,5,152,0,0,3874,3876,3,270,135,0,3875,3874,1,0,0,0,3876,3879,1,0,0,0,3877,3875,1,0,0,0,3877,3878,1,0,0,0,3878,3880,1,0,0,0,3879,3877,1,0,0,0,3880,3882,3,272,136,0,3881,3883,3,278,139,0,3882,3881,1,0,0,0,3882,3883,1,0,0,0,3883,3884,1,0,0,0,3884,3886,3,284,142,0,3885,3887,3,286,143,0,3886,3885,1,0,0,0,3886,3887,1,0,0,0,3887,3889,1,0,0,0,3888,3890,3,288,144,0,3889,3888,1,0,0,0,3889,3890,1,0,0,0,3890,3892,1,0,0,0,3891,3893,3,290,145,0,3892,3891,1,0,0,0,3892,3893,1,0,0,0,3893,3895,1,0,0,0,3894,3896,3,228,114,0,3895,3894,1,0,0,0,3895,3896,1,0,0,0,3896,3898,1,0,0,0,3897,3899,3,294,147,0,3898,3897,1,0,0,0,3898,3899,1,0,0,0,3899,3928,1,0,0,0,3900,3904,5,152,0,0,3901,3903,3,270,135,0,3902,3901,1,0,0,0,3903,3906,1,0,0,0,3904,3902,1,0,0,0,3904,3905,1,0,0,0,3905,3907,1,0,0,0,3906,3904,1,0,0,0,3907,3908,3,272,136,0,3908,3910,3,284,142,0,3909,3911,3,286,143,0,3910,3909,1,0,0,0,3910,3911,1,0,0,0,3911,3913,1,0,0,0,3912,3914,3,288,144,0,3913,3912,1,0,0,0,3913,3914,1,0,0,0,3914,3916,1,0,0,0,3915,3917,3,290,145,0,3916,3915,1,0,0,0,3916,3917,1,0,0,0,3917,3919,1,0,0,0,3918,3920,3,228,114,0,3919,3918,1,0,0,0,3919,3920,1,0,0,0,3920,3922,1,0,0,0,3921,3923,3,294,147,0,3922,3921,1,0,0,0,3922,3923,1,0,0,0,3923,3925,1,0,0,0,3924,3926,3,278,139,0,3925,3924,1,0,0,0,3925,3926,1,0,0,0,3926,3928,1,0,0,0,3927,3873,1,0,0,0,3927,3900,1,0,0,0,3928,251,1,0,0,0,3929,3933,5,152,0,0,3930,3932,3,270,135,0,3931,3930,1,0,0,0,3932,3935,1,0,0,0,3933,3931,1,0,0,0,3933,3934,1,0,0,0,3934,3936,1,0,0,0,3935,3933,1,0,0,0,3936,3937,3,272,136,0,3937,3939,3,284,142,0,3938,3940,3,286,143,0,3939,3938,1,0,0,0,3939,3940,1,0,0,0,3940,3942,1,0,0,0,3941,3943,3,288,144,0,3942,3941,1,0,0,0,3942,3943,1,0,0,0,3943,3945,1,0,0,0,3944,3946,3,290,145,0,3945,3944,1,0,0,0,3945,3946,1,0,0,0,3946,3948,1,0,0,0,3947,3949,3,228,114,0,3948,3947,1,0,0,0,3948,3949,1,0,0,0,3949,3951,1,0,0,0,3950,3952,3,294,147,0,3951,3950,1,0,0,0,3951,3952,1,0,0,0,3952,3954,1,0,0,0,3953,3955,3,256,128,0,3954,3953,1,0,0,0,3954,3955,1,0,0,0,3955,253,1,0,0,0,3956,3958,5,180,0,0,3957,3959,7,44,0,0,3958,3957,1,0,0,0,3958,3959,1,0,0,0,3959,3960,1,0,0,0,3960,3961,3,248,124,0,3961,255,1,0,0,0,3962,3964,5,180,0,0,3963,3965,7,44,0,0,3964,3963,1,0,0,0,3964,3965,1,0,0,0,3965,3968,1,0,0,0,3966,3969,3,252,126,0,3967,3969,3,248,124,0,3968,3966,1,0,0,0,3968,3967,1,0,0,0,3969,257,1,0,0,0,3970,3985,5,94,0,0,3971,3986,3,252,126,0,3972,3986,3,248,124,0,3973,3976,5,1133,0,0,3974,3977,3,252,126,0,3975,3977,3,248,124,0,3976,3974,1,0,0,0,3976,3975,1,0,0,0,3977,3978,1,0,0,0,3978,3983,5,1134,0,0,3979,3981,5,12,0,0,3980,3979,1,0,0,0,3980,3981,1,0,0,0,3981,3982,1,0,0,0,3982,3984,3,612,306,0,3983,3980,1,0,0,0,3983,3984,1,0,0,0,3984,3986,1,0,0,0,3985,3971,1,0,0,0,3985,3972,1,0,0,0,3985,3973,1,0,0,0,3986,259,1,0,0,0,3987,3988,5,278,0,0,3988,3989,5,1133,0,0,3989,3990,5,1148,0,0,3990,3991,5,1135,0,0,3991,3992,5,1148,0,0,3992,3993,5,365,0,0,3993,3994,5,1133,0,0,3994,3995,3,262,131,0,3995,3996,5,1134,0,0,3996,4001,5,1134,0,0,3997,3999,5,12,0,0,3998,3997,1,0,0,0,3998,3999,1,0,0,0,3999,4e3,1,0,0,0,4e3,4002,3,612,306,0,4001,3998,1,0,0,0,4001,4002,1,0,0,0,4002,261,1,0,0,0,4003,4008,3,264,132,0,4004,4005,5,1135,0,0,4005,4007,3,264,132,0,4006,4004,1,0,0,0,4007,4010,1,0,0,0,4008,4006,1,0,0,0,4008,4009,1,0,0,0,4009,263,1,0,0,0,4010,4008,1,0,0,0,4011,4028,3,570,285,0,4012,4013,5,65,0,0,4013,4029,5,284,0,0,4014,4026,3,632,316,0,4015,4016,5,285,0,0,4016,4018,5,1148,0,0,4017,4019,3,266,133,0,4018,4017,1,0,0,0,4018,4019,1,0,0,0,4019,4021,1,0,0,0,4020,4022,3,268,134,0,4021,4020,1,0,0,0,4021,4022,1,0,0,0,4022,4027,1,0,0,0,4023,4024,5,60,0,0,4024,4025,5,285,0,0,4025,4027,5,1148,0,0,4026,4015,1,0,0,0,4026,4023,1,0,0,0,4027,4029,1,0,0,0,4028,4012,1,0,0,0,4028,4014,1,0,0,0,4029,4041,1,0,0,0,4030,4032,5,283,0,0,4031,4033,5,285,0,0,4032,4031,1,0,0,0,4032,4033,1,0,0,0,4033,4034,1,0,0,0,4034,4035,5,1148,0,0,4035,4036,5,365,0,0,4036,4037,5,1133,0,0,4037,4038,3,262,131,0,4038,4039,5,1134,0,0,4039,4041,1,0,0,0,4040,4011,1,0,0,0,4040,4030,1,0,0,0,4041,265,1,0,0,0,4042,4047,5,116,0,0,4043,4047,5,411,0,0,4044,4045,5,42,0,0,4045,4047,3,662,331,0,4046,4042,1,0,0,0,4046,4043,1,0,0,0,4046,4044,1,0,0,0,4047,4048,1,0,0,0,4048,4049,5,118,0,0,4049,4050,5,55,0,0,4050,267,1,0,0,0,4051,4056,5,116,0,0,4052,4056,5,411,0,0,4053,4054,5,42,0,0,4054,4056,3,662,331,0,4055,4051,1,0,0,0,4055,4052,1,0,0,0,4055,4053,1,0,0,0,4056,4057,1,0,0,0,4057,4058,5,118,0,0,4058,4059,5,411,0,0,4059,269,1,0,0,0,4060,4069,7,52,0,0,4061,4069,5,75,0,0,4062,4069,5,171,0,0,4063,4069,5,166,0,0,4064,4069,5,164,0,0,4065,4069,5,625,0,0,4066,4069,7,53,0,0,4067,4069,5,165,0,0,4068,4060,1,0,0,0,4068,4061,1,0,0,0,4068,4062,1,0,0,0,4068,4063,1,0,0,0,4068,4064,1,0,0,0,4068,4065,1,0,0,0,4068,4066,1,0,0,0,4068,4067,1,0,0,0,4069,271,1,0,0,0,4070,4073,5,1117,0,0,4071,4073,3,276,138,0,4072,4070,1,0,0,0,4072,4071,1,0,0,0,4073,4078,1,0,0,0,4074,4075,5,1135,0,0,4075,4077,3,276,138,0,4076,4074,1,0,0,0,4077,4080,1,0,0,0,4078,4076,1,0,0,0,4078,4079,1,0,0,0,4079,273,1,0,0,0,4080,4078,1,0,0,0,4081,4083,5,12,0,0,4082,4081,1,0,0,0,4082,4083,1,0,0,0,4083,4084,1,0,0,0,4084,4085,3,612,306,0,4085,275,1,0,0,0,4086,4087,3,552,276,0,4087,4088,5,1132,0,0,4088,4089,5,1117,0,0,4089,4107,1,0,0,0,4090,4092,3,570,285,0,4091,4093,3,274,137,0,4092,4091,1,0,0,0,4092,4093,1,0,0,0,4093,4107,1,0,0,0,4094,4096,3,676,338,0,4095,4097,3,274,137,0,4096,4095,1,0,0,0,4096,4097,1,0,0,0,4097,4107,1,0,0,0,4098,4099,5,1159,0,0,4099,4101,5,1108,0,0,4100,4098,1,0,0,0,4100,4101,1,0,0,0,4101,4102,1,0,0,0,4102,4104,3,716,358,0,4103,4105,3,274,137,0,4104,4103,1,0,0,0,4104,4105,1,0,0,0,4105,4107,1,0,0,0,4106,4086,1,0,0,0,4106,4090,1,0,0,0,4106,4094,1,0,0,0,4106,4100,1,0,0,0,4107,277,1,0,0,0,4108,4109,5,87,0,0,4109,4114,3,208,104,0,4110,4111,5,1135,0,0,4111,4113,3,208,104,0,4112,4110,1,0,0,0,4113,4116,1,0,0,0,4114,4112,1,0,0,0,4114,4115,1,0,0,0,4115,4145,1,0,0,0,4116,4114,1,0,0,0,4117,4118,5,87,0,0,4118,4119,5,400,0,0,4119,4145,5,1148,0,0,4120,4121,5,87,0,0,4121,4122,5,127,0,0,4122,4126,5,1148,0,0,4123,4124,5,25,0,0,4124,4125,5,153,0,0,4125,4127,3,596,298,0,4126,4123,1,0,0,0,4126,4127,1,0,0,0,4127,4134,1,0,0,0,4128,4130,7,41,0,0,4129,4131,3,280,140,0,4130,4129,1,0,0,0,4131,4132,1,0,0,0,4132,4130,1,0,0,0,4132,4133,1,0,0,0,4133,4135,1,0,0,0,4134,4128,1,0,0,0,4134,4135,1,0,0,0,4135,4142,1,0,0,0,4136,4138,5,101,0,0,4137,4139,3,282,141,0,4138,4137,1,0,0,0,4139,4140,1,0,0,0,4140,4138,1,0,0,0,4140,4141,1,0,0,0,4141,4143,1,0,0,0,4142,4136,1,0,0,0,4142,4143,1,0,0,0,4143,4145,1,0,0,0,4144,4108,1,0,0,0,4144,4117,1,0,0,0,4144,4120,1,0,0,0,4145,279,1,0,0,0,4146,4147,5,173,0,0,4147,4148,5,19,0,0,4148,4159,5,1148,0,0,4149,4151,5,122,0,0,4150,4149,1,0,0,0,4150,4151,1,0,0,0,4151,4152,1,0,0,0,4152,4153,5,56,0,0,4153,4154,5,19,0,0,4154,4159,5,1148,0,0,4155,4156,5,58,0,0,4156,4157,5,19,0,0,4157,4159,5,1148,0,0,4158,4146,1,0,0,0,4158,4150,1,0,0,0,4158,4155,1,0,0,0,4159,281,1,0,0,0,4160,4161,5,169,0,0,4161,4162,5,19,0,0,4162,4167,5,1148,0,0,4163,4164,5,173,0,0,4164,4165,5,19,0,0,4165,4167,5,1148,0,0,4166,4160,1,0,0,0,4166,4163,1,0,0,0,4167,283,1,0,0,0,4168,4169,5,68,0,0,4169,4171,3,232,116,0,4170,4168,1,0,0,0,4170,4171,1,0,0,0,4171,4174,1,0,0,0,4172,4173,5,190,0,0,4173,4175,3,716,358,0,4174,4172,1,0,0,0,4174,4175,1,0,0,0,4175,285,1,0,0,0,4176,4177,5,73,0,0,4177,4178,5,19,0,0,4178,4183,3,292,146,0,4179,4180,5,1135,0,0,4180,4182,3,292,146,0,4181,4179,1,0,0,0,4182,4185,1,0,0,0,4183,4181,1,0,0,0,4183,4184,1,0,0,0,4184,4188,1,0,0,0,4185,4183,1,0,0,0,4186,4187,5,192,0,0,4187,4189,5,598,0,0,4188,4186,1,0,0,0,4188,4189,1,0,0,0,4189,287,1,0,0,0,4190,4191,5,74,0,0,4191,4192,3,716,358,0,4192,289,1,0,0,0,4193,4194,5,676,0,0,4194,4195,3,694,347,0,4195,4196,5,12,0,0,4196,4197,5,1133,0,0,4197,4198,3,692,346,0,4198,4208,5,1134,0,0,4199,4200,5,1135,0,0,4200,4201,3,694,347,0,4201,4202,5,12,0,0,4202,4203,5,1133,0,0,4203,4204,3,692,346,0,4204,4205,5,1134,0,0,4205,4207,1,0,0,0,4206,4199,1,0,0,0,4207,4210,1,0,0,0,4208,4206,1,0,0,0,4208,4209,1,0,0,0,4209,291,1,0,0,0,4210,4208,1,0,0,0,4211,4213,3,716,358,0,4212,4214,7,48,0,0,4213,4212,1,0,0,0,4213,4214,1,0,0,0,4214,293,1,0,0,0,4215,4226,5,99,0,0,4216,4217,3,296,148,0,4217,4218,5,1135,0,0,4218,4220,1,0,0,0,4219,4216,1,0,0,0,4219,4220,1,0,0,0,4220,4221,1,0,0,0,4221,4227,3,296,148,0,4222,4223,3,296,148,0,4223,4224,5,532,0,0,4224,4225,3,296,148,0,4225,4227,1,0,0,0,4226,4219,1,0,0,0,4226,4222,1,0,0,0,4227,295,1,0,0,0,4228,4232,3,618,309,0,4229,4232,3,594,297,0,4230,4232,3,614,307,0,4231,4228,1,0,0,0,4231,4229,1,0,0,0,4231,4230,1,0,0,0,4232,297,1,0,0,0,4233,4234,5,629,0,0,4234,4243,5,653,0,0,4235,4240,3,320,160,0,4236,4237,5,1135,0,0,4237,4239,3,320,160,0,4238,4236,1,0,0,0,4239,4242,1,0,0,0,4240,4238,1,0,0,0,4240,4241,1,0,0,0,4241,4244,1,0,0,0,4242,4240,1,0,0,0,4243,4235,1,0,0,0,4243,4244,1,0,0,0,4244,299,1,0,0,0,4245,4247,5,344,0,0,4246,4248,5,678,0,0,4247,4246,1,0,0,0,4247,4248,1,0,0,0,4248,301,1,0,0,0,4249,4251,5,369,0,0,4250,4252,5,678,0,0,4251,4250,1,0,0,0,4251,4252,1,0,0,0,4252,4258,1,0,0,0,4253,4255,5,10,0,0,4254,4256,5,521,0,0,4255,4254,1,0,0,0,4255,4256,1,0,0,0,4256,4257,1,0,0,0,4257,4259,5,353,0,0,4258,4253,1,0,0,0,4258,4259,1,0,0,0,4259,4264,1,0,0,0,4260,4262,5,521,0,0,4261,4260,1,0,0,0,4261,4262,1,0,0,0,4262,4263,1,0,0,0,4263,4265,5,138,0,0,4264,4261,1,0,0,0,4264,4265,1,0,0,0,4265,303,1,0,0,0,4266,4268,5,597,0,0,4267,4269,5,678,0,0,4268,4267,1,0,0,0,4268,4269,1,0,0,0,4269,4275,1,0,0,0,4270,4272,5,10,0,0,4271,4273,5,521,0,0,4272,4271,1,0,0,0,4272,4273,1,0,0,0,4273,4274,1,0,0,0,4274,4276,5,353,0,0,4275,4270,1,0,0,0,4275,4276,1,0,0,0,4276,4281,1,0,0,0,4277,4279,5,521,0,0,4278,4277,1,0,0,0,4278,4279,1,0,0,0,4279,4280,1,0,0,0,4280,4282,5,138,0,0,4281,4278,1,0,0,0,4281,4282,1,0,0,0,4282,305,1,0,0,0,4283,4284,5,604,0,0,4284,4285,3,612,306,0,4285,307,1,0,0,0,4286,4288,5,597,0,0,4287,4289,5,678,0,0,4288,4287,1,0,0,0,4288,4289,1,0,0,0,4289,4290,1,0,0,0,4290,4292,5,175,0,0,4291,4293,5,604,0,0,4292,4291,1,0,0,0,4292,4293,1,0,0,0,4293,4294,1,0,0,0,4294,4295,3,612,306,0,4295,309,1,0,0,0,4296,4297,5,138,0,0,4297,4298,5,604,0,0,4298,4299,3,612,306,0,4299,311,1,0,0,0,4300,4301,5,103,0,0,4301,4302,7,54,0,0,4302,4307,3,322,161,0,4303,4304,5,1135,0,0,4304,4306,3,322,161,0,4305,4303,1,0,0,0,4306,4309,1,0,0,0,4307,4305,1,0,0,0,4307,4308,1,0,0,0,4308,4311,1,0,0,0,4309,4307,1,0,0,0,4310,4312,3,674,337,0,4311,4310,1,0,0,0,4311,4312,1,0,0,0,4312,313,1,0,0,0,4313,4314,5,182,0,0,4314,4315,5,742,0,0,4315,315,1,0,0,0,4316,4317,5,153,0,0,4317,4318,5,340,0,0,4318,4319,5,1124,0,0,4319,4320,7,24,0,0,4320,317,1,0,0,0,4321,4323,5,153,0,0,4322,4324,7,55,0,0,4323,4322,1,0,0,0,4323,4324,1,0,0,0,4324,4325,1,0,0,0,4325,4326,5,653,0,0,4326,4331,3,326,163,0,4327,4328,5,1135,0,0,4328,4330,3,326,163,0,4329,4327,1,0,0,0,4330,4333,1,0,0,0,4331,4329,1,0,0,0,4331,4332,1,0,0,0,4332,319,1,0,0,0,4333,4331,1,0,0,0,4334,4335,5,192,0,0,4335,4336,5,377,0,0,4336,4342,5,616,0,0,4337,4338,5,134,0,0,4338,4342,5,193,0,0,4339,4340,5,134,0,0,4340,4342,5,538,0,0,4341,4334,1,0,0,0,4341,4337,1,0,0,0,4341,4339,1,0,0,0,4342,321,1,0,0,0,4343,4348,3,554,277,0,4344,4346,5,12,0,0,4345,4344,1,0,0,0,4345,4346,1,0,0,0,4346,4347,1,0,0,0,4347,4349,3,612,306,0,4348,4345,1,0,0,0,4348,4349,1,0,0,0,4349,4350,1,0,0,0,4350,4351,3,324,162,0,4351,323,1,0,0,0,4352,4354,5,134,0,0,4353,4355,5,474,0,0,4354,4353,1,0,0,0,4354,4355,1,0,0,0,4355,4361,1,0,0,0,4356,4358,5,106,0,0,4357,4356,1,0,0,0,4357,4358,1,0,0,0,4358,4359,1,0,0,0,4359,4361,5,193,0,0,4360,4352,1,0,0,0,4360,4357,1,0,0,0,4361,325,1,0,0,0,4362,4363,5,464,0,0,4363,4364,5,472,0,0,4364,4370,3,328,164,0,4365,4366,5,134,0,0,4366,4370,5,193,0,0,4367,4368,5,134,0,0,4368,4370,5,538,0,0,4369,4362,1,0,0,0,4369,4365,1,0,0,0,4369,4367,1,0,0,0,4370,327,1,0,0,0,4371,4372,5,799,0,0,4372,4379,5,134,0,0,4373,4374,5,134,0,0,4374,4379,5,800,0,0,4375,4376,5,134,0,0,4376,4379,5,801,0,0,4377,4379,5,802,0,0,4378,4371,1,0,0,0,4378,4373,1,0,0,0,4378,4375,1,0,0,0,4378,4377,1,0,0,0,4379,329,1,0,0,0,4380,4381,5,24,0,0,4381,4382,5,477,0,0,4382,4383,5,175,0,0,4383,4388,3,348,174,0,4384,4385,5,1135,0,0,4385,4387,3,348,174,0,4386,4384,1,0,0,0,4387,4390,1,0,0,0,4388,4386,1,0,0,0,4388,4389,1,0,0,0,4389,4392,1,0,0,0,4390,4388,1,0,0,0,4391,4393,3,356,178,0,4392,4391,1,0,0,0,4392,4393,1,0,0,0,4393,331,1,0,0,0,4394,4395,5,24,0,0,4395,4396,5,588,0,0,4396,4397,5,429,0,0,4397,4402,3,358,179,0,4398,4399,5,1135,0,0,4399,4401,3,358,179,0,4400,4398,1,0,0,0,4401,4404,1,0,0,0,4402,4400,1,0,0,0,4402,4403,1,0,0,0,4403,333,1,0,0,0,4404,4402,1,0,0,0,4405,4406,5,132,0,0,4406,4407,7,56,0,0,4407,4412,5,476,0,0,4408,4409,5,175,0,0,4409,4413,5,1148,0,0,4410,4411,5,15,0,0,4411,4413,5,1148,0,0,4412,4408,1,0,0,0,4412,4410,1,0,0,0,4413,335,1,0,0,0,4414,4415,5,589,0,0,4415,4416,5,477,0,0,4416,337,1,0,0,0,4417,4418,5,589,0,0,4418,4420,5,614,0,0,4419,4421,5,6,0,0,4420,4419,1,0,0,0,4420,4421,1,0,0,0,4421,4423,1,0,0,0,4422,4424,3,356,178,0,4423,4422,1,0,0,0,4423,4424,1,0,0,0,4424,339,1,0,0,0,4425,4426,5,629,0,0,4426,4435,5,614,0,0,4427,4432,3,362,181,0,4428,4429,5,1135,0,0,4429,4431,3,362,181,0,4430,4428,1,0,0,0,4431,4434,1,0,0,0,4432,4430,1,0,0,0,4432,4433,1,0,0,0,4433,4436,1,0,0,0,4434,4432,1,0,0,0,4435,4427,1,0,0,0,4435,4436,1,0,0,0,4436,4439,1,0,0,0,4437,4438,5,663,0,0,4438,4440,3,364,182,0,4439,4437,1,0,0,0,4439,4440,1,0,0,0,4440,4444,1,0,0,0,4441,4443,3,366,183,0,4442,4441,1,0,0,0,4443,4446,1,0,0,0,4444,4442,1,0,0,0,4444,4445,1,0,0,0,4445,4448,1,0,0,0,4446,4444,1,0,0,0,4447,4449,3,356,178,0,4448,4447,1,0,0,0,4448,4449,1,0,0,0,4449,341,1,0,0,0,4450,4451,5,635,0,0,4451,4460,5,614,0,0,4452,4457,3,362,181,0,4453,4454,5,1135,0,0,4454,4456,3,362,181,0,4455,4453,1,0,0,0,4456,4459,1,0,0,0,4457,4455,1,0,0,0,4457,4458,1,0,0,0,4458,4461,1,0,0,0,4459,4457,1,0,0,0,4460,4452,1,0,0,0,4460,4461,1,0,0,0,4461,343,1,0,0,0,4462,4463,5,629,0,0,4463,4464,5,441,0,0,4464,345,1,0,0,0,4465,4466,5,635,0,0,4466,4467,5,441,0,0,4467,347,1,0,0,0,4468,4469,3,350,175,0,4469,4470,5,1124,0,0,4470,4471,5,1148,0,0,4471,4498,1,0,0,0,4472,4473,3,352,176,0,4473,4474,5,1124,0,0,4474,4475,3,618,309,0,4475,4498,1,0,0,0,4476,4477,3,354,177,0,4477,4478,5,1124,0,0,4478,4479,7,24,0,0,4479,4498,1,0,0,0,4480,4481,5,481,0,0,4481,4482,5,1124,0,0,4482,4498,5,1151,0,0,4483,4484,5,449,0,0,4484,4485,5,1124,0,0,4485,4494,5,1133,0,0,4486,4491,3,612,306,0,4487,4488,5,1135,0,0,4488,4490,3,612,306,0,4489,4487,1,0,0,0,4490,4493,1,0,0,0,4491,4489,1,0,0,0,4491,4492,1,0,0,0,4492,4495,1,0,0,0,4493,4491,1,0,0,0,4494,4486,1,0,0,0,4494,4495,1,0,0,0,4495,4496,1,0,0,0,4496,4498,5,1134,0,0,4497,4468,1,0,0,0,4497,4472,1,0,0,0,4497,4476,1,0,0,0,4497,4480,1,0,0,0,4497,4483,1,0,0,0,4498,349,1,0,0,0,4499,4500,7,57,0,0,4500,351,1,0,0,0,4501,4502,7,58,0,0,4502,353,1,0,0,0,4503,4504,7,59,0,0,4504,355,1,0,0,0,4505,4506,5,65,0,0,4506,4507,5,355,0,0,4507,4508,5,1148,0,0,4508,357,1,0,0,0,4509,4510,5,581,0,0,4510,4511,5,1124,0,0,4511,4512,5,1133,0,0,4512,4513,3,644,322,0,4513,4514,5,1134,0,0,4514,4559,1,0,0,0,4515,4516,5,583,0,0,4516,4517,5,1124,0,0,4517,4518,5,1133,0,0,4518,4519,3,644,322,0,4519,4520,5,1134,0,0,4520,4559,1,0,0,0,4521,4522,5,582,0,0,4522,4523,5,1124,0,0,4523,4524,5,1133,0,0,4524,4525,3,648,324,0,4525,4526,5,1134,0,0,4526,4559,1,0,0,0,4527,4528,5,584,0,0,4528,4529,5,1124,0,0,4529,4530,5,1133,0,0,4530,4531,3,648,324,0,4531,4532,5,1134,0,0,4532,4559,1,0,0,0,4533,4534,5,586,0,0,4534,4535,5,1124,0,0,4535,4536,5,1133,0,0,4536,4537,3,658,329,0,4537,4538,5,1134,0,0,4538,4559,1,0,0,0,4539,4540,5,587,0,0,4540,4541,5,1124,0,0,4541,4542,5,1133,0,0,4542,4543,3,658,329,0,4543,4544,5,1134,0,0,4544,4559,1,0,0,0,4545,4546,5,585,0,0,4546,4547,5,1124,0,0,4547,4548,5,1133,0,0,4548,4553,3,360,180,0,4549,4550,5,1135,0,0,4550,4552,3,360,180,0,4551,4549,1,0,0,0,4552,4555,1,0,0,0,4553,4551,1,0,0,0,4553,4554,1,0,0,0,4554,4556,1,0,0,0,4555,4553,1,0,0,0,4556,4557,5,1134,0,0,4557,4559,1,0,0,0,4558,4509,1,0,0,0,4558,4515,1,0,0,0,4558,4521,1,0,0,0,4558,4527,1,0,0,0,4558,4533,1,0,0,0,4558,4539,1,0,0,0,4558,4545,1,0,0,0,4559,359,1,0,0,0,4560,4561,5,1133,0,0,4561,4562,3,554,277,0,4562,4563,5,1135,0,0,4563,4564,3,554,277,0,4564,4565,5,1134,0,0,4565,361,1,0,0,0,4566,4567,7,60,0,0,4567,363,1,0,0,0,4568,4569,7,61,0,0,4569,4570,5,1124,0,0,4570,4587,3,368,184,0,4571,4572,5,483,0,0,4572,4573,5,1124,0,0,4573,4574,5,1148,0,0,4574,4575,5,1135,0,0,4575,4576,5,484,0,0,4576,4577,5,1124,0,0,4577,4587,3,618,309,0,4578,4579,5,575,0,0,4579,4580,5,1124,0,0,4580,4581,5,1148,0,0,4581,4582,5,1135,0,0,4582,4583,5,576,0,0,4583,4584,5,1124,0,0,4584,4587,3,618,309,0,4585,4587,5,623,0,0,4586,4568,1,0,0,0,4586,4571,1,0,0,0,4586,4578,1,0,0,0,4586,4585,1,0,0,0,4587,365,1,0,0,0,4588,4589,5,665,0,0,4589,4590,5,1124,0,0,4590,4601,5,1148,0,0,4591,4592,5,551,0,0,4592,4593,5,1124,0,0,4593,4601,5,1148,0,0,4594,4595,5,391,0,0,4595,4596,5,1124,0,0,4596,4601,5,1148,0,0,4597,4598,5,555,0,0,4598,4599,5,1124,0,0,4599,4601,5,1148,0,0,4600,4588,1,0,0,0,4600,4591,1,0,0,0,4600,4594,1,0,0,0,4600,4597,1,0,0,0,4601,367,1,0,0,0,4602,4607,3,604,302,0,4603,4604,5,1135,0,0,4604,4606,3,604,302,0,4605,4603,1,0,0,0,4606,4609,1,0,0,0,4607,4605,1,0,0,0,4607,4608,1,0,0,0,4608,4612,1,0,0,0,4609,4607,1,0,0,0,4610,4612,5,1148,0,0,4611,4602,1,0,0,0,4611,4610,1,0,0,0,4612,369,1,0,0,0,4613,4614,5,681,0,0,4614,4615,7,62,0,0,4615,4617,3,606,303,0,4616,4618,7,63,0,0,4617,4616,1,0,0,0,4617,4618,1,0,0,0,4618,371,1,0,0,0,4619,4620,5,681,0,0,4620,4621,5,407,0,0,4621,4627,3,606,303,0,4622,4625,5,643,0,0,4623,4624,5,65,0,0,4624,4626,5,509,0,0,4625,4623,1,0,0,0,4625,4626,1,0,0,0,4626,4628,1,0,0,0,4627,4622,1,0,0,0,4627,4628,1,0,0,0,4628,373,1,0,0,0,4629,4630,5,681,0,0,4630,4631,5,560,0,0,4631,4632,3,606,303,0,4632,375,1,0,0,0,4633,4634,5,681,0,0,4634,4635,5,369,0,0,4635,4638,3,606,303,0,4636,4637,5,536,0,0,4637,4639,5,553,0,0,4638,4636,1,0,0,0,4638,4639,1,0,0,0,4639,377,1,0,0,0,4640,4641,5,681,0,0,4641,4642,5,597,0,0,4642,4643,3,606,303,0,4643,379,1,0,0,0,4644,4645,5,681,0,0,4645,4648,5,570,0,0,4646,4647,5,32,0,0,4647,4649,3,606,303,0,4648,4646,1,0,0,0,4648,4649,1,0,0,0,4649,381,1,0,0,0,4650,4651,5,560,0,0,4651,4652,3,612,306,0,4652,4655,5,68,0,0,4653,4656,5,1148,0,0,4654,4656,5,1159,0,0,4655,4653,1,0,0,0,4655,4654,1,0,0,0,4656,383,1,0,0,0,4657,4658,5,708,0,0,4658,4661,3,612,306,0,4659,4660,5,187,0,0,4660,4662,3,660,330,0,4661,4659,1,0,0,0,4661,4662,1,0,0,0,4662,385,1,0,0,0,4663,4664,7,64,0,0,4664,4665,5,560,0,0,4665,4666,3,612,306,0,4666,387,1,0,0,0,4667,4670,3,390,195,0,4668,4670,3,4,2,0,4669,4667,1,0,0,0,4669,4668,1,0,0,0,4670,389,1,0,0,0,4671,4672,3,612,306,0,4672,4673,5,1144,0,0,4673,4675,1,0,0,0,4674,4671,1,0,0,0,4674,4675,1,0,0,0,4675,4676,1,0,0,0,4676,4682,5,344,0,0,4677,4678,3,410,205,0,4678,4679,5,1136,0,0,4679,4681,1,0,0,0,4680,4677,1,0,0,0,4681,4684,1,0,0,0,4682,4680,1,0,0,0,4682,4683,1,0,0,0,4683,4690,1,0,0,0,4684,4682,1,0,0,0,4685,4686,3,412,206,0,4686,4687,5,1136,0,0,4687,4689,1,0,0,0,4688,4685,1,0,0,0,4689,4692,1,0,0,0,4690,4688,1,0,0,0,4690,4691,1,0,0,0,4691,4698,1,0,0,0,4692,4690,1,0,0,0,4693,4694,3,414,207,0,4694,4695,5,1136,0,0,4695,4697,1,0,0,0,4696,4693,1,0,0,0,4697,4700,1,0,0,0,4698,4696,1,0,0,0,4698,4699,1,0,0,0,4699,4706,1,0,0,0,4700,4698,1,0,0,0,4701,4702,3,416,208,0,4702,4703,5,1136,0,0,4703,4705,1,0,0,0,4704,4701,1,0,0,0,4705,4708,1,0,0,0,4706,4704,1,0,0,0,4706,4707,1,0,0,0,4707,4712,1,0,0,0,4708,4706,1,0,0,0,4709,4711,3,420,210,0,4710,4709,1,0,0,0,4711,4714,1,0,0,0,4712,4710,1,0,0,0,4712,4713,1,0,0,0,4713,4715,1,0,0,0,4714,4712,1,0,0,0,4715,4717,5,407,0,0,4716,4718,3,612,306,0,4717,4716,1,0,0,0,4717,4718,1,0,0,0,4718,391,1,0,0,0,4719,4722,5,22,0,0,4720,4723,3,612,306,0,4721,4723,3,716,358,0,4722,4720,1,0,0,0,4722,4721,1,0,0,0,4722,4723,1,0,0,0,4723,4725,1,0,0,0,4724,4726,3,422,211,0,4725,4724,1,0,0,0,4726,4727,1,0,0,0,4727,4725,1,0,0,0,4727,4728,1,0,0,0,4728,4735,1,0,0,0,4729,4731,5,53,0,0,4730,4732,3,420,210,0,4731,4730,1,0,0,0,4732,4733,1,0,0,0,4733,4731,1,0,0,0,4733,4734,1,0,0,0,4734,4736,1,0,0,0,4735,4729,1,0,0,0,4735,4736,1,0,0,0,4736,4737,1,0,0,0,4737,4738,5,407,0,0,4738,4739,5,22,0,0,4739,393,1,0,0,0,4740,4741,5,77,0,0,4741,4742,3,716,358,0,4742,4744,5,174,0,0,4743,4745,3,420,210,0,4744,4743,1,0,0,0,4745,4746,1,0,0,0,4746,4744,1,0,0,0,4746,4747,1,0,0,0,4747,4751,1,0,0,0,4748,4750,3,424,212,0,4749,4748,1,0,0,0,4750,4753,1,0,0,0,4751,4749,1,0,0,0,4751,4752,1,0,0,0,4752,4760,1,0,0,0,4753,4751,1,0,0,0,4754,4756,5,53,0,0,4755,4757,3,420,210,0,4756,4755,1,0,0,0,4757,4758,1,0,0,0,4758,4756,1,0,0,0,4758,4759,1,0,0,0,4759,4761,1,0,0,0,4760,4754,1,0,0,0,4760,4761,1,0,0,0,4761,4762,1,0,0,0,4762,4763,5,407,0,0,4763,4764,5,77,0,0,4764,395,1,0,0,0,4765,4766,5,89,0,0,4766,4767,3,612,306,0,4767,397,1,0,0,0,4768,4769,5,96,0,0,4769,4770,3,612,306,0,4770,399,1,0,0,0,4771,4772,3,612,306,0,4772,4773,5,1144,0,0,4773,4775,1,0,0,0,4774,4771,1,0,0,0,4774,4775,1,0,0,0,4775,4776,1,0,0,0,4776,4778,5,105,0,0,4777,4779,3,420,210,0,4778,4777,1,0,0,0,4779,4780,1,0,0,0,4780,4778,1,0,0,0,4780,4781,1,0,0,0,4781,4782,1,0,0,0,4782,4783,5,407,0,0,4783,4785,5,105,0,0,4784,4786,3,612,306,0,4785,4784,1,0,0,0,4785,4786,1,0,0,0,4786,401,1,0,0,0,4787,4788,3,612,306,0,4788,4789,5,1144,0,0,4789,4791,1,0,0,0,4790,4787,1,0,0,0,4790,4791,1,0,0,0,4791,4792,1,0,0,0,4792,4794,5,140,0,0,4793,4795,3,420,210,0,4794,4793,1,0,0,0,4795,4796,1,0,0,0,4796,4794,1,0,0,0,4796,4797,1,0,0,0,4797,4798,1,0,0,0,4798,4799,5,663,0,0,4799,4800,3,716,358,0,4800,4801,5,407,0,0,4801,4803,5,140,0,0,4802,4804,3,612,306,0,4803,4802,1,0,0,0,4803,4804,1,0,0,0,4804,403,1,0,0,0,4805,4806,5,146,0,0,4806,4807,3,716,358,0,4807,405,1,0,0,0,4808,4809,3,612,306,0,4809,4810,5,1144,0,0,4810,4812,1,0,0,0,4811,4808,1,0,0,0,4811,4812,1,0,0,0,4812,4813,1,0,0,0,4813,4814,5,191,0,0,4814,4815,3,716,358,0,4815,4817,5,399,0,0,4816,4818,3,420,210,0,4817,4816,1,0,0,0,4818,4819,1,0,0,0,4819,4817,1,0,0,0,4819,4820,1,0,0,0,4820,4821,1,0,0,0,4821,4822,5,407,0,0,4822,4824,5,191,0,0,4823,4825,3,612,306,0,4824,4823,1,0,0,0,4824,4825,1,0,0,0,4825,407,1,0,0,0,4826,4827,5,361,0,0,4827,4842,3,612,306,0,4828,4833,5,64,0,0,4829,4831,5,520,0,0,4830,4829,1,0,0,0,4830,4831,1,0,0,0,4831,4832,1,0,0,0,4832,4834,5,68,0,0,4833,4830,1,0,0,0,4833,4834,1,0,0,0,4834,4835,1,0,0,0,4835,4836,3,612,306,0,4836,4837,5,87,0,0,4837,4838,3,644,322,0,4838,4842,1,0,0,0,4839,4840,5,539,0,0,4840,4842,3,612,306,0,4841,4826,1,0,0,0,4841,4828,1,0,0,0,4841,4839,1,0,0,0,4842,409,1,0,0,0,4843,4844,5,41,0,0,4844,4845,3,644,322,0,4845,4848,3,632,316,0,4846,4847,5,42,0,0,4847,4849,3,716,358,0,4848,4846,1,0,0,0,4848,4849,1,0,0,0,4849,411,1,0,0,0,4850,4851,5,41,0,0,4851,4852,3,612,306,0,4852,4853,5,29,0,0,4853,4860,5,65,0,0,4854,4861,3,618,309,0,4855,4857,5,162,0,0,4856,4858,5,669,0,0,4857,4856,1,0,0,0,4857,4858,1,0,0,0,4858,4859,1,0,0,0,4859,4861,5,1148,0,0,4860,4854,1,0,0,0,4860,4855,1,0,0,0,4861,413,1,0,0,0,4862,4863,5,41,0,0,4863,4864,3,612,306,0,4864,4865,5,38,0,0,4865,4866,5,65,0,0,4866,4867,3,198,99,0,4867,415,1,0,0,0,4868,4869,5,41,0,0,4869,4870,7,65,0,0,4870,4871,5,442,0,0,4871,4872,5,65,0,0,4872,4877,3,418,209,0,4873,4874,5,1135,0,0,4874,4876,3,418,209,0,4875,4873,1,0,0,0,4876,4879,1,0,0,0,4877,4875,1,0,0,0,4877,4878,1,0,0,0,4878,4880,1,0,0,0,4879,4877,1,0,0,0,4880,4881,3,388,194,0,4881,417,1,0,0,0,4882,4894,3,618,309,0,4883,4885,5,162,0,0,4884,4886,5,669,0,0,4885,4884,1,0,0,0,4885,4886,1,0,0,0,4886,4887,1,0,0,0,4887,4894,5,1148,0,0,4888,4894,3,612,306,0,4889,4894,5,163,0,0,4890,4891,5,114,0,0,4891,4894,5,435,0,0,4892,4894,5,161,0,0,4893,4882,1,0,0,0,4893,4883,1,0,0,0,4893,4888,1,0,0,0,4893,4889,1,0,0,0,4893,4890,1,0,0,0,4893,4892,1,0,0,0,4894,419,1,0,0,0,4895,4898,3,16,8,0,4896,4898,3,4,2,0,4897,4895,1,0,0,0,4897,4896,1,0,0,0,4898,4899,1,0,0,0,4899,4900,5,1136,0,0,4900,421,1,0,0,0,4901,4904,5,189,0,0,4902,4905,3,630,315,0,4903,4905,3,716,358,0,4904,4902,1,0,0,0,4904,4903,1,0,0,0,4905,4906,1,0,0,0,4906,4908,5,174,0,0,4907,4909,3,420,210,0,4908,4907,1,0,0,0,4909,4910,1,0,0,0,4910,4908,1,0,0,0,4910,4911,1,0,0,0,4911,423,1,0,0,0,4912,4913,5,54,0,0,4913,4914,3,716,358,0,4914,4916,5,174,0,0,4915,4917,3,420,210,0,4916,4915,1,0,0,0,4917,4918,1,0,0,0,4918,4916,1,0,0,0,4918,4919,1,0,0,0,4919,425,1,0,0,0,4920,4921,5,7,0,0,4921,4922,5,665,0,0,4922,4927,3,446,223,0,4923,4924,5,1135,0,0,4924,4926,3,446,223,0,4925,4923,1,0,0,0,4926,4929,1,0,0,0,4927,4925,1,0,0,0,4927,4928,1,0,0,0,4928,4984,1,0,0,0,4929,4927,1,0,0,0,4930,4931,5,7,0,0,4931,4933,5,665,0,0,4932,4934,3,668,334,0,4933,4932,1,0,0,0,4933,4934,1,0,0,0,4934,4935,1,0,0,0,4935,4950,3,448,224,0,4936,4948,5,142,0,0,4937,4949,5,529,0,0,4938,4945,3,456,228,0,4939,4941,5,10,0,0,4940,4939,1,0,0,0,4940,4941,1,0,0,0,4941,4942,1,0,0,0,4942,4944,3,456,228,0,4943,4940,1,0,0,0,4944,4947,1,0,0,0,4945,4943,1,0,0,0,4945,4946,1,0,0,0,4946,4949,1,0,0,0,4947,4945,1,0,0,0,4948,4937,1,0,0,0,4948,4938,1,0,0,0,4949,4951,1,0,0,0,4950,4936,1,0,0,0,4950,4951,1,0,0,0,4951,4958,1,0,0,0,4952,4954,5,192,0,0,4953,4955,3,458,229,0,4954,4953,1,0,0,0,4955,4956,1,0,0,0,4956,4954,1,0,0,0,4956,4957,1,0,0,0,4957,4959,1,0,0,0,4958,4952,1,0,0,0,4958,4959,1,0,0,0,4959,4964,1,0,0,0,4960,4963,3,460,230,0,4961,4963,3,462,231,0,4962,4960,1,0,0,0,4962,4961,1,0,0,0,4963,4966,1,0,0,0,4964,4962,1,0,0,0,4964,4965,1,0,0,0,4965,4971,1,0,0,0,4966,4964,1,0,0,0,4967,4968,5,368,0,0,4968,4972,5,1148,0,0,4969,4970,5,14,0,0,4970,4972,5,1148,0,0,4971,4967,1,0,0,0,4971,4969,1,0,0,0,4971,4972,1,0,0,0,4972,4984,1,0,0,0,4973,4974,5,7,0,0,4974,4976,5,665,0,0,4975,4977,3,668,334,0,4976,4975,1,0,0,0,4976,4977,1,0,0,0,4977,4978,1,0,0,0,4978,4979,3,592,296,0,4979,4980,5,42,0,0,4980,4981,5,596,0,0,4981,4982,3,434,217,0,4982,4984,1,0,0,0,4983,4920,1,0,0,0,4983,4930,1,0,0,0,4983,4973,1,0,0,0,4984,427,1,0,0,0,4985,4986,5,33,0,0,4986,4987,5,665,0,0,4987,5037,3,448,224,0,4988,4989,5,33,0,0,4989,4991,5,665,0,0,4990,4992,3,670,335,0,4991,4990,1,0,0,0,4991,4992,1,0,0,0,4992,4993,1,0,0,0,4993,4997,3,448,224,0,4994,4995,5,42,0,0,4995,4996,5,596,0,0,4996,4998,3,434,217,0,4997,4994,1,0,0,0,4997,4998,1,0,0,0,4998,5013,1,0,0,0,4999,5011,5,142,0,0,5e3,5012,5,529,0,0,5001,5008,3,456,228,0,5002,5004,5,10,0,0,5003,5002,1,0,0,0,5003,5004,1,0,0,0,5004,5005,1,0,0,0,5005,5007,3,456,228,0,5006,5003,1,0,0,0,5007,5010,1,0,0,0,5008,5006,1,0,0,0,5008,5009,1,0,0,0,5009,5012,1,0,0,0,5010,5008,1,0,0,0,5011,5e3,1,0,0,0,5011,5001,1,0,0,0,5012,5014,1,0,0,0,5013,4999,1,0,0,0,5013,5014,1,0,0,0,5014,5021,1,0,0,0,5015,5017,5,192,0,0,5016,5018,3,458,229,0,5017,5016,1,0,0,0,5018,5019,1,0,0,0,5019,5017,1,0,0,0,5019,5020,1,0,0,0,5020,5022,1,0,0,0,5021,5015,1,0,0,0,5021,5022,1,0,0,0,5022,5027,1,0,0,0,5023,5026,3,460,230,0,5024,5026,3,462,231,0,5025,5023,1,0,0,0,5025,5024,1,0,0,0,5026,5029,1,0,0,0,5027,5025,1,0,0,0,5027,5028,1,0,0,0,5028,5034,1,0,0,0,5029,5027,1,0,0,0,5030,5031,5,368,0,0,5031,5035,5,1148,0,0,5032,5033,5,14,0,0,5033,5035,5,1148,0,0,5034,5030,1,0,0,0,5034,5032,1,0,0,0,5034,5035,1,0,0,0,5035,5037,1,0,0,0,5036,4985,1,0,0,0,5036,4988,1,0,0,0,5037,429,1,0,0,0,5038,5039,5,51,0,0,5039,5041,5,665,0,0,5040,5042,3,668,334,0,5041,5040,1,0,0,0,5041,5042,1,0,0,0,5042,5043,1,0,0,0,5043,5044,3,588,294,0,5044,431,1,0,0,0,5045,5046,5,72,0,0,5046,5051,3,464,232,0,5047,5048,5,1135,0,0,5048,5050,3,464,232,0,5049,5047,1,0,0,0,5050,5053,1,0,0,0,5051,5049,1,0,0,0,5051,5052,1,0,0,0,5052,5054,1,0,0,0,5053,5051,1,0,0,0,5054,5056,5,118,0,0,5055,5057,7,66,0,0,5056,5055,1,0,0,0,5056,5057,1,0,0,0,5057,5058,1,0,0,0,5058,5059,3,468,234,0,5059,5060,5,175,0,0,5060,5075,3,560,280,0,5061,5073,5,142,0,0,5062,5074,5,529,0,0,5063,5070,3,456,228,0,5064,5066,5,10,0,0,5065,5064,1,0,0,0,5065,5066,1,0,0,0,5066,5067,1,0,0,0,5067,5069,3,456,228,0,5068,5065,1,0,0,0,5069,5072,1,0,0,0,5070,5068,1,0,0,0,5070,5071,1,0,0,0,5071,5074,1,0,0,0,5072,5070,1,0,0,0,5073,5062,1,0,0,0,5073,5063,1,0,0,0,5074,5076,1,0,0,0,5075,5061,1,0,0,0,5075,5076,1,0,0,0,5076,5086,1,0,0,0,5077,5083,5,192,0,0,5078,5079,5,72,0,0,5079,5082,5,120,0,0,5080,5082,3,458,229,0,5081,5078,1,0,0,0,5081,5080,1,0,0,0,5082,5085,1,0,0,0,5083,5081,1,0,0,0,5083,5084,1,0,0,0,5084,5087,1,0,0,0,5085,5083,1,0,0,0,5086,5077,1,0,0,0,5086,5087,1,0,0,0,5087,5094,1,0,0,0,5088,5089,5,12,0,0,5089,5090,3,592,296,0,5090,5091,5,192,0,0,5091,5092,5,596,0,0,5092,5093,3,434,217,0,5093,5095,1,0,0,0,5094,5088,1,0,0,0,5094,5095,1,0,0,0,5095,5106,1,0,0,0,5096,5097,5,72,0,0,5097,5098,3,566,283,0,5098,5099,5,175,0,0,5099,5103,3,560,280,0,5100,5101,5,192,0,0,5101,5102,5,697,0,0,5102,5104,5,120,0,0,5103,5100,1,0,0,0,5103,5104,1,0,0,0,5104,5106,1,0,0,0,5105,5045,1,0,0,0,5105,5096,1,0,0,0,5106,433,1,0,0,0,5107,5116,5,42,0,0,5108,5116,5,529,0,0,5109,5112,5,6,0,0,5110,5111,5,59,0,0,5111,5113,3,566,283,0,5112,5110,1,0,0,0,5112,5113,1,0,0,0,5113,5116,1,0,0,0,5114,5116,3,566,283,0,5115,5107,1,0,0,0,5115,5108,1,0,0,0,5115,5109,1,0,0,0,5115,5114,1,0,0,0,5116,435,1,0,0,0,5117,5118,5,72,0,0,5118,5119,5,566,0,0,5119,5120,5,118,0,0,5120,5121,3,592,296,0,5121,5122,5,175,0,0,5122,5127,3,592,296,0,5123,5124,5,1135,0,0,5124,5126,3,592,296,0,5125,5123,1,0,0,0,5126,5129,1,0,0,0,5127,5125,1,0,0,0,5127,5128,1,0,0,0,5128,5133,1,0,0,0,5129,5127,1,0,0,0,5130,5131,5,192,0,0,5131,5132,5,72,0,0,5132,5134,5,120,0,0,5133,5130,1,0,0,0,5133,5134,1,0,0,0,5134,437,1,0,0,0,5135,5136,5,139,0,0,5136,5137,5,665,0,0,5137,5142,3,470,235,0,5138,5139,5,1135,0,0,5139,5141,3,470,235,0,5140,5138,1,0,0,0,5141,5144,1,0,0,0,5142,5140,1,0,0,0,5142,5143,1,0,0,0,5143,439,1,0,0,0,5144,5142,1,0,0,0,5145,5146,5,147,0,0,5146,5151,3,464,232,0,5147,5148,5,1135,0,0,5148,5150,3,464,232,0,5149,5147,1,0,0,0,5150,5153,1,0,0,0,5151,5149,1,0,0,0,5151,5152,1,0,0,0,5152,5154,1,0,0,0,5153,5151,1,0,0,0,5154,5156,5,118,0,0,5155,5157,7,66,0,0,5156,5155,1,0,0,0,5156,5157,1,0,0,0,5157,5158,1,0,0,0,5158,5159,3,468,234,0,5159,5160,5,68,0,0,5160,5161,3,560,280,0,5161,5182,1,0,0,0,5162,5163,5,147,0,0,5163,5165,5,6,0,0,5164,5166,5,725,0,0,5165,5164,1,0,0,0,5165,5166,1,0,0,0,5166,5167,1,0,0,0,5167,5168,5,1135,0,0,5168,5169,5,72,0,0,5169,5170,5,120,0,0,5170,5171,5,68,0,0,5171,5182,3,560,280,0,5172,5173,5,147,0,0,5173,5174,3,566,283,0,5174,5178,5,68,0,0,5175,5177,3,560,280,0,5176,5175,1,0,0,0,5177,5180,1,0,0,0,5178,5176,1,0,0,0,5178,5179,1,0,0,0,5179,5182,1,0,0,0,5180,5178,1,0,0,0,5181,5145,1,0,0,0,5181,5162,1,0,0,0,5181,5172,1,0,0,0,5182,441,1,0,0,0,5183,5184,5,147,0,0,5184,5185,5,566,0,0,5185,5186,5,118,0,0,5186,5187,3,592,296,0,5187,5188,5,68,0,0,5188,5193,3,592,296,0,5189,5190,5,1135,0,0,5190,5192,3,592,296,0,5191,5189,1,0,0,0,5192,5195,1,0,0,0,5193,5191,1,0,0,0,5193,5194,1,0,0,0,5194,443,1,0,0,0,5195,5193,1,0,0,0,5196,5197,5,153,0,0,5197,5200,5,551,0,0,5198,5199,5,65,0,0,5199,5201,3,592,296,0,5200,5198,1,0,0,0,5200,5201,1,0,0,0,5201,5202,1,0,0,0,5202,5205,5,1124,0,0,5203,5206,3,710,355,0,5204,5206,5,1148,0,0,5205,5203,1,0,0,0,5205,5204,1,0,0,0,5206,445,1,0,0,0,5207,5208,3,592,296,0,5208,5209,3,460,230,0,5209,447,1,0,0,0,5210,5215,3,450,225,0,5211,5212,5,1135,0,0,5212,5214,3,450,225,0,5213,5211,1,0,0,0,5214,5217,1,0,0,0,5215,5213,1,0,0,0,5215,5216,1,0,0,0,5216,449,1,0,0,0,5217,5215,1,0,0,0,5218,5219,3,590,295,0,5219,5220,5,448,0,0,5220,5221,5,19,0,0,5221,5222,5,551,0,0,5222,5223,5,1148,0,0,5223,5244,1,0,0,0,5224,5225,3,590,295,0,5225,5226,5,448,0,0,5226,5227,5,19,0,0,5227,5228,5,991,0,0,5228,5229,5,551,0,0,5229,5230,3,452,226,0,5230,5244,1,0,0,0,5231,5232,3,590,295,0,5232,5233,5,448,0,0,5233,5234,5,19,0,0,5234,5235,5,1148,0,0,5235,5236,3,452,226,0,5236,5244,1,0,0,0,5237,5238,3,590,295,0,5238,5239,5,448,0,0,5239,5240,5,192,0,0,5240,5241,3,454,227,0,5241,5244,1,0,0,0,5242,5244,3,590,295,0,5243,5218,1,0,0,0,5243,5224,1,0,0,0,5243,5231,1,0,0,0,5243,5237,1,0,0,0,5243,5242,1,0,0,0,5244,451,1,0,0,0,5245,5246,5,141,0,0,5246,5248,5,1148,0,0,5247,5245,1,0,0,0,5247,5248,1,0,0,0,5248,5252,1,0,0,0,5249,5250,5,145,0,0,5250,5251,5,35,0,0,5251,5253,5,551,0,0,5252,5249,1,0,0,0,5252,5253,1,0,0,0,5253,453,1,0,0,0,5254,5262,3,610,305,0,5255,5259,7,67,0,0,5256,5260,5,1148,0,0,5257,5258,5,991,0,0,5258,5260,5,551,0,0,5259,5256,1,0,0,0,5259,5257,1,0,0,0,5260,5261,1,0,0,0,5261,5263,3,452,226,0,5262,5255,1,0,0,0,5262,5263,1,0,0,0,5263,5269,1,0,0,0,5264,5265,3,610,305,0,5265,5266,5,187,0,0,5266,5267,3,710,355,0,5267,5269,1,0,0,0,5268,5254,1,0,0,0,5268,5264,1,0,0,0,5269,455,1,0,0,0,5270,5279,5,167,0,0,5271,5279,5,680,0,0,5272,5273,5,358,0,0,5273,5279,5,1148,0,0,5274,5275,5,465,0,0,5275,5279,5,1148,0,0,5276,5277,5,640,0,0,5277,5279,5,1148,0,0,5278,5270,1,0,0,0,5278,5271,1,0,0,0,5278,5272,1,0,0,0,5278,5274,1,0,0,0,5278,5276,1,0,0,0,5279,457,1,0,0,0,5280,5281,5,499,0,0,5281,5289,3,618,309,0,5282,5283,5,502,0,0,5283,5289,3,618,309,0,5284,5285,5,498,0,0,5285,5289,3,618,309,0,5286,5287,5,503,0,0,5287,5289,3,618,309,0,5288,5280,1,0,0,0,5288,5282,1,0,0,0,5288,5284,1,0,0,0,5288,5286,1,0,0,0,5289,459,1,0,0,0,5290,5291,5,551,0,0,5291,5298,5,420,0,0,5292,5299,5,42,0,0,5293,5299,5,519,0,0,5294,5295,5,86,0,0,5295,5296,3,618,309,0,5296,5297,5,691,0,0,5297,5299,1,0,0,0,5298,5292,1,0,0,0,5298,5293,1,0,0,0,5298,5294,1,0,0,0,5298,5299,1,0,0,0,5299,5329,1,0,0,0,5300,5301,5,551,0,0,5301,5304,5,445,0,0,5302,5305,5,42,0,0,5303,5305,3,618,309,0,5304,5302,1,0,0,0,5304,5303,1,0,0,0,5305,5329,1,0,0,0,5306,5307,5,551,0,0,5307,5308,5,595,0,0,5308,5313,5,86,0,0,5309,5314,5,42,0,0,5310,5311,3,618,309,0,5311,5312,5,691,0,0,5312,5314,1,0,0,0,5313,5309,1,0,0,0,5313,5310,1,0,0,0,5314,5329,1,0,0,0,5315,5316,5,551,0,0,5316,5317,5,142,0,0,5317,5319,5,35,0,0,5318,5320,7,68,0,0,5319,5318,1,0,0,0,5319,5320,1,0,0,0,5320,5329,1,0,0,0,5321,5322,5,424,0,0,5322,5329,3,618,309,0,5323,5326,5,552,0,0,5324,5327,3,618,309,0,5325,5327,5,657,0,0,5326,5324,1,0,0,0,5326,5325,1,0,0,0,5327,5329,1,0,0,0,5328,5290,1,0,0,0,5328,5300,1,0,0,0,5328,5306,1,0,0,0,5328,5315,1,0,0,0,5328,5321,1,0,0,0,5328,5323,1,0,0,0,5329,461,1,0,0,0,5330,5331,5,332,0,0,5331,5332,7,69,0,0,5332,463,1,0,0,0,5333,5338,3,466,233,0,5334,5335,5,1133,0,0,5335,5336,3,644,322,0,5336,5337,5,1134,0,0,5337,5339,1,0,0,0,5338,5334,1,0,0,0,5338,5339,1,0,0,0,5339,465,1,0,0,0,5340,5342,5,6,0,0,5341,5343,5,725,0,0,5342,5341,1,0,0,0,5342,5343,1,0,0,0,5343,5434,1,0,0,0,5344,5346,5,7,0,0,5345,5347,5,733,0,0,5346,5345,1,0,0,0,5346,5347,1,0,0,0,5347,5434,1,0,0,0,5348,5356,5,33,0,0,5349,5350,5,649,0,0,5350,5357,5,742,0,0,5351,5357,5,733,0,0,5352,5357,5,671,0,0,5353,5357,5,665,0,0,5354,5357,5,647,0,0,5355,5357,5,596,0,0,5356,5349,1,0,0,0,5356,5351,1,0,0,0,5356,5352,1,0,0,0,5356,5353,1,0,0,0,5356,5354,1,0,0,0,5356,5355,1,0,0,0,5356,5357,1,0,0,0,5357,5434,1,0,0,0,5358,5434,5,44,0,0,5359,5361,5,51,0,0,5360,5362,5,596,0,0,5361,5360,1,0,0,0,5361,5362,1,0,0,0,5362,5434,1,0,0,0,5363,5434,5,415,0,0,5364,5434,5,708,0,0,5365,5434,5,709,0,0,5366,5367,5,72,0,0,5367,5434,5,120,0,0,5368,5434,5,81,0,0,5369,5434,5,85,0,0,5370,5371,5,103,0,0,5371,5434,5,742,0,0,5372,5434,5,726,0,0,5373,5434,5,566,0,0,5374,5434,5,136,0,0,5375,5434,5,727,0,0,5376,5377,5,588,0,0,5377,5434,7,70,0,0,5378,5434,5,152,0,0,5379,5380,5,155,0,0,5380,5434,7,71,0,0,5381,5434,5,739,0,0,5382,5434,5,740,0,0,5383,5434,5,177,0,0,5384,5434,5,184,0,0,5385,5434,5,185,0,0,5386,5434,5,698,0,0,5387,5434,5,699,0,0,5388,5434,5,700,0,0,5389,5434,5,701,0,0,5390,5434,5,702,0,0,5391,5434,5,703,0,0,5392,5434,5,704,0,0,5393,5434,5,705,0,0,5394,5434,5,706,0,0,5395,5434,5,707,0,0,5396,5434,5,710,0,0,5397,5434,5,711,0,0,5398,5434,5,712,0,0,5399,5434,5,713,0,0,5400,5434,5,714,0,0,5401,5434,5,715,0,0,5402,5434,5,716,0,0,5403,5434,5,717,0,0,5404,5434,5,718,0,0,5405,5434,5,719,0,0,5406,5434,5,722,0,0,5407,5434,5,723,0,0,5408,5434,5,724,0,0,5409,5434,5,728,0,0,5410,5434,5,729,0,0,5411,5434,5,730,0,0,5412,5434,5,731,0,0,5413,5434,5,732,0,0,5414,5434,5,735,0,0,5415,5434,5,736,0,0,5416,5434,5,737,0,0,5417,5434,5,158,0,0,5418,5434,5,738,0,0,5419,5434,5,1077,0,0,5420,5434,5,741,0,0,5421,5434,5,743,0,0,5422,5434,5,1088,0,0,5423,5434,5,744,0,0,5424,5434,5,745,0,0,5425,5426,5,102,0,0,5426,5427,5,68,0,0,5427,5434,5,734,0,0,5428,5429,5,152,0,0,5429,5430,5,87,0,0,5430,5434,5,734,0,0,5431,5432,5,720,0,0,5432,5434,5,721,0,0,5433,5340,1,0,0,0,5433,5344,1,0,0,0,5433,5348,1,0,0,0,5433,5358,1,0,0,0,5433,5359,1,0,0,0,5433,5363,1,0,0,0,5433,5364,1,0,0,0,5433,5365,1,0,0,0,5433,5366,1,0,0,0,5433,5368,1,0,0,0,5433,5369,1,0,0,0,5433,5370,1,0,0,0,5433,5372,1,0,0,0,5433,5373,1,0,0,0,5433,5374,1,0,0,0,5433,5375,1,0,0,0,5433,5376,1,0,0,0,5433,5378,1,0,0,0,5433,5379,1,0,0,0,5433,5381,1,0,0,0,5433,5382,1,0,0,0,5433,5383,1,0,0,0,5433,5384,1,0,0,0,5433,5385,1,0,0,0,5433,5386,1,0,0,0,5433,5387,1,0,0,0,5433,5388,1,0,0,0,5433,5389,1,0,0,0,5433,5390,1,0,0,0,5433,5391,1,0,0,0,5433,5392,1,0,0,0,5433,5393,1,0,0,0,5433,5394,1,0,0,0,5433,5395,1,0,0,0,5433,5396,1,0,0,0,5433,5397,1,0,0,0,5433,5398,1,0,0,0,5433,5399,1,0,0,0,5433,5400,1,0,0,0,5433,5401,1,0,0,0,5433,5402,1,0,0,0,5433,5403,1,0,0,0,5433,5404,1,0,0,0,5433,5405,1,0,0,0,5433,5406,1,0,0,0,5433,5407,1,0,0,0,5433,5408,1,0,0,0,5433,5409,1,0,0,0,5433,5410,1,0,0,0,5433,5411,1,0,0,0,5433,5412,1,0,0,0,5433,5413,1,0,0,0,5433,5414,1,0,0,0,5433,5415,1,0,0,0,5433,5416,1,0,0,0,5433,5417,1,0,0,0,5433,5418,1,0,0,0,5433,5419,1,0,0,0,5433,5420,1,0,0,0,5433,5421,1,0,0,0,5433,5422,1,0,0,0,5433,5423,1,0,0,0,5433,5424,1,0,0,0,5433,5425,1,0,0,0,5433,5428,1,0,0,0,5433,5431,1,0,0,0,5434,467,1,0,0,0,5435,5452,5,1117,0,0,5436,5437,5,1117,0,0,5437,5438,5,1132,0,0,5438,5452,5,1117,0,0,5439,5440,3,612,306,0,5440,5441,5,1132,0,0,5441,5442,5,1117,0,0,5442,5452,1,0,0,0,5443,5444,3,612,306,0,5444,5445,5,1132,0,0,5445,5446,3,612,306,0,5446,5452,1,0,0,0,5447,5448,3,612,306,0,5448,5449,3,616,308,0,5449,5452,1,0,0,0,5450,5452,3,612,306,0,5451,5435,1,0,0,0,5451,5436,1,0,0,0,5451,5439,1,0,0,0,5451,5443,1,0,0,0,5451,5447,1,0,0,0,5451,5450,1,0,0,0,5452,469,1,0,0,0,5453,5454,3,592,296,0,5454,5455,5,175,0,0,5455,5456,3,590,295,0,5456,471,1,0,0,0,5457,5459,5,9,0,0,5458,5460,7,72,0,0,5459,5458,1,0,0,0,5459,5460,1,0,0,0,5460,5461,1,0,0,0,5461,5462,7,54,0,0,5462,5480,3,648,324,0,5463,5464,5,184,0,0,5464,5465,5,76,0,0,5465,5466,5,118,0,0,5466,5471,3,570,285,0,5467,5468,5,1135,0,0,5468,5470,3,570,285,0,5469,5467,1,0,0,0,5470,5473,1,0,0,0,5471,5469,1,0,0,0,5471,5472,1,0,0,0,5472,5478,1,0,0,0,5473,5471,1,0,0,0,5474,5475,5,192,0,0,5475,5476,3,618,309,0,5476,5477,5,18,0,0,5477,5479,1,0,0,0,5478,5474,1,0,0,0,5478,5479,1,0,0,0,5479,5481,1,0,0,0,5480,5463,1,0,0,0,5480,5481,1,0,0,0,5481,5493,1,0,0,0,5482,5483,5,51,0,0,5483,5484,5,76,0,0,5484,5485,5,118,0,0,5485,5490,3,570,285,0,5486,5487,5,1135,0,0,5487,5489,3,570,285,0,5488,5486,1,0,0,0,5489,5492,1,0,0,0,5490,5488,1,0,0,0,5490,5491,1,0,0,0,5491,5494,1,0,0,0,5492,5490,1,0,0,0,5493,5482,1,0,0,0,5493,5494,1,0,0,0,5494,473,1,0,0,0,5495,5496,5,26,0,0,5496,5497,5,172,0,0,5497,5501,3,648,324,0,5498,5500,3,482,241,0,5499,5498,1,0,0,0,5500,5503,1,0,0,0,5501,5499,1,0,0,0,5501,5502,1,0,0,0,5502,475,1,0,0,0,5503,5501,1,0,0,0,5504,5505,5,356,0,0,5505,5506,5,172,0,0,5506,5508,3,648,324,0,5507,5509,7,73,0,0,5508,5507,1,0,0,0,5508,5509,1,0,0,0,5509,477,1,0,0,0,5510,5512,5,119,0,0,5511,5513,7,72,0,0,5512,5511,1,0,0,0,5512,5513,1,0,0,0,5513,5514,1,0,0,0,5514,5515,7,54,0,0,5515,5516,3,648,324,0,5516,479,1,0,0,0,5517,5519,5,580,0,0,5518,5520,7,72,0,0,5519,5518,1,0,0,0,5519,5520,1,0,0,0,5520,5521,1,0,0,0,5521,5522,5,172,0,0,5522,5524,3,648,324,0,5523,5525,5,568,0,0,5524,5523,1,0,0,0,5524,5525,1,0,0,0,5525,5527,1,0,0,0,5526,5528,5,422,0,0,5527,5526,1,0,0,0,5527,5528,1,0,0,0,5528,5530,1,0,0,0,5529,5531,5,666,0,0,5530,5529,1,0,0,0,5530,5531,1,0,0,0,5531,481,1,0,0,0,5532,5533,5,65,0,0,5533,5540,5,664,0,0,5534,5540,5,568,0,0,5535,5540,5,425,0,0,5536,5540,5,504,0,0,5537,5540,5,422,0,0,5538,5540,5,354,0,0,5539,5532,1,0,0,0,5539,5534,1,0,0,0,5539,5535,1,0,0,0,5539,5536,1,0,0,0,5539,5537,1,0,0,0,5539,5538,1,0,0,0,5540,483,1,0,0,0,5541,5543,5,33,0,0,5542,5544,5,335,0,0,5543,5542,1,0,0,0,5543,5544,1,0,0,0,5544,5545,1,0,0,0,5545,5547,5,437,0,0,5546,5548,3,670,335,0,5547,5546,1,0,0,0,5547,5548,1,0,0,0,5548,5549,1,0,0,0,5549,5550,3,612,306,0,5550,5551,5,594,0,0,5551,5552,7,74,0,0,5552,5553,5,619,0,0,5553,5554,5,1148,0,0,5554,485,1,0,0,0,5555,5556,5,456,0,0,5556,5557,5,554,0,0,5557,5558,3,612,306,0,5558,5559,5,619,0,0,5559,5560,5,1148,0,0,5560,487,1,0,0,0,5561,5562,5,661,0,0,5562,5563,5,554,0,0,5563,5564,3,612,306,0,5564,489,1,0,0,0,5565,5566,5,153,0,0,5566,5567,3,494,247,0,5567,5570,7,75,0,0,5568,5571,3,716,358,0,5569,5571,5,118,0,0,5570,5568,1,0,0,0,5570,5569,1,0,0,0,5571,5581,1,0,0,0,5572,5573,5,1135,0,0,5573,5574,3,494,247,0,5574,5577,7,75,0,0,5575,5578,3,716,358,0,5576,5578,5,118,0,0,5577,5575,1,0,0,0,5577,5576,1,0,0,0,5578,5580,1,0,0,0,5579,5572,1,0,0,0,5580,5583,1,0,0,0,5581,5579,1,0,0,0,5581,5582,1,0,0,0,5582,5618,1,0,0,0,5583,5581,1,0,0,0,5584,5585,5,153,0,0,5585,5588,3,58,29,0,5586,5589,3,596,298,0,5587,5589,5,42,0,0,5588,5586,1,0,0,0,5588,5587,1,0,0,0,5589,5618,1,0,0,0,5590,5591,5,153,0,0,5591,5598,5,517,0,0,5592,5595,3,596,298,0,5593,5594,5,27,0,0,5594,5596,3,598,299,0,5595,5593,1,0,0,0,5595,5596,1,0,0,0,5596,5599,1,0,0,0,5597,5599,5,42,0,0,5598,5592,1,0,0,0,5598,5597,1,0,0,0,5599,5618,1,0,0,0,5600,5618,3,444,222,0,5601,5618,3,318,159,0,5602,5618,3,316,158,0,5603,5604,5,153,0,0,5604,5605,3,552,276,0,5605,5606,7,75,0,0,5606,5614,3,716,358,0,5607,5608,5,1135,0,0,5608,5609,3,552,276,0,5609,5610,7,75,0,0,5610,5611,3,716,358,0,5611,5613,1,0,0,0,5612,5607,1,0,0,0,5613,5616,1,0,0,0,5614,5612,1,0,0,0,5614,5615,1,0,0,0,5615,5618,1,0,0,0,5616,5614,1,0,0,0,5617,5565,1,0,0,0,5617,5584,1,0,0,0,5617,5590,1,0,0,0,5617,5600,1,0,0,0,5617,5601,1,0,0,0,5617,5602,1,0,0,0,5617,5603,1,0,0,0,5618,491,1,0,0,0,5619,5620,5,155,0,0,5620,5621,7,56,0,0,5621,5781,5,476,0,0,5622,5623,5,155,0,0,5623,5624,7,76,0,0,5624,5627,5,416,0,0,5625,5626,5,80,0,0,5626,5628,5,1148,0,0,5627,5625,1,0,0,0,5627,5628,1,0,0,0,5628,5631,1,0,0,0,5629,5630,5,68,0,0,5630,5632,3,618,309,0,5631,5629,1,0,0,0,5631,5632,1,0,0,0,5632,5640,1,0,0,0,5633,5637,5,99,0,0,5634,5635,3,618,309,0,5635,5636,5,1135,0,0,5636,5638,1,0,0,0,5637,5634,1,0,0,0,5637,5638,1,0,0,0,5638,5639,1,0,0,0,5639,5641,3,618,309,0,5640,5633,1,0,0,0,5640,5641,1,0,0,0,5641,5781,1,0,0,0,5642,5643,5,155,0,0,5643,5645,3,496,248,0,5644,5646,3,498,249,0,5645,5644,1,0,0,0,5645,5646,1,0,0,0,5646,5781,1,0,0,0,5647,5649,5,155,0,0,5648,5650,5,436,0,0,5649,5648,1,0,0,0,5649,5650,1,0,0,0,5650,5651,1,0,0,0,5651,5652,7,41,0,0,5652,5653,7,77,0,0,5653,5656,3,554,277,0,5654,5655,7,77,0,0,5655,5657,3,612,306,0,5656,5654,1,0,0,0,5656,5657,1,0,0,0,5657,5659,1,0,0,0,5658,5660,3,498,249,0,5659,5658,1,0,0,0,5659,5660,1,0,0,0,5660,5781,1,0,0,0,5661,5662,5,155,0,0,5662,5663,5,33,0,0,5663,5665,7,0,0,0,5664,5666,3,670,335,0,5665,5664,1,0,0,0,5665,5666,1,0,0,0,5666,5667,1,0,0,0,5667,5781,3,572,286,0,5668,5669,5,155,0,0,5669,5670,5,33,0,0,5670,5671,7,78,0,0,5671,5781,3,552,276,0,5672,5673,5,155,0,0,5673,5674,5,33,0,0,5674,5675,7,79,0,0,5675,5781,3,554,277,0,5676,5677,5,155,0,0,5677,5678,5,33,0,0,5678,5679,5,177,0,0,5679,5781,3,578,289,0,5680,5681,5,155,0,0,5681,5682,5,33,0,0,5682,5683,5,665,0,0,5683,5781,3,592,296,0,5684,5685,5,155,0,0,5685,5686,5,409,0,0,5686,5687,3,600,300,0,5687,5688,7,80,0,0,5688,5781,1,0,0,0,5689,5690,5,155,0,0,5690,5781,3,500,250,0,5691,5692,5,155,0,0,5692,5700,7,81,0,0,5693,5697,5,99,0,0,5694,5695,3,618,309,0,5695,5696,5,1135,0,0,5696,5698,1,0,0,0,5697,5694,1,0,0,0,5697,5698,1,0,0,0,5698,5699,1,0,0,0,5699,5701,3,618,309,0,5700,5693,1,0,0,0,5700,5701,1,0,0,0,5701,5781,1,0,0,0,5702,5703,5,155,0,0,5703,5704,5,290,0,0,5704,5705,5,1133,0,0,5705,5706,5,1117,0,0,5706,5707,5,1134,0,0,5707,5781,7,81,0,0,5708,5709,5,155,0,0,5709,5712,3,502,251,0,5710,5711,7,77,0,0,5711,5713,3,612,306,0,5712,5710,1,0,0,0,5712,5713,1,0,0,0,5713,5715,1,0,0,0,5714,5716,3,498,249,0,5715,5714,1,0,0,0,5715,5716,1,0,0,0,5716,5781,1,0,0,0,5717,5718,5,155,0,0,5718,5719,7,82,0,0,5719,5720,5,364,0,0,5720,5781,3,552,276,0,5721,5722,5,155,0,0,5722,5725,5,440,0,0,5723,5724,5,65,0,0,5724,5726,3,592,296,0,5725,5723,1,0,0,0,5725,5726,1,0,0,0,5726,5781,1,0,0,0,5727,5728,5,155,0,0,5728,5729,7,83,0,0,5729,5730,7,77,0,0,5730,5733,3,554,277,0,5731,5732,7,77,0,0,5732,5734,3,612,306,0,5733,5731,1,0,0,0,5733,5734,1,0,0,0,5734,5737,1,0,0,0,5735,5736,5,190,0,0,5736,5738,3,716,358,0,5737,5735,1,0,0,0,5737,5738,1,0,0,0,5738,5781,1,0,0,0,5739,5740,5,155,0,0,5740,5741,5,539,0,0,5741,5744,5,742,0,0,5742,5743,7,77,0,0,5743,5745,3,612,306,0,5744,5742,1,0,0,0,5744,5745,1,0,0,0,5745,5747,1,0,0,0,5746,5748,3,498,249,0,5747,5746,1,0,0,0,5747,5748,1,0,0,0,5748,5781,1,0,0,0,5749,5750,5,155,0,0,5750,5751,5,564,0,0,5751,5756,3,504,252,0,5752,5753,5,1135,0,0,5753,5755,3,504,252,0,5754,5752,1,0,0,0,5755,5758,1,0,0,0,5756,5754,1,0,0,0,5756,5757,1,0,0,0,5757,5762,1,0,0,0,5758,5756,1,0,0,0,5759,5760,5,65,0,0,5760,5761,5,567,0,0,5761,5763,3,618,309,0,5762,5759,1,0,0,0,5762,5763,1,0,0,0,5763,5764,1,0,0,0,5764,5768,5,99,0,0,5765,5766,3,618,309,0,5766,5767,5,1135,0,0,5767,5769,1,0,0,0,5768,5765,1,0,0,0,5768,5769,1,0,0,0,5769,5770,1,0,0,0,5770,5771,3,618,309,0,5771,5781,1,0,0,0,5772,5773,5,155,0,0,5773,5774,5,614,0,0,5774,5778,5,634,0,0,5775,5776,5,65,0,0,5776,5777,5,355,0,0,5777,5779,5,1148,0,0,5778,5775,1,0,0,0,5778,5779,1,0,0,0,5779,5781,1,0,0,0,5780,5619,1,0,0,0,5780,5622,1,0,0,0,5780,5642,1,0,0,0,5780,5647,1,0,0,0,5780,5661,1,0,0,0,5780,5668,1,0,0,0,5780,5672,1,0,0,0,5780,5676,1,0,0,0,5780,5680,1,0,0,0,5780,5684,1,0,0,0,5780,5689,1,0,0,0,5780,5691,1,0,0,0,5780,5702,1,0,0,0,5780,5708,1,0,0,0,5780,5717,1,0,0,0,5780,5721,1,0,0,0,5780,5727,1,0,0,0,5780,5739,1,0,0,0,5780,5749,1,0,0,0,5780,5772,1,0,0,0,5781,493,1,0,0,0,5782,5793,5,1159,0,0,5783,5793,5,1160,0,0,5784,5785,5,1137,0,0,5785,5787,5,1137,0,0,5786,5784,1,0,0,0,5786,5787,1,0,0,0,5787,5788,1,0,0,0,5788,5790,7,84,0,0,5789,5786,1,0,0,0,5789,5790,1,0,0,0,5790,5791,1,0,0,0,5791,5793,3,612,306,0,5792,5782,1,0,0,0,5792,5783,1,0,0,0,5792,5789,1,0,0,0,5793,495,1,0,0,0,5794,5795,5,25,0,0,5795,5808,5,153,0,0,5796,5808,5,844,0,0,5797,5808,5,40,0,0,5798,5808,5,151,0,0,5799,5800,5,437,0,0,5800,5808,5,634,0,0,5801,5802,5,131,0,0,5802,5808,5,634,0,0,5803,5805,7,55,0,0,5804,5803,1,0,0,0,5804,5805,1,0,0,0,5805,5806,1,0,0,0,5806,5808,7,85,0,0,5807,5794,1,0,0,0,5807,5796,1,0,0,0,5807,5797,1,0,0,0,5807,5798,1,0,0,0,5807,5799,1,0,0,0,5807,5801,1,0,0,0,5807,5804,1,0,0,0,5808,497,1,0,0,0,5809,5810,5,98,0,0,5810,5814,5,1148,0,0,5811,5812,5,190,0,0,5812,5814,3,716,358,0,5813,5809,1,0,0,0,5813,5811,1,0,0,0,5814,499,1,0,0,0,5815,5817,5,636,0,0,5816,5815,1,0,0,0,5816,5817,1,0,0,0,5817,5818,1,0,0,0,5818,5833,5,410,0,0,5819,5820,5,477,0,0,5820,5833,5,634,0,0,5821,5833,5,556,0,0,5822,5833,5,725,0,0,5823,5825,5,436,0,0,5824,5823,1,0,0,0,5824,5825,1,0,0,0,5825,5826,1,0,0,0,5826,5833,5,563,0,0,5827,5833,5,565,0,0,5828,5829,5,614,0,0,5829,5833,5,447,0,0,5830,5833,5,339,0,0,5831,5833,5,383,0,0,5832,5816,1,0,0,0,5832,5819,1,0,0,0,5832,5821,1,0,0,0,5832,5822,1,0,0,0,5832,5824,1,0,0,0,5832,5827,1,0,0,0,5832,5828,1,0,0,0,5832,5830,1,0,0,0,5832,5831,1,0,0,0,5833,501,1,0,0,0,5834,5843,5,416,0,0,5835,5836,5,172,0,0,5836,5843,5,634,0,0,5837,5839,5,436,0,0,5838,5837,1,0,0,0,5838,5839,1,0,0,0,5839,5840,1,0,0,0,5840,5843,5,742,0,0,5841,5843,5,655,0,0,5842,5834,1,0,0,0,5842,5835,1,0,0,0,5842,5838,1,0,0,0,5842,5841,1,0,0,0,5843,503,1,0,0,0,5844,5857,5,6,0,0,5845,5846,5,347,0,0,5846,5857,5,461,0,0,5847,5848,5,382,0,0,5848,5857,5,645,0,0,5849,5857,5,385,0,0,5850,5857,5,463,0,0,5851,5857,5,792,0,0,5852,5853,5,544,0,0,5853,5857,5,426,0,0,5854,5857,5,621,0,0,5855,5857,5,644,0,0,5856,5844,1,0,0,0,5856,5845,1,0,0,0,5856,5847,1,0,0,0,5856,5849,1,0,0,0,5856,5850,1,0,0,0,5856,5851,1,0,0,0,5856,5852,1,0,0,0,5856,5854,1,0,0,0,5856,5855,1,0,0,0,5857,505,1,0,0,0,5858,5859,5,345,0,0,5859,5860,5,1148,0,0,5860,507,1,0,0,0,5861,5862,5,351,0,0,5862,5863,5,81,0,0,5863,5868,3,520,260,0,5864,5865,5,1135,0,0,5865,5867,3,520,260,0,5866,5864,1,0,0,0,5867,5870,1,0,0,0,5868,5866,1,0,0,0,5868,5869,1,0,0,0,5869,5878,1,0,0,0,5870,5868,1,0,0,0,5871,5872,5,129,0,0,5872,5875,5,1133,0,0,5873,5876,3,644,322,0,5874,5876,5,6,0,0,5875,5873,1,0,0,0,5875,5874,1,0,0,0,5876,5877,1,0,0,0,5877,5879,5,1134,0,0,5878,5871,1,0,0,0,5878,5879,1,0,0,0,5879,5880,1,0,0,0,5880,5881,5,80,0,0,5881,5882,3,612,306,0,5882,509,1,0,0,0,5883,5885,5,432,0,0,5884,5886,7,72,0,0,5885,5884,1,0,0,0,5885,5886,1,0,0,0,5886,5887,1,0,0,0,5887,5892,3,522,261,0,5888,5889,5,1135,0,0,5889,5891,3,522,261,0,5890,5888,1,0,0,0,5891,5894,1,0,0,0,5892,5890,1,0,0,0,5892,5893,1,0,0,0,5893,511,1,0,0,0,5894,5892,1,0,0,0,5895,5897,5,93,0,0,5896,5898,7,86,0,0,5897,5896,1,0,0,0,5897,5898,1,0,0,0,5898,5899,1,0,0,0,5899,5900,3,716,358,0,5900,513,1,0,0,0,5901,5902,5,102,0,0,5902,5903,5,81,0,0,5903,5904,5,87,0,0,5904,5905,5,351,0,0,5905,5910,3,526,263,0,5906,5907,5,1135,0,0,5907,5909,3,526,263,0,5908,5906,1,0,0,0,5909,5912,1,0,0,0,5910,5908,1,0,0,0,5910,5911,1,0,0,0,5911,515,1,0,0,0,5912,5910,1,0,0,0,5913,5914,5,589,0,0,5914,5915,5,567,0,0,5915,5916,5,351,0,0,5916,517,1,0,0,0,5917,5918,5,739,0,0,5918,519,1,0,0,0,5919,5927,3,554,277,0,5920,5922,7,20,0,0,5921,5920,1,0,0,0,5921,5922,1,0,0,0,5922,5923,1,0,0,0,5923,5924,5,1133,0,0,5924,5925,3,580,290,0,5925,5926,5,1134,0,0,5926,5928,1,0,0,0,5927,5921,1,0,0,0,5927,5928,1,0,0,0,5928,521,1,0,0,0,5929,5948,5,394,0,0,5930,5948,5,447,0,0,5931,5933,7,87,0,0,5932,5931,1,0,0,0,5932,5933,1,0,0,0,5933,5934,1,0,0,0,5934,5948,5,476,0,0,5935,5948,5,540,0,0,5936,5948,5,725,0,0,5937,5938,5,567,0,0,5938,5948,5,351,0,0,5939,5948,5,634,0,0,5940,5948,5,667,0,0,5941,5945,5,742,0,0,5942,5943,5,192,0,0,5943,5944,5,134,0,0,5944,5946,5,103,0,0,5945,5942,1,0,0,0,5945,5946,1,0,0,0,5946,5948,1,0,0,0,5947,5929,1,0,0,0,5947,5930,1,0,0,0,5947,5932,1,0,0,0,5947,5935,1,0,0,0,5947,5936,1,0,0,0,5947,5937,1,0,0,0,5947,5939,1,0,0,0,5947,5940,1,0,0,0,5947,5941,1,0,0,0,5948,5962,1,0,0,0,5949,5950,5,574,0,0,5950,5952,5,476,0,0,5951,5953,3,356,178,0,5952,5951,1,0,0,0,5952,5953,1,0,0,0,5953,5962,1,0,0,0,5954,5956,7,54,0,0,5955,5957,3,648,324,0,5956,5955,1,0,0,0,5956,5957,1,0,0,0,5957,5959,1,0,0,0,5958,5960,3,524,262,0,5959,5958,1,0,0,0,5959,5960,1,0,0,0,5960,5962,1,0,0,0,5961,5947,1,0,0,0,5961,5949,1,0,0,0,5961,5954,1,0,0,0,5962,523,1,0,0,0,5963,5964,5,192,0,0,5964,5965,5,134,0,0,5965,5969,5,103,0,0,5966,5967,5,65,0,0,5967,5969,5,421,0,0,5968,5963,1,0,0,0,5968,5966,1,0,0,0,5969,525,1,0,0,0,5970,5978,3,554,277,0,5971,5972,5,129,0,0,5972,5975,5,1133,0,0,5973,5976,3,644,322,0,5974,5976,5,6,0,0,5975,5973,1,0,0,0,5975,5974,1,0,0,0,5976,5977,1,0,0,0,5977,5979,5,1134,0,0,5978,5971,1,0,0,0,5978,5979,1,0,0,0,5979,5987,1,0,0,0,5980,5982,7,20,0,0,5981,5980,1,0,0,0,5981,5982,1,0,0,0,5982,5983,1,0,0,0,5983,5984,5,1133,0,0,5984,5985,3,580,290,0,5985,5986,5,1134,0,0,5986,5988,1,0,0,0,5987,5981,1,0,0,0,5987,5988,1,0,0,0,5988,5991,1,0,0,0,5989,5990,5,78,0,0,5990,5992,5,470,0,0,5991,5989,1,0,0,0,5991,5992,1,0,0,0,5992,527,1,0,0,0,5993,5994,7,88,0,0,5994,5997,3,554,277,0,5995,5998,3,612,306,0,5996,5998,5,1148,0,0,5997,5995,1,0,0,0,5997,5996,1,0,0,0,5997,5998,1,0,0,0,5998,529,1,0,0,0,5999,6003,7,88,0,0,6e3,6001,7,89,0,0,6001,6002,5,1124,0,0,6002,6004,7,90,0,0,6003,6e3,1,0,0,0,6003,6004,1,0,0,0,6004,6005,1,0,0,0,6005,6006,3,550,275,0,6006,531,1,0,0,0,6007,6008,5,444,0,0,6008,6009,5,1148,0,0,6009,533,1,0,0,0,6010,6011,5,186,0,0,6011,6012,3,612,306,0,6012,535,1,0,0,0,6013,6021,5,156,0,0,6014,6016,5,162,0,0,6015,6017,5,669,0,0,6016,6015,1,0,0,0,6016,6017,1,0,0,0,6017,6018,1,0,0,0,6018,6022,3,622,311,0,6019,6022,5,1156,0,0,6020,6022,5,1157,0,0,6021,6014,1,0,0,0,6021,6019,1,0,0,0,6021,6020,1,0,0,0,6022,6032,1,0,0,0,6023,6024,5,153,0,0,6024,6029,3,540,270,0,6025,6026,5,1135,0,0,6026,6028,3,540,270,0,6027,6025,1,0,0,0,6028,6031,1,0,0,0,6029,6027,1,0,0,0,6029,6030,1,0,0,0,6030,6033,1,0,0,0,6031,6029,1,0,0,0,6032,6023,1,0,0,0,6032,6033,1,0,0,0,6033,537,1,0,0,0,6034,6042,5,143,0,0,6035,6037,5,162,0,0,6036,6038,5,669,0,0,6037,6036,1,0,0,0,6037,6038,1,0,0,0,6038,6039,1,0,0,0,6039,6043,3,622,311,0,6040,6043,5,1156,0,0,6041,6043,5,1157,0,0,6042,6035,1,0,0,0,6042,6040,1,0,0,0,6042,6041,1,0,0,0,6042,6043,1,0,0,0,6043,6053,1,0,0,0,6044,6045,5,153,0,0,6045,6050,3,540,270,0,6046,6047,5,1135,0,0,6047,6049,3,540,270,0,6048,6046,1,0,0,0,6049,6052,1,0,0,0,6050,6048,1,0,0,0,6050,6051,1,0,0,0,6051,6054,1,0,0,0,6052,6050,1,0,0,0,6053,6044,1,0,0,0,6053,6054,1,0,0,0,6054,539,1,0,0,0,6055,6056,7,91,0,0,6056,6061,5,1124,0,0,6057,6062,3,622,311,0,6058,6062,5,1149,0,0,6059,6062,3,594,297,0,6060,6062,3,614,307,0,6061,6057,1,0,0,0,6061,6058,1,0,0,0,6061,6059,1,0,0,0,6061,6060,1,0,0,0,6062,541,1,0,0,0,6063,6065,5,192,0,0,6064,6066,5,571,0,0,6065,6064,1,0,0,0,6065,6066,1,0,0,0,6066,6067,1,0,0,0,6067,6072,3,48,24,0,6068,6069,5,1135,0,0,6069,6071,3,48,24,0,6070,6068,1,0,0,0,6071,6074,1,0,0,0,6072,6070,1,0,0,0,6072,6073,1,0,0,0,6073,543,1,0,0,0,6074,6072,1,0,0,0,6075,6076,5,172,0,0,6076,6078,3,554,277,0,6077,6079,3,228,114,0,6078,6077,1,0,0,0,6078,6079,1,0,0,0,6079,6081,1,0,0,0,6080,6082,3,294,147,0,6081,6080,1,0,0,0,6081,6082,1,0,0,0,6082,545,1,0,0,0,6083,6085,5,71,0,0,6084,6086,7,92,0,0,6085,6084,1,0,0,0,6085,6086,1,0,0,0,6086,6087,1,0,0,0,6087,6119,5,48,0,0,6088,6089,3,494,247,0,6089,6090,5,1124,0,0,6090,6098,7,93,0,0,6091,6092,5,1135,0,0,6092,6093,3,494,247,0,6093,6094,5,1124,0,0,6094,6095,7,93,0,0,6095,6097,1,0,0,0,6096,6091,1,0,0,0,6097,6100,1,0,0,0,6098,6096,1,0,0,0,6098,6099,1,0,0,0,6099,6120,1,0,0,0,6100,6098,1,0,0,0,6101,6104,5,29,0,0,6102,6105,3,618,309,0,6103,6105,3,494,247,0,6104,6102,1,0,0,0,6104,6103,1,0,0,0,6105,6106,1,0,0,0,6106,6107,3,494,247,0,6107,6108,5,1124,0,0,6108,6116,3,548,274,0,6109,6110,5,1135,0,0,6110,6111,3,494,247,0,6111,6112,5,1124,0,0,6112,6113,3,548,274,0,6113,6115,1,0,0,0,6114,6109,1,0,0,0,6115,6118,1,0,0,0,6116,6114,1,0,0,0,6116,6117,1,0,0,0,6117,6120,1,0,0,0,6118,6116,1,0,0,0,6119,6088,1,0,0,0,6119,6101,1,0,0,0,6120,547,1,0,0,0,6121,6122,7,94,0,0,6122,549,1,0,0,0,6123,6129,3,198,99,0,6124,6129,3,184,92,0,6125,6129,3,190,95,0,6126,6129,3,196,98,0,6127,6129,3,200,100,0,6128,6123,1,0,0,0,6128,6124,1,0,0,0,6128,6125,1,0,0,0,6128,6126,1,0,0,0,6128,6127,1,0,0,0,6129,6134,1,0,0,0,6130,6131,5,65,0,0,6131,6132,5,376,0,0,6132,6134,3,612,306,0,6133,6128,1,0,0,0,6133,6130,1,0,0,0,6134,551,1,0,0,0,6135,6139,3,612,306,0,6136,6140,5,1155,0,0,6137,6138,5,1132,0,0,6138,6140,3,612,306,0,6139,6136,1,0,0,0,6139,6137,1,0,0,0,6139,6140,1,0,0,0,6140,553,1,0,0,0,6141,6142,3,552,276,0,6142,555,1,0,0,0,6143,6148,3,554,277,0,6144,6145,5,1135,0,0,6145,6147,3,554,277,0,6146,6144,1,0,0,0,6147,6150,1,0,0,0,6148,6146,1,0,0,0,6148,6149,1,0,0,0,6149,557,1,0,0,0,6150,6148,1,0,0,0,6151,6154,3,592,296,0,6152,6154,3,568,284,0,6153,6151,1,0,0,0,6153,6152,1,0,0,0,6154,559,1,0,0,0,6155,6160,3,558,279,0,6156,6157,5,1135,0,0,6157,6159,3,558,279,0,6158,6156,1,0,0,0,6159,6162,1,0,0,0,6160,6158,1,0,0,0,6160,6161,1,0,0,0,6161,561,1,0,0,0,6162,6160,1,0,0,0,6163,6168,3,564,282,0,6164,6165,5,1135,0,0,6165,6167,3,564,282,0,6166,6164,1,0,0,0,6167,6170,1,0,0,0,6168,6166,1,0,0,0,6168,6169,1,0,0,0,6169,563,1,0,0,0,6170,6168,1,0,0,0,6171,6172,3,612,306,0,6172,565,1,0,0,0,6173,6178,3,568,284,0,6174,6175,5,1135,0,0,6175,6177,3,568,284,0,6176,6174,1,0,0,0,6177,6180,1,0,0,0,6178,6176,1,0,0,0,6178,6179,1,0,0,0,6179,567,1,0,0,0,6180,6178,1,0,0,0,6181,6182,3,564,282,0,6182,569,1,0,0,0,6183,6188,3,612,306,0,6184,6186,3,616,308,0,6185,6187,3,616,308,0,6186,6185,1,0,0,0,6186,6187,1,0,0,0,6187,6189,1,0,0,0,6188,6184,1,0,0,0,6188,6189,1,0,0,0,6189,6198,1,0,0,0,6190,6192,9,0,0,0,6191,6190,1,0,0,0,6191,6192,1,0,0,0,6192,6193,1,0,0,0,6193,6195,3,616,308,0,6194,6196,3,616,308,0,6195,6194,1,0,0,0,6195,6196,1,0,0,0,6196,6198,1,0,0,0,6197,6183,1,0,0,0,6197,6191,1,0,0,0,6198,571,1,0,0,0,6199,6200,3,612,306,0,6200,573,1,0,0,0,6201,6202,3,612,306,0,6202,575,1,0,0,0,6203,6204,3,612,306,0,6204,577,1,0,0,0,6205,6206,3,552,276,0,6206,579,1,0,0,0,6207,6212,3,574,287,0,6208,6209,5,1135,0,0,6209,6211,3,574,287,0,6210,6208,1,0,0,0,6211,6214,1,0,0,0,6212,6210,1,0,0,0,6212,6213,1,0,0,0,6213,581,1,0,0,0,6214,6212,1,0,0,0,6215,6218,3,612,306,0,6216,6218,5,1148,0,0,6217,6215,1,0,0,0,6217,6216,1,0,0,0,6218,6223,1,0,0,0,6219,6220,5,1133,0,0,6220,6221,3,618,309,0,6221,6222,5,1134,0,0,6222,6224,1,0,0,0,6223,6219,1,0,0,0,6223,6224,1,0,0,0,6224,6227,1,0,0,0,6225,6227,3,716,358,0,6226,6217,1,0,0,0,6226,6225,1,0,0,0,6227,6229,1,0,0,0,6228,6230,7,48,0,0,6229,6228,1,0,0,0,6229,6230,1,0,0,0,6230,583,1,0,0,0,6231,6236,5,1148,0,0,6232,6236,5,1156,0,0,6233,6236,5,697,0,0,6234,6236,3,746,373,0,6235,6231,1,0,0,0,6235,6232,1,0,0,0,6235,6233,1,0,0,0,6235,6234,1,0,0,0,6236,585,1,0,0,0,6237,6238,7,95,0,0,6238,587,1,0,0,0,6239,6244,3,592,296,0,6240,6241,5,1135,0,0,6241,6243,3,592,296,0,6242,6240,1,0,0,0,6243,6246,1,0,0,0,6244,6242,1,0,0,0,6244,6245,1,0,0,0,6245,589,1,0,0,0,6246,6244,1,0,0,0,6247,6253,3,584,292,0,6248,6249,3,584,292,0,6249,6250,3,586,293,0,6250,6253,1,0,0,0,6251,6253,3,60,30,0,6252,6247,1,0,0,0,6252,6248,1,0,0,0,6252,6251,1,0,0,0,6253,591,1,0,0,0,6254,6255,3,590,295,0,6255,593,1,0,0,0,6256,6257,7,96,0,0,6257,595,1,0,0,0,6258,6263,5,226,0,0,6259,6263,3,736,368,0,6260,6263,5,1148,0,0,6261,6263,5,1145,0,0,6262,6258,1,0,0,0,6262,6259,1,0,0,0,6262,6260,1,0,0,0,6262,6261,1,0,0,0,6263,597,1,0,0,0,6264,6267,3,612,306,0,6265,6267,5,1148,0,0,6266,6264,1,0,0,0,6266,6265,1,0,0,0,6267,599,1,0,0,0,6268,6272,3,602,301,0,6269,6272,5,1156,0,0,6270,6272,5,1148,0,0,6271,6268,1,0,0,0,6271,6269,1,0,0,0,6271,6270,1,0,0,0,6272,601,1,0,0,0,6273,6274,7,97,0,0,6274,603,1,0,0,0,6275,6276,3,618,309,0,6276,6277,5,1121,0,0,6277,6278,3,618,309,0,6278,6279,5,1121,0,0,6279,6280,3,618,309,0,6280,6281,5,1121,0,0,6281,6282,3,618,309,0,6282,6283,5,1121,0,0,6283,6289,3,618,309,0,6284,6285,5,1144,0,0,6285,6286,3,618,309,0,6286,6287,5,1121,0,0,6287,6288,3,618,309,0,6288,6290,1,0,0,0,6289,6284,1,0,0,0,6290,6291,1,0,0,0,6291,6289,1,0,0,0,6291,6292,1,0,0,0,6292,605,1,0,0,0,6293,6300,3,608,304,0,6294,6295,5,1135,0,0,6295,6298,3,608,304,0,6296,6297,5,1135,0,0,6297,6299,3,618,309,0,6298,6296,1,0,0,0,6298,6299,1,0,0,0,6299,6301,1,0,0,0,6300,6294,1,0,0,0,6300,6301,1,0,0,0,6301,607,1,0,0,0,6302,6310,5,1148,0,0,6303,6310,5,1153,0,0,6304,6306,5,1150,0,0,6305,6304,1,0,0,0,6306,6307,1,0,0,0,6307,6305,1,0,0,0,6307,6308,1,0,0,0,6308,6310,1,0,0,0,6309,6302,1,0,0,0,6309,6303,1,0,0,0,6309,6305,1,0,0,0,6310,609,1,0,0,0,6311,6314,3,612,306,0,6312,6314,5,1148,0,0,6313,6311,1,0,0,0,6313,6312,1,0,0,0,6314,611,1,0,0,0,6315,6319,3,614,307,0,6316,6319,5,1145,0,0,6317,6319,5,1148,0,0,6318,6315,1,0,0,0,6318,6316,1,0,0,0,6318,6317,1,0,0,0,6319,613,1,0,0,0,6320,6330,5,1156,0,0,6321,6330,3,736,368,0,6322,6330,3,738,369,0,6323,6330,3,602,301,0,6324,6330,3,740,370,0,6325,6330,3,742,371,0,6326,6330,3,744,372,0,6327,6330,3,746,373,0,6328,6330,3,708,354,0,6329,6320,1,0,0,0,6329,6321,1,0,0,0,6329,6322,1,0,0,0,6329,6323,1,0,0,0,6329,6324,1,0,0,0,6329,6325,1,0,0,0,6329,6326,1,0,0,0,6329,6327,1,0,0,0,6329,6328,1,0,0,0,6330,615,1,0,0,0,6331,6335,5,1155,0,0,6332,6333,5,1132,0,0,6333,6335,3,612,306,0,6334,6331,1,0,0,0,6334,6332,1,0,0,0,6335,617,1,0,0,0,6336,6337,7,98,0,0,6337,619,1,0,0,0,6338,6341,5,1146,0,0,6339,6341,3,618,309,0,6340,6338,1,0,0,0,6340,6339,1,0,0,0,6341,621,1,0,0,0,6342,6344,5,1154,0,0,6343,6342,1,0,0,0,6343,6344,1,0,0,0,6344,6345,1,0,0,0,6345,6348,5,1148,0,0,6346,6348,5,1147,0,0,6347,6343,1,0,0,0,6347,6346,1,0,0,0,6348,6350,1,0,0,0,6349,6351,5,1148,0,0,6350,6349,1,0,0,0,6351,6352,1,0,0,0,6352,6350,1,0,0,0,6352,6353,1,0,0,0,6353,6366,1,0,0,0,6354,6356,5,1154,0,0,6355,6354,1,0,0,0,6355,6356,1,0,0,0,6356,6357,1,0,0,0,6357,6360,5,1148,0,0,6358,6360,5,1147,0,0,6359,6355,1,0,0,0,6359,6358,1,0,0,0,6360,6363,1,0,0,0,6361,6362,5,27,0,0,6362,6364,3,598,299,0,6363,6361,1,0,0,0,6363,6364,1,0,0,0,6364,6366,1,0,0,0,6365,6347,1,0,0,0,6365,6359,1,0,0,0,6366,623,1,0,0,0,6367,6368,7,99,0,0,6368,625,1,0,0,0,6369,6371,5,1154,0,0,6370,6369,1,0,0,0,6370,6371,1,0,0,0,6371,6372,1,0,0,0,6372,6373,5,1150,0,0,6373,627,1,0,0,0,6374,6376,5,114,0,0,6375,6374,1,0,0,0,6375,6376,1,0,0,0,6376,6377,1,0,0,0,6377,6378,7,100,0,0,6378,629,1,0,0,0,6379,6392,3,622,311,0,6380,6392,3,618,309,0,6381,6382,5,1121,0,0,6382,6392,3,618,309,0,6383,6392,3,626,313,0,6384,6392,3,624,312,0,6385,6392,5,1151,0,0,6386,6392,5,1153,0,0,6387,6389,5,114,0,0,6388,6387,1,0,0,0,6388,6389,1,0,0,0,6389,6390,1,0,0,0,6390,6392,7,100,0,0,6391,6379,1,0,0,0,6391,6380,1,0,0,0,6391,6381,1,0,0,0,6391,6383,1,0,0,0,6391,6384,1,0,0,0,6391,6385,1,0,0,0,6391,6386,1,0,0,0,6391,6388,1,0,0,0,6392,631,1,0,0,0,6393,6395,7,101,0,0,6394,6396,5,238,0,0,6395,6394,1,0,0,0,6395,6396,1,0,0,0,6396,6398,1,0,0,0,6397,6399,3,638,319,0,6398,6397,1,0,0,0,6398,6399,1,0,0,0,6399,6401,1,0,0,0,6400,6402,5,226,0,0,6401,6400,1,0,0,0,6401,6402,1,0,0,0,6402,6406,1,0,0,0,6403,6404,3,58,29,0,6404,6405,3,596,298,0,6405,6407,1,0,0,0,6406,6403,1,0,0,0,6406,6407,1,0,0,0,6407,6411,1,0,0,0,6408,6409,5,27,0,0,6409,6412,3,598,299,0,6410,6412,5,226,0,0,6411,6408,1,0,0,0,6411,6410,1,0,0,0,6411,6412,1,0,0,0,6412,6520,1,0,0,0,6413,6414,5,225,0,0,6414,6415,7,102,0,0,6415,6417,5,238,0,0,6416,6418,3,638,319,0,6417,6416,1,0,0,0,6417,6418,1,0,0,0,6418,6420,1,0,0,0,6419,6421,5,226,0,0,6420,6419,1,0,0,0,6420,6421,1,0,0,0,6421,6520,1,0,0,0,6422,6423,5,225,0,0,6423,6425,7,103,0,0,6424,6426,3,638,319,0,6425,6424,1,0,0,0,6425,6426,1,0,0,0,6426,6428,1,0,0,0,6427,6429,5,226,0,0,6428,6427,1,0,0,0,6428,6429,1,0,0,0,6429,6520,1,0,0,0,6430,6431,5,518,0,0,6431,6433,5,223,0,0,6432,6434,3,638,319,0,6433,6432,1,0,0,0,6433,6434,1,0,0,0,6434,6436,1,0,0,0,6435,6437,5,226,0,0,6436,6435,1,0,0,0,6436,6437,1,0,0,0,6437,6520,1,0,0,0,6438,6440,7,104,0,0,6439,6441,3,638,319,0,6440,6439,1,0,0,0,6440,6441,1,0,0,0,6441,6445,1,0,0,0,6442,6444,7,105,0,0,6443,6442,1,0,0,0,6444,6447,1,0,0,0,6445,6443,1,0,0,0,6445,6446,1,0,0,0,6446,6520,1,0,0,0,6447,6445,1,0,0,0,6448,6450,5,208,0,0,6449,6451,3,640,320,0,6450,6449,1,0,0,0,6450,6451,1,0,0,0,6451,6455,1,0,0,0,6452,6454,7,105,0,0,6453,6452,1,0,0,0,6454,6457,1,0,0,0,6455,6453,1,0,0,0,6455,6456,1,0,0,0,6456,6520,1,0,0,0,6457,6455,1,0,0,0,6458,6460,5,209,0,0,6459,6461,5,210,0,0,6460,6459,1,0,0,0,6460,6461,1,0,0,0,6461,6463,1,0,0,0,6462,6464,3,640,320,0,6463,6462,1,0,0,0,6463,6464,1,0,0,0,6464,6468,1,0,0,0,6465,6467,7,105,0,0,6466,6465,1,0,0,0,6467,6470,1,0,0,0,6468,6466,1,0,0,0,6468,6469,1,0,0,0,6469,6520,1,0,0,0,6470,6468,1,0,0,0,6471,6473,7,106,0,0,6472,6474,3,642,321,0,6473,6472,1,0,0,0,6473,6474,1,0,0,0,6474,6478,1,0,0,0,6475,6477,7,105,0,0,6476,6475,1,0,0,0,6477,6480,1,0,0,0,6478,6476,1,0,0,0,6478,6479,1,0,0,0,6479,6520,1,0,0,0,6480,6478,1,0,0,0,6481,6520,7,107,0,0,6482,6484,7,108,0,0,6483,6485,3,638,319,0,6484,6483,1,0,0,0,6484,6485,1,0,0,0,6485,6520,1,0,0,0,6486,6487,7,109,0,0,6487,6489,3,634,317,0,6488,6490,5,226,0,0,6489,6488,1,0,0,0,6489,6490,1,0,0,0,6490,6494,1,0,0,0,6491,6492,3,58,29,0,6492,6493,3,596,298,0,6493,6495,1,0,0,0,6494,6491,1,0,0,0,6494,6495,1,0,0,0,6495,6520,1,0,0,0,6496,6499,7,110,0,0,6497,6498,5,1012,0,0,6498,6500,3,618,309,0,6499,6497,1,0,0,0,6499,6500,1,0,0,0,6500,6520,1,0,0,0,6501,6503,5,231,0,0,6502,6504,5,223,0,0,6503,6502,1,0,0,0,6503,6504,1,0,0,0,6504,6506,1,0,0,0,6505,6507,5,226,0,0,6506,6505,1,0,0,0,6506,6507,1,0,0,0,6507,6511,1,0,0,0,6508,6509,3,58,29,0,6509,6510,3,596,298,0,6510,6512,1,0,0,0,6511,6508,1,0,0,0,6511,6512,1,0,0,0,6512,6515,1,0,0,0,6513,6514,5,27,0,0,6514,6516,3,598,299,0,6515,6513,1,0,0,0,6515,6516,1,0,0,0,6516,6520,1,0,0,0,6517,6518,5,231,0,0,6518,6520,5,227,0,0,6519,6393,1,0,0,0,6519,6413,1,0,0,0,6519,6422,1,0,0,0,6519,6430,1,0,0,0,6519,6438,1,0,0,0,6519,6448,1,0,0,0,6519,6458,1,0,0,0,6519,6471,1,0,0,0,6519,6481,1,0,0,0,6519,6482,1,0,0,0,6519,6486,1,0,0,0,6519,6496,1,0,0,0,6519,6501,1,0,0,0,6519,6517,1,0,0,0,6520,633,1,0,0,0,6521,6522,5,1133,0,0,6522,6527,5,1148,0,0,6523,6524,5,1135,0,0,6524,6526,5,1148,0,0,6525,6523,1,0,0,0,6526,6529,1,0,0,0,6527,6525,1,0,0,0,6527,6528,1,0,0,0,6528,6530,1,0,0,0,6529,6527,1,0,0,0,6530,6531,5,1134,0,0,6531,635,1,0,0,0,6532,6534,7,111,0,0,6533,6535,3,638,319,0,6534,6533,1,0,0,0,6534,6535,1,0,0,0,6535,6555,1,0,0,0,6536,6538,5,222,0,0,6537,6539,3,638,319,0,6538,6537,1,0,0,0,6538,6539,1,0,0,0,6539,6543,1,0,0,0,6540,6541,3,58,29,0,6541,6542,3,596,298,0,6542,6544,1,0,0,0,6543,6540,1,0,0,0,6543,6544,1,0,0,0,6544,6555,1,0,0,0,6545,6555,7,112,0,0,6546,6548,7,113,0,0,6547,6549,3,642,321,0,6548,6547,1,0,0,0,6548,6549,1,0,0,0,6549,6555,1,0,0,0,6550,6552,7,114,0,0,6551,6553,7,115,0,0,6552,6551,1,0,0,0,6552,6553,1,0,0,0,6553,6555,1,0,0,0,6554,6532,1,0,0,0,6554,6536,1,0,0,0,6554,6545,1,0,0,0,6554,6546,1,0,0,0,6554,6550,1,0,0,0,6555,6557,1,0,0,0,6556,6558,5,11,0,0,6557,6556,1,0,0,0,6557,6558,1,0,0,0,6558,637,1,0,0,0,6559,6560,5,1133,0,0,6560,6561,3,618,309,0,6561,6562,5,1134,0,0,6562,639,1,0,0,0,6563,6564,5,1133,0,0,6564,6565,3,618,309,0,6565,6566,5,1135,0,0,6566,6567,3,618,309,0,6567,6568,5,1134,0,0,6568,641,1,0,0,0,6569,6570,5,1133,0,0,6570,6573,3,618,309,0,6571,6572,5,1135,0,0,6572,6574,3,618,309,0,6573,6571,1,0,0,0,6573,6574,1,0,0,0,6574,6575,1,0,0,0,6575,6576,5,1134,0,0,6576,643,1,0,0,0,6577,6582,3,612,306,0,6578,6579,5,1135,0,0,6579,6581,3,612,306,0,6580,6578,1,0,0,0,6581,6584,1,0,0,0,6582,6580,1,0,0,0,6582,6583,1,0,0,0,6583,645,1,0,0,0,6584,6582,1,0,0,0,6585,6590,3,570,285,0,6586,6587,5,1135,0,0,6587,6589,3,570,285,0,6588,6586,1,0,0,0,6589,6592,1,0,0,0,6590,6588,1,0,0,0,6590,6591,1,0,0,0,6591,647,1,0,0,0,6592,6590,1,0,0,0,6593,6598,3,554,277,0,6594,6595,5,1135,0,0,6595,6597,3,554,277,0,6596,6594,1,0,0,0,6597,6600,1,0,0,0,6598,6596,1,0,0,0,6598,6599,1,0,0,0,6599,649,1,0,0,0,6600,6598,1,0,0,0,6601,6602,5,1133,0,0,6602,6607,3,582,291,0,6603,6604,5,1135,0,0,6604,6606,3,582,291,0,6605,6603,1,0,0,0,6606,6609,1,0,0,0,6607,6605,1,0,0,0,6607,6608,1,0,0,0,6608,6610,1,0,0,0,6609,6607,1,0,0,0,6610,6611,5,1134,0,0,6611,651,1,0,0,0,6612,6617,3,716,358,0,6613,6614,5,1135,0,0,6614,6616,3,716,358,0,6615,6613,1,0,0,0,6616,6619,1,0,0,0,6617,6615,1,0,0,0,6617,6618,1,0,0,0,6618,653,1,0,0,0,6619,6617,1,0,0,0,6620,6625,3,666,333,0,6621,6622,5,1135,0,0,6622,6624,3,666,333,0,6623,6621,1,0,0,0,6624,6627,1,0,0,0,6625,6623,1,0,0,0,6625,6626,1,0,0,0,6626,655,1,0,0,0,6627,6625,1,0,0,0,6628,6633,3,630,315,0,6629,6630,5,1135,0,0,6630,6632,3,630,315,0,6631,6629,1,0,0,0,6632,6635,1,0,0,0,6633,6631,1,0,0,0,6633,6634,1,0,0,0,6634,657,1,0,0,0,6635,6633,1,0,0,0,6636,6641,5,1148,0,0,6637,6638,5,1135,0,0,6638,6640,5,1148,0,0,6639,6637,1,0,0,0,6640,6643,1,0,0,0,6641,6639,1,0,0,0,6641,6642,1,0,0,0,6642,659,1,0,0,0,6643,6641,1,0,0,0,6644,6649,5,1159,0,0,6645,6646,5,1135,0,0,6646,6648,5,1159,0,0,6647,6645,1,0,0,0,6648,6651,1,0,0,0,6649,6647,1,0,0,0,6649,6650,1,0,0,0,6650,661,1,0,0,0,6651,6649,1,0,0,0,6652,6679,5,116,0,0,6653,6654,5,23,0,0,6654,6655,5,1133,0,0,6655,6656,3,716,358,0,6656,6657,5,12,0,0,6657,6658,3,636,318,0,6658,6659,5,1134,0,0,6659,6679,1,0,0,0,6660,6662,3,722,361,0,6661,6660,1,0,0,0,6661,6662,1,0,0,0,6662,6663,1,0,0,0,6663,6679,3,630,315,0,6664,6668,3,664,332,0,6665,6666,5,118,0,0,6666,6667,5,184,0,0,6667,6669,3,664,332,0,6668,6665,1,0,0,0,6668,6669,1,0,0,0,6669,6679,1,0,0,0,6670,6671,5,1133,0,0,6671,6672,3,716,358,0,6672,6673,5,1134,0,0,6673,6679,1,0,0,0,6674,6675,5,1133,0,0,6675,6676,3,552,276,0,6676,6677,5,1134,0,0,6677,6679,1,0,0,0,6678,6652,1,0,0,0,6678,6653,1,0,0,0,6678,6661,1,0,0,0,6678,6664,1,0,0,0,6678,6670,1,0,0,0,6678,6674,1,0,0,0,6679,663,1,0,0,0,6680,6686,7,116,0,0,6681,6683,5,1133,0,0,6682,6684,3,618,309,0,6683,6682,1,0,0,0,6683,6684,1,0,0,0,6684,6685,1,0,0,0,6685,6687,5,1134,0,0,6686,6681,1,0,0,0,6686,6687,1,0,0,0,6687,6695,1,0,0,0,6688,6689,5,323,0,0,6689,6691,5,1133,0,0,6690,6692,3,618,309,0,6691,6690,1,0,0,0,6691,6692,1,0,0,0,6692,6693,1,0,0,0,6693,6695,5,1134,0,0,6694,6680,1,0,0,0,6694,6688,1,0,0,0,6695,665,1,0,0,0,6696,6699,3,716,358,0,6697,6699,5,42,0,0,6698,6696,1,0,0,0,6698,6697,1,0,0,0,6699,667,1,0,0,0,6700,6701,5,77,0,0,6701,6702,5,60,0,0,6702,669,1,0,0,0,6703,6704,5,77,0,0,6704,6705,5,114,0,0,6705,6706,5,60,0,0,6706,671,1,0,0,0,6707,6708,5,123,0,0,6708,6709,5,141,0,0,6709,673,1,0,0,0,6710,6711,5,674,0,0,6711,6714,3,618,309,0,6712,6714,5,527,0,0,6713,6710,1,0,0,0,6713,6712,1,0,0,0,6714,675,1,0,0,0,6715,6734,3,678,339,0,6716,6734,3,686,343,0,6717,6734,3,688,344,0,6718,6719,3,708,354,0,6719,6721,5,1133,0,0,6720,6722,3,712,356,0,6721,6720,1,0,0,0,6721,6722,1,0,0,0,6722,6723,1,0,0,0,6723,6724,5,1134,0,0,6724,6734,1,0,0,0,6725,6726,3,552,276,0,6726,6728,5,1133,0,0,6727,6729,3,712,356,0,6728,6727,1,0,0,0,6728,6729,1,0,0,0,6729,6730,1,0,0,0,6730,6731,5,1134,0,0,6731,6734,1,0,0,0,6732,6734,3,710,355,0,6733,6715,1,0,0,0,6733,6716,1,0,0,0,6733,6717,1,0,0,0,6733,6718,1,0,0,0,6733,6725,1,0,0,0,6733,6732,1,0,0,0,6734,677,1,0,0,0,6735,6738,7,117,0,0,6736,6737,5,1133,0,0,6737,6739,5,1134,0,0,6738,6736,1,0,0,0,6738,6739,1,0,0,0,6739,6915,1,0,0,0,6740,6915,3,60,30,0,6741,6742,5,32,0,0,6742,6743,5,1133,0,0,6743,6744,3,716,358,0,6744,6745,5,1135,0,0,6745,6746,3,636,318,0,6746,6747,5,1134,0,0,6747,6915,1,0,0,0,6748,6749,5,32,0,0,6749,6750,5,1133,0,0,6750,6751,3,716,358,0,6751,6752,5,187,0,0,6752,6753,3,596,298,0,6753,6754,5,1134,0,0,6754,6915,1,0,0,0,6755,6756,5,23,0,0,6756,6757,5,1133,0,0,6757,6758,3,716,358,0,6758,6759,5,12,0,0,6759,6760,3,636,318,0,6760,6761,5,1134,0,0,6761,6915,1,0,0,0,6762,6763,5,188,0,0,6763,6764,5,1133,0,0,6764,6765,3,570,285,0,6765,6766,5,1134,0,0,6766,6915,1,0,0,0,6767,6768,5,22,0,0,6768,6770,3,716,358,0,6769,6771,3,680,340,0,6770,6769,1,0,0,0,6771,6772,1,0,0,0,6772,6770,1,0,0,0,6772,6773,1,0,0,0,6773,6776,1,0,0,0,6774,6775,5,53,0,0,6775,6777,3,714,357,0,6776,6774,1,0,0,0,6776,6777,1,0,0,0,6777,6778,1,0,0,0,6778,6779,5,407,0,0,6779,6915,1,0,0,0,6780,6782,5,22,0,0,6781,6783,3,680,340,0,6782,6781,1,0,0,0,6783,6784,1,0,0,0,6784,6782,1,0,0,0,6784,6785,1,0,0,0,6785,6788,1,0,0,0,6786,6787,5,53,0,0,6787,6789,3,714,357,0,6788,6786,1,0,0,0,6788,6789,1,0,0,0,6789,6790,1,0,0,0,6790,6791,5,407,0,0,6791,6915,1,0,0,0,6792,6793,5,222,0,0,6793,6794,5,1133,0,0,6794,6797,3,712,356,0,6795,6796,5,187,0,0,6796,6798,3,596,298,0,6797,6795,1,0,0,0,6797,6798,1,0,0,0,6798,6799,1,0,0,0,6799,6800,5,1134,0,0,6800,6915,1,0,0,0,6801,6802,5,324,0,0,6802,6805,5,1133,0,0,6803,6806,3,622,311,0,6804,6806,3,716,358,0,6805,6803,1,0,0,0,6805,6804,1,0,0,0,6806,6807,1,0,0,0,6807,6810,5,80,0,0,6808,6811,3,622,311,0,6809,6811,3,716,358,0,6810,6808,1,0,0,0,6810,6809,1,0,0,0,6811,6812,1,0,0,0,6812,6813,5,1134,0,0,6813,6915,1,0,0,0,6814,6815,7,118,0,0,6815,6818,5,1133,0,0,6816,6819,3,622,311,0,6817,6819,3,716,358,0,6818,6816,1,0,0,0,6818,6817,1,0,0,0,6819,6820,1,0,0,0,6820,6823,5,68,0,0,6821,6824,3,618,309,0,6822,6824,3,716,358,0,6823,6821,1,0,0,0,6823,6822,1,0,0,0,6824,6830,1,0,0,0,6825,6828,5,65,0,0,6826,6829,3,618,309,0,6827,6829,3,716,358,0,6828,6826,1,0,0,0,6828,6827,1,0,0,0,6829,6831,1,0,0,0,6830,6825,1,0,0,0,6830,6831,1,0,0,0,6831,6832,1,0,0,0,6832,6833,5,1134,0,0,6833,6915,1,0,0,0,6834,6835,5,328,0,0,6835,6836,5,1133,0,0,6836,6839,7,119,0,0,6837,6840,3,622,311,0,6838,6840,3,716,358,0,6839,6837,1,0,0,0,6839,6838,1,0,0,0,6839,6840,1,0,0,0,6840,6841,1,0,0,0,6841,6844,5,68,0,0,6842,6845,3,622,311,0,6843,6845,3,716,358,0,6844,6842,1,0,0,0,6844,6843,1,0,0,0,6845,6846,1,0,0,0,6846,6847,5,1134,0,0,6847,6915,1,0,0,0,6848,6849,5,328,0,0,6849,6852,5,1133,0,0,6850,6853,3,622,311,0,6851,6853,3,716,358,0,6852,6850,1,0,0,0,6852,6851,1,0,0,0,6853,6854,1,0,0,0,6854,6857,5,68,0,0,6855,6858,3,622,311,0,6856,6858,3,716,358,0,6857,6855,1,0,0,0,6857,6856,1,0,0,0,6858,6859,1,0,0,0,6859,6860,5,1134,0,0,6860,6915,1,0,0,0,6861,6862,5,1103,0,0,6862,6865,5,1133,0,0,6863,6866,3,622,311,0,6864,6866,3,716,358,0,6865,6863,1,0,0,0,6865,6864,1,0,0,0,6866,6873,1,0,0,0,6867,6868,5,12,0,0,6868,6869,7,120,0,0,6869,6870,5,1133,0,0,6870,6871,3,618,309,0,6871,6872,5,1134,0,0,6872,6874,1,0,0,0,6873,6867,1,0,0,0,6873,6874,1,0,0,0,6874,6876,1,0,0,0,6875,6877,3,682,341,0,6876,6875,1,0,0,0,6876,6877,1,0,0,0,6877,6878,1,0,0,0,6878,6879,5,1134,0,0,6879,6915,1,0,0,0,6880,6881,5,321,0,0,6881,6882,5,1133,0,0,6882,6883,3,70,35,0,6883,6886,5,68,0,0,6884,6887,3,622,311,0,6885,6887,3,716,358,0,6886,6884,1,0,0,0,6886,6885,1,0,0,0,6887,6888,1,0,0,0,6888,6889,5,1134,0,0,6889,6915,1,0,0,0,6890,6891,5,900,0,0,6891,6892,5,1133,0,0,6892,6893,7,121,0,0,6893,6894,5,1135,0,0,6894,6895,3,622,311,0,6895,6896,5,1134,0,0,6896,6915,1,0,0,0,6897,6898,5,282,0,0,6898,6899,5,1133,0,0,6899,6900,3,716,358,0,6900,6901,5,1135,0,0,6901,6904,3,716,358,0,6902,6903,5,593,0,0,6903,6905,3,636,318,0,6904,6902,1,0,0,0,6904,6905,1,0,0,0,6905,6907,1,0,0,0,6906,6908,3,266,133,0,6907,6906,1,0,0,0,6907,6908,1,0,0,0,6908,6910,1,0,0,0,6909,6911,3,268,134,0,6910,6909,1,0,0,0,6910,6911,1,0,0,0,6911,6912,1,0,0,0,6912,6913,5,1134,0,0,6913,6915,1,0,0,0,6914,6735,1,0,0,0,6914,6740,1,0,0,0,6914,6741,1,0,0,0,6914,6748,1,0,0,0,6914,6755,1,0,0,0,6914,6762,1,0,0,0,6914,6767,1,0,0,0,6914,6780,1,0,0,0,6914,6792,1,0,0,0,6914,6801,1,0,0,0,6914,6814,1,0,0,0,6914,6834,1,0,0,0,6914,6848,1,0,0,0,6914,6861,1,0,0,0,6914,6880,1,0,0,0,6914,6890,1,0,0,0,6914,6897,1,0,0,0,6915,679,1,0,0,0,6916,6917,5,189,0,0,6917,6918,3,714,357,0,6918,6919,5,174,0,0,6919,6920,3,714,357,0,6920,681,1,0,0,0,6921,6922,5,472,0,0,6922,6927,3,684,342,0,6923,6924,5,1135,0,0,6924,6926,3,684,342,0,6925,6923,1,0,0,0,6926,6929,1,0,0,0,6927,6925,1,0,0,0,6927,6928,1,0,0,0,6928,6936,1,0,0,0,6929,6927,1,0,0,0,6930,6931,5,472,0,0,6931,6932,3,618,309,0,6932,6933,5,1121,0,0,6933,6934,3,618,309,0,6934,6936,1,0,0,0,6935,6921,1,0,0,0,6935,6930,1,0,0,0,6936,683,1,0,0,0,6937,6939,3,618,309,0,6938,6940,7,122,0,0,6939,6938,1,0,0,0,6939,6940,1,0,0,0,6940,685,1,0,0,0,6941,6942,7,123,0,0,6942,6944,5,1133,0,0,6943,6945,7,44,0,0,6944,6943,1,0,0,0,6944,6945,1,0,0,0,6945,6946,1,0,0,0,6946,6947,3,714,357,0,6947,6949,5,1134,0,0,6948,6950,3,690,345,0,6949,6948,1,0,0,0,6949,6950,1,0,0,0,6950,7001,1,0,0,0,6951,6952,5,290,0,0,6952,6960,5,1133,0,0,6953,6961,5,1117,0,0,6954,6956,5,6,0,0,6955,6954,1,0,0,0,6955,6956,1,0,0,0,6956,6957,1,0,0,0,6957,6961,3,714,357,0,6958,6959,5,49,0,0,6959,6961,3,712,356,0,6960,6953,1,0,0,0,6960,6955,1,0,0,0,6960,6958,1,0,0,0,6961,6962,1,0,0,0,6962,6964,5,1134,0,0,6963,6965,3,690,345,0,6964,6963,1,0,0,0,6964,6965,1,0,0,0,6965,7001,1,0,0,0,6966,6967,7,124,0,0,6967,6969,5,1133,0,0,6968,6970,5,6,0,0,6969,6968,1,0,0,0,6969,6970,1,0,0,0,6970,6971,1,0,0,0,6971,6972,3,714,357,0,6972,6974,5,1134,0,0,6973,6975,3,690,345,0,6974,6973,1,0,0,0,6974,6975,1,0,0,0,6975,7001,1,0,0,0,6976,6977,5,294,0,0,6977,6979,5,1133,0,0,6978,6980,5,49,0,0,6979,6978,1,0,0,0,6979,6980,1,0,0,0,6980,6981,1,0,0,0,6981,6992,3,712,356,0,6982,6983,5,124,0,0,6983,6984,5,19,0,0,6984,6989,3,230,115,0,6985,6986,5,1135,0,0,6986,6988,3,230,115,0,6987,6985,1,0,0,0,6988,6991,1,0,0,0,6989,6987,1,0,0,0,6989,6990,1,0,0,0,6990,6993,1,0,0,0,6991,6989,1,0,0,0,6992,6982,1,0,0,0,6992,6993,1,0,0,0,6993,6996,1,0,0,0,6994,6995,5,154,0,0,6995,6997,5,1148,0,0,6996,6994,1,0,0,0,6996,6997,1,0,0,0,6997,6998,1,0,0,0,6998,6999,5,1134,0,0,6999,7001,1,0,0,0,7e3,6941,1,0,0,0,7e3,6951,1,0,0,0,7e3,6966,1,0,0,0,7e3,6976,1,0,0,0,7001,687,1,0,0,0,7002,7003,7,125,0,0,7003,7004,5,1133,0,0,7004,7007,3,716,358,0,7005,7006,5,1135,0,0,7006,7008,3,618,309,0,7007,7005,1,0,0,0,7007,7008,1,0,0,0,7008,7011,1,0,0,0,7009,7010,5,1135,0,0,7010,7012,3,618,309,0,7011,7009,1,0,0,0,7011,7012,1,0,0,0,7012,7013,1,0,0,0,7013,7014,5,1134,0,0,7014,7015,3,690,345,0,7015,7041,1,0,0,0,7016,7017,7,126,0,0,7017,7018,5,1133,0,0,7018,7019,3,716,358,0,7019,7020,5,1134,0,0,7020,7021,3,690,345,0,7021,7041,1,0,0,0,7022,7023,7,127,0,0,7023,7024,5,1133,0,0,7024,7025,5,1134,0,0,7025,7041,3,690,345,0,7026,7027,5,301,0,0,7027,7028,5,1133,0,0,7028,7029,3,716,358,0,7029,7030,5,1135,0,0,7030,7031,3,618,309,0,7031,7032,5,1134,0,0,7032,7033,3,690,345,0,7033,7041,1,0,0,0,7034,7035,5,300,0,0,7035,7036,5,1133,0,0,7036,7037,3,618,309,0,7037,7038,5,1134,0,0,7038,7039,3,690,345,0,7039,7041,1,0,0,0,7040,7002,1,0,0,0,7040,7016,1,0,0,0,7040,7022,1,0,0,0,7040,7026,1,0,0,0,7040,7034,1,0,0,0,7041,689,1,0,0,0,7042,7048,5,128,0,0,7043,7044,5,1133,0,0,7044,7045,3,692,346,0,7045,7046,5,1134,0,0,7046,7049,1,0,0,0,7047,7049,3,694,347,0,7048,7043,1,0,0,0,7048,7047,1,0,0,0,7049,691,1,0,0,0,7050,7052,3,694,347,0,7051,7050,1,0,0,0,7051,7052,1,0,0,0,7052,7054,1,0,0,0,7053,7055,3,706,353,0,7054,7053,1,0,0,0,7054,7055,1,0,0,0,7055,7057,1,0,0,0,7056,7058,3,228,114,0,7057,7056,1,0,0,0,7057,7058,1,0,0,0,7058,7060,1,0,0,0,7059,7061,3,696,348,0,7060,7059,1,0,0,0,7060,7061,1,0,0,0,7061,693,1,0,0,0,7062,7063,3,612,306,0,7063,695,1,0,0,0,7064,7065,3,698,349,0,7065,7066,3,700,350,0,7066,697,1,0,0,0,7067,7068,7,128,0,0,7068,699,1,0,0,0,7069,7072,3,704,352,0,7070,7072,3,702,351,0,7071,7069,1,0,0,0,7071,7070,1,0,0,0,7072,701,1,0,0,0,7073,7074,5,16,0,0,7074,7075,3,704,352,0,7075,7076,5,10,0,0,7076,7077,3,704,352,0,7077,703,1,0,0,0,7078,7079,5,35,0,0,7079,7086,5,600,0,0,7080,7081,5,657,0,0,7081,7086,7,129,0,0,7082,7083,3,716,358,0,7083,7084,7,129,0,0,7084,7086,1,0,0,0,7085,7078,1,0,0,0,7085,7080,1,0,0,0,7085,7082,1,0,0,0,7086,705,1,0,0,0,7087,7088,5,129,0,0,7088,7089,5,19,0,0,7089,7094,3,716,358,0,7090,7091,5,1135,0,0,7091,7093,3,716,358,0,7092,7090,1,0,0,0,7093,7096,1,0,0,0,7094,7092,1,0,0,0,7094,7095,1,0,0,0,7095,707,1,0,0,0,7096,7094,1,0,0,0,7097,7122,3,748,374,0,7098,7122,5,747,0,0,7099,7122,5,317,0,0,7100,7122,5,313,0,0,7101,7122,5,314,0,0,7102,7122,5,315,0,0,7103,7122,5,318,0,0,7104,7122,5,319,0,0,7105,7122,5,320,0,0,7106,7122,5,77,0,0,7107,7122,5,85,0,0,7108,7122,5,316,0,0,7109,7122,5,322,0,0,7110,7122,5,508,0,0,7111,7122,5,323,0,0,7112,7122,5,140,0,0,7113,7122,5,141,0,0,7114,7122,5,325,0,0,7115,7122,5,326,0,0,7116,7122,5,327,0,0,7117,7122,5,328,0,0,7118,7122,5,329,0,0,7119,7122,5,330,0,0,7120,7122,5,331,0,0,7121,7097,1,0,0,0,7121,7098,1,0,0,0,7121,7099,1,0,0,0,7121,7100,1,0,0,0,7121,7101,1,0,0,0,7121,7102,1,0,0,0,7121,7103,1,0,0,0,7121,7104,1,0,0,0,7121,7105,1,0,0,0,7121,7106,1,0,0,0,7121,7107,1,0,0,0,7121,7108,1,0,0,0,7121,7109,1,0,0,0,7121,7110,1,0,0,0,7121,7111,1,0,0,0,7121,7112,1,0,0,0,7121,7113,1,0,0,0,7121,7114,1,0,0,0,7121,7115,1,0,0,0,7121,7116,1,0,0,0,7121,7117,1,0,0,0,7121,7118,1,0,0,0,7121,7119,1,0,0,0,7121,7120,1,0,0,0,7122,709,1,0,0,0,7123,7124,7,130,0,0,7124,7125,5,1133,0,0,7125,7126,3,714,357,0,7126,7127,5,1134,0,0,7127,711,1,0,0,0,7128,7133,3,630,315,0,7129,7133,3,570,285,0,7130,7133,3,676,338,0,7131,7133,3,716,358,0,7132,7128,1,0,0,0,7132,7129,1,0,0,0,7132,7130,1,0,0,0,7132,7131,1,0,0,0,7133,7143,1,0,0,0,7134,7139,5,1135,0,0,7135,7140,3,630,315,0,7136,7140,3,570,285,0,7137,7140,3,676,338,0,7138,7140,3,716,358,0,7139,7135,1,0,0,0,7139,7136,1,0,0,0,7139,7137,1,0,0,0,7139,7138,1,0,0,0,7140,7142,1,0,0,0,7141,7134,1,0,0,0,7142,7145,1,0,0,0,7143,7141,1,0,0,0,7143,7144,1,0,0,0,7144,713,1,0,0,0,7145,7143,1,0,0,0,7146,7151,3,630,315,0,7147,7151,3,570,285,0,7148,7151,3,676,338,0,7149,7151,3,716,358,0,7150,7146,1,0,0,0,7150,7147,1,0,0,0,7150,7148,1,0,0,0,7150,7149,1,0,0,0,7151,715,1,0,0,0,7152,7153,6,358,-1,0,7153,7154,7,131,0,0,7154,7164,3,716,358,4,7155,7156,3,718,359,0,7156,7158,5,88,0,0,7157,7159,5,114,0,0,7158,7157,1,0,0,0,7158,7159,1,0,0,0,7159,7160,1,0,0,0,7160,7161,7,132,0,0,7161,7164,1,0,0,0,7162,7164,3,718,359,0,7163,7152,1,0,0,0,7163,7155,1,0,0,0,7163,7162,1,0,0,0,7164,7171,1,0,0,0,7165,7166,10,3,0,0,7166,7167,3,726,363,0,7167,7168,3,716,358,4,7168,7170,1,0,0,0,7169,7165,1,0,0,0,7170,7173,1,0,0,0,7171,7169,1,0,0,0,7171,7172,1,0,0,0,7172,717,1,0,0,0,7173,7171,1,0,0,0,7174,7175,6,359,-1,0,7175,7176,3,720,360,0,7176,7241,1,0,0,0,7177,7178,10,8,0,0,7178,7179,3,724,362,0,7179,7180,3,718,359,9,7180,7240,1,0,0,0,7181,7183,10,6,0,0,7182,7184,5,114,0,0,7183,7182,1,0,0,0,7183,7184,1,0,0,0,7184,7185,1,0,0,0,7185,7186,5,16,0,0,7186,7187,3,718,359,0,7187,7188,5,10,0,0,7188,7189,3,718,359,7,7189,7240,1,0,0,0,7190,7191,10,5,0,0,7191,7192,5,620,0,0,7192,7193,5,98,0,0,7193,7240,3,718,359,6,7194,7196,10,3,0,0,7195,7197,5,114,0,0,7196,7195,1,0,0,0,7196,7197,1,0,0,0,7197,7198,1,0,0,0,7198,7199,7,133,0,0,7199,7240,3,718,359,4,7200,7202,10,10,0,0,7201,7203,5,114,0,0,7202,7201,1,0,0,0,7202,7203,1,0,0,0,7203,7204,1,0,0,0,7204,7205,5,80,0,0,7205,7208,5,1133,0,0,7206,7209,3,198,99,0,7207,7209,3,652,326,0,7208,7206,1,0,0,0,7208,7207,1,0,0,0,7209,7210,1,0,0,0,7210,7211,5,1134,0,0,7211,7240,1,0,0,0,7212,7213,10,9,0,0,7213,7214,5,88,0,0,7214,7240,3,628,314,0,7215,7216,10,7,0,0,7216,7217,3,724,362,0,7217,7218,7,134,0,0,7218,7219,5,1133,0,0,7219,7220,3,198,99,0,7220,7221,5,1134,0,0,7221,7240,1,0,0,0,7222,7224,10,4,0,0,7223,7225,5,114,0,0,7224,7223,1,0,0,0,7224,7225,1,0,0,0,7225,7226,1,0,0,0,7226,7227,5,98,0,0,7227,7230,3,718,359,0,7228,7229,5,413,0,0,7229,7231,5,1148,0,0,7230,7228,1,0,0,0,7230,7231,1,0,0,0,7231,7240,1,0,0,0,7232,7233,10,2,0,0,7233,7234,5,505,0,0,7234,7235,5,533,0,0,7235,7236,5,1133,0,0,7236,7237,3,718,359,0,7237,7238,5,1134,0,0,7238,7240,1,0,0,0,7239,7177,1,0,0,0,7239,7181,1,0,0,0,7239,7190,1,0,0,0,7239,7194,1,0,0,0,7239,7200,1,0,0,0,7239,7212,1,0,0,0,7239,7215,1,0,0,0,7239,7222,1,0,0,0,7239,7232,1,0,0,0,7240,7243,1,0,0,0,7241,7239,1,0,0,0,7241,7242,1,0,0,0,7242,719,1,0,0,0,7243,7241,1,0,0,0,7244,7245,6,360,-1,0,7245,7293,3,630,315,0,7246,7293,3,570,285,0,7247,7293,3,676,338,0,7248,7293,3,594,297,0,7249,7250,3,722,361,0,7250,7251,3,720,360,12,7251,7293,1,0,0,0,7252,7253,5,226,0,0,7253,7293,3,720,360,11,7254,7255,5,1159,0,0,7255,7256,5,1108,0,0,7256,7293,3,720,360,10,7257,7258,5,1133,0,0,7258,7263,3,716,358,0,7259,7260,5,1135,0,0,7260,7262,3,716,358,0,7261,7259,1,0,0,0,7262,7265,1,0,0,0,7263,7261,1,0,0,0,7263,7264,1,0,0,0,7264,7266,1,0,0,0,7265,7263,1,0,0,0,7266,7267,5,1134,0,0,7267,7293,1,0,0,0,7268,7269,5,600,0,0,7269,7270,5,1133,0,0,7270,7273,3,716,358,0,7271,7272,5,1135,0,0,7272,7274,3,716,358,0,7273,7271,1,0,0,0,7274,7275,1,0,0,0,7275,7273,1,0,0,0,7275,7276,1,0,0,0,7276,7277,1,0,0,0,7277,7278,5,1134,0,0,7278,7293,1,0,0,0,7279,7280,5,60,0,0,7280,7281,5,1133,0,0,7281,7282,3,198,99,0,7282,7283,5,1134,0,0,7283,7293,1,0,0,0,7284,7285,5,1133,0,0,7285,7286,3,198,99,0,7286,7287,5,1134,0,0,7287,7293,1,0,0,0,7288,7289,5,86,0,0,7289,7290,3,716,358,0,7290,7291,3,70,35,0,7291,7293,1,0,0,0,7292,7244,1,0,0,0,7292,7246,1,0,0,0,7292,7247,1,0,0,0,7292,7248,1,0,0,0,7292,7249,1,0,0,0,7292,7252,1,0,0,0,7292,7254,1,0,0,0,7292,7257,1,0,0,0,7292,7268,1,0,0,0,7292,7279,1,0,0,0,7292,7284,1,0,0,0,7292,7288,1,0,0,0,7293,7315,1,0,0,0,7294,7295,10,4,0,0,7295,7296,3,728,364,0,7296,7297,3,720,360,5,7297,7314,1,0,0,0,7298,7299,10,3,0,0,7299,7300,3,730,365,0,7300,7301,3,720,360,4,7301,7314,1,0,0,0,7302,7303,10,2,0,0,7303,7304,3,732,366,0,7304,7305,3,720,360,3,7305,7314,1,0,0,0,7306,7307,10,1,0,0,7307,7308,3,734,367,0,7308,7309,3,720,360,2,7309,7314,1,0,0,0,7310,7311,10,14,0,0,7311,7312,5,27,0,0,7312,7314,3,598,299,0,7313,7294,1,0,0,0,7313,7298,1,0,0,0,7313,7302,1,0,0,0,7313,7306,1,0,0,0,7313,7310,1,0,0,0,7314,7317,1,0,0,0,7315,7313,1,0,0,0,7315,7316,1,0,0,0,7316,721,1,0,0,0,7317,7315,1,0,0,0,7318,7319,7,135,0,0,7319,723,1,0,0,0,7320,7335,5,1124,0,0,7321,7335,5,1125,0,0,7322,7335,5,1126,0,0,7323,7324,5,1126,0,0,7324,7335,5,1124,0,0,7325,7326,5,1125,0,0,7326,7335,5,1124,0,0,7327,7328,5,1126,0,0,7328,7335,5,1125,0,0,7329,7330,5,1127,0,0,7330,7335,5,1124,0,0,7331,7332,5,1126,0,0,7332,7333,5,1124,0,0,7333,7335,5,1125,0,0,7334,7320,1,0,0,0,7334,7321,1,0,0,0,7334,7322,1,0,0,0,7334,7323,1,0,0,0,7334,7325,1,0,0,0,7334,7327,1,0,0,0,7334,7329,1,0,0,0,7334,7331,1,0,0,0,7335,725,1,0,0,0,7336,7344,5,10,0,0,7337,7338,5,1130,0,0,7338,7344,5,1130,0,0,7339,7344,5,194,0,0,7340,7344,5,123,0,0,7341,7342,5,1129,0,0,7342,7344,5,1129,0,0,7343,7336,1,0,0,0,7343,7337,1,0,0,0,7343,7339,1,0,0,0,7343,7340,1,0,0,0,7343,7341,1,0,0,0,7344,727,1,0,0,0,7345,7346,5,1126,0,0,7346,7353,5,1126,0,0,7347,7348,5,1125,0,0,7348,7353,5,1125,0,0,7349,7353,5,1130,0,0,7350,7353,5,1131,0,0,7351,7353,5,1129,0,0,7352,7345,1,0,0,0,7352,7347,1,0,0,0,7352,7349,1,0,0,0,7352,7350,1,0,0,0,7352,7351,1,0,0,0,7353,729,1,0,0,0,7354,7355,7,136,0,0,7355,731,1,0,0,0,7356,7357,7,137,0,0,7357,733,1,0,0,0,7358,7359,5,1121,0,0,7359,7364,5,1125,0,0,7360,7361,5,1121,0,0,7361,7362,5,1125,0,0,7362,7364,5,1125,0,0,7363,7358,1,0,0,0,7363,7360,1,0,0,0,7364,735,1,0,0,0,7365,7366,7,138,0,0,7366,737,1,0,0,0,7367,7368,7,139,0,0,7368,739,1,0,0,0,7369,7370,7,140,0,0,7370,741,1,0,0,0,7371,7372,7,141,0,0,7372,743,1,0,0,0,7373,7374,7,142,0,0,7374,745,1,0,0,0,7375,7376,7,143,0,0,7376,747,1,0,0,0,7377,7378,7,144,0,0,7378,749,1,0,0,0,1057,751,757,763,772,812,827,838,855,860,872,899,908,913,919,924,928,937,940,943,947,954,957,962,970,975,980,983,985,997,1e3,1004,1007,1011,1014,1018,1021,1024,1028,1031,1035,1041,1047,1053,1060,1067,1070,1074,1079,1085,1094,1099,1104,1122,1129,1133,1143,1147,1151,1155,1159,1164,1167,1170,1173,1176,1182,1186,1192,1197,1200,1203,1205,1216,1220,1223,1237,1240,1244,1247,1251,1254,1258,1261,1265,1268,1271,1275,1278,1282,1288,1292,1304,1310,1321,1326,1334,1342,1347,1350,1355,1363,1368,1374,1379,1383,1385,1388,1392,1396,1399,1403,1407,1411,1417,1420,1427,1432,1438,1445,1451,1459,1462,1469,1472,1474,1480,1486,1503,1510,1517,1529,1534,1537,1540,1553,1566,1571,1587,1595,1605,1608,1611,1617,1621,1624,1635,1638,1643,1656,1663,1670,1672,1679,1683,1685,1690,1693,1699,1704,1706,1710,1713,1716,1722,1727,1729,1734,1741,1743,1750,1755,1759,1762,1770,1778,1780,1790,1794,1797,1803,1808,1811,1817,1820,1824,1827,1831,1836,1841,1846,1850,1854,1858,1862,1866,1870,1875,1880,1885,1891,1896,1901,1906,1911,1916,1922,1927,1932,1937,1942,1947,1952,1957,1964,1969,1974,1979,1983,1988,1996,2001,2007,2019,2026,2028,2036,2041,2044,2052,2058,2062,2075,2087,2089,2092,2100,2106,2112,2125,2132,2141,2146,2157,2166,2171,2183,2190,2199,2204,2216,2223,2232,2237,2244,2253,2258,2260,2265,2273,2282,2286,2289,2293,2298,2304,2310,2315,2320,2325,2330,2333,2341,2351,2355,2362,2367,2370,2375,2378,2382,2386,2394,2413,2416,2419,2423,2433,2446,2453,2456,2461,2468,2471,2474,2485,2488,2492,2500,2503,2508,2516,2522,2526,2530,2535,2540,2547,2551,2562,2570,2573,2579,2585,2587,2592,2595,2601,2607,2609,2613,2616,2619,2625,2631,2634,2640,2646,2648,2653,2661,2663,2672,2675,2678,2683,2685,2694,2697,2700,2705,2707,2716,2721,2729,2733,2741,2751,2756,2763,2767,2771,2790,2800,2806,2823,2827,2837,2842,2845,2854,2865,2873,2879,2889,2901,2908,2915,2930,2943,2949,2955,2961,2967,2973,2979,2984,2991,2998,3005,3010,3013,3015,3029,3036,3043,3049,3053,3057,3064,3067,3072,3079,3086,3090,3095,3105,3112,3121,3130,3139,3142,3146,3155,3159,3162,3165,3171,3174,3178,3181,3185,3188,3196,3199,3210,3213,3218,3221,3226,3236,3241,3247,3249,3255,3257,3263,3271,3276,3284,3287,3292,3295,3300,3308,3316,3322,3330,3335,3343,3346,3350,3353,3361,3367,3376,3379,3383,3387,3391,3396,3400,3404,3406,3409,3412,3415,3421,3425,3428,3431,3434,3437,3444,3446,3450,3455,3461,3466,3473,3479,3484,3487,3493,3497,3505,3509,3512,3515,3520,3523,3530,3534,3537,3541,3545,3548,3551,3556,3562,3566,3576,3582,3586,3592,3596,3602,3605,3617,3621,3625,3633,3637,3645,3648,3652,3655,3663,3668,3671,3674,3678,3681,3690,3695,3704,3709,3716,3723,3731,3737,3745,3748,3751,3758,3761,3768,3776,3782,3793,3796,3800,3806,3815,3820,3824,3830,3836,3838,3842,3851,3861,3871,3877,3882,3886,3889,3892,3895,3898,3904,3910,3913,3916,3919,3922,3925,3927,3933,3939,3942,3945,3948,3951,3954,3958,3964,3968,3976,3980,3983,3985,3998,4001,4008,4018,4021,4026,4028,4032,4040,4046,4055,4068,4072,4078,4082,4092,4096,4100,4104,4106,4114,4126,4132,4134,4140,4142,4144,4150,4158,4166,4170,4174,4183,4188,4208,4213,4219,4226,4231,4240,4243,4247,4251,4255,4258,4261,4264,4268,4272,4275,4278,4281,4288,4292,4307,4311,4323,4331,4341,4345,4348,4354,4357,4360,4369,4378,4388,4392,4402,4412,4420,4423,4432,4435,4439,4444,4448,4457,4460,4491,4494,4497,4553,4558,4586,4600,4607,4611,4617,4625,4627,4638,4648,4655,4661,4669,4674,4682,4690,4698,4706,4712,4717,4722,4727,4733,4735,4746,4751,4758,4760,4774,4780,4785,4790,4796,4803,4811,4819,4824,4830,4833,4841,4848,4857,4860,4877,4885,4893,4897,4904,4910,4918,4927,4933,4940,4945,4948,4950,4956,4958,4962,4964,4971,4976,4983,4991,4997,5003,5008,5011,5013,5019,5021,5025,5027,5034,5036,5041,5051,5056,5065,5070,5073,5075,5081,5083,5086,5094,5103,5105,5112,5115,5127,5133,5142,5151,5156,5165,5178,5181,5193,5200,5205,5215,5243,5247,5252,5259,5262,5268,5278,5288,5298,5304,5313,5319,5326,5328,5338,5342,5346,5356,5361,5433,5451,5459,5471,5478,5480,5490,5493,5501,5508,5512,5519,5524,5527,5530,5539,5543,5547,5570,5577,5581,5588,5595,5598,5614,5617,5627,5631,5637,5640,5645,5649,5656,5659,5665,5697,5700,5712,5715,5725,5733,5737,5744,5747,5756,5762,5768,5778,5780,5786,5789,5792,5804,5807,5813,5816,5824,5832,5838,5842,5856,5868,5875,5878,5885,5892,5897,5910,5921,5927,5932,5945,5947,5952,5956,5959,5961,5968,5975,5978,5981,5987,5991,5997,6003,6016,6021,6029,6032,6037,6042,6050,6053,6061,6065,6072,6078,6081,6085,6098,6104,6116,6119,6128,6133,6139,6148,6153,6160,6168,6178,6186,6188,6191,6195,6197,6212,6217,6223,6226,6229,6235,6244,6252,6262,6266,6271,6291,6298,6300,6307,6309,6313,6318,6329,6334,6340,6343,6347,6352,6355,6359,6363,6365,6370,6375,6388,6391,6395,6398,6401,6406,6411,6417,6420,6425,6428,6433,6436,6440,6445,6450,6455,6460,6463,6468,6473,6478,6484,6489,6494,6499,6503,6506,6511,6515,6519,6527,6534,6538,6543,6548,6552,6554,6557,6573,6582,6590,6598,6607,6617,6625,6633,6641,6649,6661,6668,6678,6683,6686,6691,6694,6698,6713,6721,6728,6733,6738,6772,6776,6784,6788,6797,6805,6810,6818,6823,6828,6830,6839,6844,6852,6857,6865,6873,6876,6886,6904,6907,6910,6914,6927,6935,6939,6944,6949,6955,6960,6964,6969,6974,6979,6989,6992,6996,7e3,7007,7011,7040,7048,7051,7054,7057,7060,7071,7085,7094,7121,7132,7139,7143,7150,7158,7163,7171,7183,7196,7202,7208,7224,7230,7239,7241,7263,7275,7292,7313,7315,7334,7343,7352,7363],Qi.vocabulary=new Ra(Qi.literalNames,Qi.symbolicNames,[]),Qi.decisionsToDFA=Qi._ATN.decisionToState.map(((t,e)=>new ni(t,e))),Qi),vC=class extends ga{constructor(t,e){super(t,e)}EOF(){return this.getToken(FC.EOF,0)}statements(){return this.getRuleContext(0,BC)}get ruleIndex(){return FC.RULE_root}accept(t){return t.visitRoot?t.visitRoot(this):t.visitChildren(this)}},BC=class t extends ga{constructor(t,e){super(t,e)}statement(){return this.getRuleContext(0,yC)}SEMI(){return this.getToken(FC.SEMI,0)}statements(){return this.getRuleContext(0,t)}get ruleIndex(){return FC.RULE_statements}accept(t){return t.visitStatements?t.visitStatements(this):t.visitChildren(this)}},yC=class extends ga{constructor(t,e){super(t,e)}ddlStatement(){return this.getRuleContext(0,fC)}dmlStatement(){return this.getRuleContext(0,YC)}transactionStatement(){return this.getRuleContext(0,wC)}replicationStatement(){return this.getRuleContext(0,bC)}preparedStatement(){return this.getRuleContext(0,WC)}administrationStatement(){return this.getRuleContext(0,XC)}utilityStatement(){return this.getRuleContext(0,KC)}get ruleIndex(){return FC.RULE_statement}accept(t){return t.visitStatement?t.visitStatement(this):t.visitChildren(this)}},fC=class extends ga{constructor(t,e){super(t,e)}createDatabase(){return this.getRuleContext(0,QC)}createEvent(){return this.getRuleContext(0,JC)}createIndex(){return this.getRuleContext(0,ZC)}createLogfileGroup(){return this.getRuleContext(0,qC)}createProcedure(){return this.getRuleContext(0,jC)}createFunction(){return this.getRuleContext(0,zC)}createServer(){return this.getRuleContext(0,t_)}createTable(){return this.getRuleContext(0,e_)}createTablespaceInnodb(){return this.getRuleContext(0,i_)}createTablespaceNdb(){return this.getRuleContext(0,c_)}createTrigger(){return this.getRuleContext(0,n_)}createView(){return this.getRuleContext(0,R_)}createRole(){return this.getRuleContext(0,$C)}alterDatabase(){return this.getRuleContext(0,PM)}alterEvent(){return this.getRuleContext(0,UM)}alterFunction(){return this.getRuleContext(0,mM)}alterInstance(){return this.getRuleContext(0,DM)}alterLogfileGroup(){return this.getRuleContext(0,pM)}alterProcedure(){return this.getRuleContext(0,gM)}alterServer(){return this.getRuleContext(0,xM)}alterTable(){return this.getRuleContext(0,kM)}alterTablespace(){return this.getRuleContext(0,HM)}alterView(){return this.getRuleContext(0,GM)}dropDatabase(){return this.getRuleContext(0,Gd)}dropEvent(){return this.getRuleContext(0,Fd)}dropIndex(){return this.getRuleContext(0,vd)}dropLogfileGroup(){return this.getRuleContext(0,Bd)}dropProcedure(){return this.getRuleContext(0,yd)}dropFunction(){return this.getRuleContext(0,fd)}dropServer(){return this.getRuleContext(0,Yd)}dropTable(){return this.getRuleContext(0,wd)}dropTablespace(){return this.getRuleContext(0,bd)}dropTrigger(){return this.getRuleContext(0,Wd)}dropView(){return this.getRuleContext(0,Vd)}dropRole(){return this.getRuleContext(0,Xd)}setRole(){return this.getRuleContext(0,Kd)}renameTable(){return this.getRuleContext(0,Qd)}truncateTable(){return this.getRuleContext(0,Zd)}get ruleIndex(){return FC.RULE_ddlStatement}accept(t){return t.visitDdlStatement?t.visitDdlStatement(this):t.visitChildren(this)}},YC=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,rU)}insertStatement(){return this.getRuleContext(0,tU)}updateStatement(){return this.getRuleContext(0,TU)}deleteStatement(){return this.getRuleContext(0,jd)}replaceStatement(){return this.getRuleContext(0,aU)}callStatement(){return this.getRuleContext(0,qd)}loadDataStatement(){return this.getRuleContext(0,eU)}loadXmlStatement(){return this.getRuleContext(0,sU)}doStatement(){return this.getRuleContext(0,zd)}handlerStatement(){return this.getRuleContext(0,$d)}valuesStatement(){return this.getRuleContext(0,oU)}withStatement(){return this.getRuleContext(0,nx)}tableStatement(){return this.getRuleContext(0,hx)}get ruleIndex(){return FC.RULE_dmlStatement}accept(t){return t.visitDmlStatement?t.visitDmlStatement(this):t.visitChildren(this)}},wC=class extends ga{constructor(t,e){super(t,e)}startTransaction(){return this.getRuleContext(0,_m)}beginWork(){return this.getRuleContext(0,Pm)}commitWork(){return this.getRuleContext(0,Mm)}rollbackWork(){return this.getRuleContext(0,dm)}savepointStatement(){return this.getRuleContext(0,Um)}rollbackStatement(){return this.getRuleContext(0,mm)}releaseStatement(){return this.getRuleContext(0,Dm)}lockTables(){return this.getRuleContext(0,pm)}unlockTables(){return this.getRuleContext(0,gm)}get ruleIndex(){return FC.RULE_transactionStatement}accept(t){return t.visitTransactionStatement?t.visitTransactionStatement(this):t.visitChildren(this)}},bC=class extends ga{constructor(t,e){super(t,e)}changeMaster(){return this.getRuleContext(0,ym)}changeReplicationFilter(){return this.getRuleContext(0,fm)}purgeBinaryLogs(){return this.getRuleContext(0,Ym)}resetMaster(){return this.getRuleContext(0,wm)}resetSlave(){return this.getRuleContext(0,bm)}startSlave(){return this.getRuleContext(0,Wm)}stopSlave(){return this.getRuleContext(0,Vm)}startGroupReplication(){return this.getRuleContext(0,Xm)}stopGroupReplication(){return this.getRuleContext(0,Km)}xaStartTransaction(){return this.getRuleContext(0,MD)}xaEndTransaction(){return this.getRuleContext(0,dD)}xaPrepareStatement(){return this.getRuleContext(0,UD)}xaCommitWork(){return this.getRuleContext(0,mD)}xaRollbackWork(){return this.getRuleContext(0,DD)}xaRecoverWork(){return this.getRuleContext(0,pD)}get ruleIndex(){return FC.RULE_replicationStatement}accept(t){return t.visitReplicationStatement?t.visitReplicationStatement(this):t.visitChildren(this)}},WC=class extends ga{constructor(t,e){super(t,e)}prepareStatement(){return this.getRuleContext(0,gD)}executeStatement(){return this.getRuleContext(0,xD)}deallocatePrepare(){return this.getRuleContext(0,kD)}get ruleIndex(){return FC.RULE_preparedStatement}accept(t){return t.visitPreparedStatement?t.visitPreparedStatement(this):t.visitChildren(this)}},VC=class extends ga{constructor(t,e){super(t,e)}blockStatement(){return this.getRuleContext(0,GD)}caseStatement(){return this.getRuleContext(0,FD)}ifStatement(){return this.getRuleContext(0,vD)}leaveStatement(){return this.getRuleContext(0,yD)}loopStatement(){return this.getRuleContext(0,fD)}repeatStatement(){return this.getRuleContext(0,YD)}whileStatement(){return this.getRuleContext(0,bD)}iterateStatement(){return this.getRuleContext(0,BD)}returnStatement(){return this.getRuleContext(0,wD)}cursorStatement(){return this.getRuleContext(0,WD)}get ruleIndex(){return FC.RULE_compoundStatement}accept(t){return t.visitCompoundStatement?t.visitCompoundStatement(this):t.visitChildren(this)}},XC=class extends ga{constructor(t,e){super(t,e)}alterUser(){return this.getRuleContext(0,np)}createUser(){return this.getRuleContext(0,Tp)}dropUser(){return this.getRuleContext(0,Ap)}grantStatement(){return this.getRuleContext(0,Sp)}grantProxy(){return this.getRuleContext(0,Op)}renameUser(){return this.getRuleContext(0,Ip)}revokeStatement(){return this.getRuleContext(0,up)}revokeProxy(){return this.getRuleContext(0,_p)}analyzeTable(){return this.getRuleContext(0,qp)}checkTable(){return this.getRuleContext(0,jp)}checksumTable(){return this.getRuleContext(0,zp)}optimizeTable(){return this.getRuleContext(0,$p)}repairTable(){return this.getRuleContext(0,tg)}createUdfunction(){return this.getRuleContext(0,sg)}installPlugin(){return this.getRuleContext(0,ag)}uninstallPlugin(){return this.getRuleContext(0,rg)}setStatement(){return this.getRuleContext(0,ig)}showStatement(){return this.getRuleContext(0,Ag)}binlogStatement(){return this.getRuleContext(0,Yg)}cacheIndexStatement(){return this.getRuleContext(0,wg)}flushStatement(){return this.getRuleContext(0,bg)}killStatement(){return this.getRuleContext(0,Wg)}loadIndexIntoCache(){return this.getRuleContext(0,Vg)}resetStatement(){return this.getRuleContext(0,Xg)}shutdownStatement(){return this.getRuleContext(0,Kg)}get ruleIndex(){return FC.RULE_administrationStatement}accept(t){return t.visitAdministrationStatement?t.visitAdministrationStatement(this):t.visitChildren(this)}},KC=class extends ga{constructor(t,e){super(t,e)}simpleDescribeStatement(){return this.getRuleContext(0,tx)}fullDescribeStatement(){return this.getRuleContext(0,ex)}helpStatement(){return this.getRuleContext(0,sx)}useStatement(){return this.getRuleContext(0,ax)}signalStatement(){return this.getRuleContext(0,rx)}resignalStatement(){return this.getRuleContext(0,ix)}diagnosticsStatement(){return this.getRuleContext(0,Ex)}get ruleIndex(){return FC.RULE_utilityStatement}accept(t){return t.visitUtilityStatement?t.visitUtilityStatement(this):t.visitChildren(this)}},QC=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}uid(){return this.getRuleContext(0,Vx)}DATABASE(){return this.getToken(FC.DATABASE,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}ifNotExists(){return this.getRuleContext(0,Dk)}createDatabaseOption(t){return void 0===t?this.getRuleContexts(A_):this.getRuleContext(t,A_)}get ruleIndex(){return FC.RULE_createDatabase}accept(t){return t.visitCreateDatabase?t.visitCreateDatabase(this):t.visitChildren(this)}},JC=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}EVENT(){return this.getToken(FC.EVENT,0)}fullId(){return this.getRuleContext(0,Sx)}ON(t){return void 0===t?this.getTokens(FC.ON):this.getToken(FC.ON,t)}SCHEDULE(){return this.getToken(FC.SCHEDULE,0)}scheduleExpression(){return this.getRuleContext(0,I_)}DO(){return this.getToken(FC.DO,0)}routineBody(){return this.getRuleContext(0,HD)}ownerStatement(){return this.getRuleContext(0,O_)}ifNotExists(){return this.getRuleContext(0,Dk)}COMPLETION(){return this.getToken(FC.COMPLETION,0)}PRESERVE(){return this.getToken(FC.PRESERVE,0)}enableType(){return this.getRuleContext(0,P_)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}NOT(){return this.getToken(FC.NOT,0)}get ruleIndex(){return FC.RULE_createEvent}accept(t){return t.visitCreateEvent?t.visitCreateEvent(this):t.visitChildren(this)}},ZC=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}INDEX(){return this.getToken(FC.INDEX,0)}uid(){return this.getRuleContext(0,Vx)}ON(){return this.getToken(FC.ON,0)}tableName(){return this.getRuleContext(0,lx)}indexColumnNames(){return this.getRuleContext(0,uk)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}ALGORITHM(t){return void 0===t?this.getTokens(FC.ALGORITHM):this.getToken(FC.ALGORITHM,t)}LOCK(t){return void 0===t?this.getTokens(FC.LOCK):this.getToken(FC.LOCK,t)}ONLINE(){return this.getToken(FC.ONLINE,0)}OFFLINE(){return this.getToken(FC.OFFLINE,0)}UNIQUE(){return this.getToken(FC.UNIQUE,0)}FULLTEXT(){return this.getToken(FC.FULLTEXT,0)}SPATIAL(){return this.getToken(FC.SPATIAL,0)}DEFAULT(t){return void 0===t?this.getTokens(FC.DEFAULT):this.getToken(FC.DEFAULT,t)}INPLACE(t){return void 0===t?this.getTokens(FC.INPLACE):this.getToken(FC.INPLACE,t)}COPY(t){return void 0===t?this.getTokens(FC.COPY):this.getToken(FC.COPY,t)}NONE(t){return void 0===t?this.getTokens(FC.NONE):this.getToken(FC.NONE,t)}SHARED(t){return void 0===t?this.getTokens(FC.SHARED):this.getToken(FC.SHARED,t)}EXCLUSIVE(t){return void 0===t?this.getTokens(FC.EXCLUSIVE):this.getToken(FC.EXCLUSIVE,t)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}get ruleIndex(){return FC.RULE_createIndex}accept(t){return t.visitCreateIndex?t.visitCreateIndex(this):t.visitChildren(this)}},qC=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}LOGFILE(){return this.getToken(FC.LOGFILE,0)}GROUP(){return this.getToken(FC.GROUP,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}ADD(){return this.getToken(FC.ADD,0)}UNDOFILE(){return this.getToken(FC.UNDOFILE,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}INITIAL_SIZE(){return this.getToken(FC.INITIAL_SIZE,0)}UNDO_BUFFER_SIZE(){return this.getToken(FC.UNDO_BUFFER_SIZE,0)}REDO_BUFFER_SIZE(){return this.getToken(FC.REDO_BUFFER_SIZE,0)}NODEGROUP(){return this.getToken(FC.NODEGROUP,0)}WAIT(){return this.getToken(FC.WAIT,0)}COMMENT(){return this.getToken(FC.COMMENT,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}fileSizeLiteral(t){return void 0===t?this.getRuleContexts(Jx):this.getRuleContext(t,Jx)}get ruleIndex(){return FC.RULE_createLogfileGroup}accept(t){return t.visitCreateLogfileGroup?t.visitCreateLogfileGroup(this):t.visitChildren(this)}},jC=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}fullId(){return this.getRuleContext(0,Sx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}routineBody(){return this.getRuleContext(0,HD)}ownerStatement(){return this.getRuleContext(0,O_)}procedureParameter(t){return void 0===t?this.getRuleContexts(U_):this.getRuleContext(t,U_)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}routineOption(t){return void 0===t?this.getRuleContexts(D_):this.getRuleContext(t,D_)}get ruleIndex(){return FC.RULE_createProcedure}accept(t){return t.visitCreateProcedure?t.visitCreateProcedure(this):t.visitChildren(this)}},zC=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}fullId(){return this.getRuleContext(0,Sx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}RETURNS(){return this.getToken(FC.RETURNS,0)}dataType(){return this.getRuleContext(0,tk)}routineBody(){return this.getRuleContext(0,HD)}returnStatement(){return this.getRuleContext(0,wD)}ownerStatement(){return this.getRuleContext(0,O_)}AGGREGATE(){return this.getToken(FC.AGGREGATE,0)}ifNotExists(){return this.getRuleContext(0,Dk)}functionParameter(t){return void 0===t?this.getRuleContexts(m_):this.getRuleContext(t,m_)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}routineOption(t){return void 0===t?this.getRuleContexts(D_):this.getRuleContext(t,D_)}get ruleIndex(){return FC.RULE_createFunction}accept(t){return t.visitCreateFunction?t.visitCreateFunction(this):t.visitChildren(this)}},$C=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}ROLE(){return this.getToken(FC.ROLE,0)}newRoleNameList(){return this.getRuleContext(0,Nx)}ifNotExists(){return this.getRuleContext(0,Dk)}get ruleIndex(){return FC.RULE_createRole}accept(t){return t.visitCreateRole?t.visitCreateRole(this):t.visitChildren(this)}},t_=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}SERVER(){return this.getToken(FC.SERVER,0)}uid(){return this.getRuleContext(0,Vx)}FOREIGN(){return this.getToken(FC.FOREIGN,0)}DATA(){return this.getToken(FC.DATA,0)}WRAPPER(){return this.getToken(FC.WRAPPER,0)}OPTIONS(){return this.getToken(FC.OPTIONS,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}serverOption(t){return void 0===t?this.getRuleContexts(G_):this.getRuleContext(t,G_)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}MYSQL(){return this.getToken(FC.MYSQL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_createServer}accept(t){return t.visitCreateServer?t.visitCreateServer(this):t.visitChildren(this)}},e_=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_createTable}copyFrom(t){super.copyFrom(t)}},s_=class extends e_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CREATE(){return this.getToken(FC.CREATE,0)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(t){return void 0===t?this.getRuleContexts(lx):this.getRuleContext(t,lx)}LIKE(){return this.getToken(FC.LIKE,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}TEMPORARY(){return this.getToken(FC.TEMPORARY,0)}ifNotExists(){return this.getRuleContext(0,Dk)}accept(t){return t.visitCopyCreateTable?t.visitCopyCreateTable(this):t.visitChildren(this)}},a_=class extends e_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CREATE(){return this.getToken(FC.CREATE,0)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}createDefinitions(){return this.getRuleContext(0,F_)}TEMPORARY(){return this.getToken(FC.TEMPORARY,0)}ifNotExists(){return this.getRuleContext(0,Dk)}tableOption(t){return void 0===t?this.getRuleContexts(SP):this.getRuleContext(t,SP)}partitionDefinitions(){return this.getRuleContext(0,jP)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitColumnCreateTable?t.visitColumnCreateTable(this):t.visitChildren(this)}},r_=class extends e_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CREATE(){return this.getToken(FC.CREATE,0)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}selectStatement(){return this.getRuleContext(0,rU)}TEMPORARY(){return this.getToken(FC.TEMPORARY,0)}ifNotExists(){return this.getRuleContext(0,Dk)}createDefinitions(){return this.getRuleContext(0,F_)}tableOption(t){return void 0===t?this.getRuleContexts(SP):this.getRuleContext(t,SP)}partitionDefinitions(){return this.getRuleContext(0,jP)}AS(){return this.getToken(FC.AS,0)}IGNORE(){return this.getToken(FC.IGNORE,0)}REPLACE(){return this.getToken(FC.REPLACE,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitQueryCreateTable?t.visitQueryCreateTable(this):t.visitChildren(this)}},i_=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uid(){return this.getRuleContext(0,Vx)}ADD(){return this.getToken(FC.ADD,0)}DATAFILE(){return this.getToken(FC.DATAFILE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}FILE_BLOCK_SIZE(){return this.getToken(FC.FILE_BLOCK_SIZE,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}fileSizeLiteral(){return this.getRuleContext(0,Jx)}get ruleIndex(){return FC.RULE_createTablespaceInnodb}accept(t){return t.visitCreateTablespaceInnodb?t.visitCreateTablespaceInnodb(this):t.visitChildren(this)}},c_=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}ADD(){return this.getToken(FC.ADD,0)}DATAFILE(){return this.getToken(FC.DATAFILE,0)}USE(){return this.getToken(FC.USE,0)}LOGFILE(){return this.getToken(FC.LOGFILE,0)}GROUP(){return this.getToken(FC.GROUP,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}EXTENT_SIZE(){return this.getToken(FC.EXTENT_SIZE,0)}INITIAL_SIZE(){return this.getToken(FC.INITIAL_SIZE,0)}AUTOEXTEND_SIZE(){return this.getToken(FC.AUTOEXTEND_SIZE,0)}MAX_SIZE(){return this.getToken(FC.MAX_SIZE,0)}NODEGROUP(){return this.getToken(FC.NODEGROUP,0)}WAIT(){return this.getToken(FC.WAIT,0)}COMMENT(){return this.getToken(FC.COMMENT,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}fileSizeLiteral(t){return void 0===t?this.getRuleContexts(Jx):this.getRuleContext(t,Jx)}get ruleIndex(){return FC.RULE_createTablespaceNdb}accept(t){return t.visitCreateTablespaceNdb?t.visitCreateTablespaceNdb(this):t.visitChildren(this)}},n_=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}TRIGGER(){return this.getToken(FC.TRIGGER,0)}ON(){return this.getToken(FC.ON,0)}tableName(){return this.getRuleContext(0,lx)}FOR(){return this.getToken(FC.FOR,0)}EACH(){return this.getToken(FC.EACH,0)}ROW(){return this.getToken(FC.ROW,0)}routineBody(){return this.getRuleContext(0,HD)}fullId(t){return void 0===t?this.getRuleContexts(Sx):this.getRuleContext(t,Sx)}BEFORE(){return this.getToken(FC.BEFORE,0)}AFTER(){return this.getToken(FC.AFTER,0)}INSERT(){return this.getToken(FC.INSERT,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}DELETE(){return this.getToken(FC.DELETE,0)}ownerStatement(){return this.getRuleContext(0,O_)}ifNotExists(){return this.getRuleContext(0,Dk)}FOLLOWS(){return this.getToken(FC.FOLLOWS,0)}PRECEDES(){return this.getToken(FC.PRECEDES,0)}get ruleIndex(){return FC.RULE_createTrigger}accept(t){return t.visitCreateTrigger?t.visitCreateTrigger(this):t.visitChildren(this)}},h_=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(FC.WITH,0)}commonTableExpressions(){return this.getRuleContext(0,E_)}RECURSIVE(){return this.getToken(FC.RECURSIVE,0)}get ruleIndex(){return FC.RULE_withClause}accept(t){return t.visitWithClause?t.visitWithClause(this):t.visitChildren(this)}},E_=class t extends ga{constructor(t,e){super(t,e)}cteName(){return this.getRuleContext(0,T_)}AS(){return this.getToken(FC.AS,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}dmlStatement(){return this.getRuleContext(0,YC)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}cteColumnName(t){return void 0===t?this.getRuleContexts(o_):this.getRuleContext(t,o_)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}commonTableExpressions(){return this.getRuleContext(0,t)}get ruleIndex(){return FC.RULE_commonTableExpressions}accept(t){return t.visitCommonTableExpressions?t.visitCommonTableExpressions(this):t.visitChildren(this)}},T_=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_cteName}accept(t){return t.visitCteName?t.visitCteName(this):t.visitChildren(this)}},o_=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_cteColumnName}accept(t){return t.visitCteColumnName?t.visitCteColumnName(this):t.visitChildren(this)}},R_=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}VIEW(){return this.getToken(FC.VIEW,0)}fullId(){return this.getRuleContext(0,Sx)}AS(){return this.getToken(FC.AS,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}selectStatement(){return this.getRuleContext(0,rU)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}orReplace(){return this.getRuleContext(0,pk)}ALGORITHM(){return this.getToken(FC.ALGORITHM,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}ownerStatement(){return this.getRuleContext(0,O_)}SQL(){return this.getToken(FC.SQL,0)}SECURITY(){return this.getToken(FC.SECURITY,0)}uidList(){return this.getRuleContext(0,lk)}UNDEFINED(){return this.getToken(FC.UNDEFINED,0)}MERGE(){return this.getToken(FC.MERGE,0)}TEMPTABLE(){return this.getToken(FC.TEMPTABLE,0)}DEFINER(){return this.getToken(FC.DEFINER,0)}INVOKER(){return this.getToken(FC.INVOKER,0)}withClause(){return this.getRuleContext(0,h_)}WITH(){return this.getToken(FC.WITH,0)}CHECK(){return this.getToken(FC.CHECK,0)}OPTION(){return this.getToken(FC.OPTION,0)}CASCADED(){return this.getToken(FC.CASCADED,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}get ruleIndex(){return FC.RULE_createView}accept(t){return t.visitCreateView?t.visitCreateView(this):t.visitChildren(this)}},A_=class extends ga{constructor(t,e){super(t,e)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}DEFAULT(t){return void 0===t?this.getTokens(FC.DEFAULT):this.getToken(FC.DEFAULT,t)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}ENCRYPTION(){return this.getToken(FC.ENCRYPTION,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}READ(){return this.getToken(FC.READ,0)}ONLY(){return this.getToken(FC.ONLY,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}get ruleIndex(){return FC.RULE_createDatabaseOption}accept(t){return t.visitCreateDatabaseOption?t.visitCreateDatabaseOption(this):t.visitChildren(this)}},S_=class extends ga{constructor(t,e){super(t,e)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(){return this.getToken(FC.SET,0)}CHARSET(){return this.getToken(FC.CHARSET,0)}CHAR(){return this.getToken(FC.CHAR,0)}get ruleIndex(){return FC.RULE_charSet}accept(t){return t.visitCharSet?t.visitCharSet(this):t.visitChildren(this)}},l_=class extends ga{constructor(t,e){super(t,e)}CURRENT_USER(){return this.getToken(FC.CURRENT_USER,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}get ruleIndex(){return FC.RULE_currentUserExpression}accept(t){return t.visitCurrentUserExpression?t.visitCurrentUserExpression(this):t.visitChildren(this)}},O_=class extends ga{constructor(t,e){super(t,e)}DEFINER(){return this.getToken(FC.DEFINER,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}userName(){return this.getRuleContext(0,Gx)}currentUserExpression(){return this.getRuleContext(0,l_)}get ruleIndex(){return FC.RULE_ownerStatement}accept(t){return t.visitOwnerStatement?t.visitOwnerStatement(this):t.visitChildren(this)}},I_=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_scheduleExpression}copyFrom(t){super.copyFrom(t)}},u_=class extends I_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AT(){return this.getToken(FC.AT,0)}timestampValue(){return this.getRuleContext(0,L_)}intervalExpr(t){return void 0===t?this.getRuleContexts(C_):this.getRuleContext(t,C_)}accept(t){return t.visitPreciseSchedule?t.visitPreciseSchedule(this):t.visitChildren(this)}},N_=class extends I_{constructor(t){super(t.parent,t.invokingState),this._startIntervals=[],this._endIntervals=[],super.copyFrom(t)}EVERY(){return this.getToken(FC.EVERY,0)}intervalType(){return this.getRuleContext(0,__)}decimalLiteral(){return this.getRuleContext(0,Qx)}expression(){return this.getRuleContext(0,NH)}STARTS(){return this.getToken(FC.STARTS,0)}ENDS(){return this.getToken(FC.ENDS,0)}timestampValue(t){return void 0===t?this.getRuleContexts(L_):this.getRuleContext(t,L_)}intervalExpr(t){return void 0===t?this.getRuleContexts(C_):this.getRuleContext(t,C_)}accept(t){return t.visitIntervalSchedule?t.visitIntervalSchedule(this):t.visitChildren(this)}},L_=class extends ga{constructor(t,e){super(t,e)}CURRENT_TIMESTAMP(){return this.getToken(FC.CURRENT_TIMESTAMP,0)}stringLiteral(){return this.getRuleContext(0,Zx)}decimalLiteral(){return this.getRuleContext(0,Qx)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_timestampValue}accept(t){return t.visitTimestampValue?t.visitTimestampValue(this):t.visitChildren(this)}},C_=class extends ga{constructor(t,e){super(t,e)}PLUS(){return this.getToken(FC.PLUS,0)}INTERVAL(){return this.getToken(FC.INTERVAL,0)}intervalType(){return this.getRuleContext(0,__)}decimalLiteral(){return this.getRuleContext(0,Qx)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_intervalExpr}accept(t){return t.visitIntervalExpr?t.visitIntervalExpr(this):t.visitChildren(this)}},__=class extends ga{constructor(t,e){super(t,e)}intervalTypeBase(){return this.getRuleContext(0,hG)}YEAR(){return this.getToken(FC.YEAR,0)}YEAR_MONTH(){return this.getToken(FC.YEAR_MONTH,0)}DAY_HOUR(){return this.getToken(FC.DAY_HOUR,0)}DAY_MINUTE(){return this.getToken(FC.DAY_MINUTE,0)}DAY_SECOND(){return this.getToken(FC.DAY_SECOND,0)}HOUR_MINUTE(){return this.getToken(FC.HOUR_MINUTE,0)}HOUR_SECOND(){return this.getToken(FC.HOUR_SECOND,0)}MINUTE_SECOND(){return this.getToken(FC.MINUTE_SECOND,0)}SECOND_MICROSECOND(){return this.getToken(FC.SECOND_MICROSECOND,0)}MINUTE_MICROSECOND(){return this.getToken(FC.MINUTE_MICROSECOND,0)}HOUR_MICROSECOND(){return this.getToken(FC.HOUR_MICROSECOND,0)}DAY_MICROSECOND(){return this.getToken(FC.DAY_MICROSECOND,0)}get ruleIndex(){return FC.RULE_intervalType}accept(t){return t.visitIntervalType?t.visitIntervalType(this):t.visitChildren(this)}},P_=class extends ga{constructor(t,e){super(t,e)}ENABLE(){return this.getToken(FC.ENABLE,0)}DISABLE(){return this.getToken(FC.DISABLE,0)}ON(){return this.getToken(FC.ON,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}get ruleIndex(){return FC.RULE_enableType}accept(t){return t.visitEnableType?t.visitEnableType(this):t.visitChildren(this)}},M_=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(FC.USING,0)}BTREE(){return this.getToken(FC.BTREE,0)}HASH(){return this.getToken(FC.HASH,0)}get ruleIndex(){return FC.RULE_indexType}accept(t){return t.visitIndexType?t.visitIndexType(this):t.visitChildren(this)}},d_=class extends ga{constructor(t,e){super(t,e)}KEY_BLOCK_SIZE(){return this.getToken(FC.KEY_BLOCK_SIZE,0)}fileSizeLiteral(){return this.getRuleContext(0,Jx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}indexType(){return this.getRuleContext(0,M_)}WITH(){return this.getToken(FC.WITH,0)}PARSER(){return this.getToken(FC.PARSER,0)}uid(){return this.getRuleContext(0,Vx)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}VISIBLE(){return this.getToken(FC.VISIBLE,0)}INVISIBLE(){return this.getToken(FC.INVISIBLE,0)}ENGINE_ATTRIBUTE(){return this.getToken(FC.ENGINE_ATTRIBUTE,0)}SECONDARY_ENGINE_ATTRIBUTE(){return this.getToken(FC.SECONDARY_ENGINE_ATTRIBUTE,0)}get ruleIndex(){return FC.RULE_indexOption}accept(t){return t.visitIndexOption?t.visitIndexOption(this):t.visitChildren(this)}},U_=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}dataType(){return this.getRuleContext(0,tk)}IN(){return this.getToken(FC.IN,0)}OUT(){return this.getToken(FC.OUT,0)}INOUT(){return this.getToken(FC.INOUT,0)}get ruleIndex(){return FC.RULE_procedureParameter}accept(t){return t.visitProcedureParameter?t.visitProcedureParameter(this):t.visitChildren(this)}},m_=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}dataType(){return this.getRuleContext(0,tk)}get ruleIndex(){return FC.RULE_functionParameter}accept(t){return t.visitFunctionParameter?t.visitFunctionParameter(this):t.visitChildren(this)}},D_=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_routineOption}copyFrom(t){super.copyFrom(t)}},p_=class extends D_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DETERMINISTIC(){return this.getToken(FC.DETERMINISTIC,0)}NOT(){return this.getToken(FC.NOT,0)}accept(t){return t.visitRoutineBehavior?t.visitRoutineBehavior(this):t.visitChildren(this)}},g_=class extends D_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LANGUAGE(){return this.getToken(FC.LANGUAGE,0)}SQL(){return this.getToken(FC.SQL,0)}accept(t){return t.visitRoutineLanguage?t.visitRoutineLanguage(this):t.visitChildren(this)}},x_=class extends D_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitRoutineComment?t.visitRoutineComment(this):t.visitChildren(this)}},k_=class extends D_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SQL(){return this.getToken(FC.SQL,0)}SECURITY(){return this.getToken(FC.SECURITY,0)}DEFINER(){return this.getToken(FC.DEFINER,0)}INVOKER(){return this.getToken(FC.INVOKER,0)}accept(t){return t.visitRoutineSecurity?t.visitRoutineSecurity(this):t.visitChildren(this)}},H_=class extends D_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CONTAINS(){return this.getToken(FC.CONTAINS,0)}SQL(){return this.getToken(FC.SQL,0)}NO(){return this.getToken(FC.NO,0)}READS(){return this.getToken(FC.READS,0)}DATA(){return this.getToken(FC.DATA,0)}MODIFIES(){return this.getToken(FC.MODIFIES,0)}accept(t){return t.visitRoutineData?t.visitRoutineData(this):t.visitChildren(this)}},G_=class extends ga{constructor(t,e){super(t,e)}HOST(){return this.getToken(FC.HOST,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}DATABASE(){return this.getToken(FC.DATABASE,0)}USER(){return this.getToken(FC.USER,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}SOCKET(){return this.getToken(FC.SOCKET,0)}OWNER(){return this.getToken(FC.OWNER,0)}PORT(){return this.getToken(FC.PORT,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}get ruleIndex(){return FC.RULE_serverOption}accept(t){return t.visitServerOption?t.visitServerOption(this):t.visitChildren(this)}},F_=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}createDefinition(t){return void 0===t?this.getRuleContexts(v_):this.getRuleContext(t,v_)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_createDefinitions}accept(t){return t.visitCreateDefinitions?t.visitCreateDefinitions(this):t.visitChildren(this)}},v_=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_createDefinition}copyFrom(t){super.copyFrom(t)}},B_=class extends v_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}fullColumnName(){return this.getRuleContext(0,Px)}columnDefinition(){return this.getRuleContext(0,Y_)}accept(t){return t.visitColumnDeclaration?t.visitColumnDeclaration(this):t.visitChildren(this)}},y_=class extends v_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableConstraint(){return this.getRuleContext(0,aP)}NOT(){return this.getToken(FC.NOT,0)}ENFORCED(){return this.getToken(FC.ENFORCED,0)}accept(t){return t.visitConstraintDeclaration?t.visitConstraintDeclaration(this):t.visitChildren(this)}},f_=class extends v_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}indexColumnDefinition(){return this.getRuleContext(0,oP)}accept(t){return t.visitIndexDeclaration?t.visitIndexDeclaration(this):t.visitChildren(this)}},Y_=class extends ga{constructor(t,e){super(t,e)}dataType(){return this.getRuleContext(0,tk)}columnConstraint(t){return void 0===t?this.getRuleContexts(w_):this.getRuleContext(t,w_)}NOT(){return this.getToken(FC.NOT,0)}ENFORCED(){return this.getToken(FC.ENFORCED,0)}get ruleIndex(){return FC.RULE_columnDefinition}accept(t){return t.visitColumnDefinition?t.visitColumnDefinition(this):t.visitChildren(this)}},w_=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_columnConstraint}copyFrom(t){super.copyFrom(t)}},b_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STORAGE(){return this.getToken(FC.STORAGE,0)}DISK(){return this.getToken(FC.DISK,0)}MEMORY(){return this.getToken(FC.MEMORY,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}accept(t){return t.visitStorageColumnConstraint?t.visitStorageColumnConstraint(this):t.visitChildren(this)}},W_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}VISIBLE(){return this.getToken(FC.VISIBLE,0)}accept(t){return t.visitVisibilityColumnConstraint?t.visitVisibilityColumnConstraint(this):t.visitChildren(this)}},V_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AUTO_INCREMENT(){return this.getToken(FC.AUTO_INCREMENT,0)}ON(){return this.getToken(FC.ON,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}currentTimestamp(){return this.getRuleContext(0,dk)}accept(t){return t.visitAutoIncrementColumnConstraint?t.visitAutoIncrementColumnConstraint(this):t.visitChildren(this)}},X_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitCommentColumnConstraint?t.visitCommentColumnConstraint(this):t.visitChildren(this)}},K_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}UNIQUE(){return this.getToken(FC.UNIQUE,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitUniqueKeyColumnConstraint?t.visitUniqueKeyColumnConstraint(this):t.visitChildren(this)}},Q_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SERIAL(){return this.getToken(FC.SERIAL,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}VALUE(){return this.getToken(FC.VALUE,0)}accept(t){return t.visitSerialDefaultColumnConstraint?t.visitSerialDefaultColumnConstraint(this):t.visitChildren(this)}},J_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AS(){return this.getToken(FC.AS,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}GENERATED(){return this.getToken(FC.GENERATED,0)}ALWAYS(){return this.getToken(FC.ALWAYS,0)}VIRTUAL(){return this.getToken(FC.VIRTUAL,0)}STORED(){return this.getToken(FC.STORED,0)}accept(t){return t.visitGeneratedColumnConstraint?t.visitGeneratedColumnConstraint(this):t.visitChildren(this)}},Z_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COLUMN_FORMAT(){return this.getToken(FC.COLUMN_FORMAT,0)}FIXED(){return this.getToken(FC.FIXED,0)}DYNAMIC(){return this.getToken(FC.DYNAMIC,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}accept(t){return t.visitFormatColumnConstraint?t.visitFormatColumnConstraint(this):t.visitChildren(this)}},q_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitCollateColumnConstraint?t.visitCollateColumnConstraint(this):t.visitChildren(this)}},j_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}KEY(){return this.getToken(FC.KEY,0)}PRIMARY(){return this.getToken(FC.PRIMARY,0)}accept(t){return t.visitPrimaryKeyColumnConstraint?t.visitPrimaryKeyColumnConstraint(this):t.visitChildren(this)}},z_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHECK(){return this.getToken(FC.CHECK,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitCheckColumnConstraint?t.visitCheckColumnConstraint(this):t.visitChildren(this)}},$_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}nullNotnull(){return this.getRuleContext(0,zx)}accept(t){return t.visitNullColumnConstraint?t.visitNullColumnConstraint(this):t.visitChildren(this)}},tP=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}defaultValue(){return this.getRuleContext(0,Mk)}accept(t){return t.visitDefaultColumnConstraint?t.visitDefaultColumnConstraint(this):t.visitChildren(this)}},eP=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}referenceDefinition(){return this.getRuleContext(0,hP)}accept(t){return t.visitReferenceColumnConstraint?t.visitReferenceColumnConstraint(this):t.visitChildren(this)}},sP=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INVISIBLE(){return this.getToken(FC.INVISIBLE,0)}accept(t){return t.visitInvisibilityColumnConstraint?t.visitInvisibilityColumnConstraint(this):t.visitChildren(this)}},aP=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_tableConstraint}copyFrom(t){super.copyFrom(t)}},rP=class extends aP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}UNIQUE(){return this.getToken(FC.UNIQUE,0)}indexColumnNames(){return this.getRuleContext(0,uk)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitUniqueKeyTableConstraint?t.visitUniqueKeyTableConstraint(this):t.visitChildren(this)}},iP=class extends aP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHECK(){return this.getToken(FC.CHECK,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitCheckTableConstraint?t.visitCheckTableConstraint(this):t.visitChildren(this)}},cP=class extends aP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PRIMARY(){return this.getToken(FC.PRIMARY,0)}KEY(){return this.getToken(FC.KEY,0)}indexColumnNames(){return this.getRuleContext(0,uk)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}accept(t){return t.visitPrimaryKeyTableConstraint?t.visitPrimaryKeyTableConstraint(this):t.visitChildren(this)}},nP=class extends aP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FOREIGN(){return this.getToken(FC.FOREIGN,0)}KEY(){return this.getToken(FC.KEY,0)}indexColumnNames(){return this.getRuleContext(0,uk)}referenceDefinition(){return this.getRuleContext(0,hP)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}accept(t){return t.visitForeignKeyTableConstraint?t.visitForeignKeyTableConstraint(this):t.visitChildren(this)}},hP=class extends ga{constructor(t,e){super(t,e)}REFERENCES(){return this.getToken(FC.REFERENCES,0)}tableName(){return this.getRuleContext(0,lx)}indexColumnNames(){return this.getRuleContext(0,uk)}MATCH(){return this.getToken(FC.MATCH,0)}referenceAction(){return this.getRuleContext(0,EP)}FULL(){return this.getToken(FC.FULL,0)}PARTIAL(){return this.getToken(FC.PARTIAL,0)}SIMPLE(){return this.getToken(FC.SIMPLE,0)}get ruleIndex(){return FC.RULE_referenceDefinition}accept(t){return t.visitReferenceDefinition?t.visitReferenceDefinition(this):t.visitChildren(this)}},EP=class extends ga{constructor(t,e){super(t,e)}ON(t){return void 0===t?this.getTokens(FC.ON):this.getToken(FC.ON,t)}DELETE(){return this.getToken(FC.DELETE,0)}referenceControlType(t){return void 0===t?this.getRuleContexts(TP):this.getRuleContext(t,TP)}UPDATE(){return this.getToken(FC.UPDATE,0)}get ruleIndex(){return FC.RULE_referenceAction}accept(t){return t.visitReferenceAction?t.visitReferenceAction(this):t.visitChildren(this)}},TP=class extends ga{constructor(t,e){super(t,e)}RESTRICT(){return this.getToken(FC.RESTRICT,0)}CASCADE(){return this.getToken(FC.CASCADE,0)}SET(){return this.getToken(FC.SET,0)}NULL_LITERAL(){return this.getToken(FC.NULL_LITERAL,0)}NO(){return this.getToken(FC.NO,0)}ACTION(){return this.getToken(FC.ACTION,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}get ruleIndex(){return FC.RULE_referenceControlType}accept(t){return t.visitReferenceControlType?t.visitReferenceControlType(this):t.visitChildren(this)}},oP=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_indexColumnDefinition}copyFrom(t){super.copyFrom(t)}},RP=class extends oP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}indexColumnNames(){return this.getRuleContext(0,uk)}FULLTEXT(){return this.getToken(FC.FULLTEXT,0)}SPATIAL(){return this.getToken(FC.SPATIAL,0)}uid(){return this.getRuleContext(0,Vx)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitSpecialIndexDeclaration?t.visitSpecialIndexDeclaration(this):t.visitChildren(this)}},AP=class extends oP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}indexColumnNames(){return this.getRuleContext(0,uk)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}uid(){return this.getRuleContext(0,Vx)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}accept(t){return t.visitSimpleIndexDeclaration?t.visitSimpleIndexDeclaration(this):t.visitChildren(this)}},SP=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_tableOption}copyFrom(t){super.copyFrom(t)}},lP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ENGINE(){return this.getToken(FC.ENGINE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}engineName(){return this.getRuleContext(0,yx)}accept(t){return t.visitTableOptionEngine?t.visitTableOptionEngine(this):t.visitChildren(this)}},OP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MAX_ROWS(){return this.getToken(FC.MAX_ROWS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionMaxRows?t.visitTableOptionMaxRows(this):t.visitChildren(this)}},IP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionCollate?t.visitTableOptionCollate(this):t.visitChildren(this)}},uP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STATS_PERSISTENT(){return this.getToken(FC.STATS_PERSISTENT,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionPersistent?t.visitTableOptionPersistent(this):t.visitChildren(this)}},NP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uid(){return this.getRuleContext(0,Vx)}tablespaceStorage(){return this.getRuleContext(0,qP)}accept(t){return t.visitTableOptionTablespace?t.visitTableOptionTablespace(this):t.visitChildren(this)}},LP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AUTOEXTEND_SIZE(){return this.getToken(FC.AUTOEXTEND_SIZE,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionAutoextendSize?t.visitTableOptionAutoextendSize(this):t.visitChildren(this)}},CP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PAGE_COMPRESSED(){return this.getToken(FC.PAGE_COMPRESSED,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionPageCompressed?t.visitTableOptionPageCompressed(this):t.visitChildren(this)}},_P=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}START(){return this.getToken(FC.START,0)}TRANSACTION(){return this.getToken(FC.TRANSACTION,0)}accept(t){return t.visitTableOptionStartTransaction?t.visitTableOptionStartTransaction(this):t.visitChildren(this)}},PP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PACK_KEYS(){return this.getToken(FC.PACK_KEYS,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionPackKeys?t.visitTableOptionPackKeys(this):t.visitChildren(this)}},MP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionPassword?t.visitTableOptionPassword(this):t.visitChildren(this)}},dP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}UNION(){return this.getToken(FC.UNION,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}tables(){return this.getRuleContext(0,Ik)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionUnion?t.visitTableOptionUnion(this):t.visitChildren(this)}},UP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STATS_SAMPLE_PAGES(){return this.getToken(FC.STATS_SAMPLE_PAGES,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionSamplePage?t.visitTableOptionSamplePage(this):t.visitChildren(this)}},mP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}DEFAULT(t){return void 0===t?this.getTokens(FC.DEFAULT):this.getToken(FC.DEFAULT,t)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionCharset?t.visitTableOptionCharset(this):t.visitChildren(this)}},DP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INDEX(){return this.getToken(FC.INDEX,0)}DIRECTORY(){return this.getToken(FC.DIRECTORY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionIndexDirectory?t.visitTableOptionIndexDirectory(this):t.visitChildren(this)}},pP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TABLE_TYPE(){return this.getToken(FC.TABLE_TYPE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}tableType(){return this.getRuleContext(0,ZP)}accept(t){return t.visitTableOptionTableType?t.visitTableOptionTableType(this):t.visitChildren(this)}},gP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}KEY_BLOCK_SIZE(){return this.getToken(FC.KEY_BLOCK_SIZE,0)}fileSizeLiteral(){return this.getRuleContext(0,Jx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionKeyBlockSize?t.visitTableOptionKeyBlockSize(this):t.visitChildren(this)}},xP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ENCRYPTION(){return this.getToken(FC.ENCRYPTION,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionEncryption?t.visitTableOptionEncryption(this):t.visitChildren(this)}},kP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DIRECTORY(){return this.getToken(FC.DIRECTORY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}DATA(){return this.getToken(FC.DATA,0)}INDEX(){return this.getToken(FC.INDEX,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionDataDirectory?t.visitTableOptionDataDirectory(this):t.visitChildren(this)}},HP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STATS_AUTO_RECALC(){return this.getToken(FC.STATS_AUTO_RECALC,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionRecalculation?t.visitTableOptionRecalculation(this):t.visitChildren(this)}},GP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AUTO_INCREMENT(){return this.getToken(FC.AUTO_INCREMENT,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionAutoIncrement?t.visitTableOptionAutoIncrement(this):t.visitChildren(this)}},FP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ENCRYPTION_KEY_ID(){return this.getToken(FC.ENCRYPTION_KEY_ID,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionEncryptionKeyId?t.visitTableOptionEncryptionKeyId(this):t.visitChildren(this)}},vP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHECKSUM(){return this.getToken(FC.CHECKSUM,0)}PAGE_CHECKSUM(){return this.getToken(FC.PAGE_CHECKSUM,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionChecksum?t.visitTableOptionChecksum(this):t.visitChildren(this)}},BP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DELAY_KEY_WRITE(){return this.getToken(FC.DELAY_KEY_WRITE,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionDelay?t.visitTableOptionDelay(this):t.visitChildren(this)}},yP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CONNECTION(){return this.getToken(FC.CONNECTION,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionConnection?t.visitTableOptionConnection(this):t.visitChildren(this)}},fP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TRANSACTIONAL(){return this.getToken(FC.TRANSACTIONAL,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionTransactional?t.visitTableOptionTransactional(this):t.visitChildren(this)}},YP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}decimalLiteral(){return this.getRuleContext(0,Qx)}PAGE_COMPRESSION_LEVEL(){return this.getToken(FC.PAGE_COMPRESSION_LEVEL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionPageCompressionLevel?t.visitTableOptionPageCompressionLevel(this):t.visitChildren(this)}},wP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SECONDARY_ENGINE_ATTRIBUTE(){return this.getToken(FC.SECONDARY_ENGINE_ATTRIBUTE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionSecondaryEngineAttribute?t.visitTableOptionSecondaryEngineAttribute(this):t.visitChildren(this)}},bP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionComment?t.visitTableOptionComment(this):t.visitChildren(this)}},WP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AVG_ROW_LENGTH(){return this.getToken(FC.AVG_ROW_LENGTH,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionAverage?t.visitTableOptionAverage(this):t.visitChildren(this)}},VP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ROW_FORMAT(){return this.getToken(FC.ROW_FORMAT,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}DYNAMIC(){return this.getToken(FC.DYNAMIC,0)}FIXED(){return this.getToken(FC.FIXED,0)}COMPRESSED(){return this.getToken(FC.COMPRESSED,0)}REDUNDANT(){return this.getToken(FC.REDUNDANT,0)}COMPACT(){return this.getToken(FC.COMPACT,0)}ID(){return this.getToken(FC.ID,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionRowFormat?t.visitTableOptionRowFormat(this):t.visitChildren(this)}},XP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COMPRESSION(){return this.getToken(FC.COMPRESSION,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ID(){return this.getToken(FC.ID,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionCompression?t.visitTableOptionCompression(this):t.visitChildren(this)}},KP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INSERT_METHOD(){return this.getToken(FC.INSERT_METHOD,0)}NO(){return this.getToken(FC.NO,0)}FIRST(){return this.getToken(FC.FIRST,0)}LAST(){return this.getToken(FC.LAST,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionInsertMethod?t.visitTableOptionInsertMethod(this):t.visitChildren(this)}},QP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ENGINE_ATTRIBUTE(){return this.getToken(FC.ENGINE_ATTRIBUTE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionEngineAttribute?t.visitTableOptionEngineAttribute(this):t.visitChildren(this)}},JP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MIN_ROWS(){return this.getToken(FC.MIN_ROWS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionMinRows?t.visitTableOptionMinRows(this):t.visitChildren(this)}},ZP=class extends ga{constructor(t,e){super(t,e)}MYSQL(){return this.getToken(FC.MYSQL,0)}ODBC(){return this.getToken(FC.ODBC,0)}get ruleIndex(){return FC.RULE_tableType}accept(t){return t.visitTableType?t.visitTableType(this):t.visitChildren(this)}},qP=class extends ga{constructor(t,e){super(t,e)}STORAGE(){return this.getToken(FC.STORAGE,0)}DISK(){return this.getToken(FC.DISK,0)}MEMORY(){return this.getToken(FC.MEMORY,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}get ruleIndex(){return FC.RULE_tablespaceStorage}accept(t){return t.visitTablespaceStorage?t.visitTablespaceStorage(this):t.visitChildren(this)}},jP=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(FC.PARTITION,0)}BY(t){return void 0===t?this.getTokens(FC.BY):this.getToken(FC.BY,t)}partitionFunctionDefinition(){return this.getRuleContext(0,zP)}PARTITIONS(){return this.getToken(FC.PARTITIONS,0)}SUBPARTITION(){return this.getToken(FC.SUBPARTITION,0)}subpartitionFunctionDefinition(){return this.getRuleContext(0,aM)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}partitionDefinition(t){return void 0===t?this.getRuleContexts(cM):this.getRuleContext(t,cM)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}SUBPARTITIONS(){return this.getToken(FC.SUBPARTITIONS,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_partitionDefinitions}accept(t){return t.visitPartitionDefinitions?t.visitPartitionDefinitions(this):t.visitChildren(this)}},zP=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_partitionFunctionDefinition}copyFrom(t){super.copyFrom(t)}},$P=class extends zP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}KEY(){return this.getToken(FC.KEY,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}LINEAR(){return this.getToken(FC.LINEAR,0)}ALGORITHM(){return this.getToken(FC.ALGORITHM,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}uidList(){return this.getRuleContext(0,lk)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}TWO_DECIMAL(){return this.getToken(FC.TWO_DECIMAL,0)}accept(t){return t.visitPartitionFunctionKey?t.visitPartitionFunctionKey(this):t.visitChildren(this)}},tM=class extends zP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}HASH(){return this.getToken(FC.HASH,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}LINEAR(){return this.getToken(FC.LINEAR,0)}accept(t){return t.visitPartitionFunctionHash?t.visitPartitionFunctionHash(this):t.visitChildren(this)}},eM=class extends zP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LIST(){return this.getToken(FC.LIST,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}uidList(){return this.getRuleContext(0,lk)}accept(t){return t.visitPartitionFunctionList?t.visitPartitionFunctionList(this):t.visitChildren(this)}},sM=class extends zP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RANGE(){return this.getToken(FC.RANGE,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}uidList(){return this.getRuleContext(0,lk)}accept(t){return t.visitPartitionFunctionRange?t.visitPartitionFunctionRange(this):t.visitChildren(this)}},aM=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_subpartitionFunctionDefinition}copyFrom(t){super.copyFrom(t)}},rM=class extends aM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}HASH(){return this.getToken(FC.HASH,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}LINEAR(){return this.getToken(FC.LINEAR,0)}accept(t){return t.visitSubPartitionFunctionHash?t.visitSubPartitionFunctionHash(this):t.visitChildren(this)}},iM=class extends aM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}KEY(){return this.getToken(FC.KEY,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}LINEAR(){return this.getToken(FC.LINEAR,0)}ALGORITHM(){return this.getToken(FC.ALGORITHM,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}TWO_DECIMAL(){return this.getToken(FC.TWO_DECIMAL,0)}accept(t){return t.visitSubPartitionFunctionKey?t.visitSubPartitionFunctionKey(this):t.visitChildren(this)}},cM=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_partitionDefinition}copyFrom(t){super.copyFrom(t)}},nM=class extends cM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PARTITION(){return this.getToken(FC.PARTITION,0)}uid(){return this.getRuleContext(0,Vx)}VALUES(){return this.getToken(FC.VALUES,0)}LESS(){return this.getToken(FC.LESS,0)}THAN(){return this.getToken(FC.THAN,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}partitionDefinerAtom(t){return void 0===t?this.getRuleContexts(oM):this.getRuleContext(t,oM)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}partitionOption(t){return void 0===t?this.getRuleContexts(SM):this.getRuleContext(t,SM)}subpartitionDefinition(t){return void 0===t?this.getRuleContexts(AM):this.getRuleContext(t,AM)}accept(t){return t.visitPartitionComparison?t.visitPartitionComparison(this):t.visitChildren(this)}},hM=class extends cM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PARTITION(){return this.getToken(FC.PARTITION,0)}uid(){return this.getRuleContext(0,Vx)}VALUES(){return this.getToken(FC.VALUES,0)}IN(){return this.getToken(FC.IN,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}partitionDefinerAtom(t){return void 0===t?this.getRuleContexts(oM):this.getRuleContext(t,oM)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}partitionOption(t){return void 0===t?this.getRuleContexts(SM):this.getRuleContext(t,SM)}subpartitionDefinition(t){return void 0===t?this.getRuleContexts(AM):this.getRuleContext(t,AM)}accept(t){return t.visitPartitionListAtom?t.visitPartitionListAtom(this):t.visitChildren(this)}},EM=class extends cM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PARTITION(){return this.getToken(FC.PARTITION,0)}uid(){return this.getRuleContext(0,Vx)}VALUES(){return this.getToken(FC.VALUES,0)}IN(){return this.getToken(FC.IN,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}partitionDefinerVector(t){return void 0===t?this.getRuleContexts(RM):this.getRuleContext(t,RM)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}partitionOption(t){return void 0===t?this.getRuleContexts(SM):this.getRuleContext(t,SM)}subpartitionDefinition(t){return void 0===t?this.getRuleContexts(AM):this.getRuleContext(t,AM)}accept(t){return t.visitPartitionListVector?t.visitPartitionListVector(this):t.visitChildren(this)}},TM=class extends cM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PARTITION(){return this.getToken(FC.PARTITION,0)}uid(){return this.getRuleContext(0,Vx)}partitionOption(t){return void 0===t?this.getRuleContexts(SM):this.getRuleContext(t,SM)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}subpartitionDefinition(t){return void 0===t?this.getRuleContexts(AM):this.getRuleContext(t,AM)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitPartitionSimple?t.visitPartitionSimple(this):t.visitChildren(this)}},oM=class extends ga{constructor(t,e){super(t,e)}constant(){return this.getRuleContext(0,$x)}expression(){return this.getRuleContext(0,NH)}MAXVALUE(){return this.getToken(FC.MAXVALUE,0)}get ruleIndex(){return FC.RULE_partitionDefinerAtom}accept(t){return t.visitPartitionDefinerAtom?t.visitPartitionDefinerAtom(this):t.visitChildren(this)}},RM=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}partitionDefinerAtom(t){return void 0===t?this.getRuleContexts(oM):this.getRuleContext(t,oM)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_partitionDefinerVector}accept(t){return t.visitPartitionDefinerVector?t.visitPartitionDefinerVector(this):t.visitChildren(this)}},AM=class extends ga{constructor(t,e){super(t,e)}SUBPARTITION(){return this.getToken(FC.SUBPARTITION,0)}uid(){return this.getRuleContext(0,Vx)}partitionOption(t){return void 0===t?this.getRuleContexts(SM):this.getRuleContext(t,SM)}get ruleIndex(){return FC.RULE_subpartitionDefinition}accept(t){return t.visitSubpartitionDefinition?t.visitSubpartitionDefinition(this):t.visitChildren(this)}},SM=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_partitionOption}copyFrom(t){super.copyFrom(t)}},lM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionComment?t.visitPartitionOptionComment(this):t.visitChildren(this)}},OM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}NODEGROUP(){return this.getToken(FC.NODEGROUP,0)}uid(){return this.getRuleContext(0,Vx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionNodeGroup?t.visitPartitionOptionNodeGroup(this):t.visitChildren(this)}},IM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INDEX(){return this.getToken(FC.INDEX,0)}DIRECTORY(){return this.getToken(FC.DIRECTORY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionIndexDirectory?t.visitPartitionOptionIndexDirectory(this):t.visitChildren(this)}},uM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MAX_ROWS(){return this.getToken(FC.MAX_ROWS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionMaxRows?t.visitPartitionOptionMaxRows(this):t.visitChildren(this)}},NM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uid(){return this.getRuleContext(0,Vx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionTablespace?t.visitPartitionOptionTablespace(this):t.visitChildren(this)}},LM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}STORAGE(){return this.getToken(FC.STORAGE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionEngine?t.visitPartitionOptionEngine(this):t.visitChildren(this)}},CM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MIN_ROWS(){return this.getToken(FC.MIN_ROWS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionMinRows?t.visitPartitionOptionMinRows(this):t.visitChildren(this)}},_M=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DATA(){return this.getToken(FC.DATA,0)}DIRECTORY(){return this.getToken(FC.DIRECTORY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionDataDirectory?t.visitPartitionOptionDataDirectory(this):t.visitChildren(this)}},PM=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_alterDatabase}copyFrom(t){super.copyFrom(t)}},MM=class extends PM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}databaseName(){return this.getRuleContext(0,Mx)}UPGRADE(){return this.getToken(FC.UPGRADE,0)}DATA(){return this.getToken(FC.DATA,0)}DIRECTORY(){return this.getToken(FC.DIRECTORY,0)}NAME(){return this.getToken(FC.NAME,0)}DATABASE(){return this.getToken(FC.DATABASE,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}accept(t){return t.visitAlterUpgradeName?t.visitAlterUpgradeName(this):t.visitChildren(this)}},dM=class extends PM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}databaseName(){return this.getRuleContext(0,Mx)}DATABASE(){return this.getToken(FC.DATABASE,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}createDatabaseOption(t){return void 0===t?this.getRuleContexts(A_):this.getRuleContext(t,A_)}accept(t){return t.visitAlterSimpleDatabase?t.visitAlterSimpleDatabase(this):t.visitChildren(this)}},UM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}EVENT(){return this.getToken(FC.EVENT,0)}fullId(t){return void 0===t?this.getRuleContexts(Sx):this.getRuleContext(t,Sx)}ownerStatement(){return this.getRuleContext(0,O_)}ON(t){return void 0===t?this.getTokens(FC.ON):this.getToken(FC.ON,t)}SCHEDULE(){return this.getToken(FC.SCHEDULE,0)}scheduleExpression(){return this.getRuleContext(0,I_)}COMPLETION(){return this.getToken(FC.COMPLETION,0)}PRESERVE(){return this.getToken(FC.PRESERVE,0)}RENAME(){return this.getToken(FC.RENAME,0)}TO(){return this.getToken(FC.TO,0)}enableType(){return this.getRuleContext(0,P_)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}DO(){return this.getToken(FC.DO,0)}routineBody(){return this.getRuleContext(0,HD)}NOT(){return this.getToken(FC.NOT,0)}get ruleIndex(){return FC.RULE_alterEvent}accept(t){return t.visitAlterEvent?t.visitAlterEvent(this):t.visitChildren(this)}},mM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}fullId(){return this.getRuleContext(0,Sx)}routineOption(t){return void 0===t?this.getRuleContexts(D_):this.getRuleContext(t,D_)}get ruleIndex(){return FC.RULE_alterFunction}accept(t){return t.visitAlterFunction?t.visitAlterFunction(this):t.visitChildren(this)}},DM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}INSTANCE(){return this.getToken(FC.INSTANCE,0)}ROTATE(){return this.getToken(FC.ROTATE,0)}INNODB(){return this.getToken(FC.INNODB,0)}MASTER(){return this.getToken(FC.MASTER,0)}KEY(){return this.getToken(FC.KEY,0)}get ruleIndex(){return FC.RULE_alterInstance}accept(t){return t.visitAlterInstance?t.visitAlterInstance(this):t.visitChildren(this)}},pM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}LOGFILE(){return this.getToken(FC.LOGFILE,0)}GROUP(){return this.getToken(FC.GROUP,0)}uid(){return this.getRuleContext(0,Vx)}ADD(){return this.getToken(FC.ADD,0)}UNDOFILE(){return this.getToken(FC.UNDOFILE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}INITIAL_SIZE(){return this.getToken(FC.INITIAL_SIZE,0)}fileSizeLiteral(){return this.getRuleContext(0,Jx)}WAIT(){return this.getToken(FC.WAIT,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}get ruleIndex(){return FC.RULE_alterLogfileGroup}accept(t){return t.visitAlterLogfileGroup?t.visitAlterLogfileGroup(this):t.visitChildren(this)}},gM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}fullId(){return this.getRuleContext(0,Sx)}routineOption(t){return void 0===t?this.getRuleContexts(D_):this.getRuleContext(t,D_)}get ruleIndex(){return FC.RULE_alterProcedure}accept(t){return t.visitAlterProcedure?t.visitAlterProcedure(this):t.visitChildren(this)}},xM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}SERVER(){return this.getToken(FC.SERVER,0)}uid(){return this.getRuleContext(0,Vx)}OPTIONS(){return this.getToken(FC.OPTIONS,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}serverOption(t){return void 0===t?this.getRuleContexts(G_):this.getRuleContext(t,G_)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_alterServer}accept(t){return t.visitAlterServer?t.visitAlterServer(this):t.visitChildren(this)}},kM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}IGNORE(){return this.getToken(FC.IGNORE,0)}waitNowaitClause(){return this.getRuleContext(0,gk)}alterSpecification(t){return void 0===t?this.getRuleContexts(FM):this.getRuleContext(t,FM)}partitionDefinitions(){return this.getRuleContext(0,jP)}ONLINE(){return this.getToken(FC.ONLINE,0)}OFFLINE(){return this.getToken(FC.OFFLINE,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_alterTable}accept(t){return t.visitAlterTable?t.visitAlterTable(this):t.visitChildren(this)}},HM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uid(){return this.getRuleContext(0,Vx)}DATAFILE(){return this.getToken(FC.DATAFILE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}ADD(){return this.getToken(FC.ADD,0)}DROP(){return this.getToken(FC.DROP,0)}INITIAL_SIZE(){return this.getToken(FC.INITIAL_SIZE,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}fileSizeLiteral(){return this.getRuleContext(0,Jx)}WAIT(){return this.getToken(FC.WAIT,0)}get ruleIndex(){return FC.RULE_alterTablespace}accept(t){return t.visitAlterTablespace?t.visitAlterTablespace(this):t.visitChildren(this)}},GM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}VIEW(){return this.getToken(FC.VIEW,0)}fullId(){return this.getRuleContext(0,Sx)}AS(){return this.getToken(FC.AS,0)}selectStatement(){return this.getRuleContext(0,rU)}ALGORITHM(){return this.getToken(FC.ALGORITHM,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}ownerStatement(){return this.getRuleContext(0,O_)}SQL(){return this.getToken(FC.SQL,0)}SECURITY(){return this.getToken(FC.SECURITY,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}WITH(){return this.getToken(FC.WITH,0)}CHECK(){return this.getToken(FC.CHECK,0)}OPTION(){return this.getToken(FC.OPTION,0)}UNDEFINED(){return this.getToken(FC.UNDEFINED,0)}MERGE(){return this.getToken(FC.MERGE,0)}TEMPTABLE(){return this.getToken(FC.TEMPTABLE,0)}DEFINER(){return this.getToken(FC.DEFINER,0)}INVOKER(){return this.getToken(FC.INVOKER,0)}CASCADED(){return this.getToken(FC.CASCADED,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}get ruleIndex(){return FC.RULE_alterView}accept(t){return t.visitAlterView?t.visitAlterView(this):t.visitChildren(this)}},FM=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_alterSpecification}copyFrom(t){super.copyFrom(t)}},vM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}uid(){return this.getRuleContext(0,Vx)}SET(){return this.getToken(FC.SET,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}DROP(){return this.getToken(FC.DROP,0)}COLUMN(){return this.getToken(FC.COLUMN,0)}VISIBLE(){return this.getToken(FC.VISIBLE,0)}INVISIBLE(){return this.getToken(FC.INVISIBLE,0)}stringLiteral(){return this.getRuleContext(0,Zx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitAlterByAlterColumnDefault?t.visitAlterByAlterColumnDefault(this):t.visitChildren(this)}},BM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DISABLE(){return this.getToken(FC.DISABLE,0)}KEYS(){return this.getToken(FC.KEYS,0)}accept(t){return t.visitAlterByDisableKeys?t.visitAlterByDisableKeys(this):t.visitChildren(this)}},yM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(){return this.getToken(FC.SET,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}charsetName(){return this.getRuleContext(0,vx)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitAlterByDefaultCharset?t.visitAlterByDefaultCharset(this):t.visitChildren(this)}},fM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RENAME(){return this.getToken(FC.RENAME,0)}COLUMN(){return this.getToken(FC.COLUMN,0)}TO(){return this.getToken(FC.TO,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}accept(t){return t.visitAlterByRenameColumn?t.visitAlterByRenameColumn(this):t.visitChildren(this)}},YM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CONVERT(){return this.getToken(FC.CONVERT,0)}TO(){return this.getToken(FC.TO,0)}charsetName(){return this.getRuleContext(0,vx)}CHARSET(){return this.getToken(FC.CHARSET,0)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(){return this.getToken(FC.SET,0)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitAlterByConvertCharset?t.visitAlterByConvertCharset(this):t.visitChildren(this)}},wM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}FOREIGN(){return this.getToken(FC.FOREIGN,0)}KEY(){return this.getToken(FC.KEY,0)}indexColumnNames(){return this.getRuleContext(0,uk)}referenceDefinition(){return this.getRuleContext(0,hP)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}accept(t){return t.visitAlterByAddForeignKey?t.visitAlterByAddForeignKey(this):t.visitChildren(this)}},bM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RENAME(){return this.getToken(FC.RENAME,0)}indexName(){return this.getRuleContext(0,dx)}TO(){return this.getToken(FC.TO,0)}uid(){return this.getRuleContext(0,Vx)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitAlterByRenameIndex?t.visitAlterByRenameIndex(this):t.visitChildren(this)}},WM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RENAME(){return this.getToken(FC.RENAME,0)}uid(){return this.getRuleContext(0,Vx)}fullId(){return this.getRuleContext(0,Sx)}TO(){return this.getToken(FC.TO,0)}AS(){return this.getToken(FC.AS,0)}accept(t){return t.visitAlterByRename?t.visitAlterByRename(this):t.visitChildren(this)}},VM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}IMPORT(){return this.getToken(FC.IMPORT,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}accept(t){return t.visitAlterByImportTablespace?t.visitAlterByImportTablespace(this):t.visitChildren(this)}},XM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}createDefinition(t){return void 0===t?this.getRuleContexts(v_):this.getRuleContext(t,v_)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COLUMN(){return this.getToken(FC.COLUMN,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAlterByAddDefinitions?t.visitAlterByAddDefinitions(this):t.visitChildren(this)}},KM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}CHECK(){return this.getToken(FC.CHECK,0)}uid(){return this.getRuleContext(0,Vx)}stringLiteral(){return this.getRuleContext(0,Zx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}NOT(){return this.getToken(FC.NOT,0)}ENFORCED(){return this.getToken(FC.ENFORCED,0)}constraintName(){return this.getRuleContext(0,Ux)}accept(t){return t.visitAlterByAlterCheckTableConstraint?t.visitAlterByAlterCheckTableConstraint(this):t.visitChildren(this)}},QM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(FC.DROP,0)}constraintName(){return this.getRuleContext(0,Ux)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}CHECK(){return this.getToken(FC.CHECK,0)}accept(t){return t.visitAlterByDropConstraintCheck?t.visitAlterByDropConstraintCheck(this):t.visitChildren(this)}},JM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}columnDefinition(t){return void 0===t?this.getRuleContexts(Y_):this.getRuleContext(t,Y_)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COLUMN(){return this.getToken(FC.COLUMN,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAlterByAddColumns?t.visitAlterByAddColumns(this):t.visitChildren(this)}},ZM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}INDEX(){return this.getToken(FC.INDEX,0)}indexName(){return this.getRuleContext(0,dx)}VISIBLE(){return this.getToken(FC.VISIBLE,0)}INVISIBLE(){return this.getToken(FC.INVISIBLE,0)}accept(t){return t.visitAlterByAlterIndexVisibility?t.visitAlterByAlterIndexVisibility(this):t.visitChildren(this)}},qM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(FC.DROP,0)}FOREIGN(){return this.getToken(FC.FOREIGN,0)}KEY(){return this.getToken(FC.KEY,0)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitAlterByDropForeignKey?t.visitAlterByDropForeignKey(this):t.visitChildren(this)}},jM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}CHECK(){return this.getToken(FC.CHECK,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}stringLiteral(){return this.getRuleContext(0,Zx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}NOT(){return this.getToken(FC.NOT,0)}ENFORCED(){return this.getToken(FC.ENFORCED,0)}accept(t){return t.visitAlterByAddCheckTableConstraint?t.visitAlterByAddCheckTableConstraint(this):t.visitChildren(this)}},zM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}alterPartitionSpecification(){return this.getRuleContext(0,ud)}accept(t){return t.visitAlterPartition?t.visitAlterPartition(this):t.visitChildren(this)}},$M=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}indexColumnNames(){return this.getRuleContext(0,uk)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}uid(){return this.getRuleContext(0,Vx)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}accept(t){return t.visitAlterByAddIndex?t.visitAlterByAddIndex(this):t.visitChildren(this)}},td=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(FC.DROP,0)}uid(){return this.getRuleContext(0,Vx)}COLUMN(){return this.getToken(FC.COLUMN,0)}RESTRICT(){return this.getToken(FC.RESTRICT,0)}accept(t){return t.visitAlterByDropColumn?t.visitAlterByDropColumn(this):t.visitChildren(this)}},ed=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}uid(){return this.getRuleContext(0,Vx)}SET(){return this.getToken(FC.SET,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}defaultValue(){return this.getRuleContext(0,Mk)}DROP(){return this.getToken(FC.DROP,0)}COLUMN(){return this.getToken(FC.COLUMN,0)}accept(t){return t.visitAlterByChangeDefault?t.visitAlterByChangeDefault(this):t.visitChildren(this)}},sd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FORCE(){return this.getToken(FC.FORCE,0)}accept(t){return t.visitAlterByForce?t.visitAlterByForce(this):t.visitChildren(this)}},ad=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}indexColumnNames(){return this.getRuleContext(0,uk)}FULLTEXT(){return this.getToken(FC.FULLTEXT,0)}SPATIAL(){return this.getToken(FC.SPATIAL,0)}uid(){return this.getRuleContext(0,Vx)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitAlterByAddSpecialIndex?t.visitAlterByAddSpecialIndex(this):t.visitChildren(this)}},rd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(FC.MODIFY,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}columnDefinition(){return this.getRuleContext(0,Y_)}COLUMN(){return this.getToken(FC.COLUMN,0)}FIRST(){return this.getToken(FC.FIRST,0)}AFTER(){return this.getToken(FC.AFTER,0)}accept(t){return t.visitAlterByModifyColumn?t.visitAlterByModifyColumn(this):t.visitChildren(this)}},id=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableOption(t){return void 0===t?this.getRuleContexts(SP):this.getRuleContext(t,SP)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAlterByTableOption?t.visitAlterByTableOption(this):t.visitChildren(this)}},cd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(FC.DROP,0)}PRIMARY(){return this.getToken(FC.PRIMARY,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitAlterByDropPrimaryKey?t.visitAlterByDropPrimaryKey(this):t.visitChildren(this)}},nd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LOCK(){return this.getToken(FC.LOCK,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}NONE(){return this.getToken(FC.NONE,0)}SHARED(){return this.getToken(FC.SHARED,0)}EXCLUSIVE(){return this.getToken(FC.EXCLUSIVE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitAlterByLock?t.visitAlterByLock(this):t.visitChildren(this)}},hd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DISCARD(){return this.getToken(FC.DISCARD,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}accept(t){return t.visitAlterByDiscardTablespace?t.visitAlterByDiscardTablespace(this):t.visitChildren(this)}},Ed=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}VALIDATION(){return this.getToken(FC.VALIDATION,0)}WITHOUT(){return this.getToken(FC.WITHOUT,0)}WITH(){return this.getToken(FC.WITH,0)}accept(t){return t.visitAlterByValidate?t.visitAlterByValidate(this):t.visitChildren(this)}},Td=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}PRIMARY(){return this.getToken(FC.PRIMARY,0)}KEY(){return this.getToken(FC.KEY,0)}indexColumnNames(){return this.getRuleContext(0,uk)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}accept(t){return t.visitAlterByAddPrimaryKey?t.visitAlterByAddPrimaryKey(this):t.visitChildren(this)}},od=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ENABLE(){return this.getToken(FC.ENABLE,0)}KEYS(){return this.getToken(FC.KEYS,0)}accept(t){return t.visitAlterByEnableKeys?t.visitAlterByEnableKeys(this):t.visitChildren(this)}},Rd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALGORITHM(){return this.getToken(FC.ALGORITHM,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}INSTANT(){return this.getToken(FC.INSTANT,0)}INPLACE(){return this.getToken(FC.INPLACE,0)}COPY(){return this.getToken(FC.COPY,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitAlterBySetAlgorithm?t.visitAlterBySetAlgorithm(this):t.visitChildren(this)}},Ad=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHANGE(){return this.getToken(FC.CHANGE,0)}columnDefinition(){return this.getRuleContext(0,Y_)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COLUMN(){return this.getToken(FC.COLUMN,0)}FIRST(){return this.getToken(FC.FIRST,0)}AFTER(){return this.getToken(FC.AFTER,0)}accept(t){return t.visitAlterByChangeColumn?t.visitAlterByChangeColumn(this):t.visitChildren(this)}},Sd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}UNIQUE(){return this.getToken(FC.UNIQUE,0)}indexColumnNames(){return this.getRuleContext(0,uk)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitAlterByAddUniqueKey?t.visitAlterByAddUniqueKey(this):t.visitChildren(this)}},ld=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(FC.DROP,0)}indexName(){return this.getRuleContext(0,dx)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitAlterByDropIndex?t.visitAlterByDropIndex(this):t.visitChildren(this)}},Od=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}columnDefinition(){return this.getRuleContext(0,Y_)}COLUMN(){return this.getToken(FC.COLUMN,0)}FIRST(){return this.getToken(FC.FIRST,0)}AFTER(){return this.getToken(FC.AFTER,0)}accept(t){return t.visitAlterByAddColumn?t.visitAlterByAddColumn(this):t.visitChildren(this)}},Id=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ORDER(){return this.getToken(FC.ORDER,0)}BY(){return this.getToken(FC.BY,0)}uidList(){return this.getRuleContext(0,lk)}accept(t){return t.visitAlterByOrder?t.visitAlterByOrder(this):t.visitChildren(this)}},ud=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_alterPartitionSpecification}copyFrom(t){super.copyFrom(t)}},Nd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}IMPORT(){return this.getToken(FC.IMPORT,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByImportPartition?t.visitAlterByImportPartition(this):t.visitChildren(this)}},Ld=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(FC.DROP,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}accept(t){return t.visitAlterByDropPartition?t.visitAlterByDropPartition(this):t.visitChildren(this)}},Cd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DISCARD(){return this.getToken(FC.DISCARD,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByDiscardPartition?t.visitAlterByDiscardPartition(this):t.visitChildren(this)}},_d=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}partitionDefinition(t){return void 0===t?this.getRuleContexts(cM):this.getRuleContext(t,cM)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAlterByAddPartition?t.visitAlterByAddPartition(this):t.visitChildren(this)}},Pd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REMOVE(){return this.getToken(FC.REMOVE,0)}PARTITIONING(){return this.getToken(FC.PARTITIONING,0)}accept(t){return t.visitAlterByRemovePartitioning?t.visitAlterByRemovePartitioning(this):t.visitChildren(this)}},Md=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}OPTIMIZE(){return this.getToken(FC.OPTIMIZE,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByOptimizePartition?t.visitAlterByOptimizePartition(this):t.visitChildren(this)}},dd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHECK(){return this.getToken(FC.CHECK,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByCheckPartition?t.visitAlterByCheckPartition(this):t.visitChildren(this)}},Ud=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COALESCE(){return this.getToken(FC.COALESCE,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}accept(t){return t.visitAlterByCoalescePartition?t.visitAlterByCoalescePartition(this):t.visitChildren(this)}},md=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REORGANIZE(){return this.getToken(FC.REORGANIZE,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}INTO(){return this.getToken(FC.INTO,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}partitionDefinition(t){return void 0===t?this.getRuleContexts(cM):this.getRuleContext(t,cM)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAlterByReorganizePartition?t.visitAlterByReorganizePartition(this):t.visitChildren(this)}},Dd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ANALYZE(){return this.getToken(FC.ANALYZE,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByAnalyzePartition?t.visitAlterByAnalyzePartition(this):t.visitChildren(this)}},pd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REBUILD(){return this.getToken(FC.REBUILD,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByRebuildPartition?t.visitAlterByRebuildPartition(this):t.visitChildren(this)}},gd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}UPGRADE(){return this.getToken(FC.UPGRADE,0)}PARTITIONING(){return this.getToken(FC.PARTITIONING,0)}accept(t){return t.visitAlterByUpgradePartitioning?t.visitAlterByUpgradePartitioning(this):t.visitChildren(this)}},xd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TRUNCATE(){return this.getToken(FC.TRUNCATE,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByTruncatePartition?t.visitAlterByTruncatePartition(this):t.visitChildren(this)}},kd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPAIR(){return this.getToken(FC.REPAIR,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByRepairPartition?t.visitAlterByRepairPartition(this):t.visitChildren(this)}},Hd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXCHANGE(){return this.getToken(FC.EXCHANGE,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uid(){return this.getRuleContext(0,Vx)}WITH(t){return void 0===t?this.getTokens(FC.WITH):this.getToken(FC.WITH,t)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}VALIDATION(){return this.getToken(FC.VALIDATION,0)}WITHOUT(){return this.getToken(FC.WITHOUT,0)}accept(t){return t.visitAlterByExchangePartition?t.visitAlterByExchangePartition(this):t.visitChildren(this)}},Gd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}databaseName(){return this.getRuleContext(0,Mx)}DATABASE(){return this.getToken(FC.DATABASE,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropDatabase}accept(t){return t.visitDropDatabase?t.visitDropDatabase(this):t.visitChildren(this)}},Fd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}EVENT(){return this.getToken(FC.EVENT,0)}fullId(){return this.getRuleContext(0,Sx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropEvent}accept(t){return t.visitDropEvent?t.visitDropEvent(this):t.visitChildren(this)}},vd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}INDEX(){return this.getToken(FC.INDEX,0)}indexName(){return this.getRuleContext(0,dx)}ON(){return this.getToken(FC.ON,0)}tableName(){return this.getRuleContext(0,lx)}ALGORITHM(t){return void 0===t?this.getTokens(FC.ALGORITHM):this.getToken(FC.ALGORITHM,t)}LOCK(t){return void 0===t?this.getTokens(FC.LOCK):this.getToken(FC.LOCK,t)}ONLINE(){return this.getToken(FC.ONLINE,0)}OFFLINE(){return this.getToken(FC.OFFLINE,0)}DEFAULT(t){return void 0===t?this.getTokens(FC.DEFAULT):this.getToken(FC.DEFAULT,t)}INPLACE(t){return void 0===t?this.getTokens(FC.INPLACE):this.getToken(FC.INPLACE,t)}COPY(t){return void 0===t?this.getTokens(FC.COPY):this.getToken(FC.COPY,t)}NONE(t){return void 0===t?this.getTokens(FC.NONE):this.getToken(FC.NONE,t)}SHARED(t){return void 0===t?this.getTokens(FC.SHARED):this.getToken(FC.SHARED,t)}EXCLUSIVE(t){return void 0===t?this.getTokens(FC.EXCLUSIVE):this.getToken(FC.EXCLUSIVE,t)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}get ruleIndex(){return FC.RULE_dropIndex}accept(t){return t.visitDropIndex?t.visitDropIndex(this):t.visitChildren(this)}},Bd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}LOGFILE(){return this.getToken(FC.LOGFILE,0)}GROUP(){return this.getToken(FC.GROUP,0)}uid(){return this.getRuleContext(0,Vx)}ENGINE(){return this.getToken(FC.ENGINE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}engineName(){return this.getRuleContext(0,yx)}get ruleIndex(){return FC.RULE_dropLogfileGroup}accept(t){return t.visitDropLogfileGroup?t.visitDropLogfileGroup(this):t.visitChildren(this)}},yd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}fullId(){return this.getRuleContext(0,Sx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropProcedure}accept(t){return t.visitDropProcedure?t.visitDropProcedure(this):t.visitChildren(this)}},fd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}fullId(){return this.getRuleContext(0,Sx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropFunction}accept(t){return t.visitDropFunction?t.visitDropFunction(this):t.visitChildren(this)}},Yd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}SERVER(){return this.getToken(FC.SERVER,0)}uid(){return this.getRuleContext(0,Vx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropServer}accept(t){return t.visitDropServer?t.visitDropServer(this):t.visitChildren(this)}},wd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}TABLE(){return this.getToken(FC.TABLE,0)}tables(){return this.getRuleContext(0,Ik)}TEMPORARY(){return this.getToken(FC.TEMPORARY,0)}ifExists(){return this.getRuleContext(0,mk)}RESTRICT(){return this.getToken(FC.RESTRICT,0)}CASCADE(){return this.getToken(FC.CASCADE,0)}get ruleIndex(){return FC.RULE_dropTable}accept(t){return t.visitDropTable?t.visitDropTable(this):t.visitChildren(this)}},bd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uid(){return this.getRuleContext(0,Vx)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}get ruleIndex(){return FC.RULE_dropTablespace}accept(t){return t.visitDropTablespace?t.visitDropTablespace(this):t.visitChildren(this)}},Wd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}TRIGGER(){return this.getToken(FC.TRIGGER,0)}triggerName(){return this.getRuleContext(0,mx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropTrigger}accept(t){return t.visitDropTrigger?t.visitDropTrigger(this):t.visitChildren(this)}},Vd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}VIEW(){return this.getToken(FC.VIEW,0)}fullId(t){return void 0===t?this.getRuleContexts(Sx):this.getRuleContext(t,Sx)}ifExists(){return this.getRuleContext(0,mk)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}RESTRICT(){return this.getToken(FC.RESTRICT,0)}CASCADE(){return this.getToken(FC.CASCADE,0)}get ruleIndex(){return FC.RULE_dropView}accept(t){return t.visitDropView?t.visitDropView(this):t.visitChildren(this)}},Xd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}ROLE(){return this.getToken(FC.ROLE,0)}roleNameList(){return this.getRuleContext(0,Cx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropRole}accept(t){return t.visitDropRole?t.visitDropRole(this):t.visitChildren(this)}},Kd=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(FC.SET,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}ROLE(){return this.getToken(FC.ROLE,0)}TO(){return this.getToken(FC.TO,0)}userNameList(){return this.getRuleContext(0,kx)}NONE(){return this.getToken(FC.NONE,0)}ALL(){return this.getToken(FC.ALL,0)}roleNameList(){return this.getRuleContext(0,Cx)}roleOption(){return this.getRuleContext(0,lp)}get ruleIndex(){return FC.RULE_setRole}accept(t){return t.visitSetRole?t.visitSetRole(this):t.visitChildren(this)}},Qd=class extends ga{constructor(t,e){super(t,e)}RENAME(){return this.getToken(FC.RENAME,0)}TABLE(){return this.getToken(FC.TABLE,0)}renameTableClause(t){return void 0===t?this.getRuleContexts(Jd):this.getRuleContext(t,Jd)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_renameTable}accept(t){return t.visitRenameTable?t.visitRenameTable(this):t.visitChildren(this)}},Jd=class extends ga{constructor(t,e){super(t,e)}tableName(t){return void 0===t?this.getRuleContexts(lx):this.getRuleContext(t,lx)}TO(){return this.getToken(FC.TO,0)}get ruleIndex(){return FC.RULE_renameTableClause}accept(t){return t.visitRenameTableClause?t.visitRenameTableClause(this):t.visitChildren(this)}},Zd=class extends ga{constructor(t,e){super(t,e)}TRUNCATE(){return this.getToken(FC.TRUNCATE,0)}tableName(){return this.getRuleContext(0,lx)}TABLE(){return this.getToken(FC.TABLE,0)}get ruleIndex(){return FC.RULE_truncateTable}accept(t){return t.visitTruncateTable?t.visitTruncateTable(this):t.visitChildren(this)}},qd=class extends ga{constructor(t,e){super(t,e)}CALL(){return this.getToken(FC.CALL,0)}fullId(){return this.getRuleContext(0,Sx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}constants(){return this.getRuleContext(0,Ck)}expressions(){return this.getRuleContext(0,Nk)}get ruleIndex(){return FC.RULE_callStatement}accept(t){return t.visitCallStatement?t.visitCallStatement(this):t.visitChildren(this)}},jd=class extends ga{constructor(t,e){super(t,e)}singleDeleteStatement(){return this.getRuleContext(0,OU)}multipleDeleteStatement(){return this.getRuleContext(0,IU)}get ruleIndex(){return FC.RULE_deleteStatement}accept(t){return t.visitDeleteStatement?t.visitDeleteStatement(this):t.visitChildren(this)}},zd=class extends ga{constructor(t,e){super(t,e)}DO(){return this.getToken(FC.DO,0)}expressions(){return this.getRuleContext(0,Nk)}get ruleIndex(){return FC.RULE_doStatement}accept(t){return t.visitDoStatement?t.visitDoStatement(this):t.visitChildren(this)}},$d=class extends ga{constructor(t,e){super(t,e)}handlerOpenStatement(){return this.getRuleContext(0,uU)}handlerReadIndexStatement(){return this.getRuleContext(0,NU)}handlerReadStatement(){return this.getRuleContext(0,LU)}handlerCloseStatement(){return this.getRuleContext(0,CU)}get ruleIndex(){return FC.RULE_handlerStatement}accept(t){return t.visitHandlerStatement?t.visitHandlerStatement(this):t.visitChildren(this)}},tU=class extends ga{constructor(t,e){super(t,e),this._setElements=[],this._duplicatedElements=[]}INSERT(){return this.getToken(FC.INSERT,0)}tableName(){return this.getRuleContext(0,lx)}insertStatementValue(){return this.getRuleContext(0,RU)}SET(){return this.getToken(FC.SET,0)}IGNORE(){return this.getToken(FC.IGNORE,0)}INTO(){return this.getToken(FC.INTO,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}updatedElement(t){return void 0===t?this.getRuleContexts(AU):this.getRuleContext(t,AU)}ON(){return this.getToken(FC.ON,0)}DUPLICATE(){return this.getToken(FC.DUPLICATE,0)}KEY(){return this.getToken(FC.KEY,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}DELAYED(){return this.getToken(FC.DELAYED,0)}HIGH_PRIORITY(){return this.getToken(FC.HIGH_PRIORITY,0)}uid(){return this.getRuleContext(0,Vx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}uidList(){return this.getRuleContext(0,lk)}AS(){return this.getToken(FC.AS,0)}fullColumnNameList(){return this.getRuleContext(0,Ok)}get ruleIndex(){return FC.RULE_insertStatement}accept(t){return t.visitInsertStatement?t.visitInsertStatement(this):t.visitChildren(this)}},eU=class extends ga{constructor(t,e){super(t,e)}LOAD(){return this.getToken(FC.LOAD,0)}DATA(){return this.getToken(FC.DATA,0)}INFILE(){return this.getToken(FC.INFILE,0)}INTO(){return this.getToken(FC.INTO,0)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(t){return void 0===t?this.getTokens(FC.SET):this.getToken(FC.SET,t)}LINES(t){return void 0===t?this.getTokens(FC.LINES):this.getToken(FC.LINES,t)}IGNORE(t){return void 0===t?this.getTokens(FC.IGNORE):this.getToken(FC.IGNORE,t)}decimalLiteral(){return this.getRuleContext(0,Qx)}assignmentField(t){return void 0===t?this.getRuleContexts(SU):this.getRuleContext(t,SU)}updatedElement(t){return void 0===t?this.getRuleContexts(AU):this.getRuleContext(t,AU)}charsetName(){return this.getRuleContext(0,vx)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}CONCURRENT(){return this.getToken(FC.CONCURRENT,0)}REPLACE(){return this.getToken(FC.REPLACE,0)}FIELDS(){return this.getToken(FC.FIELDS,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}ROWS(){return this.getToken(FC.ROWS,0)}selectFieldsInto(t){return void 0===t?this.getRuleContexts(Am):this.getRuleContext(t,Am)}selectLinesInto(t){return void 0===t?this.getRuleContexts(Sm):this.getRuleContext(t,Sm)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_loadDataStatement}accept(t){return t.visitLoadDataStatement?t.visitLoadDataStatement(this):t.visitChildren(this)}},sU=class extends ga{constructor(t,e){super(t,e)}LOAD(){return this.getToken(FC.LOAD,0)}XML(){return this.getToken(FC.XML,0)}INFILE(){return this.getToken(FC.INFILE,0)}INTO(){return this.getToken(FC.INTO,0)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}LOCAL(){return this.getToken(FC.LOCAL,0)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(t){return void 0===t?this.getTokens(FC.SET):this.getToken(FC.SET,t)}ROWS(t){return void 0===t?this.getTokens(FC.ROWS):this.getToken(FC.ROWS,t)}IDENTIFIED(){return this.getToken(FC.IDENTIFIED,0)}BY(){return this.getToken(FC.BY,0)}LESS_SYMBOL(){return this.getToken(FC.LESS_SYMBOL,0)}GREATER_SYMBOL(){return this.getToken(FC.GREATER_SYMBOL,0)}IGNORE(t){return void 0===t?this.getTokens(FC.IGNORE):this.getToken(FC.IGNORE,t)}decimalLiteral(){return this.getRuleContext(0,Qx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}assignmentField(t){return void 0===t?this.getRuleContexts(SU):this.getRuleContext(t,SU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}updatedElement(t){return void 0===t?this.getRuleContexts(AU):this.getRuleContext(t,AU)}charsetName(){return this.getRuleContext(0,vx)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}CONCURRENT(){return this.getToken(FC.CONCURRENT,0)}REPLACE(){return this.getToken(FC.REPLACE,0)}LINES(){return this.getToken(FC.LINES,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_loadXmlStatement}accept(t){return t.visitLoadXmlStatement?t.visitLoadXmlStatement(this):t.visitChildren(this)}},aU=class extends ga{constructor(t,e){super(t,e),this._setElements=[]}REPLACE(){return this.getToken(FC.REPLACE,0)}tableName(){return this.getRuleContext(0,lx)}insertStatementValue(){return this.getRuleContext(0,RU)}SET(){return this.getToken(FC.SET,0)}INTO(){return this.getToken(FC.INTO,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}updatedElement(t){return void 0===t?this.getRuleContexts(AU):this.getRuleContext(t,AU)}uidList(t){return void 0===t?this.getRuleContexts(lk):this.getRuleContext(t,lk)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}DELAYED(){return this.getToken(FC.DELAYED,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_replaceStatement}accept(t){return t.visitReplaceStatement?t.visitReplaceStatement(this):t.visitChildren(this)}},rU=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_selectStatement}copyFrom(t){super.copyFrom(t)}},iU=class extends rU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}querySpecificationNointo(){return this.getRuleContext(0,KU)}queryExpressionNointo(){return this.getRuleContext(0,VU)}unionStatement(t){return void 0===t?this.getRuleContexts(JU):this.getRuleContext(t,JU)}UNION(){return this.getToken(FC.UNION,0)}orderByClause(){return this.getRuleContext(0,MU)}limitClause(){return this.getRuleContext(0,Lm)}lockClause(){return this.getRuleContext(0,lU)}querySpecification(){return this.getRuleContext(0,XU)}queryExpression(){return this.getRuleContext(0,WU)}ALL(){return this.getToken(FC.ALL,0)}DISTINCT(){return this.getToken(FC.DISTINCT,0)}accept(t){return t.visitUnionSelect?t.visitUnionSelect(this):t.visitChildren(this)}},cU=class extends rU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}queryExpressionNointo(){return this.getRuleContext(0,VU)}unionParenthesis(t){return void 0===t?this.getRuleContexts(QU):this.getRuleContext(t,QU)}UNION(){return this.getToken(FC.UNION,0)}queryExpression(){return this.getRuleContext(0,WU)}orderByClause(){return this.getRuleContext(0,MU)}limitClause(){return this.getRuleContext(0,Lm)}lockClause(){return this.getRuleContext(0,lU)}ALL(){return this.getToken(FC.ALL,0)}DISTINCT(){return this.getToken(FC.DISTINCT,0)}accept(t){return t.visitUnionParenthesisSelect?t.visitUnionParenthesisSelect(this):t.visitChildren(this)}},nU=class extends rU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}querySpecification(){return this.getRuleContext(0,XU)}lockClause(){return this.getRuleContext(0,lU)}accept(t){return t.visitSimpleSelect?t.visitSimpleSelect(this):t.visitChildren(this)}},hU=class extends rU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}queryExpression(){return this.getRuleContext(0,WU)}lockClause(){return this.getRuleContext(0,lU)}accept(t){return t.visitParenthesisSelect?t.visitParenthesisSelect(this):t.visitChildren(this)}},EU=class extends rU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}querySpecificationNointo(){return this.getRuleContext(0,KU)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}lateralStatement(t){return void 0===t?this.getRuleContexts(ZU):this.getRuleContext(t,ZU)}accept(t){return t.visitWithLateralStatement?t.visitWithLateralStatement(this):t.visitChildren(this)}},TU=class extends ga{constructor(t,e){super(t,e)}singleUpdateStatement(){return this.getRuleContext(0,_U)}multipleUpdateStatement(){return this.getRuleContext(0,PU)}get ruleIndex(){return FC.RULE_updateStatement}accept(t){return t.visitUpdateStatement?t.visitUpdateStatement(this):t.visitChildren(this)}},oU=class extends ga{constructor(t,e){super(t,e)}VALUES(){return this.getToken(FC.VALUES,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}expressionsWithDefaults(t){return void 0===t?this.getRuleContexts(Lk):this.getRuleContext(t,Lk)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_valuesStatement}accept(t){return t.visitValuesStatement?t.visitValuesStatement(this):t.visitChildren(this)}},RU=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,rU)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}VALUES(){return this.getToken(FC.VALUES,0)}VALUE(){return this.getToken(FC.VALUE,0)}expressionsWithDefaults(t){return void 0===t?this.getRuleContexts(Lk):this.getRuleContext(t,Lk)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_insertStatementValue}accept(t){return t.visitInsertStatementValue?t.visitInsertStatementValue(this):t.visitChildren(this)}},AU=class extends ga{constructor(t,e){super(t,e)}fullColumnName(){return this.getRuleContext(0,Px)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}expression(){return this.getRuleContext(0,NH)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}get ruleIndex(){return FC.RULE_updatedElement}accept(t){return t.visitUpdatedElement?t.visitUpdatedElement(this):t.visitChildren(this)}},SU=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}get ruleIndex(){return FC.RULE_assignmentField}accept(t){return t.visitAssignmentField?t.visitAssignmentField(this):t.visitChildren(this)}},lU=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(FC.FOR,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}LOCK(){return this.getToken(FC.LOCK,0)}IN(){return this.getToken(FC.IN,0)}SHARE(){return this.getToken(FC.SHARE,0)}MODE(){return this.getToken(FC.MODE,0)}get ruleIndex(){return FC.RULE_lockClause}accept(t){return t.visitLockClause?t.visitLockClause(this):t.visitChildren(this)}},OU=class extends ga{constructor(t,e){super(t,e)}DELETE(){return this.getToken(FC.DELETE,0)}FROM(){return this.getToken(FC.FROM,0)}tableName(){return this.getRuleContext(0,lx)}QUICK(){return this.getToken(FC.QUICK,0)}IGNORE(){return this.getToken(FC.IGNORE,0)}uid(){return this.getRuleContext(0,Vx)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}orderByClause(){return this.getRuleContext(0,MU)}LIMIT(){return this.getToken(FC.LIMIT,0)}limitClauseAtom(){return this.getRuleContext(0,Cm)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_singleDeleteStatement}accept(t){return t.visitSingleDeleteStatement?t.visitSingleDeleteStatement(this):t.visitChildren(this)}},IU=class extends ga{constructor(t,e){super(t,e)}DELETE(){return this.getToken(FC.DELETE,0)}tableName(t){return void 0===t?this.getRuleContexts(lx):this.getRuleContext(t,lx)}FROM(){return this.getToken(FC.FROM,0)}tableSources(){return this.getRuleContext(0,UU)}USING(){return this.getToken(FC.USING,0)}QUICK(){return this.getToken(FC.QUICK,0)}IGNORE(){return this.getToken(FC.IGNORE,0)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}DOT(t){return void 0===t?this.getTokens(FC.DOT):this.getToken(FC.DOT,t)}STAR(t){return void 0===t?this.getTokens(FC.STAR):this.getToken(FC.STAR,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_multipleDeleteStatement}accept(t){return t.visitMultipleDeleteStatement?t.visitMultipleDeleteStatement(this):t.visitChildren(this)}},uU=class extends ga{constructor(t,e){super(t,e)}HANDLER(){return this.getToken(FC.HANDLER,0)}tableName(){return this.getRuleContext(0,lx)}OPEN(){return this.getToken(FC.OPEN,0)}uid(){return this.getRuleContext(0,Vx)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_handlerOpenStatement}accept(t){return t.visitHandlerOpenStatement?t.visitHandlerOpenStatement(this):t.visitChildren(this)}},NU=class extends ga{constructor(t,e){super(t,e)}HANDLER(){return this.getToken(FC.HANDLER,0)}tableName(){return this.getRuleContext(0,lx)}READ(){return this.getToken(FC.READ,0)}uid(){return this.getRuleContext(0,Vx)}comparisonOperator(){return this.getRuleContext(0,$H)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}constants(){return this.getRuleContext(0,Ck)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}LIMIT(){return this.getToken(FC.LIMIT,0)}limitClauseAtom(){return this.getRuleContext(0,Cm)}FIRST(){return this.getToken(FC.FIRST,0)}NEXT(){return this.getToken(FC.NEXT,0)}PREV(){return this.getToken(FC.PREV,0)}LAST(){return this.getToken(FC.LAST,0)}get ruleIndex(){return FC.RULE_handlerReadIndexStatement}accept(t){return t.visitHandlerReadIndexStatement?t.visitHandlerReadIndexStatement(this):t.visitChildren(this)}},LU=class extends ga{constructor(t,e){super(t,e)}HANDLER(){return this.getToken(FC.HANDLER,0)}tableName(){return this.getRuleContext(0,lx)}READ(){return this.getToken(FC.READ,0)}FIRST(){return this.getToken(FC.FIRST,0)}NEXT(){return this.getToken(FC.NEXT,0)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}LIMIT(){return this.getToken(FC.LIMIT,0)}limitClauseAtom(){return this.getRuleContext(0,Cm)}get ruleIndex(){return FC.RULE_handlerReadStatement}accept(t){return t.visitHandlerReadStatement?t.visitHandlerReadStatement(this):t.visitChildren(this)}},CU=class extends ga{constructor(t,e){super(t,e)}HANDLER(){return this.getToken(FC.HANDLER,0)}tableName(){return this.getRuleContext(0,lx)}CLOSE(){return this.getToken(FC.CLOSE,0)}get ruleIndex(){return FC.RULE_handlerCloseStatement}accept(t){return t.visitHandlerCloseStatement?t.visitHandlerCloseStatement(this):t.visitChildren(this)}},_U=class extends ga{constructor(t,e){super(t,e)}UPDATE(){return this.getToken(FC.UPDATE,0)}tableName(){return this.getRuleContext(0,lx)}SET(){return this.getToken(FC.SET,0)}updatedElement(t){return void 0===t?this.getRuleContexts(AU):this.getRuleContext(t,AU)}IGNORE(){return this.getToken(FC.IGNORE,0)}uid(){return this.getRuleContext(0,Vx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}orderByClause(){return this.getRuleContext(0,MU)}limitClause(){return this.getRuleContext(0,Lm)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_singleUpdateStatement}accept(t){return t.visitSingleUpdateStatement?t.visitSingleUpdateStatement(this):t.visitChildren(this)}},PU=class extends ga{constructor(t,e){super(t,e)}UPDATE(){return this.getToken(FC.UPDATE,0)}tableNames(){return this.getRuleContext(0,Ox)}SET(){return this.getToken(FC.SET,0)}updatedElement(t){return void 0===t?this.getRuleContexts(AU):this.getRuleContext(t,AU)}IGNORE(){return this.getToken(FC.IGNORE,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}get ruleIndex(){return FC.RULE_multipleUpdateStatement}accept(t){return t.visitMultipleUpdateStatement?t.visitMultipleUpdateStatement(this):t.visitChildren(this)}},MU=class extends ga{constructor(t,e){super(t,e)}ORDER(){return this.getToken(FC.ORDER,0)}BY(){return this.getToken(FC.BY,0)}orderByExpression(t){return void 0===t?this.getRuleContexts(dU):this.getRuleContext(t,dU)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_orderByClause}accept(t){return t.visitOrderByClause?t.visitOrderByClause(this):t.visitChildren(this)}},dU=class extends ga{constructor(t,e){super(t,e)}expression(){return this.getRuleContext(0,NH)}ASC(){return this.getToken(FC.ASC,0)}DESC(){return this.getToken(FC.DESC,0)}get ruleIndex(){return FC.RULE_orderByExpression}accept(t){return t.visitOrderByExpression?t.visitOrderByExpression(this):t.visitChildren(this)}},UU=class extends ga{constructor(t,e){super(t,e)}tableSource(t){return void 0===t?this.getRuleContexts(mU):this.getRuleContext(t,mU)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_tableSources}accept(t){return t.visitTableSources?t.visitTableSources(this):t.visitChildren(this)}},mU=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_tableSource}copyFrom(t){super.copyFrom(t)}},DU=class extends mU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}jsonTable(){return this.getRuleContext(0,qU)}accept(t){return t.visitTableJson?t.visitTableJson(this):t.visitChildren(this)}},pU=class extends mU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}tableSourceItem(){return this.getRuleContext(0,xU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}joinPart(t){return void 0===t?this.getRuleContexts(BU):this.getRuleContext(t,BU)}accept(t){return t.visitTableSourceNested?t.visitTableSourceNested(this):t.visitChildren(this)}},gU=class extends mU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableSourceItem(){return this.getRuleContext(0,xU)}joinPart(t){return void 0===t?this.getRuleContexts(BU):this.getRuleContext(t,BU)}accept(t){return t.visitTableSourceBase?t.visitTableSourceBase(this):t.visitChildren(this)}},xU=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_tableSourceItem}copyFrom(t){super.copyFrom(t)}},kU=class extends xU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}uid(){return this.getRuleContext(0,Vx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}selectStatement(){return this.getRuleContext(0,rU)}AS(){return this.getToken(FC.AS,0)}accept(t){return t.visitSubqueryTableItem?t.visitSubqueryTableItem(this):t.visitChildren(this)}},HU=class extends xU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableName(){return this.getRuleContext(0,lx)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}indexHint(t){return void 0===t?this.getRuleContexts(FU):this.getRuleContext(t,FU)}uid(){return this.getRuleContext(0,Vx)}AS(){return this.getToken(FC.AS,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAtomTableItem?t.visitAtomTableItem(this):t.visitChildren(this)}},GU=class extends xU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}tableSources(){return this.getRuleContext(0,UU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitTableSourcesItem?t.visitTableSourcesItem(this):t.visitChildren(this)}},FU=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}indexNameList(){return this.getRuleContext(0,Dx)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}USE(){return this.getToken(FC.USE,0)}IGNORE(){return this.getToken(FC.IGNORE,0)}FORCE(){return this.getToken(FC.FORCE,0)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}FOR(){return this.getToken(FC.FOR,0)}indexHintType(){return this.getRuleContext(0,vU)}get ruleIndex(){return FC.RULE_indexHint}accept(t){return t.visitIndexHint?t.visitIndexHint(this):t.visitChildren(this)}},vU=class extends ga{constructor(t,e){super(t,e)}JOIN(){return this.getToken(FC.JOIN,0)}ORDER(){return this.getToken(FC.ORDER,0)}BY(){return this.getToken(FC.BY,0)}GROUP(){return this.getToken(FC.GROUP,0)}get ruleIndex(){return FC.RULE_indexHintType}accept(t){return t.visitIndexHintType?t.visitIndexHintType(this):t.visitChildren(this)}},BU=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_joinPart}copyFrom(t){super.copyFrom(t)}},yU=class extends BU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}JOIN(){return this.getToken(FC.JOIN,0)}tableSourceItem(){return this.getRuleContext(0,xU)}LATERAL(){return this.getToken(FC.LATERAL,0)}joinSpec(t){return void 0===t?this.getRuleContexts(bU):this.getRuleContext(t,bU)}INNER(){return this.getToken(FC.INNER,0)}CROSS(){return this.getToken(FC.CROSS,0)}accept(t){return t.visitInnerJoin?t.visitInnerJoin(this):t.visitChildren(this)}},fU=class extends BU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}NATURAL(){return this.getToken(FC.NATURAL,0)}JOIN(){return this.getToken(FC.JOIN,0)}tableSourceItem(){return this.getRuleContext(0,xU)}LEFT(){return this.getToken(FC.LEFT,0)}RIGHT(){return this.getToken(FC.RIGHT,0)}OUTER(){return this.getToken(FC.OUTER,0)}accept(t){return t.visitNaturalJoin?t.visitNaturalJoin(this):t.visitChildren(this)}},YU=class extends BU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}JOIN(){return this.getToken(FC.JOIN,0)}tableSourceItem(){return this.getRuleContext(0,xU)}LEFT(){return this.getToken(FC.LEFT,0)}RIGHT(){return this.getToken(FC.RIGHT,0)}OUTER(){return this.getToken(FC.OUTER,0)}LATERAL(){return this.getToken(FC.LATERAL,0)}joinSpec(t){return void 0===t?this.getRuleContexts(bU):this.getRuleContext(t,bU)}accept(t){return t.visitOuterJoin?t.visitOuterJoin(this):t.visitChildren(this)}},wU=class extends BU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STRAIGHT_JOIN(){return this.getToken(FC.STRAIGHT_JOIN,0)}tableSourceItem(){return this.getRuleContext(0,xU)}ON(t){return void 0===t?this.getTokens(FC.ON):this.getToken(FC.ON,t)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}accept(t){return t.visitStraightJoin?t.visitStraightJoin(this):t.visitChildren(this)}},bU=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(FC.ON,0)}expression(){return this.getRuleContext(0,NH)}USING(){return this.getToken(FC.USING,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}get ruleIndex(){return FC.RULE_joinSpec}accept(t){return t.visitJoinSpec?t.visitJoinSpec(this):t.visitChildren(this)}},WU=class t extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}querySpecification(){return this.getRuleContext(0,XU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}queryExpression(){return this.getRuleContext(0,t)}get ruleIndex(){return FC.RULE_queryExpression}accept(t){return t.visitQueryExpression?t.visitQueryExpression(this):t.visitChildren(this)}},VU=class t extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}querySpecificationNointo(){return this.getRuleContext(0,KU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}queryExpressionNointo(){return this.getRuleContext(0,t)}get ruleIndex(){return FC.RULE_queryExpressionNointo}accept(t){return t.visitQueryExpressionNointo?t.visitQueryExpressionNointo(this):t.visitChildren(this)}},XU=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(FC.SELECT,0)}selectElements(){return this.getRuleContext(0,sm)}fromClause(){return this.getRuleContext(0,lm)}selectSpec(t){return void 0===t?this.getRuleContexts(em):this.getRuleContext(t,em)}selectIntoExpression(){return this.getRuleContext(0,Em)}groupByClause(){return this.getRuleContext(0,Om)}havingClause(){return this.getRuleContext(0,Im)}windowClause(){return this.getRuleContext(0,um)}orderByClause(){return this.getRuleContext(0,MU)}limitClause(){return this.getRuleContext(0,Lm)}get ruleIndex(){return FC.RULE_querySpecification}accept(t){return t.visitQuerySpecification?t.visitQuerySpecification(this):t.visitChildren(this)}},KU=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(FC.SELECT,0)}selectElements(){return this.getRuleContext(0,sm)}fromClause(){return this.getRuleContext(0,lm)}selectSpec(t){return void 0===t?this.getRuleContexts(em):this.getRuleContext(t,em)}groupByClause(){return this.getRuleContext(0,Om)}havingClause(){return this.getRuleContext(0,Im)}windowClause(){return this.getRuleContext(0,um)}orderByClause(){return this.getRuleContext(0,MU)}limitClause(){return this.getRuleContext(0,Lm)}unionStatement(){return this.getRuleContext(0,JU)}get ruleIndex(){return FC.RULE_querySpecificationNointo}accept(t){return t.visitQuerySpecificationNointo?t.visitQuerySpecificationNointo(this):t.visitChildren(this)}},QU=class extends ga{constructor(t,e){super(t,e)}UNION(){return this.getToken(FC.UNION,0)}queryExpressionNointo(){return this.getRuleContext(0,VU)}ALL(){return this.getToken(FC.ALL,0)}DISTINCT(){return this.getToken(FC.DISTINCT,0)}get ruleIndex(){return FC.RULE_unionParenthesis}accept(t){return t.visitUnionParenthesis?t.visitUnionParenthesis(this):t.visitChildren(this)}},JU=class extends ga{constructor(t,e){super(t,e)}UNION(){return this.getToken(FC.UNION,0)}querySpecificationNointo(){return this.getRuleContext(0,KU)}queryExpressionNointo(){return this.getRuleContext(0,VU)}ALL(){return this.getToken(FC.ALL,0)}DISTINCT(){return this.getToken(FC.DISTINCT,0)}get ruleIndex(){return FC.RULE_unionStatement}accept(t){return t.visitUnionStatement?t.visitUnionStatement(this):t.visitChildren(this)}},ZU=class extends ga{constructor(t,e){super(t,e)}LATERAL(){return this.getToken(FC.LATERAL,0)}querySpecificationNointo(){return this.getRuleContext(0,KU)}queryExpressionNointo(){return this.getRuleContext(0,VU)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}uid(){return this.getRuleContext(0,Vx)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_lateralStatement}accept(t){return t.visitLateralStatement?t.visitLateralStatement(this):t.visitChildren(this)}},qU=class extends ga{constructor(t,e){super(t,e)}JSON_TABLE(){return this.getToken(FC.JSON_TABLE,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}COMMA(){return this.getToken(FC.COMMA,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}jsonColumnList(){return this.getRuleContext(0,jU)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}uid(){return this.getRuleContext(0,Vx)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_jsonTable}accept(t){return t.visitJsonTable?t.visitJsonTable(this):t.visitChildren(this)}},jU=class extends ga{constructor(t,e){super(t,e)}jsonColumn(t){return void 0===t?this.getRuleContexts(zU):this.getRuleContext(t,zU)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_jsonColumnList}accept(t){return t.visitJsonColumnList?t.visitJsonColumnList(this):t.visitChildren(this)}},zU=class extends ga{constructor(t,e){super(t,e)}fullColumnName(){return this.getRuleContext(0,Px)}FOR(){return this.getToken(FC.FOR,0)}ORDINALITY(){return this.getToken(FC.ORDINALITY,0)}dataType(){return this.getRuleContext(0,tk)}PATH(){return this.getToken(FC.PATH,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EXISTS(){return this.getToken(FC.EXISTS,0)}jsonOnEmpty(){return this.getRuleContext(0,$U)}jsonOnError(){return this.getRuleContext(0,tm)}NESTED(){return this.getToken(FC.NESTED,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}jsonColumnList(){return this.getRuleContext(0,jU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}get ruleIndex(){return FC.RULE_jsonColumn}accept(t){return t.visitJsonColumn?t.visitJsonColumn(this):t.visitChildren(this)}},$U=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(FC.ON,0)}EMPTY(){return this.getToken(FC.EMPTY,0)}NULL_LITERAL(){return this.getToken(FC.NULL_LITERAL,0)}ERROR(){return this.getToken(FC.ERROR,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}defaultValue(){return this.getRuleContext(0,Mk)}get ruleIndex(){return FC.RULE_jsonOnEmpty}accept(t){return t.visitJsonOnEmpty?t.visitJsonOnEmpty(this):t.visitChildren(this)}},tm=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(FC.ON,0)}ERROR(t){return void 0===t?this.getTokens(FC.ERROR):this.getToken(FC.ERROR,t)}NULL_LITERAL(){return this.getToken(FC.NULL_LITERAL,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}defaultValue(){return this.getRuleContext(0,Mk)}get ruleIndex(){return FC.RULE_jsonOnError}accept(t){return t.visitJsonOnError?t.visitJsonOnError(this):t.visitChildren(this)}},em=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(FC.ALL,0)}DISTINCT(){return this.getToken(FC.DISTINCT,0)}DISTINCTROW(){return this.getToken(FC.DISTINCTROW,0)}HIGH_PRIORITY(){return this.getToken(FC.HIGH_PRIORITY,0)}STRAIGHT_JOIN(){return this.getToken(FC.STRAIGHT_JOIN,0)}SQL_SMALL_RESULT(){return this.getToken(FC.SQL_SMALL_RESULT,0)}SQL_BIG_RESULT(){return this.getToken(FC.SQL_BIG_RESULT,0)}SQL_BUFFER_RESULT(){return this.getToken(FC.SQL_BUFFER_RESULT,0)}SQL_CACHE(){return this.getToken(FC.SQL_CACHE,0)}SQL_NO_CACHE(){return this.getToken(FC.SQL_NO_CACHE,0)}SQL_CALC_FOUND_ROWS(){return this.getToken(FC.SQL_CALC_FOUND_ROWS,0)}get ruleIndex(){return FC.RULE_selectSpec}accept(t){return t.visitSelectSpec?t.visitSelectSpec(this):t.visitChildren(this)}},sm=class extends ga{constructor(t,e){super(t,e)}selectElement(t){return void 0===t?this.getRuleContexts(rm):this.getRuleContext(t,rm)}STAR(){return this.getToken(FC.STAR,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_selectElements}accept(t){return t.visitSelectElements?t.visitSelectElements(this):t.visitChildren(this)}},am=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_selectElementAlias}accept(t){return t.visitSelectElementAlias?t.visitSelectElementAlias(this):t.visitChildren(this)}},rm=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_selectElement}copyFrom(t){super.copyFrom(t)}},im=class extends rm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}expression(){return this.getRuleContext(0,NH)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}VAR_ASSIGN(){return this.getToken(FC.VAR_ASSIGN,0)}selectElementAlias(){return this.getRuleContext(0,am)}accept(t){return t.visitSelectExpressionElement?t.visitSelectExpressionElement(this):t.visitChildren(this)}},cm=class extends rm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}functionCall(){return this.getRuleContext(0,xk)}selectElementAlias(){return this.getRuleContext(0,am)}accept(t){return t.visitSelectFunctionElement?t.visitSelectFunctionElement(this):t.visitChildren(this)}},nm=class extends rm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}fullId(){return this.getRuleContext(0,Sx)}DOT(){return this.getToken(FC.DOT,0)}STAR(){return this.getToken(FC.STAR,0)}accept(t){return t.visitSelectStarElement?t.visitSelectStarElement(this):t.visitChildren(this)}},hm=class extends rm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}fullColumnName(){return this.getRuleContext(0,Px)}selectElementAlias(){return this.getRuleContext(0,am)}accept(t){return t.visitSelectColumnElement?t.visitSelectColumnElement(this):t.visitChildren(this)}},Em=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_selectIntoExpression}copyFrom(t){super.copyFrom(t)}},Tm=class extends Em{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INTO(){return this.getToken(FC.INTO,0)}assignmentField(t){return void 0===t?this.getRuleContexts(SU):this.getRuleContext(t,SU)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitSelectIntoVariables?t.visitSelectIntoVariables(this):t.visitChildren(this)}},om=class extends Em{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INTO(){return this.getToken(FC.INTO,0)}OUTFILE(){return this.getToken(FC.OUTFILE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(){return this.getToken(FC.SET,0)}LINES(){return this.getToken(FC.LINES,0)}charsetName(){return this.getRuleContext(0,vx)}FIELDS(){return this.getToken(FC.FIELDS,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}selectFieldsInto(t){return void 0===t?this.getRuleContexts(Am):this.getRuleContext(t,Am)}selectLinesInto(t){return void 0===t?this.getRuleContexts(Sm):this.getRuleContext(t,Sm)}accept(t){return t.visitSelectIntoTextFile?t.visitSelectIntoTextFile(this):t.visitChildren(this)}},Rm=class extends Em{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INTO(){return this.getToken(FC.INTO,0)}DUMPFILE(){return this.getToken(FC.DUMPFILE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitSelectIntoDumpFile?t.visitSelectIntoDumpFile(this):t.visitChildren(this)}},Am=class extends ga{constructor(t,e){super(t,e)}TERMINATED(){return this.getToken(FC.TERMINATED,0)}BY(){return this.getToken(FC.BY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ENCLOSED(){return this.getToken(FC.ENCLOSED,0)}OPTIONALLY(){return this.getToken(FC.OPTIONALLY,0)}ESCAPED(){return this.getToken(FC.ESCAPED,0)}get ruleIndex(){return FC.RULE_selectFieldsInto}accept(t){return t.visitSelectFieldsInto?t.visitSelectFieldsInto(this):t.visitChildren(this)}},Sm=class extends ga{constructor(t,e){super(t,e)}STARTING(){return this.getToken(FC.STARTING,0)}BY(){return this.getToken(FC.BY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}TERMINATED(){return this.getToken(FC.TERMINATED,0)}get ruleIndex(){return FC.RULE_selectLinesInto}accept(t){return t.visitSelectLinesInto?t.visitSelectLinesInto(this):t.visitChildren(this)}},lm=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(FC.FROM,0)}tableSources(){return this.getRuleContext(0,UU)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_fromClause}accept(t){return t.visitFromClause?t.visitFromClause(this):t.visitChildren(this)}},Om=class extends ga{constructor(t,e){super(t,e)}GROUP(){return this.getToken(FC.GROUP,0)}BY(){return this.getToken(FC.BY,0)}groupByItem(t){return void 0===t?this.getRuleContexts(Nm):this.getRuleContext(t,Nm)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}WITH(){return this.getToken(FC.WITH,0)}ROLLUP(){return this.getToken(FC.ROLLUP,0)}get ruleIndex(){return FC.RULE_groupByClause}accept(t){return t.visitGroupByClause?t.visitGroupByClause(this):t.visitChildren(this)}},Im=class extends ga{constructor(t,e){super(t,e)}HAVING(){return this.getToken(FC.HAVING,0)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_havingClause}accept(t){return t.visitHavingClause?t.visitHavingClause(this):t.visitChildren(this)}},um=class extends ga{constructor(t,e){super(t,e)}WINDOW(){return this.getToken(FC.WINDOW,0)}windowName(t){return void 0===t?this.getRuleContexts(hH):this.getRuleContext(t,hH)}AS(t){return void 0===t?this.getTokens(FC.AS):this.getToken(FC.AS,t)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}windowSpec(t){return void 0===t?this.getRuleContexts(nH):this.getRuleContext(t,nH)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_windowClause}accept(t){return t.visitWindowClause?t.visitWindowClause(this):t.visitChildren(this)}},Nm=class extends ga{constructor(t,e){super(t,e)}expression(){return this.getRuleContext(0,NH)}ASC(){return this.getToken(FC.ASC,0)}DESC(){return this.getToken(FC.DESC,0)}get ruleIndex(){return FC.RULE_groupByItem}accept(t){return t.visitGroupByItem?t.visitGroupByItem(this):t.visitChildren(this)}},Lm=class extends ga{constructor(t,e){super(t,e)}LIMIT(){return this.getToken(FC.LIMIT,0)}OFFSET(){return this.getToken(FC.OFFSET,0)}limitClauseAtom(t){return void 0===t?this.getRuleContexts(Cm):this.getRuleContext(t,Cm)}COMMA(){return this.getToken(FC.COMMA,0)}get ruleIndex(){return FC.RULE_limitClause}accept(t){return t.visitLimitClause?t.visitLimitClause(this):t.visitChildren(this)}},Cm=class extends ga{constructor(t,e){super(t,e)}decimalLiteral(){return this.getRuleContext(0,Qx)}mysqlVariable(){return this.getRuleContext(0,Fx)}simpleId(){return this.getRuleContext(0,Xx)}get ruleIndex(){return FC.RULE_limitClauseAtom}accept(t){return t.visitLimitClauseAtom?t.visitLimitClauseAtom(this):t.visitChildren(this)}},_m=class extends ga{constructor(t,e){super(t,e)}START(){return this.getToken(FC.START,0)}TRANSACTION(){return this.getToken(FC.TRANSACTION,0)}transactionMode(t){return void 0===t?this.getRuleContexts(Hm):this.getRuleContext(t,Hm)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_startTransaction}accept(t){return t.visitStartTransaction?t.visitStartTransaction(this):t.visitChildren(this)}},Pm=class extends ga{constructor(t,e){super(t,e)}BEGIN(){return this.getToken(FC.BEGIN,0)}WORK(){return this.getToken(FC.WORK,0)}get ruleIndex(){return FC.RULE_beginWork}accept(t){return t.visitBeginWork?t.visitBeginWork(this):t.visitChildren(this)}},Mm=class extends ga{constructor(t,e){super(t,e)}COMMIT(){return this.getToken(FC.COMMIT,0)}WORK(){return this.getToken(FC.WORK,0)}AND(){return this.getToken(FC.AND,0)}CHAIN(){return this.getToken(FC.CHAIN,0)}RELEASE(){return this.getToken(FC.RELEASE,0)}NO(t){return void 0===t?this.getTokens(FC.NO):this.getToken(FC.NO,t)}get ruleIndex(){return FC.RULE_commitWork}accept(t){return t.visitCommitWork?t.visitCommitWork(this):t.visitChildren(this)}},dm=class extends ga{constructor(t,e){super(t,e)}ROLLBACK(){return this.getToken(FC.ROLLBACK,0)}WORK(){return this.getToken(FC.WORK,0)}AND(){return this.getToken(FC.AND,0)}CHAIN(){return this.getToken(FC.CHAIN,0)}RELEASE(){return this.getToken(FC.RELEASE,0)}NO(t){return void 0===t?this.getTokens(FC.NO):this.getToken(FC.NO,t)}get ruleIndex(){return FC.RULE_rollbackWork}accept(t){return t.visitRollbackWork?t.visitRollbackWork(this):t.visitChildren(this)}},Um=class extends ga{constructor(t,e){super(t,e)}SAVEPOINT(){return this.getToken(FC.SAVEPOINT,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_savepointStatement}accept(t){return t.visitSavepointStatement?t.visitSavepointStatement(this):t.visitChildren(this)}},mm=class extends ga{constructor(t,e){super(t,e)}ROLLBACK(){return this.getToken(FC.ROLLBACK,0)}TO(){return this.getToken(FC.TO,0)}uid(){return this.getRuleContext(0,Vx)}WORK(){return this.getToken(FC.WORK,0)}SAVEPOINT(){return this.getToken(FC.SAVEPOINT,0)}get ruleIndex(){return FC.RULE_rollbackStatement}accept(t){return t.visitRollbackStatement?t.visitRollbackStatement(this):t.visitChildren(this)}},Dm=class extends ga{constructor(t,e){super(t,e)}RELEASE(){return this.getToken(FC.RELEASE,0)}SAVEPOINT(){return this.getToken(FC.SAVEPOINT,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_releaseStatement}accept(t){return t.visitReleaseStatement?t.visitReleaseStatement(this):t.visitChildren(this)}},pm=class extends ga{constructor(t,e){super(t,e)}LOCK(){return this.getToken(FC.LOCK,0)}lockTableElement(t){return void 0===t?this.getRuleContexts(Gm):this.getRuleContext(t,Gm)}TABLE(){return this.getToken(FC.TABLE,0)}TABLES(){return this.getToken(FC.TABLES,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}waitNowaitClause(){return this.getRuleContext(0,gk)}get ruleIndex(){return FC.RULE_lockTables}accept(t){return t.visitLockTables?t.visitLockTables(this):t.visitChildren(this)}},gm=class extends ga{constructor(t,e){super(t,e)}UNLOCK(){return this.getToken(FC.UNLOCK,0)}TABLES(){return this.getToken(FC.TABLES,0)}get ruleIndex(){return FC.RULE_unlockTables}accept(t){return t.visitUnlockTables?t.visitUnlockTables(this):t.visitChildren(this)}},xm=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(FC.SET,0)}AUTOCOMMIT(){return this.getToken(FC.AUTOCOMMIT,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}get ruleIndex(){return FC.RULE_setAutocommitStatement}accept(t){return t.visitSetAutocommitStatement?t.visitSetAutocommitStatement(this):t.visitChildren(this)}},km=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(FC.SET,0)}TRANSACTION(){return this.getToken(FC.TRANSACTION,0)}transactionOption(t){return void 0===t?this.getRuleContexts(vm):this.getRuleContext(t,vm)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}GLOBAL(){return this.getToken(FC.GLOBAL,0)}SESSION(){return this.getToken(FC.SESSION,0)}get ruleIndex(){return FC.RULE_setTransactionStatement}accept(t){return t.visitSetTransactionStatement?t.visitSetTransactionStatement(this):t.visitChildren(this)}},Hm=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(FC.WITH,0)}CONSISTENT(){return this.getToken(FC.CONSISTENT,0)}SNAPSHOT(){return this.getToken(FC.SNAPSHOT,0)}READ(){return this.getToken(FC.READ,0)}WRITE(){return this.getToken(FC.WRITE,0)}ONLY(){return this.getToken(FC.ONLY,0)}get ruleIndex(){return FC.RULE_transactionMode}accept(t){return t.visitTransactionMode?t.visitTransactionMode(this):t.visitChildren(this)}},Gm=class extends ga{constructor(t,e){super(t,e)}tableName(){return this.getRuleContext(0,lx)}lockAction(){return this.getRuleContext(0,Fm)}uid(){return this.getRuleContext(0,Vx)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_lockTableElement}accept(t){return t.visitLockTableElement?t.visitLockTableElement(this):t.visitChildren(this)}},Fm=class extends ga{constructor(t,e){super(t,e)}READ(){return this.getToken(FC.READ,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}WRITE(){return this.getToken(FC.WRITE,0)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}get ruleIndex(){return FC.RULE_lockAction}accept(t){return t.visitLockAction?t.visitLockAction(this):t.visitChildren(this)}},vm=class extends ga{constructor(t,e){super(t,e)}ISOLATION(){return this.getToken(FC.ISOLATION,0)}LEVEL(){return this.getToken(FC.LEVEL,0)}transactionLevel(){return this.getRuleContext(0,Bm)}READ(){return this.getToken(FC.READ,0)}WRITE(){return this.getToken(FC.WRITE,0)}ONLY(){return this.getToken(FC.ONLY,0)}get ruleIndex(){return FC.RULE_transactionOption}accept(t){return t.visitTransactionOption?t.visitTransactionOption(this):t.visitChildren(this)}},Bm=class extends ga{constructor(t,e){super(t,e)}REPEATABLE(){return this.getToken(FC.REPEATABLE,0)}READ(){return this.getToken(FC.READ,0)}COMMITTED(){return this.getToken(FC.COMMITTED,0)}UNCOMMITTED(){return this.getToken(FC.UNCOMMITTED,0)}SERIALIZABLE(){return this.getToken(FC.SERIALIZABLE,0)}get ruleIndex(){return FC.RULE_transactionLevel}accept(t){return t.visitTransactionLevel?t.visitTransactionLevel(this):t.visitChildren(this)}},ym=class extends ga{constructor(t,e){super(t,e)}CHANGE(){return this.getToken(FC.CHANGE,0)}MASTER(){return this.getToken(FC.MASTER,0)}TO(){return this.getToken(FC.TO,0)}masterOption(t){return void 0===t?this.getRuleContexts(Qm):this.getRuleContext(t,Qm)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}channelOption(){return this.getRuleContext(0,sD)}get ruleIndex(){return FC.RULE_changeMaster}accept(t){return t.visitChangeMaster?t.visitChangeMaster(this):t.visitChildren(this)}},fm=class extends ga{constructor(t,e){super(t,e)}CHANGE(){return this.getToken(FC.CHANGE,0)}REPLICATION(){return this.getToken(FC.REPLICATION,0)}FILTER(){return this.getToken(FC.FILTER,0)}replicationFilter(t){return void 0===t?this.getRuleContexts(aD):this.getRuleContext(t,aD)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_changeReplicationFilter}accept(t){return t.visitChangeReplicationFilter?t.visitChangeReplicationFilter(this):t.visitChildren(this)}},Ym=class extends ga{constructor(t,e){super(t,e)}PURGE(){return this.getToken(FC.PURGE,0)}LOGS(){return this.getToken(FC.LOGS,0)}BINARY(){return this.getToken(FC.BINARY,0)}MASTER(){return this.getToken(FC.MASTER,0)}TO(){return this.getToken(FC.TO,0)}BEFORE(){return this.getToken(FC.BEFORE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_purgeBinaryLogs}accept(t){return t.visitPurgeBinaryLogs?t.visitPurgeBinaryLogs(this):t.visitChildren(this)}},wm=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(FC.RESET,0)}MASTER(){return this.getToken(FC.MASTER,0)}get ruleIndex(){return FC.RULE_resetMaster}accept(t){return t.visitResetMaster?t.visitResetMaster(this):t.visitChildren(this)}},bm=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(FC.RESET,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}ALL(){return this.getToken(FC.ALL,0)}channelOption(){return this.getRuleContext(0,sD)}get ruleIndex(){return FC.RULE_resetSlave}accept(t){return t.visitResetSlave?t.visitResetSlave(this):t.visitChildren(this)}},Wm=class extends ga{constructor(t,e){super(t,e)}START(){return this.getToken(FC.START,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}threadType(t){return void 0===t?this.getRuleContexts(RD):this.getRuleContext(t,RD)}UNTIL(){return this.getToken(FC.UNTIL,0)}untilOption(){return this.getRuleContext(0,AD)}connectionOption(t){return void 0===t?this.getRuleContexts(uD):this.getRuleContext(t,uD)}channelOption(){return this.getRuleContext(0,sD)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_startSlave}accept(t){return t.visitStartSlave?t.visitStartSlave(this):t.visitChildren(this)}},Vm=class extends ga{constructor(t,e){super(t,e)}STOP(){return this.getToken(FC.STOP,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}threadType(t){return void 0===t?this.getRuleContexts(RD):this.getRuleContext(t,RD)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_stopSlave}accept(t){return t.visitStopSlave?t.visitStopSlave(this):t.visitChildren(this)}},Xm=class extends ga{constructor(t,e){super(t,e)}START(){return this.getToken(FC.START,0)}GROUP_REPLICATION(){return this.getToken(FC.GROUP_REPLICATION,0)}get ruleIndex(){return FC.RULE_startGroupReplication}accept(t){return t.visitStartGroupReplication?t.visitStartGroupReplication(this):t.visitChildren(this)}},Km=class extends ga{constructor(t,e){super(t,e)}STOP(){return this.getToken(FC.STOP,0)}GROUP_REPLICATION(){return this.getToken(FC.GROUP_REPLICATION,0)}get ruleIndex(){return FC.RULE_stopGroupReplication}accept(t){return t.visitStopGroupReplication?t.visitStopGroupReplication(this):t.visitChildren(this)}},Qm=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_masterOption}copyFrom(t){super.copyFrom(t)}},Jm=class extends Qm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}stringMasterOption(){return this.getRuleContext(0,$m)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitMasterStringOption?t.visitMasterStringOption(this):t.visitChildren(this)}},Zm=class extends Qm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MASTER_HEARTBEAT_PERIOD(){return this.getToken(FC.MASTER_HEARTBEAT_PERIOD,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}REAL_LITERAL(){return this.getToken(FC.REAL_LITERAL,0)}accept(t){return t.visitMasterRealOption?t.visitMasterRealOption(this):t.visitChildren(this)}},qm=class extends Qm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}boolMasterOption(){return this.getRuleContext(0,eD)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}accept(t){return t.visitMasterBoolOption?t.visitMasterBoolOption(this):t.visitChildren(this)}},jm=class extends Qm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}IGNORE_SERVER_IDS(){return this.getToken(FC.IGNORE_SERVER_IDS,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitMasterUidListOption?t.visitMasterUidListOption(this):t.visitChildren(this)}},zm=class extends Qm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}decimalMasterOption(){return this.getRuleContext(0,tD)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}accept(t){return t.visitMasterDecimalOption?t.visitMasterDecimalOption(this):t.visitChildren(this)}},$m=class extends ga{constructor(t,e){super(t,e)}MASTER_BIND(){return this.getToken(FC.MASTER_BIND,0)}MASTER_HOST(){return this.getToken(FC.MASTER_HOST,0)}MASTER_USER(){return this.getToken(FC.MASTER_USER,0)}MASTER_PASSWORD(){return this.getToken(FC.MASTER_PASSWORD,0)}MASTER_LOG_FILE(){return this.getToken(FC.MASTER_LOG_FILE,0)}RELAY_LOG_FILE(){return this.getToken(FC.RELAY_LOG_FILE,0)}MASTER_SSL_CA(){return this.getToken(FC.MASTER_SSL_CA,0)}MASTER_SSL_CAPATH(){return this.getToken(FC.MASTER_SSL_CAPATH,0)}MASTER_SSL_CERT(){return this.getToken(FC.MASTER_SSL_CERT,0)}MASTER_SSL_CRL(){return this.getToken(FC.MASTER_SSL_CRL,0)}MASTER_SSL_CRLPATH(){return this.getToken(FC.MASTER_SSL_CRLPATH,0)}MASTER_SSL_KEY(){return this.getToken(FC.MASTER_SSL_KEY,0)}MASTER_SSL_CIPHER(){return this.getToken(FC.MASTER_SSL_CIPHER,0)}MASTER_TLS_VERSION(){return this.getToken(FC.MASTER_TLS_VERSION,0)}get ruleIndex(){return FC.RULE_stringMasterOption}accept(t){return t.visitStringMasterOption?t.visitStringMasterOption(this):t.visitChildren(this)}},tD=class extends ga{constructor(t,e){super(t,e)}MASTER_PORT(){return this.getToken(FC.MASTER_PORT,0)}MASTER_CONNECT_RETRY(){return this.getToken(FC.MASTER_CONNECT_RETRY,0)}MASTER_RETRY_COUNT(){return this.getToken(FC.MASTER_RETRY_COUNT,0)}MASTER_DELAY(){return this.getToken(FC.MASTER_DELAY,0)}MASTER_LOG_POS(){return this.getToken(FC.MASTER_LOG_POS,0)}RELAY_LOG_POS(){return this.getToken(FC.RELAY_LOG_POS,0)}get ruleIndex(){return FC.RULE_decimalMasterOption}accept(t){return t.visitDecimalMasterOption?t.visitDecimalMasterOption(this):t.visitChildren(this)}},eD=class extends ga{constructor(t,e){super(t,e)}MASTER_AUTO_POSITION(){return this.getToken(FC.MASTER_AUTO_POSITION,0)}MASTER_SSL(){return this.getToken(FC.MASTER_SSL,0)}MASTER_SSL_VERIFY_SERVER_CERT(){return this.getToken(FC.MASTER_SSL_VERIFY_SERVER_CERT,0)}get ruleIndex(){return FC.RULE_boolMasterOption}accept(t){return t.visitBoolMasterOption?t.visitBoolMasterOption(this):t.visitChildren(this)}},sD=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(FC.FOR,0)}CHANNEL(){return this.getToken(FC.CHANNEL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_channelOption}accept(t){return t.visitChannelOption?t.visitChannelOption(this):t.visitChildren(this)}},aD=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_replicationFilter}copyFrom(t){super.copyFrom(t)}},rD=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_WILD_IGNORE_TABLE(){return this.getToken(FC.REPLICATE_WILD_IGNORE_TABLE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}simpleStrings(){return this.getRuleContext(0,_k)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitWildIgnoreTableReplication?t.visitWildIgnoreTableReplication(this):t.visitChildren(this)}},iD=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_DO_TABLE(){return this.getToken(FC.REPLICATE_DO_TABLE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}tables(){return this.getRuleContext(0,Ik)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitDoTableReplication?t.visitDoTableReplication(this):t.visitChildren(this)}},cD=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_IGNORE_TABLE(){return this.getToken(FC.REPLICATE_IGNORE_TABLE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}tables(){return this.getRuleContext(0,Ik)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitIgnoreTableReplication?t.visitIgnoreTableReplication(this):t.visitChildren(this)}},nD=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_REWRITE_DB(){return this.getToken(FC.REPLICATE_REWRITE_DB,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}tablePair(t){return void 0===t?this.getRuleContexts(oD):this.getRuleContext(t,oD)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitRewriteDbReplication?t.visitRewriteDbReplication(this):t.visitChildren(this)}},hD=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_DO_DB(){return this.getToken(FC.REPLICATE_DO_DB,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitDoDbReplication?t.visitDoDbReplication(this):t.visitChildren(this)}},ED=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_IGNORE_DB(){return this.getToken(FC.REPLICATE_IGNORE_DB,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitIgnoreDbReplication?t.visitIgnoreDbReplication(this):t.visitChildren(this)}},TD=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_WILD_DO_TABLE(){return this.getToken(FC.REPLICATE_WILD_DO_TABLE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}simpleStrings(){return this.getRuleContext(0,_k)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitWildDoTableReplication?t.visitWildDoTableReplication(this):t.visitChildren(this)}},oD=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}COMMA(){return this.getToken(FC.COMMA,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}tableName(t){return void 0===t?this.getRuleContexts(lx):this.getRuleContext(t,lx)}get ruleIndex(){return FC.RULE_tablePair}accept(t){return t.visitTablePair?t.visitTablePair(this):t.visitChildren(this)}},RD=class extends ga{constructor(t,e){super(t,e)}IO_THREAD(){return this.getToken(FC.IO_THREAD,0)}SQL_THREAD(){return this.getToken(FC.SQL_THREAD,0)}get ruleIndex(){return FC.RULE_threadType}accept(t){return t.visitThreadType?t.visitThreadType(this):t.visitChildren(this)}},AD=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_untilOption}copyFrom(t){super.copyFrom(t)}},SD=class extends AD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}gtuidSet(){return this.getRuleContext(0,PD)}SQL_BEFORE_GTIDS(){return this.getToken(FC.SQL_BEFORE_GTIDS,0)}SQL_AFTER_GTIDS(){return this.getToken(FC.SQL_AFTER_GTIDS,0)}accept(t){return t.visitGtidsUntilOption?t.visitGtidsUntilOption(this):t.visitChildren(this)}},lD=class extends AD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SQL_AFTER_MTS_GAPS(){return this.getToken(FC.SQL_AFTER_MTS_GAPS,0)}accept(t){return t.visitSqlGapsUntilOption?t.visitSqlGapsUntilOption(this):t.visitChildren(this)}},OD=class extends AD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MASTER_LOG_FILE(){return this.getToken(FC.MASTER_LOG_FILE,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}COMMA(){return this.getToken(FC.COMMA,0)}MASTER_LOG_POS(){return this.getToken(FC.MASTER_LOG_POS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}accept(t){return t.visitMasterLogUntilOption?t.visitMasterLogUntilOption(this):t.visitChildren(this)}},ID=class extends AD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RELAY_LOG_FILE(){return this.getToken(FC.RELAY_LOG_FILE,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}COMMA(){return this.getToken(FC.COMMA,0)}RELAY_LOG_POS(){return this.getToken(FC.RELAY_LOG_POS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}accept(t){return t.visitRelayLogUntilOption?t.visitRelayLogUntilOption(this):t.visitChildren(this)}},uD=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_connectionOption}copyFrom(t){super.copyFrom(t)}},ND=class extends uD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PLUGIN_DIR(){return this.getToken(FC.PLUGIN_DIR,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitPluginDirConnectionOption?t.visitPluginDirConnectionOption(this):t.visitChildren(this)}},LD=class extends uD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}USER(){return this.getToken(FC.USER,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitUserConnectionOption?t.visitUserConnectionOption(this):t.visitChildren(this)}},CD=class extends uD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DEFAULT_AUTH(){return this.getToken(FC.DEFAULT_AUTH,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitDefaultAuthConnectionOption?t.visitDefaultAuthConnectionOption(this):t.visitChildren(this)}},_D=class extends uD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitPasswordConnectionOption?t.visitPasswordConnectionOption(this):t.visitChildren(this)}},PD=class extends ga{constructor(t,e){super(t,e)}uuidSet(t){return void 0===t?this.getRuleContexts(Yx):this.getRuleContext(t,Yx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_gtuidSet}accept(t){return t.visitGtuidSet?t.visitGtuidSet(this):t.visitChildren(this)}},MD=class extends ga{constructor(t,e){super(t,e)}XA(){return this.getToken(FC.XA,0)}xid(){return this.getRuleContext(0,wx)}START(){return this.getToken(FC.START,0)}BEGIN(){return this.getToken(FC.BEGIN,0)}JOIN(){return this.getToken(FC.JOIN,0)}RESUME(){return this.getToken(FC.RESUME,0)}get ruleIndex(){return FC.RULE_xaStartTransaction}accept(t){return t.visitXaStartTransaction?t.visitXaStartTransaction(this):t.visitChildren(this)}},dD=class extends ga{constructor(t,e){super(t,e)}XA(){return this.getToken(FC.XA,0)}END(){return this.getToken(FC.END,0)}xid(){return this.getRuleContext(0,wx)}SUSPEND(){return this.getToken(FC.SUSPEND,0)}FOR(){return this.getToken(FC.FOR,0)}MIGRATE(){return this.getToken(FC.MIGRATE,0)}get ruleIndex(){return FC.RULE_xaEndTransaction}accept(t){return t.visitXaEndTransaction?t.visitXaEndTransaction(this):t.visitChildren(this)}},UD=class extends ga{constructor(t,e){super(t,e)}XA(){return this.getToken(FC.XA,0)}PREPARE(){return this.getToken(FC.PREPARE,0)}xid(){return this.getRuleContext(0,wx)}get ruleIndex(){return FC.RULE_xaPrepareStatement}accept(t){return t.visitXaPrepareStatement?t.visitXaPrepareStatement(this):t.visitChildren(this)}},mD=class extends ga{constructor(t,e){super(t,e)}XA(){return this.getToken(FC.XA,0)}COMMIT(){return this.getToken(FC.COMMIT,0)}xid(){return this.getRuleContext(0,wx)}ONE(){return this.getToken(FC.ONE,0)}PHASE(){return this.getToken(FC.PHASE,0)}get ruleIndex(){return FC.RULE_xaCommitWork}accept(t){return t.visitXaCommitWork?t.visitXaCommitWork(this):t.visitChildren(this)}},DD=class extends ga{constructor(t,e){super(t,e)}XA(){return this.getToken(FC.XA,0)}ROLLBACK(){return this.getToken(FC.ROLLBACK,0)}xid(){return this.getRuleContext(0,wx)}get ruleIndex(){return FC.RULE_xaRollbackWork}accept(t){return t.visitXaRollbackWork?t.visitXaRollbackWork(this):t.visitChildren(this)}},pD=class extends ga{constructor(t,e){super(t,e)}XA(){return this.getToken(FC.XA,0)}RECOVER(){return this.getToken(FC.RECOVER,0)}CONVERT(){return this.getToken(FC.CONVERT,0)}xid(){return this.getRuleContext(0,wx)}get ruleIndex(){return FC.RULE_xaRecoverWork}accept(t){return t.visitXaRecoverWork?t.visitXaRecoverWork(this):t.visitChildren(this)}},gD=class extends ga{constructor(t,e){super(t,e)}PREPARE(){return this.getToken(FC.PREPARE,0)}uid(){return this.getRuleContext(0,Vx)}FROM(){return this.getToken(FC.FROM,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}get ruleIndex(){return FC.RULE_prepareStatement}accept(t){return t.visitPrepareStatement?t.visitPrepareStatement(this):t.visitChildren(this)}},xD=class extends ga{constructor(t,e){super(t,e)}EXECUTE(){return this.getToken(FC.EXECUTE,0)}uid(){return this.getRuleContext(0,Vx)}USING(){return this.getToken(FC.USING,0)}userVariables(){return this.getRuleContext(0,Pk)}get ruleIndex(){return FC.RULE_executeStatement}accept(t){return t.visitExecuteStatement?t.visitExecuteStatement(this):t.visitChildren(this)}},kD=class extends ga{constructor(t,e){super(t,e)}PREPARE(){return this.getToken(FC.PREPARE,0)}uid(){return this.getRuleContext(0,Vx)}DEALLOCATE(){return this.getToken(FC.DEALLOCATE,0)}DROP(){return this.getToken(FC.DROP,0)}get ruleIndex(){return FC.RULE_deallocatePrepare}accept(t){return t.visitDeallocatePrepare?t.visitDeallocatePrepare(this):t.visitChildren(this)}},HD=class extends ga{constructor(t,e){super(t,e)}blockStatement(){return this.getRuleContext(0,GD)}statement(){return this.getRuleContext(0,yC)}get ruleIndex(){return FC.RULE_routineBody}accept(t){return t.visitRoutineBody?t.visitRoutineBody(this):t.visitChildren(this)}},GD=class extends ga{constructor(t,e){super(t,e)}BEGIN(){return this.getToken(FC.BEGIN,0)}END(){return this.getToken(FC.END,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COLON_SYMB(){return this.getToken(FC.COLON_SYMB,0)}declareVariable(t){return void 0===t?this.getRuleContexts(QD):this.getRuleContext(t,QD)}SEMI(t){return void 0===t?this.getTokens(FC.SEMI):this.getToken(FC.SEMI,t)}declareCondition(t){return void 0===t?this.getRuleContexts(JD):this.getRuleContext(t,JD)}declareCursor(t){return void 0===t?this.getRuleContexts(ZD):this.getRuleContext(t,ZD)}declareHandler(t){return void 0===t?this.getRuleContexts(qD):this.getRuleContext(t,qD)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_blockStatement}accept(t){return t.visitBlockStatement?t.visitBlockStatement(this):t.visitChildren(this)}},FD=class extends ga{constructor(t,e){super(t,e)}CASE(t){return void 0===t?this.getTokens(FC.CASE):this.getToken(FC.CASE,t)}END(){return this.getToken(FC.END,0)}uid(){return this.getRuleContext(0,Vx)}expression(){return this.getRuleContext(0,NH)}caseAlternative(t){return void 0===t?this.getRuleContexts(ip):this.getRuleContext(t,ip)}ELSE(){return this.getToken(FC.ELSE,0)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_caseStatement}accept(t){return t.visitCaseStatement?t.visitCaseStatement(this):t.visitChildren(this)}},vD=class extends ga{constructor(t,e){super(t,e),this._thenStatements=[],this._elseStatements=[]}IF(t){return void 0===t?this.getTokens(FC.IF):this.getToken(FC.IF,t)}expression(){return this.getRuleContext(0,NH)}THEN(){return this.getToken(FC.THEN,0)}END(){return this.getToken(FC.END,0)}elifAlternative(t){return void 0===t?this.getRuleContexts(cp):this.getRuleContext(t,cp)}ELSE(){return this.getToken(FC.ELSE,0)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_ifStatement}accept(t){return t.visitIfStatement?t.visitIfStatement(this):t.visitChildren(this)}},BD=class extends ga{constructor(t,e){super(t,e)}ITERATE(){return this.getToken(FC.ITERATE,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_iterateStatement}accept(t){return t.visitIterateStatement?t.visitIterateStatement(this):t.visitChildren(this)}},yD=class extends ga{constructor(t,e){super(t,e)}LEAVE(){return this.getToken(FC.LEAVE,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_leaveStatement}accept(t){return t.visitLeaveStatement?t.visitLeaveStatement(this):t.visitChildren(this)}},fD=class extends ga{constructor(t,e){super(t,e)}LOOP(t){return void 0===t?this.getTokens(FC.LOOP):this.getToken(FC.LOOP,t)}END(){return this.getToken(FC.END,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COLON_SYMB(){return this.getToken(FC.COLON_SYMB,0)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_loopStatement}accept(t){return t.visitLoopStatement?t.visitLoopStatement(this):t.visitChildren(this)}},YD=class extends ga{constructor(t,e){super(t,e)}REPEAT(t){return void 0===t?this.getTokens(FC.REPEAT):this.getToken(FC.REPEAT,t)}UNTIL(){return this.getToken(FC.UNTIL,0)}expression(){return this.getRuleContext(0,NH)}END(){return this.getToken(FC.END,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COLON_SYMB(){return this.getToken(FC.COLON_SYMB,0)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_repeatStatement}accept(t){return t.visitRepeatStatement?t.visitRepeatStatement(this):t.visitChildren(this)}},wD=class extends ga{constructor(t,e){super(t,e)}RETURN(){return this.getToken(FC.RETURN,0)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_returnStatement}accept(t){return t.visitReturnStatement?t.visitReturnStatement(this):t.visitChildren(this)}},bD=class extends ga{constructor(t,e){super(t,e)}WHILE(t){return void 0===t?this.getTokens(FC.WHILE):this.getToken(FC.WHILE,t)}expression(){return this.getRuleContext(0,NH)}DO(){return this.getToken(FC.DO,0)}END(){return this.getToken(FC.END,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COLON_SYMB(){return this.getToken(FC.COLON_SYMB,0)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_whileStatement}accept(t){return t.visitWhileStatement?t.visitWhileStatement(this):t.visitChildren(this)}},WD=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_cursorStatement}copyFrom(t){super.copyFrom(t)}},VD=class extends WD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CLOSE(){return this.getToken(FC.CLOSE,0)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitCloseCursor?t.visitCloseCursor(this):t.visitChildren(this)}},XD=class extends WD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}OPEN(){return this.getToken(FC.OPEN,0)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitOpenCursor?t.visitOpenCursor(this):t.visitChildren(this)}},KD=class extends WD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FETCH(){return this.getToken(FC.FETCH,0)}uid(){return this.getRuleContext(0,Vx)}INTO(){return this.getToken(FC.INTO,0)}uidList(){return this.getRuleContext(0,lk)}FROM(){return this.getToken(FC.FROM,0)}NEXT(){return this.getToken(FC.NEXT,0)}accept(t){return t.visitFetchCursor?t.visitFetchCursor(this):t.visitChildren(this)}},QD=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(FC.DECLARE,0)}uidList(){return this.getRuleContext(0,lk)}dataType(){return this.getRuleContext(0,tk)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_declareVariable}accept(t){return t.visitDeclareVariable?t.visitDeclareVariable(this):t.visitChildren(this)}},JD=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(FC.DECLARE,0)}uid(){return this.getRuleContext(0,Vx)}CONDITION(){return this.getToken(FC.CONDITION,0)}FOR(){return this.getToken(FC.FOR,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}SQLSTATE(){return this.getToken(FC.SQLSTATE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}VALUE(){return this.getToken(FC.VALUE,0)}get ruleIndex(){return FC.RULE_declareCondition}accept(t){return t.visitDeclareCondition?t.visitDeclareCondition(this):t.visitChildren(this)}},ZD=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(FC.DECLARE,0)}uid(){return this.getRuleContext(0,Vx)}CURSOR(){return this.getToken(FC.CURSOR,0)}FOR(){return this.getToken(FC.FOR,0)}selectStatement(){return this.getRuleContext(0,rU)}get ruleIndex(){return FC.RULE_declareCursor}accept(t){return t.visitDeclareCursor?t.visitDeclareCursor(this):t.visitChildren(this)}},qD=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(FC.DECLARE,0)}HANDLER(){return this.getToken(FC.HANDLER,0)}FOR(){return this.getToken(FC.FOR,0)}handlerConditionValue(t){return void 0===t?this.getRuleContexts(jD):this.getRuleContext(t,jD)}routineBody(){return this.getRuleContext(0,HD)}CONTINUE(){return this.getToken(FC.CONTINUE,0)}EXIT(){return this.getToken(FC.EXIT,0)}UNDO(){return this.getToken(FC.UNDO,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_declareHandler}accept(t){return t.visitDeclareHandler?t.visitDeclareHandler(this):t.visitChildren(this)}},jD=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_handlerConditionValue}copyFrom(t){super.copyFrom(t)}},zD=class extends jD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SQLWARNING(){return this.getToken(FC.SQLWARNING,0)}accept(t){return t.visitHandlerConditionWarning?t.visitHandlerConditionWarning(this):t.visitChildren(this)}},$D=class extends jD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}decimalLiteral(){return this.getRuleContext(0,Qx)}accept(t){return t.visitHandlerConditionCode?t.visitHandlerConditionCode(this):t.visitChildren(this)}},tp=class extends jD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}NOT(){return this.getToken(FC.NOT,0)}FOUND(){return this.getToken(FC.FOUND,0)}accept(t){return t.visitHandlerConditionNotfound?t.visitHandlerConditionNotfound(this):t.visitChildren(this)}},ep=class extends jD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SQLSTATE(){return this.getToken(FC.SQLSTATE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}VALUE(){return this.getToken(FC.VALUE,0)}accept(t){return t.visitHandlerConditionState?t.visitHandlerConditionState(this):t.visitChildren(this)}},sp=class extends jD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SQLEXCEPTION(){return this.getToken(FC.SQLEXCEPTION,0)}accept(t){return t.visitHandlerConditionException?t.visitHandlerConditionException(this):t.visitChildren(this)}},ap=class extends jD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitHandlerConditionName?t.visitHandlerConditionName(this):t.visitChildren(this)}},rp=class extends ga{constructor(t,e){super(t,e)}SEMI(){return this.getToken(FC.SEMI,0)}compoundStatement(){return this.getRuleContext(0,VC)}statement(){return this.getRuleContext(0,yC)}get ruleIndex(){return FC.RULE_procedureSqlStatement}accept(t){return t.visitProcedureSqlStatement?t.visitProcedureSqlStatement(this):t.visitChildren(this)}},ip=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(FC.WHEN,0)}THEN(){return this.getToken(FC.THEN,0)}constant(){return this.getRuleContext(0,$x)}expression(){return this.getRuleContext(0,NH)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_caseAlternative}accept(t){return t.visitCaseAlternative?t.visitCaseAlternative(this):t.visitChildren(this)}},cp=class extends ga{constructor(t,e){super(t,e)}ELSEIF(){return this.getToken(FC.ELSEIF,0)}expression(){return this.getRuleContext(0,NH)}THEN(){return this.getToken(FC.THEN,0)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_elifAlternative}accept(t){return t.visitElifAlternative?t.visitElifAlternative(this):t.visitChildren(this)}},np=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_alterUser}copyFrom(t){super.copyFrom(t)}},hp=class extends np{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}USER(){return this.getToken(FC.USER,0)}newUserAuthOptionList(){return this.getRuleContext(0,dp)}ifExists(){return this.getRuleContext(0,mk)}REQUIRE(){return this.getToken(FC.REQUIRE,0)}WITH(){return this.getToken(FC.WITH,0)}userPasswordOption(t){return void 0===t?this.getRuleContexts(yp):this.getRuleContext(t,yp)}userLockOption(t){return void 0===t?this.getRuleContexts(fp):this.getRuleContext(t,fp)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ATTRIBUTE(){return this.getToken(FC.ATTRIBUTE,0)}tlsOption(t){return void 0===t?this.getRuleContexts(vp):this.getRuleContext(t,vp)}NONE(){return this.getToken(FC.NONE,0)}userResourceOption(t){return void 0===t?this.getRuleContexts(Bp):this.getRuleContext(t,Bp)}AND(t){return void 0===t?this.getTokens(FC.AND):this.getToken(FC.AND,t)}userName(){return this.getRuleContext(0,Gx)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}ROLE(){return this.getToken(FC.ROLE,0)}roleOption(){return this.getRuleContext(0,lp)}accept(t){return t.visitAlterUserMysqlV80?t.visitAlterUserMysqlV80(this):t.visitChildren(this)}},Ep=class extends np{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}USER(){return this.getToken(FC.USER,0)}userSpecification(t){return void 0===t?this.getRuleContexts(Mp):this.getRuleContext(t,Mp)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAlterUserMysqlV56?t.visitAlterUserMysqlV56(this):t.visitChildren(this)}},Tp=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_createUser}copyFrom(t){super.copyFrom(t)}},op=class extends Tp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CREATE(){return this.getToken(FC.CREATE,0)}USER(){return this.getToken(FC.USER,0)}newUserAuthOptionList(){return this.getRuleContext(0,dp)}accept(t){return t.visitCreateUserMysqlV56?t.visitCreateUserMysqlV56(this):t.visitChildren(this)}},Rp=class extends Tp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CREATE(){return this.getToken(FC.CREATE,0)}USER(){return this.getToken(FC.USER,0)}newUserAuthOptionList(){return this.getRuleContext(0,dp)}ifNotExists(){return this.getRuleContext(0,Dk)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}ROLE(){return this.getToken(FC.ROLE,0)}roleOption(){return this.getRuleContext(0,lp)}REQUIRE(){return this.getToken(FC.REQUIRE,0)}WITH(){return this.getToken(FC.WITH,0)}userPasswordOption(t){return void 0===t?this.getRuleContexts(yp):this.getRuleContext(t,yp)}userLockOption(t){return void 0===t?this.getRuleContexts(fp):this.getRuleContext(t,fp)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ATTRIBUTE(){return this.getToken(FC.ATTRIBUTE,0)}tlsOption(t){return void 0===t?this.getRuleContexts(vp):this.getRuleContext(t,vp)}NONE(){return this.getToken(FC.NONE,0)}userResourceOption(t){return void 0===t?this.getRuleContexts(Bp):this.getRuleContext(t,Bp)}AND(t){return void 0===t?this.getTokens(FC.AND):this.getToken(FC.AND,t)}accept(t){return t.visitCreateUserMysqlV80?t.visitCreateUserMysqlV80(this):t.visitChildren(this)}},Ap=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}USER(){return this.getToken(FC.USER,0)}userNameList(){return this.getRuleContext(0,kx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropUser}accept(t){return t.visitDropUser?t.visitDropUser(this):t.visitChildren(this)}},Sp=class extends ga{constructor(t,e){super(t,e)}GRANT(t){return void 0===t?this.getTokens(FC.GRANT):this.getToken(FC.GRANT,t)}privelegeClause(t){return void 0===t?this.getRuleContexts(Yp):this.getRuleContext(t,Yp)}ON(){return this.getToken(FC.ON,0)}privilegeLevel(){return this.getRuleContext(0,bp)}TO(){return this.getToken(FC.TO,0)}userOrRoleNameList(){return this.getRuleContext(0,ux)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}REQUIRE(){return this.getToken(FC.REQUIRE,0)}WITH(t){return void 0===t?this.getTokens(FC.WITH):this.getToken(FC.WITH,t)}AS(){return this.getToken(FC.AS,0)}userName(){return this.getRuleContext(0,Gx)}ROLE(){return this.getToken(FC.ROLE,0)}roleOption(){return this.getRuleContext(0,lp)}TABLE(){return this.getToken(FC.TABLE,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}tlsOption(t){return void 0===t?this.getRuleContexts(vp):this.getRuleContext(t,vp)}NONE(){return this.getToken(FC.NONE,0)}OPTION(t){return void 0===t?this.getTokens(FC.OPTION):this.getToken(FC.OPTION,t)}userResourceOption(t){return void 0===t?this.getRuleContexts(Bp):this.getRuleContext(t,Bp)}AND(t){return void 0===t?this.getTokens(FC.AND):this.getToken(FC.AND,t)}roleNameList(){return this.getRuleContext(0,Cx)}ADMIN(){return this.getToken(FC.ADMIN,0)}get ruleIndex(){return FC.RULE_grantStatement}accept(t){return t.visitGrantStatement?t.visitGrantStatement(this):t.visitChildren(this)}},lp=class extends ga{constructor(t,e){super(t,e)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}NONE(){return this.getToken(FC.NONE,0)}ALL(){return this.getToken(FC.ALL,0)}EXCEPT(){return this.getToken(FC.EXCEPT,0)}roleNameList(){return this.getRuleContext(0,Cx)}get ruleIndex(){return FC.RULE_roleOption}accept(t){return t.visitRoleOption?t.visitRoleOption(this):t.visitChildren(this)}},Op=class extends ga{constructor(t,e){super(t,e),this._toOther=[]}GRANT(t){return void 0===t?this.getTokens(FC.GRANT):this.getToken(FC.GRANT,t)}PROXY(){return this.getToken(FC.PROXY,0)}ON(){return this.getToken(FC.ON,0)}TO(){return this.getToken(FC.TO,0)}userName(t){return void 0===t?this.getRuleContexts(Gx):this.getRuleContext(t,Gx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}WITH(){return this.getToken(FC.WITH,0)}OPTION(){return this.getToken(FC.OPTION,0)}get ruleIndex(){return FC.RULE_grantProxy}accept(t){return t.visitGrantProxy?t.visitGrantProxy(this):t.visitChildren(this)}},Ip=class extends ga{constructor(t,e){super(t,e)}RENAME(){return this.getToken(FC.RENAME,0)}USER(){return this.getToken(FC.USER,0)}renameUserClause(t){return void 0===t?this.getRuleContexts(Zp):this.getRuleContext(t,Zp)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_renameUser}accept(t){return t.visitRenameUser?t.visitRenameUser(this):t.visitChildren(this)}},up=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_revokeStatement}copyFrom(t){super.copyFrom(t)}},Np=class extends up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REVOKE(){return this.getToken(FC.REVOKE,0)}ALL(){return this.getToken(FC.ALL,0)}COMMA(){return this.getToken(FC.COMMA,0)}GRANT(){return this.getToken(FC.GRANT,0)}OPTION(){return this.getToken(FC.OPTION,0)}FROM(){return this.getToken(FC.FROM,0)}userOrRoleNameList(){return this.getRuleContext(0,ux)}PRIVILEGES(){return this.getToken(FC.PRIVILEGES,0)}accept(t){return t.visitShortPrivilegeRevoke?t.visitShortPrivilegeRevoke(this):t.visitChildren(this)}},Lp=class extends up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REVOKE(){return this.getToken(FC.REVOKE,0)}roleNameList(){return this.getRuleContext(0,Cx)}FROM(){return this.getToken(FC.FROM,0)}userOrRoleNameList(t){return void 0===t?this.getRuleContexts(ux):this.getRuleContext(t,ux)}accept(t){return t.visitRoleRevoke?t.visitRoleRevoke(this):t.visitChildren(this)}},Cp=class extends up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REVOKE(){return this.getToken(FC.REVOKE,0)}privelegeClause(t){return void 0===t?this.getRuleContexts(Yp):this.getRuleContext(t,Yp)}ON(){return this.getToken(FC.ON,0)}privilegeLevel(){return this.getRuleContext(0,bp)}FROM(){return this.getToken(FC.FROM,0)}userOrRoleNameList(){return this.getRuleContext(0,ux)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}TABLE(){return this.getToken(FC.TABLE,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}accept(t){return t.visitDetailedPrivilegeRevoke?t.visitDetailedPrivilegeRevoke(this):t.visitChildren(this)}},_p=class extends ga{constructor(t,e){super(t,e),this._fromOther=[]}REVOKE(){return this.getToken(FC.REVOKE,0)}PROXY(){return this.getToken(FC.PROXY,0)}ON(){return this.getToken(FC.ON,0)}FROM(){return this.getToken(FC.FROM,0)}userName(t){return void 0===t?this.getRuleContexts(Gx):this.getRuleContext(t,Gx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_revokeProxy}accept(t){return t.visitRevokeProxy?t.visitRevokeProxy(this):t.visitChildren(this)}},Pp=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(FC.SET,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}passwordFunctionClause(){return this.getRuleContext(0,OH)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}FOR(){return this.getToken(FC.FOR,0)}userName(){return this.getRuleContext(0,Gx)}get ruleIndex(){return FC.RULE_setPasswordStatement}accept(t){return t.visitSetPasswordStatement?t.visitSetPasswordStatement(this):t.visitChildren(this)}},Mp=class extends ga{constructor(t,e){super(t,e)}userName(){return this.getRuleContext(0,Gx)}userPasswordOption(){return this.getRuleContext(0,yp)}get ruleIndex(){return FC.RULE_userSpecification}accept(t){return t.visitUserSpecification?t.visitUserSpecification(this):t.visitChildren(this)}},dp=class extends ga{constructor(t,e){super(t,e)}newUserAuthOption(t){return void 0===t?this.getRuleContexts(Up):this.getRuleContext(t,Up)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_newUserAuthOptionList}accept(t){return t.visitNewUserAuthOptionList?t.visitNewUserAuthOptionList(this):t.visitChildren(this)}},Up=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_newUserAuthOption}copyFrom(t){super.copyFrom(t)}},mp=class extends Up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}newUserName(){return this.getRuleContext(0,Hx)}accept(t){return t.visitSimpleAuthOption?t.visitSimpleAuthOption(this):t.visitChildren(this)}},Dp=class extends Up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}newUserName(){return this.getRuleContext(0,Hx)}IDENTIFIED(){return this.getToken(FC.IDENTIFIED,0)}WITH(){return this.getToken(FC.WITH,0)}authenticationRule(){return this.getRuleContext(0,Hp)}accept(t){return t.visitModuleAuthOption?t.visitModuleAuthOption(this):t.visitChildren(this)}},pp=class extends Up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}newUserName(){return this.getRuleContext(0,Hx)}IDENTIFIED(){return this.getToken(FC.IDENTIFIED,0)}BY(){return this.getToken(FC.BY,0)}RANDOM(){return this.getToken(FC.RANDOM,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}authOptionClause(){return this.getRuleContext(0,kp)}accept(t){return t.visitRandomAuthOption?t.visitRandomAuthOption(this):t.visitChildren(this)}},gp=class extends Up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}newUserName(){return this.getRuleContext(0,Hx)}IDENTIFIED(){return this.getToken(FC.IDENTIFIED,0)}BY(){return this.getToken(FC.BY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}authOptionClause(){return this.getRuleContext(0,kp)}accept(t){return t.visitStringAuthOption?t.visitStringAuthOption(this):t.visitChildren(this)}},xp=class extends Up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}newUserName(){return this.getRuleContext(0,Hx)}IDENTIFIED(){return this.getToken(FC.IDENTIFIED,0)}BY(){return this.getToken(FC.BY,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitHashAuthOption?t.visitHashAuthOption(this):t.visitChildren(this)}},kp=class extends ga{constructor(t,e){super(t,e)}REPLACE(){return this.getToken(FC.REPLACE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}RETAIN(){return this.getToken(FC.RETAIN,0)}CURRENT(){return this.getToken(FC.CURRENT,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}get ruleIndex(){return FC.RULE_authOptionClause}accept(t){return t.visitAuthOptionClause?t.visitAuthOptionClause(this):t.visitChildren(this)}},Hp=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_authenticationRule}copyFrom(t){super.copyFrom(t)}},Gp=class extends Hp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}authPlugin(){return this.getRuleContext(0,Wx)}USING(){return this.getToken(FC.USING,0)}passwordFunctionClause(){return this.getRuleContext(0,OH)}accept(t){return t.visitPasswordModuleOption?t.visitPasswordModuleOption(this):t.visitChildren(this)}},Fp=class extends Hp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}authPlugin(){return this.getRuleContext(0,Wx)}authOptionClause(){return this.getRuleContext(0,kp)}BY(){return this.getToken(FC.BY,0)}USING(){return this.getToken(FC.USING,0)}AS(){return this.getToken(FC.AS,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}RANDOM(){return this.getToken(FC.RANDOM,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}accept(t){return t.visitModule?t.visitModule(this):t.visitChildren(this)}},vp=class extends ga{constructor(t,e){super(t,e)}SSL(){return this.getToken(FC.SSL,0)}X509(){return this.getToken(FC.X509,0)}CIPHER(){return this.getToken(FC.CIPHER,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ISSUER(){return this.getToken(FC.ISSUER,0)}SUBJECT(){return this.getToken(FC.SUBJECT,0)}get ruleIndex(){return FC.RULE_tlsOption}accept(t){return t.visitTlsOption?t.visitTlsOption(this):t.visitChildren(this)}},Bp=class extends ga{constructor(t,e){super(t,e)}MAX_QUERIES_PER_HOUR(){return this.getToken(FC.MAX_QUERIES_PER_HOUR,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}MAX_UPDATES_PER_HOUR(){return this.getToken(FC.MAX_UPDATES_PER_HOUR,0)}MAX_CONNECTIONS_PER_HOUR(){return this.getToken(FC.MAX_CONNECTIONS_PER_HOUR,0)}MAX_USER_CONNECTIONS(){return this.getToken(FC.MAX_USER_CONNECTIONS,0)}get ruleIndex(){return FC.RULE_userResourceOption}accept(t){return t.visitUserResourceOption?t.visitUserResourceOption(this):t.visitChildren(this)}},yp=class extends ga{constructor(t,e){super(t,e)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}EXPIRE(){return this.getToken(FC.EXPIRE,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}DAY(){return this.getToken(FC.DAY,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}NEVER(){return this.getToken(FC.NEVER,0)}INTERVAL(){return this.getToken(FC.INTERVAL,0)}HISTORY(){return this.getToken(FC.HISTORY,0)}REUSE(){return this.getToken(FC.REUSE,0)}REQUIRE(){return this.getToken(FC.REQUIRE,0)}CURRENT(){return this.getToken(FC.CURRENT,0)}OPTIONAL(){return this.getToken(FC.OPTIONAL,0)}FAILED_LOGIN_ATTEMPTS(){return this.getToken(FC.FAILED_LOGIN_ATTEMPTS,0)}PASSWORD_LOCK_TIME(){return this.getToken(FC.PASSWORD_LOCK_TIME,0)}UNBOUNDED(){return this.getToken(FC.UNBOUNDED,0)}get ruleIndex(){return FC.RULE_userPasswordOption}accept(t){return t.visitUserPasswordOption?t.visitUserPasswordOption(this):t.visitChildren(this)}},fp=class extends ga{constructor(t,e){super(t,e)}ACCOUNT(){return this.getToken(FC.ACCOUNT,0)}LOCK(){return this.getToken(FC.LOCK,0)}UNLOCK(){return this.getToken(FC.UNLOCK,0)}get ruleIndex(){return FC.RULE_userLockOption}accept(t){return t.visitUserLockOption?t.visitUserLockOption(this):t.visitChildren(this)}},Yp=class extends ga{constructor(t,e){super(t,e)}privilege(){return this.getRuleContext(0,wp)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}get ruleIndex(){return FC.RULE_privelegeClause}accept(t){return t.visitPrivelegeClause?t.visitPrivelegeClause(this):t.visitChildren(this)}},wp=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(FC.ALL,0)}PRIVILEGES(){return this.getToken(FC.PRIVILEGES,0)}ALTER(){return this.getToken(FC.ALTER,0)}ROUTINE(){return this.getToken(FC.ROUTINE,0)}CREATE(){return this.getToken(FC.CREATE,0)}TEMPORARY(){return this.getToken(FC.TEMPORARY,0)}TABLES(){return this.getToken(FC.TABLES,0)}VIEW(){return this.getToken(FC.VIEW,0)}USER(){return this.getToken(FC.USER,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}ROLE(){return this.getToken(FC.ROLE,0)}DELETE(){return this.getToken(FC.DELETE,0)}DROP(){return this.getToken(FC.DROP,0)}EVENT(){return this.getToken(FC.EVENT,0)}EXECUTE(){return this.getToken(FC.EXECUTE,0)}FILE(){return this.getToken(FC.FILE,0)}GRANT(){return this.getToken(FC.GRANT,0)}OPTION(){return this.getToken(FC.OPTION,0)}INDEX(){return this.getToken(FC.INDEX,0)}INSERT(){return this.getToken(FC.INSERT,0)}LOCK(){return this.getToken(FC.LOCK,0)}PROCESS(){return this.getToken(FC.PROCESS,0)}PROXY(){return this.getToken(FC.PROXY,0)}REFERENCES(){return this.getToken(FC.REFERENCES,0)}RELOAD(){return this.getToken(FC.RELOAD,0)}REPLICATION(){return this.getToken(FC.REPLICATION,0)}CLIENT(){return this.getToken(FC.CLIENT,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}SELECT(){return this.getToken(FC.SELECT,0)}SHOW(){return this.getToken(FC.SHOW,0)}DATABASES(){return this.getToken(FC.DATABASES,0)}SHUTDOWN(){return this.getToken(FC.SHUTDOWN,0)}SUPER(){return this.getToken(FC.SUPER,0)}TRIGGER(){return this.getToken(FC.TRIGGER,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}USAGE(){return this.getToken(FC.USAGE,0)}APPLICATION_PASSWORD_ADMIN(){return this.getToken(FC.APPLICATION_PASSWORD_ADMIN,0)}AUDIT_ABORT_EXEMPT(){return this.getToken(FC.AUDIT_ABORT_EXEMPT,0)}AUDIT_ADMIN(){return this.getToken(FC.AUDIT_ADMIN,0)}AUTHENTICATION_POLICY_ADMIN(){return this.getToken(FC.AUTHENTICATION_POLICY_ADMIN,0)}BACKUP_ADMIN(){return this.getToken(FC.BACKUP_ADMIN,0)}BINLOG_ADMIN(){return this.getToken(FC.BINLOG_ADMIN,0)}BINLOG_ENCRYPTION_ADMIN(){return this.getToken(FC.BINLOG_ENCRYPTION_ADMIN,0)}CLONE_ADMIN(){return this.getToken(FC.CLONE_ADMIN,0)}CONNECTION_ADMIN(){return this.getToken(FC.CONNECTION_ADMIN,0)}ENCRYPTION_KEY_ADMIN(){return this.getToken(FC.ENCRYPTION_KEY_ADMIN,0)}FIREWALL_ADMIN(){return this.getToken(FC.FIREWALL_ADMIN,0)}FIREWALL_EXEMPT(){return this.getToken(FC.FIREWALL_EXEMPT,0)}FIREWALL_USER(){return this.getToken(FC.FIREWALL_USER,0)}FLUSH_OPTIMIZER_COSTS(){return this.getToken(FC.FLUSH_OPTIMIZER_COSTS,0)}FLUSH_STATUS(){return this.getToken(FC.FLUSH_STATUS,0)}FLUSH_TABLES(){return this.getToken(FC.FLUSH_TABLES,0)}FLUSH_USER_RESOURCES(){return this.getToken(FC.FLUSH_USER_RESOURCES,0)}GROUP_REPLICATION_ADMIN(){return this.getToken(FC.GROUP_REPLICATION_ADMIN,0)}INNODB_REDO_LOG_ARCHIVE(){return this.getToken(FC.INNODB_REDO_LOG_ARCHIVE,0)}INNODB_REDO_LOG_ENABLE(){return this.getToken(FC.INNODB_REDO_LOG_ENABLE,0)}NDB_STORED_USER(){return this.getToken(FC.NDB_STORED_USER,0)}PASSWORDLESS_USER_ADMIN(){return this.getToken(FC.PASSWORDLESS_USER_ADMIN,0)}PERSIST_RO_VARIABLES_ADMIN(){return this.getToken(FC.PERSIST_RO_VARIABLES_ADMIN,0)}REPLICATION_APPLIER(){return this.getToken(FC.REPLICATION_APPLIER,0)}REPLICATION_SLAVE_ADMIN(){return this.getToken(FC.REPLICATION_SLAVE_ADMIN,0)}RESOURCE_GROUP_ADMIN(){return this.getToken(FC.RESOURCE_GROUP_ADMIN,0)}RESOURCE_GROUP_USER(){return this.getToken(FC.RESOURCE_GROUP_USER,0)}ROLE_ADMIN(){return this.getToken(FC.ROLE_ADMIN,0)}SERVICE_CONNECTION_ADMIN(){return this.getToken(FC.SERVICE_CONNECTION_ADMIN,0)}SESSION_VARIABLES_ADMIN(){return this.getToken(FC.SESSION_VARIABLES_ADMIN,0)}SET_USER_ID(){return this.getToken(FC.SET_USER_ID,0)}SKIP_QUERY_REWRITE(){return this.getToken(FC.SKIP_QUERY_REWRITE,0)}SHOW_ROUTINE(){return this.getToken(FC.SHOW_ROUTINE,0)}SYSTEM_USER(){return this.getToken(FC.SYSTEM_USER,0)}SYSTEM_VARIABLES_ADMIN(){return this.getToken(FC.SYSTEM_VARIABLES_ADMIN,0)}TABLE_ENCRYPTION_ADMIN(){return this.getToken(FC.TABLE_ENCRYPTION_ADMIN,0)}TP_CONNECTION_ADMIN(){return this.getToken(FC.TP_CONNECTION_ADMIN,0)}VERSION_TOKEN_ADMIN(){return this.getToken(FC.VERSION_TOKEN_ADMIN,0)}XA_RECOVER_ADMIN(){return this.getToken(FC.XA_RECOVER_ADMIN,0)}LOAD(){return this.getToken(FC.LOAD,0)}FROM(){return this.getToken(FC.FROM,0)}S3(){return this.getToken(FC.S3,0)}INTO(){return this.getToken(FC.INTO,0)}INVOKE(){return this.getToken(FC.INVOKE,0)}LAMBDA(){return this.getToken(FC.LAMBDA,0)}get ruleIndex(){return FC.RULE_privilege}accept(t){return t.visitPrivilege?t.visitPrivilege(this):t.visitChildren(this)}},bp=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_privilegeLevel}copyFrom(t){super.copyFrom(t)}},Wp=class extends bp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}uid(){return this.getRuleContext(0,Vx)}DOT(){return this.getToken(FC.DOT,0)}STAR(){return this.getToken(FC.STAR,0)}accept(t){return t.visitDefiniteSchemaPrivLevel?t.visitDefiniteSchemaPrivLevel(this):t.visitChildren(this)}},Vp=class extends bp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}uid(){return this.getRuleContext(0,Vx)}dottedId(){return this.getRuleContext(0,Kx)}accept(t){return t.visitDefiniteFullTablePrivLevel2?t.visitDefiniteFullTablePrivLevel2(this):t.visitChildren(this)}},Xp=class extends bp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}DOT(){return this.getToken(FC.DOT,0)}accept(t){return t.visitDefiniteFullTablePrivLevel?t.visitDefiniteFullTablePrivLevel(this):t.visitChildren(this)}},Kp=class extends bp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STAR(t){return void 0===t?this.getTokens(FC.STAR):this.getToken(FC.STAR,t)}DOT(){return this.getToken(FC.DOT,0)}accept(t){return t.visitGlobalPrivLevel?t.visitGlobalPrivLevel(this):t.visitChildren(this)}},Qp=class extends bp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitDefiniteTablePrivLevel?t.visitDefiniteTablePrivLevel(this):t.visitChildren(this)}},Jp=class extends bp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STAR(){return this.getToken(FC.STAR,0)}accept(t){return t.visitCurrentSchemaPriviLevel?t.visitCurrentSchemaPriviLevel(this):t.visitChildren(this)}},Zp=class extends ga{constructor(t,e){super(t,e)}userName(){return this.getRuleContext(0,Gx)}TO(){return this.getToken(FC.TO,0)}newUserName(){return this.getRuleContext(0,Hx)}get ruleIndex(){return FC.RULE_renameUserClause}accept(t){return t.visitRenameUserClause?t.visitRenameUserClause(this):t.visitChildren(this)}},qp=class extends ga{constructor(t,e){super(t,e)}ANALYZE(){return this.getToken(FC.ANALYZE,0)}tables(){return this.getRuleContext(0,Ik)}TABLE(){return this.getToken(FC.TABLE,0)}TABLES(){return this.getToken(FC.TABLES,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}HISTOGRAM(t){return void 0===t?this.getTokens(FC.HISTOGRAM):this.getToken(FC.HISTOGRAM,t)}ON(t){return void 0===t?this.getTokens(FC.ON):this.getToken(FC.ON,t)}fullColumnName(t){return void 0===t?this.getRuleContexts(Px):this.getRuleContext(t,Px)}DROP(){return this.getToken(FC.DROP,0)}NO_WRITE_TO_BINLOG(){return this.getToken(FC.NO_WRITE_TO_BINLOG,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}WITH(){return this.getToken(FC.WITH,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}BUCKETS(){return this.getToken(FC.BUCKETS,0)}get ruleIndex(){return FC.RULE_analyzeTable}accept(t){return t.visitAnalyzeTable?t.visitAnalyzeTable(this):t.visitChildren(this)}},jp=class extends ga{constructor(t,e){super(t,e)}CHECK(){return this.getToken(FC.CHECK,0)}TABLE(){return this.getToken(FC.TABLE,0)}tables(){return this.getRuleContext(0,Ik)}checkTableOption(t){return void 0===t?this.getRuleContexts(eg):this.getRuleContext(t,eg)}get ruleIndex(){return FC.RULE_checkTable}accept(t){return t.visitCheckTable?t.visitCheckTable(this):t.visitChildren(this)}},zp=class extends ga{constructor(t,e){super(t,e)}CHECKSUM(){return this.getToken(FC.CHECKSUM,0)}TABLE(){return this.getToken(FC.TABLE,0)}tables(){return this.getRuleContext(0,Ik)}QUICK(){return this.getToken(FC.QUICK,0)}EXTENDED(){return this.getToken(FC.EXTENDED,0)}get ruleIndex(){return FC.RULE_checksumTable}accept(t){return t.visitChecksumTable?t.visitChecksumTable(this):t.visitChildren(this)}},$p=class extends ga{constructor(t,e){super(t,e)}OPTIMIZE(){return this.getToken(FC.OPTIMIZE,0)}tables(){return this.getRuleContext(0,Ik)}TABLE(){return this.getToken(FC.TABLE,0)}TABLES(){return this.getToken(FC.TABLES,0)}NO_WRITE_TO_BINLOG(){return this.getToken(FC.NO_WRITE_TO_BINLOG,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}get ruleIndex(){return FC.RULE_optimizeTable}accept(t){return t.visitOptimizeTable?t.visitOptimizeTable(this):t.visitChildren(this)}},tg=class extends ga{constructor(t,e){super(t,e)}REPAIR(){return this.getToken(FC.REPAIR,0)}TABLE(){return this.getToken(FC.TABLE,0)}tables(){return this.getRuleContext(0,Ik)}QUICK(){return this.getToken(FC.QUICK,0)}EXTENDED(){return this.getToken(FC.EXTENDED,0)}USE_FRM(){return this.getToken(FC.USE_FRM,0)}NO_WRITE_TO_BINLOG(){return this.getToken(FC.NO_WRITE_TO_BINLOG,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}get ruleIndex(){return FC.RULE_repairTable}accept(t){return t.visitRepairTable?t.visitRepairTable(this):t.visitChildren(this)}},eg=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(FC.FOR,0)}UPGRADE(){return this.getToken(FC.UPGRADE,0)}QUICK(){return this.getToken(FC.QUICK,0)}FAST(){return this.getToken(FC.FAST,0)}MEDIUM(){return this.getToken(FC.MEDIUM,0)}EXTENDED(){return this.getToken(FC.EXTENDED,0)}CHANGED(){return this.getToken(FC.CHANGED,0)}get ruleIndex(){return FC.RULE_checkTableOption}accept(t){return t.visitCheckTableOption?t.visitCheckTableOption(this):t.visitChildren(this)}},sg=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}uid(){return this.getRuleContext(0,Vx)}RETURNS(){return this.getToken(FC.RETURNS,0)}SONAME(){return this.getToken(FC.SONAME,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}STRING(){return this.getToken(FC.STRING,0)}INTEGER(){return this.getToken(FC.INTEGER,0)}REAL(){return this.getToken(FC.REAL,0)}DECIMAL(){return this.getToken(FC.DECIMAL,0)}AGGREGATE(){return this.getToken(FC.AGGREGATE,0)}ifNotExists(){return this.getRuleContext(0,Dk)}get ruleIndex(){return FC.RULE_createUdfunction}accept(t){return t.visitCreateUdfunction?t.visitCreateUdfunction(this):t.visitChildren(this)}},ag=class extends ga{constructor(t,e){super(t,e)}INSTALL(){return this.getToken(FC.INSTALL,0)}PLUGIN(){return this.getToken(FC.PLUGIN,0)}uid(){return this.getRuleContext(0,Vx)}SONAME(){return this.getToken(FC.SONAME,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_installPlugin}accept(t){return t.visitInstallPlugin?t.visitInstallPlugin(this):t.visitChildren(this)}},rg=class extends ga{constructor(t,e){super(t,e)}UNINSTALL(){return this.getToken(FC.UNINSTALL,0)}PLUGIN(){return this.getToken(FC.PLUGIN,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_uninstallPlugin}accept(t){return t.visitUninstallPlugin?t.visitUninstallPlugin(this):t.visitChildren(this)}},ig=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_setStatement}copyFrom(t){super.copyFrom(t)}},cg=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}setTransactionStatement(){return this.getRuleContext(0,km)}accept(t){return t.visitSetTransaction?t.visitSetTransaction(this):t.visitChildren(this)}},ng=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SET(){return this.getToken(FC.SET,0)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}accept(t){return t.visitSetCharset?t.visitSetCharset(this):t.visitChildren(this)}},hg=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SET(){return this.getToken(FC.SET,0)}NAMES(){return this.getToken(FC.NAMES,0)}charsetName(){return this.getRuleContext(0,vx)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitSetNames?t.visitSetNames(this):t.visitChildren(this)}},Eg=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}setPasswordStatement(){return this.getRuleContext(0,Pp)}accept(t){return t.visitSetPassword?t.visitSetPassword(this):t.visitChildren(this)}},Tg=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}setAutocommitStatement(){return this.getRuleContext(0,xm)}accept(t){return t.visitSetAutocommit?t.visitSetAutocommit(this):t.visitChildren(this)}},og=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SET(){return this.getToken(FC.SET,0)}fullId(t){return void 0===t?this.getRuleContexts(Sx):this.getRuleContext(t,Sx)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}VAR_ASSIGN(t){return void 0===t?this.getTokens(FC.VAR_ASSIGN):this.getToken(FC.VAR_ASSIGN,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitSetNewValueInsideTrigger?t.visitSetNewValueInsideTrigger(this):t.visitChildren(this)}},Rg=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SET(){return this.getToken(FC.SET,0)}variableClause(t){return void 0===t?this.getRuleContexts(Gg):this.getRuleContext(t,Gg)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}VAR_ASSIGN(t){return void 0===t?this.getTokens(FC.VAR_ASSIGN):this.getToken(FC.VAR_ASSIGN,t)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}ON(t){return void 0===t?this.getTokens(FC.ON):this.getToken(FC.ON,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitSetVariable?t.visitSetVariable(this):t.visitChildren(this)}},Ag=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_showStatement}copyFrom(t){super.copyFrom(t)}},Sg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}OPEN(){return this.getToken(FC.OPEN,0)}TABLES(){return this.getToken(FC.TABLES,0)}uid(){return this.getRuleContext(0,Vx)}showFilter(){return this.getRuleContext(0,vg)}FROM(){return this.getToken(FC.FROM,0)}IN(){return this.getToken(FC.IN,0)}accept(t){return t.visitShowOpenTables?t.visitShowOpenTables(this):t.visitChildren(this)}},lg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}showGlobalInfoClause(){return this.getRuleContext(0,Bg)}accept(t){return t.visitShowGlobalInfo?t.visitShowGlobalInfo(this):t.visitChildren(this)}},Og=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}CREATE(){return this.getToken(FC.CREATE,0)}fullId(){return this.getRuleContext(0,Sx)}EVENT(){return this.getToken(FC.EVENT,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}accept(t){return t.visitShowCreateFullIdObject?t.visitShowCreateFullIdObject(this):t.visitChildren(this)}},Ig=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}CREATE(){return this.getToken(FC.CREATE,0)}USER(){return this.getToken(FC.USER,0)}userName(){return this.getRuleContext(0,Gx)}accept(t){return t.visitShowCreateUser?t.visitShowCreateUser(this):t.visitChildren(this)}},ug=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}ERRORS(){return this.getToken(FC.ERRORS,0)}WARNINGS(){return this.getToken(FC.WARNINGS,0)}LIMIT(){return this.getToken(FC.LIMIT,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}COMMA(){return this.getToken(FC.COMMA,0)}accept(t){return t.visitShowErrors?t.visitShowErrors(this):t.visitChildren(this)}},Ng=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}COUNT(){return this.getToken(FC.COUNT,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}STAR(){return this.getToken(FC.STAR,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}ERRORS(){return this.getToken(FC.ERRORS,0)}WARNINGS(){return this.getToken(FC.WARNINGS,0)}accept(t){return t.visitShowCountErrors?t.visitShowCountErrors(this):t.visitChildren(this)}},Lg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}showCommonEntity(){return this.getRuleContext(0,Fg)}showFilter(){return this.getRuleContext(0,vg)}accept(t){return t.visitShowObjectFilter?t.visitShowObjectFilter(this):t.visitChildren(this)}},Cg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}CREATE(){return this.getToken(FC.CREATE,0)}databaseName(){return this.getRuleContext(0,Mx)}DATABASE(){return this.getToken(FC.DATABASE,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}ifNotExists(){return this.getRuleContext(0,Dk)}accept(t){return t.visitShowCreateDb?t.visitShowCreateDb(this):t.visitChildren(this)}},_g=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}STATUS(){return this.getToken(FC.STATUS,0)}MUTEX(){return this.getToken(FC.MUTEX,0)}accept(t){return t.visitShowEngine?t.visitShowEngine(this):t.visitChildren(this)}},Pg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}showSchemaEntity(){return this.getRuleContext(0,yg)}uid(){return this.getRuleContext(0,Vx)}showFilter(){return this.getRuleContext(0,vg)}FROM(){return this.getToken(FC.FROM,0)}IN(){return this.getToken(FC.IN,0)}accept(t){return t.visitShowSchemaFilter?t.visitShowSchemaFilter(this):t.visitChildren(this)}},Mg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}tableName(){return this.getRuleContext(0,lx)}INDEX(){return this.getToken(FC.INDEX,0)}INDEXES(){return this.getToken(FC.INDEXES,0)}KEYS(){return this.getToken(FC.KEYS,0)}FROM(t){return void 0===t?this.getTokens(FC.FROM):this.getToken(FC.FROM,t)}IN(t){return void 0===t?this.getTokens(FC.IN):this.getToken(FC.IN,t)}uid(){return this.getRuleContext(0,Vx)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}accept(t){return t.visitShowIndexes?t.visitShowIndexes(this):t.visitChildren(this)}},dg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}EVENTS(){return this.getToken(FC.EVENTS,0)}BINLOG(){return this.getToken(FC.BINLOG,0)}RELAYLOG(){return this.getToken(FC.RELAYLOG,0)}IN(){return this.getToken(FC.IN,0)}FROM(){return this.getToken(FC.FROM,0)}LIMIT(){return this.getToken(FC.LIMIT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}COMMA(){return this.getToken(FC.COMMA,0)}accept(t){return t.visitShowLogEvents?t.visitShowLogEvents(this):t.visitChildren(this)}},Ug=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}CREATE(){return this.getToken(FC.CREATE,0)}TRIGGER(){return this.getToken(FC.TRIGGER,0)}triggerName(){return this.getRuleContext(0,mx)}accept(t){return t.visitShowCreateTrigger?t.visitShowCreateTrigger(this):t.visitChildren(this)}},mg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}LOGS(){return this.getToken(FC.LOGS,0)}BINARY(){return this.getToken(FC.BINARY,0)}MASTER(){return this.getToken(FC.MASTER,0)}accept(t){return t.visitShowMasterLogs?t.visitShowMasterLogs(this):t.visitChildren(this)}},Dg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}GRANTS(){return this.getToken(FC.GRANTS,0)}FOR(){return this.getToken(FC.FOR,0)}userName(){return this.getRuleContext(0,Gx)}accept(t){return t.visitShowGrants?t.visitShowGrants(this):t.visitChildren(this)}},pg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}STATUS(){return this.getToken(FC.STATUS,0)}FOR(){return this.getToken(FC.FOR,0)}CHANNEL(){return this.getToken(FC.CHANNEL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitShowSlaveStatus?t.visitShowSlaveStatus(this):t.visitChildren(this)}},gg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}CODE(){return this.getToken(FC.CODE,0)}fullId(){return this.getRuleContext(0,Sx)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}accept(t){return t.visitShowRoutine?t.visitShowRoutine(this):t.visitChildren(this)}},xg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}PROFILE(){return this.getToken(FC.PROFILE,0)}showProfileType(t){return void 0===t?this.getRuleContexts(fg):this.getRuleContext(t,fg)}LIMIT(){return this.getToken(FC.LIMIT,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}FOR(){return this.getToken(FC.FOR,0)}QUERY(){return this.getToken(FC.QUERY,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}accept(t){return t.visitShowProfile?t.visitShowProfile(this):t.visitChildren(this)}},kg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}tableName(){return this.getRuleContext(0,lx)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}FIELDS(){return this.getToken(FC.FIELDS,0)}FROM(t){return void 0===t?this.getTokens(FC.FROM):this.getToken(FC.FROM,t)}IN(t){return void 0===t?this.getTokens(FC.IN):this.getToken(FC.IN,t)}FULL(){return this.getToken(FC.FULL,0)}uid(){return this.getRuleContext(0,Vx)}showFilter(){return this.getRuleContext(0,vg)}accept(t){return t.visitShowColumns?t.visitShowColumns(this):t.visitChildren(this)}},Hg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}CREATE(){return this.getToken(FC.CREATE,0)}tableName(){return this.getRuleContext(0,lx)}TABLE(){return this.getToken(FC.TABLE,0)}VIEW(){return this.getToken(FC.VIEW,0)}accept(t){return t.visitShowCreateTableOrView?t.visitShowCreateTableOrView(this):t.visitChildren(this)}},Gg=class extends ga{constructor(t,e){super(t,e)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}GLOBAL_ID(){return this.getToken(FC.GLOBAL_ID,0)}uid(){return this.getRuleContext(0,Vx)}GLOBAL(){return this.getToken(FC.GLOBAL,0)}SESSION(){return this.getToken(FC.SESSION,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}AT_SIGN(t){return void 0===t?this.getTokens(FC.AT_SIGN):this.getToken(FC.AT_SIGN,t)}get ruleIndex(){return FC.RULE_variableClause}accept(t){return t.visitVariableClause?t.visitVariableClause(this):t.visitChildren(this)}},Fg=class extends ga{constructor(t,e){super(t,e)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(){return this.getToken(FC.SET,0)}COLLATION(){return this.getToken(FC.COLLATION,0)}DATABASES(){return this.getToken(FC.DATABASES,0)}SCHEMAS(){return this.getToken(FC.SCHEMAS,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}STATUS(){return this.getToken(FC.STATUS,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}VARIABLES(){return this.getToken(FC.VARIABLES,0)}GLOBAL(){return this.getToken(FC.GLOBAL,0)}SESSION(){return this.getToken(FC.SESSION,0)}get ruleIndex(){return FC.RULE_showCommonEntity}accept(t){return t.visitShowCommonEntity?t.visitShowCommonEntity(this):t.visitChildren(this)}},vg=class extends ga{constructor(t,e){super(t,e)}LIKE(){return this.getToken(FC.LIKE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_showFilter}accept(t){return t.visitShowFilter?t.visitShowFilter(this):t.visitChildren(this)}},Bg=class extends ga{constructor(t,e){super(t,e)}ENGINES(){return this.getToken(FC.ENGINES,0)}STORAGE(){return this.getToken(FC.STORAGE,0)}MASTER(){return this.getToken(FC.MASTER,0)}STATUS(){return this.getToken(FC.STATUS,0)}PLUGINS(){return this.getToken(FC.PLUGINS,0)}PRIVILEGES(){return this.getToken(FC.PRIVILEGES,0)}PROCESSLIST(){return this.getToken(FC.PROCESSLIST,0)}FULL(){return this.getToken(FC.FULL,0)}PROFILES(){return this.getToken(FC.PROFILES,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}HOSTS(){return this.getToken(FC.HOSTS,0)}AUTHORS(){return this.getToken(FC.AUTHORS,0)}CONTRIBUTORS(){return this.getToken(FC.CONTRIBUTORS,0)}get ruleIndex(){return FC.RULE_showGlobalInfoClause}accept(t){return t.visitShowGlobalInfoClause?t.visitShowGlobalInfoClause(this):t.visitChildren(this)}},yg=class extends ga{constructor(t,e){super(t,e)}EVENTS(){return this.getToken(FC.EVENTS,0)}TABLE(){return this.getToken(FC.TABLE,0)}STATUS(){return this.getToken(FC.STATUS,0)}TABLES(){return this.getToken(FC.TABLES,0)}FULL(){return this.getToken(FC.FULL,0)}TRIGGERS(){return this.getToken(FC.TRIGGERS,0)}get ruleIndex(){return FC.RULE_showSchemaEntity}accept(t){return t.visitShowSchemaEntity?t.visitShowSchemaEntity(this):t.visitChildren(this)}},fg=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(FC.ALL,0)}BLOCK(){return this.getToken(FC.BLOCK,0)}IO(){return this.getToken(FC.IO,0)}CONTEXT(){return this.getToken(FC.CONTEXT,0)}SWITCHES(){return this.getToken(FC.SWITCHES,0)}CPU(){return this.getToken(FC.CPU,0)}IPC(){return this.getToken(FC.IPC,0)}MEMORY(){return this.getToken(FC.MEMORY,0)}PAGE(){return this.getToken(FC.PAGE,0)}FAULTS(){return this.getToken(FC.FAULTS,0)}SOURCE(){return this.getToken(FC.SOURCE,0)}SWAPS(){return this.getToken(FC.SWAPS,0)}get ruleIndex(){return FC.RULE_showProfileType}accept(t){return t.visitShowProfileType?t.visitShowProfileType(this):t.visitChildren(this)}},Yg=class extends ga{constructor(t,e){super(t,e)}BINLOG(){return this.getToken(FC.BINLOG,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_binlogStatement}accept(t){return t.visitBinlogStatement?t.visitBinlogStatement(this):t.visitChildren(this)}},wg=class extends ga{constructor(t,e){super(t,e)}CACHE(){return this.getToken(FC.CACHE,0)}INDEX(){return this.getToken(FC.INDEX,0)}tableIndexes(t){return void 0===t?this.getRuleContexts(Qg):this.getRuleContext(t,Qg)}IN(){return this.getToken(FC.IN,0)}uid(){return this.getRuleContext(0,Vx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}get ruleIndex(){return FC.RULE_cacheIndexStatement}accept(t){return t.visitCacheIndexStatement?t.visitCacheIndexStatement(this):t.visitChildren(this)}},bg=class extends ga{constructor(t,e){super(t,e)}FLUSH(){return this.getToken(FC.FLUSH,0)}flushOption(t){return void 0===t?this.getRuleContexts(Jg):this.getRuleContext(t,Jg)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}NO_WRITE_TO_BINLOG(){return this.getToken(FC.NO_WRITE_TO_BINLOG,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}get ruleIndex(){return FC.RULE_flushStatement}accept(t){return t.visitFlushStatement?t.visitFlushStatement(this):t.visitChildren(this)}},Wg=class extends ga{constructor(t,e){super(t,e)}KILL(){return this.getToken(FC.KILL,0)}expression(){return this.getRuleContext(0,NH)}CONNECTION(){return this.getToken(FC.CONNECTION,0)}QUERY(){return this.getToken(FC.QUERY,0)}get ruleIndex(){return FC.RULE_killStatement}accept(t){return t.visitKillStatement?t.visitKillStatement(this):t.visitChildren(this)}},Vg=class extends ga{constructor(t,e){super(t,e)}LOAD(){return this.getToken(FC.LOAD,0)}INDEX(){return this.getToken(FC.INDEX,0)}INTO(){return this.getToken(FC.INTO,0)}CACHE(){return this.getToken(FC.CACHE,0)}loadedTableIndexes(t){return void 0===t?this.getRuleContexts($g):this.getRuleContext(t,$g)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_loadIndexIntoCache}accept(t){return t.visitLoadIndexIntoCache?t.visitLoadIndexIntoCache(this):t.visitChildren(this)}},Xg=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(FC.RESET,0)}QUERY(){return this.getToken(FC.QUERY,0)}CACHE(){return this.getToken(FC.CACHE,0)}get ruleIndex(){return FC.RULE_resetStatement}accept(t){return t.visitResetStatement?t.visitResetStatement(this):t.visitChildren(this)}},Kg=class extends ga{constructor(t,e){super(t,e)}SHUTDOWN(){return this.getToken(FC.SHUTDOWN,0)}get ruleIndex(){return FC.RULE_shutdownStatement}accept(t){return t.visitShutdownStatement?t.visitShutdownStatement(this):t.visitChildren(this)}},Qg=class extends ga{constructor(t,e){super(t,e)}tableName(){return this.getRuleContext(0,lx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}indexNameList(){return this.getRuleContext(0,Dx)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}get ruleIndex(){return FC.RULE_tableIndexes}accept(t){return t.visitTableIndexes?t.visitTableIndexes(this):t.visitChildren(this)}},Jg=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_flushOption}copyFrom(t){super.copyFrom(t)}},Zg=class extends Jg{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TABLE(){return this.getToken(FC.TABLE,0)}TABLES(){return this.getToken(FC.TABLES,0)}tables(){return this.getRuleContext(0,Ik)}flushTableOption(){return this.getRuleContext(0,zg)}accept(t){return t.visitTableFlushOption?t.visitTableFlushOption(this):t.visitChildren(this)}},qg=class extends Jg{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RELAY(){return this.getToken(FC.RELAY,0)}LOGS(){return this.getToken(FC.LOGS,0)}channelOption(){return this.getRuleContext(0,sD)}accept(t){return t.visitChannelFlushOption?t.visitChannelFlushOption(this):t.visitChildren(this)}},jg=class extends Jg{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DES_KEY_FILE(){return this.getToken(FC.DES_KEY_FILE,0)}HOSTS(){return this.getToken(FC.HOSTS,0)}LOGS(){return this.getToken(FC.LOGS,0)}OPTIMIZER_COSTS(){return this.getToken(FC.OPTIMIZER_COSTS,0)}PRIVILEGES(){return this.getToken(FC.PRIVILEGES,0)}QUERY(){return this.getToken(FC.QUERY,0)}CACHE(){return this.getToken(FC.CACHE,0)}STATUS(){return this.getToken(FC.STATUS,0)}USER_RESOURCES(){return this.getToken(FC.USER_RESOURCES,0)}TABLES(){return this.getToken(FC.TABLES,0)}WITH(){return this.getToken(FC.WITH,0)}READ(){return this.getToken(FC.READ,0)}LOCK(){return this.getToken(FC.LOCK,0)}BINARY(){return this.getToken(FC.BINARY,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}ERROR(){return this.getToken(FC.ERROR,0)}GENERAL(){return this.getToken(FC.GENERAL,0)}RELAY(){return this.getToken(FC.RELAY,0)}SLOW(){return this.getToken(FC.SLOW,0)}accept(t){return t.visitSimpleFlushOption?t.visitSimpleFlushOption(this):t.visitChildren(this)}},zg=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(FC.WITH,0)}READ(){return this.getToken(FC.READ,0)}LOCK(){return this.getToken(FC.LOCK,0)}FOR(){return this.getToken(FC.FOR,0)}EXPORT(){return this.getToken(FC.EXPORT,0)}get ruleIndex(){return FC.RULE_flushTableOption}accept(t){return t.visitFlushTableOption?t.visitFlushTableOption(this):t.visitChildren(this)}},$g=class extends ga{constructor(t,e){super(t,e)}tableName(){return this.getRuleContext(0,lx)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}indexNameList(){return this.getRuleContext(0,Dx)}IGNORE(){return this.getToken(FC.IGNORE,0)}LEAVES(){return this.getToken(FC.LEAVES,0)}ALL(){return this.getToken(FC.ALL,0)}uidList(){return this.getRuleContext(0,lk)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}get ruleIndex(){return FC.RULE_loadedTableIndexes}accept(t){return t.visitLoadedTableIndexes?t.visitLoadedTableIndexes(this):t.visitChildren(this)}},tx=class extends ga{constructor(t,e){super(t,e)}tableName(){return this.getRuleContext(0,lx)}EXPLAIN(){return this.getToken(FC.EXPLAIN,0)}DESCRIBE(){return this.getToken(FC.DESCRIBE,0)}DESC(){return this.getToken(FC.DESC,0)}uid(){return this.getRuleContext(0,Vx)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_simpleDescribeStatement}accept(t){return t.visitSimpleDescribeStatement?t.visitSimpleDescribeStatement(this):t.visitChildren(this)}},ex=class extends ga{constructor(t,e){super(t,e)}describeObjectClause(){return this.getRuleContext(0,ox)}EXPLAIN(){return this.getToken(FC.EXPLAIN,0)}DESCRIBE(){return this.getToken(FC.DESCRIBE,0)}DESC(){return this.getToken(FC.DESC,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}EXTENDED(){return this.getToken(FC.EXTENDED,0)}PARTITIONS(){return this.getToken(FC.PARTITIONS,0)}FORMAT(){return this.getToken(FC.FORMAT,0)}TRADITIONAL(){return this.getToken(FC.TRADITIONAL,0)}JSON(){return this.getToken(FC.JSON,0)}get ruleIndex(){return FC.RULE_fullDescribeStatement}accept(t){return t.visitFullDescribeStatement?t.visitFullDescribeStatement(this):t.visitChildren(this)}},sx=class extends ga{constructor(t,e){super(t,e)}HELP(){return this.getToken(FC.HELP,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_helpStatement}accept(t){return t.visitHelpStatement?t.visitHelpStatement(this):t.visitChildren(this)}},ax=class extends ga{constructor(t,e){super(t,e)}USE(){return this.getToken(FC.USE,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_useStatement}accept(t){return t.visitUseStatement?t.visitUseStatement(this):t.visitChildren(this)}},rx=class extends ga{constructor(t,e){super(t,e)}SIGNAL(){return this.getToken(FC.SIGNAL,0)}ID(){return this.getToken(FC.ID,0)}REVERSE_QUOTE_ID(){return this.getToken(FC.REVERSE_QUOTE_ID,0)}SET(){return this.getToken(FC.SET,0)}signalConditionInformation(t){return void 0===t?this.getRuleContexts(cx):this.getRuleContext(t,cx)}SQLSTATE(){return this.getToken(FC.SQLSTATE,0)}stringLiteral(){return this.getRuleContext(0,Zx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}VALUE(){return this.getToken(FC.VALUE,0)}get ruleIndex(){return FC.RULE_signalStatement}accept(t){return t.visitSignalStatement?t.visitSignalStatement(this):t.visitChildren(this)}},ix=class extends ga{constructor(t,e){super(t,e)}RESIGNAL(){return this.getToken(FC.RESIGNAL,0)}ID(){return this.getToken(FC.ID,0)}REVERSE_QUOTE_ID(){return this.getToken(FC.REVERSE_QUOTE_ID,0)}SET(){return this.getToken(FC.SET,0)}signalConditionInformation(t){return void 0===t?this.getRuleContexts(cx):this.getRuleContext(t,cx)}SQLSTATE(){return this.getToken(FC.SQLSTATE,0)}stringLiteral(){return this.getRuleContext(0,Zx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}VALUE(){return this.getToken(FC.VALUE,0)}get ruleIndex(){return FC.RULE_resignalStatement}accept(t){return t.visitResignalStatement?t.visitResignalStatement(this):t.visitChildren(this)}},cx=class extends ga{constructor(t,e){super(t,e)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}CLASS_ORIGIN(){return this.getToken(FC.CLASS_ORIGIN,0)}SUBCLASS_ORIGIN(){return this.getToken(FC.SUBCLASS_ORIGIN,0)}MESSAGE_TEXT(){return this.getToken(FC.MESSAGE_TEXT,0)}MYSQL_ERRNO(){return this.getToken(FC.MYSQL_ERRNO,0)}CONSTRAINT_CATALOG(){return this.getToken(FC.CONSTRAINT_CATALOG,0)}CONSTRAINT_SCHEMA(){return this.getToken(FC.CONSTRAINT_SCHEMA,0)}CONSTRAINT_NAME(){return this.getToken(FC.CONSTRAINT_NAME,0)}CATALOG_NAME(){return this.getToken(FC.CATALOG_NAME,0)}SCHEMA_NAME(){return this.getToken(FC.SCHEMA_NAME,0)}TABLE_NAME(){return this.getToken(FC.TABLE_NAME,0)}COLUMN_NAME(){return this.getToken(FC.COLUMN_NAME,0)}CURSOR_NAME(){return this.getToken(FC.CURSOR_NAME,0)}stringLiteral(){return this.getRuleContext(0,Zx)}DECIMAL_LITERAL(){return this.getToken(FC.DECIMAL_LITERAL,0)}mysqlVariable(){return this.getRuleContext(0,Fx)}simpleId(){return this.getRuleContext(0,Xx)}get ruleIndex(){return FC.RULE_signalConditionInformation}accept(t){return t.visitSignalConditionInformation?t.visitSignalConditionInformation(this):t.visitChildren(this)}},nx=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(FC.WITH,0)}commonTableExpressions(t){return void 0===t?this.getRuleContexts(E_):this.getRuleContext(t,E_)}RECURSIVE(){return this.getToken(FC.RECURSIVE,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_withStatement}accept(t){return t.visitWithStatement?t.visitWithStatement(this):t.visitChildren(this)}},hx=class extends ga{constructor(t,e){super(t,e)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}orderByClause(){return this.getRuleContext(0,MU)}limitClause(){return this.getRuleContext(0,Lm)}get ruleIndex(){return FC.RULE_tableStatement}accept(t){return t.visitTableStatement?t.visitTableStatement(this):t.visitChildren(this)}},Ex=class extends ga{constructor(t,e){super(t,e)}GET(){return this.getToken(FC.GET,0)}DIAGNOSTICS(){return this.getToken(FC.DIAGNOSTICS,0)}CURRENT(){return this.getToken(FC.CURRENT,0)}STACKED(){return this.getToken(FC.STACKED,0)}variableClause(t){return void 0===t?this.getRuleContexts(Gg):this.getRuleContext(t,Gg)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}CONDITION(){return this.getToken(FC.CONDITION,0)}diagnosticsConditionInformationName(t){return void 0===t?this.getRuleContexts(Tx):this.getRuleContext(t,Tx)}NUMBER(t){return void 0===t?this.getTokens(FC.NUMBER):this.getToken(FC.NUMBER,t)}ROW_COUNT(t){return void 0===t?this.getTokens(FC.ROW_COUNT):this.getToken(FC.ROW_COUNT,t)}decimalLiteral(){return this.getRuleContext(0,Qx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_diagnosticsStatement}accept(t){return t.visitDiagnosticsStatement?t.visitDiagnosticsStatement(this):t.visitChildren(this)}},Tx=class extends ga{constructor(t,e){super(t,e)}CLASS_ORIGIN(){return this.getToken(FC.CLASS_ORIGIN,0)}SUBCLASS_ORIGIN(){return this.getToken(FC.SUBCLASS_ORIGIN,0)}RETURNED_SQLSTATE(){return this.getToken(FC.RETURNED_SQLSTATE,0)}MESSAGE_TEXT(){return this.getToken(FC.MESSAGE_TEXT,0)}MYSQL_ERRNO(){return this.getToken(FC.MYSQL_ERRNO,0)}CONSTRAINT_CATALOG(){return this.getToken(FC.CONSTRAINT_CATALOG,0)}CONSTRAINT_SCHEMA(){return this.getToken(FC.CONSTRAINT_SCHEMA,0)}CONSTRAINT_NAME(){return this.getToken(FC.CONSTRAINT_NAME,0)}CATALOG_NAME(){return this.getToken(FC.CATALOG_NAME,0)}SCHEMA_NAME(){return this.getToken(FC.SCHEMA_NAME,0)}TABLE_NAME(){return this.getToken(FC.TABLE_NAME,0)}COLUMN_NAME(){return this.getToken(FC.COLUMN_NAME,0)}CURSOR_NAME(){return this.getToken(FC.CURSOR_NAME,0)}get ruleIndex(){return FC.RULE_diagnosticsConditionInformationName}accept(t){return t.visitDiagnosticsConditionInformationName?t.visitDiagnosticsConditionInformationName(this):t.visitChildren(this)}},ox=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_describeObjectClause}copyFrom(t){super.copyFrom(t)}},Rx=class extends ox{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}selectStatement(){return this.getRuleContext(0,rU)}deleteStatement(){return this.getRuleContext(0,jd)}insertStatement(){return this.getRuleContext(0,tU)}replaceStatement(){return this.getRuleContext(0,aU)}updateStatement(){return this.getRuleContext(0,TU)}accept(t){return t.visitDescribeStatements?t.visitDescribeStatements(this):t.visitChildren(this)}},Ax=class extends ox{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FOR(){return this.getToken(FC.FOR,0)}CONNECTION(){return this.getToken(FC.CONNECTION,0)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitDescribeConnection?t.visitDescribeConnection(this):t.visitChildren(this)}},Sx=class extends ga{constructor(t,e){super(t,e)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}DOT_ID(){return this.getToken(FC.DOT_ID,0)}DOT(){return this.getToken(FC.DOT,0)}get ruleIndex(){return FC.RULE_fullId}accept(t){return t.visitFullId?t.visitFullId(this):t.visitChildren(this)}},lx=class extends ga{constructor(t,e){super(t,e)}fullId(){return this.getRuleContext(0,Sx)}get ruleIndex(){return FC.RULE_tableName}accept(t){return t.visitTableName?t.visitTableName(this):t.visitChildren(this)}},Ox=class extends ga{constructor(t,e){super(t,e)}tableName(t){return void 0===t?this.getRuleContexts(lx):this.getRuleContext(t,lx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_tableNames}accept(t){return t.visitTableNames?t.visitTableNames(this):t.visitChildren(this)}},Ix=class extends ga{constructor(t,e){super(t,e)}userName(){return this.getRuleContext(0,Gx)}roleName(){return this.getRuleContext(0,_x)}get ruleIndex(){return FC.RULE_userOrRoleName}accept(t){return t.visitUserOrRoleName?t.visitUserOrRoleName(this):t.visitChildren(this)}},ux=class extends ga{constructor(t,e){super(t,e)}userOrRoleName(t){return void 0===t?this.getRuleContexts(Ix):this.getRuleContext(t,Ix)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_userOrRoleNameList}accept(t){return t.visitUserOrRoleNameList?t.visitUserOrRoleNameList(this):t.visitChildren(this)}},Nx=class extends ga{constructor(t,e){super(t,e)}newRoleName(t){return void 0===t?this.getRuleContexts(Lx):this.getRuleContext(t,Lx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_newRoleNameList}accept(t){return t.visitNewRoleNameList?t.visitNewRoleNameList(this):t.visitChildren(this)}},Lx=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_newRoleName}accept(t){return t.visitNewRoleName?t.visitNewRoleName(this):t.visitChildren(this)}},Cx=class extends ga{constructor(t,e){super(t,e)}roleName(t){return void 0===t?this.getRuleContexts(_x):this.getRuleContext(t,_x)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_roleNameList}accept(t){return t.visitRoleNameList?t.visitRoleNameList(this):t.visitChildren(this)}},_x=class extends ga{constructor(t,e){super(t,e)}newRoleName(){return this.getRuleContext(0,Lx)}get ruleIndex(){return FC.RULE_roleName}accept(t){return t.visitRoleName?t.visitRoleName(this):t.visitChildren(this)}},Px=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}dottedId(t){return void 0===t?this.getRuleContexts(Kx):this.getRuleContext(t,Kx)}get ruleIndex(){return FC.RULE_fullColumnName}accept(t){return t.visitFullColumnName?t.visitFullColumnName(this):t.visitChildren(this)}},Mx=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_databaseName}accept(t){return t.visitDatabaseName?t.visitDatabaseName(this):t.visitChildren(this)}},dx=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_indexName}accept(t){return t.visitIndexName?t.visitIndexName(this):t.visitChildren(this)}},Ux=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_constraintName}accept(t){return t.visitConstraintName?t.visitConstraintName(this):t.visitChildren(this)}},mx=class extends ga{constructor(t,e){super(t,e)}fullId(){return this.getRuleContext(0,Sx)}get ruleIndex(){return FC.RULE_triggerName}accept(t){return t.visitTriggerName?t.visitTriggerName(this):t.visitChildren(this)}},Dx=class extends ga{constructor(t,e){super(t,e)}indexName(t){return void 0===t?this.getRuleContexts(dx):this.getRuleContext(t,dx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_indexNameList}accept(t){return t.visitIndexNameList?t.visitIndexNameList(this):t.visitChildren(this)}},px=class extends ga{constructor(t,e){super(t,e)}expression(){return this.getRuleContext(0,NH)}uid(){return this.getRuleContext(0,Vx)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}ASC(){return this.getToken(FC.ASC,0)}DESC(){return this.getToken(FC.DESC,0)}get ruleIndex(){return FC.RULE_indexColumnName}accept(t){return t.visitIndexColumnName?t.visitIndexColumnName(this):t.visitChildren(this)}},gx=class extends ga{constructor(t,e){super(t,e)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ID(){return this.getToken(FC.ID,0)}ADMIN(){return this.getToken(FC.ADMIN,0)}keywordsCanBeId(){return this.getRuleContext(0,TG)}get ruleIndex(){return FC.RULE_simpleUserName}accept(t){return t.visitSimpleUserName?t.visitSimpleUserName(this):t.visitChildren(this)}},xx=class extends ga{constructor(t,e){super(t,e)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}HOST_IP_ADDRESS(){return this.getToken(FC.HOST_IP_ADDRESS,0)}AT_SIGN(){return this.getToken(FC.AT_SIGN,0)}get ruleIndex(){return FC.RULE_hostName}accept(t){return t.visitHostName?t.visitHostName(this):t.visitChildren(this)}},kx=class extends ga{constructor(t,e){super(t,e)}userName(t){return void 0===t?this.getRuleContexts(Gx):this.getRuleContext(t,Gx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_userNameList}accept(t){return t.visitUserNameList?t.visitUserNameList(this):t.visitChildren(this)}},Hx=class extends ga{constructor(t,e){super(t,e)}simpleUserName(){return this.getRuleContext(0,gx)}hostName(){return this.getRuleContext(0,xx)}currentUserExpression(){return this.getRuleContext(0,l_)}get ruleIndex(){return FC.RULE_newUserName}accept(t){return t.visitNewUserName?t.visitNewUserName(this):t.visitChildren(this)}},Gx=class extends ga{constructor(t,e){super(t,e)}newUserName(){return this.getRuleContext(0,Hx)}get ruleIndex(){return FC.RULE_userName}accept(t){return t.visitUserName?t.visitUserName(this):t.visitChildren(this)}},Fx=class extends ga{constructor(t,e){super(t,e)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}GLOBAL_ID(){return this.getToken(FC.GLOBAL_ID,0)}get ruleIndex(){return FC.RULE_mysqlVariable}accept(t){return t.visitMysqlVariable?t.visitMysqlVariable(this):t.visitChildren(this)}},vx=class extends ga{constructor(t,e){super(t,e)}BINARY(){return this.getToken(FC.BINARY,0)}charsetNameBase(){return this.getRuleContext(0,iG)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}CHARSET_REVERSE_QOUTE_STRING(){return this.getToken(FC.CHARSET_REVERSE_QOUTE_STRING,0)}get ruleIndex(){return FC.RULE_charsetName}accept(t){return t.visitCharsetName?t.visitCharsetName(this):t.visitChildren(this)}},Bx=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_collationName}accept(t){return t.visitCollationName?t.visitCollationName(this):t.visitChildren(this)}},yx=class extends ga{constructor(t,e){super(t,e)}engineNameBase(){return this.getRuleContext(0,fx)}ID(){return this.getToken(FC.ID,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_engineName}accept(t){return t.visitEngineName?t.visitEngineName(this):t.visitChildren(this)}},fx=class extends ga{constructor(t,e){super(t,e)}ARCHIVE(){return this.getToken(FC.ARCHIVE,0)}BLACKHOLE(){return this.getToken(FC.BLACKHOLE,0)}CONNECT(){return this.getToken(FC.CONNECT,0)}CSV(){return this.getToken(FC.CSV,0)}FEDERATED(){return this.getToken(FC.FEDERATED,0)}INNODB(){return this.getToken(FC.INNODB,0)}MEMORY(){return this.getToken(FC.MEMORY,0)}MRG_MYISAM(){return this.getToken(FC.MRG_MYISAM,0)}MYISAM(){return this.getToken(FC.MYISAM,0)}NDB(){return this.getToken(FC.NDB,0)}NDBCLUSTER(){return this.getToken(FC.NDBCLUSTER,0)}PERFORMANCE_SCHEMA(){return this.getToken(FC.PERFORMANCE_SCHEMA,0)}TOKUDB(){return this.getToken(FC.TOKUDB,0)}get ruleIndex(){return FC.RULE_engineNameBase}accept(t){return t.visitEngineNameBase?t.visitEngineNameBase(this):t.visitChildren(this)}},Yx=class extends ga{constructor(t,e){super(t,e)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}MINUS(t){return void 0===t?this.getTokens(FC.MINUS):this.getToken(FC.MINUS,t)}COLON_SYMB(t){return void 0===t?this.getTokens(FC.COLON_SYMB):this.getToken(FC.COLON_SYMB,t)}get ruleIndex(){return FC.RULE_uuidSet}accept(t){return t.visitUuidSet?t.visitUuidSet(this):t.visitChildren(this)}},wx=class extends ga{constructor(t,e){super(t,e)}xuidStringId(t){return void 0===t?this.getRuleContexts(bx):this.getRuleContext(t,bx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}decimalLiteral(){return this.getRuleContext(0,Qx)}get ruleIndex(){return FC.RULE_xid}accept(t){return t.visitXid?t.visitXid(this):t.visitChildren(this)}},bx=class extends ga{constructor(t,e){super(t,e)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}BIT_STRING(){return this.getToken(FC.BIT_STRING,0)}HEXADECIMAL_LITERAL(t){return void 0===t?this.getTokens(FC.HEXADECIMAL_LITERAL):this.getToken(FC.HEXADECIMAL_LITERAL,t)}get ruleIndex(){return FC.RULE_xuidStringId}accept(t){return t.visitXuidStringId?t.visitXuidStringId(this):t.visitChildren(this)}},Wx=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_authPlugin}accept(t){return t.visitAuthPlugin?t.visitAuthPlugin(this):t.visitChildren(this)}},Vx=class extends ga{constructor(t,e){super(t,e)}simpleId(){return this.getRuleContext(0,Xx)}CHARSET_REVERSE_QOUTE_STRING(){return this.getToken(FC.CHARSET_REVERSE_QOUTE_STRING,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_uid}accept(t){return t.visitUid?t.visitUid(this):t.visitChildren(this)}},Xx=class extends ga{constructor(t,e){super(t,e)}ID(){return this.getToken(FC.ID,0)}charsetNameBase(){return this.getRuleContext(0,iG)}transactionLevelBase(){return this.getRuleContext(0,cG)}engineNameBase(){return this.getRuleContext(0,fx)}privilegesBase(){return this.getRuleContext(0,nG)}intervalTypeBase(){return this.getRuleContext(0,hG)}dataTypeBase(){return this.getRuleContext(0,EG)}keywordsCanBeId(){return this.getRuleContext(0,TG)}scalarFunctionName(){return this.getRuleContext(0,lH)}get ruleIndex(){return FC.RULE_simpleId}accept(t){return t.visitSimpleId?t.visitSimpleId(this):t.visitChildren(this)}},Kx=class extends ga{constructor(t,e){super(t,e)}DOT_ID(){return this.getToken(FC.DOT_ID,0)}DOT(){return this.getToken(FC.DOT,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_dottedId}accept(t){return t.visitDottedId?t.visitDottedId(this):t.visitChildren(this)}},Qx=class extends ga{constructor(t,e){super(t,e)}DECIMAL_LITERAL(){return this.getToken(FC.DECIMAL_LITERAL,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}TWO_DECIMAL(){return this.getToken(FC.TWO_DECIMAL,0)}REAL_LITERAL(){return this.getToken(FC.REAL_LITERAL,0)}get ruleIndex(){return FC.RULE_decimalLiteral}accept(t){return t.visitDecimalLiteral?t.visitDecimalLiteral(this):t.visitChildren(this)}},Jx=class extends ga{constructor(t,e){super(t,e)}FILESIZE_LITERAL(){return this.getToken(FC.FILESIZE_LITERAL,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}get ruleIndex(){return FC.RULE_fileSizeLiteral}accept(t){return t.visitFileSizeLiteral?t.visitFileSizeLiteral(this):t.visitChildren(this)}},Zx=class extends ga{constructor(t,e){super(t,e)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}START_NATIONAL_STRING_LITERAL(){return this.getToken(FC.START_NATIONAL_STRING_LITERAL,0)}STRING_CHARSET_NAME(){return this.getToken(FC.STRING_CHARSET_NAME,0)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}get ruleIndex(){return FC.RULE_stringLiteral}accept(t){return t.visitStringLiteral?t.visitStringLiteral(this):t.visitChildren(this)}},qx=class extends ga{constructor(t,e){super(t,e)}TRUE(){return this.getToken(FC.TRUE,0)}FALSE(){return this.getToken(FC.FALSE,0)}get ruleIndex(){return FC.RULE_booleanLiteral}accept(t){return t.visitBooleanLiteral?t.visitBooleanLiteral(this):t.visitChildren(this)}},jx=class extends ga{constructor(t,e){super(t,e)}HEXADECIMAL_LITERAL(){return this.getToken(FC.HEXADECIMAL_LITERAL,0)}STRING_CHARSET_NAME(){return this.getToken(FC.STRING_CHARSET_NAME,0)}get ruleIndex(){return FC.RULE_hexadecimalLiteral}accept(t){return t.visitHexadecimalLiteral?t.visitHexadecimalLiteral(this):t.visitChildren(this)}},zx=class extends ga{constructor(t,e){super(t,e)}NULL_LITERAL(){return this.getToken(FC.NULL_LITERAL,0)}NULL_SPEC_LITERAL(){return this.getToken(FC.NULL_SPEC_LITERAL,0)}NOT(){return this.getToken(FC.NOT,0)}get ruleIndex(){return FC.RULE_nullNotnull}accept(t){return t.visitNullNotnull?t.visitNullNotnull(this):t.visitChildren(this)}},$x=class extends ga{constructor(t,e){super(t,e)}stringLiteral(){return this.getRuleContext(0,Zx)}decimalLiteral(){return this.getRuleContext(0,Qx)}MINUS(){return this.getToken(FC.MINUS,0)}hexadecimalLiteral(){return this.getRuleContext(0,jx)}booleanLiteral(){return this.getRuleContext(0,qx)}REAL_LITERAL(){return this.getToken(FC.REAL_LITERAL,0)}BIT_STRING(){return this.getToken(FC.BIT_STRING,0)}NULL_LITERAL(){return this.getToken(FC.NULL_LITERAL,0)}NULL_SPEC_LITERAL(){return this.getToken(FC.NULL_SPEC_LITERAL,0)}NOT(){return this.getToken(FC.NOT,0)}get ruleIndex(){return FC.RULE_constant}accept(t){return t.visitConstant?t.visitConstant(this):t.visitChildren(this)}},tk=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_dataType}copyFrom(t){super.copyFrom(t)}},ek=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}GEOMETRYCOLLECTION(){return this.getToken(FC.GEOMETRYCOLLECTION,0)}GEOMCOLLECTION(){return this.getToken(FC.GEOMCOLLECTION,0)}LINESTRING(){return this.getToken(FC.LINESTRING,0)}MULTILINESTRING(){return this.getToken(FC.MULTILINESTRING,0)}MULTIPOINT(){return this.getToken(FC.MULTIPOINT,0)}MULTIPOLYGON(){return this.getToken(FC.MULTIPOLYGON,0)}POINT(){return this.getToken(FC.POINT,0)}POLYGON(){return this.getToken(FC.POLYGON,0)}JSON(){return this.getToken(FC.JSON,0)}GEOMETRY(){return this.getToken(FC.GEOMETRY,0)}SRID(){return this.getToken(FC.SRID,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}accept(t){return t.visitSpatialDataType?t.visitSpatialDataType(this):t.visitChildren(this)}},sk=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LONG(){return this.getToken(FC.LONG,0)}VARBINARY(){return this.getToken(FC.VARBINARY,0)}accept(t){return t.visitLongVarbinaryDataType?t.visitLongVarbinaryDataType(this):t.visitChildren(this)}},ak=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}collectionOptions(){return this.getRuleContext(0,Tk)}ENUM(){return this.getToken(FC.ENUM,0)}SET(){return this.getToken(FC.SET,0)}BINARY(){return this.getToken(FC.BINARY,0)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}accept(t){return t.visitCollectionDataType?t.visitCollectionDataType(this):t.visitChildren(this)}},rk=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}NATIONAL(){return this.getToken(FC.NATIONAL,0)}VARYING(){return this.getToken(FC.VARYING,0)}CHAR(){return this.getToken(FC.CHAR,0)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}lengthOneDimension(){return this.getRuleContext(0,Rk)}BINARY(){return this.getToken(FC.BINARY,0)}accept(t){return t.visitNationalVaryingStringDataType?t.visitNationalVaryingStringDataType(this):t.visitChildren(this)}},ik=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TINYINT(){return this.getToken(FC.TINYINT,0)}SMALLINT(){return this.getToken(FC.SMALLINT,0)}MEDIUMINT(){return this.getToken(FC.MEDIUMINT,0)}INT(){return this.getToken(FC.INT,0)}INTEGER(){return this.getToken(FC.INTEGER,0)}BIGINT(){return this.getToken(FC.BIGINT,0)}MIDDLEINT(){return this.getToken(FC.MIDDLEINT,0)}INT1(){return this.getToken(FC.INT1,0)}INT2(){return this.getToken(FC.INT2,0)}INT3(){return this.getToken(FC.INT3,0)}INT4(){return this.getToken(FC.INT4,0)}INT8(){return this.getToken(FC.INT8,0)}lengthOneDimension(){return this.getRuleContext(0,Rk)}SIGNED(t){return void 0===t?this.getTokens(FC.SIGNED):this.getToken(FC.SIGNED,t)}UNSIGNED(t){return void 0===t?this.getTokens(FC.UNSIGNED):this.getToken(FC.UNSIGNED,t)}ZEROFILL(t){return void 0===t?this.getTokens(FC.ZEROFILL):this.getToken(FC.ZEROFILL,t)}REAL(){return this.getToken(FC.REAL,0)}lengthTwoDimension(){return this.getRuleContext(0,Ak)}DOUBLE(){return this.getToken(FC.DOUBLE,0)}PRECISION(){return this.getToken(FC.PRECISION,0)}DECIMAL(){return this.getToken(FC.DECIMAL,0)}DEC(){return this.getToken(FC.DEC,0)}FIXED(){return this.getToken(FC.FIXED,0)}NUMERIC(){return this.getToken(FC.NUMERIC,0)}FLOAT(){return this.getToken(FC.FLOAT,0)}FLOAT4(){return this.getToken(FC.FLOAT4,0)}FLOAT8(){return this.getToken(FC.FLOAT8,0)}lengthTwoOptionalDimension(){return this.getRuleContext(0,Sk)}BIT(){return this.getToken(FC.BIT,0)}TIME(){return this.getToken(FC.TIME,0)}TIMESTAMP(){return this.getToken(FC.TIMESTAMP,0)}DATETIME(){return this.getToken(FC.DATETIME,0)}BINARY(){return this.getToken(FC.BINARY,0)}VARBINARY(){return this.getToken(FC.VARBINARY,0)}BLOB(){return this.getToken(FC.BLOB,0)}YEAR(){return this.getToken(FC.YEAR,0)}accept(t){return t.visitDimensionDataType?t.visitDimensionDataType(this):t.visitChildren(this)}},ck=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHAR(){return this.getToken(FC.CHAR,0)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}VARCHAR(){return this.getToken(FC.VARCHAR,0)}TINYTEXT(){return this.getToken(FC.TINYTEXT,0)}TEXT(){return this.getToken(FC.TEXT,0)}MEDIUMTEXT(){return this.getToken(FC.MEDIUMTEXT,0)}LONGTEXT(){return this.getToken(FC.LONGTEXT,0)}NCHAR(){return this.getToken(FC.NCHAR,0)}NVARCHAR(){return this.getToken(FC.NVARCHAR,0)}LONG(){return this.getToken(FC.LONG,0)}VARYING(){return this.getToken(FC.VARYING,0)}lengthOneDimension(){return this.getRuleContext(0,Rk)}BINARY(t){return void 0===t?this.getTokens(FC.BINARY):this.getToken(FC.BINARY,t)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitStringDataType?t.visitStringDataType(this):t.visitChildren(this)}},nk=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LONG(){return this.getToken(FC.LONG,0)}VARCHAR(){return this.getToken(FC.VARCHAR,0)}BINARY(){return this.getToken(FC.BINARY,0)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitLongVarcharDataType?t.visitLongVarcharDataType(this):t.visitChildren(this)}},hk=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}NATIONAL(){return this.getToken(FC.NATIONAL,0)}VARCHAR(){return this.getToken(FC.VARCHAR,0)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}CHAR(){return this.getToken(FC.CHAR,0)}lengthOneDimension(){return this.getRuleContext(0,Rk)}BINARY(){return this.getToken(FC.BINARY,0)}NCHAR(){return this.getToken(FC.NCHAR,0)}accept(t){return t.visitNationalStringDataType?t.visitNationalStringDataType(this):t.visitChildren(this)}},Ek=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DATE(){return this.getToken(FC.DATE,0)}TINYBLOB(){return this.getToken(FC.TINYBLOB,0)}MEDIUMBLOB(){return this.getToken(FC.MEDIUMBLOB,0)}LONGBLOB(){return this.getToken(FC.LONGBLOB,0)}BOOL(){return this.getToken(FC.BOOL,0)}BOOLEAN(){return this.getToken(FC.BOOLEAN,0)}SERIAL(){return this.getToken(FC.SERIAL,0)}accept(t){return t.visitSimpleDataType?t.visitSimpleDataType(this):t.visitChildren(this)}},Tk=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_collectionOptions}accept(t){return t.visitCollectionOptions?t.visitCollectionOptions(this):t.visitChildren(this)}},ok=class extends ga{constructor(t,e){super(t,e)}CHAR(){return this.getToken(FC.CHAR,0)}SIGNED(){return this.getToken(FC.SIGNED,0)}UNSIGNED(){return this.getToken(FC.UNSIGNED,0)}ARRAY(){return this.getToken(FC.ARRAY,0)}BINARY(){return this.getToken(FC.BINARY,0)}NCHAR(){return this.getToken(FC.NCHAR,0)}FLOAT(){return this.getToken(FC.FLOAT,0)}DATE(){return this.getToken(FC.DATE,0)}DATETIME(){return this.getToken(FC.DATETIME,0)}TIME(){return this.getToken(FC.TIME,0)}YEAR(){return this.getToken(FC.YEAR,0)}JSON(){return this.getToken(FC.JSON,0)}INT(){return this.getToken(FC.INT,0)}INTEGER(){return this.getToken(FC.INTEGER,0)}DOUBLE(){return this.getToken(FC.DOUBLE,0)}DECIMAL(){return this.getToken(FC.DECIMAL,0)}DEC(){return this.getToken(FC.DEC,0)}lengthOneDimension(){return this.getRuleContext(0,Rk)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}lengthTwoOptionalDimension(){return this.getRuleContext(0,Sk)}get ruleIndex(){return FC.RULE_convertedDataType}accept(t){return t.visitConvertedDataType?t.visitConvertedDataType(this):t.visitChildren(this)}},Rk=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}get ruleIndex(){return FC.RULE_lengthOneDimension}accept(t){return t.visitLengthOneDimension?t.visitLengthOneDimension(this):t.visitChildren(this)}},Ak=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}COMMA(){return this.getToken(FC.COMMA,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}get ruleIndex(){return FC.RULE_lengthTwoDimension}accept(t){return t.visitLengthTwoDimension?t.visitLengthTwoDimension(this):t.visitChildren(this)}},Sk=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(){return this.getToken(FC.COMMA,0)}get ruleIndex(){return FC.RULE_lengthTwoOptionalDimension}accept(t){return t.visitLengthTwoOptionalDimension?t.visitLengthTwoOptionalDimension(this):t.visitChildren(this)}},lk=class extends ga{constructor(t,e){super(t,e)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_uidList}accept(t){return t.visitUidList?t.visitUidList(this):t.visitChildren(this)}},Ok=class extends ga{constructor(t,e){super(t,e)}fullColumnName(t){return void 0===t?this.getRuleContexts(Px):this.getRuleContext(t,Px)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_fullColumnNameList}accept(t){return t.visitFullColumnNameList?t.visitFullColumnNameList(this):t.visitChildren(this)}},Ik=class extends ga{constructor(t,e){super(t,e)}tableName(t){return void 0===t?this.getRuleContexts(lx):this.getRuleContext(t,lx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_tables}accept(t){return t.visitTables?t.visitTables(this):t.visitChildren(this)}},uk=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}indexColumnName(t){return void 0===t?this.getRuleContexts(px):this.getRuleContext(t,px)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_indexColumnNames}accept(t){return t.visitIndexColumnNames?t.visitIndexColumnNames(this):t.visitChildren(this)}},Nk=class extends ga{constructor(t,e){super(t,e)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_expressions}accept(t){return t.visitExpressions?t.visitExpressions(this):t.visitChildren(this)}},Lk=class extends ga{constructor(t,e){super(t,e)}expressionOrDefault(t){return void 0===t?this.getRuleContexts(Uk):this.getRuleContext(t,Uk)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_expressionsWithDefaults}accept(t){return t.visitExpressionsWithDefaults?t.visitExpressionsWithDefaults(this):t.visitChildren(this)}},Ck=class extends ga{constructor(t,e){super(t,e)}constant(t){return void 0===t?this.getRuleContexts($x):this.getRuleContext(t,$x)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_constants}accept(t){return t.visitConstants?t.visitConstants(this):t.visitChildren(this)}},_k=class extends ga{constructor(t,e){super(t,e)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_simpleStrings}accept(t){return t.visitSimpleStrings?t.visitSimpleStrings(this):t.visitChildren(this)}},Pk=class extends ga{constructor(t,e){super(t,e)}LOCAL_ID(t){return void 0===t?this.getTokens(FC.LOCAL_ID):this.getToken(FC.LOCAL_ID,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_userVariables}accept(t){return t.visitUserVariables?t.visitUserVariables(this):t.visitChildren(this)}},Mk=class extends ga{constructor(t,e){super(t,e)}NULL_LITERAL(){return this.getToken(FC.NULL_LITERAL,0)}CAST(){return this.getToken(FC.CAST,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}AS(){return this.getToken(FC.AS,0)}convertedDataType(){return this.getRuleContext(0,ok)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}constant(){return this.getRuleContext(0,$x)}unaryOperator(){return this.getRuleContext(0,zH)}currentTimestamp(t){return void 0===t?this.getRuleContexts(dk):this.getRuleContext(t,dk)}ON(){return this.getToken(FC.ON,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}fullId(){return this.getRuleContext(0,Sx)}get ruleIndex(){return FC.RULE_defaultValue}accept(t){return t.visitDefaultValue?t.visitDefaultValue(this):t.visitChildren(this)}},dk=class extends ga{constructor(t,e){super(t,e)}NOW(){return this.getToken(FC.NOW,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}CURRENT_TIMESTAMP(){return this.getToken(FC.CURRENT_TIMESTAMP,0)}LOCALTIME(){return this.getToken(FC.LOCALTIME,0)}LOCALTIMESTAMP(){return this.getToken(FC.LOCALTIMESTAMP,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}get ruleIndex(){return FC.RULE_currentTimestamp}accept(t){return t.visitCurrentTimestamp?t.visitCurrentTimestamp(this):t.visitChildren(this)}},Uk=class extends ga{constructor(t,e){super(t,e)}expression(){return this.getRuleContext(0,NH)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}get ruleIndex(){return FC.RULE_expressionOrDefault}accept(t){return t.visitExpressionOrDefault?t.visitExpressionOrDefault(this):t.visitChildren(this)}},mk=class extends ga{constructor(t,e){super(t,e)}IF(){return this.getToken(FC.IF,0)}EXISTS(){return this.getToken(FC.EXISTS,0)}get ruleIndex(){return FC.RULE_ifExists}accept(t){return t.visitIfExists?t.visitIfExists(this):t.visitChildren(this)}},Dk=class extends ga{constructor(t,e){super(t,e)}IF(){return this.getToken(FC.IF,0)}NOT(){return this.getToken(FC.NOT,0)}EXISTS(){return this.getToken(FC.EXISTS,0)}get ruleIndex(){return FC.RULE_ifNotExists}accept(t){return t.visitIfNotExists?t.visitIfNotExists(this):t.visitChildren(this)}},pk=class extends ga{constructor(t,e){super(t,e)}OR(){return this.getToken(FC.OR,0)}REPLACE(){return this.getToken(FC.REPLACE,0)}get ruleIndex(){return FC.RULE_orReplace}accept(t){return t.visitOrReplace?t.visitOrReplace(this):t.visitChildren(this)}},gk=class extends ga{constructor(t,e){super(t,e)}WAIT(){return this.getToken(FC.WAIT,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}NOWAIT(){return this.getToken(FC.NOWAIT,0)}get ruleIndex(){return FC.RULE_waitNowaitClause}accept(t){return t.visitWaitNowaitClause?t.visitWaitNowaitClause(this):t.visitChildren(this)}},xk=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_functionCall}copyFrom(t){super.copyFrom(t)}},kk=class extends xk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}specificFunction(){return this.getRuleContext(0,yk)}accept(t){return t.visitSpecificFunctionCall?t.visitSpecificFunctionCall(this):t.visitChildren(this)}},Hk=class extends xk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}passwordFunctionClause(){return this.getRuleContext(0,OH)}accept(t){return t.visitPasswordFunctionCall?t.visitPasswordFunctionCall(this):t.visitChildren(this)}},Gk=class extends xk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}fullId(){return this.getRuleContext(0,Sx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}functionArgs(){return this.getRuleContext(0,IH)}accept(t){return t.visitUdfFunctionCall?t.visitUdfFunctionCall(this):t.visitChildren(this)}},Fk=class extends xk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}nonAggregateWindowedFunction(){return this.getRuleContext(0,iH)}accept(t){return t.visitNonAggregateFunctionCall?t.visitNonAggregateFunctionCall(this):t.visitChildren(this)}},vk=class extends xk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}aggregateWindowedFunction(){return this.getRuleContext(0,rH)}accept(t){return t.visitAggregateFunctionCall?t.visitAggregateFunctionCall(this):t.visitChildren(this)}},Bk=class extends xk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}scalarFunctionName(){return this.getRuleContext(0,lH)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}functionArgs(){return this.getRuleContext(0,IH)}accept(t){return t.visitScalarFunctionCall?t.visitScalarFunctionCall(this):t.visitChildren(this)}},yk=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_specificFunction}copyFrom(t){super.copyFrom(t)}},fk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}POSITION(){return this.getToken(FC.POSITION,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}IN(){return this.getToken(FC.IN,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}stringLiteral(t){return void 0===t?this.getRuleContexts(Zx):this.getRuleContext(t,Zx)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}accept(t){return t.visitPositionFunctionCall?t.visitPositionFunctionCall(this):t.visitChildren(this)}},Yk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TRIM(){return this.getToken(FC.TRIM,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}FROM(){return this.getToken(FC.FROM,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}BOTH(){return this.getToken(FC.BOTH,0)}LEADING(){return this.getToken(FC.LEADING,0)}TRAILING(){return this.getToken(FC.TRAILING,0)}stringLiteral(t){return void 0===t?this.getRuleContexts(Zx):this.getRuleContext(t,Zx)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}accept(t){return t.visitTrimFunctionCall?t.visitTrimFunctionCall(this):t.visitChildren(this)}},wk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}JSON_VALUE(){return this.getToken(FC.JSON_VALUE,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}COMMA(){return this.getToken(FC.COMMA,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}RETURNING(){return this.getToken(FC.RETURNING,0)}convertedDataType(){return this.getRuleContext(0,ok)}jsonOnEmpty(){return this.getRuleContext(0,$U)}jsonOnError(){return this.getRuleContext(0,tm)}accept(t){return t.visitJsonValueFunctionCall?t.visitJsonValueFunctionCall(this):t.visitChildren(this)}},bk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CASE(){return this.getToken(FC.CASE,0)}END(){return this.getToken(FC.END,0)}caseFuncAlternative(t){return void 0===t?this.getRuleContexts($k):this.getRuleContext(t,$k)}ELSE(){return this.getToken(FC.ELSE,0)}functionArg(){return this.getRuleContext(0,uH)}accept(t){return t.visitCaseFunctionCall?t.visitCaseFunctionCall(this):t.visitChildren(this)}},Wk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXTRACT(){return this.getToken(FC.EXTRACT,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}intervalType(){return this.getRuleContext(0,__)}FROM(){return this.getToken(FC.FROM,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}stringLiteral(){return this.getRuleContext(0,Zx)}expression(){return this.getRuleContext(0,NH)}accept(t){return t.visitExtractFunctionCall?t.visitExtractFunctionCall(this):t.visitChildren(this)}},Vk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CONVERT(){return this.getToken(FC.CONVERT,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}convertedDataType(){return this.getRuleContext(0,ok)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(){return this.getToken(FC.COMMA,0)}USING(){return this.getToken(FC.USING,0)}charsetName(){return this.getRuleContext(0,vx)}CAST(){return this.getToken(FC.CAST,0)}AS(){return this.getToken(FC.AS,0)}accept(t){return t.visitDataTypeFunctionCall?t.visitDataTypeFunctionCall(this):t.visitChildren(this)}},Xk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}VALUES(){return this.getToken(FC.VALUES,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}fullColumnName(){return this.getRuleContext(0,Px)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitValuesFunctionCall?t.visitValuesFunctionCall(this):t.visitChildren(this)}},Kk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CASE(){return this.getToken(FC.CASE,0)}expression(){return this.getRuleContext(0,NH)}END(){return this.getToken(FC.END,0)}caseFuncAlternative(t){return void 0===t?this.getRuleContexts($k):this.getRuleContext(t,$k)}ELSE(){return this.getToken(FC.ELSE,0)}functionArg(){return this.getRuleContext(0,uH)}accept(t){return t.visitCaseExpressionFunctionCall?t.visitCaseExpressionFunctionCall(this):t.visitChildren(this)}},Qk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}currentUserExpression(){return this.getRuleContext(0,l_)}accept(t){return t.visitCurrentUser?t.visitCurrentUser(this):t.visitChildren(this)}},Jk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CURRENT_DATE(){return this.getToken(FC.CURRENT_DATE,0)}CURRENT_TIME(){return this.getToken(FC.CURRENT_TIME,0)}CURRENT_TIMESTAMP(){return this.getToken(FC.CURRENT_TIMESTAMP,0)}LOCALTIME(){return this.getToken(FC.LOCALTIME,0)}UTC_TIMESTAMP(){return this.getToken(FC.UTC_TIMESTAMP,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitSimpleFunctionCall?t.visitSimpleFunctionCall(this):t.visitChildren(this)}},Zk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHAR(){return this.getToken(FC.CHAR,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}functionArgs(){return this.getRuleContext(0,IH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}USING(){return this.getToken(FC.USING,0)}charsetName(){return this.getRuleContext(0,vx)}accept(t){return t.visitCharFunctionCall?t.visitCharFunctionCall(this):t.visitChildren(this)}},qk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}WEIGHT_STRING(){return this.getToken(FC.WEIGHT_STRING,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}stringLiteral(){return this.getRuleContext(0,Zx)}expression(){return this.getRuleContext(0,NH)}AS(){return this.getToken(FC.AS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}levelsInWeightString(){return this.getRuleContext(0,tH)}CHAR(){return this.getToken(FC.CHAR,0)}BINARY(){return this.getToken(FC.BINARY,0)}accept(t){return t.visitWeightFunctionCall?t.visitWeightFunctionCall(this):t.visitChildren(this)}},jk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}GET_FORMAT(){return this.getToken(FC.GET_FORMAT,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}COMMA(){return this.getToken(FC.COMMA,0)}stringLiteral(){return this.getRuleContext(0,Zx)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}DATE(){return this.getToken(FC.DATE,0)}TIME(){return this.getToken(FC.TIME,0)}DATETIME(){return this.getToken(FC.DATETIME,0)}accept(t){return t.visitGetFormatFunctionCall?t.visitGetFormatFunctionCall(this):t.visitChildren(this)}},zk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}FROM(){return this.getToken(FC.FROM,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}SUBSTR(){return this.getToken(FC.SUBSTR,0)}SUBSTRING(){return this.getToken(FC.SUBSTRING,0)}stringLiteral(){return this.getRuleContext(0,Zx)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}FOR(){return this.getToken(FC.FOR,0)}accept(t){return t.visitSubstrFunctionCall?t.visitSubstrFunctionCall(this):t.visitChildren(this)}},$k=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(FC.WHEN,0)}THEN(){return this.getToken(FC.THEN,0)}functionArg(t){return void 0===t?this.getRuleContexts(uH):this.getRuleContext(t,uH)}get ruleIndex(){return FC.RULE_caseFuncAlternative}accept(t){return t.visitCaseFuncAlternative?t.visitCaseFuncAlternative(this):t.visitChildren(this)}},tH=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_levelsInWeightString}copyFrom(t){super.copyFrom(t)}},eH=class extends tH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LEVEL(){return this.getToken(FC.LEVEL,0)}MINUS(){return this.getToken(FC.MINUS,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}accept(t){return t.visitLevelWeightRange?t.visitLevelWeightRange(this):t.visitChildren(this)}},sH=class extends tH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LEVEL(){return this.getToken(FC.LEVEL,0)}levelInWeightListElement(t){return void 0===t?this.getRuleContexts(aH):this.getRuleContext(t,aH)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitLevelWeightList?t.visitLevelWeightList(this):t.visitChildren(this)}},aH=class extends ga{constructor(t,e){super(t,e)}decimalLiteral(){return this.getRuleContext(0,Qx)}ASC(){return this.getToken(FC.ASC,0)}DESC(){return this.getToken(FC.DESC,0)}REVERSE(){return this.getToken(FC.REVERSE,0)}get ruleIndex(){return FC.RULE_levelInWeightListElement}accept(t){return t.visitLevelInWeightListElement?t.visitLevelInWeightListElement(this):t.visitChildren(this)}},rH=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}functionArg(){return this.getRuleContext(0,uH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}AVG(){return this.getToken(FC.AVG,0)}MAX(){return this.getToken(FC.MAX,0)}MIN(){return this.getToken(FC.MIN,0)}SUM(){return this.getToken(FC.SUM,0)}overClause(){return this.getRuleContext(0,cH)}ALL(){return this.getToken(FC.ALL,0)}DISTINCT(){return this.getToken(FC.DISTINCT,0)}COUNT(){return this.getToken(FC.COUNT,0)}functionArgs(){return this.getRuleContext(0,IH)}STAR(){return this.getToken(FC.STAR,0)}BIT_AND(){return this.getToken(FC.BIT_AND,0)}BIT_OR(){return this.getToken(FC.BIT_OR,0)}BIT_XOR(){return this.getToken(FC.BIT_XOR,0)}STD(){return this.getToken(FC.STD,0)}STDDEV(){return this.getToken(FC.STDDEV,0)}STDDEV_POP(){return this.getToken(FC.STDDEV_POP,0)}STDDEV_SAMP(){return this.getToken(FC.STDDEV_SAMP,0)}VAR_POP(){return this.getToken(FC.VAR_POP,0)}VAR_SAMP(){return this.getToken(FC.VAR_SAMP,0)}VARIANCE(){return this.getToken(FC.VARIANCE,0)}GROUP_CONCAT(){return this.getToken(FC.GROUP_CONCAT,0)}ORDER(){return this.getToken(FC.ORDER,0)}BY(){return this.getToken(FC.BY,0)}orderByExpression(t){return void 0===t?this.getRuleContexts(dU):this.getRuleContext(t,dU)}SEPARATOR(){return this.getToken(FC.SEPARATOR,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_aggregateWindowedFunction}accept(t){return t.visitAggregateWindowedFunction?t.visitAggregateWindowedFunction(this):t.visitChildren(this)}},iH=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}overClause(){return this.getRuleContext(0,cH)}LAG(){return this.getToken(FC.LAG,0)}LEAD(){return this.getToken(FC.LEAD,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}FIRST_VALUE(){return this.getToken(FC.FIRST_VALUE,0)}LAST_VALUE(){return this.getToken(FC.LAST_VALUE,0)}CUME_DIST(){return this.getToken(FC.CUME_DIST,0)}DENSE_RANK(){return this.getToken(FC.DENSE_RANK,0)}PERCENT_RANK(){return this.getToken(FC.PERCENT_RANK,0)}RANK(){return this.getToken(FC.RANK,0)}ROW_NUMBER(){return this.getToken(FC.ROW_NUMBER,0)}NTH_VALUE(){return this.getToken(FC.NTH_VALUE,0)}NTILE(){return this.getToken(FC.NTILE,0)}get ruleIndex(){return FC.RULE_nonAggregateWindowedFunction}accept(t){return t.visitNonAggregateWindowedFunction?t.visitNonAggregateWindowedFunction(this):t.visitChildren(this)}},cH=class extends ga{constructor(t,e){super(t,e)}OVER(){return this.getToken(FC.OVER,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}windowSpec(){return this.getRuleContext(0,nH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}windowName(){return this.getRuleContext(0,hH)}get ruleIndex(){return FC.RULE_overClause}accept(t){return t.visitOverClause?t.visitOverClause(this):t.visitChildren(this)}},nH=class extends ga{constructor(t,e){super(t,e)}windowName(){return this.getRuleContext(0,hH)}partitionClause(){return this.getRuleContext(0,SH)}orderByClause(){return this.getRuleContext(0,MU)}frameClause(){return this.getRuleContext(0,EH)}get ruleIndex(){return FC.RULE_windowSpec}accept(t){return t.visitWindowSpec?t.visitWindowSpec(this):t.visitChildren(this)}},hH=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_windowName}accept(t){return t.visitWindowName?t.visitWindowName(this):t.visitChildren(this)}},EH=class extends ga{constructor(t,e){super(t,e)}frameUnits(){return this.getRuleContext(0,TH)}frameExtent(){return this.getRuleContext(0,oH)}get ruleIndex(){return FC.RULE_frameClause}accept(t){return t.visitFrameClause?t.visitFrameClause(this):t.visitChildren(this)}},TH=class extends ga{constructor(t,e){super(t,e)}ROWS(){return this.getToken(FC.ROWS,0)}RANGE(){return this.getToken(FC.RANGE,0)}get ruleIndex(){return FC.RULE_frameUnits}accept(t){return t.visitFrameUnits?t.visitFrameUnits(this):t.visitChildren(this)}},oH=class extends ga{constructor(t,e){super(t,e)}frameRange(){return this.getRuleContext(0,AH)}frameBetween(){return this.getRuleContext(0,RH)}get ruleIndex(){return FC.RULE_frameExtent}accept(t){return t.visitFrameExtent?t.visitFrameExtent(this):t.visitChildren(this)}},RH=class extends ga{constructor(t,e){super(t,e)}BETWEEN(){return this.getToken(FC.BETWEEN,0)}frameRange(t){return void 0===t?this.getRuleContexts(AH):this.getRuleContext(t,AH)}AND(){return this.getToken(FC.AND,0)}get ruleIndex(){return FC.RULE_frameBetween}accept(t){return t.visitFrameBetween?t.visitFrameBetween(this):t.visitChildren(this)}},AH=class extends ga{constructor(t,e){super(t,e)}CURRENT(){return this.getToken(FC.CURRENT,0)}ROW(){return this.getToken(FC.ROW,0)}UNBOUNDED(){return this.getToken(FC.UNBOUNDED,0)}PRECEDING(){return this.getToken(FC.PRECEDING,0)}FOLLOWING(){return this.getToken(FC.FOLLOWING,0)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_frameRange}accept(t){return t.visitFrameRange?t.visitFrameRange(this):t.visitChildren(this)}},SH=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(FC.PARTITION,0)}BY(){return this.getToken(FC.BY,0)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_partitionClause}accept(t){return t.visitPartitionClause?t.visitPartitionClause(this):t.visitChildren(this)}},lH=class extends ga{constructor(t,e){super(t,e)}functionNameBase(){return this.getRuleContext(0,oG)}ASCII(){return this.getToken(FC.ASCII,0)}CURDATE(){return this.getToken(FC.CURDATE,0)}CURRENT_DATE(){return this.getToken(FC.CURRENT_DATE,0)}CURRENT_TIME(){return this.getToken(FC.CURRENT_TIME,0)}CURRENT_TIMESTAMP(){return this.getToken(FC.CURRENT_TIMESTAMP,0)}CURTIME(){return this.getToken(FC.CURTIME,0)}DATE_ADD(){return this.getToken(FC.DATE_ADD,0)}DATE_SUB(){return this.getToken(FC.DATE_SUB,0)}IF(){return this.getToken(FC.IF,0)}INSERT(){return this.getToken(FC.INSERT,0)}LOCALTIME(){return this.getToken(FC.LOCALTIME,0)}LOCALTIMESTAMP(){return this.getToken(FC.LOCALTIMESTAMP,0)}MID(){return this.getToken(FC.MID,0)}NOW(){return this.getToken(FC.NOW,0)}REPEAT(){return this.getToken(FC.REPEAT,0)}REPLACE(){return this.getToken(FC.REPLACE,0)}SUBSTR(){return this.getToken(FC.SUBSTR,0)}SUBSTRING(){return this.getToken(FC.SUBSTRING,0)}SYSDATE(){return this.getToken(FC.SYSDATE,0)}TRIM(){return this.getToken(FC.TRIM,0)}UTC_DATE(){return this.getToken(FC.UTC_DATE,0)}UTC_TIME(){return this.getToken(FC.UTC_TIME,0)}UTC_TIMESTAMP(){return this.getToken(FC.UTC_TIMESTAMP,0)}get ruleIndex(){return FC.RULE_scalarFunctionName}accept(t){return t.visitScalarFunctionName?t.visitScalarFunctionName(this):t.visitChildren(this)}},OH=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}functionArg(){return this.getRuleContext(0,uH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}OLD_PASSWORD(){return this.getToken(FC.OLD_PASSWORD,0)}get ruleIndex(){return FC.RULE_passwordFunctionClause}accept(t){return t.visitPasswordFunctionClause?t.visitPasswordFunctionClause(this):t.visitChildren(this)}},IH=class extends ga{constructor(t,e){super(t,e)}constant(t){return void 0===t?this.getRuleContexts($x):this.getRuleContext(t,$x)}fullColumnName(t){return void 0===t?this.getRuleContexts(Px):this.getRuleContext(t,Px)}functionCall(t){return void 0===t?this.getRuleContexts(xk):this.getRuleContext(t,xk)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_functionArgs}accept(t){return t.visitFunctionArgs?t.visitFunctionArgs(this):t.visitChildren(this)}},uH=class extends ga{constructor(t,e){super(t,e)}constant(){return this.getRuleContext(0,$x)}fullColumnName(){return this.getRuleContext(0,Px)}functionCall(){return this.getRuleContext(0,xk)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_functionArg}accept(t){return t.visitFunctionArg?t.visitFunctionArg(this):t.visitChildren(this)}},NH=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_expression}copyFrom(t){super.copyFrom(t)}},LH=class extends NH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(){return this.getRuleContext(0,MH)}IS(){return this.getToken(FC.IS,0)}TRUE(){return this.getToken(FC.TRUE,0)}FALSE(){return this.getToken(FC.FALSE,0)}UNKNOWN(){return this.getToken(FC.UNKNOWN,0)}NOT(){return this.getToken(FC.NOT,0)}accept(t){return t.visitIsExpression?t.visitIsExpression(this):t.visitChildren(this)}},CH=class extends NH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}expression(){return this.getRuleContext(0,NH)}NOT(){return this.getToken(FC.NOT,0)}EXCLAMATION_SYMBOL(){return this.getToken(FC.EXCLAMATION_SYMBOL,0)}accept(t){return t.visitNotExpression?t.visitNotExpression(this):t.visitChildren(this)}},_H=class extends NH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}logicalOperator(){return this.getRuleContext(0,tG)}accept(t){return t.visitLogicalExpression?t.visitLogicalExpression(this):t.visitChildren(this)}},PH=class extends NH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(){return this.getRuleContext(0,MH)}accept(t){return t.visitPredicateExpression?t.visitPredicateExpression(this):t.visitChildren(this)}},MH=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_predicate}copyFrom(t){super.copyFrom(t)}},dH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(t){return void 0===t?this.getRuleContexts(MH):this.getRuleContext(t,MH)}SOUNDS(){return this.getToken(FC.SOUNDS,0)}LIKE(){return this.getToken(FC.LIKE,0)}accept(t){return t.visitSoundsLikePredicate?t.visitSoundsLikePredicate(this):t.visitChildren(this)}},UH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}expressionAtom(){return this.getRuleContext(0,FH)}accept(t){return t.visitExpressionAtomPredicate?t.visitExpressionAtomPredicate(this):t.visitChildren(this)}},mH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(){return this.getRuleContext(0,MH)}comparisonOperator(){return this.getRuleContext(0,$H)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}selectStatement(){return this.getRuleContext(0,rU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}ALL(){return this.getToken(FC.ALL,0)}ANY(){return this.getToken(FC.ANY,0)}SOME(){return this.getToken(FC.SOME,0)}accept(t){return t.visitSubqueryComparisonPredicate?t.visitSubqueryComparisonPredicate(this):t.visitChildren(this)}},DH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(t){return void 0===t?this.getRuleContexts(MH):this.getRuleContext(t,MH)}MEMBER(){return this.getToken(FC.MEMBER,0)}OF(){return this.getToken(FC.OF,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitJsonMemberOfPredicate?t.visitJsonMemberOfPredicate(this):t.visitChildren(this)}},pH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}comparisonOperator(){return this.getRuleContext(0,$H)}predicate(t){return void 0===t?this.getRuleContexts(MH):this.getRuleContext(t,MH)}accept(t){return t.visitBinaryComparisonPredicate?t.visitBinaryComparisonPredicate(this):t.visitChildren(this)}},gH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(){return this.getRuleContext(0,MH)}IN(){return this.getToken(FC.IN,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}selectStatement(){return this.getRuleContext(0,rU)}expressions(){return this.getRuleContext(0,Nk)}NOT(){return this.getToken(FC.NOT,0)}accept(t){return t.visitInPredicate?t.visitInPredicate(this):t.visitChildren(this)}},xH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(t){return void 0===t?this.getRuleContexts(MH):this.getRuleContext(t,MH)}BETWEEN(){return this.getToken(FC.BETWEEN,0)}AND(){return this.getToken(FC.AND,0)}NOT(){return this.getToken(FC.NOT,0)}accept(t){return t.visitBetweenPredicate?t.visitBetweenPredicate(this):t.visitChildren(this)}},kH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(){return this.getRuleContext(0,MH)}IS(){return this.getToken(FC.IS,0)}nullNotnull(){return this.getRuleContext(0,zx)}accept(t){return t.visitIsNullPredicate?t.visitIsNullPredicate(this):t.visitChildren(this)}},HH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(t){return void 0===t?this.getRuleContexts(MH):this.getRuleContext(t,MH)}LIKE(){return this.getToken(FC.LIKE,0)}NOT(){return this.getToken(FC.NOT,0)}ESCAPE(){return this.getToken(FC.ESCAPE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitLikePredicate?t.visitLikePredicate(this):t.visitChildren(this)}},GH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(t){return void 0===t?this.getRuleContexts(MH):this.getRuleContext(t,MH)}REGEXP(){return this.getToken(FC.REGEXP,0)}RLIKE(){return this.getToken(FC.RLIKE,0)}NOT(){return this.getToken(FC.NOT,0)}accept(t){return t.visitRegexpPredicate?t.visitRegexpPredicate(this):t.visitChildren(this)}},FH=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_expressionAtom}copyFrom(t){super.copyFrom(t)}},vH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}unaryOperator(){return this.getRuleContext(0,zH)}expressionAtom(){return this.getRuleContext(0,FH)}accept(t){return t.visitUnaryExpressionAtom?t.visitUnaryExpressionAtom(this):t.visitChildren(this)}},BH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}expressionAtom(){return this.getRuleContext(0,FH)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitCollateExpressionAtom?t.visitCollateExpressionAtom(this):t.visitChildren(this)}},yH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}VAR_ASSIGN(){return this.getToken(FC.VAR_ASSIGN,0)}expressionAtom(){return this.getRuleContext(0,FH)}accept(t){return t.visitVariableAssignExpressionAtom?t.visitVariableAssignExpressionAtom(this):t.visitChildren(this)}},fH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}mysqlVariable(){return this.getRuleContext(0,Fx)}accept(t){return t.visitMysqlVariableExpressionAtom?t.visitMysqlVariableExpressionAtom(this):t.visitChildren(this)}},YH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitNestedExpressionAtom?t.visitNestedExpressionAtom(this):t.visitChildren(this)}},wH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ROW(){return this.getToken(FC.ROW,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitNestedRowExpressionAtom?t.visitNestedRowExpressionAtom(this):t.visitChildren(this)}},bH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}multOperator(){return this.getRuleContext(0,sG)}expressionAtom(t){return void 0===t?this.getRuleContexts(FH):this.getRuleContext(t,FH)}addOperator(){return this.getRuleContext(0,aG)}accept(t){return t.visitMathExpressionAtom?t.visitMathExpressionAtom(this):t.visitChildren(this)}},WH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXISTS(){return this.getToken(FC.EXISTS,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}selectStatement(){return this.getRuleContext(0,rU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitExistsExpressionAtom?t.visitExistsExpressionAtom(this):t.visitChildren(this)}},VH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INTERVAL(){return this.getToken(FC.INTERVAL,0)}expression(){return this.getRuleContext(0,NH)}intervalType(){return this.getRuleContext(0,__)}accept(t){return t.visitIntervalExpressionAtom?t.visitIntervalExpressionAtom(this):t.visitChildren(this)}},XH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}jsonOperator(){return this.getRuleContext(0,rG)}expressionAtom(t){return void 0===t?this.getRuleContexts(FH):this.getRuleContext(t,FH)}accept(t){return t.visitJsonExpressionAtom?t.visitJsonExpressionAtom(this):t.visitChildren(this)}},KH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}selectStatement(){return this.getRuleContext(0,rU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitSubqueryExpressionAtom?t.visitSubqueryExpressionAtom(this):t.visitChildren(this)}},QH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}constant(){return this.getRuleContext(0,$x)}accept(t){return t.visitConstantExpressionAtom?t.visitConstantExpressionAtom(this):t.visitChildren(this)}},JH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}functionCall(){return this.getRuleContext(0,xk)}accept(t){return t.visitFunctionCallExpressionAtom?t.visitFunctionCallExpressionAtom(this):t.visitChildren(this)}},ZH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}BINARY(){return this.getToken(FC.BINARY,0)}expressionAtom(){return this.getRuleContext(0,FH)}accept(t){return t.visitBinaryExpressionAtom?t.visitBinaryExpressionAtom(this):t.visitChildren(this)}},qH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}fullColumnName(){return this.getRuleContext(0,Px)}accept(t){return t.visitFullColumnNameExpressionAtom?t.visitFullColumnNameExpressionAtom(this):t.visitChildren(this)}},jH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}bitOperator(){return this.getRuleContext(0,eG)}expressionAtom(t){return void 0===t?this.getRuleContexts(FH):this.getRuleContext(t,FH)}accept(t){return t.visitBitExpressionAtom?t.visitBitExpressionAtom(this):t.visitChildren(this)}},zH=class extends ga{constructor(t,e){super(t,e)}EXCLAMATION_SYMBOL(){return this.getToken(FC.EXCLAMATION_SYMBOL,0)}BIT_NOT_OP(){return this.getToken(FC.BIT_NOT_OP,0)}PLUS(){return this.getToken(FC.PLUS,0)}MINUS(){return this.getToken(FC.MINUS,0)}NOT(){return this.getToken(FC.NOT,0)}get ruleIndex(){return FC.RULE_unaryOperator}accept(t){return t.visitUnaryOperator?t.visitUnaryOperator(this):t.visitChildren(this)}},$H=class extends ga{constructor(t,e){super(t,e)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}GREATER_SYMBOL(){return this.getToken(FC.GREATER_SYMBOL,0)}LESS_SYMBOL(){return this.getToken(FC.LESS_SYMBOL,0)}EXCLAMATION_SYMBOL(){return this.getToken(FC.EXCLAMATION_SYMBOL,0)}get ruleIndex(){return FC.RULE_comparisonOperator}accept(t){return t.visitComparisonOperator?t.visitComparisonOperator(this):t.visitChildren(this)}},tG=class extends ga{constructor(t,e){super(t,e)}AND(){return this.getToken(FC.AND,0)}BIT_AND_OP(t){return void 0===t?this.getTokens(FC.BIT_AND_OP):this.getToken(FC.BIT_AND_OP,t)}XOR(){return this.getToken(FC.XOR,0)}OR(){return this.getToken(FC.OR,0)}BIT_OR_OP(t){return void 0===t?this.getTokens(FC.BIT_OR_OP):this.getToken(FC.BIT_OR_OP,t)}get ruleIndex(){return FC.RULE_logicalOperator}accept(t){return t.visitLogicalOperator?t.visitLogicalOperator(this):t.visitChildren(this)}},eG=class extends ga{constructor(t,e){super(t,e)}LESS_SYMBOL(t){return void 0===t?this.getTokens(FC.LESS_SYMBOL):this.getToken(FC.LESS_SYMBOL,t)}GREATER_SYMBOL(t){return void 0===t?this.getTokens(FC.GREATER_SYMBOL):this.getToken(FC.GREATER_SYMBOL,t)}BIT_AND_OP(){return this.getToken(FC.BIT_AND_OP,0)}BIT_XOR_OP(){return this.getToken(FC.BIT_XOR_OP,0)}BIT_OR_OP(){return this.getToken(FC.BIT_OR_OP,0)}get ruleIndex(){return FC.RULE_bitOperator}accept(t){return t.visitBitOperator?t.visitBitOperator(this):t.visitChildren(this)}},sG=class extends ga{constructor(t,e){super(t,e)}STAR(){return this.getToken(FC.STAR,0)}DIVIDE(){return this.getToken(FC.DIVIDE,0)}MODULE(){return this.getToken(FC.MODULE,0)}DIV(){return this.getToken(FC.DIV,0)}MOD(){return this.getToken(FC.MOD,0)}get ruleIndex(){return FC.RULE_multOperator}accept(t){return t.visitMultOperator?t.visitMultOperator(this):t.visitChildren(this)}},aG=class extends ga{constructor(t,e){super(t,e)}PLUS(){return this.getToken(FC.PLUS,0)}MINUS(){return this.getToken(FC.MINUS,0)}get ruleIndex(){return FC.RULE_addOperator}accept(t){return t.visitAddOperator?t.visitAddOperator(this):t.visitChildren(this)}},rG=class extends ga{constructor(t,e){super(t,e)}MINUS(){return this.getToken(FC.MINUS,0)}GREATER_SYMBOL(t){return void 0===t?this.getTokens(FC.GREATER_SYMBOL):this.getToken(FC.GREATER_SYMBOL,t)}get ruleIndex(){return FC.RULE_jsonOperator}accept(t){return t.visitJsonOperator?t.visitJsonOperator(this):t.visitChildren(this)}},iG=class extends ga{constructor(t,e){super(t,e)}ARMSCII8(){return this.getToken(FC.ARMSCII8,0)}ASCII(){return this.getToken(FC.ASCII,0)}BIG5(){return this.getToken(FC.BIG5,0)}BINARY(){return this.getToken(FC.BINARY,0)}CP1250(){return this.getToken(FC.CP1250,0)}CP1251(){return this.getToken(FC.CP1251,0)}CP1256(){return this.getToken(FC.CP1256,0)}CP1257(){return this.getToken(FC.CP1257,0)}CP850(){return this.getToken(FC.CP850,0)}CP852(){return this.getToken(FC.CP852,0)}CP866(){return this.getToken(FC.CP866,0)}CP932(){return this.getToken(FC.CP932,0)}DEC8(){return this.getToken(FC.DEC8,0)}EUCJPMS(){return this.getToken(FC.EUCJPMS,0)}EUCKR(){return this.getToken(FC.EUCKR,0)}GB18030(){return this.getToken(FC.GB18030,0)}GB2312(){return this.getToken(FC.GB2312,0)}GBK(){return this.getToken(FC.GBK,0)}GEOSTD8(){return this.getToken(FC.GEOSTD8,0)}GREEK(){return this.getToken(FC.GREEK,0)}HEBREW(){return this.getToken(FC.HEBREW,0)}HP8(){return this.getToken(FC.HP8,0)}KEYBCS2(){return this.getToken(FC.KEYBCS2,0)}KOI8R(){return this.getToken(FC.KOI8R,0)}KOI8U(){return this.getToken(FC.KOI8U,0)}LATIN1(){return this.getToken(FC.LATIN1,0)}LATIN2(){return this.getToken(FC.LATIN2,0)}LATIN5(){return this.getToken(FC.LATIN5,0)}LATIN7(){return this.getToken(FC.LATIN7,0)}MACCE(){return this.getToken(FC.MACCE,0)}MACROMAN(){return this.getToken(FC.MACROMAN,0)}SJIS(){return this.getToken(FC.SJIS,0)}SWE7(){return this.getToken(FC.SWE7,0)}TIS620(){return this.getToken(FC.TIS620,0)}UCS2(){return this.getToken(FC.UCS2,0)}UJIS(){return this.getToken(FC.UJIS,0)}UTF16(){return this.getToken(FC.UTF16,0)}UTF16LE(){return this.getToken(FC.UTF16LE,0)}UTF32(){return this.getToken(FC.UTF32,0)}UTF8(){return this.getToken(FC.UTF8,0)}UTF8MB3(){return this.getToken(FC.UTF8MB3,0)}UTF8MB4(){return this.getToken(FC.UTF8MB4,0)}get ruleIndex(){return FC.RULE_charsetNameBase}accept(t){return t.visitCharsetNameBase?t.visitCharsetNameBase(this):t.visitChildren(this)}},cG=class extends ga{constructor(t,e){super(t,e)}REPEATABLE(){return this.getToken(FC.REPEATABLE,0)}COMMITTED(){return this.getToken(FC.COMMITTED,0)}UNCOMMITTED(){return this.getToken(FC.UNCOMMITTED,0)}SERIALIZABLE(){return this.getToken(FC.SERIALIZABLE,0)}get ruleIndex(){return FC.RULE_transactionLevelBase}accept(t){return t.visitTransactionLevelBase?t.visitTransactionLevelBase(this):t.visitChildren(this)}},nG=class extends ga{constructor(t,e){super(t,e)}TABLES(){return this.getToken(FC.TABLES,0)}ROUTINE(){return this.getToken(FC.ROUTINE,0)}EXECUTE(){return this.getToken(FC.EXECUTE,0)}FILE(){return this.getToken(FC.FILE,0)}PROCESS(){return this.getToken(FC.PROCESS,0)}RELOAD(){return this.getToken(FC.RELOAD,0)}SHUTDOWN(){return this.getToken(FC.SHUTDOWN,0)}SUPER(){return this.getToken(FC.SUPER,0)}PRIVILEGES(){return this.getToken(FC.PRIVILEGES,0)}get ruleIndex(){return FC.RULE_privilegesBase}accept(t){return t.visitPrivilegesBase?t.visitPrivilegesBase(this):t.visitChildren(this)}},hG=class extends ga{constructor(t,e){super(t,e)}QUARTER(){return this.getToken(FC.QUARTER,0)}MONTH(){return this.getToken(FC.MONTH,0)}DAY(){return this.getToken(FC.DAY,0)}HOUR(){return this.getToken(FC.HOUR,0)}MINUTE(){return this.getToken(FC.MINUTE,0)}WEEK(){return this.getToken(FC.WEEK,0)}SECOND(){return this.getToken(FC.SECOND,0)}MICROSECOND(){return this.getToken(FC.MICROSECOND,0)}get ruleIndex(){return FC.RULE_intervalTypeBase}accept(t){return t.visitIntervalTypeBase?t.visitIntervalTypeBase(this):t.visitChildren(this)}},EG=class extends ga{constructor(t,e){super(t,e)}DATE(){return this.getToken(FC.DATE,0)}TIME(){return this.getToken(FC.TIME,0)}TIMESTAMP(){return this.getToken(FC.TIMESTAMP,0)}DATETIME(){return this.getToken(FC.DATETIME,0)}YEAR(){return this.getToken(FC.YEAR,0)}ENUM(){return this.getToken(FC.ENUM,0)}TEXT(){return this.getToken(FC.TEXT,0)}get ruleIndex(){return FC.RULE_dataTypeBase}accept(t){return t.visitDataTypeBase?t.visitDataTypeBase(this):t.visitChildren(this)}},TG=class extends ga{constructor(t,e){super(t,e)}ACCOUNT(){return this.getToken(FC.ACCOUNT,0)}ACTION(){return this.getToken(FC.ACTION,0)}ADMIN(){return this.getToken(FC.ADMIN,0)}AFTER(){return this.getToken(FC.AFTER,0)}AGGREGATE(){return this.getToken(FC.AGGREGATE,0)}ALGORITHM(){return this.getToken(FC.ALGORITHM,0)}ANY(){return this.getToken(FC.ANY,0)}ARRAY(){return this.getToken(FC.ARRAY,0)}AT(){return this.getToken(FC.AT,0)}AUDIT_ADMIN(){return this.getToken(FC.AUDIT_ADMIN,0)}AUDIT_ABORT_EXEMPT(){return this.getToken(FC.AUDIT_ABORT_EXEMPT,0)}AUTHORS(){return this.getToken(FC.AUTHORS,0)}AUTOCOMMIT(){return this.getToken(FC.AUTOCOMMIT,0)}AUTOEXTEND_SIZE(){return this.getToken(FC.AUTOEXTEND_SIZE,0)}AUTO_INCREMENT(){return this.getToken(FC.AUTO_INCREMENT,0)}AUTHENTICATION_POLICY_ADMIN(){return this.getToken(FC.AUTHENTICATION_POLICY_ADMIN,0)}AVG(){return this.getToken(FC.AVG,0)}AVG_ROW_LENGTH(){return this.getToken(FC.AVG_ROW_LENGTH,0)}ATTRIBUTE(){return this.getToken(FC.ATTRIBUTE,0)}BACKUP_ADMIN(){return this.getToken(FC.BACKUP_ADMIN,0)}BEGIN(){return this.getToken(FC.BEGIN,0)}BINLOG(){return this.getToken(FC.BINLOG,0)}BINLOG_ADMIN(){return this.getToken(FC.BINLOG_ADMIN,0)}BINLOG_ENCRYPTION_ADMIN(){return this.getToken(FC.BINLOG_ENCRYPTION_ADMIN,0)}BIT(){return this.getToken(FC.BIT,0)}BIT_AND(){return this.getToken(FC.BIT_AND,0)}BIT_OR(){return this.getToken(FC.BIT_OR,0)}BIT_XOR(){return this.getToken(FC.BIT_XOR,0)}BLOCK(){return this.getToken(FC.BLOCK,0)}BOOL(){return this.getToken(FC.BOOL,0)}BOOLEAN(){return this.getToken(FC.BOOLEAN,0)}BTREE(){return this.getToken(FC.BTREE,0)}BUCKETS(){return this.getToken(FC.BUCKETS,0)}CACHE(){return this.getToken(FC.CACHE,0)}CASCADED(){return this.getToken(FC.CASCADED,0)}CHAIN(){return this.getToken(FC.CHAIN,0)}CHANGED(){return this.getToken(FC.CHANGED,0)}CHANNEL(){return this.getToken(FC.CHANNEL,0)}CHECKSUM(){return this.getToken(FC.CHECKSUM,0)}PAGE_CHECKSUM(){return this.getToken(FC.PAGE_CHECKSUM,0)}CATALOG_NAME(){return this.getToken(FC.CATALOG_NAME,0)}CIPHER(){return this.getToken(FC.CIPHER,0)}CLASS_ORIGIN(){return this.getToken(FC.CLASS_ORIGIN,0)}CLIENT(){return this.getToken(FC.CLIENT,0)}CLONE_ADMIN(){return this.getToken(FC.CLONE_ADMIN,0)}CLOSE(){return this.getToken(FC.CLOSE,0)}CLUSTERING(){return this.getToken(FC.CLUSTERING,0)}COALESCE(){return this.getToken(FC.COALESCE,0)}CODE(){return this.getToken(FC.CODE,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}COLUMN_FORMAT(){return this.getToken(FC.COLUMN_FORMAT,0)}COLUMN_NAME(){return this.getToken(FC.COLUMN_NAME,0)}COMMENT(){return this.getToken(FC.COMMENT,0)}COMMIT(){return this.getToken(FC.COMMIT,0)}COMPACT(){return this.getToken(FC.COMPACT,0)}COMPLETION(){return this.getToken(FC.COMPLETION,0)}COMPRESSED(){return this.getToken(FC.COMPRESSED,0)}COMPRESSION(){return this.getToken(FC.COMPRESSION,0)}CONCURRENT(){return this.getToken(FC.CONCURRENT,0)}CONDITION(){return this.getToken(FC.CONDITION,0)}CONNECT(){return this.getToken(FC.CONNECT,0)}CONNECTION(){return this.getToken(FC.CONNECTION,0)}CONNECTION_ADMIN(){return this.getToken(FC.CONNECTION_ADMIN,0)}CONSISTENT(){return this.getToken(FC.CONSISTENT,0)}CONSTRAINT_CATALOG(){return this.getToken(FC.CONSTRAINT_CATALOG,0)}CONSTRAINT_NAME(){return this.getToken(FC.CONSTRAINT_NAME,0)}CONSTRAINT_SCHEMA(){return this.getToken(FC.CONSTRAINT_SCHEMA,0)}CONTAINS(){return this.getToken(FC.CONTAINS,0)}CONTEXT(){return this.getToken(FC.CONTEXT,0)}CONTRIBUTORS(){return this.getToken(FC.CONTRIBUTORS,0)}COPY(){return this.getToken(FC.COPY,0)}COUNT(){return this.getToken(FC.COUNT,0)}CPU(){return this.getToken(FC.CPU,0)}CURRENT(){return this.getToken(FC.CURRENT,0)}CURRENT_USER(){return this.getToken(FC.CURRENT_USER,0)}CURSOR_NAME(){return this.getToken(FC.CURSOR_NAME,0)}DATA(){return this.getToken(FC.DATA,0)}DATAFILE(){return this.getToken(FC.DATAFILE,0)}DEALLOCATE(){return this.getToken(FC.DEALLOCATE,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}DEFAULT_AUTH(){return this.getToken(FC.DEFAULT_AUTH,0)}DEFINER(){return this.getToken(FC.DEFINER,0)}DELAY_KEY_WRITE(){return this.getToken(FC.DELAY_KEY_WRITE,0)}DES_KEY_FILE(){return this.getToken(FC.DES_KEY_FILE,0)}DIAGNOSTICS(){return this.getToken(FC.DIAGNOSTICS,0)}DIRECTORY(){return this.getToken(FC.DIRECTORY,0)}DISABLE(){return this.getToken(FC.DISABLE,0)}DISCARD(){return this.getToken(FC.DISCARD,0)}DISK(){return this.getToken(FC.DISK,0)}DO(){return this.getToken(FC.DO,0)}DUMPFILE(){return this.getToken(FC.DUMPFILE,0)}DUPLICATE(){return this.getToken(FC.DUPLICATE,0)}DYNAMIC(){return this.getToken(FC.DYNAMIC,0)}EMPTY(){return this.getToken(FC.EMPTY,0)}ENABLE(){return this.getToken(FC.ENABLE,0)}ENCRYPTION(){return this.getToken(FC.ENCRYPTION,0)}ENCRYPTION_KEY_ADMIN(){return this.getToken(FC.ENCRYPTION_KEY_ADMIN,0)}END(){return this.getToken(FC.END,0)}ENDS(){return this.getToken(FC.ENDS,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}ENGINE_ATTRIBUTE(){return this.getToken(FC.ENGINE_ATTRIBUTE,0)}ENGINES(){return this.getToken(FC.ENGINES,0)}ENFORCED(){return this.getToken(FC.ENFORCED,0)}ERROR(){return this.getToken(FC.ERROR,0)}ERRORS(){return this.getToken(FC.ERRORS,0)}ESCAPE(){return this.getToken(FC.ESCAPE,0)}EUR(){return this.getToken(FC.EUR,0)}EVEN(){return this.getToken(FC.EVEN,0)}EVENT(){return this.getToken(FC.EVENT,0)}EVENTS(){return this.getToken(FC.EVENTS,0)}EVERY(){return this.getToken(FC.EVERY,0)}EXCEPT(){return this.getToken(FC.EXCEPT,0)}EXCHANGE(){return this.getToken(FC.EXCHANGE,0)}EXCLUSIVE(){return this.getToken(FC.EXCLUSIVE,0)}EXPIRE(){return this.getToken(FC.EXPIRE,0)}EXPORT(){return this.getToken(FC.EXPORT,0)}EXTENDED(){return this.getToken(FC.EXTENDED,0)}EXTENT_SIZE(){return this.getToken(FC.EXTENT_SIZE,0)}FAILED_LOGIN_ATTEMPTS(){return this.getToken(FC.FAILED_LOGIN_ATTEMPTS,0)}FAST(){return this.getToken(FC.FAST,0)}FAULTS(){return this.getToken(FC.FAULTS,0)}FIELDS(){return this.getToken(FC.FIELDS,0)}FILE_BLOCK_SIZE(){return this.getToken(FC.FILE_BLOCK_SIZE,0)}FILTER(){return this.getToken(FC.FILTER,0)}FIREWALL_ADMIN(){return this.getToken(FC.FIREWALL_ADMIN,0)}FIREWALL_EXEMPT(){return this.getToken(FC.FIREWALL_EXEMPT,0)}FIREWALL_USER(){return this.getToken(FC.FIREWALL_USER,0)}FIRST(){return this.getToken(FC.FIRST,0)}FIXED(){return this.getToken(FC.FIXED,0)}FLUSH(){return this.getToken(FC.FLUSH,0)}FOLLOWS(){return this.getToken(FC.FOLLOWS,0)}FOUND(){return this.getToken(FC.FOUND,0)}FULL(){return this.getToken(FC.FULL,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}GENERAL(){return this.getToken(FC.GENERAL,0)}GLOBAL(){return this.getToken(FC.GLOBAL,0)}GRANTS(){return this.getToken(FC.GRANTS,0)}GROUP(){return this.getToken(FC.GROUP,0)}GROUP_CONCAT(){return this.getToken(FC.GROUP_CONCAT,0)}GROUP_REPLICATION(){return this.getToken(FC.GROUP_REPLICATION,0)}GROUP_REPLICATION_ADMIN(){return this.getToken(FC.GROUP_REPLICATION_ADMIN,0)}HANDLER(){return this.getToken(FC.HANDLER,0)}HASH(){return this.getToken(FC.HASH,0)}HELP(){return this.getToken(FC.HELP,0)}HISTORY(){return this.getToken(FC.HISTORY,0)}HOST(){return this.getToken(FC.HOST,0)}HOSTS(){return this.getToken(FC.HOSTS,0)}IDENTIFIED(){return this.getToken(FC.IDENTIFIED,0)}IGNORED(){return this.getToken(FC.IGNORED,0)}IGNORE_SERVER_IDS(){return this.getToken(FC.IGNORE_SERVER_IDS,0)}IMPORT(){return this.getToken(FC.IMPORT,0)}INDEXES(){return this.getToken(FC.INDEXES,0)}INITIAL_SIZE(){return this.getToken(FC.INITIAL_SIZE,0)}INNODB_REDO_LOG_ARCHIVE(){return this.getToken(FC.INNODB_REDO_LOG_ARCHIVE,0)}INPLACE(){return this.getToken(FC.INPLACE,0)}INSERT_METHOD(){return this.getToken(FC.INSERT_METHOD,0)}INSTALL(){return this.getToken(FC.INSTALL,0)}INSTANCE(){return this.getToken(FC.INSTANCE,0)}INSTANT(){return this.getToken(FC.INSTANT,0)}INTERNAL(){return this.getToken(FC.INTERNAL,0)}INVOKE(){return this.getToken(FC.INVOKE,0)}INVOKER(){return this.getToken(FC.INVOKER,0)}IO(){return this.getToken(FC.IO,0)}IO_THREAD(){return this.getToken(FC.IO_THREAD,0)}IPC(){return this.getToken(FC.IPC,0)}ISO(){return this.getToken(FC.ISO,0)}ISOLATION(){return this.getToken(FC.ISOLATION,0)}ISSUER(){return this.getToken(FC.ISSUER,0)}JIS(){return this.getToken(FC.JIS,0)}JSON(){return this.getToken(FC.JSON,0)}KEY_BLOCK_SIZE(){return this.getToken(FC.KEY_BLOCK_SIZE,0)}LAMBDA(){return this.getToken(FC.LAMBDA,0)}LANGUAGE(){return this.getToken(FC.LANGUAGE,0)}LAST(){return this.getToken(FC.LAST,0)}LATERAL(){return this.getToken(FC.LATERAL,0)}LEAVES(){return this.getToken(FC.LEAVES,0)}LESS(){return this.getToken(FC.LESS,0)}LEVEL(){return this.getToken(FC.LEVEL,0)}LIST(){return this.getToken(FC.LIST,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}LOGFILE(){return this.getToken(FC.LOGFILE,0)}LOGS(){return this.getToken(FC.LOGS,0)}MASTER(){return this.getToken(FC.MASTER,0)}MASTER_AUTO_POSITION(){return this.getToken(FC.MASTER_AUTO_POSITION,0)}MASTER_CONNECT_RETRY(){return this.getToken(FC.MASTER_CONNECT_RETRY,0)}MASTER_DELAY(){return this.getToken(FC.MASTER_DELAY,0)}MASTER_HEARTBEAT_PERIOD(){return this.getToken(FC.MASTER_HEARTBEAT_PERIOD,0)}MASTER_HOST(){return this.getToken(FC.MASTER_HOST,0)}MASTER_LOG_FILE(){return this.getToken(FC.MASTER_LOG_FILE,0)}MASTER_LOG_POS(){return this.getToken(FC.MASTER_LOG_POS,0)}MASTER_PASSWORD(){return this.getToken(FC.MASTER_PASSWORD,0)}MASTER_PORT(){return this.getToken(FC.MASTER_PORT,0)}MASTER_RETRY_COUNT(){return this.getToken(FC.MASTER_RETRY_COUNT,0)}MASTER_SSL(){return this.getToken(FC.MASTER_SSL,0)}MASTER_SSL_CA(){return this.getToken(FC.MASTER_SSL_CA,0)}MASTER_SSL_CAPATH(){return this.getToken(FC.MASTER_SSL_CAPATH,0)}MASTER_SSL_CERT(){return this.getToken(FC.MASTER_SSL_CERT,0)}MASTER_SSL_CIPHER(){return this.getToken(FC.MASTER_SSL_CIPHER,0)}MASTER_SSL_CRL(){return this.getToken(FC.MASTER_SSL_CRL,0)}MASTER_SSL_CRLPATH(){return this.getToken(FC.MASTER_SSL_CRLPATH,0)}MASTER_SSL_KEY(){return this.getToken(FC.MASTER_SSL_KEY,0)}MASTER_TLS_VERSION(){return this.getToken(FC.MASTER_TLS_VERSION,0)}MASTER_USER(){return this.getToken(FC.MASTER_USER,0)}MAX_CONNECTIONS_PER_HOUR(){return this.getToken(FC.MAX_CONNECTIONS_PER_HOUR,0)}MAX_QUERIES_PER_HOUR(){return this.getToken(FC.MAX_QUERIES_PER_HOUR,0)}MAX(){return this.getToken(FC.MAX,0)}MAX_ROWS(){return this.getToken(FC.MAX_ROWS,0)}MAX_SIZE(){return this.getToken(FC.MAX_SIZE,0)}MAX_UPDATES_PER_HOUR(){return this.getToken(FC.MAX_UPDATES_PER_HOUR,0)}MAX_USER_CONNECTIONS(){return this.getToken(FC.MAX_USER_CONNECTIONS,0)}MEDIUM(){return this.getToken(FC.MEDIUM,0)}MEMBER(){return this.getToken(FC.MEMBER,0)}MEMORY(){return this.getToken(FC.MEMORY,0)}MERGE(){return this.getToken(FC.MERGE,0)}MESSAGE_TEXT(){return this.getToken(FC.MESSAGE_TEXT,0)}MID(){return this.getToken(FC.MID,0)}MIGRATE(){return this.getToken(FC.MIGRATE,0)}MIN(){return this.getToken(FC.MIN,0)}MIN_ROWS(){return this.getToken(FC.MIN_ROWS,0)}MODE(){return this.getToken(FC.MODE,0)}MODIFY(){return this.getToken(FC.MODIFY,0)}MUTEX(){return this.getToken(FC.MUTEX,0)}MYSQL(){return this.getToken(FC.MYSQL,0)}MYSQL_ERRNO(){return this.getToken(FC.MYSQL_ERRNO,0)}NAME(){return this.getToken(FC.NAME,0)}NAMES(){return this.getToken(FC.NAMES,0)}NCHAR(){return this.getToken(FC.NCHAR,0)}NDB_STORED_USER(){return this.getToken(FC.NDB_STORED_USER,0)}NESTED(){return this.getToken(FC.NESTED,0)}NEVER(){return this.getToken(FC.NEVER,0)}NEXT(){return this.getToken(FC.NEXT,0)}NO(){return this.getToken(FC.NO,0)}NOCOPY(){return this.getToken(FC.NOCOPY,0)}NODEGROUP(){return this.getToken(FC.NODEGROUP,0)}NONE(){return this.getToken(FC.NONE,0)}NOWAIT(){return this.getToken(FC.NOWAIT,0)}NUMBER(){return this.getToken(FC.NUMBER,0)}ODBC(){return this.getToken(FC.ODBC,0)}OFFLINE(){return this.getToken(FC.OFFLINE,0)}OFFSET(){return this.getToken(FC.OFFSET,0)}OF(){return this.getToken(FC.OF,0)}OJ(){return this.getToken(FC.OJ,0)}OLD_PASSWORD(){return this.getToken(FC.OLD_PASSWORD,0)}ONE(){return this.getToken(FC.ONE,0)}ONLINE(){return this.getToken(FC.ONLINE,0)}ONLY(){return this.getToken(FC.ONLY,0)}OPEN(){return this.getToken(FC.OPEN,0)}OPTIMIZER_COSTS(){return this.getToken(FC.OPTIMIZER_COSTS,0)}OPTIONAL(){return this.getToken(FC.OPTIONAL,0)}OPTIONS(){return this.getToken(FC.OPTIONS,0)}ORDER(){return this.getToken(FC.ORDER,0)}ORDINALITY(){return this.getToken(FC.ORDINALITY,0)}OWNER(){return this.getToken(FC.OWNER,0)}PACK_KEYS(){return this.getToken(FC.PACK_KEYS,0)}PAGE(){return this.getToken(FC.PAGE,0)}PARSER(){return this.getToken(FC.PARSER,0)}PARTIAL(){return this.getToken(FC.PARTIAL,0)}PARTITIONING(){return this.getToken(FC.PARTITIONING,0)}PARTITIONS(){return this.getToken(FC.PARTITIONS,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}PASSWORDLESS_USER_ADMIN(){return this.getToken(FC.PASSWORDLESS_USER_ADMIN,0)}PASSWORD_LOCK_TIME(){return this.getToken(FC.PASSWORD_LOCK_TIME,0)}PATH(){return this.getToken(FC.PATH,0)}PERSIST_RO_VARIABLES_ADMIN(){return this.getToken(FC.PERSIST_RO_VARIABLES_ADMIN,0)}PHASE(){return this.getToken(FC.PHASE,0)}PLUGINS(){return this.getToken(FC.PLUGINS,0)}PLUGIN_DIR(){return this.getToken(FC.PLUGIN_DIR,0)}PLUGIN(){return this.getToken(FC.PLUGIN,0)}PORT(){return this.getToken(FC.PORT,0)}PRECEDES(){return this.getToken(FC.PRECEDES,0)}PREPARE(){return this.getToken(FC.PREPARE,0)}PRESERVE(){return this.getToken(FC.PRESERVE,0)}PREV(){return this.getToken(FC.PREV,0)}PRIMARY(){return this.getToken(FC.PRIMARY,0)}PROCESSLIST(){return this.getToken(FC.PROCESSLIST,0)}PROFILE(){return this.getToken(FC.PROFILE,0)}PROFILES(){return this.getToken(FC.PROFILES,0)}PROXY(){return this.getToken(FC.PROXY,0)}QUERY(){return this.getToken(FC.QUERY,0)}QUICK(){return this.getToken(FC.QUICK,0)}REBUILD(){return this.getToken(FC.REBUILD,0)}RECOVER(){return this.getToken(FC.RECOVER,0)}RECURSIVE(){return this.getToken(FC.RECURSIVE,0)}REDO_BUFFER_SIZE(){return this.getToken(FC.REDO_BUFFER_SIZE,0)}REDUNDANT(){return this.getToken(FC.REDUNDANT,0)}RELAY(){return this.getToken(FC.RELAY,0)}RELAYLOG(){return this.getToken(FC.RELAYLOG,0)}RELAY_LOG_FILE(){return this.getToken(FC.RELAY_LOG_FILE,0)}RELAY_LOG_POS(){return this.getToken(FC.RELAY_LOG_POS,0)}REMOVE(){return this.getToken(FC.REMOVE,0)}REORGANIZE(){return this.getToken(FC.REORGANIZE,0)}REPAIR(){return this.getToken(FC.REPAIR,0)}REPLICATE_DO_DB(){return this.getToken(FC.REPLICATE_DO_DB,0)}REPLICATE_DO_TABLE(){return this.getToken(FC.REPLICATE_DO_TABLE,0)}REPLICATE_IGNORE_DB(){return this.getToken(FC.REPLICATE_IGNORE_DB,0)}REPLICATE_IGNORE_TABLE(){return this.getToken(FC.REPLICATE_IGNORE_TABLE,0)}REPLICATE_REWRITE_DB(){return this.getToken(FC.REPLICATE_REWRITE_DB,0)}REPLICATE_WILD_DO_TABLE(){return this.getToken(FC.REPLICATE_WILD_DO_TABLE,0)}REPLICATE_WILD_IGNORE_TABLE(){return this.getToken(FC.REPLICATE_WILD_IGNORE_TABLE,0)}REPLICATION(){return this.getToken(FC.REPLICATION,0)}REPLICATION_APPLIER(){return this.getToken(FC.REPLICATION_APPLIER,0)}REPLICATION_SLAVE_ADMIN(){return this.getToken(FC.REPLICATION_SLAVE_ADMIN,0)}RESET(){return this.getToken(FC.RESET,0)}RESOURCE_GROUP_ADMIN(){return this.getToken(FC.RESOURCE_GROUP_ADMIN,0)}RESOURCE_GROUP_USER(){return this.getToken(FC.RESOURCE_GROUP_USER,0)}RESUME(){return this.getToken(FC.RESUME,0)}RETURNED_SQLSTATE(){return this.getToken(FC.RETURNED_SQLSTATE,0)}RETURNS(){return this.getToken(FC.RETURNS,0)}REUSE(){return this.getToken(FC.REUSE,0)}ROLE(){return this.getToken(FC.ROLE,0)}ROLE_ADMIN(){return this.getToken(FC.ROLE_ADMIN,0)}ROLLBACK(){return this.getToken(FC.ROLLBACK,0)}ROLLUP(){return this.getToken(FC.ROLLUP,0)}ROTATE(){return this.getToken(FC.ROTATE,0)}ROW(){return this.getToken(FC.ROW,0)}ROWS(){return this.getToken(FC.ROWS,0)}ROW_FORMAT(){return this.getToken(FC.ROW_FORMAT,0)}RTREE(){return this.getToken(FC.RTREE,0)}S3(){return this.getToken(FC.S3,0)}SAVEPOINT(){return this.getToken(FC.SAVEPOINT,0)}SCHEDULE(){return this.getToken(FC.SCHEDULE,0)}SCHEMA_NAME(){return this.getToken(FC.SCHEMA_NAME,0)}SECURITY(){return this.getToken(FC.SECURITY,0)}SECONDARY_ENGINE_ATTRIBUTE(){return this.getToken(FC.SECONDARY_ENGINE_ATTRIBUTE,0)}SERIAL(){return this.getToken(FC.SERIAL,0)}SERVER(){return this.getToken(FC.SERVER,0)}SESSION(){return this.getToken(FC.SESSION,0)}SESSION_VARIABLES_ADMIN(){return this.getToken(FC.SESSION_VARIABLES_ADMIN,0)}SET_USER_ID(){return this.getToken(FC.SET_USER_ID,0)}SHARE(){return this.getToken(FC.SHARE,0)}SHARED(){return this.getToken(FC.SHARED,0)}SHOW_ROUTINE(){return this.getToken(FC.SHOW_ROUTINE,0)}SIGNED(){return this.getToken(FC.SIGNED,0)}SIMPLE(){return this.getToken(FC.SIMPLE,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}SLOW(){return this.getToken(FC.SLOW,0)}SKIP_QUERY_REWRITE(){return this.getToken(FC.SKIP_QUERY_REWRITE,0)}SNAPSHOT(){return this.getToken(FC.SNAPSHOT,0)}SOCKET(){return this.getToken(FC.SOCKET,0)}SOME(){return this.getToken(FC.SOME,0)}SONAME(){return this.getToken(FC.SONAME,0)}SOUNDS(){return this.getToken(FC.SOUNDS,0)}SOURCE(){return this.getToken(FC.SOURCE,0)}SQL_AFTER_GTIDS(){return this.getToken(FC.SQL_AFTER_GTIDS,0)}SQL_AFTER_MTS_GAPS(){return this.getToken(FC.SQL_AFTER_MTS_GAPS,0)}SQL_BEFORE_GTIDS(){return this.getToken(FC.SQL_BEFORE_GTIDS,0)}SQL_BUFFER_RESULT(){return this.getToken(FC.SQL_BUFFER_RESULT,0)}SQL_CACHE(){return this.getToken(FC.SQL_CACHE,0)}SQL_NO_CACHE(){return this.getToken(FC.SQL_NO_CACHE,0)}SQL_THREAD(){return this.getToken(FC.SQL_THREAD,0)}STACKED(){return this.getToken(FC.STACKED,0)}START(){return this.getToken(FC.START,0)}STARTS(){return this.getToken(FC.STARTS,0)}STATS_AUTO_RECALC(){return this.getToken(FC.STATS_AUTO_RECALC,0)}STATS_PERSISTENT(){return this.getToken(FC.STATS_PERSISTENT,0)}STATS_SAMPLE_PAGES(){return this.getToken(FC.STATS_SAMPLE_PAGES,0)}STATUS(){return this.getToken(FC.STATUS,0)}STD(){return this.getToken(FC.STD,0)}STDDEV(){return this.getToken(FC.STDDEV,0)}STDDEV_POP(){return this.getToken(FC.STDDEV_POP,0)}STDDEV_SAMP(){return this.getToken(FC.STDDEV_SAMP,0)}STOP(){return this.getToken(FC.STOP,0)}STORAGE(){return this.getToken(FC.STORAGE,0)}STRING(){return this.getToken(FC.STRING,0)}SUBCLASS_ORIGIN(){return this.getToken(FC.SUBCLASS_ORIGIN,0)}SUBJECT(){return this.getToken(FC.SUBJECT,0)}SUBPARTITION(){return this.getToken(FC.SUBPARTITION,0)}SUBPARTITIONS(){return this.getToken(FC.SUBPARTITIONS,0)}SUM(){return this.getToken(FC.SUM,0)}SUSPEND(){return this.getToken(FC.SUSPEND,0)}SWAPS(){return this.getToken(FC.SWAPS,0)}SWITCHES(){return this.getToken(FC.SWITCHES,0)}SYSTEM_VARIABLES_ADMIN(){return this.getToken(FC.SYSTEM_VARIABLES_ADMIN,0)}TABLE_NAME(){return this.getToken(FC.TABLE_NAME,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}TABLE_ENCRYPTION_ADMIN(){return this.getToken(FC.TABLE_ENCRYPTION_ADMIN,0)}TABLE_TYPE(){return this.getToken(FC.TABLE_TYPE,0)}TEMPORARY(){return this.getToken(FC.TEMPORARY,0)}TEMPTABLE(){return this.getToken(FC.TEMPTABLE,0)}THAN(){return this.getToken(FC.THAN,0)}TP_CONNECTION_ADMIN(){return this.getToken(FC.TP_CONNECTION_ADMIN,0)}TRADITIONAL(){return this.getToken(FC.TRADITIONAL,0)}TRANSACTION(){return this.getToken(FC.TRANSACTION,0)}TRANSACTIONAL(){return this.getToken(FC.TRANSACTIONAL,0)}TRIGGERS(){return this.getToken(FC.TRIGGERS,0)}TRUNCATE(){return this.getToken(FC.TRUNCATE,0)}UNBOUNDED(){return this.getToken(FC.UNBOUNDED,0)}UNDEFINED(){return this.getToken(FC.UNDEFINED,0)}UNDOFILE(){return this.getToken(FC.UNDOFILE,0)}UNDO_BUFFER_SIZE(){return this.getToken(FC.UNDO_BUFFER_SIZE,0)}UNINSTALL(){return this.getToken(FC.UNINSTALL,0)}UNKNOWN(){return this.getToken(FC.UNKNOWN,0)}UNTIL(){return this.getToken(FC.UNTIL,0)}UPGRADE(){return this.getToken(FC.UPGRADE,0)}USA(){return this.getToken(FC.USA,0)}USER(){return this.getToken(FC.USER,0)}USE_FRM(){return this.getToken(FC.USE_FRM,0)}USER_RESOURCES(){return this.getToken(FC.USER_RESOURCES,0)}VALIDATION(){return this.getToken(FC.VALIDATION,0)}VALUE(){return this.getToken(FC.VALUE,0)}VAR_POP(){return this.getToken(FC.VAR_POP,0)}VAR_SAMP(){return this.getToken(FC.VAR_SAMP,0)}VARIABLES(){return this.getToken(FC.VARIABLES,0)}VARIANCE(){return this.getToken(FC.VARIANCE,0)}VERSION_TOKEN_ADMIN(){return this.getToken(FC.VERSION_TOKEN_ADMIN,0)}VIEW(){return this.getToken(FC.VIEW,0)}VIRTUAL(){return this.getToken(FC.VIRTUAL,0)}WAIT(){return this.getToken(FC.WAIT,0)}WARNINGS(){return this.getToken(FC.WARNINGS,0)}WITHOUT(){return this.getToken(FC.WITHOUT,0)}WORK(){return this.getToken(FC.WORK,0)}WRAPPER(){return this.getToken(FC.WRAPPER,0)}X509(){return this.getToken(FC.X509,0)}XA(){return this.getToken(FC.XA,0)}XA_RECOVER_ADMIN(){return this.getToken(FC.XA_RECOVER_ADMIN,0)}XML(){return this.getToken(FC.XML,0)}get ruleIndex(){return FC.RULE_keywordsCanBeId}accept(t){return t.visitKeywordsCanBeId?t.visitKeywordsCanBeId(this):t.visitChildren(this)}},oG=class extends ga{constructor(t,e){super(t,e)}ABS(){return this.getToken(FC.ABS,0)}ACOS(){return this.getToken(FC.ACOS,0)}ADDDATE(){return this.getToken(FC.ADDDATE,0)}ADDTIME(){return this.getToken(FC.ADDTIME,0)}AES_DECRYPT(){return this.getToken(FC.AES_DECRYPT,0)}AES_ENCRYPT(){return this.getToken(FC.AES_ENCRYPT,0)}AREA(){return this.getToken(FC.AREA,0)}ASBINARY(){return this.getToken(FC.ASBINARY,0)}ASIN(){return this.getToken(FC.ASIN,0)}ASTEXT(){return this.getToken(FC.ASTEXT,0)}ASWKB(){return this.getToken(FC.ASWKB,0)}ASWKT(){return this.getToken(FC.ASWKT,0)}ASYMMETRIC_DECRYPT(){return this.getToken(FC.ASYMMETRIC_DECRYPT,0)}ASYMMETRIC_DERIVE(){return this.getToken(FC.ASYMMETRIC_DERIVE,0)}ASYMMETRIC_ENCRYPT(){return this.getToken(FC.ASYMMETRIC_ENCRYPT,0)}ASYMMETRIC_SIGN(){return this.getToken(FC.ASYMMETRIC_SIGN,0)}ASYMMETRIC_VERIFY(){return this.getToken(FC.ASYMMETRIC_VERIFY,0)}ATAN(){return this.getToken(FC.ATAN,0)}ATAN2(){return this.getToken(FC.ATAN2,0)}BENCHMARK(){return this.getToken(FC.BENCHMARK,0)}BIN(){return this.getToken(FC.BIN,0)}BIT_COUNT(){return this.getToken(FC.BIT_COUNT,0)}BIT_LENGTH(){return this.getToken(FC.BIT_LENGTH,0)}BUFFER(){return this.getToken(FC.BUFFER,0)}CEIL(){return this.getToken(FC.CEIL,0)}CEILING(){return this.getToken(FC.CEILING,0)}CENTROID(){return this.getToken(FC.CENTROID,0)}CHARACTER_LENGTH(){return this.getToken(FC.CHARACTER_LENGTH,0)}CHARSET(){return this.getToken(FC.CHARSET,0)}CHAR_LENGTH(){return this.getToken(FC.CHAR_LENGTH,0)}COERCIBILITY(){return this.getToken(FC.COERCIBILITY,0)}COLLATION(){return this.getToken(FC.COLLATION,0)}COMPRESS(){return this.getToken(FC.COMPRESS,0)}CONCAT(){return this.getToken(FC.CONCAT,0)}CONCAT_WS(){return this.getToken(FC.CONCAT_WS,0)}CONNECTION_ID(){return this.getToken(FC.CONNECTION_ID,0)}CONV(){return this.getToken(FC.CONV,0)}CONVERT_TZ(){return this.getToken(FC.CONVERT_TZ,0)}COS(){return this.getToken(FC.COS,0)}COT(){return this.getToken(FC.COT,0)}COUNT(){return this.getToken(FC.COUNT,0)}CRC32(){return this.getToken(FC.CRC32,0)}CREATE_ASYMMETRIC_PRIV_KEY(){return this.getToken(FC.CREATE_ASYMMETRIC_PRIV_KEY,0)}CREATE_ASYMMETRIC_PUB_KEY(){return this.getToken(FC.CREATE_ASYMMETRIC_PUB_KEY,0)}CREATE_DH_PARAMETERS(){return this.getToken(FC.CREATE_DH_PARAMETERS,0)}CREATE_DIGEST(){return this.getToken(FC.CREATE_DIGEST,0)}CROSSES(){return this.getToken(FC.CROSSES,0)}CUME_DIST(){return this.getToken(FC.CUME_DIST,0)}DATABASE(){return this.getToken(FC.DATABASE,0)}DATE(){return this.getToken(FC.DATE,0)}DATEDIFF(){return this.getToken(FC.DATEDIFF,0)}DATE_FORMAT(){return this.getToken(FC.DATE_FORMAT,0)}DAY(){return this.getToken(FC.DAY,0)}DAYNAME(){return this.getToken(FC.DAYNAME,0)}DAYOFMONTH(){return this.getToken(FC.DAYOFMONTH,0)}DAYOFWEEK(){return this.getToken(FC.DAYOFWEEK,0)}DAYOFYEAR(){return this.getToken(FC.DAYOFYEAR,0)}DECODE(){return this.getToken(FC.DECODE,0)}DEGREES(){return this.getToken(FC.DEGREES,0)}DENSE_RANK(){return this.getToken(FC.DENSE_RANK,0)}DES_DECRYPT(){return this.getToken(FC.DES_DECRYPT,0)}DES_ENCRYPT(){return this.getToken(FC.DES_ENCRYPT,0)}DIMENSION(){return this.getToken(FC.DIMENSION,0)}DISJOINT(){return this.getToken(FC.DISJOINT,0)}ELT(){return this.getToken(FC.ELT,0)}ENCODE(){return this.getToken(FC.ENCODE,0)}ENCRYPT(){return this.getToken(FC.ENCRYPT,0)}ENDPOINT(){return this.getToken(FC.ENDPOINT,0)}ENVELOPE(){return this.getToken(FC.ENVELOPE,0)}EQUALS(){return this.getToken(FC.EQUALS,0)}EXP(){return this.getToken(FC.EXP,0)}EXPORT_SET(){return this.getToken(FC.EXPORT_SET,0)}EXTERIORRING(){return this.getToken(FC.EXTERIORRING,0)}EXTRACTVALUE(){return this.getToken(FC.EXTRACTVALUE,0)}FIELD(){return this.getToken(FC.FIELD,0)}FIND_IN_SET(){return this.getToken(FC.FIND_IN_SET,0)}FIRST_VALUE(){return this.getToken(FC.FIRST_VALUE,0)}FLOOR(){return this.getToken(FC.FLOOR,0)}FORMAT(){return this.getToken(FC.FORMAT,0)}FOUND_ROWS(){return this.getToken(FC.FOUND_ROWS,0)}FROM_BASE64(){return this.getToken(FC.FROM_BASE64,0)}FROM_DAYS(){return this.getToken(FC.FROM_DAYS,0)}FROM_UNIXTIME(){return this.getToken(FC.FROM_UNIXTIME,0)}GEOMCOLLFROMTEXT(){return this.getToken(FC.GEOMCOLLFROMTEXT,0)}GEOMCOLLFROMWKB(){return this.getToken(FC.GEOMCOLLFROMWKB,0)}GEOMETRYCOLLECTION(){return this.getToken(FC.GEOMETRYCOLLECTION,0)}GEOMETRYCOLLECTIONFROMTEXT(){return this.getToken(FC.GEOMETRYCOLLECTIONFROMTEXT,0)}GEOMETRYCOLLECTIONFROMWKB(){return this.getToken(FC.GEOMETRYCOLLECTIONFROMWKB,0)}GEOMETRYFROMTEXT(){return this.getToken(FC.GEOMETRYFROMTEXT,0)}GEOMETRYFROMWKB(){return this.getToken(FC.GEOMETRYFROMWKB,0)}GEOMETRYN(){return this.getToken(FC.GEOMETRYN,0)}GEOMETRYTYPE(){return this.getToken(FC.GEOMETRYTYPE,0)}GEOMFROMTEXT(){return this.getToken(FC.GEOMFROMTEXT,0)}GEOMFROMWKB(){return this.getToken(FC.GEOMFROMWKB,0)}GET_FORMAT(){return this.getToken(FC.GET_FORMAT,0)}GET_LOCK(){return this.getToken(FC.GET_LOCK,0)}GLENGTH(){return this.getToken(FC.GLENGTH,0)}GREATEST(){return this.getToken(FC.GREATEST,0)}GTID_SUBSET(){return this.getToken(FC.GTID_SUBSET,0)}GTID_SUBTRACT(){return this.getToken(FC.GTID_SUBTRACT,0)}HEX(){return this.getToken(FC.HEX,0)}HOUR(){return this.getToken(FC.HOUR,0)}IFNULL(){return this.getToken(FC.IFNULL,0)}INET6_ATON(){return this.getToken(FC.INET6_ATON,0)}INET6_NTOA(){return this.getToken(FC.INET6_NTOA,0)}INET_ATON(){return this.getToken(FC.INET_ATON,0)}INET_NTOA(){return this.getToken(FC.INET_NTOA,0)}INSTR(){return this.getToken(FC.INSTR,0)}INTERIORRINGN(){return this.getToken(FC.INTERIORRINGN,0)}INTERSECTS(){return this.getToken(FC.INTERSECTS,0)}INVISIBLE(){return this.getToken(FC.INVISIBLE,0)}ISCLOSED(){return this.getToken(FC.ISCLOSED,0)}ISEMPTY(){return this.getToken(FC.ISEMPTY,0)}ISNULL(){return this.getToken(FC.ISNULL,0)}ISSIMPLE(){return this.getToken(FC.ISSIMPLE,0)}IS_FREE_LOCK(){return this.getToken(FC.IS_FREE_LOCK,0)}IS_IPV4(){return this.getToken(FC.IS_IPV4,0)}IS_IPV4_COMPAT(){return this.getToken(FC.IS_IPV4_COMPAT,0)}IS_IPV4_MAPPED(){return this.getToken(FC.IS_IPV4_MAPPED,0)}IS_IPV6(){return this.getToken(FC.IS_IPV6,0)}IS_USED_LOCK(){return this.getToken(FC.IS_USED_LOCK,0)}LAG(){return this.getToken(FC.LAG,0)}LAST_INSERT_ID(){return this.getToken(FC.LAST_INSERT_ID,0)}LAST_VALUE(){return this.getToken(FC.LAST_VALUE,0)}LCASE(){return this.getToken(FC.LCASE,0)}LEAD(){return this.getToken(FC.LEAD,0)}LEAST(){return this.getToken(FC.LEAST,0)}LEFT(){return this.getToken(FC.LEFT,0)}LENGTH(){return this.getToken(FC.LENGTH,0)}LINEFROMTEXT(){return this.getToken(FC.LINEFROMTEXT,0)}LINEFROMWKB(){return this.getToken(FC.LINEFROMWKB,0)}LINESTRING(){return this.getToken(FC.LINESTRING,0)}LINESTRINGFROMTEXT(){return this.getToken(FC.LINESTRINGFROMTEXT,0)}LINESTRINGFROMWKB(){return this.getToken(FC.LINESTRINGFROMWKB,0)}LN(){return this.getToken(FC.LN,0)}LOAD_FILE(){return this.getToken(FC.LOAD_FILE,0)}LOCATE(){return this.getToken(FC.LOCATE,0)}LOG(){return this.getToken(FC.LOG,0)}LOG10(){return this.getToken(FC.LOG10,0)}LOG2(){return this.getToken(FC.LOG2,0)}LOWER(){return this.getToken(FC.LOWER,0)}LPAD(){return this.getToken(FC.LPAD,0)}LTRIM(){return this.getToken(FC.LTRIM,0)}MAKEDATE(){return this.getToken(FC.MAKEDATE,0)}MAKETIME(){return this.getToken(FC.MAKETIME,0)}MAKE_SET(){return this.getToken(FC.MAKE_SET,0)}MASTER_POS_WAIT(){return this.getToken(FC.MASTER_POS_WAIT,0)}MBRCONTAINS(){return this.getToken(FC.MBRCONTAINS,0)}MBRDISJOINT(){return this.getToken(FC.MBRDISJOINT,0)}MBREQUAL(){return this.getToken(FC.MBREQUAL,0)}MBRINTERSECTS(){return this.getToken(FC.MBRINTERSECTS,0)}MBROVERLAPS(){return this.getToken(FC.MBROVERLAPS,0)}MBRTOUCHES(){return this.getToken(FC.MBRTOUCHES,0)}MBRWITHIN(){return this.getToken(FC.MBRWITHIN,0)}MD5(){return this.getToken(FC.MD5,0)}MICROSECOND(){return this.getToken(FC.MICROSECOND,0)}MINUTE(){return this.getToken(FC.MINUTE,0)}MLINEFROMTEXT(){return this.getToken(FC.MLINEFROMTEXT,0)}MLINEFROMWKB(){return this.getToken(FC.MLINEFROMWKB,0)}MOD(){return this.getToken(FC.MOD,0)}MONTH(){return this.getToken(FC.MONTH,0)}MONTHNAME(){return this.getToken(FC.MONTHNAME,0)}MPOINTFROMTEXT(){return this.getToken(FC.MPOINTFROMTEXT,0)}MPOINTFROMWKB(){return this.getToken(FC.MPOINTFROMWKB,0)}MPOLYFROMTEXT(){return this.getToken(FC.MPOLYFROMTEXT,0)}MPOLYFROMWKB(){return this.getToken(FC.MPOLYFROMWKB,0)}MULTILINESTRING(){return this.getToken(FC.MULTILINESTRING,0)}MULTILINESTRINGFROMTEXT(){return this.getToken(FC.MULTILINESTRINGFROMTEXT,0)}MULTILINESTRINGFROMWKB(){return this.getToken(FC.MULTILINESTRINGFROMWKB,0)}MULTIPOINT(){return this.getToken(FC.MULTIPOINT,0)}MULTIPOINTFROMTEXT(){return this.getToken(FC.MULTIPOINTFROMTEXT,0)}MULTIPOINTFROMWKB(){return this.getToken(FC.MULTIPOINTFROMWKB,0)}MULTIPOLYGON(){return this.getToken(FC.MULTIPOLYGON,0)}MULTIPOLYGONFROMTEXT(){return this.getToken(FC.MULTIPOLYGONFROMTEXT,0)}MULTIPOLYGONFROMWKB(){return this.getToken(FC.MULTIPOLYGONFROMWKB,0)}NAME_CONST(){return this.getToken(FC.NAME_CONST,0)}NTH_VALUE(){return this.getToken(FC.NTH_VALUE,0)}NTILE(){return this.getToken(FC.NTILE,0)}NULLIF(){return this.getToken(FC.NULLIF,0)}NUMGEOMETRIES(){return this.getToken(FC.NUMGEOMETRIES,0)}NUMINTERIORRINGS(){return this.getToken(FC.NUMINTERIORRINGS,0)}NUMPOINTS(){return this.getToken(FC.NUMPOINTS,0)}OCT(){return this.getToken(FC.OCT,0)}OCTET_LENGTH(){return this.getToken(FC.OCTET_LENGTH,0)}ORD(){return this.getToken(FC.ORD,0)}OVERLAPS(){return this.getToken(FC.OVERLAPS,0)}PERCENT_RANK(){return this.getToken(FC.PERCENT_RANK,0)}PERIOD_ADD(){return this.getToken(FC.PERIOD_ADD,0)}PERIOD_DIFF(){return this.getToken(FC.PERIOD_DIFF,0)}PI(){return this.getToken(FC.PI,0)}POINT(){return this.getToken(FC.POINT,0)}POINTFROMTEXT(){return this.getToken(FC.POINTFROMTEXT,0)}POINTFROMWKB(){return this.getToken(FC.POINTFROMWKB,0)}POINTN(){return this.getToken(FC.POINTN,0)}POLYFROMTEXT(){return this.getToken(FC.POLYFROMTEXT,0)}POLYFROMWKB(){return this.getToken(FC.POLYFROMWKB,0)}POLYGON(){return this.getToken(FC.POLYGON,0)}POLYGONFROMTEXT(){return this.getToken(FC.POLYGONFROMTEXT,0)}POLYGONFROMWKB(){return this.getToken(FC.POLYGONFROMWKB,0)}POSITION(){return this.getToken(FC.POSITION,0)}POW(){return this.getToken(FC.POW,0)}POWER(){return this.getToken(FC.POWER,0)}QUARTER(){return this.getToken(FC.QUARTER,0)}QUOTE(){return this.getToken(FC.QUOTE,0)}RADIANS(){return this.getToken(FC.RADIANS,0)}RAND(){return this.getToken(FC.RAND,0)}RANDOM(){return this.getToken(FC.RANDOM,0)}RANK(){return this.getToken(FC.RANK,0)}RANDOM_BYTES(){return this.getToken(FC.RANDOM_BYTES,0)}RELEASE_LOCK(){return this.getToken(FC.RELEASE_LOCK,0)}REVERSE(){return this.getToken(FC.REVERSE,0)}RIGHT(){return this.getToken(FC.RIGHT,0)}ROUND(){return this.getToken(FC.ROUND,0)}ROW_COUNT(){return this.getToken(FC.ROW_COUNT,0)}ROW_NUMBER(){return this.getToken(FC.ROW_NUMBER,0)}RPAD(){return this.getToken(FC.RPAD,0)}RTRIM(){return this.getToken(FC.RTRIM,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}SECOND(){return this.getToken(FC.SECOND,0)}SEC_TO_TIME(){return this.getToken(FC.SEC_TO_TIME,0)}SESSION_USER(){return this.getToken(FC.SESSION_USER,0)}SESSION_VARIABLES_ADMIN(){return this.getToken(FC.SESSION_VARIABLES_ADMIN,0)}SHA(){return this.getToken(FC.SHA,0)}SHA1(){return this.getToken(FC.SHA1,0)}SHA2(){return this.getToken(FC.SHA2,0)}SIGN(){return this.getToken(FC.SIGN,0)}SIN(){return this.getToken(FC.SIN,0)}SLEEP(){return this.getToken(FC.SLEEP,0)}SOUNDEX(){return this.getToken(FC.SOUNDEX,0)}SQL_THREAD_WAIT_AFTER_GTIDS(){return this.getToken(FC.SQL_THREAD_WAIT_AFTER_GTIDS,0)}SQRT(){return this.getToken(FC.SQRT,0)}SRID(){return this.getToken(FC.SRID,0)}STARTPOINT(){return this.getToken(FC.STARTPOINT,0)}STRCMP(){return this.getToken(FC.STRCMP,0)}STR_TO_DATE(){return this.getToken(FC.STR_TO_DATE,0)}ST_AREA(){return this.getToken(FC.ST_AREA,0)}ST_ASBINARY(){return this.getToken(FC.ST_ASBINARY,0)}ST_ASTEXT(){return this.getToken(FC.ST_ASTEXT,0)}ST_ASWKB(){return this.getToken(FC.ST_ASWKB,0)}ST_ASWKT(){return this.getToken(FC.ST_ASWKT,0)}ST_BUFFER(){return this.getToken(FC.ST_BUFFER,0)}ST_CENTROID(){return this.getToken(FC.ST_CENTROID,0)}ST_CONTAINS(){return this.getToken(FC.ST_CONTAINS,0)}ST_CROSSES(){return this.getToken(FC.ST_CROSSES,0)}ST_DIFFERENCE(){return this.getToken(FC.ST_DIFFERENCE,0)}ST_DIMENSION(){return this.getToken(FC.ST_DIMENSION,0)}ST_DISJOINT(){return this.getToken(FC.ST_DISJOINT,0)}ST_DISTANCE(){return this.getToken(FC.ST_DISTANCE,0)}ST_ENDPOINT(){return this.getToken(FC.ST_ENDPOINT,0)}ST_ENVELOPE(){return this.getToken(FC.ST_ENVELOPE,0)}ST_EQUALS(){return this.getToken(FC.ST_EQUALS,0)}ST_EXTERIORRING(){return this.getToken(FC.ST_EXTERIORRING,0)}ST_GEOMCOLLFROMTEXT(){return this.getToken(FC.ST_GEOMCOLLFROMTEXT,0)}ST_GEOMCOLLFROMTXT(){return this.getToken(FC.ST_GEOMCOLLFROMTXT,0)}ST_GEOMCOLLFROMWKB(){return this.getToken(FC.ST_GEOMCOLLFROMWKB,0)}ST_GEOMETRYCOLLECTIONFROMTEXT(){return this.getToken(FC.ST_GEOMETRYCOLLECTIONFROMTEXT,0)}ST_GEOMETRYCOLLECTIONFROMWKB(){return this.getToken(FC.ST_GEOMETRYCOLLECTIONFROMWKB,0)}ST_GEOMETRYFROMTEXT(){return this.getToken(FC.ST_GEOMETRYFROMTEXT,0)}ST_GEOMETRYFROMWKB(){return this.getToken(FC.ST_GEOMETRYFROMWKB,0)}ST_GEOMETRYN(){return this.getToken(FC.ST_GEOMETRYN,0)}ST_GEOMETRYTYPE(){return this.getToken(FC.ST_GEOMETRYTYPE,0)}ST_GEOMFROMTEXT(){return this.getToken(FC.ST_GEOMFROMTEXT,0)}ST_GEOMFROMWKB(){return this.getToken(FC.ST_GEOMFROMWKB,0)}ST_INTERIORRINGN(){return this.getToken(FC.ST_INTERIORRINGN,0)}ST_INTERSECTION(){return this.getToken(FC.ST_INTERSECTION,0)}ST_INTERSECTS(){return this.getToken(FC.ST_INTERSECTS,0)}ST_ISCLOSED(){return this.getToken(FC.ST_ISCLOSED,0)}ST_ISEMPTY(){return this.getToken(FC.ST_ISEMPTY,0)}ST_ISSIMPLE(){return this.getToken(FC.ST_ISSIMPLE,0)}ST_LINEFROMTEXT(){return this.getToken(FC.ST_LINEFROMTEXT,0)}ST_LINEFROMWKB(){return this.getToken(FC.ST_LINEFROMWKB,0)}ST_LINESTRINGFROMTEXT(){return this.getToken(FC.ST_LINESTRINGFROMTEXT,0)}ST_LINESTRINGFROMWKB(){return this.getToken(FC.ST_LINESTRINGFROMWKB,0)}ST_NUMGEOMETRIES(){return this.getToken(FC.ST_NUMGEOMETRIES,0)}ST_NUMINTERIORRING(){return this.getToken(FC.ST_NUMINTERIORRING,0)}ST_NUMINTERIORRINGS(){return this.getToken(FC.ST_NUMINTERIORRINGS,0)}ST_NUMPOINTS(){return this.getToken(FC.ST_NUMPOINTS,0)}ST_OVERLAPS(){return this.getToken(FC.ST_OVERLAPS,0)}ST_POINTFROMTEXT(){return this.getToken(FC.ST_POINTFROMTEXT,0)}ST_POINTFROMWKB(){return this.getToken(FC.ST_POINTFROMWKB,0)}ST_POINTN(){return this.getToken(FC.ST_POINTN,0)}ST_POLYFROMTEXT(){return this.getToken(FC.ST_POLYFROMTEXT,0)}ST_POLYFROMWKB(){return this.getToken(FC.ST_POLYFROMWKB,0)}ST_POLYGONFROMTEXT(){return this.getToken(FC.ST_POLYGONFROMTEXT,0)}ST_POLYGONFROMWKB(){return this.getToken(FC.ST_POLYGONFROMWKB,0)}ST_SRID(){return this.getToken(FC.ST_SRID,0)}ST_STARTPOINT(){return this.getToken(FC.ST_STARTPOINT,0)}ST_SYMDIFFERENCE(){return this.getToken(FC.ST_SYMDIFFERENCE,0)}ST_TOUCHES(){return this.getToken(FC.ST_TOUCHES,0)}ST_UNION(){return this.getToken(FC.ST_UNION,0)}ST_WITHIN(){return this.getToken(FC.ST_WITHIN,0)}ST_X(){return this.getToken(FC.ST_X,0)}ST_Y(){return this.getToken(FC.ST_Y,0)}SUBDATE(){return this.getToken(FC.SUBDATE,0)}SUBSTRING_INDEX(){return this.getToken(FC.SUBSTRING_INDEX,0)}SUBTIME(){return this.getToken(FC.SUBTIME,0)}SYSTEM_USER(){return this.getToken(FC.SYSTEM_USER,0)}TAN(){return this.getToken(FC.TAN,0)}TIME(){return this.getToken(FC.TIME,0)}TIMEDIFF(){return this.getToken(FC.TIMEDIFF,0)}TIMESTAMP(){return this.getToken(FC.TIMESTAMP,0)}TIMESTAMPADD(){return this.getToken(FC.TIMESTAMPADD,0)}TIMESTAMPDIFF(){return this.getToken(FC.TIMESTAMPDIFF,0)}TIME_FORMAT(){return this.getToken(FC.TIME_FORMAT,0)}TIME_TO_SEC(){return this.getToken(FC.TIME_TO_SEC,0)}TOUCHES(){return this.getToken(FC.TOUCHES,0)}TO_BASE64(){return this.getToken(FC.TO_BASE64,0)}TO_DAYS(){return this.getToken(FC.TO_DAYS,0)}TO_SECONDS(){return this.getToken(FC.TO_SECONDS,0)}UCASE(){return this.getToken(FC.UCASE,0)}UNCOMPRESS(){return this.getToken(FC.UNCOMPRESS,0)}UNCOMPRESSED_LENGTH(){return this.getToken(FC.UNCOMPRESSED_LENGTH,0)}UNHEX(){return this.getToken(FC.UNHEX,0)}UNIX_TIMESTAMP(){return this.getToken(FC.UNIX_TIMESTAMP,0)}UPDATEXML(){return this.getToken(FC.UPDATEXML,0)}UPPER(){return this.getToken(FC.UPPER,0)}UUID(){return this.getToken(FC.UUID,0)}UUID_SHORT(){return this.getToken(FC.UUID_SHORT,0)}VALIDATE_PASSWORD_STRENGTH(){return this.getToken(FC.VALIDATE_PASSWORD_STRENGTH,0)}VERSION(){return this.getToken(FC.VERSION,0)}VISIBLE(){return this.getToken(FC.VISIBLE,0)}WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS(){return this.getToken(FC.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS,0)}WEEK(){return this.getToken(FC.WEEK,0)}WEEKDAY(){return this.getToken(FC.WEEKDAY,0)}WEEKOFYEAR(){return this.getToken(FC.WEEKOFYEAR,0)}WEIGHT_STRING(){return this.getToken(FC.WEIGHT_STRING,0)}WITHIN(){return this.getToken(FC.WITHIN,0)}YEAR(){return this.getToken(FC.YEAR,0)}YEARWEEK(){return this.getToken(FC.YEARWEEK,0)}Y_FUNCTION(){return this.getToken(FC.Y_FUNCTION,0)}X_FUNCTION(){return this.getToken(FC.X_FUNCTION,0)}JSON_ARRAY(){return this.getToken(FC.JSON_ARRAY,0)}JSON_OBJECT(){return this.getToken(FC.JSON_OBJECT,0)}JSON_QUOTE(){return this.getToken(FC.JSON_QUOTE,0)}JSON_CONTAINS(){return this.getToken(FC.JSON_CONTAINS,0)}JSON_CONTAINS_PATH(){return this.getToken(FC.JSON_CONTAINS_PATH,0)}JSON_EXTRACT(){return this.getToken(FC.JSON_EXTRACT,0)}JSON_KEYS(){return this.getToken(FC.JSON_KEYS,0)}JSON_OVERLAPS(){return this.getToken(FC.JSON_OVERLAPS,0)}JSON_SEARCH(){return this.getToken(FC.JSON_SEARCH,0)}JSON_VALUE(){return this.getToken(FC.JSON_VALUE,0)}JSON_ARRAY_APPEND(){return this.getToken(FC.JSON_ARRAY_APPEND,0)}JSON_ARRAY_INSERT(){return this.getToken(FC.JSON_ARRAY_INSERT,0)}JSON_INSERT(){return this.getToken(FC.JSON_INSERT,0)}JSON_MERGE(){return this.getToken(FC.JSON_MERGE,0)}JSON_MERGE_PATCH(){return this.getToken(FC.JSON_MERGE_PATCH,0)}JSON_MERGE_PRESERVE(){return this.getToken(FC.JSON_MERGE_PRESERVE,0)}JSON_REMOVE(){return this.getToken(FC.JSON_REMOVE,0)}JSON_REPLACE(){return this.getToken(FC.JSON_REPLACE,0)}JSON_SET(){return this.getToken(FC.JSON_SET,0)}JSON_UNQUOTE(){return this.getToken(FC.JSON_UNQUOTE,0)}JSON_DEPTH(){return this.getToken(FC.JSON_DEPTH,0)}JSON_LENGTH(){return this.getToken(FC.JSON_LENGTH,0)}JSON_TYPE(){return this.getToken(FC.JSON_TYPE,0)}JSON_VALID(){return this.getToken(FC.JSON_VALID,0)}JSON_TABLE(){return this.getToken(FC.JSON_TABLE,0)}JSON_SCHEMA_VALID(){return this.getToken(FC.JSON_SCHEMA_VALID,0)}JSON_SCHEMA_VALIDATION_REPORT(){return this.getToken(FC.JSON_SCHEMA_VALIDATION_REPORT,0)}JSON_PRETTY(){return this.getToken(FC.JSON_PRETTY,0)}JSON_STORAGE_FREE(){return this.getToken(FC.JSON_STORAGE_FREE,0)}JSON_STORAGE_SIZE(){return this.getToken(FC.JSON_STORAGE_SIZE,0)}JSON_ARRAYAGG(){return this.getToken(FC.JSON_ARRAYAGG,0)}JSON_OBJECTAGG(){return this.getToken(FC.JSON_OBJECTAGG,0)}get ruleIndex(){return FC.RULE_functionNameBase}accept(t){return t.visitFunctionNameBase?t.visitFunctionNameBase(this):t.visitChildren(this)}},RG=class extends Ii{},AG={SPACE:FC.SPACE,FROM:FC.FROM,OPENING_BRACKET:FC.LR_BRACKET,CLOSING_BRACKET:FC.RR_BRACKET,ALTER:FC.ALTER,INSERT:FC.INSERT,UPDATE:FC.UPDATE,JOIN:FC.JOIN,SEMICOLON:FC.SEMI,SELECT:FC.SELECT};var SG=new Set(function(){let t=[],e=FC.VAR_ASSIGN,s=FC.ERROR_RECONGNIGION;for(let E=e;E<=s;E++)E!==FC.STAR&&t.push(E);let a=FC.ARMSCII8,r=FC.UTF8MB4;for(let E=a;E<=r;E++)t.push(E);let i=FC.AVG,c=FC.UTC_TIMESTAMP;for(let E=i;E<=c;E++)t.push(E);let n=FC.ABS,h=FC.X_FUNCTION;for(let E=n;E<=h;E++)t.push(E);return t.push(FC.EOF),t.push(FC.KEY),t}()),lG=new Set([FC.RULE_userName,FC.RULE_roleName,FC.RULE_databaseName,FC.RULE_constraintName,FC.RULE_triggerName,FC.RULE_indexName,FC.RULE_fullColumnName,FC.RULE_tableName,FC.RULE_simpleUserName,FC.RULE_fullId,FC.RULE_simpleId,FC.RULE_uid,FC.RULE_aggregateWindowedFunction,FC.RULE_scalarFunctionName,FC.RULE_specificFunction,FC.RULE_passwordFunctionClause]),OG=class extends RG{constructor(){super(),this.visitTableName=t=>{try{this.symbolTable.addNewSymbolOfType(qc,this.scope,t.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitAtomTableItem=t=>{try{var e;let s=null===(e=t.uid())||void 0===e?void 0:e.getText(),a="left"===(null===s||void 0===s?void 0:s.toLowerCase())||"right"===(null===s||void 0===s?void 0:s.toLowerCase());this.symbolTable.addNewSymbolOfType(qc,this.scope,t.tableName().getText(),a?void 0:s)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitSelectElementAlias=t=>{try{this.symbolTable.addNewSymbolOfType(zc,this.scope,t.uid().getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.symbolTable=new Zc("",{allowDuplicateSymbols:!0}),this.scope=this.symbolTable.addNewSymbolOfType(Bc,void 0)}};function IG(t,e){if(!e)return t.root();switch(e){case"from":return t.fromClause();case"alter":return t.alterTable();case"insert":return t.insertStatement();case"update":return t.multipleUpdateStatement();case"select":return t.selectStatement()}}var uG={Lexer:GC,Parser:FC,tokenDictionary:AG,ignoredTokens:SG,rulesToVisit:lG,getParseTree:IG,enrichAutocompleteResult:function(t,e,s,a,r,i){let{shouldSuggestColumns:c,shouldSuggestColumnAliases:n,shouldSuggestConstraints:h,...E}=function(t,e,s){let a,r=!1,i=!1,c=!1,n=!1,h=!1,E=!1,T=!1,o=!1,R=!1,A=!1;for(let[S,l]of t)if(uC(e,l))switch(S){case FC.RULE_tableName:if(l.ruleList.includes(FC.RULE_createTable))break;a=UC(s,AG,e,FC.VIEW)?"VIEWS":UC(s,AG,e,FC.TABLE)?"TABLES":"ALL";break;case FC.RULE_fullId:UC(s,AG,e,FC.VIEW)&&(l.ruleList.includes(FC.RULE_alterView)||l.ruleList.includes(FC.RULE_dropView))&&(a="VIEWS");break;case FC.RULE_aggregateWindowedFunction:r=!0;break;case FC.RULE_scalarFunctionName:i=!0;break;case FC.RULE_triggerName:n=!0;break;case FC.RULE_indexName:c=!0;break;case FC.RULE_constraintName:o=!0;break;case FC.RULE_databaseName:h=!0;break;case FC.RULE_roleName:E=!0;break;case FC.RULE_userName:T=!0;break;case FC.RULE_fullColumnName:case FC.RULE_indexColumnName:R=!0,(l.ruleList.includes(FC.RULE_groupByItem)||l.ruleList.includes(FC.RULE_orderByExpression))&&(A=!0);break;case FC.RULE_uid:(l.ruleList.includes(FC.RULE_alterSpecification)&&!UC(s,AG,e,FC.ADD)||l.ruleList.includes(FC.RULE_indexColumnName))&&(R=!0)}return{suggestViewsOrTables:a,suggestAggregateFunctions:r,suggestFunctions:i,suggestIndexes:c,suggestTriggers:n,suggestDatabases:h,suggestRoles:E,suggestUsers:T,shouldSuggestConstraints:o,shouldSuggestColumns:R,shouldSuggestColumnAliases:A}}(e,a,s),T={...t,...E,suggestTemplates:_C(i,r)};if(c||h||n){let t=new OG,{tableContextSuggestion:e,suggestColumnAliases:a}=mC(GC,FC,t,AG,IG,s,r,i);c&&e&&(T.suggestColumns=e),h&&e&&(T.suggestConstraints=e),n&&a&&(T.suggestColumnAliases=a)}return T}},NG=class{constructor(t){this.errors=[],this.whitespaceToken=t}syntaxError(t,e,s,a,r){if(e){let t=OC(e,this.whitespaceToken);this.errors.push({message:r,...t})}else this.errors.push({message:r,startLine:s,startColumn:a,endLine:s,endColumn:a})}reportAmbiguity(){}reportAttemptingFullContext(){}reportContextSensitivity(){}},LG=(Ji=class t extends $r{constructor(e){super(e),this.interpreter=new hi(this,t._ATN,t.decisionsToDFA,new Si)}get grammarFileName(){return"ClickHouseLexer.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}get channelNames(){return t.channelNames}get modeNames(){return t.modeNames}static get _ATN(){return t.__ATN||(t.__ATN=(new fr).deserialize(t._serializedATN)),t.__ATN}get vocabulary(){return t.vocabulary}},Ji.ADD=1,Ji.AFTER=2,Ji.ALIAS=3,Ji.ALL=4,Ji.ALTER=5,Ji.AND=6,Ji.ANTI=7,Ji.ANY=8,Ji.ARRAY=9,Ji.AS=10,Ji.ASCENDING=11,Ji.ASOF=12,Ji.AST=13,Ji.ASYNC=14,Ji.ATTACH=15,Ji.BETWEEN=16,Ji.BOTH=17,Ji.BY=18,Ji.CASE=19,Ji.CAST=20,Ji.CHECK=21,Ji.CLEAR=22,Ji.CLUSTER=23,Ji.CODEC=24,Ji.COLLATE=25,Ji.COLUMN=26,Ji.COMMENT=27,Ji.CONSTRAINT=28,Ji.CREATE=29,Ji.CROSS=30,Ji.CUBE=31,Ji.CURRENT=32,Ji.DATABASE=33,Ji.DATABASES=34,Ji.DATE=35,Ji.DAY=36,Ji.DEDUPLICATE=37,Ji.DEFAULT=38,Ji.DELAY=39,Ji.DELETE=40,Ji.DESC=41,Ji.DESCENDING=42,Ji.DESCRIBE=43,Ji.DETACH=44,Ji.DICTIONARIES=45,Ji.DICTIONARY=46,Ji.DISK=47,Ji.DISTINCT=48,Ji.DISTRIBUTED=49,Ji.DROP=50,Ji.ELSE=51,Ji.END=52,Ji.ENGINE=53,Ji.ESTIMATE=54,Ji.EVENTS=55,Ji.EXISTS=56,Ji.EXPLAIN=57,Ji.EXPRESSION=58,Ji.EXTRACT=59,Ji.FETCHES=60,Ji.FINAL=61,Ji.FIRST=62,Ji.FLUSH=63,Ji.FOLLOWING=64,Ji.FOR=65,Ji.FORMAT=66,Ji.FREEZE=67,Ji.FROM=68,Ji.FULL=69,Ji.FUNCTION=70,Ji.GLOBAL=71,Ji.GRANULARITY=72,Ji.GROUP=73,Ji.HAVING=74,Ji.HIERARCHICAL=75,Ji.HOUR=76,Ji.ID=77,Ji.IF=78,Ji.ILIKE=79,Ji.IN=80,Ji.INDEX=81,Ji.INF=82,Ji.INJECTIVE=83,Ji.INNER=84,Ji.INSERT=85,Ji.INTERVAL=86,Ji.INTO=87,Ji.IS=88,Ji.IS_OBJECT_ID=89,Ji.JOIN=90,Ji.KEY=91,Ji.KILL=92,Ji.LAST=93,Ji.LAYOUT=94,Ji.LEADING=95,Ji.LEFT=96,Ji.LIFETIME=97,Ji.LIKE=98,Ji.LIMIT=99,Ji.LIVE=100,Ji.LOCAL=101,Ji.LOGS=102,Ji.MATERIALIZE=103,Ji.MATERIALIZED=104,Ji.MAX=105,Ji.MERGES=106,Ji.MIN=107,Ji.MINUTE=108,Ji.MODIFY=109,Ji.MONTH=110,Ji.MOVE=111,Ji.MUTATION=112,Ji.NAN_SQL=113,Ji.NO=114,Ji.NOT=115,Ji.NULL_SQL=116,Ji.NULLS=117,Ji.OFFSET=118,Ji.ON=119,Ji.OPTIMIZE=120,Ji.OR=121,Ji.ORDER=122,Ji.OUTER=123,Ji.OUTFILE=124,Ji.OVER=125,Ji.PARTITION=126,Ji.PIPELINE=127,Ji.PLAN=128,Ji.POPULATE=129,Ji.PRECEDING=130,Ji.PREWHERE=131,Ji.PRIMARY=132,Ji.PROJECTION=133,Ji.QUARTER=134,Ji.QUERY=135,Ji.RANGE=136,Ji.RELOAD=137,Ji.REMOVE=138,Ji.RENAME=139,Ji.REPLACE=140,Ji.REPLICA=141,Ji.REPLICATED=142,Ji.RIGHT=143,Ji.ROLLUP=144,Ji.ROW=145,Ji.ROWS=146,Ji.SAMPLE=147,Ji.SECOND=148,Ji.SELECT=149,Ji.SEMI=150,Ji.SENDS=151,Ji.SET=152,Ji.SETTINGS=153,Ji.SHOW=154,Ji.SOURCE=155,Ji.START=156,Ji.STOP=157,Ji.SUBSTRING=158,Ji.SYNC=159,Ji.SYNTAX=160,Ji.SYSTEM=161,Ji.TABLE=162,Ji.TABLES=163,Ji.TEMPORARY=164,Ji.TEST=165,Ji.THEN=166,Ji.TIES=167,Ji.TIMEOUT=168,Ji.TIMESTAMP=169,Ji.TO=170,Ji.TOP=171,Ji.TOTALS=172,Ji.TRAILING=173,Ji.TRIM=174,Ji.TREE=175,Ji.TRUNCATE=176,Ji.TTL=177,Ji.TYPE=178,Ji.UNBOUNDED=179,Ji.UNION=180,Ji.UPDATE=181,Ji.USE=182,Ji.USING=183,Ji.UUID=184,Ji.VALUES=185,Ji.VIEW=186,Ji.VOLUME=187,Ji.WATCH=188,Ji.WEEK=189,Ji.WHEN=190,Ji.WHERE=191,Ji.WINDOW=192,Ji.WITH=193,Ji.YEAR=194,Ji.JSON_FALSE=195,Ji.JSON_TRUE=196,Ji.IDENTIFIER=197,Ji.FLOATING_LITERAL=198,Ji.OCTAL_LITERAL=199,Ji.DECIMAL_LITERAL=200,Ji.HEXADECIMAL_LITERAL=201,Ji.STRING_LITERAL=202,Ji.ARROW=203,Ji.ASTERISK=204,Ji.BACKQUOTE=205,Ji.BACKSLASH=206,Ji.COLON=207,Ji.COMMA=208,Ji.CONCAT=209,Ji.DASH=210,Ji.DOT=211,Ji.EQ_DOUBLE=212,Ji.EQ_SINGLE=213,Ji.GE=214,Ji.GT=215,Ji.LBRACE=216,Ji.LBRACKET=217,Ji.LE=218,Ji.LPAREN=219,Ji.LT=220,Ji.NOT_EQ=221,Ji.PERCENT=222,Ji.PLUS=223,Ji.QUESTIONMARK=224,Ji.QUOTE_DOUBLE=225,Ji.QUOTE_SINGLE=226,Ji.RBRACE=227,Ji.RBRACKET=228,Ji.RPAREN=229,Ji.SEMICOLON=230,Ji.SLASH=231,Ji.UNDERSCORE=232,Ji.MULTI_LINE_COMMENT=233,Ji.SINGLE_LINE_COMMENT=234,Ji.WHITESPACE=235,Ji.channelNames=["DEFAULT_TOKEN_CHANNEL","HIDDEN"],Ji.literalNames=[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"'false'","'true'",null,null,null,null,null,null,"'->'","'*'","'`'","''","':'","','","'||'","'-'","'.'","'=='","'='","'>='","'>'","'{'","'['","'<='","'('","'<'",null,"'%'","'+'","'?'","'\"'","'''","'}'","']'","')'","';'","'/'","'_'"],Ji.symbolicNames=[null,"ADD","AFTER","ALIAS","ALL","ALTER","AND","ANTI","ANY","ARRAY","AS","ASCENDING","ASOF","AST","ASYNC","ATTACH","BETWEEN","BOTH","BY","CASE","CAST","CHECK","CLEAR","CLUSTER","CODEC","COLLATE","COLUMN","COMMENT","CONSTRAINT","CREATE","CROSS","CUBE","CURRENT","DATABASE","DATABASES","DATE","DAY","DEDUPLICATE","DEFAULT","DELAY","DELETE","DESC","DESCENDING","DESCRIBE","DETACH","DICTIONARIES","DICTIONARY","DISK","DISTINCT","DISTRIBUTED","DROP","ELSE","END","ENGINE","ESTIMATE","EVENTS","EXISTS","EXPLAIN","EXPRESSION","EXTRACT","FETCHES","FINAL","FIRST","FLUSH","FOLLOWING","FOR","FORMAT","FREEZE","FROM","FULL","FUNCTION","GLOBAL","GRANULARITY","GROUP","HAVING","HIERARCHICAL","HOUR","ID","IF","ILIKE","IN","INDEX","INF","INJECTIVE","INNER","INSERT","INTERVAL","INTO","IS","IS_OBJECT_ID","JOIN","KEY","KILL","LAST","LAYOUT","LEADING","LEFT","LIFETIME","LIKE","LIMIT","LIVE","LOCAL","LOGS","MATERIALIZE","MATERIALIZED","MAX","MERGES","MIN","MINUTE","MODIFY","MONTH","MOVE","MUTATION","NAN_SQL","NO","NOT","NULL_SQL","NULLS","OFFSET","ON","OPTIMIZE","OR","ORDER","OUTER","OUTFILE","OVER","PARTITION","PIPELINE","PLAN","POPULATE","PRECEDING","PREWHERE","PRIMARY","PROJECTION","QUARTER","QUERY","RANGE","RELOAD","REMOVE","RENAME","REPLACE","REPLICA","REPLICATED","RIGHT","ROLLUP","ROW","ROWS","SAMPLE","SECOND","SELECT","SEMI","SENDS","SET","SETTINGS","SHOW","SOURCE","START","STOP","SUBSTRING","SYNC","SYNTAX","SYSTEM","TABLE","TABLES","TEMPORARY","TEST","THEN","TIES","TIMEOUT","TIMESTAMP","TO","TOP","TOTALS","TRAILING","TRIM","TREE","TRUNCATE","TTL","TYPE","UNBOUNDED","UNION","UPDATE","USE","USING","UUID","VALUES","VIEW","VOLUME","WATCH","WEEK","WHEN","WHERE","WINDOW","WITH","YEAR","JSON_FALSE","JSON_TRUE","IDENTIFIER","FLOATING_LITERAL","OCTAL_LITERAL","DECIMAL_LITERAL","HEXADECIMAL_LITERAL","STRING_LITERAL","ARROW","ASTERISK","BACKQUOTE","BACKSLASH","COLON","COMMA","CONCAT","DASH","DOT","EQ_DOUBLE","EQ_SINGLE","GE","GT","LBRACE","LBRACKET","LE","LPAREN","LT","NOT_EQ","PERCENT","PLUS","QUESTIONMARK","QUOTE_DOUBLE","QUOTE_SINGLE","RBRACE","RBRACKET","RPAREN","SEMICOLON","SLASH","UNDERSCORE","MULTI_LINE_COMMENT","SINGLE_LINE_COMMENT","WHITESPACE"],Ji.modeNames=["DEFAULT_MODE"],Ji.ruleNames=["ADD","AFTER","ALIAS","ALL","ALTER","AND","ANTI","ANY","ARRAY","AS","ASCENDING","ASOF","AST","ASYNC","ATTACH","BETWEEN","BOTH","BY","CASE","CAST","CHECK","CLEAR","CLUSTER","CODEC","COLLATE","COLUMN","COMMENT","CONSTRAINT","CREATE","CROSS","CUBE","CURRENT","DATABASE","DATABASES","DATE","DAY","DEDUPLICATE","DEFAULT","DELAY","DELETE","DESC","DESCENDING","DESCRIBE","DETACH","DICTIONARIES","DICTIONARY","DISK","DISTINCT","DISTRIBUTED","DROP","ELSE","END","ENGINE","ESTIMATE","EVENTS","EXISTS","EXPLAIN","EXPRESSION","EXTRACT","FETCHES","FINAL","FIRST","FLUSH","FOLLOWING","FOR","FORMAT","FREEZE","FROM","FULL","FUNCTION","GLOBAL","GRANULARITY","GROUP","HAVING","HIERARCHICAL","HOUR","ID","IF","ILIKE","IN","INDEX","INF","INJECTIVE","INNER","INSERT","INTERVAL","INTO","IS","IS_OBJECT_ID","JOIN","KEY","KILL","LAST","LAYOUT","LEADING","LEFT","LIFETIME","LIKE","LIMIT","LIVE","LOCAL","LOGS","MATERIALIZE","MATERIALIZED","MAX","MERGES","MIN","MINUTE","MODIFY","MONTH","MOVE","MUTATION","NAN_SQL","NO","NOT","NULL_SQL","NULLS","OFFSET","ON","OPTIMIZE","OR","ORDER","OUTER","OUTFILE","OVER","PARTITION","PIPELINE","PLAN","POPULATE","PRECEDING","PREWHERE","PRIMARY","PROJECTION","QUARTER","QUERY","RANGE","RELOAD","REMOVE","RENAME","REPLACE","REPLICA","REPLICATED","RIGHT","ROLLUP","ROW","ROWS","SAMPLE","SECOND","SELECT","SEMI","SENDS","SET","SETTINGS","SHOW","SOURCE","START","STOP","SUBSTRING","SYNC","SYNTAX","SYSTEM","TABLE","TABLES","TEMPORARY","TEST","THEN","TIES","TIMEOUT","TIMESTAMP","TO","TOP","TOTALS","TRAILING","TRIM","TREE","TRUNCATE","TTL","TYPE","UNBOUNDED","UNION","UPDATE","USE","USING","UUID","VALUES","VIEW","VOLUME","WATCH","WEEK","WHEN","WHERE","WINDOW","WITH","YEAR","JSON_FALSE","JSON_TRUE","IDENTIFIER","FLOATING_LITERAL","OCTAL_LITERAL","DECIMAL_LITERAL","HEXADECIMAL_LITERAL","STRING_LITERAL","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","LETTER","OCT_DIGIT","DEC_DIGIT","HEX_DIGIT","ARROW","ASTERISK","BACKQUOTE","BACKSLASH","COLON","COMMA","CONCAT","DASH","DOT","EQ_DOUBLE","EQ_SINGLE","GE","GT","LBRACE","LBRACKET","LE","LPAREN","LT","NOT_EQ","PERCENT","PLUS","QUESTIONMARK","QUOTE_DOUBLE","QUOTE_SINGLE","RBRACE","RBRACKET","RPAREN","SEMICOLON","SLASH","UNDERSCORE","MULTI_LINE_COMMENT","SINGLE_LINE_COMMENT","WHITESPACE"],Ji._serializedATN=[4,0,235,2168,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,1,0,1,0,1,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,2,1,2,1,2,1,2,1,2,1,3,1,3,1,3,1,3,1,4,1,4,1,4,1,4,1,4,1,4,1,5,1,5,1,5,1,5,1,6,1,6,1,6,1,6,1,6,1,7,1,7,1,7,1,7,1,8,1,8,1,8,1,8,1,8,1,8,1,9,1,9,1,9,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,3,10,594,8,10,1,11,1,11,1,11,1,11,1,11,1,12,1,12,1,12,1,12,1,13,1,13,1,13,1,13,1,13,1,13,1,14,1,14,1,14,1,14,1,14,1,14,1,14,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,16,1,16,1,16,1,16,1,16,1,17,1,17,1,17,1,18,1,18,1,18,1,18,1,18,1,19,1,19,1,19,1,19,1,19,1,20,1,20,1,20,1,20,1,20,1,20,1,21,1,21,1,21,1,21,1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,23,1,23,1,23,1,23,1,23,1,23,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,28,1,28,1,28,1,28,1,28,1,28,1,28,1,29,1,29,1,29,1,29,1,29,1,29,1,30,1,30,1,30,1,30,1,30,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,32,1,32,1,32,1,32,1,32,1,32,1,32,1,32,1,32,1,33,1,33,1,33,1,33,1,33,1,33,1,33,1,33,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,35,1,35,1,35,1,35,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,38,1,38,1,38,1,38,1,38,1,38,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,40,1,40,1,40,1,40,1,40,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,43,1,43,1,43,1,43,1,43,1,43,1,43,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,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,46,1,46,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,49,1,49,1,49,1,49,1,49,1,50,1,50,1,50,1,50,1,50,1,51,1,51,1,51,1,51,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,60,1,60,1,60,1,60,1,60,1,60,1,61,1,61,1,61,1,61,1,61,1,61,1,62,1,62,1,62,1,62,1,62,1,62,1,63,1,63,1,63,1,63,1,63,1,63,1,63,1,63,1,63,1,63,1,64,1,64,1,64,1,64,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,67,1,67,1,67,1,67,1,67,1,68,1,68,1,68,1,68,1,68,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,72,1,72,1,72,1,72,1,72,1,72,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,75,1,75,1,75,1,75,1,75,1,76,1,76,1,76,1,77,1,77,1,77,1,78,1,78,1,78,1,78,1,78,1,78,1,79,1,79,1,79,1,80,1,80,1,80,1,80,1,80,1,80,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,81,3,81,1101,8,81,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,83,1,83,1,83,1,83,1,83,1,83,1,84,1,84,1,84,1,84,1,84,1,84,1,84,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,86,1,86,1,86,1,86,1,86,1,87,1,87,1,87,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,89,1,89,1,89,1,89,1,89,1,90,1,90,1,90,1,90,1,91,1,91,1,91,1,91,1,91,1,92,1,92,1,92,1,92,1,92,1,93,1,93,1,93,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,95,1,95,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,97,1,97,1,97,1,97,1,97,1,98,1,98,1,98,1,98,1,98,1,98,1,99,1,99,1,99,1,99,1,99,1,100,1,100,1,100,1,100,1,100,1,100,1,101,1,101,1,101,1,101,1,101,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,104,1,104,1,104,1,104,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,106,1,106,1,106,1,106,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,108,1,108,1,108,1,108,1,108,1,108,1,108,1,109,1,109,1,109,1,109,1,109,1,109,1,110,1,110,1,110,1,110,1,110,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,112,1,112,1,112,1,112,1,113,1,113,1,113,1,114,1,114,1,114,1,114,1,115,1,115,1,115,1,115,1,115,1,116,1,116,1,116,1,116,1,116,1,116,1,117,1,117,1,117,1,117,1,117,1,117,1,117,1,118,1,118,1,118,1,119,1,119,1,119,1,119,1,119,1,119,1,119,1,119,1,119,1,120,1,120,1,120,1,121,1,121,1,121,1,121,1,121,1,121,1,122,1,122,1,122,1,122,1,122,1,122,1,123,1,123,1,123,1,123,1,123,1,123,1,123,1,123,1,124,1,124,1,124,1,124,1,124,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,126,1,126,1,126,1,126,1,126,1,126,1,126,1,126,1,126,1,127,1,127,1,127,1,127,1,127,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,134,1,134,1,134,1,134,1,134,1,134,1,135,1,135,1,135,1,135,1,135,1,135,1,136,1,136,1,136,1,136,1,136,1,136,1,136,1,137,1,137,1,137,1,137,1,137,1,137,1,137,1,138,1,138,1,138,1,138,1,138,1,138,1,138,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,142,1,142,1,142,1,142,1,142,1,142,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,144,1,144,1,144,1,144,1,145,1,145,1,145,1,145,1,145,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,148,1,148,1,148,1,148,1,148,1,148,1,148,1,149,1,149,1,149,1,149,1,149,1,150,1,150,1,150,1,150,1,150,1,150,1,151,1,151,1,151,1,151,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,153,1,153,1,153,1,153,1,153,1,154,1,154,1,154,1,154,1,154,1,154,1,154,1,155,1,155,1,155,1,155,1,155,1,155,1,156,1,156,1,156,1,156,1,156,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,158,1,158,1,158,1,158,1,158,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,161,1,161,1,161,1,161,1,161,1,161,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,164,1,164,1,164,1,164,1,164,1,165,1,165,1,165,1,165,1,165,1,166,1,166,1,166,1,166,1,166,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,169,1,169,1,169,1,170,1,170,1,170,1,170,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,173,1,173,1,173,1,173,1,173,1,174,1,174,1,174,1,174,1,174,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,176,1,176,1,176,1,176,1,177,1,177,1,177,1,177,1,177,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,179,1,179,1,179,1,179,1,179,1,179,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,181,1,181,1,181,1,181,1,182,1,182,1,182,1,182,1,182,1,182,1,183,1,183,1,183,1,183,1,183,1,184,1,184,1,184,1,184,1,184,1,184,1,184,1,185,1,185,1,185,1,185,1,185,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,187,1,187,1,187,1,187,1,187,1,187,1,188,1,188,1,188,1,188,1,188,1,189,1,189,1,189,1,189,1,189,1,190,1,190,1,190,1,190,1,190,1,190,1,191,1,191,1,191,1,191,1,191,1,191,1,191,1,192,1,192,1,192,1,192,1,192,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,193,3,193,1840,8,193,1,194,1,194,1,194,1,194,1,194,1,194,1,195,1,195,1,195,1,195,1,195,1,196,1,196,3,196,1855,8,196,1,196,1,196,1,196,5,196,1860,8,196,10,196,12,196,1863,9,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,5,196,1873,8,196,10,196,12,196,1876,9,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,5,196,1888,8,196,10,196,12,196,1891,9,196,1,196,1,196,3,196,1895,8,196,1,197,1,197,1,197,5,197,1900,8,197,10,197,12,197,1903,9,197,1,197,1,197,3,197,1907,8,197,1,197,1,197,3,197,1911,8,197,1,197,4,197,1914,8,197,11,197,12,197,1915,1,197,1,197,1,197,3,197,1921,8,197,1,197,1,197,3,197,1925,8,197,1,197,4,197,1928,8,197,11,197,12,197,1929,1,197,1,197,1,197,5,197,1935,8,197,10,197,12,197,1938,9,197,1,197,1,197,1,197,3,197,1943,8,197,1,197,4,197,1946,8,197,11,197,12,197,1947,1,197,1,197,1,197,1,197,1,197,3,197,1955,8,197,1,197,4,197,1958,8,197,11,197,12,197,1959,1,197,1,197,1,197,1,197,3,197,1966,8,197,1,197,4,197,1969,8,197,11,197,12,197,1970,3,197,1973,8,197,1,198,1,198,4,198,1977,8,198,11,198,12,198,1978,1,199,4,199,1982,8,199,11,199,12,199,1983,1,200,1,200,1,200,4,200,1989,8,200,11,200,12,200,1990,1,201,1,201,1,201,1,201,1,201,1,201,1,201,1,201,5,201,2001,8,201,10,201,12,201,2004,9,201,1,201,1,201,1,202,1,202,1,203,1,203,1,204,1,204,1,205,1,205,1,206,1,206,1,207,1,207,1,208,1,208,1,209,1,209,1,210,1,210,1,211,1,211,1,212,1,212,1,213,1,213,1,214,1,214,1,215,1,215,1,216,1,216,1,217,1,217,1,218,1,218,1,219,1,219,1,220,1,220,1,221,1,221,1,222,1,222,1,223,1,223,1,224,1,224,1,225,1,225,1,226,1,226,1,227,1,227,1,228,1,228,1,229,1,229,1,230,1,230,1,231,1,231,1,232,1,232,1,232,1,233,1,233,1,234,1,234,1,235,1,235,1,236,1,236,1,237,1,237,1,238,1,238,1,238,1,239,1,239,1,240,1,240,1,241,1,241,1,241,1,242,1,242,1,243,1,243,1,243,1,244,1,244,1,245,1,245,1,246,1,246,1,247,1,247,1,247,1,248,1,248,1,249,1,249,1,250,1,250,1,250,1,250,3,250,2113,8,250,1,251,1,251,1,252,1,252,1,253,1,253,1,254,1,254,1,255,1,255,1,256,1,256,1,257,1,257,1,258,1,258,1,259,1,259,1,260,1,260,1,261,1,261,1,262,1,262,1,262,1,262,5,262,2141,8,262,10,262,12,262,2144,9,262,1,262,1,262,1,262,1,262,1,262,1,263,1,263,1,263,1,263,5,263,2155,8,263,10,263,12,263,2158,9,263,1,263,3,263,2161,8,263,1,263,1,263,1,264,1,264,1,264,1,264,1,2142,0,265,1,1,3,2,5,3,7,4,9,5,11,6,13,7,15,8,17,9,19,10,21,11,23,12,25,13,27,14,29,15,31,16,33,17,35,18,37,19,39,20,41,21,43,22,45,23,47,24,49,25,51,26,53,27,55,28,57,29,59,30,61,31,63,32,65,33,67,34,69,35,71,36,73,37,75,38,77,39,79,40,81,41,83,42,85,43,87,44,89,45,91,46,93,47,95,48,97,49,99,50,101,51,103,52,105,53,107,54,109,55,111,56,113,57,115,58,117,59,119,60,121,61,123,62,125,63,127,64,129,65,131,66,133,67,135,68,137,69,139,70,141,71,143,72,145,73,147,74,149,75,151,76,153,77,155,78,157,79,159,80,161,81,163,82,165,83,167,84,169,85,171,86,173,87,175,88,177,89,179,90,181,91,183,92,185,93,187,94,189,95,191,96,193,97,195,98,197,99,199,100,201,101,203,102,205,103,207,104,209,105,211,106,213,107,215,108,217,109,219,110,221,111,223,112,225,113,227,114,229,115,231,116,233,117,235,118,237,119,239,120,241,121,243,122,245,123,247,124,249,125,251,126,253,127,255,128,257,129,259,130,261,131,263,132,265,133,267,134,269,135,271,136,273,137,275,138,277,139,279,140,281,141,283,142,285,143,287,144,289,145,291,146,293,147,295,148,297,149,299,150,301,151,303,152,305,153,307,154,309,155,311,156,313,157,315,158,317,159,319,160,321,161,323,162,325,163,327,164,329,165,331,166,333,167,335,168,337,169,339,170,341,171,343,172,345,173,347,174,349,175,351,176,353,177,355,178,357,179,359,180,361,181,363,182,365,183,367,184,369,185,371,186,373,187,375,188,377,189,379,190,381,191,383,192,385,193,387,194,389,195,391,196,393,197,395,198,397,199,399,200,401,201,403,202,405,0,407,0,409,0,411,0,413,0,415,0,417,0,419,0,421,0,423,0,425,0,427,0,429,0,431,0,433,0,435,0,437,0,439,0,441,0,443,0,445,0,447,0,449,0,451,0,453,0,455,0,457,0,459,0,461,0,463,0,465,203,467,204,469,205,471,206,473,207,475,208,477,209,479,210,481,211,483,212,485,213,487,214,489,215,491,216,493,217,495,218,497,219,499,220,501,221,503,222,505,223,507,224,509,225,511,226,513,227,515,228,517,229,519,230,521,231,523,232,525,233,527,234,529,235,1,0,36,2,0,92,92,96,96,2,0,34,34,92,92,2,0,39,39,92,92,2,0,65,65,97,97,2,0,66,66,98,98,2,0,67,67,99,99,2,0,68,68,100,100,2,0,69,69,101,101,2,0,70,70,102,102,2,0,71,71,103,103,2,0,72,72,104,104,2,0,73,73,105,105,2,0,74,74,106,106,2,0,75,75,107,107,2,0,76,76,108,108,2,0,77,77,109,109,2,0,78,78,110,110,2,0,79,79,111,111,2,0,80,80,112,112,2,0,81,81,113,113,2,0,82,82,114,114,2,0,83,83,115,115,2,0,84,84,116,116,2,0,85,85,117,117,2,0,86,86,118,118,2,0,87,87,119,119,2,0,88,88,120,120,2,0,89,89,121,121,2,0,90,90,122,122,2,0,65,90,97,122,1,0,48,55,1,0,48,57,3,0,48,57,65,70,97,102,2,0,10,10,13,13,2,1,10,10,13,13,2,0,9,13,32,32,2184,0,1,1,0,0,0,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,23,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,0,0,0,0,65,1,0,0,0,0,67,1,0,0,0,0,69,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,1,0,0,0,0,87,1,0,0,0,0,89,1,0,0,0,0,91,1,0,0,0,0,93,1,0,0,0,0,95,1,0,0,0,0,97,1,0,0,0,0,99,1,0,0,0,0,101,1,0,0,0,0,103,1,0,0,0,0,105,1,0,0,0,0,107,1,0,0,0,0,109,1,0,0,0,0,111,1,0,0,0,0,113,1,0,0,0,0,115,1,0,0,0,0,117,1,0,0,0,0,119,1,0,0,0,0,121,1,0,0,0,0,123,1,0,0,0,0,125,1,0,0,0,0,127,1,0,0,0,0,129,1,0,0,0,0,131,1,0,0,0,0,133,1,0,0,0,0,135,1,0,0,0,0,137,1,0,0,0,0,139,1,0,0,0,0,141,1,0,0,0,0,143,1,0,0,0,0,145,1,0,0,0,0,147,1,0,0,0,0,149,1,0,0,0,0,151,1,0,0,0,0,153,1,0,0,0,0,155,1,0,0,0,0,157,1,0,0,0,0,159,1,0,0,0,0,161,1,0,0,0,0,163,1,0,0,0,0,165,1,0,0,0,0,167,1,0,0,0,0,169,1,0,0,0,0,171,1,0,0,0,0,173,1,0,0,0,0,175,1,0,0,0,0,177,1,0,0,0,0,179,1,0,0,0,0,181,1,0,0,0,0,183,1,0,0,0,0,185,1,0,0,0,0,187,1,0,0,0,0,189,1,0,0,0,0,191,1,0,0,0,0,193,1,0,0,0,0,195,1,0,0,0,0,197,1,0,0,0,0,199,1,0,0,0,0,201,1,0,0,0,0,203,1,0,0,0,0,205,1,0,0,0,0,207,1,0,0,0,0,209,1,0,0,0,0,211,1,0,0,0,0,213,1,0,0,0,0,215,1,0,0,0,0,217,1,0,0,0,0,219,1,0,0,0,0,221,1,0,0,0,0,223,1,0,0,0,0,225,1,0,0,0,0,227,1,0,0,0,0,229,1,0,0,0,0,231,1,0,0,0,0,233,1,0,0,0,0,235,1,0,0,0,0,237,1,0,0,0,0,239,1,0,0,0,0,241,1,0,0,0,0,243,1,0,0,0,0,245,1,0,0,0,0,247,1,0,0,0,0,249,1,0,0,0,0,251,1,0,0,0,0,253,1,0,0,0,0,255,1,0,0,0,0,257,1,0,0,0,0,259,1,0,0,0,0,261,1,0,0,0,0,263,1,0,0,0,0,265,1,0,0,0,0,267,1,0,0,0,0,269,1,0,0,0,0,271,1,0,0,0,0,273,1,0,0,0,0,275,1,0,0,0,0,277,1,0,0,0,0,279,1,0,0,0,0,281,1,0,0,0,0,283,1,0,0,0,0,285,1,0,0,0,0,287,1,0,0,0,0,289,1,0,0,0,0,291,1,0,0,0,0,293,1,0,0,0,0,295,1,0,0,0,0,297,1,0,0,0,0,299,1,0,0,0,0,301,1,0,0,0,0,303,1,0,0,0,0,305,1,0,0,0,0,307,1,0,0,0,0,309,1,0,0,0,0,311,1,0,0,0,0,313,1,0,0,0,0,315,1,0,0,0,0,317,1,0,0,0,0,319,1,0,0,0,0,321,1,0,0,0,0,323,1,0,0,0,0,325,1,0,0,0,0,327,1,0,0,0,0,329,1,0,0,0,0,331,1,0,0,0,0,333,1,0,0,0,0,335,1,0,0,0,0,337,1,0,0,0,0,339,1,0,0,0,0,341,1,0,0,0,0,343,1,0,0,0,0,345,1,0,0,0,0,347,1,0,0,0,0,349,1,0,0,0,0,351,1,0,0,0,0,353,1,0,0,0,0,355,1,0,0,0,0,357,1,0,0,0,0,359,1,0,0,0,0,361,1,0,0,0,0,363,1,0,0,0,0,365,1,0,0,0,0,367,1,0,0,0,0,369,1,0,0,0,0,371,1,0,0,0,0,373,1,0,0,0,0,375,1,0,0,0,0,377,1,0,0,0,0,379,1,0,0,0,0,381,1,0,0,0,0,383,1,0,0,0,0,385,1,0,0,0,0,387,1,0,0,0,0,389,1,0,0,0,0,391,1,0,0,0,0,393,1,0,0,0,0,395,1,0,0,0,0,397,1,0,0,0,0,399,1,0,0,0,0,401,1,0,0,0,0,403,1,0,0,0,0,465,1,0,0,0,0,467,1,0,0,0,0,469,1,0,0,0,0,471,1,0,0,0,0,473,1,0,0,0,0,475,1,0,0,0,0,477,1,0,0,0,0,479,1,0,0,0,0,481,1,0,0,0,0,483,1,0,0,0,0,485,1,0,0,0,0,487,1,0,0,0,0,489,1,0,0,0,0,491,1,0,0,0,0,493,1,0,0,0,0,495,1,0,0,0,0,497,1,0,0,0,0,499,1,0,0,0,0,501,1,0,0,0,0,503,1,0,0,0,0,505,1,0,0,0,0,507,1,0,0,0,0,509,1,0,0,0,0,511,1,0,0,0,0,513,1,0,0,0,0,515,1,0,0,0,0,517,1,0,0,0,0,519,1,0,0,0,0,521,1,0,0,0,0,523,1,0,0,0,0,525,1,0,0,0,0,527,1,0,0,0,0,529,1,0,0,0,1,531,1,0,0,0,3,535,1,0,0,0,5,541,1,0,0,0,7,547,1,0,0,0,9,551,1,0,0,0,11,557,1,0,0,0,13,561,1,0,0,0,15,566,1,0,0,0,17,570,1,0,0,0,19,576,1,0,0,0,21,593,1,0,0,0,23,595,1,0,0,0,25,600,1,0,0,0,27,604,1,0,0,0,29,610,1,0,0,0,31,617,1,0,0,0,33,625,1,0,0,0,35,630,1,0,0,0,37,633,1,0,0,0,39,638,1,0,0,0,41,643,1,0,0,0,43,649,1,0,0,0,45,655,1,0,0,0,47,663,1,0,0,0,49,669,1,0,0,0,51,677,1,0,0,0,53,684,1,0,0,0,55,692,1,0,0,0,57,703,1,0,0,0,59,710,1,0,0,0,61,716,1,0,0,0,63,721,1,0,0,0,65,729,1,0,0,0,67,738,1,0,0,0,69,748,1,0,0,0,71,753,1,0,0,0,73,757,1,0,0,0,75,769,1,0,0,0,77,777,1,0,0,0,79,783,1,0,0,0,81,790,1,0,0,0,83,795,1,0,0,0,85,806,1,0,0,0,87,815,1,0,0,0,89,822,1,0,0,0,91,835,1,0,0,0,93,846,1,0,0,0,95,851,1,0,0,0,97,860,1,0,0,0,99,872,1,0,0,0,101,877,1,0,0,0,103,882,1,0,0,0,105,886,1,0,0,0,107,893,1,0,0,0,109,902,1,0,0,0,111,909,1,0,0,0,113,916,1,0,0,0,115,924,1,0,0,0,117,935,1,0,0,0,119,943,1,0,0,0,121,951,1,0,0,0,123,957,1,0,0,0,125,963,1,0,0,0,127,969,1,0,0,0,129,979,1,0,0,0,131,983,1,0,0,0,133,990,1,0,0,0,135,997,1,0,0,0,137,1002,1,0,0,0,139,1007,1,0,0,0,141,1016,1,0,0,0,143,1023,1,0,0,0,145,1035,1,0,0,0,147,1041,1,0,0,0,149,1048,1,0,0,0,151,1061,1,0,0,0,153,1066,1,0,0,0,155,1069,1,0,0,0,157,1072,1,0,0,0,159,1078,1,0,0,0,161,1081,1,0,0,0,163,1100,1,0,0,0,165,1102,1,0,0,0,167,1112,1,0,0,0,169,1118,1,0,0,0,171,1125,1,0,0,0,173,1134,1,0,0,0,175,1139,1,0,0,0,177,1142,1,0,0,0,179,1155,1,0,0,0,181,1160,1,0,0,0,183,1164,1,0,0,0,185,1169,1,0,0,0,187,1174,1,0,0,0,189,1181,1,0,0,0,191,1189,1,0,0,0,193,1194,1,0,0,0,195,1203,1,0,0,0,197,1208,1,0,0,0,199,1214,1,0,0,0,201,1219,1,0,0,0,203,1225,1,0,0,0,205,1230,1,0,0,0,207,1242,1,0,0,0,209,1255,1,0,0,0,211,1259,1,0,0,0,213,1266,1,0,0,0,215,1270,1,0,0,0,217,1277,1,0,0,0,219,1284,1,0,0,0,221,1290,1,0,0,0,223,1295,1,0,0,0,225,1304,1,0,0,0,227,1308,1,0,0,0,229,1311,1,0,0,0,231,1315,1,0,0,0,233,1320,1,0,0,0,235,1326,1,0,0,0,237,1333,1,0,0,0,239,1336,1,0,0,0,241,1345,1,0,0,0,243,1348,1,0,0,0,245,1354,1,0,0,0,247,1360,1,0,0,0,249,1368,1,0,0,0,251,1373,1,0,0,0,253,1383,1,0,0,0,255,1392,1,0,0,0,257,1397,1,0,0,0,259,1406,1,0,0,0,261,1416,1,0,0,0,263,1425,1,0,0,0,265,1433,1,0,0,0,267,1444,1,0,0,0,269,1452,1,0,0,0,271,1458,1,0,0,0,273,1464,1,0,0,0,275,1471,1,0,0,0,277,1478,1,0,0,0,279,1485,1,0,0,0,281,1493,1,0,0,0,283,1501,1,0,0,0,285,1512,1,0,0,0,287,1518,1,0,0,0,289,1525,1,0,0,0,291,1529,1,0,0,0,293,1534,1,0,0,0,295,1541,1,0,0,0,297,1548,1,0,0,0,299,1555,1,0,0,0,301,1560,1,0,0,0,303,1566,1,0,0,0,305,1570,1,0,0,0,307,1579,1,0,0,0,309,1584,1,0,0,0,311,1591,1,0,0,0,313,1597,1,0,0,0,315,1602,1,0,0,0,317,1612,1,0,0,0,319,1617,1,0,0,0,321,1624,1,0,0,0,323,1631,1,0,0,0,325,1637,1,0,0,0,327,1644,1,0,0,0,329,1654,1,0,0,0,331,1659,1,0,0,0,333,1664,1,0,0,0,335,1669,1,0,0,0,337,1677,1,0,0,0,339,1687,1,0,0,0,341,1690,1,0,0,0,343,1694,1,0,0,0,345,1701,1,0,0,0,347,1710,1,0,0,0,349,1715,1,0,0,0,351,1720,1,0,0,0,353,1729,1,0,0,0,355,1733,1,0,0,0,357,1738,1,0,0,0,359,1748,1,0,0,0,361,1754,1,0,0,0,363,1761,1,0,0,0,365,1765,1,0,0,0,367,1771,1,0,0,0,369,1776,1,0,0,0,371,1783,1,0,0,0,373,1788,1,0,0,0,375,1795,1,0,0,0,377,1801,1,0,0,0,379,1806,1,0,0,0,381,1811,1,0,0,0,383,1817,1,0,0,0,385,1824,1,0,0,0,387,1839,1,0,0,0,389,1841,1,0,0,0,391,1847,1,0,0,0,393,1894,1,0,0,0,395,1972,1,0,0,0,397,1974,1,0,0,0,399,1981,1,0,0,0,401,1985,1,0,0,0,403,1992,1,0,0,0,405,2007,1,0,0,0,407,2009,1,0,0,0,409,2011,1,0,0,0,411,2013,1,0,0,0,413,2015,1,0,0,0,415,2017,1,0,0,0,417,2019,1,0,0,0,419,2021,1,0,0,0,421,2023,1,0,0,0,423,2025,1,0,0,0,425,2027,1,0,0,0,427,2029,1,0,0,0,429,2031,1,0,0,0,431,2033,1,0,0,0,433,2035,1,0,0,0,435,2037,1,0,0,0,437,2039,1,0,0,0,439,2041,1,0,0,0,441,2043,1,0,0,0,443,2045,1,0,0,0,445,2047,1,0,0,0,447,2049,1,0,0,0,449,2051,1,0,0,0,451,2053,1,0,0,0,453,2055,1,0,0,0,455,2057,1,0,0,0,457,2059,1,0,0,0,459,2061,1,0,0,0,461,2063,1,0,0,0,463,2065,1,0,0,0,465,2067,1,0,0,0,467,2070,1,0,0,0,469,2072,1,0,0,0,471,2074,1,0,0,0,473,2076,1,0,0,0,475,2078,1,0,0,0,477,2080,1,0,0,0,479,2083,1,0,0,0,481,2085,1,0,0,0,483,2087,1,0,0,0,485,2090,1,0,0,0,487,2092,1,0,0,0,489,2095,1,0,0,0,491,2097,1,0,0,0,493,2099,1,0,0,0,495,2101,1,0,0,0,497,2104,1,0,0,0,499,2106,1,0,0,0,501,2112,1,0,0,0,503,2114,1,0,0,0,505,2116,1,0,0,0,507,2118,1,0,0,0,509,2120,1,0,0,0,511,2122,1,0,0,0,513,2124,1,0,0,0,515,2126,1,0,0,0,517,2128,1,0,0,0,519,2130,1,0,0,0,521,2132,1,0,0,0,523,2134,1,0,0,0,525,2136,1,0,0,0,527,2150,1,0,0,0,529,2164,1,0,0,0,531,532,3,405,202,0,532,533,3,411,205,0,533,534,3,411,205,0,534,2,1,0,0,0,535,536,3,405,202,0,536,537,3,415,207,0,537,538,3,443,221,0,538,539,3,413,206,0,539,540,3,439,219,0,540,4,1,0,0,0,541,542,3,405,202,0,542,543,3,427,213,0,543,544,3,421,210,0,544,545,3,405,202,0,545,546,3,441,220,0,546,6,1,0,0,0,547,548,3,405,202,0,548,549,3,427,213,0,549,550,3,427,213,0,550,8,1,0,0,0,551,552,3,405,202,0,552,553,3,427,213,0,553,554,3,443,221,0,554,555,3,413,206,0,555,556,3,439,219,0,556,10,1,0,0,0,557,558,3,405,202,0,558,559,3,431,215,0,559,560,3,411,205,0,560,12,1,0,0,0,561,562,3,405,202,0,562,563,3,431,215,0,563,564,3,443,221,0,564,565,3,421,210,0,565,14,1,0,0,0,566,567,3,405,202,0,567,568,3,431,215,0,568,569,3,453,226,0,569,16,1,0,0,0,570,571,3,405,202,0,571,572,3,439,219,0,572,573,3,439,219,0,573,574,3,405,202,0,574,575,3,453,226,0,575,18,1,0,0,0,576,577,3,405,202,0,577,578,3,441,220,0,578,20,1,0,0,0,579,580,3,405,202,0,580,581,3,441,220,0,581,582,3,409,204,0,582,594,1,0,0,0,583,584,3,405,202,0,584,585,3,441,220,0,585,586,3,409,204,0,586,587,3,413,206,0,587,588,3,431,215,0,588,589,3,411,205,0,589,590,3,421,210,0,590,591,3,431,215,0,591,592,3,417,208,0,592,594,1,0,0,0,593,579,1,0,0,0,593,583,1,0,0,0,594,22,1,0,0,0,595,596,3,405,202,0,596,597,3,441,220,0,597,598,3,433,216,0,598,599,3,415,207,0,599,24,1,0,0,0,600,601,3,405,202,0,601,602,3,441,220,0,602,603,3,443,221,0,603,26,1,0,0,0,604,605,3,405,202,0,605,606,3,441,220,0,606,607,3,453,226,0,607,608,3,431,215,0,608,609,3,409,204,0,609,28,1,0,0,0,610,611,3,405,202,0,611,612,3,443,221,0,612,613,3,443,221,0,613,614,3,405,202,0,614,615,3,409,204,0,615,616,3,419,209,0,616,30,1,0,0,0,617,618,3,407,203,0,618,619,3,413,206,0,619,620,3,443,221,0,620,621,3,449,224,0,621,622,3,413,206,0,622,623,3,413,206,0,623,624,3,431,215,0,624,32,1,0,0,0,625,626,3,407,203,0,626,627,3,433,216,0,627,628,3,443,221,0,628,629,3,419,209,0,629,34,1,0,0,0,630,631,3,407,203,0,631,632,3,453,226,0,632,36,1,0,0,0,633,634,3,409,204,0,634,635,3,405,202,0,635,636,3,441,220,0,636,637,3,413,206,0,637,38,1,0,0,0,638,639,3,409,204,0,639,640,3,405,202,0,640,641,3,441,220,0,641,642,3,443,221,0,642,40,1,0,0,0,643,644,3,409,204,0,644,645,3,419,209,0,645,646,3,413,206,0,646,647,3,409,204,0,647,648,3,425,212,0,648,42,1,0,0,0,649,650,3,409,204,0,650,651,3,427,213,0,651,652,3,413,206,0,652,653,3,405,202,0,653,654,3,439,219,0,654,44,1,0,0,0,655,656,3,409,204,0,656,657,3,427,213,0,657,658,3,445,222,0,658,659,3,441,220,0,659,660,3,443,221,0,660,661,3,413,206,0,661,662,3,439,219,0,662,46,1,0,0,0,663,664,3,409,204,0,664,665,3,433,216,0,665,666,3,411,205,0,666,667,3,413,206,0,667,668,3,409,204,0,668,48,1,0,0,0,669,670,3,409,204,0,670,671,3,433,216,0,671,672,3,427,213,0,672,673,3,427,213,0,673,674,3,405,202,0,674,675,3,443,221,0,675,676,3,413,206,0,676,50,1,0,0,0,677,678,3,409,204,0,678,679,3,433,216,0,679,680,3,427,213,0,680,681,3,445,222,0,681,682,3,429,214,0,682,683,3,431,215,0,683,52,1,0,0,0,684,685,3,409,204,0,685,686,3,433,216,0,686,687,3,429,214,0,687,688,3,429,214,0,688,689,3,413,206,0,689,690,3,431,215,0,690,691,3,443,221,0,691,54,1,0,0,0,692,693,3,409,204,0,693,694,3,433,216,0,694,695,3,431,215,0,695,696,3,441,220,0,696,697,3,443,221,0,697,698,3,439,219,0,698,699,3,405,202,0,699,700,3,421,210,0,700,701,3,431,215,0,701,702,3,443,221,0,702,56,1,0,0,0,703,704,3,409,204,0,704,705,3,439,219,0,705,706,3,413,206,0,706,707,3,405,202,0,707,708,3,443,221,0,708,709,3,413,206,0,709,58,1,0,0,0,710,711,3,409,204,0,711,712,3,439,219,0,712,713,3,433,216,0,713,714,3,441,220,0,714,715,3,441,220,0,715,60,1,0,0,0,716,717,3,409,204,0,717,718,3,445,222,0,718,719,3,407,203,0,719,720,3,413,206,0,720,62,1,0,0,0,721,722,3,409,204,0,722,723,3,445,222,0,723,724,3,439,219,0,724,725,3,439,219,0,725,726,3,413,206,0,726,727,3,431,215,0,727,728,3,443,221,0,728,64,1,0,0,0,729,730,3,411,205,0,730,731,3,405,202,0,731,732,3,443,221,0,732,733,3,405,202,0,733,734,3,407,203,0,734,735,3,405,202,0,735,736,3,441,220,0,736,737,3,413,206,0,737,66,1,0,0,0,738,739,3,411,205,0,739,740,3,405,202,0,740,741,3,443,221,0,741,742,3,405,202,0,742,743,3,407,203,0,743,744,3,405,202,0,744,745,3,441,220,0,745,746,3,413,206,0,746,747,3,441,220,0,747,68,1,0,0,0,748,749,3,411,205,0,749,750,3,405,202,0,750,751,3,443,221,0,751,752,3,413,206,0,752,70,1,0,0,0,753,754,3,411,205,0,754,755,3,405,202,0,755,756,3,453,226,0,756,72,1,0,0,0,757,758,3,411,205,0,758,759,3,413,206,0,759,760,3,411,205,0,760,761,3,445,222,0,761,762,3,435,217,0,762,763,3,427,213,0,763,764,3,421,210,0,764,765,3,409,204,0,765,766,3,405,202,0,766,767,3,443,221,0,767,768,3,413,206,0,768,74,1,0,0,0,769,770,3,411,205,0,770,771,3,413,206,0,771,772,3,415,207,0,772,773,3,405,202,0,773,774,3,445,222,0,774,775,3,427,213,0,775,776,3,443,221,0,776,76,1,0,0,0,777,778,3,411,205,0,778,779,3,413,206,0,779,780,3,427,213,0,780,781,3,405,202,0,781,782,3,453,226,0,782,78,1,0,0,0,783,784,3,411,205,0,784,785,3,413,206,0,785,786,3,427,213,0,786,787,3,413,206,0,787,788,3,443,221,0,788,789,3,413,206,0,789,80,1,0,0,0,790,791,3,411,205,0,791,792,3,413,206,0,792,793,3,441,220,0,793,794,3,409,204,0,794,82,1,0,0,0,795,796,3,411,205,0,796,797,3,413,206,0,797,798,3,441,220,0,798,799,3,409,204,0,799,800,3,413,206,0,800,801,3,431,215,0,801,802,3,411,205,0,802,803,3,421,210,0,803,804,3,431,215,0,804,805,3,417,208,0,805,84,1,0,0,0,806,807,3,411,205,0,807,808,3,413,206,0,808,809,3,441,220,0,809,810,3,409,204,0,810,811,3,439,219,0,811,812,3,421,210,0,812,813,3,407,203,0,813,814,3,413,206,0,814,86,1,0,0,0,815,816,3,411,205,0,816,817,3,413,206,0,817,818,3,443,221,0,818,819,3,405,202,0,819,820,3,409,204,0,820,821,3,419,209,0,821,88,1,0,0,0,822,823,3,411,205,0,823,824,3,421,210,0,824,825,3,409,204,0,825,826,3,443,221,0,826,827,3,421,210,0,827,828,3,433,216,0,828,829,3,431,215,0,829,830,3,405,202,0,830,831,3,439,219,0,831,832,3,421,210,0,832,833,3,413,206,0,833,834,3,441,220,0,834,90,1,0,0,0,835,836,3,411,205,0,836,837,3,421,210,0,837,838,3,409,204,0,838,839,3,443,221,0,839,840,3,421,210,0,840,841,3,433,216,0,841,842,3,431,215,0,842,843,3,405,202,0,843,844,3,439,219,0,844,845,3,453,226,0,845,92,1,0,0,0,846,847,3,411,205,0,847,848,3,421,210,0,848,849,3,441,220,0,849,850,3,425,212,0,850,94,1,0,0,0,851,852,3,411,205,0,852,853,3,421,210,0,853,854,3,441,220,0,854,855,3,443,221,0,855,856,3,421,210,0,856,857,3,431,215,0,857,858,3,409,204,0,858,859,3,443,221,0,859,96,1,0,0,0,860,861,3,411,205,0,861,862,3,421,210,0,862,863,3,441,220,0,863,864,3,443,221,0,864,865,3,439,219,0,865,866,3,421,210,0,866,867,3,407,203,0,867,868,3,445,222,0,868,869,3,443,221,0,869,870,3,413,206,0,870,871,3,411,205,0,871,98,1,0,0,0,872,873,3,411,205,0,873,874,3,439,219,0,874,875,3,433,216,0,875,876,3,435,217,0,876,100,1,0,0,0,877,878,3,413,206,0,878,879,3,427,213,0,879,880,3,441,220,0,880,881,3,413,206,0,881,102,1,0,0,0,882,883,3,413,206,0,883,884,3,431,215,0,884,885,3,411,205,0,885,104,1,0,0,0,886,887,3,413,206,0,887,888,3,431,215,0,888,889,3,417,208,0,889,890,3,421,210,0,890,891,3,431,215,0,891,892,3,413,206,0,892,106,1,0,0,0,893,894,3,413,206,0,894,895,3,441,220,0,895,896,3,443,221,0,896,897,3,421,210,0,897,898,3,429,214,0,898,899,3,405,202,0,899,900,3,443,221,0,900,901,3,413,206,0,901,108,1,0,0,0,902,903,3,413,206,0,903,904,3,447,223,0,904,905,3,413,206,0,905,906,3,431,215,0,906,907,3,443,221,0,907,908,3,441,220,0,908,110,1,0,0,0,909,910,3,413,206,0,910,911,3,451,225,0,911,912,3,421,210,0,912,913,3,441,220,0,913,914,3,443,221,0,914,915,3,441,220,0,915,112,1,0,0,0,916,917,3,413,206,0,917,918,3,451,225,0,918,919,3,435,217,0,919,920,3,427,213,0,920,921,3,405,202,0,921,922,3,421,210,0,922,923,3,431,215,0,923,114,1,0,0,0,924,925,3,413,206,0,925,926,3,451,225,0,926,927,3,435,217,0,927,928,3,439,219,0,928,929,3,413,206,0,929,930,3,441,220,0,930,931,3,441,220,0,931,932,3,421,210,0,932,933,3,433,216,0,933,934,3,431,215,0,934,116,1,0,0,0,935,936,3,413,206,0,936,937,3,451,225,0,937,938,3,443,221,0,938,939,3,439,219,0,939,940,3,405,202,0,940,941,3,409,204,0,941,942,3,443,221,0,942,118,1,0,0,0,943,944,3,415,207,0,944,945,3,413,206,0,945,946,3,443,221,0,946,947,3,409,204,0,947,948,3,419,209,0,948,949,3,413,206,0,949,950,3,441,220,0,950,120,1,0,0,0,951,952,3,415,207,0,952,953,3,421,210,0,953,954,3,431,215,0,954,955,3,405,202,0,955,956,3,427,213,0,956,122,1,0,0,0,957,958,3,415,207,0,958,959,3,421,210,0,959,960,3,439,219,0,960,961,3,441,220,0,961,962,3,443,221,0,962,124,1,0,0,0,963,964,3,415,207,0,964,965,3,427,213,0,965,966,3,445,222,0,966,967,3,441,220,0,967,968,3,419,209,0,968,126,1,0,0,0,969,970,3,415,207,0,970,971,3,433,216,0,971,972,3,427,213,0,972,973,3,427,213,0,973,974,3,433,216,0,974,975,3,449,224,0,975,976,3,421,210,0,976,977,3,431,215,0,977,978,3,417,208,0,978,128,1,0,0,0,979,980,3,415,207,0,980,981,3,433,216,0,981,982,3,439,219,0,982,130,1,0,0,0,983,984,3,415,207,0,984,985,3,433,216,0,985,986,3,439,219,0,986,987,3,429,214,0,987,988,3,405,202,0,988,989,3,443,221,0,989,132,1,0,0,0,990,991,3,415,207,0,991,992,3,439,219,0,992,993,3,413,206,0,993,994,3,413,206,0,994,995,3,455,227,0,995,996,3,413,206,0,996,134,1,0,0,0,997,998,3,415,207,0,998,999,3,439,219,0,999,1e3,3,433,216,0,1e3,1001,3,429,214,0,1001,136,1,0,0,0,1002,1003,3,415,207,0,1003,1004,3,445,222,0,1004,1005,3,427,213,0,1005,1006,3,427,213,0,1006,138,1,0,0,0,1007,1008,3,415,207,0,1008,1009,3,445,222,0,1009,1010,3,431,215,0,1010,1011,3,409,204,0,1011,1012,3,443,221,0,1012,1013,3,421,210,0,1013,1014,3,433,216,0,1014,1015,3,431,215,0,1015,140,1,0,0,0,1016,1017,3,417,208,0,1017,1018,3,427,213,0,1018,1019,3,433,216,0,1019,1020,3,407,203,0,1020,1021,3,405,202,0,1021,1022,3,427,213,0,1022,142,1,0,0,0,1023,1024,3,417,208,0,1024,1025,3,439,219,0,1025,1026,3,405,202,0,1026,1027,3,431,215,0,1027,1028,3,445,222,0,1028,1029,3,427,213,0,1029,1030,3,405,202,0,1030,1031,3,439,219,0,1031,1032,3,421,210,0,1032,1033,3,443,221,0,1033,1034,3,453,226,0,1034,144,1,0,0,0,1035,1036,3,417,208,0,1036,1037,3,439,219,0,1037,1038,3,433,216,0,1038,1039,3,445,222,0,1039,1040,3,435,217,0,1040,146,1,0,0,0,1041,1042,3,419,209,0,1042,1043,3,405,202,0,1043,1044,3,447,223,0,1044,1045,3,421,210,0,1045,1046,3,431,215,0,1046,1047,3,417,208,0,1047,148,1,0,0,0,1048,1049,3,419,209,0,1049,1050,3,421,210,0,1050,1051,3,413,206,0,1051,1052,3,439,219,0,1052,1053,3,405,202,0,1053,1054,3,439,219,0,1054,1055,3,409,204,0,1055,1056,3,419,209,0,1056,1057,3,421,210,0,1057,1058,3,409,204,0,1058,1059,3,405,202,0,1059,1060,3,427,213,0,1060,150,1,0,0,0,1061,1062,3,419,209,0,1062,1063,3,433,216,0,1063,1064,3,445,222,0,1064,1065,3,439,219,0,1065,152,1,0,0,0,1066,1067,3,421,210,0,1067,1068,3,411,205,0,1068,154,1,0,0,0,1069,1070,3,421,210,0,1070,1071,3,415,207,0,1071,156,1,0,0,0,1072,1073,3,421,210,0,1073,1074,3,427,213,0,1074,1075,3,421,210,0,1075,1076,3,425,212,0,1076,1077,3,413,206,0,1077,158,1,0,0,0,1078,1079,3,421,210,0,1079,1080,3,431,215,0,1080,160,1,0,0,0,1081,1082,3,421,210,0,1082,1083,3,431,215,0,1083,1084,3,411,205,0,1084,1085,3,413,206,0,1085,1086,3,451,225,0,1086,162,1,0,0,0,1087,1088,3,421,210,0,1088,1089,3,431,215,0,1089,1090,3,415,207,0,1090,1101,1,0,0,0,1091,1092,3,421,210,0,1092,1093,3,431,215,0,1093,1094,3,415,207,0,1094,1095,3,421,210,0,1095,1096,3,431,215,0,1096,1097,3,421,210,0,1097,1098,3,443,221,0,1098,1099,3,453,226,0,1099,1101,1,0,0,0,1100,1087,1,0,0,0,1100,1091,1,0,0,0,1101,164,1,0,0,0,1102,1103,3,421,210,0,1103,1104,3,431,215,0,1104,1105,3,423,211,0,1105,1106,3,413,206,0,1106,1107,3,409,204,0,1107,1108,3,443,221,0,1108,1109,3,421,210,0,1109,1110,3,447,223,0,1110,1111,3,413,206,0,1111,166,1,0,0,0,1112,1113,3,421,210,0,1113,1114,3,431,215,0,1114,1115,3,431,215,0,1115,1116,3,413,206,0,1116,1117,3,439,219,0,1117,168,1,0,0,0,1118,1119,3,421,210,0,1119,1120,3,431,215,0,1120,1121,3,441,220,0,1121,1122,3,413,206,0,1122,1123,3,439,219,0,1123,1124,3,443,221,0,1124,170,1,0,0,0,1125,1126,3,421,210,0,1126,1127,3,431,215,0,1127,1128,3,443,221,0,1128,1129,3,413,206,0,1129,1130,3,439,219,0,1130,1131,3,447,223,0,1131,1132,3,405,202,0,1132,1133,3,427,213,0,1133,172,1,0,0,0,1134,1135,3,421,210,0,1135,1136,3,431,215,0,1136,1137,3,443,221,0,1137,1138,3,433,216,0,1138,174,1,0,0,0,1139,1140,3,421,210,0,1140,1141,3,441,220,0,1141,176,1,0,0,0,1142,1143,3,421,210,0,1143,1144,3,441,220,0,1144,1145,3,523,261,0,1145,1146,3,433,216,0,1146,1147,3,407,203,0,1147,1148,3,423,211,0,1148,1149,3,413,206,0,1149,1150,3,409,204,0,1150,1151,3,443,221,0,1151,1152,3,523,261,0,1152,1153,3,421,210,0,1153,1154,3,411,205,0,1154,178,1,0,0,0,1155,1156,3,423,211,0,1156,1157,3,433,216,0,1157,1158,3,421,210,0,1158,1159,3,431,215,0,1159,180,1,0,0,0,1160,1161,3,425,212,0,1161,1162,3,413,206,0,1162,1163,3,453,226,0,1163,182,1,0,0,0,1164,1165,3,425,212,0,1165,1166,3,421,210,0,1166,1167,3,427,213,0,1167,1168,3,427,213,0,1168,184,1,0,0,0,1169,1170,3,427,213,0,1170,1171,3,405,202,0,1171,1172,3,441,220,0,1172,1173,3,443,221,0,1173,186,1,0,0,0,1174,1175,3,427,213,0,1175,1176,3,405,202,0,1176,1177,3,453,226,0,1177,1178,3,433,216,0,1178,1179,3,445,222,0,1179,1180,3,443,221,0,1180,188,1,0,0,0,1181,1182,3,427,213,0,1182,1183,3,413,206,0,1183,1184,3,405,202,0,1184,1185,3,411,205,0,1185,1186,3,421,210,0,1186,1187,3,431,215,0,1187,1188,3,417,208,0,1188,190,1,0,0,0,1189,1190,3,427,213,0,1190,1191,3,413,206,0,1191,1192,3,415,207,0,1192,1193,3,443,221,0,1193,192,1,0,0,0,1194,1195,3,427,213,0,1195,1196,3,421,210,0,1196,1197,3,415,207,0,1197,1198,3,413,206,0,1198,1199,3,443,221,0,1199,1200,3,421,210,0,1200,1201,3,429,214,0,1201,1202,3,413,206,0,1202,194,1,0,0,0,1203,1204,3,427,213,0,1204,1205,3,421,210,0,1205,1206,3,425,212,0,1206,1207,3,413,206,0,1207,196,1,0,0,0,1208,1209,3,427,213,0,1209,1210,3,421,210,0,1210,1211,3,429,214,0,1211,1212,3,421,210,0,1212,1213,3,443,221,0,1213,198,1,0,0,0,1214,1215,3,427,213,0,1215,1216,3,421,210,0,1216,1217,3,447,223,0,1217,1218,3,413,206,0,1218,200,1,0,0,0,1219,1220,3,427,213,0,1220,1221,3,433,216,0,1221,1222,3,409,204,0,1222,1223,3,405,202,0,1223,1224,3,427,213,0,1224,202,1,0,0,0,1225,1226,3,427,213,0,1226,1227,3,433,216,0,1227,1228,3,417,208,0,1228,1229,3,441,220,0,1229,204,1,0,0,0,1230,1231,3,429,214,0,1231,1232,3,405,202,0,1232,1233,3,443,221,0,1233,1234,3,413,206,0,1234,1235,3,439,219,0,1235,1236,3,421,210,0,1236,1237,3,405,202,0,1237,1238,3,427,213,0,1238,1239,3,421,210,0,1239,1240,3,455,227,0,1240,1241,3,413,206,0,1241,206,1,0,0,0,1242,1243,3,429,214,0,1243,1244,3,405,202,0,1244,1245,3,443,221,0,1245,1246,3,413,206,0,1246,1247,3,439,219,0,1247,1248,3,421,210,0,1248,1249,3,405,202,0,1249,1250,3,427,213,0,1250,1251,3,421,210,0,1251,1252,3,455,227,0,1252,1253,3,413,206,0,1253,1254,3,411,205,0,1254,208,1,0,0,0,1255,1256,3,429,214,0,1256,1257,3,405,202,0,1257,1258,3,451,225,0,1258,210,1,0,0,0,1259,1260,3,429,214,0,1260,1261,3,413,206,0,1261,1262,3,439,219,0,1262,1263,3,417,208,0,1263,1264,3,413,206,0,1264,1265,3,441,220,0,1265,212,1,0,0,0,1266,1267,3,429,214,0,1267,1268,3,421,210,0,1268,1269,3,431,215,0,1269,214,1,0,0,0,1270,1271,3,429,214,0,1271,1272,3,421,210,0,1272,1273,3,431,215,0,1273,1274,3,445,222,0,1274,1275,3,443,221,0,1275,1276,3,413,206,0,1276,216,1,0,0,0,1277,1278,3,429,214,0,1278,1279,3,433,216,0,1279,1280,3,411,205,0,1280,1281,3,421,210,0,1281,1282,3,415,207,0,1282,1283,3,453,226,0,1283,218,1,0,0,0,1284,1285,3,429,214,0,1285,1286,3,433,216,0,1286,1287,3,431,215,0,1287,1288,3,443,221,0,1288,1289,3,419,209,0,1289,220,1,0,0,0,1290,1291,3,429,214,0,1291,1292,3,433,216,0,1292,1293,3,447,223,0,1293,1294,3,413,206,0,1294,222,1,0,0,0,1295,1296,3,429,214,0,1296,1297,3,445,222,0,1297,1298,3,443,221,0,1298,1299,3,405,202,0,1299,1300,3,443,221,0,1300,1301,3,421,210,0,1301,1302,3,433,216,0,1302,1303,3,431,215,0,1303,224,1,0,0,0,1304,1305,3,431,215,0,1305,1306,3,405,202,0,1306,1307,3,431,215,0,1307,226,1,0,0,0,1308,1309,3,431,215,0,1309,1310,3,433,216,0,1310,228,1,0,0,0,1311,1312,3,431,215,0,1312,1313,3,433,216,0,1313,1314,3,443,221,0,1314,230,1,0,0,0,1315,1316,3,431,215,0,1316,1317,3,445,222,0,1317,1318,3,427,213,0,1318,1319,3,427,213,0,1319,232,1,0,0,0,1320,1321,3,431,215,0,1321,1322,3,445,222,0,1322,1323,3,427,213,0,1323,1324,3,427,213,0,1324,1325,3,441,220,0,1325,234,1,0,0,0,1326,1327,3,433,216,0,1327,1328,3,415,207,0,1328,1329,3,415,207,0,1329,1330,3,441,220,0,1330,1331,3,413,206,0,1331,1332,3,443,221,0,1332,236,1,0,0,0,1333,1334,3,433,216,0,1334,1335,3,431,215,0,1335,238,1,0,0,0,1336,1337,3,433,216,0,1337,1338,3,435,217,0,1338,1339,3,443,221,0,1339,1340,3,421,210,0,1340,1341,3,429,214,0,1341,1342,3,421,210,0,1342,1343,3,455,227,0,1343,1344,3,413,206,0,1344,240,1,0,0,0,1345,1346,3,433,216,0,1346,1347,3,439,219,0,1347,242,1,0,0,0,1348,1349,3,433,216,0,1349,1350,3,439,219,0,1350,1351,3,411,205,0,1351,1352,3,413,206,0,1352,1353,3,439,219,0,1353,244,1,0,0,0,1354,1355,3,433,216,0,1355,1356,3,445,222,0,1356,1357,3,443,221,0,1357,1358,3,413,206,0,1358,1359,3,439,219,0,1359,246,1,0,0,0,1360,1361,3,433,216,0,1361,1362,3,445,222,0,1362,1363,3,443,221,0,1363,1364,3,415,207,0,1364,1365,3,421,210,0,1365,1366,3,427,213,0,1366,1367,3,413,206,0,1367,248,1,0,0,0,1368,1369,3,433,216,0,1369,1370,3,447,223,0,1370,1371,3,413,206,0,1371,1372,3,439,219,0,1372,250,1,0,0,0,1373,1374,3,435,217,0,1374,1375,3,405,202,0,1375,1376,3,439,219,0,1376,1377,3,443,221,0,1377,1378,3,421,210,0,1378,1379,3,443,221,0,1379,1380,3,421,210,0,1380,1381,3,433,216,0,1381,1382,3,431,215,0,1382,252,1,0,0,0,1383,1384,3,435,217,0,1384,1385,3,421,210,0,1385,1386,3,435,217,0,1386,1387,3,413,206,0,1387,1388,3,427,213,0,1388,1389,3,421,210,0,1389,1390,3,431,215,0,1390,1391,3,413,206,0,1391,254,1,0,0,0,1392,1393,3,435,217,0,1393,1394,3,427,213,0,1394,1395,3,405,202,0,1395,1396,3,431,215,0,1396,256,1,0,0,0,1397,1398,3,435,217,0,1398,1399,3,433,216,0,1399,1400,3,435,217,0,1400,1401,3,445,222,0,1401,1402,3,427,213,0,1402,1403,3,405,202,0,1403,1404,3,443,221,0,1404,1405,3,413,206,0,1405,258,1,0,0,0,1406,1407,3,435,217,0,1407,1408,3,439,219,0,1408,1409,3,413,206,0,1409,1410,3,409,204,0,1410,1411,3,413,206,0,1411,1412,3,411,205,0,1412,1413,3,421,210,0,1413,1414,3,431,215,0,1414,1415,3,417,208,0,1415,260,1,0,0,0,1416,1417,3,435,217,0,1417,1418,3,439,219,0,1418,1419,3,413,206,0,1419,1420,3,449,224,0,1420,1421,3,419,209,0,1421,1422,3,413,206,0,1422,1423,3,439,219,0,1423,1424,3,413,206,0,1424,262,1,0,0,0,1425,1426,3,435,217,0,1426,1427,3,439,219,0,1427,1428,3,421,210,0,1428,1429,3,429,214,0,1429,1430,3,405,202,0,1430,1431,3,439,219,0,1431,1432,3,453,226,0,1432,264,1,0,0,0,1433,1434,3,435,217,0,1434,1435,3,439,219,0,1435,1436,3,433,216,0,1436,1437,3,423,211,0,1437,1438,3,413,206,0,1438,1439,3,409,204,0,1439,1440,3,443,221,0,1440,1441,3,421,210,0,1441,1442,3,433,216,0,1442,1443,3,431,215,0,1443,266,1,0,0,0,1444,1445,3,437,218,0,1445,1446,3,445,222,0,1446,1447,3,405,202,0,1447,1448,3,439,219,0,1448,1449,3,443,221,0,1449,1450,3,413,206,0,1450,1451,3,439,219,0,1451,268,1,0,0,0,1452,1453,3,437,218,0,1453,1454,3,445,222,0,1454,1455,3,413,206,0,1455,1456,3,439,219,0,1456,1457,3,453,226,0,1457,270,1,0,0,0,1458,1459,3,439,219,0,1459,1460,3,405,202,0,1460,1461,3,431,215,0,1461,1462,3,417,208,0,1462,1463,3,413,206,0,1463,272,1,0,0,0,1464,1465,3,439,219,0,1465,1466,3,413,206,0,1466,1467,3,427,213,0,1467,1468,3,433,216,0,1468,1469,3,405,202,0,1469,1470,3,411,205,0,1470,274,1,0,0,0,1471,1472,3,439,219,0,1472,1473,3,413,206,0,1473,1474,3,429,214,0,1474,1475,3,433,216,0,1475,1476,3,447,223,0,1476,1477,3,413,206,0,1477,276,1,0,0,0,1478,1479,3,439,219,0,1479,1480,3,413,206,0,1480,1481,3,431,215,0,1481,1482,3,405,202,0,1482,1483,3,429,214,0,1483,1484,3,413,206,0,1484,278,1,0,0,0,1485,1486,3,439,219,0,1486,1487,3,413,206,0,1487,1488,3,435,217,0,1488,1489,3,427,213,0,1489,1490,3,405,202,0,1490,1491,3,409,204,0,1491,1492,3,413,206,0,1492,280,1,0,0,0,1493,1494,3,439,219,0,1494,1495,3,413,206,0,1495,1496,3,435,217,0,1496,1497,3,427,213,0,1497,1498,3,421,210,0,1498,1499,3,409,204,0,1499,1500,3,405,202,0,1500,282,1,0,0,0,1501,1502,3,439,219,0,1502,1503,3,413,206,0,1503,1504,3,435,217,0,1504,1505,3,427,213,0,1505,1506,3,421,210,0,1506,1507,3,409,204,0,1507,1508,3,405,202,0,1508,1509,3,443,221,0,1509,1510,3,413,206,0,1510,1511,3,411,205,0,1511,284,1,0,0,0,1512,1513,3,439,219,0,1513,1514,3,421,210,0,1514,1515,3,417,208,0,1515,1516,3,419,209,0,1516,1517,3,443,221,0,1517,286,1,0,0,0,1518,1519,3,439,219,0,1519,1520,3,433,216,0,1520,1521,3,427,213,0,1521,1522,3,427,213,0,1522,1523,3,445,222,0,1523,1524,3,435,217,0,1524,288,1,0,0,0,1525,1526,3,439,219,0,1526,1527,3,433,216,0,1527,1528,3,449,224,0,1528,290,1,0,0,0,1529,1530,3,439,219,0,1530,1531,3,433,216,0,1531,1532,3,449,224,0,1532,1533,3,441,220,0,1533,292,1,0,0,0,1534,1535,3,441,220,0,1535,1536,3,405,202,0,1536,1537,3,429,214,0,1537,1538,3,435,217,0,1538,1539,3,427,213,0,1539,1540,3,413,206,0,1540,294,1,0,0,0,1541,1542,3,441,220,0,1542,1543,3,413,206,0,1543,1544,3,409,204,0,1544,1545,3,433,216,0,1545,1546,3,431,215,0,1546,1547,3,411,205,0,1547,296,1,0,0,0,1548,1549,3,441,220,0,1549,1550,3,413,206,0,1550,1551,3,427,213,0,1551,1552,3,413,206,0,1552,1553,3,409,204,0,1553,1554,3,443,221,0,1554,298,1,0,0,0,1555,1556,3,441,220,0,1556,1557,3,413,206,0,1557,1558,3,429,214,0,1558,1559,3,421,210,0,1559,300,1,0,0,0,1560,1561,3,441,220,0,1561,1562,3,413,206,0,1562,1563,3,431,215,0,1563,1564,3,411,205,0,1564,1565,3,441,220,0,1565,302,1,0,0,0,1566,1567,3,441,220,0,1567,1568,3,413,206,0,1568,1569,3,443,221,0,1569,304,1,0,0,0,1570,1571,3,441,220,0,1571,1572,3,413,206,0,1572,1573,3,443,221,0,1573,1574,3,443,221,0,1574,1575,3,421,210,0,1575,1576,3,431,215,0,1576,1577,3,417,208,0,1577,1578,3,441,220,0,1578,306,1,0,0,0,1579,1580,3,441,220,0,1580,1581,3,419,209,0,1581,1582,3,433,216,0,1582,1583,3,449,224,0,1583,308,1,0,0,0,1584,1585,3,441,220,0,1585,1586,3,433,216,0,1586,1587,3,445,222,0,1587,1588,3,439,219,0,1588,1589,3,409,204,0,1589,1590,3,413,206,0,1590,310,1,0,0,0,1591,1592,3,441,220,0,1592,1593,3,443,221,0,1593,1594,3,405,202,0,1594,1595,3,439,219,0,1595,1596,3,443,221,0,1596,312,1,0,0,0,1597,1598,3,441,220,0,1598,1599,3,443,221,0,1599,1600,3,433,216,0,1600,1601,3,435,217,0,1601,314,1,0,0,0,1602,1603,3,441,220,0,1603,1604,3,445,222,0,1604,1605,3,407,203,0,1605,1606,3,441,220,0,1606,1607,3,443,221,0,1607,1608,3,439,219,0,1608,1609,3,421,210,0,1609,1610,3,431,215,0,1610,1611,3,417,208,0,1611,316,1,0,0,0,1612,1613,3,441,220,0,1613,1614,3,453,226,0,1614,1615,3,431,215,0,1615,1616,3,409,204,0,1616,318,1,0,0,0,1617,1618,3,441,220,0,1618,1619,3,453,226,0,1619,1620,3,431,215,0,1620,1621,3,443,221,0,1621,1622,3,405,202,0,1622,1623,3,451,225,0,1623,320,1,0,0,0,1624,1625,3,441,220,0,1625,1626,3,453,226,0,1626,1627,3,441,220,0,1627,1628,3,443,221,0,1628,1629,3,413,206,0,1629,1630,3,429,214,0,1630,322,1,0,0,0,1631,1632,3,443,221,0,1632,1633,3,405,202,0,1633,1634,3,407,203,0,1634,1635,3,427,213,0,1635,1636,3,413,206,0,1636,324,1,0,0,0,1637,1638,3,443,221,0,1638,1639,3,405,202,0,1639,1640,3,407,203,0,1640,1641,3,427,213,0,1641,1642,3,413,206,0,1642,1643,3,441,220,0,1643,326,1,0,0,0,1644,1645,3,443,221,0,1645,1646,3,413,206,0,1646,1647,3,429,214,0,1647,1648,3,435,217,0,1648,1649,3,433,216,0,1649,1650,3,439,219,0,1650,1651,3,405,202,0,1651,1652,3,439,219,0,1652,1653,3,453,226,0,1653,328,1,0,0,0,1654,1655,3,443,221,0,1655,1656,3,413,206,0,1656,1657,3,441,220,0,1657,1658,3,443,221,0,1658,330,1,0,0,0,1659,1660,3,443,221,0,1660,1661,3,419,209,0,1661,1662,3,413,206,0,1662,1663,3,431,215,0,1663,332,1,0,0,0,1664,1665,3,443,221,0,1665,1666,3,421,210,0,1666,1667,3,413,206,0,1667,1668,3,441,220,0,1668,334,1,0,0,0,1669,1670,3,443,221,0,1670,1671,3,421,210,0,1671,1672,3,429,214,0,1672,1673,3,413,206,0,1673,1674,3,433,216,0,1674,1675,3,445,222,0,1675,1676,3,443,221,0,1676,336,1,0,0,0,1677,1678,3,443,221,0,1678,1679,3,421,210,0,1679,1680,3,429,214,0,1680,1681,3,413,206,0,1681,1682,3,441,220,0,1682,1683,3,443,221,0,1683,1684,3,405,202,0,1684,1685,3,429,214,0,1685,1686,3,435,217,0,1686,338,1,0,0,0,1687,1688,3,443,221,0,1688,1689,3,433,216,0,1689,340,1,0,0,0,1690,1691,3,443,221,0,1691,1692,3,433,216,0,1692,1693,3,435,217,0,1693,342,1,0,0,0,1694,1695,3,443,221,0,1695,1696,3,433,216,0,1696,1697,3,443,221,0,1697,1698,3,405,202,0,1698,1699,3,427,213,0,1699,1700,3,441,220,0,1700,344,1,0,0,0,1701,1702,3,443,221,0,1702,1703,3,439,219,0,1703,1704,3,405,202,0,1704,1705,3,421,210,0,1705,1706,3,427,213,0,1706,1707,3,421,210,0,1707,1708,3,431,215,0,1708,1709,3,417,208,0,1709,346,1,0,0,0,1710,1711,3,443,221,0,1711,1712,3,439,219,0,1712,1713,3,421,210,0,1713,1714,3,429,214,0,1714,348,1,0,0,0,1715,1716,3,443,221,0,1716,1717,3,439,219,0,1717,1718,3,413,206,0,1718,1719,3,413,206,0,1719,350,1,0,0,0,1720,1721,3,443,221,0,1721,1722,3,439,219,0,1722,1723,3,445,222,0,1723,1724,3,431,215,0,1724,1725,3,409,204,0,1725,1726,3,405,202,0,1726,1727,3,443,221,0,1727,1728,3,413,206,0,1728,352,1,0,0,0,1729,1730,3,443,221,0,1730,1731,3,443,221,0,1731,1732,3,427,213,0,1732,354,1,0,0,0,1733,1734,3,443,221,0,1734,1735,3,453,226,0,1735,1736,3,435,217,0,1736,1737,3,413,206,0,1737,356,1,0,0,0,1738,1739,3,445,222,0,1739,1740,3,431,215,0,1740,1741,3,407,203,0,1741,1742,3,433,216,0,1742,1743,3,445,222,0,1743,1744,3,431,215,0,1744,1745,3,411,205,0,1745,1746,3,413,206,0,1746,1747,3,411,205,0,1747,358,1,0,0,0,1748,1749,3,445,222,0,1749,1750,3,431,215,0,1750,1751,3,421,210,0,1751,1752,3,433,216,0,1752,1753,3,431,215,0,1753,360,1,0,0,0,1754,1755,3,445,222,0,1755,1756,3,435,217,0,1756,1757,3,411,205,0,1757,1758,3,405,202,0,1758,1759,3,443,221,0,1759,1760,3,413,206,0,1760,362,1,0,0,0,1761,1762,3,445,222,0,1762,1763,3,441,220,0,1763,1764,3,413,206,0,1764,364,1,0,0,0,1765,1766,3,445,222,0,1766,1767,3,441,220,0,1767,1768,3,421,210,0,1768,1769,3,431,215,0,1769,1770,3,417,208,0,1770,366,1,0,0,0,1771,1772,3,445,222,0,1772,1773,3,445,222,0,1773,1774,3,421,210,0,1774,1775,3,411,205,0,1775,368,1,0,0,0,1776,1777,3,447,223,0,1777,1778,3,405,202,0,1778,1779,3,427,213,0,1779,1780,3,445,222,0,1780,1781,3,413,206,0,1781,1782,3,441,220,0,1782,370,1,0,0,0,1783,1784,3,447,223,0,1784,1785,3,421,210,0,1785,1786,3,413,206,0,1786,1787,3,449,224,0,1787,372,1,0,0,0,1788,1789,3,447,223,0,1789,1790,3,433,216,0,1790,1791,3,427,213,0,1791,1792,3,445,222,0,1792,1793,3,429,214,0,1793,1794,3,413,206,0,1794,374,1,0,0,0,1795,1796,3,449,224,0,1796,1797,3,405,202,0,1797,1798,3,443,221,0,1798,1799,3,409,204,0,1799,1800,3,419,209,0,1800,376,1,0,0,0,1801,1802,3,449,224,0,1802,1803,3,413,206,0,1803,1804,3,413,206,0,1804,1805,3,425,212,0,1805,378,1,0,0,0,1806,1807,3,449,224,0,1807,1808,3,419,209,0,1808,1809,3,413,206,0,1809,1810,3,431,215,0,1810,380,1,0,0,0,1811,1812,3,449,224,0,1812,1813,3,419,209,0,1813,1814,3,413,206,0,1814,1815,3,439,219,0,1815,1816,3,413,206,0,1816,382,1,0,0,0,1817,1818,3,449,224,0,1818,1819,3,421,210,0,1819,1820,3,431,215,0,1820,1821,3,411,205,0,1821,1822,3,433,216,0,1822,1823,3,449,224,0,1823,384,1,0,0,0,1824,1825,3,449,224,0,1825,1826,3,421,210,0,1826,1827,3,443,221,0,1827,1828,3,419,209,0,1828,386,1,0,0,0,1829,1830,3,453,226,0,1830,1831,3,413,206,0,1831,1832,3,405,202,0,1832,1833,3,439,219,0,1833,1840,1,0,0,0,1834,1835,3,453,226,0,1835,1836,3,453,226,0,1836,1837,3,453,226,0,1837,1838,3,453,226,0,1838,1840,1,0,0,0,1839,1829,1,0,0,0,1839,1834,1,0,0,0,1840,388,1,0,0,0,1841,1842,5,102,0,0,1842,1843,5,97,0,0,1843,1844,5,108,0,0,1844,1845,5,115,0,0,1845,1846,5,101,0,0,1846,390,1,0,0,0,1847,1848,5,116,0,0,1848,1849,5,114,0,0,1849,1850,5,117,0,0,1850,1851,5,101,0,0,1851,392,1,0,0,0,1852,1855,3,457,228,0,1853,1855,3,523,261,0,1854,1852,1,0,0,0,1854,1853,1,0,0,0,1855,1861,1,0,0,0,1856,1860,3,457,228,0,1857,1860,3,523,261,0,1858,1860,3,461,230,0,1859,1856,1,0,0,0,1859,1857,1,0,0,0,1859,1858,1,0,0,0,1860,1863,1,0,0,0,1861,1859,1,0,0,0,1861,1862,1,0,0,0,1862,1895,1,0,0,0,1863,1861,1,0,0,0,1864,1874,3,469,234,0,1865,1873,8,0,0,0,1866,1867,3,471,235,0,1867,1868,9,0,0,0,1868,1873,1,0,0,0,1869,1870,3,469,234,0,1870,1871,3,469,234,0,1871,1873,1,0,0,0,1872,1865,1,0,0,0,1872,1866,1,0,0,0,1872,1869,1,0,0,0,1873,1876,1,0,0,0,1874,1872,1,0,0,0,1874,1875,1,0,0,0,1875,1877,1,0,0,0,1876,1874,1,0,0,0,1877,1878,3,469,234,0,1878,1895,1,0,0,0,1879,1889,3,509,254,0,1880,1888,8,1,0,0,1881,1882,3,471,235,0,1882,1883,9,0,0,0,1883,1888,1,0,0,0,1884,1885,3,509,254,0,1885,1886,3,509,254,0,1886,1888,1,0,0,0,1887,1880,1,0,0,0,1887,1881,1,0,0,0,1887,1884,1,0,0,0,1888,1891,1,0,0,0,1889,1887,1,0,0,0,1889,1890,1,0,0,0,1890,1892,1,0,0,0,1891,1889,1,0,0,0,1892,1893,3,509,254,0,1893,1895,1,0,0,0,1894,1854,1,0,0,0,1894,1864,1,0,0,0,1894,1879,1,0,0,0,1895,394,1,0,0,0,1896,1897,3,401,200,0,1897,1901,3,481,240,0,1898,1900,3,463,231,0,1899,1898,1,0,0,0,1900,1903,1,0,0,0,1901,1899,1,0,0,0,1901,1902,1,0,0,0,1902,1906,1,0,0,0,1903,1901,1,0,0,0,1904,1907,3,435,217,0,1905,1907,3,413,206,0,1906,1904,1,0,0,0,1906,1905,1,0,0,0,1907,1910,1,0,0,0,1908,1911,3,505,252,0,1909,1911,3,479,239,0,1910,1908,1,0,0,0,1910,1909,1,0,0,0,1910,1911,1,0,0,0,1911,1913,1,0,0,0,1912,1914,3,461,230,0,1913,1912,1,0,0,0,1914,1915,1,0,0,0,1915,1913,1,0,0,0,1915,1916,1,0,0,0,1916,1973,1,0,0,0,1917,1920,3,401,200,0,1918,1921,3,435,217,0,1919,1921,3,413,206,0,1920,1918,1,0,0,0,1920,1919,1,0,0,0,1921,1924,1,0,0,0,1922,1925,3,505,252,0,1923,1925,3,479,239,0,1924,1922,1,0,0,0,1924,1923,1,0,0,0,1924,1925,1,0,0,0,1925,1927,1,0,0,0,1926,1928,3,461,230,0,1927,1926,1,0,0,0,1928,1929,1,0,0,0,1929,1927,1,0,0,0,1929,1930,1,0,0,0,1930,1973,1,0,0,0,1931,1932,3,399,199,0,1932,1936,3,481,240,0,1933,1935,3,461,230,0,1934,1933,1,0,0,0,1935,1938,1,0,0,0,1936,1934,1,0,0,0,1936,1937,1,0,0,0,1937,1939,1,0,0,0,1938,1936,1,0,0,0,1939,1942,3,413,206,0,1940,1943,3,505,252,0,1941,1943,3,479,239,0,1942,1940,1,0,0,0,1942,1941,1,0,0,0,1942,1943,1,0,0,0,1943,1945,1,0,0,0,1944,1946,3,461,230,0,1945,1944,1,0,0,0,1946,1947,1,0,0,0,1947,1945,1,0,0,0,1947,1948,1,0,0,0,1948,1973,1,0,0,0,1949,1950,3,481,240,0,1950,1951,3,399,199,0,1951,1954,3,413,206,0,1952,1955,3,505,252,0,1953,1955,3,479,239,0,1954,1952,1,0,0,0,1954,1953,1,0,0,0,1954,1955,1,0,0,0,1955,1957,1,0,0,0,1956,1958,3,461,230,0,1957,1956,1,0,0,0,1958,1959,1,0,0,0,1959,1957,1,0,0,0,1959,1960,1,0,0,0,1960,1973,1,0,0,0,1961,1962,3,399,199,0,1962,1965,3,413,206,0,1963,1966,3,505,252,0,1964,1966,3,479,239,0,1965,1963,1,0,0,0,1965,1964,1,0,0,0,1965,1966,1,0,0,0,1966,1968,1,0,0,0,1967,1969,3,461,230,0,1968,1967,1,0,0,0,1969,1970,1,0,0,0,1970,1968,1,0,0,0,1970,1971,1,0,0,0,1971,1973,1,0,0,0,1972,1896,1,0,0,0,1972,1917,1,0,0,0,1972,1931,1,0,0,0,1972,1949,1,0,0,0,1972,1961,1,0,0,0,1973,396,1,0,0,0,1974,1976,5,48,0,0,1975,1977,3,459,229,0,1976,1975,1,0,0,0,1977,1978,1,0,0,0,1978,1976,1,0,0,0,1978,1979,1,0,0,0,1979,398,1,0,0,0,1980,1982,3,461,230,0,1981,1980,1,0,0,0,1982,1983,1,0,0,0,1983,1981,1,0,0,0,1983,1984,1,0,0,0,1984,400,1,0,0,0,1985,1986,5,48,0,0,1986,1988,3,451,225,0,1987,1989,3,463,231,0,1988,1987,1,0,0,0,1989,1990,1,0,0,0,1990,1988,1,0,0,0,1990,1991,1,0,0,0,1991,402,1,0,0,0,1992,2002,3,511,255,0,1993,2001,8,2,0,0,1994,1995,3,471,235,0,1995,1996,9,0,0,0,1996,2001,1,0,0,0,1997,1998,3,511,255,0,1998,1999,3,511,255,0,1999,2001,1,0,0,0,2e3,1993,1,0,0,0,2e3,1994,1,0,0,0,2e3,1997,1,0,0,0,2001,2004,1,0,0,0,2002,2e3,1,0,0,0,2002,2003,1,0,0,0,2003,2005,1,0,0,0,2004,2002,1,0,0,0,2005,2006,3,511,255,0,2006,404,1,0,0,0,2007,2008,7,3,0,0,2008,406,1,0,0,0,2009,2010,7,4,0,0,2010,408,1,0,0,0,2011,2012,7,5,0,0,2012,410,1,0,0,0,2013,2014,7,6,0,0,2014,412,1,0,0,0,2015,2016,7,7,0,0,2016,414,1,0,0,0,2017,2018,7,8,0,0,2018,416,1,0,0,0,2019,2020,7,9,0,0,2020,418,1,0,0,0,2021,2022,7,10,0,0,2022,420,1,0,0,0,2023,2024,7,11,0,0,2024,422,1,0,0,0,2025,2026,7,12,0,0,2026,424,1,0,0,0,2027,2028,7,13,0,0,2028,426,1,0,0,0,2029,2030,7,14,0,0,2030,428,1,0,0,0,2031,2032,7,15,0,0,2032,430,1,0,0,0,2033,2034,7,16,0,0,2034,432,1,0,0,0,2035,2036,7,17,0,0,2036,434,1,0,0,0,2037,2038,7,18,0,0,2038,436,1,0,0,0,2039,2040,7,19,0,0,2040,438,1,0,0,0,2041,2042,7,20,0,0,2042,440,1,0,0,0,2043,2044,7,21,0,0,2044,442,1,0,0,0,2045,2046,7,22,0,0,2046,444,1,0,0,0,2047,2048,7,23,0,0,2048,446,1,0,0,0,2049,2050,7,24,0,0,2050,448,1,0,0,0,2051,2052,7,25,0,0,2052,450,1,0,0,0,2053,2054,7,26,0,0,2054,452,1,0,0,0,2055,2056,7,27,0,0,2056,454,1,0,0,0,2057,2058,7,28,0,0,2058,456,1,0,0,0,2059,2060,7,29,0,0,2060,458,1,0,0,0,2061,2062,7,30,0,0,2062,460,1,0,0,0,2063,2064,7,31,0,0,2064,462,1,0,0,0,2065,2066,7,32,0,0,2066,464,1,0,0,0,2067,2068,5,45,0,0,2068,2069,5,62,0,0,2069,466,1,0,0,0,2070,2071,5,42,0,0,2071,468,1,0,0,0,2072,2073,5,96,0,0,2073,470,1,0,0,0,2074,2075,5,92,0,0,2075,472,1,0,0,0,2076,2077,5,58,0,0,2077,474,1,0,0,0,2078,2079,5,44,0,0,2079,476,1,0,0,0,2080,2081,5,124,0,0,2081,2082,5,124,0,0,2082,478,1,0,0,0,2083,2084,5,45,0,0,2084,480,1,0,0,0,2085,2086,5,46,0,0,2086,482,1,0,0,0,2087,2088,5,61,0,0,2088,2089,5,61,0,0,2089,484,1,0,0,0,2090,2091,5,61,0,0,2091,486,1,0,0,0,2092,2093,5,62,0,0,2093,2094,5,61,0,0,2094,488,1,0,0,0,2095,2096,5,62,0,0,2096,490,1,0,0,0,2097,2098,5,123,0,0,2098,492,1,0,0,0,2099,2100,5,91,0,0,2100,494,1,0,0,0,2101,2102,5,60,0,0,2102,2103,5,61,0,0,2103,496,1,0,0,0,2104,2105,5,40,0,0,2105,498,1,0,0,0,2106,2107,5,60,0,0,2107,500,1,0,0,0,2108,2109,5,33,0,0,2109,2113,5,61,0,0,2110,2111,5,60,0,0,2111,2113,5,62,0,0,2112,2108,1,0,0,0,2112,2110,1,0,0,0,2113,502,1,0,0,0,2114,2115,5,37,0,0,2115,504,1,0,0,0,2116,2117,5,43,0,0,2117,506,1,0,0,0,2118,2119,5,63,0,0,2119,508,1,0,0,0,2120,2121,5,34,0,0,2121,510,1,0,0,0,2122,2123,5,39,0,0,2123,512,1,0,0,0,2124,2125,5,125,0,0,2125,514,1,0,0,0,2126,2127,5,93,0,0,2127,516,1,0,0,0,2128,2129,5,41,0,0,2129,518,1,0,0,0,2130,2131,5,59,0,0,2131,520,1,0,0,0,2132,2133,5,47,0,0,2133,522,1,0,0,0,2134,2135,5,95,0,0,2135,524,1,0,0,0,2136,2137,5,47,0,0,2137,2138,5,42,0,0,2138,2142,1,0,0,0,2139,2141,9,0,0,0,2140,2139,1,0,0,0,2141,2144,1,0,0,0,2142,2143,1,0,0,0,2142,2140,1,0,0,0,2143,2145,1,0,0,0,2144,2142,1,0,0,0,2145,2146,5,42,0,0,2146,2147,5,47,0,0,2147,2148,1,0,0,0,2148,2149,6,262,0,0,2149,526,1,0,0,0,2150,2151,5,45,0,0,2151,2152,5,45,0,0,2152,2156,1,0,0,0,2153,2155,8,33,0,0,2154,2153,1,0,0,0,2155,2158,1,0,0,0,2156,2154,1,0,0,0,2156,2157,1,0,0,0,2157,2160,1,0,0,0,2158,2156,1,0,0,0,2159,2161,7,34,0,0,2160,2159,1,0,0,0,2161,2162,1,0,0,0,2162,2163,6,263,0,0,2163,528,1,0,0,0,2164,2165,7,35,0,0,2165,2166,1,0,0,0,2166,2167,6,264,1,0,2167,530,1,0,0,0,36,0,593,1100,1839,1854,1859,1861,1872,1874,1887,1889,1894,1901,1906,1910,1915,1920,1924,1929,1936,1942,1947,1954,1959,1965,1970,1972,1978,1983,1990,2e3,2002,2112,2142,2156,2160,2,6,0,0,0,1,0],Ji.vocabulary=new Ra(Ji.literalNames,Ji.symbolicNames,[]),Ji.decisionsToDFA=Ji._ATN.decisionToState.map(((t,e)=>new ni(t,e))),Ji),CG=(Zi=class t extends Cc{get grammarFileName(){return"ClickHouseParser.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}createFailedPredicateException(t,e){return new Sc(this,t,e)}constructor(e){super(e),this.interpreter=new Ai(this,t._ATN,t.decisionsToDFA,new Si)}root(){let e,s=new _G(this.context,this.state);this.enterRule(s,0,t.RULE_root);try{this.enterOuterAlt(s,1),this.state=257,this.errorHandler.sync(this),e=this.tokenStream.LA(1),(!(-32&e)&&1<'","'*'","'`'","''","':'","','","'||'","'-'","'.'","'=='","'='","'>='","'>'","'{'","'['","'<='","'('","'<'",null,"'%'","'+'","'?'","'\"'","'''","'}'","']'","')'","';'","'/'","'_'"],Zi.symbolicNames=[null,"ADD","AFTER","ALIAS","ALL","ALTER","AND","ANTI","ANY","ARRAY","AS","ASCENDING","ASOF","AST","ASYNC","ATTACH","BETWEEN","BOTH","BY","CASE","CAST","CHECK","CLEAR","CLUSTER","CODEC","COLLATE","COLUMN","COMMENT","CONSTRAINT","CREATE","CROSS","CUBE","CURRENT","DATABASE","DATABASES","DATE","DAY","DEDUPLICATE","DEFAULT","DELAY","DELETE","DESC","DESCENDING","DESCRIBE","DETACH","DICTIONARIES","DICTIONARY","DISK","DISTINCT","DISTRIBUTED","DROP","ELSE","END","ENGINE","ESTIMATE","EVENTS","EXISTS","EXPLAIN","EXPRESSION","EXTRACT","FETCHES","FINAL","FIRST","FLUSH","FOLLOWING","FOR","FORMAT","FREEZE","FROM","FULL","FUNCTION","GLOBAL","GRANULARITY","GROUP","HAVING","HIERARCHICAL","HOUR","ID","IF","ILIKE","IN","INDEX","INF","INJECTIVE","INNER","INSERT","INTERVAL","INTO","IS","IS_OBJECT_ID","JOIN","KEY","KILL","LAST","LAYOUT","LEADING","LEFT","LIFETIME","LIKE","LIMIT","LIVE","LOCAL","LOGS","MATERIALIZE","MATERIALIZED","MAX","MERGES","MIN","MINUTE","MODIFY","MONTH","MOVE","MUTATION","NAN_SQL","NO","NOT","NULL_SQL","NULLS","OFFSET","ON","OPTIMIZE","OR","ORDER","OUTER","OUTFILE","OVER","PARTITION","PIPELINE","PLAN","POPULATE","PRECEDING","PREWHERE","PRIMARY","PROJECTION","QUARTER","QUERY","RANGE","RELOAD","REMOVE","RENAME","REPLACE","REPLICA","REPLICATED","RIGHT","ROLLUP","ROW","ROWS","SAMPLE","SECOND","SELECT","SEMI","SENDS","SET","SETTINGS","SHOW","SOURCE","START","STOP","SUBSTRING","SYNC","SYNTAX","SYSTEM","TABLE","TABLES","TEMPORARY","TEST","THEN","TIES","TIMEOUT","TIMESTAMP","TO","TOP","TOTALS","TRAILING","TRIM","TREE","TRUNCATE","TTL","TYPE","UNBOUNDED","UNION","UPDATE","USE","USING","UUID","VALUES","VIEW","VOLUME","WATCH","WEEK","WHEN","WHERE","WINDOW","WITH","YEAR","JSON_FALSE","JSON_TRUE","IDENTIFIER","FLOATING_LITERAL","OCTAL_LITERAL","DECIMAL_LITERAL","HEXADECIMAL_LITERAL","STRING_LITERAL","ARROW","ASTERISK","BACKQUOTE","BACKSLASH","COLON","COMMA","CONCAT","DASH","DOT","EQ_DOUBLE","EQ_SINGLE","GE","GT","LBRACE","LBRACKET","LE","LPAREN","LT","NOT_EQ","PERCENT","PLUS","QUESTIONMARK","QUOTE_DOUBLE","QUOTE_SINGLE","RBRACE","RBRACKET","RPAREN","SEMICOLON","SLASH","UNDERSCORE","MULTI_LINE_COMMENT","SINGLE_LINE_COMMENT","WHITESPACE"],Zi.ruleNames=["root","statements","statement","notInsertStatement","commonTableExpressionStatement","namedQuery","columnAliases","alterStatement","alterTableClause","assignmentExpressionList","assignmentExpression","tableColumnPropertyType","partitionClause","attachStatement","checkStatement","deleteStatement","createTableStatement","createDatabaseStatement","createDictionaryStatement","createLiveViewStatement","createMaterializedViewStatement","createViewStatement","createStatement","dictionarySchemaClause","dictionaryAttributeDefinition","dictionaryEngineClause","dictionaryPrimaryKeyClause","dictionaryArgumentExpression","sourceClause","lifetimeClause","layoutClause","rangeClause","dictionarySettingsClause","clusterClause","uuidClause","destinationClause","subqueryClause","tableSchemaClause","engineClause","partitionByClause","primaryKeyClause","sampleByClause","ttlClause","engineExpression","tableElementExpression","tableColumnDefinition","tableColumnPropertyExpression","tableIndexDefinition","tableProjectionDefinition","codecExpression","codecArgExpression","ttlExpression","describeStatement","dropStatement","existsStatement","explainStatement","insertStatement","columnsClause","dataClause","valuesStatement","killStatement","optimizeStatement","renameStatement","projectionSelectStatement","selectUnionStatement","selectStatementWithParentheses","selectStatement","withClause","topClause","fromClause","arrayJoinClause","windowClause","prewhereClause","whereClause","groupByClause","havingClause","orderByClause","projectionOrderByClause","limitByClause","limitClause","settingsClause","joinExpression","joinOperator","joinOperatorCross","joinConstraintClause","sampleClause","limitExpression","orderExpressionList","orderExpression","ratioExpression","settingExpressionList","settingExpression","windowExpression","windowPartitionByClause","windowOrderByClause","windowFrameClause","windowFrameExtend","windowFrameBound","setStatement","showStatement","systemStatement","truncateStatement","useStatement","watchStatement","columnTypeExpression","columnExpressionList","columnsExpression","columnExpression","columnArgumentList","columnArgumentExpression","columnLambdaExpression","columnIdentifier","tableExpression","tableFunctionExpression","tableIdentifier","tableArgList","tableArgExpression","databaseIdentifier","floatingLiteral","numberLiteral","literal","interval","keyword","keywordForAlias","alias","identifier","identifierOrNull","enumValue"],Zi._serializedATN=[4,1,235,2137,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,1,0,3,0,258,8,0,1,0,1,0,1,1,1,1,3,1,264,8,1,1,1,1,1,1,1,1,1,3,1,270,8,1,1,2,1,2,1,2,1,2,3,2,276,8,2,1,2,1,2,3,2,280,8,2,1,2,3,2,283,8,2,1,2,3,2,286,8,2,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,3,3,308,8,3,1,3,3,3,311,8,3,1,4,1,4,1,4,1,4,5,4,317,8,4,10,4,12,4,320,9,4,1,5,1,5,3,5,324,8,5,1,5,1,5,1,5,1,5,1,5,1,6,1,6,1,6,1,6,5,6,335,8,6,10,6,12,6,338,9,6,1,6,1,6,1,7,1,7,1,7,1,7,3,7,346,8,7,1,7,1,7,1,7,5,7,351,8,7,10,7,12,7,354,9,7,1,8,1,8,1,8,1,8,1,8,3,8,361,8,8,1,8,1,8,1,8,3,8,366,8,8,1,8,1,8,1,8,1,8,1,8,3,8,373,8,8,1,8,1,8,1,8,3,8,378,8,8,1,8,1,8,1,8,1,8,1,8,3,8,385,8,8,1,8,1,8,1,8,3,8,390,8,8,1,8,1,8,1,8,1,8,3,8,396,8,8,1,8,1,8,1,8,1,8,3,8,402,8,8,1,8,1,8,1,8,3,8,407,8,8,1,8,1,8,1,8,1,8,3,8,413,8,8,1,8,1,8,1,8,3,8,418,8,8,1,8,1,8,1,8,1,8,3,8,424,8,8,1,8,1,8,1,8,3,8,429,8,8,1,8,1,8,1,8,1,8,3,8,435,8,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,449,8,8,1,8,1,8,1,8,1,8,1,8,3,8,456,8,8,1,8,1,8,1,8,1,8,1,8,3,8,463,8,8,1,8,1,8,1,8,1,8,1,8,3,8,470,8,8,1,8,1,8,1,8,1,8,3,8,476,8,8,1,8,1,8,1,8,3,8,481,8,8,1,8,1,8,1,8,1,8,3,8,487,8,8,1,8,1,8,1,8,3,8,492,8,8,1,8,1,8,1,8,1,8,3,8,498,8,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,507,8,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,517,8,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,527,8,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,547,8,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,555,8,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,570,8,8,1,9,1,9,1,9,5,9,575,8,9,10,9,12,9,578,9,9,1,10,1,10,1,10,1,10,1,11,1,11,1,12,1,12,1,12,1,12,1,12,3,12,591,8,12,1,13,1,13,1,13,1,13,3,13,597,8,13,1,14,1,14,1,14,1,14,3,14,603,8,14,1,15,1,15,1,15,1,15,3,15,609,8,15,1,15,3,15,612,8,15,1,16,1,16,1,16,1,16,3,16,618,8,16,1,16,3,16,621,8,16,1,16,3,16,624,8,16,1,16,1,16,1,16,1,16,3,16,630,8,16,1,16,1,16,3,16,634,8,16,1,16,3,16,637,8,16,1,16,3,16,640,8,16,1,16,3,16,643,8,16,1,16,3,16,646,8,16,1,17,1,17,1,17,1,17,1,17,3,17,653,8,17,1,17,1,17,3,17,657,8,17,1,17,1,17,1,18,1,18,1,18,1,18,3,18,665,8,18,1,18,3,18,668,8,18,1,18,1,18,1,18,1,18,3,18,674,8,18,1,18,1,18,3,18,678,8,18,1,18,3,18,681,8,18,1,18,1,18,1,18,1,19,1,19,1,19,1,19,1,19,1,19,3,19,692,8,19,1,19,1,19,3,19,696,8,19,1,19,3,19,699,8,19,1,19,1,19,1,19,3,19,704,8,19,3,19,706,8,19,1,19,3,19,709,8,19,1,19,3,19,712,8,19,1,19,1,19,1,20,1,20,1,20,1,20,1,20,1,20,3,20,722,8,20,1,20,1,20,3,20,726,8,20,1,20,3,20,729,8,20,1,20,3,20,732,8,20,1,20,1,20,1,20,3,20,737,8,20,3,20,739,8,20,1,20,1,20,1,21,1,21,1,21,3,21,746,8,21,1,21,1,21,1,21,1,21,3,21,752,8,21,1,21,1,21,3,21,756,8,21,1,21,3,21,759,8,21,1,21,3,21,762,8,21,1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,22,3,22,772,8,22,1,23,1,23,1,23,1,23,5,23,778,8,23,10,23,12,23,781,9,23,1,23,1,23,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,5,24,806,8,24,10,24,12,24,809,9,24,1,25,3,25,812,8,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,5,25,834,8,25,10,25,12,25,837,9,25,1,26,1,26,1,26,1,26,1,27,1,27,1,27,1,27,3,27,847,8,27,1,27,3,27,850,8,27,1,28,1,28,1,28,1,28,1,28,5,28,857,8,28,10,28,12,28,860,9,28,1,28,1,28,1,28,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,3,29,876,8,29,1,29,1,29,1,30,1,30,1,30,1,30,1,30,5,30,885,8,30,10,30,12,30,888,9,30,1,30,1,30,1,30,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,3,31,905,8,31,1,31,1,31,1,32,1,32,1,32,1,32,1,32,1,33,1,33,1,33,1,33,3,33,918,8,33,1,34,1,34,1,34,1,35,1,35,1,35,1,36,1,36,1,36,1,37,1,37,1,37,1,37,5,37,933,8,37,10,37,12,37,936,9,37,1,37,1,37,1,37,1,37,1,37,1,37,3,37,944,8,37,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,5,38,971,8,38,10,38,12,38,974,9,38,1,39,1,39,1,39,1,39,1,40,1,40,1,40,1,40,1,41,1,41,1,41,1,41,1,42,1,42,1,42,1,42,5,42,992,8,42,10,42,12,42,995,9,42,1,43,1,43,3,43,999,8,43,1,43,1,43,1,43,3,43,1004,8,43,1,43,3,43,1007,8,43,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,1019,8,44,1,45,1,45,1,45,3,45,1024,8,45,1,45,1,45,3,45,1028,8,45,1,45,3,45,1031,8,45,1,45,1,45,3,45,1035,8,45,1,45,1,45,3,45,1039,8,45,1,45,1,45,1,45,3,45,1044,8,45,1,45,3,45,1047,8,45,1,45,1,45,3,45,1051,8,45,3,45,1053,8,45,1,46,1,46,1,46,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,49,1,49,1,49,1,49,1,49,5,49,1073,8,49,10,49,12,49,1076,9,49,1,49,1,49,1,50,1,50,1,50,3,50,1083,8,50,1,50,3,50,1086,8,50,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,3,51,1096,8,51,1,52,1,52,3,52,1100,8,52,1,52,1,52,1,53,1,53,1,53,1,53,3,53,1108,8,53,1,53,1,53,3,53,1112,8,53,1,53,1,53,1,53,3,53,1117,8,53,1,53,1,53,3,53,1121,8,53,1,53,1,53,3,53,1125,8,53,1,53,1,53,3,53,1129,8,53,1,53,1,53,3,53,1133,8,53,3,53,1135,8,53,1,54,1,54,1,54,1,54,1,54,1,54,3,54,1143,8,54,1,54,1,54,3,54,1147,8,54,1,54,3,54,1150,8,54,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,3,55,1173,8,55,1,56,1,56,1,56,3,56,1178,8,56,1,56,1,56,1,56,3,56,1183,8,56,1,56,3,56,1186,8,56,1,56,1,56,1,57,1,57,1,57,1,57,5,57,1194,8,57,10,57,12,57,1197,9,57,1,57,1,57,1,58,1,58,1,58,1,58,1,58,3,58,1206,8,58,1,58,1,58,3,58,1210,8,58,1,59,1,59,1,59,3,59,1215,8,59,1,59,1,59,1,59,1,59,3,59,1221,8,59,1,59,5,59,1224,8,59,10,59,12,59,1227,9,59,1,60,1,60,1,60,3,60,1232,8,60,1,60,1,60,3,60,1236,8,60,1,61,1,61,1,61,1,61,3,61,1242,8,61,1,61,3,61,1245,8,61,1,61,3,61,1248,8,61,1,61,3,61,1251,8,61,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,5,62,1263,8,62,10,62,12,62,1266,9,62,1,62,3,62,1269,8,62,1,63,1,63,3,63,1273,8,63,1,63,1,63,1,63,3,63,1278,8,63,1,63,3,63,1281,8,63,1,63,1,63,1,64,1,64,1,64,1,64,5,64,1289,8,64,10,64,12,64,1292,9,64,1,65,1,65,1,65,1,65,1,65,3,65,1299,8,65,1,66,3,66,1302,8,66,1,66,1,66,3,66,1306,8,66,1,66,3,66,1309,8,66,1,66,1,66,3,66,1313,8,66,1,66,3,66,1316,8,66,1,66,3,66,1319,8,66,1,66,3,66,1322,8,66,1,66,3,66,1325,8,66,1,66,3,66,1328,8,66,1,66,1,66,3,66,1332,8,66,1,66,1,66,3,66,1336,8,66,1,66,3,66,1339,8,66,1,66,3,66,1342,8,66,1,66,3,66,1345,8,66,1,66,3,66,1348,8,66,1,66,3,66,1351,8,66,1,67,1,67,1,67,1,68,1,68,1,68,1,68,3,68,1360,8,68,1,69,1,69,1,69,1,70,3,70,1366,8,70,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,72,1,72,1,72,1,73,1,73,1,73,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,3,74,1393,8,74,1,75,1,75,1,75,1,76,1,76,1,76,1,76,1,77,1,77,1,77,1,77,1,78,1,78,1,78,1,78,1,78,1,79,1,79,1,79,1,79,3,79,1415,8,79,1,80,1,80,1,80,1,81,1,81,1,81,3,81,1423,8,81,1,81,3,81,1426,8,81,1,81,1,81,1,81,1,81,3,81,1432,8,81,1,81,1,81,1,81,1,81,1,81,1,81,3,81,1440,8,81,1,81,3,81,1443,8,81,1,81,1,81,1,81,1,81,5,81,1449,8,81,10,81,12,81,1452,9,81,1,82,3,82,1455,8,82,1,82,1,82,1,82,3,82,1460,8,82,1,82,3,82,1463,8,82,1,82,3,82,1466,8,82,1,82,1,82,3,82,1470,8,82,1,82,1,82,3,82,1474,8,82,1,82,3,82,1477,8,82,3,82,1479,8,82,1,82,3,82,1482,8,82,1,82,1,82,3,82,1486,8,82,1,82,1,82,3,82,1490,8,82,1,82,3,82,1493,8,82,3,82,1495,8,82,3,82,1497,8,82,1,83,3,83,1500,8,83,1,83,1,83,1,83,3,83,1505,8,83,1,84,1,84,1,84,1,84,1,84,1,84,1,84,1,84,1,84,3,84,1516,8,84,1,85,1,85,1,85,1,85,3,85,1522,8,85,1,86,1,86,1,86,3,86,1527,8,86,1,87,1,87,1,87,5,87,1532,8,87,10,87,12,87,1535,9,87,1,88,1,88,3,88,1539,8,88,1,88,1,88,3,88,1543,8,88,1,88,1,88,3,88,1547,8,88,1,89,1,89,1,89,3,89,1552,8,89,1,90,1,90,1,90,5,90,1557,8,90,10,90,12,90,1560,9,90,1,91,1,91,1,91,1,91,1,92,3,92,1567,8,92,1,92,3,92,1570,8,92,1,92,3,92,1573,8,92,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,94,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,1,96,3,96,1592,8,96,1,97,1,97,1,97,1,97,1,97,1,97,1,97,1,97,1,97,1,97,1,97,1,97,3,97,1606,8,97,1,98,1,98,1,98,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,3,99,1622,8,99,1,99,3,99,1625,8,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,3,99,1634,8,99,1,99,1,99,3,99,1638,8,99,1,99,1,99,1,99,3,99,1643,8,99,1,99,1,99,1,99,3,99,1648,8,99,1,99,3,99,1651,8,99,3,99,1653,8,99,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,3,100,1675,8,100,1,100,3,100,1678,8,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,3,100,1689,8,100,1,101,1,101,3,101,1693,8,101,1,101,3,101,1696,8,101,1,101,1,101,3,101,1700,8,101,1,101,1,101,3,101,1704,8,101,1,102,1,102,1,102,1,103,1,103,1,103,3,103,1712,8,103,1,103,1,103,3,103,1716,8,103,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,5,104,1727,8,104,10,104,12,104,1730,9,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,5,104,1739,8,104,10,104,12,104,1742,9,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,5,104,1751,8,104,10,104,12,104,1754,9,104,1,104,1,104,1,104,1,104,1,104,3,104,1761,8,104,1,104,1,104,3,104,1765,8,104,1,105,1,105,1,105,5,105,1770,8,105,10,105,12,105,1773,9,105,1,106,1,106,1,106,3,106,1778,8,106,1,106,1,106,1,106,1,106,1,106,1,106,3,106,1786,8,106,1,107,1,107,1,107,3,107,1791,8,107,1,107,1,107,1,107,1,107,1,107,4,107,1798,8,107,11,107,12,107,1799,1,107,1,107,3,107,1804,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1835,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1852,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1864,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1874,8,107,1,107,3,107,1877,8,107,1,107,1,107,3,107,1881,8,107,1,107,3,107,1884,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1896,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1913,8,107,1,107,1,107,3,107,1917,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1934,8,107,1,107,3,107,1937,8,107,1,107,1,107,3,107,1941,8,107,1,107,3,107,1944,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1955,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1979,8,107,1,107,1,107,1,107,1,107,1,107,3,107,1986,8,107,5,107,1988,8,107,10,107,12,107,1991,9,107,1,108,1,108,1,108,5,108,1996,8,108,10,108,12,108,1999,9,108,1,109,1,109,3,109,2003,8,109,1,110,1,110,1,110,1,110,5,110,2009,8,110,10,110,12,110,2012,9,110,1,110,1,110,1,110,1,110,1,110,5,110,2019,8,110,10,110,12,110,2022,9,110,3,110,2024,8,110,1,110,1,110,1,110,1,111,1,111,1,111,3,111,2032,8,111,1,111,1,111,1,111,3,111,2037,8,111,1,112,1,112,1,112,1,112,1,112,1,112,1,112,3,112,2046,8,112,1,112,1,112,1,112,1,112,3,112,2052,8,112,5,112,2054,8,112,10,112,12,112,2057,9,112,1,113,1,113,1,113,3,113,2062,8,113,1,113,1,113,1,114,1,114,1,114,3,114,2069,8,114,1,114,1,114,1,115,1,115,1,115,5,115,2076,8,115,10,115,12,115,2079,9,115,1,116,1,116,1,116,3,116,2084,8,116,1,117,1,117,1,118,1,118,1,118,1,118,1,118,1,118,3,118,2094,8,118,3,118,2096,8,118,1,119,3,119,2099,8,119,1,119,1,119,1,119,1,119,1,119,1,119,3,119,2107,8,119,1,120,1,120,1,120,3,120,2112,8,120,1,121,1,121,1,122,1,122,1,123,1,123,1,124,1,124,3,124,2122,8,124,1,125,1,125,1,125,3,125,2127,8,125,1,126,1,126,3,126,2131,8,126,1,127,1,127,1,127,1,127,1,127,0,3,162,214,224,128,0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,0,28,6,0,3,3,24,24,27,27,38,38,104,104,177,177,2,0,15,15,29,29,3,0,3,3,38,38,104,104,2,0,41,41,43,43,2,0,44,44,50,50,3,0,14,14,159,159,165,165,2,0,31,31,144,144,2,0,84,84,96,96,2,0,71,71,101,101,3,0,4,4,8,8,12,12,4,0,4,4,7,8,12,12,150,150,2,0,96,96,143,143,2,0,4,4,8,8,2,0,118,118,208,208,2,0,11,11,41,42,2,0,62,62,93,93,2,0,136,136,146,146,2,0,68,68,80,80,1,0,156,157,3,0,17,17,95,95,173,173,3,0,204,204,222,222,231,231,2,0,209,210,223,223,2,0,79,79,98,98,1,0,199,200,2,0,210,210,223,223,8,0,36,36,76,76,108,108,110,110,134,134,148,148,189,189,194,194,15,0,2,35,37,53,55,75,77,81,83,107,109,109,111,112,114,115,117,126,129,132,136,147,149,174,176,188,190,193,195,196,4,0,35,35,62,62,77,77,91,91,2428,0,257,1,0,0,0,2,269,1,0,0,0,4,285,1,0,0,0,6,310,1,0,0,0,8,312,1,0,0,0,10,321,1,0,0,0,12,330,1,0,0,0,14,341,1,0,0,0,16,569,1,0,0,0,18,571,1,0,0,0,20,579,1,0,0,0,22,583,1,0,0,0,24,590,1,0,0,0,26,592,1,0,0,0,28,598,1,0,0,0,30,604,1,0,0,0,32,620,1,0,0,0,34,647,1,0,0,0,36,667,1,0,0,0,38,685,1,0,0,0,40,715,1,0,0,0,42,742,1,0,0,0,44,771,1,0,0,0,46,773,1,0,0,0,48,784,1,0,0,0,50,811,1,0,0,0,52,838,1,0,0,0,54,842,1,0,0,0,56,851,1,0,0,0,58,864,1,0,0,0,60,879,1,0,0,0,62,892,1,0,0,0,64,908,1,0,0,0,66,913,1,0,0,0,68,919,1,0,0,0,70,922,1,0,0,0,72,925,1,0,0,0,74,943,1,0,0,0,76,945,1,0,0,0,78,975,1,0,0,0,80,979,1,0,0,0,82,983,1,0,0,0,84,987,1,0,0,0,86,996,1,0,0,0,88,1018,1,0,0,0,90,1052,1,0,0,0,92,1054,1,0,0,0,94,1057,1,0,0,0,96,1064,1,0,0,0,98,1067,1,0,0,0,100,1079,1,0,0,0,102,1087,1,0,0,0,104,1097,1,0,0,0,106,1134,1,0,0,0,108,1149,1,0,0,0,110,1172,1,0,0,0,112,1174,1,0,0,0,114,1189,1,0,0,0,116,1209,1,0,0,0,118,1211,1,0,0,0,120,1228,1,0,0,0,122,1237,1,0,0,0,124,1252,1,0,0,0,126,1270,1,0,0,0,128,1284,1,0,0,0,130,1298,1,0,0,0,132,1301,1,0,0,0,134,1352,1,0,0,0,136,1355,1,0,0,0,138,1361,1,0,0,0,140,1365,1,0,0,0,142,1371,1,0,0,0,144,1378,1,0,0,0,146,1381,1,0,0,0,148,1384,1,0,0,0,150,1394,1,0,0,0,152,1397,1,0,0,0,154,1401,1,0,0,0,156,1405,1,0,0,0,158,1410,1,0,0,0,160,1416,1,0,0,0,162,1431,1,0,0,0,164,1496,1,0,0,0,166,1504,1,0,0,0,168,1515,1,0,0,0,170,1517,1,0,0,0,172,1523,1,0,0,0,174,1528,1,0,0,0,176,1536,1,0,0,0,178,1548,1,0,0,0,180,1553,1,0,0,0,182,1561,1,0,0,0,184,1566,1,0,0,0,186,1574,1,0,0,0,188,1578,1,0,0,0,190,1582,1,0,0,0,192,1591,1,0,0,0,194,1605,1,0,0,0,196,1607,1,0,0,0,198,1652,1,0,0,0,200,1688,1,0,0,0,202,1690,1,0,0,0,204,1705,1,0,0,0,206,1708,1,0,0,0,208,1764,1,0,0,0,210,1766,1,0,0,0,212,1785,1,0,0,0,214,1916,1,0,0,0,216,1992,1,0,0,0,218,2002,1,0,0,0,220,2023,1,0,0,0,222,2031,1,0,0,0,224,2045,1,0,0,0,226,2058,1,0,0,0,228,2068,1,0,0,0,230,2072,1,0,0,0,232,2083,1,0,0,0,234,2085,1,0,0,0,236,2095,1,0,0,0,238,2098,1,0,0,0,240,2111,1,0,0,0,242,2113,1,0,0,0,244,2115,1,0,0,0,246,2117,1,0,0,0,248,2121,1,0,0,0,250,2126,1,0,0,0,252,2130,1,0,0,0,254,2132,1,0,0,0,256,258,3,2,1,0,257,256,1,0,0,0,257,258,1,0,0,0,258,259,1,0,0,0,259,260,5,0,0,1,260,1,1,0,0,0,261,263,3,4,2,0,262,264,5,230,0,0,263,262,1,0,0,0,263,264,1,0,0,0,264,270,1,0,0,0,265,266,3,4,2,0,266,267,5,230,0,0,267,268,3,2,1,0,268,270,1,0,0,0,269,261,1,0,0,0,269,265,1,0,0,0,270,3,1,0,0,0,271,275,3,6,3,0,272,273,5,87,0,0,273,274,5,124,0,0,274,276,5,202,0,0,275,272,1,0,0,0,275,276,1,0,0,0,276,279,1,0,0,0,277,278,5,66,0,0,278,280,3,252,126,0,279,277,1,0,0,0,279,280,1,0,0,0,280,282,1,0,0,0,281,283,5,230,0,0,282,281,1,0,0,0,282,283,1,0,0,0,283,286,1,0,0,0,284,286,3,112,56,0,285,271,1,0,0,0,285,284,1,0,0,0,286,5,1,0,0,0,287,311,3,14,7,0,288,311,3,26,13,0,289,311,3,28,14,0,290,311,3,44,22,0,291,311,3,104,52,0,292,311,3,30,15,0,293,311,3,106,53,0,294,311,3,108,54,0,295,311,3,110,55,0,296,311,3,120,60,0,297,311,3,122,61,0,298,311,3,124,62,0,299,311,3,128,64,0,300,311,3,196,98,0,301,311,3,198,99,0,302,311,3,200,100,0,303,311,3,202,101,0,304,311,3,204,102,0,305,311,3,206,103,0,306,308,3,8,4,0,307,306,1,0,0,0,307,308,1,0,0,0,308,309,1,0,0,0,309,311,3,132,66,0,310,287,1,0,0,0,310,288,1,0,0,0,310,289,1,0,0,0,310,290,1,0,0,0,310,291,1,0,0,0,310,292,1,0,0,0,310,293,1,0,0,0,310,294,1,0,0,0,310,295,1,0,0,0,310,296,1,0,0,0,310,297,1,0,0,0,310,298,1,0,0,0,310,299,1,0,0,0,310,300,1,0,0,0,310,301,1,0,0,0,310,302,1,0,0,0,310,303,1,0,0,0,310,304,1,0,0,0,310,305,1,0,0,0,310,307,1,0,0,0,311,7,1,0,0,0,312,313,5,193,0,0,313,318,3,10,5,0,314,315,5,208,0,0,315,317,3,10,5,0,316,314,1,0,0,0,317,320,1,0,0,0,318,316,1,0,0,0,318,319,1,0,0,0,319,9,1,0,0,0,320,318,1,0,0,0,321,323,3,250,125,0,322,324,3,12,6,0,323,322,1,0,0,0,323,324,1,0,0,0,324,325,1,0,0,0,325,326,5,10,0,0,326,327,5,219,0,0,327,328,3,6,3,0,328,329,5,229,0,0,329,11,1,0,0,0,330,331,5,219,0,0,331,336,3,250,125,0,332,333,5,208,0,0,333,335,3,250,125,0,334,332,1,0,0,0,335,338,1,0,0,0,336,334,1,0,0,0,336,337,1,0,0,0,337,339,1,0,0,0,338,336,1,0,0,0,339,340,5,229,0,0,340,13,1,0,0,0,341,342,5,5,0,0,342,343,5,162,0,0,343,345,3,228,114,0,344,346,3,66,33,0,345,344,1,0,0,0,345,346,1,0,0,0,346,347,1,0,0,0,347,352,3,16,8,0,348,349,5,208,0,0,349,351,3,16,8,0,350,348,1,0,0,0,351,354,1,0,0,0,352,350,1,0,0,0,352,353,1,0,0,0,353,15,1,0,0,0,354,352,1,0,0,0,355,356,5,1,0,0,356,360,5,26,0,0,357,358,5,78,0,0,358,359,5,115,0,0,359,361,5,56,0,0,360,357,1,0,0,0,360,361,1,0,0,0,361,362,1,0,0,0,362,365,3,90,45,0,363,364,5,2,0,0,364,366,3,222,111,0,365,363,1,0,0,0,365,366,1,0,0,0,366,570,1,0,0,0,367,368,5,1,0,0,368,372,5,81,0,0,369,370,5,78,0,0,370,371,5,115,0,0,371,373,5,56,0,0,372,369,1,0,0,0,372,373,1,0,0,0,373,374,1,0,0,0,374,377,3,94,47,0,375,376,5,2,0,0,376,378,3,222,111,0,377,375,1,0,0,0,377,378,1,0,0,0,378,570,1,0,0,0,379,380,5,1,0,0,380,384,5,133,0,0,381,382,5,78,0,0,382,383,5,115,0,0,383,385,5,56,0,0,384,381,1,0,0,0,384,385,1,0,0,0,385,386,1,0,0,0,386,389,3,96,48,0,387,388,5,2,0,0,388,390,3,222,111,0,389,387,1,0,0,0,389,390,1,0,0,0,390,570,1,0,0,0,391,392,5,15,0,0,392,395,3,24,12,0,393,394,5,68,0,0,394,396,3,228,114,0,395,393,1,0,0,0,395,396,1,0,0,0,396,570,1,0,0,0,397,398,5,22,0,0,398,401,5,26,0,0,399,400,5,78,0,0,400,402,5,56,0,0,401,399,1,0,0,0,401,402,1,0,0,0,402,403,1,0,0,0,403,406,3,222,111,0,404,405,5,80,0,0,405,407,3,24,12,0,406,404,1,0,0,0,406,407,1,0,0,0,407,570,1,0,0,0,408,409,5,22,0,0,409,412,5,81,0,0,410,411,5,78,0,0,411,413,5,56,0,0,412,410,1,0,0,0,412,413,1,0,0,0,413,414,1,0,0,0,414,417,3,222,111,0,415,416,5,80,0,0,416,418,3,24,12,0,417,415,1,0,0,0,417,418,1,0,0,0,418,570,1,0,0,0,419,420,5,22,0,0,420,423,5,133,0,0,421,422,5,78,0,0,422,424,5,56,0,0,423,421,1,0,0,0,423,424,1,0,0,0,424,425,1,0,0,0,425,428,3,222,111,0,426,427,5,80,0,0,427,429,3,24,12,0,428,426,1,0,0,0,428,429,1,0,0,0,429,570,1,0,0,0,430,431,5,27,0,0,431,434,5,26,0,0,432,433,5,78,0,0,433,435,5,56,0,0,434,432,1,0,0,0,434,435,1,0,0,0,435,436,1,0,0,0,436,437,3,222,111,0,437,438,5,202,0,0,438,570,1,0,0,0,439,440,5,40,0,0,440,441,5,191,0,0,441,570,3,214,107,0,442,443,5,44,0,0,443,570,3,24,12,0,444,445,5,50,0,0,445,448,5,26,0,0,446,447,5,78,0,0,447,449,5,56,0,0,448,446,1,0,0,0,448,449,1,0,0,0,449,450,1,0,0,0,450,570,3,222,111,0,451,452,5,50,0,0,452,455,5,81,0,0,453,454,5,78,0,0,454,456,5,56,0,0,455,453,1,0,0,0,455,456,1,0,0,0,456,457,1,0,0,0,457,570,3,222,111,0,458,459,5,50,0,0,459,462,5,133,0,0,460,461,5,78,0,0,461,463,5,56,0,0,462,460,1,0,0,0,462,463,1,0,0,0,463,464,1,0,0,0,464,570,3,222,111,0,465,466,5,50,0,0,466,570,3,24,12,0,467,469,5,67,0,0,468,470,3,24,12,0,469,468,1,0,0,0,469,470,1,0,0,0,470,570,1,0,0,0,471,472,5,103,0,0,472,475,5,81,0,0,473,474,5,78,0,0,474,476,5,56,0,0,475,473,1,0,0,0,475,476,1,0,0,0,476,477,1,0,0,0,477,480,3,222,111,0,478,479,5,80,0,0,479,481,3,24,12,0,480,478,1,0,0,0,480,481,1,0,0,0,481,570,1,0,0,0,482,483,5,103,0,0,483,486,5,133,0,0,484,485,5,78,0,0,485,487,5,56,0,0,486,484,1,0,0,0,486,487,1,0,0,0,487,488,1,0,0,0,488,491,3,222,111,0,489,490,5,80,0,0,490,492,3,24,12,0,491,489,1,0,0,0,491,492,1,0,0,0,492,570,1,0,0,0,493,494,5,109,0,0,494,497,5,26,0,0,495,496,5,78,0,0,496,498,5,56,0,0,497,495,1,0,0,0,497,498,1,0,0,0,498,499,1,0,0,0,499,500,3,222,111,0,500,501,3,98,49,0,501,570,1,0,0,0,502,503,5,109,0,0,503,506,5,26,0,0,504,505,5,78,0,0,505,507,5,56,0,0,506,504,1,0,0,0,506,507,1,0,0,0,507,508,1,0,0,0,508,509,3,222,111,0,509,510,5,27,0,0,510,511,5,202,0,0,511,570,1,0,0,0,512,513,5,109,0,0,513,516,5,26,0,0,514,515,5,78,0,0,515,517,5,56,0,0,516,514,1,0,0,0,516,517,1,0,0,0,517,518,1,0,0,0,518,519,3,222,111,0,519,520,5,138,0,0,520,521,3,22,11,0,521,570,1,0,0,0,522,523,5,109,0,0,523,526,5,26,0,0,524,525,5,78,0,0,525,527,5,56,0,0,526,524,1,0,0,0,526,527,1,0,0,0,527,528,1,0,0,0,528,570,3,90,45,0,529,530,5,109,0,0,530,531,5,122,0,0,531,532,5,18,0,0,532,570,3,214,107,0,533,534,5,109,0,0,534,570,3,84,42,0,535,536,5,111,0,0,536,546,3,24,12,0,537,538,5,170,0,0,538,539,5,47,0,0,539,547,5,202,0,0,540,541,5,170,0,0,541,542,5,187,0,0,542,547,5,202,0,0,543,544,5,170,0,0,544,545,5,162,0,0,545,547,3,228,114,0,546,537,1,0,0,0,546,540,1,0,0,0,546,543,1,0,0,0,547,570,1,0,0,0,548,549,5,138,0,0,549,570,5,177,0,0,550,551,5,139,0,0,551,554,5,26,0,0,552,553,5,78,0,0,553,555,5,56,0,0,554,552,1,0,0,0,554,555,1,0,0,0,555,556,1,0,0,0,556,557,3,222,111,0,557,558,5,170,0,0,558,559,3,222,111,0,559,570,1,0,0,0,560,561,5,140,0,0,561,562,3,24,12,0,562,563,5,68,0,0,563,564,3,228,114,0,564,570,1,0,0,0,565,566,5,181,0,0,566,567,3,18,9,0,567,568,3,146,73,0,568,570,1,0,0,0,569,355,1,0,0,0,569,367,1,0,0,0,569,379,1,0,0,0,569,391,1,0,0,0,569,397,1,0,0,0,569,408,1,0,0,0,569,419,1,0,0,0,569,430,1,0,0,0,569,439,1,0,0,0,569,442,1,0,0,0,569,444,1,0,0,0,569,451,1,0,0,0,569,458,1,0,0,0,569,465,1,0,0,0,569,467,1,0,0,0,569,471,1,0,0,0,569,482,1,0,0,0,569,493,1,0,0,0,569,502,1,0,0,0,569,512,1,0,0,0,569,522,1,0,0,0,569,529,1,0,0,0,569,533,1,0,0,0,569,535,1,0,0,0,569,548,1,0,0,0,569,550,1,0,0,0,569,560,1,0,0,0,569,565,1,0,0,0,570,17,1,0,0,0,571,576,3,20,10,0,572,573,5,208,0,0,573,575,3,20,10,0,574,572,1,0,0,0,575,578,1,0,0,0,576,574,1,0,0,0,576,577,1,0,0,0,577,19,1,0,0,0,578,576,1,0,0,0,579,580,3,222,111,0,580,581,5,213,0,0,581,582,3,214,107,0,582,21,1,0,0,0,583,584,7,0,0,0,584,23,1,0,0,0,585,586,5,126,0,0,586,591,3,214,107,0,587,588,5,126,0,0,588,589,5,77,0,0,589,591,5,202,0,0,590,585,1,0,0,0,590,587,1,0,0,0,591,25,1,0,0,0,592,593,5,15,0,0,593,594,5,46,0,0,594,596,3,228,114,0,595,597,3,66,33,0,596,595,1,0,0,0,596,597,1,0,0,0,597,27,1,0,0,0,598,599,5,21,0,0,599,600,5,162,0,0,600,602,3,228,114,0,601,603,3,24,12,0,602,601,1,0,0,0,602,603,1,0,0,0,603,29,1,0,0,0,604,605,5,40,0,0,605,606,5,68,0,0,606,608,3,228,114,0,607,609,3,66,33,0,608,607,1,0,0,0,608,609,1,0,0,0,609,611,1,0,0,0,610,612,3,146,73,0,611,610,1,0,0,0,611,612,1,0,0,0,612,31,1,0,0,0,613,621,5,15,0,0,614,617,5,29,0,0,615,616,5,121,0,0,616,618,5,140,0,0,617,615,1,0,0,0,617,618,1,0,0,0,618,621,1,0,0,0,619,621,5,140,0,0,620,613,1,0,0,0,620,614,1,0,0,0,620,619,1,0,0,0,621,623,1,0,0,0,622,624,5,164,0,0,623,622,1,0,0,0,623,624,1,0,0,0,624,625,1,0,0,0,625,629,5,162,0,0,626,627,5,78,0,0,627,628,5,115,0,0,628,630,5,56,0,0,629,626,1,0,0,0,629,630,1,0,0,0,630,631,1,0,0,0,631,633,3,228,114,0,632,634,3,68,34,0,633,632,1,0,0,0,633,634,1,0,0,0,634,636,1,0,0,0,635,637,3,66,33,0,636,635,1,0,0,0,636,637,1,0,0,0,637,639,1,0,0,0,638,640,3,74,37,0,639,638,1,0,0,0,639,640,1,0,0,0,640,642,1,0,0,0,641,643,3,76,38,0,642,641,1,0,0,0,642,643,1,0,0,0,643,645,1,0,0,0,644,646,3,72,36,0,645,644,1,0,0,0,645,646,1,0,0,0,646,33,1,0,0,0,647,648,7,1,0,0,648,652,5,33,0,0,649,650,5,78,0,0,650,651,5,115,0,0,651,653,5,56,0,0,652,649,1,0,0,0,652,653,1,0,0,0,653,654,1,0,0,0,654,656,3,250,125,0,655,657,3,66,33,0,656,655,1,0,0,0,656,657,1,0,0,0,657,658,1,0,0,0,658,659,3,86,43,0,659,35,1,0,0,0,660,668,5,15,0,0,661,664,5,29,0,0,662,663,5,121,0,0,663,665,5,140,0,0,664,662,1,0,0,0,664,665,1,0,0,0,665,668,1,0,0,0,666,668,5,140,0,0,667,660,1,0,0,0,667,661,1,0,0,0,667,666,1,0,0,0,668,669,1,0,0,0,669,673,5,46,0,0,670,671,5,78,0,0,671,672,5,115,0,0,672,674,5,56,0,0,673,670,1,0,0,0,673,674,1,0,0,0,674,675,1,0,0,0,675,677,3,228,114,0,676,678,3,68,34,0,677,676,1,0,0,0,677,678,1,0,0,0,678,680,1,0,0,0,679,681,3,66,33,0,680,679,1,0,0,0,680,681,1,0,0,0,681,682,1,0,0,0,682,683,3,46,23,0,683,684,3,50,25,0,684,37,1,0,0,0,685,686,7,1,0,0,686,687,5,100,0,0,687,691,5,186,0,0,688,689,5,78,0,0,689,690,5,115,0,0,690,692,5,56,0,0,691,688,1,0,0,0,691,692,1,0,0,0,692,693,1,0,0,0,693,695,3,228,114,0,694,696,3,68,34,0,695,694,1,0,0,0,695,696,1,0,0,0,696,698,1,0,0,0,697,699,3,66,33,0,698,697,1,0,0,0,698,699,1,0,0,0,699,705,1,0,0,0,700,701,5,193,0,0,701,703,5,168,0,0,702,704,5,200,0,0,703,702,1,0,0,0,703,704,1,0,0,0,704,706,1,0,0,0,705,700,1,0,0,0,705,706,1,0,0,0,706,708,1,0,0,0,707,709,3,70,35,0,708,707,1,0,0,0,708,709,1,0,0,0,709,711,1,0,0,0,710,712,3,74,37,0,711,710,1,0,0,0,711,712,1,0,0,0,712,713,1,0,0,0,713,714,3,72,36,0,714,39,1,0,0,0,715,716,7,1,0,0,716,717,5,104,0,0,717,721,5,186,0,0,718,719,5,78,0,0,719,720,5,115,0,0,720,722,5,56,0,0,721,718,1,0,0,0,721,722,1,0,0,0,722,723,1,0,0,0,723,725,3,228,114,0,724,726,3,68,34,0,725,724,1,0,0,0,725,726,1,0,0,0,726,728,1,0,0,0,727,729,3,66,33,0,728,727,1,0,0,0,728,729,1,0,0,0,729,731,1,0,0,0,730,732,3,74,37,0,731,730,1,0,0,0,731,732,1,0,0,0,732,738,1,0,0,0,733,739,3,70,35,0,734,736,3,76,38,0,735,737,5,129,0,0,736,735,1,0,0,0,736,737,1,0,0,0,737,739,1,0,0,0,738,733,1,0,0,0,738,734,1,0,0,0,739,740,1,0,0,0,740,741,3,72,36,0,741,41,1,0,0,0,742,745,7,1,0,0,743,744,5,121,0,0,744,746,5,140,0,0,745,743,1,0,0,0,745,746,1,0,0,0,746,747,1,0,0,0,747,751,5,186,0,0,748,749,5,78,0,0,749,750,5,115,0,0,750,752,5,56,0,0,751,748,1,0,0,0,751,752,1,0,0,0,752,753,1,0,0,0,753,755,3,228,114,0,754,756,3,68,34,0,755,754,1,0,0,0,755,756,1,0,0,0,756,758,1,0,0,0,757,759,3,66,33,0,758,757,1,0,0,0,758,759,1,0,0,0,759,761,1,0,0,0,760,762,3,74,37,0,761,760,1,0,0,0,761,762,1,0,0,0,762,763,1,0,0,0,763,764,3,72,36,0,764,43,1,0,0,0,765,772,3,34,17,0,766,772,3,36,18,0,767,772,3,38,19,0,768,772,3,40,20,0,769,772,3,32,16,0,770,772,3,42,21,0,771,765,1,0,0,0,771,766,1,0,0,0,771,767,1,0,0,0,771,768,1,0,0,0,771,769,1,0,0,0,771,770,1,0,0,0,772,45,1,0,0,0,773,774,5,219,0,0,774,779,3,48,24,0,775,776,5,208,0,0,776,778,3,48,24,0,777,775,1,0,0,0,778,781,1,0,0,0,779,777,1,0,0,0,779,780,1,0,0,0,780,782,1,0,0,0,781,779,1,0,0,0,782,783,5,229,0,0,783,47,1,0,0,0,784,785,3,250,125,0,785,807,3,208,104,0,786,787,4,24,0,1,787,788,5,38,0,0,788,789,3,240,120,0,789,790,6,24,-1,0,790,806,1,0,0,0,791,792,4,24,1,1,792,793,5,58,0,0,793,794,3,214,107,0,794,795,6,24,-1,0,795,806,1,0,0,0,796,797,4,24,2,1,797,798,5,75,0,0,798,806,6,24,-1,0,799,800,4,24,3,1,800,801,5,83,0,0,801,806,6,24,-1,0,802,803,4,24,4,1,803,804,5,89,0,0,804,806,6,24,-1,0,805,786,1,0,0,0,805,791,1,0,0,0,805,796,1,0,0,0,805,799,1,0,0,0,805,802,1,0,0,0,806,809,1,0,0,0,807,805,1,0,0,0,807,808,1,0,0,0,808,49,1,0,0,0,809,807,1,0,0,0,810,812,3,52,26,0,811,810,1,0,0,0,811,812,1,0,0,0,812,835,1,0,0,0,813,814,4,25,5,1,814,815,3,56,28,0,815,816,6,25,-1,0,816,834,1,0,0,0,817,818,4,25,6,1,818,819,3,58,29,0,819,820,6,25,-1,0,820,834,1,0,0,0,821,822,4,25,7,1,822,823,3,60,30,0,823,824,6,25,-1,0,824,834,1,0,0,0,825,826,4,25,8,1,826,827,3,62,31,0,827,828,6,25,-1,0,828,834,1,0,0,0,829,830,4,25,9,1,830,831,3,64,32,0,831,832,6,25,-1,0,832,834,1,0,0,0,833,813,1,0,0,0,833,817,1,0,0,0,833,821,1,0,0,0,833,825,1,0,0,0,833,829,1,0,0,0,834,837,1,0,0,0,835,833,1,0,0,0,835,836,1,0,0,0,836,51,1,0,0,0,837,835,1,0,0,0,838,839,5,132,0,0,839,840,5,91,0,0,840,841,3,210,105,0,841,53,1,0,0,0,842,849,3,250,125,0,843,846,3,250,125,0,844,845,5,219,0,0,845,847,5,229,0,0,846,844,1,0,0,0,846,847,1,0,0,0,847,850,1,0,0,0,848,850,3,240,120,0,849,843,1,0,0,0,849,848,1,0,0,0,850,55,1,0,0,0,851,852,5,155,0,0,852,853,5,219,0,0,853,854,3,250,125,0,854,858,5,219,0,0,855,857,3,54,27,0,856,855,1,0,0,0,857,860,1,0,0,0,858,856,1,0,0,0,858,859,1,0,0,0,859,861,1,0,0,0,860,858,1,0,0,0,861,862,5,229,0,0,862,863,5,229,0,0,863,57,1,0,0,0,864,865,5,97,0,0,865,875,5,219,0,0,866,876,5,200,0,0,867,868,5,107,0,0,868,869,5,200,0,0,869,870,5,105,0,0,870,876,5,200,0,0,871,872,5,105,0,0,872,873,5,200,0,0,873,874,5,107,0,0,874,876,5,200,0,0,875,866,1,0,0,0,875,867,1,0,0,0,875,871,1,0,0,0,876,877,1,0,0,0,877,878,5,229,0,0,878,59,1,0,0,0,879,880,5,94,0,0,880,881,5,219,0,0,881,882,3,250,125,0,882,886,5,219,0,0,883,885,3,54,27,0,884,883,1,0,0,0,885,888,1,0,0,0,886,884,1,0,0,0,886,887,1,0,0,0,887,889,1,0,0,0,888,886,1,0,0,0,889,890,5,229,0,0,890,891,5,229,0,0,891,61,1,0,0,0,892,893,5,136,0,0,893,904,5,219,0,0,894,895,5,107,0,0,895,896,3,250,125,0,896,897,5,105,0,0,897,898,3,250,125,0,898,905,1,0,0,0,899,900,5,105,0,0,900,901,3,250,125,0,901,902,5,107,0,0,902,903,3,250,125,0,903,905,1,0,0,0,904,894,1,0,0,0,904,899,1,0,0,0,905,906,1,0,0,0,906,907,5,229,0,0,907,63,1,0,0,0,908,909,5,153,0,0,909,910,5,219,0,0,910,911,3,180,90,0,911,912,5,229,0,0,912,65,1,0,0,0,913,914,5,119,0,0,914,917,5,23,0,0,915,918,3,250,125,0,916,918,5,202,0,0,917,915,1,0,0,0,917,916,1,0,0,0,918,67,1,0,0,0,919,920,5,184,0,0,920,921,5,202,0,0,921,69,1,0,0,0,922,923,5,170,0,0,923,924,3,228,114,0,924,71,1,0,0,0,925,926,5,10,0,0,926,927,3,128,64,0,927,73,1,0,0,0,928,929,5,219,0,0,929,934,3,88,44,0,930,931,5,208,0,0,931,933,3,88,44,0,932,930,1,0,0,0,933,936,1,0,0,0,934,932,1,0,0,0,934,935,1,0,0,0,935,937,1,0,0,0,936,934,1,0,0,0,937,938,5,229,0,0,938,944,1,0,0,0,939,940,5,10,0,0,940,944,3,228,114,0,941,942,5,10,0,0,942,944,3,226,113,0,943,928,1,0,0,0,943,939,1,0,0,0,943,941,1,0,0,0,944,75,1,0,0,0,945,972,3,86,43,0,946,947,4,38,10,1,947,948,3,152,76,0,948,949,6,38,-1,0,949,971,1,0,0,0,950,951,4,38,11,1,951,952,3,78,39,0,952,953,6,38,-1,0,953,971,1,0,0,0,954,955,4,38,12,1,955,956,3,80,40,0,956,957,6,38,-1,0,957,971,1,0,0,0,958,959,4,38,13,1,959,960,3,82,41,0,960,961,6,38,-1,0,961,971,1,0,0,0,962,963,4,38,14,1,963,964,3,84,42,0,964,965,6,38,-1,0,965,971,1,0,0,0,966,967,4,38,15,1,967,968,3,160,80,0,968,969,6,38,-1,0,969,971,1,0,0,0,970,946,1,0,0,0,970,950,1,0,0,0,970,954,1,0,0,0,970,958,1,0,0,0,970,962,1,0,0,0,970,966,1,0,0,0,971,974,1,0,0,0,972,970,1,0,0,0,972,973,1,0,0,0,973,77,1,0,0,0,974,972,1,0,0,0,975,976,5,126,0,0,976,977,5,18,0,0,977,978,3,214,107,0,978,79,1,0,0,0,979,980,5,132,0,0,980,981,5,91,0,0,981,982,3,214,107,0,982,81,1,0,0,0,983,984,5,147,0,0,984,985,5,18,0,0,985,986,3,214,107,0,986,83,1,0,0,0,987,988,5,177,0,0,988,993,3,102,51,0,989,990,5,208,0,0,990,992,3,102,51,0,991,989,1,0,0,0,992,995,1,0,0,0,993,991,1,0,0,0,993,994,1,0,0,0,994,85,1,0,0,0,995,993,1,0,0,0,996,998,5,53,0,0,997,999,5,213,0,0,998,997,1,0,0,0,998,999,1,0,0,0,999,1e3,1,0,0,0,1e3,1006,3,252,126,0,1001,1003,5,219,0,0,1002,1004,3,210,105,0,1003,1002,1,0,0,0,1003,1004,1,0,0,0,1004,1005,1,0,0,0,1005,1007,5,229,0,0,1006,1001,1,0,0,0,1006,1007,1,0,0,0,1007,87,1,0,0,0,1008,1019,3,90,45,0,1009,1010,5,28,0,0,1010,1011,3,250,125,0,1011,1012,5,21,0,0,1012,1013,3,214,107,0,1013,1019,1,0,0,0,1014,1015,5,81,0,0,1015,1019,3,94,47,0,1016,1017,5,133,0,0,1017,1019,3,96,48,0,1018,1008,1,0,0,0,1018,1009,1,0,0,0,1018,1014,1,0,0,0,1018,1016,1,0,0,0,1019,89,1,0,0,0,1020,1021,3,222,111,0,1021,1023,3,208,104,0,1022,1024,3,92,46,0,1023,1022,1,0,0,0,1023,1024,1,0,0,0,1024,1027,1,0,0,0,1025,1026,5,27,0,0,1026,1028,5,202,0,0,1027,1025,1,0,0,0,1027,1028,1,0,0,0,1028,1030,1,0,0,0,1029,1031,3,98,49,0,1030,1029,1,0,0,0,1030,1031,1,0,0,0,1031,1034,1,0,0,0,1032,1033,5,177,0,0,1033,1035,3,214,107,0,1034,1032,1,0,0,0,1034,1035,1,0,0,0,1035,1053,1,0,0,0,1036,1038,3,222,111,0,1037,1039,3,208,104,0,1038,1037,1,0,0,0,1038,1039,1,0,0,0,1039,1040,1,0,0,0,1040,1043,3,92,46,0,1041,1042,5,27,0,0,1042,1044,5,202,0,0,1043,1041,1,0,0,0,1043,1044,1,0,0,0,1044,1046,1,0,0,0,1045,1047,3,98,49,0,1046,1045,1,0,0,0,1046,1047,1,0,0,0,1047,1050,1,0,0,0,1048,1049,5,177,0,0,1049,1051,3,214,107,0,1050,1048,1,0,0,0,1050,1051,1,0,0,0,1051,1053,1,0,0,0,1052,1020,1,0,0,0,1052,1036,1,0,0,0,1053,91,1,0,0,0,1054,1055,7,2,0,0,1055,1056,3,214,107,0,1056,93,1,0,0,0,1057,1058,3,222,111,0,1058,1059,3,214,107,0,1059,1060,5,178,0,0,1060,1061,3,208,104,0,1061,1062,5,72,0,0,1062,1063,5,200,0,0,1063,95,1,0,0,0,1064,1065,3,222,111,0,1065,1066,3,126,63,0,1066,97,1,0,0,0,1067,1068,5,24,0,0,1068,1069,5,219,0,0,1069,1074,3,100,50,0,1070,1071,5,208,0,0,1071,1073,3,100,50,0,1072,1070,1,0,0,0,1073,1076,1,0,0,0,1074,1072,1,0,0,0,1074,1075,1,0,0,0,1075,1077,1,0,0,0,1076,1074,1,0,0,0,1077,1078,5,229,0,0,1078,99,1,0,0,0,1079,1085,3,250,125,0,1080,1082,5,219,0,0,1081,1083,3,210,105,0,1082,1081,1,0,0,0,1082,1083,1,0,0,0,1083,1084,1,0,0,0,1084,1086,5,229,0,0,1085,1080,1,0,0,0,1085,1086,1,0,0,0,1086,101,1,0,0,0,1087,1095,3,214,107,0,1088,1096,5,40,0,0,1089,1090,5,170,0,0,1090,1091,5,47,0,0,1091,1096,5,202,0,0,1092,1093,5,170,0,0,1093,1094,5,187,0,0,1094,1096,5,202,0,0,1095,1088,1,0,0,0,1095,1089,1,0,0,0,1095,1092,1,0,0,0,1095,1096,1,0,0,0,1096,103,1,0,0,0,1097,1099,7,3,0,0,1098,1100,5,162,0,0,1099,1098,1,0,0,0,1099,1100,1,0,0,0,1100,1101,1,0,0,0,1101,1102,3,224,112,0,1102,105,1,0,0,0,1103,1104,7,4,0,0,1104,1107,5,33,0,0,1105,1106,5,78,0,0,1106,1108,5,56,0,0,1107,1105,1,0,0,0,1107,1108,1,0,0,0,1108,1109,1,0,0,0,1109,1111,3,234,117,0,1110,1112,3,66,33,0,1111,1110,1,0,0,0,1111,1112,1,0,0,0,1112,1135,1,0,0,0,1113,1120,7,4,0,0,1114,1121,5,46,0,0,1115,1117,5,164,0,0,1116,1115,1,0,0,0,1116,1117,1,0,0,0,1117,1118,1,0,0,0,1118,1121,5,162,0,0,1119,1121,5,186,0,0,1120,1114,1,0,0,0,1120,1116,1,0,0,0,1120,1119,1,0,0,0,1121,1124,1,0,0,0,1122,1123,5,78,0,0,1123,1125,5,56,0,0,1124,1122,1,0,0,0,1124,1125,1,0,0,0,1125,1126,1,0,0,0,1126,1128,3,228,114,0,1127,1129,3,66,33,0,1128,1127,1,0,0,0,1128,1129,1,0,0,0,1129,1132,1,0,0,0,1130,1131,5,114,0,0,1131,1133,5,39,0,0,1132,1130,1,0,0,0,1132,1133,1,0,0,0,1133,1135,1,0,0,0,1134,1103,1,0,0,0,1134,1113,1,0,0,0,1135,107,1,0,0,0,1136,1137,5,56,0,0,1137,1138,5,33,0,0,1138,1150,3,234,117,0,1139,1146,5,56,0,0,1140,1147,5,46,0,0,1141,1143,5,164,0,0,1142,1141,1,0,0,0,1142,1143,1,0,0,0,1143,1144,1,0,0,0,1144,1147,5,162,0,0,1145,1147,5,186,0,0,1146,1140,1,0,0,0,1146,1142,1,0,0,0,1146,1145,1,0,0,0,1146,1147,1,0,0,0,1147,1148,1,0,0,0,1148,1150,3,228,114,0,1149,1136,1,0,0,0,1149,1139,1,0,0,0,1150,109,1,0,0,0,1151,1152,5,57,0,0,1152,1173,3,6,3,0,1153,1154,5,57,0,0,1154,1155,5,13,0,0,1155,1173,3,6,3,0,1156,1157,5,57,0,0,1157,1158,5,160,0,0,1158,1173,3,6,3,0,1159,1160,5,57,0,0,1160,1161,5,127,0,0,1161,1173,3,6,3,0,1162,1163,5,57,0,0,1163,1164,5,128,0,0,1164,1173,3,6,3,0,1165,1166,5,57,0,0,1166,1167,5,135,0,0,1167,1168,5,175,0,0,1168,1173,3,6,3,0,1169,1170,5,57,0,0,1170,1171,5,54,0,0,1171,1173,3,6,3,0,1172,1151,1,0,0,0,1172,1153,1,0,0,0,1172,1156,1,0,0,0,1172,1159,1,0,0,0,1172,1162,1,0,0,0,1172,1165,1,0,0,0,1172,1169,1,0,0,0,1173,111,1,0,0,0,1174,1175,5,85,0,0,1175,1177,5,87,0,0,1176,1178,5,162,0,0,1177,1176,1,0,0,0,1177,1178,1,0,0,0,1178,1182,1,0,0,0,1179,1183,3,228,114,0,1180,1181,5,70,0,0,1181,1183,3,226,113,0,1182,1179,1,0,0,0,1182,1180,1,0,0,0,1183,1185,1,0,0,0,1184,1186,3,114,57,0,1185,1184,1,0,0,0,1185,1186,1,0,0,0,1186,1187,1,0,0,0,1187,1188,3,116,58,0,1188,113,1,0,0,0,1189,1190,5,219,0,0,1190,1195,3,222,111,0,1191,1192,5,208,0,0,1192,1194,3,222,111,0,1193,1191,1,0,0,0,1194,1197,1,0,0,0,1195,1193,1,0,0,0,1195,1196,1,0,0,0,1196,1198,1,0,0,0,1197,1195,1,0,0,0,1198,1199,5,229,0,0,1199,115,1,0,0,0,1200,1201,5,66,0,0,1201,1210,3,250,125,0,1202,1210,3,118,59,0,1203,1205,3,128,64,0,1204,1206,5,230,0,0,1205,1204,1,0,0,0,1205,1206,1,0,0,0,1206,1207,1,0,0,0,1207,1208,5,0,0,1,1208,1210,1,0,0,0,1209,1200,1,0,0,0,1209,1202,1,0,0,0,1209,1203,1,0,0,0,1210,117,1,0,0,0,1211,1212,5,185,0,0,1212,1214,5,219,0,0,1213,1215,3,240,120,0,1214,1213,1,0,0,0,1214,1215,1,0,0,0,1215,1216,1,0,0,0,1216,1225,5,229,0,0,1217,1218,5,208,0,0,1218,1220,5,219,0,0,1219,1221,3,240,120,0,1220,1219,1,0,0,0,1220,1221,1,0,0,0,1221,1222,1,0,0,0,1222,1224,5,229,0,0,1223,1217,1,0,0,0,1224,1227,1,0,0,0,1225,1223,1,0,0,0,1225,1226,1,0,0,0,1226,119,1,0,0,0,1227,1225,1,0,0,0,1228,1229,5,92,0,0,1229,1231,5,112,0,0,1230,1232,3,66,33,0,1231,1230,1,0,0,0,1231,1232,1,0,0,0,1232,1233,1,0,0,0,1233,1235,3,146,73,0,1234,1236,7,5,0,0,1235,1234,1,0,0,0,1235,1236,1,0,0,0,1236,121,1,0,0,0,1237,1238,5,120,0,0,1238,1239,5,162,0,0,1239,1241,3,228,114,0,1240,1242,3,66,33,0,1241,1240,1,0,0,0,1241,1242,1,0,0,0,1242,1244,1,0,0,0,1243,1245,3,24,12,0,1244,1243,1,0,0,0,1244,1245,1,0,0,0,1245,1247,1,0,0,0,1246,1248,5,61,0,0,1247,1246,1,0,0,0,1247,1248,1,0,0,0,1248,1250,1,0,0,0,1249,1251,5,37,0,0,1250,1249,1,0,0,0,1250,1251,1,0,0,0,1251,123,1,0,0,0,1252,1253,5,139,0,0,1253,1254,5,162,0,0,1254,1255,3,228,114,0,1255,1256,5,170,0,0,1256,1264,3,228,114,0,1257,1258,5,208,0,0,1258,1259,3,228,114,0,1259,1260,5,170,0,0,1260,1261,3,228,114,0,1261,1263,1,0,0,0,1262,1257,1,0,0,0,1263,1266,1,0,0,0,1264,1262,1,0,0,0,1264,1265,1,0,0,0,1265,1268,1,0,0,0,1266,1264,1,0,0,0,1267,1269,3,66,33,0,1268,1267,1,0,0,0,1268,1269,1,0,0,0,1269,125,1,0,0,0,1270,1272,5,219,0,0,1271,1273,3,134,67,0,1272,1271,1,0,0,0,1272,1273,1,0,0,0,1273,1274,1,0,0,0,1274,1275,5,149,0,0,1275,1277,3,210,105,0,1276,1278,3,148,74,0,1277,1276,1,0,0,0,1277,1278,1,0,0,0,1278,1280,1,0,0,0,1279,1281,3,154,77,0,1280,1279,1,0,0,0,1280,1281,1,0,0,0,1281,1282,1,0,0,0,1282,1283,5,229,0,0,1283,127,1,0,0,0,1284,1290,3,130,65,0,1285,1286,5,180,0,0,1286,1287,5,4,0,0,1287,1289,3,130,65,0,1288,1285,1,0,0,0,1289,1292,1,0,0,0,1290,1288,1,0,0,0,1290,1291,1,0,0,0,1291,129,1,0,0,0,1292,1290,1,0,0,0,1293,1299,3,132,66,0,1294,1295,5,219,0,0,1295,1296,3,128,64,0,1296,1297,5,229,0,0,1297,1299,1,0,0,0,1298,1293,1,0,0,0,1298,1294,1,0,0,0,1299,131,1,0,0,0,1300,1302,3,134,67,0,1301,1300,1,0,0,0,1301,1302,1,0,0,0,1302,1303,1,0,0,0,1303,1305,5,149,0,0,1304,1306,5,48,0,0,1305,1304,1,0,0,0,1305,1306,1,0,0,0,1306,1308,1,0,0,0,1307,1309,3,136,68,0,1308,1307,1,0,0,0,1308,1309,1,0,0,0,1309,1310,1,0,0,0,1310,1312,3,210,105,0,1311,1313,3,138,69,0,1312,1311,1,0,0,0,1312,1313,1,0,0,0,1313,1315,1,0,0,0,1314,1316,3,140,70,0,1315,1314,1,0,0,0,1315,1316,1,0,0,0,1316,1318,1,0,0,0,1317,1319,3,142,71,0,1318,1317,1,0,0,0,1318,1319,1,0,0,0,1319,1321,1,0,0,0,1320,1322,3,144,72,0,1321,1320,1,0,0,0,1321,1322,1,0,0,0,1322,1324,1,0,0,0,1323,1325,3,146,73,0,1324,1323,1,0,0,0,1324,1325,1,0,0,0,1325,1327,1,0,0,0,1326,1328,3,148,74,0,1327,1326,1,0,0,0,1327,1328,1,0,0,0,1328,1331,1,0,0,0,1329,1330,5,193,0,0,1330,1332,7,6,0,0,1331,1329,1,0,0,0,1331,1332,1,0,0,0,1332,1335,1,0,0,0,1333,1334,5,193,0,0,1334,1336,5,172,0,0,1335,1333,1,0,0,0,1335,1336,1,0,0,0,1336,1338,1,0,0,0,1337,1339,3,150,75,0,1338,1337,1,0,0,0,1338,1339,1,0,0,0,1339,1341,1,0,0,0,1340,1342,3,152,76,0,1341,1340,1,0,0,0,1341,1342,1,0,0,0,1342,1344,1,0,0,0,1343,1345,3,156,78,0,1344,1343,1,0,0,0,1344,1345,1,0,0,0,1345,1347,1,0,0,0,1346,1348,3,158,79,0,1347,1346,1,0,0,0,1347,1348,1,0,0,0,1348,1350,1,0,0,0,1349,1351,3,160,80,0,1350,1349,1,0,0,0,1350,1351,1,0,0,0,1351,133,1,0,0,0,1352,1353,5,193,0,0,1353,1354,3,210,105,0,1354,135,1,0,0,0,1355,1356,5,171,0,0,1356,1359,5,200,0,0,1357,1358,5,193,0,0,1358,1360,5,167,0,0,1359,1357,1,0,0,0,1359,1360,1,0,0,0,1360,137,1,0,0,0,1361,1362,5,68,0,0,1362,1363,3,162,81,0,1363,139,1,0,0,0,1364,1366,7,7,0,0,1365,1364,1,0,0,0,1365,1366,1,0,0,0,1366,1367,1,0,0,0,1367,1368,5,9,0,0,1368,1369,5,90,0,0,1369,1370,3,210,105,0,1370,141,1,0,0,0,1371,1372,5,192,0,0,1372,1373,3,250,125,0,1373,1374,5,10,0,0,1374,1375,5,219,0,0,1375,1376,3,184,92,0,1376,1377,5,229,0,0,1377,143,1,0,0,0,1378,1379,5,131,0,0,1379,1380,3,214,107,0,1380,145,1,0,0,0,1381,1382,5,191,0,0,1382,1383,3,214,107,0,1383,147,1,0,0,0,1384,1385,5,73,0,0,1385,1392,5,18,0,0,1386,1387,7,6,0,0,1387,1388,5,219,0,0,1388,1389,3,210,105,0,1389,1390,5,229,0,0,1390,1393,1,0,0,0,1391,1393,3,210,105,0,1392,1386,1,0,0,0,1392,1391,1,0,0,0,1393,149,1,0,0,0,1394,1395,5,74,0,0,1395,1396,3,214,107,0,1396,151,1,0,0,0,1397,1398,5,122,0,0,1398,1399,5,18,0,0,1399,1400,3,174,87,0,1400,153,1,0,0,0,1401,1402,5,122,0,0,1402,1403,5,18,0,0,1403,1404,3,210,105,0,1404,155,1,0,0,0,1405,1406,5,99,0,0,1406,1407,3,172,86,0,1407,1408,5,18,0,0,1408,1409,3,210,105,0,1409,157,1,0,0,0,1410,1411,5,99,0,0,1411,1414,3,172,86,0,1412,1413,5,193,0,0,1413,1415,5,167,0,0,1414,1412,1,0,0,0,1414,1415,1,0,0,0,1415,159,1,0,0,0,1416,1417,5,153,0,0,1417,1418,3,180,90,0,1418,161,1,0,0,0,1419,1420,6,81,-1,0,1420,1422,3,224,112,0,1421,1423,5,61,0,0,1422,1421,1,0,0,0,1422,1423,1,0,0,0,1423,1425,1,0,0,0,1424,1426,3,170,85,0,1425,1424,1,0,0,0,1425,1426,1,0,0,0,1426,1432,1,0,0,0,1427,1428,5,219,0,0,1428,1429,3,162,81,0,1429,1430,5,229,0,0,1430,1432,1,0,0,0,1431,1419,1,0,0,0,1431,1427,1,0,0,0,1432,1450,1,0,0,0,1433,1434,10,3,0,0,1434,1435,3,166,83,0,1435,1436,3,162,81,4,1436,1449,1,0,0,0,1437,1439,10,4,0,0,1438,1440,7,8,0,0,1439,1438,1,0,0,0,1439,1440,1,0,0,0,1440,1442,1,0,0,0,1441,1443,3,164,82,0,1442,1441,1,0,0,0,1442,1443,1,0,0,0,1443,1444,1,0,0,0,1444,1445,5,90,0,0,1445,1446,3,162,81,0,1446,1447,3,168,84,0,1447,1449,1,0,0,0,1448,1433,1,0,0,0,1448,1437,1,0,0,0,1449,1452,1,0,0,0,1450,1448,1,0,0,0,1450,1451,1,0,0,0,1451,163,1,0,0,0,1452,1450,1,0,0,0,1453,1455,7,9,0,0,1454,1453,1,0,0,0,1454,1455,1,0,0,0,1455,1456,1,0,0,0,1456,1463,5,84,0,0,1457,1459,5,84,0,0,1458,1460,7,9,0,0,1459,1458,1,0,0,0,1459,1460,1,0,0,0,1460,1463,1,0,0,0,1461,1463,7,9,0,0,1462,1454,1,0,0,0,1462,1457,1,0,0,0,1462,1461,1,0,0,0,1463,1497,1,0,0,0,1464,1466,7,10,0,0,1465,1464,1,0,0,0,1465,1466,1,0,0,0,1466,1467,1,0,0,0,1467,1469,7,11,0,0,1468,1470,5,123,0,0,1469,1468,1,0,0,0,1469,1470,1,0,0,0,1470,1479,1,0,0,0,1471,1473,7,11,0,0,1472,1474,5,123,0,0,1473,1472,1,0,0,0,1473,1474,1,0,0,0,1474,1476,1,0,0,0,1475,1477,7,10,0,0,1476,1475,1,0,0,0,1476,1477,1,0,0,0,1477,1479,1,0,0,0,1478,1465,1,0,0,0,1478,1471,1,0,0,0,1479,1497,1,0,0,0,1480,1482,7,12,0,0,1481,1480,1,0,0,0,1481,1482,1,0,0,0,1482,1483,1,0,0,0,1483,1485,5,69,0,0,1484,1486,5,123,0,0,1485,1484,1,0,0,0,1485,1486,1,0,0,0,1486,1495,1,0,0,0,1487,1489,5,69,0,0,1488,1490,5,123,0,0,1489,1488,1,0,0,0,1489,1490,1,0,0,0,1490,1492,1,0,0,0,1491,1493,7,12,0,0,1492,1491,1,0,0,0,1492,1493,1,0,0,0,1493,1495,1,0,0,0,1494,1481,1,0,0,0,1494,1487,1,0,0,0,1495,1497,1,0,0,0,1496,1462,1,0,0,0,1496,1478,1,0,0,0,1496,1494,1,0,0,0,1497,165,1,0,0,0,1498,1500,7,8,0,0,1499,1498,1,0,0,0,1499,1500,1,0,0,0,1500,1501,1,0,0,0,1501,1502,5,30,0,0,1502,1505,5,90,0,0,1503,1505,5,208,0,0,1504,1499,1,0,0,0,1504,1503,1,0,0,0,1505,167,1,0,0,0,1506,1507,5,119,0,0,1507,1516,3,210,105,0,1508,1509,5,183,0,0,1509,1510,5,219,0,0,1510,1511,3,210,105,0,1511,1512,5,229,0,0,1512,1516,1,0,0,0,1513,1514,5,183,0,0,1514,1516,3,210,105,0,1515,1506,1,0,0,0,1515,1508,1,0,0,0,1515,1513,1,0,0,0,1516,169,1,0,0,0,1517,1518,5,147,0,0,1518,1521,3,178,89,0,1519,1520,5,118,0,0,1520,1522,3,178,89,0,1521,1519,1,0,0,0,1521,1522,1,0,0,0,1522,171,1,0,0,0,1523,1526,3,214,107,0,1524,1525,7,13,0,0,1525,1527,3,214,107,0,1526,1524,1,0,0,0,1526,1527,1,0,0,0,1527,173,1,0,0,0,1528,1533,3,176,88,0,1529,1530,5,208,0,0,1530,1532,3,176,88,0,1531,1529,1,0,0,0,1532,1535,1,0,0,0,1533,1531,1,0,0,0,1533,1534,1,0,0,0,1534,175,1,0,0,0,1535,1533,1,0,0,0,1536,1538,3,214,107,0,1537,1539,7,14,0,0,1538,1537,1,0,0,0,1538,1539,1,0,0,0,1539,1542,1,0,0,0,1540,1541,5,117,0,0,1541,1543,7,15,0,0,1542,1540,1,0,0,0,1542,1543,1,0,0,0,1543,1546,1,0,0,0,1544,1545,5,25,0,0,1545,1547,5,202,0,0,1546,1544,1,0,0,0,1546,1547,1,0,0,0,1547,177,1,0,0,0,1548,1551,3,238,119,0,1549,1550,5,231,0,0,1550,1552,3,238,119,0,1551,1549,1,0,0,0,1551,1552,1,0,0,0,1552,179,1,0,0,0,1553,1558,3,182,91,0,1554,1555,5,208,0,0,1555,1557,3,182,91,0,1556,1554,1,0,0,0,1557,1560,1,0,0,0,1558,1556,1,0,0,0,1558,1559,1,0,0,0,1559,181,1,0,0,0,1560,1558,1,0,0,0,1561,1562,3,250,125,0,1562,1563,5,213,0,0,1563,1564,3,240,120,0,1564,183,1,0,0,0,1565,1567,3,186,93,0,1566,1565,1,0,0,0,1566,1567,1,0,0,0,1567,1569,1,0,0,0,1568,1570,3,188,94,0,1569,1568,1,0,0,0,1569,1570,1,0,0,0,1570,1572,1,0,0,0,1571,1573,3,190,95,0,1572,1571,1,0,0,0,1572,1573,1,0,0,0,1573,185,1,0,0,0,1574,1575,5,126,0,0,1575,1576,5,18,0,0,1576,1577,3,210,105,0,1577,187,1,0,0,0,1578,1579,5,122,0,0,1579,1580,5,18,0,0,1580,1581,3,174,87,0,1581,189,1,0,0,0,1582,1583,7,16,0,0,1583,1584,3,192,96,0,1584,191,1,0,0,0,1585,1592,3,194,97,0,1586,1587,5,16,0,0,1587,1588,3,194,97,0,1588,1589,5,6,0,0,1589,1590,3,194,97,0,1590,1592,1,0,0,0,1591,1585,1,0,0,0,1591,1586,1,0,0,0,1592,193,1,0,0,0,1593,1594,5,32,0,0,1594,1606,5,145,0,0,1595,1596,5,179,0,0,1596,1606,5,130,0,0,1597,1598,5,179,0,0,1598,1606,5,64,0,0,1599,1600,3,238,119,0,1600,1601,5,130,0,0,1601,1606,1,0,0,0,1602,1603,3,238,119,0,1603,1604,5,64,0,0,1604,1606,1,0,0,0,1605,1593,1,0,0,0,1605,1595,1,0,0,0,1605,1597,1,0,0,0,1605,1599,1,0,0,0,1605,1602,1,0,0,0,1606,195,1,0,0,0,1607,1608,5,152,0,0,1608,1609,3,180,90,0,1609,197,1,0,0,0,1610,1611,5,154,0,0,1611,1612,5,29,0,0,1612,1613,5,33,0,0,1613,1653,3,234,117,0,1614,1615,5,154,0,0,1615,1616,5,29,0,0,1616,1617,5,46,0,0,1617,1653,3,228,114,0,1618,1619,5,154,0,0,1619,1621,5,29,0,0,1620,1622,5,164,0,0,1621,1620,1,0,0,0,1621,1622,1,0,0,0,1622,1624,1,0,0,0,1623,1625,5,162,0,0,1624,1623,1,0,0,0,1624,1625,1,0,0,0,1625,1626,1,0,0,0,1626,1653,3,228,114,0,1627,1628,5,154,0,0,1628,1653,5,34,0,0,1629,1630,5,154,0,0,1630,1633,5,45,0,0,1631,1632,5,68,0,0,1632,1634,3,234,117,0,1633,1631,1,0,0,0,1633,1634,1,0,0,0,1634,1653,1,0,0,0,1635,1637,5,154,0,0,1636,1638,5,164,0,0,1637,1636,1,0,0,0,1637,1638,1,0,0,0,1638,1639,1,0,0,0,1639,1642,5,163,0,0,1640,1641,7,17,0,0,1641,1643,3,234,117,0,1642,1640,1,0,0,0,1642,1643,1,0,0,0,1643,1647,1,0,0,0,1644,1645,5,98,0,0,1645,1648,5,202,0,0,1646,1648,3,146,73,0,1647,1644,1,0,0,0,1647,1646,1,0,0,0,1647,1648,1,0,0,0,1648,1650,1,0,0,0,1649,1651,3,158,79,0,1650,1649,1,0,0,0,1650,1651,1,0,0,0,1651,1653,1,0,0,0,1652,1610,1,0,0,0,1652,1614,1,0,0,0,1652,1618,1,0,0,0,1652,1627,1,0,0,0,1652,1629,1,0,0,0,1652,1635,1,0,0,0,1653,199,1,0,0,0,1654,1655,5,161,0,0,1655,1656,5,63,0,0,1656,1657,5,49,0,0,1657,1689,3,228,114,0,1658,1659,5,161,0,0,1659,1660,5,63,0,0,1660,1689,5,102,0,0,1661,1662,5,161,0,0,1662,1663,5,137,0,0,1663,1689,5,45,0,0,1664,1665,5,161,0,0,1665,1666,5,137,0,0,1666,1667,5,46,0,0,1667,1689,3,228,114,0,1668,1669,5,161,0,0,1669,1677,7,18,0,0,1670,1671,5,49,0,0,1671,1678,5,151,0,0,1672,1678,5,60,0,0,1673,1675,5,177,0,0,1674,1673,1,0,0,0,1674,1675,1,0,0,0,1675,1676,1,0,0,0,1676,1678,5,106,0,0,1677,1670,1,0,0,0,1677,1672,1,0,0,0,1677,1674,1,0,0,0,1678,1679,1,0,0,0,1679,1689,3,228,114,0,1680,1681,5,161,0,0,1681,1682,7,18,0,0,1682,1683,5,142,0,0,1683,1689,5,151,0,0,1684,1685,5,161,0,0,1685,1686,5,159,0,0,1686,1687,5,141,0,0,1687,1689,3,228,114,0,1688,1654,1,0,0,0,1688,1658,1,0,0,0,1688,1661,1,0,0,0,1688,1664,1,0,0,0,1688,1668,1,0,0,0,1688,1680,1,0,0,0,1688,1684,1,0,0,0,1689,201,1,0,0,0,1690,1692,5,176,0,0,1691,1693,5,164,0,0,1692,1691,1,0,0,0,1692,1693,1,0,0,0,1693,1695,1,0,0,0,1694,1696,5,162,0,0,1695,1694,1,0,0,0,1695,1696,1,0,0,0,1696,1699,1,0,0,0,1697,1698,5,78,0,0,1698,1700,5,56,0,0,1699,1697,1,0,0,0,1699,1700,1,0,0,0,1700,1701,1,0,0,0,1701,1703,3,228,114,0,1702,1704,3,66,33,0,1703,1702,1,0,0,0,1703,1704,1,0,0,0,1704,203,1,0,0,0,1705,1706,5,182,0,0,1706,1707,3,234,117,0,1707,205,1,0,0,0,1708,1709,5,188,0,0,1709,1711,3,228,114,0,1710,1712,5,55,0,0,1711,1710,1,0,0,0,1711,1712,1,0,0,0,1712,1715,1,0,0,0,1713,1714,5,99,0,0,1714,1716,5,200,0,0,1715,1713,1,0,0,0,1715,1716,1,0,0,0,1716,207,1,0,0,0,1717,1765,3,250,125,0,1718,1719,3,250,125,0,1719,1720,5,219,0,0,1720,1721,3,250,125,0,1721,1728,3,208,104,0,1722,1723,5,208,0,0,1723,1724,3,250,125,0,1724,1725,3,208,104,0,1725,1727,1,0,0,0,1726,1722,1,0,0,0,1727,1730,1,0,0,0,1728,1726,1,0,0,0,1728,1729,1,0,0,0,1729,1731,1,0,0,0,1730,1728,1,0,0,0,1731,1732,5,229,0,0,1732,1765,1,0,0,0,1733,1734,3,250,125,0,1734,1735,5,219,0,0,1735,1740,3,254,127,0,1736,1737,5,208,0,0,1737,1739,3,254,127,0,1738,1736,1,0,0,0,1739,1742,1,0,0,0,1740,1738,1,0,0,0,1740,1741,1,0,0,0,1741,1743,1,0,0,0,1742,1740,1,0,0,0,1743,1744,5,229,0,0,1744,1765,1,0,0,0,1745,1746,3,250,125,0,1746,1747,5,219,0,0,1747,1752,3,208,104,0,1748,1749,5,208,0,0,1749,1751,3,208,104,0,1750,1748,1,0,0,0,1751,1754,1,0,0,0,1752,1750,1,0,0,0,1752,1753,1,0,0,0,1753,1755,1,0,0,0,1754,1752,1,0,0,0,1755,1756,5,229,0,0,1756,1765,1,0,0,0,1757,1758,3,250,125,0,1758,1760,5,219,0,0,1759,1761,3,210,105,0,1760,1759,1,0,0,0,1760,1761,1,0,0,0,1761,1762,1,0,0,0,1762,1763,5,229,0,0,1763,1765,1,0,0,0,1764,1717,1,0,0,0,1764,1718,1,0,0,0,1764,1733,1,0,0,0,1764,1745,1,0,0,0,1764,1757,1,0,0,0,1765,209,1,0,0,0,1766,1771,3,212,106,0,1767,1768,5,208,0,0,1768,1770,3,212,106,0,1769,1767,1,0,0,0,1770,1773,1,0,0,0,1771,1769,1,0,0,0,1771,1772,1,0,0,0,1772,211,1,0,0,0,1773,1771,1,0,0,0,1774,1775,3,228,114,0,1775,1776,5,211,0,0,1776,1778,1,0,0,0,1777,1774,1,0,0,0,1777,1778,1,0,0,0,1778,1779,1,0,0,0,1779,1786,5,204,0,0,1780,1781,5,219,0,0,1781,1782,3,128,64,0,1782,1783,5,229,0,0,1783,1786,1,0,0,0,1784,1786,3,214,107,0,1785,1777,1,0,0,0,1785,1780,1,0,0,0,1785,1784,1,0,0,0,1786,213,1,0,0,0,1787,1788,6,107,-1,0,1788,1790,5,19,0,0,1789,1791,3,214,107,0,1790,1789,1,0,0,0,1790,1791,1,0,0,0,1791,1797,1,0,0,0,1792,1793,5,190,0,0,1793,1794,3,214,107,0,1794,1795,5,166,0,0,1795,1796,3,214,107,0,1796,1798,1,0,0,0,1797,1792,1,0,0,0,1798,1799,1,0,0,0,1799,1797,1,0,0,0,1799,1800,1,0,0,0,1800,1803,1,0,0,0,1801,1802,5,51,0,0,1802,1804,3,214,107,0,1803,1801,1,0,0,0,1803,1804,1,0,0,0,1804,1805,1,0,0,0,1805,1806,5,52,0,0,1806,1917,1,0,0,0,1807,1808,5,20,0,0,1808,1809,5,219,0,0,1809,1810,3,214,107,0,1810,1811,5,10,0,0,1811,1812,3,208,104,0,1812,1813,5,229,0,0,1813,1917,1,0,0,0,1814,1815,5,35,0,0,1815,1917,5,202,0,0,1816,1817,5,59,0,0,1817,1818,5,219,0,0,1818,1819,3,242,121,0,1819,1820,5,68,0,0,1820,1821,3,214,107,0,1821,1822,5,229,0,0,1822,1917,1,0,0,0,1823,1824,5,86,0,0,1824,1825,3,214,107,0,1825,1826,3,242,121,0,1826,1917,1,0,0,0,1827,1828,5,158,0,0,1828,1829,5,219,0,0,1829,1830,3,214,107,0,1830,1831,5,68,0,0,1831,1834,3,214,107,0,1832,1833,5,65,0,0,1833,1835,3,214,107,0,1834,1832,1,0,0,0,1834,1835,1,0,0,0,1835,1836,1,0,0,0,1836,1837,5,229,0,0,1837,1917,1,0,0,0,1838,1839,5,169,0,0,1839,1917,5,202,0,0,1840,1841,5,174,0,0,1841,1842,5,219,0,0,1842,1843,7,19,0,0,1843,1844,5,202,0,0,1844,1845,5,68,0,0,1845,1846,3,214,107,0,1846,1847,5,229,0,0,1847,1917,1,0,0,0,1848,1849,3,250,125,0,1849,1851,5,219,0,0,1850,1852,3,210,105,0,1851,1850,1,0,0,0,1851,1852,1,0,0,0,1852,1853,1,0,0,0,1853,1854,5,229,0,0,1854,1855,1,0,0,0,1855,1856,5,125,0,0,1856,1857,5,219,0,0,1857,1858,3,184,92,0,1858,1859,5,229,0,0,1859,1917,1,0,0,0,1860,1861,3,250,125,0,1861,1863,5,219,0,0,1862,1864,3,210,105,0,1863,1862,1,0,0,0,1863,1864,1,0,0,0,1864,1865,1,0,0,0,1865,1866,5,229,0,0,1866,1867,1,0,0,0,1867,1868,5,125,0,0,1868,1869,3,250,125,0,1869,1917,1,0,0,0,1870,1876,3,250,125,0,1871,1873,5,219,0,0,1872,1874,3,210,105,0,1873,1872,1,0,0,0,1873,1874,1,0,0,0,1874,1875,1,0,0,0,1875,1877,5,229,0,0,1876,1871,1,0,0,0,1876,1877,1,0,0,0,1877,1878,1,0,0,0,1878,1880,5,219,0,0,1879,1881,5,48,0,0,1880,1879,1,0,0,0,1880,1881,1,0,0,0,1881,1883,1,0,0,0,1882,1884,3,216,108,0,1883,1882,1,0,0,0,1883,1884,1,0,0,0,1884,1885,1,0,0,0,1885,1886,5,229,0,0,1886,1917,1,0,0,0,1887,1917,3,240,120,0,1888,1889,5,210,0,0,1889,1917,3,214,107,17,1890,1891,5,115,0,0,1891,1917,3,214,107,12,1892,1893,3,228,114,0,1893,1894,5,211,0,0,1894,1896,1,0,0,0,1895,1892,1,0,0,0,1895,1896,1,0,0,0,1896,1897,1,0,0,0,1897,1917,5,204,0,0,1898,1899,5,219,0,0,1899,1900,3,128,64,0,1900,1901,5,229,0,0,1901,1917,1,0,0,0,1902,1903,5,219,0,0,1903,1904,3,214,107,0,1904,1905,5,229,0,0,1905,1917,1,0,0,0,1906,1907,5,219,0,0,1907,1908,3,210,105,0,1908,1909,5,229,0,0,1909,1917,1,0,0,0,1910,1912,5,217,0,0,1911,1913,3,210,105,0,1912,1911,1,0,0,0,1912,1913,1,0,0,0,1913,1914,1,0,0,0,1914,1917,5,228,0,0,1915,1917,3,222,111,0,1916,1787,1,0,0,0,1916,1807,1,0,0,0,1916,1814,1,0,0,0,1916,1816,1,0,0,0,1916,1823,1,0,0,0,1916,1827,1,0,0,0,1916,1838,1,0,0,0,1916,1840,1,0,0,0,1916,1848,1,0,0,0,1916,1860,1,0,0,0,1916,1870,1,0,0,0,1916,1887,1,0,0,0,1916,1888,1,0,0,0,1916,1890,1,0,0,0,1916,1895,1,0,0,0,1916,1898,1,0,0,0,1916,1902,1,0,0,0,1916,1906,1,0,0,0,1916,1910,1,0,0,0,1916,1915,1,0,0,0,1917,1989,1,0,0,0,1918,1919,10,16,0,0,1919,1920,7,20,0,0,1920,1988,3,214,107,17,1921,1922,10,15,0,0,1922,1923,7,21,0,0,1923,1988,3,214,107,16,1924,1943,10,14,0,0,1925,1944,5,212,0,0,1926,1944,5,213,0,0,1927,1944,5,221,0,0,1928,1944,5,218,0,0,1929,1944,5,214,0,0,1930,1944,5,220,0,0,1931,1944,5,215,0,0,1932,1934,5,71,0,0,1933,1932,1,0,0,0,1933,1934,1,0,0,0,1934,1936,1,0,0,0,1935,1937,5,115,0,0,1936,1935,1,0,0,0,1936,1937,1,0,0,0,1937,1938,1,0,0,0,1938,1944,5,80,0,0,1939,1941,5,115,0,0,1940,1939,1,0,0,0,1940,1941,1,0,0,0,1941,1942,1,0,0,0,1942,1944,7,22,0,0,1943,1925,1,0,0,0,1943,1926,1,0,0,0,1943,1927,1,0,0,0,1943,1928,1,0,0,0,1943,1929,1,0,0,0,1943,1930,1,0,0,0,1943,1931,1,0,0,0,1943,1933,1,0,0,0,1943,1940,1,0,0,0,1944,1945,1,0,0,0,1945,1988,3,214,107,15,1946,1947,10,11,0,0,1947,1948,5,6,0,0,1948,1988,3,214,107,12,1949,1950,10,10,0,0,1950,1951,5,121,0,0,1951,1988,3,214,107,11,1952,1954,10,9,0,0,1953,1955,5,115,0,0,1954,1953,1,0,0,0,1954,1955,1,0,0,0,1955,1956,1,0,0,0,1956,1957,5,16,0,0,1957,1958,3,214,107,0,1958,1959,5,6,0,0,1959,1960,3,214,107,10,1960,1988,1,0,0,0,1961,1962,10,8,0,0,1962,1963,5,224,0,0,1963,1964,3,214,107,0,1964,1965,5,207,0,0,1965,1966,3,214,107,8,1966,1988,1,0,0,0,1967,1968,10,19,0,0,1968,1969,5,217,0,0,1969,1970,3,214,107,0,1970,1971,5,228,0,0,1971,1988,1,0,0,0,1972,1973,10,18,0,0,1973,1974,5,211,0,0,1974,1988,5,200,0,0,1975,1976,10,13,0,0,1976,1978,5,88,0,0,1977,1979,5,115,0,0,1978,1977,1,0,0,0,1978,1979,1,0,0,0,1979,1980,1,0,0,0,1980,1988,5,116,0,0,1981,1985,10,7,0,0,1982,1986,3,248,124,0,1983,1984,5,10,0,0,1984,1986,3,250,125,0,1985,1982,1,0,0,0,1985,1983,1,0,0,0,1986,1988,1,0,0,0,1987,1918,1,0,0,0,1987,1921,1,0,0,0,1987,1924,1,0,0,0,1987,1946,1,0,0,0,1987,1949,1,0,0,0,1987,1952,1,0,0,0,1987,1961,1,0,0,0,1987,1967,1,0,0,0,1987,1972,1,0,0,0,1987,1975,1,0,0,0,1987,1981,1,0,0,0,1988,1991,1,0,0,0,1989,1987,1,0,0,0,1989,1990,1,0,0,0,1990,215,1,0,0,0,1991,1989,1,0,0,0,1992,1997,3,218,109,0,1993,1994,5,208,0,0,1994,1996,3,218,109,0,1995,1993,1,0,0,0,1996,1999,1,0,0,0,1997,1995,1,0,0,0,1997,1998,1,0,0,0,1998,217,1,0,0,0,1999,1997,1,0,0,0,2e3,2003,3,220,110,0,2001,2003,3,214,107,0,2002,2e3,1,0,0,0,2002,2001,1,0,0,0,2003,219,1,0,0,0,2004,2005,5,219,0,0,2005,2010,3,250,125,0,2006,2007,5,208,0,0,2007,2009,3,250,125,0,2008,2006,1,0,0,0,2009,2012,1,0,0,0,2010,2008,1,0,0,0,2010,2011,1,0,0,0,2011,2013,1,0,0,0,2012,2010,1,0,0,0,2013,2014,5,229,0,0,2014,2024,1,0,0,0,2015,2020,3,250,125,0,2016,2017,5,208,0,0,2017,2019,3,250,125,0,2018,2016,1,0,0,0,2019,2022,1,0,0,0,2020,2018,1,0,0,0,2020,2021,1,0,0,0,2021,2024,1,0,0,0,2022,2020,1,0,0,0,2023,2004,1,0,0,0,2023,2015,1,0,0,0,2024,2025,1,0,0,0,2025,2026,5,203,0,0,2026,2027,3,214,107,0,2027,221,1,0,0,0,2028,2029,3,228,114,0,2029,2030,5,211,0,0,2030,2032,1,0,0,0,2031,2028,1,0,0,0,2031,2032,1,0,0,0,2032,2033,1,0,0,0,2033,2036,3,250,125,0,2034,2035,5,211,0,0,2035,2037,3,250,125,0,2036,2034,1,0,0,0,2036,2037,1,0,0,0,2037,223,1,0,0,0,2038,2039,6,112,-1,0,2039,2046,3,228,114,0,2040,2046,3,226,113,0,2041,2042,5,219,0,0,2042,2043,3,128,64,0,2043,2044,5,229,0,0,2044,2046,1,0,0,0,2045,2038,1,0,0,0,2045,2040,1,0,0,0,2045,2041,1,0,0,0,2046,2055,1,0,0,0,2047,2051,10,1,0,0,2048,2052,3,248,124,0,2049,2050,5,10,0,0,2050,2052,3,250,125,0,2051,2048,1,0,0,0,2051,2049,1,0,0,0,2052,2054,1,0,0,0,2053,2047,1,0,0,0,2054,2057,1,0,0,0,2055,2053,1,0,0,0,2055,2056,1,0,0,0,2056,225,1,0,0,0,2057,2055,1,0,0,0,2058,2059,3,250,125,0,2059,2061,5,219,0,0,2060,2062,3,230,115,0,2061,2060,1,0,0,0,2061,2062,1,0,0,0,2062,2063,1,0,0,0,2063,2064,5,229,0,0,2064,227,1,0,0,0,2065,2066,3,234,117,0,2066,2067,5,211,0,0,2067,2069,1,0,0,0,2068,2065,1,0,0,0,2068,2069,1,0,0,0,2069,2070,1,0,0,0,2070,2071,3,250,125,0,2071,229,1,0,0,0,2072,2077,3,232,116,0,2073,2074,5,208,0,0,2074,2076,3,232,116,0,2075,2073,1,0,0,0,2076,2079,1,0,0,0,2077,2075,1,0,0,0,2077,2078,1,0,0,0,2078,231,1,0,0,0,2079,2077,1,0,0,0,2080,2084,3,222,111,0,2081,2084,3,226,113,0,2082,2084,3,240,120,0,2083,2080,1,0,0,0,2083,2081,1,0,0,0,2083,2082,1,0,0,0,2084,233,1,0,0,0,2085,2086,3,250,125,0,2086,235,1,0,0,0,2087,2096,5,198,0,0,2088,2089,5,211,0,0,2089,2096,7,23,0,0,2090,2091,5,200,0,0,2091,2093,5,211,0,0,2092,2094,7,23,0,0,2093,2092,1,0,0,0,2093,2094,1,0,0,0,2094,2096,1,0,0,0,2095,2087,1,0,0,0,2095,2088,1,0,0,0,2095,2090,1,0,0,0,2096,237,1,0,0,0,2097,2099,7,24,0,0,2098,2097,1,0,0,0,2098,2099,1,0,0,0,2099,2106,1,0,0,0,2100,2107,3,236,118,0,2101,2107,5,199,0,0,2102,2107,5,200,0,0,2103,2107,5,201,0,0,2104,2107,5,82,0,0,2105,2107,5,113,0,0,2106,2100,1,0,0,0,2106,2101,1,0,0,0,2106,2102,1,0,0,0,2106,2103,1,0,0,0,2106,2104,1,0,0,0,2106,2105,1,0,0,0,2107,239,1,0,0,0,2108,2112,3,238,119,0,2109,2112,5,202,0,0,2110,2112,5,116,0,0,2111,2108,1,0,0,0,2111,2109,1,0,0,0,2111,2110,1,0,0,0,2112,241,1,0,0,0,2113,2114,7,25,0,0,2114,243,1,0,0,0,2115,2116,7,26,0,0,2116,245,1,0,0,0,2117,2118,7,27,0,0,2118,247,1,0,0,0,2119,2122,5,197,0,0,2120,2122,3,246,123,0,2121,2119,1,0,0,0,2121,2120,1,0,0,0,2122,249,1,0,0,0,2123,2127,5,197,0,0,2124,2127,3,242,121,0,2125,2127,3,244,122,0,2126,2123,1,0,0,0,2126,2124,1,0,0,0,2126,2125,1,0,0,0,2127,251,1,0,0,0,2128,2131,3,250,125,0,2129,2131,5,116,0,0,2130,2128,1,0,0,0,2130,2129,1,0,0,0,2131,253,1,0,0,0,2132,2133,5,202,0,0,2133,2134,5,213,0,0,2134,2135,3,238,119,0,2135,255,1,0,0,0,280,257,263,269,275,279,282,285,307,310,318,323,336,345,352,360,365,372,377,384,389,395,401,406,412,417,423,428,434,448,455,462,469,475,480,486,491,497,506,516,526,546,554,569,576,590,596,602,608,611,617,620,623,629,633,636,639,642,645,652,656,664,667,673,677,680,691,695,698,703,705,708,711,721,725,728,731,736,738,745,751,755,758,761,771,779,805,807,811,833,835,846,849,858,875,886,904,917,934,943,970,972,993,998,1003,1006,1018,1023,1027,1030,1034,1038,1043,1046,1050,1052,1074,1082,1085,1095,1099,1107,1111,1116,1120,1124,1128,1132,1134,1142,1146,1149,1172,1177,1182,1185,1195,1205,1209,1214,1220,1225,1231,1235,1241,1244,1247,1250,1264,1268,1272,1277,1280,1290,1298,1301,1305,1308,1312,1315,1318,1321,1324,1327,1331,1335,1338,1341,1344,1347,1350,1359,1365,1392,1414,1422,1425,1431,1439,1442,1448,1450,1454,1459,1462,1465,1469,1473,1476,1478,1481,1485,1489,1492,1494,1496,1499,1504,1515,1521,1526,1533,1538,1542,1546,1551,1558,1566,1569,1572,1591,1605,1621,1624,1633,1637,1642,1647,1650,1652,1674,1677,1688,1692,1695,1699,1703,1711,1715,1728,1740,1752,1760,1764,1771,1777,1785,1790,1799,1803,1834,1851,1863,1873,1876,1880,1883,1895,1912,1916,1933,1936,1940,1943,1954,1978,1985,1987,1989,1997,2002,2010,2020,2023,2031,2036,2045,2051,2055,2061,2068,2077,2083,2093,2095,2098,2106,2111,2121,2126,2130],Zi.vocabulary=new Ra(Zi.literalNames,Zi.symbolicNames,[]),Zi.decisionsToDFA=Zi._ATN.decisionToState.map(((t,e)=>new ni(t,e))),Zi),_G=class extends ga{constructor(t,e){super(t,e)}EOF(){return this.getToken(CG.EOF,0)}statements(){return this.getRuleContext(0,PG)}get ruleIndex(){return CG.RULE_root}accept(t){return t.visitRoot?t.visitRoot(this):t.visitChildren(this)}},PG=class t extends ga{constructor(t,e){super(t,e)}statement(){return this.getRuleContext(0,MG)}SEMICOLON(){return this.getToken(CG.SEMICOLON,0)}statements(){return this.getRuleContext(0,t)}get ruleIndex(){return CG.RULE_statements}accept(t){return t.visitStatements?t.visitStatements(this):t.visitChildren(this)}},MG=class extends ga{constructor(t,e){super(t,e)}notInsertStatement(){return this.getRuleContext(0,dG)}INTO(){return this.getToken(CG.INTO,0)}OUTFILE(){return this.getToken(CG.OUTFILE,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}FORMAT(){return this.getToken(CG.FORMAT,0)}identifierOrNull(){return this.getRuleContext(0,by)}SEMICOLON(){return this.getToken(CG.SEMICOLON,0)}insertStatement(){return this.getRuleContext(0,uv)}get ruleIndex(){return CG.RULE_statement}accept(t){return t.visitStatement?t.visitStatement(this):t.visitChildren(this)}},dG=class extends ga{constructor(t,e){super(t,e)}alterStatement(){return this.getRuleContext(0,pG)}attachStatement(){return this.getRuleContext(0,TF)}checkStatement(){return this.getRuleContext(0,RF)}createStatement(){return this.getRuleContext(0,LF)}describeStatement(){return this.getRuleContext(0,av)}deleteStatement(){return this.getRuleContext(0,AF)}dropStatement(){return this.getRuleContext(0,rv)}existsStatement(){return this.getRuleContext(0,nv)}explainStatement(){return this.getRuleContext(0,Tv)}killStatement(){return this.getRuleContext(0,dv)}optimizeStatement(){return this.getRuleContext(0,mv)}renameStatement(){return this.getRuleContext(0,Dv)}selectUnionStatement(){return this.getRuleContext(0,gv)}setStatement(){return this.getRuleContext(0,NB)}showStatement(){return this.getRuleContext(0,LB)}systemStatement(){return this.getRuleContext(0,mB)}truncateStatement(){return this.getRuleContext(0,DB)}useStatement(){return this.getRuleContext(0,pB)}watchStatement(){return this.getRuleContext(0,gB)}selectStatement(){return this.getRuleContext(0,kv)}commonTableExpressionStatement(){return this.getRuleContext(0,UG)}get ruleIndex(){return CG.RULE_notInsertStatement}accept(t){return t.visitNotInsertStatement?t.visitNotInsertStatement(this):t.visitChildren(this)}},UG=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(CG.WITH,0)}namedQuery(t){return void 0===t?this.getRuleContexts(mG):this.getRuleContext(t,mG)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_commonTableExpressionStatement}accept(t){return t.visitCommonTableExpressionStatement?t.visitCommonTableExpressionStatement(this):t.visitChildren(this)}},mG=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(CG.AS,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}notInsertStatement(){return this.getRuleContext(0,dG)}RPAREN(){return this.getToken(CG.RPAREN,0)}identifier(){return this.getRuleContext(0,wy)}columnAliases(){return this.getRuleContext(0,DG)}get ruleIndex(){return CG.RULE_namedQuery}accept(t){return t.visitNamedQuery?t.visitNamedQuery(this):t.visitChildren(this)}},DG=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(CG.LPAREN,0)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_columnAliases}accept(t){return t.visitColumnAliases?t.visitColumnAliases(this):t.visitChildren(this)}},pG=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_alterStatement}copyFrom(t){super.copyFrom(t)}},gG=class extends pG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(CG.ALTER,0)}TABLE(){return this.getToken(CG.TABLE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}alterTableClause(t){return void 0===t?this.getRuleContexts(xG):this.getRuleContext(t,xG)}clusterClause(){return this.getRuleContext(0,xF)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}accept(t){return t.visitAlterTableStatement?t.visitAlterTableStatement(this):t.visitChildren(this)}},xG=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_alterTableClause}copyFrom(t){super.copyFrom(t)}},kG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLACE(){return this.getToken(CG.REPLACE,0)}partitionClause(){return this.getRuleContext(0,EF)}FROM(){return this.getToken(CG.FROM,0)}tableIdentifier(){return this.getRuleContext(0,gy)}accept(t){return t.visitAlterTableClauseReplace?t.visitAlterTableClauseReplace(this):t.visitChildren(this)}},HG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(CG.MODIFY,0)}ORDER(){return this.getToken(CG.ORDER,0)}BY(){return this.getToken(CG.BY,0)}columnExpression(){return this.getRuleContext(0,bB)}accept(t){return t.visitAlterTableClauseModifyOrderBy?t.visitAlterTableClauseModifyOrderBy(this):t.visitChildren(this)}},GG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}UPDATE(){return this.getToken(CG.UPDATE,0)}assignmentExpressionList(){return this.getRuleContext(0,cF)}whereClause(){return this.getRuleContext(0,fv)}accept(t){return t.visitAlterTableClauseUpdate?t.visitAlterTableClauseUpdate(this):t.visitChildren(this)}},FG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CLEAR(){return this.getToken(CG.CLEAR,0)}PROJECTION(){return this.getToken(CG.PROJECTION,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}IN(){return this.getToken(CG.IN,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseClearProjection?t.visitAlterTableClauseClearProjection(this):t.visitChildren(this)}},vG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(CG.MODIFY,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(){return this.getRuleContext(0,Py)}REMOVE(){return this.getToken(CG.REMOVE,0)}tableColumnPropertyType(){return this.getRuleContext(0,hF)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseModifyRemove?t.visitAlterTableClauseModifyRemove(this):t.visitChildren(this)}},BG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DELETE(){return this.getToken(CG.DELETE,0)}WHERE(){return this.getToken(CG.WHERE,0)}columnExpression(){return this.getRuleContext(0,bB)}accept(t){return t.visitAlterTableClauseDelete?t.visitAlterTableClauseDelete(this):t.visitChildren(this)}},yG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COMMENT(){return this.getToken(CG.COMMENT,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(){return this.getRuleContext(0,Py)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseComment?t.visitAlterTableClauseComment(this):t.visitChildren(this)}},fG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(CG.DROP,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseDropColumn?t.visitAlterTableClauseDropColumn(this):t.visitChildren(this)}},YG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DETACH(){return this.getToken(CG.DETACH,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseDetach?t.visitAlterTableClauseDetach(this):t.visitChildren(this)}},wG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(CG.ADD,0)}INDEX(){return this.getToken(CG.INDEX,0)}tableIndexDefinition(){return this.getRuleContext(0,zF)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}AFTER(){return this.getToken(CG.AFTER,0)}columnIdentifier(){return this.getRuleContext(0,Py)}accept(t){return t.visitAlterTableClauseAddIndex?t.visitAlterTableClauseAddIndex(this):t.visitChildren(this)}},bG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(CG.DROP,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseDropPartition?t.visitAlterTableClauseDropPartition(this):t.visitChildren(this)}},WG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MATERIALIZE(){return this.getToken(CG.MATERIALIZE,0)}INDEX(){return this.getToken(CG.INDEX,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}IN(){return this.getToken(CG.IN,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseMaterializeIndex?t.visitAlterTableClauseMaterializeIndex(this):t.visitChildren(this)}},VG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MATERIALIZE(){return this.getToken(CG.MATERIALIZE,0)}PROJECTION(){return this.getToken(CG.PROJECTION,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}IN(){return this.getToken(CG.IN,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseMaterializeProjection?t.visitAlterTableClauseMaterializeProjection(this):t.visitChildren(this)}},XG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MOVE(){return this.getToken(CG.MOVE,0)}partitionClause(){return this.getRuleContext(0,EF)}TO(){return this.getToken(CG.TO,0)}DISK(){return this.getToken(CG.DISK,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}VOLUME(){return this.getToken(CG.VOLUME,0)}TABLE(){return this.getToken(CG.TABLE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}accept(t){return t.visitAlterTableClauseMovePartition?t.visitAlterTableClauseMovePartition(this):t.visitChildren(this)}},KG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RENAME(){return this.getToken(CG.RENAME,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(t){return void 0===t?this.getRuleContexts(Py):this.getRuleContext(t,Py)}TO(){return this.getToken(CG.TO,0)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseRename?t.visitAlterTableClauseRename(this):t.visitChildren(this)}},QG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FREEZE(){return this.getToken(CG.FREEZE,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseFreezePartition?t.visitAlterTableClauseFreezePartition(this):t.visitChildren(this)}},JG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CLEAR(){return this.getToken(CG.CLEAR,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}IN(){return this.getToken(CG.IN,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseClearColumn?t.visitAlterTableClauseClearColumn(this):t.visitChildren(this)}},ZG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(CG.MODIFY,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}tableColumnDefinition(){return this.getRuleContext(0,qF)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseModify?t.visitAlterTableClauseModify(this):t.visitChildren(this)}},qG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CLEAR(){return this.getToken(CG.CLEAR,0)}INDEX(){return this.getToken(CG.INDEX,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}IN(){return this.getToken(CG.IN,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseClearIndex?t.visitAlterTableClauseClearIndex(this):t.visitChildren(this)}},jG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REMOVE(){return this.getToken(CG.REMOVE,0)}TTL(){return this.getToken(CG.TTL,0)}accept(t){return t.visitAlterTableClauseRemoveTTL?t.visitAlterTableClauseRemoveTTL(this):t.visitChildren(this)}},zG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(CG.MODIFY,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(){return this.getRuleContext(0,Py)}codecExpression(){return this.getRuleContext(0,tv)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseModifyCodec?t.visitAlterTableClauseModifyCodec(this):t.visitChildren(this)}},$G=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ATTACH(){return this.getToken(CG.ATTACH,0)}partitionClause(){return this.getRuleContext(0,EF)}FROM(){return this.getToken(CG.FROM,0)}tableIdentifier(){return this.getRuleContext(0,gy)}accept(t){return t.visitAlterTableClauseAttach?t.visitAlterTableClauseAttach(this):t.visitChildren(this)}},tF=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(CG.DROP,0)}PROJECTION(){return this.getToken(CG.PROJECTION,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseDropProjection?t.visitAlterTableClauseDropProjection(this):t.visitChildren(this)}},eF=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(CG.DROP,0)}INDEX(){return this.getToken(CG.INDEX,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseDropIndex?t.visitAlterTableClauseDropIndex(this):t.visitChildren(this)}},sF=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(CG.MODIFY,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(){return this.getRuleContext(0,Py)}COMMENT(){return this.getToken(CG.COMMENT,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseModifyComment?t.visitAlterTableClauseModifyComment(this):t.visitChildren(this)}},aF=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(CG.MODIFY,0)}ttlClause(){return this.getRuleContext(0,WF)}accept(t){return t.visitAlterTableClauseModifyTTL?t.visitAlterTableClauseModifyTTL(this):t.visitChildren(this)}},rF=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(CG.ADD,0)}PROJECTION(){return this.getToken(CG.PROJECTION,0)}tableProjectionDefinition(){return this.getRuleContext(0,$F)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}AFTER(){return this.getToken(CG.AFTER,0)}columnIdentifier(){return this.getRuleContext(0,Py)}accept(t){return t.visitAlterTableClauseAddProjection?t.visitAlterTableClauseAddProjection(this):t.visitChildren(this)}},iF=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(CG.ADD,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}tableColumnDefinition(){return this.getRuleContext(0,qF)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}AFTER(){return this.getToken(CG.AFTER,0)}columnIdentifier(){return this.getRuleContext(0,Py)}accept(t){return t.visitAlterTableClauseAddColumn?t.visitAlterTableClauseAddColumn(this):t.visitChildren(this)}},cF=class extends ga{constructor(t,e){super(t,e)}assignmentExpression(t){return void 0===t?this.getRuleContexts(nF):this.getRuleContext(t,nF)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_assignmentExpressionList}accept(t){return t.visitAssignmentExpressionList?t.visitAssignmentExpressionList(this):t.visitChildren(this)}},nF=class extends ga{constructor(t,e){super(t,e)}columnIdentifier(){return this.getRuleContext(0,Py)}EQ_SINGLE(){return this.getToken(CG.EQ_SINGLE,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_assignmentExpression}accept(t){return t.visitAssignmentExpression?t.visitAssignmentExpression(this):t.visitChildren(this)}},hF=class extends ga{constructor(t,e){super(t,e)}ALIAS(){return this.getToken(CG.ALIAS,0)}CODEC(){return this.getToken(CG.CODEC,0)}COMMENT(){return this.getToken(CG.COMMENT,0)}DEFAULT(){return this.getToken(CG.DEFAULT,0)}MATERIALIZED(){return this.getToken(CG.MATERIALIZED,0)}TTL(){return this.getToken(CG.TTL,0)}get ruleIndex(){return CG.RULE_tableColumnPropertyType}accept(t){return t.visitTableColumnPropertyType?t.visitTableColumnPropertyType(this):t.visitChildren(this)}},EF=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(CG.PARTITION,0)}columnExpression(){return this.getRuleContext(0,bB)}ID(){return this.getToken(CG.ID,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}get ruleIndex(){return CG.RULE_partitionClause}accept(t){return t.visitPartitionClause?t.visitPartitionClause(this):t.visitChildren(this)}},TF=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_attachStatement}copyFrom(t){super.copyFrom(t)}},oF=class extends TF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ATTACH(){return this.getToken(CG.ATTACH,0)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}tableIdentifier(){return this.getRuleContext(0,gy)}clusterClause(){return this.getRuleContext(0,xF)}accept(t){return t.visitAttachDictionaryStatement?t.visitAttachDictionaryStatement(this):t.visitChildren(this)}},RF=class extends ga{constructor(t,e){super(t,e)}CHECK(){return this.getToken(CG.CHECK,0)}TABLE(){return this.getToken(CG.TABLE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}partitionClause(){return this.getRuleContext(0,EF)}get ruleIndex(){return CG.RULE_checkStatement}accept(t){return t.visitCheckStatement?t.visitCheckStatement(this):t.visitChildren(this)}},AF=class extends ga{constructor(t,e){super(t,e)}DELETE(){return this.getToken(CG.DELETE,0)}FROM(){return this.getToken(CG.FROM,0)}tableIdentifier(){return this.getRuleContext(0,gy)}clusterClause(){return this.getRuleContext(0,xF)}whereClause(){return this.getRuleContext(0,fv)}get ruleIndex(){return CG.RULE_deleteStatement}accept(t){return t.visitDeleteStatement?t.visitDeleteStatement(this):t.visitChildren(this)}},SF=class extends ga{constructor(t,e){super(t,e)}TABLE(){return this.getToken(CG.TABLE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}ATTACH(){return this.getToken(CG.ATTACH,0)}CREATE(){return this.getToken(CG.CREATE,0)}REPLACE(){return this.getToken(CG.REPLACE,0)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}uuidClause(){return this.getRuleContext(0,kF)}clusterClause(){return this.getRuleContext(0,xF)}tableSchemaClause(){return this.getRuleContext(0,FF)}engineClause(){return this.getRuleContext(0,fF)}subqueryClause(){return this.getRuleContext(0,GF)}OR(){return this.getToken(CG.OR,0)}get ruleIndex(){return CG.RULE_createTableStatement}accept(t){return t.visitCreateTableStatement?t.visitCreateTableStatement(this):t.visitChildren(this)}},lF=class extends ga{constructor(t,e){super(t,e)}DATABASE(){return this.getToken(CG.DATABASE,0)}identifier(){return this.getRuleContext(0,wy)}engineExpression(){return this.getRuleContext(0,VF)}ATTACH(){return this.getToken(CG.ATTACH,0)}CREATE(){return this.getToken(CG.CREATE,0)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}clusterClause(){return this.getRuleContext(0,xF)}get ruleIndex(){return CG.RULE_createDatabaseStatement}accept(t){return t.visitCreateDatabaseStatement?t.visitCreateDatabaseStatement(this):t.visitChildren(this)}},OF=class extends ga{constructor(t,e){super(t,e)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}tableIdentifier(){return this.getRuleContext(0,gy)}dictionarySchemaClause(){return this.getRuleContext(0,CF)}dictionaryEngineClause(){return this.getRuleContext(0,PF)}ATTACH(){return this.getToken(CG.ATTACH,0)}CREATE(){return this.getToken(CG.CREATE,0)}REPLACE(){return this.getToken(CG.REPLACE,0)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}uuidClause(){return this.getRuleContext(0,kF)}clusterClause(){return this.getRuleContext(0,xF)}OR(){return this.getToken(CG.OR,0)}get ruleIndex(){return CG.RULE_createDictionaryStatement}accept(t){return t.visitCreateDictionaryStatement?t.visitCreateDictionaryStatement(this):t.visitChildren(this)}},IF=class extends ga{constructor(t,e){super(t,e)}LIVE(){return this.getToken(CG.LIVE,0)}VIEW(){return this.getToken(CG.VIEW,0)}tableIdentifier(){return this.getRuleContext(0,gy)}subqueryClause(){return this.getRuleContext(0,GF)}ATTACH(){return this.getToken(CG.ATTACH,0)}CREATE(){return this.getToken(CG.CREATE,0)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}uuidClause(){return this.getRuleContext(0,kF)}clusterClause(){return this.getRuleContext(0,xF)}WITH(){return this.getToken(CG.WITH,0)}TIMEOUT(){return this.getToken(CG.TIMEOUT,0)}destinationClause(){return this.getRuleContext(0,HF)}tableSchemaClause(){return this.getRuleContext(0,FF)}DECIMAL_LITERAL(){return this.getToken(CG.DECIMAL_LITERAL,0)}get ruleIndex(){return CG.RULE_createLiveViewStatement}accept(t){return t.visitCreateLiveViewStatement?t.visitCreateLiveViewStatement(this):t.visitChildren(this)}},uF=class extends ga{constructor(t,e){super(t,e)}MATERIALIZED(){return this.getToken(CG.MATERIALIZED,0)}VIEW(){return this.getToken(CG.VIEW,0)}tableIdentifier(){return this.getRuleContext(0,gy)}subqueryClause(){return this.getRuleContext(0,GF)}ATTACH(){return this.getToken(CG.ATTACH,0)}CREATE(){return this.getToken(CG.CREATE,0)}destinationClause(){return this.getRuleContext(0,HF)}engineClause(){return this.getRuleContext(0,fF)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}uuidClause(){return this.getRuleContext(0,kF)}clusterClause(){return this.getRuleContext(0,xF)}tableSchemaClause(){return this.getRuleContext(0,FF)}POPULATE(){return this.getToken(CG.POPULATE,0)}get ruleIndex(){return CG.RULE_createMaterializedViewStatement}accept(t){return t.visitCreateMaterializedViewStatement?t.visitCreateMaterializedViewStatement(this):t.visitChildren(this)}},NF=class extends ga{constructor(t,e){super(t,e)}VIEW(){return this.getToken(CG.VIEW,0)}tableIdentifier(){return this.getRuleContext(0,gy)}subqueryClause(){return this.getRuleContext(0,GF)}ATTACH(){return this.getToken(CG.ATTACH,0)}CREATE(){return this.getToken(CG.CREATE,0)}OR(){return this.getToken(CG.OR,0)}REPLACE(){return this.getToken(CG.REPLACE,0)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}uuidClause(){return this.getRuleContext(0,kF)}clusterClause(){return this.getRuleContext(0,xF)}tableSchemaClause(){return this.getRuleContext(0,FF)}get ruleIndex(){return CG.RULE_createViewStatement}accept(t){return t.visitCreateViewStatement?t.visitCreateViewStatement(this):t.visitChildren(this)}},LF=class extends ga{constructor(t,e){super(t,e)}createDatabaseStatement(){return this.getRuleContext(0,lF)}createDictionaryStatement(){return this.getRuleContext(0,OF)}createLiveViewStatement(){return this.getRuleContext(0,IF)}createMaterializedViewStatement(){return this.getRuleContext(0,uF)}createTableStatement(){return this.getRuleContext(0,SF)}createViewStatement(){return this.getRuleContext(0,NF)}get ruleIndex(){return CG.RULE_createStatement}accept(t){return t.visitCreateStatement?t.visitCreateStatement(this):t.visitChildren(this)}},CF=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(CG.LPAREN,0)}dictionaryAttributeDefinition(t){return void 0===t?this.getRuleContexts(_F):this.getRuleContext(t,_F)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_dictionarySchemaClause}accept(t){return t.visitDictionarySchemaClause?t.visitDictionarySchemaClause(this):t.visitChildren(this)}},_F=class extends ga{constructor(t,e){super(t,e),this.attrs=new Set}identifier(){return this.getRuleContext(0,wy)}columnTypeExpression(){return this.getRuleContext(0,xB)}DEFAULT(t){return void 0===t?this.getTokens(CG.DEFAULT):this.getToken(CG.DEFAULT,t)}literal(t){return void 0===t?this.getRuleContexts(vy):this.getRuleContext(t,vy)}EXPRESSION(t){return void 0===t?this.getTokens(CG.EXPRESSION):this.getToken(CG.EXPRESSION,t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}HIERARCHICAL(t){return void 0===t?this.getTokens(CG.HIERARCHICAL):this.getToken(CG.HIERARCHICAL,t)}INJECTIVE(t){return void 0===t?this.getTokens(CG.INJECTIVE):this.getToken(CG.INJECTIVE,t)}IS_OBJECT_ID(t){return void 0===t?this.getTokens(CG.IS_OBJECT_ID):this.getToken(CG.IS_OBJECT_ID,t)}get ruleIndex(){return CG.RULE_dictionaryAttributeDefinition}accept(t){return t.visitDictionaryAttributeDefinition?t.visitDictionaryAttributeDefinition(this):t.visitChildren(this)}},PF=class extends ga{constructor(t,e){super(t,e),this.clauses=new Set}dictionaryPrimaryKeyClause(){return this.getRuleContext(0,MF)}sourceClause(t){return void 0===t?this.getRuleContexts(UF):this.getRuleContext(t,UF)}lifetimeClause(t){return void 0===t?this.getRuleContexts(mF):this.getRuleContext(t,mF)}layoutClause(t){return void 0===t?this.getRuleContexts(DF):this.getRuleContext(t,DF)}rangeClause(t){return void 0===t?this.getRuleContexts(pF):this.getRuleContext(t,pF)}dictionarySettingsClause(t){return void 0===t?this.getRuleContexts(gF):this.getRuleContext(t,gF)}get ruleIndex(){return CG.RULE_dictionaryEngineClause}accept(t){return t.visitDictionaryEngineClause?t.visitDictionaryEngineClause(this):t.visitChildren(this)}},MF=class extends ga{constructor(t,e){super(t,e)}PRIMARY(){return this.getToken(CG.PRIMARY,0)}KEY(){return this.getToken(CG.KEY,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_dictionaryPrimaryKeyClause}accept(t){return t.visitDictionaryPrimaryKeyClause?t.visitDictionaryPrimaryKeyClause(this):t.visitChildren(this)}},dF=class extends ga{constructor(t,e){super(t,e)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}literal(){return this.getRuleContext(0,vy)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}get ruleIndex(){return CG.RULE_dictionaryArgumentExpression}accept(t){return t.visitDictionaryArgumentExpression?t.visitDictionaryArgumentExpression(this):t.visitChildren(this)}},UF=class extends ga{constructor(t,e){super(t,e)}SOURCE(){return this.getToken(CG.SOURCE,0)}LPAREN(t){return void 0===t?this.getTokens(CG.LPAREN):this.getToken(CG.LPAREN,t)}identifier(){return this.getRuleContext(0,wy)}RPAREN(t){return void 0===t?this.getTokens(CG.RPAREN):this.getToken(CG.RPAREN,t)}dictionaryArgumentExpression(t){return void 0===t?this.getRuleContexts(dF):this.getRuleContext(t,dF)}get ruleIndex(){return CG.RULE_sourceClause}accept(t){return t.visitSourceClause?t.visitSourceClause(this):t.visitChildren(this)}},mF=class extends ga{constructor(t,e){super(t,e)}LIFETIME(){return this.getToken(CG.LIFETIME,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}DECIMAL_LITERAL(t){return void 0===t?this.getTokens(CG.DECIMAL_LITERAL):this.getToken(CG.DECIMAL_LITERAL,t)}MIN(){return this.getToken(CG.MIN,0)}MAX(){return this.getToken(CG.MAX,0)}get ruleIndex(){return CG.RULE_lifetimeClause}accept(t){return t.visitLifetimeClause?t.visitLifetimeClause(this):t.visitChildren(this)}},DF=class extends ga{constructor(t,e){super(t,e)}LAYOUT(){return this.getToken(CG.LAYOUT,0)}LPAREN(t){return void 0===t?this.getTokens(CG.LPAREN):this.getToken(CG.LPAREN,t)}identifier(){return this.getRuleContext(0,wy)}RPAREN(t){return void 0===t?this.getTokens(CG.RPAREN):this.getToken(CG.RPAREN,t)}dictionaryArgumentExpression(t){return void 0===t?this.getRuleContexts(dF):this.getRuleContext(t,dF)}get ruleIndex(){return CG.RULE_layoutClause}accept(t){return t.visitLayoutClause?t.visitLayoutClause(this):t.visitChildren(this)}},pF=class extends ga{constructor(t,e){super(t,e)}RANGE(){return this.getToken(CG.RANGE,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}MIN(){return this.getToken(CG.MIN,0)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}MAX(){return this.getToken(CG.MAX,0)}get ruleIndex(){return CG.RULE_rangeClause}accept(t){return t.visitRangeClause?t.visitRangeClause(this):t.visitChildren(this)}},gF=class extends ga{constructor(t,e){super(t,e)}SETTINGS(){return this.getToken(CG.SETTINGS,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}settingExpressionList(){return this.getRuleContext(0,EB)}RPAREN(){return this.getToken(CG.RPAREN,0)}get ruleIndex(){return CG.RULE_dictionarySettingsClause}accept(t){return t.visitDictionarySettingsClause?t.visitDictionarySettingsClause(this):t.visitChildren(this)}},xF=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(CG.ON,0)}CLUSTER(){return this.getToken(CG.CLUSTER,0)}identifier(){return this.getRuleContext(0,wy)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}get ruleIndex(){return CG.RULE_clusterClause}accept(t){return t.visitClusterClause?t.visitClusterClause(this):t.visitChildren(this)}},kF=class extends ga{constructor(t,e){super(t,e)}UUID(){return this.getToken(CG.UUID,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}get ruleIndex(){return CG.RULE_uuidClause}accept(t){return t.visitUuidClause?t.visitUuidClause(this):t.visitChildren(this)}},HF=class extends ga{constructor(t,e){super(t,e)}TO(){return this.getToken(CG.TO,0)}tableIdentifier(){return this.getRuleContext(0,gy)}get ruleIndex(){return CG.RULE_destinationClause}accept(t){return t.visitDestinationClause?t.visitDestinationClause(this):t.visitChildren(this)}},GF=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(CG.AS,0)}selectUnionStatement(){return this.getRuleContext(0,gv)}get ruleIndex(){return CG.RULE_subqueryClause}accept(t){return t.visitSubqueryClause?t.visitSubqueryClause(this):t.visitChildren(this)}},FF=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_tableSchemaClause}copyFrom(t){super.copyFrom(t)}},vF=class extends FF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AS(){return this.getToken(CG.AS,0)}tableIdentifier(){return this.getRuleContext(0,gy)}accept(t){return t.visitSchemaAsTableClause?t.visitSchemaAsTableClause(this):t.visitChildren(this)}},BF=class extends FF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AS(){return this.getToken(CG.AS,0)}tableFunctionExpression(){return this.getRuleContext(0,py)}accept(t){return t.visitSchemaAsFunctionClause?t.visitSchemaAsFunctionClause(this):t.visitChildren(this)}},yF=class extends FF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}tableElementExpression(t){return void 0===t?this.getRuleContexts(XF):this.getRuleContext(t,XF)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}accept(t){return t.visitSchemaDescriptionClause?t.visitSchemaDescriptionClause(this):t.visitChildren(this)}},fF=class extends ga{constructor(t,e){super(t,e),this.clauses=new Set}engineExpression(){return this.getRuleContext(0,VF)}orderByClause(t){return void 0===t?this.getRuleContexts(bv):this.getRuleContext(t,bv)}partitionByClause(t){return void 0===t?this.getRuleContexts(YF):this.getRuleContext(t,YF)}primaryKeyClause(t){return void 0===t?this.getRuleContexts(wF):this.getRuleContext(t,wF)}sampleByClause(t){return void 0===t?this.getRuleContexts(bF):this.getRuleContext(t,bF)}ttlClause(t){return void 0===t?this.getRuleContexts(WF):this.getRuleContext(t,WF)}settingsClause(t){return void 0===t?this.getRuleContexts(Kv):this.getRuleContext(t,Kv)}get ruleIndex(){return CG.RULE_engineClause}accept(t){return t.visitEngineClause?t.visitEngineClause(this):t.visitChildren(this)}},YF=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(CG.PARTITION,0)}BY(){return this.getToken(CG.BY,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_partitionByClause}accept(t){return t.visitPartitionByClause?t.visitPartitionByClause(this):t.visitChildren(this)}},wF=class extends ga{constructor(t,e){super(t,e)}PRIMARY(){return this.getToken(CG.PRIMARY,0)}KEY(){return this.getToken(CG.KEY,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_primaryKeyClause}accept(t){return t.visitPrimaryKeyClause?t.visitPrimaryKeyClause(this):t.visitChildren(this)}},bF=class extends ga{constructor(t,e){super(t,e)}SAMPLE(){return this.getToken(CG.SAMPLE,0)}BY(){return this.getToken(CG.BY,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_sampleByClause}accept(t){return t.visitSampleByClause?t.visitSampleByClause(this):t.visitChildren(this)}},WF=class extends ga{constructor(t,e){super(t,e)}TTL(){return this.getToken(CG.TTL,0)}ttlExpression(t){return void 0===t?this.getRuleContexts(sv):this.getRuleContext(t,sv)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_ttlClause}accept(t){return t.visitTtlClause?t.visitTtlClause(this):t.visitChildren(this)}},VF=class extends ga{constructor(t,e){super(t,e)}ENGINE(){return this.getToken(CG.ENGINE,0)}identifierOrNull(){return this.getRuleContext(0,by)}EQ_SINGLE(){return this.getToken(CG.EQ_SINGLE,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_engineExpression}accept(t){return t.visitEngineExpression?t.visitEngineExpression(this):t.visitChildren(this)}},XF=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_tableElementExpression}copyFrom(t){super.copyFrom(t)}},KF=class extends XF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableColumnDefinition(){return this.getRuleContext(0,qF)}accept(t){return t.visitTableElementExpressionColumn?t.visitTableElementExpressionColumn(this):t.visitChildren(this)}},QF=class extends XF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CONSTRAINT(){return this.getToken(CG.CONSTRAINT,0)}identifier(){return this.getRuleContext(0,wy)}CHECK(){return this.getToken(CG.CHECK,0)}columnExpression(){return this.getRuleContext(0,bB)}accept(t){return t.visitTableElementExpressionConstraint?t.visitTableElementExpressionConstraint(this):t.visitChildren(this)}},JF=class extends XF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INDEX(){return this.getToken(CG.INDEX,0)}tableIndexDefinition(){return this.getRuleContext(0,zF)}accept(t){return t.visitTableElementExpressionIndex?t.visitTableElementExpressionIndex(this):t.visitChildren(this)}},ZF=class extends XF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PROJECTION(){return this.getToken(CG.PROJECTION,0)}tableProjectionDefinition(){return this.getRuleContext(0,$F)}accept(t){return t.visitTableElementExpressionProjection?t.visitTableElementExpressionProjection(this):t.visitChildren(this)}},qF=class extends ga{constructor(t,e){super(t,e)}columnIdentifier(){return this.getRuleContext(0,Py)}columnTypeExpression(){return this.getRuleContext(0,xB)}tableColumnPropertyExpression(){return this.getRuleContext(0,jF)}COMMENT(){return this.getToken(CG.COMMENT,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}codecExpression(){return this.getRuleContext(0,tv)}TTL(){return this.getToken(CG.TTL,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_tableColumnDefinition}accept(t){return t.visitTableColumnDefinition?t.visitTableColumnDefinition(this):t.visitChildren(this)}},jF=class extends ga{constructor(t,e){super(t,e)}columnExpression(){return this.getRuleContext(0,bB)}DEFAULT(){return this.getToken(CG.DEFAULT,0)}MATERIALIZED(){return this.getToken(CG.MATERIALIZED,0)}ALIAS(){return this.getToken(CG.ALIAS,0)}get ruleIndex(){return CG.RULE_tableColumnPropertyExpression}accept(t){return t.visitTableColumnPropertyExpression?t.visitTableColumnPropertyExpression(this):t.visitChildren(this)}},zF=class extends ga{constructor(t,e){super(t,e)}columnIdentifier(){return this.getRuleContext(0,Py)}columnExpression(){return this.getRuleContext(0,bB)}TYPE(){return this.getToken(CG.TYPE,0)}columnTypeExpression(){return this.getRuleContext(0,xB)}GRANULARITY(){return this.getToken(CG.GRANULARITY,0)}DECIMAL_LITERAL(){return this.getToken(CG.DECIMAL_LITERAL,0)}get ruleIndex(){return CG.RULE_tableIndexDefinition}accept(t){return t.visitTableIndexDefinition?t.visitTableIndexDefinition(this):t.visitChildren(this)}},$F=class extends ga{constructor(t,e){super(t,e)}columnIdentifier(){return this.getRuleContext(0,Py)}projectionSelectStatement(){return this.getRuleContext(0,pv)}get ruleIndex(){return CG.RULE_tableProjectionDefinition}accept(t){return t.visitTableProjectionDefinition?t.visitTableProjectionDefinition(this):t.visitChildren(this)}},tv=class extends ga{constructor(t,e){super(t,e)}CODEC(){return this.getToken(CG.CODEC,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}codecArgExpression(t){return void 0===t?this.getRuleContexts(ev):this.getRuleContext(t,ev)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_codecExpression}accept(t){return t.visitCodecExpression?t.visitCodecExpression(this):t.visitChildren(this)}},ev=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,wy)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_codecArgExpression}accept(t){return t.visitCodecArgExpression?t.visitCodecArgExpression(this):t.visitChildren(this)}},sv=class extends ga{constructor(t,e){super(t,e)}columnExpression(){return this.getRuleContext(0,bB)}DELETE(){return this.getToken(CG.DELETE,0)}TO(){return this.getToken(CG.TO,0)}DISK(){return this.getToken(CG.DISK,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}VOLUME(){return this.getToken(CG.VOLUME,0)}get ruleIndex(){return CG.RULE_ttlExpression}accept(t){return t.visitTtlExpression?t.visitTtlExpression(this):t.visitChildren(this)}},av=class extends ga{constructor(t,e){super(t,e)}tableExpression(){return this.getRuleContext(0,My)}DESCRIBE(){return this.getToken(CG.DESCRIBE,0)}DESC(){return this.getToken(CG.DESC,0)}TABLE(){return this.getToken(CG.TABLE,0)}get ruleIndex(){return CG.RULE_describeStatement}accept(t){return t.visitDescribeStatement?t.visitDescribeStatement(this):t.visitChildren(this)}},rv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_dropStatement}copyFrom(t){super.copyFrom(t)}},iv=class extends rv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DATABASE(){return this.getToken(CG.DATABASE,0)}databaseIdentifier(){return this.getRuleContext(0,Hy)}DETACH(){return this.getToken(CG.DETACH,0)}DROP(){return this.getToken(CG.DROP,0)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}clusterClause(){return this.getRuleContext(0,xF)}accept(t){return t.visitDropDatabaseStatement?t.visitDropDatabaseStatement(this):t.visitChildren(this)}},cv=class extends rv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableIdentifier(){return this.getRuleContext(0,gy)}DETACH(){return this.getToken(CG.DETACH,0)}DROP(){return this.getToken(CG.DROP,0)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}TABLE(){return this.getToken(CG.TABLE,0)}VIEW(){return this.getToken(CG.VIEW,0)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}clusterClause(){return this.getRuleContext(0,xF)}NO(){return this.getToken(CG.NO,0)}DELAY(){return this.getToken(CG.DELAY,0)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}accept(t){return t.visitDropTableStatement?t.visitDropTableStatement(this):t.visitChildren(this)}},nv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_existsStatement}copyFrom(t){super.copyFrom(t)}},hv=class extends nv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXISTS(){return this.getToken(CG.EXISTS,0)}DATABASE(){return this.getToken(CG.DATABASE,0)}databaseIdentifier(){return this.getRuleContext(0,Hy)}accept(t){return t.visitExistsDatabaseStatement?t.visitExistsDatabaseStatement(this):t.visitChildren(this)}},Ev=class extends nv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXISTS(){return this.getToken(CG.EXISTS,0)}tableIdentifier(){return this.getRuleContext(0,gy)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}TABLE(){return this.getToken(CG.TABLE,0)}VIEW(){return this.getToken(CG.VIEW,0)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}accept(t){return t.visitExistsTableStatement?t.visitExistsTableStatement(this):t.visitChildren(this)}},Tv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_explainStatement}copyFrom(t){super.copyFrom(t)}},ov=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}AST(){return this.getToken(CG.AST,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainASTStatement?t.visitExplainASTStatement(this):t.visitChildren(this)}},Rv=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}QUERY(){return this.getToken(CG.QUERY,0)}TREE(){return this.getToken(CG.TREE,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainQueryTreeStatement?t.visitExplainQueryTreeStatement(this):t.visitChildren(this)}},Av=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}PLAN(){return this.getToken(CG.PLAN,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainPlanStatement?t.visitExplainPlanStatement(this):t.visitChildren(this)}},Sv=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainDefaultStatement?t.visitExplainDefaultStatement(this):t.visitChildren(this)}},lv=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}ESTIMATE(){return this.getToken(CG.ESTIMATE,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainEstimateStatement?t.visitExplainEstimateStatement(this):t.visitChildren(this)}},Ov=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}SYNTAX(){return this.getToken(CG.SYNTAX,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainSyntaxStatement?t.visitExplainSyntaxStatement(this):t.visitChildren(this)}},Iv=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}PIPELINE(){return this.getToken(CG.PIPELINE,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainPipelineStatement?t.visitExplainPipelineStatement(this):t.visitChildren(this)}},uv=class extends ga{constructor(t,e){super(t,e)}INSERT(){return this.getToken(CG.INSERT,0)}INTO(){return this.getToken(CG.INTO,0)}dataClause(){return this.getRuleContext(0,Lv)}tableIdentifier(){return this.getRuleContext(0,gy)}FUNCTION(){return this.getToken(CG.FUNCTION,0)}tableFunctionExpression(){return this.getRuleContext(0,py)}TABLE(){return this.getToken(CG.TABLE,0)}columnsClause(){return this.getRuleContext(0,Nv)}get ruleIndex(){return CG.RULE_insertStatement}accept(t){return t.visitInsertStatement?t.visitInsertStatement(this):t.visitChildren(this)}},Nv=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnIdentifier(t){return void 0===t?this.getRuleContexts(Py):this.getRuleContext(t,Py)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_columnsClause}accept(t){return t.visitColumnsClause?t.visitColumnsClause(this):t.visitChildren(this)}},Lv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_dataClause}copyFrom(t){super.copyFrom(t)}},Cv=class extends Lv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}valuesStatement(){return this.getRuleContext(0,Mv)}accept(t){return t.visitDataClauseValues?t.visitDataClauseValues(this):t.visitChildren(this)}},_v=class extends Lv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FORMAT(){return this.getToken(CG.FORMAT,0)}identifier(){return this.getRuleContext(0,wy)}accept(t){return t.visitDataClauseFormat?t.visitDataClauseFormat(this):t.visitChildren(this)}},Pv=class extends Lv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}selectUnionStatement(){return this.getRuleContext(0,gv)}EOF(){return this.getToken(CG.EOF,0)}SEMICOLON(){return this.getToken(CG.SEMICOLON,0)}accept(t){return t.visitDataClauseSelect?t.visitDataClauseSelect(this):t.visitChildren(this)}},Mv=class extends ga{constructor(t,e){super(t,e)}VALUES(){return this.getToken(CG.VALUES,0)}LPAREN(t){return void 0===t?this.getTokens(CG.LPAREN):this.getToken(CG.LPAREN,t)}RPAREN(t){return void 0===t?this.getTokens(CG.RPAREN):this.getToken(CG.RPAREN,t)}literal(t){return void 0===t?this.getRuleContexts(vy):this.getRuleContext(t,vy)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_valuesStatement}accept(t){return t.visitValuesStatement?t.visitValuesStatement(this):t.visitChildren(this)}},dv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_killStatement}copyFrom(t){super.copyFrom(t)}},Uv=class extends dv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}KILL(){return this.getToken(CG.KILL,0)}MUTATION(){return this.getToken(CG.MUTATION,0)}whereClause(){return this.getRuleContext(0,fv)}clusterClause(){return this.getRuleContext(0,xF)}SYNC(){return this.getToken(CG.SYNC,0)}ASYNC(){return this.getToken(CG.ASYNC,0)}TEST(){return this.getToken(CG.TEST,0)}accept(t){return t.visitKillMutationStatement?t.visitKillMutationStatement(this):t.visitChildren(this)}},mv=class extends ga{constructor(t,e){super(t,e)}OPTIMIZE(){return this.getToken(CG.OPTIMIZE,0)}TABLE(){return this.getToken(CG.TABLE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}clusterClause(){return this.getRuleContext(0,xF)}partitionClause(){return this.getRuleContext(0,EF)}FINAL(){return this.getToken(CG.FINAL,0)}DEDUPLICATE(){return this.getToken(CG.DEDUPLICATE,0)}get ruleIndex(){return CG.RULE_optimizeStatement}accept(t){return t.visitOptimizeStatement?t.visitOptimizeStatement(this):t.visitChildren(this)}},Dv=class extends ga{constructor(t,e){super(t,e)}RENAME(){return this.getToken(CG.RENAME,0)}TABLE(){return this.getToken(CG.TABLE,0)}tableIdentifier(t){return void 0===t?this.getRuleContexts(gy):this.getRuleContext(t,gy)}TO(t){return void 0===t?this.getTokens(CG.TO):this.getToken(CG.TO,t)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}clusterClause(){return this.getRuleContext(0,xF)}get ruleIndex(){return CG.RULE_renameStatement}accept(t){return t.visitRenameStatement?t.visitRenameStatement(this):t.visitChildren(this)}},pv=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(CG.LPAREN,0)}SELECT(){return this.getToken(CG.SELECT,0)}columnExpressionList(){return this.getRuleContext(0,BB)}RPAREN(){return this.getToken(CG.RPAREN,0)}withClause(){return this.getRuleContext(0,Hv)}groupByClause(){return this.getRuleContext(0,Yv)}projectionOrderByClause(){return this.getRuleContext(0,Wv)}get ruleIndex(){return CG.RULE_projectionSelectStatement}accept(t){return t.visitProjectionSelectStatement?t.visitProjectionSelectStatement(this):t.visitChildren(this)}},gv=class extends ga{constructor(t,e){super(t,e)}selectStatementWithParentheses(t){return void 0===t?this.getRuleContexts(xv):this.getRuleContext(t,xv)}UNION(t){return void 0===t?this.getTokens(CG.UNION):this.getToken(CG.UNION,t)}ALL(t){return void 0===t?this.getTokens(CG.ALL):this.getToken(CG.ALL,t)}get ruleIndex(){return CG.RULE_selectUnionStatement}accept(t){return t.visitSelectUnionStatement?t.visitSelectUnionStatement(this):t.visitChildren(this)}},xv=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,kv)}LPAREN(){return this.getToken(CG.LPAREN,0)}selectUnionStatement(){return this.getRuleContext(0,gv)}RPAREN(){return this.getToken(CG.RPAREN,0)}get ruleIndex(){return CG.RULE_selectStatementWithParentheses}accept(t){return t.visitSelectStatementWithParentheses?t.visitSelectStatementWithParentheses(this):t.visitChildren(this)}},kv=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(CG.SELECT,0)}columnExpressionList(){return this.getRuleContext(0,BB)}withClause(){return this.getRuleContext(0,Hv)}DISTINCT(){return this.getToken(CG.DISTINCT,0)}topClause(){return this.getRuleContext(0,Gv)}fromClause(){return this.getRuleContext(0,Fv)}arrayJoinClause(){return this.getRuleContext(0,vv)}windowClause(){return this.getRuleContext(0,Bv)}prewhereClause(){return this.getRuleContext(0,yv)}whereClause(){return this.getRuleContext(0,fv)}groupByClause(){return this.getRuleContext(0,Yv)}WITH(t){return void 0===t?this.getTokens(CG.WITH):this.getToken(CG.WITH,t)}TOTALS(){return this.getToken(CG.TOTALS,0)}havingClause(){return this.getRuleContext(0,wv)}orderByClause(){return this.getRuleContext(0,bv)}limitByClause(){return this.getRuleContext(0,Vv)}limitClause(){return this.getRuleContext(0,Xv)}settingsClause(){return this.getRuleContext(0,Kv)}CUBE(){return this.getToken(CG.CUBE,0)}ROLLUP(){return this.getToken(CG.ROLLUP,0)}get ruleIndex(){return CG.RULE_selectStatement}accept(t){return t.visitSelectStatement?t.visitSelectStatement(this):t.visitChildren(this)}},Hv=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(CG.WITH,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_withClause}accept(t){return t.visitWithClause?t.visitWithClause(this):t.visitChildren(this)}},Gv=class extends ga{constructor(t,e){super(t,e)}TOP(){return this.getToken(CG.TOP,0)}DECIMAL_LITERAL(){return this.getToken(CG.DECIMAL_LITERAL,0)}WITH(){return this.getToken(CG.WITH,0)}TIES(){return this.getToken(CG.TIES,0)}get ruleIndex(){return CG.RULE_topClause}accept(t){return t.visitTopClause?t.visitTopClause(this):t.visitChildren(this)}},Fv=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(CG.FROM,0)}joinExpression(){return this.getRuleContext(0,Qv)}get ruleIndex(){return CG.RULE_fromClause}accept(t){return t.visitFromClause?t.visitFromClause(this):t.visitChildren(this)}},vv=class extends ga{constructor(t,e){super(t,e)}ARRAY(){return this.getToken(CG.ARRAY,0)}JOIN(){return this.getToken(CG.JOIN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}LEFT(){return this.getToken(CG.LEFT,0)}INNER(){return this.getToken(CG.INNER,0)}get ruleIndex(){return CG.RULE_arrayJoinClause}accept(t){return t.visitArrayJoinClause?t.visitArrayJoinClause(this):t.visitChildren(this)}},Bv=class extends ga{constructor(t,e){super(t,e)}WINDOW(){return this.getToken(CG.WINDOW,0)}identifier(){return this.getRuleContext(0,wy)}AS(){return this.getToken(CG.AS,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}windowExpression(){return this.getRuleContext(0,oB)}RPAREN(){return this.getToken(CG.RPAREN,0)}get ruleIndex(){return CG.RULE_windowClause}accept(t){return t.visitWindowClause?t.visitWindowClause(this):t.visitChildren(this)}},yv=class extends ga{constructor(t,e){super(t,e)}PREWHERE(){return this.getToken(CG.PREWHERE,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_prewhereClause}accept(t){return t.visitPrewhereClause?t.visitPrewhereClause(this):t.visitChildren(this)}},fv=class extends ga{constructor(t,e){super(t,e)}WHERE(){return this.getToken(CG.WHERE,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_whereClause}accept(t){return t.visitWhereClause?t.visitWhereClause(this):t.visitChildren(this)}},Yv=class extends ga{constructor(t,e){super(t,e)}GROUP(){return this.getToken(CG.GROUP,0)}BY(){return this.getToken(CG.BY,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}RPAREN(){return this.getToken(CG.RPAREN,0)}CUBE(){return this.getToken(CG.CUBE,0)}ROLLUP(){return this.getToken(CG.ROLLUP,0)}get ruleIndex(){return CG.RULE_groupByClause}accept(t){return t.visitGroupByClause?t.visitGroupByClause(this):t.visitChildren(this)}},wv=class extends ga{constructor(t,e){super(t,e)}HAVING(){return this.getToken(CG.HAVING,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_havingClause}accept(t){return t.visitHavingClause?t.visitHavingClause(this):t.visitChildren(this)}},bv=class extends ga{constructor(t,e){super(t,e)}ORDER(){return this.getToken(CG.ORDER,0)}BY(){return this.getToken(CG.BY,0)}orderExpressionList(){return this.getRuleContext(0,cB)}get ruleIndex(){return CG.RULE_orderByClause}accept(t){return t.visitOrderByClause?t.visitOrderByClause(this):t.visitChildren(this)}},Wv=class extends ga{constructor(t,e){super(t,e)}ORDER(){return this.getToken(CG.ORDER,0)}BY(){return this.getToken(CG.BY,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_projectionOrderByClause}accept(t){return t.visitProjectionOrderByClause?t.visitProjectionOrderByClause(this):t.visitChildren(this)}},Vv=class extends ga{constructor(t,e){super(t,e)}LIMIT(){return this.getToken(CG.LIMIT,0)}limitExpression(){return this.getRuleContext(0,iB)}BY(){return this.getToken(CG.BY,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_limitByClause}accept(t){return t.visitLimitByClause?t.visitLimitByClause(this):t.visitChildren(this)}},Xv=class extends ga{constructor(t,e){super(t,e)}LIMIT(){return this.getToken(CG.LIMIT,0)}limitExpression(){return this.getRuleContext(0,iB)}WITH(){return this.getToken(CG.WITH,0)}TIES(){return this.getToken(CG.TIES,0)}get ruleIndex(){return CG.RULE_limitClause}accept(t){return t.visitLimitClause?t.visitLimitClause(this):t.visitChildren(this)}},Kv=class extends ga{constructor(t,e){super(t,e)}SETTINGS(){return this.getToken(CG.SETTINGS,0)}settingExpressionList(){return this.getRuleContext(0,EB)}get ruleIndex(){return CG.RULE_settingsClause}accept(t){return t.visitSettingsClause?t.visitSettingsClause(this):t.visitChildren(this)}},Qv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_joinExpression}copyFrom(t){super.copyFrom(t)}},Jv=class extends Qv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}joinExpression(){return this.getRuleContext(0,Qv)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitJoinExpressionParens?t.visitJoinExpressionParens(this):t.visitChildren(this)}},Zv=class extends Qv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableExpression(){return this.getRuleContext(0,My)}FINAL(){return this.getToken(CG.FINAL,0)}sampleClause(){return this.getRuleContext(0,rB)}accept(t){return t.visitJoinExpressionTable?t.visitJoinExpressionTable(this):t.visitChildren(this)}},qv=class extends Qv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}joinExpression(t){return void 0===t?this.getRuleContexts(Qv):this.getRuleContext(t,Qv)}joinOperatorCross(){return this.getRuleContext(0,sB)}accept(t){return t.visitJoinExpressionCrossOp?t.visitJoinExpressionCrossOp(this):t.visitChildren(this)}},jv=class extends Qv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}joinExpression(t){return void 0===t?this.getRuleContexts(Qv):this.getRuleContext(t,Qv)}JOIN(){return this.getToken(CG.JOIN,0)}joinConstraintClause(){return this.getRuleContext(0,aB)}joinOperator(){return this.getRuleContext(0,zv)}GLOBAL(){return this.getToken(CG.GLOBAL,0)}LOCAL(){return this.getToken(CG.LOCAL,0)}accept(t){return t.visitJoinExpressionOp?t.visitJoinExpressionOp(this):t.visitChildren(this)}},zv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_joinOperator}copyFrom(t){super.copyFrom(t)}},$v=class extends zv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FULL(){return this.getToken(CG.FULL,0)}OUTER(){return this.getToken(CG.OUTER,0)}ALL(){return this.getToken(CG.ALL,0)}ANY(){return this.getToken(CG.ANY,0)}accept(t){return t.visitJoinOpFull?t.visitJoinOpFull(this):t.visitChildren(this)}},tB=class extends zv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INNER(){return this.getToken(CG.INNER,0)}ALL(){return this.getToken(CG.ALL,0)}ANY(){return this.getToken(CG.ANY,0)}ASOF(){return this.getToken(CG.ASOF,0)}accept(t){return t.visitJoinOpInner?t.visitJoinOpInner(this):t.visitChildren(this)}},eB=class extends zv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LEFT(){return this.getToken(CG.LEFT,0)}RIGHT(){return this.getToken(CG.RIGHT,0)}OUTER(){return this.getToken(CG.OUTER,0)}SEMI(){return this.getToken(CG.SEMI,0)}ALL(){return this.getToken(CG.ALL,0)}ANTI(){return this.getToken(CG.ANTI,0)}ANY(){return this.getToken(CG.ANY,0)}ASOF(){return this.getToken(CG.ASOF,0)}accept(t){return t.visitJoinOpLeftRight?t.visitJoinOpLeftRight(this):t.visitChildren(this)}},sB=class extends ga{constructor(t,e){super(t,e)}CROSS(){return this.getToken(CG.CROSS,0)}JOIN(){return this.getToken(CG.JOIN,0)}GLOBAL(){return this.getToken(CG.GLOBAL,0)}LOCAL(){return this.getToken(CG.LOCAL,0)}COMMA(){return this.getToken(CG.COMMA,0)}get ruleIndex(){return CG.RULE_joinOperatorCross}accept(t){return t.visitJoinOperatorCross?t.visitJoinOperatorCross(this):t.visitChildren(this)}},aB=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(CG.ON,0)}columnExpressionList(){return this.getRuleContext(0,BB)}USING(){return this.getToken(CG.USING,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}get ruleIndex(){return CG.RULE_joinConstraintClause}accept(t){return t.visitJoinConstraintClause?t.visitJoinConstraintClause(this):t.visitChildren(this)}},rB=class extends ga{constructor(t,e){super(t,e)}SAMPLE(){return this.getToken(CG.SAMPLE,0)}ratioExpression(t){return void 0===t?this.getRuleContexts(hB):this.getRuleContext(t,hB)}OFFSET(){return this.getToken(CG.OFFSET,0)}get ruleIndex(){return CG.RULE_sampleClause}accept(t){return t.visitSampleClause?t.visitSampleClause(this):t.visitChildren(this)}},iB=class extends ga{constructor(t,e){super(t,e)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}COMMA(){return this.getToken(CG.COMMA,0)}OFFSET(){return this.getToken(CG.OFFSET,0)}get ruleIndex(){return CG.RULE_limitExpression}accept(t){return t.visitLimitExpression?t.visitLimitExpression(this):t.visitChildren(this)}},cB=class extends ga{constructor(t,e){super(t,e)}orderExpression(t){return void 0===t?this.getRuleContexts(nB):this.getRuleContext(t,nB)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_orderExpressionList}accept(t){return t.visitOrderExpressionList?t.visitOrderExpressionList(this):t.visitChildren(this)}},nB=class extends ga{constructor(t,e){super(t,e)}columnExpression(){return this.getRuleContext(0,bB)}NULLS(){return this.getToken(CG.NULLS,0)}COLLATE(){return this.getToken(CG.COLLATE,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}ASCENDING(){return this.getToken(CG.ASCENDING,0)}DESCENDING(){return this.getToken(CG.DESCENDING,0)}DESC(){return this.getToken(CG.DESC,0)}FIRST(){return this.getToken(CG.FIRST,0)}LAST(){return this.getToken(CG.LAST,0)}get ruleIndex(){return CG.RULE_orderExpression}accept(t){return t.visitOrderExpression?t.visitOrderExpression(this):t.visitChildren(this)}},hB=class extends ga{constructor(t,e){super(t,e)}numberLiteral(t){return void 0===t?this.getRuleContexts(Fy):this.getRuleContext(t,Fy)}SLASH(){return this.getToken(CG.SLASH,0)}get ruleIndex(){return CG.RULE_ratioExpression}accept(t){return t.visitRatioExpression?t.visitRatioExpression(this):t.visitChildren(this)}},EB=class extends ga{constructor(t,e){super(t,e)}settingExpression(t){return void 0===t?this.getRuleContexts(TB):this.getRuleContext(t,TB)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_settingExpressionList}accept(t){return t.visitSettingExpressionList?t.visitSettingExpressionList(this):t.visitChildren(this)}},TB=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,wy)}EQ_SINGLE(){return this.getToken(CG.EQ_SINGLE,0)}literal(){return this.getRuleContext(0,vy)}get ruleIndex(){return CG.RULE_settingExpression}accept(t){return t.visitSettingExpression?t.visitSettingExpression(this):t.visitChildren(this)}},oB=class extends ga{constructor(t,e){super(t,e)}windowPartitionByClause(){return this.getRuleContext(0,RB)}windowOrderByClause(){return this.getRuleContext(0,AB)}windowFrameClause(){return this.getRuleContext(0,SB)}get ruleIndex(){return CG.RULE_windowExpression}accept(t){return t.visitWindowExpression?t.visitWindowExpression(this):t.visitChildren(this)}},RB=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(CG.PARTITION,0)}BY(){return this.getToken(CG.BY,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_windowPartitionByClause}accept(t){return t.visitWindowPartitionByClause?t.visitWindowPartitionByClause(this):t.visitChildren(this)}},AB=class extends ga{constructor(t,e){super(t,e)}ORDER(){return this.getToken(CG.ORDER,0)}BY(){return this.getToken(CG.BY,0)}orderExpressionList(){return this.getRuleContext(0,cB)}get ruleIndex(){return CG.RULE_windowOrderByClause}accept(t){return t.visitWindowOrderByClause?t.visitWindowOrderByClause(this):t.visitChildren(this)}},SB=class extends ga{constructor(t,e){super(t,e)}windowFrameExtend(){return this.getRuleContext(0,lB)}ROWS(){return this.getToken(CG.ROWS,0)}RANGE(){return this.getToken(CG.RANGE,0)}get ruleIndex(){return CG.RULE_windowFrameClause}accept(t){return t.visitWindowFrameClause?t.visitWindowFrameClause(this):t.visitChildren(this)}},lB=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_windowFrameExtend}copyFrom(t){super.copyFrom(t)}},OB=class extends lB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}windowFrameBound(){return this.getRuleContext(0,uB)}accept(t){return t.visitFrameStart?t.visitFrameStart(this):t.visitChildren(this)}},IB=class extends lB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}BETWEEN(){return this.getToken(CG.BETWEEN,0)}windowFrameBound(t){return void 0===t?this.getRuleContexts(uB):this.getRuleContext(t,uB)}AND(){return this.getToken(CG.AND,0)}accept(t){return t.visitFrameBetween?t.visitFrameBetween(this):t.visitChildren(this)}},uB=class extends ga{constructor(t,e){super(t,e)}CURRENT(){return this.getToken(CG.CURRENT,0)}ROW(){return this.getToken(CG.ROW,0)}UNBOUNDED(){return this.getToken(CG.UNBOUNDED,0)}PRECEDING(){return this.getToken(CG.PRECEDING,0)}FOLLOWING(){return this.getToken(CG.FOLLOWING,0)}numberLiteral(){return this.getRuleContext(0,Fy)}get ruleIndex(){return CG.RULE_windowFrameBound}accept(t){return t.visitWindowFrameBound?t.visitWindowFrameBound(this):t.visitChildren(this)}},NB=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(CG.SET,0)}settingExpressionList(){return this.getRuleContext(0,EB)}get ruleIndex(){return CG.RULE_setStatement}accept(t){return t.visitSetStatement?t.visitSetStatement(this):t.visitChildren(this)}},LB=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_showStatement}copyFrom(t){super.copyFrom(t)}},CB=class extends LB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(CG.SHOW,0)}CREATE(){return this.getToken(CG.CREATE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}TABLE(){return this.getToken(CG.TABLE,0)}accept(t){return t.visitShowCreateTableStatement?t.visitShowCreateTableStatement(this):t.visitChildren(this)}},_B=class extends LB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(CG.SHOW,0)}CREATE(){return this.getToken(CG.CREATE,0)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}tableIdentifier(){return this.getRuleContext(0,gy)}accept(t){return t.visitShowCreateDictionaryStatement?t.visitShowCreateDictionaryStatement(this):t.visitChildren(this)}},PB=class extends LB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(CG.SHOW,0)}TABLES(){return this.getToken(CG.TABLES,0)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}databaseIdentifier(){return this.getRuleContext(0,Hy)}LIKE(){return this.getToken(CG.LIKE,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}whereClause(){return this.getRuleContext(0,fv)}limitClause(){return this.getRuleContext(0,Xv)}FROM(){return this.getToken(CG.FROM,0)}IN(){return this.getToken(CG.IN,0)}accept(t){return t.visitShowTablesStatement?t.visitShowTablesStatement(this):t.visitChildren(this)}},MB=class extends LB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(CG.SHOW,0)}DICTIONARIES(){return this.getToken(CG.DICTIONARIES,0)}FROM(){return this.getToken(CG.FROM,0)}databaseIdentifier(){return this.getRuleContext(0,Hy)}accept(t){return t.visitShowDictionariesStatement?t.visitShowDictionariesStatement(this):t.visitChildren(this)}},dB=class extends LB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(CG.SHOW,0)}CREATE(){return this.getToken(CG.CREATE,0)}DATABASE(){return this.getToken(CG.DATABASE,0)}databaseIdentifier(){return this.getRuleContext(0,Hy)}accept(t){return t.visitShowCreateDatabaseStatement?t.visitShowCreateDatabaseStatement(this):t.visitChildren(this)}},UB=class extends LB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(CG.SHOW,0)}DATABASES(){return this.getToken(CG.DATABASES,0)}accept(t){return t.visitShowDatabasesStatement?t.visitShowDatabasesStatement(this):t.visitChildren(this)}},mB=class extends ga{constructor(t,e){super(t,e)}SYSTEM(){return this.getToken(CG.SYSTEM,0)}FLUSH(){return this.getToken(CG.FLUSH,0)}DISTRIBUTED(){return this.getToken(CG.DISTRIBUTED,0)}tableIdentifier(){return this.getRuleContext(0,gy)}LOGS(){return this.getToken(CG.LOGS,0)}RELOAD(){return this.getToken(CG.RELOAD,0)}DICTIONARIES(){return this.getToken(CG.DICTIONARIES,0)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}START(){return this.getToken(CG.START,0)}STOP(){return this.getToken(CG.STOP,0)}SENDS(){return this.getToken(CG.SENDS,0)}FETCHES(){return this.getToken(CG.FETCHES,0)}MERGES(){return this.getToken(CG.MERGES,0)}TTL(){return this.getToken(CG.TTL,0)}REPLICATED(){return this.getToken(CG.REPLICATED,0)}SYNC(){return this.getToken(CG.SYNC,0)}REPLICA(){return this.getToken(CG.REPLICA,0)}get ruleIndex(){return CG.RULE_systemStatement}accept(t){return t.visitSystemStatement?t.visitSystemStatement(this):t.visitChildren(this)}},DB=class extends ga{constructor(t,e){super(t,e)}TRUNCATE(){return this.getToken(CG.TRUNCATE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}TABLE(){return this.getToken(CG.TABLE,0)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}clusterClause(){return this.getRuleContext(0,xF)}get ruleIndex(){return CG.RULE_truncateStatement}accept(t){return t.visitTruncateStatement?t.visitTruncateStatement(this):t.visitChildren(this)}},pB=class extends ga{constructor(t,e){super(t,e)}USE(){return this.getToken(CG.USE,0)}databaseIdentifier(){return this.getRuleContext(0,Hy)}get ruleIndex(){return CG.RULE_useStatement}accept(t){return t.visitUseStatement?t.visitUseStatement(this):t.visitChildren(this)}},gB=class extends ga{constructor(t,e){super(t,e)}WATCH(){return this.getToken(CG.WATCH,0)}tableIdentifier(){return this.getRuleContext(0,gy)}EVENTS(){return this.getToken(CG.EVENTS,0)}LIMIT(){return this.getToken(CG.LIMIT,0)}DECIMAL_LITERAL(){return this.getToken(CG.DECIMAL_LITERAL,0)}get ruleIndex(){return CG.RULE_watchStatement}accept(t){return t.visitWatchStatement?t.visitWatchStatement(this):t.visitChildren(this)}},xB=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_columnTypeExpression}copyFrom(t){super.copyFrom(t)}},kB=class extends xB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(){return this.getRuleContext(0,wy)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnTypeExpression(t){return void 0===t?this.getRuleContexts(xB):this.getRuleContext(t,xB)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}accept(t){return t.visitColumnTypeExpressionComplex?t.visitColumnTypeExpressionComplex(this):t.visitChildren(this)}},HB=class extends xB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(){return this.getRuleContext(0,wy)}LPAREN(){return this.getToken(CG.LPAREN,0)}enumValue(t){return void 0===t?this.getRuleContexts(Wy):this.getRuleContext(t,Wy)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}accept(t){return t.visitColumnTypeExpressionEnum?t.visitColumnTypeExpressionEnum(this):t.visitChildren(this)}},GB=class extends xB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnTypeExpression(t){return void 0===t?this.getRuleContexts(xB):this.getRuleContext(t,xB)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}accept(t){return t.visitColumnTypeExpressionNested?t.visitColumnTypeExpressionNested(this):t.visitChildren(this)}},FB=class extends xB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(){return this.getRuleContext(0,wy)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}accept(t){return t.visitColumnTypeExpressionParam?t.visitColumnTypeExpressionParam(this):t.visitChildren(this)}},vB=class extends xB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(){return this.getRuleContext(0,wy)}accept(t){return t.visitColumnTypeExpressionSimple?t.visitColumnTypeExpressionSimple(this):t.visitChildren(this)}},BB=class extends ga{constructor(t,e){super(t,e)}columnsExpression(t){return void 0===t?this.getRuleContexts(yB):this.getRuleContext(t,yB)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_columnExpressionList}accept(t){return t.visitColumnExpressionList?t.visitColumnExpressionList(this):t.visitChildren(this)}},yB=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_columnsExpression}copyFrom(t){super.copyFrom(t)}},fB=class extends yB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ASTERISK(){return this.getToken(CG.ASTERISK,0)}tableIdentifier(){return this.getRuleContext(0,gy)}DOT(){return this.getToken(CG.DOT,0)}accept(t){return t.visitColumnsExpressionAsterisk?t.visitColumnsExpressionAsterisk(this):t.visitChildren(this)}},YB=class extends yB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}selectUnionStatement(){return this.getRuleContext(0,gv)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitColumnsExpressionSubquery?t.visitColumnsExpressionSubquery(this):t.visitChildren(this)}},wB=class extends yB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(){return this.getRuleContext(0,bB)}accept(t){return t.visitColumnsExpressionColumn?t.visitColumnsExpressionColumn(this):t.visitChildren(this)}},bB=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_columnExpression}copyFrom(t){super.copyFrom(t)}},WB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(){return this.getRuleContext(0,bB)}IS(){return this.getToken(CG.IS,0)}NULL_SQL(){return this.getToken(CG.NULL_SQL,0)}NOT(){return this.getToken(CG.NOT,0)}accept(t){return t.visitColumnExpressionIsNull?t.visitColumnExpressionIsNull(this):t.visitChildren(this)}},VB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitColumnExpressionTuple?t.visitColumnExpressionTuple(this):t.visitChildren(this)}},XB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}AND(){return this.getToken(CG.AND,0)}accept(t){return t.visitColumnExpressionAnd?t.visitColumnExpressionAnd(this):t.visitChildren(this)}},KB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DATE(){return this.getToken(CG.DATE,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}accept(t){return t.visitColumnExpressionDate?t.visitColumnExpressionDate(this):t.visitChildren(this)}},QB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}BETWEEN(){return this.getToken(CG.BETWEEN,0)}AND(){return this.getToken(CG.AND,0)}NOT(){return this.getToken(CG.NOT,0)}accept(t){return t.visitColumnExpressionBetween?t.visitColumnExpressionBetween(this):t.visitChildren(this)}},JB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TRIM(){return this.getToken(CG.TRIM,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}FROM(){return this.getToken(CG.FROM,0)}columnExpression(){return this.getRuleContext(0,bB)}RPAREN(){return this.getToken(CG.RPAREN,0)}BOTH(){return this.getToken(CG.BOTH,0)}LEADING(){return this.getToken(CG.LEADING,0)}TRAILING(){return this.getToken(CG.TRAILING,0)}accept(t){return t.visitColumnExpressionTrim?t.visitColumnExpressionTrim(this):t.visitChildren(this)}},ZB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}NOT(){return this.getToken(CG.NOT,0)}columnExpression(){return this.getRuleContext(0,bB)}accept(t){return t.visitColumnExpressionNot?t.visitColumnExpressionNot(this):t.visitChildren(this)}},qB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SUBSTRING(){return this.getToken(CG.SUBSTRING,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}FROM(){return this.getToken(CG.FROM,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}FOR(){return this.getToken(CG.FOR,0)}accept(t){return t.visitColumnExpressionSubstring?t.visitColumnExpressionSubstring(this):t.visitChildren(this)}},jB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CASE(){return this.getToken(CG.CASE,0)}END(){return this.getToken(CG.END,0)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}WHEN(t){return void 0===t?this.getTokens(CG.WHEN):this.getToken(CG.WHEN,t)}THEN(t){return void 0===t?this.getTokens(CG.THEN):this.getToken(CG.THEN,t)}ELSE(){return this.getToken(CG.ELSE,0)}accept(t){return t.visitColumnExpressionCase?t.visitColumnExpressionCase(this):t.visitChildren(this)}},zB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnIdentifier(){return this.getRuleContext(0,Py)}accept(t){return t.visitColumnExpressionIdentifier?t.visitColumnExpressionIdentifier(this):t.visitChildren(this)}},$B=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}LBRACKET(){return this.getToken(CG.LBRACKET,0)}RBRACKET(){return this.getToken(CG.RBRACKET,0)}accept(t){return t.visitColumnExpressionArrayAccess?t.visitColumnExpressionArrayAccess(this):t.visitChildren(this)}},ty=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(){return this.getRuleContext(0,wy)}LPAREN(t){return void 0===t?this.getTokens(CG.LPAREN):this.getToken(CG.LPAREN,t)}RPAREN(t){return void 0===t?this.getTokens(CG.RPAREN):this.getToken(CG.RPAREN,t)}DISTINCT(){return this.getToken(CG.DISTINCT,0)}columnArgumentList(){return this.getRuleContext(0,Ly)}columnExpressionList(){return this.getRuleContext(0,BB)}accept(t){return t.visitColumnExpressionFunction?t.visitColumnExpressionFunction(this):t.visitChildren(this)}},ey=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ASTERISK(){return this.getToken(CG.ASTERISK,0)}tableIdentifier(){return this.getRuleContext(0,gy)}DOT(){return this.getToken(CG.DOT,0)}accept(t){return t.visitColumnExpressionAsterisk?t.visitColumnExpressionAsterisk(this):t.visitChildren(this)}},sy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}literal(){return this.getRuleContext(0,vy)}accept(t){return t.visitColumnExpressionLiteral?t.visitColumnExpressionLiteral(this):t.visitChildren(this)}},ay=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(){return this.getRuleContext(0,wy)}OVER(){return this.getToken(CG.OVER,0)}LPAREN(t){return void 0===t?this.getTokens(CG.LPAREN):this.getToken(CG.LPAREN,t)}windowExpression(){return this.getRuleContext(0,oB)}RPAREN(t){return void 0===t?this.getTokens(CG.RPAREN):this.getToken(CG.RPAREN,t)}columnExpressionList(){return this.getRuleContext(0,BB)}accept(t){return t.visitColumnExpressionWinFunction?t.visitColumnExpressionWinFunction(this):t.visitChildren(this)}},ry=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}QUESTIONMARK(){return this.getToken(CG.QUESTIONMARK,0)}COLON(){return this.getToken(CG.COLON,0)}accept(t){return t.visitColumnExpressionTernaryOp?t.visitColumnExpressionTernaryOp(this):t.visitChildren(this)}},iy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LBRACKET(){return this.getToken(CG.LBRACKET,0)}RBRACKET(){return this.getToken(CG.RBRACKET,0)}columnExpressionList(){return this.getRuleContext(0,BB)}accept(t){return t.visitColumnExpressionArray?t.visitColumnExpressionArray(this):t.visitChildren(this)}},cy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(){return this.getRuleContext(0,bB)}DOT(){return this.getToken(CG.DOT,0)}DECIMAL_LITERAL(){return this.getToken(CG.DECIMAL_LITERAL,0)}accept(t){return t.visitColumnExpressionTupleAccess?t.visitColumnExpressionTupleAccess(this):t.visitChildren(this)}},ny=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnExpression(){return this.getRuleContext(0,bB)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitColumnExpressionParens?t.visitColumnExpressionParens(this):t.visitChildren(this)}},hy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}OVER(){return this.getToken(CG.OVER,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}accept(t){return t.visitColumnExpressionWinFunctionTarget?t.visitColumnExpressionWinFunctionTarget(this):t.visitChildren(this)}},Ey=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(){return this.getRuleContext(0,bB)}alias(){return this.getRuleContext(0,Yy)}AS(){return this.getToken(CG.AS,0)}identifier(){return this.getRuleContext(0,wy)}accept(t){return t.visitColumnExpressionAlias?t.visitColumnExpressionAlias(this):t.visitChildren(this)}},Ty=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}EQ_DOUBLE(){return this.getToken(CG.EQ_DOUBLE,0)}EQ_SINGLE(){return this.getToken(CG.EQ_SINGLE,0)}NOT_EQ(){return this.getToken(CG.NOT_EQ,0)}LE(){return this.getToken(CG.LE,0)}GE(){return this.getToken(CG.GE,0)}LT(){return this.getToken(CG.LT,0)}GT(){return this.getToken(CG.GT,0)}IN(){return this.getToken(CG.IN,0)}LIKE(){return this.getToken(CG.LIKE,0)}ILIKE(){return this.getToken(CG.ILIKE,0)}GLOBAL(){return this.getToken(CG.GLOBAL,0)}NOT(){return this.getToken(CG.NOT,0)}accept(t){return t.visitColumnExpressionPrecedence3?t.visitColumnExpressionPrecedence3(this):t.visitChildren(this)}},oy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TIMESTAMP(){return this.getToken(CG.TIMESTAMP,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}accept(t){return t.visitColumnExpressionTimestamp?t.visitColumnExpressionTimestamp(this):t.visitChildren(this)}},Ry=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}PLUS(){return this.getToken(CG.PLUS,0)}DASH(){return this.getToken(CG.DASH,0)}CONCAT(){return this.getToken(CG.CONCAT,0)}accept(t){return t.visitColumnExpressionPrecedence2?t.visitColumnExpressionPrecedence2(this):t.visitChildren(this)}},Ay=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}ASTERISK(){return this.getToken(CG.ASTERISK,0)}SLASH(){return this.getToken(CG.SLASH,0)}PERCENT(){return this.getToken(CG.PERCENT,0)}accept(t){return t.visitColumnExpressionPrecedence1?t.visitColumnExpressionPrecedence1(this):t.visitChildren(this)}},Sy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INTERVAL(){return this.getToken(CG.INTERVAL,0)}columnExpression(){return this.getRuleContext(0,bB)}interval(){return this.getRuleContext(0,By)}accept(t){return t.visitColumnExpressionInterval?t.visitColumnExpressionInterval(this):t.visitChildren(this)}},ly=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}selectUnionStatement(){return this.getRuleContext(0,gv)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitColumnExpressionSubquery?t.visitColumnExpressionSubquery(this):t.visitChildren(this)}},Oy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DASH(){return this.getToken(CG.DASH,0)}columnExpression(){return this.getRuleContext(0,bB)}accept(t){return t.visitColumnExpressionNegate?t.visitColumnExpressionNegate(this):t.visitChildren(this)}},Iy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXTRACT(){return this.getToken(CG.EXTRACT,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}interval(){return this.getRuleContext(0,By)}FROM(){return this.getToken(CG.FROM,0)}columnExpression(){return this.getRuleContext(0,bB)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitColumnExpressionExtract?t.visitColumnExpressionExtract(this):t.visitChildren(this)}},uy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CAST(){return this.getToken(CG.CAST,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnExpression(){return this.getRuleContext(0,bB)}AS(){return this.getToken(CG.AS,0)}columnTypeExpression(){return this.getRuleContext(0,xB)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitColumnExpressionCast?t.visitColumnExpressionCast(this):t.visitChildren(this)}},Ny=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}OR(){return this.getToken(CG.OR,0)}accept(t){return t.visitColumnExpressionOr?t.visitColumnExpressionOr(this):t.visitChildren(this)}},Ly=class extends ga{constructor(t,e){super(t,e)}columnArgumentExpression(t){return void 0===t?this.getRuleContexts(Cy):this.getRuleContext(t,Cy)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_columnArgumentList}accept(t){return t.visitColumnArgumentList?t.visitColumnArgumentList(this):t.visitChildren(this)}},Cy=class extends ga{constructor(t,e){super(t,e)}columnLambdaExpression(){return this.getRuleContext(0,_y)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_columnArgumentExpression}accept(t){return t.visitColumnArgumentExpression?t.visitColumnArgumentExpression(this):t.visitChildren(this)}},_y=class extends ga{constructor(t,e){super(t,e)}ARROW(){return this.getToken(CG.ARROW,0)}columnExpression(){return this.getRuleContext(0,bB)}LPAREN(){return this.getToken(CG.LPAREN,0)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_columnLambdaExpression}accept(t){return t.visitColumnLambdaExpression?t.visitColumnLambdaExpression(this):t.visitChildren(this)}},Py=class extends ga{constructor(t,e){super(t,e)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}tableIdentifier(){return this.getRuleContext(0,gy)}DOT(t){return void 0===t?this.getTokens(CG.DOT):this.getToken(CG.DOT,t)}get ruleIndex(){return CG.RULE_columnIdentifier}accept(t){return t.visitColumnIdentifier?t.visitColumnIdentifier(this):t.visitChildren(this)}},My=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_tableExpression}copyFrom(t){super.copyFrom(t)}},dy=class extends My{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableFunctionExpression(){return this.getRuleContext(0,py)}accept(t){return t.visitTableExpressionFunction?t.visitTableExpressionFunction(this):t.visitChildren(this)}},Uy=class extends My{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableIdentifier(){return this.getRuleContext(0,gy)}accept(t){return t.visitTableExpressionIdentifier?t.visitTableExpressionIdentifier(this):t.visitChildren(this)}},my=class extends My{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableExpression(){return this.getRuleContext(0,My)}alias(){return this.getRuleContext(0,Yy)}AS(){return this.getToken(CG.AS,0)}identifier(){return this.getRuleContext(0,wy)}accept(t){return t.visitTableExpressionAlias?t.visitTableExpressionAlias(this):t.visitChildren(this)}},Dy=class extends My{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}selectUnionStatement(){return this.getRuleContext(0,gv)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitTableExpressionSubquery?t.visitTableExpressionSubquery(this):t.visitChildren(this)}},py=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,wy)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}tableArgList(){return this.getRuleContext(0,xy)}get ruleIndex(){return CG.RULE_tableFunctionExpression}accept(t){return t.visitTableFunctionExpression?t.visitTableFunctionExpression(this):t.visitChildren(this)}},gy=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,wy)}databaseIdentifier(){return this.getRuleContext(0,Hy)}DOT(){return this.getToken(CG.DOT,0)}get ruleIndex(){return CG.RULE_tableIdentifier}accept(t){return t.visitTableIdentifier?t.visitTableIdentifier(this):t.visitChildren(this)}},xy=class extends ga{constructor(t,e){super(t,e)}tableArgExpression(t){return void 0===t?this.getRuleContexts(ky):this.getRuleContext(t,ky)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_tableArgList}accept(t){return t.visitTableArgList?t.visitTableArgList(this):t.visitChildren(this)}},ky=class extends ga{constructor(t,e){super(t,e)}columnIdentifier(){return this.getRuleContext(0,Py)}tableFunctionExpression(){return this.getRuleContext(0,py)}literal(){return this.getRuleContext(0,vy)}get ruleIndex(){return CG.RULE_tableArgExpression}accept(t){return t.visitTableArgExpression?t.visitTableArgExpression(this):t.visitChildren(this)}},Hy=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,wy)}get ruleIndex(){return CG.RULE_databaseIdentifier}accept(t){return t.visitDatabaseIdentifier?t.visitDatabaseIdentifier(this):t.visitChildren(this)}},Gy=class extends ga{constructor(t,e){super(t,e)}FLOATING_LITERAL(){return this.getToken(CG.FLOATING_LITERAL,0)}DOT(){return this.getToken(CG.DOT,0)}DECIMAL_LITERAL(t){return void 0===t?this.getTokens(CG.DECIMAL_LITERAL):this.getToken(CG.DECIMAL_LITERAL,t)}OCTAL_LITERAL(){return this.getToken(CG.OCTAL_LITERAL,0)}get ruleIndex(){return CG.RULE_floatingLiteral}accept(t){return t.visitFloatingLiteral?t.visitFloatingLiteral(this):t.visitChildren(this)}},Fy=class extends ga{constructor(t,e){super(t,e)}floatingLiteral(){return this.getRuleContext(0,Gy)}OCTAL_LITERAL(){return this.getToken(CG.OCTAL_LITERAL,0)}DECIMAL_LITERAL(){return this.getToken(CG.DECIMAL_LITERAL,0)}HEXADECIMAL_LITERAL(){return this.getToken(CG.HEXADECIMAL_LITERAL,0)}INF(){return this.getToken(CG.INF,0)}NAN_SQL(){return this.getToken(CG.NAN_SQL,0)}PLUS(){return this.getToken(CG.PLUS,0)}DASH(){return this.getToken(CG.DASH,0)}get ruleIndex(){return CG.RULE_numberLiteral}accept(t){return t.visitNumberLiteral?t.visitNumberLiteral(this):t.visitChildren(this)}},vy=class extends ga{constructor(t,e){super(t,e)}numberLiteral(){return this.getRuleContext(0,Fy)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}NULL_SQL(){return this.getToken(CG.NULL_SQL,0)}get ruleIndex(){return CG.RULE_literal}accept(t){return t.visitLiteral?t.visitLiteral(this):t.visitChildren(this)}},By=class extends ga{constructor(t,e){super(t,e)}SECOND(){return this.getToken(CG.SECOND,0)}MINUTE(){return this.getToken(CG.MINUTE,0)}HOUR(){return this.getToken(CG.HOUR,0)}DAY(){return this.getToken(CG.DAY,0)}WEEK(){return this.getToken(CG.WEEK,0)}MONTH(){return this.getToken(CG.MONTH,0)}QUARTER(){return this.getToken(CG.QUARTER,0)}YEAR(){return this.getToken(CG.YEAR,0)}get ruleIndex(){return CG.RULE_interval}accept(t){return t.visitInterval?t.visitInterval(this):t.visitChildren(this)}},yy=class extends ga{constructor(t,e){super(t,e)}AFTER(){return this.getToken(CG.AFTER,0)}ALIAS(){return this.getToken(CG.ALIAS,0)}ALL(){return this.getToken(CG.ALL,0)}ALTER(){return this.getToken(CG.ALTER,0)}AND(){return this.getToken(CG.AND,0)}ANTI(){return this.getToken(CG.ANTI,0)}ANY(){return this.getToken(CG.ANY,0)}ARRAY(){return this.getToken(CG.ARRAY,0)}AS(){return this.getToken(CG.AS,0)}ASCENDING(){return this.getToken(CG.ASCENDING,0)}ASOF(){return this.getToken(CG.ASOF,0)}AST(){return this.getToken(CG.AST,0)}ASYNC(){return this.getToken(CG.ASYNC,0)}ATTACH(){return this.getToken(CG.ATTACH,0)}BETWEEN(){return this.getToken(CG.BETWEEN,0)}BOTH(){return this.getToken(CG.BOTH,0)}BY(){return this.getToken(CG.BY,0)}CASE(){return this.getToken(CG.CASE,0)}CAST(){return this.getToken(CG.CAST,0)}CHECK(){return this.getToken(CG.CHECK,0)}CLEAR(){return this.getToken(CG.CLEAR,0)}CLUSTER(){return this.getToken(CG.CLUSTER,0)}CODEC(){return this.getToken(CG.CODEC,0)}COLLATE(){return this.getToken(CG.COLLATE,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}COMMENT(){return this.getToken(CG.COMMENT,0)}CONSTRAINT(){return this.getToken(CG.CONSTRAINT,0)}CREATE(){return this.getToken(CG.CREATE,0)}CROSS(){return this.getToken(CG.CROSS,0)}CUBE(){return this.getToken(CG.CUBE,0)}CURRENT(){return this.getToken(CG.CURRENT,0)}DATABASE(){return this.getToken(CG.DATABASE,0)}DATABASES(){return this.getToken(CG.DATABASES,0)}DATE(){return this.getToken(CG.DATE,0)}DEDUPLICATE(){return this.getToken(CG.DEDUPLICATE,0)}DEFAULT(){return this.getToken(CG.DEFAULT,0)}DELAY(){return this.getToken(CG.DELAY,0)}DELETE(){return this.getToken(CG.DELETE,0)}DESCRIBE(){return this.getToken(CG.DESCRIBE,0)}DESC(){return this.getToken(CG.DESC,0)}DESCENDING(){return this.getToken(CG.DESCENDING,0)}DETACH(){return this.getToken(CG.DETACH,0)}DICTIONARIES(){return this.getToken(CG.DICTIONARIES,0)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}DISK(){return this.getToken(CG.DISK,0)}DISTINCT(){return this.getToken(CG.DISTINCT,0)}DISTRIBUTED(){return this.getToken(CG.DISTRIBUTED,0)}DROP(){return this.getToken(CG.DROP,0)}ELSE(){return this.getToken(CG.ELSE,0)}END(){return this.getToken(CG.END,0)}ENGINE(){return this.getToken(CG.ENGINE,0)}EVENTS(){return this.getToken(CG.EVENTS,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}EXPRESSION(){return this.getToken(CG.EXPRESSION,0)}EXTRACT(){return this.getToken(CG.EXTRACT,0)}FETCHES(){return this.getToken(CG.FETCHES,0)}FINAL(){return this.getToken(CG.FINAL,0)}FIRST(){return this.getToken(CG.FIRST,0)}FLUSH(){return this.getToken(CG.FLUSH,0)}FOR(){return this.getToken(CG.FOR,0)}FOLLOWING(){return this.getToken(CG.FOLLOWING,0)}FORMAT(){return this.getToken(CG.FORMAT,0)}FREEZE(){return this.getToken(CG.FREEZE,0)}FROM(){return this.getToken(CG.FROM,0)}FULL(){return this.getToken(CG.FULL,0)}FUNCTION(){return this.getToken(CG.FUNCTION,0)}GLOBAL(){return this.getToken(CG.GLOBAL,0)}GRANULARITY(){return this.getToken(CG.GRANULARITY,0)}GROUP(){return this.getToken(CG.GROUP,0)}HAVING(){return this.getToken(CG.HAVING,0)}HIERARCHICAL(){return this.getToken(CG.HIERARCHICAL,0)}ID(){return this.getToken(CG.ID,0)}IF(){return this.getToken(CG.IF,0)}ILIKE(){return this.getToken(CG.ILIKE,0)}IN(){return this.getToken(CG.IN,0)}INDEX(){return this.getToken(CG.INDEX,0)}INJECTIVE(){return this.getToken(CG.INJECTIVE,0)}INNER(){return this.getToken(CG.INNER,0)}INSERT(){return this.getToken(CG.INSERT,0)}INTERVAL(){return this.getToken(CG.INTERVAL,0)}INTO(){return this.getToken(CG.INTO,0)}IS(){return this.getToken(CG.IS,0)}IS_OBJECT_ID(){return this.getToken(CG.IS_OBJECT_ID,0)}JOIN(){return this.getToken(CG.JOIN,0)}JSON_FALSE(){return this.getToken(CG.JSON_FALSE,0)}JSON_TRUE(){return this.getToken(CG.JSON_TRUE,0)}KEY(){return this.getToken(CG.KEY,0)}KILL(){return this.getToken(CG.KILL,0)}LAST(){return this.getToken(CG.LAST,0)}LAYOUT(){return this.getToken(CG.LAYOUT,0)}LEADING(){return this.getToken(CG.LEADING,0)}LEFT(){return this.getToken(CG.LEFT,0)}LIFETIME(){return this.getToken(CG.LIFETIME,0)}LIKE(){return this.getToken(CG.LIKE,0)}LIMIT(){return this.getToken(CG.LIMIT,0)}LIVE(){return this.getToken(CG.LIVE,0)}LOCAL(){return this.getToken(CG.LOCAL,0)}LOGS(){return this.getToken(CG.LOGS,0)}MATERIALIZE(){return this.getToken(CG.MATERIALIZE,0)}MATERIALIZED(){return this.getToken(CG.MATERIALIZED,0)}MAX(){return this.getToken(CG.MAX,0)}MERGES(){return this.getToken(CG.MERGES,0)}MIN(){return this.getToken(CG.MIN,0)}MODIFY(){return this.getToken(CG.MODIFY,0)}MOVE(){return this.getToken(CG.MOVE,0)}MUTATION(){return this.getToken(CG.MUTATION,0)}NO(){return this.getToken(CG.NO,0)}NOT(){return this.getToken(CG.NOT,0)}NULLS(){return this.getToken(CG.NULLS,0)}OFFSET(){return this.getToken(CG.OFFSET,0)}ON(){return this.getToken(CG.ON,0)}OPTIMIZE(){return this.getToken(CG.OPTIMIZE,0)}OR(){return this.getToken(CG.OR,0)}ORDER(){return this.getToken(CG.ORDER,0)}OUTER(){return this.getToken(CG.OUTER,0)}OUTFILE(){return this.getToken(CG.OUTFILE,0)}OVER(){return this.getToken(CG.OVER,0)}PARTITION(){return this.getToken(CG.PARTITION,0)}POPULATE(){return this.getToken(CG.POPULATE,0)}PRECEDING(){return this.getToken(CG.PRECEDING,0)}PREWHERE(){return this.getToken(CG.PREWHERE,0)}PRIMARY(){return this.getToken(CG.PRIMARY,0)}RANGE(){return this.getToken(CG.RANGE,0)}RELOAD(){return this.getToken(CG.RELOAD,0)}REMOVE(){return this.getToken(CG.REMOVE,0)}RENAME(){return this.getToken(CG.RENAME,0)}REPLACE(){return this.getToken(CG.REPLACE,0)}REPLICA(){return this.getToken(CG.REPLICA,0)}REPLICATED(){return this.getToken(CG.REPLICATED,0)}RIGHT(){return this.getToken(CG.RIGHT,0)}ROLLUP(){return this.getToken(CG.ROLLUP,0)}ROW(){return this.getToken(CG.ROW,0)}ROWS(){return this.getToken(CG.ROWS,0)}SAMPLE(){return this.getToken(CG.SAMPLE,0)}SELECT(){return this.getToken(CG.SELECT,0)}SEMI(){return this.getToken(CG.SEMI,0)}SENDS(){return this.getToken(CG.SENDS,0)}SET(){return this.getToken(CG.SET,0)}SETTINGS(){return this.getToken(CG.SETTINGS,0)}SHOW(){return this.getToken(CG.SHOW,0)}SOURCE(){return this.getToken(CG.SOURCE,0)}START(){return this.getToken(CG.START,0)}STOP(){return this.getToken(CG.STOP,0)}SUBSTRING(){return this.getToken(CG.SUBSTRING,0)}SYNC(){return this.getToken(CG.SYNC,0)}SYNTAX(){return this.getToken(CG.SYNTAX,0)}SYSTEM(){return this.getToken(CG.SYSTEM,0)}TABLE(){return this.getToken(CG.TABLE,0)}TABLES(){return this.getToken(CG.TABLES,0)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}TEST(){return this.getToken(CG.TEST,0)}THEN(){return this.getToken(CG.THEN,0)}TIES(){return this.getToken(CG.TIES,0)}TIMEOUT(){return this.getToken(CG.TIMEOUT,0)}TIMESTAMP(){return this.getToken(CG.TIMESTAMP,0)}TOTALS(){return this.getToken(CG.TOTALS,0)}TRAILING(){return this.getToken(CG.TRAILING,0)}TRIM(){return this.getToken(CG.TRIM,0)}TRUNCATE(){return this.getToken(CG.TRUNCATE,0)}TO(){return this.getToken(CG.TO,0)}TOP(){return this.getToken(CG.TOP,0)}TTL(){return this.getToken(CG.TTL,0)}TYPE(){return this.getToken(CG.TYPE,0)}UNBOUNDED(){return this.getToken(CG.UNBOUNDED,0)}UNION(){return this.getToken(CG.UNION,0)}UPDATE(){return this.getToken(CG.UPDATE,0)}USE(){return this.getToken(CG.USE,0)}USING(){return this.getToken(CG.USING,0)}UUID(){return this.getToken(CG.UUID,0)}VALUES(){return this.getToken(CG.VALUES,0)}VIEW(){return this.getToken(CG.VIEW,0)}VOLUME(){return this.getToken(CG.VOLUME,0)}WATCH(){return this.getToken(CG.WATCH,0)}WHEN(){return this.getToken(CG.WHEN,0)}WHERE(){return this.getToken(CG.WHERE,0)}WINDOW(){return this.getToken(CG.WINDOW,0)}WITH(){return this.getToken(CG.WITH,0)}get ruleIndex(){return CG.RULE_keyword}accept(t){return t.visitKeyword?t.visitKeyword(this):t.visitChildren(this)}},fy=class extends ga{constructor(t,e){super(t,e)}DATE(){return this.getToken(CG.DATE,0)}FIRST(){return this.getToken(CG.FIRST,0)}ID(){return this.getToken(CG.ID,0)}KEY(){return this.getToken(CG.KEY,0)}get ruleIndex(){return CG.RULE_keywordForAlias}accept(t){return t.visitKeywordForAlias?t.visitKeywordForAlias(this):t.visitChildren(this)}},Yy=class extends ga{constructor(t,e){super(t,e)}IDENTIFIER(){return this.getToken(CG.IDENTIFIER,0)}keywordForAlias(){return this.getRuleContext(0,fy)}get ruleIndex(){return CG.RULE_alias}accept(t){return t.visitAlias?t.visitAlias(this):t.visitChildren(this)}},wy=class extends ga{constructor(t,e){super(t,e)}IDENTIFIER(){return this.getToken(CG.IDENTIFIER,0)}interval(){return this.getRuleContext(0,By)}keyword(){return this.getRuleContext(0,yy)}get ruleIndex(){return CG.RULE_identifier}accept(t){return t.visitIdentifier?t.visitIdentifier(this):t.visitChildren(this)}},by=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,wy)}NULL_SQL(){return this.getToken(CG.NULL_SQL,0)}get ruleIndex(){return CG.RULE_identifierOrNull}accept(t){return t.visitIdentifierOrNull?t.visitIdentifierOrNull(this):t.visitChildren(this)}},Wy=class extends ga{constructor(t,e){super(t,e)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}EQ_SINGLE(){return this.getToken(CG.EQ_SINGLE,0)}numberLiteral(){return this.getRuleContext(0,Fy)}get ruleIndex(){return CG.RULE_enumValue}accept(t){return t.visitEnumValue?t.visitEnumValue(this):t.visitChildren(this)}},Vy=class extends Ii{},Xy=["Null","Set","Log","Memory","TinyLog","StripeLog"],Ky=["MergeTree()","Merge()","ReplacingMergeTree()","CollapsingMergeTree()","AggregatingMergeTree()","Buffer()","Dictionary()","Distributed()","File()","GraphiteMergeTree()","Join()","Kafka()","MySQL()","URL()","ReplicatedAggregatingMergeTree()","ReplicatedCollapsingMergeTree()","ReplicatedGraphiteMergeTree()","ReplicatedMergeTree()","ReplicatedReplacingMergeTree()","ReplicatedSummingMergeTree()","ReplicatedVersionedCollapsingMergeTree()","SummingMergeTree()","VersionedCollapsingMergeTree()","PostgreSQL()"],Qy={SPACE:CG.WHITESPACE,FROM:CG.FROM,OPENING_BRACKET:CG.LPAREN,CLOSING_BRACKET:CG.RPAREN,ALTER:CG.ALTER,INSERT:CG.INSERT,UPDATE:CG.UPDATE,JOIN:CG.JOIN,SEMICOLON:CG.SEMICOLON,SELECT:CG.SELECT};var Jy=new Set(function(){let t=[],e=CG.JSON_FALSE,s=CG.WHITESPACE;for(let a=e;a<=s;a++)a!==CG.ASTERISK&&t.push(a);return t.push(CG.EOF),t.push(CG.QUESTIONMARK),t}()),Zy=new Set([CG.RULE_databaseIdentifier,CG.RULE_tableIdentifier,CG.RULE_identifier,CG.RULE_columnIdentifier,CG.RULE_identifierOrNull,CG.RULE_literal]),qy=class extends Vy{constructor(){super(),this.visitTableIdentifier=t=>{try{this.symbolTable.addNewSymbolOfType(qc,this.scope,t.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitTableExpressionAlias=t=>{try{var e,s,a;this.symbolTable.addNewSymbolOfType(qc,this.scope,null===(e=t.tableExpression())||void 0===e?void 0:e.getText(),(null===(s=t.alias())||void 0===s?void 0:s.getText())||(null===(a=t.identifier())||void 0===a?void 0:a.getText())||void 0)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitColumnExpressionAlias=t=>{try{var e,s;let a=(null===(e=t.alias())||void 0===e?void 0:e.getText())||(null===(s=t.identifier())||void 0===s?void 0:s.getText());a&&this.symbolTable.addNewSymbolOfType(zc,this.scope,a)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.symbolTable=new Zc("",{allowDuplicateSymbols:!0}),this.scope=this.symbolTable.addNewSymbolOfType(Bc,void 0)}};function jy(t,e){if(!e||"update"===e)return t.root();switch(e){case"from":return t.fromClause();case"alter":return t.alterStatement();case"insert":return t.insertStatement();case"select":return t.selectStatement()}}var zy={Lexer:LG,Parser:CG,tokenDictionary:Qy,ignoredTokens:Jy,rulesToVisit:Zy,getParseTree:jy,enrichAutocompleteResult:function(t,e,s,a,r,i){let{shouldSuggestColumns:c,shouldSuggestColumnAliases:n,...h}=function(t,e,s){let a,r,i=!1,c=!1,n=!1,h=!1,E=!1;for(let[T,o]of t)if(uC(e,o))switch(T){case CG.RULE_tableIdentifier:if(o.ruleList.includes(CG.RULE_createStatement)||o.ruleList.includes(CG.RULE_columnsExpression))break;a=UC(s,Qy,e,CG.VIEW)?"VIEWS":UC(s,Qy,e,CG.TABLE)?"TABLES":"ALL";break;case CG.RULE_identifier:o.ruleList.includes(CG.RULE_columnExpression)&&(c=!0,i=!0),o.ruleList.includes(CG.RULE_alterTableClause)&&(h=!0);break;case CG.RULE_columnIdentifier:h=!0,(o.ruleList.includes(CG.RULE_orderExpression)||o.ruleList.includes(CG.RULE_groupByClause))&&(E=!0);break;case CG.RULE_identifierOrNull:o.ruleList.includes(CG.RULE_engineClause)&&(r={engines:Xy,functionalEngines:Ky});break;case CG.RULE_databaseIdentifier:n=!0}return{suggestViewsOrTables:a,suggestAggregateFunctions:i,suggestFunctions:c,suggestEngines:r,suggestDatabases:n,shouldSuggestColumns:h,shouldSuggestColumnAliases:E}}(e,a,s),E={...t,...h,suggestTemplates:_C(i,r)};if(c||n){let t=new qy,{tableContextSuggestion:e,suggestColumnAliases:a}=mC(LG,CG,t,Qy,jy,s,r,i);c&&e&&(E.suggestColumns=e),n&&a&&(E.suggestColumnAliases=a)}return E}},$y=(qi=class t extends $r{constructor(e){super(e),this.interpreter=new hi(this,t._ATN,t.decisionsToDFA,new Si)}get grammarFileName(){return"YQL.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}get channelNames(){return t.channelNames}get modeNames(){return t.modeNames}static get _ATN(){return t.__ATN||(t.__ATN=(new fr).deserialize(t._serializedATN)),t.__ATN}get vocabulary(){return t.vocabulary}},qi.QUERY=1,qi.EQUALS=2,qi.EQUALS2=3,qi.NOT_EQUALS=4,qi.NOT_EQUALS2=5,qi.LESS=6,qi.LESS_OR_EQ=7,qi.GREATER=8,qi.GREATER_OR_EQ=9,qi.SHIFT_LEFT=10,qi.ROT_LEFT=11,qi.AMPERSAND=12,qi.PIPE=13,qi.DOUBLE_PIPE=14,qi.STRUCT_OPEN=15,qi.STRUCT_CLOSE=16,qi.PLUS=17,qi.MINUS=18,qi.TILDA=19,qi.ASTERISK=20,qi.SLASH=21,qi.BACKSLASH=22,qi.PERCENT=23,qi.SEMICOLON=24,qi.DOT=25,qi.COMMA=26,qi.LPAREN=27,qi.RPAREN=28,qi.QUESTION=29,qi.COLON=30,qi.AT=31,qi.DOUBLE_AT=32,qi.DOLLAR=33,qi.QUOTE_DOUBLE=34,qi.QUOTE_SINGLE=35,qi.BACKTICK=36,qi.LBRACE_CURLY=37,qi.RBRACE_CURLY=38,qi.CARET=39,qi.NAMESPACE=40,qi.ARROW=41,qi.RBRACE_SQUARE=42,qi.LBRACE_SQUARE=43,qi.ABORT=44,qi.ACTION=45,qi.ADD=46,qi.AFTER=47,qi.ALL=48,qi.ALTER=49,qi.ANALYZE=50,qi.AND=51,qi.ANSI=52,qi.ANY=53,qi.ARRAY=54,qi.AS=55,qi.ASC=56,qi.ASSUME=57,qi.ASYMMETRIC=58,qi.ASYNC=59,qi.ATTACH=60,qi.ATTRIBUTES=61,qi.AUTOINCREMENT=62,qi.AUTOMAP=63,qi.BEFORE=64,qi.BEGIN=65,qi.BERNOULLI=66,qi.BETWEEN=67,qi.BITCAST=68,qi.BY=69,qi.CALLABLE=70,qi.CASCADE=71,qi.CASE=72,qi.CAST=73,qi.CHANGEFEED=74,qi.CHECK=75,qi.COLLATE=76,qi.COLUMN=77,qi.COLUMNS=78,qi.COMMIT=79,qi.COMPACT=80,qi.CONDITIONAL=81,qi.CONFLICT=82,qi.CONNECT=83,qi.CONSTRAINT=84,qi.CONSUMER=85,qi.COVER=86,qi.CREATE=87,qi.CROSS=88,qi.CUBE=89,qi.CURRENT=90,qi.CURRENT_DATE=91,qi.CURRENT_TIME=92,qi.CURRENT_TIMESTAMP=93,qi.DATA=94,qi.DATABASE=95,qi.DECIMAL=96,qi.DECLARE=97,qi.DEFAULT=98,qi.DEFERRABLE=99,qi.DEFERRED=100,qi.DEFINE=101,qi.DELETE=102,qi.DESC=103,qi.DESCRIBE=104,qi.DETACH=105,qi.DICT=106,qi.DIRECTORY=107,qi.DISABLE=108,qi.DISCARD=109,qi.DISTINCT=110,qi.DO=111,qi.DROP=112,qi.EACH=113,qi.ELSE=114,qi.EMPTY=115,qi.EMPTY_ACTION=116,qi.ENCRYPTED=117,qi.END=118,qi.ENUM=119,qi.ERASE=120,qi.ERROR=121,qi.ESCAPE=122,qi.EVALUATE=123,qi.EXCEPT=124,qi.EXCLUDE=125,qi.EXCLUSION=126,qi.EXCLUSIVE=127,qi.EXISTS=128,qi.EXPLAIN=129,qi.EXPORT=130,qi.EXTERNAL=131,qi.FAIL=132,qi.FALSE=133,qi.FAMILY=134,qi.FILTER=135,qi.FIRST=136,qi.FLATTEN=137,qi.FLOW=138,qi.FOLLOWING=139,qi.FOR=140,qi.FOREIGN=141,qi.FROM=142,qi.FULL=143,qi.FUNCTION=144,qi.GLOB=145,qi.GLOBAL=146,qi.GRANT=147,qi.GROUP=148,qi.GROUPING=149,qi.GROUPS=150,qi.HASH=151,qi.HAVING=152,qi.HOP=153,qi.IF=154,qi.IGNORE=155,qi.ILIKE=156,qi.IMMEDIATE=157,qi.IMPORT=158,qi.IN=159,qi.INDEX=160,qi.INDEXED=161,qi.INHERITS=162,qi.INITIAL=163,qi.INITIALLY=164,qi.INNER=165,qi.INSERT=166,qi.INSTEAD=167,qi.INTERSECT=168,qi.INTO=169,qi.IS=170,qi.ISNULL=171,qi.JOIN=172,qi.JSON_EXISTS=173,qi.JSON_QUERY=174,qi.JSON_VALUE=175,qi.KEY=176,qi.LAST=177,qi.LEFT=178,qi.LEGACY=179,qi.LIKE=180,qi.LIMIT=181,qi.LIST=182,qi.LOCAL=183,qi.MANAGE=184,qi.MATCH=185,qi.MATCHES=186,qi.MATCH_RECOGNIZE=187,qi.MEASURES=188,qi.MICROSECONDS=189,qi.MILLISECONDS=190,qi.MODIFY=191,qi.NANOSECONDS=192,qi.NATURAL=193,qi.NEXT=194,qi.NO=195,qi.NOT=196,qi.NOTNULL=197,qi.NULL=198,qi.NULLS=199,qi.OBJECT=200,qi.OF=201,qi.OFFSET=202,qi.OMIT=203,qi.ON=204,qi.ONE=205,qi.ONLY=206,qi.OPTION=207,qi.OPTIONAL=208,qi.OR=209,qi.ORDER=210,qi.OTHERS=211,qi.OUTER=212,qi.OVER=213,qi.PARALLEL=214,qi.PARTITION=215,qi.PASSING=216,qi.PASSWORD=217,qi.PAST=218,qi.PATTERN=219,qi.PER=220,qi.PERMUTE=221,qi.PLAN=222,qi.PRAGMA=223,qi.PRECEDING=224,qi.PRESORT=225,qi.PRIMARY=226,qi.PRIVILEGES=227,qi.PROCESS=228,qi.QUEUE=229,qi.RAISE=230,qi.RANGE=231,qi.REDUCE=232,qi.REFERENCES=233,qi.REGEXP=234,qi.REINDEX=235,qi.RELEASE=236,qi.REMOVE=237,qi.RENAME=238,qi.REPEATABLE=239,qi.REPLACE=240,qi.REPLICATION=241,qi.RESET=242,qi.RESOURCE=243,qi.RESPECT=244,qi.RESTRICT=245,qi.RESULT=246,qi.RETURN=247,qi.RETURNING=248,qi.REVERT=249,qi.REVOKE=250,qi.RIGHT=251,qi.RLIKE=252,qi.ROLLBACK=253,qi.ROLLUP=254,qi.ROW=255,qi.ROWS=256,qi.SAMPLE=257,qi.SAVEPOINT=258,qi.SCHEMA=259,qi.SECONDS=260,qi.SEEK=261,qi.SELECT=262,qi.SEMI=263,qi.SET=264,qi.SETS=265,qi.SHOW=266,qi.SKIP_RULE=267,qi.SOURCE=268,qi.STREAM=269,qi.STRUCT=270,qi.SUBQUERY=271,qi.SUBSET=272,qi.SYMBOLS=273,qi.SYMMETRIC=274,qi.SYNC=275,qi.SYSTEM=276,qi.TABLE=277,qi.TABLES=278,qi.TABLESAMPLE=279,qi.TABLESTORE=280,qi.TAGGED=281,qi.TEMP=282,qi.TEMPORARY=283,qi.THEN=284,qi.TIES=285,qi.TO=286,qi.TOPIC=287,qi.TRANSACTION=288,qi.TRIGGER=289,qi.TRUE=290,qi.TUPLE=291,qi.TYPE=292,qi.UNBOUNDED=293,qi.UNCONDITIONAL=294,qi.UNION=295,qi.UNIQUE=296,qi.UNKNOWN=297,qi.UNMATCHED=298,qi.UPDATE=299,qi.UPSERT=300,qi.USE=301,qi.USER=302,qi.USING=303,qi.VACUUM=304,qi.VALUES=305,qi.VARIANT=306,qi.VIEW=307,qi.VIRTUAL=308,qi.WHEN=309,qi.WHERE=310,qi.WINDOW=311,qi.WITH=312,qi.WITHOUT=313,qi.WRAPPER=314,qi.XOR=315,qi.STRING_VALUE=316,qi.ID_PLAIN=317,qi.ID_QUOTED=318,qi.DIGITS=319,qi.INTEGER_VALUE=320,qi.REAL=321,qi.BLOB=322,qi.WS=323,qi.COMMENT=324,qi.channelNames=["DEFAULT_TOKEN_CHANNEL","HIDDEN"],qi.literalNames=[null,null,"'='","'=='","'!='","'<>'","'<'","'<='","'>'","'>='","'<<'","'|<<'","'&'","'|'","'||'","'<|'","'|>'","'+'","'-'","'~'","'*'","'/'","''","'%'","';'","'.'","','","'('","')'","'?'","':'","'@'","'@@'","'$'","'\"'","'''","'`'","'{'","'}'","'^'","'::'","'->'","']'","'['"],qi.symbolicNames=[null,"QUERY","EQUALS","EQUALS2","NOT_EQUALS","NOT_EQUALS2","LESS","LESS_OR_EQ","GREATER","GREATER_OR_EQ","SHIFT_LEFT","ROT_LEFT","AMPERSAND","PIPE","DOUBLE_PIPE","STRUCT_OPEN","STRUCT_CLOSE","PLUS","MINUS","TILDA","ASTERISK","SLASH","BACKSLASH","PERCENT","SEMICOLON","DOT","COMMA","LPAREN","RPAREN","QUESTION","COLON","AT","DOUBLE_AT","DOLLAR","QUOTE_DOUBLE","QUOTE_SINGLE","BACKTICK","LBRACE_CURLY","RBRACE_CURLY","CARET","NAMESPACE","ARROW","RBRACE_SQUARE","LBRACE_SQUARE","ABORT","ACTION","ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANSI","ANY","ARRAY","AS","ASC","ASSUME","ASYMMETRIC","ASYNC","ATTACH","ATTRIBUTES","AUTOINCREMENT","AUTOMAP","BEFORE","BEGIN","BERNOULLI","BETWEEN","BITCAST","BY","CALLABLE","CASCADE","CASE","CAST","CHANGEFEED","CHECK","COLLATE","COLUMN","COLUMNS","COMMIT","COMPACT","CONDITIONAL","CONFLICT","CONNECT","CONSTRAINT","CONSUMER","COVER","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATA","DATABASE","DECIMAL","DECLARE","DEFAULT","DEFERRABLE","DEFERRED","DEFINE","DELETE","DESC","DESCRIBE","DETACH","DICT","DIRECTORY","DISABLE","DISCARD","DISTINCT","DO","DROP","EACH","ELSE","EMPTY","EMPTY_ACTION","ENCRYPTED","END","ENUM","ERASE","ERROR","ESCAPE","EVALUATE","EXCEPT","EXCLUDE","EXCLUSION","EXCLUSIVE","EXISTS","EXPLAIN","EXPORT","EXTERNAL","FAIL","FALSE","FAMILY","FILTER","FIRST","FLATTEN","FLOW","FOLLOWING","FOR","FOREIGN","FROM","FULL","FUNCTION","GLOB","GLOBAL","GRANT","GROUP","GROUPING","GROUPS","HASH","HAVING","HOP","IF","IGNORE","ILIKE","IMMEDIATE","IMPORT","IN","INDEX","INDEXED","INHERITS","INITIAL","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","JSON_EXISTS","JSON_QUERY","JSON_VALUE","KEY","LAST","LEFT","LEGACY","LIKE","LIMIT","LIST","LOCAL","MANAGE","MATCH","MATCHES","MATCH_RECOGNIZE","MEASURES","MICROSECONDS","MILLISECONDS","MODIFY","NANOSECONDS","NATURAL","NEXT","NO","NOT","NOTNULL","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OPTIONAL","OR","ORDER","OTHERS","OUTER","OVER","PARALLEL","PARTITION","PASSING","PASSWORD","PAST","PATTERN","PER","PERMUTE","PLAN","PRAGMA","PRECEDING","PRESORT","PRIMARY","PRIVILEGES","PROCESS","QUEUE","RAISE","RANGE","REDUCE","REFERENCES","REGEXP","REINDEX","RELEASE","REMOVE","RENAME","REPEATABLE","REPLACE","REPLICATION","RESET","RESOURCE","RESPECT","RESTRICT","RESULT","RETURN","RETURNING","REVERT","REVOKE","RIGHT","RLIKE","ROLLBACK","ROLLUP","ROW","ROWS","SAMPLE","SAVEPOINT","SCHEMA","SECONDS","SEEK","SELECT","SEMI","SET","SETS","SHOW","SKIP_RULE","SOURCE","STREAM","STRUCT","SUBQUERY","SUBSET","SYMBOLS","SYMMETRIC","SYNC","SYSTEM","TABLE","TABLES","TABLESAMPLE","TABLESTORE","TAGGED","TEMP","TEMPORARY","THEN","TIES","TO","TOPIC","TRANSACTION","TRIGGER","TRUE","TUPLE","TYPE","UNBOUNDED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UPDATE","UPSERT","USE","USER","USING","VACUUM","VALUES","VARIANT","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT","WRAPPER","XOR","STRING_VALUE","ID_PLAIN","ID_QUOTED","DIGITS","INTEGER_VALUE","REAL","BLOB","WS","COMMENT"],qi.modeNames=["DEFAULT_MODE"],qi.ruleNames=["QUERY","EQUALS","EQUALS2","NOT_EQUALS","NOT_EQUALS2","LESS","LESS_OR_EQ","GREATER","GREATER_OR_EQ","SHIFT_LEFT","ROT_LEFT","AMPERSAND","PIPE","DOUBLE_PIPE","STRUCT_OPEN","STRUCT_CLOSE","PLUS","MINUS","TILDA","ASTERISK","SLASH","BACKSLASH","PERCENT","SEMICOLON","DOT","COMMA","LPAREN","RPAREN","QUESTION","COLON","AT","DOUBLE_AT","DOLLAR","QUOTE_DOUBLE","QUOTE_SINGLE","BACKTICK","LBRACE_CURLY","RBRACE_CURLY","CARET","NAMESPACE","ARROW","RBRACE_SQUARE","LBRACE_SQUARE","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","ABORT","ACTION","ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANSI","ANY","ARRAY","AS","ASC","ASSUME","ASYMMETRIC","ASYNC","ATTACH","ATTRIBUTES","AUTOINCREMENT","AUTOMAP","BEFORE","BEGIN","BERNOULLI","BETWEEN","BITCAST","BY","CALLABLE","CASCADE","CASE","CAST","CHANGEFEED","CHECK","COLLATE","COLUMN","COLUMNS","COMMIT","COMPACT","CONDITIONAL","CONFLICT","CONNECT","CONSTRAINT","CONSUMER","COVER","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATA","DATABASE","DECIMAL","DECLARE","DEFAULT","DEFERRABLE","DEFERRED","DEFINE","DELETE","DESC","DESCRIBE","DETACH","DICT","DIRECTORY","DISABLE","DISCARD","DISTINCT","DO","DROP","EACH","ELSE","EMPTY","EMPTY_ACTION","ENCRYPTED","END","ENUM","ERASE","ERROR","ESCAPE","EVALUATE","EXCEPT","EXCLUDE","EXCLUSION","EXCLUSIVE","EXISTS","EXPLAIN","EXPORT","EXTERNAL","FAIL","FALSE","FAMILY","FILTER","FIRST","FLATTEN","FLOW","FOLLOWING","FOR","FOREIGN","FROM","FULL","FUNCTION","GLOB","GLOBAL","GRANT","GROUP","GROUPING","GROUPS","HASH","HAVING","HOP","IF","IGNORE","ILIKE","IMMEDIATE","IMPORT","IN","INDEX","INDEXED","INHERITS","INITIAL","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","JSON_EXISTS","JSON_QUERY","JSON_VALUE","KEY","LAST","LEFT","LEGACY","LIKE","LIMIT","LIST","LOCAL","MANAGE","MATCH","MATCHES","MATCH_RECOGNIZE","MEASURES","MICROSECONDS","MILLISECONDS","MODIFY","NANOSECONDS","NATURAL","NEXT","NO","NOT","NOTNULL","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OPTIONAL","OR","ORDER","OTHERS","OUTER","OVER","PARALLEL","PARTITION","PASSING","PASSWORD","PAST","PATTERN","PER","PERMUTE","PLAN","PRAGMA","PRECEDING","PRESORT","PRIMARY","PRIVILEGES","PROCESS","QUEUE","RAISE","RANGE","REDUCE","REFERENCES","REGEXP","REINDEX","RELEASE","REMOVE","RENAME","REPEATABLE","REPLACE","REPLICATION","RESET","RESOURCE","RESPECT","RESTRICT","RESULT","RETURN","RETURNING","REVERT","REVOKE","RIGHT","RLIKE","ROLLBACK","ROLLUP","ROW","ROWS","SAMPLE","SAVEPOINT","SCHEMA","SECONDS","SEEK","SELECT","SEMI","SET","SETS","SHOW","SKIP_RULE","SOURCE","STREAM","STRUCT","SUBQUERY","SUBSET","SYMBOLS","SYMMETRIC","SYNC","SYSTEM","TABLE","TABLES","TABLESAMPLE","TABLESTORE","TAGGED","TEMP","TEMPORARY","THEN","TIES","TO","TOPIC","TRANSACTION","TRIGGER","TRUE","TUPLE","TYPE","UNBOUNDED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UPDATE","UPSERT","USE","USER","USING","VACUUM","VALUES","VARIANT","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT","WRAPPER","XOR","STRING_CORE_SINGLE","STRING_CORE_DOUBLE","STRING_SINGLE","STRING_DOUBLE","STRING_MULTILINE","STRING_VALUE","ID_PLAIN","ID_QUOTED_CORE","ID_QUOTED","DIGIT","HEXDIGIT","HEXDIGITS","OCTDIGITS","BINDIGITS","DECDIGITS","DIGITS","INTEGER_VALUE","FLOAT_EXP","REAL","BLOB","MULTILINE_COMMENT","LINE_COMMENT","WS","COMMENT"],qi._serializedATN=[4,0,324,3058,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,2,265,7,265,2,266,7,266,2,267,7,267,2,268,7,268,2,269,7,269,2,270,7,270,2,271,7,271,2,272,7,272,2,273,7,273,2,274,7,274,2,275,7,275,2,276,7,276,2,277,7,277,2,278,7,278,2,279,7,279,2,280,7,280,2,281,7,281,2,282,7,282,2,283,7,283,2,284,7,284,2,285,7,285,2,286,7,286,2,287,7,287,2,288,7,288,2,289,7,289,2,290,7,290,2,291,7,291,2,292,7,292,2,293,7,293,2,294,7,294,2,295,7,295,2,296,7,296,2,297,7,297,2,298,7,298,2,299,7,299,2,300,7,300,2,301,7,301,2,302,7,302,2,303,7,303,2,304,7,304,2,305,7,305,2,306,7,306,2,307,7,307,2,308,7,308,2,309,7,309,2,310,7,310,2,311,7,311,2,312,7,312,2,313,7,313,2,314,7,314,2,315,7,315,2,316,7,316,2,317,7,317,2,318,7,318,2,319,7,319,2,320,7,320,2,321,7,321,2,322,7,322,2,323,7,323,2,324,7,324,2,325,7,325,2,326,7,326,2,327,7,327,2,328,7,328,2,329,7,329,2,330,7,330,2,331,7,331,2,332,7,332,2,333,7,333,2,334,7,334,2,335,7,335,2,336,7,336,2,337,7,337,2,338,7,338,2,339,7,339,2,340,7,340,2,341,7,341,2,342,7,342,2,343,7,343,2,344,7,344,2,345,7,345,2,346,7,346,2,347,7,347,2,348,7,348,2,349,7,349,2,350,7,350,2,351,7,351,2,352,7,352,2,353,7,353,2,354,7,354,2,355,7,355,2,356,7,356,2,357,7,357,2,358,7,358,2,359,7,359,2,360,7,360,2,361,7,361,2,362,7,362,2,363,7,363,2,364,7,364,1,0,1,0,1,0,1,0,1,0,1,0,1,1,1,1,1,2,1,2,1,2,1,3,1,3,1,3,1,4,1,4,1,4,1,5,1,5,1,6,1,6,1,6,1,7,1,7,1,8,1,8,1,8,1,9,1,9,1,9,1,10,1,10,1,10,1,10,1,11,1,11,1,12,1,12,1,13,1,13,1,13,1,14,1,14,1,14,1,15,1,15,1,15,1,16,1,16,1,17,1,17,1,18,1,18,1,19,1,19,1,20,1,20,1,21,1,21,1,22,1,22,1,23,1,23,1,24,1,24,1,25,1,25,1,26,1,26,1,27,1,27,1,28,1,28,1,29,1,29,1,30,1,30,1,31,1,31,1,31,1,32,1,32,1,33,1,33,1,34,1,34,1,35,1,35,1,36,1,36,1,37,1,37,1,38,1,38,1,39,1,39,1,39,1,40,1,40,1,40,1,41,1,41,1,42,1,42,1,43,1,43,1,44,1,44,1,45,1,45,1,46,1,46,1,47,1,47,1,48,1,48,1,49,1,49,1,50,1,50,1,51,1,51,1,52,1,52,1,53,1,53,1,54,1,54,1,55,1,55,1,56,1,56,1,57,1,57,1,58,1,58,1,59,1,59,1,60,1,60,1,61,1,61,1,62,1,62,1,63,1,63,1,64,1,64,1,65,1,65,1,66,1,66,1,67,1,67,1,68,1,68,1,69,1,69,1,69,1,69,1,69,1,69,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,71,1,72,1,72,1,72,1,72,1,72,1,72,1,73,1,73,1,73,1,73,1,74,1,74,1,74,1,74,1,74,1,74,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,76,1,76,1,76,1,76,1,77,1,77,1,77,1,77,1,77,1,78,1,78,1,78,1,78,1,79,1,79,1,79,1,79,1,79,1,79,1,80,1,80,1,80,1,81,1,81,1,81,1,81,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,84,1,84,1,84,1,84,1,84,1,84,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,86,1,86,1,86,1,86,1,86,1,86,1,86,1,86,1,86,1,86,1,86,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,89,1,89,1,89,1,89,1,89,1,89,1,89,1,90,1,90,1,90,1,90,1,90,1,90,1,91,1,91,1,91,1,91,1,91,1,91,1,91,1,91,1,91,1,91,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,93,1,93,1,93,1,93,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,97,1,97,1,97,1,97,1,97,1,98,1,98,1,98,1,98,1,98,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,100,1,100,1,100,1,100,1,100,1,100,1,101,1,101,1,101,1,101,1,101,1,101,1,101,1,101,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,108,1,108,1,108,1,108,1,108,1,108,1,108,1,108,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,111,1,111,1,111,1,111,1,111,1,111,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,113,1,113,1,113,1,113,1,113,1,113,1,114,1,114,1,114,1,114,1,114,1,115,1,115,1,115,1,115,1,115,1,115,1,115,1,115,1,116,1,116,1,116,1,116,1,116,1,116,1,116,1,116,1,116,1,116,1,116,1,116,1,116,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,118,1,118,1,119,1,119,1,119,1,119,1,119,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,122,1,122,1,122,1,122,1,122,1,122,1,122,1,122,1,123,1,123,1,123,1,123,1,123,1,123,1,123,1,123,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,126,1,126,1,126,1,126,1,126,1,126,1,126,1,127,1,127,1,127,1,127,1,127,1,127,1,127,1,128,1,128,1,128,1,128,1,128,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,131,1,131,1,131,1,131,1,131,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,134,1,134,1,134,1,134,1,134,1,134,1,134,1,134,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,136,1,136,1,136,1,137,1,137,1,137,1,137,1,137,1,138,1,138,1,138,1,138,1,138,1,139,1,139,1,139,1,139,1,139,1,140,1,140,1,140,1,140,1,140,1,140,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,143,1,143,1,143,1,143,1,144,1,144,1,144,1,144,1,144,1,145,1,145,1,145,1,145,1,145,1,145,1,146,1,146,1,146,1,146,1,146,1,146,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,148,1,148,1,148,1,148,1,148,1,148,1,148,1,148,1,148,1,149,1,149,1,149,1,149,1,149,1,149,1,149,1,150,1,150,1,150,1,150,1,150,1,150,1,150,1,150,1,151,1,151,1,151,1,151,1,151,1,151,1,151,1,151,1,151,1,151,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,154,1,154,1,154,1,154,1,154,1,154,1,154,1,154,1,155,1,155,1,155,1,155,1,155,1,155,1,155,1,156,1,156,1,156,1,156,1,156,1,156,1,156,1,156,1,156,1,157,1,157,1,157,1,157,1,157,1,158,1,158,1,158,1,158,1,158,1,158,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,161,1,161,1,161,1,161,1,161,1,161,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,163,1,163,1,163,1,163,1,163,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,165,1,165,1,165,1,165,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,167,1,167,1,167,1,167,1,167,1,168,1,168,1,168,1,168,1,168,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,170,1,170,1,170,1,170,1,170,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,172,1,172,1,172,1,172,1,172,1,172,1,173,1,173,1,173,1,173,1,173,1,173,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,176,1,176,1,176,1,176,1,176,1,177,1,177,1,177,1,177,1,177,1,177,1,177,1,178,1,178,1,178,1,178,1,179,1,179,1,179,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,181,1,181,1,181,1,181,1,181,1,181,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,184,1,184,1,184,1,185,1,185,1,185,1,185,1,185,1,185,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,189,1,189,1,189,1,189,1,189,1,189,1,189,1,189,1,189,1,189,1,190,1,190,1,190,1,190,1,190,1,190,1,191,1,191,1,191,1,191,1,191,1,191,1,191,1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,194,1,194,1,194,1,194,1,194,1,195,1,195,1,195,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,197,1,197,1,197,1,197,1,197,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,201,1,201,1,201,1,201,1,202,1,202,1,202,1,202,1,202,1,203,1,203,1,203,1,203,1,203,1,204,1,204,1,204,1,204,1,204,1,204,1,204,1,205,1,205,1,205,1,205,1,205,1,206,1,206,1,206,1,206,1,206,1,206,1,207,1,207,1,207,1,207,1,207,1,208,1,208,1,208,1,208,1,208,1,208,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,210,1,210,1,210,1,210,1,210,1,210,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,216,1,216,1,216,1,216,1,216,1,216,1,216,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,219,1,219,1,219,1,219,1,219,1,220,1,220,1,220,1,221,1,221,1,221,1,221,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,223,1,223,1,223,1,223,1,223,1,224,1,224,1,224,1,224,1,224,1,224,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,226,1,226,1,226,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,228,1,228,1,228,1,228,1,228,1,229,1,229,1,229,1,230,1,230,1,230,1,230,1,231,1,231,1,231,1,231,1,231,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,234,1,234,1,234,1,235,1,235,1,235,1,235,1,235,1,235,1,236,1,236,1,236,1,236,1,236,1,236,1,236,1,237,1,237,1,237,1,237,1,237,1,237,1,238,1,238,1,238,1,238,1,238,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,243,1,243,1,243,1,243,1,243,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,245,1,245,1,245,1,245,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,247,1,247,1,247,1,247,1,247,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,254,1,254,1,254,1,254,1,254,1,254,1,255,1,255,1,255,1,255,1,255,1,255,1,256,1,256,1,256,1,256,1,256,1,256,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,267,1,267,1,267,1,267,1,267,1,267,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,276,1,276,1,276,1,276,1,276,1,276,1,277,1,277,1,277,1,277,1,277,1,277,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,280,1,280,1,280,1,280,1,281,1,281,1,281,1,281,1,281,1,282,1,282,1,282,1,282,1,282,1,282,1,282,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,284,1,284,1,284,1,284,1,284,1,284,1,284,1,285,1,285,1,285,1,285,1,285,1,285,1,285,1,285,1,286,1,286,1,286,1,286,1,286,1,287,1,287,1,287,1,287,1,287,1,287,1,287,1,288,1,288,1,288,1,288,1,288,1,289,1,289,1,289,1,289,1,290,1,290,1,290,1,290,1,290,1,291,1,291,1,291,1,291,1,291,1,292,1,292,1,292,1,292,1,292,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,294,1,294,1,294,1,294,1,294,1,294,1,294,1,295,1,295,1,295,1,295,1,295,1,295,1,295,1,296,1,296,1,296,1,296,1,296,1,296,1,296,1,296,1,296,1,297,1,297,1,297,1,297,1,297,1,297,1,297,1,298,1,298,1,298,1,298,1,298,1,298,1,298,1,298,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,300,1,300,1,300,1,300,1,300,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,302,1,302,1,302,1,302,1,302,1,302,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,307,1,307,1,307,1,307,1,307,1,308,1,308,1,308,1,308,1,308,1,308,1,308,1,308,1,308,1,308,1,309,1,309,1,309,1,309,1,309,1,310,1,310,1,310,1,310,1,310,1,311,1,311,1,311,1,312,1,312,1,312,1,312,1,312,1,312,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,315,1,315,1,315,1,315,1,315,1,316,1,316,1,316,1,316,1,316,1,316,1,317,1,317,1,317,1,317,1,317,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,320,1,320,1,320,1,320,1,320,1,320,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,324,1,324,1,324,1,324,1,324,1,324,1,324,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,326,1,326,1,326,1,326,1,327,1,327,1,327,1,327,1,327,1,328,1,328,1,328,1,328,1,328,1,328,1,329,1,329,1,329,1,329,1,329,1,329,1,329,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,332,1,332,1,332,1,332,1,332,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,334,1,334,1,334,1,334,1,334,1,335,1,335,1,335,1,335,1,335,1,335,1,336,1,336,1,336,1,336,1,336,1,336,1,336,1,337,1,337,1,337,1,337,1,337,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,340,1,340,1,340,1,340,1,341,1,341,1,341,1,341,3,341,2847,8,341,1,342,1,342,1,342,1,342,3,342,2853,8,342,1,343,1,343,5,343,2857,8,343,10,343,12,343,2860,9,343,1,343,1,343,1,344,1,344,5,344,2866,8,344,10,344,12,344,2869,9,344,1,344,1,344,1,345,1,345,5,345,2875,8,345,10,345,12,345,2878,9,345,1,345,1,345,4,345,2882,8,345,11,345,12,345,2883,1,345,3,345,2887,8,345,1,346,1,346,1,346,3,346,2892,8,346,1,346,1,346,1,346,1,346,1,346,1,346,1,346,1,346,3,346,2902,8,346,3,346,2904,8,346,1,347,1,347,1,347,5,347,2909,8,347,10,347,12,347,2912,9,347,1,348,1,348,1,348,1,348,1,348,3,348,2919,8,348,1,349,1,349,5,349,2923,8,349,10,349,12,349,2926,9,349,1,349,1,349,1,350,1,350,1,351,1,351,1,352,1,352,1,352,4,352,2937,8,352,11,352,12,352,2938,1,353,1,353,1,353,4,353,2944,8,353,11,353,12,353,2945,1,354,1,354,1,354,4,354,2951,8,354,11,354,12,354,2952,1,355,4,355,2956,8,355,11,355,12,355,2957,1,356,1,356,1,356,1,356,3,356,2964,8,356,1,357,1,357,1,357,3,357,2969,8,357,1,357,1,357,1,357,1,357,1,357,1,357,3,357,2977,8,357,1,358,1,358,1,358,3,358,2982,8,358,1,358,1,358,1,359,1,359,1,359,5,359,2989,8,359,10,359,12,359,2992,9,359,1,359,3,359,2995,8,359,1,359,1,359,1,359,3,359,3e3,8,359,1,359,1,359,1,359,1,359,1,359,1,359,3,359,3008,8,359,3,359,3010,8,359,1,360,1,360,1,360,4,360,3015,8,360,11,360,12,360,3016,1,360,1,360,1,361,1,361,1,361,1,361,5,361,3025,8,361,10,361,12,361,3028,9,361,1,361,1,361,1,361,1,362,1,362,1,362,1,362,5,362,3037,8,362,10,362,12,362,3040,9,362,1,362,1,362,3,362,3044,8,362,1,362,3,362,3047,8,362,1,363,1,363,1,363,1,363,1,364,1,364,3,364,3055,8,364,1,364,1,364,2,2876,3026,0,365,1,1,3,2,5,3,7,4,9,5,11,6,13,7,15,8,17,9,19,10,21,11,23,12,25,13,27,14,29,15,31,16,33,17,35,18,37,19,39,20,41,21,43,22,45,23,47,24,49,25,51,26,53,27,55,28,57,29,59,30,61,31,63,32,65,33,67,34,69,35,71,36,73,37,75,38,77,39,79,40,81,41,83,42,85,43,87,0,89,0,91,0,93,0,95,0,97,0,99,0,101,0,103,0,105,0,107,0,109,0,111,0,113,0,115,0,117,0,119,0,121,0,123,0,125,0,127,0,129,0,131,0,133,0,135,0,137,0,139,44,141,45,143,46,145,47,147,48,149,49,151,50,153,51,155,52,157,53,159,54,161,55,163,56,165,57,167,58,169,59,171,60,173,61,175,62,177,63,179,64,181,65,183,66,185,67,187,68,189,69,191,70,193,71,195,72,197,73,199,74,201,75,203,76,205,77,207,78,209,79,211,80,213,81,215,82,217,83,219,84,221,85,223,86,225,87,227,88,229,89,231,90,233,91,235,92,237,93,239,94,241,95,243,96,245,97,247,98,249,99,251,100,253,101,255,102,257,103,259,104,261,105,263,106,265,107,267,108,269,109,271,110,273,111,275,112,277,113,279,114,281,115,283,116,285,117,287,118,289,119,291,120,293,121,295,122,297,123,299,124,301,125,303,126,305,127,307,128,309,129,311,130,313,131,315,132,317,133,319,134,321,135,323,136,325,137,327,138,329,139,331,140,333,141,335,142,337,143,339,144,341,145,343,146,345,147,347,148,349,149,351,150,353,151,355,152,357,153,359,154,361,155,363,156,365,157,367,158,369,159,371,160,373,161,375,162,377,163,379,164,381,165,383,166,385,167,387,168,389,169,391,170,393,171,395,172,397,173,399,174,401,175,403,176,405,177,407,178,409,179,411,180,413,181,415,182,417,183,419,184,421,185,423,186,425,187,427,188,429,189,431,190,433,191,435,192,437,193,439,194,441,195,443,196,445,197,447,198,449,199,451,200,453,201,455,202,457,203,459,204,461,205,463,206,465,207,467,208,469,209,471,210,473,211,475,212,477,213,479,214,481,215,483,216,485,217,487,218,489,219,491,220,493,221,495,222,497,223,499,224,501,225,503,226,505,227,507,228,509,229,511,230,513,231,515,232,517,233,519,234,521,235,523,236,525,237,527,238,529,239,531,240,533,241,535,242,537,243,539,244,541,245,543,246,545,247,547,248,549,249,551,250,553,251,555,252,557,253,559,254,561,255,563,256,565,257,567,258,569,259,571,260,573,261,575,262,577,263,579,264,581,265,583,266,585,267,587,268,589,269,591,270,593,271,595,272,597,273,599,274,601,275,603,276,605,277,607,278,609,279,611,280,613,281,615,282,617,283,619,284,621,285,623,286,625,287,627,288,629,289,631,290,633,291,635,292,637,293,639,294,641,295,643,296,645,297,647,298,649,299,651,300,653,301,655,302,657,303,659,304,661,305,663,306,665,307,667,308,669,309,671,310,673,311,675,312,677,313,679,314,681,315,683,0,685,0,687,0,689,0,691,0,693,316,695,317,697,0,699,318,701,0,703,0,705,0,707,0,709,0,711,0,713,319,715,320,717,0,719,321,721,322,723,0,725,0,727,323,729,324,1,0,35,2,0,65,65,97,97,2,0,66,66,98,98,2,0,67,67,99,99,2,0,68,68,100,100,2,0,69,69,101,101,2,0,70,70,102,102,2,0,71,71,103,103,2,0,72,72,104,104,2,0,73,73,105,105,2,0,74,74,106,106,2,0,75,75,107,107,2,0,76,76,108,108,2,0,77,77,109,109,2,0,78,78,110,110,2,0,79,79,111,111,2,0,80,80,112,112,2,0,81,81,113,113,2,0,82,82,114,114,2,0,83,83,115,115,2,0,84,84,116,116,2,0,85,85,117,117,2,0,86,86,118,118,2,0,87,87,119,119,2,0,88,88,120,120,2,0,89,89,121,121,2,0,90,90,122,122,2,0,39,39,92,92,2,0,34,34,92,92,3,0,65,90,95,95,97,122,1,0,96,96,3,0,48,57,65,70,97,102,2,0,52,52,56,56,2,0,10,10,13,13,1,1,10,10,3,0,9,10,12,13,32,32,3068,0,1,1,0,0,0,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,23,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,0,0,0,0,65,1,0,0,0,0,67,1,0,0,0,0,69,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,1,0,0,0,0,139,1,0,0,0,0,141,1,0,0,0,0,143,1,0,0,0,0,145,1,0,0,0,0,147,1,0,0,0,0,149,1,0,0,0,0,151,1,0,0,0,0,153,1,0,0,0,0,155,1,0,0,0,0,157,1,0,0,0,0,159,1,0,0,0,0,161,1,0,0,0,0,163,1,0,0,0,0,165,1,0,0,0,0,167,1,0,0,0,0,169,1,0,0,0,0,171,1,0,0,0,0,173,1,0,0,0,0,175,1,0,0,0,0,177,1,0,0,0,0,179,1,0,0,0,0,181,1,0,0,0,0,183,1,0,0,0,0,185,1,0,0,0,0,187,1,0,0,0,0,189,1,0,0,0,0,191,1,0,0,0,0,193,1,0,0,0,0,195,1,0,0,0,0,197,1,0,0,0,0,199,1,0,0,0,0,201,1,0,0,0,0,203,1,0,0,0,0,205,1,0,0,0,0,207,1,0,0,0,0,209,1,0,0,0,0,211,1,0,0,0,0,213,1,0,0,0,0,215,1,0,0,0,0,217,1,0,0,0,0,219,1,0,0,0,0,221,1,0,0,0,0,223,1,0,0,0,0,225,1,0,0,0,0,227,1,0,0,0,0,229,1,0,0,0,0,231,1,0,0,0,0,233,1,0,0,0,0,235,1,0,0,0,0,237,1,0,0,0,0,239,1,0,0,0,0,241,1,0,0,0,0,243,1,0,0,0,0,245,1,0,0,0,0,247,1,0,0,0,0,249,1,0,0,0,0,251,1,0,0,0,0,253,1,0,0,0,0,255,1,0,0,0,0,257,1,0,0,0,0,259,1,0,0,0,0,261,1,0,0,0,0,263,1,0,0,0,0,265,1,0,0,0,0,267,1,0,0,0,0,269,1,0,0,0,0,271,1,0,0,0,0,273,1,0,0,0,0,275,1,0,0,0,0,277,1,0,0,0,0,279,1,0,0,0,0,281,1,0,0,0,0,283,1,0,0,0,0,285,1,0,0,0,0,287,1,0,0,0,0,289,1,0,0,0,0,291,1,0,0,0,0,293,1,0,0,0,0,295,1,0,0,0,0,297,1,0,0,0,0,299,1,0,0,0,0,301,1,0,0,0,0,303,1,0,0,0,0,305,1,0,0,0,0,307,1,0,0,0,0,309,1,0,0,0,0,311,1,0,0,0,0,313,1,0,0,0,0,315,1,0,0,0,0,317,1,0,0,0,0,319,1,0,0,0,0,321,1,0,0,0,0,323,1,0,0,0,0,325,1,0,0,0,0,327,1,0,0,0,0,329,1,0,0,0,0,331,1,0,0,0,0,333,1,0,0,0,0,335,1,0,0,0,0,337,1,0,0,0,0,339,1,0,0,0,0,341,1,0,0,0,0,343,1,0,0,0,0,345,1,0,0,0,0,347,1,0,0,0,0,349,1,0,0,0,0,351,1,0,0,0,0,353,1,0,0,0,0,355,1,0,0,0,0,357,1,0,0,0,0,359,1,0,0,0,0,361,1,0,0,0,0,363,1,0,0,0,0,365,1,0,0,0,0,367,1,0,0,0,0,369,1,0,0,0,0,371,1,0,0,0,0,373,1,0,0,0,0,375,1,0,0,0,0,377,1,0,0,0,0,379,1,0,0,0,0,381,1,0,0,0,0,383,1,0,0,0,0,385,1,0,0,0,0,387,1,0,0,0,0,389,1,0,0,0,0,391,1,0,0,0,0,393,1,0,0,0,0,395,1,0,0,0,0,397,1,0,0,0,0,399,1,0,0,0,0,401,1,0,0,0,0,403,1,0,0,0,0,405,1,0,0,0,0,407,1,0,0,0,0,409,1,0,0,0,0,411,1,0,0,0,0,413,1,0,0,0,0,415,1,0,0,0,0,417,1,0,0,0,0,419,1,0,0,0,0,421,1,0,0,0,0,423,1,0,0,0,0,425,1,0,0,0,0,427,1,0,0,0,0,429,1,0,0,0,0,431,1,0,0,0,0,433,1,0,0,0,0,435,1,0,0,0,0,437,1,0,0,0,0,439,1,0,0,0,0,441,1,0,0,0,0,443,1,0,0,0,0,445,1,0,0,0,0,447,1,0,0,0,0,449,1,0,0,0,0,451,1,0,0,0,0,453,1,0,0,0,0,455,1,0,0,0,0,457,1,0,0,0,0,459,1,0,0,0,0,461,1,0,0,0,0,463,1,0,0,0,0,465,1,0,0,0,0,467,1,0,0,0,0,469,1,0,0,0,0,471,1,0,0,0,0,473,1,0,0,0,0,475,1,0,0,0,0,477,1,0,0,0,0,479,1,0,0,0,0,481,1,0,0,0,0,483,1,0,0,0,0,485,1,0,0,0,0,487,1,0,0,0,0,489,1,0,0,0,0,491,1,0,0,0,0,493,1,0,0,0,0,495,1,0,0,0,0,497,1,0,0,0,0,499,1,0,0,0,0,501,1,0,0,0,0,503,1,0,0,0,0,505,1,0,0,0,0,507,1,0,0,0,0,509,1,0,0,0,0,511,1,0,0,0,0,513,1,0,0,0,0,515,1,0,0,0,0,517,1,0,0,0,0,519,1,0,0,0,0,521,1,0,0,0,0,523,1,0,0,0,0,525,1,0,0,0,0,527,1,0,0,0,0,529,1,0,0,0,0,531,1,0,0,0,0,533,1,0,0,0,0,535,1,0,0,0,0,537,1,0,0,0,0,539,1,0,0,0,0,541,1,0,0,0,0,543,1,0,0,0,0,545,1,0,0,0,0,547,1,0,0,0,0,549,1,0,0,0,0,551,1,0,0,0,0,553,1,0,0,0,0,555,1,0,0,0,0,557,1,0,0,0,0,559,1,0,0,0,0,561,1,0,0,0,0,563,1,0,0,0,0,565,1,0,0,0,0,567,1,0,0,0,0,569,1,0,0,0,0,571,1,0,0,0,0,573,1,0,0,0,0,575,1,0,0,0,0,577,1,0,0,0,0,579,1,0,0,0,0,581,1,0,0,0,0,583,1,0,0,0,0,585,1,0,0,0,0,587,1,0,0,0,0,589,1,0,0,0,0,591,1,0,0,0,0,593,1,0,0,0,0,595,1,0,0,0,0,597,1,0,0,0,0,599,1,0,0,0,0,601,1,0,0,0,0,603,1,0,0,0,0,605,1,0,0,0,0,607,1,0,0,0,0,609,1,0,0,0,0,611,1,0,0,0,0,613,1,0,0,0,0,615,1,0,0,0,0,617,1,0,0,0,0,619,1,0,0,0,0,621,1,0,0,0,0,623,1,0,0,0,0,625,1,0,0,0,0,627,1,0,0,0,0,629,1,0,0,0,0,631,1,0,0,0,0,633,1,0,0,0,0,635,1,0,0,0,0,637,1,0,0,0,0,639,1,0,0,0,0,641,1,0,0,0,0,643,1,0,0,0,0,645,1,0,0,0,0,647,1,0,0,0,0,649,1,0,0,0,0,651,1,0,0,0,0,653,1,0,0,0,0,655,1,0,0,0,0,657,1,0,0,0,0,659,1,0,0,0,0,661,1,0,0,0,0,663,1,0,0,0,0,665,1,0,0,0,0,667,1,0,0,0,0,669,1,0,0,0,0,671,1,0,0,0,0,673,1,0,0,0,0,675,1,0,0,0,0,677,1,0,0,0,0,679,1,0,0,0,0,681,1,0,0,0,0,693,1,0,0,0,0,695,1,0,0,0,0,699,1,0,0,0,0,713,1,0,0,0,0,715,1,0,0,0,0,719,1,0,0,0,0,721,1,0,0,0,0,727,1,0,0,0,0,729,1,0,0,0,1,731,1,0,0,0,3,737,1,0,0,0,5,739,1,0,0,0,7,742,1,0,0,0,9,745,1,0,0,0,11,748,1,0,0,0,13,750,1,0,0,0,15,753,1,0,0,0,17,755,1,0,0,0,19,758,1,0,0,0,21,761,1,0,0,0,23,765,1,0,0,0,25,767,1,0,0,0,27,769,1,0,0,0,29,772,1,0,0,0,31,775,1,0,0,0,33,778,1,0,0,0,35,780,1,0,0,0,37,782,1,0,0,0,39,784,1,0,0,0,41,786,1,0,0,0,43,788,1,0,0,0,45,790,1,0,0,0,47,792,1,0,0,0,49,794,1,0,0,0,51,796,1,0,0,0,53,798,1,0,0,0,55,800,1,0,0,0,57,802,1,0,0,0,59,804,1,0,0,0,61,806,1,0,0,0,63,808,1,0,0,0,65,811,1,0,0,0,67,813,1,0,0,0,69,815,1,0,0,0,71,817,1,0,0,0,73,819,1,0,0,0,75,821,1,0,0,0,77,823,1,0,0,0,79,825,1,0,0,0,81,828,1,0,0,0,83,831,1,0,0,0,85,833,1,0,0,0,87,835,1,0,0,0,89,837,1,0,0,0,91,839,1,0,0,0,93,841,1,0,0,0,95,843,1,0,0,0,97,845,1,0,0,0,99,847,1,0,0,0,101,849,1,0,0,0,103,851,1,0,0,0,105,853,1,0,0,0,107,855,1,0,0,0,109,857,1,0,0,0,111,859,1,0,0,0,113,861,1,0,0,0,115,863,1,0,0,0,117,865,1,0,0,0,119,867,1,0,0,0,121,869,1,0,0,0,123,871,1,0,0,0,125,873,1,0,0,0,127,875,1,0,0,0,129,877,1,0,0,0,131,879,1,0,0,0,133,881,1,0,0,0,135,883,1,0,0,0,137,885,1,0,0,0,139,887,1,0,0,0,141,893,1,0,0,0,143,900,1,0,0,0,145,904,1,0,0,0,147,910,1,0,0,0,149,914,1,0,0,0,151,920,1,0,0,0,153,928,1,0,0,0,155,932,1,0,0,0,157,937,1,0,0,0,159,941,1,0,0,0,161,947,1,0,0,0,163,950,1,0,0,0,165,954,1,0,0,0,167,961,1,0,0,0,169,972,1,0,0,0,171,978,1,0,0,0,173,985,1,0,0,0,175,996,1,0,0,0,177,1010,1,0,0,0,179,1018,1,0,0,0,181,1025,1,0,0,0,183,1031,1,0,0,0,185,1041,1,0,0,0,187,1049,1,0,0,0,189,1057,1,0,0,0,191,1060,1,0,0,0,193,1069,1,0,0,0,195,1077,1,0,0,0,197,1082,1,0,0,0,199,1087,1,0,0,0,201,1098,1,0,0,0,203,1104,1,0,0,0,205,1112,1,0,0,0,207,1119,1,0,0,0,209,1127,1,0,0,0,211,1134,1,0,0,0,213,1142,1,0,0,0,215,1154,1,0,0,0,217,1163,1,0,0,0,219,1171,1,0,0,0,221,1182,1,0,0,0,223,1191,1,0,0,0,225,1197,1,0,0,0,227,1204,1,0,0,0,229,1210,1,0,0,0,231,1215,1,0,0,0,233,1223,1,0,0,0,235,1236,1,0,0,0,237,1249,1,0,0,0,239,1267,1,0,0,0,241,1272,1,0,0,0,243,1281,1,0,0,0,245,1289,1,0,0,0,247,1297,1,0,0,0,249,1305,1,0,0,0,251,1316,1,0,0,0,253,1325,1,0,0,0,255,1332,1,0,0,0,257,1339,1,0,0,0,259,1344,1,0,0,0,261,1353,1,0,0,0,263,1360,1,0,0,0,265,1365,1,0,0,0,267,1375,1,0,0,0,269,1383,1,0,0,0,271,1391,1,0,0,0,273,1400,1,0,0,0,275,1403,1,0,0,0,277,1408,1,0,0,0,279,1413,1,0,0,0,281,1418,1,0,0,0,283,1424,1,0,0,0,285,1437,1,0,0,0,287,1447,1,0,0,0,289,1451,1,0,0,0,291,1456,1,0,0,0,293,1462,1,0,0,0,295,1468,1,0,0,0,297,1475,1,0,0,0,299,1484,1,0,0,0,301,1491,1,0,0,0,303,1499,1,0,0,0,305,1509,1,0,0,0,307,1519,1,0,0,0,309,1526,1,0,0,0,311,1534,1,0,0,0,313,1541,1,0,0,0,315,1550,1,0,0,0,317,1555,1,0,0,0,319,1561,1,0,0,0,321,1568,1,0,0,0,323,1575,1,0,0,0,325,1581,1,0,0,0,327,1589,1,0,0,0,329,1594,1,0,0,0,331,1604,1,0,0,0,333,1608,1,0,0,0,335,1616,1,0,0,0,337,1621,1,0,0,0,339,1626,1,0,0,0,341,1635,1,0,0,0,343,1640,1,0,0,0,345,1647,1,0,0,0,347,1653,1,0,0,0,349,1659,1,0,0,0,351,1668,1,0,0,0,353,1675,1,0,0,0,355,1680,1,0,0,0,357,1687,1,0,0,0,359,1691,1,0,0,0,361,1694,1,0,0,0,363,1701,1,0,0,0,365,1707,1,0,0,0,367,1717,1,0,0,0,369,1724,1,0,0,0,371,1727,1,0,0,0,373,1733,1,0,0,0,375,1741,1,0,0,0,377,1750,1,0,0,0,379,1758,1,0,0,0,381,1768,1,0,0,0,383,1774,1,0,0,0,385,1781,1,0,0,0,387,1789,1,0,0,0,389,1799,1,0,0,0,391,1804,1,0,0,0,393,1807,1,0,0,0,395,1814,1,0,0,0,397,1819,1,0,0,0,399,1831,1,0,0,0,401,1842,1,0,0,0,403,1853,1,0,0,0,405,1857,1,0,0,0,407,1862,1,0,0,0,409,1867,1,0,0,0,411,1874,1,0,0,0,413,1879,1,0,0,0,415,1885,1,0,0,0,417,1890,1,0,0,0,419,1896,1,0,0,0,421,1903,1,0,0,0,423,1909,1,0,0,0,425,1917,1,0,0,0,427,1933,1,0,0,0,429,1942,1,0,0,0,431,1955,1,0,0,0,433,1968,1,0,0,0,435,1975,1,0,0,0,437,1987,1,0,0,0,439,1995,1,0,0,0,441,2e3,1,0,0,0,443,2003,1,0,0,0,445,2007,1,0,0,0,447,2015,1,0,0,0,449,2020,1,0,0,0,451,2026,1,0,0,0,453,2033,1,0,0,0,455,2036,1,0,0,0,457,2043,1,0,0,0,459,2048,1,0,0,0,461,2051,1,0,0,0,463,2055,1,0,0,0,465,2060,1,0,0,0,467,2067,1,0,0,0,469,2076,1,0,0,0,471,2079,1,0,0,0,473,2085,1,0,0,0,475,2092,1,0,0,0,477,2098,1,0,0,0,479,2103,1,0,0,0,481,2112,1,0,0,0,483,2122,1,0,0,0,485,2130,1,0,0,0,487,2139,1,0,0,0,489,2144,1,0,0,0,491,2152,1,0,0,0,493,2156,1,0,0,0,495,2164,1,0,0,0,497,2169,1,0,0,0,499,2176,1,0,0,0,501,2186,1,0,0,0,503,2194,1,0,0,0,505,2202,1,0,0,0,507,2213,1,0,0,0,509,2221,1,0,0,0,511,2227,1,0,0,0,513,2233,1,0,0,0,515,2239,1,0,0,0,517,2246,1,0,0,0,519,2257,1,0,0,0,521,2264,1,0,0,0,523,2272,1,0,0,0,525,2280,1,0,0,0,527,2287,1,0,0,0,529,2294,1,0,0,0,531,2305,1,0,0,0,533,2313,1,0,0,0,535,2325,1,0,0,0,537,2331,1,0,0,0,539,2340,1,0,0,0,541,2348,1,0,0,0,543,2357,1,0,0,0,545,2364,1,0,0,0,547,2371,1,0,0,0,549,2381,1,0,0,0,551,2388,1,0,0,0,553,2395,1,0,0,0,555,2401,1,0,0,0,557,2407,1,0,0,0,559,2416,1,0,0,0,561,2423,1,0,0,0,563,2427,1,0,0,0,565,2432,1,0,0,0,567,2439,1,0,0,0,569,2449,1,0,0,0,571,2456,1,0,0,0,573,2464,1,0,0,0,575,2469,1,0,0,0,577,2476,1,0,0,0,579,2481,1,0,0,0,581,2485,1,0,0,0,583,2490,1,0,0,0,585,2495,1,0,0,0,587,2500,1,0,0,0,589,2507,1,0,0,0,591,2514,1,0,0,0,593,2521,1,0,0,0,595,2530,1,0,0,0,597,2537,1,0,0,0,599,2545,1,0,0,0,601,2555,1,0,0,0,603,2560,1,0,0,0,605,2567,1,0,0,0,607,2573,1,0,0,0,609,2580,1,0,0,0,611,2592,1,0,0,0,613,2603,1,0,0,0,615,2610,1,0,0,0,617,2615,1,0,0,0,619,2625,1,0,0,0,621,2630,1,0,0,0,623,2635,1,0,0,0,625,2638,1,0,0,0,627,2644,1,0,0,0,629,2656,1,0,0,0,631,2664,1,0,0,0,633,2669,1,0,0,0,635,2675,1,0,0,0,637,2680,1,0,0,0,639,2690,1,0,0,0,641,2704,1,0,0,0,643,2710,1,0,0,0,645,2717,1,0,0,0,647,2725,1,0,0,0,649,2735,1,0,0,0,651,2742,1,0,0,0,653,2749,1,0,0,0,655,2753,1,0,0,0,657,2758,1,0,0,0,659,2764,1,0,0,0,661,2771,1,0,0,0,663,2778,1,0,0,0,665,2786,1,0,0,0,667,2791,1,0,0,0,669,2799,1,0,0,0,671,2804,1,0,0,0,673,2810,1,0,0,0,675,2817,1,0,0,0,677,2822,1,0,0,0,679,2830,1,0,0,0,681,2838,1,0,0,0,683,2846,1,0,0,0,685,2852,1,0,0,0,687,2854,1,0,0,0,689,2863,1,0,0,0,691,2881,1,0,0,0,693,2891,1,0,0,0,695,2905,1,0,0,0,697,2918,1,0,0,0,699,2920,1,0,0,0,701,2929,1,0,0,0,703,2931,1,0,0,0,705,2933,1,0,0,0,707,2940,1,0,0,0,709,2947,1,0,0,0,711,2955,1,0,0,0,713,2963,1,0,0,0,715,2965,1,0,0,0,717,2978,1,0,0,0,719,2999,1,0,0,0,721,3011,1,0,0,0,723,3020,1,0,0,0,725,3032,1,0,0,0,727,3048,1,0,0,0,729,3054,1,0,0,0,731,732,3,119,59,0,732,733,3,127,63,0,733,734,3,95,47,0,734,735,3,121,60,0,735,736,3,135,67,0,736,2,1,0,0,0,737,738,5,61,0,0,738,4,1,0,0,0,739,740,5,61,0,0,740,741,5,61,0,0,741,6,1,0,0,0,742,743,5,33,0,0,743,744,5,61,0,0,744,8,1,0,0,0,745,746,5,60,0,0,746,747,5,62,0,0,747,10,1,0,0,0,748,749,5,60,0,0,749,12,1,0,0,0,750,751,5,60,0,0,751,752,5,61,0,0,752,14,1,0,0,0,753,754,5,62,0,0,754,16,1,0,0,0,755,756,5,62,0,0,756,757,5,61,0,0,757,18,1,0,0,0,758,759,5,60,0,0,759,760,5,60,0,0,760,20,1,0,0,0,761,762,5,124,0,0,762,763,5,60,0,0,763,764,5,60,0,0,764,22,1,0,0,0,765,766,5,38,0,0,766,24,1,0,0,0,767,768,5,124,0,0,768,26,1,0,0,0,769,770,5,124,0,0,770,771,5,124,0,0,771,28,1,0,0,0,772,773,5,60,0,0,773,774,5,124,0,0,774,30,1,0,0,0,775,776,5,124,0,0,776,777,5,62,0,0,777,32,1,0,0,0,778,779,5,43,0,0,779,34,1,0,0,0,780,781,5,45,0,0,781,36,1,0,0,0,782,783,5,126,0,0,783,38,1,0,0,0,784,785,5,42,0,0,785,40,1,0,0,0,786,787,5,47,0,0,787,42,1,0,0,0,788,789,5,92,0,0,789,44,1,0,0,0,790,791,5,37,0,0,791,46,1,0,0,0,792,793,5,59,0,0,793,48,1,0,0,0,794,795,5,46,0,0,795,50,1,0,0,0,796,797,5,44,0,0,797,52,1,0,0,0,798,799,5,40,0,0,799,54,1,0,0,0,800,801,5,41,0,0,801,56,1,0,0,0,802,803,5,63,0,0,803,58,1,0,0,0,804,805,5,58,0,0,805,60,1,0,0,0,806,807,5,64,0,0,807,62,1,0,0,0,808,809,5,64,0,0,809,810,5,64,0,0,810,64,1,0,0,0,811,812,5,36,0,0,812,66,1,0,0,0,813,814,5,34,0,0,814,68,1,0,0,0,815,816,5,39,0,0,816,70,1,0,0,0,817,818,5,96,0,0,818,72,1,0,0,0,819,820,5,123,0,0,820,74,1,0,0,0,821,822,5,125,0,0,822,76,1,0,0,0,823,824,5,94,0,0,824,78,1,0,0,0,825,826,5,58,0,0,826,827,5,58,0,0,827,80,1,0,0,0,828,829,5,45,0,0,829,830,5,62,0,0,830,82,1,0,0,0,831,832,5,93,0,0,832,84,1,0,0,0,833,834,5,91,0,0,834,86,1,0,0,0,835,836,7,0,0,0,836,88,1,0,0,0,837,838,7,1,0,0,838,90,1,0,0,0,839,840,7,2,0,0,840,92,1,0,0,0,841,842,7,3,0,0,842,94,1,0,0,0,843,844,7,4,0,0,844,96,1,0,0,0,845,846,7,5,0,0,846,98,1,0,0,0,847,848,7,6,0,0,848,100,1,0,0,0,849,850,7,7,0,0,850,102,1,0,0,0,851,852,7,8,0,0,852,104,1,0,0,0,853,854,7,9,0,0,854,106,1,0,0,0,855,856,7,10,0,0,856,108,1,0,0,0,857,858,7,11,0,0,858,110,1,0,0,0,859,860,7,12,0,0,860,112,1,0,0,0,861,862,7,13,0,0,862,114,1,0,0,0,863,864,7,14,0,0,864,116,1,0,0,0,865,866,7,15,0,0,866,118,1,0,0,0,867,868,7,16,0,0,868,120,1,0,0,0,869,870,7,17,0,0,870,122,1,0,0,0,871,872,7,18,0,0,872,124,1,0,0,0,873,874,7,19,0,0,874,126,1,0,0,0,875,876,7,20,0,0,876,128,1,0,0,0,877,878,7,21,0,0,878,130,1,0,0,0,879,880,7,22,0,0,880,132,1,0,0,0,881,882,7,23,0,0,882,134,1,0,0,0,883,884,7,24,0,0,884,136,1,0,0,0,885,886,7,25,0,0,886,138,1,0,0,0,887,888,3,87,43,0,888,889,3,89,44,0,889,890,3,115,57,0,890,891,3,121,60,0,891,892,3,125,62,0,892,140,1,0,0,0,893,894,3,87,43,0,894,895,3,91,45,0,895,896,3,125,62,0,896,897,3,103,51,0,897,898,3,115,57,0,898,899,3,113,56,0,899,142,1,0,0,0,900,901,3,87,43,0,901,902,3,93,46,0,902,903,3,93,46,0,903,144,1,0,0,0,904,905,3,87,43,0,905,906,3,97,48,0,906,907,3,125,62,0,907,908,3,95,47,0,908,909,3,121,60,0,909,146,1,0,0,0,910,911,3,87,43,0,911,912,3,109,54,0,912,913,3,109,54,0,913,148,1,0,0,0,914,915,3,87,43,0,915,916,3,109,54,0,916,917,3,125,62,0,917,918,3,95,47,0,918,919,3,121,60,0,919,150,1,0,0,0,920,921,3,87,43,0,921,922,3,113,56,0,922,923,3,87,43,0,923,924,3,109,54,0,924,925,3,135,67,0,925,926,3,137,68,0,926,927,3,95,47,0,927,152,1,0,0,0,928,929,3,87,43,0,929,930,3,113,56,0,930,931,3,93,46,0,931,154,1,0,0,0,932,933,3,87,43,0,933,934,3,113,56,0,934,935,3,123,61,0,935,936,3,103,51,0,936,156,1,0,0,0,937,938,3,87,43,0,938,939,3,113,56,0,939,940,3,135,67,0,940,158,1,0,0,0,941,942,3,87,43,0,942,943,3,121,60,0,943,944,3,121,60,0,944,945,3,87,43,0,945,946,3,135,67,0,946,160,1,0,0,0,947,948,3,87,43,0,948,949,3,123,61,0,949,162,1,0,0,0,950,951,3,87,43,0,951,952,3,123,61,0,952,953,3,91,45,0,953,164,1,0,0,0,954,955,3,87,43,0,955,956,3,123,61,0,956,957,3,123,61,0,957,958,3,127,63,0,958,959,3,111,55,0,959,960,3,95,47,0,960,166,1,0,0,0,961,962,3,87,43,0,962,963,3,123,61,0,963,964,3,135,67,0,964,965,3,111,55,0,965,966,3,111,55,0,966,967,3,95,47,0,967,968,3,125,62,0,968,969,3,121,60,0,969,970,3,103,51,0,970,971,3,91,45,0,971,168,1,0,0,0,972,973,3,87,43,0,973,974,3,123,61,0,974,975,3,135,67,0,975,976,3,113,56,0,976,977,3,91,45,0,977,170,1,0,0,0,978,979,3,87,43,0,979,980,3,125,62,0,980,981,3,125,62,0,981,982,3,87,43,0,982,983,3,91,45,0,983,984,3,101,50,0,984,172,1,0,0,0,985,986,3,87,43,0,986,987,3,125,62,0,987,988,3,125,62,0,988,989,3,121,60,0,989,990,3,103,51,0,990,991,3,89,44,0,991,992,3,127,63,0,992,993,3,125,62,0,993,994,3,95,47,0,994,995,3,123,61,0,995,174,1,0,0,0,996,997,3,87,43,0,997,998,3,127,63,0,998,999,3,125,62,0,999,1e3,3,115,57,0,1e3,1001,3,103,51,0,1001,1002,3,113,56,0,1002,1003,3,91,45,0,1003,1004,3,121,60,0,1004,1005,3,95,47,0,1005,1006,3,111,55,0,1006,1007,3,95,47,0,1007,1008,3,113,56,0,1008,1009,3,125,62,0,1009,176,1,0,0,0,1010,1011,3,87,43,0,1011,1012,3,127,63,0,1012,1013,3,125,62,0,1013,1014,3,115,57,0,1014,1015,3,111,55,0,1015,1016,3,87,43,0,1016,1017,3,117,58,0,1017,178,1,0,0,0,1018,1019,3,89,44,0,1019,1020,3,95,47,0,1020,1021,3,97,48,0,1021,1022,3,115,57,0,1022,1023,3,121,60,0,1023,1024,3,95,47,0,1024,180,1,0,0,0,1025,1026,3,89,44,0,1026,1027,3,95,47,0,1027,1028,3,99,49,0,1028,1029,3,103,51,0,1029,1030,3,113,56,0,1030,182,1,0,0,0,1031,1032,3,89,44,0,1032,1033,3,95,47,0,1033,1034,3,121,60,0,1034,1035,3,113,56,0,1035,1036,3,115,57,0,1036,1037,3,127,63,0,1037,1038,3,109,54,0,1038,1039,3,109,54,0,1039,1040,3,103,51,0,1040,184,1,0,0,0,1041,1042,3,89,44,0,1042,1043,3,95,47,0,1043,1044,3,125,62,0,1044,1045,3,131,65,0,1045,1046,3,95,47,0,1046,1047,3,95,47,0,1047,1048,3,113,56,0,1048,186,1,0,0,0,1049,1050,3,89,44,0,1050,1051,3,103,51,0,1051,1052,3,125,62,0,1052,1053,3,91,45,0,1053,1054,3,87,43,0,1054,1055,3,123,61,0,1055,1056,3,125,62,0,1056,188,1,0,0,0,1057,1058,3,89,44,0,1058,1059,3,135,67,0,1059,190,1,0,0,0,1060,1061,3,91,45,0,1061,1062,3,87,43,0,1062,1063,3,109,54,0,1063,1064,3,109,54,0,1064,1065,3,87,43,0,1065,1066,3,89,44,0,1066,1067,3,109,54,0,1067,1068,3,95,47,0,1068,192,1,0,0,0,1069,1070,3,91,45,0,1070,1071,3,87,43,0,1071,1072,3,123,61,0,1072,1073,3,91,45,0,1073,1074,3,87,43,0,1074,1075,3,93,46,0,1075,1076,3,95,47,0,1076,194,1,0,0,0,1077,1078,3,91,45,0,1078,1079,3,87,43,0,1079,1080,3,123,61,0,1080,1081,3,95,47,0,1081,196,1,0,0,0,1082,1083,3,91,45,0,1083,1084,3,87,43,0,1084,1085,3,123,61,0,1085,1086,3,125,62,0,1086,198,1,0,0,0,1087,1088,3,91,45,0,1088,1089,3,101,50,0,1089,1090,3,87,43,0,1090,1091,3,113,56,0,1091,1092,3,99,49,0,1092,1093,3,95,47,0,1093,1094,3,97,48,0,1094,1095,3,95,47,0,1095,1096,3,95,47,0,1096,1097,3,93,46,0,1097,200,1,0,0,0,1098,1099,3,91,45,0,1099,1100,3,101,50,0,1100,1101,3,95,47,0,1101,1102,3,91,45,0,1102,1103,3,107,53,0,1103,202,1,0,0,0,1104,1105,3,91,45,0,1105,1106,3,115,57,0,1106,1107,3,109,54,0,1107,1108,3,109,54,0,1108,1109,3,87,43,0,1109,1110,3,125,62,0,1110,1111,3,95,47,0,1111,204,1,0,0,0,1112,1113,3,91,45,0,1113,1114,3,115,57,0,1114,1115,3,109,54,0,1115,1116,3,127,63,0,1116,1117,3,111,55,0,1117,1118,3,113,56,0,1118,206,1,0,0,0,1119,1120,3,91,45,0,1120,1121,3,115,57,0,1121,1122,3,109,54,0,1122,1123,3,127,63,0,1123,1124,3,111,55,0,1124,1125,3,113,56,0,1125,1126,3,123,61,0,1126,208,1,0,0,0,1127,1128,3,91,45,0,1128,1129,3,115,57,0,1129,1130,3,111,55,0,1130,1131,3,111,55,0,1131,1132,3,103,51,0,1132,1133,3,125,62,0,1133,210,1,0,0,0,1134,1135,3,91,45,0,1135,1136,3,115,57,0,1136,1137,3,111,55,0,1137,1138,3,117,58,0,1138,1139,3,87,43,0,1139,1140,3,91,45,0,1140,1141,3,125,62,0,1141,212,1,0,0,0,1142,1143,3,91,45,0,1143,1144,3,115,57,0,1144,1145,3,113,56,0,1145,1146,3,93,46,0,1146,1147,3,103,51,0,1147,1148,3,125,62,0,1148,1149,3,103,51,0,1149,1150,3,115,57,0,1150,1151,3,113,56,0,1151,1152,3,87,43,0,1152,1153,3,109,54,0,1153,214,1,0,0,0,1154,1155,3,91,45,0,1155,1156,3,115,57,0,1156,1157,3,113,56,0,1157,1158,3,97,48,0,1158,1159,3,109,54,0,1159,1160,3,103,51,0,1160,1161,3,91,45,0,1161,1162,3,125,62,0,1162,216,1,0,0,0,1163,1164,3,91,45,0,1164,1165,3,115,57,0,1165,1166,3,113,56,0,1166,1167,3,113,56,0,1167,1168,3,95,47,0,1168,1169,3,91,45,0,1169,1170,3,125,62,0,1170,218,1,0,0,0,1171,1172,3,91,45,0,1172,1173,3,115,57,0,1173,1174,3,113,56,0,1174,1175,3,123,61,0,1175,1176,3,125,62,0,1176,1177,3,121,60,0,1177,1178,3,87,43,0,1178,1179,3,103,51,0,1179,1180,3,113,56,0,1180,1181,3,125,62,0,1181,220,1,0,0,0,1182,1183,3,91,45,0,1183,1184,3,115,57,0,1184,1185,3,113,56,0,1185,1186,3,123,61,0,1186,1187,3,127,63,0,1187,1188,3,111,55,0,1188,1189,3,95,47,0,1189,1190,3,121,60,0,1190,222,1,0,0,0,1191,1192,3,91,45,0,1192,1193,3,115,57,0,1193,1194,3,129,64,0,1194,1195,3,95,47,0,1195,1196,3,121,60,0,1196,224,1,0,0,0,1197,1198,3,91,45,0,1198,1199,3,121,60,0,1199,1200,3,95,47,0,1200,1201,3,87,43,0,1201,1202,3,125,62,0,1202,1203,3,95,47,0,1203,226,1,0,0,0,1204,1205,3,91,45,0,1205,1206,3,121,60,0,1206,1207,3,115,57,0,1207,1208,3,123,61,0,1208,1209,3,123,61,0,1209,228,1,0,0,0,1210,1211,3,91,45,0,1211,1212,3,127,63,0,1212,1213,3,89,44,0,1213,1214,3,95,47,0,1214,230,1,0,0,0,1215,1216,3,91,45,0,1216,1217,3,127,63,0,1217,1218,3,121,60,0,1218,1219,3,121,60,0,1219,1220,3,95,47,0,1220,1221,3,113,56,0,1221,1222,3,125,62,0,1222,232,1,0,0,0,1223,1224,3,91,45,0,1224,1225,3,127,63,0,1225,1226,3,121,60,0,1226,1227,3,121,60,0,1227,1228,3,95,47,0,1228,1229,3,113,56,0,1229,1230,3,125,62,0,1230,1231,5,95,0,0,1231,1232,3,93,46,0,1232,1233,3,87,43,0,1233,1234,3,125,62,0,1234,1235,3,95,47,0,1235,234,1,0,0,0,1236,1237,3,91,45,0,1237,1238,3,127,63,0,1238,1239,3,121,60,0,1239,1240,3,121,60,0,1240,1241,3,95,47,0,1241,1242,3,113,56,0,1242,1243,3,125,62,0,1243,1244,5,95,0,0,1244,1245,3,125,62,0,1245,1246,3,103,51,0,1246,1247,3,111,55,0,1247,1248,3,95,47,0,1248,236,1,0,0,0,1249,1250,3,91,45,0,1250,1251,3,127,63,0,1251,1252,3,121,60,0,1252,1253,3,121,60,0,1253,1254,3,95,47,0,1254,1255,3,113,56,0,1255,1256,3,125,62,0,1256,1257,5,95,0,0,1257,1258,3,125,62,0,1258,1259,3,103,51,0,1259,1260,3,111,55,0,1260,1261,3,95,47,0,1261,1262,3,123,61,0,1262,1263,3,125,62,0,1263,1264,3,87,43,0,1264,1265,3,111,55,0,1265,1266,3,117,58,0,1266,238,1,0,0,0,1267,1268,3,93,46,0,1268,1269,3,87,43,0,1269,1270,3,125,62,0,1270,1271,3,87,43,0,1271,240,1,0,0,0,1272,1273,3,93,46,0,1273,1274,3,87,43,0,1274,1275,3,125,62,0,1275,1276,3,87,43,0,1276,1277,3,89,44,0,1277,1278,3,87,43,0,1278,1279,3,123,61,0,1279,1280,3,95,47,0,1280,242,1,0,0,0,1281,1282,3,93,46,0,1282,1283,3,95,47,0,1283,1284,3,91,45,0,1284,1285,3,103,51,0,1285,1286,3,111,55,0,1286,1287,3,87,43,0,1287,1288,3,109,54,0,1288,244,1,0,0,0,1289,1290,3,93,46,0,1290,1291,3,95,47,0,1291,1292,3,91,45,0,1292,1293,3,109,54,0,1293,1294,3,87,43,0,1294,1295,3,121,60,0,1295,1296,3,95,47,0,1296,246,1,0,0,0,1297,1298,3,93,46,0,1298,1299,3,95,47,0,1299,1300,3,97,48,0,1300,1301,3,87,43,0,1301,1302,3,127,63,0,1302,1303,3,109,54,0,1303,1304,3,125,62,0,1304,248,1,0,0,0,1305,1306,3,93,46,0,1306,1307,3,95,47,0,1307,1308,3,97,48,0,1308,1309,3,95,47,0,1309,1310,3,121,60,0,1310,1311,3,121,60,0,1311,1312,3,87,43,0,1312,1313,3,89,44,0,1313,1314,3,109,54,0,1314,1315,3,95,47,0,1315,250,1,0,0,0,1316,1317,3,93,46,0,1317,1318,3,95,47,0,1318,1319,3,97,48,0,1319,1320,3,95,47,0,1320,1321,3,121,60,0,1321,1322,3,121,60,0,1322,1323,3,95,47,0,1323,1324,3,93,46,0,1324,252,1,0,0,0,1325,1326,3,93,46,0,1326,1327,3,95,47,0,1327,1328,3,97,48,0,1328,1329,3,103,51,0,1329,1330,3,113,56,0,1330,1331,3,95,47,0,1331,254,1,0,0,0,1332,1333,3,93,46,0,1333,1334,3,95,47,0,1334,1335,3,109,54,0,1335,1336,3,95,47,0,1336,1337,3,125,62,0,1337,1338,3,95,47,0,1338,256,1,0,0,0,1339,1340,3,93,46,0,1340,1341,3,95,47,0,1341,1342,3,123,61,0,1342,1343,3,91,45,0,1343,258,1,0,0,0,1344,1345,3,93,46,0,1345,1346,3,95,47,0,1346,1347,3,123,61,0,1347,1348,3,91,45,0,1348,1349,3,121,60,0,1349,1350,3,103,51,0,1350,1351,3,89,44,0,1351,1352,3,95,47,0,1352,260,1,0,0,0,1353,1354,3,93,46,0,1354,1355,3,95,47,0,1355,1356,3,125,62,0,1356,1357,3,87,43,0,1357,1358,3,91,45,0,1358,1359,3,101,50,0,1359,262,1,0,0,0,1360,1361,3,93,46,0,1361,1362,3,103,51,0,1362,1363,3,91,45,0,1363,1364,3,125,62,0,1364,264,1,0,0,0,1365,1366,3,93,46,0,1366,1367,3,103,51,0,1367,1368,3,121,60,0,1368,1369,3,95,47,0,1369,1370,3,91,45,0,1370,1371,3,125,62,0,1371,1372,3,115,57,0,1372,1373,3,121,60,0,1373,1374,3,135,67,0,1374,266,1,0,0,0,1375,1376,3,93,46,0,1376,1377,3,103,51,0,1377,1378,3,123,61,0,1378,1379,3,87,43,0,1379,1380,3,89,44,0,1380,1381,3,109,54,0,1381,1382,3,95,47,0,1382,268,1,0,0,0,1383,1384,3,93,46,0,1384,1385,3,103,51,0,1385,1386,3,123,61,0,1386,1387,3,91,45,0,1387,1388,3,87,43,0,1388,1389,3,121,60,0,1389,1390,3,93,46,0,1390,270,1,0,0,0,1391,1392,3,93,46,0,1392,1393,3,103,51,0,1393,1394,3,123,61,0,1394,1395,3,125,62,0,1395,1396,3,103,51,0,1396,1397,3,113,56,0,1397,1398,3,91,45,0,1398,1399,3,125,62,0,1399,272,1,0,0,0,1400,1401,3,93,46,0,1401,1402,3,115,57,0,1402,274,1,0,0,0,1403,1404,3,93,46,0,1404,1405,3,121,60,0,1405,1406,3,115,57,0,1406,1407,3,117,58,0,1407,276,1,0,0,0,1408,1409,3,95,47,0,1409,1410,3,87,43,0,1410,1411,3,91,45,0,1411,1412,3,101,50,0,1412,278,1,0,0,0,1413,1414,3,95,47,0,1414,1415,3,109,54,0,1415,1416,3,123,61,0,1416,1417,3,95,47,0,1417,280,1,0,0,0,1418,1419,3,95,47,0,1419,1420,3,111,55,0,1420,1421,3,117,58,0,1421,1422,3,125,62,0,1422,1423,3,135,67,0,1423,282,1,0,0,0,1424,1425,3,95,47,0,1425,1426,3,111,55,0,1426,1427,3,117,58,0,1427,1428,3,125,62,0,1428,1429,3,135,67,0,1429,1430,5,95,0,0,1430,1431,3,87,43,0,1431,1432,3,91,45,0,1432,1433,3,125,62,0,1433,1434,3,103,51,0,1434,1435,3,115,57,0,1435,1436,3,113,56,0,1436,284,1,0,0,0,1437,1438,3,95,47,0,1438,1439,3,113,56,0,1439,1440,3,91,45,0,1440,1441,3,121,60,0,1441,1442,3,135,67,0,1442,1443,3,117,58,0,1443,1444,3,125,62,0,1444,1445,3,95,47,0,1445,1446,3,93,46,0,1446,286,1,0,0,0,1447,1448,3,95,47,0,1448,1449,3,113,56,0,1449,1450,3,93,46,0,1450,288,1,0,0,0,1451,1452,3,95,47,0,1452,1453,3,113,56,0,1453,1454,3,127,63,0,1454,1455,3,111,55,0,1455,290,1,0,0,0,1456,1457,3,95,47,0,1457,1458,3,121,60,0,1458,1459,3,87,43,0,1459,1460,3,123,61,0,1460,1461,3,95,47,0,1461,292,1,0,0,0,1462,1463,3,95,47,0,1463,1464,3,121,60,0,1464,1465,3,121,60,0,1465,1466,3,115,57,0,1466,1467,3,121,60,0,1467,294,1,0,0,0,1468,1469,3,95,47,0,1469,1470,3,123,61,0,1470,1471,3,91,45,0,1471,1472,3,87,43,0,1472,1473,3,117,58,0,1473,1474,3,95,47,0,1474,296,1,0,0,0,1475,1476,3,95,47,0,1476,1477,3,129,64,0,1477,1478,3,87,43,0,1478,1479,3,109,54,0,1479,1480,3,127,63,0,1480,1481,3,87,43,0,1481,1482,3,125,62,0,1482,1483,3,95,47,0,1483,298,1,0,0,0,1484,1485,3,95,47,0,1485,1486,3,133,66,0,1486,1487,3,91,45,0,1487,1488,3,95,47,0,1488,1489,3,117,58,0,1489,1490,3,125,62,0,1490,300,1,0,0,0,1491,1492,3,95,47,0,1492,1493,3,133,66,0,1493,1494,3,91,45,0,1494,1495,3,109,54,0,1495,1496,3,127,63,0,1496,1497,3,93,46,0,1497,1498,3,95,47,0,1498,302,1,0,0,0,1499,1500,3,95,47,0,1500,1501,3,133,66,0,1501,1502,3,91,45,0,1502,1503,3,109,54,0,1503,1504,3,127,63,0,1504,1505,3,123,61,0,1505,1506,3,103,51,0,1506,1507,3,115,57,0,1507,1508,3,113,56,0,1508,304,1,0,0,0,1509,1510,3,95,47,0,1510,1511,3,133,66,0,1511,1512,3,91,45,0,1512,1513,3,109,54,0,1513,1514,3,127,63,0,1514,1515,3,123,61,0,1515,1516,3,103,51,0,1516,1517,3,129,64,0,1517,1518,3,95,47,0,1518,306,1,0,0,0,1519,1520,3,95,47,0,1520,1521,3,133,66,0,1521,1522,3,103,51,0,1522,1523,3,123,61,0,1523,1524,3,125,62,0,1524,1525,3,123,61,0,1525,308,1,0,0,0,1526,1527,3,95,47,0,1527,1528,3,133,66,0,1528,1529,3,117,58,0,1529,1530,3,109,54,0,1530,1531,3,87,43,0,1531,1532,3,103,51,0,1532,1533,3,113,56,0,1533,310,1,0,0,0,1534,1535,3,95,47,0,1535,1536,3,133,66,0,1536,1537,3,117,58,0,1537,1538,3,115,57,0,1538,1539,3,121,60,0,1539,1540,3,125,62,0,1540,312,1,0,0,0,1541,1542,3,95,47,0,1542,1543,3,133,66,0,1543,1544,3,125,62,0,1544,1545,3,95,47,0,1545,1546,3,121,60,0,1546,1547,3,113,56,0,1547,1548,3,87,43,0,1548,1549,3,109,54,0,1549,314,1,0,0,0,1550,1551,3,97,48,0,1551,1552,3,87,43,0,1552,1553,3,103,51,0,1553,1554,3,109,54,0,1554,316,1,0,0,0,1555,1556,3,97,48,0,1556,1557,3,87,43,0,1557,1558,3,109,54,0,1558,1559,3,123,61,0,1559,1560,3,95,47,0,1560,318,1,0,0,0,1561,1562,3,97,48,0,1562,1563,3,87,43,0,1563,1564,3,111,55,0,1564,1565,3,103,51,0,1565,1566,3,109,54,0,1566,1567,3,135,67,0,1567,320,1,0,0,0,1568,1569,3,97,48,0,1569,1570,3,103,51,0,1570,1571,3,109,54,0,1571,1572,3,125,62,0,1572,1573,3,95,47,0,1573,1574,3,121,60,0,1574,322,1,0,0,0,1575,1576,3,97,48,0,1576,1577,3,103,51,0,1577,1578,3,121,60,0,1578,1579,3,123,61,0,1579,1580,3,125,62,0,1580,324,1,0,0,0,1581,1582,3,97,48,0,1582,1583,3,109,54,0,1583,1584,3,87,43,0,1584,1585,3,125,62,0,1585,1586,3,125,62,0,1586,1587,3,95,47,0,1587,1588,3,113,56,0,1588,326,1,0,0,0,1589,1590,3,97,48,0,1590,1591,3,109,54,0,1591,1592,3,115,57,0,1592,1593,3,131,65,0,1593,328,1,0,0,0,1594,1595,3,97,48,0,1595,1596,3,115,57,0,1596,1597,3,109,54,0,1597,1598,3,109,54,0,1598,1599,3,115,57,0,1599,1600,3,131,65,0,1600,1601,3,103,51,0,1601,1602,3,113,56,0,1602,1603,3,99,49,0,1603,330,1,0,0,0,1604,1605,3,97,48,0,1605,1606,3,115,57,0,1606,1607,3,121,60,0,1607,332,1,0,0,0,1608,1609,3,97,48,0,1609,1610,3,115,57,0,1610,1611,3,121,60,0,1611,1612,3,95,47,0,1612,1613,3,103,51,0,1613,1614,3,99,49,0,1614,1615,3,113,56,0,1615,334,1,0,0,0,1616,1617,3,97,48,0,1617,1618,3,121,60,0,1618,1619,3,115,57,0,1619,1620,3,111,55,0,1620,336,1,0,0,0,1621,1622,3,97,48,0,1622,1623,3,127,63,0,1623,1624,3,109,54,0,1624,1625,3,109,54,0,1625,338,1,0,0,0,1626,1627,3,97,48,0,1627,1628,3,127,63,0,1628,1629,3,113,56,0,1629,1630,3,91,45,0,1630,1631,3,125,62,0,1631,1632,3,103,51,0,1632,1633,3,115,57,0,1633,1634,3,113,56,0,1634,340,1,0,0,0,1635,1636,3,99,49,0,1636,1637,3,109,54,0,1637,1638,3,115,57,0,1638,1639,3,89,44,0,1639,342,1,0,0,0,1640,1641,3,99,49,0,1641,1642,3,109,54,0,1642,1643,3,115,57,0,1643,1644,3,89,44,0,1644,1645,3,87,43,0,1645,1646,3,109,54,0,1646,344,1,0,0,0,1647,1648,3,99,49,0,1648,1649,3,121,60,0,1649,1650,3,87,43,0,1650,1651,3,113,56,0,1651,1652,3,125,62,0,1652,346,1,0,0,0,1653,1654,3,99,49,0,1654,1655,3,121,60,0,1655,1656,3,115,57,0,1656,1657,3,127,63,0,1657,1658,3,117,58,0,1658,348,1,0,0,0,1659,1660,3,99,49,0,1660,1661,3,121,60,0,1661,1662,3,115,57,0,1662,1663,3,127,63,0,1663,1664,3,117,58,0,1664,1665,3,103,51,0,1665,1666,3,113,56,0,1666,1667,3,99,49,0,1667,350,1,0,0,0,1668,1669,3,99,49,0,1669,1670,3,121,60,0,1670,1671,3,115,57,0,1671,1672,3,127,63,0,1672,1673,3,117,58,0,1673,1674,3,123,61,0,1674,352,1,0,0,0,1675,1676,3,101,50,0,1676,1677,3,87,43,0,1677,1678,3,123,61,0,1678,1679,3,101,50,0,1679,354,1,0,0,0,1680,1681,3,101,50,0,1681,1682,3,87,43,0,1682,1683,3,129,64,0,1683,1684,3,103,51,0,1684,1685,3,113,56,0,1685,1686,3,99,49,0,1686,356,1,0,0,0,1687,1688,3,101,50,0,1688,1689,3,115,57,0,1689,1690,3,117,58,0,1690,358,1,0,0,0,1691,1692,3,103,51,0,1692,1693,3,97,48,0,1693,360,1,0,0,0,1694,1695,3,103,51,0,1695,1696,3,99,49,0,1696,1697,3,113,56,0,1697,1698,3,115,57,0,1698,1699,3,121,60,0,1699,1700,3,95,47,0,1700,362,1,0,0,0,1701,1702,3,103,51,0,1702,1703,3,109,54,0,1703,1704,3,103,51,0,1704,1705,3,107,53,0,1705,1706,3,95,47,0,1706,364,1,0,0,0,1707,1708,3,103,51,0,1708,1709,3,111,55,0,1709,1710,3,111,55,0,1710,1711,3,95,47,0,1711,1712,3,93,46,0,1712,1713,3,103,51,0,1713,1714,3,87,43,0,1714,1715,3,125,62,0,1715,1716,3,95,47,0,1716,366,1,0,0,0,1717,1718,3,103,51,0,1718,1719,3,111,55,0,1719,1720,3,117,58,0,1720,1721,3,115,57,0,1721,1722,3,121,60,0,1722,1723,3,125,62,0,1723,368,1,0,0,0,1724,1725,3,103,51,0,1725,1726,3,113,56,0,1726,370,1,0,0,0,1727,1728,3,103,51,0,1728,1729,3,113,56,0,1729,1730,3,93,46,0,1730,1731,3,95,47,0,1731,1732,3,133,66,0,1732,372,1,0,0,0,1733,1734,3,103,51,0,1734,1735,3,113,56,0,1735,1736,3,93,46,0,1736,1737,3,95,47,0,1737,1738,3,133,66,0,1738,1739,3,95,47,0,1739,1740,3,93,46,0,1740,374,1,0,0,0,1741,1742,3,103,51,0,1742,1743,3,113,56,0,1743,1744,3,101,50,0,1744,1745,3,95,47,0,1745,1746,3,121,60,0,1746,1747,3,103,51,0,1747,1748,3,125,62,0,1748,1749,3,123,61,0,1749,376,1,0,0,0,1750,1751,3,103,51,0,1751,1752,3,113,56,0,1752,1753,3,103,51,0,1753,1754,3,125,62,0,1754,1755,3,103,51,0,1755,1756,3,87,43,0,1756,1757,3,109,54,0,1757,378,1,0,0,0,1758,1759,3,103,51,0,1759,1760,3,113,56,0,1760,1761,3,103,51,0,1761,1762,3,125,62,0,1762,1763,3,103,51,0,1763,1764,3,87,43,0,1764,1765,3,109,54,0,1765,1766,3,109,54,0,1766,1767,3,135,67,0,1767,380,1,0,0,0,1768,1769,3,103,51,0,1769,1770,3,113,56,0,1770,1771,3,113,56,0,1771,1772,3,95,47,0,1772,1773,3,121,60,0,1773,382,1,0,0,0,1774,1775,3,103,51,0,1775,1776,3,113,56,0,1776,1777,3,123,61,0,1777,1778,3,95,47,0,1778,1779,3,121,60,0,1779,1780,3,125,62,0,1780,384,1,0,0,0,1781,1782,3,103,51,0,1782,1783,3,113,56,0,1783,1784,3,123,61,0,1784,1785,3,125,62,0,1785,1786,3,95,47,0,1786,1787,3,87,43,0,1787,1788,3,93,46,0,1788,386,1,0,0,0,1789,1790,3,103,51,0,1790,1791,3,113,56,0,1791,1792,3,125,62,0,1792,1793,3,95,47,0,1793,1794,3,121,60,0,1794,1795,3,123,61,0,1795,1796,3,95,47,0,1796,1797,3,91,45,0,1797,1798,3,125,62,0,1798,388,1,0,0,0,1799,1800,3,103,51,0,1800,1801,3,113,56,0,1801,1802,3,125,62,0,1802,1803,3,115,57,0,1803,390,1,0,0,0,1804,1805,3,103,51,0,1805,1806,3,123,61,0,1806,392,1,0,0,0,1807,1808,3,103,51,0,1808,1809,3,123,61,0,1809,1810,3,113,56,0,1810,1811,3,127,63,0,1811,1812,3,109,54,0,1812,1813,3,109,54,0,1813,394,1,0,0,0,1814,1815,3,105,52,0,1815,1816,3,115,57,0,1816,1817,3,103,51,0,1817,1818,3,113,56,0,1818,396,1,0,0,0,1819,1820,3,105,52,0,1820,1821,3,123,61,0,1821,1822,3,115,57,0,1822,1823,3,113,56,0,1823,1824,5,95,0,0,1824,1825,3,95,47,0,1825,1826,3,133,66,0,1826,1827,3,103,51,0,1827,1828,3,123,61,0,1828,1829,3,125,62,0,1829,1830,3,123,61,0,1830,398,1,0,0,0,1831,1832,3,105,52,0,1832,1833,3,123,61,0,1833,1834,3,115,57,0,1834,1835,3,113,56,0,1835,1836,5,95,0,0,1836,1837,3,119,59,0,1837,1838,3,127,63,0,1838,1839,3,95,47,0,1839,1840,3,121,60,0,1840,1841,3,135,67,0,1841,400,1,0,0,0,1842,1843,3,105,52,0,1843,1844,3,123,61,0,1844,1845,3,115,57,0,1845,1846,3,113,56,0,1846,1847,5,95,0,0,1847,1848,3,129,64,0,1848,1849,3,87,43,0,1849,1850,3,109,54,0,1850,1851,3,127,63,0,1851,1852,3,95,47,0,1852,402,1,0,0,0,1853,1854,3,107,53,0,1854,1855,3,95,47,0,1855,1856,3,135,67,0,1856,404,1,0,0,0,1857,1858,3,109,54,0,1858,1859,3,87,43,0,1859,1860,3,123,61,0,1860,1861,3,125,62,0,1861,406,1,0,0,0,1862,1863,3,109,54,0,1863,1864,3,95,47,0,1864,1865,3,97,48,0,1865,1866,3,125,62,0,1866,408,1,0,0,0,1867,1868,3,109,54,0,1868,1869,3,95,47,0,1869,1870,3,99,49,0,1870,1871,3,87,43,0,1871,1872,3,91,45,0,1872,1873,3,135,67,0,1873,410,1,0,0,0,1874,1875,3,109,54,0,1875,1876,3,103,51,0,1876,1877,3,107,53,0,1877,1878,3,95,47,0,1878,412,1,0,0,0,1879,1880,3,109,54,0,1880,1881,3,103,51,0,1881,1882,3,111,55,0,1882,1883,3,103,51,0,1883,1884,3,125,62,0,1884,414,1,0,0,0,1885,1886,3,109,54,0,1886,1887,3,103,51,0,1887,1888,3,123,61,0,1888,1889,3,125,62,0,1889,416,1,0,0,0,1890,1891,3,109,54,0,1891,1892,3,115,57,0,1892,1893,3,91,45,0,1893,1894,3,87,43,0,1894,1895,3,109,54,0,1895,418,1,0,0,0,1896,1897,3,111,55,0,1897,1898,3,87,43,0,1898,1899,3,113,56,0,1899,1900,3,87,43,0,1900,1901,3,99,49,0,1901,1902,3,95,47,0,1902,420,1,0,0,0,1903,1904,3,111,55,0,1904,1905,3,87,43,0,1905,1906,3,125,62,0,1906,1907,3,91,45,0,1907,1908,3,101,50,0,1908,422,1,0,0,0,1909,1910,3,111,55,0,1910,1911,3,87,43,0,1911,1912,3,125,62,0,1912,1913,3,91,45,0,1913,1914,3,101,50,0,1914,1915,3,95,47,0,1915,1916,3,123,61,0,1916,424,1,0,0,0,1917,1918,3,111,55,0,1918,1919,3,87,43,0,1919,1920,3,125,62,0,1920,1921,3,91,45,0,1921,1922,3,101,50,0,1922,1923,5,95,0,0,1923,1924,3,121,60,0,1924,1925,3,95,47,0,1925,1926,3,91,45,0,1926,1927,3,115,57,0,1927,1928,3,99,49,0,1928,1929,3,113,56,0,1929,1930,3,103,51,0,1930,1931,3,137,68,0,1931,1932,3,95,47,0,1932,426,1,0,0,0,1933,1934,3,111,55,0,1934,1935,3,95,47,0,1935,1936,3,87,43,0,1936,1937,3,123,61,0,1937,1938,3,127,63,0,1938,1939,3,121,60,0,1939,1940,3,95,47,0,1940,1941,3,123,61,0,1941,428,1,0,0,0,1942,1943,3,111,55,0,1943,1944,3,103,51,0,1944,1945,3,91,45,0,1945,1946,3,121,60,0,1946,1947,3,115,57,0,1947,1948,3,123,61,0,1948,1949,3,95,47,0,1949,1950,3,91,45,0,1950,1951,3,115,57,0,1951,1952,3,113,56,0,1952,1953,3,93,46,0,1953,1954,3,123,61,0,1954,430,1,0,0,0,1955,1956,3,111,55,0,1956,1957,3,103,51,0,1957,1958,3,109,54,0,1958,1959,3,109,54,0,1959,1960,3,103,51,0,1960,1961,3,123,61,0,1961,1962,3,95,47,0,1962,1963,3,91,45,0,1963,1964,3,115,57,0,1964,1965,3,113,56,0,1965,1966,3,93,46,0,1966,1967,3,123,61,0,1967,432,1,0,0,0,1968,1969,3,111,55,0,1969,1970,3,115,57,0,1970,1971,3,93,46,0,1971,1972,3,103,51,0,1972,1973,3,97,48,0,1973,1974,3,135,67,0,1974,434,1,0,0,0,1975,1976,3,113,56,0,1976,1977,3,87,43,0,1977,1978,3,113,56,0,1978,1979,3,115,57,0,1979,1980,3,123,61,0,1980,1981,3,95,47,0,1981,1982,3,91,45,0,1982,1983,3,115,57,0,1983,1984,3,113,56,0,1984,1985,3,93,46,0,1985,1986,3,123,61,0,1986,436,1,0,0,0,1987,1988,3,113,56,0,1988,1989,3,87,43,0,1989,1990,3,125,62,0,1990,1991,3,127,63,0,1991,1992,3,121,60,0,1992,1993,3,87,43,0,1993,1994,3,109,54,0,1994,438,1,0,0,0,1995,1996,3,113,56,0,1996,1997,3,95,47,0,1997,1998,3,133,66,0,1998,1999,3,125,62,0,1999,440,1,0,0,0,2e3,2001,3,113,56,0,2001,2002,3,115,57,0,2002,442,1,0,0,0,2003,2004,3,113,56,0,2004,2005,3,115,57,0,2005,2006,3,125,62,0,2006,444,1,0,0,0,2007,2008,3,113,56,0,2008,2009,3,115,57,0,2009,2010,3,125,62,0,2010,2011,3,113,56,0,2011,2012,3,127,63,0,2012,2013,3,109,54,0,2013,2014,3,109,54,0,2014,446,1,0,0,0,2015,2016,3,113,56,0,2016,2017,3,127,63,0,2017,2018,3,109,54,0,2018,2019,3,109,54,0,2019,448,1,0,0,0,2020,2021,3,113,56,0,2021,2022,3,127,63,0,2022,2023,3,109,54,0,2023,2024,3,109,54,0,2024,2025,3,123,61,0,2025,450,1,0,0,0,2026,2027,3,115,57,0,2027,2028,3,89,44,0,2028,2029,3,105,52,0,2029,2030,3,95,47,0,2030,2031,3,91,45,0,2031,2032,3,125,62,0,2032,452,1,0,0,0,2033,2034,3,115,57,0,2034,2035,3,97,48,0,2035,454,1,0,0,0,2036,2037,3,115,57,0,2037,2038,3,97,48,0,2038,2039,3,97,48,0,2039,2040,3,123,61,0,2040,2041,3,95,47,0,2041,2042,3,125,62,0,2042,456,1,0,0,0,2043,2044,3,115,57,0,2044,2045,3,111,55,0,2045,2046,3,103,51,0,2046,2047,3,125,62,0,2047,458,1,0,0,0,2048,2049,3,115,57,0,2049,2050,3,113,56,0,2050,460,1,0,0,0,2051,2052,3,115,57,0,2052,2053,3,113,56,0,2053,2054,3,95,47,0,2054,462,1,0,0,0,2055,2056,3,115,57,0,2056,2057,3,113,56,0,2057,2058,3,109,54,0,2058,2059,3,135,67,0,2059,464,1,0,0,0,2060,2061,3,115,57,0,2061,2062,3,117,58,0,2062,2063,3,125,62,0,2063,2064,3,103,51,0,2064,2065,3,115,57,0,2065,2066,3,113,56,0,2066,466,1,0,0,0,2067,2068,3,115,57,0,2068,2069,3,117,58,0,2069,2070,3,125,62,0,2070,2071,3,103,51,0,2071,2072,3,115,57,0,2072,2073,3,113,56,0,2073,2074,3,87,43,0,2074,2075,3,109,54,0,2075,468,1,0,0,0,2076,2077,3,115,57,0,2077,2078,3,121,60,0,2078,470,1,0,0,0,2079,2080,3,115,57,0,2080,2081,3,121,60,0,2081,2082,3,93,46,0,2082,2083,3,95,47,0,2083,2084,3,121,60,0,2084,472,1,0,0,0,2085,2086,3,115,57,0,2086,2087,3,125,62,0,2087,2088,3,101,50,0,2088,2089,3,95,47,0,2089,2090,3,121,60,0,2090,2091,3,123,61,0,2091,474,1,0,0,0,2092,2093,3,115,57,0,2093,2094,3,127,63,0,2094,2095,3,125,62,0,2095,2096,3,95,47,0,2096,2097,3,121,60,0,2097,476,1,0,0,0,2098,2099,3,115,57,0,2099,2100,3,129,64,0,2100,2101,3,95,47,0,2101,2102,3,121,60,0,2102,478,1,0,0,0,2103,2104,3,117,58,0,2104,2105,3,87,43,0,2105,2106,3,121,60,0,2106,2107,3,87,43,0,2107,2108,3,109,54,0,2108,2109,3,109,54,0,2109,2110,3,95,47,0,2110,2111,3,109,54,0,2111,480,1,0,0,0,2112,2113,3,117,58,0,2113,2114,3,87,43,0,2114,2115,3,121,60,0,2115,2116,3,125,62,0,2116,2117,3,103,51,0,2117,2118,3,125,62,0,2118,2119,3,103,51,0,2119,2120,3,115,57,0,2120,2121,3,113,56,0,2121,482,1,0,0,0,2122,2123,3,117,58,0,2123,2124,3,87,43,0,2124,2125,3,123,61,0,2125,2126,3,123,61,0,2126,2127,3,103,51,0,2127,2128,3,113,56,0,2128,2129,3,99,49,0,2129,484,1,0,0,0,2130,2131,3,117,58,0,2131,2132,3,87,43,0,2132,2133,3,123,61,0,2133,2134,3,123,61,0,2134,2135,3,131,65,0,2135,2136,3,115,57,0,2136,2137,3,121,60,0,2137,2138,3,93,46,0,2138,486,1,0,0,0,2139,2140,3,117,58,0,2140,2141,3,87,43,0,2141,2142,3,123,61,0,2142,2143,3,125,62,0,2143,488,1,0,0,0,2144,2145,3,117,58,0,2145,2146,3,87,43,0,2146,2147,3,125,62,0,2147,2148,3,125,62,0,2148,2149,3,95,47,0,2149,2150,3,121,60,0,2150,2151,3,113,56,0,2151,490,1,0,0,0,2152,2153,3,117,58,0,2153,2154,3,95,47,0,2154,2155,3,121,60,0,2155,492,1,0,0,0,2156,2157,3,117,58,0,2157,2158,3,95,47,0,2158,2159,3,121,60,0,2159,2160,3,111,55,0,2160,2161,3,127,63,0,2161,2162,3,125,62,0,2162,2163,3,95,47,0,2163,494,1,0,0,0,2164,2165,3,117,58,0,2165,2166,3,109,54,0,2166,2167,3,87,43,0,2167,2168,3,113,56,0,2168,496,1,0,0,0,2169,2170,3,117,58,0,2170,2171,3,121,60,0,2171,2172,3,87,43,0,2172,2173,3,99,49,0,2173,2174,3,111,55,0,2174,2175,3,87,43,0,2175,498,1,0,0,0,2176,2177,3,117,58,0,2177,2178,3,121,60,0,2178,2179,3,95,47,0,2179,2180,3,91,45,0,2180,2181,3,95,47,0,2181,2182,3,93,46,0,2182,2183,3,103,51,0,2183,2184,3,113,56,0,2184,2185,3,99,49,0,2185,500,1,0,0,0,2186,2187,3,117,58,0,2187,2188,3,121,60,0,2188,2189,3,95,47,0,2189,2190,3,123,61,0,2190,2191,3,115,57,0,2191,2192,3,121,60,0,2192,2193,3,125,62,0,2193,502,1,0,0,0,2194,2195,3,117,58,0,2195,2196,3,121,60,0,2196,2197,3,103,51,0,2197,2198,3,111,55,0,2198,2199,3,87,43,0,2199,2200,3,121,60,0,2200,2201,3,135,67,0,2201,504,1,0,0,0,2202,2203,3,117,58,0,2203,2204,3,121,60,0,2204,2205,3,103,51,0,2205,2206,3,129,64,0,2206,2207,3,103,51,0,2207,2208,3,109,54,0,2208,2209,3,95,47,0,2209,2210,3,99,49,0,2210,2211,3,95,47,0,2211,2212,3,123,61,0,2212,506,1,0,0,0,2213,2214,3,117,58,0,2214,2215,3,121,60,0,2215,2216,3,115,57,0,2216,2217,3,91,45,0,2217,2218,3,95,47,0,2218,2219,3,123,61,0,2219,2220,3,123,61,0,2220,508,1,0,0,0,2221,2222,3,119,59,0,2222,2223,3,127,63,0,2223,2224,3,95,47,0,2224,2225,3,127,63,0,2225,2226,3,95,47,0,2226,510,1,0,0,0,2227,2228,3,121,60,0,2228,2229,3,87,43,0,2229,2230,3,103,51,0,2230,2231,3,123,61,0,2231,2232,3,95,47,0,2232,512,1,0,0,0,2233,2234,3,121,60,0,2234,2235,3,87,43,0,2235,2236,3,113,56,0,2236,2237,3,99,49,0,2237,2238,3,95,47,0,2238,514,1,0,0,0,2239,2240,3,121,60,0,2240,2241,3,95,47,0,2241,2242,3,93,46,0,2242,2243,3,127,63,0,2243,2244,3,91,45,0,2244,2245,3,95,47,0,2245,516,1,0,0,0,2246,2247,3,121,60,0,2247,2248,3,95,47,0,2248,2249,3,97,48,0,2249,2250,3,95,47,0,2250,2251,3,121,60,0,2251,2252,3,95,47,0,2252,2253,3,113,56,0,2253,2254,3,91,45,0,2254,2255,3,95,47,0,2255,2256,3,123,61,0,2256,518,1,0,0,0,2257,2258,3,121,60,0,2258,2259,3,95,47,0,2259,2260,3,99,49,0,2260,2261,3,95,47,0,2261,2262,3,133,66,0,2262,2263,3,117,58,0,2263,520,1,0,0,0,2264,2265,3,121,60,0,2265,2266,3,95,47,0,2266,2267,3,103,51,0,2267,2268,3,113,56,0,2268,2269,3,93,46,0,2269,2270,3,95,47,0,2270,2271,3,133,66,0,2271,522,1,0,0,0,2272,2273,3,121,60,0,2273,2274,3,95,47,0,2274,2275,3,109,54,0,2275,2276,3,95,47,0,2276,2277,3,87,43,0,2277,2278,3,123,61,0,2278,2279,3,95,47,0,2279,524,1,0,0,0,2280,2281,3,121,60,0,2281,2282,3,95,47,0,2282,2283,3,111,55,0,2283,2284,3,115,57,0,2284,2285,3,129,64,0,2285,2286,3,95,47,0,2286,526,1,0,0,0,2287,2288,3,121,60,0,2288,2289,3,95,47,0,2289,2290,3,113,56,0,2290,2291,3,87,43,0,2291,2292,3,111,55,0,2292,2293,3,95,47,0,2293,528,1,0,0,0,2294,2295,3,121,60,0,2295,2296,3,95,47,0,2296,2297,3,117,58,0,2297,2298,3,95,47,0,2298,2299,3,87,43,0,2299,2300,3,125,62,0,2300,2301,3,87,43,0,2301,2302,3,89,44,0,2302,2303,3,109,54,0,2303,2304,3,95,47,0,2304,530,1,0,0,0,2305,2306,3,121,60,0,2306,2307,3,95,47,0,2307,2308,3,117,58,0,2308,2309,3,109,54,0,2309,2310,3,87,43,0,2310,2311,3,91,45,0,2311,2312,3,95,47,0,2312,532,1,0,0,0,2313,2314,3,121,60,0,2314,2315,3,95,47,0,2315,2316,3,117,58,0,2316,2317,3,109,54,0,2317,2318,3,103,51,0,2318,2319,3,91,45,0,2319,2320,3,87,43,0,2320,2321,3,125,62,0,2321,2322,3,103,51,0,2322,2323,3,115,57,0,2323,2324,3,113,56,0,2324,534,1,0,0,0,2325,2326,3,121,60,0,2326,2327,3,95,47,0,2327,2328,3,123,61,0,2328,2329,3,95,47,0,2329,2330,3,125,62,0,2330,536,1,0,0,0,2331,2332,3,121,60,0,2332,2333,3,95,47,0,2333,2334,3,123,61,0,2334,2335,3,115,57,0,2335,2336,3,127,63,0,2336,2337,3,121,60,0,2337,2338,3,91,45,0,2338,2339,3,95,47,0,2339,538,1,0,0,0,2340,2341,3,121,60,0,2341,2342,3,95,47,0,2342,2343,3,123,61,0,2343,2344,3,117,58,0,2344,2345,3,95,47,0,2345,2346,3,91,45,0,2346,2347,3,125,62,0,2347,540,1,0,0,0,2348,2349,3,121,60,0,2349,2350,3,95,47,0,2350,2351,3,123,61,0,2351,2352,3,125,62,0,2352,2353,3,121,60,0,2353,2354,3,103,51,0,2354,2355,3,91,45,0,2355,2356,3,125,62,0,2356,542,1,0,0,0,2357,2358,3,121,60,0,2358,2359,3,95,47,0,2359,2360,3,123,61,0,2360,2361,3,127,63,0,2361,2362,3,109,54,0,2362,2363,3,125,62,0,2363,544,1,0,0,0,2364,2365,3,121,60,0,2365,2366,3,95,47,0,2366,2367,3,125,62,0,2367,2368,3,127,63,0,2368,2369,3,121,60,0,2369,2370,3,113,56,0,2370,546,1,0,0,0,2371,2372,3,121,60,0,2372,2373,3,95,47,0,2373,2374,3,125,62,0,2374,2375,3,127,63,0,2375,2376,3,121,60,0,2376,2377,3,113,56,0,2377,2378,3,103,51,0,2378,2379,3,113,56,0,2379,2380,3,99,49,0,2380,548,1,0,0,0,2381,2382,3,121,60,0,2382,2383,3,95,47,0,2383,2384,3,129,64,0,2384,2385,3,95,47,0,2385,2386,3,121,60,0,2386,2387,3,125,62,0,2387,550,1,0,0,0,2388,2389,3,121,60,0,2389,2390,3,95,47,0,2390,2391,3,129,64,0,2391,2392,3,115,57,0,2392,2393,3,107,53,0,2393,2394,3,95,47,0,2394,552,1,0,0,0,2395,2396,3,121,60,0,2396,2397,3,103,51,0,2397,2398,3,99,49,0,2398,2399,3,101,50,0,2399,2400,3,125,62,0,2400,554,1,0,0,0,2401,2402,3,121,60,0,2402,2403,3,109,54,0,2403,2404,3,103,51,0,2404,2405,3,107,53,0,2405,2406,3,95,47,0,2406,556,1,0,0,0,2407,2408,3,121,60,0,2408,2409,3,115,57,0,2409,2410,3,109,54,0,2410,2411,3,109,54,0,2411,2412,3,89,44,0,2412,2413,3,87,43,0,2413,2414,3,91,45,0,2414,2415,3,107,53,0,2415,558,1,0,0,0,2416,2417,3,121,60,0,2417,2418,3,115,57,0,2418,2419,3,109,54,0,2419,2420,3,109,54,0,2420,2421,3,127,63,0,2421,2422,3,117,58,0,2422,560,1,0,0,0,2423,2424,3,121,60,0,2424,2425,3,115,57,0,2425,2426,3,131,65,0,2426,562,1,0,0,0,2427,2428,3,121,60,0,2428,2429,3,115,57,0,2429,2430,3,131,65,0,2430,2431,3,123,61,0,2431,564,1,0,0,0,2432,2433,3,123,61,0,2433,2434,3,87,43,0,2434,2435,3,111,55,0,2435,2436,3,117,58,0,2436,2437,3,109,54,0,2437,2438,3,95,47,0,2438,566,1,0,0,0,2439,2440,3,123,61,0,2440,2441,3,87,43,0,2441,2442,3,129,64,0,2442,2443,3,95,47,0,2443,2444,3,117,58,0,2444,2445,3,115,57,0,2445,2446,3,103,51,0,2446,2447,3,113,56,0,2447,2448,3,125,62,0,2448,568,1,0,0,0,2449,2450,3,123,61,0,2450,2451,3,91,45,0,2451,2452,3,101,50,0,2452,2453,3,95,47,0,2453,2454,3,111,55,0,2454,2455,3,87,43,0,2455,570,1,0,0,0,2456,2457,3,123,61,0,2457,2458,3,95,47,0,2458,2459,3,91,45,0,2459,2460,3,115,57,0,2460,2461,3,113,56,0,2461,2462,3,93,46,0,2462,2463,3,123,61,0,2463,572,1,0,0,0,2464,2465,3,123,61,0,2465,2466,3,95,47,0,2466,2467,3,95,47,0,2467,2468,3,107,53,0,2468,574,1,0,0,0,2469,2470,3,123,61,0,2470,2471,3,95,47,0,2471,2472,3,109,54,0,2472,2473,3,95,47,0,2473,2474,3,91,45,0,2474,2475,3,125,62,0,2475,576,1,0,0,0,2476,2477,3,123,61,0,2477,2478,3,95,47,0,2478,2479,3,111,55,0,2479,2480,3,103,51,0,2480,578,1,0,0,0,2481,2482,3,123,61,0,2482,2483,3,95,47,0,2483,2484,3,125,62,0,2484,580,1,0,0,0,2485,2486,3,123,61,0,2486,2487,3,95,47,0,2487,2488,3,125,62,0,2488,2489,3,123,61,0,2489,582,1,0,0,0,2490,2491,3,123,61,0,2491,2492,3,101,50,0,2492,2493,3,115,57,0,2493,2494,3,131,65,0,2494,584,1,0,0,0,2495,2496,3,123,61,0,2496,2497,3,107,53,0,2497,2498,3,103,51,0,2498,2499,3,117,58,0,2499,586,1,0,0,0,2500,2501,3,123,61,0,2501,2502,3,115,57,0,2502,2503,3,127,63,0,2503,2504,3,121,60,0,2504,2505,3,91,45,0,2505,2506,3,95,47,0,2506,588,1,0,0,0,2507,2508,3,123,61,0,2508,2509,3,125,62,0,2509,2510,3,121,60,0,2510,2511,3,95,47,0,2511,2512,3,87,43,0,2512,2513,3,111,55,0,2513,590,1,0,0,0,2514,2515,3,123,61,0,2515,2516,3,125,62,0,2516,2517,3,121,60,0,2517,2518,3,127,63,0,2518,2519,3,91,45,0,2519,2520,3,125,62,0,2520,592,1,0,0,0,2521,2522,3,123,61,0,2522,2523,3,127,63,0,2523,2524,3,89,44,0,2524,2525,3,119,59,0,2525,2526,3,127,63,0,2526,2527,3,95,47,0,2527,2528,3,121,60,0,2528,2529,3,135,67,0,2529,594,1,0,0,0,2530,2531,3,123,61,0,2531,2532,3,127,63,0,2532,2533,3,89,44,0,2533,2534,3,123,61,0,2534,2535,3,95,47,0,2535,2536,3,125,62,0,2536,596,1,0,0,0,2537,2538,3,123,61,0,2538,2539,3,135,67,0,2539,2540,3,111,55,0,2540,2541,3,89,44,0,2541,2542,3,115,57,0,2542,2543,3,109,54,0,2543,2544,3,123,61,0,2544,598,1,0,0,0,2545,2546,3,123,61,0,2546,2547,3,135,67,0,2547,2548,3,111,55,0,2548,2549,3,111,55,0,2549,2550,3,95,47,0,2550,2551,3,125,62,0,2551,2552,3,121,60,0,2552,2553,3,103,51,0,2553,2554,3,91,45,0,2554,600,1,0,0,0,2555,2556,3,123,61,0,2556,2557,3,135,67,0,2557,2558,3,113,56,0,2558,2559,3,91,45,0,2559,602,1,0,0,0,2560,2561,3,123,61,0,2561,2562,3,135,67,0,2562,2563,3,123,61,0,2563,2564,3,125,62,0,2564,2565,3,95,47,0,2565,2566,3,111,55,0,2566,604,1,0,0,0,2567,2568,3,125,62,0,2568,2569,3,87,43,0,2569,2570,3,89,44,0,2570,2571,3,109,54,0,2571,2572,3,95,47,0,2572,606,1,0,0,0,2573,2574,3,125,62,0,2574,2575,3,87,43,0,2575,2576,3,89,44,0,2576,2577,3,109,54,0,2577,2578,3,95,47,0,2578,2579,3,123,61,0,2579,608,1,0,0,0,2580,2581,3,125,62,0,2581,2582,3,87,43,0,2582,2583,3,89,44,0,2583,2584,3,109,54,0,2584,2585,3,95,47,0,2585,2586,3,123,61,0,2586,2587,3,87,43,0,2587,2588,3,111,55,0,2588,2589,3,117,58,0,2589,2590,3,109,54,0,2590,2591,3,95,47,0,2591,610,1,0,0,0,2592,2593,3,125,62,0,2593,2594,3,87,43,0,2594,2595,3,89,44,0,2595,2596,3,109,54,0,2596,2597,3,95,47,0,2597,2598,3,123,61,0,2598,2599,3,125,62,0,2599,2600,3,115,57,0,2600,2601,3,121,60,0,2601,2602,3,95,47,0,2602,612,1,0,0,0,2603,2604,3,125,62,0,2604,2605,3,87,43,0,2605,2606,3,99,49,0,2606,2607,3,99,49,0,2607,2608,3,95,47,0,2608,2609,3,93,46,0,2609,614,1,0,0,0,2610,2611,3,125,62,0,2611,2612,3,95,47,0,2612,2613,3,111,55,0,2613,2614,3,117,58,0,2614,616,1,0,0,0,2615,2616,3,125,62,0,2616,2617,3,95,47,0,2617,2618,3,111,55,0,2618,2619,3,117,58,0,2619,2620,3,115,57,0,2620,2621,3,121,60,0,2621,2622,3,87,43,0,2622,2623,3,121,60,0,2623,2624,3,135,67,0,2624,618,1,0,0,0,2625,2626,3,125,62,0,2626,2627,3,101,50,0,2627,2628,3,95,47,0,2628,2629,3,113,56,0,2629,620,1,0,0,0,2630,2631,3,125,62,0,2631,2632,3,103,51,0,2632,2633,3,95,47,0,2633,2634,3,123,61,0,2634,622,1,0,0,0,2635,2636,3,125,62,0,2636,2637,3,115,57,0,2637,624,1,0,0,0,2638,2639,3,125,62,0,2639,2640,3,115,57,0,2640,2641,3,117,58,0,2641,2642,3,103,51,0,2642,2643,3,91,45,0,2643,626,1,0,0,0,2644,2645,3,125,62,0,2645,2646,3,121,60,0,2646,2647,3,87,43,0,2647,2648,3,113,56,0,2648,2649,3,123,61,0,2649,2650,3,87,43,0,2650,2651,3,91,45,0,2651,2652,3,125,62,0,2652,2653,3,103,51,0,2653,2654,3,115,57,0,2654,2655,3,113,56,0,2655,628,1,0,0,0,2656,2657,3,125,62,0,2657,2658,3,121,60,0,2658,2659,3,103,51,0,2659,2660,3,99,49,0,2660,2661,3,99,49,0,2661,2662,3,95,47,0,2662,2663,3,121,60,0,2663,630,1,0,0,0,2664,2665,3,125,62,0,2665,2666,3,121,60,0,2666,2667,3,127,63,0,2667,2668,3,95,47,0,2668,632,1,0,0,0,2669,2670,3,125,62,0,2670,2671,3,127,63,0,2671,2672,3,117,58,0,2672,2673,3,109,54,0,2673,2674,3,95,47,0,2674,634,1,0,0,0,2675,2676,3,125,62,0,2676,2677,3,135,67,0,2677,2678,3,117,58,0,2678,2679,3,95,47,0,2679,636,1,0,0,0,2680,2681,3,127,63,0,2681,2682,3,113,56,0,2682,2683,3,89,44,0,2683,2684,3,115,57,0,2684,2685,3,127,63,0,2685,2686,3,113,56,0,2686,2687,3,93,46,0,2687,2688,3,95,47,0,2688,2689,3,93,46,0,2689,638,1,0,0,0,2690,2691,3,127,63,0,2691,2692,3,113,56,0,2692,2693,3,91,45,0,2693,2694,3,115,57,0,2694,2695,3,113,56,0,2695,2696,3,93,46,0,2696,2697,3,103,51,0,2697,2698,3,125,62,0,2698,2699,3,103,51,0,2699,2700,3,115,57,0,2700,2701,3,113,56,0,2701,2702,3,87,43,0,2702,2703,3,109,54,0,2703,640,1,0,0,0,2704,2705,3,127,63,0,2705,2706,3,113,56,0,2706,2707,3,103,51,0,2707,2708,3,115,57,0,2708,2709,3,113,56,0,2709,642,1,0,0,0,2710,2711,3,127,63,0,2711,2712,3,113,56,0,2712,2713,3,103,51,0,2713,2714,3,119,59,0,2714,2715,3,127,63,0,2715,2716,3,95,47,0,2716,644,1,0,0,0,2717,2718,3,127,63,0,2718,2719,3,113,56,0,2719,2720,3,107,53,0,2720,2721,3,113,56,0,2721,2722,3,115,57,0,2722,2723,3,131,65,0,2723,2724,3,113,56,0,2724,646,1,0,0,0,2725,2726,3,127,63,0,2726,2727,3,113,56,0,2727,2728,3,111,55,0,2728,2729,3,87,43,0,2729,2730,3,125,62,0,2730,2731,3,91,45,0,2731,2732,3,101,50,0,2732,2733,3,95,47,0,2733,2734,3,93,46,0,2734,648,1,0,0,0,2735,2736,3,127,63,0,2736,2737,3,117,58,0,2737,2738,3,93,46,0,2738,2739,3,87,43,0,2739,2740,3,125,62,0,2740,2741,3,95,47,0,2741,650,1,0,0,0,2742,2743,3,127,63,0,2743,2744,3,117,58,0,2744,2745,3,123,61,0,2745,2746,3,95,47,0,2746,2747,3,121,60,0,2747,2748,3,125,62,0,2748,652,1,0,0,0,2749,2750,3,127,63,0,2750,2751,3,123,61,0,2751,2752,3,95,47,0,2752,654,1,0,0,0,2753,2754,3,127,63,0,2754,2755,3,123,61,0,2755,2756,3,95,47,0,2756,2757,3,121,60,0,2757,656,1,0,0,0,2758,2759,3,127,63,0,2759,2760,3,123,61,0,2760,2761,3,103,51,0,2761,2762,3,113,56,0,2762,2763,3,99,49,0,2763,658,1,0,0,0,2764,2765,3,129,64,0,2765,2766,3,87,43,0,2766,2767,3,91,45,0,2767,2768,3,127,63,0,2768,2769,3,127,63,0,2769,2770,3,111,55,0,2770,660,1,0,0,0,2771,2772,3,129,64,0,2772,2773,3,87,43,0,2773,2774,3,109,54,0,2774,2775,3,127,63,0,2775,2776,3,95,47,0,2776,2777,3,123,61,0,2777,662,1,0,0,0,2778,2779,3,129,64,0,2779,2780,3,87,43,0,2780,2781,3,121,60,0,2781,2782,3,103,51,0,2782,2783,3,87,43,0,2783,2784,3,113,56,0,2784,2785,3,125,62,0,2785,664,1,0,0,0,2786,2787,3,129,64,0,2787,2788,3,103,51,0,2788,2789,3,95,47,0,2789,2790,3,131,65,0,2790,666,1,0,0,0,2791,2792,3,129,64,0,2792,2793,3,103,51,0,2793,2794,3,121,60,0,2794,2795,3,125,62,0,2795,2796,3,127,63,0,2796,2797,3,87,43,0,2797,2798,3,109,54,0,2798,668,1,0,0,0,2799,2800,3,131,65,0,2800,2801,3,101,50,0,2801,2802,3,95,47,0,2802,2803,3,113,56,0,2803,670,1,0,0,0,2804,2805,3,131,65,0,2805,2806,3,101,50,0,2806,2807,3,95,47,0,2807,2808,3,121,60,0,2808,2809,3,95,47,0,2809,672,1,0,0,0,2810,2811,3,131,65,0,2811,2812,3,103,51,0,2812,2813,3,113,56,0,2813,2814,3,93,46,0,2814,2815,3,115,57,0,2815,2816,3,131,65,0,2816,674,1,0,0,0,2817,2818,3,131,65,0,2818,2819,3,103,51,0,2819,2820,3,125,62,0,2820,2821,3,101,50,0,2821,676,1,0,0,0,2822,2823,3,131,65,0,2823,2824,3,103,51,0,2824,2825,3,125,62,0,2825,2826,3,101,50,0,2826,2827,3,115,57,0,2827,2828,3,127,63,0,2828,2829,3,125,62,0,2829,678,1,0,0,0,2830,2831,3,131,65,0,2831,2832,3,121,60,0,2832,2833,3,87,43,0,2833,2834,3,117,58,0,2834,2835,3,117,58,0,2835,2836,3,95,47,0,2836,2837,3,121,60,0,2837,680,1,0,0,0,2838,2839,3,133,66,0,2839,2840,3,115,57,0,2840,2841,3,121,60,0,2841,682,1,0,0,0,2842,2847,8,26,0,0,2843,2844,3,43,21,0,2844,2845,9,0,0,0,2845,2847,1,0,0,0,2846,2842,1,0,0,0,2846,2843,1,0,0,0,2847,684,1,0,0,0,2848,2853,8,27,0,0,2849,2850,3,43,21,0,2850,2851,9,0,0,0,2851,2853,1,0,0,0,2852,2848,1,0,0,0,2852,2849,1,0,0,0,2853,686,1,0,0,0,2854,2858,3,69,34,0,2855,2857,3,683,341,0,2856,2855,1,0,0,0,2857,2860,1,0,0,0,2858,2856,1,0,0,0,2858,2859,1,0,0,0,2859,2861,1,0,0,0,2860,2858,1,0,0,0,2861,2862,3,69,34,0,2862,688,1,0,0,0,2863,2867,3,67,33,0,2864,2866,3,685,342,0,2865,2864,1,0,0,0,2866,2869,1,0,0,0,2867,2865,1,0,0,0,2867,2868,1,0,0,0,2868,2870,1,0,0,0,2869,2867,1,0,0,0,2870,2871,3,67,33,0,2871,690,1,0,0,0,2872,2876,3,63,31,0,2873,2875,9,0,0,0,2874,2873,1,0,0,0,2875,2878,1,0,0,0,2876,2877,1,0,0,0,2876,2874,1,0,0,0,2877,2879,1,0,0,0,2878,2876,1,0,0,0,2879,2880,3,63,31,0,2880,2882,1,0,0,0,2881,2872,1,0,0,0,2882,2883,1,0,0,0,2883,2881,1,0,0,0,2883,2884,1,0,0,0,2884,2886,1,0,0,0,2885,2887,3,61,30,0,2886,2885,1,0,0,0,2886,2887,1,0,0,0,2887,692,1,0,0,0,2888,2892,3,687,343,0,2889,2892,3,689,344,0,2890,2892,3,691,345,0,2891,2888,1,0,0,0,2891,2889,1,0,0,0,2891,2890,1,0,0,0,2892,2903,1,0,0,0,2893,2904,3,123,61,0,2894,2904,3,127,63,0,2895,2904,3,135,67,0,2896,2904,3,105,52,0,2897,2901,3,117,58,0,2898,2902,3,125,62,0,2899,2902,3,89,44,0,2900,2902,3,129,64,0,2901,2898,1,0,0,0,2901,2899,1,0,0,0,2901,2900,1,0,0,0,2901,2902,1,0,0,0,2902,2904,1,0,0,0,2903,2893,1,0,0,0,2903,2894,1,0,0,0,2903,2895,1,0,0,0,2903,2896,1,0,0,0,2903,2897,1,0,0,0,2903,2904,1,0,0,0,2904,694,1,0,0,0,2905,2910,7,28,0,0,2906,2909,7,28,0,0,2907,2909,3,701,350,0,2908,2906,1,0,0,0,2908,2907,1,0,0,0,2909,2912,1,0,0,0,2910,2908,1,0,0,0,2910,2911,1,0,0,0,2911,696,1,0,0,0,2912,2910,1,0,0,0,2913,2914,5,96,0,0,2914,2919,5,96,0,0,2915,2916,5,92,0,0,2916,2919,5,96,0,0,2917,2919,8,29,0,0,2918,2913,1,0,0,0,2918,2915,1,0,0,0,2918,2917,1,0,0,0,2919,698,1,0,0,0,2920,2924,3,71,35,0,2921,2923,3,697,348,0,2922,2921,1,0,0,0,2923,2926,1,0,0,0,2924,2922,1,0,0,0,2924,2925,1,0,0,0,2925,2927,1,0,0,0,2926,2924,1,0,0,0,2927,2928,3,71,35,0,2928,700,1,0,0,0,2929,2930,2,48,57,0,2930,702,1,0,0,0,2931,2932,7,30,0,0,2932,704,1,0,0,0,2933,2934,5,48,0,0,2934,2936,3,133,66,0,2935,2937,3,703,351,0,2936,2935,1,0,0,0,2937,2938,1,0,0,0,2938,2936,1,0,0,0,2938,2939,1,0,0,0,2939,706,1,0,0,0,2940,2941,5,48,0,0,2941,2943,3,115,57,0,2942,2944,2,48,56,0,2943,2942,1,0,0,0,2944,2945,1,0,0,0,2945,2943,1,0,0,0,2945,2946,1,0,0,0,2946,708,1,0,0,0,2947,2948,5,48,0,0,2948,2950,3,89,44,0,2949,2951,2,48,49,0,2950,2949,1,0,0,0,2951,2952,1,0,0,0,2952,2950,1,0,0,0,2952,2953,1,0,0,0,2953,710,1,0,0,0,2954,2956,3,701,350,0,2955,2954,1,0,0,0,2956,2957,1,0,0,0,2957,2955,1,0,0,0,2957,2958,1,0,0,0,2958,712,1,0,0,0,2959,2964,3,711,355,0,2960,2964,3,705,352,0,2961,2964,3,707,353,0,2962,2964,3,709,354,0,2963,2959,1,0,0,0,2963,2960,1,0,0,0,2963,2961,1,0,0,0,2963,2962,1,0,0,0,2964,714,1,0,0,0,2965,2968,3,713,356,0,2966,2969,3,117,58,0,2967,2969,3,127,63,0,2968,2966,1,0,0,0,2968,2967,1,0,0,0,2968,2969,1,0,0,0,2969,2976,1,0,0,0,2970,2977,3,109,54,0,2971,2977,3,123,61,0,2972,2977,3,125,62,0,2973,2977,3,103,51,0,2974,2977,3,89,44,0,2975,2977,3,113,56,0,2976,2970,1,0,0,0,2976,2971,1,0,0,0,2976,2972,1,0,0,0,2976,2973,1,0,0,0,2976,2974,1,0,0,0,2976,2975,1,0,0,0,2976,2977,1,0,0,0,2977,716,1,0,0,0,2978,2981,3,95,47,0,2979,2982,3,33,16,0,2980,2982,3,35,17,0,2981,2979,1,0,0,0,2981,2980,1,0,0,0,2981,2982,1,0,0,0,2982,2983,1,0,0,0,2983,2984,3,711,355,0,2984,718,1,0,0,0,2985,2986,3,711,355,0,2986,2990,3,49,24,0,2987,2989,3,701,350,0,2988,2987,1,0,0,0,2989,2992,1,0,0,0,2990,2988,1,0,0,0,2990,2991,1,0,0,0,2991,2994,1,0,0,0,2992,2990,1,0,0,0,2993,2995,3,717,358,0,2994,2993,1,0,0,0,2994,2995,1,0,0,0,2995,3e3,1,0,0,0,2996,2997,3,711,355,0,2997,2998,3,717,358,0,2998,3e3,1,0,0,0,2999,2985,1,0,0,0,2999,2996,1,0,0,0,3e3,3009,1,0,0,0,3001,3010,3,97,48,0,3002,3007,3,117,58,0,3003,3004,3,97,48,0,3004,3005,7,31,0,0,3005,3008,1,0,0,0,3006,3008,3,113,56,0,3007,3003,1,0,0,0,3007,3006,1,0,0,0,3007,3008,1,0,0,0,3008,3010,1,0,0,0,3009,3001,1,0,0,0,3009,3002,1,0,0,0,3009,3010,1,0,0,0,3010,720,1,0,0,0,3011,3012,3,133,66,0,3012,3014,3,69,34,0,3013,3015,3,703,351,0,3014,3013,1,0,0,0,3015,3016,1,0,0,0,3016,3014,1,0,0,0,3016,3017,1,0,0,0,3017,3018,1,0,0,0,3018,3019,3,69,34,0,3019,722,1,0,0,0,3020,3021,5,47,0,0,3021,3022,5,42,0,0,3022,3026,1,0,0,0,3023,3025,9,0,0,0,3024,3023,1,0,0,0,3025,3028,1,0,0,0,3026,3027,1,0,0,0,3026,3024,1,0,0,0,3027,3029,1,0,0,0,3028,3026,1,0,0,0,3029,3030,5,42,0,0,3030,3031,5,47,0,0,3031,724,1,0,0,0,3032,3033,5,45,0,0,3033,3034,5,45,0,0,3034,3038,1,0,0,0,3035,3037,8,32,0,0,3036,3035,1,0,0,0,3037,3040,1,0,0,0,3038,3036,1,0,0,0,3038,3039,1,0,0,0,3039,3046,1,0,0,0,3040,3038,1,0,0,0,3041,3043,5,13,0,0,3042,3044,5,10,0,0,3043,3042,1,0,0,0,3043,3044,1,0,0,0,3044,3047,1,0,0,0,3045,3047,7,33,0,0,3046,3041,1,0,0,0,3046,3045,1,0,0,0,3047,726,1,0,0,0,3048,3049,7,34,0,0,3049,3050,1,0,0,0,3050,3051,6,363,0,0,3051,728,1,0,0,0,3052,3055,3,723,361,0,3053,3055,3,725,362,0,3054,3052,1,0,0,0,3054,3053,1,0,0,0,3055,3056,1,0,0,0,3056,3057,6,364,1,0,3057,730,1,0,0,0,34,0,2846,2852,2858,2867,2876,2883,2886,2891,2901,2903,2908,2910,2918,2924,2938,2945,2952,2957,2963,2968,2976,2981,2990,2994,2999,3007,3009,3016,3026,3038,3043,3046,3054,2,0,1,0,6,0,0],qi.vocabulary=new Ra(qi.literalNames,qi.symbolicNames,[]),qi.decisionsToDFA=qi._ATN.decisionToState.map(((t,e)=>new ni(t,e))),qi),tf=(ji=class t extends Cc{get grammarFileName(){return"YQL.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}createFailedPredicateException(t,e){return new Sc(this,t,e)}constructor(e){super(e),this.interpreter=new Ai(this,t._ATN,t.decisionsToDFA,new Si)}sql_query(){let e=new ef(this.context,this.state);this.enterRule(e,0,t.RULE_sql_query);try{switch(this.state=811,this.errorHandler.sync(this),this.interpreter.adaptivePredict(this.tokenStream,0,this.context)){case 1:this.enterOuterAlt(e,1),this.state=806,this.sql_stmt_list();break;case 2:this.enterOuterAlt(e,2),this.state=807,this.match(t.PRAGMA),this.state=808,this.match(t.ANSI),this.state=809,this.match(t.DIGITS),this.state=810,this.ansi_sql_stmt_list()}}catch(s){if(!(s instanceof jr))throw s;this.errorHandler.reportError(this,s),this.errorHandler.recover(this,s)}finally{this.exitRule()}return e}sql_stmt_list(){let e,s=new sf(this.context,this.state);this.enterRule(s,2,t.RULE_sql_stmt_list);try{let a;for(this.enterOuterAlt(s,1),this.state=816,this.errorHandler.sync(this),e=this.tokenStream.LA(1);24===e;)this.state=813,this.match(t.SEMICOLON),this.state=818,this.errorHandler.sync(this),e=this.tokenStream.LA(1);for(this.state=819,this.sql_stmt(),this.state=828,this.errorHandler.sync(this),a=this.interpreter.adaptivePredict(this.tokenStream,3,this.context);2!==a&&a!==ja.INVALID_ALT_NUMBER;){if(1===a){this.state=821,this.errorHandler.sync(this),e=this.tokenStream.LA(1);do{this.state=820,this.match(t.SEMICOLON),this.state=823,this.errorHandler.sync(this),e=this.tokenStream.LA(1)}while(24===e);this.state=825,this.sql_stmt()}this.state=830,this.errorHandler.sync(this),a=this.interpreter.adaptivePredict(this.tokenStream,3,this.context)}for(this.state=834,this.errorHandler.sync(this),e=this.tokenStream.LA(1);24===e;)this.state=831,this.match(t.SEMICOLON),this.state=836,this.errorHandler.sync(this),e=this.tokenStream.LA(1);this.state=837,this.match(t.EOF)}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}ansi_sql_stmt_list(){let e,s=new af(this.context,this.state);this.enterRule(s,4,t.RULE_ansi_sql_stmt_list);try{for(this.enterOuterAlt(s,1),this.state=842,this.errorHandler.sync(this),e=this.tokenStream.LA(1);24===e;)this.state=839,this.match(t.SEMICOLON),this.state=844,this.errorHandler.sync(this),e=this.tokenStream.LA(1);this.state=845,this.match(t.EOF)}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}lambda_body(){let e,s=new rf(this.context,this.state);this.enterRule(s,6,t.RULE_lambda_body);try{for(this.enterOuterAlt(s,1),this.state=850,this.errorHandler.sync(this),e=this.tokenStream.LA(1);24===e;)this.state=847,this.match(t.SEMICOLON),this.state=852,this.errorHandler.sync(this),e=this.tokenStream.LA(1);for(this.state=861,this.errorHandler.sync(this),e=this.tokenStream.LA(1);33===e||158===e;){this.state=853,this.lambda_stmt(),this.state=855,this.errorHandler.sync(this),e=this.tokenStream.LA(1);do{this.state=854,this.match(t.SEMICOLON),this.state=857,this.errorHandler.sync(this),e=this.tokenStream.LA(1)}while(24===e);this.state=863,this.errorHandler.sync(this),e=this.tokenStream.LA(1)}for(this.state=864,this.match(t.RETURN),this.state=865,this.expr(),this.state=869,this.errorHandler.sync(this),e=this.tokenStream.LA(1);24===e;)this.state=866,this.match(t.SEMICOLON),this.state=871,this.errorHandler.sync(this),e=this.tokenStream.LA(1)}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}lambda_stmt(){let e=new cf(this.context,this.state);this.enterRule(e,8,t.RULE_lambda_stmt);try{switch(this.state=874,this.errorHandler.sync(this),this.tokenStream.LA(1)){case t.DOLLAR:this.enterOuterAlt(e,1),this.state=872,this.named_nodes_stmt();break;case t.IMPORT:this.enterOuterAlt(e,2),this.state=873,this.import_stmt();break;default:throw new Ei(this)}}catch(s){if(!(s instanceof jr))throw s;this.errorHandler.reportError(this,s),this.errorHandler.recover(this,s)}finally{this.exitRule()}return e}sql_stmt(){let e,s=new nf(this.context,this.state);this.enterRule(s,10,t.RULE_sql_stmt);try{this.enterOuterAlt(s,1),this.state=881,this.errorHandler.sync(this),e=this.tokenStream.LA(1),129===e&&(this.state=876,this.match(t.EXPLAIN),this.state=879,this.errorHandler.sync(this),e=this.tokenStream.LA(1),1===e&&(this.state=877,this.match(t.QUERY),this.state=878,this.match(t.PLAN))),this.state=883,this.sql_stmt_core()}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}sql_stmt_core(){let e=new hf(this.context,this.state);this.enterRule(e,12,t.RULE_sql_stmt_core);try{switch(this.state=929,this.errorHandler.sync(this),this.interpreter.adaptivePredict(this.tokenStream,13,this.context)){case 1:this.enterOuterAlt(e,1),this.state=885,this.pragma_stmt();break;case 2:this.enterOuterAlt(e,2),this.state=886,this.select_stmt();break;case 3:this.enterOuterAlt(e,3),this.state=887,this.named_nodes_stmt();break;case 4:this.enterOuterAlt(e,4),this.state=888,this.create_table_stmt();break;case 5:this.enterOuterAlt(e,5),this.state=889,this.drop_table_stmt();break;case 6:this.enterOuterAlt(e,6),this.state=890,this.use_stmt();break;case 7:this.enterOuterAlt(e,7),this.state=891,this.into_table_stmt();break;case 8:this.enterOuterAlt(e,8),this.state=892,this.commit_stmt();break;case 9:this.enterOuterAlt(e,9),this.state=893,this.update_stmt();break;case 10:this.enterOuterAlt(e,10),this.state=894,this.delete_stmt();break;case 11:this.enterOuterAlt(e,11),this.state=895,this.rollback_stmt();break;case 12:this.enterOuterAlt(e,12),this.state=896,this.declare_stmt();break;case 13:this.enterOuterAlt(e,13),this.state=897,this.import_stmt();break;case 14:this.enterOuterAlt(e,14),this.state=898,this.export_stmt();break;case 15:this.enterOuterAlt(e,15),this.state=899,this.alter_table_stmt();break;case 16:this.enterOuterAlt(e,16),this.state=900,this.alter_external_table_stmt();break;case 17:this.enterOuterAlt(e,17),this.state=901,this.do_stmt();break;case 18:this.enterOuterAlt(e,18),this.state=902,this.define_action_or_subquery_stmt();break;case 19:this.enterOuterAlt(e,19),this.state=903,this.if_stmt();break;case 20:this.enterOuterAlt(e,20),this.state=904,this.for_stmt();break;case 21:this.enterOuterAlt(e,21),this.state=905,this.values_stmt();break;case 22:this.enterOuterAlt(e,22),this.state=906,this.create_user_stmt();break;case 23:this.enterOuterAlt(e,23),this.state=907,this.alter_user_stmt();break;case 24:this.enterOuterAlt(e,24),this.state=908,this.create_group_stmt();break;case 25:this.enterOuterAlt(e,25),this.state=909,this.alter_group_stmt();break;case 26:this.enterOuterAlt(e,26),this.state=910,this.drop_role_stmt();break;case 27:this.enterOuterAlt(e,27),this.state=911,this.create_object_stmt();break;case 28:this.enterOuterAlt(e,28),this.state=912,this.alter_object_stmt();break;case 29:this.enterOuterAlt(e,29),this.state=913,this.drop_object_stmt();break;case 30:this.enterOuterAlt(e,30),this.state=914,this.create_external_data_source_stmt();break;case 31:this.enterOuterAlt(e,31),this.state=915,this.alter_external_data_source_stmt();break;case 32:this.enterOuterAlt(e,32),this.state=916,this.drop_external_data_source_stmt();break;case 33:this.enterOuterAlt(e,33),this.state=917,this.create_replication_stmt();break;case 34:this.enterOuterAlt(e,34),this.state=918,this.drop_replication_stmt();break;case 35:this.enterOuterAlt(e,35),this.state=919,this.create_topic_stmt();break;case 36:this.enterOuterAlt(e,36),this.state=920,this.alter_topic_stmt();break;case 37:this.enterOuterAlt(e,37),this.state=921,this.drop_topic_stmt();break;case 38:this.enterOuterAlt(e,38),this.state=922,this.grant_permissions_stmt();break;case 39:this.enterOuterAlt(e,39),this.state=923,this.revoke_permissions_stmt();break;case 40:this.enterOuterAlt(e,40),this.state=924,this.alter_table_store_stmt();break;case 41:this.enterOuterAlt(e,41),this.state=925,this.upsert_object_stmt();break;case 42:this.enterOuterAlt(e,42),this.state=926,this.create_view_stmt();break;case 43:this.enterOuterAlt(e,43),this.state=927,this.drop_view_stmt();break;case 44:this.enterOuterAlt(e,44),this.state=928,this.alter_replication_stmt()}}catch(s){if(!(s instanceof jr))throw s;this.errorHandler.reportError(this,s),this.errorHandler.recover(this,s)}finally{this.exitRule()}return e}expr(){let e,s=new Ef(this.context,this.state);this.enterRule(s,14,t.RULE_expr);try{switch(this.state=940,this.errorHandler.sync(this),this.interpreter.adaptivePredict(this.tokenStream,15,this.context)){case 1:for(this.enterOuterAlt(s,1),this.state=931,this.or_subexpr(),this.state=936,this.errorHandler.sync(this),e=this.tokenStream.LA(1);209===e;)this.state=932,this.match(t.OR),this.state=933,this.or_subexpr(),this.state=938,this.errorHandler.sync(this),e=this.tokenStream.LA(1);break;case 2:this.enterOuterAlt(s,2),this.state=939,this.type_name_composite()}}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}or_subexpr(){let e,s=new Tf(this.context,this.state);this.enterRule(s,16,t.RULE_or_subexpr);try{for(this.enterOuterAlt(s,1),this.state=942,this.and_subexpr(),this.state=947,this.errorHandler.sync(this),e=this.tokenStream.LA(1);51===e;)this.state=943,this.match(t.AND),this.state=944,this.and_subexpr(),this.state=949,this.errorHandler.sync(this),e=this.tokenStream.LA(1)}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}and_subexpr(){let e,s=new of(this.context,this.state);this.enterRule(s,18,t.RULE_and_subexpr);try{for(this.enterOuterAlt(s,1),this.state=950,this.xor_subexpr(),this.state=955,this.errorHandler.sync(this),e=this.tokenStream.LA(1);315===e;)this.state=951,this.match(t.XOR),this.state=952,this.xor_subexpr(),this.state=957,this.errorHandler.sync(this),e=this.tokenStream.LA(1)}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}xor_subexpr(){let e,s=new Rf(this.context,this.state);this.enterRule(s,20,t.RULE_xor_subexpr);try{this.enterOuterAlt(s,1),this.state=958,this.eq_subexpr(),this.state=960,this.errorHandler.sync(this),e=this.tokenStream.LA(1),(!(-32&e)&&1<'","'<'","'<='","'>'","'>='","'<<'","'|<<'","'&'","'|'","'||'","'<|'","'|>'","'+'","'-'","'~'","'*'","'/'","''","'%'","';'","'.'","','","'('","')'","'?'","':'","'@'","'@@'","'$'","'\"'","'''","'`'","'{'","'}'","'^'","'::'","'->'","']'","'['"],ji.symbolicNames=[null,"QUERY","EQUALS","EQUALS2","NOT_EQUALS","NOT_EQUALS2","LESS","LESS_OR_EQ","GREATER","GREATER_OR_EQ","SHIFT_LEFT","ROT_LEFT","AMPERSAND","PIPE","DOUBLE_PIPE","STRUCT_OPEN","STRUCT_CLOSE","PLUS","MINUS","TILDA","ASTERISK","SLASH","BACKSLASH","PERCENT","SEMICOLON","DOT","COMMA","LPAREN","RPAREN","QUESTION","COLON","AT","DOUBLE_AT","DOLLAR","QUOTE_DOUBLE","QUOTE_SINGLE","BACKTICK","LBRACE_CURLY","RBRACE_CURLY","CARET","NAMESPACE","ARROW","RBRACE_SQUARE","LBRACE_SQUARE","ABORT","ACTION","ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANSI","ANY","ARRAY","AS","ASC","ASSUME","ASYMMETRIC","ASYNC","ATTACH","ATTRIBUTES","AUTOINCREMENT","AUTOMAP","BEFORE","BEGIN","BERNOULLI","BETWEEN","BITCAST","BY","CALLABLE","CASCADE","CASE","CAST","CHANGEFEED","CHECK","COLLATE","COLUMN","COLUMNS","COMMIT","COMPACT","CONDITIONAL","CONFLICT","CONNECT","CONSTRAINT","CONSUMER","COVER","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATA","DATABASE","DECIMAL","DECLARE","DEFAULT","DEFERRABLE","DEFERRED","DEFINE","DELETE","DESC","DESCRIBE","DETACH","DICT","DIRECTORY","DISABLE","DISCARD","DISTINCT","DO","DROP","EACH","ELSE","EMPTY","EMPTY_ACTION","ENCRYPTED","END","ENUM","ERASE","ERROR","ESCAPE","EVALUATE","EXCEPT","EXCLUDE","EXCLUSION","EXCLUSIVE","EXISTS","EXPLAIN","EXPORT","EXTERNAL","FAIL","FALSE","FAMILY","FILTER","FIRST","FLATTEN","FLOW","FOLLOWING","FOR","FOREIGN","FROM","FULL","FUNCTION","GLOB","GLOBAL","GRANT","GROUP","GROUPING","GROUPS","HASH","HAVING","HOP","IF","IGNORE","ILIKE","IMMEDIATE","IMPORT","IN","INDEX","INDEXED","INHERITS","INITIAL","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","JSON_EXISTS","JSON_QUERY","JSON_VALUE","KEY","LAST","LEFT","LEGACY","LIKE","LIMIT","LIST","LOCAL","MANAGE","MATCH","MATCHES","MATCH_RECOGNIZE","MEASURES","MICROSECONDS","MILLISECONDS","MODIFY","NANOSECONDS","NATURAL","NEXT","NO","NOT","NOTNULL","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OPTIONAL","OR","ORDER","OTHERS","OUTER","OVER","PARALLEL","PARTITION","PASSING","PASSWORD","PAST","PATTERN","PER","PERMUTE","PLAN","PRAGMA","PRECEDING","PRESORT","PRIMARY","PRIVILEGES","PROCESS","QUEUE","RAISE","RANGE","REDUCE","REFERENCES","REGEXP","REINDEX","RELEASE","REMOVE","RENAME","REPEATABLE","REPLACE","REPLICATION","RESET","RESOURCE","RESPECT","RESTRICT","RESULT","RETURN","RETURNING","REVERT","REVOKE","RIGHT","RLIKE","ROLLBACK","ROLLUP","ROW","ROWS","SAMPLE","SAVEPOINT","SCHEMA","SECONDS","SEEK","SELECT","SEMI","SET","SETS","SHOW","SKIP_RULE","SOURCE","STREAM","STRUCT","SUBQUERY","SUBSET","SYMBOLS","SYMMETRIC","SYNC","SYSTEM","TABLE","TABLES","TABLESAMPLE","TABLESTORE","TAGGED","TEMP","TEMPORARY","THEN","TIES","TO","TOPIC","TRANSACTION","TRIGGER","TRUE","TUPLE","TYPE","UNBOUNDED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UPDATE","UPSERT","USE","USER","USING","VACUUM","VALUES","VARIANT","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT","WRAPPER","XOR","STRING_VALUE","ID_PLAIN","ID_QUOTED","DIGITS","INTEGER_VALUE","REAL","BLOB","WS","COMMENT"],ji.ruleNames=["sql_query","sql_stmt_list","ansi_sql_stmt_list","lambda_body","lambda_stmt","sql_stmt","sql_stmt_core","expr","or_subexpr","and_subexpr","xor_subexpr","distinct_from_op","cond_expr","match_op","eq_subexpr","shift_right","rot_right","double_question","neq_subexpr","bit_subexpr","add_subexpr","mul_subexpr","con_subexpr","unary_op","unary_subexpr_suffix","unary_casual_subexpr","in_unary_casual_subexpr","unary_subexpr","in_unary_subexpr","list_literal","expr_dict_list","dict_literal","expr_struct_list","struct_literal","atom_expr","in_atom_expr","cast_expr","bitcast_expr","exists_expr","case_expr","lambda","in_expr","json_api_expr","jsonpath_spec","json_variable_name","json_variable","json_variables","json_common_args","json_case_handler","json_value","json_exists_handler","json_exists","json_query_wrapper","json_query_handler","json_query","smart_parenthesis","expr_list","pure_column_list","pure_column_or_named","pure_column_or_named_list","column_name","without_column_name","column_list","without_column_list","named_expr","named_expr_list","invoke_expr","invoke_expr_tail","using_call_expr","key_expr","when_expr","literal_value","bind_parameter","opt_bind_parameter","bind_parameter_list","named_bind_parameter","named_bind_parameter_list","signed_number","type_name_simple","integer_or_bind","type_name_tag","struct_arg","struct_arg_positional","variant_arg","callable_arg","callable_arg_list","type_name_decimal","type_name_optional","type_name_tuple","type_name_struct","type_name_variant","type_name_list","type_name_stream","type_name_flow","type_name_dict","type_name_set","type_name_enum","type_name_resource","type_name_tagged","type_name_callable","type_name_composite","type_name","type_name_or_bind","value_constructor_literal","value_constructor","declare_stmt","module_path","import_stmt","export_stmt","call_action","inline_action","do_stmt","pragma_stmt","pragma_value","sort_specification","sort_specification_list","select_stmt","select_unparenthesized_stmt","select_kind_parenthesis","select_op","select_kind_partial","select_kind","process_core","external_call_param","external_call_settings","reduce_core","opt_set_quantifier","select_core","row_pattern_recognition_clause","row_pattern_rows_per_match","row_pattern_empty_match_handling","row_pattern_measures","row_pattern_measure_list","row_pattern_measure_definition","row_pattern_common_syntax","row_pattern_skip_to","row_pattern_skip_to_variable_name","row_pattern_initial_or_seek","row_pattern","row_pattern_term","row_pattern_factor","row_pattern_quantifier","row_pattern_primary","row_pattern_primary_variable_name","row_pattern_permute","row_pattern_subset_clause","row_pattern_subset_list","row_pattern_subset_item","row_pattern_subset_item_variable_name","row_pattern_subset_rhs","row_pattern_subset_rhs_variable_name","row_pattern_definition_list","row_pattern_definition","row_pattern_definition_variable_name","row_pattern_definition_search_condition","search_condition","row_pattern_variable_name","order_by_clause","ext_order_by_clause","group_by_clause","grouping_element_list","grouping_element","ordinary_grouping_set","ordinary_grouping_set_list","rollup_list","cube_list","grouping_sets_specification","hopping_window_specification","result_column","join_source","named_column","flatten_by_arg","flatten_source","named_single_source","single_source","sample_clause","tablesample_clause","sampling_mode","repeatable_clause","join_op","join_constraint","returning_columns_list","into_table_stmt","into_table_stmt_yq","into_values_source","values_stmt","values_source","values_source_row_list","values_source_row","simple_values_source","create_external_data_source_stmt","alter_external_data_source_stmt","alter_external_data_source_action","drop_external_data_source_stmt","create_view_stmt","drop_view_stmt","upsert_object_stmt","create_object_stmt","create_object_features","alter_object_stmt","alter_object_features","drop_object_stmt","drop_object_features","object_feature_value","object_feature_kv","object_feature_flag","object_feature","object_features","object_type_ref","create_table_stmt","create_table_entry","table_inherits","table_partition_by","with_table_settings","table_tablestore","table_settings_entry","table_as_source","alter_table_stmt","alter_table_action","alter_external_table_stmt","alter_external_table_action","alter_table_store_stmt","alter_table_store_action","alter_table_add_column","alter_table_drop_column","alter_table_alter_column","alter_table_add_column_family","alter_table_alter_column_family","alter_table_set_table_setting_uncompat","alter_table_set_table_setting_compat","alter_table_reset_table_setting","alter_table_add_index","alter_table_drop_index","alter_table_rename_to","alter_table_rename_index_to","alter_table_add_changefeed","alter_table_alter_changefeed","alter_table_drop_changefeed","column_schema","family_relation","opt_column_constraints","column_order_by_specification","table_constraint","table_index","table_index_type","global_index","local_index","changefeed","changefeed_settings","changefeed_settings_entry","changefeed_setting_value","changefeed_alter_settings","alter_table_setting_entry","table_setting_value","family_entry","family_settings","family_settings_entry","family_setting_value","split_boundaries","literal_value_list","drop_table_stmt","create_user_stmt","alter_user_stmt","create_group_stmt","alter_group_stmt","drop_role_stmt","role_name","create_user_option","grant_permissions_stmt","revoke_permissions_stmt","permission_id","permission_name","permission_name_target","create_replication_stmt","replication_target","replication_settings","replication_settings_entry","alter_replication_stmt","alter_replication_action","alter_replication_set_setting","drop_replication_stmt","action_or_subquery_args","define_action_or_subquery_stmt","define_action_or_subquery_body","if_stmt","for_stmt","table_ref","table_key","table_arg","table_hints","table_hint","object_ref","simple_table_ref_core","simple_table_ref","into_simple_table_ref","delete_stmt","update_stmt","set_clause_choice","set_clause_list","set_clause","set_target","multiple_column_assignment","set_target_list","create_topic_stmt","create_topic_entries","create_topic_entry","with_topic_settings","alter_topic_stmt","alter_topic_action","alter_topic_add_consumer","topic_create_consumer_entry","alter_topic_alter_consumer","alter_topic_alter_consumer_entry","alter_topic_drop_consumer","topic_alter_consumer_set","topic_alter_consumer_reset","alter_topic_set_settings","alter_topic_reset_settings","drop_topic_stmt","topic_settings","topic_settings_entry","topic_setting_value","topic_consumer_with_settings","topic_consumer_settings","topic_consumer_settings_entry","topic_consumer_setting_value","topic_ref","topic_consumer_ref","null_treatment","filter_clause","window_name_or_specification","window_name","window_clause","window_definition_list","window_definition","new_window_name","window_specification","window_specification_details","existing_window_name","window_partition_clause","window_order_clause","window_frame_clause","window_frame_units","window_frame_extent","window_frame_between","window_frame_bound","window_frame_exclusion","use_stmt","subselect_stmt","named_nodes_stmt","commit_stmt","rollback_stmt","identifier","id","id_schema","id_expr","id_expr_in","id_window","id_table","id_without","id_hint","id_as_compat","an_id","an_id_or_type","an_id_schema","an_id_expr","an_id_expr_in","an_id_window","an_id_table","an_id_without","an_id_hint","an_id_pure","an_id_as_compat","view_name","opt_id_prefix","cluster_expr","id_or_type","opt_id_prefix_or_type","id_or_at","id_table_or_type","id_table_or_at","keyword","keyword_expr_uncompat","keyword_table_uncompat","keyword_select_uncompat","keyword_alter_uncompat","keyword_in_uncompat","keyword_window_uncompat","keyword_hint_uncompat","keyword_as_compat","keyword_compat","type_id","bool_value","real","integer","sql_query_yq","sql_stmt_list_yq","sql_stmt_yq","sql_stmt_core_yq","replication_name","where_expr","from_stmt","alter_table_for_autocomplete"],ji._serializedATN=[4,1,324,4277,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,2,265,7,265,2,266,7,266,2,267,7,267,2,268,7,268,2,269,7,269,2,270,7,270,2,271,7,271,2,272,7,272,2,273,7,273,2,274,7,274,2,275,7,275,2,276,7,276,2,277,7,277,2,278,7,278,2,279,7,279,2,280,7,280,2,281,7,281,2,282,7,282,2,283,7,283,2,284,7,284,2,285,7,285,2,286,7,286,2,287,7,287,2,288,7,288,2,289,7,289,2,290,7,290,2,291,7,291,2,292,7,292,2,293,7,293,2,294,7,294,2,295,7,295,2,296,7,296,2,297,7,297,2,298,7,298,2,299,7,299,2,300,7,300,2,301,7,301,2,302,7,302,2,303,7,303,2,304,7,304,2,305,7,305,2,306,7,306,2,307,7,307,2,308,7,308,2,309,7,309,2,310,7,310,2,311,7,311,2,312,7,312,2,313,7,313,2,314,7,314,2,315,7,315,2,316,7,316,2,317,7,317,2,318,7,318,2,319,7,319,2,320,7,320,2,321,7,321,2,322,7,322,2,323,7,323,2,324,7,324,2,325,7,325,2,326,7,326,2,327,7,327,2,328,7,328,2,329,7,329,2,330,7,330,2,331,7,331,2,332,7,332,2,333,7,333,2,334,7,334,2,335,7,335,2,336,7,336,2,337,7,337,2,338,7,338,2,339,7,339,2,340,7,340,2,341,7,341,2,342,7,342,2,343,7,343,2,344,7,344,2,345,7,345,2,346,7,346,2,347,7,347,2,348,7,348,2,349,7,349,2,350,7,350,2,351,7,351,2,352,7,352,2,353,7,353,2,354,7,354,2,355,7,355,2,356,7,356,2,357,7,357,2,358,7,358,2,359,7,359,2,360,7,360,2,361,7,361,2,362,7,362,2,363,7,363,2,364,7,364,2,365,7,365,2,366,7,366,2,367,7,367,2,368,7,368,2,369,7,369,2,370,7,370,2,371,7,371,2,372,7,372,2,373,7,373,2,374,7,374,2,375,7,375,2,376,7,376,2,377,7,377,2,378,7,378,2,379,7,379,2,380,7,380,2,381,7,381,2,382,7,382,2,383,7,383,2,384,7,384,2,385,7,385,2,386,7,386,2,387,7,387,2,388,7,388,2,389,7,389,2,390,7,390,2,391,7,391,2,392,7,392,2,393,7,393,2,394,7,394,2,395,7,395,2,396,7,396,2,397,7,397,2,398,7,398,2,399,7,399,2,400,7,400,2,401,7,401,2,402,7,402,1,0,1,0,1,0,1,0,1,0,3,0,812,8,0,1,1,5,1,815,8,1,10,1,12,1,818,9,1,1,1,1,1,4,1,822,8,1,11,1,12,1,823,1,1,5,1,827,8,1,10,1,12,1,830,9,1,1,1,5,1,833,8,1,10,1,12,1,836,9,1,1,1,1,1,1,2,5,2,841,8,2,10,2,12,2,844,9,2,1,2,1,2,1,3,5,3,849,8,3,10,3,12,3,852,9,3,1,3,1,3,4,3,856,8,3,11,3,12,3,857,5,3,860,8,3,10,3,12,3,863,9,3,1,3,1,3,1,3,5,3,868,8,3,10,3,12,3,871,9,3,1,4,1,4,3,4,875,8,4,1,5,1,5,1,5,3,5,880,8,5,3,5,882,8,5,1,5,1,5,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,3,6,930,8,6,1,7,1,7,1,7,5,7,935,8,7,10,7,12,7,938,9,7,1,7,3,7,941,8,7,1,8,1,8,1,8,5,8,946,8,8,10,8,12,8,949,9,8,1,9,1,9,1,9,5,9,954,8,9,10,9,12,9,957,9,9,1,10,1,10,3,10,961,8,10,1,11,1,11,3,11,965,8,11,1,11,1,11,1,11,1,12,3,12,971,8,12,1,12,1,12,1,12,1,12,3,12,977,8,12,1,12,3,12,980,8,12,1,12,1,12,3,12,984,8,12,1,12,1,12,1,12,1,12,1,12,1,12,3,12,992,8,12,1,12,1,12,3,12,996,8,12,1,12,3,12,999,8,12,1,12,1,12,3,12,1003,8,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,3,12,1014,8,12,1,12,4,12,1017,8,12,11,12,12,12,1018,3,12,1021,8,12,1,13,1,13,1,14,1,14,1,14,5,14,1028,8,14,10,14,12,14,1031,9,14,1,15,1,15,1,15,1,16,1,16,1,16,1,16,1,17,1,17,1,17,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,3,18,1051,8,18,1,18,5,18,1054,8,18,10,18,12,18,1057,9,18,1,18,1,18,1,18,1,18,4,18,1063,8,18,11,18,12,18,1064,3,18,1067,8,18,1,19,1,19,1,19,5,19,1072,8,19,10,19,12,19,1075,9,19,1,20,1,20,1,20,5,20,1080,8,20,10,20,12,20,1083,9,20,1,21,1,21,1,21,5,21,1088,8,21,10,21,12,21,1091,9,21,1,22,1,22,1,22,1,22,3,22,1097,8,22,1,23,1,23,1,24,1,24,1,24,1,24,1,24,1,24,3,24,1107,8,24,5,24,1109,8,24,10,24,12,24,1112,9,24,1,24,1,24,3,24,1116,8,24,1,25,1,25,3,25,1120,8,25,1,25,1,25,1,26,1,26,3,26,1126,8,26,1,26,1,26,1,27,1,27,3,27,1132,8,27,1,28,1,28,3,28,1136,8,28,1,29,1,29,3,29,1140,8,29,1,29,3,29,1143,8,29,1,29,1,29,1,30,1,30,1,30,3,30,1150,8,30,1,30,1,30,1,30,1,30,3,30,1156,8,30,5,30,1158,8,30,10,30,12,30,1161,9,30,1,31,1,31,3,31,1165,8,31,1,31,3,31,1168,8,31,1,31,1,31,1,32,1,32,1,32,1,32,1,32,1,32,1,32,1,32,5,32,1180,8,32,10,32,12,32,1183,9,32,1,33,1,33,3,33,1187,8,33,1,33,3,33,1190,8,33,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,3,34,1204,8,34,1,34,1,34,1,34,1,34,1,34,3,34,1211,8,34,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,3,35,1222,8,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,3,35,1233,8,35,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,38,1,38,1,38,1,38,3,38,1253,8,38,1,38,1,38,1,39,1,39,3,39,1259,8,39,1,39,4,39,1262,8,39,11,39,12,39,1263,1,39,1,39,3,39,1268,8,39,1,39,1,39,1,40,1,40,1,40,1,40,1,40,1,40,1,40,1,40,1,40,1,40,3,40,1282,8,40,3,40,1284,8,40,1,41,1,41,1,42,1,42,1,42,3,42,1291,8,42,1,43,1,43,1,44,1,44,3,44,1297,8,44,1,45,1,45,1,45,1,45,1,46,1,46,1,46,5,46,1306,8,46,10,46,12,46,1309,9,46,1,47,1,47,1,47,1,47,1,47,3,47,1316,8,47,1,48,1,48,1,48,1,48,3,48,1322,8,48,1,49,1,49,1,49,1,49,1,49,3,49,1329,8,49,1,49,1,49,1,49,1,49,5,49,1335,8,49,10,49,12,49,1338,9,49,1,49,1,49,1,50,1,50,1,50,1,50,1,51,1,51,1,51,1,51,3,51,1350,8,51,1,51,1,51,1,52,1,52,3,52,1356,8,52,1,52,1,52,3,52,1360,8,52,1,52,3,52,1363,8,52,3,52,1365,8,52,1,53,1,53,1,53,1,53,1,53,1,53,3,53,1373,8,53,1,54,1,54,1,54,1,54,1,54,1,54,3,54,1381,8,54,1,54,1,54,1,54,1,54,3,54,1387,8,54,1,54,1,54,1,54,1,54,3,54,1393,8,54,1,54,1,54,1,55,1,55,3,55,1399,8,55,1,55,3,55,1402,8,55,1,55,1,55,1,56,1,56,1,56,5,56,1409,8,56,10,56,12,56,1412,9,56,1,57,1,57,1,57,1,57,5,57,1418,8,57,10,57,12,57,1421,9,57,1,57,1,57,1,58,1,58,3,58,1427,8,58,1,59,1,59,1,59,1,59,5,59,1433,8,59,10,59,12,59,1436,9,59,1,59,1,59,1,60,1,60,1,60,1,61,1,61,1,61,1,61,1,61,3,61,1448,8,61,1,62,1,62,1,62,5,62,1453,8,62,10,62,12,62,1456,9,62,1,62,3,62,1459,8,62,1,63,1,63,1,63,5,63,1464,8,63,10,63,12,63,1467,9,63,1,63,3,63,1470,8,63,1,64,1,64,1,64,3,64,1475,8,64,1,65,1,65,1,65,5,65,1480,8,65,10,65,12,65,1483,9,65,1,66,1,66,1,66,1,66,3,66,1489,8,66,1,66,3,66,1492,8,66,1,66,1,66,1,66,1,67,1,67,3,67,1499,8,67,1,67,1,67,3,67,1503,8,67,1,68,1,68,1,68,1,68,1,68,1,68,1,68,1,68,3,68,1513,8,68,1,68,1,68,1,69,1,69,1,69,1,69,1,70,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,3,71,1536,8,71,1,72,1,72,1,72,1,72,3,72,1542,8,72,1,73,1,73,3,73,1546,8,73,1,74,1,74,1,74,5,74,1551,8,74,10,74,12,74,1554,9,74,1,75,1,75,1,75,3,75,1559,8,75,1,76,1,76,1,76,5,76,1564,8,76,10,76,12,76,1567,9,76,1,77,3,77,1570,8,77,1,77,1,77,3,77,1574,8,77,1,78,1,78,1,79,1,79,3,79,1580,8,79,1,80,1,80,1,80,3,80,1585,8,80,1,81,1,81,1,81,1,81,1,82,1,82,1,82,3,82,1594,8,82,1,82,3,82,1597,8,82,1,82,1,82,1,82,1,82,3,82,1603,8,82,1,83,1,83,1,83,3,83,1608,8,83,1,83,1,83,1,84,1,84,1,84,1,84,3,84,1616,8,84,1,85,1,85,1,85,5,85,1621,8,85,10,85,12,85,1624,9,85,1,86,1,86,1,86,1,86,1,86,1,86,1,86,1,87,1,87,1,87,1,87,1,87,1,88,1,88,1,88,1,88,1,88,5,88,1643,8,88,10,88,12,88,1646,9,88,1,88,3,88,1649,8,88,3,88,1651,8,88,1,88,1,88,3,88,1655,8,88,1,89,1,89,1,89,1,89,1,89,5,89,1662,8,89,10,89,12,89,1665,9,89,1,89,3,89,1668,8,89,3,89,1670,8,89,1,89,1,89,3,89,1674,8,89,1,90,1,90,1,90,1,90,1,90,5,90,1681,8,90,10,90,12,90,1684,9,90,1,90,3,90,1687,8,90,1,90,1,90,1,91,1,91,1,91,1,91,1,91,1,92,1,92,1,92,1,92,1,92,1,93,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,95,1,95,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,5,96,1723,8,96,10,96,12,96,1726,9,96,1,96,3,96,1729,8,96,1,96,1,96,1,97,1,97,1,97,1,97,1,97,1,98,1,98,1,98,1,98,1,98,1,98,1,98,1,99,1,99,1,99,1,99,3,99,1749,8,99,1,99,3,99,1752,8,99,1,99,1,99,1,99,1,99,3,99,1758,8,99,1,99,1,99,1,99,1,99,1,99,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,3,100,1778,8,100,1,100,5,100,1781,8,100,10,100,12,100,1784,9,100,1,101,1,101,1,101,3,101,1789,8,101,1,101,5,101,1792,8,101,10,101,12,101,1795,9,101,3,101,1797,8,101,1,102,1,102,3,102,1801,8,102,1,103,1,103,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,3,104,1828,8,104,1,105,1,105,1,105,1,105,1,105,1,105,3,105,1836,8,105,1,106,3,106,1839,8,106,1,106,1,106,1,106,5,106,1844,8,106,10,106,12,106,1847,9,106,1,107,1,107,1,107,1,107,1,107,1,108,1,108,1,108,1,109,1,109,3,109,1859,8,109,1,109,1,109,3,109,1863,8,109,1,109,1,109,1,110,1,110,1,110,1,110,1,110,1,111,1,111,1,111,3,111,1875,8,111,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,5,112,1886,8,112,10,112,12,112,1889,9,112,1,112,1,112,3,112,1893,8,112,1,113,1,113,1,113,1,113,1,113,3,113,1900,8,113,1,114,1,114,3,114,1904,8,114,1,115,1,115,1,115,5,115,1909,8,115,10,115,12,115,1912,9,115,1,116,1,116,1,116,1,116,5,116,1918,8,116,10,116,12,116,1921,9,116,1,117,1,117,1,117,1,117,5,117,1927,8,117,10,117,12,117,1930,9,117,1,118,1,118,1,118,1,118,1,118,3,118,1937,8,118,1,119,1,119,3,119,1941,8,119,1,119,1,119,3,119,1945,8,119,1,120,1,120,1,120,1,120,1,120,3,120,1952,8,120,3,120,1954,8,120,1,121,3,121,1957,8,121,1,121,1,121,1,121,3,121,1962,8,121,1,121,1,121,1,121,3,121,1967,8,121,1,122,1,122,3,122,1971,8,122,1,122,1,122,1,122,5,122,1976,8,122,10,122,12,122,1979,9,122,1,122,1,122,1,122,1,122,3,122,1985,8,122,1,122,1,122,3,122,1989,8,122,1,122,3,122,1992,8,122,1,122,1,122,3,122,1996,8,122,1,122,1,122,3,122,2e3,8,122,3,122,2002,8,122,1,123,1,123,1,123,1,123,1,124,1,124,1,124,5,124,2011,8,124,10,124,12,124,2014,9,124,1,125,1,125,1,125,1,125,5,125,2020,8,125,10,125,12,125,2023,9,125,1,125,1,125,3,125,2027,8,125,1,125,1,125,1,125,1,125,3,125,2033,8,125,1,125,1,125,1,125,3,125,2038,8,125,1,125,3,125,2041,8,125,1,125,1,125,3,125,2045,8,125,1,125,1,125,3,125,2049,8,125,1,126,3,126,2052,8,126,1,127,1,127,3,127,2056,8,127,1,127,1,127,3,127,2060,8,127,1,127,1,127,1,127,1,127,5,127,2066,8,127,10,127,12,127,2069,9,127,1,127,3,127,2072,8,127,1,127,1,127,3,127,2076,8,127,1,127,1,127,3,127,2080,8,127,1,127,3,127,2083,8,127,1,127,3,127,2086,8,127,1,127,1,127,3,127,2090,8,127,1,127,3,127,2093,8,127,1,127,3,127,2096,8,127,1,128,1,128,1,128,3,128,2101,8,128,1,128,3,128,2104,8,128,1,128,3,128,2107,8,128,1,128,3,128,2110,8,128,1,128,1,128,1,128,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,3,129,2124,8,129,3,129,2126,8,129,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,3,130,2137,8,130,1,131,1,131,1,131,1,132,1,132,1,132,5,132,2145,8,132,10,132,12,132,2148,9,132,1,133,1,133,1,133,1,133,1,134,1,134,1,134,3,134,2157,8,134,1,134,3,134,2160,8,134,1,134,1,134,1,134,1,134,1,134,3,134,2167,8,134,1,134,1,134,1,134,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,3,135,2191,8,135,1,136,1,136,1,137,1,137,1,138,1,138,1,138,5,138,2200,8,138,10,138,12,138,2203,9,138,1,139,4,139,2206,8,139,11,139,12,139,2207,1,140,1,140,3,140,2212,8,140,1,141,1,141,3,141,2216,8,141,1,141,1,141,3,141,2220,8,141,1,141,1,141,3,141,2224,8,141,1,141,1,141,3,141,2228,8,141,1,141,1,141,3,141,2232,8,141,1,141,1,141,3,141,2236,8,141,1,141,1,141,1,141,1,141,3,141,2242,8,141,1,142,1,142,1,142,1,142,1,142,3,142,2249,8,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,3,142,2259,8,142,1,143,1,143,1,144,1,144,1,144,1,144,1,144,5,144,2268,8,144,10,144,12,144,2271,9,144,1,144,1,144,1,145,1,145,1,145,1,146,1,146,1,146,5,146,2281,8,146,10,146,12,146,2284,9,146,1,147,1,147,1,147,1,147,1,147,1,147,1,148,1,148,1,149,1,149,1,149,5,149,2297,8,149,10,149,12,149,2300,9,149,1,150,1,150,1,151,1,151,1,151,5,151,2307,8,151,10,151,12,151,2310,9,151,1,152,1,152,1,152,1,152,1,153,1,153,1,154,1,154,1,155,1,155,1,156,1,156,1,157,1,157,1,157,1,157,1,158,3,158,2329,8,158,1,158,1,158,1,159,1,159,3,159,2335,8,159,1,159,1,159,1,159,1,159,1,159,3,159,2342,8,159,1,160,1,160,1,160,5,160,2347,8,160,10,160,12,160,2350,9,160,1,161,1,161,1,161,1,161,1,161,3,161,2357,8,161,1,162,1,162,1,163,1,163,1,163,5,163,2364,8,163,10,163,12,163,2367,9,163,1,164,1,164,1,164,1,164,1,164,1,165,1,165,1,165,1,165,1,165,1,166,1,166,1,166,1,166,1,166,1,166,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,168,1,168,1,168,1,168,1,168,1,168,1,168,3,168,2403,8,168,3,168,2405,8,168,1,169,3,169,2408,8,169,1,169,1,169,1,169,3,169,2413,8,169,1,169,1,169,3,169,2417,8,169,5,169,2419,8,169,10,169,12,169,2422,9,169,1,170,1,170,1,170,3,170,2427,8,170,1,171,1,171,1,171,1,171,3,171,2433,8,171,1,171,1,171,3,171,2437,8,171,1,172,1,172,1,172,3,172,2442,8,172,1,172,1,172,1,172,3,172,2447,8,172,3,172,2449,8,172,1,173,1,173,3,173,2453,8,173,1,173,1,173,1,173,3,173,2458,8,173,1,173,3,173,2461,8,173,3,173,2463,8,173,1,173,1,173,3,173,2467,8,173,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,3,174,2478,8,174,1,175,1,175,1,175,1,176,1,176,1,176,1,176,1,176,1,176,3,176,2489,8,176,1,177,1,177,1,178,1,178,1,178,1,178,1,178,1,179,1,179,3,179,2500,8,179,1,179,1,179,3,179,2504,8,179,1,179,1,179,3,179,2508,8,179,1,179,1,179,3,179,2512,8,179,1,179,3,179,2515,8,179,1,179,1,179,3,179,2519,8,179,1,179,3,179,2522,8,179,1,180,1,180,1,180,1,180,3,180,2528,8,180,1,181,1,181,1,181,1,181,1,181,5,181,2535,8,181,10,181,12,181,2538,9,181,3,181,2540,8,181,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,3,182,2554,8,182,1,182,1,182,1,182,1,182,3,182,2560,8,182,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,3,183,2573,8,183,1,183,1,183,1,183,1,183,1,184,3,184,2580,8,184,1,184,1,184,1,184,3,184,2585,8,184,1,185,1,185,1,185,1,186,1,186,3,186,2592,8,186,1,187,1,187,1,187,5,187,2597,8,187,10,187,12,187,2600,9,187,1,188,1,188,1,188,1,188,1,189,1,189,3,189,2608,8,189,1,190,1,190,1,190,3,190,2613,8,190,1,190,1,190,1,190,1,190,1,190,1,190,3,190,2621,8,190,1,190,1,190,1,190,1,191,1,191,1,191,1,191,1,191,1,191,1,191,1,191,5,191,2634,8,191,10,191,12,191,2637,9,191,1,192,1,192,1,192,3,192,2642,8,192,1,193,1,193,1,193,1,193,1,193,1,193,3,193,2650,8,193,1,193,1,193,1,194,1,194,1,194,1,194,1,194,1,194,1,194,1,195,1,195,1,195,1,195,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,3,196,2673,8,196,1,197,1,197,1,197,1,197,1,197,3,197,2680,8,197,1,197,1,197,1,197,1,197,1,197,1,197,3,197,2688,8,197,1,198,1,198,1,198,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,200,1,200,1,200,1,201,1,201,1,201,1,201,3,201,2709,8,201,1,201,1,201,1,201,1,201,1,201,1,201,3,201,2717,8,201,1,202,1,202,1,202,1,203,1,203,1,203,3,203,2725,8,203,1,204,1,204,1,204,1,204,1,205,1,205,1,206,1,206,3,206,2735,8,206,1,207,1,207,1,207,1,207,1,207,5,207,2742,8,207,10,207,12,207,2745,9,207,1,207,1,207,3,207,2749,8,207,1,208,1,208,1,209,1,209,1,209,3,209,2756,8,209,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,209,3,209,2766,8,209,1,209,1,209,1,209,3,209,2771,8,209,1,209,1,209,1,209,1,209,1,209,5,209,2778,8,209,10,209,12,209,2781,9,209,1,209,3,209,2784,8,209,1,209,1,209,3,209,2788,8,209,1,209,3,209,2791,8,209,1,209,3,209,2794,8,209,1,209,3,209,2797,8,209,1,209,3,209,2800,8,209,1,210,1,210,1,210,1,210,1,210,1,210,3,210,2808,8,210,1,211,1,211,1,211,1,211,1,211,5,211,2815,8,211,10,211,12,211,2818,9,211,1,211,1,211,1,212,1,212,1,212,1,212,1,212,1,213,1,213,1,213,1,213,1,213,5,213,2832,8,213,10,213,12,213,2835,9,213,1,213,1,213,1,214,1,214,1,214,1,215,1,215,1,215,1,215,1,216,1,216,1,216,1,217,1,217,1,217,1,217,1,217,1,217,5,217,2855,8,217,10,217,12,217,2858,9,217,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,3,218,2875,8,218,1,219,1,219,1,219,1,219,1,219,1,219,1,219,5,219,2884,8,219,10,219,12,219,2887,9,219,1,220,1,220,1,220,1,220,1,220,3,220,2894,8,220,1,221,1,221,1,221,1,221,1,221,1,221,5,221,2902,8,221,10,221,12,221,2905,9,221,1,222,1,222,3,222,2909,8,222,1,223,1,223,3,223,2913,8,223,1,223,1,223,1,224,1,224,3,224,2919,8,224,1,224,1,224,1,225,1,225,1,225,1,225,1,225,1,225,1,226,1,226,1,226,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,228,1,228,1,228,1,228,1,229,1,229,1,229,1,229,1,229,5,229,2948,8,229,10,229,12,229,2951,9,229,1,229,1,229,1,230,1,230,1,230,1,230,1,230,5,230,2960,8,230,10,230,12,230,2963,9,230,1,230,1,230,1,231,1,231,1,231,1,232,1,232,1,232,1,232,1,233,1,233,1,233,1,233,1,234,1,234,1,234,1,234,1,234,1,234,1,235,1,235,1,235,1,236,1,236,1,236,1,236,1,236,1,237,1,237,1,237,1,237,1,238,1,238,1,238,3,238,2999,8,238,1,238,1,238,1,239,1,239,1,239,1,240,3,240,3007,8,240,1,240,3,240,3010,8,240,1,240,1,240,3,240,3014,8,240,1,241,1,241,3,241,3018,8,241,1,242,1,242,1,242,1,242,1,242,1,242,5,242,3026,8,242,10,242,12,242,3029,9,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,5,242,3039,8,242,10,242,12,242,3042,9,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,5,242,3052,8,242,10,242,12,242,3055,9,242,1,242,1,242,3,242,3059,8,242,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,5,243,3074,8,243,10,243,12,243,3077,9,243,1,243,3,243,3080,8,243,1,243,1,243,3,243,3084,8,243,1,243,1,243,1,243,1,243,1,243,5,243,3091,8,243,10,243,12,243,3094,9,243,1,243,1,243,1,243,1,243,1,243,1,243,5,243,3102,8,243,10,243,12,243,3105,9,243,1,243,1,243,3,243,3109,8,243,1,244,1,244,3,244,3113,8,244,1,245,1,245,3,245,3117,8,245,1,245,3,245,3120,8,245,1,246,1,246,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,248,1,248,1,248,5,248,3134,8,248,10,248,12,248,3137,9,248,1,249,1,249,1,249,1,249,1,250,1,250,1,251,1,251,1,251,1,251,1,251,1,251,3,251,3151,8,251,1,252,1,252,1,252,1,252,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,3,253,3166,8,253,1,253,3,253,3169,8,253,1,254,1,254,1,254,1,254,1,255,1,255,1,255,1,255,5,255,3179,8,255,10,255,12,255,3182,9,255,3,255,3184,8,255,1,255,1,255,1,256,1,256,1,256,1,256,1,257,1,257,1,258,1,258,1,258,1,258,5,258,3198,8,258,10,258,12,258,3201,9,258,1,258,1,258,1,258,3,258,3206,8,258,1,259,1,259,1,259,1,259,5,259,3212,8,259,10,259,12,259,3215,9,259,1,259,1,259,1,260,1,260,1,260,1,260,1,260,3,260,3224,8,260,1,260,1,260,3,260,3228,8,260,1,260,1,260,1,261,1,261,1,261,1,261,3,261,3236,8,261,1,262,1,262,1,262,1,262,3,262,3242,8,262,1,262,1,262,1,262,1,262,3,262,3248,8,262,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,5,263,3258,8,263,10,263,12,263,3261,9,263,1,263,3,263,3264,8,263,3,263,3266,8,263,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,5,264,3276,8,264,10,264,12,264,3279,9,264,1,264,3,264,3282,8,264,1,264,1,264,1,264,3,264,3287,8,264,1,265,1,265,1,265,1,265,3,265,3293,8,265,1,265,1,265,1,265,5,265,3298,8,265,10,265,12,265,3301,9,265,1,265,3,265,3304,8,265,1,266,1,266,3,266,3308,8,266,1,267,3,267,3311,8,267,1,267,1,267,1,267,1,268,1,268,1,268,1,268,1,268,1,268,5,268,3322,8,268,10,268,12,268,3325,9,268,1,268,1,268,1,268,1,268,5,268,3331,8,268,10,268,12,268,3334,9,268,1,268,3,268,3337,8,268,1,268,1,268,1,268,3,268,3342,8,268,1,269,1,269,1,269,1,269,3,269,3348,8,269,1,269,1,269,1,269,1,269,1,269,5,269,3355,8,269,10,269,12,269,3358,9,269,1,269,1,269,1,269,1,269,5,269,3364,8,269,10,269,12,269,3367,9,269,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,3,270,3383,8,270,1,270,1,270,3,270,3387,8,270,1,270,1,270,3,270,3391,8,270,3,270,3393,8,270,1,271,1,271,3,271,3397,8,271,1,272,1,272,1,272,5,272,3402,8,272,10,272,12,272,3405,9,272,1,272,3,272,3408,8,272,1,272,1,272,3,272,3412,8,272,3,272,3414,8,272,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,5,273,3424,8,273,10,273,12,273,3427,9,273,1,273,1,273,1,273,1,273,1,273,1,274,1,274,1,274,1,275,1,275,1,275,5,275,3440,8,275,10,275,12,275,3443,9,275,1,276,1,276,1,276,1,276,1,277,1,277,1,277,1,277,1,277,1,277,1,277,5,277,3456,8,277,10,277,12,277,3459,9,277,1,278,1,278,1,279,1,279,1,279,1,279,1,279,1,280,1,280,1,280,1,280,1,280,3,280,3473,8,280,1,281,1,281,1,281,5,281,3478,8,281,10,281,12,281,3481,9,281,1,282,1,282,1,282,1,282,1,282,3,282,3488,8,282,1,282,1,282,1,282,1,282,1,282,1,282,1,283,5,283,3497,8,283,10,283,12,283,3500,9,283,1,283,1,283,4,283,3504,8,283,11,283,12,283,3505,1,283,5,283,3509,8,283,10,283,12,283,3512,9,283,1,283,5,283,3515,8,283,10,283,12,283,3518,9,283,3,283,3520,8,283,1,284,3,284,3523,8,284,1,284,1,284,1,284,1,284,1,284,3,284,3530,8,284,1,285,3,285,3533,8,285,1,285,3,285,3536,8,285,1,285,1,285,1,285,1,285,1,285,1,285,1,285,3,285,3545,8,285,1,286,1,286,1,286,3,286,3550,8,286,1,286,3,286,3553,8,286,1,286,1,286,1,286,1,286,1,286,1,286,5,286,3561,8,286,10,286,12,286,3564,9,286,1,286,3,286,3567,8,286,3,286,3569,8,286,1,286,1,286,1,286,1,286,1,286,3,286,3576,8,286,1,286,3,286,3579,8,286,1,286,1,286,3,286,3583,8,286,3,286,3585,8,286,1,286,3,286,3588,8,286,1,287,1,287,1,287,3,287,3593,8,287,1,288,3,288,3596,8,288,1,288,1,288,1,288,3,288,3601,8,288,1,289,1,289,1,289,1,289,1,289,1,289,5,289,3609,8,289,10,289,12,289,3612,9,289,1,289,1,289,3,289,3616,8,289,1,290,1,290,1,290,1,290,1,290,1,290,1,290,5,290,3625,8,290,10,290,12,290,3628,9,290,1,290,3,290,3631,8,290,1,290,1,290,3,290,3635,8,290,3,290,3637,8,290,1,290,1,290,3,290,3641,8,290,1,290,1,290,1,290,3,290,3646,8,290,1,290,1,290,1,290,1,290,5,290,3652,8,290,10,290,12,290,3655,9,290,3,290,3657,8,290,1,290,3,290,3660,8,290,1,290,3,290,3663,8,290,1,291,1,291,1,291,3,291,3668,8,291,1,291,1,291,1,292,1,292,3,292,3674,8,292,1,292,3,292,3677,8,292,1,293,1,293,3,293,3681,8,293,1,294,1,294,1,294,1,294,3,294,3687,8,294,1,295,1,295,1,295,1,295,1,295,1,295,3,295,3695,8,295,1,295,3,295,3698,8,295,1,296,1,296,1,296,1,296,1,296,3,296,3705,8,296,1,296,1,296,3,296,3709,8,296,1,296,3,296,3712,8,296,1,297,1,297,3,297,3716,8,297,1,298,1,298,1,298,5,298,3721,8,298,10,298,12,298,3724,9,298,1,299,1,299,1,299,1,299,1,300,1,300,1,301,1,301,1,301,1,301,1,301,1,301,1,302,1,302,1,302,1,302,5,302,3742,8,302,10,302,12,302,3745,9,302,1,302,1,302,1,303,1,303,1,303,1,303,3,303,3753,8,303,1,303,3,303,3756,8,303,1,304,1,304,1,304,1,304,5,304,3762,8,304,10,304,12,304,3765,9,304,1,304,1,304,1,305,1,305,1,306,1,306,1,306,1,306,1,306,1,307,1,307,1,307,1,307,1,307,1,307,5,307,3782,8,307,10,307,12,307,3785,9,307,1,308,1,308,1,308,1,308,1,308,3,308,3792,8,308,1,309,1,309,1,309,1,310,1,310,1,310,3,310,3800,8,310,1,311,1,311,1,311,1,311,1,311,1,312,1,312,3,312,3809,8,312,1,313,1,313,1,313,1,313,1,314,1,314,1,314,1,314,1,314,1,315,1,315,1,315,1,315,1,315,5,315,3825,8,315,10,315,12,315,3828,9,315,1,315,1,315,1,316,1,316,1,316,1,316,1,316,1,317,1,317,1,317,1,317,1,317,5,317,3842,8,317,10,317,12,317,3845,9,317,1,317,1,317,1,318,1,318,1,318,1,318,1,319,1,319,1,319,5,319,3856,8,319,10,319,12,319,3859,9,319,1,320,1,320,1,320,1,320,1,321,1,321,1,322,1,322,1,322,1,322,1,322,1,323,1,323,1,323,5,323,3875,8,323,10,323,12,323,3878,9,323,1,324,1,324,1,324,1,324,1,325,1,325,1,326,1,326,1,326,3,326,3889,8,326,1,326,1,326,1,327,1,327,1,328,1,328,1,328,1,328,3,328,3899,8,328,1,329,1,329,1,329,1,329,1,329,1,330,1,330,3,330,3908,8,330,1,331,1,331,1,332,1,332,1,332,1,333,1,333,1,333,5,333,3918,8,333,10,333,12,333,3921,9,333,1,334,1,334,1,334,1,334,1,335,1,335,1,336,1,336,1,336,1,336,1,337,3,337,3934,8,337,1,337,3,337,3937,8,337,1,337,3,337,3940,8,337,1,337,3,337,3943,8,337,1,338,1,338,1,339,1,339,3,339,3949,8,339,1,339,1,339,1,339,1,340,1,340,1,341,1,341,1,341,3,341,3959,8,341,1,342,1,342,1,343,1,343,3,343,3965,8,343,1,344,1,344,1,344,1,344,1,344,1,345,1,345,1,345,1,345,3,345,3976,8,345,1,345,3,345,3979,8,345,1,346,1,346,1,346,1,346,1,346,1,346,1,346,1,346,1,346,1,346,3,346,3991,8,346,1,347,1,347,1,347,1,348,1,348,1,348,1,348,1,348,3,348,4001,8,348,1,349,1,349,1,349,1,349,3,349,4007,8,349,1,350,1,350,1,351,1,351,1,352,1,352,1,353,1,353,3,353,4017,8,353,1,354,1,354,1,354,1,354,1,354,1,354,1,354,3,354,4026,8,354,1,355,1,355,1,355,1,355,1,355,1,355,3,355,4034,8,355,1,356,1,356,1,356,1,356,1,356,3,356,4041,8,356,1,357,1,357,1,357,1,357,1,357,1,357,1,357,1,357,3,357,4051,8,357,1,358,1,358,1,358,1,358,1,358,1,358,1,358,3,358,4060,8,358,1,359,1,359,1,359,1,359,1,359,1,359,1,359,3,359,4069,8,359,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,3,360,4079,8,360,1,361,1,361,3,361,4083,8,361,1,362,1,362,3,362,4087,8,362,1,363,1,363,3,363,4091,8,363,1,364,1,364,3,364,4095,8,364,1,365,1,365,3,365,4099,8,365,1,366,1,366,3,366,4103,8,366,1,367,1,367,3,367,4107,8,367,1,368,1,368,3,368,4111,8,368,1,369,1,369,3,369,4115,8,369,1,370,1,370,3,370,4119,8,370,1,371,1,371,3,371,4123,8,371,1,372,1,372,3,372,4127,8,372,1,373,1,373,1,373,3,373,4132,8,373,1,374,1,374,1,374,3,374,4137,8,374,1,375,1,375,1,375,3,375,4142,8,375,1,375,1,375,3,375,4146,8,375,1,376,1,376,3,376,4150,8,376,1,377,1,377,1,377,3,377,4155,8,377,1,378,3,378,4158,8,378,1,378,1,378,1,379,1,379,3,379,4164,8,379,1,380,3,380,4167,8,380,1,380,1,380,1,381,1,381,1,381,1,381,1,381,1,381,1,381,1,381,3,381,4179,8,381,1,382,1,382,1,383,1,383,1,384,1,384,1,385,1,385,1,386,1,386,1,387,1,387,1,388,1,388,1,389,1,389,1,390,1,390,1,391,1,391,1,392,1,392,1,393,1,393,1,394,1,394,1,395,1,395,1,395,1,395,1,395,3,395,4212,8,395,1,396,5,396,4215,8,396,10,396,12,396,4218,9,396,1,396,1,396,4,396,4222,8,396,11,396,12,396,4223,1,396,5,396,4227,8,396,10,396,12,396,4230,9,396,1,396,5,396,4233,8,396,10,396,12,396,4236,9,396,1,396,1,396,1,397,1,397,1,397,3,397,4243,8,397,3,397,4245,8,397,1,397,1,397,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,3,398,4262,8,398,1,399,1,399,1,399,1,400,1,400,1,400,1,401,1,401,1,401,1,402,1,402,3,402,4275,8,402,1,402,0,0,403,0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,312,314,316,318,320,322,324,326,328,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,376,378,380,382,384,386,388,390,392,394,396,398,400,402,404,406,408,410,412,414,416,418,420,422,424,426,428,430,432,434,436,438,440,442,444,446,448,450,452,454,456,458,460,462,464,466,468,470,472,474,476,478,480,482,484,486,488,490,492,494,496,498,500,502,504,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,564,566,568,570,572,574,576,578,580,582,584,586,588,590,592,594,596,598,600,602,604,606,608,610,612,614,616,618,620,622,624,626,628,630,632,634,636,638,640,642,644,646,648,650,652,654,656,658,660,662,664,666,668,670,672,674,676,678,680,682,684,686,688,690,692,694,696,698,700,702,704,706,708,710,712,714,716,718,720,722,724,726,728,730,732,734,736,738,740,742,744,746,748,750,752,754,756,758,760,762,764,766,768,770,772,774,776,778,780,782,784,786,788,790,792,794,796,798,800,802,804,0,39,2,0,58,58,274,274,6,0,145,145,156,156,180,180,185,185,234,234,252,252,1,0,6,9,1,0,17,18,2,0,20,21,23,23,2,0,17,19,196,196,2,0,115,115,121,121,4,0,121,121,133,133,290,290,297,297,2,0,81,81,294,294,2,0,56,56,103,103,2,0,26,26,202,202,2,0,48,48,110,110,2,0,163,163,261,261,3,0,106,106,182,182,208,208,2,0,66,66,276,276,2,0,206,206,263,263,2,0,59,59,275,275,3,0,189,190,192,192,260,260,2,0,46,46,112,112,2,0,148,148,302,302,2,0,61,61,278,278,2,0,120,120,299,299,3,0,49,49,104,104,237,237,3,0,61,61,255,255,278,278,2,0,143,143,301,301,3,0,107,107,229,229,277,277,2,0,45,45,271,271,2,0,78,78,259,259,3,0,150,150,231,231,256,256,2,0,139,139,224,224,1,0,317,318,21,0,58,58,67,68,72,73,89,89,91,93,116,116,128,128,142,143,153,153,173,175,183,183,196,196,198,198,228,228,232,232,247,248,254,254,262,262,274,274,293,293,309,310,3,0,53,53,120,120,269,269,11,0,48,48,55,55,57,57,110,110,124,124,152,152,168,168,181,181,295,295,311,311,313,313,31,0,61,61,83,83,85,85,94,94,104,104,107,107,136,136,147,147,163,163,177,177,179,179,184,184,186,192,194,194,203,203,205,205,207,207,214,214,218,221,227,227,229,229,237,237,241,241,250,250,260,261,266,268,272,272,278,278,287,287,292,292,298,298,50,0,44,47,49,52,54,54,56,56,59,62,64,66,69,69,71,71,74,76,79,79,81,88,90,90,94,105,107,109,111,115,117,118,121,123,125,127,129,132,134,137,139,141,144,145,147,149,151,151,154,167,169,172,176,180,184,195,197,197,199,207,209,227,229,230,233,238,240,242,244,246,249,253,255,255,257,258,260,261,263,263,265,268,271,273,275,280,282,289,292,292,294,294,296,305,307,308,312,312,314,315,12,0,70,70,106,106,119,119,138,138,182,182,208,208,243,243,264,264,270,270,281,281,291,291,306,306,2,0,133,133,290,290,1,0,319,320,4591,0,811,1,0,0,0,2,816,1,0,0,0,4,842,1,0,0,0,6,850,1,0,0,0,8,874,1,0,0,0,10,881,1,0,0,0,12,929,1,0,0,0,14,940,1,0,0,0,16,942,1,0,0,0,18,950,1,0,0,0,20,958,1,0,0,0,22,962,1,0,0,0,24,1020,1,0,0,0,26,1022,1,0,0,0,28,1024,1,0,0,0,30,1032,1,0,0,0,32,1035,1,0,0,0,34,1039,1,0,0,0,36,1042,1,0,0,0,38,1068,1,0,0,0,40,1076,1,0,0,0,42,1084,1,0,0,0,44,1096,1,0,0,0,46,1098,1,0,0,0,48,1110,1,0,0,0,50,1119,1,0,0,0,52,1125,1,0,0,0,54,1131,1,0,0,0,56,1135,1,0,0,0,58,1137,1,0,0,0,60,1146,1,0,0,0,62,1162,1,0,0,0,64,1171,1,0,0,0,66,1184,1,0,0,0,68,1210,1,0,0,0,70,1232,1,0,0,0,72,1234,1,0,0,0,74,1241,1,0,0,0,76,1248,1,0,0,0,78,1256,1,0,0,0,80,1271,1,0,0,0,82,1285,1,0,0,0,84,1290,1,0,0,0,86,1292,1,0,0,0,88,1296,1,0,0,0,90,1298,1,0,0,0,92,1302,1,0,0,0,94,1310,1,0,0,0,96,1321,1,0,0,0,98,1323,1,0,0,0,100,1341,1,0,0,0,102,1345,1,0,0,0,104,1364,1,0,0,0,106,1372,1,0,0,0,108,1374,1,0,0,0,110,1396,1,0,0,0,112,1405,1,0,0,0,114,1413,1,0,0,0,116,1426,1,0,0,0,118,1428,1,0,0,0,120,1439,1,0,0,0,122,1447,1,0,0,0,124,1449,1,0,0,0,126,1460,1,0,0,0,128,1471,1,0,0,0,130,1476,1,0,0,0,132,1484,1,0,0,0,134,1498,1,0,0,0,136,1512,1,0,0,0,138,1516,1,0,0,0,140,1520,1,0,0,0,142,1535,1,0,0,0,144,1537,1,0,0,0,146,1543,1,0,0,0,148,1547,1,0,0,0,150,1555,1,0,0,0,152,1560,1,0,0,0,154,1569,1,0,0,0,156,1575,1,0,0,0,158,1579,1,0,0,0,160,1584,1,0,0,0,162,1586,1,0,0,0,164,1602,1,0,0,0,166,1607,1,0,0,0,168,1611,1,0,0,0,170,1617,1,0,0,0,172,1625,1,0,0,0,174,1632,1,0,0,0,176,1637,1,0,0,0,178,1656,1,0,0,0,180,1675,1,0,0,0,182,1690,1,0,0,0,184,1695,1,0,0,0,186,1700,1,0,0,0,188,1705,1,0,0,0,190,1712,1,0,0,0,192,1717,1,0,0,0,194,1732,1,0,0,0,196,1737,1,0,0,0,198,1744,1,0,0,0,200,1777,1,0,0,0,202,1796,1,0,0,0,204,1800,1,0,0,0,206,1802,1,0,0,0,208,1827,1,0,0,0,210,1829,1,0,0,0,212,1838,1,0,0,0,214,1848,1,0,0,0,216,1853,1,0,0,0,218,1858,1,0,0,0,220,1866,1,0,0,0,222,1871,1,0,0,0,224,1876,1,0,0,0,226,1899,1,0,0,0,228,1901,1,0,0,0,230,1905,1,0,0,0,232,1913,1,0,0,0,234,1922,1,0,0,0,236,1936,1,0,0,0,238,1944,1,0,0,0,240,1946,1,0,0,0,242,1956,1,0,0,0,244,1968,1,0,0,0,246,2003,1,0,0,0,248,2007,1,0,0,0,250,2015,1,0,0,0,252,2051,1,0,0,0,254,2055,1,0,0,0,256,2097,1,0,0,0,258,2125,1,0,0,0,260,2136,1,0,0,0,262,2138,1,0,0,0,264,2141,1,0,0,0,266,2149,1,0,0,0,268,2156,1,0,0,0,270,2190,1,0,0,0,272,2192,1,0,0,0,274,2194,1,0,0,0,276,2196,1,0,0,0,278,2205,1,0,0,0,280,2209,1,0,0,0,282,2241,1,0,0,0,284,2258,1,0,0,0,286,2260,1,0,0,0,288,2262,1,0,0,0,290,2274,1,0,0,0,292,2277,1,0,0,0,294,2285,1,0,0,0,296,2291,1,0,0,0,298,2293,1,0,0,0,300,2301,1,0,0,0,302,2303,1,0,0,0,304,2311,1,0,0,0,306,2315,1,0,0,0,308,2317,1,0,0,0,310,2319,1,0,0,0,312,2321,1,0,0,0,314,2323,1,0,0,0,316,2328,1,0,0,0,318,2332,1,0,0,0,320,2343,1,0,0,0,322,2356,1,0,0,0,324,2358,1,0,0,0,326,2360,1,0,0,0,328,2368,1,0,0,0,330,2373,1,0,0,0,332,2378,1,0,0,0,334,2384,1,0,0,0,336,2404,1,0,0,0,338,2407,1,0,0,0,340,2423,1,0,0,0,342,2436,1,0,0,0,344,2438,1,0,0,0,346,2450,1,0,0,0,348,2477,1,0,0,0,350,2479,1,0,0,0,352,2482,1,0,0,0,354,2490,1,0,0,0,356,2492,1,0,0,0,358,2521,1,0,0,0,360,2527,1,0,0,0,362,2529,1,0,0,0,364,2553,1,0,0,0,366,2572,1,0,0,0,368,2584,1,0,0,0,370,2586,1,0,0,0,372,2591,1,0,0,0,374,2593,1,0,0,0,376,2601,1,0,0,0,378,2607,1,0,0,0,380,2609,1,0,0,0,382,2625,1,0,0,0,384,2641,1,0,0,0,386,2643,1,0,0,0,388,2653,1,0,0,0,390,2660,1,0,0,0,392,2664,1,0,0,0,394,2674,1,0,0,0,396,2689,1,0,0,0,398,2692,1,0,0,0,400,2701,1,0,0,0,402,2704,1,0,0,0,404,2718,1,0,0,0,406,2724,1,0,0,0,408,2726,1,0,0,0,410,2730,1,0,0,0,412,2734,1,0,0,0,414,2748,1,0,0,0,416,2750,1,0,0,0,418,2752,1,0,0,0,420,2807,1,0,0,0,422,2809,1,0,0,0,424,2821,1,0,0,0,426,2826,1,0,0,0,428,2838,1,0,0,0,430,2841,1,0,0,0,432,2845,1,0,0,0,434,2848,1,0,0,0,436,2874,1,0,0,0,438,2876,1,0,0,0,440,2893,1,0,0,0,442,2895,1,0,0,0,444,2908,1,0,0,0,446,2910,1,0,0,0,448,2916,1,0,0,0,450,2922,1,0,0,0,452,2928,1,0,0,0,454,2931,1,0,0,0,456,2938,1,0,0,0,458,2942,1,0,0,0,460,2954,1,0,0,0,462,2966,1,0,0,0,464,2969,1,0,0,0,466,2973,1,0,0,0,468,2977,1,0,0,0,470,2983,1,0,0,0,472,2986,1,0,0,0,474,2991,1,0,0,0,476,2995,1,0,0,0,478,3002,1,0,0,0,480,3009,1,0,0,0,482,3015,1,0,0,0,484,3058,1,0,0,0,486,3060,1,0,0,0,488,3112,1,0,0,0,490,3114,1,0,0,0,492,3121,1,0,0,0,494,3123,1,0,0,0,496,3130,1,0,0,0,498,3138,1,0,0,0,500,3142,1,0,0,0,502,3150,1,0,0,0,504,3152,1,0,0,0,506,3168,1,0,0,0,508,3170,1,0,0,0,510,3174,1,0,0,0,512,3187,1,0,0,0,514,3191,1,0,0,0,516,3205,1,0,0,0,518,3207,1,0,0,0,520,3218,1,0,0,0,522,3231,1,0,0,0,524,3237,1,0,0,0,526,3249,1,0,0,0,528,3267,1,0,0,0,530,3288,1,0,0,0,532,3307,1,0,0,0,534,3310,1,0,0,0,536,3315,1,0,0,0,538,3343,1,0,0,0,540,3392,1,0,0,0,542,3396,1,0,0,0,544,3413,1,0,0,0,546,3415,1,0,0,0,548,3433,1,0,0,0,550,3436,1,0,0,0,552,3444,1,0,0,0,554,3448,1,0,0,0,556,3460,1,0,0,0,558,3462,1,0,0,0,560,3467,1,0,0,0,562,3474,1,0,0,0,564,3482,1,0,0,0,566,3498,1,0,0,0,568,3522,1,0,0,0,570,3532,1,0,0,0,572,3549,1,0,0,0,574,3589,1,0,0,0,576,3595,1,0,0,0,578,3602,1,0,0,0,580,3662,1,0,0,0,582,3667,1,0,0,0,584,3676,1,0,0,0,586,3678,1,0,0,0,588,3682,1,0,0,0,590,3688,1,0,0,0,592,3699,1,0,0,0,594,3715,1,0,0,0,596,3717,1,0,0,0,598,3725,1,0,0,0,600,3729,1,0,0,0,602,3731,1,0,0,0,604,3737,1,0,0,0,606,3748,1,0,0,0,608,3757,1,0,0,0,610,3768,1,0,0,0,612,3770,1,0,0,0,614,3775,1,0,0,0,616,3791,1,0,0,0,618,3793,1,0,0,0,620,3796,1,0,0,0,622,3801,1,0,0,0,624,3808,1,0,0,0,626,3810,1,0,0,0,628,3814,1,0,0,0,630,3819,1,0,0,0,632,3831,1,0,0,0,634,3836,1,0,0,0,636,3848,1,0,0,0,638,3852,1,0,0,0,640,3860,1,0,0,0,642,3864,1,0,0,0,644,3866,1,0,0,0,646,3871,1,0,0,0,648,3879,1,0,0,0,650,3883,1,0,0,0,652,3888,1,0,0,0,654,3892,1,0,0,0,656,3898,1,0,0,0,658,3900,1,0,0,0,660,3907,1,0,0,0,662,3909,1,0,0,0,664,3911,1,0,0,0,666,3914,1,0,0,0,668,3922,1,0,0,0,670,3926,1,0,0,0,672,3928,1,0,0,0,674,3933,1,0,0,0,676,3944,1,0,0,0,678,3946,1,0,0,0,680,3953,1,0,0,0,682,3955,1,0,0,0,684,3960,1,0,0,0,686,3964,1,0,0,0,688,3966,1,0,0,0,690,3978,1,0,0,0,692,3990,1,0,0,0,694,3992,1,0,0,0,696,4e3,1,0,0,0,698,4002,1,0,0,0,700,4008,1,0,0,0,702,4010,1,0,0,0,704,4012,1,0,0,0,706,4016,1,0,0,0,708,4025,1,0,0,0,710,4033,1,0,0,0,712,4040,1,0,0,0,714,4050,1,0,0,0,716,4059,1,0,0,0,718,4068,1,0,0,0,720,4078,1,0,0,0,722,4082,1,0,0,0,724,4086,1,0,0,0,726,4090,1,0,0,0,728,4094,1,0,0,0,730,4098,1,0,0,0,732,4102,1,0,0,0,734,4106,1,0,0,0,736,4110,1,0,0,0,738,4114,1,0,0,0,740,4118,1,0,0,0,742,4122,1,0,0,0,744,4126,1,0,0,0,746,4131,1,0,0,0,748,4136,1,0,0,0,750,4141,1,0,0,0,752,4149,1,0,0,0,754,4154,1,0,0,0,756,4157,1,0,0,0,758,4163,1,0,0,0,760,4166,1,0,0,0,762,4178,1,0,0,0,764,4180,1,0,0,0,766,4182,1,0,0,0,768,4184,1,0,0,0,770,4186,1,0,0,0,772,4188,1,0,0,0,774,4190,1,0,0,0,776,4192,1,0,0,0,778,4194,1,0,0,0,780,4196,1,0,0,0,782,4198,1,0,0,0,784,4200,1,0,0,0,786,4202,1,0,0,0,788,4204,1,0,0,0,790,4211,1,0,0,0,792,4216,1,0,0,0,794,4244,1,0,0,0,796,4261,1,0,0,0,798,4263,1,0,0,0,800,4266,1,0,0,0,802,4269,1,0,0,0,804,4274,1,0,0,0,806,812,3,2,1,0,807,808,5,223,0,0,808,809,5,52,0,0,809,810,5,319,0,0,810,812,3,4,2,0,811,806,1,0,0,0,811,807,1,0,0,0,812,1,1,0,0,0,813,815,5,24,0,0,814,813,1,0,0,0,815,818,1,0,0,0,816,814,1,0,0,0,816,817,1,0,0,0,817,819,1,0,0,0,818,816,1,0,0,0,819,828,3,10,5,0,820,822,5,24,0,0,821,820,1,0,0,0,822,823,1,0,0,0,823,821,1,0,0,0,823,824,1,0,0,0,824,825,1,0,0,0,825,827,3,10,5,0,826,821,1,0,0,0,827,830,1,0,0,0,828,826,1,0,0,0,828,829,1,0,0,0,829,834,1,0,0,0,830,828,1,0,0,0,831,833,5,24,0,0,832,831,1,0,0,0,833,836,1,0,0,0,834,832,1,0,0,0,834,835,1,0,0,0,835,837,1,0,0,0,836,834,1,0,0,0,837,838,5,0,0,1,838,3,1,0,0,0,839,841,5,24,0,0,840,839,1,0,0,0,841,844,1,0,0,0,842,840,1,0,0,0,842,843,1,0,0,0,843,845,1,0,0,0,844,842,1,0,0,0,845,846,5,0,0,1,846,5,1,0,0,0,847,849,5,24,0,0,848,847,1,0,0,0,849,852,1,0,0,0,850,848,1,0,0,0,850,851,1,0,0,0,851,861,1,0,0,0,852,850,1,0,0,0,853,855,3,8,4,0,854,856,5,24,0,0,855,854,1,0,0,0,856,857,1,0,0,0,857,855,1,0,0,0,857,858,1,0,0,0,858,860,1,0,0,0,859,853,1,0,0,0,860,863,1,0,0,0,861,859,1,0,0,0,861,862,1,0,0,0,862,864,1,0,0,0,863,861,1,0,0,0,864,865,5,247,0,0,865,869,3,14,7,0,866,868,5,24,0,0,867,866,1,0,0,0,868,871,1,0,0,0,869,867,1,0,0,0,869,870,1,0,0,0,870,7,1,0,0,0,871,869,1,0,0,0,872,875,3,698,349,0,873,875,3,214,107,0,874,872,1,0,0,0,874,873,1,0,0,0,875,9,1,0,0,0,876,879,5,129,0,0,877,878,5,1,0,0,878,880,5,222,0,0,879,877,1,0,0,0,879,880,1,0,0,0,880,882,1,0,0,0,881,876,1,0,0,0,881,882,1,0,0,0,882,883,1,0,0,0,883,884,3,12,6,0,884,11,1,0,0,0,885,930,3,224,112,0,886,930,3,232,116,0,887,930,3,698,349,0,888,930,3,418,209,0,889,930,3,520,260,0,890,930,3,694,347,0,891,930,3,364,182,0,892,930,3,700,350,0,893,930,3,592,296,0,894,930,3,590,295,0,895,930,3,702,351,0,896,930,3,210,105,0,897,930,3,214,107,0,898,930,3,216,108,0,899,930,3,434,217,0,900,930,3,438,219,0,901,930,3,222,111,0,902,930,3,564,282,0,903,930,3,568,284,0,904,930,3,570,285,0,905,930,3,370,185,0,906,930,3,522,261,0,907,930,3,524,262,0,908,930,3,526,263,0,909,930,3,528,264,0,910,930,3,530,265,0,911,930,3,394,197,0,912,930,3,398,199,0,913,930,3,402,201,0,914,930,3,380,190,0,915,930,3,382,191,0,916,930,3,386,193,0,917,930,3,546,273,0,918,930,3,560,280,0,919,930,3,606,303,0,920,930,3,614,307,0,921,930,3,636,318,0,922,930,3,536,268,0,923,930,3,538,269,0,924,930,3,442,221,0,925,930,3,392,196,0,926,930,3,388,194,0,927,930,3,390,195,0,928,930,3,554,277,0,929,885,1,0,0,0,929,886,1,0,0,0,929,887,1,0,0,0,929,888,1,0,0,0,929,889,1,0,0,0,929,890,1,0,0,0,929,891,1,0,0,0,929,892,1,0,0,0,929,893,1,0,0,0,929,894,1,0,0,0,929,895,1,0,0,0,929,896,1,0,0,0,929,897,1,0,0,0,929,898,1,0,0,0,929,899,1,0,0,0,929,900,1,0,0,0,929,901,1,0,0,0,929,902,1,0,0,0,929,903,1,0,0,0,929,904,1,0,0,0,929,905,1,0,0,0,929,906,1,0,0,0,929,907,1,0,0,0,929,908,1,0,0,0,929,909,1,0,0,0,929,910,1,0,0,0,929,911,1,0,0,0,929,912,1,0,0,0,929,913,1,0,0,0,929,914,1,0,0,0,929,915,1,0,0,0,929,916,1,0,0,0,929,917,1,0,0,0,929,918,1,0,0,0,929,919,1,0,0,0,929,920,1,0,0,0,929,921,1,0,0,0,929,922,1,0,0,0,929,923,1,0,0,0,929,924,1,0,0,0,929,925,1,0,0,0,929,926,1,0,0,0,929,927,1,0,0,0,929,928,1,0,0,0,930,13,1,0,0,0,931,936,3,16,8,0,932,933,5,209,0,0,933,935,3,16,8,0,934,932,1,0,0,0,935,938,1,0,0,0,936,934,1,0,0,0,936,937,1,0,0,0,937,941,1,0,0,0,938,936,1,0,0,0,939,941,3,200,100,0,940,931,1,0,0,0,940,939,1,0,0,0,941,15,1,0,0,0,942,947,3,18,9,0,943,944,5,51,0,0,944,946,3,18,9,0,945,943,1,0,0,0,946,949,1,0,0,0,947,945,1,0,0,0,947,948,1,0,0,0,948,17,1,0,0,0,949,947,1,0,0,0,950,955,3,20,10,0,951,952,5,315,0,0,952,954,3,20,10,0,953,951,1,0,0,0,954,957,1,0,0,0,955,953,1,0,0,0,955,956,1,0,0,0,956,19,1,0,0,0,957,955,1,0,0,0,958,960,3,28,14,0,959,961,3,24,12,0,960,959,1,0,0,0,960,961,1,0,0,0,961,21,1,0,0,0,962,964,5,170,0,0,963,965,5,196,0,0,964,963,1,0,0,0,964,965,1,0,0,0,965,966,1,0,0,0,966,967,5,110,0,0,967,968,5,142,0,0,968,23,1,0,0,0,969,971,5,196,0,0,970,969,1,0,0,0,970,971,1,0,0,0,971,972,1,0,0,0,972,973,3,26,13,0,973,976,3,28,14,0,974,975,5,122,0,0,975,977,3,28,14,0,976,974,1,0,0,0,976,977,1,0,0,0,977,1021,1,0,0,0,978,980,5,196,0,0,979,978,1,0,0,0,979,980,1,0,0,0,980,981,1,0,0,0,981,983,5,159,0,0,982,984,5,80,0,0,983,982,1,0,0,0,983,984,1,0,0,0,984,985,1,0,0,0,985,1021,3,82,41,0,986,996,5,171,0,0,987,996,5,197,0,0,988,989,5,170,0,0,989,996,5,198,0,0,990,992,5,170,0,0,991,990,1,0,0,0,991,992,1,0,0,0,992,993,1,0,0,0,993,994,5,196,0,0,994,996,5,198,0,0,995,986,1,0,0,0,995,987,1,0,0,0,995,988,1,0,0,0,995,991,1,0,0,0,996,1021,1,0,0,0,997,999,5,196,0,0,998,997,1,0,0,0,998,999,1,0,0,0,999,1e3,1,0,0,0,1e3,1002,5,67,0,0,1001,1003,7,0,0,0,1002,1001,1,0,0,0,1002,1003,1,0,0,0,1003,1004,1,0,0,0,1004,1005,3,28,14,0,1005,1006,5,51,0,0,1006,1007,3,28,14,0,1007,1021,1,0,0,0,1008,1014,5,2,0,0,1009,1014,5,3,0,0,1010,1014,5,4,0,0,1011,1014,5,5,0,0,1012,1014,3,22,11,0,1013,1008,1,0,0,0,1013,1009,1,0,0,0,1013,1010,1,0,0,0,1013,1011,1,0,0,0,1013,1012,1,0,0,0,1014,1015,1,0,0,0,1015,1017,3,28,14,0,1016,1013,1,0,0,0,1017,1018,1,0,0,0,1018,1016,1,0,0,0,1018,1019,1,0,0,0,1019,1021,1,0,0,0,1020,970,1,0,0,0,1020,979,1,0,0,0,1020,995,1,0,0,0,1020,998,1,0,0,0,1020,1016,1,0,0,0,1021,25,1,0,0,0,1022,1023,7,1,0,0,1023,27,1,0,0,0,1024,1029,3,36,18,0,1025,1026,7,2,0,0,1026,1028,3,36,18,0,1027,1025,1,0,0,0,1028,1031,1,0,0,0,1029,1027,1,0,0,0,1029,1030,1,0,0,0,1030,29,1,0,0,0,1031,1029,1,0,0,0,1032,1033,5,8,0,0,1033,1034,5,8,0,0,1034,31,1,0,0,0,1035,1036,5,8,0,0,1036,1037,5,8,0,0,1037,1038,5,13,0,0,1038,33,1,0,0,0,1039,1040,5,29,0,0,1040,1041,5,29,0,0,1041,35,1,0,0,0,1042,1055,3,38,19,0,1043,1051,5,10,0,0,1044,1051,3,30,15,0,1045,1051,5,11,0,0,1046,1051,3,32,16,0,1047,1051,5,12,0,0,1048,1051,5,13,0,0,1049,1051,5,39,0,0,1050,1043,1,0,0,0,1050,1044,1,0,0,0,1050,1045,1,0,0,0,1050,1046,1,0,0,0,1050,1047,1,0,0,0,1050,1048,1,0,0,0,1050,1049,1,0,0,0,1051,1052,1,0,0,0,1052,1054,3,38,19,0,1053,1050,1,0,0,0,1054,1057,1,0,0,0,1055,1053,1,0,0,0,1055,1056,1,0,0,0,1056,1066,1,0,0,0,1057,1055,1,0,0,0,1058,1059,3,34,17,0,1059,1060,3,36,18,0,1060,1067,1,0,0,0,1061,1063,5,29,0,0,1062,1061,1,0,0,0,1063,1064,1,0,0,0,1064,1062,1,0,0,0,1064,1065,1,0,0,0,1065,1067,1,0,0,0,1066,1058,1,0,0,0,1066,1062,1,0,0,0,1066,1067,1,0,0,0,1067,37,1,0,0,0,1068,1073,3,40,20,0,1069,1070,7,3,0,0,1070,1072,3,40,20,0,1071,1069,1,0,0,0,1072,1075,1,0,0,0,1073,1071,1,0,0,0,1073,1074,1,0,0,0,1074,39,1,0,0,0,1075,1073,1,0,0,0,1076,1081,3,42,21,0,1077,1078,7,4,0,0,1078,1080,3,42,21,0,1079,1077,1,0,0,0,1080,1083,1,0,0,0,1081,1079,1,0,0,0,1081,1082,1,0,0,0,1082,41,1,0,0,0,1083,1081,1,0,0,0,1084,1089,3,44,22,0,1085,1086,5,14,0,0,1086,1088,3,44,22,0,1087,1085,1,0,0,0,1088,1091,1,0,0,0,1089,1087,1,0,0,0,1089,1090,1,0,0,0,1090,43,1,0,0,0,1091,1089,1,0,0,0,1092,1097,3,54,27,0,1093,1094,3,46,23,0,1094,1095,3,54,27,0,1095,1097,1,0,0,0,1096,1092,1,0,0,0,1096,1093,1,0,0,0,1097,45,1,0,0,0,1098,1099,7,5,0,0,1099,47,1,0,0,0,1100,1109,3,138,69,0,1101,1109,3,132,66,0,1102,1106,5,25,0,0,1103,1107,3,144,72,0,1104,1107,5,319,0,0,1105,1107,3,726,363,0,1106,1103,1,0,0,0,1106,1104,1,0,0,0,1106,1105,1,0,0,0,1107,1109,1,0,0,0,1108,1100,1,0,0,0,1108,1101,1,0,0,0,1108,1102,1,0,0,0,1109,1112,1,0,0,0,1110,1108,1,0,0,0,1110,1111,1,0,0,0,1111,1115,1,0,0,0,1112,1110,1,0,0,0,1113,1114,5,76,0,0,1114,1116,3,724,362,0,1115,1113,1,0,0,0,1115,1116,1,0,0,0,1116,49,1,0,0,0,1117,1120,3,710,355,0,1118,1120,3,68,34,0,1119,1117,1,0,0,0,1119,1118,1,0,0,0,1120,1121,1,0,0,0,1121,1122,3,48,24,0,1122,51,1,0,0,0,1123,1126,3,712,356,0,1124,1126,3,70,35,0,1125,1123,1,0,0,0,1125,1124,1,0,0,0,1126,1127,1,0,0,0,1127,1128,3,48,24,0,1128,53,1,0,0,0,1129,1132,3,50,25,0,1130,1132,3,84,42,0,1131,1129,1,0,0,0,1131,1130,1,0,0,0,1132,55,1,0,0,0,1133,1136,3,52,26,0,1134,1136,3,84,42,0,1135,1133,1,0,0,0,1135,1134,1,0,0,0,1136,57,1,0,0,0,1137,1139,5,43,0,0,1138,1140,3,112,56,0,1139,1138,1,0,0,0,1139,1140,1,0,0,0,1140,1142,1,0,0,0,1141,1143,5,26,0,0,1142,1141,1,0,0,0,1142,1143,1,0,0,0,1143,1144,1,0,0,0,1144,1145,5,42,0,0,1145,59,1,0,0,0,1146,1149,3,14,7,0,1147,1148,5,30,0,0,1148,1150,3,14,7,0,1149,1147,1,0,0,0,1149,1150,1,0,0,0,1150,1159,1,0,0,0,1151,1152,5,26,0,0,1152,1155,3,14,7,0,1153,1154,5,30,0,0,1154,1156,3,14,7,0,1155,1153,1,0,0,0,1155,1156,1,0,0,0,1156,1158,1,0,0,0,1157,1151,1,0,0,0,1158,1161,1,0,0,0,1159,1157,1,0,0,0,1159,1160,1,0,0,0,1160,61,1,0,0,0,1161,1159,1,0,0,0,1162,1164,5,37,0,0,1163,1165,3,60,30,0,1164,1163,1,0,0,0,1164,1165,1,0,0,0,1165,1167,1,0,0,0,1166,1168,5,26,0,0,1167,1166,1,0,0,0,1167,1168,1,0,0,0,1168,1169,1,0,0,0,1169,1170,5,38,0,0,1170,63,1,0,0,0,1171,1172,3,14,7,0,1172,1173,5,30,0,0,1173,1181,3,14,7,0,1174,1175,5,26,0,0,1175,1176,3,14,7,0,1176,1177,5,30,0,0,1177,1178,3,14,7,0,1178,1180,1,0,0,0,1179,1174,1,0,0,0,1180,1183,1,0,0,0,1181,1179,1,0,0,0,1181,1182,1,0,0,0,1182,65,1,0,0,0,1183,1181,1,0,0,0,1184,1186,5,15,0,0,1185,1187,3,64,32,0,1186,1185,1,0,0,0,1186,1187,1,0,0,0,1187,1189,1,0,0,0,1188,1190,5,26,0,0,1189,1188,1,0,0,0,1189,1190,1,0,0,0,1190,1191,1,0,0,0,1191,1192,5,16,0,0,1192,67,1,0,0,0,1193,1211,3,142,71,0,1194,1211,3,144,72,0,1195,1211,3,80,40,0,1196,1211,3,72,36,0,1197,1211,3,76,38,0,1198,1211,3,78,39,0,1199,1200,3,726,363,0,1200,1203,5,40,0,0,1201,1204,3,752,376,0,1202,1204,5,316,0,0,1203,1201,1,0,0,0,1203,1202,1,0,0,0,1204,1211,1,0,0,0,1205,1211,3,208,104,0,1206,1211,3,74,37,0,1207,1211,3,58,29,0,1208,1211,3,62,31,0,1209,1211,3,66,33,0,1210,1193,1,0,0,0,1210,1194,1,0,0,0,1210,1195,1,0,0,0,1210,1196,1,0,0,0,1210,1197,1,0,0,0,1210,1198,1,0,0,0,1210,1199,1,0,0,0,1210,1205,1,0,0,0,1210,1206,1,0,0,0,1210,1207,1,0,0,0,1210,1208,1,0,0,0,1210,1209,1,0,0,0,1211,69,1,0,0,0,1212,1233,3,142,71,0,1213,1233,3,144,72,0,1214,1233,3,80,40,0,1215,1233,3,72,36,0,1216,1233,3,78,39,0,1217,1218,3,726,363,0,1218,1221,5,40,0,0,1219,1222,3,752,376,0,1220,1222,5,316,0,0,1221,1219,1,0,0,0,1221,1220,1,0,0,0,1222,1233,1,0,0,0,1223,1224,5,27,0,0,1224,1225,3,232,116,0,1225,1226,5,28,0,0,1226,1233,1,0,0,0,1227,1233,3,208,104,0,1228,1233,3,74,37,0,1229,1233,3,58,29,0,1230,1233,3,62,31,0,1231,1233,3,66,33,0,1232,1212,1,0,0,0,1232,1213,1,0,0,0,1232,1214,1,0,0,0,1232,1215,1,0,0,0,1232,1216,1,0,0,0,1232,1217,1,0,0,0,1232,1223,1,0,0,0,1232,1227,1,0,0,0,1232,1228,1,0,0,0,1232,1229,1,0,0,0,1232,1230,1,0,0,0,1232,1231,1,0,0,0,1233,71,1,0,0,0,1234,1235,5,73,0,0,1235,1236,5,27,0,0,1236,1237,3,14,7,0,1237,1238,5,55,0,0,1238,1239,3,204,102,0,1239,1240,5,28,0,0,1240,73,1,0,0,0,1241,1242,5,68,0,0,1242,1243,5,27,0,0,1243,1244,3,14,7,0,1244,1245,5,55,0,0,1245,1246,3,156,78,0,1246,1247,5,28,0,0,1247,75,1,0,0,0,1248,1249,5,128,0,0,1249,1252,5,27,0,0,1250,1253,3,232,116,0,1251,1253,3,370,185,0,1252,1250,1,0,0,0,1252,1251,1,0,0,0,1253,1254,1,0,0,0,1254,1255,5,28,0,0,1255,77,1,0,0,0,1256,1258,5,72,0,0,1257,1259,3,14,7,0,1258,1257,1,0,0,0,1258,1259,1,0,0,0,1259,1261,1,0,0,0,1260,1262,3,140,70,0,1261,1260,1,0,0,0,1262,1263,1,0,0,0,1263,1261,1,0,0,0,1263,1264,1,0,0,0,1264,1267,1,0,0,0,1265,1266,5,114,0,0,1266,1268,3,14,7,0,1267,1265,1,0,0,0,1267,1268,1,0,0,0,1268,1269,1,0,0,0,1269,1270,5,118,0,0,1270,79,1,0,0,0,1271,1283,3,110,55,0,1272,1281,5,41,0,0,1273,1274,5,27,0,0,1274,1275,3,14,7,0,1275,1276,5,28,0,0,1276,1282,1,0,0,0,1277,1278,5,37,0,0,1278,1279,3,6,3,0,1279,1280,5,38,0,0,1280,1282,1,0,0,0,1281,1273,1,0,0,0,1281,1277,1,0,0,0,1282,1284,1,0,0,0,1283,1272,1,0,0,0,1283,1284,1,0,0,0,1284,81,1,0,0,0,1285,1286,3,56,28,0,1286,83,1,0,0,0,1287,1291,3,98,49,0,1288,1291,3,102,51,0,1289,1291,3,108,54,0,1290,1287,1,0,0,0,1290,1288,1,0,0,0,1290,1289,1,0,0,0,1291,85,1,0,0,0,1292,1293,5,316,0,0,1293,87,1,0,0,0,1294,1297,3,710,355,0,1295,1297,5,316,0,0,1296,1294,1,0,0,0,1296,1295,1,0,0,0,1297,89,1,0,0,0,1298,1299,3,14,7,0,1299,1300,5,55,0,0,1300,1301,3,88,44,0,1301,91,1,0,0,0,1302,1307,3,90,45,0,1303,1304,5,26,0,0,1304,1306,3,90,45,0,1305,1303,1,0,0,0,1306,1309,1,0,0,0,1307,1305,1,0,0,0,1307,1308,1,0,0,0,1308,93,1,0,0,0,1309,1307,1,0,0,0,1310,1311,3,14,7,0,1311,1312,5,26,0,0,1312,1315,3,86,43,0,1313,1314,5,216,0,0,1314,1316,3,92,46,0,1315,1313,1,0,0,0,1315,1316,1,0,0,0,1316,95,1,0,0,0,1317,1322,5,121,0,0,1318,1322,5,198,0,0,1319,1320,5,98,0,0,1320,1322,3,14,7,0,1321,1317,1,0,0,0,1321,1318,1,0,0,0,1321,1319,1,0,0,0,1322,97,1,0,0,0,1323,1324,5,175,0,0,1324,1325,5,27,0,0,1325,1328,3,94,47,0,1326,1327,5,248,0,0,1327,1329,3,156,78,0,1328,1326,1,0,0,0,1328,1329,1,0,0,0,1329,1336,1,0,0,0,1330,1331,3,96,48,0,1331,1332,5,204,0,0,1332,1333,7,6,0,0,1333,1335,1,0,0,0,1334,1330,1,0,0,0,1335,1338,1,0,0,0,1336,1334,1,0,0,0,1336,1337,1,0,0,0,1337,1339,1,0,0,0,1338,1336,1,0,0,0,1339,1340,5,28,0,0,1340,99,1,0,0,0,1341,1342,7,7,0,0,1342,1343,5,204,0,0,1343,1344,5,121,0,0,1344,101,1,0,0,0,1345,1346,5,173,0,0,1346,1347,5,27,0,0,1347,1349,3,94,47,0,1348,1350,3,100,50,0,1349,1348,1,0,0,0,1349,1350,1,0,0,0,1350,1351,1,0,0,0,1351,1352,5,28,0,0,1352,103,1,0,0,0,1353,1355,5,313,0,0,1354,1356,5,54,0,0,1355,1354,1,0,0,0,1355,1356,1,0,0,0,1356,1365,1,0,0,0,1357,1359,5,312,0,0,1358,1360,7,8,0,0,1359,1358,1,0,0,0,1359,1360,1,0,0,0,1360,1362,1,0,0,0,1361,1363,5,54,0,0,1362,1361,1,0,0,0,1362,1363,1,0,0,0,1363,1365,1,0,0,0,1364,1353,1,0,0,0,1364,1357,1,0,0,0,1365,105,1,0,0,0,1366,1373,5,121,0,0,1367,1373,5,198,0,0,1368,1369,5,115,0,0,1369,1373,5,54,0,0,1370,1371,5,115,0,0,1371,1373,5,200,0,0,1372,1366,1,0,0,0,1372,1367,1,0,0,0,1372,1368,1,0,0,0,1372,1370,1,0,0,0,1373,107,1,0,0,0,1374,1375,5,174,0,0,1375,1376,5,27,0,0,1376,1380,3,94,47,0,1377,1378,3,104,52,0,1378,1379,5,314,0,0,1379,1381,1,0,0,0,1380,1377,1,0,0,0,1380,1381,1,0,0,0,1381,1386,1,0,0,0,1382,1383,3,106,53,0,1383,1384,5,204,0,0,1384,1385,5,115,0,0,1385,1387,1,0,0,0,1386,1382,1,0,0,0,1386,1387,1,0,0,0,1387,1392,1,0,0,0,1388,1389,3,106,53,0,1389,1390,5,204,0,0,1390,1391,5,121,0,0,1391,1393,1,0,0,0,1392,1388,1,0,0,0,1392,1393,1,0,0,0,1393,1394,1,0,0,0,1394,1395,5,28,0,0,1395,109,1,0,0,0,1396,1398,5,27,0,0,1397,1399,3,130,65,0,1398,1397,1,0,0,0,1398,1399,1,0,0,0,1399,1401,1,0,0,0,1400,1402,5,26,0,0,1401,1400,1,0,0,0,1401,1402,1,0,0,0,1402,1403,1,0,0,0,1403,1404,5,28,0,0,1404,111,1,0,0,0,1405,1410,3,14,7,0,1406,1407,5,26,0,0,1407,1409,3,14,7,0,1408,1406,1,0,0,0,1409,1412,1,0,0,0,1410,1408,1,0,0,0,1410,1411,1,0,0,0,1411,113,1,0,0,0,1412,1410,1,0,0,0,1413,1414,5,27,0,0,1414,1419,3,724,362,0,1415,1416,5,26,0,0,1416,1418,3,724,362,0,1417,1415,1,0,0,0,1418,1421,1,0,0,0,1419,1417,1,0,0,0,1419,1420,1,0,0,0,1420,1422,1,0,0,0,1421,1419,1,0,0,0,1422,1423,5,28,0,0,1423,115,1,0,0,0,1424,1427,3,144,72,0,1425,1427,3,724,362,0,1426,1424,1,0,0,0,1426,1425,1,0,0,0,1427,117,1,0,0,0,1428,1429,5,27,0,0,1429,1434,3,116,58,0,1430,1431,5,26,0,0,1431,1433,3,116,58,0,1432,1430,1,0,0,0,1433,1436,1,0,0,0,1434,1432,1,0,0,0,1434,1435,1,0,0,0,1435,1437,1,0,0,0,1436,1434,1,0,0,0,1437,1438,5,28,0,0,1438,119,1,0,0,0,1439,1440,3,748,374,0,1440,1441,3,724,362,0,1441,121,1,0,0,0,1442,1443,3,724,362,0,1443,1444,5,25,0,0,1444,1445,3,724,362,0,1445,1448,1,0,0,0,1446,1448,3,738,369,0,1447,1442,1,0,0,0,1447,1446,1,0,0,0,1448,123,1,0,0,0,1449,1454,3,120,60,0,1450,1451,5,26,0,0,1451,1453,3,120,60,0,1452,1450,1,0,0,0,1453,1456,1,0,0,0,1454,1452,1,0,0,0,1454,1455,1,0,0,0,1455,1458,1,0,0,0,1456,1454,1,0,0,0,1457,1459,5,26,0,0,1458,1457,1,0,0,0,1458,1459,1,0,0,0,1459,125,1,0,0,0,1460,1465,3,122,61,0,1461,1462,5,26,0,0,1462,1464,3,122,61,0,1463,1461,1,0,0,0,1464,1467,1,0,0,0,1465,1463,1,0,0,0,1465,1466,1,0,0,0,1466,1469,1,0,0,0,1467,1465,1,0,0,0,1468,1470,5,26,0,0,1469,1468,1,0,0,0,1469,1470,1,0,0,0,1470,127,1,0,0,0,1471,1474,3,14,7,0,1472,1473,5,55,0,0,1473,1475,3,726,363,0,1474,1472,1,0,0,0,1474,1475,1,0,0,0,1475,129,1,0,0,0,1476,1481,3,128,64,0,1477,1478,5,26,0,0,1478,1480,3,128,64,0,1479,1477,1,0,0,0,1480,1483,1,0,0,0,1481,1479,1,0,0,0,1481,1482,1,0,0,0,1482,131,1,0,0,0,1483,1481,1,0,0,0,1484,1491,5,27,0,0,1485,1486,3,252,126,0,1486,1488,3,130,65,0,1487,1489,5,26,0,0,1488,1487,1,0,0,0,1488,1489,1,0,0,0,1489,1492,1,0,0,0,1490,1492,5,20,0,0,1491,1485,1,0,0,0,1491,1490,1,0,0,0,1491,1492,1,0,0,0,1492,1493,1,0,0,0,1493,1494,5,28,0,0,1494,1495,3,134,67,0,1495,133,1,0,0,0,1496,1499,3,656,328,0,1497,1499,3,658,329,0,1498,1496,1,0,0,0,1498,1497,1,0,0,0,1498,1499,1,0,0,0,1499,1502,1,0,0,0,1500,1501,5,213,0,0,1501,1503,3,660,330,0,1502,1500,1,0,0,0,1502,1503,1,0,0,0,1503,135,1,0,0,0,1504,1505,3,726,363,0,1505,1506,5,40,0,0,1506,1507,3,726,363,0,1507,1513,1,0,0,0,1508,1513,3,730,365,0,1509,1513,3,144,72,0,1510,1511,5,131,0,0,1511,1513,5,144,0,0,1512,1504,1,0,0,0,1512,1508,1,0,0,0,1512,1509,1,0,0,0,1512,1510,1,0,0,0,1513,1514,1,0,0,0,1514,1515,3,132,66,0,1515,137,1,0,0,0,1516,1517,5,43,0,0,1517,1518,3,14,7,0,1518,1519,5,42,0,0,1519,139,1,0,0,0,1520,1521,5,309,0,0,1521,1522,3,14,7,0,1522,1523,5,284,0,0,1523,1524,3,14,7,0,1524,141,1,0,0,0,1525,1536,3,788,394,0,1526,1536,3,786,393,0,1527,1536,5,316,0,0,1528,1536,5,322,0,0,1529,1536,5,198,0,0,1530,1536,5,92,0,0,1531,1536,5,91,0,0,1532,1536,5,93,0,0,1533,1536,3,784,392,0,1534,1536,5,116,0,0,1535,1525,1,0,0,0,1535,1526,1,0,0,0,1535,1527,1,0,0,0,1535,1528,1,0,0,0,1535,1529,1,0,0,0,1535,1530,1,0,0,0,1535,1531,1,0,0,0,1535,1532,1,0,0,0,1535,1533,1,0,0,0,1535,1534,1,0,0,0,1536,143,1,0,0,0,1537,1541,5,33,0,0,1538,1542,3,726,363,0,1539,1542,5,290,0,0,1540,1542,5,133,0,0,1541,1538,1,0,0,0,1541,1539,1,0,0,0,1541,1540,1,0,0,0,1542,145,1,0,0,0,1543,1545,3,144,72,0,1544,1546,5,29,0,0,1545,1544,1,0,0,0,1545,1546,1,0,0,0,1546,147,1,0,0,0,1547,1552,3,144,72,0,1548,1549,5,26,0,0,1549,1551,3,144,72,0,1550,1548,1,0,0,0,1551,1554,1,0,0,0,1552,1550,1,0,0,0,1552,1553,1,0,0,0,1553,149,1,0,0,0,1554,1552,1,0,0,0,1555,1558,3,144,72,0,1556,1557,5,55,0,0,1557,1559,3,144,72,0,1558,1556,1,0,0,0,1558,1559,1,0,0,0,1559,151,1,0,0,0,1560,1565,3,150,75,0,1561,1562,5,26,0,0,1562,1564,3,150,75,0,1563,1561,1,0,0,0,1564,1567,1,0,0,0,1565,1563,1,0,0,0,1565,1566,1,0,0,0,1566,153,1,0,0,0,1567,1565,1,0,0,0,1568,1570,7,3,0,0,1569,1568,1,0,0,0,1569,1570,1,0,0,0,1570,1573,1,0,0,0,1571,1574,3,788,394,0,1572,1574,3,786,393,0,1573,1571,1,0,0,0,1573,1572,1,0,0,0,1574,155,1,0,0,0,1575,1576,3,742,371,0,1576,157,1,0,0,0,1577,1580,3,788,394,0,1578,1580,3,144,72,0,1579,1577,1,0,0,0,1579,1578,1,0,0,0,1580,159,1,0,0,0,1581,1585,3,706,353,0,1582,1585,5,316,0,0,1583,1585,3,144,72,0,1584,1581,1,0,0,0,1584,1582,1,0,0,0,1584,1583,1,0,0,0,1585,161,1,0,0,0,1586,1587,3,160,80,0,1587,1588,5,30,0,0,1588,1589,3,204,102,0,1589,163,1,0,0,0,1590,1591,3,160,80,0,1591,1596,3,204,102,0,1592,1594,5,196,0,0,1593,1592,1,0,0,0,1593,1594,1,0,0,0,1594,1595,1,0,0,0,1595,1597,5,198,0,0,1596,1593,1,0,0,0,1596,1597,1,0,0,0,1597,1603,1,0,0,0,1598,1599,3,204,102,0,1599,1600,5,55,0,0,1600,1601,3,160,80,0,1601,1603,1,0,0,0,1602,1590,1,0,0,0,1602,1598,1,0,0,0,1603,165,1,0,0,0,1604,1605,3,160,80,0,1605,1606,5,30,0,0,1606,1608,1,0,0,0,1607,1604,1,0,0,0,1607,1608,1,0,0,0,1608,1609,1,0,0,0,1609,1610,3,204,102,0,1610,167,1,0,0,0,1611,1615,3,166,83,0,1612,1613,5,37,0,0,1613,1614,5,63,0,0,1614,1616,5,38,0,0,1615,1612,1,0,0,0,1615,1616,1,0,0,0,1616,169,1,0,0,0,1617,1622,3,168,84,0,1618,1619,5,26,0,0,1619,1621,3,168,84,0,1620,1618,1,0,0,0,1621,1624,1,0,0,0,1622,1620,1,0,0,0,1622,1623,1,0,0,0,1623,171,1,0,0,0,1624,1622,1,0,0,0,1625,1626,5,96,0,0,1626,1627,5,27,0,0,1627,1628,3,158,79,0,1628,1629,5,26,0,0,1629,1630,3,158,79,0,1630,1631,5,28,0,0,1631,173,1,0,0,0,1632,1633,5,208,0,0,1633,1634,5,6,0,0,1634,1635,3,204,102,0,1635,1636,5,8,0,0,1636,175,1,0,0,0,1637,1654,5,291,0,0,1638,1650,5,6,0,0,1639,1644,3,204,102,0,1640,1641,5,26,0,0,1641,1643,3,204,102,0,1642,1640,1,0,0,0,1643,1646,1,0,0,0,1644,1642,1,0,0,0,1644,1645,1,0,0,0,1645,1648,1,0,0,0,1646,1644,1,0,0,0,1647,1649,5,26,0,0,1648,1647,1,0,0,0,1648,1649,1,0,0,0,1649,1651,1,0,0,0,1650,1639,1,0,0,0,1650,1651,1,0,0,0,1651,1652,1,0,0,0,1652,1655,5,8,0,0,1653,1655,5,5,0,0,1654,1638,1,0,0,0,1654,1653,1,0,0,0,1655,177,1,0,0,0,1656,1673,5,270,0,0,1657,1669,5,6,0,0,1658,1663,3,162,81,0,1659,1660,5,26,0,0,1660,1662,3,162,81,0,1661,1659,1,0,0,0,1662,1665,1,0,0,0,1663,1661,1,0,0,0,1663,1664,1,0,0,0,1664,1667,1,0,0,0,1665,1663,1,0,0,0,1666,1668,5,26,0,0,1667,1666,1,0,0,0,1667,1668,1,0,0,0,1668,1670,1,0,0,0,1669,1658,1,0,0,0,1669,1670,1,0,0,0,1670,1671,1,0,0,0,1671,1674,5,8,0,0,1672,1674,5,5,0,0,1673,1657,1,0,0,0,1673,1672,1,0,0,0,1674,179,1,0,0,0,1675,1676,5,306,0,0,1676,1677,5,6,0,0,1677,1682,3,166,83,0,1678,1679,5,26,0,0,1679,1681,3,166,83,0,1680,1678,1,0,0,0,1681,1684,1,0,0,0,1682,1680,1,0,0,0,1682,1683,1,0,0,0,1683,1686,1,0,0,0,1684,1682,1,0,0,0,1685,1687,5,26,0,0,1686,1685,1,0,0,0,1686,1687,1,0,0,0,1687,1688,1,0,0,0,1688,1689,5,8,0,0,1689,181,1,0,0,0,1690,1691,5,182,0,0,1691,1692,5,6,0,0,1692,1693,3,204,102,0,1693,1694,5,8,0,0,1694,183,1,0,0,0,1695,1696,5,269,0,0,1696,1697,5,6,0,0,1697,1698,3,204,102,0,1698,1699,5,8,0,0,1699,185,1,0,0,0,1700,1701,5,138,0,0,1701,1702,5,6,0,0,1702,1703,3,204,102,0,1703,1704,5,8,0,0,1704,187,1,0,0,0,1705,1706,5,106,0,0,1706,1707,5,6,0,0,1707,1708,3,204,102,0,1708,1709,5,26,0,0,1709,1710,3,204,102,0,1710,1711,5,8,0,0,1711,189,1,0,0,0,1712,1713,5,264,0,0,1713,1714,5,6,0,0,1714,1715,3,204,102,0,1715,1716,5,8,0,0,1716,191,1,0,0,0,1717,1718,5,119,0,0,1718,1719,5,6,0,0,1719,1724,3,160,80,0,1720,1721,5,26,0,0,1721,1723,3,160,80,0,1722,1720,1,0,0,0,1723,1726,1,0,0,0,1724,1722,1,0,0,0,1724,1725,1,0,0,0,1725,1728,1,0,0,0,1726,1724,1,0,0,0,1727,1729,5,26,0,0,1728,1727,1,0,0,0,1728,1729,1,0,0,0,1729,1730,1,0,0,0,1730,1731,5,8,0,0,1731,193,1,0,0,0,1732,1733,5,243,0,0,1733,1734,5,6,0,0,1734,1735,3,160,80,0,1735,1736,5,8,0,0,1736,195,1,0,0,0,1737,1738,5,281,0,0,1738,1739,5,6,0,0,1739,1740,3,204,102,0,1740,1741,5,26,0,0,1741,1742,3,160,80,0,1742,1743,5,8,0,0,1743,197,1,0,0,0,1744,1745,5,70,0,0,1745,1746,5,6,0,0,1746,1748,5,27,0,0,1747,1749,3,170,85,0,1748,1747,1,0,0,0,1748,1749,1,0,0,0,1749,1751,1,0,0,0,1750,1752,5,26,0,0,1751,1750,1,0,0,0,1751,1752,1,0,0,0,1752,1757,1,0,0,0,1753,1754,5,43,0,0,1754,1755,3,170,85,0,1755,1756,5,42,0,0,1756,1758,1,0,0,0,1757,1753,1,0,0,0,1757,1758,1,0,0,0,1758,1759,1,0,0,0,1759,1760,5,28,0,0,1760,1761,5,41,0,0,1761,1762,3,204,102,0,1762,1763,5,8,0,0,1763,199,1,0,0,0,1764,1778,3,174,87,0,1765,1778,3,176,88,0,1766,1778,3,178,89,0,1767,1778,3,180,90,0,1768,1778,3,182,91,0,1769,1778,3,184,92,0,1770,1778,3,186,93,0,1771,1778,3,188,94,0,1772,1778,3,190,95,0,1773,1778,3,192,96,0,1774,1778,3,194,97,0,1775,1778,3,196,98,0,1776,1778,3,198,99,0,1777,1764,1,0,0,0,1777,1765,1,0,0,0,1777,1766,1,0,0,0,1777,1767,1,0,0,0,1777,1768,1,0,0,0,1777,1769,1,0,0,0,1777,1770,1,0,0,0,1777,1771,1,0,0,0,1777,1772,1,0,0,0,1777,1773,1,0,0,0,1777,1774,1,0,0,0,1777,1775,1,0,0,0,1777,1776,1,0,0,0,1778,1782,1,0,0,0,1779,1781,5,29,0,0,1780,1779,1,0,0,0,1781,1784,1,0,0,0,1782,1780,1,0,0,0,1782,1783,1,0,0,0,1783,201,1,0,0,0,1784,1782,1,0,0,0,1785,1797,3,200,100,0,1786,1789,3,172,86,0,1787,1789,3,156,78,0,1788,1786,1,0,0,0,1788,1787,1,0,0,0,1789,1793,1,0,0,0,1790,1792,5,29,0,0,1791,1790,1,0,0,0,1792,1795,1,0,0,0,1793,1791,1,0,0,0,1793,1794,1,0,0,0,1794,1797,1,0,0,0,1795,1793,1,0,0,0,1796,1785,1,0,0,0,1796,1788,1,0,0,0,1797,203,1,0,0,0,1798,1801,3,202,101,0,1799,1801,3,144,72,0,1800,1798,1,0,0,0,1800,1799,1,0,0,0,1801,205,1,0,0,0,1802,1803,5,316,0,0,1803,207,1,0,0,0,1804,1805,5,306,0,0,1805,1806,5,27,0,0,1806,1807,3,14,7,0,1807,1808,5,26,0,0,1808,1809,3,14,7,0,1809,1810,5,26,0,0,1810,1811,3,14,7,0,1811,1812,5,28,0,0,1812,1828,1,0,0,0,1813,1814,5,119,0,0,1814,1815,5,27,0,0,1815,1816,3,14,7,0,1816,1817,5,26,0,0,1817,1818,3,14,7,0,1818,1819,5,28,0,0,1819,1828,1,0,0,0,1820,1821,5,70,0,0,1821,1822,5,27,0,0,1822,1823,3,14,7,0,1823,1824,5,26,0,0,1824,1825,3,14,7,0,1825,1826,5,28,0,0,1826,1828,1,0,0,0,1827,1804,1,0,0,0,1827,1813,1,0,0,0,1827,1820,1,0,0,0,1828,209,1,0,0,0,1829,1830,5,97,0,0,1830,1831,3,144,72,0,1831,1832,5,55,0,0,1832,1835,3,202,101,0,1833,1834,5,2,0,0,1834,1836,3,142,71,0,1835,1833,1,0,0,0,1835,1836,1,0,0,0,1836,211,1,0,0,0,1837,1839,5,25,0,0,1838,1837,1,0,0,0,1838,1839,1,0,0,0,1839,1840,1,0,0,0,1840,1845,3,724,362,0,1841,1842,5,25,0,0,1842,1844,3,724,362,0,1843,1841,1,0,0,0,1844,1847,1,0,0,0,1845,1843,1,0,0,0,1845,1846,1,0,0,0,1846,213,1,0,0,0,1847,1845,1,0,0,0,1848,1849,5,158,0,0,1849,1850,3,212,106,0,1850,1851,5,273,0,0,1851,1852,3,152,76,0,1852,215,1,0,0,0,1853,1854,5,130,0,0,1854,1855,3,148,74,0,1855,217,1,0,0,0,1856,1859,3,144,72,0,1857,1859,5,116,0,0,1858,1856,1,0,0,0,1858,1857,1,0,0,0,1859,1860,1,0,0,0,1860,1862,5,27,0,0,1861,1863,3,112,56,0,1862,1861,1,0,0,0,1862,1863,1,0,0,0,1863,1864,1,0,0,0,1864,1865,5,28,0,0,1865,219,1,0,0,0,1866,1867,5,65,0,0,1867,1868,3,566,283,0,1868,1869,5,118,0,0,1869,1870,5,111,0,0,1870,221,1,0,0,0,1871,1874,5,111,0,0,1872,1875,3,218,109,0,1873,1875,3,220,110,0,1874,1872,1,0,0,0,1874,1873,1,0,0,0,1875,223,1,0,0,0,1876,1877,5,223,0,0,1877,1878,3,754,377,0,1878,1892,3,724,362,0,1879,1880,5,2,0,0,1880,1893,3,226,113,0,1881,1882,5,27,0,0,1882,1887,3,226,113,0,1883,1884,5,26,0,0,1884,1886,3,226,113,0,1885,1883,1,0,0,0,1886,1889,1,0,0,0,1887,1885,1,0,0,0,1887,1888,1,0,0,0,1888,1890,1,0,0,0,1889,1887,1,0,0,0,1890,1891,5,28,0,0,1891,1893,1,0,0,0,1892,1879,1,0,0,0,1892,1881,1,0,0,0,1892,1893,1,0,0,0,1893,225,1,0,0,0,1894,1900,3,154,77,0,1895,1900,3,706,353,0,1896,1900,5,316,0,0,1897,1900,3,784,392,0,1898,1900,3,144,72,0,1899,1894,1,0,0,0,1899,1895,1,0,0,0,1899,1896,1,0,0,0,1899,1897,1,0,0,0,1899,1898,1,0,0,0,1900,227,1,0,0,0,1901,1903,3,14,7,0,1902,1904,7,9,0,0,1903,1902,1,0,0,0,1903,1904,1,0,0,0,1904,229,1,0,0,0,1905,1910,3,228,114,0,1906,1907,5,26,0,0,1907,1909,3,228,114,0,1908,1906,1,0,0,0,1909,1912,1,0,0,0,1910,1908,1,0,0,0,1910,1911,1,0,0,0,1911,231,1,0,0,0,1912,1910,1,0,0,0,1913,1919,3,236,118,0,1914,1915,3,238,119,0,1915,1916,3,236,118,0,1916,1918,1,0,0,0,1917,1914,1,0,0,0,1918,1921,1,0,0,0,1919,1917,1,0,0,0,1919,1920,1,0,0,0,1920,233,1,0,0,0,1921,1919,1,0,0,0,1922,1928,3,240,120,0,1923,1924,3,238,119,0,1924,1925,3,236,118,0,1925,1927,1,0,0,0,1926,1923,1,0,0,0,1927,1930,1,0,0,0,1928,1926,1,0,0,0,1928,1929,1,0,0,0,1929,235,1,0,0,0,1930,1928,1,0,0,0,1931,1937,3,240,120,0,1932,1933,5,27,0,0,1933,1934,3,240,120,0,1934,1935,5,28,0,0,1935,1937,1,0,0,0,1936,1931,1,0,0,0,1936,1932,1,0,0,0,1937,237,1,0,0,0,1938,1940,5,295,0,0,1939,1941,5,48,0,0,1940,1939,1,0,0,0,1940,1941,1,0,0,0,1941,1945,1,0,0,0,1942,1945,5,168,0,0,1943,1945,5,124,0,0,1944,1938,1,0,0,0,1944,1942,1,0,0,0,1944,1943,1,0,0,0,1945,239,1,0,0,0,1946,1953,3,242,121,0,1947,1948,5,181,0,0,1948,1951,3,14,7,0,1949,1950,7,10,0,0,1950,1952,3,14,7,0,1951,1949,1,0,0,0,1951,1952,1,0,0,0,1952,1954,1,0,0,0,1953,1947,1,0,0,0,1953,1954,1,0,0,0,1954,241,1,0,0,0,1955,1957,5,109,0,0,1956,1955,1,0,0,0,1956,1957,1,0,0,0,1957,1961,1,0,0,0,1958,1962,3,244,122,0,1959,1962,3,250,125,0,1960,1962,3,254,127,0,1961,1958,1,0,0,0,1961,1959,1,0,0,0,1961,1960,1,0,0,0,1962,1966,1,0,0,0,1963,1964,5,169,0,0,1964,1965,5,246,0,0,1965,1967,3,116,58,0,1966,1963,1,0,0,0,1966,1967,1,0,0,0,1967,243,1,0,0,0,1968,1970,5,228,0,0,1969,1971,5,269,0,0,1970,1969,1,0,0,0,1970,1971,1,0,0,0,1971,1972,1,0,0,0,1972,1977,3,346,173,0,1973,1974,5,26,0,0,1974,1976,3,346,173,0,1975,1973,1,0,0,0,1976,1979,1,0,0,0,1977,1975,1,0,0,0,1977,1978,1,0,0,0,1978,2001,1,0,0,0,1979,1977,1,0,0,0,1980,1981,5,303,0,0,1981,1984,3,136,68,0,1982,1983,5,55,0,0,1983,1985,3,724,362,0,1984,1982,1,0,0,0,1984,1985,1,0,0,0,1985,1988,1,0,0,0,1986,1987,5,312,0,0,1987,1989,3,248,124,0,1988,1986,1,0,0,0,1988,1989,1,0,0,0,1989,1991,1,0,0,0,1990,1992,3,800,400,0,1991,1990,1,0,0,0,1991,1992,1,0,0,0,1992,1995,1,0,0,0,1993,1994,5,152,0,0,1994,1996,3,14,7,0,1995,1993,1,0,0,0,1995,1996,1,0,0,0,1996,1999,1,0,0,0,1997,1998,5,57,0,0,1998,2e3,3,314,157,0,1999,1997,1,0,0,0,1999,2e3,1,0,0,0,2e3,2002,1,0,0,0,2001,1980,1,0,0,0,2001,2002,1,0,0,0,2002,245,1,0,0,0,2003,2004,3,724,362,0,2004,2005,5,2,0,0,2005,2006,3,14,7,0,2006,247,1,0,0,0,2007,2012,3,246,123,0,2008,2009,5,26,0,0,2009,2011,3,246,123,0,2010,2008,1,0,0,0,2011,2014,1,0,0,0,2012,2010,1,0,0,0,2012,2013,1,0,0,0,2013,249,1,0,0,0,2014,2012,1,0,0,0,2015,2016,5,232,0,0,2016,2021,3,346,173,0,2017,2018,5,26,0,0,2018,2020,3,346,173,0,2019,2017,1,0,0,0,2020,2023,1,0,0,0,2021,2019,1,0,0,0,2021,2022,1,0,0,0,2022,2026,1,0,0,0,2023,2021,1,0,0,0,2024,2025,5,225,0,0,2025,2027,3,230,115,0,2026,2024,1,0,0,0,2026,2027,1,0,0,0,2027,2028,1,0,0,0,2028,2029,5,204,0,0,2029,2030,3,124,62,0,2030,2032,5,303,0,0,2031,2033,5,48,0,0,2032,2031,1,0,0,0,2032,2033,1,0,0,0,2033,2034,1,0,0,0,2034,2037,3,136,68,0,2035,2036,5,55,0,0,2036,2038,3,724,362,0,2037,2035,1,0,0,0,2037,2038,1,0,0,0,2038,2040,1,0,0,0,2039,2041,3,800,400,0,2040,2039,1,0,0,0,2040,2041,1,0,0,0,2041,2044,1,0,0,0,2042,2043,5,152,0,0,2043,2045,3,14,7,0,2044,2042,1,0,0,0,2044,2045,1,0,0,0,2045,2048,1,0,0,0,2046,2047,5,57,0,0,2047,2049,3,314,157,0,2048,2046,1,0,0,0,2048,2049,1,0,0,0,2049,251,1,0,0,0,2050,2052,7,11,0,0,2051,2050,1,0,0,0,2051,2052,1,0,0,0,2052,253,1,0,0,0,2053,2054,5,142,0,0,2054,2056,3,338,169,0,2055,2053,1,0,0,0,2055,2056,1,0,0,0,2056,2057,1,0,0,0,2057,2059,5,262,0,0,2058,2060,5,269,0,0,2059,2058,1,0,0,0,2059,2060,1,0,0,0,2060,2061,1,0,0,0,2061,2062,3,252,126,0,2062,2067,3,336,168,0,2063,2064,5,26,0,0,2064,2066,3,336,168,0,2065,2063,1,0,0,0,2066,2069,1,0,0,0,2067,2065,1,0,0,0,2067,2068,1,0,0,0,2068,2071,1,0,0,0,2069,2067,1,0,0,0,2070,2072,5,26,0,0,2071,2070,1,0,0,0,2071,2072,1,0,0,0,2072,2075,1,0,0,0,2073,2074,5,313,0,0,2074,2076,3,126,63,0,2075,2073,1,0,0,0,2075,2076,1,0,0,0,2076,2079,1,0,0,0,2077,2078,5,142,0,0,2078,2080,3,338,169,0,2079,2077,1,0,0,0,2079,2080,1,0,0,0,2080,2082,1,0,0,0,2081,2083,3,800,400,0,2082,2081,1,0,0,0,2082,2083,1,0,0,0,2083,2085,1,0,0,0,2084,2086,3,318,159,0,2085,2084,1,0,0,0,2085,2086,1,0,0,0,2086,2089,1,0,0,0,2087,2088,5,152,0,0,2088,2090,3,14,7,0,2089,2087,1,0,0,0,2089,2090,1,0,0,0,2090,2092,1,0,0,0,2091,2093,3,664,332,0,2092,2091,1,0,0,0,2092,2093,1,0,0,0,2093,2095,1,0,0,0,2094,2096,3,316,158,0,2095,2094,1,0,0,0,2095,2096,1,0,0,0,2096,255,1,0,0,0,2097,2098,5,187,0,0,2098,2100,5,27,0,0,2099,2101,3,678,339,0,2100,2099,1,0,0,0,2100,2101,1,0,0,0,2101,2103,1,0,0,0,2102,2104,3,314,157,0,2103,2102,1,0,0,0,2103,2104,1,0,0,0,2104,2106,1,0,0,0,2105,2107,3,262,131,0,2106,2105,1,0,0,0,2106,2107,1,0,0,0,2107,2109,1,0,0,0,2108,2110,3,258,129,0,2109,2108,1,0,0,0,2109,2110,1,0,0,0,2110,2111,1,0,0,0,2111,2112,3,268,134,0,2112,2113,5,28,0,0,2113,257,1,0,0,0,2114,2115,5,205,0,0,2115,2116,5,255,0,0,2116,2117,5,220,0,0,2117,2126,5,185,0,0,2118,2119,5,48,0,0,2119,2120,5,256,0,0,2120,2121,5,220,0,0,2121,2123,5,185,0,0,2122,2124,3,260,130,0,2123,2122,1,0,0,0,2123,2124,1,0,0,0,2124,2126,1,0,0,0,2125,2114,1,0,0,0,2125,2118,1,0,0,0,2126,259,1,0,0,0,2127,2128,5,266,0,0,2128,2129,5,115,0,0,2129,2137,5,186,0,0,2130,2131,5,203,0,0,2131,2132,5,115,0,0,2132,2137,5,186,0,0,2133,2134,5,312,0,0,2134,2135,5,298,0,0,2135,2137,5,256,0,0,2136,2127,1,0,0,0,2136,2130,1,0,0,0,2136,2133,1,0,0,0,2137,261,1,0,0,0,2138,2139,5,188,0,0,2139,2140,3,264,132,0,2140,263,1,0,0,0,2141,2146,3,266,133,0,2142,2143,5,26,0,0,2143,2145,3,266,133,0,2144,2142,1,0,0,0,2145,2148,1,0,0,0,2146,2144,1,0,0,0,2146,2147,1,0,0,0,2147,265,1,0,0,0,2148,2146,1,0,0,0,2149,2150,3,14,7,0,2150,2151,5,55,0,0,2151,2152,3,724,362,0,2152,267,1,0,0,0,2153,2154,5,47,0,0,2154,2155,5,185,0,0,2155,2157,3,270,135,0,2156,2153,1,0,0,0,2156,2157,1,0,0,0,2157,2159,1,0,0,0,2158,2160,3,274,137,0,2159,2158,1,0,0,0,2159,2160,1,0,0,0,2160,2161,1,0,0,0,2161,2162,5,219,0,0,2162,2163,5,27,0,0,2163,2164,3,276,138,0,2164,2166,5,28,0,0,2165,2167,3,290,145,0,2166,2165,1,0,0,0,2166,2167,1,0,0,0,2167,2168,1,0,0,0,2168,2169,5,101,0,0,2169,2170,3,302,151,0,2170,269,1,0,0,0,2171,2172,5,267,0,0,2172,2173,5,286,0,0,2173,2174,5,194,0,0,2174,2191,5,255,0,0,2175,2176,5,267,0,0,2176,2177,5,218,0,0,2177,2178,5,177,0,0,2178,2191,5,255,0,0,2179,2180,5,267,0,0,2180,2181,5,286,0,0,2181,2182,5,136,0,0,2182,2191,3,272,136,0,2183,2184,5,267,0,0,2184,2185,5,286,0,0,2185,2186,5,177,0,0,2186,2191,3,272,136,0,2187,2188,5,267,0,0,2188,2189,5,286,0,0,2189,2191,3,272,136,0,2190,2171,1,0,0,0,2190,2175,1,0,0,0,2190,2179,1,0,0,0,2190,2183,1,0,0,0,2190,2187,1,0,0,0,2191,271,1,0,0,0,2192,2193,3,312,156,0,2193,273,1,0,0,0,2194,2195,7,12,0,0,2195,275,1,0,0,0,2196,2201,3,278,139,0,2197,2198,5,13,0,0,2198,2200,3,278,139,0,2199,2197,1,0,0,0,2200,2203,1,0,0,0,2201,2199,1,0,0,0,2201,2202,1,0,0,0,2202,277,1,0,0,0,2203,2201,1,0,0,0,2204,2206,3,280,140,0,2205,2204,1,0,0,0,2206,2207,1,0,0,0,2207,2205,1,0,0,0,2207,2208,1,0,0,0,2208,279,1,0,0,0,2209,2211,3,284,142,0,2210,2212,3,282,141,0,2211,2210,1,0,0,0,2211,2212,1,0,0,0,2212,281,1,0,0,0,2213,2215,5,20,0,0,2214,2216,5,29,0,0,2215,2214,1,0,0,0,2215,2216,1,0,0,0,2216,2242,1,0,0,0,2217,2219,5,17,0,0,2218,2220,5,29,0,0,2219,2218,1,0,0,0,2219,2220,1,0,0,0,2220,2242,1,0,0,0,2221,2223,5,29,0,0,2222,2224,5,29,0,0,2223,2222,1,0,0,0,2223,2224,1,0,0,0,2224,2242,1,0,0,0,2225,2227,5,37,0,0,2226,2228,3,788,394,0,2227,2226,1,0,0,0,2227,2228,1,0,0,0,2228,2229,1,0,0,0,2229,2231,5,26,0,0,2230,2232,3,788,394,0,2231,2230,1,0,0,0,2231,2232,1,0,0,0,2232,2233,1,0,0,0,2233,2235,5,38,0,0,2234,2236,5,29,0,0,2235,2234,1,0,0,0,2235,2236,1,0,0,0,2236,2242,1,0,0,0,2237,2238,5,37,0,0,2238,2239,3,788,394,0,2239,2240,5,38,0,0,2240,2242,1,0,0,0,2241,2213,1,0,0,0,2241,2217,1,0,0,0,2241,2221,1,0,0,0,2241,2225,1,0,0,0,2241,2237,1,0,0,0,2242,283,1,0,0,0,2243,2259,3,286,143,0,2244,2259,5,33,0,0,2245,2259,5,39,0,0,2246,2248,5,27,0,0,2247,2249,3,276,138,0,2248,2247,1,0,0,0,2248,2249,1,0,0,0,2249,2250,1,0,0,0,2250,2259,5,28,0,0,2251,2252,5,37,0,0,2252,2253,5,18,0,0,2253,2254,3,276,138,0,2254,2255,5,18,0,0,2255,2256,5,38,0,0,2256,2259,1,0,0,0,2257,2259,3,288,144,0,2258,2243,1,0,0,0,2258,2244,1,0,0,0,2258,2245,1,0,0,0,2258,2246,1,0,0,0,2258,2251,1,0,0,0,2258,2257,1,0,0,0,2259,285,1,0,0,0,2260,2261,3,312,156,0,2261,287,1,0,0,0,2262,2263,5,221,0,0,2263,2264,5,27,0,0,2264,2269,3,276,138,0,2265,2266,5,26,0,0,2266,2268,3,276,138,0,2267,2265,1,0,0,0,2268,2271,1,0,0,0,2269,2267,1,0,0,0,2269,2270,1,0,0,0,2270,2272,1,0,0,0,2271,2269,1,0,0,0,2272,2273,5,28,0,0,2273,289,1,0,0,0,2274,2275,5,272,0,0,2275,2276,3,292,146,0,2276,291,1,0,0,0,2277,2282,3,294,147,0,2278,2279,5,26,0,0,2279,2281,3,294,147,0,2280,2278,1,0,0,0,2281,2284,1,0,0,0,2282,2280,1,0,0,0,2282,2283,1,0,0,0,2283,293,1,0,0,0,2284,2282,1,0,0,0,2285,2286,3,296,148,0,2286,2287,5,2,0,0,2287,2288,5,27,0,0,2288,2289,3,298,149,0,2289,2290,5,28,0,0,2290,295,1,0,0,0,2291,2292,3,312,156,0,2292,297,1,0,0,0,2293,2298,3,300,150,0,2294,2295,5,26,0,0,2295,2297,3,300,150,0,2296,2294,1,0,0,0,2297,2300,1,0,0,0,2298,2296,1,0,0,0,2298,2299,1,0,0,0,2299,299,1,0,0,0,2300,2298,1,0,0,0,2301,2302,3,312,156,0,2302,301,1,0,0,0,2303,2308,3,304,152,0,2304,2305,5,26,0,0,2305,2307,3,304,152,0,2306,2304,1,0,0,0,2307,2310,1,0,0,0,2308,2306,1,0,0,0,2308,2309,1,0,0,0,2309,303,1,0,0,0,2310,2308,1,0,0,0,2311,2312,3,306,153,0,2312,2313,5,55,0,0,2313,2314,3,308,154,0,2314,305,1,0,0,0,2315,2316,3,312,156,0,2316,307,1,0,0,0,2317,2318,3,310,155,0,2318,309,1,0,0,0,2319,2320,3,14,7,0,2320,311,1,0,0,0,2321,2322,3,704,352,0,2322,313,1,0,0,0,2323,2324,5,210,0,0,2324,2325,5,69,0,0,2325,2326,3,230,115,0,2326,315,1,0,0,0,2327,2329,5,57,0,0,2328,2327,1,0,0,0,2328,2329,1,0,0,0,2329,2330,1,0,0,0,2330,2331,3,314,157,0,2331,317,1,0,0,0,2332,2334,5,148,0,0,2333,2335,5,80,0,0,2334,2333,1,0,0,0,2334,2335,1,0,0,0,2335,2336,1,0,0,0,2336,2337,5,69,0,0,2337,2338,3,252,126,0,2338,2341,3,320,160,0,2339,2340,5,312,0,0,2340,2342,3,724,362,0,2341,2339,1,0,0,0,2341,2342,1,0,0,0,2342,319,1,0,0,0,2343,2348,3,322,161,0,2344,2345,5,26,0,0,2345,2347,3,322,161,0,2346,2344,1,0,0,0,2347,2350,1,0,0,0,2348,2346,1,0,0,0,2348,2349,1,0,0,0,2349,321,1,0,0,0,2350,2348,1,0,0,0,2351,2357,3,324,162,0,2352,2357,3,328,164,0,2353,2357,3,330,165,0,2354,2357,3,332,166,0,2355,2357,3,334,167,0,2356,2351,1,0,0,0,2356,2352,1,0,0,0,2356,2353,1,0,0,0,2356,2354,1,0,0,0,2356,2355,1,0,0,0,2357,323,1,0,0,0,2358,2359,3,128,64,0,2359,325,1,0,0,0,2360,2365,3,324,162,0,2361,2362,5,26,0,0,2362,2364,3,324,162,0,2363,2361,1,0,0,0,2364,2367,1,0,0,0,2365,2363,1,0,0,0,2365,2366,1,0,0,0,2366,327,1,0,0,0,2367,2365,1,0,0,0,2368,2369,5,254,0,0,2369,2370,5,27,0,0,2370,2371,3,326,163,0,2371,2372,5,28,0,0,2372,329,1,0,0,0,2373,2374,5,89,0,0,2374,2375,5,27,0,0,2375,2376,3,326,163,0,2376,2377,5,28,0,0,2377,331,1,0,0,0,2378,2379,5,149,0,0,2379,2380,5,265,0,0,2380,2381,5,27,0,0,2381,2382,3,320,160,0,2382,2383,5,28,0,0,2383,333,1,0,0,0,2384,2385,5,153,0,0,2385,2386,5,27,0,0,2386,2387,3,14,7,0,2387,2388,5,26,0,0,2388,2389,3,14,7,0,2389,2390,5,26,0,0,2390,2391,3,14,7,0,2391,2392,5,26,0,0,2392,2393,3,14,7,0,2393,2394,5,28,0,0,2394,335,1,0,0,0,2395,2396,3,748,374,0,2396,2397,5,20,0,0,2397,2405,1,0,0,0,2398,2402,3,14,7,0,2399,2400,5,55,0,0,2400,2403,3,726,363,0,2401,2403,3,744,372,0,2402,2399,1,0,0,0,2402,2401,1,0,0,0,2402,2403,1,0,0,0,2403,2405,1,0,0,0,2404,2395,1,0,0,0,2404,2398,1,0,0,0,2405,337,1,0,0,0,2406,2408,5,53,0,0,2407,2406,1,0,0,0,2407,2408,1,0,0,0,2408,2409,1,0,0,0,2409,2420,3,344,172,0,2410,2412,3,358,179,0,2411,2413,5,53,0,0,2412,2411,1,0,0,0,2412,2413,1,0,0,0,2413,2414,1,0,0,0,2414,2416,3,344,172,0,2415,2417,3,360,180,0,2416,2415,1,0,0,0,2416,2417,1,0,0,0,2417,2419,1,0,0,0,2418,2410,1,0,0,0,2419,2422,1,0,0,0,2420,2418,1,0,0,0,2420,2421,1,0,0,0,2421,339,1,0,0,0,2422,2420,1,0,0,0,2423,2426,3,120,60,0,2424,2425,5,55,0,0,2425,2427,3,724,362,0,2426,2424,1,0,0,0,2426,2427,1,0,0,0,2427,341,1,0,0,0,2428,2437,3,340,170,0,2429,2430,5,27,0,0,2430,2432,3,130,65,0,2431,2433,5,26,0,0,2432,2431,1,0,0,0,2432,2433,1,0,0,0,2433,2434,1,0,0,0,2434,2435,5,28,0,0,2435,2437,1,0,0,0,2436,2428,1,0,0,0,2436,2429,1,0,0,0,2437,343,1,0,0,0,2438,2448,3,346,173,0,2439,2446,5,137,0,0,2440,2442,7,13,0,0,2441,2440,1,0,0,0,2441,2442,1,0,0,0,2442,2443,1,0,0,0,2443,2444,5,69,0,0,2444,2447,3,342,171,0,2445,2447,5,78,0,0,2446,2441,1,0,0,0,2446,2445,1,0,0,0,2447,2449,1,0,0,0,2448,2439,1,0,0,0,2448,2449,1,0,0,0,2449,345,1,0,0,0,2450,2452,3,348,174,0,2451,2453,3,256,128,0,2452,2451,1,0,0,0,2452,2453,1,0,0,0,2453,2462,1,0,0,0,2454,2455,5,55,0,0,2455,2458,3,724,362,0,2456,2458,3,744,372,0,2457,2454,1,0,0,0,2457,2456,1,0,0,0,2458,2460,1,0,0,0,2459,2461,3,114,57,0,2460,2459,1,0,0,0,2460,2461,1,0,0,0,2461,2463,1,0,0,0,2462,2457,1,0,0,0,2462,2463,1,0,0,0,2463,2466,1,0,0,0,2464,2467,3,350,175,0,2465,2467,3,352,176,0,2466,2464,1,0,0,0,2466,2465,1,0,0,0,2466,2467,1,0,0,0,2467,347,1,0,0,0,2468,2478,3,572,286,0,2469,2470,5,27,0,0,2470,2471,3,232,116,0,2471,2472,5,28,0,0,2472,2478,1,0,0,0,2473,2474,5,27,0,0,2474,2475,3,370,185,0,2475,2476,5,28,0,0,2476,2478,1,0,0,0,2477,2468,1,0,0,0,2477,2469,1,0,0,0,2477,2473,1,0,0,0,2478,349,1,0,0,0,2479,2480,5,257,0,0,2480,2481,3,14,7,0,2481,351,1,0,0,0,2482,2483,5,279,0,0,2483,2484,3,354,177,0,2484,2485,5,27,0,0,2485,2486,3,14,7,0,2486,2488,5,28,0,0,2487,2489,3,356,178,0,2488,2487,1,0,0,0,2488,2489,1,0,0,0,2489,353,1,0,0,0,2490,2491,7,14,0,0,2491,355,1,0,0,0,2492,2493,5,239,0,0,2493,2494,5,27,0,0,2494,2495,3,14,7,0,2495,2496,5,28,0,0,2496,357,1,0,0,0,2497,2522,5,26,0,0,2498,2500,5,193,0,0,2499,2498,1,0,0,0,2499,2500,1,0,0,0,2500,2518,1,0,0,0,2501,2503,5,178,0,0,2502,2504,7,15,0,0,2503,2502,1,0,0,0,2503,2504,1,0,0,0,2504,2512,1,0,0,0,2505,2507,5,251,0,0,2506,2508,7,15,0,0,2507,2506,1,0,0,0,2507,2508,1,0,0,0,2508,2512,1,0,0,0,2509,2512,5,126,0,0,2510,2512,5,143,0,0,2511,2501,1,0,0,0,2511,2505,1,0,0,0,2511,2509,1,0,0,0,2511,2510,1,0,0,0,2511,2512,1,0,0,0,2512,2514,1,0,0,0,2513,2515,5,212,0,0,2514,2513,1,0,0,0,2514,2515,1,0,0,0,2515,2519,1,0,0,0,2516,2519,5,165,0,0,2517,2519,5,88,0,0,2518,2511,1,0,0,0,2518,2516,1,0,0,0,2518,2517,1,0,0,0,2519,2520,1,0,0,0,2520,2522,5,172,0,0,2521,2497,1,0,0,0,2521,2499,1,0,0,0,2522,359,1,0,0,0,2523,2524,5,204,0,0,2524,2528,3,14,7,0,2525,2526,5,303,0,0,2526,2528,3,118,59,0,2527,2523,1,0,0,0,2527,2525,1,0,0,0,2528,361,1,0,0,0,2529,2539,5,248,0,0,2530,2540,5,20,0,0,2531,2536,3,724,362,0,2532,2533,5,26,0,0,2533,2535,3,724,362,0,2534,2532,1,0,0,0,2535,2538,1,0,0,0,2536,2534,1,0,0,0,2536,2537,1,0,0,0,2537,2540,1,0,0,0,2538,2536,1,0,0,0,2539,2530,1,0,0,0,2539,2531,1,0,0,0,2540,363,1,0,0,0,2541,2554,5,166,0,0,2542,2543,5,166,0,0,2543,2544,5,209,0,0,2544,2554,5,44,0,0,2545,2546,5,166,0,0,2546,2547,5,209,0,0,2547,2554,5,249,0,0,2548,2549,5,166,0,0,2549,2550,5,209,0,0,2550,2554,5,155,0,0,2551,2554,5,300,0,0,2552,2554,5,240,0,0,2553,2541,1,0,0,0,2553,2542,1,0,0,0,2553,2545,1,0,0,0,2553,2548,1,0,0,0,2553,2551,1,0,0,0,2553,2552,1,0,0,0,2554,2555,1,0,0,0,2555,2556,5,169,0,0,2556,2557,3,588,294,0,2557,2559,3,368,184,0,2558,2560,3,362,181,0,2559,2558,1,0,0,0,2559,2560,1,0,0,0,2560,365,1,0,0,0,2561,2573,5,166,0,0,2562,2563,5,166,0,0,2563,2564,5,209,0,0,2564,2573,5,44,0,0,2565,2566,5,166,0,0,2566,2567,5,209,0,0,2567,2573,5,249,0,0,2568,2569,5,166,0,0,2569,2570,5,209,0,0,2570,2573,5,155,0,0,2571,2573,5,240,0,0,2572,2561,1,0,0,0,2572,2562,1,0,0,0,2572,2565,1,0,0,0,2572,2568,1,0,0,0,2572,2571,1,0,0,0,2573,2574,1,0,0,0,2574,2575,5,169,0,0,2575,2576,3,588,294,0,2576,2577,3,368,184,0,2577,367,1,0,0,0,2578,2580,3,114,57,0,2579,2578,1,0,0,0,2579,2580,1,0,0,0,2580,2581,1,0,0,0,2581,2585,3,372,186,0,2582,2583,5,98,0,0,2583,2585,5,305,0,0,2584,2579,1,0,0,0,2584,2582,1,0,0,0,2585,369,1,0,0,0,2586,2587,5,305,0,0,2587,2588,3,374,187,0,2588,371,1,0,0,0,2589,2592,3,370,185,0,2590,2592,3,232,116,0,2591,2589,1,0,0,0,2591,2590,1,0,0,0,2592,373,1,0,0,0,2593,2598,3,376,188,0,2594,2595,5,26,0,0,2595,2597,3,376,188,0,2596,2594,1,0,0,0,2597,2600,1,0,0,0,2598,2596,1,0,0,0,2598,2599,1,0,0,0,2599,375,1,0,0,0,2600,2598,1,0,0,0,2601,2602,5,27,0,0,2602,2603,3,112,56,0,2603,2604,5,28,0,0,2604,377,1,0,0,0,2605,2608,3,112,56,0,2606,2608,3,232,116,0,2607,2605,1,0,0,0,2607,2606,1,0,0,0,2608,379,1,0,0,0,2609,2612,5,87,0,0,2610,2611,5,209,0,0,2611,2613,5,240,0,0,2612,2610,1,0,0,0,2612,2613,1,0,0,0,2613,2614,1,0,0,0,2614,2615,5,131,0,0,2615,2616,5,94,0,0,2616,2620,5,268,0,0,2617,2618,5,154,0,0,2618,2619,5,196,0,0,2619,2621,5,128,0,0,2620,2617,1,0,0,0,2620,2621,1,0,0,0,2621,2622,1,0,0,0,2622,2623,3,582,291,0,2623,2624,3,426,213,0,2624,381,1,0,0,0,2625,2626,5,49,0,0,2626,2627,5,131,0,0,2627,2628,5,94,0,0,2628,2629,5,268,0,0,2629,2630,3,582,291,0,2630,2635,3,384,192,0,2631,2632,5,26,0,0,2632,2634,3,384,192,0,2633,2631,1,0,0,0,2634,2637,1,0,0,0,2635,2633,1,0,0,0,2635,2636,1,0,0,0,2636,383,1,0,0,0,2637,2635,1,0,0,0,2638,2642,3,456,228,0,2639,2642,3,458,229,0,2640,2642,3,460,230,0,2641,2638,1,0,0,0,2641,2639,1,0,0,0,2641,2640,1,0,0,0,2642,385,1,0,0,0,2643,2644,5,112,0,0,2644,2645,5,131,0,0,2645,2646,5,94,0,0,2646,2649,5,268,0,0,2647,2648,5,154,0,0,2648,2650,5,128,0,0,2649,2647,1,0,0,0,2649,2650,1,0,0,0,2650,2651,1,0,0,0,2651,2652,3,582,291,0,2652,387,1,0,0,0,2653,2654,5,87,0,0,2654,2655,5,307,0,0,2655,2656,3,582,291,0,2656,2657,3,426,213,0,2657,2658,5,55,0,0,2658,2659,3,232,116,0,2659,389,1,0,0,0,2660,2661,5,112,0,0,2661,2662,5,307,0,0,2662,2663,3,582,291,0,2663,391,1,0,0,0,2664,2665,5,300,0,0,2665,2666,5,200,0,0,2666,2667,3,582,291,0,2667,2668,5,27,0,0,2668,2669,5,292,0,0,2669,2670,3,416,208,0,2670,2672,5,28,0,0,2671,2673,3,396,198,0,2672,2671,1,0,0,0,2672,2673,1,0,0,0,2673,393,1,0,0,0,2674,2675,5,87,0,0,2675,2679,5,200,0,0,2676,2677,5,154,0,0,2677,2678,5,196,0,0,2678,2680,5,128,0,0,2679,2676,1,0,0,0,2679,2680,1,0,0,0,2680,2681,1,0,0,0,2681,2682,3,582,291,0,2682,2683,5,27,0,0,2683,2684,5,292,0,0,2684,2685,3,416,208,0,2685,2687,5,28,0,0,2686,2688,3,396,198,0,2687,2686,1,0,0,0,2687,2688,1,0,0,0,2688,395,1,0,0,0,2689,2690,5,312,0,0,2690,2691,3,414,207,0,2691,397,1,0,0,0,2692,2693,5,49,0,0,2693,2694,5,200,0,0,2694,2695,3,582,291,0,2695,2696,5,27,0,0,2696,2697,5,292,0,0,2697,2698,3,416,208,0,2698,2699,5,28,0,0,2699,2700,3,400,200,0,2700,399,1,0,0,0,2701,2702,5,264,0,0,2702,2703,3,414,207,0,2703,401,1,0,0,0,2704,2705,5,112,0,0,2705,2708,5,200,0,0,2706,2707,5,154,0,0,2707,2709,5,128,0,0,2708,2706,1,0,0,0,2708,2709,1,0,0,0,2709,2710,1,0,0,0,2710,2711,3,582,291,0,2711,2712,5,27,0,0,2712,2713,5,292,0,0,2713,2714,3,416,208,0,2714,2716,5,28,0,0,2715,2717,3,404,202,0,2716,2715,1,0,0,0,2716,2717,1,0,0,0,2717,403,1,0,0,0,2718,2719,5,312,0,0,2719,2720,3,414,207,0,2720,405,1,0,0,0,2721,2725,3,752,376,0,2722,2725,3,144,72,0,2723,2725,5,316,0,0,2724,2721,1,0,0,0,2724,2722,1,0,0,0,2724,2723,1,0,0,0,2725,407,1,0,0,0,2726,2727,3,726,363,0,2727,2728,5,2,0,0,2728,2729,3,406,203,0,2729,409,1,0,0,0,2730,2731,3,726,363,0,2731,411,1,0,0,0,2732,2735,3,408,204,0,2733,2735,3,410,205,0,2734,2732,1,0,0,0,2734,2733,1,0,0,0,2735,413,1,0,0,0,2736,2749,3,412,206,0,2737,2738,5,27,0,0,2738,2743,3,412,206,0,2739,2740,5,26,0,0,2740,2742,3,412,206,0,2741,2739,1,0,0,0,2742,2745,1,0,0,0,2743,2741,1,0,0,0,2743,2744,1,0,0,0,2744,2746,1,0,0,0,2745,2743,1,0,0,0,2746,2747,5,28,0,0,2747,2749,1,0,0,0,2748,2736,1,0,0,0,2748,2737,1,0,0,0,2749,415,1,0,0,0,2750,2751,3,726,363,0,2751,417,1,0,0,0,2752,2755,5,87,0,0,2753,2754,5,209,0,0,2754,2756,5,240,0,0,2755,2753,1,0,0,0,2755,2756,1,0,0,0,2756,2765,1,0,0,0,2757,2766,5,277,0,0,2758,2766,5,280,0,0,2759,2760,5,131,0,0,2760,2766,5,277,0,0,2761,2762,5,282,0,0,2762,2766,5,277,0,0,2763,2764,5,283,0,0,2764,2766,5,277,0,0,2765,2757,1,0,0,0,2765,2758,1,0,0,0,2765,2759,1,0,0,0,2765,2761,1,0,0,0,2765,2763,1,0,0,0,2766,2770,1,0,0,0,2767,2768,5,154,0,0,2768,2769,5,196,0,0,2769,2771,5,128,0,0,2770,2767,1,0,0,0,2770,2771,1,0,0,0,2771,2772,1,0,0,0,2772,2773,3,586,293,0,2773,2774,5,27,0,0,2774,2779,3,420,210,0,2775,2776,5,26,0,0,2776,2778,3,420,210,0,2777,2775,1,0,0,0,2778,2781,1,0,0,0,2779,2777,1,0,0,0,2779,2780,1,0,0,0,2780,2783,1,0,0,0,2781,2779,1,0,0,0,2782,2784,5,26,0,0,2783,2782,1,0,0,0,2783,2784,1,0,0,0,2784,2785,1,0,0,0,2785,2787,5,28,0,0,2786,2788,3,422,211,0,2787,2786,1,0,0,0,2787,2788,1,0,0,0,2788,2790,1,0,0,0,2789,2791,3,424,212,0,2790,2789,1,0,0,0,2790,2791,1,0,0,0,2791,2793,1,0,0,0,2792,2794,3,426,213,0,2793,2792,1,0,0,0,2793,2794,1,0,0,0,2794,2796,1,0,0,0,2795,2797,3,428,214,0,2796,2795,1,0,0,0,2796,2797,1,0,0,0,2797,2799,1,0,0,0,2798,2800,3,432,216,0,2799,2798,1,0,0,0,2799,2800,1,0,0,0,2800,419,1,0,0,0,2801,2808,3,476,238,0,2802,2808,3,484,242,0,2803,2808,3,486,243,0,2804,2808,3,508,254,0,2805,2808,3,494,247,0,2806,2808,3,728,364,0,2807,2801,1,0,0,0,2807,2802,1,0,0,0,2807,2803,1,0,0,0,2807,2804,1,0,0,0,2807,2805,1,0,0,0,2807,2806,1,0,0,0,2808,421,1,0,0,0,2809,2810,5,162,0,0,2810,2811,5,27,0,0,2811,2816,3,584,292,0,2812,2813,5,26,0,0,2813,2815,3,584,292,0,2814,2812,1,0,0,0,2815,2818,1,0,0,0,2816,2814,1,0,0,0,2816,2817,1,0,0,0,2817,2819,1,0,0,0,2818,2816,1,0,0,0,2819,2820,5,28,0,0,2820,423,1,0,0,0,2821,2822,5,215,0,0,2822,2823,5,69,0,0,2823,2824,5,151,0,0,2824,2825,3,114,57,0,2825,425,1,0,0,0,2826,2827,5,312,0,0,2827,2828,5,27,0,0,2828,2833,3,430,215,0,2829,2830,5,26,0,0,2830,2832,3,430,215,0,2831,2829,1,0,0,0,2832,2835,1,0,0,0,2833,2831,1,0,0,0,2833,2834,1,0,0,0,2834,2836,1,0,0,0,2835,2833,1,0,0,0,2836,2837,5,28,0,0,2837,427,1,0,0,0,2838,2839,5,280,0,0,2839,2840,3,584,292,0,2840,429,1,0,0,0,2841,2842,3,724,362,0,2842,2843,5,2,0,0,2843,2844,3,506,253,0,2844,431,1,0,0,0,2845,2846,5,55,0,0,2846,2847,3,372,186,0,2847,433,1,0,0,0,2848,2849,5,49,0,0,2849,2850,5,277,0,0,2850,2851,3,586,293,0,2851,2856,3,436,218,0,2852,2853,5,26,0,0,2853,2855,3,436,218,0,2854,2852,1,0,0,0,2855,2858,1,0,0,0,2856,2854,1,0,0,0,2856,2857,1,0,0,0,2857,435,1,0,0,0,2858,2856,1,0,0,0,2859,2875,3,446,223,0,2860,2875,3,448,224,0,2861,2875,3,450,225,0,2862,2875,3,452,226,0,2863,2875,3,454,227,0,2864,2875,3,456,228,0,2865,2875,3,458,229,0,2866,2875,3,460,230,0,2867,2875,3,462,231,0,2868,2875,3,464,232,0,2869,2875,3,466,233,0,2870,2875,3,470,235,0,2871,2875,3,472,236,0,2872,2875,3,474,237,0,2873,2875,3,468,234,0,2874,2859,1,0,0,0,2874,2860,1,0,0,0,2874,2861,1,0,0,0,2874,2862,1,0,0,0,2874,2863,1,0,0,0,2874,2864,1,0,0,0,2874,2865,1,0,0,0,2874,2866,1,0,0,0,2874,2867,1,0,0,0,2874,2868,1,0,0,0,2874,2869,1,0,0,0,2874,2870,1,0,0,0,2874,2871,1,0,0,0,2874,2872,1,0,0,0,2874,2873,1,0,0,0,2875,437,1,0,0,0,2876,2877,5,49,0,0,2877,2878,5,131,0,0,2878,2879,5,277,0,0,2879,2880,3,586,293,0,2880,2885,3,440,220,0,2881,2882,5,26,0,0,2882,2884,3,440,220,0,2883,2881,1,0,0,0,2884,2887,1,0,0,0,2885,2883,1,0,0,0,2885,2886,1,0,0,0,2886,439,1,0,0,0,2887,2885,1,0,0,0,2888,2894,3,446,223,0,2889,2894,3,448,224,0,2890,2894,3,456,228,0,2891,2894,3,458,229,0,2892,2894,3,460,230,0,2893,2888,1,0,0,0,2893,2889,1,0,0,0,2893,2890,1,0,0,0,2893,2891,1,0,0,0,2893,2892,1,0,0,0,2894,441,1,0,0,0,2895,2896,5,49,0,0,2896,2897,5,280,0,0,2897,2898,3,582,291,0,2898,2903,3,444,222,0,2899,2900,5,26,0,0,2900,2902,3,444,222,0,2901,2899,1,0,0,0,2902,2905,1,0,0,0,2903,2901,1,0,0,0,2903,2904,1,0,0,0,2904,443,1,0,0,0,2905,2903,1,0,0,0,2906,2909,3,446,223,0,2907,2909,3,448,224,0,2908,2906,1,0,0,0,2908,2907,1,0,0,0,2909,445,1,0,0,0,2910,2912,5,46,0,0,2911,2913,5,77,0,0,2912,2911,1,0,0,0,2912,2913,1,0,0,0,2913,2914,1,0,0,0,2914,2915,3,476,238,0,2915,447,1,0,0,0,2916,2918,5,112,0,0,2917,2919,5,77,0,0,2918,2917,1,0,0,0,2918,2919,1,0,0,0,2919,2920,1,0,0,0,2920,2921,3,724,362,0,2921,449,1,0,0,0,2922,2923,5,49,0,0,2923,2924,5,77,0,0,2924,2925,3,724,362,0,2925,2926,5,264,0,0,2926,2927,3,478,239,0,2927,451,1,0,0,0,2928,2929,5,46,0,0,2929,2930,3,508,254,0,2930,453,1,0,0,0,2931,2932,5,49,0,0,2932,2933,5,134,0,0,2933,2934,3,724,362,0,2934,2935,5,264,0,0,2935,2936,3,724,362,0,2936,2937,3,514,257,0,2937,455,1,0,0,0,2938,2939,5,264,0,0,2939,2940,3,724,362,0,2940,2941,3,506,253,0,2941,457,1,0,0,0,2942,2943,5,264,0,0,2943,2944,5,27,0,0,2944,2949,3,504,252,0,2945,2946,5,26,0,0,2946,2948,3,504,252,0,2947,2945,1,0,0,0,2948,2951,1,0,0,0,2949,2947,1,0,0,0,2949,2950,1,0,0,0,2950,2952,1,0,0,0,2951,2949,1,0,0,0,2952,2953,5,28,0,0,2953,459,1,0,0,0,2954,2955,5,242,0,0,2955,2956,5,27,0,0,2956,2961,3,724,362,0,2957,2958,5,26,0,0,2958,2960,3,724,362,0,2959,2957,1,0,0,0,2960,2963,1,0,0,0,2961,2959,1,0,0,0,2961,2962,1,0,0,0,2962,2964,1,0,0,0,2963,2961,1,0,0,0,2964,2965,5,28,0,0,2965,461,1,0,0,0,2966,2967,5,46,0,0,2967,2968,3,486,243,0,2968,463,1,0,0,0,2969,2970,5,112,0,0,2970,2971,5,160,0,0,2971,2972,3,724,362,0,2972,465,1,0,0,0,2973,2974,5,238,0,0,2974,2975,5,286,0,0,2975,2976,3,736,368,0,2976,467,1,0,0,0,2977,2978,5,238,0,0,2978,2979,5,160,0,0,2979,2980,3,724,362,0,2980,2981,5,286,0,0,2981,2982,3,724,362,0,2982,469,1,0,0,0,2983,2984,5,46,0,0,2984,2985,3,494,247,0,2985,471,1,0,0,0,2986,2987,5,49,0,0,2987,2988,5,74,0,0,2988,2989,3,724,362,0,2989,2990,3,502,251,0,2990,473,1,0,0,0,2991,2992,5,112,0,0,2992,2993,5,74,0,0,2993,2994,3,724,362,0,2994,475,1,0,0,0,2995,2996,3,728,364,0,2996,2998,3,204,102,0,2997,2999,3,478,239,0,2998,2997,1,0,0,0,2998,2999,1,0,0,0,2999,3e3,1,0,0,0,3e3,3001,3,480,240,0,3001,477,1,0,0,0,3002,3003,5,134,0,0,3003,3004,3,724,362,0,3004,479,1,0,0,0,3005,3007,5,196,0,0,3006,3005,1,0,0,0,3006,3007,1,0,0,0,3007,3008,1,0,0,0,3008,3010,5,198,0,0,3009,3006,1,0,0,0,3009,3010,1,0,0,0,3010,3013,1,0,0,0,3011,3012,5,98,0,0,3012,3014,3,14,7,0,3013,3011,1,0,0,0,3013,3014,1,0,0,0,3014,481,1,0,0,0,3015,3017,3,724,362,0,3016,3018,7,9,0,0,3017,3016,1,0,0,0,3017,3018,1,0,0,0,3018,483,1,0,0,0,3019,3020,5,226,0,0,3020,3021,5,176,0,0,3021,3022,5,27,0,0,3022,3027,3,724,362,0,3023,3024,5,26,0,0,3024,3026,3,724,362,0,3025,3023,1,0,0,0,3026,3029,1,0,0,0,3027,3025,1,0,0,0,3027,3028,1,0,0,0,3028,3030,1,0,0,0,3029,3027,1,0,0,0,3030,3031,5,28,0,0,3031,3059,1,0,0,0,3032,3033,5,215,0,0,3033,3034,5,69,0,0,3034,3035,5,27,0,0,3035,3040,3,724,362,0,3036,3037,5,26,0,0,3037,3039,3,724,362,0,3038,3036,1,0,0,0,3039,3042,1,0,0,0,3040,3038,1,0,0,0,3040,3041,1,0,0,0,3041,3043,1,0,0,0,3042,3040,1,0,0,0,3043,3044,5,28,0,0,3044,3059,1,0,0,0,3045,3046,5,210,0,0,3046,3047,5,69,0,0,3047,3048,5,27,0,0,3048,3053,3,482,241,0,3049,3050,5,26,0,0,3050,3052,3,482,241,0,3051,3049,1,0,0,0,3052,3055,1,0,0,0,3053,3051,1,0,0,0,3053,3054,1,0,0,0,3054,3056,1,0,0,0,3055,3053,1,0,0,0,3056,3057,5,28,0,0,3057,3059,1,0,0,0,3058,3019,1,0,0,0,3058,3032,1,0,0,0,3058,3045,1,0,0,0,3059,485,1,0,0,0,3060,3061,5,160,0,0,3061,3062,3,724,362,0,3062,3083,3,488,244,0,3063,3064,5,312,0,0,3064,3065,5,27,0,0,3065,3066,3,724,362,0,3066,3067,5,2,0,0,3067,3075,3,724,362,0,3068,3069,5,26,0,0,3069,3070,3,724,362,0,3070,3071,5,2,0,0,3071,3072,3,724,362,0,3072,3074,1,0,0,0,3073,3068,1,0,0,0,3074,3077,1,0,0,0,3075,3073,1,0,0,0,3075,3076,1,0,0,0,3076,3079,1,0,0,0,3077,3075,1,0,0,0,3078,3080,5,26,0,0,3079,3078,1,0,0,0,3079,3080,1,0,0,0,3080,3081,1,0,0,0,3081,3082,5,28,0,0,3082,3084,1,0,0,0,3083,3063,1,0,0,0,3083,3084,1,0,0,0,3084,3085,1,0,0,0,3085,3086,5,204,0,0,3086,3087,5,27,0,0,3087,3092,3,728,364,0,3088,3089,5,26,0,0,3089,3091,3,728,364,0,3090,3088,1,0,0,0,3091,3094,1,0,0,0,3092,3090,1,0,0,0,3092,3093,1,0,0,0,3093,3095,1,0,0,0,3094,3092,1,0,0,0,3095,3108,5,28,0,0,3096,3097,5,86,0,0,3097,3098,5,27,0,0,3098,3103,3,728,364,0,3099,3100,5,26,0,0,3100,3102,3,728,364,0,3101,3099,1,0,0,0,3102,3105,1,0,0,0,3103,3101,1,0,0,0,3103,3104,1,0,0,0,3104,3106,1,0,0,0,3105,3103,1,0,0,0,3106,3107,5,28,0,0,3107,3109,1,0,0,0,3108,3096,1,0,0,0,3108,3109,1,0,0,0,3109,487,1,0,0,0,3110,3113,3,490,245,0,3111,3113,3,492,246,0,3112,3110,1,0,0,0,3112,3111,1,0,0,0,3113,489,1,0,0,0,3114,3116,5,146,0,0,3115,3117,5,296,0,0,3116,3115,1,0,0,0,3116,3117,1,0,0,0,3117,3119,1,0,0,0,3118,3120,7,16,0,0,3119,3118,1,0,0,0,3119,3120,1,0,0,0,3120,491,1,0,0,0,3121,3122,5,183,0,0,3122,493,1,0,0,0,3123,3124,5,74,0,0,3124,3125,3,724,362,0,3125,3126,5,312,0,0,3126,3127,5,27,0,0,3127,3128,3,496,248,0,3128,3129,5,28,0,0,3129,495,1,0,0,0,3130,3135,3,498,249,0,3131,3132,5,26,0,0,3132,3134,3,498,249,0,3133,3131,1,0,0,0,3134,3137,1,0,0,0,3135,3133,1,0,0,0,3135,3136,1,0,0,0,3136,497,1,0,0,0,3137,3135,1,0,0,0,3138,3139,3,724,362,0,3139,3140,5,2,0,0,3140,3141,3,500,250,0,3141,499,1,0,0,0,3142,3143,3,14,7,0,3143,501,1,0,0,0,3144,3151,5,108,0,0,3145,3146,5,264,0,0,3146,3147,5,27,0,0,3147,3148,3,496,248,0,3148,3149,5,28,0,0,3149,3151,1,0,0,0,3150,3144,1,0,0,0,3150,3145,1,0,0,0,3151,503,1,0,0,0,3152,3153,3,724,362,0,3153,3154,5,2,0,0,3154,3155,3,506,253,0,3155,505,1,0,0,0,3156,3169,3,706,353,0,3157,3169,5,316,0,0,3158,3169,3,788,394,0,3159,3169,3,516,258,0,3160,3161,3,14,7,0,3161,3162,5,204,0,0,3162,3165,3,724,362,0,3163,3164,5,55,0,0,3164,3166,7,17,0,0,3165,3163,1,0,0,0,3165,3166,1,0,0,0,3166,3169,1,0,0,0,3167,3169,3,784,392,0,3168,3156,1,0,0,0,3168,3157,1,0,0,0,3168,3158,1,0,0,0,3168,3159,1,0,0,0,3168,3160,1,0,0,0,3168,3167,1,0,0,0,3169,507,1,0,0,0,3170,3171,5,134,0,0,3171,3172,3,724,362,0,3172,3173,3,510,255,0,3173,509,1,0,0,0,3174,3183,5,27,0,0,3175,3180,3,512,256,0,3176,3177,5,26,0,0,3177,3179,3,512,256,0,3178,3176,1,0,0,0,3179,3182,1,0,0,0,3180,3178,1,0,0,0,3180,3181,1,0,0,0,3181,3184,1,0,0,0,3182,3180,1,0,0,0,3183,3175,1,0,0,0,3183,3184,1,0,0,0,3184,3185,1,0,0,0,3185,3186,5,28,0,0,3186,511,1,0,0,0,3187,3188,3,724,362,0,3188,3189,5,2,0,0,3189,3190,3,514,257,0,3190,513,1,0,0,0,3191,3192,5,316,0,0,3192,515,1,0,0,0,3193,3194,5,27,0,0,3194,3199,3,518,259,0,3195,3196,5,26,0,0,3196,3198,3,518,259,0,3197,3195,1,0,0,0,3198,3201,1,0,0,0,3199,3197,1,0,0,0,3199,3200,1,0,0,0,3200,3202,1,0,0,0,3201,3199,1,0,0,0,3202,3203,5,28,0,0,3203,3206,1,0,0,0,3204,3206,3,518,259,0,3205,3193,1,0,0,0,3205,3204,1,0,0,0,3206,517,1,0,0,0,3207,3208,5,27,0,0,3208,3213,3,142,71,0,3209,3210,5,26,0,0,3210,3212,3,142,71,0,3211,3209,1,0,0,0,3212,3215,1,0,0,0,3213,3211,1,0,0,0,3213,3214,1,0,0,0,3214,3216,1,0,0,0,3215,3213,1,0,0,0,3216,3217,5,28,0,0,3217,519,1,0,0,0,3218,3223,5,112,0,0,3219,3224,5,277,0,0,3220,3224,5,280,0,0,3221,3222,5,131,0,0,3222,3224,5,277,0,0,3223,3219,1,0,0,0,3223,3220,1,0,0,0,3223,3221,1,0,0,0,3224,3227,1,0,0,0,3225,3226,5,154,0,0,3226,3228,5,128,0,0,3227,3225,1,0,0,0,3227,3228,1,0,0,0,3228,3229,1,0,0,0,3229,3230,3,586,293,0,3230,521,1,0,0,0,3231,3232,5,87,0,0,3232,3233,5,302,0,0,3233,3235,3,532,266,0,3234,3236,3,534,267,0,3235,3234,1,0,0,0,3235,3236,1,0,0,0,3236,523,1,0,0,0,3237,3238,5,49,0,0,3238,3239,5,302,0,0,3239,3247,3,532,266,0,3240,3242,5,312,0,0,3241,3240,1,0,0,0,3241,3242,1,0,0,0,3242,3243,1,0,0,0,3243,3248,3,534,267,0,3244,3245,5,238,0,0,3245,3246,5,286,0,0,3246,3248,3,532,266,0,3247,3241,1,0,0,0,3247,3244,1,0,0,0,3248,525,1,0,0,0,3249,3250,5,87,0,0,3250,3251,5,148,0,0,3251,3265,3,532,266,0,3252,3253,5,312,0,0,3253,3254,5,302,0,0,3254,3259,3,532,266,0,3255,3256,5,26,0,0,3256,3258,3,532,266,0,3257,3255,1,0,0,0,3258,3261,1,0,0,0,3259,3257,1,0,0,0,3259,3260,1,0,0,0,3260,3263,1,0,0,0,3261,3259,1,0,0,0,3262,3264,5,26,0,0,3263,3262,1,0,0,0,3263,3264,1,0,0,0,3264,3266,1,0,0,0,3265,3252,1,0,0,0,3265,3266,1,0,0,0,3266,527,1,0,0,0,3267,3268,5,49,0,0,3268,3269,5,148,0,0,3269,3286,3,532,266,0,3270,3271,7,18,0,0,3271,3272,5,302,0,0,3272,3277,3,532,266,0,3273,3274,5,26,0,0,3274,3276,3,532,266,0,3275,3273,1,0,0,0,3276,3279,1,0,0,0,3277,3275,1,0,0,0,3277,3278,1,0,0,0,3278,3281,1,0,0,0,3279,3277,1,0,0,0,3280,3282,5,26,0,0,3281,3280,1,0,0,0,3281,3282,1,0,0,0,3282,3287,1,0,0,0,3283,3284,5,238,0,0,3284,3285,5,286,0,0,3285,3287,3,532,266,0,3286,3270,1,0,0,0,3286,3283,1,0,0,0,3287,529,1,0,0,0,3288,3289,5,112,0,0,3289,3292,7,19,0,0,3290,3291,5,154,0,0,3291,3293,5,128,0,0,3292,3290,1,0,0,0,3292,3293,1,0,0,0,3293,3294,1,0,0,0,3294,3299,3,532,266,0,3295,3296,5,26,0,0,3296,3298,3,532,266,0,3297,3295,1,0,0,0,3298,3301,1,0,0,0,3299,3297,1,0,0,0,3299,3300,1,0,0,0,3300,3303,1,0,0,0,3301,3299,1,0,0,0,3302,3304,5,26,0,0,3303,3302,1,0,0,0,3303,3304,1,0,0,0,3304,531,1,0,0,0,3305,3308,3,726,363,0,3306,3308,3,144,72,0,3307,3305,1,0,0,0,3307,3306,1,0,0,0,3308,533,1,0,0,0,3309,3311,5,117,0,0,3310,3309,1,0,0,0,3310,3311,1,0,0,0,3311,3312,1,0,0,0,3312,3313,5,217,0,0,3313,3314,3,14,7,0,3314,535,1,0,0,0,3315,3316,5,147,0,0,3316,3317,3,544,272,0,3317,3318,5,204,0,0,3318,3323,3,728,364,0,3319,3320,5,26,0,0,3320,3322,3,728,364,0,3321,3319,1,0,0,0,3322,3325,1,0,0,0,3323,3321,1,0,0,0,3323,3324,1,0,0,0,3324,3326,1,0,0,0,3325,3323,1,0,0,0,3326,3327,5,286,0,0,3327,3332,3,532,266,0,3328,3329,5,26,0,0,3329,3331,3,532,266,0,3330,3328,1,0,0,0,3331,3334,1,0,0,0,3332,3330,1,0,0,0,3332,3333,1,0,0,0,3333,3336,1,0,0,0,3334,3332,1,0,0,0,3335,3337,5,26,0,0,3336,3335,1,0,0,0,3336,3337,1,0,0,0,3337,3341,1,0,0,0,3338,3339,5,312,0,0,3339,3340,5,147,0,0,3340,3342,5,207,0,0,3341,3338,1,0,0,0,3341,3342,1,0,0,0,3342,537,1,0,0,0,3343,3347,5,250,0,0,3344,3345,5,147,0,0,3345,3346,5,207,0,0,3346,3348,5,140,0,0,3347,3344,1,0,0,0,3347,3348,1,0,0,0,3348,3349,1,0,0,0,3349,3350,3,544,272,0,3350,3351,5,204,0,0,3351,3356,3,728,364,0,3352,3353,5,26,0,0,3353,3355,3,728,364,0,3354,3352,1,0,0,0,3355,3358,1,0,0,0,3356,3354,1,0,0,0,3356,3357,1,0,0,0,3357,3359,1,0,0,0,3358,3356,1,0,0,0,3359,3360,5,142,0,0,3360,3365,3,532,266,0,3361,3362,5,26,0,0,3362,3364,3,532,266,0,3363,3361,1,0,0,0,3364,3367,1,0,0,0,3365,3363,1,0,0,0,3365,3366,1,0,0,0,3366,539,1,0,0,0,3367,3365,1,0,0,0,3368,3393,5,83,0,0,3369,3393,5,182,0,0,3370,3393,5,166,0,0,3371,3393,5,184,0,0,3372,3393,5,112,0,0,3373,3393,5,147,0,0,3374,3375,5,191,0,0,3375,3393,7,20,0,0,3376,3377,7,21,0,0,3377,3393,5,255,0,0,3378,3379,7,22,0,0,3379,3393,5,259,0,0,3380,3382,5,262,0,0,3381,3383,7,23,0,0,3382,3381,1,0,0,0,3382,3383,1,0,0,0,3383,3393,1,0,0,0,3384,3386,7,24,0,0,3385,3387,5,179,0,0,3386,3385,1,0,0,0,3386,3387,1,0,0,0,3387,3393,1,0,0,0,3388,3390,5,87,0,0,3389,3391,7,25,0,0,3390,3389,1,0,0,0,3390,3391,1,0,0,0,3391,3393,1,0,0,0,3392,3368,1,0,0,0,3392,3369,1,0,0,0,3392,3370,1,0,0,0,3392,3371,1,0,0,0,3392,3372,1,0,0,0,3392,3373,1,0,0,0,3392,3374,1,0,0,0,3392,3376,1,0,0,0,3392,3378,1,0,0,0,3392,3380,1,0,0,0,3392,3384,1,0,0,0,3392,3388,1,0,0,0,3393,541,1,0,0,0,3394,3397,3,540,270,0,3395,3397,5,316,0,0,3396,3394,1,0,0,0,3396,3395,1,0,0,0,3397,543,1,0,0,0,3398,3403,3,542,271,0,3399,3400,5,26,0,0,3400,3402,3,542,271,0,3401,3399,1,0,0,0,3402,3405,1,0,0,0,3403,3401,1,0,0,0,3403,3404,1,0,0,0,3404,3407,1,0,0,0,3405,3403,1,0,0,0,3406,3408,5,26,0,0,3407,3406,1,0,0,0,3407,3408,1,0,0,0,3408,3414,1,0,0,0,3409,3411,5,48,0,0,3410,3412,5,227,0,0,3411,3410,1,0,0,0,3411,3412,1,0,0,0,3412,3414,1,0,0,0,3413,3398,1,0,0,0,3413,3409,1,0,0,0,3414,545,1,0,0,0,3415,3416,5,87,0,0,3416,3417,5,59,0,0,3417,3418,5,241,0,0,3418,3419,3,582,291,0,3419,3420,5,140,0,0,3420,3425,3,548,274,0,3421,3422,5,26,0,0,3422,3424,3,548,274,0,3423,3421,1,0,0,0,3424,3427,1,0,0,0,3425,3423,1,0,0,0,3425,3426,1,0,0,0,3426,3428,1,0,0,0,3427,3425,1,0,0,0,3428,3429,5,312,0,0,3429,3430,5,27,0,0,3430,3431,3,550,275,0,3431,3432,5,28,0,0,3432,547,1,0,0,0,3433,3434,3,582,291,0,3434,3435,3,798,399,0,3435,549,1,0,0,0,3436,3441,3,552,276,0,3437,3438,5,26,0,0,3438,3440,3,552,276,0,3439,3437,1,0,0,0,3440,3443,1,0,0,0,3441,3439,1,0,0,0,3441,3442,1,0,0,0,3442,551,1,0,0,0,3443,3441,1,0,0,0,3444,3445,3,724,362,0,3445,3446,5,2,0,0,3446,3447,5,316,0,0,3447,553,1,0,0,0,3448,3449,5,49,0,0,3449,3450,5,59,0,0,3450,3451,5,241,0,0,3451,3452,3,582,291,0,3452,3457,3,556,278,0,3453,3454,5,26,0,0,3454,3456,3,556,278,0,3455,3453,1,0,0,0,3456,3459,1,0,0,0,3457,3455,1,0,0,0,3457,3458,1,0,0,0,3458,555,1,0,0,0,3459,3457,1,0,0,0,3460,3461,3,558,279,0,3461,557,1,0,0,0,3462,3463,5,264,0,0,3463,3464,5,27,0,0,3464,3465,3,550,275,0,3465,3466,5,28,0,0,3466,559,1,0,0,0,3467,3468,5,112,0,0,3468,3469,5,59,0,0,3469,3470,5,241,0,0,3470,3472,3,582,291,0,3471,3473,5,71,0,0,3472,3471,1,0,0,0,3472,3473,1,0,0,0,3473,561,1,0,0,0,3474,3479,3,146,73,0,3475,3476,5,26,0,0,3476,3478,3,146,73,0,3477,3475,1,0,0,0,3478,3481,1,0,0,0,3479,3477,1,0,0,0,3479,3480,1,0,0,0,3480,563,1,0,0,0,3481,3479,1,0,0,0,3482,3483,5,101,0,0,3483,3484,7,26,0,0,3484,3485,3,144,72,0,3485,3487,5,27,0,0,3486,3488,3,562,281,0,3487,3486,1,0,0,0,3487,3488,1,0,0,0,3488,3489,1,0,0,0,3489,3490,5,28,0,0,3490,3491,5,55,0,0,3491,3492,3,566,283,0,3492,3493,5,118,0,0,3493,3494,5,101,0,0,3494,565,1,0,0,0,3495,3497,5,24,0,0,3496,3495,1,0,0,0,3497,3500,1,0,0,0,3498,3496,1,0,0,0,3498,3499,1,0,0,0,3499,3519,1,0,0,0,3500,3498,1,0,0,0,3501,3510,3,12,6,0,3502,3504,5,24,0,0,3503,3502,1,0,0,0,3504,3505,1,0,0,0,3505,3503,1,0,0,0,3505,3506,1,0,0,0,3506,3507,1,0,0,0,3507,3509,3,12,6,0,3508,3503,1,0,0,0,3509,3512,1,0,0,0,3510,3508,1,0,0,0,3510,3511,1,0,0,0,3511,3516,1,0,0,0,3512,3510,1,0,0,0,3513,3515,5,24,0,0,3514,3513,1,0,0,0,3515,3518,1,0,0,0,3516,3514,1,0,0,0,3516,3517,1,0,0,0,3517,3520,1,0,0,0,3518,3516,1,0,0,0,3519,3501,1,0,0,0,3519,3520,1,0,0,0,3520,567,1,0,0,0,3521,3523,5,123,0,0,3522,3521,1,0,0,0,3522,3523,1,0,0,0,3523,3524,1,0,0,0,3524,3525,5,154,0,0,3525,3526,3,14,7,0,3526,3529,3,222,111,0,3527,3528,5,114,0,0,3528,3530,3,222,111,0,3529,3527,1,0,0,0,3529,3530,1,0,0,0,3530,569,1,0,0,0,3531,3533,5,123,0,0,3532,3531,1,0,0,0,3532,3533,1,0,0,0,3533,3535,1,0,0,0,3534,3536,5,214,0,0,3535,3534,1,0,0,0,3535,3536,1,0,0,0,3536,3537,1,0,0,0,3537,3538,5,140,0,0,3538,3539,3,144,72,0,3539,3540,5,159,0,0,3540,3541,3,14,7,0,3541,3544,3,222,111,0,3542,3543,5,114,0,0,3543,3545,3,222,111,0,3544,3542,1,0,0,0,3544,3545,1,0,0,0,3545,571,1,0,0,0,3546,3547,3,750,375,0,3547,3548,5,25,0,0,3548,3550,1,0,0,0,3549,3546,1,0,0,0,3549,3550,1,0,0,0,3550,3552,1,0,0,0,3551,3553,5,31,0,0,3552,3551,1,0,0,0,3552,3553,1,0,0,0,3553,3584,1,0,0,0,3554,3585,3,574,287,0,3555,3556,3,730,365,0,3556,3568,5,27,0,0,3557,3562,3,576,288,0,3558,3559,5,26,0,0,3559,3561,3,576,288,0,3560,3558,1,0,0,0,3561,3564,1,0,0,0,3562,3560,1,0,0,0,3562,3563,1,0,0,0,3563,3566,1,0,0,0,3564,3562,1,0,0,0,3565,3567,5,26,0,0,3566,3565,1,0,0,0,3566,3567,1,0,0,0,3567,3569,1,0,0,0,3568,3557,1,0,0,0,3568,3569,1,0,0,0,3569,3570,1,0,0,0,3570,3571,5,28,0,0,3571,3585,1,0,0,0,3572,3578,3,144,72,0,3573,3575,5,27,0,0,3574,3576,3,112,56,0,3575,3574,1,0,0,0,3575,3576,1,0,0,0,3576,3577,1,0,0,0,3577,3579,5,28,0,0,3578,3573,1,0,0,0,3578,3579,1,0,0,0,3579,3582,1,0,0,0,3580,3581,5,307,0,0,3581,3583,3,746,373,0,3582,3580,1,0,0,0,3582,3583,1,0,0,0,3583,3585,1,0,0,0,3584,3554,1,0,0,0,3584,3555,1,0,0,0,3584,3572,1,0,0,0,3585,3587,1,0,0,0,3586,3588,3,578,289,0,3587,3586,1,0,0,0,3587,3588,1,0,0,0,3588,573,1,0,0,0,3589,3592,3,758,379,0,3590,3591,5,307,0,0,3591,3593,3,746,373,0,3592,3590,1,0,0,0,3592,3593,1,0,0,0,3593,575,1,0,0,0,3594,3596,5,31,0,0,3595,3594,1,0,0,0,3595,3596,1,0,0,0,3596,3597,1,0,0,0,3597,3600,3,128,64,0,3598,3599,5,307,0,0,3599,3601,3,746,373,0,3600,3598,1,0,0,0,3600,3601,1,0,0,0,3601,577,1,0,0,0,3602,3615,5,312,0,0,3603,3616,3,580,290,0,3604,3605,5,27,0,0,3605,3610,3,580,290,0,3606,3607,5,26,0,0,3607,3609,3,580,290,0,3608,3606,1,0,0,0,3609,3612,1,0,0,0,3610,3608,1,0,0,0,3610,3611,1,0,0,0,3611,3613,1,0,0,0,3612,3610,1,0,0,0,3613,3614,5,28,0,0,3614,3616,1,0,0,0,3615,3603,1,0,0,0,3615,3604,1,0,0,0,3616,579,1,0,0,0,3617,3636,3,740,370,0,3618,3634,5,2,0,0,3619,3635,3,160,80,0,3620,3621,5,27,0,0,3621,3626,3,160,80,0,3622,3623,5,26,0,0,3623,3625,3,160,80,0,3624,3622,1,0,0,0,3625,3628,1,0,0,0,3626,3624,1,0,0,0,3626,3627,1,0,0,0,3627,3630,1,0,0,0,3628,3626,1,0,0,0,3629,3631,5,26,0,0,3630,3629,1,0,0,0,3630,3631,1,0,0,0,3631,3632,1,0,0,0,3632,3633,5,28,0,0,3633,3635,1,0,0,0,3634,3619,1,0,0,0,3634,3620,1,0,0,0,3635,3637,1,0,0,0,3636,3618,1,0,0,0,3636,3637,1,0,0,0,3637,3663,1,0,0,0,3638,3640,7,27,0,0,3639,3641,5,2,0,0,3640,3639,1,0,0,0,3640,3641,1,0,0,0,3641,3642,1,0,0,0,3642,3663,3,204,102,0,3643,3645,5,259,0,0,3644,3646,5,2,0,0,3645,3644,1,0,0,0,3645,3646,1,0,0,0,3646,3647,1,0,0,0,3647,3656,5,27,0,0,3648,3653,3,164,82,0,3649,3650,5,26,0,0,3650,3652,3,164,82,0,3651,3649,1,0,0,0,3652,3655,1,0,0,0,3653,3651,1,0,0,0,3653,3654,1,0,0,0,3654,3657,1,0,0,0,3655,3653,1,0,0,0,3656,3648,1,0,0,0,3656,3657,1,0,0,0,3657,3659,1,0,0,0,3658,3660,5,26,0,0,3659,3658,1,0,0,0,3659,3660,1,0,0,0,3660,3661,1,0,0,0,3661,3663,5,28,0,0,3662,3617,1,0,0,0,3662,3638,1,0,0,0,3662,3643,1,0,0,0,3663,581,1,0,0,0,3664,3665,3,750,375,0,3665,3666,5,25,0,0,3666,3668,1,0,0,0,3667,3664,1,0,0,0,3667,3668,1,0,0,0,3668,3669,1,0,0,0,3669,3670,3,756,378,0,3670,583,1,0,0,0,3671,3677,3,582,291,0,3672,3674,5,31,0,0,3673,3672,1,0,0,0,3673,3674,1,0,0,0,3674,3675,1,0,0,0,3675,3677,3,144,72,0,3676,3671,1,0,0,0,3676,3673,1,0,0,0,3677,585,1,0,0,0,3678,3680,3,584,292,0,3679,3681,3,578,289,0,3680,3679,1,0,0,0,3680,3681,1,0,0,0,3681,587,1,0,0,0,3682,3686,3,586,293,0,3683,3684,5,120,0,0,3684,3685,5,69,0,0,3685,3687,3,114,57,0,3686,3683,1,0,0,0,3686,3687,1,0,0,0,3687,589,1,0,0,0,3688,3689,5,102,0,0,3689,3690,5,142,0,0,3690,3694,3,586,293,0,3691,3695,3,800,400,0,3692,3693,5,204,0,0,3693,3695,3,368,184,0,3694,3691,1,0,0,0,3694,3692,1,0,0,0,3694,3695,1,0,0,0,3695,3697,1,0,0,0,3696,3698,3,362,181,0,3697,3696,1,0,0,0,3697,3698,1,0,0,0,3698,591,1,0,0,0,3699,3700,5,299,0,0,3700,3708,3,586,293,0,3701,3702,5,264,0,0,3702,3704,3,594,297,0,3703,3705,3,800,400,0,3704,3703,1,0,0,0,3704,3705,1,0,0,0,3705,3709,1,0,0,0,3706,3707,5,204,0,0,3707,3709,3,368,184,0,3708,3701,1,0,0,0,3708,3706,1,0,0,0,3709,3711,1,0,0,0,3710,3712,3,362,181,0,3711,3710,1,0,0,0,3711,3712,1,0,0,0,3712,593,1,0,0,0,3713,3716,3,596,298,0,3714,3716,3,602,301,0,3715,3713,1,0,0,0,3715,3714,1,0,0,0,3716,595,1,0,0,0,3717,3722,3,598,299,0,3718,3719,5,26,0,0,3719,3721,3,598,299,0,3720,3718,1,0,0,0,3721,3724,1,0,0,0,3722,3720,1,0,0,0,3722,3723,1,0,0,0,3723,597,1,0,0,0,3724,3722,1,0,0,0,3725,3726,3,600,300,0,3726,3727,5,2,0,0,3727,3728,3,14,7,0,3728,599,1,0,0,0,3729,3730,3,120,60,0,3730,601,1,0,0,0,3731,3732,3,604,302,0,3732,3733,5,2,0,0,3733,3734,5,27,0,0,3734,3735,3,378,189,0,3735,3736,5,28,0,0,3736,603,1,0,0,0,3737,3738,5,27,0,0,3738,3743,3,600,300,0,3739,3740,5,26,0,0,3740,3742,3,600,300,0,3741,3739,1,0,0,0,3742,3745,1,0,0,0,3743,3741,1,0,0,0,3743,3744,1,0,0,0,3744,3746,1,0,0,0,3745,3743,1,0,0,0,3746,3747,5,28,0,0,3747,605,1,0,0,0,3748,3749,5,87,0,0,3749,3750,5,287,0,0,3750,3752,3,652,326,0,3751,3753,3,608,304,0,3752,3751,1,0,0,0,3752,3753,1,0,0,0,3753,3755,1,0,0,0,3754,3756,3,612,306,0,3755,3754,1,0,0,0,3755,3756,1,0,0,0,3756,607,1,0,0,0,3757,3758,5,27,0,0,3758,3763,3,610,305,0,3759,3760,5,26,0,0,3760,3762,3,610,305,0,3761,3759,1,0,0,0,3762,3765,1,0,0,0,3763,3761,1,0,0,0,3763,3764,1,0,0,0,3764,3766,1,0,0,0,3765,3763,1,0,0,0,3766,3767,5,28,0,0,3767,609,1,0,0,0,3768,3769,3,620,310,0,3769,611,1,0,0,0,3770,3771,5,312,0,0,3771,3772,5,27,0,0,3772,3773,3,638,319,0,3773,3774,5,28,0,0,3774,613,1,0,0,0,3775,3776,5,49,0,0,3776,3777,5,287,0,0,3777,3778,3,652,326,0,3778,3783,3,616,308,0,3779,3780,5,26,0,0,3780,3782,3,616,308,0,3781,3779,1,0,0,0,3782,3785,1,0,0,0,3783,3781,1,0,0,0,3783,3784,1,0,0,0,3784,615,1,0,0,0,3785,3783,1,0,0,0,3786,3792,3,618,309,0,3787,3792,3,622,311,0,3788,3792,3,626,313,0,3789,3792,3,632,316,0,3790,3792,3,634,317,0,3791,3786,1,0,0,0,3791,3787,1,0,0,0,3791,3788,1,0,0,0,3791,3789,1,0,0,0,3791,3790,1,0,0,0,3792,617,1,0,0,0,3793,3794,5,46,0,0,3794,3795,3,620,310,0,3795,619,1,0,0,0,3796,3797,5,85,0,0,3797,3799,3,724,362,0,3798,3800,3,644,322,0,3799,3798,1,0,0,0,3799,3800,1,0,0,0,3800,621,1,0,0,0,3801,3802,5,49,0,0,3802,3803,5,85,0,0,3803,3804,3,654,327,0,3804,3805,3,624,312,0,3805,623,1,0,0,0,3806,3809,3,628,314,0,3807,3809,3,630,315,0,3808,3806,1,0,0,0,3808,3807,1,0,0,0,3809,625,1,0,0,0,3810,3811,5,112,0,0,3811,3812,5,85,0,0,3812,3813,3,654,327,0,3813,627,1,0,0,0,3814,3815,5,264,0,0,3815,3816,5,27,0,0,3816,3817,3,646,323,0,3817,3818,5,28,0,0,3818,629,1,0,0,0,3819,3820,5,242,0,0,3820,3821,5,27,0,0,3821,3826,3,724,362,0,3822,3823,5,26,0,0,3823,3825,3,724,362,0,3824,3822,1,0,0,0,3825,3828,1,0,0,0,3826,3824,1,0,0,0,3826,3827,1,0,0,0,3827,3829,1,0,0,0,3828,3826,1,0,0,0,3829,3830,5,28,0,0,3830,631,1,0,0,0,3831,3832,5,264,0,0,3832,3833,5,27,0,0,3833,3834,3,638,319,0,3834,3835,5,28,0,0,3835,633,1,0,0,0,3836,3837,5,242,0,0,3837,3838,5,27,0,0,3838,3843,3,724,362,0,3839,3840,5,26,0,0,3840,3842,3,742,371,0,3841,3839,1,0,0,0,3842,3845,1,0,0,0,3843,3841,1,0,0,0,3843,3844,1,0,0,0,3844,3846,1,0,0,0,3845,3843,1,0,0,0,3846,3847,5,28,0,0,3847,635,1,0,0,0,3848,3849,5,112,0,0,3849,3850,5,287,0,0,3850,3851,3,652,326,0,3851,637,1,0,0,0,3852,3857,3,640,320,0,3853,3854,5,26,0,0,3854,3856,3,640,320,0,3855,3853,1,0,0,0,3856,3859,1,0,0,0,3857,3855,1,0,0,0,3857,3858,1,0,0,0,3858,639,1,0,0,0,3859,3857,1,0,0,0,3860,3861,3,724,362,0,3861,3862,5,2,0,0,3862,3863,3,642,321,0,3863,641,1,0,0,0,3864,3865,3,14,7,0,3865,643,1,0,0,0,3866,3867,5,312,0,0,3867,3868,5,27,0,0,3868,3869,3,646,323,0,3869,3870,5,28,0,0,3870,645,1,0,0,0,3871,3876,3,648,324,0,3872,3873,5,26,0,0,3873,3875,3,648,324,0,3874,3872,1,0,0,0,3875,3878,1,0,0,0,3876,3874,1,0,0,0,3876,3877,1,0,0,0,3877,647,1,0,0,0,3878,3876,1,0,0,0,3879,3880,3,724,362,0,3880,3881,5,2,0,0,3881,3882,3,650,325,0,3882,649,1,0,0,0,3883,3884,3,14,7,0,3884,651,1,0,0,0,3885,3886,3,750,375,0,3886,3887,5,25,0,0,3887,3889,1,0,0,0,3888,3885,1,0,0,0,3888,3889,1,0,0,0,3889,3890,1,0,0,0,3890,3891,3,724,362,0,3891,653,1,0,0,0,3892,3893,3,742,371,0,3893,655,1,0,0,0,3894,3895,5,244,0,0,3895,3899,5,199,0,0,3896,3897,5,155,0,0,3897,3899,5,199,0,0,3898,3894,1,0,0,0,3898,3896,1,0,0,0,3899,657,1,0,0,0,3900,3901,5,135,0,0,3901,3902,5,27,0,0,3902,3903,3,800,400,0,3903,3904,5,28,0,0,3904,659,1,0,0,0,3905,3908,3,662,331,0,3906,3908,3,672,336,0,3907,3905,1,0,0,0,3907,3906,1,0,0,0,3908,661,1,0,0,0,3909,3910,3,734,367,0,3910,663,1,0,0,0,3911,3912,5,311,0,0,3912,3913,3,666,333,0,3913,665,1,0,0,0,3914,3919,3,668,334,0,3915,3916,5,26,0,0,3916,3918,3,668,334,0,3917,3915,1,0,0,0,3918,3921,1,0,0,0,3919,3917,1,0,0,0,3919,3920,1,0,0,0,3920,667,1,0,0,0,3921,3919,1,0,0,0,3922,3923,3,670,335,0,3923,3924,5,55,0,0,3924,3925,3,672,336,0,3925,669,1,0,0,0,3926,3927,3,662,331,0,3927,671,1,0,0,0,3928,3929,5,27,0,0,3929,3930,3,674,337,0,3930,3931,5,28,0,0,3931,673,1,0,0,0,3932,3934,3,676,338,0,3933,3932,1,0,0,0,3933,3934,1,0,0,0,3934,3936,1,0,0,0,3935,3937,3,678,339,0,3936,3935,1,0,0,0,3936,3937,1,0,0,0,3937,3939,1,0,0,0,3938,3940,3,680,340,0,3939,3938,1,0,0,0,3939,3940,1,0,0,0,3940,3942,1,0,0,0,3941,3943,3,682,341,0,3942,3941,1,0,0,0,3942,3943,1,0,0,0,3943,675,1,0,0,0,3944,3945,3,662,331,0,3945,677,1,0,0,0,3946,3948,5,215,0,0,3947,3949,5,80,0,0,3948,3947,1,0,0,0,3948,3949,1,0,0,0,3949,3950,1,0,0,0,3950,3951,5,69,0,0,3951,3952,3,130,65,0,3952,679,1,0,0,0,3953,3954,3,314,157,0,3954,681,1,0,0,0,3955,3956,3,684,342,0,3956,3958,3,686,343,0,3957,3959,3,692,346,0,3958,3957,1,0,0,0,3958,3959,1,0,0,0,3959,683,1,0,0,0,3960,3961,7,28,0,0,3961,685,1,0,0,0,3962,3965,3,690,345,0,3963,3965,3,688,344,0,3964,3962,1,0,0,0,3964,3963,1,0,0,0,3965,687,1,0,0,0,3966,3967,5,67,0,0,3967,3968,3,690,345,0,3968,3969,5,51,0,0,3969,3970,3,690,345,0,3970,689,1,0,0,0,3971,3972,5,90,0,0,3972,3979,5,255,0,0,3973,3976,3,14,7,0,3974,3976,5,293,0,0,3975,3973,1,0,0,0,3975,3974,1,0,0,0,3976,3977,1,0,0,0,3977,3979,7,29,0,0,3978,3971,1,0,0,0,3978,3975,1,0,0,0,3979,691,1,0,0,0,3980,3981,5,125,0,0,3981,3982,5,90,0,0,3982,3991,5,255,0,0,3983,3984,5,125,0,0,3984,3991,5,148,0,0,3985,3986,5,125,0,0,3986,3991,5,285,0,0,3987,3988,5,125,0,0,3988,3989,5,195,0,0,3989,3991,5,211,0,0,3990,3980,1,0,0,0,3990,3983,1,0,0,0,3990,3985,1,0,0,0,3990,3987,1,0,0,0,3991,693,1,0,0,0,3992,3993,5,301,0,0,3993,3994,3,750,375,0,3994,695,1,0,0,0,3995,3996,5,27,0,0,3996,3997,3,232,116,0,3997,3998,5,28,0,0,3998,4001,1,0,0,0,3999,4001,3,234,117,0,4e3,3995,1,0,0,0,4e3,3999,1,0,0,0,4001,697,1,0,0,0,4002,4003,3,148,74,0,4003,4006,5,2,0,0,4004,4007,3,14,7,0,4005,4007,3,696,348,0,4006,4004,1,0,0,0,4006,4005,1,0,0,0,4007,699,1,0,0,0,4008,4009,5,79,0,0,4009,701,1,0,0,0,4010,4011,5,253,0,0,4011,703,1,0,0,0,4012,4013,7,30,0,0,4013,705,1,0,0,0,4014,4017,3,704,352,0,4015,4017,3,762,381,0,4016,4014,1,0,0,0,4016,4015,1,0,0,0,4017,707,1,0,0,0,4018,4026,3,704,352,0,4019,4026,3,780,390,0,4020,4026,3,764,382,0,4021,4026,3,768,384,0,4022,4026,3,772,386,0,4023,4026,3,774,387,0,4024,4026,3,776,388,0,4025,4018,1,0,0,0,4025,4019,1,0,0,0,4025,4020,1,0,0,0,4025,4021,1,0,0,0,4025,4022,1,0,0,0,4025,4023,1,0,0,0,4025,4024,1,0,0,0,4026,709,1,0,0,0,4027,4034,3,704,352,0,4028,4034,3,780,390,0,4029,4034,3,770,385,0,4030,4034,3,772,386,0,4031,4034,3,774,387,0,4032,4034,3,776,388,0,4033,4027,1,0,0,0,4033,4028,1,0,0,0,4033,4029,1,0,0,0,4033,4030,1,0,0,0,4033,4031,1,0,0,0,4033,4032,1,0,0,0,4034,711,1,0,0,0,4035,4041,3,704,352,0,4036,4041,3,780,390,0,4037,4041,3,770,385,0,4038,4041,3,774,387,0,4039,4041,3,776,388,0,4040,4035,1,0,0,0,4040,4036,1,0,0,0,4040,4037,1,0,0,0,4040,4038,1,0,0,0,4040,4039,1,0,0,0,4041,713,1,0,0,0,4042,4051,3,704,352,0,4043,4051,3,780,390,0,4044,4051,3,764,382,0,4045,4051,3,766,383,0,4046,4051,3,768,384,0,4047,4051,3,770,385,0,4048,4051,3,772,386,0,4049,4051,3,776,388,0,4050,4042,1,0,0,0,4050,4043,1,0,0,0,4050,4044,1,0,0,0,4050,4045,1,0,0,0,4050,4046,1,0,0,0,4050,4047,1,0,0,0,4050,4048,1,0,0,0,4050,4049,1,0,0,0,4051,715,1,0,0,0,4052,4060,3,704,352,0,4053,4060,3,780,390,0,4054,4060,3,764,382,0,4055,4060,3,768,384,0,4056,4060,3,772,386,0,4057,4060,3,774,387,0,4058,4060,3,776,388,0,4059,4052,1,0,0,0,4059,4053,1,0,0,0,4059,4054,1,0,0,0,4059,4055,1,0,0,0,4059,4056,1,0,0,0,4059,4057,1,0,0,0,4059,4058,1,0,0,0,4060,717,1,0,0,0,4061,4069,3,704,352,0,4062,4069,3,780,390,0,4063,4069,3,766,383,0,4064,4069,3,770,385,0,4065,4069,3,772,386,0,4066,4069,3,774,387,0,4067,4069,3,776,388,0,4068,4061,1,0,0,0,4068,4062,1,0,0,0,4068,4063,1,0,0,0,4068,4064,1,0,0,0,4068,4065,1,0,0,0,4068,4066,1,0,0,0,4068,4067,1,0,0,0,4069,719,1,0,0,0,4070,4079,3,704,352,0,4071,4079,3,780,390,0,4072,4079,3,764,382,0,4073,4079,3,766,383,0,4074,4079,3,768,384,0,4075,4079,3,770,385,0,4076,4079,3,772,386,0,4077,4079,3,774,387,0,4078,4070,1,0,0,0,4078,4071,1,0,0,0,4078,4072,1,0,0,0,4078,4073,1,0,0,0,4078,4074,1,0,0,0,4078,4075,1,0,0,0,4078,4076,1,0,0,0,4078,4077,1,0,0,0,4079,721,1,0,0,0,4080,4083,3,704,352,0,4081,4083,3,778,389,0,4082,4080,1,0,0,0,4082,4081,1,0,0,0,4083,723,1,0,0,0,4084,4087,3,706,353,0,4085,4087,5,316,0,0,4086,4084,1,0,0,0,4086,4085,1,0,0,0,4087,725,1,0,0,0,4088,4091,3,752,376,0,4089,4091,5,316,0,0,4090,4088,1,0,0,0,4090,4089,1,0,0,0,4091,727,1,0,0,0,4092,4095,3,708,354,0,4093,4095,5,316,0,0,4094,4092,1,0,0,0,4094,4093,1,0,0,0,4095,729,1,0,0,0,4096,4099,3,710,355,0,4097,4099,5,316,0,0,4098,4096,1,0,0,0,4098,4097,1,0,0,0,4099,731,1,0,0,0,4100,4103,3,712,356,0,4101,4103,5,316,0,0,4102,4100,1,0,0,0,4102,4101,1,0,0,0,4103,733,1,0,0,0,4104,4107,3,714,357,0,4105,4107,5,316,0,0,4106,4104,1,0,0,0,4106,4105,1,0,0,0,4107,735,1,0,0,0,4108,4111,3,716,358,0,4109,4111,5,316,0,0,4110,4108,1,0,0,0,4110,4109,1,0,0,0,4111,737,1,0,0,0,4112,4115,3,718,359,0,4113,4115,5,316,0,0,4114,4112,1,0,0,0,4114,4113,1,0,0,0,4115,739,1,0,0,0,4116,4119,3,720,360,0,4117,4119,5,316,0,0,4118,4116,1,0,0,0,4118,4117,1,0,0,0,4119,741,1,0,0,0,4120,4123,3,704,352,0,4121,4123,5,316,0,0,4122,4120,1,0,0,0,4122,4121,1,0,0,0,4123,743,1,0,0,0,4124,4127,3,722,361,0,4125,4127,5,316,0,0,4126,4124,1,0,0,0,4126,4125,1,0,0,0,4127,745,1,0,0,0,4128,4132,3,724,362,0,4129,4130,5,226,0,0,4130,4132,5,176,0,0,4131,4128,1,0,0,0,4131,4129,1,0,0,0,4132,747,1,0,0,0,4133,4134,3,724,362,0,4134,4135,5,25,0,0,4135,4137,1,0,0,0,4136,4133,1,0,0,0,4136,4137,1,0,0,0,4137,749,1,0,0,0,4138,4139,3,724,362,0,4139,4140,5,30,0,0,4140,4142,1,0,0,0,4141,4138,1,0,0,0,4141,4142,1,0,0,0,4142,4145,1,0,0,0,4143,4146,3,116,58,0,4144,4146,5,20,0,0,4145,4143,1,0,0,0,4145,4144,1,0,0,0,4146,751,1,0,0,0,4147,4150,3,706,353,0,4148,4150,3,782,391,0,4149,4147,1,0,0,0,4149,4148,1,0,0,0,4150,753,1,0,0,0,4151,4152,3,726,363,0,4152,4153,5,25,0,0,4153,4155,1,0,0,0,4154,4151,1,0,0,0,4154,4155,1,0,0,0,4155,755,1,0,0,0,4156,4158,5,31,0,0,4157,4156,1,0,0,0,4157,4158,1,0,0,0,4158,4159,1,0,0,0,4159,4160,3,726,363,0,4160,757,1,0,0,0,4161,4164,3,736,368,0,4162,4164,3,782,391,0,4163,4161,1,0,0,0,4163,4162,1,0,0,0,4164,759,1,0,0,0,4165,4167,5,31,0,0,4166,4165,1,0,0,0,4166,4167,1,0,0,0,4167,4168,1,0,0,0,4168,4169,3,758,379,0,4169,761,1,0,0,0,4170,4179,3,780,390,0,4171,4179,3,764,382,0,4172,4179,3,766,383,0,4173,4179,3,768,384,0,4174,4179,3,770,385,0,4175,4179,3,772,386,0,4176,4179,3,774,387,0,4177,4179,3,776,388,0,4178,4170,1,0,0,0,4178,4171,1,0,0,0,4178,4172,1,0,0,0,4178,4173,1,0,0,0,4178,4174,1,0,0,0,4178,4175,1,0,0,0,4178,4176,1,0,0,0,4178,4177,1,0,0,0,4179,763,1,0,0,0,4180,4181,7,31,0,0,4181,765,1,0,0,0,4182,4183,7,32,0,0,4183,767,1,0,0,0,4184,4185,7,33,0,0,4185,769,1,0,0,0,4186,4187,5,77,0,0,4187,771,1,0,0,0,4188,4189,5,80,0,0,4189,773,1,0,0,0,4190,4191,7,28,0,0,4191,775,1,0,0,0,4192,4193,7,27,0,0,4193,777,1,0,0,0,4194,4195,7,34,0,0,4195,779,1,0,0,0,4196,4197,7,35,0,0,4197,781,1,0,0,0,4198,4199,7,36,0,0,4199,783,1,0,0,0,4200,4201,7,37,0,0,4201,785,1,0,0,0,4202,4203,5,321,0,0,4203,787,1,0,0,0,4204,4205,7,38,0,0,4205,789,1,0,0,0,4206,4212,3,792,396,0,4207,4208,5,223,0,0,4208,4209,5,52,0,0,4209,4210,5,319,0,0,4210,4212,3,4,2,0,4211,4206,1,0,0,0,4211,4207,1,0,0,0,4212,791,1,0,0,0,4213,4215,5,24,0,0,4214,4213,1,0,0,0,4215,4218,1,0,0,0,4216,4214,1,0,0,0,4216,4217,1,0,0,0,4217,4219,1,0,0,0,4218,4216,1,0,0,0,4219,4228,3,794,397,0,4220,4222,5,24,0,0,4221,4220,1,0,0,0,4222,4223,1,0,0,0,4223,4221,1,0,0,0,4223,4224,1,0,0,0,4224,4225,1,0,0,0,4225,4227,3,794,397,0,4226,4221,1,0,0,0,4227,4230,1,0,0,0,4228,4226,1,0,0,0,4228,4229,1,0,0,0,4229,4234,1,0,0,0,4230,4228,1,0,0,0,4231,4233,5,24,0,0,4232,4231,1,0,0,0,4233,4236,1,0,0,0,4234,4232,1,0,0,0,4234,4235,1,0,0,0,4235,4237,1,0,0,0,4236,4234,1,0,0,0,4237,4238,5,0,0,1,4238,793,1,0,0,0,4239,4242,5,129,0,0,4240,4241,5,1,0,0,4241,4243,5,222,0,0,4242,4240,1,0,0,0,4242,4243,1,0,0,0,4243,4245,1,0,0,0,4244,4239,1,0,0,0,4244,4245,1,0,0,0,4245,4246,1,0,0,0,4246,4247,3,796,398,0,4247,795,1,0,0,0,4248,4262,3,224,112,0,4249,4262,3,232,116,0,4250,4262,3,698,349,0,4251,4262,3,694,347,0,4252,4262,3,366,183,0,4253,4262,3,210,105,0,4254,4262,3,214,107,0,4255,4262,3,216,108,0,4256,4262,3,222,111,0,4257,4262,3,564,282,0,4258,4262,3,568,284,0,4259,4262,3,570,285,0,4260,4262,3,370,185,0,4261,4248,1,0,0,0,4261,4249,1,0,0,0,4261,4250,1,0,0,0,4261,4251,1,0,0,0,4261,4252,1,0,0,0,4261,4253,1,0,0,0,4261,4254,1,0,0,0,4261,4255,1,0,0,0,4261,4256,1,0,0,0,4261,4257,1,0,0,0,4261,4258,1,0,0,0,4261,4259,1,0,0,0,4261,4260,1,0,0,0,4262,797,1,0,0,0,4263,4264,5,55,0,0,4264,4265,3,582,291,0,4265,799,1,0,0,0,4266,4267,5,310,0,0,4267,4268,3,14,7,0,4268,801,1,0,0,0,4269,4270,5,142,0,0,4270,4271,3,338,169,0,4271,803,1,0,0,0,4272,4275,3,434,217,0,4273,4275,3,442,221,0,4274,4272,1,0,0,0,4274,4273,1,0,0,0,4275,805,1,0,0,0,476,811,816,823,828,834,842,850,857,861,869,874,879,881,929,936,940,947,955,960,964,970,976,979,983,991,995,998,1002,1013,1018,1020,1029,1050,1055,1064,1066,1073,1081,1089,1096,1106,1108,1110,1115,1119,1125,1131,1135,1139,1142,1149,1155,1159,1164,1167,1181,1186,1189,1203,1210,1221,1232,1252,1258,1263,1267,1281,1283,1290,1296,1307,1315,1321,1328,1336,1349,1355,1359,1362,1364,1372,1380,1386,1392,1398,1401,1410,1419,1426,1434,1447,1454,1458,1465,1469,1474,1481,1488,1491,1498,1502,1512,1535,1541,1545,1552,1558,1565,1569,1573,1579,1584,1593,1596,1602,1607,1615,1622,1644,1648,1650,1654,1663,1667,1669,1673,1682,1686,1724,1728,1748,1751,1757,1777,1782,1788,1793,1796,1800,1827,1835,1838,1845,1858,1862,1874,1887,1892,1899,1903,1910,1919,1928,1936,1940,1944,1951,1953,1956,1961,1966,1970,1977,1984,1988,1991,1995,1999,2001,2012,2021,2026,2032,2037,2040,2044,2048,2051,2055,2059,2067,2071,2075,2079,2082,2085,2089,2092,2095,2100,2103,2106,2109,2123,2125,2136,2146,2156,2159,2166,2190,2201,2207,2211,2215,2219,2223,2227,2231,2235,2241,2248,2258,2269,2282,2298,2308,2328,2334,2341,2348,2356,2365,2402,2404,2407,2412,2416,2420,2426,2432,2436,2441,2446,2448,2452,2457,2460,2462,2466,2477,2488,2499,2503,2507,2511,2514,2518,2521,2527,2536,2539,2553,2559,2572,2579,2584,2591,2598,2607,2612,2620,2635,2641,2649,2672,2679,2687,2708,2716,2724,2734,2743,2748,2755,2765,2770,2779,2783,2787,2790,2793,2796,2799,2807,2816,2833,2856,2874,2885,2893,2903,2908,2912,2918,2949,2961,2998,3006,3009,3013,3017,3027,3040,3053,3058,3075,3079,3083,3092,3103,3108,3112,3116,3119,3135,3150,3165,3168,3180,3183,3199,3205,3213,3223,3227,3235,3241,3247,3259,3263,3265,3277,3281,3286,3292,3299,3303,3307,3310,3323,3332,3336,3341,3347,3356,3365,3382,3386,3390,3392,3396,3403,3407,3411,3413,3425,3441,3457,3472,3479,3487,3498,3505,3510,3516,3519,3522,3529,3532,3535,3544,3549,3552,3562,3566,3568,3575,3578,3582,3584,3587,3592,3595,3600,3610,3615,3626,3630,3634,3636,3640,3645,3653,3656,3659,3662,3667,3673,3676,3680,3686,3694,3697,3704,3708,3711,3715,3722,3743,3752,3755,3763,3783,3791,3799,3808,3826,3843,3857,3876,3888,3898,3907,3919,3933,3936,3939,3942,3948,3958,3964,3975,3978,3990,4e3,4006,4016,4025,4033,4040,4050,4059,4068,4078,4082,4086,4090,4094,4098,4102,4106,4110,4114,4118,4122,4126,4131,4136,4141,4145,4149,4154,4157,4163,4166,4178,4211,4216,4223,4228,4234,4242,4244,4261,4274],ji.vocabulary=new Ra(ji.literalNames,ji.symbolicNames,[]),ji.decisionsToDFA=ji._ATN.decisionToState.map(((t,e)=>new ni(t,e))),ji),ef=class extends ga{constructor(t,e){super(t,e)}sql_stmt_list(){return this.getRuleContext(0,sf)}PRAGMA(){return this.getToken(tf.PRAGMA,0)}ANSI(){return this.getToken(tf.ANSI,0)}DIGITS(){return this.getToken(tf.DIGITS,0)}ansi_sql_stmt_list(){return this.getRuleContext(0,af)}get ruleIndex(){return tf.RULE_sql_query}accept(t){return t.visitSql_query?t.visitSql_query(this):t.visitChildren(this)}},sf=class extends ga{constructor(t,e){super(t,e)}sql_stmt(t){return void 0===t?this.getRuleContexts(nf):this.getRuleContext(t,nf)}EOF(){return this.getToken(tf.EOF,0)}SEMICOLON(t){return void 0===t?this.getTokens(tf.SEMICOLON):this.getToken(tf.SEMICOLON,t)}get ruleIndex(){return tf.RULE_sql_stmt_list}accept(t){return t.visitSql_stmt_list?t.visitSql_stmt_list(this):t.visitChildren(this)}},af=class extends ga{constructor(t,e){super(t,e)}EOF(){return this.getToken(tf.EOF,0)}SEMICOLON(t){return void 0===t?this.getTokens(tf.SEMICOLON):this.getToken(tf.SEMICOLON,t)}get ruleIndex(){return tf.RULE_ansi_sql_stmt_list}accept(t){return t.visitAnsi_sql_stmt_list?t.visitAnsi_sql_stmt_list(this):t.visitChildren(this)}},rf=class extends ga{constructor(t,e){super(t,e)}RETURN(){return this.getToken(tf.RETURN,0)}expr(){return this.getRuleContext(0,Ef)}SEMICOLON(t){return void 0===t?this.getTokens(tf.SEMICOLON):this.getToken(tf.SEMICOLON,t)}lambda_stmt(t){return void 0===t?this.getRuleContexts(cf):this.getRuleContext(t,cf)}get ruleIndex(){return tf.RULE_lambda_body}accept(t){return t.visitLambda_body?t.visitLambda_body(this):t.visitChildren(this)}},cf=class extends ga{constructor(t,e){super(t,e)}named_nodes_stmt(){return this.getRuleContext(0,mX)}import_stmt(){return this.getRuleContext(0,ew)}get ruleIndex(){return tf.RULE_lambda_stmt}accept(t){return t.visitLambda_stmt?t.visitLambda_stmt(this):t.visitChildren(this)}},nf=class extends ga{constructor(t,e){super(t,e)}sql_stmt_core(){return this.getRuleContext(0,hf)}EXPLAIN(){return this.getToken(tf.EXPLAIN,0)}QUERY(){return this.getToken(tf.QUERY,0)}PLAN(){return this.getToken(tf.PLAN,0)}get ruleIndex(){return tf.RULE_sql_stmt}accept(t){return t.visitSql_stmt?t.visitSql_stmt(this):t.visitChildren(this)}},hf=class extends ga{constructor(t,e){super(t,e)}pragma_stmt(){return this.getRuleContext(0,cw)}select_stmt(){return this.getRuleContext(0,Tw)}named_nodes_stmt(){return this.getRuleContext(0,mX)}create_table_stmt(){return this.getRuleContext(0,Zb)}drop_table_stmt(){return this.getRuleContext(0,KW)}use_stmt(){return this.getRuleContext(0,dX)}into_table_stmt(){return this.getRuleContext(0,_b)}commit_stmt(){return this.getRuleContext(0,DX)}update_stmt(){return this.getRuleContext(0,DV)}delete_stmt(){return this.getRuleContext(0,mV)}rollback_stmt(){return this.getRuleContext(0,pX)}declare_stmt(){return this.getRuleContext(0,$Y)}import_stmt(){return this.getRuleContext(0,ew)}export_stmt(){return this.getRuleContext(0,sw)}alter_table_stmt(){return this.getRuleContext(0,aW)}alter_external_table_stmt(){return this.getRuleContext(0,iW)}do_stmt(){return this.getRuleContext(0,iw)}define_action_or_subquery_stmt(){return this.getRuleContext(0,SV)}if_stmt(){return this.getRuleContext(0,OV)}for_stmt(){return this.getRuleContext(0,IV)}values_stmt(){return this.getRuleContext(0,db)}create_user_stmt(){return this.getRuleContext(0,QW)}alter_user_stmt(){return this.getRuleContext(0,JW)}create_group_stmt(){return this.getRuleContext(0,ZW)}alter_group_stmt(){return this.getRuleContext(0,qW)}drop_role_stmt(){return this.getRuleContext(0,jW)}create_object_stmt(){return this.getRuleContext(0,Bb)}alter_object_stmt(){return this.getRuleContext(0,fb)}drop_object_stmt(){return this.getRuleContext(0,wb)}create_external_data_source_stmt(){return this.getRuleContext(0,gb)}alter_external_data_source_stmt(){return this.getRuleContext(0,xb)}drop_external_data_source_stmt(){return this.getRuleContext(0,Hb)}create_replication_stmt(){return this.getRuleContext(0,iV)}drop_replication_stmt(){return this.getRuleContext(0,RV)}create_topic_stmt(){return this.getRuleContext(0,FV)}alter_topic_stmt(){return this.getRuleContext(0,fV)}drop_topic_stmt(){return this.getRuleContext(0,qV)}grant_permissions_stmt(){return this.getRuleContext(0,tV)}revoke_permissions_stmt(){return this.getRuleContext(0,eV)}alter_table_store_stmt(){return this.getRuleContext(0,nW)}upsert_object_stmt(){return this.getRuleContext(0,vb)}create_view_stmt(){return this.getRuleContext(0,Gb)}drop_view_stmt(){return this.getRuleContext(0,Fb)}alter_replication_stmt(){return this.getRuleContext(0,EV)}get ruleIndex(){return tf.RULE_sql_stmt_core}accept(t){return t.visitSql_stmt_core?t.visitSql_stmt_core(this):t.visitChildren(this)}},Ef=class extends ga{constructor(t,e){super(t,e)}or_subexpr(t){return void 0===t?this.getRuleContexts(Tf):this.getRuleContext(t,Tf)}OR(t){return void 0===t?this.getTokens(tf.OR):this.getToken(tf.OR,t)}type_name_composite(){return this.getRuleContext(0,JY)}get ruleIndex(){return tf.RULE_expr}accept(t){return t.visitExpr?t.visitExpr(this):t.visitChildren(this)}},Tf=class extends ga{constructor(t,e){super(t,e)}and_subexpr(t){return void 0===t?this.getRuleContexts(of):this.getRuleContext(t,of)}AND(t){return void 0===t?this.getTokens(tf.AND):this.getToken(tf.AND,t)}get ruleIndex(){return tf.RULE_or_subexpr}accept(t){return t.visitOr_subexpr?t.visitOr_subexpr(this):t.visitChildren(this)}},of=class extends ga{constructor(t,e){super(t,e)}xor_subexpr(t){return void 0===t?this.getRuleContexts(Rf):this.getRuleContext(t,Rf)}XOR(t){return void 0===t?this.getTokens(tf.XOR):this.getToken(tf.XOR,t)}get ruleIndex(){return tf.RULE_and_subexpr}accept(t){return t.visitAnd_subexpr?t.visitAnd_subexpr(this):t.visitChildren(this)}},Rf=class extends ga{constructor(t,e){super(t,e)}eq_subexpr(){return this.getRuleContext(0,Of)}cond_expr(){return this.getRuleContext(0,Sf)}get ruleIndex(){return tf.RULE_xor_subexpr}accept(t){return t.visitXor_subexpr?t.visitXor_subexpr(this):t.visitChildren(this)}},Af=class extends ga{constructor(t,e){super(t,e)}IS(){return this.getToken(tf.IS,0)}DISTINCT(){return this.getToken(tf.DISTINCT,0)}FROM(){return this.getToken(tf.FROM,0)}NOT(){return this.getToken(tf.NOT,0)}get ruleIndex(){return tf.RULE_distinct_from_op}accept(t){return t.visitDistinct_from_op?t.visitDistinct_from_op(this):t.visitChildren(this)}},Sf=class extends ga{constructor(t,e){super(t,e)}match_op(){return this.getRuleContext(0,lf)}eq_subexpr(t){return void 0===t?this.getRuleContexts(Of):this.getRuleContext(t,Of)}NOT(){return this.getToken(tf.NOT,0)}ESCAPE(){return this.getToken(tf.ESCAPE,0)}IN(){return this.getToken(tf.IN,0)}in_expr(){return this.getRuleContext(0,Wf)}COMPACT(){return this.getToken(tf.COMPACT,0)}ISNULL(){return this.getToken(tf.ISNULL,0)}NOTNULL(){return this.getToken(tf.NOTNULL,0)}IS(){return this.getToken(tf.IS,0)}NULL(){return this.getToken(tf.NULL,0)}BETWEEN(){return this.getToken(tf.BETWEEN,0)}AND(){return this.getToken(tf.AND,0)}SYMMETRIC(){return this.getToken(tf.SYMMETRIC,0)}ASYMMETRIC(){return this.getToken(tf.ASYMMETRIC,0)}EQUALS(t){return void 0===t?this.getTokens(tf.EQUALS):this.getToken(tf.EQUALS,t)}EQUALS2(t){return void 0===t?this.getTokens(tf.EQUALS2):this.getToken(tf.EQUALS2,t)}NOT_EQUALS(t){return void 0===t?this.getTokens(tf.NOT_EQUALS):this.getToken(tf.NOT_EQUALS,t)}NOT_EQUALS2(t){return void 0===t?this.getTokens(tf.NOT_EQUALS2):this.getToken(tf.NOT_EQUALS2,t)}distinct_from_op(t){return void 0===t?this.getRuleContexts(Af):this.getRuleContext(t,Af)}get ruleIndex(){return tf.RULE_cond_expr}accept(t){return t.visitCond_expr?t.visitCond_expr(this):t.visitChildren(this)}},lf=class extends ga{constructor(t,e){super(t,e)}LIKE(){return this.getToken(tf.LIKE,0)}ILIKE(){return this.getToken(tf.ILIKE,0)}GLOB(){return this.getToken(tf.GLOB,0)}REGEXP(){return this.getToken(tf.REGEXP,0)}RLIKE(){return this.getToken(tf.RLIKE,0)}MATCH(){return this.getToken(tf.MATCH,0)}get ruleIndex(){return tf.RULE_match_op}accept(t){return t.visitMatch_op?t.visitMatch_op(this):t.visitChildren(this)}},Of=class extends ga{constructor(t,e){super(t,e)}neq_subexpr(t){return void 0===t?this.getRuleContexts(Lf):this.getRuleContext(t,Lf)}LESS(t){return void 0===t?this.getTokens(tf.LESS):this.getToken(tf.LESS,t)}LESS_OR_EQ(t){return void 0===t?this.getTokens(tf.LESS_OR_EQ):this.getToken(tf.LESS_OR_EQ,t)}GREATER(t){return void 0===t?this.getTokens(tf.GREATER):this.getToken(tf.GREATER,t)}GREATER_OR_EQ(t){return void 0===t?this.getTokens(tf.GREATER_OR_EQ):this.getToken(tf.GREATER_OR_EQ,t)}get ruleIndex(){return tf.RULE_eq_subexpr}accept(t){return t.visitEq_subexpr?t.visitEq_subexpr(this):t.visitChildren(this)}},If=class extends ga{constructor(t,e){super(t,e)}GREATER(t){return void 0===t?this.getTokens(tf.GREATER):this.getToken(tf.GREATER,t)}get ruleIndex(){return tf.RULE_shift_right}accept(t){return t.visitShift_right?t.visitShift_right(this):t.visitChildren(this)}},uf=class extends ga{constructor(t,e){super(t,e)}GREATER(t){return void 0===t?this.getTokens(tf.GREATER):this.getToken(tf.GREATER,t)}PIPE(){return this.getToken(tf.PIPE,0)}get ruleIndex(){return tf.RULE_rot_right}accept(t){return t.visitRot_right?t.visitRot_right(this):t.visitChildren(this)}},Nf=class extends ga{constructor(t,e){super(t,e)}QUESTION(t){return void 0===t?this.getTokens(tf.QUESTION):this.getToken(tf.QUESTION,t)}get ruleIndex(){return tf.RULE_double_question}accept(t){return t.visitDouble_question?t.visitDouble_question(this):t.visitChildren(this)}},Lf=class t extends ga{constructor(t,e){super(t,e)}bit_subexpr(t){return void 0===t?this.getRuleContexts(Cf):this.getRuleContext(t,Cf)}SHIFT_LEFT(t){return void 0===t?this.getTokens(tf.SHIFT_LEFT):this.getToken(tf.SHIFT_LEFT,t)}shift_right(t){return void 0===t?this.getRuleContexts(If):this.getRuleContext(t,If)}ROT_LEFT(t){return void 0===t?this.getTokens(tf.ROT_LEFT):this.getToken(tf.ROT_LEFT,t)}rot_right(t){return void 0===t?this.getRuleContexts(uf):this.getRuleContext(t,uf)}AMPERSAND(t){return void 0===t?this.getTokens(tf.AMPERSAND):this.getToken(tf.AMPERSAND,t)}PIPE(t){return void 0===t?this.getTokens(tf.PIPE):this.getToken(tf.PIPE,t)}CARET(t){return void 0===t?this.getTokens(tf.CARET):this.getToken(tf.CARET,t)}double_question(){return this.getRuleContext(0,Nf)}neq_subexpr(){return this.getRuleContext(0,t)}QUESTION(t){return void 0===t?this.getTokens(tf.QUESTION):this.getToken(tf.QUESTION,t)}get ruleIndex(){return tf.RULE_neq_subexpr}accept(t){return t.visitNeq_subexpr?t.visitNeq_subexpr(this):t.visitChildren(this)}},Cf=class extends ga{constructor(t,e){super(t,e)}add_subexpr(t){return void 0===t?this.getRuleContexts(_f):this.getRuleContext(t,_f)}PLUS(t){return void 0===t?this.getTokens(tf.PLUS):this.getToken(tf.PLUS,t)}MINUS(t){return void 0===t?this.getTokens(tf.MINUS):this.getToken(tf.MINUS,t)}get ruleIndex(){return tf.RULE_bit_subexpr}accept(t){return t.visitBit_subexpr?t.visitBit_subexpr(this):t.visitChildren(this)}},_f=class extends ga{constructor(t,e){super(t,e)}mul_subexpr(t){return void 0===t?this.getRuleContexts(Pf):this.getRuleContext(t,Pf)}ASTERISK(t){return void 0===t?this.getTokens(tf.ASTERISK):this.getToken(tf.ASTERISK,t)}SLASH(t){return void 0===t?this.getTokens(tf.SLASH):this.getToken(tf.SLASH,t)}PERCENT(t){return void 0===t?this.getTokens(tf.PERCENT):this.getToken(tf.PERCENT,t)}get ruleIndex(){return tf.RULE_add_subexpr}accept(t){return t.visitAdd_subexpr?t.visitAdd_subexpr(this):t.visitChildren(this)}},Pf=class extends ga{constructor(t,e){super(t,e)}con_subexpr(t){return void 0===t?this.getRuleContexts(Mf):this.getRuleContext(t,Mf)}DOUBLE_PIPE(t){return void 0===t?this.getTokens(tf.DOUBLE_PIPE):this.getToken(tf.DOUBLE_PIPE,t)}get ruleIndex(){return tf.RULE_mul_subexpr}accept(t){return t.visitMul_subexpr?t.visitMul_subexpr(this):t.visitChildren(this)}},Mf=class extends ga{constructor(t,e){super(t,e)}unary_subexpr(){return this.getRuleContext(0,pf)}unary_op(){return this.getRuleContext(0,df)}get ruleIndex(){return tf.RULE_con_subexpr}accept(t){return t.visitCon_subexpr?t.visitCon_subexpr(this):t.visitChildren(this)}},df=class extends ga{constructor(t,e){super(t,e)}PLUS(){return this.getToken(tf.PLUS,0)}MINUS(){return this.getToken(tf.MINUS,0)}TILDA(){return this.getToken(tf.TILDA,0)}NOT(){return this.getToken(tf.NOT,0)}get ruleIndex(){return tf.RULE_unary_op}accept(t){return t.visitUnary_op?t.visitUnary_op(this):t.visitChildren(this)}},Uf=class extends ga{constructor(t,e){super(t,e)}key_expr(t){return void 0===t?this.getRuleContexts(IY):this.getRuleContext(t,IY)}invoke_expr(t){return void 0===t?this.getRuleContexts(SY):this.getRuleContext(t,SY)}COLLATE(){return this.getToken(tf.COLLATE,0)}an_id(){return this.getRuleContext(0,YX)}DOT(t){return void 0===t?this.getTokens(tf.DOT):this.getToken(tf.DOT,t)}bind_parameter(t){return void 0===t?this.getRuleContexts(LY):this.getRuleContext(t,LY)}DIGITS(t){return void 0===t?this.getTokens(tf.DIGITS):this.getToken(tf.DIGITS,t)}an_id_or_type(t){return void 0===t?this.getRuleContexts(wX):this.getRuleContext(t,wX)}get ruleIndex(){return tf.RULE_unary_subexpr_suffix}accept(t){return t.visitUnary_subexpr_suffix?t.visitUnary_subexpr_suffix(this):t.visitChildren(this)}},mf=class extends ga{constructor(t,e){super(t,e)}unary_subexpr_suffix(){return this.getRuleContext(0,Uf)}id_expr(){return this.getRuleContext(0,HX)}atom_expr(){return this.getRuleContext(0,vf)}get ruleIndex(){return tf.RULE_unary_casual_subexpr}accept(t){return t.visitUnary_casual_subexpr?t.visitUnary_casual_subexpr(this):t.visitChildren(this)}},Df=class extends ga{constructor(t,e){super(t,e)}unary_subexpr_suffix(){return this.getRuleContext(0,Uf)}id_expr_in(){return this.getRuleContext(0,GX)}in_atom_expr(){return this.getRuleContext(0,Bf)}get ruleIndex(){return tf.RULE_in_unary_casual_subexpr}accept(t){return t.visitIn_unary_casual_subexpr?t.visitIn_unary_casual_subexpr(this):t.visitChildren(this)}},pf=class extends ga{constructor(t,e){super(t,e)}unary_casual_subexpr(){return this.getRuleContext(0,mf)}json_api_expr(){return this.getRuleContext(0,Vf)}get ruleIndex(){return tf.RULE_unary_subexpr}accept(t){return t.visitUnary_subexpr?t.visitUnary_subexpr(this):t.visitChildren(this)}},gf=class extends ga{constructor(t,e){super(t,e)}in_unary_casual_subexpr(){return this.getRuleContext(0,Df)}json_api_expr(){return this.getRuleContext(0,Vf)}get ruleIndex(){return tf.RULE_in_unary_subexpr}accept(t){return t.visitIn_unary_subexpr?t.visitIn_unary_subexpr(this):t.visitChildren(this)}},xf=class extends ga{constructor(t,e){super(t,e)}LBRACE_SQUARE(){return this.getToken(tf.LBRACE_SQUARE,0)}RBRACE_SQUARE(){return this.getToken(tf.RBRACE_SQUARE,0)}expr_list(){return this.getRuleContext(0,rY)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_list_literal}accept(t){return t.visitList_literal?t.visitList_literal(this):t.visitChildren(this)}},kf=class extends ga{constructor(t,e){super(t,e)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}COLON(t){return void 0===t?this.getTokens(tf.COLON):this.getToken(tf.COLON,t)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_expr_dict_list}accept(t){return t.visitExpr_dict_list?t.visitExpr_dict_list(this):t.visitChildren(this)}},Hf=class extends ga{constructor(t,e){super(t,e)}LBRACE_CURLY(){return this.getToken(tf.LBRACE_CURLY,0)}RBRACE_CURLY(){return this.getToken(tf.RBRACE_CURLY,0)}expr_dict_list(){return this.getRuleContext(0,kf)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_dict_literal}accept(t){return t.visitDict_literal?t.visitDict_literal(this):t.visitChildren(this)}},Gf=class extends ga{constructor(t,e){super(t,e)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}COLON(t){return void 0===t?this.getTokens(tf.COLON):this.getToken(tf.COLON,t)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_expr_struct_list}accept(t){return t.visitExpr_struct_list?t.visitExpr_struct_list(this):t.visitChildren(this)}},Ff=class extends ga{constructor(t,e){super(t,e)}STRUCT_OPEN(){return this.getToken(tf.STRUCT_OPEN,0)}STRUCT_CLOSE(){return this.getToken(tf.STRUCT_CLOSE,0)}expr_struct_list(){return this.getRuleContext(0,Gf)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_struct_literal}accept(t){return t.visitStruct_literal?t.visitStruct_literal(this):t.visitChildren(this)}},vf=class extends ga{constructor(t,e){super(t,e)}literal_value(){return this.getRuleContext(0,NY)}bind_parameter(){return this.getRuleContext(0,LY)}lambda(){return this.getRuleContext(0,bf)}cast_expr(){return this.getRuleContext(0,yf)}exists_expr(){return this.getRuleContext(0,Yf)}case_expr(){return this.getRuleContext(0,wf)}an_id_or_type(){return this.getRuleContext(0,wX)}NAMESPACE(){return this.getToken(tf.NAMESPACE,0)}id_or_type(){return this.getRuleContext(0,tK)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}value_constructor(){return this.getRuleContext(0,zY)}bitcast_expr(){return this.getRuleContext(0,ff)}list_literal(){return this.getRuleContext(0,xf)}dict_literal(){return this.getRuleContext(0,Hf)}struct_literal(){return this.getRuleContext(0,Ff)}get ruleIndex(){return tf.RULE_atom_expr}accept(t){return t.visitAtom_expr?t.visitAtom_expr(this):t.visitChildren(this)}},Bf=class extends ga{constructor(t,e){super(t,e)}literal_value(){return this.getRuleContext(0,NY)}bind_parameter(){return this.getRuleContext(0,LY)}lambda(){return this.getRuleContext(0,bf)}cast_expr(){return this.getRuleContext(0,yf)}case_expr(){return this.getRuleContext(0,wf)}an_id_or_type(){return this.getRuleContext(0,wX)}NAMESPACE(){return this.getToken(tf.NAMESPACE,0)}id_or_type(){return this.getRuleContext(0,tK)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}select_stmt(){return this.getRuleContext(0,Tw)}RPAREN(){return this.getToken(tf.RPAREN,0)}value_constructor(){return this.getRuleContext(0,zY)}bitcast_expr(){return this.getRuleContext(0,ff)}list_literal(){return this.getRuleContext(0,xf)}dict_literal(){return this.getRuleContext(0,Hf)}struct_literal(){return this.getRuleContext(0,Ff)}get ruleIndex(){return tf.RULE_in_atom_expr}accept(t){return t.visitIn_atom_expr?t.visitIn_atom_expr(this):t.visitChildren(this)}},yf=class extends ga{constructor(t,e){super(t,e)}CAST(){return this.getToken(tf.CAST,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(){return this.getRuleContext(0,Ef)}AS(){return this.getToken(tf.AS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_cast_expr}accept(t){return t.visitCast_expr?t.visitCast_expr(this):t.visitChildren(this)}},ff=class extends ga{constructor(t,e){super(t,e)}BITCAST(){return this.getToken(tf.BITCAST,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(){return this.getRuleContext(0,Ef)}AS(){return this.getToken(tf.AS,0)}type_name_simple(){return this.getRuleContext(0,UY)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_bitcast_expr}accept(t){return t.visitBitcast_expr?t.visitBitcast_expr(this):t.visitChildren(this)}},Yf=class extends ga{constructor(t,e){super(t,e)}EXISTS(){return this.getToken(tf.EXISTS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}select_stmt(){return this.getRuleContext(0,Tw)}values_stmt(){return this.getRuleContext(0,db)}get ruleIndex(){return tf.RULE_exists_expr}accept(t){return t.visitExists_expr?t.visitExists_expr(this):t.visitChildren(this)}},wf=class extends ga{constructor(t,e){super(t,e)}CASE(){return this.getToken(tf.CASE,0)}END(){return this.getToken(tf.END,0)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}when_expr(t){return void 0===t?this.getRuleContexts(uY):this.getRuleContext(t,uY)}ELSE(){return this.getToken(tf.ELSE,0)}get ruleIndex(){return tf.RULE_case_expr}accept(t){return t.visitCase_expr?t.visitCase_expr(this):t.visitChildren(this)}},bf=class extends ga{constructor(t,e){super(t,e)}smart_parenthesis(){return this.getRuleContext(0,aY)}ARROW(){return this.getToken(tf.ARROW,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(){return this.getRuleContext(0,Ef)}RPAREN(){return this.getToken(tf.RPAREN,0)}LBRACE_CURLY(){return this.getToken(tf.LBRACE_CURLY,0)}lambda_body(){return this.getRuleContext(0,rf)}RBRACE_CURLY(){return this.getToken(tf.RBRACE_CURLY,0)}get ruleIndex(){return tf.RULE_lambda}accept(t){return t.visitLambda?t.visitLambda(this):t.visitChildren(this)}},Wf=class extends ga{constructor(t,e){super(t,e)}in_unary_subexpr(){return this.getRuleContext(0,gf)}get ruleIndex(){return tf.RULE_in_expr}accept(t){return t.visitIn_expr?t.visitIn_expr(this):t.visitChildren(this)}},Vf=class extends ga{constructor(t,e){super(t,e)}json_value(){return this.getRuleContext(0,jf)}json_exists(){return this.getRuleContext(0,$f)}json_query(){return this.getRuleContext(0,sY)}get ruleIndex(){return tf.RULE_json_api_expr}accept(t){return t.visitJson_api_expr?t.visitJson_api_expr(this):t.visitChildren(this)}},Xf=class extends ga{constructor(t,e){super(t,e)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_jsonpath_spec}accept(t){return t.visitJsonpath_spec?t.visitJsonpath_spec(this):t.visitChildren(this)}},Kf=class extends ga{constructor(t,e){super(t,e)}id_expr(){return this.getRuleContext(0,HX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_json_variable_name}accept(t){return t.visitJson_variable_name?t.visitJson_variable_name(this):t.visitChildren(this)}},Qf=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}AS(){return this.getToken(tf.AS,0)}json_variable_name(){return this.getRuleContext(0,Kf)}get ruleIndex(){return tf.RULE_json_variable}accept(t){return t.visitJson_variable?t.visitJson_variable(this):t.visitChildren(this)}},Jf=class extends ga{constructor(t,e){super(t,e)}json_variable(t){return void 0===t?this.getRuleContexts(Qf):this.getRuleContext(t,Qf)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_json_variables}accept(t){return t.visitJson_variables?t.visitJson_variables(this):t.visitChildren(this)}},Zf=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}COMMA(){return this.getToken(tf.COMMA,0)}jsonpath_spec(){return this.getRuleContext(0,Xf)}PASSING(){return this.getToken(tf.PASSING,0)}json_variables(){return this.getRuleContext(0,Jf)}get ruleIndex(){return tf.RULE_json_common_args}accept(t){return t.visitJson_common_args?t.visitJson_common_args(this):t.visitChildren(this)}},qf=class extends ga{constructor(t,e){super(t,e)}ERROR(){return this.getToken(tf.ERROR,0)}NULL(){return this.getToken(tf.NULL,0)}DEFAULT(){return this.getToken(tf.DEFAULT,0)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_json_case_handler}accept(t){return t.visitJson_case_handler?t.visitJson_case_handler(this):t.visitChildren(this)}},jf=class extends ga{constructor(t,e){super(t,e)}JSON_VALUE(){return this.getToken(tf.JSON_VALUE,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}json_common_args(){return this.getRuleContext(0,Zf)}RPAREN(){return this.getToken(tf.RPAREN,0)}RETURNING(){return this.getToken(tf.RETURNING,0)}type_name_simple(){return this.getRuleContext(0,UY)}json_case_handler(t){return void 0===t?this.getRuleContexts(qf):this.getRuleContext(t,qf)}ON(t){return void 0===t?this.getTokens(tf.ON):this.getToken(tf.ON,t)}EMPTY(t){return void 0===t?this.getTokens(tf.EMPTY):this.getToken(tf.EMPTY,t)}ERROR(t){return void 0===t?this.getTokens(tf.ERROR):this.getToken(tf.ERROR,t)}get ruleIndex(){return tf.RULE_json_value}accept(t){return t.visitJson_value?t.visitJson_value(this):t.visitChildren(this)}},zf=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(tf.ON,0)}ERROR(t){return void 0===t?this.getTokens(tf.ERROR):this.getToken(tf.ERROR,t)}TRUE(){return this.getToken(tf.TRUE,0)}FALSE(){return this.getToken(tf.FALSE,0)}UNKNOWN(){return this.getToken(tf.UNKNOWN,0)}get ruleIndex(){return tf.RULE_json_exists_handler}accept(t){return t.visitJson_exists_handler?t.visitJson_exists_handler(this):t.visitChildren(this)}},$f=class extends ga{constructor(t,e){super(t,e)}JSON_EXISTS(){return this.getToken(tf.JSON_EXISTS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}json_common_args(){return this.getRuleContext(0,Zf)}RPAREN(){return this.getToken(tf.RPAREN,0)}json_exists_handler(){return this.getRuleContext(0,zf)}get ruleIndex(){return tf.RULE_json_exists}accept(t){return t.visitJson_exists?t.visitJson_exists(this):t.visitChildren(this)}},tY=class extends ga{constructor(t,e){super(t,e)}WITHOUT(){return this.getToken(tf.WITHOUT,0)}ARRAY(){return this.getToken(tf.ARRAY,0)}WITH(){return this.getToken(tf.WITH,0)}CONDITIONAL(){return this.getToken(tf.CONDITIONAL,0)}UNCONDITIONAL(){return this.getToken(tf.UNCONDITIONAL,0)}get ruleIndex(){return tf.RULE_json_query_wrapper}accept(t){return t.visitJson_query_wrapper?t.visitJson_query_wrapper(this):t.visitChildren(this)}},eY=class extends ga{constructor(t,e){super(t,e)}ERROR(){return this.getToken(tf.ERROR,0)}NULL(){return this.getToken(tf.NULL,0)}EMPTY(){return this.getToken(tf.EMPTY,0)}ARRAY(){return this.getToken(tf.ARRAY,0)}OBJECT(){return this.getToken(tf.OBJECT,0)}get ruleIndex(){return tf.RULE_json_query_handler}accept(t){return t.visitJson_query_handler?t.visitJson_query_handler(this):t.visitChildren(this)}},sY=class extends ga{constructor(t,e){super(t,e)}JSON_QUERY(){return this.getToken(tf.JSON_QUERY,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}json_common_args(){return this.getRuleContext(0,Zf)}RPAREN(){return this.getToken(tf.RPAREN,0)}json_query_wrapper(){return this.getRuleContext(0,tY)}WRAPPER(){return this.getToken(tf.WRAPPER,0)}json_query_handler(t){return void 0===t?this.getRuleContexts(eY):this.getRuleContext(t,eY)}ON(t){return void 0===t?this.getTokens(tf.ON):this.getToken(tf.ON,t)}EMPTY(){return this.getToken(tf.EMPTY,0)}ERROR(){return this.getToken(tf.ERROR,0)}get ruleIndex(){return tf.RULE_json_query}accept(t){return t.visitJson_query?t.visitJson_query(this):t.visitChildren(this)}},aY=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}named_expr_list(){return this.getRuleContext(0,AY)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_smart_parenthesis}accept(t){return t.visitSmart_parenthesis?t.visitSmart_parenthesis(this):t.visitChildren(this)}},rY=class extends ga{constructor(t,e){super(t,e)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_expr_list}accept(t){return t.visitExpr_list?t.visitExpr_list(this):t.visitChildren(this)}},iY=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_pure_column_list}accept(t){return t.visitPure_column_list?t.visitPure_column_list(this):t.visitChildren(this)}},cY=class extends ga{constructor(t,e){super(t,e)}bind_parameter(){return this.getRuleContext(0,LY)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_pure_column_or_named}accept(t){return t.visitPure_column_or_named?t.visitPure_column_or_named(this):t.visitChildren(this)}},nY=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}pure_column_or_named(t){return void 0===t?this.getRuleContexts(cY):this.getRuleContext(t,cY)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_pure_column_or_named_list}accept(t){return t.visitPure_column_or_named_list?t.visitPure_column_or_named_list(this):t.visitChildren(this)}},hY=class extends ga{constructor(t,e){super(t,e)}opt_id_prefix(){return this.getRuleContext(0,zX)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_column_name}accept(t){return t.visitColumn_name?t.visitColumn_name(this):t.visitChildren(this)}},EY=class extends ga{constructor(t,e){super(t,e)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}DOT(){return this.getToken(tf.DOT,0)}an_id_without(){return this.getRuleContext(0,QX)}get ruleIndex(){return tf.RULE_without_column_name}accept(t){return t.visitWithout_column_name?t.visitWithout_column_name(this):t.visitChildren(this)}},TY=class extends ga{constructor(t,e){super(t,e)}column_name(t){return void 0===t?this.getRuleContexts(hY):this.getRuleContext(t,hY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_column_list}accept(t){return t.visitColumn_list?t.visitColumn_list(this):t.visitChildren(this)}},oY=class extends ga{constructor(t,e){super(t,e)}without_column_name(t){return void 0===t?this.getRuleContexts(EY):this.getRuleContext(t,EY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_without_column_list}accept(t){return t.visitWithout_column_list?t.visitWithout_column_list(this):t.visitChildren(this)}},RY=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}AS(){return this.getToken(tf.AS,0)}an_id_or_type(){return this.getRuleContext(0,wX)}get ruleIndex(){return tf.RULE_named_expr}accept(t){return t.visitNamed_expr?t.visitNamed_expr(this):t.visitChildren(this)}},AY=class extends ga{constructor(t,e){super(t,e)}named_expr(t){return void 0===t?this.getRuleContexts(RY):this.getRuleContext(t,RY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_named_expr_list}accept(t){return t.visitNamed_expr_list?t.visitNamed_expr_list(this):t.visitChildren(this)}},SY=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}invoke_expr_tail(){return this.getRuleContext(0,lY)}opt_set_quantifier(){return this.getRuleContext(0,Lw)}named_expr_list(){return this.getRuleContext(0,AY)}ASTERISK(){return this.getToken(tf.ASTERISK,0)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_invoke_expr}accept(t){return t.visitInvoke_expr?t.visitInvoke_expr(this):t.visitChildren(this)}},lY=class extends ga{constructor(t,e){super(t,e)}null_treatment(){return this.getRuleContext(0,cX)}filter_clause(){return this.getRuleContext(0,nX)}OVER(){return this.getToken(tf.OVER,0)}window_name_or_specification(){return this.getRuleContext(0,hX)}get ruleIndex(){return tf.RULE_invoke_expr_tail}accept(t){return t.visitInvoke_expr_tail?t.visitInvoke_expr_tail(this):t.visitChildren(this)}},OY=class extends ga{constructor(t,e){super(t,e)}invoke_expr(){return this.getRuleContext(0,SY)}an_id_expr(){return this.getRuleContext(0,WX)}bind_parameter(){return this.getRuleContext(0,LY)}an_id_or_type(t){return void 0===t?this.getRuleContexts(wX):this.getRuleContext(t,wX)}NAMESPACE(){return this.getToken(tf.NAMESPACE,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}FUNCTION(){return this.getToken(tf.FUNCTION,0)}get ruleIndex(){return tf.RULE_using_call_expr}accept(t){return t.visitUsing_call_expr?t.visitUsing_call_expr(this):t.visitChildren(this)}},IY=class extends ga{constructor(t,e){super(t,e)}LBRACE_SQUARE(){return this.getToken(tf.LBRACE_SQUARE,0)}expr(){return this.getRuleContext(0,Ef)}RBRACE_SQUARE(){return this.getToken(tf.RBRACE_SQUARE,0)}get ruleIndex(){return tf.RULE_key_expr}accept(t){return t.visitKey_expr?t.visitKey_expr(this):t.visitChildren(this)}},uY=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(tf.WHEN,0)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}THEN(){return this.getToken(tf.THEN,0)}get ruleIndex(){return tf.RULE_when_expr}accept(t){return t.visitWhen_expr?t.visitWhen_expr(this):t.visitChildren(this)}},NY=class extends ga{constructor(t,e){super(t,e)}integer(){return this.getRuleContext(0,uK)}real(){return this.getRuleContext(0,IK)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}BLOB(){return this.getToken(tf.BLOB,0)}NULL(){return this.getToken(tf.NULL,0)}CURRENT_TIME(){return this.getToken(tf.CURRENT_TIME,0)}CURRENT_DATE(){return this.getToken(tf.CURRENT_DATE,0)}CURRENT_TIMESTAMP(){return this.getToken(tf.CURRENT_TIMESTAMP,0)}bool_value(){return this.getRuleContext(0,OK)}EMPTY_ACTION(){return this.getToken(tf.EMPTY_ACTION,0)}get ruleIndex(){return tf.RULE_literal_value}accept(t){return t.visitLiteral_value?t.visitLiteral_value(this):t.visitChildren(this)}},LY=class extends ga{constructor(t,e){super(t,e)}DOLLAR(){return this.getToken(tf.DOLLAR,0)}an_id_or_type(){return this.getRuleContext(0,wX)}TRUE(){return this.getToken(tf.TRUE,0)}FALSE(){return this.getToken(tf.FALSE,0)}get ruleIndex(){return tf.RULE_bind_parameter}accept(t){return t.visitBind_parameter?t.visitBind_parameter(this):t.visitChildren(this)}},CY=class extends ga{constructor(t,e){super(t,e)}bind_parameter(){return this.getRuleContext(0,LY)}QUESTION(){return this.getToken(tf.QUESTION,0)}get ruleIndex(){return tf.RULE_opt_bind_parameter}accept(t){return t.visitOpt_bind_parameter?t.visitOpt_bind_parameter(this):t.visitChildren(this)}},_Y=class extends ga{constructor(t,e){super(t,e)}bind_parameter(t){return void 0===t?this.getRuleContexts(LY):this.getRuleContext(t,LY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_bind_parameter_list}accept(t){return t.visitBind_parameter_list?t.visitBind_parameter_list(this):t.visitChildren(this)}},PY=class extends ga{constructor(t,e){super(t,e)}bind_parameter(t){return void 0===t?this.getRuleContexts(LY):this.getRuleContext(t,LY)}AS(){return this.getToken(tf.AS,0)}get ruleIndex(){return tf.RULE_named_bind_parameter}accept(t){return t.visitNamed_bind_parameter?t.visitNamed_bind_parameter(this):t.visitChildren(this)}},MY=class extends ga{constructor(t,e){super(t,e)}named_bind_parameter(t){return void 0===t?this.getRuleContexts(PY):this.getRuleContext(t,PY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_named_bind_parameter_list}accept(t){return t.visitNamed_bind_parameter_list?t.visitNamed_bind_parameter_list(this):t.visitChildren(this)}},dY=class extends ga{constructor(t,e){super(t,e)}integer(){return this.getRuleContext(0,uK)}real(){return this.getRuleContext(0,IK)}PLUS(){return this.getToken(tf.PLUS,0)}MINUS(){return this.getToken(tf.MINUS,0)}get ruleIndex(){return tf.RULE_signed_number}accept(t){return t.visitSigned_number?t.visitSigned_number(this):t.visitChildren(this)}},UY=class extends ga{constructor(t,e){super(t,e)}an_id_pure(){return this.getRuleContext(0,ZX)}get ruleIndex(){return tf.RULE_type_name_simple}accept(t){return t.visitType_name_simple?t.visitType_name_simple(this):t.visitChildren(this)}},mY=class extends ga{constructor(t,e){super(t,e)}integer(){return this.getRuleContext(0,uK)}bind_parameter(){return this.getRuleContext(0,LY)}get ruleIndex(){return tf.RULE_integer_or_bind}accept(t){return t.visitInteger_or_bind?t.visitInteger_or_bind(this):t.visitChildren(this)}},DY=class extends ga{constructor(t,e){super(t,e)}id(){return this.getRuleContext(0,xX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}bind_parameter(){return this.getRuleContext(0,LY)}get ruleIndex(){return tf.RULE_type_name_tag}accept(t){return t.visitType_name_tag?t.visitType_name_tag(this):t.visitChildren(this)}},pY=class extends ga{constructor(t,e){super(t,e)}type_name_tag(){return this.getRuleContext(0,DY)}COLON(){return this.getToken(tf.COLON,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}get ruleIndex(){return tf.RULE_struct_arg}accept(t){return t.visitStruct_arg?t.visitStruct_arg(this):t.visitChildren(this)}},gY=class extends ga{constructor(t,e){super(t,e)}type_name_tag(){return this.getRuleContext(0,DY)}type_name_or_bind(){return this.getRuleContext(0,qY)}NULL(){return this.getToken(tf.NULL,0)}NOT(){return this.getToken(tf.NOT,0)}AS(){return this.getToken(tf.AS,0)}get ruleIndex(){return tf.RULE_struct_arg_positional}accept(t){return t.visitStruct_arg_positional?t.visitStruct_arg_positional(this):t.visitChildren(this)}},xY=class extends ga{constructor(t,e){super(t,e)}type_name_or_bind(){return this.getRuleContext(0,qY)}type_name_tag(){return this.getRuleContext(0,DY)}COLON(){return this.getToken(tf.COLON,0)}get ruleIndex(){return tf.RULE_variant_arg}accept(t){return t.visitVariant_arg?t.visitVariant_arg(this):t.visitChildren(this)}},kY=class extends ga{constructor(t,e){super(t,e)}variant_arg(){return this.getRuleContext(0,xY)}LBRACE_CURLY(){return this.getToken(tf.LBRACE_CURLY,0)}AUTOMAP(){return this.getToken(tf.AUTOMAP,0)}RBRACE_CURLY(){return this.getToken(tf.RBRACE_CURLY,0)}get ruleIndex(){return tf.RULE_callable_arg}accept(t){return t.visitCallable_arg?t.visitCallable_arg(this):t.visitChildren(this)}},HY=class extends ga{constructor(t,e){super(t,e)}callable_arg(t){return void 0===t?this.getRuleContexts(kY):this.getRuleContext(t,kY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_callable_arg_list}accept(t){return t.visitCallable_arg_list?t.visitCallable_arg_list(this):t.visitChildren(this)}},GY=class extends ga{constructor(t,e){super(t,e)}DECIMAL(){return this.getToken(tf.DECIMAL,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}integer_or_bind(t){return void 0===t?this.getRuleContexts(mY):this.getRuleContext(t,mY)}COMMA(){return this.getToken(tf.COMMA,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_type_name_decimal}accept(t){return t.visitType_name_decimal?t.visitType_name_decimal(this):t.visitChildren(this)}},FY=class extends ga{constructor(t,e){super(t,e)}OPTIONAL(){return this.getToken(tf.OPTIONAL,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_optional}accept(t){return t.visitType_name_optional?t.visitType_name_optional(this):t.visitChildren(this)}},vY=class extends ga{constructor(t,e){super(t,e)}TUPLE(){return this.getToken(tf.TUPLE,0)}LESS(){return this.getToken(tf.LESS,0)}GREATER(){return this.getToken(tf.GREATER,0)}NOT_EQUALS2(){return this.getToken(tf.NOT_EQUALS2,0)}type_name_or_bind(t){return void 0===t?this.getRuleContexts(qY):this.getRuleContext(t,qY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_type_name_tuple}accept(t){return t.visitType_name_tuple?t.visitType_name_tuple(this):t.visitChildren(this)}},BY=class extends ga{constructor(t,e){super(t,e)}STRUCT(){return this.getToken(tf.STRUCT,0)}LESS(){return this.getToken(tf.LESS,0)}GREATER(){return this.getToken(tf.GREATER,0)}NOT_EQUALS2(){return this.getToken(tf.NOT_EQUALS2,0)}struct_arg(t){return void 0===t?this.getRuleContexts(pY):this.getRuleContext(t,pY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_type_name_struct}accept(t){return t.visitType_name_struct?t.visitType_name_struct(this):t.visitChildren(this)}},yY=class extends ga{constructor(t,e){super(t,e)}VARIANT(){return this.getToken(tf.VARIANT,0)}LESS(){return this.getToken(tf.LESS,0)}variant_arg(t){return void 0===t?this.getRuleContexts(xY):this.getRuleContext(t,xY)}GREATER(){return this.getToken(tf.GREATER,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_type_name_variant}accept(t){return t.visitType_name_variant?t.visitType_name_variant(this):t.visitChildren(this)}},fY=class extends ga{constructor(t,e){super(t,e)}LIST(){return this.getToken(tf.LIST,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_list}accept(t){return t.visitType_name_list?t.visitType_name_list(this):t.visitChildren(this)}},YY=class extends ga{constructor(t,e){super(t,e)}STREAM(){return this.getToken(tf.STREAM,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_stream}accept(t){return t.visitType_name_stream?t.visitType_name_stream(this):t.visitChildren(this)}},wY=class extends ga{constructor(t,e){super(t,e)}FLOW(){return this.getToken(tf.FLOW,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_flow}accept(t){return t.visitType_name_flow?t.visitType_name_flow(this):t.visitChildren(this)}},bY=class extends ga{constructor(t,e){super(t,e)}DICT(){return this.getToken(tf.DICT,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(t){return void 0===t?this.getRuleContexts(qY):this.getRuleContext(t,qY)}COMMA(){return this.getToken(tf.COMMA,0)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_dict}accept(t){return t.visitType_name_dict?t.visitType_name_dict(this):t.visitChildren(this)}},WY=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_set}accept(t){return t.visitType_name_set?t.visitType_name_set(this):t.visitChildren(this)}},VY=class extends ga{constructor(t,e){super(t,e)}ENUM(){return this.getToken(tf.ENUM,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_tag(t){return void 0===t?this.getRuleContexts(DY):this.getRuleContext(t,DY)}GREATER(){return this.getToken(tf.GREATER,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_type_name_enum}accept(t){return t.visitType_name_enum?t.visitType_name_enum(this):t.visitChildren(this)}},XY=class extends ga{constructor(t,e){super(t,e)}RESOURCE(){return this.getToken(tf.RESOURCE,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_tag(){return this.getRuleContext(0,DY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_resource}accept(t){return t.visitType_name_resource?t.visitType_name_resource(this):t.visitChildren(this)}},KY=class extends ga{constructor(t,e){super(t,e)}TAGGED(){return this.getToken(tf.TAGGED,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}COMMA(){return this.getToken(tf.COMMA,0)}type_name_tag(){return this.getRuleContext(0,DY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_tagged}accept(t){return t.visitType_name_tagged?t.visitType_name_tagged(this):t.visitChildren(this)}},QY=class extends ga{constructor(t,e){super(t,e)}CALLABLE(){return this.getToken(tf.CALLABLE,0)}LESS(){return this.getToken(tf.LESS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}ARROW(){return this.getToken(tf.ARROW,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}GREATER(){return this.getToken(tf.GREATER,0)}callable_arg_list(t){return void 0===t?this.getRuleContexts(HY):this.getRuleContext(t,HY)}COMMA(){return this.getToken(tf.COMMA,0)}LBRACE_SQUARE(){return this.getToken(tf.LBRACE_SQUARE,0)}RBRACE_SQUARE(){return this.getToken(tf.RBRACE_SQUARE,0)}get ruleIndex(){return tf.RULE_type_name_callable}accept(t){return t.visitType_name_callable?t.visitType_name_callable(this):t.visitChildren(this)}},JY=class extends ga{constructor(t,e){super(t,e)}type_name_optional(){return this.getRuleContext(0,FY)}type_name_tuple(){return this.getRuleContext(0,vY)}type_name_struct(){return this.getRuleContext(0,BY)}type_name_variant(){return this.getRuleContext(0,yY)}type_name_list(){return this.getRuleContext(0,fY)}type_name_stream(){return this.getRuleContext(0,YY)}type_name_flow(){return this.getRuleContext(0,wY)}type_name_dict(){return this.getRuleContext(0,bY)}type_name_set(){return this.getRuleContext(0,WY)}type_name_enum(){return this.getRuleContext(0,VY)}type_name_resource(){return this.getRuleContext(0,XY)}type_name_tagged(){return this.getRuleContext(0,KY)}type_name_callable(){return this.getRuleContext(0,QY)}QUESTION(t){return void 0===t?this.getTokens(tf.QUESTION):this.getToken(tf.QUESTION,t)}get ruleIndex(){return tf.RULE_type_name_composite}accept(t){return t.visitType_name_composite?t.visitType_name_composite(this):t.visitChildren(this)}},ZY=class extends ga{constructor(t,e){super(t,e)}type_name_composite(){return this.getRuleContext(0,JY)}type_name_decimal(){return this.getRuleContext(0,GY)}type_name_simple(){return this.getRuleContext(0,UY)}QUESTION(t){return void 0===t?this.getTokens(tf.QUESTION):this.getToken(tf.QUESTION,t)}get ruleIndex(){return tf.RULE_type_name}accept(t){return t.visitType_name?t.visitType_name(this):t.visitChildren(this)}},qY=class extends ga{constructor(t,e){super(t,e)}type_name(){return this.getRuleContext(0,ZY)}bind_parameter(){return this.getRuleContext(0,LY)}get ruleIndex(){return tf.RULE_type_name_or_bind}accept(t){return t.visitType_name_or_bind?t.visitType_name_or_bind(this):t.visitChildren(this)}},jY=class extends ga{constructor(t,e){super(t,e)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_value_constructor_literal}accept(t){return t.visitValue_constructor_literal?t.visitValue_constructor_literal(this):t.visitChildren(this)}},zY=class extends ga{constructor(t,e){super(t,e)}VARIANT(){return this.getToken(tf.VARIANT,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}RPAREN(){return this.getToken(tf.RPAREN,0)}ENUM(){return this.getToken(tf.ENUM,0)}CALLABLE(){return this.getToken(tf.CALLABLE,0)}get ruleIndex(){return tf.RULE_value_constructor}accept(t){return t.visitValue_constructor?t.visitValue_constructor(this):t.visitChildren(this)}},$Y=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(tf.DECLARE,0)}bind_parameter(){return this.getRuleContext(0,LY)}AS(){return this.getToken(tf.AS,0)}type_name(){return this.getRuleContext(0,ZY)}EQUALS(){return this.getToken(tf.EQUALS,0)}literal_value(){return this.getRuleContext(0,NY)}get ruleIndex(){return tf.RULE_declare_stmt}accept(t){return t.visitDeclare_stmt?t.visitDeclare_stmt(this):t.visitChildren(this)}},tw=class extends ga{constructor(t,e){super(t,e)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}DOT(t){return void 0===t?this.getTokens(tf.DOT):this.getToken(tf.DOT,t)}get ruleIndex(){return tf.RULE_module_path}accept(t){return t.visitModule_path?t.visitModule_path(this):t.visitChildren(this)}},ew=class extends ga{constructor(t,e){super(t,e)}IMPORT(){return this.getToken(tf.IMPORT,0)}module_path(){return this.getRuleContext(0,tw)}SYMBOLS(){return this.getToken(tf.SYMBOLS,0)}named_bind_parameter_list(){return this.getRuleContext(0,MY)}get ruleIndex(){return tf.RULE_import_stmt}accept(t){return t.visitImport_stmt?t.visitImport_stmt(this):t.visitChildren(this)}},sw=class extends ga{constructor(t,e){super(t,e)}EXPORT(){return this.getToken(tf.EXPORT,0)}bind_parameter_list(){return this.getRuleContext(0,_Y)}get ruleIndex(){return tf.RULE_export_stmt}accept(t){return t.visitExport_stmt?t.visitExport_stmt(this):t.visitChildren(this)}},aw=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}bind_parameter(){return this.getRuleContext(0,LY)}EMPTY_ACTION(){return this.getToken(tf.EMPTY_ACTION,0)}expr_list(){return this.getRuleContext(0,rY)}get ruleIndex(){return tf.RULE_call_action}accept(t){return t.visitCall_action?t.visitCall_action(this):t.visitChildren(this)}},rw=class extends ga{constructor(t,e){super(t,e)}BEGIN(){return this.getToken(tf.BEGIN,0)}define_action_or_subquery_body(){return this.getRuleContext(0,lV)}END(){return this.getToken(tf.END,0)}DO(){return this.getToken(tf.DO,0)}get ruleIndex(){return tf.RULE_inline_action}accept(t){return t.visitInline_action?t.visitInline_action(this):t.visitChildren(this)}},iw=class extends ga{constructor(t,e){super(t,e)}DO(){return this.getToken(tf.DO,0)}call_action(){return this.getRuleContext(0,aw)}inline_action(){return this.getRuleContext(0,rw)}get ruleIndex(){return tf.RULE_do_stmt}accept(t){return t.visitDo_stmt?t.visitDo_stmt(this):t.visitChildren(this)}},cw=class extends ga{constructor(t,e){super(t,e)}PRAGMA(){return this.getToken(tf.PRAGMA,0)}opt_id_prefix_or_type(){return this.getRuleContext(0,eK)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}pragma_value(t){return void 0===t?this.getRuleContexts(nw):this.getRuleContext(t,nw)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_pragma_stmt}accept(t){return t.visitPragma_stmt?t.visitPragma_stmt(this):t.visitChildren(this)}},nw=class extends ga{constructor(t,e){super(t,e)}signed_number(){return this.getRuleContext(0,dY)}id(){return this.getRuleContext(0,xX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}bool_value(){return this.getRuleContext(0,OK)}bind_parameter(){return this.getRuleContext(0,LY)}get ruleIndex(){return tf.RULE_pragma_value}accept(t){return t.visitPragma_value?t.visitPragma_value(this):t.visitChildren(this)}},hw=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}ASC(){return this.getToken(tf.ASC,0)}DESC(){return this.getToken(tf.DESC,0)}get ruleIndex(){return tf.RULE_sort_specification}accept(t){return t.visitSort_specification?t.visitSort_specification(this):t.visitChildren(this)}},Ew=class extends ga{constructor(t,e){super(t,e)}sort_specification(t){return void 0===t?this.getRuleContexts(hw):this.getRuleContext(t,hw)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_sort_specification_list}accept(t){return t.visitSort_specification_list?t.visitSort_specification_list(this):t.visitChildren(this)}},Tw=class extends ga{constructor(t,e){super(t,e)}select_kind_parenthesis(t){return void 0===t?this.getRuleContexts(Rw):this.getRuleContext(t,Rw)}select_op(t){return void 0===t?this.getRuleContexts(Aw):this.getRuleContext(t,Aw)}get ruleIndex(){return tf.RULE_select_stmt}accept(t){return t.visitSelect_stmt?t.visitSelect_stmt(this):t.visitChildren(this)}},ow=class extends ga{constructor(t,e){super(t,e)}select_kind_partial(){return this.getRuleContext(0,Sw)}select_op(t){return void 0===t?this.getRuleContexts(Aw):this.getRuleContext(t,Aw)}select_kind_parenthesis(t){return void 0===t?this.getRuleContexts(Rw):this.getRuleContext(t,Rw)}get ruleIndex(){return tf.RULE_select_unparenthesized_stmt}accept(t){return t.visitSelect_unparenthesized_stmt?t.visitSelect_unparenthesized_stmt(this):t.visitChildren(this)}},Rw=class extends ga{constructor(t,e){super(t,e)}select_kind_partial(){return this.getRuleContext(0,Sw)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_select_kind_parenthesis}accept(t){return t.visitSelect_kind_parenthesis?t.visitSelect_kind_parenthesis(this):t.visitChildren(this)}},Aw=class extends ga{constructor(t,e){super(t,e)}UNION(){return this.getToken(tf.UNION,0)}ALL(){return this.getToken(tf.ALL,0)}INTERSECT(){return this.getToken(tf.INTERSECT,0)}EXCEPT(){return this.getToken(tf.EXCEPT,0)}get ruleIndex(){return tf.RULE_select_op}accept(t){return t.visitSelect_op?t.visitSelect_op(this):t.visitChildren(this)}},Sw=class extends ga{constructor(t,e){super(t,e)}select_kind(){return this.getRuleContext(0,lw)}LIMIT(){return this.getToken(tf.LIMIT,0)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}OFFSET(){return this.getToken(tf.OFFSET,0)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_select_kind_partial}accept(t){return t.visitSelect_kind_partial?t.visitSelect_kind_partial(this):t.visitChildren(this)}},lw=class extends ga{constructor(t,e){super(t,e)}process_core(){return this.getRuleContext(0,Ow)}reduce_core(){return this.getRuleContext(0,Nw)}select_core(){return this.getRuleContext(0,Cw)}DISCARD(){return this.getToken(tf.DISCARD,0)}INTO(){return this.getToken(tf.INTO,0)}RESULT(){return this.getToken(tf.RESULT,0)}pure_column_or_named(){return this.getRuleContext(0,cY)}get ruleIndex(){return tf.RULE_select_kind}accept(t){return t.visitSelect_kind?t.visitSelect_kind(this):t.visitChildren(this)}},Ow=class extends ga{constructor(t,e){super(t,e)}PROCESS(){return this.getToken(tf.PROCESS,0)}named_single_source(t){return void 0===t?this.getRuleContexts(Ab):this.getRuleContext(t,Ab)}STREAM(){return this.getToken(tf.STREAM,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}USING(){return this.getToken(tf.USING,0)}using_call_expr(){return this.getRuleContext(0,OY)}AS(){return this.getToken(tf.AS,0)}an_id(){return this.getRuleContext(0,YX)}WITH(){return this.getToken(tf.WITH,0)}external_call_settings(){return this.getRuleContext(0,uw)}where_expr(){return this.getRuleContext(0,MK)}HAVING(){return this.getToken(tf.HAVING,0)}expr(){return this.getRuleContext(0,Ef)}ASSUME(){return this.getToken(tf.ASSUME,0)}order_by_clause(){return this.getRuleContext(0,jw)}get ruleIndex(){return tf.RULE_process_core}accept(t){return t.visitProcess_core?t.visitProcess_core(this):t.visitChildren(this)}},Iw=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_external_call_param}accept(t){return t.visitExternal_call_param?t.visitExternal_call_param(this):t.visitChildren(this)}},uw=class extends ga{constructor(t,e){super(t,e)}external_call_param(t){return void 0===t?this.getRuleContexts(Iw):this.getRuleContext(t,Iw)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_external_call_settings}accept(t){return t.visitExternal_call_settings?t.visitExternal_call_settings(this):t.visitChildren(this)}},Nw=class extends ga{constructor(t,e){super(t,e)}REDUCE(){return this.getToken(tf.REDUCE,0)}named_single_source(t){return void 0===t?this.getRuleContexts(Ab):this.getRuleContext(t,Ab)}ON(){return this.getToken(tf.ON,0)}column_list(){return this.getRuleContext(0,TY)}USING(){return this.getToken(tf.USING,0)}using_call_expr(){return this.getRuleContext(0,OY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}PRESORT(){return this.getToken(tf.PRESORT,0)}sort_specification_list(){return this.getRuleContext(0,Ew)}ALL(){return this.getToken(tf.ALL,0)}AS(){return this.getToken(tf.AS,0)}an_id(){return this.getRuleContext(0,YX)}where_expr(){return this.getRuleContext(0,MK)}HAVING(){return this.getToken(tf.HAVING,0)}expr(){return this.getRuleContext(0,Ef)}ASSUME(){return this.getToken(tf.ASSUME,0)}order_by_clause(){return this.getRuleContext(0,jw)}get ruleIndex(){return tf.RULE_reduce_core}accept(t){return t.visitReduce_core?t.visitReduce_core(this):t.visitChildren(this)}},Lw=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(tf.ALL,0)}DISTINCT(){return this.getToken(tf.DISTINCT,0)}get ruleIndex(){return tf.RULE_opt_set_quantifier}accept(t){return t.visitOpt_set_quantifier?t.visitOpt_set_quantifier(this):t.visitChildren(this)}},Cw=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(tf.SELECT,0)}opt_set_quantifier(){return this.getRuleContext(0,Lw)}result_column(t){return void 0===t?this.getRuleContexts(hb):this.getRuleContext(t,hb)}FROM(t){return void 0===t?this.getTokens(tf.FROM):this.getToken(tf.FROM,t)}join_source(t){return void 0===t?this.getRuleContexts(Eb):this.getRuleContext(t,Eb)}STREAM(){return this.getToken(tf.STREAM,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}WITHOUT(){return this.getToken(tf.WITHOUT,0)}without_column_list(){return this.getRuleContext(0,oY)}where_expr(){return this.getRuleContext(0,MK)}group_by_clause(){return this.getRuleContext(0,$w)}HAVING(){return this.getToken(tf.HAVING,0)}expr(){return this.getRuleContext(0,Ef)}window_clause(){return this.getRuleContext(0,TX)}ext_order_by_clause(){return this.getRuleContext(0,zw)}get ruleIndex(){return tf.RULE_select_core}accept(t){return t.visitSelect_core?t.visitSelect_core(this):t.visitChildren(this)}},_w=class extends ga{constructor(t,e){super(t,e)}MATCH_RECOGNIZE(){return this.getToken(tf.MATCH_RECOGNIZE,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}row_pattern_common_syntax(){return this.getRuleContext(0,Dw)}RPAREN(){return this.getToken(tf.RPAREN,0)}window_partition_clause(){return this.getRuleContext(0,IX)}order_by_clause(){return this.getRuleContext(0,jw)}row_pattern_measures(){return this.getRuleContext(0,dw)}row_pattern_rows_per_match(){return this.getRuleContext(0,Pw)}get ruleIndex(){return tf.RULE_row_pattern_recognition_clause}accept(t){return t.visitRow_pattern_recognition_clause?t.visitRow_pattern_recognition_clause(this):t.visitChildren(this)}},Pw=class extends ga{constructor(t,e){super(t,e)}ONE(){return this.getToken(tf.ONE,0)}ROW(){return this.getToken(tf.ROW,0)}PER(){return this.getToken(tf.PER,0)}MATCH(){return this.getToken(tf.MATCH,0)}ALL(){return this.getToken(tf.ALL,0)}ROWS(){return this.getToken(tf.ROWS,0)}row_pattern_empty_match_handling(){return this.getRuleContext(0,Mw)}get ruleIndex(){return tf.RULE_row_pattern_rows_per_match}accept(t){return t.visitRow_pattern_rows_per_match?t.visitRow_pattern_rows_per_match(this):t.visitChildren(this)}},Mw=class extends ga{constructor(t,e){super(t,e)}SHOW(){return this.getToken(tf.SHOW,0)}EMPTY(){return this.getToken(tf.EMPTY,0)}MATCHES(){return this.getToken(tf.MATCHES,0)}OMIT(){return this.getToken(tf.OMIT,0)}WITH(){return this.getToken(tf.WITH,0)}UNMATCHED(){return this.getToken(tf.UNMATCHED,0)}ROWS(){return this.getToken(tf.ROWS,0)}get ruleIndex(){return tf.RULE_row_pattern_empty_match_handling}accept(t){return t.visitRow_pattern_empty_match_handling?t.visitRow_pattern_empty_match_handling(this):t.visitChildren(this)}},dw=class extends ga{constructor(t,e){super(t,e)}MEASURES(){return this.getToken(tf.MEASURES,0)}row_pattern_measure_list(){return this.getRuleContext(0,Uw)}get ruleIndex(){return tf.RULE_row_pattern_measures}accept(t){return t.visitRow_pattern_measures?t.visitRow_pattern_measures(this):t.visitChildren(this)}},Uw=class extends ga{constructor(t,e){super(t,e)}row_pattern_measure_definition(t){return void 0===t?this.getRuleContexts(mw):this.getRuleContext(t,mw)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_row_pattern_measure_list}accept(t){return t.visitRow_pattern_measure_list?t.visitRow_pattern_measure_list(this):t.visitChildren(this)}},mw=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}AS(){return this.getToken(tf.AS,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_row_pattern_measure_definition}accept(t){return t.visitRow_pattern_measure_definition?t.visitRow_pattern_measure_definition(this):t.visitChildren(this)}},Dw=class extends ga{constructor(t,e){super(t,e)}PATTERN(){return this.getToken(tf.PATTERN,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}row_pattern(){return this.getRuleContext(0,kw)}RPAREN(){return this.getToken(tf.RPAREN,0)}DEFINE(){return this.getToken(tf.DEFINE,0)}row_pattern_definition_list(){return this.getRuleContext(0,Xw)}AFTER(){return this.getToken(tf.AFTER,0)}MATCH(){return this.getToken(tf.MATCH,0)}row_pattern_skip_to(){return this.getRuleContext(0,pw)}row_pattern_initial_or_seek(){return this.getRuleContext(0,xw)}row_pattern_subset_clause(){return this.getRuleContext(0,fw)}get ruleIndex(){return tf.RULE_row_pattern_common_syntax}accept(t){return t.visitRow_pattern_common_syntax?t.visitRow_pattern_common_syntax(this):t.visitChildren(this)}},pw=class extends ga{constructor(t,e){super(t,e)}SKIP_RULE(){return this.getToken(tf.SKIP_RULE,0)}TO(){return this.getToken(tf.TO,0)}NEXT(){return this.getToken(tf.NEXT,0)}ROW(){return this.getToken(tf.ROW,0)}PAST(){return this.getToken(tf.PAST,0)}LAST(){return this.getToken(tf.LAST,0)}FIRST(){return this.getToken(tf.FIRST,0)}row_pattern_skip_to_variable_name(){return this.getRuleContext(0,gw)}get ruleIndex(){return tf.RULE_row_pattern_skip_to}accept(t){return t.visitRow_pattern_skip_to?t.visitRow_pattern_skip_to(this):t.visitChildren(this)}},gw=class extends ga{constructor(t,e){super(t,e)}row_pattern_variable_name(){return this.getRuleContext(0,qw)}get ruleIndex(){return tf.RULE_row_pattern_skip_to_variable_name}accept(t){return t.visitRow_pattern_skip_to_variable_name?t.visitRow_pattern_skip_to_variable_name(this):t.visitChildren(this)}},xw=class extends ga{constructor(t,e){super(t,e)}INITIAL(){return this.getToken(tf.INITIAL,0)}SEEK(){return this.getToken(tf.SEEK,0)}get ruleIndex(){return tf.RULE_row_pattern_initial_or_seek}accept(t){return t.visitRow_pattern_initial_or_seek?t.visitRow_pattern_initial_or_seek(this):t.visitChildren(this)}},kw=class extends ga{constructor(t,e){super(t,e)}row_pattern_term(t){return void 0===t?this.getRuleContexts(Hw):this.getRuleContext(t,Hw)}PIPE(t){return void 0===t?this.getTokens(tf.PIPE):this.getToken(tf.PIPE,t)}get ruleIndex(){return tf.RULE_row_pattern}accept(t){return t.visitRow_pattern?t.visitRow_pattern(this):t.visitChildren(this)}},Hw=class extends ga{constructor(t,e){super(t,e)}row_pattern_factor(t){return void 0===t?this.getRuleContexts(Gw):this.getRuleContext(t,Gw)}get ruleIndex(){return tf.RULE_row_pattern_term}accept(t){return t.visitRow_pattern_term?t.visitRow_pattern_term(this):t.visitChildren(this)}},Gw=class extends ga{constructor(t,e){super(t,e)}row_pattern_primary(){return this.getRuleContext(0,vw)}row_pattern_quantifier(){return this.getRuleContext(0,Fw)}get ruleIndex(){return tf.RULE_row_pattern_factor}accept(t){return t.visitRow_pattern_factor?t.visitRow_pattern_factor(this):t.visitChildren(this)}},Fw=class extends ga{constructor(t,e){super(t,e)}ASTERISK(){return this.getToken(tf.ASTERISK,0)}QUESTION(t){return void 0===t?this.getTokens(tf.QUESTION):this.getToken(tf.QUESTION,t)}PLUS(){return this.getToken(tf.PLUS,0)}LBRACE_CURLY(){return this.getToken(tf.LBRACE_CURLY,0)}COMMA(){return this.getToken(tf.COMMA,0)}RBRACE_CURLY(){return this.getToken(tf.RBRACE_CURLY,0)}integer(t){return void 0===t?this.getRuleContexts(uK):this.getRuleContext(t,uK)}get ruleIndex(){return tf.RULE_row_pattern_quantifier}accept(t){return t.visitRow_pattern_quantifier?t.visitRow_pattern_quantifier(this):t.visitChildren(this)}},vw=class extends ga{constructor(t,e){super(t,e)}row_pattern_primary_variable_name(){return this.getRuleContext(0,Bw)}DOLLAR(){return this.getToken(tf.DOLLAR,0)}CARET(){return this.getToken(tf.CARET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}row_pattern(){return this.getRuleContext(0,kw)}LBRACE_CURLY(){return this.getToken(tf.LBRACE_CURLY,0)}MINUS(t){return void 0===t?this.getTokens(tf.MINUS):this.getToken(tf.MINUS,t)}RBRACE_CURLY(){return this.getToken(tf.RBRACE_CURLY,0)}row_pattern_permute(){return this.getRuleContext(0,yw)}get ruleIndex(){return tf.RULE_row_pattern_primary}accept(t){return t.visitRow_pattern_primary?t.visitRow_pattern_primary(this):t.visitChildren(this)}},Bw=class extends ga{constructor(t,e){super(t,e)}row_pattern_variable_name(){return this.getRuleContext(0,qw)}get ruleIndex(){return tf.RULE_row_pattern_primary_variable_name}accept(t){return t.visitRow_pattern_primary_variable_name?t.visitRow_pattern_primary_variable_name(this):t.visitChildren(this)}},yw=class extends ga{constructor(t,e){super(t,e)}PERMUTE(){return this.getToken(tf.PERMUTE,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}row_pattern(t){return void 0===t?this.getRuleContexts(kw):this.getRuleContext(t,kw)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_row_pattern_permute}accept(t){return t.visitRow_pattern_permute?t.visitRow_pattern_permute(this):t.visitChildren(this)}},fw=class extends ga{constructor(t,e){super(t,e)}SUBSET(){return this.getToken(tf.SUBSET,0)}row_pattern_subset_list(){return this.getRuleContext(0,Yw)}get ruleIndex(){return tf.RULE_row_pattern_subset_clause}accept(t){return t.visitRow_pattern_subset_clause?t.visitRow_pattern_subset_clause(this):t.visitChildren(this)}},Yw=class extends ga{constructor(t,e){super(t,e)}row_pattern_subset_item(t){return void 0===t?this.getRuleContexts(ww):this.getRuleContext(t,ww)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_row_pattern_subset_list}accept(t){return t.visitRow_pattern_subset_list?t.visitRow_pattern_subset_list(this):t.visitChildren(this)}},ww=class extends ga{constructor(t,e){super(t,e)}row_pattern_subset_item_variable_name(){return this.getRuleContext(0,bw)}EQUALS(){return this.getToken(tf.EQUALS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}row_pattern_subset_rhs(){return this.getRuleContext(0,Ww)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_row_pattern_subset_item}accept(t){return t.visitRow_pattern_subset_item?t.visitRow_pattern_subset_item(this):t.visitChildren(this)}},bw=class extends ga{constructor(t,e){super(t,e)}row_pattern_variable_name(){return this.getRuleContext(0,qw)}get ruleIndex(){return tf.RULE_row_pattern_subset_item_variable_name}accept(t){return t.visitRow_pattern_subset_item_variable_name?t.visitRow_pattern_subset_item_variable_name(this):t.visitChildren(this)}},Ww=class extends ga{constructor(t,e){super(t,e)}row_pattern_subset_rhs_variable_name(t){return void 0===t?this.getRuleContexts(Vw):this.getRuleContext(t,Vw)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_row_pattern_subset_rhs}accept(t){return t.visitRow_pattern_subset_rhs?t.visitRow_pattern_subset_rhs(this):t.visitChildren(this)}},Vw=class extends ga{constructor(t,e){super(t,e)}row_pattern_variable_name(){return this.getRuleContext(0,qw)}get ruleIndex(){return tf.RULE_row_pattern_subset_rhs_variable_name}accept(t){return t.visitRow_pattern_subset_rhs_variable_name?t.visitRow_pattern_subset_rhs_variable_name(this):t.visitChildren(this)}},Xw=class extends ga{constructor(t,e){super(t,e)}row_pattern_definition(t){return void 0===t?this.getRuleContexts(Kw):this.getRuleContext(t,Kw)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_row_pattern_definition_list}accept(t){return t.visitRow_pattern_definition_list?t.visitRow_pattern_definition_list(this):t.visitChildren(this)}},Kw=class extends ga{constructor(t,e){super(t,e)}row_pattern_definition_variable_name(){return this.getRuleContext(0,Qw)}AS(){return this.getToken(tf.AS,0)}row_pattern_definition_search_condition(){return this.getRuleContext(0,Jw)}get ruleIndex(){return tf.RULE_row_pattern_definition}accept(t){return t.visitRow_pattern_definition?t.visitRow_pattern_definition(this):t.visitChildren(this)}},Qw=class extends ga{constructor(t,e){super(t,e)}row_pattern_variable_name(){return this.getRuleContext(0,qw)}get ruleIndex(){return tf.RULE_row_pattern_definition_variable_name}accept(t){return t.visitRow_pattern_definition_variable_name?t.visitRow_pattern_definition_variable_name(this):t.visitChildren(this)}},Jw=class extends ga{constructor(t,e){super(t,e)}search_condition(){return this.getRuleContext(0,Zw)}get ruleIndex(){return tf.RULE_row_pattern_definition_search_condition}accept(t){return t.visitRow_pattern_definition_search_condition?t.visitRow_pattern_definition_search_condition(this):t.visitChildren(this)}},Zw=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_search_condition}accept(t){return t.visitSearch_condition?t.visitSearch_condition(this):t.visitChildren(this)}},qw=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}get ruleIndex(){return tf.RULE_row_pattern_variable_name}accept(t){return t.visitRow_pattern_variable_name?t.visitRow_pattern_variable_name(this):t.visitChildren(this)}},jw=class extends ga{constructor(t,e){super(t,e)}ORDER(){return this.getToken(tf.ORDER,0)}BY(){return this.getToken(tf.BY,0)}sort_specification_list(){return this.getRuleContext(0,Ew)}get ruleIndex(){return tf.RULE_order_by_clause}accept(t){return t.visitOrder_by_clause?t.visitOrder_by_clause(this):t.visitChildren(this)}},zw=class extends ga{constructor(t,e){super(t,e)}order_by_clause(){return this.getRuleContext(0,jw)}ASSUME(){return this.getToken(tf.ASSUME,0)}get ruleIndex(){return tf.RULE_ext_order_by_clause}accept(t){return t.visitExt_order_by_clause?t.visitExt_order_by_clause(this):t.visitChildren(this)}},$w=class extends ga{constructor(t,e){super(t,e)}GROUP(){return this.getToken(tf.GROUP,0)}BY(){return this.getToken(tf.BY,0)}opt_set_quantifier(){return this.getRuleContext(0,Lw)}grouping_element_list(){return this.getRuleContext(0,tb)}COMPACT(){return this.getToken(tf.COMPACT,0)}WITH(){return this.getToken(tf.WITH,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_group_by_clause}accept(t){return t.visitGroup_by_clause?t.visitGroup_by_clause(this):t.visitChildren(this)}},tb=class extends ga{constructor(t,e){super(t,e)}grouping_element(t){return void 0===t?this.getRuleContexts(eb):this.getRuleContext(t,eb)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_grouping_element_list}accept(t){return t.visitGrouping_element_list?t.visitGrouping_element_list(this):t.visitChildren(this)}},eb=class extends ga{constructor(t,e){super(t,e)}ordinary_grouping_set(){return this.getRuleContext(0,sb)}rollup_list(){return this.getRuleContext(0,rb)}cube_list(){return this.getRuleContext(0,ib)}grouping_sets_specification(){return this.getRuleContext(0,cb)}hopping_window_specification(){return this.getRuleContext(0,nb)}get ruleIndex(){return tf.RULE_grouping_element}accept(t){return t.visitGrouping_element?t.visitGrouping_element(this):t.visitChildren(this)}},sb=class extends ga{constructor(t,e){super(t,e)}named_expr(){return this.getRuleContext(0,RY)}get ruleIndex(){return tf.RULE_ordinary_grouping_set}accept(t){return t.visitOrdinary_grouping_set?t.visitOrdinary_grouping_set(this):t.visitChildren(this)}},ab=class extends ga{constructor(t,e){super(t,e)}ordinary_grouping_set(t){return void 0===t?this.getRuleContexts(sb):this.getRuleContext(t,sb)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_ordinary_grouping_set_list}accept(t){return t.visitOrdinary_grouping_set_list?t.visitOrdinary_grouping_set_list(this):t.visitChildren(this)}},rb=class extends ga{constructor(t,e){super(t,e)}ROLLUP(){return this.getToken(tf.ROLLUP,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}ordinary_grouping_set_list(){return this.getRuleContext(0,ab)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_rollup_list}accept(t){return t.visitRollup_list?t.visitRollup_list(this):t.visitChildren(this)}},ib=class extends ga{constructor(t,e){super(t,e)}CUBE(){return this.getToken(tf.CUBE,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}ordinary_grouping_set_list(){return this.getRuleContext(0,ab)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_cube_list}accept(t){return t.visitCube_list?t.visitCube_list(this):t.visitChildren(this)}},cb=class extends ga{constructor(t,e){super(t,e)}GROUPING(){return this.getToken(tf.GROUPING,0)}SETS(){return this.getToken(tf.SETS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}grouping_element_list(){return this.getRuleContext(0,tb)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_grouping_sets_specification}accept(t){return t.visitGrouping_sets_specification?t.visitGrouping_sets_specification(this):t.visitChildren(this)}},nb=class extends ga{constructor(t,e){super(t,e)}HOP(){return this.getToken(tf.HOP,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_hopping_window_specification}accept(t){return t.visitHopping_window_specification?t.visitHopping_window_specification(this):t.visitChildren(this)}},hb=class extends ga{constructor(t,e){super(t,e)}opt_id_prefix(){return this.getRuleContext(0,zX)}ASTERISK(){return this.getToken(tf.ASTERISK,0)}expr(){return this.getRuleContext(0,Ef)}an_id_as_compat(){return this.getRuleContext(0,qX)}AS(){return this.getToken(tf.AS,0)}an_id_or_type(){return this.getRuleContext(0,wX)}get ruleIndex(){return tf.RULE_result_column}accept(t){return t.visitResult_column?t.visitResult_column(this):t.visitChildren(this)}},Eb=class extends ga{constructor(t,e){super(t,e)}flatten_source(t){return void 0===t?this.getRuleContexts(Rb):this.getRuleContext(t,Rb)}ANY(t){return void 0===t?this.getTokens(tf.ANY):this.getToken(tf.ANY,t)}join_op(t){return void 0===t?this.getRuleContexts(Nb):this.getRuleContext(t,Nb)}join_constraint(t){return void 0===t?this.getRuleContexts(Lb):this.getRuleContext(t,Lb)}get ruleIndex(){return tf.RULE_join_source}accept(t){return t.visitJoin_source?t.visitJoin_source(this):t.visitChildren(this)}},Tb=class extends ga{constructor(t,e){super(t,e)}column_name(){return this.getRuleContext(0,hY)}AS(){return this.getToken(tf.AS,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_named_column}accept(t){return t.visitNamed_column?t.visitNamed_column(this):t.visitChildren(this)}},ob=class extends ga{constructor(t,e){super(t,e)}named_column(){return this.getRuleContext(0,Tb)}LPAREN(){return this.getToken(tf.LPAREN,0)}named_expr_list(){return this.getRuleContext(0,AY)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_flatten_by_arg}accept(t){return t.visitFlatten_by_arg?t.visitFlatten_by_arg(this):t.visitChildren(this)}},Rb=class extends ga{constructor(t,e){super(t,e)}named_single_source(){return this.getRuleContext(0,Ab)}FLATTEN(){return this.getToken(tf.FLATTEN,0)}BY(){return this.getToken(tf.BY,0)}flatten_by_arg(){return this.getRuleContext(0,ob)}COLUMNS(){return this.getToken(tf.COLUMNS,0)}OPTIONAL(){return this.getToken(tf.OPTIONAL,0)}LIST(){return this.getToken(tf.LIST,0)}DICT(){return this.getToken(tf.DICT,0)}get ruleIndex(){return tf.RULE_flatten_source}accept(t){return t.visitFlatten_source?t.visitFlatten_source(this):t.visitChildren(this)}},Ab=class extends ga{constructor(t,e){super(t,e)}single_source(){return this.getRuleContext(0,Sb)}row_pattern_recognition_clause(){return this.getRuleContext(0,_w)}sample_clause(){return this.getRuleContext(0,lb)}tablesample_clause(){return this.getRuleContext(0,Ob)}an_id_as_compat(){return this.getRuleContext(0,qX)}pure_column_list(){return this.getRuleContext(0,iY)}AS(){return this.getToken(tf.AS,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_named_single_source}accept(t){return t.visitNamed_single_source?t.visitNamed_single_source(this):t.visitChildren(this)}},Sb=class extends ga{constructor(t,e){super(t,e)}table_ref(){return this.getRuleContext(0,uV)}LPAREN(){return this.getToken(tf.LPAREN,0)}select_stmt(){return this.getRuleContext(0,Tw)}RPAREN(){return this.getToken(tf.RPAREN,0)}values_stmt(){return this.getRuleContext(0,db)}get ruleIndex(){return tf.RULE_single_source}accept(t){return t.visitSingle_source?t.visitSingle_source(this):t.visitChildren(this)}},lb=class extends ga{constructor(t,e){super(t,e)}SAMPLE(){return this.getToken(tf.SAMPLE,0)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_sample_clause}accept(t){return t.visitSample_clause?t.visitSample_clause(this):t.visitChildren(this)}},Ob=class extends ga{constructor(t,e){super(t,e)}TABLESAMPLE(){return this.getToken(tf.TABLESAMPLE,0)}sampling_mode(){return this.getRuleContext(0,Ib)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(){return this.getRuleContext(0,Ef)}RPAREN(){return this.getToken(tf.RPAREN,0)}repeatable_clause(){return this.getRuleContext(0,ub)}get ruleIndex(){return tf.RULE_tablesample_clause}accept(t){return t.visitTablesample_clause?t.visitTablesample_clause(this):t.visitChildren(this)}},Ib=class extends ga{constructor(t,e){super(t,e)}BERNOULLI(){return this.getToken(tf.BERNOULLI,0)}SYSTEM(){return this.getToken(tf.SYSTEM,0)}get ruleIndex(){return tf.RULE_sampling_mode}accept(t){return t.visitSampling_mode?t.visitSampling_mode(this):t.visitChildren(this)}},ub=class extends ga{constructor(t,e){super(t,e)}REPEATABLE(){return this.getToken(tf.REPEATABLE,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(){return this.getRuleContext(0,Ef)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_repeatable_clause}accept(t){return t.visitRepeatable_clause?t.visitRepeatable_clause(this):t.visitChildren(this)}},Nb=class extends ga{constructor(t,e){super(t,e)}COMMA(){return this.getToken(tf.COMMA,0)}JOIN(){return this.getToken(tf.JOIN,0)}INNER(){return this.getToken(tf.INNER,0)}CROSS(){return this.getToken(tf.CROSS,0)}NATURAL(){return this.getToken(tf.NATURAL,0)}LEFT(){return this.getToken(tf.LEFT,0)}RIGHT(){return this.getToken(tf.RIGHT,0)}EXCLUSION(){return this.getToken(tf.EXCLUSION,0)}FULL(){return this.getToken(tf.FULL,0)}OUTER(){return this.getToken(tf.OUTER,0)}ONLY(){return this.getToken(tf.ONLY,0)}SEMI(){return this.getToken(tf.SEMI,0)}get ruleIndex(){return tf.RULE_join_op}accept(t){return t.visitJoin_op?t.visitJoin_op(this):t.visitChildren(this)}},Lb=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(tf.ON,0)}expr(){return this.getRuleContext(0,Ef)}USING(){return this.getToken(tf.USING,0)}pure_column_or_named_list(){return this.getRuleContext(0,nY)}get ruleIndex(){return tf.RULE_join_constraint}accept(t){return t.visitJoin_constraint?t.visitJoin_constraint(this):t.visitChildren(this)}},Cb=class extends ga{constructor(t,e){super(t,e)}RETURNING(){return this.getToken(tf.RETURNING,0)}ASTERISK(){return this.getToken(tf.ASTERISK,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_returning_columns_list}accept(t){return t.visitReturning_columns_list?t.visitReturning_columns_list(this):t.visitChildren(this)}},_b=class extends ga{constructor(t,e){super(t,e)}INTO(){return this.getToken(tf.INTO,0)}into_simple_table_ref(){return this.getRuleContext(0,UV)}into_values_source(){return this.getRuleContext(0,Mb)}INSERT(){return this.getToken(tf.INSERT,0)}OR(){return this.getToken(tf.OR,0)}ABORT(){return this.getToken(tf.ABORT,0)}REVERT(){return this.getToken(tf.REVERT,0)}IGNORE(){return this.getToken(tf.IGNORE,0)}UPSERT(){return this.getToken(tf.UPSERT,0)}REPLACE(){return this.getToken(tf.REPLACE,0)}returning_columns_list(){return this.getRuleContext(0,Cb)}get ruleIndex(){return tf.RULE_into_table_stmt}accept(t){return t.visitInto_table_stmt?t.visitInto_table_stmt(this):t.visitChildren(this)}},Pb=class extends ga{constructor(t,e){super(t,e)}INTO(){return this.getToken(tf.INTO,0)}into_simple_table_ref(){return this.getRuleContext(0,UV)}into_values_source(){return this.getRuleContext(0,Mb)}INSERT(){return this.getToken(tf.INSERT,0)}OR(){return this.getToken(tf.OR,0)}ABORT(){return this.getToken(tf.ABORT,0)}REVERT(){return this.getToken(tf.REVERT,0)}IGNORE(){return this.getToken(tf.IGNORE,0)}REPLACE(){return this.getToken(tf.REPLACE,0)}get ruleIndex(){return tf.RULE_into_table_stmt_yq}accept(t){return t.visitInto_table_stmt_yq?t.visitInto_table_stmt_yq(this):t.visitChildren(this)}},Mb=class extends ga{constructor(t,e){super(t,e)}values_source(){return this.getRuleContext(0,Ub)}pure_column_list(){return this.getRuleContext(0,iY)}DEFAULT(){return this.getToken(tf.DEFAULT,0)}VALUES(){return this.getToken(tf.VALUES,0)}get ruleIndex(){return tf.RULE_into_values_source}accept(t){return t.visitInto_values_source?t.visitInto_values_source(this):t.visitChildren(this)}},db=class extends ga{constructor(t,e){super(t,e)}VALUES(){return this.getToken(tf.VALUES,0)}values_source_row_list(){return this.getRuleContext(0,mb)}get ruleIndex(){return tf.RULE_values_stmt}accept(t){return t.visitValues_stmt?t.visitValues_stmt(this):t.visitChildren(this)}},Ub=class extends ga{constructor(t,e){super(t,e)}values_stmt(){return this.getRuleContext(0,db)}select_stmt(){return this.getRuleContext(0,Tw)}get ruleIndex(){return tf.RULE_values_source}accept(t){return t.visitValues_source?t.visitValues_source(this):t.visitChildren(this)}},mb=class extends ga{constructor(t,e){super(t,e)}values_source_row(t){return void 0===t?this.getRuleContexts(Db):this.getRuleContext(t,Db)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_values_source_row_list}accept(t){return t.visitValues_source_row_list?t.visitValues_source_row_list(this):t.visitChildren(this)}},Db=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr_list(){return this.getRuleContext(0,rY)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_values_source_row}accept(t){return t.visitValues_source_row?t.visitValues_source_row(this):t.visitChildren(this)}},pb=class extends ga{constructor(t,e){super(t,e)}expr_list(){return this.getRuleContext(0,rY)}select_stmt(){return this.getRuleContext(0,Tw)}get ruleIndex(){return tf.RULE_simple_values_source}accept(t){return t.visitSimple_values_source?t.visitSimple_values_source(this):t.visitChildren(this)}},gb=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}DATA(){return this.getToken(tf.DATA,0)}SOURCE(){return this.getToken(tf.SOURCE,0)}object_ref(){return this.getRuleContext(0,PV)}with_table_settings(){return this.getRuleContext(0,$b)}OR(){return this.getToken(tf.OR,0)}REPLACE(){return this.getToken(tf.REPLACE,0)}IF(){return this.getToken(tf.IF,0)}NOT(){return this.getToken(tf.NOT,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}get ruleIndex(){return tf.RULE_create_external_data_source_stmt}accept(t){return t.visitCreate_external_data_source_stmt?t.visitCreate_external_data_source_stmt(this):t.visitChildren(this)}},xb=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}DATA(){return this.getToken(tf.DATA,0)}SOURCE(){return this.getToken(tf.SOURCE,0)}object_ref(){return this.getRuleContext(0,PV)}alter_external_data_source_action(t){return void 0===t?this.getRuleContexts(kb):this.getRuleContext(t,kb)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_external_data_source_stmt}accept(t){return t.visitAlter_external_data_source_stmt?t.visitAlter_external_data_source_stmt(this):t.visitChildren(this)}},kb=class extends ga{constructor(t,e){super(t,e)}alter_table_set_table_setting_uncompat(){return this.getRuleContext(0,SW)}alter_table_set_table_setting_compat(){return this.getRuleContext(0,lW)}alter_table_reset_table_setting(){return this.getRuleContext(0,OW)}get ruleIndex(){return tf.RULE_alter_external_data_source_action}accept(t){return t.visitAlter_external_data_source_action?t.visitAlter_external_data_source_action(this):t.visitChildren(this)}},Hb=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}DATA(){return this.getToken(tf.DATA,0)}SOURCE(){return this.getToken(tf.SOURCE,0)}object_ref(){return this.getRuleContext(0,PV)}IF(){return this.getToken(tf.IF,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}get ruleIndex(){return tf.RULE_drop_external_data_source_stmt}accept(t){return t.visitDrop_external_data_source_stmt?t.visitDrop_external_data_source_stmt(this):t.visitChildren(this)}},Gb=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}VIEW(){return this.getToken(tf.VIEW,0)}object_ref(){return this.getRuleContext(0,PV)}with_table_settings(){return this.getRuleContext(0,$b)}AS(){return this.getToken(tf.AS,0)}select_stmt(){return this.getRuleContext(0,Tw)}get ruleIndex(){return tf.RULE_create_view_stmt}accept(t){return t.visitCreate_view_stmt?t.visitCreate_view_stmt(this):t.visitChildren(this)}},Fb=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}VIEW(){return this.getToken(tf.VIEW,0)}object_ref(){return this.getRuleContext(0,PV)}get ruleIndex(){return tf.RULE_drop_view_stmt}accept(t){return t.visitDrop_view_stmt?t.visitDrop_view_stmt(this):t.visitChildren(this)}},vb=class extends ga{constructor(t,e){super(t,e)}UPSERT(){return this.getToken(tf.UPSERT,0)}OBJECT(){return this.getToken(tf.OBJECT,0)}object_ref(){return this.getRuleContext(0,PV)}LPAREN(){return this.getToken(tf.LPAREN,0)}TYPE(){return this.getToken(tf.TYPE,0)}object_type_ref(){return this.getRuleContext(0,Jb)}RPAREN(){return this.getToken(tf.RPAREN,0)}create_object_features(){return this.getRuleContext(0,yb)}get ruleIndex(){return tf.RULE_upsert_object_stmt}accept(t){return t.visitUpsert_object_stmt?t.visitUpsert_object_stmt(this):t.visitChildren(this)}},Bb=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}OBJECT(){return this.getToken(tf.OBJECT,0)}object_ref(){return this.getRuleContext(0,PV)}LPAREN(){return this.getToken(tf.LPAREN,0)}TYPE(){return this.getToken(tf.TYPE,0)}object_type_ref(){return this.getRuleContext(0,Jb)}RPAREN(){return this.getToken(tf.RPAREN,0)}IF(){return this.getToken(tf.IF,0)}NOT(){return this.getToken(tf.NOT,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}create_object_features(){return this.getRuleContext(0,yb)}get ruleIndex(){return tf.RULE_create_object_stmt}accept(t){return t.visitCreate_object_stmt?t.visitCreate_object_stmt(this):t.visitChildren(this)}},yb=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(tf.WITH,0)}object_features(){return this.getRuleContext(0,Qb)}get ruleIndex(){return tf.RULE_create_object_features}accept(t){return t.visitCreate_object_features?t.visitCreate_object_features(this):t.visitChildren(this)}},fb=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}OBJECT(){return this.getToken(tf.OBJECT,0)}object_ref(){return this.getRuleContext(0,PV)}LPAREN(){return this.getToken(tf.LPAREN,0)}TYPE(){return this.getToken(tf.TYPE,0)}object_type_ref(){return this.getRuleContext(0,Jb)}RPAREN(){return this.getToken(tf.RPAREN,0)}alter_object_features(){return this.getRuleContext(0,Yb)}get ruleIndex(){return tf.RULE_alter_object_stmt}accept(t){return t.visitAlter_object_stmt?t.visitAlter_object_stmt(this):t.visitChildren(this)}},Yb=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}object_features(){return this.getRuleContext(0,Qb)}get ruleIndex(){return tf.RULE_alter_object_features}accept(t){return t.visitAlter_object_features?t.visitAlter_object_features(this):t.visitChildren(this)}},wb=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}OBJECT(){return this.getToken(tf.OBJECT,0)}object_ref(){return this.getRuleContext(0,PV)}LPAREN(){return this.getToken(tf.LPAREN,0)}TYPE(){return this.getToken(tf.TYPE,0)}object_type_ref(){return this.getRuleContext(0,Jb)}RPAREN(){return this.getToken(tf.RPAREN,0)}IF(){return this.getToken(tf.IF,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}drop_object_features(){return this.getRuleContext(0,bb)}get ruleIndex(){return tf.RULE_drop_object_stmt}accept(t){return t.visitDrop_object_stmt?t.visitDrop_object_stmt(this):t.visitChildren(this)}},bb=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(tf.WITH,0)}object_features(){return this.getRuleContext(0,Qb)}get ruleIndex(){return tf.RULE_drop_object_features}accept(t){return t.visitDrop_object_features?t.visitDrop_object_features(this):t.visitChildren(this)}},Wb=class extends ga{constructor(t,e){super(t,e)}id_or_type(){return this.getRuleContext(0,tK)}bind_parameter(){return this.getRuleContext(0,LY)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_object_feature_value}accept(t){return t.visitObject_feature_value?t.visitObject_feature_value(this):t.visitChildren(this)}},Vb=class extends ga{constructor(t,e){super(t,e)}an_id_or_type(){return this.getRuleContext(0,wX)}EQUALS(){return this.getToken(tf.EQUALS,0)}object_feature_value(){return this.getRuleContext(0,Wb)}get ruleIndex(){return tf.RULE_object_feature_kv}accept(t){return t.visitObject_feature_kv?t.visitObject_feature_kv(this):t.visitChildren(this)}},Xb=class extends ga{constructor(t,e){super(t,e)}an_id_or_type(){return this.getRuleContext(0,wX)}get ruleIndex(){return tf.RULE_object_feature_flag}accept(t){return t.visitObject_feature_flag?t.visitObject_feature_flag(this):t.visitChildren(this)}},Kb=class extends ga{constructor(t,e){super(t,e)}object_feature_kv(){return this.getRuleContext(0,Vb)}object_feature_flag(){return this.getRuleContext(0,Xb)}get ruleIndex(){return tf.RULE_object_feature}accept(t){return t.visitObject_feature?t.visitObject_feature(this):t.visitChildren(this)}},Qb=class extends ga{constructor(t,e){super(t,e)}object_feature(t){return void 0===t?this.getRuleContexts(Kb):this.getRuleContext(t,Kb)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_object_features}accept(t){return t.visitObject_features?t.visitObject_features(this):t.visitChildren(this)}},Jb=class extends ga{constructor(t,e){super(t,e)}an_id_or_type(){return this.getRuleContext(0,wX)}get ruleIndex(){return tf.RULE_object_type_ref}accept(t){return t.visitObject_type_ref?t.visitObject_type_ref(this):t.visitChildren(this)}},Zb=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}simple_table_ref(){return this.getRuleContext(0,dV)}LPAREN(){return this.getToken(tf.LPAREN,0)}create_table_entry(t){return void 0===t?this.getRuleContexts(qb):this.getRuleContext(t,qb)}RPAREN(){return this.getToken(tf.RPAREN,0)}TABLE(){return this.getToken(tf.TABLE,0)}TABLESTORE(){return this.getToken(tf.TABLESTORE,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}TEMP(){return this.getToken(tf.TEMP,0)}TEMPORARY(){return this.getToken(tf.TEMPORARY,0)}OR(){return this.getToken(tf.OR,0)}REPLACE(){return this.getToken(tf.REPLACE,0)}IF(){return this.getToken(tf.IF,0)}NOT(){return this.getToken(tf.NOT,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}table_inherits(){return this.getRuleContext(0,jb)}table_partition_by(){return this.getRuleContext(0,zb)}with_table_settings(){return this.getRuleContext(0,$b)}table_tablestore(){return this.getRuleContext(0,tW)}table_as_source(){return this.getRuleContext(0,sW)}get ruleIndex(){return tf.RULE_create_table_stmt}accept(t){return t.visitCreate_table_stmt?t.visitCreate_table_stmt(this):t.visitChildren(this)}},qb=class extends ga{constructor(t,e){super(t,e)}column_schema(){return this.getRuleContext(0,MW)}table_constraint(){return this.getRuleContext(0,DW)}table_index(){return this.getRuleContext(0,pW)}family_entry(){return this.getRuleContext(0,YW)}changefeed(){return this.getRuleContext(0,HW)}an_id_schema(){return this.getRuleContext(0,bX)}get ruleIndex(){return tf.RULE_create_table_entry}accept(t){return t.visitCreate_table_entry?t.visitCreate_table_entry(this):t.visitChildren(this)}},jb=class extends ga{constructor(t,e){super(t,e)}INHERITS(){return this.getToken(tf.INHERITS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}simple_table_ref_core(t){return void 0===t?this.getRuleContexts(MV):this.getRuleContext(t,MV)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_table_inherits}accept(t){return t.visitTable_inherits?t.visitTable_inherits(this):t.visitChildren(this)}},zb=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(tf.PARTITION,0)}BY(){return this.getToken(tf.BY,0)}HASH(){return this.getToken(tf.HASH,0)}pure_column_list(){return this.getRuleContext(0,iY)}get ruleIndex(){return tf.RULE_table_partition_by}accept(t){return t.visitTable_partition_by?t.visitTable_partition_by(this):t.visitChildren(this)}},$b=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(tf.WITH,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}table_settings_entry(t){return void 0===t?this.getRuleContexts(eW):this.getRuleContext(t,eW)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_with_table_settings}accept(t){return t.visitWith_table_settings?t.visitWith_table_settings(this):t.visitChildren(this)}},tW=class extends ga{constructor(t,e){super(t,e)}TABLESTORE(){return this.getToken(tf.TABLESTORE,0)}simple_table_ref_core(){return this.getRuleContext(0,MV)}get ruleIndex(){return tf.RULE_table_tablestore}accept(t){return t.visitTable_tablestore?t.visitTable_tablestore(this):t.visitChildren(this)}},eW=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}table_setting_value(){return this.getRuleContext(0,fW)}get ruleIndex(){return tf.RULE_table_settings_entry}accept(t){return t.visitTable_settings_entry?t.visitTable_settings_entry(this):t.visitChildren(this)}},sW=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(tf.AS,0)}values_source(){return this.getRuleContext(0,Ub)}get ruleIndex(){return tf.RULE_table_as_source}accept(t){return t.visitTable_as_source?t.visitTable_as_source(this):t.visitChildren(this)}},aW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}TABLE(){return this.getToken(tf.TABLE,0)}simple_table_ref(){return this.getRuleContext(0,dV)}alter_table_action(t){return void 0===t?this.getRuleContexts(rW):this.getRuleContext(t,rW)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_table_stmt}accept(t){return t.visitAlter_table_stmt?t.visitAlter_table_stmt(this):t.visitChildren(this)}},rW=class extends ga{constructor(t,e){super(t,e)}alter_table_add_column(){return this.getRuleContext(0,EW)}alter_table_drop_column(){return this.getRuleContext(0,TW)}alter_table_alter_column(){return this.getRuleContext(0,oW)}alter_table_add_column_family(){return this.getRuleContext(0,RW)}alter_table_alter_column_family(){return this.getRuleContext(0,AW)}alter_table_set_table_setting_uncompat(){return this.getRuleContext(0,SW)}alter_table_set_table_setting_compat(){return this.getRuleContext(0,lW)}alter_table_reset_table_setting(){return this.getRuleContext(0,OW)}alter_table_add_index(){return this.getRuleContext(0,IW)}alter_table_drop_index(){return this.getRuleContext(0,uW)}alter_table_rename_to(){return this.getRuleContext(0,NW)}alter_table_add_changefeed(){return this.getRuleContext(0,CW)}alter_table_alter_changefeed(){return this.getRuleContext(0,_W)}alter_table_drop_changefeed(){return this.getRuleContext(0,PW)}alter_table_rename_index_to(){return this.getRuleContext(0,LW)}get ruleIndex(){return tf.RULE_alter_table_action}accept(t){return t.visitAlter_table_action?t.visitAlter_table_action(this):t.visitChildren(this)}},iW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}TABLE(){return this.getToken(tf.TABLE,0)}simple_table_ref(){return this.getRuleContext(0,dV)}alter_external_table_action(t){return void 0===t?this.getRuleContexts(cW):this.getRuleContext(t,cW)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_external_table_stmt}accept(t){return t.visitAlter_external_table_stmt?t.visitAlter_external_table_stmt(this):t.visitChildren(this)}},cW=class extends ga{constructor(t,e){super(t,e)}alter_table_add_column(){return this.getRuleContext(0,EW)}alter_table_drop_column(){return this.getRuleContext(0,TW)}alter_table_set_table_setting_uncompat(){return this.getRuleContext(0,SW)}alter_table_set_table_setting_compat(){return this.getRuleContext(0,lW)}alter_table_reset_table_setting(){return this.getRuleContext(0,OW)}get ruleIndex(){return tf.RULE_alter_external_table_action}accept(t){return t.visitAlter_external_table_action?t.visitAlter_external_table_action(this):t.visitChildren(this)}},nW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}TABLESTORE(){return this.getToken(tf.TABLESTORE,0)}object_ref(){return this.getRuleContext(0,PV)}alter_table_store_action(t){return void 0===t?this.getRuleContexts(hW):this.getRuleContext(t,hW)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_table_store_stmt}accept(t){return t.visitAlter_table_store_stmt?t.visitAlter_table_store_stmt(this):t.visitChildren(this)}},hW=class extends ga{constructor(t,e){super(t,e)}alter_table_add_column(){return this.getRuleContext(0,EW)}alter_table_drop_column(){return this.getRuleContext(0,TW)}get ruleIndex(){return tf.RULE_alter_table_store_action}accept(t){return t.visitAlter_table_store_action?t.visitAlter_table_store_action(this):t.visitChildren(this)}},EW=class extends ga{constructor(t,e){super(t,e)}ADD(){return this.getToken(tf.ADD,0)}column_schema(){return this.getRuleContext(0,MW)}COLUMN(){return this.getToken(tf.COLUMN,0)}get ruleIndex(){return tf.RULE_alter_table_add_column}accept(t){return t.visitAlter_table_add_column?t.visitAlter_table_add_column(this):t.visitChildren(this)}},TW=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}an_id(){return this.getRuleContext(0,YX)}COLUMN(){return this.getToken(tf.COLUMN,0)}get ruleIndex(){return tf.RULE_alter_table_drop_column}accept(t){return t.visitAlter_table_drop_column?t.visitAlter_table_drop_column(this):t.visitChildren(this)}},oW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}COLUMN(){return this.getToken(tf.COLUMN,0)}an_id(){return this.getRuleContext(0,YX)}SET(){return this.getToken(tf.SET,0)}family_relation(){return this.getRuleContext(0,dW)}get ruleIndex(){return tf.RULE_alter_table_alter_column}accept(t){return t.visitAlter_table_alter_column?t.visitAlter_table_alter_column(this):t.visitChildren(this)}},RW=class extends ga{constructor(t,e){super(t,e)}ADD(){return this.getToken(tf.ADD,0)}family_entry(){return this.getRuleContext(0,YW)}get ruleIndex(){return tf.RULE_alter_table_add_column_family}accept(t){return t.visitAlter_table_add_column_family?t.visitAlter_table_add_column_family(this):t.visitChildren(this)}},AW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}FAMILY(){return this.getToken(tf.FAMILY,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}SET(){return this.getToken(tf.SET,0)}family_setting_value(){return this.getRuleContext(0,WW)}get ruleIndex(){return tf.RULE_alter_table_alter_column_family}accept(t){return t.visitAlter_table_alter_column_family?t.visitAlter_table_alter_column_family(this):t.visitChildren(this)}},SW=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}an_id(){return this.getRuleContext(0,YX)}table_setting_value(){return this.getRuleContext(0,fW)}get ruleIndex(){return tf.RULE_alter_table_set_table_setting_uncompat}accept(t){return t.visitAlter_table_set_table_setting_uncompat?t.visitAlter_table_set_table_setting_uncompat(this):t.visitChildren(this)}},lW=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}alter_table_setting_entry(t){return void 0===t?this.getRuleContexts(yW):this.getRuleContext(t,yW)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_table_set_table_setting_compat}accept(t){return t.visitAlter_table_set_table_setting_compat?t.visitAlter_table_set_table_setting_compat(this):t.visitChildren(this)}},OW=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(tf.RESET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_table_reset_table_setting}accept(t){return t.visitAlter_table_reset_table_setting?t.visitAlter_table_reset_table_setting(this):t.visitChildren(this)}},IW=class extends ga{constructor(t,e){super(t,e)}ADD(){return this.getToken(tf.ADD,0)}table_index(){return this.getRuleContext(0,pW)}get ruleIndex(){return tf.RULE_alter_table_add_index}accept(t){return t.visitAlter_table_add_index?t.visitAlter_table_add_index(this):t.visitChildren(this)}},uW=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}INDEX(){return this.getToken(tf.INDEX,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_alter_table_drop_index}accept(t){return t.visitAlter_table_drop_index?t.visitAlter_table_drop_index(this):t.visitChildren(this)}},NW=class extends ga{constructor(t,e){super(t,e)}RENAME(){return this.getToken(tf.RENAME,0)}TO(){return this.getToken(tf.TO,0)}an_id_table(){return this.getRuleContext(0,KX)}get ruleIndex(){return tf.RULE_alter_table_rename_to}accept(t){return t.visitAlter_table_rename_to?t.visitAlter_table_rename_to(this):t.visitChildren(this)}},LW=class extends ga{constructor(t,e){super(t,e)}RENAME(){return this.getToken(tf.RENAME,0)}INDEX(){return this.getToken(tf.INDEX,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}TO(){return this.getToken(tf.TO,0)}get ruleIndex(){return tf.RULE_alter_table_rename_index_to}accept(t){return t.visitAlter_table_rename_index_to?t.visitAlter_table_rename_index_to(this):t.visitChildren(this)}},CW=class extends ga{constructor(t,e){super(t,e)}ADD(){return this.getToken(tf.ADD,0)}changefeed(){return this.getRuleContext(0,HW)}get ruleIndex(){return tf.RULE_alter_table_add_changefeed}accept(t){return t.visitAlter_table_add_changefeed?t.visitAlter_table_add_changefeed(this):t.visitChildren(this)}},_W=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}CHANGEFEED(){return this.getToken(tf.CHANGEFEED,0)}an_id(){return this.getRuleContext(0,YX)}changefeed_alter_settings(){return this.getRuleContext(0,BW)}get ruleIndex(){return tf.RULE_alter_table_alter_changefeed}accept(t){return t.visitAlter_table_alter_changefeed?t.visitAlter_table_alter_changefeed(this):t.visitChildren(this)}},PW=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}CHANGEFEED(){return this.getToken(tf.CHANGEFEED,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_alter_table_drop_changefeed}accept(t){return t.visitAlter_table_drop_changefeed?t.visitAlter_table_drop_changefeed(this):t.visitChildren(this)}},MW=class extends ga{constructor(t,e){super(t,e)}an_id_schema(){return this.getRuleContext(0,bX)}type_name_or_bind(){return this.getRuleContext(0,qY)}opt_column_constraints(){return this.getRuleContext(0,UW)}family_relation(){return this.getRuleContext(0,dW)}get ruleIndex(){return tf.RULE_column_schema}accept(t){return t.visitColumn_schema?t.visitColumn_schema(this):t.visitChildren(this)}},dW=class extends ga{constructor(t,e){super(t,e)}FAMILY(){return this.getToken(tf.FAMILY,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_family_relation}accept(t){return t.visitFamily_relation?t.visitFamily_relation(this):t.visitChildren(this)}},UW=class extends ga{constructor(t,e){super(t,e)}NULL(){return this.getToken(tf.NULL,0)}DEFAULT(){return this.getToken(tf.DEFAULT,0)}expr(){return this.getRuleContext(0,Ef)}NOT(){return this.getToken(tf.NOT,0)}get ruleIndex(){return tf.RULE_opt_column_constraints}accept(t){return t.visitOpt_column_constraints?t.visitOpt_column_constraints(this):t.visitChildren(this)}},mW=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}ASC(){return this.getToken(tf.ASC,0)}DESC(){return this.getToken(tf.DESC,0)}get ruleIndex(){return tf.RULE_column_order_by_specification}accept(t){return t.visitColumn_order_by_specification?t.visitColumn_order_by_specification(this):t.visitChildren(this)}},DW=class extends ga{constructor(t,e){super(t,e)}PRIMARY(){return this.getToken(tf.PRIMARY,0)}KEY(){return this.getToken(tf.KEY,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}PARTITION(){return this.getToken(tf.PARTITION,0)}BY(){return this.getToken(tf.BY,0)}ORDER(){return this.getToken(tf.ORDER,0)}column_order_by_specification(t){return void 0===t?this.getRuleContexts(mW):this.getRuleContext(t,mW)}get ruleIndex(){return tf.RULE_table_constraint}accept(t){return t.visitTable_constraint?t.visitTable_constraint(this):t.visitChildren(this)}},pW=class extends ga{constructor(t,e){super(t,e)}INDEX(){return this.getToken(tf.INDEX,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}table_index_type(){return this.getRuleContext(0,gW)}ON(){return this.getToken(tf.ON,0)}LPAREN(t){return void 0===t?this.getTokens(tf.LPAREN):this.getToken(tf.LPAREN,t)}an_id_schema(t){return void 0===t?this.getRuleContexts(bX):this.getRuleContext(t,bX)}RPAREN(t){return void 0===t?this.getTokens(tf.RPAREN):this.getToken(tf.RPAREN,t)}WITH(){return this.getToken(tf.WITH,0)}EQUALS(t){return void 0===t?this.getTokens(tf.EQUALS):this.getToken(tf.EQUALS,t)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}COVER(){return this.getToken(tf.COVER,0)}get ruleIndex(){return tf.RULE_table_index}accept(t){return t.visitTable_index?t.visitTable_index(this):t.visitChildren(this)}},gW=class extends ga{constructor(t,e){super(t,e)}global_index(){return this.getRuleContext(0,xW)}local_index(){return this.getRuleContext(0,kW)}get ruleIndex(){return tf.RULE_table_index_type}accept(t){return t.visitTable_index_type?t.visitTable_index_type(this):t.visitChildren(this)}},xW=class extends ga{constructor(t,e){super(t,e)}GLOBAL(){return this.getToken(tf.GLOBAL,0)}UNIQUE(){return this.getToken(tf.UNIQUE,0)}SYNC(){return this.getToken(tf.SYNC,0)}ASYNC(){return this.getToken(tf.ASYNC,0)}get ruleIndex(){return tf.RULE_global_index}accept(t){return t.visitGlobal_index?t.visitGlobal_index(this):t.visitChildren(this)}},kW=class extends ga{constructor(t,e){super(t,e)}LOCAL(){return this.getToken(tf.LOCAL,0)}get ruleIndex(){return tf.RULE_local_index}accept(t){return t.visitLocal_index?t.visitLocal_index(this):t.visitChildren(this)}},HW=class extends ga{constructor(t,e){super(t,e)}CHANGEFEED(){return this.getToken(tf.CHANGEFEED,0)}an_id(){return this.getRuleContext(0,YX)}WITH(){return this.getToken(tf.WITH,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}changefeed_settings(){return this.getRuleContext(0,GW)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_changefeed}accept(t){return t.visitChangefeed?t.visitChangefeed(this):t.visitChildren(this)}},GW=class extends ga{constructor(t,e){super(t,e)}changefeed_settings_entry(t){return void 0===t?this.getRuleContexts(FW):this.getRuleContext(t,FW)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_changefeed_settings}accept(t){return t.visitChangefeed_settings?t.visitChangefeed_settings(this):t.visitChildren(this)}},FW=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}changefeed_setting_value(){return this.getRuleContext(0,vW)}get ruleIndex(){return tf.RULE_changefeed_settings_entry}accept(t){return t.visitChangefeed_settings_entry?t.visitChangefeed_settings_entry(this):t.visitChildren(this)}},vW=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_changefeed_setting_value}accept(t){return t.visitChangefeed_setting_value?t.visitChangefeed_setting_value(this):t.visitChildren(this)}},BW=class extends ga{constructor(t,e){super(t,e)}DISABLE(){return this.getToken(tf.DISABLE,0)}SET(){return this.getToken(tf.SET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}changefeed_settings(){return this.getRuleContext(0,GW)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_changefeed_alter_settings}accept(t){return t.visitChangefeed_alter_settings?t.visitChangefeed_alter_settings(this):t.visitChildren(this)}},yW=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}table_setting_value(){return this.getRuleContext(0,fW)}get ruleIndex(){return tf.RULE_alter_table_setting_entry}accept(t){return t.visitAlter_table_setting_entry?t.visitAlter_table_setting_entry(this):t.visitChildren(this)}},fW=class extends ga{constructor(t,e){super(t,e)}id(){return this.getRuleContext(0,xX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}integer(){return this.getRuleContext(0,uK)}split_boundaries(){return this.getRuleContext(0,VW)}expr(){return this.getRuleContext(0,Ef)}ON(){return this.getToken(tf.ON,0)}an_id(){return this.getRuleContext(0,YX)}AS(){return this.getToken(tf.AS,0)}SECONDS(){return this.getToken(tf.SECONDS,0)}MILLISECONDS(){return this.getToken(tf.MILLISECONDS,0)}MICROSECONDS(){return this.getToken(tf.MICROSECONDS,0)}NANOSECONDS(){return this.getToken(tf.NANOSECONDS,0)}bool_value(){return this.getRuleContext(0,OK)}get ruleIndex(){return tf.RULE_table_setting_value}accept(t){return t.visitTable_setting_value?t.visitTable_setting_value(this):t.visitChildren(this)}},YW=class extends ga{constructor(t,e){super(t,e)}FAMILY(){return this.getToken(tf.FAMILY,0)}an_id(){return this.getRuleContext(0,YX)}family_settings(){return this.getRuleContext(0,wW)}get ruleIndex(){return tf.RULE_family_entry}accept(t){return t.visitFamily_entry?t.visitFamily_entry(this):t.visitChildren(this)}},wW=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}family_settings_entry(t){return void 0===t?this.getRuleContexts(bW):this.getRuleContext(t,bW)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_family_settings}accept(t){return t.visitFamily_settings?t.visitFamily_settings(this):t.visitChildren(this)}},bW=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}family_setting_value(){return this.getRuleContext(0,WW)}get ruleIndex(){return tf.RULE_family_settings_entry}accept(t){return t.visitFamily_settings_entry?t.visitFamily_settings_entry(this):t.visitChildren(this)}},WW=class extends ga{constructor(t,e){super(t,e)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_family_setting_value}accept(t){return t.visitFamily_setting_value?t.visitFamily_setting_value(this):t.visitChildren(this)}},VW=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}literal_value_list(t){return void 0===t?this.getRuleContexts(XW):this.getRuleContext(t,XW)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_split_boundaries}accept(t){return t.visitSplit_boundaries?t.visitSplit_boundaries(this):t.visitChildren(this)}},XW=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}literal_value(t){return void 0===t?this.getRuleContexts(NY):this.getRuleContext(t,NY)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_literal_value_list}accept(t){return t.visitLiteral_value_list?t.visitLiteral_value_list(this):t.visitChildren(this)}},KW=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}simple_table_ref(){return this.getRuleContext(0,dV)}TABLE(){return this.getToken(tf.TABLE,0)}TABLESTORE(){return this.getToken(tf.TABLESTORE,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}IF(){return this.getToken(tf.IF,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}get ruleIndex(){return tf.RULE_drop_table_stmt}accept(t){return t.visitDrop_table_stmt?t.visitDrop_table_stmt(this):t.visitChildren(this)}},QW=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}USER(){return this.getToken(tf.USER,0)}role_name(){return this.getRuleContext(0,zW)}create_user_option(){return this.getRuleContext(0,$W)}get ruleIndex(){return tf.RULE_create_user_stmt}accept(t){return t.visitCreate_user_stmt?t.visitCreate_user_stmt(this):t.visitChildren(this)}},JW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}USER(){return this.getToken(tf.USER,0)}role_name(t){return void 0===t?this.getRuleContexts(zW):this.getRuleContext(t,zW)}create_user_option(){return this.getRuleContext(0,$W)}RENAME(){return this.getToken(tf.RENAME,0)}TO(){return this.getToken(tf.TO,0)}WITH(){return this.getToken(tf.WITH,0)}get ruleIndex(){return tf.RULE_alter_user_stmt}accept(t){return t.visitAlter_user_stmt?t.visitAlter_user_stmt(this):t.visitChildren(this)}},ZW=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}GROUP(){return this.getToken(tf.GROUP,0)}role_name(t){return void 0===t?this.getRuleContexts(zW):this.getRuleContext(t,zW)}WITH(){return this.getToken(tf.WITH,0)}USER(){return this.getToken(tf.USER,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_create_group_stmt}accept(t){return t.visitCreate_group_stmt?t.visitCreate_group_stmt(this):t.visitChildren(this)}},qW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}GROUP(){return this.getToken(tf.GROUP,0)}role_name(t){return void 0===t?this.getRuleContexts(zW):this.getRuleContext(t,zW)}USER(){return this.getToken(tf.USER,0)}RENAME(){return this.getToken(tf.RENAME,0)}TO(){return this.getToken(tf.TO,0)}ADD(){return this.getToken(tf.ADD,0)}DROP(){return this.getToken(tf.DROP,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_group_stmt}accept(t){return t.visitAlter_group_stmt?t.visitAlter_group_stmt(this):t.visitChildren(this)}},jW=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}role_name(t){return void 0===t?this.getRuleContexts(zW):this.getRuleContext(t,zW)}USER(){return this.getToken(tf.USER,0)}GROUP(){return this.getToken(tf.GROUP,0)}IF(){return this.getToken(tf.IF,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_drop_role_stmt}accept(t){return t.visitDrop_role_stmt?t.visitDrop_role_stmt(this):t.visitChildren(this)}},zW=class extends ga{constructor(t,e){super(t,e)}an_id_or_type(){return this.getRuleContext(0,wX)}bind_parameter(){return this.getRuleContext(0,LY)}get ruleIndex(){return tf.RULE_role_name}accept(t){return t.visitRole_name?t.visitRole_name(this):t.visitChildren(this)}},$W=class extends ga{constructor(t,e){super(t,e)}PASSWORD(){return this.getToken(tf.PASSWORD,0)}expr(){return this.getRuleContext(0,Ef)}ENCRYPTED(){return this.getToken(tf.ENCRYPTED,0)}get ruleIndex(){return tf.RULE_create_user_option}accept(t){return t.visitCreate_user_option?t.visitCreate_user_option(this):t.visitChildren(this)}},tV=class extends ga{constructor(t,e){super(t,e)}GRANT(t){return void 0===t?this.getTokens(tf.GRANT):this.getToken(tf.GRANT,t)}permission_name_target(){return this.getRuleContext(0,rV)}ON(){return this.getToken(tf.ON,0)}an_id_schema(t){return void 0===t?this.getRuleContexts(bX):this.getRuleContext(t,bX)}TO(){return this.getToken(tf.TO,0)}role_name(t){return void 0===t?this.getRuleContexts(zW):this.getRuleContext(t,zW)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}WITH(){return this.getToken(tf.WITH,0)}OPTION(){return this.getToken(tf.OPTION,0)}get ruleIndex(){return tf.RULE_grant_permissions_stmt}accept(t){return t.visitGrant_permissions_stmt?t.visitGrant_permissions_stmt(this):t.visitChildren(this)}},eV=class extends ga{constructor(t,e){super(t,e)}REVOKE(){return this.getToken(tf.REVOKE,0)}permission_name_target(){return this.getRuleContext(0,rV)}ON(){return this.getToken(tf.ON,0)}an_id_schema(t){return void 0===t?this.getRuleContexts(bX):this.getRuleContext(t,bX)}FROM(){return this.getToken(tf.FROM,0)}role_name(t){return void 0===t?this.getRuleContexts(zW):this.getRuleContext(t,zW)}GRANT(){return this.getToken(tf.GRANT,0)}OPTION(){return this.getToken(tf.OPTION,0)}FOR(){return this.getToken(tf.FOR,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_revoke_permissions_stmt}accept(t){return t.visitRevoke_permissions_stmt?t.visitRevoke_permissions_stmt(this):t.visitChildren(this)}},sV=class extends ga{constructor(t,e){super(t,e)}CONNECT(){return this.getToken(tf.CONNECT,0)}LIST(){return this.getToken(tf.LIST,0)}INSERT(){return this.getToken(tf.INSERT,0)}MANAGE(){return this.getToken(tf.MANAGE,0)}DROP(){return this.getToken(tf.DROP,0)}GRANT(){return this.getToken(tf.GRANT,0)}MODIFY(){return this.getToken(tf.MODIFY,0)}TABLES(){return this.getToken(tf.TABLES,0)}ATTRIBUTES(){return this.getToken(tf.ATTRIBUTES,0)}ROW(){return this.getToken(tf.ROW,0)}UPDATE(){return this.getToken(tf.UPDATE,0)}ERASE(){return this.getToken(tf.ERASE,0)}SCHEMA(){return this.getToken(tf.SCHEMA,0)}REMOVE(){return this.getToken(tf.REMOVE,0)}DESCRIBE(){return this.getToken(tf.DESCRIBE,0)}ALTER(){return this.getToken(tf.ALTER,0)}SELECT(){return this.getToken(tf.SELECT,0)}USE(){return this.getToken(tf.USE,0)}FULL(){return this.getToken(tf.FULL,0)}LEGACY(){return this.getToken(tf.LEGACY,0)}CREATE(){return this.getToken(tf.CREATE,0)}DIRECTORY(){return this.getToken(tf.DIRECTORY,0)}TABLE(){return this.getToken(tf.TABLE,0)}QUEUE(){return this.getToken(tf.QUEUE,0)}get ruleIndex(){return tf.RULE_permission_id}accept(t){return t.visitPermission_id?t.visitPermission_id(this):t.visitChildren(this)}},aV=class extends ga{constructor(t,e){super(t,e)}permission_id(){return this.getRuleContext(0,sV)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_permission_name}accept(t){return t.visitPermission_name?t.visitPermission_name(this):t.visitChildren(this)}},rV=class extends ga{constructor(t,e){super(t,e)}permission_name(t){return void 0===t?this.getRuleContexts(aV):this.getRuleContext(t,aV)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}ALL(){return this.getToken(tf.ALL,0)}PRIVILEGES(){return this.getToken(tf.PRIVILEGES,0)}get ruleIndex(){return tf.RULE_permission_name_target}accept(t){return t.visitPermission_name_target?t.visitPermission_name_target(this):t.visitChildren(this)}},iV=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}ASYNC(){return this.getToken(tf.ASYNC,0)}REPLICATION(){return this.getToken(tf.REPLICATION,0)}object_ref(){return this.getRuleContext(0,PV)}FOR(){return this.getToken(tf.FOR,0)}replication_target(t){return void 0===t?this.getRuleContexts(cV):this.getRuleContext(t,cV)}WITH(){return this.getToken(tf.WITH,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}replication_settings(){return this.getRuleContext(0,nV)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_create_replication_stmt}accept(t){return t.visitCreate_replication_stmt?t.visitCreate_replication_stmt(this):t.visitChildren(this)}},cV=class extends ga{constructor(t,e){super(t,e)}object_ref(){return this.getRuleContext(0,PV)}replication_name(){return this.getRuleContext(0,PK)}get ruleIndex(){return tf.RULE_replication_target}accept(t){return t.visitReplication_target?t.visitReplication_target(this):t.visitChildren(this)}},nV=class extends ga{constructor(t,e){super(t,e)}replication_settings_entry(t){return void 0===t?this.getRuleContexts(hV):this.getRuleContext(t,hV)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_replication_settings}accept(t){return t.visitReplication_settings?t.visitReplication_settings(this):t.visitChildren(this)}},hV=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_replication_settings_entry}accept(t){return t.visitReplication_settings_entry?t.visitReplication_settings_entry(this):t.visitChildren(this)}},EV=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}ASYNC(){return this.getToken(tf.ASYNC,0)}REPLICATION(){return this.getToken(tf.REPLICATION,0)}object_ref(){return this.getRuleContext(0,PV)}alter_replication_action(t){return void 0===t?this.getRuleContexts(TV):this.getRuleContext(t,TV)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_replication_stmt}accept(t){return t.visitAlter_replication_stmt?t.visitAlter_replication_stmt(this):t.visitChildren(this)}},TV=class extends ga{constructor(t,e){super(t,e)}alter_replication_set_setting(){return this.getRuleContext(0,oV)}get ruleIndex(){return tf.RULE_alter_replication_action}accept(t){return t.visitAlter_replication_action?t.visitAlter_replication_action(this):t.visitChildren(this)}},oV=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}replication_settings(){return this.getRuleContext(0,nV)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_alter_replication_set_setting}accept(t){return t.visitAlter_replication_set_setting?t.visitAlter_replication_set_setting(this):t.visitChildren(this)}},RV=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}ASYNC(){return this.getToken(tf.ASYNC,0)}REPLICATION(){return this.getToken(tf.REPLICATION,0)}object_ref(){return this.getRuleContext(0,PV)}CASCADE(){return this.getToken(tf.CASCADE,0)}get ruleIndex(){return tf.RULE_drop_replication_stmt}accept(t){return t.visitDrop_replication_stmt?t.visitDrop_replication_stmt(this):t.visitChildren(this)}},AV=class extends ga{constructor(t,e){super(t,e)}opt_bind_parameter(t){return void 0===t?this.getRuleContexts(CY):this.getRuleContext(t,CY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_action_or_subquery_args}accept(t){return t.visitAction_or_subquery_args?t.visitAction_or_subquery_args(this):t.visitChildren(this)}},SV=class extends ga{constructor(t,e){super(t,e)}DEFINE(t){return void 0===t?this.getTokens(tf.DEFINE):this.getToken(tf.DEFINE,t)}bind_parameter(){return this.getRuleContext(0,LY)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}AS(){return this.getToken(tf.AS,0)}define_action_or_subquery_body(){return this.getRuleContext(0,lV)}END(){return this.getToken(tf.END,0)}ACTION(){return this.getToken(tf.ACTION,0)}SUBQUERY(){return this.getToken(tf.SUBQUERY,0)}action_or_subquery_args(){return this.getRuleContext(0,AV)}get ruleIndex(){return tf.RULE_define_action_or_subquery_stmt}accept(t){return t.visitDefine_action_or_subquery_stmt?t.visitDefine_action_or_subquery_stmt(this):t.visitChildren(this)}},lV=class extends ga{constructor(t,e){super(t,e)}SEMICOLON(t){return void 0===t?this.getTokens(tf.SEMICOLON):this.getToken(tf.SEMICOLON,t)}sql_stmt_core(t){return void 0===t?this.getRuleContexts(hf):this.getRuleContext(t,hf)}get ruleIndex(){return tf.RULE_define_action_or_subquery_body}accept(t){return t.visitDefine_action_or_subquery_body?t.visitDefine_action_or_subquery_body(this):t.visitChildren(this)}},OV=class extends ga{constructor(t,e){super(t,e)}IF(){return this.getToken(tf.IF,0)}expr(){return this.getRuleContext(0,Ef)}do_stmt(t){return void 0===t?this.getRuleContexts(iw):this.getRuleContext(t,iw)}EVALUATE(){return this.getToken(tf.EVALUATE,0)}ELSE(){return this.getToken(tf.ELSE,0)}get ruleIndex(){return tf.RULE_if_stmt}accept(t){return t.visitIf_stmt?t.visitIf_stmt(this):t.visitChildren(this)}},IV=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(tf.FOR,0)}bind_parameter(){return this.getRuleContext(0,LY)}IN(){return this.getToken(tf.IN,0)}expr(){return this.getRuleContext(0,Ef)}do_stmt(t){return void 0===t?this.getRuleContexts(iw):this.getRuleContext(t,iw)}EVALUATE(){return this.getToken(tf.EVALUATE,0)}PARALLEL(){return this.getToken(tf.PARALLEL,0)}ELSE(){return this.getToken(tf.ELSE,0)}get ruleIndex(){return tf.RULE_for_stmt}accept(t){return t.visitFor_stmt?t.visitFor_stmt(this):t.visitChildren(this)}},uV=class extends ga{constructor(t,e){super(t,e)}table_key(){return this.getRuleContext(0,NV)}an_id_expr(){return this.getRuleContext(0,WX)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}bind_parameter(){return this.getRuleContext(0,LY)}cluster_expr(){return this.getRuleContext(0,$X)}DOT(){return this.getToken(tf.DOT,0)}AT(){return this.getToken(tf.AT,0)}table_hints(){return this.getRuleContext(0,CV)}table_arg(t){return void 0===t?this.getRuleContexts(LV):this.getRuleContext(t,LV)}VIEW(){return this.getToken(tf.VIEW,0)}view_name(){return this.getRuleContext(0,jX)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}expr_list(){return this.getRuleContext(0,rY)}get ruleIndex(){return tf.RULE_table_ref}accept(t){return t.visitTable_ref?t.visitTable_ref(this):t.visitChildren(this)}},NV=class extends ga{constructor(t,e){super(t,e)}id_table_or_type(){return this.getRuleContext(0,aK)}VIEW(){return this.getToken(tf.VIEW,0)}view_name(){return this.getRuleContext(0,jX)}get ruleIndex(){return tf.RULE_table_key}accept(t){return t.visitTable_key?t.visitTable_key(this):t.visitChildren(this)}},LV=class extends ga{constructor(t,e){super(t,e)}named_expr(){return this.getRuleContext(0,RY)}AT(){return this.getToken(tf.AT,0)}VIEW(){return this.getToken(tf.VIEW,0)}view_name(){return this.getRuleContext(0,jX)}get ruleIndex(){return tf.RULE_table_arg}accept(t){return t.visitTable_arg?t.visitTable_arg(this):t.visitChildren(this)}},CV=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(tf.WITH,0)}table_hint(t){return void 0===t?this.getRuleContexts(_V):this.getRuleContext(t,_V)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_table_hints}accept(t){return t.visitTable_hints?t.visitTable_hints(this):t.visitChildren(this)}},_V=class extends ga{constructor(t,e){super(t,e)}an_id_hint(){return this.getRuleContext(0,JX)}EQUALS(){return this.getToken(tf.EQUALS,0)}type_name_tag(t){return void 0===t?this.getRuleContexts(DY):this.getRuleContext(t,DY)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}type_name_or_bind(){return this.getRuleContext(0,qY)}SCHEMA(){return this.getToken(tf.SCHEMA,0)}COLUMNS(){return this.getToken(tf.COLUMNS,0)}struct_arg_positional(t){return void 0===t?this.getRuleContexts(gY):this.getRuleContext(t,gY)}get ruleIndex(){return tf.RULE_table_hint}accept(t){return t.visitTable_hint?t.visitTable_hint(this):t.visitChildren(this)}},PV=class extends ga{constructor(t,e){super(t,e)}id_or_at(){return this.getRuleContext(0,sK)}cluster_expr(){return this.getRuleContext(0,$X)}DOT(){return this.getToken(tf.DOT,0)}get ruleIndex(){return tf.RULE_object_ref}accept(t){return t.visitObject_ref?t.visitObject_ref(this):t.visitChildren(this)}},MV=class extends ga{constructor(t,e){super(t,e)}object_ref(){return this.getRuleContext(0,PV)}bind_parameter(){return this.getRuleContext(0,LY)}AT(){return this.getToken(tf.AT,0)}get ruleIndex(){return tf.RULE_simple_table_ref_core}accept(t){return t.visitSimple_table_ref_core?t.visitSimple_table_ref_core(this):t.visitChildren(this)}},dV=class extends ga{constructor(t,e){super(t,e)}simple_table_ref_core(){return this.getRuleContext(0,MV)}table_hints(){return this.getRuleContext(0,CV)}get ruleIndex(){return tf.RULE_simple_table_ref}accept(t){return t.visitSimple_table_ref?t.visitSimple_table_ref(this):t.visitChildren(this)}},UV=class extends ga{constructor(t,e){super(t,e)}simple_table_ref(){return this.getRuleContext(0,dV)}ERASE(){return this.getToken(tf.ERASE,0)}BY(){return this.getToken(tf.BY,0)}pure_column_list(){return this.getRuleContext(0,iY)}get ruleIndex(){return tf.RULE_into_simple_table_ref}accept(t){return t.visitInto_simple_table_ref?t.visitInto_simple_table_ref(this):t.visitChildren(this)}},mV=class extends ga{constructor(t,e){super(t,e)}DELETE(){return this.getToken(tf.DELETE,0)}FROM(){return this.getToken(tf.FROM,0)}simple_table_ref(){return this.getRuleContext(0,dV)}where_expr(){return this.getRuleContext(0,MK)}ON(){return this.getToken(tf.ON,0)}into_values_source(){return this.getRuleContext(0,Mb)}returning_columns_list(){return this.getRuleContext(0,Cb)}get ruleIndex(){return tf.RULE_delete_stmt}accept(t){return t.visitDelete_stmt?t.visitDelete_stmt(this):t.visitChildren(this)}},DV=class extends ga{constructor(t,e){super(t,e)}UPDATE(){return this.getToken(tf.UPDATE,0)}simple_table_ref(){return this.getRuleContext(0,dV)}SET(){return this.getToken(tf.SET,0)}set_clause_choice(){return this.getRuleContext(0,pV)}ON(){return this.getToken(tf.ON,0)}into_values_source(){return this.getRuleContext(0,Mb)}returning_columns_list(){return this.getRuleContext(0,Cb)}where_expr(){return this.getRuleContext(0,MK)}get ruleIndex(){return tf.RULE_update_stmt}accept(t){return t.visitUpdate_stmt?t.visitUpdate_stmt(this):t.visitChildren(this)}},pV=class extends ga{constructor(t,e){super(t,e)}set_clause_list(){return this.getRuleContext(0,gV)}multiple_column_assignment(){return this.getRuleContext(0,HV)}get ruleIndex(){return tf.RULE_set_clause_choice}accept(t){return t.visitSet_clause_choice?t.visitSet_clause_choice(this):t.visitChildren(this)}},gV=class extends ga{constructor(t,e){super(t,e)}set_clause(t){return void 0===t?this.getRuleContexts(xV):this.getRuleContext(t,xV)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_set_clause_list}accept(t){return t.visitSet_clause_list?t.visitSet_clause_list(this):t.visitChildren(this)}},xV=class extends ga{constructor(t,e){super(t,e)}set_target(){return this.getRuleContext(0,kV)}EQUALS(){return this.getToken(tf.EQUALS,0)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_set_clause}accept(t){return t.visitSet_clause?t.visitSet_clause(this):t.visitChildren(this)}},kV=class extends ga{constructor(t,e){super(t,e)}column_name(){return this.getRuleContext(0,hY)}get ruleIndex(){return tf.RULE_set_target}accept(t){return t.visitSet_target?t.visitSet_target(this):t.visitChildren(this)}},HV=class extends ga{constructor(t,e){super(t,e)}set_target_list(){return this.getRuleContext(0,GV)}EQUALS(){return this.getToken(tf.EQUALS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}simple_values_source(){return this.getRuleContext(0,pb)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_multiple_column_assignment}accept(t){return t.visitMultiple_column_assignment?t.visitMultiple_column_assignment(this):t.visitChildren(this)}},GV=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}set_target(t){return void 0===t?this.getRuleContexts(kV):this.getRuleContext(t,kV)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_set_target_list}accept(t){return t.visitSet_target_list?t.visitSet_target_list(this):t.visitChildren(this)}},FV=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}TOPIC(){return this.getToken(tf.TOPIC,0)}topic_ref(){return this.getRuleContext(0,rX)}create_topic_entries(){return this.getRuleContext(0,vV)}with_topic_settings(){return this.getRuleContext(0,yV)}get ruleIndex(){return tf.RULE_create_topic_stmt}accept(t){return t.visitCreate_topic_stmt?t.visitCreate_topic_stmt(this):t.visitChildren(this)}},vV=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}create_topic_entry(t){return void 0===t?this.getRuleContexts(BV):this.getRuleContext(t,BV)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_create_topic_entries}accept(t){return t.visitCreate_topic_entries?t.visitCreate_topic_entries(this):t.visitChildren(this)}},BV=class extends ga{constructor(t,e){super(t,e)}topic_create_consumer_entry(){return this.getRuleContext(0,bV)}get ruleIndex(){return tf.RULE_create_topic_entry}accept(t){return t.visitCreate_topic_entry?t.visitCreate_topic_entry(this):t.visitChildren(this)}},yV=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(tf.WITH,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}topic_settings(){return this.getRuleContext(0,jV)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_with_topic_settings}accept(t){return t.visitWith_topic_settings?t.visitWith_topic_settings(this):t.visitChildren(this)}},fV=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}TOPIC(){return this.getToken(tf.TOPIC,0)}topic_ref(){return this.getRuleContext(0,rX)}alter_topic_action(t){return void 0===t?this.getRuleContexts(YV):this.getRuleContext(t,YV)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_topic_stmt}accept(t){return t.visitAlter_topic_stmt?t.visitAlter_topic_stmt(this):t.visitChildren(this)}},YV=class extends ga{constructor(t,e){super(t,e)}alter_topic_add_consumer(){return this.getRuleContext(0,wV)}alter_topic_alter_consumer(){return this.getRuleContext(0,WV)}alter_topic_drop_consumer(){return this.getRuleContext(0,XV)}alter_topic_set_settings(){return this.getRuleContext(0,JV)}alter_topic_reset_settings(){return this.getRuleContext(0,ZV)}get ruleIndex(){return tf.RULE_alter_topic_action}accept(t){return t.visitAlter_topic_action?t.visitAlter_topic_action(this):t.visitChildren(this)}},wV=class extends ga{constructor(t,e){super(t,e)}ADD(){return this.getToken(tf.ADD,0)}topic_create_consumer_entry(){return this.getRuleContext(0,bV)}get ruleIndex(){return tf.RULE_alter_topic_add_consumer}accept(t){return t.visitAlter_topic_add_consumer?t.visitAlter_topic_add_consumer(this):t.visitChildren(this)}},bV=class extends ga{constructor(t,e){super(t,e)}CONSUMER(){return this.getToken(tf.CONSUMER,0)}an_id(){return this.getRuleContext(0,YX)}topic_consumer_with_settings(){return this.getRuleContext(0,tX)}get ruleIndex(){return tf.RULE_topic_create_consumer_entry}accept(t){return t.visitTopic_create_consumer_entry?t.visitTopic_create_consumer_entry(this):t.visitChildren(this)}},WV=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}CONSUMER(){return this.getToken(tf.CONSUMER,0)}topic_consumer_ref(){return this.getRuleContext(0,iX)}alter_topic_alter_consumer_entry(){return this.getRuleContext(0,VV)}get ruleIndex(){return tf.RULE_alter_topic_alter_consumer}accept(t){return t.visitAlter_topic_alter_consumer?t.visitAlter_topic_alter_consumer(this):t.visitChildren(this)}},VV=class extends ga{constructor(t,e){super(t,e)}topic_alter_consumer_set(){return this.getRuleContext(0,KV)}topic_alter_consumer_reset(){return this.getRuleContext(0,QV)}get ruleIndex(){return tf.RULE_alter_topic_alter_consumer_entry}accept(t){return t.visitAlter_topic_alter_consumer_entry?t.visitAlter_topic_alter_consumer_entry(this):t.visitChildren(this)}},XV=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}CONSUMER(){return this.getToken(tf.CONSUMER,0)}topic_consumer_ref(){return this.getRuleContext(0,iX)}get ruleIndex(){return tf.RULE_alter_topic_drop_consumer}accept(t){return t.visitAlter_topic_drop_consumer?t.visitAlter_topic_drop_consumer(this):t.visitChildren(this)}},KV=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}topic_consumer_settings(){return this.getRuleContext(0,eX)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_topic_alter_consumer_set}accept(t){return t.visitTopic_alter_consumer_set?t.visitTopic_alter_consumer_set(this):t.visitChildren(this)}},QV=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(tf.RESET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_topic_alter_consumer_reset}accept(t){return t.visitTopic_alter_consumer_reset?t.visitTopic_alter_consumer_reset(this):t.visitChildren(this)}},JV=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}topic_settings(){return this.getRuleContext(0,jV)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_alter_topic_set_settings}accept(t){return t.visitAlter_topic_set_settings?t.visitAlter_topic_set_settings(this):t.visitChildren(this)}},ZV=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(tf.RESET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}an_id(){return this.getRuleContext(0,YX)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}an_id_pure(t){return void 0===t?this.getRuleContexts(ZX):this.getRuleContext(t,ZX)}get ruleIndex(){return tf.RULE_alter_topic_reset_settings}accept(t){return t.visitAlter_topic_reset_settings?t.visitAlter_topic_reset_settings(this):t.visitChildren(this)}},qV=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}TOPIC(){return this.getToken(tf.TOPIC,0)}topic_ref(){return this.getRuleContext(0,rX)}get ruleIndex(){return tf.RULE_drop_topic_stmt}accept(t){return t.visitDrop_topic_stmt?t.visitDrop_topic_stmt(this):t.visitChildren(this)}},jV=class extends ga{constructor(t,e){super(t,e)}topic_settings_entry(t){return void 0===t?this.getRuleContexts(zV):this.getRuleContext(t,zV)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_topic_settings}accept(t){return t.visitTopic_settings?t.visitTopic_settings(this):t.visitChildren(this)}},zV=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}topic_setting_value(){return this.getRuleContext(0,$V)}get ruleIndex(){return tf.RULE_topic_settings_entry}accept(t){return t.visitTopic_settings_entry?t.visitTopic_settings_entry(this):t.visitChildren(this)}},$V=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_topic_setting_value}accept(t){return t.visitTopic_setting_value?t.visitTopic_setting_value(this):t.visitChildren(this)}},tX=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(tf.WITH,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}topic_consumer_settings(){return this.getRuleContext(0,eX)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_topic_consumer_with_settings}accept(t){return t.visitTopic_consumer_with_settings?t.visitTopic_consumer_with_settings(this):t.visitChildren(this)}},eX=class extends ga{constructor(t,e){super(t,e)}topic_consumer_settings_entry(t){return void 0===t?this.getRuleContexts(sX):this.getRuleContext(t,sX)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_topic_consumer_settings}accept(t){return t.visitTopic_consumer_settings?t.visitTopic_consumer_settings(this):t.visitChildren(this)}},sX=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}topic_consumer_setting_value(){return this.getRuleContext(0,aX)}get ruleIndex(){return tf.RULE_topic_consumer_settings_entry}accept(t){return t.visitTopic_consumer_settings_entry?t.visitTopic_consumer_settings_entry(this):t.visitChildren(this)}},aX=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_topic_consumer_setting_value}accept(t){return t.visitTopic_consumer_setting_value?t.visitTopic_consumer_setting_value(this):t.visitChildren(this)}},rX=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}cluster_expr(){return this.getRuleContext(0,$X)}DOT(){return this.getToken(tf.DOT,0)}get ruleIndex(){return tf.RULE_topic_ref}accept(t){return t.visitTopic_ref?t.visitTopic_ref(this):t.visitChildren(this)}},iX=class extends ga{constructor(t,e){super(t,e)}an_id_pure(){return this.getRuleContext(0,ZX)}get ruleIndex(){return tf.RULE_topic_consumer_ref}accept(t){return t.visitTopic_consumer_ref?t.visitTopic_consumer_ref(this):t.visitChildren(this)}},cX=class extends ga{constructor(t,e){super(t,e)}RESPECT(){return this.getToken(tf.RESPECT,0)}NULLS(){return this.getToken(tf.NULLS,0)}IGNORE(){return this.getToken(tf.IGNORE,0)}get ruleIndex(){return tf.RULE_null_treatment}accept(t){return t.visitNull_treatment?t.visitNull_treatment(this):t.visitChildren(this)}},nX=class extends ga{constructor(t,e){super(t,e)}FILTER(){return this.getToken(tf.FILTER,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}where_expr(){return this.getRuleContext(0,MK)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_filter_clause}accept(t){return t.visitFilter_clause?t.visitFilter_clause(this):t.visitChildren(this)}},hX=class extends ga{constructor(t,e){super(t,e)}window_name(){return this.getRuleContext(0,EX)}window_specification(){return this.getRuleContext(0,SX)}get ruleIndex(){return tf.RULE_window_name_or_specification}accept(t){return t.visitWindow_name_or_specification?t.visitWindow_name_or_specification(this):t.visitChildren(this)}},EX=class extends ga{constructor(t,e){super(t,e)}an_id_window(){return this.getRuleContext(0,XX)}get ruleIndex(){return tf.RULE_window_name}accept(t){return t.visitWindow_name?t.visitWindow_name(this):t.visitChildren(this)}},TX=class extends ga{constructor(t,e){super(t,e)}WINDOW(){return this.getToken(tf.WINDOW,0)}window_definition_list(){return this.getRuleContext(0,oX)}get ruleIndex(){return tf.RULE_window_clause}accept(t){return t.visitWindow_clause?t.visitWindow_clause(this):t.visitChildren(this)}},oX=class extends ga{constructor(t,e){super(t,e)}window_definition(t){return void 0===t?this.getRuleContexts(RX):this.getRuleContext(t,RX)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_window_definition_list}accept(t){return t.visitWindow_definition_list?t.visitWindow_definition_list(this):t.visitChildren(this)}},RX=class extends ga{constructor(t,e){super(t,e)}new_window_name(){return this.getRuleContext(0,AX)}AS(){return this.getToken(tf.AS,0)}window_specification(){return this.getRuleContext(0,SX)}get ruleIndex(){return tf.RULE_window_definition}accept(t){return t.visitWindow_definition?t.visitWindow_definition(this):t.visitChildren(this)}},AX=class extends ga{constructor(t,e){super(t,e)}window_name(){return this.getRuleContext(0,EX)}get ruleIndex(){return tf.RULE_new_window_name}accept(t){return t.visitNew_window_name?t.visitNew_window_name(this):t.visitChildren(this)}},SX=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}window_specification_details(){return this.getRuleContext(0,lX)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_window_specification}accept(t){return t.visitWindow_specification?t.visitWindow_specification(this):t.visitChildren(this)}},lX=class extends ga{constructor(t,e){super(t,e)}existing_window_name(){return this.getRuleContext(0,OX)}window_partition_clause(){return this.getRuleContext(0,IX)}window_order_clause(){return this.getRuleContext(0,uX)}window_frame_clause(){return this.getRuleContext(0,NX)}get ruleIndex(){return tf.RULE_window_specification_details}accept(t){return t.visitWindow_specification_details?t.visitWindow_specification_details(this):t.visitChildren(this)}},OX=class extends ga{constructor(t,e){super(t,e)}window_name(){return this.getRuleContext(0,EX)}get ruleIndex(){return tf.RULE_existing_window_name}accept(t){return t.visitExisting_window_name?t.visitExisting_window_name(this):t.visitChildren(this)}},IX=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(tf.PARTITION,0)}BY(){return this.getToken(tf.BY,0)}named_expr_list(){return this.getRuleContext(0,AY)}COMPACT(){return this.getToken(tf.COMPACT,0)}get ruleIndex(){return tf.RULE_window_partition_clause}accept(t){return t.visitWindow_partition_clause?t.visitWindow_partition_clause(this):t.visitChildren(this)}},uX=class extends ga{constructor(t,e){super(t,e)}order_by_clause(){return this.getRuleContext(0,jw)}get ruleIndex(){return tf.RULE_window_order_clause}accept(t){return t.visitWindow_order_clause?t.visitWindow_order_clause(this):t.visitChildren(this)}},NX=class extends ga{constructor(t,e){super(t,e)}window_frame_units(){return this.getRuleContext(0,LX)}window_frame_extent(){return this.getRuleContext(0,CX)}window_frame_exclusion(){return this.getRuleContext(0,MX)}get ruleIndex(){return tf.RULE_window_frame_clause}accept(t){return t.visitWindow_frame_clause?t.visitWindow_frame_clause(this):t.visitChildren(this)}},LX=class extends ga{constructor(t,e){super(t,e)}ROWS(){return this.getToken(tf.ROWS,0)}RANGE(){return this.getToken(tf.RANGE,0)}GROUPS(){return this.getToken(tf.GROUPS,0)}get ruleIndex(){return tf.RULE_window_frame_units}accept(t){return t.visitWindow_frame_units?t.visitWindow_frame_units(this):t.visitChildren(this)}},CX=class extends ga{constructor(t,e){super(t,e)}window_frame_bound(){return this.getRuleContext(0,PX)}window_frame_between(){return this.getRuleContext(0,_X)}get ruleIndex(){return tf.RULE_window_frame_extent}accept(t){return t.visitWindow_frame_extent?t.visitWindow_frame_extent(this):t.visitChildren(this)}},_X=class extends ga{constructor(t,e){super(t,e)}BETWEEN(){return this.getToken(tf.BETWEEN,0)}window_frame_bound(t){return void 0===t?this.getRuleContexts(PX):this.getRuleContext(t,PX)}AND(){return this.getToken(tf.AND,0)}get ruleIndex(){return tf.RULE_window_frame_between}accept(t){return t.visitWindow_frame_between?t.visitWindow_frame_between(this):t.visitChildren(this)}},PX=class extends ga{constructor(t,e){super(t,e)}CURRENT(){return this.getToken(tf.CURRENT,0)}ROW(){return this.getToken(tf.ROW,0)}PRECEDING(){return this.getToken(tf.PRECEDING,0)}FOLLOWING(){return this.getToken(tf.FOLLOWING,0)}expr(){return this.getRuleContext(0,Ef)}UNBOUNDED(){return this.getToken(tf.UNBOUNDED,0)}get ruleIndex(){return tf.RULE_window_frame_bound}accept(t){return t.visitWindow_frame_bound?t.visitWindow_frame_bound(this):t.visitChildren(this)}},MX=class extends ga{constructor(t,e){super(t,e)}EXCLUDE(){return this.getToken(tf.EXCLUDE,0)}CURRENT(){return this.getToken(tf.CURRENT,0)}ROW(){return this.getToken(tf.ROW,0)}GROUP(){return this.getToken(tf.GROUP,0)}TIES(){return this.getToken(tf.TIES,0)}NO(){return this.getToken(tf.NO,0)}OTHERS(){return this.getToken(tf.OTHERS,0)}get ruleIndex(){return tf.RULE_window_frame_exclusion}accept(t){return t.visitWindow_frame_exclusion?t.visitWindow_frame_exclusion(this):t.visitChildren(this)}},dX=class extends ga{constructor(t,e){super(t,e)}USE(){return this.getToken(tf.USE,0)}cluster_expr(){return this.getRuleContext(0,$X)}get ruleIndex(){return tf.RULE_use_stmt}accept(t){return t.visitUse_stmt?t.visitUse_stmt(this):t.visitChildren(this)}},UX=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}select_stmt(){return this.getRuleContext(0,Tw)}RPAREN(){return this.getToken(tf.RPAREN,0)}select_unparenthesized_stmt(){return this.getRuleContext(0,ow)}get ruleIndex(){return tf.RULE_subselect_stmt}accept(t){return t.visitSubselect_stmt?t.visitSubselect_stmt(this):t.visitChildren(this)}},mX=class extends ga{constructor(t,e){super(t,e)}bind_parameter_list(){return this.getRuleContext(0,_Y)}EQUALS(){return this.getToken(tf.EQUALS,0)}expr(){return this.getRuleContext(0,Ef)}subselect_stmt(){return this.getRuleContext(0,UX)}get ruleIndex(){return tf.RULE_named_nodes_stmt}accept(t){return t.visitNamed_nodes_stmt?t.visitNamed_nodes_stmt(this):t.visitChildren(this)}},DX=class extends ga{constructor(t,e){super(t,e)}COMMIT(){return this.getToken(tf.COMMIT,0)}get ruleIndex(){return tf.RULE_commit_stmt}accept(t){return t.visitCommit_stmt?t.visitCommit_stmt(this):t.visitChildren(this)}},pX=class extends ga{constructor(t,e){super(t,e)}ROLLBACK(){return this.getToken(tf.ROLLBACK,0)}get ruleIndex(){return tf.RULE_rollback_stmt}accept(t){return t.visitRollback_stmt?t.visitRollback_stmt(this):t.visitChildren(this)}},gX=class extends ga{constructor(t,e){super(t,e)}ID_PLAIN(){return this.getToken(tf.ID_PLAIN,0)}ID_QUOTED(){return this.getToken(tf.ID_QUOTED,0)}get ruleIndex(){return tf.RULE_identifier}accept(t){return t.visitIdentifier?t.visitIdentifier(this):t.visitChildren(this)}},xX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword(){return this.getRuleContext(0,iK)}get ruleIndex(){return tf.RULE_id}accept(t){return t.visitId?t.visitId(this):t.visitChildren(this)}},kX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_expr_uncompat(){return this.getRuleContext(0,cK)}keyword_select_uncompat(){return this.getRuleContext(0,hK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_id_schema}accept(t){return t.visitId_schema?t.visitId_schema(this):t.visitChildren(this)}},HX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_alter_uncompat(){return this.getRuleContext(0,EK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_id_expr}accept(t){return t.visitId_expr?t.visitId_expr(this):t.visitChildren(this)}},GX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_alter_uncompat(){return this.getRuleContext(0,EK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_id_expr_in}accept(t){return t.visitId_expr_in?t.visitId_expr_in(this):t.visitChildren(this)}},FX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_expr_uncompat(){return this.getRuleContext(0,cK)}keyword_table_uncompat(){return this.getRuleContext(0,nK)}keyword_select_uncompat(){return this.getRuleContext(0,hK)}keyword_alter_uncompat(){return this.getRuleContext(0,EK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_id_window}accept(t){return t.visitId_window?t.visitId_window(this):t.visitChildren(this)}},vX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_expr_uncompat(){return this.getRuleContext(0,cK)}keyword_select_uncompat(){return this.getRuleContext(0,hK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_id_table}accept(t){return t.visitId_table?t.visitId_table(this):t.visitChildren(this)}},BX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_table_uncompat(){return this.getRuleContext(0,nK)}keyword_alter_uncompat(){return this.getRuleContext(0,EK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_id_without}accept(t){return t.visitId_without?t.visitId_without(this):t.visitChildren(this)}},yX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_expr_uncompat(){return this.getRuleContext(0,cK)}keyword_table_uncompat(){return this.getRuleContext(0,nK)}keyword_select_uncompat(){return this.getRuleContext(0,hK)}keyword_alter_uncompat(){return this.getRuleContext(0,EK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}get ruleIndex(){return tf.RULE_id_hint}accept(t){return t.visitId_hint?t.visitId_hint(this):t.visitChildren(this)}},fX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_as_compat(){return this.getRuleContext(0,AK)}get ruleIndex(){return tf.RULE_id_as_compat}accept(t){return t.visitId_as_compat?t.visitId_as_compat(this):t.visitChildren(this)}},YX=class extends ga{constructor(t,e){super(t,e)}id(){return this.getRuleContext(0,xX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id}accept(t){return t.visitAn_id?t.visitAn_id(this):t.visitChildren(this)}},wX=class extends ga{constructor(t,e){super(t,e)}id_or_type(){return this.getRuleContext(0,tK)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_or_type}accept(t){return t.visitAn_id_or_type?t.visitAn_id_or_type(this):t.visitChildren(this)}},bX=class extends ga{constructor(t,e){super(t,e)}id_schema(){return this.getRuleContext(0,kX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_schema}accept(t){return t.visitAn_id_schema?t.visitAn_id_schema(this):t.visitChildren(this)}},WX=class extends ga{constructor(t,e){super(t,e)}id_expr(){return this.getRuleContext(0,HX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_expr}accept(t){return t.visitAn_id_expr?t.visitAn_id_expr(this):t.visitChildren(this)}},VX=class extends ga{constructor(t,e){super(t,e)}id_expr_in(){return this.getRuleContext(0,GX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_expr_in}accept(t){return t.visitAn_id_expr_in?t.visitAn_id_expr_in(this):t.visitChildren(this)}},XX=class extends ga{constructor(t,e){super(t,e)}id_window(){return this.getRuleContext(0,FX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_window}accept(t){return t.visitAn_id_window?t.visitAn_id_window(this):t.visitChildren(this)}},KX=class extends ga{constructor(t,e){super(t,e)}id_table(){return this.getRuleContext(0,vX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_table}accept(t){return t.visitAn_id_table?t.visitAn_id_table(this):t.visitChildren(this)}},QX=class extends ga{constructor(t,e){super(t,e)}id_without(){return this.getRuleContext(0,BX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_without}accept(t){return t.visitAn_id_without?t.visitAn_id_without(this):t.visitChildren(this)}},JX=class extends ga{constructor(t,e){super(t,e)}id_hint(){return this.getRuleContext(0,yX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_hint}accept(t){return t.visitAn_id_hint?t.visitAn_id_hint(this):t.visitChildren(this)}},ZX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_pure}accept(t){return t.visitAn_id_pure?t.visitAn_id_pure(this):t.visitChildren(this)}},qX=class extends ga{constructor(t,e){super(t,e)}id_as_compat(){return this.getRuleContext(0,fX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_as_compat}accept(t){return t.visitAn_id_as_compat?t.visitAn_id_as_compat(this):t.visitChildren(this)}},jX=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}PRIMARY(){return this.getToken(tf.PRIMARY,0)}KEY(){return this.getToken(tf.KEY,0)}get ruleIndex(){return tf.RULE_view_name}accept(t){return t.visitView_name?t.visitView_name(this):t.visitChildren(this)}},zX=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}DOT(){return this.getToken(tf.DOT,0)}get ruleIndex(){return tf.RULE_opt_id_prefix}accept(t){return t.visitOpt_id_prefix?t.visitOpt_id_prefix(this):t.visitChildren(this)}},$X=class extends ga{constructor(t,e){super(t,e)}pure_column_or_named(){return this.getRuleContext(0,cY)}ASTERISK(){return this.getToken(tf.ASTERISK,0)}an_id(){return this.getRuleContext(0,YX)}COLON(){return this.getToken(tf.COLON,0)}get ruleIndex(){return tf.RULE_cluster_expr}accept(t){return t.visitCluster_expr?t.visitCluster_expr(this):t.visitChildren(this)}},tK=class extends ga{constructor(t,e){super(t,e)}id(){return this.getRuleContext(0,xX)}type_id(){return this.getRuleContext(0,lK)}get ruleIndex(){return tf.RULE_id_or_type}accept(t){return t.visitId_or_type?t.visitId_or_type(this):t.visitChildren(this)}},eK=class extends ga{constructor(t,e){super(t,e)}an_id_or_type(){return this.getRuleContext(0,wX)}DOT(){return this.getToken(tf.DOT,0)}get ruleIndex(){return tf.RULE_opt_id_prefix_or_type}accept(t){return t.visitOpt_id_prefix_or_type?t.visitOpt_id_prefix_or_type(this):t.visitChildren(this)}},sK=class extends ga{constructor(t,e){super(t,e)}an_id_or_type(){return this.getRuleContext(0,wX)}AT(){return this.getToken(tf.AT,0)}get ruleIndex(){return tf.RULE_id_or_at}accept(t){return t.visitId_or_at?t.visitId_or_at(this):t.visitChildren(this)}},aK=class extends ga{constructor(t,e){super(t,e)}an_id_table(){return this.getRuleContext(0,KX)}type_id(){return this.getRuleContext(0,lK)}get ruleIndex(){return tf.RULE_id_table_or_type}accept(t){return t.visitId_table_or_type?t.visitId_table_or_type(this):t.visitChildren(this)}},rK=class extends ga{constructor(t,e){super(t,e)}id_table_or_type(){return this.getRuleContext(0,aK)}AT(){return this.getToken(tf.AT,0)}get ruleIndex(){return tf.RULE_id_table_or_at}accept(t){return t.visitId_table_or_at?t.visitId_table_or_at(this):t.visitChildren(this)}},iK=class extends ga{constructor(t,e){super(t,e)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_expr_uncompat(){return this.getRuleContext(0,cK)}keyword_table_uncompat(){return this.getRuleContext(0,nK)}keyword_select_uncompat(){return this.getRuleContext(0,hK)}keyword_alter_uncompat(){return this.getRuleContext(0,EK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_keyword}accept(t){return t.visitKeyword?t.visitKeyword(this):t.visitChildren(this)}},cK=class extends ga{constructor(t,e){super(t,e)}ASYMMETRIC(){return this.getToken(tf.ASYMMETRIC,0)}BETWEEN(){return this.getToken(tf.BETWEEN,0)}BITCAST(){return this.getToken(tf.BITCAST,0)}CASE(){return this.getToken(tf.CASE,0)}CAST(){return this.getToken(tf.CAST,0)}CUBE(){return this.getToken(tf.CUBE,0)}CURRENT_DATE(){return this.getToken(tf.CURRENT_DATE,0)}CURRENT_TIME(){return this.getToken(tf.CURRENT_TIME,0)}CURRENT_TIMESTAMP(){return this.getToken(tf.CURRENT_TIMESTAMP,0)}EMPTY_ACTION(){return this.getToken(tf.EMPTY_ACTION,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}FROM(){return this.getToken(tf.FROM,0)}FULL(){return this.getToken(tf.FULL,0)}HOP(){return this.getToken(tf.HOP,0)}JSON_EXISTS(){return this.getToken(tf.JSON_EXISTS,0)}JSON_VALUE(){return this.getToken(tf.JSON_VALUE,0)}JSON_QUERY(){return this.getToken(tf.JSON_QUERY,0)}LOCAL(){return this.getToken(tf.LOCAL,0)}NOT(){return this.getToken(tf.NOT,0)}NULL(){return this.getToken(tf.NULL,0)}PROCESS(){return this.getToken(tf.PROCESS,0)}REDUCE(){return this.getToken(tf.REDUCE,0)}RETURN(){return this.getToken(tf.RETURN,0)}RETURNING(){return this.getToken(tf.RETURNING,0)}ROLLUP(){return this.getToken(tf.ROLLUP,0)}SELECT(){return this.getToken(tf.SELECT,0)}SYMMETRIC(){return this.getToken(tf.SYMMETRIC,0)}UNBOUNDED(){return this.getToken(tf.UNBOUNDED,0)}WHEN(){return this.getToken(tf.WHEN,0)}WHERE(){return this.getToken(tf.WHERE,0)}get ruleIndex(){return tf.RULE_keyword_expr_uncompat}accept(t){return t.visitKeyword_expr_uncompat?t.visitKeyword_expr_uncompat(this):t.visitChildren(this)}},nK=class extends ga{constructor(t,e){super(t,e)}ANY(){return this.getToken(tf.ANY,0)}ERASE(){return this.getToken(tf.ERASE,0)}STREAM(){return this.getToken(tf.STREAM,0)}get ruleIndex(){return tf.RULE_keyword_table_uncompat}accept(t){return t.visitKeyword_table_uncompat?t.visitKeyword_table_uncompat(this):t.visitChildren(this)}},hK=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(tf.ALL,0)}AS(){return this.getToken(tf.AS,0)}ASSUME(){return this.getToken(tf.ASSUME,0)}DISTINCT(){return this.getToken(tf.DISTINCT,0)}EXCEPT(){return this.getToken(tf.EXCEPT,0)}HAVING(){return this.getToken(tf.HAVING,0)}INTERSECT(){return this.getToken(tf.INTERSECT,0)}LIMIT(){return this.getToken(tf.LIMIT,0)}UNION(){return this.getToken(tf.UNION,0)}WINDOW(){return this.getToken(tf.WINDOW,0)}WITHOUT(){return this.getToken(tf.WITHOUT,0)}get ruleIndex(){return tf.RULE_keyword_select_uncompat}accept(t){return t.visitKeyword_select_uncompat?t.visitKeyword_select_uncompat(this):t.visitChildren(this)}},EK=class extends ga{constructor(t,e){super(t,e)}COLUMN(){return this.getToken(tf.COLUMN,0)}get ruleIndex(){return tf.RULE_keyword_alter_uncompat}accept(t){return t.visitKeyword_alter_uncompat?t.visitKeyword_alter_uncompat(this):t.visitChildren(this)}},TK=class extends ga{constructor(t,e){super(t,e)}COMPACT(){return this.getToken(tf.COMPACT,0)}get ruleIndex(){return tf.RULE_keyword_in_uncompat}accept(t){return t.visitKeyword_in_uncompat?t.visitKeyword_in_uncompat(this):t.visitChildren(this)}},oK=class extends ga{constructor(t,e){super(t,e)}GROUPS(){return this.getToken(tf.GROUPS,0)}RANGE(){return this.getToken(tf.RANGE,0)}ROWS(){return this.getToken(tf.ROWS,0)}get ruleIndex(){return tf.RULE_keyword_window_uncompat}accept(t){return t.visitKeyword_window_uncompat?t.visitKeyword_window_uncompat(this):t.visitChildren(this)}},RK=class extends ga{constructor(t,e){super(t,e)}SCHEMA(){return this.getToken(tf.SCHEMA,0)}COLUMNS(){return this.getToken(tf.COLUMNS,0)}get ruleIndex(){return tf.RULE_keyword_hint_uncompat}accept(t){return t.visitKeyword_hint_uncompat?t.visitKeyword_hint_uncompat(this):t.visitChildren(this)}},AK=class extends ga{constructor(t,e){super(t,e)}ATTRIBUTES(){return this.getToken(tf.ATTRIBUTES,0)}CONNECT(){return this.getToken(tf.CONNECT,0)}CONSUMER(){return this.getToken(tf.CONSUMER,0)}DATA(){return this.getToken(tf.DATA,0)}DESCRIBE(){return this.getToken(tf.DESCRIBE,0)}DIRECTORY(){return this.getToken(tf.DIRECTORY,0)}FIRST(){return this.getToken(tf.FIRST,0)}GRANT(){return this.getToken(tf.GRANT,0)}INITIAL(){return this.getToken(tf.INITIAL,0)}LAST(){return this.getToken(tf.LAST,0)}LEGACY(){return this.getToken(tf.LEGACY,0)}MANAGE(){return this.getToken(tf.MANAGE,0)}MATCHES(){return this.getToken(tf.MATCHES,0)}MATCH_RECOGNIZE(){return this.getToken(tf.MATCH_RECOGNIZE,0)}MEASURES(){return this.getToken(tf.MEASURES,0)}MICROSECONDS(){return this.getToken(tf.MICROSECONDS,0)}MILLISECONDS(){return this.getToken(tf.MILLISECONDS,0)}MODIFY(){return this.getToken(tf.MODIFY,0)}NANOSECONDS(){return this.getToken(tf.NANOSECONDS,0)}NEXT(){return this.getToken(tf.NEXT,0)}OMIT(){return this.getToken(tf.OMIT,0)}ONE(){return this.getToken(tf.ONE,0)}OPTION(){return this.getToken(tf.OPTION,0)}PARALLEL(){return this.getToken(tf.PARALLEL,0)}PAST(){return this.getToken(tf.PAST,0)}PATTERN(){return this.getToken(tf.PATTERN,0)}PER(){return this.getToken(tf.PER,0)}PERMUTE(){return this.getToken(tf.PERMUTE,0)}PRIVILEGES(){return this.getToken(tf.PRIVILEGES,0)}QUEUE(){return this.getToken(tf.QUEUE,0)}REMOVE(){return this.getToken(tf.REMOVE,0)}REPLICATION(){return this.getToken(tf.REPLICATION,0)}REVOKE(){return this.getToken(tf.REVOKE,0)}SECONDS(){return this.getToken(tf.SECONDS,0)}SEEK(){return this.getToken(tf.SEEK,0)}SHOW(){return this.getToken(tf.SHOW,0)}SKIP_RULE(){return this.getToken(tf.SKIP_RULE,0)}SOURCE(){return this.getToken(tf.SOURCE,0)}SUBSET(){return this.getToken(tf.SUBSET,0)}TABLES(){return this.getToken(tf.TABLES,0)}TOPIC(){return this.getToken(tf.TOPIC,0)}TYPE(){return this.getToken(tf.TYPE,0)}UNMATCHED(){return this.getToken(tf.UNMATCHED,0)}get ruleIndex(){return tf.RULE_keyword_as_compat}accept(t){return t.visitKeyword_as_compat?t.visitKeyword_as_compat(this):t.visitChildren(this)}},SK=class extends ga{constructor(t,e){super(t,e)}ABORT(){return this.getToken(tf.ABORT,0)}ACTION(){return this.getToken(tf.ACTION,0)}ADD(){return this.getToken(tf.ADD,0)}AFTER(){return this.getToken(tf.AFTER,0)}ALTER(){return this.getToken(tf.ALTER,0)}ANALYZE(){return this.getToken(tf.ANALYZE,0)}AND(){return this.getToken(tf.AND,0)}ANSI(){return this.getToken(tf.ANSI,0)}ARRAY(){return this.getToken(tf.ARRAY,0)}ASC(){return this.getToken(tf.ASC,0)}ASYNC(){return this.getToken(tf.ASYNC,0)}ATTACH(){return this.getToken(tf.ATTACH,0)}ATTRIBUTES(){return this.getToken(tf.ATTRIBUTES,0)}AUTOINCREMENT(){return this.getToken(tf.AUTOINCREMENT,0)}BEFORE(){return this.getToken(tf.BEFORE,0)}BEGIN(){return this.getToken(tf.BEGIN,0)}BERNOULLI(){return this.getToken(tf.BERNOULLI,0)}BY(){return this.getToken(tf.BY,0)}CASCADE(){return this.getToken(tf.CASCADE,0)}CHANGEFEED(){return this.getToken(tf.CHANGEFEED,0)}CHECK(){return this.getToken(tf.CHECK,0)}COLLATE(){return this.getToken(tf.COLLATE,0)}COMMIT(){return this.getToken(tf.COMMIT,0)}CONDITIONAL(){return this.getToken(tf.CONDITIONAL,0)}CONFLICT(){return this.getToken(tf.CONFLICT,0)}CONNECT(){return this.getToken(tf.CONNECT,0)}CONSTRAINT(){return this.getToken(tf.CONSTRAINT,0)}CONSUMER(){return this.getToken(tf.CONSUMER,0)}COVER(){return this.getToken(tf.COVER,0)}CREATE(){return this.getToken(tf.CREATE,0)}CROSS(){return this.getToken(tf.CROSS,0)}CURRENT(){return this.getToken(tf.CURRENT,0)}DATA(){return this.getToken(tf.DATA,0)}DATABASE(){return this.getToken(tf.DATABASE,0)}DECIMAL(){return this.getToken(tf.DECIMAL,0)}DECLARE(){return this.getToken(tf.DECLARE,0)}DEFAULT(){return this.getToken(tf.DEFAULT,0)}DEFERRABLE(){return this.getToken(tf.DEFERRABLE,0)}DEFERRED(){return this.getToken(tf.DEFERRED,0)}DEFINE(){return this.getToken(tf.DEFINE,0)}DELETE(){return this.getToken(tf.DELETE,0)}DESC(){return this.getToken(tf.DESC,0)}DESCRIBE(){return this.getToken(tf.DESCRIBE,0)}DETACH(){return this.getToken(tf.DETACH,0)}DIRECTORY(){return this.getToken(tf.DIRECTORY,0)}DISABLE(){return this.getToken(tf.DISABLE,0)}DISCARD(){return this.getToken(tf.DISCARD,0)}DO(){return this.getToken(tf.DO,0)}DROP(){return this.getToken(tf.DROP,0)}EACH(){return this.getToken(tf.EACH,0)}ELSE(){return this.getToken(tf.ELSE,0)}EMPTY(){return this.getToken(tf.EMPTY,0)}ENCRYPTED(){return this.getToken(tf.ENCRYPTED,0)}END(){return this.getToken(tf.END,0)}ERROR(){return this.getToken(tf.ERROR,0)}ESCAPE(){return this.getToken(tf.ESCAPE,0)}EVALUATE(){return this.getToken(tf.EVALUATE,0)}EXCLUDE(){return this.getToken(tf.EXCLUDE,0)}EXCLUSION(){return this.getToken(tf.EXCLUSION,0)}EXCLUSIVE(){return this.getToken(tf.EXCLUSIVE,0)}EXPLAIN(){return this.getToken(tf.EXPLAIN,0)}EXPORT(){return this.getToken(tf.EXPORT,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}FAIL(){return this.getToken(tf.FAIL,0)}FAMILY(){return this.getToken(tf.FAMILY,0)}FILTER(){return this.getToken(tf.FILTER,0)}FIRST(){return this.getToken(tf.FIRST,0)}FLATTEN(){return this.getToken(tf.FLATTEN,0)}FOLLOWING(){return this.getToken(tf.FOLLOWING,0)}FOR(){return this.getToken(tf.FOR,0)}FOREIGN(){return this.getToken(tf.FOREIGN,0)}FUNCTION(){return this.getToken(tf.FUNCTION,0)}GLOB(){return this.getToken(tf.GLOB,0)}GRANT(){return this.getToken(tf.GRANT,0)}GROUP(){return this.getToken(tf.GROUP,0)}GROUPING(){return this.getToken(tf.GROUPING,0)}HASH(){return this.getToken(tf.HASH,0)}IF(){return this.getToken(tf.IF,0)}IGNORE(){return this.getToken(tf.IGNORE,0)}ILIKE(){return this.getToken(tf.ILIKE,0)}IMMEDIATE(){return this.getToken(tf.IMMEDIATE,0)}IMPORT(){return this.getToken(tf.IMPORT,0)}IN(){return this.getToken(tf.IN,0)}INDEX(){return this.getToken(tf.INDEX,0)}INDEXED(){return this.getToken(tf.INDEXED,0)}INHERITS(){return this.getToken(tf.INHERITS,0)}INITIAL(){return this.getToken(tf.INITIAL,0)}INITIALLY(){return this.getToken(tf.INITIALLY,0)}INNER(){return this.getToken(tf.INNER,0)}INSERT(){return this.getToken(tf.INSERT,0)}INSTEAD(){return this.getToken(tf.INSTEAD,0)}INTO(){return this.getToken(tf.INTO,0)}IS(){return this.getToken(tf.IS,0)}ISNULL(){return this.getToken(tf.ISNULL,0)}JOIN(){return this.getToken(tf.JOIN,0)}KEY(){return this.getToken(tf.KEY,0)}LAST(){return this.getToken(tf.LAST,0)}LEFT(){return this.getToken(tf.LEFT,0)}LEGACY(){return this.getToken(tf.LEGACY,0)}LIKE(){return this.getToken(tf.LIKE,0)}MANAGE(){return this.getToken(tf.MANAGE,0)}MATCH(){return this.getToken(tf.MATCH,0)}MATCHES(){return this.getToken(tf.MATCHES,0)}MATCH_RECOGNIZE(){return this.getToken(tf.MATCH_RECOGNIZE,0)}MEASURES(){return this.getToken(tf.MEASURES,0)}MICROSECONDS(){return this.getToken(tf.MICROSECONDS,0)}MILLISECONDS(){return this.getToken(tf.MILLISECONDS,0)}MODIFY(){return this.getToken(tf.MODIFY,0)}NANOSECONDS(){return this.getToken(tf.NANOSECONDS,0)}NATURAL(){return this.getToken(tf.NATURAL,0)}NEXT(){return this.getToken(tf.NEXT,0)}NO(){return this.getToken(tf.NO,0)}NOTNULL(){return this.getToken(tf.NOTNULL,0)}NULLS(){return this.getToken(tf.NULLS,0)}OBJECT(){return this.getToken(tf.OBJECT,0)}OF(){return this.getToken(tf.OF,0)}OFFSET(){return this.getToken(tf.OFFSET,0)}OMIT(){return this.getToken(tf.OMIT,0)}ON(){return this.getToken(tf.ON,0)}ONE(){return this.getToken(tf.ONE,0)}ONLY(){return this.getToken(tf.ONLY,0)}OPTION(){return this.getToken(tf.OPTION,0)}OR(){return this.getToken(tf.OR,0)}ORDER(){return this.getToken(tf.ORDER,0)}OTHERS(){return this.getToken(tf.OTHERS,0)}OUTER(){return this.getToken(tf.OUTER,0)}OVER(){return this.getToken(tf.OVER,0)}PARALLEL(){return this.getToken(tf.PARALLEL,0)}PARTITION(){return this.getToken(tf.PARTITION,0)}PASSING(){return this.getToken(tf.PASSING,0)}PASSWORD(){return this.getToken(tf.PASSWORD,0)}PAST(){return this.getToken(tf.PAST,0)}PATTERN(){return this.getToken(tf.PATTERN,0)}PER(){return this.getToken(tf.PER,0)}PERMUTE(){return this.getToken(tf.PERMUTE,0)}PLAN(){return this.getToken(tf.PLAN,0)}PRAGMA(){return this.getToken(tf.PRAGMA,0)}PRECEDING(){return this.getToken(tf.PRECEDING,0)}PRESORT(){return this.getToken(tf.PRESORT,0)}PRIMARY(){return this.getToken(tf.PRIMARY,0)}PRIVILEGES(){return this.getToken(tf.PRIVILEGES,0)}QUEUE(){return this.getToken(tf.QUEUE,0)}RAISE(){return this.getToken(tf.RAISE,0)}REFERENCES(){return this.getToken(tf.REFERENCES,0)}REGEXP(){return this.getToken(tf.REGEXP,0)}REINDEX(){return this.getToken(tf.REINDEX,0)}RELEASE(){return this.getToken(tf.RELEASE,0)}REMOVE(){return this.getToken(tf.REMOVE,0)}RENAME(){return this.getToken(tf.RENAME,0)}REPLACE(){return this.getToken(tf.REPLACE,0)}REPLICATION(){return this.getToken(tf.REPLICATION,0)}RESET(){return this.getToken(tf.RESET,0)}RESPECT(){return this.getToken(tf.RESPECT,0)}RESTRICT(){return this.getToken(tf.RESTRICT,0)}RESULT(){return this.getToken(tf.RESULT,0)}REVERT(){return this.getToken(tf.REVERT,0)}REVOKE(){return this.getToken(tf.REVOKE,0)}RIGHT(){return this.getToken(tf.RIGHT,0)}RLIKE(){return this.getToken(tf.RLIKE,0)}ROLLBACK(){return this.getToken(tf.ROLLBACK,0)}ROW(){return this.getToken(tf.ROW,0)}SAMPLE(){return this.getToken(tf.SAMPLE,0)}SAVEPOINT(){return this.getToken(tf.SAVEPOINT,0)}SECONDS(){return this.getToken(tf.SECONDS,0)}SEEK(){return this.getToken(tf.SEEK,0)}SEMI(){return this.getToken(tf.SEMI,0)}SETS(){return this.getToken(tf.SETS,0)}SHOW(){return this.getToken(tf.SHOW,0)}SKIP_RULE(){return this.getToken(tf.SKIP_RULE,0)}SOURCE(){return this.getToken(tf.SOURCE,0)}SUBQUERY(){return this.getToken(tf.SUBQUERY,0)}SUBSET(){return this.getToken(tf.SUBSET,0)}SYMBOLS(){return this.getToken(tf.SYMBOLS,0)}SYNC(){return this.getToken(tf.SYNC,0)}SYSTEM(){return this.getToken(tf.SYSTEM,0)}TABLE(){return this.getToken(tf.TABLE,0)}TABLES(){return this.getToken(tf.TABLES,0)}TABLESAMPLE(){return this.getToken(tf.TABLESAMPLE,0)}TABLESTORE(){return this.getToken(tf.TABLESTORE,0)}TEMP(){return this.getToken(tf.TEMP,0)}TEMPORARY(){return this.getToken(tf.TEMPORARY,0)}THEN(){return this.getToken(tf.THEN,0)}TIES(){return this.getToken(tf.TIES,0)}TO(){return this.getToken(tf.TO,0)}TOPIC(){return this.getToken(tf.TOPIC,0)}TRANSACTION(){return this.getToken(tf.TRANSACTION,0)}TRIGGER(){return this.getToken(tf.TRIGGER,0)}TYPE(){return this.getToken(tf.TYPE,0)}UNCONDITIONAL(){return this.getToken(tf.UNCONDITIONAL,0)}UNIQUE(){return this.getToken(tf.UNIQUE,0)}UNKNOWN(){return this.getToken(tf.UNKNOWN,0)}UNMATCHED(){return this.getToken(tf.UNMATCHED,0)}UPDATE(){return this.getToken(tf.UPDATE,0)}UPSERT(){return this.getToken(tf.UPSERT,0)}USE(){return this.getToken(tf.USE,0)}USER(){return this.getToken(tf.USER,0)}USING(){return this.getToken(tf.USING,0)}VACUUM(){return this.getToken(tf.VACUUM,0)}VALUES(){return this.getToken(tf.VALUES,0)}VIEW(){return this.getToken(tf.VIEW,0)}VIRTUAL(){return this.getToken(tf.VIRTUAL,0)}WITH(){return this.getToken(tf.WITH,0)}WRAPPER(){return this.getToken(tf.WRAPPER,0)}XOR(){return this.getToken(tf.XOR,0)}get ruleIndex(){return tf.RULE_keyword_compat}accept(t){return t.visitKeyword_compat?t.visitKeyword_compat(this):t.visitChildren(this)}},lK=class extends ga{constructor(t,e){super(t,e)}OPTIONAL(){return this.getToken(tf.OPTIONAL,0)}TUPLE(){return this.getToken(tf.TUPLE,0)}STRUCT(){return this.getToken(tf.STRUCT,0)}VARIANT(){return this.getToken(tf.VARIANT,0)}LIST(){return this.getToken(tf.LIST,0)}FLOW(){return this.getToken(tf.FLOW,0)}DICT(){return this.getToken(tf.DICT,0)}SET(){return this.getToken(tf.SET,0)}ENUM(){return this.getToken(tf.ENUM,0)}RESOURCE(){return this.getToken(tf.RESOURCE,0)}TAGGED(){return this.getToken(tf.TAGGED,0)}CALLABLE(){return this.getToken(tf.CALLABLE,0)}get ruleIndex(){return tf.RULE_type_id}accept(t){return t.visitType_id?t.visitType_id(this):t.visitChildren(this)}},OK=class extends ga{constructor(t,e){super(t,e)}TRUE(){return this.getToken(tf.TRUE,0)}FALSE(){return this.getToken(tf.FALSE,0)}get ruleIndex(){return tf.RULE_bool_value}accept(t){return t.visitBool_value?t.visitBool_value(this):t.visitChildren(this)}},IK=class extends ga{constructor(t,e){super(t,e)}REAL(){return this.getToken(tf.REAL,0)}get ruleIndex(){return tf.RULE_real}accept(t){return t.visitReal?t.visitReal(this):t.visitChildren(this)}},uK=class extends ga{constructor(t,e){super(t,e)}DIGITS(){return this.getToken(tf.DIGITS,0)}INTEGER_VALUE(){return this.getToken(tf.INTEGER_VALUE,0)}get ruleIndex(){return tf.RULE_integer}accept(t){return t.visitInteger?t.visitInteger(this):t.visitChildren(this)}},NK=class extends ga{constructor(t,e){super(t,e)}sql_stmt_list_yq(){return this.getRuleContext(0,LK)}PRAGMA(){return this.getToken(tf.PRAGMA,0)}ANSI(){return this.getToken(tf.ANSI,0)}DIGITS(){return this.getToken(tf.DIGITS,0)}ansi_sql_stmt_list(){return this.getRuleContext(0,af)}get ruleIndex(){return tf.RULE_sql_query_yq}accept(t){return t.visitSql_query_yq?t.visitSql_query_yq(this):t.visitChildren(this)}},LK=class extends ga{constructor(t,e){super(t,e)}sql_stmt_yq(t){return void 0===t?this.getRuleContexts(CK):this.getRuleContext(t,CK)}EOF(){return this.getToken(tf.EOF,0)}SEMICOLON(t){return void 0===t?this.getTokens(tf.SEMICOLON):this.getToken(tf.SEMICOLON,t)}get ruleIndex(){return tf.RULE_sql_stmt_list_yq}accept(t){return t.visitSql_stmt_list_yq?t.visitSql_stmt_list_yq(this):t.visitChildren(this)}},CK=class extends ga{constructor(t,e){super(t,e)}sql_stmt_core_yq(){return this.getRuleContext(0,_K)}EXPLAIN(){return this.getToken(tf.EXPLAIN,0)}QUERY(){return this.getToken(tf.QUERY,0)}PLAN(){return this.getToken(tf.PLAN,0)}get ruleIndex(){return tf.RULE_sql_stmt_yq}accept(t){return t.visitSql_stmt_yq?t.visitSql_stmt_yq(this):t.visitChildren(this)}},_K=class extends ga{constructor(t,e){super(t,e)}pragma_stmt(){return this.getRuleContext(0,cw)}select_stmt(){return this.getRuleContext(0,Tw)}named_nodes_stmt(){return this.getRuleContext(0,mX)}use_stmt(){return this.getRuleContext(0,dX)}into_table_stmt_yq(){return this.getRuleContext(0,Pb)}declare_stmt(){return this.getRuleContext(0,$Y)}import_stmt(){return this.getRuleContext(0,ew)}export_stmt(){return this.getRuleContext(0,sw)}do_stmt(){return this.getRuleContext(0,iw)}define_action_or_subquery_stmt(){return this.getRuleContext(0,SV)}if_stmt(){return this.getRuleContext(0,OV)}for_stmt(){return this.getRuleContext(0,IV)}values_stmt(){return this.getRuleContext(0,db)}get ruleIndex(){return tf.RULE_sql_stmt_core_yq}accept(t){return t.visitSql_stmt_core_yq?t.visitSql_stmt_core_yq(this):t.visitChildren(this)}},PK=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(tf.AS,0)}object_ref(){return this.getRuleContext(0,PV)}get ruleIndex(){return tf.RULE_replication_name}accept(t){return t.visitReplication_name?t.visitReplication_name(this):t.visitChildren(this)}},MK=class extends ga{constructor(t,e){super(t,e)}WHERE(){return this.getToken(tf.WHERE,0)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_where_expr}accept(t){return t.visitWhere_expr?t.visitWhere_expr(this):t.visitChildren(this)}},dK=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(tf.FROM,0)}join_source(){return this.getRuleContext(0,Eb)}get ruleIndex(){return tf.RULE_from_stmt}accept(t){return t.visitFrom_stmt?t.visitFrom_stmt(this):t.visitChildren(this)}},UK=class extends ga{constructor(t,e){super(t,e)}alter_table_stmt(){return this.getRuleContext(0,aW)}alter_table_store_stmt(){return this.getRuleContext(0,nW)}get ruleIndex(){return tf.RULE_alter_table_for_autocomplete}accept(t){return t.visitAlter_table_for_autocomplete?t.visitAlter_table_for_autocomplete(this):t.visitChildren(this)}},mK=class extends Ii{},DK={SPACE:tf.WS,FROM:tf.FROM,OPENING_BRACKET:tf.LPAREN,CLOSING_BRACKET:tf.RPAREN,ALTER:tf.ALTER,INSERT:tf.INSERT,UPDATE:tf.UPDATE,JOIN:tf.JOIN,SEMICOLON:tf.SEMICOLON,SELECT:tf.SELECT};function pK(t){let e=new Map(t.map((t=>[t,!0])));return{anyRuleInList:t=>(Array.isArray(t)?t:[t]).some((t=>e.has(t))),allRulesInList:t=>!t.some((t=>!e.has(t)))}}var gK=tf.ruleNames;function xK(t){let e=t.findIndex((t=>t===tf.RULE_sql_stmt_core||t===tf.RULE_sql_stmt_core_yq));if(-1===e)return;let s=t[e+1];return s?gK[s]:void 0}var kK={suggestObject:"object",suggestTableStore:"tableStore",suggestTable:"table",suggestExternalTable:"externalTable",suggestExternalDatasource:"externalDataSource",suggestTopic:"topic",suggestView:"view",suggestReplication:"replication",suggestGroup:"group",suggestUser:"user"};function HK(t,e,s){let a={...pK(t),cursorTokenIndex:e,tokenStream:s},r=function(t){let{anyRuleInList:e,allRulesInList:s}=t;if(s([tf.RULE_select_stmt,tf.RULE_id_expr]))return!e([tf.RULE_window_specification_details,tf.RULE_group_by_clause,tf.RULE_table_ref,tf.RULE_where_expr])||void 0}(a),i=function(t){let{anyRuleInList:e}=t;return e([tf.RULE_alter_object_stmt,tf.RULE_drop_object_stmt])&&e(tf.RULE_id_or_at)}(a),c=function(t){let{anyRuleInList:e,tokenStream:s,cursorTokenIndex:a}=t;if(!e(tf.RULE_id_or_at))return;let r=e(tf.RULE_drop_table_stmt)&&!!UC(s,DK,a,tf.TABLESTORE);return e(tf.RULE_alter_table_store_stmt)||r}(a),n=function(t){let{anyRuleInList:e,allRulesInList:s,tokenStream:a,cursorTokenIndex:r}=t;if(!e([tf.RULE_id_or_at,tf.RULE_id_table_or_type]))return;let i=e(tf.RULE_replication_target)&&!e(tf.RULE_replication_name),c=s([tf.RULE_simple_table_ref])&&!UC(a,DK,r,tf.CREATE)&&!UC(a,DK,r,tf.EXTERNAL);return e([tf.RULE_table_ref,tf.RULE_table_inherits])||c||i}(a),h=function(t){let{anyRuleInList:e,tokenStream:s,cursorTokenIndex:a}=t;if(!e(tf.RULE_role_name))return;let r=!!UC(s,DK,a,tf.USER),i=!!UC(s,DK,a,tf.RENAME),c=e(tf.RULE_revoke_permissions_stmt),n=e(tf.RULE_alter_group_stmt)&&!i&&r,h=e(tf.RULE_create_group_stmt)&&r,E=e(tf.RULE_alter_user_stmt)&&!i;return e(tf.RULE_drop_role_stmt)&&r||E||h||n||c}(a),E=function(t){let{anyRuleInList:e,tokenStream:s,cursorTokenIndex:a}=t;if(!e(tf.RULE_role_name))return;let r=!!UC(s,DK,a,tf.GROUP),i=!!UC(s,DK,a,tf.USER),c=!!UC(s,DK,a,tf.RENAME),n=e(tf.RULE_drop_role_stmt)&&r,h=e(tf.RULE_alter_group_stmt)&&!c&&!i;return e(tf.RULE_revoke_permissions_stmt)||h||n}(a),T=function(t){let{anyRuleInList:e}=t;if(e([tf.RULE_an_id,tf.RULE_topic_ref]))return e([tf.RULE_drop_topic_stmt,tf.RULE_alter_topic_stmt])}(a),o=function(t){let{allRulesInList:e}=t;return e([tf.RULE_drop_view_stmt,tf.RULE_id_or_at])||e([tf.RULE_table_ref,tf.RULE_id_table_or_type])}(a),R=function(t){let{anyRuleInList:e}=t;if(e(tf.RULE_id_or_at))return e([tf.RULE_alter_replication_stmt,tf.RULE_drop_replication_stmt])}(a),A=function(t){let{allRulesInList:e,tokenStream:s,cursorTokenIndex:a}=t,r=!!UC(s,DK,a,tf.EXTERNAL);return e([tf.RULE_id_or_at,tf.RULE_drop_table_stmt])&&r||e([tf.RULE_table_ref,tf.RULE_id_table_or_type])}(a),S=function(t){let{anyRuleInList:e}=t;if(e(tf.RULE_id_or_at))return e([tf.RULE_drop_external_data_source_stmt,tf.RULE_alter_external_data_source_stmt])}(a),l=function(t){let{anyRuleInList:e}=t;if(e(tf.RULE_an_id))return e([tf.RULE_alter_table_drop_index,tf.RULE_alter_table_rename_index_to])}(a),O=function(t){let{anyRuleInList:e,tokenStream:s,cursorTokenIndex:a}=t;if(!e([tf.RULE_an_id,tf.RULE_id_expr])||e([tf.RULE_table_ref,tf.RULE_values_stmt,tf.RULE_alter_table_add_column,tf.RULE_lambda_stmt]))return;let r=e(tf.RULE_select_kind)&&!UC(s,DK,a,tf.LIMIT),i=e(tf.RULE_alter_table_alter_column)&&!UC(s,DK,a,tf.FAMILY);return e([tf.RULE_pure_column_list,tf.RULE_pure_column_or_named,tf.RULE_column_name,tf.RULE_without_column_name,tf.RULE_alter_table_drop_column,tf.RULE_delete_stmt])||i||r}(a),I=function(t){let{anyRuleInList:e}=t;return e(tf.RULE_type_name_simple)}(a),u=function(t){let{allRulesInList:e}=t;return e([tf.RULE_an_id,tf.RULE_pragma_stmt])}(a),N=function(t){let{anyRuleInList:e}=t;if(e([tf.RULE_atom_expr,tf.RULE_in_atom_expr])&&!e(tf.RULE_table_ref))return e(tf.RULE_select_stmt)}(a),L=function(t){let{allRulesInList:e}=t;return e([tf.RULE_id_expr,tf.RULE_table_ref])}(a),C=function(t){let{anyRuleInList:e}=t;if(e(tf.RULE_id_expr)&&!e(tf.RULE_table_ref))return e(tf.RULE_select_stmt)}(a),_=function(t){let{anyRuleInList:e,allRulesInList:s}=t;if(s([tf.RULE_select_stmt,tf.RULE_id_expr]))return!e([tf.RULE_group_by_clause,tf.RULE_table_ref,tf.RULE_where_expr])||void 0}(a),P=function(t){let{allRulesInList:e}=t;return e([tf.RULE_an_id_hint,tf.RULE_table_hint])}(a),M=function(t){let{allRulesInList:e,anyRuleInList:s}=t;if(!s([tf.RULE_table_setting_value,tf.RULE_topic_setting_value,tf.RULE_topic_consumer_setting_value])){if(e([tf.RULE_with_table_settings,tf.RULE_an_id]))return s(tf.RULE_create_external_data_source_stmt)?"externalDataSource":s(tf.RULE_create_view_stmt)?"view":s(tf.RULE_create_table_stmt)?"table":void 0;if(e([tf.RULE_with_topic_settings,tf.RULE_an_id]))return"topic";if(e([tf.RULE_topic_consumer_with_settings,tf.RULE_an_id]))return"topicConsumer";if(e([tf.RULE_replication_settings,tf.RULE_an_id]))return"replication"}}(a);return{suggestWindowFunctions:r,shouldSuggestTableIndexes:l,shouldSuggestColumns:O,shouldSuggestColumnAliases:O,suggestSimpleTypes:I,suggestPragmas:u,suggestUdfs:N,suggestTableFunctions:L,suggestFunctions:C,suggestAggregateFunctions:_,suggestTableHints:P?xK(t):void 0,suggestEntitySettings:M,suggestObject:i,suggestTableStore:c,suggestTable:n,suggestUser:h,suggestGroup:E,suggestTopic:T,suggestView:o,suggestReplication:R,suggestExternalTable:A,suggestExternalDatasource:S}}var GK=new Set(function(){let t=[],e=tf.EQUALS,s=tf.LBRACE_SQUARE;for(let a=e;a<=s;a++)a!==tf.ASTERISK&&t.push(a);return t.push(tf.STREAM),t.push(tf.STRING_VALUE),t.push(tf.REAL),t.push(tf.EOF),t.push(tf.DIGITS),t.push(tf.BLOB),t.push(tf.CURRENT_TIME),t.push(tf.CURRENT_DATE),t.push(tf.CURRENT_TIMESTAMP),t}()),FK=new Set([tf.RULE_id_or_type,tf.RULE_cluster_expr,tf.RULE_identifier,tf.RULE_id,tf.RULE_integer,tf.RULE_type_id,tf.RULE_keyword,tf.RULE_keyword_compat,tf.RULE_keyword_expr_uncompat,tf.RULE_keyword_table_uncompat,tf.RULE_keyword_select_uncompat,tf.RULE_keyword_alter_uncompat,tf.RULE_keyword_in_uncompat,tf.RULE_keyword_window_uncompat,tf.RULE_keyword_hint_uncompat,tf.RULE_id_schema,tf.RULE_id_expr_in,tf.RULE_id_window,tf.RULE_id_table,tf.RULE_id_without,tf.RULE_id_hint,tf.RULE_id_as_compat]),vK=class extends mK{constructor(){super(),this.visitSimple_table_ref_core=t=>{try{var e,s,a;let r=null===(e=t.object_ref())||void 0===e||null===(s=e.id_or_at())||void 0===s||null===(a=s.an_id_or_type())||void 0===a?void 0:a.getText();r&&this.symbolTable.addNewSymbolOfType(qc,this.scope,r)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitAlter_table_store_stmt=t=>{try{var e,s;this.symbolTable.addNewSymbolOfType(qc,this.scope,null===(e=t.object_ref())||void 0===e||null===(s=e.id_or_at())||void 0===s?void 0:s.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitNamed_single_source=t=>{try{var e,s,a,r,i;this.symbolTable.addNewSymbolOfType(qc,this.scope,null!==(e=null===(s=t.single_source().table_ref())||void 0===s?void 0:s.getText())&&void 0!==e?e:"",null!==(a=null===(r=t.an_id())||void 0===r?void 0:r.getText())&&void 0!==a?a:null===(i=t.an_id_as_compat())||void 0===i?void 0:i.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitNamed_column=t=>{try{var e;let s=null===(e=t.an_id())||void 0===e?void 0:e.getText();s&&this.symbolTable.addNewSymbolOfType(zc,this.scope,s)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitNamed_expr=t=>{try{var e;let s=null===(e=t.an_id_or_type())||void 0===e?void 0:e.getText();s&&this.symbolTable.addNewSymbolOfType(zc,this.scope,s)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitResult_column=t=>{try{var e,s,a;let r=null!==(e=null===(s=t.an_id_or_type())||void 0===s?void 0:s.getText())&&void 0!==e?e:null===(a=t.an_id_as_compat())||void 0===a?void 0:a.getText();r&&this.symbolTable.addNewSymbolOfType(zc,this.scope,r)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.symbolTable=new Zc("",{allowDuplicateSymbols:!0}),this.scope=this.symbolTable.addNewSymbolOfType(Bc,void 0)}};function BK(t,e){return e?fK(t,e):t.sql_query()}function yK(t,e){return e?fK(t,e):t.sql_query_yq()}function fK(t,e){switch(e){case"from":return t.from_stmt();case"alter":return t.alter_table_for_autocomplete();case"insert":return t.into_table_stmt();case"update":return t.update_stmt();case"select":return t.select_core()}}function YK(t){return(e,s,a,r,i,c)=>{let{shouldSuggestColumns:n,shouldSuggestColumnAliases:h,shouldSuggestTableIndexes:E,...T}=function(t,e,s){let a={};for(let[O,I]of t){if(!uC(e,I))break;switch(O){case tf.RULE_id_table:case tf.RULE_id_hint:case tf.RULE_identifier:case tf.RULE_id_or_type:case tf.RULE_id:{let t=HK(I.ruleList,e,s),r=Object.fromEntries(Object.entries(t).filter((t=>{let[e,s]=t;return s})));a={...a,...r}}}}let{suggestObject:r,suggestTableStore:i,suggestTable:c,suggestUser:n,suggestGroup:h,suggestTopic:E,suggestView:T,suggestReplication:o,suggestExternalTable:R,suggestExternalDatasource:A,...S}=a,l=Object.entries({suggestObject:r,suggestTableStore:i,suggestTable:c,suggestUser:n,suggestGroup:h,suggestTopic:E,suggestView:T,suggestReplication:o,suggestExternalTable:R,suggestExternalDatasource:A}).filter((t=>{let[e,s]=t;return s})).map((t=>{let[e]=t;return kK[e]}));return{suggestEntity:l.length?l:void 0,...S}}(s,r,a),o={...e,...T,suggestTemplates:_C(c,i)};if(n||h||E){let e=new vK,{tableContextSuggestion:s,suggestColumnAliases:r}=mC($y,tf,e,DK,t,a,i,c,!0);n&&s&&(o.suggestColumns={tables:s.tables}),E&&s&&(o.suggestTableIndexes={tables:s.tables}),h&&r&&(o.suggestColumnAliases=r)}return o}}var wK=new ef(null,-1),bK={Lexer:$y,Parser:tf,tokenDictionary:DK,ignoredTokens:GK,rulesToVisit:FK,getParseTree:BK,enrichAutocompleteResult:YK(BK),context:wK},WK=new NK(null,-1),VK={Lexer:$y,Parser:tf,tokenDictionary:DK,ignoredTokens:GK,rulesToVisit:FK,getParseTree:yK,enrichAutocompleteResult:YK(yK),context:WK};function XK(t,e,s,a,r){let i=PC(t,e,r),c=new NG(s.SPACE);return i.removeErrorListeners(),i.addErrorListener(c),a(i),{errors:c.errors}}var KK=/^'(.*)'$/;function QK(t,e,s,a,r,i,c,n,h,E){let T=PC(t,e,n),{tokenStream:o}=T,R=new NG(s.SPACE);T.removeErrorListeners(),T.addErrorListener(R),i(T);let A=new Jc(T);A.ignoredTokens=a,A.preferredRules=r;let S=IC(o,h,s.SPACE);if(void 0===S)throw new Error("Could not find cursor token index for line: ".concat(h.line,", column: ").concat(h.column));let l=[],{tokens:O,rules:I}=A.collectCandidates(S,E);return O.forEach(((t,e)=>{var s;let a=(null===(s=T.vocabulary.getLiteralName(e))||void 0===s?void 0:s.replace(KK,"$1"))||T.vocabulary.getSymbolicName(e);if(!a)throw new Error("Could not get name for token ".concat(e));l.push({value:a})})),c({errors:R.errors,suggestKeywords:l},I,o,S,h,n)}function JK(t){return XK(uG.Lexer,uG.Parser,uG.tokenDictionary,uG.getParseTree,t)}function ZK(t,e){return QK(uG.Lexer,uG.Parser,uG.tokenDictionary,uG.ignoredTokens,uG.rulesToVisit,uG.getParseTree,uG.enrichAutocompleteResult,t,e)}function qK(t){return XK(HC.Lexer,HC.Parser,HC.tokenDictionary,HC.getParseTree,t)}function jK(t,e){return QK(HC.Lexer,HC.Parser,HC.tokenDictionary,HC.ignoredTokens,HC.rulesToVisit,HC.getParseTree,HC.enrichAutocompleteResult,t,e)}function zK(t){return XK(zy.Lexer,zy.Parser,zy.tokenDictionary,zy.getParseTree,t)}function $K(t,e){return QK(zy.Lexer,zy.Parser,zy.tokenDictionary,zy.ignoredTokens,zy.rulesToVisit,zy.getParseTree,zy.enrichAutocompleteResult,t,e)}function tQ(t){return XK(bK.Lexer,bK.Parser,bK.tokenDictionary,bK.getParseTree,t)}function eQ(t,e){return QK(bK.Lexer,bK.Parser,bK.tokenDictionary,bK.ignoredTokens,bK.rulesToVisit,bK.getParseTree,bK.enrichAutocompleteResult,t,e,bK.context)}function sQ(t){return XK(VK.Lexer,VK.Parser,VK.tokenDictionary,VK.getParseTree,t)}function aQ(t,e){return QK(VK.Lexer,VK.Parser,VK.tokenDictionary,VK.ignoredTokens,VK.rulesToVisit,VK.getParseTree,VK.enrichAutocompleteResult,t,e,VK.context)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[8607],{68607:(t,e,s)=>{function a(t,e){if(e.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}function r(t,e,s){a(t,e),e.set(t,s)}s.r(e),s.d(e,{TableOrViewSuggestion:()=>tn,parseClickHouseQuery:()=>$K,parseClickHouseQueryWithoutCursor:()=>zK,parseMySqlQuery:()=>ZK,parseMySqlQueryWithoutCursor:()=>JK,parsePostgreSqlQuery:()=>jK,parsePostgreSqlQueryWithoutCursor:()=>qK,parseYqQuery:()=>aQ,parseYqQueryWithoutCursor:()=>sQ,parseYqlQuery:()=>eQ,parseYqlQueryWithoutCursor:()=>tQ});var i,c,n,h,E,T,o,R,A,S,l,O,I,u,N,L,C,_,P,M,d,U,m,D,p,g,x,k,H,G,F,v,B,y,f,Y,w,b,W,V,X,K,Q,J,Z,q,j,z,$,tt,et,st,at,rt,it,ct,nt,ht,Et,Tt,ot,Rt,At,St,lt,Ot,It,ut,Nt,Lt,Ct,_t,Pt,Mt,dt,Ut,mt,Dt,pt,gt,xt,kt,Ht,Gt,Ft,vt,Bt,yt,ft,Yt,wt,bt,Wt,Vt,Xt,Kt,Qt,Jt,Zt,qt,jt,zt,$t,te,ee,se,ae,re,ie,ce,ne,he,Ee,Te,oe,Re,Ae,Se,le,Oe,Ie,ue,Ne,Le,Ce,_e,Pe,Me,de,Ue,me,De,pe,ge,xe,ke,He,Ge,Fe,ve,Be,ye,fe,Ye,we,be,We,Ve,Xe,Ke,Qe,Je,Ze,qe,je,ze,$e,ts,es,ss,as,rs,is,cs,ns,hs,Es,Ts,os,Rs,As,Ss,ls,Os,Is,us,Ns,Ls,Cs,_s,Ps,Ms,ds,Us,ms,Ds,ps,gs,xs,ks,Hs,Gs,Fs,vs,Bs,ys,fs,Ys,ws,bs,Ws,Vs,Xs,Ks,Qs,Js,Zs,qs,js=s(64572);function zs(t,e,s){if(!e.has(t))throw new TypeError("attempted to "+s+" private field on non-instance");return e.get(t)}function $s(t,e,s){return function(t,e,s){if(e.set)e.set.call(t,s);else{if(!e.writable)throw new TypeError("attempted to set read only private field");e.value=s}}(t,zs(t,e,"set"),s),s}function ta(t,e){return e.get?e.get.call(t):e.value}function ea(t,e){return ta(t,zs(t,e,"get"))}function sa(t,e,s){if(!e.has(t))throw new TypeError("attempted to get private field on non-instance");return s}function aa(t,e,s){return function(t,e){if(t!==e)throw new TypeError("Private static access of wrong provenance")}(t,e),function(t,e){if(void 0===t)throw new TypeError("attempted to "+e+" private static field before its declaration")}(s,"get"),ta(t,s)}var ra,ia,ca,na,ha=Object.defineProperty,Ea=(t,e)=>ha(t,"name",{value:e,configurable:!0});(ia=ra||(ra={})).EOF=-1,ia.UNKNOWN_SOURCE_NAME="",(na=ca||(ca={})).INVALID_TYPE=0,na.EPSILON=-2,na.MIN_USER_TOKEN_TYPE=1,na.EOF=ra.EOF,na.DEFAULT_CHANNEL=0,na.HIDDEN_CHANNEL=1,na.MIN_USER_CHANNEL_VALUE=2;var Ta=Ea((t=>{const e=t;return void 0!==e.tokenSource&&void 0!==e.channel}),"isToken"),oa=(c=new WeakMap,i=class t{constructor(t,e){(0,js.Z)(this,"start",void 0),(0,js.Z)(this,"stop",void 0),r(this,c,{writable:!0,value:void 0}),this.start=t,this.stop=e,$s(this,c,Math.imul(651+t,31)+e)}static of(e,s){return e!==s||e<0||e>t.INTERVAL_POOL_MAX_VALUE?new t(e,s):(aa(t,i,n)[e]||(aa(t,i,n)[e]=new t(e,e)),aa(t,i,n)[e])}equals(t){return this.start===t.start&&this.stop===t.stop}hashCode(){return ea(this,c)}startsBeforeDisjoint(t){return this.start=t.start}startsAfter(t){return this.start>t.start}startsAfterDisjoint(t){return this.start>t.stop}startsAfterNonDisjoint(t){return this.start>t.start&&this.start<=t.stop}disjoint(t){return this.startsBeforeDisjoint(t)||this.startsAfterDisjoint(t)}adjacent(t){return this.start===t.stop+1||this.stop===t.start-1}properlyContains(t){return t.start>=this.start&&t.stop<=this.stop}union(e){return t.of(Math.min(this.start,e.start),Math.max(this.stop,e.stop))}intersection(e){return t.of(Math.max(this.start,e.start),Math.min(this.stop,e.stop))}differenceNotProperlyContained(e){let s=null;return e.startsBeforeNonDisjoint(this)?s=t.of(Math.max(this.start,e.stop+1),this.stop):e.startsAfterNonDisjoint(this)&&(s=t.of(this.start,e.start-1)),s}toString(){return this.start===this.stop?this.start.toString():this.start.toString()+".."+this.stop.toString()}get length(){return this.stop0){const e=r.charAt(0);if("'"===e){a[t]=null;continue}if(e.toUpperCase()===e){s[t]=null;continue}}s[t]=null,a[t]=null}}return new t(s,a,e)}getMaxTokenType(){return this.maxTokenType}getLiteralName(t){return t>=0&&t=0&&t=0&&t0&&void 0!==arguments[0]?arguments[0]:aa(t,E,T)}static updateFromComparable(t,e){var s;return this.update(t,null!==(s=null===e||void 0===e?void 0:e.hashCode())&&void 0!==s?s:0)}static update(t,e){return e=(e=Math.imul(e,3432918353))<<15|e>>>17,t=(t^=e=Math.imul(e,461845907))<<13|t>>>19,t=Math.imul(t,5)+3864292196}},"MurmurHash"),T={writable:!0,value:701},(0,js.Z)(E,"finish",((t,e)=>(t^=4*e,t^=t>>>16,t=Math.imul(t,2246822507),t^=t>>>13,t=Math.imul(t,3266489909),t^=t>>>16))),(0,js.Z)(E,"hashCode",((t,e)=>E.finish(E.update(null!==e&&void 0!==e?e:aa(E,E,T),t),1))),E),Sa=(R=new WeakMap,A=new WeakMap,o=class t{constructor(t){r(this,R,{writable:!0,value:[]}),r(this,A,{writable:!0,value:void 0}),t&&this.addSet(t)}static of(e,s){const a=new t;return a.addRange(e,s),a}[Symbol.iterator](){return ea(this,R)[Symbol.iterator]()}get(t){return ea(this,R)[t]}get minElement(){return 0===ea(this,R).length?ca.INVALID_TYPE:ea(this,R)[0].start}get maxElement(){return 0===ea(this,R).length?ca.INVALID_TYPE:ea(this,R)[ea(this,R).length-1].stop}clear(){$s(this,A,void 0),$s(this,R,[])}addOne(t){this.addInterval(new oa(t,t))}addRange(t,e){this.addInterval(new oa(t,e))}addInterval(t){if($s(this,A,void 0),0===ea(this,R).length)ea(this,R).push(t);else{for(let e=0;ethis.addInterval(t)),this),this}complementWithVocabulary(e){const s=new t;return e?0===e.length?s:(s.addSet(e),s.subtract(this)):s}complement(e,s){const a=new t;return a.addInterval(new oa(e,s)),a.subtract(this)}or(e){const s=new t;return s.addSet(this),e.forEach((t=>s.addSet(t))),s}and(e){if(0===e.length)return new t;const s=ea(this,R),a=ea(e,R);let r;const i=s.length,c=a.length;let n=0,h=0;for(;nt.stop){a++;continue}let c,n;i.start>t.start&&(c=new oa(t.start,i.start-1)),i.stopt))return!0;s=a-1}}return!1}removeRange(t){if($s(this,A,void 0),t.start===t.stop)this.removeOne(t.start);else if(null!==ea(this,R)){let e=0;for(const s of ea(this,R)){if(t.stop<=s.start)return;if(t.start>s.start&&t.stop=s.stop?(ea(this,R).splice(e,1),e-=1):t.start1&&(e+="{");for(let s=0;s":e+=t?"'"+String.fromCodePoint(r)+"'":r:e+=t?"'"+String.fromCodePoint(r)+"'..'"+String.fromCodePoint(i)+"'":r+".."+i,s1&&(e+="}"),e}toStringWithVocabulary(t){if(0===ea(this,R).length)return"{}";let e="";this.length>1&&(e+="{");for(let s=0;s":e+=this.elementName(t,r);else for(let s=r;s<=i;++s)s>r&&(e+=", "),e+=this.elementName(t,s);s1&&(e+="}"),e}toStringWithRuleNames(t){if(0===ea(this,R).length)return"{}";let e="";this.length>1&&(e+="{");const s=Ra.fromTokenNames(t);for(let a=0;a":e+=this.elementName(s,r);else for(let a=r;a<=i;++a)a>r&&(e+=", "),e+=this.elementName(s,a);a1&&(e+="}"),e}toArray(){const t=[];for(const e of ea(this,R))for(let s=e.start;s<=e.stop;s++)t.push(s);return t}get length(){let t=0;if(1===ea(this,R).length){const t=ea(this,R)[0];return t.stop-t.start+1}for(const e of ea(this,R))t+=e.length;return t}elementName(t,e){return e===ca.EOF?"":e===ca.EPSILON?"":t.getDisplayName(e)}},Ea(o,"IntervalSet"),o),la=(Ea(S=class{constructor(t){(0,js.Z)(this,"target",void 0),this.target=t}get isEpsilon(){return!1}get label(){return null}},"Transition"),(0,js.Z)(S,"INVALID",0),(0,js.Z)(S,"EPSILON",1),(0,js.Z)(S,"RANGE",2),(0,js.Z)(S,"RULE",3),(0,js.Z)(S,"PREDICATE",4),(0,js.Z)(S,"ATOM",5),(0,js.Z)(S,"ACTION",6),(0,js.Z)(S,"SET",7),(0,js.Z)(S,"NOT_SET",8),(0,js.Z)(S,"WILDCARD",9),(0,js.Z)(S,"PRECEDENCE",10),S),Oa=(Ea(l=class extends la{constructor(t,e){super(t),(0,js.Z)(this,"set",void 0),this.set=e||Sa.of(ca.INVALID_TYPE,ca.INVALID_TYPE)}get transitionType(){return la.SET}get label(){return this.set}matches(t,e,s){return this.set.contains(t)}toString(){return this.set.toString()}},"SetTransition"),l),Ia=(Ea(O=class extends Oa{get transitionType(){return la.NOT_SET}matches(t,e,s){return t>=e&&t<=s&&!super.matches(t,e,s)}toString(){return"~"+super.toString()}},"NotSetTransition"),O),ua=(u=new WeakMap,Ea(I=class t{constructor(t){r(this,u,{writable:!0,value:void 0}),$s(this,u,t)}static calculateEmptyHashCode(){let t=Aa.initialize(31);return t=Aa.finish(t,0),t}static calculateHashCodeSingle(t,e){let s=Aa.initialize(31);return s=Aa.updateFromComparable(s,t),s=Aa.update(s,e),s=Aa.finish(s,2),s}static calculateHashCodeList(t,e){let s=Aa.initialize(31);for(const a of t)s=Aa.updateFromComparable(s,a);for(const a of e)s=Aa.update(s,a);return s=Aa.finish(s,2*t.length),s}isEmpty(){return!1}hasEmptyPath(){return this.getReturnState(this.length-1)===t.EMPTY_RETURN_STATE}hashCode(){return ea(this,u)}toString(t){return""}},"PredictionContext"),(0,js.Z)(I,"EMPTY_RETURN_STATE",2147483647),(0,js.Z)(I,"EMPTY",void 0),(0,js.Z)(I,"traceATNSimulator",!1),I),Na=Ea((t=>null===t?"null":t),"valueToString"),La=Ea((t=>Array.isArray(t)?"["+t.map(Na).join(", ")+"]":"null"),"arrayToString"),Ca=Ea(((t,e)=>{if(t===e)return!0;if(t.length!==e.length)return!1;for(let s=0;s{if(t===e)return!0;if(t.length!==e.length)return!1;for(let s=0;s1&&void 0!==arguments[1]&&arguments[1];return t=t.replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r"),e&&(t=t.replace(/ /g,"\xb7")),t}),"escapeWhitespace"),Ma=(N=class t extends ua{constructor(t,e){return super(ua.calculateHashCodeList(t,e)),(0,js.Z)(this,"parents",[]),(0,js.Z)(this,"returnStates",[]),this.parents=t,this.returnStates=e,this}isEmpty(){return this.returnStates[0]===ua.EMPTY_RETURN_STATE}get length(){return this.returnStates.length}getParent(t){return this.parents[t]}getReturnState(t){return this.returnStates[t]}equals(e){return this===e||e instanceof t&&this.hashCode()===e.hashCode()&&(_a(this.returnStates,e.returnStates)&&Ca(this.parents,e.parents))}toString(){if(this.isEmpty())return"[]";const t=[];for(let e=0;e":null!==(e=null===(s=this.symbol)||void 0===s?void 0:s.text)&&void 0!==e?e:""}toStringTree(){return this.toString()}},"TerminalNode"),_),Da=(Ea(P=class extends ma{accept(t){return t.visitErrorNode(this)}},"ErrorNode"),P),pa=(M=class t{static toStringTree(e,s,a){var r,i;s=null!==(r=s)&&void 0!==r?r:null,null!==(a=null!==(i=a)&&void 0!==i?i:null)&&(s=a.ruleNames);let c=t.getNodeText(e,s);c=Pa(c,!1);const n=e.getChildCount();if(0===n)return c;let h="("+c+" ";n>0&&(c=t.toStringTree(e.getChild(0),s),h=h.concat(c));for(let E=1;E1&&void 0!==arguments[1]?arguments[1]:-1;(0,js.Z)(this,"start",null),(0,js.Z)(this,"stop",null),(0,js.Z)(this,"children",[]),(0,js.Z)(this,"invokingState",void 0),r(this,U,{writable:!0,value:void 0}),$s(this,U,t),this.invokingState=e}copyFrom(t){$s(this,U,ea(t,U)),this.invokingState=t.invokingState,this.children.slice(0,this.children.length),this.start=t.start,this.stop=t.stop,t.children&&t.children.forEach((t=>{t instanceof Da&&(this.children.push(t),t.parent=this)}))}enterRule(t){}exitRule(t){}addChild(t){return this.children.push(t),t}removeLastChild(){this.children.pop()}addTokenNode(t){const e=new ma(t);return this.children.push(e),e.parent=this,e}addErrorNode(t){return t.parent=this,this.children.push(t),t}getChild(t,e){if(t<0||t>=this.children.length)return null;if(!e)return this.children[t];for(const s of this.children)if(s instanceof e){if(0===t)return s;t-=1}return null}getToken(t,e){if(e<0||e>=this.children.length)return null;for(const a of this.children){var s;if("symbol"in a)if((null===(s=a.symbol)||void 0===s?void 0:s.type)===t){if(0===e)return a;e-=1}}return null}getTokens(t){const e=[];for(const a of this.children){var s;if("symbol"in a)(null===(s=a.symbol)||void 0===s?void 0:s.type)===t&&e.push(a)}return e}getRuleContext(t,e){return this.getChild(t,e)}getRuleContexts(t){const e=[];for(const s of this.children)s instanceof t&&e.push(s);return e}getChildCount(){return this.children.length}getSourceInterval(){return null===this.start||null===this.stop?oa.INVALID_INTERVAL:new oa(this.start.tokenIndex,this.stop.tokenIndex)}get parent(){return ea(this,U)}set parent(t){$s(this,U,t)}depth(){let t=0,e=this;for(;null!==e;)e=e.parent,t+=1;return t}isEmpty(){return-1===this.invokingState}get ruleContext(){return this}get ruleIndex(){return-1}getPayload(){return this}getText(){return 0===this.children.length?"":this.children.map((t=>t.getText())).join("")}getAltNumber(){return ja.INVALID_ALT_NUMBER}setAltNumber(t){}accept(t){return t.visitChildren(this)}toStringTree(){return 1===arguments.length?pa.toStringTree(this,null,arguments.length<=0?void 0:arguments[0]):pa.toStringTree(this,arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1])}toString(t,e){var s,a;t=null!==(s=t)&&void 0!==s?s:null,e=null!==(a=e)&&void 0!==a?a:null;let r=this,i="[";for(;null!==r&&r!==e;){if(null===t)r.isEmpty()||(i+=r.invokingState);else{const e=r.ruleIndex;i+=e>=0&&e1&&void 0!==arguments[1]?arguments[1]:aa(t,p,F);if(r(this,g,{writable:!0,value:void 0}),r(this,x,{writable:!0,value:void 0}),r(this,k,{writable:!0,value:0}),r(this,H,{writable:!0,value:void 0}),e instanceof t){$s(this,g,ea(e,g)),$s(this,x,ea(e,x).slice(0));for(let t=0;tea(this,H)&&this.expand();const s=this.getBucket(t);let a=ea(this,x)[s];var r;if(!a)return a=[t],ea(this,x)[s]=a,$s(this,k,(r=ea(this,k),++r)),t;for(const i of a)if(ea(this,g).equals(i,t))return i;return a.push(t),$s(this,k,(e=ea(this,k),++e)),t}get(t){if(null==t)return t;const e=this.getBucket(t),s=ea(this,x)[e];if(s)for(const a of s)if(ea(this,g).equals(a,t))return a}hashCode(){let t=Aa.initialize();for(const e of ea(this,x))if(null!=e)for(const s of e){if(null==s)break;t=Aa.update(t,ea(this,g).hashCode(s))}return t=Aa.finish(t,this.size),t}equals(e){return e===this||e instanceof t&&(e.size===this.size&&this.containsAll(e))}add(t){return this.getOrAdd(t)===t}contains(t){return this.containsFast(t)}containsFast(t){return null!=t&&void 0!==this.get(t)}*[Symbol.iterator](){yield*this.toArray()}toArray(){const t=new Array(this.size);let e=0;for(const s of ea(this,x))if(null!=s)for(const a of s){if(null==a)break;t[e++]=a}return t}containsAll(e){if(e instanceof t){for(const t of ea(e,x))if(null!=t)for(const e of t){if(null==e)break;if(!this.containsFast(e))return!1}}else for(const t of e)if(!this.containsFast(t))return!1;return!0}addAll(t){let e=!1;for(const s of t){this.getOrAdd(s)!==s&&(e=!0)}return e}clear(){$s(this,x,this.createBuckets(aa(t,p,F))),$s(this,k,0),$s(this,H,Math.floor(aa(t,p,F)*aa(t,p,G)))}toString(){if(0===this.size)return"{}";let t="{",e=!0;for(const s of ea(this,x))if(null!=s)for(const a of s){if(null==a)break;e?e=!1:t+=", ",t+=a.toString()}return t+="}",t}toTableString(){let t="";for(const e of ea(this,x)){if(null==e){t+="null\n";continue}t+="[";let s=!0;for(const a of e)s?s=!1:t+=" ",t+=null==a?"_":a.toString();t+="]\n"}return t}getBucket(t){return ea(this,g).hashCode(t)&ea(this,x).length-1}expand(){const e=ea(this,x),s=2*ea(this,x).length,a=this.createBuckets(s);$s(this,x,a),$s(this,H,Math.floor(s*aa(t,p,G)));for(const t of e)if(t)for(const e of t){const t=this.getBucket(e);let s=ea(this,x)[t];s||(s=[],ea(this,x)[t]=s),s.push(e)}}get size(){return ea(this,k)}get isEmpty(){return 0===ea(this,k)}createBuckets(t){return new Array(t)}},Ea(p,"HashSet"),G={writable:!0,value:.75},F={writable:!0,value:16},p),Ga=(v=class{constructor(t){(0,js.Z)(this,"keyComparator",void 0),this.keyComparator=t}hashCode(t){return this.keyComparator.hashCode(t.key)}equals(t,e){return this.keyComparator.equals(t.key,e.key)}},Ea(v,"MapKeyEqualityComparator"),v),Fa=(Ea(B=class t{constructor(e){(0,js.Z)(this,"backingStore",void 0),this.backingStore=new Ha(e instanceof t?e.backingStore:new Ga(e))}clear(){this.backingStore.clear()}containsKey(t){return this.backingStore.contains({key:t})}get(t){const e=this.backingStore.get({key:t});if(e)return e.value}get isEmpty(){return this.backingStore.isEmpty}set(t,e){const s=this.backingStore.get({key:t,value:e});let a;return s?(a=s.value,s.value=e):this.backingStore.add({key:t,value:e}),a}setIfAbsent(t,e){const s=this.backingStore.get({key:t,value:e});let a;return s?a=s.value:this.backingStore.add({key:t,value:e}),a}values(){return this.backingStore.toArray().map((t=>t.value))}get size(){return this.backingStore.size}hashCode(){return this.backingStore.hashCode()}equals(t){return this.backingStore.equals(t.backingStore)}},"HashMap"),B),va=Ea(((t,e)=>{if(e||(e=ga.empty),!e.parent||e===ga.empty)return ua.EMPTY;const s=va(t,e.parent),a=t.states[e.invokingState].transitions[0];return da.create(s,a.followState.stateNumber)}),"predictionContextFromRuleContext"),Ba=Ea(((t,e,s)=>{if(t.isEmpty())return t;let a=s.get(t);if(a)return a;if(a=e.get(t),a)return s.set(t,a),a;let r,i=!1,c=[];for(let h=0;h{if(t===e)return t;if(t instanceof da&&e instanceof da)return wa(t,e,s,a);if(s){if(t instanceof Ua)return t;if(e instanceof Ua)return e}return t instanceof da&&(t=new Ma([t.parent],[t.returnState])),e instanceof da&&(e=new Ma([e.parent],[e.returnState])),fa(t,e,s,a)}),"merge"),fa=Ea(((t,e,s,a)=>{if(a){let s=a.get(t,e);if(s)return s;if(s=a.get(e,t),s)return s}let r=0,i=0,c=0,n=new Array(t.returnStates.length+e.returnStates.length).fill(0),h=new Array(t.returnStates.length+e.returnStates.length).fill(null);for(;r a"),t):T.equals(e)?(null!==a&&a.set(t,e,e),e):(Ya(h),null!==a&&a.set(t,e,T),ua.traceATNSimulator&&console.log("mergeArrays a="+t+",b="+e+" -> "+T),T)}),"mergeArrays"),Ya=Ea((t=>{const e=new Fa(xa.instance);for(const a of t)a&&(e.containsKey(a)||e.set(a,a));for(let a=0;a{if(null!==a){let s=a.get(t,e);if(null!==s)return s;if(s=a.get(e,t),null!==s)return s}const r=ba(t,e,s);if(null!==r)return null!==a&&a.set(t,e,r),r;if(t.returnState===e.returnState){const r=ya(t.parent,e.parent,s,a);if(r===t.parent)return t;if(r===e.parent)return e;const i=da.create(r,t.returnState);return null!==a&&a.set(t,e,i),i}{let s=null;if((t===e||null!==t.parent&&t.parent===e.parent)&&(s=t.parent),null!==s){const r=[t.returnState,e.returnState];t.returnState>e.returnState&&(r[0]=e.returnState,r[1]=t.returnState);const i=new Ma([s,s],r);return null!==a&&a.set(t,e,i),i}const r=[t.returnState,e.returnState];let i=[t.parent,e.parent];t.returnState>e.returnState&&(r[0]=e.returnState,r[1]=t.returnState,i=[e.parent,t.parent]);const c=new Ma(i,r);return null!==a&&a.set(t,e,c),c}}),"mergeSingletons"),ba=Ea(((t,e,s)=>{if(s){if(t===ua.EMPTY||e===ua.EMPTY)return ua.EMPTY}else{if(t===ua.EMPTY&&e===ua.EMPTY)return ua.EMPTY;if(t===ua.EMPTY){const t=[e.returnState,ua.EMPTY_RETURN_STATE],s=[e.parent,null];return new Ma(s,t)}if(e===ua.EMPTY){const e=[t.returnState,ua.EMPTY_RETURN_STATE],s=[t.parent,null];return new Ma(s,e)}}return null}),"mergeRoot"),Wa=(y=class{constructor(t){(0,js.Z)(this,"data",void 0),this.data=t?new Uint32Array(t.map((t=>t>>>0))):new Uint32Array(1)}[Symbol.iterator](){const t=this.data.length;let e=0,s=this.data[e];const a=this.data;return{[Symbol.iterator](){return this},next:()=>{for(;e>>5]&=~(1<>>5;return!(e>=this.data.length)&&0!==(this.data[e]&1<t)return e}set(t){if(t<0)throw new RangeError("index cannot be negative");this.resize(t),this.data[t>>>5]|=1<>>5;if(e<=this.data.length)return;const s=new Uint32Array(e);s.set(this.data),s.fill(0,this.data.length),this.data=s}bitCount(t){return t=(t=(858993459&(t-=t>>1&1431655765))+(t>>2&858993459))+(t>>4)&252645135,t+=t>>8,63&(t+=t>>16)}},Ea(y,"BitSet"),y),Va=(f=class{constructor(){(0,js.Z)(this,"stateNumber",0),(0,js.Z)(this,"ruleIndex",0),(0,js.Z)(this,"epsilonOnlyTransitions",!1),(0,js.Z)(this,"nextTokenWithinRule",void 0),(0,js.Z)(this,"transitions",[])}hashCode(){return this.stateNumber}equals(t){return this.stateNumber===t.stateNumber}toString(){return"".concat(this.stateNumber)}addTransitionAtIndex(t,e){0===this.transitions.length?this.epsilonOnlyTransitions=e.isEpsilon:this.epsilonOnlyTransitions!==e.isEpsilon&&(this.epsilonOnlyTransitions=!1),this.transitions.splice(t,1,e)}addTransition(t){0===this.transitions.length?this.epsilonOnlyTransitions=t.isEpsilon:this.epsilonOnlyTransitions!==t.isEpsilon&&(this.epsilonOnlyTransitions=!1),this.transitions.push(t)}setTransition(t,e){this.transitions.splice(t,1,e)}removeTransition(t){return this.transitions.splice(t,1)[0]}},Ea(f,"ATNState"),(0,js.Z)(f,"INVALID_STATE_NUMBER",-1),(0,js.Z)(f,"INVALID_TYPE",0),(0,js.Z)(f,"BASIC",1),(0,js.Z)(f,"RULE_START",2),(0,js.Z)(f,"BLOCK_START",3),(0,js.Z)(f,"PLUS_BLOCK_START",4),(0,js.Z)(f,"STAR_BLOCK_START",5),(0,js.Z)(f,"TOKEN_START",6),(0,js.Z)(f,"RULE_STOP",7),(0,js.Z)(f,"BLOCK_END",8),(0,js.Z)(f,"STAR_LOOP_BACK",9),(0,js.Z)(f,"STAR_LOOP_ENTRY",10),(0,js.Z)(f,"PLUS_LOOP_BACK",11),(0,js.Z)(f,"LOOP_END",12),(0,js.Z)(f,"stateType",f.INVALID_STATE_NUMBER),f),Xa=(Y=class t{constructor(){(0,js.Z)(this,"cachedHashCode",void 0)}static andContext(e,s){if(null===e||e===t.NONE)return s;if(null===s||s===t.NONE)return e;const a=new Ka(e,s);return 1===a.operands.length?a.operands[0]:a}static orContext(e,s){if(null===e)return s;if(null===s)return e;if(e===t.NONE||s===t.NONE)return t.NONE;const a=new Qa(e,s);return 1===a.operands.length?a.operands[0]:a}static filterPrecedencePredicates(e){const s=[];for(const a of e)a instanceof t.PrecedencePredicate&&s.push(a);return s}evalPrecedence(t,e){return this}},Ea(Y,"SemanticContext"),Y),Ka=(w=class t extends Xa{constructor(e,s){super(),(0,js.Z)(this,"operands",void 0);const a=new Ha;e instanceof t?e.operands.forEach((t=>{a.add(t)})):a.add(e),s instanceof t?s.operands.forEach((t=>{a.add(t)})):a.add(s);const r=Xa.filterPrecedencePredicates(a);if(r.length>0){let t=null;r.forEach((e=>{(null===t||e.precedence{r=null===r?t:Xa.andContext(r,t)})),r}toString(){const t=this.operands.map((t=>t.toString()));return(t.length>3?t.slice(3):t).join("&&")}},Ea(w,"AND"),w),Qa=(b=class t extends Xa{constructor(e,s){super(),(0,js.Z)(this,"operands",void 0);const a=new Ha;e instanceof t?e.operands.forEach((t=>{a.add(t)})):a.add(e),s instanceof t?s.operands.forEach((t=>{a.add(t)})):a.add(s);const r=Xa.filterPrecedencePredicates(a);if(r.length>0){const t=r.sort(((t,e)=>t.compareTo(e))),e=t[t.length-1];a.add(e)}this.operands=a.toArray()}equals(e){return this===e||e instanceof t&&Ca(this.operands,e.operands)}hashCode(){if(void 0===this.cachedHashCode){let t=Aa.initialize();for(const e of this.operands)t=Aa.updateFromComparable(t,e);t=Aa.update(t,3383313031),this.cachedHashCode=Aa.finish(t,this.operands.length+1)}return this.cachedHashCode}evaluate(t,e){for(const s of this.operands)if(s.evaluate(t,e))return!0;return!1}evalPrecedence(t,e){let s=!1;const a=[];for(const i of this.operands){const r=i.evalPrecedence(t,e);if(s||(s=r!==i),r===Xa.NONE)return Xa.NONE;null!==r&&a.push(r)}if(!s)return this;if(0===a.length)return null;let r=null;return a.forEach((t=>{r=null===r?t:Xa.orContext(r,t)})),r}toString(){const t=this.operands.map((t=>t.toString()));return(t.length>3?t.slice(3):t).join("||")}},Ea(b,"OR"),b);(t=>{class e extends t{constructor(t,e,s){super(),(0,js.Z)(this,"ruleIndex",void 0),(0,js.Z)(this,"predIndex",void 0),(0,js.Z)(this,"isCtxDependent",void 0),this.ruleIndex=null!==t&&void 0!==t?t:-1,this.predIndex=null!==e&&void 0!==e?e:-1,this.isCtxDependent=null!==s&&void 0!==s&&s}evaluate(t,e){const s=this.isCtxDependent?e:null;return t.sempred(s,this.ruleIndex,this.predIndex)}hashCode(){if(void 0===this.cachedHashCode){let t=Aa.initialize();t=Aa.update(t,this.ruleIndex),t=Aa.update(t,this.predIndex),t=Aa.update(t,this.isCtxDependent?1:0),t=Aa.finish(t,3),this.cachedHashCode=t}return this.cachedHashCode}equals(t){return this===t||this.ruleIndex===t.ruleIndex&&this.predIndex===t.predIndex&&this.isCtxDependent===t.isCtxDependent}toString(){return"{"+this.ruleIndex+":"+this.predIndex+"}?"}}Ea(e,"Predicate"),t.Predicate=e;class s extends t{constructor(t){super(),(0,js.Z)(this,"precedence",void 0),this.precedence=null!==t&&void 0!==t?t:0}evaluate(t,e){return t.precpred(e,this.precedence)}evalPrecedence(e,s){return e.precpred(null!==s&&void 0!==s?s:null,this.precedence)?t.NONE:null}compareTo(t){return this.precedence-t.precedence}hashCode(){return 31+this.precedence}equals(t){return this===t||this.precedence===t.precedence}toString(){return"{"+this.precedence+">=prec}?"}}Ea(s,"PrecedencePredicate"),t.PrecedencePredicate=s,t.NONE=new e})(Xa||(Xa={}));var Ja,Za=(V=new WeakMap,X=new WeakMap,W=class t{get semanticContext(){return ea(this,X)}constructor(t,e,s,a){(0,js.Z)(this,"state",void 0),(0,js.Z)(this,"alt",void 0),(0,js.Z)(this,"reachesIntoOuterContext",!1),(0,js.Z)(this,"precedenceFilterSuppressed",!1),(0,js.Z)(this,"cachedHashCode",void 0),r(this,V,{writable:!0,value:null}),r(this,X,{writable:!0,value:void 0}),this.state=e,this.alt=t.alt,this.context=s,$s(this,X,null!==a&&void 0!==a?a:Xa.NONE),this.reachesIntoOuterContext=t.reachesIntoOuterContext,void 0!==t.precedenceFilterSuppressed&&(this.precedenceFilterSuppressed=t.precedenceFilterSuppressed)}static duplicate(e,s){return new t(e,e.state,e.context,null!==s&&void 0!==s?s:e.semanticContext)}static createWithContext(e,s,a,r){return new t({alt:s},e,a,r)}static createWithConfig(e,s,a){return new t(s,e,null!==a&&void 0!==a?a:s.context,s.semanticContext)}static createWithSemanticContext(e,s,a){return new t(s,null!==e&&void 0!==e?e:s.state,s.context,a)}hashCode(){if(void 0===this.cachedHashCode){let t=Aa.initialize(7);t=Aa.update(t,this.state.stateNumber),t=Aa.update(t,this.alt),t=Aa.updateFromComparable(t,ea(this,V)),t=Aa.updateFromComparable(t,this.semanticContext),t=Aa.finish(t,4),this.cachedHashCode=t}return this.cachedHashCode}get context(){return ea(this,V)}set context(t){$s(this,V,t),this.cachedHashCode=void 0}equals(t){return this===t||this.state.stateNumber===t.state.stateNumber&&this.alt===t.alt&&(null===this.context?null===t.context:this.context.equals(t.context))&&this.semanticContext.equals(t.semanticContext)&&this.precedenceFilterSuppressed===t.precedenceFilterSuppressed}toString(t){let e="";return(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])&&(e=","+this.alt),"("+this.state+e+(null!==this.context?",["+this.context.toString()+"]":"")+(this.semanticContext!==Xa.NONE?","+this.semanticContext.toString():"")+(this.reachesIntoOuterContext?",up="+this.reachesIntoOuterContext:"")+")"}},Ea(W,"ATNConfig"),W),qa=(Q=new WeakMap,K=class t{constructor(){r(this,Q,{writable:!0,value:void 0})}getDecisionLookahead(e){if(!e)return;const s=e.transitions.length,a=new Array(s);for(let r=0;r0&&!s.contains(t.hitPredicate)&&(a[r]=s)}return a}look(t,e,s,a){$s(this,Q,t);const r=new Sa,i=a?va(t,a):null;return this.doLook(e,s,i,r,new Ha,new Wa,!0,!0),r}doLook(e,s,a,r,i,c,n,h){const E=Za.createWithContext(e,0,a);if(!i.get(E)){if(i.add(E),e===s){if(!a)return void r.addOne(ca.EPSILON);if(a.isEmpty()&&h)return void r.addOne(ca.EOF)}if(e.constructor.stateType===Va.RULE_STOP){if(!a)return void r.addOne(ca.EPSILON);if(a.isEmpty()&&h)return void r.addOne(ca.EOF);if(a!==ua.EMPTY){const t=c.get(e.ruleIndex);try{c.clear(e.ruleIndex);for(let t=0;t=this.states.length)throw new Error("Invalid state number.");const s=this.states[t];let a=this.nextTokens(s);if(!a.contains(ca.EPSILON))return a;let r=e;const i=new Sa;for(i.addSet(a),i.removeOne(ca.EPSILON);null!==r&&r.invokingState>=0&&a.contains(ca.EPSILON);){const t=this.states[r.invokingState].transitions[0];a=this.nextTokens(t.followState),i.addSet(a),i.removeOne(ca.EPSILON),r=r.parent}return a.contains(ca.EPSILON)&&i.addOne(ca.EOF),i}},Ea(J,"ATN"),(0,js.Z)(J,"INVALID_ALT_NUMBER",0),(0,js.Z)(J,"LEXER",0),(0,js.Z)(J,"PARSER",1),Z={writable:!0,value:new qa},J),za=(q=class{hashCode(t){let e=7;return e=31*e+t.state.stateNumber,e=31*e+t.alt,e=31*e+t.semanticContext.hashCode(),e}equals(t,e){return t===e||t.state.stateNumber===e.state.stateNumber&&t.alt===e.alt&&t.semanticContext.equals(e.semanticContext)}},Ea(q,"KeyTypeEqualityComparer"),(0,js.Z)(q,"instance",new q),q),$a=(z=new WeakMap,j=class{constructor(t){if((0,js.Z)(this,"configLookup",new Ha(za.instance)),(0,js.Z)(this,"configs",[]),(0,js.Z)(this,"uniqueAlt",0),(0,js.Z)(this,"hasSemanticContext",!1),(0,js.Z)(this,"dipsIntoOuterContext",!1),(0,js.Z)(this,"fullCtx",!1),(0,js.Z)(this,"readOnly",!1),(0,js.Z)(this,"conflictingAlts",null),(0,js.Z)(this,"firstStopState",void 0),r(this,z,{writable:!0,value:-1}),void 0!==t)if("boolean"===typeof t)this.fullCtx=null===t||void 0===t||t;else{const e=t;this.addAll(e.configs),this.uniqueAlt=e.uniqueAlt,this.conflictingAlts=e.conflictingAlts,this.hasSemanticContext=e.hasSemanticContext,this.dipsIntoOuterContext=e.dipsIntoOuterContext}}[Symbol.iterator](){return this.configs[Symbol.iterator]()}add(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(this.readOnly)throw new Error("This set is readonly");this.firstStopState||t.state.constructor.stateType!==Va.RULE_STOP||(this.firstStopState=t),this.hasSemanticContext||(this.hasSemanticContext=t.semanticContext!==Xa.NONE),this.dipsIntoOuterContext||(this.dipsIntoOuterContext=t.reachesIntoOuterContext);const s=this.configLookup.getOrAdd(t);if(s===t)return $s(this,z,-1),void this.configs.push(t);const a=!this.fullCtx,r=ya(s.context,t.context,a,e);s.reachesIntoOuterContext||(s.reachesIntoOuterContext=t.reachesIntoOuterContext),s.precedenceFilterSuppressed||(s.precedenceFilterSuppressed=t.precedenceFilterSuppressed),s.context=r}get elements(){return this.configs}getAlts(){const t=new Wa;for(const e of this.configs)t.set(e.alt);return t}getPredicates(){const t=[];for(const e of this.configs)e.semanticContext!==Xa.NONE&&t.push(e.semanticContext);return t}getStates(){const t=new Ha;for(const e of this.configs)t.add(e.state);return t}optimizeConfigs(t){if(this.readOnly)throw new Error("This set is readonly");if(0!==this.configLookup.size)for(const e of this.configs)e.context=t.getCachedContext(e.context)}addAll(t){for(const e of t)this.add(e);return!1}equals(t){return this===t||!(this.fullCtx!==t.fullCtx||this.uniqueAlt!==t.uniqueAlt||this.conflictingAlts!==t.conflictingAlts||this.hasSemanticContext!==t.hasSemanticContext||this.dipsIntoOuterContext!==t.dipsIntoOuterContext||!Ca(this.configs,t.configs))}hashCode(){return-1===ea(this,z)&&$s(this,z,this.computeHashCode()),ea(this,z)}get length(){return this.configs.length}isEmpty(){return 0===this.configs.length}contains(t){if(null===this.configLookup)throw new Error("This method is not implemented for readonly sets.");return this.configLookup.contains(t)}containsFast(t){if(null===this.configLookup)throw new Error("This method is not implemented for readonly sets.");return this.configLookup.contains(t)}clear(){if(this.readOnly)throw new Error("This set is readonly");this.configs=[],$s(this,z,-1),this.configLookup=new Ha(za.instance)}setReadonly(t){this.readOnly=t,t&&(this.configLookup=null)}toString(){return La(this.configs)+(this.hasSemanticContext?",hasSemanticContext="+this.hasSemanticContext:"")+(this.uniqueAlt!==ja.INVALID_ALT_NUMBER?",uniqueAlt="+this.uniqueAlt:"")+(null!==this.conflictingAlts?",conflictingAlts="+this.conflictingAlts:"")+(this.dipsIntoOuterContext?",dipsIntoOuterContext":"")}computeHashCode(){let t=Aa.initialize();return this.configs.forEach((e=>{t=Aa.update(t,e.hashCode())})),t=Aa.finish(t,this.configs.length),t}},Ea(j,"ATNConfigSet"),j),tr=(Ea($=class extends Va{},"BasicState"),(0,js.Z)($,"stateType",Va.BASIC),$),er=(Ea(tt=class extends Va{constructor(){super(...arguments),(0,js.Z)(this,"decision",-1),(0,js.Z)(this,"nonGreedy",!1)}},"DecisionState"),tt),sr=(Ea(et=class extends er{constructor(){super(...arguments),(0,js.Z)(this,"endState",void 0)}},"BlockStartState"),et),ar=(Ea(st=class extends Va{constructor(){super(...arguments),(0,js.Z)(this,"startState",void 0)}},"BlockEndState"),(0,js.Z)(st,"stateType",Va.BLOCK_END),st),rr=(Ea(at=class extends Va{constructor(){super(...arguments),(0,js.Z)(this,"loopBackState",void 0)}},"LoopEndState"),(0,js.Z)(at,"stateType",Va.LOOP_END),at),ir=(Ea(rt=class extends Va{constructor(){super(...arguments),(0,js.Z)(this,"stopState",void 0),(0,js.Z)(this,"isLeftRecursiveRule",!1),(0,js.Z)(this,"isPrecedenceRule",!1)}},"RuleStartState"),(0,js.Z)(rt,"stateType",Va.RULE_START),rt),cr=(Ea(it=class extends Va{},"RuleStopState"),(0,js.Z)(it,"stateType",Va.RULE_STOP),it),nr=(Ea(ct=class extends er{},"TokensStartState"),(0,js.Z)(ct,"stateType",Va.TOKEN_START),ct),hr=(Ea(nt=class extends er{},"PlusLoopbackState"),(0,js.Z)(nt,"stateType",Va.PLUS_LOOP_BACK),nt),Er=(Ea(ht=class extends Va{},"StarLoopbackState"),(0,js.Z)(ht,"stateType",Va.STAR_LOOP_BACK),ht),Tr=(Ea(Et=class extends er{constructor(){super(...arguments),(0,js.Z)(this,"loopBackState",void 0),(0,js.Z)(this,"precedenceRuleDecision",!1)}},"StarLoopEntryState"),(0,js.Z)(Et,"stateType",Va.STAR_LOOP_ENTRY),Et),or=(Ea(Tt=class extends sr{constructor(){super(...arguments),(0,js.Z)(this,"loopBackState",void 0)}},"PlusBlockStartState"),(0,js.Z)(Tt,"stateType",Va.PLUS_BLOCK_START),Tt),Rr=(Ea(ot=class extends sr{},"StarBlockStartState"),(0,js.Z)(ot,"stateType",Va.STAR_BLOCK_START),ot),Ar=(Ea(Rt=class extends sr{},"BasicBlockStartState"),(0,js.Z)(Rt,"stateType",Va.BLOCK_START),Rt),Sr=(St=new WeakMap,Ea(At=class extends la{constructor(t,e){super(t),(0,js.Z)(this,"labelValue",void 0),r(this,St,{writable:!0,value:void 0}),this.labelValue=e,$s(this,St,Sa.of(e,e))}get label(){return ea(this,St)}get transitionType(){return la.ATOM}matches(t){return this.labelValue===t}toString(){return this.labelValue.toString()}},"AtomTransition"),At),lr=(Ea(lt=class extends la{constructor(t,e,s,a){super(t),(0,js.Z)(this,"ruleIndex",void 0),(0,js.Z)(this,"precedence",void 0),(0,js.Z)(this,"followState",void 0),this.ruleIndex=e,this.precedence=s,this.followState=a}get isEpsilon(){return!0}get transitionType(){return la.RULE}matches(t,e,s){return!1}},"RuleTransition"),lt),Or=(It=new WeakMap,Ea(Ot=class extends la{constructor(t,e,s){super(t),(0,js.Z)(this,"start",void 0),(0,js.Z)(this,"stop",void 0),r(this,It,{writable:!0,value:new Sa}),this.start=e,this.stop=s,ea(this,It).addRange(e,s)}get label(){return ea(this,It)}get transitionType(){return la.RANGE}matches(t,e,s){return t>=this.start&&t<=this.stop}toString(){return"'"+String.fromCharCode(this.start)+"'..'"+String.fromCharCode(this.stop)+"'"}},"RangeTransition"),Ot),Ir=(Ea(ut=class extends la{constructor(t,e,s,a){super(t),(0,js.Z)(this,"ruleIndex",void 0),(0,js.Z)(this,"actionIndex",void 0),(0,js.Z)(this,"isCtxDependent",void 0),this.ruleIndex=e,this.actionIndex=void 0===s?-1:s,this.isCtxDependent=void 0!==a&&a}get isEpsilon(){return!0}get transitionType(){return la.ACTION}matches(t,e,s){return!1}toString(){return"action_"+this.ruleIndex+":"+this.actionIndex}},"ActionTransition"),ut),ur=(Lt=new WeakMap,Ea(Nt=class extends la{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;super(t),r(this,Lt,{writable:!0,value:void 0}),$s(this,Lt,e)}get outermostPrecedenceReturn(){return ea(this,Lt)}get isEpsilon(){return!0}get transitionType(){return la.EPSILON}matches(){return!1}toString(){return"epsilon"}},"EpsilonTransition"),Nt),Nr=(Ea(Ct=class extends la{get transitionType(){return la.WILDCARD}matches(t,e,s){return t>=e&&t<=s}toString(){return"."}},"WildcardTransition"),Ct),Lr=(Ea(_t=class extends la{constructor(t){super(t)}},"AbstractPredicateTransition"),_t),Cr=(Ea(Pt=class extends Lr{constructor(t,e,s,a){super(t),(0,js.Z)(this,"ruleIndex",void 0),(0,js.Z)(this,"predIndex",void 0),(0,js.Z)(this,"isCtxDependent",void 0),this.ruleIndex=e,this.predIndex=s,this.isCtxDependent=a}get isEpsilon(){return!0}matches(t,e,s){return!1}get transitionType(){return la.PREDICATE}getPredicate(){return new Xa.Predicate(this.ruleIndex,this.predIndex,this.isCtxDependent)}toString(){return"pred_"+this.ruleIndex+":"+this.predIndex}},"PredicateTransition"),Pt),_r=(Ea(Mt=class extends Lr{constructor(t,e){super(t),(0,js.Z)(this,"precedence",void 0),this.precedence=e}get isEpsilon(){return!0}matches(t,e,s){return!1}getPredicate(){return new Xa.PrecedencePredicate(this.precedence)}get transitionType(){return la.PRECEDENCE}toString(){return this.precedence+" >= _p"}},"PrecedencePredicateTransition"),Mt),Pr=0,Mr=1,dr=2,Ur=3,mr=4,Dr=5,pr=6,gr=7,xr=(Ea(dt=class{constructor(){(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),this.actionType=pr}equals(t){return t===this}hashCode(){return pr}execute(t){t.skip()}toString(){return"skip"}},"LexerSkipAction"),(0,js.Z)(dt,"instance",new dt),dt),kr=(mt=new WeakMap,Ea(Ut=class t{constructor(t){(0,js.Z)(this,"channel",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),r(this,mt,{writable:!0,value:void 0}),this.actionType=Pr,this.channel=t}execute(t){t.channel=this.channel}hashCode(){if(void 0===ea(this,mt)){let t=Aa.initialize();t=Aa.update(t,this.actionType),t=Aa.update(t,this.channel),$s(this,mt,Aa.finish(t,2))}return ea(this,mt)}equals(e){return this===e||e instanceof t&&this.channel===e.channel}toString(){return"channel("+this.channel+")"}},"LexerChannelAction"),Ut),Hr=(pt=new WeakMap,Ea(Dt=class t{constructor(t,e){(0,js.Z)(this,"ruleIndex",void 0),(0,js.Z)(this,"actionIndex",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!0),r(this,pt,{writable:!0,value:void 0}),this.actionType=Mr,this.ruleIndex=t,this.actionIndex=e}execute(t){t.action(null,this.ruleIndex,this.actionIndex)}hashCode(){if(void 0===ea(this,pt)){let t=Aa.initialize();t=Aa.update(t,this.actionType),t=Aa.update(t,this.ruleIndex),t=Aa.update(t,this.actionIndex),$s(this,pt,Aa.finish(t,3))}return ea(this,pt)}equals(e){return this===e||e instanceof t&&(this.ruleIndex===e.ruleIndex&&this.actionIndex===e.actionIndex)}},"LexerCustomAction"),Dt),Gr=(Ea(gt=class{constructor(){(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),this.actionType=Ur}equals(t){return t===this}hashCode(){return Ur}execute(t){t.more()}toString(){return"more"}},"LexerMoreAction"),(0,js.Z)(gt,"instance",new gt),gt),Fr=(kt=new WeakMap,Ea(xt=class t{constructor(t){(0,js.Z)(this,"type",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),r(this,kt,{writable:!0,value:void 0}),this.actionType=gr,this.type=t}execute(t){t.type=this.type}hashCode(){if(void 0===ea(this,kt)){let t=Aa.initialize();t=Aa.update(t,this.actionType),t=Aa.update(t,this.type),$s(this,kt,Aa.finish(t,2))}return ea(this,kt)}equals(e){return this===e||e instanceof t&&this.type===e.type}toString(){return"type("+this.type+")"}},"LexerTypeAction"),xt),vr=(Gt=new WeakMap,Ea(Ht=class t{constructor(t){(0,js.Z)(this,"mode",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),r(this,Gt,{writable:!0,value:void 0}),this.actionType=Dr,this.mode=t}execute(t){t.pushMode(this.mode)}hashCode(){if(void 0===ea(this,Gt)){let t=Aa.initialize();t=Aa.update(t,this.actionType),t=Aa.update(t,this.mode),$s(this,Gt,Aa.finish(t,2))}return ea(this,Gt)}equals(e){return this===e||e instanceof t&&this.mode===e.mode}toString(){return"pushMode("+this.mode+")"}},"LexerPushModeAction"),Ht),Br=(Ea(Ft=class{constructor(){(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),this.actionType=mr}equals(t){return t===this}hashCode(){return mr}execute(t){t.popMode()}toString(){return"popMode"}},"LexerPopModeAction"),(0,js.Z)(Ft,"instance",new Ft),Ft),yr=(Bt=new WeakMap,Ea(vt=class t{constructor(t){(0,js.Z)(this,"mode",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),r(this,Bt,{writable:!0,value:void 0}),this.actionType=dr,this.mode=t}execute(t){t.mode=this.mode}hashCode(){if(void 0===ea(this,Bt)){let t=Aa.initialize();t=Aa.update(t,this.actionType),t=Aa.update(t,this.mode),$s(this,Bt,Aa.finish(t,2))}return ea(this,Bt)}equals(e){return this===e||e instanceof t&&this.mode===e.mode}toString(){return"mode("+this.mode+")"}},"LexerModeAction"),vt),fr=(yt=class t{constructor(t){(0,js.Z)(this,"data",[]),(0,js.Z)(this,"pos",0),(0,js.Z)(this,"deserializationOptions",void 0),(0,js.Z)(this,"actionFactories",void 0),t||(t={readOnly:!1,verifyATN:!0,generateRuleBypassTransitions:!1}),this.deserializationOptions=t}deserialize(t){this.data=t,this.checkVersion();const e=this.readATN();this.readStates(e),this.readRules(e),this.readModes(e);const s=[];return this.readSets(e,s),this.readEdges(e,s),this.readDecisions(e),this.readLexerActions(e),this.markPrecedenceDecisions(e),this.verifyATN(e),this.deserializationOptions.generateRuleBypassTransitions&&e.grammarType===ja.PARSER&&(this.generateRuleBypassTransitions(e),this.verifyATN(e)),e}checkVersion(){const e=this.data[this.pos++];if(e!==t.SERIALIZED_VERSION)throw new Error("Could not deserialize ATN with version "+e+" (expected "+t.SERIALIZED_VERSION+").")}readATN(){const t=this.data[this.pos++],e=this.data[this.pos++];return new ja(t,e)}readStates(t){let e,s;const a=[],r=[],i=this.data[this.pos++];for(let E=0;E0;)r.addTransition(h.transitions[E-1]),h.transitions=h.transitions.slice(-1);t.ruleToStartState[e].addTransition(new ur(r)),n&&i.addTransition(new ur(n));const T=new tr;t.addState(T),T.addTransition(new Sr(i,t.ruleToTokenType[e])),r.addTransition(new ur(T))}stateIsEndStateFor(t,e){if(t.ruleIndex!==e)return null;if(!(t instanceof Tr))return null;const s=t.transitions[t.transitions.length-1].target;return s instanceof rr&&s.epsilonOnlyTransitions&&s.transitions[0].target instanceof cr?t:null}markPrecedenceDecisions(t){for(const e of t.states)if(e instanceof Tr&&t.ruleToStartState[e.ruleIndex].isPrecedenceRule){const t=e.transitions[e.transitions.length-1].target;t instanceof rr&&t.epsilonOnlyTransitions&&t.transitions[0].target instanceof cr&&(e.precedenceRuleDecision=!0)}}verifyATN(t){if(this.deserializationOptions.verifyATN)for(const e of t.states)if(null!==e)if(this.checkCondition(e.epsilonOnlyTransitions||e.transitions.length<=1),e instanceof or)this.checkCondition(null!==e.loopBackState);else if(e instanceof Tr)if(this.checkCondition(null!==e.loopBackState),this.checkCondition(2===e.transitions.length),e.transitions[0].target instanceof Rr)this.checkCondition(e.transitions[1].target instanceof rr),this.checkCondition(!e.nonGreedy);else{if(!(e.transitions[0].target instanceof rr))throw new Error("IllegalState");this.checkCondition(e.transitions[1].target instanceof Rr),this.checkCondition(e.nonGreedy)}else e instanceof Er?(this.checkCondition(1===e.transitions.length),this.checkCondition(e.transitions[0].target instanceof Tr)):e instanceof rr?this.checkCondition(null!==e.loopBackState):e instanceof ir?this.checkCondition(null!==e.stopState):e instanceof sr?this.checkCondition(null!==e.endState):e instanceof ar?this.checkCondition(null!==e.startState):e instanceof er?this.checkCondition(e.transitions.length<=1||e.decision>=0):this.checkCondition(e.transitions.length<=1||e instanceof cr)}checkCondition(t,e){if(!t)throw void 0!==e&&null!==e||(e="IllegalState"),e}edgeFactory(t,e,s,a,r,i,c){const n=t.states[s];switch(e){case la.EPSILON:return new ur(n);case la.RANGE:return new Or(n,0!==i?ca.EOF:a,r);case la.RULE:return new lr(t.states[a],r,i,n);case la.PREDICATE:return new Cr(n,a,r,0!==i);case la.PRECEDENCE:return new _r(n,a);case la.ATOM:return new Sr(n,0!==i?ca.EOF:a);case la.ACTION:return new Ir(n,a,r,0!==i);case la.SET:return new Oa(n,c[a]);case la.NOT_SET:return new Ia(n,c[a]);case la.WILDCARD:return new Nr(n);default:throw new Error("The specified transition type: "+e+" is not valid.")}}stateFactory(e,s){const a=t.stateTypeMapper.get(e);if(!a)throw new Error("The specified state type "+e+" is not valid.");const r=new a;return r.ruleIndex=s,r}lexerActionFactory(e,s,a){const r=t.lexerActionFactoryMapper.get(e);if(!r)throw new Error("The specified lexer action type "+e+" is not valid.");return r(s,a)}},Ea(yt,"ATNDeserializer"),(0,js.Z)(yt,"SERIALIZED_VERSION",4),(0,js.Z)(yt,"stateTypeMapper",new Map([[Va.INVALID_TYPE,void 0],[Va.BASIC,tr],[Va.RULE_START,ir],[Va.BLOCK_START,Ar],[Va.PLUS_BLOCK_START,or],[Va.STAR_BLOCK_START,Rr],[Va.TOKEN_START,nr],[Va.RULE_STOP,cr],[Va.BLOCK_END,ar],[Va.STAR_LOOP_BACK,Er],[Va.STAR_LOOP_ENTRY,Tr],[Va.PLUS_LOOP_BACK,hr],[Va.LOOP_END,rr]])),(0,js.Z)(yt,"lexerActionFactoryMapper",new Map([[Pr,t=>new kr(t)],[Mr,(t,e)=>new Hr(t,e)],[dr,t=>new yr(t)],[Ur,()=>Gr.instance],[mr,()=>Br.instance],[Dr,t=>new vr(t)],[pr,()=>xr.instance],[gr,t=>new Fr(t)]])),yt),Yr=(Yt=new WeakMap,Ea(ft=class t extends Fa{constructor(){super(...arguments),r(this,Yt,{writable:!0,value:[]})}clear(){super.clear(),$s(this,Yt,[])}get(t){return super.get(t)}set(t,e){const s=super.set(t,e);return void 0===s&&ea(this,Yt).push(t),s}setIfAbsent(t,e){const s=super.setIfAbsent(t,e);return void 0===s&&ea(this,Yt).push(t),s}values(){return{[Symbol.iterator]:()=>{let t=0;return{next:()=>t0)for(const e of this.atn.modeToStartState)this.data.push(e.stateNumber)}addRuleStatesAndLexerTokenTypes(){const t=this.atn.ruleToStartState.length;this.data.push(t);for(let e=0;e",this.predicates?t+=La(this.predicates):t+=this.prediction),t.toString()}},Ea(bt,"DFAState"),bt),br=(Ea(Wt=class{constructor(t,e){return(0,js.Z)(this,"atn",void 0),(0,js.Z)(this,"sharedContextCache",void 0),this.atn=t,this.sharedContextCache=e,this}getCachedContext(t){if(!this.sharedContextCache)return t;const e=new Fa(xa.instance);return Ba(t,this.sharedContextCache,e)}},"ATNSimulator"),(0,js.Z)(Wt,"ERROR",wr.fromState(2147483647)),Wt),Wr=(Ea(Vt=class t{static createWithCodePoint(e,s){return t.createWithCodePointRange(e,s,s)}static createWithCodePointRange(t,e,s){return e===s?new Sr(t,e):new Or(t,e,s)}},"CodePointTransitions"),Ea(Xt=class{constructor(t){(0,js.Z)(this,"decision",0),(0,js.Z)(this,"invocations",0),(0,js.Z)(this,"timeInPrediction",0),(0,js.Z)(this,"sllTotalLook",0),(0,js.Z)(this,"sllMinLook",0),(0,js.Z)(this,"sllMaxLook",0),(0,js.Z)(this,"sllMaxLookEvent",void 0),(0,js.Z)(this,"llTotalLook",0),(0,js.Z)(this,"llMinLook",0),(0,js.Z)(this,"llMaxLook",0),(0,js.Z)(this,"llMaxLookEvent",void 0),(0,js.Z)(this,"contextSensitivities",void 0),(0,js.Z)(this,"errors",void 0),(0,js.Z)(this,"ambiguities",void 0),(0,js.Z)(this,"predicateEvals",void 0),(0,js.Z)(this,"sllATNTransitions",0),(0,js.Z)(this,"sllDFATransitions",0),(0,js.Z)(this,"llFallback",0),(0,js.Z)(this,"llATNTransitions",0),(0,js.Z)(this,"llDFATransitions",0),this.decision=t,this.contextSensitivities=[],this.errors=[],this.ambiguities=[],this.predicateEvals=[]}toString1(){return"{decision="+this.decision+", contextSensitivities="+this.contextSensitivities.length+", errors="+this.errors.length+", ambiguities="+this.ambiguities.length+", sllLookahead="+this.sllTotalLook+", sllATNTransitions="+this.sllATNTransitions+", sllDFATransitions="+this.sllDFATransitions+", llFallback="+this.llFallback+", llLookahead="+this.llTotalLook+", llATNTransitions="+this.llATNTransitions+"}"}},"DecisionInfo"),Xt),Vr=(Ea(Kt=class t extends Za{constructor(e,s,a,r){var i;return super(e,s,null!==a&&void 0!==a?a:e.context,a?Xa.NONE:e.semanticContext),(0,js.Z)(this,"lexerActionExecutor",void 0),(0,js.Z)(this,"passedThroughNonGreedyDecision",void 0),this.lexerActionExecutor=a?r:null!==(i=e.lexerActionExecutor)&&void 0!==i?i:null,this.passedThroughNonGreedyDecision=t.checkNonGreedyDecision(e,this.state),this}static createWithExecutor(e,s,a){return new t(e,s,e.context,a)}static createWithConfig(e,s,a){return new t(s,e,null!==a&&void 0!==a?a:null,s.lexerActionExecutor)}static createWithContext(e,s,a){return new t({alt:s},e,a,null)}static checkNonGreedyDecision(t,e){return t.passedThroughNonGreedyDecision||"nonGreedy"in e&&e.nonGreedy}hashCode(){if(void 0===this.cachedHashCode){let t=Aa.initialize(7);t=Aa.update(t,this.state.stateNumber),t=Aa.update(t,this.alt),t=Aa.updateFromComparable(t,this.context),t=Aa.updateFromComparable(t,this.semanticContext),t=Aa.update(t,this.passedThroughNonGreedyDecision?1:0),t=Aa.updateFromComparable(t,this.lexerActionExecutor),t=Aa.finish(t,6),this.cachedHashCode=t}return this.cachedHashCode}equals(t){return this===t||this.passedThroughNonGreedyDecision===t.passedThroughNonGreedyDecision&&(this.lexerActionExecutor&&t.lexerActionExecutor?this.lexerActionExecutor.equals(t.lexerActionExecutor):!t.lexerActionExecutor)&&super.equals(t)}},"LexerATNConfig"),Kt),Xr=(Ea(Qt=class{syntaxError(t,e,s,a,r,i){}reportAmbiguity(t,e,s,a,r,i,c){}reportAttemptingFullContext(t,e,s,a,r,i){}reportContextSensitivity(t,e,s,a,r,i){}},"BaseErrorListener"),Qt),Kr=(Ea(Jt=class extends Xr{syntaxError(t,e,s,a,r,i){console.error("line "+s+":"+a+" "+r)}},"ConsoleErrorListener"),(0,js.Z)(Jt,"instance",new Jt),Jt),Qr=(Zt=class extends Xr{constructor(t){return super(),this.delegates=t,this}syntaxError(t,e,s,a,r,i){this.delegates.forEach((c=>{c.syntaxError(t,e,s,a,r,i)}))}reportAmbiguity(t,e,s,a,r,i,c){this.delegates.forEach((n=>{n.reportAmbiguity(t,e,s,a,r,i,c)}))}reportAttemptingFullContext(t,e,s,a,r,i){this.delegates.forEach((c=>{c.reportAttemptingFullContext(t,e,s,a,r,i)}))}reportContextSensitivity(t,e,s,a,r,i){this.delegates.forEach((c=>{c.reportContextSensitivity(t,e,s,a,r,i)}))}},Ea(Zt,"ProxyErrorListener"),Zt),Jr=(jt=new WeakMap,zt=new WeakMap,qt=class t{constructor(){(0,js.Z)(this,"interpreter",void 0),r(this,jt,{writable:!0,value:[Kr.instance]}),r(this,zt,{writable:!0,value:-1})}checkVersion(t){const e="4.13.1";e!==t&&console.error("ANTLR runtime and generated code versions disagree: "+e+"!="+t)}addErrorListener(t){ea(this,jt).push(t)}removeErrorListeners(){$s(this,jt,[])}removeErrorListener(t){for(let e=0;es.set(t,e))),t.ruleIndexMapCache.set(e,s)),s}getTokenType(t){const e=this.getTokenTypeMap().get(t);return e||ca.INVALID_TYPE}getErrorHeader(t){var e,s;return"line "+(null===(e=t.offendingToken)||void 0===e?void 0:e.line)+":"+(null===(s=t.offendingToken)||void 0===s?void 0:s.column)}get errorListenerDispatch(){return new Qr(ea(this,jt))}sempred(t,e,s){return!0}precpred(t,e){return!0}action(t,e,s){}get atn(){return this.interpreter.atn}get state(){return ea(this,zt)}set state(t){$s(this,zt,t)}getSerializedATN(){throw new Error("there is no serialized ATN")}getParseInfo(){return null}},Ea(qt,"Recognizer"),(0,js.Z)(qt,"EOF",-1),(0,js.Z)(qt,"tokenTypeMapCache",new Map),(0,js.Z)(qt,"ruleIndexMapCache",new Map),qt),Zr=(te=new WeakMap,$t=class t{constructor(t){var e,s,a,i,c,n;(0,js.Z)(this,"source",void 0),(0,js.Z)(this,"tokenIndex",void 0),(0,js.Z)(this,"start",void 0),(0,js.Z)(this,"stop",void 0),(0,js.Z)(this,"type",void 0),(0,js.Z)(this,"line",void 0),(0,js.Z)(this,"column",void 0),(0,js.Z)(this,"channel",void 0),r(this,te,{writable:!0,value:void 0}),this.type=t.type,this.source=t.source,this.tokenIndex=null!==(e=t.tokenIndex)&&void 0!==e?e:-1,this.line=null!==(s=t.line)&&void 0!==s?s:0,this.column=null!==(a=t.column)&&void 0!==a?a:-1,this.channel=null!==(i=t.channel)&&void 0!==i?i:ca.DEFAULT_CHANNEL,this.start=null!==(c=t.start)&&void 0!==c?c:0,this.stop=null!==(n=t.stop)&&void 0!==n?n:0,$s(this,te,t.text),null!==t.source[0]&&(this.line=t.source[0].line,this.column=t.source[0].column)}static fromToken(e){let s;return s="source"in e?e.source:[e.tokenSource,e.inputStream],new t({type:e.type,line:e.line,tokenIndex:e.tokenIndex,column:e.column,channel:e.channel,start:e.start,stop:e.stop,text:e.text,source:s})}static fromType(e,s){return new t({type:e,text:s,source:t.EMPTY_SOURCE})}static fromSource(e,s,a,r,i){return new t({type:s,channel:a,start:r,stop:i,source:e})}get tokenSource(){return this.source[0]}get inputStream(){return this.source[1]}clone(){return new t({source:this.source,type:this.type,channel:this.channel,start:this.start,stop:this.stop,tokenIndex:this.tokenIndex,line:this.line,column:this.column,text:ea(this,te)})}toString(t){let e="";this.channel>0&&(e=",channel="+this.channel);let s=this.text;s?(s=s.replace(/\n/g,"\\n"),s=s.replace(/\r/g,"\\r"),s=s.replace(/\t/g,"\\t")):s="";let a=String(this.type);var r;t&&(a=null!==(r=t.vocabulary.getDisplayName(this.type))&&void 0!==r?r:"");return"[@"+this.tokenIndex+","+this.start+":"+this.stop+"='"+s+"',<"+a+">"+e+","+this.line+":"+this.column+"]"}get text(){if(ea(this,te))return ea(this,te);const t=this.inputStream;if(!t)return;const e=t.size;return this.start"}set text(t){$s(this,te,t)}setText(t){$s(this,te,t)}setType(t){this.type=t}setLine(t){this.line=t}setCharPositionInLine(t){this.column=t}setChannel(t){this.channel=t}setTokenIndex(t){this.tokenIndex=t}},Ea($t,"CommonToken"),(0,js.Z)($t,"EMPTY_SOURCE",[null,null]),$t),qr=(Ea(ee=class{constructor(t){(0,js.Z)(this,"copyText",!1),this.copyText=null!==t&&void 0!==t&&t}create(t,e,s,a,r,i,c,n){const h=Zr.fromSource(t,e,a,r,i);return h.line=c,h.column=n,s?h.text=s:this.copyText&&null!==t[1]&&(h.text=t[1].getTextFromRange(r,i)),h}},"CommonTokenFactory"),(0,js.Z)(ee,"DEFAULT",new ee),ee),jr=(se=class t extends Error{constructor(e){super(e.message),(0,js.Z)(this,"ctx",void 0),(0,js.Z)(this,"offendingToken",null),(0,js.Z)(this,"offendingState",-1),(0,js.Z)(this,"recognizer",void 0),(0,js.Z)(this,"input",void 0),Error.captureStackTrace&&Error.captureStackTrace(this,t),this.message=e.message,this.recognizer=e.recognizer,this.input=e.input,this.ctx=e.ctx,null!==this.recognizer&&(this.offendingState=this.recognizer.state)}getExpectedTokens(){return null!==this.recognizer&&null!==this.ctx?this.recognizer.atn.getExpectedTokens(this.offendingState,this.ctx):null}toString(){return this.message}},Ea(se,"RecognitionException"),se),zr=(Ea(ae=class extends jr{constructor(t,e,s,a){super({message:"",recognizer:t,input:e,ctx:null}),(0,js.Z)(this,"startIndex",void 0),(0,js.Z)(this,"deadEndConfigs",void 0),this.startIndex=s,this.deadEndConfigs=a}toString(){let t="";return this.input&&this.startIndex>=0&&this.startIndex0&&void 0!==arguments[0])||arguments[0])&&ea(this,ie).seek(0),$s(this,ce,null),this.type=ca.INVALID_TYPE,this.channel=ca.DEFAULT_CHANNEL,this.tokenStartCharIndex=-1,this.currentTokenColumn=-1,this.currentTokenStartLine=-1,$s(this,Ee,void 0),$s(this,ne,!1),this.mode=t.DEFAULT_MODE,$s(this,he,[]),this.interpreter.reset()}nextToken(){if(null===ea(this,ie))throw new Error("nextToken requires a non-null input stream.");const e=ea(this,ie).mark();try{for(;;){if(ea(this,ne))return this.emitEOF(),ea(this,ce);$s(this,ce,null),this.channel=ca.DEFAULT_CHANNEL,this.tokenStartCharIndex=ea(this,ie).index,this.currentTokenColumn=this.interpreter.column,this.currentTokenStartLine=this.interpreter.line,$s(this,Ee,void 0);let e=!1;for(;;){this.type=ca.INVALID_TYPE;let a=t.SKIP;try{a=this.interpreter.match(ea(this,ie),this.mode)}catch(s){if(!(s instanceof zr))throw s;this.notifyListeners(s),this.recover(s)}if(ea(this,ie).LA(1)===ca.EOF&&$s(this,ne,!0),this.type===ca.INVALID_TYPE&&(this.type=a),this.type===t.SKIP){e=!0;break}if(this.type!==t.MORE)break}if(!e)return null===ea(this,ce)&&this.emit(),ea(this,ce)}}finally{ea(this,ie).release(e)}}skip(){this.type=t.SKIP}more(){this.type=t.MORE}pushMode(t){hi.debug&&console.log("pushMode "+t),ea(this,he).push(this.mode),this.mode=t}popMode(){if(0===ea(this,he).length)throw new Error("Empty Stack");return hi.debug&&console.log("popMode back to "+ea(this,he).slice(0,-1)),this.mode=ea(this,he).pop(),this.mode}get modeStack(){return ea(this,he)}emitToken(t){$s(this,ce,t)}emit(){const t=ea(this,Te).create([this,ea(this,ie)],this.type,ea(this,Ee),this.channel,this.tokenStartCharIndex,this.getCharIndex()-1,this.currentTokenStartLine,this.currentTokenColumn);return this.emitToken(t),t}emitEOF(){const t=ea(this,Te).create([this,ea(this,ie)],ca.EOF,void 0,ca.DEFAULT_CHANNEL,ea(this,ie).index,ea(this,ie).index-1,this.line,this.column);return this.emitToken(t),t}getCharIndex(){return ea(this,ie).index}getAllTokens(){const t=[];let e=this.nextToken();for(;e.type!==ca.EOF;)t.push(e),e=this.nextToken();return t}notifyListeners(t){const e=this.tokenStartCharIndex,s=ea(this,ie).index,a=ea(this,ie).getTextFromRange(e,s),r="token recognition error at: '"+this.getErrorDisplay(a)+"'";this.errorListenerDispatch.syntaxError(this,null,this.currentTokenStartLine,this.currentTokenColumn,r,t)}getErrorDisplay(t){return t}getErrorDisplayForChar(t){return t.charCodeAt(0)===ca.EOF?"":"\n"===t?"\\n":"\t"===t?"\\t":"\r"===t?"\\r":t}getCharErrorDisplay(t){return"'"+this.getErrorDisplayForChar(t)+"'"}recover(t){ea(this,ie).LA(1)!==ca.EOF&&(t instanceof zr?this.interpreter.consume(ea(this,ie)):ea(this,ie).consume())}get inputStream(){return ea(this,ie)}set inputStream(t){this.reset(!1),$s(this,ie,t)}set tokenFactory(t){$s(this,Te,t)}get tokenFactory(){return ea(this,Te)}get sourceName(){return ea(this,ie).getSourceName()}get line(){return this.interpreter.line}set line(t){this.interpreter.line=t}get column(){return this.interpreter.column}set column(t){this.interpreter.column=t}get text(){return ea(this,Ee)?ea(this,Ee):this.interpreter.getText(ea(this,ie))}set text(t){$s(this,Ee,t)}},Ea(re,"Lexer"),(0,js.Z)(re,"DEFAULT_MODE",0),(0,js.Z)(re,"MORE",-2),(0,js.Z)(re,"SKIP",-3),(0,js.Z)(re,"DEFAULT_TOKEN_CHANNEL",ca.DEFAULT_CHANNEL),(0,js.Z)(re,"HIDDEN",ca.HIDDEN_CHANNEL),re),ti=(oe=class t extends Error{constructor(e){super(),Error.captureStackTrace(this,t)}},Ea(oe,"ParseCancellationException"),oe),ei=(Re=class{static parseInterpreterData(t){const e=[],s=[],a=[],r=[],i=[],c=t.split("\n");let n=0,h=c[n++];if("token literal names:"!==h)throw new Error("Unexpected data entry");for(;;){if(h=c[n++],0===h.length)break;r.push("null"===h?null:h)}if(h=c[n++],"token symbolic names:"!==h)throw new Error("Unexpected data entry");for(;;){if(h=c[n++],0===h.length)break;i.push("null"===h?null:h)}if(h=c[n++],"rule names:"!==h)throw new Error("Unexpected data entry");for(;;){if(h=c[n++],0===h.length)break;e.push(h)}if(h=c[n++],"channel names:"===h){for(;;){if(h=c[n++],0===h.length)break;s.push(h)}if(h=c[n++],"mode names:"!==h)throw new Error("Unexpected data entry");for(;;){if(h=c[n++],0===h.length)break;a.push(h)}}if(h=c[n++],"atn:"!==h)throw new Error("Unexpected data entry");h=c[n++];const E=h.split(",");let T;const o=[];for(let R=0;R0?s:void 0,modes:a.length>0?a:void 0}}},Ea(Re,"InterpreterDataReader"),Se=new WeakMap,Ae=class t extends Ha{constructor(){super(...arguments),r(this,Se,{writable:!0,value:[]})}getOrAdd(t){const e=this.size,s=super.getOrAdd(t);return this.size>e&&ea(this,Se).push(t),s}equals(e){return e instanceof t&&super.equals(e)}add(t){return!!super.add(t)&&(ea(this,Se).push(t),!0)}clear(){super.clear(),$s(this,Se,[])}*[Symbol.iterator](){yield*ea(this,Se)}toArray(){return ea(this,Se).slice(0)}},Ea(Ae,"OrderedHashSet"),Ae),si=(Ea(le=class extends $a{constructor(){super(),this.configLookup=new ei}},"OrderedATNConfigSet"),le),ai=(Ie=new WeakMap,Ea(Oe=class t{constructor(t,e){(0,js.Z)(this,"offset",void 0),(0,js.Z)(this,"action",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!0),r(this,Ie,{writable:!0,value:void 0}),this.actionType=e.actionType,this.offset=t,this.action=e}execute(t){this.action.execute(t)}hashCode(){if(void 0===ea(this,Ie)){let t=Aa.initialize();t=Aa.update(t,this.offset),t=Aa.updateFromComparable(t,this.action),$s(this,Ie,Aa.finish(t,2))}return ea(this,Ie)}equals(e){return this===e||e instanceof t&&(this.offset===e.offset&&this.action===e.action)}},"LexerIndexedCustomAction"),Oe),ri=(Ne=new WeakMap,ue=class t{constructor(t){return(0,js.Z)(this,"lexerActions",void 0),(0,js.Z)(this,"actionType",void 0),(0,js.Z)(this,"isPositionDependent",!1),r(this,Ne,{writable:!0,value:void 0}),this.actionType=-1,this.lexerActions=null!==t&&void 0!==t?t:[],this}static append(e,s){if(null===e)return new t([s]);const a=e.lexerActions.concat([s]);return new t(a)}fixOffsetBeforeMatch(e){let s=null;for(let t=0;te.equals(t.lexerActions[s]))))}},Ea(ue,"LexerActionExecutor"),ue),ii=(Le=class{constructor(t,e){(0,js.Z)(this,"dfa",void 0),(0,js.Z)(this,"vocabulary",void 0),this.dfa=t,this.vocabulary=e}toString(){if(!this.dfa.s0)return"";let t="";const e=this.dfa.getStates();for(const s of e){let e=0;e=s.edges.length;for(let a=0;a",t+=this.getStateString(e),t+="\n"}}}return t}getEdgeLabel(t){const e=this.vocabulary.getDisplayName(t-1);return"".concat(e)}getStateString(t){const e=t.stateNumber,s=(t.isAcceptState?":":"")+"s"+e+(t.requiresFullContext?"^":"");return t.isAcceptState?null!==t.predicates?"".concat(s,"=>").concat(t.predicates.toString()):"".concat(s,"=>").concat(t.prediction):"".concat(s)}},Ea(Le,"DFASerializer"),Le),ci=(Ce=class extends ii{constructor(t){super(t,Ra.EMPTY_VOCABULARY),(0,js.Z)(this,"getEdgeLabel",(t=>"'"+String.fromCharCode(t)+"'"))}},Ea(Ce,"LexerDFASerializer"),Ce),ni=(Pe=new WeakMap,_e=class{constructor(t,e){(0,js.Z)(this,"s0",void 0),(0,js.Z)(this,"decision",void 0),(0,js.Z)(this,"atnStartState",void 0),(0,js.Z)(this,"isPrecedenceDfa",void 0),r(this,Pe,{writable:!0,value:new Map}),(0,js.Z)(this,Symbol.iterator,(()=>ea(this,Pe).values()[Symbol.iterator]())),(0,js.Z)(this,"getPrecedenceStartState",(t=>{if(!this.isPrecedenceDfa)throw new Error("Only precedence DFAs may contain a precedence start state.");if(!(!this.s0||!this.s0.edges||t<0||t>=this.s0.edges.length))return this.s0.edges[t]})),(0,js.Z)(this,"setPrecedenceStartState",((t,e)=>{if(!this.isPrecedenceDfa)throw new Error("Only precedence DFAs may contain a precedence start state.");t<0||!this.s0||(this.s0.edges[t]=e)})),this.atnStartState=t,this.decision=null!==e&&void 0!==e?e:0;let s=!1;t instanceof Tr&&t.precedenceRuleDecision&&(s=!0,this.s0=wr.fromState(-1)),this.isPrecedenceDfa=s}getStates(){const t=[...ea(this,Pe).values()];return t.sort(((t,e)=>t.stateNumber-e.stateNumber)),t}getState(t){var e;return null!==(e=ea(this,Pe).get(t.configs.hashCode()))&&void 0!==e?e:null}getStateForConfigs(t){var e;return null!==(e=ea(this,Pe).get(t.hashCode()))&&void 0!==e?e:null}addState(t){const e=t.configs.hashCode();ea(this,Pe).has(e)||(ea(this,Pe).set(e,t),t.stateNumber=ea(this,Pe).size-1)}toString(t){var e;if(!t)return this.toString(Ra.EMPTY_VOCABULARY);if(!this.s0)return"";return null!==(e=new ii(this,t).toString())&&void 0!==e?e:""}toLexerString(){var t;if(!this.s0)return"";return null!==(t=new ci(this).toString())&&void 0!==t?t:""}get length(){return ea(this,Pe).size}},Ea(_e,"DFA"),_e),hi=(de=new WeakMap,Ue=new WeakMap,me=new WeakMap,Me=class t extends br{constructor(t,e,s,a){super(e,a),(0,js.Z)(this,"decisionToDFA",void 0),(0,js.Z)(this,"recognizer",null),(0,js.Z)(this,"startIndex",-1),(0,js.Z)(this,"line",1),(0,js.Z)(this,"column",0),(0,js.Z)(this,"mode",$r.DEFAULT_MODE),r(this,de,{writable:!0,value:void 0}),r(this,Ue,{writable:!0,value:void 0}),r(this,me,{writable:!0,value:void 0}),this.decisionToDFA=s,this.recognizer=t,t&&$s(this,Ue,t.options)}match(t,e){this.mode=e;const s=t.mark();try{this.startIndex=t.index,$s(this,de,void 0);const s=this.decisionToDFA[e];return s.s0?this.execATN(t,s.s0):this.matchATN(t)}finally{t.release(s)}}reset(){$s(this,de,void 0),this.startIndex=-1,this.line=1,this.column=0,this.mode=$r.DEFAULT_MODE}clearDFA(){for(let t=0;t=ea(this,Ue).minDFAEdge&&s<=ea(this,Ue).maxDFAEdge){const a=e.edges[s-ea(this,Ue).minDFAEdge];return t.debug&&a&&console.log("reuse state "+e.stateNumber+" edge to "+a.stateNumber),a}}computeTargetState(t,e,s){const a=new si;return this.getReachableConfigSet(t,e.configs,a,s),0===a.length?(a.hasSemanticContext||this.addDFAEdge(e,s,br.ERROR),br.ERROR):this.addDFAEdge(e,s,null,a)}failOrAccept(t,e,s){var a;if(null!==(a=ea(this,de))&&void 0!==a&&a.dfaState){const{dfaState:e,index:s,line:a,column:r}=ea(this,de);return this.accept(t,e.lexerActionExecutor,this.startIndex,s,a,r),e.prediction}if(s===ca.EOF&&t.index===this.startIndex)return ca.EOF;throw new zr(this.recognizer,t,this.startIndex,e)}getReachableConfigSet(e,s,a,r){let i=ja.INVALID_ALT_NUMBER;for(const c of s){const s=c.alt===i;if(!s||!c.passedThroughNonGreedyDecision){t.debug&&console.log("testing %s at %s\n",this.getTokenName(r),c.toString(this.recognizer,!0));for(const t of c.state.transitions){const n=this.getReachableTarget(t,r);if(n){let t=c.lexerActionExecutor;t&&(t=t.fixOffsetBeforeMatch(e.index-this.startIndex));const h=r===ca.EOF,E=Vr.createWithExecutor(c,n,t);this.closure(e,E,a,s,!0,h)&&(i=c.alt)}}}}}accept(e,s,a,r,i,c){t.debug&&console.log("ACTION %s\n",s),e.seek(r),this.line=i,this.column=c,s&&this.recognizer&&s.execute(this.recognizer,e,a)}getReachableTarget(t,e){return t.matches(e,ea(this,Ue).minCodePoint,ea(this,Ue).maxCodePoint)?t.target:void 0}computeStartState(t,e){const s=ua.EMPTY,a=new si;for(let r=0;r{var a;const r=da.create(null!==(a=e.context)&&void 0!==a?a:void 0,s.followState.stateNumber);return Vr.createWithConfig(s.target,e,r)},ea(this,me)[la.PRECEDENCE]=()=>{throw new Error("Precedence predicates are not supported in lexers.")},ea(this,me)[la.PREDICATE]=(e,s,a,r,i)=>{const c=a;return t.debug&&console.log("EVAL rule "+c.ruleIndex+":"+c.predIndex),r.hasSemanticContext=!0,this.evaluatePredicate(e,c.ruleIndex,c.predIndex,i)?Vr.createWithConfig(a.target,s):null},ea(this,me)[la.ACTION]=(t,e,s)=>{if(null===e.context||e.context.hasEmptyPath()){const t=ri.append(e.lexerActionExecutor,this.atn.lexerActions[s.actionIndex]);return Vr.createWithExecutor(e,s.target,t)}return Vr.createWithConfig(s.target,e)},ea(this,me)[la.EPSILON]=(t,e,s)=>Vr.createWithConfig(s.target,e);const e=Ea(((t,e,s,a,r,i)=>i&&s.matches(ca.EOF,ea(this,Ue).minCodePoint,ea(this,Ue).maxCodePoint)?Vr.createWithConfig(s.target,e):null),"simple");ea(this,me)[la.ATOM]=e,ea(this,me)[la.RANGE]=e,ea(this,me)[la.SET]=e}evaluatePredicate(t,e,s,a){if(!this.recognizer)return!0;if(!a)return this.recognizer.sempred(null,e,s);const r=this.column,i=this.line,c=t.index,n=t.mark();try{return this.consume(t),this.recognizer.sempred(null,e,s)}finally{this.column=r,this.line=i,t.seek(c),t.release(n)}}captureSimState(t,e){$s(this,de,{index:t.index,line:this.line,column:this.column,dfaState:e})}addDFAEdge(e,s,a,r){if(!a&&r){const t=r.hasSemanticContext;if(r.hasSemanticContext=!1,a=this.addDFAState(r),t)return a}return sea(this,Ue).maxDFAEdge||(t.debug&&console.log("EDGE "+e+" -> "+a+" upon "+s),e.edges[s-ea(this,Ue).minDFAEdge]=a),a}addDFAState(t){const e=this.decisionToDFA[this.mode],s=e.getStateForConfigs(t);if(s)return s;const a=wr.fromConfigs(t),r=t.firstStopState;return r&&(a.isAcceptState=!0,a.lexerActionExecutor=r.lexerActionExecutor,a.prediction=this.atn.ruleToTokenType[r.state.ruleIndex]),t.setReadonly(!0),e.addState(a),a}},Ea(Me,"LexerATNSimulator"),(0,js.Z)(Me,"debug",!1),Me),Ei=(De=class{constructor(t){(0,js.Z)(this,"atnSimulator",void 0),this.atnSimulator=t}getDecisionInfo(){return this.atnSimulator.getDecisionInfo()}getLLDecisions(){const t=this.atnSimulator.getDecisionInfo(),e=new Array;for(let s=0;s0&&e.push(s)}return e}getTotalTimeInPrediction(){const t=this.atnSimulator.getDecisionInfo();let e=0;for(const s of t)e+=s.timeInPrediction;return e}getTotalSLLLookaheadOps(){const t=this.atnSimulator.getDecisionInfo();let e=0;for(const s of t)e+=s.sllTotalLook;return e}getTotalLLLookaheadOps(){const t=this.atnSimulator.getDecisionInfo();let e=0;for(const s of t)e+=s.llTotalLook;return e}getTotalSLLATNLookaheadOps(){const t=this.atnSimulator.getDecisionInfo();let e=0;for(const s of t)e+=s.sllATNTransitions;return e}getTotalLLATNLookaheadOps(){const t=this.atnSimulator.getDecisionInfo();let e=0;for(const s of t)e+=s.llATNTransitions;return e}getTotalATNLookaheadOps(){const t=this.atnSimulator.getDecisionInfo();let e=0;for(const s of t)e+=s.sllATNTransitions,e+=s.llATNTransitions;return e}getDFASize(t){if(void 0===t){let t=0;const e=this.atnSimulator.decisionToDFA;for(let s=0;s1&&void 0!==arguments[1]?arguments[1]:null,c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,h=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,E=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null;E=null!==(e=E)&&void 0!==e?e:t.context,n=null!==(s=n)&&void 0!==s?s:t.getCurrentToken(),c=null!==(a=c)&&void 0!==a?a:t.getCurrentToken(),i=null!==(r=i)&&void 0!==r?r:t.inputStream,super({message:"",recognizer:t,input:i,ctx:E}),(0,js.Z)(this,"deadEndConfigs",null),(0,js.Z)(this,"startToken",void 0),this.deadEndConfigs=h,this.startToken=c,this.offendingToken=n}},"NoViableAltException"),pe),Ti=(ge=class{constructor(){(0,js.Z)(this,"cacheMap",void 0),this.cacheMap=new Fa(ka.instance)}get(t,e){var s,a;const r=null!==(s=this.cacheMap.get(t))&&void 0!==s?s:null;return null===r?null:null!==(a=r.get(e))&&void 0!==a?a:null}set(t,e,s){let a=this.cacheMap.get(t);a||(a=new Fa(ka.instance),this.cacheMap.set(t,a)),a.set(e,s)}},Ea(ge,"DoubleDict"),ge),oi=(xe=class{hashCode(t){let e=Aa.initialize(7);return e=Aa.update(e,t.state.stateNumber),e=Aa.updateFromComparable(e,t.context),e=Aa.finish(e,2),e}equals(t,e){var s,a;return t.state.stateNumber===e.state.stateNumber&&(null===(s=null===(a=t.context)||void 0===a?void 0:a.equals(e.context))||void 0===s||s)}},Ea(xe,"SubsetEqualityComparer"),(0,js.Z)(xe,"instance",new xe),xe),Ri=(ke=class t{static hasSLLConflictTerminatingPrediction(e,s){if(t.allConfigsInRuleStopStates(s))return!0;if(e===t.SLL&&s.hasSemanticContext){const t=new $a;for(let e of s)e=Za.duplicate(e,Xa.NONE),t.add(e);s=t}const a=t.getConflictingAltSubsets(s);return t.hasConflictingAltSet(a)&&!t.hasStateAssociatedWithOneAlt(s)}static hasConfigInRuleStopState(t){for(const e of t)if(e.state instanceof cr)return!0;return!1}static allConfigsInRuleStopStates(t){for(const e of t)if(!(e.state instanceof cr))return!1;return!0}static resolvesToJustOneViableAlt(e){return t.getSingleViableAlt(e)}static allSubsetsConflict(e){return!t.hasNonConflictingAltSet(e)}static hasNonConflictingAltSet(t){for(const e of t)if(1===e.length)return!0;return!1}static hasConflictingAltSet(t){for(const e of t)if(e.length>1)return!0;return!1}static allSubsetsEqual(t){let e=null;for(const s of t)if(null===e)e=s;else if(s!==e)return!1;return!0}static getUniqueAlt(e){const s=t.getAlts(e);return 1===s.length?s.nextSetBit(0):ja.INVALID_ALT_NUMBER}static getAlts(t){const e=new Wa;return t.forEach((t=>{e.or(t)})),e}static getConflictingAltSubsets(t){const e=new Fa(oi.instance);for(const s of t){let t=e.get(s);t||(t=new Wa,e.set(s,t)),t.set(s.alt)}return Array.from(e.values())}static getStateToAltMap(t){const e=new Fa(xa.instance);for(const s of t){let t=e.get(s.state);t||(t=new Wa,e.set(s.state,t)),t.set(s.alt)}return e}static hasStateAssociatedWithOneAlt(t){const e={};for(const s of t){const t=s.state.stateNumber;e[t]||(e[t]=0),e[t]++}return Object.values(e).some((t=>1===t))}static getSingleViableAlt(t){var e;let s=null;for(const a of t){const t=a.nextSetBit(0);if(null===s)s=t;else if(s!==t)return ja.INVALID_ALT_NUMBER}return null!==(e=s)&&void 0!==e?e:0}},Ea(ke,"PredictionMode"),(0,js.Z)(ke,"SLL",0),(0,js.Z)(ke,"LL",1),(0,js.Z)(ke,"LL_EXACT_AMBIG_DETECTION",2),ke),Ai=(He=class t extends br{constructor(t,e,s,a){super(e,a),(0,js.Z)(this,"predictionMode",void 0),(0,js.Z)(this,"decisionToDFA",void 0),(0,js.Z)(this,"parser",void 0),(0,js.Z)(this,"mergeCache",new Ti),(0,js.Z)(this,"predictionState",void 0),this.parser=t,this.decisionToDFA=s}static getUniqueAlt(t){let e=ja.INVALID_ALT_NUMBER;for(const s of t)if(e===ja.INVALID_ALT_NUMBER)e=s.alt;else if(s.alt!==e)return ja.INVALID_ALT_NUMBER;return e}reset(){}clearDFA(){for(let t=0;t"}getTokenName(t){var e,s;if(t===ca.EOF)return"EOF";const a=(null!==(e=null===(s=this.parser)||void 0===s?void 0:s.vocabulary)&&void 0!==e?e:Ra.EMPTY_VOCABULARY).getDisplayName(t);return a===t.toString()?a:a+"<"+t+">"}getLookaheadName(t){return this.getTokenName(t.LA(1))}dumpDeadEndConfigs(t){console.log("dead end configs: ");const e=t.deadEndConfigs;for(const s of e){let t="no edges";if(s.state.transitions.length>0){const e=s.state.transitions[0];if(e instanceof Sr)t="Atom "+this.getTokenName(e.labelValue);else if(e instanceof Oa){t=(e instanceof Ia?"~":"")+"Set "+e.label}}console.error(s.toString(this.parser,!0)+":"+t)}}predicateDFAState(t,e){const s=e.transitions.length,a=this.getConflictingAltsOrUniqueAlt(t.configs),r=this.getPredsForAmbigAlts(a,t.configs,s);null!==r?(t.predicates=this.getPredicatePredictions(a,r),t.prediction=ja.INVALID_ALT_NUMBER):t.prediction=a.nextSetBit(0)}execATNWithFullContext(e,s,a,r,i,c){(t.debug||t.traceATNSimulator)&&console.log("execATNWithFullContext "+a);let n,h=!1,E=a;r.seek(i);let T=r.LA(1),o=-1;for(;;){if(n=this.computeReachSet(E,T,true),null===n){const t=this.noViableAlt(r,c,E,i);r.seek(i);const e=this.getSynValidOrSemInvalidAltThatFinishedDecisionEntryRule(E,c);if(e!==ja.INVALID_ALT_NUMBER)return e;throw t}const e=Ri.getConflictingAltSubsets(n);if(t.debug&&console.log("LL altSubSets="+e+", predict="+Ri.getUniqueAlt(e)+", resolvesToJustOneViableAlt="+Ri.resolvesToJustOneViableAlt(e)),n.uniqueAlt=t.getUniqueAlt(n),n.uniqueAlt!==ja.INVALID_ALT_NUMBER){o=n.uniqueAlt;break}if(this.predictionMode!==Ri.LL_EXACT_AMBIG_DETECTION){if(o=Ri.resolvesToJustOneViableAlt(e),o!==ja.INVALID_ALT_NUMBER)break}else if(Ri.allSubsetsConflict(e)&&Ri.allSubsetsEqual(e)){h=!0,o=Ri.getSingleViableAlt(e);break}E=n,T!==ca.EOF&&(r.consume(),T=r.LA(1))}return n.uniqueAlt!==ja.INVALID_ALT_NUMBER?(this.reportContextSensitivity(e,o,n,i,r.index),o):(this.reportAmbiguity(e,s,i,r.index,h,void 0,n),o)}computeReachSet(e,s,a){t.debug&&console.log("in computeReachSet, starting closure: "+e);const r=new $a(a);let i=null;for(const n of e)if(t.debug&&console.log("testing "+this.getTokenName(s)+" at "+n),n.state instanceof cr)(a||s===ca.EOF)&&(null===i&&(i=[]),i.push(n));else for(const e of n.state.transitions){const a=this.getReachableTarget(e,s);if(null!==a){const e=Za.createWithConfig(a,n);r.add(e,this.mergeCache),t.debugAdd&&console.log("added "+e+" to intermediate")}}let c=null;if(null===i&&s!==ca.EOF&&(1===r.length||t.getUniqueAlt(r)!==ja.INVALID_ALT_NUMBER)&&(c=r),null===c){c=new $a(a);const t=new Ha,e=s===ca.EOF;for(const s of r)this.closure(s,c,t,!1,a,e)}if(s===ca.EOF&&(c=this.removeAllConfigsNotInRuleStopState(c,c===r)),null!==i&&(!a||!Ri.hasConfigInRuleStopState(c)))for(const t of i)c.add(t,this.mergeCache);return t.traceATNSimulator&&console.log("computeReachSet "+e+" -> "+c),0===c.length?null:c}removeAllConfigsNotInRuleStopState(t,e){if(Ri.allConfigsInRuleStopStates(t))return t;const s=new $a(t.fullCtx);for(const a of t)if(a.state instanceof cr)s.add(a,this.mergeCache);else if(e&&a.state.epsilonOnlyTransitions){if(this.atn.nextTokens(a.state).contains(ca.EPSILON)){const t=this.atn.ruleToStopState[a.state.ruleIndex];s.add(Za.createWithConfig(t,a),this.mergeCache)}}return s}computeStartState(e,s,a){const r=va(this.atn,s),i=new $a(a);t.traceATNSimulator&&console.log("computeStartState from ATN state "+e+" initialContext="+r.toString(this.parser));for(let t=0;t0&&(i=this.getAltThatFinishedDecisionEntryRule(r),i!==ja.INVALID_ALT_NUMBER)?i:ja.INVALID_ALT_NUMBER}getAltThatFinishedDecisionEntryRule(t){const e=[];for(const s of t)(s.reachesIntoOuterContext||s.state instanceof cr&&s.context.hasEmptyPath())&&e.indexOf(s.alt)<0&&e.push(s.alt);return 0===e.length?ja.INVALID_ALT_NUMBER:Math.min(...e)}splitAccordingToSemanticValidity(t,e){const s=new $a(t.fullCtx),a=new $a(t.fullCtx);for(const r of t)if(r.semanticContext!==Xa.NONE){r.semanticContext.evaluate(this.parser,e)?s.add(r):a.add(r)}else s.add(r);return[s,a]}evalSemanticContext(e,s,a){const r=new Wa;for(const i of e){if(i.pred===Xa.NONE){if(r.set(i.alt),!a)break;continue}const e=i.pred.evaluate(this.parser,s);if((t.debug||t.dfaDebug)&&console.log("eval pred "+i+"="+e),e&&(r.set(i.alt),!a))break}return r}closure(t,e,s,a,r,i){this.closureCheckingStopState(t,e,s,a,r,0,i)}closureCheckingStopState(e,s,a,r,i,c,n){if((t.traceATNSimulator||t.debugClosure)&&console.log("closure("+e.toString(this.parser,!0)+")"),e.state instanceof cr){if(e.context&&!e.context.isEmpty()){for(let h=0;h=0&&(r+=1)}this.closureCheckingStopState(l,s,a,S,i,r,n)}}}canDropLoopEntryEdgeInLeftRecursiveRule(t){const e=t.state;if(e.constructor.stateType!==Va.STAR_LOOP_ENTRY||!t.context)return!1;if(!e.precedenceRuleDecision||t.context.isEmpty()||t.context.hasEmptyPath())return!1;const s=t.context.length;for(let i=0;i=_p, ctx dependent=true"),null!==this.parser&&console.log("context surrounding pred is "+La(this.parser.getRuleInvocationStack())));let c=null;var n;if(a&&r)if(i&&null!==(n=this.predictionState)&&void 0!==n&&n.input){const t=this.predictionState.input.index;this.predictionState.input.seek(this.predictionState.startIndex);const a=s.getPredicate().evaluate(this.parser,this.predictionState.outerContext);this.predictionState.input.seek(t),a&&(c=Za.createWithConfig(s.target,e))}else{const t=Xa.andContext(e.semanticContext,s.getPredicate());c=Za.createWithSemanticContext(s.target,e,t)}else c=Za.createWithConfig(s.target,e);return t.debug&&console.log("config from pred transition="+c),c}predTransition(e,s,a,r,i){t.debug&&(console.log("PRED (collectPredicates="+a+") "+s.ruleIndex+":"+s.predIndex+", ctx dependent="+s.isCtxDependent),null!==this.parser&&console.log("context surrounding pred is "+La(this.parser.getRuleInvocationStack())));let c=null;var n;if(a&&(s.isCtxDependent&&r||!s.isCtxDependent))if(i&&null!==(n=this.predictionState)&&void 0!==n&&n.input){const t=this.predictionState.input.index;this.predictionState.input.seek(this.predictionState.startIndex);const a=s.getPredicate().evaluate(this.parser,this.predictionState.outerContext);this.predictionState.input.seek(t),a&&(c=Za.createWithConfig(s.target,e))}else{const t=Xa.andContext(e.semanticContext,s.getPredicate());c=Za.createWithSemanticContext(s.target,e,t)}else c=Za.createWithConfig(s.target,e);return t.debug&&console.log("config from pred transition="+c),c}ruleTransition(e,s){var a;t.debug&&console.log("CALL rule "+this.getRuleName(s.target.ruleIndex)+", ctx="+e.context);const r=s.followState,i=da.create(null!==(a=e.context)&&void 0!==a?a:void 0,r.stateNumber);return Za.createWithConfig(s.target,e,i)}getConflictingAlts(t){const e=Ri.getConflictingAltSubsets(t);return Ri.getAlts(e)}getConflictingAltsOrUniqueAlt(t){let e;return t.uniqueAlt!==ja.INVALID_ALT_NUMBER?(e=new Wa,e.set(t.uniqueAlt)):e=t.conflictingAlts,e}noViableAlt(t,e,s,a){return new Ei(this.parser,t,t.get(a),t.LT(1),s,e)}addDFAEdge(e,s,a,r){return t.debug&&console.log("EDGE "+s+" -> "+r+" upon "+this.getTokenName(a)),r=this.addDFAState(e,r),a<-1||a>this.atn.maxTokenType||(t.debug&&console.log("DFA=\n"+e.toString(null!=this.parser?this.parser.vocabulary:Ra.EMPTY_VOCABULARY)),s.edges[a+1]=r),r}addDFAState(e,s){if(s===br.ERROR)return s;const a=e.getState(s);return null!==a?a:(s.configs.readOnly||(s.configs.optimizeConfigs(this),s.configs.setReadonly(!0)),t.traceATNSimulator&&console.log("addDFAState new "+s),e.addState(s),s)}reportAttemptingFullContext(e,s,a,r,i){if(t.debug||t.retryDebug){const t=new oa(r,i+1);console.log("reportAttemptingFullContext decision="+e.decision+":"+a+", input="+this.parser.tokenStream.getTextFromInterval(t))}this.parser.errorListenerDispatch.reportAttemptingFullContext(this.parser,e,r,i,s,a)}reportContextSensitivity(e,s,a,r,i){if(t.debug||t.retryDebug){const t=new oa(r,i+1);console.log("reportContextSensitivity decision="+e.decision+":"+a+", input="+this.parser.tokenStream.getTextFromInterval(t))}this.parser.errorListenerDispatch.reportContextSensitivity(this.parser,e,r,i,s,a)}reportAmbiguity(e,s,a,r,i,c,n){if(t.debug||t.retryDebug){const t=new oa(a,r+1);console.log("reportAmbiguity "+c+":"+n+", input="+this.parser.tokenStream.getTextFromInterval(t))}this.parser.errorListenerDispatch.reportAmbiguity(this.parser,e,a,r,i,c,n)}},Ea(He,"ParserATNSimulator"),(0,js.Z)(He,"traceATNSimulator",!1),(0,js.Z)(He,"debug",void 0),(0,js.Z)(He,"debugAdd",!1),(0,js.Z)(He,"debugClosure",!1),(0,js.Z)(He,"dfaDebug",!1),(0,js.Z)(He,"retryDebug",!1),He),Si=(Ea(Ge=class{constructor(){(0,js.Z)(this,"cache",new Fa(xa.instance))}add(t){if(t===ua.EMPTY)return t;const e=this.cache.get(t);return e||(this.cache.set(t,t),t)}get(t){return this.cache.get(t)}get length(){return this.cache.size}},"PredictionContextCache"),Ge),li=(ve=new WeakMap,Be=new WeakMap,Fe=class extends Ai{constructor(t){const e=t.interpreter.sharedContextCache;if(super(t,t.interpreter.atn,t.interpreter.decisionToDFA,e),(0,js.Z)(this,"decisions",void 0),(0,js.Z)(this,"numDecisions",0),(0,js.Z)(this,"currentDecision",0),(0,js.Z)(this,"currentState",void 0),(0,js.Z)(this,"conflictingAltResolvedBySLL",void 0),r(this,ve,{writable:!0,value:0}),r(this,Be,{writable:!0,value:0}),e){this.numDecisions=this.atn.decisionToState.length,this.decisions=new Array(this.numDecisions);for(let t=0;tthis.decisions[e].sllMaxLook&&(this.decisions[e].sllMaxLook=c,this.decisions[e].sllMaxLookEvent={decision:e,configs:null,predictedAlt:r,input:t,startIndex:this.predictionState.startIndex,stopIndex:ea(this,ve),fullCtx:!1}),ea(this,Be)>=0){const s=ea(this,Be)-this.predictionState.startIndex+1;this.decisions[e].llTotalLook+=s,this.decisions[e].llMinLook=0===this.decisions[e].llMinLook?s:Math.min(this.decisions[e].llMinLook,s),s>this.decisions[e].llMaxLook&&(this.decisions[e].llMaxLook=s,this.decisions[e].llMaxLookEvent={decision:e,configs:null,predictedAlt:r,input:t,startIndex:this.predictionState.startIndex,stopIndex:ea(this,Be),fullCtx:!0})}return r}finally{this.currentDecision=-1}}getExistingTargetState(t,e){var s;if(null!==(s=this.predictionState)&&void 0!==s&&s.input){$s(this,ve,this.predictionState.input.index);const s=super.getExistingTargetState(t,e);return null!==s&&(this.decisions[this.currentDecision].sllDFATransitions++,s===br.ERROR&&this.decisions[this.currentDecision].errors.push({decision:this.currentDecision,configs:t.configs,input:this.predictionState.input,startIndex:this.predictionState.startIndex,stopIndex:ea(this,ve),fullCtx:!1})),this.currentState=s,s}}computeTargetState(t,e,s){const a=super.computeTargetState(t,e,s);return this.currentState=a,a}computeReachSet(t,e,s){var a,r;s&&null!==(a=this.predictionState)&&void 0!==a&&a.input&&$s(this,Be,this.predictionState.input.index);const i=super.computeReachSet(t,e,s);return null!==(r=this.predictionState)&&void 0!==r&&r.input&&(s?(this.decisions[this.currentDecision].llATNTransitions++,null===i&&this.decisions[this.currentDecision].errors.push({decision:this.currentDecision,configs:t,input:this.predictionState.input,startIndex:this.predictionState.startIndex,stopIndex:ea(this,ve),fullCtx:!0})):(this.decisions[this.currentDecision].sllATNTransitions++,null===i&&this.decisions[this.currentDecision].errors.push({decision:this.currentDecision,configs:t,input:this.predictionState.input,startIndex:this.predictionState.startIndex,stopIndex:ea(this,ve),fullCtx:!1}))),i}reportAttemptingFullContext(t,e,s,a,r){this.conflictingAltResolvedBySLL=null!==e?e.nextSetBit(0):s.getAlts().nextSetBit(0),this.decisions[this.currentDecision].llFallback++,e&&super.reportAttemptingFullContext(t,e,s,a,r)}reportContextSensitivity(t,e,s,a,r){e!==this.conflictingAltResolvedBySLL&&this.predictionState.input&&this.decisions[this.currentDecision].contextSensitivities.push({decision:this.currentDecision,configs:s,input:this.predictionState.input,startIndex:a,stopIndex:r,fullCtx:!0}),super.reportContextSensitivity(t,e,s,a,r)}reportAmbiguity(t,e,s,a,r,i,c){var n;let h;h=i?i.nextSetBit(0):c.getAlts().nextSetBit(0),null!==(n=this.predictionState)&&void 0!==n&&n.input&&(c.fullCtx&&h!==this.conflictingAltResolvedBySLL&&this.decisions[this.currentDecision].contextSensitivities.push({decision:this.currentDecision,configs:c,input:this.predictionState.input,startIndex:s,stopIndex:a,fullCtx:!0}),this.decisions[this.currentDecision].ambiguities.push({ambigAlts:i,decision:this.currentDecision,configs:c,input:this.predictionState.input,startIndex:s,stopIndex:a,fullCtx:c.fullCtx})),super.reportAmbiguity(t,e,s,a,r,i,c)}getDecisionInfo(){return this.decisions}getCurrentState(){return this.currentState}},Ea(Fe,"ProfilingATNSimulator"),Fe);(Ja||(Ja={})).toString=Ea((t=>"(".concat(t.pred,", ").concat(t.alt,")")),"toString");var Oi,Ii=(ye=class{visit(t){return t.accept(this)}visitChildren(t){let e=this.defaultResult();const s=t.getChildCount();for(let a=0;anew ui(t)),"fromString");var ui=(we=new WeakSet,Ea(Ye=class{constructor(t){var e,s;a(e=this,s=we),s.add(e),(0,js.Z)(this,"name",""),(0,js.Z)(this,"index",0),(0,js.Z)(this,"data",void 0);const r=[];for(const a of t)r.push(a.codePointAt(0));this.data=new Uint32Array(r)}reset(){this.index=0}consume(){if(this.index>=this.data.length)throw new Error("cannot consume EOF");this.index+=1}LA(t){if(0===t)return 0;t<0&&(t+=1);const e=this.index+t-1;return e<0||e>=this.data.length?ca.EOF:this.data[e]}mark(){return-1}release(t){}seek(t){t<=this.index?this.index=t:this.index=Math.min(t,this.data.length)}getTextFromRange(t,e){var s;return(e=null!==(s=e)&&void 0!==s?s:this.data.length-1)>=this.data.length&&(e=this.data.length-1),t>=this.data.length?"":sa(this,we,Ni).call(this,t,e+1)}getTextFromInterval(t){const e=t.start;let s=t.stop;return s>=this.data.length&&(s=this.data.length-1),e>=this.data.length?"":sa(this,we,Ni).call(this,e,s+1)}toString(){return sa(this,we,Ni).call(this,0)}get size(){return this.data.length}getSourceName(){return this.name?this.name:ra.UNKNOWN_SOURCE_NAME}},"CharStreamImpl"),Ye);function Ni(t,e){const s=this.data.slice(t,e);let a="";return s.forEach((t=>{a+=String.fromCodePoint(t)})),a}var Li,Ci,_i,Pi,Mi,di,Ui,mi,Di,pi,gi,xi,ki,Hi,Gi,Fi,vi,Bi,yi,fi,Yi,wi,bi,Wi,Vi,Xi,Ki,Qi,Ji,Zi,qi,ji,zi=(be=class{constructor(t){(0,js.Z)(this,"tokenSource",void 0),(0,js.Z)(this,"tokens",[]),(0,js.Z)(this,"p",-1),(0,js.Z)(this,"fetchedEOF",!1),this.tokenSource=t}mark(){return 0}release(t){}reset(){this.seek(0)}seek(t){this.lazyInit(),this.p=this.adjustSeekIndex(t)}get size(){return this.tokens.length}get index(){return this.p}get(t){return this.lazyInit(),this.tokens[t]}consume(){let t=!1;if(t=this.p>=0&&(this.fetchedEOF?this.p0){return this.fetch(e)>=e}return!0}fetch(t){if(this.fetchedEOF)return 0;for(let e=0;e=this.tokens.length||e<0||t>=this.tokens.length)throw new RangeError("start "+t+" or stop "+e+" not in 0.."+(this.tokens.length-1));if(t>e)return[];if(void 0===s)return this.tokens.slice(t,e+1);const r=[];e>=this.tokens.length&&(e=this.tokens.length-1);for(let i=t;i=this.tokens.length?this.tokens[this.tokens.length-1]:this.tokens[e]}adjustSeekIndex(t){return t}lazyInit(){-1===this.p&&this.setup()}setup(){this.sync(0),this.p=this.adjustSeekIndex(0)}setTokenSource(t){this.tokenSource=t,this.tokens=[],this.p=-1,this.fetchedEOF=!1}nextTokenOnChannel(t,e){if(this.sync(t),t>=this.tokens.length)return-1;let s=this.tokens[t];for(;s.channel!==e;){if(s.type===ca.EOF)return-1;t+=1,this.sync(t),s=this.tokens[t]}return t}previousTokenOnChannel(t,e){for(;t>=0&&this.tokens[t].channel!==e;)t-=1;return t}getHiddenTokensToRight(t,e){if(void 0===e&&(e=-1),this.lazyInit(),t<0||t>=this.tokens.length)throw new Error("".concat(t," not in 0..").concat(this.tokens.length-1));const s=this.nextTokenOnChannel(t+1,$r.DEFAULT_TOKEN_CHANNEL),a=t+1,r=-1===s?this.tokens.length-1:s;return this.filterForChannel(a,r,e)}getHiddenTokensToLeft(t,e){if(void 0===e&&(e=-1),this.lazyInit(),t<0||t>=this.tokens.length)throw new Error("".concat(t," not in 0..").concat(this.tokens.length-1));const s=this.previousTokenOnChannel(t-1,$r.DEFAULT_TOKEN_CHANNEL);if(s===t-1)return;const a=s+1,r=t-1;return this.filterForChannel(a,r,e)}filterForChannel(t,e,s){const a=[];for(let r=t;r=this.tokens.length&&(s=this.tokens.length-1);let a="";for(let r=e;r<=s;++r){const t=this.tokens[r];if(t.type===ca.EOF)break;a+=t.text}return a}getTextFromContext(t){return this.getTextFromInterval(t.getSourceInterval())}getTextFromRange(t,e){return null!==t&&null!==e?this.getTextFromInterval(oa.of(t.tokenIndex,e.tokenIndex)):""}fill(){for(this.lazyInit();1e3===this.fetch(1e3););}},Ea(be,"BufferedTokenStream"),be),$i=(We=class extends zi{constructor(t,e){super(t),(0,js.Z)(this,"channel",ca.DEFAULT_CHANNEL),this.channel=null!==e&&void 0!==e?e:ca.DEFAULT_CHANNEL}adjustSeekIndex(t){return this.nextTokenOnChannel(t,this.channel)}LB(t){if(0===t||this.index-t<0)return null;let e=this.index,s=1;for(;s<=t;)e=this.previousTokenOnChannel(e-1,this.channel),s+=1;return e<0?null:this.tokens[e]}LT(t){if(this.lazyInit(),0===t)return null;if(t<0)return this.LB(-t);let e=this.index,s=1;for(;snew ni(t,e)))),Ve),ec=(Ea(Xe=class extends Xr{syntaxError(t,e,s,a,r,i){}},"XPathLexerErrorListener"),Xe),sc=(Ea(Ke=class{constructor(t){(0,js.Z)(this,"invert",void 0),(0,js.Z)(this,"nodeName",void 0),this.nodeName=t,this.invert=!1}toString(){return"XPathElement["+(this.invert?"!":"")+this.nodeName+"]"}},"XPathElement"),Ke),ac=(Ea(Qe=class extends sc{constructor(t,e){super(t),(0,js.Z)(this,"ruleIndex",void 0),this.ruleIndex=e}evaluate(t){return pa.findAllRuleNodes(t,this.ruleIndex)}toString(){return"XPathRuleAnywhereElement["+(this.invert?"!":"")+this.nodeName+"]"}},"XPathRuleAnywhereElement"),Qe),rc=(Je=class extends sc{constructor(t,e){super(t),(0,js.Z)(this,"ruleIndex",void 0),this.ruleIndex=e}evaluate(t){const e=[];for(const s of pa.getChildren(t))s instanceof ga&&(s.ruleIndex===this.ruleIndex&&!this.invert||s.ruleIndex!==this.ruleIndex&&this.invert)&&e.push(s);return e}toString(){return"XPathRuleElement["+(this.invert?"!":"")+this.nodeName+"]"}},Ea(Je,"XPathRuleElement"),Je),ic=(Ea(Ze=class extends sc{constructor(t,e){super(t),(0,js.Z)(this,"tokenType",void 0),this.tokenType=e}evaluate(t){return pa.findAllTokenNodes(t,this.tokenType)}toString(){return"XPathTokenAnywhereElement["+(this.invert?"!":"")+this.nodeName+"]"}},"XPathTokenAnywhereElement"),Ze),cc=(qe=class extends sc{constructor(t,e){super(t),(0,js.Z)(this,"tokenType",void 0),this.tokenType=e}evaluate(t){const e=[];for(const s of pa.getChildren(t))s instanceof ma&&s.symbol&&(s.symbol.type===this.tokenType&&!this.invert||s.symbol.type!==this.tokenType&&this.invert)&&e.push(s);return e}toString(){return"XPathTokenElement["+(this.invert?"!":"")+this.nodeName+"]"}},Ea(qe,"XPathTokenElement"),qe),nc=(Ea(je=class extends sc{constructor(){super(Ec.WILDCARD)}evaluate(t){return this.invert?[]:pa.descendants(t)}toString(){return"XPathWildcardAnywhereElement["+(this.invert?"!":"")+this.nodeName+"]"}},"XPathWildcardAnywhereElement"),je),hc=(ze=class extends sc{constructor(){super(Ec.WILDCARD)}evaluate(t){const e=[];if(this.invert)return e;for(const s of pa.getChildren(t))e.push(s);return e}toString(){return"XPathWildcardElement["+(this.invert?"!":"")+this.nodeName+"]"}},Ea(ze,"XPathWildcardElement"),ze),Ec=($e=class t{constructor(t,e){(0,js.Z)(this,"path",void 0),(0,js.Z)(this,"elements",void 0),(0,js.Z)(this,"parser",void 0),this.parser=t,this.path=e,this.elements=this.split(e)}static findAll(e,s,a){return new t(a,s).evaluate(e)}split(t){const e=new tc(Oi.fromString(t));e.recover=t=>{throw t},e.removeErrorListeners(),e.addErrorListener(new ec);const s=new $i(e);try{s.fill()}catch(n){if(n instanceof zr){const s="Invalid tokens or characters at index "+e.column+" in path '"+t+"' -- "+n.message;throw new RangeError(s)}throw n}const a=s.getTokens(),r=[],i=a.length;let c=0;t:for(;c0){this.elements[a].evaluate(e).forEach((e=>{t.add(e)}),t)}a++,s=t}return s}getXPathElement(t,e){if(t.type===ca.EOF)throw new Error("Missing path element at end of path");const s=t.text;if(null==s)throw new Error("Expected wordToken to have text content.");const a=this.parser.getTokenType(s),r=this.parser.getRuleIndex(s);switch(t.type){case tc.WILDCARD:return e?new nc:new hc;case tc.TOKEN_REF:case tc.STRING:if(a===ca.INVALID_TYPE)throw new Error(s+" at index "+t.start+" isn't a valid token name");return e?new ic(s,a):new cc(s,a);default:if(-1===r)throw new Error(s+" at index "+t.start+" isn't a valid rule name");return e?new ac(s,r):new rc(s,r)}}},Ea($e,"XPath"),(0,js.Z)($e,"WILDCARD","*"),(0,js.Z)($e,"NOT","!"),$e),Tc=(Ea(ts=class{},"Chunk"),ts),oc=(Ea(es=class{constructor(t,e,s,a){(0,js.Z)(this,"tree",void 0),(0,js.Z)(this,"pattern",void 0),(0,js.Z)(this,"labels",void 0),(0,js.Z)(this,"mismatchedNode",void 0),this.tree=t,this.pattern=e,this.labels=s,this.mismatchedNode=a}get(t){const e=this.labels.get(t);return e&&0!==e.length?e[e.length-1]:null}getAll(t){const e=this.labels.get(t);return null!==e&&void 0!==e?e:[]}getLabels(){return this.labels}getMismatchedNode(){return this.mismatchedNode}succeeded(){return!this.mismatchedNode}getPattern(){return this.pattern}getTree(){return this.tree}toString(){return"Match ".concat(this.succeeded()?"succeeded":"failed","; found ").concat(this.getLabels().size," labels")}},"ParseTreeMatch"),es),Rc=(Ea(ss=class{constructor(t,e,s,a){(0,js.Z)(this,"patternRuleIndex",void 0),(0,js.Z)(this,"pattern",void 0),(0,js.Z)(this,"patternTree",void 0),(0,js.Z)(this,"matcher",void 0),this.matcher=t,this.patternRuleIndex=s,this.pattern=e,this.patternTree=a}match(t){return this.matcher.match(t,this)}matches(t){return this.matcher.match(t,this).succeeded()}findAll(t,e){const s=Ec.findAll(t,e,this.matcher.getParser()),a=new Array;for(const r of s){const t=this.match(r);t.succeeded()&&a.push(t)}return a}getMatcher(){return this.matcher}getPattern(){return this.pattern}getPatternRuleIndex(){return this.patternRuleIndex}getPatternTree(){return this.patternTree}},"ParseTreePattern"),ss),Ac=(Ea(as=class extends jr{constructor(t){super({message:"",recognizer:t,input:t.inputStream,ctx:t.context}),this.offendingToken=t.getCurrentToken()}},"InputMismatchException"),as),Sc=(Ea(rs=class extends jr{constructor(t,e){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;super({message:lc(null!==e&&void 0!==e?e:"no predicate",null!==s&&void 0!==s?s:null),recognizer:t,input:t.inputStream,ctx:t.context}),(0,js.Z)(this,"ruleIndex",0),(0,js.Z)(this,"predicateIndex",0),(0,js.Z)(this,"predicate",void 0);const a=t.atn.states[t.state].transitions[0];a instanceof Cr?(this.ruleIndex=a.ruleIndex,this.predicateIndex=a.predIndex):(this.ruleIndex=0,this.predicateIndex=0),this.predicate=e,this.offendingToken=t.getCurrentToken()}},"FailedPredicateException"),rs),lc=Ea(((t,e)=>null!==e?e:"failed predicate: {"+t+"}?"),"formatMessage"),Oc=(is=class{constructor(){(0,js.Z)(this,"errorRecoveryMode",!1),(0,js.Z)(this,"lastErrorIndex",-1),(0,js.Z)(this,"lastErrorStates",new Sa),(0,js.Z)(this,"nextTokensContext",null),(0,js.Z)(this,"nextTokenState",0)}reset(t){this.endErrorCondition(t)}beginErrorCondition(t){this.errorRecoveryMode=!0}inErrorRecoveryMode(t){return this.errorRecoveryMode}endErrorCondition(t){this.errorRecoveryMode=!1,this.lastErrorStates=new Sa,this.lastErrorIndex=-1}reportMatch(t){this.endErrorCondition(t)}reportError(t,e){this.inErrorRecoveryMode(t)||(this.beginErrorCondition(t),e instanceof Ei?this.reportNoViableAlternative(t,e):e instanceof Ac?this.reportInputMismatch(t,e):e instanceof Sc?this.reportFailedPredicate(t,e):t.notifyErrorListeners(e.message,e.offendingToken,e))}recover(t,e){var s,a,r;this.lastErrorIndex===(null===(s=t.inputStream)||void 0===s?void 0:s.index)&&this.lastErrorStates.contains(t.state)&&t.consume(),this.lastErrorIndex=null!==(a=null===(r=t.inputStream)||void 0===r?void 0:r.index)&&void 0!==a?a:0,this.lastErrorStates.addOne(t.state);const i=this.getErrorRecoverySet(t);this.consumeUntil(t,i)}sync(t){if(this.inErrorRecoveryMode(t))return;const e=t.atn.states[t.state],s=t.tokenStream.LA(1),a=t.atn.nextTokens(e);if(a.contains(s))return this.nextTokensContext=null,void(this.nextTokenState=Va.INVALID_STATE_NUMBER);if(a.contains(ca.EPSILON))null===this.nextTokensContext&&(this.nextTokensContext=t.context,this.nextTokenState=t.state);else switch(e.constructor.stateType){case Va.BLOCK_START:case Va.STAR_BLOCK_START:case Va.PLUS_BLOCK_START:case Va.STAR_LOOP_ENTRY:if(null!==this.singleTokenDeletion(t))return;throw new Ac(t);case Va.PLUS_LOOP_BACK:case Va.STAR_LOOP_BACK:{this.reportUnwantedToken(t);const e=new Sa;e.addSet(t.getExpectedTokens());const s=e.addSet(this.getErrorRecoverySet(t));this.consumeUntil(t,s);break}}}reportNoViableAlternative(t,e){if(e.message.length>0)return void t.notifyErrorListeners(e.message,e.offendingToken,e);const s=t.tokenStream;let a;a=null!==s&&e.startToken?e.startToken.type===ca.EOF?"":s.getTextFromRange(e.startToken,e.offendingToken):"";const r="no viable alternative at input "+this.escapeWSAndQuote(a);t.notifyErrorListeners(r,e.offendingToken,e)}reportInputMismatch(t,e){if(e.message.length>0)return void t.notifyErrorListeners(e.message,e.offendingToken,e);const s="mismatched input "+this.getTokenErrorDisplay(e.offendingToken)+" expecting "+e.getExpectedTokens().toStringWithVocabulary(t.vocabulary);t.notifyErrorListeners(s,e.offendingToken,e)}reportFailedPredicate(t,e){const s="rule "+t.ruleNames[t.context.ruleIndex]+" "+e.message;t.notifyErrorListeners(s,e.offendingToken,e)}reportUnwantedToken(t){if(this.inErrorRecoveryMode(t))return;this.beginErrorCondition(t);const e=t.getCurrentToken(),s="extraneous input "+this.getTokenErrorDisplay(e)+" expecting "+this.getExpectedTokens(t).toStringWithVocabulary(t.vocabulary);t.notifyErrorListeners(s,e,null)}reportMissingToken(t){if(this.inErrorRecoveryMode(t))return;this.beginErrorCondition(t);const e=t.getCurrentToken(),s="missing "+this.getExpectedTokens(t).toStringWithVocabulary(t.vocabulary)+" at "+this.getTokenErrorDisplay(e);t.notifyErrorListeners(s,e,null)}recoverInline(t){const e=this.singleTokenDeletion(t);if(e)return t.consume(),e;if(this.singleTokenInsertion(t))return this.getMissingSymbol(t);throw new Ac(t)}singleTokenInsertion(t){var e,s,a;const r=null!==(e=null===(s=t.tokenStream)||void 0===s?void 0:s.LA(1))&&void 0!==e?e:-1,i=t.atn,c=i.states[t.state].transitions[0].target;return!!i.nextTokens(c,null!==(a=t.context)&&void 0!==a?a:void 0).contains(r)&&(this.reportMissingToken(t),!0)}singleTokenDeletion(t){var e,s;const a=null!==(e=null===(s=t.tokenStream)||void 0===s?void 0:s.LA(2))&&void 0!==e?e:-1;if(this.getExpectedTokens(t).contains(a)){this.reportUnwantedToken(t),t.consume();const e=t.getCurrentToken();return this.reportMatch(t),e}return null}getMissingSymbol(t){var e;const s=t.getCurrentToken(),a=this.getExpectedTokens(t);let r,i=ca.INVALID_TYPE;0!==a.length&&(i=a.minElement),r=i===ca.EOF?"":"";let c=s;const n=null===(e=t.tokenStream)||void 0===e?void 0:e.LT(-1);return c.type===ca.EOF&&null!==n&&(c=n),t.getTokenFactory().create(c.source,i,r,ca.DEFAULT_CHANNEL,-1,-1,c.line,c.column)}getExpectedTokens(t){return t.getExpectedTokens()}getTokenErrorDisplay(t){if(null===t)return"";let e=t.text;return e||(e=t.type===ca.EOF?"":"<"+t.type+">"),this.escapeWSAndQuote(e)}escapeWSAndQuote(t){return"'"+(t=(t=(t=t.replace(/\n/g,"\\n")).replace(/\r/g,"\\r")).replace(/\t/g,"\\t"))+"'"}getErrorRecoverySet(t){const e=t.atn;let s=t.context;const a=new Sa;for(;null!==s&&s.invokingState>=0;){const t=e.states[s.invokingState].transitions[0],r=e.nextTokens(t.followState);a.addSet(r),s=s.parent}return a.removeOne(ca.EPSILON),a}consumeUntil(t,e){var s,a;let r=null!==(s=null===(a=t.tokenStream)||void 0===a?void 0:a.LA(1))&&void 0!==s?s:-1;for(;r!==ca.EOF&&!e.contains(r);){var i,c;t.consume(),r=null!==(i=null===(c=t.tokenStream)||void 0===c?void 0:c.LA(1))&&void 0!==i?i:-1}}},Ea(is,"DefaultErrorStrategy"),is),Ic=(Ea(cs=class extends Oc{recover(t,e){throw new ti(e)}recoverInline(t){const e=new Ac(t);throw new ti(e)}sync(t){}},"BailErrorStrategy"),cs),uc=(Ea(ns=class{constructor(t,e){(0,js.Z)(this,"sourceName",void 0),(0,js.Z)(this,"tokenFactory",qr.DEFAULT),(0,js.Z)(this,"tokens",void 0),(0,js.Z)(this,"i",void 0),(0,js.Z)(this,"eofToken",void 0),this.tokens=t,this.sourceName=null!==e&&void 0!==e?e:""}get column(){if(this.i0){const t=this.tokens[this.tokens.length-1],e=t.text;if(e){const t=e.lastIndexOf("\n");if(t>=0)return e.length-t-1}return t.column+t.stop-t.start+1}return 0}nextToken(){if(this.i>=this.tokens.length){if(null===this.eofToken){let t=-1;if(this.tokens.length>0){const e=this.tokens[this.tokens.length-1].stop;-1!==e&&(t=e+1)}const e=Math.max(-1,t-1);this.eofToken=this.tokenFactory.create([this,this.inputStream],ca.EOF,"EOF",ca.DEFAULT_CHANNEL,t,e,this.line,this.column)}return this.eofToken}const t=this.tokens[this.i];return this.i===this.tokens.length-1&&t.type===ca.EOF&&(this.eofToken=t),this.i++,t}get line(){if(this.i0){const t=this.tokens[this.tokens.length-1];let e=t.line;const s=t.text;if(s)for(const a of s)"\n"===a&&e++;return e}return 1}get inputStream(){return this.i0?this.tokens[this.tokens.length-1].inputStream:null}getSourceName(){if(null!==this.sourceName)return this.sourceName;const t=this.inputStream;return null!==t?t.getSourceName():"List"}},"ListTokenSource"),ns),Nc=(Es=new WeakMap,Ea(hs=class extends ga{constructor(t,e,s){super(e,s),r(this,Es,{writable:!0,value:void 0}),$s(this,Es,t)}get ruleIndex(){return ea(this,Es)}},"InterpreterRuleContext"),hs),Lc=(Ea(Ts=class{constructor(t){(0,js.Z)(this,"parser",void 0),this.parser=t}enterEveryRule(t){var e,s;console.log("enter "+this.parser.ruleNames[t.ruleIndex]+", LT(1)="+(null===(e=this.parser.inputStream)||void 0===e||null===(s=e.LT(1))||void 0===s?void 0:s.text))}visitTerminal(t){console.log("consume "+t.getSymbol()+" rule "+this.parser.ruleNames[this.parser.context.ruleIndex])}exitEveryRule(t){var e,s;console.log("exit "+this.parser.ruleNames[t.ruleIndex]+", LT(1)="+(null===(e=this.parser.inputStream)||void 0===e||null===(s=e.LT(1))||void 0===s?void 0:s.text))}visitErrorNode(t){}},"TraceListener"),Ts),Cc=(Rs=new WeakMap,As=new WeakMap,Ss=new WeakMap,os=class extends Jr{constructor(t){super(),(0,js.Z)(this,"printer",null),(0,js.Z)(this,"buildParseTrees",!0),(0,js.Z)(this,"errorHandler",new Oc),(0,js.Z)(this,"context",null),(0,js.Z)(this,"precedenceStack",[]),(0,js.Z)(this,"parseListeners",null),(0,js.Z)(this,"syntaxErrors",0),(0,js.Z)(this,"matchedEOF",!1),r(this,Rs,{writable:!0,value:null}),r(this,As,{writable:!0,value:null}),r(this,Ss,{writable:!0,value:void 0}),this.precedenceStack.push(0),this.syntaxErrors=0,$s(this,Ss,t)}reset(){(!(arguments.length>0&&void 0!==arguments[0])||arguments[0])&&this.inputStream.seek(0),this.errorHandler.reset(this),this.context=null,this.syntaxErrors=0,this.setTrace(!1),this.precedenceStack=[],this.precedenceStack.push(0),this.interpreter&&this.interpreter.reset()}match(t){let e=this.getCurrentToken();return e.type===t?(this.errorHandler.reportMatch(this),this.consume()):(e=this.errorHandler.recoverInline(this),this.buildParseTrees&&-1===e.tokenIndex&&this.context.addErrorNode(this.createErrorNode(this.context,e))),e}matchWildcard(){let t=this.getCurrentToken();return t.type>0?(this.errorHandler.reportMatch(this),this.consume()):(t=this.errorHandler.recoverInline(this),this.buildParseTrees&&-1===t.tokenIndex&&this.context.addErrorNode(this.createErrorNode(this.context,t))),t}getParseListeners(){var t;return null!==(t=this.parseListeners)&&void 0!==t?t:[]}addParseListener(t){if(null===t)throw new Error("listener");null===this.parseListeners&&(this.parseListeners=[]),this.parseListeners.push(t)}removeParseListener(t){if(null!==this.parseListeners&&null!==t){const e=this.parseListeners.indexOf(t);e>=0&&this.parseListeners.splice(e,1),0===this.parseListeners.length&&(this.parseListeners=null)}}removeParseListeners(){this.parseListeners=null}triggerEnterRuleEvent(){if(null!==this.parseListeners){const t=this.context;this.parseListeners.forEach((e=>{e.enterEveryRule(t),t.enterRule(e)}))}}triggerExitRuleEvent(){if(null!==this.parseListeners){const t=this.context;this.parseListeners.slice(0).reverse().forEach((e=>{t.exitRule(e),e.exitEveryRule(t)}))}}getTokenFactory(){return this.inputStream.tokenSource.tokenFactory}setTokenFactory(t){this.inputStream.tokenSource.tokenFactory=t}compileParseTreePattern(t,e,s){if(!s&&null!==this.tokenStream){const t=this.tokenStream.tokenSource;t instanceof $r&&(s=t)}if(!s)throw new Error("Parser can't discover a lexer to use");return new Dc(s,this).compile(t,e)}getATNWithBypassAlts(){const t=this.getSerializedATN();if(null===t)throw new Error("The current parser does not support an ATN with bypass alternatives.");if(null!==ea(this,As))return ea(this,As);return $s(this,As,new fr({readOnly:!1,verifyATN:!0,generateRuleBypassTransitions:!0}).deserialize(t)),ea(this,As)}get numberOfSyntaxErrors(){return this.syntaxErrors}get inputStream(){return ea(this,Ss)}set inputStream(t){this.tokenStream=t}get tokenStream(){return ea(this,Ss)}set tokenStream(t){this.reset(!1),$s(this,Ss,t)}getCurrentToken(){return this.inputStream.LT(1)}notifyErrorListeners(t,e,s){var a,r;s=null!==(r=s)&&void 0!==r?r:null,null===(e=null!==(a=e)&&void 0!==a?a:null)&&(e=this.getCurrentToken()),this.syntaxErrors+=1;const i=e.line,c=e.column;this.errorListenerDispatch.syntaxError(this,e,i,c,t,s)}consume(){const t=this.getCurrentToken();t.type!==ca.EOF&&this.tokenStream.consume();const e=null!==this.parseListeners&&this.parseListeners.length>0;if(this.buildParseTrees||e){let s;s=this.errorHandler.inErrorRecoveryMode(this)?this.context.addErrorNode(this.createErrorNode(this.context,t)):this.context.addTokenNode(t),e&&this.parseListeners.forEach((t=>{s instanceof Da?t.visitErrorNode(s):t.visitTerminal(s)}))}return t}addContextToParseTree(){var t;null!==(null===(t=this.context)||void 0===t?void 0:t.parent)&&this.context.parent.addChild(this.context)}enterRule(t,e,s){this.state=e,this.context=t,this.context.start=this.inputStream.LT(1),this.buildParseTrees&&this.addContextToParseTree(),this.triggerEnterRuleEvent()}exitRule(){this.context.stop=this.inputStream.LT(-1),this.triggerExitRuleEvent(),this.state=this.context.invokingState,this.context=this.context.parent}enterOuterAlt(t,e){t.setAltNumber(e),this.buildParseTrees&&this.context!==t&&null!==this.context.parent&&(this.context.parent.removeLastChild(),this.context.parent.addChild(t)),this.context=t}getPrecedence(){return 0===this.precedenceStack.length?-1:this.precedenceStack[this.precedenceStack.length-1]}enterRecursionRule(t,e,s,a){this.state=e,this.precedenceStack.push(a),this.context=t,this.context.start=this.inputStream.LT(1),this.triggerEnterRuleEvent()}pushNewRecursionContext(t,e,s){const a=this.context;a.parent=t,a.invokingState=e,a.stop=this.inputStream.LT(-1),this.context=t,this.context.start=a.start,this.buildParseTrees&&this.context.addChild(a),this.triggerEnterRuleEvent()}unrollRecursionContexts(t){this.precedenceStack.pop(),this.context.stop=this.inputStream.LT(-1);const e=this.context,s=this.getParseListeners();if(null!==s&&s.length>0)for(;this.context!==t;)this.triggerExitRuleEvent(),this.context=this.context.parent;else this.context=t;e.parent=t,this.buildParseTrees&&null!==t&&t.addChild(e)}getInvokingContext(t){let e=this.context;for(;null!==e;){if(e.ruleIndex===t)return e;e=e.parent}return null}precpred(t,e){return e>=this.precedenceStack[this.precedenceStack.length-1]}inContext(t){return!1}isExpectedToken(t){const e=this.interpreter.atn;let s=this.context;const a=e.states[this.state];let r=e.nextTokens(a);if(r.contains(t))return!0;if(!r.contains(ca.EPSILON))return!1;for(;null!==s&&s.invokingState>=0&&r.contains(ca.EPSILON);){const a=e.states[s.invokingState].transitions[0];if(r=e.nextTokens(a.followState),r.contains(t))return!0;s=s.parent}return!(!r.contains(ca.EPSILON)||t!==ca.EOF)}getExpectedTokens(){return this.interpreter.atn.getExpectedTokens(this.state,this.context)}getExpectedTokensWithinCurrentRule(){const t=this.interpreter.atn,e=t.states[this.state];return t.nextTokens(e)}getRuleIndex(t){var e;return null!==(e=this.getRuleIndexMap().get(t))&&void 0!==e?e:-1}getRuleInvocationStack(t){var e;null===(t=null!==(e=t)&&void 0!==e?e:null)&&(t=this.context);const s=[];for(;null!==t;){const e=t.ruleIndex;e<0?s.push("n/a"):s.push(this.ruleNames[e]),t=t.parent}return s}getDFAStrings(){return this.interpreter.decisionToDFA.toString()}dumpDFA(){let t=!1;for(const e of this.interpreter.decisionToDFA)e.length>0&&(t&&console.log(),this.printer&&(this.printer.println("Decision "+e.decision+":"),this.printer.print(e.toString(this.vocabulary))),t=!0)}getSourceName(){return this.inputStream.getSourceName()}setProfile(t){const e=this.interpreter,s=e.predictionMode;if(t)e instanceof li||(this.interpreter=new li(this));else if(e instanceof li){const t=e.sharedContextCache;if(t){const s=new Ai(this,this.atn,e.decisionToDFA,t);this.interpreter=s}}this.interpreter.predictionMode=s}setTrace(t){t?(null!==ea(this,Rs)&&this.removeParseListener(ea(this,Rs)),$s(this,Rs,new Lc(this)),this.addParseListener(ea(this,Rs))):(this.removeParseListener(ea(this,Rs)),$s(this,Rs,null))}createTerminalNode(t,e){return new ma(e)}createErrorNode(t,e){return new Da(e)}},Ea(os,"Parser"),os),_c=(Os=new WeakMap,Is=new WeakMap,us=new WeakMap,Ns=new WeakMap,Ls=new WeakMap,Cs=new WeakMap,_s=new WeakMap,Ps=new WeakMap,Ms=new WeakMap,ds=new WeakMap,Us=new WeakMap,ms=new WeakMap,ls=class extends Cc{constructor(t,e,s,a,i){super(i),(0,js.Z)(this,"rootContext",void 0),(0,js.Z)(this,"parentContextStack",[]),r(this,Os,{writable:!0,value:-1}),r(this,Is,{writable:!0,value:-1}),r(this,us,{writable:!0,value:-1}),r(this,Ns,{writable:!0,value:!1}),r(this,Ls,{writable:!0,value:null}),r(this,Cs,{writable:!0,value:void 0}),r(this,_s,{writable:!0,value:void 0}),r(this,Ps,{writable:!0,value:void 0}),r(this,Ms,{writable:!0,value:void 0}),r(this,ds,{writable:!0,value:void 0}),r(this,Us,{writable:!0,value:new Si}),r(this,ms,{writable:!0,value:void 0}),$s(this,Cs,t),$s(this,_s,a),$s(this,Ps,s.slice(0)),$s(this,Ms,e),$s(this,ms,new Wa);for(const r of a.states)r instanceof Tr&&r.precedenceRuleDecision&&ea(this,ms).set(r.stateNumber);$s(this,ds,a.decisionToState.map(((t,e)=>new ni(t,e)))),this.interpreter=new Ai(this,a,ea(this,ds),ea(this,Us))}reset(){super.reset(),$s(this,Ns,!1),$s(this,Ls,null)}get atn(){return ea(this,_s)}get vocabulary(){return ea(this,Ms)}get ruleNames(){return ea(this,Ps)}get grammarFileName(){return ea(this,Cs)}get atnState(){return ea(this,_s).states[this.state]}parse(t){var e;const s=ea(this,_s).ruleToStartState[t];for(this.rootContext=this.createInterpreterRuleContext(null,Va.INVALID_STATE_NUMBER,t),s.isPrecedenceRule?this.enterRecursionRule(this.rootContext,s.stateNumber,t,0):this.enterRule(this.rootContext,s.stateNumber,t);;){const t=this.atnState;if(t.constructor.stateType===Va.RULE_STOP){if(null!==(e=this.context)&&void 0!==e&&e.isEmpty){if(s.isPrecedenceRule){const t=this.context,e=this.parentContextStack.pop();return this.unrollRecursionContexts(e[0]),t}return this.exitRule(),this.rootContext}this.visitRuleStopState(t)}else try{this.visitState(t)}catch(a){if(!(a instanceof jr))throw a;this.state=ea(this,_s).ruleToStopState[t.ruleIndex].stateNumber,this.errorHandler.reportError(this,a),this.recover(a)}}}addDecisionOverride(t,e,s){$s(this,Os,t),$s(this,Is,e),$s(this,us,s)}get overrideDecisionRoot(){return ea(this,Ls)}enterRecursionRule(t,e,s,a){this.parentContextStack.push([this.context,t.invokingState]),super.enterRecursionRule(t,e,s,a)}visitState(t){let e=1;t instanceof er&&(e=this.visitDecisionState(t));const s=t.transitions[e-1];switch(s.transitionType){case la.EPSILON:if(ea(this,ms).get(t.stateNumber)&&s.target.constructor.stateType!==Va.LOOP_END){const e=this.parentContextStack[this.parentContextStack.length-1],s=this.createInterpreterRuleContext(e[0],e[1],this.context.ruleIndex);this.pushNewRecursionContext(s,ea(this,_s).ruleToStartState[t.ruleIndex].stateNumber,this.context.ruleIndex)}break;case la.ATOM:this.match(s.label.minElement);break;case la.RANGE:case la.SET:case la.NOT_SET:s.matches(this.inputStream.LA(1),ca.MIN_USER_TOKEN_TYPE,65535)||this.recoverInline(),this.matchWildcard();break;case la.WILDCARD:this.matchWildcard();break;case la.RULE:const e=s.target,a=e.ruleIndex,r=this.createInterpreterRuleContext(this.context,t.stateNumber,a);e.isPrecedenceRule?this.enterRecursionRule(r,e.stateNumber,a,s.precedence):this.enterRule(r,s.target.stateNumber,a);break;case la.PREDICATE:const i=s;if(!this.sempred(this.context,i.ruleIndex,i.predIndex))throw new Sc(this);break;case la.ACTION:const c=s;this.action(this.context,c.ruleIndex,c.actionIndex);break;case la.PRECEDENCE:if(!this.precpred(this.context,s.precedence)){const t=s.precedence;throw new Sc(this,"precpred(_ctx, ".concat(t,")"))}break;default:throw new Error("UnsupportedOperationException: Unrecognized ATN transition type.")}this.state=s.target.stateNumber}visitDecisionState(t){let e=1;if(t.transitions.length>1){this.errorHandler.sync(this);const s=t.decision;s!==ea(this,Os)||this.inputStream.index!==ea(this,Is)||ea(this,Ns)?e=this.interpreter.adaptivePredict(this.inputStream,s,this.context):(e=ea(this,us),$s(this,Ns,!0))}return e}createInterpreterRuleContext(t,e,s){return new Nc(s,t,e)}visitRuleStopState(t){if(ea(this,_s).ruleToStartState[t.ruleIndex].isPrecedenceRule){const[t,e]=this.parentContextStack.pop();this.unrollRecursionContexts(t),this.state=e}else this.exitRule();const e=ea(this,_s).states[this.state].transitions[0];this.state=e.followState.stateNumber}recover(t){const e=this.inputStream.index;if(this.errorHandler.recover(this,t),this.inputStream.index===e){var s;const e=t.offendingToken;if(!e)throw new Error("Expected exception to have an offending token");const a=e.tokenSource,r=[a,null!==(s=null===a||void 0===a?void 0:a.inputStream)&&void 0!==s?s:null];if(t instanceof Ac){const s=t.getExpectedTokens();if(!s)throw new Error("Expected the exception to provide expected tokens");let a=ca.INVALID_TYPE;0!==s.length&&(a=s.minElement);const i=this.getTokenFactory().create(r,a,e.text,ca.DEFAULT_CHANNEL,-1,-1,e.line,e.column);this.context.addErrorNode(this.createErrorNode(this.context,i))}else{const t=this.getTokenFactory().create(r,ca.INVALID_TYPE,e.text,ca.DEFAULT_CHANNEL,-1,-1,e.line,e.column);this.context.addErrorNode(this.createErrorNode(this.context,t))}}}recoverInline(){return this.errorHandler.recoverInline(this)}},Ea(ls,"ParserInterpreter"),ls),Pc=(Ds=class extends Map{map(t,e){let s=this.get(t);s||(s=new Array,this.set(t,s)),s.push(e)}getPairs(){const t=new Array;for(const s of this.keys()){var e;const a=null!==(e=this.get(s))&&void 0!==e?e:[];for(const e of a)t.push([s,e])}return t}},Ea(Ds,"MultiMap"),Ds),Mc=(Ea(ps=class{constructor(t,e,s){(0,js.Z)(this,"label",void 0),(0,js.Z)(this,"ruleName",void 0),(0,js.Z)(this,"bypassTokenType",void 0),this.ruleName=t,this.bypassTokenType=e,this.label=s}get channel(){return ca.DEFAULT_CHANNEL}get text(){return null!==this.label?"<"+this.label+":"+this.ruleName+">":"<"+this.ruleName+">"}get type(){return this.bypassTokenType}get line(){return 0}get column(){return-1}get tokenIndex(){return-1}get start(){return-1}get stop(){return-1}get tokenSource(){return null}get inputStream(){return null}toString(){return this.ruleName+":"+this.bypassTokenType}},"RuleTagToken"),ps),dc=(Ea(gs=class extends Tc{constructor(){let t,e;if(1===arguments.length?e=arguments.length<=0?void 0:arguments[0]:(t=arguments.length<=0?void 0:arguments[0],e=arguments.length<=1?void 0:arguments[1]),super(),(0,js.Z)(this,"tag",void 0),(0,js.Z)(this,"label",void 0),!e)throw new Error("tag cannot be null or empty");this.label=t,this.tag=e}toString(){return null!==this.label?this.label+":"+this.tag:this.tag}},"TagChunk"),gs),Uc=(Ea(xs=class extends Tc{constructor(t){super(),(0,js.Z)(this,"text",void 0),this.text=t}toString(){return"'"+this.text+"'"}},"TextChunk"),xs),mc=(Ea(ks=class extends Zr{constructor(t,e,s){super({type:e,source:Zr.EMPTY_SOURCE}),(0,js.Z)(this,"tokenName",void 0),(0,js.Z)(this,"label",void 0),this.tokenName=t,this.label=s}get text(){return null!==this.label?"<"+this.label+":"+this.tokenName+">":"<"+this.tokenName+">"}toString(){return this.tokenName+":"+this.type}},"TokenTagToken"),ks),Dc=(Hs=class t{constructor(t,e){(0,js.Z)(this,"start","<"),(0,js.Z)(this,"stop",">"),(0,js.Z)(this,"escape","\\"),(0,js.Z)(this,"lexer",void 0),(0,js.Z)(this,"parser",void 0),this.lexer=t,this.parser=e}setDelimiters(t,e,s){if(null===t||0===t.length)throw new Error("start cannot be null or empty");if(null===e||0===e.length)throw new Error("stop cannot be null or empty");this.start=t,this.stop=e,this.escape=s}matches(){for(var t=arguments.length,e=new Array(t),s=0;si.length)throw new Error("unterminated tag in pattern: "+t);if(r.length=i[n])throw new Error("tag delimiters out of order in pattern: "+t);if(0===c){const e=t.substring(0,s);a.push(new Uc(e))}if(c>0&&r[0]>0){const e=t.substring(0,r[0]);a.push(new Uc(e))}for(let n=0;n=0&&(s=e.substring(0,E),h=e.substring(E+1,e.length)),a.push(new dc(s,h)),n+10){const e=i[c-1]+this.stop.length;if(e{var n;if(this.exactOnly&&!r)return;const h=this.getDecisionDescription(t,e),E=this.getConflictingAlts(i,c),T=null===(n=t.tokenStream)||void 0===n?void 0:n.getTextFromInterval(oa.of(s,a)),o="reportAmbiguity d=".concat(h,": ambigAlts=").concat(E,", input='").concat(T,"'");t.notifyErrorListeners(o,null,null)})),(0,js.Z)(this,"reportAttemptingFullContext",((t,e,s,a,r,i)=>{var c;const n=this.getDecisionDescription(t,e),h=null===(c=t.tokenStream)||void 0===c?void 0:c.getTextFromInterval(oa.of(s,a)),E="reportAttemptingFullContext d=".concat(n,", input='").concat(h,"'");t.notifyErrorListeners(E,null,null)})),(0,js.Z)(this,"reportContextSensitivity",((t,e,s,a,r,i)=>{var c;const n=this.getDecisionDescription(t,e),h=null===(c=t.tokenStream)||void 0===c?void 0:c.getTextFromInterval(oa.of(s,a)),E="reportContextSensitivity d=".concat(n,", input='").concat(h,"'");t.notifyErrorListeners(E,null,null)})),(0,js.Z)(this,"getDecisionDescription",((t,e)=>{const s=e.decision,a=e.atnStartState.ruleIndex,r=t.ruleNames;if(a<0||a>=r.length)return s.toString();const i=r[a];return 0===i.length?s.toString():"".concat(s," (").concat(i,")")})),(0,js.Z)(this,"getConflictingAlts",((t,e)=>{if(t)return t;const s=new Wa;for(let a=0;anew ni(t,e)))),this.interpreter=new hi(this,c,ea(this,Vs),ea(this,Xs))}get atn(){return ea(this,fs)}get grammarFileName(){return ea(this,ys)}get ruleNames(){return ea(this,Ys)}get channelNames(){return ea(this,ws)}get modeNames(){return ea(this,bs)}get vocabulary(){return ea(this,Ws)}},Ea(Bs,"LexerInterpreter"),Ks=class t{constructor(t){(0,js.Z)(this,"tokens",void 0),(0,js.Z)(this,"programs",new Map),(0,js.Z)(this,"lastRewriteTokenIndexes",void 0),this.tokens=t}getTokenStream(){return this.tokens}insertAfter(e,s){let a,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.DEFAULT_PROGRAM_NAME;a="number"===typeof e?e:e.tokenIndex;const i=this.getProgram(r),c=new xc(this.tokens,a,i.length,s);i.push(c)}insertBefore(e,s){let a,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.DEFAULT_PROGRAM_NAME;a="number"===typeof e?e:e.tokenIndex;const i=this.getProgram(r),c=new gc(this.tokens,a,i.length,s);i.push(c)}replaceSingle(e,s){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.DEFAULT_PROGRAM_NAME;this.replace(e,e,s,a)}replace(e,s,a){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:t.DEFAULT_PROGRAM_NAME;if("number"!==typeof e&&(e=e.tokenIndex),"number"!==typeof s&&(s=s.tokenIndex),e>s||e<0||s<0||s>=this.tokens.size)throw new RangeError("replace: range invalid: ".concat(e,"..").concat(s,"(size=").concat(this.tokens.size,")"));const i=this.getProgram(r),c=new kc(this.tokens,e,s,i.length,a);i.push(c)}delete(e,s){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.DEFAULT_PROGRAM_NAME;null==s&&(s=e),this.replace(e,s,null,a)}getProgram(t){let e=this.programs.get(t);return null==e&&(e=this.initializeProgram(t)),e}initializeProgram(t){const e=[];return this.programs.set(t,e),e}getText(e){let s,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t.DEFAULT_PROGRAM_NAME;s=e instanceof oa?e:new oa(0,this.tokens.size-1),"string"===typeof e&&(a=e);const r=this.programs.get(a);let i=s.start,c=s.stop;if(c>this.tokens.size-1&&(c=this.tokens.size-1),i<0&&(i=0),null==r||0===r.length)return this.tokens.getTextFromInterval(new oa(i,c));const n=[],h=this.reduceToSingleOperationPerIndex(r);let E=i;for(;E<=c&&E=this.tokens.size-1&&n.push(String(t.text));return n.join("")}reduceToSingleOperationPerIndex(t){for(let s=0;sa.index&&s.index<=a.lastIndex&&(t[s.instructionIndex]=null);const i=this.getKindOfOps(t,kc,s);for(const s of i){if(s.index>=a.index&&s.lastIndex<=a.lastIndex){t[s.instructionIndex]=null;continue}const e=s.lastIndexa.lastIndex;if(null!=s.text||null!=a.text||e){if(!e)throw new Error("replace op boundaries of ".concat(a," overlap with previous ").concat(s))}else t[s.instructionIndex]=null,a.index=Math.min(s.index,a.index),a.lastIndex=Math.max(s.lastIndex,a.lastIndex)}}for(let s=0;s=c.index&&a.index<=c.lastIndex)throw new Error("insert op ".concat(a," within boundaries of previous ").concat(c))}else c.text=this.catOpText(a.text,c.text),t[s]=null}const e=new Map;for(const s of t)if(null!=s){if(null!=e.get(s.index))throw new Error("should only be one op per index");e.set(s.index,s)}return e}catOpText(t,e){let s="",a="";return null!=t&&(s=t.toString()),null!=e&&(a=e.toString()),s+a}getKindOfOps(t,e,s){return t.slice(0,s).filter((t=>t&&t instanceof e))}},Ea(Ks,"TokenStreamRewriter"),(0,js.Z)(Ks,"DEFAULT_PROGRAM_NAME","default"),(0,js.Z)(Ks,"PROGRAM_INIT_SIZE",100),(0,js.Z)(Ks,"MIN_TOKEN_INDEX",0),Ea(Qs=class{constructor(t,e,s,a){(0,js.Z)(this,"instructionIndex",void 0),(0,js.Z)(this,"index",void 0),(0,js.Z)(this,"text",void 0),(0,js.Z)(this,"tokens",void 0),this.tokens=t,this.instructionIndex=s,this.index=e,this.text=void 0===a?"":a}execute(t){return this.index}toString(){return"'}},"RewriteOperation"),Qs),gc=(Ea(Js=class extends pc{constructor(t,e,s,a){super(t,e,s,a)}execute(t){return this.text&&t.push(this.text.toString()),this.tokens.get(this.index).type!==ca.EOF&&t.push(String(this.tokens.get(this.index).text)),this.index+1}toString(){return"'}},"InsertBeforeOp"),Js),xc=(Ea(Zs=class extends gc{constructor(t,e,s,a){super(t,e+1,s,a)}toString(){return"'}},"InsertAfterOp"),Zs),kc=(qs=class extends pc{constructor(t,e,s,a,r){super(t,e,a,r),(0,js.Z)(this,"lastIndex",void 0),this.lastIndex=s}execute(t){return this.text&&t.push(this.text.toString()),this.lastIndex+1}toString(){return null==this.text?"":"'}},Ea(qs,"ReplaceOp"),qs),Hc=Object.defineProperty,Gc=(t,e)=>Hc(t,"name",{value:e,configurable:!0}),Fc=(Ci=new WeakMap,Gc(Li=class{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";(0,js.Z)(this,"name",void 0),(0,js.Z)(this,"context",void 0),(0,js.Z)(this,"modifiers",new Set),(0,js.Z)(this,"visibility",0),r(this,Ci,{writable:!0,value:void 0}),this.name=t}get parent(){return ea(this,Ci)}get firstSibling(){var t;if(ea(this,Ci))return null===(t=ea(this,Ci))||void 0===t?void 0:t.firstChild}get previousSibling(){if(ea(this,Ci))return ea(this,Ci)?ea(this,Ci).previousSiblingOf(this):this}get nextSibling(){var t;return null===(t=ea(this,Ci))||void 0===t?void 0:t.nextSiblingOf(this)}get lastSibling(){var t;return null===(t=ea(this,Ci))||void 0===t?void 0:t.lastChild}get next(){var t;return null===(t=ea(this,Ci))||void 0===t?void 0:t.nextOf(this)}get root(){let t=ea(this,Ci);for(;t;){if(!t.parent||this.isSymbolTable(t.parent))return t;t=t.parent}return t}get symbolTable(){if(this.isSymbolTable(this))return this;let t=ea(this,Ci);for(;t;){if(this.isSymbolTable(t))return t;t=t.parent}}get symbolPath(){const t=[];let e=this;for(;e&&(t.push(e),e.parent);)e=e.parent;return t}setParent(t){$s(this,Ci,t)}removeFromParent(){var t;null===(t=ea(this,Ci))||void 0===t||t.removeSymbol(this),$s(this,Ci,void 0)}async resolve(t){var e;let s=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return null===(e=ea(this,Ci))||void 0===e?void 0:e.resolve(t,s)}resolveSync(t){var e;let s=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return null===(e=ea(this,Ci))||void 0===e?void 0:e.resolveSync(t,s)}getParentOfType(t){let e=ea(this,Ci);for(;e;){if(e instanceof t)return e;e=e.parent}}qualifiedName(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:".",e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!s&&0===this.name.length)return"";let a=0===this.name.length?"":this.name,r=ea(this,Ci);for(;r&&((s||r.name.length>0)&&(a=(0===r.name.length?"":r.name)+t+a),e&&r.parent);)r=r.parent;return a}isSymbolTable(t){return void 0!==t.info}},"BaseSymbol"),Li),vc=(Gc(_i=class extends Fc{constructor(t,e,s){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;super(t),(0,js.Z)(this,"elementType",void 0),(0,js.Z)(this,"size",void 0),(0,js.Z)(this,"referenceKind",void 0),this.referenceKind=e,this.elementType=s,this.size=a}get baseTypes(){return[]}get kind(){return 9}get reference(){return this.referenceKind}},"ArrayType"),Pi=class extends Error{},Gc(Pi,"DuplicateSymbolError"),Pi),Bc=(di=new WeakMap,Ui=new WeakMap,Gc(Mi=class t extends Fc{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:""),r(this,di,{writable:!0,value:[]}),r(this,Ui,{writable:!0,value:new Map})}get directScopes(){return this.getSymbolsOfType(t)}get children(){return ea(this,di)}get firstChild(){if(ea(this,di).length>0)return ea(this,di)[0]}get lastChild(){if(ea(this,di).length>0)return ea(this,di)[ea(this,di).length-1]}clear(){$s(this,di,[]),ea(this,Ui).clear()}addSymbol(t){t.removeFromParent();const e=this.symbolTable,s=ea(this,Ui).get(t.name);if(e&&e.options.allowDuplicateSymbols)ea(this,Ui).set(t.name,void 0===s?1:s+1);else{var a;if(void 0!==s)throw new vc("Attempt to add duplicate symbol '"+(null!==(a=t.name)&&void 0!==a?a:"")+"'");ea(this,Ui).set(t.name,1);var r;if(ea(this,di).indexOf(t)>-1)throw new vc("Attempt to add duplicate symbol '"+(null!==(r=t.name)&&void 0!==r?r:"")+"'")}ea(this,di).push(t),t.setParent(this)}removeSymbol(t){const e=ea(this,di).indexOf(t);if(e>-1){ea(this,di).splice(e,1),t.setParent(void 0);const s=ea(this,Ui).get(t.name);void 0!==s&&(1===s?ea(this,Ui).delete(t.name):ea(this,Ui).set(t.name,s-1))}}async getNestedSymbolsOfType(e){const s=[],a=[];ea(this,di).forEach((r=>{r instanceof e&&s.push(r),r instanceof t&&a.push(r.getNestedSymbolsOfType(e))}));return(await Promise.all(a)).forEach((t=>{s.push(...t)})),s}getNestedSymbolsOfTypeSync(e){const s=[];return ea(this,di).forEach((a=>{a instanceof e&&s.push(a),a instanceof t&&s.push(...a.getNestedSymbolsOfTypeSync(e))})),s}async getAllNestedSymbols(e){const s=[],a=[];ea(this,di).forEach((r=>{e&&r.name!==e||s.push(r),r instanceof t&&a.push(r.getAllNestedSymbols(e))}));return(await Promise.all(a)).forEach((t=>{s.push(...t)})),s}getAllNestedSymbolsSync(e){const s=[];return ea(this,di).forEach((a=>{e&&a.name!==e||s.push(a),a instanceof t&&s.push(...a.getAllNestedSymbolsSync(e))})),s}getSymbolsOfType(t){return new Promise((e=>{const s=[];ea(this,di).forEach((e=>{e instanceof t&&s.push(e)})),e(s)}))}async getAllSymbols(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const s=[];for(const a of ea(this,di))if(a instanceof t&&s.push(a),this.isNamespace(a)){const e=await a.getAllSymbols(t,!0);s.push(...e)}if(!e&&this.parent){const e=await this.getAllSymbols(t,!0);s.push(...e)}return s}getAllSymbolsSync(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const s=[];for(const a of ea(this,di))if(a instanceof t&&s.push(a),this.isNamespace(a)){const e=a.getAllSymbolsSync(t,!0);s.push(...e)}if(!e&&this.parent){const e=this.getAllSymbolsSync(t,!0);s.push(...e)}return s}async resolve(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return new Promise((s=>{for(const e of ea(this,di))if(e.name===t)return void s(e);e||!this.parent?s(void 0):s(this.parent.resolve(t,!1))}))}resolveSync(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];for(const s of ea(this,di))if(s.name===t)return s;if(!e&&this.parent)return this.parent.resolveSync(t,!1)}symbolFromPath(e){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:".";const a=e.split(s);let r=0;a[0]!==this.name&&0!==a[0].length||++r;let i=this;for(;rt.name===a[r]));if(!e)return;i=e,++r}return i}indexOfChild(t){return ea(this,di).findIndex((e=>e===t))}nextSiblingOf(t){const e=this.indexOfChild(t);if(!(-1===e||e>=ea(this,di).length-1))return ea(this,di)[e+1]}previousSiblingOf(t){const e=this.indexOfChild(t);if(!(e<1))return ea(this,di)[e-1]}nextOf(e){if(!e.parent)return;if(e.parent!==this)return e.parent.nextOf(e);if(e instanceof t&&e.children.length>0)return e.children[0];const s=this.nextSiblingOf(e);return s||this.parent.nextOf(this)}isNamespace(t){return void 0!==t.inline&&void 0!==t.attributes}},"ScopedSymbol"),Mi),yc=(Gc(mi=class extends Bc{},"BlockSymbol"),Gc(Di=class extends Fc{constructor(t,e){super(t),(0,js.Z)(this,"type",void 0),this.type=e}},"TypedSymbol"),Di),fc=(Gc(pi=class extends yc{constructor(t,e,s){super(t,s),(0,js.Z)(this,"value",void 0),this.value=e}},"VariableSymbol"),pi),Yc=(Gc(gi=class extends fc{constructor(){super(...arguments),(0,js.Z)(this,"setter",void 0),(0,js.Z)(this,"getter",void 0)}},"FieldSymbol"),gi),wc=(Gc(xi=class extends fc{},"ParameterSymbol"),xi),bc=(Gc(ki=class extends Bc{constructor(t,e){super(t),(0,js.Z)(this,"returnType",void 0),this.returnType=e}getVariables(){return this.getSymbolsOfType(fc)}getParameters(){return this.getSymbolsOfType(wc)}},"RoutineSymbol"),ki),Wc=(Gc(Hi=class extends bc{constructor(){super(...arguments),(0,js.Z)(this,"methodFlags",0)}},"MethodSymbol"),Hi),Vc=(Gc(Gi=class extends Bc{constructor(t,e,s){super(t),(0,js.Z)(this,"isStruct",!1),(0,js.Z)(this,"reference",0),(0,js.Z)(this,"extends",void 0),(0,js.Z)(this,"implements",void 0),this.extends=e,this.implements=s}get baseTypes(){return this.extends}get kind(){return 7}getMethods(){return this.getSymbolsOfType(Wc)}getFields(){return this.getSymbolsOfType(Yc)}},"ClassSymbol"),Gc(Fi=class{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;(0,js.Z)(this,"name",void 0),(0,js.Z)(this,"typeKind",void 0),(0,js.Z)(this,"referenceKind",void 0),this.name=t,this.typeKind=e,this.referenceKind=s}get baseTypes(){return[]}get kind(){return this.typeKind}get reference(){return this.referenceKind}},"FundamentalType"),(0,js.Z)(Fi,"integerType",new Fi("int",1,3)),(0,js.Z)(Fi,"floatType",new Fi("float",2,3)),(0,js.Z)(Fi,"stringType",new Fi("string",4,3)),(0,js.Z)(Fi,"boolType",new Fi("bool",6,3)),Gc(vi=class extends Bc{constructor(t,e){super(t),(0,js.Z)(this,"reference",0),(0,js.Z)(this,"extends",void 0),this.extends=e}get baseTypes(){return this.extends}get kind(){return 8}getMethods(){return this.getSymbolsOfType(Wc)}getFields(){return this.getSymbolsOfType(Yc)}},"InterfaceSymbol"),Gc(Bi=class extends yc{constructor(t,e,s){super(t,s),(0,js.Z)(this,"value",void 0),this.value=e}},"LiteralSymbol"),Gc(yi=class extends Bc{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];super(t),(0,js.Z)(this,"inline",void 0),(0,js.Z)(this,"attributes",void 0),this.inline=e,this.attributes=s}},"NamespaceSymbol"),yi),Xc=(Gc(fi=class extends Fc{constructor(t,e){super(t),(0,js.Z)(this,"targetType",void 0),this.targetType=e}get baseTypes(){return[this.targetType]}get kind(){return 12}get reference(){return 0}},"TypeAlias"),Gc(((t,e)=>{if(!t||!e)return[];let s;for(s=0;s=t||e.type===ca.EOF))break;if(e.type===ca.EOF)break}const r=e?e.ruleIndex:0;if(this.processRule(this.atn.ruleToStartState[r],0,[],0,0),this.showResult){console.log("States processed: ".concat(this.statesProcessed)),console.log("\n\nCollected rules:\n");for(const e of this.candidates.rules){let t="";for(const s of e[1].ruleList)t+=this.ruleNames[s]+" ";console.log(this.ruleNames[e[0]]+", path: ",t)}const t=new Set;for(const e of this.candidates.tokens){var i;let s=null!==(i=this.vocabulary.getDisplayName(e[0]))&&void 0!==i?i:"";for(const t of e[1])s+=" "+this.vocabulary.getDisplayName(t);t.add(s)}console.log("\n\nCollected tokens:\n");for(const e of t)console.log(e);console.log("\n\n")}return this.candidates}checkPredicate(t){return t.getPredicate().evaluate(this.parser,ga.empty)}translateStackToRuleIndex(t){if(0===this.preferredRules.size)return!1;if(this.translateRulesTopDown){for(let e=t.length-1;e>=0;e--)if(this.translateToRuleIndex(e,t))return!0}else for(let e=0;e{let{ruleIndex:e}=t;return e}));let i=!0;for(const t of this.candidates.rules)if(t[0]===s&&t[1].ruleList.length===r.length&&r.every(((e,s)=>e===t[1].ruleList[s]))){i=!1;break}return i&&(this.candidates.rules.set(s,{startTokenIndex:a,ruleList:r}),this.showDebugOutput&&console.log("=====> collected: ",this.ruleNames[s])),!0}return!1}getFollowingTokens(t){const e=[],s=[t.target];for(;s.length>0;){const t=s.pop();t&&t.transitions.forEach((t=>{if(t.transitionType===la.ATOM)if(t.isEpsilon)s.push(t.target);else{const a=t.label.toArray();1!==a.length||this.ignoredTokens.has(a[0])||(e.push(a[0]),s.push(t.target))}}))}return e}determineFollowSets(t,e){const s=[],a=this.collectFollowSets(t,e,s,[],[]),r=new Sa;for(const i of s)r.addSet(i.intervals);return{sets:s,isExhaustive:a,combined:r}}collectFollowSets(t,e,s,a,r){if(a.find((e=>e===t)))return!0;if(a.push(t),t===e||t.constructor.stateType===Va.RULE_STOP)return a.pop(),!1;let i=!0;for(const n of t.transitions)if(n.transitionType===la.RULE){const t=n;if(-1!==r.indexOf(t.target.ruleIndex))continue;r.push(t.target.ruleIndex);const c=this.collectFollowSets(n.target,e,s,a,r);if(r.pop(),!c){const c=this.collectFollowSets(t.followState,e,s,a,r);i&&(i=c)}}else if(n.transitionType===la.PREDICATE){if(this.checkPredicate(n)){const t=this.collectFollowSets(n.target,e,s,a,r);i&&(i=t)}}else if(n.isEpsilon){const t=this.collectFollowSets(n.target,e,s,a,r);i&&(i=t)}else if(n.transitionType===la.WILDCARD){const t=new Qc;t.intervals=Sa.of(ca.MIN_USER_TOKEN_TYPE,this.atn.maxTokenType),t.path=r.slice(),s.push(t)}else{let t=n.label;if(t&&t.length>0){var c;n.transitionType===la.NOT_SET&&(t=t.complement(ca.MIN_USER_TOKEN_TYPE,this.atn.maxTokenType));const e=new Qc;e.intervals=null!==(c=t)&&void 0!==c?c:new Sa,e.path=r.slice(),e.following=this.getFollowingTokens(n),s.push(e)}}return a.pop(),i}processRule(e,s,a,r,i){let c=this.shortcutMap.get(e.ruleIndex);if(c){if(c.has(s))return this.showDebugOutput&&console.log("=====> shortcut"),c.get(s)}else c=new Map,this.shortcutMap.set(e.ruleIndex,c);const n=new Set;let h=t.followSetsByATN.get(this.parser.constructor.name);h||(h=new Map,t.followSetsByATN.set(this.parser.constructor.name,h));let E=h.get(e.stateNumber);if(!E){const t=this.atn.ruleToStopState[e.ruleIndex];E=this.determineFollowSets(e,t),h.set(e.stateNumber,E)}const T=this.tokens[s].tokenIndex;if(a.push({startTokenIndex:T,ruleIndex:e.ruleIndex}),s>=this.tokens.length-1){if(this.preferredRules.has(e.ruleIndex))this.translateStackToRuleIndex(a);else for(const t of E.sets){const e=a.slice(),s=t.path.map((t=>({startTokenIndex:T,ruleIndex:t})));if(e.push(...s),!this.translateStackToRuleIndex(e))for(const a of t.intervals.toArray())this.ignoredTokens.has(a)||(this.showDebugOutput&&console.log("=====> collected: ",this.vocabulary.getDisplayName(a)),this.candidates.tokens.has(a)?this.candidates.tokens.get(a)!==t.following&&this.candidates.tokens.set(a,[]):this.candidates.tokens.set(a,t.following))}return E.isExhaustive||n.add(s),a.pop(),n}{const t=this.tokens[s].type;if(E.isExhaustive&&!E.combined.contains(t))return a.pop(),n}e.isPrecedenceRule&&this.precedenceStack.push(r);const o=[];let R;for(o.push({state:e,tokenListIndex:s});o.length>0;){R=o.pop(),++this.statesProcessed;const t=this.tokens[R.tokenListIndex].type,e=R.tokenListIndex>=this.tokens.length-1;if(this.showDebugOutput&&(this.printDescription(i,R.state,this.generateBaseDescription(R.state),R.tokenListIndex),this.showRuleStack&&this.printRuleState(a)),R.state.constructor.stateType===Va.RULE_STOP){n.add(R.tokenListIndex);continue}const s=R.state.transitions;for(const r of s)switch(r.transitionType){case la.RULE:{const t=r,e=this.processRule(r.target,R.tokenListIndex,a,t.precedence,i+1);for(const s of e)o.push({state:r.followState,tokenListIndex:s});break}case la.PREDICATE:this.checkPredicate(r)&&o.push({state:r.target,tokenListIndex:R.tokenListIndex});break;case la.PRECEDENCE:r.precedence>=this.precedenceStack[this.precedenceStack.length-1]&&o.push({state:r.target,tokenListIndex:R.tokenListIndex});break;case la.WILDCARD:if(e){if(!this.translateStackToRuleIndex(a))for(const t of Sa.of(ca.MIN_USER_TOKEN_TYPE,this.atn.maxTokenType).toArray())this.ignoredTokens.has(t)||this.candidates.tokens.set(t,[])}else o.push({state:r.target,tokenListIndex:R.tokenListIndex+1});break;default:{if(r.isEpsilon){o.push({state:r.target,tokenListIndex:R.tokenListIndex});continue}let s=r.label;if(s&&s.length>0)if(r.transitionType===la.NOT_SET&&(s=s.complement(ca.MIN_USER_TOKEN_TYPE,this.atn.maxTokenType)),e){if(!this.translateStackToRuleIndex(a)){const t=s.toArray(),e=1===t.length;for(const s of t)if(!this.ignoredTokens.has(s)){this.showDebugOutput&&console.log("=====> collected: ",this.vocabulary.getDisplayName(s));const t=e?this.getFollowingTokens(r):[];this.candidates.tokens.has(s)?this.candidates.tokens.set(s,Xc(t,this.candidates.tokens.get(s))):this.candidates.tokens.set(s,t)}}}else s.contains(t)&&(this.showDebugOutput&&console.log("=====> consumed: ",this.vocabulary.getDisplayName(t)),o.push({state:r.target,tokenListIndex:R.tokenListIndex+1}))}}}return a.pop(),e.isPrecedenceRule&&this.precedenceStack.pop(),c.set(s,n),n}generateBaseDescription(e){const s=e.stateNumber===Va.INVALID_STATE_NUMBER?"Invalid":e.stateNumber,a=t.atnStateTypeMap[e.constructor.stateType];return"[".concat(s," ").concat(a,"] in ").concat(this.ruleNames[e.ruleIndex])}printDescription(e,s,a,r){const i=" ".repeat(e);let c=i,n="";if(this.debugOutputWithTransitions)for(const h of s.transitions){let e="";const s=h.label?h.label.toArray():[];if(s.length>2)e=this.vocabulary.getDisplayName(s[0])+" .. "+this.vocabulary.getDisplayName(s[s.length-1]);else for(const t of s)e.length>0&&(e+=", "),e+=this.vocabulary.getDisplayName(t);0===e.length&&(e="\u03b5");const a=t.atnStateTypeMap[h.target.constructor.stateType];n+="\n".concat(i,"\t(").concat(e,") [").concat(h.target.stateNumber," ").concat(a,"] in ").concat(this.ruleNames[h.target.ruleIndex])}r>=this.tokens.length-1?c+="<<".concat(this.tokenStartIndex+r,">> "):c+="<".concat(this.tokenStartIndex+r,"> "),console.log(c+"Current state: "+a+n)}printRuleState(t){if(0!==t.length)for(const e of t)console.log(this.ruleNames[e.ruleIndex]);else console.log("")}},Gc(bi,"CodeCompletionCore"),(0,js.Z)(bi,"followSetsByATN",new Map),(0,js.Z)(bi,"atnStateTypeMap",["invalid","basic","rule start","block start","plus block start","star block start","token start","rule stop","block end","star loop back","star loop entry","plus loop back","loop end"]),bi),Zc=(Wi=class extends Bc{constructor(t,e){super(t),(0,js.Z)(this,"dependencies",new Set),this.options=e}get info(){return{dependencyCount:this.dependencies.size,symbolCount:this.children.length}}clear(){super.clear(),this.dependencies.clear()}addDependencies(){for(var t=arguments.length,e=new Array(t),s=0;s{this.dependencies.add(t)}))}removeDependency(t){this.dependencies.has(t)&&this.dependencies.delete(t)}addNewSymbolOfType(t,e){for(var s=arguments.length,a=new Array(s>2?s-2:0),r=2;r2&&void 0!==arguments[2]?arguments[2]:".";const a=e.split(s);let r=0,i=void 0===t?this:t;for(;r2&&void 0!==arguments[2]?arguments[2]:".";const a=e.split(s);let r=0,i=void 0===t?this:t;for(;r1&&void 0!==arguments[1]&&arguments[1];const s=await super.getAllSymbols(t,e);if(!e){(await Promise.all([...this.dependencies].map((s=>s.getAllSymbols(t,e))))).forEach((t=>{s.push(...t)}))}return s}getAllSymbolsSync(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const s=super.getAllSymbolsSync(t,e);return e||this.dependencies.forEach((a=>{s.push(...a.getAllSymbolsSync(t,e))})),s}async symbolWithContext(t){const e=Gc((s=>{if(s.context===t)return s;if(s instanceof Bc)for(const t of s.children){const s=e(t);if(s)return s}}),"findRecursive");let s=await this.getAllSymbols(Fc);for(const a of s){const t=e(a);if(t)return t}for(const a of this.dependencies){s=await a.getAllSymbols(Fc);for(const t of s){const s=e(t);if(s)return s}}}symbolWithContextSync(t){const e=Gc((s=>{if(s.context===t)return s;if(s instanceof Bc)for(const t of s.children){const s=e(t);if(s)return s}}),"findRecursive");let s=this.getAllSymbolsSync(Fc);for(const a of s){const t=e(a);if(t)return t}for(const a of this.dependencies){s=a.getAllSymbolsSync(Fc);for(const t of s){const s=e(t);if(s)return s}}}async resolve(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=await super.resolve(t,e);if(!s&&!e)for(const a of this.dependencies)if(s=await a.resolve(t,!1),s)return s;return s}resolveSync(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=super.resolveSync(t,e);if(!s&&!e)for(const a of this.dependencies)if(s=a.resolveSync(t,!1),s)return s;return s}},Gc(Wi,"SymbolTable"),Wi),qc=class extends yc{constructor(t,e,s){super(t,s),this.name=t,this.alias=e}};function jc(t){return function(){let t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).reduce(((t,e)=>{var s;let a=null!==(s=t[e.name])&&void 0!==s?s:new Set;return e.alias&&a.add(e.alias),t[e.name]=a,t}),{});return Object.keys(t).reduce(((e,s)=>{let a=t[s];return a.size>0?null===a||void 0===a||a.forEach((t=>{e.push({name:s,alias:t})})):e.push({name:s}),e}),[])}(t.symbolTable.getNestedSymbolsOfTypeSync(qc))}var zc=class extends yc{constructor(t,e){super(t,e),this.name=t}};var $c,tn=($c=tn||{},$c.ALL="ALL",$c.TABLES="TABLES",$c.VIEWS="VIEWS",$c),en=/^\p{L}+$/u,sn=class extends $r{constructor(){super(...arguments),this.tags=[]}pushTag(){this.tags.push(this.text)}isTag(){return this.text===this.tags[0]}popTag(){this.tags.shift()}checkLA(t){return this.inputStream.LA(1)!==t}charIsLetter(){return en.test(this.inputStream.LA(-1))}HandleNumericFail(){this.inputStream.seek(this.inputStream.index-2),this.type=658}HandleLessLessGreaterGreater(){"<<"==this.text?this.type=18:">>"==this.text&&(this.type=19)}UnterminatedBlockCommentDebugAssert(){}CheckIfUtf32Letter(){let t,e=this.inputStream.LA(-2)<<8+this.inputStream.LA(-1);return e<65536?t=[e]:(e-=65536,t=[e/1024+55296,e%1024+56320]),en.test("".concat(t[0]))}},an=(Vi=class t extends sn{constructor(e){super(e),this.interpreter=new hi(this,t._ATN,t.decisionsToDFA,new Si)}get grammarFileName(){return"PostgreSqlLexer.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}get channelNames(){return t.channelNames}get modeNames(){return t.modeNames}action(t,e,s){switch(e){case 28:this.Operator_action(t,s);break;case 656:this.BeginDollarStringConstant_action(t,s);break;case 667:this.NumericFail_action(t,s);break;case 676:this.UnterminatedBlockComment_action(t,s);break;case 688:this.AfterEscapeStringConstantMode_NotContinued_action(t,s);break;case 692:this.AfterEscapeStringConstantWithNewlineMode_NotContinued_action(t,s);break;case 694:this.EndDollarStringConstant_action(t,s)}}Operator_action(t,e){if(0===e)this.HandleLessLessGreaterGreater()}BeginDollarStringConstant_action(t,e){if(1===e)this.pushTag()}NumericFail_action(t,e){if(2===e)this.HandleNumericFail()}UnterminatedBlockComment_action(t,e){if(3===e)this.UnterminatedBlockCommentDebugAssert()}AfterEscapeStringConstantMode_NotContinued_action(t,e){e}AfterEscapeStringConstantWithNewlineMode_NotContinued_action(t,e){e}EndDollarStringConstant_action(t,e){if(6===e)this.popTag()}sempred(t,e,s){switch(e){case 28:return this.Operator_sempred(t,s);case 29:return this.OperatorEndingWithPlusMinus_sempred(t,s);case 640:return this.IdentifierStartChar_sempred(t,s);case 694:return this.EndDollarStringConstant_sempred(t,s)}return!0}Operator_sempred(t,e){switch(e){case 0:return this.checkLA("-");case 1:case 2:return this.checkLA("*")}return!0}OperatorEndingWithPlusMinus_sempred(t,e){switch(e){case 3:case 5:return this.checkLA("-");case 4:return this.checkLA("*")}return!0}IdentifierStartChar_sempred(t,e){switch(e){case 6:return this.charIsLetter();case 7:return}return!0}EndDollarStringConstant_sempred(t,e){return 8!==e||this.isTag()}static get _ATN(){return t.__ATN||(t.__ATN=(new fr).deserialize(t._serializedATN)),t.__ATN}get vocabulary(){return t.vocabulary}},Vi.Dollar=1,Vi.OPEN_PAREN=2,Vi.CLOSE_PAREN=3,Vi.OPEN_BRACKET=4,Vi.CLOSE_BRACKET=5,Vi.COMMA=6,Vi.SEMI=7,Vi.COLON=8,Vi.STAR=9,Vi.EQUAL=10,Vi.DOT=11,Vi.PLUS=12,Vi.MINUS=13,Vi.SLASH=14,Vi.CARET=15,Vi.LT=16,Vi.GT=17,Vi.LESS_LESS=18,Vi.GREATER_GREATER=19,Vi.COLON_EQUALS=20,Vi.LESS_EQUALS=21,Vi.EQUALS_GREATER=22,Vi.GREATER_EQUALS=23,Vi.DOT_DOT=24,Vi.NOT_EQUALS=25,Vi.TYPECAST=26,Vi.PERCENT=27,Vi.PARAM=28,Vi.Operator=29,Vi.ALL=30,Vi.ANALYSE=31,Vi.ANALYZE=32,Vi.AND=33,Vi.ANY=34,Vi.ARRAY=35,Vi.AS=36,Vi.ASC=37,Vi.ASYMMETRIC=38,Vi.BOTH=39,Vi.CASE=40,Vi.CAST=41,Vi.CHECK=42,Vi.COLLATE=43,Vi.COLUMN=44,Vi.CONSTRAINT=45,Vi.CREATE=46,Vi.CURRENT_CATALOG=47,Vi.CURRENT_DATE=48,Vi.CURRENT_ROLE=49,Vi.CURRENT_TIME=50,Vi.CURRENT_TIMESTAMP=51,Vi.CURRENT_USER=52,Vi.DEFAULT=53,Vi.DEFERRABLE=54,Vi.DESC=55,Vi.DISTINCT=56,Vi.DO=57,Vi.ELSE=58,Vi.EXCEPT=59,Vi.FALSE_P=60,Vi.FETCH=61,Vi.FOR=62,Vi.FOREIGN=63,Vi.FROM=64,Vi.GRANT=65,Vi.GROUP_P=66,Vi.HAVING=67,Vi.IN_P=68,Vi.INITIALLY=69,Vi.INTERSECT=70,Vi.INTO=71,Vi.LATERAL_P=72,Vi.LEADING=73,Vi.LIMIT=74,Vi.LOCALTIME=75,Vi.LOCALTIMESTAMP=76,Vi.NOT=77,Vi.NULL_P=78,Vi.OFFSET=79,Vi.ON=80,Vi.ONLY=81,Vi.OR=82,Vi.ORDER=83,Vi.PLACING=84,Vi.PRIMARY=85,Vi.REFERENCES=86,Vi.RETURNING=87,Vi.SELECT=88,Vi.SESSION_USER=89,Vi.SOME=90,Vi.SYMMETRIC=91,Vi.TABLE=92,Vi.THEN=93,Vi.TO=94,Vi.TRAILING=95,Vi.TRUE_P=96,Vi.UNION=97,Vi.UNIQUE=98,Vi.USER=99,Vi.USING=100,Vi.VARIADIC=101,Vi.WHEN=102,Vi.WHERE=103,Vi.WINDOW=104,Vi.WITH=105,Vi.AUTHORIZATION=106,Vi.BINARY=107,Vi.COLLATION=108,Vi.CONCURRENTLY=109,Vi.CROSS=110,Vi.CURRENT_SCHEMA=111,Vi.FREEZE=112,Vi.FULL=113,Vi.ILIKE=114,Vi.INNER_P=115,Vi.IS=116,Vi.ISNULL=117,Vi.JOIN=118,Vi.LEFT=119,Vi.LIKE=120,Vi.NATURAL=121,Vi.NOTNULL=122,Vi.OUTER_P=123,Vi.OVER=124,Vi.OVERLAPS=125,Vi.RIGHT=126,Vi.SIMILAR=127,Vi.VERBOSE=128,Vi.ABORT_P=129,Vi.ABSOLUTE_P=130,Vi.ACCESS=131,Vi.ACTION=132,Vi.ADD_P=133,Vi.ADMIN=134,Vi.AFTER=135,Vi.AGGREGATE=136,Vi.ALSO=137,Vi.ALTER=138,Vi.ALWAYS=139,Vi.ASSERTION=140,Vi.ASSIGNMENT=141,Vi.AT=142,Vi.ATTRIBUTE=143,Vi.BACKWARD=144,Vi.BEFORE=145,Vi.BEGIN_P=146,Vi.BY=147,Vi.CACHE=148,Vi.CALLED=149,Vi.CASCADE=150,Vi.CASCADED=151,Vi.CATALOG=152,Vi.CHAIN=153,Vi.CHARACTERISTICS=154,Vi.CHECKPOINT=155,Vi.CLASS=156,Vi.CLOSE=157,Vi.CLUSTER=158,Vi.COMMENT=159,Vi.COMMENTS=160,Vi.COMMIT=161,Vi.COMMITTED=162,Vi.CONFIGURATION=163,Vi.CONNECTION=164,Vi.CONSTRAINTS=165,Vi.CONTENT_P=166,Vi.CONTINUE_P=167,Vi.CONVERSION_P=168,Vi.COPY=169,Vi.COST=170,Vi.CSV=171,Vi.CURSOR=172,Vi.CYCLE=173,Vi.DATA_P=174,Vi.DATABASE=175,Vi.DAY_P=176,Vi.DEALLOCATE=177,Vi.DECLARE=178,Vi.DEFAULTS=179,Vi.DEFERRED=180,Vi.DEFINER=181,Vi.DELETE_P=182,Vi.DELIMITER=183,Vi.DELIMITERS=184,Vi.DICTIONARY=185,Vi.DISABLE_P=186,Vi.DISCARD=187,Vi.DOCUMENT_P=188,Vi.DOMAIN_P=189,Vi.DOUBLE_P=190,Vi.DROP=191,Vi.EACH=192,Vi.ENABLE_P=193,Vi.ENCODING=194,Vi.ENCRYPTED=195,Vi.ENUM_P=196,Vi.ESCAPE=197,Vi.EVENT=198,Vi.EXCLUDE=199,Vi.EXCLUDING=200,Vi.EXCLUSIVE=201,Vi.EXECUTE=202,Vi.EXPLAIN=203,Vi.EXTENSION=204,Vi.EXTERNAL=205,Vi.FAMILY=206,Vi.FIRST_P=207,Vi.FOLLOWING=208,Vi.FORCE=209,Vi.FORWARD=210,Vi.FUNCTION=211,Vi.FUNCTIONS=212,Vi.GLOBAL=213,Vi.GRANTED=214,Vi.HANDLER=215,Vi.HEADER_P=216,Vi.HOLD=217,Vi.HOUR_P=218,Vi.IDENTITY_P=219,Vi.IF_P=220,Vi.IMMEDIATE=221,Vi.IMMUTABLE=222,Vi.IMPLICIT_P=223,Vi.INCLUDING=224,Vi.INCREMENT=225,Vi.INDEX=226,Vi.INDEXES=227,Vi.INHERIT=228,Vi.INHERITS=229,Vi.INLINE_P=230,Vi.INSENSITIVE=231,Vi.INSERT=232,Vi.INSTEAD=233,Vi.INVOKER=234,Vi.ISOLATION=235,Vi.KEY=236,Vi.LABEL=237,Vi.LANGUAGE=238,Vi.LARGE_P=239,Vi.LAST_P=240,Vi.LEAKPROOF=241,Vi.LEVEL=242,Vi.LISTEN=243,Vi.LOAD=244,Vi.LOCAL=245,Vi.LOCATION=246,Vi.LOCK_P=247,Vi.MAPPING=248,Vi.MATCH=249,Vi.MATCHED=250,Vi.MATERIALIZED=251,Vi.MAXVALUE=252,Vi.MERGE=253,Vi.MINUTE_P=254,Vi.MINVALUE=255,Vi.MODE=256,Vi.MONTH_P=257,Vi.MOVE=258,Vi.NAME_P=259,Vi.NAMES=260,Vi.NEXT=261,Vi.NO=262,Vi.NOTHING=263,Vi.NOTIFY=264,Vi.NOWAIT=265,Vi.NULLS_P=266,Vi.OBJECT_P=267,Vi.OF=268,Vi.OFF=269,Vi.OIDS=270,Vi.OPERATOR=271,Vi.OPTION=272,Vi.OPTIONS=273,Vi.OWNED=274,Vi.OWNER=275,Vi.PARSER=276,Vi.PARTIAL=277,Vi.PARTITION=278,Vi.PASSING=279,Vi.PASSWORD=280,Vi.PLANS=281,Vi.PRECEDING=282,Vi.PREPARE=283,Vi.PREPARED=284,Vi.PRESERVE=285,Vi.PRIOR=286,Vi.PRIVILEGES=287,Vi.PROCEDURAL=288,Vi.PROCEDURE=289,Vi.PROGRAM=290,Vi.QUOTE=291,Vi.RANGE=292,Vi.READ=293,Vi.REASSIGN=294,Vi.RECHECK=295,Vi.RECURSIVE=296,Vi.REF=297,Vi.REFRESH=298,Vi.REINDEX=299,Vi.RELATIVE_P=300,Vi.RELEASE=301,Vi.RENAME=302,Vi.REPEATABLE=303,Vi.REPLACE=304,Vi.REPLICA=305,Vi.RESET=306,Vi.RESTART=307,Vi.RESTRICT=308,Vi.RETURNS=309,Vi.REVOKE=310,Vi.ROLE=311,Vi.ROLLBACK=312,Vi.ROWS=313,Vi.RULE=314,Vi.SAVEPOINT=315,Vi.SCHEMA=316,Vi.SCROLL=317,Vi.SEARCH=318,Vi.SECOND_P=319,Vi.SECURITY=320,Vi.SEQUENCE=321,Vi.SEQUENCES=322,Vi.SERIALIZABLE=323,Vi.SERVER=324,Vi.SESSION=325,Vi.SET=326,Vi.SHARE=327,Vi.SHOW=328,Vi.SIMPLE=329,Vi.SNAPSHOT=330,Vi.STABLE=331,Vi.STANDALONE_P=332,Vi.START=333,Vi.STATEMENT=334,Vi.STATISTICS=335,Vi.STDIN=336,Vi.STDOUT=337,Vi.STORAGE=338,Vi.STRICT_P=339,Vi.STRIP_P=340,Vi.SYSID=341,Vi.SYSTEM_P=342,Vi.TABLES=343,Vi.TABLESPACE=344,Vi.TEMP=345,Vi.TEMPLATE=346,Vi.TEMPORARY=347,Vi.TEXT_P=348,Vi.TRANSACTION=349,Vi.TRIGGER=350,Vi.TRUNCATE=351,Vi.TRUSTED=352,Vi.TYPE_P=353,Vi.TYPES_P=354,Vi.UNBOUNDED=355,Vi.UNCOMMITTED=356,Vi.UNENCRYPTED=357,Vi.UNKNOWN=358,Vi.UNLISTEN=359,Vi.UNLOGGED=360,Vi.UNTIL=361,Vi.UPDATE=362,Vi.VACUUM=363,Vi.VALID=364,Vi.VALIDATE=365,Vi.VALIDATOR=366,Vi.VARYING=367,Vi.VERSION_P=368,Vi.VIEW=369,Vi.VOLATILE=370,Vi.WHITESPACE_P=371,Vi.WITHOUT=372,Vi.WORK=373,Vi.WRAPPER=374,Vi.WRITE=375,Vi.XML_P=376,Vi.YEAR_P=377,Vi.YES_P=378,Vi.ZONE=379,Vi.BETWEEN=380,Vi.BIGINT=381,Vi.BIT=382,Vi.BOOLEAN_P=383,Vi.CHAR_P=384,Vi.CHARACTER=385,Vi.COALESCE=386,Vi.DEC=387,Vi.DECIMAL_P=388,Vi.EXISTS=389,Vi.EXTRACT=390,Vi.FLOAT_P=391,Vi.GREATEST=392,Vi.INOUT=393,Vi.INT_P=394,Vi.INTEGER=395,Vi.INTERVAL=396,Vi.LEAST=397,Vi.NATIONAL=398,Vi.NCHAR=399,Vi.NONE=400,Vi.NULLIF=401,Vi.NUMERIC=402,Vi.OVERLAY=403,Vi.POSITION=404,Vi.PRECISION=405,Vi.REAL=406,Vi.ROW=407,Vi.SETOF=408,Vi.SMALLINT=409,Vi.SUBSTRING=410,Vi.TIME=411,Vi.TIMESTAMP=412,Vi.TREAT=413,Vi.TRIM=414,Vi.VALUES=415,Vi.VARCHAR=416,Vi.XMLATTRIBUTES=417,Vi.XMLCOMMENT=418,Vi.XMLAGG=419,Vi.XML_IS_WELL_FORMED=420,Vi.XML_IS_WELL_FORMED_DOCUMENT=421,Vi.XML_IS_WELL_FORMED_CONTENT=422,Vi.XPATH=423,Vi.XPATH_EXISTS=424,Vi.XMLCONCAT=425,Vi.XMLELEMENT=426,Vi.XMLEXISTS=427,Vi.XMLFOREST=428,Vi.XMLPARSE=429,Vi.XMLPI=430,Vi.XMLROOT=431,Vi.XMLSERIALIZE=432,Vi.CALL=433,Vi.CURRENT_P=434,Vi.ATTACH=435,Vi.DETACH=436,Vi.EXPRESSION=437,Vi.GENERATED=438,Vi.LOGGED=439,Vi.STORED=440,Vi.INCLUDE=441,Vi.ROUTINE=442,Vi.TRANSFORM=443,Vi.IMPORT_P=444,Vi.POLICY=445,Vi.METHOD=446,Vi.REFERENCING=447,Vi.NEW=448,Vi.OLD=449,Vi.VALUE_P=450,Vi.SUBSCRIPTION=451,Vi.PUBLICATION=452,Vi.OUT_P=453,Vi.END_P=454,Vi.ROUTINES=455,Vi.SCHEMAS=456,Vi.PROCEDURES=457,Vi.INPUT_P=458,Vi.SUPPORT=459,Vi.PARALLEL=460,Vi.SQL_P=461,Vi.DEPENDS=462,Vi.OVERRIDING=463,Vi.CONFLICT=464,Vi.SKIP_P=465,Vi.LOCKED=466,Vi.TIES=467,Vi.ROLLUP=468,Vi.CUBE=469,Vi.GROUPING=470,Vi.SETS=471,Vi.TABLESAMPLE=472,Vi.ORDINALITY=473,Vi.XMLTABLE=474,Vi.COLUMNS=475,Vi.XMLNAMESPACES=476,Vi.ROWTYPE=477,Vi.NORMALIZED=478,Vi.WITHIN=479,Vi.FILTER=480,Vi.GROUPS=481,Vi.OTHERS=482,Vi.NFC=483,Vi.NFD=484,Vi.NFKC=485,Vi.NFKD=486,Vi.UESCAPE=487,Vi.VIEWS=488,Vi.NORMALIZE=489,Vi.DUMP=490,Vi.PRINT_STRICT_PARAMS=491,Vi.VARIABLE_CONFLICT=492,Vi.ERROR=493,Vi.USE_VARIABLE=494,Vi.USE_COLUMN=495,Vi.ALIAS=496,Vi.CONSTANT=497,Vi.PERFORM=498,Vi.GET=499,Vi.DIAGNOSTICS=500,Vi.STACKED=501,Vi.ELSIF=502,Vi.WHILE=503,Vi.REVERSE=504,Vi.FOREACH=505,Vi.SLICE=506,Vi.EXIT=507,Vi.RETURN=508,Vi.QUERY=509,Vi.RAISE=510,Vi.SQLSTATE=511,Vi.DEBUG=512,Vi.LOG=513,Vi.INFO=514,Vi.NOTICE=515,Vi.WARNING=516,Vi.EXCEPTION=517,Vi.ASSERT=518,Vi.LOOP=519,Vi.OPEN=520,Vi.ABS=521,Vi.CBRT=522,Vi.CEIL=523,Vi.CEILING=524,Vi.DEGREES=525,Vi.DIV=526,Vi.EXP=527,Vi.FACTORIAL=528,Vi.FLOOR=529,Vi.GCD=530,Vi.LCM=531,Vi.LN=532,Vi.LOG10=533,Vi.MIN_SCALE=534,Vi.MOD=535,Vi.PI=536,Vi.POWER=537,Vi.RADIANS=538,Vi.ROUND=539,Vi.SCALE=540,Vi.SIGN=541,Vi.SQRT=542,Vi.TRIM_SCALE=543,Vi.TRUNC=544,Vi.WIDTH_BUCKET=545,Vi.RANDOM=546,Vi.SETSEED=547,Vi.ACOS=548,Vi.ACOSD=549,Vi.ASIN=550,Vi.ASIND=551,Vi.ATAN=552,Vi.ATAND=553,Vi.ATAN2=554,Vi.ATAN2D=555,Vi.COS=556,Vi.COSD=557,Vi.COT=558,Vi.COTD=559,Vi.SIN=560,Vi.SIND=561,Vi.TAN=562,Vi.TAND=563,Vi.SINH=564,Vi.COSH=565,Vi.TANH=566,Vi.ASINH=567,Vi.ACOSH=568,Vi.ATANH=569,Vi.BIT_LENGTH=570,Vi.CHAR_LENGTH=571,Vi.CHARACTER_LENGTH=572,Vi.LOWER=573,Vi.OCTET_LENGTH=574,Vi.UPPER=575,Vi.ASCII=576,Vi.BTRIM=577,Vi.CHR=578,Vi.CONCAT=579,Vi.CONCAT_WS=580,Vi.FORMAT=581,Vi.INITCAP=582,Vi.LENGTH=583,Vi.LPAD=584,Vi.LTRIM=585,Vi.MD5=586,Vi.PARSE_IDENT=587,Vi.PG_CLIENT_ENCODING=588,Vi.QUOTE_IDENT=589,Vi.QUOTE_LITERAL=590,Vi.QUOTE_NULLABLE=591,Vi.REGEXP_COUNT=592,Vi.REGEXP_INSTR=593,Vi.REGEXP_LIKE=594,Vi.REGEXP_MATCH=595,Vi.REGEXP_MATCHES=596,Vi.REGEXP_REPLACE=597,Vi.REGEXP_SPLIT_TO_ARRAY=598,Vi.REGEXP_SPLIT_TO_TABLE=599,Vi.REGEXP_SUBSTR=600,Vi.REPEAT=601,Vi.RPAD=602,Vi.RTRIM=603,Vi.SPLIT_PART=604,Vi.STARTS_WITH=605,Vi.STRING_TO_ARRAY=606,Vi.STRING_TO_TABLE=607,Vi.STRPOS=608,Vi.SUBSTR=609,Vi.TO_ASCII=610,Vi.TO_HEX=611,Vi.TRANSLATE=612,Vi.UNISTR=613,Vi.AGE=614,Vi.CLOCK_TIMESTAMP=615,Vi.DATE_BIN=616,Vi.DATE_PART=617,Vi.DATE_TRUNC=618,Vi.ISFINITE=619,Vi.JUSTIFY_DAYS=620,Vi.JUSTIFY_HOURS=621,Vi.JUSTIFY_INTERVAL=622,Vi.MAKE_DATE=623,Vi.MAKE_INTERVAL=624,Vi.MAKE_TIME=625,Vi.MAKE_TIMESTAMP=626,Vi.MAKE_TIMESTAMPTZ=627,Vi.NOW=628,Vi.STATEMENT_TIMESTAMP=629,Vi.TIMEOFDAY=630,Vi.TRANSACTION_TIMESTAMP=631,Vi.TO_TIMESTAMP=632,Vi.TO_CHAR=633,Vi.TO_DATE=634,Vi.TO_NUMBER=635,Vi.Identifier=636,Vi.QuotedIdentifier=637,Vi.UnterminatedQuotedIdentifier=638,Vi.InvalidQuotedIdentifier=639,Vi.InvalidUnterminatedQuotedIdentifier=640,Vi.UnicodeQuotedIdentifier=641,Vi.UnterminatedUnicodeQuotedIdentifier=642,Vi.InvalidUnicodeQuotedIdentifier=643,Vi.InvalidUnterminatedUnicodeQuotedIdentifier=644,Vi.StringConstant=645,Vi.UnterminatedStringConstant=646,Vi.UnicodeEscapeStringConstant=647,Vi.UnterminatedUnicodeEscapeStringConstant=648,Vi.BeginDollarStringConstant=649,Vi.BinaryStringConstant=650,Vi.UnterminatedBinaryStringConstant=651,Vi.InvalidBinaryStringConstant=652,Vi.InvalidUnterminatedBinaryStringConstant=653,Vi.HexadecimalStringConstant=654,Vi.UnterminatedHexadecimalStringConstant=655,Vi.InvalidHexadecimalStringConstant=656,Vi.InvalidUnterminatedHexadecimalStringConstant=657,Vi.Integral=658,Vi.NumericFail=659,Vi.Numeric=660,Vi.PLSQLVARIABLENAME=661,Vi.PLSQLIDENTIFIER=662,Vi.Whitespace=663,Vi.Newline=664,Vi.LineComment=665,Vi.BlockComment=666,Vi.UnterminatedBlockComment=667,Vi.MetaCommand=668,Vi.EndMetaCommand=669,Vi.ErrorCharacter=670,Vi.EscapeStringConstant=671,Vi.UnterminatedEscapeStringConstant=672,Vi.InvalidEscapeStringConstant=673,Vi.InvalidUnterminatedEscapeStringConstant=674,Vi.AfterEscapeStringConstantMode_NotContinued=675,Vi.AfterEscapeStringConstantWithNewlineMode_NotContinued=676,Vi.DollarText=677,Vi.EndDollarStringConstant=678,Vi.AfterEscapeStringConstantWithNewlineMode_Continued=679,Vi.EscapeStringConstantMode=1,Vi.AfterEscapeStringConstantMode=2,Vi.AfterEscapeStringConstantWithNewlineMode=3,Vi.DollarQuotedStringMode=4,Vi.channelNames=["DEFAULT_TOKEN_CHANNEL","HIDDEN"],Vi.literalNames=[null,"'$'","'('","')'","'['","']'","','","';'","':'","'*'","'='","'.'","'+'","'-'","'/'","'^'","'<'","'>'","'<<'","'>>'","':='","'<='","'=>'","'>='","'..'","'<>'","'::'","'%'",null,null,"'ALL'","'ANALYSE'","'ANALYZE'","'AND'","'ANY'","'ARRAY'","'AS'","'ASC'","'ASYMMETRIC'","'BOTH'","'CASE'","'CAST'","'CHECK'","'COLLATE'","'COLUMN'","'CONSTRAINT'","'CREATE'","'CURRENT_CATALOG'","'CURRENT_DATE'","'CURRENT_ROLE'","'CURRENT_TIME'","'CURRENT_TIMESTAMP'","'CURRENT_USER'","'DEFAULT'","'DEFERRABLE'","'DESC'","'DISTINCT'","'DO'","'ELSE'","'EXCEPT'","'FALSE'","'FETCH'","'FOR'","'FOREIGN'","'FROM'","'GRANT'","'GROUP'","'HAVING'","'IN'","'INITIALLY'","'INTERSECT'","'INTO'","'LATERAL'","'LEADING'","'LIMIT'","'LOCALTIME'","'LOCALTIMESTAMP'","'NOT'","'NULL'","'OFFSET'","'ON'","'ONLY'","'OR'","'ORDER'","'PLACING'","'PRIMARY'","'REFERENCES'","'RETURNING'","'SELECT'","'SESSION_USER'","'SOME'","'SYMMETRIC'","'TABLE'","'THEN'","'TO'","'TRAILING'","'TRUE'","'UNION'","'UNIQUE'","'USER'","'USING'","'VARIADIC'","'WHEN'","'WHERE'","'WINDOW'","'WITH'","'AUTHORIZATION'","'BINARY'","'COLLATION'","'CONCURRENTLY'","'CROSS'","'CURRENT_SCHEMA'","'FREEZE'","'FULL'","'ILIKE'","'INNER'","'IS'","'ISNULL'","'JOIN'","'LEFT'","'LIKE'","'NATURAL'","'NOTNULL'","'OUTER'","'OVER'","'OVERLAPS'","'RIGHT'","'SIMILAR'","'VERBOSE'","'ABORT'","'ABSOLUTE'","'ACCESS'","'ACTION'","'ADD'","'ADMIN'","'AFTER'","'AGGREGATE'","'ALSO'","'ALTER'","'ALWAYS'","'ASSERTION'","'ASSIGNMENT'","'AT'","'ATTRIBUTE'","'BACKWARD'","'BEFORE'","'BEGIN'","'BY'","'CACHE'","'CALLED'","'CASCADE'","'CASCADED'","'CATALOG'","'CHAIN'","'CHARACTERISTICS'","'CHECKPOINT'","'CLASS'","'CLOSE'","'CLUSTER'","'COMMENT'","'COMMENTS'","'COMMIT'","'COMMITTED'","'CONFIGURATION'","'CONNECTION'","'CONSTRAINTS'","'CONTENT'","'CONTINUE'","'CONVERSION'","'COPY'","'COST'","'CSV'","'CURSOR'","'CYCLE'","'DATA'","'DATABASE'","'DAY'","'DEALLOCATE'","'DECLARE'","'DEFAULTS'","'DEFERRED'","'DEFINER'","'DELETE'","'DELIMITER'","'DELIMITERS'","'DICTIONARY'","'DISABLE'","'DISCARD'","'DOCUMENT'","'DOMAIN'","'DOUBLE'","'DROP'","'EACH'","'ENABLE'","'ENCODING'","'ENCRYPTED'","'ENUM'","'ESCAPE'","'EVENT'","'EXCLUDE'","'EXCLUDING'","'EXCLUSIVE'","'EXECUTE'","'EXPLAIN'","'EXTENSION'","'EXTERNAL'","'FAMILY'","'FIRST'","'FOLLOWING'","'FORCE'","'FORWARD'","'FUNCTION'","'FUNCTIONS'","'GLOBAL'","'GRANTED'","'HANDLER'","'HEADER'","'HOLD'","'HOUR'","'IDENTITY'","'IF'","'IMMEDIATE'","'IMMUTABLE'","'IMPLICIT'","'INCLUDING'","'INCREMENT'","'INDEX'","'INDEXES'","'INHERIT'","'INHERITS'","'INLINE'","'INSENSITIVE'","'INSERT'","'INSTEAD'","'INVOKER'","'ISOLATION'","'KEY'","'LABEL'","'LANGUAGE'","'LARGE'","'LAST'","'LEAKPROOF'","'LEVEL'","'LISTEN'","'LOAD'","'LOCAL'","'LOCATION'","'LOCK'","'MAPPING'","'MATCH'","'MATCHED'","'MATERIALIZED'","'MAXVALUE'","'MERGE'","'MINUTE'","'MINVALUE'","'MODE'","'MONTH'","'MOVE'","'NAME'","'NAMES'","'NEXT'","'NO'","'NOTHING'","'NOTIFY'","'NOWAIT'","'NULLS'","'OBJECT'","'OF'","'OFF'","'OIDS'","'OPERATOR'","'OPTION'","'OPTIONS'","'OWNED'","'OWNER'","'PARSER'","'PARTIAL'","'PARTITION'","'PASSING'","'PASSWORD'","'PLANS'","'PRECEDING'","'PREPARE'","'PREPARED'","'PRESERVE'","'PRIOR'","'PRIVILEGES'","'PROCEDURAL'","'PROCEDURE'","'PROGRAM'","'QUOTE'","'RANGE'","'READ'","'REASSIGN'","'RECHECK'","'RECURSIVE'","'REF'","'REFRESH'","'REINDEX'","'RELATIVE'","'RELEASE'","'RENAME'","'REPEATABLE'","'REPLACE'","'REPLICA'","'RESET'","'RESTART'","'RESTRICT'","'RETURNS'","'REVOKE'","'ROLE'","'ROLLBACK'","'ROWS'","'RULE'","'SAVEPOINT'","'SCHEMA'","'SCROLL'","'SEARCH'","'SECOND'","'SECURITY'","'SEQUENCE'","'SEQUENCES'","'SERIALIZABLE'","'SERVER'","'SESSION'","'SET'","'SHARE'","'SHOW'","'SIMPLE'","'SNAPSHOT'","'STABLE'","'STANDALONE'","'START'","'STATEMENT'","'STATISTICS'","'STDIN'","'STDOUT'","'STORAGE'","'STRICT'","'STRIP'","'SYSID'","'SYSTEM'","'TABLES'","'TABLESPACE'","'TEMP'","'TEMPLATE'","'TEMPORARY'","'TEXT'","'TRANSACTION'","'TRIGGER'","'TRUNCATE'","'TRUSTED'","'TYPE'","'TYPES'","'UNBOUNDED'","'UNCOMMITTED'","'UNENCRYPTED'","'UNKNOWN'","'UNLISTEN'","'UNLOGGED'","'UNTIL'","'UPDATE'","'VACUUM'","'VALID'","'VALIDATE'","'VALIDATOR'","'VARYING'","'VERSION'","'VIEW'","'VOLATILE'","'WHITESPACE'","'WITHOUT'","'WORK'","'WRAPPER'","'WRITE'","'XML'","'YEAR'","'YES'","'ZONE'","'BETWEEN'","'BIGINT'","'BIT'","'BOOLEAN'","'CHAR'","'CHARACTER'","'COALESCE'","'DEC'","'DECIMAL'","'EXISTS'","'EXTRACT'","'FLOAT'","'GREATEST'","'INOUT'","'INT'","'INTEGER'","'INTERVAL'","'LEAST'","'NATIONAL'","'NCHAR'","'NONE'","'NULLIF'","'NUMERIC'","'OVERLAY'","'POSITION'","'PRECISION'","'REAL'","'ROW'","'SETOF'","'SMALLINT'","'SUBSTRING'","'TIME'","'TIMESTAMP'","'TREAT'","'TRIM'","'VALUES'","'VARCHAR'","'XMLATTRIBUTES'","'XMLCOMMENT'","'XMLAGG'","'XML_IS_WELL_FORMED'","'XML_IS_WELL_FORMED_DOCUMENT'","'XML_IS_WELL_FORMED_CONTENT'","'XPATH'","'XPATH_EXISTS'","'XMLCONCAT'","'XMLELEMENT'","'XMLEXISTS'","'XMLFOREST'","'XMLPARSE'","'XMLPI'","'XMLROOT'","'XMLSERIALIZE'","'CALL'","'CURRENT'","'ATTACH'","'DETACH'","'EXPRESSION'","'GENERATED'","'LOGGED'","'STORED'","'INCLUDE'","'ROUTINE'","'TRANSFORM'","'IMPORT'","'POLICY'","'METHOD'","'REFERENCING'","'NEW'","'OLD'","'VALUE'","'SUBSCRIPTION'","'PUBLICATION'","'OUT'","'END'","'ROUTINES'","'SCHEMAS'","'PROCEDURES'","'INPUT'","'SUPPORT'","'PARALLEL'","'SQL'","'DEPENDS'","'OVERRIDING'","'CONFLICT'","'SKIP'","'LOCKED'","'TIES'","'ROLLUP'","'CUBE'","'GROUPING'","'SETS'","'TABLESAMPLE'","'ORDINALITY'","'XMLTABLE'","'COLUMNS'","'XMLNAMESPACES'","'ROWTYPE'","'NORMALIZED'","'WITHIN'","'FILTER'","'GROUPS'","'OTHERS'","'NFC'","'NFD'","'NFKC'","'NFKD'","'UESCAPE'","'VIEWS'","'NORMALIZE'","'DUMP'","'PRINT_STRICT_PARAMS'","'VARIABLE_CONFLICT'","'ERROR'","'USE_VARIABLE'","'USE_COLUMN'","'ALIAS'","'CONSTANT'","'PERFORM'","'GET'","'DIAGNOSTICS'","'STACKED'","'ELSIF'","'WHILE'","'REVERSE'","'FOREACH'","'SLICE'","'EXIT'","'RETURN'","'QUERY'","'RAISE'","'SQLSTATE'","'DEBUG'","'LOG'","'INFO'","'NOTICE'","'WARNING'","'EXCEPTION'","'ASSERT'","'LOOP'","'OPEN'","'ABS'","'CBRT'","'CEIL'","'CEILING'","'DEGREES'","'DIV'","'EXP'","'FACTORIAL'","'FLOOR'","'GCD'","'LCM'","'LN'","'LOG10'","'MIN_SCALE'","'MOD'","'PI'","'POWER'","'RADIANS'","'ROUND'","'SCALE'","'SIGN'","'SQRT'","'TRIM_SCALE'","'TRUNC'","'WIDTH_BUCKET'","'RANDOM'","'SETSEED'","'ACOS'","'ACOSD'","'ASIN'","'ASIND'","'ATAN'","'ATAND'","'ATAN2'","'ATAN2D'","'COS'","'COSD'","'COT'","'COTD'","'SIN'","'SIND'","'TAN'","'TAND'","'SINH'","'COSH'","'TANH'","'ASINH'","'ACOSH'","'ATANH'","'BIT_LENGTH'","'CHAR_LENGTH'","'CHARACTER_LENGTH'","'LOWER'","'OCTET_LENGTH'","'UPPER'","'ASCII'","'BTRIM'","'CHR'","'CONCAT'","'CONCAT_WS'","'FORMAT'","'INITCAP'","'LENGTH'","'LPAD'","'LTRIM'","'MD5'","'PARSE_IDENT'","'PG_CLIENT_ENCODING'","'QUOTE_IDENT'","'QUOTE_LITERAL'","'QUOTE_NULLABLE'","'REGEXP_COUNT'","'REGEXP_INSTR'","'REGEXP_LIKE'","'REGEXP_MATCH'","'REGEXP_MATCHES'","'REGEXP_REPLACE'","'REGEXP_SPLIT_TO_ARRAY'","'REGEXP_SPLIT_TO_TABLE'","'REGEXP_SUBSTR'","'REPEAT'","'RPAD'","'RTRIM'","'SPLIT_PART'","'STARTS_WITH'","'STRING_TO_ARRAY'","'STRING_TO_TABLE'","'STRPOS'","'SUBSTR'","'TO_ASCII'","'TO_HEX'","'TRANSLATE'","'UNISTR'","'AGE'","'CLOCK_TIMESTAMP'","'DATE_BIN'","'DATE_PART'","'DATE_TRUNC'","'ISFINITE'","'JUSTIFY_DAYS'","'JUSTIFY_HOURS'","'JUSTIFY_INTERVAL'","'MAKE_DATE'","'MAKE_INTERVAL'","'MAKE_TIME'","'MAKE_TIMESTAMP'","'MAKE_TIMESTAMPTZ'","'NOW'","'STATEMENT_TIMESTAMP'","'TIMEOFDAY'","'TRANSACTION_TIMESTAMP'","'TO_TIMESTAMP'","'TO_CHAR'","'TO_DATE'","'TO_NUMBER'",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"'\\'",null,null,null,null,null,null,null,null,null,"'''"],Vi.symbolicNames=[null,"Dollar","OPEN_PAREN","CLOSE_PAREN","OPEN_BRACKET","CLOSE_BRACKET","COMMA","SEMI","COLON","STAR","EQUAL","DOT","PLUS","MINUS","SLASH","CARET","LT","GT","LESS_LESS","GREATER_GREATER","COLON_EQUALS","LESS_EQUALS","EQUALS_GREATER","GREATER_EQUALS","DOT_DOT","NOT_EQUALS","TYPECAST","PERCENT","PARAM","Operator","ALL","ANALYSE","ANALYZE","AND","ANY","ARRAY","AS","ASC","ASYMMETRIC","BOTH","CASE","CAST","CHECK","COLLATE","COLUMN","CONSTRAINT","CREATE","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","EXCEPT","FALSE_P","FETCH","FOR","FOREIGN","FROM","GRANT","GROUP_P","HAVING","IN_P","INITIALLY","INTERSECT","INTO","LATERAL_P","LEADING","LIMIT","LOCALTIME","LOCALTIMESTAMP","NOT","NULL_P","OFFSET","ON","ONLY","OR","ORDER","PLACING","PRIMARY","REFERENCES","RETURNING","SELECT","SESSION_USER","SOME","SYMMETRIC","TABLE","THEN","TO","TRAILING","TRUE_P","UNION","UNIQUE","USER","USING","VARIADIC","WHEN","WHERE","WINDOW","WITH","AUTHORIZATION","BINARY","COLLATION","CONCURRENTLY","CROSS","CURRENT_SCHEMA","FREEZE","FULL","ILIKE","INNER_P","IS","ISNULL","JOIN","LEFT","LIKE","NATURAL","NOTNULL","OUTER_P","OVER","OVERLAPS","RIGHT","SIMILAR","VERBOSE","ABORT_P","ABSOLUTE_P","ACCESS","ACTION","ADD_P","ADMIN","AFTER","AGGREGATE","ALSO","ALTER","ALWAYS","ASSERTION","ASSIGNMENT","AT","ATTRIBUTE","BACKWARD","BEFORE","BEGIN_P","BY","CACHE","CALLED","CASCADE","CASCADED","CATALOG","CHAIN","CHARACTERISTICS","CHECKPOINT","CLASS","CLOSE","CLUSTER","COMMENT","COMMENTS","COMMIT","COMMITTED","CONFIGURATION","CONNECTION","CONSTRAINTS","CONTENT_P","CONTINUE_P","CONVERSION_P","COPY","COST","CSV","CURSOR","CYCLE","DATA_P","DATABASE","DAY_P","DEALLOCATE","DECLARE","DEFAULTS","DEFERRED","DEFINER","DELETE_P","DELIMITER","DELIMITERS","DICTIONARY","DISABLE_P","DISCARD","DOCUMENT_P","DOMAIN_P","DOUBLE_P","DROP","EACH","ENABLE_P","ENCODING","ENCRYPTED","ENUM_P","ESCAPE","EVENT","EXCLUDE","EXCLUDING","EXCLUSIVE","EXECUTE","EXPLAIN","EXTENSION","EXTERNAL","FAMILY","FIRST_P","FOLLOWING","FORCE","FORWARD","FUNCTION","FUNCTIONS","GLOBAL","GRANTED","HANDLER","HEADER_P","HOLD","HOUR_P","IDENTITY_P","IF_P","IMMEDIATE","IMMUTABLE","IMPLICIT_P","INCLUDING","INCREMENT","INDEX","INDEXES","INHERIT","INHERITS","INLINE_P","INSENSITIVE","INSERT","INSTEAD","INVOKER","ISOLATION","KEY","LABEL","LANGUAGE","LARGE_P","LAST_P","LEAKPROOF","LEVEL","LISTEN","LOAD","LOCAL","LOCATION","LOCK_P","MAPPING","MATCH","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MINUTE_P","MINVALUE","MODE","MONTH_P","MOVE","NAME_P","NAMES","NEXT","NO","NOTHING","NOTIFY","NOWAIT","NULLS_P","OBJECT_P","OF","OFF","OIDS","OPERATOR","OPTION","OPTIONS","OWNED","OWNER","PARSER","PARTIAL","PARTITION","PASSING","PASSWORD","PLANS","PRECEDING","PREPARE","PREPARED","PRESERVE","PRIOR","PRIVILEGES","PROCEDURAL","PROCEDURE","PROGRAM","QUOTE","RANGE","READ","REASSIGN","RECHECK","RECURSIVE","REF","REFRESH","REINDEX","RELATIVE_P","RELEASE","RENAME","REPEATABLE","REPLACE","REPLICA","RESET","RESTART","RESTRICT","RETURNS","REVOKE","ROLE","ROLLBACK","ROWS","RULE","SAVEPOINT","SCHEMA","SCROLL","SEARCH","SECOND_P","SECURITY","SEQUENCE","SEQUENCES","SERIALIZABLE","SERVER","SESSION","SET","SHARE","SHOW","SIMPLE","SNAPSHOT","STABLE","STANDALONE_P","START","STATEMENT","STATISTICS","STDIN","STDOUT","STORAGE","STRICT_P","STRIP_P","SYSID","SYSTEM_P","TABLES","TABLESPACE","TEMP","TEMPLATE","TEMPORARY","TEXT_P","TRANSACTION","TRIGGER","TRUNCATE","TRUSTED","TYPE_P","TYPES_P","UNBOUNDED","UNCOMMITTED","UNENCRYPTED","UNKNOWN","UNLISTEN","UNLOGGED","UNTIL","UPDATE","VACUUM","VALID","VALIDATE","VALIDATOR","VARYING","VERSION_P","VIEW","VOLATILE","WHITESPACE_P","WITHOUT","WORK","WRAPPER","WRITE","XML_P","YEAR_P","YES_P","ZONE","BETWEEN","BIGINT","BIT","BOOLEAN_P","CHAR_P","CHARACTER","COALESCE","DEC","DECIMAL_P","EXISTS","EXTRACT","FLOAT_P","GREATEST","INOUT","INT_P","INTEGER","INTERVAL","LEAST","NATIONAL","NCHAR","NONE","NULLIF","NUMERIC","OVERLAY","POSITION","PRECISION","REAL","ROW","SETOF","SMALLINT","SUBSTRING","TIME","TIMESTAMP","TREAT","TRIM","VALUES","VARCHAR","XMLATTRIBUTES","XMLCOMMENT","XMLAGG","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_DOCUMENT","XML_IS_WELL_FORMED_CONTENT","XPATH","XPATH_EXISTS","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","CALL","CURRENT_P","ATTACH","DETACH","EXPRESSION","GENERATED","LOGGED","STORED","INCLUDE","ROUTINE","TRANSFORM","IMPORT_P","POLICY","METHOD","REFERENCING","NEW","OLD","VALUE_P","SUBSCRIPTION","PUBLICATION","OUT_P","END_P","ROUTINES","SCHEMAS","PROCEDURES","INPUT_P","SUPPORT","PARALLEL","SQL_P","DEPENDS","OVERRIDING","CONFLICT","SKIP_P","LOCKED","TIES","ROLLUP","CUBE","GROUPING","SETS","TABLESAMPLE","ORDINALITY","XMLTABLE","COLUMNS","XMLNAMESPACES","ROWTYPE","NORMALIZED","WITHIN","FILTER","GROUPS","OTHERS","NFC","NFD","NFKC","NFKD","UESCAPE","VIEWS","NORMALIZE","DUMP","PRINT_STRICT_PARAMS","VARIABLE_CONFLICT","ERROR","USE_VARIABLE","USE_COLUMN","ALIAS","CONSTANT","PERFORM","GET","DIAGNOSTICS","STACKED","ELSIF","WHILE","REVERSE","FOREACH","SLICE","EXIT","RETURN","QUERY","RAISE","SQLSTATE","DEBUG","LOG","INFO","NOTICE","WARNING","EXCEPTION","ASSERT","LOOP","OPEN","ABS","CBRT","CEIL","CEILING","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","ROUND","SCALE","SIGN","SQRT","TRIM_SCALE","TRUNC","WIDTH_BUCKET","RANDOM","SETSEED","ACOS","ACOSD","ASIN","ASIND","ATAN","ATAND","ATAN2","ATAN2D","COS","COSD","COT","COTD","SIN","SIND","TAN","TAND","SINH","COSH","TANH","ASINH","ACOSH","ATANH","BIT_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","LOWER","OCTET_LENGTH","UPPER","ASCII","BTRIM","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LENGTH","LPAD","LTRIM","MD5","PARSE_IDENT","PG_CLIENT_ENCODING","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REGEXP_SUBSTR","REPEAT","RPAD","RTRIM","SPLIT_PART","STARTS_WITH","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","TO_ASCII","TO_HEX","TRANSLATE","UNISTR","AGE","CLOCK_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","STATEMENT_TIMESTAMP","TIMEOFDAY","TRANSACTION_TIMESTAMP","TO_TIMESTAMP","TO_CHAR","TO_DATE","TO_NUMBER","Identifier","QuotedIdentifier","UnterminatedQuotedIdentifier","InvalidQuotedIdentifier","InvalidUnterminatedQuotedIdentifier","UnicodeQuotedIdentifier","UnterminatedUnicodeQuotedIdentifier","InvalidUnicodeQuotedIdentifier","InvalidUnterminatedUnicodeQuotedIdentifier","StringConstant","UnterminatedStringConstant","UnicodeEscapeStringConstant","UnterminatedUnicodeEscapeStringConstant","BeginDollarStringConstant","BinaryStringConstant","UnterminatedBinaryStringConstant","InvalidBinaryStringConstant","InvalidUnterminatedBinaryStringConstant","HexadecimalStringConstant","UnterminatedHexadecimalStringConstant","InvalidHexadecimalStringConstant","InvalidUnterminatedHexadecimalStringConstant","Integral","NumericFail","Numeric","PLSQLVARIABLENAME","PLSQLIDENTIFIER","Whitespace","Newline","LineComment","BlockComment","UnterminatedBlockComment","MetaCommand","EndMetaCommand","ErrorCharacter","EscapeStringConstant","UnterminatedEscapeStringConstant","InvalidEscapeStringConstant","InvalidUnterminatedEscapeStringConstant","AfterEscapeStringConstantMode_NotContinued","AfterEscapeStringConstantWithNewlineMode_NotContinued","DollarText","EndDollarStringConstant","AfterEscapeStringConstantWithNewlineMode_Continued"],Vi.modeNames=["DEFAULT_MODE","EscapeStringConstantMode","AfterEscapeStringConstantMode","AfterEscapeStringConstantWithNewlineMode","DollarQuotedStringMode"],Vi.ruleNames=["Dollar","OPEN_PAREN","CLOSE_PAREN","OPEN_BRACKET","CLOSE_BRACKET","COMMA","SEMI","COLON","STAR","EQUAL","DOT","PLUS","MINUS","SLASH","CARET","LT","GT","LESS_LESS","GREATER_GREATER","COLON_EQUALS","LESS_EQUALS","EQUALS_GREATER","GREATER_EQUALS","DOT_DOT","NOT_EQUALS","TYPECAST","PERCENT","PARAM","Operator","OperatorEndingWithPlusMinus","OperatorCharacter","OperatorCharacterNotAllowPlusMinusAtEnd","OperatorCharacterAllowPlusMinusAtEnd","ALL","ANALYSE","ANALYZE","AND","ANY","ARRAY","AS","ASC","ASYMMETRIC","BOTH","CASE","CAST","CHECK","COLLATE","COLUMN","CONSTRAINT","CREATE","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","EXCEPT","FALSE_P","FETCH","FOR","FOREIGN","FROM","GRANT","GROUP_P","HAVING","IN_P","INITIALLY","INTERSECT","INTO","LATERAL_P","LEADING","LIMIT","LOCALTIME","LOCALTIMESTAMP","NOT","NULL_P","OFFSET","ON","ONLY","OR","ORDER","PLACING","PRIMARY","REFERENCES","RETURNING","SELECT","SESSION_USER","SOME","SYMMETRIC","TABLE","THEN","TO","TRAILING","TRUE_P","UNION","UNIQUE","USER","USING","VARIADIC","WHEN","WHERE","WINDOW","WITH","AUTHORIZATION","BINARY","COLLATION","CONCURRENTLY","CROSS","CURRENT_SCHEMA","FREEZE","FULL","ILIKE","INNER_P","IS","ISNULL","JOIN","LEFT","LIKE","NATURAL","NOTNULL","OUTER_P","OVER","OVERLAPS","RIGHT","SIMILAR","VERBOSE","ABORT_P","ABSOLUTE_P","ACCESS","ACTION","ADD_P","ADMIN","AFTER","AGGREGATE","ALSO","ALTER","ALWAYS","ASSERTION","ASSIGNMENT","AT","ATTRIBUTE","BACKWARD","BEFORE","BEGIN_P","BY","CACHE","CALLED","CASCADE","CASCADED","CATALOG","CHAIN","CHARACTERISTICS","CHECKPOINT","CLASS","CLOSE","CLUSTER","COMMENT","COMMENTS","COMMIT","COMMITTED","CONFIGURATION","CONNECTION","CONSTRAINTS","CONTENT_P","CONTINUE_P","CONVERSION_P","COPY","COST","CSV","CURSOR","CYCLE","DATA_P","DATABASE","DAY_P","DEALLOCATE","DECLARE","DEFAULTS","DEFERRED","DEFINER","DELETE_P","DELIMITER","DELIMITERS","DICTIONARY","DISABLE_P","DISCARD","DOCUMENT_P","DOMAIN_P","DOUBLE_P","DROP","EACH","ENABLE_P","ENCODING","ENCRYPTED","ENUM_P","ESCAPE","EVENT","EXCLUDE","EXCLUDING","EXCLUSIVE","EXECUTE","EXPLAIN","EXTENSION","EXTERNAL","FAMILY","FIRST_P","FOLLOWING","FORCE","FORWARD","FUNCTION","FUNCTIONS","GLOBAL","GRANTED","HANDLER","HEADER_P","HOLD","HOUR_P","IDENTITY_P","IF_P","IMMEDIATE","IMMUTABLE","IMPLICIT_P","INCLUDING","INCREMENT","INDEX","INDEXES","INHERIT","INHERITS","INLINE_P","INSENSITIVE","INSERT","INSTEAD","INVOKER","ISOLATION","KEY","LABEL","LANGUAGE","LARGE_P","LAST_P","LEAKPROOF","LEVEL","LISTEN","LOAD","LOCAL","LOCATION","LOCK_P","MAPPING","MATCH","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MINUTE_P","MINVALUE","MODE","MONTH_P","MOVE","NAME_P","NAMES","NEXT","NO","NOTHING","NOTIFY","NOWAIT","NULLS_P","OBJECT_P","OF","OFF","OIDS","OPERATOR","OPTION","OPTIONS","OWNED","OWNER","PARSER","PARTIAL","PARTITION","PASSING","PASSWORD","PLANS","PRECEDING","PREPARE","PREPARED","PRESERVE","PRIOR","PRIVILEGES","PROCEDURAL","PROCEDURE","PROGRAM","QUOTE","RANGE","READ","REASSIGN","RECHECK","RECURSIVE","REF","REFRESH","REINDEX","RELATIVE_P","RELEASE","RENAME","REPEATABLE","REPLACE","REPLICA","RESET","RESTART","RESTRICT","RETURNS","REVOKE","ROLE","ROLLBACK","ROWS","RULE","SAVEPOINT","SCHEMA","SCROLL","SEARCH","SECOND_P","SECURITY","SEQUENCE","SEQUENCES","SERIALIZABLE","SERVER","SESSION","SET","SHARE","SHOW","SIMPLE","SNAPSHOT","STABLE","STANDALONE_P","START","STATEMENT","STATISTICS","STDIN","STDOUT","STORAGE","STRICT_P","STRIP_P","SYSID","SYSTEM_P","TABLES","TABLESPACE","TEMP","TEMPLATE","TEMPORARY","TEXT_P","TRANSACTION","TRIGGER","TRUNCATE","TRUSTED","TYPE_P","TYPES_P","UNBOUNDED","UNCOMMITTED","UNENCRYPTED","UNKNOWN","UNLISTEN","UNLOGGED","UNTIL","UPDATE","VACUUM","VALID","VALIDATE","VALIDATOR","VARYING","VERSION_P","VIEW","VOLATILE","WHITESPACE_P","WITHOUT","WORK","WRAPPER","WRITE","XML_P","YEAR_P","YES_P","ZONE","BETWEEN","BIGINT","BIT","BOOLEAN_P","CHAR_P","CHARACTER","COALESCE","DEC","DECIMAL_P","EXISTS","EXTRACT","FLOAT_P","GREATEST","INOUT","INT_P","INTEGER","INTERVAL","LEAST","NATIONAL","NCHAR","NONE","NULLIF","NUMERIC","OVERLAY","POSITION","PRECISION","REAL","ROW","SETOF","SMALLINT","SUBSTRING","TIME","TIMESTAMP","TREAT","TRIM","VALUES","VARCHAR","XMLATTRIBUTES","XMLCOMMENT","XMLAGG","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_DOCUMENT","XML_IS_WELL_FORMED_CONTENT","XPATH","XPATH_EXISTS","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","CALL","CURRENT_P","ATTACH","DETACH","EXPRESSION","GENERATED","LOGGED","STORED","INCLUDE","ROUTINE","TRANSFORM","IMPORT_P","POLICY","METHOD","REFERENCING","NEW","OLD","VALUE_P","SUBSCRIPTION","PUBLICATION","OUT_P","END_P","ROUTINES","SCHEMAS","PROCEDURES","INPUT_P","SUPPORT","PARALLEL","SQL_P","DEPENDS","OVERRIDING","CONFLICT","SKIP_P","LOCKED","TIES","ROLLUP","CUBE","GROUPING","SETS","TABLESAMPLE","ORDINALITY","XMLTABLE","COLUMNS","XMLNAMESPACES","ROWTYPE","NORMALIZED","WITHIN","FILTER","GROUPS","OTHERS","NFC","NFD","NFKC","NFKD","UESCAPE","VIEWS","NORMALIZE","DUMP","PRINT_STRICT_PARAMS","VARIABLE_CONFLICT","ERROR","USE_VARIABLE","USE_COLUMN","ALIAS","CONSTANT","PERFORM","GET","DIAGNOSTICS","STACKED","ELSIF","WHILE","REVERSE","FOREACH","SLICE","EXIT","RETURN","QUERY","RAISE","SQLSTATE","DEBUG","LOG","INFO","NOTICE","WARNING","EXCEPTION","ASSERT","LOOP","OPEN","ABS","CBRT","CEIL","CEILING","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","ROUND","SCALE","SIGN","SQRT","TRIM_SCALE","TRUNC","WIDTH_BUCKET","RANDOM","SETSEED","ACOS","ACOSD","ASIN","ASIND","ATAN","ATAND","ATAN2","ATAN2D","COS","COSD","COT","COTD","SIN","SIND","TAN","TAND","SINH","COSH","TANH","ASINH","ACOSH","ATANH","BIT_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","LOWER","OCTET_LENGTH","UPPER","ASCII","BTRIM","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LENGTH","LPAD","LTRIM","MD5","PARSE_IDENT","PG_CLIENT_ENCODING","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REGEXP_SUBSTR","REPEAT","RPAD","RTRIM","SPLIT_PART","STARTS_WITH","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","TO_ASCII","TO_HEX","TRANSLATE","UNISTR","AGE","CLOCK_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","STATEMENT_TIMESTAMP","TIMEOFDAY","TRANSACTION_TIMESTAMP","TO_TIMESTAMP","TO_CHAR","TO_DATE","TO_NUMBER","Identifier","IdentifierStartChar","IdentifierChar","StrictIdentifierChar","QuotedIdentifier","UnterminatedQuotedIdentifier","InvalidQuotedIdentifier","InvalidUnterminatedQuotedIdentifier","UnicodeQuotedIdentifier","UnterminatedUnicodeQuotedIdentifier","InvalidUnicodeQuotedIdentifier","InvalidUnterminatedUnicodeQuotedIdentifier","StringConstant","UnterminatedStringConstant","BeginEscapeStringConstant","UnicodeEscapeStringConstant","UnterminatedUnicodeEscapeStringConstant","BeginDollarStringConstant","Tag","BinaryStringConstant","UnterminatedBinaryStringConstant","InvalidBinaryStringConstant","InvalidUnterminatedBinaryStringConstant","HexadecimalStringConstant","UnterminatedHexadecimalStringConstant","InvalidHexadecimalStringConstant","InvalidUnterminatedHexadecimalStringConstant","Integral","NumericFail","Numeric","Digits","PLSQLVARIABLENAME","PLSQLIDENTIFIER","Whitespace","Newline","LineComment","BlockComment","UnterminatedBlockComment","MetaCommand","EndMetaCommand","ErrorCharacter","EscapeStringConstant","UnterminatedEscapeStringConstant","EscapeStringText","InvalidEscapeStringConstant","InvalidUnterminatedEscapeStringConstant","InvalidEscapeStringText","AfterEscapeStringConstantMode_Whitespace","AfterEscapeStringConstantMode_Newline","AfterEscapeStringConstantMode_NotContinued","AfterEscapeStringConstantWithNewlineMode_Whitespace","AfterEscapeStringConstantWithNewlineMode_Newline","AfterEscapeStringConstantWithNewlineMode_Continued","AfterEscapeStringConstantWithNewlineMode_NotContinued","DollarText","EndDollarStringConstant"],Vi._serializedATN=[4,0,679,6791,6,-1,6,-1,6,-1,6,-1,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,2,265,7,265,2,266,7,266,2,267,7,267,2,268,7,268,2,269,7,269,2,270,7,270,2,271,7,271,2,272,7,272,2,273,7,273,2,274,7,274,2,275,7,275,2,276,7,276,2,277,7,277,2,278,7,278,2,279,7,279,2,280,7,280,2,281,7,281,2,282,7,282,2,283,7,283,2,284,7,284,2,285,7,285,2,286,7,286,2,287,7,287,2,288,7,288,2,289,7,289,2,290,7,290,2,291,7,291,2,292,7,292,2,293,7,293,2,294,7,294,2,295,7,295,2,296,7,296,2,297,7,297,2,298,7,298,2,299,7,299,2,300,7,300,2,301,7,301,2,302,7,302,2,303,7,303,2,304,7,304,2,305,7,305,2,306,7,306,2,307,7,307,2,308,7,308,2,309,7,309,2,310,7,310,2,311,7,311,2,312,7,312,2,313,7,313,2,314,7,314,2,315,7,315,2,316,7,316,2,317,7,317,2,318,7,318,2,319,7,319,2,320,7,320,2,321,7,321,2,322,7,322,2,323,7,323,2,324,7,324,2,325,7,325,2,326,7,326,2,327,7,327,2,328,7,328,2,329,7,329,2,330,7,330,2,331,7,331,2,332,7,332,2,333,7,333,2,334,7,334,2,335,7,335,2,336,7,336,2,337,7,337,2,338,7,338,2,339,7,339,2,340,7,340,2,341,7,341,2,342,7,342,2,343,7,343,2,344,7,344,2,345,7,345,2,346,7,346,2,347,7,347,2,348,7,348,2,349,7,349,2,350,7,350,2,351,7,351,2,352,7,352,2,353,7,353,2,354,7,354,2,355,7,355,2,356,7,356,2,357,7,357,2,358,7,358,2,359,7,359,2,360,7,360,2,361,7,361,2,362,7,362,2,363,7,363,2,364,7,364,2,365,7,365,2,366,7,366,2,367,7,367,2,368,7,368,2,369,7,369,2,370,7,370,2,371,7,371,2,372,7,372,2,373,7,373,2,374,7,374,2,375,7,375,2,376,7,376,2,377,7,377,2,378,7,378,2,379,7,379,2,380,7,380,2,381,7,381,2,382,7,382,2,383,7,383,2,384,7,384,2,385,7,385,2,386,7,386,2,387,7,387,2,388,7,388,2,389,7,389,2,390,7,390,2,391,7,391,2,392,7,392,2,393,7,393,2,394,7,394,2,395,7,395,2,396,7,396,2,397,7,397,2,398,7,398,2,399,7,399,2,400,7,400,2,401,7,401,2,402,7,402,2,403,7,403,2,404,7,404,2,405,7,405,2,406,7,406,2,407,7,407,2,408,7,408,2,409,7,409,2,410,7,410,2,411,7,411,2,412,7,412,2,413,7,413,2,414,7,414,2,415,7,415,2,416,7,416,2,417,7,417,2,418,7,418,2,419,7,419,2,420,7,420,2,421,7,421,2,422,7,422,2,423,7,423,2,424,7,424,2,425,7,425,2,426,7,426,2,427,7,427,2,428,7,428,2,429,7,429,2,430,7,430,2,431,7,431,2,432,7,432,2,433,7,433,2,434,7,434,2,435,7,435,2,436,7,436,2,437,7,437,2,438,7,438,2,439,7,439,2,440,7,440,2,441,7,441,2,442,7,442,2,443,7,443,2,444,7,444,2,445,7,445,2,446,7,446,2,447,7,447,2,448,7,448,2,449,7,449,2,450,7,450,2,451,7,451,2,452,7,452,2,453,7,453,2,454,7,454,2,455,7,455,2,456,7,456,2,457,7,457,2,458,7,458,2,459,7,459,2,460,7,460,2,461,7,461,2,462,7,462,2,463,7,463,2,464,7,464,2,465,7,465,2,466,7,466,2,467,7,467,2,468,7,468,2,469,7,469,2,470,7,470,2,471,7,471,2,472,7,472,2,473,7,473,2,474,7,474,2,475,7,475,2,476,7,476,2,477,7,477,2,478,7,478,2,479,7,479,2,480,7,480,2,481,7,481,2,482,7,482,2,483,7,483,2,484,7,484,2,485,7,485,2,486,7,486,2,487,7,487,2,488,7,488,2,489,7,489,2,490,7,490,2,491,7,491,2,492,7,492,2,493,7,493,2,494,7,494,2,495,7,495,2,496,7,496,2,497,7,497,2,498,7,498,2,499,7,499,2,500,7,500,2,501,7,501,2,502,7,502,2,503,7,503,2,504,7,504,2,505,7,505,2,506,7,506,2,507,7,507,2,508,7,508,2,509,7,509,2,510,7,510,2,511,7,511,2,512,7,512,2,513,7,513,2,514,7,514,2,515,7,515,2,516,7,516,2,517,7,517,2,518,7,518,2,519,7,519,2,520,7,520,2,521,7,521,2,522,7,522,2,523,7,523,2,524,7,524,2,525,7,525,2,526,7,526,2,527,7,527,2,528,7,528,2,529,7,529,2,530,7,530,2,531,7,531,2,532,7,532,2,533,7,533,2,534,7,534,2,535,7,535,2,536,7,536,2,537,7,537,2,538,7,538,2,539,7,539,2,540,7,540,2,541,7,541,2,542,7,542,2,543,7,543,2,544,7,544,2,545,7,545,2,546,7,546,2,547,7,547,2,548,7,548,2,549,7,549,2,550,7,550,2,551,7,551,2,552,7,552,2,553,7,553,2,554,7,554,2,555,7,555,2,556,7,556,2,557,7,557,2,558,7,558,2,559,7,559,2,560,7,560,2,561,7,561,2,562,7,562,2,563,7,563,2,564,7,564,2,565,7,565,2,566,7,566,2,567,7,567,2,568,7,568,2,569,7,569,2,570,7,570,2,571,7,571,2,572,7,572,2,573,7,573,2,574,7,574,2,575,7,575,2,576,7,576,2,577,7,577,2,578,7,578,2,579,7,579,2,580,7,580,2,581,7,581,2,582,7,582,2,583,7,583,2,584,7,584,2,585,7,585,2,586,7,586,2,587,7,587,2,588,7,588,2,589,7,589,2,590,7,590,2,591,7,591,2,592,7,592,2,593,7,593,2,594,7,594,2,595,7,595,2,596,7,596,2,597,7,597,2,598,7,598,2,599,7,599,2,600,7,600,2,601,7,601,2,602,7,602,2,603,7,603,2,604,7,604,2,605,7,605,2,606,7,606,2,607,7,607,2,608,7,608,2,609,7,609,2,610,7,610,2,611,7,611,2,612,7,612,2,613,7,613,2,614,7,614,2,615,7,615,2,616,7,616,2,617,7,617,2,618,7,618,2,619,7,619,2,620,7,620,2,621,7,621,2,622,7,622,2,623,7,623,2,624,7,624,2,625,7,625,2,626,7,626,2,627,7,627,2,628,7,628,2,629,7,629,2,630,7,630,2,631,7,631,2,632,7,632,2,633,7,633,2,634,7,634,2,635,7,635,2,636,7,636,2,637,7,637,2,638,7,638,2,639,7,639,2,640,7,640,2,641,7,641,2,642,7,642,2,643,7,643,2,644,7,644,2,645,7,645,2,646,7,646,2,647,7,647,2,648,7,648,2,649,7,649,2,650,7,650,2,651,7,651,2,652,7,652,2,653,7,653,2,654,7,654,2,655,7,655,2,656,7,656,2,657,7,657,2,658,7,658,2,659,7,659,2,660,7,660,2,661,7,661,2,662,7,662,2,663,7,663,2,664,7,664,2,665,7,665,2,666,7,666,2,667,7,667,2,668,7,668,2,669,7,669,2,670,7,670,2,671,7,671,2,672,7,672,2,673,7,673,2,674,7,674,2,675,7,675,2,676,7,676,2,677,7,677,2,678,7,678,2,679,7,679,2,680,7,680,2,681,7,681,2,682,7,682,2,683,7,683,2,684,7,684,2,685,7,685,2,686,7,686,2,687,7,687,2,688,7,688,2,689,7,689,2,690,7,690,2,691,7,691,2,692,7,692,2,693,7,693,2,694,7,694,1,0,1,0,1,1,1,1,1,2,1,2,1,3,1,3,1,4,1,4,1,5,1,5,1,6,1,6,1,7,1,7,1,8,1,8,1,9,1,9,1,10,1,10,1,11,1,11,1,12,1,12,1,13,1,13,1,14,1,14,1,15,1,15,1,16,1,16,1,17,1,17,1,17,1,18,1,18,1,18,1,19,1,19,1,19,1,20,1,20,1,20,1,21,1,21,1,21,1,22,1,22,1,22,1,23,1,23,1,23,1,24,1,24,1,24,1,25,1,25,1,25,1,26,1,26,1,27,1,27,4,27,1461,8,27,11,27,12,27,1462,1,28,1,28,1,28,1,28,4,28,1469,8,28,11,28,12,28,1470,1,28,1,28,1,28,3,28,1476,8,28,1,28,1,28,4,28,1480,8,28,11,28,12,28,1481,1,28,3,28,1485,8,28,1,28,1,28,1,29,1,29,1,29,1,29,1,29,5,29,1494,8,29,10,29,12,29,1497,9,29,1,29,1,29,3,29,1501,8,29,1,29,1,29,1,29,4,29,1506,8,29,11,29,12,29,1507,1,29,1,29,1,30,1,30,1,31,1,31,1,32,1,32,1,33,1,33,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,36,1,36,1,36,1,36,1,37,1,37,1,37,1,37,1,38,1,38,1,38,1,38,1,38,1,38,1,39,1,39,1,39,1,40,1,40,1,40,1,40,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,42,1,42,1,42,1,42,1,42,1,43,1,43,1,43,1,43,1,43,1,44,1,44,1,44,1,44,1,44,1,45,1,45,1,45,1,45,1,45,1,45,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,58,1,58,1,58,1,58,1,58,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,60,1,60,1,60,1,61,1,61,1,61,1,61,1,61,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,63,1,63,1,63,1,63,1,63,1,63,1,64,1,64,1,64,1,64,1,64,1,64,1,65,1,65,1,65,1,65,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,67,1,67,1,67,1,67,1,67,1,68,1,68,1,68,1,68,1,68,1,68,1,69,1,69,1,69,1,69,1,69,1,69,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,72,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,74,1,74,1,74,1,74,1,74,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,77,1,77,1,77,1,77,1,77,1,77,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,79,1,80,1,80,1,80,1,80,1,81,1,81,1,81,1,81,1,81,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,83,1,83,1,83,1,84,1,84,1,84,1,84,1,84,1,85,1,85,1,85,1,86,1,86,1,86,1,86,1,86,1,86,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,89,1,89,1,89,1,89,1,89,1,89,1,89,1,89,1,89,1,89,1,89,1,90,1,90,1,90,1,90,1,90,1,90,1,90,1,90,1,90,1,90,1,91,1,91,1,91,1,91,1,91,1,91,1,91,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,93,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,95,1,95,1,95,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,1,97,1,97,1,97,1,98,1,98,1,98,1,98,1,98,1,98,1,98,1,98,1,98,1,99,1,99,1,99,1,99,1,99,1,100,1,100,1,100,1,100,1,100,1,100,1,101,1,101,1,101,1,101,1,101,1,101,1,101,1,102,1,102,1,102,1,102,1,102,1,103,1,103,1,103,1,103,1,103,1,103,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,105,1,105,1,105,1,105,1,105,1,106,1,106,1,106,1,106,1,106,1,106,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,108,1,108,1,108,1,108,1,108,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,113,1,113,1,113,1,113,1,113,1,113,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,115,1,115,1,115,1,115,1,115,1,115,1,115,1,116,1,116,1,116,1,116,1,116,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,119,1,119,1,119,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,121,1,121,1,121,1,121,1,121,1,122,1,122,1,122,1,122,1,122,1,123,1,123,1,123,1,123,1,123,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,126,1,126,1,126,1,126,1,126,1,126,1,127,1,127,1,127,1,127,1,127,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,129,1,129,1,129,1,129,1,129,1,129,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,132,1,132,1,132,1,132,1,132,1,132,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,134,1,134,1,134,1,134,1,134,1,134,1,134,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,136,1,136,1,136,1,136,1,137,1,137,1,137,1,137,1,137,1,137,1,138,1,138,1,138,1,138,1,138,1,138,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,140,1,140,1,140,1,140,1,140,1,141,1,141,1,141,1,141,1,141,1,141,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,144,1,144,1,144,1,144,1,144,1,144,1,144,1,144,1,144,1,144,1,144,1,145,1,145,1,145,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,148,1,148,1,148,1,148,1,148,1,148,1,148,1,149,1,149,1,149,1,149,1,149,1,149,1,150,1,150,1,150,1,151,1,151,1,151,1,151,1,151,1,151,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,154,1,154,1,154,1,154,1,154,1,154,1,154,1,154,1,154,1,155,1,155,1,155,1,155,1,155,1,155,1,155,1,155,1,156,1,156,1,156,1,156,1,156,1,156,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,159,1,159,1,159,1,159,1,159,1,159,1,160,1,160,1,160,1,160,1,160,1,160,1,161,1,161,1,161,1,161,1,161,1,161,1,161,1,161,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,172,1,172,1,172,1,172,1,172,1,173,1,173,1,173,1,173,1,173,1,174,1,174,1,174,1,174,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,176,1,176,1,176,1,176,1,176,1,176,1,177,1,177,1,177,1,177,1,177,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,179,1,179,1,179,1,179,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,184,1,184,1,184,1,184,1,184,1,184,1,184,1,184,1,185,1,185,1,185,1,185,1,185,1,185,1,185,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,189,1,189,1,189,1,189,1,189,1,189,1,189,1,189,1,190,1,190,1,190,1,190,1,190,1,190,1,190,1,190,1,191,1,191,1,191,1,191,1,191,1,191,1,191,1,191,1,191,1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,194,1,194,1,194,1,194,1,194,1,195,1,195,1,195,1,195,1,195,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,199,1,199,1,199,1,199,1,199,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,201,1,201,1,201,1,201,1,201,1,201,1,202,1,202,1,202,1,202,1,202,1,202,1,202,1,202,1,203,1,203,1,203,1,203,1,203,1,203,1,203,1,203,1,203,1,203,1,204,1,204,1,204,1,204,1,204,1,204,1,204,1,204,1,204,1,204,1,205,1,205,1,205,1,205,1,205,1,205,1,205,1,205,1,206,1,206,1,206,1,206,1,206,1,206,1,206,1,206,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,208,1,208,1,208,1,208,1,208,1,208,1,208,1,208,1,208,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,210,1,210,1,210,1,210,1,210,1,210,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,212,1,212,1,212,1,212,1,212,1,212,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,216,1,216,1,216,1,216,1,216,1,216,1,216,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,219,1,219,1,219,1,219,1,219,1,219,1,219,1,220,1,220,1,220,1,220,1,220,1,221,1,221,1,221,1,221,1,221,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,223,1,223,1,223,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,228,1,228,1,228,1,228,1,228,1,228,1,228,1,228,1,228,1,228,1,229,1,229,1,229,1,229,1,229,1,229,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,231,1,231,1,231,1,231,1,231,1,231,1,231,1,231,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,235,1,235,1,235,1,235,1,235,1,235,1,235,1,236,1,236,1,236,1,236,1,236,1,236,1,236,1,236,1,237,1,237,1,237,1,237,1,237,1,237,1,237,1,237,1,238,1,238,1,238,1,238,1,238,1,238,1,238,1,238,1,238,1,238,1,239,1,239,1,239,1,239,1,240,1,240,1,240,1,240,1,240,1,240,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,242,1,242,1,242,1,242,1,242,1,242,1,243,1,243,1,243,1,243,1,243,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,245,1,245,1,245,1,245,1,245,1,245,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,247,1,247,1,247,1,247,1,247,1,248,1,248,1,248,1,248,1,248,1,248,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,250,1,250,1,250,1,250,1,250,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,252,1,252,1,252,1,252,1,252,1,252,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,256,1,256,1,256,1,256,1,256,1,256,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,259,1,259,1,259,1,259,1,259,1,260,1,260,1,260,1,260,1,260,1,260,1,261,1,261,1,261,1,261,1,261,1,262,1,262,1,262,1,262,1,262,1,263,1,263,1,263,1,263,1,263,1,263,1,264,1,264,1,264,1,264,1,264,1,265,1,265,1,265,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,269,1,269,1,269,1,269,1,269,1,269,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,271,1,271,1,271,1,272,1,272,1,272,1,272,1,273,1,273,1,273,1,273,1,273,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,277,1,277,1,277,1,277,1,277,1,277,1,278,1,278,1,278,1,278,1,278,1,278,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,282,1,282,1,282,1,282,1,282,1,282,1,282,1,282,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,284,1,284,1,284,1,284,1,284,1,284,1,285,1,285,1,285,1,285,1,285,1,285,1,285,1,285,1,285,1,285,1,286,1,286,1,286,1,286,1,286,1,286,1,286,1,286,1,287,1,287,1,287,1,287,1,287,1,287,1,287,1,287,1,287,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,289,1,289,1,289,1,289,1,289,1,289,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,294,1,294,1,294,1,294,1,294,1,294,1,295,1,295,1,295,1,295,1,295,1,295,1,296,1,296,1,296,1,296,1,296,1,297,1,297,1,297,1,297,1,297,1,297,1,297,1,297,1,297,1,298,1,298,1,298,1,298,1,298,1,298,1,298,1,298,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,300,1,300,1,300,1,300,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,308,1,308,1,308,1,308,1,308,1,308,1,308,1,308,1,309,1,309,1,309,1,309,1,309,1,309,1,310,1,310,1,310,1,310,1,310,1,310,1,310,1,310,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,314,1,314,1,314,1,314,1,314,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,316,1,316,1,316,1,316,1,316,1,317,1,317,1,317,1,317,1,317,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,320,1,320,1,320,1,320,1,320,1,320,1,320,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,324,1,324,1,324,1,324,1,324,1,324,1,324,1,324,1,324,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,329,1,329,1,329,1,329,1,330,1,330,1,330,1,330,1,330,1,330,1,331,1,331,1,331,1,331,1,331,1,332,1,332,1,332,1,332,1,332,1,332,1,332,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,334,1,334,1,334,1,334,1,334,1,334,1,334,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,336,1,336,1,336,1,336,1,336,1,336,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,339,1,339,1,339,1,339,1,339,1,339,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,343,1,343,1,343,1,343,1,343,1,343,1,344,1,344,1,344,1,344,1,344,1,344,1,345,1,345,1,345,1,345,1,345,1,345,1,345,1,346,1,346,1,346,1,346,1,346,1,346,1,346,1,347,1,347,1,347,1,347,1,347,1,347,1,347,1,347,1,347,1,347,1,347,1,348,1,348,1,348,1,348,1,348,1,349,1,349,1,349,1,349,1,349,1,349,1,349,1,349,1,349,1,350,1,350,1,350,1,350,1,350,1,350,1,350,1,350,1,350,1,350,1,351,1,351,1,351,1,351,1,351,1,352,1,352,1,352,1,352,1,352,1,352,1,352,1,352,1,352,1,352,1,352,1,352,1,353,1,353,1,353,1,353,1,353,1,353,1,353,1,353,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,355,1,355,1,355,1,355,1,355,1,355,1,355,1,355,1,356,1,356,1,356,1,356,1,356,1,357,1,357,1,357,1,357,1,357,1,357,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,363,1,363,1,363,1,363,1,363,1,363,1,363,1,363,1,363,1,364,1,364,1,364,1,364,1,364,1,364,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,367,1,367,1,367,1,367,1,367,1,367,1,368,1,368,1,368,1,368,1,368,1,368,1,368,1,368,1,368,1,369,1,369,1,369,1,369,1,369,1,369,1,369,1,369,1,369,1,369,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,372,1,372,1,372,1,372,1,372,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,376,1,376,1,376,1,376,1,376,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,378,1,378,1,378,1,378,1,378,1,378,1,379,1,379,1,379,1,379,1,380,1,380,1,380,1,380,1,380,1,381,1,381,1,381,1,381,1,382,1,382,1,382,1,382,1,382,1,383,1,383,1,383,1,383,1,383,1,383,1,383,1,383,1,384,1,384,1,384,1,384,1,384,1,384,1,384,1,385,1,385,1,385,1,385,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,387,1,387,1,387,1,387,1,387,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,390,1,390,1,390,1,390,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,394,1,394,1,394,1,394,1,394,1,394,1,395,1,395,1,395,1,395,1,395,1,395,1,395,1,395,1,395,1,396,1,396,1,396,1,396,1,396,1,396,1,397,1,397,1,397,1,397,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,400,1,400,1,400,1,400,1,400,1,400,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,402,1,402,1,402,1,402,1,402,1,402,1,403,1,403,1,403,1,403,1,403,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,406,1,406,1,406,1,406,1,406,1,406,1,406,1,406,1,407,1,407,1,407,1,407,1,407,1,407,1,407,1,407,1,407,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,409,1,409,1,409,1,409,1,409,1,410,1,410,1,410,1,410,1,411,1,411,1,411,1,411,1,411,1,411,1,412,1,412,1,412,1,412,1,412,1,412,1,412,1,412,1,412,1,413,1,413,1,413,1,413,1,413,1,413,1,413,1,413,1,413,1,413,1,414,1,414,1,414,1,414,1,414,1,415,1,415,1,415,1,415,1,415,1,415,1,415,1,415,1,415,1,415,1,416,1,416,1,416,1,416,1,416,1,416,1,417,1,417,1,417,1,417,1,417,1,418,1,418,1,418,1,418,1,418,1,418,1,418,1,419,1,419,1,419,1,419,1,419,1,419,1,419,1,419,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,426,1,426,1,426,1,426,1,426,1,426,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,428,1,428,1,428,1,428,1,428,1,428,1,428,1,428,1,428,1,428,1,429,1,429,1,429,1,429,1,429,1,429,1,429,1,429,1,429,1,429,1,429,1,430,1,430,1,430,1,430,1,430,1,430,1,430,1,430,1,430,1,430,1,431,1,431,1,431,1,431,1,431,1,431,1,431,1,431,1,431,1,431,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,433,1,433,1,433,1,433,1,433,1,433,1,434,1,434,1,434,1,434,1,434,1,434,1,434,1,434,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,436,1,436,1,436,1,436,1,436,1,437,1,437,1,437,1,437,1,437,1,437,1,437,1,437,1,438,1,438,1,438,1,438,1,438,1,438,1,438,1,439,1,439,1,439,1,439,1,439,1,439,1,439,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,441,1,441,1,441,1,441,1,441,1,441,1,441,1,441,1,441,1,441,1,442,1,442,1,442,1,442,1,442,1,442,1,442,1,443,1,443,1,443,1,443,1,443,1,443,1,443,1,444,1,444,1,444,1,444,1,444,1,444,1,444,1,444,1,445,1,445,1,445,1,445,1,445,1,445,1,445,1,445,1,446,1,446,1,446,1,446,1,446,1,446,1,446,1,446,1,446,1,446,1,447,1,447,1,447,1,447,1,447,1,447,1,447,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,449,1,449,1,449,1,449,1,449,1,449,1,449,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,451,1,451,1,451,1,451,1,452,1,452,1,452,1,452,1,453,1,453,1,453,1,453,1,453,1,453,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,456,1,456,1,456,1,456,1,457,1,457,1,457,1,457,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,459,1,459,1,459,1,459,1,459,1,459,1,459,1,459,1,460,1,460,1,460,1,460,1,460,1,460,1,460,1,460,1,460,1,460,1,460,1,461,1,461,1,461,1,461,1,461,1,461,1,462,1,462,1,462,1,462,1,462,1,462,1,462,1,462,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,464,1,464,1,464,1,464,1,465,1,465,1,465,1,465,1,465,1,465,1,465,1,465,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,468,1,468,1,468,1,468,1,468,1,469,1,469,1,469,1,469,1,469,1,469,1,469,1,470,1,470,1,470,1,470,1,470,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,472,1,472,1,472,1,472,1,472,1,473,1,473,1,473,1,473,1,473,1,473,1,473,1,473,1,473,1,474,1,474,1,474,1,474,1,474,1,475,1,475,1,475,1,475,1,475,1,475,1,475,1,475,1,475,1,475,1,475,1,475,1,476,1,476,1,476,1,476,1,476,1,476,1,476,1,476,1,476,1,476,1,476,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,486,1,486,1,486,1,486,1,487,1,487,1,487,1,487,1,488,1,488,1,488,1,488,1,488,1,489,1,489,1,489,1,489,1,489,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,491,1,491,1,491,1,491,1,491,1,491,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,493,1,493,1,493,1,493,1,493,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,496,1,496,1,496,1,496,1,496,1,496,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,499,1,499,1,499,1,499,1,499,1,499,1,500,1,500,1,500,1,500,1,500,1,500,1,500,1,500,1,500,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,502,1,502,1,502,1,502,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,504,1,504,1,504,1,504,1,504,1,504,1,504,1,504,1,505,1,505,1,505,1,505,1,505,1,505,1,506,1,506,1,506,1,506,1,506,1,506,1,507,1,507,1,507,1,507,1,507,1,507,1,507,1,507,1,508,1,508,1,508,1,508,1,508,1,508,1,508,1,508,1,509,1,509,1,509,1,509,1,509,1,509,1,510,1,510,1,510,1,510,1,510,1,511,1,511,1,511,1,511,1,511,1,511,1,511,1,512,1,512,1,512,1,512,1,512,1,512,1,513,1,513,1,513,1,513,1,513,1,513,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,515,1,515,1,515,1,515,1,515,1,515,1,516,1,516,1,516,1,516,1,517,1,517,1,517,1,517,1,517,1,518,1,518,1,518,1,518,1,518,1,518,1,518,1,519,1,519,1,519,1,519,1,519,1,519,1,519,1,519,1,520,1,520,1,520,1,520,1,520,1,520,1,520,1,520,1,520,1,520,1,521,1,521,1,521,1,521,1,521,1,521,1,521,1,522,1,522,1,522,1,522,1,522,1,523,1,523,1,523,1,523,1,523,1,524,1,524,1,524,1,524,1,525,1,525,1,525,1,525,1,525,1,526,1,526,1,526,1,526,1,526,1,527,1,527,1,527,1,527,1,527,1,527,1,527,1,527,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,529,1,529,1,529,1,529,1,530,1,530,1,530,1,530,1,531,1,531,1,531,1,531,1,531,1,531,1,531,1,531,1,531,1,531,1,532,1,532,1,532,1,532,1,532,1,532,1,533,1,533,1,533,1,533,1,534,1,534,1,534,1,534,1,535,1,535,1,535,1,536,1,536,1,536,1,536,1,536,1,536,1,537,1,537,1,537,1,537,1,537,1,537,1,537,1,537,1,537,1,537,1,538,1,538,1,538,1,538,1,539,1,539,1,539,1,540,1,540,1,540,1,540,1,540,1,540,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,542,1,542,1,542,1,542,1,542,1,542,1,543,1,543,1,543,1,543,1,543,1,543,1,544,1,544,1,544,1,544,1,544,1,545,1,545,1,545,1,545,1,545,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,547,1,547,1,547,1,547,1,547,1,547,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,549,1,549,1,549,1,549,1,549,1,549,1,549,1,550,1,550,1,550,1,550,1,550,1,550,1,550,1,550,1,551,1,551,1,551,1,551,1,551,1,552,1,552,1,552,1,552,1,552,1,552,1,553,1,553,1,553,1,553,1,553,1,554,1,554,1,554,1,554,1,554,1,554,1,555,1,555,1,555,1,555,1,555,1,556,1,556,1,556,1,556,1,556,1,556,1,557,1,557,1,557,1,557,1,557,1,557,1,558,1,558,1,558,1,558,1,558,1,558,1,558,1,559,1,559,1,559,1,559,1,560,1,560,1,560,1,560,1,560,1,561,1,561,1,561,1,561,1,562,1,562,1,562,1,562,1,562,1,563,1,563,1,563,1,563,1,564,1,564,1,564,1,564,1,564,1,565,1,565,1,565,1,565,1,566,1,566,1,566,1,566,1,566,1,567,1,567,1,567,1,567,1,567,1,568,1,568,1,568,1,568,1,568,1,569,1,569,1,569,1,569,1,569,1,570,1,570,1,570,1,570,1,570,1,570,1,571,1,571,1,571,1,571,1,571,1,571,1,572,1,572,1,572,1,572,1,572,1,572,1,573,1,573,1,573,1,573,1,573,1,573,1,573,1,573,1,573,1,573,1,573,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,576,1,576,1,576,1,576,1,576,1,576,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,578,1,578,1,578,1,578,1,578,1,578,1,579,1,579,1,579,1,579,1,579,1,579,1,580,1,580,1,580,1,580,1,580,1,580,1,581,1,581,1,581,1,581,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,587,1,587,1,587,1,587,1,587,1,588,1,588,1,588,1,588,1,588,1,588,1,589,1,589,1,589,1,589,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,594,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,595,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,599,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,600,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,602,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,604,1,604,1,604,1,604,1,604,1,604,1,604,1,605,1,605,1,605,1,605,1,605,1,606,1,606,1,606,1,606,1,606,1,606,1,607,1,607,1,607,1,607,1,607,1,607,1,607,1,607,1,607,1,607,1,607,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,609,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,611,1,611,1,611,1,611,1,611,1,611,1,611,1,612,1,612,1,612,1,612,1,612,1,612,1,612,1,613,1,613,1,613,1,613,1,613,1,613,1,613,1,613,1,613,1,614,1,614,1,614,1,614,1,614,1,614,1,614,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,616,1,616,1,616,1,616,1,616,1,616,1,616,1,617,1,617,1,617,1,617,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,619,1,619,1,619,1,619,1,619,1,619,1,619,1,619,1,619,1,620,1,620,1,620,1,620,1,620,1,620,1,620,1,620,1,620,1,620,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,628,1,628,1,628,1,628,1,628,1,628,1,628,1,628,1,628,1,628,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,631,1,631,1,631,1,631,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,633,1,633,1,633,1,633,1,633,1,633,1,633,1,633,1,633,1,633,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,634,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,636,1,636,1,636,1,636,1,636,1,636,1,636,1,636,1,637,1,637,1,637,1,637,1,637,1,637,1,637,1,637,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,639,1,639,5,639,6323,8,639,10,639,12,639,6326,9,639,1,640,1,640,1,640,1,640,1,640,1,640,3,640,6334,8,640,1,641,1,641,3,641,6338,8,641,1,642,1,642,3,642,6342,8,642,1,643,1,643,1,643,1,644,1,644,1,644,1,644,5,644,6351,8,644,10,644,12,644,6354,9,644,1,645,1,645,1,645,1,646,1,646,1,646,1,646,5,646,6363,8,646,10,646,12,646,6366,9,646,1,647,1,647,1,647,1,647,1,648,1,648,1,648,1,648,1,649,1,649,1,649,1,649,1,650,1,650,1,650,1,650,1,651,1,651,1,651,1,652,1,652,1,652,1,652,5,652,6391,8,652,10,652,12,652,6394,9,652,1,653,1,653,1,653,1,653,1,653,1,653,1,654,1,654,1,654,1,655,1,655,1,655,1,655,1,656,1,656,3,656,6411,8,656,1,656,1,656,1,656,1,656,1,656,1,657,1,657,5,657,6420,8,657,10,657,12,657,6423,9,657,1,658,1,658,1,658,1,659,1,659,1,659,5,659,6431,8,659,10,659,12,659,6434,9,659,1,660,1,660,1,660,1,661,1,661,1,661,1,662,1,662,1,662,1,663,1,663,1,663,5,663,6448,8,663,10,663,12,663,6451,9,663,1,664,1,664,1,664,1,665,1,665,1,665,1,666,1,666,1,667,1,667,1,667,1,667,1,667,1,667,1,668,1,668,1,668,3,668,6470,8,668,1,668,1,668,3,668,6474,8,668,1,668,3,668,6477,8,668,1,668,1,668,1,668,1,668,3,668,6483,8,668,1,668,3,668,6486,8,668,1,668,1,668,1,668,3,668,6491,8,668,1,668,1,668,3,668,6495,8,668,1,669,4,669,6498,8,669,11,669,12,669,6499,1,670,1,670,1,670,5,670,6505,8,670,10,670,12,670,6508,9,670,1,671,1,671,1,671,1,671,1,671,1,671,1,671,1,671,5,671,6518,8,671,10,671,12,671,6521,9,671,1,671,1,671,1,672,4,672,6526,8,672,11,672,12,672,6527,1,672,1,672,1,673,1,673,3,673,6534,8,673,1,673,3,673,6537,8,673,1,673,1,673,1,674,1,674,1,674,1,674,5,674,6545,8,674,10,674,12,674,6548,9,674,1,674,1,674,1,675,1,675,1,675,1,675,5,675,6556,8,675,10,675,12,675,6559,9,675,1,675,1,675,1,675,4,675,6564,8,675,11,675,12,675,6565,1,675,1,675,4,675,6570,8,675,11,675,12,675,6571,1,675,5,675,6575,8,675,10,675,12,675,6578,9,675,1,675,5,675,6581,8,675,10,675,12,675,6584,9,675,1,675,1,675,1,675,1,675,1,675,1,676,1,676,1,676,1,676,5,676,6595,8,676,10,676,12,676,6598,9,676,1,676,1,676,1,676,4,676,6603,8,676,11,676,12,676,6604,1,676,1,676,4,676,6609,8,676,11,676,12,676,6610,1,676,3,676,6614,8,676,5,676,6616,8,676,10,676,12,676,6619,9,676,1,676,4,676,6622,8,676,11,676,12,676,6623,1,676,4,676,6627,8,676,11,676,12,676,6628,1,676,5,676,6632,8,676,10,676,12,676,6635,9,676,1,676,3,676,6638,8,676,1,676,1,676,1,677,1,677,1,677,1,677,5,677,6646,8,677,10,677,12,677,6649,9,677,1,677,5,677,6652,8,677,10,677,12,677,6655,9,677,1,677,1,677,5,677,6659,8,677,10,677,12,677,6662,9,677,3,677,6664,8,677,1,678,1,678,1,678,1,679,1,679,1,680,1,680,1,680,1,680,1,680,1,681,1,681,3,681,6678,8,681,1,681,1,681,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,1,682,3,682,6702,8,682,1,682,5,682,6705,8,682,10,682,12,682,6708,9,682,1,683,1,683,1,683,1,683,1,683,1,684,1,684,3,684,6717,8,684,1,684,1,684,1,685,1,685,1,685,1,685,1,685,5,685,6726,8,685,10,685,12,685,6729,9,685,1,686,1,686,1,686,1,686,1,686,1,687,1,687,1,687,1,687,1,687,1,687,1,688,1,688,1,688,1,688,1,688,1,689,1,689,1,689,1,689,1,689,1,690,1,690,1,690,1,690,1,690,1,691,1,691,1,691,1,691,1,691,1,692,1,692,1,692,1,692,1,692,1,693,4,693,6768,8,693,11,693,12,693,6769,1,693,1,693,5,693,6774,8,693,10,693,12,693,6777,9,693,3,693,6779,8,693,1,694,1,694,3,694,6783,8,694,1,694,1,694,1,694,1,694,1,694,1,694,1,694,0,0,695,5,1,7,2,9,3,11,4,13,5,15,6,17,7,19,8,21,9,23,10,25,11,27,12,29,13,31,14,33,15,35,16,37,17,39,18,41,19,43,20,45,21,47,22,49,23,51,24,53,25,55,26,57,27,59,28,61,29,63,0,65,0,67,0,69,0,71,30,73,31,75,32,77,33,79,34,81,35,83,36,85,37,87,38,89,39,91,40,93,41,95,42,97,43,99,44,101,45,103,46,105,47,107,48,109,49,111,50,113,51,115,52,117,53,119,54,121,55,123,56,125,57,127,58,129,59,131,60,133,61,135,62,137,63,139,64,141,65,143,66,145,67,147,68,149,69,151,70,153,71,155,72,157,73,159,74,161,75,163,76,165,77,167,78,169,79,171,80,173,81,175,82,177,83,179,84,181,85,183,86,185,87,187,88,189,89,191,90,193,91,195,92,197,93,199,94,201,95,203,96,205,97,207,98,209,99,211,100,213,101,215,102,217,103,219,104,221,105,223,106,225,107,227,108,229,109,231,110,233,111,235,112,237,113,239,114,241,115,243,116,245,117,247,118,249,119,251,120,253,121,255,122,257,123,259,124,261,125,263,126,265,127,267,128,269,129,271,130,273,131,275,132,277,133,279,134,281,135,283,136,285,137,287,138,289,139,291,140,293,141,295,142,297,143,299,144,301,145,303,146,305,147,307,148,309,149,311,150,313,151,315,152,317,153,319,154,321,155,323,156,325,157,327,158,329,159,331,160,333,161,335,162,337,163,339,164,341,165,343,166,345,167,347,168,349,169,351,170,353,171,355,172,357,173,359,174,361,175,363,176,365,177,367,178,369,179,371,180,373,181,375,182,377,183,379,184,381,185,383,186,385,187,387,188,389,189,391,190,393,191,395,192,397,193,399,194,401,195,403,196,405,197,407,198,409,199,411,200,413,201,415,202,417,203,419,204,421,205,423,206,425,207,427,208,429,209,431,210,433,211,435,212,437,213,439,214,441,215,443,216,445,217,447,218,449,219,451,220,453,221,455,222,457,223,459,224,461,225,463,226,465,227,467,228,469,229,471,230,473,231,475,232,477,233,479,234,481,235,483,236,485,237,487,238,489,239,491,240,493,241,495,242,497,243,499,244,501,245,503,246,505,247,507,248,509,249,511,250,513,251,515,252,517,253,519,254,521,255,523,256,525,257,527,258,529,259,531,260,533,261,535,262,537,263,539,264,541,265,543,266,545,267,547,268,549,269,551,270,553,271,555,272,557,273,559,274,561,275,563,276,565,277,567,278,569,279,571,280,573,281,575,282,577,283,579,284,581,285,583,286,585,287,587,288,589,289,591,290,593,291,595,292,597,293,599,294,601,295,603,296,605,297,607,298,609,299,611,300,613,301,615,302,617,303,619,304,621,305,623,306,625,307,627,308,629,309,631,310,633,311,635,312,637,313,639,314,641,315,643,316,645,317,647,318,649,319,651,320,653,321,655,322,657,323,659,324,661,325,663,326,665,327,667,328,669,329,671,330,673,331,675,332,677,333,679,334,681,335,683,336,685,337,687,338,689,339,691,340,693,341,695,342,697,343,699,344,701,345,703,346,705,347,707,348,709,349,711,350,713,351,715,352,717,353,719,354,721,355,723,356,725,357,727,358,729,359,731,360,733,361,735,362,737,363,739,364,741,365,743,366,745,367,747,368,749,369,751,370,753,371,755,372,757,373,759,374,761,375,763,376,765,377,767,378,769,379,771,380,773,381,775,382,777,383,779,384,781,385,783,386,785,387,787,388,789,389,791,390,793,391,795,392,797,393,799,394,801,395,803,396,805,397,807,398,809,399,811,400,813,401,815,402,817,403,819,404,821,405,823,406,825,407,827,408,829,409,831,410,833,411,835,412,837,413,839,414,841,415,843,416,845,417,847,418,849,419,851,420,853,421,855,422,857,423,859,424,861,425,863,426,865,427,867,428,869,429,871,430,873,431,875,432,877,433,879,434,881,435,883,436,885,437,887,438,889,439,891,440,893,441,895,442,897,443,899,444,901,445,903,446,905,447,907,448,909,449,911,450,913,451,915,452,917,453,919,454,921,455,923,456,925,457,927,458,929,459,931,460,933,461,935,462,937,463,939,464,941,465,943,466,945,467,947,468,949,469,951,470,953,471,955,472,957,473,959,474,961,475,963,476,965,477,967,478,969,479,971,480,973,481,975,482,977,483,979,484,981,485,983,486,985,487,987,488,989,489,991,490,993,491,995,492,997,493,999,494,1001,495,1003,496,1005,497,1007,498,1009,499,1011,500,1013,501,1015,502,1017,503,1019,504,1021,505,1023,506,1025,507,1027,508,1029,509,1031,510,1033,511,1035,512,1037,513,1039,514,1041,515,1043,516,1045,517,1047,518,1049,519,1051,520,1053,521,1055,522,1057,523,1059,524,1061,525,1063,526,1065,527,1067,528,1069,529,1071,530,1073,531,1075,532,1077,533,1079,534,1081,535,1083,536,1085,537,1087,538,1089,539,1091,540,1093,541,1095,542,1097,543,1099,544,1101,545,1103,546,1105,547,1107,548,1109,549,1111,550,1113,551,1115,552,1117,553,1119,554,1121,555,1123,556,1125,557,1127,558,1129,559,1131,560,1133,561,1135,562,1137,563,1139,564,1141,565,1143,566,1145,567,1147,568,1149,569,1151,570,1153,571,1155,572,1157,573,1159,574,1161,575,1163,576,1165,577,1167,578,1169,579,1171,580,1173,581,1175,582,1177,583,1179,584,1181,585,1183,586,1185,587,1187,588,1189,589,1191,590,1193,591,1195,592,1197,593,1199,594,1201,595,1203,596,1205,597,1207,598,1209,599,1211,600,1213,601,1215,602,1217,603,1219,604,1221,605,1223,606,1225,607,1227,608,1229,609,1231,610,1233,611,1235,612,1237,613,1239,614,1241,615,1243,616,1245,617,1247,618,1249,619,1251,620,1253,621,1255,622,1257,623,1259,624,1261,625,1263,626,1265,627,1267,628,1269,629,1271,630,1273,631,1275,632,1277,633,1279,634,1281,635,1283,636,1285,0,1287,0,1289,0,1291,637,1293,638,1295,639,1297,640,1299,641,1301,642,1303,643,1305,644,1307,645,1309,646,1311,0,1313,647,1315,648,1317,649,1319,0,1321,650,1323,651,1325,652,1327,653,1329,654,1331,655,1333,656,1335,657,1337,658,1339,659,1341,660,1343,0,1345,661,1347,662,1349,663,1351,664,1353,665,1355,666,1357,667,1359,668,1361,669,1363,670,1365,671,1367,672,1369,0,1371,673,1373,674,1375,0,1377,0,1379,0,1381,675,1383,0,1385,0,1387,679,1389,676,1391,677,1393,678,5,0,1,2,3,4,51,1,0,48,57,2,0,43,43,45,45,9,0,33,33,35,35,37,38,42,42,60,64,94,94,96,96,124,124,126,126,2,0,42,43,60,62,8,0,33,33,35,35,37,38,63,64,94,94,96,96,124,124,126,126,2,0,65,65,97,97,2,0,76,76,108,108,2,0,78,78,110,110,2,0,89,89,121,121,2,0,83,83,115,115,2,0,69,69,101,101,2,0,90,90,122,122,2,0,68,68,100,100,2,0,82,82,114,114,2,0,67,67,99,99,2,0,77,77,109,109,2,0,84,84,116,116,2,0,73,73,105,105,2,0,66,66,98,98,2,0,79,79,111,111,2,0,72,72,104,104,2,0,75,75,107,107,2,0,85,85,117,117,2,0,71,71,103,103,2,0,80,80,112,112,2,0,70,70,102,102,2,0,88,88,120,120,2,0,86,86,118,118,2,0,81,81,113,113,2,0,87,87,119,119,2,0,74,74,106,106,9,0,65,90,95,95,97,122,170,170,181,181,186,186,192,214,216,246,248,255,2,0,256,55295,57344,65535,1,0,55296,56319,1,0,56320,57343,2,0,0,0,34,34,1,0,34,34,1,0,39,39,1,0,48,49,3,0,48,57,65,70,97,102,3,0,65,90,95,95,97,122,5,0,36,36,48,57,65,90,95,95,97,122,2,0,34,34,92,92,2,0,9,9,32,32,2,0,10,10,13,13,2,0,42,42,47,47,4,0,10,10,13,13,34,34,92,92,3,0,10,10,13,13,34,34,3,0,85,85,117,117,120,120,2,0,39,39,92,92,1,0,36,36,6863,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,23,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,1,0,0,0,0,87,1,0,0,0,0,89,1,0,0,0,0,91,1,0,0,0,0,93,1,0,0,0,0,95,1,0,0,0,0,97,1,0,0,0,0,99,1,0,0,0,0,101,1,0,0,0,0,103,1,0,0,0,0,105,1,0,0,0,0,107,1,0,0,0,0,109,1,0,0,0,0,111,1,0,0,0,0,113,1,0,0,0,0,115,1,0,0,0,0,117,1,0,0,0,0,119,1,0,0,0,0,121,1,0,0,0,0,123,1,0,0,0,0,125,1,0,0,0,0,127,1,0,0,0,0,129,1,0,0,0,0,131,1,0,0,0,0,133,1,0,0,0,0,135,1,0,0,0,0,137,1,0,0,0,0,139,1,0,0,0,0,141,1,0,0,0,0,143,1,0,0,0,0,145,1,0,0,0,0,147,1,0,0,0,0,149,1,0,0,0,0,151,1,0,0,0,0,153,1,0,0,0,0,155,1,0,0,0,0,157,1,0,0,0,0,159,1,0,0,0,0,161,1,0,0,0,0,163,1,0,0,0,0,165,1,0,0,0,0,167,1,0,0,0,0,169,1,0,0,0,0,171,1,0,0,0,0,173,1,0,0,0,0,175,1,0,0,0,0,177,1,0,0,0,0,179,1,0,0,0,0,181,1,0,0,0,0,183,1,0,0,0,0,185,1,0,0,0,0,187,1,0,0,0,0,189,1,0,0,0,0,191,1,0,0,0,0,193,1,0,0,0,0,195,1,0,0,0,0,197,1,0,0,0,0,199,1,0,0,0,0,201,1,0,0,0,0,203,1,0,0,0,0,205,1,0,0,0,0,207,1,0,0,0,0,209,1,0,0,0,0,211,1,0,0,0,0,213,1,0,0,0,0,215,1,0,0,0,0,217,1,0,0,0,0,219,1,0,0,0,0,221,1,0,0,0,0,223,1,0,0,0,0,225,1,0,0,0,0,227,1,0,0,0,0,229,1,0,0,0,0,231,1,0,0,0,0,233,1,0,0,0,0,235,1,0,0,0,0,237,1,0,0,0,0,239,1,0,0,0,0,241,1,0,0,0,0,243,1,0,0,0,0,245,1,0,0,0,0,247,1,0,0,0,0,249,1,0,0,0,0,251,1,0,0,0,0,253,1,0,0,0,0,255,1,0,0,0,0,257,1,0,0,0,0,259,1,0,0,0,0,261,1,0,0,0,0,263,1,0,0,0,0,265,1,0,0,0,0,267,1,0,0,0,0,269,1,0,0,0,0,271,1,0,0,0,0,273,1,0,0,0,0,275,1,0,0,0,0,277,1,0,0,0,0,279,1,0,0,0,0,281,1,0,0,0,0,283,1,0,0,0,0,285,1,0,0,0,0,287,1,0,0,0,0,289,1,0,0,0,0,291,1,0,0,0,0,293,1,0,0,0,0,295,1,0,0,0,0,297,1,0,0,0,0,299,1,0,0,0,0,301,1,0,0,0,0,303,1,0,0,0,0,305,1,0,0,0,0,307,1,0,0,0,0,309,1,0,0,0,0,311,1,0,0,0,0,313,1,0,0,0,0,315,1,0,0,0,0,317,1,0,0,0,0,319,1,0,0,0,0,321,1,0,0,0,0,323,1,0,0,0,0,325,1,0,0,0,0,327,1,0,0,0,0,329,1,0,0,0,0,331,1,0,0,0,0,333,1,0,0,0,0,335,1,0,0,0,0,337,1,0,0,0,0,339,1,0,0,0,0,341,1,0,0,0,0,343,1,0,0,0,0,345,1,0,0,0,0,347,1,0,0,0,0,349,1,0,0,0,0,351,1,0,0,0,0,353,1,0,0,0,0,355,1,0,0,0,0,357,1,0,0,0,0,359,1,0,0,0,0,361,1,0,0,0,0,363,1,0,0,0,0,365,1,0,0,0,0,367,1,0,0,0,0,369,1,0,0,0,0,371,1,0,0,0,0,373,1,0,0,0,0,375,1,0,0,0,0,377,1,0,0,0,0,379,1,0,0,0,0,381,1,0,0,0,0,383,1,0,0,0,0,385,1,0,0,0,0,387,1,0,0,0,0,389,1,0,0,0,0,391,1,0,0,0,0,393,1,0,0,0,0,395,1,0,0,0,0,397,1,0,0,0,0,399,1,0,0,0,0,401,1,0,0,0,0,403,1,0,0,0,0,405,1,0,0,0,0,407,1,0,0,0,0,409,1,0,0,0,0,411,1,0,0,0,0,413,1,0,0,0,0,415,1,0,0,0,0,417,1,0,0,0,0,419,1,0,0,0,0,421,1,0,0,0,0,423,1,0,0,0,0,425,1,0,0,0,0,427,1,0,0,0,0,429,1,0,0,0,0,431,1,0,0,0,0,433,1,0,0,0,0,435,1,0,0,0,0,437,1,0,0,0,0,439,1,0,0,0,0,441,1,0,0,0,0,443,1,0,0,0,0,445,1,0,0,0,0,447,1,0,0,0,0,449,1,0,0,0,0,451,1,0,0,0,0,453,1,0,0,0,0,455,1,0,0,0,0,457,1,0,0,0,0,459,1,0,0,0,0,461,1,0,0,0,0,463,1,0,0,0,0,465,1,0,0,0,0,467,1,0,0,0,0,469,1,0,0,0,0,471,1,0,0,0,0,473,1,0,0,0,0,475,1,0,0,0,0,477,1,0,0,0,0,479,1,0,0,0,0,481,1,0,0,0,0,483,1,0,0,0,0,485,1,0,0,0,0,487,1,0,0,0,0,489,1,0,0,0,0,491,1,0,0,0,0,493,1,0,0,0,0,495,1,0,0,0,0,497,1,0,0,0,0,499,1,0,0,0,0,501,1,0,0,0,0,503,1,0,0,0,0,505,1,0,0,0,0,507,1,0,0,0,0,509,1,0,0,0,0,511,1,0,0,0,0,513,1,0,0,0,0,515,1,0,0,0,0,517,1,0,0,0,0,519,1,0,0,0,0,521,1,0,0,0,0,523,1,0,0,0,0,525,1,0,0,0,0,527,1,0,0,0,0,529,1,0,0,0,0,531,1,0,0,0,0,533,1,0,0,0,0,535,1,0,0,0,0,537,1,0,0,0,0,539,1,0,0,0,0,541,1,0,0,0,0,543,1,0,0,0,0,545,1,0,0,0,0,547,1,0,0,0,0,549,1,0,0,0,0,551,1,0,0,0,0,553,1,0,0,0,0,555,1,0,0,0,0,557,1,0,0,0,0,559,1,0,0,0,0,561,1,0,0,0,0,563,1,0,0,0,0,565,1,0,0,0,0,567,1,0,0,0,0,569,1,0,0,0,0,571,1,0,0,0,0,573,1,0,0,0,0,575,1,0,0,0,0,577,1,0,0,0,0,579,1,0,0,0,0,581,1,0,0,0,0,583,1,0,0,0,0,585,1,0,0,0,0,587,1,0,0,0,0,589,1,0,0,0,0,591,1,0,0,0,0,593,1,0,0,0,0,595,1,0,0,0,0,597,1,0,0,0,0,599,1,0,0,0,0,601,1,0,0,0,0,603,1,0,0,0,0,605,1,0,0,0,0,607,1,0,0,0,0,609,1,0,0,0,0,611,1,0,0,0,0,613,1,0,0,0,0,615,1,0,0,0,0,617,1,0,0,0,0,619,1,0,0,0,0,621,1,0,0,0,0,623,1,0,0,0,0,625,1,0,0,0,0,627,1,0,0,0,0,629,1,0,0,0,0,631,1,0,0,0,0,633,1,0,0,0,0,635,1,0,0,0,0,637,1,0,0,0,0,639,1,0,0,0,0,641,1,0,0,0,0,643,1,0,0,0,0,645,1,0,0,0,0,647,1,0,0,0,0,649,1,0,0,0,0,651,1,0,0,0,0,653,1,0,0,0,0,655,1,0,0,0,0,657,1,0,0,0,0,659,1,0,0,0,0,661,1,0,0,0,0,663,1,0,0,0,0,665,1,0,0,0,0,667,1,0,0,0,0,669,1,0,0,0,0,671,1,0,0,0,0,673,1,0,0,0,0,675,1,0,0,0,0,677,1,0,0,0,0,679,1,0,0,0,0,681,1,0,0,0,0,683,1,0,0,0,0,685,1,0,0,0,0,687,1,0,0,0,0,689,1,0,0,0,0,691,1,0,0,0,0,693,1,0,0,0,0,695,1,0,0,0,0,697,1,0,0,0,0,699,1,0,0,0,0,701,1,0,0,0,0,703,1,0,0,0,0,705,1,0,0,0,0,707,1,0,0,0,0,709,1,0,0,0,0,711,1,0,0,0,0,713,1,0,0,0,0,715,1,0,0,0,0,717,1,0,0,0,0,719,1,0,0,0,0,721,1,0,0,0,0,723,1,0,0,0,0,725,1,0,0,0,0,727,1,0,0,0,0,729,1,0,0,0,0,731,1,0,0,0,0,733,1,0,0,0,0,735,1,0,0,0,0,737,1,0,0,0,0,739,1,0,0,0,0,741,1,0,0,0,0,743,1,0,0,0,0,745,1,0,0,0,0,747,1,0,0,0,0,749,1,0,0,0,0,751,1,0,0,0,0,753,1,0,0,0,0,755,1,0,0,0,0,757,1,0,0,0,0,759,1,0,0,0,0,761,1,0,0,0,0,763,1,0,0,0,0,765,1,0,0,0,0,767,1,0,0,0,0,769,1,0,0,0,0,771,1,0,0,0,0,773,1,0,0,0,0,775,1,0,0,0,0,777,1,0,0,0,0,779,1,0,0,0,0,781,1,0,0,0,0,783,1,0,0,0,0,785,1,0,0,0,0,787,1,0,0,0,0,789,1,0,0,0,0,791,1,0,0,0,0,793,1,0,0,0,0,795,1,0,0,0,0,797,1,0,0,0,0,799,1,0,0,0,0,801,1,0,0,0,0,803,1,0,0,0,0,805,1,0,0,0,0,807,1,0,0,0,0,809,1,0,0,0,0,811,1,0,0,0,0,813,1,0,0,0,0,815,1,0,0,0,0,817,1,0,0,0,0,819,1,0,0,0,0,821,1,0,0,0,0,823,1,0,0,0,0,825,1,0,0,0,0,827,1,0,0,0,0,829,1,0,0,0,0,831,1,0,0,0,0,833,1,0,0,0,0,835,1,0,0,0,0,837,1,0,0,0,0,839,1,0,0,0,0,841,1,0,0,0,0,843,1,0,0,0,0,845,1,0,0,0,0,847,1,0,0,0,0,849,1,0,0,0,0,851,1,0,0,0,0,853,1,0,0,0,0,855,1,0,0,0,0,857,1,0,0,0,0,859,1,0,0,0,0,861,1,0,0,0,0,863,1,0,0,0,0,865,1,0,0,0,0,867,1,0,0,0,0,869,1,0,0,0,0,871,1,0,0,0,0,873,1,0,0,0,0,875,1,0,0,0,0,877,1,0,0,0,0,879,1,0,0,0,0,881,1,0,0,0,0,883,1,0,0,0,0,885,1,0,0,0,0,887,1,0,0,0,0,889,1,0,0,0,0,891,1,0,0,0,0,893,1,0,0,0,0,895,1,0,0,0,0,897,1,0,0,0,0,899,1,0,0,0,0,901,1,0,0,0,0,903,1,0,0,0,0,905,1,0,0,0,0,907,1,0,0,0,0,909,1,0,0,0,0,911,1,0,0,0,0,913,1,0,0,0,0,915,1,0,0,0,0,917,1,0,0,0,0,919,1,0,0,0,0,921,1,0,0,0,0,923,1,0,0,0,0,925,1,0,0,0,0,927,1,0,0,0,0,929,1,0,0,0,0,931,1,0,0,0,0,933,1,0,0,0,0,935,1,0,0,0,0,937,1,0,0,0,0,939,1,0,0,0,0,941,1,0,0,0,0,943,1,0,0,0,0,945,1,0,0,0,0,947,1,0,0,0,0,949,1,0,0,0,0,951,1,0,0,0,0,953,1,0,0,0,0,955,1,0,0,0,0,957,1,0,0,0,0,959,1,0,0,0,0,961,1,0,0,0,0,963,1,0,0,0,0,965,1,0,0,0,0,967,1,0,0,0,0,969,1,0,0,0,0,971,1,0,0,0,0,973,1,0,0,0,0,975,1,0,0,0,0,977,1,0,0,0,0,979,1,0,0,0,0,981,1,0,0,0,0,983,1,0,0,0,0,985,1,0,0,0,0,987,1,0,0,0,0,989,1,0,0,0,0,991,1,0,0,0,0,993,1,0,0,0,0,995,1,0,0,0,0,997,1,0,0,0,0,999,1,0,0,0,0,1001,1,0,0,0,0,1003,1,0,0,0,0,1005,1,0,0,0,0,1007,1,0,0,0,0,1009,1,0,0,0,0,1011,1,0,0,0,0,1013,1,0,0,0,0,1015,1,0,0,0,0,1017,1,0,0,0,0,1019,1,0,0,0,0,1021,1,0,0,0,0,1023,1,0,0,0,0,1025,1,0,0,0,0,1027,1,0,0,0,0,1029,1,0,0,0,0,1031,1,0,0,0,0,1033,1,0,0,0,0,1035,1,0,0,0,0,1037,1,0,0,0,0,1039,1,0,0,0,0,1041,1,0,0,0,0,1043,1,0,0,0,0,1045,1,0,0,0,0,1047,1,0,0,0,0,1049,1,0,0,0,0,1051,1,0,0,0,0,1053,1,0,0,0,0,1055,1,0,0,0,0,1057,1,0,0,0,0,1059,1,0,0,0,0,1061,1,0,0,0,0,1063,1,0,0,0,0,1065,1,0,0,0,0,1067,1,0,0,0,0,1069,1,0,0,0,0,1071,1,0,0,0,0,1073,1,0,0,0,0,1075,1,0,0,0,0,1077,1,0,0,0,0,1079,1,0,0,0,0,1081,1,0,0,0,0,1083,1,0,0,0,0,1085,1,0,0,0,0,1087,1,0,0,0,0,1089,1,0,0,0,0,1091,1,0,0,0,0,1093,1,0,0,0,0,1095,1,0,0,0,0,1097,1,0,0,0,0,1099,1,0,0,0,0,1101,1,0,0,0,0,1103,1,0,0,0,0,1105,1,0,0,0,0,1107,1,0,0,0,0,1109,1,0,0,0,0,1111,1,0,0,0,0,1113,1,0,0,0,0,1115,1,0,0,0,0,1117,1,0,0,0,0,1119,1,0,0,0,0,1121,1,0,0,0,0,1123,1,0,0,0,0,1125,1,0,0,0,0,1127,1,0,0,0,0,1129,1,0,0,0,0,1131,1,0,0,0,0,1133,1,0,0,0,0,1135,1,0,0,0,0,1137,1,0,0,0,0,1139,1,0,0,0,0,1141,1,0,0,0,0,1143,1,0,0,0,0,1145,1,0,0,0,0,1147,1,0,0,0,0,1149,1,0,0,0,0,1151,1,0,0,0,0,1153,1,0,0,0,0,1155,1,0,0,0,0,1157,1,0,0,0,0,1159,1,0,0,0,0,1161,1,0,0,0,0,1163,1,0,0,0,0,1165,1,0,0,0,0,1167,1,0,0,0,0,1169,1,0,0,0,0,1171,1,0,0,0,0,1173,1,0,0,0,0,1175,1,0,0,0,0,1177,1,0,0,0,0,1179,1,0,0,0,0,1181,1,0,0,0,0,1183,1,0,0,0,0,1185,1,0,0,0,0,1187,1,0,0,0,0,1189,1,0,0,0,0,1191,1,0,0,0,0,1193,1,0,0,0,0,1195,1,0,0,0,0,1197,1,0,0,0,0,1199,1,0,0,0,0,1201,1,0,0,0,0,1203,1,0,0,0,0,1205,1,0,0,0,0,1207,1,0,0,0,0,1209,1,0,0,0,0,1211,1,0,0,0,0,1213,1,0,0,0,0,1215,1,0,0,0,0,1217,1,0,0,0,0,1219,1,0,0,0,0,1221,1,0,0,0,0,1223,1,0,0,0,0,1225,1,0,0,0,0,1227,1,0,0,0,0,1229,1,0,0,0,0,1231,1,0,0,0,0,1233,1,0,0,0,0,1235,1,0,0,0,0,1237,1,0,0,0,0,1239,1,0,0,0,0,1241,1,0,0,0,0,1243,1,0,0,0,0,1245,1,0,0,0,0,1247,1,0,0,0,0,1249,1,0,0,0,0,1251,1,0,0,0,0,1253,1,0,0,0,0,1255,1,0,0,0,0,1257,1,0,0,0,0,1259,1,0,0,0,0,1261,1,0,0,0,0,1263,1,0,0,0,0,1265,1,0,0,0,0,1267,1,0,0,0,0,1269,1,0,0,0,0,1271,1,0,0,0,0,1273,1,0,0,0,0,1275,1,0,0,0,0,1277,1,0,0,0,0,1279,1,0,0,0,0,1281,1,0,0,0,0,1283,1,0,0,0,0,1291,1,0,0,0,0,1293,1,0,0,0,0,1295,1,0,0,0,0,1297,1,0,0,0,0,1299,1,0,0,0,0,1301,1,0,0,0,0,1303,1,0,0,0,0,1305,1,0,0,0,0,1307,1,0,0,0,0,1309,1,0,0,0,0,1311,1,0,0,0,0,1313,1,0,0,0,0,1315,1,0,0,0,0,1317,1,0,0,0,0,1321,1,0,0,0,0,1323,1,0,0,0,0,1325,1,0,0,0,0,1327,1,0,0,0,0,1329,1,0,0,0,0,1331,1,0,0,0,0,1333,1,0,0,0,0,1335,1,0,0,0,0,1337,1,0,0,0,0,1339,1,0,0,0,0,1341,1,0,0,0,0,1345,1,0,0,0,0,1347,1,0,0,0,0,1349,1,0,0,0,0,1351,1,0,0,0,0,1353,1,0,0,0,0,1355,1,0,0,0,0,1357,1,0,0,0,0,1359,1,0,0,0,0,1361,1,0,0,0,0,1363,1,0,0,0,1,1365,1,0,0,0,1,1367,1,0,0,0,1,1371,1,0,0,0,1,1373,1,0,0,0,2,1377,1,0,0,0,2,1379,1,0,0,0,2,1381,1,0,0,0,3,1383,1,0,0,0,3,1385,1,0,0,0,3,1387,1,0,0,0,3,1389,1,0,0,0,4,1391,1,0,0,0,4,1393,1,0,0,0,5,1395,1,0,0,0,7,1397,1,0,0,0,9,1399,1,0,0,0,11,1401,1,0,0,0,13,1403,1,0,0,0,15,1405,1,0,0,0,17,1407,1,0,0,0,19,1409,1,0,0,0,21,1411,1,0,0,0,23,1413,1,0,0,0,25,1415,1,0,0,0,27,1417,1,0,0,0,29,1419,1,0,0,0,31,1421,1,0,0,0,33,1423,1,0,0,0,35,1425,1,0,0,0,37,1427,1,0,0,0,39,1429,1,0,0,0,41,1432,1,0,0,0,43,1435,1,0,0,0,45,1438,1,0,0,0,47,1441,1,0,0,0,49,1444,1,0,0,0,51,1447,1,0,0,0,53,1450,1,0,0,0,55,1453,1,0,0,0,57,1456,1,0,0,0,59,1458,1,0,0,0,61,1484,1,0,0,0,63,1495,1,0,0,0,65,1511,1,0,0,0,67,1513,1,0,0,0,69,1515,1,0,0,0,71,1517,1,0,0,0,73,1521,1,0,0,0,75,1529,1,0,0,0,77,1537,1,0,0,0,79,1541,1,0,0,0,81,1545,1,0,0,0,83,1551,1,0,0,0,85,1554,1,0,0,0,87,1558,1,0,0,0,89,1569,1,0,0,0,91,1574,1,0,0,0,93,1579,1,0,0,0,95,1584,1,0,0,0,97,1590,1,0,0,0,99,1598,1,0,0,0,101,1605,1,0,0,0,103,1616,1,0,0,0,105,1623,1,0,0,0,107,1639,1,0,0,0,109,1652,1,0,0,0,111,1665,1,0,0,0,113,1678,1,0,0,0,115,1696,1,0,0,0,117,1709,1,0,0,0,119,1717,1,0,0,0,121,1728,1,0,0,0,123,1733,1,0,0,0,125,1742,1,0,0,0,127,1745,1,0,0,0,129,1750,1,0,0,0,131,1757,1,0,0,0,133,1763,1,0,0,0,135,1769,1,0,0,0,137,1773,1,0,0,0,139,1781,1,0,0,0,141,1786,1,0,0,0,143,1792,1,0,0,0,145,1798,1,0,0,0,147,1805,1,0,0,0,149,1808,1,0,0,0,151,1818,1,0,0,0,153,1828,1,0,0,0,155,1833,1,0,0,0,157,1841,1,0,0,0,159,1849,1,0,0,0,161,1855,1,0,0,0,163,1865,1,0,0,0,165,1880,1,0,0,0,167,1884,1,0,0,0,169,1889,1,0,0,0,171,1896,1,0,0,0,173,1899,1,0,0,0,175,1904,1,0,0,0,177,1907,1,0,0,0,179,1913,1,0,0,0,181,1921,1,0,0,0,183,1929,1,0,0,0,185,1940,1,0,0,0,187,1950,1,0,0,0,189,1957,1,0,0,0,191,1970,1,0,0,0,193,1975,1,0,0,0,195,1985,1,0,0,0,197,1991,1,0,0,0,199,1996,1,0,0,0,201,1999,1,0,0,0,203,2008,1,0,0,0,205,2013,1,0,0,0,207,2019,1,0,0,0,209,2026,1,0,0,0,211,2031,1,0,0,0,213,2037,1,0,0,0,215,2046,1,0,0,0,217,2051,1,0,0,0,219,2057,1,0,0,0,221,2064,1,0,0,0,223,2069,1,0,0,0,225,2083,1,0,0,0,227,2090,1,0,0,0,229,2100,1,0,0,0,231,2113,1,0,0,0,233,2119,1,0,0,0,235,2134,1,0,0,0,237,2141,1,0,0,0,239,2146,1,0,0,0,241,2152,1,0,0,0,243,2158,1,0,0,0,245,2161,1,0,0,0,247,2168,1,0,0,0,249,2173,1,0,0,0,251,2178,1,0,0,0,253,2183,1,0,0,0,255,2191,1,0,0,0,257,2199,1,0,0,0,259,2205,1,0,0,0,261,2210,1,0,0,0,263,2219,1,0,0,0,265,2225,1,0,0,0,267,2233,1,0,0,0,269,2241,1,0,0,0,271,2247,1,0,0,0,273,2256,1,0,0,0,275,2263,1,0,0,0,277,2270,1,0,0,0,279,2274,1,0,0,0,281,2280,1,0,0,0,283,2286,1,0,0,0,285,2296,1,0,0,0,287,2301,1,0,0,0,289,2307,1,0,0,0,291,2314,1,0,0,0,293,2324,1,0,0,0,295,2335,1,0,0,0,297,2338,1,0,0,0,299,2348,1,0,0,0,301,2357,1,0,0,0,303,2364,1,0,0,0,305,2370,1,0,0,0,307,2373,1,0,0,0,309,2379,1,0,0,0,311,2386,1,0,0,0,313,2394,1,0,0,0,315,2403,1,0,0,0,317,2411,1,0,0,0,319,2417,1,0,0,0,321,2433,1,0,0,0,323,2444,1,0,0,0,325,2450,1,0,0,0,327,2456,1,0,0,0,329,2464,1,0,0,0,331,2472,1,0,0,0,333,2481,1,0,0,0,335,2488,1,0,0,0,337,2498,1,0,0,0,339,2512,1,0,0,0,341,2523,1,0,0,0,343,2535,1,0,0,0,345,2543,1,0,0,0,347,2552,1,0,0,0,349,2563,1,0,0,0,351,2568,1,0,0,0,353,2573,1,0,0,0,355,2577,1,0,0,0,357,2584,1,0,0,0,359,2590,1,0,0,0,361,2595,1,0,0,0,363,2604,1,0,0,0,365,2608,1,0,0,0,367,2619,1,0,0,0,369,2627,1,0,0,0,371,2636,1,0,0,0,373,2645,1,0,0,0,375,2653,1,0,0,0,377,2660,1,0,0,0,379,2670,1,0,0,0,381,2681,1,0,0,0,383,2692,1,0,0,0,385,2700,1,0,0,0,387,2708,1,0,0,0,389,2717,1,0,0,0,391,2724,1,0,0,0,393,2731,1,0,0,0,395,2736,1,0,0,0,397,2741,1,0,0,0,399,2748,1,0,0,0,401,2757,1,0,0,0,403,2767,1,0,0,0,405,2772,1,0,0,0,407,2779,1,0,0,0,409,2785,1,0,0,0,411,2793,1,0,0,0,413,2803,1,0,0,0,415,2813,1,0,0,0,417,2821,1,0,0,0,419,2829,1,0,0,0,421,2839,1,0,0,0,423,2848,1,0,0,0,425,2855,1,0,0,0,427,2861,1,0,0,0,429,2871,1,0,0,0,431,2877,1,0,0,0,433,2885,1,0,0,0,435,2894,1,0,0,0,437,2904,1,0,0,0,439,2911,1,0,0,0,441,2919,1,0,0,0,443,2927,1,0,0,0,445,2934,1,0,0,0,447,2939,1,0,0,0,449,2944,1,0,0,0,451,2953,1,0,0,0,453,2956,1,0,0,0,455,2966,1,0,0,0,457,2976,1,0,0,0,459,2985,1,0,0,0,461,2995,1,0,0,0,463,3005,1,0,0,0,465,3011,1,0,0,0,467,3019,1,0,0,0,469,3027,1,0,0,0,471,3036,1,0,0,0,473,3043,1,0,0,0,475,3055,1,0,0,0,477,3062,1,0,0,0,479,3070,1,0,0,0,481,3078,1,0,0,0,483,3088,1,0,0,0,485,3092,1,0,0,0,487,3098,1,0,0,0,489,3107,1,0,0,0,491,3113,1,0,0,0,493,3118,1,0,0,0,495,3128,1,0,0,0,497,3134,1,0,0,0,499,3141,1,0,0,0,501,3146,1,0,0,0,503,3152,1,0,0,0,505,3161,1,0,0,0,507,3166,1,0,0,0,509,3174,1,0,0,0,511,3180,1,0,0,0,513,3188,1,0,0,0,515,3201,1,0,0,0,517,3210,1,0,0,0,519,3216,1,0,0,0,521,3223,1,0,0,0,523,3232,1,0,0,0,525,3237,1,0,0,0,527,3243,1,0,0,0,529,3248,1,0,0,0,531,3253,1,0,0,0,533,3259,1,0,0,0,535,3264,1,0,0,0,537,3267,1,0,0,0,539,3275,1,0,0,0,541,3282,1,0,0,0,543,3289,1,0,0,0,545,3295,1,0,0,0,547,3302,1,0,0,0,549,3305,1,0,0,0,551,3309,1,0,0,0,553,3314,1,0,0,0,555,3323,1,0,0,0,557,3330,1,0,0,0,559,3338,1,0,0,0,561,3344,1,0,0,0,563,3350,1,0,0,0,565,3357,1,0,0,0,567,3365,1,0,0,0,569,3375,1,0,0,0,571,3383,1,0,0,0,573,3392,1,0,0,0,575,3398,1,0,0,0,577,3408,1,0,0,0,579,3416,1,0,0,0,581,3425,1,0,0,0,583,3434,1,0,0,0,585,3440,1,0,0,0,587,3451,1,0,0,0,589,3462,1,0,0,0,591,3472,1,0,0,0,593,3480,1,0,0,0,595,3486,1,0,0,0,597,3492,1,0,0,0,599,3497,1,0,0,0,601,3506,1,0,0,0,603,3514,1,0,0,0,605,3524,1,0,0,0,607,3528,1,0,0,0,609,3536,1,0,0,0,611,3544,1,0,0,0,613,3553,1,0,0,0,615,3561,1,0,0,0,617,3568,1,0,0,0,619,3579,1,0,0,0,621,3587,1,0,0,0,623,3595,1,0,0,0,625,3601,1,0,0,0,627,3609,1,0,0,0,629,3618,1,0,0,0,631,3626,1,0,0,0,633,3633,1,0,0,0,635,3638,1,0,0,0,637,3647,1,0,0,0,639,3652,1,0,0,0,641,3657,1,0,0,0,643,3667,1,0,0,0,645,3674,1,0,0,0,647,3681,1,0,0,0,649,3688,1,0,0,0,651,3695,1,0,0,0,653,3704,1,0,0,0,655,3713,1,0,0,0,657,3723,1,0,0,0,659,3736,1,0,0,0,661,3743,1,0,0,0,663,3751,1,0,0,0,665,3755,1,0,0,0,667,3761,1,0,0,0,669,3766,1,0,0,0,671,3773,1,0,0,0,673,3782,1,0,0,0,675,3789,1,0,0,0,677,3800,1,0,0,0,679,3806,1,0,0,0,681,3816,1,0,0,0,683,3827,1,0,0,0,685,3833,1,0,0,0,687,3840,1,0,0,0,689,3848,1,0,0,0,691,3855,1,0,0,0,693,3861,1,0,0,0,695,3867,1,0,0,0,697,3874,1,0,0,0,699,3881,1,0,0,0,701,3892,1,0,0,0,703,3897,1,0,0,0,705,3906,1,0,0,0,707,3916,1,0,0,0,709,3921,1,0,0,0,711,3933,1,0,0,0,713,3941,1,0,0,0,715,3950,1,0,0,0,717,3958,1,0,0,0,719,3963,1,0,0,0,721,3969,1,0,0,0,723,3979,1,0,0,0,725,3991,1,0,0,0,727,4003,1,0,0,0,729,4011,1,0,0,0,731,4020,1,0,0,0,733,4029,1,0,0,0,735,4035,1,0,0,0,737,4042,1,0,0,0,739,4049,1,0,0,0,741,4055,1,0,0,0,743,4064,1,0,0,0,745,4074,1,0,0,0,747,4082,1,0,0,0,749,4090,1,0,0,0,751,4095,1,0,0,0,753,4104,1,0,0,0,755,4115,1,0,0,0,757,4123,1,0,0,0,759,4128,1,0,0,0,761,4136,1,0,0,0,763,4142,1,0,0,0,765,4146,1,0,0,0,767,4151,1,0,0,0,769,4155,1,0,0,0,771,4160,1,0,0,0,773,4168,1,0,0,0,775,4175,1,0,0,0,777,4179,1,0,0,0,779,4187,1,0,0,0,781,4192,1,0,0,0,783,4202,1,0,0,0,785,4211,1,0,0,0,787,4215,1,0,0,0,789,4223,1,0,0,0,791,4230,1,0,0,0,793,4238,1,0,0,0,795,4244,1,0,0,0,797,4253,1,0,0,0,799,4259,1,0,0,0,801,4263,1,0,0,0,803,4271,1,0,0,0,805,4280,1,0,0,0,807,4286,1,0,0,0,809,4295,1,0,0,0,811,4301,1,0,0,0,813,4306,1,0,0,0,815,4313,1,0,0,0,817,4321,1,0,0,0,819,4329,1,0,0,0,821,4338,1,0,0,0,823,4348,1,0,0,0,825,4353,1,0,0,0,827,4357,1,0,0,0,829,4363,1,0,0,0,831,4372,1,0,0,0,833,4382,1,0,0,0,835,4387,1,0,0,0,837,4397,1,0,0,0,839,4403,1,0,0,0,841,4408,1,0,0,0,843,4415,1,0,0,0,845,4423,1,0,0,0,847,4437,1,0,0,0,849,4448,1,0,0,0,851,4455,1,0,0,0,853,4474,1,0,0,0,855,4502,1,0,0,0,857,4529,1,0,0,0,859,4535,1,0,0,0,861,4548,1,0,0,0,863,4558,1,0,0,0,865,4569,1,0,0,0,867,4579,1,0,0,0,869,4589,1,0,0,0,871,4598,1,0,0,0,873,4604,1,0,0,0,875,4612,1,0,0,0,877,4625,1,0,0,0,879,4630,1,0,0,0,881,4638,1,0,0,0,883,4645,1,0,0,0,885,4652,1,0,0,0,887,4663,1,0,0,0,889,4673,1,0,0,0,891,4680,1,0,0,0,893,4687,1,0,0,0,895,4695,1,0,0,0,897,4703,1,0,0,0,899,4713,1,0,0,0,901,4720,1,0,0,0,903,4727,1,0,0,0,905,4734,1,0,0,0,907,4746,1,0,0,0,909,4750,1,0,0,0,911,4754,1,0,0,0,913,4760,1,0,0,0,915,4773,1,0,0,0,917,4785,1,0,0,0,919,4789,1,0,0,0,921,4793,1,0,0,0,923,4802,1,0,0,0,925,4810,1,0,0,0,927,4821,1,0,0,0,929,4827,1,0,0,0,931,4835,1,0,0,0,933,4844,1,0,0,0,935,4848,1,0,0,0,937,4856,1,0,0,0,939,4867,1,0,0,0,941,4876,1,0,0,0,943,4881,1,0,0,0,945,4888,1,0,0,0,947,4893,1,0,0,0,949,4900,1,0,0,0,951,4905,1,0,0,0,953,4914,1,0,0,0,955,4919,1,0,0,0,957,4931,1,0,0,0,959,4942,1,0,0,0,961,4951,1,0,0,0,963,4959,1,0,0,0,965,4973,1,0,0,0,967,4981,1,0,0,0,969,4992,1,0,0,0,971,4999,1,0,0,0,973,5006,1,0,0,0,975,5013,1,0,0,0,977,5020,1,0,0,0,979,5024,1,0,0,0,981,5028,1,0,0,0,983,5033,1,0,0,0,985,5038,1,0,0,0,987,5046,1,0,0,0,989,5052,1,0,0,0,991,5062,1,0,0,0,993,5067,1,0,0,0,995,5087,1,0,0,0,997,5105,1,0,0,0,999,5111,1,0,0,0,1001,5124,1,0,0,0,1003,5135,1,0,0,0,1005,5141,1,0,0,0,1007,5150,1,0,0,0,1009,5158,1,0,0,0,1011,5162,1,0,0,0,1013,5174,1,0,0,0,1015,5182,1,0,0,0,1017,5188,1,0,0,0,1019,5194,1,0,0,0,1021,5202,1,0,0,0,1023,5210,1,0,0,0,1025,5216,1,0,0,0,1027,5221,1,0,0,0,1029,5228,1,0,0,0,1031,5234,1,0,0,0,1033,5240,1,0,0,0,1035,5249,1,0,0,0,1037,5255,1,0,0,0,1039,5259,1,0,0,0,1041,5264,1,0,0,0,1043,5271,1,0,0,0,1045,5279,1,0,0,0,1047,5289,1,0,0,0,1049,5296,1,0,0,0,1051,5301,1,0,0,0,1053,5306,1,0,0,0,1055,5310,1,0,0,0,1057,5315,1,0,0,0,1059,5320,1,0,0,0,1061,5328,1,0,0,0,1063,5336,1,0,0,0,1065,5340,1,0,0,0,1067,5344,1,0,0,0,1069,5354,1,0,0,0,1071,5360,1,0,0,0,1073,5364,1,0,0,0,1075,5368,1,0,0,0,1077,5371,1,0,0,0,1079,5377,1,0,0,0,1081,5387,1,0,0,0,1083,5391,1,0,0,0,1085,5394,1,0,0,0,1087,5400,1,0,0,0,1089,5408,1,0,0,0,1091,5414,1,0,0,0,1093,5420,1,0,0,0,1095,5425,1,0,0,0,1097,5430,1,0,0,0,1099,5441,1,0,0,0,1101,5447,1,0,0,0,1103,5460,1,0,0,0,1105,5467,1,0,0,0,1107,5475,1,0,0,0,1109,5480,1,0,0,0,1111,5486,1,0,0,0,1113,5491,1,0,0,0,1115,5497,1,0,0,0,1117,5502,1,0,0,0,1119,5508,1,0,0,0,1121,5514,1,0,0,0,1123,5521,1,0,0,0,1125,5525,1,0,0,0,1127,5530,1,0,0,0,1129,5534,1,0,0,0,1131,5539,1,0,0,0,1133,5543,1,0,0,0,1135,5548,1,0,0,0,1137,5552,1,0,0,0,1139,5557,1,0,0,0,1141,5562,1,0,0,0,1143,5567,1,0,0,0,1145,5572,1,0,0,0,1147,5578,1,0,0,0,1149,5584,1,0,0,0,1151,5590,1,0,0,0,1153,5601,1,0,0,0,1155,5613,1,0,0,0,1157,5630,1,0,0,0,1159,5636,1,0,0,0,1161,5649,1,0,0,0,1163,5655,1,0,0,0,1165,5661,1,0,0,0,1167,5667,1,0,0,0,1169,5671,1,0,0,0,1171,5678,1,0,0,0,1173,5688,1,0,0,0,1175,5695,1,0,0,0,1177,5703,1,0,0,0,1179,5710,1,0,0,0,1181,5715,1,0,0,0,1183,5721,1,0,0,0,1185,5725,1,0,0,0,1187,5737,1,0,0,0,1189,5756,1,0,0,0,1191,5768,1,0,0,0,1193,5782,1,0,0,0,1195,5797,1,0,0,0,1197,5810,1,0,0,0,1199,5823,1,0,0,0,1201,5835,1,0,0,0,1203,5848,1,0,0,0,1205,5863,1,0,0,0,1207,5878,1,0,0,0,1209,5900,1,0,0,0,1211,5922,1,0,0,0,1213,5936,1,0,0,0,1215,5943,1,0,0,0,1217,5948,1,0,0,0,1219,5954,1,0,0,0,1221,5965,1,0,0,0,1223,5977,1,0,0,0,1225,5993,1,0,0,0,1227,6009,1,0,0,0,1229,6016,1,0,0,0,1231,6023,1,0,0,0,1233,6032,1,0,0,0,1235,6039,1,0,0,0,1237,6049,1,0,0,0,1239,6056,1,0,0,0,1241,6060,1,0,0,0,1243,6076,1,0,0,0,1245,6085,1,0,0,0,1247,6095,1,0,0,0,1249,6106,1,0,0,0,1251,6115,1,0,0,0,1253,6128,1,0,0,0,1255,6142,1,0,0,0,1257,6159,1,0,0,0,1259,6169,1,0,0,0,1261,6183,1,0,0,0,1263,6193,1,0,0,0,1265,6208,1,0,0,0,1267,6225,1,0,0,0,1269,6229,1,0,0,0,1271,6249,1,0,0,0,1273,6259,1,0,0,0,1275,6281,1,0,0,0,1277,6294,1,0,0,0,1279,6302,1,0,0,0,1281,6310,1,0,0,0,1283,6320,1,0,0,0,1285,6333,1,0,0,0,1287,6337,1,0,0,0,1289,6341,1,0,0,0,1291,6343,1,0,0,0,1293,6346,1,0,0,0,1295,6355,1,0,0,0,1297,6358,1,0,0,0,1299,6367,1,0,0,0,1301,6371,1,0,0,0,1303,6375,1,0,0,0,1305,6379,1,0,0,0,1307,6383,1,0,0,0,1309,6386,1,0,0,0,1311,6395,1,0,0,0,1313,6401,1,0,0,0,1315,6404,1,0,0,0,1317,6408,1,0,0,0,1319,6417,1,0,0,0,1321,6424,1,0,0,0,1323,6427,1,0,0,0,1325,6435,1,0,0,0,1327,6438,1,0,0,0,1329,6441,1,0,0,0,1331,6444,1,0,0,0,1333,6452,1,0,0,0,1335,6455,1,0,0,0,1337,6458,1,0,0,0,1339,6460,1,0,0,0,1341,6494,1,0,0,0,1343,6497,1,0,0,0,1345,6501,1,0,0,0,1347,6509,1,0,0,0,1349,6525,1,0,0,0,1351,6536,1,0,0,0,1353,6540,1,0,0,0,1355,6551,1,0,0,0,1357,6590,1,0,0,0,1359,6641,1,0,0,0,1361,6665,1,0,0,0,1363,6668,1,0,0,0,1365,6670,1,0,0,0,1367,6675,1,0,0,0,1369,6706,1,0,0,0,1371,6709,1,0,0,0,1373,6714,1,0,0,0,1375,6727,1,0,0,0,1377,6730,1,0,0,0,1379,6735,1,0,0,0,1381,6741,1,0,0,0,1383,6746,1,0,0,0,1385,6751,1,0,0,0,1387,6756,1,0,0,0,1389,6761,1,0,0,0,1391,6778,1,0,0,0,1393,6780,1,0,0,0,1395,1396,5,36,0,0,1396,6,1,0,0,0,1397,1398,5,40,0,0,1398,8,1,0,0,0,1399,1400,5,41,0,0,1400,10,1,0,0,0,1401,1402,5,91,0,0,1402,12,1,0,0,0,1403,1404,5,93,0,0,1404,14,1,0,0,0,1405,1406,5,44,0,0,1406,16,1,0,0,0,1407,1408,5,59,0,0,1408,18,1,0,0,0,1409,1410,5,58,0,0,1410,20,1,0,0,0,1411,1412,5,42,0,0,1412,22,1,0,0,0,1413,1414,5,61,0,0,1414,24,1,0,0,0,1415,1416,5,46,0,0,1416,26,1,0,0,0,1417,1418,5,43,0,0,1418,28,1,0,0,0,1419,1420,5,45,0,0,1420,30,1,0,0,0,1421,1422,5,47,0,0,1422,32,1,0,0,0,1423,1424,5,94,0,0,1424,34,1,0,0,0,1425,1426,5,60,0,0,1426,36,1,0,0,0,1427,1428,5,62,0,0,1428,38,1,0,0,0,1429,1430,5,60,0,0,1430,1431,5,60,0,0,1431,40,1,0,0,0,1432,1433,5,62,0,0,1433,1434,5,62,0,0,1434,42,1,0,0,0,1435,1436,5,58,0,0,1436,1437,5,61,0,0,1437,44,1,0,0,0,1438,1439,5,60,0,0,1439,1440,5,61,0,0,1440,46,1,0,0,0,1441,1442,5,61,0,0,1442,1443,5,62,0,0,1443,48,1,0,0,0,1444,1445,5,62,0,0,1445,1446,5,61,0,0,1446,50,1,0,0,0,1447,1448,5,46,0,0,1448,1449,5,46,0,0,1449,52,1,0,0,0,1450,1451,5,60,0,0,1451,1452,5,62,0,0,1452,54,1,0,0,0,1453,1454,5,58,0,0,1454,1455,5,58,0,0,1455,56,1,0,0,0,1456,1457,5,37,0,0,1457,58,1,0,0,0,1458,1460,5,36,0,0,1459,1461,7,0,0,0,1460,1459,1,0,0,0,1461,1462,1,0,0,0,1462,1460,1,0,0,0,1462,1463,1,0,0,0,1463,60,1,0,0,0,1464,1480,3,65,30,0,1465,1469,5,43,0,0,1466,1467,5,45,0,0,1467,1469,4,28,0,0,1468,1465,1,0,0,0,1468,1466,1,0,0,0,1469,1470,1,0,0,0,1470,1468,1,0,0,0,1470,1471,1,0,0,0,1471,1475,1,0,0,0,1472,1476,3,65,30,0,1473,1474,5,47,0,0,1474,1476,4,28,1,0,1475,1472,1,0,0,0,1475,1473,1,0,0,0,1476,1480,1,0,0,0,1477,1478,5,47,0,0,1478,1480,4,28,2,0,1479,1464,1,0,0,0,1479,1468,1,0,0,0,1479,1477,1,0,0,0,1480,1481,1,0,0,0,1481,1479,1,0,0,0,1481,1482,1,0,0,0,1482,1485,1,0,0,0,1483,1485,7,1,0,0,1484,1479,1,0,0,0,1484,1483,1,0,0,0,1485,1486,1,0,0,0,1486,1487,6,28,0,0,1487,62,1,0,0,0,1488,1494,3,67,31,0,1489,1490,5,45,0,0,1490,1494,4,29,3,0,1491,1492,5,47,0,0,1492,1494,4,29,4,0,1493,1488,1,0,0,0,1493,1489,1,0,0,0,1493,1491,1,0,0,0,1494,1497,1,0,0,0,1495,1493,1,0,0,0,1495,1496,1,0,0,0,1496,1498,1,0,0,0,1497,1495,1,0,0,0,1498,1500,3,69,32,0,1499,1501,3,61,28,0,1500,1499,1,0,0,0,1500,1501,1,0,0,0,1501,1505,1,0,0,0,1502,1506,5,43,0,0,1503,1504,5,45,0,0,1504,1506,4,29,5,0,1505,1502,1,0,0,0,1505,1503,1,0,0,0,1506,1507,1,0,0,0,1507,1505,1,0,0,0,1507,1508,1,0,0,0,1508,1509,1,0,0,0,1509,1510,6,29,1,0,1510,64,1,0,0,0,1511,1512,7,2,0,0,1512,66,1,0,0,0,1513,1514,7,3,0,0,1514,68,1,0,0,0,1515,1516,7,4,0,0,1516,70,1,0,0,0,1517,1518,7,5,0,0,1518,1519,7,6,0,0,1519,1520,7,6,0,0,1520,72,1,0,0,0,1521,1522,7,5,0,0,1522,1523,7,7,0,0,1523,1524,7,5,0,0,1524,1525,7,6,0,0,1525,1526,7,8,0,0,1526,1527,7,9,0,0,1527,1528,7,10,0,0,1528,74,1,0,0,0,1529,1530,7,5,0,0,1530,1531,7,7,0,0,1531,1532,7,5,0,0,1532,1533,7,6,0,0,1533,1534,7,8,0,0,1534,1535,7,11,0,0,1535,1536,7,10,0,0,1536,76,1,0,0,0,1537,1538,7,5,0,0,1538,1539,7,7,0,0,1539,1540,7,12,0,0,1540,78,1,0,0,0,1541,1542,7,5,0,0,1542,1543,7,7,0,0,1543,1544,7,8,0,0,1544,80,1,0,0,0,1545,1546,7,5,0,0,1546,1547,7,13,0,0,1547,1548,7,13,0,0,1548,1549,7,5,0,0,1549,1550,7,8,0,0,1550,82,1,0,0,0,1551,1552,7,5,0,0,1552,1553,7,9,0,0,1553,84,1,0,0,0,1554,1555,7,5,0,0,1555,1556,7,9,0,0,1556,1557,7,14,0,0,1557,86,1,0,0,0,1558,1559,7,5,0,0,1559,1560,7,9,0,0,1560,1561,7,8,0,0,1561,1562,7,15,0,0,1562,1563,7,15,0,0,1563,1564,7,10,0,0,1564,1565,7,16,0,0,1565,1566,7,13,0,0,1566,1567,7,17,0,0,1567,1568,7,14,0,0,1568,88,1,0,0,0,1569,1570,7,18,0,0,1570,1571,7,19,0,0,1571,1572,7,16,0,0,1572,1573,7,20,0,0,1573,90,1,0,0,0,1574,1575,7,14,0,0,1575,1576,7,5,0,0,1576,1577,7,9,0,0,1577,1578,7,10,0,0,1578,92,1,0,0,0,1579,1580,7,14,0,0,1580,1581,7,5,0,0,1581,1582,7,9,0,0,1582,1583,7,16,0,0,1583,94,1,0,0,0,1584,1585,7,14,0,0,1585,1586,7,20,0,0,1586,1587,7,10,0,0,1587,1588,7,14,0,0,1588,1589,7,21,0,0,1589,96,1,0,0,0,1590,1591,7,14,0,0,1591,1592,7,19,0,0,1592,1593,7,6,0,0,1593,1594,7,6,0,0,1594,1595,7,5,0,0,1595,1596,7,16,0,0,1596,1597,7,10,0,0,1597,98,1,0,0,0,1598,1599,7,14,0,0,1599,1600,7,19,0,0,1600,1601,7,6,0,0,1601,1602,7,22,0,0,1602,1603,7,15,0,0,1603,1604,7,7,0,0,1604,100,1,0,0,0,1605,1606,7,14,0,0,1606,1607,7,19,0,0,1607,1608,7,7,0,0,1608,1609,7,9,0,0,1609,1610,7,16,0,0,1610,1611,7,13,0,0,1611,1612,7,5,0,0,1612,1613,7,17,0,0,1613,1614,7,7,0,0,1614,1615,7,16,0,0,1615,102,1,0,0,0,1616,1617,7,14,0,0,1617,1618,7,13,0,0,1618,1619,7,10,0,0,1619,1620,7,5,0,0,1620,1621,7,16,0,0,1621,1622,7,10,0,0,1622,104,1,0,0,0,1623,1624,7,14,0,0,1624,1625,7,22,0,0,1625,1626,7,13,0,0,1626,1627,7,13,0,0,1627,1628,7,10,0,0,1628,1629,7,7,0,0,1629,1630,7,16,0,0,1630,1631,5,95,0,0,1631,1632,7,14,0,0,1632,1633,7,5,0,0,1633,1634,7,16,0,0,1634,1635,7,5,0,0,1635,1636,7,6,0,0,1636,1637,7,19,0,0,1637,1638,7,23,0,0,1638,106,1,0,0,0,1639,1640,7,14,0,0,1640,1641,7,22,0,0,1641,1642,7,13,0,0,1642,1643,7,13,0,0,1643,1644,7,10,0,0,1644,1645,7,7,0,0,1645,1646,7,16,0,0,1646,1647,5,95,0,0,1647,1648,7,12,0,0,1648,1649,7,5,0,0,1649,1650,7,16,0,0,1650,1651,7,10,0,0,1651,108,1,0,0,0,1652,1653,7,14,0,0,1653,1654,7,22,0,0,1654,1655,7,13,0,0,1655,1656,7,13,0,0,1656,1657,7,10,0,0,1657,1658,7,7,0,0,1658,1659,7,16,0,0,1659,1660,5,95,0,0,1660,1661,7,13,0,0,1661,1662,7,19,0,0,1662,1663,7,6,0,0,1663,1664,7,10,0,0,1664,110,1,0,0,0,1665,1666,7,14,0,0,1666,1667,7,22,0,0,1667,1668,7,13,0,0,1668,1669,7,13,0,0,1669,1670,7,10,0,0,1670,1671,7,7,0,0,1671,1672,7,16,0,0,1672,1673,5,95,0,0,1673,1674,7,16,0,0,1674,1675,7,17,0,0,1675,1676,7,15,0,0,1676,1677,7,10,0,0,1677,112,1,0,0,0,1678,1679,7,14,0,0,1679,1680,7,22,0,0,1680,1681,7,13,0,0,1681,1682,7,13,0,0,1682,1683,7,10,0,0,1683,1684,7,7,0,0,1684,1685,7,16,0,0,1685,1686,5,95,0,0,1686,1687,7,16,0,0,1687,1688,7,17,0,0,1688,1689,7,15,0,0,1689,1690,7,10,0,0,1690,1691,7,9,0,0,1691,1692,7,16,0,0,1692,1693,7,5,0,0,1693,1694,7,15,0,0,1694,1695,7,24,0,0,1695,114,1,0,0,0,1696,1697,7,14,0,0,1697,1698,7,22,0,0,1698,1699,7,13,0,0,1699,1700,7,13,0,0,1700,1701,7,10,0,0,1701,1702,7,7,0,0,1702,1703,7,16,0,0,1703,1704,5,95,0,0,1704,1705,7,22,0,0,1705,1706,7,9,0,0,1706,1707,7,10,0,0,1707,1708,7,13,0,0,1708,116,1,0,0,0,1709,1710,7,12,0,0,1710,1711,7,10,0,0,1711,1712,7,25,0,0,1712,1713,7,5,0,0,1713,1714,7,22,0,0,1714,1715,7,6,0,0,1715,1716,7,16,0,0,1716,118,1,0,0,0,1717,1718,7,12,0,0,1718,1719,7,10,0,0,1719,1720,7,25,0,0,1720,1721,7,10,0,0,1721,1722,7,13,0,0,1722,1723,7,13,0,0,1723,1724,7,5,0,0,1724,1725,7,18,0,0,1725,1726,7,6,0,0,1726,1727,7,10,0,0,1727,120,1,0,0,0,1728,1729,7,12,0,0,1729,1730,7,10,0,0,1730,1731,7,9,0,0,1731,1732,7,14,0,0,1732,122,1,0,0,0,1733,1734,7,12,0,0,1734,1735,7,17,0,0,1735,1736,7,9,0,0,1736,1737,7,16,0,0,1737,1738,7,17,0,0,1738,1739,7,7,0,0,1739,1740,7,14,0,0,1740,1741,7,16,0,0,1741,124,1,0,0,0,1742,1743,7,12,0,0,1743,1744,7,19,0,0,1744,126,1,0,0,0,1745,1746,7,10,0,0,1746,1747,7,6,0,0,1747,1748,7,9,0,0,1748,1749,7,10,0,0,1749,128,1,0,0,0,1750,1751,7,10,0,0,1751,1752,7,26,0,0,1752,1753,7,14,0,0,1753,1754,7,10,0,0,1754,1755,7,24,0,0,1755,1756,7,16,0,0,1756,130,1,0,0,0,1757,1758,7,25,0,0,1758,1759,7,5,0,0,1759,1760,7,6,0,0,1760,1761,7,9,0,0,1761,1762,7,10,0,0,1762,132,1,0,0,0,1763,1764,7,25,0,0,1764,1765,7,10,0,0,1765,1766,7,16,0,0,1766,1767,7,14,0,0,1767,1768,7,20,0,0,1768,134,1,0,0,0,1769,1770,7,25,0,0,1770,1771,7,19,0,0,1771,1772,7,13,0,0,1772,136,1,0,0,0,1773,1774,7,25,0,0,1774,1775,7,19,0,0,1775,1776,7,13,0,0,1776,1777,7,10,0,0,1777,1778,7,17,0,0,1778,1779,7,23,0,0,1779,1780,7,7,0,0,1780,138,1,0,0,0,1781,1782,7,25,0,0,1782,1783,7,13,0,0,1783,1784,7,19,0,0,1784,1785,7,15,0,0,1785,140,1,0,0,0,1786,1787,7,23,0,0,1787,1788,7,13,0,0,1788,1789,7,5,0,0,1789,1790,7,7,0,0,1790,1791,7,16,0,0,1791,142,1,0,0,0,1792,1793,7,23,0,0,1793,1794,7,13,0,0,1794,1795,7,19,0,0,1795,1796,7,22,0,0,1796,1797,7,24,0,0,1797,144,1,0,0,0,1798,1799,7,20,0,0,1799,1800,7,5,0,0,1800,1801,7,27,0,0,1801,1802,7,17,0,0,1802,1803,7,7,0,0,1803,1804,7,23,0,0,1804,146,1,0,0,0,1805,1806,7,17,0,0,1806,1807,7,7,0,0,1807,148,1,0,0,0,1808,1809,7,17,0,0,1809,1810,7,7,0,0,1810,1811,7,17,0,0,1811,1812,7,16,0,0,1812,1813,7,17,0,0,1813,1814,7,5,0,0,1814,1815,7,6,0,0,1815,1816,7,6,0,0,1816,1817,7,8,0,0,1817,150,1,0,0,0,1818,1819,7,17,0,0,1819,1820,7,7,0,0,1820,1821,7,16,0,0,1821,1822,7,10,0,0,1822,1823,7,13,0,0,1823,1824,7,9,0,0,1824,1825,7,10,0,0,1825,1826,7,14,0,0,1826,1827,7,16,0,0,1827,152,1,0,0,0,1828,1829,7,17,0,0,1829,1830,7,7,0,0,1830,1831,7,16,0,0,1831,1832,7,19,0,0,1832,154,1,0,0,0,1833,1834,7,6,0,0,1834,1835,7,5,0,0,1835,1836,7,16,0,0,1836,1837,7,10,0,0,1837,1838,7,13,0,0,1838,1839,7,5,0,0,1839,1840,7,6,0,0,1840,156,1,0,0,0,1841,1842,7,6,0,0,1842,1843,7,10,0,0,1843,1844,7,5,0,0,1844,1845,7,12,0,0,1845,1846,7,17,0,0,1846,1847,7,7,0,0,1847,1848,7,23,0,0,1848,158,1,0,0,0,1849,1850,7,6,0,0,1850,1851,7,17,0,0,1851,1852,7,15,0,0,1852,1853,7,17,0,0,1853,1854,7,16,0,0,1854,160,1,0,0,0,1855,1856,7,6,0,0,1856,1857,7,19,0,0,1857,1858,7,14,0,0,1858,1859,7,5,0,0,1859,1860,7,6,0,0,1860,1861,7,16,0,0,1861,1862,7,17,0,0,1862,1863,7,15,0,0,1863,1864,7,10,0,0,1864,162,1,0,0,0,1865,1866,7,6,0,0,1866,1867,7,19,0,0,1867,1868,7,14,0,0,1868,1869,7,5,0,0,1869,1870,7,6,0,0,1870,1871,7,16,0,0,1871,1872,7,17,0,0,1872,1873,7,15,0,0,1873,1874,7,10,0,0,1874,1875,7,9,0,0,1875,1876,7,16,0,0,1876,1877,7,5,0,0,1877,1878,7,15,0,0,1878,1879,7,24,0,0,1879,164,1,0,0,0,1880,1881,7,7,0,0,1881,1882,7,19,0,0,1882,1883,7,16,0,0,1883,166,1,0,0,0,1884,1885,7,7,0,0,1885,1886,7,22,0,0,1886,1887,7,6,0,0,1887,1888,7,6,0,0,1888,168,1,0,0,0,1889,1890,7,19,0,0,1890,1891,7,25,0,0,1891,1892,7,25,0,0,1892,1893,7,9,0,0,1893,1894,7,10,0,0,1894,1895,7,16,0,0,1895,170,1,0,0,0,1896,1897,7,19,0,0,1897,1898,7,7,0,0,1898,172,1,0,0,0,1899,1900,7,19,0,0,1900,1901,7,7,0,0,1901,1902,7,6,0,0,1902,1903,7,8,0,0,1903,174,1,0,0,0,1904,1905,7,19,0,0,1905,1906,7,13,0,0,1906,176,1,0,0,0,1907,1908,7,19,0,0,1908,1909,7,13,0,0,1909,1910,7,12,0,0,1910,1911,7,10,0,0,1911,1912,7,13,0,0,1912,178,1,0,0,0,1913,1914,7,24,0,0,1914,1915,7,6,0,0,1915,1916,7,5,0,0,1916,1917,7,14,0,0,1917,1918,7,17,0,0,1918,1919,7,7,0,0,1919,1920,7,23,0,0,1920,180,1,0,0,0,1921,1922,7,24,0,0,1922,1923,7,13,0,0,1923,1924,7,17,0,0,1924,1925,7,15,0,0,1925,1926,7,5,0,0,1926,1927,7,13,0,0,1927,1928,7,8,0,0,1928,182,1,0,0,0,1929,1930,7,13,0,0,1930,1931,7,10,0,0,1931,1932,7,25,0,0,1932,1933,7,10,0,0,1933,1934,7,13,0,0,1934,1935,7,10,0,0,1935,1936,7,7,0,0,1936,1937,7,14,0,0,1937,1938,7,10,0,0,1938,1939,7,9,0,0,1939,184,1,0,0,0,1940,1941,7,13,0,0,1941,1942,7,10,0,0,1942,1943,7,16,0,0,1943,1944,7,22,0,0,1944,1945,7,13,0,0,1945,1946,7,7,0,0,1946,1947,7,17,0,0,1947,1948,7,7,0,0,1948,1949,7,23,0,0,1949,186,1,0,0,0,1950,1951,7,9,0,0,1951,1952,7,10,0,0,1952,1953,7,6,0,0,1953,1954,7,10,0,0,1954,1955,7,14,0,0,1955,1956,7,16,0,0,1956,188,1,0,0,0,1957,1958,7,9,0,0,1958,1959,7,10,0,0,1959,1960,7,9,0,0,1960,1961,7,9,0,0,1961,1962,7,17,0,0,1962,1963,7,19,0,0,1963,1964,7,7,0,0,1964,1965,5,95,0,0,1965,1966,7,22,0,0,1966,1967,7,9,0,0,1967,1968,7,10,0,0,1968,1969,7,13,0,0,1969,190,1,0,0,0,1970,1971,7,9,0,0,1971,1972,7,19,0,0,1972,1973,7,15,0,0,1973,1974,7,10,0,0,1974,192,1,0,0,0,1975,1976,7,9,0,0,1976,1977,7,8,0,0,1977,1978,7,15,0,0,1978,1979,7,15,0,0,1979,1980,7,10,0,0,1980,1981,7,16,0,0,1981,1982,7,13,0,0,1982,1983,7,17,0,0,1983,1984,7,14,0,0,1984,194,1,0,0,0,1985,1986,7,16,0,0,1986,1987,7,5,0,0,1987,1988,7,18,0,0,1988,1989,7,6,0,0,1989,1990,7,10,0,0,1990,196,1,0,0,0,1991,1992,7,16,0,0,1992,1993,7,20,0,0,1993,1994,7,10,0,0,1994,1995,7,7,0,0,1995,198,1,0,0,0,1996,1997,7,16,0,0,1997,1998,7,19,0,0,1998,200,1,0,0,0,1999,2e3,7,16,0,0,2e3,2001,7,13,0,0,2001,2002,7,5,0,0,2002,2003,7,17,0,0,2003,2004,7,6,0,0,2004,2005,7,17,0,0,2005,2006,7,7,0,0,2006,2007,7,23,0,0,2007,202,1,0,0,0,2008,2009,7,16,0,0,2009,2010,7,13,0,0,2010,2011,7,22,0,0,2011,2012,7,10,0,0,2012,204,1,0,0,0,2013,2014,7,22,0,0,2014,2015,7,7,0,0,2015,2016,7,17,0,0,2016,2017,7,19,0,0,2017,2018,7,7,0,0,2018,206,1,0,0,0,2019,2020,7,22,0,0,2020,2021,7,7,0,0,2021,2022,7,17,0,0,2022,2023,7,28,0,0,2023,2024,7,22,0,0,2024,2025,7,10,0,0,2025,208,1,0,0,0,2026,2027,7,22,0,0,2027,2028,7,9,0,0,2028,2029,7,10,0,0,2029,2030,7,13,0,0,2030,210,1,0,0,0,2031,2032,7,22,0,0,2032,2033,7,9,0,0,2033,2034,7,17,0,0,2034,2035,7,7,0,0,2035,2036,7,23,0,0,2036,212,1,0,0,0,2037,2038,7,27,0,0,2038,2039,7,5,0,0,2039,2040,7,13,0,0,2040,2041,7,17,0,0,2041,2042,7,5,0,0,2042,2043,7,12,0,0,2043,2044,7,17,0,0,2044,2045,7,14,0,0,2045,214,1,0,0,0,2046,2047,7,29,0,0,2047,2048,7,20,0,0,2048,2049,7,10,0,0,2049,2050,7,7,0,0,2050,216,1,0,0,0,2051,2052,7,29,0,0,2052,2053,7,20,0,0,2053,2054,7,10,0,0,2054,2055,7,13,0,0,2055,2056,7,10,0,0,2056,218,1,0,0,0,2057,2058,7,29,0,0,2058,2059,7,17,0,0,2059,2060,7,7,0,0,2060,2061,7,12,0,0,2061,2062,7,19,0,0,2062,2063,7,29,0,0,2063,220,1,0,0,0,2064,2065,7,29,0,0,2065,2066,7,17,0,0,2066,2067,7,16,0,0,2067,2068,7,20,0,0,2068,222,1,0,0,0,2069,2070,7,5,0,0,2070,2071,7,22,0,0,2071,2072,7,16,0,0,2072,2073,7,20,0,0,2073,2074,7,19,0,0,2074,2075,7,13,0,0,2075,2076,7,17,0,0,2076,2077,7,11,0,0,2077,2078,7,5,0,0,2078,2079,7,16,0,0,2079,2080,7,17,0,0,2080,2081,7,19,0,0,2081,2082,7,7,0,0,2082,224,1,0,0,0,2083,2084,7,18,0,0,2084,2085,7,17,0,0,2085,2086,7,7,0,0,2086,2087,7,5,0,0,2087,2088,7,13,0,0,2088,2089,7,8,0,0,2089,226,1,0,0,0,2090,2091,7,14,0,0,2091,2092,7,19,0,0,2092,2093,7,6,0,0,2093,2094,7,6,0,0,2094,2095,7,5,0,0,2095,2096,7,16,0,0,2096,2097,7,17,0,0,2097,2098,7,19,0,0,2098,2099,7,7,0,0,2099,228,1,0,0,0,2100,2101,7,14,0,0,2101,2102,7,19,0,0,2102,2103,7,7,0,0,2103,2104,7,14,0,0,2104,2105,7,22,0,0,2105,2106,7,13,0,0,2106,2107,7,13,0,0,2107,2108,7,10,0,0,2108,2109,7,7,0,0,2109,2110,7,16,0,0,2110,2111,7,6,0,0,2111,2112,7,8,0,0,2112,230,1,0,0,0,2113,2114,7,14,0,0,2114,2115,7,13,0,0,2115,2116,7,19,0,0,2116,2117,7,9,0,0,2117,2118,7,9,0,0,2118,232,1,0,0,0,2119,2120,7,14,0,0,2120,2121,7,22,0,0,2121,2122,7,13,0,0,2122,2123,7,13,0,0,2123,2124,7,10,0,0,2124,2125,7,7,0,0,2125,2126,7,16,0,0,2126,2127,5,95,0,0,2127,2128,7,9,0,0,2128,2129,7,14,0,0,2129,2130,7,20,0,0,2130,2131,7,10,0,0,2131,2132,7,15,0,0,2132,2133,7,5,0,0,2133,234,1,0,0,0,2134,2135,7,25,0,0,2135,2136,7,13,0,0,2136,2137,7,10,0,0,2137,2138,7,10,0,0,2138,2139,7,11,0,0,2139,2140,7,10,0,0,2140,236,1,0,0,0,2141,2142,7,25,0,0,2142,2143,7,22,0,0,2143,2144,7,6,0,0,2144,2145,7,6,0,0,2145,238,1,0,0,0,2146,2147,7,17,0,0,2147,2148,7,6,0,0,2148,2149,7,17,0,0,2149,2150,7,21,0,0,2150,2151,7,10,0,0,2151,240,1,0,0,0,2152,2153,7,17,0,0,2153,2154,7,7,0,0,2154,2155,7,7,0,0,2155,2156,7,10,0,0,2156,2157,7,13,0,0,2157,242,1,0,0,0,2158,2159,7,17,0,0,2159,2160,7,9,0,0,2160,244,1,0,0,0,2161,2162,7,17,0,0,2162,2163,7,9,0,0,2163,2164,7,7,0,0,2164,2165,7,22,0,0,2165,2166,7,6,0,0,2166,2167,7,6,0,0,2167,246,1,0,0,0,2168,2169,7,30,0,0,2169,2170,7,19,0,0,2170,2171,7,17,0,0,2171,2172,7,7,0,0,2172,248,1,0,0,0,2173,2174,7,6,0,0,2174,2175,7,10,0,0,2175,2176,7,25,0,0,2176,2177,7,16,0,0,2177,250,1,0,0,0,2178,2179,7,6,0,0,2179,2180,7,17,0,0,2180,2181,7,21,0,0,2181,2182,7,10,0,0,2182,252,1,0,0,0,2183,2184,7,7,0,0,2184,2185,7,5,0,0,2185,2186,7,16,0,0,2186,2187,7,22,0,0,2187,2188,7,13,0,0,2188,2189,7,5,0,0,2189,2190,7,6,0,0,2190,254,1,0,0,0,2191,2192,7,7,0,0,2192,2193,7,19,0,0,2193,2194,7,16,0,0,2194,2195,7,7,0,0,2195,2196,7,22,0,0,2196,2197,7,6,0,0,2197,2198,7,6,0,0,2198,256,1,0,0,0,2199,2200,7,19,0,0,2200,2201,7,22,0,0,2201,2202,7,16,0,0,2202,2203,7,10,0,0,2203,2204,7,13,0,0,2204,258,1,0,0,0,2205,2206,7,19,0,0,2206,2207,7,27,0,0,2207,2208,7,10,0,0,2208,2209,7,13,0,0,2209,260,1,0,0,0,2210,2211,7,19,0,0,2211,2212,7,27,0,0,2212,2213,7,10,0,0,2213,2214,7,13,0,0,2214,2215,7,6,0,0,2215,2216,7,5,0,0,2216,2217,7,24,0,0,2217,2218,7,9,0,0,2218,262,1,0,0,0,2219,2220,7,13,0,0,2220,2221,7,17,0,0,2221,2222,7,23,0,0,2222,2223,7,20,0,0,2223,2224,7,16,0,0,2224,264,1,0,0,0,2225,2226,7,9,0,0,2226,2227,7,17,0,0,2227,2228,7,15,0,0,2228,2229,7,17,0,0,2229,2230,7,6,0,0,2230,2231,7,5,0,0,2231,2232,7,13,0,0,2232,266,1,0,0,0,2233,2234,7,27,0,0,2234,2235,7,10,0,0,2235,2236,7,13,0,0,2236,2237,7,18,0,0,2237,2238,7,19,0,0,2238,2239,7,9,0,0,2239,2240,7,10,0,0,2240,268,1,0,0,0,2241,2242,7,5,0,0,2242,2243,7,18,0,0,2243,2244,7,19,0,0,2244,2245,7,13,0,0,2245,2246,7,16,0,0,2246,270,1,0,0,0,2247,2248,7,5,0,0,2248,2249,7,18,0,0,2249,2250,7,9,0,0,2250,2251,7,19,0,0,2251,2252,7,6,0,0,2252,2253,7,22,0,0,2253,2254,7,16,0,0,2254,2255,7,10,0,0,2255,272,1,0,0,0,2256,2257,7,5,0,0,2257,2258,7,14,0,0,2258,2259,7,14,0,0,2259,2260,7,10,0,0,2260,2261,7,9,0,0,2261,2262,7,9,0,0,2262,274,1,0,0,0,2263,2264,7,5,0,0,2264,2265,7,14,0,0,2265,2266,7,16,0,0,2266,2267,7,17,0,0,2267,2268,7,19,0,0,2268,2269,7,7,0,0,2269,276,1,0,0,0,2270,2271,7,5,0,0,2271,2272,7,12,0,0,2272,2273,7,12,0,0,2273,278,1,0,0,0,2274,2275,7,5,0,0,2275,2276,7,12,0,0,2276,2277,7,15,0,0,2277,2278,7,17,0,0,2278,2279,7,7,0,0,2279,280,1,0,0,0,2280,2281,7,5,0,0,2281,2282,7,25,0,0,2282,2283,7,16,0,0,2283,2284,7,10,0,0,2284,2285,7,13,0,0,2285,282,1,0,0,0,2286,2287,7,5,0,0,2287,2288,7,23,0,0,2288,2289,7,23,0,0,2289,2290,7,13,0,0,2290,2291,7,10,0,0,2291,2292,7,23,0,0,2292,2293,7,5,0,0,2293,2294,7,16,0,0,2294,2295,7,10,0,0,2295,284,1,0,0,0,2296,2297,7,5,0,0,2297,2298,7,6,0,0,2298,2299,7,9,0,0,2299,2300,7,19,0,0,2300,286,1,0,0,0,2301,2302,7,5,0,0,2302,2303,7,6,0,0,2303,2304,7,16,0,0,2304,2305,7,10,0,0,2305,2306,7,13,0,0,2306,288,1,0,0,0,2307,2308,7,5,0,0,2308,2309,7,6,0,0,2309,2310,7,29,0,0,2310,2311,7,5,0,0,2311,2312,7,8,0,0,2312,2313,7,9,0,0,2313,290,1,0,0,0,2314,2315,7,5,0,0,2315,2316,7,9,0,0,2316,2317,7,9,0,0,2317,2318,7,10,0,0,2318,2319,7,13,0,0,2319,2320,7,16,0,0,2320,2321,7,17,0,0,2321,2322,7,19,0,0,2322,2323,7,7,0,0,2323,292,1,0,0,0,2324,2325,7,5,0,0,2325,2326,7,9,0,0,2326,2327,7,9,0,0,2327,2328,7,17,0,0,2328,2329,7,23,0,0,2329,2330,7,7,0,0,2330,2331,7,15,0,0,2331,2332,7,10,0,0,2332,2333,7,7,0,0,2333,2334,7,16,0,0,2334,294,1,0,0,0,2335,2336,7,5,0,0,2336,2337,7,16,0,0,2337,296,1,0,0,0,2338,2339,7,5,0,0,2339,2340,7,16,0,0,2340,2341,7,16,0,0,2341,2342,7,13,0,0,2342,2343,7,17,0,0,2343,2344,7,18,0,0,2344,2345,7,22,0,0,2345,2346,7,16,0,0,2346,2347,7,10,0,0,2347,298,1,0,0,0,2348,2349,7,18,0,0,2349,2350,7,5,0,0,2350,2351,7,14,0,0,2351,2352,7,21,0,0,2352,2353,7,29,0,0,2353,2354,7,5,0,0,2354,2355,7,13,0,0,2355,2356,7,12,0,0,2356,300,1,0,0,0,2357,2358,7,18,0,0,2358,2359,7,10,0,0,2359,2360,7,25,0,0,2360,2361,7,19,0,0,2361,2362,7,13,0,0,2362,2363,7,10,0,0,2363,302,1,0,0,0,2364,2365,7,18,0,0,2365,2366,7,10,0,0,2366,2367,7,23,0,0,2367,2368,7,17,0,0,2368,2369,7,7,0,0,2369,304,1,0,0,0,2370,2371,7,18,0,0,2371,2372,7,8,0,0,2372,306,1,0,0,0,2373,2374,7,14,0,0,2374,2375,7,5,0,0,2375,2376,7,14,0,0,2376,2377,7,20,0,0,2377,2378,7,10,0,0,2378,308,1,0,0,0,2379,2380,7,14,0,0,2380,2381,7,5,0,0,2381,2382,7,6,0,0,2382,2383,7,6,0,0,2383,2384,7,10,0,0,2384,2385,7,12,0,0,2385,310,1,0,0,0,2386,2387,7,14,0,0,2387,2388,7,5,0,0,2388,2389,7,9,0,0,2389,2390,7,14,0,0,2390,2391,7,5,0,0,2391,2392,7,12,0,0,2392,2393,7,10,0,0,2393,312,1,0,0,0,2394,2395,7,14,0,0,2395,2396,7,5,0,0,2396,2397,7,9,0,0,2397,2398,7,14,0,0,2398,2399,7,5,0,0,2399,2400,7,12,0,0,2400,2401,7,10,0,0,2401,2402,7,12,0,0,2402,314,1,0,0,0,2403,2404,7,14,0,0,2404,2405,7,5,0,0,2405,2406,7,16,0,0,2406,2407,7,5,0,0,2407,2408,7,6,0,0,2408,2409,7,19,0,0,2409,2410,7,23,0,0,2410,316,1,0,0,0,2411,2412,7,14,0,0,2412,2413,7,20,0,0,2413,2414,7,5,0,0,2414,2415,7,17,0,0,2415,2416,7,7,0,0,2416,318,1,0,0,0,2417,2418,7,14,0,0,2418,2419,7,20,0,0,2419,2420,7,5,0,0,2420,2421,7,13,0,0,2421,2422,7,5,0,0,2422,2423,7,14,0,0,2423,2424,7,16,0,0,2424,2425,7,10,0,0,2425,2426,7,13,0,0,2426,2427,7,17,0,0,2427,2428,7,9,0,0,2428,2429,7,16,0,0,2429,2430,7,17,0,0,2430,2431,7,14,0,0,2431,2432,7,9,0,0,2432,320,1,0,0,0,2433,2434,7,14,0,0,2434,2435,7,20,0,0,2435,2436,7,10,0,0,2436,2437,7,14,0,0,2437,2438,7,21,0,0,2438,2439,7,24,0,0,2439,2440,7,19,0,0,2440,2441,7,17,0,0,2441,2442,7,7,0,0,2442,2443,7,16,0,0,2443,322,1,0,0,0,2444,2445,7,14,0,0,2445,2446,7,6,0,0,2446,2447,7,5,0,0,2447,2448,7,9,0,0,2448,2449,7,9,0,0,2449,324,1,0,0,0,2450,2451,7,14,0,0,2451,2452,7,6,0,0,2452,2453,7,19,0,0,2453,2454,7,9,0,0,2454,2455,7,10,0,0,2455,326,1,0,0,0,2456,2457,7,14,0,0,2457,2458,7,6,0,0,2458,2459,7,22,0,0,2459,2460,7,9,0,0,2460,2461,7,16,0,0,2461,2462,7,10,0,0,2462,2463,7,13,0,0,2463,328,1,0,0,0,2464,2465,7,14,0,0,2465,2466,7,19,0,0,2466,2467,7,15,0,0,2467,2468,7,15,0,0,2468,2469,7,10,0,0,2469,2470,7,7,0,0,2470,2471,7,16,0,0,2471,330,1,0,0,0,2472,2473,7,14,0,0,2473,2474,7,19,0,0,2474,2475,7,15,0,0,2475,2476,7,15,0,0,2476,2477,7,10,0,0,2477,2478,7,7,0,0,2478,2479,7,16,0,0,2479,2480,7,9,0,0,2480,332,1,0,0,0,2481,2482,7,14,0,0,2482,2483,7,19,0,0,2483,2484,7,15,0,0,2484,2485,7,15,0,0,2485,2486,7,17,0,0,2486,2487,7,16,0,0,2487,334,1,0,0,0,2488,2489,7,14,0,0,2489,2490,7,19,0,0,2490,2491,7,15,0,0,2491,2492,7,15,0,0,2492,2493,7,17,0,0,2493,2494,7,16,0,0,2494,2495,7,16,0,0,2495,2496,7,10,0,0,2496,2497,7,12,0,0,2497,336,1,0,0,0,2498,2499,7,14,0,0,2499,2500,7,19,0,0,2500,2501,7,7,0,0,2501,2502,7,25,0,0,2502,2503,7,17,0,0,2503,2504,7,23,0,0,2504,2505,7,22,0,0,2505,2506,7,13,0,0,2506,2507,7,5,0,0,2507,2508,7,16,0,0,2508,2509,7,17,0,0,2509,2510,7,19,0,0,2510,2511,7,7,0,0,2511,338,1,0,0,0,2512,2513,7,14,0,0,2513,2514,7,19,0,0,2514,2515,7,7,0,0,2515,2516,7,7,0,0,2516,2517,7,10,0,0,2517,2518,7,14,0,0,2518,2519,7,16,0,0,2519,2520,7,17,0,0,2520,2521,7,19,0,0,2521,2522,7,7,0,0,2522,340,1,0,0,0,2523,2524,7,14,0,0,2524,2525,7,19,0,0,2525,2526,7,7,0,0,2526,2527,7,9,0,0,2527,2528,7,16,0,0,2528,2529,7,13,0,0,2529,2530,7,5,0,0,2530,2531,7,17,0,0,2531,2532,7,7,0,0,2532,2533,7,16,0,0,2533,2534,7,9,0,0,2534,342,1,0,0,0,2535,2536,7,14,0,0,2536,2537,7,19,0,0,2537,2538,7,7,0,0,2538,2539,7,16,0,0,2539,2540,7,10,0,0,2540,2541,7,7,0,0,2541,2542,7,16,0,0,2542,344,1,0,0,0,2543,2544,7,14,0,0,2544,2545,7,19,0,0,2545,2546,7,7,0,0,2546,2547,7,16,0,0,2547,2548,7,17,0,0,2548,2549,7,7,0,0,2549,2550,7,22,0,0,2550,2551,7,10,0,0,2551,346,1,0,0,0,2552,2553,7,14,0,0,2553,2554,7,19,0,0,2554,2555,7,7,0,0,2555,2556,7,27,0,0,2556,2557,7,10,0,0,2557,2558,7,13,0,0,2558,2559,7,9,0,0,2559,2560,7,17,0,0,2560,2561,7,19,0,0,2561,2562,7,7,0,0,2562,348,1,0,0,0,2563,2564,7,14,0,0,2564,2565,7,19,0,0,2565,2566,7,24,0,0,2566,2567,7,8,0,0,2567,350,1,0,0,0,2568,2569,7,14,0,0,2569,2570,7,19,0,0,2570,2571,7,9,0,0,2571,2572,7,16,0,0,2572,352,1,0,0,0,2573,2574,7,14,0,0,2574,2575,7,9,0,0,2575,2576,7,27,0,0,2576,354,1,0,0,0,2577,2578,7,14,0,0,2578,2579,7,22,0,0,2579,2580,7,13,0,0,2580,2581,7,9,0,0,2581,2582,7,19,0,0,2582,2583,7,13,0,0,2583,356,1,0,0,0,2584,2585,7,14,0,0,2585,2586,7,8,0,0,2586,2587,7,14,0,0,2587,2588,7,6,0,0,2588,2589,7,10,0,0,2589,358,1,0,0,0,2590,2591,7,12,0,0,2591,2592,7,5,0,0,2592,2593,7,16,0,0,2593,2594,7,5,0,0,2594,360,1,0,0,0,2595,2596,7,12,0,0,2596,2597,7,5,0,0,2597,2598,7,16,0,0,2598,2599,7,5,0,0,2599,2600,7,18,0,0,2600,2601,7,5,0,0,2601,2602,7,9,0,0,2602,2603,7,10,0,0,2603,362,1,0,0,0,2604,2605,7,12,0,0,2605,2606,7,5,0,0,2606,2607,7,8,0,0,2607,364,1,0,0,0,2608,2609,7,12,0,0,2609,2610,7,10,0,0,2610,2611,7,5,0,0,2611,2612,7,6,0,0,2612,2613,7,6,0,0,2613,2614,7,19,0,0,2614,2615,7,14,0,0,2615,2616,7,5,0,0,2616,2617,7,16,0,0,2617,2618,7,10,0,0,2618,366,1,0,0,0,2619,2620,7,12,0,0,2620,2621,7,10,0,0,2621,2622,7,14,0,0,2622,2623,7,6,0,0,2623,2624,7,5,0,0,2624,2625,7,13,0,0,2625,2626,7,10,0,0,2626,368,1,0,0,0,2627,2628,7,12,0,0,2628,2629,7,10,0,0,2629,2630,7,25,0,0,2630,2631,7,5,0,0,2631,2632,7,22,0,0,2632,2633,7,6,0,0,2633,2634,7,16,0,0,2634,2635,7,9,0,0,2635,370,1,0,0,0,2636,2637,7,12,0,0,2637,2638,7,10,0,0,2638,2639,7,25,0,0,2639,2640,7,10,0,0,2640,2641,7,13,0,0,2641,2642,7,13,0,0,2642,2643,7,10,0,0,2643,2644,7,12,0,0,2644,372,1,0,0,0,2645,2646,7,12,0,0,2646,2647,7,10,0,0,2647,2648,7,25,0,0,2648,2649,7,17,0,0,2649,2650,7,7,0,0,2650,2651,7,10,0,0,2651,2652,7,13,0,0,2652,374,1,0,0,0,2653,2654,7,12,0,0,2654,2655,7,10,0,0,2655,2656,7,6,0,0,2656,2657,7,10,0,0,2657,2658,7,16,0,0,2658,2659,7,10,0,0,2659,376,1,0,0,0,2660,2661,7,12,0,0,2661,2662,7,10,0,0,2662,2663,7,6,0,0,2663,2664,7,17,0,0,2664,2665,7,15,0,0,2665,2666,7,17,0,0,2666,2667,7,16,0,0,2667,2668,7,10,0,0,2668,2669,7,13,0,0,2669,378,1,0,0,0,2670,2671,7,12,0,0,2671,2672,7,10,0,0,2672,2673,7,6,0,0,2673,2674,7,17,0,0,2674,2675,7,15,0,0,2675,2676,7,17,0,0,2676,2677,7,16,0,0,2677,2678,7,10,0,0,2678,2679,7,13,0,0,2679,2680,7,9,0,0,2680,380,1,0,0,0,2681,2682,7,12,0,0,2682,2683,7,17,0,0,2683,2684,7,14,0,0,2684,2685,7,16,0,0,2685,2686,7,17,0,0,2686,2687,7,19,0,0,2687,2688,7,7,0,0,2688,2689,7,5,0,0,2689,2690,7,13,0,0,2690,2691,7,8,0,0,2691,382,1,0,0,0,2692,2693,7,12,0,0,2693,2694,7,17,0,0,2694,2695,7,9,0,0,2695,2696,7,5,0,0,2696,2697,7,18,0,0,2697,2698,7,6,0,0,2698,2699,7,10,0,0,2699,384,1,0,0,0,2700,2701,7,12,0,0,2701,2702,7,17,0,0,2702,2703,7,9,0,0,2703,2704,7,14,0,0,2704,2705,7,5,0,0,2705,2706,7,13,0,0,2706,2707,7,12,0,0,2707,386,1,0,0,0,2708,2709,7,12,0,0,2709,2710,7,19,0,0,2710,2711,7,14,0,0,2711,2712,7,22,0,0,2712,2713,7,15,0,0,2713,2714,7,10,0,0,2714,2715,7,7,0,0,2715,2716,7,16,0,0,2716,388,1,0,0,0,2717,2718,7,12,0,0,2718,2719,7,19,0,0,2719,2720,7,15,0,0,2720,2721,7,5,0,0,2721,2722,7,17,0,0,2722,2723,7,7,0,0,2723,390,1,0,0,0,2724,2725,7,12,0,0,2725,2726,7,19,0,0,2726,2727,7,22,0,0,2727,2728,7,18,0,0,2728,2729,7,6,0,0,2729,2730,7,10,0,0,2730,392,1,0,0,0,2731,2732,7,12,0,0,2732,2733,7,13,0,0,2733,2734,7,19,0,0,2734,2735,7,24,0,0,2735,394,1,0,0,0,2736,2737,7,10,0,0,2737,2738,7,5,0,0,2738,2739,7,14,0,0,2739,2740,7,20,0,0,2740,396,1,0,0,0,2741,2742,7,10,0,0,2742,2743,7,7,0,0,2743,2744,7,5,0,0,2744,2745,7,18,0,0,2745,2746,7,6,0,0,2746,2747,7,10,0,0,2747,398,1,0,0,0,2748,2749,7,10,0,0,2749,2750,7,7,0,0,2750,2751,7,14,0,0,2751,2752,7,19,0,0,2752,2753,7,12,0,0,2753,2754,7,17,0,0,2754,2755,7,7,0,0,2755,2756,7,23,0,0,2756,400,1,0,0,0,2757,2758,7,10,0,0,2758,2759,7,7,0,0,2759,2760,7,14,0,0,2760,2761,7,13,0,0,2761,2762,7,8,0,0,2762,2763,7,24,0,0,2763,2764,7,16,0,0,2764,2765,7,10,0,0,2765,2766,7,12,0,0,2766,402,1,0,0,0,2767,2768,7,10,0,0,2768,2769,7,7,0,0,2769,2770,7,22,0,0,2770,2771,7,15,0,0,2771,404,1,0,0,0,2772,2773,7,10,0,0,2773,2774,7,9,0,0,2774,2775,7,14,0,0,2775,2776,7,5,0,0,2776,2777,7,24,0,0,2777,2778,7,10,0,0,2778,406,1,0,0,0,2779,2780,7,10,0,0,2780,2781,7,27,0,0,2781,2782,7,10,0,0,2782,2783,7,7,0,0,2783,2784,7,16,0,0,2784,408,1,0,0,0,2785,2786,7,10,0,0,2786,2787,7,26,0,0,2787,2788,7,14,0,0,2788,2789,7,6,0,0,2789,2790,7,22,0,0,2790,2791,7,12,0,0,2791,2792,7,10,0,0,2792,410,1,0,0,0,2793,2794,7,10,0,0,2794,2795,7,26,0,0,2795,2796,7,14,0,0,2796,2797,7,6,0,0,2797,2798,7,22,0,0,2798,2799,7,12,0,0,2799,2800,7,17,0,0,2800,2801,7,7,0,0,2801,2802,7,23,0,0,2802,412,1,0,0,0,2803,2804,7,10,0,0,2804,2805,7,26,0,0,2805,2806,7,14,0,0,2806,2807,7,6,0,0,2807,2808,7,22,0,0,2808,2809,7,9,0,0,2809,2810,7,17,0,0,2810,2811,7,27,0,0,2811,2812,7,10,0,0,2812,414,1,0,0,0,2813,2814,7,10,0,0,2814,2815,7,26,0,0,2815,2816,7,10,0,0,2816,2817,7,14,0,0,2817,2818,7,22,0,0,2818,2819,7,16,0,0,2819,2820,7,10,0,0,2820,416,1,0,0,0,2821,2822,7,10,0,0,2822,2823,7,26,0,0,2823,2824,7,24,0,0,2824,2825,7,6,0,0,2825,2826,7,5,0,0,2826,2827,7,17,0,0,2827,2828,7,7,0,0,2828,418,1,0,0,0,2829,2830,7,10,0,0,2830,2831,7,26,0,0,2831,2832,7,16,0,0,2832,2833,7,10,0,0,2833,2834,7,7,0,0,2834,2835,7,9,0,0,2835,2836,7,17,0,0,2836,2837,7,19,0,0,2837,2838,7,7,0,0,2838,420,1,0,0,0,2839,2840,7,10,0,0,2840,2841,7,26,0,0,2841,2842,7,16,0,0,2842,2843,7,10,0,0,2843,2844,7,13,0,0,2844,2845,7,7,0,0,2845,2846,7,5,0,0,2846,2847,7,6,0,0,2847,422,1,0,0,0,2848,2849,7,25,0,0,2849,2850,7,5,0,0,2850,2851,7,15,0,0,2851,2852,7,17,0,0,2852,2853,7,6,0,0,2853,2854,7,8,0,0,2854,424,1,0,0,0,2855,2856,7,25,0,0,2856,2857,7,17,0,0,2857,2858,7,13,0,0,2858,2859,7,9,0,0,2859,2860,7,16,0,0,2860,426,1,0,0,0,2861,2862,7,25,0,0,2862,2863,7,19,0,0,2863,2864,7,6,0,0,2864,2865,7,6,0,0,2865,2866,7,19,0,0,2866,2867,7,29,0,0,2867,2868,7,17,0,0,2868,2869,7,7,0,0,2869,2870,7,23,0,0,2870,428,1,0,0,0,2871,2872,7,25,0,0,2872,2873,7,19,0,0,2873,2874,7,13,0,0,2874,2875,7,14,0,0,2875,2876,7,10,0,0,2876,430,1,0,0,0,2877,2878,7,25,0,0,2878,2879,7,19,0,0,2879,2880,7,13,0,0,2880,2881,7,29,0,0,2881,2882,7,5,0,0,2882,2883,7,13,0,0,2883,2884,7,12,0,0,2884,432,1,0,0,0,2885,2886,7,25,0,0,2886,2887,7,22,0,0,2887,2888,7,7,0,0,2888,2889,7,14,0,0,2889,2890,7,16,0,0,2890,2891,7,17,0,0,2891,2892,7,19,0,0,2892,2893,7,7,0,0,2893,434,1,0,0,0,2894,2895,7,25,0,0,2895,2896,7,22,0,0,2896,2897,7,7,0,0,2897,2898,7,14,0,0,2898,2899,7,16,0,0,2899,2900,7,17,0,0,2900,2901,7,19,0,0,2901,2902,7,7,0,0,2902,2903,7,9,0,0,2903,436,1,0,0,0,2904,2905,7,23,0,0,2905,2906,7,6,0,0,2906,2907,7,19,0,0,2907,2908,7,18,0,0,2908,2909,7,5,0,0,2909,2910,7,6,0,0,2910,438,1,0,0,0,2911,2912,7,23,0,0,2912,2913,7,13,0,0,2913,2914,7,5,0,0,2914,2915,7,7,0,0,2915,2916,7,16,0,0,2916,2917,7,10,0,0,2917,2918,7,12,0,0,2918,440,1,0,0,0,2919,2920,7,20,0,0,2920,2921,7,5,0,0,2921,2922,7,7,0,0,2922,2923,7,12,0,0,2923,2924,7,6,0,0,2924,2925,7,10,0,0,2925,2926,7,13,0,0,2926,442,1,0,0,0,2927,2928,7,20,0,0,2928,2929,7,10,0,0,2929,2930,7,5,0,0,2930,2931,7,12,0,0,2931,2932,7,10,0,0,2932,2933,7,13,0,0,2933,444,1,0,0,0,2934,2935,7,20,0,0,2935,2936,7,19,0,0,2936,2937,7,6,0,0,2937,2938,7,12,0,0,2938,446,1,0,0,0,2939,2940,7,20,0,0,2940,2941,7,19,0,0,2941,2942,7,22,0,0,2942,2943,7,13,0,0,2943,448,1,0,0,0,2944,2945,7,17,0,0,2945,2946,7,12,0,0,2946,2947,7,10,0,0,2947,2948,7,7,0,0,2948,2949,7,16,0,0,2949,2950,7,17,0,0,2950,2951,7,16,0,0,2951,2952,7,8,0,0,2952,450,1,0,0,0,2953,2954,7,17,0,0,2954,2955,7,25,0,0,2955,452,1,0,0,0,2956,2957,7,17,0,0,2957,2958,7,15,0,0,2958,2959,7,15,0,0,2959,2960,7,10,0,0,2960,2961,7,12,0,0,2961,2962,7,17,0,0,2962,2963,7,5,0,0,2963,2964,7,16,0,0,2964,2965,7,10,0,0,2965,454,1,0,0,0,2966,2967,7,17,0,0,2967,2968,7,15,0,0,2968,2969,7,15,0,0,2969,2970,7,22,0,0,2970,2971,7,16,0,0,2971,2972,7,5,0,0,2972,2973,7,18,0,0,2973,2974,7,6,0,0,2974,2975,7,10,0,0,2975,456,1,0,0,0,2976,2977,7,17,0,0,2977,2978,7,15,0,0,2978,2979,7,24,0,0,2979,2980,7,6,0,0,2980,2981,7,17,0,0,2981,2982,7,14,0,0,2982,2983,7,17,0,0,2983,2984,7,16,0,0,2984,458,1,0,0,0,2985,2986,7,17,0,0,2986,2987,7,7,0,0,2987,2988,7,14,0,0,2988,2989,7,6,0,0,2989,2990,7,22,0,0,2990,2991,7,12,0,0,2991,2992,7,17,0,0,2992,2993,7,7,0,0,2993,2994,7,23,0,0,2994,460,1,0,0,0,2995,2996,7,17,0,0,2996,2997,7,7,0,0,2997,2998,7,14,0,0,2998,2999,7,13,0,0,2999,3e3,7,10,0,0,3e3,3001,7,15,0,0,3001,3002,7,10,0,0,3002,3003,7,7,0,0,3003,3004,7,16,0,0,3004,462,1,0,0,0,3005,3006,7,17,0,0,3006,3007,7,7,0,0,3007,3008,7,12,0,0,3008,3009,7,10,0,0,3009,3010,7,26,0,0,3010,464,1,0,0,0,3011,3012,7,17,0,0,3012,3013,7,7,0,0,3013,3014,7,12,0,0,3014,3015,7,10,0,0,3015,3016,7,26,0,0,3016,3017,7,10,0,0,3017,3018,7,9,0,0,3018,466,1,0,0,0,3019,3020,7,17,0,0,3020,3021,7,7,0,0,3021,3022,7,20,0,0,3022,3023,7,10,0,0,3023,3024,7,13,0,0,3024,3025,7,17,0,0,3025,3026,7,16,0,0,3026,468,1,0,0,0,3027,3028,7,17,0,0,3028,3029,7,7,0,0,3029,3030,7,20,0,0,3030,3031,7,10,0,0,3031,3032,7,13,0,0,3032,3033,7,17,0,0,3033,3034,7,16,0,0,3034,3035,7,9,0,0,3035,470,1,0,0,0,3036,3037,7,17,0,0,3037,3038,7,7,0,0,3038,3039,7,6,0,0,3039,3040,7,17,0,0,3040,3041,7,7,0,0,3041,3042,7,10,0,0,3042,472,1,0,0,0,3043,3044,7,17,0,0,3044,3045,7,7,0,0,3045,3046,7,9,0,0,3046,3047,7,10,0,0,3047,3048,7,7,0,0,3048,3049,7,9,0,0,3049,3050,7,17,0,0,3050,3051,7,16,0,0,3051,3052,7,17,0,0,3052,3053,7,27,0,0,3053,3054,7,10,0,0,3054,474,1,0,0,0,3055,3056,7,17,0,0,3056,3057,7,7,0,0,3057,3058,7,9,0,0,3058,3059,7,10,0,0,3059,3060,7,13,0,0,3060,3061,7,16,0,0,3061,476,1,0,0,0,3062,3063,7,17,0,0,3063,3064,7,7,0,0,3064,3065,7,9,0,0,3065,3066,7,16,0,0,3066,3067,7,10,0,0,3067,3068,7,5,0,0,3068,3069,7,12,0,0,3069,478,1,0,0,0,3070,3071,7,17,0,0,3071,3072,7,7,0,0,3072,3073,7,27,0,0,3073,3074,7,19,0,0,3074,3075,7,21,0,0,3075,3076,7,10,0,0,3076,3077,7,13,0,0,3077,480,1,0,0,0,3078,3079,7,17,0,0,3079,3080,7,9,0,0,3080,3081,7,19,0,0,3081,3082,7,6,0,0,3082,3083,7,5,0,0,3083,3084,7,16,0,0,3084,3085,7,17,0,0,3085,3086,7,19,0,0,3086,3087,7,7,0,0,3087,482,1,0,0,0,3088,3089,7,21,0,0,3089,3090,7,10,0,0,3090,3091,7,8,0,0,3091,484,1,0,0,0,3092,3093,7,6,0,0,3093,3094,7,5,0,0,3094,3095,7,18,0,0,3095,3096,7,10,0,0,3096,3097,7,6,0,0,3097,486,1,0,0,0,3098,3099,7,6,0,0,3099,3100,7,5,0,0,3100,3101,7,7,0,0,3101,3102,7,23,0,0,3102,3103,7,22,0,0,3103,3104,7,5,0,0,3104,3105,7,23,0,0,3105,3106,7,10,0,0,3106,488,1,0,0,0,3107,3108,7,6,0,0,3108,3109,7,5,0,0,3109,3110,7,13,0,0,3110,3111,7,23,0,0,3111,3112,7,10,0,0,3112,490,1,0,0,0,3113,3114,7,6,0,0,3114,3115,7,5,0,0,3115,3116,7,9,0,0,3116,3117,7,16,0,0,3117,492,1,0,0,0,3118,3119,7,6,0,0,3119,3120,7,10,0,0,3120,3121,7,5,0,0,3121,3122,7,21,0,0,3122,3123,7,24,0,0,3123,3124,7,13,0,0,3124,3125,7,19,0,0,3125,3126,7,19,0,0,3126,3127,7,25,0,0,3127,494,1,0,0,0,3128,3129,7,6,0,0,3129,3130,7,10,0,0,3130,3131,7,27,0,0,3131,3132,7,10,0,0,3132,3133,7,6,0,0,3133,496,1,0,0,0,3134,3135,7,6,0,0,3135,3136,7,17,0,0,3136,3137,7,9,0,0,3137,3138,7,16,0,0,3138,3139,7,10,0,0,3139,3140,7,7,0,0,3140,498,1,0,0,0,3141,3142,7,6,0,0,3142,3143,7,19,0,0,3143,3144,7,5,0,0,3144,3145,7,12,0,0,3145,500,1,0,0,0,3146,3147,7,6,0,0,3147,3148,7,19,0,0,3148,3149,7,14,0,0,3149,3150,7,5,0,0,3150,3151,7,6,0,0,3151,502,1,0,0,0,3152,3153,7,6,0,0,3153,3154,7,19,0,0,3154,3155,7,14,0,0,3155,3156,7,5,0,0,3156,3157,7,16,0,0,3157,3158,7,17,0,0,3158,3159,7,19,0,0,3159,3160,7,7,0,0,3160,504,1,0,0,0,3161,3162,7,6,0,0,3162,3163,7,19,0,0,3163,3164,7,14,0,0,3164,3165,7,21,0,0,3165,506,1,0,0,0,3166,3167,7,15,0,0,3167,3168,7,5,0,0,3168,3169,7,24,0,0,3169,3170,7,24,0,0,3170,3171,7,17,0,0,3171,3172,7,7,0,0,3172,3173,7,23,0,0,3173,508,1,0,0,0,3174,3175,7,15,0,0,3175,3176,7,5,0,0,3176,3177,7,16,0,0,3177,3178,7,14,0,0,3178,3179,7,20,0,0,3179,510,1,0,0,0,3180,3181,7,15,0,0,3181,3182,7,5,0,0,3182,3183,7,16,0,0,3183,3184,7,14,0,0,3184,3185,7,20,0,0,3185,3186,7,10,0,0,3186,3187,7,12,0,0,3187,512,1,0,0,0,3188,3189,7,15,0,0,3189,3190,7,5,0,0,3190,3191,7,16,0,0,3191,3192,7,10,0,0,3192,3193,7,13,0,0,3193,3194,7,17,0,0,3194,3195,7,5,0,0,3195,3196,7,6,0,0,3196,3197,7,17,0,0,3197,3198,7,11,0,0,3198,3199,7,10,0,0,3199,3200,7,12,0,0,3200,514,1,0,0,0,3201,3202,7,15,0,0,3202,3203,7,5,0,0,3203,3204,7,26,0,0,3204,3205,7,27,0,0,3205,3206,7,5,0,0,3206,3207,7,6,0,0,3207,3208,7,22,0,0,3208,3209,7,10,0,0,3209,516,1,0,0,0,3210,3211,7,15,0,0,3211,3212,7,10,0,0,3212,3213,7,13,0,0,3213,3214,7,23,0,0,3214,3215,7,10,0,0,3215,518,1,0,0,0,3216,3217,7,15,0,0,3217,3218,7,17,0,0,3218,3219,7,7,0,0,3219,3220,7,22,0,0,3220,3221,7,16,0,0,3221,3222,7,10,0,0,3222,520,1,0,0,0,3223,3224,7,15,0,0,3224,3225,7,17,0,0,3225,3226,7,7,0,0,3226,3227,7,27,0,0,3227,3228,7,5,0,0,3228,3229,7,6,0,0,3229,3230,7,22,0,0,3230,3231,7,10,0,0,3231,522,1,0,0,0,3232,3233,7,15,0,0,3233,3234,7,19,0,0,3234,3235,7,12,0,0,3235,3236,7,10,0,0,3236,524,1,0,0,0,3237,3238,7,15,0,0,3238,3239,7,19,0,0,3239,3240,7,7,0,0,3240,3241,7,16,0,0,3241,3242,7,20,0,0,3242,526,1,0,0,0,3243,3244,7,15,0,0,3244,3245,7,19,0,0,3245,3246,7,27,0,0,3246,3247,7,10,0,0,3247,528,1,0,0,0,3248,3249,7,7,0,0,3249,3250,7,5,0,0,3250,3251,7,15,0,0,3251,3252,7,10,0,0,3252,530,1,0,0,0,3253,3254,7,7,0,0,3254,3255,7,5,0,0,3255,3256,7,15,0,0,3256,3257,7,10,0,0,3257,3258,7,9,0,0,3258,532,1,0,0,0,3259,3260,7,7,0,0,3260,3261,7,10,0,0,3261,3262,7,26,0,0,3262,3263,7,16,0,0,3263,534,1,0,0,0,3264,3265,7,7,0,0,3265,3266,7,19,0,0,3266,536,1,0,0,0,3267,3268,7,7,0,0,3268,3269,7,19,0,0,3269,3270,7,16,0,0,3270,3271,7,20,0,0,3271,3272,7,17,0,0,3272,3273,7,7,0,0,3273,3274,7,23,0,0,3274,538,1,0,0,0,3275,3276,7,7,0,0,3276,3277,7,19,0,0,3277,3278,7,16,0,0,3278,3279,7,17,0,0,3279,3280,7,25,0,0,3280,3281,7,8,0,0,3281,540,1,0,0,0,3282,3283,7,7,0,0,3283,3284,7,19,0,0,3284,3285,7,29,0,0,3285,3286,7,5,0,0,3286,3287,7,17,0,0,3287,3288,7,16,0,0,3288,542,1,0,0,0,3289,3290,7,7,0,0,3290,3291,7,22,0,0,3291,3292,7,6,0,0,3292,3293,7,6,0,0,3293,3294,7,9,0,0,3294,544,1,0,0,0,3295,3296,7,19,0,0,3296,3297,7,18,0,0,3297,3298,7,30,0,0,3298,3299,7,10,0,0,3299,3300,7,14,0,0,3300,3301,7,16,0,0,3301,546,1,0,0,0,3302,3303,7,19,0,0,3303,3304,7,25,0,0,3304,548,1,0,0,0,3305,3306,7,19,0,0,3306,3307,7,25,0,0,3307,3308,7,25,0,0,3308,550,1,0,0,0,3309,3310,7,19,0,0,3310,3311,7,17,0,0,3311,3312,7,12,0,0,3312,3313,7,9,0,0,3313,552,1,0,0,0,3314,3315,7,19,0,0,3315,3316,7,24,0,0,3316,3317,7,10,0,0,3317,3318,7,13,0,0,3318,3319,7,5,0,0,3319,3320,7,16,0,0,3320,3321,7,19,0,0,3321,3322,7,13,0,0,3322,554,1,0,0,0,3323,3324,7,19,0,0,3324,3325,7,24,0,0,3325,3326,7,16,0,0,3326,3327,7,17,0,0,3327,3328,7,19,0,0,3328,3329,7,7,0,0,3329,556,1,0,0,0,3330,3331,7,19,0,0,3331,3332,7,24,0,0,3332,3333,7,16,0,0,3333,3334,7,17,0,0,3334,3335,7,19,0,0,3335,3336,7,7,0,0,3336,3337,7,9,0,0,3337,558,1,0,0,0,3338,3339,7,19,0,0,3339,3340,7,29,0,0,3340,3341,7,7,0,0,3341,3342,7,10,0,0,3342,3343,7,12,0,0,3343,560,1,0,0,0,3344,3345,7,19,0,0,3345,3346,7,29,0,0,3346,3347,7,7,0,0,3347,3348,7,10,0,0,3348,3349,7,13,0,0,3349,562,1,0,0,0,3350,3351,7,24,0,0,3351,3352,7,5,0,0,3352,3353,7,13,0,0,3353,3354,7,9,0,0,3354,3355,7,10,0,0,3355,3356,7,13,0,0,3356,564,1,0,0,0,3357,3358,7,24,0,0,3358,3359,7,5,0,0,3359,3360,7,13,0,0,3360,3361,7,16,0,0,3361,3362,7,17,0,0,3362,3363,7,5,0,0,3363,3364,7,6,0,0,3364,566,1,0,0,0,3365,3366,7,24,0,0,3366,3367,7,5,0,0,3367,3368,7,13,0,0,3368,3369,7,16,0,0,3369,3370,7,17,0,0,3370,3371,7,16,0,0,3371,3372,7,17,0,0,3372,3373,7,19,0,0,3373,3374,7,7,0,0,3374,568,1,0,0,0,3375,3376,7,24,0,0,3376,3377,7,5,0,0,3377,3378,7,9,0,0,3378,3379,7,9,0,0,3379,3380,7,17,0,0,3380,3381,7,7,0,0,3381,3382,7,23,0,0,3382,570,1,0,0,0,3383,3384,7,24,0,0,3384,3385,7,5,0,0,3385,3386,7,9,0,0,3386,3387,7,9,0,0,3387,3388,7,29,0,0,3388,3389,7,19,0,0,3389,3390,7,13,0,0,3390,3391,7,12,0,0,3391,572,1,0,0,0,3392,3393,7,24,0,0,3393,3394,7,6,0,0,3394,3395,7,5,0,0,3395,3396,7,7,0,0,3396,3397,7,9,0,0,3397,574,1,0,0,0,3398,3399,7,24,0,0,3399,3400,7,13,0,0,3400,3401,7,10,0,0,3401,3402,7,14,0,0,3402,3403,7,10,0,0,3403,3404,7,12,0,0,3404,3405,7,17,0,0,3405,3406,7,7,0,0,3406,3407,7,23,0,0,3407,576,1,0,0,0,3408,3409,7,24,0,0,3409,3410,7,13,0,0,3410,3411,7,10,0,0,3411,3412,7,24,0,0,3412,3413,7,5,0,0,3413,3414,7,13,0,0,3414,3415,7,10,0,0,3415,578,1,0,0,0,3416,3417,7,24,0,0,3417,3418,7,13,0,0,3418,3419,7,10,0,0,3419,3420,7,24,0,0,3420,3421,7,5,0,0,3421,3422,7,13,0,0,3422,3423,7,10,0,0,3423,3424,7,12,0,0,3424,580,1,0,0,0,3425,3426,7,24,0,0,3426,3427,7,13,0,0,3427,3428,7,10,0,0,3428,3429,7,9,0,0,3429,3430,7,10,0,0,3430,3431,7,13,0,0,3431,3432,7,27,0,0,3432,3433,7,10,0,0,3433,582,1,0,0,0,3434,3435,7,24,0,0,3435,3436,7,13,0,0,3436,3437,7,17,0,0,3437,3438,7,19,0,0,3438,3439,7,13,0,0,3439,584,1,0,0,0,3440,3441,7,24,0,0,3441,3442,7,13,0,0,3442,3443,7,17,0,0,3443,3444,7,27,0,0,3444,3445,7,17,0,0,3445,3446,7,6,0,0,3446,3447,7,10,0,0,3447,3448,7,23,0,0,3448,3449,7,10,0,0,3449,3450,7,9,0,0,3450,586,1,0,0,0,3451,3452,7,24,0,0,3452,3453,7,13,0,0,3453,3454,7,19,0,0,3454,3455,7,14,0,0,3455,3456,7,10,0,0,3456,3457,7,12,0,0,3457,3458,7,22,0,0,3458,3459,7,13,0,0,3459,3460,7,5,0,0,3460,3461,7,6,0,0,3461,588,1,0,0,0,3462,3463,7,24,0,0,3463,3464,7,13,0,0,3464,3465,7,19,0,0,3465,3466,7,14,0,0,3466,3467,7,10,0,0,3467,3468,7,12,0,0,3468,3469,7,22,0,0,3469,3470,7,13,0,0,3470,3471,7,10,0,0,3471,590,1,0,0,0,3472,3473,7,24,0,0,3473,3474,7,13,0,0,3474,3475,7,19,0,0,3475,3476,7,23,0,0,3476,3477,7,13,0,0,3477,3478,7,5,0,0,3478,3479,7,15,0,0,3479,592,1,0,0,0,3480,3481,7,28,0,0,3481,3482,7,22,0,0,3482,3483,7,19,0,0,3483,3484,7,16,0,0,3484,3485,7,10,0,0,3485,594,1,0,0,0,3486,3487,7,13,0,0,3487,3488,7,5,0,0,3488,3489,7,7,0,0,3489,3490,7,23,0,0,3490,3491,7,10,0,0,3491,596,1,0,0,0,3492,3493,7,13,0,0,3493,3494,7,10,0,0,3494,3495,7,5,0,0,3495,3496,7,12,0,0,3496,598,1,0,0,0,3497,3498,7,13,0,0,3498,3499,7,10,0,0,3499,3500,7,5,0,0,3500,3501,7,9,0,0,3501,3502,7,9,0,0,3502,3503,7,17,0,0,3503,3504,7,23,0,0,3504,3505,7,7,0,0,3505,600,1,0,0,0,3506,3507,7,13,0,0,3507,3508,7,10,0,0,3508,3509,7,14,0,0,3509,3510,7,20,0,0,3510,3511,7,10,0,0,3511,3512,7,14,0,0,3512,3513,7,21,0,0,3513,602,1,0,0,0,3514,3515,7,13,0,0,3515,3516,7,10,0,0,3516,3517,7,14,0,0,3517,3518,7,22,0,0,3518,3519,7,13,0,0,3519,3520,7,9,0,0,3520,3521,7,17,0,0,3521,3522,7,27,0,0,3522,3523,7,10,0,0,3523,604,1,0,0,0,3524,3525,7,13,0,0,3525,3526,7,10,0,0,3526,3527,7,25,0,0,3527,606,1,0,0,0,3528,3529,7,13,0,0,3529,3530,7,10,0,0,3530,3531,7,25,0,0,3531,3532,7,13,0,0,3532,3533,7,10,0,0,3533,3534,7,9,0,0,3534,3535,7,20,0,0,3535,608,1,0,0,0,3536,3537,7,13,0,0,3537,3538,7,10,0,0,3538,3539,7,17,0,0,3539,3540,7,7,0,0,3540,3541,7,12,0,0,3541,3542,7,10,0,0,3542,3543,7,26,0,0,3543,610,1,0,0,0,3544,3545,7,13,0,0,3545,3546,7,10,0,0,3546,3547,7,6,0,0,3547,3548,7,5,0,0,3548,3549,7,16,0,0,3549,3550,7,17,0,0,3550,3551,7,27,0,0,3551,3552,7,10,0,0,3552,612,1,0,0,0,3553,3554,7,13,0,0,3554,3555,7,10,0,0,3555,3556,7,6,0,0,3556,3557,7,10,0,0,3557,3558,7,5,0,0,3558,3559,7,9,0,0,3559,3560,7,10,0,0,3560,614,1,0,0,0,3561,3562,7,13,0,0,3562,3563,7,10,0,0,3563,3564,7,7,0,0,3564,3565,7,5,0,0,3565,3566,7,15,0,0,3566,3567,7,10,0,0,3567,616,1,0,0,0,3568,3569,7,13,0,0,3569,3570,7,10,0,0,3570,3571,7,24,0,0,3571,3572,7,10,0,0,3572,3573,7,5,0,0,3573,3574,7,16,0,0,3574,3575,7,5,0,0,3575,3576,7,18,0,0,3576,3577,7,6,0,0,3577,3578,7,10,0,0,3578,618,1,0,0,0,3579,3580,7,13,0,0,3580,3581,7,10,0,0,3581,3582,7,24,0,0,3582,3583,7,6,0,0,3583,3584,7,5,0,0,3584,3585,7,14,0,0,3585,3586,7,10,0,0,3586,620,1,0,0,0,3587,3588,7,13,0,0,3588,3589,7,10,0,0,3589,3590,7,24,0,0,3590,3591,7,6,0,0,3591,3592,7,17,0,0,3592,3593,7,14,0,0,3593,3594,7,5,0,0,3594,622,1,0,0,0,3595,3596,7,13,0,0,3596,3597,7,10,0,0,3597,3598,7,9,0,0,3598,3599,7,10,0,0,3599,3600,7,16,0,0,3600,624,1,0,0,0,3601,3602,7,13,0,0,3602,3603,7,10,0,0,3603,3604,7,9,0,0,3604,3605,7,16,0,0,3605,3606,7,5,0,0,3606,3607,7,13,0,0,3607,3608,7,16,0,0,3608,626,1,0,0,0,3609,3610,7,13,0,0,3610,3611,7,10,0,0,3611,3612,7,9,0,0,3612,3613,7,16,0,0,3613,3614,7,13,0,0,3614,3615,7,17,0,0,3615,3616,7,14,0,0,3616,3617,7,16,0,0,3617,628,1,0,0,0,3618,3619,7,13,0,0,3619,3620,7,10,0,0,3620,3621,7,16,0,0,3621,3622,7,22,0,0,3622,3623,7,13,0,0,3623,3624,7,7,0,0,3624,3625,7,9,0,0,3625,630,1,0,0,0,3626,3627,7,13,0,0,3627,3628,7,10,0,0,3628,3629,7,27,0,0,3629,3630,7,19,0,0,3630,3631,7,21,0,0,3631,3632,7,10,0,0,3632,632,1,0,0,0,3633,3634,7,13,0,0,3634,3635,7,19,0,0,3635,3636,7,6,0,0,3636,3637,7,10,0,0,3637,634,1,0,0,0,3638,3639,7,13,0,0,3639,3640,7,19,0,0,3640,3641,7,6,0,0,3641,3642,7,6,0,0,3642,3643,7,18,0,0,3643,3644,7,5,0,0,3644,3645,7,14,0,0,3645,3646,7,21,0,0,3646,636,1,0,0,0,3647,3648,7,13,0,0,3648,3649,7,19,0,0,3649,3650,7,29,0,0,3650,3651,7,9,0,0,3651,638,1,0,0,0,3652,3653,7,13,0,0,3653,3654,7,22,0,0,3654,3655,7,6,0,0,3655,3656,7,10,0,0,3656,640,1,0,0,0,3657,3658,7,9,0,0,3658,3659,7,5,0,0,3659,3660,7,27,0,0,3660,3661,7,10,0,0,3661,3662,7,24,0,0,3662,3663,7,19,0,0,3663,3664,7,17,0,0,3664,3665,7,7,0,0,3665,3666,7,16,0,0,3666,642,1,0,0,0,3667,3668,7,9,0,0,3668,3669,7,14,0,0,3669,3670,7,20,0,0,3670,3671,7,10,0,0,3671,3672,7,15,0,0,3672,3673,7,5,0,0,3673,644,1,0,0,0,3674,3675,7,9,0,0,3675,3676,7,14,0,0,3676,3677,7,13,0,0,3677,3678,7,19,0,0,3678,3679,7,6,0,0,3679,3680,7,6,0,0,3680,646,1,0,0,0,3681,3682,7,9,0,0,3682,3683,7,10,0,0,3683,3684,7,5,0,0,3684,3685,7,13,0,0,3685,3686,7,14,0,0,3686,3687,7,20,0,0,3687,648,1,0,0,0,3688,3689,7,9,0,0,3689,3690,7,10,0,0,3690,3691,7,14,0,0,3691,3692,7,19,0,0,3692,3693,7,7,0,0,3693,3694,7,12,0,0,3694,650,1,0,0,0,3695,3696,7,9,0,0,3696,3697,7,10,0,0,3697,3698,7,14,0,0,3698,3699,7,22,0,0,3699,3700,7,13,0,0,3700,3701,7,17,0,0,3701,3702,7,16,0,0,3702,3703,7,8,0,0,3703,652,1,0,0,0,3704,3705,7,9,0,0,3705,3706,7,10,0,0,3706,3707,7,28,0,0,3707,3708,7,22,0,0,3708,3709,7,10,0,0,3709,3710,7,7,0,0,3710,3711,7,14,0,0,3711,3712,7,10,0,0,3712,654,1,0,0,0,3713,3714,7,9,0,0,3714,3715,7,10,0,0,3715,3716,7,28,0,0,3716,3717,7,22,0,0,3717,3718,7,10,0,0,3718,3719,7,7,0,0,3719,3720,7,14,0,0,3720,3721,7,10,0,0,3721,3722,7,9,0,0,3722,656,1,0,0,0,3723,3724,7,9,0,0,3724,3725,7,10,0,0,3725,3726,7,13,0,0,3726,3727,7,17,0,0,3727,3728,7,5,0,0,3728,3729,7,6,0,0,3729,3730,7,17,0,0,3730,3731,7,11,0,0,3731,3732,7,5,0,0,3732,3733,7,18,0,0,3733,3734,7,6,0,0,3734,3735,7,10,0,0,3735,658,1,0,0,0,3736,3737,7,9,0,0,3737,3738,7,10,0,0,3738,3739,7,13,0,0,3739,3740,7,27,0,0,3740,3741,7,10,0,0,3741,3742,7,13,0,0,3742,660,1,0,0,0,3743,3744,7,9,0,0,3744,3745,7,10,0,0,3745,3746,7,9,0,0,3746,3747,7,9,0,0,3747,3748,7,17,0,0,3748,3749,7,19,0,0,3749,3750,7,7,0,0,3750,662,1,0,0,0,3751,3752,7,9,0,0,3752,3753,7,10,0,0,3753,3754,7,16,0,0,3754,664,1,0,0,0,3755,3756,7,9,0,0,3756,3757,7,20,0,0,3757,3758,7,5,0,0,3758,3759,7,13,0,0,3759,3760,7,10,0,0,3760,666,1,0,0,0,3761,3762,7,9,0,0,3762,3763,7,20,0,0,3763,3764,7,19,0,0,3764,3765,7,29,0,0,3765,668,1,0,0,0,3766,3767,7,9,0,0,3767,3768,7,17,0,0,3768,3769,7,15,0,0,3769,3770,7,24,0,0,3770,3771,7,6,0,0,3771,3772,7,10,0,0,3772,670,1,0,0,0,3773,3774,7,9,0,0,3774,3775,7,7,0,0,3775,3776,7,5,0,0,3776,3777,7,24,0,0,3777,3778,7,9,0,0,3778,3779,7,20,0,0,3779,3780,7,19,0,0,3780,3781,7,16,0,0,3781,672,1,0,0,0,3782,3783,7,9,0,0,3783,3784,7,16,0,0,3784,3785,7,5,0,0,3785,3786,7,18,0,0,3786,3787,7,6,0,0,3787,3788,7,10,0,0,3788,674,1,0,0,0,3789,3790,7,9,0,0,3790,3791,7,16,0,0,3791,3792,7,5,0,0,3792,3793,7,7,0,0,3793,3794,7,12,0,0,3794,3795,7,5,0,0,3795,3796,7,6,0,0,3796,3797,7,19,0,0,3797,3798,7,7,0,0,3798,3799,7,10,0,0,3799,676,1,0,0,0,3800,3801,7,9,0,0,3801,3802,7,16,0,0,3802,3803,7,5,0,0,3803,3804,7,13,0,0,3804,3805,7,16,0,0,3805,678,1,0,0,0,3806,3807,7,9,0,0,3807,3808,7,16,0,0,3808,3809,7,5,0,0,3809,3810,7,16,0,0,3810,3811,7,10,0,0,3811,3812,7,15,0,0,3812,3813,7,10,0,0,3813,3814,7,7,0,0,3814,3815,7,16,0,0,3815,680,1,0,0,0,3816,3817,7,9,0,0,3817,3818,7,16,0,0,3818,3819,7,5,0,0,3819,3820,7,16,0,0,3820,3821,7,17,0,0,3821,3822,7,9,0,0,3822,3823,7,16,0,0,3823,3824,7,17,0,0,3824,3825,7,14,0,0,3825,3826,7,9,0,0,3826,682,1,0,0,0,3827,3828,7,9,0,0,3828,3829,7,16,0,0,3829,3830,7,12,0,0,3830,3831,7,17,0,0,3831,3832,7,7,0,0,3832,684,1,0,0,0,3833,3834,7,9,0,0,3834,3835,7,16,0,0,3835,3836,7,12,0,0,3836,3837,7,19,0,0,3837,3838,7,22,0,0,3838,3839,7,16,0,0,3839,686,1,0,0,0,3840,3841,7,9,0,0,3841,3842,7,16,0,0,3842,3843,7,19,0,0,3843,3844,7,13,0,0,3844,3845,7,5,0,0,3845,3846,7,23,0,0,3846,3847,7,10,0,0,3847,688,1,0,0,0,3848,3849,7,9,0,0,3849,3850,7,16,0,0,3850,3851,7,13,0,0,3851,3852,7,17,0,0,3852,3853,7,14,0,0,3853,3854,7,16,0,0,3854,690,1,0,0,0,3855,3856,7,9,0,0,3856,3857,7,16,0,0,3857,3858,7,13,0,0,3858,3859,7,17,0,0,3859,3860,7,24,0,0,3860,692,1,0,0,0,3861,3862,7,9,0,0,3862,3863,7,8,0,0,3863,3864,7,9,0,0,3864,3865,7,17,0,0,3865,3866,7,12,0,0,3866,694,1,0,0,0,3867,3868,7,9,0,0,3868,3869,7,8,0,0,3869,3870,7,9,0,0,3870,3871,7,16,0,0,3871,3872,7,10,0,0,3872,3873,7,15,0,0,3873,696,1,0,0,0,3874,3875,7,16,0,0,3875,3876,7,5,0,0,3876,3877,7,18,0,0,3877,3878,7,6,0,0,3878,3879,7,10,0,0,3879,3880,7,9,0,0,3880,698,1,0,0,0,3881,3882,7,16,0,0,3882,3883,7,5,0,0,3883,3884,7,18,0,0,3884,3885,7,6,0,0,3885,3886,7,10,0,0,3886,3887,7,9,0,0,3887,3888,7,24,0,0,3888,3889,7,5,0,0,3889,3890,7,14,0,0,3890,3891,7,10,0,0,3891,700,1,0,0,0,3892,3893,7,16,0,0,3893,3894,7,10,0,0,3894,3895,7,15,0,0,3895,3896,7,24,0,0,3896,702,1,0,0,0,3897,3898,7,16,0,0,3898,3899,7,10,0,0,3899,3900,7,15,0,0,3900,3901,7,24,0,0,3901,3902,7,6,0,0,3902,3903,7,5,0,0,3903,3904,7,16,0,0,3904,3905,7,10,0,0,3905,704,1,0,0,0,3906,3907,7,16,0,0,3907,3908,7,10,0,0,3908,3909,7,15,0,0,3909,3910,7,24,0,0,3910,3911,7,19,0,0,3911,3912,7,13,0,0,3912,3913,7,5,0,0,3913,3914,7,13,0,0,3914,3915,7,8,0,0,3915,706,1,0,0,0,3916,3917,7,16,0,0,3917,3918,7,10,0,0,3918,3919,7,26,0,0,3919,3920,7,16,0,0,3920,708,1,0,0,0,3921,3922,7,16,0,0,3922,3923,7,13,0,0,3923,3924,7,5,0,0,3924,3925,7,7,0,0,3925,3926,7,9,0,0,3926,3927,7,5,0,0,3927,3928,7,14,0,0,3928,3929,7,16,0,0,3929,3930,7,17,0,0,3930,3931,7,19,0,0,3931,3932,7,7,0,0,3932,710,1,0,0,0,3933,3934,7,16,0,0,3934,3935,7,13,0,0,3935,3936,7,17,0,0,3936,3937,7,23,0,0,3937,3938,7,23,0,0,3938,3939,7,10,0,0,3939,3940,7,13,0,0,3940,712,1,0,0,0,3941,3942,7,16,0,0,3942,3943,7,13,0,0,3943,3944,7,22,0,0,3944,3945,7,7,0,0,3945,3946,7,14,0,0,3946,3947,7,5,0,0,3947,3948,7,16,0,0,3948,3949,7,10,0,0,3949,714,1,0,0,0,3950,3951,7,16,0,0,3951,3952,7,13,0,0,3952,3953,7,22,0,0,3953,3954,7,9,0,0,3954,3955,7,16,0,0,3955,3956,7,10,0,0,3956,3957,7,12,0,0,3957,716,1,0,0,0,3958,3959,7,16,0,0,3959,3960,7,8,0,0,3960,3961,7,24,0,0,3961,3962,7,10,0,0,3962,718,1,0,0,0,3963,3964,7,16,0,0,3964,3965,7,8,0,0,3965,3966,7,24,0,0,3966,3967,7,10,0,0,3967,3968,7,9,0,0,3968,720,1,0,0,0,3969,3970,7,22,0,0,3970,3971,7,7,0,0,3971,3972,7,18,0,0,3972,3973,7,19,0,0,3973,3974,7,22,0,0,3974,3975,7,7,0,0,3975,3976,7,12,0,0,3976,3977,7,10,0,0,3977,3978,7,12,0,0,3978,722,1,0,0,0,3979,3980,7,22,0,0,3980,3981,7,7,0,0,3981,3982,7,14,0,0,3982,3983,7,19,0,0,3983,3984,7,15,0,0,3984,3985,7,15,0,0,3985,3986,7,17,0,0,3986,3987,7,16,0,0,3987,3988,7,16,0,0,3988,3989,7,10,0,0,3989,3990,7,12,0,0,3990,724,1,0,0,0,3991,3992,7,22,0,0,3992,3993,7,7,0,0,3993,3994,7,10,0,0,3994,3995,7,7,0,0,3995,3996,7,14,0,0,3996,3997,7,13,0,0,3997,3998,7,8,0,0,3998,3999,7,24,0,0,3999,4e3,7,16,0,0,4e3,4001,7,10,0,0,4001,4002,7,12,0,0,4002,726,1,0,0,0,4003,4004,7,22,0,0,4004,4005,7,7,0,0,4005,4006,7,21,0,0,4006,4007,7,7,0,0,4007,4008,7,19,0,0,4008,4009,7,29,0,0,4009,4010,7,7,0,0,4010,728,1,0,0,0,4011,4012,7,22,0,0,4012,4013,7,7,0,0,4013,4014,7,6,0,0,4014,4015,7,17,0,0,4015,4016,7,9,0,0,4016,4017,7,16,0,0,4017,4018,7,10,0,0,4018,4019,7,7,0,0,4019,730,1,0,0,0,4020,4021,7,22,0,0,4021,4022,7,7,0,0,4022,4023,7,6,0,0,4023,4024,7,19,0,0,4024,4025,7,23,0,0,4025,4026,7,23,0,0,4026,4027,7,10,0,0,4027,4028,7,12,0,0,4028,732,1,0,0,0,4029,4030,7,22,0,0,4030,4031,7,7,0,0,4031,4032,7,16,0,0,4032,4033,7,17,0,0,4033,4034,7,6,0,0,4034,734,1,0,0,0,4035,4036,7,22,0,0,4036,4037,7,24,0,0,4037,4038,7,12,0,0,4038,4039,7,5,0,0,4039,4040,7,16,0,0,4040,4041,7,10,0,0,4041,736,1,0,0,0,4042,4043,7,27,0,0,4043,4044,7,5,0,0,4044,4045,7,14,0,0,4045,4046,7,22,0,0,4046,4047,7,22,0,0,4047,4048,7,15,0,0,4048,738,1,0,0,0,4049,4050,7,27,0,0,4050,4051,7,5,0,0,4051,4052,7,6,0,0,4052,4053,7,17,0,0,4053,4054,7,12,0,0,4054,740,1,0,0,0,4055,4056,7,27,0,0,4056,4057,7,5,0,0,4057,4058,7,6,0,0,4058,4059,7,17,0,0,4059,4060,7,12,0,0,4060,4061,7,5,0,0,4061,4062,7,16,0,0,4062,4063,7,10,0,0,4063,742,1,0,0,0,4064,4065,7,27,0,0,4065,4066,7,5,0,0,4066,4067,7,6,0,0,4067,4068,7,17,0,0,4068,4069,7,12,0,0,4069,4070,7,5,0,0,4070,4071,7,16,0,0,4071,4072,7,19,0,0,4072,4073,7,13,0,0,4073,744,1,0,0,0,4074,4075,7,27,0,0,4075,4076,7,5,0,0,4076,4077,7,13,0,0,4077,4078,7,8,0,0,4078,4079,7,17,0,0,4079,4080,7,7,0,0,4080,4081,7,23,0,0,4081,746,1,0,0,0,4082,4083,7,27,0,0,4083,4084,7,10,0,0,4084,4085,7,13,0,0,4085,4086,7,9,0,0,4086,4087,7,17,0,0,4087,4088,7,19,0,0,4088,4089,7,7,0,0,4089,748,1,0,0,0,4090,4091,7,27,0,0,4091,4092,7,17,0,0,4092,4093,7,10,0,0,4093,4094,7,29,0,0,4094,750,1,0,0,0,4095,4096,7,27,0,0,4096,4097,7,19,0,0,4097,4098,7,6,0,0,4098,4099,7,5,0,0,4099,4100,7,16,0,0,4100,4101,7,17,0,0,4101,4102,7,6,0,0,4102,4103,7,10,0,0,4103,752,1,0,0,0,4104,4105,7,29,0,0,4105,4106,7,20,0,0,4106,4107,7,17,0,0,4107,4108,7,16,0,0,4108,4109,7,10,0,0,4109,4110,7,9,0,0,4110,4111,7,24,0,0,4111,4112,7,5,0,0,4112,4113,7,14,0,0,4113,4114,7,10,0,0,4114,754,1,0,0,0,4115,4116,7,29,0,0,4116,4117,7,17,0,0,4117,4118,7,16,0,0,4118,4119,7,20,0,0,4119,4120,7,19,0,0,4120,4121,7,22,0,0,4121,4122,7,16,0,0,4122,756,1,0,0,0,4123,4124,7,29,0,0,4124,4125,7,19,0,0,4125,4126,7,13,0,0,4126,4127,7,21,0,0,4127,758,1,0,0,0,4128,4129,7,29,0,0,4129,4130,7,13,0,0,4130,4131,7,5,0,0,4131,4132,7,24,0,0,4132,4133,7,24,0,0,4133,4134,7,10,0,0,4134,4135,7,13,0,0,4135,760,1,0,0,0,4136,4137,7,29,0,0,4137,4138,7,13,0,0,4138,4139,7,17,0,0,4139,4140,7,16,0,0,4140,4141,7,10,0,0,4141,762,1,0,0,0,4142,4143,7,26,0,0,4143,4144,7,15,0,0,4144,4145,7,6,0,0,4145,764,1,0,0,0,4146,4147,7,8,0,0,4147,4148,7,10,0,0,4148,4149,7,5,0,0,4149,4150,7,13,0,0,4150,766,1,0,0,0,4151,4152,7,8,0,0,4152,4153,7,10,0,0,4153,4154,7,9,0,0,4154,768,1,0,0,0,4155,4156,7,11,0,0,4156,4157,7,19,0,0,4157,4158,7,7,0,0,4158,4159,7,10,0,0,4159,770,1,0,0,0,4160,4161,7,18,0,0,4161,4162,7,10,0,0,4162,4163,7,16,0,0,4163,4164,7,29,0,0,4164,4165,7,10,0,0,4165,4166,7,10,0,0,4166,4167,7,7,0,0,4167,772,1,0,0,0,4168,4169,7,18,0,0,4169,4170,7,17,0,0,4170,4171,7,23,0,0,4171,4172,7,17,0,0,4172,4173,7,7,0,0,4173,4174,7,16,0,0,4174,774,1,0,0,0,4175,4176,7,18,0,0,4176,4177,7,17,0,0,4177,4178,7,16,0,0,4178,776,1,0,0,0,4179,4180,7,18,0,0,4180,4181,7,19,0,0,4181,4182,7,19,0,0,4182,4183,7,6,0,0,4183,4184,7,10,0,0,4184,4185,7,5,0,0,4185,4186,7,7,0,0,4186,778,1,0,0,0,4187,4188,7,14,0,0,4188,4189,7,20,0,0,4189,4190,7,5,0,0,4190,4191,7,13,0,0,4191,780,1,0,0,0,4192,4193,7,14,0,0,4193,4194,7,20,0,0,4194,4195,7,5,0,0,4195,4196,7,13,0,0,4196,4197,7,5,0,0,4197,4198,7,14,0,0,4198,4199,7,16,0,0,4199,4200,7,10,0,0,4200,4201,7,13,0,0,4201,782,1,0,0,0,4202,4203,7,14,0,0,4203,4204,7,19,0,0,4204,4205,7,5,0,0,4205,4206,7,6,0,0,4206,4207,7,10,0,0,4207,4208,7,9,0,0,4208,4209,7,14,0,0,4209,4210,7,10,0,0,4210,784,1,0,0,0,4211,4212,7,12,0,0,4212,4213,7,10,0,0,4213,4214,7,14,0,0,4214,786,1,0,0,0,4215,4216,7,12,0,0,4216,4217,7,10,0,0,4217,4218,7,14,0,0,4218,4219,7,17,0,0,4219,4220,7,15,0,0,4220,4221,7,5,0,0,4221,4222,7,6,0,0,4222,788,1,0,0,0,4223,4224,7,10,0,0,4224,4225,7,26,0,0,4225,4226,7,17,0,0,4226,4227,7,9,0,0,4227,4228,7,16,0,0,4228,4229,7,9,0,0,4229,790,1,0,0,0,4230,4231,7,10,0,0,4231,4232,7,26,0,0,4232,4233,7,16,0,0,4233,4234,7,13,0,0,4234,4235,7,5,0,0,4235,4236,7,14,0,0,4236,4237,7,16,0,0,4237,792,1,0,0,0,4238,4239,7,25,0,0,4239,4240,7,6,0,0,4240,4241,7,19,0,0,4241,4242,7,5,0,0,4242,4243,7,16,0,0,4243,794,1,0,0,0,4244,4245,7,23,0,0,4245,4246,7,13,0,0,4246,4247,7,10,0,0,4247,4248,7,5,0,0,4248,4249,7,16,0,0,4249,4250,7,10,0,0,4250,4251,7,9,0,0,4251,4252,7,16,0,0,4252,796,1,0,0,0,4253,4254,7,17,0,0,4254,4255,7,7,0,0,4255,4256,7,19,0,0,4256,4257,7,22,0,0,4257,4258,7,16,0,0,4258,798,1,0,0,0,4259,4260,7,17,0,0,4260,4261,7,7,0,0,4261,4262,7,16,0,0,4262,800,1,0,0,0,4263,4264,7,17,0,0,4264,4265,7,7,0,0,4265,4266,7,16,0,0,4266,4267,7,10,0,0,4267,4268,7,23,0,0,4268,4269,7,10,0,0,4269,4270,7,13,0,0,4270,802,1,0,0,0,4271,4272,7,17,0,0,4272,4273,7,7,0,0,4273,4274,7,16,0,0,4274,4275,7,10,0,0,4275,4276,7,13,0,0,4276,4277,7,27,0,0,4277,4278,7,5,0,0,4278,4279,7,6,0,0,4279,804,1,0,0,0,4280,4281,7,6,0,0,4281,4282,7,10,0,0,4282,4283,7,5,0,0,4283,4284,7,9,0,0,4284,4285,7,16,0,0,4285,806,1,0,0,0,4286,4287,7,7,0,0,4287,4288,7,5,0,0,4288,4289,7,16,0,0,4289,4290,7,17,0,0,4290,4291,7,19,0,0,4291,4292,7,7,0,0,4292,4293,7,5,0,0,4293,4294,7,6,0,0,4294,808,1,0,0,0,4295,4296,7,7,0,0,4296,4297,7,14,0,0,4297,4298,7,20,0,0,4298,4299,7,5,0,0,4299,4300,7,13,0,0,4300,810,1,0,0,0,4301,4302,7,7,0,0,4302,4303,7,19,0,0,4303,4304,7,7,0,0,4304,4305,7,10,0,0,4305,812,1,0,0,0,4306,4307,7,7,0,0,4307,4308,7,22,0,0,4308,4309,7,6,0,0,4309,4310,7,6,0,0,4310,4311,7,17,0,0,4311,4312,7,25,0,0,4312,814,1,0,0,0,4313,4314,7,7,0,0,4314,4315,7,22,0,0,4315,4316,7,15,0,0,4316,4317,7,10,0,0,4317,4318,7,13,0,0,4318,4319,7,17,0,0,4319,4320,7,14,0,0,4320,816,1,0,0,0,4321,4322,7,19,0,0,4322,4323,7,27,0,0,4323,4324,7,10,0,0,4324,4325,7,13,0,0,4325,4326,7,6,0,0,4326,4327,7,5,0,0,4327,4328,7,8,0,0,4328,818,1,0,0,0,4329,4330,7,24,0,0,4330,4331,7,19,0,0,4331,4332,7,9,0,0,4332,4333,7,17,0,0,4333,4334,7,16,0,0,4334,4335,7,17,0,0,4335,4336,7,19,0,0,4336,4337,7,7,0,0,4337,820,1,0,0,0,4338,4339,7,24,0,0,4339,4340,7,13,0,0,4340,4341,7,10,0,0,4341,4342,7,14,0,0,4342,4343,7,17,0,0,4343,4344,7,9,0,0,4344,4345,7,17,0,0,4345,4346,7,19,0,0,4346,4347,7,7,0,0,4347,822,1,0,0,0,4348,4349,7,13,0,0,4349,4350,7,10,0,0,4350,4351,7,5,0,0,4351,4352,7,6,0,0,4352,824,1,0,0,0,4353,4354,7,13,0,0,4354,4355,7,19,0,0,4355,4356,7,29,0,0,4356,826,1,0,0,0,4357,4358,7,9,0,0,4358,4359,7,10,0,0,4359,4360,7,16,0,0,4360,4361,7,19,0,0,4361,4362,7,25,0,0,4362,828,1,0,0,0,4363,4364,7,9,0,0,4364,4365,7,15,0,0,4365,4366,7,5,0,0,4366,4367,7,6,0,0,4367,4368,7,6,0,0,4368,4369,7,17,0,0,4369,4370,7,7,0,0,4370,4371,7,16,0,0,4371,830,1,0,0,0,4372,4373,7,9,0,0,4373,4374,7,22,0,0,4374,4375,7,18,0,0,4375,4376,7,9,0,0,4376,4377,7,16,0,0,4377,4378,7,13,0,0,4378,4379,7,17,0,0,4379,4380,7,7,0,0,4380,4381,7,23,0,0,4381,832,1,0,0,0,4382,4383,7,16,0,0,4383,4384,7,17,0,0,4384,4385,7,15,0,0,4385,4386,7,10,0,0,4386,834,1,0,0,0,4387,4388,7,16,0,0,4388,4389,7,17,0,0,4389,4390,7,15,0,0,4390,4391,7,10,0,0,4391,4392,7,9,0,0,4392,4393,7,16,0,0,4393,4394,7,5,0,0,4394,4395,7,15,0,0,4395,4396,7,24,0,0,4396,836,1,0,0,0,4397,4398,7,16,0,0,4398,4399,7,13,0,0,4399,4400,7,10,0,0,4400,4401,7,5,0,0,4401,4402,7,16,0,0,4402,838,1,0,0,0,4403,4404,7,16,0,0,4404,4405,7,13,0,0,4405,4406,7,17,0,0,4406,4407,7,15,0,0,4407,840,1,0,0,0,4408,4409,7,27,0,0,4409,4410,7,5,0,0,4410,4411,7,6,0,0,4411,4412,7,22,0,0,4412,4413,7,10,0,0,4413,4414,7,9,0,0,4414,842,1,0,0,0,4415,4416,7,27,0,0,4416,4417,7,5,0,0,4417,4418,7,13,0,0,4418,4419,7,14,0,0,4419,4420,7,20,0,0,4420,4421,7,5,0,0,4421,4422,7,13,0,0,4422,844,1,0,0,0,4423,4424,7,26,0,0,4424,4425,7,15,0,0,4425,4426,7,6,0,0,4426,4427,7,5,0,0,4427,4428,7,16,0,0,4428,4429,7,16,0,0,4429,4430,7,13,0,0,4430,4431,7,17,0,0,4431,4432,7,18,0,0,4432,4433,7,22,0,0,4433,4434,7,16,0,0,4434,4435,7,10,0,0,4435,4436,7,9,0,0,4436,846,1,0,0,0,4437,4438,7,26,0,0,4438,4439,7,15,0,0,4439,4440,7,6,0,0,4440,4441,7,14,0,0,4441,4442,7,19,0,0,4442,4443,7,15,0,0,4443,4444,7,15,0,0,4444,4445,7,10,0,0,4445,4446,7,7,0,0,4446,4447,7,16,0,0,4447,848,1,0,0,0,4448,4449,7,26,0,0,4449,4450,7,15,0,0,4450,4451,7,6,0,0,4451,4452,7,5,0,0,4452,4453,7,23,0,0,4453,4454,7,23,0,0,4454,850,1,0,0,0,4455,4456,7,26,0,0,4456,4457,7,15,0,0,4457,4458,7,6,0,0,4458,4459,5,95,0,0,4459,4460,7,17,0,0,4460,4461,7,9,0,0,4461,4462,5,95,0,0,4462,4463,7,29,0,0,4463,4464,7,10,0,0,4464,4465,7,6,0,0,4465,4466,7,6,0,0,4466,4467,5,95,0,0,4467,4468,7,25,0,0,4468,4469,7,19,0,0,4469,4470,7,13,0,0,4470,4471,7,15,0,0,4471,4472,7,10,0,0,4472,4473,7,12,0,0,4473,852,1,0,0,0,4474,4475,7,26,0,0,4475,4476,7,15,0,0,4476,4477,7,6,0,0,4477,4478,5,95,0,0,4478,4479,7,17,0,0,4479,4480,7,9,0,0,4480,4481,5,95,0,0,4481,4482,7,29,0,0,4482,4483,7,10,0,0,4483,4484,7,6,0,0,4484,4485,7,6,0,0,4485,4486,5,95,0,0,4486,4487,7,25,0,0,4487,4488,7,19,0,0,4488,4489,7,13,0,0,4489,4490,7,15,0,0,4490,4491,7,10,0,0,4491,4492,7,12,0,0,4492,4493,5,95,0,0,4493,4494,7,12,0,0,4494,4495,7,19,0,0,4495,4496,7,14,0,0,4496,4497,7,22,0,0,4497,4498,7,15,0,0,4498,4499,7,10,0,0,4499,4500,7,7,0,0,4500,4501,7,16,0,0,4501,854,1,0,0,0,4502,4503,7,26,0,0,4503,4504,7,15,0,0,4504,4505,7,6,0,0,4505,4506,5,95,0,0,4506,4507,7,17,0,0,4507,4508,7,9,0,0,4508,4509,5,95,0,0,4509,4510,7,29,0,0,4510,4511,7,10,0,0,4511,4512,7,6,0,0,4512,4513,7,6,0,0,4513,4514,5,95,0,0,4514,4515,7,25,0,0,4515,4516,7,19,0,0,4516,4517,7,13,0,0,4517,4518,7,15,0,0,4518,4519,7,10,0,0,4519,4520,7,12,0,0,4520,4521,5,95,0,0,4521,4522,7,14,0,0,4522,4523,7,19,0,0,4523,4524,7,7,0,0,4524,4525,7,16,0,0,4525,4526,7,10,0,0,4526,4527,7,7,0,0,4527,4528,7,16,0,0,4528,856,1,0,0,0,4529,4530,7,26,0,0,4530,4531,7,24,0,0,4531,4532,7,5,0,0,4532,4533,7,16,0,0,4533,4534,7,20,0,0,4534,858,1,0,0,0,4535,4536,7,26,0,0,4536,4537,7,24,0,0,4537,4538,7,5,0,0,4538,4539,7,16,0,0,4539,4540,7,20,0,0,4540,4541,5,95,0,0,4541,4542,7,10,0,0,4542,4543,7,26,0,0,4543,4544,7,17,0,0,4544,4545,7,9,0,0,4545,4546,7,16,0,0,4546,4547,7,9,0,0,4547,860,1,0,0,0,4548,4549,7,26,0,0,4549,4550,7,15,0,0,4550,4551,7,6,0,0,4551,4552,7,14,0,0,4552,4553,7,19,0,0,4553,4554,7,7,0,0,4554,4555,7,14,0,0,4555,4556,7,5,0,0,4556,4557,7,16,0,0,4557,862,1,0,0,0,4558,4559,7,26,0,0,4559,4560,7,15,0,0,4560,4561,7,6,0,0,4561,4562,7,10,0,0,4562,4563,7,6,0,0,4563,4564,7,10,0,0,4564,4565,7,15,0,0,4565,4566,7,10,0,0,4566,4567,7,7,0,0,4567,4568,7,16,0,0,4568,864,1,0,0,0,4569,4570,7,26,0,0,4570,4571,7,15,0,0,4571,4572,7,6,0,0,4572,4573,7,10,0,0,4573,4574,7,26,0,0,4574,4575,7,17,0,0,4575,4576,7,9,0,0,4576,4577,7,16,0,0,4577,4578,7,9,0,0,4578,866,1,0,0,0,4579,4580,7,26,0,0,4580,4581,7,15,0,0,4581,4582,7,6,0,0,4582,4583,7,25,0,0,4583,4584,7,19,0,0,4584,4585,7,13,0,0,4585,4586,7,10,0,0,4586,4587,7,9,0,0,4587,4588,7,16,0,0,4588,868,1,0,0,0,4589,4590,7,26,0,0,4590,4591,7,15,0,0,4591,4592,7,6,0,0,4592,4593,7,24,0,0,4593,4594,7,5,0,0,4594,4595,7,13,0,0,4595,4596,7,9,0,0,4596,4597,7,10,0,0,4597,870,1,0,0,0,4598,4599,7,26,0,0,4599,4600,7,15,0,0,4600,4601,7,6,0,0,4601,4602,7,24,0,0,4602,4603,7,17,0,0,4603,872,1,0,0,0,4604,4605,7,26,0,0,4605,4606,7,15,0,0,4606,4607,7,6,0,0,4607,4608,7,13,0,0,4608,4609,7,19,0,0,4609,4610,7,19,0,0,4610,4611,7,16,0,0,4611,874,1,0,0,0,4612,4613,7,26,0,0,4613,4614,7,15,0,0,4614,4615,7,6,0,0,4615,4616,7,9,0,0,4616,4617,7,10,0,0,4617,4618,7,13,0,0,4618,4619,7,17,0,0,4619,4620,7,5,0,0,4620,4621,7,6,0,0,4621,4622,7,17,0,0,4622,4623,7,11,0,0,4623,4624,7,10,0,0,4624,876,1,0,0,0,4625,4626,7,14,0,0,4626,4627,7,5,0,0,4627,4628,7,6,0,0,4628,4629,7,6,0,0,4629,878,1,0,0,0,4630,4631,7,14,0,0,4631,4632,7,22,0,0,4632,4633,7,13,0,0,4633,4634,7,13,0,0,4634,4635,7,10,0,0,4635,4636,7,7,0,0,4636,4637,7,16,0,0,4637,880,1,0,0,0,4638,4639,7,5,0,0,4639,4640,7,16,0,0,4640,4641,7,16,0,0,4641,4642,7,5,0,0,4642,4643,7,14,0,0,4643,4644,7,20,0,0,4644,882,1,0,0,0,4645,4646,7,12,0,0,4646,4647,7,10,0,0,4647,4648,7,16,0,0,4648,4649,7,5,0,0,4649,4650,7,14,0,0,4650,4651,7,20,0,0,4651,884,1,0,0,0,4652,4653,7,10,0,0,4653,4654,7,26,0,0,4654,4655,7,24,0,0,4655,4656,7,13,0,0,4656,4657,7,10,0,0,4657,4658,7,9,0,0,4658,4659,7,9,0,0,4659,4660,7,17,0,0,4660,4661,7,19,0,0,4661,4662,7,7,0,0,4662,886,1,0,0,0,4663,4664,7,23,0,0,4664,4665,7,10,0,0,4665,4666,7,7,0,0,4666,4667,7,10,0,0,4667,4668,7,13,0,0,4668,4669,7,5,0,0,4669,4670,7,16,0,0,4670,4671,7,10,0,0,4671,4672,7,12,0,0,4672,888,1,0,0,0,4673,4674,7,6,0,0,4674,4675,7,19,0,0,4675,4676,7,23,0,0,4676,4677,7,23,0,0,4677,4678,7,10,0,0,4678,4679,7,12,0,0,4679,890,1,0,0,0,4680,4681,7,9,0,0,4681,4682,7,16,0,0,4682,4683,7,19,0,0,4683,4684,7,13,0,0,4684,4685,7,10,0,0,4685,4686,7,12,0,0,4686,892,1,0,0,0,4687,4688,7,17,0,0,4688,4689,7,7,0,0,4689,4690,7,14,0,0,4690,4691,7,6,0,0,4691,4692,7,22,0,0,4692,4693,7,12,0,0,4693,4694,7,10,0,0,4694,894,1,0,0,0,4695,4696,7,13,0,0,4696,4697,7,19,0,0,4697,4698,7,22,0,0,4698,4699,7,16,0,0,4699,4700,7,17,0,0,4700,4701,7,7,0,0,4701,4702,7,10,0,0,4702,896,1,0,0,0,4703,4704,7,16,0,0,4704,4705,7,13,0,0,4705,4706,7,5,0,0,4706,4707,7,7,0,0,4707,4708,7,9,0,0,4708,4709,7,25,0,0,4709,4710,7,19,0,0,4710,4711,7,13,0,0,4711,4712,7,15,0,0,4712,898,1,0,0,0,4713,4714,7,17,0,0,4714,4715,7,15,0,0,4715,4716,7,24,0,0,4716,4717,7,19,0,0,4717,4718,7,13,0,0,4718,4719,7,16,0,0,4719,900,1,0,0,0,4720,4721,7,24,0,0,4721,4722,7,19,0,0,4722,4723,7,6,0,0,4723,4724,7,17,0,0,4724,4725,7,14,0,0,4725,4726,7,8,0,0,4726,902,1,0,0,0,4727,4728,7,15,0,0,4728,4729,7,10,0,0,4729,4730,7,16,0,0,4730,4731,7,20,0,0,4731,4732,7,19,0,0,4732,4733,7,12,0,0,4733,904,1,0,0,0,4734,4735,7,13,0,0,4735,4736,7,10,0,0,4736,4737,7,25,0,0,4737,4738,7,10,0,0,4738,4739,7,13,0,0,4739,4740,7,10,0,0,4740,4741,7,7,0,0,4741,4742,7,14,0,0,4742,4743,7,17,0,0,4743,4744,7,7,0,0,4744,4745,7,23,0,0,4745,906,1,0,0,0,4746,4747,7,7,0,0,4747,4748,7,10,0,0,4748,4749,7,29,0,0,4749,908,1,0,0,0,4750,4751,7,19,0,0,4751,4752,7,6,0,0,4752,4753,7,12,0,0,4753,910,1,0,0,0,4754,4755,7,27,0,0,4755,4756,7,5,0,0,4756,4757,7,6,0,0,4757,4758,7,22,0,0,4758,4759,7,10,0,0,4759,912,1,0,0,0,4760,4761,7,9,0,0,4761,4762,7,22,0,0,4762,4763,7,18,0,0,4763,4764,7,9,0,0,4764,4765,7,14,0,0,4765,4766,7,13,0,0,4766,4767,7,17,0,0,4767,4768,7,24,0,0,4768,4769,7,16,0,0,4769,4770,7,17,0,0,4770,4771,7,19,0,0,4771,4772,7,7,0,0,4772,914,1,0,0,0,4773,4774,7,24,0,0,4774,4775,7,22,0,0,4775,4776,7,18,0,0,4776,4777,7,6,0,0,4777,4778,7,17,0,0,4778,4779,7,14,0,0,4779,4780,7,5,0,0,4780,4781,7,16,0,0,4781,4782,7,17,0,0,4782,4783,7,19,0,0,4783,4784,7,7,0,0,4784,916,1,0,0,0,4785,4786,7,19,0,0,4786,4787,7,22,0,0,4787,4788,7,16,0,0,4788,918,1,0,0,0,4789,4790,7,10,0,0,4790,4791,7,7,0,0,4791,4792,7,12,0,0,4792,920,1,0,0,0,4793,4794,7,13,0,0,4794,4795,7,19,0,0,4795,4796,7,22,0,0,4796,4797,7,16,0,0,4797,4798,7,17,0,0,4798,4799,7,7,0,0,4799,4800,7,10,0,0,4800,4801,7,9,0,0,4801,922,1,0,0,0,4802,4803,7,9,0,0,4803,4804,7,14,0,0,4804,4805,7,20,0,0,4805,4806,7,10,0,0,4806,4807,7,15,0,0,4807,4808,7,5,0,0,4808,4809,7,9,0,0,4809,924,1,0,0,0,4810,4811,7,24,0,0,4811,4812,7,13,0,0,4812,4813,7,19,0,0,4813,4814,7,14,0,0,4814,4815,7,10,0,0,4815,4816,7,12,0,0,4816,4817,7,22,0,0,4817,4818,7,13,0,0,4818,4819,7,10,0,0,4819,4820,7,9,0,0,4820,926,1,0,0,0,4821,4822,7,17,0,0,4822,4823,7,7,0,0,4823,4824,7,24,0,0,4824,4825,7,22,0,0,4825,4826,7,16,0,0,4826,928,1,0,0,0,4827,4828,7,9,0,0,4828,4829,7,22,0,0,4829,4830,7,24,0,0,4830,4831,7,24,0,0,4831,4832,7,19,0,0,4832,4833,7,13,0,0,4833,4834,7,16,0,0,4834,930,1,0,0,0,4835,4836,7,24,0,0,4836,4837,7,5,0,0,4837,4838,7,13,0,0,4838,4839,7,5,0,0,4839,4840,7,6,0,0,4840,4841,7,6,0,0,4841,4842,7,10,0,0,4842,4843,7,6,0,0,4843,932,1,0,0,0,4844,4845,7,9,0,0,4845,4846,7,28,0,0,4846,4847,7,6,0,0,4847,934,1,0,0,0,4848,4849,7,12,0,0,4849,4850,7,10,0,0,4850,4851,7,24,0,0,4851,4852,7,10,0,0,4852,4853,7,7,0,0,4853,4854,7,12,0,0,4854,4855,7,9,0,0,4855,936,1,0,0,0,4856,4857,7,19,0,0,4857,4858,7,27,0,0,4858,4859,7,10,0,0,4859,4860,7,13,0,0,4860,4861,7,13,0,0,4861,4862,7,17,0,0,4862,4863,7,12,0,0,4863,4864,7,17,0,0,4864,4865,7,7,0,0,4865,4866,7,23,0,0,4866,938,1,0,0,0,4867,4868,7,14,0,0,4868,4869,7,19,0,0,4869,4870,7,7,0,0,4870,4871,7,25,0,0,4871,4872,7,6,0,0,4872,4873,7,17,0,0,4873,4874,7,14,0,0,4874,4875,7,16,0,0,4875,940,1,0,0,0,4876,4877,7,9,0,0,4877,4878,7,21,0,0,4878,4879,7,17,0,0,4879,4880,7,24,0,0,4880,942,1,0,0,0,4881,4882,7,6,0,0,4882,4883,7,19,0,0,4883,4884,7,14,0,0,4884,4885,7,21,0,0,4885,4886,7,10,0,0,4886,4887,7,12,0,0,4887,944,1,0,0,0,4888,4889,7,16,0,0,4889,4890,7,17,0,0,4890,4891,7,10,0,0,4891,4892,7,9,0,0,4892,946,1,0,0,0,4893,4894,7,13,0,0,4894,4895,7,19,0,0,4895,4896,7,6,0,0,4896,4897,7,6,0,0,4897,4898,7,22,0,0,4898,4899,7,24,0,0,4899,948,1,0,0,0,4900,4901,7,14,0,0,4901,4902,7,22,0,0,4902,4903,7,18,0,0,4903,4904,7,10,0,0,4904,950,1,0,0,0,4905,4906,7,23,0,0,4906,4907,7,13,0,0,4907,4908,7,19,0,0,4908,4909,7,22,0,0,4909,4910,7,24,0,0,4910,4911,7,17,0,0,4911,4912,7,7,0,0,4912,4913,7,23,0,0,4913,952,1,0,0,0,4914,4915,7,9,0,0,4915,4916,7,10,0,0,4916,4917,7,16,0,0,4917,4918,7,9,0,0,4918,954,1,0,0,0,4919,4920,7,16,0,0,4920,4921,7,5,0,0,4921,4922,7,18,0,0,4922,4923,7,6,0,0,4923,4924,7,10,0,0,4924,4925,7,9,0,0,4925,4926,7,5,0,0,4926,4927,7,15,0,0,4927,4928,7,24,0,0,4928,4929,7,6,0,0,4929,4930,7,10,0,0,4930,956,1,0,0,0,4931,4932,7,19,0,0,4932,4933,7,13,0,0,4933,4934,7,12,0,0,4934,4935,7,17,0,0,4935,4936,7,7,0,0,4936,4937,7,5,0,0,4937,4938,7,6,0,0,4938,4939,7,17,0,0,4939,4940,7,16,0,0,4940,4941,7,8,0,0,4941,958,1,0,0,0,4942,4943,7,26,0,0,4943,4944,7,15,0,0,4944,4945,7,6,0,0,4945,4946,7,16,0,0,4946,4947,7,5,0,0,4947,4948,7,18,0,0,4948,4949,7,6,0,0,4949,4950,7,10,0,0,4950,960,1,0,0,0,4951,4952,7,14,0,0,4952,4953,7,19,0,0,4953,4954,7,6,0,0,4954,4955,7,22,0,0,4955,4956,7,15,0,0,4956,4957,7,7,0,0,4957,4958,7,9,0,0,4958,962,1,0,0,0,4959,4960,7,26,0,0,4960,4961,7,15,0,0,4961,4962,7,6,0,0,4962,4963,7,7,0,0,4963,4964,7,5,0,0,4964,4965,7,15,0,0,4965,4966,7,10,0,0,4966,4967,7,9,0,0,4967,4968,7,24,0,0,4968,4969,7,5,0,0,4969,4970,7,14,0,0,4970,4971,7,10,0,0,4971,4972,7,9,0,0,4972,964,1,0,0,0,4973,4974,7,13,0,0,4974,4975,7,19,0,0,4975,4976,7,29,0,0,4976,4977,7,16,0,0,4977,4978,7,8,0,0,4978,4979,7,24,0,0,4979,4980,7,10,0,0,4980,966,1,0,0,0,4981,4982,7,7,0,0,4982,4983,7,19,0,0,4983,4984,7,13,0,0,4984,4985,7,15,0,0,4985,4986,7,5,0,0,4986,4987,7,6,0,0,4987,4988,7,17,0,0,4988,4989,7,11,0,0,4989,4990,7,10,0,0,4990,4991,7,12,0,0,4991,968,1,0,0,0,4992,4993,7,29,0,0,4993,4994,7,17,0,0,4994,4995,7,16,0,0,4995,4996,7,20,0,0,4996,4997,7,17,0,0,4997,4998,7,7,0,0,4998,970,1,0,0,0,4999,5e3,7,25,0,0,5e3,5001,7,17,0,0,5001,5002,7,6,0,0,5002,5003,7,16,0,0,5003,5004,7,10,0,0,5004,5005,7,13,0,0,5005,972,1,0,0,0,5006,5007,7,23,0,0,5007,5008,7,13,0,0,5008,5009,7,19,0,0,5009,5010,7,22,0,0,5010,5011,7,24,0,0,5011,5012,7,9,0,0,5012,974,1,0,0,0,5013,5014,7,19,0,0,5014,5015,7,16,0,0,5015,5016,7,20,0,0,5016,5017,7,10,0,0,5017,5018,7,13,0,0,5018,5019,7,9,0,0,5019,976,1,0,0,0,5020,5021,7,7,0,0,5021,5022,7,25,0,0,5022,5023,7,14,0,0,5023,978,1,0,0,0,5024,5025,7,7,0,0,5025,5026,7,25,0,0,5026,5027,7,12,0,0,5027,980,1,0,0,0,5028,5029,7,7,0,0,5029,5030,7,25,0,0,5030,5031,7,21,0,0,5031,5032,7,14,0,0,5032,982,1,0,0,0,5033,5034,7,7,0,0,5034,5035,7,25,0,0,5035,5036,7,21,0,0,5036,5037,7,12,0,0,5037,984,1,0,0,0,5038,5039,7,22,0,0,5039,5040,7,10,0,0,5040,5041,7,9,0,0,5041,5042,7,14,0,0,5042,5043,7,5,0,0,5043,5044,7,24,0,0,5044,5045,7,10,0,0,5045,986,1,0,0,0,5046,5047,7,27,0,0,5047,5048,7,17,0,0,5048,5049,7,10,0,0,5049,5050,7,29,0,0,5050,5051,7,9,0,0,5051,988,1,0,0,0,5052,5053,7,7,0,0,5053,5054,7,19,0,0,5054,5055,7,13,0,0,5055,5056,7,15,0,0,5056,5057,7,5,0,0,5057,5058,7,6,0,0,5058,5059,7,17,0,0,5059,5060,7,11,0,0,5060,5061,7,10,0,0,5061,990,1,0,0,0,5062,5063,7,12,0,0,5063,5064,7,22,0,0,5064,5065,7,15,0,0,5065,5066,7,24,0,0,5066,992,1,0,0,0,5067,5068,7,24,0,0,5068,5069,7,13,0,0,5069,5070,7,17,0,0,5070,5071,7,7,0,0,5071,5072,7,16,0,0,5072,5073,5,95,0,0,5073,5074,7,9,0,0,5074,5075,7,16,0,0,5075,5076,7,13,0,0,5076,5077,7,17,0,0,5077,5078,7,14,0,0,5078,5079,7,16,0,0,5079,5080,5,95,0,0,5080,5081,7,24,0,0,5081,5082,7,5,0,0,5082,5083,7,13,0,0,5083,5084,7,5,0,0,5084,5085,7,15,0,0,5085,5086,7,9,0,0,5086,994,1,0,0,0,5087,5088,7,27,0,0,5088,5089,7,5,0,0,5089,5090,7,13,0,0,5090,5091,7,17,0,0,5091,5092,7,5,0,0,5092,5093,7,18,0,0,5093,5094,7,6,0,0,5094,5095,7,10,0,0,5095,5096,5,95,0,0,5096,5097,7,14,0,0,5097,5098,7,19,0,0,5098,5099,7,7,0,0,5099,5100,7,25,0,0,5100,5101,7,6,0,0,5101,5102,7,17,0,0,5102,5103,7,14,0,0,5103,5104,7,16,0,0,5104,996,1,0,0,0,5105,5106,7,10,0,0,5106,5107,7,13,0,0,5107,5108,7,13,0,0,5108,5109,7,19,0,0,5109,5110,7,13,0,0,5110,998,1,0,0,0,5111,5112,7,22,0,0,5112,5113,7,9,0,0,5113,5114,7,10,0,0,5114,5115,5,95,0,0,5115,5116,7,27,0,0,5116,5117,7,5,0,0,5117,5118,7,13,0,0,5118,5119,7,17,0,0,5119,5120,7,5,0,0,5120,5121,7,18,0,0,5121,5122,7,6,0,0,5122,5123,7,10,0,0,5123,1e3,1,0,0,0,5124,5125,7,22,0,0,5125,5126,7,9,0,0,5126,5127,7,10,0,0,5127,5128,5,95,0,0,5128,5129,7,14,0,0,5129,5130,7,19,0,0,5130,5131,7,6,0,0,5131,5132,7,22,0,0,5132,5133,7,15,0,0,5133,5134,7,7,0,0,5134,1002,1,0,0,0,5135,5136,7,5,0,0,5136,5137,7,6,0,0,5137,5138,7,17,0,0,5138,5139,7,5,0,0,5139,5140,7,9,0,0,5140,1004,1,0,0,0,5141,5142,7,14,0,0,5142,5143,7,19,0,0,5143,5144,7,7,0,0,5144,5145,7,9,0,0,5145,5146,7,16,0,0,5146,5147,7,5,0,0,5147,5148,7,7,0,0,5148,5149,7,16,0,0,5149,1006,1,0,0,0,5150,5151,7,24,0,0,5151,5152,7,10,0,0,5152,5153,7,13,0,0,5153,5154,7,25,0,0,5154,5155,7,19,0,0,5155,5156,7,13,0,0,5156,5157,7,15,0,0,5157,1008,1,0,0,0,5158,5159,7,23,0,0,5159,5160,7,10,0,0,5160,5161,7,16,0,0,5161,1010,1,0,0,0,5162,5163,7,12,0,0,5163,5164,7,17,0,0,5164,5165,7,5,0,0,5165,5166,7,23,0,0,5166,5167,7,7,0,0,5167,5168,7,19,0,0,5168,5169,7,9,0,0,5169,5170,7,16,0,0,5170,5171,7,17,0,0,5171,5172,7,14,0,0,5172,5173,7,9,0,0,5173,1012,1,0,0,0,5174,5175,7,9,0,0,5175,5176,7,16,0,0,5176,5177,7,5,0,0,5177,5178,7,14,0,0,5178,5179,7,21,0,0,5179,5180,7,10,0,0,5180,5181,7,12,0,0,5181,1014,1,0,0,0,5182,5183,7,10,0,0,5183,5184,7,6,0,0,5184,5185,7,9,0,0,5185,5186,7,17,0,0,5186,5187,7,25,0,0,5187,1016,1,0,0,0,5188,5189,7,29,0,0,5189,5190,7,20,0,0,5190,5191,7,17,0,0,5191,5192,7,6,0,0,5192,5193,7,10,0,0,5193,1018,1,0,0,0,5194,5195,7,13,0,0,5195,5196,7,10,0,0,5196,5197,7,27,0,0,5197,5198,7,10,0,0,5198,5199,7,13,0,0,5199,5200,7,9,0,0,5200,5201,7,10,0,0,5201,1020,1,0,0,0,5202,5203,7,25,0,0,5203,5204,7,19,0,0,5204,5205,7,13,0,0,5205,5206,7,10,0,0,5206,5207,7,5,0,0,5207,5208,7,14,0,0,5208,5209,7,20,0,0,5209,1022,1,0,0,0,5210,5211,7,9,0,0,5211,5212,7,6,0,0,5212,5213,7,17,0,0,5213,5214,7,14,0,0,5214,5215,7,10,0,0,5215,1024,1,0,0,0,5216,5217,7,10,0,0,5217,5218,7,26,0,0,5218,5219,7,17,0,0,5219,5220,7,16,0,0,5220,1026,1,0,0,0,5221,5222,7,13,0,0,5222,5223,7,10,0,0,5223,5224,7,16,0,0,5224,5225,7,22,0,0,5225,5226,7,13,0,0,5226,5227,7,7,0,0,5227,1028,1,0,0,0,5228,5229,7,28,0,0,5229,5230,7,22,0,0,5230,5231,7,10,0,0,5231,5232,7,13,0,0,5232,5233,7,8,0,0,5233,1030,1,0,0,0,5234,5235,7,13,0,0,5235,5236,7,5,0,0,5236,5237,7,17,0,0,5237,5238,7,9,0,0,5238,5239,7,10,0,0,5239,1032,1,0,0,0,5240,5241,7,9,0,0,5241,5242,7,28,0,0,5242,5243,7,6,0,0,5243,5244,7,9,0,0,5244,5245,7,16,0,0,5245,5246,7,5,0,0,5246,5247,7,16,0,0,5247,5248,7,10,0,0,5248,1034,1,0,0,0,5249,5250,7,12,0,0,5250,5251,7,10,0,0,5251,5252,7,18,0,0,5252,5253,7,22,0,0,5253,5254,7,23,0,0,5254,1036,1,0,0,0,5255,5256,7,6,0,0,5256,5257,7,19,0,0,5257,5258,7,23,0,0,5258,1038,1,0,0,0,5259,5260,7,17,0,0,5260,5261,7,7,0,0,5261,5262,7,25,0,0,5262,5263,7,19,0,0,5263,1040,1,0,0,0,5264,5265,7,7,0,0,5265,5266,7,19,0,0,5266,5267,7,16,0,0,5267,5268,7,17,0,0,5268,5269,7,14,0,0,5269,5270,7,10,0,0,5270,1042,1,0,0,0,5271,5272,7,29,0,0,5272,5273,7,5,0,0,5273,5274,7,13,0,0,5274,5275,7,7,0,0,5275,5276,7,17,0,0,5276,5277,7,7,0,0,5277,5278,7,23,0,0,5278,1044,1,0,0,0,5279,5280,7,10,0,0,5280,5281,7,26,0,0,5281,5282,7,14,0,0,5282,5283,7,10,0,0,5283,5284,7,24,0,0,5284,5285,7,16,0,0,5285,5286,7,17,0,0,5286,5287,7,19,0,0,5287,5288,7,7,0,0,5288,1046,1,0,0,0,5289,5290,7,5,0,0,5290,5291,7,9,0,0,5291,5292,7,9,0,0,5292,5293,7,10,0,0,5293,5294,7,13,0,0,5294,5295,7,16,0,0,5295,1048,1,0,0,0,5296,5297,7,6,0,0,5297,5298,7,19,0,0,5298,5299,7,19,0,0,5299,5300,7,24,0,0,5300,1050,1,0,0,0,5301,5302,7,19,0,0,5302,5303,7,24,0,0,5303,5304,7,10,0,0,5304,5305,7,7,0,0,5305,1052,1,0,0,0,5306,5307,7,5,0,0,5307,5308,7,18,0,0,5308,5309,7,9,0,0,5309,1054,1,0,0,0,5310,5311,7,14,0,0,5311,5312,7,18,0,0,5312,5313,7,13,0,0,5313,5314,7,16,0,0,5314,1056,1,0,0,0,5315,5316,7,14,0,0,5316,5317,7,10,0,0,5317,5318,7,17,0,0,5318,5319,7,6,0,0,5319,1058,1,0,0,0,5320,5321,7,14,0,0,5321,5322,7,10,0,0,5322,5323,7,17,0,0,5323,5324,7,6,0,0,5324,5325,7,17,0,0,5325,5326,7,7,0,0,5326,5327,7,23,0,0,5327,1060,1,0,0,0,5328,5329,7,12,0,0,5329,5330,7,10,0,0,5330,5331,7,23,0,0,5331,5332,7,13,0,0,5332,5333,7,10,0,0,5333,5334,7,10,0,0,5334,5335,7,9,0,0,5335,1062,1,0,0,0,5336,5337,7,12,0,0,5337,5338,7,17,0,0,5338,5339,7,27,0,0,5339,1064,1,0,0,0,5340,5341,7,10,0,0,5341,5342,7,26,0,0,5342,5343,7,24,0,0,5343,1066,1,0,0,0,5344,5345,7,25,0,0,5345,5346,7,5,0,0,5346,5347,7,14,0,0,5347,5348,7,16,0,0,5348,5349,7,19,0,0,5349,5350,7,13,0,0,5350,5351,7,17,0,0,5351,5352,7,5,0,0,5352,5353,7,6,0,0,5353,1068,1,0,0,0,5354,5355,7,25,0,0,5355,5356,7,6,0,0,5356,5357,7,19,0,0,5357,5358,7,19,0,0,5358,5359,7,13,0,0,5359,1070,1,0,0,0,5360,5361,7,23,0,0,5361,5362,7,14,0,0,5362,5363,7,12,0,0,5363,1072,1,0,0,0,5364,5365,7,6,0,0,5365,5366,7,14,0,0,5366,5367,7,15,0,0,5367,1074,1,0,0,0,5368,5369,7,6,0,0,5369,5370,7,7,0,0,5370,1076,1,0,0,0,5371,5372,7,6,0,0,5372,5373,7,19,0,0,5373,5374,7,23,0,0,5374,5375,5,49,0,0,5375,5376,5,48,0,0,5376,1078,1,0,0,0,5377,5378,7,15,0,0,5378,5379,7,17,0,0,5379,5380,7,7,0,0,5380,5381,5,95,0,0,5381,5382,7,9,0,0,5382,5383,7,14,0,0,5383,5384,7,5,0,0,5384,5385,7,6,0,0,5385,5386,7,10,0,0,5386,1080,1,0,0,0,5387,5388,7,15,0,0,5388,5389,7,19,0,0,5389,5390,7,12,0,0,5390,1082,1,0,0,0,5391,5392,7,24,0,0,5392,5393,7,17,0,0,5393,1084,1,0,0,0,5394,5395,7,24,0,0,5395,5396,7,19,0,0,5396,5397,7,29,0,0,5397,5398,7,10,0,0,5398,5399,7,13,0,0,5399,1086,1,0,0,0,5400,5401,7,13,0,0,5401,5402,7,5,0,0,5402,5403,7,12,0,0,5403,5404,7,17,0,0,5404,5405,7,5,0,0,5405,5406,7,7,0,0,5406,5407,7,9,0,0,5407,1088,1,0,0,0,5408,5409,7,13,0,0,5409,5410,7,19,0,0,5410,5411,7,22,0,0,5411,5412,7,7,0,0,5412,5413,7,12,0,0,5413,1090,1,0,0,0,5414,5415,7,9,0,0,5415,5416,7,14,0,0,5416,5417,7,5,0,0,5417,5418,7,6,0,0,5418,5419,7,10,0,0,5419,1092,1,0,0,0,5420,5421,7,9,0,0,5421,5422,7,17,0,0,5422,5423,7,23,0,0,5423,5424,7,7,0,0,5424,1094,1,0,0,0,5425,5426,7,9,0,0,5426,5427,7,28,0,0,5427,5428,7,13,0,0,5428,5429,7,16,0,0,5429,1096,1,0,0,0,5430,5431,7,16,0,0,5431,5432,7,13,0,0,5432,5433,7,17,0,0,5433,5434,7,15,0,0,5434,5435,5,95,0,0,5435,5436,7,9,0,0,5436,5437,7,14,0,0,5437,5438,7,5,0,0,5438,5439,7,6,0,0,5439,5440,7,10,0,0,5440,1098,1,0,0,0,5441,5442,7,16,0,0,5442,5443,7,13,0,0,5443,5444,7,22,0,0,5444,5445,7,7,0,0,5445,5446,7,14,0,0,5446,1100,1,0,0,0,5447,5448,7,29,0,0,5448,5449,7,17,0,0,5449,5450,7,12,0,0,5450,5451,7,16,0,0,5451,5452,7,20,0,0,5452,5453,5,95,0,0,5453,5454,7,18,0,0,5454,5455,7,22,0,0,5455,5456,7,14,0,0,5456,5457,7,21,0,0,5457,5458,7,10,0,0,5458,5459,7,16,0,0,5459,1102,1,0,0,0,5460,5461,7,13,0,0,5461,5462,7,5,0,0,5462,5463,7,7,0,0,5463,5464,7,12,0,0,5464,5465,7,19,0,0,5465,5466,7,15,0,0,5466,1104,1,0,0,0,5467,5468,7,9,0,0,5468,5469,7,10,0,0,5469,5470,7,16,0,0,5470,5471,7,9,0,0,5471,5472,7,10,0,0,5472,5473,7,10,0,0,5473,5474,7,12,0,0,5474,1106,1,0,0,0,5475,5476,7,5,0,0,5476,5477,7,14,0,0,5477,5478,7,19,0,0,5478,5479,7,9,0,0,5479,1108,1,0,0,0,5480,5481,7,5,0,0,5481,5482,7,14,0,0,5482,5483,7,19,0,0,5483,5484,7,9,0,0,5484,5485,7,12,0,0,5485,1110,1,0,0,0,5486,5487,7,5,0,0,5487,5488,7,9,0,0,5488,5489,7,17,0,0,5489,5490,7,7,0,0,5490,1112,1,0,0,0,5491,5492,7,5,0,0,5492,5493,7,9,0,0,5493,5494,7,17,0,0,5494,5495,7,7,0,0,5495,5496,7,12,0,0,5496,1114,1,0,0,0,5497,5498,7,5,0,0,5498,5499,7,16,0,0,5499,5500,7,5,0,0,5500,5501,7,7,0,0,5501,1116,1,0,0,0,5502,5503,7,5,0,0,5503,5504,7,16,0,0,5504,5505,7,5,0,0,5505,5506,7,7,0,0,5506,5507,7,12,0,0,5507,1118,1,0,0,0,5508,5509,7,5,0,0,5509,5510,7,16,0,0,5510,5511,7,5,0,0,5511,5512,7,7,0,0,5512,5513,5,50,0,0,5513,1120,1,0,0,0,5514,5515,7,5,0,0,5515,5516,7,16,0,0,5516,5517,7,5,0,0,5517,5518,7,7,0,0,5518,5519,5,50,0,0,5519,5520,7,12,0,0,5520,1122,1,0,0,0,5521,5522,7,14,0,0,5522,5523,7,19,0,0,5523,5524,7,9,0,0,5524,1124,1,0,0,0,5525,5526,7,14,0,0,5526,5527,7,19,0,0,5527,5528,7,9,0,0,5528,5529,7,12,0,0,5529,1126,1,0,0,0,5530,5531,7,14,0,0,5531,5532,7,19,0,0,5532,5533,7,16,0,0,5533,1128,1,0,0,0,5534,5535,7,14,0,0,5535,5536,7,19,0,0,5536,5537,7,16,0,0,5537,5538,7,12,0,0,5538,1130,1,0,0,0,5539,5540,7,9,0,0,5540,5541,7,17,0,0,5541,5542,7,7,0,0,5542,1132,1,0,0,0,5543,5544,7,9,0,0,5544,5545,7,17,0,0,5545,5546,7,7,0,0,5546,5547,7,12,0,0,5547,1134,1,0,0,0,5548,5549,7,16,0,0,5549,5550,7,5,0,0,5550,5551,7,7,0,0,5551,1136,1,0,0,0,5552,5553,7,16,0,0,5553,5554,7,5,0,0,5554,5555,7,7,0,0,5555,5556,7,12,0,0,5556,1138,1,0,0,0,5557,5558,7,9,0,0,5558,5559,7,17,0,0,5559,5560,7,7,0,0,5560,5561,7,20,0,0,5561,1140,1,0,0,0,5562,5563,7,14,0,0,5563,5564,7,19,0,0,5564,5565,7,9,0,0,5565,5566,7,20,0,0,5566,1142,1,0,0,0,5567,5568,7,16,0,0,5568,5569,7,5,0,0,5569,5570,7,7,0,0,5570,5571,7,20,0,0,5571,1144,1,0,0,0,5572,5573,7,5,0,0,5573,5574,7,9,0,0,5574,5575,7,17,0,0,5575,5576,7,7,0,0,5576,5577,7,20,0,0,5577,1146,1,0,0,0,5578,5579,7,5,0,0,5579,5580,7,14,0,0,5580,5581,7,19,0,0,5581,5582,7,9,0,0,5582,5583,7,20,0,0,5583,1148,1,0,0,0,5584,5585,7,5,0,0,5585,5586,7,16,0,0,5586,5587,7,5,0,0,5587,5588,7,7,0,0,5588,5589,7,20,0,0,5589,1150,1,0,0,0,5590,5591,7,18,0,0,5591,5592,7,17,0,0,5592,5593,7,16,0,0,5593,5594,5,95,0,0,5594,5595,7,6,0,0,5595,5596,7,10,0,0,5596,5597,7,7,0,0,5597,5598,7,23,0,0,5598,5599,7,16,0,0,5599,5600,7,20,0,0,5600,1152,1,0,0,0,5601,5602,7,14,0,0,5602,5603,7,20,0,0,5603,5604,7,5,0,0,5604,5605,7,13,0,0,5605,5606,5,95,0,0,5606,5607,7,6,0,0,5607,5608,7,10,0,0,5608,5609,7,7,0,0,5609,5610,7,23,0,0,5610,5611,7,16,0,0,5611,5612,7,20,0,0,5612,1154,1,0,0,0,5613,5614,7,14,0,0,5614,5615,7,20,0,0,5615,5616,7,5,0,0,5616,5617,7,13,0,0,5617,5618,7,5,0,0,5618,5619,7,14,0,0,5619,5620,7,16,0,0,5620,5621,7,10,0,0,5621,5622,7,13,0,0,5622,5623,5,95,0,0,5623,5624,7,6,0,0,5624,5625,7,10,0,0,5625,5626,7,7,0,0,5626,5627,7,23,0,0,5627,5628,7,16,0,0,5628,5629,7,20,0,0,5629,1156,1,0,0,0,5630,5631,7,6,0,0,5631,5632,7,19,0,0,5632,5633,7,29,0,0,5633,5634,7,10,0,0,5634,5635,7,13,0,0,5635,1158,1,0,0,0,5636,5637,7,19,0,0,5637,5638,7,14,0,0,5638,5639,7,16,0,0,5639,5640,7,10,0,0,5640,5641,7,16,0,0,5641,5642,5,95,0,0,5642,5643,7,6,0,0,5643,5644,7,10,0,0,5644,5645,7,7,0,0,5645,5646,7,23,0,0,5646,5647,7,16,0,0,5647,5648,7,20,0,0,5648,1160,1,0,0,0,5649,5650,7,22,0,0,5650,5651,7,24,0,0,5651,5652,7,24,0,0,5652,5653,7,10,0,0,5653,5654,7,13,0,0,5654,1162,1,0,0,0,5655,5656,7,5,0,0,5656,5657,7,9,0,0,5657,5658,7,14,0,0,5658,5659,7,17,0,0,5659,5660,7,17,0,0,5660,1164,1,0,0,0,5661,5662,7,18,0,0,5662,5663,7,16,0,0,5663,5664,7,13,0,0,5664,5665,7,17,0,0,5665,5666,7,15,0,0,5666,1166,1,0,0,0,5667,5668,7,14,0,0,5668,5669,7,20,0,0,5669,5670,7,13,0,0,5670,1168,1,0,0,0,5671,5672,7,14,0,0,5672,5673,7,19,0,0,5673,5674,7,7,0,0,5674,5675,7,14,0,0,5675,5676,7,5,0,0,5676,5677,7,16,0,0,5677,1170,1,0,0,0,5678,5679,7,14,0,0,5679,5680,7,19,0,0,5680,5681,7,7,0,0,5681,5682,7,14,0,0,5682,5683,7,5,0,0,5683,5684,7,16,0,0,5684,5685,5,95,0,0,5685,5686,7,29,0,0,5686,5687,7,9,0,0,5687,1172,1,0,0,0,5688,5689,7,25,0,0,5689,5690,7,19,0,0,5690,5691,7,13,0,0,5691,5692,7,15,0,0,5692,5693,7,5,0,0,5693,5694,7,16,0,0,5694,1174,1,0,0,0,5695,5696,7,17,0,0,5696,5697,7,7,0,0,5697,5698,7,17,0,0,5698,5699,7,16,0,0,5699,5700,7,14,0,0,5700,5701,7,5,0,0,5701,5702,7,24,0,0,5702,1176,1,0,0,0,5703,5704,7,6,0,0,5704,5705,7,10,0,0,5705,5706,7,7,0,0,5706,5707,7,23,0,0,5707,5708,7,16,0,0,5708,5709,7,20,0,0,5709,1178,1,0,0,0,5710,5711,7,6,0,0,5711,5712,7,24,0,0,5712,5713,7,5,0,0,5713,5714,7,12,0,0,5714,1180,1,0,0,0,5715,5716,7,6,0,0,5716,5717,7,16,0,0,5717,5718,7,13,0,0,5718,5719,7,17,0,0,5719,5720,7,15,0,0,5720,1182,1,0,0,0,5721,5722,7,15,0,0,5722,5723,7,12,0,0,5723,5724,5,53,0,0,5724,1184,1,0,0,0,5725,5726,7,24,0,0,5726,5727,7,5,0,0,5727,5728,7,13,0,0,5728,5729,7,9,0,0,5729,5730,7,10,0,0,5730,5731,5,95,0,0,5731,5732,7,17,0,0,5732,5733,7,12,0,0,5733,5734,7,10,0,0,5734,5735,7,7,0,0,5735,5736,7,16,0,0,5736,1186,1,0,0,0,5737,5738,7,24,0,0,5738,5739,7,23,0,0,5739,5740,5,95,0,0,5740,5741,7,14,0,0,5741,5742,7,6,0,0,5742,5743,7,17,0,0,5743,5744,7,10,0,0,5744,5745,7,7,0,0,5745,5746,7,16,0,0,5746,5747,5,95,0,0,5747,5748,7,10,0,0,5748,5749,7,7,0,0,5749,5750,7,14,0,0,5750,5751,7,19,0,0,5751,5752,7,12,0,0,5752,5753,7,17,0,0,5753,5754,7,7,0,0,5754,5755,7,23,0,0,5755,1188,1,0,0,0,5756,5757,7,28,0,0,5757,5758,7,22,0,0,5758,5759,7,19,0,0,5759,5760,7,16,0,0,5760,5761,7,10,0,0,5761,5762,5,95,0,0,5762,5763,7,17,0,0,5763,5764,7,12,0,0,5764,5765,7,10,0,0,5765,5766,7,7,0,0,5766,5767,7,16,0,0,5767,1190,1,0,0,0,5768,5769,7,28,0,0,5769,5770,7,22,0,0,5770,5771,7,19,0,0,5771,5772,7,16,0,0,5772,5773,7,10,0,0,5773,5774,5,95,0,0,5774,5775,7,6,0,0,5775,5776,7,17,0,0,5776,5777,7,16,0,0,5777,5778,7,10,0,0,5778,5779,7,13,0,0,5779,5780,7,5,0,0,5780,5781,7,6,0,0,5781,1192,1,0,0,0,5782,5783,7,28,0,0,5783,5784,7,22,0,0,5784,5785,7,19,0,0,5785,5786,7,16,0,0,5786,5787,7,10,0,0,5787,5788,5,95,0,0,5788,5789,7,7,0,0,5789,5790,7,22,0,0,5790,5791,7,6,0,0,5791,5792,7,6,0,0,5792,5793,7,5,0,0,5793,5794,7,18,0,0,5794,5795,7,6,0,0,5795,5796,7,10,0,0,5796,1194,1,0,0,0,5797,5798,7,13,0,0,5798,5799,7,10,0,0,5799,5800,7,23,0,0,5800,5801,7,10,0,0,5801,5802,7,26,0,0,5802,5803,7,24,0,0,5803,5804,5,95,0,0,5804,5805,7,14,0,0,5805,5806,7,19,0,0,5806,5807,7,22,0,0,5807,5808,7,7,0,0,5808,5809,7,16,0,0,5809,1196,1,0,0,0,5810,5811,7,13,0,0,5811,5812,7,10,0,0,5812,5813,7,23,0,0,5813,5814,7,10,0,0,5814,5815,7,26,0,0,5815,5816,7,24,0,0,5816,5817,5,95,0,0,5817,5818,7,17,0,0,5818,5819,7,7,0,0,5819,5820,7,9,0,0,5820,5821,7,16,0,0,5821,5822,7,13,0,0,5822,1198,1,0,0,0,5823,5824,7,13,0,0,5824,5825,7,10,0,0,5825,5826,7,23,0,0,5826,5827,7,10,0,0,5827,5828,7,26,0,0,5828,5829,7,24,0,0,5829,5830,5,95,0,0,5830,5831,7,6,0,0,5831,5832,7,17,0,0,5832,5833,7,21,0,0,5833,5834,7,10,0,0,5834,1200,1,0,0,0,5835,5836,7,13,0,0,5836,5837,7,10,0,0,5837,5838,7,23,0,0,5838,5839,7,10,0,0,5839,5840,7,26,0,0,5840,5841,7,24,0,0,5841,5842,5,95,0,0,5842,5843,7,15,0,0,5843,5844,7,5,0,0,5844,5845,7,16,0,0,5845,5846,7,14,0,0,5846,5847,7,20,0,0,5847,1202,1,0,0,0,5848,5849,7,13,0,0,5849,5850,7,10,0,0,5850,5851,7,23,0,0,5851,5852,7,10,0,0,5852,5853,7,26,0,0,5853,5854,7,24,0,0,5854,5855,5,95,0,0,5855,5856,7,15,0,0,5856,5857,7,5,0,0,5857,5858,7,16,0,0,5858,5859,7,14,0,0,5859,5860,7,20,0,0,5860,5861,7,10,0,0,5861,5862,7,9,0,0,5862,1204,1,0,0,0,5863,5864,7,13,0,0,5864,5865,7,10,0,0,5865,5866,7,23,0,0,5866,5867,7,10,0,0,5867,5868,7,26,0,0,5868,5869,7,24,0,0,5869,5870,5,95,0,0,5870,5871,7,13,0,0,5871,5872,7,10,0,0,5872,5873,7,24,0,0,5873,5874,7,6,0,0,5874,5875,7,5,0,0,5875,5876,7,14,0,0,5876,5877,7,10,0,0,5877,1206,1,0,0,0,5878,5879,7,13,0,0,5879,5880,7,10,0,0,5880,5881,7,23,0,0,5881,5882,7,10,0,0,5882,5883,7,26,0,0,5883,5884,7,24,0,0,5884,5885,5,95,0,0,5885,5886,7,9,0,0,5886,5887,7,24,0,0,5887,5888,7,6,0,0,5888,5889,7,17,0,0,5889,5890,7,16,0,0,5890,5891,5,95,0,0,5891,5892,7,16,0,0,5892,5893,7,19,0,0,5893,5894,5,95,0,0,5894,5895,7,5,0,0,5895,5896,7,13,0,0,5896,5897,7,13,0,0,5897,5898,7,5,0,0,5898,5899,7,8,0,0,5899,1208,1,0,0,0,5900,5901,7,13,0,0,5901,5902,7,10,0,0,5902,5903,7,23,0,0,5903,5904,7,10,0,0,5904,5905,7,26,0,0,5905,5906,7,24,0,0,5906,5907,5,95,0,0,5907,5908,7,9,0,0,5908,5909,7,24,0,0,5909,5910,7,6,0,0,5910,5911,7,17,0,0,5911,5912,7,16,0,0,5912,5913,5,95,0,0,5913,5914,7,16,0,0,5914,5915,7,19,0,0,5915,5916,5,95,0,0,5916,5917,7,16,0,0,5917,5918,7,5,0,0,5918,5919,7,18,0,0,5919,5920,7,6,0,0,5920,5921,7,10,0,0,5921,1210,1,0,0,0,5922,5923,7,13,0,0,5923,5924,7,10,0,0,5924,5925,7,23,0,0,5925,5926,7,10,0,0,5926,5927,7,26,0,0,5927,5928,7,24,0,0,5928,5929,5,95,0,0,5929,5930,7,9,0,0,5930,5931,7,22,0,0,5931,5932,7,18,0,0,5932,5933,7,9,0,0,5933,5934,7,16,0,0,5934,5935,7,13,0,0,5935,1212,1,0,0,0,5936,5937,7,13,0,0,5937,5938,7,10,0,0,5938,5939,7,24,0,0,5939,5940,7,10,0,0,5940,5941,7,5,0,0,5941,5942,7,16,0,0,5942,1214,1,0,0,0,5943,5944,7,13,0,0,5944,5945,7,24,0,0,5945,5946,7,5,0,0,5946,5947,7,12,0,0,5947,1216,1,0,0,0,5948,5949,7,13,0,0,5949,5950,7,16,0,0,5950,5951,7,13,0,0,5951,5952,7,17,0,0,5952,5953,7,15,0,0,5953,1218,1,0,0,0,5954,5955,7,9,0,0,5955,5956,7,24,0,0,5956,5957,7,6,0,0,5957,5958,7,17,0,0,5958,5959,7,16,0,0,5959,5960,5,95,0,0,5960,5961,7,24,0,0,5961,5962,7,5,0,0,5962,5963,7,13,0,0,5963,5964,7,16,0,0,5964,1220,1,0,0,0,5965,5966,7,9,0,0,5966,5967,7,16,0,0,5967,5968,7,5,0,0,5968,5969,7,13,0,0,5969,5970,7,16,0,0,5970,5971,7,9,0,0,5971,5972,5,95,0,0,5972,5973,7,29,0,0,5973,5974,7,17,0,0,5974,5975,7,16,0,0,5975,5976,7,20,0,0,5976,1222,1,0,0,0,5977,5978,7,9,0,0,5978,5979,7,16,0,0,5979,5980,7,13,0,0,5980,5981,7,17,0,0,5981,5982,7,7,0,0,5982,5983,7,23,0,0,5983,5984,5,95,0,0,5984,5985,7,16,0,0,5985,5986,7,19,0,0,5986,5987,5,95,0,0,5987,5988,7,5,0,0,5988,5989,7,13,0,0,5989,5990,7,13,0,0,5990,5991,7,5,0,0,5991,5992,7,8,0,0,5992,1224,1,0,0,0,5993,5994,7,9,0,0,5994,5995,7,16,0,0,5995,5996,7,13,0,0,5996,5997,7,17,0,0,5997,5998,7,7,0,0,5998,5999,7,23,0,0,5999,6e3,5,95,0,0,6e3,6001,7,16,0,0,6001,6002,7,19,0,0,6002,6003,5,95,0,0,6003,6004,7,16,0,0,6004,6005,7,5,0,0,6005,6006,7,18,0,0,6006,6007,7,6,0,0,6007,6008,7,10,0,0,6008,1226,1,0,0,0,6009,6010,7,9,0,0,6010,6011,7,16,0,0,6011,6012,7,13,0,0,6012,6013,7,24,0,0,6013,6014,7,19,0,0,6014,6015,7,9,0,0,6015,1228,1,0,0,0,6016,6017,7,9,0,0,6017,6018,7,22,0,0,6018,6019,7,18,0,0,6019,6020,7,9,0,0,6020,6021,7,16,0,0,6021,6022,7,13,0,0,6022,1230,1,0,0,0,6023,6024,7,16,0,0,6024,6025,7,19,0,0,6025,6026,5,95,0,0,6026,6027,7,5,0,0,6027,6028,7,9,0,0,6028,6029,7,14,0,0,6029,6030,7,17,0,0,6030,6031,7,17,0,0,6031,1232,1,0,0,0,6032,6033,7,16,0,0,6033,6034,7,19,0,0,6034,6035,5,95,0,0,6035,6036,7,20,0,0,6036,6037,7,10,0,0,6037,6038,7,26,0,0,6038,1234,1,0,0,0,6039,6040,7,16,0,0,6040,6041,7,13,0,0,6041,6042,7,5,0,0,6042,6043,7,7,0,0,6043,6044,7,9,0,0,6044,6045,7,6,0,0,6045,6046,7,5,0,0,6046,6047,7,16,0,0,6047,6048,7,10,0,0,6048,1236,1,0,0,0,6049,6050,7,22,0,0,6050,6051,7,7,0,0,6051,6052,7,17,0,0,6052,6053,7,9,0,0,6053,6054,7,16,0,0,6054,6055,7,13,0,0,6055,1238,1,0,0,0,6056,6057,7,5,0,0,6057,6058,7,23,0,0,6058,6059,7,10,0,0,6059,1240,1,0,0,0,6060,6061,7,14,0,0,6061,6062,7,6,0,0,6062,6063,7,19,0,0,6063,6064,7,14,0,0,6064,6065,7,21,0,0,6065,6066,5,95,0,0,6066,6067,7,16,0,0,6067,6068,7,17,0,0,6068,6069,7,15,0,0,6069,6070,7,10,0,0,6070,6071,7,9,0,0,6071,6072,7,16,0,0,6072,6073,7,5,0,0,6073,6074,7,15,0,0,6074,6075,7,24,0,0,6075,1242,1,0,0,0,6076,6077,7,12,0,0,6077,6078,7,5,0,0,6078,6079,7,16,0,0,6079,6080,7,10,0,0,6080,6081,5,95,0,0,6081,6082,7,18,0,0,6082,6083,7,17,0,0,6083,6084,7,7,0,0,6084,1244,1,0,0,0,6085,6086,7,12,0,0,6086,6087,7,5,0,0,6087,6088,7,16,0,0,6088,6089,7,10,0,0,6089,6090,5,95,0,0,6090,6091,7,24,0,0,6091,6092,7,5,0,0,6092,6093,7,13,0,0,6093,6094,7,16,0,0,6094,1246,1,0,0,0,6095,6096,7,12,0,0,6096,6097,7,5,0,0,6097,6098,7,16,0,0,6098,6099,7,10,0,0,6099,6100,5,95,0,0,6100,6101,7,16,0,0,6101,6102,7,13,0,0,6102,6103,7,22,0,0,6103,6104,7,7,0,0,6104,6105,7,14,0,0,6105,1248,1,0,0,0,6106,6107,7,17,0,0,6107,6108,7,9,0,0,6108,6109,7,25,0,0,6109,6110,7,17,0,0,6110,6111,7,7,0,0,6111,6112,7,17,0,0,6112,6113,7,16,0,0,6113,6114,7,10,0,0,6114,1250,1,0,0,0,6115,6116,7,30,0,0,6116,6117,7,22,0,0,6117,6118,7,9,0,0,6118,6119,7,16,0,0,6119,6120,7,17,0,0,6120,6121,7,25,0,0,6121,6122,7,8,0,0,6122,6123,5,95,0,0,6123,6124,7,12,0,0,6124,6125,7,5,0,0,6125,6126,7,8,0,0,6126,6127,7,9,0,0,6127,1252,1,0,0,0,6128,6129,7,30,0,0,6129,6130,7,22,0,0,6130,6131,7,9,0,0,6131,6132,7,16,0,0,6132,6133,7,17,0,0,6133,6134,7,25,0,0,6134,6135,7,8,0,0,6135,6136,5,95,0,0,6136,6137,7,20,0,0,6137,6138,7,19,0,0,6138,6139,7,22,0,0,6139,6140,7,13,0,0,6140,6141,7,9,0,0,6141,1254,1,0,0,0,6142,6143,7,30,0,0,6143,6144,7,22,0,0,6144,6145,7,9,0,0,6145,6146,7,16,0,0,6146,6147,7,17,0,0,6147,6148,7,25,0,0,6148,6149,7,8,0,0,6149,6150,5,95,0,0,6150,6151,7,17,0,0,6151,6152,7,7,0,0,6152,6153,7,16,0,0,6153,6154,7,10,0,0,6154,6155,7,13,0,0,6155,6156,7,27,0,0,6156,6157,7,5,0,0,6157,6158,7,6,0,0,6158,1256,1,0,0,0,6159,6160,7,15,0,0,6160,6161,7,5,0,0,6161,6162,7,21,0,0,6162,6163,7,10,0,0,6163,6164,5,95,0,0,6164,6165,7,12,0,0,6165,6166,7,5,0,0,6166,6167,7,16,0,0,6167,6168,7,10,0,0,6168,1258,1,0,0,0,6169,6170,7,15,0,0,6170,6171,7,5,0,0,6171,6172,7,21,0,0,6172,6173,7,10,0,0,6173,6174,5,95,0,0,6174,6175,7,17,0,0,6175,6176,7,7,0,0,6176,6177,7,16,0,0,6177,6178,7,10,0,0,6178,6179,7,13,0,0,6179,6180,7,27,0,0,6180,6181,7,5,0,0,6181,6182,7,6,0,0,6182,1260,1,0,0,0,6183,6184,7,15,0,0,6184,6185,7,5,0,0,6185,6186,7,21,0,0,6186,6187,7,10,0,0,6187,6188,5,95,0,0,6188,6189,7,16,0,0,6189,6190,7,17,0,0,6190,6191,7,15,0,0,6191,6192,7,10,0,0,6192,1262,1,0,0,0,6193,6194,7,15,0,0,6194,6195,7,5,0,0,6195,6196,7,21,0,0,6196,6197,7,10,0,0,6197,6198,5,95,0,0,6198,6199,7,16,0,0,6199,6200,7,17,0,0,6200,6201,7,15,0,0,6201,6202,7,10,0,0,6202,6203,7,9,0,0,6203,6204,7,16,0,0,6204,6205,7,5,0,0,6205,6206,7,15,0,0,6206,6207,7,24,0,0,6207,1264,1,0,0,0,6208,6209,7,15,0,0,6209,6210,7,5,0,0,6210,6211,7,21,0,0,6211,6212,7,10,0,0,6212,6213,5,95,0,0,6213,6214,7,16,0,0,6214,6215,7,17,0,0,6215,6216,7,15,0,0,6216,6217,7,10,0,0,6217,6218,7,9,0,0,6218,6219,7,16,0,0,6219,6220,7,5,0,0,6220,6221,7,15,0,0,6221,6222,7,24,0,0,6222,6223,7,16,0,0,6223,6224,7,11,0,0,6224,1266,1,0,0,0,6225,6226,7,7,0,0,6226,6227,7,19,0,0,6227,6228,7,29,0,0,6228,1268,1,0,0,0,6229,6230,7,9,0,0,6230,6231,7,16,0,0,6231,6232,7,5,0,0,6232,6233,7,16,0,0,6233,6234,7,10,0,0,6234,6235,7,15,0,0,6235,6236,7,10,0,0,6236,6237,7,7,0,0,6237,6238,7,16,0,0,6238,6239,5,95,0,0,6239,6240,7,16,0,0,6240,6241,7,17,0,0,6241,6242,7,15,0,0,6242,6243,7,10,0,0,6243,6244,7,9,0,0,6244,6245,7,16,0,0,6245,6246,7,5,0,0,6246,6247,7,15,0,0,6247,6248,7,24,0,0,6248,1270,1,0,0,0,6249,6250,7,16,0,0,6250,6251,7,17,0,0,6251,6252,7,15,0,0,6252,6253,7,10,0,0,6253,6254,7,19,0,0,6254,6255,7,25,0,0,6255,6256,7,12,0,0,6256,6257,7,5,0,0,6257,6258,7,8,0,0,6258,1272,1,0,0,0,6259,6260,7,16,0,0,6260,6261,7,13,0,0,6261,6262,7,5,0,0,6262,6263,7,7,0,0,6263,6264,7,9,0,0,6264,6265,7,5,0,0,6265,6266,7,14,0,0,6266,6267,7,16,0,0,6267,6268,7,17,0,0,6268,6269,7,19,0,0,6269,6270,7,7,0,0,6270,6271,5,95,0,0,6271,6272,7,16,0,0,6272,6273,7,17,0,0,6273,6274,7,15,0,0,6274,6275,7,10,0,0,6275,6276,7,9,0,0,6276,6277,7,16,0,0,6277,6278,7,5,0,0,6278,6279,7,15,0,0,6279,6280,7,24,0,0,6280,1274,1,0,0,0,6281,6282,7,16,0,0,6282,6283,7,19,0,0,6283,6284,5,95,0,0,6284,6285,7,16,0,0,6285,6286,7,17,0,0,6286,6287,7,15,0,0,6287,6288,7,10,0,0,6288,6289,7,9,0,0,6289,6290,7,16,0,0,6290,6291,7,5,0,0,6291,6292,7,15,0,0,6292,6293,7,24,0,0,6293,1276,1,0,0,0,6294,6295,7,16,0,0,6295,6296,7,19,0,0,6296,6297,5,95,0,0,6297,6298,7,14,0,0,6298,6299,7,20,0,0,6299,6300,7,5,0,0,6300,6301,7,13,0,0,6301,1278,1,0,0,0,6302,6303,7,16,0,0,6303,6304,7,19,0,0,6304,6305,5,95,0,0,6305,6306,7,12,0,0,6306,6307,7,5,0,0,6307,6308,7,16,0,0,6308,6309,7,10,0,0,6309,1280,1,0,0,0,6310,6311,7,16,0,0,6311,6312,7,19,0,0,6312,6313,5,95,0,0,6313,6314,7,7,0,0,6314,6315,7,22,0,0,6315,6316,7,15,0,0,6316,6317,7,18,0,0,6317,6318,7,10,0,0,6318,6319,7,13,0,0,6319,1282,1,0,0,0,6320,6324,3,1285,640,0,6321,6323,3,1287,641,0,6322,6321,1,0,0,0,6323,6326,1,0,0,0,6324,6322,1,0,0,0,6324,6325,1,0,0,0,6325,1284,1,0,0,0,6326,6324,1,0,0,0,6327,6334,7,31,0,0,6328,6329,7,32,0,0,6329,6334,4,640,6,0,6330,6331,7,33,0,0,6331,6332,7,34,0,0,6332,6334,4,640,7,0,6333,6327,1,0,0,0,6333,6328,1,0,0,0,6333,6330,1,0,0,0,6334,1286,1,0,0,0,6335,6338,3,1289,642,0,6336,6338,5,36,0,0,6337,6335,1,0,0,0,6337,6336,1,0,0,0,6338,1288,1,0,0,0,6339,6342,3,1285,640,0,6340,6342,7,0,0,0,6341,6339,1,0,0,0,6341,6340,1,0,0,0,6342,1290,1,0,0,0,6343,6344,3,1293,644,0,6344,6345,5,34,0,0,6345,1292,1,0,0,0,6346,6352,5,34,0,0,6347,6348,5,34,0,0,6348,6351,5,34,0,0,6349,6351,8,35,0,0,6350,6347,1,0,0,0,6350,6349,1,0,0,0,6351,6354,1,0,0,0,6352,6350,1,0,0,0,6352,6353,1,0,0,0,6353,1294,1,0,0,0,6354,6352,1,0,0,0,6355,6356,3,1297,646,0,6356,6357,5,34,0,0,6357,1296,1,0,0,0,6358,6364,5,34,0,0,6359,6360,5,34,0,0,6360,6363,5,34,0,0,6361,6363,8,36,0,0,6362,6359,1,0,0,0,6362,6361,1,0,0,0,6363,6366,1,0,0,0,6364,6362,1,0,0,0,6364,6365,1,0,0,0,6365,1298,1,0,0,0,6366,6364,1,0,0,0,6367,6368,7,22,0,0,6368,6369,5,38,0,0,6369,6370,3,1291,643,0,6370,1300,1,0,0,0,6371,6372,7,22,0,0,6372,6373,5,38,0,0,6373,6374,3,1293,644,0,6374,1302,1,0,0,0,6375,6376,7,22,0,0,6376,6377,5,38,0,0,6377,6378,3,1295,645,0,6378,1304,1,0,0,0,6379,6380,7,22,0,0,6380,6381,5,38,0,0,6381,6382,3,1297,646,0,6382,1306,1,0,0,0,6383,6384,3,1309,652,0,6384,6385,5,39,0,0,6385,1308,1,0,0,0,6386,6392,5,39,0,0,6387,6388,5,39,0,0,6388,6391,5,39,0,0,6389,6391,8,37,0,0,6390,6387,1,0,0,0,6390,6389,1,0,0,0,6391,6394,1,0,0,0,6392,6390,1,0,0,0,6392,6393,1,0,0,0,6393,1310,1,0,0,0,6394,6392,1,0,0,0,6395,6396,7,10,0,0,6396,6397,5,39,0,0,6397,6398,1,0,0,0,6398,6399,6,653,2,0,6399,6400,6,653,3,0,6400,1312,1,0,0,0,6401,6402,3,1315,655,0,6402,6403,5,39,0,0,6403,1314,1,0,0,0,6404,6405,7,22,0,0,6405,6406,5,38,0,0,6406,6407,3,1309,652,0,6407,1316,1,0,0,0,6408,6410,5,36,0,0,6409,6411,3,1319,657,0,6410,6409,1,0,0,0,6410,6411,1,0,0,0,6411,6412,1,0,0,0,6412,6413,5,36,0,0,6413,6414,6,656,4,0,6414,6415,1,0,0,0,6415,6416,6,656,5,0,6416,1318,1,0,0,0,6417,6421,3,1285,640,0,6418,6420,3,1289,642,0,6419,6418,1,0,0,0,6420,6423,1,0,0,0,6421,6419,1,0,0,0,6421,6422,1,0,0,0,6422,1320,1,0,0,0,6423,6421,1,0,0,0,6424,6425,3,1323,659,0,6425,6426,5,39,0,0,6426,1322,1,0,0,0,6427,6428,7,18,0,0,6428,6432,5,39,0,0,6429,6431,7,38,0,0,6430,6429,1,0,0,0,6431,6434,1,0,0,0,6432,6430,1,0,0,0,6432,6433,1,0,0,0,6433,1324,1,0,0,0,6434,6432,1,0,0,0,6435,6436,3,1327,661,0,6436,6437,5,39,0,0,6437,1326,1,0,0,0,6438,6439,7,18,0,0,6439,6440,3,1309,652,0,6440,1328,1,0,0,0,6441,6442,3,1331,663,0,6442,6443,5,39,0,0,6443,1330,1,0,0,0,6444,6445,7,26,0,0,6445,6449,5,39,0,0,6446,6448,7,39,0,0,6447,6446,1,0,0,0,6448,6451,1,0,0,0,6449,6447,1,0,0,0,6449,6450,1,0,0,0,6450,1332,1,0,0,0,6451,6449,1,0,0,0,6452,6453,3,1335,665,0,6453,6454,5,39,0,0,6454,1334,1,0,0,0,6455,6456,7,26,0,0,6456,6457,3,1309,652,0,6457,1336,1,0,0,0,6458,6459,3,1343,669,0,6459,1338,1,0,0,0,6460,6461,3,1343,669,0,6461,6462,5,46,0,0,6462,6463,5,46,0,0,6463,6464,1,0,0,0,6464,6465,6,667,6,0,6465,1340,1,0,0,0,6466,6467,3,1343,669,0,6467,6469,5,46,0,0,6468,6470,3,1343,669,0,6469,6468,1,0,0,0,6469,6470,1,0,0,0,6470,6476,1,0,0,0,6471,6473,7,10,0,0,6472,6474,7,1,0,0,6473,6472,1,0,0,0,6473,6474,1,0,0,0,6474,6475,1,0,0,0,6475,6477,3,1343,669,0,6476,6471,1,0,0,0,6476,6477,1,0,0,0,6477,6495,1,0,0,0,6478,6479,5,46,0,0,6479,6485,3,1343,669,0,6480,6482,7,10,0,0,6481,6483,7,1,0,0,6482,6481,1,0,0,0,6482,6483,1,0,0,0,6483,6484,1,0,0,0,6484,6486,3,1343,669,0,6485,6480,1,0,0,0,6485,6486,1,0,0,0,6486,6495,1,0,0,0,6487,6488,3,1343,669,0,6488,6490,7,10,0,0,6489,6491,7,1,0,0,6490,6489,1,0,0,0,6490,6491,1,0,0,0,6491,6492,1,0,0,0,6492,6493,3,1343,669,0,6493,6495,1,0,0,0,6494,6466,1,0,0,0,6494,6478,1,0,0,0,6494,6487,1,0,0,0,6495,1342,1,0,0,0,6496,6498,7,0,0,0,6497,6496,1,0,0,0,6498,6499,1,0,0,0,6499,6497,1,0,0,0,6499,6500,1,0,0,0,6500,1344,1,0,0,0,6501,6502,5,58,0,0,6502,6506,7,40,0,0,6503,6505,7,41,0,0,6504,6503,1,0,0,0,6505,6508,1,0,0,0,6506,6504,1,0,0,0,6506,6507,1,0,0,0,6507,1346,1,0,0,0,6508,6506,1,0,0,0,6509,6510,5,58,0,0,6510,6511,5,34,0,0,6511,6519,1,0,0,0,6512,6513,5,92,0,0,6513,6518,9,0,0,0,6514,6515,5,34,0,0,6515,6518,5,34,0,0,6516,6518,8,42,0,0,6517,6512,1,0,0,0,6517,6514,1,0,0,0,6517,6516,1,0,0,0,6518,6521,1,0,0,0,6519,6517,1,0,0,0,6519,6520,1,0,0,0,6520,6522,1,0,0,0,6521,6519,1,0,0,0,6522,6523,5,34,0,0,6523,1348,1,0,0,0,6524,6526,7,43,0,0,6525,6524,1,0,0,0,6526,6527,1,0,0,0,6527,6525,1,0,0,0,6527,6528,1,0,0,0,6528,6529,1,0,0,0,6529,6530,6,672,7,0,6530,1350,1,0,0,0,6531,6533,5,13,0,0,6532,6534,5,10,0,0,6533,6532,1,0,0,0,6533,6534,1,0,0,0,6534,6537,1,0,0,0,6535,6537,5,10,0,0,6536,6531,1,0,0,0,6536,6535,1,0,0,0,6537,6538,1,0,0,0,6538,6539,6,673,7,0,6539,1352,1,0,0,0,6540,6541,5,45,0,0,6541,6542,5,45,0,0,6542,6546,1,0,0,0,6543,6545,8,44,0,0,6544,6543,1,0,0,0,6545,6548,1,0,0,0,6546,6544,1,0,0,0,6546,6547,1,0,0,0,6547,6549,1,0,0,0,6548,6546,1,0,0,0,6549,6550,6,674,8,0,6550,1354,1,0,0,0,6551,6552,5,47,0,0,6552,6553,5,42,0,0,6553,6576,1,0,0,0,6554,6556,5,47,0,0,6555,6554,1,0,0,0,6556,6559,1,0,0,0,6557,6555,1,0,0,0,6557,6558,1,0,0,0,6558,6560,1,0,0,0,6559,6557,1,0,0,0,6560,6575,3,1355,675,0,6561,6575,8,45,0,0,6562,6564,5,47,0,0,6563,6562,1,0,0,0,6564,6565,1,0,0,0,6565,6563,1,0,0,0,6565,6566,1,0,0,0,6566,6567,1,0,0,0,6567,6575,8,45,0,0,6568,6570,5,42,0,0,6569,6568,1,0,0,0,6570,6571,1,0,0,0,6571,6569,1,0,0,0,6571,6572,1,0,0,0,6572,6573,1,0,0,0,6573,6575,8,45,0,0,6574,6557,1,0,0,0,6574,6561,1,0,0,0,6574,6563,1,0,0,0,6574,6569,1,0,0,0,6575,6578,1,0,0,0,6576,6574,1,0,0,0,6576,6577,1,0,0,0,6577,6582,1,0,0,0,6578,6576,1,0,0,0,6579,6581,5,42,0,0,6580,6579,1,0,0,0,6581,6584,1,0,0,0,6582,6580,1,0,0,0,6582,6583,1,0,0,0,6583,6585,1,0,0,0,6584,6582,1,0,0,0,6585,6586,5,42,0,0,6586,6587,5,47,0,0,6587,6588,1,0,0,0,6588,6589,6,675,8,0,6589,1356,1,0,0,0,6590,6591,5,47,0,0,6591,6592,5,42,0,0,6592,6617,1,0,0,0,6593,6595,5,47,0,0,6594,6593,1,0,0,0,6595,6598,1,0,0,0,6596,6594,1,0,0,0,6596,6597,1,0,0,0,6597,6599,1,0,0,0,6598,6596,1,0,0,0,6599,6616,3,1355,675,0,6600,6616,8,45,0,0,6601,6603,5,47,0,0,6602,6601,1,0,0,0,6603,6604,1,0,0,0,6604,6602,1,0,0,0,6604,6605,1,0,0,0,6605,6606,1,0,0,0,6606,6614,8,45,0,0,6607,6609,5,42,0,0,6608,6607,1,0,0,0,6609,6610,1,0,0,0,6610,6608,1,0,0,0,6610,6611,1,0,0,0,6611,6612,1,0,0,0,6612,6614,8,45,0,0,6613,6602,1,0,0,0,6613,6608,1,0,0,0,6614,6616,1,0,0,0,6615,6596,1,0,0,0,6615,6600,1,0,0,0,6615,6613,1,0,0,0,6616,6619,1,0,0,0,6617,6615,1,0,0,0,6617,6618,1,0,0,0,6618,6637,1,0,0,0,6619,6617,1,0,0,0,6620,6622,5,47,0,0,6621,6620,1,0,0,0,6622,6623,1,0,0,0,6623,6621,1,0,0,0,6623,6624,1,0,0,0,6624,6638,1,0,0,0,6625,6627,5,42,0,0,6626,6625,1,0,0,0,6627,6628,1,0,0,0,6628,6626,1,0,0,0,6628,6629,1,0,0,0,6629,6638,1,0,0,0,6630,6632,5,47,0,0,6631,6630,1,0,0,0,6632,6635,1,0,0,0,6633,6631,1,0,0,0,6633,6634,1,0,0,0,6634,6636,1,0,0,0,6635,6633,1,0,0,0,6636,6638,3,1357,676,0,6637,6621,1,0,0,0,6637,6626,1,0,0,0,6637,6633,1,0,0,0,6637,6638,1,0,0,0,6638,6639,1,0,0,0,6639,6640,6,676,9,0,6640,1358,1,0,0,0,6641,6653,5,92,0,0,6642,6652,8,46,0,0,6643,6647,5,34,0,0,6644,6646,8,47,0,0,6645,6644,1,0,0,0,6646,6649,1,0,0,0,6647,6645,1,0,0,0,6647,6648,1,0,0,0,6648,6650,1,0,0,0,6649,6647,1,0,0,0,6650,6652,5,34,0,0,6651,6642,1,0,0,0,6651,6643,1,0,0,0,6652,6655,1,0,0,0,6653,6651,1,0,0,0,6653,6654,1,0,0,0,6654,6663,1,0,0,0,6655,6653,1,0,0,0,6656,6660,5,34,0,0,6657,6659,8,47,0,0,6658,6657,1,0,0,0,6659,6662,1,0,0,0,6660,6658,1,0,0,0,6660,6661,1,0,0,0,6661,6664,1,0,0,0,6662,6660,1,0,0,0,6663,6656,1,0,0,0,6663,6664,1,0,0,0,6664,1360,1,0,0,0,6665,6666,5,92,0,0,6666,6667,5,92,0,0,6667,1362,1,0,0,0,6668,6669,9,0,0,0,6669,1364,1,0,0,0,6670,6671,3,1369,682,0,6671,6672,5,39,0,0,6672,6673,1,0,0,0,6673,6674,6,680,10,0,6674,1366,1,0,0,0,6675,6677,3,1369,682,0,6676,6678,5,92,0,0,6677,6676,1,0,0,0,6677,6678,1,0,0,0,6678,6679,1,0,0,0,6679,6680,5,0,0,1,6680,1368,1,0,0,0,6681,6682,5,39,0,0,6682,6705,5,39,0,0,6683,6701,5,92,0,0,6684,6685,5,120,0,0,6685,6702,7,39,0,0,6686,6687,5,117,0,0,6687,6688,7,39,0,0,6688,6689,7,39,0,0,6689,6690,7,39,0,0,6690,6702,7,39,0,0,6691,6692,5,85,0,0,6692,6693,7,39,0,0,6693,6694,7,39,0,0,6694,6695,7,39,0,0,6695,6696,7,39,0,0,6696,6697,7,39,0,0,6697,6698,7,39,0,0,6698,6699,7,39,0,0,6699,6702,7,39,0,0,6700,6702,8,48,0,0,6701,6684,1,0,0,0,6701,6686,1,0,0,0,6701,6691,1,0,0,0,6701,6700,1,0,0,0,6702,6705,1,0,0,0,6703,6705,8,49,0,0,6704,6681,1,0,0,0,6704,6683,1,0,0,0,6704,6703,1,0,0,0,6705,6708,1,0,0,0,6706,6704,1,0,0,0,6706,6707,1,0,0,0,6707,1370,1,0,0,0,6708,6706,1,0,0,0,6709,6710,3,1375,685,0,6710,6711,5,39,0,0,6711,6712,1,0,0,0,6712,6713,6,683,10,0,6713,1372,1,0,0,0,6714,6716,3,1375,685,0,6715,6717,5,92,0,0,6716,6715,1,0,0,0,6716,6717,1,0,0,0,6717,6718,1,0,0,0,6718,6719,5,0,0,1,6719,1374,1,0,0,0,6720,6721,5,39,0,0,6721,6726,5,39,0,0,6722,6723,5,92,0,0,6723,6726,9,0,0,0,6724,6726,8,49,0,0,6725,6720,1,0,0,0,6725,6722,1,0,0,0,6725,6724,1,0,0,0,6726,6729,1,0,0,0,6727,6725,1,0,0,0,6727,6728,1,0,0,0,6728,1376,1,0,0,0,6729,6727,1,0,0,0,6730,6731,3,1349,672,0,6731,6732,1,0,0,0,6732,6733,6,686,11,0,6733,6734,6,686,7,0,6734,1378,1,0,0,0,6735,6736,3,1351,673,0,6736,6737,1,0,0,0,6737,6738,6,687,12,0,6738,6739,6,687,7,0,6739,6740,6,687,13,0,6740,1380,1,0,0,0,6741,6742,6,688,14,0,6742,6743,1,0,0,0,6743,6744,6,688,8,0,6744,6745,6,688,15,0,6745,1382,1,0,0,0,6746,6747,3,1349,672,0,6747,6748,1,0,0,0,6748,6749,6,689,11,0,6749,6750,6,689,7,0,6750,1384,1,0,0,0,6751,6752,3,1351,673,0,6752,6753,1,0,0,0,6753,6754,6,690,12,0,6754,6755,6,690,7,0,6755,1386,1,0,0,0,6756,6757,5,39,0,0,6757,6758,1,0,0,0,6758,6759,6,691,2,0,6759,6760,6,691,16,0,6760,1388,1,0,0,0,6761,6762,6,692,17,0,6762,6763,1,0,0,0,6763,6764,6,692,8,0,6764,6765,6,692,15,0,6765,1390,1,0,0,0,6766,6768,8,50,0,0,6767,6766,1,0,0,0,6768,6769,1,0,0,0,6769,6767,1,0,0,0,6769,6770,1,0,0,0,6770,6779,1,0,0,0,6771,6775,5,36,0,0,6772,6774,8,50,0,0,6773,6772,1,0,0,0,6774,6777,1,0,0,0,6775,6773,1,0,0,0,6775,6776,1,0,0,0,6776,6779,1,0,0,0,6777,6775,1,0,0,0,6778,6767,1,0,0,0,6778,6771,1,0,0,0,6779,1392,1,0,0,0,6780,6782,5,36,0,0,6781,6783,3,1319,657,0,6782,6781,1,0,0,0,6782,6783,1,0,0,0,6783,6784,1,0,0,0,6784,6785,5,36,0,0,6785,6786,1,0,0,0,6786,6787,4,694,8,0,6787,6788,6,694,18,0,6788,6789,1,0,0,0,6789,6790,6,694,15,0,6790,1394,1,0,0,0,78,0,1,2,3,4,1462,1468,1470,1475,1479,1481,1484,1493,1495,1500,1505,1507,6324,6333,6337,6341,6350,6352,6362,6364,6390,6392,6410,6421,6432,6449,6469,6473,6476,6482,6485,6490,6494,6499,6506,6517,6519,6527,6533,6536,6546,6557,6565,6571,6574,6576,6582,6596,6604,6610,6613,6615,6617,6623,6628,6633,6637,6647,6651,6653,6660,6663,6677,6701,6704,6706,6716,6725,6727,6769,6775,6778,6782,19,1,28,0,7,29,0,3,0,0,5,1,0,1,656,1,5,4,0,1,667,2,0,1,0,6,0,0,1,676,3,2,2,0,7,663,0,7,664,0,2,3,0,1,688,4,4,0,0,2,1,0,1,692,5,1,694,6],Vi.vocabulary=new Ra(Vi.literalNames,Vi.symbolicNames,[]),Vi.decisionsToDFA=Vi._ATN.decisionToState.map(((t,e)=>new ni(t,e))),Vi),rn=class extends Cc{ParseRoutineBody(t){let e=null;for(let S of t.createFunctionOptionItem()){var s,a,r,i,c,n;if(null!==S.LANGUAGE()&&null!==S.nonReservedWordOrSconst()&&null!==(null===(s=S.nonReservedWordOrSconst())||void 0===s?void 0:s.nonReservedWord())&&null!==(null===(a=S.nonReservedWordOrSconst())||void 0===a||null===(r=a.nonReservedWord())||void 0===r?void 0:r.identifier())&&null!==(null===(i=S.nonReservedWordOrSconst())||void 0===i||null===(c=i.nonReservedWord())||void 0===c||null===(n=c.identifier())||void 0===n?void 0:n.Identifier())){var h,E,T,o;e=null===(h=S.nonReservedWordOrSconst())||void 0===h||null===(E=h.nonReservedWord())||void 0===E||null===(T=E.identifier())||void 0===T||null===(o=T.Identifier())||void 0===o?void 0:o.getText();break}}if(null===e)return;let R=null;for(let S of t.createFunctionOptionItem())if(null!==S.functionAs()){R=S;break}if(null!==R){var A;let t=this.GetRoutineBodyString(null===(A=R.functionAs())||void 0===A?void 0:A.sconst(0)),s=this.getPostgreSQLParser(t);switch(e){case"plpgsql":R.functionAs().Definition=s.plsqlroot();break;case"sql":R.functionAs().Definition=s.root()}}}unquote(t){let e=t.length,s="",a=0;for(;a'","'<<'","'>>'","':='","'<='","'=>'","'>='","'..'","'<>'","'::'","'%'",null,null,"'ALL'","'ANALYSE'","'ANALYZE'","'AND'","'ANY'","'ARRAY'","'AS'","'ASC'","'ASYMMETRIC'","'BOTH'","'CASE'","'CAST'","'CHECK'","'COLLATE'","'COLUMN'","'CONSTRAINT'","'CREATE'","'CURRENT_CATALOG'","'CURRENT_DATE'","'CURRENT_ROLE'","'CURRENT_TIME'","'CURRENT_TIMESTAMP'","'CURRENT_USER'","'DEFAULT'","'DEFERRABLE'","'DESC'","'DISTINCT'","'DO'","'ELSE'","'EXCEPT'","'FALSE'","'FETCH'","'FOR'","'FOREIGN'","'FROM'","'GRANT'","'GROUP'","'HAVING'","'IN'","'INITIALLY'","'INTERSECT'","'INTO'","'LATERAL'","'LEADING'","'LIMIT'","'LOCALTIME'","'LOCALTIMESTAMP'","'NOT'","'NULL'","'OFFSET'","'ON'","'ONLY'","'OR'","'ORDER'","'PLACING'","'PRIMARY'","'REFERENCES'","'RETURNING'","'SELECT'","'SESSION_USER'","'SOME'","'SYMMETRIC'","'TABLE'","'THEN'","'TO'","'TRAILING'","'TRUE'","'UNION'","'UNIQUE'","'USER'","'USING'","'VARIADIC'","'WHEN'","'WHERE'","'WINDOW'","'WITH'","'AUTHORIZATION'","'BINARY'","'COLLATION'","'CONCURRENTLY'","'CROSS'","'CURRENT_SCHEMA'","'FREEZE'","'FULL'","'ILIKE'","'INNER'","'IS'","'ISNULL'","'JOIN'","'LEFT'","'LIKE'","'NATURAL'","'NOTNULL'","'OUTER'","'OVER'","'OVERLAPS'","'RIGHT'","'SIMILAR'","'VERBOSE'","'ABORT'","'ABSOLUTE'","'ACCESS'","'ACTION'","'ADD'","'ADMIN'","'AFTER'","'AGGREGATE'","'ALSO'","'ALTER'","'ALWAYS'","'ASSERTION'","'ASSIGNMENT'","'AT'","'ATTRIBUTE'","'BACKWARD'","'BEFORE'","'BEGIN'","'BY'","'CACHE'","'CALLED'","'CASCADE'","'CASCADED'","'CATALOG'","'CHAIN'","'CHARACTERISTICS'","'CHECKPOINT'","'CLASS'","'CLOSE'","'CLUSTER'","'COMMENT'","'COMMENTS'","'COMMIT'","'COMMITTED'","'CONFIGURATION'","'CONNECTION'","'CONSTRAINTS'","'CONTENT'","'CONTINUE'","'CONVERSION'","'COPY'","'COST'","'CSV'","'CURSOR'","'CYCLE'","'DATA'","'DATABASE'","'DAY'","'DEALLOCATE'","'DECLARE'","'DEFAULTS'","'DEFERRED'","'DEFINER'","'DELETE'","'DELIMITER'","'DELIMITERS'","'DICTIONARY'","'DISABLE'","'DISCARD'","'DOCUMENT'","'DOMAIN'","'DOUBLE'","'DROP'","'EACH'","'ENABLE'","'ENCODING'","'ENCRYPTED'","'ENUM'","'ESCAPE'","'EVENT'","'EXCLUDE'","'EXCLUDING'","'EXCLUSIVE'","'EXECUTE'","'EXPLAIN'","'EXTENSION'","'EXTERNAL'","'FAMILY'","'FIRST'","'FOLLOWING'","'FORCE'","'FORWARD'","'FUNCTION'","'FUNCTIONS'","'GLOBAL'","'GRANTED'","'HANDLER'","'HEADER'","'HOLD'","'HOUR'","'IDENTITY'","'IF'","'IMMEDIATE'","'IMMUTABLE'","'IMPLICIT'","'INCLUDING'","'INCREMENT'","'INDEX'","'INDEXES'","'INHERIT'","'INHERITS'","'INLINE'","'INSENSITIVE'","'INSERT'","'INSTEAD'","'INVOKER'","'ISOLATION'","'KEY'","'LABEL'","'LANGUAGE'","'LARGE'","'LAST'","'LEAKPROOF'","'LEVEL'","'LISTEN'","'LOAD'","'LOCAL'","'LOCATION'","'LOCK'","'MAPPING'","'MATCH'","'MATCHED'","'MATERIALIZED'","'MAXVALUE'","'MERGE'","'MINUTE'","'MINVALUE'","'MODE'","'MONTH'","'MOVE'","'NAME'","'NAMES'","'NEXT'","'NO'","'NOTHING'","'NOTIFY'","'NOWAIT'","'NULLS'","'OBJECT'","'OF'","'OFF'","'OIDS'","'OPERATOR'","'OPTION'","'OPTIONS'","'OWNED'","'OWNER'","'PARSER'","'PARTIAL'","'PARTITION'","'PASSING'","'PASSWORD'","'PLANS'","'PRECEDING'","'PREPARE'","'PREPARED'","'PRESERVE'","'PRIOR'","'PRIVILEGES'","'PROCEDURAL'","'PROCEDURE'","'PROGRAM'","'QUOTE'","'RANGE'","'READ'","'REASSIGN'","'RECHECK'","'RECURSIVE'","'REF'","'REFRESH'","'REINDEX'","'RELATIVE'","'RELEASE'","'RENAME'","'REPEATABLE'","'REPLACE'","'REPLICA'","'RESET'","'RESTART'","'RESTRICT'","'RETURNS'","'REVOKE'","'ROLE'","'ROLLBACK'","'ROWS'","'RULE'","'SAVEPOINT'","'SCHEMA'","'SCROLL'","'SEARCH'","'SECOND'","'SECURITY'","'SEQUENCE'","'SEQUENCES'","'SERIALIZABLE'","'SERVER'","'SESSION'","'SET'","'SHARE'","'SHOW'","'SIMPLE'","'SNAPSHOT'","'STABLE'","'STANDALONE'","'START'","'STATEMENT'","'STATISTICS'","'STDIN'","'STDOUT'","'STORAGE'","'STRICT'","'STRIP'","'SYSID'","'SYSTEM'","'TABLES'","'TABLESPACE'","'TEMP'","'TEMPLATE'","'TEMPORARY'","'TEXT'","'TRANSACTION'","'TRIGGER'","'TRUNCATE'","'TRUSTED'","'TYPE'","'TYPES'","'UNBOUNDED'","'UNCOMMITTED'","'UNENCRYPTED'","'UNKNOWN'","'UNLISTEN'","'UNLOGGED'","'UNTIL'","'UPDATE'","'VACUUM'","'VALID'","'VALIDATE'","'VALIDATOR'","'VARYING'","'VERSION'","'VIEW'","'VOLATILE'","'WHITESPACE'","'WITHOUT'","'WORK'","'WRAPPER'","'WRITE'","'XML'","'YEAR'","'YES'","'ZONE'","'BETWEEN'","'BIGINT'","'BIT'","'BOOLEAN'","'CHAR'","'CHARACTER'","'COALESCE'","'DEC'","'DECIMAL'","'EXISTS'","'EXTRACT'","'FLOAT'","'GREATEST'","'INOUT'","'INT'","'INTEGER'","'INTERVAL'","'LEAST'","'NATIONAL'","'NCHAR'","'NONE'","'NULLIF'","'NUMERIC'","'OVERLAY'","'POSITION'","'PRECISION'","'REAL'","'ROW'","'SETOF'","'SMALLINT'","'SUBSTRING'","'TIME'","'TIMESTAMP'","'TREAT'","'TRIM'","'VALUES'","'VARCHAR'","'XMLATTRIBUTES'","'XMLCOMMENT'","'XMLAGG'","'XML_IS_WELL_FORMED'","'XML_IS_WELL_FORMED_DOCUMENT'","'XML_IS_WELL_FORMED_CONTENT'","'XPATH'","'XPATH_EXISTS'","'XMLCONCAT'","'XMLELEMENT'","'XMLEXISTS'","'XMLFOREST'","'XMLPARSE'","'XMLPI'","'XMLROOT'","'XMLSERIALIZE'","'CALL'","'CURRENT'","'ATTACH'","'DETACH'","'EXPRESSION'","'GENERATED'","'LOGGED'","'STORED'","'INCLUDE'","'ROUTINE'","'TRANSFORM'","'IMPORT'","'POLICY'","'METHOD'","'REFERENCING'","'NEW'","'OLD'","'VALUE'","'SUBSCRIPTION'","'PUBLICATION'","'OUT'","'END'","'ROUTINES'","'SCHEMAS'","'PROCEDURES'","'INPUT'","'SUPPORT'","'PARALLEL'","'SQL'","'DEPENDS'","'OVERRIDING'","'CONFLICT'","'SKIP'","'LOCKED'","'TIES'","'ROLLUP'","'CUBE'","'GROUPING'","'SETS'","'TABLESAMPLE'","'ORDINALITY'","'XMLTABLE'","'COLUMNS'","'XMLNAMESPACES'","'ROWTYPE'","'NORMALIZED'","'WITHIN'","'FILTER'","'GROUPS'","'OTHERS'","'NFC'","'NFD'","'NFKC'","'NFKD'","'UESCAPE'","'VIEWS'","'NORMALIZE'","'DUMP'","'PRINT_STRICT_PARAMS'","'VARIABLE_CONFLICT'","'ERROR'","'USE_VARIABLE'","'USE_COLUMN'","'ALIAS'","'CONSTANT'","'PERFORM'","'GET'","'DIAGNOSTICS'","'STACKED'","'ELSIF'","'WHILE'","'REVERSE'","'FOREACH'","'SLICE'","'EXIT'","'RETURN'","'QUERY'","'RAISE'","'SQLSTATE'","'DEBUG'","'LOG'","'INFO'","'NOTICE'","'WARNING'","'EXCEPTION'","'ASSERT'","'LOOP'","'OPEN'","'ABS'","'CBRT'","'CEIL'","'CEILING'","'DEGREES'","'DIV'","'EXP'","'FACTORIAL'","'FLOOR'","'GCD'","'LCM'","'LN'","'LOG10'","'MIN_SCALE'","'MOD'","'PI'","'POWER'","'RADIANS'","'ROUND'","'SCALE'","'SIGN'","'SQRT'","'TRIM_SCALE'","'TRUNC'","'WIDTH_BUCKET'","'RANDOM'","'SETSEED'","'ACOS'","'ACOSD'","'ASIN'","'ASIND'","'ATAN'","'ATAND'","'ATAN2'","'ATAN2D'","'COS'","'COSD'","'COT'","'COTD'","'SIN'","'SIND'","'TAN'","'TAND'","'SINH'","'COSH'","'TANH'","'ASINH'","'ACOSH'","'ATANH'","'BIT_LENGTH'","'CHAR_LENGTH'","'CHARACTER_LENGTH'","'LOWER'","'OCTET_LENGTH'","'UPPER'","'ASCII'","'BTRIM'","'CHR'","'CONCAT'","'CONCAT_WS'","'FORMAT'","'INITCAP'","'LENGTH'","'LPAD'","'LTRIM'","'MD5'","'PARSE_IDENT'","'PG_CLIENT_ENCODING'","'QUOTE_IDENT'","'QUOTE_LITERAL'","'QUOTE_NULLABLE'","'REGEXP_COUNT'","'REGEXP_INSTR'","'REGEXP_LIKE'","'REGEXP_MATCH'","'REGEXP_MATCHES'","'REGEXP_REPLACE'","'REGEXP_SPLIT_TO_ARRAY'","'REGEXP_SPLIT_TO_TABLE'","'REGEXP_SUBSTR'","'REPEAT'","'RPAD'","'RTRIM'","'SPLIT_PART'","'STARTS_WITH'","'STRING_TO_ARRAY'","'STRING_TO_TABLE'","'STRPOS'","'SUBSTR'","'TO_ASCII'","'TO_HEX'","'TRANSLATE'","'UNISTR'","'AGE'","'CLOCK_TIMESTAMP'","'DATE_BIN'","'DATE_PART'","'DATE_TRUNC'","'ISFINITE'","'JUSTIFY_DAYS'","'JUSTIFY_HOURS'","'JUSTIFY_INTERVAL'","'MAKE_DATE'","'MAKE_INTERVAL'","'MAKE_TIME'","'MAKE_TIMESTAMP'","'MAKE_TIMESTAMPTZ'","'NOW'","'STATEMENT_TIMESTAMP'","'TIMEOFDAY'","'TRANSACTION_TIMESTAMP'","'TO_TIMESTAMP'","'TO_CHAR'","'TO_DATE'","'TO_NUMBER'",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"'\\'",null,null,null,null,null,null,null,null,null,"'''"],Xi.symbolicNames=[null,"Dollar","OPEN_PAREN","CLOSE_PAREN","OPEN_BRACKET","CLOSE_BRACKET","COMMA","SEMI","COLON","STAR","EQUAL","DOT","PLUS","MINUS","SLASH","CARET","LT","GT","LESS_LESS","GREATER_GREATER","COLON_EQUALS","LESS_EQUALS","EQUALS_GREATER","GREATER_EQUALS","DOT_DOT","NOT_EQUALS","TYPECAST","PERCENT","PARAM","Operator","ALL","ANALYSE","ANALYZE","AND","ANY","ARRAY","AS","ASC","ASYMMETRIC","BOTH","CASE","CAST","CHECK","COLLATE","COLUMN","CONSTRAINT","CREATE","CURRENT_CATALOG","CURRENT_DATE","CURRENT_ROLE","CURRENT_TIME","CURRENT_TIMESTAMP","CURRENT_USER","DEFAULT","DEFERRABLE","DESC","DISTINCT","DO","ELSE","EXCEPT","FALSE_P","FETCH","FOR","FOREIGN","FROM","GRANT","GROUP_P","HAVING","IN_P","INITIALLY","INTERSECT","INTO","LATERAL_P","LEADING","LIMIT","LOCALTIME","LOCALTIMESTAMP","NOT","NULL_P","OFFSET","ON","ONLY","OR","ORDER","PLACING","PRIMARY","REFERENCES","RETURNING","SELECT","SESSION_USER","SOME","SYMMETRIC","TABLE","THEN","TO","TRAILING","TRUE_P","UNION","UNIQUE","USER","USING","VARIADIC","WHEN","WHERE","WINDOW","WITH","AUTHORIZATION","BINARY","COLLATION","CONCURRENTLY","CROSS","CURRENT_SCHEMA","FREEZE","FULL","ILIKE","INNER_P","IS","ISNULL","JOIN","LEFT","LIKE","NATURAL","NOTNULL","OUTER_P","OVER","OVERLAPS","RIGHT","SIMILAR","VERBOSE","ABORT_P","ABSOLUTE_P","ACCESS","ACTION","ADD_P","ADMIN","AFTER","AGGREGATE","ALSO","ALTER","ALWAYS","ASSERTION","ASSIGNMENT","AT","ATTRIBUTE","BACKWARD","BEFORE","BEGIN_P","BY","CACHE","CALLED","CASCADE","CASCADED","CATALOG","CHAIN","CHARACTERISTICS","CHECKPOINT","CLASS","CLOSE","CLUSTER","COMMENT","COMMENTS","COMMIT","COMMITTED","CONFIGURATION","CONNECTION","CONSTRAINTS","CONTENT_P","CONTINUE_P","CONVERSION_P","COPY","COST","CSV","CURSOR","CYCLE","DATA_P","DATABASE","DAY_P","DEALLOCATE","DECLARE","DEFAULTS","DEFERRED","DEFINER","DELETE_P","DELIMITER","DELIMITERS","DICTIONARY","DISABLE_P","DISCARD","DOCUMENT_P","DOMAIN_P","DOUBLE_P","DROP","EACH","ENABLE_P","ENCODING","ENCRYPTED","ENUM_P","ESCAPE","EVENT","EXCLUDE","EXCLUDING","EXCLUSIVE","EXECUTE","EXPLAIN","EXTENSION","EXTERNAL","FAMILY","FIRST_P","FOLLOWING","FORCE","FORWARD","FUNCTION","FUNCTIONS","GLOBAL","GRANTED","HANDLER","HEADER_P","HOLD","HOUR_P","IDENTITY_P","IF_P","IMMEDIATE","IMMUTABLE","IMPLICIT_P","INCLUDING","INCREMENT","INDEX","INDEXES","INHERIT","INHERITS","INLINE_P","INSENSITIVE","INSERT","INSTEAD","INVOKER","ISOLATION","KEY","LABEL","LANGUAGE","LARGE_P","LAST_P","LEAKPROOF","LEVEL","LISTEN","LOAD","LOCAL","LOCATION","LOCK_P","MAPPING","MATCH","MATCHED","MATERIALIZED","MAXVALUE","MERGE","MINUTE_P","MINVALUE","MODE","MONTH_P","MOVE","NAME_P","NAMES","NEXT","NO","NOTHING","NOTIFY","NOWAIT","NULLS_P","OBJECT_P","OF","OFF","OIDS","OPERATOR","OPTION","OPTIONS","OWNED","OWNER","PARSER","PARTIAL","PARTITION","PASSING","PASSWORD","PLANS","PRECEDING","PREPARE","PREPARED","PRESERVE","PRIOR","PRIVILEGES","PROCEDURAL","PROCEDURE","PROGRAM","QUOTE","RANGE","READ","REASSIGN","RECHECK","RECURSIVE","REF","REFRESH","REINDEX","RELATIVE_P","RELEASE","RENAME","REPEATABLE","REPLACE","REPLICA","RESET","RESTART","RESTRICT","RETURNS","REVOKE","ROLE","ROLLBACK","ROWS","RULE","SAVEPOINT","SCHEMA","SCROLL","SEARCH","SECOND_P","SECURITY","SEQUENCE","SEQUENCES","SERIALIZABLE","SERVER","SESSION","SET","SHARE","SHOW","SIMPLE","SNAPSHOT","STABLE","STANDALONE_P","START","STATEMENT","STATISTICS","STDIN","STDOUT","STORAGE","STRICT_P","STRIP_P","SYSID","SYSTEM_P","TABLES","TABLESPACE","TEMP","TEMPLATE","TEMPORARY","TEXT_P","TRANSACTION","TRIGGER","TRUNCATE","TRUSTED","TYPE_P","TYPES_P","UNBOUNDED","UNCOMMITTED","UNENCRYPTED","UNKNOWN","UNLISTEN","UNLOGGED","UNTIL","UPDATE","VACUUM","VALID","VALIDATE","VALIDATOR","VARYING","VERSION_P","VIEW","VOLATILE","WHITESPACE_P","WITHOUT","WORK","WRAPPER","WRITE","XML_P","YEAR_P","YES_P","ZONE","BETWEEN","BIGINT","BIT","BOOLEAN_P","CHAR_P","CHARACTER","COALESCE","DEC","DECIMAL_P","EXISTS","EXTRACT","FLOAT_P","GREATEST","INOUT","INT_P","INTEGER","INTERVAL","LEAST","NATIONAL","NCHAR","NONE","NULLIF","NUMERIC","OVERLAY","POSITION","PRECISION","REAL","ROW","SETOF","SMALLINT","SUBSTRING","TIME","TIMESTAMP","TREAT","TRIM","VALUES","VARCHAR","XMLATTRIBUTES","XMLCOMMENT","XMLAGG","XML_IS_WELL_FORMED","XML_IS_WELL_FORMED_DOCUMENT","XML_IS_WELL_FORMED_CONTENT","XPATH","XPATH_EXISTS","XMLCONCAT","XMLELEMENT","XMLEXISTS","XMLFOREST","XMLPARSE","XMLPI","XMLROOT","XMLSERIALIZE","CALL","CURRENT_P","ATTACH","DETACH","EXPRESSION","GENERATED","LOGGED","STORED","INCLUDE","ROUTINE","TRANSFORM","IMPORT_P","POLICY","METHOD","REFERENCING","NEW","OLD","VALUE_P","SUBSCRIPTION","PUBLICATION","OUT_P","END_P","ROUTINES","SCHEMAS","PROCEDURES","INPUT_P","SUPPORT","PARALLEL","SQL_P","DEPENDS","OVERRIDING","CONFLICT","SKIP_P","LOCKED","TIES","ROLLUP","CUBE","GROUPING","SETS","TABLESAMPLE","ORDINALITY","XMLTABLE","COLUMNS","XMLNAMESPACES","ROWTYPE","NORMALIZED","WITHIN","FILTER","GROUPS","OTHERS","NFC","NFD","NFKC","NFKD","UESCAPE","VIEWS","NORMALIZE","DUMP","PRINT_STRICT_PARAMS","VARIABLE_CONFLICT","ERROR","USE_VARIABLE","USE_COLUMN","ALIAS","CONSTANT","PERFORM","GET","DIAGNOSTICS","STACKED","ELSIF","WHILE","REVERSE","FOREACH","SLICE","EXIT","RETURN","QUERY","RAISE","SQLSTATE","DEBUG","LOG","INFO","NOTICE","WARNING","EXCEPTION","ASSERT","LOOP","OPEN","ABS","CBRT","CEIL","CEILING","DEGREES","DIV","EXP","FACTORIAL","FLOOR","GCD","LCM","LN","LOG10","MIN_SCALE","MOD","PI","POWER","RADIANS","ROUND","SCALE","SIGN","SQRT","TRIM_SCALE","TRUNC","WIDTH_BUCKET","RANDOM","SETSEED","ACOS","ACOSD","ASIN","ASIND","ATAN","ATAND","ATAN2","ATAN2D","COS","COSD","COT","COTD","SIN","SIND","TAN","TAND","SINH","COSH","TANH","ASINH","ACOSH","ATANH","BIT_LENGTH","CHAR_LENGTH","CHARACTER_LENGTH","LOWER","OCTET_LENGTH","UPPER","ASCII","BTRIM","CHR","CONCAT","CONCAT_WS","FORMAT","INITCAP","LENGTH","LPAD","LTRIM","MD5","PARSE_IDENT","PG_CLIENT_ENCODING","QUOTE_IDENT","QUOTE_LITERAL","QUOTE_NULLABLE","REGEXP_COUNT","REGEXP_INSTR","REGEXP_LIKE","REGEXP_MATCH","REGEXP_MATCHES","REGEXP_REPLACE","REGEXP_SPLIT_TO_ARRAY","REGEXP_SPLIT_TO_TABLE","REGEXP_SUBSTR","REPEAT","RPAD","RTRIM","SPLIT_PART","STARTS_WITH","STRING_TO_ARRAY","STRING_TO_TABLE","STRPOS","SUBSTR","TO_ASCII","TO_HEX","TRANSLATE","UNISTR","AGE","CLOCK_TIMESTAMP","DATE_BIN","DATE_PART","DATE_TRUNC","ISFINITE","JUSTIFY_DAYS","JUSTIFY_HOURS","JUSTIFY_INTERVAL","MAKE_DATE","MAKE_INTERVAL","MAKE_TIME","MAKE_TIMESTAMP","MAKE_TIMESTAMPTZ","NOW","STATEMENT_TIMESTAMP","TIMEOFDAY","TRANSACTION_TIMESTAMP","TO_TIMESTAMP","TO_CHAR","TO_DATE","TO_NUMBER","Identifier","QuotedIdentifier","UnterminatedQuotedIdentifier","InvalidQuotedIdentifier","InvalidUnterminatedQuotedIdentifier","UnicodeQuotedIdentifier","UnterminatedUnicodeQuotedIdentifier","InvalidUnicodeQuotedIdentifier","InvalidUnterminatedUnicodeQuotedIdentifier","StringConstant","UnterminatedStringConstant","UnicodeEscapeStringConstant","UnterminatedUnicodeEscapeStringConstant","BeginDollarStringConstant","BinaryStringConstant","UnterminatedBinaryStringConstant","InvalidBinaryStringConstant","InvalidUnterminatedBinaryStringConstant","HexadecimalStringConstant","UnterminatedHexadecimalStringConstant","InvalidHexadecimalStringConstant","InvalidUnterminatedHexadecimalStringConstant","Integral","NumericFail","Numeric","PLSQLVARIABLENAME","PLSQLIDENTIFIER","Whitespace","Newline","LineComment","BlockComment","UnterminatedBlockComment","MetaCommand","EndMetaCommand","ErrorCharacter","EscapeStringConstant","UnterminatedEscapeStringConstant","InvalidEscapeStringConstant","InvalidUnterminatedEscapeStringConstant","AfterEscapeStringConstantMode_NotContinued","AfterEscapeStringConstantWithNewlineMode_NotContinued","DollarText","EndDollarStringConstant","AfterEscapeStringConstantWithNewlineMode_Continued"],Xi.ruleNames=["root","plsqlRoot","statements","statement","plsqlConsoleCommand","callStatement","optionalWith","optionalRoleList","alterOptionalRoleList","alterRoleElemement","createRoleElement","createRoleStatement","alterRoleStatement","optionalInDatabase","alterRoleSetStatement","dropRoleStatement","addOrDrop","createSchemaStatement","optionalSchemaName","optionalSchemaList","schemaStatement","variableSetStatement","setStatementEnding","genericSetClause","setStatementMore","variableName","variableList","variableValue","isoLevel","booleanOrString","zoneValue","optionalEncoding","nonReservedWordOrSconst","variableResetStatement","resetClauseRest","genericResetClause","setResetClause","functionSetResetClause","variableShowStatement","setConstraintsStatement","constraintsSetList","constraintsSetMode","checkpointStatement","discardStatement","alterTableStatement","alterTableCommands","partitionCommand","indexPartitionCommand","alterTableCommand","alterColumnDefault","optionalDropBehavior","optionalCollateClause","alterUsing","replicaIdentity","relOptions","optionalRelOptions","relOptionList","relOptionElem","alterIdentityColumnOptionList","alterIdentityColumnOption","partitionBoundSpecification","hashPartitionBoundElement","hashPartitionBound","alterCompositeTypeStatement","alterTypeCommands","alterTypeCommand","closePortalStatement","copyStatement","fromOrTo","copyFileName","copyOptions","copyOptionsItem","copyDelimiter","copyGenericOptionList","copyGenericOptionElem","copyGenericOptionArgument","createStatement","temporaryOption","optionalTableElementList","optionalTypedTableElementList","tableElementList","typedTableElementList","tableElement","typedTableElement","columnDefinition","columnOptions","columnQualifierList","columnConstraint","columnConstraintElement","generatedWhen","constraintAttribute","tableLikeClause","tableLikeOptionList","tableLikeOption","tableConstraint","constraintElement","columnListWithParentheses","columnList","columnElement","optionalColumnListInclude","matchClause","exclusionConstraintList","exclusionConstraintElement","exclusionWhereClause","keyActions","onKeyUpdateClause","onKeyDeleteClause","keyAction","inheritClause","optionalPartitionSpecification","partitionSpecification","partitionElements","partitionElement","optionalTableAccessMethodClause","with","onCommitOption","optionalTablespace","usingIndexTablespace","existingIndex","createStatsStatement","alterStatsStatement","createAsStatement","createAsTarget","withData","createMaterializedViewStatement","createMaterializedViewTarget","refreshMaterializedViewStatement","createSequenceStatement","alterSequenceStatement","optionalParenthesizedSeqOptionsList","sequenceOptionList","sequenceOptionItem","numericOnly","numericOnlyList","createProcedureLangStatement","handlerName","optionalInlineHandler","validatorClause","optionalProcedural","createTablespaceStatement","optionalTablespaceOwner","dropTablespaceStatement","createExtensionStatement","createExtensionOptionItem","alterExtensionStatement","alterExtensionOptionItem","alterExtensionContentsStatement","createForeignDataWrapperStatement","forwardOption","forwardOptions","alterForeignDataWrapperStatement","createGenericOptions","genericOptionList","alterGenericOptions","alterGenericOptionList","alterGenericOptionElem","genericOptionElement","genericOptionName","genericOptionArgument","createForeignServerStatement","optionalType","foreignServerVersion","alterForeignServerStatement","createForeignTableStatement","importForeignSchemaStatement","importQualificationType","importQualification","createUserMappingStatement","authIdentifier","dropUserMappingStatement","alterUserMappingStatement","createPolicyStatement","alterPolicyStatement","rowSecurityOptionalExpression","rowSecurityOptionalWithCheck","rowSecurityOptionalToUser","rowSecurityDefaultPermissive","rowSecurityDefaultForCmd","rowSecurityCommand","createAccessMethodStatement","accessMethodType","createTriggerStatement","triggerActionTime","triggerEvents","triggerOneEvent","triggerReferencing","triggerTransitions","triggerTransition","transitionOldOrNew","transitionRowOrTable","transitionRelName","triggerForSpec","triggerForType","triggerWhen","functionOrProcedure","triggerFunctionArguments","triggerFunctionArgument","optionalConstraintFromTable","constraintAttributeSpecification","constraintAttributeElement","createEventTriggerStatement","eventTriggerWhenList","eventTriggerWhenItem","eventTriggerValueList","alterEventTriggerStatement","enableTrigger","createAssertionStatement","defineStatement","definition","definitionElement","definitionArgument","oldAggregateDefinition","oldAggregateElement","enumValueList","alterEnumStatement","optionalIfNotExists","createOperatorClassStatement","operatorClassItemList","operatorClassItem","optionalOperatorFamily","operatorClassPurpose","createOperatorFamilyStatement","alterOperatorFamilyStatement","operatorClassDropList","operatorClassDrop","dropOperatorClassStatement","dropOperatorFamilyStatement","dropOwnedStatement","reassignOwnedStatement","dropStatement","objectTypeAnyName","objectTypeName","dropTypeName","objectTypeNameOnAnyName","anyNameList","anyName","attributes","typeNameList","truncateStatement","optionalRestartSequences","commentStatement","commentText","securityLabelStatement","optionalProvider","securityLabel","fetchStatement","fetchArguments","fromOrIn","optionalFromOrIn","grantStatement","revokeStatement","privileges","privilegeList","privilege","privilegeTarget","granteeList","grantee","optionalWithGrantOption","grantPrivilegeStatement","revokePrivilegeStatement","optionalGrantAdminOption","optionalGrantedBy","alterDefaultPrivilegesStatement","defultPrivilegeOption","defaultPrivelegeAction","defultPrivilegeTarget","indexStatement","optionalAccessMethodClause","indexParameters","indexElemOptions","indexElement","optionalInclude","optionalCollate","optionalClass","optionalAscOrDesc","optionalNullsOrder","createFunctionStatement","optionalOrReplace","functionArgumentsList","functionWithArgumentTypesList","functionWithArgumentTypes","functionArgumentsWithDefaultsList","functionArgumentWithDefault","functionArgument","argumentClass","parameterName","functionReturn","functionType","aggregateArguments","aggregateArgumentsList","aggregateWithArgumentTypes","aggregateWithArgumentTypesList","createFunctionOptionList","commonFunctionOptionItem","createFunctionOptionItem","functionAs","transformTypeList","optionalDefinition","tableFunctionColumn","tableFunctionColumnList","alterFunctionStatement","removeFunctionStatement","removeAggregateStatement","removeOperatorStatement","operatorArgumentTypes","anyOperator","operatorWithArgumentTypesList","operatorWithArgumentTypes","doStatement","doStatementOptionsList","doStatementOptionItem","createCastStatement","castContext","dropCastStatement","optionalIfExists","createTransformStatement","transformElementList","dropTransformStatement","reindexStatement","reindexTargetType","reindexOptionList","reindexOptionElement","alterTablespaceStatement","renameStatement","optionalColumn","optionalSetData","alterObjectDependsStatement","alterObjectSchemaStatement","alterOperatorStatement","operatorDefinitionList","operatorDefinitionElement","operatorDefinitionArgument","alterTypeStatement","alterOwnerStatement","createPublicationStatement","optionalPublicationForTables","publicationForTables","alterPublicationStatement","createSubscriptionStatement","publicationNameList","publicationNameItem","alterSubscriptionStatement","dropSubscriptionStatement","ruleStatement","ruleActionList","ruleActionMulti","ruleActionStatement","ruleActionStatementOrEmpty","event","optionalInstead","notifyStatement","notifyPayload","listenStatement","unlistenStatement","transactionStatement","optionalTransaction","transactionModeItem","transactionModeList","optionalTransactionChain","viewStatement","optionalCheckOption","loadStatement","createDatabaseStatement","createDatabaseOptionList","createDatabaseOptionItem","createDatabaseOptionName","alterDatabaseStatement","alterDatabaseSetStatement","dropDatabaseStatement","alterCollationStatement","alterSystemStatement","createDomainStatement","alterDomainStatement","alterDomainCommand","optionalAs","altertsDictionaryStatement","altertsConfigurationStatement","createConversionStatement","clusterStatement","clusterIndexSpecification","vacuumStatement","analyzeStatement","vacuumAnalyzeOptionList","analyzeKeyword","vacuumAnalyzeOptionElement","vacuumAnalyzeOptionName","vacuumAnalyzeOptionArgument","optionalVerbose","optionalNameList","vacuumRelation","optionalVacuumRelationList","explainStatement","explainableStatement","explainOptionElement","explainOptionName","explainOptionArgument","prepareStatement","prepareTypeClause","preparableStatement","executeStatement","executeParameterClause","deallocateStatement","insertStatement","insertTarget","insertRest","overrideKind","insertColumnList","insertColumnItem","optionalOnConflict","optionalConflictExpr","returningClause","mergeStatement","mergeInsertClause","mergeUpdateClause","mergeDeleteClause","deleteStatement","usingClause","lockStatement","optionalLock","lockType","optionalNowait","optionalNowaitOrSkip","updateStatement","setClauseList","setClause","setTarget","declareCursorStatement","cursorName","optionalHold","selectStatement","selectWithParenthesis","selectWithoutParenthesis","selectClause","simpleSelectIntersect","simpleSelectStart","simpleSelectPramary","withClause","commonTableExpression","optionalMaterialized","intoClause","optionalTemporaryTableName","optionalTable","allOrDistinct","distinctClause","allClause","optionalSortClause","sortClause","sortByList","sortBy","selectLimit","optionalSelectLimit","limitClause","offsetClause","selectLimitValue","selectOffsetValue","selectFetchFirstValue","anyConst","rowOrRows","firstOrNext","groupClause","groupByList","groupByItem","havingClause","forLockingClause","forLockingItem","forLockingStrength","lockedRelationsList","valuesClause","fromClause","fromList","nonAnsiJoin","tableReference","aliasClause","optionalAliasClause","tableAliasClause","functionAliasClause","joinType","joinQualifier","viewName","relationExpression","relationExpressionList","relationExpressionOptionalAlias","tableSampleClause","functionTable","rowsFromItem","optionalColumnDefinitionList","optionalOrdinality","whereClause","whereOrCurrentClause","optionalTableFunctionElementList","tableFunctionElementList","tableFunctionElement","xmlTable","xmlTableColumnElement","xmlTableColumnOptionList","xmlTableColumnOptionElement","xmlNamespaceList","xmlNamespaceElement","typeName","simpleTypeName","constTypeName","genericType","optionalTypeModifiers","numeric","optionalFloat","bit","constBit","bitWithLength","bitWithoutLength","character","constCharacter","characterChar","optionalVarying","constDateTime","constInterval","optionalTimezone","optionalInterval","intervalSecond","optionalEscape","expression1","expression1Qualifier","expression1LessLess","expression1Or","expression1And","expression1Between","expression1In","expression1UnaryNot","expression1IsNull","expression1IsNot","expression1Compare","expression1Like","expression1qualifierOperator","expression1UnaryQualifierOperator","expression1Add","expressionMultiply","expression1Caret","expression1UnarySign","expression1AtTimeZone","expression1Collate","expression1Typecast","expression2","expression3","plsqlVariableName","functionApplication","functionExpression","functionExpressionWindowless","functionExpressionCommonSubexpr","xmlRootVersion","optionalXmlRootStandalone","xmlAttributes","xmlAttributeList","xmlAttributeElement","documentOrContent","xmlWhitespaceOption","xmlExistsArgument","xmlPassingMech","withinGroupClause","filterClause","windowClause","windowDefinitionList","windowDefinition","overClause","windowSpecification","optionalExistingWindowName","optionalPartitionClause","optionalFrameClause","frameExtent","frameBound","optionalWindowExclusionClause","row","explicitRow","implicitRow","subType","allOperator","mathOperator","operatorQualifier","allOperatorQualifier","subqueryOperator","expressionList","functionArgumentList","functionArgumentExpression","typeList","arrayExpression","arrayExpressionList","extractList","extractArgument","unicodeNormalForm","overlayList","positionList","substrList","trimList","inExpression","caseExpression","whenClauseList","whenClause","caseDefault","caseArg","columnReference","indirectionElement","indirection","optionalIndirection","optionalTargetList","targetList","targetElement","qualifiedNameList","databaseName","databaseNameList","schemaName","schemaNameList","indexName","indexNameList","triggerName","constraintName","sequenceName","sequenceNameList","qualifiedName","nameList","name","attributeName","fileName","functionName","aExpressionConst","xconst","bconst","fconst","iconst","sconst","anySconst","optionalUescape","signedIconst","roleName","roleNameList","columnId","tableAlias","typeFunctionName","nonReservedWord","columnLabel","identifier","plsqlIdentifier","unreservedKeyword","columnNameKeyword","typeFunctionNameKeyword","reservedKeyword","builtinFunctionName","plsqlFunction","computeOptions","computeOption","sharp","optionValue","optionalSemi","plsqlBlock","declareSection","declareStart","declareStatements","labelDeclaration","declareStatement","declareStatement2","optionalScrollable","declareCursorQuery","declareCursorArgs","declareCursorArglist","declareCursorArg","declareIsOrFor","declareAliasItem","declareVarname","declareConst","declareDatatype","declareCollate","declareNotNull","declareDefaultValue","declareDefaultKey","assignOperator","procedureSection","proceduralStatement","statementPerform","statementCall","optionalExpressionList","statementAssign","statementGetDiagram","optionalGetDiagramArea","getDiagramList","getDiagramListItem","getDiagramItem","getDiagramTarget","assignVariable","statementIf","statementElsifs","statementElse","statementCase","optionalExpressionUntilWhen","caseWhenList","caseWhen","optionalCaseElse","statementLoop","statementWhile","statementFor","forControl","optionalForUsingExpression","optionalCursorParameters","optionalReverse","optionalByExpression","forVariable","statementForeachA","foreachSlice","statementExit","exitType","statementReturn","optionalReturnResult","statementRaise","optionalStatementRaiseLevel","optionalRaiseList","optionalRaiseUsing","optionalRaiseUsingElement","statementAssert","optionalStatementAssertMessage","loopBody","statementExecSql","statementDynExecute","optionalExecuteUsing","optionalExecuteUsingList","optionalExecuteInto","statementOpen","optionalOpenBoundListItem","statementFetch","intoTarget","optionalCursorFrom","optionalFetchDirection","statementMove","statementClose","statementNull","statementCommit","statementRollback","plsqlOptionalTransactionChain","statementSet","cursorVariable","exceptionSection","procedureExceptions","procedureException","procedureConditions","procedureCondition","optionalBlockLabel","optionalLoopLabel","optionalLabel","optionalExitCondition","anyIdentifier","plsqlUnreservedKeyword","sqlExpression","expressionUntilThen","expressionUntilSemi","expressionUntilRightbracket","expressionUntilLoop","makeExecuteSqlStatement","optionalReturningClauseInto","roleOrAliases"],Xi._serializedATN=[4,1,679,10614,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,2,265,7,265,2,266,7,266,2,267,7,267,2,268,7,268,2,269,7,269,2,270,7,270,2,271,7,271,2,272,7,272,2,273,7,273,2,274,7,274,2,275,7,275,2,276,7,276,2,277,7,277,2,278,7,278,2,279,7,279,2,280,7,280,2,281,7,281,2,282,7,282,2,283,7,283,2,284,7,284,2,285,7,285,2,286,7,286,2,287,7,287,2,288,7,288,2,289,7,289,2,290,7,290,2,291,7,291,2,292,7,292,2,293,7,293,2,294,7,294,2,295,7,295,2,296,7,296,2,297,7,297,2,298,7,298,2,299,7,299,2,300,7,300,2,301,7,301,2,302,7,302,2,303,7,303,2,304,7,304,2,305,7,305,2,306,7,306,2,307,7,307,2,308,7,308,2,309,7,309,2,310,7,310,2,311,7,311,2,312,7,312,2,313,7,313,2,314,7,314,2,315,7,315,2,316,7,316,2,317,7,317,2,318,7,318,2,319,7,319,2,320,7,320,2,321,7,321,2,322,7,322,2,323,7,323,2,324,7,324,2,325,7,325,2,326,7,326,2,327,7,327,2,328,7,328,2,329,7,329,2,330,7,330,2,331,7,331,2,332,7,332,2,333,7,333,2,334,7,334,2,335,7,335,2,336,7,336,2,337,7,337,2,338,7,338,2,339,7,339,2,340,7,340,2,341,7,341,2,342,7,342,2,343,7,343,2,344,7,344,2,345,7,345,2,346,7,346,2,347,7,347,2,348,7,348,2,349,7,349,2,350,7,350,2,351,7,351,2,352,7,352,2,353,7,353,2,354,7,354,2,355,7,355,2,356,7,356,2,357,7,357,2,358,7,358,2,359,7,359,2,360,7,360,2,361,7,361,2,362,7,362,2,363,7,363,2,364,7,364,2,365,7,365,2,366,7,366,2,367,7,367,2,368,7,368,2,369,7,369,2,370,7,370,2,371,7,371,2,372,7,372,2,373,7,373,2,374,7,374,2,375,7,375,2,376,7,376,2,377,7,377,2,378,7,378,2,379,7,379,2,380,7,380,2,381,7,381,2,382,7,382,2,383,7,383,2,384,7,384,2,385,7,385,2,386,7,386,2,387,7,387,2,388,7,388,2,389,7,389,2,390,7,390,2,391,7,391,2,392,7,392,2,393,7,393,2,394,7,394,2,395,7,395,2,396,7,396,2,397,7,397,2,398,7,398,2,399,7,399,2,400,7,400,2,401,7,401,2,402,7,402,2,403,7,403,2,404,7,404,2,405,7,405,2,406,7,406,2,407,7,407,2,408,7,408,2,409,7,409,2,410,7,410,2,411,7,411,2,412,7,412,2,413,7,413,2,414,7,414,2,415,7,415,2,416,7,416,2,417,7,417,2,418,7,418,2,419,7,419,2,420,7,420,2,421,7,421,2,422,7,422,2,423,7,423,2,424,7,424,2,425,7,425,2,426,7,426,2,427,7,427,2,428,7,428,2,429,7,429,2,430,7,430,2,431,7,431,2,432,7,432,2,433,7,433,2,434,7,434,2,435,7,435,2,436,7,436,2,437,7,437,2,438,7,438,2,439,7,439,2,440,7,440,2,441,7,441,2,442,7,442,2,443,7,443,2,444,7,444,2,445,7,445,2,446,7,446,2,447,7,447,2,448,7,448,2,449,7,449,2,450,7,450,2,451,7,451,2,452,7,452,2,453,7,453,2,454,7,454,2,455,7,455,2,456,7,456,2,457,7,457,2,458,7,458,2,459,7,459,2,460,7,460,2,461,7,461,2,462,7,462,2,463,7,463,2,464,7,464,2,465,7,465,2,466,7,466,2,467,7,467,2,468,7,468,2,469,7,469,2,470,7,470,2,471,7,471,2,472,7,472,2,473,7,473,2,474,7,474,2,475,7,475,2,476,7,476,2,477,7,477,2,478,7,478,2,479,7,479,2,480,7,480,2,481,7,481,2,482,7,482,2,483,7,483,2,484,7,484,2,485,7,485,2,486,7,486,2,487,7,487,2,488,7,488,2,489,7,489,2,490,7,490,2,491,7,491,2,492,7,492,2,493,7,493,2,494,7,494,2,495,7,495,2,496,7,496,2,497,7,497,2,498,7,498,2,499,7,499,2,500,7,500,2,501,7,501,2,502,7,502,2,503,7,503,2,504,7,504,2,505,7,505,2,506,7,506,2,507,7,507,2,508,7,508,2,509,7,509,2,510,7,510,2,511,7,511,2,512,7,512,2,513,7,513,2,514,7,514,2,515,7,515,2,516,7,516,2,517,7,517,2,518,7,518,2,519,7,519,2,520,7,520,2,521,7,521,2,522,7,522,2,523,7,523,2,524,7,524,2,525,7,525,2,526,7,526,2,527,7,527,2,528,7,528,2,529,7,529,2,530,7,530,2,531,7,531,2,532,7,532,2,533,7,533,2,534,7,534,2,535,7,535,2,536,7,536,2,537,7,537,2,538,7,538,2,539,7,539,2,540,7,540,2,541,7,541,2,542,7,542,2,543,7,543,2,544,7,544,2,545,7,545,2,546,7,546,2,547,7,547,2,548,7,548,2,549,7,549,2,550,7,550,2,551,7,551,2,552,7,552,2,553,7,553,2,554,7,554,2,555,7,555,2,556,7,556,2,557,7,557,2,558,7,558,2,559,7,559,2,560,7,560,2,561,7,561,2,562,7,562,2,563,7,563,2,564,7,564,2,565,7,565,2,566,7,566,2,567,7,567,2,568,7,568,2,569,7,569,2,570,7,570,2,571,7,571,2,572,7,572,2,573,7,573,2,574,7,574,2,575,7,575,2,576,7,576,2,577,7,577,2,578,7,578,2,579,7,579,2,580,7,580,2,581,7,581,2,582,7,582,2,583,7,583,2,584,7,584,2,585,7,585,2,586,7,586,2,587,7,587,2,588,7,588,2,589,7,589,2,590,7,590,2,591,7,591,2,592,7,592,2,593,7,593,2,594,7,594,2,595,7,595,2,596,7,596,2,597,7,597,2,598,7,598,2,599,7,599,2,600,7,600,2,601,7,601,2,602,7,602,2,603,7,603,2,604,7,604,2,605,7,605,2,606,7,606,2,607,7,607,2,608,7,608,2,609,7,609,2,610,7,610,2,611,7,611,2,612,7,612,2,613,7,613,2,614,7,614,2,615,7,615,2,616,7,616,2,617,7,617,2,618,7,618,2,619,7,619,2,620,7,620,2,621,7,621,2,622,7,622,2,623,7,623,2,624,7,624,2,625,7,625,2,626,7,626,2,627,7,627,2,628,7,628,2,629,7,629,2,630,7,630,2,631,7,631,2,632,7,632,2,633,7,633,2,634,7,634,2,635,7,635,2,636,7,636,2,637,7,637,2,638,7,638,2,639,7,639,2,640,7,640,2,641,7,641,2,642,7,642,2,643,7,643,2,644,7,644,2,645,7,645,2,646,7,646,2,647,7,647,2,648,7,648,2,649,7,649,2,650,7,650,2,651,7,651,2,652,7,652,2,653,7,653,2,654,7,654,2,655,7,655,2,656,7,656,2,657,7,657,2,658,7,658,2,659,7,659,2,660,7,660,2,661,7,661,2,662,7,662,2,663,7,663,2,664,7,664,2,665,7,665,2,666,7,666,2,667,7,667,2,668,7,668,2,669,7,669,2,670,7,670,2,671,7,671,2,672,7,672,2,673,7,673,2,674,7,674,2,675,7,675,2,676,7,676,2,677,7,677,2,678,7,678,2,679,7,679,2,680,7,680,2,681,7,681,2,682,7,682,2,683,7,683,2,684,7,684,2,685,7,685,2,686,7,686,2,687,7,687,2,688,7,688,2,689,7,689,2,690,7,690,2,691,7,691,2,692,7,692,2,693,7,693,2,694,7,694,2,695,7,695,2,696,7,696,2,697,7,697,2,698,7,698,2,699,7,699,2,700,7,700,2,701,7,701,2,702,7,702,2,703,7,703,2,704,7,704,2,705,7,705,2,706,7,706,2,707,7,707,2,708,7,708,2,709,7,709,2,710,7,710,2,711,7,711,2,712,7,712,2,713,7,713,2,714,7,714,2,715,7,715,2,716,7,716,2,717,7,717,2,718,7,718,2,719,7,719,2,720,7,720,2,721,7,721,2,722,7,722,2,723,7,723,2,724,7,724,2,725,7,725,2,726,7,726,2,727,7,727,2,728,7,728,2,729,7,729,2,730,7,730,2,731,7,731,2,732,7,732,2,733,7,733,2,734,7,734,2,735,7,735,2,736,7,736,2,737,7,737,2,738,7,738,2,739,7,739,2,740,7,740,2,741,7,741,2,742,7,742,2,743,7,743,2,744,7,744,2,745,7,745,2,746,7,746,2,747,7,747,2,748,7,748,2,749,7,749,2,750,7,750,2,751,7,751,2,752,7,752,2,753,7,753,1,0,3,0,1510,8,0,1,0,1,0,1,1,1,1,1,2,1,2,3,2,1518,8,2,1,2,1,2,1,2,1,2,3,2,1524,8,2,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,3,3,1648,8,3,1,4,1,4,3,4,1652,8,4,1,5,1,5,1,5,1,6,1,6,3,6,1659,8,6,1,7,5,7,1662,8,7,10,7,12,7,1665,9,7,1,8,5,8,1668,8,8,10,8,12,8,1671,9,8,1,9,1,9,1,9,3,9,1676,8,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,3,9,1692,8,9,1,10,1,10,1,10,1,10,1,10,1,10,3,10,1700,8,10,1,10,1,10,1,10,3,10,1705,8,10,1,11,1,11,1,11,1,11,1,11,1,11,1,12,1,12,1,12,1,12,1,12,1,12,1,13,1,13,1,13,1,13,3,13,1723,8,13,1,14,1,14,1,14,3,14,1728,8,14,1,14,1,14,1,14,1,14,1,15,1,15,1,15,1,15,3,15,1738,8,15,1,15,1,15,1,16,1,16,1,17,1,17,1,17,1,17,1,17,3,17,1749,8,17,1,17,1,17,1,17,1,17,1,17,3,17,1756,8,17,1,17,1,17,1,18,1,18,3,18,1762,8,18,1,19,5,19,1765,8,19,10,19,12,19,1768,9,19,1,20,1,20,1,20,1,20,1,20,1,20,3,20,1776,8,20,1,21,1,21,3,21,1780,8,21,1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,3,22,1792,8,22,1,23,1,23,1,23,1,23,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,3,24,1824,8,24,1,25,1,25,1,25,5,25,1829,8,25,10,25,12,25,1832,9,25,1,26,1,26,1,26,5,26,1837,8,26,10,26,12,26,1840,9,26,1,27,1,27,3,27,1844,8,27,1,28,1,28,1,28,1,28,1,28,3,28,1851,8,28,1,29,1,29,1,29,1,29,3,29,1857,8,29,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,3,30,1874,8,30,1,31,1,31,1,31,3,31,1879,8,31,1,32,1,32,3,32,1883,8,32,1,33,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,3,34,1896,8,34,1,35,1,35,3,35,1900,8,35,1,36,1,36,1,36,3,36,1905,8,36,1,37,1,37,1,37,3,37,1910,8,37,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,3,38,1922,8,38,1,39,1,39,1,39,1,39,1,39,1,40,1,40,3,40,1931,8,40,1,41,1,41,1,42,1,42,1,43,1,43,1,43,1,44,1,44,1,44,1,44,3,44,1944,8,44,1,44,1,44,1,44,3,44,1949,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,1960,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,1971,8,44,1,44,1,44,1,44,3,44,1976,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,1987,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,1998,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,2008,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,2023,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,2035,8,44,1,44,1,44,1,44,3,44,2040,8,44,1,45,1,45,1,45,5,45,2045,8,45,10,45,12,45,2048,9,45,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,3,46,2058,8,46,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,4,48,2207,8,48,11,48,12,48,2208,1,48,1,48,1,48,1,48,1,48,1,48,1,48,3,48,2218,8,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,3,48,2238,8,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,3,48,2305,8,48,1,49,1,49,1,49,1,49,1,49,3,49,2312,8,49,1,50,1,50,1,50,3,50,2317,8,50,1,51,1,51,1,51,3,51,2322,8,51,1,52,1,52,1,52,3,52,2327,8,52,1,53,1,53,1,53,1,53,1,53,1,53,3,53,2335,8,53,1,54,1,54,1,54,1,54,1,55,1,55,1,55,3,55,2344,8,55,1,56,1,56,1,56,5,56,2349,8,56,10,56,12,56,2352,9,56,1,57,1,57,1,57,1,57,1,57,1,57,1,57,3,57,2361,8,57,3,57,2363,8,57,1,58,4,58,2366,8,58,11,58,12,58,2367,1,59,1,59,1,59,1,59,3,59,2374,8,59,1,59,1,59,1,59,1,59,3,59,2380,8,59,3,59,2382,8,59,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,1,60,3,60,2410,8,60,1,61,1,61,1,61,1,62,1,62,1,62,5,62,2418,8,62,10,62,12,62,2421,9,62,1,63,1,63,1,63,1,63,1,63,1,64,1,64,1,64,5,64,2431,8,64,10,64,12,64,2434,9,64,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,3,65,2445,8,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,65,3,65,2459,8,65,1,66,1,66,1,66,3,66,2464,8,66,1,67,1,67,3,67,2468,8,67,1,67,1,67,1,67,1,67,3,67,2474,8,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,3,67,2488,8,67,1,67,1,67,1,67,1,67,3,67,2494,8,67,1,68,1,68,1,69,1,69,1,69,3,69,2501,8,69,1,70,5,70,2504,8,70,10,70,12,70,2507,9,70,1,70,1,70,1,70,1,70,3,70,2513,8,70,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,3,71,2550,8,71,1,72,3,72,2553,8,72,1,72,1,72,1,72,3,72,2558,8,72,1,73,1,73,1,73,5,73,2563,8,73,10,73,12,73,2566,9,73,1,74,1,74,1,74,1,75,1,75,1,75,1,75,1,75,1,75,1,75,5,75,2578,8,75,10,75,12,75,2581,9,75,1,75,1,75,1,75,3,75,2586,8,75,1,76,1,76,1,76,1,76,1,76,1,76,3,76,2594,8,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,1,76,3,76,2627,8,76,1,77,1,77,1,77,1,77,1,77,1,77,1,77,1,77,3,77,2637,8,77,1,78,1,78,3,78,2641,8,78,1,79,1,79,1,79,1,79,1,79,3,79,2648,8,79,1,80,1,80,1,80,5,80,2653,8,80,10,80,12,80,2656,9,80,1,81,1,81,1,81,5,81,2661,8,81,10,81,12,81,2664,9,81,1,82,1,82,1,82,3,82,2669,8,82,1,83,1,83,3,83,2673,8,83,1,84,1,84,1,84,1,84,1,84,1,85,1,85,1,85,3,85,2683,8,85,1,85,1,85,1,86,5,86,2688,8,86,10,86,12,86,2691,9,86,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,3,87,2701,8,87,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,3,88,2721,8,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,3,88,2735,8,88,1,88,1,88,1,88,1,88,1,88,1,88,3,88,2743,8,88,1,89,1,89,1,89,3,89,2748,8,89,1,90,1,90,1,90,1,90,1,90,3,90,2755,8,90,1,91,1,91,1,91,1,91,1,92,1,92,5,92,2763,8,92,10,92,12,92,2766,9,92,1,93,1,93,1,94,1,94,1,94,1,94,1,94,3,94,2775,8,94,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,3,95,2795,8,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,3,95,2810,8,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,3,95,2835,8,95,1,96,1,96,1,96,1,96,1,96,3,96,2842,8,96,1,97,1,97,1,97,5,97,2847,8,97,10,97,12,97,2850,9,97,1,98,1,98,1,99,1,99,1,99,1,99,1,99,1,99,3,99,2860,8,99,1,100,1,100,1,100,3,100,2865,8,100,1,101,1,101,1,101,5,101,2870,8,101,10,101,12,101,2873,9,101,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,102,3,102,2883,8,102,1,103,1,103,1,103,1,103,1,103,1,103,3,103,2891,8,103,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,3,104,2902,8,104,1,105,1,105,1,105,1,105,1,106,1,106,1,106,1,106,1,107,1,107,1,107,1,107,1,107,1,107,3,107,2918,8,107,1,108,1,108,1,108,1,108,1,108,1,108,3,108,2926,8,108,1,109,1,109,3,109,2930,8,109,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,111,1,111,1,111,5,111,2942,8,111,10,111,12,111,2945,9,111,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,3,112,2961,8,112,1,113,1,113,1,113,3,113,2966,8,113,1,114,1,114,1,114,1,114,1,114,3,114,2973,8,114,1,115,1,115,1,115,1,115,1,115,1,115,1,115,3,115,2982,8,115,1,115,3,115,2985,8,115,1,116,1,116,1,116,3,116,2990,8,116,1,117,1,117,1,117,1,117,1,117,3,117,2997,8,117,1,118,1,118,1,118,1,118,1,119,1,119,1,119,1,119,1,119,3,119,3008,8,119,1,119,1,119,1,119,1,119,1,119,1,119,1,119,1,120,1,120,1,120,1,120,3,120,3021,8,120,1,120,1,120,1,120,1,120,1,120,1,121,1,121,1,121,1,121,1,121,1,121,3,121,3034,8,121,1,121,1,121,1,121,1,121,1,121,1,122,1,122,1,122,1,122,1,122,1,122,1,122,1,123,1,123,1,123,1,123,3,123,3052,8,123,1,123,3,123,3055,8,123,1,124,1,124,3,124,3059,8,124,1,124,1,124,1,124,1,124,1,124,3,124,3066,8,124,1,124,1,124,1,124,1,124,1,124,1,125,1,125,1,125,1,125,1,125,1,125,1,126,1,126,1,126,1,126,3,126,3083,8,126,1,126,1,126,1,126,1,127,1,127,1,127,1,127,1,127,1,127,3,127,3094,8,127,1,127,1,127,3,127,3098,8,127,1,128,1,128,1,128,1,128,3,128,3104,8,128,1,128,1,128,1,128,1,129,1,129,1,129,1,129,1,129,3,129,3114,8,129,1,130,4,130,3117,8,130,11,130,12,130,3118,1,131,1,131,1,131,1,131,1,131,1,131,1,131,3,131,3128,8,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,3,131,3150,8,131,3,131,3152,8,131,1,132,1,132,1,132,1,132,1,132,1,132,3,132,3160,8,132,1,133,1,133,1,133,5,133,3165,8,133,10,133,12,133,3168,9,133,1,134,1,134,1,134,3,134,3173,8,134,1,134,1,134,1,134,1,134,1,134,1,134,1,134,3,134,3182,8,134,3,134,3184,8,134,1,135,1,135,3,135,3188,8,135,1,136,1,136,1,136,3,136,3193,8,136,1,137,1,137,1,137,1,137,3,137,3199,8,137,1,138,1,138,3,138,3203,8,138,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,140,1,140,1,140,3,140,3216,8,140,1,141,1,141,1,141,1,141,3,141,3222,8,141,1,141,1,141,1,142,1,142,1,142,1,142,1,142,3,142,3231,8,142,1,142,1,142,1,142,5,142,3236,8,142,10,142,12,142,3239,9,142,1,143,1,143,1,143,1,143,1,143,1,143,1,143,3,143,3248,8,143,1,144,1,144,1,144,1,144,1,144,5,144,3255,8,144,10,144,12,144,3258,9,144,1,145,1,145,1,145,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,146,3,146,3402,8,146,1,147,1,147,1,147,1,147,1,147,1,147,3,147,3410,8,147,1,147,1,147,1,148,1,148,1,148,1,148,1,148,1,148,1,148,1,148,3,148,3422,8,148,1,149,4,149,3425,8,149,11,149,12,149,3426,1,150,1,150,1,150,1,150,1,150,1,150,3,150,3435,8,150,1,150,1,150,1,150,1,150,1,150,1,150,1,150,1,150,1,150,3,150,3446,8,150,1,151,1,151,1,151,1,151,1,151,1,151,3,151,3454,8,151,1,152,1,152,1,152,5,152,3459,8,152,10,152,12,152,3462,9,152,1,153,1,153,1,153,1,153,1,153,1,154,1,154,1,154,5,154,3472,8,154,10,154,12,154,3475,9,154,1,155,1,155,1,155,1,155,1,155,1,155,1,155,3,155,3484,8,155,1,156,1,156,1,156,1,157,1,157,1,158,1,158,1,159,1,159,1,159,1,159,1,159,3,159,3498,8,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,159,3,159,3514,8,159,1,159,1,159,1,159,1,159,1,159,1,159,3,159,3522,8,159,1,160,1,160,1,160,3,160,3527,8,160,1,161,1,161,1,161,3,161,3532,8,161,1,162,1,162,1,162,1,162,1,162,1,162,3,162,3540,8,162,3,162,3542,8,162,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,3,163,3600,8,163,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,165,1,165,1,165,3,165,3617,8,165,1,166,1,166,1,166,1,166,1,166,1,166,3,166,3625,8,166,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,3,167,3648,8,167,1,168,1,168,3,168,3652,8,168,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,3,169,3672,8,169,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,173,1,173,1,173,1,173,1,173,1,173,3,173,3709,8,173,1,174,1,174,1,174,1,174,1,174,1,174,1,174,3,174,3718,8,174,1,175,1,175,1,175,3,175,3723,8,175,1,176,1,176,1,176,3,176,3728,8,176,1,177,1,177,1,177,3,177,3733,8,177,1,178,1,178,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,180,1,180,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,181,3,181,3786,8,181,1,182,1,182,1,182,1,182,3,182,3792,8,182,1,183,1,183,1,183,5,183,3797,8,183,10,183,12,183,3800,9,183,1,184,1,184,1,184,1,184,1,184,1,184,1,184,3,184,3809,8,184,1,185,1,185,1,185,3,185,3814,8,185,1,186,4,186,3817,8,186,11,186,12,186,3818,1,187,1,187,1,187,1,187,1,187,1,188,1,188,1,189,1,189,1,190,1,190,1,191,1,191,3,191,3834,8,191,1,191,1,191,3,191,3838,8,191,1,192,1,192,1,193,1,193,1,193,1,193,1,193,1,193,3,193,3848,8,193,1,194,1,194,1,195,1,195,3,195,3854,8,195,1,195,1,195,5,195,3858,8,195,10,195,12,195,3861,9,195,1,196,1,196,1,196,1,196,3,196,3867,8,196,1,197,1,197,1,197,3,197,3872,8,197,1,198,5,198,3875,8,198,10,198,12,198,3878,9,198,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,3,199,3891,8,199,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,3,200,3919,8,200,1,201,1,201,1,201,5,201,3924,8,201,10,201,12,201,3927,9,201,1,202,1,202,1,202,1,202,1,202,1,202,1,203,1,203,1,203,5,203,3938,8,203,10,203,12,203,3941,9,203,1,204,1,204,1,204,1,204,1,204,1,204,1,205,1,205,1,205,1,205,1,205,1,205,3,205,3955,8,205,1,206,1,206,1,206,1,206,1,206,1,206,1,206,1,206,1,206,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,3,207,4007,8,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,1,207,3,207,4074,8,207,1,208,1,208,1,208,1,208,5,208,4080,8,208,10,208,12,208,4083,9,208,1,208,1,208,1,209,1,209,1,209,3,209,4090,8,209,1,210,1,210,1,210,1,210,1,210,1,210,3,210,4098,8,210,1,211,1,211,1,211,1,211,5,211,4104,8,211,10,211,12,211,4107,9,211,1,211,1,211,1,212,1,212,1,212,1,212,1,213,1,213,1,213,5,213,4118,8,213,10,213,12,213,4121,9,213,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,3,214,4160,8,214,1,215,1,215,1,215,1,215,3,215,4166,8,215,1,216,1,216,1,216,1,216,1,216,3,216,4173,8,216,1,216,1,216,1,216,1,216,1,216,1,216,1,216,1,216,1,216,1,217,1,217,1,217,5,217,4187,8,217,10,217,12,217,4190,9,217,1,218,1,218,1,218,1,218,1,218,3,218,4197,8,218,1,218,1,218,1,218,1,218,1,218,3,218,4204,8,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,3,218,4219,8,218,1,219,1,219,1,219,3,219,4224,8,219,1,220,1,220,1,220,1,220,1,220,1,220,1,220,3,220,4233,8,220,1,221,1,221,1,221,1,221,1,221,1,221,1,221,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,3,222,4260,8,222,1,223,1,223,1,223,5,223,4265,8,223,10,223,12,223,4268,9,223,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,3,224,4282,8,224,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,3,225,4302,8,225,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,3,226,4322,8,226,1,227,1,227,1,227,1,227,1,227,1,227,1,228,1,228,1,228,1,228,1,228,1,228,1,228,1,229,1,229,1,229,1,229,3,229,4341,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4350,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4359,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4368,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4377,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4386,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4397,8,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,4442,8,229,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,3,230,4465,8,230,1,231,1,231,1,231,3,231,4470,8,231,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,3,232,4485,8,232,1,233,1,233,1,234,1,234,1,234,5,234,4492,8,234,10,234,12,234,4495,9,234,1,235,1,235,3,235,4499,8,235,1,236,1,236,4,236,4503,8,236,11,236,12,236,4504,1,237,1,237,1,237,5,237,4510,8,237,10,237,12,237,4513,9,237,1,238,1,238,1,238,1,238,1,238,1,238,1,239,1,239,1,239,1,239,1,239,3,239,4526,8,239,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,3,240,4625,8,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,3,240,4712,8,240,1,241,1,241,3,241,4716,8,241,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,3,242,4854,8,242,1,243,1,243,1,243,3,243,4859,8,243,1,244,1,244,3,244,4863,8,244,1,245,1,245,1,245,1,245,3,245,4869,8,245,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,4937,8,246,1,247,1,247,1,248,1,248,3,248,4943,8,248,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,3,250,4972,8,250,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,3,251,4989,8,251,1,252,1,252,1,252,5,252,4994,8,252,10,252,12,252,4997,9,252,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,3,253,5008,8,253,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,3,254,5048,8,254,1,255,1,255,1,255,5,255,5053,8,255,10,255,12,255,5056,9,255,1,256,1,256,1,256,3,256,5061,8,256,1,257,1,257,1,257,1,257,3,257,5067,8,257,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,3,259,5093,8,259,1,260,1,260,1,260,1,260,3,260,5099,8,260,1,261,1,261,1,261,1,261,3,261,5105,8,261,1,262,1,262,1,262,1,262,5,262,5111,8,262,10,262,12,262,5114,9,262,1,262,1,262,1,263,1,263,1,263,1,263,1,263,1,263,1,263,3,263,5125,8,263,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,3,264,5154,8,264,1,265,1,265,1,266,1,266,3,266,5160,8,266,1,266,1,266,3,266,5164,8,266,1,266,3,266,5167,8,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,3,266,5182,8,266,1,266,1,266,3,266,5186,8,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,3,266,5203,8,266,1,267,1,267,1,267,3,267,5208,8,267,1,268,1,268,1,268,5,268,5213,8,268,10,268,12,268,5216,9,268,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,3,269,5229,8,269,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,3,270,5242,8,270,1,271,1,271,1,271,1,271,1,271,5,271,5249,8,271,10,271,12,271,5252,9,271,1,271,1,271,1,271,3,271,5257,8,271,1,272,1,272,1,272,3,272,5262,8,272,1,273,1,273,3,273,5266,8,273,1,274,1,274,1,274,3,274,5271,8,274,1,275,1,275,1,275,1,275,1,275,3,275,5278,8,275,1,276,1,276,1,276,1,276,1,276,1,276,3,276,5286,8,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,3,276,5296,8,276,3,276,5298,8,276,1,276,1,276,1,277,1,277,1,277,3,277,5305,8,277,1,278,1,278,1,278,5,278,5310,8,278,10,278,12,278,5313,9,278,1,279,1,279,1,279,5,279,5318,8,279,10,279,12,279,5321,9,279,1,280,1,280,1,280,3,280,5326,8,280,1,280,1,280,1,280,1,280,1,280,3,280,5333,8,280,3,280,5335,8,280,1,281,1,281,1,281,5,281,5340,8,281,10,281,12,281,5343,9,281,1,282,1,282,1,282,3,282,5348,8,282,1,283,1,283,3,283,5352,8,283,1,283,1,283,1,283,1,283,3,283,5358,8,283,1,283,1,283,1,283,3,283,5363,8,283,1,284,1,284,3,284,5367,8,284,1,284,1,284,1,284,3,284,5372,8,284,1,285,1,285,1,285,1,285,3,285,5378,8,285,1,286,1,286,1,287,1,287,3,287,5384,8,287,1,287,1,287,1,287,1,287,3,287,5390,8,287,1,287,1,287,1,287,1,287,3,287,5396,8,287,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,3,288,5409,8,288,1,288,1,288,1,289,1,289,1,289,5,289,5416,8,289,10,289,12,289,5419,9,289,1,290,1,290,1,290,1,291,1,291,1,291,5,291,5427,8,291,10,291,12,291,5430,9,291,1,292,4,292,5433,8,292,11,292,12,292,5434,1,292,1,292,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,3,293,5474,8,293,1,294,1,294,1,294,1,294,1,294,1,294,1,294,1,294,3,294,5484,8,294,1,295,1,295,1,295,1,295,1,295,3,295,5491,8,295,1,296,1,296,1,296,1,296,1,296,1,296,1,296,5,296,5500,8,296,10,296,12,296,5503,9,296,1,297,1,297,1,297,3,297,5508,8,297,1,298,1,298,1,298,1,299,1,299,1,299,5,299,5516,8,299,10,299,12,299,5519,9,299,1,300,1,300,1,300,1,300,4,300,5525,8,300,11,300,12,300,5526,1,300,3,300,5530,8,300,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,3,301,5568,8,301,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,3,302,5582,8,302,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,3,303,5596,8,303,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,3,304,5620,8,304,1,305,1,305,1,305,5,305,5625,8,305,10,305,12,305,5628,9,305,1,305,1,305,1,306,1,306,1,306,5,306,5635,8,306,10,306,12,306,5638,9,306,1,307,1,307,1,307,1,308,1,308,1,308,1,309,4,309,5647,8,309,11,309,12,309,5648,1,310,1,310,1,310,3,310,5654,8,310,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,3,311,5690,8,311,1,312,1,312,1,312,1,312,1,312,3,312,5697,8,312,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,314,1,314,1,314,3,314,5712,8,314,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,3,316,5759,8,316,1,317,1,317,1,317,1,317,1,317,1,317,1,317,1,317,1,317,1,318,1,318,1,318,1,318,1,318,3,318,5775,8,318,1,318,1,318,3,318,5779,8,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,3,318,5788,8,318,1,318,1,318,3,318,5792,8,318,1,318,1,318,1,318,1,318,1,318,1,318,3,318,5800,8,318,1,318,1,318,3,318,5804,8,318,1,318,1,318,1,318,1,318,1,318,1,318,3,318,5812,8,318,1,318,1,318,3,318,5816,8,318,1,318,1,318,1,318,1,318,1,318,1,318,3,318,5824,8,318,1,318,1,318,3,318,5828,8,318,1,318,3,318,5831,8,318,1,319,1,319,1,320,1,320,1,320,5,320,5838,8,320,10,320,12,320,5841,9,320,1,321,1,321,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,322,3,322,5857,8,322,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,3,323,6029,8,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,3,323,6074,8,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,3,323,6165,8,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,3,323,6296,8,323,1,324,1,324,3,324,6300,8,324,1,325,1,325,1,325,3,325,6305,8,325,1,326,1,326,1,326,1,326,3,326,6311,8,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,3,326,6322,8,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,3,326,6333,8,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,3,326,6346,8,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,3,326,6358,8,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,3,326,6369,8,326,1,326,1,326,1,326,1,326,1,326,3,326,6376,8,326,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,3,327,6524,8,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,1,327,3,327,6590,8,327,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,329,1,329,1,329,5,329,6603,8,329,10,329,12,329,6606,9,329,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,3,330,6616,8,330,1,331,1,331,1,331,1,331,1,331,3,331,6623,8,331,1,332,1,332,1,332,1,332,1,332,1,332,1,332,1,332,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,3,333,6816,8,333,1,334,1,334,1,334,1,334,1,334,1,334,1,335,1,335,3,335,6826,8,335,1,336,1,336,1,336,1,336,1,336,1,336,3,336,6834,8,336,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,1,337,3,337,6863,8,337,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,339,1,339,1,339,5,339,6877,8,339,10,339,12,339,6880,9,339,1,340,1,340,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,3,341,6921,8,341,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,3,342,6935,8,342,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,343,1,344,1,344,1,344,1,344,1,344,1,344,3,344,6957,8,344,1,345,1,345,1,345,5,345,6962,8,345,10,345,12,345,6965,9,345,1,346,1,346,1,346,1,346,1,346,3,346,6972,8,346,1,347,1,347,3,347,6976,8,347,1,348,1,348,1,349,1,349,1,349,3,349,6983,8,349,1,350,1,350,1,350,1,350,1,351,1,351,1,351,3,351,6992,8,351,1,352,1,352,1,352,1,353,1,353,1,353,1,353,3,353,7001,8,353,1,354,1,354,1,354,1,354,1,354,1,354,1,354,3,354,7010,8,354,1,354,1,354,1,354,3,354,7015,8,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,3,354,7056,8,354,1,355,1,355,1,355,3,355,7061,8,355,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,3,356,7073,8,356,1,357,1,357,3,357,7077,8,357,1,357,5,357,7080,8,357,10,357,12,357,7083,9,357,1,358,1,358,3,358,7087,8,358,1,358,1,358,3,358,7091,8,358,1,359,1,359,1,359,3,359,7096,8,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,3,359,7112,8,359,1,359,1,359,1,359,1,359,1,360,1,360,3,360,7120,8,360,1,360,1,360,1,360,3,360,7125,8,360,1,361,1,361,1,361,1,362,1,362,1,362,1,362,1,362,1,362,1,363,4,363,7137,8,363,11,363,12,363,7138,1,363,3,363,7142,8,363,1,364,1,364,3,364,7146,8,364,1,364,1,364,1,364,3,364,7151,8,364,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,3,365,7161,8,365,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,3,366,7172,8,366,1,367,1,367,1,367,1,367,1,367,1,368,1,368,1,368,1,368,3,368,7183,8,368,1,368,1,368,1,368,1,368,1,368,1,368,5,368,7191,8,368,10,368,12,368,7194,9,368,1,368,1,368,3,368,7198,8,368,1,369,1,369,1,369,1,369,1,369,1,369,1,370,1,370,1,370,1,370,1,370,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,372,1,372,1,372,1,372,1,372,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,3,373,7236,8,373,1,373,1,373,1,373,1,373,1,373,1,373,3,373,7244,8,373,1,374,1,374,3,374,7248,8,374,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,3,376,7329,8,376,1,377,1,377,3,377,7333,8,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,3,378,7357,8,378,1,379,1,379,1,379,3,379,7362,8,379,1,380,1,380,3,380,7366,8,380,1,380,3,380,7369,8,380,1,380,1,380,3,380,7373,8,380,1,380,1,380,1,380,1,380,1,380,1,380,1,380,1,380,3,380,7383,8,380,1,381,1,381,1,381,1,381,1,381,1,381,1,381,1,381,1,381,1,381,3,381,7395,8,381,1,382,1,382,1,382,5,382,7400,8,382,10,382,12,382,7403,9,382,1,383,1,383,1,384,1,384,1,384,1,385,1,385,3,385,7412,8,385,1,386,1,386,1,386,3,386,7417,8,386,1,387,1,387,3,387,7421,8,387,1,388,1,388,1,388,1,388,1,388,3,388,7428,8,388,1,389,1,389,1,389,1,390,1,390,1,390,5,390,7436,8,390,10,390,12,390,7439,9,390,1,390,3,390,7442,8,390,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,5,391,7459,8,391,10,391,12,391,7462,9,391,1,391,1,391,1,391,3,391,7467,8,391,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,3,392,7478,8,392,1,393,1,393,1,393,1,394,1,394,3,394,7485,8,394,1,395,1,395,1,395,3,395,7490,8,395,1,396,1,396,1,396,1,396,1,396,1,396,1,397,1,397,1,397,1,397,1,397,3,397,7503,8,397,1,398,1,398,1,398,1,398,3,398,7509,8,398,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,3,399,7538,8,399,1,400,1,400,1,400,1,400,1,400,3,400,7545,8,400,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,401,3,401,7557,8,401,1,402,3,402,7560,8,402,1,402,1,402,1,402,1,402,1,402,1,402,1,402,1,403,1,403,1,403,3,403,7572,8,403,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,3,404,7587,8,404,1,404,1,404,1,404,1,404,3,404,7593,8,404,1,405,1,405,1,406,1,406,1,406,5,406,7600,8,406,10,406,12,406,7603,9,406,1,407,1,407,1,407,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,408,3,408,7618,8,408,1,408,3,408,7621,8,408,1,409,1,409,1,409,1,409,1,409,1,409,1,409,1,409,1,409,3,409,7632,8,409,1,410,1,410,1,410,3,410,7637,8,410,1,411,1,411,3,411,7641,8,411,1,411,1,411,3,411,7645,8,411,1,411,1,411,1,411,3,411,7650,8,411,1,411,3,411,7653,8,411,1,411,1,411,1,411,1,411,3,411,7659,8,411,1,411,1,411,3,411,7663,8,411,3,411,7665,8,411,1,411,3,411,7668,8,411,1,412,1,412,1,412,1,412,1,412,3,412,7675,8,412,1,412,3,412,7678,8,412,1,412,1,412,1,412,1,412,1,412,3,412,7685,8,412,1,412,1,412,1,413,1,413,1,413,1,413,3,413,7693,8,413,1,413,3,413,7696,8,413,1,413,1,413,1,413,1,413,1,414,1,414,1,414,3,414,7705,8,414,1,414,1,414,1,415,3,415,7710,8,415,1,415,1,415,1,415,1,415,1,415,1,415,1,415,1,416,1,416,1,416,3,416,7722,8,416,1,417,1,417,1,417,1,417,1,417,1,417,1,418,1,418,1,418,1,418,1,418,3,418,7735,8,418,1,419,1,419,1,419,1,419,1,419,1,419,1,419,1,419,1,419,3,419,7746,8,419,1,419,3,419,7749,8,419,1,420,1,420,3,420,7753,8,420,1,421,1,421,1,421,1,421,3,421,7759,8,421,1,422,3,422,7762,8,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,423,1,423,1,423,5,423,7775,8,423,10,423,12,423,7778,9,423,1,424,1,424,1,424,1,424,1,424,1,424,1,424,1,424,5,424,7788,8,424,10,424,12,424,7791,9,424,1,424,1,424,1,424,1,424,3,424,7797,8,424,1,425,1,425,1,425,1,426,1,426,1,426,1,426,1,426,1,426,1,426,5,426,7809,8,426,10,426,12,426,7812,9,426,1,426,1,426,1,426,1,426,1,426,1,427,1,427,1,428,1,428,1,428,1,428,1,428,3,428,7826,8,428,1,429,1,429,3,429,7830,8,429,1,430,1,430,1,430,1,430,1,430,1,430,1,430,1,430,3,430,7840,8,430,1,431,1,431,1,431,1,431,1,431,1,431,1,431,3,431,7849,8,431,3,431,7851,8,431,1,431,1,431,1,431,1,431,1,431,1,431,1,431,1,431,3,431,7861,8,431,3,431,7863,8,431,3,431,7865,8,431,1,432,1,432,1,432,1,432,1,432,5,432,7872,8,432,10,432,12,432,7875,9,432,1,433,1,433,1,433,1,433,1,433,5,433,7882,8,433,10,433,12,433,7885,9,433,1,434,1,434,3,434,7889,8,434,1,434,1,434,1,434,3,434,7894,8,434,1,434,1,434,1,434,3,434,7899,8,434,1,434,3,434,7902,8,434,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,1,435,3,435,7916,8,435,1,436,1,436,3,436,7920,8,436,1,436,1,436,1,436,5,436,7925,8,436,10,436,12,436,7928,9,436,1,437,1,437,1,437,1,437,1,437,1,437,1,437,1,437,1,438,1,438,1,438,1,438,3,438,7942,8,438,1,439,1,439,3,439,7946,8,439,1,439,1,439,3,439,7950,8,439,1,440,3,440,7953,8,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,3,440,7966,8,440,1,441,1,441,3,441,7970,8,441,1,442,1,442,1,442,3,442,7975,8,442,1,443,1,443,1,443,1,443,1,443,1,443,3,443,7983,8,443,1,444,1,444,1,445,1,445,3,445,7989,8,445,1,446,1,446,1,446,1,446,1,447,1,447,1,447,5,447,7998,8,447,10,447,12,447,8001,9,447,1,448,1,448,1,448,1,448,3,448,8007,8,448,1,448,1,448,1,449,1,449,3,449,8013,8,449,1,449,1,449,3,449,8017,8,449,3,449,8019,8,449,1,450,1,450,3,450,8023,8,450,1,451,1,451,1,451,1,451,3,451,8029,8,451,1,451,1,451,1,451,1,451,1,451,1,451,1,451,3,451,8038,8,451,1,451,1,451,1,451,1,451,3,451,8044,8,451,3,451,8046,8,451,3,451,8048,8,451,1,452,1,452,1,452,1,452,1,452,3,452,8055,8,452,1,453,1,453,3,453,8059,8,453,1,454,1,454,1,455,1,455,1,455,1,455,1,455,3,455,8068,8,455,1,456,1,456,3,456,8072,8,456,1,457,1,457,1,458,1,458,1,459,1,459,1,459,1,459,3,459,8082,8,459,1,460,1,460,1,460,5,460,8087,8,460,10,460,12,460,8090,9,460,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,3,461,8111,8,461,1,462,1,462,1,462,3,462,8116,8,462,1,463,4,463,8119,8,463,11,463,12,463,8120,1,463,1,463,1,463,3,463,8126,8,463,1,464,1,464,1,464,1,464,1,465,1,465,1,465,3,465,8135,8,465,1,465,1,465,3,465,8139,8,465,1,465,3,465,8142,8,465,1,466,1,466,1,466,3,466,8147,8,466,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,467,5,467,8158,8,467,10,467,12,467,8161,9,467,1,468,1,468,1,468,3,468,8166,8,468,1,469,1,469,1,469,1,469,5,469,8172,8,469,10,469,12,469,8175,9,469,3,469,8177,8,469,1,470,1,470,1,470,4,470,8182,8,470,11,470,12,470,8183,1,471,1,471,1,471,3,471,8189,8,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,3,471,8210,8,471,1,471,1,471,1,471,1,471,1,471,1,471,1,471,3,471,8219,8,471,1,471,1,471,1,471,3,471,8224,8,471,1,471,1,471,1,471,1,471,3,471,8230,8,471,1,471,1,471,1,471,3,471,8235,8,471,1,471,1,471,1,471,1,471,1,471,3,471,8242,8,471,1,471,1,471,1,471,3,471,8247,8,471,1,471,1,471,1,471,1,471,5,471,8253,8,471,10,471,12,471,8256,9,471,1,472,3,472,8259,8,472,1,472,1,472,1,472,1,472,1,472,3,472,8266,8,472,1,473,1,473,3,473,8270,8,473,1,474,3,474,8273,8,474,1,474,1,474,1,474,1,474,1,474,3,474,8280,8,474,1,475,1,475,1,475,3,475,8285,8,475,1,475,3,475,8288,8,475,1,475,1,475,1,475,1,475,1,475,3,475,8295,8,475,1,476,1,476,3,476,8299,8,476,1,477,1,477,1,477,1,477,1,477,1,477,1,477,3,477,8308,8,477,1,478,1,478,1,479,1,479,3,479,8314,8,479,1,479,1,479,1,479,1,479,1,479,1,479,3,479,8322,8,479,3,479,8324,8,479,1,480,1,480,1,480,5,480,8329,8,480,10,480,12,480,8332,9,480,1,481,1,481,3,481,8336,8,481,1,481,3,481,8339,8,481,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,5,483,8360,8,483,10,483,12,483,8363,9,483,1,483,1,483,1,483,3,483,8368,8,483,1,484,1,484,1,484,1,485,1,485,1,485,1,485,1,485,1,485,3,485,8379,8,485,1,486,1,486,1,486,3,486,8384,8,486,1,487,1,487,1,487,3,487,8389,8,487,1,488,1,488,1,488,1,488,1,488,3,488,8396,8,488,1,488,3,488,8399,8,488,1,489,1,489,3,489,8403,8,489,1,490,1,490,1,490,5,490,8408,8,490,10,490,12,490,8411,9,490,1,491,1,491,1,491,1,491,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,5,492,8425,8,492,10,492,12,492,8428,9,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,5,492,8441,8,492,10,492,12,492,8444,9,492,3,492,8446,8,492,1,492,1,492,1,493,1,493,1,493,3,493,8453,8,493,1,493,1,493,3,493,8457,8,493,1,494,4,494,8460,8,494,11,494,12,494,8461,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,3,495,8472,8,495,1,496,1,496,1,496,5,496,8477,8,496,10,496,12,496,8480,9,496,1,497,1,497,1,497,1,497,1,497,1,497,3,497,8488,8,497,1,498,3,498,8491,8,498,1,498,1,498,1,498,3,498,8496,8,498,1,498,5,498,8499,8,498,10,498,12,498,8502,9,498,1,498,1,498,1,498,1,498,1,498,3,498,8509,8,498,3,498,8511,8,498,1,498,1,498,1,498,1,498,3,498,8517,8,498,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,499,3,499,8530,8,499,3,499,8532,8,499,1,500,1,500,1,500,1,500,3,500,8538,8,500,1,501,1,501,1,501,1,501,3,501,8544,8,501,1,501,3,501,8547,8,501,1,501,1,501,1,502,1,502,1,502,1,502,1,502,3,502,8556,8,502,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,503,3,503,8574,8,503,1,504,1,504,1,504,1,504,1,504,3,504,8581,8,504,1,505,1,505,3,505,8585,8,505,1,506,1,506,3,506,8589,8,506,1,507,1,507,1,507,1,507,1,507,1,507,1,508,1,508,1,508,1,509,1,509,1,509,1,509,1,509,3,509,8605,8,509,1,510,1,510,1,510,1,510,1,510,3,510,8612,8,510,1,511,1,511,1,511,1,511,1,511,1,511,3,511,8620,8,511,1,512,1,512,3,512,8624,8,512,1,513,1,513,1,513,1,513,1,513,3,513,8631,8,513,1,513,1,513,1,514,1,514,1,515,1,515,1,515,1,515,1,515,1,515,1,515,3,515,8644,8,515,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,1,516,3,516,8660,8,516,1,516,1,516,1,516,1,516,3,516,8666,8,516,1,516,1,516,1,516,1,516,3,516,8672,8,516,1,517,1,517,1,517,1,517,1,517,3,517,8679,8,517,1,518,1,518,1,518,3,518,8684,8,518,1,519,1,519,1,520,1,520,3,520,8690,8,520,1,521,1,521,1,521,5,521,8695,8,521,10,521,12,521,8698,9,521,1,522,1,522,1,522,5,522,8703,8,522,10,522,12,522,8706,9,522,1,523,1,523,1,523,5,523,8711,8,523,10,523,12,523,8714,9,523,1,524,1,524,3,524,8718,8,524,1,524,1,524,3,524,8722,8,524,1,524,1,524,1,524,1,524,3,524,8728,8,524,1,525,1,525,3,525,8732,8,525,1,525,1,525,3,525,8736,8,525,1,526,3,526,8739,8,526,1,526,1,526,1,527,1,527,3,527,8745,8,527,1,528,1,528,1,528,3,528,8750,8,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,1,528,3,528,8766,8,528,1,528,3,528,8769,8,528,3,528,8771,8,528,1,529,1,529,1,529,1,529,1,529,1,529,1,529,1,529,1,529,1,529,3,529,8783,8,529,3,529,8785,8,529,1,530,1,530,3,530,8789,8,530,1,530,1,530,1,530,1,530,3,530,8795,8,530,1,530,1,530,1,530,3,530,8800,8,530,1,531,1,531,1,531,1,531,5,531,8806,8,531,10,531,12,531,8809,9,531,1,532,3,532,8812,8,532,1,532,1,532,1,533,1,533,1,533,5,533,8819,8,533,10,533,12,533,8822,9,533,1,534,1,534,1,534,5,534,8827,8,534,10,534,12,534,8830,9,534,1,535,1,535,1,535,3,535,8835,8,535,1,536,3,536,8838,8,536,1,536,1,536,1,537,1,537,1,537,1,537,1,537,3,537,8847,8,537,1,538,1,538,1,538,3,538,8852,8,538,1,539,1,539,1,539,5,539,8857,8,539,10,539,12,539,8860,9,539,1,540,1,540,1,540,1,540,1,540,1,540,1,540,3,540,8869,8,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,3,540,8895,8,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,3,540,8906,8,540,5,540,8908,8,540,10,540,12,540,8911,9,540,1,541,1,541,1,541,1,541,1,541,3,541,8918,8,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,1,541,3,541,8941,8,541,1,541,1,541,1,541,1,541,1,541,1,541,3,541,8949,8,541,1,542,1,542,1,543,1,543,1,543,1,543,1,543,1,543,3,543,8959,8,543,1,543,1,543,1,543,1,543,1,543,1,543,1,543,1,543,1,543,1,543,1,543,1,543,3,543,8973,8,543,1,543,1,543,1,544,1,544,1,544,1,544,1,544,1,544,3,544,8983,8,544,1,545,1,545,3,545,8987,8,545,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,3,546,9001,8,546,1,546,1,546,1,546,1,546,1,546,3,546,9008,8,546,1,546,1,546,1,546,1,546,1,546,3,546,9015,8,546,1,546,1,546,1,546,1,546,1,546,3,546,9022,8,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,3,546,9047,8,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,3,546,9076,8,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,3,546,9115,8,546,3,546,9117,8,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,3,546,9145,8,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,546,3,546,9166,8,546,1,547,1,547,1,547,1,547,1,547,3,547,9173,8,547,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,3,548,9186,8,548,1,549,1,549,1,549,1,549,1,549,1,550,1,550,1,550,5,550,9196,8,550,10,550,12,550,9199,9,550,1,551,1,551,1,551,3,551,9204,8,551,1,552,1,552,1,553,1,553,1,553,1,553,1,553,3,553,9213,8,553,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,3,554,9230,8,554,1,555,1,555,1,555,1,556,1,556,1,556,1,556,1,556,1,556,1,556,3,556,9242,8,556,1,557,1,557,1,557,1,557,1,557,1,557,1,557,3,557,9251,8,557,1,558,1,558,1,558,3,558,9256,8,558,1,559,1,559,1,559,5,559,9261,8,559,10,559,12,559,9264,9,559,1,560,1,560,1,560,1,560,1,561,1,561,1,561,3,561,9273,8,561,1,561,3,561,9276,8,561,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,563,1,563,3,563,9287,8,563,1,564,1,564,1,564,1,564,3,564,9293,8,564,1,565,1,565,1,565,1,565,1,565,1,565,1,565,1,565,1,565,1,565,1,565,1,565,1,565,3,565,9308,8,565,1,566,1,566,1,566,1,566,1,566,1,566,3,566,9316,8,566,1,567,1,567,1,567,1,567,1,567,1,567,1,567,3,567,9325,8,567,1,568,1,568,1,568,1,568,1,568,1,568,1,568,3,568,9334,8,568,1,568,3,568,9337,8,568,1,569,1,569,1,569,3,569,9342,8,569,1,569,1,569,1,569,1,569,1,569,1,569,1,569,3,569,9351,8,569,1,570,1,570,1,570,3,570,9356,8,570,1,570,1,570,1,571,1,571,1,571,1,571,1,571,1,571,1,572,1,572,1,573,1,573,3,573,9370,8,573,1,574,1,574,1,575,1,575,1,575,1,575,1,575,1,575,3,575,9380,8,575,1,576,1,576,1,576,1,576,1,576,1,576,3,576,9388,8,576,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,577,3,577,9402,8,577,1,578,1,578,1,578,5,578,9407,8,578,10,578,12,578,9410,9,578,1,579,1,579,1,579,5,579,9415,8,579,10,579,12,579,9418,9,579,1,580,1,580,1,580,1,580,1,580,3,580,9425,8,580,1,581,1,581,1,581,5,581,9430,8,581,10,581,12,581,9433,9,581,1,582,1,582,1,582,3,582,9438,8,582,1,582,1,582,1,583,1,583,1,583,5,583,9445,8,583,10,583,12,583,9448,9,583,1,584,1,584,1,584,1,584,1,584,3,584,9455,8,584,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,3,585,9465,8,585,1,586,1,586,1,587,1,587,1,587,1,587,1,587,1,587,1,587,3,587,9476,8,587,1,588,1,588,1,588,1,588,1,588,3,588,9483,8,588,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,3,589,9512,8,589,1,590,1,590,1,590,1,590,1,590,1,590,1,590,3,590,9521,8,590,1,591,1,591,1,591,1,591,1,591,3,591,9528,8,591,1,592,1,592,1,592,1,592,1,592,1,592,1,593,4,593,9537,8,593,11,593,12,593,9538,1,594,1,594,1,594,1,594,1,594,1,595,1,595,1,595,3,595,9549,8,595,1,596,1,596,3,596,9553,8,596,1,597,1,597,3,597,9557,8,597,1,598,1,598,1,598,3,598,9562,8,598,1,598,1,598,1,598,3,598,9567,8,598,1,598,1,598,3,598,9571,8,598,3,598,9573,8,598,1,598,3,598,9576,8,598,1,599,4,599,9579,8,599,11,599,12,599,9580,1,600,5,600,9584,8,600,10,600,12,600,9587,9,600,1,601,1,601,3,601,9591,8,601,1,602,1,602,1,602,5,602,9596,8,602,10,602,12,602,9599,9,602,1,603,1,603,1,603,1,603,1,603,1,603,3,603,9607,8,603,3,603,9609,8,603,1,604,1,604,1,604,5,604,9614,8,604,10,604,12,604,9617,9,604,1,605,1,605,1,606,1,606,1,606,5,606,9624,8,606,10,606,12,606,9627,9,606,1,607,1,607,1,608,1,608,1,608,5,608,9634,8,608,10,608,12,608,9637,9,608,1,609,1,609,1,610,1,610,1,610,5,610,9644,8,610,10,610,12,610,9647,9,610,1,611,1,611,1,612,1,612,1,613,1,613,1,614,1,614,1,614,5,614,9658,8,614,10,614,12,614,9661,9,614,1,615,1,615,3,615,9665,8,615,1,616,1,616,1,616,5,616,9670,8,616,10,616,12,616,9673,9,616,1,617,1,617,1,618,1,618,1,619,1,619,1,620,1,620,1,620,1,620,1,620,1,620,1,620,3,620,9688,8,620,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,3,621,9703,8,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,3,621,9717,8,621,1,621,1,621,1,621,3,621,9722,8,621,1,622,1,622,1,623,1,623,1,624,1,624,1,625,1,625,1,626,1,626,1,626,1,627,1,627,1,627,1,627,5,627,9739,8,627,10,627,12,627,9742,9,627,1,627,1,627,3,627,9746,8,627,1,628,1,628,1,628,3,628,9751,8,628,1,629,1,629,1,629,1,629,1,629,3,629,9758,8,629,1,630,1,630,1,630,3,630,9763,8,630,1,631,1,631,1,631,5,631,9768,8,631,10,631,12,631,9771,9,631,1,632,1,632,1,632,1,632,1,632,1,632,3,632,9779,8,632,1,633,1,633,1,633,1,633,3,633,9785,8,633,1,634,1,634,1,634,1,634,3,634,9791,8,634,1,635,1,635,1,635,1,635,3,635,9797,8,635,1,636,1,636,1,636,1,636,1,636,1,636,3,636,9805,8,636,1,637,1,637,1,637,1,637,1,637,1,637,1,637,3,637,9814,8,637,1,638,1,638,1,639,1,639,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,3,640,9872,8,640,1,641,1,641,1,642,1,642,1,643,1,643,1,644,1,644,1,644,1,644,1,645,5,645,9885,8,645,10,645,12,645,9888,9,645,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,3,646,9910,8,646,1,647,1,647,1,648,1,648,1,648,1,648,3,648,9918,8,648,1,649,1,649,3,649,9922,8,649,1,650,1,650,1,650,1,650,1,650,1,650,1,650,1,651,1,651,1,651,3,651,9934,8,651,3,651,9936,8,651,1,652,1,652,1,653,4,653,9941,8,653,11,653,12,653,9942,1,654,1,654,1,654,1,654,1,655,1,655,1,655,3,655,9952,8,655,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,3,656,9970,8,656,1,656,1,656,1,657,1,657,1,657,1,657,3,657,9978,8,657,1,658,1,658,1,659,1,659,1,659,1,659,1,659,3,659,9987,8,659,1,660,1,660,1,660,5,660,9992,8,660,10,660,12,660,9995,9,660,1,661,1,661,1,661,1,662,1,662,1,663,1,663,3,663,10004,8,663,1,664,1,664,1,665,1,665,3,665,10010,8,665,1,666,1,666,1,667,1,667,1,667,3,667,10017,8,667,1,668,1,668,1,668,3,668,10022,8,668,1,669,1,669,1,669,1,669,3,669,10028,8,669,1,670,1,670,3,670,10032,8,670,1,671,1,671,1,672,5,672,10037,8,672,10,672,12,672,10040,9,672,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,1,673,3,673,10069,8,673,1,674,1,674,1,674,1,674,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,675,3,675,10089,8,675,1,676,1,676,3,676,10093,8,676,1,677,1,677,1,677,1,677,1,677,1,678,1,678,1,678,1,678,1,678,1,678,1,679,1,679,1,679,3,679,10109,8,679,1,680,1,680,1,680,5,680,10114,8,680,10,680,12,680,10117,9,680,1,681,1,681,1,681,1,681,1,682,1,682,1,683,1,683,1,684,1,684,3,684,10129,8,684,1,684,1,684,1,684,1,684,5,684,10135,8,684,10,684,12,684,10138,9,684,1,685,1,685,1,685,1,685,1,685,1,685,1,685,1,685,1,685,1,685,1,686,1,686,1,686,1,686,1,686,5,686,10155,8,686,10,686,12,686,10158,9,686,1,687,1,687,1,687,3,687,10163,8,687,1,688,1,688,1,688,1,688,1,688,1,688,1,688,1,688,1,689,1,689,3,689,10175,8,689,1,690,4,690,10178,8,690,11,690,12,690,10179,1,691,1,691,1,691,1,691,1,691,1,692,1,692,1,692,3,692,10190,8,692,1,693,1,693,1,693,1,694,1,694,1,694,1,694,1,694,1,695,1,695,1,695,1,695,1,695,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,1,696,3,696,10222,8,696,1,697,1,697,1,697,3,697,10227,8,697,1,698,1,698,1,698,1,698,1,698,5,698,10234,8,698,10,698,12,698,10237,9,698,1,698,1,698,3,698,10241,8,698,1,699,1,699,3,699,10245,8,699,1,700,1,700,1,700,3,700,10250,8,700,1,701,1,701,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,703,1,703,1,703,3,703,10266,8,703,1,704,1,704,1,704,1,704,1,704,1,705,1,705,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,3,706,10284,8,706,1,706,3,706,10287,8,706,1,706,1,706,1,707,1,707,3,707,10293,8,707,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,1,708,3,708,10321,8,708,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,3,709,10331,8,709,1,710,1,710,1,710,4,710,10336,8,710,11,710,12,710,10337,3,710,10340,8,710,1,711,1,711,1,711,1,711,1,711,5,711,10347,8,711,10,711,12,711,10350,9,711,3,711,10352,8,711,1,712,1,712,1,712,1,712,1,713,1,713,1,713,1,713,1,713,1,714,1,714,1,714,3,714,10366,8,714,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,716,1,716,1,716,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,3,717,10387,8,717,1,717,1,717,1,718,1,718,1,718,3,718,10394,8,718,1,719,1,719,1,719,5,719,10399,8,719,10,719,12,719,10402,9,719,1,720,1,720,1,720,3,720,10407,8,720,1,720,3,720,10410,8,720,1,721,1,721,1,721,3,721,10415,8,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,3,721,10425,8,721,1,721,1,721,1,721,1,721,1,721,5,721,10432,8,721,10,721,12,721,10435,9,721,1,721,1,721,3,721,10439,8,721,3,721,10441,8,721,1,721,1,721,1,722,1,722,1,722,1,722,1,722,3,722,10450,8,722,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,724,1,724,1,725,1,725,1,725,3,725,10465,8,725,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,726,3,726,10482,8,726,3,726,10484,8,726,1,727,1,727,1,727,1,727,1,727,1,728,1,728,1,728,1,728,1,729,1,729,1,729,1,730,1,730,1,730,1,730,1,731,1,731,1,731,1,731,1,732,1,732,3,732,10508,8,732,1,732,1,732,3,732,10512,8,732,1,733,1,733,1,733,1,733,1,733,1,733,1,733,1,733,1,733,3,733,10523,8,733,1,733,3,733,10526,8,733,1,734,1,734,3,734,10530,8,734,1,735,1,735,1,735,3,735,10535,8,735,1,736,4,736,10538,8,736,11,736,12,736,10539,1,737,1,737,1,737,1,737,1,737,1,738,1,738,1,738,5,738,10550,8,738,10,738,12,738,10553,9,738,1,739,1,739,1,739,3,739,10558,8,739,1,740,1,740,3,740,10562,8,740,1,741,1,741,3,741,10566,8,741,1,742,1,742,3,742,10570,8,742,1,743,1,743,1,743,3,743,10575,8,743,1,744,1,744,3,744,10579,8,744,1,745,1,745,1,746,1,746,3,746,10585,8,746,1,746,1,746,1,746,1,746,1,746,1,746,1,747,1,747,1,748,1,748,1,749,1,749,1,750,1,750,1,751,1,751,1,751,1,752,1,752,3,752,10606,8,752,1,752,1,752,3,752,10610,8,752,1,753,1,753,1,753,0,1,1080,754,0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,312,314,316,318,320,322,324,326,328,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,376,378,380,382,384,386,388,390,392,394,396,398,400,402,404,406,408,410,412,414,416,418,420,422,424,426,428,430,432,434,436,438,440,442,444,446,448,450,452,454,456,458,460,462,464,466,468,470,472,474,476,478,480,482,484,486,488,490,492,494,496,498,500,502,504,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,564,566,568,570,572,574,576,578,580,582,584,586,588,590,592,594,596,598,600,602,604,606,608,610,612,614,616,618,620,622,624,626,628,630,632,634,636,638,640,642,644,646,648,650,652,654,656,658,660,662,664,666,668,670,672,674,676,678,680,682,684,686,688,690,692,694,696,698,700,702,704,706,708,710,712,714,716,718,720,722,724,726,728,730,732,734,736,738,740,742,744,746,748,750,752,754,756,758,760,762,764,766,768,770,772,774,776,778,780,782,784,786,788,790,792,794,796,798,800,802,804,806,808,810,812,814,816,818,820,822,824,826,828,830,832,834,836,838,840,842,844,846,848,850,852,854,856,858,860,862,864,866,868,870,872,874,876,878,880,882,884,886,888,890,892,894,896,898,900,902,904,906,908,910,912,914,916,918,920,922,924,926,928,930,932,934,936,938,940,942,944,946,948,950,952,954,956,958,960,962,964,966,968,970,972,974,976,978,980,982,984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1008,1010,1012,1014,1016,1018,1020,1022,1024,1026,1028,1030,1032,1034,1036,1038,1040,1042,1044,1046,1048,1050,1052,1054,1056,1058,1060,1062,1064,1066,1068,1070,1072,1074,1076,1078,1080,1082,1084,1086,1088,1090,1092,1094,1096,1098,1100,1102,1104,1106,1108,1110,1112,1114,1116,1118,1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1154,1156,1158,1160,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,1216,1218,1220,1222,1224,1226,1228,1230,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,1328,1330,1332,1334,1336,1338,1340,1342,1344,1346,1348,1350,1352,1354,1356,1358,1360,1362,1364,1366,1368,1370,1372,1374,1376,1378,1380,1382,1384,1386,1388,1390,1392,1394,1396,1398,1400,1402,1404,1406,1408,1410,1412,1414,1416,1418,1420,1422,1424,1426,1428,1430,1432,1434,1436,1438,1440,1442,1444,1446,1448,1450,1452,1454,1456,1458,1460,1462,1464,1466,1468,1470,1472,1474,1476,1478,1480,1482,1484,1486,1488,1490,1492,1494,1496,1498,1500,1502,1504,1506,0,69,2,0,195,195,357,357,2,0,133,133,191,191,2,0,245,245,325,325,2,0,10,10,94,94,2,0,162,162,356,356,2,0,180,180,221,221,5,0,30,30,281,281,322,322,345,345,347,347,2,0,139,139,305,305,2,0,30,30,99,99,2,0,64,64,94,94,2,0,345,345,347,347,2,0,200,200,224,224,9,0,30,30,160,160,165,165,179,179,219,219,227,227,335,335,338,338,438,438,3,0,113,113,277,277,329,329,2,0,53,53,78,78,3,0,173,173,252,252,255,255,5,0,30,30,88,88,182,182,232,232,362,362,2,0,92,92,226,226,1,0,448,449,2,0,92,92,407,407,2,0,334,334,407,407,2,0,211,211,289,289,2,0,314,314,445,445,2,0,64,64,68,68,5,0,212,212,322,322,343,343,455,455,457,457,5,0,212,212,322,322,343,343,354,354,455,456,2,0,10,10,53,53,3,0,211,211,289,289,442,442,2,0,92,92,342,342,3,0,109,109,128,128,344,344,4,0,88,88,182,182,232,232,362,362,2,0,151,151,245,245,2,0,306,306,326,326,1,0,31,32,2,0,99,99,342,342,2,0,201,201,327,327,2,0,59,59,97,97,2,0,213,213,245,245,2,0,313,313,407,407,2,0,207,207,261,261,4,0,113,113,115,115,119,119,126,126,2,0,353,353,477,477,2,0,384,385,399,399,1,0,384,385,1,0,411,412,1,0,18,19,2,0,117,117,122,122,5,0,10,10,16,17,21,21,23,23,25,25,1,0,12,13,3,0,9,9,14,14,27,27,2,0,30,30,56,56,3,0,39,39,73,73,95,95,2,0,166,166,188,188,2,0,297,297,450,450,2,0,208,208,282,282,3,0,30,30,34,34,90,90,6,0,9,10,12,17,21,21,23,23,25,25,27,27,2,0,20,20,22,22,1,0,483,486,11,0,124,124,129,249,251,252,254,303,305,379,433,452,455,469,471,471,473,473,475,475,478,488,5,0,106,118,120,123,125,125,127,128,472,472,4,0,30,52,54,70,72,105,454,454,5,0,304,304,418,424,504,504,513,513,521,635,2,0,62,62,116,116,2,0,10,10,20,20,2,0,167,167,507,507,2,0,144,144,210,210,36,0,33,33,35,35,43,45,53,53,57,57,61,61,92,92,116,116,123,123,130,130,144,144,153,153,157,157,161,161,167,167,172,172,207,207,210,210,232,232,240,240,258,258,261,262,272,272,286,286,300,300,306,306,312,312,316,317,326,326,353,353,433,434,477,477,490,502,506,512,514,518,520,520,3,0,66,66,99,99,311,311,11574,0,1509,1,0,0,0,2,1513,1,0,0,0,4,1523,1,0,0,0,6,1647,1,0,0,0,8,1649,1,0,0,0,10,1653,1,0,0,0,12,1658,1,0,0,0,14,1663,1,0,0,0,16,1669,1,0,0,0,18,1691,1,0,0,0,20,1704,1,0,0,0,22,1706,1,0,0,0,24,1712,1,0,0,0,26,1722,1,0,0,0,28,1724,1,0,0,0,30,1733,1,0,0,0,32,1741,1,0,0,0,34,1743,1,0,0,0,36,1761,1,0,0,0,38,1766,1,0,0,0,40,1775,1,0,0,0,42,1777,1,0,0,0,44,1791,1,0,0,0,46,1793,1,0,0,0,48,1823,1,0,0,0,50,1825,1,0,0,0,52,1833,1,0,0,0,54,1843,1,0,0,0,56,1850,1,0,0,0,58,1856,1,0,0,0,60,1873,1,0,0,0,62,1878,1,0,0,0,64,1882,1,0,0,0,66,1884,1,0,0,0,68,1895,1,0,0,0,70,1899,1,0,0,0,72,1904,1,0,0,0,74,1909,1,0,0,0,76,1911,1,0,0,0,78,1923,1,0,0,0,80,1930,1,0,0,0,82,1932,1,0,0,0,84,1934,1,0,0,0,86,1936,1,0,0,0,88,2039,1,0,0,0,90,2041,1,0,0,0,92,2057,1,0,0,0,94,2059,1,0,0,0,96,2304,1,0,0,0,98,2311,1,0,0,0,100,2316,1,0,0,0,102,2321,1,0,0,0,104,2326,1,0,0,0,106,2334,1,0,0,0,108,2336,1,0,0,0,110,2343,1,0,0,0,112,2345,1,0,0,0,114,2353,1,0,0,0,116,2365,1,0,0,0,118,2381,1,0,0,0,120,2409,1,0,0,0,122,2411,1,0,0,0,124,2414,1,0,0,0,126,2422,1,0,0,0,128,2427,1,0,0,0,130,2458,1,0,0,0,132,2460,1,0,0,0,134,2493,1,0,0,0,136,2495,1,0,0,0,138,2500,1,0,0,0,140,2512,1,0,0,0,142,2549,1,0,0,0,144,2557,1,0,0,0,146,2559,1,0,0,0,148,2567,1,0,0,0,150,2585,1,0,0,0,152,2587,1,0,0,0,154,2636,1,0,0,0,156,2640,1,0,0,0,158,2647,1,0,0,0,160,2649,1,0,0,0,162,2657,1,0,0,0,164,2668,1,0,0,0,166,2672,1,0,0,0,168,2674,1,0,0,0,170,2679,1,0,0,0,172,2689,1,0,0,0,174,2700,1,0,0,0,176,2742,1,0,0,0,178,2747,1,0,0,0,180,2754,1,0,0,0,182,2756,1,0,0,0,184,2764,1,0,0,0,186,2767,1,0,0,0,188,2774,1,0,0,0,190,2834,1,0,0,0,192,2841,1,0,0,0,194,2843,1,0,0,0,196,2851,1,0,0,0,198,2859,1,0,0,0,200,2864,1,0,0,0,202,2866,1,0,0,0,204,2874,1,0,0,0,206,2890,1,0,0,0,208,2901,1,0,0,0,210,2903,1,0,0,0,212,2907,1,0,0,0,214,2917,1,0,0,0,216,2925,1,0,0,0,218,2929,1,0,0,0,220,2931,1,0,0,0,222,2938,1,0,0,0,224,2960,1,0,0,0,226,2965,1,0,0,0,228,2972,1,0,0,0,230,2984,1,0,0,0,232,2989,1,0,0,0,234,2996,1,0,0,0,236,2998,1,0,0,0,238,3002,1,0,0,0,240,3016,1,0,0,0,242,3027,1,0,0,0,244,3040,1,0,0,0,246,3054,1,0,0,0,248,3056,1,0,0,0,250,3072,1,0,0,0,252,3078,1,0,0,0,254,3087,1,0,0,0,256,3099,1,0,0,0,258,3113,1,0,0,0,260,3116,1,0,0,0,262,3151,1,0,0,0,264,3159,1,0,0,0,266,3161,1,0,0,0,268,3169,1,0,0,0,270,3185,1,0,0,0,272,3192,1,0,0,0,274,3198,1,0,0,0,276,3202,1,0,0,0,278,3204,1,0,0,0,280,3215,1,0,0,0,282,3217,1,0,0,0,284,3225,1,0,0,0,286,3247,1,0,0,0,288,3249,1,0,0,0,290,3259,1,0,0,0,292,3401,1,0,0,0,294,3403,1,0,0,0,296,3421,1,0,0,0,298,3424,1,0,0,0,300,3445,1,0,0,0,302,3453,1,0,0,0,304,3455,1,0,0,0,306,3463,1,0,0,0,308,3468,1,0,0,0,310,3483,1,0,0,0,312,3485,1,0,0,0,314,3488,1,0,0,0,316,3490,1,0,0,0,318,3521,1,0,0,0,320,3526,1,0,0,0,322,3528,1,0,0,0,324,3533,1,0,0,0,326,3599,1,0,0,0,328,3601,1,0,0,0,330,3616,1,0,0,0,332,3624,1,0,0,0,334,3647,1,0,0,0,336,3651,1,0,0,0,338,3671,1,0,0,0,340,3673,1,0,0,0,342,3682,1,0,0,0,344,3693,1,0,0,0,346,3708,1,0,0,0,348,3717,1,0,0,0,350,3722,1,0,0,0,352,3727,1,0,0,0,354,3732,1,0,0,0,356,3734,1,0,0,0,358,3736,1,0,0,0,360,3745,1,0,0,0,362,3785,1,0,0,0,364,3791,1,0,0,0,366,3793,1,0,0,0,368,3808,1,0,0,0,370,3813,1,0,0,0,372,3816,1,0,0,0,374,3820,1,0,0,0,376,3825,1,0,0,0,378,3827,1,0,0,0,380,3829,1,0,0,0,382,3837,1,0,0,0,384,3839,1,0,0,0,386,3847,1,0,0,0,388,3849,1,0,0,0,390,3853,1,0,0,0,392,3866,1,0,0,0,394,3871,1,0,0,0,396,3876,1,0,0,0,398,3890,1,0,0,0,400,3918,1,0,0,0,402,3920,1,0,0,0,404,3928,1,0,0,0,406,3934,1,0,0,0,408,3942,1,0,0,0,410,3954,1,0,0,0,412,3956,1,0,0,0,414,4073,1,0,0,0,416,4075,1,0,0,0,418,4086,1,0,0,0,420,4097,1,0,0,0,422,4099,1,0,0,0,424,4110,1,0,0,0,426,4114,1,0,0,0,428,4159,1,0,0,0,430,4165,1,0,0,0,432,4167,1,0,0,0,434,4183,1,0,0,0,436,4218,1,0,0,0,438,4223,1,0,0,0,440,4232,1,0,0,0,442,4234,1,0,0,0,444,4259,1,0,0,0,446,4261,1,0,0,0,448,4281,1,0,0,0,450,4301,1,0,0,0,452,4321,1,0,0,0,454,4323,1,0,0,0,456,4329,1,0,0,0,458,4441,1,0,0,0,460,4464,1,0,0,0,462,4469,1,0,0,0,464,4484,1,0,0,0,466,4486,1,0,0,0,468,4488,1,0,0,0,470,4496,1,0,0,0,472,4502,1,0,0,0,474,4506,1,0,0,0,476,4514,1,0,0,0,478,4525,1,0,0,0,480,4711,1,0,0,0,482,4715,1,0,0,0,484,4853,1,0,0,0,486,4858,1,0,0,0,488,4862,1,0,0,0,490,4868,1,0,0,0,492,4936,1,0,0,0,494,4938,1,0,0,0,496,4942,1,0,0,0,498,4944,1,0,0,0,500,4971,1,0,0,0,502,4988,1,0,0,0,504,4990,1,0,0,0,506,5007,1,0,0,0,508,5047,1,0,0,0,510,5049,1,0,0,0,512,5060,1,0,0,0,514,5066,1,0,0,0,516,5068,1,0,0,0,518,5092,1,0,0,0,520,5098,1,0,0,0,522,5104,1,0,0,0,524,5106,1,0,0,0,526,5124,1,0,0,0,528,5153,1,0,0,0,530,5155,1,0,0,0,532,5202,1,0,0,0,534,5207,1,0,0,0,536,5209,1,0,0,0,538,5228,1,0,0,0,540,5241,1,0,0,0,542,5256,1,0,0,0,544,5261,1,0,0,0,546,5265,1,0,0,0,548,5270,1,0,0,0,550,5277,1,0,0,0,552,5279,1,0,0,0,554,5304,1,0,0,0,556,5306,1,0,0,0,558,5314,1,0,0,0,560,5334,1,0,0,0,562,5336,1,0,0,0,564,5344,1,0,0,0,566,5362,1,0,0,0,568,5371,1,0,0,0,570,5377,1,0,0,0,572,5379,1,0,0,0,574,5395,1,0,0,0,576,5397,1,0,0,0,578,5412,1,0,0,0,580,5420,1,0,0,0,582,5423,1,0,0,0,584,5432,1,0,0,0,586,5473,1,0,0,0,588,5483,1,0,0,0,590,5490,1,0,0,0,592,5492,1,0,0,0,594,5507,1,0,0,0,596,5509,1,0,0,0,598,5512,1,0,0,0,600,5520,1,0,0,0,602,5567,1,0,0,0,604,5581,1,0,0,0,606,5595,1,0,0,0,608,5619,1,0,0,0,610,5626,1,0,0,0,612,5631,1,0,0,0,614,5639,1,0,0,0,616,5642,1,0,0,0,618,5646,1,0,0,0,620,5653,1,0,0,0,622,5689,1,0,0,0,624,5696,1,0,0,0,626,5698,1,0,0,0,628,5711,1,0,0,0,630,5713,1,0,0,0,632,5758,1,0,0,0,634,5760,1,0,0,0,636,5830,1,0,0,0,638,5832,1,0,0,0,640,5834,1,0,0,0,642,5842,1,0,0,0,644,5856,1,0,0,0,646,6295,1,0,0,0,648,6299,1,0,0,0,650,6304,1,0,0,0,652,6375,1,0,0,0,654,6589,1,0,0,0,656,6591,1,0,0,0,658,6599,1,0,0,0,660,6615,1,0,0,0,662,6622,1,0,0,0,664,6624,1,0,0,0,666,6815,1,0,0,0,668,6817,1,0,0,0,670,6825,1,0,0,0,672,6833,1,0,0,0,674,6862,1,0,0,0,676,6864,1,0,0,0,678,6873,1,0,0,0,680,6881,1,0,0,0,682,6920,1,0,0,0,684,6934,1,0,0,0,686,6936,1,0,0,0,688,6956,1,0,0,0,690,6958,1,0,0,0,692,6971,1,0,0,0,694,6975,1,0,0,0,696,6977,1,0,0,0,698,6982,1,0,0,0,700,6984,1,0,0,0,702,6991,1,0,0,0,704,6993,1,0,0,0,706,7e3,1,0,0,0,708,7055,1,0,0,0,710,7060,1,0,0,0,712,7072,1,0,0,0,714,7074,1,0,0,0,716,7090,1,0,0,0,718,7092,1,0,0,0,720,7124,1,0,0,0,722,7126,1,0,0,0,724,7129,1,0,0,0,726,7141,1,0,0,0,728,7143,1,0,0,0,730,7160,1,0,0,0,732,7162,1,0,0,0,734,7173,1,0,0,0,736,7178,1,0,0,0,738,7199,1,0,0,0,740,7205,1,0,0,0,742,7210,1,0,0,0,744,7217,1,0,0,0,746,7243,1,0,0,0,748,7247,1,0,0,0,750,7249,1,0,0,0,752,7328,1,0,0,0,754,7330,1,0,0,0,756,7356,1,0,0,0,758,7361,1,0,0,0,760,7382,1,0,0,0,762,7394,1,0,0,0,764,7396,1,0,0,0,766,7404,1,0,0,0,768,7406,1,0,0,0,770,7411,1,0,0,0,772,7416,1,0,0,0,774,7420,1,0,0,0,776,7427,1,0,0,0,778,7429,1,0,0,0,780,7441,1,0,0,0,782,7466,1,0,0,0,784,7477,1,0,0,0,786,7479,1,0,0,0,788,7484,1,0,0,0,790,7489,1,0,0,0,792,7491,1,0,0,0,794,7502,1,0,0,0,796,7508,1,0,0,0,798,7537,1,0,0,0,800,7544,1,0,0,0,802,7556,1,0,0,0,804,7559,1,0,0,0,806,7568,1,0,0,0,808,7592,1,0,0,0,810,7594,1,0,0,0,812,7596,1,0,0,0,814,7604,1,0,0,0,816,7620,1,0,0,0,818,7631,1,0,0,0,820,7636,1,0,0,0,822,7638,1,0,0,0,824,7669,1,0,0,0,826,7688,1,0,0,0,828,7701,1,0,0,0,830,7709,1,0,0,0,832,7721,1,0,0,0,834,7723,1,0,0,0,836,7734,1,0,0,0,838,7748,1,0,0,0,840,7752,1,0,0,0,842,7758,1,0,0,0,844,7761,1,0,0,0,846,7771,1,0,0,0,848,7796,1,0,0,0,850,7798,1,0,0,0,852,7801,1,0,0,0,854,7818,1,0,0,0,856,7825,1,0,0,0,858,7829,1,0,0,0,860,7839,1,0,0,0,862,7864,1,0,0,0,864,7866,1,0,0,0,866,7876,1,0,0,0,868,7901,1,0,0,0,870,7915,1,0,0,0,872,7917,1,0,0,0,874,7929,1,0,0,0,876,7941,1,0,0,0,878,7943,1,0,0,0,880,7965,1,0,0,0,882,7969,1,0,0,0,884,7974,1,0,0,0,886,7976,1,0,0,0,888,7984,1,0,0,0,890,7988,1,0,0,0,892,7990,1,0,0,0,894,7994,1,0,0,0,896,8002,1,0,0,0,898,8018,1,0,0,0,900,8022,1,0,0,0,902,8047,1,0,0,0,904,8049,1,0,0,0,906,8058,1,0,0,0,908,8060,1,0,0,0,910,8067,1,0,0,0,912,8071,1,0,0,0,914,8073,1,0,0,0,916,8075,1,0,0,0,918,8081,1,0,0,0,920,8083,1,0,0,0,922,8110,1,0,0,0,924,8115,1,0,0,0,926,8125,1,0,0,0,928,8127,1,0,0,0,930,8131,1,0,0,0,932,8146,1,0,0,0,934,8148,1,0,0,0,936,8165,1,0,0,0,938,8176,1,0,0,0,940,8178,1,0,0,0,942,8234,1,0,0,0,944,8258,1,0,0,0,946,8269,1,0,0,0,948,8272,1,0,0,0,950,8294,1,0,0,0,952,8296,1,0,0,0,954,8307,1,0,0,0,956,8309,1,0,0,0,958,8323,1,0,0,0,960,8325,1,0,0,0,962,8333,1,0,0,0,964,8340,1,0,0,0,966,8367,1,0,0,0,968,8369,1,0,0,0,970,8378,1,0,0,0,972,8383,1,0,0,0,974,8388,1,0,0,0,976,8398,1,0,0,0,978,8402,1,0,0,0,980,8404,1,0,0,0,982,8412,1,0,0,0,984,8416,1,0,0,0,986,8449,1,0,0,0,988,8459,1,0,0,0,990,8471,1,0,0,0,992,8473,1,0,0,0,994,8487,1,0,0,0,996,8516,1,0,0,0,998,8531,1,0,0,0,1e3,8537,1,0,0,0,1002,8543,1,0,0,0,1004,8555,1,0,0,0,1006,8573,1,0,0,0,1008,8580,1,0,0,0,1010,8584,1,0,0,0,1012,8588,1,0,0,0,1014,8590,1,0,0,0,1016,8596,1,0,0,0,1018,8599,1,0,0,0,1020,8606,1,0,0,0,1022,8619,1,0,0,0,1024,8623,1,0,0,0,1026,8625,1,0,0,0,1028,8634,1,0,0,0,1030,8643,1,0,0,0,1032,8671,1,0,0,0,1034,8673,1,0,0,0,1036,8683,1,0,0,0,1038,8685,1,0,0,0,1040,8687,1,0,0,0,1042,8691,1,0,0,0,1044,8699,1,0,0,0,1046,8707,1,0,0,0,1048,8715,1,0,0,0,1050,8729,1,0,0,0,1052,8738,1,0,0,0,1054,8742,1,0,0,0,1056,8746,1,0,0,0,1058,8772,1,0,0,0,1060,8786,1,0,0,0,1062,8801,1,0,0,0,1064,8811,1,0,0,0,1066,8815,1,0,0,0,1068,8823,1,0,0,0,1070,8831,1,0,0,0,1072,8837,1,0,0,0,1074,8841,1,0,0,0,1076,8848,1,0,0,0,1078,8853,1,0,0,0,1080,8868,1,0,0,0,1082,8948,1,0,0,0,1084,8950,1,0,0,0,1086,8952,1,0,0,0,1088,8982,1,0,0,0,1090,8986,1,0,0,0,1092,9165,1,0,0,0,1094,9172,1,0,0,0,1096,9185,1,0,0,0,1098,9187,1,0,0,0,1100,9192,1,0,0,0,1102,9200,1,0,0,0,1104,9205,1,0,0,0,1106,9212,1,0,0,0,1108,9229,1,0,0,0,1110,9231,1,0,0,0,1112,9241,1,0,0,0,1114,9250,1,0,0,0,1116,9255,1,0,0,0,1118,9257,1,0,0,0,1120,9265,1,0,0,0,1122,9275,1,0,0,0,1124,9277,1,0,0,0,1126,9286,1,0,0,0,1128,9292,1,0,0,0,1130,9307,1,0,0,0,1132,9315,1,0,0,0,1134,9324,1,0,0,0,1136,9336,1,0,0,0,1138,9350,1,0,0,0,1140,9352,1,0,0,0,1142,9359,1,0,0,0,1144,9365,1,0,0,0,1146,9369,1,0,0,0,1148,9371,1,0,0,0,1150,9379,1,0,0,0,1152,9387,1,0,0,0,1154,9401,1,0,0,0,1156,9403,1,0,0,0,1158,9411,1,0,0,0,1160,9424,1,0,0,0,1162,9426,1,0,0,0,1164,9434,1,0,0,0,1166,9441,1,0,0,0,1168,9454,1,0,0,0,1170,9464,1,0,0,0,1172,9466,1,0,0,0,1174,9468,1,0,0,0,1176,9482,1,0,0,0,1178,9511,1,0,0,0,1180,9520,1,0,0,0,1182,9527,1,0,0,0,1184,9529,1,0,0,0,1186,9536,1,0,0,0,1188,9540,1,0,0,0,1190,9548,1,0,0,0,1192,9552,1,0,0,0,1194,9554,1,0,0,0,1196,9575,1,0,0,0,1198,9578,1,0,0,0,1200,9585,1,0,0,0,1202,9590,1,0,0,0,1204,9592,1,0,0,0,1206,9608,1,0,0,0,1208,9610,1,0,0,0,1210,9618,1,0,0,0,1212,9620,1,0,0,0,1214,9628,1,0,0,0,1216,9630,1,0,0,0,1218,9638,1,0,0,0,1220,9640,1,0,0,0,1222,9648,1,0,0,0,1224,9650,1,0,0,0,1226,9652,1,0,0,0,1228,9654,1,0,0,0,1230,9662,1,0,0,0,1232,9666,1,0,0,0,1234,9674,1,0,0,0,1236,9676,1,0,0,0,1238,9678,1,0,0,0,1240,9687,1,0,0,0,1242,9721,1,0,0,0,1244,9723,1,0,0,0,1246,9725,1,0,0,0,1248,9727,1,0,0,0,1250,9729,1,0,0,0,1252,9731,1,0,0,0,1254,9745,1,0,0,0,1256,9750,1,0,0,0,1258,9757,1,0,0,0,1260,9762,1,0,0,0,1262,9764,1,0,0,0,1264,9778,1,0,0,0,1266,9784,1,0,0,0,1268,9790,1,0,0,0,1270,9796,1,0,0,0,1272,9804,1,0,0,0,1274,9813,1,0,0,0,1276,9815,1,0,0,0,1278,9817,1,0,0,0,1280,9871,1,0,0,0,1282,9873,1,0,0,0,1284,9875,1,0,0,0,1286,9877,1,0,0,0,1288,9879,1,0,0,0,1290,9886,1,0,0,0,1292,9909,1,0,0,0,1294,9911,1,0,0,0,1296,9917,1,0,0,0,1298,9921,1,0,0,0,1300,9923,1,0,0,0,1302,9930,1,0,0,0,1304,9937,1,0,0,0,1306,9940,1,0,0,0,1308,9944,1,0,0,0,1310,9951,1,0,0,0,1312,9953,1,0,0,0,1314,9977,1,0,0,0,1316,9979,1,0,0,0,1318,9986,1,0,0,0,1320,9988,1,0,0,0,1322,9996,1,0,0,0,1324,9999,1,0,0,0,1326,10003,1,0,0,0,1328,10005,1,0,0,0,1330,10009,1,0,0,0,1332,10011,1,0,0,0,1334,10016,1,0,0,0,1336,10021,1,0,0,0,1338,10027,1,0,0,0,1340,10031,1,0,0,0,1342,10033,1,0,0,0,1344,10038,1,0,0,0,1346,10068,1,0,0,0,1348,10070,1,0,0,0,1350,10088,1,0,0,0,1352,10092,1,0,0,0,1354,10094,1,0,0,0,1356,10099,1,0,0,0,1358,10108,1,0,0,0,1360,10110,1,0,0,0,1362,10118,1,0,0,0,1364,10122,1,0,0,0,1366,10124,1,0,0,0,1368,10128,1,0,0,0,1370,10139,1,0,0,0,1372,10156,1,0,0,0,1374,10162,1,0,0,0,1376,10164,1,0,0,0,1378,10174,1,0,0,0,1380,10177,1,0,0,0,1382,10181,1,0,0,0,1384,10189,1,0,0,0,1386,10191,1,0,0,0,1388,10194,1,0,0,0,1390,10199,1,0,0,0,1392,10204,1,0,0,0,1394,10226,1,0,0,0,1396,10240,1,0,0,0,1398,10244,1,0,0,0,1400,10249,1,0,0,0,1402,10251,1,0,0,0,1404,10253,1,0,0,0,1406,10265,1,0,0,0,1408,10267,1,0,0,0,1410,10272,1,0,0,0,1412,10274,1,0,0,0,1414,10292,1,0,0,0,1416,10320,1,0,0,0,1418,10330,1,0,0,0,1420,10339,1,0,0,0,1422,10351,1,0,0,0,1424,10353,1,0,0,0,1426,10357,1,0,0,0,1428,10365,1,0,0,0,1430,10367,1,0,0,0,1432,10374,1,0,0,0,1434,10377,1,0,0,0,1436,10393,1,0,0,0,1438,10395,1,0,0,0,1440,10409,1,0,0,0,1442,10411,1,0,0,0,1444,10449,1,0,0,0,1446,10451,1,0,0,0,1448,10459,1,0,0,0,1450,10464,1,0,0,0,1452,10483,1,0,0,0,1454,10485,1,0,0,0,1456,10490,1,0,0,0,1458,10494,1,0,0,0,1460,10497,1,0,0,0,1462,10501,1,0,0,0,1464,10511,1,0,0,0,1466,10525,1,0,0,0,1468,10529,1,0,0,0,1470,10534,1,0,0,0,1472,10537,1,0,0,0,1474,10541,1,0,0,0,1476,10546,1,0,0,0,1478,10557,1,0,0,0,1480,10561,1,0,0,0,1482,10565,1,0,0,0,1484,10569,1,0,0,0,1486,10574,1,0,0,0,1488,10578,1,0,0,0,1490,10580,1,0,0,0,1492,10582,1,0,0,0,1494,10592,1,0,0,0,1496,10594,1,0,0,0,1498,10596,1,0,0,0,1500,10598,1,0,0,0,1502,10600,1,0,0,0,1504,10609,1,0,0,0,1506,10611,1,0,0,0,1508,1510,3,4,2,0,1509,1508,1,0,0,0,1509,1510,1,0,0,0,1510,1511,1,0,0,0,1511,1512,5,0,0,1,1512,1,1,0,0,0,1513,1514,3,1288,644,0,1514,3,1,0,0,0,1515,1517,3,6,3,0,1516,1518,5,7,0,0,1517,1516,1,0,0,0,1517,1518,1,0,0,0,1518,1524,1,0,0,0,1519,1520,3,6,3,0,1520,1521,5,7,0,0,1521,1522,3,4,2,0,1522,1524,1,0,0,0,1523,1515,1,0,0,0,1523,1519,1,0,0,0,1524,5,1,0,0,0,1525,1648,3,408,204,0,1526,1648,3,738,369,0,1527,1648,3,732,366,0,1528,1648,3,734,367,0,1529,1648,3,524,262,0,1530,1648,3,744,372,0,1531,1648,3,428,214,0,1532,1648,3,288,144,0,1533,1648,3,292,146,0,1534,1648,3,300,150,0,1535,1648,3,324,162,0,1536,1648,3,600,300,0,1537,1648,3,652,326,0,1538,1648,3,654,327,0,1539,1648,3,666,333,0,1540,1648,3,656,328,0,1541,1648,3,664,332,0,1542,1648,3,344,172,0,1543,1648,3,256,128,0,1544,1648,3,740,370,0,1545,1648,3,88,44,0,1546,1648,3,644,322,0,1547,1648,3,126,63,0,1548,1648,3,674,337,0,1549,1648,3,28,14,0,1550,1648,3,24,12,0,1551,1648,3,682,341,0,1552,1648,3,240,120,0,1553,1648,3,752,376,0,1554,1648,3,750,375,0,1555,1648,3,340,170,0,1556,1648,3,762,381,0,1557,1648,3,10,5,0,1558,1648,3,84,42,0,1559,1648,3,132,66,0,1560,1648,3,756,378,0,1561,1648,3,480,240,0,1562,1648,3,78,39,0,1563,1648,3,134,67,0,1564,1648,3,358,179,0,1565,1648,3,242,121,0,1566,1648,3,412,206,0,1567,1648,3,622,311,0,1568,1648,3,754,377,0,1569,1648,3,742,371,0,1570,1648,3,284,142,0,1571,1648,3,294,147,0,1572,1648,3,318,159,0,1573,1648,3,326,163,0,1574,1648,3,552,276,0,1575,1648,3,248,124,0,1576,1648,3,432,216,0,1577,1648,3,442,221,0,1578,1648,3,668,334,0,1579,1648,3,444,222,0,1580,1648,3,342,171,0,1581,1648,3,268,134,0,1582,1648,3,34,17,0,1583,1648,3,254,127,0,1584,1648,3,152,76,0,1585,1648,3,676,338,0,1586,1648,3,238,119,0,1587,1648,3,278,139,0,1588,1648,3,630,315,0,1589,1648,3,362,181,0,1590,1648,3,400,200,0,1591,1648,3,22,11,0,1592,1648,3,334,167,0,1593,1648,3,724,362,0,1594,1648,3,802,401,0,1595,1648,3,852,426,0,1596,1648,3,414,207,0,1597,1648,3,830,415,0,1598,1648,3,86,43,0,1599,1648,3,616,308,0,1600,1648,3,626,313,0,1601,1648,3,450,225,0,1602,1648,3,452,226,0,1603,1648,3,454,227,0,1604,1648,3,458,229,0,1605,1648,3,684,342,0,1606,1648,3,282,141,0,1607,1648,3,634,317,0,1608,1648,3,30,15,0,1609,1648,3,338,169,0,1610,1648,3,736,368,0,1611,1648,3,798,399,0,1612,1648,3,782,391,0,1613,1648,3,490,245,0,1614,1648,3,498,249,0,1615,1648,3,516,258,0,1616,1648,3,328,164,0,1617,1648,3,532,266,0,1618,1648,3,804,402,0,1619,1648,3,822,411,0,1620,1648,3,704,352,0,1621,1648,3,252,126,0,1622,1648,3,722,361,0,1623,1648,3,834,417,0,1624,1648,3,700,350,0,1625,1648,3,792,396,0,1626,1648,3,456,228,0,1627,1648,3,636,318,0,1628,1648,3,604,302,0,1629,1648,3,602,301,0,1630,1648,3,606,303,0,1631,1648,3,646,323,0,1632,1648,3,500,250,0,1633,1648,3,518,259,0,1634,1648,3,686,343,0,1635,1648,3,484,242,0,1636,1648,3,858,429,0,1637,1648,3,708,354,0,1638,1648,3,476,238,0,1639,1648,3,706,353,0,1640,1648,3,844,422,0,1641,1648,3,760,380,0,1642,1648,3,66,33,0,1643,1648,3,42,21,0,1644,1648,3,76,38,0,1645,1648,3,718,359,0,1646,1648,3,8,4,0,1647,1525,1,0,0,0,1647,1526,1,0,0,0,1647,1527,1,0,0,0,1647,1528,1,0,0,0,1647,1529,1,0,0,0,1647,1530,1,0,0,0,1647,1531,1,0,0,0,1647,1532,1,0,0,0,1647,1533,1,0,0,0,1647,1534,1,0,0,0,1647,1535,1,0,0,0,1647,1536,1,0,0,0,1647,1537,1,0,0,0,1647,1538,1,0,0,0,1647,1539,1,0,0,0,1647,1540,1,0,0,0,1647,1541,1,0,0,0,1647,1542,1,0,0,0,1647,1543,1,0,0,0,1647,1544,1,0,0,0,1647,1545,1,0,0,0,1647,1546,1,0,0,0,1647,1547,1,0,0,0,1647,1548,1,0,0,0,1647,1549,1,0,0,0,1647,1550,1,0,0,0,1647,1551,1,0,0,0,1647,1552,1,0,0,0,1647,1553,1,0,0,0,1647,1554,1,0,0,0,1647,1555,1,0,0,0,1647,1556,1,0,0,0,1647,1557,1,0,0,0,1647,1558,1,0,0,0,1647,1559,1,0,0,0,1647,1560,1,0,0,0,1647,1561,1,0,0,0,1647,1562,1,0,0,0,1647,1563,1,0,0,0,1647,1564,1,0,0,0,1647,1565,1,0,0,0,1647,1566,1,0,0,0,1647,1567,1,0,0,0,1647,1568,1,0,0,0,1647,1569,1,0,0,0,1647,1570,1,0,0,0,1647,1571,1,0,0,0,1647,1572,1,0,0,0,1647,1573,1,0,0,0,1647,1574,1,0,0,0,1647,1575,1,0,0,0,1647,1576,1,0,0,0,1647,1577,1,0,0,0,1647,1578,1,0,0,0,1647,1579,1,0,0,0,1647,1580,1,0,0,0,1647,1581,1,0,0,0,1647,1582,1,0,0,0,1647,1583,1,0,0,0,1647,1584,1,0,0,0,1647,1585,1,0,0,0,1647,1586,1,0,0,0,1647,1587,1,0,0,0,1647,1588,1,0,0,0,1647,1589,1,0,0,0,1647,1590,1,0,0,0,1647,1591,1,0,0,0,1647,1592,1,0,0,0,1647,1593,1,0,0,0,1647,1594,1,0,0,0,1647,1595,1,0,0,0,1647,1596,1,0,0,0,1647,1597,1,0,0,0,1647,1598,1,0,0,0,1647,1599,1,0,0,0,1647,1600,1,0,0,0,1647,1601,1,0,0,0,1647,1602,1,0,0,0,1647,1603,1,0,0,0,1647,1604,1,0,0,0,1647,1605,1,0,0,0,1647,1606,1,0,0,0,1647,1607,1,0,0,0,1647,1608,1,0,0,0,1647,1609,1,0,0,0,1647,1610,1,0,0,0,1647,1611,1,0,0,0,1647,1612,1,0,0,0,1647,1613,1,0,0,0,1647,1614,1,0,0,0,1647,1615,1,0,0,0,1647,1616,1,0,0,0,1647,1617,1,0,0,0,1647,1618,1,0,0,0,1647,1619,1,0,0,0,1647,1620,1,0,0,0,1647,1621,1,0,0,0,1647,1622,1,0,0,0,1647,1623,1,0,0,0,1647,1624,1,0,0,0,1647,1625,1,0,0,0,1647,1626,1,0,0,0,1647,1627,1,0,0,0,1647,1628,1,0,0,0,1647,1629,1,0,0,0,1647,1630,1,0,0,0,1647,1631,1,0,0,0,1647,1632,1,0,0,0,1647,1633,1,0,0,0,1647,1634,1,0,0,0,1647,1635,1,0,0,0,1647,1636,1,0,0,0,1647,1637,1,0,0,0,1647,1638,1,0,0,0,1647,1639,1,0,0,0,1647,1640,1,0,0,0,1647,1641,1,0,0,0,1647,1642,1,0,0,0,1647,1643,1,0,0,0,1647,1644,1,0,0,0,1647,1645,1,0,0,0,1647,1646,1,0,0,0,1648,7,1,0,0,0,1649,1651,5,668,0,0,1650,1652,5,669,0,0,1651,1650,1,0,0,0,1651,1652,1,0,0,0,1652,9,1,0,0,0,1653,1654,5,433,0,0,1654,1655,3,1086,543,0,1655,11,1,0,0,0,1656,1659,5,105,0,0,1657,1659,1,0,0,0,1658,1656,1,0,0,0,1658,1657,1,0,0,0,1659,13,1,0,0,0,1660,1662,3,20,10,0,1661,1660,1,0,0,0,1662,1665,1,0,0,0,1663,1661,1,0,0,0,1663,1664,1,0,0,0,1664,15,1,0,0,0,1665,1663,1,0,0,0,1666,1668,3,18,9,0,1667,1666,1,0,0,0,1668,1671,1,0,0,0,1669,1667,1,0,0,0,1669,1670,1,0,0,0,1670,17,1,0,0,0,1671,1669,1,0,0,0,1672,1675,5,280,0,0,1673,1676,3,1252,626,0,1674,1676,5,78,0,0,1675,1673,1,0,0,0,1675,1674,1,0,0,0,1676,1692,1,0,0,0,1677,1678,7,0,0,0,1678,1679,5,280,0,0,1679,1692,3,1252,626,0,1680,1692,5,228,0,0,1681,1682,5,164,0,0,1682,1683,5,74,0,0,1683,1692,3,1258,629,0,1684,1685,5,364,0,0,1685,1686,5,361,0,0,1686,1692,3,1252,626,0,1687,1688,3,1506,753,0,1688,1689,3,1262,631,0,1689,1692,1,0,0,0,1690,1692,3,1274,637,0,1691,1672,1,0,0,0,1691,1677,1,0,0,0,1691,1680,1,0,0,0,1691,1681,1,0,0,0,1691,1684,1,0,0,0,1691,1687,1,0,0,0,1691,1690,1,0,0,0,1692,19,1,0,0,0,1693,1705,3,18,9,0,1694,1695,5,341,0,0,1695,1705,3,1250,625,0,1696,1697,5,134,0,0,1697,1705,3,1262,631,0,1698,1700,5,68,0,0,1699,1698,1,0,0,0,1699,1700,1,0,0,0,1700,1701,1,0,0,0,1701,1702,3,1506,753,0,1702,1703,3,1262,631,0,1703,1705,1,0,0,0,1704,1693,1,0,0,0,1704,1694,1,0,0,0,1704,1696,1,0,0,0,1704,1699,1,0,0,0,1705,21,1,0,0,0,1706,1707,5,46,0,0,1707,1708,3,1506,753,0,1708,1709,3,1260,630,0,1709,1710,3,12,6,0,1710,1711,3,14,7,0,1711,23,1,0,0,0,1712,1713,5,138,0,0,1713,1714,3,1506,753,0,1714,1715,3,1260,630,0,1715,1716,3,12,6,0,1716,1717,3,16,8,0,1717,25,1,0,0,0,1718,1723,1,0,0,0,1719,1720,5,68,0,0,1720,1721,5,175,0,0,1721,1723,3,1210,605,0,1722,1718,1,0,0,0,1722,1719,1,0,0,0,1723,27,1,0,0,0,1724,1725,5,138,0,0,1725,1727,3,1506,753,0,1726,1728,5,30,0,0,1727,1726,1,0,0,0,1727,1728,1,0,0,0,1728,1729,1,0,0,0,1729,1730,3,1260,630,0,1730,1731,3,26,13,0,1731,1732,3,72,36,0,1732,29,1,0,0,0,1733,1734,5,191,0,0,1734,1737,3,1506,753,0,1735,1736,5,220,0,0,1736,1738,5,389,0,0,1737,1735,1,0,0,0,1737,1738,1,0,0,0,1738,1739,1,0,0,0,1739,1740,3,1262,631,0,1740,31,1,0,0,0,1741,1742,7,1,0,0,1742,33,1,0,0,0,1743,1744,5,46,0,0,1744,1748,5,316,0,0,1745,1746,5,220,0,0,1746,1747,5,77,0,0,1747,1749,5,389,0,0,1748,1745,1,0,0,0,1748,1749,1,0,0,0,1749,1755,1,0,0,0,1750,1751,3,36,18,0,1751,1752,5,106,0,0,1752,1753,3,1260,630,0,1753,1756,1,0,0,0,1754,1756,3,1264,632,0,1755,1750,1,0,0,0,1755,1754,1,0,0,0,1756,1757,1,0,0,0,1757,1758,3,38,19,0,1758,35,1,0,0,0,1759,1762,3,1264,632,0,1760,1762,1,0,0,0,1761,1759,1,0,0,0,1761,1760,1,0,0,0,1762,37,1,0,0,0,1763,1765,3,40,20,0,1764,1763,1,0,0,0,1765,1768,1,0,0,0,1766,1764,1,0,0,0,1766,1767,1,0,0,0,1767,39,1,0,0,0,1768,1766,1,0,0,0,1769,1776,3,152,76,0,1770,1776,3,532,266,0,1771,1776,3,254,127,0,1772,1776,3,362,181,0,1773,1776,3,498,249,0,1774,1776,3,718,359,0,1775,1769,1,0,0,0,1775,1770,1,0,0,0,1775,1771,1,0,0,0,1775,1772,1,0,0,0,1775,1773,1,0,0,0,1775,1774,1,0,0,0,1776,41,1,0,0,0,1777,1779,5,326,0,0,1778,1780,7,2,0,0,1779,1778,1,0,0,0,1779,1780,1,0,0,0,1780,1781,1,0,0,0,1781,1782,3,44,22,0,1782,43,1,0,0,0,1783,1784,5,349,0,0,1784,1792,3,714,357,0,1785,1786,5,325,0,0,1786,1787,5,154,0,0,1787,1788,5,36,0,0,1788,1789,5,349,0,0,1789,1792,3,714,357,0,1790,1792,3,48,24,0,1791,1783,1,0,0,0,1791,1785,1,0,0,0,1791,1790,1,0,0,0,1792,45,1,0,0,0,1793,1794,3,50,25,0,1794,1795,7,3,0,0,1795,1796,3,52,26,0,1796,47,1,0,0,0,1797,1824,3,46,23,0,1798,1799,3,50,25,0,1799,1800,5,64,0,0,1800,1801,5,434,0,0,1801,1824,1,0,0,0,1802,1803,5,411,0,0,1803,1804,5,379,0,0,1804,1824,3,60,30,0,1805,1806,5,152,0,0,1806,1824,3,1252,626,0,1807,1808,5,316,0,0,1808,1824,3,1214,607,0,1809,1810,5,260,0,0,1810,1824,3,62,31,0,1811,1812,3,1506,753,0,1812,1813,3,64,32,0,1813,1824,1,0,0,0,1814,1815,5,325,0,0,1815,1816,5,106,0,0,1816,1824,3,64,32,0,1817,1818,5,376,0,0,1818,1819,5,272,0,0,1819,1824,3,1104,552,0,1820,1821,5,349,0,0,1821,1822,5,330,0,0,1822,1824,3,1252,626,0,1823,1797,1,0,0,0,1823,1798,1,0,0,0,1823,1802,1,0,0,0,1823,1805,1,0,0,0,1823,1807,1,0,0,0,1823,1809,1,0,0,0,1823,1811,1,0,0,0,1823,1814,1,0,0,0,1823,1817,1,0,0,0,1823,1820,1,0,0,0,1824,49,1,0,0,0,1825,1830,3,1264,632,0,1826,1827,5,11,0,0,1827,1829,3,1264,632,0,1828,1826,1,0,0,0,1829,1832,1,0,0,0,1830,1828,1,0,0,0,1830,1831,1,0,0,0,1831,51,1,0,0,0,1832,1830,1,0,0,0,1833,1838,3,54,27,0,1834,1835,5,6,0,0,1835,1837,3,54,27,0,1836,1834,1,0,0,0,1837,1840,1,0,0,0,1838,1836,1,0,0,0,1838,1839,1,0,0,0,1839,53,1,0,0,0,1840,1838,1,0,0,0,1841,1844,3,58,29,0,1842,1844,3,264,132,0,1843,1841,1,0,0,0,1843,1842,1,0,0,0,1844,55,1,0,0,0,1845,1846,5,293,0,0,1846,1851,7,4,0,0,1847,1848,5,303,0,0,1848,1851,5,293,0,0,1849,1851,5,323,0,0,1850,1845,1,0,0,0,1850,1847,1,0,0,0,1850,1849,1,0,0,0,1851,57,1,0,0,0,1852,1857,5,96,0,0,1853,1857,5,60,0,0,1854,1857,5,80,0,0,1855,1857,3,64,32,0,1856,1852,1,0,0,0,1856,1853,1,0,0,0,1856,1854,1,0,0,0,1856,1855,1,0,0,0,1857,59,1,0,0,0,1858,1874,3,1252,626,0,1859,1874,3,1274,637,0,1860,1861,3,1028,514,0,1861,1862,3,1252,626,0,1862,1863,3,1032,516,0,1863,1874,1,0,0,0,1864,1865,3,1028,514,0,1865,1866,5,2,0,0,1866,1867,3,1250,625,0,1867,1868,5,3,0,0,1868,1869,3,1252,626,0,1869,1874,1,0,0,0,1870,1874,3,264,132,0,1871,1874,5,53,0,0,1872,1874,5,245,0,0,1873,1858,1,0,0,0,1873,1859,1,0,0,0,1873,1860,1,0,0,0,1873,1864,1,0,0,0,1873,1870,1,0,0,0,1873,1871,1,0,0,0,1873,1872,1,0,0,0,1874,61,1,0,0,0,1875,1879,3,1252,626,0,1876,1879,5,53,0,0,1877,1879,1,0,0,0,1878,1875,1,0,0,0,1878,1876,1,0,0,0,1878,1877,1,0,0,0,1879,63,1,0,0,0,1880,1883,3,1270,635,0,1881,1883,3,1252,626,0,1882,1880,1,0,0,0,1882,1881,1,0,0,0,1883,65,1,0,0,0,1884,1885,5,306,0,0,1885,1886,3,68,34,0,1886,67,1,0,0,0,1887,1896,3,70,35,0,1888,1889,5,411,0,0,1889,1896,5,379,0,0,1890,1891,5,349,0,0,1891,1892,5,235,0,0,1892,1896,5,242,0,0,1893,1894,5,325,0,0,1894,1896,5,106,0,0,1895,1887,1,0,0,0,1895,1888,1,0,0,0,1895,1890,1,0,0,0,1895,1893,1,0,0,0,1896,69,1,0,0,0,1897,1900,3,50,25,0,1898,1900,5,30,0,0,1899,1897,1,0,0,0,1899,1898,1,0,0,0,1900,71,1,0,0,0,1901,1902,5,326,0,0,1902,1905,3,44,22,0,1903,1905,3,66,33,0,1904,1901,1,0,0,0,1904,1903,1,0,0,0,1905,73,1,0,0,0,1906,1907,5,326,0,0,1907,1910,3,48,24,0,1908,1910,3,66,33,0,1909,1906,1,0,0,0,1909,1908,1,0,0,0,1910,75,1,0,0,0,1911,1921,5,328,0,0,1912,1922,3,50,25,0,1913,1914,5,411,0,0,1914,1922,5,379,0,0,1915,1916,5,349,0,0,1916,1917,5,235,0,0,1917,1922,5,242,0,0,1918,1919,5,325,0,0,1919,1922,5,106,0,0,1920,1922,5,30,0,0,1921,1912,1,0,0,0,1921,1913,1,0,0,0,1921,1915,1,0,0,0,1921,1918,1,0,0,0,1921,1920,1,0,0,0,1922,77,1,0,0,0,1923,1924,5,326,0,0,1924,1925,5,165,0,0,1925,1926,3,80,40,0,1926,1927,3,82,41,0,1927,79,1,0,0,0,1928,1931,5,30,0,0,1929,1931,3,1208,604,0,1930,1928,1,0,0,0,1930,1929,1,0,0,0,1931,81,1,0,0,0,1932,1933,7,5,0,0,1933,83,1,0,0,0,1934,1935,5,155,0,0,1935,85,1,0,0,0,1936,1937,5,187,0,0,1937,1938,7,6,0,0,1938,87,1,0,0,0,1939,1940,5,138,0,0,1940,1943,5,92,0,0,1941,1942,5,220,0,0,1942,1944,5,389,0,0,1943,1941,1,0,0,0,1943,1944,1,0,0,0,1944,1945,1,0,0,0,1945,1948,3,958,479,0,1946,1949,3,90,45,0,1947,1949,3,92,46,0,1948,1946,1,0,0,0,1948,1947,1,0,0,0,1949,2040,1,0,0,0,1950,1951,5,138,0,0,1951,1952,5,92,0,0,1952,1953,5,30,0,0,1953,1954,5,68,0,0,1954,1955,5,344,0,0,1955,1959,3,1234,617,0,1956,1957,5,274,0,0,1957,1958,5,147,0,0,1958,1960,3,1262,631,0,1959,1956,1,0,0,0,1959,1960,1,0,0,0,1960,1961,1,0,0,0,1961,1962,5,326,0,0,1962,1963,5,344,0,0,1963,1964,3,1234,617,0,1964,1965,3,840,420,0,1965,2040,1,0,0,0,1966,1967,5,138,0,0,1967,1970,5,226,0,0,1968,1969,5,220,0,0,1969,1971,5,389,0,0,1970,1968,1,0,0,0,1970,1971,1,0,0,0,1971,1972,1,0,0,0,1972,1975,3,1218,609,0,1973,1976,3,90,45,0,1974,1976,3,94,47,0,1975,1973,1,0,0,0,1975,1974,1,0,0,0,1976,2040,1,0,0,0,1977,1978,5,138,0,0,1978,1979,5,226,0,0,1979,1980,5,30,0,0,1980,1981,5,68,0,0,1981,1982,5,344,0,0,1982,1986,3,1234,617,0,1983,1984,5,274,0,0,1984,1985,5,147,0,0,1985,1987,3,1262,631,0,1986,1983,1,0,0,0,1986,1987,1,0,0,0,1987,1988,1,0,0,0,1988,1989,5,326,0,0,1989,1990,5,344,0,0,1990,1991,3,1234,617,0,1991,1992,3,840,420,0,1992,2040,1,0,0,0,1993,1994,5,138,0,0,1994,1997,5,369,0,0,1995,1996,5,220,0,0,1996,1998,5,389,0,0,1997,1995,1,0,0,0,1997,1998,1,0,0,0,1998,1999,1,0,0,0,1999,2e3,3,956,478,0,2e3,2001,3,90,45,0,2001,2040,1,0,0,0,2002,2003,5,138,0,0,2003,2004,5,251,0,0,2004,2007,5,369,0,0,2005,2006,5,220,0,0,2006,2008,5,389,0,0,2007,2005,1,0,0,0,2007,2008,1,0,0,0,2008,2009,1,0,0,0,2009,2010,3,1230,615,0,2010,2011,3,90,45,0,2011,2040,1,0,0,0,2012,2013,5,138,0,0,2013,2014,5,251,0,0,2014,2015,5,369,0,0,2015,2016,5,30,0,0,2016,2017,5,68,0,0,2017,2018,5,344,0,0,2018,2022,3,1234,617,0,2019,2020,5,274,0,0,2020,2021,5,147,0,0,2021,2023,3,1262,631,0,2022,2019,1,0,0,0,2022,2023,1,0,0,0,2023,2024,1,0,0,0,2024,2025,5,326,0,0,2025,2026,5,344,0,0,2026,2027,3,1234,617,0,2027,2028,3,840,420,0,2028,2040,1,0,0,0,2029,2030,5,138,0,0,2030,2031,5,63,0,0,2031,2034,5,92,0,0,2032,2033,5,220,0,0,2033,2035,5,389,0,0,2034,2032,1,0,0,0,2034,2035,1,0,0,0,2035,2036,1,0,0,0,2036,2037,3,958,479,0,2037,2038,3,90,45,0,2038,2040,1,0,0,0,2039,1939,1,0,0,0,2039,1950,1,0,0,0,2039,1966,1,0,0,0,2039,1977,1,0,0,0,2039,1993,1,0,0,0,2039,2002,1,0,0,0,2039,2012,1,0,0,0,2039,2029,1,0,0,0,2040,89,1,0,0,0,2041,2046,3,96,48,0,2042,2043,5,6,0,0,2043,2045,3,96,48,0,2044,2042,1,0,0,0,2045,2048,1,0,0,0,2046,2044,1,0,0,0,2046,2047,1,0,0,0,2047,91,1,0,0,0,2048,2046,1,0,0,0,2049,2050,5,435,0,0,2050,2051,5,278,0,0,2051,2052,3,1230,615,0,2052,2053,3,120,60,0,2053,2058,1,0,0,0,2054,2055,5,436,0,0,2055,2056,5,278,0,0,2056,2058,3,1230,615,0,2057,2049,1,0,0,0,2057,2054,1,0,0,0,2058,93,1,0,0,0,2059,2060,5,435,0,0,2060,2061,5,278,0,0,2061,2062,3,1230,615,0,2062,95,1,0,0,0,2063,2064,5,133,0,0,2064,2305,3,168,84,0,2065,2066,5,133,0,0,2066,2067,5,220,0,0,2067,2068,5,77,0,0,2068,2069,5,389,0,0,2069,2305,3,168,84,0,2070,2071,5,133,0,0,2071,2072,5,44,0,0,2072,2305,3,168,84,0,2073,2074,5,133,0,0,2074,2075,5,44,0,0,2075,2076,5,220,0,0,2076,2077,5,77,0,0,2077,2078,5,389,0,0,2078,2305,3,168,84,0,2079,2080,5,138,0,0,2080,2081,3,648,324,0,2081,2082,3,1264,632,0,2082,2083,3,98,49,0,2083,2305,1,0,0,0,2084,2085,5,138,0,0,2085,2086,3,648,324,0,2086,2087,3,1264,632,0,2087,2088,5,191,0,0,2088,2089,5,77,0,0,2089,2090,5,78,0,0,2090,2305,1,0,0,0,2091,2092,5,138,0,0,2092,2093,3,648,324,0,2093,2094,3,1264,632,0,2094,2095,5,326,0,0,2095,2096,5,77,0,0,2096,2097,5,78,0,0,2097,2305,1,0,0,0,2098,2099,5,138,0,0,2099,2100,3,648,324,0,2100,2101,3,1264,632,0,2101,2102,5,191,0,0,2102,2103,5,437,0,0,2103,2305,1,0,0,0,2104,2105,5,138,0,0,2105,2106,3,648,324,0,2106,2107,3,1264,632,0,2107,2108,5,191,0,0,2108,2109,5,437,0,0,2109,2110,5,220,0,0,2110,2111,5,389,0,0,2111,2305,1,0,0,0,2112,2113,5,138,0,0,2113,2114,3,648,324,0,2114,2115,3,1264,632,0,2115,2116,5,326,0,0,2116,2117,5,335,0,0,2117,2118,3,1258,629,0,2118,2305,1,0,0,0,2119,2120,5,138,0,0,2120,2121,3,648,324,0,2121,2122,3,1250,625,0,2122,2123,5,326,0,0,2123,2124,5,335,0,0,2124,2125,3,1258,629,0,2125,2305,1,0,0,0,2126,2127,5,138,0,0,2127,2128,3,648,324,0,2128,2129,3,1264,632,0,2129,2130,5,326,0,0,2130,2131,3,108,54,0,2131,2305,1,0,0,0,2132,2133,5,138,0,0,2133,2134,3,648,324,0,2134,2135,3,1264,632,0,2135,2136,5,306,0,0,2136,2137,3,108,54,0,2137,2305,1,0,0,0,2138,2139,5,138,0,0,2139,2140,3,648,324,0,2140,2141,3,1264,632,0,2141,2142,5,326,0,0,2142,2143,5,338,0,0,2143,2144,3,1264,632,0,2144,2305,1,0,0,0,2145,2146,5,138,0,0,2146,2147,3,648,324,0,2147,2148,3,1264,632,0,2148,2149,5,133,0,0,2149,2150,5,438,0,0,2150,2151,3,178,89,0,2151,2152,5,36,0,0,2152,2153,5,219,0,0,2153,2154,3,258,129,0,2154,2305,1,0,0,0,2155,2156,5,138,0,0,2156,2157,3,648,324,0,2157,2158,3,1264,632,0,2158,2159,3,116,58,0,2159,2305,1,0,0,0,2160,2161,5,138,0,0,2161,2162,3,648,324,0,2162,2163,3,1264,632,0,2163,2164,5,191,0,0,2164,2165,5,219,0,0,2165,2305,1,0,0,0,2166,2167,5,138,0,0,2167,2168,3,648,324,0,2168,2169,3,1264,632,0,2169,2170,5,191,0,0,2170,2171,5,219,0,0,2171,2172,5,220,0,0,2172,2173,5,389,0,0,2173,2305,1,0,0,0,2174,2175,5,191,0,0,2175,2176,3,648,324,0,2176,2177,5,220,0,0,2177,2178,5,389,0,0,2178,2179,3,1264,632,0,2179,2180,3,100,50,0,2180,2305,1,0,0,0,2181,2182,5,191,0,0,2182,2183,3,648,324,0,2183,2184,3,1264,632,0,2184,2185,3,100,50,0,2185,2305,1,0,0,0,2186,2187,5,138,0,0,2187,2188,3,648,324,0,2188,2189,3,1264,632,0,2189,2190,3,650,325,0,2190,2191,5,353,0,0,2191,2192,3,996,498,0,2192,2193,3,102,51,0,2193,2194,3,104,52,0,2194,2305,1,0,0,0,2195,2196,5,138,0,0,2196,2197,3,648,324,0,2197,2198,3,1264,632,0,2198,2199,3,306,153,0,2199,2305,1,0,0,0,2200,2201,5,133,0,0,2201,2305,3,188,94,0,2202,2203,5,138,0,0,2203,2204,5,45,0,0,2204,2206,3,1224,612,0,2205,2207,3,398,199,0,2206,2205,1,0,0,0,2207,2208,1,0,0,0,2208,2206,1,0,0,0,2208,2209,1,0,0,0,2209,2305,1,0,0,0,2210,2211,5,365,0,0,2211,2212,5,45,0,0,2212,2305,3,1224,612,0,2213,2214,5,191,0,0,2214,2217,5,45,0,0,2215,2216,5,220,0,0,2216,2218,5,389,0,0,2217,2215,1,0,0,0,2217,2218,1,0,0,0,2218,2219,1,0,0,0,2219,2220,3,1224,612,0,2220,2221,3,100,50,0,2221,2305,1,0,0,0,2222,2223,5,326,0,0,2223,2224,5,372,0,0,2224,2305,5,270,0,0,2225,2226,5,158,0,0,2226,2227,5,80,0,0,2227,2305,3,1234,617,0,2228,2229,5,326,0,0,2229,2230,5,372,0,0,2230,2305,5,158,0,0,2231,2232,5,326,0,0,2232,2305,5,439,0,0,2233,2234,5,326,0,0,2234,2305,5,360,0,0,2235,2237,5,193,0,0,2236,2238,7,7,0,0,2237,2236,1,0,0,0,2237,2238,1,0,0,0,2238,2239,1,0,0,0,2239,2240,5,350,0,0,2240,2305,3,1222,611,0,2241,2242,5,193,0,0,2242,2243,5,350,0,0,2243,2305,7,8,0,0,2244,2245,5,186,0,0,2245,2246,5,350,0,0,2246,2305,3,1222,611,0,2247,2248,5,186,0,0,2248,2249,5,350,0,0,2249,2305,7,8,0,0,2250,2251,5,193,0,0,2251,2252,5,314,0,0,2252,2305,3,1234,617,0,2253,2254,5,193,0,0,2254,2255,5,139,0,0,2255,2256,5,314,0,0,2256,2305,3,1234,617,0,2257,2258,5,193,0,0,2258,2259,5,305,0,0,2259,2260,5,314,0,0,2260,2305,3,1234,617,0,2261,2262,5,186,0,0,2262,2263,5,314,0,0,2263,2305,3,1234,617,0,2264,2265,5,228,0,0,2265,2305,3,1230,615,0,2266,2267,5,262,0,0,2267,2268,5,228,0,0,2268,2305,3,1230,615,0,2269,2270,5,268,0,0,2270,2305,3,470,235,0,2271,2272,5,77,0,0,2272,2305,5,268,0,0,2273,2274,5,275,0,0,2274,2275,5,94,0,0,2275,2305,3,1260,630,0,2276,2277,5,326,0,0,2277,2278,5,344,0,0,2278,2305,3,1234,617,0,2279,2280,5,326,0,0,2280,2305,3,108,54,0,2281,2282,5,306,0,0,2282,2305,3,108,54,0,2283,2284,5,305,0,0,2284,2285,5,219,0,0,2285,2305,3,106,53,0,2286,2287,5,193,0,0,2287,2288,5,407,0,0,2288,2289,5,242,0,0,2289,2305,5,320,0,0,2290,2291,5,186,0,0,2291,2292,5,407,0,0,2292,2293,5,242,0,0,2293,2305,5,320,0,0,2294,2295,5,209,0,0,2295,2296,5,407,0,0,2296,2297,5,242,0,0,2297,2305,5,320,0,0,2298,2299,5,262,0,0,2299,2300,5,209,0,0,2300,2301,5,407,0,0,2301,2302,5,242,0,0,2302,2305,5,320,0,0,2303,2305,3,306,153,0,2304,2063,1,0,0,0,2304,2065,1,0,0,0,2304,2070,1,0,0,0,2304,2073,1,0,0,0,2304,2079,1,0,0,0,2304,2084,1,0,0,0,2304,2091,1,0,0,0,2304,2098,1,0,0,0,2304,2104,1,0,0,0,2304,2112,1,0,0,0,2304,2119,1,0,0,0,2304,2126,1,0,0,0,2304,2132,1,0,0,0,2304,2138,1,0,0,0,2304,2145,1,0,0,0,2304,2155,1,0,0,0,2304,2160,1,0,0,0,2304,2166,1,0,0,0,2304,2174,1,0,0,0,2304,2181,1,0,0,0,2304,2186,1,0,0,0,2304,2195,1,0,0,0,2304,2200,1,0,0,0,2304,2202,1,0,0,0,2304,2210,1,0,0,0,2304,2213,1,0,0,0,2304,2222,1,0,0,0,2304,2225,1,0,0,0,2304,2228,1,0,0,0,2304,2231,1,0,0,0,2304,2233,1,0,0,0,2304,2235,1,0,0,0,2304,2241,1,0,0,0,2304,2244,1,0,0,0,2304,2247,1,0,0,0,2304,2250,1,0,0,0,2304,2253,1,0,0,0,2304,2257,1,0,0,0,2304,2261,1,0,0,0,2304,2264,1,0,0,0,2304,2266,1,0,0,0,2304,2269,1,0,0,0,2304,2271,1,0,0,0,2304,2273,1,0,0,0,2304,2276,1,0,0,0,2304,2279,1,0,0,0,2304,2281,1,0,0,0,2304,2283,1,0,0,0,2304,2286,1,0,0,0,2304,2290,1,0,0,0,2304,2294,1,0,0,0,2304,2298,1,0,0,0,2304,2303,1,0,0,0,2305,97,1,0,0,0,2306,2307,5,326,0,0,2307,2308,5,53,0,0,2308,2312,3,1038,519,0,2309,2310,5,191,0,0,2310,2312,5,53,0,0,2311,2306,1,0,0,0,2311,2309,1,0,0,0,2312,99,1,0,0,0,2313,2317,5,150,0,0,2314,2317,5,308,0,0,2315,2317,1,0,0,0,2316,2313,1,0,0,0,2316,2314,1,0,0,0,2316,2315,1,0,0,0,2317,101,1,0,0,0,2318,2319,5,43,0,0,2319,2322,3,470,235,0,2320,2322,1,0,0,0,2321,2318,1,0,0,0,2321,2320,1,0,0,0,2322,103,1,0,0,0,2323,2324,5,100,0,0,2324,2327,3,1038,519,0,2325,2327,1,0,0,0,2326,2323,1,0,0,0,2326,2325,1,0,0,0,2327,105,1,0,0,0,2328,2335,5,263,0,0,2329,2335,5,113,0,0,2330,2335,5,53,0,0,2331,2332,5,100,0,0,2332,2333,5,226,0,0,2333,2335,3,1218,609,0,2334,2328,1,0,0,0,2334,2329,1,0,0,0,2334,2330,1,0,0,0,2334,2331,1,0,0,0,2335,107,1,0,0,0,2336,2337,5,2,0,0,2337,2338,3,112,56,0,2338,2339,5,3,0,0,2339,109,1,0,0,0,2340,2341,5,105,0,0,2341,2344,3,108,54,0,2342,2344,1,0,0,0,2343,2340,1,0,0,0,2343,2342,1,0,0,0,2344,111,1,0,0,0,2345,2350,3,114,57,0,2346,2347,5,6,0,0,2347,2349,3,114,57,0,2348,2346,1,0,0,0,2349,2352,1,0,0,0,2350,2348,1,0,0,0,2350,2351,1,0,0,0,2351,113,1,0,0,0,2352,2350,1,0,0,0,2353,2362,3,1272,636,0,2354,2355,5,10,0,0,2355,2363,3,420,210,0,2356,2357,5,11,0,0,2357,2360,3,1272,636,0,2358,2359,5,10,0,0,2359,2361,3,420,210,0,2360,2358,1,0,0,0,2360,2361,1,0,0,0,2361,2363,1,0,0,0,2362,2354,1,0,0,0,2362,2356,1,0,0,0,2362,2363,1,0,0,0,2363,115,1,0,0,0,2364,2366,3,118,59,0,2365,2364,1,0,0,0,2366,2367,1,0,0,0,2367,2365,1,0,0,0,2367,2368,1,0,0,0,2368,117,1,0,0,0,2369,2373,5,307,0,0,2370,2371,3,12,6,0,2371,2372,3,264,132,0,2372,2374,1,0,0,0,2373,2370,1,0,0,0,2373,2374,1,0,0,0,2374,2382,1,0,0,0,2375,2379,5,326,0,0,2376,2380,3,262,131,0,2377,2378,5,438,0,0,2378,2380,3,178,89,0,2379,2376,1,0,0,0,2379,2377,1,0,0,0,2380,2382,1,0,0,0,2381,2369,1,0,0,0,2381,2375,1,0,0,0,2382,119,1,0,0,0,2383,2384,5,62,0,0,2384,2385,5,415,0,0,2385,2386,5,105,0,0,2386,2387,5,2,0,0,2387,2388,3,124,62,0,2388,2389,5,3,0,0,2389,2410,1,0,0,0,2390,2391,5,62,0,0,2391,2392,5,415,0,0,2392,2393,5,68,0,0,2393,2394,5,2,0,0,2394,2395,3,1156,578,0,2395,2396,5,3,0,0,2396,2410,1,0,0,0,2397,2398,5,62,0,0,2398,2399,5,415,0,0,2399,2400,5,64,0,0,2400,2401,5,2,0,0,2401,2402,3,1156,578,0,2402,2403,5,3,0,0,2403,2404,5,94,0,0,2404,2405,5,2,0,0,2405,2406,3,1156,578,0,2406,2407,5,3,0,0,2407,2410,1,0,0,0,2408,2410,5,53,0,0,2409,2383,1,0,0,0,2409,2390,1,0,0,0,2409,2397,1,0,0,0,2409,2408,1,0,0,0,2410,121,1,0,0,0,2411,2412,3,1270,635,0,2412,2413,3,1250,625,0,2413,123,1,0,0,0,2414,2419,3,122,61,0,2415,2416,5,6,0,0,2416,2418,3,122,61,0,2417,2415,1,0,0,0,2418,2421,1,0,0,0,2419,2417,1,0,0,0,2419,2420,1,0,0,0,2420,125,1,0,0,0,2421,2419,1,0,0,0,2422,2423,5,138,0,0,2423,2424,5,353,0,0,2424,2425,3,470,235,0,2425,2426,3,128,64,0,2426,127,1,0,0,0,2427,2432,3,130,65,0,2428,2429,5,6,0,0,2429,2431,3,130,65,0,2430,2428,1,0,0,0,2431,2434,1,0,0,0,2432,2430,1,0,0,0,2432,2433,1,0,0,0,2433,129,1,0,0,0,2434,2432,1,0,0,0,2435,2436,5,133,0,0,2436,2437,5,143,0,0,2437,2438,3,982,491,0,2438,2439,3,100,50,0,2439,2459,1,0,0,0,2440,2441,5,191,0,0,2441,2444,5,143,0,0,2442,2443,5,220,0,0,2443,2445,5,389,0,0,2444,2442,1,0,0,0,2444,2445,1,0,0,0,2445,2446,1,0,0,0,2446,2447,3,1264,632,0,2447,2448,3,100,50,0,2448,2459,1,0,0,0,2449,2450,5,138,0,0,2450,2451,5,143,0,0,2451,2452,3,1264,632,0,2452,2453,3,650,325,0,2453,2454,5,353,0,0,2454,2455,3,996,498,0,2455,2456,3,102,51,0,2456,2457,3,100,50,0,2457,2459,1,0,0,0,2458,2435,1,0,0,0,2458,2440,1,0,0,0,2458,2449,1,0,0,0,2459,131,1,0,0,0,2460,2463,5,157,0,0,2461,2464,3,854,427,0,2462,2464,5,30,0,0,2463,2461,1,0,0,0,2463,2462,1,0,0,0,2464,133,1,0,0,0,2465,2467,5,169,0,0,2466,2468,5,107,0,0,2467,2466,1,0,0,0,2467,2468,1,0,0,0,2468,2469,1,0,0,0,2469,2470,3,1230,615,0,2470,2471,3,192,96,0,2471,2473,3,136,68,0,2472,2474,5,290,0,0,2473,2472,1,0,0,0,2473,2474,1,0,0,0,2474,2475,1,0,0,0,2475,2476,3,138,69,0,2476,2477,3,144,72,0,2477,2478,3,12,6,0,2478,2479,3,140,70,0,2479,2480,3,974,487,0,2480,2494,1,0,0,0,2481,2482,5,169,0,0,2482,2483,5,2,0,0,2483,2484,3,796,398,0,2484,2485,5,3,0,0,2485,2487,5,94,0,0,2486,2488,5,290,0,0,2487,2486,1,0,0,0,2487,2488,1,0,0,0,2488,2489,1,0,0,0,2489,2490,3,138,69,0,2490,2491,3,12,6,0,2491,2492,3,140,70,0,2492,2494,1,0,0,0,2493,2465,1,0,0,0,2493,2481,1,0,0,0,2494,135,1,0,0,0,2495,2496,7,9,0,0,2496,137,1,0,0,0,2497,2501,3,1252,626,0,2498,2501,5,336,0,0,2499,2501,5,337,0,0,2500,2497,1,0,0,0,2500,2498,1,0,0,0,2500,2499,1,0,0,0,2501,139,1,0,0,0,2502,2504,3,142,71,0,2503,2502,1,0,0,0,2504,2507,1,0,0,0,2505,2503,1,0,0,0,2505,2506,1,0,0,0,2506,2513,1,0,0,0,2507,2505,1,0,0,0,2508,2509,5,2,0,0,2509,2510,3,146,73,0,2510,2511,5,3,0,0,2511,2513,1,0,0,0,2512,2505,1,0,0,0,2512,2508,1,0,0,0,2513,141,1,0,0,0,2514,2550,5,107,0,0,2515,2550,5,112,0,0,2516,2517,5,183,0,0,2517,2518,3,748,374,0,2518,2519,3,1252,626,0,2519,2550,1,0,0,0,2520,2521,5,78,0,0,2521,2522,3,748,374,0,2522,2523,3,1252,626,0,2523,2550,1,0,0,0,2524,2550,5,171,0,0,2525,2550,5,216,0,0,2526,2527,5,291,0,0,2527,2528,3,748,374,0,2528,2529,3,1252,626,0,2529,2550,1,0,0,0,2530,2531,5,197,0,0,2531,2532,3,748,374,0,2532,2533,3,1252,626,0,2533,2550,1,0,0,0,2534,2535,5,209,0,0,2535,2536,5,291,0,0,2536,2550,3,194,97,0,2537,2538,5,209,0,0,2538,2539,5,291,0,0,2539,2550,5,9,0,0,2540,2541,5,209,0,0,2541,2542,5,77,0,0,2542,2543,5,78,0,0,2543,2550,3,194,97,0,2544,2545,5,209,0,0,2545,2546,5,78,0,0,2546,2550,3,194,97,0,2547,2548,5,194,0,0,2548,2550,3,1252,626,0,2549,2514,1,0,0,0,2549,2515,1,0,0,0,2549,2516,1,0,0,0,2549,2520,1,0,0,0,2549,2524,1,0,0,0,2549,2525,1,0,0,0,2549,2526,1,0,0,0,2549,2530,1,0,0,0,2549,2534,1,0,0,0,2549,2537,1,0,0,0,2549,2540,1,0,0,0,2549,2544,1,0,0,0,2549,2547,1,0,0,0,2550,143,1,0,0,0,2551,2553,5,100,0,0,2552,2551,1,0,0,0,2552,2553,1,0,0,0,2553,2554,1,0,0,0,2554,2555,5,184,0,0,2555,2558,3,1252,626,0,2556,2558,1,0,0,0,2557,2552,1,0,0,0,2557,2556,1,0,0,0,2558,145,1,0,0,0,2559,2564,3,148,74,0,2560,2561,5,6,0,0,2561,2563,3,148,74,0,2562,2560,1,0,0,0,2563,2566,1,0,0,0,2564,2562,1,0,0,0,2564,2565,1,0,0,0,2565,147,1,0,0,0,2566,2564,1,0,0,0,2567,2568,3,1272,636,0,2568,2569,3,150,75,0,2569,149,1,0,0,0,2570,2586,3,58,29,0,2571,2586,3,264,132,0,2572,2586,5,9,0,0,2573,2574,5,2,0,0,2574,2579,3,58,29,0,2575,2576,5,6,0,0,2576,2578,3,58,29,0,2577,2575,1,0,0,0,2578,2581,1,0,0,0,2579,2577,1,0,0,0,2579,2580,1,0,0,0,2580,2582,1,0,0,0,2581,2579,1,0,0,0,2582,2583,5,3,0,0,2583,2586,1,0,0,0,2584,2586,1,0,0,0,2585,2570,1,0,0,0,2585,2571,1,0,0,0,2585,2572,1,0,0,0,2585,2573,1,0,0,0,2585,2584,1,0,0,0,2586,151,1,0,0,0,2587,2588,5,46,0,0,2588,2589,3,154,77,0,2589,2593,5,92,0,0,2590,2591,5,220,0,0,2591,2592,5,77,0,0,2592,2594,5,389,0,0,2593,2590,1,0,0,0,2593,2594,1,0,0,0,2594,2595,1,0,0,0,2595,2626,3,1230,615,0,2596,2597,5,2,0,0,2597,2598,3,156,78,0,2598,2599,5,3,0,0,2599,2600,3,216,108,0,2600,2601,3,218,109,0,2601,2602,3,226,113,0,2602,2603,3,228,114,0,2603,2604,3,230,115,0,2604,2605,3,232,116,0,2605,2627,1,0,0,0,2606,2607,5,268,0,0,2607,2608,3,470,235,0,2608,2609,3,158,79,0,2609,2610,3,218,109,0,2610,2611,3,226,113,0,2611,2612,3,228,114,0,2612,2613,3,230,115,0,2613,2614,3,232,116,0,2614,2627,1,0,0,0,2615,2616,5,278,0,0,2616,2617,5,268,0,0,2617,2618,3,1230,615,0,2618,2619,3,158,79,0,2619,2620,3,120,60,0,2620,2621,3,218,109,0,2621,2622,3,226,113,0,2622,2623,3,228,114,0,2623,2624,3,230,115,0,2624,2625,3,232,116,0,2625,2627,1,0,0,0,2626,2596,1,0,0,0,2626,2606,1,0,0,0,2626,2615,1,0,0,0,2627,153,1,0,0,0,2628,2637,5,347,0,0,2629,2637,5,345,0,0,2630,2631,5,245,0,0,2631,2637,7,10,0,0,2632,2633,5,213,0,0,2633,2637,7,10,0,0,2634,2637,5,360,0,0,2635,2637,1,0,0,0,2636,2628,1,0,0,0,2636,2629,1,0,0,0,2636,2630,1,0,0,0,2636,2632,1,0,0,0,2636,2634,1,0,0,0,2636,2635,1,0,0,0,2637,155,1,0,0,0,2638,2641,3,160,80,0,2639,2641,1,0,0,0,2640,2638,1,0,0,0,2640,2639,1,0,0,0,2641,157,1,0,0,0,2642,2643,5,2,0,0,2643,2644,3,162,81,0,2644,2645,5,3,0,0,2645,2648,1,0,0,0,2646,2648,1,0,0,0,2647,2642,1,0,0,0,2647,2646,1,0,0,0,2648,159,1,0,0,0,2649,2654,3,164,82,0,2650,2651,5,6,0,0,2651,2653,3,164,82,0,2652,2650,1,0,0,0,2653,2656,1,0,0,0,2654,2652,1,0,0,0,2654,2655,1,0,0,0,2655,161,1,0,0,0,2656,2654,1,0,0,0,2657,2662,3,166,83,0,2658,2659,5,6,0,0,2659,2661,3,166,83,0,2660,2658,1,0,0,0,2661,2664,1,0,0,0,2662,2660,1,0,0,0,2662,2663,1,0,0,0,2663,163,1,0,0,0,2664,2662,1,0,0,0,2665,2669,3,188,94,0,2666,2669,3,182,91,0,2667,2669,3,168,84,0,2668,2665,1,0,0,0,2668,2666,1,0,0,0,2668,2667,1,0,0,0,2669,165,1,0,0,0,2670,2673,3,170,85,0,2671,2673,3,188,94,0,2672,2670,1,0,0,0,2672,2671,1,0,0,0,2673,167,1,0,0,0,2674,2675,3,1264,632,0,2675,2676,3,996,498,0,2676,2677,3,302,151,0,2677,2678,3,172,86,0,2678,169,1,0,0,0,2679,2682,3,1264,632,0,2680,2681,5,105,0,0,2681,2683,5,273,0,0,2682,2680,1,0,0,0,2682,2683,1,0,0,0,2683,2684,1,0,0,0,2684,2685,3,172,86,0,2685,171,1,0,0,0,2686,2688,3,174,87,0,2687,2686,1,0,0,0,2688,2691,1,0,0,0,2689,2687,1,0,0,0,2689,2690,1,0,0,0,2690,173,1,0,0,0,2691,2689,1,0,0,0,2692,2693,5,45,0,0,2693,2694,3,1234,617,0,2694,2695,3,176,88,0,2695,2701,1,0,0,0,2696,2701,3,176,88,0,2697,2701,3,180,90,0,2698,2699,5,43,0,0,2699,2701,3,470,235,0,2700,2692,1,0,0,0,2700,2696,1,0,0,0,2700,2697,1,0,0,0,2700,2698,1,0,0,0,2701,175,1,0,0,0,2702,2703,5,77,0,0,2703,2743,5,78,0,0,2704,2743,5,78,0,0,2705,2706,5,98,0,0,2706,2707,3,594,297,0,2707,2708,3,234,117,0,2708,2743,1,0,0,0,2709,2710,5,85,0,0,2710,2711,5,236,0,0,2711,2712,3,594,297,0,2712,2713,3,234,117,0,2713,2743,1,0,0,0,2714,2715,5,42,0,0,2715,2716,5,2,0,0,2716,2717,3,1038,519,0,2717,2720,5,3,0,0,2718,2719,5,262,0,0,2719,2721,5,228,0,0,2720,2718,1,0,0,0,2720,2721,1,0,0,0,2721,2743,1,0,0,0,2722,2723,5,53,0,0,2723,2743,3,1080,540,0,2724,2725,5,438,0,0,2725,2726,3,178,89,0,2726,2734,5,36,0,0,2727,2728,5,219,0,0,2728,2735,3,258,129,0,2729,2730,5,2,0,0,2730,2731,3,1038,519,0,2731,2732,5,3,0,0,2732,2733,5,440,0,0,2733,2735,1,0,0,0,2734,2727,1,0,0,0,2734,2729,1,0,0,0,2735,2743,1,0,0,0,2736,2737,5,86,0,0,2737,2738,3,1230,615,0,2738,2739,3,192,96,0,2739,2740,3,200,100,0,2740,2741,3,208,104,0,2741,2743,1,0,0,0,2742,2702,1,0,0,0,2742,2704,1,0,0,0,2742,2705,1,0,0,0,2742,2709,1,0,0,0,2742,2714,1,0,0,0,2742,2722,1,0,0,0,2742,2724,1,0,0,0,2742,2736,1,0,0,0,2743,177,1,0,0,0,2744,2748,5,139,0,0,2745,2746,5,147,0,0,2746,2748,5,53,0,0,2747,2744,1,0,0,0,2747,2745,1,0,0,0,2748,179,1,0,0,0,2749,2755,5,54,0,0,2750,2751,5,77,0,0,2751,2755,5,54,0,0,2752,2753,5,69,0,0,2753,2755,7,5,0,0,2754,2749,1,0,0,0,2754,2750,1,0,0,0,2754,2752,1,0,0,0,2755,181,1,0,0,0,2756,2757,5,120,0,0,2757,2758,3,1230,615,0,2758,2759,3,184,92,0,2759,183,1,0,0,0,2760,2761,7,11,0,0,2761,2763,3,186,93,0,2762,2760,1,0,0,0,2763,2766,1,0,0,0,2764,2762,1,0,0,0,2764,2765,1,0,0,0,2765,185,1,0,0,0,2766,2764,1,0,0,0,2767,2768,7,12,0,0,2768,187,1,0,0,0,2769,2770,5,45,0,0,2770,2771,3,1234,617,0,2771,2772,3,190,95,0,2772,2775,1,0,0,0,2773,2775,3,190,95,0,2774,2769,1,0,0,0,2774,2773,1,0,0,0,2775,189,1,0,0,0,2776,2777,5,42,0,0,2777,2778,5,2,0,0,2778,2779,3,1038,519,0,2779,2780,5,3,0,0,2780,2781,3,396,198,0,2781,2835,1,0,0,0,2782,2794,5,98,0,0,2783,2784,5,2,0,0,2784,2785,3,194,97,0,2785,2786,5,3,0,0,2786,2787,3,198,99,0,2787,2788,3,594,297,0,2788,2789,3,234,117,0,2789,2790,3,396,198,0,2790,2795,1,0,0,0,2791,2792,3,236,118,0,2792,2793,3,396,198,0,2793,2795,1,0,0,0,2794,2783,1,0,0,0,2794,2791,1,0,0,0,2795,2835,1,0,0,0,2796,2797,5,85,0,0,2797,2809,5,236,0,0,2798,2799,5,2,0,0,2799,2800,3,194,97,0,2800,2801,5,3,0,0,2801,2802,3,198,99,0,2802,2803,3,594,297,0,2803,2804,3,234,117,0,2804,2805,3,396,198,0,2805,2810,1,0,0,0,2806,2807,3,236,118,0,2807,2808,3,396,198,0,2808,2810,1,0,0,0,2809,2798,1,0,0,0,2809,2806,1,0,0,0,2810,2835,1,0,0,0,2811,2812,5,199,0,0,2812,2813,3,534,267,0,2813,2814,5,2,0,0,2814,2815,3,202,101,0,2815,2816,5,3,0,0,2816,2817,3,198,99,0,2817,2818,3,594,297,0,2818,2819,3,234,117,0,2819,2820,3,206,103,0,2820,2821,3,396,198,0,2821,2835,1,0,0,0,2822,2823,5,63,0,0,2823,2824,5,236,0,0,2824,2825,5,2,0,0,2825,2826,3,194,97,0,2826,2827,5,3,0,0,2827,2828,5,86,0,0,2828,2829,3,1230,615,0,2829,2830,3,192,96,0,2830,2831,3,200,100,0,2831,2832,3,208,104,0,2832,2833,3,396,198,0,2833,2835,1,0,0,0,2834,2776,1,0,0,0,2834,2782,1,0,0,0,2834,2796,1,0,0,0,2834,2811,1,0,0,0,2834,2822,1,0,0,0,2835,191,1,0,0,0,2836,2837,5,2,0,0,2837,2838,3,194,97,0,2838,2839,5,3,0,0,2839,2842,1,0,0,0,2840,2842,1,0,0,0,2841,2836,1,0,0,0,2841,2840,1,0,0,0,2842,193,1,0,0,0,2843,2848,3,196,98,0,2844,2845,5,6,0,0,2845,2847,3,196,98,0,2846,2844,1,0,0,0,2847,2850,1,0,0,0,2848,2846,1,0,0,0,2848,2849,1,0,0,0,2849,195,1,0,0,0,2850,2848,1,0,0,0,2851,2852,3,1264,632,0,2852,197,1,0,0,0,2853,2854,5,441,0,0,2854,2855,5,2,0,0,2855,2856,3,194,97,0,2856,2857,5,3,0,0,2857,2860,1,0,0,0,2858,2860,1,0,0,0,2859,2853,1,0,0,0,2859,2858,1,0,0,0,2860,199,1,0,0,0,2861,2862,5,249,0,0,2862,2865,7,13,0,0,2863,2865,1,0,0,0,2864,2861,1,0,0,0,2864,2863,1,0,0,0,2865,201,1,0,0,0,2866,2871,3,204,102,0,2867,2868,5,6,0,0,2868,2870,3,204,102,0,2869,2867,1,0,0,0,2870,2873,1,0,0,0,2871,2869,1,0,0,0,2871,2872,1,0,0,0,2872,203,1,0,0,0,2873,2871,1,0,0,0,2874,2875,3,540,270,0,2875,2882,5,105,0,0,2876,2883,3,610,305,0,2877,2878,5,271,0,0,2878,2879,5,2,0,0,2879,2880,3,610,305,0,2880,2881,5,3,0,0,2881,2883,1,0,0,0,2882,2876,1,0,0,0,2882,2877,1,0,0,0,2883,205,1,0,0,0,2884,2885,5,103,0,0,2885,2886,5,2,0,0,2886,2887,3,1038,519,0,2887,2888,5,3,0,0,2888,2891,1,0,0,0,2889,2891,1,0,0,0,2890,2884,1,0,0,0,2890,2889,1,0,0,0,2891,207,1,0,0,0,2892,2902,3,210,105,0,2893,2902,3,212,106,0,2894,2895,3,210,105,0,2895,2896,3,212,106,0,2896,2902,1,0,0,0,2897,2898,3,212,106,0,2898,2899,3,210,105,0,2899,2902,1,0,0,0,2900,2902,1,0,0,0,2901,2892,1,0,0,0,2901,2893,1,0,0,0,2901,2894,1,0,0,0,2901,2897,1,0,0,0,2901,2900,1,0,0,0,2902,209,1,0,0,0,2903,2904,5,80,0,0,2904,2905,5,362,0,0,2905,2906,3,214,107,0,2906,211,1,0,0,0,2907,2908,5,80,0,0,2908,2909,5,182,0,0,2909,2910,3,214,107,0,2910,213,1,0,0,0,2911,2912,5,262,0,0,2912,2918,5,132,0,0,2913,2918,5,308,0,0,2914,2918,5,150,0,0,2915,2916,5,326,0,0,2916,2918,7,14,0,0,2917,2911,1,0,0,0,2917,2913,1,0,0,0,2917,2914,1,0,0,0,2917,2915,1,0,0,0,2918,215,1,0,0,0,2919,2920,5,229,0,0,2920,2921,5,2,0,0,2921,2922,3,1208,604,0,2922,2923,5,3,0,0,2923,2926,1,0,0,0,2924,2926,1,0,0,0,2925,2919,1,0,0,0,2925,2924,1,0,0,0,2926,217,1,0,0,0,2927,2930,3,220,110,0,2928,2930,1,0,0,0,2929,2927,1,0,0,0,2929,2928,1,0,0,0,2930,219,1,0,0,0,2931,2932,5,278,0,0,2932,2933,5,147,0,0,2933,2934,3,1264,632,0,2934,2935,5,2,0,0,2935,2936,3,222,111,0,2936,2937,5,3,0,0,2937,221,1,0,0,0,2938,2943,3,224,112,0,2939,2940,5,6,0,0,2940,2942,3,224,112,0,2941,2939,1,0,0,0,2942,2945,1,0,0,0,2943,2941,1,0,0,0,2943,2944,1,0,0,0,2944,223,1,0,0,0,2945,2943,1,0,0,0,2946,2947,3,1264,632,0,2947,2948,3,544,272,0,2948,2949,3,546,273,0,2949,2961,1,0,0,0,2950,2951,3,1090,545,0,2951,2952,3,544,272,0,2952,2953,3,546,273,0,2953,2961,1,0,0,0,2954,2955,5,2,0,0,2955,2956,3,1038,519,0,2956,2957,5,3,0,0,2957,2958,3,544,272,0,2958,2959,3,546,273,0,2959,2961,1,0,0,0,2960,2946,1,0,0,0,2960,2950,1,0,0,0,2960,2954,1,0,0,0,2961,225,1,0,0,0,2962,2963,5,100,0,0,2963,2966,3,1234,617,0,2964,2966,1,0,0,0,2965,2962,1,0,0,0,2965,2964,1,0,0,0,2966,227,1,0,0,0,2967,2968,5,105,0,0,2968,2973,3,108,54,0,2969,2970,5,372,0,0,2970,2973,5,270,0,0,2971,2973,1,0,0,0,2972,2967,1,0,0,0,2972,2969,1,0,0,0,2972,2971,1,0,0,0,2973,229,1,0,0,0,2974,2975,5,80,0,0,2975,2981,5,161,0,0,2976,2982,5,191,0,0,2977,2978,5,182,0,0,2978,2982,5,313,0,0,2979,2980,5,285,0,0,2980,2982,5,313,0,0,2981,2976,1,0,0,0,2981,2977,1,0,0,0,2981,2979,1,0,0,0,2982,2985,1,0,0,0,2983,2985,1,0,0,0,2984,2974,1,0,0,0,2984,2983,1,0,0,0,2985,231,1,0,0,0,2986,2987,5,344,0,0,2987,2990,3,1234,617,0,2988,2990,1,0,0,0,2989,2986,1,0,0,0,2989,2988,1,0,0,0,2990,233,1,0,0,0,2991,2992,5,100,0,0,2992,2993,5,226,0,0,2993,2994,5,344,0,0,2994,2997,3,1234,617,0,2995,2997,1,0,0,0,2996,2991,1,0,0,0,2996,2995,1,0,0,0,2997,235,1,0,0,0,2998,2999,5,100,0,0,2999,3e3,5,226,0,0,3e3,3001,3,1218,609,0,3001,237,1,0,0,0,3002,3003,5,46,0,0,3003,3007,5,335,0,0,3004,3005,5,220,0,0,3005,3006,5,77,0,0,3006,3008,5,389,0,0,3007,3004,1,0,0,0,3007,3008,1,0,0,0,3008,3009,1,0,0,0,3009,3010,3,470,235,0,3010,3011,3,776,388,0,3011,3012,5,80,0,0,3012,3013,3,1156,578,0,3013,3014,5,64,0,0,3014,3015,3,938,469,0,3015,239,1,0,0,0,3016,3017,5,138,0,0,3017,3020,5,335,0,0,3018,3019,5,220,0,0,3019,3021,5,389,0,0,3020,3018,1,0,0,0,3020,3021,1,0,0,0,3021,3022,1,0,0,0,3022,3023,3,470,235,0,3023,3024,5,326,0,0,3024,3025,5,335,0,0,3025,3026,3,1258,629,0,3026,241,1,0,0,0,3027,3028,5,46,0,0,3028,3029,3,154,77,0,3029,3033,5,92,0,0,3030,3031,5,220,0,0,3031,3032,5,77,0,0,3032,3034,5,389,0,0,3033,3030,1,0,0,0,3033,3034,1,0,0,0,3034,3035,1,0,0,0,3035,3036,3,244,122,0,3036,3037,5,36,0,0,3037,3038,3,858,429,0,3038,3039,3,246,123,0,3039,243,1,0,0,0,3040,3041,3,1230,615,0,3041,3042,3,192,96,0,3042,3043,3,226,113,0,3043,3044,3,228,114,0,3044,3045,3,230,115,0,3045,3046,3,232,116,0,3046,245,1,0,0,0,3047,3051,5,105,0,0,3048,3052,5,174,0,0,3049,3050,5,262,0,0,3050,3052,5,174,0,0,3051,3048,1,0,0,0,3051,3049,1,0,0,0,3052,3055,1,0,0,0,3053,3055,1,0,0,0,3054,3047,1,0,0,0,3054,3053,1,0,0,0,3055,247,1,0,0,0,3056,3058,5,46,0,0,3057,3059,5,360,0,0,3058,3057,1,0,0,0,3058,3059,1,0,0,0,3059,3060,1,0,0,0,3060,3061,5,251,0,0,3061,3065,5,369,0,0,3062,3063,5,220,0,0,3063,3064,5,77,0,0,3064,3066,5,389,0,0,3065,3062,1,0,0,0,3065,3066,1,0,0,0,3066,3067,1,0,0,0,3067,3068,3,250,125,0,3068,3069,5,36,0,0,3069,3070,3,858,429,0,3070,3071,3,246,123,0,3071,249,1,0,0,0,3072,3073,3,1230,615,0,3073,3074,3,192,96,0,3074,3075,3,226,113,0,3075,3076,3,110,55,0,3076,3077,3,232,116,0,3077,251,1,0,0,0,3078,3079,5,298,0,0,3079,3080,5,251,0,0,3080,3082,5,369,0,0,3081,3083,5,109,0,0,3082,3081,1,0,0,0,3082,3083,1,0,0,0,3083,3084,1,0,0,0,3084,3085,3,1230,615,0,3085,3086,3,246,123,0,3086,253,1,0,0,0,3087,3088,5,46,0,0,3088,3089,3,154,77,0,3089,3093,5,321,0,0,3090,3091,5,220,0,0,3091,3092,5,77,0,0,3092,3094,5,389,0,0,3093,3090,1,0,0,0,3093,3094,1,0,0,0,3094,3095,1,0,0,0,3095,3097,3,1230,615,0,3096,3098,3,260,130,0,3097,3096,1,0,0,0,3097,3098,1,0,0,0,3098,255,1,0,0,0,3099,3100,5,138,0,0,3100,3103,5,321,0,0,3101,3102,5,220,0,0,3102,3104,5,389,0,0,3103,3101,1,0,0,0,3103,3104,1,0,0,0,3104,3105,1,0,0,0,3105,3106,3,1226,613,0,3106,3107,3,260,130,0,3107,257,1,0,0,0,3108,3109,5,2,0,0,3109,3110,3,260,130,0,3110,3111,5,3,0,0,3111,3114,1,0,0,0,3112,3114,1,0,0,0,3113,3108,1,0,0,0,3113,3112,1,0,0,0,3114,259,1,0,0,0,3115,3117,3,262,131,0,3116,3115,1,0,0,0,3117,3118,1,0,0,0,3118,3116,1,0,0,0,3118,3119,1,0,0,0,3119,261,1,0,0,0,3120,3121,5,36,0,0,3121,3152,3,998,499,0,3122,3123,5,148,0,0,3123,3152,3,264,132,0,3124,3152,5,173,0,0,3125,3127,5,225,0,0,3126,3128,5,147,0,0,3127,3126,1,0,0,0,3127,3128,1,0,0,0,3128,3129,1,0,0,0,3129,3152,3,264,132,0,3130,3131,5,252,0,0,3131,3152,3,264,132,0,3132,3133,5,255,0,0,3133,3152,3,264,132,0,3134,3135,5,262,0,0,3135,3152,7,15,0,0,3136,3137,5,274,0,0,3137,3138,5,147,0,0,3138,3152,3,470,235,0,3139,3140,5,321,0,0,3140,3141,5,259,0,0,3141,3152,3,470,235,0,3142,3143,5,333,0,0,3143,3144,3,12,6,0,3144,3145,3,264,132,0,3145,3152,1,0,0,0,3146,3147,5,307,0,0,3147,3149,3,12,6,0,3148,3150,3,264,132,0,3149,3148,1,0,0,0,3149,3150,1,0,0,0,3150,3152,1,0,0,0,3151,3120,1,0,0,0,3151,3122,1,0,0,0,3151,3124,1,0,0,0,3151,3125,1,0,0,0,3151,3130,1,0,0,0,3151,3132,1,0,0,0,3151,3134,1,0,0,0,3151,3136,1,0,0,0,3151,3139,1,0,0,0,3151,3142,1,0,0,0,3151,3146,1,0,0,0,3152,263,1,0,0,0,3153,3160,3,1248,624,0,3154,3155,5,12,0,0,3155,3160,3,1248,624,0,3156,3157,5,13,0,0,3157,3160,3,1248,624,0,3158,3160,3,1258,629,0,3159,3153,1,0,0,0,3159,3154,1,0,0,0,3159,3156,1,0,0,0,3159,3158,1,0,0,0,3160,265,1,0,0,0,3161,3166,3,264,132,0,3162,3163,5,6,0,0,3163,3165,3,264,132,0,3164,3162,1,0,0,0,3165,3168,1,0,0,0,3166,3164,1,0,0,0,3166,3167,1,0,0,0,3167,267,1,0,0,0,3168,3166,1,0,0,0,3169,3170,5,46,0,0,3170,3172,3,554,277,0,3171,3173,5,352,0,0,3172,3171,1,0,0,0,3172,3173,1,0,0,0,3173,3174,1,0,0,0,3174,3175,3,276,138,0,3175,3176,5,238,0,0,3176,3183,3,1234,617,0,3177,3178,5,215,0,0,3178,3179,3,270,135,0,3179,3181,3,272,136,0,3180,3182,3,274,137,0,3181,3180,1,0,0,0,3181,3182,1,0,0,0,3182,3184,1,0,0,0,3183,3177,1,0,0,0,3183,3184,1,0,0,0,3184,269,1,0,0,0,3185,3187,3,1234,617,0,3186,3188,3,472,236,0,3187,3186,1,0,0,0,3187,3188,1,0,0,0,3188,271,1,0,0,0,3189,3190,5,230,0,0,3190,3193,3,270,135,0,3191,3193,1,0,0,0,3192,3189,1,0,0,0,3192,3191,1,0,0,0,3193,273,1,0,0,0,3194,3195,5,366,0,0,3195,3199,3,270,135,0,3196,3197,5,262,0,0,3197,3199,5,366,0,0,3198,3194,1,0,0,0,3198,3196,1,0,0,0,3199,275,1,0,0,0,3200,3203,5,288,0,0,3201,3203,1,0,0,0,3202,3200,1,0,0,0,3202,3201,1,0,0,0,3203,277,1,0,0,0,3204,3205,5,46,0,0,3205,3206,5,344,0,0,3206,3207,3,1234,617,0,3207,3208,3,280,140,0,3208,3209,5,246,0,0,3209,3210,3,1252,626,0,3210,3211,3,110,55,0,3211,279,1,0,0,0,3212,3213,5,275,0,0,3213,3216,3,1260,630,0,3214,3216,1,0,0,0,3215,3212,1,0,0,0,3215,3214,1,0,0,0,3216,281,1,0,0,0,3217,3218,5,191,0,0,3218,3221,5,344,0,0,3219,3220,5,220,0,0,3220,3222,5,389,0,0,3221,3219,1,0,0,0,3221,3222,1,0,0,0,3222,3223,1,0,0,0,3223,3224,3,1234,617,0,3224,283,1,0,0,0,3225,3226,5,46,0,0,3226,3230,5,204,0,0,3227,3228,5,220,0,0,3228,3229,5,77,0,0,3229,3231,5,389,0,0,3230,3227,1,0,0,0,3230,3231,1,0,0,0,3231,3232,1,0,0,0,3232,3233,3,1234,617,0,3233,3237,3,12,6,0,3234,3236,3,286,143,0,3235,3234,1,0,0,0,3236,3239,1,0,0,0,3237,3235,1,0,0,0,3237,3238,1,0,0,0,3238,285,1,0,0,0,3239,3237,1,0,0,0,3240,3241,5,316,0,0,3241,3248,3,1214,607,0,3242,3243,5,368,0,0,3243,3248,3,64,32,0,3244,3245,5,64,0,0,3245,3248,3,64,32,0,3246,3248,5,150,0,0,3247,3240,1,0,0,0,3247,3242,1,0,0,0,3247,3244,1,0,0,0,3247,3246,1,0,0,0,3248,287,1,0,0,0,3249,3250,5,138,0,0,3250,3251,5,204,0,0,3251,3252,3,1234,617,0,3252,3256,5,362,0,0,3253,3255,3,290,145,0,3254,3253,1,0,0,0,3255,3258,1,0,0,0,3256,3254,1,0,0,0,3256,3257,1,0,0,0,3257,289,1,0,0,0,3258,3256,1,0,0,0,3259,3260,5,94,0,0,3260,3261,3,64,32,0,3261,291,1,0,0,0,3262,3263,5,138,0,0,3263,3264,5,204,0,0,3264,3265,3,1234,617,0,3265,3266,3,32,16,0,3266,3267,3,462,231,0,3267,3268,3,1234,617,0,3268,3402,1,0,0,0,3269,3270,5,138,0,0,3270,3271,5,204,0,0,3271,3272,3,1234,617,0,3272,3273,3,32,16,0,3273,3274,5,311,0,0,3274,3275,3,1260,630,0,3275,3402,1,0,0,0,3276,3277,5,138,0,0,3277,3278,5,204,0,0,3278,3279,3,1234,617,0,3279,3280,3,32,16,0,3280,3281,5,175,0,0,3281,3282,3,1210,605,0,3282,3402,1,0,0,0,3283,3284,5,138,0,0,3284,3285,5,204,0,0,3285,3286,3,1234,617,0,3286,3287,3,32,16,0,3287,3288,5,316,0,0,3288,3289,3,1214,607,0,3289,3402,1,0,0,0,3290,3291,5,138,0,0,3291,3292,5,204,0,0,3292,3293,3,1234,617,0,3293,3294,3,32,16,0,3294,3295,5,226,0,0,3295,3296,3,1218,609,0,3296,3402,1,0,0,0,3297,3298,5,138,0,0,3298,3299,5,204,0,0,3299,3300,3,1234,617,0,3300,3301,3,32,16,0,3301,3302,3,460,230,0,3302,3303,3,470,235,0,3303,3402,1,0,0,0,3304,3305,5,138,0,0,3305,3306,5,204,0,0,3306,3307,3,1234,617,0,3307,3308,3,32,16,0,3308,3309,5,321,0,0,3309,3310,3,1226,613,0,3310,3402,1,0,0,0,3311,3312,5,138,0,0,3312,3313,5,204,0,0,3313,3314,3,1234,617,0,3314,3315,3,32,16,0,3315,3316,5,136,0,0,3316,3317,3,580,290,0,3317,3402,1,0,0,0,3318,3319,5,138,0,0,3319,3320,5,204,0,0,3320,3321,3,1234,617,0,3321,3322,3,32,16,0,3322,3323,5,41,0,0,3323,3324,5,2,0,0,3324,3325,3,996,498,0,3325,3326,5,36,0,0,3326,3327,3,996,498,0,3327,3328,5,3,0,0,3328,3402,1,0,0,0,3329,3330,5,138,0,0,3330,3331,5,204,0,0,3331,3332,3,1234,617,0,3332,3333,3,32,16,0,3333,3334,5,189,0,0,3334,3335,3,996,498,0,3335,3402,1,0,0,0,3336,3337,5,138,0,0,3337,3338,5,204,0,0,3338,3339,3,1234,617,0,3339,3340,3,32,16,0,3340,3341,5,211,0,0,3341,3342,3,560,280,0,3342,3402,1,0,0,0,3343,3344,5,138,0,0,3344,3345,5,204,0,0,3345,3346,3,1234,617,0,3346,3347,3,32,16,0,3347,3348,5,271,0,0,3348,3349,3,614,307,0,3349,3402,1,0,0,0,3350,3351,5,138,0,0,3351,3352,5,204,0,0,3352,3353,3,1234,617,0,3353,3354,3,32,16,0,3354,3355,5,271,0,0,3355,3356,5,156,0,0,3356,3357,3,470,235,0,3357,3358,5,100,0,0,3358,3359,3,1234,617,0,3359,3402,1,0,0,0,3360,3361,5,138,0,0,3361,3362,5,204,0,0,3362,3363,3,1234,617,0,3363,3364,3,32,16,0,3364,3365,5,271,0,0,3365,3366,5,206,0,0,3366,3367,3,470,235,0,3367,3368,5,100,0,0,3368,3369,3,1234,617,0,3369,3402,1,0,0,0,3370,3371,5,138,0,0,3371,3372,5,204,0,0,3372,3373,3,1234,617,0,3373,3374,3,32,16,0,3374,3375,5,289,0,0,3375,3376,3,560,280,0,3376,3402,1,0,0,0,3377,3378,5,138,0,0,3378,3379,5,204,0,0,3379,3380,3,1234,617,0,3380,3381,3,32,16,0,3381,3382,5,442,0,0,3382,3383,3,560,280,0,3383,3402,1,0,0,0,3384,3385,5,138,0,0,3385,3386,5,204,0,0,3386,3387,3,1234,617,0,3387,3388,3,32,16,0,3388,3389,5,443,0,0,3389,3390,5,62,0,0,3390,3391,3,996,498,0,3391,3392,5,238,0,0,3392,3393,3,1234,617,0,3393,3402,1,0,0,0,3394,3395,5,138,0,0,3395,3396,5,204,0,0,3396,3397,3,1234,617,0,3397,3398,3,32,16,0,3398,3399,5,353,0,0,3399,3400,3,996,498,0,3400,3402,1,0,0,0,3401,3262,1,0,0,0,3401,3269,1,0,0,0,3401,3276,1,0,0,0,3401,3283,1,0,0,0,3401,3290,1,0,0,0,3401,3297,1,0,0,0,3401,3304,1,0,0,0,3401,3311,1,0,0,0,3401,3318,1,0,0,0,3401,3329,1,0,0,0,3401,3336,1,0,0,0,3401,3343,1,0,0,0,3401,3350,1,0,0,0,3401,3360,1,0,0,0,3401,3370,1,0,0,0,3401,3377,1,0,0,0,3401,3384,1,0,0,0,3401,3394,1,0,0,0,3402,293,1,0,0,0,3403,3404,5,46,0,0,3404,3405,5,63,0,0,3405,3406,5,174,0,0,3406,3407,5,374,0,0,3407,3409,3,1234,617,0,3408,3410,3,298,149,0,3409,3408,1,0,0,0,3409,3410,1,0,0,0,3410,3411,1,0,0,0,3411,3412,3,302,151,0,3412,295,1,0,0,0,3413,3414,5,215,0,0,3414,3422,3,270,135,0,3415,3416,5,262,0,0,3416,3422,5,215,0,0,3417,3418,5,366,0,0,3418,3422,3,270,135,0,3419,3420,5,262,0,0,3420,3422,5,366,0,0,3421,3413,1,0,0,0,3421,3415,1,0,0,0,3421,3417,1,0,0,0,3421,3419,1,0,0,0,3422,297,1,0,0,0,3423,3425,3,296,148,0,3424,3423,1,0,0,0,3425,3426,1,0,0,0,3426,3424,1,0,0,0,3426,3427,1,0,0,0,3427,299,1,0,0,0,3428,3429,5,138,0,0,3429,3430,5,63,0,0,3430,3431,5,174,0,0,3431,3432,5,374,0,0,3432,3434,3,1234,617,0,3433,3435,3,298,149,0,3434,3433,1,0,0,0,3434,3435,1,0,0,0,3435,3436,1,0,0,0,3436,3437,3,306,153,0,3437,3446,1,0,0,0,3438,3439,5,138,0,0,3439,3440,5,63,0,0,3440,3441,5,174,0,0,3441,3442,5,374,0,0,3442,3443,3,1234,617,0,3443,3444,3,298,149,0,3444,3446,1,0,0,0,3445,3428,1,0,0,0,3445,3438,1,0,0,0,3446,301,1,0,0,0,3447,3448,5,273,0,0,3448,3449,5,2,0,0,3449,3450,3,304,152,0,3450,3451,5,3,0,0,3451,3454,1,0,0,0,3452,3454,1,0,0,0,3453,3447,1,0,0,0,3453,3452,1,0,0,0,3454,303,1,0,0,0,3455,3460,3,312,156,0,3456,3457,5,6,0,0,3457,3459,3,312,156,0,3458,3456,1,0,0,0,3459,3462,1,0,0,0,3460,3458,1,0,0,0,3460,3461,1,0,0,0,3461,305,1,0,0,0,3462,3460,1,0,0,0,3463,3464,5,273,0,0,3464,3465,5,2,0,0,3465,3466,3,308,154,0,3466,3467,5,3,0,0,3467,307,1,0,0,0,3468,3473,3,310,155,0,3469,3470,5,6,0,0,3470,3472,3,310,155,0,3471,3469,1,0,0,0,3472,3475,1,0,0,0,3473,3471,1,0,0,0,3473,3474,1,0,0,0,3474,309,1,0,0,0,3475,3473,1,0,0,0,3476,3484,3,312,156,0,3477,3478,5,326,0,0,3478,3484,3,312,156,0,3479,3480,5,133,0,0,3480,3484,3,312,156,0,3481,3482,5,191,0,0,3482,3484,3,314,157,0,3483,3476,1,0,0,0,3483,3477,1,0,0,0,3483,3479,1,0,0,0,3483,3481,1,0,0,0,3484,311,1,0,0,0,3485,3486,3,314,157,0,3486,3487,3,316,158,0,3487,313,1,0,0,0,3488,3489,3,1272,636,0,3489,315,1,0,0,0,3490,3491,3,1252,626,0,3491,317,1,0,0,0,3492,3493,5,46,0,0,3493,3494,5,324,0,0,3494,3495,3,1234,617,0,3495,3497,3,320,160,0,3496,3498,3,322,161,0,3497,3496,1,0,0,0,3497,3498,1,0,0,0,3498,3499,1,0,0,0,3499,3500,5,63,0,0,3500,3501,5,174,0,0,3501,3502,5,374,0,0,3502,3503,3,1234,617,0,3503,3504,3,302,151,0,3504,3522,1,0,0,0,3505,3506,5,46,0,0,3506,3507,5,324,0,0,3507,3508,5,220,0,0,3508,3509,5,77,0,0,3509,3510,5,389,0,0,3510,3511,3,1234,617,0,3511,3513,3,320,160,0,3512,3514,3,322,161,0,3513,3512,1,0,0,0,3513,3514,1,0,0,0,3514,3515,1,0,0,0,3515,3516,5,63,0,0,3516,3517,5,174,0,0,3517,3518,5,374,0,0,3518,3519,3,1234,617,0,3519,3520,3,302,151,0,3520,3522,1,0,0,0,3521,3492,1,0,0,0,3521,3505,1,0,0,0,3522,319,1,0,0,0,3523,3524,5,353,0,0,3524,3527,3,1252,626,0,3525,3527,1,0,0,0,3526,3523,1,0,0,0,3526,3525,1,0,0,0,3527,321,1,0,0,0,3528,3531,5,368,0,0,3529,3532,3,1252,626,0,3530,3532,5,78,0,0,3531,3529,1,0,0,0,3531,3530,1,0,0,0,3532,323,1,0,0,0,3533,3534,5,138,0,0,3534,3535,5,324,0,0,3535,3541,3,1234,617,0,3536,3542,3,306,153,0,3537,3539,3,322,161,0,3538,3540,3,306,153,0,3539,3538,1,0,0,0,3539,3540,1,0,0,0,3540,3542,1,0,0,0,3541,3536,1,0,0,0,3541,3537,1,0,0,0,3542,325,1,0,0,0,3543,3544,5,46,0,0,3544,3545,5,63,0,0,3545,3546,5,92,0,0,3546,3547,3,1230,615,0,3547,3548,5,2,0,0,3548,3549,3,156,78,0,3549,3550,5,3,0,0,3550,3551,3,216,108,0,3551,3552,5,324,0,0,3552,3553,3,1234,617,0,3553,3554,3,302,151,0,3554,3600,1,0,0,0,3555,3556,5,46,0,0,3556,3557,5,63,0,0,3557,3558,5,92,0,0,3558,3559,5,220,0,0,3559,3560,5,77,0,0,3560,3561,5,389,0,0,3561,3562,3,1230,615,0,3562,3563,5,2,0,0,3563,3564,3,156,78,0,3564,3565,5,3,0,0,3565,3566,3,216,108,0,3566,3567,5,324,0,0,3567,3568,3,1234,617,0,3568,3569,3,302,151,0,3569,3600,1,0,0,0,3570,3571,5,46,0,0,3571,3572,5,63,0,0,3572,3573,5,92,0,0,3573,3574,3,1230,615,0,3574,3575,5,278,0,0,3575,3576,5,268,0,0,3576,3577,3,1230,615,0,3577,3578,3,158,79,0,3578,3579,3,120,60,0,3579,3580,5,324,0,0,3580,3581,3,1234,617,0,3581,3582,3,302,151,0,3582,3600,1,0,0,0,3583,3584,5,46,0,0,3584,3585,5,63,0,0,3585,3586,5,92,0,0,3586,3587,5,220,0,0,3587,3588,5,77,0,0,3588,3589,5,389,0,0,3589,3590,3,1230,615,0,3590,3591,5,278,0,0,3591,3592,5,268,0,0,3592,3593,3,1230,615,0,3593,3594,3,158,79,0,3594,3595,3,120,60,0,3595,3596,5,324,0,0,3596,3597,3,1234,617,0,3597,3598,3,302,151,0,3598,3600,1,0,0,0,3599,3543,1,0,0,0,3599,3555,1,0,0,0,3599,3570,1,0,0,0,3599,3583,1,0,0,0,3600,327,1,0,0,0,3601,3602,5,444,0,0,3602,3603,5,63,0,0,3603,3604,5,316,0,0,3604,3605,3,1234,617,0,3605,3606,3,332,166,0,3606,3607,5,64,0,0,3607,3608,5,324,0,0,3608,3609,3,1234,617,0,3609,3610,5,71,0,0,3610,3611,3,1234,617,0,3611,3612,3,302,151,0,3612,329,1,0,0,0,3613,3614,5,74,0,0,3614,3617,5,94,0,0,3615,3617,5,59,0,0,3616,3613,1,0,0,0,3616,3615,1,0,0,0,3617,331,1,0,0,0,3618,3619,3,330,165,0,3619,3620,5,2,0,0,3620,3621,3,960,480,0,3621,3622,5,3,0,0,3622,3625,1,0,0,0,3623,3625,1,0,0,0,3624,3618,1,0,0,0,3624,3623,1,0,0,0,3625,333,1,0,0,0,3626,3627,5,46,0,0,3627,3628,5,99,0,0,3628,3629,5,248,0,0,3629,3630,5,62,0,0,3630,3631,3,336,168,0,3631,3632,5,324,0,0,3632,3633,3,1234,617,0,3633,3634,3,302,151,0,3634,3648,1,0,0,0,3635,3636,5,46,0,0,3636,3637,5,99,0,0,3637,3638,5,248,0,0,3638,3639,5,220,0,0,3639,3640,5,77,0,0,3640,3641,5,389,0,0,3641,3642,5,62,0,0,3642,3643,3,336,168,0,3643,3644,5,324,0,0,3644,3645,3,1234,617,0,3645,3646,3,302,151,0,3646,3648,1,0,0,0,3647,3626,1,0,0,0,3647,3635,1,0,0,0,3648,335,1,0,0,0,3649,3652,3,1260,630,0,3650,3652,5,99,0,0,3651,3649,1,0,0,0,3651,3650,1,0,0,0,3652,337,1,0,0,0,3653,3654,5,191,0,0,3654,3655,5,99,0,0,3655,3656,5,248,0,0,3656,3657,5,62,0,0,3657,3658,3,336,168,0,3658,3659,5,324,0,0,3659,3660,3,1234,617,0,3660,3672,1,0,0,0,3661,3662,5,191,0,0,3662,3663,5,99,0,0,3663,3664,5,248,0,0,3664,3665,5,220,0,0,3665,3666,5,389,0,0,3666,3667,5,62,0,0,3667,3668,3,336,168,0,3668,3669,5,324,0,0,3669,3670,3,1234,617,0,3670,3672,1,0,0,0,3671,3653,1,0,0,0,3671,3661,1,0,0,0,3672,339,1,0,0,0,3673,3674,5,138,0,0,3674,3675,5,99,0,0,3675,3676,5,248,0,0,3676,3677,5,62,0,0,3677,3678,3,336,168,0,3678,3679,5,324,0,0,3679,3680,3,1234,617,0,3680,3681,3,306,153,0,3681,341,1,0,0,0,3682,3683,5,46,0,0,3683,3684,5,445,0,0,3684,3685,3,1234,617,0,3685,3686,5,80,0,0,3686,3687,3,1230,615,0,3687,3688,3,352,176,0,3688,3689,3,354,177,0,3689,3690,3,350,175,0,3690,3691,3,346,173,0,3691,3692,3,348,174,0,3692,343,1,0,0,0,3693,3694,5,138,0,0,3694,3695,5,445,0,0,3695,3696,3,1234,617,0,3696,3697,5,80,0,0,3697,3698,3,1230,615,0,3698,3699,3,350,175,0,3699,3700,3,346,173,0,3700,3701,3,348,174,0,3701,345,1,0,0,0,3702,3703,5,100,0,0,3703,3704,5,2,0,0,3704,3705,3,1038,519,0,3705,3706,5,3,0,0,3706,3709,1,0,0,0,3707,3709,1,0,0,0,3708,3702,1,0,0,0,3708,3707,1,0,0,0,3709,347,1,0,0,0,3710,3711,5,105,0,0,3711,3712,5,42,0,0,3712,3713,5,2,0,0,3713,3714,3,1038,519,0,3714,3715,5,3,0,0,3715,3718,1,0,0,0,3716,3718,1,0,0,0,3717,3710,1,0,0,0,3717,3716,1,0,0,0,3718,349,1,0,0,0,3719,3720,5,94,0,0,3720,3723,3,1262,631,0,3721,3723,1,0,0,0,3722,3719,1,0,0,0,3722,3721,1,0,0,0,3723,351,1,0,0,0,3724,3725,5,36,0,0,3725,3728,3,1274,637,0,3726,3728,1,0,0,0,3727,3724,1,0,0,0,3727,3726,1,0,0,0,3728,353,1,0,0,0,3729,3730,5,62,0,0,3730,3733,3,356,178,0,3731,3733,1,0,0,0,3732,3729,1,0,0,0,3732,3731,1,0,0,0,3733,355,1,0,0,0,3734,3735,7,16,0,0,3735,357,1,0,0,0,3736,3737,5,46,0,0,3737,3738,5,131,0,0,3738,3739,5,446,0,0,3739,3740,3,1234,617,0,3740,3741,5,353,0,0,3741,3742,3,360,180,0,3742,3743,5,215,0,0,3743,3744,3,270,135,0,3744,359,1,0,0,0,3745,3746,7,17,0,0,3746,361,1,0,0,0,3747,3748,5,46,0,0,3748,3749,5,350,0,0,3749,3750,3,1234,617,0,3750,3751,3,364,182,0,3751,3752,3,366,183,0,3752,3753,5,80,0,0,3753,3754,3,1230,615,0,3754,3755,3,370,185,0,3755,3756,3,382,191,0,3756,3757,3,386,193,0,3757,3758,5,202,0,0,3758,3759,3,388,194,0,3759,3760,3,1240,620,0,3760,3761,5,2,0,0,3761,3762,3,390,195,0,3762,3763,5,3,0,0,3763,3786,1,0,0,0,3764,3765,5,46,0,0,3765,3766,5,45,0,0,3766,3767,5,350,0,0,3767,3768,3,1234,617,0,3768,3769,5,135,0,0,3769,3770,3,366,183,0,3770,3771,5,80,0,0,3771,3772,3,1230,615,0,3772,3773,3,394,197,0,3773,3774,3,396,198,0,3774,3775,5,62,0,0,3775,3776,5,192,0,0,3776,3777,5,407,0,0,3777,3778,3,386,193,0,3778,3779,5,202,0,0,3779,3780,3,388,194,0,3780,3781,3,1240,620,0,3781,3782,5,2,0,0,3782,3783,3,390,195,0,3783,3784,5,3,0,0,3784,3786,1,0,0,0,3785,3747,1,0,0,0,3785,3764,1,0,0,0,3786,363,1,0,0,0,3787,3792,5,145,0,0,3788,3792,5,135,0,0,3789,3790,5,233,0,0,3790,3792,5,268,0,0,3791,3787,1,0,0,0,3791,3788,1,0,0,0,3791,3789,1,0,0,0,3792,365,1,0,0,0,3793,3798,3,368,184,0,3794,3795,5,82,0,0,3795,3797,3,368,184,0,3796,3794,1,0,0,0,3797,3800,1,0,0,0,3798,3796,1,0,0,0,3798,3799,1,0,0,0,3799,367,1,0,0,0,3800,3798,1,0,0,0,3801,3809,5,232,0,0,3802,3809,5,182,0,0,3803,3809,5,362,0,0,3804,3805,5,362,0,0,3805,3806,5,268,0,0,3806,3809,3,194,97,0,3807,3809,5,351,0,0,3808,3801,1,0,0,0,3808,3802,1,0,0,0,3808,3803,1,0,0,0,3808,3804,1,0,0,0,3808,3807,1,0,0,0,3809,369,1,0,0,0,3810,3811,5,447,0,0,3811,3814,3,372,186,0,3812,3814,1,0,0,0,3813,3810,1,0,0,0,3813,3812,1,0,0,0,3814,371,1,0,0,0,3815,3817,3,374,187,0,3816,3815,1,0,0,0,3817,3818,1,0,0,0,3818,3816,1,0,0,0,3818,3819,1,0,0,0,3819,373,1,0,0,0,3820,3821,3,376,188,0,3821,3822,3,378,189,0,3822,3823,3,748,374,0,3823,3824,3,380,190,0,3824,375,1,0,0,0,3825,3826,7,18,0,0,3826,377,1,0,0,0,3827,3828,7,19,0,0,3828,379,1,0,0,0,3829,3830,3,1264,632,0,3830,381,1,0,0,0,3831,3833,5,62,0,0,3832,3834,5,192,0,0,3833,3832,1,0,0,0,3833,3834,1,0,0,0,3834,3835,1,0,0,0,3835,3838,3,384,192,0,3836,3838,1,0,0,0,3837,3831,1,0,0,0,3837,3836,1,0,0,0,3838,383,1,0,0,0,3839,3840,7,20,0,0,3840,385,1,0,0,0,3841,3842,5,102,0,0,3842,3843,5,2,0,0,3843,3844,3,1038,519,0,3844,3845,5,3,0,0,3845,3848,1,0,0,0,3846,3848,1,0,0,0,3847,3841,1,0,0,0,3847,3846,1,0,0,0,3848,387,1,0,0,0,3849,3850,7,21,0,0,3850,389,1,0,0,0,3851,3854,3,392,196,0,3852,3854,1,0,0,0,3853,3851,1,0,0,0,3853,3852,1,0,0,0,3854,3859,1,0,0,0,3855,3856,5,6,0,0,3856,3858,3,392,196,0,3857,3855,1,0,0,0,3858,3861,1,0,0,0,3859,3857,1,0,0,0,3859,3860,1,0,0,0,3860,391,1,0,0,0,3861,3859,1,0,0,0,3862,3867,3,1250,625,0,3863,3867,3,1248,624,0,3864,3867,3,1252,626,0,3865,3867,3,1272,636,0,3866,3862,1,0,0,0,3866,3863,1,0,0,0,3866,3864,1,0,0,0,3866,3865,1,0,0,0,3867,393,1,0,0,0,3868,3869,5,64,0,0,3869,3872,3,1230,615,0,3870,3872,1,0,0,0,3871,3868,1,0,0,0,3871,3870,1,0,0,0,3872,395,1,0,0,0,3873,3875,3,398,199,0,3874,3873,1,0,0,0,3875,3878,1,0,0,0,3876,3874,1,0,0,0,3876,3877,1,0,0,0,3877,397,1,0,0,0,3878,3876,1,0,0,0,3879,3880,5,77,0,0,3880,3891,5,54,0,0,3881,3891,5,54,0,0,3882,3883,5,69,0,0,3883,3891,5,221,0,0,3884,3885,5,69,0,0,3885,3891,5,180,0,0,3886,3887,5,77,0,0,3887,3891,5,364,0,0,3888,3889,5,262,0,0,3889,3891,5,228,0,0,3890,3879,1,0,0,0,3890,3881,1,0,0,0,3890,3882,1,0,0,0,3890,3884,1,0,0,0,3890,3886,1,0,0,0,3890,3888,1,0,0,0,3891,399,1,0,0,0,3892,3893,5,46,0,0,3893,3894,5,198,0,0,3894,3895,5,350,0,0,3895,3896,3,1234,617,0,3896,3897,5,80,0,0,3897,3898,3,1272,636,0,3898,3899,5,202,0,0,3899,3900,3,388,194,0,3900,3901,3,1240,620,0,3901,3902,5,2,0,0,3902,3903,5,3,0,0,3903,3919,1,0,0,0,3904,3905,5,46,0,0,3905,3906,5,198,0,0,3906,3907,5,350,0,0,3907,3908,3,1234,617,0,3908,3909,5,80,0,0,3909,3910,3,1272,636,0,3910,3911,5,102,0,0,3911,3912,3,402,201,0,3912,3913,5,202,0,0,3913,3914,3,388,194,0,3914,3915,3,1240,620,0,3915,3916,5,2,0,0,3916,3917,5,3,0,0,3917,3919,1,0,0,0,3918,3892,1,0,0,0,3918,3904,1,0,0,0,3919,401,1,0,0,0,3920,3925,3,404,202,0,3921,3922,5,33,0,0,3922,3924,3,404,202,0,3923,3921,1,0,0,0,3924,3927,1,0,0,0,3925,3923,1,0,0,0,3925,3926,1,0,0,0,3926,403,1,0,0,0,3927,3925,1,0,0,0,3928,3929,3,1264,632,0,3929,3930,5,68,0,0,3930,3931,5,2,0,0,3931,3932,3,406,203,0,3932,3933,5,3,0,0,3933,405,1,0,0,0,3934,3939,3,1252,626,0,3935,3936,5,6,0,0,3936,3938,3,1252,626,0,3937,3935,1,0,0,0,3938,3941,1,0,0,0,3939,3937,1,0,0,0,3939,3940,1,0,0,0,3940,407,1,0,0,0,3941,3939,1,0,0,0,3942,3943,5,138,0,0,3943,3944,5,198,0,0,3944,3945,5,350,0,0,3945,3946,3,1234,617,0,3946,3947,3,410,205,0,3947,409,1,0,0,0,3948,3955,5,193,0,0,3949,3950,5,193,0,0,3950,3955,5,305,0,0,3951,3952,5,193,0,0,3952,3955,5,139,0,0,3953,3955,5,186,0,0,3954,3948,1,0,0,0,3954,3949,1,0,0,0,3954,3951,1,0,0,0,3954,3953,1,0,0,0,3955,411,1,0,0,0,3956,3957,5,46,0,0,3957,3958,5,140,0,0,3958,3959,3,470,235,0,3959,3960,5,42,0,0,3960,3961,5,2,0,0,3961,3962,3,1038,519,0,3962,3963,5,3,0,0,3963,3964,3,396,198,0,3964,413,1,0,0,0,3965,3966,5,46,0,0,3966,3967,3,554,277,0,3967,3968,5,136,0,0,3968,3969,3,1240,620,0,3969,3970,3,576,288,0,3970,3971,3,416,208,0,3971,4074,1,0,0,0,3972,3973,5,46,0,0,3973,3974,3,554,277,0,3974,3975,5,136,0,0,3975,3976,3,1240,620,0,3976,3977,3,422,211,0,3977,4074,1,0,0,0,3978,3979,5,46,0,0,3979,3980,5,271,0,0,3980,3981,3,610,305,0,3981,3982,3,416,208,0,3982,4074,1,0,0,0,3983,3984,5,46,0,0,3984,3985,5,353,0,0,3985,3986,3,470,235,0,3986,3987,3,416,208,0,3987,4074,1,0,0,0,3988,3989,5,46,0,0,3989,3990,5,353,0,0,3990,4074,3,470,235,0,3991,3992,5,46,0,0,3992,3993,5,353,0,0,3993,3994,3,470,235,0,3994,3995,5,36,0,0,3995,3996,5,2,0,0,3996,3997,3,978,489,0,3997,3998,5,3,0,0,3998,4074,1,0,0,0,3999,4e3,5,46,0,0,4e3,4001,5,353,0,0,4001,4002,3,470,235,0,4002,4003,5,36,0,0,4003,4004,5,196,0,0,4004,4006,5,2,0,0,4005,4007,3,426,213,0,4006,4005,1,0,0,0,4006,4007,1,0,0,0,4007,4008,1,0,0,0,4008,4009,5,3,0,0,4009,4074,1,0,0,0,4010,4011,5,46,0,0,4011,4012,5,353,0,0,4012,4013,3,470,235,0,4013,4014,5,36,0,0,4014,4015,5,292,0,0,4015,4016,3,416,208,0,4016,4074,1,0,0,0,4017,4018,5,46,0,0,4018,4019,5,348,0,0,4019,4020,5,318,0,0,4020,4021,5,276,0,0,4021,4022,3,470,235,0,4022,4023,3,416,208,0,4023,4074,1,0,0,0,4024,4025,5,46,0,0,4025,4026,5,348,0,0,4026,4027,5,318,0,0,4027,4028,5,185,0,0,4028,4029,3,470,235,0,4029,4030,3,416,208,0,4030,4074,1,0,0,0,4031,4032,5,46,0,0,4032,4033,5,348,0,0,4033,4034,5,318,0,0,4034,4035,5,346,0,0,4035,4036,3,470,235,0,4036,4037,3,416,208,0,4037,4074,1,0,0,0,4038,4039,5,46,0,0,4039,4040,5,348,0,0,4040,4041,5,318,0,0,4041,4042,5,163,0,0,4042,4043,3,470,235,0,4043,4044,3,416,208,0,4044,4074,1,0,0,0,4045,4046,5,46,0,0,4046,4047,5,108,0,0,4047,4048,3,470,235,0,4048,4049,3,416,208,0,4049,4074,1,0,0,0,4050,4051,5,46,0,0,4051,4052,5,108,0,0,4052,4053,5,220,0,0,4053,4054,5,77,0,0,4054,4055,5,389,0,0,4055,4056,3,470,235,0,4056,4057,3,416,208,0,4057,4074,1,0,0,0,4058,4059,5,46,0,0,4059,4060,5,108,0,0,4060,4061,3,470,235,0,4061,4062,5,64,0,0,4062,4063,3,470,235,0,4063,4074,1,0,0,0,4064,4065,5,46,0,0,4065,4066,5,108,0,0,4066,4067,5,220,0,0,4067,4068,5,77,0,0,4068,4069,5,389,0,0,4069,4070,3,470,235,0,4070,4071,5,64,0,0,4071,4072,3,470,235,0,4072,4074,1,0,0,0,4073,3965,1,0,0,0,4073,3972,1,0,0,0,4073,3978,1,0,0,0,4073,3983,1,0,0,0,4073,3988,1,0,0,0,4073,3991,1,0,0,0,4073,3999,1,0,0,0,4073,4010,1,0,0,0,4073,4017,1,0,0,0,4073,4024,1,0,0,0,4073,4031,1,0,0,0,4073,4038,1,0,0,0,4073,4045,1,0,0,0,4073,4050,1,0,0,0,4073,4058,1,0,0,0,4073,4064,1,0,0,0,4074,415,1,0,0,0,4075,4076,5,2,0,0,4076,4081,3,418,209,0,4077,4078,5,6,0,0,4078,4080,3,418,209,0,4079,4077,1,0,0,0,4080,4083,1,0,0,0,4081,4079,1,0,0,0,4081,4082,1,0,0,0,4082,4084,1,0,0,0,4083,4081,1,0,0,0,4084,4085,5,3,0,0,4085,417,1,0,0,0,4086,4089,3,1272,636,0,4087,4088,5,10,0,0,4088,4090,3,420,210,0,4089,4087,1,0,0,0,4089,4090,1,0,0,0,4090,419,1,0,0,0,4091,4098,3,574,287,0,4092,4098,3,1284,642,0,4093,4098,3,1152,576,0,4094,4098,3,264,132,0,4095,4098,3,1252,626,0,4096,4098,5,400,0,0,4097,4091,1,0,0,0,4097,4092,1,0,0,0,4097,4093,1,0,0,0,4097,4094,1,0,0,0,4097,4095,1,0,0,0,4097,4096,1,0,0,0,4098,421,1,0,0,0,4099,4100,5,2,0,0,4100,4105,3,424,212,0,4101,4102,5,6,0,0,4102,4104,3,424,212,0,4103,4101,1,0,0,0,4104,4107,1,0,0,0,4105,4103,1,0,0,0,4105,4106,1,0,0,0,4106,4108,1,0,0,0,4107,4105,1,0,0,0,4108,4109,5,3,0,0,4109,423,1,0,0,0,4110,4111,3,1274,637,0,4111,4112,5,10,0,0,4112,4113,3,420,210,0,4113,425,1,0,0,0,4114,4119,3,1252,626,0,4115,4116,5,6,0,0,4116,4118,3,1252,626,0,4117,4115,1,0,0,0,4118,4121,1,0,0,0,4119,4117,1,0,0,0,4119,4120,1,0,0,0,4120,427,1,0,0,0,4121,4119,1,0,0,0,4122,4123,5,138,0,0,4123,4124,5,353,0,0,4124,4125,3,470,235,0,4125,4126,5,133,0,0,4126,4127,5,450,0,0,4127,4128,3,430,215,0,4128,4129,3,1252,626,0,4129,4160,1,0,0,0,4130,4131,5,138,0,0,4131,4132,5,353,0,0,4132,4133,3,470,235,0,4133,4134,5,133,0,0,4134,4135,5,450,0,0,4135,4136,3,430,215,0,4136,4137,3,1252,626,0,4137,4138,5,145,0,0,4138,4139,3,1252,626,0,4139,4160,1,0,0,0,4140,4141,5,138,0,0,4141,4142,5,353,0,0,4142,4143,3,470,235,0,4143,4144,5,133,0,0,4144,4145,5,450,0,0,4145,4146,3,430,215,0,4146,4147,3,1252,626,0,4147,4148,5,135,0,0,4148,4149,3,1252,626,0,4149,4160,1,0,0,0,4150,4151,5,138,0,0,4151,4152,5,353,0,0,4152,4153,3,470,235,0,4153,4154,5,302,0,0,4154,4155,5,450,0,0,4155,4156,3,1252,626,0,4156,4157,5,94,0,0,4157,4158,3,1252,626,0,4158,4160,1,0,0,0,4159,4122,1,0,0,0,4159,4130,1,0,0,0,4159,4140,1,0,0,0,4159,4150,1,0,0,0,4160,429,1,0,0,0,4161,4162,5,220,0,0,4162,4163,5,77,0,0,4163,4166,5,389,0,0,4164,4166,1,0,0,0,4165,4161,1,0,0,0,4165,4164,1,0,0,0,4166,431,1,0,0,0,4167,4168,5,46,0,0,4168,4169,5,271,0,0,4169,4170,5,156,0,0,4170,4172,3,470,235,0,4171,4173,5,53,0,0,4172,4171,1,0,0,0,4172,4173,1,0,0,0,4173,4174,1,0,0,0,4174,4175,5,62,0,0,4175,4176,5,353,0,0,4176,4177,3,996,498,0,4177,4178,5,100,0,0,4178,4179,3,1234,617,0,4179,4180,3,438,219,0,4180,4181,5,36,0,0,4181,4182,3,434,217,0,4182,433,1,0,0,0,4183,4188,3,436,218,0,4184,4185,5,6,0,0,4185,4187,3,436,218,0,4186,4184,1,0,0,0,4187,4190,1,0,0,0,4188,4186,1,0,0,0,4188,4189,1,0,0,0,4189,435,1,0,0,0,4190,4188,1,0,0,0,4191,4192,5,271,0,0,4192,4193,3,1250,625,0,4193,4194,3,610,305,0,4194,4196,3,440,220,0,4195,4197,5,295,0,0,4196,4195,1,0,0,0,4196,4197,1,0,0,0,4197,4219,1,0,0,0,4198,4199,5,271,0,0,4199,4200,3,1250,625,0,4200,4201,3,614,307,0,4201,4203,3,440,220,0,4202,4204,5,295,0,0,4203,4202,1,0,0,0,4203,4204,1,0,0,0,4204,4219,1,0,0,0,4205,4206,5,211,0,0,4206,4207,3,1250,625,0,4207,4208,3,560,280,0,4208,4219,1,0,0,0,4209,4210,5,211,0,0,4210,4211,3,1250,625,0,4211,4212,5,2,0,0,4212,4213,3,1162,581,0,4213,4214,5,3,0,0,4214,4215,3,560,280,0,4215,4219,1,0,0,0,4216,4217,5,338,0,0,4217,4219,3,996,498,0,4218,4191,1,0,0,0,4218,4198,1,0,0,0,4218,4205,1,0,0,0,4218,4209,1,0,0,0,4218,4216,1,0,0,0,4219,437,1,0,0,0,4220,4221,5,206,0,0,4221,4224,3,470,235,0,4222,4224,1,0,0,0,4223,4220,1,0,0,0,4223,4222,1,0,0,0,4224,439,1,0,0,0,4225,4226,5,62,0,0,4226,4233,5,318,0,0,4227,4228,5,62,0,0,4228,4229,5,83,0,0,4229,4230,5,147,0,0,4230,4233,3,470,235,0,4231,4233,1,0,0,0,4232,4225,1,0,0,0,4232,4227,1,0,0,0,4232,4231,1,0,0,0,4233,441,1,0,0,0,4234,4235,5,46,0,0,4235,4236,5,271,0,0,4236,4237,5,206,0,0,4237,4238,3,470,235,0,4238,4239,5,100,0,0,4239,4240,3,1234,617,0,4240,443,1,0,0,0,4241,4242,5,138,0,0,4242,4243,5,271,0,0,4243,4244,5,206,0,0,4244,4245,3,470,235,0,4245,4246,5,100,0,0,4246,4247,3,1234,617,0,4247,4248,5,133,0,0,4248,4249,3,434,217,0,4249,4260,1,0,0,0,4250,4251,5,138,0,0,4251,4252,5,271,0,0,4252,4253,5,206,0,0,4253,4254,3,470,235,0,4254,4255,5,100,0,0,4255,4256,3,1234,617,0,4256,4257,5,191,0,0,4257,4258,3,446,223,0,4258,4260,1,0,0,0,4259,4241,1,0,0,0,4259,4250,1,0,0,0,4260,445,1,0,0,0,4261,4266,3,448,224,0,4262,4263,5,6,0,0,4263,4265,3,448,224,0,4264,4262,1,0,0,0,4265,4268,1,0,0,0,4266,4264,1,0,0,0,4266,4267,1,0,0,0,4267,447,1,0,0,0,4268,4266,1,0,0,0,4269,4270,5,271,0,0,4270,4271,3,1250,625,0,4271,4272,5,2,0,0,4272,4273,3,1162,581,0,4273,4274,5,3,0,0,4274,4282,1,0,0,0,4275,4276,5,211,0,0,4276,4277,3,1250,625,0,4277,4278,5,2,0,0,4278,4279,3,1162,581,0,4279,4280,5,3,0,0,4280,4282,1,0,0,0,4281,4269,1,0,0,0,4281,4275,1,0,0,0,4282,449,1,0,0,0,4283,4284,5,191,0,0,4284,4285,5,271,0,0,4285,4286,5,156,0,0,4286,4287,3,470,235,0,4287,4288,5,100,0,0,4288,4289,3,1234,617,0,4289,4290,3,100,50,0,4290,4302,1,0,0,0,4291,4292,5,191,0,0,4292,4293,5,271,0,0,4293,4294,5,156,0,0,4294,4295,5,220,0,0,4295,4296,5,389,0,0,4296,4297,3,470,235,0,4297,4298,5,100,0,0,4298,4299,3,1234,617,0,4299,4300,3,100,50,0,4300,4302,1,0,0,0,4301,4283,1,0,0,0,4301,4291,1,0,0,0,4302,451,1,0,0,0,4303,4304,5,191,0,0,4304,4305,5,271,0,0,4305,4306,5,206,0,0,4306,4307,3,470,235,0,4307,4308,5,100,0,0,4308,4309,3,1234,617,0,4309,4310,3,100,50,0,4310,4322,1,0,0,0,4311,4312,5,191,0,0,4312,4313,5,271,0,0,4313,4314,5,206,0,0,4314,4315,5,220,0,0,4315,4316,5,389,0,0,4316,4317,3,470,235,0,4317,4318,5,100,0,0,4318,4319,3,1234,617,0,4319,4320,3,100,50,0,4320,4322,1,0,0,0,4321,4303,1,0,0,0,4321,4311,1,0,0,0,4322,453,1,0,0,0,4323,4324,5,191,0,0,4324,4325,5,274,0,0,4325,4326,5,147,0,0,4326,4327,3,1262,631,0,4327,4328,3,100,50,0,4328,455,1,0,0,0,4329,4330,5,294,0,0,4330,4331,5,274,0,0,4331,4332,5,147,0,0,4332,4333,3,1262,631,0,4333,4334,5,94,0,0,4334,4335,3,1260,630,0,4335,457,1,0,0,0,4336,4337,5,191,0,0,4337,4340,3,460,230,0,4338,4339,5,220,0,0,4339,4341,5,389,0,0,4340,4338,1,0,0,0,4340,4341,1,0,0,0,4341,4342,1,0,0,0,4342,4343,3,468,234,0,4343,4344,3,100,50,0,4344,4442,1,0,0,0,4345,4346,5,191,0,0,4346,4349,5,321,0,0,4347,4348,5,220,0,0,4348,4350,5,389,0,0,4349,4347,1,0,0,0,4349,4350,1,0,0,0,4350,4351,1,0,0,0,4351,4352,3,1228,614,0,4352,4353,3,100,50,0,4353,4442,1,0,0,0,4354,4355,5,191,0,0,4355,4358,5,226,0,0,4356,4357,5,220,0,0,4357,4359,5,389,0,0,4358,4356,1,0,0,0,4358,4359,1,0,0,0,4359,4360,1,0,0,0,4360,4361,3,1220,610,0,4361,4362,3,100,50,0,4362,4442,1,0,0,0,4363,4364,5,191,0,0,4364,4367,5,316,0,0,4365,4366,5,220,0,0,4366,4368,5,389,0,0,4367,4365,1,0,0,0,4367,4368,1,0,0,0,4368,4369,1,0,0,0,4369,4370,3,1216,608,0,4370,4371,3,100,50,0,4371,4442,1,0,0,0,4372,4373,5,191,0,0,4373,4376,3,464,232,0,4374,4375,5,220,0,0,4375,4377,5,389,0,0,4376,4374,1,0,0,0,4376,4377,1,0,0,0,4377,4378,1,0,0,0,4378,4379,3,1232,616,0,4379,4380,3,100,50,0,4380,4442,1,0,0,0,4381,4382,5,191,0,0,4382,4385,3,466,233,0,4383,4384,5,220,0,0,4384,4386,5,389,0,0,4385,4383,1,0,0,0,4385,4386,1,0,0,0,4386,4387,1,0,0,0,4387,4388,3,1234,617,0,4388,4389,5,80,0,0,4389,4390,3,470,235,0,4390,4391,3,100,50,0,4391,4442,1,0,0,0,4392,4393,5,191,0,0,4393,4396,5,350,0,0,4394,4395,5,220,0,0,4395,4397,5,389,0,0,4396,4394,1,0,0,0,4396,4397,1,0,0,0,4397,4398,1,0,0,0,4398,4399,3,1222,611,0,4399,4400,5,80,0,0,4400,4401,3,470,235,0,4401,4402,3,100,50,0,4402,4442,1,0,0,0,4403,4404,5,191,0,0,4404,4405,5,353,0,0,4405,4406,3,474,237,0,4406,4407,3,100,50,0,4407,4442,1,0,0,0,4408,4409,5,191,0,0,4409,4410,5,353,0,0,4410,4411,5,220,0,0,4411,4412,5,389,0,0,4412,4413,3,474,237,0,4413,4414,3,100,50,0,4414,4442,1,0,0,0,4415,4416,5,191,0,0,4416,4417,5,189,0,0,4417,4418,3,474,237,0,4418,4419,3,100,50,0,4419,4442,1,0,0,0,4420,4421,5,191,0,0,4421,4422,5,189,0,0,4422,4423,5,220,0,0,4423,4424,5,389,0,0,4424,4425,3,474,237,0,4425,4426,3,100,50,0,4426,4442,1,0,0,0,4427,4428,5,191,0,0,4428,4429,5,226,0,0,4429,4430,5,109,0,0,4430,4431,3,1218,609,0,4431,4432,3,100,50,0,4432,4442,1,0,0,0,4433,4434,5,191,0,0,4434,4435,5,226,0,0,4435,4436,5,109,0,0,4436,4437,5,220,0,0,4437,4438,5,389,0,0,4438,4439,3,1218,609,0,4439,4440,3,100,50,0,4440,4442,1,0,0,0,4441,4336,1,0,0,0,4441,4345,1,0,0,0,4441,4354,1,0,0,0,4441,4363,1,0,0,0,4441,4372,1,0,0,0,4441,4381,1,0,0,0,4441,4392,1,0,0,0,4441,4403,1,0,0,0,4441,4408,1,0,0,0,4441,4415,1,0,0,0,4441,4420,1,0,0,0,4441,4427,1,0,0,0,4441,4433,1,0,0,0,4442,459,1,0,0,0,4443,4465,5,92,0,0,4444,4465,5,369,0,0,4445,4446,5,251,0,0,4446,4465,5,369,0,0,4447,4448,5,63,0,0,4448,4465,5,92,0,0,4449,4465,5,108,0,0,4450,4465,5,168,0,0,4451,4465,5,335,0,0,4452,4453,5,348,0,0,4453,4454,5,318,0,0,4454,4465,5,276,0,0,4455,4456,5,348,0,0,4456,4457,5,318,0,0,4457,4465,5,185,0,0,4458,4459,5,348,0,0,4459,4460,5,318,0,0,4460,4465,5,346,0,0,4461,4462,5,348,0,0,4462,4463,5,318,0,0,4463,4465,5,163,0,0,4464,4443,1,0,0,0,4464,4444,1,0,0,0,4464,4445,1,0,0,0,4464,4447,1,0,0,0,4464,4449,1,0,0,0,4464,4450,1,0,0,0,4464,4451,1,0,0,0,4464,4452,1,0,0,0,4464,4455,1,0,0,0,4464,4458,1,0,0,0,4464,4461,1,0,0,0,4465,461,1,0,0,0,4466,4470,3,464,232,0,4467,4470,5,451,0,0,4468,4470,5,344,0,0,4469,4466,1,0,0,0,4469,4467,1,0,0,0,4469,4468,1,0,0,0,4470,463,1,0,0,0,4471,4472,5,131,0,0,4472,4485,5,446,0,0,4473,4474,5,198,0,0,4474,4485,5,350,0,0,4475,4485,5,204,0,0,4476,4477,5,63,0,0,4477,4478,5,174,0,0,4478,4485,5,374,0,0,4479,4480,3,276,138,0,4480,4481,5,238,0,0,4481,4485,1,0,0,0,4482,4485,5,452,0,0,4483,4485,5,324,0,0,4484,4471,1,0,0,0,4484,4473,1,0,0,0,4484,4475,1,0,0,0,4484,4476,1,0,0,0,4484,4479,1,0,0,0,4484,4482,1,0,0,0,4484,4483,1,0,0,0,4485,465,1,0,0,0,4486,4487,7,22,0,0,4487,467,1,0,0,0,4488,4493,3,470,235,0,4489,4490,5,6,0,0,4490,4492,3,470,235,0,4491,4489,1,0,0,0,4492,4495,1,0,0,0,4493,4491,1,0,0,0,4493,4494,1,0,0,0,4494,469,1,0,0,0,4495,4493,1,0,0,0,4496,4498,3,1264,632,0,4497,4499,3,472,236,0,4498,4497,1,0,0,0,4498,4499,1,0,0,0,4499,471,1,0,0,0,4500,4501,5,11,0,0,4501,4503,3,1236,618,0,4502,4500,1,0,0,0,4503,4504,1,0,0,0,4504,4502,1,0,0,0,4504,4505,1,0,0,0,4505,473,1,0,0,0,4506,4511,3,996,498,0,4507,4508,5,6,0,0,4508,4510,3,996,498,0,4509,4507,1,0,0,0,4510,4513,1,0,0,0,4511,4509,1,0,0,0,4511,4512,1,0,0,0,4512,475,1,0,0,0,4513,4511,1,0,0,0,4514,4515,5,351,0,0,4515,4516,3,882,441,0,4516,4517,3,960,480,0,4517,4518,3,478,239,0,4518,4519,3,100,50,0,4519,477,1,0,0,0,4520,4521,5,167,0,0,4521,4526,5,219,0,0,4522,4523,5,307,0,0,4523,4526,5,219,0,0,4524,4526,1,0,0,0,4525,4520,1,0,0,0,4525,4522,1,0,0,0,4525,4524,1,0,0,0,4526,479,1,0,0,0,4527,4528,5,159,0,0,4528,4529,5,80,0,0,4529,4530,3,460,230,0,4530,4531,3,470,235,0,4531,4532,5,116,0,0,4532,4533,3,482,241,0,4533,4712,1,0,0,0,4534,4535,5,159,0,0,4535,4536,5,80,0,0,4536,4537,5,321,0,0,4537,4538,3,1226,613,0,4538,4539,5,116,0,0,4539,4540,3,482,241,0,4540,4712,1,0,0,0,4541,4542,5,159,0,0,4542,4543,5,80,0,0,4543,4544,5,226,0,0,4544,4545,3,1218,609,0,4545,4546,5,116,0,0,4546,4547,3,482,241,0,4547,4712,1,0,0,0,4548,4549,5,159,0,0,4549,4550,5,80,0,0,4550,4551,5,44,0,0,4551,4552,3,470,235,0,4552,4553,5,116,0,0,4553,4554,3,482,241,0,4554,4712,1,0,0,0,4555,4556,5,159,0,0,4556,4557,5,80,0,0,4557,4558,3,462,231,0,4558,4559,3,1234,617,0,4559,4560,5,116,0,0,4560,4561,3,482,241,0,4561,4712,1,0,0,0,4562,4563,5,159,0,0,4563,4564,5,80,0,0,4564,4565,5,311,0,0,4565,4566,3,1260,630,0,4566,4567,5,116,0,0,4567,4568,3,482,241,0,4568,4712,1,0,0,0,4569,4570,5,159,0,0,4570,4571,5,80,0,0,4571,4572,5,175,0,0,4572,4573,3,1210,605,0,4573,4574,5,116,0,0,4574,4575,3,482,241,0,4575,4712,1,0,0,0,4576,4577,5,159,0,0,4577,4578,5,80,0,0,4578,4579,5,316,0,0,4579,4580,3,1214,607,0,4580,4581,5,116,0,0,4581,4582,3,482,241,0,4582,4712,1,0,0,0,4583,4584,5,159,0,0,4584,4585,5,80,0,0,4585,4586,5,353,0,0,4586,4587,3,996,498,0,4587,4588,5,116,0,0,4588,4589,3,482,241,0,4589,4712,1,0,0,0,4590,4591,5,159,0,0,4591,4592,5,80,0,0,4592,4593,5,189,0,0,4593,4594,3,996,498,0,4594,4595,5,116,0,0,4595,4596,3,482,241,0,4596,4712,1,0,0,0,4597,4598,5,159,0,0,4598,4599,5,80,0,0,4599,4600,5,136,0,0,4600,4601,3,580,290,0,4601,4602,5,116,0,0,4602,4603,3,482,241,0,4603,4712,1,0,0,0,4604,4605,5,159,0,0,4605,4606,5,80,0,0,4606,4607,5,211,0,0,4607,4608,3,560,280,0,4608,4609,5,116,0,0,4609,4610,3,482,241,0,4610,4712,1,0,0,0,4611,4612,5,159,0,0,4612,4613,5,80,0,0,4613,4614,5,271,0,0,4614,4615,3,614,307,0,4615,4616,5,116,0,0,4616,4617,3,482,241,0,4617,4712,1,0,0,0,4618,4619,5,159,0,0,4619,4620,5,80,0,0,4620,4621,5,45,0,0,4621,4622,3,1224,612,0,4622,4624,5,80,0,0,4623,4625,5,189,0,0,4624,4623,1,0,0,0,4624,4625,1,0,0,0,4625,4626,1,0,0,0,4626,4627,3,470,235,0,4627,4628,5,116,0,0,4628,4629,3,482,241,0,4629,4712,1,0,0,0,4630,4631,5,159,0,0,4631,4632,5,80,0,0,4632,4633,3,466,233,0,4633,4634,3,1234,617,0,4634,4635,5,80,0,0,4635,4636,3,470,235,0,4636,4637,5,116,0,0,4637,4638,3,482,241,0,4638,4712,1,0,0,0,4639,4640,5,159,0,0,4640,4641,5,80,0,0,4641,4642,5,350,0,0,4642,4643,3,1222,611,0,4643,4644,5,80,0,0,4644,4645,3,470,235,0,4645,4646,5,116,0,0,4646,4647,3,482,241,0,4647,4712,1,0,0,0,4648,4649,5,159,0,0,4649,4650,5,80,0,0,4650,4651,5,289,0,0,4651,4652,3,560,280,0,4652,4653,5,116,0,0,4653,4654,3,482,241,0,4654,4712,1,0,0,0,4655,4656,5,159,0,0,4656,4657,5,80,0,0,4657,4658,5,442,0,0,4658,4659,3,560,280,0,4659,4660,5,116,0,0,4660,4661,3,482,241,0,4661,4712,1,0,0,0,4662,4663,5,159,0,0,4663,4664,5,80,0,0,4664,4665,5,443,0,0,4665,4666,5,62,0,0,4666,4667,3,996,498,0,4667,4668,5,238,0,0,4668,4669,3,1234,617,0,4669,4670,5,116,0,0,4670,4671,3,482,241,0,4671,4712,1,0,0,0,4672,4673,5,159,0,0,4673,4674,5,80,0,0,4674,4675,5,271,0,0,4675,4676,5,156,0,0,4676,4677,3,470,235,0,4677,4678,5,100,0,0,4678,4679,3,1234,617,0,4679,4680,5,116,0,0,4680,4681,3,482,241,0,4681,4712,1,0,0,0,4682,4683,5,159,0,0,4683,4684,5,80,0,0,4684,4685,5,271,0,0,4685,4686,5,206,0,0,4686,4687,3,470,235,0,4687,4688,5,100,0,0,4688,4689,3,1234,617,0,4689,4690,5,116,0,0,4690,4691,3,482,241,0,4691,4712,1,0,0,0,4692,4693,5,159,0,0,4693,4694,5,80,0,0,4694,4695,5,239,0,0,4695,4696,5,267,0,0,4696,4697,3,264,132,0,4697,4698,5,116,0,0,4698,4699,3,482,241,0,4699,4712,1,0,0,0,4700,4701,5,159,0,0,4701,4702,5,80,0,0,4702,4703,5,41,0,0,4703,4704,5,2,0,0,4704,4705,3,996,498,0,4705,4706,5,36,0,0,4706,4707,3,996,498,0,4707,4708,5,3,0,0,4708,4709,5,116,0,0,4709,4710,3,482,241,0,4710,4712,1,0,0,0,4711,4527,1,0,0,0,4711,4534,1,0,0,0,4711,4541,1,0,0,0,4711,4548,1,0,0,0,4711,4555,1,0,0,0,4711,4562,1,0,0,0,4711,4569,1,0,0,0,4711,4576,1,0,0,0,4711,4583,1,0,0,0,4711,4590,1,0,0,0,4711,4597,1,0,0,0,4711,4604,1,0,0,0,4711,4611,1,0,0,0,4711,4618,1,0,0,0,4711,4630,1,0,0,0,4711,4639,1,0,0,0,4711,4648,1,0,0,0,4711,4655,1,0,0,0,4711,4662,1,0,0,0,4711,4672,1,0,0,0,4711,4682,1,0,0,0,4711,4692,1,0,0,0,4711,4700,1,0,0,0,4712,481,1,0,0,0,4713,4716,3,1252,626,0,4714,4716,5,78,0,0,4715,4713,1,0,0,0,4715,4714,1,0,0,0,4716,483,1,0,0,0,4717,4718,5,320,0,0,4718,4719,5,237,0,0,4719,4720,3,486,243,0,4720,4721,5,80,0,0,4721,4722,3,460,230,0,4722,4723,3,470,235,0,4723,4724,5,116,0,0,4724,4725,3,488,244,0,4725,4854,1,0,0,0,4726,4727,5,320,0,0,4727,4728,5,237,0,0,4728,4729,3,486,243,0,4729,4730,5,80,0,0,4730,4731,5,321,0,0,4731,4732,3,1226,613,0,4732,4733,5,116,0,0,4733,4734,3,488,244,0,4734,4854,1,0,0,0,4735,4736,5,320,0,0,4736,4737,5,237,0,0,4737,4738,3,486,243,0,4738,4739,5,80,0,0,4739,4740,5,226,0,0,4740,4741,3,1218,609,0,4741,4742,5,116,0,0,4742,4743,3,488,244,0,4743,4854,1,0,0,0,4744,4745,5,320,0,0,4745,4746,5,237,0,0,4746,4747,3,486,243,0,4747,4748,5,80,0,0,4748,4749,5,44,0,0,4749,4750,3,470,235,0,4750,4751,5,116,0,0,4751,4752,3,488,244,0,4752,4854,1,0,0,0,4753,4754,5,320,0,0,4754,4755,5,237,0,0,4755,4756,3,486,243,0,4756,4757,5,80,0,0,4757,4758,3,462,231,0,4758,4759,3,1234,617,0,4759,4760,5,116,0,0,4760,4761,3,488,244,0,4761,4854,1,0,0,0,4762,4763,5,320,0,0,4763,4764,5,237,0,0,4764,4765,3,486,243,0,4765,4766,5,80,0,0,4766,4767,5,311,0,0,4767,4768,3,1260,630,0,4768,4769,5,116,0,0,4769,4770,3,488,244,0,4770,4854,1,0,0,0,4771,4772,5,320,0,0,4772,4773,5,237,0,0,4773,4774,3,486,243,0,4774,4775,5,80,0,0,4775,4776,5,175,0,0,4776,4777,3,1210,605,0,4777,4778,5,116,0,0,4778,4779,3,488,244,0,4779,4854,1,0,0,0,4780,4781,5,320,0,0,4781,4782,5,237,0,0,4782,4783,3,486,243,0,4783,4784,5,80,0,0,4784,4785,5,316,0,0,4785,4786,3,1214,607,0,4786,4787,5,116,0,0,4787,4788,3,488,244,0,4788,4854,1,0,0,0,4789,4790,5,320,0,0,4790,4791,5,237,0,0,4791,4792,3,486,243,0,4792,4793,5,80,0,0,4793,4794,5,353,0,0,4794,4795,3,996,498,0,4795,4796,5,116,0,0,4796,4797,3,488,244,0,4797,4854,1,0,0,0,4798,4799,5,320,0,0,4799,4800,5,237,0,0,4800,4801,3,486,243,0,4801,4802,5,80,0,0,4802,4803,5,189,0,0,4803,4804,3,996,498,0,4804,4805,5,116,0,0,4805,4806,3,488,244,0,4806,4854,1,0,0,0,4807,4808,5,320,0,0,4808,4809,5,237,0,0,4809,4810,3,486,243,0,4810,4811,5,80,0,0,4811,4812,5,136,0,0,4812,4813,3,580,290,0,4813,4814,5,116,0,0,4814,4815,3,488,244,0,4815,4854,1,0,0,0,4816,4817,5,320,0,0,4817,4818,5,237,0,0,4818,4819,3,486,243,0,4819,4820,5,80,0,0,4820,4821,5,211,0,0,4821,4822,3,560,280,0,4822,4823,5,116,0,0,4823,4824,3,488,244,0,4824,4854,1,0,0,0,4825,4826,5,320,0,0,4826,4827,5,237,0,0,4827,4828,3,486,243,0,4828,4829,5,80,0,0,4829,4830,5,239,0,0,4830,4831,5,267,0,0,4831,4832,3,264,132,0,4832,4833,5,116,0,0,4833,4834,3,488,244,0,4834,4854,1,0,0,0,4835,4836,5,320,0,0,4836,4837,5,237,0,0,4837,4838,3,486,243,0,4838,4839,5,80,0,0,4839,4840,5,289,0,0,4840,4841,3,560,280,0,4841,4842,5,116,0,0,4842,4843,3,488,244,0,4843,4854,1,0,0,0,4844,4845,5,320,0,0,4845,4846,5,237,0,0,4846,4847,3,486,243,0,4847,4848,5,80,0,0,4848,4849,5,442,0,0,4849,4850,3,560,280,0,4850,4851,5,116,0,0,4851,4852,3,488,244,0,4852,4854,1,0,0,0,4853,4717,1,0,0,0,4853,4726,1,0,0,0,4853,4735,1,0,0,0,4853,4744,1,0,0,0,4853,4753,1,0,0,0,4853,4762,1,0,0,0,4853,4771,1,0,0,0,4853,4780,1,0,0,0,4853,4789,1,0,0,0,4853,4798,1,0,0,0,4853,4807,1,0,0,0,4853,4816,1,0,0,0,4853,4825,1,0,0,0,4853,4835,1,0,0,0,4853,4844,1,0,0,0,4854,485,1,0,0,0,4855,4856,5,62,0,0,4856,4859,3,64,32,0,4857,4859,1,0,0,0,4858,4855,1,0,0,0,4858,4857,1,0,0,0,4859,487,1,0,0,0,4860,4863,3,1252,626,0,4861,4863,5,78,0,0,4862,4860,1,0,0,0,4862,4861,1,0,0,0,4863,489,1,0,0,0,4864,4865,5,61,0,0,4865,4869,3,492,246,0,4866,4867,5,258,0,0,4867,4869,3,492,246,0,4868,4864,1,0,0,0,4868,4866,1,0,0,0,4869,491,1,0,0,0,4870,4937,3,854,427,0,4871,4872,3,494,247,0,4872,4873,3,854,427,0,4873,4937,1,0,0,0,4874,4875,5,261,0,0,4875,4876,3,496,248,0,4876,4877,3,854,427,0,4877,4937,1,0,0,0,4878,4879,5,286,0,0,4879,4880,3,496,248,0,4880,4881,3,854,427,0,4881,4937,1,0,0,0,4882,4883,5,207,0,0,4883,4884,3,496,248,0,4884,4885,3,854,427,0,4885,4937,1,0,0,0,4886,4887,5,240,0,0,4887,4888,3,496,248,0,4888,4889,3,854,427,0,4889,4937,1,0,0,0,4890,4891,5,130,0,0,4891,4892,3,1258,629,0,4892,4893,3,496,248,0,4893,4894,3,854,427,0,4894,4937,1,0,0,0,4895,4896,5,300,0,0,4896,4897,3,1258,629,0,4897,4898,3,496,248,0,4898,4899,3,854,427,0,4899,4937,1,0,0,0,4900,4901,3,1258,629,0,4901,4902,3,496,248,0,4902,4903,3,854,427,0,4903,4937,1,0,0,0,4904,4905,5,30,0,0,4905,4906,3,496,248,0,4906,4907,3,854,427,0,4907,4937,1,0,0,0,4908,4909,5,210,0,0,4909,4910,3,496,248,0,4910,4911,3,854,427,0,4911,4937,1,0,0,0,4912,4913,5,210,0,0,4913,4914,3,1258,629,0,4914,4915,3,496,248,0,4915,4916,3,854,427,0,4916,4937,1,0,0,0,4917,4918,5,210,0,0,4918,4919,5,30,0,0,4919,4920,3,496,248,0,4920,4921,3,854,427,0,4921,4937,1,0,0,0,4922,4923,5,144,0,0,4923,4924,3,496,248,0,4924,4925,3,854,427,0,4925,4937,1,0,0,0,4926,4927,5,144,0,0,4927,4928,3,1258,629,0,4928,4929,3,496,248,0,4929,4930,3,854,427,0,4930,4937,1,0,0,0,4931,4932,5,144,0,0,4932,4933,5,30,0,0,4933,4934,3,496,248,0,4934,4935,3,854,427,0,4935,4937,1,0,0,0,4936,4870,1,0,0,0,4936,4871,1,0,0,0,4936,4874,1,0,0,0,4936,4878,1,0,0,0,4936,4882,1,0,0,0,4936,4886,1,0,0,0,4936,4890,1,0,0,0,4936,4895,1,0,0,0,4936,4900,1,0,0,0,4936,4904,1,0,0,0,4936,4908,1,0,0,0,4936,4912,1,0,0,0,4936,4917,1,0,0,0,4936,4922,1,0,0,0,4936,4926,1,0,0,0,4936,4931,1,0,0,0,4937,493,1,0,0,0,4938,4939,7,23,0,0,4939,495,1,0,0,0,4940,4943,3,494,247,0,4941,4943,1,0,0,0,4942,4940,1,0,0,0,4942,4941,1,0,0,0,4943,497,1,0,0,0,4944,4945,5,65,0,0,4945,4946,3,502,251,0,4946,4947,5,80,0,0,4947,4948,3,508,254,0,4948,4949,5,94,0,0,4949,4950,3,510,255,0,4950,4951,3,514,257,0,4951,499,1,0,0,0,4952,4953,5,310,0,0,4953,4954,3,502,251,0,4954,4955,5,80,0,0,4955,4956,3,508,254,0,4956,4957,5,64,0,0,4957,4958,3,510,255,0,4958,4959,3,100,50,0,4959,4972,1,0,0,0,4960,4961,5,310,0,0,4961,4962,5,65,0,0,4962,4963,5,272,0,0,4963,4964,5,62,0,0,4964,4965,3,502,251,0,4965,4966,5,80,0,0,4966,4967,3,508,254,0,4967,4968,5,64,0,0,4968,4969,3,510,255,0,4969,4970,3,100,50,0,4970,4972,1,0,0,0,4971,4952,1,0,0,0,4971,4960,1,0,0,0,4972,501,1,0,0,0,4973,4989,3,504,252,0,4974,4989,5,30,0,0,4975,4976,5,30,0,0,4976,4989,5,287,0,0,4977,4978,5,30,0,0,4978,4979,5,2,0,0,4979,4980,3,194,97,0,4980,4981,5,3,0,0,4981,4989,1,0,0,0,4982,4983,5,30,0,0,4983,4984,5,287,0,0,4984,4985,5,2,0,0,4985,4986,3,194,97,0,4986,4987,5,3,0,0,4987,4989,1,0,0,0,4988,4973,1,0,0,0,4988,4974,1,0,0,0,4988,4975,1,0,0,0,4988,4977,1,0,0,0,4988,4982,1,0,0,0,4989,503,1,0,0,0,4990,4995,3,506,253,0,4991,4992,5,6,0,0,4992,4994,3,506,253,0,4993,4991,1,0,0,0,4994,4997,1,0,0,0,4995,4993,1,0,0,0,4995,4996,1,0,0,0,4996,505,1,0,0,0,4997,4995,1,0,0,0,4998,4999,5,88,0,0,4999,5008,3,192,96,0,5e3,5001,5,86,0,0,5001,5008,3,192,96,0,5002,5003,5,46,0,0,5003,5008,3,192,96,0,5004,5005,3,1264,632,0,5005,5006,3,192,96,0,5006,5008,1,0,0,0,5007,4998,1,0,0,0,5007,5e3,1,0,0,0,5007,5002,1,0,0,0,5007,5004,1,0,0,0,5008,507,1,0,0,0,5009,5048,3,1208,604,0,5010,5011,5,92,0,0,5011,5048,3,1208,604,0,5012,5013,5,321,0,0,5013,5048,3,1228,614,0,5014,5015,5,63,0,0,5015,5016,5,174,0,0,5016,5017,5,374,0,0,5017,5048,3,1232,616,0,5018,5019,5,63,0,0,5019,5020,5,324,0,0,5020,5048,3,1232,616,0,5021,5022,5,211,0,0,5022,5048,3,558,279,0,5023,5024,5,289,0,0,5024,5048,3,558,279,0,5025,5026,5,442,0,0,5026,5048,3,558,279,0,5027,5028,5,175,0,0,5028,5048,3,1212,606,0,5029,5030,5,189,0,0,5030,5048,3,468,234,0,5031,5032,5,238,0,0,5032,5048,3,1232,616,0,5033,5034,5,239,0,0,5034,5035,5,267,0,0,5035,5048,3,266,133,0,5036,5037,5,316,0,0,5037,5048,3,1216,608,0,5038,5039,5,344,0,0,5039,5048,3,1232,616,0,5040,5041,5,353,0,0,5041,5048,3,468,234,0,5042,5043,5,30,0,0,5043,5044,7,24,0,0,5044,5045,5,68,0,0,5045,5046,5,316,0,0,5046,5048,3,1216,608,0,5047,5009,1,0,0,0,5047,5010,1,0,0,0,5047,5012,1,0,0,0,5047,5014,1,0,0,0,5047,5018,1,0,0,0,5047,5021,1,0,0,0,5047,5023,1,0,0,0,5047,5025,1,0,0,0,5047,5027,1,0,0,0,5047,5029,1,0,0,0,5047,5031,1,0,0,0,5047,5033,1,0,0,0,5047,5036,1,0,0,0,5047,5038,1,0,0,0,5047,5040,1,0,0,0,5047,5042,1,0,0,0,5048,509,1,0,0,0,5049,5054,3,512,256,0,5050,5051,5,6,0,0,5051,5053,3,512,256,0,5052,5050,1,0,0,0,5053,5056,1,0,0,0,5054,5052,1,0,0,0,5054,5055,1,0,0,0,5055,511,1,0,0,0,5056,5054,1,0,0,0,5057,5061,3,1260,630,0,5058,5059,5,66,0,0,5059,5061,3,1260,630,0,5060,5057,1,0,0,0,5060,5058,1,0,0,0,5061,513,1,0,0,0,5062,5063,5,105,0,0,5063,5064,5,65,0,0,5064,5067,5,272,0,0,5065,5067,1,0,0,0,5066,5062,1,0,0,0,5066,5065,1,0,0,0,5067,515,1,0,0,0,5068,5069,5,65,0,0,5069,5070,3,504,252,0,5070,5071,5,94,0,0,5071,5072,3,1262,631,0,5072,5073,3,520,260,0,5073,5074,3,522,261,0,5074,517,1,0,0,0,5075,5076,5,310,0,0,5076,5077,3,504,252,0,5077,5078,5,64,0,0,5078,5079,3,1262,631,0,5079,5080,3,522,261,0,5080,5081,3,100,50,0,5081,5093,1,0,0,0,5082,5083,5,310,0,0,5083,5084,5,134,0,0,5084,5085,5,272,0,0,5085,5086,5,62,0,0,5086,5087,3,504,252,0,5087,5088,5,64,0,0,5088,5089,3,1262,631,0,5089,5090,3,522,261,0,5090,5091,3,100,50,0,5091,5093,1,0,0,0,5092,5075,1,0,0,0,5092,5082,1,0,0,0,5093,519,1,0,0,0,5094,5095,5,105,0,0,5095,5096,5,134,0,0,5096,5099,5,272,0,0,5097,5099,1,0,0,0,5098,5094,1,0,0,0,5098,5097,1,0,0,0,5099,521,1,0,0,0,5100,5101,5,214,0,0,5101,5102,5,147,0,0,5102,5105,3,1260,630,0,5103,5105,1,0,0,0,5104,5100,1,0,0,0,5104,5103,1,0,0,0,5105,523,1,0,0,0,5106,5107,5,138,0,0,5107,5108,5,53,0,0,5108,5112,5,287,0,0,5109,5111,3,526,263,0,5110,5109,1,0,0,0,5111,5114,1,0,0,0,5112,5110,1,0,0,0,5112,5113,1,0,0,0,5113,5115,1,0,0,0,5114,5112,1,0,0,0,5115,5116,3,528,264,0,5116,525,1,0,0,0,5117,5118,5,68,0,0,5118,5119,5,316,0,0,5119,5125,3,1216,608,0,5120,5121,5,62,0,0,5121,5122,3,1506,753,0,5122,5123,3,1262,631,0,5123,5125,1,0,0,0,5124,5117,1,0,0,0,5124,5120,1,0,0,0,5125,527,1,0,0,0,5126,5127,5,65,0,0,5127,5128,3,502,251,0,5128,5129,5,80,0,0,5129,5130,3,530,265,0,5130,5131,5,94,0,0,5131,5132,3,510,255,0,5132,5133,3,514,257,0,5133,5154,1,0,0,0,5134,5135,5,310,0,0,5135,5136,3,502,251,0,5136,5137,5,80,0,0,5137,5138,3,530,265,0,5138,5139,5,64,0,0,5139,5140,3,510,255,0,5140,5141,3,100,50,0,5141,5154,1,0,0,0,5142,5143,5,310,0,0,5143,5144,5,65,0,0,5144,5145,5,272,0,0,5145,5146,5,62,0,0,5146,5147,3,502,251,0,5147,5148,5,80,0,0,5148,5149,3,530,265,0,5149,5150,5,64,0,0,5150,5151,3,510,255,0,5151,5152,3,100,50,0,5152,5154,1,0,0,0,5153,5126,1,0,0,0,5153,5134,1,0,0,0,5153,5142,1,0,0,0,5154,529,1,0,0,0,5155,5156,7,25,0,0,5156,531,1,0,0,0,5157,5159,5,46,0,0,5158,5160,5,98,0,0,5159,5158,1,0,0,0,5159,5160,1,0,0,0,5160,5161,1,0,0,0,5161,5163,5,226,0,0,5162,5164,5,109,0,0,5163,5162,1,0,0,0,5163,5164,1,0,0,0,5164,5166,1,0,0,0,5165,5167,3,1234,617,0,5166,5165,1,0,0,0,5166,5167,1,0,0,0,5167,5168,1,0,0,0,5168,5169,5,80,0,0,5169,5170,3,958,479,0,5170,5171,3,534,267,0,5171,5172,5,2,0,0,5172,5173,3,536,268,0,5173,5174,5,3,0,0,5174,5175,3,542,271,0,5175,5176,3,110,55,0,5176,5177,3,232,116,0,5177,5178,3,974,487,0,5178,5203,1,0,0,0,5179,5181,5,46,0,0,5180,5182,5,98,0,0,5181,5180,1,0,0,0,5181,5182,1,0,0,0,5182,5183,1,0,0,0,5183,5185,5,226,0,0,5184,5186,5,109,0,0,5185,5184,1,0,0,0,5185,5186,1,0,0,0,5186,5187,1,0,0,0,5187,5188,5,220,0,0,5188,5189,5,77,0,0,5189,5190,5,389,0,0,5190,5191,3,1234,617,0,5191,5192,5,80,0,0,5192,5193,3,958,479,0,5193,5194,3,534,267,0,5194,5195,5,2,0,0,5195,5196,3,536,268,0,5196,5197,5,3,0,0,5197,5198,3,542,271,0,5198,5199,3,110,55,0,5199,5200,3,232,116,0,5200,5201,3,974,487,0,5201,5203,1,0,0,0,5202,5157,1,0,0,0,5202,5179,1,0,0,0,5203,533,1,0,0,0,5204,5205,5,100,0,0,5205,5208,3,1234,617,0,5206,5208,1,0,0,0,5207,5204,1,0,0,0,5207,5206,1,0,0,0,5208,535,1,0,0,0,5209,5214,3,540,270,0,5210,5211,5,6,0,0,5211,5213,3,540,270,0,5212,5210,1,0,0,0,5213,5216,1,0,0,0,5214,5212,1,0,0,0,5214,5215,1,0,0,0,5215,537,1,0,0,0,5216,5214,1,0,0,0,5217,5218,3,544,272,0,5218,5219,3,546,273,0,5219,5220,3,548,274,0,5220,5221,3,550,275,0,5221,5229,1,0,0,0,5222,5223,3,544,272,0,5223,5224,3,470,235,0,5224,5225,3,108,54,0,5225,5226,3,548,274,0,5226,5227,3,550,275,0,5227,5229,1,0,0,0,5228,5217,1,0,0,0,5228,5222,1,0,0,0,5229,539,1,0,0,0,5230,5231,3,1264,632,0,5231,5232,3,538,269,0,5232,5242,1,0,0,0,5233,5234,3,1090,545,0,5234,5235,3,538,269,0,5235,5242,1,0,0,0,5236,5237,5,2,0,0,5237,5238,3,1038,519,0,5238,5239,5,3,0,0,5239,5240,3,538,269,0,5240,5242,1,0,0,0,5241,5230,1,0,0,0,5241,5233,1,0,0,0,5241,5236,1,0,0,0,5242,541,1,0,0,0,5243,5244,5,441,0,0,5244,5245,5,2,0,0,5245,5250,3,540,270,0,5246,5247,5,6,0,0,5247,5249,3,540,270,0,5248,5246,1,0,0,0,5249,5252,1,0,0,0,5250,5248,1,0,0,0,5250,5251,1,0,0,0,5251,5253,1,0,0,0,5252,5250,1,0,0,0,5253,5254,5,3,0,0,5254,5257,1,0,0,0,5255,5257,1,0,0,0,5256,5243,1,0,0,0,5256,5255,1,0,0,0,5257,543,1,0,0,0,5258,5259,5,43,0,0,5259,5262,3,470,235,0,5260,5262,1,0,0,0,5261,5258,1,0,0,0,5261,5260,1,0,0,0,5262,545,1,0,0,0,5263,5266,3,470,235,0,5264,5266,1,0,0,0,5265,5263,1,0,0,0,5265,5264,1,0,0,0,5266,547,1,0,0,0,5267,5271,5,37,0,0,5268,5271,5,55,0,0,5269,5271,1,0,0,0,5270,5267,1,0,0,0,5270,5268,1,0,0,0,5270,5269,1,0,0,0,5271,549,1,0,0,0,5272,5273,5,266,0,0,5273,5278,5,207,0,0,5274,5275,5,266,0,0,5275,5278,5,240,0,0,5276,5278,1,0,0,0,5277,5272,1,0,0,0,5277,5274,1,0,0,0,5277,5276,1,0,0,0,5278,551,1,0,0,0,5279,5280,5,46,0,0,5280,5281,3,554,277,0,5281,5282,7,21,0,0,5282,5283,3,1240,620,0,5283,5285,5,2,0,0,5284,5286,3,562,281,0,5285,5284,1,0,0,0,5285,5286,1,0,0,0,5286,5287,1,0,0,0,5287,5297,5,3,0,0,5288,5295,5,309,0,0,5289,5296,3,572,286,0,5290,5291,5,92,0,0,5291,5292,5,2,0,0,5292,5293,3,598,299,0,5293,5294,5,3,0,0,5294,5296,1,0,0,0,5295,5289,1,0,0,0,5295,5290,1,0,0,0,5296,5298,1,0,0,0,5297,5288,1,0,0,0,5297,5298,1,0,0,0,5298,5299,1,0,0,0,5299,5300,3,584,292,0,5300,553,1,0,0,0,5301,5302,5,82,0,0,5302,5305,5,304,0,0,5303,5305,1,0,0,0,5304,5301,1,0,0,0,5304,5303,1,0,0,0,5305,555,1,0,0,0,5306,5311,3,566,283,0,5307,5308,5,6,0,0,5308,5310,3,566,283,0,5309,5307,1,0,0,0,5310,5313,1,0,0,0,5311,5309,1,0,0,0,5311,5312,1,0,0,0,5312,557,1,0,0,0,5313,5311,1,0,0,0,5314,5319,3,560,280,0,5315,5316,5,6,0,0,5316,5318,3,560,280,0,5317,5315,1,0,0,0,5318,5321,1,0,0,0,5319,5317,1,0,0,0,5319,5320,1,0,0,0,5320,559,1,0,0,0,5321,5319,1,0,0,0,5322,5323,3,1240,620,0,5323,5325,5,2,0,0,5324,5326,3,556,278,0,5325,5324,1,0,0,0,5325,5326,1,0,0,0,5326,5327,1,0,0,0,5327,5328,5,3,0,0,5328,5335,1,0,0,0,5329,5335,3,1282,641,0,5330,5332,3,1264,632,0,5331,5333,3,1198,599,0,5332,5331,1,0,0,0,5332,5333,1,0,0,0,5333,5335,1,0,0,0,5334,5322,1,0,0,0,5334,5329,1,0,0,0,5334,5330,1,0,0,0,5335,561,1,0,0,0,5336,5341,3,564,282,0,5337,5338,5,6,0,0,5338,5340,3,564,282,0,5339,5337,1,0,0,0,5340,5343,1,0,0,0,5341,5339,1,0,0,0,5341,5342,1,0,0,0,5342,563,1,0,0,0,5343,5341,1,0,0,0,5344,5347,3,566,283,0,5345,5346,7,26,0,0,5346,5348,3,1038,519,0,5347,5345,1,0,0,0,5347,5348,1,0,0,0,5348,565,1,0,0,0,5349,5351,3,568,284,0,5350,5352,3,570,285,0,5351,5350,1,0,0,0,5351,5352,1,0,0,0,5352,5353,1,0,0,0,5353,5354,3,574,287,0,5354,5363,1,0,0,0,5355,5357,3,570,285,0,5356,5358,3,568,284,0,5357,5356,1,0,0,0,5357,5358,1,0,0,0,5358,5359,1,0,0,0,5359,5360,3,574,287,0,5360,5363,1,0,0,0,5361,5363,3,574,287,0,5362,5349,1,0,0,0,5362,5355,1,0,0,0,5362,5361,1,0,0,0,5363,567,1,0,0,0,5364,5366,5,68,0,0,5365,5367,5,453,0,0,5366,5365,1,0,0,0,5366,5367,1,0,0,0,5367,5372,1,0,0,0,5368,5372,5,453,0,0,5369,5372,5,393,0,0,5370,5372,5,101,0,0,5371,5364,1,0,0,0,5371,5368,1,0,0,0,5371,5369,1,0,0,0,5371,5370,1,0,0,0,5372,569,1,0,0,0,5373,5378,3,1268,634,0,5374,5378,3,1286,643,0,5375,5378,5,119,0,0,5376,5378,5,126,0,0,5377,5373,1,0,0,0,5377,5374,1,0,0,0,5377,5375,1,0,0,0,5377,5376,1,0,0,0,5378,571,1,0,0,0,5379,5380,3,574,287,0,5380,573,1,0,0,0,5381,5396,3,996,498,0,5382,5384,5,408,0,0,5383,5382,1,0,0,0,5383,5384,1,0,0,0,5384,5389,1,0,0,0,5385,5390,3,1286,643,0,5386,5390,3,1268,634,0,5387,5390,5,119,0,0,5388,5390,5,126,0,0,5389,5385,1,0,0,0,5389,5386,1,0,0,0,5389,5387,1,0,0,0,5389,5388,1,0,0,0,5390,5391,1,0,0,0,5391,5392,3,472,236,0,5392,5393,5,27,0,0,5393,5394,5,353,0,0,5394,5396,1,0,0,0,5395,5381,1,0,0,0,5395,5383,1,0,0,0,5396,575,1,0,0,0,5397,5408,5,2,0,0,5398,5409,5,9,0,0,5399,5409,3,578,289,0,5400,5401,5,83,0,0,5401,5402,5,147,0,0,5402,5409,3,578,289,0,5403,5404,3,578,289,0,5404,5405,5,83,0,0,5405,5406,5,147,0,0,5406,5407,3,578,289,0,5407,5409,1,0,0,0,5408,5398,1,0,0,0,5408,5399,1,0,0,0,5408,5400,1,0,0,0,5408,5403,1,0,0,0,5409,5410,1,0,0,0,5410,5411,5,3,0,0,5411,577,1,0,0,0,5412,5417,3,566,283,0,5413,5414,5,6,0,0,5414,5416,3,566,283,0,5415,5413,1,0,0,0,5416,5419,1,0,0,0,5417,5415,1,0,0,0,5417,5418,1,0,0,0,5418,579,1,0,0,0,5419,5417,1,0,0,0,5420,5421,3,1240,620,0,5421,5422,3,576,288,0,5422,581,1,0,0,0,5423,5428,3,580,290,0,5424,5425,5,6,0,0,5425,5427,3,580,290,0,5426,5424,1,0,0,0,5427,5430,1,0,0,0,5428,5426,1,0,0,0,5428,5429,1,0,0,0,5429,583,1,0,0,0,5430,5428,1,0,0,0,5431,5433,3,588,294,0,5432,5431,1,0,0,0,5433,5434,1,0,0,0,5434,5432,1,0,0,0,5434,5435,1,0,0,0,5435,5436,1,0,0,0,5436,5437,6,292,-1,0,5437,585,1,0,0,0,5438,5439,5,149,0,0,5439,5440,5,80,0,0,5440,5441,5,78,0,0,5441,5474,5,458,0,0,5442,5443,5,309,0,0,5443,5444,5,78,0,0,5444,5445,5,80,0,0,5445,5446,5,78,0,0,5446,5474,5,458,0,0,5447,5474,5,339,0,0,5448,5474,5,222,0,0,5449,5474,5,331,0,0,5450,5474,5,370,0,0,5451,5452,5,205,0,0,5452,5453,5,320,0,0,5453,5474,5,181,0,0,5454,5455,5,205,0,0,5455,5456,5,320,0,0,5456,5474,5,234,0,0,5457,5458,5,320,0,0,5458,5474,5,181,0,0,5459,5460,5,320,0,0,5460,5474,5,234,0,0,5461,5474,5,241,0,0,5462,5463,5,77,0,0,5463,5474,5,241,0,0,5464,5465,5,170,0,0,5465,5474,3,264,132,0,5466,5467,5,313,0,0,5467,5474,3,264,132,0,5468,5469,5,459,0,0,5469,5474,3,470,235,0,5470,5474,3,74,37,0,5471,5472,5,460,0,0,5472,5474,3,1264,632,0,5473,5438,1,0,0,0,5473,5442,1,0,0,0,5473,5447,1,0,0,0,5473,5448,1,0,0,0,5473,5449,1,0,0,0,5473,5450,1,0,0,0,5473,5451,1,0,0,0,5473,5454,1,0,0,0,5473,5457,1,0,0,0,5473,5459,1,0,0,0,5473,5461,1,0,0,0,5473,5462,1,0,0,0,5473,5464,1,0,0,0,5473,5466,1,0,0,0,5473,5468,1,0,0,0,5473,5470,1,0,0,0,5473,5471,1,0,0,0,5474,587,1,0,0,0,5475,5476,5,36,0,0,5476,5484,3,590,295,0,5477,5478,5,238,0,0,5478,5484,3,64,32,0,5479,5480,5,443,0,0,5480,5484,3,592,296,0,5481,5484,5,104,0,0,5482,5484,3,586,293,0,5483,5475,1,0,0,0,5483,5477,1,0,0,0,5483,5479,1,0,0,0,5483,5481,1,0,0,0,5483,5482,1,0,0,0,5484,589,1,0,0,0,5485,5491,3,1252,626,0,5486,5487,3,1252,626,0,5487,5488,5,6,0,0,5488,5489,3,1252,626,0,5489,5491,1,0,0,0,5490,5485,1,0,0,0,5490,5486,1,0,0,0,5491,591,1,0,0,0,5492,5493,5,62,0,0,5493,5494,5,353,0,0,5494,5501,3,996,498,0,5495,5496,5,6,0,0,5496,5497,5,62,0,0,5497,5498,5,353,0,0,5498,5500,3,996,498,0,5499,5495,1,0,0,0,5500,5503,1,0,0,0,5501,5499,1,0,0,0,5501,5502,1,0,0,0,5502,593,1,0,0,0,5503,5501,1,0,0,0,5504,5505,5,105,0,0,5505,5508,3,416,208,0,5506,5508,1,0,0,0,5507,5504,1,0,0,0,5507,5506,1,0,0,0,5508,595,1,0,0,0,5509,5510,3,570,285,0,5510,5511,3,574,287,0,5511,597,1,0,0,0,5512,5517,3,596,298,0,5513,5514,5,6,0,0,5514,5516,3,596,298,0,5515,5513,1,0,0,0,5516,5519,1,0,0,0,5517,5515,1,0,0,0,5517,5518,1,0,0,0,5518,599,1,0,0,0,5519,5517,1,0,0,0,5520,5521,5,138,0,0,5521,5522,7,27,0,0,5522,5524,3,560,280,0,5523,5525,3,586,293,0,5524,5523,1,0,0,0,5525,5526,1,0,0,0,5526,5524,1,0,0,0,5526,5527,1,0,0,0,5527,5529,1,0,0,0,5528,5530,5,308,0,0,5529,5528,1,0,0,0,5529,5530,1,0,0,0,5530,601,1,0,0,0,5531,5532,5,191,0,0,5532,5533,5,211,0,0,5533,5534,3,558,279,0,5534,5535,3,100,50,0,5535,5568,1,0,0,0,5536,5537,5,191,0,0,5537,5538,5,211,0,0,5538,5539,5,220,0,0,5539,5540,5,389,0,0,5540,5541,3,558,279,0,5541,5542,3,100,50,0,5542,5568,1,0,0,0,5543,5544,5,191,0,0,5544,5545,5,289,0,0,5545,5546,3,558,279,0,5546,5547,3,100,50,0,5547,5568,1,0,0,0,5548,5549,5,191,0,0,5549,5550,5,289,0,0,5550,5551,5,220,0,0,5551,5552,5,389,0,0,5552,5553,3,558,279,0,5553,5554,3,100,50,0,5554,5568,1,0,0,0,5555,5556,5,191,0,0,5556,5557,5,442,0,0,5557,5558,3,558,279,0,5558,5559,3,100,50,0,5559,5568,1,0,0,0,5560,5561,5,191,0,0,5561,5562,5,442,0,0,5562,5563,5,220,0,0,5563,5564,5,389,0,0,5564,5565,3,558,279,0,5565,5566,3,100,50,0,5566,5568,1,0,0,0,5567,5531,1,0,0,0,5567,5536,1,0,0,0,5567,5543,1,0,0,0,5567,5548,1,0,0,0,5567,5555,1,0,0,0,5567,5560,1,0,0,0,5568,603,1,0,0,0,5569,5570,5,191,0,0,5570,5571,5,136,0,0,5571,5572,3,582,291,0,5572,5573,3,100,50,0,5573,5582,1,0,0,0,5574,5575,5,191,0,0,5575,5576,5,136,0,0,5576,5577,5,220,0,0,5577,5578,5,389,0,0,5578,5579,3,582,291,0,5579,5580,3,100,50,0,5580,5582,1,0,0,0,5581,5569,1,0,0,0,5581,5574,1,0,0,0,5582,605,1,0,0,0,5583,5584,5,191,0,0,5584,5585,5,271,0,0,5585,5586,3,612,306,0,5586,5587,3,100,50,0,5587,5596,1,0,0,0,5588,5589,5,191,0,0,5589,5590,5,271,0,0,5590,5591,5,220,0,0,5591,5592,5,389,0,0,5592,5593,3,612,306,0,5593,5594,3,100,50,0,5594,5596,1,0,0,0,5595,5583,1,0,0,0,5595,5588,1,0,0,0,5596,607,1,0,0,0,5597,5598,5,2,0,0,5598,5599,3,996,498,0,5599,5600,5,3,0,0,5600,5620,1,0,0,0,5601,5602,5,2,0,0,5602,5603,3,996,498,0,5603,5604,5,6,0,0,5604,5605,3,996,498,0,5605,5606,5,3,0,0,5606,5620,1,0,0,0,5607,5608,5,2,0,0,5608,5609,5,400,0,0,5609,5610,5,6,0,0,5610,5611,3,996,498,0,5611,5612,5,3,0,0,5612,5620,1,0,0,0,5613,5614,5,2,0,0,5614,5615,3,996,498,0,5615,5616,5,6,0,0,5616,5617,5,400,0,0,5617,5618,5,3,0,0,5618,5620,1,0,0,0,5619,5597,1,0,0,0,5619,5601,1,0,0,0,5619,5607,1,0,0,0,5619,5613,1,0,0,0,5620,609,1,0,0,0,5621,5622,3,1264,632,0,5622,5623,5,11,0,0,5623,5625,1,0,0,0,5624,5621,1,0,0,0,5625,5628,1,0,0,0,5626,5624,1,0,0,0,5626,5627,1,0,0,0,5627,5629,1,0,0,0,5628,5626,1,0,0,0,5629,5630,3,1146,573,0,5630,611,1,0,0,0,5631,5636,3,614,307,0,5632,5633,5,6,0,0,5633,5635,3,614,307,0,5634,5632,1,0,0,0,5635,5638,1,0,0,0,5636,5634,1,0,0,0,5636,5637,1,0,0,0,5637,613,1,0,0,0,5638,5636,1,0,0,0,5639,5640,3,610,305,0,5640,5641,3,608,304,0,5641,615,1,0,0,0,5642,5643,5,57,0,0,5643,5644,3,618,309,0,5644,617,1,0,0,0,5645,5647,3,620,310,0,5646,5645,1,0,0,0,5647,5648,1,0,0,0,5648,5646,1,0,0,0,5648,5649,1,0,0,0,5649,619,1,0,0,0,5650,5654,3,1252,626,0,5651,5652,5,238,0,0,5652,5654,3,64,32,0,5653,5650,1,0,0,0,5653,5651,1,0,0,0,5654,621,1,0,0,0,5655,5656,5,46,0,0,5656,5657,5,41,0,0,5657,5658,5,2,0,0,5658,5659,3,996,498,0,5659,5660,5,36,0,0,5660,5661,3,996,498,0,5661,5662,5,3,0,0,5662,5663,5,105,0,0,5663,5664,5,211,0,0,5664,5665,3,560,280,0,5665,5666,3,624,312,0,5666,5690,1,0,0,0,5667,5668,5,46,0,0,5668,5669,5,41,0,0,5669,5670,5,2,0,0,5670,5671,3,996,498,0,5671,5672,5,36,0,0,5672,5673,3,996,498,0,5673,5674,5,3,0,0,5674,5675,5,372,0,0,5675,5676,5,211,0,0,5676,5677,3,624,312,0,5677,5690,1,0,0,0,5678,5679,5,46,0,0,5679,5680,5,41,0,0,5680,5681,5,2,0,0,5681,5682,3,996,498,0,5682,5683,5,36,0,0,5683,5684,3,996,498,0,5684,5685,5,3,0,0,5685,5686,5,105,0,0,5686,5687,5,393,0,0,5687,5688,3,624,312,0,5688,5690,1,0,0,0,5689,5655,1,0,0,0,5689,5667,1,0,0,0,5689,5678,1,0,0,0,5690,623,1,0,0,0,5691,5692,5,36,0,0,5692,5697,5,223,0,0,5693,5694,5,36,0,0,5694,5697,5,141,0,0,5695,5697,1,0,0,0,5696,5691,1,0,0,0,5696,5693,1,0,0,0,5696,5695,1,0,0,0,5697,625,1,0,0,0,5698,5699,5,191,0,0,5699,5700,5,41,0,0,5700,5701,3,628,314,0,5701,5702,5,2,0,0,5702,5703,3,996,498,0,5703,5704,5,36,0,0,5704,5705,3,996,498,0,5705,5706,5,3,0,0,5706,5707,3,100,50,0,5707,627,1,0,0,0,5708,5709,5,220,0,0,5709,5712,5,389,0,0,5710,5712,1,0,0,0,5711,5708,1,0,0,0,5711,5710,1,0,0,0,5712,629,1,0,0,0,5713,5714,5,46,0,0,5714,5715,3,554,277,0,5715,5716,5,443,0,0,5716,5717,5,62,0,0,5717,5718,3,996,498,0,5718,5719,5,238,0,0,5719,5720,3,1234,617,0,5720,5721,5,2,0,0,5721,5722,3,632,316,0,5722,5723,5,3,0,0,5723,631,1,0,0,0,5724,5725,5,64,0,0,5725,5726,5,461,0,0,5726,5727,5,105,0,0,5727,5728,5,211,0,0,5728,5729,3,560,280,0,5729,5730,5,6,0,0,5730,5731,5,94,0,0,5731,5732,5,461,0,0,5732,5733,5,105,0,0,5733,5734,5,211,0,0,5734,5735,3,560,280,0,5735,5759,1,0,0,0,5736,5737,5,94,0,0,5737,5738,5,461,0,0,5738,5739,5,105,0,0,5739,5740,5,211,0,0,5740,5741,3,560,280,0,5741,5742,5,6,0,0,5742,5743,5,64,0,0,5743,5744,5,461,0,0,5744,5745,5,105,0,0,5745,5746,5,211,0,0,5746,5747,3,560,280,0,5747,5759,1,0,0,0,5748,5749,5,64,0,0,5749,5750,5,461,0,0,5750,5751,5,105,0,0,5751,5752,5,211,0,0,5752,5759,3,560,280,0,5753,5754,5,94,0,0,5754,5755,5,461,0,0,5755,5756,5,105,0,0,5756,5757,5,211,0,0,5757,5759,3,560,280,0,5758,5724,1,0,0,0,5758,5736,1,0,0,0,5758,5748,1,0,0,0,5758,5753,1,0,0,0,5759,633,1,0,0,0,5760,5761,5,191,0,0,5761,5762,5,443,0,0,5762,5763,3,628,314,0,5763,5764,5,62,0,0,5764,5765,3,996,498,0,5765,5766,5,238,0,0,5766,5767,3,1234,617,0,5767,5768,3,100,50,0,5768,635,1,0,0,0,5769,5774,5,299,0,0,5770,5771,5,2,0,0,5771,5772,3,640,320,0,5772,5773,5,3,0,0,5773,5775,1,0,0,0,5774,5770,1,0,0,0,5774,5775,1,0,0,0,5775,5776,1,0,0,0,5776,5778,3,638,319,0,5777,5779,5,109,0,0,5778,5777,1,0,0,0,5778,5779,1,0,0,0,5779,5780,1,0,0,0,5780,5781,3,1230,615,0,5781,5831,1,0,0,0,5782,5787,5,299,0,0,5783,5784,5,2,0,0,5784,5785,3,640,320,0,5785,5786,5,3,0,0,5786,5788,1,0,0,0,5787,5783,1,0,0,0,5787,5788,1,0,0,0,5788,5789,1,0,0,0,5789,5791,5,175,0,0,5790,5792,5,109,0,0,5791,5790,1,0,0,0,5791,5792,1,0,0,0,5792,5793,1,0,0,0,5793,5831,3,1210,605,0,5794,5799,5,299,0,0,5795,5796,5,2,0,0,5796,5797,3,640,320,0,5797,5798,5,3,0,0,5798,5800,1,0,0,0,5799,5795,1,0,0,0,5799,5800,1,0,0,0,5800,5801,1,0,0,0,5801,5803,5,316,0,0,5802,5804,5,109,0,0,5803,5802,1,0,0,0,5803,5804,1,0,0,0,5804,5805,1,0,0,0,5805,5831,3,1214,607,0,5806,5811,5,299,0,0,5807,5808,5,2,0,0,5808,5809,3,640,320,0,5809,5810,5,3,0,0,5810,5812,1,0,0,0,5811,5807,1,0,0,0,5811,5812,1,0,0,0,5812,5813,1,0,0,0,5813,5815,5,226,0,0,5814,5816,5,109,0,0,5815,5814,1,0,0,0,5815,5816,1,0,0,0,5816,5817,1,0,0,0,5817,5831,3,1218,609,0,5818,5823,5,299,0,0,5819,5820,5,2,0,0,5820,5821,3,640,320,0,5821,5822,5,3,0,0,5822,5824,1,0,0,0,5823,5819,1,0,0,0,5823,5824,1,0,0,0,5824,5825,1,0,0,0,5825,5827,5,342,0,0,5826,5828,5,109,0,0,5827,5826,1,0,0,0,5827,5828,1,0,0,0,5828,5829,1,0,0,0,5829,5831,3,1234,617,0,5830,5769,1,0,0,0,5830,5782,1,0,0,0,5830,5794,1,0,0,0,5830,5806,1,0,0,0,5830,5818,1,0,0,0,5831,637,1,0,0,0,5832,5833,7,28,0,0,5833,639,1,0,0,0,5834,5839,3,642,321,0,5835,5836,5,6,0,0,5836,5838,3,642,321,0,5837,5835,1,0,0,0,5838,5841,1,0,0,0,5839,5837,1,0,0,0,5839,5840,1,0,0,0,5840,641,1,0,0,0,5841,5839,1,0,0,0,5842,5843,7,29,0,0,5843,643,1,0,0,0,5844,5845,5,138,0,0,5845,5846,5,344,0,0,5846,5847,3,1234,617,0,5847,5848,5,326,0,0,5848,5849,3,108,54,0,5849,5857,1,0,0,0,5850,5851,5,138,0,0,5851,5852,5,344,0,0,5852,5853,3,1234,617,0,5853,5854,5,306,0,0,5854,5855,3,108,54,0,5855,5857,1,0,0,0,5856,5844,1,0,0,0,5856,5850,1,0,0,0,5857,645,1,0,0,0,5858,5859,5,138,0,0,5859,5860,5,136,0,0,5860,5861,3,580,290,0,5861,5862,5,302,0,0,5862,5863,5,94,0,0,5863,5864,3,1234,617,0,5864,6296,1,0,0,0,5865,5866,5,138,0,0,5866,5867,5,108,0,0,5867,5868,3,470,235,0,5868,5869,5,302,0,0,5869,5870,5,94,0,0,5870,5871,3,1234,617,0,5871,6296,1,0,0,0,5872,5873,5,138,0,0,5873,5874,5,168,0,0,5874,5875,3,470,235,0,5875,5876,5,302,0,0,5876,5877,5,94,0,0,5877,5878,3,1234,617,0,5878,6296,1,0,0,0,5879,5880,5,138,0,0,5880,5881,5,175,0,0,5881,5882,3,1210,605,0,5882,5883,5,302,0,0,5883,5884,5,94,0,0,5884,5885,3,1234,617,0,5885,6296,1,0,0,0,5886,5887,5,138,0,0,5887,5888,5,189,0,0,5888,5889,3,470,235,0,5889,5890,5,302,0,0,5890,5891,5,94,0,0,5891,5892,3,1234,617,0,5892,6296,1,0,0,0,5893,5894,5,138,0,0,5894,5895,5,189,0,0,5895,5896,3,470,235,0,5896,5897,5,302,0,0,5897,5898,5,45,0,0,5898,5899,3,1224,612,0,5899,5900,5,94,0,0,5900,5901,3,1234,617,0,5901,6296,1,0,0,0,5902,5903,5,138,0,0,5903,5904,5,63,0,0,5904,5905,5,174,0,0,5905,5906,5,374,0,0,5906,5907,3,1234,617,0,5907,5908,5,302,0,0,5908,5909,5,94,0,0,5909,5910,3,1234,617,0,5910,6296,1,0,0,0,5911,5912,5,138,0,0,5912,5913,5,211,0,0,5913,5914,3,560,280,0,5914,5915,5,302,0,0,5915,5916,5,94,0,0,5916,5917,3,1234,617,0,5917,6296,1,0,0,0,5918,5919,5,138,0,0,5919,5920,3,276,138,0,5920,5921,5,238,0,0,5921,5922,3,1234,617,0,5922,5923,5,302,0,0,5923,5924,5,94,0,0,5924,5925,3,1234,617,0,5925,6296,1,0,0,0,5926,5927,5,138,0,0,5927,5928,5,271,0,0,5928,5929,5,156,0,0,5929,5930,3,470,235,0,5930,5931,5,100,0,0,5931,5932,3,1234,617,0,5932,5933,5,302,0,0,5933,5934,5,94,0,0,5934,5935,3,1234,617,0,5935,6296,1,0,0,0,5936,5937,5,138,0,0,5937,5938,5,271,0,0,5938,5939,5,206,0,0,5939,5940,3,470,235,0,5940,5941,5,100,0,0,5941,5942,3,1234,617,0,5942,5943,5,302,0,0,5943,5944,5,94,0,0,5944,5945,3,1234,617,0,5945,6296,1,0,0,0,5946,5947,5,138,0,0,5947,5948,5,445,0,0,5948,5949,3,1234,617,0,5949,5950,5,80,0,0,5950,5951,3,1230,615,0,5951,5952,5,302,0,0,5952,5953,5,94,0,0,5953,5954,3,1234,617,0,5954,6296,1,0,0,0,5955,5956,5,138,0,0,5956,5957,5,445,0,0,5957,5958,5,220,0,0,5958,5959,5,389,0,0,5959,5960,3,1234,617,0,5960,5961,5,80,0,0,5961,5962,3,1230,615,0,5962,5963,5,302,0,0,5963,5964,5,94,0,0,5964,5965,3,1234,617,0,5965,6296,1,0,0,0,5966,5967,5,138,0,0,5967,5968,5,289,0,0,5968,5969,3,560,280,0,5969,5970,5,302,0,0,5970,5971,5,94,0,0,5971,5972,3,1234,617,0,5972,6296,1,0,0,0,5973,5974,5,138,0,0,5974,5975,5,452,0,0,5975,5976,3,1234,617,0,5976,5977,5,302,0,0,5977,5978,5,94,0,0,5978,5979,3,1234,617,0,5979,6296,1,0,0,0,5980,5981,5,138,0,0,5981,5982,5,442,0,0,5982,5983,3,560,280,0,5983,5984,5,302,0,0,5984,5985,5,94,0,0,5985,5986,3,1234,617,0,5986,6296,1,0,0,0,5987,5988,5,138,0,0,5988,5989,5,316,0,0,5989,5990,3,1214,607,0,5990,5991,5,302,0,0,5991,5992,5,94,0,0,5992,5993,3,1234,617,0,5993,6296,1,0,0,0,5994,5995,5,138,0,0,5995,5996,5,324,0,0,5996,5997,3,1234,617,0,5997,5998,5,302,0,0,5998,5999,5,94,0,0,5999,6e3,3,1234,617,0,6e3,6296,1,0,0,0,6001,6002,5,138,0,0,6002,6003,5,451,0,0,6003,6004,3,1234,617,0,6004,6005,5,302,0,0,6005,6006,5,94,0,0,6006,6007,3,1234,617,0,6007,6296,1,0,0,0,6008,6009,5,138,0,0,6009,6010,5,92,0,0,6010,6011,3,958,479,0,6011,6012,5,302,0,0,6012,6013,5,94,0,0,6013,6014,3,1234,617,0,6014,6296,1,0,0,0,6015,6016,5,138,0,0,6016,6017,5,92,0,0,6017,6018,5,220,0,0,6018,6019,5,389,0,0,6019,6020,3,958,479,0,6020,6021,5,302,0,0,6021,6022,5,94,0,0,6022,6023,3,1234,617,0,6023,6296,1,0,0,0,6024,6025,5,138,0,0,6025,6028,5,321,0,0,6026,6027,5,220,0,0,6027,6029,5,389,0,0,6028,6026,1,0,0,0,6028,6029,1,0,0,0,6029,6030,1,0,0,0,6030,6031,3,1226,613,0,6031,6032,5,302,0,0,6032,6033,5,94,0,0,6033,6034,3,1234,617,0,6034,6296,1,0,0,0,6035,6036,5,138,0,0,6036,6037,5,369,0,0,6037,6038,3,1230,615,0,6038,6039,5,302,0,0,6039,6040,5,94,0,0,6040,6041,3,1234,617,0,6041,6296,1,0,0,0,6042,6043,5,138,0,0,6043,6044,5,369,0,0,6044,6045,5,220,0,0,6045,6046,5,389,0,0,6046,6047,3,1230,615,0,6047,6048,5,302,0,0,6048,6049,5,94,0,0,6049,6050,3,1234,617,0,6050,6296,1,0,0,0,6051,6052,5,138,0,0,6052,6053,5,251,0,0,6053,6054,5,369,0,0,6054,6055,3,1230,615,0,6055,6056,5,302,0,0,6056,6057,5,94,0,0,6057,6058,3,1234,617,0,6058,6296,1,0,0,0,6059,6060,5,138,0,0,6060,6061,5,251,0,0,6061,6062,5,369,0,0,6062,6063,5,220,0,0,6063,6064,5,389,0,0,6064,6065,3,1230,615,0,6065,6066,5,302,0,0,6066,6067,5,94,0,0,6067,6068,3,1234,617,0,6068,6296,1,0,0,0,6069,6070,5,138,0,0,6070,6073,5,226,0,0,6071,6072,5,220,0,0,6072,6074,5,389,0,0,6073,6071,1,0,0,0,6073,6074,1,0,0,0,6074,6075,1,0,0,0,6075,6076,3,1218,609,0,6076,6077,5,302,0,0,6077,6078,5,94,0,0,6078,6079,3,1234,617,0,6079,6296,1,0,0,0,6080,6081,5,138,0,0,6081,6082,5,63,0,0,6082,6083,5,92,0,0,6083,6084,3,958,479,0,6084,6085,5,302,0,0,6085,6086,5,94,0,0,6086,6087,3,1234,617,0,6087,6296,1,0,0,0,6088,6089,5,138,0,0,6089,6090,5,63,0,0,6090,6091,5,92,0,0,6091,6092,5,220,0,0,6092,6093,5,389,0,0,6093,6094,3,958,479,0,6094,6095,5,302,0,0,6095,6096,5,94,0,0,6096,6097,3,1234,617,0,6097,6296,1,0,0,0,6098,6099,5,138,0,0,6099,6100,5,92,0,0,6100,6101,3,958,479,0,6101,6102,5,302,0,0,6102,6103,3,648,324,0,6103,6104,3,1234,617,0,6104,6105,5,94,0,0,6105,6106,3,1234,617,0,6106,6296,1,0,0,0,6107,6108,5,138,0,0,6108,6109,5,92,0,0,6109,6110,5,220,0,0,6110,6111,5,389,0,0,6111,6112,3,958,479,0,6112,6113,5,302,0,0,6113,6114,3,648,324,0,6114,6115,3,1234,617,0,6115,6116,5,94,0,0,6116,6117,3,1234,617,0,6117,6296,1,0,0,0,6118,6119,5,138,0,0,6119,6120,5,369,0,0,6120,6121,3,1230,615,0,6121,6122,5,302,0,0,6122,6123,3,648,324,0,6123,6124,3,1234,617,0,6124,6125,5,94,0,0,6125,6126,3,1234,617,0,6126,6296,1,0,0,0,6127,6128,5,138,0,0,6128,6129,5,369,0,0,6129,6130,5,220,0,0,6130,6131,5,389,0,0,6131,6132,3,1230,615,0,6132,6133,5,302,0,0,6133,6134,3,648,324,0,6134,6135,3,1234,617,0,6135,6136,5,94,0,0,6136,6137,3,1234,617,0,6137,6296,1,0,0,0,6138,6139,5,138,0,0,6139,6140,5,251,0,0,6140,6141,5,369,0,0,6141,6142,3,1230,615,0,6142,6143,5,302,0,0,6143,6144,3,648,324,0,6144,6145,3,1234,617,0,6145,6146,5,94,0,0,6146,6147,3,1234,617,0,6147,6296,1,0,0,0,6148,6149,5,138,0,0,6149,6150,5,251,0,0,6150,6151,5,369,0,0,6151,6152,5,220,0,0,6152,6153,5,389,0,0,6153,6154,3,1230,615,0,6154,6155,5,302,0,0,6155,6156,3,648,324,0,6156,6157,3,1234,617,0,6157,6158,5,94,0,0,6158,6159,3,1234,617,0,6159,6296,1,0,0,0,6160,6161,5,138,0,0,6161,6164,5,92,0,0,6162,6163,5,220,0,0,6163,6165,5,389,0,0,6164,6162,1,0,0,0,6164,6165,1,0,0,0,6165,6166,1,0,0,0,6166,6167,3,958,479,0,6167,6168,5,302,0,0,6168,6169,5,45,0,0,6169,6170,3,1224,612,0,6170,6171,5,94,0,0,6171,6172,3,1234,617,0,6172,6296,1,0,0,0,6173,6174,5,138,0,0,6174,6175,5,63,0,0,6175,6176,5,92,0,0,6176,6177,3,958,479,0,6177,6178,5,302,0,0,6178,6179,3,648,324,0,6179,6180,3,1234,617,0,6180,6181,5,94,0,0,6181,6182,3,1234,617,0,6182,6296,1,0,0,0,6183,6184,5,138,0,0,6184,6185,5,63,0,0,6185,6186,5,92,0,0,6186,6187,5,220,0,0,6187,6188,5,389,0,0,6188,6189,3,958,479,0,6189,6190,5,302,0,0,6190,6191,3,648,324,0,6191,6192,3,1234,617,0,6192,6193,5,94,0,0,6193,6194,3,1234,617,0,6194,6296,1,0,0,0,6195,6196,5,138,0,0,6196,6197,5,314,0,0,6197,6198,3,1234,617,0,6198,6199,5,80,0,0,6199,6200,3,1230,615,0,6200,6201,5,302,0,0,6201,6202,5,94,0,0,6202,6203,3,1234,617,0,6203,6296,1,0,0,0,6204,6205,5,138,0,0,6205,6206,5,350,0,0,6206,6207,3,1222,611,0,6207,6208,5,80,0,0,6208,6209,3,1230,615,0,6209,6210,5,302,0,0,6210,6211,5,94,0,0,6211,6212,3,1234,617,0,6212,6296,1,0,0,0,6213,6214,5,138,0,0,6214,6215,5,198,0,0,6215,6216,5,350,0,0,6216,6217,3,1234,617,0,6217,6218,5,302,0,0,6218,6219,5,94,0,0,6219,6220,3,1234,617,0,6220,6296,1,0,0,0,6221,6222,5,138,0,0,6222,6223,3,1506,753,0,6223,6224,3,1260,630,0,6224,6225,5,302,0,0,6225,6226,5,94,0,0,6226,6227,3,1260,630,0,6227,6296,1,0,0,0,6228,6229,5,138,0,0,6229,6230,5,344,0,0,6230,6231,3,1234,617,0,6231,6232,5,302,0,0,6232,6233,5,94,0,0,6233,6234,3,1234,617,0,6234,6296,1,0,0,0,6235,6236,5,138,0,0,6236,6237,5,335,0,0,6237,6238,3,470,235,0,6238,6239,5,302,0,0,6239,6240,5,94,0,0,6240,6241,3,1234,617,0,6241,6296,1,0,0,0,6242,6243,5,138,0,0,6243,6244,5,348,0,0,6244,6245,5,318,0,0,6245,6246,5,276,0,0,6246,6247,3,470,235,0,6247,6248,5,302,0,0,6248,6249,5,94,0,0,6249,6250,3,1234,617,0,6250,6296,1,0,0,0,6251,6252,5,138,0,0,6252,6253,5,348,0,0,6253,6254,5,318,0,0,6254,6255,5,185,0,0,6255,6256,3,470,235,0,6256,6257,5,302,0,0,6257,6258,5,94,0,0,6258,6259,3,1234,617,0,6259,6296,1,0,0,0,6260,6261,5,138,0,0,6261,6262,5,348,0,0,6262,6263,5,318,0,0,6263,6264,5,346,0,0,6264,6265,3,470,235,0,6265,6266,5,302,0,0,6266,6267,5,94,0,0,6267,6268,3,1234,617,0,6268,6296,1,0,0,0,6269,6270,5,138,0,0,6270,6271,5,348,0,0,6271,6272,5,318,0,0,6272,6273,5,163,0,0,6273,6274,3,470,235,0,6274,6275,5,302,0,0,6275,6276,5,94,0,0,6276,6277,3,1234,617,0,6277,6296,1,0,0,0,6278,6279,5,138,0,0,6279,6280,5,353,0,0,6280,6281,3,470,235,0,6281,6282,5,302,0,0,6282,6283,5,94,0,0,6283,6284,3,1234,617,0,6284,6296,1,0,0,0,6285,6286,5,138,0,0,6286,6287,5,353,0,0,6287,6288,3,470,235,0,6288,6289,5,302,0,0,6289,6290,5,143,0,0,6290,6291,3,1234,617,0,6291,6292,5,94,0,0,6292,6293,3,1234,617,0,6293,6294,3,100,50,0,6294,6296,1,0,0,0,6295,5858,1,0,0,0,6295,5865,1,0,0,0,6295,5872,1,0,0,0,6295,5879,1,0,0,0,6295,5886,1,0,0,0,6295,5893,1,0,0,0,6295,5902,1,0,0,0,6295,5911,1,0,0,0,6295,5918,1,0,0,0,6295,5926,1,0,0,0,6295,5936,1,0,0,0,6295,5946,1,0,0,0,6295,5955,1,0,0,0,6295,5966,1,0,0,0,6295,5973,1,0,0,0,6295,5980,1,0,0,0,6295,5987,1,0,0,0,6295,5994,1,0,0,0,6295,6001,1,0,0,0,6295,6008,1,0,0,0,6295,6015,1,0,0,0,6295,6024,1,0,0,0,6295,6035,1,0,0,0,6295,6042,1,0,0,0,6295,6051,1,0,0,0,6295,6059,1,0,0,0,6295,6069,1,0,0,0,6295,6080,1,0,0,0,6295,6088,1,0,0,0,6295,6098,1,0,0,0,6295,6107,1,0,0,0,6295,6118,1,0,0,0,6295,6127,1,0,0,0,6295,6138,1,0,0,0,6295,6148,1,0,0,0,6295,6160,1,0,0,0,6295,6173,1,0,0,0,6295,6183,1,0,0,0,6295,6195,1,0,0,0,6295,6204,1,0,0,0,6295,6213,1,0,0,0,6295,6221,1,0,0,0,6295,6228,1,0,0,0,6295,6235,1,0,0,0,6295,6242,1,0,0,0,6295,6251,1,0,0,0,6295,6260,1,0,0,0,6295,6269,1,0,0,0,6295,6278,1,0,0,0,6295,6285,1,0,0,0,6296,647,1,0,0,0,6297,6300,5,44,0,0,6298,6300,1,0,0,0,6299,6297,1,0,0,0,6299,6298,1,0,0,0,6300,649,1,0,0,0,6301,6302,5,326,0,0,6302,6305,5,174,0,0,6303,6305,1,0,0,0,6304,6301,1,0,0,0,6304,6303,1,0,0,0,6305,651,1,0,0,0,6306,6307,5,138,0,0,6307,6308,5,211,0,0,6308,6310,3,560,280,0,6309,6311,5,262,0,0,6310,6309,1,0,0,0,6310,6311,1,0,0,0,6311,6312,1,0,0,0,6312,6313,5,462,0,0,6313,6314,5,80,0,0,6314,6315,5,204,0,0,6315,6316,3,1234,617,0,6316,6376,1,0,0,0,6317,6318,5,138,0,0,6318,6319,5,289,0,0,6319,6321,3,560,280,0,6320,6322,5,262,0,0,6321,6320,1,0,0,0,6321,6322,1,0,0,0,6322,6323,1,0,0,0,6323,6324,5,462,0,0,6324,6325,5,80,0,0,6325,6326,5,204,0,0,6326,6327,3,1234,617,0,6327,6376,1,0,0,0,6328,6329,5,138,0,0,6329,6330,5,442,0,0,6330,6332,3,560,280,0,6331,6333,5,262,0,0,6332,6331,1,0,0,0,6332,6333,1,0,0,0,6333,6334,1,0,0,0,6334,6335,5,462,0,0,6335,6336,5,80,0,0,6336,6337,5,204,0,0,6337,6338,3,1234,617,0,6338,6376,1,0,0,0,6339,6340,5,138,0,0,6340,6341,5,350,0,0,6341,6342,3,1222,611,0,6342,6343,5,80,0,0,6343,6345,3,1230,615,0,6344,6346,5,262,0,0,6345,6344,1,0,0,0,6345,6346,1,0,0,0,6346,6347,1,0,0,0,6347,6348,5,462,0,0,6348,6349,5,80,0,0,6349,6350,5,204,0,0,6350,6351,3,1234,617,0,6351,6376,1,0,0,0,6352,6353,5,138,0,0,6353,6354,5,251,0,0,6354,6355,5,369,0,0,6355,6357,3,1230,615,0,6356,6358,5,262,0,0,6357,6356,1,0,0,0,6357,6358,1,0,0,0,6358,6359,1,0,0,0,6359,6360,5,462,0,0,6360,6361,5,80,0,0,6361,6362,5,204,0,0,6362,6363,3,1234,617,0,6363,6376,1,0,0,0,6364,6365,5,138,0,0,6365,6366,5,226,0,0,6366,6368,3,1218,609,0,6367,6369,5,262,0,0,6368,6367,1,0,0,0,6368,6369,1,0,0,0,6369,6370,1,0,0,0,6370,6371,5,462,0,0,6371,6372,5,80,0,0,6372,6373,5,204,0,0,6373,6374,3,1234,617,0,6374,6376,1,0,0,0,6375,6306,1,0,0,0,6375,6317,1,0,0,0,6375,6328,1,0,0,0,6375,6339,1,0,0,0,6375,6352,1,0,0,0,6375,6364,1,0,0,0,6376,653,1,0,0,0,6377,6378,5,138,0,0,6378,6379,5,136,0,0,6379,6380,3,580,290,0,6380,6381,5,326,0,0,6381,6382,5,316,0,0,6382,6383,3,1214,607,0,6383,6590,1,0,0,0,6384,6385,5,138,0,0,6385,6386,5,108,0,0,6386,6387,3,470,235,0,6387,6388,5,326,0,0,6388,6389,5,316,0,0,6389,6390,3,1214,607,0,6390,6590,1,0,0,0,6391,6392,5,138,0,0,6392,6393,5,168,0,0,6393,6394,3,470,235,0,6394,6395,5,326,0,0,6395,6396,5,316,0,0,6396,6397,3,1214,607,0,6397,6590,1,0,0,0,6398,6399,5,138,0,0,6399,6400,5,189,0,0,6400,6401,3,470,235,0,6401,6402,5,326,0,0,6402,6403,5,316,0,0,6403,6404,3,1214,607,0,6404,6590,1,0,0,0,6405,6406,5,138,0,0,6406,6407,5,204,0,0,6407,6408,3,1234,617,0,6408,6409,5,326,0,0,6409,6410,5,316,0,0,6410,6411,3,1214,607,0,6411,6590,1,0,0,0,6412,6413,5,138,0,0,6413,6414,5,211,0,0,6414,6415,3,560,280,0,6415,6416,5,326,0,0,6416,6417,5,316,0,0,6417,6418,3,1214,607,0,6418,6590,1,0,0,0,6419,6420,5,138,0,0,6420,6421,5,271,0,0,6421,6422,3,614,307,0,6422,6423,5,326,0,0,6423,6424,5,316,0,0,6424,6425,3,1214,607,0,6425,6590,1,0,0,0,6426,6427,5,138,0,0,6427,6428,5,271,0,0,6428,6429,5,156,0,0,6429,6430,3,470,235,0,6430,6431,5,100,0,0,6431,6432,3,1234,617,0,6432,6433,5,326,0,0,6433,6434,5,316,0,0,6434,6435,3,1214,607,0,6435,6590,1,0,0,0,6436,6437,5,138,0,0,6437,6438,5,271,0,0,6438,6439,5,206,0,0,6439,6440,3,470,235,0,6440,6441,5,100,0,0,6441,6442,3,1234,617,0,6442,6443,5,326,0,0,6443,6444,5,316,0,0,6444,6445,3,1214,607,0,6445,6590,1,0,0,0,6446,6447,5,138,0,0,6447,6448,5,289,0,0,6448,6449,3,560,280,0,6449,6450,5,326,0,0,6450,6451,5,316,0,0,6451,6452,3,1214,607,0,6452,6590,1,0,0,0,6453,6454,5,138,0,0,6454,6455,5,442,0,0,6455,6456,3,560,280,0,6456,6457,5,326,0,0,6457,6458,5,316,0,0,6458,6459,3,1214,607,0,6459,6590,1,0,0,0,6460,6461,5,138,0,0,6461,6462,5,92,0,0,6462,6463,3,958,479,0,6463,6464,5,326,0,0,6464,6465,5,316,0,0,6465,6466,3,1214,607,0,6466,6590,1,0,0,0,6467,6468,5,138,0,0,6468,6469,5,92,0,0,6469,6470,5,220,0,0,6470,6471,5,389,0,0,6471,6472,3,958,479,0,6472,6473,5,326,0,0,6473,6474,5,316,0,0,6474,6475,3,1214,607,0,6475,6590,1,0,0,0,6476,6477,5,138,0,0,6477,6478,5,335,0,0,6478,6479,3,470,235,0,6479,6480,5,326,0,0,6480,6481,5,316,0,0,6481,6482,3,1214,607,0,6482,6590,1,0,0,0,6483,6484,5,138,0,0,6484,6485,5,348,0,0,6485,6486,5,318,0,0,6486,6487,5,276,0,0,6487,6488,3,470,235,0,6488,6489,5,326,0,0,6489,6490,5,316,0,0,6490,6491,3,1214,607,0,6491,6590,1,0,0,0,6492,6493,5,138,0,0,6493,6494,5,348,0,0,6494,6495,5,318,0,0,6495,6496,5,185,0,0,6496,6497,3,470,235,0,6497,6498,5,326,0,0,6498,6499,5,316,0,0,6499,6500,3,1214,607,0,6500,6590,1,0,0,0,6501,6502,5,138,0,0,6502,6503,5,348,0,0,6503,6504,5,318,0,0,6504,6505,5,346,0,0,6505,6506,3,470,235,0,6506,6507,5,326,0,0,6507,6508,5,316,0,0,6508,6509,3,1214,607,0,6509,6590,1,0,0,0,6510,6511,5,138,0,0,6511,6512,5,348,0,0,6512,6513,5,318,0,0,6513,6514,5,163,0,0,6514,6515,3,470,235,0,6515,6516,5,326,0,0,6516,6517,5,316,0,0,6517,6518,3,1214,607,0,6518,6590,1,0,0,0,6519,6520,5,138,0,0,6520,6523,5,321,0,0,6521,6522,5,220,0,0,6522,6524,5,389,0,0,6523,6521,1,0,0,0,6523,6524,1,0,0,0,6524,6525,1,0,0,0,6525,6526,3,1226,613,0,6526,6527,5,326,0,0,6527,6528,5,316,0,0,6528,6529,3,1214,607,0,6529,6590,1,0,0,0,6530,6531,5,138,0,0,6531,6532,5,369,0,0,6532,6533,3,1230,615,0,6533,6534,5,326,0,0,6534,6535,5,316,0,0,6535,6536,3,1214,607,0,6536,6590,1,0,0,0,6537,6538,5,138,0,0,6538,6539,5,369,0,0,6539,6540,5,220,0,0,6540,6541,5,389,0,0,6541,6542,3,1230,615,0,6542,6543,5,326,0,0,6543,6544,5,316,0,0,6544,6545,3,1214,607,0,6545,6590,1,0,0,0,6546,6547,5,138,0,0,6547,6548,5,251,0,0,6548,6549,5,369,0,0,6549,6550,3,1230,615,0,6550,6551,5,326,0,0,6551,6552,5,316,0,0,6552,6553,3,1214,607,0,6553,6590,1,0,0,0,6554,6555,5,138,0,0,6555,6556,5,251,0,0,6556,6557,5,369,0,0,6557,6558,5,220,0,0,6558,6559,5,389,0,0,6559,6560,3,1230,615,0,6560,6561,5,326,0,0,6561,6562,5,316,0,0,6562,6563,3,1214,607,0,6563,6590,1,0,0,0,6564,6565,5,138,0,0,6565,6566,5,63,0,0,6566,6567,5,92,0,0,6567,6568,3,958,479,0,6568,6569,5,326,0,0,6569,6570,5,316,0,0,6570,6571,3,1214,607,0,6571,6590,1,0,0,0,6572,6573,5,138,0,0,6573,6574,5,63,0,0,6574,6575,5,92,0,0,6575,6576,5,220,0,0,6576,6577,5,389,0,0,6577,6578,3,958,479,0,6578,6579,5,326,0,0,6579,6580,5,316,0,0,6580,6581,3,1214,607,0,6581,6590,1,0,0,0,6582,6583,5,138,0,0,6583,6584,5,353,0,0,6584,6585,3,470,235,0,6585,6586,5,326,0,0,6586,6587,5,316,0,0,6587,6588,3,1214,607,0,6588,6590,1,0,0,0,6589,6377,1,0,0,0,6589,6384,1,0,0,0,6589,6391,1,0,0,0,6589,6398,1,0,0,0,6589,6405,1,0,0,0,6589,6412,1,0,0,0,6589,6419,1,0,0,0,6589,6426,1,0,0,0,6589,6436,1,0,0,0,6589,6446,1,0,0,0,6589,6453,1,0,0,0,6589,6460,1,0,0,0,6589,6467,1,0,0,0,6589,6476,1,0,0,0,6589,6483,1,0,0,0,6589,6492,1,0,0,0,6589,6501,1,0,0,0,6589,6510,1,0,0,0,6589,6519,1,0,0,0,6589,6530,1,0,0,0,6589,6537,1,0,0,0,6589,6546,1,0,0,0,6589,6554,1,0,0,0,6589,6564,1,0,0,0,6589,6572,1,0,0,0,6589,6582,1,0,0,0,6590,655,1,0,0,0,6591,6592,5,138,0,0,6592,6593,5,271,0,0,6593,6594,3,614,307,0,6594,6595,5,326,0,0,6595,6596,5,2,0,0,6596,6597,3,658,329,0,6597,6598,5,3,0,0,6598,657,1,0,0,0,6599,6604,3,660,330,0,6600,6601,5,6,0,0,6601,6603,3,660,330,0,6602,6600,1,0,0,0,6603,6606,1,0,0,0,6604,6602,1,0,0,0,6604,6605,1,0,0,0,6605,659,1,0,0,0,6606,6604,1,0,0,0,6607,6608,3,1272,636,0,6608,6609,5,10,0,0,6609,6610,5,400,0,0,6610,6616,1,0,0,0,6611,6612,3,1272,636,0,6612,6613,5,10,0,0,6613,6614,3,662,331,0,6614,6616,1,0,0,0,6615,6607,1,0,0,0,6615,6611,1,0,0,0,6616,661,1,0,0,0,6617,6623,3,574,287,0,6618,6623,3,1284,642,0,6619,6623,3,1152,576,0,6620,6623,3,264,132,0,6621,6623,3,1252,626,0,6622,6617,1,0,0,0,6622,6618,1,0,0,0,6622,6619,1,0,0,0,6622,6620,1,0,0,0,6622,6621,1,0,0,0,6623,663,1,0,0,0,6624,6625,5,138,0,0,6625,6626,5,353,0,0,6626,6627,3,470,235,0,6627,6628,5,326,0,0,6628,6629,5,2,0,0,6629,6630,3,658,329,0,6630,6631,5,3,0,0,6631,665,1,0,0,0,6632,6633,5,138,0,0,6633,6634,5,136,0,0,6634,6635,3,580,290,0,6635,6636,5,275,0,0,6636,6637,5,94,0,0,6637,6638,3,1260,630,0,6638,6816,1,0,0,0,6639,6640,5,138,0,0,6640,6641,5,108,0,0,6641,6642,3,470,235,0,6642,6643,5,275,0,0,6643,6644,5,94,0,0,6644,6645,3,1260,630,0,6645,6816,1,0,0,0,6646,6647,5,138,0,0,6647,6648,5,168,0,0,6648,6649,3,470,235,0,6649,6650,5,275,0,0,6650,6651,5,94,0,0,6651,6652,3,1260,630,0,6652,6816,1,0,0,0,6653,6654,5,138,0,0,6654,6655,5,175,0,0,6655,6656,3,1210,605,0,6656,6657,5,275,0,0,6657,6658,5,94,0,0,6658,6659,3,1260,630,0,6659,6816,1,0,0,0,6660,6661,5,138,0,0,6661,6662,5,189,0,0,6662,6663,3,470,235,0,6663,6664,5,275,0,0,6664,6665,5,94,0,0,6665,6666,3,1260,630,0,6666,6816,1,0,0,0,6667,6668,5,138,0,0,6668,6669,5,211,0,0,6669,6670,3,560,280,0,6670,6671,5,275,0,0,6671,6672,5,94,0,0,6672,6673,3,1260,630,0,6673,6816,1,0,0,0,6674,6675,5,138,0,0,6675,6676,3,276,138,0,6676,6677,5,238,0,0,6677,6678,3,1234,617,0,6678,6679,5,275,0,0,6679,6680,5,94,0,0,6680,6681,3,1260,630,0,6681,6816,1,0,0,0,6682,6683,5,138,0,0,6683,6684,5,239,0,0,6684,6685,5,267,0,0,6685,6686,3,264,132,0,6686,6687,5,275,0,0,6687,6688,5,94,0,0,6688,6689,3,1260,630,0,6689,6816,1,0,0,0,6690,6691,5,138,0,0,6691,6692,5,271,0,0,6692,6693,3,614,307,0,6693,6694,5,275,0,0,6694,6695,5,94,0,0,6695,6696,3,1260,630,0,6696,6816,1,0,0,0,6697,6698,5,138,0,0,6698,6699,5,271,0,0,6699,6700,5,156,0,0,6700,6701,3,470,235,0,6701,6702,5,100,0,0,6702,6703,3,1234,617,0,6703,6704,5,275,0,0,6704,6705,5,94,0,0,6705,6706,3,1260,630,0,6706,6816,1,0,0,0,6707,6708,5,138,0,0,6708,6709,5,271,0,0,6709,6710,5,206,0,0,6710,6711,3,470,235,0,6711,6712,5,100,0,0,6712,6713,3,1234,617,0,6713,6714,5,275,0,0,6714,6715,5,94,0,0,6715,6716,3,1260,630,0,6716,6816,1,0,0,0,6717,6718,5,138,0,0,6718,6719,5,289,0,0,6719,6720,3,560,280,0,6720,6721,5,275,0,0,6721,6722,5,94,0,0,6722,6723,3,1260,630,0,6723,6816,1,0,0,0,6724,6725,5,138,0,0,6725,6726,5,442,0,0,6726,6727,3,560,280,0,6727,6728,5,275,0,0,6728,6729,5,94,0,0,6729,6730,3,1260,630,0,6730,6816,1,0,0,0,6731,6732,5,138,0,0,6732,6733,5,316,0,0,6733,6734,3,1214,607,0,6734,6735,5,275,0,0,6735,6736,5,94,0,0,6736,6737,3,1260,630,0,6737,6816,1,0,0,0,6738,6739,5,138,0,0,6739,6740,5,353,0,0,6740,6741,3,470,235,0,6741,6742,5,275,0,0,6742,6743,5,94,0,0,6743,6744,3,1260,630,0,6744,6816,1,0,0,0,6745,6746,5,138,0,0,6746,6747,5,344,0,0,6747,6748,3,1234,617,0,6748,6749,5,275,0,0,6749,6750,5,94,0,0,6750,6751,3,1260,630,0,6751,6816,1,0,0,0,6752,6753,5,138,0,0,6753,6754,5,335,0,0,6754,6755,3,470,235,0,6755,6756,5,275,0,0,6756,6757,5,94,0,0,6757,6758,3,1260,630,0,6758,6816,1,0,0,0,6759,6760,5,138,0,0,6760,6761,5,348,0,0,6761,6762,5,318,0,0,6762,6763,5,185,0,0,6763,6764,3,470,235,0,6764,6765,5,275,0,0,6765,6766,5,94,0,0,6766,6767,3,1260,630,0,6767,6816,1,0,0,0,6768,6769,5,138,0,0,6769,6770,5,348,0,0,6770,6771,5,318,0,0,6771,6772,5,163,0,0,6772,6773,3,470,235,0,6773,6774,5,275,0,0,6774,6775,5,94,0,0,6775,6776,3,1260,630,0,6776,6816,1,0,0,0,6777,6778,5,138,0,0,6778,6779,5,63,0,0,6779,6780,5,174,0,0,6780,6781,5,374,0,0,6781,6782,3,1234,617,0,6782,6783,5,275,0,0,6783,6784,5,94,0,0,6784,6785,3,1260,630,0,6785,6816,1,0,0,0,6786,6787,5,138,0,0,6787,6788,5,324,0,0,6788,6789,3,1234,617,0,6789,6790,5,275,0,0,6790,6791,5,94,0,0,6791,6792,3,1260,630,0,6792,6816,1,0,0,0,6793,6794,5,138,0,0,6794,6795,5,198,0,0,6795,6796,5,350,0,0,6796,6797,3,1234,617,0,6797,6798,5,275,0,0,6798,6799,5,94,0,0,6799,6800,3,1260,630,0,6800,6816,1,0,0,0,6801,6802,5,138,0,0,6802,6803,5,452,0,0,6803,6804,3,1234,617,0,6804,6805,5,275,0,0,6805,6806,5,94,0,0,6806,6807,3,1260,630,0,6807,6816,1,0,0,0,6808,6809,5,138,0,0,6809,6810,5,451,0,0,6810,6811,3,1234,617,0,6811,6812,5,275,0,0,6812,6813,5,94,0,0,6813,6814,3,1260,630,0,6814,6816,1,0,0,0,6815,6632,1,0,0,0,6815,6639,1,0,0,0,6815,6646,1,0,0,0,6815,6653,1,0,0,0,6815,6660,1,0,0,0,6815,6667,1,0,0,0,6815,6674,1,0,0,0,6815,6682,1,0,0,0,6815,6690,1,0,0,0,6815,6697,1,0,0,0,6815,6707,1,0,0,0,6815,6717,1,0,0,0,6815,6724,1,0,0,0,6815,6731,1,0,0,0,6815,6738,1,0,0,0,6815,6745,1,0,0,0,6815,6752,1,0,0,0,6815,6759,1,0,0,0,6815,6768,1,0,0,0,6815,6777,1,0,0,0,6815,6786,1,0,0,0,6815,6793,1,0,0,0,6815,6801,1,0,0,0,6815,6808,1,0,0,0,6816,667,1,0,0,0,6817,6818,5,46,0,0,6818,6819,5,452,0,0,6819,6820,3,1234,617,0,6820,6821,3,670,335,0,6821,6822,3,594,297,0,6822,669,1,0,0,0,6823,6826,3,672,336,0,6824,6826,1,0,0,0,6825,6823,1,0,0,0,6825,6824,1,0,0,0,6826,671,1,0,0,0,6827,6828,5,62,0,0,6828,6829,5,92,0,0,6829,6834,3,960,480,0,6830,6831,5,62,0,0,6831,6832,5,30,0,0,6832,6834,5,343,0,0,6833,6827,1,0,0,0,6833,6830,1,0,0,0,6834,673,1,0,0,0,6835,6836,5,138,0,0,6836,6837,5,452,0,0,6837,6838,3,1234,617,0,6838,6839,5,326,0,0,6839,6840,3,416,208,0,6840,6863,1,0,0,0,6841,6842,5,138,0,0,6842,6843,5,452,0,0,6843,6844,3,1234,617,0,6844,6845,5,133,0,0,6845,6846,5,92,0,0,6846,6847,3,960,480,0,6847,6863,1,0,0,0,6848,6849,5,138,0,0,6849,6850,5,452,0,0,6850,6851,3,1234,617,0,6851,6852,5,326,0,0,6852,6853,5,92,0,0,6853,6854,3,960,480,0,6854,6863,1,0,0,0,6855,6856,5,138,0,0,6856,6857,5,452,0,0,6857,6858,3,1234,617,0,6858,6859,5,191,0,0,6859,6860,5,92,0,0,6860,6861,3,960,480,0,6861,6863,1,0,0,0,6862,6835,1,0,0,0,6862,6841,1,0,0,0,6862,6848,1,0,0,0,6862,6855,1,0,0,0,6863,675,1,0,0,0,6864,6865,5,46,0,0,6865,6866,5,451,0,0,6866,6867,3,1234,617,0,6867,6868,5,164,0,0,6868,6869,3,1252,626,0,6869,6870,5,452,0,0,6870,6871,3,678,339,0,6871,6872,3,594,297,0,6872,677,1,0,0,0,6873,6878,3,680,340,0,6874,6875,5,6,0,0,6875,6877,3,680,340,0,6876,6874,1,0,0,0,6877,6880,1,0,0,0,6878,6876,1,0,0,0,6878,6879,1,0,0,0,6879,679,1,0,0,0,6880,6878,1,0,0,0,6881,6882,3,1272,636,0,6882,681,1,0,0,0,6883,6884,5,138,0,0,6884,6885,5,451,0,0,6885,6886,3,1234,617,0,6886,6887,5,326,0,0,6887,6888,3,416,208,0,6888,6921,1,0,0,0,6889,6890,5,138,0,0,6890,6891,5,451,0,0,6891,6892,3,1234,617,0,6892,6893,5,164,0,0,6893,6894,3,1252,626,0,6894,6921,1,0,0,0,6895,6896,5,138,0,0,6896,6897,5,451,0,0,6897,6898,3,1234,617,0,6898,6899,5,298,0,0,6899,6900,5,452,0,0,6900,6901,3,594,297,0,6901,6921,1,0,0,0,6902,6903,5,138,0,0,6903,6904,5,451,0,0,6904,6905,3,1234,617,0,6905,6906,5,326,0,0,6906,6907,5,452,0,0,6907,6908,3,678,339,0,6908,6909,3,594,297,0,6909,6921,1,0,0,0,6910,6911,5,138,0,0,6911,6912,5,451,0,0,6912,6913,3,1234,617,0,6913,6914,5,193,0,0,6914,6921,1,0,0,0,6915,6916,5,138,0,0,6916,6917,5,451,0,0,6917,6918,3,1234,617,0,6918,6919,5,186,0,0,6919,6921,1,0,0,0,6920,6883,1,0,0,0,6920,6889,1,0,0,0,6920,6895,1,0,0,0,6920,6902,1,0,0,0,6920,6910,1,0,0,0,6920,6915,1,0,0,0,6921,683,1,0,0,0,6922,6923,5,191,0,0,6923,6924,5,451,0,0,6924,6925,3,1234,617,0,6925,6926,3,100,50,0,6926,6935,1,0,0,0,6927,6928,5,191,0,0,6928,6929,5,451,0,0,6929,6930,5,220,0,0,6930,6931,5,389,0,0,6931,6932,3,1234,617,0,6932,6933,3,100,50,0,6933,6935,1,0,0,0,6934,6922,1,0,0,0,6934,6927,1,0,0,0,6935,685,1,0,0,0,6936,6937,5,46,0,0,6937,6938,3,554,277,0,6938,6939,5,314,0,0,6939,6940,3,1234,617,0,6940,6941,5,36,0,0,6941,6942,5,80,0,0,6942,6943,3,696,348,0,6943,6944,5,94,0,0,6944,6945,3,1230,615,0,6945,6946,3,974,487,0,6946,6947,5,57,0,0,6947,6948,3,698,349,0,6948,6949,3,688,344,0,6949,687,1,0,0,0,6950,6957,5,263,0,0,6951,6957,3,692,346,0,6952,6953,5,2,0,0,6953,6954,3,690,345,0,6954,6955,5,3,0,0,6955,6957,1,0,0,0,6956,6950,1,0,0,0,6956,6951,1,0,0,0,6956,6952,1,0,0,0,6957,689,1,0,0,0,6958,6963,3,694,347,0,6959,6960,5,7,0,0,6960,6962,3,694,347,0,6961,6959,1,0,0,0,6962,6965,1,0,0,0,6963,6961,1,0,0,0,6963,6964,1,0,0,0,6964,691,1,0,0,0,6965,6963,1,0,0,0,6966,6972,3,858,429,0,6967,6972,3,804,402,0,6968,6972,3,844,422,0,6969,6972,3,830,415,0,6970,6972,3,700,350,0,6971,6966,1,0,0,0,6971,6967,1,0,0,0,6971,6968,1,0,0,0,6971,6969,1,0,0,0,6971,6970,1,0,0,0,6972,693,1,0,0,0,6973,6976,3,692,346,0,6974,6976,1,0,0,0,6975,6973,1,0,0,0,6975,6974,1,0,0,0,6976,695,1,0,0,0,6977,6978,7,30,0,0,6978,697,1,0,0,0,6979,6983,5,233,0,0,6980,6983,5,137,0,0,6981,6983,1,0,0,0,6982,6979,1,0,0,0,6982,6980,1,0,0,0,6982,6981,1,0,0,0,6983,699,1,0,0,0,6984,6985,5,264,0,0,6985,6986,3,1264,632,0,6986,6987,3,702,351,0,6987,701,1,0,0,0,6988,6989,5,6,0,0,6989,6992,3,1252,626,0,6990,6992,1,0,0,0,6991,6988,1,0,0,0,6991,6990,1,0,0,0,6992,703,1,0,0,0,6993,6994,5,243,0,0,6994,6995,3,1264,632,0,6995,705,1,0,0,0,6996,6997,5,359,0,0,6997,7001,3,1264,632,0,6998,6999,5,359,0,0,6999,7001,5,9,0,0,7e3,6996,1,0,0,0,7e3,6998,1,0,0,0,7001,707,1,0,0,0,7002,7003,5,129,0,0,7003,7004,3,710,355,0,7004,7005,3,716,358,0,7005,7056,1,0,0,0,7006,7007,5,146,0,0,7007,7009,3,710,355,0,7008,7010,3,714,357,0,7009,7008,1,0,0,0,7009,7010,1,0,0,0,7010,7056,1,0,0,0,7011,7012,5,333,0,0,7012,7014,5,349,0,0,7013,7015,3,714,357,0,7014,7013,1,0,0,0,7014,7015,1,0,0,0,7015,7056,1,0,0,0,7016,7017,5,161,0,0,7017,7018,3,710,355,0,7018,7019,3,716,358,0,7019,7056,1,0,0,0,7020,7021,5,454,0,0,7021,7022,3,710,355,0,7022,7023,3,716,358,0,7023,7056,1,0,0,0,7024,7025,5,312,0,0,7025,7026,3,710,355,0,7026,7027,3,716,358,0,7027,7056,1,0,0,0,7028,7029,5,315,0,0,7029,7056,3,1264,632,0,7030,7031,5,301,0,0,7031,7032,5,315,0,0,7032,7056,3,1264,632,0,7033,7034,5,301,0,0,7034,7056,3,1264,632,0,7035,7036,5,312,0,0,7036,7037,3,710,355,0,7037,7038,5,94,0,0,7038,7039,5,315,0,0,7039,7040,3,1264,632,0,7040,7056,1,0,0,0,7041,7042,5,312,0,0,7042,7043,3,710,355,0,7043,7044,5,94,0,0,7044,7045,3,1264,632,0,7045,7056,1,0,0,0,7046,7047,5,283,0,0,7047,7048,5,349,0,0,7048,7056,3,1252,626,0,7049,7050,5,161,0,0,7050,7051,5,284,0,0,7051,7056,3,1252,626,0,7052,7053,5,312,0,0,7053,7054,5,284,0,0,7054,7056,3,1252,626,0,7055,7002,1,0,0,0,7055,7006,1,0,0,0,7055,7011,1,0,0,0,7055,7016,1,0,0,0,7055,7020,1,0,0,0,7055,7024,1,0,0,0,7055,7028,1,0,0,0,7055,7030,1,0,0,0,7055,7033,1,0,0,0,7055,7035,1,0,0,0,7055,7041,1,0,0,0,7055,7046,1,0,0,0,7055,7049,1,0,0,0,7055,7052,1,0,0,0,7056,709,1,0,0,0,7057,7061,5,373,0,0,7058,7061,5,349,0,0,7059,7061,1,0,0,0,7060,7057,1,0,0,0,7060,7058,1,0,0,0,7060,7059,1,0,0,0,7061,711,1,0,0,0,7062,7063,5,235,0,0,7063,7064,5,242,0,0,7064,7073,3,56,28,0,7065,7066,5,293,0,0,7066,7073,5,81,0,0,7067,7068,5,293,0,0,7068,7073,5,375,0,0,7069,7073,5,54,0,0,7070,7071,5,77,0,0,7071,7073,5,54,0,0,7072,7062,1,0,0,0,7072,7065,1,0,0,0,7072,7067,1,0,0,0,7072,7069,1,0,0,0,7072,7070,1,0,0,0,7073,713,1,0,0,0,7074,7081,3,712,356,0,7075,7077,5,6,0,0,7076,7075,1,0,0,0,7076,7077,1,0,0,0,7077,7078,1,0,0,0,7078,7080,3,712,356,0,7079,7076,1,0,0,0,7080,7083,1,0,0,0,7081,7079,1,0,0,0,7081,7082,1,0,0,0,7082,715,1,0,0,0,7083,7081,1,0,0,0,7084,7086,5,33,0,0,7085,7087,5,262,0,0,7086,7085,1,0,0,0,7086,7087,1,0,0,0,7087,7088,1,0,0,0,7088,7091,5,153,0,0,7089,7091,1,0,0,0,7090,7084,1,0,0,0,7090,7089,1,0,0,0,7091,717,1,0,0,0,7092,7095,5,46,0,0,7093,7094,5,82,0,0,7094,7096,5,304,0,0,7095,7093,1,0,0,0,7095,7096,1,0,0,0,7096,7097,1,0,0,0,7097,7111,3,154,77,0,7098,7099,5,369,0,0,7099,7100,3,1230,615,0,7100,7101,3,192,96,0,7101,7102,3,110,55,0,7102,7112,1,0,0,0,7103,7104,5,296,0,0,7104,7105,5,369,0,0,7105,7106,3,1230,615,0,7106,7107,5,2,0,0,7107,7108,3,194,97,0,7108,7109,5,3,0,0,7109,7110,3,110,55,0,7110,7112,1,0,0,0,7111,7098,1,0,0,0,7111,7103,1,0,0,0,7112,7113,1,0,0,0,7113,7114,5,36,0,0,7114,7115,3,858,429,0,7115,7116,3,720,360,0,7116,719,1,0,0,0,7117,7119,5,105,0,0,7118,7120,7,31,0,0,7119,7118,1,0,0,0,7119,7120,1,0,0,0,7120,7121,1,0,0,0,7121,7122,5,42,0,0,7122,7125,5,272,0,0,7123,7125,1,0,0,0,7124,7117,1,0,0,0,7124,7123,1,0,0,0,7125,721,1,0,0,0,7126,7127,5,244,0,0,7127,7128,3,1238,619,0,7128,723,1,0,0,0,7129,7130,5,46,0,0,7130,7131,5,175,0,0,7131,7132,3,1234,617,0,7132,7133,3,12,6,0,7133,7134,3,726,363,0,7134,725,1,0,0,0,7135,7137,3,728,364,0,7136,7135,1,0,0,0,7137,7138,1,0,0,0,7138,7136,1,0,0,0,7138,7139,1,0,0,0,7139,7142,1,0,0,0,7140,7142,1,0,0,0,7141,7136,1,0,0,0,7141,7140,1,0,0,0,7142,727,1,0,0,0,7143,7145,3,730,365,0,7144,7146,5,10,0,0,7145,7144,1,0,0,0,7145,7146,1,0,0,0,7146,7150,1,0,0,0,7147,7151,3,1258,629,0,7148,7151,3,58,29,0,7149,7151,5,53,0,0,7150,7147,1,0,0,0,7150,7148,1,0,0,0,7150,7149,1,0,0,0,7151,729,1,0,0,0,7152,7161,3,1274,637,0,7153,7154,5,164,0,0,7154,7161,5,74,0,0,7155,7161,5,194,0,0,7156,7161,5,246,0,0,7157,7161,5,275,0,0,7158,7161,5,344,0,0,7159,7161,5,346,0,0,7160,7152,1,0,0,0,7160,7153,1,0,0,0,7160,7155,1,0,0,0,7160,7156,1,0,0,0,7160,7157,1,0,0,0,7160,7158,1,0,0,0,7160,7159,1,0,0,0,7161,731,1,0,0,0,7162,7163,5,138,0,0,7163,7164,5,175,0,0,7164,7171,3,1210,605,0,7165,7166,5,105,0,0,7166,7172,3,726,363,0,7167,7172,3,726,363,0,7168,7169,5,326,0,0,7169,7170,5,344,0,0,7170,7172,3,1234,617,0,7171,7165,1,0,0,0,7171,7167,1,0,0,0,7171,7168,1,0,0,0,7172,733,1,0,0,0,7173,7174,5,138,0,0,7174,7175,5,175,0,0,7175,7176,3,1210,605,0,7176,7177,3,72,36,0,7177,735,1,0,0,0,7178,7179,5,191,0,0,7179,7182,5,175,0,0,7180,7181,5,220,0,0,7181,7183,5,389,0,0,7182,7180,1,0,0,0,7182,7183,1,0,0,0,7183,7184,1,0,0,0,7184,7197,3,1210,605,0,7185,7186,3,12,6,0,7186,7187,5,2,0,0,7187,7192,5,209,0,0,7188,7189,5,6,0,0,7189,7191,5,209,0,0,7190,7188,1,0,0,0,7191,7194,1,0,0,0,7192,7190,1,0,0,0,7192,7193,1,0,0,0,7193,7195,1,0,0,0,7194,7192,1,0,0,0,7195,7196,5,3,0,0,7196,7198,1,0,0,0,7197,7185,1,0,0,0,7197,7198,1,0,0,0,7198,737,1,0,0,0,7199,7200,5,138,0,0,7200,7201,5,108,0,0,7201,7202,3,470,235,0,7202,7203,5,298,0,0,7203,7204,5,368,0,0,7204,739,1,0,0,0,7205,7206,5,138,0,0,7206,7207,5,342,0,0,7207,7208,7,32,0,0,7208,7209,3,46,23,0,7209,741,1,0,0,0,7210,7211,5,46,0,0,7211,7212,5,189,0,0,7212,7213,3,470,235,0,7213,7214,3,748,374,0,7214,7215,3,996,498,0,7215,7216,3,172,86,0,7216,743,1,0,0,0,7217,7218,5,138,0,0,7218,7219,5,189,0,0,7219,7220,3,470,235,0,7220,7221,3,746,373,0,7221,745,1,0,0,0,7222,7244,3,98,49,0,7223,7224,5,191,0,0,7224,7225,5,77,0,0,7225,7244,5,78,0,0,7226,7227,5,326,0,0,7227,7228,5,77,0,0,7228,7244,5,78,0,0,7229,7230,5,133,0,0,7230,7244,3,188,94,0,7231,7232,5,191,0,0,7232,7235,5,45,0,0,7233,7234,5,220,0,0,7234,7236,5,389,0,0,7235,7233,1,0,0,0,7235,7236,1,0,0,0,7236,7237,1,0,0,0,7237,7238,3,1224,612,0,7238,7239,3,100,50,0,7239,7244,1,0,0,0,7240,7241,5,365,0,0,7241,7242,5,45,0,0,7242,7244,3,1224,612,0,7243,7222,1,0,0,0,7243,7223,1,0,0,0,7243,7226,1,0,0,0,7243,7229,1,0,0,0,7243,7231,1,0,0,0,7243,7240,1,0,0,0,7244,747,1,0,0,0,7245,7248,5,36,0,0,7246,7248,1,0,0,0,7247,7245,1,0,0,0,7247,7246,1,0,0,0,7248,749,1,0,0,0,7249,7250,5,138,0,0,7250,7251,5,348,0,0,7251,7252,5,318,0,0,7252,7253,5,185,0,0,7253,7254,3,470,235,0,7254,7255,3,416,208,0,7255,751,1,0,0,0,7256,7257,5,138,0,0,7257,7258,5,348,0,0,7258,7259,5,318,0,0,7259,7260,5,163,0,0,7260,7261,3,470,235,0,7261,7262,5,133,0,0,7262,7263,5,248,0,0,7263,7264,5,62,0,0,7264,7265,3,1232,616,0,7265,7266,5,105,0,0,7266,7267,3,468,234,0,7267,7329,1,0,0,0,7268,7269,5,138,0,0,7269,7270,5,348,0,0,7270,7271,5,318,0,0,7271,7272,5,163,0,0,7272,7273,3,470,235,0,7273,7274,5,138,0,0,7274,7275,5,248,0,0,7275,7276,5,62,0,0,7276,7277,3,1232,616,0,7277,7278,5,105,0,0,7278,7279,3,468,234,0,7279,7329,1,0,0,0,7280,7281,5,138,0,0,7281,7282,5,348,0,0,7282,7283,5,318,0,0,7283,7284,5,163,0,0,7284,7285,3,470,235,0,7285,7286,5,138,0,0,7286,7287,5,248,0,0,7287,7288,5,304,0,0,7288,7289,3,470,235,0,7289,7290,5,105,0,0,7290,7291,3,470,235,0,7291,7329,1,0,0,0,7292,7293,5,138,0,0,7293,7294,5,348,0,0,7294,7295,5,318,0,0,7295,7296,5,163,0,0,7296,7297,3,470,235,0,7297,7298,5,138,0,0,7298,7299,5,248,0,0,7299,7300,5,62,0,0,7300,7301,3,1232,616,0,7301,7302,5,304,0,0,7302,7303,3,470,235,0,7303,7304,5,105,0,0,7304,7305,3,470,235,0,7305,7329,1,0,0,0,7306,7307,5,138,0,0,7307,7308,5,348,0,0,7308,7309,5,318,0,0,7309,7310,5,163,0,0,7310,7311,3,470,235,0,7311,7312,5,191,0,0,7312,7313,5,248,0,0,7313,7314,5,62,0,0,7314,7315,3,1232,616,0,7315,7329,1,0,0,0,7316,7317,5,138,0,0,7317,7318,5,348,0,0,7318,7319,5,318,0,0,7319,7320,5,163,0,0,7320,7321,3,470,235,0,7321,7322,5,191,0,0,7322,7323,5,248,0,0,7323,7324,5,220,0,0,7324,7325,5,389,0,0,7325,7326,5,62,0,0,7326,7327,3,1232,616,0,7327,7329,1,0,0,0,7328,7256,1,0,0,0,7328,7268,1,0,0,0,7328,7280,1,0,0,0,7328,7292,1,0,0,0,7328,7306,1,0,0,0,7328,7316,1,0,0,0,7329,753,1,0,0,0,7330,7332,5,46,0,0,7331,7333,5,53,0,0,7332,7331,1,0,0,0,7332,7333,1,0,0,0,7333,7334,1,0,0,0,7334,7335,5,168,0,0,7335,7336,3,470,235,0,7336,7337,5,62,0,0,7337,7338,3,1252,626,0,7338,7339,5,94,0,0,7339,7340,3,1252,626,0,7340,7341,5,64,0,0,7341,7342,3,470,235,0,7342,755,1,0,0,0,7343,7344,5,158,0,0,7344,7345,3,774,387,0,7345,7346,3,1230,615,0,7346,7347,3,758,379,0,7347,7357,1,0,0,0,7348,7349,5,158,0,0,7349,7357,3,774,387,0,7350,7351,5,158,0,0,7351,7352,3,774,387,0,7352,7353,3,1234,617,0,7353,7354,5,80,0,0,7354,7355,3,1230,615,0,7355,7357,1,0,0,0,7356,7343,1,0,0,0,7356,7348,1,0,0,0,7356,7350,1,0,0,0,7357,757,1,0,0,0,7358,7359,5,100,0,0,7359,7362,3,1234,617,0,7360,7362,1,0,0,0,7361,7358,1,0,0,0,7361,7360,1,0,0,0,7362,759,1,0,0,0,7363,7365,5,363,0,0,7364,7366,5,113,0,0,7365,7364,1,0,0,0,7365,7366,1,0,0,0,7366,7368,1,0,0,0,7367,7369,5,112,0,0,7368,7367,1,0,0,0,7368,7369,1,0,0,0,7369,7370,1,0,0,0,7370,7372,3,774,387,0,7371,7373,3,766,383,0,7372,7371,1,0,0,0,7372,7373,1,0,0,0,7373,7374,1,0,0,0,7374,7375,3,780,390,0,7375,7383,1,0,0,0,7376,7377,5,363,0,0,7377,7378,5,2,0,0,7378,7379,3,764,382,0,7379,7380,5,3,0,0,7380,7381,3,780,390,0,7381,7383,1,0,0,0,7382,7363,1,0,0,0,7382,7376,1,0,0,0,7383,761,1,0,0,0,7384,7385,3,766,383,0,7385,7386,3,774,387,0,7386,7387,3,780,390,0,7387,7395,1,0,0,0,7388,7389,3,766,383,0,7389,7390,5,2,0,0,7390,7391,3,764,382,0,7391,7392,5,3,0,0,7392,7393,3,780,390,0,7393,7395,1,0,0,0,7394,7384,1,0,0,0,7394,7388,1,0,0,0,7395,763,1,0,0,0,7396,7401,3,768,384,0,7397,7398,5,6,0,0,7398,7400,3,768,384,0,7399,7397,1,0,0,0,7400,7403,1,0,0,0,7401,7399,1,0,0,0,7401,7402,1,0,0,0,7402,765,1,0,0,0,7403,7401,1,0,0,0,7404,7405,7,33,0,0,7405,767,1,0,0,0,7406,7407,3,770,385,0,7407,7408,3,772,386,0,7408,769,1,0,0,0,7409,7412,3,1270,635,0,7410,7412,3,766,383,0,7411,7409,1,0,0,0,7411,7410,1,0,0,0,7412,771,1,0,0,0,7413,7417,3,58,29,0,7414,7417,3,264,132,0,7415,7417,1,0,0,0,7416,7413,1,0,0,0,7416,7414,1,0,0,0,7416,7415,1,0,0,0,7417,773,1,0,0,0,7418,7421,5,128,0,0,7419,7421,1,0,0,0,7420,7418,1,0,0,0,7420,7419,1,0,0,0,7421,775,1,0,0,0,7422,7423,5,2,0,0,7423,7424,3,1232,616,0,7424,7425,5,3,0,0,7425,7428,1,0,0,0,7426,7428,1,0,0,0,7427,7422,1,0,0,0,7427,7426,1,0,0,0,7428,777,1,0,0,0,7429,7430,3,1230,615,0,7430,7431,3,776,388,0,7431,779,1,0,0,0,7432,7437,3,778,389,0,7433,7434,5,6,0,0,7434,7436,3,778,389,0,7435,7433,1,0,0,0,7436,7439,1,0,0,0,7437,7435,1,0,0,0,7437,7438,1,0,0,0,7438,7442,1,0,0,0,7439,7437,1,0,0,0,7440,7442,1,0,0,0,7441,7432,1,0,0,0,7441,7440,1,0,0,0,7442,781,1,0,0,0,7443,7444,5,203,0,0,7444,7467,3,784,392,0,7445,7446,5,203,0,0,7446,7447,3,766,383,0,7447,7448,3,774,387,0,7448,7449,3,784,392,0,7449,7467,1,0,0,0,7450,7451,5,203,0,0,7451,7452,5,128,0,0,7452,7467,3,784,392,0,7453,7454,5,203,0,0,7454,7455,5,2,0,0,7455,7460,3,786,393,0,7456,7457,5,6,0,0,7457,7459,3,786,393,0,7458,7456,1,0,0,0,7459,7462,1,0,0,0,7460,7458,1,0,0,0,7460,7461,1,0,0,0,7461,7463,1,0,0,0,7462,7460,1,0,0,0,7463,7464,5,3,0,0,7464,7465,3,784,392,0,7465,7467,1,0,0,0,7466,7443,1,0,0,0,7466,7445,1,0,0,0,7466,7450,1,0,0,0,7466,7453,1,0,0,0,7467,783,1,0,0,0,7468,7478,3,858,429,0,7469,7478,3,804,402,0,7470,7478,3,844,422,0,7471,7478,3,830,415,0,7472,7478,3,852,426,0,7473,7478,3,242,121,0,7474,7478,3,248,124,0,7475,7478,3,252,126,0,7476,7478,3,798,399,0,7477,7468,1,0,0,0,7477,7469,1,0,0,0,7477,7470,1,0,0,0,7477,7471,1,0,0,0,7477,7472,1,0,0,0,7477,7473,1,0,0,0,7477,7474,1,0,0,0,7477,7475,1,0,0,0,7477,7476,1,0,0,0,7478,785,1,0,0,0,7479,7480,3,788,394,0,7480,7481,3,790,395,0,7481,787,1,0,0,0,7482,7485,3,1270,635,0,7483,7485,3,766,383,0,7484,7482,1,0,0,0,7484,7483,1,0,0,0,7485,789,1,0,0,0,7486,7490,3,58,29,0,7487,7490,3,264,132,0,7488,7490,1,0,0,0,7489,7486,1,0,0,0,7489,7487,1,0,0,0,7489,7488,1,0,0,0,7490,791,1,0,0,0,7491,7492,5,283,0,0,7492,7493,3,1234,617,0,7493,7494,3,794,397,0,7494,7495,5,36,0,0,7495,7496,3,796,398,0,7496,793,1,0,0,0,7497,7498,5,2,0,0,7498,7499,3,1162,581,0,7499,7500,5,3,0,0,7500,7503,1,0,0,0,7501,7503,1,0,0,0,7502,7497,1,0,0,0,7502,7501,1,0,0,0,7503,795,1,0,0,0,7504,7509,3,858,429,0,7505,7509,3,804,402,0,7506,7509,3,844,422,0,7507,7509,3,830,415,0,7508,7504,1,0,0,0,7508,7505,1,0,0,0,7508,7506,1,0,0,0,7508,7507,1,0,0,0,7509,797,1,0,0,0,7510,7511,5,202,0,0,7511,7512,3,1234,617,0,7512,7513,3,800,400,0,7513,7538,1,0,0,0,7514,7515,5,46,0,0,7515,7516,3,154,77,0,7516,7517,5,92,0,0,7517,7518,3,244,122,0,7518,7519,5,36,0,0,7519,7520,5,202,0,0,7520,7521,3,1234,617,0,7521,7522,3,800,400,0,7522,7523,3,246,123,0,7523,7538,1,0,0,0,7524,7525,5,46,0,0,7525,7526,3,154,77,0,7526,7527,5,92,0,0,7527,7528,5,220,0,0,7528,7529,5,77,0,0,7529,7530,5,389,0,0,7530,7531,3,244,122,0,7531,7532,5,36,0,0,7532,7533,5,202,0,0,7533,7534,3,1234,617,0,7534,7535,3,800,400,0,7535,7536,3,246,123,0,7536,7538,1,0,0,0,7537,7510,1,0,0,0,7537,7514,1,0,0,0,7537,7524,1,0,0,0,7538,799,1,0,0,0,7539,7540,5,2,0,0,7540,7541,3,1156,578,0,7541,7542,5,3,0,0,7542,7545,1,0,0,0,7543,7545,1,0,0,0,7544,7539,1,0,0,0,7544,7543,1,0,0,0,7545,801,1,0,0,0,7546,7547,5,177,0,0,7547,7557,3,1234,617,0,7548,7549,5,177,0,0,7549,7550,5,283,0,0,7550,7557,3,1234,617,0,7551,7552,5,177,0,0,7552,7557,5,30,0,0,7553,7554,5,177,0,0,7554,7555,5,283,0,0,7555,7557,5,30,0,0,7556,7546,1,0,0,0,7556,7548,1,0,0,0,7556,7551,1,0,0,0,7556,7553,1,0,0,0,7557,803,1,0,0,0,7558,7560,3,872,436,0,7559,7558,1,0,0,0,7559,7560,1,0,0,0,7560,7561,1,0,0,0,7561,7562,5,232,0,0,7562,7563,5,71,0,0,7563,7564,3,806,403,0,7564,7565,3,808,404,0,7565,7566,3,816,408,0,7566,7567,3,820,410,0,7567,805,1,0,0,0,7568,7571,3,1230,615,0,7569,7570,5,36,0,0,7570,7572,3,1264,632,0,7571,7569,1,0,0,0,7571,7572,1,0,0,0,7572,807,1,0,0,0,7573,7593,3,858,429,0,7574,7575,5,463,0,0,7575,7576,3,810,405,0,7576,7577,5,450,0,0,7577,7578,3,858,429,0,7578,7593,1,0,0,0,7579,7580,5,2,0,0,7580,7581,3,812,406,0,7581,7586,5,3,0,0,7582,7583,5,463,0,0,7583,7584,3,810,405,0,7584,7585,5,450,0,0,7585,7587,1,0,0,0,7586,7582,1,0,0,0,7586,7587,1,0,0,0,7587,7588,1,0,0,0,7588,7589,3,858,429,0,7589,7593,1,0,0,0,7590,7591,5,53,0,0,7591,7593,5,415,0,0,7592,7573,1,0,0,0,7592,7574,1,0,0,0,7592,7579,1,0,0,0,7592,7590,1,0,0,0,7593,809,1,0,0,0,7594,7595,7,34,0,0,7595,811,1,0,0,0,7596,7601,3,814,407,0,7597,7598,5,6,0,0,7598,7600,3,814,407,0,7599,7597,1,0,0,0,7600,7603,1,0,0,0,7601,7599,1,0,0,0,7601,7602,1,0,0,0,7602,813,1,0,0,0,7603,7601,1,0,0,0,7604,7605,3,1264,632,0,7605,7606,3,1200,600,0,7606,815,1,0,0,0,7607,7608,5,80,0,0,7608,7609,5,464,0,0,7609,7610,3,818,409,0,7610,7617,5,57,0,0,7611,7612,5,362,0,0,7612,7613,5,326,0,0,7613,7614,3,846,423,0,7614,7615,3,974,487,0,7615,7618,1,0,0,0,7616,7618,5,263,0,0,7617,7611,1,0,0,0,7617,7616,1,0,0,0,7618,7621,1,0,0,0,7619,7621,1,0,0,0,7620,7607,1,0,0,0,7620,7619,1,0,0,0,7621,817,1,0,0,0,7622,7623,5,2,0,0,7623,7624,3,536,268,0,7624,7625,5,3,0,0,7625,7626,3,974,487,0,7626,7632,1,0,0,0,7627,7628,5,80,0,0,7628,7629,5,45,0,0,7629,7632,3,1224,612,0,7630,7632,1,0,0,0,7631,7622,1,0,0,0,7631,7627,1,0,0,0,7631,7630,1,0,0,0,7632,819,1,0,0,0,7633,7634,5,87,0,0,7634,7637,3,1204,602,0,7635,7637,1,0,0,0,7636,7633,1,0,0,0,7636,7635,1,0,0,0,7637,821,1,0,0,0,7638,7640,5,253,0,0,7639,7641,5,71,0,0,7640,7639,1,0,0,0,7640,7641,1,0,0,0,7641,7642,1,0,0,0,7642,7644,3,1230,615,0,7643,7645,3,944,472,0,7644,7643,1,0,0,0,7644,7645,1,0,0,0,7645,7646,1,0,0,0,7646,7649,5,100,0,0,7647,7650,3,860,430,0,7648,7650,3,1230,615,0,7649,7647,1,0,0,0,7649,7648,1,0,0,0,7650,7652,1,0,0,0,7651,7653,3,944,472,0,7652,7651,1,0,0,0,7652,7653,1,0,0,0,7653,7654,1,0,0,0,7654,7655,5,80,0,0,7655,7664,3,1038,519,0,7656,7658,3,824,412,0,7657,7659,3,826,413,0,7658,7657,1,0,0,0,7658,7659,1,0,0,0,7659,7665,1,0,0,0,7660,7662,3,826,413,0,7661,7663,3,824,412,0,7662,7661,1,0,0,0,7662,7663,1,0,0,0,7663,7665,1,0,0,0,7664,7656,1,0,0,0,7664,7660,1,0,0,0,7665,7667,1,0,0,0,7666,7668,3,828,414,0,7667,7666,1,0,0,0,7667,7668,1,0,0,0,7668,823,1,0,0,0,7669,7670,5,102,0,0,7670,7671,5,77,0,0,7671,7674,5,250,0,0,7672,7673,5,33,0,0,7673,7675,3,1038,519,0,7674,7672,1,0,0,0,7674,7675,1,0,0,0,7675,7677,1,0,0,0,7676,7678,5,93,0,0,7677,7676,1,0,0,0,7677,7678,1,0,0,0,7678,7679,1,0,0,0,7679,7684,5,232,0,0,7680,7681,5,2,0,0,7681,7682,3,812,406,0,7682,7683,5,3,0,0,7683,7685,1,0,0,0,7684,7680,1,0,0,0,7684,7685,1,0,0,0,7685,7686,1,0,0,0,7686,7687,3,934,467,0,7687,825,1,0,0,0,7688,7689,5,102,0,0,7689,7692,5,250,0,0,7690,7691,5,33,0,0,7691,7693,3,1038,519,0,7692,7690,1,0,0,0,7692,7693,1,0,0,0,7693,7695,1,0,0,0,7694,7696,5,93,0,0,7695,7694,1,0,0,0,7695,7696,1,0,0,0,7696,7697,1,0,0,0,7697,7698,5,362,0,0,7698,7699,5,326,0,0,7699,7700,3,846,423,0,7700,827,1,0,0,0,7701,7702,5,102,0,0,7702,7704,5,250,0,0,7703,7705,5,93,0,0,7704,7703,1,0,0,0,7704,7705,1,0,0,0,7705,7706,1,0,0,0,7706,7707,5,182,0,0,7707,829,1,0,0,0,7708,7710,3,872,436,0,7709,7708,1,0,0,0,7709,7710,1,0,0,0,7710,7711,1,0,0,0,7711,7712,5,182,0,0,7712,7713,5,64,0,0,7713,7714,3,962,481,0,7714,7715,3,832,416,0,7715,7716,3,976,488,0,7716,7717,3,820,410,0,7717,831,1,0,0,0,7718,7719,5,100,0,0,7719,7722,3,938,469,0,7720,7722,1,0,0,0,7721,7718,1,0,0,0,7721,7720,1,0,0,0,7722,833,1,0,0,0,7723,7724,5,247,0,0,7724,7725,3,882,441,0,7725,7726,3,960,480,0,7726,7727,3,836,418,0,7727,7728,3,840,420,0,7728,835,1,0,0,0,7729,7730,5,68,0,0,7730,7731,3,838,419,0,7731,7732,5,256,0,0,7732,7735,1,0,0,0,7733,7735,1,0,0,0,7734,7729,1,0,0,0,7734,7733,1,0,0,0,7735,837,1,0,0,0,7736,7737,5,131,0,0,7737,7749,7,35,0,0,7738,7739,5,407,0,0,7739,7749,7,35,0,0,7740,7745,5,327,0,0,7741,7742,5,362,0,0,7742,7746,5,201,0,0,7743,7744,5,407,0,0,7744,7746,5,201,0,0,7745,7741,1,0,0,0,7745,7743,1,0,0,0,7745,7746,1,0,0,0,7746,7749,1,0,0,0,7747,7749,5,201,0,0,7748,7736,1,0,0,0,7748,7738,1,0,0,0,7748,7740,1,0,0,0,7748,7747,1,0,0,0,7749,839,1,0,0,0,7750,7753,5,265,0,0,7751,7753,1,0,0,0,7752,7750,1,0,0,0,7752,7751,1,0,0,0,7753,841,1,0,0,0,7754,7759,5,265,0,0,7755,7756,5,465,0,0,7756,7759,5,466,0,0,7757,7759,1,0,0,0,7758,7754,1,0,0,0,7758,7755,1,0,0,0,7758,7757,1,0,0,0,7759,843,1,0,0,0,7760,7762,3,872,436,0,7761,7760,1,0,0,0,7761,7762,1,0,0,0,7762,7763,1,0,0,0,7763,7764,5,362,0,0,7764,7765,3,962,481,0,7765,7766,5,326,0,0,7766,7767,3,846,423,0,7767,7768,3,936,468,0,7768,7769,3,976,488,0,7769,7770,3,820,410,0,7770,845,1,0,0,0,7771,7776,3,848,424,0,7772,7773,5,6,0,0,7773,7775,3,848,424,0,7774,7772,1,0,0,0,7775,7778,1,0,0,0,7776,7774,1,0,0,0,7776,7777,1,0,0,0,7777,847,1,0,0,0,7778,7776,1,0,0,0,7779,7780,3,850,425,0,7780,7781,5,10,0,0,7781,7782,3,1038,519,0,7782,7797,1,0,0,0,7783,7784,5,2,0,0,7784,7789,3,850,425,0,7785,7786,5,6,0,0,7786,7788,3,850,425,0,7787,7785,1,0,0,0,7788,7791,1,0,0,0,7789,7787,1,0,0,0,7789,7790,1,0,0,0,7790,7792,1,0,0,0,7791,7789,1,0,0,0,7792,7793,5,3,0,0,7793,7794,5,10,0,0,7794,7795,3,1038,519,0,7795,7797,1,0,0,0,7796,7779,1,0,0,0,7796,7783,1,0,0,0,7797,849,1,0,0,0,7798,7799,3,1264,632,0,7799,7800,3,1200,600,0,7800,851,1,0,0,0,7801,7802,5,178,0,0,7802,7810,3,854,427,0,7803,7804,5,262,0,0,7804,7809,5,317,0,0,7805,7809,5,317,0,0,7806,7809,5,107,0,0,7807,7809,5,231,0,0,7808,7803,1,0,0,0,7808,7805,1,0,0,0,7808,7806,1,0,0,0,7808,7807,1,0,0,0,7809,7812,1,0,0,0,7810,7808,1,0,0,0,7810,7811,1,0,0,0,7811,7813,1,0,0,0,7812,7810,1,0,0,0,7813,7814,5,172,0,0,7814,7815,3,856,428,0,7815,7816,5,62,0,0,7816,7817,3,858,429,0,7817,853,1,0,0,0,7818,7819,3,1234,617,0,7819,855,1,0,0,0,7820,7826,1,0,0,0,7821,7822,5,105,0,0,7822,7826,5,217,0,0,7823,7824,5,372,0,0,7824,7826,5,217,0,0,7825,7820,1,0,0,0,7825,7821,1,0,0,0,7825,7823,1,0,0,0,7826,857,1,0,0,0,7827,7830,3,862,431,0,7828,7830,3,860,430,0,7829,7827,1,0,0,0,7829,7828,1,0,0,0,7830,859,1,0,0,0,7831,7832,5,2,0,0,7832,7833,3,862,431,0,7833,7834,5,3,0,0,7834,7840,1,0,0,0,7835,7836,5,2,0,0,7836,7837,3,860,430,0,7837,7838,5,3,0,0,7838,7840,1,0,0,0,7839,7831,1,0,0,0,7839,7835,1,0,0,0,7840,861,1,0,0,0,7841,7842,3,864,432,0,7842,7850,3,890,445,0,7843,7844,3,926,463,0,7844,7845,3,900,450,0,7845,7851,1,0,0,0,7846,7848,3,898,449,0,7847,7849,3,926,463,0,7848,7847,1,0,0,0,7848,7849,1,0,0,0,7849,7851,1,0,0,0,7850,7843,1,0,0,0,7850,7846,1,0,0,0,7850,7851,1,0,0,0,7851,7865,1,0,0,0,7852,7853,3,872,436,0,7853,7854,3,864,432,0,7854,7862,3,890,445,0,7855,7856,3,926,463,0,7856,7857,3,900,450,0,7857,7863,1,0,0,0,7858,7860,3,898,449,0,7859,7861,3,926,463,0,7860,7859,1,0,0,0,7860,7861,1,0,0,0,7861,7863,1,0,0,0,7862,7855,1,0,0,0,7862,7858,1,0,0,0,7862,7863,1,0,0,0,7863,7865,1,0,0,0,7864,7841,1,0,0,0,7864,7852,1,0,0,0,7865,863,1,0,0,0,7866,7873,3,866,433,0,7867,7868,7,36,0,0,7868,7869,3,884,442,0,7869,7870,3,866,433,0,7870,7872,1,0,0,0,7871,7867,1,0,0,0,7872,7875,1,0,0,0,7873,7871,1,0,0,0,7873,7874,1,0,0,0,7874,865,1,0,0,0,7875,7873,1,0,0,0,7876,7883,3,870,435,0,7877,7878,5,70,0,0,7878,7879,3,884,442,0,7879,7880,3,870,435,0,7880,7882,1,0,0,0,7881,7877,1,0,0,0,7882,7885,1,0,0,0,7883,7881,1,0,0,0,7883,7884,1,0,0,0,7884,867,1,0,0,0,7885,7883,1,0,0,0,7886,7888,3,1204,602,0,7887,7889,3,878,439,0,7888,7887,1,0,0,0,7888,7889,1,0,0,0,7889,7902,1,0,0,0,7890,7891,3,888,444,0,7891,7893,3,1202,601,0,7892,7894,3,878,439,0,7893,7892,1,0,0,0,7893,7894,1,0,0,0,7894,7902,1,0,0,0,7895,7896,3,886,443,0,7896,7898,3,1204,602,0,7897,7899,3,878,439,0,7898,7897,1,0,0,0,7898,7899,1,0,0,0,7899,7902,1,0,0,0,7900,7902,3,878,439,0,7901,7886,1,0,0,0,7901,7890,1,0,0,0,7901,7895,1,0,0,0,7901,7900,1,0,0,0,7902,869,1,0,0,0,7903,7904,5,88,0,0,7904,7905,3,868,434,0,7905,7906,3,936,468,0,7906,7907,3,974,487,0,7907,7908,3,918,459,0,7908,7909,3,924,462,0,7909,7910,3,1116,558,0,7910,7916,1,0,0,0,7911,7916,3,934,467,0,7912,7913,5,92,0,0,7913,7916,3,958,479,0,7914,7916,3,860,430,0,7915,7903,1,0,0,0,7915,7911,1,0,0,0,7915,7912,1,0,0,0,7915,7914,1,0,0,0,7916,871,1,0,0,0,7917,7919,5,105,0,0,7918,7920,5,296,0,0,7919,7918,1,0,0,0,7919,7920,1,0,0,0,7920,7921,1,0,0,0,7921,7926,3,874,437,0,7922,7923,5,6,0,0,7923,7925,3,874,437,0,7924,7922,1,0,0,0,7925,7928,1,0,0,0,7926,7924,1,0,0,0,7926,7927,1,0,0,0,7927,873,1,0,0,0,7928,7926,1,0,0,0,7929,7930,3,1234,617,0,7930,7931,3,776,388,0,7931,7932,5,36,0,0,7932,7933,3,876,438,0,7933,7934,5,2,0,0,7934,7935,3,796,398,0,7935,7936,5,3,0,0,7936,875,1,0,0,0,7937,7942,5,251,0,0,7938,7939,5,77,0,0,7939,7942,5,251,0,0,7940,7942,1,0,0,0,7941,7937,1,0,0,0,7941,7938,1,0,0,0,7941,7940,1,0,0,0,7942,877,1,0,0,0,7943,7949,5,71,0,0,7944,7946,5,339,0,0,7945,7944,1,0,0,0,7945,7946,1,0,0,0,7946,7947,1,0,0,0,7947,7950,3,880,440,0,7948,7950,3,1448,724,0,7949,7945,1,0,0,0,7949,7948,1,0,0,0,7950,879,1,0,0,0,7951,7953,7,37,0,0,7952,7951,1,0,0,0,7952,7953,1,0,0,0,7953,7954,1,0,0,0,7954,7955,7,10,0,0,7955,7956,3,882,441,0,7956,7957,3,1230,615,0,7957,7966,1,0,0,0,7958,7959,5,360,0,0,7959,7960,3,882,441,0,7960,7961,3,1230,615,0,7961,7966,1,0,0,0,7962,7963,5,92,0,0,7963,7966,3,1230,615,0,7964,7966,3,1230,615,0,7965,7952,1,0,0,0,7965,7958,1,0,0,0,7965,7962,1,0,0,0,7965,7964,1,0,0,0,7966,881,1,0,0,0,7967,7970,5,92,0,0,7968,7970,1,0,0,0,7969,7967,1,0,0,0,7969,7968,1,0,0,0,7970,883,1,0,0,0,7971,7975,5,30,0,0,7972,7975,5,56,0,0,7973,7975,1,0,0,0,7974,7971,1,0,0,0,7974,7972,1,0,0,0,7974,7973,1,0,0,0,7975,885,1,0,0,0,7976,7982,5,56,0,0,7977,7978,5,80,0,0,7978,7979,5,2,0,0,7979,7980,3,1156,578,0,7980,7981,5,3,0,0,7981,7983,1,0,0,0,7982,7977,1,0,0,0,7982,7983,1,0,0,0,7983,887,1,0,0,0,7984,7985,5,30,0,0,7985,889,1,0,0,0,7986,7989,3,892,446,0,7987,7989,1,0,0,0,7988,7986,1,0,0,0,7988,7987,1,0,0,0,7989,891,1,0,0,0,7990,7991,5,83,0,0,7991,7992,5,147,0,0,7992,7993,3,894,447,0,7993,893,1,0,0,0,7994,7999,3,896,448,0,7995,7996,5,6,0,0,7996,7998,3,896,448,0,7997,7995,1,0,0,0,7998,8001,1,0,0,0,7999,7997,1,0,0,0,7999,8e3,1,0,0,0,8e3,895,1,0,0,0,8001,7999,1,0,0,0,8002,8006,3,1038,519,0,8003,8004,5,100,0,0,8004,8007,3,1152,576,0,8005,8007,3,548,274,0,8006,8003,1,0,0,0,8006,8005,1,0,0,0,8007,8008,1,0,0,0,8008,8009,3,550,275,0,8009,897,1,0,0,0,8010,8012,3,902,451,0,8011,8013,3,904,452,0,8012,8011,1,0,0,0,8012,8013,1,0,0,0,8013,8019,1,0,0,0,8014,8016,3,904,452,0,8015,8017,3,902,451,0,8016,8015,1,0,0,0,8016,8017,1,0,0,0,8017,8019,1,0,0,0,8018,8010,1,0,0,0,8018,8014,1,0,0,0,8019,899,1,0,0,0,8020,8023,3,898,449,0,8021,8023,1,0,0,0,8022,8020,1,0,0,0,8022,8021,1,0,0,0,8023,901,1,0,0,0,8024,8025,5,74,0,0,8025,8028,3,906,453,0,8026,8027,5,6,0,0,8027,8029,3,908,454,0,8028,8026,1,0,0,0,8028,8029,1,0,0,0,8029,8048,1,0,0,0,8030,8031,5,61,0,0,8031,8045,3,916,458,0,8032,8033,3,910,455,0,8033,8037,3,914,457,0,8034,8038,5,81,0,0,8035,8036,5,105,0,0,8036,8038,5,467,0,0,8037,8034,1,0,0,0,8037,8035,1,0,0,0,8038,8046,1,0,0,0,8039,8043,3,914,457,0,8040,8044,5,81,0,0,8041,8042,5,105,0,0,8042,8044,5,467,0,0,8043,8040,1,0,0,0,8043,8041,1,0,0,0,8044,8046,1,0,0,0,8045,8032,1,0,0,0,8045,8039,1,0,0,0,8046,8048,1,0,0,0,8047,8024,1,0,0,0,8047,8030,1,0,0,0,8048,903,1,0,0,0,8049,8054,5,79,0,0,8050,8055,3,908,454,0,8051,8052,3,910,455,0,8052,8053,3,914,457,0,8053,8055,1,0,0,0,8054,8050,1,0,0,0,8054,8051,1,0,0,0,8055,905,1,0,0,0,8056,8059,3,1038,519,0,8057,8059,5,30,0,0,8058,8056,1,0,0,0,8058,8057,1,0,0,0,8059,907,1,0,0,0,8060,8061,3,1038,519,0,8061,909,1,0,0,0,8062,8068,3,1082,541,0,8063,8064,5,12,0,0,8064,8068,3,912,456,0,8065,8066,5,13,0,0,8066,8068,3,912,456,0,8067,8062,1,0,0,0,8067,8063,1,0,0,0,8067,8065,1,0,0,0,8068,911,1,0,0,0,8069,8072,3,1250,625,0,8070,8072,3,1248,624,0,8071,8069,1,0,0,0,8071,8070,1,0,0,0,8072,913,1,0,0,0,8073,8074,7,38,0,0,8074,915,1,0,0,0,8075,8076,7,39,0,0,8076,917,1,0,0,0,8077,8078,5,66,0,0,8078,8079,5,147,0,0,8079,8082,3,920,460,0,8080,8082,1,0,0,0,8081,8077,1,0,0,0,8081,8080,1,0,0,0,8082,919,1,0,0,0,8083,8088,3,922,461,0,8084,8085,5,6,0,0,8085,8087,3,922,461,0,8086,8084,1,0,0,0,8087,8090,1,0,0,0,8088,8086,1,0,0,0,8088,8089,1,0,0,0,8089,921,1,0,0,0,8090,8088,1,0,0,0,8091,8111,3,1038,519,0,8092,8093,5,2,0,0,8093,8111,5,3,0,0,8094,8095,5,469,0,0,8095,8096,5,2,0,0,8096,8097,3,1156,578,0,8097,8098,5,3,0,0,8098,8111,1,0,0,0,8099,8100,5,468,0,0,8100,8101,5,2,0,0,8101,8102,3,1156,578,0,8102,8103,5,3,0,0,8103,8111,1,0,0,0,8104,8105,5,470,0,0,8105,8106,5,471,0,0,8106,8107,5,2,0,0,8107,8108,3,920,460,0,8108,8109,5,3,0,0,8109,8111,1,0,0,0,8110,8091,1,0,0,0,8110,8092,1,0,0,0,8110,8094,1,0,0,0,8110,8099,1,0,0,0,8110,8104,1,0,0,0,8111,923,1,0,0,0,8112,8113,5,67,0,0,8113,8116,3,1038,519,0,8114,8116,1,0,0,0,8115,8112,1,0,0,0,8115,8114,1,0,0,0,8116,925,1,0,0,0,8117,8119,3,928,464,0,8118,8117,1,0,0,0,8119,8120,1,0,0,0,8120,8118,1,0,0,0,8120,8121,1,0,0,0,8121,8126,1,0,0,0,8122,8123,5,62,0,0,8123,8124,5,293,0,0,8124,8126,5,81,0,0,8125,8118,1,0,0,0,8125,8122,1,0,0,0,8126,927,1,0,0,0,8127,8128,3,930,465,0,8128,8129,3,932,466,0,8129,8130,3,842,421,0,8130,929,1,0,0,0,8131,8141,5,62,0,0,8132,8133,5,262,0,0,8133,8135,5,236,0,0,8134,8132,1,0,0,0,8134,8135,1,0,0,0,8135,8136,1,0,0,0,8136,8142,5,362,0,0,8137,8139,5,236,0,0,8138,8137,1,0,0,0,8138,8139,1,0,0,0,8139,8140,1,0,0,0,8140,8142,5,327,0,0,8141,8134,1,0,0,0,8141,8138,1,0,0,0,8142,931,1,0,0,0,8143,8144,5,268,0,0,8144,8147,3,1208,604,0,8145,8147,1,0,0,0,8146,8143,1,0,0,0,8146,8145,1,0,0,0,8147,933,1,0,0,0,8148,8149,5,415,0,0,8149,8150,5,2,0,0,8150,8151,3,1156,578,0,8151,8159,5,3,0,0,8152,8153,5,6,0,0,8153,8154,5,2,0,0,8154,8155,3,1156,578,0,8155,8156,5,3,0,0,8156,8158,1,0,0,0,8157,8152,1,0,0,0,8158,8161,1,0,0,0,8159,8157,1,0,0,0,8159,8160,1,0,0,0,8160,935,1,0,0,0,8161,8159,1,0,0,0,8162,8163,5,64,0,0,8163,8166,3,938,469,0,8164,8166,1,0,0,0,8165,8162,1,0,0,0,8165,8164,1,0,0,0,8166,937,1,0,0,0,8167,8177,3,940,470,0,8168,8173,3,942,471,0,8169,8170,5,6,0,0,8170,8172,3,942,471,0,8171,8169,1,0,0,0,8172,8175,1,0,0,0,8173,8171,1,0,0,0,8173,8174,1,0,0,0,8174,8177,1,0,0,0,8175,8173,1,0,0,0,8176,8167,1,0,0,0,8176,8168,1,0,0,0,8177,939,1,0,0,0,8178,8181,3,942,471,0,8179,8180,5,6,0,0,8180,8182,3,942,471,0,8181,8179,1,0,0,0,8182,8183,1,0,0,0,8183,8181,1,0,0,0,8183,8184,1,0,0,0,8184,941,1,0,0,0,8185,8186,3,958,479,0,8186,8188,3,946,473,0,8187,8189,3,964,482,0,8188,8187,1,0,0,0,8188,8189,1,0,0,0,8189,8235,1,0,0,0,8190,8191,3,966,483,0,8191,8192,3,950,475,0,8192,8235,1,0,0,0,8193,8194,3,984,492,0,8194,8195,3,946,473,0,8195,8235,1,0,0,0,8196,8197,3,860,430,0,8197,8198,3,946,473,0,8198,8235,1,0,0,0,8199,8209,5,72,0,0,8200,8201,3,984,492,0,8201,8202,3,946,473,0,8202,8210,1,0,0,0,8203,8204,3,966,483,0,8204,8205,3,950,475,0,8205,8210,1,0,0,0,8206,8207,3,860,430,0,8207,8208,3,946,473,0,8208,8210,1,0,0,0,8209,8200,1,0,0,0,8209,8203,1,0,0,0,8209,8206,1,0,0,0,8210,8235,1,0,0,0,8211,8212,5,2,0,0,8212,8229,3,942,471,0,8213,8214,5,110,0,0,8214,8215,5,118,0,0,8215,8230,3,942,471,0,8216,8218,5,121,0,0,8217,8219,3,952,476,0,8218,8217,1,0,0,0,8218,8219,1,0,0,0,8219,8220,1,0,0,0,8220,8221,5,118,0,0,8221,8230,3,942,471,0,8222,8224,3,952,476,0,8223,8222,1,0,0,0,8223,8224,1,0,0,0,8224,8225,1,0,0,0,8225,8226,5,118,0,0,8226,8227,3,942,471,0,8227,8228,3,954,477,0,8228,8230,1,0,0,0,8229,8213,1,0,0,0,8229,8216,1,0,0,0,8229,8223,1,0,0,0,8229,8230,1,0,0,0,8230,8231,1,0,0,0,8231,8232,5,3,0,0,8232,8233,3,946,473,0,8233,8235,1,0,0,0,8234,8185,1,0,0,0,8234,8190,1,0,0,0,8234,8193,1,0,0,0,8234,8196,1,0,0,0,8234,8199,1,0,0,0,8234,8211,1,0,0,0,8235,8254,1,0,0,0,8236,8237,5,110,0,0,8237,8238,5,118,0,0,8238,8253,3,942,471,0,8239,8241,5,121,0,0,8240,8242,3,952,476,0,8241,8240,1,0,0,0,8241,8242,1,0,0,0,8242,8243,1,0,0,0,8243,8244,5,118,0,0,8244,8253,3,942,471,0,8245,8247,3,952,476,0,8246,8245,1,0,0,0,8246,8247,1,0,0,0,8247,8248,1,0,0,0,8248,8249,5,118,0,0,8249,8250,3,942,471,0,8250,8251,3,954,477,0,8251,8253,1,0,0,0,8252,8236,1,0,0,0,8252,8239,1,0,0,0,8252,8246,1,0,0,0,8253,8256,1,0,0,0,8254,8252,1,0,0,0,8254,8255,1,0,0,0,8255,943,1,0,0,0,8256,8254,1,0,0,0,8257,8259,5,36,0,0,8258,8257,1,0,0,0,8258,8259,1,0,0,0,8259,8260,1,0,0,0,8260,8265,3,1264,632,0,8261,8262,5,2,0,0,8262,8263,3,1232,616,0,8263,8264,5,3,0,0,8264,8266,1,0,0,0,8265,8261,1,0,0,0,8265,8266,1,0,0,0,8266,945,1,0,0,0,8267,8270,3,948,474,0,8268,8270,1,0,0,0,8269,8267,1,0,0,0,8269,8268,1,0,0,0,8270,947,1,0,0,0,8271,8273,5,36,0,0,8272,8271,1,0,0,0,8272,8273,1,0,0,0,8273,8274,1,0,0,0,8274,8279,3,1266,633,0,8275,8276,5,2,0,0,8276,8277,3,1232,616,0,8277,8278,5,3,0,0,8278,8280,1,0,0,0,8279,8275,1,0,0,0,8279,8280,1,0,0,0,8280,949,1,0,0,0,8281,8295,3,944,472,0,8282,8284,5,36,0,0,8283,8285,3,1264,632,0,8284,8283,1,0,0,0,8284,8285,1,0,0,0,8285,8288,1,0,0,0,8286,8288,3,1264,632,0,8287,8282,1,0,0,0,8287,8286,1,0,0,0,8288,8289,1,0,0,0,8289,8290,5,2,0,0,8290,8291,3,980,490,0,8291,8292,5,3,0,0,8292,8295,1,0,0,0,8293,8295,1,0,0,0,8294,8281,1,0,0,0,8294,8287,1,0,0,0,8294,8293,1,0,0,0,8295,951,1,0,0,0,8296,8298,7,40,0,0,8297,8299,5,123,0,0,8298,8297,1,0,0,0,8298,8299,1,0,0,0,8299,953,1,0,0,0,8300,8301,5,100,0,0,8301,8302,5,2,0,0,8302,8303,3,1232,616,0,8303,8304,5,3,0,0,8304,8308,1,0,0,0,8305,8306,5,80,0,0,8306,8308,3,1038,519,0,8307,8300,1,0,0,0,8307,8305,1,0,0,0,8308,955,1,0,0,0,8309,8310,3,1230,615,0,8310,957,1,0,0,0,8311,8313,3,1230,615,0,8312,8314,5,9,0,0,8313,8312,1,0,0,0,8313,8314,1,0,0,0,8314,8324,1,0,0,0,8315,8321,5,81,0,0,8316,8322,3,1230,615,0,8317,8318,5,2,0,0,8318,8319,3,1230,615,0,8319,8320,5,3,0,0,8320,8322,1,0,0,0,8321,8316,1,0,0,0,8321,8317,1,0,0,0,8322,8324,1,0,0,0,8323,8311,1,0,0,0,8323,8315,1,0,0,0,8324,959,1,0,0,0,8325,8330,3,958,479,0,8326,8327,5,6,0,0,8327,8329,3,958,479,0,8328,8326,1,0,0,0,8329,8332,1,0,0,0,8330,8328,1,0,0,0,8330,8331,1,0,0,0,8331,961,1,0,0,0,8332,8330,1,0,0,0,8333,8338,3,958,479,0,8334,8336,5,36,0,0,8335,8334,1,0,0,0,8335,8336,1,0,0,0,8336,8337,1,0,0,0,8337,8339,3,1264,632,0,8338,8335,1,0,0,0,8338,8339,1,0,0,0,8339,963,1,0,0,0,8340,8341,5,472,0,0,8341,8342,3,1240,620,0,8342,8343,5,2,0,0,8343,8344,3,1156,578,0,8344,8345,5,3,0,0,8345,8346,5,303,0,0,8346,8347,5,2,0,0,8347,8348,3,1038,519,0,8348,8349,5,3,0,0,8349,965,1,0,0,0,8350,8351,3,1090,545,0,8351,8352,3,972,486,0,8352,8368,1,0,0,0,8353,8354,5,313,0,0,8354,8355,5,64,0,0,8355,8356,5,2,0,0,8356,8361,3,968,484,0,8357,8358,5,6,0,0,8358,8360,3,968,484,0,8359,8357,1,0,0,0,8360,8363,1,0,0,0,8361,8359,1,0,0,0,8361,8362,1,0,0,0,8362,8364,1,0,0,0,8363,8361,1,0,0,0,8364,8365,5,3,0,0,8365,8366,3,972,486,0,8366,8368,1,0,0,0,8367,8350,1,0,0,0,8367,8353,1,0,0,0,8368,967,1,0,0,0,8369,8370,3,1090,545,0,8370,8371,3,970,485,0,8371,969,1,0,0,0,8372,8373,5,36,0,0,8373,8374,5,2,0,0,8374,8375,3,980,490,0,8375,8376,5,3,0,0,8376,8379,1,0,0,0,8377,8379,1,0,0,0,8378,8372,1,0,0,0,8378,8377,1,0,0,0,8379,971,1,0,0,0,8380,8381,5,105,0,0,8381,8384,5,473,0,0,8382,8384,1,0,0,0,8383,8380,1,0,0,0,8383,8382,1,0,0,0,8384,973,1,0,0,0,8385,8386,5,103,0,0,8386,8389,3,1038,519,0,8387,8389,1,0,0,0,8388,8385,1,0,0,0,8388,8387,1,0,0,0,8389,975,1,0,0,0,8390,8395,5,103,0,0,8391,8392,5,434,0,0,8392,8393,5,268,0,0,8393,8396,3,854,427,0,8394,8396,3,1038,519,0,8395,8391,1,0,0,0,8395,8394,1,0,0,0,8396,8399,1,0,0,0,8397,8399,1,0,0,0,8398,8390,1,0,0,0,8398,8397,1,0,0,0,8399,977,1,0,0,0,8400,8403,3,980,490,0,8401,8403,1,0,0,0,8402,8400,1,0,0,0,8402,8401,1,0,0,0,8403,979,1,0,0,0,8404,8409,3,982,491,0,8405,8406,5,6,0,0,8406,8408,3,982,491,0,8407,8405,1,0,0,0,8408,8411,1,0,0,0,8409,8407,1,0,0,0,8409,8410,1,0,0,0,8410,981,1,0,0,0,8411,8409,1,0,0,0,8412,8413,3,1264,632,0,8413,8414,3,996,498,0,8414,8415,3,102,51,0,8415,983,1,0,0,0,8416,8417,5,474,0,0,8417,8445,5,2,0,0,8418,8419,3,1082,541,0,8419,8420,3,1108,554,0,8420,8421,5,475,0,0,8421,8426,3,986,493,0,8422,8423,5,6,0,0,8423,8425,3,986,493,0,8424,8422,1,0,0,0,8425,8428,1,0,0,0,8426,8424,1,0,0,0,8426,8427,1,0,0,0,8427,8446,1,0,0,0,8428,8426,1,0,0,0,8429,8430,5,476,0,0,8430,8431,5,2,0,0,8431,8432,3,992,496,0,8432,8433,5,3,0,0,8433,8434,5,6,0,0,8434,8435,3,1082,541,0,8435,8436,3,1108,554,0,8436,8437,5,475,0,0,8437,8442,3,986,493,0,8438,8439,5,6,0,0,8439,8441,3,986,493,0,8440,8438,1,0,0,0,8441,8444,1,0,0,0,8442,8440,1,0,0,0,8442,8443,1,0,0,0,8443,8446,1,0,0,0,8444,8442,1,0,0,0,8445,8418,1,0,0,0,8445,8429,1,0,0,0,8446,8447,1,0,0,0,8447,8448,5,3,0,0,8448,985,1,0,0,0,8449,8456,3,1264,632,0,8450,8452,3,996,498,0,8451,8453,3,988,494,0,8452,8451,1,0,0,0,8452,8453,1,0,0,0,8453,8457,1,0,0,0,8454,8455,5,62,0,0,8455,8457,5,473,0,0,8456,8450,1,0,0,0,8456,8454,1,0,0,0,8457,987,1,0,0,0,8458,8460,3,990,495,0,8459,8458,1,0,0,0,8460,8461,1,0,0,0,8461,8459,1,0,0,0,8461,8462,1,0,0,0,8462,989,1,0,0,0,8463,8464,5,53,0,0,8464,8472,3,1038,519,0,8465,8466,3,1274,637,0,8466,8467,3,1038,519,0,8467,8472,1,0,0,0,8468,8469,5,77,0,0,8469,8472,5,78,0,0,8470,8472,5,78,0,0,8471,8463,1,0,0,0,8471,8465,1,0,0,0,8471,8468,1,0,0,0,8471,8470,1,0,0,0,8472,991,1,0,0,0,8473,8478,3,994,497,0,8474,8475,5,6,0,0,8475,8477,3,994,497,0,8476,8474,1,0,0,0,8477,8480,1,0,0,0,8478,8476,1,0,0,0,8478,8479,1,0,0,0,8479,993,1,0,0,0,8480,8478,1,0,0,0,8481,8482,3,1080,540,0,8482,8483,5,36,0,0,8483,8484,3,1272,636,0,8484,8488,1,0,0,0,8485,8486,5,53,0,0,8486,8488,3,1080,540,0,8487,8481,1,0,0,0,8487,8485,1,0,0,0,8488,995,1,0,0,0,8489,8491,5,408,0,0,8490,8489,1,0,0,0,8490,8491,1,0,0,0,8491,8492,1,0,0,0,8492,8510,3,998,499,0,8493,8495,5,4,0,0,8494,8496,3,1250,625,0,8495,8494,1,0,0,0,8495,8496,1,0,0,0,8496,8497,1,0,0,0,8497,8499,5,5,0,0,8498,8493,1,0,0,0,8499,8502,1,0,0,0,8500,8498,1,0,0,0,8500,8501,1,0,0,0,8501,8511,1,0,0,0,8502,8500,1,0,0,0,8503,8508,5,35,0,0,8504,8505,5,4,0,0,8505,8506,3,1250,625,0,8506,8507,5,5,0,0,8507,8509,1,0,0,0,8508,8504,1,0,0,0,8508,8509,1,0,0,0,8509,8511,1,0,0,0,8510,8500,1,0,0,0,8510,8503,1,0,0,0,8511,8517,1,0,0,0,8512,8513,3,1230,615,0,8513,8514,5,27,0,0,8514,8515,7,41,0,0,8515,8517,1,0,0,0,8516,8490,1,0,0,0,8516,8512,1,0,0,0,8517,997,1,0,0,0,8518,8532,3,1002,501,0,8519,8532,3,1006,503,0,8520,8532,3,1010,505,0,8521,8532,3,1018,509,0,8522,8532,3,1026,513,0,8523,8529,3,1028,514,0,8524,8530,3,1032,516,0,8525,8526,5,2,0,0,8526,8527,3,1250,625,0,8527,8528,5,3,0,0,8528,8530,1,0,0,0,8529,8524,1,0,0,0,8529,8525,1,0,0,0,8530,8532,1,0,0,0,8531,8518,1,0,0,0,8531,8519,1,0,0,0,8531,8520,1,0,0,0,8531,8521,1,0,0,0,8531,8522,1,0,0,0,8531,8523,1,0,0,0,8532,999,1,0,0,0,8533,8538,3,1006,503,0,8534,8538,3,1012,506,0,8535,8538,3,1020,510,0,8536,8538,3,1026,513,0,8537,8533,1,0,0,0,8537,8534,1,0,0,0,8537,8535,1,0,0,0,8537,8536,1,0,0,0,8538,1001,1,0,0,0,8539,8544,3,1286,643,0,8540,8544,3,1268,634,0,8541,8544,5,119,0,0,8542,8544,5,126,0,0,8543,8539,1,0,0,0,8543,8540,1,0,0,0,8543,8541,1,0,0,0,8543,8542,1,0,0,0,8544,8546,1,0,0,0,8545,8547,3,472,236,0,8546,8545,1,0,0,0,8546,8547,1,0,0,0,8547,8548,1,0,0,0,8548,8549,3,1004,502,0,8549,1003,1,0,0,0,8550,8551,5,2,0,0,8551,8552,3,1156,578,0,8552,8553,5,3,0,0,8553,8556,1,0,0,0,8554,8556,1,0,0,0,8555,8550,1,0,0,0,8555,8554,1,0,0,0,8556,1005,1,0,0,0,8557,8574,5,394,0,0,8558,8574,5,395,0,0,8559,8574,5,409,0,0,8560,8574,5,381,0,0,8561,8574,5,406,0,0,8562,8563,5,391,0,0,8563,8574,3,1008,504,0,8564,8565,5,190,0,0,8565,8574,5,405,0,0,8566,8567,5,388,0,0,8567,8574,3,1004,502,0,8568,8569,5,387,0,0,8569,8574,3,1004,502,0,8570,8571,5,402,0,0,8571,8574,3,1004,502,0,8572,8574,5,383,0,0,8573,8557,1,0,0,0,8573,8558,1,0,0,0,8573,8559,1,0,0,0,8573,8560,1,0,0,0,8573,8561,1,0,0,0,8573,8562,1,0,0,0,8573,8564,1,0,0,0,8573,8566,1,0,0,0,8573,8568,1,0,0,0,8573,8570,1,0,0,0,8573,8572,1,0,0,0,8574,1007,1,0,0,0,8575,8576,5,2,0,0,8576,8577,3,1250,625,0,8577,8578,5,3,0,0,8578,8581,1,0,0,0,8579,8581,1,0,0,0,8580,8575,1,0,0,0,8580,8579,1,0,0,0,8581,1009,1,0,0,0,8582,8585,3,1014,507,0,8583,8585,3,1016,508,0,8584,8582,1,0,0,0,8584,8583,1,0,0,0,8585,1011,1,0,0,0,8586,8589,3,1014,507,0,8587,8589,3,1016,508,0,8588,8586,1,0,0,0,8588,8587,1,0,0,0,8589,1013,1,0,0,0,8590,8591,5,382,0,0,8591,8592,3,1024,512,0,8592,8593,5,2,0,0,8593,8594,3,1156,578,0,8594,8595,5,3,0,0,8595,1015,1,0,0,0,8596,8597,5,382,0,0,8597,8598,3,1024,512,0,8598,1017,1,0,0,0,8599,8604,3,1022,511,0,8600,8601,5,2,0,0,8601,8602,3,1250,625,0,8602,8603,5,3,0,0,8603,8605,1,0,0,0,8604,8600,1,0,0,0,8604,8605,1,0,0,0,8605,1019,1,0,0,0,8606,8611,3,1022,511,0,8607,8608,5,2,0,0,8608,8609,3,1250,625,0,8609,8610,5,3,0,0,8610,8612,1,0,0,0,8611,8607,1,0,0,0,8611,8612,1,0,0,0,8612,1021,1,0,0,0,8613,8614,7,42,0,0,8614,8620,3,1024,512,0,8615,8620,5,416,0,0,8616,8617,5,398,0,0,8617,8618,7,43,0,0,8618,8620,3,1024,512,0,8619,8613,1,0,0,0,8619,8615,1,0,0,0,8619,8616,1,0,0,0,8620,1023,1,0,0,0,8621,8624,5,367,0,0,8622,8624,1,0,0,0,8623,8621,1,0,0,0,8623,8622,1,0,0,0,8624,1025,1,0,0,0,8625,8630,7,44,0,0,8626,8627,5,2,0,0,8627,8628,3,1250,625,0,8628,8629,5,3,0,0,8629,8631,1,0,0,0,8630,8626,1,0,0,0,8630,8631,1,0,0,0,8631,8632,1,0,0,0,8632,8633,3,1030,515,0,8633,1027,1,0,0,0,8634,8635,5,396,0,0,8635,1029,1,0,0,0,8636,8637,5,105,0,0,8637,8638,5,411,0,0,8638,8644,5,379,0,0,8639,8640,5,372,0,0,8640,8641,5,411,0,0,8641,8644,5,379,0,0,8642,8644,1,0,0,0,8643,8636,1,0,0,0,8643,8639,1,0,0,0,8643,8642,1,0,0,0,8644,1031,1,0,0,0,8645,8672,5,377,0,0,8646,8672,5,257,0,0,8647,8672,5,176,0,0,8648,8672,5,218,0,0,8649,8672,5,254,0,0,8650,8672,3,1034,517,0,8651,8652,5,377,0,0,8652,8653,5,94,0,0,8653,8672,5,257,0,0,8654,8655,5,176,0,0,8655,8659,5,94,0,0,8656,8660,5,218,0,0,8657,8660,5,254,0,0,8658,8660,3,1034,517,0,8659,8656,1,0,0,0,8659,8657,1,0,0,0,8659,8658,1,0,0,0,8660,8672,1,0,0,0,8661,8662,5,218,0,0,8662,8665,5,94,0,0,8663,8666,5,254,0,0,8664,8666,3,1034,517,0,8665,8663,1,0,0,0,8665,8664,1,0,0,0,8666,8672,1,0,0,0,8667,8668,5,254,0,0,8668,8669,5,94,0,0,8669,8672,3,1034,517,0,8670,8672,1,0,0,0,8671,8645,1,0,0,0,8671,8646,1,0,0,0,8671,8647,1,0,0,0,8671,8648,1,0,0,0,8671,8649,1,0,0,0,8671,8650,1,0,0,0,8671,8651,1,0,0,0,8671,8654,1,0,0,0,8671,8661,1,0,0,0,8671,8667,1,0,0,0,8671,8670,1,0,0,0,8672,1033,1,0,0,0,8673,8678,5,319,0,0,8674,8675,5,2,0,0,8675,8676,3,1250,625,0,8676,8677,5,3,0,0,8677,8679,1,0,0,0,8678,8674,1,0,0,0,8678,8679,1,0,0,0,8679,1035,1,0,0,0,8680,8681,5,197,0,0,8681,8684,3,1038,519,0,8682,8684,1,0,0,0,8683,8680,1,0,0,0,8683,8682,1,0,0,0,8684,1037,1,0,0,0,8685,8686,3,1040,520,0,8686,1039,1,0,0,0,8687,8689,3,1042,521,0,8688,8690,3,1150,575,0,8689,8688,1,0,0,0,8689,8690,1,0,0,0,8690,1041,1,0,0,0,8691,8696,3,1044,522,0,8692,8693,7,45,0,0,8693,8695,3,1044,522,0,8694,8692,1,0,0,0,8695,8698,1,0,0,0,8696,8694,1,0,0,0,8696,8697,1,0,0,0,8697,1043,1,0,0,0,8698,8696,1,0,0,0,8699,8704,3,1046,523,0,8700,8701,5,82,0,0,8701,8703,3,1046,523,0,8702,8700,1,0,0,0,8703,8706,1,0,0,0,8704,8702,1,0,0,0,8704,8705,1,0,0,0,8705,1045,1,0,0,0,8706,8704,1,0,0,0,8707,8712,3,1048,524,0,8708,8709,5,33,0,0,8709,8711,3,1048,524,0,8710,8708,1,0,0,0,8711,8714,1,0,0,0,8712,8710,1,0,0,0,8712,8713,1,0,0,0,8713,1047,1,0,0,0,8714,8712,1,0,0,0,8715,8727,3,1050,525,0,8716,8718,5,77,0,0,8717,8716,1,0,0,0,8717,8718,1,0,0,0,8718,8719,1,0,0,0,8719,8721,5,380,0,0,8720,8722,5,91,0,0,8721,8720,1,0,0,0,8721,8722,1,0,0,0,8722,8723,1,0,0,0,8723,8724,3,1050,525,0,8724,8725,5,33,0,0,8725,8726,3,1050,525,0,8726,8728,1,0,0,0,8727,8717,1,0,0,0,8727,8728,1,0,0,0,8728,1049,1,0,0,0,8729,8735,3,1052,526,0,8730,8732,5,77,0,0,8731,8730,1,0,0,0,8731,8732,1,0,0,0,8732,8733,1,0,0,0,8733,8734,5,68,0,0,8734,8736,3,1182,591,0,8735,8731,1,0,0,0,8735,8736,1,0,0,0,8736,1051,1,0,0,0,8737,8739,5,77,0,0,8738,8737,1,0,0,0,8738,8739,1,0,0,0,8739,8740,1,0,0,0,8740,8741,3,1054,527,0,8741,1053,1,0,0,0,8742,8744,3,1056,528,0,8743,8745,7,46,0,0,8744,8743,1,0,0,0,8744,8745,1,0,0,0,8745,1055,1,0,0,0,8746,8770,3,1058,529,0,8747,8749,5,116,0,0,8748,8750,5,77,0,0,8749,8748,1,0,0,0,8749,8750,1,0,0,0,8750,8768,1,0,0,0,8751,8769,5,78,0,0,8752,8769,5,96,0,0,8753,8769,5,60,0,0,8754,8769,5,358,0,0,8755,8756,5,56,0,0,8756,8757,5,64,0,0,8757,8769,3,1038,519,0,8758,8759,5,268,0,0,8759,8760,5,2,0,0,8760,8761,3,1162,581,0,8761,8762,5,3,0,0,8762,8769,1,0,0,0,8763,8769,5,188,0,0,8764,8766,3,1172,586,0,8765,8764,1,0,0,0,8765,8766,1,0,0,0,8766,8767,1,0,0,0,8767,8769,5,478,0,0,8768,8751,1,0,0,0,8768,8752,1,0,0,0,8768,8753,1,0,0,0,8768,8754,1,0,0,0,8768,8755,1,0,0,0,8768,8758,1,0,0,0,8768,8763,1,0,0,0,8768,8765,1,0,0,0,8769,8771,1,0,0,0,8770,8747,1,0,0,0,8770,8771,1,0,0,0,8771,1057,1,0,0,0,8772,8784,3,1060,530,0,8773,8774,7,47,0,0,8774,8785,3,1060,530,0,8775,8776,3,1154,577,0,8776,8782,3,1144,572,0,8777,8783,3,860,430,0,8778,8779,5,2,0,0,8779,8780,3,1038,519,0,8780,8781,5,3,0,0,8781,8783,1,0,0,0,8782,8777,1,0,0,0,8782,8778,1,0,0,0,8783,8785,1,0,0,0,8784,8773,1,0,0,0,8784,8775,1,0,0,0,8784,8785,1,0,0,0,8785,1059,1,0,0,0,8786,8799,3,1062,531,0,8787,8789,5,77,0,0,8788,8787,1,0,0,0,8788,8789,1,0,0,0,8789,8794,1,0,0,0,8790,8795,5,120,0,0,8791,8795,5,114,0,0,8792,8793,5,127,0,0,8793,8795,5,94,0,0,8794,8790,1,0,0,0,8794,8791,1,0,0,0,8794,8792,1,0,0,0,8795,8796,1,0,0,0,8796,8797,3,1062,531,0,8797,8798,3,1036,518,0,8798,8800,1,0,0,0,8799,8788,1,0,0,0,8799,8800,1,0,0,0,8800,1061,1,0,0,0,8801,8807,3,1064,532,0,8802,8803,3,1150,575,0,8803,8804,3,1064,532,0,8804,8806,1,0,0,0,8805,8802,1,0,0,0,8806,8809,1,0,0,0,8807,8805,1,0,0,0,8807,8808,1,0,0,0,8808,1063,1,0,0,0,8809,8807,1,0,0,0,8810,8812,3,1150,575,0,8811,8810,1,0,0,0,8811,8812,1,0,0,0,8812,8813,1,0,0,0,8813,8814,3,1066,533,0,8814,1065,1,0,0,0,8815,8820,3,1068,534,0,8816,8817,7,48,0,0,8817,8819,3,1068,534,0,8818,8816,1,0,0,0,8819,8822,1,0,0,0,8820,8818,1,0,0,0,8820,8821,1,0,0,0,8821,1067,1,0,0,0,8822,8820,1,0,0,0,8823,8828,3,1070,535,0,8824,8825,7,49,0,0,8825,8827,3,1070,535,0,8826,8824,1,0,0,0,8827,8830,1,0,0,0,8828,8826,1,0,0,0,8828,8829,1,0,0,0,8829,1069,1,0,0,0,8830,8828,1,0,0,0,8831,8834,3,1072,536,0,8832,8833,5,15,0,0,8833,8835,3,1038,519,0,8834,8832,1,0,0,0,8834,8835,1,0,0,0,8835,1071,1,0,0,0,8836,8838,7,48,0,0,8837,8836,1,0,0,0,8837,8838,1,0,0,0,8838,8839,1,0,0,0,8839,8840,3,1074,537,0,8840,1073,1,0,0,0,8841,8846,3,1076,538,0,8842,8843,5,142,0,0,8843,8844,5,411,0,0,8844,8845,5,379,0,0,8845,8847,3,1038,519,0,8846,8842,1,0,0,0,8846,8847,1,0,0,0,8847,1075,1,0,0,0,8848,8851,3,1078,539,0,8849,8850,5,43,0,0,8850,8852,3,470,235,0,8851,8849,1,0,0,0,8851,8852,1,0,0,0,8852,1077,1,0,0,0,8853,8858,3,1082,541,0,8854,8855,5,26,0,0,8855,8857,3,996,498,0,8856,8854,1,0,0,0,8857,8860,1,0,0,0,8858,8856,1,0,0,0,8858,8859,1,0,0,0,8859,1079,1,0,0,0,8860,8858,1,0,0,0,8861,8862,6,540,-1,0,8862,8869,3,1082,541,0,8863,8864,7,48,0,0,8864,8869,3,1080,540,9,8865,8866,3,1150,575,0,8866,8867,3,1080,540,3,8867,8869,1,0,0,0,8868,8861,1,0,0,0,8868,8863,1,0,0,0,8868,8865,1,0,0,0,8869,8909,1,0,0,0,8870,8871,10,8,0,0,8871,8872,5,15,0,0,8872,8908,3,1080,540,9,8873,8874,10,7,0,0,8874,8875,7,49,0,0,8875,8908,3,1080,540,8,8876,8877,10,6,0,0,8877,8878,7,48,0,0,8878,8908,3,1080,540,7,8879,8880,10,5,0,0,8880,8881,3,1150,575,0,8881,8882,3,1080,540,6,8882,8908,1,0,0,0,8883,8884,10,4,0,0,8884,8885,7,47,0,0,8885,8908,3,1080,540,5,8886,8887,10,10,0,0,8887,8888,5,26,0,0,8888,8908,3,996,498,0,8889,8890,10,2,0,0,8890,8908,3,1150,575,0,8891,8892,10,1,0,0,8892,8894,5,116,0,0,8893,8895,5,77,0,0,8894,8893,1,0,0,0,8894,8895,1,0,0,0,8895,8905,1,0,0,0,8896,8897,5,56,0,0,8897,8898,5,64,0,0,8898,8906,3,1080,540,0,8899,8900,5,268,0,0,8900,8901,5,2,0,0,8901,8902,3,1162,581,0,8902,8903,5,3,0,0,8903,8906,1,0,0,0,8904,8906,5,188,0,0,8905,8896,1,0,0,0,8905,8899,1,0,0,0,8905,8904,1,0,0,0,8906,8908,1,0,0,0,8907,8870,1,0,0,0,8907,8873,1,0,0,0,8907,8876,1,0,0,0,8907,8879,1,0,0,0,8907,8883,1,0,0,0,8907,8886,1,0,0,0,8907,8889,1,0,0,0,8907,8891,1,0,0,0,8908,8911,1,0,0,0,8909,8907,1,0,0,0,8909,8910,1,0,0,0,8910,1081,1,0,0,0,8911,8909,1,0,0,0,8912,8913,5,389,0,0,8913,8949,3,860,430,0,8914,8917,5,35,0,0,8915,8918,3,860,430,0,8916,8918,3,1164,582,0,8917,8915,1,0,0,0,8917,8916,1,0,0,0,8918,8949,1,0,0,0,8919,8920,5,28,0,0,8920,8949,3,1200,600,0,8921,8922,5,470,0,0,8922,8923,5,2,0,0,8923,8924,3,1156,578,0,8924,8925,5,3,0,0,8925,8949,1,0,0,0,8926,8927,5,98,0,0,8927,8949,3,860,430,0,8928,8949,3,1194,597,0,8929,8949,3,1242,621,0,8930,8949,3,1084,542,0,8931,8932,5,2,0,0,8932,8933,3,1038,519,0,8933,8934,5,3,0,0,8934,8935,3,1200,600,0,8935,8949,1,0,0,0,8936,8949,3,1184,592,0,8937,8949,3,1088,544,0,8938,8940,3,860,430,0,8939,8941,3,1198,599,0,8940,8939,1,0,0,0,8940,8941,1,0,0,0,8941,8949,1,0,0,0,8942,8949,3,1140,570,0,8943,8949,3,1142,571,0,8944,8945,3,1138,569,0,8945,8946,5,125,0,0,8946,8947,3,1138,569,0,8947,8949,1,0,0,0,8948,8912,1,0,0,0,8948,8914,1,0,0,0,8948,8919,1,0,0,0,8948,8921,1,0,0,0,8948,8926,1,0,0,0,8948,8928,1,0,0,0,8948,8929,1,0,0,0,8948,8930,1,0,0,0,8948,8931,1,0,0,0,8948,8936,1,0,0,0,8948,8937,1,0,0,0,8948,8938,1,0,0,0,8948,8942,1,0,0,0,8948,8943,1,0,0,0,8948,8944,1,0,0,0,8949,1083,1,0,0,0,8950,8951,5,661,0,0,8951,1085,1,0,0,0,8952,8953,3,1240,620,0,8953,8972,5,2,0,0,8954,8958,3,1158,579,0,8955,8956,5,6,0,0,8956,8957,5,101,0,0,8957,8959,3,1160,580,0,8958,8955,1,0,0,0,8958,8959,1,0,0,0,8959,8960,1,0,0,0,8960,8961,3,890,445,0,8961,8973,1,0,0,0,8962,8963,5,101,0,0,8963,8964,3,1160,580,0,8964,8965,3,890,445,0,8965,8973,1,0,0,0,8966,8967,7,50,0,0,8967,8968,3,1158,579,0,8968,8969,3,890,445,0,8969,8973,1,0,0,0,8970,8973,5,9,0,0,8971,8973,1,0,0,0,8972,8954,1,0,0,0,8972,8962,1,0,0,0,8972,8966,1,0,0,0,8972,8970,1,0,0,0,8972,8971,1,0,0,0,8973,8974,1,0,0,0,8974,8975,5,3,0,0,8975,1087,1,0,0,0,8976,8977,3,1086,543,0,8977,8978,3,1112,556,0,8978,8979,3,1114,557,0,8979,8980,3,1122,561,0,8980,8983,1,0,0,0,8981,8983,3,1092,546,0,8982,8976,1,0,0,0,8982,8981,1,0,0,0,8983,1089,1,0,0,0,8984,8987,3,1086,543,0,8985,8987,3,1092,546,0,8986,8984,1,0,0,0,8986,8985,1,0,0,0,8987,1091,1,0,0,0,8988,8989,5,108,0,0,8989,8990,5,62,0,0,8990,8991,5,2,0,0,8991,8992,3,1038,519,0,8992,8993,5,3,0,0,8993,9166,1,0,0,0,8994,9166,5,48,0,0,8995,9e3,5,50,0,0,8996,8997,5,2,0,0,8997,8998,3,1250,625,0,8998,8999,5,3,0,0,8999,9001,1,0,0,0,9e3,8996,1,0,0,0,9e3,9001,1,0,0,0,9001,9166,1,0,0,0,9002,9007,5,51,0,0,9003,9004,5,2,0,0,9004,9005,3,1250,625,0,9005,9006,5,3,0,0,9006,9008,1,0,0,0,9007,9003,1,0,0,0,9007,9008,1,0,0,0,9008,9166,1,0,0,0,9009,9014,5,75,0,0,9010,9011,5,2,0,0,9011,9012,3,1250,625,0,9012,9013,5,3,0,0,9013,9015,1,0,0,0,9014,9010,1,0,0,0,9014,9015,1,0,0,0,9015,9166,1,0,0,0,9016,9021,5,76,0,0,9017,9018,5,2,0,0,9018,9019,3,1250,625,0,9019,9020,5,3,0,0,9020,9022,1,0,0,0,9021,9017,1,0,0,0,9021,9022,1,0,0,0,9022,9166,1,0,0,0,9023,9166,5,49,0,0,9024,9166,5,52,0,0,9025,9166,5,89,0,0,9026,9166,5,99,0,0,9027,9166,5,47,0,0,9028,9166,5,111,0,0,9029,9030,5,41,0,0,9030,9031,5,2,0,0,9031,9032,3,1038,519,0,9032,9033,5,36,0,0,9033,9034,3,996,498,0,9034,9035,5,3,0,0,9035,9166,1,0,0,0,9036,9037,5,390,0,0,9037,9038,5,2,0,0,9038,9039,3,1168,584,0,9039,9040,5,3,0,0,9040,9166,1,0,0,0,9041,9042,5,489,0,0,9042,9043,5,2,0,0,9043,9046,3,1038,519,0,9044,9045,5,6,0,0,9045,9047,3,1172,586,0,9046,9044,1,0,0,0,9046,9047,1,0,0,0,9047,9048,1,0,0,0,9048,9049,5,3,0,0,9049,9166,1,0,0,0,9050,9051,5,403,0,0,9051,9052,5,2,0,0,9052,9053,3,1174,587,0,9053,9054,5,3,0,0,9054,9166,1,0,0,0,9055,9056,5,404,0,0,9056,9057,5,2,0,0,9057,9058,3,1176,588,0,9058,9059,5,3,0,0,9059,9166,1,0,0,0,9060,9061,5,410,0,0,9061,9062,5,2,0,0,9062,9063,3,1178,589,0,9063,9064,5,3,0,0,9064,9166,1,0,0,0,9065,9066,5,413,0,0,9066,9067,5,2,0,0,9067,9068,3,1038,519,0,9068,9069,5,36,0,0,9069,9070,3,996,498,0,9070,9071,5,3,0,0,9071,9166,1,0,0,0,9072,9073,5,414,0,0,9073,9075,5,2,0,0,9074,9076,7,51,0,0,9075,9074,1,0,0,0,9075,9076,1,0,0,0,9076,9077,1,0,0,0,9077,9078,3,1180,590,0,9078,9079,5,3,0,0,9079,9166,1,0,0,0,9080,9081,5,401,0,0,9081,9082,5,2,0,0,9082,9083,3,1038,519,0,9083,9084,5,6,0,0,9084,9085,3,1038,519,0,9085,9086,5,3,0,0,9086,9166,1,0,0,0,9087,9088,5,386,0,0,9088,9089,5,2,0,0,9089,9090,3,1156,578,0,9090,9091,5,3,0,0,9091,9166,1,0,0,0,9092,9093,5,392,0,0,9093,9094,5,2,0,0,9094,9095,3,1156,578,0,9095,9096,5,3,0,0,9096,9166,1,0,0,0,9097,9098,5,397,0,0,9098,9099,5,2,0,0,9099,9100,3,1156,578,0,9100,9101,5,3,0,0,9101,9166,1,0,0,0,9102,9103,5,425,0,0,9103,9104,5,2,0,0,9104,9105,3,1156,578,0,9105,9106,5,3,0,0,9106,9166,1,0,0,0,9107,9108,5,426,0,0,9108,9109,5,2,0,0,9109,9110,5,259,0,0,9110,9116,3,1272,636,0,9111,9114,5,6,0,0,9112,9115,3,1098,549,0,9113,9115,3,1156,578,0,9114,9112,1,0,0,0,9114,9113,1,0,0,0,9115,9117,1,0,0,0,9116,9111,1,0,0,0,9116,9117,1,0,0,0,9117,9118,1,0,0,0,9118,9119,5,3,0,0,9119,9166,1,0,0,0,9120,9121,5,427,0,0,9121,9122,5,2,0,0,9122,9123,3,1082,541,0,9123,9124,3,1108,554,0,9124,9125,5,3,0,0,9125,9166,1,0,0,0,9126,9127,5,428,0,0,9127,9128,5,2,0,0,9128,9129,3,1100,550,0,9129,9130,5,3,0,0,9130,9166,1,0,0,0,9131,9132,5,429,0,0,9132,9133,5,2,0,0,9133,9134,3,1104,552,0,9134,9135,3,1038,519,0,9135,9136,3,1106,553,0,9136,9137,5,3,0,0,9137,9166,1,0,0,0,9138,9139,5,430,0,0,9139,9140,5,2,0,0,9140,9141,5,259,0,0,9141,9144,3,1272,636,0,9142,9143,5,6,0,0,9143,9145,3,1038,519,0,9144,9142,1,0,0,0,9144,9145,1,0,0,0,9145,9146,1,0,0,0,9146,9147,5,3,0,0,9147,9166,1,0,0,0,9148,9149,5,431,0,0,9149,9150,5,2,0,0,9150,9151,5,376,0,0,9151,9152,3,1038,519,0,9152,9153,5,6,0,0,9153,9154,3,1094,547,0,9154,9155,3,1096,548,0,9155,9156,5,3,0,0,9156,9166,1,0,0,0,9157,9158,5,432,0,0,9158,9159,5,2,0,0,9159,9160,3,1104,552,0,9160,9161,3,1038,519,0,9161,9162,5,36,0,0,9162,9163,3,998,499,0,9163,9164,5,3,0,0,9164,9166,1,0,0,0,9165,8988,1,0,0,0,9165,8994,1,0,0,0,9165,8995,1,0,0,0,9165,9002,1,0,0,0,9165,9009,1,0,0,0,9165,9016,1,0,0,0,9165,9023,1,0,0,0,9165,9024,1,0,0,0,9165,9025,1,0,0,0,9165,9026,1,0,0,0,9165,9027,1,0,0,0,9165,9028,1,0,0,0,9165,9029,1,0,0,0,9165,9036,1,0,0,0,9165,9041,1,0,0,0,9165,9050,1,0,0,0,9165,9055,1,0,0,0,9165,9060,1,0,0,0,9165,9065,1,0,0,0,9165,9072,1,0,0,0,9165,9080,1,0,0,0,9165,9087,1,0,0,0,9165,9092,1,0,0,0,9165,9097,1,0,0,0,9165,9102,1,0,0,0,9165,9107,1,0,0,0,9165,9120,1,0,0,0,9165,9126,1,0,0,0,9165,9131,1,0,0,0,9165,9138,1,0,0,0,9165,9148,1,0,0,0,9165,9157,1,0,0,0,9166,1093,1,0,0,0,9167,9168,5,368,0,0,9168,9173,3,1038,519,0,9169,9170,5,368,0,0,9170,9171,5,262,0,0,9171,9173,5,450,0,0,9172,9167,1,0,0,0,9172,9169,1,0,0,0,9173,1095,1,0,0,0,9174,9175,5,6,0,0,9175,9176,5,332,0,0,9176,9186,5,378,0,0,9177,9178,5,6,0,0,9178,9179,5,332,0,0,9179,9186,5,262,0,0,9180,9181,5,6,0,0,9181,9182,5,332,0,0,9182,9183,5,262,0,0,9183,9186,5,450,0,0,9184,9186,1,0,0,0,9185,9174,1,0,0,0,9185,9177,1,0,0,0,9185,9180,1,0,0,0,9185,9184,1,0,0,0,9186,1097,1,0,0,0,9187,9188,5,417,0,0,9188,9189,5,2,0,0,9189,9190,3,1100,550,0,9190,9191,5,3,0,0,9191,1099,1,0,0,0,9192,9197,3,1102,551,0,9193,9194,5,6,0,0,9194,9196,3,1102,551,0,9195,9193,1,0,0,0,9196,9199,1,0,0,0,9197,9195,1,0,0,0,9197,9198,1,0,0,0,9198,1101,1,0,0,0,9199,9197,1,0,0,0,9200,9203,3,1038,519,0,9201,9202,5,36,0,0,9202,9204,3,1272,636,0,9203,9201,1,0,0,0,9203,9204,1,0,0,0,9204,1103,1,0,0,0,9205,9206,7,52,0,0,9206,1105,1,0,0,0,9207,9208,5,285,0,0,9208,9213,5,371,0,0,9209,9210,5,340,0,0,9210,9213,5,371,0,0,9211,9213,1,0,0,0,9212,9207,1,0,0,0,9212,9209,1,0,0,0,9212,9211,1,0,0,0,9213,1107,1,0,0,0,9214,9215,5,279,0,0,9215,9230,3,1082,541,0,9216,9217,5,279,0,0,9217,9218,3,1082,541,0,9218,9219,3,1110,555,0,9219,9230,1,0,0,0,9220,9221,5,279,0,0,9221,9222,3,1110,555,0,9222,9223,3,1082,541,0,9223,9230,1,0,0,0,9224,9225,5,279,0,0,9225,9226,3,1110,555,0,9226,9227,3,1082,541,0,9227,9228,3,1110,555,0,9228,9230,1,0,0,0,9229,9214,1,0,0,0,9229,9216,1,0,0,0,9229,9220,1,0,0,0,9229,9224,1,0,0,0,9230,1109,1,0,0,0,9231,9232,5,147,0,0,9232,9233,7,53,0,0,9233,1111,1,0,0,0,9234,9235,5,479,0,0,9235,9236,5,66,0,0,9236,9237,5,2,0,0,9237,9238,3,892,446,0,9238,9239,5,3,0,0,9239,9242,1,0,0,0,9240,9242,1,0,0,0,9241,9234,1,0,0,0,9241,9240,1,0,0,0,9242,1113,1,0,0,0,9243,9244,5,480,0,0,9244,9245,5,2,0,0,9245,9246,5,103,0,0,9246,9247,3,1038,519,0,9247,9248,5,3,0,0,9248,9251,1,0,0,0,9249,9251,1,0,0,0,9250,9243,1,0,0,0,9250,9249,1,0,0,0,9251,1115,1,0,0,0,9252,9253,5,104,0,0,9253,9256,3,1118,559,0,9254,9256,1,0,0,0,9255,9252,1,0,0,0,9255,9254,1,0,0,0,9256,1117,1,0,0,0,9257,9262,3,1120,560,0,9258,9259,5,6,0,0,9259,9261,3,1120,560,0,9260,9258,1,0,0,0,9261,9264,1,0,0,0,9262,9260,1,0,0,0,9262,9263,1,0,0,0,9263,1119,1,0,0,0,9264,9262,1,0,0,0,9265,9266,3,1264,632,0,9266,9267,5,36,0,0,9267,9268,3,1124,562,0,9268,1121,1,0,0,0,9269,9272,5,124,0,0,9270,9273,3,1124,562,0,9271,9273,3,1264,632,0,9272,9270,1,0,0,0,9272,9271,1,0,0,0,9273,9276,1,0,0,0,9274,9276,1,0,0,0,9275,9269,1,0,0,0,9275,9274,1,0,0,0,9276,1123,1,0,0,0,9277,9278,5,2,0,0,9278,9279,3,1126,563,0,9279,9280,3,1128,564,0,9280,9281,3,890,445,0,9281,9282,3,1130,565,0,9282,9283,5,3,0,0,9283,1125,1,0,0,0,9284,9287,3,1264,632,0,9285,9287,1,0,0,0,9286,9284,1,0,0,0,9286,9285,1,0,0,0,9287,1127,1,0,0,0,9288,9289,5,278,0,0,9289,9290,5,147,0,0,9290,9293,3,1156,578,0,9291,9293,1,0,0,0,9292,9288,1,0,0,0,9292,9291,1,0,0,0,9293,1129,1,0,0,0,9294,9295,5,292,0,0,9295,9296,3,1132,566,0,9296,9297,3,1136,568,0,9297,9308,1,0,0,0,9298,9299,5,313,0,0,9299,9300,3,1132,566,0,9300,9301,3,1136,568,0,9301,9308,1,0,0,0,9302,9303,5,481,0,0,9303,9304,3,1132,566,0,9304,9305,3,1136,568,0,9305,9308,1,0,0,0,9306,9308,1,0,0,0,9307,9294,1,0,0,0,9307,9298,1,0,0,0,9307,9302,1,0,0,0,9307,9306,1,0,0,0,9308,1131,1,0,0,0,9309,9316,3,1134,567,0,9310,9311,5,380,0,0,9311,9312,3,1134,567,0,9312,9313,5,33,0,0,9313,9314,3,1134,567,0,9314,9316,1,0,0,0,9315,9309,1,0,0,0,9315,9310,1,0,0,0,9316,1133,1,0,0,0,9317,9318,5,355,0,0,9318,9325,7,54,0,0,9319,9320,5,434,0,0,9320,9325,5,407,0,0,9321,9322,3,1038,519,0,9322,9323,7,54,0,0,9323,9325,1,0,0,0,9324,9317,1,0,0,0,9324,9319,1,0,0,0,9324,9321,1,0,0,0,9325,1135,1,0,0,0,9326,9333,5,199,0,0,9327,9328,5,434,0,0,9328,9334,5,407,0,0,9329,9334,5,66,0,0,9330,9334,5,467,0,0,9331,9332,5,262,0,0,9332,9334,5,482,0,0,9333,9327,1,0,0,0,9333,9329,1,0,0,0,9333,9330,1,0,0,0,9333,9331,1,0,0,0,9334,9337,1,0,0,0,9335,9337,1,0,0,0,9336,9326,1,0,0,0,9336,9335,1,0,0,0,9337,1137,1,0,0,0,9338,9339,5,407,0,0,9339,9341,5,2,0,0,9340,9342,3,1156,578,0,9341,9340,1,0,0,0,9341,9342,1,0,0,0,9342,9343,1,0,0,0,9343,9351,5,3,0,0,9344,9345,5,2,0,0,9345,9346,3,1156,578,0,9346,9347,5,6,0,0,9347,9348,3,1038,519,0,9348,9349,5,3,0,0,9349,9351,1,0,0,0,9350,9338,1,0,0,0,9350,9344,1,0,0,0,9351,1139,1,0,0,0,9352,9353,5,407,0,0,9353,9355,5,2,0,0,9354,9356,3,1156,578,0,9355,9354,1,0,0,0,9355,9356,1,0,0,0,9356,9357,1,0,0,0,9357,9358,5,3,0,0,9358,1141,1,0,0,0,9359,9360,5,2,0,0,9360,9361,3,1156,578,0,9361,9362,5,6,0,0,9362,9363,3,1038,519,0,9363,9364,5,3,0,0,9364,1143,1,0,0,0,9365,9366,7,55,0,0,9366,1145,1,0,0,0,9367,9370,5,29,0,0,9368,9370,3,1148,574,0,9369,9367,1,0,0,0,9369,9368,1,0,0,0,9370,1147,1,0,0,0,9371,9372,7,56,0,0,9372,1149,1,0,0,0,9373,9380,5,29,0,0,9374,9375,5,271,0,0,9375,9376,5,2,0,0,9376,9377,3,610,305,0,9377,9378,5,3,0,0,9378,9380,1,0,0,0,9379,9373,1,0,0,0,9379,9374,1,0,0,0,9380,1151,1,0,0,0,9381,9388,3,1146,573,0,9382,9383,5,271,0,0,9383,9384,5,2,0,0,9384,9385,3,610,305,0,9385,9386,5,3,0,0,9386,9388,1,0,0,0,9387,9381,1,0,0,0,9387,9382,1,0,0,0,9388,1153,1,0,0,0,9389,9402,3,1146,573,0,9390,9391,5,271,0,0,9391,9392,5,2,0,0,9392,9393,3,610,305,0,9393,9394,5,3,0,0,9394,9402,1,0,0,0,9395,9402,5,120,0,0,9396,9397,5,77,0,0,9397,9402,5,120,0,0,9398,9402,5,114,0,0,9399,9400,5,77,0,0,9400,9402,5,114,0,0,9401,9389,1,0,0,0,9401,9390,1,0,0,0,9401,9395,1,0,0,0,9401,9396,1,0,0,0,9401,9398,1,0,0,0,9401,9399,1,0,0,0,9402,1155,1,0,0,0,9403,9408,3,1038,519,0,9404,9405,5,6,0,0,9405,9407,3,1038,519,0,9406,9404,1,0,0,0,9407,9410,1,0,0,0,9408,9406,1,0,0,0,9408,9409,1,0,0,0,9409,1157,1,0,0,0,9410,9408,1,0,0,0,9411,9416,3,1160,580,0,9412,9413,5,6,0,0,9413,9415,3,1160,580,0,9414,9412,1,0,0,0,9415,9418,1,0,0,0,9416,9414,1,0,0,0,9416,9417,1,0,0,0,9417,1159,1,0,0,0,9418,9416,1,0,0,0,9419,9425,3,1038,519,0,9420,9421,3,570,285,0,9421,9422,7,57,0,0,9422,9423,3,1038,519,0,9423,9425,1,0,0,0,9424,9419,1,0,0,0,9424,9420,1,0,0,0,9425,1161,1,0,0,0,9426,9431,3,996,498,0,9427,9428,5,6,0,0,9428,9430,3,996,498,0,9429,9427,1,0,0,0,9430,9433,1,0,0,0,9431,9429,1,0,0,0,9431,9432,1,0,0,0,9432,1163,1,0,0,0,9433,9431,1,0,0,0,9434,9437,5,4,0,0,9435,9438,3,1156,578,0,9436,9438,3,1166,583,0,9437,9435,1,0,0,0,9437,9436,1,0,0,0,9437,9438,1,0,0,0,9438,9439,1,0,0,0,9439,9440,5,5,0,0,9440,1165,1,0,0,0,9441,9446,3,1164,582,0,9442,9443,5,6,0,0,9443,9445,3,1164,582,0,9444,9442,1,0,0,0,9445,9448,1,0,0,0,9446,9444,1,0,0,0,9446,9447,1,0,0,0,9447,1167,1,0,0,0,9448,9446,1,0,0,0,9449,9450,3,1170,585,0,9450,9451,5,64,0,0,9451,9452,3,1038,519,0,9452,9455,1,0,0,0,9453,9455,1,0,0,0,9454,9449,1,0,0,0,9454,9453,1,0,0,0,9455,1169,1,0,0,0,9456,9465,3,1274,637,0,9457,9465,5,377,0,0,9458,9465,5,257,0,0,9459,9465,5,176,0,0,9460,9465,5,218,0,0,9461,9465,5,254,0,0,9462,9465,5,319,0,0,9463,9465,3,1252,626,0,9464,9456,1,0,0,0,9464,9457,1,0,0,0,9464,9458,1,0,0,0,9464,9459,1,0,0,0,9464,9460,1,0,0,0,9464,9461,1,0,0,0,9464,9462,1,0,0,0,9464,9463,1,0,0,0,9465,1171,1,0,0,0,9466,9467,7,58,0,0,9467,1173,1,0,0,0,9468,9469,3,1038,519,0,9469,9470,5,84,0,0,9470,9471,3,1038,519,0,9471,9472,5,64,0,0,9472,9475,3,1038,519,0,9473,9474,5,62,0,0,9474,9476,3,1038,519,0,9475,9473,1,0,0,0,9475,9476,1,0,0,0,9476,1175,1,0,0,0,9477,9478,3,1080,540,0,9478,9479,5,68,0,0,9479,9480,3,1080,540,0,9480,9483,1,0,0,0,9481,9483,1,0,0,0,9482,9477,1,0,0,0,9482,9481,1,0,0,0,9483,1177,1,0,0,0,9484,9485,3,1038,519,0,9485,9486,5,64,0,0,9486,9487,3,1038,519,0,9487,9488,5,62,0,0,9488,9489,3,1038,519,0,9489,9512,1,0,0,0,9490,9491,3,1038,519,0,9491,9492,5,62,0,0,9492,9493,3,1038,519,0,9493,9494,5,64,0,0,9494,9495,3,1038,519,0,9495,9512,1,0,0,0,9496,9497,3,1038,519,0,9497,9498,5,64,0,0,9498,9499,3,1038,519,0,9499,9512,1,0,0,0,9500,9501,3,1038,519,0,9501,9502,5,62,0,0,9502,9503,3,1038,519,0,9503,9512,1,0,0,0,9504,9505,3,1038,519,0,9505,9506,5,127,0,0,9506,9507,3,1038,519,0,9507,9508,5,197,0,0,9508,9509,3,1038,519,0,9509,9512,1,0,0,0,9510,9512,3,1156,578,0,9511,9484,1,0,0,0,9511,9490,1,0,0,0,9511,9496,1,0,0,0,9511,9500,1,0,0,0,9511,9504,1,0,0,0,9511,9510,1,0,0,0,9512,1179,1,0,0,0,9513,9514,3,1038,519,0,9514,9515,5,64,0,0,9515,9516,3,1156,578,0,9516,9521,1,0,0,0,9517,9518,5,64,0,0,9518,9521,3,1156,578,0,9519,9521,3,1156,578,0,9520,9513,1,0,0,0,9520,9517,1,0,0,0,9520,9519,1,0,0,0,9521,1181,1,0,0,0,9522,9528,3,860,430,0,9523,9524,5,2,0,0,9524,9525,3,1156,578,0,9525,9526,5,3,0,0,9526,9528,1,0,0,0,9527,9522,1,0,0,0,9527,9523,1,0,0,0,9528,1183,1,0,0,0,9529,9530,5,40,0,0,9530,9531,3,1192,596,0,9531,9532,3,1186,593,0,9532,9533,3,1190,595,0,9533,9534,5,454,0,0,9534,1185,1,0,0,0,9535,9537,3,1188,594,0,9536,9535,1,0,0,0,9537,9538,1,0,0,0,9538,9536,1,0,0,0,9538,9539,1,0,0,0,9539,1187,1,0,0,0,9540,9541,5,102,0,0,9541,9542,3,1038,519,0,9542,9543,5,93,0,0,9543,9544,3,1038,519,0,9544,1189,1,0,0,0,9545,9546,5,58,0,0,9546,9549,3,1038,519,0,9547,9549,1,0,0,0,9548,9545,1,0,0,0,9548,9547,1,0,0,0,9549,1191,1,0,0,0,9550,9553,3,1038,519,0,9551,9553,1,0,0,0,9552,9550,1,0,0,0,9552,9551,1,0,0,0,9553,1193,1,0,0,0,9554,9556,3,1264,632,0,9555,9557,3,1198,599,0,9556,9555,1,0,0,0,9556,9557,1,0,0,0,9557,1195,1,0,0,0,9558,9561,5,11,0,0,9559,9562,3,1236,618,0,9560,9562,5,9,0,0,9561,9559,1,0,0,0,9561,9560,1,0,0,0,9562,9576,1,0,0,0,9563,9572,5,4,0,0,9564,9573,3,1038,519,0,9565,9567,3,1038,519,0,9566,9565,1,0,0,0,9566,9567,1,0,0,0,9567,9568,1,0,0,0,9568,9570,5,8,0,0,9569,9571,3,1038,519,0,9570,9569,1,0,0,0,9570,9571,1,0,0,0,9571,9573,1,0,0,0,9572,9564,1,0,0,0,9572,9566,1,0,0,0,9573,9574,1,0,0,0,9574,9576,5,5,0,0,9575,9558,1,0,0,0,9575,9563,1,0,0,0,9576,1197,1,0,0,0,9577,9579,3,1196,598,0,9578,9577,1,0,0,0,9579,9580,1,0,0,0,9580,9578,1,0,0,0,9580,9581,1,0,0,0,9581,1199,1,0,0,0,9582,9584,3,1196,598,0,9583,9582,1,0,0,0,9584,9587,1,0,0,0,9585,9583,1,0,0,0,9585,9586,1,0,0,0,9586,1201,1,0,0,0,9587,9585,1,0,0,0,9588,9591,3,1204,602,0,9589,9591,1,0,0,0,9590,9588,1,0,0,0,9590,9589,1,0,0,0,9591,1203,1,0,0,0,9592,9597,3,1206,603,0,9593,9594,5,6,0,0,9594,9596,3,1206,603,0,9595,9593,1,0,0,0,9596,9599,1,0,0,0,9597,9595,1,0,0,0,9597,9598,1,0,0,0,9598,1205,1,0,0,0,9599,9597,1,0,0,0,9600,9609,5,9,0,0,9601,9606,3,1038,519,0,9602,9603,5,36,0,0,9603,9607,3,1272,636,0,9604,9607,3,1274,637,0,9605,9607,1,0,0,0,9606,9602,1,0,0,0,9606,9604,1,0,0,0,9606,9605,1,0,0,0,9607,9609,1,0,0,0,9608,9600,1,0,0,0,9608,9601,1,0,0,0,9609,1207,1,0,0,0,9610,9615,3,1230,615,0,9611,9612,5,6,0,0,9612,9614,3,1230,615,0,9613,9611,1,0,0,0,9614,9617,1,0,0,0,9615,9613,1,0,0,0,9615,9616,1,0,0,0,9616,1209,1,0,0,0,9617,9615,1,0,0,0,9618,9619,3,1234,617,0,9619,1211,1,0,0,0,9620,9625,3,1210,605,0,9621,9622,5,6,0,0,9622,9624,3,1210,605,0,9623,9621,1,0,0,0,9624,9627,1,0,0,0,9625,9623,1,0,0,0,9625,9626,1,0,0,0,9626,1213,1,0,0,0,9627,9625,1,0,0,0,9628,9629,3,1234,617,0,9629,1215,1,0,0,0,9630,9635,3,1214,607,0,9631,9632,5,6,0,0,9632,9634,3,1214,607,0,9633,9631,1,0,0,0,9634,9637,1,0,0,0,9635,9633,1,0,0,0,9635,9636,1,0,0,0,9636,1217,1,0,0,0,9637,9635,1,0,0,0,9638,9639,3,1230,615,0,9639,1219,1,0,0,0,9640,9645,3,1218,609,0,9641,9642,5,6,0,0,9642,9644,3,1218,609,0,9643,9641,1,0,0,0,9644,9647,1,0,0,0,9645,9643,1,0,0,0,9645,9646,1,0,0,0,9646,1221,1,0,0,0,9647,9645,1,0,0,0,9648,9649,3,1234,617,0,9649,1223,1,0,0,0,9650,9651,3,1234,617,0,9651,1225,1,0,0,0,9652,9653,3,1230,615,0,9653,1227,1,0,0,0,9654,9659,3,1226,613,0,9655,9656,5,6,0,0,9656,9658,3,1226,613,0,9657,9655,1,0,0,0,9658,9661,1,0,0,0,9659,9657,1,0,0,0,9659,9660,1,0,0,0,9660,1229,1,0,0,0,9661,9659,1,0,0,0,9662,9664,3,1264,632,0,9663,9665,3,1198,599,0,9664,9663,1,0,0,0,9664,9665,1,0,0,0,9665,1231,1,0,0,0,9666,9671,3,1234,617,0,9667,9668,5,6,0,0,9668,9670,3,1234,617,0,9669,9667,1,0,0,0,9670,9673,1,0,0,0,9671,9669,1,0,0,0,9671,9672,1,0,0,0,9672,1233,1,0,0,0,9673,9671,1,0,0,0,9674,9675,3,1264,632,0,9675,1235,1,0,0,0,9676,9677,3,1272,636,0,9677,1237,1,0,0,0,9678,9679,3,1252,626,0,9679,1239,1,0,0,0,9680,9688,3,1286,643,0,9681,9688,3,1268,634,0,9682,9683,3,1264,632,0,9683,9684,3,1198,599,0,9684,9688,1,0,0,0,9685,9688,5,119,0,0,9686,9688,5,126,0,0,9687,9680,1,0,0,0,9687,9681,1,0,0,0,9687,9682,1,0,0,0,9687,9685,1,0,0,0,9687,9686,1,0,0,0,9688,1241,1,0,0,0,9689,9722,3,1250,625,0,9690,9722,3,1248,624,0,9691,9722,3,1252,626,0,9692,9722,3,1246,623,0,9693,9722,3,1244,622,0,9694,9702,3,1240,620,0,9695,9703,3,1252,626,0,9696,9697,5,2,0,0,9697,9698,3,1158,579,0,9698,9699,3,890,445,0,9699,9700,5,3,0,0,9700,9701,3,1252,626,0,9701,9703,1,0,0,0,9702,9695,1,0,0,0,9702,9696,1,0,0,0,9703,9722,1,0,0,0,9704,9705,3,1e3,500,0,9705,9706,3,1252,626,0,9706,9722,1,0,0,0,9707,9716,3,1028,514,0,9708,9709,3,1252,626,0,9709,9710,3,1032,516,0,9710,9717,1,0,0,0,9711,9712,5,2,0,0,9712,9713,3,1250,625,0,9713,9714,5,3,0,0,9714,9715,3,1252,626,0,9715,9717,1,0,0,0,9716,9708,1,0,0,0,9716,9711,1,0,0,0,9717,9722,1,0,0,0,9718,9722,5,96,0,0,9719,9722,5,60,0,0,9720,9722,5,78,0,0,9721,9689,1,0,0,0,9721,9690,1,0,0,0,9721,9691,1,0,0,0,9721,9692,1,0,0,0,9721,9693,1,0,0,0,9721,9694,1,0,0,0,9721,9704,1,0,0,0,9721,9707,1,0,0,0,9721,9718,1,0,0,0,9721,9719,1,0,0,0,9721,9720,1,0,0,0,9722,1243,1,0,0,0,9723,9724,5,654,0,0,9724,1245,1,0,0,0,9725,9726,5,650,0,0,9726,1247,1,0,0,0,9727,9728,5,660,0,0,9728,1249,1,0,0,0,9729,9730,5,658,0,0,9730,1251,1,0,0,0,9731,9732,3,1254,627,0,9732,9733,3,1256,628,0,9733,1253,1,0,0,0,9734,9746,5,645,0,0,9735,9746,5,647,0,0,9736,9740,5,649,0,0,9737,9739,5,677,0,0,9738,9737,1,0,0,0,9739,9742,1,0,0,0,9740,9738,1,0,0,0,9740,9741,1,0,0,0,9741,9743,1,0,0,0,9742,9740,1,0,0,0,9743,9746,5,678,0,0,9744,9746,5,671,0,0,9745,9734,1,0,0,0,9745,9735,1,0,0,0,9745,9736,1,0,0,0,9745,9744,1,0,0,0,9746,1255,1,0,0,0,9747,9748,5,487,0,0,9748,9751,3,1254,627,0,9749,9751,1,0,0,0,9750,9747,1,0,0,0,9750,9749,1,0,0,0,9751,1257,1,0,0,0,9752,9758,3,1250,625,0,9753,9754,5,12,0,0,9754,9758,3,1250,625,0,9755,9756,5,13,0,0,9756,9758,3,1250,625,0,9757,9752,1,0,0,0,9757,9753,1,0,0,0,9757,9755,1,0,0,0,9758,1259,1,0,0,0,9759,9763,3,1270,635,0,9760,9763,5,52,0,0,9761,9763,5,89,0,0,9762,9759,1,0,0,0,9762,9760,1,0,0,0,9762,9761,1,0,0,0,9763,1261,1,0,0,0,9764,9769,3,1260,630,0,9765,9766,5,6,0,0,9766,9768,3,1260,630,0,9767,9765,1,0,0,0,9768,9771,1,0,0,0,9769,9767,1,0,0,0,9769,9770,1,0,0,0,9770,1263,1,0,0,0,9771,9769,1,0,0,0,9772,9779,3,1274,637,0,9773,9779,3,1278,639,0,9774,9779,3,1280,640,0,9775,9779,3,1490,745,0,9776,9779,5,119,0,0,9777,9779,5,126,0,0,9778,9772,1,0,0,0,9778,9773,1,0,0,0,9778,9774,1,0,0,0,9778,9775,1,0,0,0,9778,9776,1,0,0,0,9778,9777,1,0,0,0,9779,1265,1,0,0,0,9780,9785,3,1274,637,0,9781,9785,3,1278,639,0,9782,9785,3,1280,640,0,9783,9785,3,1490,745,0,9784,9780,1,0,0,0,9784,9781,1,0,0,0,9784,9782,1,0,0,0,9784,9783,1,0,0,0,9785,1267,1,0,0,0,9786,9791,3,1274,637,0,9787,9791,3,1278,639,0,9788,9791,3,1490,745,0,9789,9791,3,1282,641,0,9790,9786,1,0,0,0,9790,9787,1,0,0,0,9790,9788,1,0,0,0,9790,9789,1,0,0,0,9791,1269,1,0,0,0,9792,9797,3,1274,637,0,9793,9797,3,1278,639,0,9794,9797,3,1280,640,0,9795,9797,3,1282,641,0,9796,9792,1,0,0,0,9796,9793,1,0,0,0,9796,9794,1,0,0,0,9796,9795,1,0,0,0,9797,1271,1,0,0,0,9798,9805,3,1274,637,0,9799,9805,3,1490,745,0,9800,9805,3,1278,639,0,9801,9805,3,1280,640,0,9802,9805,3,1282,641,0,9803,9805,3,1284,642,0,9804,9798,1,0,0,0,9804,9799,1,0,0,0,9804,9800,1,0,0,0,9804,9801,1,0,0,0,9804,9802,1,0,0,0,9804,9803,1,0,0,0,9805,1273,1,0,0,0,9806,9807,5,636,0,0,9807,9814,3,1256,628,0,9808,9814,5,637,0,0,9809,9814,5,641,0,0,9810,9814,3,1084,542,0,9811,9814,3,1276,638,0,9812,9814,3,1490,745,0,9813,9806,1,0,0,0,9813,9808,1,0,0,0,9813,9809,1,0,0,0,9813,9810,1,0,0,0,9813,9811,1,0,0,0,9813,9812,1,0,0,0,9814,1275,1,0,0,0,9815,9816,5,662,0,0,9816,1277,1,0,0,0,9817,9818,7,59,0,0,9818,1279,1,0,0,0,9819,9872,5,380,0,0,9820,9872,5,381,0,0,9821,9872,3,1010,505,0,9822,9872,5,383,0,0,9823,9872,5,384,0,0,9824,9872,3,1018,509,0,9825,9872,5,386,0,0,9826,9872,5,387,0,0,9827,9872,5,388,0,0,9828,9872,5,389,0,0,9829,9872,5,390,0,0,9830,9872,5,391,0,0,9831,9872,5,392,0,0,9832,9872,5,470,0,0,9833,9872,5,393,0,0,9834,9872,5,394,0,0,9835,9872,5,395,0,0,9836,9872,5,396,0,0,9837,9872,5,397,0,0,9838,9872,5,398,0,0,9839,9872,5,399,0,0,9840,9872,5,400,0,0,9841,9872,5,489,0,0,9842,9872,5,401,0,0,9843,9872,3,1006,503,0,9844,9872,5,453,0,0,9845,9872,5,403,0,0,9846,9872,5,404,0,0,9847,9872,5,405,0,0,9848,9872,5,406,0,0,9849,9872,5,407,0,0,9850,9872,5,408,0,0,9851,9872,5,409,0,0,9852,9872,5,410,0,0,9853,9872,5,411,0,0,9854,9872,5,412,0,0,9855,9872,5,413,0,0,9856,9872,5,414,0,0,9857,9872,5,415,0,0,9858,9872,5,416,0,0,9859,9872,5,417,0,0,9860,9872,5,425,0,0,9861,9872,5,426,0,0,9862,9872,5,427,0,0,9863,9872,5,428,0,0,9864,9872,5,476,0,0,9865,9872,5,429,0,0,9866,9872,5,430,0,0,9867,9872,5,431,0,0,9868,9872,5,432,0,0,9869,9872,5,474,0,0,9870,9872,3,1286,643,0,9871,9819,1,0,0,0,9871,9820,1,0,0,0,9871,9821,1,0,0,0,9871,9822,1,0,0,0,9871,9823,1,0,0,0,9871,9824,1,0,0,0,9871,9825,1,0,0,0,9871,9826,1,0,0,0,9871,9827,1,0,0,0,9871,9828,1,0,0,0,9871,9829,1,0,0,0,9871,9830,1,0,0,0,9871,9831,1,0,0,0,9871,9832,1,0,0,0,9871,9833,1,0,0,0,9871,9834,1,0,0,0,9871,9835,1,0,0,0,9871,9836,1,0,0,0,9871,9837,1,0,0,0,9871,9838,1,0,0,0,9871,9839,1,0,0,0,9871,9840,1,0,0,0,9871,9841,1,0,0,0,9871,9842,1,0,0,0,9871,9843,1,0,0,0,9871,9844,1,0,0,0,9871,9845,1,0,0,0,9871,9846,1,0,0,0,9871,9847,1,0,0,0,9871,9848,1,0,0,0,9871,9849,1,0,0,0,9871,9850,1,0,0,0,9871,9851,1,0,0,0,9871,9852,1,0,0,0,9871,9853,1,0,0,0,9871,9854,1,0,0,0,9871,9855,1,0,0,0,9871,9856,1,0,0,0,9871,9857,1,0,0,0,9871,9858,1,0,0,0,9871,9859,1,0,0,0,9871,9860,1,0,0,0,9871,9861,1,0,0,0,9871,9862,1,0,0,0,9871,9863,1,0,0,0,9871,9864,1,0,0,0,9871,9865,1,0,0,0,9871,9866,1,0,0,0,9871,9867,1,0,0,0,9871,9868,1,0,0,0,9871,9869,1,0,0,0,9871,9870,1,0,0,0,9872,1281,1,0,0,0,9873,9874,7,60,0,0,9874,1283,1,0,0,0,9875,9876,7,61,0,0,9876,1285,1,0,0,0,9877,9878,7,62,0,0,9878,1287,1,0,0,0,9879,9880,3,1290,645,0,9880,9881,3,1300,650,0,9881,9882,3,1298,649,0,9882,1289,1,0,0,0,9883,9885,3,1292,646,0,9884,9883,1,0,0,0,9885,9888,1,0,0,0,9886,9884,1,0,0,0,9886,9887,1,0,0,0,9887,1291,1,0,0,0,9888,9886,1,0,0,0,9889,9890,3,1294,647,0,9890,9891,5,272,0,0,9891,9892,5,490,0,0,9892,9910,1,0,0,0,9893,9894,3,1294,647,0,9894,9895,5,491,0,0,9895,9896,3,1296,648,0,9896,9910,1,0,0,0,9897,9898,3,1294,647,0,9898,9899,5,492,0,0,9899,9900,5,493,0,0,9900,9910,1,0,0,0,9901,9902,3,1294,647,0,9902,9903,5,492,0,0,9903,9904,5,494,0,0,9904,9910,1,0,0,0,9905,9906,3,1294,647,0,9906,9907,5,492,0,0,9907,9908,5,495,0,0,9908,9910,1,0,0,0,9909,9889,1,0,0,0,9909,9893,1,0,0,0,9909,9897,1,0,0,0,9909,9901,1,0,0,0,9909,9905,1,0,0,0,9910,1293,1,0,0,0,9911,9912,5,29,0,0,9912,1295,1,0,0,0,9913,9918,3,1252,626,0,9914,9918,3,1284,642,0,9915,9918,3,1490,745,0,9916,9918,3,1278,639,0,9917,9913,1,0,0,0,9917,9914,1,0,0,0,9917,9915,1,0,0,0,9917,9916,1,0,0,0,9918,1297,1,0,0,0,9919,9922,1,0,0,0,9920,9922,5,7,0,0,9921,9919,1,0,0,0,9921,9920,1,0,0,0,9922,1299,1,0,0,0,9923,9924,3,1302,651,0,9924,9925,5,146,0,0,9925,9926,3,1344,672,0,9926,9927,3,1470,735,0,9927,9928,5,454,0,0,9928,9929,3,1484,742,0,9929,1301,1,0,0,0,9930,9935,3,1480,740,0,9931,9933,3,1304,652,0,9932,9934,3,1306,653,0,9933,9932,1,0,0,0,9933,9934,1,0,0,0,9934,9936,1,0,0,0,9935,9931,1,0,0,0,9935,9936,1,0,0,0,9936,1303,1,0,0,0,9937,9938,5,178,0,0,9938,1305,1,0,0,0,9939,9941,3,1310,655,0,9940,9939,1,0,0,0,9941,9942,1,0,0,0,9942,9940,1,0,0,0,9942,9943,1,0,0,0,9943,1307,1,0,0,0,9944,9945,5,18,0,0,9945,9946,3,1488,744,0,9946,9947,5,19,0,0,9947,1309,1,0,0,0,9948,9952,3,1312,656,0,9949,9952,5,178,0,0,9950,9952,3,1308,654,0,9951,9948,1,0,0,0,9951,9949,1,0,0,0,9951,9950,1,0,0,0,9952,1311,1,0,0,0,9953,9969,3,1328,664,0,9954,9955,5,496,0,0,9955,9956,5,62,0,0,9956,9970,3,1326,663,0,9957,9958,3,1330,665,0,9958,9959,3,1332,666,0,9959,9960,3,1334,667,0,9960,9961,3,1336,668,0,9961,9962,3,1338,669,0,9962,9970,1,0,0,0,9963,9964,3,1314,657,0,9964,9965,5,172,0,0,9965,9966,3,1318,659,0,9966,9967,3,1324,662,0,9967,9968,3,1316,658,0,9968,9970,1,0,0,0,9969,9954,1,0,0,0,9969,9957,1,0,0,0,9969,9963,1,0,0,0,9970,9971,1,0,0,0,9971,9972,5,7,0,0,9972,1313,1,0,0,0,9973,9978,1,0,0,0,9974,9975,5,262,0,0,9975,9978,5,317,0,0,9976,9978,5,317,0,0,9977,9973,1,0,0,0,9977,9974,1,0,0,0,9977,9976,1,0,0,0,9978,1315,1,0,0,0,9979,9980,3,858,429,0,9980,1317,1,0,0,0,9981,9987,1,0,0,0,9982,9983,5,2,0,0,9983,9984,3,1320,660,0,9984,9985,5,3,0,0,9985,9987,1,0,0,0,9986,9981,1,0,0,0,9986,9982,1,0,0,0,9987,1319,1,0,0,0,9988,9993,3,1322,661,0,9989,9990,5,6,0,0,9990,9992,3,1322,661,0,9991,9989,1,0,0,0,9992,9995,1,0,0,0,9993,9991,1,0,0,0,9993,9994,1,0,0,0,9994,1321,1,0,0,0,9995,9993,1,0,0,0,9996,9997,3,1328,664,0,9997,9998,3,1332,666,0,9998,1323,1,0,0,0,9999,1e4,7,63,0,0,1e4,1325,1,0,0,0,10001,10004,5,28,0,0,10002,10004,3,1264,632,0,10003,10001,1,0,0,0,10003,10002,1,0,0,0,10004,1327,1,0,0,0,10005,10006,3,1488,744,0,10006,1329,1,0,0,0,10007,10010,1,0,0,0,10008,10010,5,497,0,0,10009,10007,1,0,0,0,10009,10008,1,0,0,0,10010,1331,1,0,0,0,10011,10012,3,996,498,0,10012,1333,1,0,0,0,10013,10017,1,0,0,0,10014,10015,5,43,0,0,10015,10017,3,470,235,0,10016,10013,1,0,0,0,10016,10014,1,0,0,0,10017,1335,1,0,0,0,10018,10022,1,0,0,0,10019,10020,5,77,0,0,10020,10022,5,78,0,0,10021,10018,1,0,0,0,10021,10019,1,0,0,0,10022,1337,1,0,0,0,10023,10028,1,0,0,0,10024,10025,3,1340,670,0,10025,10026,3,1492,746,0,10026,10028,1,0,0,0,10027,10023,1,0,0,0,10027,10024,1,0,0,0,10028,1339,1,0,0,0,10029,10032,3,1342,671,0,10030,10032,5,53,0,0,10031,10029,1,0,0,0,10031,10030,1,0,0,0,10032,1341,1,0,0,0,10033,10034,7,64,0,0,10034,1343,1,0,0,0,10035,10037,3,1346,673,0,10036,10035,1,0,0,0,10037,10040,1,0,0,0,10038,10036,1,0,0,0,10038,10039,1,0,0,0,10039,1345,1,0,0,0,10040,10038,1,0,0,0,10041,10042,3,1300,650,0,10042,10043,5,7,0,0,10043,10069,1,0,0,0,10044,10069,3,1412,706,0,10045,10069,3,1416,708,0,10046,10069,3,1354,677,0,10047,10069,3,1370,685,0,10048,10069,3,1376,688,0,10049,10069,3,1386,693,0,10050,10069,3,1388,694,0,10051,10069,3,1390,695,0,10052,10069,3,1404,702,0,10053,10069,3,1408,704,0,10054,10069,3,1426,713,0,10055,10069,3,1432,716,0,10056,10069,3,1434,717,0,10057,10069,3,1348,674,0,10058,10069,3,1350,675,0,10059,10069,3,1356,678,0,10060,10069,3,1442,721,0,10061,10069,3,1446,723,0,10062,10069,3,1454,727,0,10063,10069,3,1456,728,0,10064,10069,3,1458,729,0,10065,10069,3,1460,730,0,10066,10069,3,1462,731,0,10067,10069,3,1466,733,0,10068,10041,1,0,0,0,10068,10044,1,0,0,0,10068,10045,1,0,0,0,10068,10046,1,0,0,0,10068,10047,1,0,0,0,10068,10048,1,0,0,0,10068,10049,1,0,0,0,10068,10050,1,0,0,0,10068,10051,1,0,0,0,10068,10052,1,0,0,0,10068,10053,1,0,0,0,10068,10054,1,0,0,0,10068,10055,1,0,0,0,10068,10056,1,0,0,0,10068,10057,1,0,0,0,10068,10058,1,0,0,0,10068,10059,1,0,0,0,10068,10060,1,0,0,0,10068,10061,1,0,0,0,10068,10062,1,0,0,0,10068,10063,1,0,0,0,10068,10064,1,0,0,0,10068,10065,1,0,0,0,10068,10066,1,0,0,0,10068,10067,1,0,0,0,10069,1347,1,0,0,0,10070,10071,5,498,0,0,10071,10072,3,1496,748,0,10072,10073,5,7,0,0,10073,1349,1,0,0,0,10074,10075,5,433,0,0,10075,10076,3,1488,744,0,10076,10077,5,2,0,0,10077,10078,3,1352,676,0,10078,10079,5,3,0,0,10079,10080,5,7,0,0,10080,10089,1,0,0,0,10081,10082,5,57,0,0,10082,10083,3,1488,744,0,10083,10084,5,2,0,0,10084,10085,3,1352,676,0,10085,10086,5,3,0,0,10086,10087,5,7,0,0,10087,10089,1,0,0,0,10088,10074,1,0,0,0,10088,10081,1,0,0,0,10089,1351,1,0,0,0,10090,10093,1,0,0,0,10091,10093,3,1156,578,0,10092,10090,1,0,0,0,10092,10091,1,0,0,0,10093,1353,1,0,0,0,10094,10095,3,1368,684,0,10095,10096,3,1342,671,0,10096,10097,3,1492,746,0,10097,10098,5,7,0,0,10098,1355,1,0,0,0,10099,10100,5,499,0,0,10100,10101,3,1358,679,0,10101,10102,5,500,0,0,10102,10103,3,1360,680,0,10103,10104,5,7,0,0,10104,1357,1,0,0,0,10105,10109,1,0,0,0,10106,10109,5,434,0,0,10107,10109,5,501,0,0,10108,10105,1,0,0,0,10108,10106,1,0,0,0,10108,10107,1,0,0,0,10109,1359,1,0,0,0,10110,10115,3,1362,681,0,10111,10112,5,6,0,0,10112,10114,3,1362,681,0,10113,10111,1,0,0,0,10114,10117,1,0,0,0,10115,10113,1,0,0,0,10115,10116,1,0,0,0,10116,1361,1,0,0,0,10117,10115,1,0,0,0,10118,10119,3,1366,683,0,10119,10120,3,1342,671,0,10120,10121,3,1364,682,0,10121,1363,1,0,0,0,10122,10123,3,1264,632,0,10123,1365,1,0,0,0,10124,10125,3,1368,684,0,10125,1367,1,0,0,0,10126,10129,3,470,235,0,10127,10129,5,28,0,0,10128,10126,1,0,0,0,10128,10127,1,0,0,0,10129,10136,1,0,0,0,10130,10131,5,4,0,0,10131,10132,3,1498,749,0,10132,10133,5,5,0,0,10133,10135,1,0,0,0,10134,10130,1,0,0,0,10135,10138,1,0,0,0,10136,10134,1,0,0,0,10136,10137,1,0,0,0,10137,1369,1,0,0,0,10138,10136,1,0,0,0,10139,10140,5,220,0,0,10140,10141,3,1494,747,0,10141,10142,5,93,0,0,10142,10143,3,1344,672,0,10143,10144,3,1372,686,0,10144,10145,3,1374,687,0,10145,10146,5,454,0,0,10146,10147,5,220,0,0,10147,10148,5,7,0,0,10148,1371,1,0,0,0,10149,10150,5,502,0,0,10150,10151,3,1038,519,0,10151,10152,5,93,0,0,10152,10153,3,1344,672,0,10153,10155,1,0,0,0,10154,10149,1,0,0,0,10155,10158,1,0,0,0,10156,10154,1,0,0,0,10156,10157,1,0,0,0,10157,1373,1,0,0,0,10158,10156,1,0,0,0,10159,10163,1,0,0,0,10160,10161,5,58,0,0,10161,10163,3,1344,672,0,10162,10159,1,0,0,0,10162,10160,1,0,0,0,10163,1375,1,0,0,0,10164,10165,5,40,0,0,10165,10166,3,1378,689,0,10166,10167,3,1380,690,0,10167,10168,3,1384,692,0,10168,10169,5,454,0,0,10169,10170,5,40,0,0,10170,10171,5,7,0,0,10171,1377,1,0,0,0,10172,10175,1,0,0,0,10173,10175,3,1492,746,0,10174,10172,1,0,0,0,10174,10173,1,0,0,0,10175,1379,1,0,0,0,10176,10178,3,1382,691,0,10177,10176,1,0,0,0,10178,10179,1,0,0,0,10179,10177,1,0,0,0,10179,10180,1,0,0,0,10180,1381,1,0,0,0,10181,10182,5,102,0,0,10182,10183,3,1156,578,0,10183,10184,5,93,0,0,10184,10185,3,1344,672,0,10185,1383,1,0,0,0,10186,10190,1,0,0,0,10187,10188,5,58,0,0,10188,10190,3,1344,672,0,10189,10186,1,0,0,0,10189,10187,1,0,0,0,10190,1385,1,0,0,0,10191,10192,3,1482,741,0,10192,10193,3,1430,715,0,10193,1387,1,0,0,0,10194,10195,3,1482,741,0,10195,10196,5,503,0,0,10196,10197,3,1500,750,0,10197,10198,3,1430,715,0,10198,1389,1,0,0,0,10199,10200,3,1482,741,0,10200,10201,5,62,0,0,10201,10202,3,1392,696,0,10202,10203,3,1430,715,0,10203,1391,1,0,0,0,10204,10205,3,1402,701,0,10205,10221,5,68,0,0,10206,10207,3,854,427,0,10207,10208,3,1396,698,0,10208,10222,1,0,0,0,10209,10222,3,858,429,0,10210,10222,3,782,391,0,10211,10212,5,202,0,0,10212,10213,3,1038,519,0,10213,10214,3,1394,697,0,10214,10222,1,0,0,0,10215,10216,3,1398,699,0,10216,10217,3,1038,519,0,10217,10218,5,24,0,0,10218,10219,3,1038,519,0,10219,10220,3,1400,700,0,10220,10222,1,0,0,0,10221,10206,1,0,0,0,10221,10209,1,0,0,0,10221,10210,1,0,0,0,10221,10211,1,0,0,0,10221,10215,1,0,0,0,10222,1393,1,0,0,0,10223,10227,1,0,0,0,10224,10225,5,100,0,0,10225,10227,3,1156,578,0,10226,10223,1,0,0,0,10226,10224,1,0,0,0,10227,1395,1,0,0,0,10228,10241,1,0,0,0,10229,10230,5,2,0,0,10230,10235,3,1038,519,0,10231,10232,5,6,0,0,10232,10234,3,1038,519,0,10233,10231,1,0,0,0,10234,10237,1,0,0,0,10235,10233,1,0,0,0,10235,10236,1,0,0,0,10236,10238,1,0,0,0,10237,10235,1,0,0,0,10238,10239,5,3,0,0,10239,10241,1,0,0,0,10240,10228,1,0,0,0,10240,10229,1,0,0,0,10241,1397,1,0,0,0,10242,10245,1,0,0,0,10243,10245,5,504,0,0,10244,10242,1,0,0,0,10244,10243,1,0,0,0,10245,1399,1,0,0,0,10246,10250,1,0,0,0,10247,10248,5,147,0,0,10248,10250,3,1038,519,0,10249,10246,1,0,0,0,10249,10247,1,0,0,0,10250,1401,1,0,0,0,10251,10252,3,468,234,0,10252,1403,1,0,0,0,10253,10254,3,1482,741,0,10254,10255,5,505,0,0,10255,10256,3,1402,701,0,10256,10257,3,1406,703,0,10257,10258,5,68,0,0,10258,10259,5,35,0,0,10259,10260,3,1038,519,0,10260,10261,3,1430,715,0,10261,1405,1,0,0,0,10262,10266,1,0,0,0,10263,10264,5,506,0,0,10264,10266,3,1250,625,0,10265,10262,1,0,0,0,10265,10263,1,0,0,0,10266,1407,1,0,0,0,10267,10268,3,1410,705,0,10268,10269,3,1484,742,0,10269,10270,3,1486,743,0,10270,10271,5,7,0,0,10271,1409,1,0,0,0,10272,10273,7,65,0,0,10273,1411,1,0,0,0,10274,10286,5,508,0,0,10275,10276,5,261,0,0,10276,10287,3,1492,746,0,10277,10283,5,509,0,0,10278,10279,5,202,0,0,10279,10280,3,1038,519,0,10280,10281,3,1394,697,0,10281,10284,1,0,0,0,10282,10284,3,858,429,0,10283,10278,1,0,0,0,10283,10282,1,0,0,0,10284,10287,1,0,0,0,10285,10287,3,1414,707,0,10286,10275,1,0,0,0,10286,10277,1,0,0,0,10286,10285,1,0,0,0,10287,10288,1,0,0,0,10288,10289,5,7,0,0,10289,1413,1,0,0,0,10290,10293,1,0,0,0,10291,10293,3,1492,746,0,10292,10290,1,0,0,0,10292,10291,1,0,0,0,10293,1415,1,0,0,0,10294,10295,5,510,0,0,10295,10296,3,1418,709,0,10296,10297,3,1252,626,0,10297,10298,3,1420,710,0,10298,10299,3,1422,711,0,10299,10300,5,7,0,0,10300,10321,1,0,0,0,10301,10302,5,510,0,0,10302,10303,3,1418,709,0,10303,10304,3,1274,637,0,10304,10305,3,1422,711,0,10305,10306,5,7,0,0,10306,10321,1,0,0,0,10307,10308,5,510,0,0,10308,10309,3,1418,709,0,10309,10310,5,511,0,0,10310,10311,3,1252,626,0,10311,10312,3,1422,711,0,10312,10313,5,7,0,0,10313,10321,1,0,0,0,10314,10315,5,510,0,0,10315,10316,3,1418,709,0,10316,10317,3,1422,711,0,10317,10318,5,7,0,0,10318,10321,1,0,0,0,10319,10321,5,510,0,0,10320,10294,1,0,0,0,10320,10301,1,0,0,0,10320,10307,1,0,0,0,10320,10314,1,0,0,0,10320,10319,1,0,0,0,10321,1417,1,0,0,0,10322,10331,1,0,0,0,10323,10331,1,0,0,0,10324,10331,5,512,0,0,10325,10331,5,513,0,0,10326,10331,5,514,0,0,10327,10331,5,515,0,0,10328,10331,5,516,0,0,10329,10331,5,517,0,0,10330,10322,1,0,0,0,10330,10323,1,0,0,0,10330,10324,1,0,0,0,10330,10325,1,0,0,0,10330,10326,1,0,0,0,10330,10327,1,0,0,0,10330,10328,1,0,0,0,10330,10329,1,0,0,0,10331,1419,1,0,0,0,10332,10340,1,0,0,0,10333,10334,5,6,0,0,10334,10336,3,1038,519,0,10335,10333,1,0,0,0,10336,10337,1,0,0,0,10337,10335,1,0,0,0,10337,10338,1,0,0,0,10338,10340,1,0,0,0,10339,10332,1,0,0,0,10339,10335,1,0,0,0,10340,1421,1,0,0,0,10341,10352,1,0,0,0,10342,10343,5,100,0,0,10343,10348,3,1424,712,0,10344,10345,5,6,0,0,10345,10347,3,1424,712,0,10346,10344,1,0,0,0,10347,10350,1,0,0,0,10348,10346,1,0,0,0,10348,10349,1,0,0,0,10349,10352,1,0,0,0,10350,10348,1,0,0,0,10351,10341,1,0,0,0,10351,10342,1,0,0,0,10352,1423,1,0,0,0,10353,10354,3,1274,637,0,10354,10355,5,10,0,0,10355,10356,3,1038,519,0,10356,1425,1,0,0,0,10357,10358,5,518,0,0,10358,10359,3,1492,746,0,10359,10360,3,1428,714,0,10360,10361,5,7,0,0,10361,1427,1,0,0,0,10362,10366,1,0,0,0,10363,10364,5,6,0,0,10364,10366,3,1492,746,0,10365,10362,1,0,0,0,10365,10363,1,0,0,0,10366,1429,1,0,0,0,10367,10368,5,519,0,0,10368,10369,3,1344,672,0,10369,10370,5,454,0,0,10370,10371,5,519,0,0,10371,10372,3,1484,742,0,10372,10373,5,7,0,0,10373,1431,1,0,0,0,10374,10375,3,1502,751,0,10375,10376,5,7,0,0,10376,1433,1,0,0,0,10377,10378,5,202,0,0,10378,10386,3,1038,519,0,10379,10380,3,1440,720,0,10380,10381,3,1436,718,0,10381,10387,1,0,0,0,10382,10383,3,1436,718,0,10383,10384,3,1440,720,0,10384,10387,1,0,0,0,10385,10387,1,0,0,0,10386,10379,1,0,0,0,10386,10382,1,0,0,0,10386,10385,1,0,0,0,10387,10388,1,0,0,0,10388,10389,5,7,0,0,10389,1435,1,0,0,0,10390,10394,1,0,0,0,10391,10392,5,100,0,0,10392,10394,3,1438,719,0,10393,10390,1,0,0,0,10393,10391,1,0,0,0,10394,1437,1,0,0,0,10395,10400,3,1038,519,0,10396,10397,5,6,0,0,10397,10399,3,1038,519,0,10398,10396,1,0,0,0,10399,10402,1,0,0,0,10400,10398,1,0,0,0,10400,10401,1,0,0,0,10401,1439,1,0,0,0,10402,10400,1,0,0,0,10403,10410,1,0,0,0,10404,10406,5,71,0,0,10405,10407,5,339,0,0,10406,10405,1,0,0,0,10406,10407,1,0,0,0,10407,10408,1,0,0,0,10408,10410,3,1448,724,0,10409,10403,1,0,0,0,10409,10404,1,0,0,0,10410,1441,1,0,0,0,10411,10440,5,520,0,0,10412,10414,3,1468,734,0,10413,10415,5,262,0,0,10414,10413,1,0,0,0,10414,10415,1,0,0,0,10415,10416,1,0,0,0,10416,10417,5,317,0,0,10417,10424,5,62,0,0,10418,10425,3,858,429,0,10419,10420,5,202,0,0,10420,10421,3,1492,746,0,10421,10422,5,100,0,0,10422,10423,3,1156,578,0,10423,10425,1,0,0,0,10424,10418,1,0,0,0,10424,10419,1,0,0,0,10425,10441,1,0,0,0,10426,10438,3,1264,632,0,10427,10428,5,2,0,0,10428,10433,3,1444,722,0,10429,10430,5,6,0,0,10430,10432,3,1444,722,0,10431,10429,1,0,0,0,10432,10435,1,0,0,0,10433,10431,1,0,0,0,10433,10434,1,0,0,0,10434,10436,1,0,0,0,10435,10433,1,0,0,0,10436,10437,5,3,0,0,10437,10439,1,0,0,0,10438,10427,1,0,0,0,10438,10439,1,0,0,0,10439,10441,1,0,0,0,10440,10412,1,0,0,0,10440,10426,1,0,0,0,10441,10442,1,0,0,0,10442,10443,5,7,0,0,10443,1443,1,0,0,0,10444,10445,3,1264,632,0,10445,10446,5,20,0,0,10446,10447,3,1038,519,0,10447,10450,1,0,0,0,10448,10450,3,1038,519,0,10449,10444,1,0,0,0,10449,10448,1,0,0,0,10450,1445,1,0,0,0,10451,10452,5,61,0,0,10452,10453,3,1452,726,0,10453,10454,3,1450,725,0,10454,10455,3,1468,734,0,10455,10456,5,71,0,0,10456,10457,3,1448,724,0,10457,10458,5,7,0,0,10458,1447,1,0,0,0,10459,10460,3,1156,578,0,10460,1449,1,0,0,0,10461,10465,1,0,0,0,10462,10465,5,64,0,0,10463,10465,5,68,0,0,10464,10461,1,0,0,0,10464,10462,1,0,0,0,10464,10463,1,0,0,0,10465,1451,1,0,0,0,10466,10484,1,0,0,0,10467,10484,1,0,0,0,10468,10484,5,261,0,0,10469,10484,5,286,0,0,10470,10484,5,207,0,0,10471,10484,5,240,0,0,10472,10473,5,130,0,0,10473,10484,3,1038,519,0,10474,10475,5,300,0,0,10475,10484,3,1038,519,0,10476,10484,3,1038,519,0,10477,10484,5,30,0,0,10478,10481,7,66,0,0,10479,10482,3,1038,519,0,10480,10482,5,30,0,0,10481,10479,1,0,0,0,10481,10480,1,0,0,0,10481,10482,1,0,0,0,10482,10484,1,0,0,0,10483,10466,1,0,0,0,10483,10467,1,0,0,0,10483,10468,1,0,0,0,10483,10469,1,0,0,0,10483,10470,1,0,0,0,10483,10471,1,0,0,0,10483,10472,1,0,0,0,10483,10474,1,0,0,0,10483,10476,1,0,0,0,10483,10477,1,0,0,0,10483,10478,1,0,0,0,10484,1453,1,0,0,0,10485,10486,5,258,0,0,10486,10487,3,1452,726,0,10487,10488,3,1468,734,0,10488,10489,5,7,0,0,10489,1455,1,0,0,0,10490,10491,5,157,0,0,10491,10492,3,1468,734,0,10492,10493,5,7,0,0,10493,1457,1,0,0,0,10494,10495,5,78,0,0,10495,10496,5,7,0,0,10496,1459,1,0,0,0,10497,10498,5,161,0,0,10498,10499,3,1464,732,0,10499,10500,5,7,0,0,10500,1461,1,0,0,0,10501,10502,5,312,0,0,10502,10503,3,1464,732,0,10503,10504,5,7,0,0,10504,1463,1,0,0,0,10505,10507,5,33,0,0,10506,10508,5,262,0,0,10507,10506,1,0,0,0,10507,10508,1,0,0,0,10508,10509,1,0,0,0,10509,10512,5,153,0,0,10510,10512,1,0,0,0,10511,10505,1,0,0,0,10511,10510,1,0,0,0,10512,1465,1,0,0,0,10513,10514,5,326,0,0,10514,10515,3,470,235,0,10515,10516,5,94,0,0,10516,10517,5,53,0,0,10517,10518,5,7,0,0,10518,10526,1,0,0,0,10519,10522,5,306,0,0,10520,10523,3,470,235,0,10521,10523,5,30,0,0,10522,10520,1,0,0,0,10522,10521,1,0,0,0,10523,10524,1,0,0,0,10524,10526,5,7,0,0,10525,10513,1,0,0,0,10525,10519,1,0,0,0,10526,1467,1,0,0,0,10527,10530,3,1264,632,0,10528,10530,5,28,0,0,10529,10527,1,0,0,0,10529,10528,1,0,0,0,10530,1469,1,0,0,0,10531,10535,1,0,0,0,10532,10533,5,517,0,0,10533,10535,3,1472,736,0,10534,10531,1,0,0,0,10534,10532,1,0,0,0,10535,1471,1,0,0,0,10536,10538,3,1474,737,0,10537,10536,1,0,0,0,10538,10539,1,0,0,0,10539,10537,1,0,0,0,10539,10540,1,0,0,0,10540,1473,1,0,0,0,10541,10542,5,102,0,0,10542,10543,3,1476,738,0,10543,10544,5,93,0,0,10544,10545,3,1344,672,0,10545,1475,1,0,0,0,10546,10551,3,1478,739,0,10547,10548,5,82,0,0,10548,10550,3,1478,739,0,10549,10547,1,0,0,0,10550,10553,1,0,0,0,10551,10549,1,0,0,0,10551,10552,1,0,0,0,10552,1477,1,0,0,0,10553,10551,1,0,0,0,10554,10558,3,1488,744,0,10555,10556,5,511,0,0,10556,10558,3,1252,626,0,10557,10554,1,0,0,0,10557,10555,1,0,0,0,10558,1479,1,0,0,0,10559,10562,1,0,0,0,10560,10562,3,1308,654,0,10561,10559,1,0,0,0,10561,10560,1,0,0,0,10562,1481,1,0,0,0,10563,10566,1,0,0,0,10564,10566,3,1308,654,0,10565,10563,1,0,0,0,10565,10564,1,0,0,0,10566,1483,1,0,0,0,10567,10570,1,0,0,0,10568,10570,3,1488,744,0,10569,10567,1,0,0,0,10569,10568,1,0,0,0,10570,1485,1,0,0,0,10571,10572,5,102,0,0,10572,10575,3,1496,748,0,10573,10575,1,0,0,0,10574,10571,1,0,0,0,10574,10573,1,0,0,0,10575,1487,1,0,0,0,10576,10579,3,1264,632,0,10577,10579,3,1490,745,0,10578,10576,1,0,0,0,10578,10577,1,0,0,0,10579,1489,1,0,0,0,10580,10581,7,67,0,0,10581,1491,1,0,0,0,10582,10584,3,1202,601,0,10583,10585,3,878,439,0,10584,10583,1,0,0,0,10584,10585,1,0,0,0,10585,10586,1,0,0,0,10586,10587,3,936,468,0,10587,10588,3,974,487,0,10588,10589,3,918,459,0,10589,10590,3,924,462,0,10590,10591,3,1116,558,0,10591,1493,1,0,0,0,10592,10593,3,1492,746,0,10593,1495,1,0,0,0,10594,10595,3,1492,746,0,10595,1497,1,0,0,0,10596,10597,3,1038,519,0,10597,1499,1,0,0,0,10598,10599,3,1038,519,0,10599,1501,1,0,0,0,10600,10601,3,6,3,0,10601,10602,3,1504,752,0,10602,1503,1,0,0,0,10603,10605,5,71,0,0,10604,10606,5,339,0,0,10605,10604,1,0,0,0,10605,10606,1,0,0,0,10606,10607,1,0,0,0,10607,10610,3,1448,724,0,10608,10610,1,0,0,0,10609,10603,1,0,0,0,10609,10608,1,0,0,0,10610,1505,1,0,0,0,10611,10612,7,68,0,0,10612,1507,1,0,0,0,792,1509,1517,1523,1647,1651,1658,1663,1669,1675,1691,1699,1704,1722,1727,1737,1748,1755,1761,1766,1775,1779,1791,1823,1830,1838,1843,1850,1856,1873,1878,1882,1895,1899,1904,1909,1921,1930,1943,1948,1959,1970,1975,1986,1997,2007,2022,2034,2039,2046,2057,2208,2217,2237,2304,2311,2316,2321,2326,2334,2343,2350,2360,2362,2367,2373,2379,2381,2409,2419,2432,2444,2458,2463,2467,2473,2487,2493,2500,2505,2512,2549,2552,2557,2564,2579,2585,2593,2626,2636,2640,2647,2654,2662,2668,2672,2682,2689,2700,2720,2734,2742,2747,2754,2764,2774,2794,2809,2834,2841,2848,2859,2864,2871,2882,2890,2901,2917,2925,2929,2943,2960,2965,2972,2981,2984,2989,2996,3007,3020,3033,3051,3054,3058,3065,3082,3093,3097,3103,3113,3118,3127,3149,3151,3159,3166,3172,3181,3183,3187,3192,3198,3202,3215,3221,3230,3237,3247,3256,3401,3409,3421,3426,3434,3445,3453,3460,3473,3483,3497,3513,3521,3526,3531,3539,3541,3599,3616,3624,3647,3651,3671,3708,3717,3722,3727,3732,3785,3791,3798,3808,3813,3818,3833,3837,3847,3853,3859,3866,3871,3876,3890,3918,3925,3939,3954,4006,4073,4081,4089,4097,4105,4119,4159,4165,4172,4188,4196,4203,4218,4223,4232,4259,4266,4281,4301,4321,4340,4349,4358,4367,4376,4385,4396,4441,4464,4469,4484,4493,4498,4504,4511,4525,4624,4711,4715,4853,4858,4862,4868,4936,4942,4971,4988,4995,5007,5047,5054,5060,5066,5092,5098,5104,5112,5124,5153,5159,5163,5166,5181,5185,5202,5207,5214,5228,5241,5250,5256,5261,5265,5270,5277,5285,5295,5297,5304,5311,5319,5325,5332,5334,5341,5347,5351,5357,5362,5366,5371,5377,5383,5389,5395,5408,5417,5428,5434,5473,5483,5490,5501,5507,5517,5526,5529,5567,5581,5595,5619,5626,5636,5648,5653,5689,5696,5711,5758,5774,5778,5787,5791,5799,5803,5811,5815,5823,5827,5830,5839,5856,6028,6073,6164,6295,6299,6304,6310,6321,6332,6345,6357,6368,6375,6523,6589,6604,6615,6622,6815,6825,6833,6862,6878,6920,6934,6956,6963,6971,6975,6982,6991,7e3,7009,7014,7055,7060,7072,7076,7081,7086,7090,7095,7111,7119,7124,7138,7141,7145,7150,7160,7171,7182,7192,7197,7235,7243,7247,7328,7332,7356,7361,7365,7368,7372,7382,7394,7401,7411,7416,7420,7427,7437,7441,7460,7466,7477,7484,7489,7502,7508,7537,7544,7556,7559,7571,7586,7592,7601,7617,7620,7631,7636,7640,7644,7649,7652,7658,7662,7664,7667,7674,7677,7684,7692,7695,7704,7709,7721,7734,7745,7748,7752,7758,7761,7776,7789,7796,7808,7810,7825,7829,7839,7848,7850,7860,7862,7864,7873,7883,7888,7893,7898,7901,7915,7919,7926,7941,7945,7949,7952,7965,7969,7974,7982,7988,7999,8006,8012,8016,8018,8022,8028,8037,8043,8045,8047,8054,8058,8067,8071,8081,8088,8110,8115,8120,8125,8134,8138,8141,8146,8159,8165,8173,8176,8183,8188,8209,8218,8223,8229,8234,8241,8246,8252,8254,8258,8265,8269,8272,8279,8284,8287,8294,8298,8307,8313,8321,8323,8330,8335,8338,8361,8367,8378,8383,8388,8395,8398,8402,8409,8426,8442,8445,8452,8456,8461,8471,8478,8487,8490,8495,8500,8508,8510,8516,8529,8531,8537,8543,8546,8555,8573,8580,8584,8588,8604,8611,8619,8623,8630,8643,8659,8665,8671,8678,8683,8689,8696,8704,8712,8717,8721,8727,8731,8735,8738,8744,8749,8765,8768,8770,8782,8784,8788,8794,8799,8807,8811,8820,8828,8834,8837,8846,8851,8858,8868,8894,8905,8907,8909,8917,8940,8948,8958,8972,8982,8986,9e3,9007,9014,9021,9046,9075,9114,9116,9144,9165,9172,9185,9197,9203,9212,9229,9241,9250,9255,9262,9272,9275,9286,9292,9307,9315,9324,9333,9336,9341,9350,9355,9369,9379,9387,9401,9408,9416,9424,9431,9437,9446,9454,9464,9475,9482,9511,9520,9527,9538,9548,9552,9556,9561,9566,9570,9572,9575,9580,9585,9590,9597,9606,9608,9615,9625,9635,9645,9659,9664,9671,9687,9702,9716,9721,9740,9745,9750,9757,9762,9769,9778,9784,9790,9796,9804,9813,9871,9886,9909,9917,9921,9933,9935,9942,9951,9969,9977,9986,9993,10003,10009,10016,10021,10027,10031,10038,10068,10088,10092,10108,10115,10128,10136,10156,10162,10174,10179,10189,10221,10226,10235,10240,10244,10249,10265,10283,10286,10292,10320,10330,10337,10339,10348,10351,10365,10386,10393,10400,10406,10409,10414,10424,10433,10438,10440,10449,10464,10481,10483,10507,10511,10522,10525,10529,10534,10539,10551,10557,10561,10565,10569,10574,10578,10584,10605,10609],Xi.vocabulary=new Ra(Xi.literalNames,Xi.symbolicNames,[]),Xi.decisionsToDFA=Xi._ATN.decisionToState.map(((t,e)=>new ni(t,e))),Xi),nn=class extends ga{constructor(t,e){super(t,e)}EOF(){return this.getToken(cn.EOF,0)}statements(){return this.getRuleContext(0,En)}get ruleIndex(){return cn.RULE_root}accept(t){return t.visitRoot?t.visitRoot(this):t.visitChildren(this)}},hn=class extends ga{constructor(t,e){super(t,e)}plsqlFunction(){return this.getRuleContext(0,oN)}get ruleIndex(){return cn.RULE_plsqlRoot}accept(t){return t.visitPlsqlRoot?t.visitPlsqlRoot(this):t.visitChildren(this)}},En=class t extends ga{constructor(t,e){super(t,e)}statement(){return this.getRuleContext(0,Tn)}SEMI(){return this.getToken(cn.SEMI,0)}statements(){return this.getRuleContext(0,t)}get ruleIndex(){return cn.RULE_statements}accept(t){return t.visitStatements?t.visitStatements(this):t.visitChildren(this)}},Tn=class extends ga{constructor(t,e){super(t,e)}alterEventTriggerStatement(){return this.getRuleContext(0,ZT)}alterCollationStatement(){return this.getRuleContext(0,$A)}alterDatabaseStatement(){return this.getRuleContext(0,qA)}alterDatabaseSetStatement(){return this.getRuleContext(0,jA)}alterDefaultPrivilegesStatement(){return this.getRuleContext(0,tR)}alterDomainStatement(){return this.getRuleContext(0,sS)}alterEnumStatement(){return this.getRuleContext(0,io)}alterExtensionStatement(){return this.getRuleContext(0,WE)}alterExtensionContentsStatement(){return this.getRuleContext(0,XE)}alterForeignDataWrapperStatement(){return this.getRuleContext(0,ZE)}alterForeignServerStatement(){return this.getRuleContext(0,nT)}alterFunctionStatement(){return this.getRuleContext(0,yR)}alterObjectDependsStatement(){return this.getRuleContext(0,TA)}alterObjectSchemaStatement(){return this.getRuleContext(0,oA)}alterOwnerStatement(){return this.getRuleContext(0,IA)}alterOperatorStatement(){return this.getRuleContext(0,RA)}alterTypeStatement(){return this.getRuleContext(0,OA)}alterPolicyStatement(){return this.getRuleContext(0,IT)}alterSequenceStatement(){return this.getRuleContext(0,mE)}alterSystemStatement(){return this.getRuleContext(0,tS)}alterTableStatement(){return this.getRuleContext(0,jn)}alterTablespaceStatement(){return this.getRuleContext(0,cA)}alterCompositeTypeStatement(){return this.getRuleContext(0,Oh)}alterPublicationStatement(){return this.getRuleContext(0,CA)}alterRoleSetStatement(){return this.getRuleContext(0,Cn)}alterRoleStatement(){return this.getRuleContext(0,Nn)}alterSubscriptionStatement(){return this.getRuleContext(0,dA)}alterStatsStatement(){return this.getRuleContext(0,NE)}altertsConfigurationStatement(){return this.getRuleContext(0,cS)}altertsDictionaryStatement(){return this.getRuleContext(0,iS)}alterUserMappingStatement(){return this.getRuleContext(0,lT)}analyzeStatement(){return this.getRuleContext(0,oS)}callStatement(){return this.getRuleContext(0,Rn)}checkpointStatement(){return this.getRuleContext(0,Zn)}closePortalStatement(){return this.getRuleContext(0,Nh)}clusterStatement(){return this.getRuleContext(0,hS)}commentStatement(){return this.getRuleContext(0,ko)}setConstraintsStatement(){return this.getRuleContext(0,Kn)}copyStatement(){return this.getRuleContext(0,Lh)}createAccessMethodStatement(){return this.getRuleContext(0,MT)}createAsStatement(){return this.getRuleContext(0,LE)}createAssertionStatement(){return this.getRuleContext(0,jT)}createCastStatement(){return this.getRuleContext(0,ZR)}createConversionStatement(){return this.getRuleContext(0,nS)}createDomainStatement(){return this.getRuleContext(0,eS)}createExtensionStatement(){return this.getRuleContext(0,wE)}createForeignDataWrapperStatement(){return this.getRuleContext(0,KE)}createForeignServerStatement(){return this.getRuleContext(0,rT)}createForeignTableStatement(){return this.getRuleContext(0,hT)}createFunctionStatement(){return this.getRuleContext(0,SR)}createMaterializedViewStatement(){return this.getRuleContext(0,PE)}createOperatorClassStatement(){return this.getRuleContext(0,no)}createOperatorFamilyStatement(){return this.getRuleContext(0,Ro)}createPublicationStatement(){return this.getRuleContext(0,uA)}alterOperatorFamilyStatement(){return this.getRuleContext(0,Ao)}createPolicyStatement(){return this.getRuleContext(0,OT)}createProcedureLangStatement(){return this.getRuleContext(0,HE)}createSchemaStatement(){return this.getRuleContext(0,Mn)}createSequenceStatement(){return this.getRuleContext(0,UE)}createStatement(){return this.getRuleContext(0,ph)}createSubscriptionStatement(){return this.getRuleContext(0,_A)}createStatsStatement(){return this.getRuleContext(0,uE)}createTablespaceStatement(){return this.getRuleContext(0,yE)}createTransformStatement(){return this.getRuleContext(0,$R)}createTriggerStatement(){return this.getRuleContext(0,UT)}createEventTriggerStatement(){return this.getRuleContext(0,XT)}createRoleStatement(){return this.getRuleContext(0,un)}createUserMappingStatement(){return this.getRuleContext(0,RT)}createDatabaseStatement(){return this.getRuleContext(0,KA)}deallocateStatement(){return this.getRuleContext(0,xS)}declareCursorStatement(){return this.getRuleContext(0,sl)}defineStatement(){return this.getRuleContext(0,zT)}deleteStatement(){return this.getRuleContext(0,XS)}discardStatement(){return this.getRuleContext(0,qn)}doStatement(){return this.getRuleContext(0,KR)}dropCastStatement(){return this.getRuleContext(0,jR)}dropOperatorClassStatement(){return this.getRuleContext(0,Oo)}dropOperatorFamilyStatement(){return this.getRuleContext(0,Io)}dropOwnedStatement(){return this.getRuleContext(0,uo)}dropStatement(){return this.getRuleContext(0,Lo)}dropSubscriptionStatement(){return this.getRuleContext(0,UA)}dropTablespaceStatement(){return this.getRuleContext(0,YE)}dropTransformStatement(){return this.getRuleContext(0,eA)}dropRoleStatement(){return this.getRuleContext(0,_n)}dropUserMappingStatement(){return this.getRuleContext(0,ST)}dropDatabaseStatement(){return this.getRuleContext(0,zA)}executeStatement(){return this.getRuleContext(0,pS)}explainStatement(){return this.getRuleContext(0,CS)}fetchStatement(){return this.getRuleContext(0,Bo)}grantStatement(){return this.getRuleContext(0,wo)}grantPrivilegeStatement(){return this.getRuleContext(0,qo)}importForeignSchemaStatement(){return this.getRuleContext(0,ET)}indexStatement(){return this.getRuleContext(0,rR)}insertStatement(){return this.getRuleContext(0,kS)}mergeStatement(){return this.getRuleContext(0,wS)}listenStatement(){return this.getRuleContext(0,vA)}refreshMaterializedViewStatement(){return this.getRuleContext(0,dE)}loadStatement(){return this.getRuleContext(0,XA)}lockStatement(){return this.getRuleContext(0,QS)}notifyStatement(){return this.getRuleContext(0,GA)}prepareStatement(){return this.getRuleContext(0,US)}reassignOwnedStatement(){return this.getRuleContext(0,No)}reindexStatement(){return this.getRuleContext(0,sA)}removeAggregateStatement(){return this.getRuleContext(0,YR)}removeFunctionStatement(){return this.getRuleContext(0,fR)}removeOperatorStatement(){return this.getRuleContext(0,wR)}renameStatement(){return this.getRuleContext(0,nA)}revokeStatement(){return this.getRuleContext(0,bo)}revokePrivilegeStatement(){return this.getRuleContext(0,jo)}ruleStatement(){return this.getRuleContext(0,mA)}securityLabelStatement(){return this.getRuleContext(0,Go)}selectStatement(){return this.getRuleContext(0,il)}transactionStatement(){return this.getRuleContext(0,yA)}truncateStatement(){return this.getRuleContext(0,go)}unlistenStatement(){return this.getRuleContext(0,BA)}updateStatement(){return this.getRuleContext(0,zS)}vacuumStatement(){return this.getRuleContext(0,TS)}variableResetStatement(){return this.getRuleContext(0,Yn)}variableSetStatement(){return this.getRuleContext(0,Dn)}variableShowStatement(){return this.getRuleContext(0,Xn)}viewStatement(){return this.getRuleContext(0,WA)}plsqlConsoleCommand(){return this.getRuleContext(0,on)}get ruleIndex(){return cn.RULE_statement}accept(t){return t.visitStatement?t.visitStatement(this):t.visitChildren(this)}},on=class extends ga{constructor(t,e){super(t,e)}MetaCommand(){return this.getToken(cn.MetaCommand,0)}EndMetaCommand(){return this.getToken(cn.EndMetaCommand,0)}get ruleIndex(){return cn.RULE_plsqlConsoleCommand}accept(t){return t.visitPlsqlConsoleCommand?t.visitPlsqlConsoleCommand(this):t.visitChildren(this)}},Rn=class extends ga{constructor(t,e){super(t,e)}CALL(){return this.getToken(cn.CALL,0)}functionApplication(){return this.getRuleContext(0,SI)}get ruleIndex(){return cn.RULE_callStatement}accept(t){return t.visitCallStatement?t.visitCallStatement(this):t.visitChildren(this)}},An=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}get ruleIndex(){return cn.RULE_optionalWith}accept(t){return t.visitOptionalWith?t.visitOptionalWith(this):t.visitChildren(this)}},Sn=class extends ga{constructor(t,e){super(t,e)}createRoleElement(t){return void 0===t?this.getRuleContexts(In):this.getRuleContext(t,In)}get ruleIndex(){return cn.RULE_optionalRoleList}accept(t){return t.visitOptionalRoleList?t.visitOptionalRoleList(this):t.visitChildren(this)}},ln=class extends ga{constructor(t,e){super(t,e)}alterRoleElemement(t){return void 0===t?this.getRuleContexts(On):this.getRuleContext(t,On)}get ruleIndex(){return cn.RULE_alterOptionalRoleList}accept(t){return t.visitAlterOptionalRoleList?t.visitAlterOptionalRoleList(this):t.visitChildren(this)}},On=class extends ga{constructor(t,e){super(t,e)}PASSWORD(){return this.getToken(cn.PASSWORD,0)}sconst(){return this.getRuleContext(0,Qu)}NULL_P(){return this.getToken(cn.NULL_P,0)}ENCRYPTED(){return this.getToken(cn.ENCRYPTED,0)}UNENCRYPTED(){return this.getToken(cn.UNENCRYPTED,0)}INHERIT(){return this.getToken(cn.INHERIT,0)}CONNECTION(){return this.getToken(cn.CONNECTION,0)}LIMIT(){return this.getToken(cn.LIMIT,0)}signedIconst(){return this.getRuleContext(0,qu)}VALID(){return this.getToken(cn.VALID,0)}UNTIL(){return this.getToken(cn.UNTIL,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleNameList(){return this.getRuleContext(0,zu)}identifier(){return this.getRuleContext(0,rN)}get ruleIndex(){return cn.RULE_alterRoleElemement}accept(t){return t.visitAlterRoleElemement?t.visitAlterRoleElemement(this):t.visitChildren(this)}},In=class extends ga{constructor(t,e){super(t,e)}alterRoleElemement(){return this.getRuleContext(0,On)}SYSID(){return this.getToken(cn.SYSID,0)}iconst(){return this.getRuleContext(0,Ku)}ADMIN(){return this.getToken(cn.ADMIN,0)}roleNameList(){return this.getRuleContext(0,zu)}roleOrAliases(){return this.getRuleContext(0,RC)}IN_P(){return this.getToken(cn.IN_P,0)}get ruleIndex(){return cn.RULE_createRoleElement}accept(t){return t.visitCreateRoleElement?t.visitCreateRoleElement(this):t.visitChildren(this)}},un=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleName(){return this.getRuleContext(0,ju)}optionalWith(){return this.getRuleContext(0,An)}optionalRoleList(){return this.getRuleContext(0,Sn)}get ruleIndex(){return cn.RULE_createRoleStatement}accept(t){return t.visitCreateRoleStatement?t.visitCreateRoleStatement(this):t.visitChildren(this)}},Nn=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleName(){return this.getRuleContext(0,ju)}optionalWith(){return this.getRuleContext(0,An)}alterOptionalRoleList(){return this.getRuleContext(0,ln)}get ruleIndex(){return cn.RULE_alterRoleStatement}accept(t){return t.visitAlterRoleStatement?t.visitAlterRoleStatement(this):t.visitChildren(this)}},Ln=class extends ga{constructor(t,e){super(t,e)}IN_P(){return this.getToken(cn.IN_P,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}get ruleIndex(){return cn.RULE_optionalInDatabase}accept(t){return t.visitOptionalInDatabase?t.visitOptionalInDatabase(this):t.visitChildren(this)}},Cn=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleName(){return this.getRuleContext(0,ju)}optionalInDatabase(){return this.getRuleContext(0,Ln)}setResetClause(){return this.getRuleContext(0,Wn)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_alterRoleSetStatement}accept(t){return t.visitAlterRoleSetStatement?t.visitAlterRoleSetStatement(this):t.visitChildren(this)}},_n=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleNameList(){return this.getRuleContext(0,zu)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_dropRoleStatement}accept(t){return t.visitDropRoleStatement?t.visitDropRoleStatement(this):t.visitChildren(this)}},Pn=class extends ga{constructor(t,e){super(t,e)}ADD_P(){return this.getToken(cn.ADD_P,0)}DROP(){return this.getToken(cn.DROP,0)}get ruleIndex(){return cn.RULE_addOrDrop}accept(t){return t.visitAddOrDrop?t.visitAddOrDrop(this):t.visitChildren(this)}},Mn=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}optionalSchemaList(){return this.getRuleContext(0,Un)}optionalSchemaName(){return this.getRuleContext(0,dn)}AUTHORIZATION(){return this.getToken(cn.AUTHORIZATION,0)}roleName(){return this.getRuleContext(0,ju)}columnId(){return this.getRuleContext(0,$u)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createSchemaStatement}accept(t){return t.visitCreateSchemaStatement?t.visitCreateSchemaStatement(this):t.visitChildren(this)}},dn=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_optionalSchemaName}accept(t){return t.visitOptionalSchemaName?t.visitOptionalSchemaName(this):t.visitChildren(this)}},Un=class extends ga{constructor(t,e){super(t,e)}schemaStatement(t){return void 0===t?this.getRuleContexts(mn):this.getRuleContext(t,mn)}get ruleIndex(){return cn.RULE_optionalSchemaList}accept(t){return t.visitOptionalSchemaList?t.visitOptionalSchemaList(this):t.visitChildren(this)}},mn=class extends ga{constructor(t,e){super(t,e)}createStatement(){return this.getRuleContext(0,ph)}indexStatement(){return this.getRuleContext(0,rR)}createSequenceStatement(){return this.getRuleContext(0,UE)}createTriggerStatement(){return this.getRuleContext(0,UT)}grantStatement(){return this.getRuleContext(0,wo)}viewStatement(){return this.getRuleContext(0,WA)}get ruleIndex(){return cn.RULE_schemaStatement}accept(t){return t.visitSchemaStatement?t.visitSchemaStatement(this):t.visitChildren(this)}},Dn=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}setStatementEnding(){return this.getRuleContext(0,pn)}LOCAL(){return this.getToken(cn.LOCAL,0)}SESSION(){return this.getToken(cn.SESSION,0)}get ruleIndex(){return cn.RULE_variableSetStatement}accept(t){return t.visitVariableSetStatement?t.visitVariableSetStatement(this):t.visitChildren(this)}},pn=class extends ga{constructor(t,e){super(t,e)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}transactionModeList(){return this.getRuleContext(0,wA)}SESSION(){return this.getToken(cn.SESSION,0)}CHARACTERISTICS(){return this.getToken(cn.CHARACTERISTICS,0)}AS(){return this.getToken(cn.AS,0)}setStatementMore(){return this.getRuleContext(0,xn)}get ruleIndex(){return cn.RULE_setStatementEnding}accept(t){return t.visitSetStatementEnding?t.visitSetStatementEnding(this):t.visitChildren(this)}},gn=class extends ga{constructor(t,e){super(t,e)}variableName(){return this.getRuleContext(0,kn)}variableList(){return this.getRuleContext(0,Hn)}TO(){return this.getToken(cn.TO,0)}EQUAL(){return this.getToken(cn.EQUAL,0)}get ruleIndex(){return cn.RULE_genericSetClause}accept(t){return t.visitGenericSetClause?t.visitGenericSetClause(this):t.visitChildren(this)}},xn=class extends ga{constructor(t,e){super(t,e)}genericSetClause(){return this.getRuleContext(0,gn)}variableName(){return this.getRuleContext(0,kn)}FROM(){return this.getToken(cn.FROM,0)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}TIME(){return this.getToken(cn.TIME,0)}ZONE(){return this.getToken(cn.ZONE,0)}zoneValue(){return this.getRuleContext(0,Bn)}CATALOG(){return this.getToken(cn.CATALOG,0)}sconst(){return this.getRuleContext(0,Qu)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}NAMES(){return this.getToken(cn.NAMES,0)}optionalEncoding(){return this.getRuleContext(0,yn)}roleOrAliases(){return this.getRuleContext(0,RC)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}SESSION(){return this.getToken(cn.SESSION,0)}AUTHORIZATION(){return this.getToken(cn.AUTHORIZATION,0)}XML_P(){return this.getToken(cn.XML_P,0)}OPTION(){return this.getToken(cn.OPTION,0)}documentOrContent(){return this.getRuleContext(0,PI)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}SNAPSHOT(){return this.getToken(cn.SNAPSHOT,0)}get ruleIndex(){return cn.RULE_setStatementMore}accept(t){return t.visitSetStatementMore?t.visitSetStatementMore(this):t.visitChildren(this)}},kn=class extends ga{constructor(t,e){super(t,e)}columnId(t){return void 0===t?this.getRuleContexts($u):this.getRuleContext(t,$u)}DOT(t){return void 0===t?this.getTokens(cn.DOT):this.getToken(cn.DOT,t)}get ruleIndex(){return cn.RULE_variableName}accept(t){return t.visitVariableName?t.visitVariableName(this):t.visitChildren(this)}},Hn=class extends ga{constructor(t,e){super(t,e)}variableValue(t){return void 0===t?this.getRuleContexts(Gn):this.getRuleContext(t,Gn)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_variableList}accept(t){return t.visitVariableList?t.visitVariableList(this):t.visitChildren(this)}},Gn=class extends ga{constructor(t,e){super(t,e)}booleanOrString(){return this.getRuleContext(0,vn)}numericOnly(){return this.getRuleContext(0,xE)}get ruleIndex(){return cn.RULE_variableValue}accept(t){return t.visitVariableValue?t.visitVariableValue(this):t.visitChildren(this)}},Fn=class extends ga{constructor(t,e){super(t,e)}READ(){return this.getToken(cn.READ,0)}UNCOMMITTED(){return this.getToken(cn.UNCOMMITTED,0)}COMMITTED(){return this.getToken(cn.COMMITTED,0)}REPEATABLE(){return this.getToken(cn.REPEATABLE,0)}SERIALIZABLE(){return this.getToken(cn.SERIALIZABLE,0)}get ruleIndex(){return cn.RULE_isoLevel}accept(t){return t.visitIsoLevel?t.visitIsoLevel(this):t.visitChildren(this)}},vn=class extends ga{constructor(t,e){super(t,e)}TRUE_P(){return this.getToken(cn.TRUE_P,0)}FALSE_P(){return this.getToken(cn.FALSE_P,0)}ON(){return this.getToken(cn.ON,0)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}get ruleIndex(){return cn.RULE_booleanOrString}accept(t){return t.visitBooleanOrString?t.visitBooleanOrString(this):t.visitChildren(this)}},Bn=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}identifier(){return this.getRuleContext(0,rN)}constInterval(){return this.getRuleContext(0,vO)}optionalInterval(){return this.getRuleContext(0,yO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}numericOnly(){return this.getRuleContext(0,xE)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}LOCAL(){return this.getToken(cn.LOCAL,0)}get ruleIndex(){return cn.RULE_zoneValue}accept(t){return t.visitZoneValue?t.visitZoneValue(this):t.visitChildren(this)}},yn=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_optionalEncoding}accept(t){return t.visitOptionalEncoding?t.visitOptionalEncoding(this):t.visitChildren(this)}},fn=class extends ga{constructor(t,e){super(t,e)}nonReservedWord(){return this.getRuleContext(0,sN)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_nonReservedWordOrSconst}accept(t){return t.visitNonReservedWordOrSconst?t.visitNonReservedWordOrSconst(this):t.visitChildren(this)}},Yn=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(cn.RESET,0)}resetClauseRest(){return this.getRuleContext(0,wn)}get ruleIndex(){return cn.RULE_variableResetStatement}accept(t){return t.visitVariableResetStatement?t.visitVariableResetStatement(this):t.visitChildren(this)}},wn=class extends ga{constructor(t,e){super(t,e)}genericResetClause(){return this.getRuleContext(0,bn)}TIME(){return this.getToken(cn.TIME,0)}ZONE(){return this.getToken(cn.ZONE,0)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}ISOLATION(){return this.getToken(cn.ISOLATION,0)}LEVEL(){return this.getToken(cn.LEVEL,0)}SESSION(){return this.getToken(cn.SESSION,0)}AUTHORIZATION(){return this.getToken(cn.AUTHORIZATION,0)}get ruleIndex(){return cn.RULE_resetClauseRest}accept(t){return t.visitResetClauseRest?t.visitResetClauseRest(this):t.visitChildren(this)}},bn=class extends ga{constructor(t,e){super(t,e)}variableName(){return this.getRuleContext(0,kn)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_genericResetClause}accept(t){return t.visitGenericResetClause?t.visitGenericResetClause(this):t.visitChildren(this)}},Wn=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}setStatementEnding(){return this.getRuleContext(0,pn)}variableResetStatement(){return this.getRuleContext(0,Yn)}get ruleIndex(){return cn.RULE_setResetClause}accept(t){return t.visitSetResetClause?t.visitSetResetClause(this):t.visitChildren(this)}},Vn=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}setStatementMore(){return this.getRuleContext(0,xn)}variableResetStatement(){return this.getRuleContext(0,Yn)}get ruleIndex(){return cn.RULE_functionSetResetClause}accept(t){return t.visitFunctionSetResetClause?t.visitFunctionSetResetClause(this):t.visitChildren(this)}},Xn=class extends ga{constructor(t,e){super(t,e)}SHOW(){return this.getToken(cn.SHOW,0)}variableName(){return this.getRuleContext(0,kn)}TIME(){return this.getToken(cn.TIME,0)}ZONE(){return this.getToken(cn.ZONE,0)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}ISOLATION(){return this.getToken(cn.ISOLATION,0)}LEVEL(){return this.getToken(cn.LEVEL,0)}SESSION(){return this.getToken(cn.SESSION,0)}AUTHORIZATION(){return this.getToken(cn.AUTHORIZATION,0)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_variableShowStatement}accept(t){return t.visitVariableShowStatement?t.visitVariableShowStatement(this):t.visitChildren(this)}},Kn=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}CONSTRAINTS(){return this.getToken(cn.CONSTRAINTS,0)}constraintsSetList(){return this.getRuleContext(0,Qn)}constraintsSetMode(){return this.getRuleContext(0,Jn)}get ruleIndex(){return cn.RULE_setConstraintsStatement}accept(t){return t.visitSetConstraintsStatement?t.visitSetConstraintsStatement(this):t.visitChildren(this)}},Qn=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(cn.ALL,0)}qualifiedNameList(){return this.getRuleContext(0,du)}get ruleIndex(){return cn.RULE_constraintsSetList}accept(t){return t.visitConstraintsSetList?t.visitConstraintsSetList(this):t.visitChildren(this)}},Jn=class extends ga{constructor(t,e){super(t,e)}DEFERRED(){return this.getToken(cn.DEFERRED,0)}IMMEDIATE(){return this.getToken(cn.IMMEDIATE,0)}get ruleIndex(){return cn.RULE_constraintsSetMode}accept(t){return t.visitConstraintsSetMode?t.visitConstraintsSetMode(this):t.visitChildren(this)}},Zn=class extends ga{constructor(t,e){super(t,e)}CHECKPOINT(){return this.getToken(cn.CHECKPOINT,0)}get ruleIndex(){return cn.RULE_checkpointStatement}accept(t){return t.visitCheckpointStatement?t.visitCheckpointStatement(this):t.visitChildren(this)}},qn=class extends ga{constructor(t,e){super(t,e)}DISCARD(){return this.getToken(cn.DISCARD,0)}ALL(){return this.getToken(cn.ALL,0)}TEMP(){return this.getToken(cn.TEMP,0)}TEMPORARY(){return this.getToken(cn.TEMPORARY,0)}PLANS(){return this.getToken(cn.PLANS,0)}SEQUENCES(){return this.getToken(cn.SEQUENCES,0)}get ruleIndex(){return cn.RULE_discardStatement}accept(t){return t.visitDiscardStatement?t.visitDiscardStatement(this):t.visitChildren(this)}},jn=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}TABLE(){return this.getToken(cn.TABLE,0)}relationExpression(){return this.getRuleContext(0,eO)}alterTableCommands(){return this.getRuleContext(0,zn)}partitionCommand(){return this.getRuleContext(0,$n)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}ALL(){return this.getToken(cn.ALL,0)}IN_P(){return this.getToken(cn.IN_P,0)}TABLESPACE(t){return void 0===t?this.getTokens(cn.TABLESPACE):this.getToken(cn.TABLESPACE,t)}name(t){return void 0===t?this.getRuleContexts(yu):this.getRuleContext(t,yu)}SET(){return this.getToken(cn.SET,0)}optionalNowait(){return this.getRuleContext(0,qS)}OWNED(){return this.getToken(cn.OWNED,0)}BY(){return this.getToken(cn.BY,0)}roleNameList(){return this.getRuleContext(0,zu)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}indexPartitionCommand(){return this.getRuleContext(0,th)}VIEW(){return this.getToken(cn.VIEW,0)}viewName(){return this.getRuleContext(0,tO)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}qualifiedName(){return this.getRuleContext(0,vu)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}get ruleIndex(){return cn.RULE_alterTableStatement}accept(t){return t.visitAlterTableStatement?t.visitAlterTableStatement(this):t.visitChildren(this)}},zn=class extends ga{constructor(t,e){super(t,e)}alterTableCommand(t){return void 0===t?this.getRuleContexts(eh):this.getRuleContext(t,eh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_alterTableCommands}accept(t){return t.visitAlterTableCommands?t.visitAlterTableCommands(this):t.visitChildren(this)}},$n=class extends ga{constructor(t,e){super(t,e)}ATTACH(){return this.getToken(cn.ATTACH,0)}PARTITION(){return this.getToken(cn.PARTITION,0)}qualifiedName(){return this.getRuleContext(0,vu)}partitionBoundSpecification(){return this.getRuleContext(0,Ah)}DETACH(){return this.getToken(cn.DETACH,0)}get ruleIndex(){return cn.RULE_partitionCommand}accept(t){return t.visitPartitionCommand?t.visitPartitionCommand(this):t.visitChildren(this)}},th=class extends ga{constructor(t,e){super(t,e)}ATTACH(){return this.getToken(cn.ATTACH,0)}PARTITION(){return this.getToken(cn.PARTITION,0)}qualifiedName(){return this.getRuleContext(0,vu)}get ruleIndex(){return cn.RULE_indexPartitionCommand}accept(t){return t.visitIndexPartitionCommand?t.visitIndexPartitionCommand(this):t.visitChildren(this)}},eh=class extends ga{constructor(t,e){super(t,e)}ADD_P(){return this.getToken(cn.ADD_P,0)}columnDefinition(){return this.getRuleContext(0,Bh)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}COLUMN(){return this.getToken(cn.COLUMN,0)}ALTER(){return this.getToken(cn.ALTER,0)}optionalColumn(){return this.getRuleContext(0,hA)}columnId(t){return void 0===t?this.getRuleContexts($u):this.getRuleContext(t,$u)}alterColumnDefault(){return this.getRuleContext(0,sh)}DROP(){return this.getToken(cn.DROP,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}SET(){return this.getToken(cn.SET,0)}EXPRESSION(){return this.getToken(cn.EXPRESSION,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}signedIconst(){return this.getRuleContext(0,qu)}iconst(){return this.getRuleContext(0,Ku)}relOptions(){return this.getRuleContext(0,nh)}RESET(){return this.getToken(cn.RESET,0)}STORAGE(){return this.getToken(cn.STORAGE,0)}GENERATED(){return this.getToken(cn.GENERATED,0)}generatedWhen(){return this.getRuleContext(0,bh)}AS(){return this.getToken(cn.AS,0)}IDENTITY_P(){return this.getToken(cn.IDENTITY_P,0)}optionalParenthesizedSeqOptionsList(){return this.getRuleContext(0,DE)}alterIdentityColumnOptionList(){return this.getRuleContext(0,oh)}optionalDropBehavior(){return this.getRuleContext(0,ah)}optionalSetData(){return this.getRuleContext(0,EA)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}typeName(){return this.getRuleContext(0,LO)}optionalCollateClause(){return this.getRuleContext(0,rh)}alterUsing(){return this.getRuleContext(0,ih)}alterGenericOptions(){return this.getRuleContext(0,zE)}tableConstraint(){return this.getRuleContext(0,Qh)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}constraintName(){return this.getRuleContext(0,Hu)}constraintAttributeElement(t){return void 0===t?this.getRuleContexts(VT):this.getRuleContext(t,VT)}VALIDATE(){return this.getToken(cn.VALIDATE,0)}WITHOUT(){return this.getToken(cn.WITHOUT,0)}OIDS(){return this.getToken(cn.OIDS,0)}CLUSTER(){return this.getToken(cn.CLUSTER,0)}ON(){return this.getToken(cn.ON,0)}name(){return this.getRuleContext(0,yu)}LOGGED(){return this.getToken(cn.LOGGED,0)}UNLOGGED(){return this.getToken(cn.UNLOGGED,0)}ENABLE_P(){return this.getToken(cn.ENABLE_P,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}triggerName(){return this.getRuleContext(0,ku)}ALWAYS(){return this.getToken(cn.ALWAYS,0)}REPLICA(){return this.getToken(cn.REPLICA,0)}ALL(){return this.getToken(cn.ALL,0)}USER(){return this.getToken(cn.USER,0)}DISABLE_P(){return this.getToken(cn.DISABLE_P,0)}RULE(){return this.getToken(cn.RULE,0)}INHERIT(){return this.getToken(cn.INHERIT,0)}qualifiedName(){return this.getRuleContext(0,vu)}NO(){return this.getToken(cn.NO,0)}OF(){return this.getToken(cn.OF,0)}anyName(){return this.getRuleContext(0,mo)}OWNER(){return this.getToken(cn.OWNER,0)}TO(){return this.getToken(cn.TO,0)}roleName(){return this.getRuleContext(0,ju)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}replicaIdentity(){return this.getRuleContext(0,ch)}ROW(){return this.getToken(cn.ROW,0)}LEVEL(){return this.getToken(cn.LEVEL,0)}SECURITY(){return this.getToken(cn.SECURITY,0)}FORCE(){return this.getToken(cn.FORCE,0)}get ruleIndex(){return cn.RULE_alterTableCommand}accept(t){return t.visitAlterTableCommand?t.visitAlterTableCommand(this):t.visitChildren(this)}},sh=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}expression1(){return this.getRuleContext(0,wO)}DROP(){return this.getToken(cn.DROP,0)}get ruleIndex(){return cn.RULE_alterColumnDefault}accept(t){return t.visitAlterColumnDefault?t.visitAlterColumnDefault(this):t.visitChildren(this)}},ah=class extends ga{constructor(t,e){super(t,e)}CASCADE(){return this.getToken(cn.CASCADE,0)}RESTRICT(){return this.getToken(cn.RESTRICT,0)}get ruleIndex(){return cn.RULE_optionalDropBehavior}accept(t){return t.visitOptionalDropBehavior?t.visitOptionalDropBehavior(this):t.visitChildren(this)}},rh=class extends ga{constructor(t,e){super(t,e)}COLLATE(){return this.getToken(cn.COLLATE,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_optionalCollateClause}accept(t){return t.visitOptionalCollateClause?t.visitOptionalCollateClause(this):t.visitChildren(this)}},ih=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_alterUsing}accept(t){return t.visitAlterUsing?t.visitAlterUsing(this):t.visitChildren(this)}},ch=class extends ga{constructor(t,e){super(t,e)}NOTHING(){return this.getToken(cn.NOTHING,0)}FULL(){return this.getToken(cn.FULL,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}USING(){return this.getToken(cn.USING,0)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}get ruleIndex(){return cn.RULE_replicaIdentity}accept(t){return t.visitReplicaIdentity?t.visitReplicaIdentity(this):t.visitChildren(this)}},nh=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}relOptionList(){return this.getRuleContext(0,Eh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_relOptions}accept(t){return t.visitRelOptions?t.visitRelOptions(this):t.visitChildren(this)}},hh=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}relOptions(){return this.getRuleContext(0,nh)}get ruleIndex(){return cn.RULE_optionalRelOptions}accept(t){return t.visitOptionalRelOptions?t.visitOptionalRelOptions(this):t.visitChildren(this)}},Eh=class extends ga{constructor(t,e){super(t,e)}relOptionElem(t){return void 0===t?this.getRuleContexts(Th):this.getRuleContext(t,Th)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_relOptionList}accept(t){return t.visitRelOptionList?t.visitRelOptionList(this):t.visitChildren(this)}},Th=class extends ga{constructor(t,e){super(t,e)}columnLabel(t){return void 0===t?this.getRuleContexts(aN):this.getRuleContext(t,aN)}EQUAL(){return this.getToken(cn.EQUAL,0)}definitionArgument(){return this.getRuleContext(0,eo)}DOT(){return this.getToken(cn.DOT,0)}get ruleIndex(){return cn.RULE_relOptionElem}accept(t){return t.visitRelOptionElem?t.visitRelOptionElem(this):t.visitChildren(this)}},oh=class extends ga{constructor(t,e){super(t,e)}alterIdentityColumnOption(t){return void 0===t?this.getRuleContexts(Rh):this.getRuleContext(t,Rh)}get ruleIndex(){return cn.RULE_alterIdentityColumnOptionList}accept(t){return t.visitAlterIdentityColumnOptionList?t.visitAlterIdentityColumnOptionList(this):t.visitChildren(this)}},Rh=class extends ga{constructor(t,e){super(t,e)}RESTART(){return this.getToken(cn.RESTART,0)}optionalWith(){return this.getRuleContext(0,An)}numericOnly(){return this.getRuleContext(0,xE)}SET(){return this.getToken(cn.SET,0)}sequenceOptionItem(){return this.getRuleContext(0,gE)}GENERATED(){return this.getToken(cn.GENERATED,0)}generatedWhen(){return this.getRuleContext(0,bh)}get ruleIndex(){return cn.RULE_alterIdentityColumnOption}accept(t){return t.visitAlterIdentityColumnOption?t.visitAlterIdentityColumnOption(this):t.visitChildren(this)}},Ah=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}VALUES(){return this.getToken(cn.VALUES,0)}WITH(){return this.getToken(cn.WITH,0)}OPEN_PAREN(t){return void 0===t?this.getTokens(cn.OPEN_PAREN):this.getToken(cn.OPEN_PAREN,t)}hashPartitionBound(){return this.getRuleContext(0,lh)}CLOSE_PAREN(t){return void 0===t?this.getTokens(cn.CLOSE_PAREN):this.getToken(cn.CLOSE_PAREN,t)}IN_P(){return this.getToken(cn.IN_P,0)}expressionList(t){return void 0===t?this.getRuleContexts(ZI):this.getRuleContext(t,ZI)}FROM(){return this.getToken(cn.FROM,0)}TO(){return this.getToken(cn.TO,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_partitionBoundSpecification}accept(t){return t.visitPartitionBoundSpecification?t.visitPartitionBoundSpecification(this):t.visitChildren(this)}},Sh=class extends ga{constructor(t,e){super(t,e)}nonReservedWord(){return this.getRuleContext(0,sN)}iconst(){return this.getRuleContext(0,Ku)}get ruleIndex(){return cn.RULE_hashPartitionBoundElement}accept(t){return t.visitHashPartitionBoundElement?t.visitHashPartitionBoundElement(this):t.visitChildren(this)}},lh=class extends ga{constructor(t,e){super(t,e)}hashPartitionBoundElement(t){return void 0===t?this.getRuleContexts(Sh):this.getRuleContext(t,Sh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_hashPartitionBound}accept(t){return t.visitHashPartitionBound?t.visitHashPartitionBound(this):t.visitChildren(this)}},Oh=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}anyName(){return this.getRuleContext(0,mo)}alterTypeCommands(){return this.getRuleContext(0,Ih)}get ruleIndex(){return cn.RULE_alterCompositeTypeStatement}accept(t){return t.visitAlterCompositeTypeStatement?t.visitAlterCompositeTypeStatement(this):t.visitChildren(this)}},Ih=class extends ga{constructor(t,e){super(t,e)}alterTypeCommand(t){return void 0===t?this.getRuleContexts(uh):this.getRuleContext(t,uh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_alterTypeCommands}accept(t){return t.visitAlterTypeCommands?t.visitAlterTypeCommands(this):t.visitChildren(this)}},uh=class extends ga{constructor(t,e){super(t,e)}ADD_P(){return this.getToken(cn.ADD_P,0)}ATTRIBUTE(){return this.getToken(cn.ATTRIBUTE,0)}tableFunctionElement(){return this.getRuleContext(0,AO)}optionalDropBehavior(){return this.getRuleContext(0,ah)}DROP(){return this.getToken(cn.DROP,0)}columnId(){return this.getRuleContext(0,$u)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}ALTER(){return this.getToken(cn.ALTER,0)}optionalSetData(){return this.getRuleContext(0,EA)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}typeName(){return this.getRuleContext(0,LO)}optionalCollateClause(){return this.getRuleContext(0,rh)}get ruleIndex(){return cn.RULE_alterTypeCommand}accept(t){return t.visitAlterTypeCommand?t.visitAlterTypeCommand(this):t.visitChildren(this)}},Nh=class extends ga{constructor(t,e){super(t,e)}CLOSE(){return this.getToken(cn.CLOSE,0)}cursorName(){return this.getRuleContext(0,al)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_closePortalStatement}accept(t){return t.visitClosePortalStatement?t.visitClosePortalStatement(this):t.visitChildren(this)}},Lh=class extends ga{constructor(t,e){super(t,e)}COPY(){return this.getToken(cn.COPY,0)}qualifiedName(){return this.getRuleContext(0,vu)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}fromOrTo(){return this.getRuleContext(0,Ch)}copyFileName(){return this.getRuleContext(0,_h)}copyDelimiter(){return this.getRuleContext(0,dh)}optionalWith(){return this.getRuleContext(0,An)}copyOptions(){return this.getRuleContext(0,Ph)}whereClause(){return this.getRuleContext(0,EO)}BINARY(){return this.getToken(cn.BINARY,0)}PROGRAM(){return this.getToken(cn.PROGRAM,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}preparableStatement(){return this.getRuleContext(0,DS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}TO(){return this.getToken(cn.TO,0)}get ruleIndex(){return cn.RULE_copyStatement}accept(t){return t.visitCopyStatement?t.visitCopyStatement(this):t.visitChildren(this)}},Ch=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(cn.FROM,0)}TO(){return this.getToken(cn.TO,0)}get ruleIndex(){return cn.RULE_fromOrTo}accept(t){return t.visitFromOrTo?t.visitFromOrTo(this):t.visitChildren(this)}},_h=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}STDIN(){return this.getToken(cn.STDIN,0)}STDOUT(){return this.getToken(cn.STDOUT,0)}get ruleIndex(){return cn.RULE_copyFileName}accept(t){return t.visitCopyFileName?t.visitCopyFileName(this):t.visitChildren(this)}},Ph=class extends ga{constructor(t,e){super(t,e)}copyOptionsItem(t){return void 0===t?this.getRuleContexts(Mh):this.getRuleContext(t,Mh)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}copyGenericOptionList(){return this.getRuleContext(0,Uh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_copyOptions}accept(t){return t.visitCopyOptions?t.visitCopyOptions(this):t.visitChildren(this)}},Mh=class extends ga{constructor(t,e){super(t,e)}BINARY(){return this.getToken(cn.BINARY,0)}FREEZE(){return this.getToken(cn.FREEZE,0)}DELIMITER(){return this.getToken(cn.DELIMITER,0)}optionalAs(){return this.getRuleContext(0,rS)}sconst(){return this.getRuleContext(0,Qu)}NULL_P(){return this.getToken(cn.NULL_P,0)}CSV(){return this.getToken(cn.CSV,0)}HEADER_P(){return this.getToken(cn.HEADER_P,0)}QUOTE(){return this.getToken(cn.QUOTE,0)}ESCAPE(){return this.getToken(cn.ESCAPE,0)}FORCE(){return this.getToken(cn.FORCE,0)}columnList(){return this.getRuleContext(0,qh)}STAR(){return this.getToken(cn.STAR,0)}NOT(){return this.getToken(cn.NOT,0)}ENCODING(){return this.getToken(cn.ENCODING,0)}get ruleIndex(){return cn.RULE_copyOptionsItem}accept(t){return t.visitCopyOptionsItem?t.visitCopyOptionsItem(this):t.visitChildren(this)}},dh=class extends ga{constructor(t,e){super(t,e)}DELIMITERS(){return this.getToken(cn.DELIMITERS,0)}sconst(){return this.getRuleContext(0,Qu)}USING(){return this.getToken(cn.USING,0)}get ruleIndex(){return cn.RULE_copyDelimiter}accept(t){return t.visitCopyDelimiter?t.visitCopyDelimiter(this):t.visitChildren(this)}},Uh=class extends ga{constructor(t,e){super(t,e)}copyGenericOptionElem(t){return void 0===t?this.getRuleContexts(mh):this.getRuleContext(t,mh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_copyGenericOptionList}accept(t){return t.visitCopyGenericOptionList?t.visitCopyGenericOptionList(this):t.visitChildren(this)}},mh=class extends ga{constructor(t,e){super(t,e)}columnLabel(){return this.getRuleContext(0,aN)}copyGenericOptionArgument(){return this.getRuleContext(0,Dh)}get ruleIndex(){return cn.RULE_copyGenericOptionElem}accept(t){return t.visitCopyGenericOptionElem?t.visitCopyGenericOptionElem(this):t.visitChildren(this)}},Dh=class extends ga{constructor(t,e){super(t,e)}booleanOrString(t){return void 0===t?this.getRuleContexts(vn):this.getRuleContext(t,vn)}numericOnly(){return this.getRuleContext(0,xE)}STAR(){return this.getToken(cn.STAR,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_copyGenericOptionArgument}accept(t){return t.visitCopyGenericOptionArgument?t.visitCopyGenericOptionArgument(this):t.visitChildren(this)}},ph=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}temporaryOption(){return this.getRuleContext(0,gh)}TABLE(){return this.getToken(cn.TABLE,0)}qualifiedName(t){return void 0===t?this.getRuleContexts(vu):this.getRuleContext(t,vu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}optionalTableElementList(){return this.getRuleContext(0,xh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}inheritClause(){return this.getRuleContext(0,nE)}optionalPartitionSpecification(){return this.getRuleContext(0,hE)}optionalTableAccessMethodClause(){return this.getRuleContext(0,RE)}with(){return this.getRuleContext(0,AE)}onCommitOption(){return this.getRuleContext(0,SE)}optionalTablespace(){return this.getRuleContext(0,lE)}OF(){return this.getToken(cn.OF,0)}anyName(){return this.getRuleContext(0,mo)}optionalTypedTableElementList(){return this.getRuleContext(0,kh)}PARTITION(){return this.getToken(cn.PARTITION,0)}partitionBoundSpecification(){return this.getRuleContext(0,Ah)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createStatement}accept(t){return t.visitCreateStatement?t.visitCreateStatement(this):t.visitChildren(this)}},gh=class extends ga{constructor(t,e){super(t,e)}TEMPORARY(){return this.getToken(cn.TEMPORARY,0)}TEMP(){return this.getToken(cn.TEMP,0)}LOCAL(){return this.getToken(cn.LOCAL,0)}GLOBAL(){return this.getToken(cn.GLOBAL,0)}UNLOGGED(){return this.getToken(cn.UNLOGGED,0)}get ruleIndex(){return cn.RULE_temporaryOption}accept(t){return t.visitTemporaryOption?t.visitTemporaryOption(this):t.visitChildren(this)}},xh=class extends ga{constructor(t,e){super(t,e)}tableElementList(){return this.getRuleContext(0,Hh)}get ruleIndex(){return cn.RULE_optionalTableElementList}accept(t){return t.visitOptionalTableElementList?t.visitOptionalTableElementList(this):t.visitChildren(this)}},kh=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typedTableElementList(){return this.getRuleContext(0,Gh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalTypedTableElementList}accept(t){return t.visitOptionalTypedTableElementList?t.visitOptionalTypedTableElementList(this):t.visitChildren(this)}},Hh=class extends ga{constructor(t,e){super(t,e)}tableElement(t){return void 0===t?this.getRuleContexts(Fh):this.getRuleContext(t,Fh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_tableElementList}accept(t){return t.visitTableElementList?t.visitTableElementList(this):t.visitChildren(this)}},Gh=class extends ga{constructor(t,e){super(t,e)}typedTableElement(t){return void 0===t?this.getRuleContexts(vh):this.getRuleContext(t,vh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_typedTableElementList}accept(t){return t.visitTypedTableElementList?t.visitTypedTableElementList(this):t.visitChildren(this)}},Fh=class extends ga{constructor(t,e){super(t,e)}tableConstraint(){return this.getRuleContext(0,Qh)}tableLikeClause(){return this.getRuleContext(0,Vh)}columnDefinition(){return this.getRuleContext(0,Bh)}get ruleIndex(){return cn.RULE_tableElement}accept(t){return t.visitTableElement?t.visitTableElement(this):t.visitChildren(this)}},vh=class extends ga{constructor(t,e){super(t,e)}columnOptions(){return this.getRuleContext(0,yh)}tableConstraint(){return this.getRuleContext(0,Qh)}get ruleIndex(){return cn.RULE_typedTableElement}accept(t){return t.visitTypedTableElement?t.visitTypedTableElement(this):t.visitChildren(this)}},Bh=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}typeName(){return this.getRuleContext(0,LO)}createGenericOptions(){return this.getRuleContext(0,qE)}columnQualifierList(){return this.getRuleContext(0,fh)}get ruleIndex(){return cn.RULE_columnDefinition}accept(t){return t.visitColumnDefinition?t.visitColumnDefinition(this):t.visitChildren(this)}},yh=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}columnQualifierList(){return this.getRuleContext(0,fh)}WITH(){return this.getToken(cn.WITH,0)}OPTIONS(){return this.getToken(cn.OPTIONS,0)}get ruleIndex(){return cn.RULE_columnOptions}accept(t){return t.visitColumnOptions?t.visitColumnOptions(this):t.visitChildren(this)}},fh=class extends ga{constructor(t,e){super(t,e)}columnConstraint(t){return void 0===t?this.getRuleContexts(Yh):this.getRuleContext(t,Yh)}get ruleIndex(){return cn.RULE_columnQualifierList}accept(t){return t.visitColumnQualifierList?t.visitColumnQualifierList(this):t.visitChildren(this)}},Yh=class extends ga{constructor(t,e){super(t,e)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}name(){return this.getRuleContext(0,yu)}columnConstraintElement(){return this.getRuleContext(0,wh)}constraintAttribute(){return this.getRuleContext(0,Wh)}COLLATE(){return this.getToken(cn.COLLATE,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_columnConstraint}accept(t){return t.visitColumnConstraint?t.visitColumnConstraint(this):t.visitChildren(this)}},wh=class extends ga{constructor(t,e){super(t,e)}NOT(){return this.getToken(cn.NOT,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}UNIQUE(){return this.getToken(cn.UNIQUE,0)}optionalDefinition(){return this.getRuleContext(0,FR)}usingIndexTablespace(){return this.getRuleContext(0,OE)}PRIMARY(){return this.getToken(cn.PRIMARY,0)}KEY(){return this.getToken(cn.KEY,0)}CHECK(){return this.getToken(cn.CHECK,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}NO(){return this.getToken(cn.NO,0)}INHERIT(){return this.getToken(cn.INHERIT,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}expression2(){return this.getRuleContext(0,hI)}GENERATED(){return this.getToken(cn.GENERATED,0)}generatedWhen(){return this.getRuleContext(0,bh)}AS(){return this.getToken(cn.AS,0)}IDENTITY_P(){return this.getToken(cn.IDENTITY_P,0)}optionalParenthesizedSeqOptionsList(){return this.getRuleContext(0,DE)}STORED(){return this.getToken(cn.STORED,0)}REFERENCES(){return this.getToken(cn.REFERENCES,0)}qualifiedName(){return this.getRuleContext(0,vu)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}matchClause(){return this.getRuleContext(0,$h)}keyActions(){return this.getRuleContext(0,aE)}get ruleIndex(){return cn.RULE_columnConstraintElement}accept(t){return t.visitColumnConstraintElement?t.visitColumnConstraintElement(this):t.visitChildren(this)}},bh=class extends ga{constructor(t,e){super(t,e)}ALWAYS(){return this.getToken(cn.ALWAYS,0)}BY(){return this.getToken(cn.BY,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_generatedWhen}accept(t){return t.visitGeneratedWhen?t.visitGeneratedWhen(this):t.visitChildren(this)}},Wh=class extends ga{constructor(t,e){super(t,e)}DEFERRABLE(){return this.getToken(cn.DEFERRABLE,0)}NOT(){return this.getToken(cn.NOT,0)}INITIALLY(){return this.getToken(cn.INITIALLY,0)}DEFERRED(){return this.getToken(cn.DEFERRED,0)}IMMEDIATE(){return this.getToken(cn.IMMEDIATE,0)}get ruleIndex(){return cn.RULE_constraintAttribute}accept(t){return t.visitConstraintAttribute?t.visitConstraintAttribute(this):t.visitChildren(this)}},Vh=class extends ga{constructor(t,e){super(t,e)}LIKE(){return this.getToken(cn.LIKE,0)}qualifiedName(){return this.getRuleContext(0,vu)}tableLikeOptionList(){return this.getRuleContext(0,Xh)}get ruleIndex(){return cn.RULE_tableLikeClause}accept(t){return t.visitTableLikeClause?t.visitTableLikeClause(this):t.visitChildren(this)}},Xh=class extends ga{constructor(t,e){super(t,e)}tableLikeOption(t){return void 0===t?this.getRuleContexts(Kh):this.getRuleContext(t,Kh)}INCLUDING(t){return void 0===t?this.getTokens(cn.INCLUDING):this.getToken(cn.INCLUDING,t)}EXCLUDING(t){return void 0===t?this.getTokens(cn.EXCLUDING):this.getToken(cn.EXCLUDING,t)}get ruleIndex(){return cn.RULE_tableLikeOptionList}accept(t){return t.visitTableLikeOptionList?t.visitTableLikeOptionList(this):t.visitChildren(this)}},Kh=class extends ga{constructor(t,e){super(t,e)}COMMENTS(){return this.getToken(cn.COMMENTS,0)}CONSTRAINTS(){return this.getToken(cn.CONSTRAINTS,0)}DEFAULTS(){return this.getToken(cn.DEFAULTS,0)}IDENTITY_P(){return this.getToken(cn.IDENTITY_P,0)}GENERATED(){return this.getToken(cn.GENERATED,0)}INDEXES(){return this.getToken(cn.INDEXES,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}STORAGE(){return this.getToken(cn.STORAGE,0)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_tableLikeOption}accept(t){return t.visitTableLikeOption?t.visitTableLikeOption(this):t.visitChildren(this)}},Qh=class extends ga{constructor(t,e){super(t,e)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}name(){return this.getRuleContext(0,yu)}constraintElement(){return this.getRuleContext(0,Jh)}get ruleIndex(){return cn.RULE_tableConstraint}accept(t){return t.visitTableConstraint?t.visitTableConstraint(this):t.visitChildren(this)}},Jh=class extends ga{constructor(t,e){super(t,e)}CHECK(){return this.getToken(cn.CHECK,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}constraintAttributeSpecification(){return this.getRuleContext(0,WT)}UNIQUE(){return this.getToken(cn.UNIQUE,0)}columnList(){return this.getRuleContext(0,qh)}optionalColumnListInclude(){return this.getRuleContext(0,zh)}optionalDefinition(){return this.getRuleContext(0,FR)}usingIndexTablespace(){return this.getRuleContext(0,OE)}existingIndex(){return this.getRuleContext(0,IE)}PRIMARY(){return this.getToken(cn.PRIMARY,0)}KEY(){return this.getToken(cn.KEY,0)}EXCLUDE(){return this.getToken(cn.EXCLUDE,0)}optionalAccessMethodClause(){return this.getRuleContext(0,iR)}exclusionConstraintList(){return this.getRuleContext(0,tE)}exclusionWhereClause(){return this.getRuleContext(0,sE)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}REFERENCES(){return this.getToken(cn.REFERENCES,0)}qualifiedName(){return this.getRuleContext(0,vu)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}matchClause(){return this.getRuleContext(0,$h)}keyActions(){return this.getRuleContext(0,aE)}get ruleIndex(){return cn.RULE_constraintElement}accept(t){return t.visitConstraintElement?t.visitConstraintElement(this):t.visitChildren(this)}},Zh=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}columnList(){return this.getRuleContext(0,qh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_columnListWithParentheses}accept(t){return t.visitColumnListWithParentheses?t.visitColumnListWithParentheses(this):t.visitChildren(this)}},qh=class extends ga{constructor(t,e){super(t,e)}columnElement(t){return void 0===t?this.getRuleContexts(jh):this.getRuleContext(t,jh)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_columnList}accept(t){return t.visitColumnList?t.visitColumnList(this):t.visitChildren(this)}},jh=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_columnElement}accept(t){return t.visitColumnElement?t.visitColumnElement(this):t.visitChildren(this)}},zh=class extends ga{constructor(t,e){super(t,e)}INCLUDE(){return this.getToken(cn.INCLUDE,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}columnList(){return this.getRuleContext(0,qh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalColumnListInclude}accept(t){return t.visitOptionalColumnListInclude?t.visitOptionalColumnListInclude(this):t.visitChildren(this)}},$h=class extends ga{constructor(t,e){super(t,e)}MATCH(){return this.getToken(cn.MATCH,0)}FULL(){return this.getToken(cn.FULL,0)}PARTIAL(){return this.getToken(cn.PARTIAL,0)}SIMPLE(){return this.getToken(cn.SIMPLE,0)}get ruleIndex(){return cn.RULE_matchClause}accept(t){return t.visitMatchClause?t.visitMatchClause(this):t.visitChildren(this)}},tE=class extends ga{constructor(t,e){super(t,e)}exclusionConstraintElement(t){return void 0===t?this.getRuleContexts(eE):this.getRuleContext(t,eE)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_exclusionConstraintList}accept(t){return t.visitExclusionConstraintList?t.visitExclusionConstraintList(this):t.visitChildren(this)}},eE=class extends ga{constructor(t,e){super(t,e)}indexElement(){return this.getRuleContext(0,hR)}WITH(){return this.getToken(cn.WITH,0)}anyOperator(){return this.getRuleContext(0,WR)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_exclusionConstraintElement}accept(t){return t.visitExclusionConstraintElement?t.visitExclusionConstraintElement(this):t.visitChildren(this)}},sE=class extends ga{constructor(t,e){super(t,e)}WHERE(){return this.getToken(cn.WHERE,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_exclusionWhereClause}accept(t){return t.visitExclusionWhereClause?t.visitExclusionWhereClause(this):t.visitChildren(this)}},aE=class extends ga{constructor(t,e){super(t,e)}onKeyUpdateClause(){return this.getRuleContext(0,rE)}onKeyDeleteClause(){return this.getRuleContext(0,iE)}get ruleIndex(){return cn.RULE_keyActions}accept(t){return t.visitKeyActions?t.visitKeyActions(this):t.visitChildren(this)}},rE=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(cn.ON,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}keyAction(){return this.getRuleContext(0,cE)}get ruleIndex(){return cn.RULE_onKeyUpdateClause}accept(t){return t.visitOnKeyUpdateClause?t.visitOnKeyUpdateClause(this):t.visitChildren(this)}},iE=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(cn.ON,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}keyAction(){return this.getRuleContext(0,cE)}get ruleIndex(){return cn.RULE_onKeyDeleteClause}accept(t){return t.visitOnKeyDeleteClause?t.visitOnKeyDeleteClause(this):t.visitChildren(this)}},cE=class extends ga{constructor(t,e){super(t,e)}NO(){return this.getToken(cn.NO,0)}ACTION(){return this.getToken(cn.ACTION,0)}RESTRICT(){return this.getToken(cn.RESTRICT,0)}CASCADE(){return this.getToken(cn.CASCADE,0)}SET(){return this.getToken(cn.SET,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_keyAction}accept(t){return t.visitKeyAction?t.visitKeyAction(this):t.visitChildren(this)}},nE=class extends ga{constructor(t,e){super(t,e)}INHERITS(){return this.getToken(cn.INHERITS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}qualifiedNameList(){return this.getRuleContext(0,du)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_inheritClause}accept(t){return t.visitInheritClause?t.visitInheritClause(this):t.visitChildren(this)}},hE=class extends ga{constructor(t,e){super(t,e)}partitionSpecification(){return this.getRuleContext(0,EE)}get ruleIndex(){return cn.RULE_optionalPartitionSpecification}accept(t){return t.visitOptionalPartitionSpecification?t.visitOptionalPartitionSpecification(this):t.visitChildren(this)}},EE=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(cn.PARTITION,0)}BY(){return this.getToken(cn.BY,0)}columnId(){return this.getRuleContext(0,$u)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}partitionElements(){return this.getRuleContext(0,TE)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_partitionSpecification}accept(t){return t.visitPartitionSpecification?t.visitPartitionSpecification(this):t.visitChildren(this)}},TE=class extends ga{constructor(t,e){super(t,e)}partitionElement(t){return void 0===t?this.getRuleContexts(oE):this.getRuleContext(t,oE)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_partitionElements}accept(t){return t.visitPartitionElements?t.visitPartitionElements(this):t.visitChildren(this)}},oE=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}optionalCollate(){return this.getRuleContext(0,TR)}optionalClass(){return this.getRuleContext(0,oR)}functionExpressionWindowless(){return this.getRuleContext(0,OI)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_partitionElement}accept(t){return t.visitPartitionElement?t.visitPartitionElement(this):t.visitChildren(this)}},RE=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_optionalTableAccessMethodClause}accept(t){return t.visitOptionalTableAccessMethodClause?t.visitOptionalTableAccessMethodClause(this):t.visitChildren(this)}},AE=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}relOptions(){return this.getRuleContext(0,nh)}WITHOUT(){return this.getToken(cn.WITHOUT,0)}OIDS(){return this.getToken(cn.OIDS,0)}get ruleIndex(){return cn.RULE_with}accept(t){return t.visitWith?t.visitWith(this):t.visitChildren(this)}},SE=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(cn.ON,0)}COMMIT(){return this.getToken(cn.COMMIT,0)}DROP(){return this.getToken(cn.DROP,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}ROWS(){return this.getToken(cn.ROWS,0)}PRESERVE(){return this.getToken(cn.PRESERVE,0)}get ruleIndex(){return cn.RULE_onCommitOption}accept(t){return t.visitOnCommitOption?t.visitOnCommitOption(this):t.visitChildren(this)}},lE=class extends ga{constructor(t,e){super(t,e)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_optionalTablespace}accept(t){return t.visitOptionalTablespace?t.visitOptionalTablespace(this):t.visitChildren(this)}},OE=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}INDEX(){return this.getToken(cn.INDEX,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_usingIndexTablespace}accept(t){return t.visitUsingIndexTablespace?t.visitUsingIndexTablespace(this):t.visitChildren(this)}},IE=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}get ruleIndex(){return cn.RULE_existingIndex}accept(t){return t.visitExistingIndex?t.visitExistingIndex(this):t.visitChildren(this)}},uE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}anyName(){return this.getRuleContext(0,mo)}optionalNameList(){return this.getRuleContext(0,uS)}ON(){return this.getToken(cn.ON,0)}expressionList(){return this.getRuleContext(0,ZI)}FROM(){return this.getToken(cn.FROM,0)}fromList(){return this.getRuleContext(0,Xl)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createStatsStatement}accept(t){return t.visitCreateStatsStatement?t.visitCreateStatsStatement(this):t.visitChildren(this)}},NE=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}STATISTICS(t){return void 0===t?this.getTokens(cn.STATISTICS):this.getToken(cn.STATISTICS,t)}anyName(){return this.getRuleContext(0,mo)}SET(){return this.getToken(cn.SET,0)}signedIconst(){return this.getRuleContext(0,qu)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_alterStatsStatement}accept(t){return t.visitAlterStatsStatement?t.visitAlterStatsStatement(this):t.visitChildren(this)}},LE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}temporaryOption(){return this.getRuleContext(0,gh)}TABLE(){return this.getToken(cn.TABLE,0)}createAsTarget(){return this.getRuleContext(0,CE)}AS(){return this.getToken(cn.AS,0)}selectStatement(){return this.getRuleContext(0,il)}withData(){return this.getRuleContext(0,_E)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createAsStatement}accept(t){return t.visitCreateAsStatement?t.visitCreateAsStatement(this):t.visitChildren(this)}},CE=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}optionalTableAccessMethodClause(){return this.getRuleContext(0,RE)}with(){return this.getRuleContext(0,AE)}onCommitOption(){return this.getRuleContext(0,SE)}optionalTablespace(){return this.getRuleContext(0,lE)}get ruleIndex(){return cn.RULE_createAsTarget}accept(t){return t.visitCreateAsTarget?t.visitCreateAsTarget(this):t.visitChildren(this)}},_E=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}NO(){return this.getToken(cn.NO,0)}get ruleIndex(){return cn.RULE_withData}accept(t){return t.visitWithData?t.visitWithData(this):t.visitChildren(this)}},PE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}VIEW(){return this.getToken(cn.VIEW,0)}createMaterializedViewTarget(){return this.getRuleContext(0,ME)}AS(){return this.getToken(cn.AS,0)}selectStatement(){return this.getRuleContext(0,il)}withData(){return this.getRuleContext(0,_E)}UNLOGGED(){return this.getToken(cn.UNLOGGED,0)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createMaterializedViewStatement}accept(t){return t.visitCreateMaterializedViewStatement?t.visitCreateMaterializedViewStatement(this):t.visitChildren(this)}},ME=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}optionalTableAccessMethodClause(){return this.getRuleContext(0,RE)}optionalRelOptions(){return this.getRuleContext(0,hh)}optionalTablespace(){return this.getRuleContext(0,lE)}get ruleIndex(){return cn.RULE_createMaterializedViewTarget}accept(t){return t.visitCreateMaterializedViewTarget?t.visitCreateMaterializedViewTarget(this):t.visitChildren(this)}},dE=class extends ga{constructor(t,e){super(t,e)}REFRESH(){return this.getToken(cn.REFRESH,0)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}VIEW(){return this.getToken(cn.VIEW,0)}qualifiedName(){return this.getRuleContext(0,vu)}withData(){return this.getRuleContext(0,_E)}CONCURRENTLY(){return this.getToken(cn.CONCURRENTLY,0)}get ruleIndex(){return cn.RULE_refreshMaterializedViewStatement}accept(t){return t.visitRefreshMaterializedViewStatement?t.visitRefreshMaterializedViewStatement(this):t.visitChildren(this)}},UE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}temporaryOption(){return this.getRuleContext(0,gh)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}qualifiedName(){return this.getRuleContext(0,vu)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}sequenceOptionList(){return this.getRuleContext(0,pE)}get ruleIndex(){return cn.RULE_createSequenceStatement}accept(t){return t.visitCreateSequenceStatement?t.visitCreateSequenceStatement(this):t.visitChildren(this)}},mE=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceName(){return this.getRuleContext(0,Gu)}sequenceOptionList(){return this.getRuleContext(0,pE)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_alterSequenceStatement}accept(t){return t.visitAlterSequenceStatement?t.visitAlterSequenceStatement(this):t.visitChildren(this)}},DE=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}sequenceOptionList(){return this.getRuleContext(0,pE)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalParenthesizedSeqOptionsList}accept(t){return t.visitOptionalParenthesizedSeqOptionsList?t.visitOptionalParenthesizedSeqOptionsList(this):t.visitChildren(this)}},pE=class extends ga{constructor(t,e){super(t,e)}sequenceOptionItem(t){return void 0===t?this.getRuleContexts(gE):this.getRuleContext(t,gE)}get ruleIndex(){return cn.RULE_sequenceOptionList}accept(t){return t.visitSequenceOptionList?t.visitSequenceOptionList(this):t.visitChildren(this)}},gE=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(cn.AS,0)}simpleTypeName(){return this.getRuleContext(0,CO)}CACHE(){return this.getToken(cn.CACHE,0)}numericOnly(){return this.getRuleContext(0,xE)}CYCLE(){return this.getToken(cn.CYCLE,0)}INCREMENT(){return this.getToken(cn.INCREMENT,0)}BY(){return this.getToken(cn.BY,0)}MAXVALUE(){return this.getToken(cn.MAXVALUE,0)}MINVALUE(){return this.getToken(cn.MINVALUE,0)}NO(){return this.getToken(cn.NO,0)}OWNED(){return this.getToken(cn.OWNED,0)}anyName(){return this.getRuleContext(0,mo)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}NAME_P(){return this.getToken(cn.NAME_P,0)}START(){return this.getToken(cn.START,0)}optionalWith(){return this.getRuleContext(0,An)}RESTART(){return this.getToken(cn.RESTART,0)}get ruleIndex(){return cn.RULE_sequenceOptionItem}accept(t){return t.visitSequenceOptionItem?t.visitSequenceOptionItem(this):t.visitChildren(this)}},xE=class extends ga{constructor(t,e){super(t,e)}fconst(){return this.getRuleContext(0,Xu)}PLUS(){return this.getToken(cn.PLUS,0)}MINUS(){return this.getToken(cn.MINUS,0)}signedIconst(){return this.getRuleContext(0,qu)}get ruleIndex(){return cn.RULE_numericOnly}accept(t){return t.visitNumericOnly?t.visitNumericOnly(this):t.visitChildren(this)}},kE=class extends ga{constructor(t,e){super(t,e)}numericOnly(t){return void 0===t?this.getRuleContexts(xE):this.getRuleContext(t,xE)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_numericOnlyList}accept(t){return t.visitNumericOnlyList?t.visitNumericOnlyList(this):t.visitChildren(this)}},HE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}optionalOrReplace(){return this.getRuleContext(0,lR)}optionalProcedural(){return this.getRuleContext(0,BE)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}name(){return this.getRuleContext(0,yu)}TRUSTED(){return this.getToken(cn.TRUSTED,0)}HANDLER(){return this.getToken(cn.HANDLER,0)}handlerName(){return this.getRuleContext(0,GE)}optionalInlineHandler(){return this.getRuleContext(0,FE)}validatorClause(){return this.getRuleContext(0,vE)}get ruleIndex(){return cn.RULE_createProcedureLangStatement}accept(t){return t.visitCreateProcedureLangStatement?t.visitCreateProcedureLangStatement(this):t.visitChildren(this)}},GE=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}attributes(){return this.getRuleContext(0,Do)}get ruleIndex(){return cn.RULE_handlerName}accept(t){return t.visitHandlerName?t.visitHandlerName(this):t.visitChildren(this)}},FE=class extends ga{constructor(t,e){super(t,e)}INLINE_P(){return this.getToken(cn.INLINE_P,0)}handlerName(){return this.getRuleContext(0,GE)}get ruleIndex(){return cn.RULE_optionalInlineHandler}accept(t){return t.visitOptionalInlineHandler?t.visitOptionalInlineHandler(this):t.visitChildren(this)}},vE=class extends ga{constructor(t,e){super(t,e)}VALIDATOR(){return this.getToken(cn.VALIDATOR,0)}handlerName(){return this.getRuleContext(0,GE)}NO(){return this.getToken(cn.NO,0)}get ruleIndex(){return cn.RULE_validatorClause}accept(t){return t.visitValidatorClause?t.visitValidatorClause(this):t.visitChildren(this)}},BE=class extends ga{constructor(t,e){super(t,e)}PROCEDURAL(){return this.getToken(cn.PROCEDURAL,0)}get ruleIndex(){return cn.RULE_optionalProcedural}accept(t){return t.visitOptionalProcedural?t.visitOptionalProcedural(this):t.visitChildren(this)}},yE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}name(){return this.getRuleContext(0,yu)}optionalTablespaceOwner(){return this.getRuleContext(0,fE)}LOCATION(){return this.getToken(cn.LOCATION,0)}sconst(){return this.getRuleContext(0,Qu)}optionalRelOptions(){return this.getRuleContext(0,hh)}get ruleIndex(){return cn.RULE_createTablespaceStatement}accept(t){return t.visitCreateTablespaceStatement?t.visitCreateTablespaceStatement(this):t.visitChildren(this)}},fE=class extends ga{constructor(t,e){super(t,e)}OWNER(){return this.getToken(cn.OWNER,0)}roleName(){return this.getRuleContext(0,ju)}get ruleIndex(){return cn.RULE_optionalTablespaceOwner}accept(t){return t.visitOptionalTablespaceOwner?t.visitOptionalTablespaceOwner(this):t.visitChildren(this)}},YE=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}name(){return this.getRuleContext(0,yu)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_dropTablespaceStatement}accept(t){return t.visitDropTablespaceStatement?t.visitDropTablespaceStatement(this):t.visitChildren(this)}},wE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}name(){return this.getRuleContext(0,yu)}optionalWith(){return this.getRuleContext(0,An)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}createExtensionOptionItem(t){return void 0===t?this.getRuleContexts(bE):this.getRuleContext(t,bE)}get ruleIndex(){return cn.RULE_createExtensionStatement}accept(t){return t.visitCreateExtensionStatement?t.visitCreateExtensionStatement(this):t.visitChildren(this)}},bE=class extends ga{constructor(t,e){super(t,e)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}VERSION_P(){return this.getToken(cn.VERSION_P,0)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}FROM(){return this.getToken(cn.FROM,0)}CASCADE(){return this.getToken(cn.CASCADE,0)}get ruleIndex(){return cn.RULE_createExtensionOptionItem}accept(t){return t.visitCreateExtensionOptionItem?t.visitCreateExtensionOptionItem(this):t.visitChildren(this)}},WE=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}name(){return this.getRuleContext(0,yu)}UPDATE(){return this.getToken(cn.UPDATE,0)}alterExtensionOptionItem(t){return void 0===t?this.getRuleContexts(VE):this.getRuleContext(t,VE)}get ruleIndex(){return cn.RULE_alterExtensionStatement}accept(t){return t.visitAlterExtensionStatement?t.visitAlterExtensionStatement(this):t.visitChildren(this)}},VE=class extends ga{constructor(t,e){super(t,e)}TO(){return this.getToken(cn.TO,0)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}get ruleIndex(){return cn.RULE_alterExtensionOptionItem}accept(t){return t.visitAlterExtensionOptionItem?t.visitAlterExtensionOptionItem(this):t.visitChildren(this)}},XE=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}name(t){return void 0===t?this.getRuleContexts(yu):this.getRuleContext(t,yu)}addOrDrop(){return this.getRuleContext(0,Pn)}objectTypeName(){return this.getRuleContext(0,_o)}ROLE(){return this.getToken(cn.ROLE,0)}roleName(){return this.getRuleContext(0,ju)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}objectTypeAnyName(){return this.getRuleContext(0,Co)}anyName(){return this.getRuleContext(0,mo)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceName(){return this.getRuleContext(0,Gu)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypes(){return this.getRuleContext(0,DR)}CAST(){return this.getToken(cn.CAST,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}AS(){return this.getToken(cn.AS,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}operatorWithArgumentTypes(){return this.getRuleContext(0,XR)}CLASS(){return this.getToken(cn.CLASS,0)}USING(){return this.getToken(cn.USING,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}TRANSFORM(){return this.getToken(cn.TRANSFORM,0)}FOR(){return this.getToken(cn.FOR,0)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}get ruleIndex(){return cn.RULE_alterExtensionContentsStatement}accept(t){return t.visitAlterExtensionContentsStatement?t.visitAlterExtensionContentsStatement(this):t.visitChildren(this)}},KE=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}name(){return this.getRuleContext(0,yu)}createGenericOptions(){return this.getRuleContext(0,qE)}forwardOptions(){return this.getRuleContext(0,JE)}get ruleIndex(){return cn.RULE_createForeignDataWrapperStatement}accept(t){return t.visitCreateForeignDataWrapperStatement?t.visitCreateForeignDataWrapperStatement(this):t.visitChildren(this)}},QE=class extends ga{constructor(t,e){super(t,e)}HANDLER(){return this.getToken(cn.HANDLER,0)}handlerName(){return this.getRuleContext(0,GE)}NO(){return this.getToken(cn.NO,0)}VALIDATOR(){return this.getToken(cn.VALIDATOR,0)}get ruleIndex(){return cn.RULE_forwardOption}accept(t){return t.visitForwardOption?t.visitForwardOption(this):t.visitChildren(this)}},JE=class extends ga{constructor(t,e){super(t,e)}forwardOption(t){return void 0===t?this.getRuleContexts(QE):this.getRuleContext(t,QE)}get ruleIndex(){return cn.RULE_forwardOptions}accept(t){return t.visitForwardOptions?t.visitForwardOptions(this):t.visitChildren(this)}},ZE=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}name(){return this.getRuleContext(0,yu)}alterGenericOptions(){return this.getRuleContext(0,zE)}forwardOptions(){return this.getRuleContext(0,JE)}get ruleIndex(){return cn.RULE_alterForeignDataWrapperStatement}accept(t){return t.visitAlterForeignDataWrapperStatement?t.visitAlterForeignDataWrapperStatement(this):t.visitChildren(this)}},qE=class extends ga{constructor(t,e){super(t,e)}OPTIONS(){return this.getToken(cn.OPTIONS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}genericOptionList(){return this.getRuleContext(0,jE)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_createGenericOptions}accept(t){return t.visitCreateGenericOptions?t.visitCreateGenericOptions(this):t.visitChildren(this)}},jE=class extends ga{constructor(t,e){super(t,e)}genericOptionElement(t){return void 0===t?this.getRuleContexts(eT):this.getRuleContext(t,eT)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_genericOptionList}accept(t){return t.visitGenericOptionList?t.visitGenericOptionList(this):t.visitChildren(this)}},zE=class extends ga{constructor(t,e){super(t,e)}OPTIONS(){return this.getToken(cn.OPTIONS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}alterGenericOptionList(){return this.getRuleContext(0,$E)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_alterGenericOptions}accept(t){return t.visitAlterGenericOptions?t.visitAlterGenericOptions(this):t.visitChildren(this)}},$E=class extends ga{constructor(t,e){super(t,e)}alterGenericOptionElem(t){return void 0===t?this.getRuleContexts(tT):this.getRuleContext(t,tT)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_alterGenericOptionList}accept(t){return t.visitAlterGenericOptionList?t.visitAlterGenericOptionList(this):t.visitChildren(this)}},tT=class extends ga{constructor(t,e){super(t,e)}genericOptionElement(){return this.getRuleContext(0,eT)}SET(){return this.getToken(cn.SET,0)}ADD_P(){return this.getToken(cn.ADD_P,0)}DROP(){return this.getToken(cn.DROP,0)}genericOptionName(){return this.getRuleContext(0,sT)}get ruleIndex(){return cn.RULE_alterGenericOptionElem}accept(t){return t.visitAlterGenericOptionElem?t.visitAlterGenericOptionElem(this):t.visitChildren(this)}},eT=class extends ga{constructor(t,e){super(t,e)}genericOptionName(){return this.getRuleContext(0,sT)}genericOptionArgument(){return this.getRuleContext(0,aT)}get ruleIndex(){return cn.RULE_genericOptionElement}accept(t){return t.visitGenericOptionElement?t.visitGenericOptionElement(this):t.visitChildren(this)}},sT=class extends ga{constructor(t,e){super(t,e)}columnLabel(){return this.getRuleContext(0,aN)}get ruleIndex(){return cn.RULE_genericOptionName}accept(t){return t.visitGenericOptionName?t.visitGenericOptionName(this):t.visitChildren(this)}},aT=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_genericOptionArgument}accept(t){return t.visitGenericOptionArgument?t.visitGenericOptionArgument(this):t.visitChildren(this)}},rT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}SERVER(){return this.getToken(cn.SERVER,0)}name(t){return void 0===t?this.getRuleContexts(yu):this.getRuleContext(t,yu)}optionalType(){return this.getRuleContext(0,iT)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}createGenericOptions(){return this.getRuleContext(0,qE)}foreignServerVersion(){return this.getRuleContext(0,cT)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createForeignServerStatement}accept(t){return t.visitCreateForeignServerStatement?t.visitCreateForeignServerStatement(this):t.visitChildren(this)}},iT=class extends ga{constructor(t,e){super(t,e)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_optionalType}accept(t){return t.visitOptionalType?t.visitOptionalType(this):t.visitChildren(this)}},cT=class extends ga{constructor(t,e){super(t,e)}VERSION_P(){return this.getToken(cn.VERSION_P,0)}sconst(){return this.getRuleContext(0,Qu)}NULL_P(){return this.getToken(cn.NULL_P,0)}get ruleIndex(){return cn.RULE_foreignServerVersion}accept(t){return t.visitForeignServerVersion?t.visitForeignServerVersion(this):t.visitChildren(this)}},nT=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}SERVER(){return this.getToken(cn.SERVER,0)}name(){return this.getRuleContext(0,yu)}alterGenericOptions(){return this.getRuleContext(0,zE)}foreignServerVersion(){return this.getRuleContext(0,cT)}get ruleIndex(){return cn.RULE_alterForeignServerStatement}accept(t){return t.visitAlterForeignServerStatement?t.visitAlterForeignServerStatement(this):t.visitChildren(this)}},hT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}TABLE(){return this.getToken(cn.TABLE,0)}qualifiedName(t){return void 0===t?this.getRuleContexts(vu):this.getRuleContext(t,vu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}optionalTableElementList(){return this.getRuleContext(0,xh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}inheritClause(){return this.getRuleContext(0,nE)}SERVER(){return this.getToken(cn.SERVER,0)}name(){return this.getRuleContext(0,yu)}createGenericOptions(){return this.getRuleContext(0,qE)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}PARTITION(){return this.getToken(cn.PARTITION,0)}OF(){return this.getToken(cn.OF,0)}optionalTypedTableElementList(){return this.getRuleContext(0,kh)}partitionBoundSpecification(){return this.getRuleContext(0,Ah)}get ruleIndex(){return cn.RULE_createForeignTableStatement}accept(t){return t.visitCreateForeignTableStatement?t.visitCreateForeignTableStatement(this):t.visitChildren(this)}},ET=class extends ga{constructor(t,e){super(t,e)}IMPORT_P(){return this.getToken(cn.IMPORT_P,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}name(t){return void 0===t?this.getRuleContexts(yu):this.getRuleContext(t,yu)}importQualification(){return this.getRuleContext(0,oT)}FROM(){return this.getToken(cn.FROM,0)}SERVER(){return this.getToken(cn.SERVER,0)}INTO(){return this.getToken(cn.INTO,0)}createGenericOptions(){return this.getRuleContext(0,qE)}get ruleIndex(){return cn.RULE_importForeignSchemaStatement}accept(t){return t.visitImportForeignSchemaStatement?t.visitImportForeignSchemaStatement(this):t.visitChildren(this)}},TT=class extends ga{constructor(t,e){super(t,e)}LIMIT(){return this.getToken(cn.LIMIT,0)}TO(){return this.getToken(cn.TO,0)}EXCEPT(){return this.getToken(cn.EXCEPT,0)}get ruleIndex(){return cn.RULE_importQualificationType}accept(t){return t.visitImportQualificationType?t.visitImportQualificationType(this):t.visitChildren(this)}},oT=class extends ga{constructor(t,e){super(t,e)}importQualificationType(){return this.getRuleContext(0,TT)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}relationExpressionList(){return this.getRuleContext(0,sO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_importQualification}accept(t){return t.visitImportQualification?t.visitImportQualification(this):t.visitChildren(this)}},RT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}USER(){return this.getToken(cn.USER,0)}MAPPING(){return this.getToken(cn.MAPPING,0)}FOR(){return this.getToken(cn.FOR,0)}authIdentifier(){return this.getRuleContext(0,AT)}SERVER(){return this.getToken(cn.SERVER,0)}name(){return this.getRuleContext(0,yu)}createGenericOptions(){return this.getRuleContext(0,qE)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_createUserMappingStatement}accept(t){return t.visitCreateUserMappingStatement?t.visitCreateUserMappingStatement(this):t.visitChildren(this)}},AT=class extends ga{constructor(t,e){super(t,e)}roleName(){return this.getRuleContext(0,ju)}USER(){return this.getToken(cn.USER,0)}get ruleIndex(){return cn.RULE_authIdentifier}accept(t){return t.visitAuthIdentifier?t.visitAuthIdentifier(this):t.visitChildren(this)}},ST=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}USER(){return this.getToken(cn.USER,0)}MAPPING(){return this.getToken(cn.MAPPING,0)}FOR(){return this.getToken(cn.FOR,0)}authIdentifier(){return this.getRuleContext(0,AT)}SERVER(){return this.getToken(cn.SERVER,0)}name(){return this.getRuleContext(0,yu)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_dropUserMappingStatement}accept(t){return t.visitDropUserMappingStatement?t.visitDropUserMappingStatement(this):t.visitChildren(this)}},lT=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}USER(){return this.getToken(cn.USER,0)}MAPPING(){return this.getToken(cn.MAPPING,0)}FOR(){return this.getToken(cn.FOR,0)}authIdentifier(){return this.getRuleContext(0,AT)}SERVER(){return this.getToken(cn.SERVER,0)}name(){return this.getRuleContext(0,yu)}alterGenericOptions(){return this.getRuleContext(0,zE)}get ruleIndex(){return cn.RULE_alterUserMappingStatement}accept(t){return t.visitAlterUserMappingStatement?t.visitAlterUserMappingStatement(this):t.visitChildren(this)}},OT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}POLICY(){return this.getToken(cn.POLICY,0)}name(){return this.getRuleContext(0,yu)}ON(){return this.getToken(cn.ON,0)}qualifiedName(){return this.getRuleContext(0,vu)}rowSecurityDefaultPermissive(){return this.getRuleContext(0,CT)}rowSecurityDefaultForCmd(){return this.getRuleContext(0,_T)}rowSecurityOptionalToUser(){return this.getRuleContext(0,LT)}rowSecurityOptionalExpression(){return this.getRuleContext(0,uT)}rowSecurityOptionalWithCheck(){return this.getRuleContext(0,NT)}get ruleIndex(){return cn.RULE_createPolicyStatement}accept(t){return t.visitCreatePolicyStatement?t.visitCreatePolicyStatement(this):t.visitChildren(this)}},IT=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}POLICY(){return this.getToken(cn.POLICY,0)}name(){return this.getRuleContext(0,yu)}ON(){return this.getToken(cn.ON,0)}qualifiedName(){return this.getRuleContext(0,vu)}rowSecurityOptionalToUser(){return this.getRuleContext(0,LT)}rowSecurityOptionalExpression(){return this.getRuleContext(0,uT)}rowSecurityOptionalWithCheck(){return this.getRuleContext(0,NT)}get ruleIndex(){return cn.RULE_alterPolicyStatement}accept(t){return t.visitAlterPolicyStatement?t.visitAlterPolicyStatement(this):t.visitChildren(this)}},uT=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_rowSecurityOptionalExpression}accept(t){return t.visitRowSecurityOptionalExpression?t.visitRowSecurityOptionalExpression(this):t.visitChildren(this)}},NT=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}CHECK(){return this.getToken(cn.CHECK,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_rowSecurityOptionalWithCheck}accept(t){return t.visitRowSecurityOptionalWithCheck?t.visitRowSecurityOptionalWithCheck(this):t.visitChildren(this)}},LT=class extends ga{constructor(t,e){super(t,e)}TO(){return this.getToken(cn.TO,0)}roleNameList(){return this.getRuleContext(0,zu)}get ruleIndex(){return cn.RULE_rowSecurityOptionalToUser}accept(t){return t.visitRowSecurityOptionalToUser?t.visitRowSecurityOptionalToUser(this):t.visitChildren(this)}},CT=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(cn.AS,0)}identifier(){return this.getRuleContext(0,rN)}get ruleIndex(){return cn.RULE_rowSecurityDefaultPermissive}accept(t){return t.visitRowSecurityDefaultPermissive?t.visitRowSecurityDefaultPermissive(this):t.visitChildren(this)}},_T=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}rowSecurityCommand(){return this.getRuleContext(0,PT)}get ruleIndex(){return cn.RULE_rowSecurityDefaultForCmd}accept(t){return t.visitRowSecurityDefaultForCmd?t.visitRowSecurityDefaultForCmd(this):t.visitChildren(this)}},PT=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(cn.ALL,0)}SELECT(){return this.getToken(cn.SELECT,0)}INSERT(){return this.getToken(cn.INSERT,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}get ruleIndex(){return cn.RULE_rowSecurityCommand}accept(t){return t.visitRowSecurityCommand?t.visitRowSecurityCommand(this):t.visitChildren(this)}},MT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}ACCESS(){return this.getToken(cn.ACCESS,0)}METHOD(){return this.getToken(cn.METHOD,0)}name(){return this.getRuleContext(0,yu)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}accessMethodType(){return this.getRuleContext(0,dT)}HANDLER(){return this.getToken(cn.HANDLER,0)}handlerName(){return this.getRuleContext(0,GE)}get ruleIndex(){return cn.RULE_createAccessMethodStatement}accept(t){return t.visitCreateAccessMethodStatement?t.visitCreateAccessMethodStatement(this):t.visitChildren(this)}},dT=class extends ga{constructor(t,e){super(t,e)}INDEX(){return this.getToken(cn.INDEX,0)}TABLE(){return this.getToken(cn.TABLE,0)}get ruleIndex(){return cn.RULE_accessMethodType}accept(t){return t.visitAccessMethodType?t.visitAccessMethodType(this):t.visitChildren(this)}},UT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}name(){return this.getRuleContext(0,yu)}triggerActionTime(){return this.getRuleContext(0,mT)}triggerEvents(){return this.getRuleContext(0,DT)}ON(){return this.getToken(cn.ON,0)}qualifiedName(){return this.getRuleContext(0,vu)}triggerReferencing(){return this.getRuleContext(0,gT)}triggerForSpec(){return this.getRuleContext(0,vT)}triggerWhen(){return this.getRuleContext(0,yT)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}functionOrProcedure(){return this.getRuleContext(0,fT)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}triggerFunctionArguments(){return this.getRuleContext(0,YT)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}AFTER(){return this.getToken(cn.AFTER,0)}optionalConstraintFromTable(){return this.getRuleContext(0,bT)}constraintAttributeSpecification(){return this.getRuleContext(0,WT)}FOR(){return this.getToken(cn.FOR,0)}EACH(){return this.getToken(cn.EACH,0)}ROW(){return this.getToken(cn.ROW,0)}get ruleIndex(){return cn.RULE_createTriggerStatement}accept(t){return t.visitCreateTriggerStatement?t.visitCreateTriggerStatement(this):t.visitChildren(this)}},mT=class extends ga{constructor(t,e){super(t,e)}BEFORE(){return this.getToken(cn.BEFORE,0)}AFTER(){return this.getToken(cn.AFTER,0)}INSTEAD(){return this.getToken(cn.INSTEAD,0)}OF(){return this.getToken(cn.OF,0)}get ruleIndex(){return cn.RULE_triggerActionTime}accept(t){return t.visitTriggerActionTime?t.visitTriggerActionTime(this):t.visitChildren(this)}},DT=class extends ga{constructor(t,e){super(t,e)}triggerOneEvent(t){return void 0===t?this.getRuleContexts(pT):this.getRuleContext(t,pT)}OR(t){return void 0===t?this.getTokens(cn.OR):this.getToken(cn.OR,t)}get ruleIndex(){return cn.RULE_triggerEvents}accept(t){return t.visitTriggerEvents?t.visitTriggerEvents(this):t.visitChildren(this)}},pT=class extends ga{constructor(t,e){super(t,e)}INSERT(){return this.getToken(cn.INSERT,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}OF(){return this.getToken(cn.OF,0)}columnList(){return this.getRuleContext(0,qh)}TRUNCATE(){return this.getToken(cn.TRUNCATE,0)}get ruleIndex(){return cn.RULE_triggerOneEvent}accept(t){return t.visitTriggerOneEvent?t.visitTriggerOneEvent(this):t.visitChildren(this)}},gT=class extends ga{constructor(t,e){super(t,e)}REFERENCING(){return this.getToken(cn.REFERENCING,0)}triggerTransitions(){return this.getRuleContext(0,xT)}get ruleIndex(){return cn.RULE_triggerReferencing}accept(t){return t.visitTriggerReferencing?t.visitTriggerReferencing(this):t.visitChildren(this)}},xT=class extends ga{constructor(t,e){super(t,e)}triggerTransition(t){return void 0===t?this.getRuleContexts(kT):this.getRuleContext(t,kT)}get ruleIndex(){return cn.RULE_triggerTransitions}accept(t){return t.visitTriggerTransitions?t.visitTriggerTransitions(this):t.visitChildren(this)}},kT=class extends ga{constructor(t,e){super(t,e)}transitionOldOrNew(){return this.getRuleContext(0,HT)}transitionRowOrTable(){return this.getRuleContext(0,GT)}optionalAs(){return this.getRuleContext(0,rS)}transitionRelName(){return this.getRuleContext(0,FT)}get ruleIndex(){return cn.RULE_triggerTransition}accept(t){return t.visitTriggerTransition?t.visitTriggerTransition(this):t.visitChildren(this)}},HT=class extends ga{constructor(t,e){super(t,e)}NEW(){return this.getToken(cn.NEW,0)}OLD(){return this.getToken(cn.OLD,0)}get ruleIndex(){return cn.RULE_transitionOldOrNew}accept(t){return t.visitTransitionOldOrNew?t.visitTransitionOldOrNew(this):t.visitChildren(this)}},GT=class extends ga{constructor(t,e){super(t,e)}TABLE(){return this.getToken(cn.TABLE,0)}ROW(){return this.getToken(cn.ROW,0)}get ruleIndex(){return cn.RULE_transitionRowOrTable}accept(t){return t.visitTransitionRowOrTable?t.visitTransitionRowOrTable(this):t.visitChildren(this)}},FT=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_transitionRelName}accept(t){return t.visitTransitionRelName?t.visitTransitionRelName(this):t.visitChildren(this)}},vT=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}triggerForType(){return this.getRuleContext(0,BT)}EACH(){return this.getToken(cn.EACH,0)}get ruleIndex(){return cn.RULE_triggerForSpec}accept(t){return t.visitTriggerForSpec?t.visitTriggerForSpec(this):t.visitChildren(this)}},BT=class extends ga{constructor(t,e){super(t,e)}ROW(){return this.getToken(cn.ROW,0)}STATEMENT(){return this.getToken(cn.STATEMENT,0)}get ruleIndex(){return cn.RULE_triggerForType}accept(t){return t.visitTriggerForType?t.visitTriggerForType(this):t.visitChildren(this)}},yT=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_triggerWhen}accept(t){return t.visitTriggerWhen?t.visitTriggerWhen(this):t.visitChildren(this)}},fT=class extends ga{constructor(t,e){super(t,e)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}get ruleIndex(){return cn.RULE_functionOrProcedure}accept(t){return t.visitFunctionOrProcedure?t.visitFunctionOrProcedure(this):t.visitChildren(this)}},YT=class extends ga{constructor(t,e){super(t,e)}triggerFunctionArgument(t){return void 0===t?this.getRuleContexts(wT):this.getRuleContext(t,wT)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_triggerFunctionArguments}accept(t){return t.visitTriggerFunctionArguments?t.visitTriggerFunctionArguments(this):t.visitChildren(this)}},wT=class extends ga{constructor(t,e){super(t,e)}iconst(){return this.getRuleContext(0,Ku)}fconst(){return this.getRuleContext(0,Xu)}sconst(){return this.getRuleContext(0,Qu)}columnLabel(){return this.getRuleContext(0,aN)}get ruleIndex(){return cn.RULE_triggerFunctionArgument}accept(t){return t.visitTriggerFunctionArgument?t.visitTriggerFunctionArgument(this):t.visitChildren(this)}},bT=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(cn.FROM,0)}qualifiedName(){return this.getRuleContext(0,vu)}get ruleIndex(){return cn.RULE_optionalConstraintFromTable}accept(t){return t.visitOptionalConstraintFromTable?t.visitOptionalConstraintFromTable(this):t.visitChildren(this)}},WT=class extends ga{constructor(t,e){super(t,e)}constraintAttributeElement(t){return void 0===t?this.getRuleContexts(VT):this.getRuleContext(t,VT)}get ruleIndex(){return cn.RULE_constraintAttributeSpecification}accept(t){return t.visitConstraintAttributeSpecification?t.visitConstraintAttributeSpecification(this):t.visitChildren(this)}},VT=class extends ga{constructor(t,e){super(t,e)}NOT(){return this.getToken(cn.NOT,0)}DEFERRABLE(){return this.getToken(cn.DEFERRABLE,0)}INITIALLY(){return this.getToken(cn.INITIALLY,0)}IMMEDIATE(){return this.getToken(cn.IMMEDIATE,0)}DEFERRED(){return this.getToken(cn.DEFERRED,0)}VALID(){return this.getToken(cn.VALID,0)}NO(){return this.getToken(cn.NO,0)}INHERIT(){return this.getToken(cn.INHERIT,0)}get ruleIndex(){return cn.RULE_constraintAttributeElement}accept(t){return t.visitConstraintAttributeElement?t.visitConstraintAttributeElement(this):t.visitChildren(this)}},XT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}EVENT(){return this.getToken(cn.EVENT,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}name(){return this.getRuleContext(0,yu)}ON(){return this.getToken(cn.ON,0)}columnLabel(){return this.getRuleContext(0,aN)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}functionOrProcedure(){return this.getRuleContext(0,fT)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}WHEN(){return this.getToken(cn.WHEN,0)}eventTriggerWhenList(){return this.getRuleContext(0,KT)}get ruleIndex(){return cn.RULE_createEventTriggerStatement}accept(t){return t.visitCreateEventTriggerStatement?t.visitCreateEventTriggerStatement(this):t.visitChildren(this)}},KT=class extends ga{constructor(t,e){super(t,e)}eventTriggerWhenItem(t){return void 0===t?this.getRuleContexts(QT):this.getRuleContext(t,QT)}AND(t){return void 0===t?this.getTokens(cn.AND):this.getToken(cn.AND,t)}get ruleIndex(){return cn.RULE_eventTriggerWhenList}accept(t){return t.visitEventTriggerWhenList?t.visitEventTriggerWhenList(this):t.visitChildren(this)}},QT=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}IN_P(){return this.getToken(cn.IN_P,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}eventTriggerValueList(){return this.getRuleContext(0,JT)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_eventTriggerWhenItem}accept(t){return t.visitEventTriggerWhenItem?t.visitEventTriggerWhenItem(this):t.visitChildren(this)}},JT=class extends ga{constructor(t,e){super(t,e)}sconst(t){return void 0===t?this.getRuleContexts(Qu):this.getRuleContext(t,Qu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_eventTriggerValueList}accept(t){return t.visitEventTriggerValueList?t.visitEventTriggerValueList(this):t.visitChildren(this)}},ZT=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}EVENT(){return this.getToken(cn.EVENT,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}name(){return this.getRuleContext(0,yu)}enableTrigger(){return this.getRuleContext(0,qT)}get ruleIndex(){return cn.RULE_alterEventTriggerStatement}accept(t){return t.visitAlterEventTriggerStatement?t.visitAlterEventTriggerStatement(this):t.visitChildren(this)}},qT=class extends ga{constructor(t,e){super(t,e)}ENABLE_P(){return this.getToken(cn.ENABLE_P,0)}REPLICA(){return this.getToken(cn.REPLICA,0)}ALWAYS(){return this.getToken(cn.ALWAYS,0)}DISABLE_P(){return this.getToken(cn.DISABLE_P,0)}get ruleIndex(){return cn.RULE_enableTrigger}accept(t){return t.visitEnableTrigger?t.visitEnableTrigger(this):t.visitChildren(this)}},jT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}ASSERTION(){return this.getToken(cn.ASSERTION,0)}anyName(){return this.getRuleContext(0,mo)}CHECK(){return this.getToken(cn.CHECK,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}constraintAttributeSpecification(){return this.getRuleContext(0,WT)}get ruleIndex(){return cn.RULE_createAssertionStatement}accept(t){return t.visitCreateAssertionStatement?t.visitCreateAssertionStatement(this):t.visitChildren(this)}},zT=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}optionalOrReplace(){return this.getRuleContext(0,lR)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}functionName(){return this.getRuleContext(0,wu)}aggregateArguments(){return this.getRuleContext(0,UR)}definition(){return this.getRuleContext(0,$T)}oldAggregateDefinition(){return this.getRuleContext(0,so)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}anyOperator(){return this.getRuleContext(0,WR)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}anyName(t){return void 0===t?this.getRuleContexts(mo):this.getRuleContext(t,mo)}AS(){return this.getToken(cn.AS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}optionalTableFunctionElementList(){return this.getRuleContext(0,oO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}ENUM_P(){return this.getToken(cn.ENUM_P,0)}enumValueList(){return this.getRuleContext(0,ro)}RANGE(){return this.getToken(cn.RANGE,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}PARSER(){return this.getToken(cn.PARSER,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}TEMPLATE(){return this.getToken(cn.TEMPLATE,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}COLLATION(){return this.getToken(cn.COLLATION,0)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}FROM(){return this.getToken(cn.FROM,0)}get ruleIndex(){return cn.RULE_defineStatement}accept(t){return t.visitDefineStatement?t.visitDefineStatement(this):t.visitChildren(this)}},$T=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}definitionElement(t){return void 0===t?this.getRuleContexts(to):this.getRuleContext(t,to)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_definition}accept(t){return t.visitDefinition?t.visitDefinition(this):t.visitChildren(this)}},to=class extends ga{constructor(t,e){super(t,e)}columnLabel(){return this.getRuleContext(0,aN)}EQUAL(){return this.getToken(cn.EQUAL,0)}definitionArgument(){return this.getRuleContext(0,eo)}get ruleIndex(){return cn.RULE_definitionElement}accept(t){return t.visitDefinitionElement?t.visitDefinitionElement(this):t.visitChildren(this)}},eo=class extends ga{constructor(t,e){super(t,e)}functionType(){return this.getRuleContext(0,dR)}reservedKeyword(){return this.getRuleContext(0,EN)}allOperatorQualifier(){return this.getRuleContext(0,QI)}numericOnly(){return this.getRuleContext(0,xE)}sconst(){return this.getRuleContext(0,Qu)}NONE(){return this.getToken(cn.NONE,0)}get ruleIndex(){return cn.RULE_definitionArgument}accept(t){return t.visitDefinitionArgument?t.visitDefinitionArgument(this):t.visitChildren(this)}},so=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}oldAggregateElement(t){return void 0===t?this.getRuleContexts(ao):this.getRuleContext(t,ao)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_oldAggregateDefinition}accept(t){return t.visitOldAggregateDefinition?t.visitOldAggregateDefinition(this):t.visitChildren(this)}},ao=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}EQUAL(){return this.getToken(cn.EQUAL,0)}definitionArgument(){return this.getRuleContext(0,eo)}get ruleIndex(){return cn.RULE_oldAggregateElement}accept(t){return t.visitOldAggregateElement?t.visitOldAggregateElement(this):t.visitChildren(this)}},ro=class extends ga{constructor(t,e){super(t,e)}sconst(t){return void 0===t?this.getRuleContexts(Qu):this.getRuleContext(t,Qu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_enumValueList}accept(t){return t.visitEnumValueList?t.visitEnumValueList(this):t.visitChildren(this)}},io=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}anyName(){return this.getRuleContext(0,mo)}ADD_P(){return this.getToken(cn.ADD_P,0)}VALUE_P(){return this.getToken(cn.VALUE_P,0)}optionalIfNotExists(){return this.getRuleContext(0,co)}sconst(t){return void 0===t?this.getRuleContexts(Qu):this.getRuleContext(t,Qu)}BEFORE(){return this.getToken(cn.BEFORE,0)}AFTER(){return this.getToken(cn.AFTER,0)}RENAME(){return this.getToken(cn.RENAME,0)}TO(){return this.getToken(cn.TO,0)}get ruleIndex(){return cn.RULE_alterEnumStatement}accept(t){return t.visitAlterEnumStatement?t.visitAlterEnumStatement(this):t.visitChildren(this)}},co=class extends ga{constructor(t,e){super(t,e)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_optionalIfNotExists}accept(t){return t.visitOptionalIfNotExists?t.visitOptionalIfNotExists(this):t.visitChildren(this)}},no=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}CLASS(){return this.getToken(cn.CLASS,0)}anyName(){return this.getRuleContext(0,mo)}FOR(){return this.getToken(cn.FOR,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}typeName(){return this.getRuleContext(0,LO)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}optionalOperatorFamily(){return this.getRuleContext(0,To)}AS(){return this.getToken(cn.AS,0)}operatorClassItemList(){return this.getRuleContext(0,ho)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_createOperatorClassStatement}accept(t){return t.visitCreateOperatorClassStatement?t.visitCreateOperatorClassStatement(this):t.visitChildren(this)}},ho=class extends ga{constructor(t,e){super(t,e)}operatorClassItem(t){return void 0===t?this.getRuleContexts(Eo):this.getRuleContext(t,Eo)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_operatorClassItemList}accept(t){return t.visitOperatorClassItemList?t.visitOperatorClassItemList(this):t.visitChildren(this)}},Eo=class extends ga{constructor(t,e){super(t,e)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}iconst(){return this.getRuleContext(0,Ku)}anyOperator(){return this.getRuleContext(0,WR)}operatorClassPurpose(){return this.getRuleContext(0,oo)}RECHECK(){return this.getToken(cn.RECHECK,0)}operatorWithArgumentTypes(){return this.getRuleContext(0,XR)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeList(){return this.getRuleContext(0,zI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}STORAGE(){return this.getToken(cn.STORAGE,0)}typeName(){return this.getRuleContext(0,LO)}get ruleIndex(){return cn.RULE_operatorClassItem}accept(t){return t.visitOperatorClassItem?t.visitOperatorClassItem(this):t.visitChildren(this)}},To=class extends ga{constructor(t,e){super(t,e)}FAMILY(){return this.getToken(cn.FAMILY,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_optionalOperatorFamily}accept(t){return t.visitOptionalOperatorFamily?t.visitOptionalOperatorFamily(this):t.visitChildren(this)}},oo=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}ORDER(){return this.getToken(cn.ORDER,0)}BY(){return this.getToken(cn.BY,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_operatorClassPurpose}accept(t){return t.visitOperatorClassPurpose?t.visitOperatorClassPurpose(this):t.visitChildren(this)}},Ro=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}anyName(){return this.getRuleContext(0,mo)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_createOperatorFamilyStatement}accept(t){return t.visitCreateOperatorFamilyStatement?t.visitCreateOperatorFamilyStatement(this):t.visitChildren(this)}},Ao=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}anyName(){return this.getRuleContext(0,mo)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}ADD_P(){return this.getToken(cn.ADD_P,0)}operatorClassItemList(){return this.getRuleContext(0,ho)}DROP(){return this.getToken(cn.DROP,0)}operatorClassDropList(){return this.getRuleContext(0,So)}get ruleIndex(){return cn.RULE_alterOperatorFamilyStatement}accept(t){return t.visitAlterOperatorFamilyStatement?t.visitAlterOperatorFamilyStatement(this):t.visitChildren(this)}},So=class extends ga{constructor(t,e){super(t,e)}operatorClassDrop(t){return void 0===t?this.getRuleContexts(lo):this.getRuleContext(t,lo)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_operatorClassDropList}accept(t){return t.visitOperatorClassDropList?t.visitOperatorClassDropList(this):t.visitChildren(this)}},lo=class extends ga{constructor(t,e){super(t,e)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}iconst(){return this.getRuleContext(0,Ku)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeList(){return this.getRuleContext(0,zI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}get ruleIndex(){return cn.RULE_operatorClassDrop}accept(t){return t.visitOperatorClassDrop?t.visitOperatorClassDrop(this):t.visitChildren(this)}},Oo=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}CLASS(){return this.getToken(cn.CLASS,0)}anyName(){return this.getRuleContext(0,mo)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_dropOperatorClassStatement}accept(t){return t.visitDropOperatorClassStatement?t.visitDropOperatorClassStatement(this):t.visitChildren(this)}},Io=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}anyName(){return this.getRuleContext(0,mo)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_dropOperatorFamilyStatement}accept(t){return t.visitDropOperatorFamilyStatement?t.visitDropOperatorFamilyStatement(this):t.visitChildren(this)}},uo=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}OWNED(){return this.getToken(cn.OWNED,0)}BY(){return this.getToken(cn.BY,0)}roleNameList(){return this.getRuleContext(0,zu)}optionalDropBehavior(){return this.getRuleContext(0,ah)}get ruleIndex(){return cn.RULE_dropOwnedStatement}accept(t){return t.visitDropOwnedStatement?t.visitDropOwnedStatement(this):t.visitChildren(this)}},No=class extends ga{constructor(t,e){super(t,e)}REASSIGN(){return this.getToken(cn.REASSIGN,0)}OWNED(){return this.getToken(cn.OWNED,0)}BY(){return this.getToken(cn.BY,0)}roleNameList(){return this.getRuleContext(0,zu)}TO(){return this.getToken(cn.TO,0)}roleName(){return this.getRuleContext(0,ju)}get ruleIndex(){return cn.RULE_reassignOwnedStatement}accept(t){return t.visitReassignOwnedStatement?t.visitReassignOwnedStatement(this):t.visitChildren(this)}},Lo=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}objectTypeAnyName(){return this.getRuleContext(0,Co)}anyNameList(){return this.getRuleContext(0,Uo)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceNameList(){return this.getRuleContext(0,Fu)}INDEX(){return this.getToken(cn.INDEX,0)}indexNameList(){return this.getRuleContext(0,xu)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaNameList(){return this.getRuleContext(0,pu)}dropTypeName(){return this.getRuleContext(0,Po)}nameList(){return this.getRuleContext(0,Bu)}objectTypeNameOnAnyName(){return this.getRuleContext(0,Mo)}name(){return this.getRuleContext(0,yu)}ON(){return this.getToken(cn.ON,0)}anyName(){return this.getRuleContext(0,mo)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}triggerName(){return this.getRuleContext(0,ku)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}typeNameList(){return this.getRuleContext(0,po)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}CONCURRENTLY(){return this.getToken(cn.CONCURRENTLY,0)}indexName(){return this.getRuleContext(0,gu)}get ruleIndex(){return cn.RULE_dropStatement}accept(t){return t.visitDropStatement?t.visitDropStatement(this):t.visitChildren(this)}},Co=class extends ga{constructor(t,e){super(t,e)}TABLE(){return this.getToken(cn.TABLE,0)}VIEW(){return this.getToken(cn.VIEW,0)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}COLLATION(){return this.getToken(cn.COLLATION,0)}CONVERSION_P(){return this.getToken(cn.CONVERSION_P,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}PARSER(){return this.getToken(cn.PARSER,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}TEMPLATE(){return this.getToken(cn.TEMPLATE,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}get ruleIndex(){return cn.RULE_objectTypeAnyName}accept(t){return t.visitObjectTypeAnyName?t.visitObjectTypeAnyName(this):t.visitChildren(this)}},_o=class extends ga{constructor(t,e){super(t,e)}dropTypeName(){return this.getRuleContext(0,Po)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}get ruleIndex(){return cn.RULE_objectTypeName}accept(t){return t.visitObjectTypeName?t.visitObjectTypeName(this):t.visitChildren(this)}},Po=class extends ga{constructor(t,e){super(t,e)}ACCESS(){return this.getToken(cn.ACCESS,0)}METHOD(){return this.getToken(cn.METHOD,0)}EVENT(){return this.getToken(cn.EVENT,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}optionalProcedural(){return this.getRuleContext(0,BE)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}SERVER(){return this.getToken(cn.SERVER,0)}get ruleIndex(){return cn.RULE_dropTypeName}accept(t){return t.visitDropTypeName?t.visitDropTypeName(this):t.visitChildren(this)}},Mo=class extends ga{constructor(t,e){super(t,e)}POLICY(){return this.getToken(cn.POLICY,0)}RULE(){return this.getToken(cn.RULE,0)}get ruleIndex(){return cn.RULE_objectTypeNameOnAnyName}accept(t){return t.visitObjectTypeNameOnAnyName?t.visitObjectTypeNameOnAnyName(this):t.visitChildren(this)}},Uo=class extends ga{constructor(t,e){super(t,e)}anyName(t){return void 0===t?this.getRuleContexts(mo):this.getRuleContext(t,mo)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_anyNameList}accept(t){return t.visitAnyNameList?t.visitAnyNameList(this):t.visitChildren(this)}},mo=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}attributes(){return this.getRuleContext(0,Do)}get ruleIndex(){return cn.RULE_anyName}accept(t){return t.visitAnyName?t.visitAnyName(this):t.visitChildren(this)}},Do=class extends ga{constructor(t,e){super(t,e)}DOT(t){return void 0===t?this.getTokens(cn.DOT):this.getToken(cn.DOT,t)}attributeName(t){return void 0===t?this.getRuleContexts(fu):this.getRuleContext(t,fu)}get ruleIndex(){return cn.RULE_attributes}accept(t){return t.visitAttributes?t.visitAttributes(this):t.visitChildren(this)}},po=class extends ga{constructor(t,e){super(t,e)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_typeNameList}accept(t){return t.visitTypeNameList?t.visitTypeNameList(this):t.visitChildren(this)}},go=class extends ga{constructor(t,e){super(t,e)}TRUNCATE(){return this.getToken(cn.TRUNCATE,0)}optionalTable(){return this.getRuleContext(0,Il)}relationExpressionList(){return this.getRuleContext(0,sO)}optionalRestartSequences(){return this.getRuleContext(0,xo)}optionalDropBehavior(){return this.getRuleContext(0,ah)}get ruleIndex(){return cn.RULE_truncateStatement}accept(t){return t.visitTruncateStatement?t.visitTruncateStatement(this):t.visitChildren(this)}},xo=class extends ga{constructor(t,e){super(t,e)}CONTINUE_P(){return this.getToken(cn.CONTINUE_P,0)}IDENTITY_P(){return this.getToken(cn.IDENTITY_P,0)}RESTART(){return this.getToken(cn.RESTART,0)}get ruleIndex(){return cn.RULE_optionalRestartSequences}accept(t){return t.visitOptionalRestartSequences?t.visitOptionalRestartSequences(this):t.visitChildren(this)}},ko=class extends ga{constructor(t,e){super(t,e)}COMMENT(){return this.getToken(cn.COMMENT,0)}ON(t){return void 0===t?this.getTokens(cn.ON):this.getToken(cn.ON,t)}objectTypeAnyName(){return this.getRuleContext(0,Co)}anyName(){return this.getRuleContext(0,mo)}IS(){return this.getToken(cn.IS,0)}commentText(){return this.getRuleContext(0,Ho)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceName(){return this.getRuleContext(0,Gu)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}COLUMN(){return this.getToken(cn.COLUMN,0)}objectTypeName(){return this.getRuleContext(0,_o)}name(){return this.getRuleContext(0,yu)}ROLE(){return this.getToken(cn.ROLE,0)}roleName(){return this.getRuleContext(0,ju)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypes(){return this.getRuleContext(0,DR)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}operatorWithArgumentTypes(){return this.getRuleContext(0,XR)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}constraintName(){return this.getRuleContext(0,Hu)}objectTypeNameOnAnyName(){return this.getRuleContext(0,Mo)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}triggerName(){return this.getRuleContext(0,ku)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}TRANSFORM(){return this.getToken(cn.TRANSFORM,0)}FOR(){return this.getToken(cn.FOR,0)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}CLASS(){return this.getToken(cn.CLASS,0)}USING(){return this.getToken(cn.USING,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}LARGE_P(){return this.getToken(cn.LARGE_P,0)}OBJECT_P(){return this.getToken(cn.OBJECT_P,0)}numericOnly(){return this.getRuleContext(0,xE)}CAST(){return this.getToken(cn.CAST,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}AS(){return this.getToken(cn.AS,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_commentStatement}accept(t){return t.visitCommentStatement?t.visitCommentStatement(this):t.visitChildren(this)}},Ho=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}NULL_P(){return this.getToken(cn.NULL_P,0)}get ruleIndex(){return cn.RULE_commentText}accept(t){return t.visitCommentText?t.visitCommentText(this):t.visitChildren(this)}},Go=class extends ga{constructor(t,e){super(t,e)}SECURITY(){return this.getToken(cn.SECURITY,0)}LABEL(){return this.getToken(cn.LABEL,0)}optionalProvider(){return this.getRuleContext(0,Fo)}ON(){return this.getToken(cn.ON,0)}objectTypeAnyName(){return this.getRuleContext(0,Co)}anyName(){return this.getRuleContext(0,mo)}IS(){return this.getToken(cn.IS,0)}securityLabel(){return this.getRuleContext(0,vo)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceName(){return this.getRuleContext(0,Gu)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}COLUMN(){return this.getToken(cn.COLUMN,0)}objectTypeName(){return this.getRuleContext(0,_o)}name(){return this.getRuleContext(0,yu)}ROLE(){return this.getToken(cn.ROLE,0)}roleName(){return this.getRuleContext(0,ju)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}typeName(){return this.getRuleContext(0,LO)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypes(){return this.getRuleContext(0,DR)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}LARGE_P(){return this.getToken(cn.LARGE_P,0)}OBJECT_P(){return this.getToken(cn.OBJECT_P,0)}numericOnly(){return this.getRuleContext(0,xE)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}get ruleIndex(){return cn.RULE_securityLabelStatement}accept(t){return t.visitSecurityLabelStatement?t.visitSecurityLabelStatement(this):t.visitChildren(this)}},Fo=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}get ruleIndex(){return cn.RULE_optionalProvider}accept(t){return t.visitOptionalProvider?t.visitOptionalProvider(this):t.visitChildren(this)}},vo=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}NULL_P(){return this.getToken(cn.NULL_P,0)}get ruleIndex(){return cn.RULE_securityLabel}accept(t){return t.visitSecurityLabel?t.visitSecurityLabel(this):t.visitChildren(this)}},Bo=class extends ga{constructor(t,e){super(t,e)}FETCH(){return this.getToken(cn.FETCH,0)}fetchArguments(){return this.getRuleContext(0,yo)}MOVE(){return this.getToken(cn.MOVE,0)}get ruleIndex(){return cn.RULE_fetchStatement}accept(t){return t.visitFetchStatement?t.visitFetchStatement(this):t.visitChildren(this)}},yo=class extends ga{constructor(t,e){super(t,e)}cursorName(){return this.getRuleContext(0,al)}fromOrIn(){return this.getRuleContext(0,fo)}NEXT(){return this.getToken(cn.NEXT,0)}optionalFromOrIn(){return this.getRuleContext(0,Yo)}PRIOR(){return this.getToken(cn.PRIOR,0)}FIRST_P(){return this.getToken(cn.FIRST_P,0)}LAST_P(){return this.getToken(cn.LAST_P,0)}ABSOLUTE_P(){return this.getToken(cn.ABSOLUTE_P,0)}signedIconst(){return this.getRuleContext(0,qu)}RELATIVE_P(){return this.getToken(cn.RELATIVE_P,0)}ALL(){return this.getToken(cn.ALL,0)}FORWARD(){return this.getToken(cn.FORWARD,0)}BACKWARD(){return this.getToken(cn.BACKWARD,0)}get ruleIndex(){return cn.RULE_fetchArguments}accept(t){return t.visitFetchArguments?t.visitFetchArguments(this):t.visitChildren(this)}},fo=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(cn.FROM,0)}IN_P(){return this.getToken(cn.IN_P,0)}get ruleIndex(){return cn.RULE_fromOrIn}accept(t){return t.visitFromOrIn?t.visitFromOrIn(this):t.visitChildren(this)}},Yo=class extends ga{constructor(t,e){super(t,e)}fromOrIn(){return this.getRuleContext(0,fo)}get ruleIndex(){return cn.RULE_optionalFromOrIn}accept(t){return t.visitOptionalFromOrIn?t.visitOptionalFromOrIn(this):t.visitChildren(this)}},wo=class extends ga{constructor(t,e){super(t,e)}GRANT(){return this.getToken(cn.GRANT,0)}privileges(){return this.getRuleContext(0,Wo)}ON(){return this.getToken(cn.ON,0)}privilegeTarget(){return this.getRuleContext(0,Ko)}TO(){return this.getToken(cn.TO,0)}granteeList(){return this.getRuleContext(0,Qo)}optionalWithGrantOption(){return this.getRuleContext(0,Zo)}get ruleIndex(){return cn.RULE_grantStatement}accept(t){return t.visitGrantStatement?t.visitGrantStatement(this):t.visitChildren(this)}},bo=class extends ga{constructor(t,e){super(t,e)}REVOKE(){return this.getToken(cn.REVOKE,0)}privileges(){return this.getRuleContext(0,Wo)}ON(){return this.getToken(cn.ON,0)}privilegeTarget(){return this.getRuleContext(0,Ko)}FROM(){return this.getToken(cn.FROM,0)}granteeList(){return this.getRuleContext(0,Qo)}optionalDropBehavior(){return this.getRuleContext(0,ah)}GRANT(){return this.getToken(cn.GRANT,0)}OPTION(){return this.getToken(cn.OPTION,0)}FOR(){return this.getToken(cn.FOR,0)}get ruleIndex(){return cn.RULE_revokeStatement}accept(t){return t.visitRevokeStatement?t.visitRevokeStatement(this):t.visitChildren(this)}},Wo=class extends ga{constructor(t,e){super(t,e)}privilegeList(){return this.getRuleContext(0,Vo)}ALL(){return this.getToken(cn.ALL,0)}PRIVILEGES(){return this.getToken(cn.PRIVILEGES,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}columnList(){return this.getRuleContext(0,qh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_privileges}accept(t){return t.visitPrivileges?t.visitPrivileges(this):t.visitChildren(this)}},Vo=class extends ga{constructor(t,e){super(t,e)}privilege(t){return void 0===t?this.getRuleContexts(Xo):this.getRuleContext(t,Xo)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_privilegeList}accept(t){return t.visitPrivilegeList?t.visitPrivilegeList(this):t.visitChildren(this)}},Xo=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(cn.SELECT,0)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}REFERENCES(){return this.getToken(cn.REFERENCES,0)}CREATE(){return this.getToken(cn.CREATE,0)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_privilege}accept(t){return t.visitPrivilege?t.visitPrivilege(this):t.visitChildren(this)}},Ko=class extends ga{constructor(t,e){super(t,e)}qualifiedNameList(){return this.getRuleContext(0,du)}TABLE(){return this.getToken(cn.TABLE,0)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceNameList(){return this.getRuleContext(0,Fu)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}nameList(){return this.getRuleContext(0,Bu)}SERVER(){return this.getToken(cn.SERVER,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypesList(){return this.getRuleContext(0,IR)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseNameList(){return this.getRuleContext(0,mu)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}anyNameList(){return this.getRuleContext(0,Uo)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}LARGE_P(){return this.getToken(cn.LARGE_P,0)}OBJECT_P(){return this.getToken(cn.OBJECT_P,0)}numericOnlyList(){return this.getRuleContext(0,kE)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaNameList(){return this.getRuleContext(0,pu)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}ALL(){return this.getToken(cn.ALL,0)}IN_P(){return this.getToken(cn.IN_P,0)}TABLES(){return this.getToken(cn.TABLES,0)}SEQUENCES(){return this.getToken(cn.SEQUENCES,0)}FUNCTIONS(){return this.getToken(cn.FUNCTIONS,0)}PROCEDURES(){return this.getToken(cn.PROCEDURES,0)}ROUTINES(){return this.getToken(cn.ROUTINES,0)}get ruleIndex(){return cn.RULE_privilegeTarget}accept(t){return t.visitPrivilegeTarget?t.visitPrivilegeTarget(this):t.visitChildren(this)}},Qo=class extends ga{constructor(t,e){super(t,e)}grantee(t){return void 0===t?this.getRuleContexts(Jo):this.getRuleContext(t,Jo)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_granteeList}accept(t){return t.visitGranteeList?t.visitGranteeList(this):t.visitChildren(this)}},Jo=class extends ga{constructor(t,e){super(t,e)}roleName(){return this.getRuleContext(0,ju)}GROUP_P(){return this.getToken(cn.GROUP_P,0)}get ruleIndex(){return cn.RULE_grantee}accept(t){return t.visitGrantee?t.visitGrantee(this):t.visitChildren(this)}},Zo=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}GRANT(){return this.getToken(cn.GRANT,0)}OPTION(){return this.getToken(cn.OPTION,0)}get ruleIndex(){return cn.RULE_optionalWithGrantOption}accept(t){return t.visitOptionalWithGrantOption?t.visitOptionalWithGrantOption(this):t.visitChildren(this)}},qo=class extends ga{constructor(t,e){super(t,e)}GRANT(){return this.getToken(cn.GRANT,0)}privilegeList(){return this.getRuleContext(0,Vo)}TO(){return this.getToken(cn.TO,0)}roleNameList(){return this.getRuleContext(0,zu)}optionalGrantAdminOption(){return this.getRuleContext(0,zo)}optionalGrantedBy(){return this.getRuleContext(0,$o)}get ruleIndex(){return cn.RULE_grantPrivilegeStatement}accept(t){return t.visitGrantPrivilegeStatement?t.visitGrantPrivilegeStatement(this):t.visitChildren(this)}},jo=class extends ga{constructor(t,e){super(t,e)}REVOKE(){return this.getToken(cn.REVOKE,0)}privilegeList(){return this.getRuleContext(0,Vo)}FROM(){return this.getToken(cn.FROM,0)}roleNameList(){return this.getRuleContext(0,zu)}optionalGrantedBy(){return this.getRuleContext(0,$o)}optionalDropBehavior(){return this.getRuleContext(0,ah)}ADMIN(){return this.getToken(cn.ADMIN,0)}OPTION(){return this.getToken(cn.OPTION,0)}FOR(){return this.getToken(cn.FOR,0)}get ruleIndex(){return cn.RULE_revokePrivilegeStatement}accept(t){return t.visitRevokePrivilegeStatement?t.visitRevokePrivilegeStatement(this):t.visitChildren(this)}},zo=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}ADMIN(){return this.getToken(cn.ADMIN,0)}OPTION(){return this.getToken(cn.OPTION,0)}get ruleIndex(){return cn.RULE_optionalGrantAdminOption}accept(t){return t.visitOptionalGrantAdminOption?t.visitOptionalGrantAdminOption(this):t.visitChildren(this)}},$o=class extends ga{constructor(t,e){super(t,e)}GRANTED(){return this.getToken(cn.GRANTED,0)}BY(){return this.getToken(cn.BY,0)}roleName(){return this.getRuleContext(0,ju)}get ruleIndex(){return cn.RULE_optionalGrantedBy}accept(t){return t.visitOptionalGrantedBy?t.visitOptionalGrantedBy(this):t.visitChildren(this)}},tR=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}PRIVILEGES(){return this.getToken(cn.PRIVILEGES,0)}defaultPrivelegeAction(){return this.getRuleContext(0,sR)}defultPrivilegeOption(t){return void 0===t?this.getRuleContexts(eR):this.getRuleContext(t,eR)}get ruleIndex(){return cn.RULE_alterDefaultPrivilegesStatement}accept(t){return t.visitAlterDefaultPrivilegesStatement?t.visitAlterDefaultPrivilegesStatement(this):t.visitChildren(this)}},eR=class extends ga{constructor(t,e){super(t,e)}IN_P(){return this.getToken(cn.IN_P,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaNameList(){return this.getRuleContext(0,pu)}FOR(){return this.getToken(cn.FOR,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleNameList(){return this.getRuleContext(0,zu)}get ruleIndex(){return cn.RULE_defultPrivilegeOption}accept(t){return t.visitDefultPrivilegeOption?t.visitDefultPrivilegeOption(this):t.visitChildren(this)}},sR=class extends ga{constructor(t,e){super(t,e)}GRANT(){return this.getToken(cn.GRANT,0)}privileges(){return this.getRuleContext(0,Wo)}ON(){return this.getToken(cn.ON,0)}defultPrivilegeTarget(){return this.getRuleContext(0,aR)}TO(){return this.getToken(cn.TO,0)}granteeList(){return this.getRuleContext(0,Qo)}optionalWithGrantOption(){return this.getRuleContext(0,Zo)}REVOKE(){return this.getToken(cn.REVOKE,0)}FROM(){return this.getToken(cn.FROM,0)}optionalDropBehavior(){return this.getRuleContext(0,ah)}OPTION(){return this.getToken(cn.OPTION,0)}FOR(){return this.getToken(cn.FOR,0)}get ruleIndex(){return cn.RULE_defaultPrivelegeAction}accept(t){return t.visitDefaultPrivelegeAction?t.visitDefaultPrivelegeAction(this):t.visitChildren(this)}},aR=class extends ga{constructor(t,e){super(t,e)}TABLES(){return this.getToken(cn.TABLES,0)}FUNCTIONS(){return this.getToken(cn.FUNCTIONS,0)}ROUTINES(){return this.getToken(cn.ROUTINES,0)}SEQUENCES(){return this.getToken(cn.SEQUENCES,0)}TYPES_P(){return this.getToken(cn.TYPES_P,0)}SCHEMAS(){return this.getToken(cn.SCHEMAS,0)}get ruleIndex(){return cn.RULE_defultPrivilegeTarget}accept(t){return t.visitDefultPrivilegeTarget?t.visitDefultPrivilegeTarget(this):t.visitChildren(this)}},rR=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}INDEX(){return this.getToken(cn.INDEX,0)}ON(){return this.getToken(cn.ON,0)}relationExpression(){return this.getRuleContext(0,eO)}optionalAccessMethodClause(){return this.getRuleContext(0,iR)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}indexParameters(){return this.getRuleContext(0,cR)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}optionalInclude(){return this.getRuleContext(0,ER)}optionalRelOptions(){return this.getRuleContext(0,hh)}optionalTablespace(){return this.getRuleContext(0,lE)}whereClause(){return this.getRuleContext(0,EO)}UNIQUE(){return this.getToken(cn.UNIQUE,0)}CONCURRENTLY(){return this.getToken(cn.CONCURRENTLY,0)}name(){return this.getRuleContext(0,yu)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_indexStatement}accept(t){return t.visitIndexStatement?t.visitIndexStatement(this):t.visitChildren(this)}},iR=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_optionalAccessMethodClause}accept(t){return t.visitOptionalAccessMethodClause?t.visitOptionalAccessMethodClause(this):t.visitChildren(this)}},cR=class extends ga{constructor(t,e){super(t,e)}indexElement(t){return void 0===t?this.getRuleContexts(hR):this.getRuleContext(t,hR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_indexParameters}accept(t){return t.visitIndexParameters?t.visitIndexParameters(this):t.visitChildren(this)}},nR=class extends ga{constructor(t,e){super(t,e)}optionalCollate(){return this.getRuleContext(0,TR)}optionalClass(){return this.getRuleContext(0,oR)}optionalAscOrDesc(){return this.getRuleContext(0,RR)}optionalNullsOrder(){return this.getRuleContext(0,AR)}anyName(){return this.getRuleContext(0,mo)}relOptions(){return this.getRuleContext(0,nh)}get ruleIndex(){return cn.RULE_indexElemOptions}accept(t){return t.visitIndexElemOptions?t.visitIndexElemOptions(this):t.visitChildren(this)}},hR=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}indexElemOptions(){return this.getRuleContext(0,nR)}functionExpressionWindowless(){return this.getRuleContext(0,OI)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_indexElement}accept(t){return t.visitIndexElement?t.visitIndexElement(this):t.visitChildren(this)}},ER=class extends ga{constructor(t,e){super(t,e)}INCLUDE(){return this.getToken(cn.INCLUDE,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}indexElement(t){return void 0===t?this.getRuleContexts(hR):this.getRuleContext(t,hR)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_optionalInclude}accept(t){return t.visitOptionalInclude?t.visitOptionalInclude(this):t.visitChildren(this)}},TR=class extends ga{constructor(t,e){super(t,e)}COLLATE(){return this.getToken(cn.COLLATE,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_optionalCollate}accept(t){return t.visitOptionalCollate?t.visitOptionalCollate(this):t.visitChildren(this)}},oR=class extends ga{constructor(t,e){super(t,e)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_optionalClass}accept(t){return t.visitOptionalClass?t.visitOptionalClass(this):t.visitChildren(this)}},RR=class extends ga{constructor(t,e){super(t,e)}ASC(){return this.getToken(cn.ASC,0)}DESC(){return this.getToken(cn.DESC,0)}get ruleIndex(){return cn.RULE_optionalAscOrDesc}accept(t){return t.visitOptionalAscOrDesc?t.visitOptionalAscOrDesc(this):t.visitChildren(this)}},AR=class extends ga{constructor(t,e){super(t,e)}NULLS_P(){return this.getToken(cn.NULLS_P,0)}FIRST_P(){return this.getToken(cn.FIRST_P,0)}LAST_P(){return this.getToken(cn.LAST_P,0)}get ruleIndex(){return cn.RULE_optionalNullsOrder}accept(t){return t.visitOptionalNullsOrder?t.visitOptionalNullsOrder(this):t.visitChildren(this)}},SR=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}optionalOrReplace(){return this.getRuleContext(0,lR)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(t){return void 0===t?this.getTokens(cn.OPEN_PAREN):this.getToken(cn.OPEN_PAREN,t)}CLOSE_PAREN(t){return void 0===t?this.getTokens(cn.CLOSE_PAREN):this.getToken(cn.CLOSE_PAREN,t)}createFunctionOptionList(){return this.getRuleContext(0,gR)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}functionArgumentsWithDefaultsList(){return this.getRuleContext(0,NR)}RETURNS(){return this.getToken(cn.RETURNS,0)}functionReturn(){return this.getRuleContext(0,MR)}TABLE(){return this.getToken(cn.TABLE,0)}tableFunctionColumnList(){return this.getRuleContext(0,BR)}get ruleIndex(){return cn.RULE_createFunctionStatement}accept(t){return t.visitCreateFunctionStatement?t.visitCreateFunctionStatement(this):t.visitChildren(this)}},lR=class extends ga{constructor(t,e){super(t,e)}OR(){return this.getToken(cn.OR,0)}REPLACE(){return this.getToken(cn.REPLACE,0)}get ruleIndex(){return cn.RULE_optionalOrReplace}accept(t){return t.visitOptionalOrReplace?t.visitOptionalOrReplace(this):t.visitChildren(this)}},OR=class extends ga{constructor(t,e){super(t,e)}functionArgument(t){return void 0===t?this.getRuleContexts(CR):this.getRuleContext(t,CR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_functionArgumentsList}accept(t){return t.visitFunctionArgumentsList?t.visitFunctionArgumentsList(this):t.visitChildren(this)}},IR=class extends ga{constructor(t,e){super(t,e)}functionWithArgumentTypes(t){return void 0===t?this.getRuleContexts(uR):this.getRuleContext(t,uR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_functionWithArgumentTypesList}accept(t){return t.visitFunctionWithArgumentTypesList?t.visitFunctionWithArgumentTypesList(this):t.visitChildren(this)}},uR=class extends ga{constructor(t,e){super(t,e)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}functionArgumentsList(){return this.getRuleContext(0,OR)}typeFunctionNameKeyword(){return this.getRuleContext(0,hN)}columnId(){return this.getRuleContext(0,$u)}indirection(){return this.getRuleContext(0,uu)}get ruleIndex(){return cn.RULE_functionWithArgumentTypes}accept(t){return t.visitFunctionWithArgumentTypes?t.visitFunctionWithArgumentTypes(this):t.visitChildren(this)}},NR=class extends ga{constructor(t,e){super(t,e)}functionArgumentWithDefault(t){return void 0===t?this.getRuleContexts(LR):this.getRuleContext(t,LR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_functionArgumentsWithDefaultsList}accept(t){return t.visitFunctionArgumentsWithDefaultsList?t.visitFunctionArgumentsWithDefaultsList(this):t.visitChildren(this)}},LR=class extends ga{constructor(t,e){super(t,e)}functionArgument(){return this.getRuleContext(0,CR)}expression1(){return this.getRuleContext(0,wO)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}EQUAL(){return this.getToken(cn.EQUAL,0)}get ruleIndex(){return cn.RULE_functionArgumentWithDefault}accept(t){return t.visitFunctionArgumentWithDefault?t.visitFunctionArgumentWithDefault(this):t.visitChildren(this)}},CR=class extends ga{constructor(t,e){super(t,e)}argumentClass(){return this.getRuleContext(0,_R)}functionType(){return this.getRuleContext(0,dR)}parameterName(){return this.getRuleContext(0,PR)}get ruleIndex(){return cn.RULE_functionArgument}accept(t){return t.visitFunctionArgument?t.visitFunctionArgument(this):t.visitChildren(this)}},_R=class extends ga{constructor(t,e){super(t,e)}IN_P(){return this.getToken(cn.IN_P,0)}OUT_P(){return this.getToken(cn.OUT_P,0)}INOUT(){return this.getToken(cn.INOUT,0)}VARIADIC(){return this.getToken(cn.VARIADIC,0)}get ruleIndex(){return cn.RULE_argumentClass}accept(t){return t.visitArgumentClass?t.visitArgumentClass(this):t.visitChildren(this)}},PR=class extends ga{constructor(t,e){super(t,e)}typeFunctionName(){return this.getRuleContext(0,eN)}builtinFunctionName(){return this.getRuleContext(0,TN)}LEFT(){return this.getToken(cn.LEFT,0)}RIGHT(){return this.getToken(cn.RIGHT,0)}get ruleIndex(){return cn.RULE_parameterName}accept(t){return t.visitParameterName?t.visitParameterName(this):t.visitChildren(this)}},MR=class extends ga{constructor(t,e){super(t,e)}functionType(){return this.getRuleContext(0,dR)}get ruleIndex(){return cn.RULE_functionReturn}accept(t){return t.visitFunctionReturn?t.visitFunctionReturn(this):t.visitChildren(this)}},dR=class extends ga{constructor(t,e){super(t,e)}typeName(){return this.getRuleContext(0,LO)}attributes(){return this.getRuleContext(0,Do)}PERCENT(){return this.getToken(cn.PERCENT,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}builtinFunctionName(){return this.getRuleContext(0,TN)}typeFunctionName(){return this.getRuleContext(0,eN)}LEFT(){return this.getToken(cn.LEFT,0)}RIGHT(){return this.getToken(cn.RIGHT,0)}SETOF(){return this.getToken(cn.SETOF,0)}get ruleIndex(){return cn.RULE_functionType}accept(t){return t.visitFunctionType?t.visitFunctionType(this):t.visitChildren(this)}},UR=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}STAR(){return this.getToken(cn.STAR,0)}aggregateArgumentsList(t){return void 0===t?this.getRuleContexts(mR):this.getRuleContext(t,mR)}ORDER(){return this.getToken(cn.ORDER,0)}BY(){return this.getToken(cn.BY,0)}get ruleIndex(){return cn.RULE_aggregateArguments}accept(t){return t.visitAggregateArguments?t.visitAggregateArguments(this):t.visitChildren(this)}},mR=class extends ga{constructor(t,e){super(t,e)}functionArgument(t){return void 0===t?this.getRuleContexts(CR):this.getRuleContext(t,CR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_aggregateArgumentsList}accept(t){return t.visitAggregateArgumentsList?t.visitAggregateArgumentsList(this):t.visitChildren(this)}},DR=class extends ga{constructor(t,e){super(t,e)}functionName(){return this.getRuleContext(0,wu)}aggregateArguments(){return this.getRuleContext(0,UR)}get ruleIndex(){return cn.RULE_aggregateWithArgumentTypes}accept(t){return t.visitAggregateWithArgumentTypes?t.visitAggregateWithArgumentTypes(this):t.visitChildren(this)}},pR=class extends ga{constructor(t,e){super(t,e)}aggregateWithArgumentTypes(t){return void 0===t?this.getRuleContexts(DR):this.getRuleContext(t,DR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_aggregateWithArgumentTypesList}accept(t){return t.visitAggregateWithArgumentTypesList?t.visitAggregateWithArgumentTypesList(this):t.visitChildren(this)}},gR=class extends ga{constructor(t,e){super(t,e)}createFunctionOptionItem(t){return void 0===t?this.getRuleContexts(kR):this.getRuleContext(t,kR)}get ruleIndex(){return cn.RULE_createFunctionOptionList}accept(t){return t.visitCreateFunctionOptionList?t.visitCreateFunctionOptionList(this):t.visitChildren(this)}},xR=class extends ga{constructor(t,e){super(t,e)}CALLED(){return this.getToken(cn.CALLED,0)}ON(){return this.getToken(cn.ON,0)}NULL_P(t){return void 0===t?this.getTokens(cn.NULL_P):this.getToken(cn.NULL_P,t)}INPUT_P(){return this.getToken(cn.INPUT_P,0)}RETURNS(){return this.getToken(cn.RETURNS,0)}STRICT_P(){return this.getToken(cn.STRICT_P,0)}IMMUTABLE(){return this.getToken(cn.IMMUTABLE,0)}STABLE(){return this.getToken(cn.STABLE,0)}VOLATILE(){return this.getToken(cn.VOLATILE,0)}EXTERNAL(){return this.getToken(cn.EXTERNAL,0)}SECURITY(){return this.getToken(cn.SECURITY,0)}DEFINER(){return this.getToken(cn.DEFINER,0)}INVOKER(){return this.getToken(cn.INVOKER,0)}LEAKPROOF(){return this.getToken(cn.LEAKPROOF,0)}NOT(){return this.getToken(cn.NOT,0)}COST(){return this.getToken(cn.COST,0)}numericOnly(){return this.getRuleContext(0,xE)}ROWS(){return this.getToken(cn.ROWS,0)}SUPPORT(){return this.getToken(cn.SUPPORT,0)}anyName(){return this.getRuleContext(0,mo)}functionSetResetClause(){return this.getRuleContext(0,Vn)}PARALLEL(){return this.getToken(cn.PARALLEL,0)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_commonFunctionOptionItem}accept(t){return t.visitCommonFunctionOptionItem?t.visitCommonFunctionOptionItem(this):t.visitChildren(this)}},kR=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(cn.AS,0)}functionAs(){return this.getRuleContext(0,HR)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}TRANSFORM(){return this.getToken(cn.TRANSFORM,0)}transformTypeList(){return this.getRuleContext(0,GR)}WINDOW(){return this.getToken(cn.WINDOW,0)}commonFunctionOptionItem(){return this.getRuleContext(0,xR)}get ruleIndex(){return cn.RULE_createFunctionOptionItem}accept(t){return t.visitCreateFunctionOptionItem?t.visitCreateFunctionOptionItem(this):t.visitChildren(this)}},HR=class extends ga{constructor(t,e){super(t,e)}sconst(t){return void 0===t?this.getRuleContexts(Qu):this.getRuleContext(t,Qu)}COMMA(){return this.getToken(cn.COMMA,0)}get ruleIndex(){return cn.RULE_functionAs}accept(t){return t.visitFunctionAs?t.visitFunctionAs(this):t.visitChildren(this)}},GR=class extends ga{constructor(t,e){super(t,e)}FOR(t){return void 0===t?this.getTokens(cn.FOR):this.getToken(cn.FOR,t)}TYPE_P(t){return void 0===t?this.getTokens(cn.TYPE_P):this.getToken(cn.TYPE_P,t)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_transformTypeList}accept(t){return t.visitTransformTypeList?t.visitTransformTypeList(this):t.visitChildren(this)}},FR=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}definition(){return this.getRuleContext(0,$T)}get ruleIndex(){return cn.RULE_optionalDefinition}accept(t){return t.visitOptionalDefinition?t.visitOptionalDefinition(this):t.visitChildren(this)}},vR=class extends ga{constructor(t,e){super(t,e)}parameterName(){return this.getRuleContext(0,PR)}functionType(){return this.getRuleContext(0,dR)}get ruleIndex(){return cn.RULE_tableFunctionColumn}accept(t){return t.visitTableFunctionColumn?t.visitTableFunctionColumn(this):t.visitChildren(this)}},BR=class extends ga{constructor(t,e){super(t,e)}tableFunctionColumn(t){return void 0===t?this.getRuleContexts(vR):this.getRuleContext(t,vR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_tableFunctionColumnList}accept(t){return t.visitTableFunctionColumnList?t.visitTableFunctionColumnList(this):t.visitChildren(this)}},yR=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}commonFunctionOptionItem(t){return void 0===t?this.getRuleContexts(xR):this.getRuleContext(t,xR)}RESTRICT(){return this.getToken(cn.RESTRICT,0)}get ruleIndex(){return cn.RULE_alterFunctionStatement}accept(t){return t.visitAlterFunctionStatement?t.visitAlterFunctionStatement(this):t.visitChildren(this)}},fR=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypesList(){return this.getRuleContext(0,IR)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}get ruleIndex(){return cn.RULE_removeFunctionStatement}accept(t){return t.visitRemoveFunctionStatement?t.visitRemoveFunctionStatement(this):t.visitChildren(this)}},YR=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypesList(){return this.getRuleContext(0,pR)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_removeAggregateStatement}accept(t){return t.visitRemoveAggregateStatement?t.visitRemoveAggregateStatement(this):t.visitChildren(this)}},wR=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}operatorWithArgumentTypesList(){return this.getRuleContext(0,VR)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_removeOperatorStatement}accept(t){return t.visitRemoveOperatorStatement?t.visitRemoveOperatorStatement(this):t.visitChildren(this)}},bR=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(){return this.getToken(cn.COMMA,0)}NONE(){return this.getToken(cn.NONE,0)}get ruleIndex(){return cn.RULE_operatorArgumentTypes}accept(t){return t.visitOperatorArgumentTypes?t.visitOperatorArgumentTypes(this):t.visitChildren(this)}},WR=class extends ga{constructor(t,e){super(t,e)}allOperator(){return this.getRuleContext(0,VI)}columnId(t){return void 0===t?this.getRuleContexts($u):this.getRuleContext(t,$u)}DOT(t){return void 0===t?this.getTokens(cn.DOT):this.getToken(cn.DOT,t)}get ruleIndex(){return cn.RULE_anyOperator}accept(t){return t.visitAnyOperator?t.visitAnyOperator(this):t.visitChildren(this)}},VR=class extends ga{constructor(t,e){super(t,e)}operatorWithArgumentTypes(t){return void 0===t?this.getRuleContexts(XR):this.getRuleContext(t,XR)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_operatorWithArgumentTypesList}accept(t){return t.visitOperatorWithArgumentTypesList?t.visitOperatorWithArgumentTypesList(this):t.visitChildren(this)}},XR=class extends ga{constructor(t,e){super(t,e)}anyOperator(){return this.getRuleContext(0,WR)}operatorArgumentTypes(){return this.getRuleContext(0,bR)}get ruleIndex(){return cn.RULE_operatorWithArgumentTypes}accept(t){return t.visitOperatorWithArgumentTypes?t.visitOperatorWithArgumentTypes(this):t.visitChildren(this)}},KR=class extends ga{constructor(t,e){super(t,e)}DO(){return this.getToken(cn.DO,0)}doStatementOptionsList(){return this.getRuleContext(0,QR)}get ruleIndex(){return cn.RULE_doStatement}accept(t){return t.visitDoStatement?t.visitDoStatement(this):t.visitChildren(this)}},QR=class extends ga{constructor(t,e){super(t,e)}doStatementOptionItem(t){return void 0===t?this.getRuleContexts(JR):this.getRuleContext(t,JR)}get ruleIndex(){return cn.RULE_doStatementOptionsList}accept(t){return t.visitDoStatementOptionsList?t.visitDoStatementOptionsList(this):t.visitChildren(this)}},JR=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}nonReservedWordOrSconst(){return this.getRuleContext(0,fn)}get ruleIndex(){return cn.RULE_doStatementOptionItem}accept(t){return t.visitDoStatementOptionItem?t.visitDoStatementOptionItem(this):t.visitChildren(this)}},ZR=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}CAST(){return this.getToken(cn.CAST,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}AS(){return this.getToken(cn.AS,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}WITH(){return this.getToken(cn.WITH,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}castContext(){return this.getRuleContext(0,qR)}WITHOUT(){return this.getToken(cn.WITHOUT,0)}INOUT(){return this.getToken(cn.INOUT,0)}get ruleIndex(){return cn.RULE_createCastStatement}accept(t){return t.visitCreateCastStatement?t.visitCreateCastStatement(this):t.visitChildren(this)}},qR=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(cn.AS,0)}IMPLICIT_P(){return this.getToken(cn.IMPLICIT_P,0)}ASSIGNMENT(){return this.getToken(cn.ASSIGNMENT,0)}get ruleIndex(){return cn.RULE_castContext}accept(t){return t.visitCastContext?t.visitCastContext(this):t.visitChildren(this)}},jR=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}CAST(){return this.getToken(cn.CAST,0)}optionalIfExists(){return this.getRuleContext(0,zR)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}AS(){return this.getToken(cn.AS,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}optionalDropBehavior(){return this.getRuleContext(0,ah)}get ruleIndex(){return cn.RULE_dropCastStatement}accept(t){return t.visitDropCastStatement?t.visitDropCastStatement(this):t.visitChildren(this)}},zR=class extends ga{constructor(t,e){super(t,e)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_optionalIfExists}accept(t){return t.visitOptionalIfExists?t.visitOptionalIfExists(this):t.visitChildren(this)}},$R=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}optionalOrReplace(){return this.getRuleContext(0,lR)}TRANSFORM(){return this.getToken(cn.TRANSFORM,0)}FOR(){return this.getToken(cn.FOR,0)}typeName(){return this.getRuleContext(0,LO)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}name(){return this.getRuleContext(0,yu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}transformElementList(){return this.getRuleContext(0,tA)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_createTransformStatement}accept(t){return t.visitCreateTransformStatement?t.visitCreateTransformStatement(this):t.visitChildren(this)}},tA=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(cn.FROM,0)}SQL_P(t){return void 0===t?this.getTokens(cn.SQL_P):this.getToken(cn.SQL_P,t)}WITH(t){return void 0===t?this.getTokens(cn.WITH):this.getToken(cn.WITH,t)}FUNCTION(t){return void 0===t?this.getTokens(cn.FUNCTION):this.getToken(cn.FUNCTION,t)}functionWithArgumentTypes(t){return void 0===t?this.getRuleContexts(uR):this.getRuleContext(t,uR)}COMMA(){return this.getToken(cn.COMMA,0)}TO(){return this.getToken(cn.TO,0)}get ruleIndex(){return cn.RULE_transformElementList}accept(t){return t.visitTransformElementList?t.visitTransformElementList(this):t.visitChildren(this)}},eA=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}TRANSFORM(){return this.getToken(cn.TRANSFORM,0)}optionalIfExists(){return this.getRuleContext(0,zR)}FOR(){return this.getToken(cn.FOR,0)}typeName(){return this.getRuleContext(0,LO)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}name(){return this.getRuleContext(0,yu)}optionalDropBehavior(){return this.getRuleContext(0,ah)}get ruleIndex(){return cn.RULE_dropTransformStatement}accept(t){return t.visitDropTransformStatement?t.visitDropTransformStatement(this):t.visitChildren(this)}},sA=class extends ga{constructor(t,e){super(t,e)}REINDEX(){return this.getToken(cn.REINDEX,0)}reindexTargetType(){return this.getRuleContext(0,aA)}qualifiedName(){return this.getRuleContext(0,vu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}reindexOptionList(){return this.getRuleContext(0,rA)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}CONCURRENTLY(){return this.getToken(cn.CONCURRENTLY,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}SYSTEM_P(){return this.getToken(cn.SYSTEM_P,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_reindexStatement}accept(t){return t.visitReindexStatement?t.visitReindexStatement(this):t.visitChildren(this)}},aA=class extends ga{constructor(t,e){super(t,e)}TABLE(){return this.getToken(cn.TABLE,0)}SYSTEM_P(){return this.getToken(cn.SYSTEM_P,0)}get ruleIndex(){return cn.RULE_reindexTargetType}accept(t){return t.visitReindexTargetType?t.visitReindexTargetType(this):t.visitChildren(this)}},rA=class extends ga{constructor(t,e){super(t,e)}reindexOptionElement(t){return void 0===t?this.getRuleContexts(iA):this.getRuleContext(t,iA)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_reindexOptionList}accept(t){return t.visitReindexOptionList?t.visitReindexOptionList(this):t.visitChildren(this)}},iA=class extends ga{constructor(t,e){super(t,e)}VERBOSE(){return this.getToken(cn.VERBOSE,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}CONCURRENTLY(){return this.getToken(cn.CONCURRENTLY,0)}get ruleIndex(){return cn.RULE_reindexOptionElement}accept(t){return t.visitReindexOptionElement?t.visitReindexOptionElement(this):t.visitChildren(this)}},cA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}name(){return this.getRuleContext(0,yu)}SET(){return this.getToken(cn.SET,0)}relOptions(){return this.getRuleContext(0,nh)}RESET(){return this.getToken(cn.RESET,0)}get ruleIndex(){return cn.RULE_alterTablespaceStatement}accept(t){return t.visitAlterTablespaceStatement?t.visitAlterTablespaceStatement(this):t.visitChildren(this)}},nA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypes(){return this.getRuleContext(0,DR)}RENAME(){return this.getToken(cn.RENAME,0)}TO(){return this.getToken(cn.TO,0)}name(t){return void 0===t?this.getRuleContexts(yu):this.getRuleContext(t,yu)}COLLATION(){return this.getToken(cn.COLLATION,0)}anyName(){return this.getRuleContext(0,mo)}CONVERSION_P(){return this.getToken(cn.CONVERSION_P,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}constraintName(){return this.getRuleContext(0,Hu)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}optionalProcedural(){return this.getRuleContext(0,BE)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}CLASS(){return this.getToken(cn.CLASS,0)}USING(){return this.getToken(cn.USING,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}POLICY(){return this.getToken(cn.POLICY,0)}ON(){return this.getToken(cn.ON,0)}qualifiedName(){return this.getRuleContext(0,vu)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}SERVER(){return this.getToken(cn.SERVER,0)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}TABLE(){return this.getToken(cn.TABLE,0)}relationExpression(){return this.getRuleContext(0,eO)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceName(){return this.getRuleContext(0,Gu)}VIEW(){return this.getToken(cn.VIEW,0)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}optionalColumn(){return this.getRuleContext(0,hA)}RULE(){return this.getToken(cn.RULE,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}triggerName(){return this.getRuleContext(0,ku)}EVENT(){return this.getToken(cn.EVENT,0)}roleOrAliases(){return this.getRuleContext(0,RC)}roleName(t){return void 0===t?this.getRuleContexts(ju):this.getRuleContext(t,ju)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}PARSER(){return this.getToken(cn.PARSER,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}TEMPLATE(){return this.getToken(cn.TEMPLATE,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}ATTRIBUTE(){return this.getToken(cn.ATTRIBUTE,0)}optionalDropBehavior(){return this.getRuleContext(0,ah)}get ruleIndex(){return cn.RULE_renameStatement}accept(t){return t.visitRenameStatement?t.visitRenameStatement(this):t.visitChildren(this)}},hA=class extends ga{constructor(t,e){super(t,e)}COLUMN(){return this.getToken(cn.COLUMN,0)}get ruleIndex(){return cn.RULE_optionalColumn}accept(t){return t.visitOptionalColumn?t.visitOptionalColumn(this):t.visitChildren(this)}},EA=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}get ruleIndex(){return cn.RULE_optionalSetData}accept(t){return t.visitOptionalSetData?t.visitOptionalSetData(this):t.visitChildren(this)}},TA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}DEPENDS(){return this.getToken(cn.DEPENDS,0)}ON(t){return void 0===t?this.getTokens(cn.ON):this.getToken(cn.ON,t)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}name(){return this.getRuleContext(0,yu)}NO(){return this.getToken(cn.NO,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}triggerName(){return this.getRuleContext(0,ku)}qualifiedName(){return this.getRuleContext(0,vu)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}VIEW(){return this.getToken(cn.VIEW,0)}INDEX(){return this.getToken(cn.INDEX,0)}indexName(){return this.getRuleContext(0,gu)}get ruleIndex(){return cn.RULE_alterObjectDependsStatement}accept(t){return t.visitAlterObjectDependsStatement?t.visitAlterObjectDependsStatement(this):t.visitChildren(this)}},oA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypes(){return this.getRuleContext(0,DR)}SET(){return this.getToken(cn.SET,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}COLLATION(){return this.getToken(cn.COLLATION,0)}anyName(){return this.getRuleContext(0,mo)}CONVERSION_P(){return this.getToken(cn.CONVERSION_P,0)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}name(){return this.getRuleContext(0,yu)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}operatorWithArgumentTypes(){return this.getRuleContext(0,XR)}CLASS(){return this.getToken(cn.CLASS,0)}USING(){return this.getToken(cn.USING,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}TABLE(){return this.getToken(cn.TABLE,0)}relationExpression(){return this.getRuleContext(0,eO)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}PARSER(){return this.getToken(cn.PARSER,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}TEMPLATE(){return this.getToken(cn.TEMPLATE,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}sequenceName(){return this.getRuleContext(0,Gu)}VIEW(){return this.getToken(cn.VIEW,0)}qualifiedName(){return this.getRuleContext(0,vu)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}get ruleIndex(){return cn.RULE_alterObjectSchemaStatement}accept(t){return t.visitAlterObjectSchemaStatement?t.visitAlterObjectSchemaStatement(this):t.visitChildren(this)}},RA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}operatorWithArgumentTypes(){return this.getRuleContext(0,XR)}SET(){return this.getToken(cn.SET,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}operatorDefinitionList(){return this.getRuleContext(0,AA)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_alterOperatorStatement}accept(t){return t.visitAlterOperatorStatement?t.visitAlterOperatorStatement(this):t.visitChildren(this)}},AA=class extends ga{constructor(t,e){super(t,e)}operatorDefinitionElement(t){return void 0===t?this.getRuleContexts(SA):this.getRuleContext(t,SA)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_operatorDefinitionList}accept(t){return t.visitOperatorDefinitionList?t.visitOperatorDefinitionList(this):t.visitChildren(this)}},SA=class extends ga{constructor(t,e){super(t,e)}columnLabel(){return this.getRuleContext(0,aN)}EQUAL(){return this.getToken(cn.EQUAL,0)}NONE(){return this.getToken(cn.NONE,0)}operatorDefinitionArgument(){return this.getRuleContext(0,lA)}get ruleIndex(){return cn.RULE_operatorDefinitionElement}accept(t){return t.visitOperatorDefinitionElement?t.visitOperatorDefinitionElement(this):t.visitChildren(this)}},lA=class extends ga{constructor(t,e){super(t,e)}functionType(){return this.getRuleContext(0,dR)}reservedKeyword(){return this.getRuleContext(0,EN)}allOperatorQualifier(){return this.getRuleContext(0,QI)}numericOnly(){return this.getRuleContext(0,xE)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_operatorDefinitionArgument}accept(t){return t.visitOperatorDefinitionArgument?t.visitOperatorDefinitionArgument(this):t.visitChildren(this)}},OA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}anyName(){return this.getRuleContext(0,mo)}SET(){return this.getToken(cn.SET,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}operatorDefinitionList(){return this.getRuleContext(0,AA)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_alterTypeStatement}accept(t){return t.visitAlterTypeStatement?t.visitAlterTypeStatement(this):t.visitChildren(this)}},IA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}aggregateWithArgumentTypes(){return this.getRuleContext(0,DR)}OWNER(){return this.getToken(cn.OWNER,0)}TO(){return this.getToken(cn.TO,0)}roleName(){return this.getRuleContext(0,ju)}COLLATION(){return this.getToken(cn.COLLATION,0)}anyName(){return this.getRuleContext(0,mo)}CONVERSION_P(){return this.getToken(cn.CONVERSION_P,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}functionWithArgumentTypes(){return this.getRuleContext(0,uR)}optionalProcedural(){return this.getRuleContext(0,BE)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}name(){return this.getRuleContext(0,yu)}LARGE_P(){return this.getToken(cn.LARGE_P,0)}OBJECT_P(){return this.getToken(cn.OBJECT_P,0)}numericOnly(){return this.getRuleContext(0,xE)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}operatorWithArgumentTypes(){return this.getRuleContext(0,XR)}CLASS(){return this.getToken(cn.CLASS,0)}USING(){return this.getToken(cn.USING,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}schemaName(){return this.getRuleContext(0,Du)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}SERVER(){return this.getToken(cn.SERVER,0)}EVENT(){return this.getToken(cn.EVENT,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}get ruleIndex(){return cn.RULE_alterOwnerStatement}accept(t){return t.visitAlterOwnerStatement?t.visitAlterOwnerStatement(this):t.visitChildren(this)}},uA=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}name(){return this.getRuleContext(0,yu)}optionalPublicationForTables(){return this.getRuleContext(0,NA)}optionalDefinition(){return this.getRuleContext(0,FR)}get ruleIndex(){return cn.RULE_createPublicationStatement}accept(t){return t.visitCreatePublicationStatement?t.visitCreatePublicationStatement(this):t.visitChildren(this)}},NA=class extends ga{constructor(t,e){super(t,e)}publicationForTables(){return this.getRuleContext(0,LA)}get ruleIndex(){return cn.RULE_optionalPublicationForTables}accept(t){return t.visitOptionalPublicationForTables?t.visitOptionalPublicationForTables(this):t.visitChildren(this)}},LA=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}TABLE(){return this.getToken(cn.TABLE,0)}relationExpressionList(){return this.getRuleContext(0,sO)}ALL(){return this.getToken(cn.ALL,0)}TABLES(){return this.getToken(cn.TABLES,0)}get ruleIndex(){return cn.RULE_publicationForTables}accept(t){return t.visitPublicationForTables?t.visitPublicationForTables(this):t.visitChildren(this)}},CA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}name(){return this.getRuleContext(0,yu)}SET(){return this.getToken(cn.SET,0)}definition(){return this.getRuleContext(0,$T)}ADD_P(){return this.getToken(cn.ADD_P,0)}TABLE(){return this.getToken(cn.TABLE,0)}relationExpressionList(){return this.getRuleContext(0,sO)}DROP(){return this.getToken(cn.DROP,0)}get ruleIndex(){return cn.RULE_alterPublicationStatement}accept(t){return t.visitAlterPublicationStatement?t.visitAlterPublicationStatement(this):t.visitChildren(this)}},_A=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}name(){return this.getRuleContext(0,yu)}CONNECTION(){return this.getToken(cn.CONNECTION,0)}sconst(){return this.getRuleContext(0,Qu)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}publicationNameList(){return this.getRuleContext(0,PA)}optionalDefinition(){return this.getRuleContext(0,FR)}get ruleIndex(){return cn.RULE_createSubscriptionStatement}accept(t){return t.visitCreateSubscriptionStatement?t.visitCreateSubscriptionStatement(this):t.visitChildren(this)}},PA=class extends ga{constructor(t,e){super(t,e)}publicationNameItem(t){return void 0===t?this.getRuleContexts(MA):this.getRuleContext(t,MA)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_publicationNameList}accept(t){return t.visitPublicationNameList?t.visitPublicationNameList(this):t.visitChildren(this)}},MA=class extends ga{constructor(t,e){super(t,e)}columnLabel(){return this.getRuleContext(0,aN)}get ruleIndex(){return cn.RULE_publicationNameItem}accept(t){return t.visitPublicationNameItem?t.visitPublicationNameItem(this):t.visitChildren(this)}},dA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}name(){return this.getRuleContext(0,yu)}SET(){return this.getToken(cn.SET,0)}definition(){return this.getRuleContext(0,$T)}CONNECTION(){return this.getToken(cn.CONNECTION,0)}sconst(){return this.getRuleContext(0,Qu)}REFRESH(){return this.getToken(cn.REFRESH,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}optionalDefinition(){return this.getRuleContext(0,FR)}publicationNameList(){return this.getRuleContext(0,PA)}ENABLE_P(){return this.getToken(cn.ENABLE_P,0)}DISABLE_P(){return this.getToken(cn.DISABLE_P,0)}get ruleIndex(){return cn.RULE_alterSubscriptionStatement}accept(t){return t.visitAlterSubscriptionStatement?t.visitAlterSubscriptionStatement(this):t.visitChildren(this)}},UA=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}name(){return this.getRuleContext(0,yu)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_dropSubscriptionStatement}accept(t){return t.visitDropSubscriptionStatement?t.visitDropSubscriptionStatement(this):t.visitChildren(this)}},mA=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}optionalOrReplace(){return this.getRuleContext(0,lR)}RULE(){return this.getToken(cn.RULE,0)}name(){return this.getRuleContext(0,yu)}AS(){return this.getToken(cn.AS,0)}ON(){return this.getToken(cn.ON,0)}event(){return this.getRuleContext(0,kA)}TO(){return this.getToken(cn.TO,0)}qualifiedName(){return this.getRuleContext(0,vu)}whereClause(){return this.getRuleContext(0,EO)}DO(){return this.getToken(cn.DO,0)}optionalInstead(){return this.getRuleContext(0,HA)}ruleActionList(){return this.getRuleContext(0,DA)}get ruleIndex(){return cn.RULE_ruleStatement}accept(t){return t.visitRuleStatement?t.visitRuleStatement(this):t.visitChildren(this)}},DA=class extends ga{constructor(t,e){super(t,e)}NOTHING(){return this.getToken(cn.NOTHING,0)}ruleActionStatement(){return this.getRuleContext(0,gA)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}ruleActionMulti(){return this.getRuleContext(0,pA)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_ruleActionList}accept(t){return t.visitRuleActionList?t.visitRuleActionList(this):t.visitChildren(this)}},pA=class extends ga{constructor(t,e){super(t,e)}ruleActionStatementOrEmpty(t){return void 0===t?this.getRuleContexts(xA):this.getRuleContext(t,xA)}SEMI(t){return void 0===t?this.getTokens(cn.SEMI):this.getToken(cn.SEMI,t)}get ruleIndex(){return cn.RULE_ruleActionMulti}accept(t){return t.visitRuleActionMulti?t.visitRuleActionMulti(this):t.visitChildren(this)}},gA=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,il)}insertStatement(){return this.getRuleContext(0,kS)}updateStatement(){return this.getRuleContext(0,zS)}deleteStatement(){return this.getRuleContext(0,XS)}notifyStatement(){return this.getRuleContext(0,GA)}get ruleIndex(){return cn.RULE_ruleActionStatement}accept(t){return t.visitRuleActionStatement?t.visitRuleActionStatement(this):t.visitChildren(this)}},xA=class extends ga{constructor(t,e){super(t,e)}ruleActionStatement(){return this.getRuleContext(0,gA)}get ruleIndex(){return cn.RULE_ruleActionStatementOrEmpty}accept(t){return t.visitRuleActionStatementOrEmpty?t.visitRuleActionStatementOrEmpty(this):t.visitChildren(this)}},kA=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(cn.SELECT,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}INSERT(){return this.getToken(cn.INSERT,0)}get ruleIndex(){return cn.RULE_event}accept(t){return t.visitEvent?t.visitEvent(this):t.visitChildren(this)}},HA=class extends ga{constructor(t,e){super(t,e)}INSTEAD(){return this.getToken(cn.INSTEAD,0)}ALSO(){return this.getToken(cn.ALSO,0)}get ruleIndex(){return cn.RULE_optionalInstead}accept(t){return t.visitOptionalInstead?t.visitOptionalInstead(this):t.visitChildren(this)}},GA=class extends ga{constructor(t,e){super(t,e)}NOTIFY(){return this.getToken(cn.NOTIFY,0)}columnId(){return this.getRuleContext(0,$u)}notifyPayload(){return this.getRuleContext(0,FA)}get ruleIndex(){return cn.RULE_notifyStatement}accept(t){return t.visitNotifyStatement?t.visitNotifyStatement(this):t.visitChildren(this)}},FA=class extends ga{constructor(t,e){super(t,e)}COMMA(){return this.getToken(cn.COMMA,0)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_notifyPayload}accept(t){return t.visitNotifyPayload?t.visitNotifyPayload(this):t.visitChildren(this)}},vA=class extends ga{constructor(t,e){super(t,e)}LISTEN(){return this.getToken(cn.LISTEN,0)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_listenStatement}accept(t){return t.visitListenStatement?t.visitListenStatement(this):t.visitChildren(this)}},BA=class extends ga{constructor(t,e){super(t,e)}UNLISTEN(){return this.getToken(cn.UNLISTEN,0)}columnId(){return this.getRuleContext(0,$u)}STAR(){return this.getToken(cn.STAR,0)}get ruleIndex(){return cn.RULE_unlistenStatement}accept(t){return t.visitUnlistenStatement?t.visitUnlistenStatement(this):t.visitChildren(this)}},yA=class extends ga{constructor(t,e){super(t,e)}ABORT_P(){return this.getToken(cn.ABORT_P,0)}optionalTransaction(){return this.getRuleContext(0,fA)}optionalTransactionChain(){return this.getRuleContext(0,bA)}BEGIN_P(){return this.getToken(cn.BEGIN_P,0)}transactionModeList(){return this.getRuleContext(0,wA)}START(){return this.getToken(cn.START,0)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}COMMIT(){return this.getToken(cn.COMMIT,0)}END_P(){return this.getToken(cn.END_P,0)}ROLLBACK(){return this.getToken(cn.ROLLBACK,0)}SAVEPOINT(){return this.getToken(cn.SAVEPOINT,0)}columnId(){return this.getRuleContext(0,$u)}RELEASE(){return this.getToken(cn.RELEASE,0)}TO(){return this.getToken(cn.TO,0)}PREPARE(){return this.getToken(cn.PREPARE,0)}sconst(){return this.getRuleContext(0,Qu)}PREPARED(){return this.getToken(cn.PREPARED,0)}get ruleIndex(){return cn.RULE_transactionStatement}accept(t){return t.visitTransactionStatement?t.visitTransactionStatement(this):t.visitChildren(this)}},fA=class extends ga{constructor(t,e){super(t,e)}WORK(){return this.getToken(cn.WORK,0)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}get ruleIndex(){return cn.RULE_optionalTransaction}accept(t){return t.visitOptionalTransaction?t.visitOptionalTransaction(this):t.visitChildren(this)}},YA=class extends ga{constructor(t,e){super(t,e)}ISOLATION(){return this.getToken(cn.ISOLATION,0)}LEVEL(){return this.getToken(cn.LEVEL,0)}isoLevel(){return this.getRuleContext(0,Fn)}READ(){return this.getToken(cn.READ,0)}ONLY(){return this.getToken(cn.ONLY,0)}WRITE(){return this.getToken(cn.WRITE,0)}DEFERRABLE(){return this.getToken(cn.DEFERRABLE,0)}NOT(){return this.getToken(cn.NOT,0)}get ruleIndex(){return cn.RULE_transactionModeItem}accept(t){return t.visitTransactionModeItem?t.visitTransactionModeItem(this):t.visitChildren(this)}},wA=class extends ga{constructor(t,e){super(t,e)}transactionModeItem(t){return void 0===t?this.getRuleContexts(YA):this.getRuleContext(t,YA)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_transactionModeList}accept(t){return t.visitTransactionModeList?t.visitTransactionModeList(this):t.visitChildren(this)}},bA=class extends ga{constructor(t,e){super(t,e)}AND(){return this.getToken(cn.AND,0)}CHAIN(){return this.getToken(cn.CHAIN,0)}NO(){return this.getToken(cn.NO,0)}get ruleIndex(){return cn.RULE_optionalTransactionChain}accept(t){return t.visitOptionalTransactionChain?t.visitOptionalTransactionChain(this):t.visitChildren(this)}},WA=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}temporaryOption(){return this.getRuleContext(0,gh)}AS(){return this.getToken(cn.AS,0)}selectStatement(){return this.getRuleContext(0,il)}optionalCheckOption(){return this.getRuleContext(0,VA)}VIEW(){return this.getToken(cn.VIEW,0)}qualifiedName(){return this.getRuleContext(0,vu)}columnListWithParentheses(){return this.getRuleContext(0,Zh)}optionalRelOptions(){return this.getRuleContext(0,hh)}RECURSIVE(){return this.getToken(cn.RECURSIVE,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}columnList(){return this.getRuleContext(0,qh)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}OR(){return this.getToken(cn.OR,0)}REPLACE(){return this.getToken(cn.REPLACE,0)}get ruleIndex(){return cn.RULE_viewStatement}accept(t){return t.visitViewStatement?t.visitViewStatement(this):t.visitChildren(this)}},VA=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}CHECK(){return this.getToken(cn.CHECK,0)}OPTION(){return this.getToken(cn.OPTION,0)}CASCADED(){return this.getToken(cn.CASCADED,0)}LOCAL(){return this.getToken(cn.LOCAL,0)}get ruleIndex(){return cn.RULE_optionalCheckOption}accept(t){return t.visitOptionalCheckOption?t.visitOptionalCheckOption(this):t.visitChildren(this)}},XA=class extends ga{constructor(t,e){super(t,e)}LOAD(){return this.getToken(cn.LOAD,0)}fileName(){return this.getRuleContext(0,Yu)}get ruleIndex(){return cn.RULE_loadStatement}accept(t){return t.visitLoadStatement?t.visitLoadStatement(this):t.visitChildren(this)}},KA=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}name(){return this.getRuleContext(0,yu)}optionalWith(){return this.getRuleContext(0,An)}createDatabaseOptionList(){return this.getRuleContext(0,QA)}get ruleIndex(){return cn.RULE_createDatabaseStatement}accept(t){return t.visitCreateDatabaseStatement?t.visitCreateDatabaseStatement(this):t.visitChildren(this)}},QA=class extends ga{constructor(t,e){super(t,e)}createDatabaseOptionItem(t){return void 0===t?this.getRuleContexts(JA):this.getRuleContext(t,JA)}get ruleIndex(){return cn.RULE_createDatabaseOptionList}accept(t){return t.visitCreateDatabaseOptionList?t.visitCreateDatabaseOptionList(this):t.visitChildren(this)}},JA=class extends ga{constructor(t,e){super(t,e)}createDatabaseOptionName(){return this.getRuleContext(0,ZA)}signedIconst(){return this.getRuleContext(0,qu)}booleanOrString(){return this.getRuleContext(0,vn)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}EQUAL(){return this.getToken(cn.EQUAL,0)}get ruleIndex(){return cn.RULE_createDatabaseOptionItem}accept(t){return t.visitCreateDatabaseOptionItem?t.visitCreateDatabaseOptionItem(this):t.visitChildren(this)}},ZA=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}CONNECTION(){return this.getToken(cn.CONNECTION,0)}LIMIT(){return this.getToken(cn.LIMIT,0)}ENCODING(){return this.getToken(cn.ENCODING,0)}LOCATION(){return this.getToken(cn.LOCATION,0)}OWNER(){return this.getToken(cn.OWNER,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}TEMPLATE(){return this.getToken(cn.TEMPLATE,0)}get ruleIndex(){return cn.RULE_createDatabaseOptionName}accept(t){return t.visitCreateDatabaseOptionName?t.visitCreateDatabaseOptionName(this):t.visitChildren(this)}},qA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}WITH(){return this.getToken(cn.WITH,0)}createDatabaseOptionList(){return this.getRuleContext(0,QA)}SET(){return this.getToken(cn.SET,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_alterDatabaseStatement}accept(t){return t.visitAlterDatabaseStatement?t.visitAlterDatabaseStatement(this):t.visitChildren(this)}},jA=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}setResetClause(){return this.getRuleContext(0,Wn)}get ruleIndex(){return cn.RULE_alterDatabaseSetStatement}accept(t){return t.visitAlterDatabaseSetStatement?t.visitAlterDatabaseSetStatement(this):t.visitChildren(this)}},zA=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(cn.DROP,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}databaseName(){return this.getRuleContext(0,Uu)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}optionalWith(){return this.getRuleContext(0,An)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}FORCE(t){return void 0===t?this.getTokens(cn.FORCE):this.getToken(cn.FORCE,t)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_dropDatabaseStatement}accept(t){return t.visitDropDatabaseStatement?t.visitDropDatabaseStatement(this):t.visitChildren(this)}},$A=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}COLLATION(){return this.getToken(cn.COLLATION,0)}anyName(){return this.getRuleContext(0,mo)}REFRESH(){return this.getToken(cn.REFRESH,0)}VERSION_P(){return this.getToken(cn.VERSION_P,0)}get ruleIndex(){return cn.RULE_alterCollationStatement}accept(t){return t.visitAlterCollationStatement?t.visitAlterCollationStatement(this):t.visitChildren(this)}},tS=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}SYSTEM_P(){return this.getToken(cn.SYSTEM_P,0)}genericSetClause(){return this.getRuleContext(0,gn)}SET(){return this.getToken(cn.SET,0)}RESET(){return this.getToken(cn.RESET,0)}get ruleIndex(){return cn.RULE_alterSystemStatement}accept(t){return t.visitAlterSystemStatement?t.visitAlterSystemStatement(this):t.visitChildren(this)}},eS=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}anyName(){return this.getRuleContext(0,mo)}optionalAs(){return this.getRuleContext(0,rS)}typeName(){return this.getRuleContext(0,LO)}columnQualifierList(){return this.getRuleContext(0,fh)}get ruleIndex(){return cn.RULE_createDomainStatement}accept(t){return t.visitCreateDomainStatement?t.visitCreateDomainStatement(this):t.visitChildren(this)}},sS=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}anyName(){return this.getRuleContext(0,mo)}alterDomainCommand(){return this.getRuleContext(0,aS)}get ruleIndex(){return cn.RULE_alterDomainStatement}accept(t){return t.visitAlterDomainStatement?t.visitAlterDomainStatement(this):t.visitChildren(this)}},aS=class extends ga{constructor(t,e){super(t,e)}alterColumnDefault(){return this.getRuleContext(0,sh)}DROP(){return this.getToken(cn.DROP,0)}NOT(){return this.getToken(cn.NOT,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}SET(){return this.getToken(cn.SET,0)}ADD_P(){return this.getToken(cn.ADD_P,0)}tableConstraint(){return this.getRuleContext(0,Qh)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}constraintName(){return this.getRuleContext(0,Hu)}optionalDropBehavior(){return this.getRuleContext(0,ah)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}VALIDATE(){return this.getToken(cn.VALIDATE,0)}get ruleIndex(){return cn.RULE_alterDomainCommand}accept(t){return t.visitAlterDomainCommand?t.visitAlterDomainCommand(this):t.visitChildren(this)}},rS=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(cn.AS,0)}get ruleIndex(){return cn.RULE_optionalAs}accept(t){return t.visitOptionalAs?t.visitOptionalAs(this):t.visitChildren(this)}},iS=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(cn.ALTER,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}anyName(){return this.getRuleContext(0,mo)}definition(){return this.getRuleContext(0,$T)}get ruleIndex(){return cn.RULE_altertsDictionaryStatement}accept(t){return t.visitAltertsDictionaryStatement?t.visitAltertsDictionaryStatement(this):t.visitChildren(this)}},cS=class extends ga{constructor(t,e){super(t,e)}ALTER(t){return void 0===t?this.getTokens(cn.ALTER):this.getToken(cn.ALTER,t)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}anyName(t){return void 0===t?this.getRuleContexts(mo):this.getRuleContext(t,mo)}ADD_P(){return this.getToken(cn.ADD_P,0)}MAPPING(){return this.getToken(cn.MAPPING,0)}FOR(){return this.getToken(cn.FOR,0)}nameList(){return this.getRuleContext(0,Bu)}WITH(){return this.getToken(cn.WITH,0)}anyNameList(){return this.getRuleContext(0,Uo)}REPLACE(){return this.getToken(cn.REPLACE,0)}DROP(){return this.getToken(cn.DROP,0)}IF_P(){return this.getToken(cn.IF_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_altertsConfigurationStatement}accept(t){return t.visitAltertsConfigurationStatement?t.visitAltertsConfigurationStatement(this):t.visitChildren(this)}},nS=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(cn.CREATE,0)}CONVERSION_P(){return this.getToken(cn.CONVERSION_P,0)}anyName(t){return void 0===t?this.getRuleContexts(mo):this.getRuleContext(t,mo)}FOR(){return this.getToken(cn.FOR,0)}sconst(t){return void 0===t?this.getRuleContexts(Qu):this.getRuleContext(t,Qu)}TO(){return this.getToken(cn.TO,0)}FROM(){return this.getToken(cn.FROM,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_createConversionStatement}accept(t){return t.visitCreateConversionStatement?t.visitCreateConversionStatement(this):t.visitChildren(this)}},hS=class extends ga{constructor(t,e){super(t,e)}CLUSTER(){return this.getToken(cn.CLUSTER,0)}optionalVerbose(){return this.getRuleContext(0,IS)}qualifiedName(){return this.getRuleContext(0,vu)}clusterIndexSpecification(){return this.getRuleContext(0,ES)}name(){return this.getRuleContext(0,yu)}ON(){return this.getToken(cn.ON,0)}get ruleIndex(){return cn.RULE_clusterStatement}accept(t){return t.visitClusterStatement?t.visitClusterStatement(this):t.visitChildren(this)}},ES=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_clusterIndexSpecification}accept(t){return t.visitClusterIndexSpecification?t.visitClusterIndexSpecification(this):t.visitChildren(this)}},TS=class extends ga{constructor(t,e){super(t,e)}VACUUM(){return this.getToken(cn.VACUUM,0)}optionalVerbose(){return this.getRuleContext(0,IS)}optionalVacuumRelationList(){return this.getRuleContext(0,LS)}FULL(){return this.getToken(cn.FULL,0)}FREEZE(){return this.getToken(cn.FREEZE,0)}analyzeKeyword(){return this.getRuleContext(0,AS)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}vacuumAnalyzeOptionList(){return this.getRuleContext(0,RS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_vacuumStatement}accept(t){return t.visitVacuumStatement?t.visitVacuumStatement(this):t.visitChildren(this)}},oS=class extends ga{constructor(t,e){super(t,e)}analyzeKeyword(){return this.getRuleContext(0,AS)}optionalVerbose(){return this.getRuleContext(0,IS)}optionalVacuumRelationList(){return this.getRuleContext(0,LS)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}vacuumAnalyzeOptionList(){return this.getRuleContext(0,RS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_analyzeStatement}accept(t){return t.visitAnalyzeStatement?t.visitAnalyzeStatement(this):t.visitChildren(this)}},RS=class extends ga{constructor(t,e){super(t,e)}vacuumAnalyzeOptionElement(t){return void 0===t?this.getRuleContexts(SS):this.getRuleContext(t,SS)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_vacuumAnalyzeOptionList}accept(t){return t.visitVacuumAnalyzeOptionList?t.visitVacuumAnalyzeOptionList(this):t.visitChildren(this)}},AS=class extends ga{constructor(t,e){super(t,e)}ANALYZE(){return this.getToken(cn.ANALYZE,0)}ANALYSE(){return this.getToken(cn.ANALYSE,0)}get ruleIndex(){return cn.RULE_analyzeKeyword}accept(t){return t.visitAnalyzeKeyword?t.visitAnalyzeKeyword(this):t.visitChildren(this)}},SS=class extends ga{constructor(t,e){super(t,e)}vacuumAnalyzeOptionName(){return this.getRuleContext(0,lS)}vacuumAnalyzeOptionArgument(){return this.getRuleContext(0,OS)}get ruleIndex(){return cn.RULE_vacuumAnalyzeOptionElement}accept(t){return t.visitVacuumAnalyzeOptionElement?t.visitVacuumAnalyzeOptionElement(this):t.visitChildren(this)}},lS=class extends ga{constructor(t,e){super(t,e)}nonReservedWord(){return this.getRuleContext(0,sN)}analyzeKeyword(){return this.getRuleContext(0,AS)}get ruleIndex(){return cn.RULE_vacuumAnalyzeOptionName}accept(t){return t.visitVacuumAnalyzeOptionName?t.visitVacuumAnalyzeOptionName(this):t.visitChildren(this)}},OS=class extends ga{constructor(t,e){super(t,e)}booleanOrString(){return this.getRuleContext(0,vn)}numericOnly(){return this.getRuleContext(0,xE)}get ruleIndex(){return cn.RULE_vacuumAnalyzeOptionArgument}accept(t){return t.visitVacuumAnalyzeOptionArgument?t.visitVacuumAnalyzeOptionArgument(this):t.visitChildren(this)}},IS=class extends ga{constructor(t,e){super(t,e)}VERBOSE(){return this.getToken(cn.VERBOSE,0)}get ruleIndex(){return cn.RULE_optionalVerbose}accept(t){return t.visitOptionalVerbose?t.visitOptionalVerbose(this):t.visitChildren(this)}},uS=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}nameList(){return this.getRuleContext(0,Bu)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalNameList}accept(t){return t.visitOptionalNameList?t.visitOptionalNameList(this):t.visitChildren(this)}},NS=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}optionalNameList(){return this.getRuleContext(0,uS)}get ruleIndex(){return cn.RULE_vacuumRelation}accept(t){return t.visitVacuumRelation?t.visitVacuumRelation(this):t.visitChildren(this)}},LS=class extends ga{constructor(t,e){super(t,e)}vacuumRelation(t){return void 0===t?this.getRuleContexts(NS):this.getRuleContext(t,NS)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_optionalVacuumRelationList}accept(t){return t.visitOptionalVacuumRelationList?t.visitOptionalVacuumRelationList(this):t.visitChildren(this)}},CS=class extends ga{constructor(t,e){super(t,e)}EXPLAIN(){return this.getToken(cn.EXPLAIN,0)}explainableStatement(){return this.getRuleContext(0,_S)}analyzeKeyword(){return this.getRuleContext(0,AS)}optionalVerbose(){return this.getRuleContext(0,IS)}VERBOSE(){return this.getToken(cn.VERBOSE,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}explainOptionElement(t){return void 0===t?this.getRuleContexts(PS):this.getRuleContext(t,PS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_explainStatement}accept(t){return t.visitExplainStatement?t.visitExplainStatement(this):t.visitChildren(this)}},_S=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,il)}insertStatement(){return this.getRuleContext(0,kS)}updateStatement(){return this.getRuleContext(0,zS)}deleteStatement(){return this.getRuleContext(0,XS)}declareCursorStatement(){return this.getRuleContext(0,sl)}createAsStatement(){return this.getRuleContext(0,LE)}createMaterializedViewStatement(){return this.getRuleContext(0,PE)}refreshMaterializedViewStatement(){return this.getRuleContext(0,dE)}executeStatement(){return this.getRuleContext(0,pS)}get ruleIndex(){return cn.RULE_explainableStatement}accept(t){return t.visitExplainableStatement?t.visitExplainableStatement(this):t.visitChildren(this)}},PS=class extends ga{constructor(t,e){super(t,e)}explainOptionName(){return this.getRuleContext(0,MS)}explainOptionArgument(){return this.getRuleContext(0,dS)}get ruleIndex(){return cn.RULE_explainOptionElement}accept(t){return t.visitExplainOptionElement?t.visitExplainOptionElement(this):t.visitChildren(this)}},MS=class extends ga{constructor(t,e){super(t,e)}nonReservedWord(){return this.getRuleContext(0,sN)}analyzeKeyword(){return this.getRuleContext(0,AS)}get ruleIndex(){return cn.RULE_explainOptionName}accept(t){return t.visitExplainOptionName?t.visitExplainOptionName(this):t.visitChildren(this)}},dS=class extends ga{constructor(t,e){super(t,e)}booleanOrString(){return this.getRuleContext(0,vn)}numericOnly(){return this.getRuleContext(0,xE)}get ruleIndex(){return cn.RULE_explainOptionArgument}accept(t){return t.visitExplainOptionArgument?t.visitExplainOptionArgument(this):t.visitChildren(this)}},US=class extends ga{constructor(t,e){super(t,e)}PREPARE(){return this.getToken(cn.PREPARE,0)}name(){return this.getRuleContext(0,yu)}prepareTypeClause(){return this.getRuleContext(0,mS)}AS(){return this.getToken(cn.AS,0)}preparableStatement(){return this.getRuleContext(0,DS)}get ruleIndex(){return cn.RULE_prepareStatement}accept(t){return t.visitPrepareStatement?t.visitPrepareStatement(this):t.visitChildren(this)}},mS=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeList(){return this.getRuleContext(0,zI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_prepareTypeClause}accept(t){return t.visitPrepareTypeClause?t.visitPrepareTypeClause(this):t.visitChildren(this)}},DS=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,il)}insertStatement(){return this.getRuleContext(0,kS)}updateStatement(){return this.getRuleContext(0,zS)}deleteStatement(){return this.getRuleContext(0,XS)}get ruleIndex(){return cn.RULE_preparableStatement}accept(t){return t.visitPreparableStatement?t.visitPreparableStatement(this):t.visitChildren(this)}},pS=class extends ga{constructor(t,e){super(t,e)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}name(){return this.getRuleContext(0,yu)}executeParameterClause(){return this.getRuleContext(0,gS)}CREATE(){return this.getToken(cn.CREATE,0)}temporaryOption(){return this.getRuleContext(0,gh)}TABLE(){return this.getToken(cn.TABLE,0)}createAsTarget(){return this.getRuleContext(0,CE)}AS(){return this.getToken(cn.AS,0)}withData(){return this.getRuleContext(0,_E)}IF_P(){return this.getToken(cn.IF_P,0)}NOT(){return this.getToken(cn.NOT,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}get ruleIndex(){return cn.RULE_executeStatement}accept(t){return t.visitExecuteStatement?t.visitExecuteStatement(this):t.visitChildren(this)}},gS=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_executeParameterClause}accept(t){return t.visitExecuteParameterClause?t.visitExecuteParameterClause(this):t.visitChildren(this)}},xS=class extends ga{constructor(t,e){super(t,e)}DEALLOCATE(){return this.getToken(cn.DEALLOCATE,0)}name(){return this.getRuleContext(0,yu)}PREPARE(){return this.getToken(cn.PREPARE,0)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_deallocateStatement}accept(t){return t.visitDeallocateStatement?t.visitDeallocateStatement(this):t.visitChildren(this)}},kS=class extends ga{constructor(t,e){super(t,e)}INSERT(){return this.getToken(cn.INSERT,0)}INTO(){return this.getToken(cn.INTO,0)}insertTarget(){return this.getRuleContext(0,HS)}insertRest(){return this.getRuleContext(0,GS)}optionalOnConflict(){return this.getRuleContext(0,yS)}returningClause(){return this.getRuleContext(0,YS)}withClause(){return this.getRuleContext(0,Rl)}get ruleIndex(){return cn.RULE_insertStatement}accept(t){return t.visitInsertStatement?t.visitInsertStatement(this):t.visitChildren(this)}},HS=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}AS(){return this.getToken(cn.AS,0)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_insertTarget}accept(t){return t.visitInsertTarget?t.visitInsertTarget(this):t.visitChildren(this)}},GS=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,il)}OVERRIDING(){return this.getToken(cn.OVERRIDING,0)}overrideKind(){return this.getRuleContext(0,FS)}VALUE_P(){return this.getToken(cn.VALUE_P,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}insertColumnList(){return this.getRuleContext(0,vS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}VALUES(){return this.getToken(cn.VALUES,0)}get ruleIndex(){return cn.RULE_insertRest}accept(t){return t.visitInsertRest?t.visitInsertRest(this):t.visitChildren(this)}},FS=class extends ga{constructor(t,e){super(t,e)}USER(){return this.getToken(cn.USER,0)}SYSTEM_P(){return this.getToken(cn.SYSTEM_P,0)}get ruleIndex(){return cn.RULE_overrideKind}accept(t){return t.visitOverrideKind?t.visitOverrideKind(this):t.visitChildren(this)}},vS=class extends ga{constructor(t,e){super(t,e)}insertColumnItem(t){return void 0===t?this.getRuleContexts(BS):this.getRuleContext(t,BS)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_insertColumnList}accept(t){return t.visitInsertColumnList?t.visitInsertColumnList(this):t.visitChildren(this)}},BS=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}optionalIndirection(){return this.getRuleContext(0,Nu)}get ruleIndex(){return cn.RULE_insertColumnItem}accept(t){return t.visitInsertColumnItem?t.visitInsertColumnItem(this):t.visitChildren(this)}},yS=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(cn.ON,0)}CONFLICT(){return this.getToken(cn.CONFLICT,0)}optionalConflictExpr(){return this.getRuleContext(0,fS)}DO(){return this.getToken(cn.DO,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}SET(){return this.getToken(cn.SET,0)}setClauseList(){return this.getRuleContext(0,$S)}whereClause(){return this.getRuleContext(0,EO)}NOTHING(){return this.getToken(cn.NOTHING,0)}get ruleIndex(){return cn.RULE_optionalOnConflict}accept(t){return t.visitOptionalOnConflict?t.visitOptionalOnConflict(this):t.visitChildren(this)}},fS=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}indexParameters(){return this.getRuleContext(0,cR)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}whereClause(){return this.getRuleContext(0,EO)}ON(){return this.getToken(cn.ON,0)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}constraintName(){return this.getRuleContext(0,Hu)}get ruleIndex(){return cn.RULE_optionalConflictExpr}accept(t){return t.visitOptionalConflictExpr?t.visitOptionalConflictExpr(this):t.visitChildren(this)}},YS=class extends ga{constructor(t,e){super(t,e)}RETURNING(){return this.getToken(cn.RETURNING,0)}targetList(){return this.getRuleContext(0,Cu)}get ruleIndex(){return cn.RULE_returningClause}accept(t){return t.visitReturningClause?t.visitReturningClause(this):t.visitChildren(this)}},wS=class extends ga{constructor(t,e){super(t,e)}MERGE(){return this.getToken(cn.MERGE,0)}qualifiedName(t){return void 0===t?this.getRuleContexts(vu):this.getRuleContext(t,vu)}USING(){return this.getToken(cn.USING,0)}ON(){return this.getToken(cn.ON,0)}expression1(){return this.getRuleContext(0,wO)}selectWithParenthesis(){return this.getRuleContext(0,cl)}mergeInsertClause(){return this.getRuleContext(0,bS)}mergeUpdateClause(){return this.getRuleContext(0,WS)}INTO(){return this.getToken(cn.INTO,0)}aliasClause(t){return void 0===t?this.getRuleContexts(Jl):this.getRuleContext(t,Jl)}mergeDeleteClause(){return this.getRuleContext(0,VS)}get ruleIndex(){return cn.RULE_mergeStatement}accept(t){return t.visitMergeStatement?t.visitMergeStatement(this):t.visitChildren(this)}},bS=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}NOT(){return this.getToken(cn.NOT,0)}MATCHED(){return this.getToken(cn.MATCHED,0)}INSERT(){return this.getToken(cn.INSERT,0)}valuesClause(){return this.getRuleContext(0,Wl)}AND(){return this.getToken(cn.AND,0)}expression1(){return this.getRuleContext(0,wO)}THEN(){return this.getToken(cn.THEN,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}insertColumnList(){return this.getRuleContext(0,vS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_mergeInsertClause}accept(t){return t.visitMergeInsertClause?t.visitMergeInsertClause(this):t.visitChildren(this)}},WS=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}MATCHED(){return this.getToken(cn.MATCHED,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}SET(){return this.getToken(cn.SET,0)}setClauseList(){return this.getRuleContext(0,$S)}AND(){return this.getToken(cn.AND,0)}expression1(){return this.getRuleContext(0,wO)}THEN(){return this.getToken(cn.THEN,0)}get ruleIndex(){return cn.RULE_mergeUpdateClause}accept(t){return t.visitMergeUpdateClause?t.visitMergeUpdateClause(this):t.visitChildren(this)}},VS=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}MATCHED(){return this.getToken(cn.MATCHED,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}THEN(){return this.getToken(cn.THEN,0)}get ruleIndex(){return cn.RULE_mergeDeleteClause}accept(t){return t.visitMergeDeleteClause?t.visitMergeDeleteClause(this):t.visitChildren(this)}},XS=class extends ga{constructor(t,e){super(t,e)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}FROM(){return this.getToken(cn.FROM,0)}relationExpressionOptionalAlias(){return this.getRuleContext(0,aO)}usingClause(){return this.getRuleContext(0,KS)}whereOrCurrentClause(){return this.getRuleContext(0,TO)}returningClause(){return this.getRuleContext(0,YS)}withClause(){return this.getRuleContext(0,Rl)}get ruleIndex(){return cn.RULE_deleteStatement}accept(t){return t.visitDeleteStatement?t.visitDeleteStatement(this):t.visitChildren(this)}},KS=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}fromList(){return this.getRuleContext(0,Xl)}get ruleIndex(){return cn.RULE_usingClause}accept(t){return t.visitUsingClause?t.visitUsingClause(this):t.visitChildren(this)}},QS=class extends ga{constructor(t,e){super(t,e)}LOCK_P(){return this.getToken(cn.LOCK_P,0)}optionalTable(){return this.getRuleContext(0,Il)}relationExpressionList(){return this.getRuleContext(0,sO)}optionalLock(){return this.getRuleContext(0,JS)}optionalNowait(){return this.getRuleContext(0,qS)}get ruleIndex(){return cn.RULE_lockStatement}accept(t){return t.visitLockStatement?t.visitLockStatement(this):t.visitChildren(this)}},JS=class extends ga{constructor(t,e){super(t,e)}IN_P(){return this.getToken(cn.IN_P,0)}lockType(){return this.getRuleContext(0,ZS)}MODE(){return this.getToken(cn.MODE,0)}get ruleIndex(){return cn.RULE_optionalLock}accept(t){return t.visitOptionalLock?t.visitOptionalLock(this):t.visitChildren(this)}},ZS=class extends ga{constructor(t,e){super(t,e)}ACCESS(){return this.getToken(cn.ACCESS,0)}SHARE(){return this.getToken(cn.SHARE,0)}EXCLUSIVE(){return this.getToken(cn.EXCLUSIVE,0)}ROW(){return this.getToken(cn.ROW,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}get ruleIndex(){return cn.RULE_lockType}accept(t){return t.visitLockType?t.visitLockType(this):t.visitChildren(this)}},qS=class extends ga{constructor(t,e){super(t,e)}NOWAIT(){return this.getToken(cn.NOWAIT,0)}get ruleIndex(){return cn.RULE_optionalNowait}accept(t){return t.visitOptionalNowait?t.visitOptionalNowait(this):t.visitChildren(this)}},jS=class extends ga{constructor(t,e){super(t,e)}NOWAIT(){return this.getToken(cn.NOWAIT,0)}SKIP_P(){return this.getToken(cn.SKIP_P,0)}LOCKED(){return this.getToken(cn.LOCKED,0)}get ruleIndex(){return cn.RULE_optionalNowaitOrSkip}accept(t){return t.visitOptionalNowaitOrSkip?t.visitOptionalNowaitOrSkip(this):t.visitChildren(this)}},zS=class extends ga{constructor(t,e){super(t,e)}UPDATE(){return this.getToken(cn.UPDATE,0)}relationExpressionOptionalAlias(){return this.getRuleContext(0,aO)}SET(){return this.getToken(cn.SET,0)}setClauseList(){return this.getRuleContext(0,$S)}fromClause(){return this.getRuleContext(0,Vl)}whereOrCurrentClause(){return this.getRuleContext(0,TO)}returningClause(){return this.getRuleContext(0,YS)}withClause(){return this.getRuleContext(0,Rl)}get ruleIndex(){return cn.RULE_updateStatement}accept(t){return t.visitUpdateStatement?t.visitUpdateStatement(this):t.visitChildren(this)}},$S=class extends ga{constructor(t,e){super(t,e)}setClause(t){return void 0===t?this.getRuleContexts(tl):this.getRuleContext(t,tl)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_setClauseList}accept(t){return t.visitSetClauseList?t.visitSetClauseList(this):t.visitChildren(this)}},tl=class extends ga{constructor(t,e){super(t,e)}setTarget(t){return void 0===t?this.getRuleContexts(el):this.getRuleContext(t,el)}EQUAL(){return this.getToken(cn.EQUAL,0)}expression1(){return this.getRuleContext(0,wO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_setClause}accept(t){return t.visitSetClause?t.visitSetClause(this):t.visitChildren(this)}},el=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}optionalIndirection(){return this.getRuleContext(0,Nu)}get ruleIndex(){return cn.RULE_setTarget}accept(t){return t.visitSetTarget?t.visitSetTarget(this):t.visitChildren(this)}},sl=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(cn.DECLARE,0)}cursorName(){return this.getRuleContext(0,al)}CURSOR(){return this.getToken(cn.CURSOR,0)}optionalHold(){return this.getRuleContext(0,rl)}FOR(){return this.getToken(cn.FOR,0)}selectStatement(){return this.getRuleContext(0,il)}NO(t){return void 0===t?this.getTokens(cn.NO):this.getToken(cn.NO,t)}SCROLL(t){return void 0===t?this.getTokens(cn.SCROLL):this.getToken(cn.SCROLL,t)}BINARY(t){return void 0===t?this.getTokens(cn.BINARY):this.getToken(cn.BINARY,t)}INSENSITIVE(t){return void 0===t?this.getTokens(cn.INSENSITIVE):this.getToken(cn.INSENSITIVE,t)}get ruleIndex(){return cn.RULE_declareCursorStatement}accept(t){return t.visitDeclareCursorStatement?t.visitDeclareCursorStatement(this):t.visitChildren(this)}},al=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_cursorName}accept(t){return t.visitCursorName?t.visitCursorName(this):t.visitChildren(this)}},rl=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}HOLD(){return this.getToken(cn.HOLD,0)}WITHOUT(){return this.getToken(cn.WITHOUT,0)}get ruleIndex(){return cn.RULE_optionalHold}accept(t){return t.visitOptionalHold?t.visitOptionalHold(this):t.visitChildren(this)}},il=class extends ga{constructor(t,e){super(t,e)}selectWithoutParenthesis(){return this.getRuleContext(0,nl)}selectWithParenthesis(){return this.getRuleContext(0,cl)}get ruleIndex(){return cn.RULE_selectStatement}accept(t){return t.visitSelectStatement?t.visitSelectStatement(this):t.visitChildren(this)}},cl=class t extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}selectWithoutParenthesis(){return this.getRuleContext(0,nl)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}selectWithParenthesis(){return this.getRuleContext(0,t)}get ruleIndex(){return cn.RULE_selectWithParenthesis}accept(t){return t.visitSelectWithParenthesis?t.visitSelectWithParenthesis(this):t.visitChildren(this)}},nl=class extends ga{constructor(t,e){super(t,e)}selectClause(){return this.getRuleContext(0,hl)}optionalSortClause(){return this.getRuleContext(0,Cl)}forLockingClause(){return this.getRuleContext(0,fl)}optionalSelectLimit(){return this.getRuleContext(0,Ul)}selectLimit(){return this.getRuleContext(0,dl)}withClause(){return this.getRuleContext(0,Rl)}get ruleIndex(){return cn.RULE_selectWithoutParenthesis}accept(t){return t.visitSelectWithoutParenthesis?t.visitSelectWithoutParenthesis(this):t.visitChildren(this)}},hl=class extends ga{constructor(t,e){super(t,e)}simpleSelectIntersect(t){return void 0===t?this.getRuleContexts(El):this.getRuleContext(t,El)}allOrDistinct(t){return void 0===t?this.getRuleContexts(ul):this.getRuleContext(t,ul)}UNION(t){return void 0===t?this.getTokens(cn.UNION):this.getToken(cn.UNION,t)}EXCEPT(t){return void 0===t?this.getTokens(cn.EXCEPT):this.getToken(cn.EXCEPT,t)}get ruleIndex(){return cn.RULE_selectClause}accept(t){return t.visitSelectClause?t.visitSelectClause(this):t.visitChildren(this)}},El=class extends ga{constructor(t,e){super(t,e)}simpleSelectPramary(t){return void 0===t?this.getRuleContexts(ol):this.getRuleContext(t,ol)}INTERSECT(t){return void 0===t?this.getTokens(cn.INTERSECT):this.getToken(cn.INTERSECT,t)}allOrDistinct(t){return void 0===t?this.getRuleContexts(ul):this.getRuleContext(t,ul)}get ruleIndex(){return cn.RULE_simpleSelectIntersect}accept(t){return t.visitSimpleSelectIntersect?t.visitSimpleSelectIntersect(this):t.visitChildren(this)}},Tl=class extends ga{constructor(t,e){super(t,e)}targetList(){return this.getRuleContext(0,Cu)}intoClause(){return this.getRuleContext(0,ll)}allClause(){return this.getRuleContext(0,Ll)}optionalTargetList(){return this.getRuleContext(0,Lu)}distinctClause(){return this.getRuleContext(0,Nl)}get ruleIndex(){return cn.RULE_simpleSelectStart}accept(t){return t.visitSimpleSelectStart?t.visitSimpleSelectStart(this):t.visitChildren(this)}},ol=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(cn.SELECT,0)}simpleSelectStart(){return this.getRuleContext(0,Tl)}fromClause(){return this.getRuleContext(0,Vl)}whereClause(){return this.getRuleContext(0,EO)}groupClause(){return this.getRuleContext(0,Fl)}havingClause(){return this.getRuleContext(0,yl)}windowClause(){return this.getRuleContext(0,pI)}valuesClause(){return this.getRuleContext(0,Wl)}TABLE(){return this.getToken(cn.TABLE,0)}relationExpression(){return this.getRuleContext(0,eO)}selectWithParenthesis(){return this.getRuleContext(0,cl)}get ruleIndex(){return cn.RULE_simpleSelectPramary}accept(t){return t.visitSimpleSelectPramary?t.visitSimpleSelectPramary(this):t.visitChildren(this)}},Rl=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}commonTableExpression(t){return void 0===t?this.getRuleContexts(Al):this.getRuleContext(t,Al)}RECURSIVE(){return this.getToken(cn.RECURSIVE,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_withClause}accept(t){return t.visitWithClause?t.visitWithClause(this):t.visitChildren(this)}},Al=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}optionalNameList(){return this.getRuleContext(0,uS)}AS(){return this.getToken(cn.AS,0)}optionalMaterialized(){return this.getRuleContext(0,Sl)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}preparableStatement(){return this.getRuleContext(0,DS)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_commonTableExpression}accept(t){return t.visitCommonTableExpression?t.visitCommonTableExpression(this):t.visitChildren(this)}},Sl=class extends ga{constructor(t,e){super(t,e)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}NOT(){return this.getToken(cn.NOT,0)}get ruleIndex(){return cn.RULE_optionalMaterialized}accept(t){return t.visitOptionalMaterialized?t.visitOptionalMaterialized(this):t.visitChildren(this)}},ll=class extends ga{constructor(t,e){super(t,e)}INTO(){return this.getToken(cn.INTO,0)}optionalTemporaryTableName(){return this.getRuleContext(0,Ol)}intoTarget(){return this.getRuleContext(0,BL)}STRICT_P(){return this.getToken(cn.STRICT_P,0)}get ruleIndex(){return cn.RULE_intoClause}accept(t){return t.visitIntoClause?t.visitIntoClause(this):t.visitChildren(this)}},Ol=class extends ga{constructor(t,e){super(t,e)}optionalTable(){return this.getRuleContext(0,Il)}qualifiedName(){return this.getRuleContext(0,vu)}TEMPORARY(){return this.getToken(cn.TEMPORARY,0)}TEMP(){return this.getToken(cn.TEMP,0)}LOCAL(){return this.getToken(cn.LOCAL,0)}GLOBAL(){return this.getToken(cn.GLOBAL,0)}UNLOGGED(){return this.getToken(cn.UNLOGGED,0)}TABLE(){return this.getToken(cn.TABLE,0)}get ruleIndex(){return cn.RULE_optionalTemporaryTableName}accept(t){return t.visitOptionalTemporaryTableName?t.visitOptionalTemporaryTableName(this):t.visitChildren(this)}},Il=class extends ga{constructor(t,e){super(t,e)}TABLE(){return this.getToken(cn.TABLE,0)}get ruleIndex(){return cn.RULE_optionalTable}accept(t){return t.visitOptionalTable?t.visitOptionalTable(this):t.visitChildren(this)}},ul=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(cn.ALL,0)}DISTINCT(){return this.getToken(cn.DISTINCT,0)}get ruleIndex(){return cn.RULE_allOrDistinct}accept(t){return t.visitAllOrDistinct?t.visitAllOrDistinct(this):t.visitChildren(this)}},Nl=class extends ga{constructor(t,e){super(t,e)}DISTINCT(){return this.getToken(cn.DISTINCT,0)}ON(){return this.getToken(cn.ON,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_distinctClause}accept(t){return t.visitDistinctClause?t.visitDistinctClause(this):t.visitChildren(this)}},Ll=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_allClause}accept(t){return t.visitAllClause?t.visitAllClause(this):t.visitChildren(this)}},Cl=class extends ga{constructor(t,e){super(t,e)}sortClause(){return this.getRuleContext(0,_l)}get ruleIndex(){return cn.RULE_optionalSortClause}accept(t){return t.visitOptionalSortClause?t.visitOptionalSortClause(this):t.visitChildren(this)}},_l=class extends ga{constructor(t,e){super(t,e)}ORDER(){return this.getToken(cn.ORDER,0)}BY(){return this.getToken(cn.BY,0)}sortByList(){return this.getRuleContext(0,Pl)}get ruleIndex(){return cn.RULE_sortClause}accept(t){return t.visitSortClause?t.visitSortClause(this):t.visitChildren(this)}},Pl=class extends ga{constructor(t,e){super(t,e)}sortBy(t){return void 0===t?this.getRuleContexts(Ml):this.getRuleContext(t,Ml)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_sortByList}accept(t){return t.visitSortByList?t.visitSortByList(this):t.visitChildren(this)}},Ml=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}optionalNullsOrder(){return this.getRuleContext(0,AR)}USING(){return this.getToken(cn.USING,0)}allOperatorQualifier(){return this.getRuleContext(0,QI)}optionalAscOrDesc(){return this.getRuleContext(0,RR)}get ruleIndex(){return cn.RULE_sortBy}accept(t){return t.visitSortBy?t.visitSortBy(this):t.visitChildren(this)}},dl=class extends ga{constructor(t,e){super(t,e)}limitClause(){return this.getRuleContext(0,ml)}offsetClause(){return this.getRuleContext(0,Dl)}get ruleIndex(){return cn.RULE_selectLimit}accept(t){return t.visitSelectLimit?t.visitSelectLimit(this):t.visitChildren(this)}},Ul=class extends ga{constructor(t,e){super(t,e)}selectLimit(){return this.getRuleContext(0,dl)}get ruleIndex(){return cn.RULE_optionalSelectLimit}accept(t){return t.visitOptionalSelectLimit?t.visitOptionalSelectLimit(this):t.visitChildren(this)}},ml=class extends ga{constructor(t,e){super(t,e)}LIMIT(){return this.getToken(cn.LIMIT,0)}selectLimitValue(){return this.getRuleContext(0,pl)}COMMA(){return this.getToken(cn.COMMA,0)}selectOffsetValue(){return this.getRuleContext(0,gl)}FETCH(){return this.getToken(cn.FETCH,0)}firstOrNext(){return this.getRuleContext(0,Gl)}selectFetchFirstValue(){return this.getRuleContext(0,xl)}rowOrRows(){return this.getRuleContext(0,Hl)}ONLY(){return this.getToken(cn.ONLY,0)}WITH(){return this.getToken(cn.WITH,0)}TIES(){return this.getToken(cn.TIES,0)}get ruleIndex(){return cn.RULE_limitClause}accept(t){return t.visitLimitClause?t.visitLimitClause(this):t.visitChildren(this)}},Dl=class extends ga{constructor(t,e){super(t,e)}OFFSET(){return this.getToken(cn.OFFSET,0)}selectOffsetValue(){return this.getRuleContext(0,gl)}selectFetchFirstValue(){return this.getRuleContext(0,xl)}rowOrRows(){return this.getRuleContext(0,Hl)}get ruleIndex(){return cn.RULE_offsetClause}accept(t){return t.visitOffsetClause?t.visitOffsetClause(this):t.visitChildren(this)}},pl=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_selectLimitValue}accept(t){return t.visitSelectLimitValue?t.visitSelectLimitValue(this):t.visitChildren(this)}},gl=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_selectOffsetValue}accept(t){return t.visitSelectOffsetValue?t.visitSelectOffsetValue(this):t.visitChildren(this)}},xl=class extends ga{constructor(t,e){super(t,e)}expression3(){return this.getRuleContext(0,EI)}PLUS(){return this.getToken(cn.PLUS,0)}anyConst(){return this.getRuleContext(0,kl)}MINUS(){return this.getToken(cn.MINUS,0)}get ruleIndex(){return cn.RULE_selectFetchFirstValue}accept(t){return t.visitSelectFetchFirstValue?t.visitSelectFetchFirstValue(this):t.visitChildren(this)}},kl=class extends ga{constructor(t,e){super(t,e)}iconst(){return this.getRuleContext(0,Ku)}fconst(){return this.getRuleContext(0,Xu)}get ruleIndex(){return cn.RULE_anyConst}accept(t){return t.visitAnyConst?t.visitAnyConst(this):t.visitChildren(this)}},Hl=class extends ga{constructor(t,e){super(t,e)}ROW(){return this.getToken(cn.ROW,0)}ROWS(){return this.getToken(cn.ROWS,0)}get ruleIndex(){return cn.RULE_rowOrRows}accept(t){return t.visitRowOrRows?t.visitRowOrRows(this):t.visitChildren(this)}},Gl=class extends ga{constructor(t,e){super(t,e)}FIRST_P(){return this.getToken(cn.FIRST_P,0)}NEXT(){return this.getToken(cn.NEXT,0)}get ruleIndex(){return cn.RULE_firstOrNext}accept(t){return t.visitFirstOrNext?t.visitFirstOrNext(this):t.visitChildren(this)}},Fl=class extends ga{constructor(t,e){super(t,e)}GROUP_P(){return this.getToken(cn.GROUP_P,0)}BY(){return this.getToken(cn.BY,0)}groupByList(){return this.getRuleContext(0,vl)}get ruleIndex(){return cn.RULE_groupClause}accept(t){return t.visitGroupClause?t.visitGroupClause(this):t.visitChildren(this)}},vl=class extends ga{constructor(t,e){super(t,e)}groupByItem(t){return void 0===t?this.getRuleContexts(Bl):this.getRuleContext(t,Bl)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_groupByList}accept(t){return t.visitGroupByList?t.visitGroupByList(this):t.visitChildren(this)}},Bl=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}CUBE(){return this.getToken(cn.CUBE,0)}expressionList(){return this.getRuleContext(0,ZI)}ROLLUP(){return this.getToken(cn.ROLLUP,0)}GROUPING(){return this.getToken(cn.GROUPING,0)}SETS(){return this.getToken(cn.SETS,0)}groupByList(){return this.getRuleContext(0,vl)}get ruleIndex(){return cn.RULE_groupByItem}accept(t){return t.visitGroupByItem?t.visitGroupByItem(this):t.visitChildren(this)}},yl=class extends ga{constructor(t,e){super(t,e)}HAVING(){return this.getToken(cn.HAVING,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_havingClause}accept(t){return t.visitHavingClause?t.visitHavingClause(this):t.visitChildren(this)}},fl=class extends ga{constructor(t,e){super(t,e)}forLockingItem(t){return void 0===t?this.getRuleContexts(Yl):this.getRuleContext(t,Yl)}FOR(){return this.getToken(cn.FOR,0)}READ(){return this.getToken(cn.READ,0)}ONLY(){return this.getToken(cn.ONLY,0)}get ruleIndex(){return cn.RULE_forLockingClause}accept(t){return t.visitForLockingClause?t.visitForLockingClause(this):t.visitChildren(this)}},Yl=class extends ga{constructor(t,e){super(t,e)}forLockingStrength(){return this.getRuleContext(0,wl)}lockedRelationsList(){return this.getRuleContext(0,bl)}optionalNowaitOrSkip(){return this.getRuleContext(0,jS)}get ruleIndex(){return cn.RULE_forLockingItem}accept(t){return t.visitForLockingItem?t.visitForLockingItem(this):t.visitChildren(this)}},wl=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(cn.FOR,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}SHARE(){return this.getToken(cn.SHARE,0)}NO(){return this.getToken(cn.NO,0)}KEY(){return this.getToken(cn.KEY,0)}get ruleIndex(){return cn.RULE_forLockingStrength}accept(t){return t.visitForLockingStrength?t.visitForLockingStrength(this):t.visitChildren(this)}},bl=class extends ga{constructor(t,e){super(t,e)}OF(){return this.getToken(cn.OF,0)}qualifiedNameList(){return this.getRuleContext(0,du)}get ruleIndex(){return cn.RULE_lockedRelationsList}accept(t){return t.visitLockedRelationsList?t.visitLockedRelationsList(this):t.visitChildren(this)}},Wl=class extends ga{constructor(t,e){super(t,e)}VALUES(){return this.getToken(cn.VALUES,0)}OPEN_PAREN(t){return void 0===t?this.getTokens(cn.OPEN_PAREN):this.getToken(cn.OPEN_PAREN,t)}expressionList(t){return void 0===t?this.getRuleContexts(ZI):this.getRuleContext(t,ZI)}CLOSE_PAREN(t){return void 0===t?this.getTokens(cn.CLOSE_PAREN):this.getToken(cn.CLOSE_PAREN,t)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_valuesClause}accept(t){return t.visitValuesClause?t.visitValuesClause(this):t.visitChildren(this)}},Vl=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(cn.FROM,0)}fromList(){return this.getRuleContext(0,Xl)}get ruleIndex(){return cn.RULE_fromClause}accept(t){return t.visitFromClause?t.visitFromClause(this):t.visitChildren(this)}},Xl=class extends ga{constructor(t,e){super(t,e)}nonAnsiJoin(){return this.getRuleContext(0,Kl)}tableReference(t){return void 0===t?this.getRuleContexts(Ql):this.getRuleContext(t,Ql)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_fromList}accept(t){return t.visitFromList?t.visitFromList(this):t.visitChildren(this)}},Kl=class extends ga{constructor(t,e){super(t,e)}tableReference(t){return void 0===t?this.getRuleContexts(Ql):this.getRuleContext(t,Ql)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_nonAnsiJoin}accept(t){return t.visitNonAnsiJoin?t.visitNonAnsiJoin(this):t.visitChildren(this)}},Ql=class t extends ga{constructor(t,e){super(t,e)}relationExpression(){return this.getRuleContext(0,eO)}optionalAliasClause(){return this.getRuleContext(0,Zl)}functionTable(){return this.getRuleContext(0,iO)}functionAliasClause(){return this.getRuleContext(0,jl)}xmlTable(){return this.getRuleContext(0,SO)}selectWithParenthesis(){return this.getRuleContext(0,cl)}LATERAL_P(){return this.getToken(cn.LATERAL_P,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}tableReference(e){return void 0===e?this.getRuleContexts(t):this.getRuleContext(e,t)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}CROSS(t){return void 0===t?this.getTokens(cn.CROSS):this.getToken(cn.CROSS,t)}JOIN(t){return void 0===t?this.getTokens(cn.JOIN):this.getToken(cn.JOIN,t)}NATURAL(t){return void 0===t?this.getTokens(cn.NATURAL):this.getToken(cn.NATURAL,t)}joinQualifier(t){return void 0===t?this.getRuleContexts($l):this.getRuleContext(t,$l)}tableSampleClause(){return this.getRuleContext(0,rO)}joinType(t){return void 0===t?this.getRuleContexts(zl):this.getRuleContext(t,zl)}get ruleIndex(){return cn.RULE_tableReference}accept(t){return t.visitTableReference?t.visitTableReference(this):t.visitChildren(this)}},Jl=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}AS(){return this.getToken(cn.AS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}nameList(){return this.getRuleContext(0,Bu)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_aliasClause}accept(t){return t.visitAliasClause?t.visitAliasClause(this):t.visitChildren(this)}},Zl=class extends ga{constructor(t,e){super(t,e)}tableAliasClause(){return this.getRuleContext(0,ql)}get ruleIndex(){return cn.RULE_optionalAliasClause}accept(t){return t.visitOptionalAliasClause?t.visitOptionalAliasClause(this):t.visitChildren(this)}},ql=class extends ga{constructor(t,e){super(t,e)}tableAlias(){return this.getRuleContext(0,tN)}AS(){return this.getToken(cn.AS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}nameList(){return this.getRuleContext(0,Bu)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_tableAliasClause}accept(t){return t.visitTableAliasClause?t.visitTableAliasClause(this):t.visitChildren(this)}},jl=class extends ga{constructor(t,e){super(t,e)}aliasClause(){return this.getRuleContext(0,Jl)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}tableFunctionElementList(){return this.getRuleContext(0,RO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}AS(){return this.getToken(cn.AS,0)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_functionAliasClause}accept(t){return t.visitFunctionAliasClause?t.visitFunctionAliasClause(this):t.visitChildren(this)}},zl=class extends ga{constructor(t,e){super(t,e)}FULL(){return this.getToken(cn.FULL,0)}LEFT(){return this.getToken(cn.LEFT,0)}RIGHT(){return this.getToken(cn.RIGHT,0)}INNER_P(){return this.getToken(cn.INNER_P,0)}OUTER_P(){return this.getToken(cn.OUTER_P,0)}get ruleIndex(){return cn.RULE_joinType}accept(t){return t.visitJoinType?t.visitJoinType(this):t.visitChildren(this)}},$l=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}nameList(){return this.getRuleContext(0,Bu)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}ON(){return this.getToken(cn.ON,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_joinQualifier}accept(t){return t.visitJoinQualifier?t.visitJoinQualifier(this):t.visitChildren(this)}},tO=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}get ruleIndex(){return cn.RULE_viewName}accept(t){return t.visitViewName?t.visitViewName(this):t.visitChildren(this)}},eO=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}STAR(){return this.getToken(cn.STAR,0)}ONLY(){return this.getToken(cn.ONLY,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_relationExpression}accept(t){return t.visitRelationExpression?t.visitRelationExpression(this):t.visitChildren(this)}},sO=class extends ga{constructor(t,e){super(t,e)}relationExpression(t){return void 0===t?this.getRuleContexts(eO):this.getRuleContext(t,eO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_relationExpressionList}accept(t){return t.visitRelationExpressionList?t.visitRelationExpressionList(this):t.visitChildren(this)}},aO=class extends ga{constructor(t,e){super(t,e)}relationExpression(){return this.getRuleContext(0,eO)}columnId(){return this.getRuleContext(0,$u)}AS(){return this.getToken(cn.AS,0)}get ruleIndex(){return cn.RULE_relationExpressionOptionalAlias}accept(t){return t.visitRelationExpressionOptionalAlias?t.visitRelationExpressionOptionalAlias(this):t.visitChildren(this)}},rO=class extends ga{constructor(t,e){super(t,e)}TABLESAMPLE(){return this.getToken(cn.TABLESAMPLE,0)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(t){return void 0===t?this.getTokens(cn.OPEN_PAREN):this.getToken(cn.OPEN_PAREN,t)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(t){return void 0===t?this.getTokens(cn.CLOSE_PAREN):this.getToken(cn.CLOSE_PAREN,t)}REPEATABLE(){return this.getToken(cn.REPEATABLE,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_tableSampleClause}accept(t){return t.visitTableSampleClause?t.visitTableSampleClause(this):t.visitChildren(this)}},iO=class extends ga{constructor(t,e){super(t,e)}functionExpressionWindowless(){return this.getRuleContext(0,OI)}optionalOrdinality(){return this.getRuleContext(0,hO)}ROWS(){return this.getToken(cn.ROWS,0)}FROM(){return this.getToken(cn.FROM,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}rowsFromItem(t){return void 0===t?this.getRuleContexts(cO):this.getRuleContext(t,cO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_functionTable}accept(t){return t.visitFunctionTable?t.visitFunctionTable(this):t.visitChildren(this)}},cO=class extends ga{constructor(t,e){super(t,e)}functionExpressionWindowless(){return this.getRuleContext(0,OI)}optionalColumnDefinitionList(){return this.getRuleContext(0,nO)}get ruleIndex(){return cn.RULE_rowsFromItem}accept(t){return t.visitRowsFromItem?t.visitRowsFromItem(this):t.visitChildren(this)}},nO=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(cn.AS,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}tableFunctionElementList(){return this.getRuleContext(0,RO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalColumnDefinitionList}accept(t){return t.visitOptionalColumnDefinitionList?t.visitOptionalColumnDefinitionList(this):t.visitChildren(this)}},hO=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}ORDINALITY(){return this.getToken(cn.ORDINALITY,0)}get ruleIndex(){return cn.RULE_optionalOrdinality}accept(t){return t.visitOptionalOrdinality?t.visitOptionalOrdinality(this):t.visitChildren(this)}},EO=class extends ga{constructor(t,e){super(t,e)}WHERE(){return this.getToken(cn.WHERE,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_whereClause}accept(t){return t.visitWhereClause?t.visitWhereClause(this):t.visitChildren(this)}},TO=class extends ga{constructor(t,e){super(t,e)}WHERE(){return this.getToken(cn.WHERE,0)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}OF(){return this.getToken(cn.OF,0)}cursorName(){return this.getRuleContext(0,al)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_whereOrCurrentClause}accept(t){return t.visitWhereOrCurrentClause?t.visitWhereOrCurrentClause(this):t.visitChildren(this)}},oO=class extends ga{constructor(t,e){super(t,e)}tableFunctionElementList(){return this.getRuleContext(0,RO)}get ruleIndex(){return cn.RULE_optionalTableFunctionElementList}accept(t){return t.visitOptionalTableFunctionElementList?t.visitOptionalTableFunctionElementList(this):t.visitChildren(this)}},RO=class extends ga{constructor(t,e){super(t,e)}tableFunctionElement(t){return void 0===t?this.getRuleContexts(AO):this.getRuleContext(t,AO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_tableFunctionElementList}accept(t){return t.visitTableFunctionElementList?t.visitTableFunctionElementList(this):t.visitChildren(this)}},AO=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}typeName(){return this.getRuleContext(0,LO)}optionalCollateClause(){return this.getRuleContext(0,rh)}get ruleIndex(){return cn.RULE_tableFunctionElement}accept(t){return t.visitTableFunctionElement?t.visitTableFunctionElement(this):t.visitChildren(this)}},SO=class extends ga{constructor(t,e){super(t,e)}XMLTABLE(){return this.getToken(cn.XMLTABLE,0)}OPEN_PAREN(t){return void 0===t?this.getTokens(cn.OPEN_PAREN):this.getToken(cn.OPEN_PAREN,t)}CLOSE_PAREN(t){return void 0===t?this.getTokens(cn.CLOSE_PAREN):this.getToken(cn.CLOSE_PAREN,t)}expression3(){return this.getRuleContext(0,EI)}xmlExistsArgument(){return this.getRuleContext(0,dI)}COLUMNS(){return this.getToken(cn.COLUMNS,0)}xmlTableColumnElement(t){return void 0===t?this.getRuleContexts(lO):this.getRuleContext(t,lO)}XMLNAMESPACES(){return this.getToken(cn.XMLNAMESPACES,0)}xmlNamespaceList(){return this.getRuleContext(0,uO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_xmlTable}accept(t){return t.visitXmlTable?t.visitXmlTable(this):t.visitChildren(this)}},lO=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}typeName(){return this.getRuleContext(0,LO)}FOR(){return this.getToken(cn.FOR,0)}ORDINALITY(){return this.getToken(cn.ORDINALITY,0)}xmlTableColumnOptionList(){return this.getRuleContext(0,OO)}get ruleIndex(){return cn.RULE_xmlTableColumnElement}accept(t){return t.visitXmlTableColumnElement?t.visitXmlTableColumnElement(this):t.visitChildren(this)}},OO=class extends ga{constructor(t,e){super(t,e)}xmlTableColumnOptionElement(t){return void 0===t?this.getRuleContexts(IO):this.getRuleContext(t,IO)}get ruleIndex(){return cn.RULE_xmlTableColumnOptionList}accept(t){return t.visitXmlTableColumnOptionList?t.visitXmlTableColumnOptionList(this):t.visitChildren(this)}},IO=class extends ga{constructor(t,e){super(t,e)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}expression1(){return this.getRuleContext(0,wO)}identifier(){return this.getRuleContext(0,rN)}NOT(){return this.getToken(cn.NOT,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}get ruleIndex(){return cn.RULE_xmlTableColumnOptionElement}accept(t){return t.visitXmlTableColumnOptionElement?t.visitXmlTableColumnOptionElement(this):t.visitChildren(this)}},uO=class extends ga{constructor(t,e){super(t,e)}xmlNamespaceElement(t){return void 0===t?this.getRuleContexts(NO):this.getRuleContext(t,NO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_xmlNamespaceList}accept(t){return t.visitXmlNamespaceList?t.visitXmlNamespaceList(this):t.visitChildren(this)}},NO=class extends ga{constructor(t,e){super(t,e)}expression2(){return this.getRuleContext(0,hI)}AS(){return this.getToken(cn.AS,0)}columnLabel(){return this.getRuleContext(0,aN)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_xmlNamespaceElement}accept(t){return t.visitXmlNamespaceElement?t.visitXmlNamespaceElement(this):t.visitChildren(this)}},LO=class extends ga{constructor(t,e){super(t,e)}simpleTypeName(){return this.getRuleContext(0,CO)}ARRAY(){return this.getToken(cn.ARRAY,0)}SETOF(){return this.getToken(cn.SETOF,0)}OPEN_BRACKET(t){return void 0===t?this.getTokens(cn.OPEN_BRACKET):this.getToken(cn.OPEN_BRACKET,t)}CLOSE_BRACKET(t){return void 0===t?this.getTokens(cn.CLOSE_BRACKET):this.getToken(cn.CLOSE_BRACKET,t)}iconst(t){return void 0===t?this.getRuleContexts(Ku):this.getRuleContext(t,Ku)}qualifiedName(){return this.getRuleContext(0,vu)}PERCENT(){return this.getToken(cn.PERCENT,0)}ROWTYPE(){return this.getToken(cn.ROWTYPE,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}get ruleIndex(){return cn.RULE_typeName}accept(t){return t.visitTypeName?t.visitTypeName(this):t.visitChildren(this)}},CO=class extends ga{constructor(t,e){super(t,e)}genericType(){return this.getRuleContext(0,PO)}numeric(){return this.getRuleContext(0,dO)}bit(){return this.getRuleContext(0,mO)}character(){return this.getRuleContext(0,xO)}constDateTime(){return this.getRuleContext(0,FO)}constInterval(){return this.getRuleContext(0,vO)}optionalInterval(){return this.getRuleContext(0,yO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_simpleTypeName}accept(t){return t.visitSimpleTypeName?t.visitSimpleTypeName(this):t.visitChildren(this)}},_O=class extends ga{constructor(t,e){super(t,e)}numeric(){return this.getRuleContext(0,dO)}constBit(){return this.getRuleContext(0,DO)}constCharacter(){return this.getRuleContext(0,kO)}constDateTime(){return this.getRuleContext(0,FO)}get ruleIndex(){return cn.RULE_constTypeName}accept(t){return t.visitConstTypeName?t.visitConstTypeName(this):t.visitChildren(this)}},PO=class extends ga{constructor(t,e){super(t,e)}optionalTypeModifiers(){return this.getRuleContext(0,MO)}builtinFunctionName(){return this.getRuleContext(0,TN)}typeFunctionName(){return this.getRuleContext(0,eN)}LEFT(){return this.getToken(cn.LEFT,0)}RIGHT(){return this.getToken(cn.RIGHT,0)}attributes(){return this.getRuleContext(0,Do)}get ruleIndex(){return cn.RULE_genericType}accept(t){return t.visitGenericType?t.visitGenericType(this):t.visitChildren(this)}},MO=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalTypeModifiers}accept(t){return t.visitOptionalTypeModifiers?t.visitOptionalTypeModifiers(this):t.visitChildren(this)}},dO=class extends ga{constructor(t,e){super(t,e)}INT_P(){return this.getToken(cn.INT_P,0)}INTEGER(){return this.getToken(cn.INTEGER,0)}SMALLINT(){return this.getToken(cn.SMALLINT,0)}BIGINT(){return this.getToken(cn.BIGINT,0)}REAL(){return this.getToken(cn.REAL,0)}FLOAT_P(){return this.getToken(cn.FLOAT_P,0)}optionalFloat(){return this.getRuleContext(0,UO)}DOUBLE_P(){return this.getToken(cn.DOUBLE_P,0)}PRECISION(){return this.getToken(cn.PRECISION,0)}DECIMAL_P(){return this.getToken(cn.DECIMAL_P,0)}optionalTypeModifiers(){return this.getRuleContext(0,MO)}DEC(){return this.getToken(cn.DEC,0)}NUMERIC(){return this.getToken(cn.NUMERIC,0)}BOOLEAN_P(){return this.getToken(cn.BOOLEAN_P,0)}get ruleIndex(){return cn.RULE_numeric}accept(t){return t.visitNumeric?t.visitNumeric(this):t.visitChildren(this)}},UO=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_optionalFloat}accept(t){return t.visitOptionalFloat?t.visitOptionalFloat(this):t.visitChildren(this)}},mO=class extends ga{constructor(t,e){super(t,e)}bitWithLength(){return this.getRuleContext(0,pO)}bitWithoutLength(){return this.getRuleContext(0,gO)}get ruleIndex(){return cn.RULE_bit}accept(t){return t.visitBit?t.visitBit(this):t.visitChildren(this)}},DO=class extends ga{constructor(t,e){super(t,e)}bitWithLength(){return this.getRuleContext(0,pO)}bitWithoutLength(){return this.getRuleContext(0,gO)}get ruleIndex(){return cn.RULE_constBit}accept(t){return t.visitConstBit?t.visitConstBit(this):t.visitChildren(this)}},pO=class extends ga{constructor(t,e){super(t,e)}BIT(){return this.getToken(cn.BIT,0)}optionalVarying(){return this.getRuleContext(0,GO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_bitWithLength}accept(t){return t.visitBitWithLength?t.visitBitWithLength(this):t.visitChildren(this)}},gO=class extends ga{constructor(t,e){super(t,e)}BIT(){return this.getToken(cn.BIT,0)}optionalVarying(){return this.getRuleContext(0,GO)}get ruleIndex(){return cn.RULE_bitWithoutLength}accept(t){return t.visitBitWithoutLength?t.visitBitWithoutLength(this):t.visitChildren(this)}},xO=class extends ga{constructor(t,e){super(t,e)}characterChar(){return this.getRuleContext(0,HO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_character}accept(t){return t.visitCharacter?t.visitCharacter(this):t.visitChildren(this)}},kO=class extends ga{constructor(t,e){super(t,e)}characterChar(){return this.getRuleContext(0,HO)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_constCharacter}accept(t){return t.visitConstCharacter?t.visitConstCharacter(this):t.visitChildren(this)}},HO=class extends ga{constructor(t,e){super(t,e)}optionalVarying(){return this.getRuleContext(0,GO)}CHARACTER(){return this.getToken(cn.CHARACTER,0)}CHAR_P(){return this.getToken(cn.CHAR_P,0)}NCHAR(){return this.getToken(cn.NCHAR,0)}VARCHAR(){return this.getToken(cn.VARCHAR,0)}NATIONAL(){return this.getToken(cn.NATIONAL,0)}get ruleIndex(){return cn.RULE_characterChar}accept(t){return t.visitCharacterChar?t.visitCharacterChar(this):t.visitChildren(this)}},GO=class extends ga{constructor(t,e){super(t,e)}VARYING(){return this.getToken(cn.VARYING,0)}get ruleIndex(){return cn.RULE_optionalVarying}accept(t){return t.visitOptionalVarying?t.visitOptionalVarying(this):t.visitChildren(this)}},FO=class extends ga{constructor(t,e){super(t,e)}optionalTimezone(){return this.getRuleContext(0,BO)}TIMESTAMP(){return this.getToken(cn.TIMESTAMP,0)}TIME(){return this.getToken(cn.TIME,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_constDateTime}accept(t){return t.visitConstDateTime?t.visitConstDateTime(this):t.visitChildren(this)}},vO=class extends ga{constructor(t,e){super(t,e)}INTERVAL(){return this.getToken(cn.INTERVAL,0)}get ruleIndex(){return cn.RULE_constInterval}accept(t){return t.visitConstInterval?t.visitConstInterval(this):t.visitChildren(this)}},BO=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(cn.WITH,0)}TIME(){return this.getToken(cn.TIME,0)}ZONE(){return this.getToken(cn.ZONE,0)}WITHOUT(){return this.getToken(cn.WITHOUT,0)}get ruleIndex(){return cn.RULE_optionalTimezone}accept(t){return t.visitOptionalTimezone?t.visitOptionalTimezone(this):t.visitChildren(this)}},yO=class extends ga{constructor(t,e){super(t,e)}YEAR_P(){return this.getToken(cn.YEAR_P,0)}MONTH_P(){return this.getToken(cn.MONTH_P,0)}DAY_P(){return this.getToken(cn.DAY_P,0)}HOUR_P(){return this.getToken(cn.HOUR_P,0)}MINUTE_P(){return this.getToken(cn.MINUTE_P,0)}intervalSecond(){return this.getRuleContext(0,fO)}TO(){return this.getToken(cn.TO,0)}get ruleIndex(){return cn.RULE_optionalInterval}accept(t){return t.visitOptionalInterval?t.visitOptionalInterval(this):t.visitChildren(this)}},fO=class extends ga{constructor(t,e){super(t,e)}SECOND_P(){return this.getToken(cn.SECOND_P,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}iconst(){return this.getRuleContext(0,Ku)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_intervalSecond}accept(t){return t.visitIntervalSecond?t.visitIntervalSecond(this):t.visitChildren(this)}},YO=class extends ga{constructor(t,e){super(t,e)}ESCAPE(){return this.getToken(cn.ESCAPE,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_optionalEscape}accept(t){return t.visitOptionalEscape?t.visitOptionalEscape(this):t.visitChildren(this)}},wO=class extends ga{constructor(t,e){super(t,e)}expression1Qualifier(){return this.getRuleContext(0,bO)}get ruleIndex(){return cn.RULE_expression1}accept(t){return t.visitExpression1?t.visitExpression1(this):t.visitChildren(this)}},bO=class extends ga{constructor(t,e){super(t,e)}expression1LessLess(){return this.getRuleContext(0,WO)}operatorQualifier(){return this.getRuleContext(0,KI)}get ruleIndex(){return cn.RULE_expression1Qualifier}accept(t){return t.visitExpression1Qualifier?t.visitExpression1Qualifier(this):t.visitChildren(this)}},WO=class extends ga{constructor(t,e){super(t,e)}expression1Or(t){return void 0===t?this.getRuleContexts(VO):this.getRuleContext(t,VO)}LESS_LESS(t){return void 0===t?this.getTokens(cn.LESS_LESS):this.getToken(cn.LESS_LESS,t)}GREATER_GREATER(t){return void 0===t?this.getTokens(cn.GREATER_GREATER):this.getToken(cn.GREATER_GREATER,t)}get ruleIndex(){return cn.RULE_expression1LessLess}accept(t){return t.visitExpression1LessLess?t.visitExpression1LessLess(this):t.visitChildren(this)}},VO=class extends ga{constructor(t,e){super(t,e)}expression1And(t){return void 0===t?this.getRuleContexts(XO):this.getRuleContext(t,XO)}OR(t){return void 0===t?this.getTokens(cn.OR):this.getToken(cn.OR,t)}get ruleIndex(){return cn.RULE_expression1Or}accept(t){return t.visitExpression1Or?t.visitExpression1Or(this):t.visitChildren(this)}},XO=class extends ga{constructor(t,e){super(t,e)}expression1Between(t){return void 0===t?this.getRuleContexts(KO):this.getRuleContext(t,KO)}AND(t){return void 0===t?this.getTokens(cn.AND):this.getToken(cn.AND,t)}get ruleIndex(){return cn.RULE_expression1And}accept(t){return t.visitExpression1And?t.visitExpression1And(this):t.visitChildren(this)}},KO=class extends ga{constructor(t,e){super(t,e)}expression1In(t){return void 0===t?this.getRuleContexts(QO):this.getRuleContext(t,QO)}BETWEEN(){return this.getToken(cn.BETWEEN,0)}AND(){return this.getToken(cn.AND,0)}NOT(){return this.getToken(cn.NOT,0)}SYMMETRIC(){return this.getToken(cn.SYMMETRIC,0)}get ruleIndex(){return cn.RULE_expression1Between}accept(t){return t.visitExpression1Between?t.visitExpression1Between(this):t.visitChildren(this)}},QO=class extends ga{constructor(t,e){super(t,e)}expression1UnaryNot(){return this.getRuleContext(0,JO)}IN_P(){return this.getToken(cn.IN_P,0)}inExpression(){return this.getRuleContext(0,hu)}NOT(){return this.getToken(cn.NOT,0)}get ruleIndex(){return cn.RULE_expression1In}accept(t){return t.visitExpression1In?t.visitExpression1In(this):t.visitChildren(this)}},JO=class extends ga{constructor(t,e){super(t,e)}expression1IsNull(){return this.getRuleContext(0,ZO)}NOT(){return this.getToken(cn.NOT,0)}get ruleIndex(){return cn.RULE_expression1UnaryNot}accept(t){return t.visitExpression1UnaryNot?t.visitExpression1UnaryNot(this):t.visitChildren(this)}},ZO=class extends ga{constructor(t,e){super(t,e)}expression1IsNot(){return this.getRuleContext(0,qO)}ISNULL(){return this.getToken(cn.ISNULL,0)}NOTNULL(){return this.getToken(cn.NOTNULL,0)}get ruleIndex(){return cn.RULE_expression1IsNull}accept(t){return t.visitExpression1IsNull?t.visitExpression1IsNull(this):t.visitChildren(this)}},qO=class extends ga{constructor(t,e){super(t,e)}expression1Compare(){return this.getRuleContext(0,jO)}IS(){return this.getToken(cn.IS,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}TRUE_P(){return this.getToken(cn.TRUE_P,0)}FALSE_P(){return this.getToken(cn.FALSE_P,0)}UNKNOWN(){return this.getToken(cn.UNKNOWN,0)}DISTINCT(){return this.getToken(cn.DISTINCT,0)}FROM(){return this.getToken(cn.FROM,0)}expression1(){return this.getRuleContext(0,wO)}OF(){return this.getToken(cn.OF,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeList(){return this.getRuleContext(0,zI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}DOCUMENT_P(){return this.getToken(cn.DOCUMENT_P,0)}NORMALIZED(){return this.getToken(cn.NORMALIZED,0)}NOT(){return this.getToken(cn.NOT,0)}unicodeNormalForm(){return this.getRuleContext(0,au)}get ruleIndex(){return cn.RULE_expression1IsNot}accept(t){return t.visitExpression1IsNot?t.visitExpression1IsNot(this):t.visitChildren(this)}},jO=class extends ga{constructor(t,e){super(t,e)}expression1Like(t){return void 0===t?this.getRuleContexts(zO):this.getRuleContext(t,zO)}subqueryOperator(){return this.getRuleContext(0,JI)}subType(){return this.getRuleContext(0,WI)}LT(){return this.getToken(cn.LT,0)}GT(){return this.getToken(cn.GT,0)}EQUAL(){return this.getToken(cn.EQUAL,0)}LESS_EQUALS(){return this.getToken(cn.LESS_EQUALS,0)}GREATER_EQUALS(){return this.getToken(cn.GREATER_EQUALS,0)}NOT_EQUALS(){return this.getToken(cn.NOT_EQUALS,0)}selectWithParenthesis(){return this.getRuleContext(0,cl)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_expression1Compare}accept(t){return t.visitExpression1Compare?t.visitExpression1Compare(this):t.visitChildren(this)}},zO=class extends ga{constructor(t,e){super(t,e)}expression1qualifierOperator(t){return void 0===t?this.getRuleContexts($O):this.getRuleContext(t,$O)}optionalEscape(){return this.getRuleContext(0,YO)}LIKE(){return this.getToken(cn.LIKE,0)}ILIKE(){return this.getToken(cn.ILIKE,0)}SIMILAR(){return this.getToken(cn.SIMILAR,0)}TO(){return this.getToken(cn.TO,0)}NOT(){return this.getToken(cn.NOT,0)}get ruleIndex(){return cn.RULE_expression1Like}accept(t){return t.visitExpression1Like?t.visitExpression1Like(this):t.visitChildren(this)}},$O=class extends ga{constructor(t,e){super(t,e)}expression1UnaryQualifierOperator(t){return void 0===t?this.getRuleContexts(tI):this.getRuleContext(t,tI)}operatorQualifier(t){return void 0===t?this.getRuleContexts(KI):this.getRuleContext(t,KI)}get ruleIndex(){return cn.RULE_expression1qualifierOperator}accept(t){return t.visitExpression1qualifierOperator?t.visitExpression1qualifierOperator(this):t.visitChildren(this)}},tI=class extends ga{constructor(t,e){super(t,e)}expression1Add(){return this.getRuleContext(0,eI)}operatorQualifier(){return this.getRuleContext(0,KI)}get ruleIndex(){return cn.RULE_expression1UnaryQualifierOperator}accept(t){return t.visitExpression1UnaryQualifierOperator?t.visitExpression1UnaryQualifierOperator(this):t.visitChildren(this)}},eI=class extends ga{constructor(t,e){super(t,e)}expressionMultiply(t){return void 0===t?this.getRuleContexts(sI):this.getRuleContext(t,sI)}MINUS(t){return void 0===t?this.getTokens(cn.MINUS):this.getToken(cn.MINUS,t)}PLUS(t){return void 0===t?this.getTokens(cn.PLUS):this.getToken(cn.PLUS,t)}get ruleIndex(){return cn.RULE_expression1Add}accept(t){return t.visitExpression1Add?t.visitExpression1Add(this):t.visitChildren(this)}},sI=class extends ga{constructor(t,e){super(t,e)}expression1Caret(t){return void 0===t?this.getRuleContexts(aI):this.getRuleContext(t,aI)}STAR(t){return void 0===t?this.getTokens(cn.STAR):this.getToken(cn.STAR,t)}SLASH(t){return void 0===t?this.getTokens(cn.SLASH):this.getToken(cn.SLASH,t)}PERCENT(t){return void 0===t?this.getTokens(cn.PERCENT):this.getToken(cn.PERCENT,t)}get ruleIndex(){return cn.RULE_expressionMultiply}accept(t){return t.visitExpressionMultiply?t.visitExpressionMultiply(this):t.visitChildren(this)}},aI=class extends ga{constructor(t,e){super(t,e)}expression1UnarySign(){return this.getRuleContext(0,rI)}CARET(){return this.getToken(cn.CARET,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_expression1Caret}accept(t){return t.visitExpression1Caret?t.visitExpression1Caret(this):t.visitChildren(this)}},rI=class extends ga{constructor(t,e){super(t,e)}expression1AtTimeZone(){return this.getRuleContext(0,iI)}MINUS(){return this.getToken(cn.MINUS,0)}PLUS(){return this.getToken(cn.PLUS,0)}get ruleIndex(){return cn.RULE_expression1UnarySign}accept(t){return t.visitExpression1UnarySign?t.visitExpression1UnarySign(this):t.visitChildren(this)}},iI=class extends ga{constructor(t,e){super(t,e)}expression1Collate(){return this.getRuleContext(0,cI)}AT(){return this.getToken(cn.AT,0)}TIME(){return this.getToken(cn.TIME,0)}ZONE(){return this.getToken(cn.ZONE,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_expression1AtTimeZone}accept(t){return t.visitExpression1AtTimeZone?t.visitExpression1AtTimeZone(this):t.visitChildren(this)}},cI=class extends ga{constructor(t,e){super(t,e)}expression1Typecast(){return this.getRuleContext(0,nI)}COLLATE(){return this.getToken(cn.COLLATE,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_expression1Collate}accept(t){return t.visitExpression1Collate?t.visitExpression1Collate(this):t.visitChildren(this)}},nI=class extends ga{constructor(t,e){super(t,e)}expression3(){return this.getRuleContext(0,EI)}TYPECAST(t){return void 0===t?this.getTokens(cn.TYPECAST):this.getToken(cn.TYPECAST,t)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}get ruleIndex(){return cn.RULE_expression1Typecast}accept(t){return t.visitExpression1Typecast?t.visitExpression1Typecast(this):t.visitChildren(this)}},hI=class t extends ga{constructor(t,e){super(t,e)}expression3(){return this.getRuleContext(0,EI)}expression2(e){return void 0===e?this.getRuleContexts(t):this.getRuleContext(e,t)}PLUS(){return this.getToken(cn.PLUS,0)}MINUS(){return this.getToken(cn.MINUS,0)}operatorQualifier(){return this.getRuleContext(0,KI)}CARET(){return this.getToken(cn.CARET,0)}STAR(){return this.getToken(cn.STAR,0)}SLASH(){return this.getToken(cn.SLASH,0)}PERCENT(){return this.getToken(cn.PERCENT,0)}LT(){return this.getToken(cn.LT,0)}GT(){return this.getToken(cn.GT,0)}EQUAL(){return this.getToken(cn.EQUAL,0)}LESS_EQUALS(){return this.getToken(cn.LESS_EQUALS,0)}GREATER_EQUALS(){return this.getToken(cn.GREATER_EQUALS,0)}NOT_EQUALS(){return this.getToken(cn.NOT_EQUALS,0)}TYPECAST(){return this.getToken(cn.TYPECAST,0)}typeName(){return this.getRuleContext(0,LO)}IS(){return this.getToken(cn.IS,0)}DISTINCT(){return this.getToken(cn.DISTINCT,0)}FROM(){return this.getToken(cn.FROM,0)}OF(){return this.getToken(cn.OF,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}typeList(){return this.getRuleContext(0,zI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}DOCUMENT_P(){return this.getToken(cn.DOCUMENT_P,0)}NOT(){return this.getToken(cn.NOT,0)}get ruleIndex(){return cn.RULE_expression2}accept(t){return t.visitExpression2?t.visitExpression2(this):t.visitChildren(this)}},EI=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return cn.RULE_expression3}copyFrom(t){super.copyFrom(t)}},TI=class extends EI{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXISTS(){return this.getToken(cn.EXISTS,0)}selectWithParenthesis(){return this.getRuleContext(0,cl)}accept(t){return t.visitC_expr_exists?t.visitC_expr_exists(this):t.visitChildren(this)}},oI=class extends EI{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}caseExpression(){return this.getRuleContext(0,ou)}accept(t){return t.visitC_expr_case?t.visitC_expr_case(this):t.visitChildren(this)}},RI=class extends EI{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ARRAY(){return this.getToken(cn.ARRAY,0)}selectWithParenthesis(){return this.getRuleContext(0,cl)}arrayExpression(){return this.getRuleContext(0,$I)}PARAM(){return this.getToken(cn.PARAM,0)}optionalIndirection(){return this.getRuleContext(0,Nu)}GROUPING(){return this.getToken(cn.GROUPING,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}UNIQUE(){return this.getToken(cn.UNIQUE,0)}columnReference(){return this.getRuleContext(0,Ou)}aExpressionConst(){return this.getRuleContext(0,bu)}plsqlVariableName(){return this.getRuleContext(0,AI)}expression1(){return this.getRuleContext(0,wO)}functionExpression(){return this.getRuleContext(0,lI)}indirection(){return this.getRuleContext(0,uu)}explicitRow(){return this.getRuleContext(0,wI)}implicitRow(){return this.getRuleContext(0,bI)}row(t){return void 0===t?this.getRuleContexts(YI):this.getRuleContext(t,YI)}OVERLAPS(){return this.getToken(cn.OVERLAPS,0)}accept(t){return t.visitC_expr_expr?t.visitC_expr_expr(this):t.visitChildren(this)}},AI=class extends ga{constructor(t,e){super(t,e)}PLSQLVARIABLENAME(){return this.getToken(cn.PLSQLVARIABLENAME,0)}get ruleIndex(){return cn.RULE_plsqlVariableName}accept(t){return t.visitPlsqlVariableName?t.visitPlsqlVariableName(this):t.visitChildren(this)}},SI=class extends ga{constructor(t,e){super(t,e)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}functionArgumentList(){return this.getRuleContext(0,qI)}optionalSortClause(){return this.getRuleContext(0,Cl)}VARIADIC(){return this.getToken(cn.VARIADIC,0)}functionArgumentExpression(){return this.getRuleContext(0,jI)}STAR(){return this.getToken(cn.STAR,0)}ALL(){return this.getToken(cn.ALL,0)}DISTINCT(){return this.getToken(cn.DISTINCT,0)}COMMA(){return this.getToken(cn.COMMA,0)}get ruleIndex(){return cn.RULE_functionApplication}accept(t){return t.visitFunctionApplication?t.visitFunctionApplication(this):t.visitChildren(this)}},lI=class extends ga{constructor(t,e){super(t,e)}functionApplication(){return this.getRuleContext(0,SI)}withinGroupClause(){return this.getRuleContext(0,mI)}filterClause(){return this.getRuleContext(0,DI)}overClause(){return this.getRuleContext(0,kI)}functionExpressionCommonSubexpr(){return this.getRuleContext(0,II)}get ruleIndex(){return cn.RULE_functionExpression}accept(t){return t.visitFunctionExpression?t.visitFunctionExpression(this):t.visitChildren(this)}},OI=class extends ga{constructor(t,e){super(t,e)}functionApplication(){return this.getRuleContext(0,SI)}functionExpressionCommonSubexpr(){return this.getRuleContext(0,II)}get ruleIndex(){return cn.RULE_functionExpressionWindowless}accept(t){return t.visitFunctionExpressionWindowless?t.visitFunctionExpressionWindowless(this):t.visitChildren(this)}},II=class extends ga{constructor(t,e){super(t,e)}COLLATION(){return this.getToken(cn.COLLATION,0)}FOR(){return this.getToken(cn.FOR,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}CURRENT_DATE(){return this.getToken(cn.CURRENT_DATE,0)}CURRENT_TIME(){return this.getToken(cn.CURRENT_TIME,0)}iconst(){return this.getRuleContext(0,Ku)}CURRENT_TIMESTAMP(){return this.getToken(cn.CURRENT_TIMESTAMP,0)}LOCALTIME(){return this.getToken(cn.LOCALTIME,0)}LOCALTIMESTAMP(){return this.getToken(cn.LOCALTIMESTAMP,0)}CURRENT_ROLE(){return this.getToken(cn.CURRENT_ROLE,0)}CURRENT_USER(){return this.getToken(cn.CURRENT_USER,0)}SESSION_USER(){return this.getToken(cn.SESSION_USER,0)}USER(){return this.getToken(cn.USER,0)}CURRENT_CATALOG(){return this.getToken(cn.CURRENT_CATALOG,0)}CURRENT_SCHEMA(){return this.getToken(cn.CURRENT_SCHEMA,0)}CAST(){return this.getToken(cn.CAST,0)}AS(){return this.getToken(cn.AS,0)}typeName(){return this.getRuleContext(0,LO)}EXTRACT(){return this.getToken(cn.EXTRACT,0)}extractList(){return this.getRuleContext(0,eu)}NORMALIZE(){return this.getToken(cn.NORMALIZE,0)}COMMA(){return this.getToken(cn.COMMA,0)}unicodeNormalForm(){return this.getRuleContext(0,au)}OVERLAY(){return this.getToken(cn.OVERLAY,0)}overlayList(){return this.getRuleContext(0,ru)}POSITION(){return this.getToken(cn.POSITION,0)}positionList(){return this.getRuleContext(0,iu)}SUBSTRING(){return this.getToken(cn.SUBSTRING,0)}substrList(){return this.getRuleContext(0,cu)}TREAT(){return this.getToken(cn.TREAT,0)}TRIM(){return this.getToken(cn.TRIM,0)}trimList(){return this.getRuleContext(0,nu)}BOTH(){return this.getToken(cn.BOTH,0)}LEADING(){return this.getToken(cn.LEADING,0)}TRAILING(){return this.getToken(cn.TRAILING,0)}NULLIF(){return this.getToken(cn.NULLIF,0)}COALESCE(){return this.getToken(cn.COALESCE,0)}expressionList(){return this.getRuleContext(0,ZI)}GREATEST(){return this.getToken(cn.GREATEST,0)}LEAST(){return this.getToken(cn.LEAST,0)}XMLCONCAT(){return this.getToken(cn.XMLCONCAT,0)}XMLELEMENT(){return this.getToken(cn.XMLELEMENT,0)}NAME_P(){return this.getToken(cn.NAME_P,0)}columnLabel(){return this.getRuleContext(0,aN)}xmlAttributes(){return this.getRuleContext(0,LI)}XMLEXISTS(){return this.getToken(cn.XMLEXISTS,0)}expression3(){return this.getRuleContext(0,EI)}xmlExistsArgument(){return this.getRuleContext(0,dI)}XMLFOREST(){return this.getToken(cn.XMLFOREST,0)}xmlAttributeList(){return this.getRuleContext(0,CI)}XMLPARSE(){return this.getToken(cn.XMLPARSE,0)}documentOrContent(){return this.getRuleContext(0,PI)}xmlWhitespaceOption(){return this.getRuleContext(0,MI)}XMLPI(){return this.getToken(cn.XMLPI,0)}XMLROOT(){return this.getToken(cn.XMLROOT,0)}XML_P(){return this.getToken(cn.XML_P,0)}xmlRootVersion(){return this.getRuleContext(0,uI)}optionalXmlRootStandalone(){return this.getRuleContext(0,NI)}XMLSERIALIZE(){return this.getToken(cn.XMLSERIALIZE,0)}simpleTypeName(){return this.getRuleContext(0,CO)}get ruleIndex(){return cn.RULE_functionExpressionCommonSubexpr}accept(t){return t.visitFunctionExpressionCommonSubexpr?t.visitFunctionExpressionCommonSubexpr(this):t.visitChildren(this)}},uI=class extends ga{constructor(t,e){super(t,e)}VERSION_P(){return this.getToken(cn.VERSION_P,0)}expression1(){return this.getRuleContext(0,wO)}NO(){return this.getToken(cn.NO,0)}VALUE_P(){return this.getToken(cn.VALUE_P,0)}get ruleIndex(){return cn.RULE_xmlRootVersion}accept(t){return t.visitXmlRootVersion?t.visitXmlRootVersion(this):t.visitChildren(this)}},NI=class extends ga{constructor(t,e){super(t,e)}COMMA(){return this.getToken(cn.COMMA,0)}STANDALONE_P(){return this.getToken(cn.STANDALONE_P,0)}YES_P(){return this.getToken(cn.YES_P,0)}NO(){return this.getToken(cn.NO,0)}VALUE_P(){return this.getToken(cn.VALUE_P,0)}get ruleIndex(){return cn.RULE_optionalXmlRootStandalone}accept(t){return t.visitOptionalXmlRootStandalone?t.visitOptionalXmlRootStandalone(this):t.visitChildren(this)}},LI=class extends ga{constructor(t,e){super(t,e)}XMLATTRIBUTES(){return this.getToken(cn.XMLATTRIBUTES,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}xmlAttributeList(){return this.getRuleContext(0,CI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_xmlAttributes}accept(t){return t.visitXmlAttributes?t.visitXmlAttributes(this):t.visitChildren(this)}},CI=class extends ga{constructor(t,e){super(t,e)}xmlAttributeElement(t){return void 0===t?this.getRuleContexts(_I):this.getRuleContext(t,_I)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_xmlAttributeList}accept(t){return t.visitXmlAttributeList?t.visitXmlAttributeList(this):t.visitChildren(this)}},_I=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}AS(){return this.getToken(cn.AS,0)}columnLabel(){return this.getRuleContext(0,aN)}get ruleIndex(){return cn.RULE_xmlAttributeElement}accept(t){return t.visitXmlAttributeElement?t.visitXmlAttributeElement(this):t.visitChildren(this)}},PI=class extends ga{constructor(t,e){super(t,e)}DOCUMENT_P(){return this.getToken(cn.DOCUMENT_P,0)}CONTENT_P(){return this.getToken(cn.CONTENT_P,0)}get ruleIndex(){return cn.RULE_documentOrContent}accept(t){return t.visitDocumentOrContent?t.visitDocumentOrContent(this):t.visitChildren(this)}},MI=class extends ga{constructor(t,e){super(t,e)}PRESERVE(){return this.getToken(cn.PRESERVE,0)}WHITESPACE_P(){return this.getToken(cn.WHITESPACE_P,0)}STRIP_P(){return this.getToken(cn.STRIP_P,0)}get ruleIndex(){return cn.RULE_xmlWhitespaceOption}accept(t){return t.visitXmlWhitespaceOption?t.visitXmlWhitespaceOption(this):t.visitChildren(this)}},dI=class extends ga{constructor(t,e){super(t,e)}PASSING(){return this.getToken(cn.PASSING,0)}expression3(){return this.getRuleContext(0,EI)}xmlPassingMech(t){return void 0===t?this.getRuleContexts(UI):this.getRuleContext(t,UI)}get ruleIndex(){return cn.RULE_xmlExistsArgument}accept(t){return t.visitXmlExistsArgument?t.visitXmlExistsArgument(this):t.visitChildren(this)}},UI=class extends ga{constructor(t,e){super(t,e)}BY(){return this.getToken(cn.BY,0)}REF(){return this.getToken(cn.REF,0)}VALUE_P(){return this.getToken(cn.VALUE_P,0)}get ruleIndex(){return cn.RULE_xmlPassingMech}accept(t){return t.visitXmlPassingMech?t.visitXmlPassingMech(this):t.visitChildren(this)}},mI=class extends ga{constructor(t,e){super(t,e)}WITHIN(){return this.getToken(cn.WITHIN,0)}GROUP_P(){return this.getToken(cn.GROUP_P,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}sortClause(){return this.getRuleContext(0,_l)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_withinGroupClause}accept(t){return t.visitWithinGroupClause?t.visitWithinGroupClause(this):t.visitChildren(this)}},DI=class extends ga{constructor(t,e){super(t,e)}FILTER(){return this.getToken(cn.FILTER,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}WHERE(){return this.getToken(cn.WHERE,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_filterClause}accept(t){return t.visitFilterClause?t.visitFilterClause(this):t.visitChildren(this)}},pI=class extends ga{constructor(t,e){super(t,e)}WINDOW(){return this.getToken(cn.WINDOW,0)}windowDefinitionList(){return this.getRuleContext(0,gI)}get ruleIndex(){return cn.RULE_windowClause}accept(t){return t.visitWindowClause?t.visitWindowClause(this):t.visitChildren(this)}},gI=class extends ga{constructor(t,e){super(t,e)}windowDefinition(t){return void 0===t?this.getRuleContexts(xI):this.getRuleContext(t,xI)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_windowDefinitionList}accept(t){return t.visitWindowDefinitionList?t.visitWindowDefinitionList(this):t.visitChildren(this)}},xI=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}AS(){return this.getToken(cn.AS,0)}windowSpecification(){return this.getRuleContext(0,HI)}get ruleIndex(){return cn.RULE_windowDefinition}accept(t){return t.visitWindowDefinition?t.visitWindowDefinition(this):t.visitChildren(this)}},kI=class extends ga{constructor(t,e){super(t,e)}OVER(){return this.getToken(cn.OVER,0)}windowSpecification(){return this.getRuleContext(0,HI)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_overClause}accept(t){return t.visitOverClause?t.visitOverClause(this):t.visitChildren(this)}},HI=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}optionalExistingWindowName(){return this.getRuleContext(0,GI)}optionalPartitionClause(){return this.getRuleContext(0,FI)}optionalSortClause(){return this.getRuleContext(0,Cl)}optionalFrameClause(){return this.getRuleContext(0,vI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_windowSpecification}accept(t){return t.visitWindowSpecification?t.visitWindowSpecification(this):t.visitChildren(this)}},GI=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_optionalExistingWindowName}accept(t){return t.visitOptionalExistingWindowName?t.visitOptionalExistingWindowName(this):t.visitChildren(this)}},FI=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(cn.PARTITION,0)}BY(){return this.getToken(cn.BY,0)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_optionalPartitionClause}accept(t){return t.visitOptionalPartitionClause?t.visitOptionalPartitionClause(this):t.visitChildren(this)}},vI=class extends ga{constructor(t,e){super(t,e)}RANGE(){return this.getToken(cn.RANGE,0)}frameExtent(){return this.getRuleContext(0,BI)}optionalWindowExclusionClause(){return this.getRuleContext(0,fI)}ROWS(){return this.getToken(cn.ROWS,0)}GROUPS(){return this.getToken(cn.GROUPS,0)}get ruleIndex(){return cn.RULE_optionalFrameClause}accept(t){return t.visitOptionalFrameClause?t.visitOptionalFrameClause(this):t.visitChildren(this)}},BI=class extends ga{constructor(t,e){super(t,e)}frameBound(t){return void 0===t?this.getRuleContexts(yI):this.getRuleContext(t,yI)}BETWEEN(){return this.getToken(cn.BETWEEN,0)}AND(){return this.getToken(cn.AND,0)}get ruleIndex(){return cn.RULE_frameExtent}accept(t){return t.visitFrameExtent?t.visitFrameExtent(this):t.visitChildren(this)}},yI=class extends ga{constructor(t,e){super(t,e)}UNBOUNDED(){return this.getToken(cn.UNBOUNDED,0)}PRECEDING(){return this.getToken(cn.PRECEDING,0)}FOLLOWING(){return this.getToken(cn.FOLLOWING,0)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}ROW(){return this.getToken(cn.ROW,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_frameBound}accept(t){return t.visitFrameBound?t.visitFrameBound(this):t.visitChildren(this)}},fI=class extends ga{constructor(t,e){super(t,e)}EXCLUDE(){return this.getToken(cn.EXCLUDE,0)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}ROW(){return this.getToken(cn.ROW,0)}GROUP_P(){return this.getToken(cn.GROUP_P,0)}TIES(){return this.getToken(cn.TIES,0)}NO(){return this.getToken(cn.NO,0)}OTHERS(){return this.getToken(cn.OTHERS,0)}get ruleIndex(){return cn.RULE_optionalWindowExclusionClause}accept(t){return t.visitOptionalWindowExclusionClause?t.visitOptionalWindowExclusionClause(this):t.visitChildren(this)}},YI=class extends ga{constructor(t,e){super(t,e)}ROW(){return this.getToken(cn.ROW,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}COMMA(){return this.getToken(cn.COMMA,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_row}accept(t){return t.visitRow?t.visitRow(this):t.visitChildren(this)}},wI=class extends ga{constructor(t,e){super(t,e)}ROW(){return this.getToken(cn.ROW,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_explicitRow}accept(t){return t.visitExplicitRow?t.visitExplicitRow(this):t.visitChildren(this)}},bI=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}COMMA(){return this.getToken(cn.COMMA,0)}expression1(){return this.getRuleContext(0,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_implicitRow}accept(t){return t.visitImplicitRow?t.visitImplicitRow(this):t.visitChildren(this)}},WI=class extends ga{constructor(t,e){super(t,e)}ANY(){return this.getToken(cn.ANY,0)}SOME(){return this.getToken(cn.SOME,0)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_subType}accept(t){return t.visitSubType?t.visitSubType(this):t.visitChildren(this)}},VI=class extends ga{constructor(t,e){super(t,e)}Operator(){return this.getToken(cn.Operator,0)}mathOperator(){return this.getRuleContext(0,XI)}get ruleIndex(){return cn.RULE_allOperator}accept(t){return t.visitAllOperator?t.visitAllOperator(this):t.visitChildren(this)}},XI=class extends ga{constructor(t,e){super(t,e)}PLUS(){return this.getToken(cn.PLUS,0)}MINUS(){return this.getToken(cn.MINUS,0)}STAR(){return this.getToken(cn.STAR,0)}SLASH(){return this.getToken(cn.SLASH,0)}PERCENT(){return this.getToken(cn.PERCENT,0)}CARET(){return this.getToken(cn.CARET,0)}LT(){return this.getToken(cn.LT,0)}GT(){return this.getToken(cn.GT,0)}EQUAL(){return this.getToken(cn.EQUAL,0)}LESS_EQUALS(){return this.getToken(cn.LESS_EQUALS,0)}GREATER_EQUALS(){return this.getToken(cn.GREATER_EQUALS,0)}NOT_EQUALS(){return this.getToken(cn.NOT_EQUALS,0)}get ruleIndex(){return cn.RULE_mathOperator}accept(t){return t.visitMathOperator?t.visitMathOperator(this):t.visitChildren(this)}},KI=class extends ga{constructor(t,e){super(t,e)}Operator(){return this.getToken(cn.Operator,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}anyOperator(){return this.getRuleContext(0,WR)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_operatorQualifier}accept(t){return t.visitOperatorQualifier?t.visitOperatorQualifier(this):t.visitChildren(this)}},QI=class extends ga{constructor(t,e){super(t,e)}allOperator(){return this.getRuleContext(0,VI)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}anyOperator(){return this.getRuleContext(0,WR)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_allOperatorQualifier}accept(t){return t.visitAllOperatorQualifier?t.visitAllOperatorQualifier(this):t.visitChildren(this)}},JI=class extends ga{constructor(t,e){super(t,e)}allOperator(){return this.getRuleContext(0,VI)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}anyOperator(){return this.getRuleContext(0,WR)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}LIKE(){return this.getToken(cn.LIKE,0)}NOT(){return this.getToken(cn.NOT,0)}ILIKE(){return this.getToken(cn.ILIKE,0)}get ruleIndex(){return cn.RULE_subqueryOperator}accept(t){return t.visitSubqueryOperator?t.visitSubqueryOperator(this):t.visitChildren(this)}},ZI=class extends ga{constructor(t,e){super(t,e)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_expressionList}accept(t){return t.visitExpressionList?t.visitExpressionList(this):t.visitChildren(this)}},qI=class extends ga{constructor(t,e){super(t,e)}functionArgumentExpression(t){return void 0===t?this.getRuleContexts(jI):this.getRuleContext(t,jI)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_functionArgumentList}accept(t){return t.visitFunctionArgumentList?t.visitFunctionArgumentList(this):t.visitChildren(this)}},jI=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}parameterName(){return this.getRuleContext(0,PR)}COLON_EQUALS(){return this.getToken(cn.COLON_EQUALS,0)}EQUALS_GREATER(){return this.getToken(cn.EQUALS_GREATER,0)}get ruleIndex(){return cn.RULE_functionArgumentExpression}accept(t){return t.visitFunctionArgumentExpression?t.visitFunctionArgumentExpression(this):t.visitChildren(this)}},zI=class extends ga{constructor(t,e){super(t,e)}typeName(t){return void 0===t?this.getRuleContexts(LO):this.getRuleContext(t,LO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_typeList}accept(t){return t.visitTypeList?t.visitTypeList(this):t.visitChildren(this)}},$I=class extends ga{constructor(t,e){super(t,e)}OPEN_BRACKET(){return this.getToken(cn.OPEN_BRACKET,0)}CLOSE_BRACKET(){return this.getToken(cn.CLOSE_BRACKET,0)}expressionList(){return this.getRuleContext(0,ZI)}arrayExpressionList(){return this.getRuleContext(0,tu)}get ruleIndex(){return cn.RULE_arrayExpression}accept(t){return t.visitArrayExpression?t.visitArrayExpression(this):t.visitChildren(this)}},tu=class extends ga{constructor(t,e){super(t,e)}arrayExpression(t){return void 0===t?this.getRuleContexts($I):this.getRuleContext(t,$I)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_arrayExpressionList}accept(t){return t.visitArrayExpressionList?t.visitArrayExpressionList(this):t.visitChildren(this)}},eu=class extends ga{constructor(t,e){super(t,e)}extractArgument(){return this.getRuleContext(0,su)}FROM(){return this.getToken(cn.FROM,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_extractList}accept(t){return t.visitExtractList?t.visitExtractList(this):t.visitChildren(this)}},su=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}YEAR_P(){return this.getToken(cn.YEAR_P,0)}MONTH_P(){return this.getToken(cn.MONTH_P,0)}DAY_P(){return this.getToken(cn.DAY_P,0)}HOUR_P(){return this.getToken(cn.HOUR_P,0)}MINUTE_P(){return this.getToken(cn.MINUTE_P,0)}SECOND_P(){return this.getToken(cn.SECOND_P,0)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_extractArgument}accept(t){return t.visitExtractArgument?t.visitExtractArgument(this):t.visitChildren(this)}},au=class extends ga{constructor(t,e){super(t,e)}NFC(){return this.getToken(cn.NFC,0)}NFD(){return this.getToken(cn.NFD,0)}NFKC(){return this.getToken(cn.NFKC,0)}NFKD(){return this.getToken(cn.NFKD,0)}get ruleIndex(){return cn.RULE_unicodeNormalForm}accept(t){return t.visitUnicodeNormalForm?t.visitUnicodeNormalForm(this):t.visitChildren(this)}},ru=class extends ga{constructor(t,e){super(t,e)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}PLACING(){return this.getToken(cn.PLACING,0)}FROM(){return this.getToken(cn.FROM,0)}FOR(){return this.getToken(cn.FOR,0)}get ruleIndex(){return cn.RULE_overlayList}accept(t){return t.visitOverlayList?t.visitOverlayList(this):t.visitChildren(this)}},iu=class extends ga{constructor(t,e){super(t,e)}expression2(t){return void 0===t?this.getRuleContexts(hI):this.getRuleContext(t,hI)}IN_P(){return this.getToken(cn.IN_P,0)}get ruleIndex(){return cn.RULE_positionList}accept(t){return t.visitPositionList?t.visitPositionList(this):t.visitChildren(this)}},cu=class extends ga{constructor(t,e){super(t,e)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}FROM(){return this.getToken(cn.FROM,0)}FOR(){return this.getToken(cn.FOR,0)}SIMILAR(){return this.getToken(cn.SIMILAR,0)}ESCAPE(){return this.getToken(cn.ESCAPE,0)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_substrList}accept(t){return t.visitSubstrList?t.visitSubstrList(this):t.visitChildren(this)}},nu=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}FROM(){return this.getToken(cn.FROM,0)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_trimList}accept(t){return t.visitTrimList?t.visitTrimList(this):t.visitChildren(this)}},hu=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return cn.RULE_inExpression}copyFrom(t){super.copyFrom(t)}},Eu=class extends hu{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expressionList(){return this.getRuleContext(0,ZI)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}accept(t){return t.visitIn_expr_list?t.visitIn_expr_list(this):t.visitChildren(this)}},Tu=class extends hu{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}selectWithParenthesis(){return this.getRuleContext(0,cl)}accept(t){return t.visitIn_expr_select?t.visitIn_expr_select(this):t.visitChildren(this)}},ou=class extends ga{constructor(t,e){super(t,e)}CASE(){return this.getToken(cn.CASE,0)}caseArg(){return this.getRuleContext(0,lu)}whenClauseList(){return this.getRuleContext(0,Ru)}caseDefault(){return this.getRuleContext(0,Su)}END_P(){return this.getToken(cn.END_P,0)}get ruleIndex(){return cn.RULE_caseExpression}accept(t){return t.visitCaseExpression?t.visitCaseExpression(this):t.visitChildren(this)}},Ru=class extends ga{constructor(t,e){super(t,e)}whenClause(t){return void 0===t?this.getRuleContexts(Au):this.getRuleContext(t,Au)}get ruleIndex(){return cn.RULE_whenClauseList}accept(t){return t.visitWhenClauseList?t.visitWhenClauseList(this):t.visitChildren(this)}},Au=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}THEN(){return this.getToken(cn.THEN,0)}get ruleIndex(){return cn.RULE_whenClause}accept(t){return t.visitWhenClause?t.visitWhenClause(this):t.visitChildren(this)}},Su=class extends ga{constructor(t,e){super(t,e)}ELSE(){return this.getToken(cn.ELSE,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_caseDefault}accept(t){return t.visitCaseDefault?t.visitCaseDefault(this):t.visitChildren(this)}},lu=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_caseArg}accept(t){return t.visitCaseArg?t.visitCaseArg(this):t.visitChildren(this)}},Ou=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}indirection(){return this.getRuleContext(0,uu)}get ruleIndex(){return cn.RULE_columnReference}accept(t){return t.visitColumnReference?t.visitColumnReference(this):t.visitChildren(this)}},Iu=class extends ga{constructor(t,e){super(t,e)}DOT(){return this.getToken(cn.DOT,0)}attributeName(){return this.getRuleContext(0,fu)}STAR(){return this.getToken(cn.STAR,0)}OPEN_BRACKET(){return this.getToken(cn.OPEN_BRACKET,0)}CLOSE_BRACKET(){return this.getToken(cn.CLOSE_BRACKET,0)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}COLON(){return this.getToken(cn.COLON,0)}get ruleIndex(){return cn.RULE_indirectionElement}accept(t){return t.visitIndirectionElement?t.visitIndirectionElement(this):t.visitChildren(this)}},uu=class extends ga{constructor(t,e){super(t,e)}indirectionElement(t){return void 0===t?this.getRuleContexts(Iu):this.getRuleContext(t,Iu)}get ruleIndex(){return cn.RULE_indirection}accept(t){return t.visitIndirection?t.visitIndirection(this):t.visitChildren(this)}},Nu=class extends ga{constructor(t,e){super(t,e)}indirectionElement(t){return void 0===t?this.getRuleContexts(Iu):this.getRuleContext(t,Iu)}get ruleIndex(){return cn.RULE_optionalIndirection}accept(t){return t.visitOptionalIndirection?t.visitOptionalIndirection(this):t.visitChildren(this)}},Lu=class extends ga{constructor(t,e){super(t,e)}targetList(){return this.getRuleContext(0,Cu)}get ruleIndex(){return cn.RULE_optionalTargetList}accept(t){return t.visitOptionalTargetList?t.visitOptionalTargetList(this):t.visitChildren(this)}},Cu=class extends ga{constructor(t,e){super(t,e)}targetElement(t){return void 0===t?this.getRuleContexts(_u):this.getRuleContext(t,_u)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_targetList}accept(t){return t.visitTargetList?t.visitTargetList(this):t.visitChildren(this)}},_u=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return cn.RULE_targetElement}copyFrom(t){super.copyFrom(t)}},Pu=class extends _u{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STAR(){return this.getToken(cn.STAR,0)}accept(t){return t.visitTarget_star?t.visitTarget_star(this):t.visitChildren(this)}},Mu=class extends _u{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}expression1(){return this.getRuleContext(0,wO)}AS(){return this.getToken(cn.AS,0)}columnLabel(){return this.getRuleContext(0,aN)}identifier(){return this.getRuleContext(0,rN)}accept(t){return t.visitTarget_label?t.visitTarget_label(this):t.visitChildren(this)}},du=class extends ga{constructor(t,e){super(t,e)}qualifiedName(t){return void 0===t?this.getRuleContexts(vu):this.getRuleContext(t,vu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_qualifiedNameList}accept(t){return t.visitQualifiedNameList?t.visitQualifiedNameList(this):t.visitChildren(this)}},Uu=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_databaseName}accept(t){return t.visitDatabaseName?t.visitDatabaseName(this):t.visitChildren(this)}},mu=class extends ga{constructor(t,e){super(t,e)}databaseName(t){return void 0===t?this.getRuleContexts(Uu):this.getRuleContext(t,Uu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_databaseNameList}accept(t){return t.visitDatabaseNameList?t.visitDatabaseNameList(this):t.visitChildren(this)}},Du=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_schemaName}accept(t){return t.visitSchemaName?t.visitSchemaName(this):t.visitChildren(this)}},pu=class extends ga{constructor(t,e){super(t,e)}schemaName(t){return void 0===t?this.getRuleContexts(Du):this.getRuleContext(t,Du)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_schemaNameList}accept(t){return t.visitSchemaNameList?t.visitSchemaNameList(this):t.visitChildren(this)}},gu=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}get ruleIndex(){return cn.RULE_indexName}accept(t){return t.visitIndexName?t.visitIndexName(this):t.visitChildren(this)}},xu=class extends ga{constructor(t,e){super(t,e)}indexName(t){return void 0===t?this.getRuleContexts(gu):this.getRuleContext(t,gu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_indexNameList}accept(t){return t.visitIndexNameList?t.visitIndexNameList(this):t.visitChildren(this)}},ku=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_triggerName}accept(t){return t.visitTriggerName?t.visitTriggerName(this):t.visitChildren(this)}},Hu=class extends ga{constructor(t,e){super(t,e)}name(){return this.getRuleContext(0,yu)}get ruleIndex(){return cn.RULE_constraintName}accept(t){return t.visitConstraintName?t.visitConstraintName(this):t.visitChildren(this)}},Gu=class extends ga{constructor(t,e){super(t,e)}qualifiedName(){return this.getRuleContext(0,vu)}get ruleIndex(){return cn.RULE_sequenceName}accept(t){return t.visitSequenceName?t.visitSequenceName(this):t.visitChildren(this)}},Fu=class extends ga{constructor(t,e){super(t,e)}sequenceName(t){return void 0===t?this.getRuleContexts(Gu):this.getRuleContext(t,Gu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_sequenceNameList}accept(t){return t.visitSequenceNameList?t.visitSequenceNameList(this):t.visitChildren(this)}},vu=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}indirection(){return this.getRuleContext(0,uu)}get ruleIndex(){return cn.RULE_qualifiedName}accept(t){return t.visitQualifiedName?t.visitQualifiedName(this):t.visitChildren(this)}},Bu=class extends ga{constructor(t,e){super(t,e)}name(t){return void 0===t?this.getRuleContexts(yu):this.getRuleContext(t,yu)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_nameList}accept(t){return t.visitNameList?t.visitNameList(this):t.visitChildren(this)}},yu=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_name}accept(t){return t.visitName?t.visitName(this):t.visitChildren(this)}},fu=class extends ga{constructor(t,e){super(t,e)}columnLabel(){return this.getRuleContext(0,aN)}get ruleIndex(){return cn.RULE_attributeName}accept(t){return t.visitAttributeName?t.visitAttributeName(this):t.visitChildren(this)}},Yu=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_fileName}accept(t){return t.visitFileName?t.visitFileName(this):t.visitChildren(this)}},wu=class extends ga{constructor(t,e){super(t,e)}builtinFunctionName(){return this.getRuleContext(0,TN)}typeFunctionName(){return this.getRuleContext(0,eN)}columnId(){return this.getRuleContext(0,$u)}indirection(){return this.getRuleContext(0,uu)}LEFT(){return this.getToken(cn.LEFT,0)}RIGHT(){return this.getToken(cn.RIGHT,0)}get ruleIndex(){return cn.RULE_functionName}accept(t){return t.visitFunctionName?t.visitFunctionName(this):t.visitChildren(this)}},bu=class extends ga{constructor(t,e){super(t,e)}iconst(){return this.getRuleContext(0,Ku)}fconst(){return this.getRuleContext(0,Xu)}sconst(){return this.getRuleContext(0,Qu)}bconst(){return this.getRuleContext(0,Vu)}xconst(){return this.getRuleContext(0,Wu)}functionName(){return this.getRuleContext(0,wu)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}functionArgumentList(){return this.getRuleContext(0,qI)}optionalSortClause(){return this.getRuleContext(0,Cl)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}constTypeName(){return this.getRuleContext(0,_O)}constInterval(){return this.getRuleContext(0,vO)}optionalInterval(){return this.getRuleContext(0,yO)}TRUE_P(){return this.getToken(cn.TRUE_P,0)}FALSE_P(){return this.getToken(cn.FALSE_P,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}get ruleIndex(){return cn.RULE_aExpressionConst}accept(t){return t.visitAExpressionConst?t.visitAExpressionConst(this):t.visitChildren(this)}},Wu=class extends ga{constructor(t,e){super(t,e)}HexadecimalStringConstant(){return this.getToken(cn.HexadecimalStringConstant,0)}get ruleIndex(){return cn.RULE_xconst}accept(t){return t.visitXconst?t.visitXconst(this):t.visitChildren(this)}},Vu=class extends ga{constructor(t,e){super(t,e)}BinaryStringConstant(){return this.getToken(cn.BinaryStringConstant,0)}get ruleIndex(){return cn.RULE_bconst}accept(t){return t.visitBconst?t.visitBconst(this):t.visitChildren(this)}},Xu=class extends ga{constructor(t,e){super(t,e)}Numeric(){return this.getToken(cn.Numeric,0)}get ruleIndex(){return cn.RULE_fconst}accept(t){return t.visitFconst?t.visitFconst(this):t.visitChildren(this)}},Ku=class extends ga{constructor(t,e){super(t,e)}Integral(){return this.getToken(cn.Integral,0)}get ruleIndex(){return cn.RULE_iconst}accept(t){return t.visitIconst?t.visitIconst(this):t.visitChildren(this)}},Qu=class extends ga{constructor(t,e){super(t,e)}anySconst(){return this.getRuleContext(0,Ju)}optionalUescape(){return this.getRuleContext(0,Zu)}get ruleIndex(){return cn.RULE_sconst}accept(t){return t.visitSconst?t.visitSconst(this):t.visitChildren(this)}},Ju=class extends ga{constructor(t,e){super(t,e)}StringConstant(){return this.getToken(cn.StringConstant,0)}UnicodeEscapeStringConstant(){return this.getToken(cn.UnicodeEscapeStringConstant,0)}BeginDollarStringConstant(){return this.getToken(cn.BeginDollarStringConstant,0)}EndDollarStringConstant(){return this.getToken(cn.EndDollarStringConstant,0)}DollarText(t){return void 0===t?this.getTokens(cn.DollarText):this.getToken(cn.DollarText,t)}EscapeStringConstant(){return this.getToken(cn.EscapeStringConstant,0)}get ruleIndex(){return cn.RULE_anySconst}accept(t){return t.visitAnySconst?t.visitAnySconst(this):t.visitChildren(this)}},Zu=class extends ga{constructor(t,e){super(t,e)}UESCAPE(){return this.getToken(cn.UESCAPE,0)}anySconst(){return this.getRuleContext(0,Ju)}get ruleIndex(){return cn.RULE_optionalUescape}accept(t){return t.visitOptionalUescape?t.visitOptionalUescape(this):t.visitChildren(this)}},qu=class extends ga{constructor(t,e){super(t,e)}iconst(){return this.getRuleContext(0,Ku)}PLUS(){return this.getToken(cn.PLUS,0)}MINUS(){return this.getToken(cn.MINUS,0)}get ruleIndex(){return cn.RULE_signedIconst}accept(t){return t.visitSignedIconst?t.visitSignedIconst(this):t.visitChildren(this)}},ju=class extends ga{constructor(t,e){super(t,e)}nonReservedWord(){return this.getRuleContext(0,sN)}CURRENT_USER(){return this.getToken(cn.CURRENT_USER,0)}SESSION_USER(){return this.getToken(cn.SESSION_USER,0)}get ruleIndex(){return cn.RULE_roleName}accept(t){return t.visitRoleName?t.visitRoleName(this):t.visitChildren(this)}},zu=class extends ga{constructor(t,e){super(t,e)}roleName(t){return void 0===t?this.getRuleContexts(ju):this.getRuleContext(t,ju)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_roleNameList}accept(t){return t.visitRoleNameList?t.visitRoleNameList(this):t.visitChildren(this)}},$u=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}unreservedKeyword(){return this.getRuleContext(0,cN)}columnNameKeyword(){return this.getRuleContext(0,nN)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}LEFT(){return this.getToken(cn.LEFT,0)}RIGHT(){return this.getToken(cn.RIGHT,0)}get ruleIndex(){return cn.RULE_columnId}accept(t){return t.visitColumnId?t.visitColumnId(this):t.visitChildren(this)}},tN=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}unreservedKeyword(){return this.getRuleContext(0,cN)}columnNameKeyword(){return this.getRuleContext(0,nN)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}get ruleIndex(){return cn.RULE_tableAlias}accept(t){return t.visitTableAlias?t.visitTableAlias(this):t.visitChildren(this)}},eN=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}unreservedKeyword(){return this.getRuleContext(0,cN)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}typeFunctionNameKeyword(){return this.getRuleContext(0,hN)}get ruleIndex(){return cn.RULE_typeFunctionName}accept(t){return t.visitTypeFunctionName?t.visitTypeFunctionName(this):t.visitChildren(this)}},sN=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}unreservedKeyword(){return this.getRuleContext(0,cN)}columnNameKeyword(){return this.getRuleContext(0,nN)}typeFunctionNameKeyword(){return this.getRuleContext(0,hN)}get ruleIndex(){return cn.RULE_nonReservedWord}accept(t){return t.visitNonReservedWord?t.visitNonReservedWord(this):t.visitChildren(this)}},aN=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}unreservedKeyword(){return this.getRuleContext(0,cN)}columnNameKeyword(){return this.getRuleContext(0,nN)}typeFunctionNameKeyword(){return this.getRuleContext(0,hN)}reservedKeyword(){return this.getRuleContext(0,EN)}get ruleIndex(){return cn.RULE_columnLabel}accept(t){return t.visitColumnLabel?t.visitColumnLabel(this):t.visitChildren(this)}},rN=class extends ga{constructor(t,e){super(t,e)}Identifier(){return this.getToken(cn.Identifier,0)}optionalUescape(){return this.getRuleContext(0,Zu)}QuotedIdentifier(){return this.getToken(cn.QuotedIdentifier,0)}UnicodeQuotedIdentifier(){return this.getToken(cn.UnicodeQuotedIdentifier,0)}plsqlVariableName(){return this.getRuleContext(0,AI)}plsqlIdentifier(){return this.getRuleContext(0,iN)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}get ruleIndex(){return cn.RULE_identifier}accept(t){return t.visitIdentifier?t.visitIdentifier(this):t.visitChildren(this)}},iN=class extends ga{constructor(t,e){super(t,e)}PLSQLIDENTIFIER(){return this.getToken(cn.PLSQLIDENTIFIER,0)}get ruleIndex(){return cn.RULE_plsqlIdentifier}accept(t){return t.visitPlsqlIdentifier?t.visitPlsqlIdentifier(this):t.visitChildren(this)}},cN=class extends ga{constructor(t,e){super(t,e)}ABORT_P(){return this.getToken(cn.ABORT_P,0)}ABSOLUTE_P(){return this.getToken(cn.ABSOLUTE_P,0)}ACCESS(){return this.getToken(cn.ACCESS,0)}ACTION(){return this.getToken(cn.ACTION,0)}ADD_P(){return this.getToken(cn.ADD_P,0)}ADMIN(){return this.getToken(cn.ADMIN,0)}AFTER(){return this.getToken(cn.AFTER,0)}AGGREGATE(){return this.getToken(cn.AGGREGATE,0)}ALSO(){return this.getToken(cn.ALSO,0)}ALTER(){return this.getToken(cn.ALTER,0)}ALWAYS(){return this.getToken(cn.ALWAYS,0)}ASSERTION(){return this.getToken(cn.ASSERTION,0)}ASSIGNMENT(){return this.getToken(cn.ASSIGNMENT,0)}AT(){return this.getToken(cn.AT,0)}ATTACH(){return this.getToken(cn.ATTACH,0)}ATTRIBUTE(){return this.getToken(cn.ATTRIBUTE,0)}BACKWARD(){return this.getToken(cn.BACKWARD,0)}BEFORE(){return this.getToken(cn.BEFORE,0)}BEGIN_P(){return this.getToken(cn.BEGIN_P,0)}BY(){return this.getToken(cn.BY,0)}CACHE(){return this.getToken(cn.CACHE,0)}CALL(){return this.getToken(cn.CALL,0)}CALLED(){return this.getToken(cn.CALLED,0)}CASCADE(){return this.getToken(cn.CASCADE,0)}CASCADED(){return this.getToken(cn.CASCADED,0)}CATALOG(){return this.getToken(cn.CATALOG,0)}CHAIN(){return this.getToken(cn.CHAIN,0)}CHARACTERISTICS(){return this.getToken(cn.CHARACTERISTICS,0)}CHECKPOINT(){return this.getToken(cn.CHECKPOINT,0)}CLASS(){return this.getToken(cn.CLASS,0)}CLOSE(){return this.getToken(cn.CLOSE,0)}CLUSTER(){return this.getToken(cn.CLUSTER,0)}COLUMNS(){return this.getToken(cn.COLUMNS,0)}COMMENT(){return this.getToken(cn.COMMENT,0)}COMMENTS(){return this.getToken(cn.COMMENTS,0)}COMMIT(){return this.getToken(cn.COMMIT,0)}COMMITTED(){return this.getToken(cn.COMMITTED,0)}CONFIGURATION(){return this.getToken(cn.CONFIGURATION,0)}CONFLICT(){return this.getToken(cn.CONFLICT,0)}CONNECTION(){return this.getToken(cn.CONNECTION,0)}CONSTRAINTS(){return this.getToken(cn.CONSTRAINTS,0)}CONTENT_P(){return this.getToken(cn.CONTENT_P,0)}CONTINUE_P(){return this.getToken(cn.CONTINUE_P,0)}CONVERSION_P(){return this.getToken(cn.CONVERSION_P,0)}COPY(){return this.getToken(cn.COPY,0)}COST(){return this.getToken(cn.COST,0)}CSV(){return this.getToken(cn.CSV,0)}CUBE(){return this.getToken(cn.CUBE,0)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}CURSOR(){return this.getToken(cn.CURSOR,0)}CYCLE(){return this.getToken(cn.CYCLE,0)}DATA_P(){return this.getToken(cn.DATA_P,0)}DATABASE(){return this.getToken(cn.DATABASE,0)}DAY_P(){return this.getToken(cn.DAY_P,0)}DEALLOCATE(){return this.getToken(cn.DEALLOCATE,0)}DECLARE(){return this.getToken(cn.DECLARE,0)}DEFAULTS(){return this.getToken(cn.DEFAULTS,0)}DEFERRED(){return this.getToken(cn.DEFERRED,0)}DEFINER(){return this.getToken(cn.DEFINER,0)}DELETE_P(){return this.getToken(cn.DELETE_P,0)}DELIMITER(){return this.getToken(cn.DELIMITER,0)}DELIMITERS(){return this.getToken(cn.DELIMITERS,0)}DEPENDS(){return this.getToken(cn.DEPENDS,0)}DETACH(){return this.getToken(cn.DETACH,0)}DICTIONARY(){return this.getToken(cn.DICTIONARY,0)}DISABLE_P(){return this.getToken(cn.DISABLE_P,0)}DISCARD(){return this.getToken(cn.DISCARD,0)}DOCUMENT_P(){return this.getToken(cn.DOCUMENT_P,0)}DOMAIN_P(){return this.getToken(cn.DOMAIN_P,0)}DOUBLE_P(){return this.getToken(cn.DOUBLE_P,0)}DROP(){return this.getToken(cn.DROP,0)}EACH(){return this.getToken(cn.EACH,0)}ENABLE_P(){return this.getToken(cn.ENABLE_P,0)}ENCODING(){return this.getToken(cn.ENCODING,0)}ENCRYPTED(){return this.getToken(cn.ENCRYPTED,0)}ENUM_P(){return this.getToken(cn.ENUM_P,0)}ESCAPE(){return this.getToken(cn.ESCAPE,0)}EVENT(){return this.getToken(cn.EVENT,0)}EXCLUDE(){return this.getToken(cn.EXCLUDE,0)}EXCLUDING(){return this.getToken(cn.EXCLUDING,0)}EXCLUSIVE(){return this.getToken(cn.EXCLUSIVE,0)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}EXPLAIN(){return this.getToken(cn.EXPLAIN,0)}EXPRESSION(){return this.getToken(cn.EXPRESSION,0)}EXTENSION(){return this.getToken(cn.EXTENSION,0)}EXTERNAL(){return this.getToken(cn.EXTERNAL,0)}FAMILY(){return this.getToken(cn.FAMILY,0)}FILTER(){return this.getToken(cn.FILTER,0)}FIRST_P(){return this.getToken(cn.FIRST_P,0)}FOLLOWING(){return this.getToken(cn.FOLLOWING,0)}FORCE(){return this.getToken(cn.FORCE,0)}FORWARD(){return this.getToken(cn.FORWARD,0)}FUNCTION(){return this.getToken(cn.FUNCTION,0)}FUNCTIONS(){return this.getToken(cn.FUNCTIONS,0)}GENERATED(){return this.getToken(cn.GENERATED,0)}GLOBAL(){return this.getToken(cn.GLOBAL,0)}GRANTED(){return this.getToken(cn.GRANTED,0)}GROUPS(){return this.getToken(cn.GROUPS,0)}HANDLER(){return this.getToken(cn.HANDLER,0)}HEADER_P(){return this.getToken(cn.HEADER_P,0)}HOLD(){return this.getToken(cn.HOLD,0)}HOUR_P(){return this.getToken(cn.HOUR_P,0)}IDENTITY_P(){return this.getToken(cn.IDENTITY_P,0)}IF_P(){return this.getToken(cn.IF_P,0)}IMMEDIATE(){return this.getToken(cn.IMMEDIATE,0)}IMMUTABLE(){return this.getToken(cn.IMMUTABLE,0)}IMPLICIT_P(){return this.getToken(cn.IMPLICIT_P,0)}IMPORT_P(){return this.getToken(cn.IMPORT_P,0)}INCLUDE(){return this.getToken(cn.INCLUDE,0)}INCLUDING(){return this.getToken(cn.INCLUDING,0)}INCREMENT(){return this.getToken(cn.INCREMENT,0)}INDEX(){return this.getToken(cn.INDEX,0)}INDEXES(){return this.getToken(cn.INDEXES,0)}INHERIT(){return this.getToken(cn.INHERIT,0)}INHERITS(){return this.getToken(cn.INHERITS,0)}INLINE_P(){return this.getToken(cn.INLINE_P,0)}INPUT_P(){return this.getToken(cn.INPUT_P,0)}INSENSITIVE(){return this.getToken(cn.INSENSITIVE,0)}INSERT(){return this.getToken(cn.INSERT,0)}INSTEAD(){return this.getToken(cn.INSTEAD,0)}INVOKER(){return this.getToken(cn.INVOKER,0)}ISOLATION(){return this.getToken(cn.ISOLATION,0)}KEY(){return this.getToken(cn.KEY,0)}LABEL(){return this.getToken(cn.LABEL,0)}LANGUAGE(){return this.getToken(cn.LANGUAGE,0)}LARGE_P(){return this.getToken(cn.LARGE_P,0)}LAST_P(){return this.getToken(cn.LAST_P,0)}LEAKPROOF(){return this.getToken(cn.LEAKPROOF,0)}LEVEL(){return this.getToken(cn.LEVEL,0)}LISTEN(){return this.getToken(cn.LISTEN,0)}LOAD(){return this.getToken(cn.LOAD,0)}LOCAL(){return this.getToken(cn.LOCAL,0)}LOCATION(){return this.getToken(cn.LOCATION,0)}LOCK_P(){return this.getToken(cn.LOCK_P,0)}LOCKED(){return this.getToken(cn.LOCKED,0)}LOGGED(){return this.getToken(cn.LOGGED,0)}MAPPING(){return this.getToken(cn.MAPPING,0)}MATCH(){return this.getToken(cn.MATCH,0)}MATERIALIZED(){return this.getToken(cn.MATERIALIZED,0)}MAXVALUE(){return this.getToken(cn.MAXVALUE,0)}METHOD(){return this.getToken(cn.METHOD,0)}MINUTE_P(){return this.getToken(cn.MINUTE_P,0)}MINVALUE(){return this.getToken(cn.MINVALUE,0)}MODE(){return this.getToken(cn.MODE,0)}MONTH_P(){return this.getToken(cn.MONTH_P,0)}MOVE(){return this.getToken(cn.MOVE,0)}NAME_P(){return this.getToken(cn.NAME_P,0)}NAMES(){return this.getToken(cn.NAMES,0)}NEW(){return this.getToken(cn.NEW,0)}NEXT(){return this.getToken(cn.NEXT,0)}NFC(){return this.getToken(cn.NFC,0)}NFD(){return this.getToken(cn.NFD,0)}NFKC(){return this.getToken(cn.NFKC,0)}NFKD(){return this.getToken(cn.NFKD,0)}NO(){return this.getToken(cn.NO,0)}NORMALIZED(){return this.getToken(cn.NORMALIZED,0)}NOTHING(){return this.getToken(cn.NOTHING,0)}NOTIFY(){return this.getToken(cn.NOTIFY,0)}NOWAIT(){return this.getToken(cn.NOWAIT,0)}NULLS_P(){return this.getToken(cn.NULLS_P,0)}OBJECT_P(){return this.getToken(cn.OBJECT_P,0)}OF(){return this.getToken(cn.OF,0)}OFF(){return this.getToken(cn.OFF,0)}OIDS(){return this.getToken(cn.OIDS,0)}OLD(){return this.getToken(cn.OLD,0)}OPERATOR(){return this.getToken(cn.OPERATOR,0)}OPTION(){return this.getToken(cn.OPTION,0)}OPTIONS(){return this.getToken(cn.OPTIONS,0)}ORDINALITY(){return this.getToken(cn.ORDINALITY,0)}OTHERS(){return this.getToken(cn.OTHERS,0)}OVER(){return this.getToken(cn.OVER,0)}OVERRIDING(){return this.getToken(cn.OVERRIDING,0)}OWNED(){return this.getToken(cn.OWNED,0)}OWNER(){return this.getToken(cn.OWNER,0)}PARALLEL(){return this.getToken(cn.PARALLEL,0)}PARSER(){return this.getToken(cn.PARSER,0)}PARTIAL(){return this.getToken(cn.PARTIAL,0)}PARTITION(){return this.getToken(cn.PARTITION,0)}PASSING(){return this.getToken(cn.PASSING,0)}PASSWORD(){return this.getToken(cn.PASSWORD,0)}PLANS(){return this.getToken(cn.PLANS,0)}POLICY(){return this.getToken(cn.POLICY,0)}PRECEDING(){return this.getToken(cn.PRECEDING,0)}PREPARE(){return this.getToken(cn.PREPARE,0)}PREPARED(){return this.getToken(cn.PREPARED,0)}PRESERVE(){return this.getToken(cn.PRESERVE,0)}PRIOR(){return this.getToken(cn.PRIOR,0)}PRIVILEGES(){return this.getToken(cn.PRIVILEGES,0)}PROCEDURAL(){return this.getToken(cn.PROCEDURAL,0)}PROCEDURE(){return this.getToken(cn.PROCEDURE,0)}PROCEDURES(){return this.getToken(cn.PROCEDURES,0)}PROGRAM(){return this.getToken(cn.PROGRAM,0)}PUBLICATION(){return this.getToken(cn.PUBLICATION,0)}QUOTE(){return this.getToken(cn.QUOTE,0)}RANGE(){return this.getToken(cn.RANGE,0)}READ(){return this.getToken(cn.READ,0)}REASSIGN(){return this.getToken(cn.REASSIGN,0)}RECHECK(){return this.getToken(cn.RECHECK,0)}RECURSIVE(){return this.getToken(cn.RECURSIVE,0)}REF(){return this.getToken(cn.REF,0)}REFERENCING(){return this.getToken(cn.REFERENCING,0)}REFRESH(){return this.getToken(cn.REFRESH,0)}REINDEX(){return this.getToken(cn.REINDEX,0)}RELATIVE_P(){return this.getToken(cn.RELATIVE_P,0)}RELEASE(){return this.getToken(cn.RELEASE,0)}RENAME(){return this.getToken(cn.RENAME,0)}REPEATABLE(){return this.getToken(cn.REPEATABLE,0)}REPLICA(){return this.getToken(cn.REPLICA,0)}RESET(){return this.getToken(cn.RESET,0)}RESTART(){return this.getToken(cn.RESTART,0)}RESTRICT(){return this.getToken(cn.RESTRICT,0)}RETURNS(){return this.getToken(cn.RETURNS,0)}REVOKE(){return this.getToken(cn.REVOKE,0)}ROLE(){return this.getToken(cn.ROLE,0)}ROLLBACK(){return this.getToken(cn.ROLLBACK,0)}ROLLUP(){return this.getToken(cn.ROLLUP,0)}ROUTINE(){return this.getToken(cn.ROUTINE,0)}ROUTINES(){return this.getToken(cn.ROUTINES,0)}ROWS(){return this.getToken(cn.ROWS,0)}RULE(){return this.getToken(cn.RULE,0)}SAVEPOINT(){return this.getToken(cn.SAVEPOINT,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}SCHEMAS(){return this.getToken(cn.SCHEMAS,0)}SCROLL(){return this.getToken(cn.SCROLL,0)}SEARCH(){return this.getToken(cn.SEARCH,0)}SECOND_P(){return this.getToken(cn.SECOND_P,0)}SECURITY(){return this.getToken(cn.SECURITY,0)}SEQUENCE(){return this.getToken(cn.SEQUENCE,0)}SEQUENCES(){return this.getToken(cn.SEQUENCES,0)}SERIALIZABLE(){return this.getToken(cn.SERIALIZABLE,0)}SERVER(){return this.getToken(cn.SERVER,0)}SESSION(){return this.getToken(cn.SESSION,0)}SET(){return this.getToken(cn.SET,0)}SETS(){return this.getToken(cn.SETS,0)}SHARE(){return this.getToken(cn.SHARE,0)}SHOW(){return this.getToken(cn.SHOW,0)}SIMPLE(){return this.getToken(cn.SIMPLE,0)}SKIP_P(){return this.getToken(cn.SKIP_P,0)}SNAPSHOT(){return this.getToken(cn.SNAPSHOT,0)}SQL_P(){return this.getToken(cn.SQL_P,0)}STABLE(){return this.getToken(cn.STABLE,0)}STANDALONE_P(){return this.getToken(cn.STANDALONE_P,0)}START(){return this.getToken(cn.START,0)}STATEMENT(){return this.getToken(cn.STATEMENT,0)}STATISTICS(){return this.getToken(cn.STATISTICS,0)}STDIN(){return this.getToken(cn.STDIN,0)}STDOUT(){return this.getToken(cn.STDOUT,0)}STORAGE(){return this.getToken(cn.STORAGE,0)}STORED(){return this.getToken(cn.STORED,0)}STRICT_P(){return this.getToken(cn.STRICT_P,0)}STRIP_P(){return this.getToken(cn.STRIP_P,0)}SUBSCRIPTION(){return this.getToken(cn.SUBSCRIPTION,0)}SUPPORT(){return this.getToken(cn.SUPPORT,0)}SYSID(){return this.getToken(cn.SYSID,0)}SYSTEM_P(){return this.getToken(cn.SYSTEM_P,0)}TABLES(){return this.getToken(cn.TABLES,0)}TABLESPACE(){return this.getToken(cn.TABLESPACE,0)}TEMP(){return this.getToken(cn.TEMP,0)}TEMPLATE(){return this.getToken(cn.TEMPLATE,0)}TEMPORARY(){return this.getToken(cn.TEMPORARY,0)}TEXT_P(){return this.getToken(cn.TEXT_P,0)}TIES(){return this.getToken(cn.TIES,0)}TRANSACTION(){return this.getToken(cn.TRANSACTION,0)}TRANSFORM(){return this.getToken(cn.TRANSFORM,0)}TRIGGER(){return this.getToken(cn.TRIGGER,0)}TRUNCATE(){return this.getToken(cn.TRUNCATE,0)}TRUSTED(){return this.getToken(cn.TRUSTED,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}TYPES_P(){return this.getToken(cn.TYPES_P,0)}UESCAPE(){return this.getToken(cn.UESCAPE,0)}UNBOUNDED(){return this.getToken(cn.UNBOUNDED,0)}UNCOMMITTED(){return this.getToken(cn.UNCOMMITTED,0)}UNENCRYPTED(){return this.getToken(cn.UNENCRYPTED,0)}UNKNOWN(){return this.getToken(cn.UNKNOWN,0)}UNLISTEN(){return this.getToken(cn.UNLISTEN,0)}UNLOGGED(){return this.getToken(cn.UNLOGGED,0)}UNTIL(){return this.getToken(cn.UNTIL,0)}UPDATE(){return this.getToken(cn.UPDATE,0)}VACUUM(){return this.getToken(cn.VACUUM,0)}VALID(){return this.getToken(cn.VALID,0)}VALIDATE(){return this.getToken(cn.VALIDATE,0)}VALIDATOR(){return this.getToken(cn.VALIDATOR,0)}VALUE_P(){return this.getToken(cn.VALUE_P,0)}VARYING(){return this.getToken(cn.VARYING,0)}VERSION_P(){return this.getToken(cn.VERSION_P,0)}VIEW(){return this.getToken(cn.VIEW,0)}VIEWS(){return this.getToken(cn.VIEWS,0)}VOLATILE(){return this.getToken(cn.VOLATILE,0)}WHITESPACE_P(){return this.getToken(cn.WHITESPACE_P,0)}WITHIN(){return this.getToken(cn.WITHIN,0)}WITHOUT(){return this.getToken(cn.WITHOUT,0)}WORK(){return this.getToken(cn.WORK,0)}WRAPPER(){return this.getToken(cn.WRAPPER,0)}WRITE(){return this.getToken(cn.WRITE,0)}XML_P(){return this.getToken(cn.XML_P,0)}YEAR_P(){return this.getToken(cn.YEAR_P,0)}YES_P(){return this.getToken(cn.YES_P,0)}ZONE(){return this.getToken(cn.ZONE,0)}get ruleIndex(){return cn.RULE_unreservedKeyword}accept(t){return t.visitUnreservedKeyword?t.visitUnreservedKeyword(this):t.visitChildren(this)}},nN=class extends ga{constructor(t,e){super(t,e)}BETWEEN(){return this.getToken(cn.BETWEEN,0)}BIGINT(){return this.getToken(cn.BIGINT,0)}bit(){return this.getRuleContext(0,mO)}BOOLEAN_P(){return this.getToken(cn.BOOLEAN_P,0)}CHAR_P(){return this.getToken(cn.CHAR_P,0)}character(){return this.getRuleContext(0,xO)}COALESCE(){return this.getToken(cn.COALESCE,0)}DEC(){return this.getToken(cn.DEC,0)}DECIMAL_P(){return this.getToken(cn.DECIMAL_P,0)}EXISTS(){return this.getToken(cn.EXISTS,0)}EXTRACT(){return this.getToken(cn.EXTRACT,0)}FLOAT_P(){return this.getToken(cn.FLOAT_P,0)}GREATEST(){return this.getToken(cn.GREATEST,0)}GROUPING(){return this.getToken(cn.GROUPING,0)}INOUT(){return this.getToken(cn.INOUT,0)}INT_P(){return this.getToken(cn.INT_P,0)}INTEGER(){return this.getToken(cn.INTEGER,0)}INTERVAL(){return this.getToken(cn.INTERVAL,0)}LEAST(){return this.getToken(cn.LEAST,0)}NATIONAL(){return this.getToken(cn.NATIONAL,0)}NCHAR(){return this.getToken(cn.NCHAR,0)}NONE(){return this.getToken(cn.NONE,0)}NORMALIZE(){return this.getToken(cn.NORMALIZE,0)}NULLIF(){return this.getToken(cn.NULLIF,0)}numeric(){return this.getRuleContext(0,dO)}OUT_P(){return this.getToken(cn.OUT_P,0)}OVERLAY(){return this.getToken(cn.OVERLAY,0)}POSITION(){return this.getToken(cn.POSITION,0)}PRECISION(){return this.getToken(cn.PRECISION,0)}REAL(){return this.getToken(cn.REAL,0)}ROW(){return this.getToken(cn.ROW,0)}SETOF(){return this.getToken(cn.SETOF,0)}SMALLINT(){return this.getToken(cn.SMALLINT,0)}SUBSTRING(){return this.getToken(cn.SUBSTRING,0)}TIME(){return this.getToken(cn.TIME,0)}TIMESTAMP(){return this.getToken(cn.TIMESTAMP,0)}TREAT(){return this.getToken(cn.TREAT,0)}TRIM(){return this.getToken(cn.TRIM,0)}VALUES(){return this.getToken(cn.VALUES,0)}VARCHAR(){return this.getToken(cn.VARCHAR,0)}XMLATTRIBUTES(){return this.getToken(cn.XMLATTRIBUTES,0)}XMLCONCAT(){return this.getToken(cn.XMLCONCAT,0)}XMLELEMENT(){return this.getToken(cn.XMLELEMENT,0)}XMLEXISTS(){return this.getToken(cn.XMLEXISTS,0)}XMLFOREST(){return this.getToken(cn.XMLFOREST,0)}XMLNAMESPACES(){return this.getToken(cn.XMLNAMESPACES,0)}XMLPARSE(){return this.getToken(cn.XMLPARSE,0)}XMLPI(){return this.getToken(cn.XMLPI,0)}XMLROOT(){return this.getToken(cn.XMLROOT,0)}XMLSERIALIZE(){return this.getToken(cn.XMLSERIALIZE,0)}XMLTABLE(){return this.getToken(cn.XMLTABLE,0)}builtinFunctionName(){return this.getRuleContext(0,TN)}get ruleIndex(){return cn.RULE_columnNameKeyword}accept(t){return t.visitColumnNameKeyword?t.visitColumnNameKeyword(this):t.visitChildren(this)}},hN=class extends ga{constructor(t,e){super(t,e)}AUTHORIZATION(){return this.getToken(cn.AUTHORIZATION,0)}BINARY(){return this.getToken(cn.BINARY,0)}COLLATION(){return this.getToken(cn.COLLATION,0)}CONCURRENTLY(){return this.getToken(cn.CONCURRENTLY,0)}CROSS(){return this.getToken(cn.CROSS,0)}CURRENT_SCHEMA(){return this.getToken(cn.CURRENT_SCHEMA,0)}FREEZE(){return this.getToken(cn.FREEZE,0)}FULL(){return this.getToken(cn.FULL,0)}ILIKE(){return this.getToken(cn.ILIKE,0)}INNER_P(){return this.getToken(cn.INNER_P,0)}IS(){return this.getToken(cn.IS,0)}ISNULL(){return this.getToken(cn.ISNULL,0)}JOIN(){return this.getToken(cn.JOIN,0)}LIKE(){return this.getToken(cn.LIKE,0)}NATURAL(){return this.getToken(cn.NATURAL,0)}NOTNULL(){return this.getToken(cn.NOTNULL,0)}OUTER_P(){return this.getToken(cn.OUTER_P,0)}OVERLAPS(){return this.getToken(cn.OVERLAPS,0)}SIMILAR(){return this.getToken(cn.SIMILAR,0)}TABLESAMPLE(){return this.getToken(cn.TABLESAMPLE,0)}VERBOSE(){return this.getToken(cn.VERBOSE,0)}get ruleIndex(){return cn.RULE_typeFunctionNameKeyword}accept(t){return t.visitTypeFunctionNameKeyword?t.visitTypeFunctionNameKeyword(this):t.visitChildren(this)}},EN=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(cn.ALL,0)}ANALYSE(){return this.getToken(cn.ANALYSE,0)}ANALYZE(){return this.getToken(cn.ANALYZE,0)}AND(){return this.getToken(cn.AND,0)}ANY(){return this.getToken(cn.ANY,0)}ARRAY(){return this.getToken(cn.ARRAY,0)}AS(){return this.getToken(cn.AS,0)}ASC(){return this.getToken(cn.ASC,0)}ASYMMETRIC(){return this.getToken(cn.ASYMMETRIC,0)}BOTH(){return this.getToken(cn.BOTH,0)}CASE(){return this.getToken(cn.CASE,0)}CAST(){return this.getToken(cn.CAST,0)}CHECK(){return this.getToken(cn.CHECK,0)}COLLATE(){return this.getToken(cn.COLLATE,0)}COLUMN(){return this.getToken(cn.COLUMN,0)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}CREATE(){return this.getToken(cn.CREATE,0)}CURRENT_CATALOG(){return this.getToken(cn.CURRENT_CATALOG,0)}CURRENT_DATE(){return this.getToken(cn.CURRENT_DATE,0)}CURRENT_ROLE(){return this.getToken(cn.CURRENT_ROLE,0)}CURRENT_TIME(){return this.getToken(cn.CURRENT_TIME,0)}CURRENT_TIMESTAMP(){return this.getToken(cn.CURRENT_TIMESTAMP,0)}CURRENT_USER(){return this.getToken(cn.CURRENT_USER,0)}DEFERRABLE(){return this.getToken(cn.DEFERRABLE,0)}DESC(){return this.getToken(cn.DESC,0)}DISTINCT(){return this.getToken(cn.DISTINCT,0)}DO(){return this.getToken(cn.DO,0)}ELSE(){return this.getToken(cn.ELSE,0)}END_P(){return this.getToken(cn.END_P,0)}EXCEPT(){return this.getToken(cn.EXCEPT,0)}FALSE_P(){return this.getToken(cn.FALSE_P,0)}FETCH(){return this.getToken(cn.FETCH,0)}FOR(){return this.getToken(cn.FOR,0)}FOREIGN(){return this.getToken(cn.FOREIGN,0)}FROM(){return this.getToken(cn.FROM,0)}GRANT(){return this.getToken(cn.GRANT,0)}GROUP_P(){return this.getToken(cn.GROUP_P,0)}HAVING(){return this.getToken(cn.HAVING,0)}IN_P(){return this.getToken(cn.IN_P,0)}INITIALLY(){return this.getToken(cn.INITIALLY,0)}INTERSECT(){return this.getToken(cn.INTERSECT,0)}LATERAL_P(){return this.getToken(cn.LATERAL_P,0)}LEADING(){return this.getToken(cn.LEADING,0)}LIMIT(){return this.getToken(cn.LIMIT,0)}LOCALTIME(){return this.getToken(cn.LOCALTIME,0)}LOCALTIMESTAMP(){return this.getToken(cn.LOCALTIMESTAMP,0)}NOT(){return this.getToken(cn.NOT,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}OFFSET(){return this.getToken(cn.OFFSET,0)}ON(){return this.getToken(cn.ON,0)}ONLY(){return this.getToken(cn.ONLY,0)}OR(){return this.getToken(cn.OR,0)}ORDER(){return this.getToken(cn.ORDER,0)}PLACING(){return this.getToken(cn.PLACING,0)}PRIMARY(){return this.getToken(cn.PRIMARY,0)}REFERENCES(){return this.getToken(cn.REFERENCES,0)}RETURNING(){return this.getToken(cn.RETURNING,0)}SELECT(){return this.getToken(cn.SELECT,0)}SESSION_USER(){return this.getToken(cn.SESSION_USER,0)}SOME(){return this.getToken(cn.SOME,0)}SYMMETRIC(){return this.getToken(cn.SYMMETRIC,0)}TABLE(){return this.getToken(cn.TABLE,0)}THEN(){return this.getToken(cn.THEN,0)}TO(){return this.getToken(cn.TO,0)}TRAILING(){return this.getToken(cn.TRAILING,0)}TRUE_P(){return this.getToken(cn.TRUE_P,0)}UNION(){return this.getToken(cn.UNION,0)}UNIQUE(){return this.getToken(cn.UNIQUE,0)}USER(){return this.getToken(cn.USER,0)}USING(){return this.getToken(cn.USING,0)}VARIADIC(){return this.getToken(cn.VARIADIC,0)}WHEN(){return this.getToken(cn.WHEN,0)}WHERE(){return this.getToken(cn.WHERE,0)}WINDOW(){return this.getToken(cn.WINDOW,0)}WITH(){return this.getToken(cn.WITH,0)}get ruleIndex(){return cn.RULE_reservedKeyword}accept(t){return t.visitReservedKeyword?t.visitReservedKeyword(this):t.visitChildren(this)}},TN=class extends ga{constructor(t,e){super(t,e)}XMLCOMMENT(){return this.getToken(cn.XMLCOMMENT,0)}XML_IS_WELL_FORMED(){return this.getToken(cn.XML_IS_WELL_FORMED,0)}XML_IS_WELL_FORMED_DOCUMENT(){return this.getToken(cn.XML_IS_WELL_FORMED_DOCUMENT,0)}XML_IS_WELL_FORMED_CONTENT(){return this.getToken(cn.XML_IS_WELL_FORMED_CONTENT,0)}XMLAGG(){return this.getToken(cn.XMLAGG,0)}XPATH(){return this.getToken(cn.XPATH,0)}XPATH_EXISTS(){return this.getToken(cn.XPATH_EXISTS,0)}ABS(){return this.getToken(cn.ABS,0)}CBRT(){return this.getToken(cn.CBRT,0)}CEIL(){return this.getToken(cn.CEIL,0)}CEILING(){return this.getToken(cn.CEILING,0)}DEGREES(){return this.getToken(cn.DEGREES,0)}DIV(){return this.getToken(cn.DIV,0)}EXP(){return this.getToken(cn.EXP,0)}FACTORIAL(){return this.getToken(cn.FACTORIAL,0)}FLOOR(){return this.getToken(cn.FLOOR,0)}GCD(){return this.getToken(cn.GCD,0)}LCM(){return this.getToken(cn.LCM,0)}LN(){return this.getToken(cn.LN,0)}LOG(){return this.getToken(cn.LOG,0)}LOG10(){return this.getToken(cn.LOG10,0)}MIN_SCALE(){return this.getToken(cn.MIN_SCALE,0)}MOD(){return this.getToken(cn.MOD,0)}PI(){return this.getToken(cn.PI,0)}POWER(){return this.getToken(cn.POWER,0)}RADIANS(){return this.getToken(cn.RADIANS,0)}ROUND(){return this.getToken(cn.ROUND,0)}SCALE(){return this.getToken(cn.SCALE,0)}SIGN(){return this.getToken(cn.SIGN,0)}SQRT(){return this.getToken(cn.SQRT,0)}TRIM_SCALE(){return this.getToken(cn.TRIM_SCALE,0)}TRUNC(){return this.getToken(cn.TRUNC,0)}WIDTH_BUCKET(){return this.getToken(cn.WIDTH_BUCKET,0)}RANDOM(){return this.getToken(cn.RANDOM,0)}SETSEED(){return this.getToken(cn.SETSEED,0)}ACOS(){return this.getToken(cn.ACOS,0)}ACOSD(){return this.getToken(cn.ACOSD,0)}ACOSH(){return this.getToken(cn.ACOSH,0)}ASIN(){return this.getToken(cn.ASIN,0)}ASIND(){return this.getToken(cn.ASIND,0)}ASINH(){return this.getToken(cn.ASINH,0)}ATAN(){return this.getToken(cn.ATAN,0)}ATAND(){return this.getToken(cn.ATAND,0)}ATANH(){return this.getToken(cn.ATANH,0)}ATAN2(){return this.getToken(cn.ATAN2,0)}ATAN2D(){return this.getToken(cn.ATAN2D,0)}COS(){return this.getToken(cn.COS,0)}COSD(){return this.getToken(cn.COSD,0)}COSH(){return this.getToken(cn.COSH,0)}COT(){return this.getToken(cn.COT,0)}COTD(){return this.getToken(cn.COTD,0)}SIN(){return this.getToken(cn.SIN,0)}SIND(){return this.getToken(cn.SIND,0)}SINH(){return this.getToken(cn.SINH,0)}TAN(){return this.getToken(cn.TAN,0)}TAND(){return this.getToken(cn.TAND,0)}TANH(){return this.getToken(cn.TANH,0)}BIT_LENGTH(){return this.getToken(cn.BIT_LENGTH,0)}CHAR_LENGTH(){return this.getToken(cn.CHAR_LENGTH,0)}CHARACTER_LENGTH(){return this.getToken(cn.CHARACTER_LENGTH,0)}LOWER(){return this.getToken(cn.LOWER,0)}OCTET_LENGTH(){return this.getToken(cn.OCTET_LENGTH,0)}UPPER(){return this.getToken(cn.UPPER,0)}ASCII(){return this.getToken(cn.ASCII,0)}BTRIM(){return this.getToken(cn.BTRIM,0)}CHR(){return this.getToken(cn.CHR,0)}CONCAT(){return this.getToken(cn.CONCAT,0)}CONCAT_WS(){return this.getToken(cn.CONCAT_WS,0)}FORMAT(){return this.getToken(cn.FORMAT,0)}INITCAP(){return this.getToken(cn.INITCAP,0)}LENGTH(){return this.getToken(cn.LENGTH,0)}LPAD(){return this.getToken(cn.LPAD,0)}LTRIM(){return this.getToken(cn.LTRIM,0)}MD5(){return this.getToken(cn.MD5,0)}PARSE_IDENT(){return this.getToken(cn.PARSE_IDENT,0)}PG_CLIENT_ENCODING(){return this.getToken(cn.PG_CLIENT_ENCODING,0)}QUOTE_IDENT(){return this.getToken(cn.QUOTE_IDENT,0)}QUOTE_LITERAL(){return this.getToken(cn.QUOTE_LITERAL,0)}QUOTE_NULLABLE(){return this.getToken(cn.QUOTE_NULLABLE,0)}REGEXP_COUNT(){return this.getToken(cn.REGEXP_COUNT,0)}REGEXP_INSTR(){return this.getToken(cn.REGEXP_INSTR,0)}REGEXP_LIKE(){return this.getToken(cn.REGEXP_LIKE,0)}REGEXP_MATCH(){return this.getToken(cn.REGEXP_MATCH,0)}REGEXP_MATCHES(){return this.getToken(cn.REGEXP_MATCHES,0)}REGEXP_REPLACE(){return this.getToken(cn.REGEXP_REPLACE,0)}REGEXP_SPLIT_TO_ARRAY(){return this.getToken(cn.REGEXP_SPLIT_TO_ARRAY,0)}REGEXP_SPLIT_TO_TABLE(){return this.getToken(cn.REGEXP_SPLIT_TO_TABLE,0)}REGEXP_SUBSTR(){return this.getToken(cn.REGEXP_SUBSTR,0)}REPEAT(){return this.getToken(cn.REPEAT,0)}REPLACE(){return this.getToken(cn.REPLACE,0)}REVERSE(){return this.getToken(cn.REVERSE,0)}RPAD(){return this.getToken(cn.RPAD,0)}RTRIM(){return this.getToken(cn.RTRIM,0)}SPLIT_PART(){return this.getToken(cn.SPLIT_PART,0)}STARTS_WITH(){return this.getToken(cn.STARTS_WITH,0)}STRING_TO_ARRAY(){return this.getToken(cn.STRING_TO_ARRAY,0)}STRING_TO_TABLE(){return this.getToken(cn.STRING_TO_TABLE,0)}STRPOS(){return this.getToken(cn.STRPOS,0)}SUBSTR(){return this.getToken(cn.SUBSTR,0)}TO_ASCII(){return this.getToken(cn.TO_ASCII,0)}TO_HEX(){return this.getToken(cn.TO_HEX,0)}TRANSLATE(){return this.getToken(cn.TRANSLATE,0)}UNISTR(){return this.getToken(cn.UNISTR,0)}AGE(){return this.getToken(cn.AGE,0)}DATE_BIN(){return this.getToken(cn.DATE_BIN,0)}DATE_PART(){return this.getToken(cn.DATE_PART,0)}DATE_TRUNC(){return this.getToken(cn.DATE_TRUNC,0)}ISFINITE(){return this.getToken(cn.ISFINITE,0)}JUSTIFY_DAYS(){return this.getToken(cn.JUSTIFY_DAYS,0)}JUSTIFY_HOURS(){return this.getToken(cn.JUSTIFY_HOURS,0)}JUSTIFY_INTERVAL(){return this.getToken(cn.JUSTIFY_INTERVAL,0)}MAKE_DATE(){return this.getToken(cn.MAKE_DATE,0)}MAKE_INTERVAL(){return this.getToken(cn.MAKE_INTERVAL,0)}MAKE_TIME(){return this.getToken(cn.MAKE_TIME,0)}MAKE_TIMESTAMP(){return this.getToken(cn.MAKE_TIMESTAMP,0)}MAKE_TIMESTAMPTZ(){return this.getToken(cn.MAKE_TIMESTAMPTZ,0)}CLOCK_TIMESTAMP(){return this.getToken(cn.CLOCK_TIMESTAMP,0)}NOW(){return this.getToken(cn.NOW,0)}STATEMENT_TIMESTAMP(){return this.getToken(cn.STATEMENT_TIMESTAMP,0)}TIMEOFDAY(){return this.getToken(cn.TIMEOFDAY,0)}TRANSACTION_TIMESTAMP(){return this.getToken(cn.TRANSACTION_TIMESTAMP,0)}TO_TIMESTAMP(){return this.getToken(cn.TO_TIMESTAMP,0)}TO_CHAR(){return this.getToken(cn.TO_CHAR,0)}TO_DATE(){return this.getToken(cn.TO_DATE,0)}TO_NUMBER(){return this.getToken(cn.TO_NUMBER,0)}get ruleIndex(){return cn.RULE_builtinFunctionName}accept(t){return t.visitBuiltinFunctionName?t.visitBuiltinFunctionName(this):t.visitChildren(this)}},oN=class extends ga{constructor(t,e){super(t,e)}computeOptions(){return this.getRuleContext(0,RN)}plsqlBlock(){return this.getRuleContext(0,IN)}optionalSemi(){return this.getRuleContext(0,ON)}get ruleIndex(){return cn.RULE_plsqlFunction}accept(t){return t.visitPlsqlFunction?t.visitPlsqlFunction(this):t.visitChildren(this)}},RN=class extends ga{constructor(t,e){super(t,e)}computeOption(t){return void 0===t?this.getRuleContexts(AN):this.getRuleContext(t,AN)}get ruleIndex(){return cn.RULE_computeOptions}accept(t){return t.visitComputeOptions?t.visitComputeOptions(this):t.visitChildren(this)}},AN=class extends ga{constructor(t,e){super(t,e)}sharp(){return this.getRuleContext(0,SN)}OPTION(){return this.getToken(cn.OPTION,0)}DUMP(){return this.getToken(cn.DUMP,0)}PRINT_STRICT_PARAMS(){return this.getToken(cn.PRINT_STRICT_PARAMS,0)}optionValue(){return this.getRuleContext(0,lN)}VARIABLE_CONFLICT(){return this.getToken(cn.VARIABLE_CONFLICT,0)}ERROR(){return this.getToken(cn.ERROR,0)}USE_VARIABLE(){return this.getToken(cn.USE_VARIABLE,0)}USE_COLUMN(){return this.getToken(cn.USE_COLUMN,0)}get ruleIndex(){return cn.RULE_computeOption}accept(t){return t.visitComputeOption?t.visitComputeOption(this):t.visitChildren(this)}},SN=class extends ga{constructor(t,e){super(t,e)}Operator(){return this.getToken(cn.Operator,0)}get ruleIndex(){return cn.RULE_sharp}accept(t){return t.visitSharp?t.visitSharp(this):t.visitChildren(this)}},lN=class extends ga{constructor(t,e){super(t,e)}sconst(){return this.getRuleContext(0,Qu)}reservedKeyword(){return this.getRuleContext(0,EN)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}unreservedKeyword(){return this.getRuleContext(0,cN)}get ruleIndex(){return cn.RULE_optionValue}accept(t){return t.visitOptionValue?t.visitOptionValue(this):t.visitChildren(this)}},ON=class extends ga{constructor(t,e){super(t,e)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_optionalSemi}accept(t){return t.visitOptionalSemi?t.visitOptionalSemi(this):t.visitChildren(this)}},IN=class extends ga{constructor(t,e){super(t,e)}declareSection(){return this.getRuleContext(0,uN)}BEGIN_P(){return this.getToken(cn.BEGIN_P,0)}procedureSection(){return this.getRuleContext(0,fN)}exceptionSection(){return this.getRuleContext(0,JL)}END_P(){return this.getToken(cn.END_P,0)}optionalLabel(){return this.getRuleContext(0,eC)}get ruleIndex(){return cn.RULE_plsqlBlock}accept(t){return t.visitPlsqlBlock?t.visitPlsqlBlock(this):t.visitChildren(this)}},uN=class extends ga{constructor(t,e){super(t,e)}optionalBlockLabel(){return this.getRuleContext(0,$L)}declareStart(){return this.getRuleContext(0,NN)}declareStatements(){return this.getRuleContext(0,LN)}get ruleIndex(){return cn.RULE_declareSection}accept(t){return t.visitDeclareSection?t.visitDeclareSection(this):t.visitChildren(this)}},NN=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(cn.DECLARE,0)}get ruleIndex(){return cn.RULE_declareStart}accept(t){return t.visitDeclareStart?t.visitDeclareStart(this):t.visitChildren(this)}},LN=class extends ga{constructor(t,e){super(t,e)}declareStatement(t){return void 0===t?this.getRuleContexts(_N):this.getRuleContext(t,_N)}get ruleIndex(){return cn.RULE_declareStatements}accept(t){return t.visitDeclareStatements?t.visitDeclareStatements(this):t.visitChildren(this)}},CN=class extends ga{constructor(t,e){super(t,e)}LESS_LESS(){return this.getToken(cn.LESS_LESS,0)}anyIdentifier(){return this.getRuleContext(0,aC)}GREATER_GREATER(){return this.getToken(cn.GREATER_GREATER,0)}get ruleIndex(){return cn.RULE_labelDeclaration}accept(t){return t.visitLabelDeclaration?t.visitLabelDeclaration(this):t.visitChildren(this)}},_N=class extends ga{constructor(t,e){super(t,e)}declareStatement2(){return this.getRuleContext(0,PN)}DECLARE(){return this.getToken(cn.DECLARE,0)}labelDeclaration(){return this.getRuleContext(0,CN)}get ruleIndex(){return cn.RULE_declareStatement}accept(t){return t.visitDeclareStatement?t.visitDeclareStatement(this):t.visitChildren(this)}},PN=class extends ga{constructor(t,e){super(t,e)}declareVarname(){return this.getRuleContext(0,xN)}SEMI(){return this.getToken(cn.SEMI,0)}ALIAS(){return this.getToken(cn.ALIAS,0)}FOR(){return this.getToken(cn.FOR,0)}declareAliasItem(){return this.getRuleContext(0,gN)}declareConst(){return this.getRuleContext(0,kN)}declareDatatype(){return this.getRuleContext(0,HN)}declareCollate(){return this.getRuleContext(0,GN)}declareNotNull(){return this.getRuleContext(0,FN)}declareDefaultValue(){return this.getRuleContext(0,vN)}optionalScrollable(){return this.getRuleContext(0,MN)}CURSOR(){return this.getToken(cn.CURSOR,0)}declareCursorArgs(){return this.getRuleContext(0,UN)}declareIsOrFor(){return this.getRuleContext(0,pN)}declareCursorQuery(){return this.getRuleContext(0,dN)}get ruleIndex(){return cn.RULE_declareStatement2}accept(t){return t.visitDeclareStatement2?t.visitDeclareStatement2(this):t.visitChildren(this)}},MN=class extends ga{constructor(t,e){super(t,e)}NO(){return this.getToken(cn.NO,0)}SCROLL(){return this.getToken(cn.SCROLL,0)}get ruleIndex(){return cn.RULE_optionalScrollable}accept(t){return t.visitOptionalScrollable?t.visitOptionalScrollable(this):t.visitChildren(this)}},dN=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,il)}get ruleIndex(){return cn.RULE_declareCursorQuery}accept(t){return t.visitDeclareCursorQuery?t.visitDeclareCursorQuery(this):t.visitChildren(this)}},UN=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}declareCursorArglist(){return this.getRuleContext(0,mN)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}get ruleIndex(){return cn.RULE_declareCursorArgs}accept(t){return t.visitDeclareCursorArgs?t.visitDeclareCursorArgs(this):t.visitChildren(this)}},mN=class extends ga{constructor(t,e){super(t,e)}declareCursorArg(t){return void 0===t?this.getRuleContexts(DN):this.getRuleContext(t,DN)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_declareCursorArglist}accept(t){return t.visitDeclareCursorArglist?t.visitDeclareCursorArglist(this):t.visitChildren(this)}},DN=class extends ga{constructor(t,e){super(t,e)}declareVarname(){return this.getRuleContext(0,xN)}declareDatatype(){return this.getRuleContext(0,HN)}get ruleIndex(){return cn.RULE_declareCursorArg}accept(t){return t.visitDeclareCursorArg?t.visitDeclareCursorArg(this):t.visitChildren(this)}},pN=class extends ga{constructor(t,e){super(t,e)}IS(){return this.getToken(cn.IS,0)}FOR(){return this.getToken(cn.FOR,0)}get ruleIndex(){return cn.RULE_declareIsOrFor}accept(t){return t.visitDeclareIsOrFor?t.visitDeclareIsOrFor(this):t.visitChildren(this)}},gN=class extends ga{constructor(t,e){super(t,e)}PARAM(){return this.getToken(cn.PARAM,0)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_declareAliasItem}accept(t){return t.visitDeclareAliasItem?t.visitDeclareAliasItem(this):t.visitChildren(this)}},xN=class extends ga{constructor(t,e){super(t,e)}anyIdentifier(){return this.getRuleContext(0,aC)}get ruleIndex(){return cn.RULE_declareVarname}accept(t){return t.visitDeclareVarname?t.visitDeclareVarname(this):t.visitChildren(this)}},kN=class extends ga{constructor(t,e){super(t,e)}CONSTANT(){return this.getToken(cn.CONSTANT,0)}get ruleIndex(){return cn.RULE_declareConst}accept(t){return t.visitDeclareConst?t.visitDeclareConst(this):t.visitChildren(this)}},HN=class extends ga{constructor(t,e){super(t,e)}typeName(){return this.getRuleContext(0,LO)}get ruleIndex(){return cn.RULE_declareDatatype}accept(t){return t.visitDeclareDatatype?t.visitDeclareDatatype(this):t.visitChildren(this)}},GN=class extends ga{constructor(t,e){super(t,e)}COLLATE(){return this.getToken(cn.COLLATE,0)}anyName(){return this.getRuleContext(0,mo)}get ruleIndex(){return cn.RULE_declareCollate}accept(t){return t.visitDeclareCollate?t.visitDeclareCollate(this):t.visitChildren(this)}},FN=class extends ga{constructor(t,e){super(t,e)}NOT(){return this.getToken(cn.NOT,0)}NULL_P(){return this.getToken(cn.NULL_P,0)}get ruleIndex(){return cn.RULE_declareNotNull}accept(t){return t.visitDeclareNotNull?t.visitDeclareNotNull(this):t.visitChildren(this)}},vN=class extends ga{constructor(t,e){super(t,e)}declareDefaultKey(){return this.getRuleContext(0,BN)}sqlExpression(){return this.getRuleContext(0,iC)}get ruleIndex(){return cn.RULE_declareDefaultValue}accept(t){return t.visitDeclareDefaultValue?t.visitDeclareDefaultValue(this):t.visitChildren(this)}},BN=class extends ga{constructor(t,e){super(t,e)}assignOperator(){return this.getRuleContext(0,yN)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}get ruleIndex(){return cn.RULE_declareDefaultKey}accept(t){return t.visitDeclareDefaultKey?t.visitDeclareDefaultKey(this):t.visitChildren(this)}},yN=class extends ga{constructor(t,e){super(t,e)}EQUAL(){return this.getToken(cn.EQUAL,0)}COLON_EQUALS(){return this.getToken(cn.COLON_EQUALS,0)}get ruleIndex(){return cn.RULE_assignOperator}accept(t){return t.visitAssignOperator?t.visitAssignOperator(this):t.visitChildren(this)}},fN=class extends ga{constructor(t,e){super(t,e)}proceduralStatement(t){return void 0===t?this.getRuleContexts(YN):this.getRuleContext(t,YN)}get ruleIndex(){return cn.RULE_procedureSection}accept(t){return t.visitProcedureSection?t.visitProcedureSection(this):t.visitChildren(this)}},YN=class extends ga{constructor(t,e){super(t,e)}plsqlBlock(){return this.getRuleContext(0,IN)}SEMI(){return this.getToken(cn.SEMI,0)}statementReturn(){return this.getRuleContext(0,NL)}statementRaise(){return this.getRuleContext(0,CL)}statementAssign(){return this.getRuleContext(0,VN)}statementIf(){return this.getRuleContext(0,zN)}statementCase(){return this.getRuleContext(0,eL)}statementLoop(){return this.getRuleContext(0,cL)}statementWhile(){return this.getRuleContext(0,nL)}statementFor(){return this.getRuleContext(0,hL)}statementForeachA(){return this.getRuleContext(0,lL)}statementExit(){return this.getRuleContext(0,IL)}statementAssert(){return this.getRuleContext(0,UL)}statementExecSql(){return this.getRuleContext(0,pL)}statementDynExecute(){return this.getRuleContext(0,gL)}statementPerform(){return this.getRuleContext(0,wN)}statementCall(){return this.getRuleContext(0,bN)}statementGetDiagram(){return this.getRuleContext(0,XN)}statementOpen(){return this.getRuleContext(0,GL)}statementFetch(){return this.getRuleContext(0,vL)}statementMove(){return this.getRuleContext(0,YL)}statementClose(){return this.getRuleContext(0,wL)}statementNull(){return this.getRuleContext(0,bL)}statementCommit(){return this.getRuleContext(0,WL)}statementRollback(){return this.getRuleContext(0,VL)}statementSet(){return this.getRuleContext(0,KL)}get ruleIndex(){return cn.RULE_proceduralStatement}accept(t){return t.visitProceduralStatement?t.visitProceduralStatement(this):t.visitChildren(this)}},wN=class extends ga{constructor(t,e){super(t,e)}PERFORM(){return this.getToken(cn.PERFORM,0)}expressionUntilSemi(){return this.getRuleContext(0,nC)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementPerform}accept(t){return t.visitStatementPerform?t.visitStatementPerform(this):t.visitChildren(this)}},bN=class extends ga{constructor(t,e){super(t,e)}CALL(){return this.getToken(cn.CALL,0)}anyIdentifier(){return this.getRuleContext(0,aC)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}optionalExpressionList(){return this.getRuleContext(0,WN)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}SEMI(){return this.getToken(cn.SEMI,0)}DO(){return this.getToken(cn.DO,0)}get ruleIndex(){return cn.RULE_statementCall}accept(t){return t.visitStatementCall?t.visitStatementCall(this):t.visitChildren(this)}},WN=class extends ga{constructor(t,e){super(t,e)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_optionalExpressionList}accept(t){return t.visitOptionalExpressionList?t.visitOptionalExpressionList(this):t.visitChildren(this)}},VN=class extends ga{constructor(t,e){super(t,e)}assignVariable(){return this.getRuleContext(0,jN)}assignOperator(){return this.getRuleContext(0,yN)}sqlExpression(){return this.getRuleContext(0,iC)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementAssign}accept(t){return t.visitStatementAssign?t.visitStatementAssign(this):t.visitChildren(this)}},XN=class extends ga{constructor(t,e){super(t,e)}GET(){return this.getToken(cn.GET,0)}optionalGetDiagramArea(){return this.getRuleContext(0,KN)}DIAGNOSTICS(){return this.getToken(cn.DIAGNOSTICS,0)}getDiagramList(){return this.getRuleContext(0,QN)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementGetDiagram}accept(t){return t.visitStatementGetDiagram?t.visitStatementGetDiagram(this):t.visitChildren(this)}},KN=class extends ga{constructor(t,e){super(t,e)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}STACKED(){return this.getToken(cn.STACKED,0)}get ruleIndex(){return cn.RULE_optionalGetDiagramArea}accept(t){return t.visitOptionalGetDiagramArea?t.visitOptionalGetDiagramArea(this):t.visitChildren(this)}},QN=class extends ga{constructor(t,e){super(t,e)}getDiagramListItem(t){return void 0===t?this.getRuleContexts(JN):this.getRuleContext(t,JN)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_getDiagramList}accept(t){return t.visitGetDiagramList?t.visitGetDiagramList(this):t.visitChildren(this)}},JN=class extends ga{constructor(t,e){super(t,e)}getDiagramTarget(){return this.getRuleContext(0,qN)}assignOperator(){return this.getRuleContext(0,yN)}getDiagramItem(){return this.getRuleContext(0,ZN)}get ruleIndex(){return cn.RULE_getDiagramListItem}accept(t){return t.visitGetDiagramListItem?t.visitGetDiagramListItem(this):t.visitChildren(this)}},ZN=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}get ruleIndex(){return cn.RULE_getDiagramItem}accept(t){return t.visitGetDiagramItem?t.visitGetDiagramItem(this):t.visitChildren(this)}},qN=class extends ga{constructor(t,e){super(t,e)}assignVariable(){return this.getRuleContext(0,jN)}get ruleIndex(){return cn.RULE_getDiagramTarget}accept(t){return t.visitGetDiagramTarget?t.visitGetDiagramTarget(this):t.visitChildren(this)}},jN=class extends ga{constructor(t,e){super(t,e)}anyName(){return this.getRuleContext(0,mo)}PARAM(){return this.getToken(cn.PARAM,0)}OPEN_BRACKET(t){return void 0===t?this.getTokens(cn.OPEN_BRACKET):this.getToken(cn.OPEN_BRACKET,t)}expressionUntilRightbracket(t){return void 0===t?this.getRuleContexts(hC):this.getRuleContext(t,hC)}CLOSE_BRACKET(t){return void 0===t?this.getTokens(cn.CLOSE_BRACKET):this.getToken(cn.CLOSE_BRACKET,t)}get ruleIndex(){return cn.RULE_assignVariable}accept(t){return t.visitAssignVariable?t.visitAssignVariable(this):t.visitChildren(this)}},zN=class extends ga{constructor(t,e){super(t,e)}IF_P(t){return void 0===t?this.getTokens(cn.IF_P):this.getToken(cn.IF_P,t)}expressionUntilThen(){return this.getRuleContext(0,cC)}THEN(){return this.getToken(cn.THEN,0)}procedureSection(){return this.getRuleContext(0,fN)}statementElsifs(){return this.getRuleContext(0,$N)}statementElse(){return this.getRuleContext(0,tL)}END_P(){return this.getToken(cn.END_P,0)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementIf}accept(t){return t.visitStatementIf?t.visitStatementIf(this):t.visitChildren(this)}},$N=class extends ga{constructor(t,e){super(t,e)}ELSIF(t){return void 0===t?this.getTokens(cn.ELSIF):this.getToken(cn.ELSIF,t)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}THEN(t){return void 0===t?this.getTokens(cn.THEN):this.getToken(cn.THEN,t)}procedureSection(t){return void 0===t?this.getRuleContexts(fN):this.getRuleContext(t,fN)}get ruleIndex(){return cn.RULE_statementElsifs}accept(t){return t.visitStatementElsifs?t.visitStatementElsifs(this):t.visitChildren(this)}},tL=class extends ga{constructor(t,e){super(t,e)}ELSE(){return this.getToken(cn.ELSE,0)}procedureSection(){return this.getRuleContext(0,fN)}get ruleIndex(){return cn.RULE_statementElse}accept(t){return t.visitStatementElse?t.visitStatementElse(this):t.visitChildren(this)}},eL=class extends ga{constructor(t,e){super(t,e)}CASE(t){return void 0===t?this.getTokens(cn.CASE):this.getToken(cn.CASE,t)}optionalExpressionUntilWhen(){return this.getRuleContext(0,sL)}caseWhenList(){return this.getRuleContext(0,aL)}optionalCaseElse(){return this.getRuleContext(0,iL)}END_P(){return this.getToken(cn.END_P,0)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementCase}accept(t){return t.visitStatementCase?t.visitStatementCase(this):t.visitChildren(this)}},sL=class extends ga{constructor(t,e){super(t,e)}sqlExpression(){return this.getRuleContext(0,iC)}get ruleIndex(){return cn.RULE_optionalExpressionUntilWhen}accept(t){return t.visitOptionalExpressionUntilWhen?t.visitOptionalExpressionUntilWhen(this):t.visitChildren(this)}},aL=class extends ga{constructor(t,e){super(t,e)}caseWhen(t){return void 0===t?this.getRuleContexts(rL):this.getRuleContext(t,rL)}get ruleIndex(){return cn.RULE_caseWhenList}accept(t){return t.visitCaseWhenList?t.visitCaseWhenList(this):t.visitChildren(this)}},rL=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}expressionList(){return this.getRuleContext(0,ZI)}THEN(){return this.getToken(cn.THEN,0)}procedureSection(){return this.getRuleContext(0,fN)}get ruleIndex(){return cn.RULE_caseWhen}accept(t){return t.visitCaseWhen?t.visitCaseWhen(this):t.visitChildren(this)}},iL=class extends ga{constructor(t,e){super(t,e)}ELSE(){return this.getToken(cn.ELSE,0)}procedureSection(){return this.getRuleContext(0,fN)}get ruleIndex(){return cn.RULE_optionalCaseElse}accept(t){return t.visitOptionalCaseElse?t.visitOptionalCaseElse(this):t.visitChildren(this)}},cL=class extends ga{constructor(t,e){super(t,e)}optionalLoopLabel(){return this.getRuleContext(0,tC)}loopBody(){return this.getRuleContext(0,DL)}get ruleIndex(){return cn.RULE_statementLoop}accept(t){return t.visitStatementLoop?t.visitStatementLoop(this):t.visitChildren(this)}},nL=class extends ga{constructor(t,e){super(t,e)}optionalLoopLabel(){return this.getRuleContext(0,tC)}WHILE(){return this.getToken(cn.WHILE,0)}expressionUntilLoop(){return this.getRuleContext(0,EC)}loopBody(){return this.getRuleContext(0,DL)}get ruleIndex(){return cn.RULE_statementWhile}accept(t){return t.visitStatementWhile?t.visitStatementWhile(this):t.visitChildren(this)}},hL=class extends ga{constructor(t,e){super(t,e)}optionalLoopLabel(){return this.getRuleContext(0,tC)}FOR(){return this.getToken(cn.FOR,0)}forControl(){return this.getRuleContext(0,EL)}loopBody(){return this.getRuleContext(0,DL)}get ruleIndex(){return cn.RULE_statementFor}accept(t){return t.visitStatementFor?t.visitStatementFor(this):t.visitChildren(this)}},EL=class extends ga{constructor(t,e){super(t,e)}forVariable(){return this.getRuleContext(0,SL)}IN_P(){return this.getToken(cn.IN_P,0)}cursorName(){return this.getRuleContext(0,al)}optionalCursorParameters(){return this.getRuleContext(0,oL)}selectStatement(){return this.getRuleContext(0,il)}explainStatement(){return this.getRuleContext(0,CS)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}optionalForUsingExpression(){return this.getRuleContext(0,TL)}optionalReverse(){return this.getRuleContext(0,RL)}DOT_DOT(){return this.getToken(cn.DOT_DOT,0)}optionalByExpression(){return this.getRuleContext(0,AL)}get ruleIndex(){return cn.RULE_forControl}accept(t){return t.visitForControl?t.visitForControl(this):t.visitChildren(this)}},TL=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_optionalForUsingExpression}accept(t){return t.visitOptionalForUsingExpression?t.visitOptionalForUsingExpression(this):t.visitChildren(this)}},oL=class extends ga{constructor(t,e){super(t,e)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_optionalCursorParameters}accept(t){return t.visitOptionalCursorParameters?t.visitOptionalCursorParameters(this):t.visitChildren(this)}},RL=class extends ga{constructor(t,e){super(t,e)}REVERSE(){return this.getToken(cn.REVERSE,0)}get ruleIndex(){return cn.RULE_optionalReverse}accept(t){return t.visitOptionalReverse?t.visitOptionalReverse(this):t.visitChildren(this)}},AL=class extends ga{constructor(t,e){super(t,e)}BY(){return this.getToken(cn.BY,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_optionalByExpression}accept(t){return t.visitOptionalByExpression?t.visitOptionalByExpression(this):t.visitChildren(this)}},SL=class extends ga{constructor(t,e){super(t,e)}anyNameList(){return this.getRuleContext(0,Uo)}get ruleIndex(){return cn.RULE_forVariable}accept(t){return t.visitForVariable?t.visitForVariable(this):t.visitChildren(this)}},lL=class extends ga{constructor(t,e){super(t,e)}optionalLoopLabel(){return this.getRuleContext(0,tC)}FOREACH(){return this.getToken(cn.FOREACH,0)}forVariable(){return this.getRuleContext(0,SL)}foreachSlice(){return this.getRuleContext(0,OL)}IN_P(){return this.getToken(cn.IN_P,0)}ARRAY(){return this.getToken(cn.ARRAY,0)}expression1(){return this.getRuleContext(0,wO)}loopBody(){return this.getRuleContext(0,DL)}get ruleIndex(){return cn.RULE_statementForeachA}accept(t){return t.visitStatementForeachA?t.visitStatementForeachA(this):t.visitChildren(this)}},OL=class extends ga{constructor(t,e){super(t,e)}SLICE(){return this.getToken(cn.SLICE,0)}iconst(){return this.getRuleContext(0,Ku)}get ruleIndex(){return cn.RULE_foreachSlice}accept(t){return t.visitForeachSlice?t.visitForeachSlice(this):t.visitChildren(this)}},IL=class extends ga{constructor(t,e){super(t,e)}exitType(){return this.getRuleContext(0,uL)}optionalLabel(){return this.getRuleContext(0,eC)}optionalExitCondition(){return this.getRuleContext(0,sC)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementExit}accept(t){return t.visitStatementExit?t.visitStatementExit(this):t.visitChildren(this)}},uL=class extends ga{constructor(t,e){super(t,e)}EXIT(){return this.getToken(cn.EXIT,0)}CONTINUE_P(){return this.getToken(cn.CONTINUE_P,0)}get ruleIndex(){return cn.RULE_exitType}accept(t){return t.visitExitType?t.visitExitType(this):t.visitChildren(this)}},NL=class extends ga{constructor(t,e){super(t,e)}RETURN(){return this.getToken(cn.RETURN,0)}SEMI(){return this.getToken(cn.SEMI,0)}NEXT(){return this.getToken(cn.NEXT,0)}sqlExpression(){return this.getRuleContext(0,iC)}QUERY(){return this.getToken(cn.QUERY,0)}optionalReturnResult(){return this.getRuleContext(0,LL)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}expression1(){return this.getRuleContext(0,wO)}optionalForUsingExpression(){return this.getRuleContext(0,TL)}selectStatement(){return this.getRuleContext(0,il)}get ruleIndex(){return cn.RULE_statementReturn}accept(t){return t.visitStatementReturn?t.visitStatementReturn(this):t.visitChildren(this)}},LL=class extends ga{constructor(t,e){super(t,e)}sqlExpression(){return this.getRuleContext(0,iC)}get ruleIndex(){return cn.RULE_optionalReturnResult}accept(t){return t.visitOptionalReturnResult?t.visitOptionalReturnResult(this):t.visitChildren(this)}},CL=class extends ga{constructor(t,e){super(t,e)}RAISE(){return this.getToken(cn.RAISE,0)}optionalStatementRaiseLevel(){return this.getRuleContext(0,_L)}sconst(){return this.getRuleContext(0,Qu)}optionalRaiseList(){return this.getRuleContext(0,PL)}optionalRaiseUsing(){return this.getRuleContext(0,ML)}SEMI(){return this.getToken(cn.SEMI,0)}identifier(){return this.getRuleContext(0,rN)}SQLSTATE(){return this.getToken(cn.SQLSTATE,0)}get ruleIndex(){return cn.RULE_statementRaise}accept(t){return t.visitStatementRaise?t.visitStatementRaise(this):t.visitChildren(this)}},_L=class extends ga{constructor(t,e){super(t,e)}DEBUG(){return this.getToken(cn.DEBUG,0)}LOG(){return this.getToken(cn.LOG,0)}INFO(){return this.getToken(cn.INFO,0)}NOTICE(){return this.getToken(cn.NOTICE,0)}WARNING(){return this.getToken(cn.WARNING,0)}EXCEPTION(){return this.getToken(cn.EXCEPTION,0)}get ruleIndex(){return cn.RULE_optionalStatementRaiseLevel}accept(t){return t.visitOptionalStatementRaiseLevel?t.visitOptionalStatementRaiseLevel(this):t.visitChildren(this)}},PL=class extends ga{constructor(t,e){super(t,e)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}get ruleIndex(){return cn.RULE_optionalRaiseList}accept(t){return t.visitOptionalRaiseList?t.visitOptionalRaiseList(this):t.visitChildren(this)}},ML=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}optionalRaiseUsingElement(t){return void 0===t?this.getRuleContexts(dL):this.getRuleContext(t,dL)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_optionalRaiseUsing}accept(t){return t.visitOptionalRaiseUsing?t.visitOptionalRaiseUsing(this):t.visitChildren(this)}},dL=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,rN)}EQUAL(){return this.getToken(cn.EQUAL,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_optionalRaiseUsingElement}accept(t){return t.visitOptionalRaiseUsingElement?t.visitOptionalRaiseUsingElement(this):t.visitChildren(this)}},UL=class extends ga{constructor(t,e){super(t,e)}ASSERT(){return this.getToken(cn.ASSERT,0)}sqlExpression(){return this.getRuleContext(0,iC)}optionalStatementAssertMessage(){return this.getRuleContext(0,mL)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementAssert}accept(t){return t.visitStatementAssert?t.visitStatementAssert(this):t.visitChildren(this)}},mL=class extends ga{constructor(t,e){super(t,e)}COMMA(){return this.getToken(cn.COMMA,0)}sqlExpression(){return this.getRuleContext(0,iC)}get ruleIndex(){return cn.RULE_optionalStatementAssertMessage}accept(t){return t.visitOptionalStatementAssertMessage?t.visitOptionalStatementAssertMessage(this):t.visitChildren(this)}},DL=class extends ga{constructor(t,e){super(t,e)}LOOP(t){return void 0===t?this.getTokens(cn.LOOP):this.getToken(cn.LOOP,t)}procedureSection(){return this.getRuleContext(0,fN)}END_P(){return this.getToken(cn.END_P,0)}optionalLabel(){return this.getRuleContext(0,eC)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_loopBody}accept(t){return t.visitLoopBody?t.visitLoopBody(this):t.visitChildren(this)}},pL=class extends ga{constructor(t,e){super(t,e)}makeExecuteSqlStatement(){return this.getRuleContext(0,TC)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementExecSql}accept(t){return t.visitStatementExecSql?t.visitStatementExecSql(this):t.visitChildren(this)}},gL=class extends ga{constructor(t,e){super(t,e)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}expression1(){return this.getRuleContext(0,wO)}SEMI(){return this.getToken(cn.SEMI,0)}optionalExecuteInto(){return this.getRuleContext(0,HL)}optionalExecuteUsing(){return this.getRuleContext(0,xL)}get ruleIndex(){return cn.RULE_statementDynExecute}accept(t){return t.visitStatementDynExecute?t.visitStatementDynExecute(this):t.visitChildren(this)}},xL=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(cn.USING,0)}optionalExecuteUsingList(){return this.getRuleContext(0,kL)}get ruleIndex(){return cn.RULE_optionalExecuteUsing}accept(t){return t.visitOptionalExecuteUsing?t.visitOptionalExecuteUsing(this):t.visitChildren(this)}},kL=class extends ga{constructor(t,e){super(t,e)}expression1(t){return void 0===t?this.getRuleContexts(wO):this.getRuleContext(t,wO)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_optionalExecuteUsingList}accept(t){return t.visitOptionalExecuteUsingList?t.visitOptionalExecuteUsingList(this):t.visitChildren(this)}},HL=class extends ga{constructor(t,e){super(t,e)}INTO(){return this.getToken(cn.INTO,0)}intoTarget(){return this.getRuleContext(0,BL)}STRICT_P(){return this.getToken(cn.STRICT_P,0)}get ruleIndex(){return cn.RULE_optionalExecuteInto}accept(t){return t.visitOptionalExecuteInto?t.visitOptionalExecuteInto(this):t.visitChildren(this)}},GL=class extends ga{constructor(t,e){super(t,e)}OPEN(){return this.getToken(cn.OPEN,0)}SEMI(){return this.getToken(cn.SEMI,0)}cursorVariable(){return this.getRuleContext(0,QL)}SCROLL(){return this.getToken(cn.SCROLL,0)}FOR(){return this.getToken(cn.FOR,0)}columnId(){return this.getRuleContext(0,$u)}selectStatement(){return this.getRuleContext(0,il)}EXECUTE(){return this.getToken(cn.EXECUTE,0)}sqlExpression(){return this.getRuleContext(0,iC)}USING(){return this.getToken(cn.USING,0)}expressionList(){return this.getRuleContext(0,ZI)}NO(){return this.getToken(cn.NO,0)}OPEN_PAREN(){return this.getToken(cn.OPEN_PAREN,0)}optionalOpenBoundListItem(t){return void 0===t?this.getRuleContexts(FL):this.getRuleContext(t,FL)}CLOSE_PAREN(){return this.getToken(cn.CLOSE_PAREN,0)}COMMA(t){return void 0===t?this.getTokens(cn.COMMA):this.getToken(cn.COMMA,t)}get ruleIndex(){return cn.RULE_statementOpen}accept(t){return t.visitStatementOpen?t.visitStatementOpen(this):t.visitChildren(this)}},FL=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}COLON_EQUALS(){return this.getToken(cn.COLON_EQUALS,0)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_optionalOpenBoundListItem}accept(t){return t.visitOptionalOpenBoundListItem?t.visitOptionalOpenBoundListItem(this):t.visitChildren(this)}},vL=class extends ga{constructor(t,e){super(t,e)}FETCH(){return this.getToken(cn.FETCH,0)}optionalCursorFrom(){return this.getRuleContext(0,yL)}cursorVariable(){return this.getRuleContext(0,QL)}INTO(){return this.getToken(cn.INTO,0)}intoTarget(){return this.getRuleContext(0,BL)}SEMI(){return this.getToken(cn.SEMI,0)}optionalFetchDirection(){return this.getRuleContext(0,fL)}get ruleIndex(){return cn.RULE_statementFetch}accept(t){return t.visitStatementFetch?t.visitStatementFetch(this):t.visitChildren(this)}},BL=class extends ga{constructor(t,e){super(t,e)}expressionList(){return this.getRuleContext(0,ZI)}get ruleIndex(){return cn.RULE_intoTarget}accept(t){return t.visitIntoTarget?t.visitIntoTarget(this):t.visitChildren(this)}},yL=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(cn.FROM,0)}IN_P(){return this.getToken(cn.IN_P,0)}get ruleIndex(){return cn.RULE_optionalCursorFrom}accept(t){return t.visitOptionalCursorFrom?t.visitOptionalCursorFrom(this):t.visitChildren(this)}},fL=class extends ga{constructor(t,e){super(t,e)}NEXT(){return this.getToken(cn.NEXT,0)}PRIOR(){return this.getToken(cn.PRIOR,0)}FIRST_P(){return this.getToken(cn.FIRST_P,0)}LAST_P(){return this.getToken(cn.LAST_P,0)}ABSOLUTE_P(){return this.getToken(cn.ABSOLUTE_P,0)}expression1(){return this.getRuleContext(0,wO)}RELATIVE_P(){return this.getToken(cn.RELATIVE_P,0)}ALL(){return this.getToken(cn.ALL,0)}FORWARD(){return this.getToken(cn.FORWARD,0)}BACKWARD(){return this.getToken(cn.BACKWARD,0)}get ruleIndex(){return cn.RULE_optionalFetchDirection}accept(t){return t.visitOptionalFetchDirection?t.visitOptionalFetchDirection(this):t.visitChildren(this)}},YL=class extends ga{constructor(t,e){super(t,e)}MOVE(){return this.getToken(cn.MOVE,0)}optionalFetchDirection(){return this.getRuleContext(0,fL)}cursorVariable(){return this.getRuleContext(0,QL)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementMove}accept(t){return t.visitStatementMove?t.visitStatementMove(this):t.visitChildren(this)}},wL=class extends ga{constructor(t,e){super(t,e)}CLOSE(){return this.getToken(cn.CLOSE,0)}cursorVariable(){return this.getRuleContext(0,QL)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementClose}accept(t){return t.visitStatementClose?t.visitStatementClose(this):t.visitChildren(this)}},bL=class extends ga{constructor(t,e){super(t,e)}NULL_P(){return this.getToken(cn.NULL_P,0)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementNull}accept(t){return t.visitStatementNull?t.visitStatementNull(this):t.visitChildren(this)}},WL=class extends ga{constructor(t,e){super(t,e)}COMMIT(){return this.getToken(cn.COMMIT,0)}plsqlOptionalTransactionChain(){return this.getRuleContext(0,XL)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementCommit}accept(t){return t.visitStatementCommit?t.visitStatementCommit(this):t.visitChildren(this)}},VL=class extends ga{constructor(t,e){super(t,e)}ROLLBACK(){return this.getToken(cn.ROLLBACK,0)}plsqlOptionalTransactionChain(){return this.getRuleContext(0,XL)}SEMI(){return this.getToken(cn.SEMI,0)}get ruleIndex(){return cn.RULE_statementRollback}accept(t){return t.visitStatementRollback?t.visitStatementRollback(this):t.visitChildren(this)}},XL=class extends ga{constructor(t,e){super(t,e)}AND(){return this.getToken(cn.AND,0)}CHAIN(){return this.getToken(cn.CHAIN,0)}NO(){return this.getToken(cn.NO,0)}get ruleIndex(){return cn.RULE_plsqlOptionalTransactionChain}accept(t){return t.visitPlsqlOptionalTransactionChain?t.visitPlsqlOptionalTransactionChain(this):t.visitChildren(this)}},KL=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(cn.SET,0)}anyName(){return this.getRuleContext(0,mo)}TO(){return this.getToken(cn.TO,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}SEMI(){return this.getToken(cn.SEMI,0)}RESET(){return this.getToken(cn.RESET,0)}ALL(){return this.getToken(cn.ALL,0)}get ruleIndex(){return cn.RULE_statementSet}accept(t){return t.visitStatementSet?t.visitStatementSet(this):t.visitChildren(this)}},QL=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}PARAM(){return this.getToken(cn.PARAM,0)}get ruleIndex(){return cn.RULE_cursorVariable}accept(t){return t.visitCursorVariable?t.visitCursorVariable(this):t.visitChildren(this)}},JL=class extends ga{constructor(t,e){super(t,e)}EXCEPTION(){return this.getToken(cn.EXCEPTION,0)}procedureExceptions(){return this.getRuleContext(0,ZL)}get ruleIndex(){return cn.RULE_exceptionSection}accept(t){return t.visitExceptionSection?t.visitExceptionSection(this):t.visitChildren(this)}},ZL=class extends ga{constructor(t,e){super(t,e)}procedureException(t){return void 0===t?this.getRuleContexts(qL):this.getRuleContext(t,qL)}get ruleIndex(){return cn.RULE_procedureExceptions}accept(t){return t.visitProcedureExceptions?t.visitProcedureExceptions(this):t.visitChildren(this)}},qL=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}procedureConditions(){return this.getRuleContext(0,jL)}THEN(){return this.getToken(cn.THEN,0)}procedureSection(){return this.getRuleContext(0,fN)}get ruleIndex(){return cn.RULE_procedureException}accept(t){return t.visitProcedureException?t.visitProcedureException(this):t.visitChildren(this)}},jL=class extends ga{constructor(t,e){super(t,e)}procedureCondition(t){return void 0===t?this.getRuleContexts(zL):this.getRuleContext(t,zL)}OR(t){return void 0===t?this.getTokens(cn.OR):this.getToken(cn.OR,t)}get ruleIndex(){return cn.RULE_procedureConditions}accept(t){return t.visitProcedureConditions?t.visitProcedureConditions(this):t.visitChildren(this)}},zL=class extends ga{constructor(t,e){super(t,e)}anyIdentifier(){return this.getRuleContext(0,aC)}SQLSTATE(){return this.getToken(cn.SQLSTATE,0)}sconst(){return this.getRuleContext(0,Qu)}get ruleIndex(){return cn.RULE_procedureCondition}accept(t){return t.visitProcedureCondition?t.visitProcedureCondition(this):t.visitChildren(this)}},$L=class extends ga{constructor(t,e){super(t,e)}labelDeclaration(){return this.getRuleContext(0,CN)}get ruleIndex(){return cn.RULE_optionalBlockLabel}accept(t){return t.visitOptionalBlockLabel?t.visitOptionalBlockLabel(this):t.visitChildren(this)}},tC=class extends ga{constructor(t,e){super(t,e)}labelDeclaration(){return this.getRuleContext(0,CN)}get ruleIndex(){return cn.RULE_optionalLoopLabel}accept(t){return t.visitOptionalLoopLabel?t.visitOptionalLoopLabel(this):t.visitChildren(this)}},eC=class extends ga{constructor(t,e){super(t,e)}anyIdentifier(){return this.getRuleContext(0,aC)}get ruleIndex(){return cn.RULE_optionalLabel}accept(t){return t.visitOptionalLabel?t.visitOptionalLabel(this):t.visitChildren(this)}},sC=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(cn.WHEN,0)}expressionUntilSemi(){return this.getRuleContext(0,nC)}get ruleIndex(){return cn.RULE_optionalExitCondition}accept(t){return t.visitOptionalExitCondition?t.visitOptionalExitCondition(this):t.visitChildren(this)}},aC=class extends ga{constructor(t,e){super(t,e)}columnId(){return this.getRuleContext(0,$u)}plsqlUnreservedKeyword(){return this.getRuleContext(0,rC)}get ruleIndex(){return cn.RULE_anyIdentifier}accept(t){return t.visitAnyIdentifier?t.visitAnyIdentifier(this):t.visitChildren(this)}},rC=class extends ga{constructor(t,e){super(t,e)}ABSOLUTE_P(){return this.getToken(cn.ABSOLUTE_P,0)}ALIAS(){return this.getToken(cn.ALIAS,0)}AND(){return this.getToken(cn.AND,0)}ARRAY(){return this.getToken(cn.ARRAY,0)}ASSERT(){return this.getToken(cn.ASSERT,0)}BACKWARD(){return this.getToken(cn.BACKWARD,0)}CALL(){return this.getToken(cn.CALL,0)}CHAIN(){return this.getToken(cn.CHAIN,0)}CLOSE(){return this.getToken(cn.CLOSE,0)}COLLATE(){return this.getToken(cn.COLLATE,0)}COLUMN(){return this.getToken(cn.COLUMN,0)}COMMIT(){return this.getToken(cn.COMMIT,0)}CONSTANT(){return this.getToken(cn.CONSTANT,0)}CONSTRAINT(){return this.getToken(cn.CONSTRAINT,0)}CONTINUE_P(){return this.getToken(cn.CONTINUE_P,0)}CURRENT_P(){return this.getToken(cn.CURRENT_P,0)}CURSOR(){return this.getToken(cn.CURSOR,0)}DEBUG(){return this.getToken(cn.DEBUG,0)}DEFAULT(){return this.getToken(cn.DEFAULT,0)}DIAGNOSTICS(){return this.getToken(cn.DIAGNOSTICS,0)}DO(){return this.getToken(cn.DO,0)}DUMP(){return this.getToken(cn.DUMP,0)}ELSIF(){return this.getToken(cn.ELSIF,0)}ERROR(){return this.getToken(cn.ERROR,0)}EXCEPTION(){return this.getToken(cn.EXCEPTION,0)}EXIT(){return this.getToken(cn.EXIT,0)}FETCH(){return this.getToken(cn.FETCH,0)}FIRST_P(){return this.getToken(cn.FIRST_P,0)}FORWARD(){return this.getToken(cn.FORWARD,0)}GET(){return this.getToken(cn.GET,0)}INFO(){return this.getToken(cn.INFO,0)}INSERT(){return this.getToken(cn.INSERT,0)}IS(){return this.getToken(cn.IS,0)}LAST_P(){return this.getToken(cn.LAST_P,0)}MOVE(){return this.getToken(cn.MOVE,0)}NEXT(){return this.getToken(cn.NEXT,0)}NO(){return this.getToken(cn.NO,0)}NOTICE(){return this.getToken(cn.NOTICE,0)}OPEN(){return this.getToken(cn.OPEN,0)}OPTION(){return this.getToken(cn.OPTION,0)}PERFORM(){return this.getToken(cn.PERFORM,0)}PRINT_STRICT_PARAMS(){return this.getToken(cn.PRINT_STRICT_PARAMS,0)}PRIOR(){return this.getToken(cn.PRIOR,0)}QUERY(){return this.getToken(cn.QUERY,0)}RAISE(){return this.getToken(cn.RAISE,0)}RELATIVE_P(){return this.getToken(cn.RELATIVE_P,0)}RESET(){return this.getToken(cn.RESET,0)}RETURN(){return this.getToken(cn.RETURN,0)}ROLLBACK(){return this.getToken(cn.ROLLBACK,0)}ROWTYPE(){return this.getToken(cn.ROWTYPE,0)}SCHEMA(){return this.getToken(cn.SCHEMA,0)}SCROLL(){return this.getToken(cn.SCROLL,0)}SET(){return this.getToken(cn.SET,0)}SLICE(){return this.getToken(cn.SLICE,0)}SQLSTATE(){return this.getToken(cn.SQLSTATE,0)}STACKED(){return this.getToken(cn.STACKED,0)}TABLE(){return this.getToken(cn.TABLE,0)}TYPE_P(){return this.getToken(cn.TYPE_P,0)}USE_COLUMN(){return this.getToken(cn.USE_COLUMN,0)}USE_VARIABLE(){return this.getToken(cn.USE_VARIABLE,0)}VARIABLE_CONFLICT(){return this.getToken(cn.VARIABLE_CONFLICT,0)}WARNING(){return this.getToken(cn.WARNING,0)}OUTER_P(){return this.getToken(cn.OUTER_P,0)}get ruleIndex(){return cn.RULE_plsqlUnreservedKeyword}accept(t){return t.visitPlsqlUnreservedKeyword?t.visitPlsqlUnreservedKeyword(this):t.visitChildren(this)}},iC=class extends ga{constructor(t,e){super(t,e)}optionalTargetList(){return this.getRuleContext(0,Lu)}fromClause(){return this.getRuleContext(0,Vl)}whereClause(){return this.getRuleContext(0,EO)}groupClause(){return this.getRuleContext(0,Fl)}havingClause(){return this.getRuleContext(0,yl)}windowClause(){return this.getRuleContext(0,pI)}intoClause(){return this.getRuleContext(0,ll)}get ruleIndex(){return cn.RULE_sqlExpression}accept(t){return t.visitSqlExpression?t.visitSqlExpression(this):t.visitChildren(this)}},cC=class extends ga{constructor(t,e){super(t,e)}sqlExpression(){return this.getRuleContext(0,iC)}get ruleIndex(){return cn.RULE_expressionUntilThen}accept(t){return t.visitExpressionUntilThen?t.visitExpressionUntilThen(this):t.visitChildren(this)}},nC=class extends ga{constructor(t,e){super(t,e)}sqlExpression(){return this.getRuleContext(0,iC)}get ruleIndex(){return cn.RULE_expressionUntilSemi}accept(t){return t.visitExpressionUntilSemi?t.visitExpressionUntilSemi(this):t.visitChildren(this)}},hC=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_expressionUntilRightbracket}accept(t){return t.visitExpressionUntilRightbracket?t.visitExpressionUntilRightbracket(this):t.visitChildren(this)}},EC=class extends ga{constructor(t,e){super(t,e)}expression1(){return this.getRuleContext(0,wO)}get ruleIndex(){return cn.RULE_expressionUntilLoop}accept(t){return t.visitExpressionUntilLoop?t.visitExpressionUntilLoop(this):t.visitChildren(this)}},TC=class extends ga{constructor(t,e){super(t,e)}statement(){return this.getRuleContext(0,Tn)}optionalReturningClauseInto(){return this.getRuleContext(0,oC)}get ruleIndex(){return cn.RULE_makeExecuteSqlStatement}accept(t){return t.visitMakeExecuteSqlStatement?t.visitMakeExecuteSqlStatement(this):t.visitChildren(this)}},oC=class extends ga{constructor(t,e){super(t,e)}INTO(){return this.getToken(cn.INTO,0)}intoTarget(){return this.getRuleContext(0,BL)}STRICT_P(){return this.getToken(cn.STRICT_P,0)}get ruleIndex(){return cn.RULE_optionalReturningClauseInto}accept(t){return t.visitOptionalReturningClauseInto?t.visitOptionalReturningClauseInto(this):t.visitChildren(this)}},RC=class extends ga{constructor(t,e){super(t,e)}ROLE(){return this.getToken(cn.ROLE,0)}USER(){return this.getToken(cn.USER,0)}GROUP_P(){return this.getToken(cn.GROUP_P,0)}get ruleIndex(){return cn.RULE_roleOrAliases}accept(t){return t.visitRoleOrAliases?t.visitRoleOrAliases(this):t.visitChildren(this)}},AC=class extends Ii{},SC=/[\w]$/,lC=/\r\n|\n|\r/g;function OC(t,e){var s,a;let r=t.column,i=t.column+((null===(s=t.text)||void 0===s?void 0:s.length)||0),c=t.line;return{startColumn:r,startLine:c,endColumn:i,endLine:t.type===e&&t.text?c+((null===(a=t.text.match(lC))||void 0===a?void 0:a.length)||0):c}}function IC(t,e,s,a){let r=e.column-1;for(let i=0;ie.line||h===e.line&&E>r)return a?i:i>0&&h===e.line&&n===r&&SC.test(t.get(i-1).text||"")?i-1:t.get(i).type===s?i+1:i}}function uC(t,e){return t===e.startTokenIndex}var NC="(\\s|\r\n|\n|\r)+",LC=new RegExp("^(".concat(NC,")?explain").concat(NC,"$")),CC=new RegExp("^(".concat(NC,")?\\S+").concat(NC));function _C(t,e){let s=function(t,e){let s=t.split(lC),a=t.match(lC),r="";a&&(r=a[0]);let i=0;return s.reduce(((t,s,a)=>(e.line-1===a&&(i=t.length?t.length+e.column:e.column-1),0===a?s:t+r+s)),""),i}(t,e),a=function(t,e){let s=t.slice(0,e-1),a=t.slice(e-1),r=s.lastIndexOf(";"),i=a.indexOf(";"),c=r>-1?r+1:0,n=i>-1?i+s.length:t.length;return{statement:t.slice(c,n),cursorIndex:e-c}}(t,s),r=a.statement.slice(0,a.cursorIndex).toLowerCase();return!(0!==s&&r.match(CC)&&!r.match(LC))}function PC(t,e,s){let a=new t(Oi.fromString(s)),r=new e(new $i(a));return r.removeErrorListeners(),r}function MC(t,e,s){let a=e;for(;a-1;){let s=t.get(r);if(s.type===e.SEMICOLON)return;if(s.type===a)return s;r--}}function mC(t,e,s,a,r,i,c,n,h){let E=IC(i,c,a.SPACE,!0);if(!E)throw new Error("Could not find actualCursorTokenIndex at Ln ".concat(c.line,", Col ").concat(c.column));let T={},o=function(t,e,s){let a=t.get(t.size-1).start,r=e,i=!1;for(;r>=0&&r=0;){let e=t.get(r);if(e.type===s.SEMICOLON)return;if(e.type===s.ALTER&&!UC(t,s,r,s.ALTER))return{start:e.start,end:a,type:"alter"};if(e.type===s.INSERT)return{start:e.start,end:a,type:"insert"};if(e.type===s.UPDATE)return{start:e.start,end:a,type:"update"};r--}}(i,E,a);if(o){let a=r(PC(t,e,n.slice(o.start,o.end)),o.type);if(s.visit(a),h&&o.joinTableQueryPosition){let a=r(PC(t,e,n.slice(o.joinTableQueryPosition.start,o.joinTableQueryPosition.end)),"from");s.visit(a)}if(o.selectTableQueryPosition){let a=r(PC(t,e,n.slice(o.selectTableQueryPosition.start,o.selectTableQueryPosition.end)),"select");s.visit(a)}let i=jc(s);i.length&&(T.tableContextSuggestion={tables:i});let c=function(t){return t.symbolTable.getNestedSymbolsOfTypeSync(zc).map((t=>{let{name:e}=t;return{name:e}}))}(s);c.length&&(T.suggestColumnAliases=c.map((t=>{let{name:e}=t;return{name:e}})))}return T}var DC={SPACE:cn.Whitespace,FROM:cn.FROM,OPENING_BRACKET:cn.OPEN_PAREN,CLOSING_BRACKET:cn.CLOSE_PAREN,ALTER:cn.ALTER,INSERT:cn.INSERT,UPDATE:cn.UPDATE,JOIN:cn.JOIN,SEMICOLON:cn.SEMI,SELECT:cn.SELECT};var pC=new Set(function(){let t=[],e=cn.Dollar,s=cn.Operator;for(let i=e;i<=s;i++)i!==cn.STAR&&t.push(i);let a=cn.ABS,r=cn.AfterEscapeStringConstantWithNewlineMode_Continued;for(let i=a;i<=r;i++)t.push(i);return t.push(cn.EOF),t}()),gC=new Set([cn.RULE_columnId,cn.RULE_functionName,cn.RULE_functionExpressionCommonSubexpr,cn.RULE_indexName,cn.RULE_triggerName,cn.RULE_constraintName,cn.RULE_sequenceName,cn.RULE_schemaName,cn.RULE_databaseName,cn.RULE_roleName,cn.RULE_identifier,cn.RULE_plsqlVariableName,cn.RULE_constTypeName,cn.RULE_columnNameKeyword,cn.RULE_unreservedKeyword,cn.RULE_plsqlUnreservedKeyword,cn.RULE_typeFunctionNameKeyword,cn.RULE_reservedKeyword]),xC=class extends AC{constructor(){super(),this.visitRelationExpression=t=>{try{var e;this.symbolTable.addNewSymbolOfType(qc,this.scope,(null===(e=t.qualifiedName())||void 0===e?void 0:e.getText())||"")}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitTableReference=t=>{try{var e,s,a,r,i;this.symbolTable.addNewSymbolOfType(qc,this.scope,(null===(e=t.relationExpression())||void 0===e||null===(s=e.qualifiedName())||void 0===s?void 0:s.getText())||"",null===(a=t.optionalAliasClause())||void 0===a||null===(r=a.tableAliasClause())||void 0===r||null===(i=r.tableAlias())||void 0===i?void 0:i.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitInsertTarget=t=>{try{var e,s;this.symbolTable.addNewSymbolOfType(qc,this.scope,(null===(e=t.qualifiedName())||void 0===e?void 0:e.getText())||"",null===(s=t.columnId())||void 0===s?void 0:s.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitTarget_label=t=>{try{var e,s;let a=(null===(e=t.columnLabel())||void 0===e?void 0:e.getText())||(null===(s=t.identifier())||void 0===s?void 0:s.getText());a&&this.symbolTable.addNewSymbolOfType(zc,this.scope,a)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitViewName=t=>{try{this.symbolTable.addNewSymbolOfType(qc,this.scope,t.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.symbolTable=new Zc("",{allowDuplicateSymbols:!0}),this.scope=this.symbolTable.addNewSymbolOfType(Bc,void 0)}};function kC(t,e){if(!e)return t.root();switch(e){case"from":return t.nonAnsiJoin();case"alter":return t.alterTableStatement();case"insert":return t.insertStatement();case"update":return t.updateStatement();case"select":return t.selectStatement()}}var HC={Lexer:an,Parser:cn,tokenDictionary:DC,ignoredTokens:pC,rulesToVisit:gC,getParseTree:kC,enrichAutocompleteResult:function(t,e,s,a,r,i){let{shouldSuggestColumns:c,shouldSuggestColumnAliases:n,shouldSuggestConstraints:h,...E}=function(t,e,s){let a,r=!1,i=!1,c=!1,n=!1,h=!1,E=!1,T=!1,o=!1,R=!1,A=!1,S=!1;for(let[l,O]of t)if(uC(e,O))switch(l){case cn.RULE_functionExpressionCommonSubexpr:case cn.RULE_functionName:i=!0,r=!0;break;case cn.RULE_columnId:{let t=O.ruleList.includes(cn.RULE_qualifiedName)&&(O.ruleList.includes(cn.RULE_insertTarget)||O.ruleList.includes(cn.RULE_relationExpression)),r=!O.ruleList.includes(cn.RULE_createStatement)&&(t||O.ruleList.includes(cn.RULE_functionTable));UC(s,DC,e,cn.VIEW)&&!UC(s,DC,e,cn.Identifier)&&(O.ruleList.includes(cn.RULE_alterTableStatement)||O.ruleList.includes(cn.RULE_refreshMaterializedViewStatement)||O.ruleList.includes(cn.RULE_renameStatement)||O.ruleList.includes(cn.RULE_alterObjectDependsStatement)||O.ruleList.includes(cn.RULE_alterObjectSchemaStatement)||O.ruleList.includes(cn.RULE_dropStatement))?a="VIEWS":UC(s,DC,e,cn.TABLE)&&(O.ruleList.includes(cn.RULE_dropStatement)||r)?a="TABLES":r?a="ALL":!O.ruleList.includes(cn.RULE_selectLimitValue)&&!O.ruleList.includes(cn.RULE_selectOffsetValue)&&(A=!0,(O.ruleList.includes(cn.RULE_groupByItem)||O.ruleList.includes(cn.RULE_sortBy))&&(S=!0));break}case cn.RULE_indexName:c=!0;break;case cn.RULE_triggerName:n=!0;break;case cn.RULE_constraintName:R=!0;break;case cn.RULE_sequenceName:h=!0;break;case cn.RULE_schemaName:E=!0;break;case cn.RULE_databaseName:T=!0;break;case cn.RULE_roleName:o=!0}return{suggestViewsOrTables:a,suggestAggregateFunctions:r,suggestFunctions:i,suggestIndexes:c,suggestTriggers:n,shouldSuggestConstraints:R,suggestSequences:h,suggestSchemas:E,suggestDatabases:T,suggestRoles:o,shouldSuggestColumns:A,shouldSuggestColumnAliases:S}}(e,a,s),T={...t,...E,suggestTemplates:_C(i,r)};if(c||h||n){let t=new xC,{tableContextSuggestion:e,suggestColumnAliases:a}=mC(an,cn,t,DC,kC,s,r,i,!0);c&&e&&(T.suggestColumns=e),h&&e&&(T.suggestConstraints=e),n&&a&&(T.suggestColumnAliases=a)}return T}},GC=(Ki=class t extends $r{constructor(e){super(e),this.interpreter=new hi(this,t._ATN,t.decisionsToDFA,new Si)}get grammarFileName(){return"MySqlLexer.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}get channelNames(){return t.channelNames}get modeNames(){return t.modeNames}static get _ATN(){return t.__ATN||(t.__ATN=(new fr).deserialize(t._serializedATN)),t.__ATN}get vocabulary(){return t.vocabulary}},Ki.SPACE=1,Ki.SPEC_MYSQL_COMMENT=2,Ki.COMMENT_INPUT=3,Ki.LINE_COMMENT=4,Ki.ADD=5,Ki.ALL=6,Ki.ALTER=7,Ki.ALWAYS=8,Ki.ANALYZE=9,Ki.AND=10,Ki.ARRAY=11,Ki.AS=12,Ki.ASC=13,Ki.ATTRIBUTE=14,Ki.BEFORE=15,Ki.BETWEEN=16,Ki.BOTH=17,Ki.BUCKETS=18,Ki.BY=19,Ki.CALL=20,Ki.CASCADE=21,Ki.CASE=22,Ki.CAST=23,Ki.CHANGE=24,Ki.CHARACTER=25,Ki.CHECK=26,Ki.COLLATE=27,Ki.COLUMN=28,Ki.CONDITION=29,Ki.CONSTRAINT=30,Ki.CONTINUE=31,Ki.CONVERT=32,Ki.CREATE=33,Ki.CROSS=34,Ki.CURRENT=35,Ki.CURRENT_ROLE=36,Ki.CURRENT_USER=37,Ki.CURSOR=38,Ki.DATABASE=39,Ki.DATABASES=40,Ki.DECLARE=41,Ki.DEFAULT=42,Ki.DELAYED=43,Ki.DELETE=44,Ki.DESC=45,Ki.DESCRIBE=46,Ki.DETERMINISTIC=47,Ki.DIAGNOSTICS=48,Ki.DISTINCT=49,Ki.DISTINCTROW=50,Ki.DROP=51,Ki.EACH=52,Ki.ELSE=53,Ki.ELSEIF=54,Ki.EMPTY=55,Ki.ENCLOSED=56,Ki.ENFORCED=57,Ki.ESCAPED=58,Ki.EXCEPT=59,Ki.EXISTS=60,Ki.EXIT=61,Ki.EXPLAIN=62,Ki.FALSE=63,Ki.FETCH=64,Ki.FOR=65,Ki.FORCE=66,Ki.FOREIGN=67,Ki.FROM=68,Ki.FULLTEXT=69,Ki.GENERATED=70,Ki.GET=71,Ki.GRANT=72,Ki.GROUP=73,Ki.HAVING=74,Ki.HIGH_PRIORITY=75,Ki.HISTOGRAM=76,Ki.IF=77,Ki.IGNORE=78,Ki.IGNORED=79,Ki.IN=80,Ki.INDEX=81,Ki.INFILE=82,Ki.INNER=83,Ki.INOUT=84,Ki.INSERT=85,Ki.INTERVAL=86,Ki.INTO=87,Ki.IS=88,Ki.ITERATE=89,Ki.JOIN=90,Ki.KEY=91,Ki.KEYS=92,Ki.KILL=93,Ki.LATERAL=94,Ki.LEADING=95,Ki.LEAVE=96,Ki.LEFT=97,Ki.LIKE=98,Ki.LIMIT=99,Ki.LINEAR=100,Ki.LINES=101,Ki.LOAD=102,Ki.LOCK=103,Ki.LOCKED=104,Ki.LOOP=105,Ki.LOW_PRIORITY=106,Ki.MASTER_BIND=107,Ki.MASTER_SSL_VERIFY_SERVER_CERT=108,Ki.MATCH=109,Ki.MAXVALUE=110,Ki.MINVALUE=111,Ki.MODIFIES=112,Ki.NATURAL=113,Ki.NOT=114,Ki.NO_WRITE_TO_BINLOG=115,Ki.NULL_LITERAL=116,Ki.NUMBER=117,Ki.ON=118,Ki.OPTIMIZE=119,Ki.OPTION=120,Ki.OPTIONAL=121,Ki.OPTIONALLY=122,Ki.OR=123,Ki.ORDER=124,Ki.OUT=125,Ki.OUTER=126,Ki.OUTFILE=127,Ki.OVER=128,Ki.PARTITION=129,Ki.PRIMARY=130,Ki.PROCEDURE=131,Ki.PURGE=132,Ki.RANGE=133,Ki.READ=134,Ki.READS=135,Ki.REFERENCES=136,Ki.REGEXP=137,Ki.RELEASE=138,Ki.RENAME=139,Ki.REPEAT=140,Ki.REPLACE=141,Ki.REQUIRE=142,Ki.RESIGNAL=143,Ki.RESTRICT=144,Ki.RETAIN=145,Ki.RETURN=146,Ki.REVOKE=147,Ki.RIGHT=148,Ki.RLIKE=149,Ki.SCHEMA=150,Ki.SCHEMAS=151,Ki.SELECT=152,Ki.SET=153,Ki.SEPARATOR=154,Ki.SHOW=155,Ki.SIGNAL=156,Ki.SKIP_=157,Ki.SKIP_QUERY_REWRITE=158,Ki.SPATIAL=159,Ki.SQL=160,Ki.SQLEXCEPTION=161,Ki.SQLSTATE=162,Ki.SQLWARNING=163,Ki.SQL_BIG_RESULT=164,Ki.SQL_CALC_FOUND_ROWS=165,Ki.SQL_SMALL_RESULT=166,Ki.SSL=167,Ki.STACKED=168,Ki.STARTING=169,Ki.STATEMENT=170,Ki.STRAIGHT_JOIN=171,Ki.TABLE=172,Ki.TERMINATED=173,Ki.THEN=174,Ki.TO=175,Ki.TRAILING=176,Ki.TRIGGER=177,Ki.TRUE=178,Ki.UNDO=179,Ki.UNION=180,Ki.UNIQUE=181,Ki.UNLOCK=182,Ki.UNSIGNED=183,Ki.UPDATE=184,Ki.USAGE=185,Ki.USE=186,Ki.USING=187,Ki.VALUES=188,Ki.WHEN=189,Ki.WHERE=190,Ki.WHILE=191,Ki.WITH=192,Ki.WRITE=193,Ki.XOR=194,Ki.ZEROFILL=195,Ki.TINYINT=196,Ki.SMALLINT=197,Ki.MEDIUMINT=198,Ki.MIDDLEINT=199,Ki.INT=200,Ki.INT1=201,Ki.INT2=202,Ki.INT3=203,Ki.INT4=204,Ki.INT8=205,Ki.INTEGER=206,Ki.BIGINT=207,Ki.REAL=208,Ki.DOUBLE=209,Ki.PRECISION=210,Ki.FLOAT=211,Ki.FLOAT4=212,Ki.FLOAT8=213,Ki.DECIMAL=214,Ki.DEC=215,Ki.NUMERIC=216,Ki.DATE=217,Ki.TIME=218,Ki.TIMESTAMP=219,Ki.DATETIME=220,Ki.YEAR=221,Ki.CHAR=222,Ki.VARCHAR=223,Ki.NVARCHAR=224,Ki.NATIONAL=225,Ki.BINARY=226,Ki.VARBINARY=227,Ki.TINYBLOB=228,Ki.BLOB=229,Ki.MEDIUMBLOB=230,Ki.LONG=231,Ki.LONGBLOB=232,Ki.TINYTEXT=233,Ki.TEXT=234,Ki.MEDIUMTEXT=235,Ki.LONGTEXT=236,Ki.ENUM=237,Ki.VARYING=238,Ki.SERIAL=239,Ki.YEAR_MONTH=240,Ki.DAY_HOUR=241,Ki.DAY_MINUTE=242,Ki.DAY_SECOND=243,Ki.HOUR_MINUTE=244,Ki.HOUR_SECOND=245,Ki.MINUTE_SECOND=246,Ki.SECOND_MICROSECOND=247,Ki.MINUTE_MICROSECOND=248,Ki.HOUR_MICROSECOND=249,Ki.DAY_MICROSECOND=250,Ki.JSON_ARRAY=251,Ki.JSON_ARRAYAGG=252,Ki.JSON_ARRAY_APPEND=253,Ki.JSON_ARRAY_INSERT=254,Ki.JSON_CONTAINS=255,Ki.JSON_CONTAINS_PATH=256,Ki.JSON_DEPTH=257,Ki.JSON_EXTRACT=258,Ki.JSON_INSERT=259,Ki.JSON_KEYS=260,Ki.JSON_LENGTH=261,Ki.JSON_MERGE=262,Ki.JSON_MERGE_PATCH=263,Ki.JSON_MERGE_PRESERVE=264,Ki.JSON_OBJECT=265,Ki.JSON_OBJECTAGG=266,Ki.JSON_OVERLAPS=267,Ki.JSON_PRETTY=268,Ki.JSON_QUOTE=269,Ki.JSON_REMOVE=270,Ki.JSON_REPLACE=271,Ki.JSON_SCHEMA_VALID=272,Ki.JSON_SCHEMA_VALIDATION_REPORT=273,Ki.JSON_SEARCH=274,Ki.JSON_SET=275,Ki.JSON_STORAGE_FREE=276,Ki.JSON_STORAGE_SIZE=277,Ki.JSON_TABLE=278,Ki.JSON_TYPE=279,Ki.JSON_UNQUOTE=280,Ki.JSON_VALID=281,Ki.JSON_VALUE=282,Ki.NESTED=283,Ki.ORDINALITY=284,Ki.PATH=285,Ki.AVG=286,Ki.BIT_AND=287,Ki.BIT_OR=288,Ki.BIT_XOR=289,Ki.COUNT=290,Ki.CUME_DIST=291,Ki.DENSE_RANK=292,Ki.FIRST_VALUE=293,Ki.GROUP_CONCAT=294,Ki.LAG=295,Ki.LAST_VALUE=296,Ki.LEAD=297,Ki.MAX=298,Ki.MIN=299,Ki.NTILE=300,Ki.NTH_VALUE=301,Ki.PERCENT_RANK=302,Ki.RANK=303,Ki.ROW_NUMBER=304,Ki.STD=305,Ki.STDDEV=306,Ki.STDDEV_POP=307,Ki.STDDEV_SAMP=308,Ki.SUM=309,Ki.VAR_POP=310,Ki.VAR_SAMP=311,Ki.VARIANCE=312,Ki.CURRENT_DATE=313,Ki.CURRENT_TIME=314,Ki.CURRENT_TIMESTAMP=315,Ki.LOCALTIME=316,Ki.CURDATE=317,Ki.CURTIME=318,Ki.DATE_ADD=319,Ki.DATE_SUB=320,Ki.EXTRACT=321,Ki.LOCALTIMESTAMP=322,Ki.NOW=323,Ki.POSITION=324,Ki.SUBSTR=325,Ki.SUBSTRING=326,Ki.SYSDATE=327,Ki.TRIM=328,Ki.UTC_DATE=329,Ki.UTC_TIME=330,Ki.UTC_TIMESTAMP=331,Ki.ACCOUNT=332,Ki.ACTION=333,Ki.AFTER=334,Ki.AGGREGATE=335,Ki.ALGORITHM=336,Ki.ANY=337,Ki.AT=338,Ki.AUTHORS=339,Ki.AUTOCOMMIT=340,Ki.AUTOEXTEND_SIZE=341,Ki.AUTO_INCREMENT=342,Ki.AVG_ROW_LENGTH=343,Ki.BEGIN=344,Ki.BINLOG=345,Ki.BIT=346,Ki.BLOCK=347,Ki.BOOL=348,Ki.BOOLEAN=349,Ki.BTREE=350,Ki.CACHE=351,Ki.CASCADED=352,Ki.CHAIN=353,Ki.CHANGED=354,Ki.CHANNEL=355,Ki.CHECKSUM=356,Ki.PAGE_CHECKSUM=357,Ki.CIPHER=358,Ki.CLASS_ORIGIN=359,Ki.CLIENT=360,Ki.CLOSE=361,Ki.CLUSTERING=362,Ki.COALESCE=363,Ki.CODE=364,Ki.COLUMNS=365,Ki.COLUMN_FORMAT=366,Ki.COLUMN_NAME=367,Ki.COMMENT=368,Ki.COMMIT=369,Ki.COMPACT=370,Ki.COMPLETION=371,Ki.COMPRESSED=372,Ki.COMPRESSION=373,Ki.CONCURRENT=374,Ki.CONNECT=375,Ki.CONNECTION=376,Ki.CONSISTENT=377,Ki.CONSTRAINT_CATALOG=378,Ki.CONSTRAINT_SCHEMA=379,Ki.CONSTRAINT_NAME=380,Ki.CONTAINS=381,Ki.CONTEXT=382,Ki.CONTRIBUTORS=383,Ki.COPY=384,Ki.CPU=385,Ki.CYCLE=386,Ki.CURSOR_NAME=387,Ki.DATA=388,Ki.DATAFILE=389,Ki.DEALLOCATE=390,Ki.DEFAULT_AUTH=391,Ki.DEFINER=392,Ki.DELAY_KEY_WRITE=393,Ki.DES_KEY_FILE=394,Ki.DIRECTORY=395,Ki.DISABLE=396,Ki.DISCARD=397,Ki.DISK=398,Ki.DO=399,Ki.DUMPFILE=400,Ki.DUPLICATE=401,Ki.DYNAMIC=402,Ki.ENABLE=403,Ki.ENCRYPTED=404,Ki.ENCRYPTION=405,Ki.ENCRYPTION_KEY_ID=406,Ki.END=407,Ki.ENDS=408,Ki.ENGINE=409,Ki.ENGINES=410,Ki.ERROR=411,Ki.ERRORS=412,Ki.ESCAPE=413,Ki.EVEN=414,Ki.EVENT=415,Ki.EVENTS=416,Ki.EVERY=417,Ki.EXCHANGE=418,Ki.EXCLUSIVE=419,Ki.EXPIRE=420,Ki.EXPORT=421,Ki.EXTENDED=422,Ki.EXTENT_SIZE=423,Ki.FAILED_LOGIN_ATTEMPTS=424,Ki.FAST=425,Ki.FAULTS=426,Ki.FIELDS=427,Ki.FILE_BLOCK_SIZE=428,Ki.FILTER=429,Ki.FIRST=430,Ki.FIXED=431,Ki.FLUSH=432,Ki.FOLLOWING=433,Ki.FOLLOWS=434,Ki.FOUND=435,Ki.FULL=436,Ki.FUNCTION=437,Ki.GENERAL=438,Ki.GLOBAL=439,Ki.GRANTS=440,Ki.GROUP_REPLICATION=441,Ki.HANDLER=442,Ki.HASH=443,Ki.HELP=444,Ki.HISTORY=445,Ki.HOST=446,Ki.HOSTS=447,Ki.IDENTIFIED=448,Ki.IGNORE_SERVER_IDS=449,Ki.IMPORT=450,Ki.INCREMENT=451,Ki.INDEXES=452,Ki.INITIAL_SIZE=453,Ki.INPLACE=454,Ki.INSERT_METHOD=455,Ki.INSTALL=456,Ki.INSTANCE=457,Ki.INSTANT=458,Ki.INVISIBLE=459,Ki.INVOKER=460,Ki.IO=461,Ki.IO_THREAD=462,Ki.IPC=463,Ki.ISOLATION=464,Ki.ISSUER=465,Ki.JSON=466,Ki.KEY_BLOCK_SIZE=467,Ki.LANGUAGE=468,Ki.LAST=469,Ki.LEAVES=470,Ki.LESS=471,Ki.LEVEL=472,Ki.LIST=473,Ki.LOCAL=474,Ki.LOGFILE=475,Ki.LOGS=476,Ki.MASTER=477,Ki.MASTER_AUTO_POSITION=478,Ki.MASTER_CONNECT_RETRY=479,Ki.MASTER_DELAY=480,Ki.MASTER_HEARTBEAT_PERIOD=481,Ki.MASTER_HOST=482,Ki.MASTER_LOG_FILE=483,Ki.MASTER_LOG_POS=484,Ki.MASTER_PASSWORD=485,Ki.MASTER_PORT=486,Ki.MASTER_RETRY_COUNT=487,Ki.MASTER_SSL=488,Ki.MASTER_SSL_CA=489,Ki.MASTER_SSL_CAPATH=490,Ki.MASTER_SSL_CERT=491,Ki.MASTER_SSL_CIPHER=492,Ki.MASTER_SSL_CRL=493,Ki.MASTER_SSL_CRLPATH=494,Ki.MASTER_SSL_KEY=495,Ki.MASTER_TLS_VERSION=496,Ki.MASTER_USER=497,Ki.MAX_CONNECTIONS_PER_HOUR=498,Ki.MAX_QUERIES_PER_HOUR=499,Ki.MAX_ROWS=500,Ki.MAX_SIZE=501,Ki.MAX_UPDATES_PER_HOUR=502,Ki.MAX_USER_CONNECTIONS=503,Ki.MEDIUM=504,Ki.MEMBER=505,Ki.MERGE=506,Ki.MESSAGE_TEXT=507,Ki.MID=508,Ki.MIGRATE=509,Ki.MIN_ROWS=510,Ki.MODE=511,Ki.MODIFY=512,Ki.MUTEX=513,Ki.MYSQL=514,Ki.MYSQL_ERRNO=515,Ki.NAME=516,Ki.NAMES=517,Ki.NCHAR=518,Ki.NEVER=519,Ki.NEXT=520,Ki.NO=521,Ki.NOCACHE=522,Ki.NOCOPY=523,Ki.NOCYCLE=524,Ki.NOMAXVALUE=525,Ki.NOMINVALUE=526,Ki.NOWAIT=527,Ki.NODEGROUP=528,Ki.NONE=529,Ki.ODBC=530,Ki.OFFLINE=531,Ki.OFFSET=532,Ki.OF=533,Ki.OJ=534,Ki.OLD_PASSWORD=535,Ki.ONE=536,Ki.ONLINE=537,Ki.ONLY=538,Ki.OPEN=539,Ki.OPTIMIZER_COSTS=540,Ki.OPTIONS=541,Ki.OWNER=542,Ki.PACK_KEYS=543,Ki.PAGE=544,Ki.PAGE_COMPRESSED=545,Ki.PAGE_COMPRESSION_LEVEL=546,Ki.PARSER=547,Ki.PARTIAL=548,Ki.PARTITIONING=549,Ki.PARTITIONS=550,Ki.PASSWORD=551,Ki.PASSWORD_LOCK_TIME=552,Ki.PHASE=553,Ki.PLUGIN=554,Ki.PLUGIN_DIR=555,Ki.PLUGINS=556,Ki.PORT=557,Ki.PRECEDES=558,Ki.PRECEDING=559,Ki.PREPARE=560,Ki.PRESERVE=561,Ki.PREV=562,Ki.PROCESSLIST=563,Ki.PROFILE=564,Ki.PROFILES=565,Ki.PROXY=566,Ki.QUERY=567,Ki.QUICK=568,Ki.REBUILD=569,Ki.RECOVER=570,Ki.RECURSIVE=571,Ki.REDO_BUFFER_SIZE=572,Ki.REDUNDANT=573,Ki.RELAY=574,Ki.RELAY_LOG_FILE=575,Ki.RELAY_LOG_POS=576,Ki.RELAYLOG=577,Ki.REMOVE=578,Ki.REORGANIZE=579,Ki.REPAIR=580,Ki.REPLICATE_DO_DB=581,Ki.REPLICATE_DO_TABLE=582,Ki.REPLICATE_IGNORE_DB=583,Ki.REPLICATE_IGNORE_TABLE=584,Ki.REPLICATE_REWRITE_DB=585,Ki.REPLICATE_WILD_DO_TABLE=586,Ki.REPLICATE_WILD_IGNORE_TABLE=587,Ki.REPLICATION=588,Ki.RESET=589,Ki.RESTART=590,Ki.RESUME=591,Ki.RETURNED_SQLSTATE=592,Ki.RETURNING=593,Ki.RETURNS=594,Ki.REUSE=595,Ki.ROLE=596,Ki.ROLLBACK=597,Ki.ROLLUP=598,Ki.ROTATE=599,Ki.ROW=600,Ki.ROWS=601,Ki.ROW_FORMAT=602,Ki.RTREE=603,Ki.SAVEPOINT=604,Ki.SCHEDULE=605,Ki.SECURITY=606,Ki.SEQUENCE=607,Ki.SERVER=608,Ki.SESSION=609,Ki.SHARE=610,Ki.SHARED=611,Ki.SIGNED=612,Ki.SIMPLE=613,Ki.SLAVE=614,Ki.SLOW=615,Ki.SNAPSHOT=616,Ki.SOCKET=617,Ki.SOME=618,Ki.SONAME=619,Ki.SOUNDS=620,Ki.SOURCE=621,Ki.SQL_AFTER_GTIDS=622,Ki.SQL_AFTER_MTS_GAPS=623,Ki.SQL_BEFORE_GTIDS=624,Ki.SQL_BUFFER_RESULT=625,Ki.SQL_CACHE=626,Ki.SQL_NO_CACHE=627,Ki.SQL_THREAD=628,Ki.START=629,Ki.STARTS=630,Ki.STATS_AUTO_RECALC=631,Ki.STATS_PERSISTENT=632,Ki.STATS_SAMPLE_PAGES=633,Ki.STATUS=634,Ki.STOP=635,Ki.STORAGE=636,Ki.STORED=637,Ki.STRING=638,Ki.SUBCLASS_ORIGIN=639,Ki.SUBJECT=640,Ki.SUBPARTITION=641,Ki.SUBPARTITIONS=642,Ki.SUSPEND=643,Ki.SWAPS=644,Ki.SWITCHES=645,Ki.TABLE_NAME=646,Ki.TABLESPACE=647,Ki.TABLE_TYPE=648,Ki.TEMPORARY=649,Ki.TEMPTABLE=650,Ki.THAN=651,Ki.TRADITIONAL=652,Ki.TRANSACTION=653,Ki.TRANSACTIONAL=654,Ki.TRIGGERS=655,Ki.TRUNCATE=656,Ki.UNBOUNDED=657,Ki.UNDEFINED=658,Ki.UNDOFILE=659,Ki.UNDO_BUFFER_SIZE=660,Ki.UNINSTALL=661,Ki.UNKNOWN=662,Ki.UNTIL=663,Ki.UPGRADE=664,Ki.USER=665,Ki.USE_FRM=666,Ki.USER_RESOURCES=667,Ki.VALIDATION=668,Ki.VALUE=669,Ki.VARIABLES=670,Ki.VIEW=671,Ki.VIRTUAL=672,Ki.VISIBLE=673,Ki.WAIT=674,Ki.WARNINGS=675,Ki.WINDOW=676,Ki.WITHOUT=677,Ki.WORK=678,Ki.WRAPPER=679,Ki.X509=680,Ki.XA=681,Ki.XML=682,Ki.YES=683,Ki.EUR=684,Ki.USA=685,Ki.JIS=686,Ki.ISO=687,Ki.INTERNAL=688,Ki.QUARTER=689,Ki.MONTH=690,Ki.DAY=691,Ki.HOUR=692,Ki.MINUTE=693,Ki.WEEK=694,Ki.SECOND=695,Ki.MICROSECOND=696,Ki.ADMIN=697,Ki.APPLICATION_PASSWORD_ADMIN=698,Ki.AUDIT_ABORT_EXEMPT=699,Ki.AUDIT_ADMIN=700,Ki.AUTHENTICATION_POLICY_ADMIN=701,Ki.BACKUP_ADMIN=702,Ki.BINLOG_ADMIN=703,Ki.BINLOG_ENCRYPTION_ADMIN=704,Ki.CLONE_ADMIN=705,Ki.CONNECTION_ADMIN=706,Ki.ENCRYPTION_KEY_ADMIN=707,Ki.EXECUTE=708,Ki.FILE=709,Ki.FIREWALL_ADMIN=710,Ki.FIREWALL_EXEMPT=711,Ki.FIREWALL_USER=712,Ki.FLUSH_OPTIMIZER_COSTS=713,Ki.FLUSH_STATUS=714,Ki.FLUSH_TABLES=715,Ki.FLUSH_USER_RESOURCES=716,Ki.GROUP_REPLICATION_ADMIN=717,Ki.INNODB_REDO_LOG_ARCHIVE=718,Ki.INNODB_REDO_LOG_ENABLE=719,Ki.INVOKE=720,Ki.LAMBDA=721,Ki.NDB_STORED_USER=722,Ki.PASSWORDLESS_USER_ADMIN=723,Ki.PERSIST_RO_VARIABLES_ADMIN=724,Ki.PRIVILEGES=725,Ki.PROCESS=726,Ki.RELOAD=727,Ki.REPLICATION_APPLIER=728,Ki.REPLICATION_SLAVE_ADMIN=729,Ki.RESOURCE_GROUP_ADMIN=730,Ki.RESOURCE_GROUP_USER=731,Ki.ROLE_ADMIN=732,Ki.ROUTINE=733,Ki.S3=734,Ki.SERVICE_CONNECTION_ADMIN=735,Ki.SESSION_VARIABLES_ADMIN=736,Ki.SET_USER_ID=737,Ki.SHOW_ROUTINE=738,Ki.SHUTDOWN=739,Ki.SUPER=740,Ki.SYSTEM_VARIABLES_ADMIN=741,Ki.TABLES=742,Ki.TABLE_ENCRYPTION_ADMIN=743,Ki.VERSION_TOKEN_ADMIN=744,Ki.XA_RECOVER_ADMIN=745,Ki.ARMSCII8=746,Ki.ASCII=747,Ki.BIG5=748,Ki.CP1250=749,Ki.CP1251=750,Ki.CP1256=751,Ki.CP1257=752,Ki.CP850=753,Ki.CP852=754,Ki.CP866=755,Ki.CP932=756,Ki.DEC8=757,Ki.EUCJPMS=758,Ki.EUCKR=759,Ki.GB18030=760,Ki.GB2312=761,Ki.GBK=762,Ki.GEOSTD8=763,Ki.GREEK=764,Ki.HEBREW=765,Ki.HP8=766,Ki.KEYBCS2=767,Ki.KOI8R=768,Ki.KOI8U=769,Ki.LATIN1=770,Ki.LATIN2=771,Ki.LATIN5=772,Ki.LATIN7=773,Ki.MACCE=774,Ki.MACROMAN=775,Ki.SJIS=776,Ki.SWE7=777,Ki.TIS620=778,Ki.UCS2=779,Ki.UJIS=780,Ki.UTF16=781,Ki.UTF16LE=782,Ki.UTF32=783,Ki.UTF8=784,Ki.UTF8MB3=785,Ki.UTF8MB4=786,Ki.ARCHIVE=787,Ki.BLACKHOLE=788,Ki.CSV=789,Ki.FEDERATED=790,Ki.INNODB=791,Ki.MEMORY=792,Ki.MRG_MYISAM=793,Ki.MYISAM=794,Ki.NDB=795,Ki.NDBCLUSTER=796,Ki.PERFORMANCE_SCHEMA=797,Ki.TOKUDB=798,Ki.REPEATABLE=799,Ki.COMMITTED=800,Ki.UNCOMMITTED=801,Ki.SERIALIZABLE=802,Ki.GEOMETRYCOLLECTION=803,Ki.GEOMCOLLECTION=804,Ki.GEOMETRY=805,Ki.LINESTRING=806,Ki.MULTILINESTRING=807,Ki.MULTIPOINT=808,Ki.MULTIPOLYGON=809,Ki.POINT=810,Ki.POLYGON=811,Ki.ABS=812,Ki.ACOS=813,Ki.ADDDATE=814,Ki.ADDTIME=815,Ki.AES_DECRYPT=816,Ki.AES_ENCRYPT=817,Ki.AREA=818,Ki.ASBINARY=819,Ki.ASIN=820,Ki.ASTEXT=821,Ki.ASWKB=822,Ki.ASWKT=823,Ki.ASYMMETRIC_DECRYPT=824,Ki.ASYMMETRIC_DERIVE=825,Ki.ASYMMETRIC_ENCRYPT=826,Ki.ASYMMETRIC_SIGN=827,Ki.ASYMMETRIC_VERIFY=828,Ki.ATAN=829,Ki.ATAN2=830,Ki.BENCHMARK=831,Ki.BIN=832,Ki.BIT_COUNT=833,Ki.BIT_LENGTH=834,Ki.BUFFER=835,Ki.CATALOG_NAME=836,Ki.CEIL=837,Ki.CEILING=838,Ki.CENTROID=839,Ki.CHARACTER_LENGTH=840,Ki.CHARSET=841,Ki.CHAR_LENGTH=842,Ki.COERCIBILITY=843,Ki.COLLATION=844,Ki.COMPRESS=845,Ki.CONCAT=846,Ki.CONCAT_WS=847,Ki.CONNECTION_ID=848,Ki.CONV=849,Ki.CONVERT_TZ=850,Ki.COS=851,Ki.COT=852,Ki.CRC32=853,Ki.CREATE_ASYMMETRIC_PRIV_KEY=854,Ki.CREATE_ASYMMETRIC_PUB_KEY=855,Ki.CREATE_DH_PARAMETERS=856,Ki.CREATE_DIGEST=857,Ki.CROSSES=858,Ki.DATEDIFF=859,Ki.DATE_FORMAT=860,Ki.DAYNAME=861,Ki.DAYOFMONTH=862,Ki.DAYOFWEEK=863,Ki.DAYOFYEAR=864,Ki.DECODE=865,Ki.DEGREES=866,Ki.DES_DECRYPT=867,Ki.DES_ENCRYPT=868,Ki.DIMENSION=869,Ki.DISJOINT=870,Ki.ELT=871,Ki.ENCODE=872,Ki.ENCRYPT=873,Ki.ENDPOINT=874,Ki.ENGINE_ATTRIBUTE=875,Ki.ENVELOPE=876,Ki.EQUALS=877,Ki.EXP=878,Ki.EXPORT_SET=879,Ki.EXTERIORRING=880,Ki.EXTRACTVALUE=881,Ki.FIELD=882,Ki.FIND_IN_SET=883,Ki.FLOOR=884,Ki.FORMAT=885,Ki.FOUND_ROWS=886,Ki.FROM_BASE64=887,Ki.FROM_DAYS=888,Ki.FROM_UNIXTIME=889,Ki.GEOMCOLLFROMTEXT=890,Ki.GEOMCOLLFROMWKB=891,Ki.GEOMETRYCOLLECTIONFROMTEXT=892,Ki.GEOMETRYCOLLECTIONFROMWKB=893,Ki.GEOMETRYFROMTEXT=894,Ki.GEOMETRYFROMWKB=895,Ki.GEOMETRYN=896,Ki.GEOMETRYTYPE=897,Ki.GEOMFROMTEXT=898,Ki.GEOMFROMWKB=899,Ki.GET_FORMAT=900,Ki.GET_LOCK=901,Ki.GLENGTH=902,Ki.GREATEST=903,Ki.GTID_SUBSET=904,Ki.GTID_SUBTRACT=905,Ki.HEX=906,Ki.IFNULL=907,Ki.INET6_ATON=908,Ki.INET6_NTOA=909,Ki.INET_ATON=910,Ki.INET_NTOA=911,Ki.INSTR=912,Ki.INTERIORRINGN=913,Ki.INTERSECTS=914,Ki.ISCLOSED=915,Ki.ISEMPTY=916,Ki.ISNULL=917,Ki.ISSIMPLE=918,Ki.IS_FREE_LOCK=919,Ki.IS_IPV4=920,Ki.IS_IPV4_COMPAT=921,Ki.IS_IPV4_MAPPED=922,Ki.IS_IPV6=923,Ki.IS_USED_LOCK=924,Ki.LAST_INSERT_ID=925,Ki.LCASE=926,Ki.LEAST=927,Ki.LENGTH=928,Ki.LINEFROMTEXT=929,Ki.LINEFROMWKB=930,Ki.LINESTRINGFROMTEXT=931,Ki.LINESTRINGFROMWKB=932,Ki.LN=933,Ki.LOAD_FILE=934,Ki.LOCATE=935,Ki.LOG=936,Ki.LOG10=937,Ki.LOG2=938,Ki.LOWER=939,Ki.LPAD=940,Ki.LTRIM=941,Ki.MAKEDATE=942,Ki.MAKETIME=943,Ki.MAKE_SET=944,Ki.MASTER_POS_WAIT=945,Ki.MBRCONTAINS=946,Ki.MBRDISJOINT=947,Ki.MBREQUAL=948,Ki.MBRINTERSECTS=949,Ki.MBROVERLAPS=950,Ki.MBRTOUCHES=951,Ki.MBRWITHIN=952,Ki.MD5=953,Ki.MLINEFROMTEXT=954,Ki.MLINEFROMWKB=955,Ki.MONTHNAME=956,Ki.MPOINTFROMTEXT=957,Ki.MPOINTFROMWKB=958,Ki.MPOLYFROMTEXT=959,Ki.MPOLYFROMWKB=960,Ki.MULTILINESTRINGFROMTEXT=961,Ki.MULTILINESTRINGFROMWKB=962,Ki.MULTIPOINTFROMTEXT=963,Ki.MULTIPOINTFROMWKB=964,Ki.MULTIPOLYGONFROMTEXT=965,Ki.MULTIPOLYGONFROMWKB=966,Ki.NAME_CONST=967,Ki.NULLIF=968,Ki.NUMGEOMETRIES=969,Ki.NUMINTERIORRINGS=970,Ki.NUMPOINTS=971,Ki.OCT=972,Ki.OCTET_LENGTH=973,Ki.ORD=974,Ki.OVERLAPS=975,Ki.PERIOD_ADD=976,Ki.PERIOD_DIFF=977,Ki.PI=978,Ki.POINTFROMTEXT=979,Ki.POINTFROMWKB=980,Ki.POINTN=981,Ki.POLYFROMTEXT=982,Ki.POLYFROMWKB=983,Ki.POLYGONFROMTEXT=984,Ki.POLYGONFROMWKB=985,Ki.POW=986,Ki.POWER=987,Ki.QUOTE=988,Ki.RADIANS=989,Ki.RAND=990,Ki.RANDOM=991,Ki.RANDOM_BYTES=992,Ki.RELEASE_LOCK=993,Ki.REVERSE=994,Ki.ROUND=995,Ki.ROW_COUNT=996,Ki.RPAD=997,Ki.RTRIM=998,Ki.SEC_TO_TIME=999,Ki.SECONDARY_ENGINE_ATTRIBUTE=1e3,Ki.SESSION_USER=1001,Ki.SHA=1002,Ki.SHA1=1003,Ki.SHA2=1004,Ki.SCHEMA_NAME=1005,Ki.SIGN=1006,Ki.SIN=1007,Ki.SLEEP=1008,Ki.SOUNDEX=1009,Ki.SQL_THREAD_WAIT_AFTER_GTIDS=1010,Ki.SQRT=1011,Ki.SRID=1012,Ki.STARTPOINT=1013,Ki.STRCMP=1014,Ki.STR_TO_DATE=1015,Ki.ST_AREA=1016,Ki.ST_ASBINARY=1017,Ki.ST_ASTEXT=1018,Ki.ST_ASWKB=1019,Ki.ST_ASWKT=1020,Ki.ST_BUFFER=1021,Ki.ST_CENTROID=1022,Ki.ST_CONTAINS=1023,Ki.ST_CROSSES=1024,Ki.ST_DIFFERENCE=1025,Ki.ST_DIMENSION=1026,Ki.ST_DISJOINT=1027,Ki.ST_DISTANCE=1028,Ki.ST_ENDPOINT=1029,Ki.ST_ENVELOPE=1030,Ki.ST_EQUALS=1031,Ki.ST_EXTERIORRING=1032,Ki.ST_GEOMCOLLFROMTEXT=1033,Ki.ST_GEOMCOLLFROMTXT=1034,Ki.ST_GEOMCOLLFROMWKB=1035,Ki.ST_GEOMETRYCOLLECTIONFROMTEXT=1036,Ki.ST_GEOMETRYCOLLECTIONFROMWKB=1037,Ki.ST_GEOMETRYFROMTEXT=1038,Ki.ST_GEOMETRYFROMWKB=1039,Ki.ST_GEOMETRYN=1040,Ki.ST_GEOMETRYTYPE=1041,Ki.ST_GEOMFROMTEXT=1042,Ki.ST_GEOMFROMWKB=1043,Ki.ST_INTERIORRINGN=1044,Ki.ST_INTERSECTION=1045,Ki.ST_INTERSECTS=1046,Ki.ST_ISCLOSED=1047,Ki.ST_ISEMPTY=1048,Ki.ST_ISSIMPLE=1049,Ki.ST_LINEFROMTEXT=1050,Ki.ST_LINEFROMWKB=1051,Ki.ST_LINESTRINGFROMTEXT=1052,Ki.ST_LINESTRINGFROMWKB=1053,Ki.ST_NUMGEOMETRIES=1054,Ki.ST_NUMINTERIORRING=1055,Ki.ST_NUMINTERIORRINGS=1056,Ki.ST_NUMPOINTS=1057,Ki.ST_OVERLAPS=1058,Ki.ST_POINTFROMTEXT=1059,Ki.ST_POINTFROMWKB=1060,Ki.ST_POINTN=1061,Ki.ST_POLYFROMTEXT=1062,Ki.ST_POLYFROMWKB=1063,Ki.ST_POLYGONFROMTEXT=1064,Ki.ST_POLYGONFROMWKB=1065,Ki.ST_SRID=1066,Ki.ST_STARTPOINT=1067,Ki.ST_SYMDIFFERENCE=1068,Ki.ST_TOUCHES=1069,Ki.ST_UNION=1070,Ki.ST_WITHIN=1071,Ki.ST_X=1072,Ki.ST_Y=1073,Ki.SUBDATE=1074,Ki.SUBSTRING_INDEX=1075,Ki.SUBTIME=1076,Ki.SYSTEM_USER=1077,Ki.TAN=1078,Ki.TIMEDIFF=1079,Ki.TIMESTAMPADD=1080,Ki.TIMESTAMPDIFF=1081,Ki.TIME_FORMAT=1082,Ki.TIME_TO_SEC=1083,Ki.TOUCHES=1084,Ki.TO_BASE64=1085,Ki.TO_DAYS=1086,Ki.TO_SECONDS=1087,Ki.TP_CONNECTION_ADMIN=1088,Ki.UCASE=1089,Ki.UNCOMPRESS=1090,Ki.UNCOMPRESSED_LENGTH=1091,Ki.UNHEX=1092,Ki.UNIX_TIMESTAMP=1093,Ki.UPDATEXML=1094,Ki.UPPER=1095,Ki.UUID=1096,Ki.UUID_SHORT=1097,Ki.VALIDATE_PASSWORD_STRENGTH=1098,Ki.VERSION=1099,Ki.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS=1100,Ki.WEEKDAY=1101,Ki.WEEKOFYEAR=1102,Ki.WEIGHT_STRING=1103,Ki.WITHIN=1104,Ki.YEARWEEK=1105,Ki.Y_FUNCTION=1106,Ki.X_FUNCTION=1107,Ki.VAR_ASSIGN=1108,Ki.PLUS_ASSIGN=1109,Ki.MINUS_ASSIGN=1110,Ki.MULT_ASSIGN=1111,Ki.DIV_ASSIGN=1112,Ki.MOD_ASSIGN=1113,Ki.AND_ASSIGN=1114,Ki.XOR_ASSIGN=1115,Ki.OR_ASSIGN=1116,Ki.STAR=1117,Ki.DIVIDE=1118,Ki.MODULE=1119,Ki.PLUS=1120,Ki.MINUS=1121,Ki.DIV=1122,Ki.MOD=1123,Ki.EQUAL_SYMBOL=1124,Ki.GREATER_SYMBOL=1125,Ki.LESS_SYMBOL=1126,Ki.EXCLAMATION_SYMBOL=1127,Ki.BIT_NOT_OP=1128,Ki.BIT_OR_OP=1129,Ki.BIT_AND_OP=1130,Ki.BIT_XOR_OP=1131,Ki.DOT=1132,Ki.LR_BRACKET=1133,Ki.RR_BRACKET=1134,Ki.COMMA=1135,Ki.SEMI=1136,Ki.AT_SIGN=1137,Ki.ZERO_DECIMAL=1138,Ki.ONE_DECIMAL=1139,Ki.TWO_DECIMAL=1140,Ki.SINGLE_QUOTE_SYMB=1141,Ki.DOUBLE_QUOTE_SYMB=1142,Ki.REVERSE_QUOTE_SYMB=1143,Ki.COLON_SYMB=1144,Ki.CHARSET_REVERSE_QOUTE_STRING=1145,Ki.FILESIZE_LITERAL=1146,Ki.START_NATIONAL_STRING_LITERAL=1147,Ki.STRING_LITERAL=1148,Ki.DECIMAL_LITERAL=1149,Ki.HEXADECIMAL_LITERAL=1150,Ki.REAL_LITERAL=1151,Ki.NULL_SPEC_LITERAL=1152,Ki.BIT_STRING=1153,Ki.STRING_CHARSET_NAME=1154,Ki.DOT_ID=1155,Ki.ID=1156,Ki.REVERSE_QUOTE_ID=1157,Ki.HOST_IP_ADDRESS=1158,Ki.LOCAL_ID=1159,Ki.GLOBAL_ID=1160,Ki.ERROR_RECONGNIGION=1161,Ki.channelNames=["DEFAULT_TOKEN_CHANNEL","HIDDEN","MYSQLCOMMENT","ERRORCHANNEL"],Ki.literalNames=[null,null,null,null,null,"'ADD'","'ALL'","'ALTER'","'ALWAYS'","'ANALYZE'","'AND'","'ARRAY'","'AS'","'ASC'","'ATTRIBUTE'","'BEFORE'","'BETWEEN'","'BOTH'","'BUCKETS'","'BY'","'CALL'","'CASCADE'","'CASE'","'CAST'","'CHANGE'","'CHARACTER'","'CHECK'","'COLLATE'","'COLUMN'","'CONDITION'","'CONSTRAINT'","'CONTINUE'","'CONVERT'","'CREATE'","'CROSS'","'CURRENT'","'CURRENT_ROLE'","'CURRENT_USER'","'CURSOR'","'DATABASE'","'DATABASES'","'DECLARE'","'DEFAULT'","'DELAYED'","'DELETE'","'DESC'","'DESCRIBE'","'DETERMINISTIC'","'DIAGNOSTICS'","'DISTINCT'","'DISTINCTROW'","'DROP'","'EACH'","'ELSE'","'ELSEIF'","'EMPTY'","'ENCLOSED'","'ENFORCED'","'ESCAPED'","'EXCEPT'","'EXISTS'","'EXIT'","'EXPLAIN'","'FALSE'","'FETCH'","'FOR'","'FORCE'","'FOREIGN'","'FROM'","'FULLTEXT'","'GENERATED'","'GET'","'GRANT'","'GROUP'","'HAVING'","'HIGH_PRIORITY'","'HISTOGRAM'","'IF'","'IGNORE'","'IGNORED'","'IN'","'INDEX'","'INFILE'","'INNER'","'INOUT'","'INSERT'","'INTERVAL'","'INTO'","'IS'","'ITERATE'","'JOIN'","'KEY'","'KEYS'","'KILL'","'LATERAL'","'LEADING'","'LEAVE'","'LEFT'","'LIKE'","'LIMIT'","'LINEAR'","'LINES'","'LOAD'","'LOCK'","'LOCKED'","'LOOP'","'LOW_PRIORITY'","'MASTER_BIND'","'MASTER_SSL_VERIFY_SERVER_CERT'","'MATCH'","'MAXVALUE'","'MINVALUE'","'MODIFIES'","'NATURAL'","'NOT'","'NO_WRITE_TO_BINLOG'","'NULL'","'NUMBER'","'ON'","'OPTIMIZE'","'OPTION'","'OPTIONAL'","'OPTIONALLY'","'OR'","'ORDER'","'OUT'","'OUTER'","'OUTFILE'","'OVER'","'PARTITION'","'PRIMARY'","'PROCEDURE'","'PURGE'","'RANGE'","'READ'","'READS'","'REFERENCES'","'REGEXP'","'RELEASE'","'RENAME'","'REPEAT'","'REPLACE'","'REQUIRE'","'RESIGNAL'","'RESTRICT'","'RETAIN'","'RETURN'","'REVOKE'","'RIGHT'","'RLIKE'","'SCHEMA'","'SCHEMAS'","'SELECT'","'SET'","'SEPARATOR'","'SHOW'","'SIGNAL'","'SKIP'","'SKIP_QUERY_REWRITE'","'SPATIAL'","'SQL'","'SQLEXCEPTION'","'SQLSTATE'","'SQLWARNING'","'SQL_BIG_RESULT'","'SQL_CALC_FOUND_ROWS'","'SQL_SMALL_RESULT'","'SSL'","'STACKED'","'STARTING'","'STATEMENT'","'STRAIGHT_JOIN'","'TABLE'","'TERMINATED'","'THEN'","'TO'","'TRAILING'","'TRIGGER'","'TRUE'","'UNDO'","'UNION'","'UNIQUE'","'UNLOCK'","'UNSIGNED'","'UPDATE'","'USAGE'","'USE'","'USING'","'VALUES'","'WHEN'","'WHERE'","'WHILE'","'WITH'","'WRITE'","'XOR'","'ZEROFILL'","'TINYINT'","'SMALLINT'","'MEDIUMINT'","'MIDDLEINT'","'INT'","'INT1'","'INT2'","'INT3'","'INT4'","'INT8'","'INTEGER'","'BIGINT'","'REAL'","'DOUBLE'","'PRECISION'","'FLOAT'","'FLOAT4'","'FLOAT8'","'DECIMAL'","'DEC'","'NUMERIC'","'DATE'","'TIME'","'TIMESTAMP'","'DATETIME'","'YEAR'","'CHAR'","'VARCHAR'","'NVARCHAR'","'NATIONAL'","'BINARY'","'VARBINARY'","'TINYBLOB'","'BLOB'","'MEDIUMBLOB'","'LONG'","'LONGBLOB'","'TINYTEXT'","'TEXT'","'MEDIUMTEXT'","'LONGTEXT'","'ENUM'","'VARYING'","'SERIAL'","'YEAR_MONTH'","'DAY_HOUR'","'DAY_MINUTE'","'DAY_SECOND'","'HOUR_MINUTE'","'HOUR_SECOND'","'MINUTE_SECOND'","'SECOND_MICROSECOND'","'MINUTE_MICROSECOND'","'HOUR_MICROSECOND'","'DAY_MICROSECOND'","'JSON_ARRAY'","'JSON_ARRAYAGG'","'JSON_ARRAY_APPEND'","'JSON_ARRAY_INSERT'","'JSON_CONTAINS'","'JSON_CONTAINS_PATH'","'JSON_DEPTH'","'JSON_EXTRACT'","'JSON_INSERT'","'JSON_KEYS'","'JSON_LENGTH'","'JSON_MERGE'","'JSON_MERGE_PATCH'","'JSON_MERGE_PRESERVE'","'JSON_OBJECT'","'JSON_OBJECTAGG'","'JSON_OVERLAPS'","'JSON_PRETTY'","'JSON_QUOTE'","'JSON_REMOVE'","'JSON_REPLACE'","'JSON_SCHEMA_VALID'","'JSON_SCHEMA_VALIDATION_REPORT'","'JSON_SEARCH'","'JSON_SET'","'JSON_STORAGE_FREE'","'JSON_STORAGE_SIZE'","'JSON_TABLE'","'JSON_TYPE'","'JSON_UNQUOTE'","'JSON_VALID'","'JSON_VALUE'","'NESTED'","'ORDINALITY'","'PATH'","'AVG'","'BIT_AND'","'BIT_OR'","'BIT_XOR'","'COUNT'","'CUME_DIST'","'DENSE_RANK'","'FIRST_VALUE'","'GROUP_CONCAT'","'LAG'","'LAST_VALUE'","'LEAD'","'MAX'","'MIN'","'NTILE'","'NTH_VALUE'","'PERCENT_RANK'","'RANK'","'ROW_NUMBER'","'STD'","'STDDEV'","'STDDEV_POP'","'STDDEV_SAMP'","'SUM'","'VAR_POP'","'VAR_SAMP'","'VARIANCE'","'CURRENT_DATE'","'CURRENT_TIME'","'CURRENT_TIMESTAMP'","'LOCALTIME'","'CURDATE'","'CURTIME'","'DATE_ADD'","'DATE_SUB'","'EXTRACT'","'LOCALTIMESTAMP'","'NOW'","'POSITION'","'SUBSTR'","'SUBSTRING'","'SYSDATE'","'TRIM'","'UTC_DATE'","'UTC_TIME'","'UTC_TIMESTAMP'","'ACCOUNT'","'ACTION'","'AFTER'","'AGGREGATE'","'ALGORITHM'","'ANY'","'AT'","'AUTHORS'","'AUTOCOMMIT'","'AUTOEXTEND_SIZE'","'AUTO_INCREMENT'","'AVG_ROW_LENGTH'","'BEGIN'","'BINLOG'","'BIT'","'BLOCK'","'BOOL'","'BOOLEAN'","'BTREE'","'CACHE'","'CASCADED'","'CHAIN'","'CHANGED'","'CHANNEL'","'CHECKSUM'","'PAGE_CHECKSUM'","'CIPHER'","'CLASS_ORIGIN'","'CLIENT'","'CLOSE'","'CLUSTERING'","'COALESCE'","'CODE'","'COLUMNS'","'COLUMN_FORMAT'","'COLUMN_NAME'","'COMMENT'","'COMMIT'","'COMPACT'","'COMPLETION'","'COMPRESSED'","'COMPRESSION'","'CONCURRENT'","'CONNECT'","'CONNECTION'","'CONSISTENT'","'CONSTRAINT_CATALOG'","'CONSTRAINT_SCHEMA'","'CONSTRAINT_NAME'","'CONTAINS'","'CONTEXT'","'CONTRIBUTORS'","'COPY'","'CPU'","'CYCLE'","'CURSOR_NAME'","'DATA'","'DATAFILE'","'DEALLOCATE'","'DEFAULT_AUTH'","'DEFINER'","'DELAY_KEY_WRITE'","'DES_KEY_FILE'","'DIRECTORY'","'DISABLE'","'DISCARD'","'DISK'","'DO'","'DUMPFILE'","'DUPLICATE'","'DYNAMIC'","'ENABLE'","'ENCRYPTED'","'ENCRYPTION'","'ENCRYPTION_KEY_ID'","'END'","'ENDS'","'ENGINE'","'ENGINES'","'ERROR'","'ERRORS'","'ESCAPE'","'EVEN'","'EVENT'","'EVENTS'","'EVERY'","'EXCHANGE'","'EXCLUSIVE'","'EXPIRE'","'EXPORT'","'EXTENDED'","'EXTENT_SIZE'","'FAILED_LOGIN_ATTEMPTS'","'FAST'","'FAULTS'","'FIELDS'","'FILE_BLOCK_SIZE'","'FILTER'","'FIRST'","'FIXED'","'FLUSH'","'FOLLOWING'","'FOLLOWS'","'FOUND'","'FULL'","'FUNCTION'","'GENERAL'","'GLOBAL'","'GRANTS'","'GROUP_REPLICATION'","'HANDLER'","'HASH'","'HELP'","'HISTORY'","'HOST'","'HOSTS'","'IDENTIFIED'","'IGNORE_SERVER_IDS'","'IMPORT'","'INCREMENT'","'INDEXES'","'INITIAL_SIZE'","'INPLACE'","'INSERT_METHOD'","'INSTALL'","'INSTANCE'","'INSTANT'","'INVISIBLE'","'INVOKER'","'IO'","'IO_THREAD'","'IPC'","'ISOLATION'","'ISSUER'","'JSON'","'KEY_BLOCK_SIZE'","'LANGUAGE'","'LAST'","'LEAVES'","'LESS'","'LEVEL'","'LIST'","'LOCAL'","'LOGFILE'","'LOGS'","'MASTER'","'MASTER_AUTO_POSITION'","'MASTER_CONNECT_RETRY'","'MASTER_DELAY'","'MASTER_HEARTBEAT_PERIOD'","'MASTER_HOST'","'MASTER_LOG_FILE'","'MASTER_LOG_POS'","'MASTER_PASSWORD'","'MASTER_PORT'","'MASTER_RETRY_COUNT'","'MASTER_SSL'","'MASTER_SSL_CA'","'MASTER_SSL_CAPATH'","'MASTER_SSL_CERT'","'MASTER_SSL_CIPHER'","'MASTER_SSL_CRL'","'MASTER_SSL_CRLPATH'","'MASTER_SSL_KEY'","'MASTER_TLS_VERSION'","'MASTER_USER'","'MAX_CONNECTIONS_PER_HOUR'","'MAX_QUERIES_PER_HOUR'","'MAX_ROWS'","'MAX_SIZE'","'MAX_UPDATES_PER_HOUR'","'MAX_USER_CONNECTIONS'","'MEDIUM'","'MEMBER'","'MERGE'","'MESSAGE_TEXT'","'MID'","'MIGRATE'","'MIN_ROWS'","'MODE'","'MODIFY'","'MUTEX'","'MYSQL'","'MYSQL_ERRNO'","'NAME'","'NAMES'","'NCHAR'","'NEVER'","'NEXT'","'NO'","'NOCACHE'","'NOCOPY'","'NOCYCLE'","'NOMAXVALUE'","'NOMINVALUE'","'NOWAIT'","'NODEGROUP'","'NONE'","'ODBC'","'OFFLINE'","'OFFSET'","'OF'","'OJ'","'OLD_PASSWORD'","'ONE'","'ONLINE'","'ONLY'","'OPEN'","'OPTIMIZER_COSTS'","'OPTIONS'","'OWNER'","'PACK_KEYS'","'PAGE'","'PAGE_COMPRESSED'","'PAGE_COMPRESSION_LEVEL'","'PARSER'","'PARTIAL'","'PARTITIONING'","'PARTITIONS'","'PASSWORD'","'PASSWORD_LOCK_TIME'","'PHASE'","'PLUGIN'","'PLUGIN_DIR'","'PLUGINS'","'PORT'","'PRECEDES'","'PRECEDING'","'PREPARE'","'PRESERVE'","'PREV'","'PROCESSLIST'","'PROFILE'","'PROFILES'","'PROXY'","'QUERY'","'QUICK'","'REBUILD'","'RECOVER'","'RECURSIVE'","'REDO_BUFFER_SIZE'","'REDUNDANT'","'RELAY'","'RELAY_LOG_FILE'","'RELAY_LOG_POS'","'RELAYLOG'","'REMOVE'","'REORGANIZE'","'REPAIR'","'REPLICATE_DO_DB'","'REPLICATE_DO_TABLE'","'REPLICATE_IGNORE_DB'","'REPLICATE_IGNORE_TABLE'","'REPLICATE_REWRITE_DB'","'REPLICATE_WILD_DO_TABLE'","'REPLICATE_WILD_IGNORE_TABLE'","'REPLICATION'","'RESET'","'RESTART'","'RESUME'","'RETURNED_SQLSTATE'","'RETURNING'","'RETURNS'","'REUSE'","'ROLE'","'ROLLBACK'","'ROLLUP'","'ROTATE'","'ROW'","'ROWS'","'ROW_FORMAT'","'RTREE'","'SAVEPOINT'","'SCHEDULE'","'SECURITY'","'SEQUENCE'","'SERVER'","'SESSION'","'SHARE'","'SHARED'","'SIGNED'","'SIMPLE'","'SLAVE'","'SLOW'","'SNAPSHOT'","'SOCKET'","'SOME'","'SONAME'","'SOUNDS'","'SOURCE'","'SQL_AFTER_GTIDS'","'SQL_AFTER_MTS_GAPS'","'SQL_BEFORE_GTIDS'","'SQL_BUFFER_RESULT'","'SQL_CACHE'","'SQL_NO_CACHE'","'SQL_THREAD'","'START'","'STARTS'","'STATS_AUTO_RECALC'","'STATS_PERSISTENT'","'STATS_SAMPLE_PAGES'","'STATUS'","'STOP'","'STORAGE'","'STORED'","'STRING'","'SUBCLASS_ORIGIN'","'SUBJECT'","'SUBPARTITION'","'SUBPARTITIONS'","'SUSPEND'","'SWAPS'","'SWITCHES'","'TABLE_NAME'","'TABLESPACE'","'TABLE_TYPE'","'TEMPORARY'","'TEMPTABLE'","'THAN'","'TRADITIONAL'","'TRANSACTION'","'TRANSACTIONAL'","'TRIGGERS'","'TRUNCATE'","'UNBOUNDED'","'UNDEFINED'","'UNDOFILE'","'UNDO_BUFFER_SIZE'","'UNINSTALL'","'UNKNOWN'","'UNTIL'","'UPGRADE'","'USER'","'USE_FRM'","'USER_RESOURCES'","'VALIDATION'","'VALUE'","'VARIABLES'","'VIEW'","'VIRTUAL'","'VISIBLE'","'WAIT'","'WARNINGS'","'WINDOW'","'WITHOUT'","'WORK'","'WRAPPER'","'X509'","'XA'","'XML'","'YES'","'EUR'","'USA'","'JIS'","'ISO'","'INTERNAL'","'QUARTER'","'MONTH'","'DAY'","'HOUR'","'MINUTE'","'WEEK'","'SECOND'","'MICROSECOND'","'ADMIN'","'APPLICATION_PASSWORD_ADMIN'","'AUDIT_ABORT_EXEMPT'","'AUDIT_ADMIN'","'AUTHENTICATION_POLICY_ADMIN'","'BACKUP_ADMIN'","'BINLOG_ADMIN'","'BINLOG_ENCRYPTION_ADMIN'","'CLONE_ADMIN'","'CONNECTION_ADMIN'","'ENCRYPTION_KEY_ADMIN'","'EXECUTE'","'FILE'","'FIREWALL_ADMIN'","'FIREWALL_EXEMPT'","'FIREWALL_USER'","'FLUSH_OPTIMIZER_COSTS'","'FLUSH_STATUS'","'FLUSH_TABLES'","'FLUSH_USER_RESOURCES'","'GROUP_REPLICATION_ADMIN'","'INNODB_REDO_LOG_ARCHIVE'","'INNODB_REDO_LOG_ENABLE'","'INVOKE'","'LAMBDA'","'NDB_STORED_USER'","'PASSWORDLESS_USER_ADMIN'","'PERSIST_RO_VARIABLES_ADMIN'","'PRIVILEGES'","'PROCESS'","'RELOAD'","'REPLICATION_APPLIER'","'REPLICATION_SLAVE_ADMIN'","'RESOURCE_GROUP_ADMIN'","'RESOURCE_GROUP_USER'","'ROLE_ADMIN'","'ROUTINE'","'S3'","'SERVICE_CONNECTION_ADMIN'",null,"'SET_USER_ID'","'SHOW_ROUTINE'","'SHUTDOWN'","'SUPER'","'SYSTEM_VARIABLES_ADMIN'","'TABLES'","'TABLE_ENCRYPTION_ADMIN'","'VERSION_TOKEN_ADMIN'","'XA_RECOVER_ADMIN'","'ARMSCII8'","'ASCII'","'BIG5'","'CP1250'","'CP1251'","'CP1256'","'CP1257'","'CP850'","'CP852'","'CP866'","'CP932'","'DEC8'","'EUCJPMS'","'EUCKR'","'GB18030'","'GB2312'","'GBK'","'GEOSTD8'","'GREEK'","'HEBREW'","'HP8'","'KEYBCS2'","'KOI8R'","'KOI8U'","'LATIN1'","'LATIN2'","'LATIN5'","'LATIN7'","'MACCE'","'MACROMAN'","'SJIS'","'SWE7'","'TIS620'","'UCS2'","'UJIS'","'UTF16'","'UTF16LE'","'UTF32'","'UTF8'","'UTF8MB3'","'UTF8MB4'","'ARCHIVE'","'BLACKHOLE'","'CSV'","'FEDERATED'","'INNODB'","'MEMORY'","'MRG_MYISAM'","'MYISAM'","'NDB'","'NDBCLUSTER'","'PERFORMANCE_SCHEMA'","'TOKUDB'","'REPEATABLE'","'COMMITTED'","'UNCOMMITTED'","'SERIALIZABLE'","'GEOMETRYCOLLECTION'","'GEOMCOLLECTION'","'GEOMETRY'","'LINESTRING'","'MULTILINESTRING'","'MULTIPOINT'","'MULTIPOLYGON'","'POINT'","'POLYGON'","'ABS'","'ACOS'","'ADDDATE'","'ADDTIME'","'AES_DECRYPT'","'AES_ENCRYPT'","'AREA'","'ASBINARY'","'ASIN'","'ASTEXT'","'ASWKB'","'ASWKT'","'ASYMMETRIC_DECRYPT'","'ASYMMETRIC_DERIVE'","'ASYMMETRIC_ENCRYPT'","'ASYMMETRIC_SIGN'","'ASYMMETRIC_VERIFY'","'ATAN'","'ATAN2'","'BENCHMARK'","'BIN'","'BIT_COUNT'","'BIT_LENGTH'","'BUFFER'","'CATALOG_NAME'","'CEIL'","'CEILING'","'CENTROID'","'CHARACTER_LENGTH'","'CHARSET'","'CHAR_LENGTH'","'COERCIBILITY'","'COLLATION'","'COMPRESS'","'CONCAT'","'CONCAT_WS'","'CONNECTION_ID'","'CONV'","'CONVERT_TZ'","'COS'","'COT'","'CRC32'","'CREATE_ASYMMETRIC_PRIV_KEY'","'CREATE_ASYMMETRIC_PUB_KEY'","'CREATE_DH_PARAMETERS'","'CREATE_DIGEST'","'CROSSES'","'DATEDIFF'","'DATE_FORMAT'","'DAYNAME'","'DAYOFMONTH'","'DAYOFWEEK'","'DAYOFYEAR'","'DECODE'","'DEGREES'","'DES_DECRYPT'","'DES_ENCRYPT'","'DIMENSION'","'DISJOINT'","'ELT'","'ENCODE'","'ENCRYPT'","'ENDPOINT'","'ENGINE_ATTRIBUTE'","'ENVELOPE'","'EQUALS'","'EXP'","'EXPORT_SET'","'EXTERIORRING'","'EXTRACTVALUE'","'FIELD'","'FIND_IN_SET'","'FLOOR'","'FORMAT'","'FOUND_ROWS'","'FROM_BASE64'","'FROM_DAYS'","'FROM_UNIXTIME'","'GEOMCOLLFROMTEXT'","'GEOMCOLLFROMWKB'","'GEOMETRYCOLLECTIONFROMTEXT'","'GEOMETRYCOLLECTIONFROMWKB'","'GEOMETRYFROMTEXT'","'GEOMETRYFROMWKB'","'GEOMETRYN'","'GEOMETRYTYPE'","'GEOMFROMTEXT'","'GEOMFROMWKB'","'GET_FORMAT'","'GET_LOCK'","'GLENGTH'","'GREATEST'","'GTID_SUBSET'","'GTID_SUBTRACT'","'HEX'","'IFNULL'","'INET6_ATON'","'INET6_NTOA'","'INET_ATON'","'INET_NTOA'","'INSTR'","'INTERIORRINGN'","'INTERSECTS'","'ISCLOSED'","'ISEMPTY'","'ISNULL'","'ISSIMPLE'","'IS_FREE_LOCK'","'IS_IPV4'","'IS_IPV4_COMPAT'","'IS_IPV4_MAPPED'","'IS_IPV6'","'IS_USED_LOCK'","'LAST_INSERT_ID'","'LCASE'","'LEAST'","'LENGTH'","'LINEFROMTEXT'","'LINEFROMWKB'","'LINESTRINGFROMTEXT'","'LINESTRINGFROMWKB'","'LN'","'LOAD_FILE'","'LOCATE'","'LOG'","'LOG10'","'LOG2'","'LOWER'","'LPAD'","'LTRIM'","'MAKEDATE'","'MAKETIME'","'MAKE_SET'","'MASTER_POS_WAIT'","'MBRCONTAINS'","'MBRDISJOINT'","'MBREQUAL'","'MBRINTERSECTS'","'MBROVERLAPS'","'MBRTOUCHES'","'MBRWITHIN'","'MD5'","'MLINEFROMTEXT'","'MLINEFROMWKB'","'MONTHNAME'","'MPOINTFROMTEXT'","'MPOINTFROMWKB'","'MPOLYFROMTEXT'","'MPOLYFROMWKB'","'MULTILINESTRINGFROMTEXT'","'MULTILINESTRINGFROMWKB'","'MULTIPOINTFROMTEXT'","'MULTIPOINTFROMWKB'","'MULTIPOLYGONFROMTEXT'","'MULTIPOLYGONFROMWKB'","'NAME_CONST'","'NULLIF'","'NUMGEOMETRIES'","'NUMINTERIORRINGS'","'NUMPOINTS'","'OCT'","'OCTET_LENGTH'","'ORD'","'OVERLAPS'","'PERIOD_ADD'","'PERIOD_DIFF'","'PI'","'POINTFROMTEXT'","'POINTFROMWKB'","'POINTN'","'POLYFROMTEXT'","'POLYFROMWKB'","'POLYGONFROMTEXT'","'POLYGONFROMWKB'","'POW'","'POWER'","'QUOTE'","'RADIANS'","'RAND'","'RANDOM'","'RANDOM_BYTES'","'RELEASE_LOCK'","'REVERSE'","'ROUND'","'ROW_COUNT'","'RPAD'","'RTRIM'","'SEC_TO_TIME'","'SECONDARY_ENGINE_ATTRIBUTE'","'SESSION_USER'","'SHA'","'SHA1'","'SHA2'","'SCHEMA_NAME'","'SIGN'","'SIN'","'SLEEP'","'SOUNDEX'","'SQL_THREAD_WAIT_AFTER_GTIDS'","'SQRT'","'SRID'","'STARTPOINT'","'STRCMP'","'STR_TO_DATE'","'ST_AREA'","'ST_ASBINARY'","'ST_ASTEXT'","'ST_ASWKB'","'ST_ASWKT'","'ST_BUFFER'","'ST_CENTROID'","'ST_CONTAINS'","'ST_CROSSES'","'ST_DIFFERENCE'","'ST_DIMENSION'","'ST_DISJOINT'","'ST_DISTANCE'","'ST_ENDPOINT'","'ST_ENVELOPE'","'ST_EQUALS'","'ST_EXTERIORRING'","'ST_GEOMCOLLFROMTEXT'","'ST_GEOMCOLLFROMTXT'","'ST_GEOMCOLLFROMWKB'","'ST_GEOMETRYCOLLECTIONFROMTEXT'","'ST_GEOMETRYCOLLECTIONFROMWKB'","'ST_GEOMETRYFROMTEXT'","'ST_GEOMETRYFROMWKB'","'ST_GEOMETRYN'","'ST_GEOMETRYTYPE'","'ST_GEOMFROMTEXT'","'ST_GEOMFROMWKB'","'ST_INTERIORRINGN'","'ST_INTERSECTION'","'ST_INTERSECTS'","'ST_ISCLOSED'","'ST_ISEMPTY'","'ST_ISSIMPLE'","'ST_LINEFROMTEXT'","'ST_LINEFROMWKB'","'ST_LINESTRINGFROMTEXT'","'ST_LINESTRINGFROMWKB'","'ST_NUMGEOMETRIES'","'ST_NUMINTERIORRING'","'ST_NUMINTERIORRINGS'","'ST_NUMPOINTS'","'ST_OVERLAPS'","'ST_POINTFROMTEXT'","'ST_POINTFROMWKB'","'ST_POINTN'","'ST_POLYFROMTEXT'","'ST_POLYFROMWKB'","'ST_POLYGONFROMTEXT'","'ST_POLYGONFROMWKB'","'ST_SRID'","'ST_STARTPOINT'","'ST_SYMDIFFERENCE'","'ST_TOUCHES'","'ST_UNION'","'ST_WITHIN'","'ST_X'","'ST_Y'","'SUBDATE'","'SUBSTRING_INDEX'","'SUBTIME'","'SYSTEM_USER'","'TAN'","'TIMEDIFF'","'TIMESTAMPADD'","'TIMESTAMPDIFF'","'TIME_FORMAT'","'TIME_TO_SEC'","'TOUCHES'","'TO_BASE64'","'TO_DAYS'","'TO_SECONDS'","'TP_CONNECTION_ADMIN'","'UCASE'","'UNCOMPRESS'","'UNCOMPRESSED_LENGTH'","'UNHEX'","'UNIX_TIMESTAMP'","'UPDATEXML'","'UPPER'","'UUID'","'UUID_SHORT'","'VALIDATE_PASSWORD_STRENGTH'","'VERSION'","'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS'","'WEEKDAY'","'WEEKOFYEAR'","'WEIGHT_STRING'","'WITHIN'","'YEARWEEK'","'Y'","'X'","':='","'+='","'-='","'*='","'/='","'%='","'&='","'^='","'|='","'*'","'/'","'%'","'+'","'-'","'DIV'","'MOD'","'='","'>'","'<'","'!'","'~'","'|'","'&'","'^'","'.'","'('","')'","','","';'","'@'","'0'","'1'","'2'","'''","'\"'","'`'","':'"],Ki.symbolicNames=[null,"SPACE","SPEC_MYSQL_COMMENT","COMMENT_INPUT","LINE_COMMENT","ADD","ALL","ALTER","ALWAYS","ANALYZE","AND","ARRAY","AS","ASC","ATTRIBUTE","BEFORE","BETWEEN","BOTH","BUCKETS","BY","CALL","CASCADE","CASE","CAST","CHANGE","CHARACTER","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_ROLE","CURRENT_USER","CURSOR","DATABASE","DATABASES","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DIAGNOSTICS","DISTINCT","DISTINCTROW","DROP","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ENFORCED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GET","GRANT","GROUP","HAVING","HIGH_PRIORITY","HISTOGRAM","IF","IGNORE","IGNORED","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LATERAL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCK","LOCKED","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINVALUE","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL_LITERAL","NUMBER","ON","OPTIMIZE","OPTION","OPTIONAL","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETAIN","RETURN","REVOKE","RIGHT","RLIKE","SCHEMA","SCHEMAS","SELECT","SET","SEPARATOR","SHOW","SIGNAL","SKIP_","SKIP_QUERY_REWRITE","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STACKED","STARTING","STATEMENT","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","VALUES","WHEN","WHERE","WHILE","WITH","WRITE","XOR","ZEROFILL","TINYINT","SMALLINT","MEDIUMINT","MIDDLEINT","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","BIGINT","REAL","DOUBLE","PRECISION","FLOAT","FLOAT4","FLOAT8","DECIMAL","DEC","NUMERIC","DATE","TIME","TIMESTAMP","DATETIME","YEAR","CHAR","VARCHAR","NVARCHAR","NATIONAL","BINARY","VARBINARY","TINYBLOB","BLOB","MEDIUMBLOB","LONG","LONGBLOB","TINYTEXT","TEXT","MEDIUMTEXT","LONGTEXT","ENUM","VARYING","SERIAL","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND","SECOND_MICROSECOND","MINUTE_MICROSECOND","HOUR_MICROSECOND","DAY_MICROSECOND","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","NESTED","ORDINALITY","PATH","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","GROUP_CONCAT","LAG","LAST_VALUE","LEAD","MAX","MIN","NTILE","NTH_VALUE","PERCENT_RANK","RANK","ROW_NUMBER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","LOCALTIME","CURDATE","CURTIME","DATE_ADD","DATE_SUB","EXTRACT","LOCALTIMESTAMP","NOW","POSITION","SUBSTR","SUBSTRING","SYSDATE","TRIM","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","ACCOUNT","ACTION","AFTER","AGGREGATE","ALGORITHM","ANY","AT","AUTHORS","AUTOCOMMIT","AUTOEXTEND_SIZE","AUTO_INCREMENT","AVG_ROW_LENGTH","BEGIN","BINLOG","BIT","BLOCK","BOOL","BOOLEAN","BTREE","CACHE","CASCADED","CHAIN","CHANGED","CHANNEL","CHECKSUM","PAGE_CHECKSUM","CIPHER","CLASS_ORIGIN","CLIENT","CLOSE","CLUSTERING","COALESCE","CODE","COLUMNS","COLUMN_FORMAT","COLUMN_NAME","COMMENT","COMMIT","COMPACT","COMPLETION","COMPRESSED","COMPRESSION","CONCURRENT","CONNECT","CONNECTION","CONSISTENT","CONSTRAINT_CATALOG","CONSTRAINT_SCHEMA","CONSTRAINT_NAME","CONTAINS","CONTEXT","CONTRIBUTORS","COPY","CPU","CYCLE","CURSOR_NAME","DATA","DATAFILE","DEALLOCATE","DEFAULT_AUTH","DEFINER","DELAY_KEY_WRITE","DES_KEY_FILE","DIRECTORY","DISABLE","DISCARD","DISK","DO","DUMPFILE","DUPLICATE","DYNAMIC","ENABLE","ENCRYPTED","ENCRYPTION","ENCRYPTION_KEY_ID","END","ENDS","ENGINE","ENGINES","ERROR","ERRORS","ESCAPE","EVEN","EVENT","EVENTS","EVERY","EXCHANGE","EXCLUSIVE","EXPIRE","EXPORT","EXTENDED","EXTENT_SIZE","FAILED_LOGIN_ATTEMPTS","FAST","FAULTS","FIELDS","FILE_BLOCK_SIZE","FILTER","FIRST","FIXED","FLUSH","FOLLOWING","FOLLOWS","FOUND","FULL","FUNCTION","GENERAL","GLOBAL","GRANTS","GROUP_REPLICATION","HANDLER","HASH","HELP","HISTORY","HOST","HOSTS","IDENTIFIED","IGNORE_SERVER_IDS","IMPORT","INCREMENT","INDEXES","INITIAL_SIZE","INPLACE","INSERT_METHOD","INSTALL","INSTANCE","INSTANT","INVISIBLE","INVOKER","IO","IO_THREAD","IPC","ISOLATION","ISSUER","JSON","KEY_BLOCK_SIZE","LANGUAGE","LAST","LEAVES","LESS","LEVEL","LIST","LOCAL","LOGFILE","LOGS","MASTER","MASTER_AUTO_POSITION","MASTER_CONNECT_RETRY","MASTER_DELAY","MASTER_HEARTBEAT_PERIOD","MASTER_HOST","MASTER_LOG_FILE","MASTER_LOG_POS","MASTER_PASSWORD","MASTER_PORT","MASTER_RETRY_COUNT","MASTER_SSL","MASTER_SSL_CA","MASTER_SSL_CAPATH","MASTER_SSL_CERT","MASTER_SSL_CIPHER","MASTER_SSL_CRL","MASTER_SSL_CRLPATH","MASTER_SSL_KEY","MASTER_TLS_VERSION","MASTER_USER","MAX_CONNECTIONS_PER_HOUR","MAX_QUERIES_PER_HOUR","MAX_ROWS","MAX_SIZE","MAX_UPDATES_PER_HOUR","MAX_USER_CONNECTIONS","MEDIUM","MEMBER","MERGE","MESSAGE_TEXT","MID","MIGRATE","MIN_ROWS","MODE","MODIFY","MUTEX","MYSQL","MYSQL_ERRNO","NAME","NAMES","NCHAR","NEVER","NEXT","NO","NOCACHE","NOCOPY","NOCYCLE","NOMAXVALUE","NOMINVALUE","NOWAIT","NODEGROUP","NONE","ODBC","OFFLINE","OFFSET","OF","OJ","OLD_PASSWORD","ONE","ONLINE","ONLY","OPEN","OPTIMIZER_COSTS","OPTIONS","OWNER","PACK_KEYS","PAGE","PAGE_COMPRESSED","PAGE_COMPRESSION_LEVEL","PARSER","PARTIAL","PARTITIONING","PARTITIONS","PASSWORD","PASSWORD_LOCK_TIME","PHASE","PLUGIN","PLUGIN_DIR","PLUGINS","PORT","PRECEDES","PRECEDING","PREPARE","PRESERVE","PREV","PROCESSLIST","PROFILE","PROFILES","PROXY","QUERY","QUICK","REBUILD","RECOVER","RECURSIVE","REDO_BUFFER_SIZE","REDUNDANT","RELAY","RELAY_LOG_FILE","RELAY_LOG_POS","RELAYLOG","REMOVE","REORGANIZE","REPAIR","REPLICATE_DO_DB","REPLICATE_DO_TABLE","REPLICATE_IGNORE_DB","REPLICATE_IGNORE_TABLE","REPLICATE_REWRITE_DB","REPLICATE_WILD_DO_TABLE","REPLICATE_WILD_IGNORE_TABLE","REPLICATION","RESET","RESTART","RESUME","RETURNED_SQLSTATE","RETURNING","RETURNS","REUSE","ROLE","ROLLBACK","ROLLUP","ROTATE","ROW","ROWS","ROW_FORMAT","RTREE","SAVEPOINT","SCHEDULE","SECURITY","SEQUENCE","SERVER","SESSION","SHARE","SHARED","SIGNED","SIMPLE","SLAVE","SLOW","SNAPSHOT","SOCKET","SOME","SONAME","SOUNDS","SOURCE","SQL_AFTER_GTIDS","SQL_AFTER_MTS_GAPS","SQL_BEFORE_GTIDS","SQL_BUFFER_RESULT","SQL_CACHE","SQL_NO_CACHE","SQL_THREAD","START","STARTS","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STATUS","STOP","STORAGE","STORED","STRING","SUBCLASS_ORIGIN","SUBJECT","SUBPARTITION","SUBPARTITIONS","SUSPEND","SWAPS","SWITCHES","TABLE_NAME","TABLESPACE","TABLE_TYPE","TEMPORARY","TEMPTABLE","THAN","TRADITIONAL","TRANSACTION","TRANSACTIONAL","TRIGGERS","TRUNCATE","UNBOUNDED","UNDEFINED","UNDOFILE","UNDO_BUFFER_SIZE","UNINSTALL","UNKNOWN","UNTIL","UPGRADE","USER","USE_FRM","USER_RESOURCES","VALIDATION","VALUE","VARIABLES","VIEW","VIRTUAL","VISIBLE","WAIT","WARNINGS","WINDOW","WITHOUT","WORK","WRAPPER","X509","XA","XML","YES","EUR","USA","JIS","ISO","INTERNAL","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","MICROSECOND","ADMIN","APPLICATION_PASSWORD_ADMIN","AUDIT_ABORT_EXEMPT","AUDIT_ADMIN","AUTHENTICATION_POLICY_ADMIN","BACKUP_ADMIN","BINLOG_ADMIN","BINLOG_ENCRYPTION_ADMIN","CLONE_ADMIN","CONNECTION_ADMIN","ENCRYPTION_KEY_ADMIN","EXECUTE","FILE","FIREWALL_ADMIN","FIREWALL_EXEMPT","FIREWALL_USER","FLUSH_OPTIMIZER_COSTS","FLUSH_STATUS","FLUSH_TABLES","FLUSH_USER_RESOURCES","GROUP_REPLICATION_ADMIN","INNODB_REDO_LOG_ARCHIVE","INNODB_REDO_LOG_ENABLE","INVOKE","LAMBDA","NDB_STORED_USER","PASSWORDLESS_USER_ADMIN","PERSIST_RO_VARIABLES_ADMIN","PRIVILEGES","PROCESS","RELOAD","REPLICATION_APPLIER","REPLICATION_SLAVE_ADMIN","RESOURCE_GROUP_ADMIN","RESOURCE_GROUP_USER","ROLE_ADMIN","ROUTINE","S3","SERVICE_CONNECTION_ADMIN","SESSION_VARIABLES_ADMIN","SET_USER_ID","SHOW_ROUTINE","SHUTDOWN","SUPER","SYSTEM_VARIABLES_ADMIN","TABLES","TABLE_ENCRYPTION_ADMIN","VERSION_TOKEN_ADMIN","XA_RECOVER_ADMIN","ARMSCII8","ASCII","BIG5","CP1250","CP1251","CP1256","CP1257","CP850","CP852","CP866","CP932","DEC8","EUCJPMS","EUCKR","GB18030","GB2312","GBK","GEOSTD8","GREEK","HEBREW","HP8","KEYBCS2","KOI8R","KOI8U","LATIN1","LATIN2","LATIN5","LATIN7","MACCE","MACROMAN","SJIS","SWE7","TIS620","UCS2","UJIS","UTF16","UTF16LE","UTF32","UTF8","UTF8MB3","UTF8MB4","ARCHIVE","BLACKHOLE","CSV","FEDERATED","INNODB","MEMORY","MRG_MYISAM","MYISAM","NDB","NDBCLUSTER","PERFORMANCE_SCHEMA","TOKUDB","REPEATABLE","COMMITTED","UNCOMMITTED","SERIALIZABLE","GEOMETRYCOLLECTION","GEOMCOLLECTION","GEOMETRY","LINESTRING","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","POINT","POLYGON","ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","AREA","ASBINARY","ASIN","ASTEXT","ASWKB","ASWKT","ASYMMETRIC_DECRYPT","ASYMMETRIC_DERIVE","ASYMMETRIC_ENCRYPT","ASYMMETRIC_SIGN","ASYMMETRIC_VERIFY","ATAN","ATAN2","BENCHMARK","BIN","BIT_COUNT","BIT_LENGTH","BUFFER","CATALOG_NAME","CEIL","CEILING","CENTROID","CHARACTER_LENGTH","CHARSET","CHAR_LENGTH","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","CREATE_ASYMMETRIC_PRIV_KEY","CREATE_ASYMMETRIC_PUB_KEY","CREATE_DH_PARAMETERS","CREATE_DIGEST","CROSSES","DATEDIFF","DATE_FORMAT","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEGREES","DES_DECRYPT","DES_ENCRYPT","DIMENSION","DISJOINT","ELT","ENCODE","ENCRYPT","ENDPOINT","ENGINE_ATTRIBUTE","ENVELOPE","EQUALS","EXP","EXPORT_SET","EXTERIORRING","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLFROMTEXT","GEOMCOLLFROMWKB","GEOMETRYCOLLECTIONFROMTEXT","GEOMETRYCOLLECTIONFROMWKB","GEOMETRYFROMTEXT","GEOMETRYFROMWKB","GEOMETRYN","GEOMETRYTYPE","GEOMFROMTEXT","GEOMFROMWKB","GET_FORMAT","GET_LOCK","GLENGTH","GREATEST","GTID_SUBSET","GTID_SUBTRACT","HEX","IFNULL","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSTR","INTERIORRINGN","INTERSECTS","ISCLOSED","ISEMPTY","ISNULL","ISSIMPLE","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LINEFROMTEXT","LINEFROMWKB","LINESTRINGFROMTEXT","LINESTRINGFROMWKB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKEDATE","MAKETIME","MAKE_SET","MASTER_POS_WAIT","MBRCONTAINS","MBRDISJOINT","MBREQUAL","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MLINEFROMTEXT","MLINEFROMWKB","MONTHNAME","MPOINTFROMTEXT","MPOINTFROMWKB","MPOLYFROMTEXT","MPOLYFROMWKB","MULTILINESTRINGFROMTEXT","MULTILINESTRINGFROMWKB","MULTIPOINTFROMTEXT","MULTIPOINTFROMWKB","MULTIPOLYGONFROMTEXT","MULTIPOLYGONFROMWKB","NAME_CONST","NULLIF","NUMGEOMETRIES","NUMINTERIORRINGS","NUMPOINTS","OCT","OCTET_LENGTH","ORD","OVERLAPS","PERIOD_ADD","PERIOD_DIFF","PI","POINTFROMTEXT","POINTFROMWKB","POINTN","POLYFROMTEXT","POLYFROMWKB","POLYGONFROMTEXT","POLYGONFROMWKB","POW","POWER","QUOTE","RADIANS","RAND","RANDOM","RANDOM_BYTES","RELEASE_LOCK","REVERSE","ROUND","ROW_COUNT","RPAD","RTRIM","SEC_TO_TIME","SECONDARY_ENGINE_ATTRIBUTE","SESSION_USER","SHA","SHA1","SHA2","SCHEMA_NAME","SIGN","SIN","SLEEP","SOUNDEX","SQL_THREAD_WAIT_AFTER_GTIDS","SQRT","SRID","STARTPOINT","STRCMP","STR_TO_DATE","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_ASWKB","ST_ASWKT","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMTXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYCOLLECTIONFROMTEXT","ST_GEOMETRYCOLLECTIONFROMWKB","ST_GEOMETRYFROMTEXT","ST_GEOMETRYFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINESTRINGFROMTEXT","ST_LINESTRINGFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMINTERIORRINGS","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_POLYGONFROMTEXT","ST_POLYGONFROMWKB","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_Y","SUBDATE","SUBSTRING_INDEX","SUBTIME","SYSTEM_USER","TAN","TIMEDIFF","TIMESTAMPADD","TIMESTAMPDIFF","TIME_FORMAT","TIME_TO_SEC","TOUCHES","TO_BASE64","TO_DAYS","TO_SECONDS","TP_CONNECTION_ADMIN","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VALIDATE_PASSWORD_STRENGTH","VERSION","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","WITHIN","YEARWEEK","Y_FUNCTION","X_FUNCTION","VAR_ASSIGN","PLUS_ASSIGN","MINUS_ASSIGN","MULT_ASSIGN","DIV_ASSIGN","MOD_ASSIGN","AND_ASSIGN","XOR_ASSIGN","OR_ASSIGN","STAR","DIVIDE","MODULE","PLUS","MINUS","DIV","MOD","EQUAL_SYMBOL","GREATER_SYMBOL","LESS_SYMBOL","EXCLAMATION_SYMBOL","BIT_NOT_OP","BIT_OR_OP","BIT_AND_OP","BIT_XOR_OP","DOT","LR_BRACKET","RR_BRACKET","COMMA","SEMI","AT_SIGN","ZERO_DECIMAL","ONE_DECIMAL","TWO_DECIMAL","SINGLE_QUOTE_SYMB","DOUBLE_QUOTE_SYMB","REVERSE_QUOTE_SYMB","COLON_SYMB","CHARSET_REVERSE_QOUTE_STRING","FILESIZE_LITERAL","START_NATIONAL_STRING_LITERAL","STRING_LITERAL","DECIMAL_LITERAL","HEXADECIMAL_LITERAL","REAL_LITERAL","NULL_SPEC_LITERAL","BIT_STRING","STRING_CHARSET_NAME","DOT_ID","ID","REVERSE_QUOTE_ID","HOST_IP_ADDRESS","LOCAL_ID","GLOBAL_ID","ERROR_RECONGNIGION"],Ki.modeNames=["DEFAULT_MODE"],Ki.ruleNames=["SPACE","SPEC_MYSQL_COMMENT","COMMENT_INPUT","LINE_COMMENT","ADD","ALL","ALTER","ALWAYS","ANALYZE","AND","ARRAY","AS","ASC","ATTRIBUTE","BEFORE","BETWEEN","BOTH","BUCKETS","BY","CALL","CASCADE","CASE","CAST","CHANGE","CHARACTER","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_ROLE","CURRENT_USER","CURSOR","DATABASE","DATABASES","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DIAGNOSTICS","DISTINCT","DISTINCTROW","DROP","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ENFORCED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GET","GRANT","GROUP","HAVING","HIGH_PRIORITY","HISTOGRAM","IF","IGNORE","IGNORED","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LATERAL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCK","LOCKED","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINVALUE","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL_LITERAL","NUMBER","ON","OPTIMIZE","OPTION","OPTIONAL","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETAIN","RETURN","REVOKE","RIGHT","RLIKE","SCHEMA","SCHEMAS","SELECT","SET","SEPARATOR","SHOW","SIGNAL","SKIP_","SKIP_QUERY_REWRITE","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STACKED","STARTING","STATEMENT","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","VALUES","WHEN","WHERE","WHILE","WITH","WRITE","XOR","ZEROFILL","TINYINT","SMALLINT","MEDIUMINT","MIDDLEINT","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","BIGINT","REAL","DOUBLE","PRECISION","FLOAT","FLOAT4","FLOAT8","DECIMAL","DEC","NUMERIC","DATE","TIME","TIMESTAMP","DATETIME","YEAR","CHAR","VARCHAR","NVARCHAR","NATIONAL","BINARY","VARBINARY","TINYBLOB","BLOB","MEDIUMBLOB","LONG","LONGBLOB","TINYTEXT","TEXT","MEDIUMTEXT","LONGTEXT","ENUM","VARYING","SERIAL","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND","SECOND_MICROSECOND","MINUTE_MICROSECOND","HOUR_MICROSECOND","DAY_MICROSECOND","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","NESTED","ORDINALITY","PATH","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","GROUP_CONCAT","LAG","LAST_VALUE","LEAD","MAX","MIN","NTILE","NTH_VALUE","PERCENT_RANK","RANK","ROW_NUMBER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","LOCALTIME","CURDATE","CURTIME","DATE_ADD","DATE_SUB","EXTRACT","LOCALTIMESTAMP","NOW","POSITION","SUBSTR","SUBSTRING","SYSDATE","TRIM","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","ACCOUNT","ACTION","AFTER","AGGREGATE","ALGORITHM","ANY","AT","AUTHORS","AUTOCOMMIT","AUTOEXTEND_SIZE","AUTO_INCREMENT","AVG_ROW_LENGTH","BEGIN","BINLOG","BIT","BLOCK","BOOL","BOOLEAN","BTREE","CACHE","CASCADED","CHAIN","CHANGED","CHANNEL","CHECKSUM","PAGE_CHECKSUM","CIPHER","CLASS_ORIGIN","CLIENT","CLOSE","CLUSTERING","COALESCE","CODE","COLUMNS","COLUMN_FORMAT","COLUMN_NAME","COMMENT","COMMIT","COMPACT","COMPLETION","COMPRESSED","COMPRESSION","CONCURRENT","CONNECT","CONNECTION","CONSISTENT","CONSTRAINT_CATALOG","CONSTRAINT_SCHEMA","CONSTRAINT_NAME","CONTAINS","CONTEXT","CONTRIBUTORS","COPY","CPU","CYCLE","CURSOR_NAME","DATA","DATAFILE","DEALLOCATE","DEFAULT_AUTH","DEFINER","DELAY_KEY_WRITE","DES_KEY_FILE","DIRECTORY","DISABLE","DISCARD","DISK","DO","DUMPFILE","DUPLICATE","DYNAMIC","ENABLE","ENCRYPTED","ENCRYPTION","ENCRYPTION_KEY_ID","END","ENDS","ENGINE","ENGINES","ERROR","ERRORS","ESCAPE","EVEN","EVENT","EVENTS","EVERY","EXCHANGE","EXCLUSIVE","EXPIRE","EXPORT","EXTENDED","EXTENT_SIZE","FAILED_LOGIN_ATTEMPTS","FAST","FAULTS","FIELDS","FILE_BLOCK_SIZE","FILTER","FIRST","FIXED","FLUSH","FOLLOWING","FOLLOWS","FOUND","FULL","FUNCTION","GENERAL","GLOBAL","GRANTS","GROUP_REPLICATION","HANDLER","HASH","HELP","HISTORY","HOST","HOSTS","IDENTIFIED","IGNORE_SERVER_IDS","IMPORT","INCREMENT","INDEXES","INITIAL_SIZE","INPLACE","INSERT_METHOD","INSTALL","INSTANCE","INSTANT","INVISIBLE","INVOKER","IO","IO_THREAD","IPC","ISOLATION","ISSUER","JSON","KEY_BLOCK_SIZE","LANGUAGE","LAST","LEAVES","LESS","LEVEL","LIST","LOCAL","LOGFILE","LOGS","MASTER","MASTER_AUTO_POSITION","MASTER_CONNECT_RETRY","MASTER_DELAY","MASTER_HEARTBEAT_PERIOD","MASTER_HOST","MASTER_LOG_FILE","MASTER_LOG_POS","MASTER_PASSWORD","MASTER_PORT","MASTER_RETRY_COUNT","MASTER_SSL","MASTER_SSL_CA","MASTER_SSL_CAPATH","MASTER_SSL_CERT","MASTER_SSL_CIPHER","MASTER_SSL_CRL","MASTER_SSL_CRLPATH","MASTER_SSL_KEY","MASTER_TLS_VERSION","MASTER_USER","MAX_CONNECTIONS_PER_HOUR","MAX_QUERIES_PER_HOUR","MAX_ROWS","MAX_SIZE","MAX_UPDATES_PER_HOUR","MAX_USER_CONNECTIONS","MEDIUM","MEMBER","MERGE","MESSAGE_TEXT","MID","MIGRATE","MIN_ROWS","MODE","MODIFY","MUTEX","MYSQL","MYSQL_ERRNO","NAME","NAMES","NCHAR","NEVER","NEXT","NO","NOCACHE","NOCOPY","NOCYCLE","NOMAXVALUE","NOMINVALUE","NOWAIT","NODEGROUP","NONE","ODBC","OFFLINE","OFFSET","OF","OJ","OLD_PASSWORD","ONE","ONLINE","ONLY","OPEN","OPTIMIZER_COSTS","OPTIONS","OWNER","PACK_KEYS","PAGE","PAGE_COMPRESSED","PAGE_COMPRESSION_LEVEL","PARSER","PARTIAL","PARTITIONING","PARTITIONS","PASSWORD","PASSWORD_LOCK_TIME","PHASE","PLUGIN","PLUGIN_DIR","PLUGINS","PORT","PRECEDES","PRECEDING","PREPARE","PRESERVE","PREV","PROCESSLIST","PROFILE","PROFILES","PROXY","QUERY","QUICK","REBUILD","RECOVER","RECURSIVE","REDO_BUFFER_SIZE","REDUNDANT","RELAY","RELAY_LOG_FILE","RELAY_LOG_POS","RELAYLOG","REMOVE","REORGANIZE","REPAIR","REPLICATE_DO_DB","REPLICATE_DO_TABLE","REPLICATE_IGNORE_DB","REPLICATE_IGNORE_TABLE","REPLICATE_REWRITE_DB","REPLICATE_WILD_DO_TABLE","REPLICATE_WILD_IGNORE_TABLE","REPLICATION","RESET","RESTART","RESUME","RETURNED_SQLSTATE","RETURNING","RETURNS","REUSE","ROLE","ROLLBACK","ROLLUP","ROTATE","ROW","ROWS","ROW_FORMAT","RTREE","SAVEPOINT","SCHEDULE","SECURITY","SEQUENCE","SERVER","SESSION","SHARE","SHARED","SIGNED","SIMPLE","SLAVE","SLOW","SNAPSHOT","SOCKET","SOME","SONAME","SOUNDS","SOURCE","SQL_AFTER_GTIDS","SQL_AFTER_MTS_GAPS","SQL_BEFORE_GTIDS","SQL_BUFFER_RESULT","SQL_CACHE","SQL_NO_CACHE","SQL_THREAD","START","STARTS","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STATUS","STOP","STORAGE","STORED","STRING","SUBCLASS_ORIGIN","SUBJECT","SUBPARTITION","SUBPARTITIONS","SUSPEND","SWAPS","SWITCHES","TABLE_NAME","TABLESPACE","TABLE_TYPE","TEMPORARY","TEMPTABLE","THAN","TRADITIONAL","TRANSACTION","TRANSACTIONAL","TRIGGERS","TRUNCATE","UNBOUNDED","UNDEFINED","UNDOFILE","UNDO_BUFFER_SIZE","UNINSTALL","UNKNOWN","UNTIL","UPGRADE","USER","USE_FRM","USER_RESOURCES","VALIDATION","VALUE","VARIABLES","VIEW","VIRTUAL","VISIBLE","WAIT","WARNINGS","WINDOW","WITHOUT","WORK","WRAPPER","X509","XA","XML","YES","EUR","USA","JIS","ISO","INTERNAL","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","MICROSECOND","ADMIN","APPLICATION_PASSWORD_ADMIN","AUDIT_ABORT_EXEMPT","AUDIT_ADMIN","AUTHENTICATION_POLICY_ADMIN","BACKUP_ADMIN","BINLOG_ADMIN","BINLOG_ENCRYPTION_ADMIN","CLONE_ADMIN","CONNECTION_ADMIN","ENCRYPTION_KEY_ADMIN","EXECUTE","FILE","FIREWALL_ADMIN","FIREWALL_EXEMPT","FIREWALL_USER","FLUSH_OPTIMIZER_COSTS","FLUSH_STATUS","FLUSH_TABLES","FLUSH_USER_RESOURCES","GROUP_REPLICATION_ADMIN","INNODB_REDO_LOG_ARCHIVE","INNODB_REDO_LOG_ENABLE","INVOKE","LAMBDA","NDB_STORED_USER","PASSWORDLESS_USER_ADMIN","PERSIST_RO_VARIABLES_ADMIN","PRIVILEGES","PROCESS","RELOAD","REPLICATION_APPLIER","REPLICATION_SLAVE_ADMIN","RESOURCE_GROUP_ADMIN","RESOURCE_GROUP_USER","ROLE_ADMIN","ROUTINE","S3","SERVICE_CONNECTION_ADMIN","SESSION_VARIABLES_ADMIN","SET_USER_ID","SHOW_ROUTINE","SHUTDOWN","SUPER","SYSTEM_VARIABLES_ADMIN","TABLES","TABLE_ENCRYPTION_ADMIN","VERSION_TOKEN_ADMIN","XA_RECOVER_ADMIN","ARMSCII8","ASCII","BIG5","CP1250","CP1251","CP1256","CP1257","CP850","CP852","CP866","CP932","DEC8","EUCJPMS","EUCKR","GB18030","GB2312","GBK","GEOSTD8","GREEK","HEBREW","HP8","KEYBCS2","KOI8R","KOI8U","LATIN1","LATIN2","LATIN5","LATIN7","MACCE","MACROMAN","SJIS","SWE7","TIS620","UCS2","UJIS","UTF16","UTF16LE","UTF32","UTF8","UTF8MB3","UTF8MB4","ARCHIVE","BLACKHOLE","CSV","FEDERATED","INNODB","MEMORY","MRG_MYISAM","MYISAM","NDB","NDBCLUSTER","PERFORMANCE_SCHEMA","TOKUDB","REPEATABLE","COMMITTED","UNCOMMITTED","SERIALIZABLE","GEOMETRYCOLLECTION","GEOMCOLLECTION","GEOMETRY","LINESTRING","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","POINT","POLYGON","ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","AREA","ASBINARY","ASIN","ASTEXT","ASWKB","ASWKT","ASYMMETRIC_DECRYPT","ASYMMETRIC_DERIVE","ASYMMETRIC_ENCRYPT","ASYMMETRIC_SIGN","ASYMMETRIC_VERIFY","ATAN","ATAN2","BENCHMARK","BIN","BIT_COUNT","BIT_LENGTH","BUFFER","CATALOG_NAME","CEIL","CEILING","CENTROID","CHARACTER_LENGTH","CHARSET","CHAR_LENGTH","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","CREATE_ASYMMETRIC_PRIV_KEY","CREATE_ASYMMETRIC_PUB_KEY","CREATE_DH_PARAMETERS","CREATE_DIGEST","CROSSES","DATEDIFF","DATE_FORMAT","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEGREES","DES_DECRYPT","DES_ENCRYPT","DIMENSION","DISJOINT","ELT","ENCODE","ENCRYPT","ENDPOINT","ENGINE_ATTRIBUTE","ENVELOPE","EQUALS","EXP","EXPORT_SET","EXTERIORRING","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLFROMTEXT","GEOMCOLLFROMWKB","GEOMETRYCOLLECTIONFROMTEXT","GEOMETRYCOLLECTIONFROMWKB","GEOMETRYFROMTEXT","GEOMETRYFROMWKB","GEOMETRYN","GEOMETRYTYPE","GEOMFROMTEXT","GEOMFROMWKB","GET_FORMAT","GET_LOCK","GLENGTH","GREATEST","GTID_SUBSET","GTID_SUBTRACT","HEX","IFNULL","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSTR","INTERIORRINGN","INTERSECTS","ISCLOSED","ISEMPTY","ISNULL","ISSIMPLE","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LINEFROMTEXT","LINEFROMWKB","LINESTRINGFROMTEXT","LINESTRINGFROMWKB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKEDATE","MAKETIME","MAKE_SET","MASTER_POS_WAIT","MBRCONTAINS","MBRDISJOINT","MBREQUAL","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MLINEFROMTEXT","MLINEFROMWKB","MONTHNAME","MPOINTFROMTEXT","MPOINTFROMWKB","MPOLYFROMTEXT","MPOLYFROMWKB","MULTILINESTRINGFROMTEXT","MULTILINESTRINGFROMWKB","MULTIPOINTFROMTEXT","MULTIPOINTFROMWKB","MULTIPOLYGONFROMTEXT","MULTIPOLYGONFROMWKB","NAME_CONST","NULLIF","NUMGEOMETRIES","NUMINTERIORRINGS","NUMPOINTS","OCT","OCTET_LENGTH","ORD","OVERLAPS","PERIOD_ADD","PERIOD_DIFF","PI","POINTFROMTEXT","POINTFROMWKB","POINTN","POLYFROMTEXT","POLYFROMWKB","POLYGONFROMTEXT","POLYGONFROMWKB","POW","POWER","QUOTE","RADIANS","RAND","RANDOM","RANDOM_BYTES","RELEASE_LOCK","REVERSE","ROUND","ROW_COUNT","RPAD","RTRIM","SEC_TO_TIME","SECONDARY_ENGINE_ATTRIBUTE","SESSION_USER","SHA","SHA1","SHA2","SCHEMA_NAME","SIGN","SIN","SLEEP","SOUNDEX","SQL_THREAD_WAIT_AFTER_GTIDS","SQRT","SRID","STARTPOINT","STRCMP","STR_TO_DATE","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_ASWKB","ST_ASWKT","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMTXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYCOLLECTIONFROMTEXT","ST_GEOMETRYCOLLECTIONFROMWKB","ST_GEOMETRYFROMTEXT","ST_GEOMETRYFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINESTRINGFROMTEXT","ST_LINESTRINGFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMINTERIORRINGS","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_POLYGONFROMTEXT","ST_POLYGONFROMWKB","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_Y","SUBDATE","SUBSTRING_INDEX","SUBTIME","SYSTEM_USER","TAN","TIMEDIFF","TIMESTAMPADD","TIMESTAMPDIFF","TIME_FORMAT","TIME_TO_SEC","TOUCHES","TO_BASE64","TO_DAYS","TO_SECONDS","TP_CONNECTION_ADMIN","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VALIDATE_PASSWORD_STRENGTH","VERSION","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","WITHIN","YEARWEEK","Y_FUNCTION","X_FUNCTION","VAR_ASSIGN","PLUS_ASSIGN","MINUS_ASSIGN","MULT_ASSIGN","DIV_ASSIGN","MOD_ASSIGN","AND_ASSIGN","XOR_ASSIGN","OR_ASSIGN","STAR","DIVIDE","MODULE","PLUS","MINUS","DIV","MOD","EQUAL_SYMBOL","GREATER_SYMBOL","LESS_SYMBOL","EXCLAMATION_SYMBOL","BIT_NOT_OP","BIT_OR_OP","BIT_AND_OP","BIT_XOR_OP","DOT","LR_BRACKET","RR_BRACKET","COMMA","SEMI","AT_SIGN","ZERO_DECIMAL","ONE_DECIMAL","TWO_DECIMAL","SINGLE_QUOTE_SYMB","DOUBLE_QUOTE_SYMB","REVERSE_QUOTE_SYMB","COLON_SYMB","QUOTE_SYMB","CHARSET_REVERSE_QOUTE_STRING","FILESIZE_LITERAL","START_NATIONAL_STRING_LITERAL","STRING_LITERAL","DECIMAL_LITERAL","HEXADECIMAL_LITERAL","REAL_LITERAL","NULL_SPEC_LITERAL","BIT_STRING","STRING_CHARSET_NAME","DOT_ID","ID","REVERSE_QUOTE_ID","HOST_IP_ADDRESS","LOCAL_ID","GLOBAL_ID","CHARSET_NAME","EXPONENT_NUM_PART","ID_LITERAL","DQUOTA_STRING","SQUOTA_STRING","BQUOTA_STRING","HEX_DIGIT","DEC_DIGIT","BIT_STRING_L","IP_ADDRESS","ERROR_RECONGNIGION"],Ki._serializedATN=[4,0,1161,13703,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,2,265,7,265,2,266,7,266,2,267,7,267,2,268,7,268,2,269,7,269,2,270,7,270,2,271,7,271,2,272,7,272,2,273,7,273,2,274,7,274,2,275,7,275,2,276,7,276,2,277,7,277,2,278,7,278,2,279,7,279,2,280,7,280,2,281,7,281,2,282,7,282,2,283,7,283,2,284,7,284,2,285,7,285,2,286,7,286,2,287,7,287,2,288,7,288,2,289,7,289,2,290,7,290,2,291,7,291,2,292,7,292,2,293,7,293,2,294,7,294,2,295,7,295,2,296,7,296,2,297,7,297,2,298,7,298,2,299,7,299,2,300,7,300,2,301,7,301,2,302,7,302,2,303,7,303,2,304,7,304,2,305,7,305,2,306,7,306,2,307,7,307,2,308,7,308,2,309,7,309,2,310,7,310,2,311,7,311,2,312,7,312,2,313,7,313,2,314,7,314,2,315,7,315,2,316,7,316,2,317,7,317,2,318,7,318,2,319,7,319,2,320,7,320,2,321,7,321,2,322,7,322,2,323,7,323,2,324,7,324,2,325,7,325,2,326,7,326,2,327,7,327,2,328,7,328,2,329,7,329,2,330,7,330,2,331,7,331,2,332,7,332,2,333,7,333,2,334,7,334,2,335,7,335,2,336,7,336,2,337,7,337,2,338,7,338,2,339,7,339,2,340,7,340,2,341,7,341,2,342,7,342,2,343,7,343,2,344,7,344,2,345,7,345,2,346,7,346,2,347,7,347,2,348,7,348,2,349,7,349,2,350,7,350,2,351,7,351,2,352,7,352,2,353,7,353,2,354,7,354,2,355,7,355,2,356,7,356,2,357,7,357,2,358,7,358,2,359,7,359,2,360,7,360,2,361,7,361,2,362,7,362,2,363,7,363,2,364,7,364,2,365,7,365,2,366,7,366,2,367,7,367,2,368,7,368,2,369,7,369,2,370,7,370,2,371,7,371,2,372,7,372,2,373,7,373,2,374,7,374,2,375,7,375,2,376,7,376,2,377,7,377,2,378,7,378,2,379,7,379,2,380,7,380,2,381,7,381,2,382,7,382,2,383,7,383,2,384,7,384,2,385,7,385,2,386,7,386,2,387,7,387,2,388,7,388,2,389,7,389,2,390,7,390,2,391,7,391,2,392,7,392,2,393,7,393,2,394,7,394,2,395,7,395,2,396,7,396,2,397,7,397,2,398,7,398,2,399,7,399,2,400,7,400,2,401,7,401,2,402,7,402,2,403,7,403,2,404,7,404,2,405,7,405,2,406,7,406,2,407,7,407,2,408,7,408,2,409,7,409,2,410,7,410,2,411,7,411,2,412,7,412,2,413,7,413,2,414,7,414,2,415,7,415,2,416,7,416,2,417,7,417,2,418,7,418,2,419,7,419,2,420,7,420,2,421,7,421,2,422,7,422,2,423,7,423,2,424,7,424,2,425,7,425,2,426,7,426,2,427,7,427,2,428,7,428,2,429,7,429,2,430,7,430,2,431,7,431,2,432,7,432,2,433,7,433,2,434,7,434,2,435,7,435,2,436,7,436,2,437,7,437,2,438,7,438,2,439,7,439,2,440,7,440,2,441,7,441,2,442,7,442,2,443,7,443,2,444,7,444,2,445,7,445,2,446,7,446,2,447,7,447,2,448,7,448,2,449,7,449,2,450,7,450,2,451,7,451,2,452,7,452,2,453,7,453,2,454,7,454,2,455,7,455,2,456,7,456,2,457,7,457,2,458,7,458,2,459,7,459,2,460,7,460,2,461,7,461,2,462,7,462,2,463,7,463,2,464,7,464,2,465,7,465,2,466,7,466,2,467,7,467,2,468,7,468,2,469,7,469,2,470,7,470,2,471,7,471,2,472,7,472,2,473,7,473,2,474,7,474,2,475,7,475,2,476,7,476,2,477,7,477,2,478,7,478,2,479,7,479,2,480,7,480,2,481,7,481,2,482,7,482,2,483,7,483,2,484,7,484,2,485,7,485,2,486,7,486,2,487,7,487,2,488,7,488,2,489,7,489,2,490,7,490,2,491,7,491,2,492,7,492,2,493,7,493,2,494,7,494,2,495,7,495,2,496,7,496,2,497,7,497,2,498,7,498,2,499,7,499,2,500,7,500,2,501,7,501,2,502,7,502,2,503,7,503,2,504,7,504,2,505,7,505,2,506,7,506,2,507,7,507,2,508,7,508,2,509,7,509,2,510,7,510,2,511,7,511,2,512,7,512,2,513,7,513,2,514,7,514,2,515,7,515,2,516,7,516,2,517,7,517,2,518,7,518,2,519,7,519,2,520,7,520,2,521,7,521,2,522,7,522,2,523,7,523,2,524,7,524,2,525,7,525,2,526,7,526,2,527,7,527,2,528,7,528,2,529,7,529,2,530,7,530,2,531,7,531,2,532,7,532,2,533,7,533,2,534,7,534,2,535,7,535,2,536,7,536,2,537,7,537,2,538,7,538,2,539,7,539,2,540,7,540,2,541,7,541,2,542,7,542,2,543,7,543,2,544,7,544,2,545,7,545,2,546,7,546,2,547,7,547,2,548,7,548,2,549,7,549,2,550,7,550,2,551,7,551,2,552,7,552,2,553,7,553,2,554,7,554,2,555,7,555,2,556,7,556,2,557,7,557,2,558,7,558,2,559,7,559,2,560,7,560,2,561,7,561,2,562,7,562,2,563,7,563,2,564,7,564,2,565,7,565,2,566,7,566,2,567,7,567,2,568,7,568,2,569,7,569,2,570,7,570,2,571,7,571,2,572,7,572,2,573,7,573,2,574,7,574,2,575,7,575,2,576,7,576,2,577,7,577,2,578,7,578,2,579,7,579,2,580,7,580,2,581,7,581,2,582,7,582,2,583,7,583,2,584,7,584,2,585,7,585,2,586,7,586,2,587,7,587,2,588,7,588,2,589,7,589,2,590,7,590,2,591,7,591,2,592,7,592,2,593,7,593,2,594,7,594,2,595,7,595,2,596,7,596,2,597,7,597,2,598,7,598,2,599,7,599,2,600,7,600,2,601,7,601,2,602,7,602,2,603,7,603,2,604,7,604,2,605,7,605,2,606,7,606,2,607,7,607,2,608,7,608,2,609,7,609,2,610,7,610,2,611,7,611,2,612,7,612,2,613,7,613,2,614,7,614,2,615,7,615,2,616,7,616,2,617,7,617,2,618,7,618,2,619,7,619,2,620,7,620,2,621,7,621,2,622,7,622,2,623,7,623,2,624,7,624,2,625,7,625,2,626,7,626,2,627,7,627,2,628,7,628,2,629,7,629,2,630,7,630,2,631,7,631,2,632,7,632,2,633,7,633,2,634,7,634,2,635,7,635,2,636,7,636,2,637,7,637,2,638,7,638,2,639,7,639,2,640,7,640,2,641,7,641,2,642,7,642,2,643,7,643,2,644,7,644,2,645,7,645,2,646,7,646,2,647,7,647,2,648,7,648,2,649,7,649,2,650,7,650,2,651,7,651,2,652,7,652,2,653,7,653,2,654,7,654,2,655,7,655,2,656,7,656,2,657,7,657,2,658,7,658,2,659,7,659,2,660,7,660,2,661,7,661,2,662,7,662,2,663,7,663,2,664,7,664,2,665,7,665,2,666,7,666,2,667,7,667,2,668,7,668,2,669,7,669,2,670,7,670,2,671,7,671,2,672,7,672,2,673,7,673,2,674,7,674,2,675,7,675,2,676,7,676,2,677,7,677,2,678,7,678,2,679,7,679,2,680,7,680,2,681,7,681,2,682,7,682,2,683,7,683,2,684,7,684,2,685,7,685,2,686,7,686,2,687,7,687,2,688,7,688,2,689,7,689,2,690,7,690,2,691,7,691,2,692,7,692,2,693,7,693,2,694,7,694,2,695,7,695,2,696,7,696,2,697,7,697,2,698,7,698,2,699,7,699,2,700,7,700,2,701,7,701,2,702,7,702,2,703,7,703,2,704,7,704,2,705,7,705,2,706,7,706,2,707,7,707,2,708,7,708,2,709,7,709,2,710,7,710,2,711,7,711,2,712,7,712,2,713,7,713,2,714,7,714,2,715,7,715,2,716,7,716,2,717,7,717,2,718,7,718,2,719,7,719,2,720,7,720,2,721,7,721,2,722,7,722,2,723,7,723,2,724,7,724,2,725,7,725,2,726,7,726,2,727,7,727,2,728,7,728,2,729,7,729,2,730,7,730,2,731,7,731,2,732,7,732,2,733,7,733,2,734,7,734,2,735,7,735,2,736,7,736,2,737,7,737,2,738,7,738,2,739,7,739,2,740,7,740,2,741,7,741,2,742,7,742,2,743,7,743,2,744,7,744,2,745,7,745,2,746,7,746,2,747,7,747,2,748,7,748,2,749,7,749,2,750,7,750,2,751,7,751,2,752,7,752,2,753,7,753,2,754,7,754,2,755,7,755,2,756,7,756,2,757,7,757,2,758,7,758,2,759,7,759,2,760,7,760,2,761,7,761,2,762,7,762,2,763,7,763,2,764,7,764,2,765,7,765,2,766,7,766,2,767,7,767,2,768,7,768,2,769,7,769,2,770,7,770,2,771,7,771,2,772,7,772,2,773,7,773,2,774,7,774,2,775,7,775,2,776,7,776,2,777,7,777,2,778,7,778,2,779,7,779,2,780,7,780,2,781,7,781,2,782,7,782,2,783,7,783,2,784,7,784,2,785,7,785,2,786,7,786,2,787,7,787,2,788,7,788,2,789,7,789,2,790,7,790,2,791,7,791,2,792,7,792,2,793,7,793,2,794,7,794,2,795,7,795,2,796,7,796,2,797,7,797,2,798,7,798,2,799,7,799,2,800,7,800,2,801,7,801,2,802,7,802,2,803,7,803,2,804,7,804,2,805,7,805,2,806,7,806,2,807,7,807,2,808,7,808,2,809,7,809,2,810,7,810,2,811,7,811,2,812,7,812,2,813,7,813,2,814,7,814,2,815,7,815,2,816,7,816,2,817,7,817,2,818,7,818,2,819,7,819,2,820,7,820,2,821,7,821,2,822,7,822,2,823,7,823,2,824,7,824,2,825,7,825,2,826,7,826,2,827,7,827,2,828,7,828,2,829,7,829,2,830,7,830,2,831,7,831,2,832,7,832,2,833,7,833,2,834,7,834,2,835,7,835,2,836,7,836,2,837,7,837,2,838,7,838,2,839,7,839,2,840,7,840,2,841,7,841,2,842,7,842,2,843,7,843,2,844,7,844,2,845,7,845,2,846,7,846,2,847,7,847,2,848,7,848,2,849,7,849,2,850,7,850,2,851,7,851,2,852,7,852,2,853,7,853,2,854,7,854,2,855,7,855,2,856,7,856,2,857,7,857,2,858,7,858,2,859,7,859,2,860,7,860,2,861,7,861,2,862,7,862,2,863,7,863,2,864,7,864,2,865,7,865,2,866,7,866,2,867,7,867,2,868,7,868,2,869,7,869,2,870,7,870,2,871,7,871,2,872,7,872,2,873,7,873,2,874,7,874,2,875,7,875,2,876,7,876,2,877,7,877,2,878,7,878,2,879,7,879,2,880,7,880,2,881,7,881,2,882,7,882,2,883,7,883,2,884,7,884,2,885,7,885,2,886,7,886,2,887,7,887,2,888,7,888,2,889,7,889,2,890,7,890,2,891,7,891,2,892,7,892,2,893,7,893,2,894,7,894,2,895,7,895,2,896,7,896,2,897,7,897,2,898,7,898,2,899,7,899,2,900,7,900,2,901,7,901,2,902,7,902,2,903,7,903,2,904,7,904,2,905,7,905,2,906,7,906,2,907,7,907,2,908,7,908,2,909,7,909,2,910,7,910,2,911,7,911,2,912,7,912,2,913,7,913,2,914,7,914,2,915,7,915,2,916,7,916,2,917,7,917,2,918,7,918,2,919,7,919,2,920,7,920,2,921,7,921,2,922,7,922,2,923,7,923,2,924,7,924,2,925,7,925,2,926,7,926,2,927,7,927,2,928,7,928,2,929,7,929,2,930,7,930,2,931,7,931,2,932,7,932,2,933,7,933,2,934,7,934,2,935,7,935,2,936,7,936,2,937,7,937,2,938,7,938,2,939,7,939,2,940,7,940,2,941,7,941,2,942,7,942,2,943,7,943,2,944,7,944,2,945,7,945,2,946,7,946,2,947,7,947,2,948,7,948,2,949,7,949,2,950,7,950,2,951,7,951,2,952,7,952,2,953,7,953,2,954,7,954,2,955,7,955,2,956,7,956,2,957,7,957,2,958,7,958,2,959,7,959,2,960,7,960,2,961,7,961,2,962,7,962,2,963,7,963,2,964,7,964,2,965,7,965,2,966,7,966,2,967,7,967,2,968,7,968,2,969,7,969,2,970,7,970,2,971,7,971,2,972,7,972,2,973,7,973,2,974,7,974,2,975,7,975,2,976,7,976,2,977,7,977,2,978,7,978,2,979,7,979,2,980,7,980,2,981,7,981,2,982,7,982,2,983,7,983,2,984,7,984,2,985,7,985,2,986,7,986,2,987,7,987,2,988,7,988,2,989,7,989,2,990,7,990,2,991,7,991,2,992,7,992,2,993,7,993,2,994,7,994,2,995,7,995,2,996,7,996,2,997,7,997,2,998,7,998,2,999,7,999,2,1e3,7,1e3,2,1001,7,1001,2,1002,7,1002,2,1003,7,1003,2,1004,7,1004,2,1005,7,1005,2,1006,7,1006,2,1007,7,1007,2,1008,7,1008,2,1009,7,1009,2,1010,7,1010,2,1011,7,1011,2,1012,7,1012,2,1013,7,1013,2,1014,7,1014,2,1015,7,1015,2,1016,7,1016,2,1017,7,1017,2,1018,7,1018,2,1019,7,1019,2,1020,7,1020,2,1021,7,1021,2,1022,7,1022,2,1023,7,1023,2,1024,7,1024,2,1025,7,1025,2,1026,7,1026,2,1027,7,1027,2,1028,7,1028,2,1029,7,1029,2,1030,7,1030,2,1031,7,1031,2,1032,7,1032,2,1033,7,1033,2,1034,7,1034,2,1035,7,1035,2,1036,7,1036,2,1037,7,1037,2,1038,7,1038,2,1039,7,1039,2,1040,7,1040,2,1041,7,1041,2,1042,7,1042,2,1043,7,1043,2,1044,7,1044,2,1045,7,1045,2,1046,7,1046,2,1047,7,1047,2,1048,7,1048,2,1049,7,1049,2,1050,7,1050,2,1051,7,1051,2,1052,7,1052,2,1053,7,1053,2,1054,7,1054,2,1055,7,1055,2,1056,7,1056,2,1057,7,1057,2,1058,7,1058,2,1059,7,1059,2,1060,7,1060,2,1061,7,1061,2,1062,7,1062,2,1063,7,1063,2,1064,7,1064,2,1065,7,1065,2,1066,7,1066,2,1067,7,1067,2,1068,7,1068,2,1069,7,1069,2,1070,7,1070,2,1071,7,1071,2,1072,7,1072,2,1073,7,1073,2,1074,7,1074,2,1075,7,1075,2,1076,7,1076,2,1077,7,1077,2,1078,7,1078,2,1079,7,1079,2,1080,7,1080,2,1081,7,1081,2,1082,7,1082,2,1083,7,1083,2,1084,7,1084,2,1085,7,1085,2,1086,7,1086,2,1087,7,1087,2,1088,7,1088,2,1089,7,1089,2,1090,7,1090,2,1091,7,1091,2,1092,7,1092,2,1093,7,1093,2,1094,7,1094,2,1095,7,1095,2,1096,7,1096,2,1097,7,1097,2,1098,7,1098,2,1099,7,1099,2,1100,7,1100,2,1101,7,1101,2,1102,7,1102,2,1103,7,1103,2,1104,7,1104,2,1105,7,1105,2,1106,7,1106,2,1107,7,1107,2,1108,7,1108,2,1109,7,1109,2,1110,7,1110,2,1111,7,1111,2,1112,7,1112,2,1113,7,1113,2,1114,7,1114,2,1115,7,1115,2,1116,7,1116,2,1117,7,1117,2,1118,7,1118,2,1119,7,1119,2,1120,7,1120,2,1121,7,1121,2,1122,7,1122,2,1123,7,1123,2,1124,7,1124,2,1125,7,1125,2,1126,7,1126,2,1127,7,1127,2,1128,7,1128,2,1129,7,1129,2,1130,7,1130,2,1131,7,1131,2,1132,7,1132,2,1133,7,1133,2,1134,7,1134,2,1135,7,1135,2,1136,7,1136,2,1137,7,1137,2,1138,7,1138,2,1139,7,1139,2,1140,7,1140,2,1141,7,1141,2,1142,7,1142,2,1143,7,1143,2,1144,7,1144,2,1145,7,1145,2,1146,7,1146,2,1147,7,1147,2,1148,7,1148,2,1149,7,1149,2,1150,7,1150,2,1151,7,1151,2,1152,7,1152,2,1153,7,1153,2,1154,7,1154,2,1155,7,1155,2,1156,7,1156,2,1157,7,1157,2,1158,7,1158,2,1159,7,1159,2,1160,7,1160,2,1161,7,1161,2,1162,7,1162,2,1163,7,1163,2,1164,7,1164,2,1165,7,1165,2,1166,7,1166,2,1167,7,1167,2,1168,7,1168,2,1169,7,1169,2,1170,7,1170,2,1171,7,1171,1,0,4,0,2347,8,0,11,0,12,0,2348,1,0,1,0,1,1,1,1,1,1,1,1,1,1,4,1,2358,8,1,11,1,12,1,2359,1,1,1,1,1,1,1,1,1,1,1,2,1,2,1,2,1,2,5,2,2371,8,2,10,2,12,2,2374,9,2,1,2,1,2,1,2,1,2,1,2,1,3,1,3,1,3,1,3,5,3,2385,8,3,10,3,12,3,2388,9,3,1,3,3,3,2391,8,3,1,3,5,3,2394,8,3,10,3,12,3,2397,9,3,1,3,3,3,2400,8,3,1,3,1,3,3,3,2404,8,3,1,3,1,3,1,3,1,3,3,3,2410,8,3,1,3,1,3,3,3,2414,8,3,3,3,2416,8,3,1,3,1,3,1,4,1,4,1,4,1,4,1,5,1,5,1,5,1,5,1,6,1,6,1,6,1,6,1,6,1,6,1,7,1,7,1,7,1,7,1,7,1,7,1,7,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,9,1,9,1,9,1,9,1,10,1,10,1,10,1,10,1,10,1,10,1,11,1,11,1,11,1,12,1,12,1,12,1,12,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,14,1,14,1,14,1,14,1,14,1,14,1,14,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,16,1,16,1,16,1,16,1,16,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,17,1,18,1,18,1,18,1,19,1,19,1,19,1,19,1,19,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,21,1,21,1,21,1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,23,1,23,1,23,1,23,1,23,1,23,1,23,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,25,1,25,1,25,1,25,1,25,1,25,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,28,1,28,1,28,1,28,1,28,1,28,1,28,1,28,1,28,1,28,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,32,1,32,1,32,1,32,1,32,1,32,1,32,1,33,1,33,1,33,1,33,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,40,1,40,1,40,1,40,1,40,1,40,1,40,1,40,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,43,1,43,1,43,1,43,1,43,1,43,1,43,1,44,1,44,1,44,1,44,1,44,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,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,49,1,50,1,50,1,50,1,50,1,50,1,51,1,51,1,51,1,51,1,51,1,52,1,52,1,52,1,52,1,52,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,54,1,54,1,54,1,54,1,54,1,54,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,60,1,60,1,60,1,60,1,60,1,61,1,61,1,61,1,61,1,61,1,61,1,61,1,61,1,62,1,62,1,62,1,62,1,62,1,62,1,63,1,63,1,63,1,63,1,63,1,63,1,64,1,64,1,64,1,64,1,65,1,65,1,65,1,65,1,65,1,65,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,67,1,67,1,67,1,67,1,67,1,68,1,68,1,68,1,68,1,68,1,68,1,68,1,68,1,68,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,71,1,71,1,71,1,72,1,72,1,72,1,72,1,72,1,72,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,76,1,76,1,76,1,77,1,77,1,77,1,77,1,77,1,77,1,77,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,79,1,79,1,79,1,80,1,80,1,80,1,80,1,80,1,80,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,82,1,82,1,82,1,82,1,82,1,82,1,83,1,83,1,83,1,83,1,83,1,83,1,84,1,84,1,84,1,84,1,84,1,84,1,84,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,86,1,86,1,86,1,86,1,86,1,87,1,87,1,87,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,89,1,89,1,89,1,89,1,89,1,90,1,90,1,90,1,90,1,91,1,91,1,91,1,91,1,91,1,92,1,92,1,92,1,92,1,92,1,93,1,93,1,93,1,93,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,95,1,95,1,95,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,1,97,1,97,1,97,1,97,1,97,1,98,1,98,1,98,1,98,1,98,1,98,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,100,1,100,1,100,1,100,1,100,1,100,1,101,1,101,1,101,1,101,1,101,1,102,1,102,1,102,1,102,1,102,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,104,1,104,1,104,1,104,1,104,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,108,1,108,1,108,1,108,1,108,1,108,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,113,1,113,1,113,1,113,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,114,1,115,1,115,1,115,1,115,1,115,1,116,1,116,1,116,1,116,1,116,1,116,1,116,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,119,1,119,1,119,1,119,1,119,1,119,1,119,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,122,1,122,1,122,1,123,1,123,1,123,1,123,1,123,1,123,1,124,1,124,1,124,1,124,1,125,1,125,1,125,1,125,1,125,1,125,1,126,1,126,1,126,1,126,1,126,1,126,1,126,1,126,1,127,1,127,1,127,1,127,1,127,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,131,1,131,1,131,1,131,1,131,1,131,1,132,1,132,1,132,1,132,1,132,1,132,1,133,1,133,1,133,1,133,1,133,1,134,1,134,1,134,1,134,1,134,1,134,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,136,1,136,1,136,1,136,1,136,1,136,1,136,1,137,1,137,1,137,1,137,1,137,1,137,1,137,1,137,1,138,1,138,1,138,1,138,1,138,1,138,1,138,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,144,1,144,1,144,1,144,1,144,1,144,1,144,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,147,1,147,1,147,1,147,1,147,1,147,1,148,1,148,1,148,1,148,1,148,1,148,1,149,1,149,1,149,1,149,1,149,1,149,1,149,1,150,1,150,1,150,1,150,1,150,1,150,1,150,1,150,1,151,1,151,1,151,1,151,1,151,1,151,1,151,1,152,1,152,1,152,1,152,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,154,1,154,1,154,1,154,1,154,1,155,1,155,1,155,1,155,1,155,1,155,1,155,1,156,1,156,1,156,1,156,1,156,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,158,1,159,1,159,1,159,1,159,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,161,1,161,1,161,1,161,1,161,1,161,1,161,1,161,1,161,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,165,1,166,1,166,1,166,1,166,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,170,1,171,1,171,1,171,1,171,1,171,1,171,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,173,1,173,1,173,1,173,1,173,1,174,1,174,1,174,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,176,1,176,1,176,1,176,1,176,1,176,1,176,1,176,1,177,1,177,1,177,1,177,1,177,1,178,1,178,1,178,1,178,1,178,1,179,1,179,1,179,1,179,1,179,1,179,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,181,1,181,1,181,1,181,1,181,1,181,1,181,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,184,1,184,1,184,1,184,1,184,1,184,1,185,1,185,1,185,1,185,1,186,1,186,1,186,1,186,1,186,1,186,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,188,1,188,1,188,1,188,1,188,1,189,1,189,1,189,1,189,1,189,1,189,1,190,1,190,1,190,1,190,1,190,1,190,1,191,1,191,1,191,1,191,1,191,1,192,1,192,1,192,1,192,1,192,1,192,1,193,1,193,1,193,1,193,1,194,1,194,1,194,1,194,1,194,1,194,1,194,1,194,1,194,1,195,1,195,1,195,1,195,1,195,1,195,1,195,1,195,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,197,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,199,1,199,1,199,1,199,1,200,1,200,1,200,1,200,1,200,1,201,1,201,1,201,1,201,1,201,1,202,1,202,1,202,1,202,1,202,1,203,1,203,1,203,1,203,1,203,1,204,1,204,1,204,1,204,1,204,1,205,1,205,1,205,1,205,1,205,1,205,1,205,1,205,1,206,1,206,1,206,1,206,1,206,1,206,1,206,1,207,1,207,1,207,1,207,1,207,1,208,1,208,1,208,1,208,1,208,1,208,1,208,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,210,1,210,1,210,1,210,1,210,1,210,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,214,1,214,1,214,1,214,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,216,1,216,1,216,1,216,1,216,1,217,1,217,1,217,1,217,1,217,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,219,1,219,1,219,1,219,1,219,1,219,1,219,1,219,1,219,1,220,1,220,1,220,1,220,1,220,1,221,1,221,1,221,1,221,1,221,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,223,1,223,1,223,1,223,1,223,1,223,1,223,1,223,1,223,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,226,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,228,1,228,1,228,1,228,1,228,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,230,1,230,1,230,1,230,1,230,1,231,1,231,1,231,1,231,1,231,1,231,1,231,1,231,1,231,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,233,1,233,1,233,1,233,1,233,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,235,1,235,1,235,1,235,1,235,1,235,1,235,1,235,1,235,1,236,1,236,1,236,1,236,1,236,1,237,1,237,1,237,1,237,1,237,1,237,1,237,1,237,1,238,1,238,1,238,1,238,1,238,1,238,1,238,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,254,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,255,1,256,1,256,1,256,1,256,1,256,1,256,1,256,1,256,1,256,1,256,1,256,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,267,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,276,1,277,1,277,1,277,1,277,1,277,1,277,1,277,1,277,1,277,1,277,1,277,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,280,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,281,1,282,1,282,1,282,1,282,1,282,1,282,1,282,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,284,1,284,1,284,1,284,1,284,1,285,1,285,1,285,1,285,1,286,1,286,1,286,1,286,1,286,1,286,1,286,1,286,1,287,1,287,1,287,1,287,1,287,1,287,1,287,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,288,1,289,1,289,1,289,1,289,1,289,1,289,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,290,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,291,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,292,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,294,1,294,1,294,1,294,1,295,1,295,1,295,1,295,1,295,1,295,1,295,1,295,1,295,1,295,1,295,1,296,1,296,1,296,1,296,1,296,1,297,1,297,1,297,1,297,1,298,1,298,1,298,1,298,1,299,1,299,1,299,1,299,1,299,1,299,1,300,1,300,1,300,1,300,1,300,1,300,1,300,1,300,1,300,1,300,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,302,1,302,1,302,1,302,1,302,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,304,1,304,1,304,1,304,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,308,1,308,1,308,1,308,1,309,1,309,1,309,1,309,1,309,1,309,1,309,1,309,1,310,1,310,1,310,1,310,1,310,1,310,1,310,1,310,1,310,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,311,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,312,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,316,1,317,1,317,1,317,1,317,1,317,1,317,1,317,1,317,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,320,1,320,1,320,1,320,1,320,1,320,1,320,1,320,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,322,1,322,1,322,1,322,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,324,1,324,1,324,1,324,1,324,1,324,1,324,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,326,1,327,1,327,1,327,1,327,1,327,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,328,1,329,1,329,1,329,1,329,1,329,1,329,1,329,1,329,1,329,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,332,1,332,1,332,1,332,1,332,1,332,1,332,1,333,1,333,1,333,1,333,1,333,1,333,1,334,1,334,1,334,1,334,1,334,1,334,1,334,1,334,1,334,1,334,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,335,1,336,1,336,1,336,1,336,1,337,1,337,1,337,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,340,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,341,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,342,1,343,1,343,1,343,1,343,1,343,1,343,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,345,1,345,1,345,1,345,1,346,1,346,1,346,1,346,1,346,1,346,1,347,1,347,1,347,1,347,1,347,1,348,1,348,1,348,1,348,1,348,1,348,1,348,1,348,1,349,1,349,1,349,1,349,1,349,1,349,1,350,1,350,1,350,1,350,1,350,1,350,1,351,1,351,1,351,1,351,1,351,1,351,1,351,1,351,1,351,1,352,1,352,1,352,1,352,1,352,1,352,1,353,1,353,1,353,1,353,1,353,1,353,1,353,1,353,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,355,1,355,1,355,1,355,1,355,1,355,1,355,1,355,1,355,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,356,1,357,1,357,1,357,1,357,1,357,1,357,1,357,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,358,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,360,1,360,1,360,1,360,1,360,1,360,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,361,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,363,1,363,1,363,1,363,1,363,1,364,1,364,1,364,1,364,1,364,1,364,1,364,1,364,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,365,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,366,1,367,1,367,1,367,1,367,1,367,1,367,1,367,1,367,1,368,1,368,1,368,1,368,1,368,1,368,1,368,1,369,1,369,1,369,1,369,1,369,1,369,1,369,1,369,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,370,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,371,1,372,1,372,1,372,1,372,1,372,1,372,1,372,1,372,1,372,1,372,1,372,1,372,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,373,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,374,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,375,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,376,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,377,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,378,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,379,1,380,1,380,1,380,1,380,1,380,1,380,1,380,1,380,1,380,1,381,1,381,1,381,1,381,1,381,1,381,1,381,1,381,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,382,1,383,1,383,1,383,1,383,1,383,1,384,1,384,1,384,1,384,1,385,1,385,1,385,1,385,1,385,1,385,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,386,1,387,1,387,1,387,1,387,1,387,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,388,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,389,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,390,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,391,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,392,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,393,1,394,1,394,1,394,1,394,1,394,1,394,1,394,1,394,1,394,1,394,1,395,1,395,1,395,1,395,1,395,1,395,1,395,1,395,1,396,1,396,1,396,1,396,1,396,1,396,1,396,1,396,1,397,1,397,1,397,1,397,1,397,1,398,1,398,1,398,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,399,1,400,1,400,1,400,1,400,1,400,1,400,1,400,1,400,1,400,1,400,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,401,1,402,1,402,1,402,1,402,1,402,1,402,1,402,1,403,1,403,1,403,1,403,1,403,1,403,1,403,1,403,1,403,1,403,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,404,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,405,1,406,1,406,1,406,1,406,1,407,1,407,1,407,1,407,1,407,1,408,1,408,1,408,1,408,1,408,1,408,1,408,1,409,1,409,1,409,1,409,1,409,1,409,1,409,1,409,1,410,1,410,1,410,1,410,1,410,1,410,1,411,1,411,1,411,1,411,1,411,1,411,1,411,1,412,1,412,1,412,1,412,1,412,1,412,1,412,1,413,1,413,1,413,1,413,1,413,1,414,1,414,1,414,1,414,1,414,1,414,1,415,1,415,1,415,1,415,1,415,1,415,1,415,1,416,1,416,1,416,1,416,1,416,1,416,1,417,1,417,1,417,1,417,1,417,1,417,1,417,1,417,1,417,1,418,1,418,1,418,1,418,1,418,1,418,1,418,1,418,1,418,1,418,1,419,1,419,1,419,1,419,1,419,1,419,1,419,1,420,1,420,1,420,1,420,1,420,1,420,1,420,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,421,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,422,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,423,1,424,1,424,1,424,1,424,1,424,1,425,1,425,1,425,1,425,1,425,1,425,1,425,1,426,1,426,1,426,1,426,1,426,1,426,1,426,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,427,1,428,1,428,1,428,1,428,1,428,1,428,1,428,1,429,1,429,1,429,1,429,1,429,1,429,1,430,1,430,1,430,1,430,1,430,1,430,1,431,1,431,1,431,1,431,1,431,1,431,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,432,1,433,1,433,1,433,1,433,1,433,1,433,1,433,1,433,1,434,1,434,1,434,1,434,1,434,1,434,1,435,1,435,1,435,1,435,1,435,1,436,1,436,1,436,1,436,1,436,1,436,1,436,1,436,1,436,1,437,1,437,1,437,1,437,1,437,1,437,1,437,1,437,1,438,1,438,1,438,1,438,1,438,1,438,1,438,1,439,1,439,1,439,1,439,1,439,1,439,1,439,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,440,1,441,1,441,1,441,1,441,1,441,1,441,1,441,1,441,1,442,1,442,1,442,1,442,1,442,1,443,1,443,1,443,1,443,1,443,1,444,1,444,1,444,1,444,1,444,1,444,1,444,1,444,1,445,1,445,1,445,1,445,1,445,1,446,1,446,1,446,1,446,1,446,1,446,1,447,1,447,1,447,1,447,1,447,1,447,1,447,1,447,1,447,1,447,1,447,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,448,1,449,1,449,1,449,1,449,1,449,1,449,1,449,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,450,1,451,1,451,1,451,1,451,1,451,1,451,1,451,1,451,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,452,1,453,1,453,1,453,1,453,1,453,1,453,1,453,1,453,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,454,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,455,1,456,1,456,1,456,1,456,1,456,1,456,1,456,1,456,1,456,1,457,1,457,1,457,1,457,1,457,1,457,1,457,1,457,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,458,1,459,1,459,1,459,1,459,1,459,1,459,1,459,1,459,1,460,1,460,1,460,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,461,1,462,1,462,1,462,1,462,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,463,1,464,1,464,1,464,1,464,1,464,1,464,1,464,1,465,1,465,1,465,1,465,1,465,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,466,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,467,1,468,1,468,1,468,1,468,1,468,1,469,1,469,1,469,1,469,1,469,1,469,1,469,1,470,1,470,1,470,1,470,1,470,1,471,1,471,1,471,1,471,1,471,1,471,1,472,1,472,1,472,1,472,1,472,1,473,1,473,1,473,1,473,1,473,1,473,1,474,1,474,1,474,1,474,1,474,1,474,1,474,1,474,1,475,1,475,1,475,1,475,1,475,1,476,1,476,1,476,1,476,1,476,1,476,1,476,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,477,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,478,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,479,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,480,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,481,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,482,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,483,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,484,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,485,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,486,1,487,1,487,1,487,1,487,1,487,1,487,1,487,1,487,1,487,1,487,1,487,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,488,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,489,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,490,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,491,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,492,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,493,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,494,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,495,1,496,1,496,1,496,1,496,1,496,1,496,1,496,1,496,1,496,1,496,1,496,1,496,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,497,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,498,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,499,1,500,1,500,1,500,1,500,1,500,1,500,1,500,1,500,1,500,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,501,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,502,1,503,1,503,1,503,1,503,1,503,1,503,1,503,1,504,1,504,1,504,1,504,1,504,1,504,1,504,1,505,1,505,1,505,1,505,1,505,1,505,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,506,1,507,1,507,1,507,1,507,1,508,1,508,1,508,1,508,1,508,1,508,1,508,1,508,1,509,1,509,1,509,1,509,1,509,1,509,1,509,1,509,1,509,1,510,1,510,1,510,1,510,1,510,1,511,1,511,1,511,1,511,1,511,1,511,1,511,1,512,1,512,1,512,1,512,1,512,1,512,1,513,1,513,1,513,1,513,1,513,1,513,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,514,1,515,1,515,1,515,1,515,1,515,1,516,1,516,1,516,1,516,1,516,1,516,1,517,1,517,1,517,1,517,1,517,1,517,1,518,1,518,1,518,1,518,1,518,1,518,1,519,1,519,1,519,1,519,1,519,1,520,1,520,1,520,1,521,1,521,1,521,1,521,1,521,1,521,1,521,1,521,1,522,1,522,1,522,1,522,1,522,1,522,1,522,1,523,1,523,1,523,1,523,1,523,1,523,1,523,1,523,1,524,1,524,1,524,1,524,1,524,1,524,1,524,1,524,1,524,1,524,1,524,1,525,1,525,1,525,1,525,1,525,1,525,1,525,1,525,1,525,1,525,1,525,1,526,1,526,1,526,1,526,1,526,1,526,1,526,1,527,1,527,1,527,1,527,1,527,1,527,1,527,1,527,1,527,1,527,1,528,1,528,1,528,1,528,1,528,1,529,1,529,1,529,1,529,1,529,1,530,1,530,1,530,1,530,1,530,1,530,1,530,1,530,1,531,1,531,1,531,1,531,1,531,1,531,1,531,1,532,1,532,1,532,1,533,1,533,1,533,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,534,1,535,1,535,1,535,1,535,1,536,1,536,1,536,1,536,1,536,1,536,1,536,1,537,1,537,1,537,1,537,1,537,1,538,1,538,1,538,1,538,1,538,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,539,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,540,1,541,1,541,1,541,1,541,1,541,1,541,1,542,1,542,1,542,1,542,1,542,1,542,1,542,1,542,1,542,1,542,1,543,1,543,1,543,1,543,1,543,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,544,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,545,1,546,1,546,1,546,1,546,1,546,1,546,1,546,1,547,1,547,1,547,1,547,1,547,1,547,1,547,1,547,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,548,1,549,1,549,1,549,1,549,1,549,1,549,1,549,1,549,1,549,1,549,1,549,1,550,1,550,1,550,1,550,1,550,1,550,1,550,1,550,1,550,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,551,1,552,1,552,1,552,1,552,1,552,1,552,1,553,1,553,1,553,1,553,1,553,1,553,1,553,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,554,1,555,1,555,1,555,1,555,1,555,1,555,1,555,1,555,1,556,1,556,1,556,1,556,1,556,1,557,1,557,1,557,1,557,1,557,1,557,1,557,1,557,1,557,1,558,1,558,1,558,1,558,1,558,1,558,1,558,1,558,1,558,1,558,1,559,1,559,1,559,1,559,1,559,1,559,1,559,1,559,1,560,1,560,1,560,1,560,1,560,1,560,1,560,1,560,1,560,1,561,1,561,1,561,1,561,1,561,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,562,1,563,1,563,1,563,1,563,1,563,1,563,1,563,1,563,1,564,1,564,1,564,1,564,1,564,1,564,1,564,1,564,1,564,1,565,1,565,1,565,1,565,1,565,1,565,1,566,1,566,1,566,1,566,1,566,1,566,1,567,1,567,1,567,1,567,1,567,1,567,1,568,1,568,1,568,1,568,1,568,1,568,1,568,1,568,1,569,1,569,1,569,1,569,1,569,1,569,1,569,1,569,1,570,1,570,1,570,1,570,1,570,1,570,1,570,1,570,1,570,1,570,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,571,1,572,1,572,1,572,1,572,1,572,1,572,1,572,1,572,1,572,1,572,1,573,1,573,1,573,1,573,1,573,1,573,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,574,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,575,1,576,1,576,1,576,1,576,1,576,1,576,1,576,1,576,1,576,1,577,1,577,1,577,1,577,1,577,1,577,1,577,1,578,1,578,1,578,1,578,1,578,1,578,1,578,1,578,1,578,1,578,1,578,1,579,1,579,1,579,1,579,1,579,1,579,1,579,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,580,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,581,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,582,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,583,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,584,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,585,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,586,1,587,1,587,1,587,1,587,1,587,1,587,1,587,1,587,1,587,1,587,1,587,1,587,1,588,1,588,1,588,1,588,1,588,1,588,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,589,1,590,1,590,1,590,1,590,1,590,1,590,1,590,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,591,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,592,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,593,1,594,1,594,1,594,1,594,1,594,1,594,1,595,1,595,1,595,1,595,1,595,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,596,1,597,1,597,1,597,1,597,1,597,1,597,1,597,1,598,1,598,1,598,1,598,1,598,1,598,1,598,1,599,1,599,1,599,1,599,1,600,1,600,1,600,1,600,1,600,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,601,1,602,1,602,1,602,1,602,1,602,1,602,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,603,1,604,1,604,1,604,1,604,1,604,1,604,1,604,1,604,1,604,1,605,1,605,1,605,1,605,1,605,1,605,1,605,1,605,1,605,1,606,1,606,1,606,1,606,1,606,1,606,1,606,1,606,1,606,1,607,1,607,1,607,1,607,1,607,1,607,1,607,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,608,1,609,1,609,1,609,1,609,1,609,1,609,1,610,1,610,1,610,1,610,1,610,1,610,1,610,1,611,1,611,1,611,1,611,1,611,1,611,1,611,1,612,1,612,1,612,1,612,1,612,1,612,1,612,1,613,1,613,1,613,1,613,1,613,1,613,1,614,1,614,1,614,1,614,1,614,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,615,1,616,1,616,1,616,1,616,1,616,1,616,1,616,1,617,1,617,1,617,1,617,1,617,1,618,1,618,1,618,1,618,1,618,1,618,1,618,1,619,1,619,1,619,1,619,1,619,1,619,1,619,1,620,1,620,1,620,1,620,1,620,1,620,1,620,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,621,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,622,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,623,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,624,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,625,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,626,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,627,1,628,1,628,1,628,1,628,1,628,1,628,1,629,1,629,1,629,1,629,1,629,1,629,1,629,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,630,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,631,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,632,1,633,1,633,1,633,1,633,1,633,1,633,1,633,1,634,1,634,1,634,1,634,1,634,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,635,1,636,1,636,1,636,1,636,1,636,1,636,1,636,1,637,1,637,1,637,1,637,1,637,1,637,1,637,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,638,1,639,1,639,1,639,1,639,1,639,1,639,1,639,1,639,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,640,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,641,1,642,1,642,1,642,1,642,1,642,1,642,1,642,1,642,1,643,1,643,1,643,1,643,1,643,1,643,1,644,1,644,1,644,1,644,1,644,1,644,1,644,1,644,1,644,1,645,1,645,1,645,1,645,1,645,1,645,1,645,1,645,1,645,1,645,1,645,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,646,1,647,1,647,1,647,1,647,1,647,1,647,1,647,1,647,1,647,1,647,1,647,1,648,1,648,1,648,1,648,1,648,1,648,1,648,1,648,1,648,1,648,1,649,1,649,1,649,1,649,1,649,1,649,1,649,1,649,1,649,1,649,1,650,1,650,1,650,1,650,1,650,1,651,1,651,1,651,1,651,1,651,1,651,1,651,1,651,1,651,1,651,1,651,1,651,1,652,1,652,1,652,1,652,1,652,1,652,1,652,1,652,1,652,1,652,1,652,1,652,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,653,1,654,1,654,1,654,1,654,1,654,1,654,1,654,1,654,1,654,1,655,1,655,1,655,1,655,1,655,1,655,1,655,1,655,1,655,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,656,1,657,1,657,1,657,1,657,1,657,1,657,1,657,1,657,1,657,1,657,1,658,1,658,1,658,1,658,1,658,1,658,1,658,1,658,1,658,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,659,1,660,1,660,1,660,1,660,1,660,1,660,1,660,1,660,1,660,1,660,1,661,1,661,1,661,1,661,1,661,1,661,1,661,1,661,1,662,1,662,1,662,1,662,1,662,1,662,1,663,1,663,1,663,1,663,1,663,1,663,1,663,1,663,1,664,1,664,1,664,1,664,1,664,1,665,1,665,1,665,1,665,1,665,1,665,1,665,1,665,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,666,1,667,1,667,1,667,1,667,1,667,1,667,1,667,1,667,1,667,1,667,1,667,1,668,1,668,1,668,1,668,1,668,1,668,1,669,1,669,1,669,1,669,1,669,1,669,1,669,1,669,1,669,1,669,1,670,1,670,1,670,1,670,1,670,1,671,1,671,1,671,1,671,1,671,1,671,1,671,1,671,1,672,1,672,1,672,1,672,1,672,1,672,1,672,1,672,1,673,1,673,1,673,1,673,1,673,1,674,1,674,1,674,1,674,1,674,1,674,1,674,1,674,1,674,1,675,1,675,1,675,1,675,1,675,1,675,1,675,1,676,1,676,1,676,1,676,1,676,1,676,1,676,1,676,1,677,1,677,1,677,1,677,1,677,1,678,1,678,1,678,1,678,1,678,1,678,1,678,1,678,1,679,1,679,1,679,1,679,1,679,1,680,1,680,1,680,1,681,1,681,1,681,1,681,1,682,1,682,1,682,1,682,1,683,1,683,1,683,1,683,1,684,1,684,1,684,1,684,1,685,1,685,1,685,1,685,1,686,1,686,1,686,1,686,1,687,1,687,1,687,1,687,1,687,1,687,1,687,1,687,1,687,1,688,1,688,1,688,1,688,1,688,1,688,1,688,1,688,1,689,1,689,1,689,1,689,1,689,1,689,1,690,1,690,1,690,1,690,1,691,1,691,1,691,1,691,1,691,1,692,1,692,1,692,1,692,1,692,1,692,1,692,1,693,1,693,1,693,1,693,1,693,1,694,1,694,1,694,1,694,1,694,1,694,1,694,1,695,1,695,1,695,1,695,1,695,1,695,1,695,1,695,1,695,1,695,1,695,1,695,1,696,1,696,1,696,1,696,1,696,1,696,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,697,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,698,1,699,1,699,1,699,1,699,1,699,1,699,1,699,1,699,1,699,1,699,1,699,1,699,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,700,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,701,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,702,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,703,1,704,1,704,1,704,1,704,1,704,1,704,1,704,1,704,1,704,1,704,1,704,1,704,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,705,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,706,1,707,1,707,1,707,1,707,1,707,1,707,1,707,1,707,1,708,1,708,1,708,1,708,1,708,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,709,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,710,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,711,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,712,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,713,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,714,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,715,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,716,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,717,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,718,1,719,1,719,1,719,1,719,1,719,1,719,1,719,1,720,1,720,1,720,1,720,1,720,1,720,1,720,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,721,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,722,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,723,1,724,1,724,1,724,1,724,1,724,1,724,1,724,1,724,1,724,1,724,1,724,1,725,1,725,1,725,1,725,1,725,1,725,1,725,1,725,1,726,1,726,1,726,1,726,1,726,1,726,1,726,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,727,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,728,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,729,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,730,1,731,1,731,1,731,1,731,1,731,1,731,1,731,1,731,1,731,1,731,1,731,1,732,1,732,1,732,1,732,1,732,1,732,1,732,1,732,1,733,1,733,1,733,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,734,1,735,3,735,9262,8,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,1,735,3,735,9289,8,735,1,736,1,736,1,736,1,736,1,736,1,736,1,736,1,736,1,736,1,736,1,736,1,736,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,737,1,738,1,738,1,738,1,738,1,738,1,738,1,738,1,738,1,738,1,739,1,739,1,739,1,739,1,739,1,739,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,740,1,741,1,741,1,741,1,741,1,741,1,741,1,741,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,742,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,743,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,744,1,745,1,745,1,745,1,745,1,745,1,745,1,745,1,745,1,745,1,746,1,746,1,746,1,746,1,746,1,746,1,747,1,747,1,747,1,747,1,747,1,748,1,748,1,748,1,748,1,748,1,748,1,748,1,749,1,749,1,749,1,749,1,749,1,749,1,749,1,750,1,750,1,750,1,750,1,750,1,750,1,750,1,751,1,751,1,751,1,751,1,751,1,751,1,751,1,752,1,752,1,752,1,752,1,752,1,752,1,753,1,753,1,753,1,753,1,753,1,753,1,754,1,754,1,754,1,754,1,754,1,754,1,755,1,755,1,755,1,755,1,755,1,755,1,756,1,756,1,756,1,756,1,756,1,757,1,757,1,757,1,757,1,757,1,757,1,757,1,757,1,758,1,758,1,758,1,758,1,758,1,758,1,759,1,759,1,759,1,759,1,759,1,759,1,759,1,759,1,760,1,760,1,760,1,760,1,760,1,760,1,760,1,761,1,761,1,761,1,761,1,762,1,762,1,762,1,762,1,762,1,762,1,762,1,762,1,763,1,763,1,763,1,763,1,763,1,763,1,764,1,764,1,764,1,764,1,764,1,764,1,764,1,765,1,765,1,765,1,765,1,766,1,766,1,766,1,766,1,766,1,766,1,766,1,766,1,767,1,767,1,767,1,767,1,767,1,767,1,768,1,768,1,768,1,768,1,768,1,768,1,769,1,769,1,769,1,769,1,769,1,769,1,769,1,770,1,770,1,770,1,770,1,770,1,770,1,770,1,771,1,771,1,771,1,771,1,771,1,771,1,771,1,772,1,772,1,772,1,772,1,772,1,772,1,772,1,773,1,773,1,773,1,773,1,773,1,773,1,774,1,774,1,774,1,774,1,774,1,774,1,774,1,774,1,774,1,775,1,775,1,775,1,775,1,775,1,776,1,776,1,776,1,776,1,776,1,777,1,777,1,777,1,777,1,777,1,777,1,777,1,778,1,778,1,778,1,778,1,778,1,779,1,779,1,779,1,779,1,779,1,780,1,780,1,780,1,780,1,780,1,780,1,781,1,781,1,781,1,781,1,781,1,781,1,781,1,781,1,782,1,782,1,782,1,782,1,782,1,782,1,783,1,783,1,783,1,783,1,783,1,784,1,784,1,784,1,784,1,784,1,784,1,784,1,784,1,785,1,785,1,785,1,785,1,785,1,785,1,785,1,785,1,786,1,786,1,786,1,786,1,786,1,786,1,786,1,786,1,787,1,787,1,787,1,787,1,787,1,787,1,787,1,787,1,787,1,787,1,788,1,788,1,788,1,788,1,789,1,789,1,789,1,789,1,789,1,789,1,789,1,789,1,789,1,789,1,790,1,790,1,790,1,790,1,790,1,790,1,790,1,791,1,791,1,791,1,791,1,791,1,791,1,791,1,792,1,792,1,792,1,792,1,792,1,792,1,792,1,792,1,792,1,792,1,792,1,793,1,793,1,793,1,793,1,793,1,793,1,793,1,794,1,794,1,794,1,794,1,795,1,795,1,795,1,795,1,795,1,795,1,795,1,795,1,795,1,795,1,795,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,796,1,797,1,797,1,797,1,797,1,797,1,797,1,797,1,798,1,798,1,798,1,798,1,798,1,798,1,798,1,798,1,798,1,798,1,798,1,799,1,799,1,799,1,799,1,799,1,799,1,799,1,799,1,799,1,799,1,800,1,800,1,800,1,800,1,800,1,800,1,800,1,800,1,800,1,800,1,800,1,800,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,801,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,802,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,803,1,804,1,804,1,804,1,804,1,804,1,804,1,804,1,804,1,804,1,805,1,805,1,805,1,805,1,805,1,805,1,805,1,805,1,805,1,805,1,805,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,806,1,807,1,807,1,807,1,807,1,807,1,807,1,807,1,807,1,807,1,807,1,807,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,808,1,809,1,809,1,809,1,809,1,809,1,809,1,810,1,810,1,810,1,810,1,810,1,810,1,810,1,810,1,811,1,811,1,811,1,811,1,812,1,812,1,812,1,812,1,812,1,813,1,813,1,813,1,813,1,813,1,813,1,813,1,813,1,814,1,814,1,814,1,814,1,814,1,814,1,814,1,814,1,815,1,815,1,815,1,815,1,815,1,815,1,815,1,815,1,815,1,815,1,815,1,815,1,816,1,816,1,816,1,816,1,816,1,816,1,816,1,816,1,816,1,816,1,816,1,816,1,817,1,817,1,817,1,817,1,817,1,818,1,818,1,818,1,818,1,818,1,818,1,818,1,818,1,818,1,819,1,819,1,819,1,819,1,819,1,820,1,820,1,820,1,820,1,820,1,820,1,820,1,821,1,821,1,821,1,821,1,821,1,821,1,822,1,822,1,822,1,822,1,822,1,822,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,823,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,824,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,825,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,826,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,827,1,828,1,828,1,828,1,828,1,828,1,829,1,829,1,829,1,829,1,829,1,829,1,830,1,830,1,830,1,830,1,830,1,830,1,830,1,830,1,830,1,830,1,831,1,831,1,831,1,831,1,832,1,832,1,832,1,832,1,832,1,832,1,832,1,832,1,832,1,832,1,833,1,833,1,833,1,833,1,833,1,833,1,833,1,833,1,833,1,833,1,833,1,834,1,834,1,834,1,834,1,834,1,834,1,834,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,835,1,836,1,836,1,836,1,836,1,836,1,837,1,837,1,837,1,837,1,837,1,837,1,837,1,837,1,838,1,838,1,838,1,838,1,838,1,838,1,838,1,838,1,838,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,839,1,840,1,840,1,840,1,840,1,840,1,840,1,840,1,840,1,841,1,841,1,841,1,841,1,841,1,841,1,841,1,841,1,841,1,841,1,841,1,841,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,842,1,843,1,843,1,843,1,843,1,843,1,843,1,843,1,843,1,843,1,843,1,844,1,844,1,844,1,844,1,844,1,844,1,844,1,844,1,844,1,845,1,845,1,845,1,845,1,845,1,845,1,845,1,846,1,846,1,846,1,846,1,846,1,846,1,846,1,846,1,846,1,846,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,847,1,848,1,848,1,848,1,848,1,848,1,849,1,849,1,849,1,849,1,849,1,849,1,849,1,849,1,849,1,849,1,849,1,850,1,850,1,850,1,850,1,851,1,851,1,851,1,851,1,852,1,852,1,852,1,852,1,852,1,852,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,853,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,854,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,855,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,856,1,857,1,857,1,857,1,857,1,857,1,857,1,857,1,857,1,858,1,858,1,858,1,858,1,858,1,858,1,858,1,858,1,858,1,859,1,859,1,859,1,859,1,859,1,859,1,859,1,859,1,859,1,859,1,859,1,859,1,860,1,860,1,860,1,860,1,860,1,860,1,860,1,860,1,861,1,861,1,861,1,861,1,861,1,861,1,861,1,861,1,861,1,861,1,861,1,862,1,862,1,862,1,862,1,862,1,862,1,862,1,862,1,862,1,862,1,863,1,863,1,863,1,863,1,863,1,863,1,863,1,863,1,863,1,863,1,864,1,864,1,864,1,864,1,864,1,864,1,864,1,865,1,865,1,865,1,865,1,865,1,865,1,865,1,865,1,866,1,866,1,866,1,866,1,866,1,866,1,866,1,866,1,866,1,866,1,866,1,866,1,867,1,867,1,867,1,867,1,867,1,867,1,867,1,867,1,867,1,867,1,867,1,867,1,868,1,868,1,868,1,868,1,868,1,868,1,868,1,868,1,868,1,868,1,869,1,869,1,869,1,869,1,869,1,869,1,869,1,869,1,869,1,870,1,870,1,870,1,870,1,871,1,871,1,871,1,871,1,871,1,871,1,871,1,872,1,872,1,872,1,872,1,872,1,872,1,872,1,872,1,873,1,873,1,873,1,873,1,873,1,873,1,873,1,873,1,873,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,874,1,875,1,875,1,875,1,875,1,875,1,875,1,875,1,875,1,875,1,876,1,876,1,876,1,876,1,876,1,876,1,876,1,877,1,877,1,877,1,877,1,878,1,878,1,878,1,878,1,878,1,878,1,878,1,878,1,878,1,878,1,878,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,879,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,880,1,881,1,881,1,881,1,881,1,881,1,881,1,882,1,882,1,882,1,882,1,882,1,882,1,882,1,882,1,882,1,882,1,882,1,882,1,883,1,883,1,883,1,883,1,883,1,883,1,884,1,884,1,884,1,884,1,884,1,884,1,884,1,885,1,885,1,885,1,885,1,885,1,885,1,885,1,885,1,885,1,885,1,885,1,886,1,886,1,886,1,886,1,886,1,886,1,886,1,886,1,886,1,886,1,886,1,886,1,887,1,887,1,887,1,887,1,887,1,887,1,887,1,887,1,887,1,887,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,888,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,889,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,890,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,891,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,892,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,893,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,894,1,895,1,895,1,895,1,895,1,895,1,895,1,895,1,895,1,895,1,895,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,896,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,897,1,898,1,898,1,898,1,898,1,898,1,898,1,898,1,898,1,898,1,898,1,898,1,898,1,899,1,899,1,899,1,899,1,899,1,899,1,899,1,899,1,899,1,899,1,899,1,900,1,900,1,900,1,900,1,900,1,900,1,900,1,900,1,900,1,901,1,901,1,901,1,901,1,901,1,901,1,901,1,901,1,902,1,902,1,902,1,902,1,902,1,902,1,902,1,902,1,902,1,903,1,903,1,903,1,903,1,903,1,903,1,903,1,903,1,903,1,903,1,903,1,903,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,904,1,905,1,905,1,905,1,905,1,906,1,906,1,906,1,906,1,906,1,906,1,906,1,907,1,907,1,907,1,907,1,907,1,907,1,907,1,907,1,907,1,907,1,907,1,908,1,908,1,908,1,908,1,908,1,908,1,908,1,908,1,908,1,908,1,908,1,909,1,909,1,909,1,909,1,909,1,909,1,909,1,909,1,909,1,909,1,910,1,910,1,910,1,910,1,910,1,910,1,910,1,910,1,910,1,910,1,911,1,911,1,911,1,911,1,911,1,911,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,912,1,913,1,913,1,913,1,913,1,913,1,913,1,913,1,913,1,913,1,913,1,913,1,914,1,914,1,914,1,914,1,914,1,914,1,914,1,914,1,914,1,915,1,915,1,915,1,915,1,915,1,915,1,915,1,915,1,916,1,916,1,916,1,916,1,916,1,916,1,916,1,917,1,917,1,917,1,917,1,917,1,917,1,917,1,917,1,917,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,918,1,919,1,919,1,919,1,919,1,919,1,919,1,919,1,919,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,920,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,921,1,922,1,922,1,922,1,922,1,922,1,922,1,922,1,922,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,923,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,924,1,925,1,925,1,925,1,925,1,925,1,925,1,926,1,926,1,926,1,926,1,926,1,926,1,927,1,927,1,927,1,927,1,927,1,927,1,927,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,928,1,929,1,929,1,929,1,929,1,929,1,929,1,929,1,929,1,929,1,929,1,929,1,929,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,930,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,931,1,932,1,932,1,932,1,933,1,933,1,933,1,933,1,933,1,933,1,933,1,933,1,933,1,933,1,934,1,934,1,934,1,934,1,934,1,934,1,934,1,935,1,935,1,935,1,935,1,936,1,936,1,936,1,936,1,936,1,936,1,937,1,937,1,937,1,937,1,937,1,938,1,938,1,938,1,938,1,938,1,938,1,939,1,939,1,939,1,939,1,939,1,940,1,940,1,940,1,940,1,940,1,940,1,941,1,941,1,941,1,941,1,941,1,941,1,941,1,941,1,941,1,942,1,942,1,942,1,942,1,942,1,942,1,942,1,942,1,942,1,943,1,943,1,943,1,943,1,943,1,943,1,943,1,943,1,943,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,944,1,945,1,945,1,945,1,945,1,945,1,945,1,945,1,945,1,945,1,945,1,945,1,945,1,946,1,946,1,946,1,946,1,946,1,946,1,946,1,946,1,946,1,946,1,946,1,946,1,947,1,947,1,947,1,947,1,947,1,947,1,947,1,947,1,947,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,948,1,949,1,949,1,949,1,949,1,949,1,949,1,949,1,949,1,949,1,949,1,949,1,949,1,950,1,950,1,950,1,950,1,950,1,950,1,950,1,950,1,950,1,950,1,950,1,951,1,951,1,951,1,951,1,951,1,951,1,951,1,951,1,951,1,951,1,952,1,952,1,952,1,952,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,953,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,954,1,955,1,955,1,955,1,955,1,955,1,955,1,955,1,955,1,955,1,955,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,956,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,957,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,958,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,959,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,960,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,961,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,962,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,963,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,964,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,965,1,966,1,966,1,966,1,966,1,966,1,966,1,966,1,966,1,966,1,966,1,966,1,967,1,967,1,967,1,967,1,967,1,967,1,967,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,968,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,969,1,970,1,970,1,970,1,970,1,970,1,970,1,970,1,970,1,970,1,970,1,971,1,971,1,971,1,971,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,972,1,973,1,973,1,973,1,973,1,974,1,974,1,974,1,974,1,974,1,974,1,974,1,974,1,974,1,975,1,975,1,975,1,975,1,975,1,975,1,975,1,975,1,975,1,975,1,975,1,976,1,976,1,976,1,976,1,976,1,976,1,976,1,976,1,976,1,976,1,976,1,976,1,977,1,977,1,977,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,978,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,979,1,980,1,980,1,980,1,980,1,980,1,980,1,980,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,981,1,982,1,982,1,982,1,982,1,982,1,982,1,982,1,982,1,982,1,982,1,982,1,982,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,983,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,984,1,985,1,985,1,985,1,985,1,986,1,986,1,986,1,986,1,986,1,986,1,987,1,987,1,987,1,987,1,987,1,987,1,988,1,988,1,988,1,988,1,988,1,988,1,988,1,988,1,989,1,989,1,989,1,989,1,989,1,990,1,990,1,990,1,990,1,990,1,990,1,990,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,991,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,992,1,993,1,993,1,993,1,993,1,993,1,993,1,993,1,993,1,994,1,994,1,994,1,994,1,994,1,994,1,995,1,995,1,995,1,995,1,995,1,995,1,995,1,995,1,995,1,995,1,996,1,996,1,996,1,996,1,996,1,997,1,997,1,997,1,997,1,997,1,997,1,998,1,998,1,998,1,998,1,998,1,998,1,998,1,998,1,998,1,998,1,998,1,998,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,999,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1e3,1,1001,1,1001,1,1001,1,1001,1,1002,1,1002,1,1002,1,1002,1,1002,1,1003,1,1003,1,1003,1,1003,1,1003,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1004,1,1005,1,1005,1,1005,1,1005,1,1005,1,1006,1,1006,1,1006,1,1006,1,1007,1,1007,1,1007,1,1007,1,1007,1,1007,1,1008,1,1008,1,1008,1,1008,1,1008,1,1008,1,1008,1,1008,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1009,1,1010,1,1010,1,1010,1,1010,1,1010,1,1011,1,1011,1,1011,1,1011,1,1011,1,1012,1,1012,1,1012,1,1012,1,1012,1,1012,1,1012,1,1012,1,1012,1,1012,1,1012,1,1013,1,1013,1,1013,1,1013,1,1013,1,1013,1,1013,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1014,1,1015,1,1015,1,1015,1,1015,1,1015,1,1015,1,1015,1,1015,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1016,1,1017,1,1017,1,1017,1,1017,1,1017,1,1017,1,1017,1,1017,1,1017,1,1017,1,1018,1,1018,1,1018,1,1018,1,1018,1,1018,1,1018,1,1018,1,1018,1,1019,1,1019,1,1019,1,1019,1,1019,1,1019,1,1019,1,1019,1,1019,1,1020,1,1020,1,1020,1,1020,1,1020,1,1020,1,1020,1,1020,1,1020,1,1020,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1021,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1022,1,1023,1,1023,1,1023,1,1023,1,1023,1,1023,1,1023,1,1023,1,1023,1,1023,1,1023,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1024,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1025,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1026,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1027,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1028,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1029,1,1030,1,1030,1,1030,1,1030,1,1030,1,1030,1,1030,1,1030,1,1030,1,1030,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1031,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1032,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1033,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1034,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1035,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1036,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1037,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1038,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1039,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1040,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1041,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1042,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1043,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1044,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1045,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1046,1,1047,1,1047,1,1047,1,1047,1,1047,1,1047,1,1047,1,1047,1,1047,1,1047,1,1047,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1048,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1049,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1050,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1051,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1052,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1053,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1054,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1055,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1056,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1057,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1058,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1059,1,1060,1,1060,1,1060,1,1060,1,1060,1,1060,1,1060,1,1060,1,1060,1,1060,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1061,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1062,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1063,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1064,1,1065,1,1065,1,1065,1,1065,1,1065,1,1065,1,1065,1,1065,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1066,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1067,1,1068,1,1068,1,1068,1,1068,1,1068,1,1068,1,1068,1,1068,1,1068,1,1068,1,1068,1,1069,1,1069,1,1069,1,1069,1,1069,1,1069,1,1069,1,1069,1,1069,1,1070,1,1070,1,1070,1,1070,1,1070,1,1070,1,1070,1,1070,1,1070,1,1070,1,1071,1,1071,1,1071,1,1071,1,1071,1,1072,1,1072,1,1072,1,1072,1,1072,1,1073,1,1073,1,1073,1,1073,1,1073,1,1073,1,1073,1,1073,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1074,1,1075,1,1075,1,1075,1,1075,1,1075,1,1075,1,1075,1,1075,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1076,1,1077,1,1077,1,1077,1,1077,1,1078,1,1078,1,1078,1,1078,1,1078,1,1078,1,1078,1,1078,1,1078,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1079,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1080,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1081,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1082,1,1083,1,1083,1,1083,1,1083,1,1083,1,1083,1,1083,1,1083,1,1084,1,1084,1,1084,1,1084,1,1084,1,1084,1,1084,1,1084,1,1084,1,1084,1,1085,1,1085,1,1085,1,1085,1,1085,1,1085,1,1085,1,1085,1,1086,1,1086,1,1086,1,1086,1,1086,1,1086,1,1086,1,1086,1,1086,1,1086,1,1086,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1087,1,1088,1,1088,1,1088,1,1088,1,1088,1,1088,1,1089,1,1089,1,1089,1,1089,1,1089,1,1089,1,1089,1,1089,1,1089,1,1089,1,1089,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1090,1,1091,1,1091,1,1091,1,1091,1,1091,1,1091,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1092,1,1093,1,1093,1,1093,1,1093,1,1093,1,1093,1,1093,1,1093,1,1093,1,1093,1,1094,1,1094,1,1094,1,1094,1,1094,1,1094,1,1095,1,1095,1,1095,1,1095,1,1095,1,1096,1,1096,1,1096,1,1096,1,1096,1,1096,1,1096,1,1096,1,1096,1,1096,1,1096,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1097,1,1098,1,1098,1,1098,1,1098,1,1098,1,1098,1,1098,1,1098,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1099,1,1100,1,1100,1,1100,1,1100,1,1100,1,1100,1,1100,1,1100,1,1101,1,1101,1,1101,1,1101,1,1101,1,1101,1,1101,1,1101,1,1101,1,1101,1,1101,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1102,1,1103,1,1103,1,1103,1,1103,1,1103,1,1103,1,1103,1,1104,1,1104,1,1104,1,1104,1,1104,1,1104,1,1104,1,1104,1,1104,1,1105,1,1105,1,1106,1,1106,1,1107,1,1107,1,1107,1,1108,1,1108,1,1108,1,1109,1,1109,1,1109,1,1110,1,1110,1,1110,1,1111,1,1111,1,1111,1,1112,1,1112,1,1112,1,1113,1,1113,1,1113,1,1114,1,1114,1,1114,1,1115,1,1115,1,1115,1,1116,1,1116,1,1117,1,1117,1,1118,1,1118,1,1119,1,1119,1,1120,1,1120,1,1121,1,1121,1,1121,1,1121,1,1122,1,1122,1,1122,1,1122,1,1123,1,1123,1,1124,1,1124,1,1125,1,1125,1,1126,1,1126,1,1127,1,1127,1,1128,1,1128,1,1129,1,1129,1,1130,1,1130,1,1131,1,1131,1,1132,1,1132,1,1133,1,1133,1,1134,1,1134,1,1135,1,1135,1,1136,1,1136,1,1137,1,1137,1,1138,1,1138,1,1139,1,1139,1,1140,1,1140,1,1141,1,1141,1,1142,1,1142,1,1143,1,1143,1,1144,1,1144,1,1144,3,1144,13422,8,1144,1,1145,1,1145,1,1145,1,1145,1,1146,4,1146,13429,8,1146,11,1146,12,1146,13430,1,1146,1,1146,1,1147,1,1147,1,1147,1,1148,1,1148,1,1148,3,1148,13441,8,1148,1,1149,4,1149,13444,8,1149,11,1149,12,1149,13445,1,1150,1,1150,1,1150,1,1150,1,1150,4,1150,13453,8,1150,11,1150,12,1150,13454,1,1150,1,1150,1,1150,1,1150,1,1150,1,1150,4,1150,13463,8,1150,11,1150,12,1150,13464,3,1150,13467,8,1150,1,1151,5,1151,13470,8,1151,10,1151,12,1151,13473,9,1151,1,1151,1,1151,4,1151,13477,8,1151,11,1151,12,1151,13478,1,1151,4,1151,13482,8,1151,11,1151,12,1151,13483,1,1151,1,1151,1,1151,1,1151,5,1151,13490,8,1151,10,1151,12,1151,13493,9,1151,1,1151,1,1151,4,1151,13497,8,1151,11,1151,12,1151,13498,1,1151,1,1151,1,1151,4,1151,13504,8,1151,11,1151,12,1151,13505,1,1151,1,1151,3,1151,13510,8,1151,1,1152,1,1152,1,1152,1,1153,1,1153,1,1154,1,1154,1,1154,1,1155,1,1155,1,1155,1,1156,1,1156,1,1157,1,1157,1,1158,1,1158,1,1158,1,1159,1,1159,1,1159,4,1159,13533,8,1159,11,1159,12,1159,13534,3,1159,13537,8,1159,1,1160,1,1160,1,1160,4,1160,13542,8,1160,11,1160,12,1160,13543,1,1160,3,1160,13547,8,1160,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,1,1161,3,1161,13590,8,1161,1,1162,1,1162,3,1162,13594,8,1162,1,1162,4,1162,13597,8,1162,11,1162,12,1162,13598,1,1163,5,1163,13602,8,1163,10,1163,12,1163,13605,9,1163,1,1163,4,1163,13608,8,1163,11,1163,12,1163,13609,1,1163,5,1163,13613,8,1163,10,1163,12,1163,13616,9,1163,1,1164,1,1164,1,1164,1,1164,1,1164,1,1164,5,1164,13624,8,1164,10,1164,12,1164,13627,9,1164,1,1164,1,1164,1,1165,1,1165,1,1165,1,1165,1,1165,1,1165,5,1165,13637,8,1165,10,1165,12,1165,13640,9,1165,1,1165,1,1165,1,1166,1,1166,1,1166,1,1166,5,1166,13648,8,1166,10,1166,12,1166,13651,9,1166,1,1166,1,1166,1,1167,1,1167,1,1168,1,1168,1,1169,1,1169,1,1169,4,1169,13662,8,1169,11,1169,12,1169,13663,1,1169,1,1169,1,1170,4,1170,13669,8,1170,11,1170,12,1170,13670,1,1170,1,1170,4,1170,13675,8,1170,11,1170,12,1170,13676,1,1170,5,1170,13680,8,1170,10,1170,12,1170,13683,9,1170,1,1170,1,1170,5,1170,13687,8,1170,10,1170,12,1170,13690,9,1170,1,1170,1,1170,4,1170,13694,8,1170,11,1170,12,1170,13695,3,1170,13698,8,1170,1,1171,1,1171,1,1171,1,1171,4,2359,2372,13603,13609,0,1172,1,1,3,2,5,3,7,4,9,5,11,6,13,7,15,8,17,9,19,10,21,11,23,12,25,13,27,14,29,15,31,16,33,17,35,18,37,19,39,20,41,21,43,22,45,23,47,24,49,25,51,26,53,27,55,28,57,29,59,30,61,31,63,32,65,33,67,34,69,35,71,36,73,37,75,38,77,39,79,40,81,41,83,42,85,43,87,44,89,45,91,46,93,47,95,48,97,49,99,50,101,51,103,52,105,53,107,54,109,55,111,56,113,57,115,58,117,59,119,60,121,61,123,62,125,63,127,64,129,65,131,66,133,67,135,68,137,69,139,70,141,71,143,72,145,73,147,74,149,75,151,76,153,77,155,78,157,79,159,80,161,81,163,82,165,83,167,84,169,85,171,86,173,87,175,88,177,89,179,90,181,91,183,92,185,93,187,94,189,95,191,96,193,97,195,98,197,99,199,100,201,101,203,102,205,103,207,104,209,105,211,106,213,107,215,108,217,109,219,110,221,111,223,112,225,113,227,114,229,115,231,116,233,117,235,118,237,119,239,120,241,121,243,122,245,123,247,124,249,125,251,126,253,127,255,128,257,129,259,130,261,131,263,132,265,133,267,134,269,135,271,136,273,137,275,138,277,139,279,140,281,141,283,142,285,143,287,144,289,145,291,146,293,147,295,148,297,149,299,150,301,151,303,152,305,153,307,154,309,155,311,156,313,157,315,158,317,159,319,160,321,161,323,162,325,163,327,164,329,165,331,166,333,167,335,168,337,169,339,170,341,171,343,172,345,173,347,174,349,175,351,176,353,177,355,178,357,179,359,180,361,181,363,182,365,183,367,184,369,185,371,186,373,187,375,188,377,189,379,190,381,191,383,192,385,193,387,194,389,195,391,196,393,197,395,198,397,199,399,200,401,201,403,202,405,203,407,204,409,205,411,206,413,207,415,208,417,209,419,210,421,211,423,212,425,213,427,214,429,215,431,216,433,217,435,218,437,219,439,220,441,221,443,222,445,223,447,224,449,225,451,226,453,227,455,228,457,229,459,230,461,231,463,232,465,233,467,234,469,235,471,236,473,237,475,238,477,239,479,240,481,241,483,242,485,243,487,244,489,245,491,246,493,247,495,248,497,249,499,250,501,251,503,252,505,253,507,254,509,255,511,256,513,257,515,258,517,259,519,260,521,261,523,262,525,263,527,264,529,265,531,266,533,267,535,268,537,269,539,270,541,271,543,272,545,273,547,274,549,275,551,276,553,277,555,278,557,279,559,280,561,281,563,282,565,283,567,284,569,285,571,286,573,287,575,288,577,289,579,290,581,291,583,292,585,293,587,294,589,295,591,296,593,297,595,298,597,299,599,300,601,301,603,302,605,303,607,304,609,305,611,306,613,307,615,308,617,309,619,310,621,311,623,312,625,313,627,314,629,315,631,316,633,317,635,318,637,319,639,320,641,321,643,322,645,323,647,324,649,325,651,326,653,327,655,328,657,329,659,330,661,331,663,332,665,333,667,334,669,335,671,336,673,337,675,338,677,339,679,340,681,341,683,342,685,343,687,344,689,345,691,346,693,347,695,348,697,349,699,350,701,351,703,352,705,353,707,354,709,355,711,356,713,357,715,358,717,359,719,360,721,361,723,362,725,363,727,364,729,365,731,366,733,367,735,368,737,369,739,370,741,371,743,372,745,373,747,374,749,375,751,376,753,377,755,378,757,379,759,380,761,381,763,382,765,383,767,384,769,385,771,386,773,387,775,388,777,389,779,390,781,391,783,392,785,393,787,394,789,395,791,396,793,397,795,398,797,399,799,400,801,401,803,402,805,403,807,404,809,405,811,406,813,407,815,408,817,409,819,410,821,411,823,412,825,413,827,414,829,415,831,416,833,417,835,418,837,419,839,420,841,421,843,422,845,423,847,424,849,425,851,426,853,427,855,428,857,429,859,430,861,431,863,432,865,433,867,434,869,435,871,436,873,437,875,438,877,439,879,440,881,441,883,442,885,443,887,444,889,445,891,446,893,447,895,448,897,449,899,450,901,451,903,452,905,453,907,454,909,455,911,456,913,457,915,458,917,459,919,460,921,461,923,462,925,463,927,464,929,465,931,466,933,467,935,468,937,469,939,470,941,471,943,472,945,473,947,474,949,475,951,476,953,477,955,478,957,479,959,480,961,481,963,482,965,483,967,484,969,485,971,486,973,487,975,488,977,489,979,490,981,491,983,492,985,493,987,494,989,495,991,496,993,497,995,498,997,499,999,500,1001,501,1003,502,1005,503,1007,504,1009,505,1011,506,1013,507,1015,508,1017,509,1019,510,1021,511,1023,512,1025,513,1027,514,1029,515,1031,516,1033,517,1035,518,1037,519,1039,520,1041,521,1043,522,1045,523,1047,524,1049,525,1051,526,1053,527,1055,528,1057,529,1059,530,1061,531,1063,532,1065,533,1067,534,1069,535,1071,536,1073,537,1075,538,1077,539,1079,540,1081,541,1083,542,1085,543,1087,544,1089,545,1091,546,1093,547,1095,548,1097,549,1099,550,1101,551,1103,552,1105,553,1107,554,1109,555,1111,556,1113,557,1115,558,1117,559,1119,560,1121,561,1123,562,1125,563,1127,564,1129,565,1131,566,1133,567,1135,568,1137,569,1139,570,1141,571,1143,572,1145,573,1147,574,1149,575,1151,576,1153,577,1155,578,1157,579,1159,580,1161,581,1163,582,1165,583,1167,584,1169,585,1171,586,1173,587,1175,588,1177,589,1179,590,1181,591,1183,592,1185,593,1187,594,1189,595,1191,596,1193,597,1195,598,1197,599,1199,600,1201,601,1203,602,1205,603,1207,604,1209,605,1211,606,1213,607,1215,608,1217,609,1219,610,1221,611,1223,612,1225,613,1227,614,1229,615,1231,616,1233,617,1235,618,1237,619,1239,620,1241,621,1243,622,1245,623,1247,624,1249,625,1251,626,1253,627,1255,628,1257,629,1259,630,1261,631,1263,632,1265,633,1267,634,1269,635,1271,636,1273,637,1275,638,1277,639,1279,640,1281,641,1283,642,1285,643,1287,644,1289,645,1291,646,1293,647,1295,648,1297,649,1299,650,1301,651,1303,652,1305,653,1307,654,1309,655,1311,656,1313,657,1315,658,1317,659,1319,660,1321,661,1323,662,1325,663,1327,664,1329,665,1331,666,1333,667,1335,668,1337,669,1339,670,1341,671,1343,672,1345,673,1347,674,1349,675,1351,676,1353,677,1355,678,1357,679,1359,680,1361,681,1363,682,1365,683,1367,684,1369,685,1371,686,1373,687,1375,688,1377,689,1379,690,1381,691,1383,692,1385,693,1387,694,1389,695,1391,696,1393,697,1395,698,1397,699,1399,700,1401,701,1403,702,1405,703,1407,704,1409,705,1411,706,1413,707,1415,708,1417,709,1419,710,1421,711,1423,712,1425,713,1427,714,1429,715,1431,716,1433,717,1435,718,1437,719,1439,720,1441,721,1443,722,1445,723,1447,724,1449,725,1451,726,1453,727,1455,728,1457,729,1459,730,1461,731,1463,732,1465,733,1467,734,1469,735,1471,736,1473,737,1475,738,1477,739,1479,740,1481,741,1483,742,1485,743,1487,744,1489,745,1491,746,1493,747,1495,748,1497,749,1499,750,1501,751,1503,752,1505,753,1507,754,1509,755,1511,756,1513,757,1515,758,1517,759,1519,760,1521,761,1523,762,1525,763,1527,764,1529,765,1531,766,1533,767,1535,768,1537,769,1539,770,1541,771,1543,772,1545,773,1547,774,1549,775,1551,776,1553,777,1555,778,1557,779,1559,780,1561,781,1563,782,1565,783,1567,784,1569,785,1571,786,1573,787,1575,788,1577,789,1579,790,1581,791,1583,792,1585,793,1587,794,1589,795,1591,796,1593,797,1595,798,1597,799,1599,800,1601,801,1603,802,1605,803,1607,804,1609,805,1611,806,1613,807,1615,808,1617,809,1619,810,1621,811,1623,812,1625,813,1627,814,1629,815,1631,816,1633,817,1635,818,1637,819,1639,820,1641,821,1643,822,1645,823,1647,824,1649,825,1651,826,1653,827,1655,828,1657,829,1659,830,1661,831,1663,832,1665,833,1667,834,1669,835,1671,836,1673,837,1675,838,1677,839,1679,840,1681,841,1683,842,1685,843,1687,844,1689,845,1691,846,1693,847,1695,848,1697,849,1699,850,1701,851,1703,852,1705,853,1707,854,1709,855,1711,856,1713,857,1715,858,1717,859,1719,860,1721,861,1723,862,1725,863,1727,864,1729,865,1731,866,1733,867,1735,868,1737,869,1739,870,1741,871,1743,872,1745,873,1747,874,1749,875,1751,876,1753,877,1755,878,1757,879,1759,880,1761,881,1763,882,1765,883,1767,884,1769,885,1771,886,1773,887,1775,888,1777,889,1779,890,1781,891,1783,892,1785,893,1787,894,1789,895,1791,896,1793,897,1795,898,1797,899,1799,900,1801,901,1803,902,1805,903,1807,904,1809,905,1811,906,1813,907,1815,908,1817,909,1819,910,1821,911,1823,912,1825,913,1827,914,1829,915,1831,916,1833,917,1835,918,1837,919,1839,920,1841,921,1843,922,1845,923,1847,924,1849,925,1851,926,1853,927,1855,928,1857,929,1859,930,1861,931,1863,932,1865,933,1867,934,1869,935,1871,936,1873,937,1875,938,1877,939,1879,940,1881,941,1883,942,1885,943,1887,944,1889,945,1891,946,1893,947,1895,948,1897,949,1899,950,1901,951,1903,952,1905,953,1907,954,1909,955,1911,956,1913,957,1915,958,1917,959,1919,960,1921,961,1923,962,1925,963,1927,964,1929,965,1931,966,1933,967,1935,968,1937,969,1939,970,1941,971,1943,972,1945,973,1947,974,1949,975,1951,976,1953,977,1955,978,1957,979,1959,980,1961,981,1963,982,1965,983,1967,984,1969,985,1971,986,1973,987,1975,988,1977,989,1979,990,1981,991,1983,992,1985,993,1987,994,1989,995,1991,996,1993,997,1995,998,1997,999,1999,1e3,2001,1001,2003,1002,2005,1003,2007,1004,2009,1005,2011,1006,2013,1007,2015,1008,2017,1009,2019,1010,2021,1011,2023,1012,2025,1013,2027,1014,2029,1015,2031,1016,2033,1017,2035,1018,2037,1019,2039,1020,2041,1021,2043,1022,2045,1023,2047,1024,2049,1025,2051,1026,2053,1027,2055,1028,2057,1029,2059,1030,2061,1031,2063,1032,2065,1033,2067,1034,2069,1035,2071,1036,2073,1037,2075,1038,2077,1039,2079,1040,2081,1041,2083,1042,2085,1043,2087,1044,2089,1045,2091,1046,2093,1047,2095,1048,2097,1049,2099,1050,2101,1051,2103,1052,2105,1053,2107,1054,2109,1055,2111,1056,2113,1057,2115,1058,2117,1059,2119,1060,2121,1061,2123,1062,2125,1063,2127,1064,2129,1065,2131,1066,2133,1067,2135,1068,2137,1069,2139,1070,2141,1071,2143,1072,2145,1073,2147,1074,2149,1075,2151,1076,2153,1077,2155,1078,2157,1079,2159,1080,2161,1081,2163,1082,2165,1083,2167,1084,2169,1085,2171,1086,2173,1087,2175,1088,2177,1089,2179,1090,2181,1091,2183,1092,2185,1093,2187,1094,2189,1095,2191,1096,2193,1097,2195,1098,2197,1099,2199,1100,2201,1101,2203,1102,2205,1103,2207,1104,2209,1105,2211,1106,2213,1107,2215,1108,2217,1109,2219,1110,2221,1111,2223,1112,2225,1113,2227,1114,2229,1115,2231,1116,2233,1117,2235,1118,2237,1119,2239,1120,2241,1121,2243,1122,2245,1123,2247,1124,2249,1125,2251,1126,2253,1127,2255,1128,2257,1129,2259,1130,2261,1131,2263,1132,2265,1133,2267,1134,2269,1135,2271,1136,2273,1137,2275,1138,2277,1139,2279,1140,2281,1141,2283,1142,2285,1143,2287,1144,2289,0,2291,1145,2293,1146,2295,1147,2297,1148,2299,1149,2301,1150,2303,1151,2305,1152,2307,1153,2309,1154,2311,1155,2313,1156,2315,1157,2317,1158,2319,1159,2321,1160,2323,0,2325,0,2327,0,2329,0,2331,0,2333,0,2335,0,2337,0,2339,0,2341,0,2343,1161,1,0,42,3,0,9,10,13,13,32,32,2,0,9,9,32,32,2,0,10,10,13,13,2,0,65,65,97,97,2,0,68,68,100,100,2,0,76,76,108,108,2,0,84,84,116,116,2,0,69,69,101,101,2,0,82,82,114,114,2,0,87,87,119,119,2,0,89,89,121,121,2,0,83,83,115,115,2,0,78,78,110,110,2,0,90,90,122,122,2,0,67,67,99,99,2,0,73,73,105,105,2,0,66,66,98,98,2,0,85,85,117,117,2,0,70,70,102,102,2,0,79,79,111,111,2,0,72,72,104,104,2,0,75,75,107,107,2,0,71,71,103,103,2,0,77,77,109,109,2,0,86,86,118,118,2,0,80,80,112,112,2,0,88,88,120,120,2,0,74,74,106,106,2,0,81,81,113,113,8,0,71,71,75,75,77,77,84,84,103,103,107,107,109,109,116,116,7,0,36,36,46,46,48,57,65,90,95,95,97,122,128,65535,2,0,43,43,45,45,6,0,36,36,48,57,65,90,95,95,97,122,128,65535,5,0,36,36,65,90,95,95,97,122,128,65535,2,0,34,34,92,92,2,0,39,39,92,92,1,0,96,96,3,0,48,57,65,70,97,102,1,0,48,57,1,0,48,49,2,0,46,46,48,57,3,0,48,58,65,70,97,102,13786,0,1,1,0,0,0,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,23,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,0,0,0,0,65,1,0,0,0,0,67,1,0,0,0,0,69,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,1,0,0,0,0,87,1,0,0,0,0,89,1,0,0,0,0,91,1,0,0,0,0,93,1,0,0,0,0,95,1,0,0,0,0,97,1,0,0,0,0,99,1,0,0,0,0,101,1,0,0,0,0,103,1,0,0,0,0,105,1,0,0,0,0,107,1,0,0,0,0,109,1,0,0,0,0,111,1,0,0,0,0,113,1,0,0,0,0,115,1,0,0,0,0,117,1,0,0,0,0,119,1,0,0,0,0,121,1,0,0,0,0,123,1,0,0,0,0,125,1,0,0,0,0,127,1,0,0,0,0,129,1,0,0,0,0,131,1,0,0,0,0,133,1,0,0,0,0,135,1,0,0,0,0,137,1,0,0,0,0,139,1,0,0,0,0,141,1,0,0,0,0,143,1,0,0,0,0,145,1,0,0,0,0,147,1,0,0,0,0,149,1,0,0,0,0,151,1,0,0,0,0,153,1,0,0,0,0,155,1,0,0,0,0,157,1,0,0,0,0,159,1,0,0,0,0,161,1,0,0,0,0,163,1,0,0,0,0,165,1,0,0,0,0,167,1,0,0,0,0,169,1,0,0,0,0,171,1,0,0,0,0,173,1,0,0,0,0,175,1,0,0,0,0,177,1,0,0,0,0,179,1,0,0,0,0,181,1,0,0,0,0,183,1,0,0,0,0,185,1,0,0,0,0,187,1,0,0,0,0,189,1,0,0,0,0,191,1,0,0,0,0,193,1,0,0,0,0,195,1,0,0,0,0,197,1,0,0,0,0,199,1,0,0,0,0,201,1,0,0,0,0,203,1,0,0,0,0,205,1,0,0,0,0,207,1,0,0,0,0,209,1,0,0,0,0,211,1,0,0,0,0,213,1,0,0,0,0,215,1,0,0,0,0,217,1,0,0,0,0,219,1,0,0,0,0,221,1,0,0,0,0,223,1,0,0,0,0,225,1,0,0,0,0,227,1,0,0,0,0,229,1,0,0,0,0,231,1,0,0,0,0,233,1,0,0,0,0,235,1,0,0,0,0,237,1,0,0,0,0,239,1,0,0,0,0,241,1,0,0,0,0,243,1,0,0,0,0,245,1,0,0,0,0,247,1,0,0,0,0,249,1,0,0,0,0,251,1,0,0,0,0,253,1,0,0,0,0,255,1,0,0,0,0,257,1,0,0,0,0,259,1,0,0,0,0,261,1,0,0,0,0,263,1,0,0,0,0,265,1,0,0,0,0,267,1,0,0,0,0,269,1,0,0,0,0,271,1,0,0,0,0,273,1,0,0,0,0,275,1,0,0,0,0,277,1,0,0,0,0,279,1,0,0,0,0,281,1,0,0,0,0,283,1,0,0,0,0,285,1,0,0,0,0,287,1,0,0,0,0,289,1,0,0,0,0,291,1,0,0,0,0,293,1,0,0,0,0,295,1,0,0,0,0,297,1,0,0,0,0,299,1,0,0,0,0,301,1,0,0,0,0,303,1,0,0,0,0,305,1,0,0,0,0,307,1,0,0,0,0,309,1,0,0,0,0,311,1,0,0,0,0,313,1,0,0,0,0,315,1,0,0,0,0,317,1,0,0,0,0,319,1,0,0,0,0,321,1,0,0,0,0,323,1,0,0,0,0,325,1,0,0,0,0,327,1,0,0,0,0,329,1,0,0,0,0,331,1,0,0,0,0,333,1,0,0,0,0,335,1,0,0,0,0,337,1,0,0,0,0,339,1,0,0,0,0,341,1,0,0,0,0,343,1,0,0,0,0,345,1,0,0,0,0,347,1,0,0,0,0,349,1,0,0,0,0,351,1,0,0,0,0,353,1,0,0,0,0,355,1,0,0,0,0,357,1,0,0,0,0,359,1,0,0,0,0,361,1,0,0,0,0,363,1,0,0,0,0,365,1,0,0,0,0,367,1,0,0,0,0,369,1,0,0,0,0,371,1,0,0,0,0,373,1,0,0,0,0,375,1,0,0,0,0,377,1,0,0,0,0,379,1,0,0,0,0,381,1,0,0,0,0,383,1,0,0,0,0,385,1,0,0,0,0,387,1,0,0,0,0,389,1,0,0,0,0,391,1,0,0,0,0,393,1,0,0,0,0,395,1,0,0,0,0,397,1,0,0,0,0,399,1,0,0,0,0,401,1,0,0,0,0,403,1,0,0,0,0,405,1,0,0,0,0,407,1,0,0,0,0,409,1,0,0,0,0,411,1,0,0,0,0,413,1,0,0,0,0,415,1,0,0,0,0,417,1,0,0,0,0,419,1,0,0,0,0,421,1,0,0,0,0,423,1,0,0,0,0,425,1,0,0,0,0,427,1,0,0,0,0,429,1,0,0,0,0,431,1,0,0,0,0,433,1,0,0,0,0,435,1,0,0,0,0,437,1,0,0,0,0,439,1,0,0,0,0,441,1,0,0,0,0,443,1,0,0,0,0,445,1,0,0,0,0,447,1,0,0,0,0,449,1,0,0,0,0,451,1,0,0,0,0,453,1,0,0,0,0,455,1,0,0,0,0,457,1,0,0,0,0,459,1,0,0,0,0,461,1,0,0,0,0,463,1,0,0,0,0,465,1,0,0,0,0,467,1,0,0,0,0,469,1,0,0,0,0,471,1,0,0,0,0,473,1,0,0,0,0,475,1,0,0,0,0,477,1,0,0,0,0,479,1,0,0,0,0,481,1,0,0,0,0,483,1,0,0,0,0,485,1,0,0,0,0,487,1,0,0,0,0,489,1,0,0,0,0,491,1,0,0,0,0,493,1,0,0,0,0,495,1,0,0,0,0,497,1,0,0,0,0,499,1,0,0,0,0,501,1,0,0,0,0,503,1,0,0,0,0,505,1,0,0,0,0,507,1,0,0,0,0,509,1,0,0,0,0,511,1,0,0,0,0,513,1,0,0,0,0,515,1,0,0,0,0,517,1,0,0,0,0,519,1,0,0,0,0,521,1,0,0,0,0,523,1,0,0,0,0,525,1,0,0,0,0,527,1,0,0,0,0,529,1,0,0,0,0,531,1,0,0,0,0,533,1,0,0,0,0,535,1,0,0,0,0,537,1,0,0,0,0,539,1,0,0,0,0,541,1,0,0,0,0,543,1,0,0,0,0,545,1,0,0,0,0,547,1,0,0,0,0,549,1,0,0,0,0,551,1,0,0,0,0,553,1,0,0,0,0,555,1,0,0,0,0,557,1,0,0,0,0,559,1,0,0,0,0,561,1,0,0,0,0,563,1,0,0,0,0,565,1,0,0,0,0,567,1,0,0,0,0,569,1,0,0,0,0,571,1,0,0,0,0,573,1,0,0,0,0,575,1,0,0,0,0,577,1,0,0,0,0,579,1,0,0,0,0,581,1,0,0,0,0,583,1,0,0,0,0,585,1,0,0,0,0,587,1,0,0,0,0,589,1,0,0,0,0,591,1,0,0,0,0,593,1,0,0,0,0,595,1,0,0,0,0,597,1,0,0,0,0,599,1,0,0,0,0,601,1,0,0,0,0,603,1,0,0,0,0,605,1,0,0,0,0,607,1,0,0,0,0,609,1,0,0,0,0,611,1,0,0,0,0,613,1,0,0,0,0,615,1,0,0,0,0,617,1,0,0,0,0,619,1,0,0,0,0,621,1,0,0,0,0,623,1,0,0,0,0,625,1,0,0,0,0,627,1,0,0,0,0,629,1,0,0,0,0,631,1,0,0,0,0,633,1,0,0,0,0,635,1,0,0,0,0,637,1,0,0,0,0,639,1,0,0,0,0,641,1,0,0,0,0,643,1,0,0,0,0,645,1,0,0,0,0,647,1,0,0,0,0,649,1,0,0,0,0,651,1,0,0,0,0,653,1,0,0,0,0,655,1,0,0,0,0,657,1,0,0,0,0,659,1,0,0,0,0,661,1,0,0,0,0,663,1,0,0,0,0,665,1,0,0,0,0,667,1,0,0,0,0,669,1,0,0,0,0,671,1,0,0,0,0,673,1,0,0,0,0,675,1,0,0,0,0,677,1,0,0,0,0,679,1,0,0,0,0,681,1,0,0,0,0,683,1,0,0,0,0,685,1,0,0,0,0,687,1,0,0,0,0,689,1,0,0,0,0,691,1,0,0,0,0,693,1,0,0,0,0,695,1,0,0,0,0,697,1,0,0,0,0,699,1,0,0,0,0,701,1,0,0,0,0,703,1,0,0,0,0,705,1,0,0,0,0,707,1,0,0,0,0,709,1,0,0,0,0,711,1,0,0,0,0,713,1,0,0,0,0,715,1,0,0,0,0,717,1,0,0,0,0,719,1,0,0,0,0,721,1,0,0,0,0,723,1,0,0,0,0,725,1,0,0,0,0,727,1,0,0,0,0,729,1,0,0,0,0,731,1,0,0,0,0,733,1,0,0,0,0,735,1,0,0,0,0,737,1,0,0,0,0,739,1,0,0,0,0,741,1,0,0,0,0,743,1,0,0,0,0,745,1,0,0,0,0,747,1,0,0,0,0,749,1,0,0,0,0,751,1,0,0,0,0,753,1,0,0,0,0,755,1,0,0,0,0,757,1,0,0,0,0,759,1,0,0,0,0,761,1,0,0,0,0,763,1,0,0,0,0,765,1,0,0,0,0,767,1,0,0,0,0,769,1,0,0,0,0,771,1,0,0,0,0,773,1,0,0,0,0,775,1,0,0,0,0,777,1,0,0,0,0,779,1,0,0,0,0,781,1,0,0,0,0,783,1,0,0,0,0,785,1,0,0,0,0,787,1,0,0,0,0,789,1,0,0,0,0,791,1,0,0,0,0,793,1,0,0,0,0,795,1,0,0,0,0,797,1,0,0,0,0,799,1,0,0,0,0,801,1,0,0,0,0,803,1,0,0,0,0,805,1,0,0,0,0,807,1,0,0,0,0,809,1,0,0,0,0,811,1,0,0,0,0,813,1,0,0,0,0,815,1,0,0,0,0,817,1,0,0,0,0,819,1,0,0,0,0,821,1,0,0,0,0,823,1,0,0,0,0,825,1,0,0,0,0,827,1,0,0,0,0,829,1,0,0,0,0,831,1,0,0,0,0,833,1,0,0,0,0,835,1,0,0,0,0,837,1,0,0,0,0,839,1,0,0,0,0,841,1,0,0,0,0,843,1,0,0,0,0,845,1,0,0,0,0,847,1,0,0,0,0,849,1,0,0,0,0,851,1,0,0,0,0,853,1,0,0,0,0,855,1,0,0,0,0,857,1,0,0,0,0,859,1,0,0,0,0,861,1,0,0,0,0,863,1,0,0,0,0,865,1,0,0,0,0,867,1,0,0,0,0,869,1,0,0,0,0,871,1,0,0,0,0,873,1,0,0,0,0,875,1,0,0,0,0,877,1,0,0,0,0,879,1,0,0,0,0,881,1,0,0,0,0,883,1,0,0,0,0,885,1,0,0,0,0,887,1,0,0,0,0,889,1,0,0,0,0,891,1,0,0,0,0,893,1,0,0,0,0,895,1,0,0,0,0,897,1,0,0,0,0,899,1,0,0,0,0,901,1,0,0,0,0,903,1,0,0,0,0,905,1,0,0,0,0,907,1,0,0,0,0,909,1,0,0,0,0,911,1,0,0,0,0,913,1,0,0,0,0,915,1,0,0,0,0,917,1,0,0,0,0,919,1,0,0,0,0,921,1,0,0,0,0,923,1,0,0,0,0,925,1,0,0,0,0,927,1,0,0,0,0,929,1,0,0,0,0,931,1,0,0,0,0,933,1,0,0,0,0,935,1,0,0,0,0,937,1,0,0,0,0,939,1,0,0,0,0,941,1,0,0,0,0,943,1,0,0,0,0,945,1,0,0,0,0,947,1,0,0,0,0,949,1,0,0,0,0,951,1,0,0,0,0,953,1,0,0,0,0,955,1,0,0,0,0,957,1,0,0,0,0,959,1,0,0,0,0,961,1,0,0,0,0,963,1,0,0,0,0,965,1,0,0,0,0,967,1,0,0,0,0,969,1,0,0,0,0,971,1,0,0,0,0,973,1,0,0,0,0,975,1,0,0,0,0,977,1,0,0,0,0,979,1,0,0,0,0,981,1,0,0,0,0,983,1,0,0,0,0,985,1,0,0,0,0,987,1,0,0,0,0,989,1,0,0,0,0,991,1,0,0,0,0,993,1,0,0,0,0,995,1,0,0,0,0,997,1,0,0,0,0,999,1,0,0,0,0,1001,1,0,0,0,0,1003,1,0,0,0,0,1005,1,0,0,0,0,1007,1,0,0,0,0,1009,1,0,0,0,0,1011,1,0,0,0,0,1013,1,0,0,0,0,1015,1,0,0,0,0,1017,1,0,0,0,0,1019,1,0,0,0,0,1021,1,0,0,0,0,1023,1,0,0,0,0,1025,1,0,0,0,0,1027,1,0,0,0,0,1029,1,0,0,0,0,1031,1,0,0,0,0,1033,1,0,0,0,0,1035,1,0,0,0,0,1037,1,0,0,0,0,1039,1,0,0,0,0,1041,1,0,0,0,0,1043,1,0,0,0,0,1045,1,0,0,0,0,1047,1,0,0,0,0,1049,1,0,0,0,0,1051,1,0,0,0,0,1053,1,0,0,0,0,1055,1,0,0,0,0,1057,1,0,0,0,0,1059,1,0,0,0,0,1061,1,0,0,0,0,1063,1,0,0,0,0,1065,1,0,0,0,0,1067,1,0,0,0,0,1069,1,0,0,0,0,1071,1,0,0,0,0,1073,1,0,0,0,0,1075,1,0,0,0,0,1077,1,0,0,0,0,1079,1,0,0,0,0,1081,1,0,0,0,0,1083,1,0,0,0,0,1085,1,0,0,0,0,1087,1,0,0,0,0,1089,1,0,0,0,0,1091,1,0,0,0,0,1093,1,0,0,0,0,1095,1,0,0,0,0,1097,1,0,0,0,0,1099,1,0,0,0,0,1101,1,0,0,0,0,1103,1,0,0,0,0,1105,1,0,0,0,0,1107,1,0,0,0,0,1109,1,0,0,0,0,1111,1,0,0,0,0,1113,1,0,0,0,0,1115,1,0,0,0,0,1117,1,0,0,0,0,1119,1,0,0,0,0,1121,1,0,0,0,0,1123,1,0,0,0,0,1125,1,0,0,0,0,1127,1,0,0,0,0,1129,1,0,0,0,0,1131,1,0,0,0,0,1133,1,0,0,0,0,1135,1,0,0,0,0,1137,1,0,0,0,0,1139,1,0,0,0,0,1141,1,0,0,0,0,1143,1,0,0,0,0,1145,1,0,0,0,0,1147,1,0,0,0,0,1149,1,0,0,0,0,1151,1,0,0,0,0,1153,1,0,0,0,0,1155,1,0,0,0,0,1157,1,0,0,0,0,1159,1,0,0,0,0,1161,1,0,0,0,0,1163,1,0,0,0,0,1165,1,0,0,0,0,1167,1,0,0,0,0,1169,1,0,0,0,0,1171,1,0,0,0,0,1173,1,0,0,0,0,1175,1,0,0,0,0,1177,1,0,0,0,0,1179,1,0,0,0,0,1181,1,0,0,0,0,1183,1,0,0,0,0,1185,1,0,0,0,0,1187,1,0,0,0,0,1189,1,0,0,0,0,1191,1,0,0,0,0,1193,1,0,0,0,0,1195,1,0,0,0,0,1197,1,0,0,0,0,1199,1,0,0,0,0,1201,1,0,0,0,0,1203,1,0,0,0,0,1205,1,0,0,0,0,1207,1,0,0,0,0,1209,1,0,0,0,0,1211,1,0,0,0,0,1213,1,0,0,0,0,1215,1,0,0,0,0,1217,1,0,0,0,0,1219,1,0,0,0,0,1221,1,0,0,0,0,1223,1,0,0,0,0,1225,1,0,0,0,0,1227,1,0,0,0,0,1229,1,0,0,0,0,1231,1,0,0,0,0,1233,1,0,0,0,0,1235,1,0,0,0,0,1237,1,0,0,0,0,1239,1,0,0,0,0,1241,1,0,0,0,0,1243,1,0,0,0,0,1245,1,0,0,0,0,1247,1,0,0,0,0,1249,1,0,0,0,0,1251,1,0,0,0,0,1253,1,0,0,0,0,1255,1,0,0,0,0,1257,1,0,0,0,0,1259,1,0,0,0,0,1261,1,0,0,0,0,1263,1,0,0,0,0,1265,1,0,0,0,0,1267,1,0,0,0,0,1269,1,0,0,0,0,1271,1,0,0,0,0,1273,1,0,0,0,0,1275,1,0,0,0,0,1277,1,0,0,0,0,1279,1,0,0,0,0,1281,1,0,0,0,0,1283,1,0,0,0,0,1285,1,0,0,0,0,1287,1,0,0,0,0,1289,1,0,0,0,0,1291,1,0,0,0,0,1293,1,0,0,0,0,1295,1,0,0,0,0,1297,1,0,0,0,0,1299,1,0,0,0,0,1301,1,0,0,0,0,1303,1,0,0,0,0,1305,1,0,0,0,0,1307,1,0,0,0,0,1309,1,0,0,0,0,1311,1,0,0,0,0,1313,1,0,0,0,0,1315,1,0,0,0,0,1317,1,0,0,0,0,1319,1,0,0,0,0,1321,1,0,0,0,0,1323,1,0,0,0,0,1325,1,0,0,0,0,1327,1,0,0,0,0,1329,1,0,0,0,0,1331,1,0,0,0,0,1333,1,0,0,0,0,1335,1,0,0,0,0,1337,1,0,0,0,0,1339,1,0,0,0,0,1341,1,0,0,0,0,1343,1,0,0,0,0,1345,1,0,0,0,0,1347,1,0,0,0,0,1349,1,0,0,0,0,1351,1,0,0,0,0,1353,1,0,0,0,0,1355,1,0,0,0,0,1357,1,0,0,0,0,1359,1,0,0,0,0,1361,1,0,0,0,0,1363,1,0,0,0,0,1365,1,0,0,0,0,1367,1,0,0,0,0,1369,1,0,0,0,0,1371,1,0,0,0,0,1373,1,0,0,0,0,1375,1,0,0,0,0,1377,1,0,0,0,0,1379,1,0,0,0,0,1381,1,0,0,0,0,1383,1,0,0,0,0,1385,1,0,0,0,0,1387,1,0,0,0,0,1389,1,0,0,0,0,1391,1,0,0,0,0,1393,1,0,0,0,0,1395,1,0,0,0,0,1397,1,0,0,0,0,1399,1,0,0,0,0,1401,1,0,0,0,0,1403,1,0,0,0,0,1405,1,0,0,0,0,1407,1,0,0,0,0,1409,1,0,0,0,0,1411,1,0,0,0,0,1413,1,0,0,0,0,1415,1,0,0,0,0,1417,1,0,0,0,0,1419,1,0,0,0,0,1421,1,0,0,0,0,1423,1,0,0,0,0,1425,1,0,0,0,0,1427,1,0,0,0,0,1429,1,0,0,0,0,1431,1,0,0,0,0,1433,1,0,0,0,0,1435,1,0,0,0,0,1437,1,0,0,0,0,1439,1,0,0,0,0,1441,1,0,0,0,0,1443,1,0,0,0,0,1445,1,0,0,0,0,1447,1,0,0,0,0,1449,1,0,0,0,0,1451,1,0,0,0,0,1453,1,0,0,0,0,1455,1,0,0,0,0,1457,1,0,0,0,0,1459,1,0,0,0,0,1461,1,0,0,0,0,1463,1,0,0,0,0,1465,1,0,0,0,0,1467,1,0,0,0,0,1469,1,0,0,0,0,1471,1,0,0,0,0,1473,1,0,0,0,0,1475,1,0,0,0,0,1477,1,0,0,0,0,1479,1,0,0,0,0,1481,1,0,0,0,0,1483,1,0,0,0,0,1485,1,0,0,0,0,1487,1,0,0,0,0,1489,1,0,0,0,0,1491,1,0,0,0,0,1493,1,0,0,0,0,1495,1,0,0,0,0,1497,1,0,0,0,0,1499,1,0,0,0,0,1501,1,0,0,0,0,1503,1,0,0,0,0,1505,1,0,0,0,0,1507,1,0,0,0,0,1509,1,0,0,0,0,1511,1,0,0,0,0,1513,1,0,0,0,0,1515,1,0,0,0,0,1517,1,0,0,0,0,1519,1,0,0,0,0,1521,1,0,0,0,0,1523,1,0,0,0,0,1525,1,0,0,0,0,1527,1,0,0,0,0,1529,1,0,0,0,0,1531,1,0,0,0,0,1533,1,0,0,0,0,1535,1,0,0,0,0,1537,1,0,0,0,0,1539,1,0,0,0,0,1541,1,0,0,0,0,1543,1,0,0,0,0,1545,1,0,0,0,0,1547,1,0,0,0,0,1549,1,0,0,0,0,1551,1,0,0,0,0,1553,1,0,0,0,0,1555,1,0,0,0,0,1557,1,0,0,0,0,1559,1,0,0,0,0,1561,1,0,0,0,0,1563,1,0,0,0,0,1565,1,0,0,0,0,1567,1,0,0,0,0,1569,1,0,0,0,0,1571,1,0,0,0,0,1573,1,0,0,0,0,1575,1,0,0,0,0,1577,1,0,0,0,0,1579,1,0,0,0,0,1581,1,0,0,0,0,1583,1,0,0,0,0,1585,1,0,0,0,0,1587,1,0,0,0,0,1589,1,0,0,0,0,1591,1,0,0,0,0,1593,1,0,0,0,0,1595,1,0,0,0,0,1597,1,0,0,0,0,1599,1,0,0,0,0,1601,1,0,0,0,0,1603,1,0,0,0,0,1605,1,0,0,0,0,1607,1,0,0,0,0,1609,1,0,0,0,0,1611,1,0,0,0,0,1613,1,0,0,0,0,1615,1,0,0,0,0,1617,1,0,0,0,0,1619,1,0,0,0,0,1621,1,0,0,0,0,1623,1,0,0,0,0,1625,1,0,0,0,0,1627,1,0,0,0,0,1629,1,0,0,0,0,1631,1,0,0,0,0,1633,1,0,0,0,0,1635,1,0,0,0,0,1637,1,0,0,0,0,1639,1,0,0,0,0,1641,1,0,0,0,0,1643,1,0,0,0,0,1645,1,0,0,0,0,1647,1,0,0,0,0,1649,1,0,0,0,0,1651,1,0,0,0,0,1653,1,0,0,0,0,1655,1,0,0,0,0,1657,1,0,0,0,0,1659,1,0,0,0,0,1661,1,0,0,0,0,1663,1,0,0,0,0,1665,1,0,0,0,0,1667,1,0,0,0,0,1669,1,0,0,0,0,1671,1,0,0,0,0,1673,1,0,0,0,0,1675,1,0,0,0,0,1677,1,0,0,0,0,1679,1,0,0,0,0,1681,1,0,0,0,0,1683,1,0,0,0,0,1685,1,0,0,0,0,1687,1,0,0,0,0,1689,1,0,0,0,0,1691,1,0,0,0,0,1693,1,0,0,0,0,1695,1,0,0,0,0,1697,1,0,0,0,0,1699,1,0,0,0,0,1701,1,0,0,0,0,1703,1,0,0,0,0,1705,1,0,0,0,0,1707,1,0,0,0,0,1709,1,0,0,0,0,1711,1,0,0,0,0,1713,1,0,0,0,0,1715,1,0,0,0,0,1717,1,0,0,0,0,1719,1,0,0,0,0,1721,1,0,0,0,0,1723,1,0,0,0,0,1725,1,0,0,0,0,1727,1,0,0,0,0,1729,1,0,0,0,0,1731,1,0,0,0,0,1733,1,0,0,0,0,1735,1,0,0,0,0,1737,1,0,0,0,0,1739,1,0,0,0,0,1741,1,0,0,0,0,1743,1,0,0,0,0,1745,1,0,0,0,0,1747,1,0,0,0,0,1749,1,0,0,0,0,1751,1,0,0,0,0,1753,1,0,0,0,0,1755,1,0,0,0,0,1757,1,0,0,0,0,1759,1,0,0,0,0,1761,1,0,0,0,0,1763,1,0,0,0,0,1765,1,0,0,0,0,1767,1,0,0,0,0,1769,1,0,0,0,0,1771,1,0,0,0,0,1773,1,0,0,0,0,1775,1,0,0,0,0,1777,1,0,0,0,0,1779,1,0,0,0,0,1781,1,0,0,0,0,1783,1,0,0,0,0,1785,1,0,0,0,0,1787,1,0,0,0,0,1789,1,0,0,0,0,1791,1,0,0,0,0,1793,1,0,0,0,0,1795,1,0,0,0,0,1797,1,0,0,0,0,1799,1,0,0,0,0,1801,1,0,0,0,0,1803,1,0,0,0,0,1805,1,0,0,0,0,1807,1,0,0,0,0,1809,1,0,0,0,0,1811,1,0,0,0,0,1813,1,0,0,0,0,1815,1,0,0,0,0,1817,1,0,0,0,0,1819,1,0,0,0,0,1821,1,0,0,0,0,1823,1,0,0,0,0,1825,1,0,0,0,0,1827,1,0,0,0,0,1829,1,0,0,0,0,1831,1,0,0,0,0,1833,1,0,0,0,0,1835,1,0,0,0,0,1837,1,0,0,0,0,1839,1,0,0,0,0,1841,1,0,0,0,0,1843,1,0,0,0,0,1845,1,0,0,0,0,1847,1,0,0,0,0,1849,1,0,0,0,0,1851,1,0,0,0,0,1853,1,0,0,0,0,1855,1,0,0,0,0,1857,1,0,0,0,0,1859,1,0,0,0,0,1861,1,0,0,0,0,1863,1,0,0,0,0,1865,1,0,0,0,0,1867,1,0,0,0,0,1869,1,0,0,0,0,1871,1,0,0,0,0,1873,1,0,0,0,0,1875,1,0,0,0,0,1877,1,0,0,0,0,1879,1,0,0,0,0,1881,1,0,0,0,0,1883,1,0,0,0,0,1885,1,0,0,0,0,1887,1,0,0,0,0,1889,1,0,0,0,0,1891,1,0,0,0,0,1893,1,0,0,0,0,1895,1,0,0,0,0,1897,1,0,0,0,0,1899,1,0,0,0,0,1901,1,0,0,0,0,1903,1,0,0,0,0,1905,1,0,0,0,0,1907,1,0,0,0,0,1909,1,0,0,0,0,1911,1,0,0,0,0,1913,1,0,0,0,0,1915,1,0,0,0,0,1917,1,0,0,0,0,1919,1,0,0,0,0,1921,1,0,0,0,0,1923,1,0,0,0,0,1925,1,0,0,0,0,1927,1,0,0,0,0,1929,1,0,0,0,0,1931,1,0,0,0,0,1933,1,0,0,0,0,1935,1,0,0,0,0,1937,1,0,0,0,0,1939,1,0,0,0,0,1941,1,0,0,0,0,1943,1,0,0,0,0,1945,1,0,0,0,0,1947,1,0,0,0,0,1949,1,0,0,0,0,1951,1,0,0,0,0,1953,1,0,0,0,0,1955,1,0,0,0,0,1957,1,0,0,0,0,1959,1,0,0,0,0,1961,1,0,0,0,0,1963,1,0,0,0,0,1965,1,0,0,0,0,1967,1,0,0,0,0,1969,1,0,0,0,0,1971,1,0,0,0,0,1973,1,0,0,0,0,1975,1,0,0,0,0,1977,1,0,0,0,0,1979,1,0,0,0,0,1981,1,0,0,0,0,1983,1,0,0,0,0,1985,1,0,0,0,0,1987,1,0,0,0,0,1989,1,0,0,0,0,1991,1,0,0,0,0,1993,1,0,0,0,0,1995,1,0,0,0,0,1997,1,0,0,0,0,1999,1,0,0,0,0,2001,1,0,0,0,0,2003,1,0,0,0,0,2005,1,0,0,0,0,2007,1,0,0,0,0,2009,1,0,0,0,0,2011,1,0,0,0,0,2013,1,0,0,0,0,2015,1,0,0,0,0,2017,1,0,0,0,0,2019,1,0,0,0,0,2021,1,0,0,0,0,2023,1,0,0,0,0,2025,1,0,0,0,0,2027,1,0,0,0,0,2029,1,0,0,0,0,2031,1,0,0,0,0,2033,1,0,0,0,0,2035,1,0,0,0,0,2037,1,0,0,0,0,2039,1,0,0,0,0,2041,1,0,0,0,0,2043,1,0,0,0,0,2045,1,0,0,0,0,2047,1,0,0,0,0,2049,1,0,0,0,0,2051,1,0,0,0,0,2053,1,0,0,0,0,2055,1,0,0,0,0,2057,1,0,0,0,0,2059,1,0,0,0,0,2061,1,0,0,0,0,2063,1,0,0,0,0,2065,1,0,0,0,0,2067,1,0,0,0,0,2069,1,0,0,0,0,2071,1,0,0,0,0,2073,1,0,0,0,0,2075,1,0,0,0,0,2077,1,0,0,0,0,2079,1,0,0,0,0,2081,1,0,0,0,0,2083,1,0,0,0,0,2085,1,0,0,0,0,2087,1,0,0,0,0,2089,1,0,0,0,0,2091,1,0,0,0,0,2093,1,0,0,0,0,2095,1,0,0,0,0,2097,1,0,0,0,0,2099,1,0,0,0,0,2101,1,0,0,0,0,2103,1,0,0,0,0,2105,1,0,0,0,0,2107,1,0,0,0,0,2109,1,0,0,0,0,2111,1,0,0,0,0,2113,1,0,0,0,0,2115,1,0,0,0,0,2117,1,0,0,0,0,2119,1,0,0,0,0,2121,1,0,0,0,0,2123,1,0,0,0,0,2125,1,0,0,0,0,2127,1,0,0,0,0,2129,1,0,0,0,0,2131,1,0,0,0,0,2133,1,0,0,0,0,2135,1,0,0,0,0,2137,1,0,0,0,0,2139,1,0,0,0,0,2141,1,0,0,0,0,2143,1,0,0,0,0,2145,1,0,0,0,0,2147,1,0,0,0,0,2149,1,0,0,0,0,2151,1,0,0,0,0,2153,1,0,0,0,0,2155,1,0,0,0,0,2157,1,0,0,0,0,2159,1,0,0,0,0,2161,1,0,0,0,0,2163,1,0,0,0,0,2165,1,0,0,0,0,2167,1,0,0,0,0,2169,1,0,0,0,0,2171,1,0,0,0,0,2173,1,0,0,0,0,2175,1,0,0,0,0,2177,1,0,0,0,0,2179,1,0,0,0,0,2181,1,0,0,0,0,2183,1,0,0,0,0,2185,1,0,0,0,0,2187,1,0,0,0,0,2189,1,0,0,0,0,2191,1,0,0,0,0,2193,1,0,0,0,0,2195,1,0,0,0,0,2197,1,0,0,0,0,2199,1,0,0,0,0,2201,1,0,0,0,0,2203,1,0,0,0,0,2205,1,0,0,0,0,2207,1,0,0,0,0,2209,1,0,0,0,0,2211,1,0,0,0,0,2213,1,0,0,0,0,2215,1,0,0,0,0,2217,1,0,0,0,0,2219,1,0,0,0,0,2221,1,0,0,0,0,2223,1,0,0,0,0,2225,1,0,0,0,0,2227,1,0,0,0,0,2229,1,0,0,0,0,2231,1,0,0,0,0,2233,1,0,0,0,0,2235,1,0,0,0,0,2237,1,0,0,0,0,2239,1,0,0,0,0,2241,1,0,0,0,0,2243,1,0,0,0,0,2245,1,0,0,0,0,2247,1,0,0,0,0,2249,1,0,0,0,0,2251,1,0,0,0,0,2253,1,0,0,0,0,2255,1,0,0,0,0,2257,1,0,0,0,0,2259,1,0,0,0,0,2261,1,0,0,0,0,2263,1,0,0,0,0,2265,1,0,0,0,0,2267,1,0,0,0,0,2269,1,0,0,0,0,2271,1,0,0,0,0,2273,1,0,0,0,0,2275,1,0,0,0,0,2277,1,0,0,0,0,2279,1,0,0,0,0,2281,1,0,0,0,0,2283,1,0,0,0,0,2285,1,0,0,0,0,2287,1,0,0,0,0,2291,1,0,0,0,0,2293,1,0,0,0,0,2295,1,0,0,0,0,2297,1,0,0,0,0,2299,1,0,0,0,0,2301,1,0,0,0,0,2303,1,0,0,0,0,2305,1,0,0,0,0,2307,1,0,0,0,0,2309,1,0,0,0,0,2311,1,0,0,0,0,2313,1,0,0,0,0,2315,1,0,0,0,0,2317,1,0,0,0,0,2319,1,0,0,0,0,2321,1,0,0,0,0,2343,1,0,0,0,1,2346,1,0,0,0,3,2352,1,0,0,0,5,2366,1,0,0,0,7,2415,1,0,0,0,9,2419,1,0,0,0,11,2423,1,0,0,0,13,2427,1,0,0,0,15,2433,1,0,0,0,17,2440,1,0,0,0,19,2448,1,0,0,0,21,2452,1,0,0,0,23,2458,1,0,0,0,25,2461,1,0,0,0,27,2465,1,0,0,0,29,2475,1,0,0,0,31,2482,1,0,0,0,33,2490,1,0,0,0,35,2495,1,0,0,0,37,2503,1,0,0,0,39,2506,1,0,0,0,41,2511,1,0,0,0,43,2519,1,0,0,0,45,2524,1,0,0,0,47,2529,1,0,0,0,49,2536,1,0,0,0,51,2546,1,0,0,0,53,2552,1,0,0,0,55,2560,1,0,0,0,57,2567,1,0,0,0,59,2577,1,0,0,0,61,2588,1,0,0,0,63,2597,1,0,0,0,65,2605,1,0,0,0,67,2612,1,0,0,0,69,2618,1,0,0,0,71,2626,1,0,0,0,73,2639,1,0,0,0,75,2652,1,0,0,0,77,2659,1,0,0,0,79,2668,1,0,0,0,81,2678,1,0,0,0,83,2686,1,0,0,0,85,2694,1,0,0,0,87,2702,1,0,0,0,89,2709,1,0,0,0,91,2714,1,0,0,0,93,2723,1,0,0,0,95,2737,1,0,0,0,97,2749,1,0,0,0,99,2758,1,0,0,0,101,2770,1,0,0,0,103,2775,1,0,0,0,105,2780,1,0,0,0,107,2785,1,0,0,0,109,2792,1,0,0,0,111,2798,1,0,0,0,113,2807,1,0,0,0,115,2816,1,0,0,0,117,2824,1,0,0,0,119,2831,1,0,0,0,121,2838,1,0,0,0,123,2843,1,0,0,0,125,2851,1,0,0,0,127,2857,1,0,0,0,129,2863,1,0,0,0,131,2867,1,0,0,0,133,2873,1,0,0,0,135,2881,1,0,0,0,137,2886,1,0,0,0,139,2895,1,0,0,0,141,2905,1,0,0,0,143,2909,1,0,0,0,145,2915,1,0,0,0,147,2921,1,0,0,0,149,2928,1,0,0,0,151,2942,1,0,0,0,153,2952,1,0,0,0,155,2955,1,0,0,0,157,2962,1,0,0,0,159,2970,1,0,0,0,161,2973,1,0,0,0,163,2979,1,0,0,0,165,2986,1,0,0,0,167,2992,1,0,0,0,169,2998,1,0,0,0,171,3005,1,0,0,0,173,3014,1,0,0,0,175,3019,1,0,0,0,177,3022,1,0,0,0,179,3030,1,0,0,0,181,3035,1,0,0,0,183,3039,1,0,0,0,185,3044,1,0,0,0,187,3049,1,0,0,0,189,3057,1,0,0,0,191,3065,1,0,0,0,193,3071,1,0,0,0,195,3076,1,0,0,0,197,3081,1,0,0,0,199,3087,1,0,0,0,201,3094,1,0,0,0,203,3100,1,0,0,0,205,3105,1,0,0,0,207,3110,1,0,0,0,209,3117,1,0,0,0,211,3122,1,0,0,0,213,3135,1,0,0,0,215,3147,1,0,0,0,217,3177,1,0,0,0,219,3183,1,0,0,0,221,3192,1,0,0,0,223,3201,1,0,0,0,225,3210,1,0,0,0,227,3218,1,0,0,0,229,3222,1,0,0,0,231,3241,1,0,0,0,233,3246,1,0,0,0,235,3253,1,0,0,0,237,3256,1,0,0,0,239,3265,1,0,0,0,241,3272,1,0,0,0,243,3281,1,0,0,0,245,3292,1,0,0,0,247,3295,1,0,0,0,249,3301,1,0,0,0,251,3305,1,0,0,0,253,3311,1,0,0,0,255,3319,1,0,0,0,257,3324,1,0,0,0,259,3334,1,0,0,0,261,3342,1,0,0,0,263,3352,1,0,0,0,265,3358,1,0,0,0,267,3364,1,0,0,0,269,3369,1,0,0,0,271,3375,1,0,0,0,273,3386,1,0,0,0,275,3393,1,0,0,0,277,3401,1,0,0,0,279,3408,1,0,0,0,281,3415,1,0,0,0,283,3423,1,0,0,0,285,3431,1,0,0,0,287,3440,1,0,0,0,289,3449,1,0,0,0,291,3456,1,0,0,0,293,3463,1,0,0,0,295,3470,1,0,0,0,297,3476,1,0,0,0,299,3482,1,0,0,0,301,3489,1,0,0,0,303,3497,1,0,0,0,305,3504,1,0,0,0,307,3508,1,0,0,0,309,3518,1,0,0,0,311,3523,1,0,0,0,313,3530,1,0,0,0,315,3535,1,0,0,0,317,3554,1,0,0,0,319,3562,1,0,0,0,321,3566,1,0,0,0,323,3579,1,0,0,0,325,3588,1,0,0,0,327,3599,1,0,0,0,329,3614,1,0,0,0,331,3634,1,0,0,0,333,3651,1,0,0,0,335,3655,1,0,0,0,337,3663,1,0,0,0,339,3672,1,0,0,0,341,3682,1,0,0,0,343,3696,1,0,0,0,345,3702,1,0,0,0,347,3713,1,0,0,0,349,3718,1,0,0,0,351,3721,1,0,0,0,353,3730,1,0,0,0,355,3738,1,0,0,0,357,3743,1,0,0,0,359,3748,1,0,0,0,361,3754,1,0,0,0,363,3761,1,0,0,0,365,3768,1,0,0,0,367,3777,1,0,0,0,369,3784,1,0,0,0,371,3790,1,0,0,0,373,3794,1,0,0,0,375,3800,1,0,0,0,377,3807,1,0,0,0,379,3812,1,0,0,0,381,3818,1,0,0,0,383,3824,1,0,0,0,385,3829,1,0,0,0,387,3835,1,0,0,0,389,3839,1,0,0,0,391,3848,1,0,0,0,393,3856,1,0,0,0,395,3865,1,0,0,0,397,3875,1,0,0,0,399,3885,1,0,0,0,401,3889,1,0,0,0,403,3894,1,0,0,0,405,3899,1,0,0,0,407,3904,1,0,0,0,409,3909,1,0,0,0,411,3914,1,0,0,0,413,3922,1,0,0,0,415,3929,1,0,0,0,417,3934,1,0,0,0,419,3941,1,0,0,0,421,3951,1,0,0,0,423,3957,1,0,0,0,425,3964,1,0,0,0,427,3971,1,0,0,0,429,3979,1,0,0,0,431,3983,1,0,0,0,433,3991,1,0,0,0,435,3996,1,0,0,0,437,4001,1,0,0,0,439,4011,1,0,0,0,441,4020,1,0,0,0,443,4025,1,0,0,0,445,4030,1,0,0,0,447,4038,1,0,0,0,449,4047,1,0,0,0,451,4056,1,0,0,0,453,4063,1,0,0,0,455,4073,1,0,0,0,457,4082,1,0,0,0,459,4087,1,0,0,0,461,4098,1,0,0,0,463,4103,1,0,0,0,465,4112,1,0,0,0,467,4121,1,0,0,0,469,4126,1,0,0,0,471,4137,1,0,0,0,473,4146,1,0,0,0,475,4151,1,0,0,0,477,4159,1,0,0,0,479,4166,1,0,0,0,481,4177,1,0,0,0,483,4186,1,0,0,0,485,4197,1,0,0,0,487,4208,1,0,0,0,489,4220,1,0,0,0,491,4232,1,0,0,0,493,4246,1,0,0,0,495,4265,1,0,0,0,497,4284,1,0,0,0,499,4301,1,0,0,0,501,4317,1,0,0,0,503,4328,1,0,0,0,505,4342,1,0,0,0,507,4360,1,0,0,0,509,4378,1,0,0,0,511,4392,1,0,0,0,513,4411,1,0,0,0,515,4422,1,0,0,0,517,4435,1,0,0,0,519,4447,1,0,0,0,521,4457,1,0,0,0,523,4469,1,0,0,0,525,4480,1,0,0,0,527,4497,1,0,0,0,529,4517,1,0,0,0,531,4529,1,0,0,0,533,4544,1,0,0,0,535,4558,1,0,0,0,537,4570,1,0,0,0,539,4581,1,0,0,0,541,4593,1,0,0,0,543,4606,1,0,0,0,545,4624,1,0,0,0,547,4654,1,0,0,0,549,4666,1,0,0,0,551,4675,1,0,0,0,553,4693,1,0,0,0,555,4711,1,0,0,0,557,4722,1,0,0,0,559,4732,1,0,0,0,561,4745,1,0,0,0,563,4756,1,0,0,0,565,4767,1,0,0,0,567,4774,1,0,0,0,569,4785,1,0,0,0,571,4790,1,0,0,0,573,4794,1,0,0,0,575,4802,1,0,0,0,577,4809,1,0,0,0,579,4817,1,0,0,0,581,4823,1,0,0,0,583,4833,1,0,0,0,585,4844,1,0,0,0,587,4856,1,0,0,0,589,4869,1,0,0,0,591,4873,1,0,0,0,593,4884,1,0,0,0,595,4889,1,0,0,0,597,4893,1,0,0,0,599,4897,1,0,0,0,601,4903,1,0,0,0,603,4913,1,0,0,0,605,4926,1,0,0,0,607,4931,1,0,0,0,609,4942,1,0,0,0,611,4946,1,0,0,0,613,4953,1,0,0,0,615,4964,1,0,0,0,617,4976,1,0,0,0,619,4980,1,0,0,0,621,4988,1,0,0,0,623,4997,1,0,0,0,625,5006,1,0,0,0,627,5019,1,0,0,0,629,5032,1,0,0,0,631,5050,1,0,0,0,633,5060,1,0,0,0,635,5068,1,0,0,0,637,5076,1,0,0,0,639,5085,1,0,0,0,641,5094,1,0,0,0,643,5102,1,0,0,0,645,5117,1,0,0,0,647,5121,1,0,0,0,649,5130,1,0,0,0,651,5137,1,0,0,0,653,5147,1,0,0,0,655,5155,1,0,0,0,657,5160,1,0,0,0,659,5169,1,0,0,0,661,5178,1,0,0,0,663,5192,1,0,0,0,665,5200,1,0,0,0,667,5207,1,0,0,0,669,5213,1,0,0,0,671,5223,1,0,0,0,673,5233,1,0,0,0,675,5237,1,0,0,0,677,5240,1,0,0,0,679,5248,1,0,0,0,681,5259,1,0,0,0,683,5275,1,0,0,0,685,5290,1,0,0,0,687,5305,1,0,0,0,689,5311,1,0,0,0,691,5318,1,0,0,0,693,5322,1,0,0,0,695,5328,1,0,0,0,697,5333,1,0,0,0,699,5341,1,0,0,0,701,5347,1,0,0,0,703,5353,1,0,0,0,705,5362,1,0,0,0,707,5368,1,0,0,0,709,5376,1,0,0,0,711,5384,1,0,0,0,713,5393,1,0,0,0,715,5407,1,0,0,0,717,5414,1,0,0,0,719,5427,1,0,0,0,721,5434,1,0,0,0,723,5440,1,0,0,0,725,5451,1,0,0,0,727,5460,1,0,0,0,729,5465,1,0,0,0,731,5473,1,0,0,0,733,5487,1,0,0,0,735,5499,1,0,0,0,737,5507,1,0,0,0,739,5514,1,0,0,0,741,5522,1,0,0,0,743,5533,1,0,0,0,745,5544,1,0,0,0,747,5556,1,0,0,0,749,5567,1,0,0,0,751,5575,1,0,0,0,753,5586,1,0,0,0,755,5597,1,0,0,0,757,5616,1,0,0,0,759,5634,1,0,0,0,761,5650,1,0,0,0,763,5659,1,0,0,0,765,5667,1,0,0,0,767,5680,1,0,0,0,769,5685,1,0,0,0,771,5689,1,0,0,0,773,5695,1,0,0,0,775,5707,1,0,0,0,777,5712,1,0,0,0,779,5721,1,0,0,0,781,5732,1,0,0,0,783,5745,1,0,0,0,785,5753,1,0,0,0,787,5769,1,0,0,0,789,5782,1,0,0,0,791,5792,1,0,0,0,793,5800,1,0,0,0,795,5808,1,0,0,0,797,5813,1,0,0,0,799,5816,1,0,0,0,801,5825,1,0,0,0,803,5835,1,0,0,0,805,5843,1,0,0,0,807,5850,1,0,0,0,809,5860,1,0,0,0,811,5871,1,0,0,0,813,5889,1,0,0,0,815,5893,1,0,0,0,817,5898,1,0,0,0,819,5905,1,0,0,0,821,5913,1,0,0,0,823,5919,1,0,0,0,825,5926,1,0,0,0,827,5933,1,0,0,0,829,5938,1,0,0,0,831,5944,1,0,0,0,833,5951,1,0,0,0,835,5957,1,0,0,0,837,5966,1,0,0,0,839,5976,1,0,0,0,841,5983,1,0,0,0,843,5990,1,0,0,0,845,5999,1,0,0,0,847,6011,1,0,0,0,849,6033,1,0,0,0,851,6038,1,0,0,0,853,6045,1,0,0,0,855,6052,1,0,0,0,857,6068,1,0,0,0,859,6075,1,0,0,0,861,6081,1,0,0,0,863,6087,1,0,0,0,865,6093,1,0,0,0,867,6103,1,0,0,0,869,6111,1,0,0,0,871,6117,1,0,0,0,873,6122,1,0,0,0,875,6131,1,0,0,0,877,6139,1,0,0,0,879,6146,1,0,0,0,881,6153,1,0,0,0,883,6171,1,0,0,0,885,6179,1,0,0,0,887,6184,1,0,0,0,889,6189,1,0,0,0,891,6197,1,0,0,0,893,6202,1,0,0,0,895,6208,1,0,0,0,897,6219,1,0,0,0,899,6237,1,0,0,0,901,6244,1,0,0,0,903,6254,1,0,0,0,905,6262,1,0,0,0,907,6275,1,0,0,0,909,6283,1,0,0,0,911,6297,1,0,0,0,913,6305,1,0,0,0,915,6314,1,0,0,0,917,6322,1,0,0,0,919,6332,1,0,0,0,921,6340,1,0,0,0,923,6343,1,0,0,0,925,6353,1,0,0,0,927,6357,1,0,0,0,929,6367,1,0,0,0,931,6374,1,0,0,0,933,6379,1,0,0,0,935,6394,1,0,0,0,937,6403,1,0,0,0,939,6408,1,0,0,0,941,6415,1,0,0,0,943,6420,1,0,0,0,945,6426,1,0,0,0,947,6431,1,0,0,0,949,6437,1,0,0,0,951,6445,1,0,0,0,953,6450,1,0,0,0,955,6457,1,0,0,0,957,6478,1,0,0,0,959,6499,1,0,0,0,961,6512,1,0,0,0,963,6536,1,0,0,0,965,6548,1,0,0,0,967,6564,1,0,0,0,969,6579,1,0,0,0,971,6595,1,0,0,0,973,6607,1,0,0,0,975,6626,1,0,0,0,977,6637,1,0,0,0,979,6651,1,0,0,0,981,6669,1,0,0,0,983,6685,1,0,0,0,985,6703,1,0,0,0,987,6718,1,0,0,0,989,6737,1,0,0,0,991,6752,1,0,0,0,993,6771,1,0,0,0,995,6783,1,0,0,0,997,6808,1,0,0,0,999,6829,1,0,0,0,1001,6838,1,0,0,0,1003,6847,1,0,0,0,1005,6868,1,0,0,0,1007,6889,1,0,0,0,1009,6896,1,0,0,0,1011,6903,1,0,0,0,1013,6909,1,0,0,0,1015,6922,1,0,0,0,1017,6926,1,0,0,0,1019,6934,1,0,0,0,1021,6943,1,0,0,0,1023,6948,1,0,0,0,1025,6955,1,0,0,0,1027,6961,1,0,0,0,1029,6967,1,0,0,0,1031,6979,1,0,0,0,1033,6984,1,0,0,0,1035,6990,1,0,0,0,1037,6996,1,0,0,0,1039,7002,1,0,0,0,1041,7007,1,0,0,0,1043,7010,1,0,0,0,1045,7018,1,0,0,0,1047,7025,1,0,0,0,1049,7033,1,0,0,0,1051,7044,1,0,0,0,1053,7055,1,0,0,0,1055,7062,1,0,0,0,1057,7072,1,0,0,0,1059,7077,1,0,0,0,1061,7082,1,0,0,0,1063,7090,1,0,0,0,1065,7097,1,0,0,0,1067,7100,1,0,0,0,1069,7103,1,0,0,0,1071,7116,1,0,0,0,1073,7120,1,0,0,0,1075,7127,1,0,0,0,1077,7132,1,0,0,0,1079,7137,1,0,0,0,1081,7153,1,0,0,0,1083,7161,1,0,0,0,1085,7167,1,0,0,0,1087,7177,1,0,0,0,1089,7182,1,0,0,0,1091,7198,1,0,0,0,1093,7221,1,0,0,0,1095,7228,1,0,0,0,1097,7236,1,0,0,0,1099,7249,1,0,0,0,1101,7260,1,0,0,0,1103,7269,1,0,0,0,1105,7288,1,0,0,0,1107,7294,1,0,0,0,1109,7301,1,0,0,0,1111,7312,1,0,0,0,1113,7320,1,0,0,0,1115,7325,1,0,0,0,1117,7334,1,0,0,0,1119,7344,1,0,0,0,1121,7352,1,0,0,0,1123,7361,1,0,0,0,1125,7366,1,0,0,0,1127,7378,1,0,0,0,1129,7386,1,0,0,0,1131,7395,1,0,0,0,1133,7401,1,0,0,0,1135,7407,1,0,0,0,1137,7413,1,0,0,0,1139,7421,1,0,0,0,1141,7429,1,0,0,0,1143,7439,1,0,0,0,1145,7456,1,0,0,0,1147,7466,1,0,0,0,1149,7472,1,0,0,0,1151,7487,1,0,0,0,1153,7501,1,0,0,0,1155,7510,1,0,0,0,1157,7517,1,0,0,0,1159,7528,1,0,0,0,1161,7535,1,0,0,0,1163,7551,1,0,0,0,1165,7570,1,0,0,0,1167,7590,1,0,0,0,1169,7613,1,0,0,0,1171,7634,1,0,0,0,1173,7658,1,0,0,0,1175,7686,1,0,0,0,1177,7698,1,0,0,0,1179,7704,1,0,0,0,1181,7712,1,0,0,0,1183,7719,1,0,0,0,1185,7737,1,0,0,0,1187,7747,1,0,0,0,1189,7755,1,0,0,0,1191,7761,1,0,0,0,1193,7766,1,0,0,0,1195,7775,1,0,0,0,1197,7782,1,0,0,0,1199,7789,1,0,0,0,1201,7793,1,0,0,0,1203,7798,1,0,0,0,1205,7809,1,0,0,0,1207,7815,1,0,0,0,1209,7825,1,0,0,0,1211,7834,1,0,0,0,1213,7843,1,0,0,0,1215,7852,1,0,0,0,1217,7859,1,0,0,0,1219,7867,1,0,0,0,1221,7873,1,0,0,0,1223,7880,1,0,0,0,1225,7887,1,0,0,0,1227,7894,1,0,0,0,1229,7900,1,0,0,0,1231,7905,1,0,0,0,1233,7914,1,0,0,0,1235,7921,1,0,0,0,1237,7926,1,0,0,0,1239,7933,1,0,0,0,1241,7940,1,0,0,0,1243,7947,1,0,0,0,1245,7963,1,0,0,0,1247,7982,1,0,0,0,1249,7999,1,0,0,0,1251,8017,1,0,0,0,1253,8027,1,0,0,0,1255,8040,1,0,0,0,1257,8051,1,0,0,0,1259,8057,1,0,0,0,1261,8064,1,0,0,0,1263,8082,1,0,0,0,1265,8099,1,0,0,0,1267,8118,1,0,0,0,1269,8125,1,0,0,0,1271,8130,1,0,0,0,1273,8138,1,0,0,0,1275,8145,1,0,0,0,1277,8152,1,0,0,0,1279,8168,1,0,0,0,1281,8176,1,0,0,0,1283,8189,1,0,0,0,1285,8203,1,0,0,0,1287,8211,1,0,0,0,1289,8217,1,0,0,0,1291,8226,1,0,0,0,1293,8237,1,0,0,0,1295,8248,1,0,0,0,1297,8259,1,0,0,0,1299,8269,1,0,0,0,1301,8279,1,0,0,0,1303,8284,1,0,0,0,1305,8296,1,0,0,0,1307,8308,1,0,0,0,1309,8322,1,0,0,0,1311,8331,1,0,0,0,1313,8340,1,0,0,0,1315,8350,1,0,0,0,1317,8360,1,0,0,0,1319,8369,1,0,0,0,1321,8386,1,0,0,0,1323,8396,1,0,0,0,1325,8404,1,0,0,0,1327,8410,1,0,0,0,1329,8418,1,0,0,0,1331,8423,1,0,0,0,1333,8431,1,0,0,0,1335,8446,1,0,0,0,1337,8457,1,0,0,0,1339,8463,1,0,0,0,1341,8473,1,0,0,0,1343,8478,1,0,0,0,1345,8486,1,0,0,0,1347,8494,1,0,0,0,1349,8499,1,0,0,0,1351,8508,1,0,0,0,1353,8515,1,0,0,0,1355,8523,1,0,0,0,1357,8528,1,0,0,0,1359,8536,1,0,0,0,1361,8541,1,0,0,0,1363,8544,1,0,0,0,1365,8548,1,0,0,0,1367,8552,1,0,0,0,1369,8556,1,0,0,0,1371,8560,1,0,0,0,1373,8564,1,0,0,0,1375,8568,1,0,0,0,1377,8577,1,0,0,0,1379,8585,1,0,0,0,1381,8591,1,0,0,0,1383,8595,1,0,0,0,1385,8600,1,0,0,0,1387,8607,1,0,0,0,1389,8612,1,0,0,0,1391,8619,1,0,0,0,1393,8631,1,0,0,0,1395,8637,1,0,0,0,1397,8664,1,0,0,0,1399,8683,1,0,0,0,1401,8695,1,0,0,0,1403,8723,1,0,0,0,1405,8736,1,0,0,0,1407,8749,1,0,0,0,1409,8773,1,0,0,0,1411,8785,1,0,0,0,1413,8802,1,0,0,0,1415,8823,1,0,0,0,1417,8831,1,0,0,0,1419,8836,1,0,0,0,1421,8851,1,0,0,0,1423,8867,1,0,0,0,1425,8881,1,0,0,0,1427,8903,1,0,0,0,1429,8916,1,0,0,0,1431,8929,1,0,0,0,1433,8950,1,0,0,0,1435,8974,1,0,0,0,1437,8998,1,0,0,0,1439,9021,1,0,0,0,1441,9028,1,0,0,0,1443,9035,1,0,0,0,1445,9051,1,0,0,0,1447,9075,1,0,0,0,1449,9102,1,0,0,0,1451,9113,1,0,0,0,1453,9121,1,0,0,0,1455,9128,1,0,0,0,1457,9148,1,0,0,0,1459,9172,1,0,0,0,1461,9193,1,0,0,0,1463,9213,1,0,0,0,1465,9224,1,0,0,0,1467,9232,1,0,0,0,1469,9235,1,0,0,0,1471,9261,1,0,0,0,1473,9290,1,0,0,0,1475,9302,1,0,0,0,1477,9315,1,0,0,0,1479,9324,1,0,0,0,1481,9330,1,0,0,0,1483,9353,1,0,0,0,1485,9360,1,0,0,0,1487,9383,1,0,0,0,1489,9403,1,0,0,0,1491,9420,1,0,0,0,1493,9429,1,0,0,0,1495,9435,1,0,0,0,1497,9440,1,0,0,0,1499,9447,1,0,0,0,1501,9454,1,0,0,0,1503,9461,1,0,0,0,1505,9468,1,0,0,0,1507,9474,1,0,0,0,1509,9480,1,0,0,0,1511,9486,1,0,0,0,1513,9492,1,0,0,0,1515,9497,1,0,0,0,1517,9505,1,0,0,0,1519,9511,1,0,0,0,1521,9519,1,0,0,0,1523,9526,1,0,0,0,1525,9530,1,0,0,0,1527,9538,1,0,0,0,1529,9544,1,0,0,0,1531,9551,1,0,0,0,1533,9555,1,0,0,0,1535,9563,1,0,0,0,1537,9569,1,0,0,0,1539,9575,1,0,0,0,1541,9582,1,0,0,0,1543,9589,1,0,0,0,1545,9596,1,0,0,0,1547,9603,1,0,0,0,1549,9609,1,0,0,0,1551,9618,1,0,0,0,1553,9623,1,0,0,0,1555,9628,1,0,0,0,1557,9635,1,0,0,0,1559,9640,1,0,0,0,1561,9645,1,0,0,0,1563,9651,1,0,0,0,1565,9659,1,0,0,0,1567,9665,1,0,0,0,1569,9670,1,0,0,0,1571,9678,1,0,0,0,1573,9686,1,0,0,0,1575,9694,1,0,0,0,1577,9704,1,0,0,0,1579,9708,1,0,0,0,1581,9718,1,0,0,0,1583,9725,1,0,0,0,1585,9732,1,0,0,0,1587,9743,1,0,0,0,1589,9750,1,0,0,0,1591,9754,1,0,0,0,1593,9765,1,0,0,0,1595,9784,1,0,0,0,1597,9791,1,0,0,0,1599,9802,1,0,0,0,1601,9812,1,0,0,0,1603,9824,1,0,0,0,1605,9837,1,0,0,0,1607,9856,1,0,0,0,1609,9871,1,0,0,0,1611,9880,1,0,0,0,1613,9891,1,0,0,0,1615,9907,1,0,0,0,1617,9918,1,0,0,0,1619,9931,1,0,0,0,1621,9937,1,0,0,0,1623,9945,1,0,0,0,1625,9949,1,0,0,0,1627,9954,1,0,0,0,1629,9962,1,0,0,0,1631,9970,1,0,0,0,1633,9982,1,0,0,0,1635,9994,1,0,0,0,1637,9999,1,0,0,0,1639,10008,1,0,0,0,1641,10013,1,0,0,0,1643,10020,1,0,0,0,1645,10026,1,0,0,0,1647,10032,1,0,0,0,1649,10051,1,0,0,0,1651,10069,1,0,0,0,1653,10088,1,0,0,0,1655,10104,1,0,0,0,1657,10122,1,0,0,0,1659,10127,1,0,0,0,1661,10133,1,0,0,0,1663,10143,1,0,0,0,1665,10147,1,0,0,0,1667,10157,1,0,0,0,1669,10168,1,0,0,0,1671,10175,1,0,0,0,1673,10188,1,0,0,0,1675,10193,1,0,0,0,1677,10201,1,0,0,0,1679,10210,1,0,0,0,1681,10227,1,0,0,0,1683,10235,1,0,0,0,1685,10247,1,0,0,0,1687,10260,1,0,0,0,1689,10270,1,0,0,0,1691,10279,1,0,0,0,1693,10286,1,0,0,0,1695,10296,1,0,0,0,1697,10310,1,0,0,0,1699,10315,1,0,0,0,1701,10326,1,0,0,0,1703,10330,1,0,0,0,1705,10334,1,0,0,0,1707,10340,1,0,0,0,1709,10367,1,0,0,0,1711,10393,1,0,0,0,1713,10414,1,0,0,0,1715,10428,1,0,0,0,1717,10436,1,0,0,0,1719,10445,1,0,0,0,1721,10457,1,0,0,0,1723,10465,1,0,0,0,1725,10476,1,0,0,0,1727,10486,1,0,0,0,1729,10496,1,0,0,0,1731,10503,1,0,0,0,1733,10511,1,0,0,0,1735,10523,1,0,0,0,1737,10535,1,0,0,0,1739,10545,1,0,0,0,1741,10554,1,0,0,0,1743,10558,1,0,0,0,1745,10565,1,0,0,0,1747,10573,1,0,0,0,1749,10582,1,0,0,0,1751,10599,1,0,0,0,1753,10608,1,0,0,0,1755,10615,1,0,0,0,1757,10619,1,0,0,0,1759,10630,1,0,0,0,1761,10643,1,0,0,0,1763,10656,1,0,0,0,1765,10662,1,0,0,0,1767,10674,1,0,0,0,1769,10680,1,0,0,0,1771,10687,1,0,0,0,1773,10698,1,0,0,0,1775,10710,1,0,0,0,1777,10720,1,0,0,0,1779,10734,1,0,0,0,1781,10751,1,0,0,0,1783,10767,1,0,0,0,1785,10794,1,0,0,0,1787,10820,1,0,0,0,1789,10837,1,0,0,0,1791,10853,1,0,0,0,1793,10863,1,0,0,0,1795,10876,1,0,0,0,1797,10889,1,0,0,0,1799,10901,1,0,0,0,1801,10912,1,0,0,0,1803,10921,1,0,0,0,1805,10929,1,0,0,0,1807,10938,1,0,0,0,1809,10950,1,0,0,0,1811,10964,1,0,0,0,1813,10968,1,0,0,0,1815,10975,1,0,0,0,1817,10986,1,0,0,0,1819,10997,1,0,0,0,1821,11007,1,0,0,0,1823,11017,1,0,0,0,1825,11023,1,0,0,0,1827,11037,1,0,0,0,1829,11048,1,0,0,0,1831,11057,1,0,0,0,1833,11065,1,0,0,0,1835,11072,1,0,0,0,1837,11081,1,0,0,0,1839,11094,1,0,0,0,1841,11102,1,0,0,0,1843,11117,1,0,0,0,1845,11132,1,0,0,0,1847,11140,1,0,0,0,1849,11153,1,0,0,0,1851,11168,1,0,0,0,1853,11174,1,0,0,0,1855,11180,1,0,0,0,1857,11187,1,0,0,0,1859,11200,1,0,0,0,1861,11212,1,0,0,0,1863,11231,1,0,0,0,1865,11249,1,0,0,0,1867,11252,1,0,0,0,1869,11262,1,0,0,0,1871,11269,1,0,0,0,1873,11273,1,0,0,0,1875,11279,1,0,0,0,1877,11284,1,0,0,0,1879,11290,1,0,0,0,1881,11295,1,0,0,0,1883,11301,1,0,0,0,1885,11310,1,0,0,0,1887,11319,1,0,0,0,1889,11328,1,0,0,0,1891,11344,1,0,0,0,1893,11356,1,0,0,0,1895,11368,1,0,0,0,1897,11377,1,0,0,0,1899,11391,1,0,0,0,1901,11403,1,0,0,0,1903,11414,1,0,0,0,1905,11424,1,0,0,0,1907,11428,1,0,0,0,1909,11442,1,0,0,0,1911,11455,1,0,0,0,1913,11465,1,0,0,0,1915,11480,1,0,0,0,1917,11494,1,0,0,0,1919,11508,1,0,0,0,1921,11521,1,0,0,0,1923,11545,1,0,0,0,1925,11568,1,0,0,0,1927,11587,1,0,0,0,1929,11605,1,0,0,0,1931,11626,1,0,0,0,1933,11646,1,0,0,0,1935,11657,1,0,0,0,1937,11664,1,0,0,0,1939,11678,1,0,0,0,1941,11695,1,0,0,0,1943,11705,1,0,0,0,1945,11709,1,0,0,0,1947,11722,1,0,0,0,1949,11726,1,0,0,0,1951,11735,1,0,0,0,1953,11746,1,0,0,0,1955,11758,1,0,0,0,1957,11761,1,0,0,0,1959,11775,1,0,0,0,1961,11788,1,0,0,0,1963,11795,1,0,0,0,1965,11808,1,0,0,0,1967,11820,1,0,0,0,1969,11836,1,0,0,0,1971,11851,1,0,0,0,1973,11855,1,0,0,0,1975,11861,1,0,0,0,1977,11867,1,0,0,0,1979,11875,1,0,0,0,1981,11880,1,0,0,0,1983,11887,1,0,0,0,1985,11900,1,0,0,0,1987,11913,1,0,0,0,1989,11921,1,0,0,0,1991,11927,1,0,0,0,1993,11937,1,0,0,0,1995,11942,1,0,0,0,1997,11948,1,0,0,0,1999,11960,1,0,0,0,2001,11987,1,0,0,0,2003,12e3,1,0,0,0,2005,12004,1,0,0,0,2007,12009,1,0,0,0,2009,12014,1,0,0,0,2011,12026,1,0,0,0,2013,12031,1,0,0,0,2015,12035,1,0,0,0,2017,12041,1,0,0,0,2019,12049,1,0,0,0,2021,12077,1,0,0,0,2023,12082,1,0,0,0,2025,12087,1,0,0,0,2027,12098,1,0,0,0,2029,12105,1,0,0,0,2031,12117,1,0,0,0,2033,12125,1,0,0,0,2035,12137,1,0,0,0,2037,12147,1,0,0,0,2039,12156,1,0,0,0,2041,12165,1,0,0,0,2043,12175,1,0,0,0,2045,12187,1,0,0,0,2047,12199,1,0,0,0,2049,12210,1,0,0,0,2051,12224,1,0,0,0,2053,12237,1,0,0,0,2055,12249,1,0,0,0,2057,12261,1,0,0,0,2059,12273,1,0,0,0,2061,12285,1,0,0,0,2063,12295,1,0,0,0,2065,12311,1,0,0,0,2067,12331,1,0,0,0,2069,12350,1,0,0,0,2071,12369,1,0,0,0,2073,12399,1,0,0,0,2075,12428,1,0,0,0,2077,12448,1,0,0,0,2079,12467,1,0,0,0,2081,12480,1,0,0,0,2083,12496,1,0,0,0,2085,12512,1,0,0,0,2087,12527,1,0,0,0,2089,12544,1,0,0,0,2091,12560,1,0,0,0,2093,12574,1,0,0,0,2095,12586,1,0,0,0,2097,12597,1,0,0,0,2099,12609,1,0,0,0,2101,12625,1,0,0,0,2103,12640,1,0,0,0,2105,12662,1,0,0,0,2107,12683,1,0,0,0,2109,12700,1,0,0,0,2111,12719,1,0,0,0,2113,12739,1,0,0,0,2115,12752,1,0,0,0,2117,12764,1,0,0,0,2119,12781,1,0,0,0,2121,12797,1,0,0,0,2123,12807,1,0,0,0,2125,12823,1,0,0,0,2127,12838,1,0,0,0,2129,12857,1,0,0,0,2131,12875,1,0,0,0,2133,12883,1,0,0,0,2135,12897,1,0,0,0,2137,12914,1,0,0,0,2139,12925,1,0,0,0,2141,12934,1,0,0,0,2143,12944,1,0,0,0,2145,12949,1,0,0,0,2147,12954,1,0,0,0,2149,12962,1,0,0,0,2151,12978,1,0,0,0,2153,12986,1,0,0,0,2155,12998,1,0,0,0,2157,13002,1,0,0,0,2159,13011,1,0,0,0,2161,13024,1,0,0,0,2163,13038,1,0,0,0,2165,13050,1,0,0,0,2167,13062,1,0,0,0,2169,13070,1,0,0,0,2171,13080,1,0,0,0,2173,13088,1,0,0,0,2175,13099,1,0,0,0,2177,13119,1,0,0,0,2179,13125,1,0,0,0,2181,13136,1,0,0,0,2183,13156,1,0,0,0,2185,13162,1,0,0,0,2187,13177,1,0,0,0,2189,13187,1,0,0,0,2191,13193,1,0,0,0,2193,13198,1,0,0,0,2195,13209,1,0,0,0,2197,13236,1,0,0,0,2199,13244,1,0,0,0,2201,13278,1,0,0,0,2203,13286,1,0,0,0,2205,13297,1,0,0,0,2207,13311,1,0,0,0,2209,13318,1,0,0,0,2211,13327,1,0,0,0,2213,13329,1,0,0,0,2215,13331,1,0,0,0,2217,13334,1,0,0,0,2219,13337,1,0,0,0,2221,13340,1,0,0,0,2223,13343,1,0,0,0,2225,13346,1,0,0,0,2227,13349,1,0,0,0,2229,13352,1,0,0,0,2231,13355,1,0,0,0,2233,13358,1,0,0,0,2235,13360,1,0,0,0,2237,13362,1,0,0,0,2239,13364,1,0,0,0,2241,13366,1,0,0,0,2243,13368,1,0,0,0,2245,13372,1,0,0,0,2247,13376,1,0,0,0,2249,13378,1,0,0,0,2251,13380,1,0,0,0,2253,13382,1,0,0,0,2255,13384,1,0,0,0,2257,13386,1,0,0,0,2259,13388,1,0,0,0,2261,13390,1,0,0,0,2263,13392,1,0,0,0,2265,13394,1,0,0,0,2267,13396,1,0,0,0,2269,13398,1,0,0,0,2271,13400,1,0,0,0,2273,13402,1,0,0,0,2275,13404,1,0,0,0,2277,13406,1,0,0,0,2279,13408,1,0,0,0,2281,13410,1,0,0,0,2283,13412,1,0,0,0,2285,13414,1,0,0,0,2287,13416,1,0,0,0,2289,13421,1,0,0,0,2291,13423,1,0,0,0,2293,13428,1,0,0,0,2295,13434,1,0,0,0,2297,13440,1,0,0,0,2299,13443,1,0,0,0,2301,13466,1,0,0,0,2303,13509,1,0,0,0,2305,13511,1,0,0,0,2307,13514,1,0,0,0,2309,13516,1,0,0,0,2311,13519,1,0,0,0,2313,13522,1,0,0,0,2315,13524,1,0,0,0,2317,13526,1,0,0,0,2319,13529,1,0,0,0,2321,13538,1,0,0,0,2323,13589,1,0,0,0,2325,13591,1,0,0,0,2327,13603,1,0,0,0,2329,13617,1,0,0,0,2331,13630,1,0,0,0,2333,13643,1,0,0,0,2335,13654,1,0,0,0,2337,13656,1,0,0,0,2339,13658,1,0,0,0,2341,13697,1,0,0,0,2343,13699,1,0,0,0,2345,2347,7,0,0,0,2346,2345,1,0,0,0,2347,2348,1,0,0,0,2348,2346,1,0,0,0,2348,2349,1,0,0,0,2349,2350,1,0,0,0,2350,2351,6,0,0,0,2351,2,1,0,0,0,2352,2353,5,47,0,0,2353,2354,5,42,0,0,2354,2355,5,33,0,0,2355,2357,1,0,0,0,2356,2358,9,0,0,0,2357,2356,1,0,0,0,2358,2359,1,0,0,0,2359,2360,1,0,0,0,2359,2357,1,0,0,0,2360,2361,1,0,0,0,2361,2362,5,42,0,0,2362,2363,5,47,0,0,2363,2364,1,0,0,0,2364,2365,6,1,1,0,2365,4,1,0,0,0,2366,2367,5,47,0,0,2367,2368,5,42,0,0,2368,2372,1,0,0,0,2369,2371,9,0,0,0,2370,2369,1,0,0,0,2371,2374,1,0,0,0,2372,2373,1,0,0,0,2372,2370,1,0,0,0,2373,2375,1,0,0,0,2374,2372,1,0,0,0,2375,2376,5,42,0,0,2376,2377,5,47,0,0,2377,2378,1,0,0,0,2378,2379,6,2,1,0,2379,6,1,0,0,0,2380,2381,5,45,0,0,2381,2382,5,45,0,0,2382,2386,1,0,0,0,2383,2385,7,1,0,0,2384,2383,1,0,0,0,2385,2388,1,0,0,0,2386,2384,1,0,0,0,2386,2387,1,0,0,0,2387,2391,1,0,0,0,2388,2386,1,0,0,0,2389,2391,5,35,0,0,2390,2380,1,0,0,0,2390,2389,1,0,0,0,2391,2395,1,0,0,0,2392,2394,8,2,0,0,2393,2392,1,0,0,0,2394,2397,1,0,0,0,2395,2393,1,0,0,0,2395,2396,1,0,0,0,2396,2403,1,0,0,0,2397,2395,1,0,0,0,2398,2400,5,13,0,0,2399,2398,1,0,0,0,2399,2400,1,0,0,0,2400,2401,1,0,0,0,2401,2404,5,10,0,0,2402,2404,5,0,0,1,2403,2399,1,0,0,0,2403,2402,1,0,0,0,2404,2416,1,0,0,0,2405,2406,5,45,0,0,2406,2407,5,45,0,0,2407,2413,1,0,0,0,2408,2410,5,13,0,0,2409,2408,1,0,0,0,2409,2410,1,0,0,0,2410,2411,1,0,0,0,2411,2414,5,10,0,0,2412,2414,5,0,0,1,2413,2409,1,0,0,0,2413,2412,1,0,0,0,2414,2416,1,0,0,0,2415,2390,1,0,0,0,2415,2405,1,0,0,0,2416,2417,1,0,0,0,2417,2418,6,3,1,0,2418,8,1,0,0,0,2419,2420,7,3,0,0,2420,2421,7,4,0,0,2421,2422,7,4,0,0,2422,10,1,0,0,0,2423,2424,7,3,0,0,2424,2425,7,5,0,0,2425,2426,7,5,0,0,2426,12,1,0,0,0,2427,2428,7,3,0,0,2428,2429,7,5,0,0,2429,2430,7,6,0,0,2430,2431,7,7,0,0,2431,2432,7,8,0,0,2432,14,1,0,0,0,2433,2434,7,3,0,0,2434,2435,7,5,0,0,2435,2436,7,9,0,0,2436,2437,7,3,0,0,2437,2438,7,10,0,0,2438,2439,7,11,0,0,2439,16,1,0,0,0,2440,2441,7,3,0,0,2441,2442,7,12,0,0,2442,2443,7,3,0,0,2443,2444,7,5,0,0,2444,2445,7,10,0,0,2445,2446,7,13,0,0,2446,2447,7,7,0,0,2447,18,1,0,0,0,2448,2449,7,3,0,0,2449,2450,7,12,0,0,2450,2451,7,4,0,0,2451,20,1,0,0,0,2452,2453,7,3,0,0,2453,2454,7,8,0,0,2454,2455,7,8,0,0,2455,2456,7,3,0,0,2456,2457,7,10,0,0,2457,22,1,0,0,0,2458,2459,7,3,0,0,2459,2460,7,11,0,0,2460,24,1,0,0,0,2461,2462,7,3,0,0,2462,2463,7,11,0,0,2463,2464,7,14,0,0,2464,26,1,0,0,0,2465,2466,7,3,0,0,2466,2467,7,6,0,0,2467,2468,7,6,0,0,2468,2469,7,8,0,0,2469,2470,7,15,0,0,2470,2471,7,16,0,0,2471,2472,7,17,0,0,2472,2473,7,6,0,0,2473,2474,7,7,0,0,2474,28,1,0,0,0,2475,2476,7,16,0,0,2476,2477,7,7,0,0,2477,2478,7,18,0,0,2478,2479,7,19,0,0,2479,2480,7,8,0,0,2480,2481,7,7,0,0,2481,30,1,0,0,0,2482,2483,7,16,0,0,2483,2484,7,7,0,0,2484,2485,7,6,0,0,2485,2486,7,9,0,0,2486,2487,7,7,0,0,2487,2488,7,7,0,0,2488,2489,7,12,0,0,2489,32,1,0,0,0,2490,2491,7,16,0,0,2491,2492,7,19,0,0,2492,2493,7,6,0,0,2493,2494,7,20,0,0,2494,34,1,0,0,0,2495,2496,7,16,0,0,2496,2497,7,17,0,0,2497,2498,7,14,0,0,2498,2499,7,21,0,0,2499,2500,7,7,0,0,2500,2501,7,6,0,0,2501,2502,7,11,0,0,2502,36,1,0,0,0,2503,2504,7,16,0,0,2504,2505,7,10,0,0,2505,38,1,0,0,0,2506,2507,7,14,0,0,2507,2508,7,3,0,0,2508,2509,7,5,0,0,2509,2510,7,5,0,0,2510,40,1,0,0,0,2511,2512,7,14,0,0,2512,2513,7,3,0,0,2513,2514,7,11,0,0,2514,2515,7,14,0,0,2515,2516,7,3,0,0,2516,2517,7,4,0,0,2517,2518,7,7,0,0,2518,42,1,0,0,0,2519,2520,7,14,0,0,2520,2521,7,3,0,0,2521,2522,7,11,0,0,2522,2523,7,7,0,0,2523,44,1,0,0,0,2524,2525,7,14,0,0,2525,2526,7,3,0,0,2526,2527,7,11,0,0,2527,2528,7,6,0,0,2528,46,1,0,0,0,2529,2530,7,14,0,0,2530,2531,7,20,0,0,2531,2532,7,3,0,0,2532,2533,7,12,0,0,2533,2534,7,22,0,0,2534,2535,7,7,0,0,2535,48,1,0,0,0,2536,2537,7,14,0,0,2537,2538,7,20,0,0,2538,2539,7,3,0,0,2539,2540,7,8,0,0,2540,2541,7,3,0,0,2541,2542,7,14,0,0,2542,2543,7,6,0,0,2543,2544,7,7,0,0,2544,2545,7,8,0,0,2545,50,1,0,0,0,2546,2547,7,14,0,0,2547,2548,7,20,0,0,2548,2549,7,7,0,0,2549,2550,7,14,0,0,2550,2551,7,21,0,0,2551,52,1,0,0,0,2552,2553,7,14,0,0,2553,2554,7,19,0,0,2554,2555,7,5,0,0,2555,2556,7,5,0,0,2556,2557,7,3,0,0,2557,2558,7,6,0,0,2558,2559,7,7,0,0,2559,54,1,0,0,0,2560,2561,7,14,0,0,2561,2562,7,19,0,0,2562,2563,7,5,0,0,2563,2564,7,17,0,0,2564,2565,7,23,0,0,2565,2566,7,12,0,0,2566,56,1,0,0,0,2567,2568,7,14,0,0,2568,2569,7,19,0,0,2569,2570,7,12,0,0,2570,2571,7,4,0,0,2571,2572,7,15,0,0,2572,2573,7,6,0,0,2573,2574,7,15,0,0,2574,2575,7,19,0,0,2575,2576,7,12,0,0,2576,58,1,0,0,0,2577,2578,7,14,0,0,2578,2579,7,19,0,0,2579,2580,7,12,0,0,2580,2581,7,11,0,0,2581,2582,7,6,0,0,2582,2583,7,8,0,0,2583,2584,7,3,0,0,2584,2585,7,15,0,0,2585,2586,7,12,0,0,2586,2587,7,6,0,0,2587,60,1,0,0,0,2588,2589,7,14,0,0,2589,2590,7,19,0,0,2590,2591,7,12,0,0,2591,2592,7,6,0,0,2592,2593,7,15,0,0,2593,2594,7,12,0,0,2594,2595,7,17,0,0,2595,2596,7,7,0,0,2596,62,1,0,0,0,2597,2598,7,14,0,0,2598,2599,7,19,0,0,2599,2600,7,12,0,0,2600,2601,7,24,0,0,2601,2602,7,7,0,0,2602,2603,7,8,0,0,2603,2604,7,6,0,0,2604,64,1,0,0,0,2605,2606,7,14,0,0,2606,2607,7,8,0,0,2607,2608,7,7,0,0,2608,2609,7,3,0,0,2609,2610,7,6,0,0,2610,2611,7,7,0,0,2611,66,1,0,0,0,2612,2613,7,14,0,0,2613,2614,7,8,0,0,2614,2615,7,19,0,0,2615,2616,7,11,0,0,2616,2617,7,11,0,0,2617,68,1,0,0,0,2618,2619,7,14,0,0,2619,2620,7,17,0,0,2620,2621,7,8,0,0,2621,2622,7,8,0,0,2622,2623,7,7,0,0,2623,2624,7,12,0,0,2624,2625,7,6,0,0,2625,70,1,0,0,0,2626,2627,7,14,0,0,2627,2628,7,17,0,0,2628,2629,7,8,0,0,2629,2630,7,8,0,0,2630,2631,7,7,0,0,2631,2632,7,12,0,0,2632,2633,7,6,0,0,2633,2634,5,95,0,0,2634,2635,7,8,0,0,2635,2636,7,19,0,0,2636,2637,7,5,0,0,2637,2638,7,7,0,0,2638,72,1,0,0,0,2639,2640,7,14,0,0,2640,2641,7,17,0,0,2641,2642,7,8,0,0,2642,2643,7,8,0,0,2643,2644,7,7,0,0,2644,2645,7,12,0,0,2645,2646,7,6,0,0,2646,2647,5,95,0,0,2647,2648,7,17,0,0,2648,2649,7,11,0,0,2649,2650,7,7,0,0,2650,2651,7,8,0,0,2651,74,1,0,0,0,2652,2653,7,14,0,0,2653,2654,7,17,0,0,2654,2655,7,8,0,0,2655,2656,7,11,0,0,2656,2657,7,19,0,0,2657,2658,7,8,0,0,2658,76,1,0,0,0,2659,2660,7,4,0,0,2660,2661,7,3,0,0,2661,2662,7,6,0,0,2662,2663,7,3,0,0,2663,2664,7,16,0,0,2664,2665,7,3,0,0,2665,2666,7,11,0,0,2666,2667,7,7,0,0,2667,78,1,0,0,0,2668,2669,7,4,0,0,2669,2670,7,3,0,0,2670,2671,7,6,0,0,2671,2672,7,3,0,0,2672,2673,7,16,0,0,2673,2674,7,3,0,0,2674,2675,7,11,0,0,2675,2676,7,7,0,0,2676,2677,7,11,0,0,2677,80,1,0,0,0,2678,2679,7,4,0,0,2679,2680,7,7,0,0,2680,2681,7,14,0,0,2681,2682,7,5,0,0,2682,2683,7,3,0,0,2683,2684,7,8,0,0,2684,2685,7,7,0,0,2685,82,1,0,0,0,2686,2687,7,4,0,0,2687,2688,7,7,0,0,2688,2689,7,18,0,0,2689,2690,7,3,0,0,2690,2691,7,17,0,0,2691,2692,7,5,0,0,2692,2693,7,6,0,0,2693,84,1,0,0,0,2694,2695,7,4,0,0,2695,2696,7,7,0,0,2696,2697,7,5,0,0,2697,2698,7,3,0,0,2698,2699,7,10,0,0,2699,2700,7,7,0,0,2700,2701,7,4,0,0,2701,86,1,0,0,0,2702,2703,7,4,0,0,2703,2704,7,7,0,0,2704,2705,7,5,0,0,2705,2706,7,7,0,0,2706,2707,7,6,0,0,2707,2708,7,7,0,0,2708,88,1,0,0,0,2709,2710,7,4,0,0,2710,2711,7,7,0,0,2711,2712,7,11,0,0,2712,2713,7,14,0,0,2713,90,1,0,0,0,2714,2715,7,4,0,0,2715,2716,7,7,0,0,2716,2717,7,11,0,0,2717,2718,7,14,0,0,2718,2719,7,8,0,0,2719,2720,7,15,0,0,2720,2721,7,16,0,0,2721,2722,7,7,0,0,2722,92,1,0,0,0,2723,2724,7,4,0,0,2724,2725,7,7,0,0,2725,2726,7,6,0,0,2726,2727,7,7,0,0,2727,2728,7,8,0,0,2728,2729,7,23,0,0,2729,2730,7,15,0,0,2730,2731,7,12,0,0,2731,2732,7,15,0,0,2732,2733,7,11,0,0,2733,2734,7,6,0,0,2734,2735,7,15,0,0,2735,2736,7,14,0,0,2736,94,1,0,0,0,2737,2738,7,4,0,0,2738,2739,7,15,0,0,2739,2740,7,3,0,0,2740,2741,7,22,0,0,2741,2742,7,12,0,0,2742,2743,7,19,0,0,2743,2744,7,11,0,0,2744,2745,7,6,0,0,2745,2746,7,15,0,0,2746,2747,7,14,0,0,2747,2748,7,11,0,0,2748,96,1,0,0,0,2749,2750,7,4,0,0,2750,2751,7,15,0,0,2751,2752,7,11,0,0,2752,2753,7,6,0,0,2753,2754,7,15,0,0,2754,2755,7,12,0,0,2755,2756,7,14,0,0,2756,2757,7,6,0,0,2757,98,1,0,0,0,2758,2759,7,4,0,0,2759,2760,7,15,0,0,2760,2761,7,11,0,0,2761,2762,7,6,0,0,2762,2763,7,15,0,0,2763,2764,7,12,0,0,2764,2765,7,14,0,0,2765,2766,7,6,0,0,2766,2767,7,8,0,0,2767,2768,7,19,0,0,2768,2769,7,9,0,0,2769,100,1,0,0,0,2770,2771,7,4,0,0,2771,2772,7,8,0,0,2772,2773,7,19,0,0,2773,2774,7,25,0,0,2774,102,1,0,0,0,2775,2776,7,7,0,0,2776,2777,7,3,0,0,2777,2778,7,14,0,0,2778,2779,7,20,0,0,2779,104,1,0,0,0,2780,2781,7,7,0,0,2781,2782,7,5,0,0,2782,2783,7,11,0,0,2783,2784,7,7,0,0,2784,106,1,0,0,0,2785,2786,7,7,0,0,2786,2787,7,5,0,0,2787,2788,7,11,0,0,2788,2789,7,7,0,0,2789,2790,7,15,0,0,2790,2791,7,18,0,0,2791,108,1,0,0,0,2792,2793,7,7,0,0,2793,2794,7,23,0,0,2794,2795,7,25,0,0,2795,2796,7,6,0,0,2796,2797,7,10,0,0,2797,110,1,0,0,0,2798,2799,7,7,0,0,2799,2800,7,12,0,0,2800,2801,7,14,0,0,2801,2802,7,5,0,0,2802,2803,7,19,0,0,2803,2804,7,11,0,0,2804,2805,7,7,0,0,2805,2806,7,4,0,0,2806,112,1,0,0,0,2807,2808,7,7,0,0,2808,2809,7,12,0,0,2809,2810,7,18,0,0,2810,2811,7,19,0,0,2811,2812,7,8,0,0,2812,2813,7,14,0,0,2813,2814,7,7,0,0,2814,2815,7,4,0,0,2815,114,1,0,0,0,2816,2817,7,7,0,0,2817,2818,7,11,0,0,2818,2819,7,14,0,0,2819,2820,7,3,0,0,2820,2821,7,25,0,0,2821,2822,7,7,0,0,2822,2823,7,4,0,0,2823,116,1,0,0,0,2824,2825,7,7,0,0,2825,2826,7,26,0,0,2826,2827,7,14,0,0,2827,2828,7,7,0,0,2828,2829,7,25,0,0,2829,2830,7,6,0,0,2830,118,1,0,0,0,2831,2832,7,7,0,0,2832,2833,7,26,0,0,2833,2834,7,15,0,0,2834,2835,7,11,0,0,2835,2836,7,6,0,0,2836,2837,7,11,0,0,2837,120,1,0,0,0,2838,2839,7,7,0,0,2839,2840,7,26,0,0,2840,2841,7,15,0,0,2841,2842,7,6,0,0,2842,122,1,0,0,0,2843,2844,7,7,0,0,2844,2845,7,26,0,0,2845,2846,7,25,0,0,2846,2847,7,5,0,0,2847,2848,7,3,0,0,2848,2849,7,15,0,0,2849,2850,7,12,0,0,2850,124,1,0,0,0,2851,2852,7,18,0,0,2852,2853,7,3,0,0,2853,2854,7,5,0,0,2854,2855,7,11,0,0,2855,2856,7,7,0,0,2856,126,1,0,0,0,2857,2858,7,18,0,0,2858,2859,7,7,0,0,2859,2860,7,6,0,0,2860,2861,7,14,0,0,2861,2862,7,20,0,0,2862,128,1,0,0,0,2863,2864,7,18,0,0,2864,2865,7,19,0,0,2865,2866,7,8,0,0,2866,130,1,0,0,0,2867,2868,7,18,0,0,2868,2869,7,19,0,0,2869,2870,7,8,0,0,2870,2871,7,14,0,0,2871,2872,7,7,0,0,2872,132,1,0,0,0,2873,2874,7,18,0,0,2874,2875,7,19,0,0,2875,2876,7,8,0,0,2876,2877,7,7,0,0,2877,2878,7,15,0,0,2878,2879,7,22,0,0,2879,2880,7,12,0,0,2880,134,1,0,0,0,2881,2882,7,18,0,0,2882,2883,7,8,0,0,2883,2884,7,19,0,0,2884,2885,7,23,0,0,2885,136,1,0,0,0,2886,2887,7,18,0,0,2887,2888,7,17,0,0,2888,2889,7,5,0,0,2889,2890,7,5,0,0,2890,2891,7,6,0,0,2891,2892,7,7,0,0,2892,2893,7,26,0,0,2893,2894,7,6,0,0,2894,138,1,0,0,0,2895,2896,7,22,0,0,2896,2897,7,7,0,0,2897,2898,7,12,0,0,2898,2899,7,7,0,0,2899,2900,7,8,0,0,2900,2901,7,3,0,0,2901,2902,7,6,0,0,2902,2903,7,7,0,0,2903,2904,7,4,0,0,2904,140,1,0,0,0,2905,2906,7,22,0,0,2906,2907,7,7,0,0,2907,2908,7,6,0,0,2908,142,1,0,0,0,2909,2910,7,22,0,0,2910,2911,7,8,0,0,2911,2912,7,3,0,0,2912,2913,7,12,0,0,2913,2914,7,6,0,0,2914,144,1,0,0,0,2915,2916,7,22,0,0,2916,2917,7,8,0,0,2917,2918,7,19,0,0,2918,2919,7,17,0,0,2919,2920,7,25,0,0,2920,146,1,0,0,0,2921,2922,7,20,0,0,2922,2923,7,3,0,0,2923,2924,7,24,0,0,2924,2925,7,15,0,0,2925,2926,7,12,0,0,2926,2927,7,22,0,0,2927,148,1,0,0,0,2928,2929,7,20,0,0,2929,2930,7,15,0,0,2930,2931,7,22,0,0,2931,2932,7,20,0,0,2932,2933,5,95,0,0,2933,2934,7,25,0,0,2934,2935,7,8,0,0,2935,2936,7,15,0,0,2936,2937,7,19,0,0,2937,2938,7,8,0,0,2938,2939,7,15,0,0,2939,2940,7,6,0,0,2940,2941,7,10,0,0,2941,150,1,0,0,0,2942,2943,7,20,0,0,2943,2944,7,15,0,0,2944,2945,7,11,0,0,2945,2946,7,6,0,0,2946,2947,7,19,0,0,2947,2948,7,22,0,0,2948,2949,7,8,0,0,2949,2950,7,3,0,0,2950,2951,7,23,0,0,2951,152,1,0,0,0,2952,2953,7,15,0,0,2953,2954,7,18,0,0,2954,154,1,0,0,0,2955,2956,7,15,0,0,2956,2957,7,22,0,0,2957,2958,7,12,0,0,2958,2959,7,19,0,0,2959,2960,7,8,0,0,2960,2961,7,7,0,0,2961,156,1,0,0,0,2962,2963,7,15,0,0,2963,2964,7,22,0,0,2964,2965,7,12,0,0,2965,2966,7,19,0,0,2966,2967,7,8,0,0,2967,2968,7,7,0,0,2968,2969,7,4,0,0,2969,158,1,0,0,0,2970,2971,7,15,0,0,2971,2972,7,12,0,0,2972,160,1,0,0,0,2973,2974,7,15,0,0,2974,2975,7,12,0,0,2975,2976,7,4,0,0,2976,2977,7,7,0,0,2977,2978,7,26,0,0,2978,162,1,0,0,0,2979,2980,7,15,0,0,2980,2981,7,12,0,0,2981,2982,7,18,0,0,2982,2983,7,15,0,0,2983,2984,7,5,0,0,2984,2985,7,7,0,0,2985,164,1,0,0,0,2986,2987,7,15,0,0,2987,2988,7,12,0,0,2988,2989,7,12,0,0,2989,2990,7,7,0,0,2990,2991,7,8,0,0,2991,166,1,0,0,0,2992,2993,7,15,0,0,2993,2994,7,12,0,0,2994,2995,7,19,0,0,2995,2996,7,17,0,0,2996,2997,7,6,0,0,2997,168,1,0,0,0,2998,2999,7,15,0,0,2999,3e3,7,12,0,0,3e3,3001,7,11,0,0,3001,3002,7,7,0,0,3002,3003,7,8,0,0,3003,3004,7,6,0,0,3004,170,1,0,0,0,3005,3006,7,15,0,0,3006,3007,7,12,0,0,3007,3008,7,6,0,0,3008,3009,7,7,0,0,3009,3010,7,8,0,0,3010,3011,7,24,0,0,3011,3012,7,3,0,0,3012,3013,7,5,0,0,3013,172,1,0,0,0,3014,3015,7,15,0,0,3015,3016,7,12,0,0,3016,3017,7,6,0,0,3017,3018,7,19,0,0,3018,174,1,0,0,0,3019,3020,7,15,0,0,3020,3021,7,11,0,0,3021,176,1,0,0,0,3022,3023,7,15,0,0,3023,3024,7,6,0,0,3024,3025,7,7,0,0,3025,3026,7,8,0,0,3026,3027,7,3,0,0,3027,3028,7,6,0,0,3028,3029,7,7,0,0,3029,178,1,0,0,0,3030,3031,7,27,0,0,3031,3032,7,19,0,0,3032,3033,7,15,0,0,3033,3034,7,12,0,0,3034,180,1,0,0,0,3035,3036,7,21,0,0,3036,3037,7,7,0,0,3037,3038,7,10,0,0,3038,182,1,0,0,0,3039,3040,7,21,0,0,3040,3041,7,7,0,0,3041,3042,7,10,0,0,3042,3043,7,11,0,0,3043,184,1,0,0,0,3044,3045,7,21,0,0,3045,3046,7,15,0,0,3046,3047,7,5,0,0,3047,3048,7,5,0,0,3048,186,1,0,0,0,3049,3050,7,5,0,0,3050,3051,7,3,0,0,3051,3052,7,6,0,0,3052,3053,7,7,0,0,3053,3054,7,8,0,0,3054,3055,7,3,0,0,3055,3056,7,5,0,0,3056,188,1,0,0,0,3057,3058,7,5,0,0,3058,3059,7,7,0,0,3059,3060,7,3,0,0,3060,3061,7,4,0,0,3061,3062,7,15,0,0,3062,3063,7,12,0,0,3063,3064,7,22,0,0,3064,190,1,0,0,0,3065,3066,7,5,0,0,3066,3067,7,7,0,0,3067,3068,7,3,0,0,3068,3069,7,24,0,0,3069,3070,7,7,0,0,3070,192,1,0,0,0,3071,3072,7,5,0,0,3072,3073,7,7,0,0,3073,3074,7,18,0,0,3074,3075,7,6,0,0,3075,194,1,0,0,0,3076,3077,7,5,0,0,3077,3078,7,15,0,0,3078,3079,7,21,0,0,3079,3080,7,7,0,0,3080,196,1,0,0,0,3081,3082,7,5,0,0,3082,3083,7,15,0,0,3083,3084,7,23,0,0,3084,3085,7,15,0,0,3085,3086,7,6,0,0,3086,198,1,0,0,0,3087,3088,7,5,0,0,3088,3089,7,15,0,0,3089,3090,7,12,0,0,3090,3091,7,7,0,0,3091,3092,7,3,0,0,3092,3093,7,8,0,0,3093,200,1,0,0,0,3094,3095,7,5,0,0,3095,3096,7,15,0,0,3096,3097,7,12,0,0,3097,3098,7,7,0,0,3098,3099,7,11,0,0,3099,202,1,0,0,0,3100,3101,7,5,0,0,3101,3102,7,19,0,0,3102,3103,7,3,0,0,3103,3104,7,4,0,0,3104,204,1,0,0,0,3105,3106,7,5,0,0,3106,3107,7,19,0,0,3107,3108,7,14,0,0,3108,3109,7,21,0,0,3109,206,1,0,0,0,3110,3111,7,5,0,0,3111,3112,7,19,0,0,3112,3113,7,14,0,0,3113,3114,7,21,0,0,3114,3115,7,7,0,0,3115,3116,7,4,0,0,3116,208,1,0,0,0,3117,3118,7,5,0,0,3118,3119,7,19,0,0,3119,3120,7,19,0,0,3120,3121,7,25,0,0,3121,210,1,0,0,0,3122,3123,7,5,0,0,3123,3124,7,19,0,0,3124,3125,7,9,0,0,3125,3126,5,95,0,0,3126,3127,7,25,0,0,3127,3128,7,8,0,0,3128,3129,7,15,0,0,3129,3130,7,19,0,0,3130,3131,7,8,0,0,3131,3132,7,15,0,0,3132,3133,7,6,0,0,3133,3134,7,10,0,0,3134,212,1,0,0,0,3135,3136,7,23,0,0,3136,3137,7,3,0,0,3137,3138,7,11,0,0,3138,3139,7,6,0,0,3139,3140,7,7,0,0,3140,3141,7,8,0,0,3141,3142,5,95,0,0,3142,3143,7,16,0,0,3143,3144,7,15,0,0,3144,3145,7,12,0,0,3145,3146,7,4,0,0,3146,214,1,0,0,0,3147,3148,7,23,0,0,3148,3149,7,3,0,0,3149,3150,7,11,0,0,3150,3151,7,6,0,0,3151,3152,7,7,0,0,3152,3153,7,8,0,0,3153,3154,5,95,0,0,3154,3155,7,11,0,0,3155,3156,7,11,0,0,3156,3157,7,5,0,0,3157,3158,5,95,0,0,3158,3159,7,24,0,0,3159,3160,7,7,0,0,3160,3161,7,8,0,0,3161,3162,7,15,0,0,3162,3163,7,18,0,0,3163,3164,7,10,0,0,3164,3165,5,95,0,0,3165,3166,7,11,0,0,3166,3167,7,7,0,0,3167,3168,7,8,0,0,3168,3169,7,24,0,0,3169,3170,7,7,0,0,3170,3171,7,8,0,0,3171,3172,5,95,0,0,3172,3173,7,14,0,0,3173,3174,7,7,0,0,3174,3175,7,8,0,0,3175,3176,7,6,0,0,3176,216,1,0,0,0,3177,3178,7,23,0,0,3178,3179,7,3,0,0,3179,3180,7,6,0,0,3180,3181,7,14,0,0,3181,3182,7,20,0,0,3182,218,1,0,0,0,3183,3184,7,23,0,0,3184,3185,7,3,0,0,3185,3186,7,26,0,0,3186,3187,7,24,0,0,3187,3188,7,3,0,0,3188,3189,7,5,0,0,3189,3190,7,17,0,0,3190,3191,7,7,0,0,3191,220,1,0,0,0,3192,3193,7,23,0,0,3193,3194,7,15,0,0,3194,3195,7,12,0,0,3195,3196,7,24,0,0,3196,3197,7,3,0,0,3197,3198,7,5,0,0,3198,3199,7,17,0,0,3199,3200,7,7,0,0,3200,222,1,0,0,0,3201,3202,7,23,0,0,3202,3203,7,19,0,0,3203,3204,7,4,0,0,3204,3205,7,15,0,0,3205,3206,7,18,0,0,3206,3207,7,15,0,0,3207,3208,7,7,0,0,3208,3209,7,11,0,0,3209,224,1,0,0,0,3210,3211,7,12,0,0,3211,3212,7,3,0,0,3212,3213,7,6,0,0,3213,3214,7,17,0,0,3214,3215,7,8,0,0,3215,3216,7,3,0,0,3216,3217,7,5,0,0,3217,226,1,0,0,0,3218,3219,7,12,0,0,3219,3220,7,19,0,0,3220,3221,7,6,0,0,3221,228,1,0,0,0,3222,3223,7,12,0,0,3223,3224,7,19,0,0,3224,3225,5,95,0,0,3225,3226,7,9,0,0,3226,3227,7,8,0,0,3227,3228,7,15,0,0,3228,3229,7,6,0,0,3229,3230,7,7,0,0,3230,3231,5,95,0,0,3231,3232,7,6,0,0,3232,3233,7,19,0,0,3233,3234,5,95,0,0,3234,3235,7,16,0,0,3235,3236,7,15,0,0,3236,3237,7,12,0,0,3237,3238,7,5,0,0,3238,3239,7,19,0,0,3239,3240,7,22,0,0,3240,230,1,0,0,0,3241,3242,7,12,0,0,3242,3243,7,17,0,0,3243,3244,7,5,0,0,3244,3245,7,5,0,0,3245,232,1,0,0,0,3246,3247,7,12,0,0,3247,3248,7,17,0,0,3248,3249,7,23,0,0,3249,3250,7,16,0,0,3250,3251,7,7,0,0,3251,3252,7,8,0,0,3252,234,1,0,0,0,3253,3254,7,19,0,0,3254,3255,7,12,0,0,3255,236,1,0,0,0,3256,3257,7,19,0,0,3257,3258,7,25,0,0,3258,3259,7,6,0,0,3259,3260,7,15,0,0,3260,3261,7,23,0,0,3261,3262,7,15,0,0,3262,3263,7,13,0,0,3263,3264,7,7,0,0,3264,238,1,0,0,0,3265,3266,7,19,0,0,3266,3267,7,25,0,0,3267,3268,7,6,0,0,3268,3269,7,15,0,0,3269,3270,7,19,0,0,3270,3271,7,12,0,0,3271,240,1,0,0,0,3272,3273,7,19,0,0,3273,3274,7,25,0,0,3274,3275,7,6,0,0,3275,3276,7,15,0,0,3276,3277,7,19,0,0,3277,3278,7,12,0,0,3278,3279,7,3,0,0,3279,3280,7,5,0,0,3280,242,1,0,0,0,3281,3282,7,19,0,0,3282,3283,7,25,0,0,3283,3284,7,6,0,0,3284,3285,7,15,0,0,3285,3286,7,19,0,0,3286,3287,7,12,0,0,3287,3288,7,3,0,0,3288,3289,7,5,0,0,3289,3290,7,5,0,0,3290,3291,7,10,0,0,3291,244,1,0,0,0,3292,3293,7,19,0,0,3293,3294,7,8,0,0,3294,246,1,0,0,0,3295,3296,7,19,0,0,3296,3297,7,8,0,0,3297,3298,7,4,0,0,3298,3299,7,7,0,0,3299,3300,7,8,0,0,3300,248,1,0,0,0,3301,3302,7,19,0,0,3302,3303,7,17,0,0,3303,3304,7,6,0,0,3304,250,1,0,0,0,3305,3306,7,19,0,0,3306,3307,7,17,0,0,3307,3308,7,6,0,0,3308,3309,7,7,0,0,3309,3310,7,8,0,0,3310,252,1,0,0,0,3311,3312,7,19,0,0,3312,3313,7,17,0,0,3313,3314,7,6,0,0,3314,3315,7,18,0,0,3315,3316,7,15,0,0,3316,3317,7,5,0,0,3317,3318,7,7,0,0,3318,254,1,0,0,0,3319,3320,7,19,0,0,3320,3321,7,24,0,0,3321,3322,7,7,0,0,3322,3323,7,8,0,0,3323,256,1,0,0,0,3324,3325,7,25,0,0,3325,3326,7,3,0,0,3326,3327,7,8,0,0,3327,3328,7,6,0,0,3328,3329,7,15,0,0,3329,3330,7,6,0,0,3330,3331,7,15,0,0,3331,3332,7,19,0,0,3332,3333,7,12,0,0,3333,258,1,0,0,0,3334,3335,7,25,0,0,3335,3336,7,8,0,0,3336,3337,7,15,0,0,3337,3338,7,23,0,0,3338,3339,7,3,0,0,3339,3340,7,8,0,0,3340,3341,7,10,0,0,3341,260,1,0,0,0,3342,3343,7,25,0,0,3343,3344,7,8,0,0,3344,3345,7,19,0,0,3345,3346,7,14,0,0,3346,3347,7,7,0,0,3347,3348,7,4,0,0,3348,3349,7,17,0,0,3349,3350,7,8,0,0,3350,3351,7,7,0,0,3351,262,1,0,0,0,3352,3353,7,25,0,0,3353,3354,7,17,0,0,3354,3355,7,8,0,0,3355,3356,7,22,0,0,3356,3357,7,7,0,0,3357,264,1,0,0,0,3358,3359,7,8,0,0,3359,3360,7,3,0,0,3360,3361,7,12,0,0,3361,3362,7,22,0,0,3362,3363,7,7,0,0,3363,266,1,0,0,0,3364,3365,7,8,0,0,3365,3366,7,7,0,0,3366,3367,7,3,0,0,3367,3368,7,4,0,0,3368,268,1,0,0,0,3369,3370,7,8,0,0,3370,3371,7,7,0,0,3371,3372,7,3,0,0,3372,3373,7,4,0,0,3373,3374,7,11,0,0,3374,270,1,0,0,0,3375,3376,7,8,0,0,3376,3377,7,7,0,0,3377,3378,7,18,0,0,3378,3379,7,7,0,0,3379,3380,7,8,0,0,3380,3381,7,7,0,0,3381,3382,7,12,0,0,3382,3383,7,14,0,0,3383,3384,7,7,0,0,3384,3385,7,11,0,0,3385,272,1,0,0,0,3386,3387,7,8,0,0,3387,3388,7,7,0,0,3388,3389,7,22,0,0,3389,3390,7,7,0,0,3390,3391,7,26,0,0,3391,3392,7,25,0,0,3392,274,1,0,0,0,3393,3394,7,8,0,0,3394,3395,7,7,0,0,3395,3396,7,5,0,0,3396,3397,7,7,0,0,3397,3398,7,3,0,0,3398,3399,7,11,0,0,3399,3400,7,7,0,0,3400,276,1,0,0,0,3401,3402,7,8,0,0,3402,3403,7,7,0,0,3403,3404,7,12,0,0,3404,3405,7,3,0,0,3405,3406,7,23,0,0,3406,3407,7,7,0,0,3407,278,1,0,0,0,3408,3409,7,8,0,0,3409,3410,7,7,0,0,3410,3411,7,25,0,0,3411,3412,7,7,0,0,3412,3413,7,3,0,0,3413,3414,7,6,0,0,3414,280,1,0,0,0,3415,3416,7,8,0,0,3416,3417,7,7,0,0,3417,3418,7,25,0,0,3418,3419,7,5,0,0,3419,3420,7,3,0,0,3420,3421,7,14,0,0,3421,3422,7,7,0,0,3422,282,1,0,0,0,3423,3424,7,8,0,0,3424,3425,7,7,0,0,3425,3426,7,28,0,0,3426,3427,7,17,0,0,3427,3428,7,15,0,0,3428,3429,7,8,0,0,3429,3430,7,7,0,0,3430,284,1,0,0,0,3431,3432,7,8,0,0,3432,3433,7,7,0,0,3433,3434,7,11,0,0,3434,3435,7,15,0,0,3435,3436,7,22,0,0,3436,3437,7,12,0,0,3437,3438,7,3,0,0,3438,3439,7,5,0,0,3439,286,1,0,0,0,3440,3441,7,8,0,0,3441,3442,7,7,0,0,3442,3443,7,11,0,0,3443,3444,7,6,0,0,3444,3445,7,8,0,0,3445,3446,7,15,0,0,3446,3447,7,14,0,0,3447,3448,7,6,0,0,3448,288,1,0,0,0,3449,3450,7,8,0,0,3450,3451,7,7,0,0,3451,3452,7,6,0,0,3452,3453,7,3,0,0,3453,3454,7,15,0,0,3454,3455,7,12,0,0,3455,290,1,0,0,0,3456,3457,7,8,0,0,3457,3458,7,7,0,0,3458,3459,7,6,0,0,3459,3460,7,17,0,0,3460,3461,7,8,0,0,3461,3462,7,12,0,0,3462,292,1,0,0,0,3463,3464,7,8,0,0,3464,3465,7,7,0,0,3465,3466,7,24,0,0,3466,3467,7,19,0,0,3467,3468,7,21,0,0,3468,3469,7,7,0,0,3469,294,1,0,0,0,3470,3471,7,8,0,0,3471,3472,7,15,0,0,3472,3473,7,22,0,0,3473,3474,7,20,0,0,3474,3475,7,6,0,0,3475,296,1,0,0,0,3476,3477,7,8,0,0,3477,3478,7,5,0,0,3478,3479,7,15,0,0,3479,3480,7,21,0,0,3480,3481,7,7,0,0,3481,298,1,0,0,0,3482,3483,7,11,0,0,3483,3484,7,14,0,0,3484,3485,7,20,0,0,3485,3486,7,7,0,0,3486,3487,7,23,0,0,3487,3488,7,3,0,0,3488,300,1,0,0,0,3489,3490,7,11,0,0,3490,3491,7,14,0,0,3491,3492,7,20,0,0,3492,3493,7,7,0,0,3493,3494,7,23,0,0,3494,3495,7,3,0,0,3495,3496,7,11,0,0,3496,302,1,0,0,0,3497,3498,7,11,0,0,3498,3499,7,7,0,0,3499,3500,7,5,0,0,3500,3501,7,7,0,0,3501,3502,7,14,0,0,3502,3503,7,6,0,0,3503,304,1,0,0,0,3504,3505,7,11,0,0,3505,3506,7,7,0,0,3506,3507,7,6,0,0,3507,306,1,0,0,0,3508,3509,7,11,0,0,3509,3510,7,7,0,0,3510,3511,7,25,0,0,3511,3512,7,3,0,0,3512,3513,7,8,0,0,3513,3514,7,3,0,0,3514,3515,7,6,0,0,3515,3516,7,19,0,0,3516,3517,7,8,0,0,3517,308,1,0,0,0,3518,3519,7,11,0,0,3519,3520,7,20,0,0,3520,3521,7,19,0,0,3521,3522,7,9,0,0,3522,310,1,0,0,0,3523,3524,7,11,0,0,3524,3525,7,15,0,0,3525,3526,7,22,0,0,3526,3527,7,12,0,0,3527,3528,7,3,0,0,3528,3529,7,5,0,0,3529,312,1,0,0,0,3530,3531,7,11,0,0,3531,3532,7,21,0,0,3532,3533,7,15,0,0,3533,3534,7,25,0,0,3534,314,1,0,0,0,3535,3536,7,11,0,0,3536,3537,7,21,0,0,3537,3538,7,15,0,0,3538,3539,7,25,0,0,3539,3540,5,95,0,0,3540,3541,7,28,0,0,3541,3542,7,17,0,0,3542,3543,7,7,0,0,3543,3544,7,8,0,0,3544,3545,7,10,0,0,3545,3546,5,95,0,0,3546,3547,7,8,0,0,3547,3548,7,7,0,0,3548,3549,7,9,0,0,3549,3550,7,8,0,0,3550,3551,7,15,0,0,3551,3552,7,6,0,0,3552,3553,7,7,0,0,3553,316,1,0,0,0,3554,3555,7,11,0,0,3555,3556,7,25,0,0,3556,3557,7,3,0,0,3557,3558,7,6,0,0,3558,3559,7,15,0,0,3559,3560,7,3,0,0,3560,3561,7,5,0,0,3561,318,1,0,0,0,3562,3563,7,11,0,0,3563,3564,7,28,0,0,3564,3565,7,5,0,0,3565,320,1,0,0,0,3566,3567,7,11,0,0,3567,3568,7,28,0,0,3568,3569,7,5,0,0,3569,3570,7,7,0,0,3570,3571,7,26,0,0,3571,3572,7,14,0,0,3572,3573,7,7,0,0,3573,3574,7,25,0,0,3574,3575,7,6,0,0,3575,3576,7,15,0,0,3576,3577,7,19,0,0,3577,3578,7,12,0,0,3578,322,1,0,0,0,3579,3580,7,11,0,0,3580,3581,7,28,0,0,3581,3582,7,5,0,0,3582,3583,7,11,0,0,3583,3584,7,6,0,0,3584,3585,7,3,0,0,3585,3586,7,6,0,0,3586,3587,7,7,0,0,3587,324,1,0,0,0,3588,3589,7,11,0,0,3589,3590,7,28,0,0,3590,3591,7,5,0,0,3591,3592,7,9,0,0,3592,3593,7,3,0,0,3593,3594,7,8,0,0,3594,3595,7,12,0,0,3595,3596,7,15,0,0,3596,3597,7,12,0,0,3597,3598,7,22,0,0,3598,326,1,0,0,0,3599,3600,7,11,0,0,3600,3601,7,28,0,0,3601,3602,7,5,0,0,3602,3603,5,95,0,0,3603,3604,7,16,0,0,3604,3605,7,15,0,0,3605,3606,7,22,0,0,3606,3607,5,95,0,0,3607,3608,7,8,0,0,3608,3609,7,7,0,0,3609,3610,7,11,0,0,3610,3611,7,17,0,0,3611,3612,7,5,0,0,3612,3613,7,6,0,0,3613,328,1,0,0,0,3614,3615,7,11,0,0,3615,3616,7,28,0,0,3616,3617,7,5,0,0,3617,3618,5,95,0,0,3618,3619,7,14,0,0,3619,3620,7,3,0,0,3620,3621,7,5,0,0,3621,3622,7,14,0,0,3622,3623,5,95,0,0,3623,3624,7,18,0,0,3624,3625,7,19,0,0,3625,3626,7,17,0,0,3626,3627,7,12,0,0,3627,3628,7,4,0,0,3628,3629,5,95,0,0,3629,3630,7,8,0,0,3630,3631,7,19,0,0,3631,3632,7,9,0,0,3632,3633,7,11,0,0,3633,330,1,0,0,0,3634,3635,7,11,0,0,3635,3636,7,28,0,0,3636,3637,7,5,0,0,3637,3638,5,95,0,0,3638,3639,7,11,0,0,3639,3640,7,23,0,0,3640,3641,7,3,0,0,3641,3642,7,5,0,0,3642,3643,7,5,0,0,3643,3644,5,95,0,0,3644,3645,7,8,0,0,3645,3646,7,7,0,0,3646,3647,7,11,0,0,3647,3648,7,17,0,0,3648,3649,7,5,0,0,3649,3650,7,6,0,0,3650,332,1,0,0,0,3651,3652,7,11,0,0,3652,3653,7,11,0,0,3653,3654,7,5,0,0,3654,334,1,0,0,0,3655,3656,7,11,0,0,3656,3657,7,6,0,0,3657,3658,7,3,0,0,3658,3659,7,14,0,0,3659,3660,7,21,0,0,3660,3661,7,7,0,0,3661,3662,7,4,0,0,3662,336,1,0,0,0,3663,3664,7,11,0,0,3664,3665,7,6,0,0,3665,3666,7,3,0,0,3666,3667,7,8,0,0,3667,3668,7,6,0,0,3668,3669,7,15,0,0,3669,3670,7,12,0,0,3670,3671,7,22,0,0,3671,338,1,0,0,0,3672,3673,7,11,0,0,3673,3674,7,6,0,0,3674,3675,7,3,0,0,3675,3676,7,6,0,0,3676,3677,7,7,0,0,3677,3678,7,23,0,0,3678,3679,7,7,0,0,3679,3680,7,12,0,0,3680,3681,7,6,0,0,3681,340,1,0,0,0,3682,3683,7,11,0,0,3683,3684,7,6,0,0,3684,3685,7,8,0,0,3685,3686,7,3,0,0,3686,3687,7,15,0,0,3687,3688,7,22,0,0,3688,3689,7,20,0,0,3689,3690,7,6,0,0,3690,3691,5,95,0,0,3691,3692,7,27,0,0,3692,3693,7,19,0,0,3693,3694,7,15,0,0,3694,3695,7,12,0,0,3695,342,1,0,0,0,3696,3697,7,6,0,0,3697,3698,7,3,0,0,3698,3699,7,16,0,0,3699,3700,7,5,0,0,3700,3701,7,7,0,0,3701,344,1,0,0,0,3702,3703,7,6,0,0,3703,3704,7,7,0,0,3704,3705,7,8,0,0,3705,3706,7,23,0,0,3706,3707,7,15,0,0,3707,3708,7,12,0,0,3708,3709,7,3,0,0,3709,3710,7,6,0,0,3710,3711,7,7,0,0,3711,3712,7,4,0,0,3712,346,1,0,0,0,3713,3714,7,6,0,0,3714,3715,7,20,0,0,3715,3716,7,7,0,0,3716,3717,7,12,0,0,3717,348,1,0,0,0,3718,3719,7,6,0,0,3719,3720,7,19,0,0,3720,350,1,0,0,0,3721,3722,7,6,0,0,3722,3723,7,8,0,0,3723,3724,7,3,0,0,3724,3725,7,15,0,0,3725,3726,7,5,0,0,3726,3727,7,15,0,0,3727,3728,7,12,0,0,3728,3729,7,22,0,0,3729,352,1,0,0,0,3730,3731,7,6,0,0,3731,3732,7,8,0,0,3732,3733,7,15,0,0,3733,3734,7,22,0,0,3734,3735,7,22,0,0,3735,3736,7,7,0,0,3736,3737,7,8,0,0,3737,354,1,0,0,0,3738,3739,7,6,0,0,3739,3740,7,8,0,0,3740,3741,7,17,0,0,3741,3742,7,7,0,0,3742,356,1,0,0,0,3743,3744,7,17,0,0,3744,3745,7,12,0,0,3745,3746,7,4,0,0,3746,3747,7,19,0,0,3747,358,1,0,0,0,3748,3749,7,17,0,0,3749,3750,7,12,0,0,3750,3751,7,15,0,0,3751,3752,7,19,0,0,3752,3753,7,12,0,0,3753,360,1,0,0,0,3754,3755,7,17,0,0,3755,3756,7,12,0,0,3756,3757,7,15,0,0,3757,3758,7,28,0,0,3758,3759,7,17,0,0,3759,3760,7,7,0,0,3760,362,1,0,0,0,3761,3762,7,17,0,0,3762,3763,7,12,0,0,3763,3764,7,5,0,0,3764,3765,7,19,0,0,3765,3766,7,14,0,0,3766,3767,7,21,0,0,3767,364,1,0,0,0,3768,3769,7,17,0,0,3769,3770,7,12,0,0,3770,3771,7,11,0,0,3771,3772,7,15,0,0,3772,3773,7,22,0,0,3773,3774,7,12,0,0,3774,3775,7,7,0,0,3775,3776,7,4,0,0,3776,366,1,0,0,0,3777,3778,7,17,0,0,3778,3779,7,25,0,0,3779,3780,7,4,0,0,3780,3781,7,3,0,0,3781,3782,7,6,0,0,3782,3783,7,7,0,0,3783,368,1,0,0,0,3784,3785,7,17,0,0,3785,3786,7,11,0,0,3786,3787,7,3,0,0,3787,3788,7,22,0,0,3788,3789,7,7,0,0,3789,370,1,0,0,0,3790,3791,7,17,0,0,3791,3792,7,11,0,0,3792,3793,7,7,0,0,3793,372,1,0,0,0,3794,3795,7,17,0,0,3795,3796,7,11,0,0,3796,3797,7,15,0,0,3797,3798,7,12,0,0,3798,3799,7,22,0,0,3799,374,1,0,0,0,3800,3801,7,24,0,0,3801,3802,7,3,0,0,3802,3803,7,5,0,0,3803,3804,7,17,0,0,3804,3805,7,7,0,0,3805,3806,7,11,0,0,3806,376,1,0,0,0,3807,3808,7,9,0,0,3808,3809,7,20,0,0,3809,3810,7,7,0,0,3810,3811,7,12,0,0,3811,378,1,0,0,0,3812,3813,7,9,0,0,3813,3814,7,20,0,0,3814,3815,7,7,0,0,3815,3816,7,8,0,0,3816,3817,7,7,0,0,3817,380,1,0,0,0,3818,3819,7,9,0,0,3819,3820,7,20,0,0,3820,3821,7,15,0,0,3821,3822,7,5,0,0,3822,3823,7,7,0,0,3823,382,1,0,0,0,3824,3825,7,9,0,0,3825,3826,7,15,0,0,3826,3827,7,6,0,0,3827,3828,7,20,0,0,3828,384,1,0,0,0,3829,3830,7,9,0,0,3830,3831,7,8,0,0,3831,3832,7,15,0,0,3832,3833,7,6,0,0,3833,3834,7,7,0,0,3834,386,1,0,0,0,3835,3836,7,26,0,0,3836,3837,7,19,0,0,3837,3838,7,8,0,0,3838,388,1,0,0,0,3839,3840,7,13,0,0,3840,3841,7,7,0,0,3841,3842,7,8,0,0,3842,3843,7,19,0,0,3843,3844,7,18,0,0,3844,3845,7,15,0,0,3845,3846,7,5,0,0,3846,3847,7,5,0,0,3847,390,1,0,0,0,3848,3849,7,6,0,0,3849,3850,7,15,0,0,3850,3851,7,12,0,0,3851,3852,7,10,0,0,3852,3853,7,15,0,0,3853,3854,7,12,0,0,3854,3855,7,6,0,0,3855,392,1,0,0,0,3856,3857,7,11,0,0,3857,3858,7,23,0,0,3858,3859,7,3,0,0,3859,3860,7,5,0,0,3860,3861,7,5,0,0,3861,3862,7,15,0,0,3862,3863,7,12,0,0,3863,3864,7,6,0,0,3864,394,1,0,0,0,3865,3866,7,23,0,0,3866,3867,7,7,0,0,3867,3868,7,4,0,0,3868,3869,7,15,0,0,3869,3870,7,17,0,0,3870,3871,7,23,0,0,3871,3872,7,15,0,0,3872,3873,7,12,0,0,3873,3874,7,6,0,0,3874,396,1,0,0,0,3875,3876,7,23,0,0,3876,3877,7,15,0,0,3877,3878,7,4,0,0,3878,3879,7,4,0,0,3879,3880,7,5,0,0,3880,3881,7,7,0,0,3881,3882,7,15,0,0,3882,3883,7,12,0,0,3883,3884,7,6,0,0,3884,398,1,0,0,0,3885,3886,7,15,0,0,3886,3887,7,12,0,0,3887,3888,7,6,0,0,3888,400,1,0,0,0,3889,3890,7,15,0,0,3890,3891,7,12,0,0,3891,3892,7,6,0,0,3892,3893,5,49,0,0,3893,402,1,0,0,0,3894,3895,7,15,0,0,3895,3896,7,12,0,0,3896,3897,7,6,0,0,3897,3898,5,50,0,0,3898,404,1,0,0,0,3899,3900,7,15,0,0,3900,3901,7,12,0,0,3901,3902,7,6,0,0,3902,3903,5,51,0,0,3903,406,1,0,0,0,3904,3905,7,15,0,0,3905,3906,7,12,0,0,3906,3907,7,6,0,0,3907,3908,5,52,0,0,3908,408,1,0,0,0,3909,3910,7,15,0,0,3910,3911,7,12,0,0,3911,3912,7,6,0,0,3912,3913,5,56,0,0,3913,410,1,0,0,0,3914,3915,7,15,0,0,3915,3916,7,12,0,0,3916,3917,7,6,0,0,3917,3918,7,7,0,0,3918,3919,7,22,0,0,3919,3920,7,7,0,0,3920,3921,7,8,0,0,3921,412,1,0,0,0,3922,3923,7,16,0,0,3923,3924,7,15,0,0,3924,3925,7,22,0,0,3925,3926,7,15,0,0,3926,3927,7,12,0,0,3927,3928,7,6,0,0,3928,414,1,0,0,0,3929,3930,7,8,0,0,3930,3931,7,7,0,0,3931,3932,7,3,0,0,3932,3933,7,5,0,0,3933,416,1,0,0,0,3934,3935,7,4,0,0,3935,3936,7,19,0,0,3936,3937,7,17,0,0,3937,3938,7,16,0,0,3938,3939,7,5,0,0,3939,3940,7,7,0,0,3940,418,1,0,0,0,3941,3942,7,25,0,0,3942,3943,7,8,0,0,3943,3944,7,7,0,0,3944,3945,7,14,0,0,3945,3946,7,15,0,0,3946,3947,7,11,0,0,3947,3948,7,15,0,0,3948,3949,7,19,0,0,3949,3950,7,12,0,0,3950,420,1,0,0,0,3951,3952,7,18,0,0,3952,3953,7,5,0,0,3953,3954,7,19,0,0,3954,3955,7,3,0,0,3955,3956,7,6,0,0,3956,422,1,0,0,0,3957,3958,7,18,0,0,3958,3959,7,5,0,0,3959,3960,7,19,0,0,3960,3961,7,3,0,0,3961,3962,7,6,0,0,3962,3963,5,52,0,0,3963,424,1,0,0,0,3964,3965,7,18,0,0,3965,3966,7,5,0,0,3966,3967,7,19,0,0,3967,3968,7,3,0,0,3968,3969,7,6,0,0,3969,3970,5,56,0,0,3970,426,1,0,0,0,3971,3972,7,4,0,0,3972,3973,7,7,0,0,3973,3974,7,14,0,0,3974,3975,7,15,0,0,3975,3976,7,23,0,0,3976,3977,7,3,0,0,3977,3978,7,5,0,0,3978,428,1,0,0,0,3979,3980,7,4,0,0,3980,3981,7,7,0,0,3981,3982,7,14,0,0,3982,430,1,0,0,0,3983,3984,7,12,0,0,3984,3985,7,17,0,0,3985,3986,7,23,0,0,3986,3987,7,7,0,0,3987,3988,7,8,0,0,3988,3989,7,15,0,0,3989,3990,7,14,0,0,3990,432,1,0,0,0,3991,3992,7,4,0,0,3992,3993,7,3,0,0,3993,3994,7,6,0,0,3994,3995,7,7,0,0,3995,434,1,0,0,0,3996,3997,7,6,0,0,3997,3998,7,15,0,0,3998,3999,7,23,0,0,3999,4e3,7,7,0,0,4e3,436,1,0,0,0,4001,4002,7,6,0,0,4002,4003,7,15,0,0,4003,4004,7,23,0,0,4004,4005,7,7,0,0,4005,4006,7,11,0,0,4006,4007,7,6,0,0,4007,4008,7,3,0,0,4008,4009,7,23,0,0,4009,4010,7,25,0,0,4010,438,1,0,0,0,4011,4012,7,4,0,0,4012,4013,7,3,0,0,4013,4014,7,6,0,0,4014,4015,7,7,0,0,4015,4016,7,6,0,0,4016,4017,7,15,0,0,4017,4018,7,23,0,0,4018,4019,7,7,0,0,4019,440,1,0,0,0,4020,4021,7,10,0,0,4021,4022,7,7,0,0,4022,4023,7,3,0,0,4023,4024,7,8,0,0,4024,442,1,0,0,0,4025,4026,7,14,0,0,4026,4027,7,20,0,0,4027,4028,7,3,0,0,4028,4029,7,8,0,0,4029,444,1,0,0,0,4030,4031,7,24,0,0,4031,4032,7,3,0,0,4032,4033,7,8,0,0,4033,4034,7,14,0,0,4034,4035,7,20,0,0,4035,4036,7,3,0,0,4036,4037,7,8,0,0,4037,446,1,0,0,0,4038,4039,7,12,0,0,4039,4040,7,24,0,0,4040,4041,7,3,0,0,4041,4042,7,8,0,0,4042,4043,7,14,0,0,4043,4044,7,20,0,0,4044,4045,7,3,0,0,4045,4046,7,8,0,0,4046,448,1,0,0,0,4047,4048,7,12,0,0,4048,4049,7,3,0,0,4049,4050,7,6,0,0,4050,4051,7,15,0,0,4051,4052,7,19,0,0,4052,4053,7,12,0,0,4053,4054,7,3,0,0,4054,4055,7,5,0,0,4055,450,1,0,0,0,4056,4057,7,16,0,0,4057,4058,7,15,0,0,4058,4059,7,12,0,0,4059,4060,7,3,0,0,4060,4061,7,8,0,0,4061,4062,7,10,0,0,4062,452,1,0,0,0,4063,4064,7,24,0,0,4064,4065,7,3,0,0,4065,4066,7,8,0,0,4066,4067,7,16,0,0,4067,4068,7,15,0,0,4068,4069,7,12,0,0,4069,4070,7,3,0,0,4070,4071,7,8,0,0,4071,4072,7,10,0,0,4072,454,1,0,0,0,4073,4074,7,6,0,0,4074,4075,7,15,0,0,4075,4076,7,12,0,0,4076,4077,7,10,0,0,4077,4078,7,16,0,0,4078,4079,7,5,0,0,4079,4080,7,19,0,0,4080,4081,7,16,0,0,4081,456,1,0,0,0,4082,4083,7,16,0,0,4083,4084,7,5,0,0,4084,4085,7,19,0,0,4085,4086,7,16,0,0,4086,458,1,0,0,0,4087,4088,7,23,0,0,4088,4089,7,7,0,0,4089,4090,7,4,0,0,4090,4091,7,15,0,0,4091,4092,7,17,0,0,4092,4093,7,23,0,0,4093,4094,7,16,0,0,4094,4095,7,5,0,0,4095,4096,7,19,0,0,4096,4097,7,16,0,0,4097,460,1,0,0,0,4098,4099,7,5,0,0,4099,4100,7,19,0,0,4100,4101,7,12,0,0,4101,4102,7,22,0,0,4102,462,1,0,0,0,4103,4104,7,5,0,0,4104,4105,7,19,0,0,4105,4106,7,12,0,0,4106,4107,7,22,0,0,4107,4108,7,16,0,0,4108,4109,7,5,0,0,4109,4110,7,19,0,0,4110,4111,7,16,0,0,4111,464,1,0,0,0,4112,4113,7,6,0,0,4113,4114,7,15,0,0,4114,4115,7,12,0,0,4115,4116,7,10,0,0,4116,4117,7,6,0,0,4117,4118,7,7,0,0,4118,4119,7,26,0,0,4119,4120,7,6,0,0,4120,466,1,0,0,0,4121,4122,7,6,0,0,4122,4123,7,7,0,0,4123,4124,7,26,0,0,4124,4125,7,6,0,0,4125,468,1,0,0,0,4126,4127,7,23,0,0,4127,4128,7,7,0,0,4128,4129,7,4,0,0,4129,4130,7,15,0,0,4130,4131,7,17,0,0,4131,4132,7,23,0,0,4132,4133,7,6,0,0,4133,4134,7,7,0,0,4134,4135,7,26,0,0,4135,4136,7,6,0,0,4136,470,1,0,0,0,4137,4138,7,5,0,0,4138,4139,7,19,0,0,4139,4140,7,12,0,0,4140,4141,7,22,0,0,4141,4142,7,6,0,0,4142,4143,7,7,0,0,4143,4144,7,26,0,0,4144,4145,7,6,0,0,4145,472,1,0,0,0,4146,4147,7,7,0,0,4147,4148,7,12,0,0,4148,4149,7,17,0,0,4149,4150,7,23,0,0,4150,474,1,0,0,0,4151,4152,7,24,0,0,4152,4153,7,3,0,0,4153,4154,7,8,0,0,4154,4155,7,10,0,0,4155,4156,7,15,0,0,4156,4157,7,12,0,0,4157,4158,7,22,0,0,4158,476,1,0,0,0,4159,4160,7,11,0,0,4160,4161,7,7,0,0,4161,4162,7,8,0,0,4162,4163,7,15,0,0,4163,4164,7,3,0,0,4164,4165,7,5,0,0,4165,478,1,0,0,0,4166,4167,7,10,0,0,4167,4168,7,7,0,0,4168,4169,7,3,0,0,4169,4170,7,8,0,0,4170,4171,5,95,0,0,4171,4172,7,23,0,0,4172,4173,7,19,0,0,4173,4174,7,12,0,0,4174,4175,7,6,0,0,4175,4176,7,20,0,0,4176,480,1,0,0,0,4177,4178,7,4,0,0,4178,4179,7,3,0,0,4179,4180,7,10,0,0,4180,4181,5,95,0,0,4181,4182,7,20,0,0,4182,4183,7,19,0,0,4183,4184,7,17,0,0,4184,4185,7,8,0,0,4185,482,1,0,0,0,4186,4187,7,4,0,0,4187,4188,7,3,0,0,4188,4189,7,10,0,0,4189,4190,5,95,0,0,4190,4191,7,23,0,0,4191,4192,7,15,0,0,4192,4193,7,12,0,0,4193,4194,7,17,0,0,4194,4195,7,6,0,0,4195,4196,7,7,0,0,4196,484,1,0,0,0,4197,4198,7,4,0,0,4198,4199,7,3,0,0,4199,4200,7,10,0,0,4200,4201,5,95,0,0,4201,4202,7,11,0,0,4202,4203,7,7,0,0,4203,4204,7,14,0,0,4204,4205,7,19,0,0,4205,4206,7,12,0,0,4206,4207,7,4,0,0,4207,486,1,0,0,0,4208,4209,7,20,0,0,4209,4210,7,19,0,0,4210,4211,7,17,0,0,4211,4212,7,8,0,0,4212,4213,5,95,0,0,4213,4214,7,23,0,0,4214,4215,7,15,0,0,4215,4216,7,12,0,0,4216,4217,7,17,0,0,4217,4218,7,6,0,0,4218,4219,7,7,0,0,4219,488,1,0,0,0,4220,4221,7,20,0,0,4221,4222,7,19,0,0,4222,4223,7,17,0,0,4223,4224,7,8,0,0,4224,4225,5,95,0,0,4225,4226,7,11,0,0,4226,4227,7,7,0,0,4227,4228,7,14,0,0,4228,4229,7,19,0,0,4229,4230,7,12,0,0,4230,4231,7,4,0,0,4231,490,1,0,0,0,4232,4233,7,23,0,0,4233,4234,7,15,0,0,4234,4235,7,12,0,0,4235,4236,7,17,0,0,4236,4237,7,6,0,0,4237,4238,7,7,0,0,4238,4239,5,95,0,0,4239,4240,7,11,0,0,4240,4241,7,7,0,0,4241,4242,7,14,0,0,4242,4243,7,19,0,0,4243,4244,7,12,0,0,4244,4245,7,4,0,0,4245,492,1,0,0,0,4246,4247,7,11,0,0,4247,4248,7,7,0,0,4248,4249,7,14,0,0,4249,4250,7,19,0,0,4250,4251,7,12,0,0,4251,4252,7,4,0,0,4252,4253,5,95,0,0,4253,4254,7,23,0,0,4254,4255,7,15,0,0,4255,4256,7,14,0,0,4256,4257,7,8,0,0,4257,4258,7,19,0,0,4258,4259,7,11,0,0,4259,4260,7,7,0,0,4260,4261,7,14,0,0,4261,4262,7,19,0,0,4262,4263,7,12,0,0,4263,4264,7,4,0,0,4264,494,1,0,0,0,4265,4266,7,23,0,0,4266,4267,7,15,0,0,4267,4268,7,12,0,0,4268,4269,7,17,0,0,4269,4270,7,6,0,0,4270,4271,7,7,0,0,4271,4272,5,95,0,0,4272,4273,7,23,0,0,4273,4274,7,15,0,0,4274,4275,7,14,0,0,4275,4276,7,8,0,0,4276,4277,7,19,0,0,4277,4278,7,11,0,0,4278,4279,7,7,0,0,4279,4280,7,14,0,0,4280,4281,7,19,0,0,4281,4282,7,12,0,0,4282,4283,7,4,0,0,4283,496,1,0,0,0,4284,4285,7,20,0,0,4285,4286,7,19,0,0,4286,4287,7,17,0,0,4287,4288,7,8,0,0,4288,4289,5,95,0,0,4289,4290,7,23,0,0,4290,4291,7,15,0,0,4291,4292,7,14,0,0,4292,4293,7,8,0,0,4293,4294,7,19,0,0,4294,4295,7,11,0,0,4295,4296,7,7,0,0,4296,4297,7,14,0,0,4297,4298,7,19,0,0,4298,4299,7,12,0,0,4299,4300,7,4,0,0,4300,498,1,0,0,0,4301,4302,7,4,0,0,4302,4303,7,3,0,0,4303,4304,7,10,0,0,4304,4305,5,95,0,0,4305,4306,7,23,0,0,4306,4307,7,15,0,0,4307,4308,7,14,0,0,4308,4309,7,8,0,0,4309,4310,7,19,0,0,4310,4311,7,11,0,0,4311,4312,7,7,0,0,4312,4313,7,14,0,0,4313,4314,7,19,0,0,4314,4315,7,12,0,0,4315,4316,7,4,0,0,4316,500,1,0,0,0,4317,4318,7,27,0,0,4318,4319,7,11,0,0,4319,4320,7,19,0,0,4320,4321,7,12,0,0,4321,4322,5,95,0,0,4322,4323,7,3,0,0,4323,4324,7,8,0,0,4324,4325,7,8,0,0,4325,4326,7,3,0,0,4326,4327,7,10,0,0,4327,502,1,0,0,0,4328,4329,7,27,0,0,4329,4330,7,11,0,0,4330,4331,7,19,0,0,4331,4332,7,12,0,0,4332,4333,5,95,0,0,4333,4334,7,3,0,0,4334,4335,7,8,0,0,4335,4336,7,8,0,0,4336,4337,7,3,0,0,4337,4338,7,10,0,0,4338,4339,7,3,0,0,4339,4340,7,22,0,0,4340,4341,7,22,0,0,4341,504,1,0,0,0,4342,4343,7,27,0,0,4343,4344,7,11,0,0,4344,4345,7,19,0,0,4345,4346,7,12,0,0,4346,4347,5,95,0,0,4347,4348,7,3,0,0,4348,4349,7,8,0,0,4349,4350,7,8,0,0,4350,4351,7,3,0,0,4351,4352,7,10,0,0,4352,4353,5,95,0,0,4353,4354,7,3,0,0,4354,4355,7,25,0,0,4355,4356,7,25,0,0,4356,4357,7,7,0,0,4357,4358,7,12,0,0,4358,4359,7,4,0,0,4359,506,1,0,0,0,4360,4361,7,27,0,0,4361,4362,7,11,0,0,4362,4363,7,19,0,0,4363,4364,7,12,0,0,4364,4365,5,95,0,0,4365,4366,7,3,0,0,4366,4367,7,8,0,0,4367,4368,7,8,0,0,4368,4369,7,3,0,0,4369,4370,7,10,0,0,4370,4371,5,95,0,0,4371,4372,7,15,0,0,4372,4373,7,12,0,0,4373,4374,7,11,0,0,4374,4375,7,7,0,0,4375,4376,7,8,0,0,4376,4377,7,6,0,0,4377,508,1,0,0,0,4378,4379,7,27,0,0,4379,4380,7,11,0,0,4380,4381,7,19,0,0,4381,4382,7,12,0,0,4382,4383,5,95,0,0,4383,4384,7,14,0,0,4384,4385,7,19,0,0,4385,4386,7,12,0,0,4386,4387,7,6,0,0,4387,4388,7,3,0,0,4388,4389,7,15,0,0,4389,4390,7,12,0,0,4390,4391,7,11,0,0,4391,510,1,0,0,0,4392,4393,7,27,0,0,4393,4394,7,11,0,0,4394,4395,7,19,0,0,4395,4396,7,12,0,0,4396,4397,5,95,0,0,4397,4398,7,14,0,0,4398,4399,7,19,0,0,4399,4400,7,12,0,0,4400,4401,7,6,0,0,4401,4402,7,3,0,0,4402,4403,7,15,0,0,4403,4404,7,12,0,0,4404,4405,7,11,0,0,4405,4406,5,95,0,0,4406,4407,7,25,0,0,4407,4408,7,3,0,0,4408,4409,7,6,0,0,4409,4410,7,20,0,0,4410,512,1,0,0,0,4411,4412,7,27,0,0,4412,4413,7,11,0,0,4413,4414,7,19,0,0,4414,4415,7,12,0,0,4415,4416,5,95,0,0,4416,4417,7,4,0,0,4417,4418,7,7,0,0,4418,4419,7,25,0,0,4419,4420,7,6,0,0,4420,4421,7,20,0,0,4421,514,1,0,0,0,4422,4423,7,27,0,0,4423,4424,7,11,0,0,4424,4425,7,19,0,0,4425,4426,7,12,0,0,4426,4427,5,95,0,0,4427,4428,7,7,0,0,4428,4429,7,26,0,0,4429,4430,7,6,0,0,4430,4431,7,8,0,0,4431,4432,7,3,0,0,4432,4433,7,14,0,0,4433,4434,7,6,0,0,4434,516,1,0,0,0,4435,4436,7,27,0,0,4436,4437,7,11,0,0,4437,4438,7,19,0,0,4438,4439,7,12,0,0,4439,4440,5,95,0,0,4440,4441,7,15,0,0,4441,4442,7,12,0,0,4442,4443,7,11,0,0,4443,4444,7,7,0,0,4444,4445,7,8,0,0,4445,4446,7,6,0,0,4446,518,1,0,0,0,4447,4448,7,27,0,0,4448,4449,7,11,0,0,4449,4450,7,19,0,0,4450,4451,7,12,0,0,4451,4452,5,95,0,0,4452,4453,7,21,0,0,4453,4454,7,7,0,0,4454,4455,7,10,0,0,4455,4456,7,11,0,0,4456,520,1,0,0,0,4457,4458,7,27,0,0,4458,4459,7,11,0,0,4459,4460,7,19,0,0,4460,4461,7,12,0,0,4461,4462,5,95,0,0,4462,4463,7,5,0,0,4463,4464,7,7,0,0,4464,4465,7,12,0,0,4465,4466,7,22,0,0,4466,4467,7,6,0,0,4467,4468,7,20,0,0,4468,522,1,0,0,0,4469,4470,7,27,0,0,4470,4471,7,11,0,0,4471,4472,7,19,0,0,4472,4473,7,12,0,0,4473,4474,5,95,0,0,4474,4475,7,23,0,0,4475,4476,7,7,0,0,4476,4477,7,8,0,0,4477,4478,7,22,0,0,4478,4479,7,7,0,0,4479,524,1,0,0,0,4480,4481,7,27,0,0,4481,4482,7,11,0,0,4482,4483,7,19,0,0,4483,4484,7,12,0,0,4484,4485,5,95,0,0,4485,4486,7,23,0,0,4486,4487,7,7,0,0,4487,4488,7,8,0,0,4488,4489,7,22,0,0,4489,4490,7,7,0,0,4490,4491,5,95,0,0,4491,4492,7,25,0,0,4492,4493,7,3,0,0,4493,4494,7,6,0,0,4494,4495,7,14,0,0,4495,4496,7,20,0,0,4496,526,1,0,0,0,4497,4498,7,27,0,0,4498,4499,7,11,0,0,4499,4500,7,19,0,0,4500,4501,7,12,0,0,4501,4502,5,95,0,0,4502,4503,7,23,0,0,4503,4504,7,7,0,0,4504,4505,7,8,0,0,4505,4506,7,22,0,0,4506,4507,7,7,0,0,4507,4508,5,95,0,0,4508,4509,7,25,0,0,4509,4510,7,8,0,0,4510,4511,7,7,0,0,4511,4512,7,11,0,0,4512,4513,7,7,0,0,4513,4514,7,8,0,0,4514,4515,7,24,0,0,4515,4516,7,7,0,0,4516,528,1,0,0,0,4517,4518,7,27,0,0,4518,4519,7,11,0,0,4519,4520,7,19,0,0,4520,4521,7,12,0,0,4521,4522,5,95,0,0,4522,4523,7,19,0,0,4523,4524,7,16,0,0,4524,4525,7,27,0,0,4525,4526,7,7,0,0,4526,4527,7,14,0,0,4527,4528,7,6,0,0,4528,530,1,0,0,0,4529,4530,7,27,0,0,4530,4531,7,11,0,0,4531,4532,7,19,0,0,4532,4533,7,12,0,0,4533,4534,5,95,0,0,4534,4535,7,19,0,0,4535,4536,7,16,0,0,4536,4537,7,27,0,0,4537,4538,7,7,0,0,4538,4539,7,14,0,0,4539,4540,7,6,0,0,4540,4541,7,3,0,0,4541,4542,7,22,0,0,4542,4543,7,22,0,0,4543,532,1,0,0,0,4544,4545,7,27,0,0,4545,4546,7,11,0,0,4546,4547,7,19,0,0,4547,4548,7,12,0,0,4548,4549,5,95,0,0,4549,4550,7,19,0,0,4550,4551,7,24,0,0,4551,4552,7,7,0,0,4552,4553,7,8,0,0,4553,4554,7,5,0,0,4554,4555,7,3,0,0,4555,4556,7,25,0,0,4556,4557,7,11,0,0,4557,534,1,0,0,0,4558,4559,7,27,0,0,4559,4560,7,11,0,0,4560,4561,7,19,0,0,4561,4562,7,12,0,0,4562,4563,5,95,0,0,4563,4564,7,25,0,0,4564,4565,7,8,0,0,4565,4566,7,7,0,0,4566,4567,7,6,0,0,4567,4568,7,6,0,0,4568,4569,7,10,0,0,4569,536,1,0,0,0,4570,4571,7,27,0,0,4571,4572,7,11,0,0,4572,4573,7,19,0,0,4573,4574,7,12,0,0,4574,4575,5,95,0,0,4575,4576,7,28,0,0,4576,4577,7,17,0,0,4577,4578,7,19,0,0,4578,4579,7,6,0,0,4579,4580,7,7,0,0,4580,538,1,0,0,0,4581,4582,7,27,0,0,4582,4583,7,11,0,0,4583,4584,7,19,0,0,4584,4585,7,12,0,0,4585,4586,5,95,0,0,4586,4587,7,8,0,0,4587,4588,7,7,0,0,4588,4589,7,23,0,0,4589,4590,7,19,0,0,4590,4591,7,24,0,0,4591,4592,7,7,0,0,4592,540,1,0,0,0,4593,4594,7,27,0,0,4594,4595,7,11,0,0,4595,4596,7,19,0,0,4596,4597,7,12,0,0,4597,4598,5,95,0,0,4598,4599,7,8,0,0,4599,4600,7,7,0,0,4600,4601,7,25,0,0,4601,4602,7,5,0,0,4602,4603,7,3,0,0,4603,4604,7,14,0,0,4604,4605,7,7,0,0,4605,542,1,0,0,0,4606,4607,7,27,0,0,4607,4608,7,11,0,0,4608,4609,7,19,0,0,4609,4610,7,12,0,0,4610,4611,5,95,0,0,4611,4612,7,11,0,0,4612,4613,7,14,0,0,4613,4614,7,20,0,0,4614,4615,7,7,0,0,4615,4616,7,23,0,0,4616,4617,7,3,0,0,4617,4618,5,95,0,0,4618,4619,7,24,0,0,4619,4620,7,3,0,0,4620,4621,7,5,0,0,4621,4622,7,15,0,0,4622,4623,7,4,0,0,4623,544,1,0,0,0,4624,4625,7,27,0,0,4625,4626,7,11,0,0,4626,4627,7,19,0,0,4627,4628,7,12,0,0,4628,4629,5,95,0,0,4629,4630,7,11,0,0,4630,4631,7,14,0,0,4631,4632,7,20,0,0,4632,4633,7,7,0,0,4633,4634,7,23,0,0,4634,4635,7,3,0,0,4635,4636,5,95,0,0,4636,4637,7,24,0,0,4637,4638,7,3,0,0,4638,4639,7,5,0,0,4639,4640,7,15,0,0,4640,4641,7,4,0,0,4641,4642,7,3,0,0,4642,4643,7,6,0,0,4643,4644,7,15,0,0,4644,4645,7,19,0,0,4645,4646,7,12,0,0,4646,4647,5,95,0,0,4647,4648,7,8,0,0,4648,4649,7,7,0,0,4649,4650,7,25,0,0,4650,4651,7,19,0,0,4651,4652,7,8,0,0,4652,4653,7,6,0,0,4653,546,1,0,0,0,4654,4655,7,27,0,0,4655,4656,7,11,0,0,4656,4657,7,19,0,0,4657,4658,7,12,0,0,4658,4659,5,95,0,0,4659,4660,7,11,0,0,4660,4661,7,7,0,0,4661,4662,7,3,0,0,4662,4663,7,8,0,0,4663,4664,7,14,0,0,4664,4665,7,20,0,0,4665,548,1,0,0,0,4666,4667,7,27,0,0,4667,4668,7,11,0,0,4668,4669,7,19,0,0,4669,4670,7,12,0,0,4670,4671,5,95,0,0,4671,4672,7,11,0,0,4672,4673,7,7,0,0,4673,4674,7,6,0,0,4674,550,1,0,0,0,4675,4676,7,27,0,0,4676,4677,7,11,0,0,4677,4678,7,19,0,0,4678,4679,7,12,0,0,4679,4680,5,95,0,0,4680,4681,7,11,0,0,4681,4682,7,6,0,0,4682,4683,7,19,0,0,4683,4684,7,8,0,0,4684,4685,7,3,0,0,4685,4686,7,22,0,0,4686,4687,7,7,0,0,4687,4688,5,95,0,0,4688,4689,7,18,0,0,4689,4690,7,8,0,0,4690,4691,7,7,0,0,4691,4692,7,7,0,0,4692,552,1,0,0,0,4693,4694,7,27,0,0,4694,4695,7,11,0,0,4695,4696,7,19,0,0,4696,4697,7,12,0,0,4697,4698,5,95,0,0,4698,4699,7,11,0,0,4699,4700,7,6,0,0,4700,4701,7,19,0,0,4701,4702,7,8,0,0,4702,4703,7,3,0,0,4703,4704,7,22,0,0,4704,4705,7,7,0,0,4705,4706,5,95,0,0,4706,4707,7,11,0,0,4707,4708,7,15,0,0,4708,4709,7,13,0,0,4709,4710,7,7,0,0,4710,554,1,0,0,0,4711,4712,7,27,0,0,4712,4713,7,11,0,0,4713,4714,7,19,0,0,4714,4715,7,12,0,0,4715,4716,5,95,0,0,4716,4717,7,6,0,0,4717,4718,7,3,0,0,4718,4719,7,16,0,0,4719,4720,7,5,0,0,4720,4721,7,7,0,0,4721,556,1,0,0,0,4722,4723,7,27,0,0,4723,4724,7,11,0,0,4724,4725,7,19,0,0,4725,4726,7,12,0,0,4726,4727,5,95,0,0,4727,4728,7,6,0,0,4728,4729,7,10,0,0,4729,4730,7,25,0,0,4730,4731,7,7,0,0,4731,558,1,0,0,0,4732,4733,7,27,0,0,4733,4734,7,11,0,0,4734,4735,7,19,0,0,4735,4736,7,12,0,0,4736,4737,5,95,0,0,4737,4738,7,17,0,0,4738,4739,7,12,0,0,4739,4740,7,28,0,0,4740,4741,7,17,0,0,4741,4742,7,19,0,0,4742,4743,7,6,0,0,4743,4744,7,7,0,0,4744,560,1,0,0,0,4745,4746,7,27,0,0,4746,4747,7,11,0,0,4747,4748,7,19,0,0,4748,4749,7,12,0,0,4749,4750,5,95,0,0,4750,4751,7,24,0,0,4751,4752,7,3,0,0,4752,4753,7,5,0,0,4753,4754,7,15,0,0,4754,4755,7,4,0,0,4755,562,1,0,0,0,4756,4757,7,27,0,0,4757,4758,7,11,0,0,4758,4759,7,19,0,0,4759,4760,7,12,0,0,4760,4761,5,95,0,0,4761,4762,7,24,0,0,4762,4763,7,3,0,0,4763,4764,7,5,0,0,4764,4765,7,17,0,0,4765,4766,7,7,0,0,4766,564,1,0,0,0,4767,4768,7,12,0,0,4768,4769,7,7,0,0,4769,4770,7,11,0,0,4770,4771,7,6,0,0,4771,4772,7,7,0,0,4772,4773,7,4,0,0,4773,566,1,0,0,0,4774,4775,7,19,0,0,4775,4776,7,8,0,0,4776,4777,7,4,0,0,4777,4778,7,15,0,0,4778,4779,7,12,0,0,4779,4780,7,3,0,0,4780,4781,7,5,0,0,4781,4782,7,15,0,0,4782,4783,7,6,0,0,4783,4784,7,10,0,0,4784,568,1,0,0,0,4785,4786,7,25,0,0,4786,4787,7,3,0,0,4787,4788,7,6,0,0,4788,4789,7,20,0,0,4789,570,1,0,0,0,4790,4791,7,3,0,0,4791,4792,7,24,0,0,4792,4793,7,22,0,0,4793,572,1,0,0,0,4794,4795,7,16,0,0,4795,4796,7,15,0,0,4796,4797,7,6,0,0,4797,4798,5,95,0,0,4798,4799,7,3,0,0,4799,4800,7,12,0,0,4800,4801,7,4,0,0,4801,574,1,0,0,0,4802,4803,7,16,0,0,4803,4804,7,15,0,0,4804,4805,7,6,0,0,4805,4806,5,95,0,0,4806,4807,7,19,0,0,4807,4808,7,8,0,0,4808,576,1,0,0,0,4809,4810,7,16,0,0,4810,4811,7,15,0,0,4811,4812,7,6,0,0,4812,4813,5,95,0,0,4813,4814,7,26,0,0,4814,4815,7,19,0,0,4815,4816,7,8,0,0,4816,578,1,0,0,0,4817,4818,7,14,0,0,4818,4819,7,19,0,0,4819,4820,7,17,0,0,4820,4821,7,12,0,0,4821,4822,7,6,0,0,4822,580,1,0,0,0,4823,4824,7,14,0,0,4824,4825,7,17,0,0,4825,4826,7,23,0,0,4826,4827,7,7,0,0,4827,4828,5,95,0,0,4828,4829,7,4,0,0,4829,4830,7,15,0,0,4830,4831,7,11,0,0,4831,4832,7,6,0,0,4832,582,1,0,0,0,4833,4834,7,4,0,0,4834,4835,7,7,0,0,4835,4836,7,12,0,0,4836,4837,7,11,0,0,4837,4838,7,7,0,0,4838,4839,5,95,0,0,4839,4840,7,8,0,0,4840,4841,7,3,0,0,4841,4842,7,12,0,0,4842,4843,7,21,0,0,4843,584,1,0,0,0,4844,4845,7,18,0,0,4845,4846,7,15,0,0,4846,4847,7,8,0,0,4847,4848,7,11,0,0,4848,4849,7,6,0,0,4849,4850,5,95,0,0,4850,4851,7,24,0,0,4851,4852,7,3,0,0,4852,4853,7,5,0,0,4853,4854,7,17,0,0,4854,4855,7,7,0,0,4855,586,1,0,0,0,4856,4857,7,22,0,0,4857,4858,7,8,0,0,4858,4859,7,19,0,0,4859,4860,7,17,0,0,4860,4861,7,25,0,0,4861,4862,5,95,0,0,4862,4863,7,14,0,0,4863,4864,7,19,0,0,4864,4865,7,12,0,0,4865,4866,7,14,0,0,4866,4867,7,3,0,0,4867,4868,7,6,0,0,4868,588,1,0,0,0,4869,4870,7,5,0,0,4870,4871,7,3,0,0,4871,4872,7,22,0,0,4872,590,1,0,0,0,4873,4874,7,5,0,0,4874,4875,7,3,0,0,4875,4876,7,11,0,0,4876,4877,7,6,0,0,4877,4878,5,95,0,0,4878,4879,7,24,0,0,4879,4880,7,3,0,0,4880,4881,7,5,0,0,4881,4882,7,17,0,0,4882,4883,7,7,0,0,4883,592,1,0,0,0,4884,4885,7,5,0,0,4885,4886,7,7,0,0,4886,4887,7,3,0,0,4887,4888,7,4,0,0,4888,594,1,0,0,0,4889,4890,7,23,0,0,4890,4891,7,3,0,0,4891,4892,7,26,0,0,4892,596,1,0,0,0,4893,4894,7,23,0,0,4894,4895,7,15,0,0,4895,4896,7,12,0,0,4896,598,1,0,0,0,4897,4898,7,12,0,0,4898,4899,7,6,0,0,4899,4900,7,15,0,0,4900,4901,7,5,0,0,4901,4902,7,7,0,0,4902,600,1,0,0,0,4903,4904,7,12,0,0,4904,4905,7,6,0,0,4905,4906,7,20,0,0,4906,4907,5,95,0,0,4907,4908,7,24,0,0,4908,4909,7,3,0,0,4909,4910,7,5,0,0,4910,4911,7,17,0,0,4911,4912,7,7,0,0,4912,602,1,0,0,0,4913,4914,7,25,0,0,4914,4915,7,7,0,0,4915,4916,7,8,0,0,4916,4917,7,14,0,0,4917,4918,7,7,0,0,4918,4919,7,12,0,0,4919,4920,7,6,0,0,4920,4921,5,95,0,0,4921,4922,7,8,0,0,4922,4923,7,3,0,0,4923,4924,7,12,0,0,4924,4925,7,21,0,0,4925,604,1,0,0,0,4926,4927,7,8,0,0,4927,4928,7,3,0,0,4928,4929,7,12,0,0,4929,4930,7,21,0,0,4930,606,1,0,0,0,4931,4932,7,8,0,0,4932,4933,7,19,0,0,4933,4934,7,9,0,0,4934,4935,5,95,0,0,4935,4936,7,12,0,0,4936,4937,7,17,0,0,4937,4938,7,23,0,0,4938,4939,7,16,0,0,4939,4940,7,7,0,0,4940,4941,7,8,0,0,4941,608,1,0,0,0,4942,4943,7,11,0,0,4943,4944,7,6,0,0,4944,4945,7,4,0,0,4945,610,1,0,0,0,4946,4947,7,11,0,0,4947,4948,7,6,0,0,4948,4949,7,4,0,0,4949,4950,7,4,0,0,4950,4951,7,7,0,0,4951,4952,7,24,0,0,4952,612,1,0,0,0,4953,4954,7,11,0,0,4954,4955,7,6,0,0,4955,4956,7,4,0,0,4956,4957,7,4,0,0,4957,4958,7,7,0,0,4958,4959,7,24,0,0,4959,4960,5,95,0,0,4960,4961,7,25,0,0,4961,4962,7,19,0,0,4962,4963,7,25,0,0,4963,614,1,0,0,0,4964,4965,7,11,0,0,4965,4966,7,6,0,0,4966,4967,7,4,0,0,4967,4968,7,4,0,0,4968,4969,7,7,0,0,4969,4970,7,24,0,0,4970,4971,5,95,0,0,4971,4972,7,11,0,0,4972,4973,7,3,0,0,4973,4974,7,23,0,0,4974,4975,7,25,0,0,4975,616,1,0,0,0,4976,4977,7,11,0,0,4977,4978,7,17,0,0,4978,4979,7,23,0,0,4979,618,1,0,0,0,4980,4981,7,24,0,0,4981,4982,7,3,0,0,4982,4983,7,8,0,0,4983,4984,5,95,0,0,4984,4985,7,25,0,0,4985,4986,7,19,0,0,4986,4987,7,25,0,0,4987,620,1,0,0,0,4988,4989,7,24,0,0,4989,4990,7,3,0,0,4990,4991,7,8,0,0,4991,4992,5,95,0,0,4992,4993,7,11,0,0,4993,4994,7,3,0,0,4994,4995,7,23,0,0,4995,4996,7,25,0,0,4996,622,1,0,0,0,4997,4998,7,24,0,0,4998,4999,7,3,0,0,4999,5e3,7,8,0,0,5e3,5001,7,15,0,0,5001,5002,7,3,0,0,5002,5003,7,12,0,0,5003,5004,7,14,0,0,5004,5005,7,7,0,0,5005,624,1,0,0,0,5006,5007,7,14,0,0,5007,5008,7,17,0,0,5008,5009,7,8,0,0,5009,5010,7,8,0,0,5010,5011,7,7,0,0,5011,5012,7,12,0,0,5012,5013,7,6,0,0,5013,5014,5,95,0,0,5014,5015,7,4,0,0,5015,5016,7,3,0,0,5016,5017,7,6,0,0,5017,5018,7,7,0,0,5018,626,1,0,0,0,5019,5020,7,14,0,0,5020,5021,7,17,0,0,5021,5022,7,8,0,0,5022,5023,7,8,0,0,5023,5024,7,7,0,0,5024,5025,7,12,0,0,5025,5026,7,6,0,0,5026,5027,5,95,0,0,5027,5028,7,6,0,0,5028,5029,7,15,0,0,5029,5030,7,23,0,0,5030,5031,7,7,0,0,5031,628,1,0,0,0,5032,5033,7,14,0,0,5033,5034,7,17,0,0,5034,5035,7,8,0,0,5035,5036,7,8,0,0,5036,5037,7,7,0,0,5037,5038,7,12,0,0,5038,5039,7,6,0,0,5039,5040,5,95,0,0,5040,5041,7,6,0,0,5041,5042,7,15,0,0,5042,5043,7,23,0,0,5043,5044,7,7,0,0,5044,5045,7,11,0,0,5045,5046,7,6,0,0,5046,5047,7,3,0,0,5047,5048,7,23,0,0,5048,5049,7,25,0,0,5049,630,1,0,0,0,5050,5051,7,5,0,0,5051,5052,7,19,0,0,5052,5053,7,14,0,0,5053,5054,7,3,0,0,5054,5055,7,5,0,0,5055,5056,7,6,0,0,5056,5057,7,15,0,0,5057,5058,7,23,0,0,5058,5059,7,7,0,0,5059,632,1,0,0,0,5060,5061,7,14,0,0,5061,5062,7,17,0,0,5062,5063,7,8,0,0,5063,5064,7,4,0,0,5064,5065,7,3,0,0,5065,5066,7,6,0,0,5066,5067,7,7,0,0,5067,634,1,0,0,0,5068,5069,7,14,0,0,5069,5070,7,17,0,0,5070,5071,7,8,0,0,5071,5072,7,6,0,0,5072,5073,7,15,0,0,5073,5074,7,23,0,0,5074,5075,7,7,0,0,5075,636,1,0,0,0,5076,5077,7,4,0,0,5077,5078,7,3,0,0,5078,5079,7,6,0,0,5079,5080,7,7,0,0,5080,5081,5,95,0,0,5081,5082,7,3,0,0,5082,5083,7,4,0,0,5083,5084,7,4,0,0,5084,638,1,0,0,0,5085,5086,7,4,0,0,5086,5087,7,3,0,0,5087,5088,7,6,0,0,5088,5089,7,7,0,0,5089,5090,5,95,0,0,5090,5091,7,11,0,0,5091,5092,7,17,0,0,5092,5093,7,16,0,0,5093,640,1,0,0,0,5094,5095,7,7,0,0,5095,5096,7,26,0,0,5096,5097,7,6,0,0,5097,5098,7,8,0,0,5098,5099,7,3,0,0,5099,5100,7,14,0,0,5100,5101,7,6,0,0,5101,642,1,0,0,0,5102,5103,7,5,0,0,5103,5104,7,19,0,0,5104,5105,7,14,0,0,5105,5106,7,3,0,0,5106,5107,7,5,0,0,5107,5108,7,6,0,0,5108,5109,7,15,0,0,5109,5110,7,23,0,0,5110,5111,7,7,0,0,5111,5112,7,11,0,0,5112,5113,7,6,0,0,5113,5114,7,3,0,0,5114,5115,7,23,0,0,5115,5116,7,25,0,0,5116,644,1,0,0,0,5117,5118,7,12,0,0,5118,5119,7,19,0,0,5119,5120,7,9,0,0,5120,646,1,0,0,0,5121,5122,7,25,0,0,5122,5123,7,19,0,0,5123,5124,7,11,0,0,5124,5125,7,15,0,0,5125,5126,7,6,0,0,5126,5127,7,15,0,0,5127,5128,7,19,0,0,5128,5129,7,12,0,0,5129,648,1,0,0,0,5130,5131,7,11,0,0,5131,5132,7,17,0,0,5132,5133,7,16,0,0,5133,5134,7,11,0,0,5134,5135,7,6,0,0,5135,5136,7,8,0,0,5136,650,1,0,0,0,5137,5138,7,11,0,0,5138,5139,7,17,0,0,5139,5140,7,16,0,0,5140,5141,7,11,0,0,5141,5142,7,6,0,0,5142,5143,7,8,0,0,5143,5144,7,15,0,0,5144,5145,7,12,0,0,5145,5146,7,22,0,0,5146,652,1,0,0,0,5147,5148,7,11,0,0,5148,5149,7,10,0,0,5149,5150,7,11,0,0,5150,5151,7,4,0,0,5151,5152,7,3,0,0,5152,5153,7,6,0,0,5153,5154,7,7,0,0,5154,654,1,0,0,0,5155,5156,7,6,0,0,5156,5157,7,8,0,0,5157,5158,7,15,0,0,5158,5159,7,23,0,0,5159,656,1,0,0,0,5160,5161,7,17,0,0,5161,5162,7,6,0,0,5162,5163,7,14,0,0,5163,5164,5,95,0,0,5164,5165,7,4,0,0,5165,5166,7,3,0,0,5166,5167,7,6,0,0,5167,5168,7,7,0,0,5168,658,1,0,0,0,5169,5170,7,17,0,0,5170,5171,7,6,0,0,5171,5172,7,14,0,0,5172,5173,5,95,0,0,5173,5174,7,6,0,0,5174,5175,7,15,0,0,5175,5176,7,23,0,0,5176,5177,7,7,0,0,5177,660,1,0,0,0,5178,5179,7,17,0,0,5179,5180,7,6,0,0,5180,5181,7,14,0,0,5181,5182,5,95,0,0,5182,5183,7,6,0,0,5183,5184,7,15,0,0,5184,5185,7,23,0,0,5185,5186,7,7,0,0,5186,5187,7,11,0,0,5187,5188,7,6,0,0,5188,5189,7,3,0,0,5189,5190,7,23,0,0,5190,5191,7,25,0,0,5191,662,1,0,0,0,5192,5193,7,3,0,0,5193,5194,7,14,0,0,5194,5195,7,14,0,0,5195,5196,7,19,0,0,5196,5197,7,17,0,0,5197,5198,7,12,0,0,5198,5199,7,6,0,0,5199,664,1,0,0,0,5200,5201,7,3,0,0,5201,5202,7,14,0,0,5202,5203,7,6,0,0,5203,5204,7,15,0,0,5204,5205,7,19,0,0,5205,5206,7,12,0,0,5206,666,1,0,0,0,5207,5208,7,3,0,0,5208,5209,7,18,0,0,5209,5210,7,6,0,0,5210,5211,7,7,0,0,5211,5212,7,8,0,0,5212,668,1,0,0,0,5213,5214,7,3,0,0,5214,5215,7,22,0,0,5215,5216,7,22,0,0,5216,5217,7,8,0,0,5217,5218,7,7,0,0,5218,5219,7,22,0,0,5219,5220,7,3,0,0,5220,5221,7,6,0,0,5221,5222,7,7,0,0,5222,670,1,0,0,0,5223,5224,7,3,0,0,5224,5225,7,5,0,0,5225,5226,7,22,0,0,5226,5227,7,19,0,0,5227,5228,7,8,0,0,5228,5229,7,15,0,0,5229,5230,7,6,0,0,5230,5231,7,20,0,0,5231,5232,7,23,0,0,5232,672,1,0,0,0,5233,5234,7,3,0,0,5234,5235,7,12,0,0,5235,5236,7,10,0,0,5236,674,1,0,0,0,5237,5238,7,3,0,0,5238,5239,7,6,0,0,5239,676,1,0,0,0,5240,5241,7,3,0,0,5241,5242,7,17,0,0,5242,5243,7,6,0,0,5243,5244,7,20,0,0,5244,5245,7,19,0,0,5245,5246,7,8,0,0,5246,5247,7,11,0,0,5247,678,1,0,0,0,5248,5249,7,3,0,0,5249,5250,7,17,0,0,5250,5251,7,6,0,0,5251,5252,7,19,0,0,5252,5253,7,14,0,0,5253,5254,7,19,0,0,5254,5255,7,23,0,0,5255,5256,7,23,0,0,5256,5257,7,15,0,0,5257,5258,7,6,0,0,5258,680,1,0,0,0,5259,5260,7,3,0,0,5260,5261,7,17,0,0,5261,5262,7,6,0,0,5262,5263,7,19,0,0,5263,5264,7,7,0,0,5264,5265,7,26,0,0,5265,5266,7,6,0,0,5266,5267,7,7,0,0,5267,5268,7,12,0,0,5268,5269,7,4,0,0,5269,5270,5,95,0,0,5270,5271,7,11,0,0,5271,5272,7,15,0,0,5272,5273,7,13,0,0,5273,5274,7,7,0,0,5274,682,1,0,0,0,5275,5276,7,3,0,0,5276,5277,7,17,0,0,5277,5278,7,6,0,0,5278,5279,7,19,0,0,5279,5280,5,95,0,0,5280,5281,7,15,0,0,5281,5282,7,12,0,0,5282,5283,7,14,0,0,5283,5284,7,8,0,0,5284,5285,7,7,0,0,5285,5286,7,23,0,0,5286,5287,7,7,0,0,5287,5288,7,12,0,0,5288,5289,7,6,0,0,5289,684,1,0,0,0,5290,5291,7,3,0,0,5291,5292,7,24,0,0,5292,5293,7,22,0,0,5293,5294,5,95,0,0,5294,5295,7,8,0,0,5295,5296,7,19,0,0,5296,5297,7,9,0,0,5297,5298,5,95,0,0,5298,5299,7,5,0,0,5299,5300,7,7,0,0,5300,5301,7,12,0,0,5301,5302,7,22,0,0,5302,5303,7,6,0,0,5303,5304,7,20,0,0,5304,686,1,0,0,0,5305,5306,7,16,0,0,5306,5307,7,7,0,0,5307,5308,7,22,0,0,5308,5309,7,15,0,0,5309,5310,7,12,0,0,5310,688,1,0,0,0,5311,5312,7,16,0,0,5312,5313,7,15,0,0,5313,5314,7,12,0,0,5314,5315,7,5,0,0,5315,5316,7,19,0,0,5316,5317,7,22,0,0,5317,690,1,0,0,0,5318,5319,7,16,0,0,5319,5320,7,15,0,0,5320,5321,7,6,0,0,5321,692,1,0,0,0,5322,5323,7,16,0,0,5323,5324,7,5,0,0,5324,5325,7,19,0,0,5325,5326,7,14,0,0,5326,5327,7,21,0,0,5327,694,1,0,0,0,5328,5329,7,16,0,0,5329,5330,7,19,0,0,5330,5331,7,19,0,0,5331,5332,7,5,0,0,5332,696,1,0,0,0,5333,5334,7,16,0,0,5334,5335,7,19,0,0,5335,5336,7,19,0,0,5336,5337,7,5,0,0,5337,5338,7,7,0,0,5338,5339,7,3,0,0,5339,5340,7,12,0,0,5340,698,1,0,0,0,5341,5342,7,16,0,0,5342,5343,7,6,0,0,5343,5344,7,8,0,0,5344,5345,7,7,0,0,5345,5346,7,7,0,0,5346,700,1,0,0,0,5347,5348,7,14,0,0,5348,5349,7,3,0,0,5349,5350,7,14,0,0,5350,5351,7,20,0,0,5351,5352,7,7,0,0,5352,702,1,0,0,0,5353,5354,7,14,0,0,5354,5355,7,3,0,0,5355,5356,7,11,0,0,5356,5357,7,14,0,0,5357,5358,7,3,0,0,5358,5359,7,4,0,0,5359,5360,7,7,0,0,5360,5361,7,4,0,0,5361,704,1,0,0,0,5362,5363,7,14,0,0,5363,5364,7,20,0,0,5364,5365,7,3,0,0,5365,5366,7,15,0,0,5366,5367,7,12,0,0,5367,706,1,0,0,0,5368,5369,7,14,0,0,5369,5370,7,20,0,0,5370,5371,7,3,0,0,5371,5372,7,12,0,0,5372,5373,7,22,0,0,5373,5374,7,7,0,0,5374,5375,7,4,0,0,5375,708,1,0,0,0,5376,5377,7,14,0,0,5377,5378,7,20,0,0,5378,5379,7,3,0,0,5379,5380,7,12,0,0,5380,5381,7,12,0,0,5381,5382,7,7,0,0,5382,5383,7,5,0,0,5383,710,1,0,0,0,5384,5385,7,14,0,0,5385,5386,7,20,0,0,5386,5387,7,7,0,0,5387,5388,7,14,0,0,5388,5389,7,21,0,0,5389,5390,7,11,0,0,5390,5391,7,17,0,0,5391,5392,7,23,0,0,5392,712,1,0,0,0,5393,5394,7,25,0,0,5394,5395,7,3,0,0,5395,5396,7,22,0,0,5396,5397,7,7,0,0,5397,5398,5,95,0,0,5398,5399,7,14,0,0,5399,5400,7,20,0,0,5400,5401,7,7,0,0,5401,5402,7,14,0,0,5402,5403,7,21,0,0,5403,5404,7,11,0,0,5404,5405,7,17,0,0,5405,5406,7,23,0,0,5406,714,1,0,0,0,5407,5408,7,14,0,0,5408,5409,7,15,0,0,5409,5410,7,25,0,0,5410,5411,7,20,0,0,5411,5412,7,7,0,0,5412,5413,7,8,0,0,5413,716,1,0,0,0,5414,5415,7,14,0,0,5415,5416,7,5,0,0,5416,5417,7,3,0,0,5417,5418,7,11,0,0,5418,5419,7,11,0,0,5419,5420,5,95,0,0,5420,5421,7,19,0,0,5421,5422,7,8,0,0,5422,5423,7,15,0,0,5423,5424,7,22,0,0,5424,5425,7,15,0,0,5425,5426,7,12,0,0,5426,718,1,0,0,0,5427,5428,7,14,0,0,5428,5429,7,5,0,0,5429,5430,7,15,0,0,5430,5431,7,7,0,0,5431,5432,7,12,0,0,5432,5433,7,6,0,0,5433,720,1,0,0,0,5434,5435,7,14,0,0,5435,5436,7,5,0,0,5436,5437,7,19,0,0,5437,5438,7,11,0,0,5438,5439,7,7,0,0,5439,722,1,0,0,0,5440,5441,7,14,0,0,5441,5442,7,5,0,0,5442,5443,7,17,0,0,5443,5444,7,11,0,0,5444,5445,7,6,0,0,5445,5446,7,7,0,0,5446,5447,7,8,0,0,5447,5448,7,15,0,0,5448,5449,7,12,0,0,5449,5450,7,22,0,0,5450,724,1,0,0,0,5451,5452,7,14,0,0,5452,5453,7,19,0,0,5453,5454,7,3,0,0,5454,5455,7,5,0,0,5455,5456,7,7,0,0,5456,5457,7,11,0,0,5457,5458,7,14,0,0,5458,5459,7,7,0,0,5459,726,1,0,0,0,5460,5461,7,14,0,0,5461,5462,7,19,0,0,5462,5463,7,4,0,0,5463,5464,7,7,0,0,5464,728,1,0,0,0,5465,5466,7,14,0,0,5466,5467,7,19,0,0,5467,5468,7,5,0,0,5468,5469,7,17,0,0,5469,5470,7,23,0,0,5470,5471,7,12,0,0,5471,5472,7,11,0,0,5472,730,1,0,0,0,5473,5474,7,14,0,0,5474,5475,7,19,0,0,5475,5476,7,5,0,0,5476,5477,7,17,0,0,5477,5478,7,23,0,0,5478,5479,7,12,0,0,5479,5480,5,95,0,0,5480,5481,7,18,0,0,5481,5482,7,19,0,0,5482,5483,7,8,0,0,5483,5484,7,23,0,0,5484,5485,7,3,0,0,5485,5486,7,6,0,0,5486,732,1,0,0,0,5487,5488,7,14,0,0,5488,5489,7,19,0,0,5489,5490,7,5,0,0,5490,5491,7,17,0,0,5491,5492,7,23,0,0,5492,5493,7,12,0,0,5493,5494,5,95,0,0,5494,5495,7,12,0,0,5495,5496,7,3,0,0,5496,5497,7,23,0,0,5497,5498,7,7,0,0,5498,734,1,0,0,0,5499,5500,7,14,0,0,5500,5501,7,19,0,0,5501,5502,7,23,0,0,5502,5503,7,23,0,0,5503,5504,7,7,0,0,5504,5505,7,12,0,0,5505,5506,7,6,0,0,5506,736,1,0,0,0,5507,5508,7,14,0,0,5508,5509,7,19,0,0,5509,5510,7,23,0,0,5510,5511,7,23,0,0,5511,5512,7,15,0,0,5512,5513,7,6,0,0,5513,738,1,0,0,0,5514,5515,7,14,0,0,5515,5516,7,19,0,0,5516,5517,7,23,0,0,5517,5518,7,25,0,0,5518,5519,7,3,0,0,5519,5520,7,14,0,0,5520,5521,7,6,0,0,5521,740,1,0,0,0,5522,5523,7,14,0,0,5523,5524,7,19,0,0,5524,5525,7,23,0,0,5525,5526,7,25,0,0,5526,5527,7,5,0,0,5527,5528,7,7,0,0,5528,5529,7,6,0,0,5529,5530,7,15,0,0,5530,5531,7,19,0,0,5531,5532,7,12,0,0,5532,742,1,0,0,0,5533,5534,7,14,0,0,5534,5535,7,19,0,0,5535,5536,7,23,0,0,5536,5537,7,25,0,0,5537,5538,7,8,0,0,5538,5539,7,7,0,0,5539,5540,7,11,0,0,5540,5541,7,11,0,0,5541,5542,7,7,0,0,5542,5543,7,4,0,0,5543,744,1,0,0,0,5544,5545,7,14,0,0,5545,5546,7,19,0,0,5546,5547,7,23,0,0,5547,5548,7,25,0,0,5548,5549,7,8,0,0,5549,5550,7,7,0,0,5550,5551,7,11,0,0,5551,5552,7,11,0,0,5552,5553,7,15,0,0,5553,5554,7,19,0,0,5554,5555,7,12,0,0,5555,746,1,0,0,0,5556,5557,7,14,0,0,5557,5558,7,19,0,0,5558,5559,7,12,0,0,5559,5560,7,14,0,0,5560,5561,7,17,0,0,5561,5562,7,8,0,0,5562,5563,7,8,0,0,5563,5564,7,7,0,0,5564,5565,7,12,0,0,5565,5566,7,6,0,0,5566,748,1,0,0,0,5567,5568,7,14,0,0,5568,5569,7,19,0,0,5569,5570,7,12,0,0,5570,5571,7,12,0,0,5571,5572,7,7,0,0,5572,5573,7,14,0,0,5573,5574,7,6,0,0,5574,750,1,0,0,0,5575,5576,7,14,0,0,5576,5577,7,19,0,0,5577,5578,7,12,0,0,5578,5579,7,12,0,0,5579,5580,7,7,0,0,5580,5581,7,14,0,0,5581,5582,7,6,0,0,5582,5583,7,15,0,0,5583,5584,7,19,0,0,5584,5585,7,12,0,0,5585,752,1,0,0,0,5586,5587,7,14,0,0,5587,5588,7,19,0,0,5588,5589,7,12,0,0,5589,5590,7,11,0,0,5590,5591,7,15,0,0,5591,5592,7,11,0,0,5592,5593,7,6,0,0,5593,5594,7,7,0,0,5594,5595,7,12,0,0,5595,5596,7,6,0,0,5596,754,1,0,0,0,5597,5598,7,14,0,0,5598,5599,7,19,0,0,5599,5600,7,12,0,0,5600,5601,7,11,0,0,5601,5602,7,6,0,0,5602,5603,7,8,0,0,5603,5604,7,3,0,0,5604,5605,7,15,0,0,5605,5606,7,12,0,0,5606,5607,7,6,0,0,5607,5608,5,95,0,0,5608,5609,7,14,0,0,5609,5610,7,3,0,0,5610,5611,7,6,0,0,5611,5612,7,3,0,0,5612,5613,7,5,0,0,5613,5614,7,19,0,0,5614,5615,7,22,0,0,5615,756,1,0,0,0,5616,5617,7,14,0,0,5617,5618,7,19,0,0,5618,5619,7,12,0,0,5619,5620,7,11,0,0,5620,5621,7,6,0,0,5621,5622,7,8,0,0,5622,5623,7,3,0,0,5623,5624,7,15,0,0,5624,5625,7,12,0,0,5625,5626,7,6,0,0,5626,5627,5,95,0,0,5627,5628,7,11,0,0,5628,5629,7,14,0,0,5629,5630,7,20,0,0,5630,5631,7,7,0,0,5631,5632,7,23,0,0,5632,5633,7,3,0,0,5633,758,1,0,0,0,5634,5635,7,14,0,0,5635,5636,7,19,0,0,5636,5637,7,12,0,0,5637,5638,7,11,0,0,5638,5639,7,6,0,0,5639,5640,7,8,0,0,5640,5641,7,3,0,0,5641,5642,7,15,0,0,5642,5643,7,12,0,0,5643,5644,7,6,0,0,5644,5645,5,95,0,0,5645,5646,7,12,0,0,5646,5647,7,3,0,0,5647,5648,7,23,0,0,5648,5649,7,7,0,0,5649,760,1,0,0,0,5650,5651,7,14,0,0,5651,5652,7,19,0,0,5652,5653,7,12,0,0,5653,5654,7,6,0,0,5654,5655,7,3,0,0,5655,5656,7,15,0,0,5656,5657,7,12,0,0,5657,5658,7,11,0,0,5658,762,1,0,0,0,5659,5660,7,14,0,0,5660,5661,7,19,0,0,5661,5662,7,12,0,0,5662,5663,7,6,0,0,5663,5664,7,7,0,0,5664,5665,7,26,0,0,5665,5666,7,6,0,0,5666,764,1,0,0,0,5667,5668,7,14,0,0,5668,5669,7,19,0,0,5669,5670,7,12,0,0,5670,5671,7,6,0,0,5671,5672,7,8,0,0,5672,5673,7,15,0,0,5673,5674,7,16,0,0,5674,5675,7,17,0,0,5675,5676,7,6,0,0,5676,5677,7,19,0,0,5677,5678,7,8,0,0,5678,5679,7,11,0,0,5679,766,1,0,0,0,5680,5681,7,14,0,0,5681,5682,7,19,0,0,5682,5683,7,25,0,0,5683,5684,7,10,0,0,5684,768,1,0,0,0,5685,5686,7,14,0,0,5686,5687,7,25,0,0,5687,5688,7,17,0,0,5688,770,1,0,0,0,5689,5690,7,14,0,0,5690,5691,7,10,0,0,5691,5692,7,14,0,0,5692,5693,7,5,0,0,5693,5694,7,7,0,0,5694,772,1,0,0,0,5695,5696,7,14,0,0,5696,5697,7,17,0,0,5697,5698,7,8,0,0,5698,5699,7,11,0,0,5699,5700,7,19,0,0,5700,5701,7,8,0,0,5701,5702,5,95,0,0,5702,5703,7,12,0,0,5703,5704,7,3,0,0,5704,5705,7,23,0,0,5705,5706,7,7,0,0,5706,774,1,0,0,0,5707,5708,7,4,0,0,5708,5709,7,3,0,0,5709,5710,7,6,0,0,5710,5711,7,3,0,0,5711,776,1,0,0,0,5712,5713,7,4,0,0,5713,5714,7,3,0,0,5714,5715,7,6,0,0,5715,5716,7,3,0,0,5716,5717,7,18,0,0,5717,5718,7,15,0,0,5718,5719,7,5,0,0,5719,5720,7,7,0,0,5720,778,1,0,0,0,5721,5722,7,4,0,0,5722,5723,7,7,0,0,5723,5724,7,3,0,0,5724,5725,7,5,0,0,5725,5726,7,5,0,0,5726,5727,7,19,0,0,5727,5728,7,14,0,0,5728,5729,7,3,0,0,5729,5730,7,6,0,0,5730,5731,7,7,0,0,5731,780,1,0,0,0,5732,5733,7,4,0,0,5733,5734,7,7,0,0,5734,5735,7,18,0,0,5735,5736,7,3,0,0,5736,5737,7,17,0,0,5737,5738,7,5,0,0,5738,5739,7,6,0,0,5739,5740,5,95,0,0,5740,5741,7,3,0,0,5741,5742,7,17,0,0,5742,5743,7,6,0,0,5743,5744,7,20,0,0,5744,782,1,0,0,0,5745,5746,7,4,0,0,5746,5747,7,7,0,0,5747,5748,7,18,0,0,5748,5749,7,15,0,0,5749,5750,7,12,0,0,5750,5751,7,7,0,0,5751,5752,7,8,0,0,5752,784,1,0,0,0,5753,5754,7,4,0,0,5754,5755,7,7,0,0,5755,5756,7,5,0,0,5756,5757,7,3,0,0,5757,5758,7,10,0,0,5758,5759,5,95,0,0,5759,5760,7,21,0,0,5760,5761,7,7,0,0,5761,5762,7,10,0,0,5762,5763,5,95,0,0,5763,5764,7,9,0,0,5764,5765,7,8,0,0,5765,5766,7,15,0,0,5766,5767,7,6,0,0,5767,5768,7,7,0,0,5768,786,1,0,0,0,5769,5770,7,4,0,0,5770,5771,7,7,0,0,5771,5772,7,11,0,0,5772,5773,5,95,0,0,5773,5774,7,21,0,0,5774,5775,7,7,0,0,5775,5776,7,10,0,0,5776,5777,5,95,0,0,5777,5778,7,18,0,0,5778,5779,7,15,0,0,5779,5780,7,5,0,0,5780,5781,7,7,0,0,5781,788,1,0,0,0,5782,5783,7,4,0,0,5783,5784,7,15,0,0,5784,5785,7,8,0,0,5785,5786,7,7,0,0,5786,5787,7,14,0,0,5787,5788,7,6,0,0,5788,5789,7,19,0,0,5789,5790,7,8,0,0,5790,5791,7,10,0,0,5791,790,1,0,0,0,5792,5793,7,4,0,0,5793,5794,7,15,0,0,5794,5795,7,11,0,0,5795,5796,7,3,0,0,5796,5797,7,16,0,0,5797,5798,7,5,0,0,5798,5799,7,7,0,0,5799,792,1,0,0,0,5800,5801,7,4,0,0,5801,5802,7,15,0,0,5802,5803,7,11,0,0,5803,5804,7,14,0,0,5804,5805,7,3,0,0,5805,5806,7,8,0,0,5806,5807,7,4,0,0,5807,794,1,0,0,0,5808,5809,7,4,0,0,5809,5810,7,15,0,0,5810,5811,7,11,0,0,5811,5812,7,21,0,0,5812,796,1,0,0,0,5813,5814,7,4,0,0,5814,5815,7,19,0,0,5815,798,1,0,0,0,5816,5817,7,4,0,0,5817,5818,7,17,0,0,5818,5819,7,23,0,0,5819,5820,7,25,0,0,5820,5821,7,18,0,0,5821,5822,7,15,0,0,5822,5823,7,5,0,0,5823,5824,7,7,0,0,5824,800,1,0,0,0,5825,5826,7,4,0,0,5826,5827,7,17,0,0,5827,5828,7,25,0,0,5828,5829,7,5,0,0,5829,5830,7,15,0,0,5830,5831,7,14,0,0,5831,5832,7,3,0,0,5832,5833,7,6,0,0,5833,5834,7,7,0,0,5834,802,1,0,0,0,5835,5836,7,4,0,0,5836,5837,7,10,0,0,5837,5838,7,12,0,0,5838,5839,7,3,0,0,5839,5840,7,23,0,0,5840,5841,7,15,0,0,5841,5842,7,14,0,0,5842,804,1,0,0,0,5843,5844,7,7,0,0,5844,5845,7,12,0,0,5845,5846,7,3,0,0,5846,5847,7,16,0,0,5847,5848,7,5,0,0,5848,5849,7,7,0,0,5849,806,1,0,0,0,5850,5851,7,7,0,0,5851,5852,7,12,0,0,5852,5853,7,14,0,0,5853,5854,7,8,0,0,5854,5855,7,10,0,0,5855,5856,7,25,0,0,5856,5857,7,6,0,0,5857,5858,7,7,0,0,5858,5859,7,4,0,0,5859,808,1,0,0,0,5860,5861,7,7,0,0,5861,5862,7,12,0,0,5862,5863,7,14,0,0,5863,5864,7,8,0,0,5864,5865,7,10,0,0,5865,5866,7,25,0,0,5866,5867,7,6,0,0,5867,5868,7,15,0,0,5868,5869,7,19,0,0,5869,5870,7,12,0,0,5870,810,1,0,0,0,5871,5872,7,7,0,0,5872,5873,7,12,0,0,5873,5874,7,14,0,0,5874,5875,7,8,0,0,5875,5876,7,10,0,0,5876,5877,7,25,0,0,5877,5878,7,6,0,0,5878,5879,7,15,0,0,5879,5880,7,19,0,0,5880,5881,7,12,0,0,5881,5882,5,95,0,0,5882,5883,7,21,0,0,5883,5884,7,7,0,0,5884,5885,7,10,0,0,5885,5886,5,95,0,0,5886,5887,7,15,0,0,5887,5888,7,4,0,0,5888,812,1,0,0,0,5889,5890,7,7,0,0,5890,5891,7,12,0,0,5891,5892,7,4,0,0,5892,814,1,0,0,0,5893,5894,7,7,0,0,5894,5895,7,12,0,0,5895,5896,7,4,0,0,5896,5897,7,11,0,0,5897,816,1,0,0,0,5898,5899,7,7,0,0,5899,5900,7,12,0,0,5900,5901,7,22,0,0,5901,5902,7,15,0,0,5902,5903,7,12,0,0,5903,5904,7,7,0,0,5904,818,1,0,0,0,5905,5906,7,7,0,0,5906,5907,7,12,0,0,5907,5908,7,22,0,0,5908,5909,7,15,0,0,5909,5910,7,12,0,0,5910,5911,7,7,0,0,5911,5912,7,11,0,0,5912,820,1,0,0,0,5913,5914,7,7,0,0,5914,5915,7,8,0,0,5915,5916,7,8,0,0,5916,5917,7,19,0,0,5917,5918,7,8,0,0,5918,822,1,0,0,0,5919,5920,7,7,0,0,5920,5921,7,8,0,0,5921,5922,7,8,0,0,5922,5923,7,19,0,0,5923,5924,7,8,0,0,5924,5925,7,11,0,0,5925,824,1,0,0,0,5926,5927,7,7,0,0,5927,5928,7,11,0,0,5928,5929,7,14,0,0,5929,5930,7,3,0,0,5930,5931,7,25,0,0,5931,5932,7,7,0,0,5932,826,1,0,0,0,5933,5934,7,7,0,0,5934,5935,7,24,0,0,5935,5936,7,7,0,0,5936,5937,7,12,0,0,5937,828,1,0,0,0,5938,5939,7,7,0,0,5939,5940,7,24,0,0,5940,5941,7,7,0,0,5941,5942,7,12,0,0,5942,5943,7,6,0,0,5943,830,1,0,0,0,5944,5945,7,7,0,0,5945,5946,7,24,0,0,5946,5947,7,7,0,0,5947,5948,7,12,0,0,5948,5949,7,6,0,0,5949,5950,7,11,0,0,5950,832,1,0,0,0,5951,5952,7,7,0,0,5952,5953,7,24,0,0,5953,5954,7,7,0,0,5954,5955,7,8,0,0,5955,5956,7,10,0,0,5956,834,1,0,0,0,5957,5958,7,7,0,0,5958,5959,7,26,0,0,5959,5960,7,14,0,0,5960,5961,7,20,0,0,5961,5962,7,3,0,0,5962,5963,7,12,0,0,5963,5964,7,22,0,0,5964,5965,7,7,0,0,5965,836,1,0,0,0,5966,5967,7,7,0,0,5967,5968,7,26,0,0,5968,5969,7,14,0,0,5969,5970,7,5,0,0,5970,5971,7,17,0,0,5971,5972,7,11,0,0,5972,5973,7,15,0,0,5973,5974,7,24,0,0,5974,5975,7,7,0,0,5975,838,1,0,0,0,5976,5977,7,7,0,0,5977,5978,7,26,0,0,5978,5979,7,25,0,0,5979,5980,7,15,0,0,5980,5981,7,8,0,0,5981,5982,7,7,0,0,5982,840,1,0,0,0,5983,5984,7,7,0,0,5984,5985,7,26,0,0,5985,5986,7,25,0,0,5986,5987,7,19,0,0,5987,5988,7,8,0,0,5988,5989,7,6,0,0,5989,842,1,0,0,0,5990,5991,7,7,0,0,5991,5992,7,26,0,0,5992,5993,7,6,0,0,5993,5994,7,7,0,0,5994,5995,7,12,0,0,5995,5996,7,4,0,0,5996,5997,7,7,0,0,5997,5998,7,4,0,0,5998,844,1,0,0,0,5999,6e3,7,7,0,0,6e3,6001,7,26,0,0,6001,6002,7,6,0,0,6002,6003,7,7,0,0,6003,6004,7,12,0,0,6004,6005,7,6,0,0,6005,6006,5,95,0,0,6006,6007,7,11,0,0,6007,6008,7,15,0,0,6008,6009,7,13,0,0,6009,6010,7,7,0,0,6010,846,1,0,0,0,6011,6012,7,18,0,0,6012,6013,7,3,0,0,6013,6014,7,15,0,0,6014,6015,7,5,0,0,6015,6016,7,7,0,0,6016,6017,7,4,0,0,6017,6018,5,95,0,0,6018,6019,7,5,0,0,6019,6020,7,19,0,0,6020,6021,7,22,0,0,6021,6022,7,15,0,0,6022,6023,7,12,0,0,6023,6024,5,95,0,0,6024,6025,7,3,0,0,6025,6026,7,6,0,0,6026,6027,7,6,0,0,6027,6028,7,7,0,0,6028,6029,7,23,0,0,6029,6030,7,25,0,0,6030,6031,7,6,0,0,6031,6032,7,11,0,0,6032,848,1,0,0,0,6033,6034,7,18,0,0,6034,6035,7,3,0,0,6035,6036,7,11,0,0,6036,6037,7,6,0,0,6037,850,1,0,0,0,6038,6039,7,18,0,0,6039,6040,7,3,0,0,6040,6041,7,17,0,0,6041,6042,7,5,0,0,6042,6043,7,6,0,0,6043,6044,7,11,0,0,6044,852,1,0,0,0,6045,6046,7,18,0,0,6046,6047,7,15,0,0,6047,6048,7,7,0,0,6048,6049,7,5,0,0,6049,6050,7,4,0,0,6050,6051,7,11,0,0,6051,854,1,0,0,0,6052,6053,7,18,0,0,6053,6054,7,15,0,0,6054,6055,7,5,0,0,6055,6056,7,7,0,0,6056,6057,5,95,0,0,6057,6058,7,16,0,0,6058,6059,7,5,0,0,6059,6060,7,19,0,0,6060,6061,7,14,0,0,6061,6062,7,21,0,0,6062,6063,5,95,0,0,6063,6064,7,11,0,0,6064,6065,7,15,0,0,6065,6066,7,13,0,0,6066,6067,7,7,0,0,6067,856,1,0,0,0,6068,6069,7,18,0,0,6069,6070,7,15,0,0,6070,6071,7,5,0,0,6071,6072,7,6,0,0,6072,6073,7,7,0,0,6073,6074,7,8,0,0,6074,858,1,0,0,0,6075,6076,7,18,0,0,6076,6077,7,15,0,0,6077,6078,7,8,0,0,6078,6079,7,11,0,0,6079,6080,7,6,0,0,6080,860,1,0,0,0,6081,6082,7,18,0,0,6082,6083,7,15,0,0,6083,6084,7,26,0,0,6084,6085,7,7,0,0,6085,6086,7,4,0,0,6086,862,1,0,0,0,6087,6088,7,18,0,0,6088,6089,7,5,0,0,6089,6090,7,17,0,0,6090,6091,7,11,0,0,6091,6092,7,20,0,0,6092,864,1,0,0,0,6093,6094,7,18,0,0,6094,6095,7,19,0,0,6095,6096,7,5,0,0,6096,6097,7,5,0,0,6097,6098,7,19,0,0,6098,6099,7,9,0,0,6099,6100,7,15,0,0,6100,6101,7,12,0,0,6101,6102,7,22,0,0,6102,866,1,0,0,0,6103,6104,7,18,0,0,6104,6105,7,19,0,0,6105,6106,7,5,0,0,6106,6107,7,5,0,0,6107,6108,7,19,0,0,6108,6109,7,9,0,0,6109,6110,7,11,0,0,6110,868,1,0,0,0,6111,6112,7,18,0,0,6112,6113,7,19,0,0,6113,6114,7,17,0,0,6114,6115,7,12,0,0,6115,6116,7,4,0,0,6116,870,1,0,0,0,6117,6118,7,18,0,0,6118,6119,7,17,0,0,6119,6120,7,5,0,0,6120,6121,7,5,0,0,6121,872,1,0,0,0,6122,6123,7,18,0,0,6123,6124,7,17,0,0,6124,6125,7,12,0,0,6125,6126,7,14,0,0,6126,6127,7,6,0,0,6127,6128,7,15,0,0,6128,6129,7,19,0,0,6129,6130,7,12,0,0,6130,874,1,0,0,0,6131,6132,7,22,0,0,6132,6133,7,7,0,0,6133,6134,7,12,0,0,6134,6135,7,7,0,0,6135,6136,7,8,0,0,6136,6137,7,3,0,0,6137,6138,7,5,0,0,6138,876,1,0,0,0,6139,6140,7,22,0,0,6140,6141,7,5,0,0,6141,6142,7,19,0,0,6142,6143,7,16,0,0,6143,6144,7,3,0,0,6144,6145,7,5,0,0,6145,878,1,0,0,0,6146,6147,7,22,0,0,6147,6148,7,8,0,0,6148,6149,7,3,0,0,6149,6150,7,12,0,0,6150,6151,7,6,0,0,6151,6152,7,11,0,0,6152,880,1,0,0,0,6153,6154,7,22,0,0,6154,6155,7,8,0,0,6155,6156,7,19,0,0,6156,6157,7,17,0,0,6157,6158,7,25,0,0,6158,6159,5,95,0,0,6159,6160,7,8,0,0,6160,6161,7,7,0,0,6161,6162,7,25,0,0,6162,6163,7,5,0,0,6163,6164,7,15,0,0,6164,6165,7,14,0,0,6165,6166,7,3,0,0,6166,6167,7,6,0,0,6167,6168,7,15,0,0,6168,6169,7,19,0,0,6169,6170,7,12,0,0,6170,882,1,0,0,0,6171,6172,7,20,0,0,6172,6173,7,3,0,0,6173,6174,7,12,0,0,6174,6175,7,4,0,0,6175,6176,7,5,0,0,6176,6177,7,7,0,0,6177,6178,7,8,0,0,6178,884,1,0,0,0,6179,6180,7,20,0,0,6180,6181,7,3,0,0,6181,6182,7,11,0,0,6182,6183,7,20,0,0,6183,886,1,0,0,0,6184,6185,7,20,0,0,6185,6186,7,7,0,0,6186,6187,7,5,0,0,6187,6188,7,25,0,0,6188,888,1,0,0,0,6189,6190,7,20,0,0,6190,6191,7,15,0,0,6191,6192,7,11,0,0,6192,6193,7,6,0,0,6193,6194,7,19,0,0,6194,6195,7,8,0,0,6195,6196,7,10,0,0,6196,890,1,0,0,0,6197,6198,7,20,0,0,6198,6199,7,19,0,0,6199,6200,7,11,0,0,6200,6201,7,6,0,0,6201,892,1,0,0,0,6202,6203,7,20,0,0,6203,6204,7,19,0,0,6204,6205,7,11,0,0,6205,6206,7,6,0,0,6206,6207,7,11,0,0,6207,894,1,0,0,0,6208,6209,7,15,0,0,6209,6210,7,4,0,0,6210,6211,7,7,0,0,6211,6212,7,12,0,0,6212,6213,7,6,0,0,6213,6214,7,15,0,0,6214,6215,7,18,0,0,6215,6216,7,15,0,0,6216,6217,7,7,0,0,6217,6218,7,4,0,0,6218,896,1,0,0,0,6219,6220,7,15,0,0,6220,6221,7,22,0,0,6221,6222,7,12,0,0,6222,6223,7,19,0,0,6223,6224,7,8,0,0,6224,6225,7,7,0,0,6225,6226,5,95,0,0,6226,6227,7,11,0,0,6227,6228,7,7,0,0,6228,6229,7,8,0,0,6229,6230,7,24,0,0,6230,6231,7,7,0,0,6231,6232,7,8,0,0,6232,6233,5,95,0,0,6233,6234,7,15,0,0,6234,6235,7,4,0,0,6235,6236,7,11,0,0,6236,898,1,0,0,0,6237,6238,7,15,0,0,6238,6239,7,23,0,0,6239,6240,7,25,0,0,6240,6241,7,19,0,0,6241,6242,7,8,0,0,6242,6243,7,6,0,0,6243,900,1,0,0,0,6244,6245,7,15,0,0,6245,6246,7,12,0,0,6246,6247,7,14,0,0,6247,6248,7,8,0,0,6248,6249,7,7,0,0,6249,6250,7,23,0,0,6250,6251,7,7,0,0,6251,6252,7,12,0,0,6252,6253,7,6,0,0,6253,902,1,0,0,0,6254,6255,7,15,0,0,6255,6256,7,12,0,0,6256,6257,7,4,0,0,6257,6258,7,7,0,0,6258,6259,7,26,0,0,6259,6260,7,7,0,0,6260,6261,7,11,0,0,6261,904,1,0,0,0,6262,6263,7,15,0,0,6263,6264,7,12,0,0,6264,6265,7,15,0,0,6265,6266,7,6,0,0,6266,6267,7,15,0,0,6267,6268,7,3,0,0,6268,6269,7,5,0,0,6269,6270,5,95,0,0,6270,6271,7,11,0,0,6271,6272,7,15,0,0,6272,6273,7,13,0,0,6273,6274,7,7,0,0,6274,906,1,0,0,0,6275,6276,7,15,0,0,6276,6277,7,12,0,0,6277,6278,7,25,0,0,6278,6279,7,5,0,0,6279,6280,7,3,0,0,6280,6281,7,14,0,0,6281,6282,7,7,0,0,6282,908,1,0,0,0,6283,6284,7,15,0,0,6284,6285,7,12,0,0,6285,6286,7,11,0,0,6286,6287,7,7,0,0,6287,6288,7,8,0,0,6288,6289,7,6,0,0,6289,6290,5,95,0,0,6290,6291,7,23,0,0,6291,6292,7,7,0,0,6292,6293,7,6,0,0,6293,6294,7,20,0,0,6294,6295,7,19,0,0,6295,6296,7,4,0,0,6296,910,1,0,0,0,6297,6298,7,15,0,0,6298,6299,7,12,0,0,6299,6300,7,11,0,0,6300,6301,7,6,0,0,6301,6302,7,3,0,0,6302,6303,7,5,0,0,6303,6304,7,5,0,0,6304,912,1,0,0,0,6305,6306,7,15,0,0,6306,6307,7,12,0,0,6307,6308,7,11,0,0,6308,6309,7,6,0,0,6309,6310,7,3,0,0,6310,6311,7,12,0,0,6311,6312,7,14,0,0,6312,6313,7,7,0,0,6313,914,1,0,0,0,6314,6315,7,15,0,0,6315,6316,7,12,0,0,6316,6317,7,11,0,0,6317,6318,7,6,0,0,6318,6319,7,3,0,0,6319,6320,7,12,0,0,6320,6321,7,6,0,0,6321,916,1,0,0,0,6322,6323,7,15,0,0,6323,6324,7,12,0,0,6324,6325,7,24,0,0,6325,6326,7,15,0,0,6326,6327,7,11,0,0,6327,6328,7,15,0,0,6328,6329,7,16,0,0,6329,6330,7,5,0,0,6330,6331,7,7,0,0,6331,918,1,0,0,0,6332,6333,7,15,0,0,6333,6334,7,12,0,0,6334,6335,7,24,0,0,6335,6336,7,19,0,0,6336,6337,7,21,0,0,6337,6338,7,7,0,0,6338,6339,7,8,0,0,6339,920,1,0,0,0,6340,6341,7,15,0,0,6341,6342,7,19,0,0,6342,922,1,0,0,0,6343,6344,7,15,0,0,6344,6345,7,19,0,0,6345,6346,5,95,0,0,6346,6347,7,6,0,0,6347,6348,7,20,0,0,6348,6349,7,8,0,0,6349,6350,7,7,0,0,6350,6351,7,3,0,0,6351,6352,7,4,0,0,6352,924,1,0,0,0,6353,6354,7,15,0,0,6354,6355,7,25,0,0,6355,6356,7,14,0,0,6356,926,1,0,0,0,6357,6358,7,15,0,0,6358,6359,7,11,0,0,6359,6360,7,19,0,0,6360,6361,7,5,0,0,6361,6362,7,3,0,0,6362,6363,7,6,0,0,6363,6364,7,15,0,0,6364,6365,7,19,0,0,6365,6366,7,12,0,0,6366,928,1,0,0,0,6367,6368,7,15,0,0,6368,6369,7,11,0,0,6369,6370,7,11,0,0,6370,6371,7,17,0,0,6371,6372,7,7,0,0,6372,6373,7,8,0,0,6373,930,1,0,0,0,6374,6375,7,27,0,0,6375,6376,7,11,0,0,6376,6377,7,19,0,0,6377,6378,7,12,0,0,6378,932,1,0,0,0,6379,6380,7,21,0,0,6380,6381,7,7,0,0,6381,6382,7,10,0,0,6382,6383,5,95,0,0,6383,6384,7,16,0,0,6384,6385,7,5,0,0,6385,6386,7,19,0,0,6386,6387,7,14,0,0,6387,6388,7,21,0,0,6388,6389,5,95,0,0,6389,6390,7,11,0,0,6390,6391,7,15,0,0,6391,6392,7,13,0,0,6392,6393,7,7,0,0,6393,934,1,0,0,0,6394,6395,7,5,0,0,6395,6396,7,3,0,0,6396,6397,7,12,0,0,6397,6398,7,22,0,0,6398,6399,7,17,0,0,6399,6400,7,3,0,0,6400,6401,7,22,0,0,6401,6402,7,7,0,0,6402,936,1,0,0,0,6403,6404,7,5,0,0,6404,6405,7,3,0,0,6405,6406,7,11,0,0,6406,6407,7,6,0,0,6407,938,1,0,0,0,6408,6409,7,5,0,0,6409,6410,7,7,0,0,6410,6411,7,3,0,0,6411,6412,7,24,0,0,6412,6413,7,7,0,0,6413,6414,7,11,0,0,6414,940,1,0,0,0,6415,6416,7,5,0,0,6416,6417,7,7,0,0,6417,6418,7,11,0,0,6418,6419,7,11,0,0,6419,942,1,0,0,0,6420,6421,7,5,0,0,6421,6422,7,7,0,0,6422,6423,7,24,0,0,6423,6424,7,7,0,0,6424,6425,7,5,0,0,6425,944,1,0,0,0,6426,6427,7,5,0,0,6427,6428,7,15,0,0,6428,6429,7,11,0,0,6429,6430,7,6,0,0,6430,946,1,0,0,0,6431,6432,7,5,0,0,6432,6433,7,19,0,0,6433,6434,7,14,0,0,6434,6435,7,3,0,0,6435,6436,7,5,0,0,6436,948,1,0,0,0,6437,6438,7,5,0,0,6438,6439,7,19,0,0,6439,6440,7,22,0,0,6440,6441,7,18,0,0,6441,6442,7,15,0,0,6442,6443,7,5,0,0,6443,6444,7,7,0,0,6444,950,1,0,0,0,6445,6446,7,5,0,0,6446,6447,7,19,0,0,6447,6448,7,22,0,0,6448,6449,7,11,0,0,6449,952,1,0,0,0,6450,6451,7,23,0,0,6451,6452,7,3,0,0,6452,6453,7,11,0,0,6453,6454,7,6,0,0,6454,6455,7,7,0,0,6455,6456,7,8,0,0,6456,954,1,0,0,0,6457,6458,7,23,0,0,6458,6459,7,3,0,0,6459,6460,7,11,0,0,6460,6461,7,6,0,0,6461,6462,7,7,0,0,6462,6463,7,8,0,0,6463,6464,5,95,0,0,6464,6465,7,3,0,0,6465,6466,7,17,0,0,6466,6467,7,6,0,0,6467,6468,7,19,0,0,6468,6469,5,95,0,0,6469,6470,7,25,0,0,6470,6471,7,19,0,0,6471,6472,7,11,0,0,6472,6473,7,15,0,0,6473,6474,7,6,0,0,6474,6475,7,15,0,0,6475,6476,7,19,0,0,6476,6477,7,12,0,0,6477,956,1,0,0,0,6478,6479,7,23,0,0,6479,6480,7,3,0,0,6480,6481,7,11,0,0,6481,6482,7,6,0,0,6482,6483,7,7,0,0,6483,6484,7,8,0,0,6484,6485,5,95,0,0,6485,6486,7,14,0,0,6486,6487,7,19,0,0,6487,6488,7,12,0,0,6488,6489,7,12,0,0,6489,6490,7,7,0,0,6490,6491,7,14,0,0,6491,6492,7,6,0,0,6492,6493,5,95,0,0,6493,6494,7,8,0,0,6494,6495,7,7,0,0,6495,6496,7,6,0,0,6496,6497,7,8,0,0,6497,6498,7,10,0,0,6498,958,1,0,0,0,6499,6500,7,23,0,0,6500,6501,7,3,0,0,6501,6502,7,11,0,0,6502,6503,7,6,0,0,6503,6504,7,7,0,0,6504,6505,7,8,0,0,6505,6506,5,95,0,0,6506,6507,7,4,0,0,6507,6508,7,7,0,0,6508,6509,7,5,0,0,6509,6510,7,3,0,0,6510,6511,7,10,0,0,6511,960,1,0,0,0,6512,6513,7,23,0,0,6513,6514,7,3,0,0,6514,6515,7,11,0,0,6515,6516,7,6,0,0,6516,6517,7,7,0,0,6517,6518,7,8,0,0,6518,6519,5,95,0,0,6519,6520,7,20,0,0,6520,6521,7,7,0,0,6521,6522,7,3,0,0,6522,6523,7,8,0,0,6523,6524,7,6,0,0,6524,6525,7,16,0,0,6525,6526,7,7,0,0,6526,6527,7,3,0,0,6527,6528,7,6,0,0,6528,6529,5,95,0,0,6529,6530,7,25,0,0,6530,6531,7,7,0,0,6531,6532,7,8,0,0,6532,6533,7,15,0,0,6533,6534,7,19,0,0,6534,6535,7,4,0,0,6535,962,1,0,0,0,6536,6537,7,23,0,0,6537,6538,7,3,0,0,6538,6539,7,11,0,0,6539,6540,7,6,0,0,6540,6541,7,7,0,0,6541,6542,7,8,0,0,6542,6543,5,95,0,0,6543,6544,7,20,0,0,6544,6545,7,19,0,0,6545,6546,7,11,0,0,6546,6547,7,6,0,0,6547,964,1,0,0,0,6548,6549,7,23,0,0,6549,6550,7,3,0,0,6550,6551,7,11,0,0,6551,6552,7,6,0,0,6552,6553,7,7,0,0,6553,6554,7,8,0,0,6554,6555,5,95,0,0,6555,6556,7,5,0,0,6556,6557,7,19,0,0,6557,6558,7,22,0,0,6558,6559,5,95,0,0,6559,6560,7,18,0,0,6560,6561,7,15,0,0,6561,6562,7,5,0,0,6562,6563,7,7,0,0,6563,966,1,0,0,0,6564,6565,7,23,0,0,6565,6566,7,3,0,0,6566,6567,7,11,0,0,6567,6568,7,6,0,0,6568,6569,7,7,0,0,6569,6570,7,8,0,0,6570,6571,5,95,0,0,6571,6572,7,5,0,0,6572,6573,7,19,0,0,6573,6574,7,22,0,0,6574,6575,5,95,0,0,6575,6576,7,25,0,0,6576,6577,7,19,0,0,6577,6578,7,11,0,0,6578,968,1,0,0,0,6579,6580,7,23,0,0,6580,6581,7,3,0,0,6581,6582,7,11,0,0,6582,6583,7,6,0,0,6583,6584,7,7,0,0,6584,6585,7,8,0,0,6585,6586,5,95,0,0,6586,6587,7,25,0,0,6587,6588,7,3,0,0,6588,6589,7,11,0,0,6589,6590,7,11,0,0,6590,6591,7,9,0,0,6591,6592,7,19,0,0,6592,6593,7,8,0,0,6593,6594,7,4,0,0,6594,970,1,0,0,0,6595,6596,7,23,0,0,6596,6597,7,3,0,0,6597,6598,7,11,0,0,6598,6599,7,6,0,0,6599,6600,7,7,0,0,6600,6601,7,8,0,0,6601,6602,5,95,0,0,6602,6603,7,25,0,0,6603,6604,7,19,0,0,6604,6605,7,8,0,0,6605,6606,7,6,0,0,6606,972,1,0,0,0,6607,6608,7,23,0,0,6608,6609,7,3,0,0,6609,6610,7,11,0,0,6610,6611,7,6,0,0,6611,6612,7,7,0,0,6612,6613,7,8,0,0,6613,6614,5,95,0,0,6614,6615,7,8,0,0,6615,6616,7,7,0,0,6616,6617,7,6,0,0,6617,6618,7,8,0,0,6618,6619,7,10,0,0,6619,6620,5,95,0,0,6620,6621,7,14,0,0,6621,6622,7,19,0,0,6622,6623,7,17,0,0,6623,6624,7,12,0,0,6624,6625,7,6,0,0,6625,974,1,0,0,0,6626,6627,7,23,0,0,6627,6628,7,3,0,0,6628,6629,7,11,0,0,6629,6630,7,6,0,0,6630,6631,7,7,0,0,6631,6632,7,8,0,0,6632,6633,5,95,0,0,6633,6634,7,11,0,0,6634,6635,7,11,0,0,6635,6636,7,5,0,0,6636,976,1,0,0,0,6637,6638,7,23,0,0,6638,6639,7,3,0,0,6639,6640,7,11,0,0,6640,6641,7,6,0,0,6641,6642,7,7,0,0,6642,6643,7,8,0,0,6643,6644,5,95,0,0,6644,6645,7,11,0,0,6645,6646,7,11,0,0,6646,6647,7,5,0,0,6647,6648,5,95,0,0,6648,6649,7,14,0,0,6649,6650,7,3,0,0,6650,978,1,0,0,0,6651,6652,7,23,0,0,6652,6653,7,3,0,0,6653,6654,7,11,0,0,6654,6655,7,6,0,0,6655,6656,7,7,0,0,6656,6657,7,8,0,0,6657,6658,5,95,0,0,6658,6659,7,11,0,0,6659,6660,7,11,0,0,6660,6661,7,5,0,0,6661,6662,5,95,0,0,6662,6663,7,14,0,0,6663,6664,7,3,0,0,6664,6665,7,25,0,0,6665,6666,7,3,0,0,6666,6667,7,6,0,0,6667,6668,7,20,0,0,6668,980,1,0,0,0,6669,6670,7,23,0,0,6670,6671,7,3,0,0,6671,6672,7,11,0,0,6672,6673,7,6,0,0,6673,6674,7,7,0,0,6674,6675,7,8,0,0,6675,6676,5,95,0,0,6676,6677,7,11,0,0,6677,6678,7,11,0,0,6678,6679,7,5,0,0,6679,6680,5,95,0,0,6680,6681,7,14,0,0,6681,6682,7,7,0,0,6682,6683,7,8,0,0,6683,6684,7,6,0,0,6684,982,1,0,0,0,6685,6686,7,23,0,0,6686,6687,7,3,0,0,6687,6688,7,11,0,0,6688,6689,7,6,0,0,6689,6690,7,7,0,0,6690,6691,7,8,0,0,6691,6692,5,95,0,0,6692,6693,7,11,0,0,6693,6694,7,11,0,0,6694,6695,7,5,0,0,6695,6696,5,95,0,0,6696,6697,7,14,0,0,6697,6698,7,15,0,0,6698,6699,7,25,0,0,6699,6700,7,20,0,0,6700,6701,7,7,0,0,6701,6702,7,8,0,0,6702,984,1,0,0,0,6703,6704,7,23,0,0,6704,6705,7,3,0,0,6705,6706,7,11,0,0,6706,6707,7,6,0,0,6707,6708,7,7,0,0,6708,6709,7,8,0,0,6709,6710,5,95,0,0,6710,6711,7,11,0,0,6711,6712,7,11,0,0,6712,6713,7,5,0,0,6713,6714,5,95,0,0,6714,6715,7,14,0,0,6715,6716,7,8,0,0,6716,6717,7,5,0,0,6717,986,1,0,0,0,6718,6719,7,23,0,0,6719,6720,7,3,0,0,6720,6721,7,11,0,0,6721,6722,7,6,0,0,6722,6723,7,7,0,0,6723,6724,7,8,0,0,6724,6725,5,95,0,0,6725,6726,7,11,0,0,6726,6727,7,11,0,0,6727,6728,7,5,0,0,6728,6729,5,95,0,0,6729,6730,7,14,0,0,6730,6731,7,8,0,0,6731,6732,7,5,0,0,6732,6733,7,25,0,0,6733,6734,7,3,0,0,6734,6735,7,6,0,0,6735,6736,7,20,0,0,6736,988,1,0,0,0,6737,6738,7,23,0,0,6738,6739,7,3,0,0,6739,6740,7,11,0,0,6740,6741,7,6,0,0,6741,6742,7,7,0,0,6742,6743,7,8,0,0,6743,6744,5,95,0,0,6744,6745,7,11,0,0,6745,6746,7,11,0,0,6746,6747,7,5,0,0,6747,6748,5,95,0,0,6748,6749,7,21,0,0,6749,6750,7,7,0,0,6750,6751,7,10,0,0,6751,990,1,0,0,0,6752,6753,7,23,0,0,6753,6754,7,3,0,0,6754,6755,7,11,0,0,6755,6756,7,6,0,0,6756,6757,7,7,0,0,6757,6758,7,8,0,0,6758,6759,5,95,0,0,6759,6760,7,6,0,0,6760,6761,7,5,0,0,6761,6762,7,11,0,0,6762,6763,5,95,0,0,6763,6764,7,24,0,0,6764,6765,7,7,0,0,6765,6766,7,8,0,0,6766,6767,7,11,0,0,6767,6768,7,15,0,0,6768,6769,7,19,0,0,6769,6770,7,12,0,0,6770,992,1,0,0,0,6771,6772,7,23,0,0,6772,6773,7,3,0,0,6773,6774,7,11,0,0,6774,6775,7,6,0,0,6775,6776,7,7,0,0,6776,6777,7,8,0,0,6777,6778,5,95,0,0,6778,6779,7,17,0,0,6779,6780,7,11,0,0,6780,6781,7,7,0,0,6781,6782,7,8,0,0,6782,994,1,0,0,0,6783,6784,7,23,0,0,6784,6785,7,3,0,0,6785,6786,7,26,0,0,6786,6787,5,95,0,0,6787,6788,7,14,0,0,6788,6789,7,19,0,0,6789,6790,7,12,0,0,6790,6791,7,12,0,0,6791,6792,7,7,0,0,6792,6793,7,14,0,0,6793,6794,7,6,0,0,6794,6795,7,15,0,0,6795,6796,7,19,0,0,6796,6797,7,12,0,0,6797,6798,7,11,0,0,6798,6799,5,95,0,0,6799,6800,7,25,0,0,6800,6801,7,7,0,0,6801,6802,7,8,0,0,6802,6803,5,95,0,0,6803,6804,7,20,0,0,6804,6805,7,19,0,0,6805,6806,7,17,0,0,6806,6807,7,8,0,0,6807,996,1,0,0,0,6808,6809,7,23,0,0,6809,6810,7,3,0,0,6810,6811,7,26,0,0,6811,6812,5,95,0,0,6812,6813,7,28,0,0,6813,6814,7,17,0,0,6814,6815,7,7,0,0,6815,6816,7,8,0,0,6816,6817,7,15,0,0,6817,6818,7,7,0,0,6818,6819,7,11,0,0,6819,6820,5,95,0,0,6820,6821,7,25,0,0,6821,6822,7,7,0,0,6822,6823,7,8,0,0,6823,6824,5,95,0,0,6824,6825,7,20,0,0,6825,6826,7,19,0,0,6826,6827,7,17,0,0,6827,6828,7,8,0,0,6828,998,1,0,0,0,6829,6830,7,23,0,0,6830,6831,7,3,0,0,6831,6832,7,26,0,0,6832,6833,5,95,0,0,6833,6834,7,8,0,0,6834,6835,7,19,0,0,6835,6836,7,9,0,0,6836,6837,7,11,0,0,6837,1e3,1,0,0,0,6838,6839,7,23,0,0,6839,6840,7,3,0,0,6840,6841,7,26,0,0,6841,6842,5,95,0,0,6842,6843,7,11,0,0,6843,6844,7,15,0,0,6844,6845,7,13,0,0,6845,6846,7,7,0,0,6846,1002,1,0,0,0,6847,6848,7,23,0,0,6848,6849,7,3,0,0,6849,6850,7,26,0,0,6850,6851,5,95,0,0,6851,6852,7,17,0,0,6852,6853,7,25,0,0,6853,6854,7,4,0,0,6854,6855,7,3,0,0,6855,6856,7,6,0,0,6856,6857,7,7,0,0,6857,6858,7,11,0,0,6858,6859,5,95,0,0,6859,6860,7,25,0,0,6860,6861,7,7,0,0,6861,6862,7,8,0,0,6862,6863,5,95,0,0,6863,6864,7,20,0,0,6864,6865,7,19,0,0,6865,6866,7,17,0,0,6866,6867,7,8,0,0,6867,1004,1,0,0,0,6868,6869,7,23,0,0,6869,6870,7,3,0,0,6870,6871,7,26,0,0,6871,6872,5,95,0,0,6872,6873,7,17,0,0,6873,6874,7,11,0,0,6874,6875,7,7,0,0,6875,6876,7,8,0,0,6876,6877,5,95,0,0,6877,6878,7,14,0,0,6878,6879,7,19,0,0,6879,6880,7,12,0,0,6880,6881,7,12,0,0,6881,6882,7,7,0,0,6882,6883,7,14,0,0,6883,6884,7,6,0,0,6884,6885,7,15,0,0,6885,6886,7,19,0,0,6886,6887,7,12,0,0,6887,6888,7,11,0,0,6888,1006,1,0,0,0,6889,6890,7,23,0,0,6890,6891,7,7,0,0,6891,6892,7,4,0,0,6892,6893,7,15,0,0,6893,6894,7,17,0,0,6894,6895,7,23,0,0,6895,1008,1,0,0,0,6896,6897,7,23,0,0,6897,6898,7,7,0,0,6898,6899,7,23,0,0,6899,6900,7,16,0,0,6900,6901,7,7,0,0,6901,6902,7,8,0,0,6902,1010,1,0,0,0,6903,6904,7,23,0,0,6904,6905,7,7,0,0,6905,6906,7,8,0,0,6906,6907,7,22,0,0,6907,6908,7,7,0,0,6908,1012,1,0,0,0,6909,6910,7,23,0,0,6910,6911,7,7,0,0,6911,6912,7,11,0,0,6912,6913,7,11,0,0,6913,6914,7,3,0,0,6914,6915,7,22,0,0,6915,6916,7,7,0,0,6916,6917,5,95,0,0,6917,6918,7,6,0,0,6918,6919,7,7,0,0,6919,6920,7,26,0,0,6920,6921,7,6,0,0,6921,1014,1,0,0,0,6922,6923,7,23,0,0,6923,6924,7,15,0,0,6924,6925,7,4,0,0,6925,1016,1,0,0,0,6926,6927,7,23,0,0,6927,6928,7,15,0,0,6928,6929,7,22,0,0,6929,6930,7,8,0,0,6930,6931,7,3,0,0,6931,6932,7,6,0,0,6932,6933,7,7,0,0,6933,1018,1,0,0,0,6934,6935,7,23,0,0,6935,6936,7,15,0,0,6936,6937,7,12,0,0,6937,6938,5,95,0,0,6938,6939,7,8,0,0,6939,6940,7,19,0,0,6940,6941,7,9,0,0,6941,6942,7,11,0,0,6942,1020,1,0,0,0,6943,6944,7,23,0,0,6944,6945,7,19,0,0,6945,6946,7,4,0,0,6946,6947,7,7,0,0,6947,1022,1,0,0,0,6948,6949,7,23,0,0,6949,6950,7,19,0,0,6950,6951,7,4,0,0,6951,6952,7,15,0,0,6952,6953,7,18,0,0,6953,6954,7,10,0,0,6954,1024,1,0,0,0,6955,6956,7,23,0,0,6956,6957,7,17,0,0,6957,6958,7,6,0,0,6958,6959,7,7,0,0,6959,6960,7,26,0,0,6960,1026,1,0,0,0,6961,6962,7,23,0,0,6962,6963,7,10,0,0,6963,6964,7,11,0,0,6964,6965,7,28,0,0,6965,6966,7,5,0,0,6966,1028,1,0,0,0,6967,6968,7,23,0,0,6968,6969,7,10,0,0,6969,6970,7,11,0,0,6970,6971,7,28,0,0,6971,6972,7,5,0,0,6972,6973,5,95,0,0,6973,6974,7,7,0,0,6974,6975,7,8,0,0,6975,6976,7,8,0,0,6976,6977,7,12,0,0,6977,6978,7,19,0,0,6978,1030,1,0,0,0,6979,6980,7,12,0,0,6980,6981,7,3,0,0,6981,6982,7,23,0,0,6982,6983,7,7,0,0,6983,1032,1,0,0,0,6984,6985,7,12,0,0,6985,6986,7,3,0,0,6986,6987,7,23,0,0,6987,6988,7,7,0,0,6988,6989,7,11,0,0,6989,1034,1,0,0,0,6990,6991,7,12,0,0,6991,6992,7,14,0,0,6992,6993,7,20,0,0,6993,6994,7,3,0,0,6994,6995,7,8,0,0,6995,1036,1,0,0,0,6996,6997,7,12,0,0,6997,6998,7,7,0,0,6998,6999,7,24,0,0,6999,7e3,7,7,0,0,7e3,7001,7,8,0,0,7001,1038,1,0,0,0,7002,7003,7,12,0,0,7003,7004,7,7,0,0,7004,7005,7,26,0,0,7005,7006,7,6,0,0,7006,1040,1,0,0,0,7007,7008,7,12,0,0,7008,7009,7,19,0,0,7009,1042,1,0,0,0,7010,7011,7,12,0,0,7011,7012,7,19,0,0,7012,7013,7,14,0,0,7013,7014,7,3,0,0,7014,7015,7,14,0,0,7015,7016,7,20,0,0,7016,7017,7,7,0,0,7017,1044,1,0,0,0,7018,7019,7,12,0,0,7019,7020,7,19,0,0,7020,7021,7,14,0,0,7021,7022,7,19,0,0,7022,7023,7,25,0,0,7023,7024,7,10,0,0,7024,1046,1,0,0,0,7025,7026,7,12,0,0,7026,7027,7,19,0,0,7027,7028,7,14,0,0,7028,7029,7,10,0,0,7029,7030,7,14,0,0,7030,7031,7,5,0,0,7031,7032,7,7,0,0,7032,1048,1,0,0,0,7033,7034,7,12,0,0,7034,7035,7,19,0,0,7035,7036,7,23,0,0,7036,7037,7,3,0,0,7037,7038,7,26,0,0,7038,7039,7,24,0,0,7039,7040,7,3,0,0,7040,7041,7,5,0,0,7041,7042,7,17,0,0,7042,7043,7,7,0,0,7043,1050,1,0,0,0,7044,7045,7,12,0,0,7045,7046,7,19,0,0,7046,7047,7,23,0,0,7047,7048,7,15,0,0,7048,7049,7,12,0,0,7049,7050,7,24,0,0,7050,7051,7,3,0,0,7051,7052,7,5,0,0,7052,7053,7,17,0,0,7053,7054,7,7,0,0,7054,1052,1,0,0,0,7055,7056,7,12,0,0,7056,7057,7,19,0,0,7057,7058,7,9,0,0,7058,7059,7,3,0,0,7059,7060,7,15,0,0,7060,7061,7,6,0,0,7061,1054,1,0,0,0,7062,7063,7,12,0,0,7063,7064,7,19,0,0,7064,7065,7,4,0,0,7065,7066,7,7,0,0,7066,7067,7,22,0,0,7067,7068,7,8,0,0,7068,7069,7,19,0,0,7069,7070,7,17,0,0,7070,7071,7,25,0,0,7071,1056,1,0,0,0,7072,7073,7,12,0,0,7073,7074,7,19,0,0,7074,7075,7,12,0,0,7075,7076,7,7,0,0,7076,1058,1,0,0,0,7077,7078,7,19,0,0,7078,7079,7,4,0,0,7079,7080,7,16,0,0,7080,7081,7,14,0,0,7081,1060,1,0,0,0,7082,7083,7,19,0,0,7083,7084,7,18,0,0,7084,7085,7,18,0,0,7085,7086,7,5,0,0,7086,7087,7,15,0,0,7087,7088,7,12,0,0,7088,7089,7,7,0,0,7089,1062,1,0,0,0,7090,7091,7,19,0,0,7091,7092,7,18,0,0,7092,7093,7,18,0,0,7093,7094,7,11,0,0,7094,7095,7,7,0,0,7095,7096,7,6,0,0,7096,1064,1,0,0,0,7097,7098,7,19,0,0,7098,7099,7,18,0,0,7099,1066,1,0,0,0,7100,7101,7,19,0,0,7101,7102,7,27,0,0,7102,1068,1,0,0,0,7103,7104,7,19,0,0,7104,7105,7,5,0,0,7105,7106,7,4,0,0,7106,7107,5,95,0,0,7107,7108,7,25,0,0,7108,7109,7,3,0,0,7109,7110,7,11,0,0,7110,7111,7,11,0,0,7111,7112,7,9,0,0,7112,7113,7,19,0,0,7113,7114,7,8,0,0,7114,7115,7,4,0,0,7115,1070,1,0,0,0,7116,7117,7,19,0,0,7117,7118,7,12,0,0,7118,7119,7,7,0,0,7119,1072,1,0,0,0,7120,7121,7,19,0,0,7121,7122,7,12,0,0,7122,7123,7,5,0,0,7123,7124,7,15,0,0,7124,7125,7,12,0,0,7125,7126,7,7,0,0,7126,1074,1,0,0,0,7127,7128,7,19,0,0,7128,7129,7,12,0,0,7129,7130,7,5,0,0,7130,7131,7,10,0,0,7131,1076,1,0,0,0,7132,7133,7,19,0,0,7133,7134,7,25,0,0,7134,7135,7,7,0,0,7135,7136,7,12,0,0,7136,1078,1,0,0,0,7137,7138,7,19,0,0,7138,7139,7,25,0,0,7139,7140,7,6,0,0,7140,7141,7,15,0,0,7141,7142,7,23,0,0,7142,7143,7,15,0,0,7143,7144,7,13,0,0,7144,7145,7,7,0,0,7145,7146,7,8,0,0,7146,7147,5,95,0,0,7147,7148,7,14,0,0,7148,7149,7,19,0,0,7149,7150,7,11,0,0,7150,7151,7,6,0,0,7151,7152,7,11,0,0,7152,1080,1,0,0,0,7153,7154,7,19,0,0,7154,7155,7,25,0,0,7155,7156,7,6,0,0,7156,7157,7,15,0,0,7157,7158,7,19,0,0,7158,7159,7,12,0,0,7159,7160,7,11,0,0,7160,1082,1,0,0,0,7161,7162,7,19,0,0,7162,7163,7,9,0,0,7163,7164,7,12,0,0,7164,7165,7,7,0,0,7165,7166,7,8,0,0,7166,1084,1,0,0,0,7167,7168,7,25,0,0,7168,7169,7,3,0,0,7169,7170,7,14,0,0,7170,7171,7,21,0,0,7171,7172,5,95,0,0,7172,7173,7,21,0,0,7173,7174,7,7,0,0,7174,7175,7,10,0,0,7175,7176,7,11,0,0,7176,1086,1,0,0,0,7177,7178,7,25,0,0,7178,7179,7,3,0,0,7179,7180,7,22,0,0,7180,7181,7,7,0,0,7181,1088,1,0,0,0,7182,7183,7,25,0,0,7183,7184,7,3,0,0,7184,7185,7,22,0,0,7185,7186,7,7,0,0,7186,7187,5,95,0,0,7187,7188,7,14,0,0,7188,7189,7,19,0,0,7189,7190,7,23,0,0,7190,7191,7,25,0,0,7191,7192,7,8,0,0,7192,7193,7,7,0,0,7193,7194,7,11,0,0,7194,7195,7,11,0,0,7195,7196,7,7,0,0,7196,7197,7,4,0,0,7197,1090,1,0,0,0,7198,7199,7,25,0,0,7199,7200,7,3,0,0,7200,7201,7,22,0,0,7201,7202,7,7,0,0,7202,7203,5,95,0,0,7203,7204,7,14,0,0,7204,7205,7,19,0,0,7205,7206,7,23,0,0,7206,7207,7,25,0,0,7207,7208,7,8,0,0,7208,7209,7,7,0,0,7209,7210,7,11,0,0,7210,7211,7,11,0,0,7211,7212,7,15,0,0,7212,7213,7,19,0,0,7213,7214,7,12,0,0,7214,7215,5,95,0,0,7215,7216,7,5,0,0,7216,7217,7,7,0,0,7217,7218,7,24,0,0,7218,7219,7,7,0,0,7219,7220,7,5,0,0,7220,1092,1,0,0,0,7221,7222,7,25,0,0,7222,7223,7,3,0,0,7223,7224,7,8,0,0,7224,7225,7,11,0,0,7225,7226,7,7,0,0,7226,7227,7,8,0,0,7227,1094,1,0,0,0,7228,7229,7,25,0,0,7229,7230,7,3,0,0,7230,7231,7,8,0,0,7231,7232,7,6,0,0,7232,7233,7,15,0,0,7233,7234,7,3,0,0,7234,7235,7,5,0,0,7235,1096,1,0,0,0,7236,7237,7,25,0,0,7237,7238,7,3,0,0,7238,7239,7,8,0,0,7239,7240,7,6,0,0,7240,7241,7,15,0,0,7241,7242,7,6,0,0,7242,7243,7,15,0,0,7243,7244,7,19,0,0,7244,7245,7,12,0,0,7245,7246,7,15,0,0,7246,7247,7,12,0,0,7247,7248,7,22,0,0,7248,1098,1,0,0,0,7249,7250,7,25,0,0,7250,7251,7,3,0,0,7251,7252,7,8,0,0,7252,7253,7,6,0,0,7253,7254,7,15,0,0,7254,7255,7,6,0,0,7255,7256,7,15,0,0,7256,7257,7,19,0,0,7257,7258,7,12,0,0,7258,7259,7,11,0,0,7259,1100,1,0,0,0,7260,7261,7,25,0,0,7261,7262,7,3,0,0,7262,7263,7,11,0,0,7263,7264,7,11,0,0,7264,7265,7,9,0,0,7265,7266,7,19,0,0,7266,7267,7,8,0,0,7267,7268,7,4,0,0,7268,1102,1,0,0,0,7269,7270,7,25,0,0,7270,7271,7,3,0,0,7271,7272,7,11,0,0,7272,7273,7,11,0,0,7273,7274,7,9,0,0,7274,7275,7,19,0,0,7275,7276,7,8,0,0,7276,7277,7,4,0,0,7277,7278,5,95,0,0,7278,7279,7,5,0,0,7279,7280,7,19,0,0,7280,7281,7,14,0,0,7281,7282,7,21,0,0,7282,7283,5,95,0,0,7283,7284,7,6,0,0,7284,7285,7,15,0,0,7285,7286,7,23,0,0,7286,7287,7,7,0,0,7287,1104,1,0,0,0,7288,7289,7,25,0,0,7289,7290,7,20,0,0,7290,7291,7,3,0,0,7291,7292,7,11,0,0,7292,7293,7,7,0,0,7293,1106,1,0,0,0,7294,7295,7,25,0,0,7295,7296,7,5,0,0,7296,7297,7,17,0,0,7297,7298,7,22,0,0,7298,7299,7,15,0,0,7299,7300,7,12,0,0,7300,1108,1,0,0,0,7301,7302,7,25,0,0,7302,7303,7,5,0,0,7303,7304,7,17,0,0,7304,7305,7,22,0,0,7305,7306,7,15,0,0,7306,7307,7,12,0,0,7307,7308,5,95,0,0,7308,7309,7,4,0,0,7309,7310,7,15,0,0,7310,7311,7,8,0,0,7311,1110,1,0,0,0,7312,7313,7,25,0,0,7313,7314,7,5,0,0,7314,7315,7,17,0,0,7315,7316,7,22,0,0,7316,7317,7,15,0,0,7317,7318,7,12,0,0,7318,7319,7,11,0,0,7319,1112,1,0,0,0,7320,7321,7,25,0,0,7321,7322,7,19,0,0,7322,7323,7,8,0,0,7323,7324,7,6,0,0,7324,1114,1,0,0,0,7325,7326,7,25,0,0,7326,7327,7,8,0,0,7327,7328,7,7,0,0,7328,7329,7,14,0,0,7329,7330,7,7,0,0,7330,7331,7,4,0,0,7331,7332,7,7,0,0,7332,7333,7,11,0,0,7333,1116,1,0,0,0,7334,7335,7,25,0,0,7335,7336,7,8,0,0,7336,7337,7,7,0,0,7337,7338,7,14,0,0,7338,7339,7,7,0,0,7339,7340,7,4,0,0,7340,7341,7,15,0,0,7341,7342,7,12,0,0,7342,7343,7,22,0,0,7343,1118,1,0,0,0,7344,7345,7,25,0,0,7345,7346,7,8,0,0,7346,7347,7,7,0,0,7347,7348,7,25,0,0,7348,7349,7,3,0,0,7349,7350,7,8,0,0,7350,7351,7,7,0,0,7351,1120,1,0,0,0,7352,7353,7,25,0,0,7353,7354,7,8,0,0,7354,7355,7,7,0,0,7355,7356,7,11,0,0,7356,7357,7,7,0,0,7357,7358,7,8,0,0,7358,7359,7,24,0,0,7359,7360,7,7,0,0,7360,1122,1,0,0,0,7361,7362,7,25,0,0,7362,7363,7,8,0,0,7363,7364,7,7,0,0,7364,7365,7,24,0,0,7365,1124,1,0,0,0,7366,7367,7,25,0,0,7367,7368,7,8,0,0,7368,7369,7,19,0,0,7369,7370,7,14,0,0,7370,7371,7,7,0,0,7371,7372,7,11,0,0,7372,7373,7,11,0,0,7373,7374,7,5,0,0,7374,7375,7,15,0,0,7375,7376,7,11,0,0,7376,7377,7,6,0,0,7377,1126,1,0,0,0,7378,7379,7,25,0,0,7379,7380,7,8,0,0,7380,7381,7,19,0,0,7381,7382,7,18,0,0,7382,7383,7,15,0,0,7383,7384,7,5,0,0,7384,7385,7,7,0,0,7385,1128,1,0,0,0,7386,7387,7,25,0,0,7387,7388,7,8,0,0,7388,7389,7,19,0,0,7389,7390,7,18,0,0,7390,7391,7,15,0,0,7391,7392,7,5,0,0,7392,7393,7,7,0,0,7393,7394,7,11,0,0,7394,1130,1,0,0,0,7395,7396,7,25,0,0,7396,7397,7,8,0,0,7397,7398,7,19,0,0,7398,7399,7,26,0,0,7399,7400,7,10,0,0,7400,1132,1,0,0,0,7401,7402,7,28,0,0,7402,7403,7,17,0,0,7403,7404,7,7,0,0,7404,7405,7,8,0,0,7405,7406,7,10,0,0,7406,1134,1,0,0,0,7407,7408,7,28,0,0,7408,7409,7,17,0,0,7409,7410,7,15,0,0,7410,7411,7,14,0,0,7411,7412,7,21,0,0,7412,1136,1,0,0,0,7413,7414,7,8,0,0,7414,7415,7,7,0,0,7415,7416,7,16,0,0,7416,7417,7,17,0,0,7417,7418,7,15,0,0,7418,7419,7,5,0,0,7419,7420,7,4,0,0,7420,1138,1,0,0,0,7421,7422,7,8,0,0,7422,7423,7,7,0,0,7423,7424,7,14,0,0,7424,7425,7,19,0,0,7425,7426,7,24,0,0,7426,7427,7,7,0,0,7427,7428,7,8,0,0,7428,1140,1,0,0,0,7429,7430,7,8,0,0,7430,7431,7,7,0,0,7431,7432,7,14,0,0,7432,7433,7,17,0,0,7433,7434,7,8,0,0,7434,7435,7,11,0,0,7435,7436,7,15,0,0,7436,7437,7,24,0,0,7437,7438,7,7,0,0,7438,1142,1,0,0,0,7439,7440,7,8,0,0,7440,7441,7,7,0,0,7441,7442,7,4,0,0,7442,7443,7,19,0,0,7443,7444,5,95,0,0,7444,7445,7,16,0,0,7445,7446,7,17,0,0,7446,7447,7,18,0,0,7447,7448,7,18,0,0,7448,7449,7,7,0,0,7449,7450,7,8,0,0,7450,7451,5,95,0,0,7451,7452,7,11,0,0,7452,7453,7,15,0,0,7453,7454,7,13,0,0,7454,7455,7,7,0,0,7455,1144,1,0,0,0,7456,7457,7,8,0,0,7457,7458,7,7,0,0,7458,7459,7,4,0,0,7459,7460,7,17,0,0,7460,7461,7,12,0,0,7461,7462,7,4,0,0,7462,7463,7,3,0,0,7463,7464,7,12,0,0,7464,7465,7,6,0,0,7465,1146,1,0,0,0,7466,7467,7,8,0,0,7467,7468,7,7,0,0,7468,7469,7,5,0,0,7469,7470,7,3,0,0,7470,7471,7,10,0,0,7471,1148,1,0,0,0,7472,7473,7,8,0,0,7473,7474,7,7,0,0,7474,7475,7,5,0,0,7475,7476,7,3,0,0,7476,7477,7,10,0,0,7477,7478,5,95,0,0,7478,7479,7,5,0,0,7479,7480,7,19,0,0,7480,7481,7,22,0,0,7481,7482,5,95,0,0,7482,7483,7,18,0,0,7483,7484,7,15,0,0,7484,7485,7,5,0,0,7485,7486,7,7,0,0,7486,1150,1,0,0,0,7487,7488,7,8,0,0,7488,7489,7,7,0,0,7489,7490,7,5,0,0,7490,7491,7,3,0,0,7491,7492,7,10,0,0,7492,7493,5,95,0,0,7493,7494,7,5,0,0,7494,7495,7,19,0,0,7495,7496,7,22,0,0,7496,7497,5,95,0,0,7497,7498,7,25,0,0,7498,7499,7,19,0,0,7499,7500,7,11,0,0,7500,1152,1,0,0,0,7501,7502,7,8,0,0,7502,7503,7,7,0,0,7503,7504,7,5,0,0,7504,7505,7,3,0,0,7505,7506,7,10,0,0,7506,7507,7,5,0,0,7507,7508,7,19,0,0,7508,7509,7,22,0,0,7509,1154,1,0,0,0,7510,7511,7,8,0,0,7511,7512,7,7,0,0,7512,7513,7,23,0,0,7513,7514,7,19,0,0,7514,7515,7,24,0,0,7515,7516,7,7,0,0,7516,1156,1,0,0,0,7517,7518,7,8,0,0,7518,7519,7,7,0,0,7519,7520,7,19,0,0,7520,7521,7,8,0,0,7521,7522,7,22,0,0,7522,7523,7,3,0,0,7523,7524,7,12,0,0,7524,7525,7,15,0,0,7525,7526,7,13,0,0,7526,7527,7,7,0,0,7527,1158,1,0,0,0,7528,7529,7,8,0,0,7529,7530,7,7,0,0,7530,7531,7,25,0,0,7531,7532,7,3,0,0,7532,7533,7,15,0,0,7533,7534,7,8,0,0,7534,1160,1,0,0,0,7535,7536,7,8,0,0,7536,7537,7,7,0,0,7537,7538,7,25,0,0,7538,7539,7,5,0,0,7539,7540,7,15,0,0,7540,7541,7,14,0,0,7541,7542,7,3,0,0,7542,7543,7,6,0,0,7543,7544,7,7,0,0,7544,7545,5,95,0,0,7545,7546,7,4,0,0,7546,7547,7,19,0,0,7547,7548,5,95,0,0,7548,7549,7,4,0,0,7549,7550,7,16,0,0,7550,1162,1,0,0,0,7551,7552,7,8,0,0,7552,7553,7,7,0,0,7553,7554,7,25,0,0,7554,7555,7,5,0,0,7555,7556,7,15,0,0,7556,7557,7,14,0,0,7557,7558,7,3,0,0,7558,7559,7,6,0,0,7559,7560,7,7,0,0,7560,7561,5,95,0,0,7561,7562,7,4,0,0,7562,7563,7,19,0,0,7563,7564,5,95,0,0,7564,7565,7,6,0,0,7565,7566,7,3,0,0,7566,7567,7,16,0,0,7567,7568,7,5,0,0,7568,7569,7,7,0,0,7569,1164,1,0,0,0,7570,7571,7,8,0,0,7571,7572,7,7,0,0,7572,7573,7,25,0,0,7573,7574,7,5,0,0,7574,7575,7,15,0,0,7575,7576,7,14,0,0,7576,7577,7,3,0,0,7577,7578,7,6,0,0,7578,7579,7,7,0,0,7579,7580,5,95,0,0,7580,7581,7,15,0,0,7581,7582,7,22,0,0,7582,7583,7,12,0,0,7583,7584,7,19,0,0,7584,7585,7,8,0,0,7585,7586,7,7,0,0,7586,7587,5,95,0,0,7587,7588,7,4,0,0,7588,7589,7,16,0,0,7589,1166,1,0,0,0,7590,7591,7,8,0,0,7591,7592,7,7,0,0,7592,7593,7,25,0,0,7593,7594,7,5,0,0,7594,7595,7,15,0,0,7595,7596,7,14,0,0,7596,7597,7,3,0,0,7597,7598,7,6,0,0,7598,7599,7,7,0,0,7599,7600,5,95,0,0,7600,7601,7,15,0,0,7601,7602,7,22,0,0,7602,7603,7,12,0,0,7603,7604,7,19,0,0,7604,7605,7,8,0,0,7605,7606,7,7,0,0,7606,7607,5,95,0,0,7607,7608,7,6,0,0,7608,7609,7,3,0,0,7609,7610,7,16,0,0,7610,7611,7,5,0,0,7611,7612,7,7,0,0,7612,1168,1,0,0,0,7613,7614,7,8,0,0,7614,7615,7,7,0,0,7615,7616,7,25,0,0,7616,7617,7,5,0,0,7617,7618,7,15,0,0,7618,7619,7,14,0,0,7619,7620,7,3,0,0,7620,7621,7,6,0,0,7621,7622,7,7,0,0,7622,7623,5,95,0,0,7623,7624,7,8,0,0,7624,7625,7,7,0,0,7625,7626,7,9,0,0,7626,7627,7,8,0,0,7627,7628,7,15,0,0,7628,7629,7,6,0,0,7629,7630,7,7,0,0,7630,7631,5,95,0,0,7631,7632,7,4,0,0,7632,7633,7,16,0,0,7633,1170,1,0,0,0,7634,7635,7,8,0,0,7635,7636,7,7,0,0,7636,7637,7,25,0,0,7637,7638,7,5,0,0,7638,7639,7,15,0,0,7639,7640,7,14,0,0,7640,7641,7,3,0,0,7641,7642,7,6,0,0,7642,7643,7,7,0,0,7643,7644,5,95,0,0,7644,7645,7,9,0,0,7645,7646,7,15,0,0,7646,7647,7,5,0,0,7647,7648,7,4,0,0,7648,7649,5,95,0,0,7649,7650,7,4,0,0,7650,7651,7,19,0,0,7651,7652,5,95,0,0,7652,7653,7,6,0,0,7653,7654,7,3,0,0,7654,7655,7,16,0,0,7655,7656,7,5,0,0,7656,7657,7,7,0,0,7657,1172,1,0,0,0,7658,7659,7,8,0,0,7659,7660,7,7,0,0,7660,7661,7,25,0,0,7661,7662,7,5,0,0,7662,7663,7,15,0,0,7663,7664,7,14,0,0,7664,7665,7,3,0,0,7665,7666,7,6,0,0,7666,7667,7,7,0,0,7667,7668,5,95,0,0,7668,7669,7,9,0,0,7669,7670,7,15,0,0,7670,7671,7,5,0,0,7671,7672,7,4,0,0,7672,7673,5,95,0,0,7673,7674,7,15,0,0,7674,7675,7,22,0,0,7675,7676,7,12,0,0,7676,7677,7,19,0,0,7677,7678,7,8,0,0,7678,7679,7,7,0,0,7679,7680,5,95,0,0,7680,7681,7,6,0,0,7681,7682,7,3,0,0,7682,7683,7,16,0,0,7683,7684,7,5,0,0,7684,7685,7,7,0,0,7685,1174,1,0,0,0,7686,7687,7,8,0,0,7687,7688,7,7,0,0,7688,7689,7,25,0,0,7689,7690,7,5,0,0,7690,7691,7,15,0,0,7691,7692,7,14,0,0,7692,7693,7,3,0,0,7693,7694,7,6,0,0,7694,7695,7,15,0,0,7695,7696,7,19,0,0,7696,7697,7,12,0,0,7697,1176,1,0,0,0,7698,7699,7,8,0,0,7699,7700,7,7,0,0,7700,7701,7,11,0,0,7701,7702,7,7,0,0,7702,7703,7,6,0,0,7703,1178,1,0,0,0,7704,7705,7,8,0,0,7705,7706,7,7,0,0,7706,7707,7,11,0,0,7707,7708,7,6,0,0,7708,7709,7,3,0,0,7709,7710,7,8,0,0,7710,7711,7,6,0,0,7711,1180,1,0,0,0,7712,7713,7,8,0,0,7713,7714,7,7,0,0,7714,7715,7,11,0,0,7715,7716,7,17,0,0,7716,7717,7,23,0,0,7717,7718,7,7,0,0,7718,1182,1,0,0,0,7719,7720,7,8,0,0,7720,7721,7,7,0,0,7721,7722,7,6,0,0,7722,7723,7,17,0,0,7723,7724,7,8,0,0,7724,7725,7,12,0,0,7725,7726,7,7,0,0,7726,7727,7,4,0,0,7727,7728,5,95,0,0,7728,7729,7,11,0,0,7729,7730,7,28,0,0,7730,7731,7,5,0,0,7731,7732,7,11,0,0,7732,7733,7,6,0,0,7733,7734,7,3,0,0,7734,7735,7,6,0,0,7735,7736,7,7,0,0,7736,1184,1,0,0,0,7737,7738,7,8,0,0,7738,7739,7,7,0,0,7739,7740,7,6,0,0,7740,7741,7,17,0,0,7741,7742,7,8,0,0,7742,7743,7,12,0,0,7743,7744,7,15,0,0,7744,7745,7,12,0,0,7745,7746,7,22,0,0,7746,1186,1,0,0,0,7747,7748,7,8,0,0,7748,7749,7,7,0,0,7749,7750,7,6,0,0,7750,7751,7,17,0,0,7751,7752,7,8,0,0,7752,7753,7,12,0,0,7753,7754,7,11,0,0,7754,1188,1,0,0,0,7755,7756,7,8,0,0,7756,7757,7,7,0,0,7757,7758,7,17,0,0,7758,7759,7,11,0,0,7759,7760,7,7,0,0,7760,1190,1,0,0,0,7761,7762,7,8,0,0,7762,7763,7,19,0,0,7763,7764,7,5,0,0,7764,7765,7,7,0,0,7765,1192,1,0,0,0,7766,7767,7,8,0,0,7767,7768,7,19,0,0,7768,7769,7,5,0,0,7769,7770,7,5,0,0,7770,7771,7,16,0,0,7771,7772,7,3,0,0,7772,7773,7,14,0,0,7773,7774,7,21,0,0,7774,1194,1,0,0,0,7775,7776,7,8,0,0,7776,7777,7,19,0,0,7777,7778,7,5,0,0,7778,7779,7,5,0,0,7779,7780,7,17,0,0,7780,7781,7,25,0,0,7781,1196,1,0,0,0,7782,7783,7,8,0,0,7783,7784,7,19,0,0,7784,7785,7,6,0,0,7785,7786,7,3,0,0,7786,7787,7,6,0,0,7787,7788,7,7,0,0,7788,1198,1,0,0,0,7789,7790,7,8,0,0,7790,7791,7,19,0,0,7791,7792,7,9,0,0,7792,1200,1,0,0,0,7793,7794,7,8,0,0,7794,7795,7,19,0,0,7795,7796,7,9,0,0,7796,7797,7,11,0,0,7797,1202,1,0,0,0,7798,7799,7,8,0,0,7799,7800,7,19,0,0,7800,7801,7,9,0,0,7801,7802,5,95,0,0,7802,7803,7,18,0,0,7803,7804,7,19,0,0,7804,7805,7,8,0,0,7805,7806,7,23,0,0,7806,7807,7,3,0,0,7807,7808,7,6,0,0,7808,1204,1,0,0,0,7809,7810,7,8,0,0,7810,7811,7,6,0,0,7811,7812,7,8,0,0,7812,7813,7,7,0,0,7813,7814,7,7,0,0,7814,1206,1,0,0,0,7815,7816,7,11,0,0,7816,7817,7,3,0,0,7817,7818,7,24,0,0,7818,7819,7,7,0,0,7819,7820,7,25,0,0,7820,7821,7,19,0,0,7821,7822,7,15,0,0,7822,7823,7,12,0,0,7823,7824,7,6,0,0,7824,1208,1,0,0,0,7825,7826,7,11,0,0,7826,7827,7,14,0,0,7827,7828,7,20,0,0,7828,7829,7,7,0,0,7829,7830,7,4,0,0,7830,7831,7,17,0,0,7831,7832,7,5,0,0,7832,7833,7,7,0,0,7833,1210,1,0,0,0,7834,7835,7,11,0,0,7835,7836,7,7,0,0,7836,7837,7,14,0,0,7837,7838,7,17,0,0,7838,7839,7,8,0,0,7839,7840,7,15,0,0,7840,7841,7,6,0,0,7841,7842,7,10,0,0,7842,1212,1,0,0,0,7843,7844,7,11,0,0,7844,7845,7,7,0,0,7845,7846,7,28,0,0,7846,7847,7,17,0,0,7847,7848,7,7,0,0,7848,7849,7,12,0,0,7849,7850,7,14,0,0,7850,7851,7,7,0,0,7851,1214,1,0,0,0,7852,7853,7,11,0,0,7853,7854,7,7,0,0,7854,7855,7,8,0,0,7855,7856,7,24,0,0,7856,7857,7,7,0,0,7857,7858,7,8,0,0,7858,1216,1,0,0,0,7859,7860,7,11,0,0,7860,7861,7,7,0,0,7861,7862,7,11,0,0,7862,7863,7,11,0,0,7863,7864,7,15,0,0,7864,7865,7,19,0,0,7865,7866,7,12,0,0,7866,1218,1,0,0,0,7867,7868,7,11,0,0,7868,7869,7,20,0,0,7869,7870,7,3,0,0,7870,7871,7,8,0,0,7871,7872,7,7,0,0,7872,1220,1,0,0,0,7873,7874,7,11,0,0,7874,7875,7,20,0,0,7875,7876,7,3,0,0,7876,7877,7,8,0,0,7877,7878,7,7,0,0,7878,7879,7,4,0,0,7879,1222,1,0,0,0,7880,7881,7,11,0,0,7881,7882,7,15,0,0,7882,7883,7,22,0,0,7883,7884,7,12,0,0,7884,7885,7,7,0,0,7885,7886,7,4,0,0,7886,1224,1,0,0,0,7887,7888,7,11,0,0,7888,7889,7,15,0,0,7889,7890,7,23,0,0,7890,7891,7,25,0,0,7891,7892,7,5,0,0,7892,7893,7,7,0,0,7893,1226,1,0,0,0,7894,7895,7,11,0,0,7895,7896,7,5,0,0,7896,7897,7,3,0,0,7897,7898,7,24,0,0,7898,7899,7,7,0,0,7899,1228,1,0,0,0,7900,7901,7,11,0,0,7901,7902,7,5,0,0,7902,7903,7,19,0,0,7903,7904,7,9,0,0,7904,1230,1,0,0,0,7905,7906,7,11,0,0,7906,7907,7,12,0,0,7907,7908,7,3,0,0,7908,7909,7,25,0,0,7909,7910,7,11,0,0,7910,7911,7,20,0,0,7911,7912,7,19,0,0,7912,7913,7,6,0,0,7913,1232,1,0,0,0,7914,7915,7,11,0,0,7915,7916,7,19,0,0,7916,7917,7,14,0,0,7917,7918,7,21,0,0,7918,7919,7,7,0,0,7919,7920,7,6,0,0,7920,1234,1,0,0,0,7921,7922,7,11,0,0,7922,7923,7,19,0,0,7923,7924,7,23,0,0,7924,7925,7,7,0,0,7925,1236,1,0,0,0,7926,7927,7,11,0,0,7927,7928,7,19,0,0,7928,7929,7,12,0,0,7929,7930,7,3,0,0,7930,7931,7,23,0,0,7931,7932,7,7,0,0,7932,1238,1,0,0,0,7933,7934,7,11,0,0,7934,7935,7,19,0,0,7935,7936,7,17,0,0,7936,7937,7,12,0,0,7937,7938,7,4,0,0,7938,7939,7,11,0,0,7939,1240,1,0,0,0,7940,7941,7,11,0,0,7941,7942,7,19,0,0,7942,7943,7,17,0,0,7943,7944,7,8,0,0,7944,7945,7,14,0,0,7945,7946,7,7,0,0,7946,1242,1,0,0,0,7947,7948,7,11,0,0,7948,7949,7,28,0,0,7949,7950,7,5,0,0,7950,7951,5,95,0,0,7951,7952,7,3,0,0,7952,7953,7,18,0,0,7953,7954,7,6,0,0,7954,7955,7,7,0,0,7955,7956,7,8,0,0,7956,7957,5,95,0,0,7957,7958,7,22,0,0,7958,7959,7,6,0,0,7959,7960,7,15,0,0,7960,7961,7,4,0,0,7961,7962,7,11,0,0,7962,1244,1,0,0,0,7963,7964,7,11,0,0,7964,7965,7,28,0,0,7965,7966,7,5,0,0,7966,7967,5,95,0,0,7967,7968,7,3,0,0,7968,7969,7,18,0,0,7969,7970,7,6,0,0,7970,7971,7,7,0,0,7971,7972,7,8,0,0,7972,7973,5,95,0,0,7973,7974,7,23,0,0,7974,7975,7,6,0,0,7975,7976,7,11,0,0,7976,7977,5,95,0,0,7977,7978,7,22,0,0,7978,7979,7,3,0,0,7979,7980,7,25,0,0,7980,7981,7,11,0,0,7981,1246,1,0,0,0,7982,7983,7,11,0,0,7983,7984,7,28,0,0,7984,7985,7,5,0,0,7985,7986,5,95,0,0,7986,7987,7,16,0,0,7987,7988,7,7,0,0,7988,7989,7,18,0,0,7989,7990,7,19,0,0,7990,7991,7,8,0,0,7991,7992,7,7,0,0,7992,7993,5,95,0,0,7993,7994,7,22,0,0,7994,7995,7,6,0,0,7995,7996,7,15,0,0,7996,7997,7,4,0,0,7997,7998,7,11,0,0,7998,1248,1,0,0,0,7999,8e3,7,11,0,0,8e3,8001,7,28,0,0,8001,8002,7,5,0,0,8002,8003,5,95,0,0,8003,8004,7,16,0,0,8004,8005,7,17,0,0,8005,8006,7,18,0,0,8006,8007,7,18,0,0,8007,8008,7,7,0,0,8008,8009,7,8,0,0,8009,8010,5,95,0,0,8010,8011,7,8,0,0,8011,8012,7,7,0,0,8012,8013,7,11,0,0,8013,8014,7,17,0,0,8014,8015,7,5,0,0,8015,8016,7,6,0,0,8016,1250,1,0,0,0,8017,8018,7,11,0,0,8018,8019,7,28,0,0,8019,8020,7,5,0,0,8020,8021,5,95,0,0,8021,8022,7,14,0,0,8022,8023,7,3,0,0,8023,8024,7,14,0,0,8024,8025,7,20,0,0,8025,8026,7,7,0,0,8026,1252,1,0,0,0,8027,8028,7,11,0,0,8028,8029,7,28,0,0,8029,8030,7,5,0,0,8030,8031,5,95,0,0,8031,8032,7,12,0,0,8032,8033,7,19,0,0,8033,8034,5,95,0,0,8034,8035,7,14,0,0,8035,8036,7,3,0,0,8036,8037,7,14,0,0,8037,8038,7,20,0,0,8038,8039,7,7,0,0,8039,1254,1,0,0,0,8040,8041,7,11,0,0,8041,8042,7,28,0,0,8042,8043,7,5,0,0,8043,8044,5,95,0,0,8044,8045,7,6,0,0,8045,8046,7,20,0,0,8046,8047,7,8,0,0,8047,8048,7,7,0,0,8048,8049,7,3,0,0,8049,8050,7,4,0,0,8050,1256,1,0,0,0,8051,8052,7,11,0,0,8052,8053,7,6,0,0,8053,8054,7,3,0,0,8054,8055,7,8,0,0,8055,8056,7,6,0,0,8056,1258,1,0,0,0,8057,8058,7,11,0,0,8058,8059,7,6,0,0,8059,8060,7,3,0,0,8060,8061,7,8,0,0,8061,8062,7,6,0,0,8062,8063,7,11,0,0,8063,1260,1,0,0,0,8064,8065,7,11,0,0,8065,8066,7,6,0,0,8066,8067,7,3,0,0,8067,8068,7,6,0,0,8068,8069,7,11,0,0,8069,8070,5,95,0,0,8070,8071,7,3,0,0,8071,8072,7,17,0,0,8072,8073,7,6,0,0,8073,8074,7,19,0,0,8074,8075,5,95,0,0,8075,8076,7,8,0,0,8076,8077,7,7,0,0,8077,8078,7,14,0,0,8078,8079,7,3,0,0,8079,8080,7,5,0,0,8080,8081,7,14,0,0,8081,1262,1,0,0,0,8082,8083,7,11,0,0,8083,8084,7,6,0,0,8084,8085,7,3,0,0,8085,8086,7,6,0,0,8086,8087,7,11,0,0,8087,8088,5,95,0,0,8088,8089,7,25,0,0,8089,8090,7,7,0,0,8090,8091,7,8,0,0,8091,8092,7,11,0,0,8092,8093,7,15,0,0,8093,8094,7,11,0,0,8094,8095,7,6,0,0,8095,8096,7,7,0,0,8096,8097,7,12,0,0,8097,8098,7,6,0,0,8098,1264,1,0,0,0,8099,8100,7,11,0,0,8100,8101,7,6,0,0,8101,8102,7,3,0,0,8102,8103,7,6,0,0,8103,8104,7,11,0,0,8104,8105,5,95,0,0,8105,8106,7,11,0,0,8106,8107,7,3,0,0,8107,8108,7,23,0,0,8108,8109,7,25,0,0,8109,8110,7,5,0,0,8110,8111,7,7,0,0,8111,8112,5,95,0,0,8112,8113,7,25,0,0,8113,8114,7,3,0,0,8114,8115,7,22,0,0,8115,8116,7,7,0,0,8116,8117,7,11,0,0,8117,1266,1,0,0,0,8118,8119,7,11,0,0,8119,8120,7,6,0,0,8120,8121,7,3,0,0,8121,8122,7,6,0,0,8122,8123,7,17,0,0,8123,8124,7,11,0,0,8124,1268,1,0,0,0,8125,8126,7,11,0,0,8126,8127,7,6,0,0,8127,8128,7,19,0,0,8128,8129,7,25,0,0,8129,1270,1,0,0,0,8130,8131,7,11,0,0,8131,8132,7,6,0,0,8132,8133,7,19,0,0,8133,8134,7,8,0,0,8134,8135,7,3,0,0,8135,8136,7,22,0,0,8136,8137,7,7,0,0,8137,1272,1,0,0,0,8138,8139,7,11,0,0,8139,8140,7,6,0,0,8140,8141,7,19,0,0,8141,8142,7,8,0,0,8142,8143,7,7,0,0,8143,8144,7,4,0,0,8144,1274,1,0,0,0,8145,8146,7,11,0,0,8146,8147,7,6,0,0,8147,8148,7,8,0,0,8148,8149,7,15,0,0,8149,8150,7,12,0,0,8150,8151,7,22,0,0,8151,1276,1,0,0,0,8152,8153,7,11,0,0,8153,8154,7,17,0,0,8154,8155,7,16,0,0,8155,8156,7,14,0,0,8156,8157,7,5,0,0,8157,8158,7,3,0,0,8158,8159,7,11,0,0,8159,8160,7,11,0,0,8160,8161,5,95,0,0,8161,8162,7,19,0,0,8162,8163,7,8,0,0,8163,8164,7,15,0,0,8164,8165,7,22,0,0,8165,8166,7,15,0,0,8166,8167,7,12,0,0,8167,1278,1,0,0,0,8168,8169,7,11,0,0,8169,8170,7,17,0,0,8170,8171,7,16,0,0,8171,8172,7,27,0,0,8172,8173,7,7,0,0,8173,8174,7,14,0,0,8174,8175,7,6,0,0,8175,1280,1,0,0,0,8176,8177,7,11,0,0,8177,8178,7,17,0,0,8178,8179,7,16,0,0,8179,8180,7,25,0,0,8180,8181,7,3,0,0,8181,8182,7,8,0,0,8182,8183,7,6,0,0,8183,8184,7,15,0,0,8184,8185,7,6,0,0,8185,8186,7,15,0,0,8186,8187,7,19,0,0,8187,8188,7,12,0,0,8188,1282,1,0,0,0,8189,8190,7,11,0,0,8190,8191,7,17,0,0,8191,8192,7,16,0,0,8192,8193,7,25,0,0,8193,8194,7,3,0,0,8194,8195,7,8,0,0,8195,8196,7,6,0,0,8196,8197,7,15,0,0,8197,8198,7,6,0,0,8198,8199,7,15,0,0,8199,8200,7,19,0,0,8200,8201,7,12,0,0,8201,8202,7,11,0,0,8202,1284,1,0,0,0,8203,8204,7,11,0,0,8204,8205,7,17,0,0,8205,8206,7,11,0,0,8206,8207,7,25,0,0,8207,8208,7,7,0,0,8208,8209,7,12,0,0,8209,8210,7,4,0,0,8210,1286,1,0,0,0,8211,8212,7,11,0,0,8212,8213,7,9,0,0,8213,8214,7,3,0,0,8214,8215,7,25,0,0,8215,8216,7,11,0,0,8216,1288,1,0,0,0,8217,8218,7,11,0,0,8218,8219,7,9,0,0,8219,8220,7,15,0,0,8220,8221,7,6,0,0,8221,8222,7,14,0,0,8222,8223,7,20,0,0,8223,8224,7,7,0,0,8224,8225,7,11,0,0,8225,1290,1,0,0,0,8226,8227,7,6,0,0,8227,8228,7,3,0,0,8228,8229,7,16,0,0,8229,8230,7,5,0,0,8230,8231,7,7,0,0,8231,8232,5,95,0,0,8232,8233,7,12,0,0,8233,8234,7,3,0,0,8234,8235,7,23,0,0,8235,8236,7,7,0,0,8236,1292,1,0,0,0,8237,8238,7,6,0,0,8238,8239,7,3,0,0,8239,8240,7,16,0,0,8240,8241,7,5,0,0,8241,8242,7,7,0,0,8242,8243,7,11,0,0,8243,8244,7,25,0,0,8244,8245,7,3,0,0,8245,8246,7,14,0,0,8246,8247,7,7,0,0,8247,1294,1,0,0,0,8248,8249,7,6,0,0,8249,8250,7,3,0,0,8250,8251,7,16,0,0,8251,8252,7,5,0,0,8252,8253,7,7,0,0,8253,8254,5,95,0,0,8254,8255,7,6,0,0,8255,8256,7,10,0,0,8256,8257,7,25,0,0,8257,8258,7,7,0,0,8258,1296,1,0,0,0,8259,8260,7,6,0,0,8260,8261,7,7,0,0,8261,8262,7,23,0,0,8262,8263,7,25,0,0,8263,8264,7,19,0,0,8264,8265,7,8,0,0,8265,8266,7,3,0,0,8266,8267,7,8,0,0,8267,8268,7,10,0,0,8268,1298,1,0,0,0,8269,8270,7,6,0,0,8270,8271,7,7,0,0,8271,8272,7,23,0,0,8272,8273,7,25,0,0,8273,8274,7,6,0,0,8274,8275,7,3,0,0,8275,8276,7,16,0,0,8276,8277,7,5,0,0,8277,8278,7,7,0,0,8278,1300,1,0,0,0,8279,8280,7,6,0,0,8280,8281,7,20,0,0,8281,8282,7,3,0,0,8282,8283,7,12,0,0,8283,1302,1,0,0,0,8284,8285,7,6,0,0,8285,8286,7,8,0,0,8286,8287,7,3,0,0,8287,8288,7,4,0,0,8288,8289,7,15,0,0,8289,8290,7,6,0,0,8290,8291,7,15,0,0,8291,8292,7,19,0,0,8292,8293,7,12,0,0,8293,8294,7,3,0,0,8294,8295,7,5,0,0,8295,1304,1,0,0,0,8296,8297,7,6,0,0,8297,8298,7,8,0,0,8298,8299,7,3,0,0,8299,8300,7,12,0,0,8300,8301,7,11,0,0,8301,8302,7,3,0,0,8302,8303,7,14,0,0,8303,8304,7,6,0,0,8304,8305,7,15,0,0,8305,8306,7,19,0,0,8306,8307,7,12,0,0,8307,1306,1,0,0,0,8308,8309,7,6,0,0,8309,8310,7,8,0,0,8310,8311,7,3,0,0,8311,8312,7,12,0,0,8312,8313,7,11,0,0,8313,8314,7,3,0,0,8314,8315,7,14,0,0,8315,8316,7,6,0,0,8316,8317,7,15,0,0,8317,8318,7,19,0,0,8318,8319,7,12,0,0,8319,8320,7,3,0,0,8320,8321,7,5,0,0,8321,1308,1,0,0,0,8322,8323,7,6,0,0,8323,8324,7,8,0,0,8324,8325,7,15,0,0,8325,8326,7,22,0,0,8326,8327,7,22,0,0,8327,8328,7,7,0,0,8328,8329,7,8,0,0,8329,8330,7,11,0,0,8330,1310,1,0,0,0,8331,8332,7,6,0,0,8332,8333,7,8,0,0,8333,8334,7,17,0,0,8334,8335,7,12,0,0,8335,8336,7,14,0,0,8336,8337,7,3,0,0,8337,8338,7,6,0,0,8338,8339,7,7,0,0,8339,1312,1,0,0,0,8340,8341,7,17,0,0,8341,8342,7,12,0,0,8342,8343,7,16,0,0,8343,8344,7,19,0,0,8344,8345,7,17,0,0,8345,8346,7,12,0,0,8346,8347,7,4,0,0,8347,8348,7,7,0,0,8348,8349,7,4,0,0,8349,1314,1,0,0,0,8350,8351,7,17,0,0,8351,8352,7,12,0,0,8352,8353,7,4,0,0,8353,8354,7,7,0,0,8354,8355,7,18,0,0,8355,8356,7,15,0,0,8356,8357,7,12,0,0,8357,8358,7,7,0,0,8358,8359,7,4,0,0,8359,1316,1,0,0,0,8360,8361,7,17,0,0,8361,8362,7,12,0,0,8362,8363,7,4,0,0,8363,8364,7,19,0,0,8364,8365,7,18,0,0,8365,8366,7,15,0,0,8366,8367,7,5,0,0,8367,8368,7,7,0,0,8368,1318,1,0,0,0,8369,8370,7,17,0,0,8370,8371,7,12,0,0,8371,8372,7,4,0,0,8372,8373,7,19,0,0,8373,8374,5,95,0,0,8374,8375,7,16,0,0,8375,8376,7,17,0,0,8376,8377,7,18,0,0,8377,8378,7,18,0,0,8378,8379,7,7,0,0,8379,8380,7,8,0,0,8380,8381,5,95,0,0,8381,8382,7,11,0,0,8382,8383,7,15,0,0,8383,8384,7,13,0,0,8384,8385,7,7,0,0,8385,1320,1,0,0,0,8386,8387,7,17,0,0,8387,8388,7,12,0,0,8388,8389,7,15,0,0,8389,8390,7,12,0,0,8390,8391,7,11,0,0,8391,8392,7,6,0,0,8392,8393,7,3,0,0,8393,8394,7,5,0,0,8394,8395,7,5,0,0,8395,1322,1,0,0,0,8396,8397,7,17,0,0,8397,8398,7,12,0,0,8398,8399,7,21,0,0,8399,8400,7,12,0,0,8400,8401,7,19,0,0,8401,8402,7,9,0,0,8402,8403,7,12,0,0,8403,1324,1,0,0,0,8404,8405,7,17,0,0,8405,8406,7,12,0,0,8406,8407,7,6,0,0,8407,8408,7,15,0,0,8408,8409,7,5,0,0,8409,1326,1,0,0,0,8410,8411,7,17,0,0,8411,8412,7,25,0,0,8412,8413,7,22,0,0,8413,8414,7,8,0,0,8414,8415,7,3,0,0,8415,8416,7,4,0,0,8416,8417,7,7,0,0,8417,1328,1,0,0,0,8418,8419,7,17,0,0,8419,8420,7,11,0,0,8420,8421,7,7,0,0,8421,8422,7,8,0,0,8422,1330,1,0,0,0,8423,8424,7,17,0,0,8424,8425,7,11,0,0,8425,8426,7,7,0,0,8426,8427,5,95,0,0,8427,8428,7,18,0,0,8428,8429,7,8,0,0,8429,8430,7,23,0,0,8430,1332,1,0,0,0,8431,8432,7,17,0,0,8432,8433,7,11,0,0,8433,8434,7,7,0,0,8434,8435,7,8,0,0,8435,8436,5,95,0,0,8436,8437,7,8,0,0,8437,8438,7,7,0,0,8438,8439,7,11,0,0,8439,8440,7,19,0,0,8440,8441,7,17,0,0,8441,8442,7,8,0,0,8442,8443,7,14,0,0,8443,8444,7,7,0,0,8444,8445,7,11,0,0,8445,1334,1,0,0,0,8446,8447,7,24,0,0,8447,8448,7,3,0,0,8448,8449,7,5,0,0,8449,8450,7,15,0,0,8450,8451,7,4,0,0,8451,8452,7,3,0,0,8452,8453,7,6,0,0,8453,8454,7,15,0,0,8454,8455,7,19,0,0,8455,8456,7,12,0,0,8456,1336,1,0,0,0,8457,8458,7,24,0,0,8458,8459,7,3,0,0,8459,8460,7,5,0,0,8460,8461,7,17,0,0,8461,8462,7,7,0,0,8462,1338,1,0,0,0,8463,8464,7,24,0,0,8464,8465,7,3,0,0,8465,8466,7,8,0,0,8466,8467,7,15,0,0,8467,8468,7,3,0,0,8468,8469,7,16,0,0,8469,8470,7,5,0,0,8470,8471,7,7,0,0,8471,8472,7,11,0,0,8472,1340,1,0,0,0,8473,8474,7,24,0,0,8474,8475,7,15,0,0,8475,8476,7,7,0,0,8476,8477,7,9,0,0,8477,1342,1,0,0,0,8478,8479,7,24,0,0,8479,8480,7,15,0,0,8480,8481,7,8,0,0,8481,8482,7,6,0,0,8482,8483,7,17,0,0,8483,8484,7,3,0,0,8484,8485,7,5,0,0,8485,1344,1,0,0,0,8486,8487,7,24,0,0,8487,8488,7,15,0,0,8488,8489,7,11,0,0,8489,8490,7,15,0,0,8490,8491,7,16,0,0,8491,8492,7,5,0,0,8492,8493,7,7,0,0,8493,1346,1,0,0,0,8494,8495,7,9,0,0,8495,8496,7,3,0,0,8496,8497,7,15,0,0,8497,8498,7,6,0,0,8498,1348,1,0,0,0,8499,8500,7,9,0,0,8500,8501,7,3,0,0,8501,8502,7,8,0,0,8502,8503,7,12,0,0,8503,8504,7,15,0,0,8504,8505,7,12,0,0,8505,8506,7,22,0,0,8506,8507,7,11,0,0,8507,1350,1,0,0,0,8508,8509,7,9,0,0,8509,8510,7,15,0,0,8510,8511,7,12,0,0,8511,8512,7,4,0,0,8512,8513,7,19,0,0,8513,8514,7,9,0,0,8514,1352,1,0,0,0,8515,8516,7,9,0,0,8516,8517,7,15,0,0,8517,8518,7,6,0,0,8518,8519,7,20,0,0,8519,8520,7,19,0,0,8520,8521,7,17,0,0,8521,8522,7,6,0,0,8522,1354,1,0,0,0,8523,8524,7,9,0,0,8524,8525,7,19,0,0,8525,8526,7,8,0,0,8526,8527,7,21,0,0,8527,1356,1,0,0,0,8528,8529,7,9,0,0,8529,8530,7,8,0,0,8530,8531,7,3,0,0,8531,8532,7,25,0,0,8532,8533,7,25,0,0,8533,8534,7,7,0,0,8534,8535,7,8,0,0,8535,1358,1,0,0,0,8536,8537,7,26,0,0,8537,8538,5,53,0,0,8538,8539,5,48,0,0,8539,8540,5,57,0,0,8540,1360,1,0,0,0,8541,8542,7,26,0,0,8542,8543,7,3,0,0,8543,1362,1,0,0,0,8544,8545,7,26,0,0,8545,8546,7,23,0,0,8546,8547,7,5,0,0,8547,1364,1,0,0,0,8548,8549,7,10,0,0,8549,8550,7,7,0,0,8550,8551,7,11,0,0,8551,1366,1,0,0,0,8552,8553,7,7,0,0,8553,8554,7,17,0,0,8554,8555,7,8,0,0,8555,1368,1,0,0,0,8556,8557,7,17,0,0,8557,8558,7,11,0,0,8558,8559,7,3,0,0,8559,1370,1,0,0,0,8560,8561,7,27,0,0,8561,8562,7,15,0,0,8562,8563,7,11,0,0,8563,1372,1,0,0,0,8564,8565,7,15,0,0,8565,8566,7,11,0,0,8566,8567,7,19,0,0,8567,1374,1,0,0,0,8568,8569,7,15,0,0,8569,8570,7,12,0,0,8570,8571,7,6,0,0,8571,8572,7,7,0,0,8572,8573,7,8,0,0,8573,8574,7,12,0,0,8574,8575,7,3,0,0,8575,8576,7,5,0,0,8576,1376,1,0,0,0,8577,8578,7,28,0,0,8578,8579,7,17,0,0,8579,8580,7,3,0,0,8580,8581,7,8,0,0,8581,8582,7,6,0,0,8582,8583,7,7,0,0,8583,8584,7,8,0,0,8584,1378,1,0,0,0,8585,8586,7,23,0,0,8586,8587,7,19,0,0,8587,8588,7,12,0,0,8588,8589,7,6,0,0,8589,8590,7,20,0,0,8590,1380,1,0,0,0,8591,8592,7,4,0,0,8592,8593,7,3,0,0,8593,8594,7,10,0,0,8594,1382,1,0,0,0,8595,8596,7,20,0,0,8596,8597,7,19,0,0,8597,8598,7,17,0,0,8598,8599,7,8,0,0,8599,1384,1,0,0,0,8600,8601,7,23,0,0,8601,8602,7,15,0,0,8602,8603,7,12,0,0,8603,8604,7,17,0,0,8604,8605,7,6,0,0,8605,8606,7,7,0,0,8606,1386,1,0,0,0,8607,8608,7,9,0,0,8608,8609,7,7,0,0,8609,8610,7,7,0,0,8610,8611,7,21,0,0,8611,1388,1,0,0,0,8612,8613,7,11,0,0,8613,8614,7,7,0,0,8614,8615,7,14,0,0,8615,8616,7,19,0,0,8616,8617,7,12,0,0,8617,8618,7,4,0,0,8618,1390,1,0,0,0,8619,8620,7,23,0,0,8620,8621,7,15,0,0,8621,8622,7,14,0,0,8622,8623,7,8,0,0,8623,8624,7,19,0,0,8624,8625,7,11,0,0,8625,8626,7,7,0,0,8626,8627,7,14,0,0,8627,8628,7,19,0,0,8628,8629,7,12,0,0,8629,8630,7,4,0,0,8630,1392,1,0,0,0,8631,8632,7,3,0,0,8632,8633,7,4,0,0,8633,8634,7,23,0,0,8634,8635,7,15,0,0,8635,8636,7,12,0,0,8636,1394,1,0,0,0,8637,8638,7,3,0,0,8638,8639,7,25,0,0,8639,8640,7,25,0,0,8640,8641,7,5,0,0,8641,8642,7,15,0,0,8642,8643,7,14,0,0,8643,8644,7,3,0,0,8644,8645,7,6,0,0,8645,8646,7,15,0,0,8646,8647,7,19,0,0,8647,8648,7,12,0,0,8648,8649,5,95,0,0,8649,8650,7,25,0,0,8650,8651,7,3,0,0,8651,8652,7,11,0,0,8652,8653,7,11,0,0,8653,8654,7,9,0,0,8654,8655,7,19,0,0,8655,8656,7,8,0,0,8656,8657,7,4,0,0,8657,8658,5,95,0,0,8658,8659,7,3,0,0,8659,8660,7,4,0,0,8660,8661,7,23,0,0,8661,8662,7,15,0,0,8662,8663,7,12,0,0,8663,1396,1,0,0,0,8664,8665,7,3,0,0,8665,8666,7,17,0,0,8666,8667,7,4,0,0,8667,8668,7,15,0,0,8668,8669,7,6,0,0,8669,8670,5,95,0,0,8670,8671,7,3,0,0,8671,8672,7,16,0,0,8672,8673,7,19,0,0,8673,8674,7,8,0,0,8674,8675,7,6,0,0,8675,8676,5,95,0,0,8676,8677,7,7,0,0,8677,8678,7,26,0,0,8678,8679,7,7,0,0,8679,8680,7,23,0,0,8680,8681,7,25,0,0,8681,8682,7,6,0,0,8682,1398,1,0,0,0,8683,8684,7,3,0,0,8684,8685,7,17,0,0,8685,8686,7,4,0,0,8686,8687,7,15,0,0,8687,8688,7,6,0,0,8688,8689,5,95,0,0,8689,8690,7,3,0,0,8690,8691,7,4,0,0,8691,8692,7,23,0,0,8692,8693,7,15,0,0,8693,8694,7,12,0,0,8694,1400,1,0,0,0,8695,8696,7,3,0,0,8696,8697,7,17,0,0,8697,8698,7,6,0,0,8698,8699,7,20,0,0,8699,8700,7,7,0,0,8700,8701,7,12,0,0,8701,8702,7,6,0,0,8702,8703,7,15,0,0,8703,8704,7,14,0,0,8704,8705,7,3,0,0,8705,8706,7,6,0,0,8706,8707,7,15,0,0,8707,8708,7,19,0,0,8708,8709,7,12,0,0,8709,8710,5,95,0,0,8710,8711,7,25,0,0,8711,8712,7,19,0,0,8712,8713,7,5,0,0,8713,8714,7,15,0,0,8714,8715,7,14,0,0,8715,8716,7,10,0,0,8716,8717,5,95,0,0,8717,8718,7,3,0,0,8718,8719,7,4,0,0,8719,8720,7,23,0,0,8720,8721,7,15,0,0,8721,8722,7,12,0,0,8722,1402,1,0,0,0,8723,8724,7,16,0,0,8724,8725,7,3,0,0,8725,8726,7,14,0,0,8726,8727,7,21,0,0,8727,8728,7,17,0,0,8728,8729,7,25,0,0,8729,8730,5,95,0,0,8730,8731,7,3,0,0,8731,8732,7,4,0,0,8732,8733,7,23,0,0,8733,8734,7,15,0,0,8734,8735,7,12,0,0,8735,1404,1,0,0,0,8736,8737,7,16,0,0,8737,8738,7,15,0,0,8738,8739,7,12,0,0,8739,8740,7,5,0,0,8740,8741,7,19,0,0,8741,8742,7,22,0,0,8742,8743,5,95,0,0,8743,8744,7,3,0,0,8744,8745,7,4,0,0,8745,8746,7,23,0,0,8746,8747,7,15,0,0,8747,8748,7,12,0,0,8748,1406,1,0,0,0,8749,8750,7,16,0,0,8750,8751,7,15,0,0,8751,8752,7,12,0,0,8752,8753,7,5,0,0,8753,8754,7,19,0,0,8754,8755,7,22,0,0,8755,8756,5,95,0,0,8756,8757,7,7,0,0,8757,8758,7,12,0,0,8758,8759,7,14,0,0,8759,8760,7,8,0,0,8760,8761,7,10,0,0,8761,8762,7,25,0,0,8762,8763,7,6,0,0,8763,8764,7,15,0,0,8764,8765,7,19,0,0,8765,8766,7,12,0,0,8766,8767,5,95,0,0,8767,8768,7,3,0,0,8768,8769,7,4,0,0,8769,8770,7,23,0,0,8770,8771,7,15,0,0,8771,8772,7,12,0,0,8772,1408,1,0,0,0,8773,8774,7,14,0,0,8774,8775,7,5,0,0,8775,8776,7,19,0,0,8776,8777,7,12,0,0,8777,8778,7,7,0,0,8778,8779,5,95,0,0,8779,8780,7,3,0,0,8780,8781,7,4,0,0,8781,8782,7,23,0,0,8782,8783,7,15,0,0,8783,8784,7,12,0,0,8784,1410,1,0,0,0,8785,8786,7,14,0,0,8786,8787,7,19,0,0,8787,8788,7,12,0,0,8788,8789,7,12,0,0,8789,8790,7,7,0,0,8790,8791,7,14,0,0,8791,8792,7,6,0,0,8792,8793,7,15,0,0,8793,8794,7,19,0,0,8794,8795,7,12,0,0,8795,8796,5,95,0,0,8796,8797,7,3,0,0,8797,8798,7,4,0,0,8798,8799,7,23,0,0,8799,8800,7,15,0,0,8800,8801,7,12,0,0,8801,1412,1,0,0,0,8802,8803,7,7,0,0,8803,8804,7,12,0,0,8804,8805,7,14,0,0,8805,8806,7,8,0,0,8806,8807,7,10,0,0,8807,8808,7,25,0,0,8808,8809,7,6,0,0,8809,8810,7,15,0,0,8810,8811,7,19,0,0,8811,8812,7,12,0,0,8812,8813,5,95,0,0,8813,8814,7,21,0,0,8814,8815,7,7,0,0,8815,8816,7,10,0,0,8816,8817,5,95,0,0,8817,8818,7,3,0,0,8818,8819,7,4,0,0,8819,8820,7,23,0,0,8820,8821,7,15,0,0,8821,8822,7,12,0,0,8822,1414,1,0,0,0,8823,8824,7,7,0,0,8824,8825,7,26,0,0,8825,8826,7,7,0,0,8826,8827,7,14,0,0,8827,8828,7,17,0,0,8828,8829,7,6,0,0,8829,8830,7,7,0,0,8830,1416,1,0,0,0,8831,8832,7,18,0,0,8832,8833,7,15,0,0,8833,8834,7,5,0,0,8834,8835,7,7,0,0,8835,1418,1,0,0,0,8836,8837,7,18,0,0,8837,8838,7,15,0,0,8838,8839,7,8,0,0,8839,8840,7,7,0,0,8840,8841,7,9,0,0,8841,8842,7,3,0,0,8842,8843,7,5,0,0,8843,8844,7,5,0,0,8844,8845,5,95,0,0,8845,8846,7,3,0,0,8846,8847,7,4,0,0,8847,8848,7,23,0,0,8848,8849,7,15,0,0,8849,8850,7,12,0,0,8850,1420,1,0,0,0,8851,8852,7,18,0,0,8852,8853,7,15,0,0,8853,8854,7,8,0,0,8854,8855,7,7,0,0,8855,8856,7,9,0,0,8856,8857,7,3,0,0,8857,8858,7,5,0,0,8858,8859,7,5,0,0,8859,8860,5,95,0,0,8860,8861,7,7,0,0,8861,8862,7,26,0,0,8862,8863,7,7,0,0,8863,8864,7,23,0,0,8864,8865,7,25,0,0,8865,8866,7,6,0,0,8866,1422,1,0,0,0,8867,8868,7,18,0,0,8868,8869,7,15,0,0,8869,8870,7,8,0,0,8870,8871,7,7,0,0,8871,8872,7,9,0,0,8872,8873,7,3,0,0,8873,8874,7,5,0,0,8874,8875,7,5,0,0,8875,8876,5,95,0,0,8876,8877,7,17,0,0,8877,8878,7,11,0,0,8878,8879,7,7,0,0,8879,8880,7,8,0,0,8880,1424,1,0,0,0,8881,8882,7,18,0,0,8882,8883,7,5,0,0,8883,8884,7,17,0,0,8884,8885,7,11,0,0,8885,8886,7,20,0,0,8886,8887,5,95,0,0,8887,8888,7,19,0,0,8888,8889,7,25,0,0,8889,8890,7,6,0,0,8890,8891,7,15,0,0,8891,8892,7,23,0,0,8892,8893,7,15,0,0,8893,8894,7,13,0,0,8894,8895,7,7,0,0,8895,8896,7,8,0,0,8896,8897,5,95,0,0,8897,8898,7,14,0,0,8898,8899,7,19,0,0,8899,8900,7,11,0,0,8900,8901,7,6,0,0,8901,8902,7,11,0,0,8902,1426,1,0,0,0,8903,8904,7,18,0,0,8904,8905,7,5,0,0,8905,8906,7,17,0,0,8906,8907,7,11,0,0,8907,8908,7,20,0,0,8908,8909,5,95,0,0,8909,8910,7,11,0,0,8910,8911,7,6,0,0,8911,8912,7,3,0,0,8912,8913,7,6,0,0,8913,8914,7,17,0,0,8914,8915,7,11,0,0,8915,1428,1,0,0,0,8916,8917,7,18,0,0,8917,8918,7,5,0,0,8918,8919,7,17,0,0,8919,8920,7,11,0,0,8920,8921,7,20,0,0,8921,8922,5,95,0,0,8922,8923,7,6,0,0,8923,8924,7,3,0,0,8924,8925,7,16,0,0,8925,8926,7,5,0,0,8926,8927,7,7,0,0,8927,8928,7,11,0,0,8928,1430,1,0,0,0,8929,8930,7,18,0,0,8930,8931,7,5,0,0,8931,8932,7,17,0,0,8932,8933,7,11,0,0,8933,8934,7,20,0,0,8934,8935,5,95,0,0,8935,8936,7,17,0,0,8936,8937,7,11,0,0,8937,8938,7,7,0,0,8938,8939,7,8,0,0,8939,8940,5,95,0,0,8940,8941,7,8,0,0,8941,8942,7,7,0,0,8942,8943,7,11,0,0,8943,8944,7,19,0,0,8944,8945,7,17,0,0,8945,8946,7,8,0,0,8946,8947,7,14,0,0,8947,8948,7,7,0,0,8948,8949,7,11,0,0,8949,1432,1,0,0,0,8950,8951,7,22,0,0,8951,8952,7,8,0,0,8952,8953,7,19,0,0,8953,8954,7,17,0,0,8954,8955,7,25,0,0,8955,8956,5,95,0,0,8956,8957,7,8,0,0,8957,8958,7,7,0,0,8958,8959,7,25,0,0,8959,8960,7,5,0,0,8960,8961,7,15,0,0,8961,8962,7,14,0,0,8962,8963,7,3,0,0,8963,8964,7,6,0,0,8964,8965,7,15,0,0,8965,8966,7,19,0,0,8966,8967,7,12,0,0,8967,8968,5,95,0,0,8968,8969,7,3,0,0,8969,8970,7,4,0,0,8970,8971,7,23,0,0,8971,8972,7,15,0,0,8972,8973,7,12,0,0,8973,1434,1,0,0,0,8974,8975,7,15,0,0,8975,8976,7,12,0,0,8976,8977,7,12,0,0,8977,8978,7,19,0,0,8978,8979,7,4,0,0,8979,8980,7,16,0,0,8980,8981,5,95,0,0,8981,8982,7,8,0,0,8982,8983,7,7,0,0,8983,8984,7,4,0,0,8984,8985,7,19,0,0,8985,8986,5,95,0,0,8986,8987,7,5,0,0,8987,8988,7,19,0,0,8988,8989,7,22,0,0,8989,8990,5,95,0,0,8990,8991,7,3,0,0,8991,8992,7,8,0,0,8992,8993,7,14,0,0,8993,8994,7,20,0,0,8994,8995,7,15,0,0,8995,8996,7,24,0,0,8996,8997,7,7,0,0,8997,1436,1,0,0,0,8998,8999,7,15,0,0,8999,9e3,7,12,0,0,9e3,9001,7,12,0,0,9001,9002,7,19,0,0,9002,9003,7,4,0,0,9003,9004,7,16,0,0,9004,9005,5,95,0,0,9005,9006,7,8,0,0,9006,9007,7,7,0,0,9007,9008,7,4,0,0,9008,9009,7,19,0,0,9009,9010,5,95,0,0,9010,9011,7,5,0,0,9011,9012,7,19,0,0,9012,9013,7,22,0,0,9013,9014,5,95,0,0,9014,9015,7,7,0,0,9015,9016,7,12,0,0,9016,9017,7,3,0,0,9017,9018,7,16,0,0,9018,9019,7,5,0,0,9019,9020,7,7,0,0,9020,1438,1,0,0,0,9021,9022,7,15,0,0,9022,9023,7,12,0,0,9023,9024,7,24,0,0,9024,9025,7,19,0,0,9025,9026,7,21,0,0,9026,9027,7,7,0,0,9027,1440,1,0,0,0,9028,9029,7,5,0,0,9029,9030,7,3,0,0,9030,9031,7,23,0,0,9031,9032,7,16,0,0,9032,9033,7,4,0,0,9033,9034,7,3,0,0,9034,1442,1,0,0,0,9035,9036,7,12,0,0,9036,9037,7,4,0,0,9037,9038,7,16,0,0,9038,9039,5,95,0,0,9039,9040,7,11,0,0,9040,9041,7,6,0,0,9041,9042,7,19,0,0,9042,9043,7,8,0,0,9043,9044,7,7,0,0,9044,9045,7,4,0,0,9045,9046,5,95,0,0,9046,9047,7,17,0,0,9047,9048,7,11,0,0,9048,9049,7,7,0,0,9049,9050,7,8,0,0,9050,1444,1,0,0,0,9051,9052,7,25,0,0,9052,9053,7,3,0,0,9053,9054,7,11,0,0,9054,9055,7,11,0,0,9055,9056,7,9,0,0,9056,9057,7,19,0,0,9057,9058,7,8,0,0,9058,9059,7,4,0,0,9059,9060,7,5,0,0,9060,9061,7,7,0,0,9061,9062,7,11,0,0,9062,9063,7,11,0,0,9063,9064,5,95,0,0,9064,9065,7,17,0,0,9065,9066,7,11,0,0,9066,9067,7,7,0,0,9067,9068,7,8,0,0,9068,9069,5,95,0,0,9069,9070,7,3,0,0,9070,9071,7,4,0,0,9071,9072,7,23,0,0,9072,9073,7,15,0,0,9073,9074,7,12,0,0,9074,1446,1,0,0,0,9075,9076,7,25,0,0,9076,9077,7,7,0,0,9077,9078,7,8,0,0,9078,9079,7,11,0,0,9079,9080,7,15,0,0,9080,9081,7,11,0,0,9081,9082,7,6,0,0,9082,9083,5,95,0,0,9083,9084,7,8,0,0,9084,9085,7,19,0,0,9085,9086,5,95,0,0,9086,9087,7,24,0,0,9087,9088,7,3,0,0,9088,9089,7,8,0,0,9089,9090,7,15,0,0,9090,9091,7,3,0,0,9091,9092,7,16,0,0,9092,9093,7,5,0,0,9093,9094,7,7,0,0,9094,9095,7,11,0,0,9095,9096,5,95,0,0,9096,9097,7,3,0,0,9097,9098,7,4,0,0,9098,9099,7,23,0,0,9099,9100,7,15,0,0,9100,9101,7,12,0,0,9101,1448,1,0,0,0,9102,9103,7,25,0,0,9103,9104,7,8,0,0,9104,9105,7,15,0,0,9105,9106,7,24,0,0,9106,9107,7,15,0,0,9107,9108,7,5,0,0,9108,9109,7,7,0,0,9109,9110,7,22,0,0,9110,9111,7,7,0,0,9111,9112,7,11,0,0,9112,1450,1,0,0,0,9113,9114,7,25,0,0,9114,9115,7,8,0,0,9115,9116,7,19,0,0,9116,9117,7,14,0,0,9117,9118,7,7,0,0,9118,9119,7,11,0,0,9119,9120,7,11,0,0,9120,1452,1,0,0,0,9121,9122,7,8,0,0,9122,9123,7,7,0,0,9123,9124,7,5,0,0,9124,9125,7,19,0,0,9125,9126,7,3,0,0,9126,9127,7,4,0,0,9127,1454,1,0,0,0,9128,9129,7,8,0,0,9129,9130,7,7,0,0,9130,9131,7,25,0,0,9131,9132,7,5,0,0,9132,9133,7,15,0,0,9133,9134,7,14,0,0,9134,9135,7,3,0,0,9135,9136,7,6,0,0,9136,9137,7,15,0,0,9137,9138,7,19,0,0,9138,9139,7,12,0,0,9139,9140,5,95,0,0,9140,9141,7,3,0,0,9141,9142,7,25,0,0,9142,9143,7,25,0,0,9143,9144,7,5,0,0,9144,9145,7,15,0,0,9145,9146,7,7,0,0,9146,9147,7,8,0,0,9147,1456,1,0,0,0,9148,9149,7,8,0,0,9149,9150,7,7,0,0,9150,9151,7,25,0,0,9151,9152,7,5,0,0,9152,9153,7,15,0,0,9153,9154,7,14,0,0,9154,9155,7,3,0,0,9155,9156,7,6,0,0,9156,9157,7,15,0,0,9157,9158,7,19,0,0,9158,9159,7,12,0,0,9159,9160,5,95,0,0,9160,9161,7,11,0,0,9161,9162,7,5,0,0,9162,9163,7,3,0,0,9163,9164,7,24,0,0,9164,9165,7,7,0,0,9165,9166,5,95,0,0,9166,9167,7,3,0,0,9167,9168,7,4,0,0,9168,9169,7,23,0,0,9169,9170,7,15,0,0,9170,9171,7,12,0,0,9171,1458,1,0,0,0,9172,9173,7,8,0,0,9173,9174,7,7,0,0,9174,9175,7,11,0,0,9175,9176,7,19,0,0,9176,9177,7,17,0,0,9177,9178,7,8,0,0,9178,9179,7,14,0,0,9179,9180,7,7,0,0,9180,9181,5,95,0,0,9181,9182,7,22,0,0,9182,9183,7,8,0,0,9183,9184,7,19,0,0,9184,9185,7,17,0,0,9185,9186,7,25,0,0,9186,9187,5,95,0,0,9187,9188,7,3,0,0,9188,9189,7,4,0,0,9189,9190,7,23,0,0,9190,9191,7,15,0,0,9191,9192,7,12,0,0,9192,1460,1,0,0,0,9193,9194,7,8,0,0,9194,9195,7,7,0,0,9195,9196,7,11,0,0,9196,9197,7,19,0,0,9197,9198,7,17,0,0,9198,9199,7,8,0,0,9199,9200,7,14,0,0,9200,9201,7,7,0,0,9201,9202,5,95,0,0,9202,9203,7,22,0,0,9203,9204,7,8,0,0,9204,9205,7,19,0,0,9205,9206,7,17,0,0,9206,9207,7,25,0,0,9207,9208,5,95,0,0,9208,9209,7,17,0,0,9209,9210,7,11,0,0,9210,9211,7,7,0,0,9211,9212,7,8,0,0,9212,1462,1,0,0,0,9213,9214,7,8,0,0,9214,9215,7,19,0,0,9215,9216,7,5,0,0,9216,9217,7,7,0,0,9217,9218,5,95,0,0,9218,9219,7,3,0,0,9219,9220,7,4,0,0,9220,9221,7,23,0,0,9221,9222,7,15,0,0,9222,9223,7,12,0,0,9223,1464,1,0,0,0,9224,9225,7,8,0,0,9225,9226,7,19,0,0,9226,9227,7,17,0,0,9227,9228,7,6,0,0,9228,9229,7,15,0,0,9229,9230,7,12,0,0,9230,9231,7,7,0,0,9231,1466,1,0,0,0,9232,9233,7,11,0,0,9233,9234,5,51,0,0,9234,1468,1,0,0,0,9235,9236,7,11,0,0,9236,9237,7,7,0,0,9237,9238,7,8,0,0,9238,9239,7,24,0,0,9239,9240,7,15,0,0,9240,9241,7,14,0,0,9241,9242,7,7,0,0,9242,9243,5,95,0,0,9243,9244,7,14,0,0,9244,9245,7,19,0,0,9245,9246,7,12,0,0,9246,9247,7,12,0,0,9247,9248,7,7,0,0,9248,9249,7,14,0,0,9249,9250,7,6,0,0,9250,9251,7,15,0,0,9251,9252,7,19,0,0,9252,9253,7,12,0,0,9253,9254,5,95,0,0,9254,9255,7,3,0,0,9255,9256,7,4,0,0,9256,9257,7,23,0,0,9257,9258,7,15,0,0,9258,9259,7,12,0,0,9259,1470,1,0,0,0,9260,9262,3,2289,1144,0,9261,9260,1,0,0,0,9261,9262,1,0,0,0,9262,9263,1,0,0,0,9263,9264,7,11,0,0,9264,9265,7,7,0,0,9265,9266,7,11,0,0,9266,9267,7,11,0,0,9267,9268,7,15,0,0,9268,9269,7,19,0,0,9269,9270,7,12,0,0,9270,9271,5,95,0,0,9271,9272,7,24,0,0,9272,9273,7,3,0,0,9273,9274,7,8,0,0,9274,9275,7,15,0,0,9275,9276,7,3,0,0,9276,9277,7,16,0,0,9277,9278,7,5,0,0,9278,9279,7,7,0,0,9279,9280,7,11,0,0,9280,9281,5,95,0,0,9281,9282,7,3,0,0,9282,9283,7,4,0,0,9283,9284,7,23,0,0,9284,9285,7,15,0,0,9285,9286,7,12,0,0,9286,9288,1,0,0,0,9287,9289,3,2289,1144,0,9288,9287,1,0,0,0,9288,9289,1,0,0,0,9289,1472,1,0,0,0,9290,9291,7,11,0,0,9291,9292,7,7,0,0,9292,9293,7,6,0,0,9293,9294,5,95,0,0,9294,9295,7,17,0,0,9295,9296,7,11,0,0,9296,9297,7,7,0,0,9297,9298,7,8,0,0,9298,9299,5,95,0,0,9299,9300,7,15,0,0,9300,9301,7,4,0,0,9301,1474,1,0,0,0,9302,9303,7,11,0,0,9303,9304,7,20,0,0,9304,9305,7,19,0,0,9305,9306,7,9,0,0,9306,9307,5,95,0,0,9307,9308,7,8,0,0,9308,9309,7,19,0,0,9309,9310,7,17,0,0,9310,9311,7,6,0,0,9311,9312,7,15,0,0,9312,9313,7,12,0,0,9313,9314,7,7,0,0,9314,1476,1,0,0,0,9315,9316,7,11,0,0,9316,9317,7,20,0,0,9317,9318,7,17,0,0,9318,9319,7,6,0,0,9319,9320,7,4,0,0,9320,9321,7,19,0,0,9321,9322,7,9,0,0,9322,9323,7,12,0,0,9323,1478,1,0,0,0,9324,9325,7,11,0,0,9325,9326,7,17,0,0,9326,9327,7,25,0,0,9327,9328,7,7,0,0,9328,9329,7,8,0,0,9329,1480,1,0,0,0,9330,9331,7,11,0,0,9331,9332,7,10,0,0,9332,9333,7,11,0,0,9333,9334,7,6,0,0,9334,9335,7,7,0,0,9335,9336,7,23,0,0,9336,9337,5,95,0,0,9337,9338,7,24,0,0,9338,9339,7,3,0,0,9339,9340,7,8,0,0,9340,9341,7,15,0,0,9341,9342,7,3,0,0,9342,9343,7,16,0,0,9343,9344,7,5,0,0,9344,9345,7,7,0,0,9345,9346,7,11,0,0,9346,9347,5,95,0,0,9347,9348,7,3,0,0,9348,9349,7,4,0,0,9349,9350,7,23,0,0,9350,9351,7,15,0,0,9351,9352,7,12,0,0,9352,1482,1,0,0,0,9353,9354,7,6,0,0,9354,9355,7,3,0,0,9355,9356,7,16,0,0,9356,9357,7,5,0,0,9357,9358,7,7,0,0,9358,9359,7,11,0,0,9359,1484,1,0,0,0,9360,9361,7,6,0,0,9361,9362,7,3,0,0,9362,9363,7,16,0,0,9363,9364,7,5,0,0,9364,9365,7,7,0,0,9365,9366,5,95,0,0,9366,9367,7,7,0,0,9367,9368,7,12,0,0,9368,9369,7,14,0,0,9369,9370,7,8,0,0,9370,9371,7,10,0,0,9371,9372,7,25,0,0,9372,9373,7,6,0,0,9373,9374,7,15,0,0,9374,9375,7,19,0,0,9375,9376,7,12,0,0,9376,9377,5,95,0,0,9377,9378,7,3,0,0,9378,9379,7,4,0,0,9379,9380,7,23,0,0,9380,9381,7,15,0,0,9381,9382,7,12,0,0,9382,1486,1,0,0,0,9383,9384,7,24,0,0,9384,9385,7,7,0,0,9385,9386,7,8,0,0,9386,9387,7,11,0,0,9387,9388,7,15,0,0,9388,9389,7,19,0,0,9389,9390,7,12,0,0,9390,9391,5,95,0,0,9391,9392,7,6,0,0,9392,9393,7,19,0,0,9393,9394,7,21,0,0,9394,9395,7,7,0,0,9395,9396,7,12,0,0,9396,9397,5,95,0,0,9397,9398,7,3,0,0,9398,9399,7,4,0,0,9399,9400,7,23,0,0,9400,9401,7,15,0,0,9401,9402,7,12,0,0,9402,1488,1,0,0,0,9403,9404,7,26,0,0,9404,9405,7,3,0,0,9405,9406,5,95,0,0,9406,9407,7,8,0,0,9407,9408,7,7,0,0,9408,9409,7,14,0,0,9409,9410,7,19,0,0,9410,9411,7,24,0,0,9411,9412,7,7,0,0,9412,9413,7,8,0,0,9413,9414,5,95,0,0,9414,9415,7,3,0,0,9415,9416,7,4,0,0,9416,9417,7,23,0,0,9417,9418,7,15,0,0,9418,9419,7,12,0,0,9419,1490,1,0,0,0,9420,9421,7,3,0,0,9421,9422,7,8,0,0,9422,9423,7,23,0,0,9423,9424,7,11,0,0,9424,9425,7,14,0,0,9425,9426,7,15,0,0,9426,9427,7,15,0,0,9427,9428,5,56,0,0,9428,1492,1,0,0,0,9429,9430,7,3,0,0,9430,9431,7,11,0,0,9431,9432,7,14,0,0,9432,9433,7,15,0,0,9433,9434,7,15,0,0,9434,1494,1,0,0,0,9435,9436,7,16,0,0,9436,9437,7,15,0,0,9437,9438,7,22,0,0,9438,9439,5,53,0,0,9439,1496,1,0,0,0,9440,9441,7,14,0,0,9441,9442,7,25,0,0,9442,9443,5,49,0,0,9443,9444,5,50,0,0,9444,9445,5,53,0,0,9445,9446,5,48,0,0,9446,1498,1,0,0,0,9447,9448,7,14,0,0,9448,9449,7,25,0,0,9449,9450,5,49,0,0,9450,9451,5,50,0,0,9451,9452,5,53,0,0,9452,9453,5,49,0,0,9453,1500,1,0,0,0,9454,9455,7,14,0,0,9455,9456,7,25,0,0,9456,9457,5,49,0,0,9457,9458,5,50,0,0,9458,9459,5,53,0,0,9459,9460,5,54,0,0,9460,1502,1,0,0,0,9461,9462,7,14,0,0,9462,9463,7,25,0,0,9463,9464,5,49,0,0,9464,9465,5,50,0,0,9465,9466,5,53,0,0,9466,9467,5,55,0,0,9467,1504,1,0,0,0,9468,9469,7,14,0,0,9469,9470,7,25,0,0,9470,9471,5,56,0,0,9471,9472,5,53,0,0,9472,9473,5,48,0,0,9473,1506,1,0,0,0,9474,9475,7,14,0,0,9475,9476,7,25,0,0,9476,9477,5,56,0,0,9477,9478,5,53,0,0,9478,9479,5,50,0,0,9479,1508,1,0,0,0,9480,9481,7,14,0,0,9481,9482,7,25,0,0,9482,9483,5,56,0,0,9483,9484,5,54,0,0,9484,9485,5,54,0,0,9485,1510,1,0,0,0,9486,9487,7,14,0,0,9487,9488,7,25,0,0,9488,9489,5,57,0,0,9489,9490,5,51,0,0,9490,9491,5,50,0,0,9491,1512,1,0,0,0,9492,9493,7,4,0,0,9493,9494,7,7,0,0,9494,9495,7,14,0,0,9495,9496,5,56,0,0,9496,1514,1,0,0,0,9497,9498,7,7,0,0,9498,9499,7,17,0,0,9499,9500,7,14,0,0,9500,9501,7,27,0,0,9501,9502,7,25,0,0,9502,9503,7,23,0,0,9503,9504,7,11,0,0,9504,1516,1,0,0,0,9505,9506,7,7,0,0,9506,9507,7,17,0,0,9507,9508,7,14,0,0,9508,9509,7,21,0,0,9509,9510,7,8,0,0,9510,1518,1,0,0,0,9511,9512,7,22,0,0,9512,9513,7,16,0,0,9513,9514,5,49,0,0,9514,9515,5,56,0,0,9515,9516,5,48,0,0,9516,9517,5,51,0,0,9517,9518,5,48,0,0,9518,1520,1,0,0,0,9519,9520,7,22,0,0,9520,9521,7,16,0,0,9521,9522,5,50,0,0,9522,9523,5,51,0,0,9523,9524,5,49,0,0,9524,9525,5,50,0,0,9525,1522,1,0,0,0,9526,9527,7,22,0,0,9527,9528,7,16,0,0,9528,9529,7,21,0,0,9529,1524,1,0,0,0,9530,9531,7,22,0,0,9531,9532,7,7,0,0,9532,9533,7,19,0,0,9533,9534,7,11,0,0,9534,9535,7,6,0,0,9535,9536,7,4,0,0,9536,9537,5,56,0,0,9537,1526,1,0,0,0,9538,9539,7,22,0,0,9539,9540,7,8,0,0,9540,9541,7,7,0,0,9541,9542,7,7,0,0,9542,9543,7,21,0,0,9543,1528,1,0,0,0,9544,9545,7,20,0,0,9545,9546,7,7,0,0,9546,9547,7,16,0,0,9547,9548,7,8,0,0,9548,9549,7,7,0,0,9549,9550,7,9,0,0,9550,1530,1,0,0,0,9551,9552,7,20,0,0,9552,9553,7,25,0,0,9553,9554,5,56,0,0,9554,1532,1,0,0,0,9555,9556,7,21,0,0,9556,9557,7,7,0,0,9557,9558,7,10,0,0,9558,9559,7,16,0,0,9559,9560,7,14,0,0,9560,9561,7,11,0,0,9561,9562,5,50,0,0,9562,1534,1,0,0,0,9563,9564,7,21,0,0,9564,9565,7,19,0,0,9565,9566,7,15,0,0,9566,9567,5,56,0,0,9567,9568,7,8,0,0,9568,1536,1,0,0,0,9569,9570,7,21,0,0,9570,9571,7,19,0,0,9571,9572,7,15,0,0,9572,9573,5,56,0,0,9573,9574,7,17,0,0,9574,1538,1,0,0,0,9575,9576,7,5,0,0,9576,9577,7,3,0,0,9577,9578,7,6,0,0,9578,9579,7,15,0,0,9579,9580,7,12,0,0,9580,9581,5,49,0,0,9581,1540,1,0,0,0,9582,9583,7,5,0,0,9583,9584,7,3,0,0,9584,9585,7,6,0,0,9585,9586,7,15,0,0,9586,9587,7,12,0,0,9587,9588,5,50,0,0,9588,1542,1,0,0,0,9589,9590,7,5,0,0,9590,9591,7,3,0,0,9591,9592,7,6,0,0,9592,9593,7,15,0,0,9593,9594,7,12,0,0,9594,9595,5,53,0,0,9595,1544,1,0,0,0,9596,9597,7,5,0,0,9597,9598,7,3,0,0,9598,9599,7,6,0,0,9599,9600,7,15,0,0,9600,9601,7,12,0,0,9601,9602,5,55,0,0,9602,1546,1,0,0,0,9603,9604,7,23,0,0,9604,9605,7,3,0,0,9605,9606,7,14,0,0,9606,9607,7,14,0,0,9607,9608,7,7,0,0,9608,1548,1,0,0,0,9609,9610,7,23,0,0,9610,9611,7,3,0,0,9611,9612,7,14,0,0,9612,9613,7,8,0,0,9613,9614,7,19,0,0,9614,9615,7,23,0,0,9615,9616,7,3,0,0,9616,9617,7,12,0,0,9617,1550,1,0,0,0,9618,9619,7,11,0,0,9619,9620,7,27,0,0,9620,9621,7,15,0,0,9621,9622,7,11,0,0,9622,1552,1,0,0,0,9623,9624,7,11,0,0,9624,9625,7,9,0,0,9625,9626,7,7,0,0,9626,9627,5,55,0,0,9627,1554,1,0,0,0,9628,9629,7,6,0,0,9629,9630,7,15,0,0,9630,9631,7,11,0,0,9631,9632,5,54,0,0,9632,9633,5,50,0,0,9633,9634,5,48,0,0,9634,1556,1,0,0,0,9635,9636,7,17,0,0,9636,9637,7,14,0,0,9637,9638,7,11,0,0,9638,9639,5,50,0,0,9639,1558,1,0,0,0,9640,9641,7,17,0,0,9641,9642,7,27,0,0,9642,9643,7,15,0,0,9643,9644,7,11,0,0,9644,1560,1,0,0,0,9645,9646,7,17,0,0,9646,9647,7,6,0,0,9647,9648,7,18,0,0,9648,9649,5,49,0,0,9649,9650,5,54,0,0,9650,1562,1,0,0,0,9651,9652,7,17,0,0,9652,9653,7,6,0,0,9653,9654,7,18,0,0,9654,9655,5,49,0,0,9655,9656,5,54,0,0,9656,9657,7,5,0,0,9657,9658,7,7,0,0,9658,1564,1,0,0,0,9659,9660,7,17,0,0,9660,9661,7,6,0,0,9661,9662,7,18,0,0,9662,9663,5,51,0,0,9663,9664,5,50,0,0,9664,1566,1,0,0,0,9665,9666,7,17,0,0,9666,9667,7,6,0,0,9667,9668,7,18,0,0,9668,9669,5,56,0,0,9669,1568,1,0,0,0,9670,9671,7,17,0,0,9671,9672,7,6,0,0,9672,9673,7,18,0,0,9673,9674,5,56,0,0,9674,9675,7,23,0,0,9675,9676,7,16,0,0,9676,9677,5,51,0,0,9677,1570,1,0,0,0,9678,9679,7,17,0,0,9679,9680,7,6,0,0,9680,9681,7,18,0,0,9681,9682,5,56,0,0,9682,9683,7,23,0,0,9683,9684,7,16,0,0,9684,9685,5,52,0,0,9685,1572,1,0,0,0,9686,9687,7,3,0,0,9687,9688,7,8,0,0,9688,9689,7,14,0,0,9689,9690,7,20,0,0,9690,9691,7,15,0,0,9691,9692,7,24,0,0,9692,9693,7,7,0,0,9693,1574,1,0,0,0,9694,9695,7,16,0,0,9695,9696,7,5,0,0,9696,9697,7,3,0,0,9697,9698,7,14,0,0,9698,9699,7,21,0,0,9699,9700,7,20,0,0,9700,9701,7,19,0,0,9701,9702,7,5,0,0,9702,9703,7,7,0,0,9703,1576,1,0,0,0,9704,9705,7,14,0,0,9705,9706,7,11,0,0,9706,9707,7,24,0,0,9707,1578,1,0,0,0,9708,9709,7,18,0,0,9709,9710,7,7,0,0,9710,9711,7,4,0,0,9711,9712,7,7,0,0,9712,9713,7,8,0,0,9713,9714,7,3,0,0,9714,9715,7,6,0,0,9715,9716,7,7,0,0,9716,9717,7,4,0,0,9717,1580,1,0,0,0,9718,9719,7,15,0,0,9719,9720,7,12,0,0,9720,9721,7,12,0,0,9721,9722,7,19,0,0,9722,9723,7,4,0,0,9723,9724,7,16,0,0,9724,1582,1,0,0,0,9725,9726,7,23,0,0,9726,9727,7,7,0,0,9727,9728,7,23,0,0,9728,9729,7,19,0,0,9729,9730,7,8,0,0,9730,9731,7,10,0,0,9731,1584,1,0,0,0,9732,9733,7,23,0,0,9733,9734,7,8,0,0,9734,9735,7,22,0,0,9735,9736,5,95,0,0,9736,9737,7,23,0,0,9737,9738,7,10,0,0,9738,9739,7,15,0,0,9739,9740,7,11,0,0,9740,9741,7,3,0,0,9741,9742,7,23,0,0,9742,1586,1,0,0,0,9743,9744,7,23,0,0,9744,9745,7,10,0,0,9745,9746,7,15,0,0,9746,9747,7,11,0,0,9747,9748,7,3,0,0,9748,9749,7,23,0,0,9749,1588,1,0,0,0,9750,9751,7,12,0,0,9751,9752,7,4,0,0,9752,9753,7,16,0,0,9753,1590,1,0,0,0,9754,9755,7,12,0,0,9755,9756,7,4,0,0,9756,9757,7,16,0,0,9757,9758,7,14,0,0,9758,9759,7,5,0,0,9759,9760,7,17,0,0,9760,9761,7,11,0,0,9761,9762,7,6,0,0,9762,9763,7,7,0,0,9763,9764,7,8,0,0,9764,1592,1,0,0,0,9765,9766,7,25,0,0,9766,9767,7,7,0,0,9767,9768,7,8,0,0,9768,9769,7,18,0,0,9769,9770,7,19,0,0,9770,9771,7,8,0,0,9771,9772,7,23,0,0,9772,9773,7,3,0,0,9773,9774,7,12,0,0,9774,9775,7,14,0,0,9775,9776,7,7,0,0,9776,9777,5,95,0,0,9777,9778,7,11,0,0,9778,9779,7,14,0,0,9779,9780,7,20,0,0,9780,9781,7,7,0,0,9781,9782,7,23,0,0,9782,9783,7,3,0,0,9783,1594,1,0,0,0,9784,9785,7,6,0,0,9785,9786,7,19,0,0,9786,9787,7,21,0,0,9787,9788,7,17,0,0,9788,9789,7,4,0,0,9789,9790,7,16,0,0,9790,1596,1,0,0,0,9791,9792,7,8,0,0,9792,9793,7,7,0,0,9793,9794,7,25,0,0,9794,9795,7,7,0,0,9795,9796,7,3,0,0,9796,9797,7,6,0,0,9797,9798,7,3,0,0,9798,9799,7,16,0,0,9799,9800,7,5,0,0,9800,9801,7,7,0,0,9801,1598,1,0,0,0,9802,9803,7,14,0,0,9803,9804,7,19,0,0,9804,9805,7,23,0,0,9805,9806,7,23,0,0,9806,9807,7,15,0,0,9807,9808,7,6,0,0,9808,9809,7,6,0,0,9809,9810,7,7,0,0,9810,9811,7,4,0,0,9811,1600,1,0,0,0,9812,9813,7,17,0,0,9813,9814,7,12,0,0,9814,9815,7,14,0,0,9815,9816,7,19,0,0,9816,9817,7,23,0,0,9817,9818,7,23,0,0,9818,9819,7,15,0,0,9819,9820,7,6,0,0,9820,9821,7,6,0,0,9821,9822,7,7,0,0,9822,9823,7,4,0,0,9823,1602,1,0,0,0,9824,9825,7,11,0,0,9825,9826,7,7,0,0,9826,9827,7,8,0,0,9827,9828,7,15,0,0,9828,9829,7,3,0,0,9829,9830,7,5,0,0,9830,9831,7,15,0,0,9831,9832,7,13,0,0,9832,9833,7,3,0,0,9833,9834,7,16,0,0,9834,9835,7,5,0,0,9835,9836,7,7,0,0,9836,1604,1,0,0,0,9837,9838,7,22,0,0,9838,9839,7,7,0,0,9839,9840,7,19,0,0,9840,9841,7,23,0,0,9841,9842,7,7,0,0,9842,9843,7,6,0,0,9843,9844,7,8,0,0,9844,9845,7,10,0,0,9845,9846,7,14,0,0,9846,9847,7,19,0,0,9847,9848,7,5,0,0,9848,9849,7,5,0,0,9849,9850,7,7,0,0,9850,9851,7,14,0,0,9851,9852,7,6,0,0,9852,9853,7,15,0,0,9853,9854,7,19,0,0,9854,9855,7,12,0,0,9855,1606,1,0,0,0,9856,9857,7,22,0,0,9857,9858,7,7,0,0,9858,9859,7,19,0,0,9859,9860,7,23,0,0,9860,9861,7,14,0,0,9861,9862,7,19,0,0,9862,9863,7,5,0,0,9863,9864,7,5,0,0,9864,9865,7,7,0,0,9865,9866,7,14,0,0,9866,9867,7,6,0,0,9867,9868,7,15,0,0,9868,9869,7,19,0,0,9869,9870,7,12,0,0,9870,1608,1,0,0,0,9871,9872,7,22,0,0,9872,9873,7,7,0,0,9873,9874,7,19,0,0,9874,9875,7,23,0,0,9875,9876,7,7,0,0,9876,9877,7,6,0,0,9877,9878,7,8,0,0,9878,9879,7,10,0,0,9879,1610,1,0,0,0,9880,9881,7,5,0,0,9881,9882,7,15,0,0,9882,9883,7,12,0,0,9883,9884,7,7,0,0,9884,9885,7,11,0,0,9885,9886,7,6,0,0,9886,9887,7,8,0,0,9887,9888,7,15,0,0,9888,9889,7,12,0,0,9889,9890,7,22,0,0,9890,1612,1,0,0,0,9891,9892,7,23,0,0,9892,9893,7,17,0,0,9893,9894,7,5,0,0,9894,9895,7,6,0,0,9895,9896,7,15,0,0,9896,9897,7,5,0,0,9897,9898,7,15,0,0,9898,9899,7,12,0,0,9899,9900,7,7,0,0,9900,9901,7,11,0,0,9901,9902,7,6,0,0,9902,9903,7,8,0,0,9903,9904,7,15,0,0,9904,9905,7,12,0,0,9905,9906,7,22,0,0,9906,1614,1,0,0,0,9907,9908,7,23,0,0,9908,9909,7,17,0,0,9909,9910,7,5,0,0,9910,9911,7,6,0,0,9911,9912,7,15,0,0,9912,9913,7,25,0,0,9913,9914,7,19,0,0,9914,9915,7,15,0,0,9915,9916,7,12,0,0,9916,9917,7,6,0,0,9917,1616,1,0,0,0,9918,9919,7,23,0,0,9919,9920,7,17,0,0,9920,9921,7,5,0,0,9921,9922,7,6,0,0,9922,9923,7,15,0,0,9923,9924,7,25,0,0,9924,9925,7,19,0,0,9925,9926,7,5,0,0,9926,9927,7,10,0,0,9927,9928,7,22,0,0,9928,9929,7,19,0,0,9929,9930,7,12,0,0,9930,1618,1,0,0,0,9931,9932,7,25,0,0,9932,9933,7,19,0,0,9933,9934,7,15,0,0,9934,9935,7,12,0,0,9935,9936,7,6,0,0,9936,1620,1,0,0,0,9937,9938,7,25,0,0,9938,9939,7,19,0,0,9939,9940,7,5,0,0,9940,9941,7,10,0,0,9941,9942,7,22,0,0,9942,9943,7,19,0,0,9943,9944,7,12,0,0,9944,1622,1,0,0,0,9945,9946,7,3,0,0,9946,9947,7,16,0,0,9947,9948,7,11,0,0,9948,1624,1,0,0,0,9949,9950,7,3,0,0,9950,9951,7,14,0,0,9951,9952,7,19,0,0,9952,9953,7,11,0,0,9953,1626,1,0,0,0,9954,9955,7,3,0,0,9955,9956,7,4,0,0,9956,9957,7,4,0,0,9957,9958,7,4,0,0,9958,9959,7,3,0,0,9959,9960,7,6,0,0,9960,9961,7,7,0,0,9961,1628,1,0,0,0,9962,9963,7,3,0,0,9963,9964,7,4,0,0,9964,9965,7,4,0,0,9965,9966,7,6,0,0,9966,9967,7,15,0,0,9967,9968,7,23,0,0,9968,9969,7,7,0,0,9969,1630,1,0,0,0,9970,9971,7,3,0,0,9971,9972,7,7,0,0,9972,9973,7,11,0,0,9973,9974,5,95,0,0,9974,9975,7,4,0,0,9975,9976,7,7,0,0,9976,9977,7,14,0,0,9977,9978,7,8,0,0,9978,9979,7,10,0,0,9979,9980,7,25,0,0,9980,9981,7,6,0,0,9981,1632,1,0,0,0,9982,9983,7,3,0,0,9983,9984,7,7,0,0,9984,9985,7,11,0,0,9985,9986,5,95,0,0,9986,9987,7,7,0,0,9987,9988,7,12,0,0,9988,9989,7,14,0,0,9989,9990,7,8,0,0,9990,9991,7,10,0,0,9991,9992,7,25,0,0,9992,9993,7,6,0,0,9993,1634,1,0,0,0,9994,9995,7,3,0,0,9995,9996,7,8,0,0,9996,9997,7,7,0,0,9997,9998,7,3,0,0,9998,1636,1,0,0,0,9999,1e4,7,3,0,0,1e4,10001,7,11,0,0,10001,10002,7,16,0,0,10002,10003,7,15,0,0,10003,10004,7,12,0,0,10004,10005,7,3,0,0,10005,10006,7,8,0,0,10006,10007,7,10,0,0,10007,1638,1,0,0,0,10008,10009,7,3,0,0,10009,10010,7,11,0,0,10010,10011,7,15,0,0,10011,10012,7,12,0,0,10012,1640,1,0,0,0,10013,10014,7,3,0,0,10014,10015,7,11,0,0,10015,10016,7,6,0,0,10016,10017,7,7,0,0,10017,10018,7,26,0,0,10018,10019,7,6,0,0,10019,1642,1,0,0,0,10020,10021,7,3,0,0,10021,10022,7,11,0,0,10022,10023,7,9,0,0,10023,10024,7,21,0,0,10024,10025,7,16,0,0,10025,1644,1,0,0,0,10026,10027,7,3,0,0,10027,10028,7,11,0,0,10028,10029,7,9,0,0,10029,10030,7,21,0,0,10030,10031,7,6,0,0,10031,1646,1,0,0,0,10032,10033,7,3,0,0,10033,10034,7,11,0,0,10034,10035,7,10,0,0,10035,10036,7,23,0,0,10036,10037,7,23,0,0,10037,10038,7,7,0,0,10038,10039,7,6,0,0,10039,10040,7,8,0,0,10040,10041,7,15,0,0,10041,10042,7,14,0,0,10042,10043,5,95,0,0,10043,10044,7,4,0,0,10044,10045,7,7,0,0,10045,10046,7,14,0,0,10046,10047,7,8,0,0,10047,10048,7,10,0,0,10048,10049,7,25,0,0,10049,10050,7,6,0,0,10050,1648,1,0,0,0,10051,10052,7,3,0,0,10052,10053,7,11,0,0,10053,10054,7,10,0,0,10054,10055,7,23,0,0,10055,10056,7,23,0,0,10056,10057,7,7,0,0,10057,10058,7,6,0,0,10058,10059,7,8,0,0,10059,10060,7,15,0,0,10060,10061,7,14,0,0,10061,10062,5,95,0,0,10062,10063,7,4,0,0,10063,10064,7,7,0,0,10064,10065,7,8,0,0,10065,10066,7,15,0,0,10066,10067,7,24,0,0,10067,10068,7,7,0,0,10068,1650,1,0,0,0,10069,10070,7,3,0,0,10070,10071,7,11,0,0,10071,10072,7,10,0,0,10072,10073,7,23,0,0,10073,10074,7,23,0,0,10074,10075,7,7,0,0,10075,10076,7,6,0,0,10076,10077,7,8,0,0,10077,10078,7,15,0,0,10078,10079,7,14,0,0,10079,10080,5,95,0,0,10080,10081,7,7,0,0,10081,10082,7,12,0,0,10082,10083,7,14,0,0,10083,10084,7,8,0,0,10084,10085,7,10,0,0,10085,10086,7,25,0,0,10086,10087,7,6,0,0,10087,1652,1,0,0,0,10088,10089,7,3,0,0,10089,10090,7,11,0,0,10090,10091,7,10,0,0,10091,10092,7,23,0,0,10092,10093,7,23,0,0,10093,10094,7,7,0,0,10094,10095,7,6,0,0,10095,10096,7,8,0,0,10096,10097,7,15,0,0,10097,10098,7,14,0,0,10098,10099,5,95,0,0,10099,10100,7,11,0,0,10100,10101,7,15,0,0,10101,10102,7,22,0,0,10102,10103,7,12,0,0,10103,1654,1,0,0,0,10104,10105,7,3,0,0,10105,10106,7,11,0,0,10106,10107,7,10,0,0,10107,10108,7,23,0,0,10108,10109,7,23,0,0,10109,10110,7,7,0,0,10110,10111,7,6,0,0,10111,10112,7,8,0,0,10112,10113,7,15,0,0,10113,10114,7,14,0,0,10114,10115,5,95,0,0,10115,10116,7,24,0,0,10116,10117,7,7,0,0,10117,10118,7,8,0,0,10118,10119,7,15,0,0,10119,10120,7,18,0,0,10120,10121,7,10,0,0,10121,1656,1,0,0,0,10122,10123,7,3,0,0,10123,10124,7,6,0,0,10124,10125,7,3,0,0,10125,10126,7,12,0,0,10126,1658,1,0,0,0,10127,10128,7,3,0,0,10128,10129,7,6,0,0,10129,10130,7,3,0,0,10130,10131,7,12,0,0,10131,10132,5,50,0,0,10132,1660,1,0,0,0,10133,10134,7,16,0,0,10134,10135,7,7,0,0,10135,10136,7,12,0,0,10136,10137,7,14,0,0,10137,10138,7,20,0,0,10138,10139,7,23,0,0,10139,10140,7,3,0,0,10140,10141,7,8,0,0,10141,10142,7,21,0,0,10142,1662,1,0,0,0,10143,10144,7,16,0,0,10144,10145,7,15,0,0,10145,10146,7,12,0,0,10146,1664,1,0,0,0,10147,10148,7,16,0,0,10148,10149,7,15,0,0,10149,10150,7,6,0,0,10150,10151,5,95,0,0,10151,10152,7,14,0,0,10152,10153,7,19,0,0,10153,10154,7,17,0,0,10154,10155,7,12,0,0,10155,10156,7,6,0,0,10156,1666,1,0,0,0,10157,10158,7,16,0,0,10158,10159,7,15,0,0,10159,10160,7,6,0,0,10160,10161,5,95,0,0,10161,10162,7,5,0,0,10162,10163,7,7,0,0,10163,10164,7,12,0,0,10164,10165,7,22,0,0,10165,10166,7,6,0,0,10166,10167,7,20,0,0,10167,1668,1,0,0,0,10168,10169,7,16,0,0,10169,10170,7,17,0,0,10170,10171,7,18,0,0,10171,10172,7,18,0,0,10172,10173,7,7,0,0,10173,10174,7,8,0,0,10174,1670,1,0,0,0,10175,10176,7,14,0,0,10176,10177,7,3,0,0,10177,10178,7,6,0,0,10178,10179,7,3,0,0,10179,10180,7,5,0,0,10180,10181,7,19,0,0,10181,10182,7,22,0,0,10182,10183,5,95,0,0,10183,10184,7,12,0,0,10184,10185,7,3,0,0,10185,10186,7,23,0,0,10186,10187,7,7,0,0,10187,1672,1,0,0,0,10188,10189,7,14,0,0,10189,10190,7,7,0,0,10190,10191,7,15,0,0,10191,10192,7,5,0,0,10192,1674,1,0,0,0,10193,10194,7,14,0,0,10194,10195,7,7,0,0,10195,10196,7,15,0,0,10196,10197,7,5,0,0,10197,10198,7,15,0,0,10198,10199,7,12,0,0,10199,10200,7,22,0,0,10200,1676,1,0,0,0,10201,10202,7,14,0,0,10202,10203,7,7,0,0,10203,10204,7,12,0,0,10204,10205,7,6,0,0,10205,10206,7,8,0,0,10206,10207,7,19,0,0,10207,10208,7,15,0,0,10208,10209,7,4,0,0,10209,1678,1,0,0,0,10210,10211,7,14,0,0,10211,10212,7,20,0,0,10212,10213,7,3,0,0,10213,10214,7,8,0,0,10214,10215,7,3,0,0,10215,10216,7,14,0,0,10216,10217,7,6,0,0,10217,10218,7,7,0,0,10218,10219,7,8,0,0,10219,10220,5,95,0,0,10220,10221,7,5,0,0,10221,10222,7,7,0,0,10222,10223,7,12,0,0,10223,10224,7,22,0,0,10224,10225,7,6,0,0,10225,10226,7,20,0,0,10226,1680,1,0,0,0,10227,10228,7,14,0,0,10228,10229,7,20,0,0,10229,10230,7,3,0,0,10230,10231,7,8,0,0,10231,10232,7,11,0,0,10232,10233,7,7,0,0,10233,10234,7,6,0,0,10234,1682,1,0,0,0,10235,10236,7,14,0,0,10236,10237,7,20,0,0,10237,10238,7,3,0,0,10238,10239,7,8,0,0,10239,10240,5,95,0,0,10240,10241,7,5,0,0,10241,10242,7,7,0,0,10242,10243,7,12,0,0,10243,10244,7,22,0,0,10244,10245,7,6,0,0,10245,10246,7,20,0,0,10246,1684,1,0,0,0,10247,10248,7,14,0,0,10248,10249,7,19,0,0,10249,10250,7,7,0,0,10250,10251,7,8,0,0,10251,10252,7,14,0,0,10252,10253,7,15,0,0,10253,10254,7,16,0,0,10254,10255,7,15,0,0,10255,10256,7,5,0,0,10256,10257,7,15,0,0,10257,10258,7,6,0,0,10258,10259,7,10,0,0,10259,1686,1,0,0,0,10260,10261,7,14,0,0,10261,10262,7,19,0,0,10262,10263,7,5,0,0,10263,10264,7,5,0,0,10264,10265,7,3,0,0,10265,10266,7,6,0,0,10266,10267,7,15,0,0,10267,10268,7,19,0,0,10268,10269,7,12,0,0,10269,1688,1,0,0,0,10270,10271,7,14,0,0,10271,10272,7,19,0,0,10272,10273,7,23,0,0,10273,10274,7,25,0,0,10274,10275,7,8,0,0,10275,10276,7,7,0,0,10276,10277,7,11,0,0,10277,10278,7,11,0,0,10278,1690,1,0,0,0,10279,10280,7,14,0,0,10280,10281,7,19,0,0,10281,10282,7,12,0,0,10282,10283,7,14,0,0,10283,10284,7,3,0,0,10284,10285,7,6,0,0,10285,1692,1,0,0,0,10286,10287,7,14,0,0,10287,10288,7,19,0,0,10288,10289,7,12,0,0,10289,10290,7,14,0,0,10290,10291,7,3,0,0,10291,10292,7,6,0,0,10292,10293,5,95,0,0,10293,10294,7,9,0,0,10294,10295,7,11,0,0,10295,1694,1,0,0,0,10296,10297,7,14,0,0,10297,10298,7,19,0,0,10298,10299,7,12,0,0,10299,10300,7,12,0,0,10300,10301,7,7,0,0,10301,10302,7,14,0,0,10302,10303,7,6,0,0,10303,10304,7,15,0,0,10304,10305,7,19,0,0,10305,10306,7,12,0,0,10306,10307,5,95,0,0,10307,10308,7,15,0,0,10308,10309,7,4,0,0,10309,1696,1,0,0,0,10310,10311,7,14,0,0,10311,10312,7,19,0,0,10312,10313,7,12,0,0,10313,10314,7,24,0,0,10314,1698,1,0,0,0,10315,10316,7,14,0,0,10316,10317,7,19,0,0,10317,10318,7,12,0,0,10318,10319,7,24,0,0,10319,10320,7,7,0,0,10320,10321,7,8,0,0,10321,10322,7,6,0,0,10322,10323,5,95,0,0,10323,10324,7,6,0,0,10324,10325,7,13,0,0,10325,1700,1,0,0,0,10326,10327,7,14,0,0,10327,10328,7,19,0,0,10328,10329,7,11,0,0,10329,1702,1,0,0,0,10330,10331,7,14,0,0,10331,10332,7,19,0,0,10332,10333,7,6,0,0,10333,1704,1,0,0,0,10334,10335,7,14,0,0,10335,10336,7,8,0,0,10336,10337,7,14,0,0,10337,10338,5,51,0,0,10338,10339,5,50,0,0,10339,1706,1,0,0,0,10340,10341,7,14,0,0,10341,10342,7,8,0,0,10342,10343,7,7,0,0,10343,10344,7,3,0,0,10344,10345,7,6,0,0,10345,10346,7,7,0,0,10346,10347,5,95,0,0,10347,10348,7,3,0,0,10348,10349,7,11,0,0,10349,10350,7,10,0,0,10350,10351,7,23,0,0,10351,10352,7,23,0,0,10352,10353,7,7,0,0,10353,10354,7,6,0,0,10354,10355,7,8,0,0,10355,10356,7,15,0,0,10356,10357,7,14,0,0,10357,10358,5,95,0,0,10358,10359,7,25,0,0,10359,10360,7,8,0,0,10360,10361,7,15,0,0,10361,10362,7,24,0,0,10362,10363,5,95,0,0,10363,10364,7,21,0,0,10364,10365,7,7,0,0,10365,10366,7,10,0,0,10366,1708,1,0,0,0,10367,10368,7,14,0,0,10368,10369,7,8,0,0,10369,10370,7,7,0,0,10370,10371,7,3,0,0,10371,10372,7,6,0,0,10372,10373,7,7,0,0,10373,10374,5,95,0,0,10374,10375,7,3,0,0,10375,10376,7,11,0,0,10376,10377,7,10,0,0,10377,10378,7,23,0,0,10378,10379,7,23,0,0,10379,10380,7,7,0,0,10380,10381,7,6,0,0,10381,10382,7,8,0,0,10382,10383,7,15,0,0,10383,10384,7,14,0,0,10384,10385,5,95,0,0,10385,10386,7,25,0,0,10386,10387,7,17,0,0,10387,10388,7,16,0,0,10388,10389,5,95,0,0,10389,10390,7,21,0,0,10390,10391,7,7,0,0,10391,10392,7,10,0,0,10392,1710,1,0,0,0,10393,10394,7,14,0,0,10394,10395,7,8,0,0,10395,10396,7,7,0,0,10396,10397,7,3,0,0,10397,10398,7,6,0,0,10398,10399,7,7,0,0,10399,10400,5,95,0,0,10400,10401,7,4,0,0,10401,10402,7,20,0,0,10402,10403,5,95,0,0,10403,10404,7,25,0,0,10404,10405,7,3,0,0,10405,10406,7,8,0,0,10406,10407,7,3,0,0,10407,10408,7,23,0,0,10408,10409,7,7,0,0,10409,10410,7,6,0,0,10410,10411,7,7,0,0,10411,10412,7,8,0,0,10412,10413,7,11,0,0,10413,1712,1,0,0,0,10414,10415,7,14,0,0,10415,10416,7,8,0,0,10416,10417,7,7,0,0,10417,10418,7,3,0,0,10418,10419,7,6,0,0,10419,10420,7,7,0,0,10420,10421,5,95,0,0,10421,10422,7,4,0,0,10422,10423,7,15,0,0,10423,10424,7,22,0,0,10424,10425,7,7,0,0,10425,10426,7,11,0,0,10426,10427,7,6,0,0,10427,1714,1,0,0,0,10428,10429,7,14,0,0,10429,10430,7,8,0,0,10430,10431,7,19,0,0,10431,10432,7,11,0,0,10432,10433,7,11,0,0,10433,10434,7,7,0,0,10434,10435,7,11,0,0,10435,1716,1,0,0,0,10436,10437,7,4,0,0,10437,10438,7,3,0,0,10438,10439,7,6,0,0,10439,10440,7,7,0,0,10440,10441,7,4,0,0,10441,10442,7,15,0,0,10442,10443,7,18,0,0,10443,10444,7,18,0,0,10444,1718,1,0,0,0,10445,10446,7,4,0,0,10446,10447,7,3,0,0,10447,10448,7,6,0,0,10448,10449,7,7,0,0,10449,10450,5,95,0,0,10450,10451,7,18,0,0,10451,10452,7,19,0,0,10452,10453,7,8,0,0,10453,10454,7,23,0,0,10454,10455,7,3,0,0,10455,10456,7,6,0,0,10456,1720,1,0,0,0,10457,10458,7,4,0,0,10458,10459,7,3,0,0,10459,10460,7,10,0,0,10460,10461,7,12,0,0,10461,10462,7,3,0,0,10462,10463,7,23,0,0,10463,10464,7,7,0,0,10464,1722,1,0,0,0,10465,10466,7,4,0,0,10466,10467,7,3,0,0,10467,10468,7,10,0,0,10468,10469,7,19,0,0,10469,10470,7,18,0,0,10470,10471,7,23,0,0,10471,10472,7,19,0,0,10472,10473,7,12,0,0,10473,10474,7,6,0,0,10474,10475,7,20,0,0,10475,1724,1,0,0,0,10476,10477,7,4,0,0,10477,10478,7,3,0,0,10478,10479,7,10,0,0,10479,10480,7,19,0,0,10480,10481,7,18,0,0,10481,10482,7,9,0,0,10482,10483,7,7,0,0,10483,10484,7,7,0,0,10484,10485,7,21,0,0,10485,1726,1,0,0,0,10486,10487,7,4,0,0,10487,10488,7,3,0,0,10488,10489,7,10,0,0,10489,10490,7,19,0,0,10490,10491,7,18,0,0,10491,10492,7,10,0,0,10492,10493,7,7,0,0,10493,10494,7,3,0,0,10494,10495,7,8,0,0,10495,1728,1,0,0,0,10496,10497,7,4,0,0,10497,10498,7,7,0,0,10498,10499,7,14,0,0,10499,10500,7,19,0,0,10500,10501,7,4,0,0,10501,10502,7,7,0,0,10502,1730,1,0,0,0,10503,10504,7,4,0,0,10504,10505,7,7,0,0,10505,10506,7,22,0,0,10506,10507,7,8,0,0,10507,10508,7,7,0,0,10508,10509,7,7,0,0,10509,10510,7,11,0,0,10510,1732,1,0,0,0,10511,10512,7,4,0,0,10512,10513,7,7,0,0,10513,10514,7,11,0,0,10514,10515,5,95,0,0,10515,10516,7,4,0,0,10516,10517,7,7,0,0,10517,10518,7,14,0,0,10518,10519,7,8,0,0,10519,10520,7,10,0,0,10520,10521,7,25,0,0,10521,10522,7,6,0,0,10522,1734,1,0,0,0,10523,10524,7,4,0,0,10524,10525,7,7,0,0,10525,10526,7,11,0,0,10526,10527,5,95,0,0,10527,10528,7,7,0,0,10528,10529,7,12,0,0,10529,10530,7,14,0,0,10530,10531,7,8,0,0,10531,10532,7,10,0,0,10532,10533,7,25,0,0,10533,10534,7,6,0,0,10534,1736,1,0,0,0,10535,10536,7,4,0,0,10536,10537,7,15,0,0,10537,10538,7,23,0,0,10538,10539,7,7,0,0,10539,10540,7,12,0,0,10540,10541,7,11,0,0,10541,10542,7,15,0,0,10542,10543,7,19,0,0,10543,10544,7,12,0,0,10544,1738,1,0,0,0,10545,10546,7,4,0,0,10546,10547,7,15,0,0,10547,10548,7,11,0,0,10548,10549,7,27,0,0,10549,10550,7,19,0,0,10550,10551,7,15,0,0,10551,10552,7,12,0,0,10552,10553,7,6,0,0,10553,1740,1,0,0,0,10554,10555,7,7,0,0,10555,10556,7,5,0,0,10556,10557,7,6,0,0,10557,1742,1,0,0,0,10558,10559,7,7,0,0,10559,10560,7,12,0,0,10560,10561,7,14,0,0,10561,10562,7,19,0,0,10562,10563,7,4,0,0,10563,10564,7,7,0,0,10564,1744,1,0,0,0,10565,10566,7,7,0,0,10566,10567,7,12,0,0,10567,10568,7,14,0,0,10568,10569,7,8,0,0,10569,10570,7,10,0,0,10570,10571,7,25,0,0,10571,10572,7,6,0,0,10572,1746,1,0,0,0,10573,10574,7,7,0,0,10574,10575,7,12,0,0,10575,10576,7,4,0,0,10576,10577,7,25,0,0,10577,10578,7,19,0,0,10578,10579,7,15,0,0,10579,10580,7,12,0,0,10580,10581,7,6,0,0,10581,1748,1,0,0,0,10582,10583,7,7,0,0,10583,10584,7,12,0,0,10584,10585,7,22,0,0,10585,10586,7,15,0,0,10586,10587,7,12,0,0,10587,10588,7,7,0,0,10588,10589,5,95,0,0,10589,10590,7,3,0,0,10590,10591,7,6,0,0,10591,10592,7,6,0,0,10592,10593,7,8,0,0,10593,10594,7,15,0,0,10594,10595,7,16,0,0,10595,10596,7,17,0,0,10596,10597,7,6,0,0,10597,10598,7,7,0,0,10598,1750,1,0,0,0,10599,10600,7,7,0,0,10600,10601,7,12,0,0,10601,10602,7,24,0,0,10602,10603,7,7,0,0,10603,10604,7,5,0,0,10604,10605,7,19,0,0,10605,10606,7,25,0,0,10606,10607,7,7,0,0,10607,1752,1,0,0,0,10608,10609,7,7,0,0,10609,10610,7,28,0,0,10610,10611,7,17,0,0,10611,10612,7,3,0,0,10612,10613,7,5,0,0,10613,10614,7,11,0,0,10614,1754,1,0,0,0,10615,10616,7,7,0,0,10616,10617,7,26,0,0,10617,10618,7,25,0,0,10618,1756,1,0,0,0,10619,10620,7,7,0,0,10620,10621,7,26,0,0,10621,10622,7,25,0,0,10622,10623,7,19,0,0,10623,10624,7,8,0,0,10624,10625,7,6,0,0,10625,10626,5,95,0,0,10626,10627,7,11,0,0,10627,10628,7,7,0,0,10628,10629,7,6,0,0,10629,1758,1,0,0,0,10630,10631,7,7,0,0,10631,10632,7,26,0,0,10632,10633,7,6,0,0,10633,10634,7,7,0,0,10634,10635,7,8,0,0,10635,10636,7,15,0,0,10636,10637,7,19,0,0,10637,10638,7,8,0,0,10638,10639,7,8,0,0,10639,10640,7,15,0,0,10640,10641,7,12,0,0,10641,10642,7,22,0,0,10642,1760,1,0,0,0,10643,10644,7,7,0,0,10644,10645,7,26,0,0,10645,10646,7,6,0,0,10646,10647,7,8,0,0,10647,10648,7,3,0,0,10648,10649,7,14,0,0,10649,10650,7,6,0,0,10650,10651,7,24,0,0,10651,10652,7,3,0,0,10652,10653,7,5,0,0,10653,10654,7,17,0,0,10654,10655,7,7,0,0,10655,1762,1,0,0,0,10656,10657,7,18,0,0,10657,10658,7,15,0,0,10658,10659,7,7,0,0,10659,10660,7,5,0,0,10660,10661,7,4,0,0,10661,1764,1,0,0,0,10662,10663,7,18,0,0,10663,10664,7,15,0,0,10664,10665,7,12,0,0,10665,10666,7,4,0,0,10666,10667,5,95,0,0,10667,10668,7,15,0,0,10668,10669,7,12,0,0,10669,10670,5,95,0,0,10670,10671,7,11,0,0,10671,10672,7,7,0,0,10672,10673,7,6,0,0,10673,1766,1,0,0,0,10674,10675,7,18,0,0,10675,10676,7,5,0,0,10676,10677,7,19,0,0,10677,10678,7,19,0,0,10678,10679,7,8,0,0,10679,1768,1,0,0,0,10680,10681,7,18,0,0,10681,10682,7,19,0,0,10682,10683,7,8,0,0,10683,10684,7,23,0,0,10684,10685,7,3,0,0,10685,10686,7,6,0,0,10686,1770,1,0,0,0,10687,10688,7,18,0,0,10688,10689,7,19,0,0,10689,10690,7,17,0,0,10690,10691,7,12,0,0,10691,10692,7,4,0,0,10692,10693,5,95,0,0,10693,10694,7,8,0,0,10694,10695,7,19,0,0,10695,10696,7,9,0,0,10696,10697,7,11,0,0,10697,1772,1,0,0,0,10698,10699,7,18,0,0,10699,10700,7,8,0,0,10700,10701,7,19,0,0,10701,10702,7,23,0,0,10702,10703,5,95,0,0,10703,10704,7,16,0,0,10704,10705,7,3,0,0,10705,10706,7,11,0,0,10706,10707,7,7,0,0,10707,10708,5,54,0,0,10708,10709,5,52,0,0,10709,1774,1,0,0,0,10710,10711,7,18,0,0,10711,10712,7,8,0,0,10712,10713,7,19,0,0,10713,10714,7,23,0,0,10714,10715,5,95,0,0,10715,10716,7,4,0,0,10716,10717,7,3,0,0,10717,10718,7,10,0,0,10718,10719,7,11,0,0,10719,1776,1,0,0,0,10720,10721,7,18,0,0,10721,10722,7,8,0,0,10722,10723,7,19,0,0,10723,10724,7,23,0,0,10724,10725,5,95,0,0,10725,10726,7,17,0,0,10726,10727,7,12,0,0,10727,10728,7,15,0,0,10728,10729,7,26,0,0,10729,10730,7,6,0,0,10730,10731,7,15,0,0,10731,10732,7,23,0,0,10732,10733,7,7,0,0,10733,1778,1,0,0,0,10734,10735,7,22,0,0,10735,10736,7,7,0,0,10736,10737,7,19,0,0,10737,10738,7,23,0,0,10738,10739,7,14,0,0,10739,10740,7,19,0,0,10740,10741,7,5,0,0,10741,10742,7,5,0,0,10742,10743,7,18,0,0,10743,10744,7,8,0,0,10744,10745,7,19,0,0,10745,10746,7,23,0,0,10746,10747,7,6,0,0,10747,10748,7,7,0,0,10748,10749,7,26,0,0,10749,10750,7,6,0,0,10750,1780,1,0,0,0,10751,10752,7,22,0,0,10752,10753,7,7,0,0,10753,10754,7,19,0,0,10754,10755,7,23,0,0,10755,10756,7,14,0,0,10756,10757,7,19,0,0,10757,10758,7,5,0,0,10758,10759,7,5,0,0,10759,10760,7,18,0,0,10760,10761,7,8,0,0,10761,10762,7,19,0,0,10762,10763,7,23,0,0,10763,10764,7,9,0,0,10764,10765,7,21,0,0,10765,10766,7,16,0,0,10766,1782,1,0,0,0,10767,10768,7,22,0,0,10768,10769,7,7,0,0,10769,10770,7,19,0,0,10770,10771,7,23,0,0,10771,10772,7,7,0,0,10772,10773,7,6,0,0,10773,10774,7,8,0,0,10774,10775,7,10,0,0,10775,10776,7,14,0,0,10776,10777,7,19,0,0,10777,10778,7,5,0,0,10778,10779,7,5,0,0,10779,10780,7,7,0,0,10780,10781,7,14,0,0,10781,10782,7,6,0,0,10782,10783,7,15,0,0,10783,10784,7,19,0,0,10784,10785,7,12,0,0,10785,10786,7,18,0,0,10786,10787,7,8,0,0,10787,10788,7,19,0,0,10788,10789,7,23,0,0,10789,10790,7,6,0,0,10790,10791,7,7,0,0,10791,10792,7,26,0,0,10792,10793,7,6,0,0,10793,1784,1,0,0,0,10794,10795,7,22,0,0,10795,10796,7,7,0,0,10796,10797,7,19,0,0,10797,10798,7,23,0,0,10798,10799,7,7,0,0,10799,10800,7,6,0,0,10800,10801,7,8,0,0,10801,10802,7,10,0,0,10802,10803,7,14,0,0,10803,10804,7,19,0,0,10804,10805,7,5,0,0,10805,10806,7,5,0,0,10806,10807,7,7,0,0,10807,10808,7,14,0,0,10808,10809,7,6,0,0,10809,10810,7,15,0,0,10810,10811,7,19,0,0,10811,10812,7,12,0,0,10812,10813,7,18,0,0,10813,10814,7,8,0,0,10814,10815,7,19,0,0,10815,10816,7,23,0,0,10816,10817,7,9,0,0,10817,10818,7,21,0,0,10818,10819,7,16,0,0,10819,1786,1,0,0,0,10820,10821,7,22,0,0,10821,10822,7,7,0,0,10822,10823,7,19,0,0,10823,10824,7,23,0,0,10824,10825,7,7,0,0,10825,10826,7,6,0,0,10826,10827,7,8,0,0,10827,10828,7,10,0,0,10828,10829,7,18,0,0,10829,10830,7,8,0,0,10830,10831,7,19,0,0,10831,10832,7,23,0,0,10832,10833,7,6,0,0,10833,10834,7,7,0,0,10834,10835,7,26,0,0,10835,10836,7,6,0,0,10836,1788,1,0,0,0,10837,10838,7,22,0,0,10838,10839,7,7,0,0,10839,10840,7,19,0,0,10840,10841,7,23,0,0,10841,10842,7,7,0,0,10842,10843,7,6,0,0,10843,10844,7,8,0,0,10844,10845,7,10,0,0,10845,10846,7,18,0,0,10846,10847,7,8,0,0,10847,10848,7,19,0,0,10848,10849,7,23,0,0,10849,10850,7,9,0,0,10850,10851,7,21,0,0,10851,10852,7,16,0,0,10852,1790,1,0,0,0,10853,10854,7,22,0,0,10854,10855,7,7,0,0,10855,10856,7,19,0,0,10856,10857,7,23,0,0,10857,10858,7,7,0,0,10858,10859,7,6,0,0,10859,10860,7,8,0,0,10860,10861,7,10,0,0,10861,10862,7,12,0,0,10862,1792,1,0,0,0,10863,10864,7,22,0,0,10864,10865,7,7,0,0,10865,10866,7,19,0,0,10866,10867,7,23,0,0,10867,10868,7,7,0,0,10868,10869,7,6,0,0,10869,10870,7,8,0,0,10870,10871,7,10,0,0,10871,10872,7,6,0,0,10872,10873,7,10,0,0,10873,10874,7,25,0,0,10874,10875,7,7,0,0,10875,1794,1,0,0,0,10876,10877,7,22,0,0,10877,10878,7,7,0,0,10878,10879,7,19,0,0,10879,10880,7,23,0,0,10880,10881,7,18,0,0,10881,10882,7,8,0,0,10882,10883,7,19,0,0,10883,10884,7,23,0,0,10884,10885,7,6,0,0,10885,10886,7,7,0,0,10886,10887,7,26,0,0,10887,10888,7,6,0,0,10888,1796,1,0,0,0,10889,10890,7,22,0,0,10890,10891,7,7,0,0,10891,10892,7,19,0,0,10892,10893,7,23,0,0,10893,10894,7,18,0,0,10894,10895,7,8,0,0,10895,10896,7,19,0,0,10896,10897,7,23,0,0,10897,10898,7,9,0,0,10898,10899,7,21,0,0,10899,10900,7,16,0,0,10900,1798,1,0,0,0,10901,10902,7,22,0,0,10902,10903,7,7,0,0,10903,10904,7,6,0,0,10904,10905,5,95,0,0,10905,10906,7,18,0,0,10906,10907,7,19,0,0,10907,10908,7,8,0,0,10908,10909,7,23,0,0,10909,10910,7,3,0,0,10910,10911,7,6,0,0,10911,1800,1,0,0,0,10912,10913,7,22,0,0,10913,10914,7,7,0,0,10914,10915,7,6,0,0,10915,10916,5,95,0,0,10916,10917,7,5,0,0,10917,10918,7,19,0,0,10918,10919,7,14,0,0,10919,10920,7,21,0,0,10920,1802,1,0,0,0,10921,10922,7,22,0,0,10922,10923,7,5,0,0,10923,10924,7,7,0,0,10924,10925,7,12,0,0,10925,10926,7,22,0,0,10926,10927,7,6,0,0,10927,10928,7,20,0,0,10928,1804,1,0,0,0,10929,10930,7,22,0,0,10930,10931,7,8,0,0,10931,10932,7,7,0,0,10932,10933,7,3,0,0,10933,10934,7,6,0,0,10934,10935,7,7,0,0,10935,10936,7,11,0,0,10936,10937,7,6,0,0,10937,1806,1,0,0,0,10938,10939,7,22,0,0,10939,10940,7,6,0,0,10940,10941,7,15,0,0,10941,10942,7,4,0,0,10942,10943,5,95,0,0,10943,10944,7,11,0,0,10944,10945,7,17,0,0,10945,10946,7,16,0,0,10946,10947,7,11,0,0,10947,10948,7,7,0,0,10948,10949,7,6,0,0,10949,1808,1,0,0,0,10950,10951,7,22,0,0,10951,10952,7,6,0,0,10952,10953,7,15,0,0,10953,10954,7,4,0,0,10954,10955,5,95,0,0,10955,10956,7,11,0,0,10956,10957,7,17,0,0,10957,10958,7,16,0,0,10958,10959,7,6,0,0,10959,10960,7,8,0,0,10960,10961,7,3,0,0,10961,10962,7,14,0,0,10962,10963,7,6,0,0,10963,1810,1,0,0,0,10964,10965,7,20,0,0,10965,10966,7,7,0,0,10966,10967,7,26,0,0,10967,1812,1,0,0,0,10968,10969,7,15,0,0,10969,10970,7,18,0,0,10970,10971,7,12,0,0,10971,10972,7,17,0,0,10972,10973,7,5,0,0,10973,10974,7,5,0,0,10974,1814,1,0,0,0,10975,10976,7,15,0,0,10976,10977,7,12,0,0,10977,10978,7,7,0,0,10978,10979,7,6,0,0,10979,10980,5,54,0,0,10980,10981,5,95,0,0,10981,10982,7,3,0,0,10982,10983,7,6,0,0,10983,10984,7,19,0,0,10984,10985,7,12,0,0,10985,1816,1,0,0,0,10986,10987,7,15,0,0,10987,10988,7,12,0,0,10988,10989,7,7,0,0,10989,10990,7,6,0,0,10990,10991,5,54,0,0,10991,10992,5,95,0,0,10992,10993,7,12,0,0,10993,10994,7,6,0,0,10994,10995,7,19,0,0,10995,10996,7,3,0,0,10996,1818,1,0,0,0,10997,10998,7,15,0,0,10998,10999,7,12,0,0,10999,11e3,7,7,0,0,11e3,11001,7,6,0,0,11001,11002,5,95,0,0,11002,11003,7,3,0,0,11003,11004,7,6,0,0,11004,11005,7,19,0,0,11005,11006,7,12,0,0,11006,1820,1,0,0,0,11007,11008,7,15,0,0,11008,11009,7,12,0,0,11009,11010,7,7,0,0,11010,11011,7,6,0,0,11011,11012,5,95,0,0,11012,11013,7,12,0,0,11013,11014,7,6,0,0,11014,11015,7,19,0,0,11015,11016,7,3,0,0,11016,1822,1,0,0,0,11017,11018,7,15,0,0,11018,11019,7,12,0,0,11019,11020,7,11,0,0,11020,11021,7,6,0,0,11021,11022,7,8,0,0,11022,1824,1,0,0,0,11023,11024,7,15,0,0,11024,11025,7,12,0,0,11025,11026,7,6,0,0,11026,11027,7,7,0,0,11027,11028,7,8,0,0,11028,11029,7,15,0,0,11029,11030,7,19,0,0,11030,11031,7,8,0,0,11031,11032,7,8,0,0,11032,11033,7,15,0,0,11033,11034,7,12,0,0,11034,11035,7,22,0,0,11035,11036,7,12,0,0,11036,1826,1,0,0,0,11037,11038,7,15,0,0,11038,11039,7,12,0,0,11039,11040,7,6,0,0,11040,11041,7,7,0,0,11041,11042,7,8,0,0,11042,11043,7,11,0,0,11043,11044,7,7,0,0,11044,11045,7,14,0,0,11045,11046,7,6,0,0,11046,11047,7,11,0,0,11047,1828,1,0,0,0,11048,11049,7,15,0,0,11049,11050,7,11,0,0,11050,11051,7,14,0,0,11051,11052,7,5,0,0,11052,11053,7,19,0,0,11053,11054,7,11,0,0,11054,11055,7,7,0,0,11055,11056,7,4,0,0,11056,1830,1,0,0,0,11057,11058,7,15,0,0,11058,11059,7,11,0,0,11059,11060,7,7,0,0,11060,11061,7,23,0,0,11061,11062,7,25,0,0,11062,11063,7,6,0,0,11063,11064,7,10,0,0,11064,1832,1,0,0,0,11065,11066,7,15,0,0,11066,11067,7,11,0,0,11067,11068,7,12,0,0,11068,11069,7,17,0,0,11069,11070,7,5,0,0,11070,11071,7,5,0,0,11071,1834,1,0,0,0,11072,11073,7,15,0,0,11073,11074,7,11,0,0,11074,11075,7,11,0,0,11075,11076,7,15,0,0,11076,11077,7,23,0,0,11077,11078,7,25,0,0,11078,11079,7,5,0,0,11079,11080,7,7,0,0,11080,1836,1,0,0,0,11081,11082,7,15,0,0,11082,11083,7,11,0,0,11083,11084,5,95,0,0,11084,11085,7,18,0,0,11085,11086,7,8,0,0,11086,11087,7,7,0,0,11087,11088,7,7,0,0,11088,11089,5,95,0,0,11089,11090,7,5,0,0,11090,11091,7,19,0,0,11091,11092,7,14,0,0,11092,11093,7,21,0,0,11093,1838,1,0,0,0,11094,11095,7,15,0,0,11095,11096,7,11,0,0,11096,11097,5,95,0,0,11097,11098,7,15,0,0,11098,11099,7,25,0,0,11099,11100,7,24,0,0,11100,11101,5,52,0,0,11101,1840,1,0,0,0,11102,11103,7,15,0,0,11103,11104,7,11,0,0,11104,11105,5,95,0,0,11105,11106,7,15,0,0,11106,11107,7,25,0,0,11107,11108,7,24,0,0,11108,11109,5,52,0,0,11109,11110,5,95,0,0,11110,11111,7,14,0,0,11111,11112,7,19,0,0,11112,11113,7,23,0,0,11113,11114,7,25,0,0,11114,11115,7,3,0,0,11115,11116,7,6,0,0,11116,1842,1,0,0,0,11117,11118,7,15,0,0,11118,11119,7,11,0,0,11119,11120,5,95,0,0,11120,11121,7,15,0,0,11121,11122,7,25,0,0,11122,11123,7,24,0,0,11123,11124,5,52,0,0,11124,11125,5,95,0,0,11125,11126,7,23,0,0,11126,11127,7,3,0,0,11127,11128,7,25,0,0,11128,11129,7,25,0,0,11129,11130,7,7,0,0,11130,11131,7,4,0,0,11131,1844,1,0,0,0,11132,11133,7,15,0,0,11133,11134,7,11,0,0,11134,11135,5,95,0,0,11135,11136,7,15,0,0,11136,11137,7,25,0,0,11137,11138,7,24,0,0,11138,11139,5,54,0,0,11139,1846,1,0,0,0,11140,11141,7,15,0,0,11141,11142,7,11,0,0,11142,11143,5,95,0,0,11143,11144,7,17,0,0,11144,11145,7,11,0,0,11145,11146,7,7,0,0,11146,11147,7,4,0,0,11147,11148,5,95,0,0,11148,11149,7,5,0,0,11149,11150,7,19,0,0,11150,11151,7,14,0,0,11151,11152,7,21,0,0,11152,1848,1,0,0,0,11153,11154,7,5,0,0,11154,11155,7,3,0,0,11155,11156,7,11,0,0,11156,11157,7,6,0,0,11157,11158,5,95,0,0,11158,11159,7,15,0,0,11159,11160,7,12,0,0,11160,11161,7,11,0,0,11161,11162,7,7,0,0,11162,11163,7,8,0,0,11163,11164,7,6,0,0,11164,11165,5,95,0,0,11165,11166,7,15,0,0,11166,11167,7,4,0,0,11167,1850,1,0,0,0,11168,11169,7,5,0,0,11169,11170,7,14,0,0,11170,11171,7,3,0,0,11171,11172,7,11,0,0,11172,11173,7,7,0,0,11173,1852,1,0,0,0,11174,11175,7,5,0,0,11175,11176,7,7,0,0,11176,11177,7,3,0,0,11177,11178,7,11,0,0,11178,11179,7,6,0,0,11179,1854,1,0,0,0,11180,11181,7,5,0,0,11181,11182,7,7,0,0,11182,11183,7,12,0,0,11183,11184,7,22,0,0,11184,11185,7,6,0,0,11185,11186,7,20,0,0,11186,1856,1,0,0,0,11187,11188,7,5,0,0,11188,11189,7,15,0,0,11189,11190,7,12,0,0,11190,11191,7,7,0,0,11191,11192,7,18,0,0,11192,11193,7,8,0,0,11193,11194,7,19,0,0,11194,11195,7,23,0,0,11195,11196,7,6,0,0,11196,11197,7,7,0,0,11197,11198,7,26,0,0,11198,11199,7,6,0,0,11199,1858,1,0,0,0,11200,11201,7,5,0,0,11201,11202,7,15,0,0,11202,11203,7,12,0,0,11203,11204,7,7,0,0,11204,11205,7,18,0,0,11205,11206,7,8,0,0,11206,11207,7,19,0,0,11207,11208,7,23,0,0,11208,11209,7,9,0,0,11209,11210,7,21,0,0,11210,11211,7,16,0,0,11211,1860,1,0,0,0,11212,11213,7,5,0,0,11213,11214,7,15,0,0,11214,11215,7,12,0,0,11215,11216,7,7,0,0,11216,11217,7,11,0,0,11217,11218,7,6,0,0,11218,11219,7,8,0,0,11219,11220,7,15,0,0,11220,11221,7,12,0,0,11221,11222,7,22,0,0,11222,11223,7,18,0,0,11223,11224,7,8,0,0,11224,11225,7,19,0,0,11225,11226,7,23,0,0,11226,11227,7,6,0,0,11227,11228,7,7,0,0,11228,11229,7,26,0,0,11229,11230,7,6,0,0,11230,1862,1,0,0,0,11231,11232,7,5,0,0,11232,11233,7,15,0,0,11233,11234,7,12,0,0,11234,11235,7,7,0,0,11235,11236,7,11,0,0,11236,11237,7,6,0,0,11237,11238,7,8,0,0,11238,11239,7,15,0,0,11239,11240,7,12,0,0,11240,11241,7,22,0,0,11241,11242,7,18,0,0,11242,11243,7,8,0,0,11243,11244,7,19,0,0,11244,11245,7,23,0,0,11245,11246,7,9,0,0,11246,11247,7,21,0,0,11247,11248,7,16,0,0,11248,1864,1,0,0,0,11249,11250,7,5,0,0,11250,11251,7,12,0,0,11251,1866,1,0,0,0,11252,11253,7,5,0,0,11253,11254,7,19,0,0,11254,11255,7,3,0,0,11255,11256,7,4,0,0,11256,11257,5,95,0,0,11257,11258,7,18,0,0,11258,11259,7,15,0,0,11259,11260,7,5,0,0,11260,11261,7,7,0,0,11261,1868,1,0,0,0,11262,11263,7,5,0,0,11263,11264,7,19,0,0,11264,11265,7,14,0,0,11265,11266,7,3,0,0,11266,11267,7,6,0,0,11267,11268,7,7,0,0,11268,1870,1,0,0,0,11269,11270,7,5,0,0,11270,11271,7,19,0,0,11271,11272,7,22,0,0,11272,1872,1,0,0,0,11273,11274,7,5,0,0,11274,11275,7,19,0,0,11275,11276,7,22,0,0,11276,11277,5,49,0,0,11277,11278,5,48,0,0,11278,1874,1,0,0,0,11279,11280,7,5,0,0,11280,11281,7,19,0,0,11281,11282,7,22,0,0,11282,11283,5,50,0,0,11283,1876,1,0,0,0,11284,11285,7,5,0,0,11285,11286,7,19,0,0,11286,11287,7,9,0,0,11287,11288,7,7,0,0,11288,11289,7,8,0,0,11289,1878,1,0,0,0,11290,11291,7,5,0,0,11291,11292,7,25,0,0,11292,11293,7,3,0,0,11293,11294,7,4,0,0,11294,1880,1,0,0,0,11295,11296,7,5,0,0,11296,11297,7,6,0,0,11297,11298,7,8,0,0,11298,11299,7,15,0,0,11299,11300,7,23,0,0,11300,1882,1,0,0,0,11301,11302,7,23,0,0,11302,11303,7,3,0,0,11303,11304,7,21,0,0,11304,11305,7,7,0,0,11305,11306,7,4,0,0,11306,11307,7,3,0,0,11307,11308,7,6,0,0,11308,11309,7,7,0,0,11309,1884,1,0,0,0,11310,11311,7,23,0,0,11311,11312,7,3,0,0,11312,11313,7,21,0,0,11313,11314,7,7,0,0,11314,11315,7,6,0,0,11315,11316,7,15,0,0,11316,11317,7,23,0,0,11317,11318,7,7,0,0,11318,1886,1,0,0,0,11319,11320,7,23,0,0,11320,11321,7,3,0,0,11321,11322,7,21,0,0,11322,11323,7,7,0,0,11323,11324,5,95,0,0,11324,11325,7,11,0,0,11325,11326,7,7,0,0,11326,11327,7,6,0,0,11327,1888,1,0,0,0,11328,11329,7,23,0,0,11329,11330,7,3,0,0,11330,11331,7,11,0,0,11331,11332,7,6,0,0,11332,11333,7,7,0,0,11333,11334,7,8,0,0,11334,11335,5,95,0,0,11335,11336,7,25,0,0,11336,11337,7,19,0,0,11337,11338,7,11,0,0,11338,11339,5,95,0,0,11339,11340,7,9,0,0,11340,11341,7,3,0,0,11341,11342,7,15,0,0,11342,11343,7,6,0,0,11343,1890,1,0,0,0,11344,11345,7,23,0,0,11345,11346,7,16,0,0,11346,11347,7,8,0,0,11347,11348,7,14,0,0,11348,11349,7,19,0,0,11349,11350,7,12,0,0,11350,11351,7,6,0,0,11351,11352,7,3,0,0,11352,11353,7,15,0,0,11353,11354,7,12,0,0,11354,11355,7,11,0,0,11355,1892,1,0,0,0,11356,11357,7,23,0,0,11357,11358,7,16,0,0,11358,11359,7,8,0,0,11359,11360,7,4,0,0,11360,11361,7,15,0,0,11361,11362,7,11,0,0,11362,11363,7,27,0,0,11363,11364,7,19,0,0,11364,11365,7,15,0,0,11365,11366,7,12,0,0,11366,11367,7,6,0,0,11367,1894,1,0,0,0,11368,11369,7,23,0,0,11369,11370,7,16,0,0,11370,11371,7,8,0,0,11371,11372,7,7,0,0,11372,11373,7,28,0,0,11373,11374,7,17,0,0,11374,11375,7,3,0,0,11375,11376,7,5,0,0,11376,1896,1,0,0,0,11377,11378,7,23,0,0,11378,11379,7,16,0,0,11379,11380,7,8,0,0,11380,11381,7,15,0,0,11381,11382,7,12,0,0,11382,11383,7,6,0,0,11383,11384,7,7,0,0,11384,11385,7,8,0,0,11385,11386,7,11,0,0,11386,11387,7,7,0,0,11387,11388,7,14,0,0,11388,11389,7,6,0,0,11389,11390,7,11,0,0,11390,1898,1,0,0,0,11391,11392,7,23,0,0,11392,11393,7,16,0,0,11393,11394,7,8,0,0,11394,11395,7,19,0,0,11395,11396,7,24,0,0,11396,11397,7,7,0,0,11397,11398,7,8,0,0,11398,11399,7,5,0,0,11399,11400,7,3,0,0,11400,11401,7,25,0,0,11401,11402,7,11,0,0,11402,1900,1,0,0,0,11403,11404,7,23,0,0,11404,11405,7,16,0,0,11405,11406,7,8,0,0,11406,11407,7,6,0,0,11407,11408,7,19,0,0,11408,11409,7,17,0,0,11409,11410,7,14,0,0,11410,11411,7,20,0,0,11411,11412,7,7,0,0,11412,11413,7,11,0,0,11413,1902,1,0,0,0,11414,11415,7,23,0,0,11415,11416,7,16,0,0,11416,11417,7,8,0,0,11417,11418,7,9,0,0,11418,11419,7,15,0,0,11419,11420,7,6,0,0,11420,11421,7,20,0,0,11421,11422,7,15,0,0,11422,11423,7,12,0,0,11423,1904,1,0,0,0,11424,11425,7,23,0,0,11425,11426,7,4,0,0,11426,11427,5,53,0,0,11427,1906,1,0,0,0,11428,11429,7,23,0,0,11429,11430,7,5,0,0,11430,11431,7,15,0,0,11431,11432,7,12,0,0,11432,11433,7,7,0,0,11433,11434,7,18,0,0,11434,11435,7,8,0,0,11435,11436,7,19,0,0,11436,11437,7,23,0,0,11437,11438,7,6,0,0,11438,11439,7,7,0,0,11439,11440,7,26,0,0,11440,11441,7,6,0,0,11441,1908,1,0,0,0,11442,11443,7,23,0,0,11443,11444,7,5,0,0,11444,11445,7,15,0,0,11445,11446,7,12,0,0,11446,11447,7,7,0,0,11447,11448,7,18,0,0,11448,11449,7,8,0,0,11449,11450,7,19,0,0,11450,11451,7,23,0,0,11451,11452,7,9,0,0,11452,11453,7,21,0,0,11453,11454,7,16,0,0,11454,1910,1,0,0,0,11455,11456,7,23,0,0,11456,11457,7,19,0,0,11457,11458,7,12,0,0,11458,11459,7,6,0,0,11459,11460,7,20,0,0,11460,11461,7,12,0,0,11461,11462,7,3,0,0,11462,11463,7,23,0,0,11463,11464,7,7,0,0,11464,1912,1,0,0,0,11465,11466,7,23,0,0,11466,11467,7,25,0,0,11467,11468,7,19,0,0,11468,11469,7,15,0,0,11469,11470,7,12,0,0,11470,11471,7,6,0,0,11471,11472,7,18,0,0,11472,11473,7,8,0,0,11473,11474,7,19,0,0,11474,11475,7,23,0,0,11475,11476,7,6,0,0,11476,11477,7,7,0,0,11477,11478,7,26,0,0,11478,11479,7,6,0,0,11479,1914,1,0,0,0,11480,11481,7,23,0,0,11481,11482,7,25,0,0,11482,11483,7,19,0,0,11483,11484,7,15,0,0,11484,11485,7,12,0,0,11485,11486,7,6,0,0,11486,11487,7,18,0,0,11487,11488,7,8,0,0,11488,11489,7,19,0,0,11489,11490,7,23,0,0,11490,11491,7,9,0,0,11491,11492,7,21,0,0,11492,11493,7,16,0,0,11493,1916,1,0,0,0,11494,11495,7,23,0,0,11495,11496,7,25,0,0,11496,11497,7,19,0,0,11497,11498,7,5,0,0,11498,11499,7,10,0,0,11499,11500,7,18,0,0,11500,11501,7,8,0,0,11501,11502,7,19,0,0,11502,11503,7,23,0,0,11503,11504,7,6,0,0,11504,11505,7,7,0,0,11505,11506,7,26,0,0,11506,11507,7,6,0,0,11507,1918,1,0,0,0,11508,11509,7,23,0,0,11509,11510,7,25,0,0,11510,11511,7,19,0,0,11511,11512,7,5,0,0,11512,11513,7,10,0,0,11513,11514,7,18,0,0,11514,11515,7,8,0,0,11515,11516,7,19,0,0,11516,11517,7,23,0,0,11517,11518,7,9,0,0,11518,11519,7,21,0,0,11519,11520,7,16,0,0,11520,1920,1,0,0,0,11521,11522,7,23,0,0,11522,11523,7,17,0,0,11523,11524,7,5,0,0,11524,11525,7,6,0,0,11525,11526,7,15,0,0,11526,11527,7,5,0,0,11527,11528,7,15,0,0,11528,11529,7,12,0,0,11529,11530,7,7,0,0,11530,11531,7,11,0,0,11531,11532,7,6,0,0,11532,11533,7,8,0,0,11533,11534,7,15,0,0,11534,11535,7,12,0,0,11535,11536,7,22,0,0,11536,11537,7,18,0,0,11537,11538,7,8,0,0,11538,11539,7,19,0,0,11539,11540,7,23,0,0,11540,11541,7,6,0,0,11541,11542,7,7,0,0,11542,11543,7,26,0,0,11543,11544,7,6,0,0,11544,1922,1,0,0,0,11545,11546,7,23,0,0,11546,11547,7,17,0,0,11547,11548,7,5,0,0,11548,11549,7,6,0,0,11549,11550,7,15,0,0,11550,11551,7,5,0,0,11551,11552,7,15,0,0,11552,11553,7,12,0,0,11553,11554,7,7,0,0,11554,11555,7,11,0,0,11555,11556,7,6,0,0,11556,11557,7,8,0,0,11557,11558,7,15,0,0,11558,11559,7,12,0,0,11559,11560,7,22,0,0,11560,11561,7,18,0,0,11561,11562,7,8,0,0,11562,11563,7,19,0,0,11563,11564,7,23,0,0,11564,11565,7,9,0,0,11565,11566,7,21,0,0,11566,11567,7,16,0,0,11567,1924,1,0,0,0,11568,11569,7,23,0,0,11569,11570,7,17,0,0,11570,11571,7,5,0,0,11571,11572,7,6,0,0,11572,11573,7,15,0,0,11573,11574,7,25,0,0,11574,11575,7,19,0,0,11575,11576,7,15,0,0,11576,11577,7,12,0,0,11577,11578,7,6,0,0,11578,11579,7,18,0,0,11579,11580,7,8,0,0,11580,11581,7,19,0,0,11581,11582,7,23,0,0,11582,11583,7,6,0,0,11583,11584,7,7,0,0,11584,11585,7,26,0,0,11585,11586,7,6,0,0,11586,1926,1,0,0,0,11587,11588,7,23,0,0,11588,11589,7,17,0,0,11589,11590,7,5,0,0,11590,11591,7,6,0,0,11591,11592,7,15,0,0,11592,11593,7,25,0,0,11593,11594,7,19,0,0,11594,11595,7,15,0,0,11595,11596,7,12,0,0,11596,11597,7,6,0,0,11597,11598,7,18,0,0,11598,11599,7,8,0,0,11599,11600,7,19,0,0,11600,11601,7,23,0,0,11601,11602,7,9,0,0,11602,11603,7,21,0,0,11603,11604,7,16,0,0,11604,1928,1,0,0,0,11605,11606,7,23,0,0,11606,11607,7,17,0,0,11607,11608,7,5,0,0,11608,11609,7,6,0,0,11609,11610,7,15,0,0,11610,11611,7,25,0,0,11611,11612,7,19,0,0,11612,11613,7,5,0,0,11613,11614,7,10,0,0,11614,11615,7,22,0,0,11615,11616,7,19,0,0,11616,11617,7,12,0,0,11617,11618,7,18,0,0,11618,11619,7,8,0,0,11619,11620,7,19,0,0,11620,11621,7,23,0,0,11621,11622,7,6,0,0,11622,11623,7,7,0,0,11623,11624,7,26,0,0,11624,11625,7,6,0,0,11625,1930,1,0,0,0,11626,11627,7,23,0,0,11627,11628,7,17,0,0,11628,11629,7,5,0,0,11629,11630,7,6,0,0,11630,11631,7,15,0,0,11631,11632,7,25,0,0,11632,11633,7,19,0,0,11633,11634,7,5,0,0,11634,11635,7,10,0,0,11635,11636,7,22,0,0,11636,11637,7,19,0,0,11637,11638,7,12,0,0,11638,11639,7,18,0,0,11639,11640,7,8,0,0,11640,11641,7,19,0,0,11641,11642,7,23,0,0,11642,11643,7,9,0,0,11643,11644,7,21,0,0,11644,11645,7,16,0,0,11645,1932,1,0,0,0,11646,11647,7,12,0,0,11647,11648,7,3,0,0,11648,11649,7,23,0,0,11649,11650,7,7,0,0,11650,11651,5,95,0,0,11651,11652,7,14,0,0,11652,11653,7,19,0,0,11653,11654,7,12,0,0,11654,11655,7,11,0,0,11655,11656,7,6,0,0,11656,1934,1,0,0,0,11657,11658,7,12,0,0,11658,11659,7,17,0,0,11659,11660,7,5,0,0,11660,11661,7,5,0,0,11661,11662,7,15,0,0,11662,11663,7,18,0,0,11663,1936,1,0,0,0,11664,11665,7,12,0,0,11665,11666,7,17,0,0,11666,11667,7,23,0,0,11667,11668,7,22,0,0,11668,11669,7,7,0,0,11669,11670,7,19,0,0,11670,11671,7,23,0,0,11671,11672,7,7,0,0,11672,11673,7,6,0,0,11673,11674,7,8,0,0,11674,11675,7,15,0,0,11675,11676,7,7,0,0,11676,11677,7,11,0,0,11677,1938,1,0,0,0,11678,11679,7,12,0,0,11679,11680,7,17,0,0,11680,11681,7,23,0,0,11681,11682,7,15,0,0,11682,11683,7,12,0,0,11683,11684,7,6,0,0,11684,11685,7,7,0,0,11685,11686,7,8,0,0,11686,11687,7,15,0,0,11687,11688,7,19,0,0,11688,11689,7,8,0,0,11689,11690,7,8,0,0,11690,11691,7,15,0,0,11691,11692,7,12,0,0,11692,11693,7,22,0,0,11693,11694,7,11,0,0,11694,1940,1,0,0,0,11695,11696,7,12,0,0,11696,11697,7,17,0,0,11697,11698,7,23,0,0,11698,11699,7,25,0,0,11699,11700,7,19,0,0,11700,11701,7,15,0,0,11701,11702,7,12,0,0,11702,11703,7,6,0,0,11703,11704,7,11,0,0,11704,1942,1,0,0,0,11705,11706,7,19,0,0,11706,11707,7,14,0,0,11707,11708,7,6,0,0,11708,1944,1,0,0,0,11709,11710,7,19,0,0,11710,11711,7,14,0,0,11711,11712,7,6,0,0,11712,11713,7,7,0,0,11713,11714,7,6,0,0,11714,11715,5,95,0,0,11715,11716,7,5,0,0,11716,11717,7,7,0,0,11717,11718,7,12,0,0,11718,11719,7,22,0,0,11719,11720,7,6,0,0,11720,11721,7,20,0,0,11721,1946,1,0,0,0,11722,11723,7,19,0,0,11723,11724,7,8,0,0,11724,11725,7,4,0,0,11725,1948,1,0,0,0,11726,11727,7,19,0,0,11727,11728,7,24,0,0,11728,11729,7,7,0,0,11729,11730,7,8,0,0,11730,11731,7,5,0,0,11731,11732,7,3,0,0,11732,11733,7,25,0,0,11733,11734,7,11,0,0,11734,1950,1,0,0,0,11735,11736,7,25,0,0,11736,11737,7,7,0,0,11737,11738,7,8,0,0,11738,11739,7,15,0,0,11739,11740,7,19,0,0,11740,11741,7,4,0,0,11741,11742,5,95,0,0,11742,11743,7,3,0,0,11743,11744,7,4,0,0,11744,11745,7,4,0,0,11745,1952,1,0,0,0,11746,11747,7,25,0,0,11747,11748,7,7,0,0,11748,11749,7,8,0,0,11749,11750,7,15,0,0,11750,11751,7,19,0,0,11751,11752,7,4,0,0,11752,11753,5,95,0,0,11753,11754,7,4,0,0,11754,11755,7,15,0,0,11755,11756,7,18,0,0,11756,11757,7,18,0,0,11757,1954,1,0,0,0,11758,11759,7,25,0,0,11759,11760,7,15,0,0,11760,1956,1,0,0,0,11761,11762,7,25,0,0,11762,11763,7,19,0,0,11763,11764,7,15,0,0,11764,11765,7,12,0,0,11765,11766,7,6,0,0,11766,11767,7,18,0,0,11767,11768,7,8,0,0,11768,11769,7,19,0,0,11769,11770,7,23,0,0,11770,11771,7,6,0,0,11771,11772,7,7,0,0,11772,11773,7,26,0,0,11773,11774,7,6,0,0,11774,1958,1,0,0,0,11775,11776,7,25,0,0,11776,11777,7,19,0,0,11777,11778,7,15,0,0,11778,11779,7,12,0,0,11779,11780,7,6,0,0,11780,11781,7,18,0,0,11781,11782,7,8,0,0,11782,11783,7,19,0,0,11783,11784,7,23,0,0,11784,11785,7,9,0,0,11785,11786,7,21,0,0,11786,11787,7,16,0,0,11787,1960,1,0,0,0,11788,11789,7,25,0,0,11789,11790,7,19,0,0,11790,11791,7,15,0,0,11791,11792,7,12,0,0,11792,11793,7,6,0,0,11793,11794,7,12,0,0,11794,1962,1,0,0,0,11795,11796,7,25,0,0,11796,11797,7,19,0,0,11797,11798,7,5,0,0,11798,11799,7,10,0,0,11799,11800,7,18,0,0,11800,11801,7,8,0,0,11801,11802,7,19,0,0,11802,11803,7,23,0,0,11803,11804,7,6,0,0,11804,11805,7,7,0,0,11805,11806,7,26,0,0,11806,11807,7,6,0,0,11807,1964,1,0,0,0,11808,11809,7,25,0,0,11809,11810,7,19,0,0,11810,11811,7,5,0,0,11811,11812,7,10,0,0,11812,11813,7,18,0,0,11813,11814,7,8,0,0,11814,11815,7,19,0,0,11815,11816,7,23,0,0,11816,11817,7,9,0,0,11817,11818,7,21,0,0,11818,11819,7,16,0,0,11819,1966,1,0,0,0,11820,11821,7,25,0,0,11821,11822,7,19,0,0,11822,11823,7,5,0,0,11823,11824,7,10,0,0,11824,11825,7,22,0,0,11825,11826,7,19,0,0,11826,11827,7,12,0,0,11827,11828,7,18,0,0,11828,11829,7,8,0,0,11829,11830,7,19,0,0,11830,11831,7,23,0,0,11831,11832,7,6,0,0,11832,11833,7,7,0,0,11833,11834,7,26,0,0,11834,11835,7,6,0,0,11835,1968,1,0,0,0,11836,11837,7,25,0,0,11837,11838,7,19,0,0,11838,11839,7,5,0,0,11839,11840,7,10,0,0,11840,11841,7,22,0,0,11841,11842,7,19,0,0,11842,11843,7,12,0,0,11843,11844,7,18,0,0,11844,11845,7,8,0,0,11845,11846,7,19,0,0,11846,11847,7,23,0,0,11847,11848,7,9,0,0,11848,11849,7,21,0,0,11849,11850,7,16,0,0,11850,1970,1,0,0,0,11851,11852,7,25,0,0,11852,11853,7,19,0,0,11853,11854,7,9,0,0,11854,1972,1,0,0,0,11855,11856,7,25,0,0,11856,11857,7,19,0,0,11857,11858,7,9,0,0,11858,11859,7,7,0,0,11859,11860,7,8,0,0,11860,1974,1,0,0,0,11861,11862,7,28,0,0,11862,11863,7,17,0,0,11863,11864,7,19,0,0,11864,11865,7,6,0,0,11865,11866,7,7,0,0,11866,1976,1,0,0,0,11867,11868,7,8,0,0,11868,11869,7,3,0,0,11869,11870,7,4,0,0,11870,11871,7,15,0,0,11871,11872,7,3,0,0,11872,11873,7,12,0,0,11873,11874,7,11,0,0,11874,1978,1,0,0,0,11875,11876,7,8,0,0,11876,11877,7,3,0,0,11877,11878,7,12,0,0,11878,11879,7,4,0,0,11879,1980,1,0,0,0,11880,11881,7,8,0,0,11881,11882,7,3,0,0,11882,11883,7,12,0,0,11883,11884,7,4,0,0,11884,11885,7,19,0,0,11885,11886,7,23,0,0,11886,1982,1,0,0,0,11887,11888,7,8,0,0,11888,11889,7,3,0,0,11889,11890,7,12,0,0,11890,11891,7,4,0,0,11891,11892,7,19,0,0,11892,11893,7,23,0,0,11893,11894,5,95,0,0,11894,11895,7,16,0,0,11895,11896,7,10,0,0,11896,11897,7,6,0,0,11897,11898,7,7,0,0,11898,11899,7,11,0,0,11899,1984,1,0,0,0,11900,11901,7,8,0,0,11901,11902,7,7,0,0,11902,11903,7,5,0,0,11903,11904,7,7,0,0,11904,11905,7,3,0,0,11905,11906,7,11,0,0,11906,11907,7,7,0,0,11907,11908,5,95,0,0,11908,11909,7,5,0,0,11909,11910,7,19,0,0,11910,11911,7,14,0,0,11911,11912,7,21,0,0,11912,1986,1,0,0,0,11913,11914,7,8,0,0,11914,11915,7,7,0,0,11915,11916,7,24,0,0,11916,11917,7,7,0,0,11917,11918,7,8,0,0,11918,11919,7,11,0,0,11919,11920,7,7,0,0,11920,1988,1,0,0,0,11921,11922,7,8,0,0,11922,11923,7,19,0,0,11923,11924,7,17,0,0,11924,11925,7,12,0,0,11925,11926,7,4,0,0,11926,1990,1,0,0,0,11927,11928,7,8,0,0,11928,11929,7,19,0,0,11929,11930,7,9,0,0,11930,11931,5,95,0,0,11931,11932,7,14,0,0,11932,11933,7,19,0,0,11933,11934,7,17,0,0,11934,11935,7,12,0,0,11935,11936,7,6,0,0,11936,1992,1,0,0,0,11937,11938,7,8,0,0,11938,11939,7,25,0,0,11939,11940,7,3,0,0,11940,11941,7,4,0,0,11941,1994,1,0,0,0,11942,11943,7,8,0,0,11943,11944,7,6,0,0,11944,11945,7,8,0,0,11945,11946,7,15,0,0,11946,11947,7,23,0,0,11947,1996,1,0,0,0,11948,11949,7,11,0,0,11949,11950,7,7,0,0,11950,11951,7,14,0,0,11951,11952,5,95,0,0,11952,11953,7,6,0,0,11953,11954,7,19,0,0,11954,11955,5,95,0,0,11955,11956,7,6,0,0,11956,11957,7,15,0,0,11957,11958,7,23,0,0,11958,11959,7,7,0,0,11959,1998,1,0,0,0,11960,11961,7,11,0,0,11961,11962,7,7,0,0,11962,11963,7,14,0,0,11963,11964,7,19,0,0,11964,11965,7,12,0,0,11965,11966,7,4,0,0,11966,11967,7,3,0,0,11967,11968,7,8,0,0,11968,11969,7,10,0,0,11969,11970,5,95,0,0,11970,11971,7,7,0,0,11971,11972,7,12,0,0,11972,11973,7,22,0,0,11973,11974,7,15,0,0,11974,11975,7,12,0,0,11975,11976,7,7,0,0,11976,11977,5,95,0,0,11977,11978,7,3,0,0,11978,11979,7,6,0,0,11979,11980,7,6,0,0,11980,11981,7,8,0,0,11981,11982,7,15,0,0,11982,11983,7,16,0,0,11983,11984,7,17,0,0,11984,11985,7,6,0,0,11985,11986,7,7,0,0,11986,2e3,1,0,0,0,11987,11988,7,11,0,0,11988,11989,7,7,0,0,11989,11990,7,11,0,0,11990,11991,7,11,0,0,11991,11992,7,15,0,0,11992,11993,7,19,0,0,11993,11994,7,12,0,0,11994,11995,5,95,0,0,11995,11996,7,17,0,0,11996,11997,7,11,0,0,11997,11998,7,7,0,0,11998,11999,7,8,0,0,11999,2002,1,0,0,0,12e3,12001,7,11,0,0,12001,12002,7,20,0,0,12002,12003,7,3,0,0,12003,2004,1,0,0,0,12004,12005,7,11,0,0,12005,12006,7,20,0,0,12006,12007,7,3,0,0,12007,12008,5,49,0,0,12008,2006,1,0,0,0,12009,12010,7,11,0,0,12010,12011,7,20,0,0,12011,12012,7,3,0,0,12012,12013,5,50,0,0,12013,2008,1,0,0,0,12014,12015,7,11,0,0,12015,12016,7,14,0,0,12016,12017,7,20,0,0,12017,12018,7,7,0,0,12018,12019,7,23,0,0,12019,12020,7,3,0,0,12020,12021,5,95,0,0,12021,12022,7,12,0,0,12022,12023,7,3,0,0,12023,12024,7,23,0,0,12024,12025,7,7,0,0,12025,2010,1,0,0,0,12026,12027,7,11,0,0,12027,12028,7,15,0,0,12028,12029,7,22,0,0,12029,12030,7,12,0,0,12030,2012,1,0,0,0,12031,12032,7,11,0,0,12032,12033,7,15,0,0,12033,12034,7,12,0,0,12034,2014,1,0,0,0,12035,12036,7,11,0,0,12036,12037,7,5,0,0,12037,12038,7,7,0,0,12038,12039,7,7,0,0,12039,12040,7,25,0,0,12040,2016,1,0,0,0,12041,12042,7,11,0,0,12042,12043,7,19,0,0,12043,12044,7,17,0,0,12044,12045,7,12,0,0,12045,12046,7,4,0,0,12046,12047,7,7,0,0,12047,12048,7,26,0,0,12048,2018,1,0,0,0,12049,12050,7,11,0,0,12050,12051,7,28,0,0,12051,12052,7,5,0,0,12052,12053,5,95,0,0,12053,12054,7,6,0,0,12054,12055,7,20,0,0,12055,12056,7,8,0,0,12056,12057,7,7,0,0,12057,12058,7,3,0,0,12058,12059,7,4,0,0,12059,12060,5,95,0,0,12060,12061,7,9,0,0,12061,12062,7,3,0,0,12062,12063,7,15,0,0,12063,12064,7,6,0,0,12064,12065,5,95,0,0,12065,12066,7,3,0,0,12066,12067,7,18,0,0,12067,12068,7,6,0,0,12068,12069,7,7,0,0,12069,12070,7,8,0,0,12070,12071,5,95,0,0,12071,12072,7,22,0,0,12072,12073,7,6,0,0,12073,12074,7,15,0,0,12074,12075,7,4,0,0,12075,12076,7,11,0,0,12076,2020,1,0,0,0,12077,12078,7,11,0,0,12078,12079,7,28,0,0,12079,12080,7,8,0,0,12080,12081,7,6,0,0,12081,2022,1,0,0,0,12082,12083,7,11,0,0,12083,12084,7,8,0,0,12084,12085,7,15,0,0,12085,12086,7,4,0,0,12086,2024,1,0,0,0,12087,12088,7,11,0,0,12088,12089,7,6,0,0,12089,12090,7,3,0,0,12090,12091,7,8,0,0,12091,12092,7,6,0,0,12092,12093,7,25,0,0,12093,12094,7,19,0,0,12094,12095,7,15,0,0,12095,12096,7,12,0,0,12096,12097,7,6,0,0,12097,2026,1,0,0,0,12098,12099,7,11,0,0,12099,12100,7,6,0,0,12100,12101,7,8,0,0,12101,12102,7,14,0,0,12102,12103,7,23,0,0,12103,12104,7,25,0,0,12104,2028,1,0,0,0,12105,12106,7,11,0,0,12106,12107,7,6,0,0,12107,12108,7,8,0,0,12108,12109,5,95,0,0,12109,12110,7,6,0,0,12110,12111,7,19,0,0,12111,12112,5,95,0,0,12112,12113,7,4,0,0,12113,12114,7,3,0,0,12114,12115,7,6,0,0,12115,12116,7,7,0,0,12116,2030,1,0,0,0,12117,12118,7,11,0,0,12118,12119,7,6,0,0,12119,12120,5,95,0,0,12120,12121,7,3,0,0,12121,12122,7,8,0,0,12122,12123,7,7,0,0,12123,12124,7,3,0,0,12124,2032,1,0,0,0,12125,12126,7,11,0,0,12126,12127,7,6,0,0,12127,12128,5,95,0,0,12128,12129,7,3,0,0,12129,12130,7,11,0,0,12130,12131,7,16,0,0,12131,12132,7,15,0,0,12132,12133,7,12,0,0,12133,12134,7,3,0,0,12134,12135,7,8,0,0,12135,12136,7,10,0,0,12136,2034,1,0,0,0,12137,12138,7,11,0,0,12138,12139,7,6,0,0,12139,12140,5,95,0,0,12140,12141,7,3,0,0,12141,12142,7,11,0,0,12142,12143,7,6,0,0,12143,12144,7,7,0,0,12144,12145,7,26,0,0,12145,12146,7,6,0,0,12146,2036,1,0,0,0,12147,12148,7,11,0,0,12148,12149,7,6,0,0,12149,12150,5,95,0,0,12150,12151,7,3,0,0,12151,12152,7,11,0,0,12152,12153,7,9,0,0,12153,12154,7,21,0,0,12154,12155,7,16,0,0,12155,2038,1,0,0,0,12156,12157,7,11,0,0,12157,12158,7,6,0,0,12158,12159,5,95,0,0,12159,12160,7,3,0,0,12160,12161,7,11,0,0,12161,12162,7,9,0,0,12162,12163,7,21,0,0,12163,12164,7,6,0,0,12164,2040,1,0,0,0,12165,12166,7,11,0,0,12166,12167,7,6,0,0,12167,12168,5,95,0,0,12168,12169,7,16,0,0,12169,12170,7,17,0,0,12170,12171,7,18,0,0,12171,12172,7,18,0,0,12172,12173,7,7,0,0,12173,12174,7,8,0,0,12174,2042,1,0,0,0,12175,12176,7,11,0,0,12176,12177,7,6,0,0,12177,12178,5,95,0,0,12178,12179,7,14,0,0,12179,12180,7,7,0,0,12180,12181,7,12,0,0,12181,12182,7,6,0,0,12182,12183,7,8,0,0,12183,12184,7,19,0,0,12184,12185,7,15,0,0,12185,12186,7,4,0,0,12186,2044,1,0,0,0,12187,12188,7,11,0,0,12188,12189,7,6,0,0,12189,12190,5,95,0,0,12190,12191,7,14,0,0,12191,12192,7,19,0,0,12192,12193,7,12,0,0,12193,12194,7,6,0,0,12194,12195,7,3,0,0,12195,12196,7,15,0,0,12196,12197,7,12,0,0,12197,12198,7,11,0,0,12198,2046,1,0,0,0,12199,12200,7,11,0,0,12200,12201,7,6,0,0,12201,12202,5,95,0,0,12202,12203,7,14,0,0,12203,12204,7,8,0,0,12204,12205,7,19,0,0,12205,12206,7,11,0,0,12206,12207,7,11,0,0,12207,12208,7,7,0,0,12208,12209,7,11,0,0,12209,2048,1,0,0,0,12210,12211,7,11,0,0,12211,12212,7,6,0,0,12212,12213,5,95,0,0,12213,12214,7,4,0,0,12214,12215,7,15,0,0,12215,12216,7,18,0,0,12216,12217,7,18,0,0,12217,12218,7,7,0,0,12218,12219,7,8,0,0,12219,12220,7,7,0,0,12220,12221,7,12,0,0,12221,12222,7,14,0,0,12222,12223,7,7,0,0,12223,2050,1,0,0,0,12224,12225,7,11,0,0,12225,12226,7,6,0,0,12226,12227,5,95,0,0,12227,12228,7,4,0,0,12228,12229,7,15,0,0,12229,12230,7,23,0,0,12230,12231,7,7,0,0,12231,12232,7,12,0,0,12232,12233,7,11,0,0,12233,12234,7,15,0,0,12234,12235,7,19,0,0,12235,12236,7,12,0,0,12236,2052,1,0,0,0,12237,12238,7,11,0,0,12238,12239,7,6,0,0,12239,12240,5,95,0,0,12240,12241,7,4,0,0,12241,12242,7,15,0,0,12242,12243,7,11,0,0,12243,12244,7,27,0,0,12244,12245,7,19,0,0,12245,12246,7,15,0,0,12246,12247,7,12,0,0,12247,12248,7,6,0,0,12248,2054,1,0,0,0,12249,12250,7,11,0,0,12250,12251,7,6,0,0,12251,12252,5,95,0,0,12252,12253,7,4,0,0,12253,12254,7,15,0,0,12254,12255,7,11,0,0,12255,12256,7,6,0,0,12256,12257,7,3,0,0,12257,12258,7,12,0,0,12258,12259,7,14,0,0,12259,12260,7,7,0,0,12260,2056,1,0,0,0,12261,12262,7,11,0,0,12262,12263,7,6,0,0,12263,12264,5,95,0,0,12264,12265,7,7,0,0,12265,12266,7,12,0,0,12266,12267,7,4,0,0,12267,12268,7,25,0,0,12268,12269,7,19,0,0,12269,12270,7,15,0,0,12270,12271,7,12,0,0,12271,12272,7,6,0,0,12272,2058,1,0,0,0,12273,12274,7,11,0,0,12274,12275,7,6,0,0,12275,12276,5,95,0,0,12276,12277,7,7,0,0,12277,12278,7,12,0,0,12278,12279,7,24,0,0,12279,12280,7,7,0,0,12280,12281,7,5,0,0,12281,12282,7,19,0,0,12282,12283,7,25,0,0,12283,12284,7,7,0,0,12284,2060,1,0,0,0,12285,12286,7,11,0,0,12286,12287,7,6,0,0,12287,12288,5,95,0,0,12288,12289,7,7,0,0,12289,12290,7,28,0,0,12290,12291,7,17,0,0,12291,12292,7,3,0,0,12292,12293,7,5,0,0,12293,12294,7,11,0,0,12294,2062,1,0,0,0,12295,12296,7,11,0,0,12296,12297,7,6,0,0,12297,12298,5,95,0,0,12298,12299,7,7,0,0,12299,12300,7,26,0,0,12300,12301,7,6,0,0,12301,12302,7,7,0,0,12302,12303,7,8,0,0,12303,12304,7,15,0,0,12304,12305,7,19,0,0,12305,12306,7,8,0,0,12306,12307,7,8,0,0,12307,12308,7,15,0,0,12308,12309,7,12,0,0,12309,12310,7,22,0,0,12310,2064,1,0,0,0,12311,12312,7,11,0,0,12312,12313,7,6,0,0,12313,12314,5,95,0,0,12314,12315,7,22,0,0,12315,12316,7,7,0,0,12316,12317,7,19,0,0,12317,12318,7,23,0,0,12318,12319,7,14,0,0,12319,12320,7,19,0,0,12320,12321,7,5,0,0,12321,12322,7,5,0,0,12322,12323,7,18,0,0,12323,12324,7,8,0,0,12324,12325,7,19,0,0,12325,12326,7,23,0,0,12326,12327,7,6,0,0,12327,12328,7,7,0,0,12328,12329,7,26,0,0,12329,12330,7,6,0,0,12330,2066,1,0,0,0,12331,12332,7,11,0,0,12332,12333,7,6,0,0,12333,12334,5,95,0,0,12334,12335,7,22,0,0,12335,12336,7,7,0,0,12336,12337,7,19,0,0,12337,12338,7,23,0,0,12338,12339,7,14,0,0,12339,12340,7,19,0,0,12340,12341,7,5,0,0,12341,12342,7,5,0,0,12342,12343,7,18,0,0,12343,12344,7,8,0,0,12344,12345,7,19,0,0,12345,12346,7,23,0,0,12346,12347,7,6,0,0,12347,12348,7,26,0,0,12348,12349,7,6,0,0,12349,2068,1,0,0,0,12350,12351,7,11,0,0,12351,12352,7,6,0,0,12352,12353,5,95,0,0,12353,12354,7,22,0,0,12354,12355,7,7,0,0,12355,12356,7,19,0,0,12356,12357,7,23,0,0,12357,12358,7,14,0,0,12358,12359,7,19,0,0,12359,12360,7,5,0,0,12360,12361,7,5,0,0,12361,12362,7,18,0,0,12362,12363,7,8,0,0,12363,12364,7,19,0,0,12364,12365,7,23,0,0,12365,12366,7,9,0,0,12366,12367,7,21,0,0,12367,12368,7,16,0,0,12368,2070,1,0,0,0,12369,12370,7,11,0,0,12370,12371,7,6,0,0,12371,12372,5,95,0,0,12372,12373,7,22,0,0,12373,12374,7,7,0,0,12374,12375,7,19,0,0,12375,12376,7,23,0,0,12376,12377,7,7,0,0,12377,12378,7,6,0,0,12378,12379,7,8,0,0,12379,12380,7,10,0,0,12380,12381,7,14,0,0,12381,12382,7,19,0,0,12382,12383,7,5,0,0,12383,12384,7,5,0,0,12384,12385,7,7,0,0,12385,12386,7,14,0,0,12386,12387,7,6,0,0,12387,12388,7,15,0,0,12388,12389,7,19,0,0,12389,12390,7,12,0,0,12390,12391,7,18,0,0,12391,12392,7,8,0,0,12392,12393,7,19,0,0,12393,12394,7,23,0,0,12394,12395,7,6,0,0,12395,12396,7,7,0,0,12396,12397,7,26,0,0,12397,12398,7,6,0,0,12398,2072,1,0,0,0,12399,12400,7,11,0,0,12400,12401,7,6,0,0,12401,12402,5,95,0,0,12402,12403,7,22,0,0,12403,12404,7,7,0,0,12404,12405,7,19,0,0,12405,12406,7,23,0,0,12406,12407,7,7,0,0,12407,12408,7,6,0,0,12408,12409,7,8,0,0,12409,12410,7,10,0,0,12410,12411,7,14,0,0,12411,12412,7,19,0,0,12412,12413,7,5,0,0,12413,12414,7,5,0,0,12414,12415,7,7,0,0,12415,12416,7,14,0,0,12416,12417,7,6,0,0,12417,12418,7,15,0,0,12418,12419,7,19,0,0,12419,12420,7,12,0,0,12420,12421,7,18,0,0,12421,12422,7,8,0,0,12422,12423,7,19,0,0,12423,12424,7,23,0,0,12424,12425,7,9,0,0,12425,12426,7,21,0,0,12426,12427,7,16,0,0,12427,2074,1,0,0,0,12428,12429,7,11,0,0,12429,12430,7,6,0,0,12430,12431,5,95,0,0,12431,12432,7,22,0,0,12432,12433,7,7,0,0,12433,12434,7,19,0,0,12434,12435,7,23,0,0,12435,12436,7,7,0,0,12436,12437,7,6,0,0,12437,12438,7,8,0,0,12438,12439,7,10,0,0,12439,12440,7,18,0,0,12440,12441,7,8,0,0,12441,12442,7,19,0,0,12442,12443,7,23,0,0,12443,12444,7,6,0,0,12444,12445,7,7,0,0,12445,12446,7,26,0,0,12446,12447,7,6,0,0,12447,2076,1,0,0,0,12448,12449,7,11,0,0,12449,12450,7,6,0,0,12450,12451,5,95,0,0,12451,12452,7,22,0,0,12452,12453,7,7,0,0,12453,12454,7,19,0,0,12454,12455,7,23,0,0,12455,12456,7,7,0,0,12456,12457,7,6,0,0,12457,12458,7,8,0,0,12458,12459,7,10,0,0,12459,12460,7,18,0,0,12460,12461,7,8,0,0,12461,12462,7,19,0,0,12462,12463,7,23,0,0,12463,12464,7,9,0,0,12464,12465,7,21,0,0,12465,12466,7,16,0,0,12466,2078,1,0,0,0,12467,12468,7,11,0,0,12468,12469,7,6,0,0,12469,12470,5,95,0,0,12470,12471,7,22,0,0,12471,12472,7,7,0,0,12472,12473,7,19,0,0,12473,12474,7,23,0,0,12474,12475,7,7,0,0,12475,12476,7,6,0,0,12476,12477,7,8,0,0,12477,12478,7,10,0,0,12478,12479,7,12,0,0,12479,2080,1,0,0,0,12480,12481,7,11,0,0,12481,12482,7,6,0,0,12482,12483,5,95,0,0,12483,12484,7,22,0,0,12484,12485,7,7,0,0,12485,12486,7,19,0,0,12486,12487,7,23,0,0,12487,12488,7,7,0,0,12488,12489,7,6,0,0,12489,12490,7,8,0,0,12490,12491,7,10,0,0,12491,12492,7,6,0,0,12492,12493,7,10,0,0,12493,12494,7,25,0,0,12494,12495,7,7,0,0,12495,2082,1,0,0,0,12496,12497,7,11,0,0,12497,12498,7,6,0,0,12498,12499,5,95,0,0,12499,12500,7,22,0,0,12500,12501,7,7,0,0,12501,12502,7,19,0,0,12502,12503,7,23,0,0,12503,12504,7,18,0,0,12504,12505,7,8,0,0,12505,12506,7,19,0,0,12506,12507,7,23,0,0,12507,12508,7,6,0,0,12508,12509,7,7,0,0,12509,12510,7,26,0,0,12510,12511,7,6,0,0,12511,2084,1,0,0,0,12512,12513,7,11,0,0,12513,12514,7,6,0,0,12514,12515,5,95,0,0,12515,12516,7,22,0,0,12516,12517,7,7,0,0,12517,12518,7,19,0,0,12518,12519,7,23,0,0,12519,12520,7,18,0,0,12520,12521,7,8,0,0,12521,12522,7,19,0,0,12522,12523,7,23,0,0,12523,12524,7,9,0,0,12524,12525,7,21,0,0,12525,12526,7,16,0,0,12526,2086,1,0,0,0,12527,12528,7,11,0,0,12528,12529,7,6,0,0,12529,12530,5,95,0,0,12530,12531,7,15,0,0,12531,12532,7,12,0,0,12532,12533,7,6,0,0,12533,12534,7,7,0,0,12534,12535,7,8,0,0,12535,12536,7,15,0,0,12536,12537,7,19,0,0,12537,12538,7,8,0,0,12538,12539,7,8,0,0,12539,12540,7,15,0,0,12540,12541,7,12,0,0,12541,12542,7,22,0,0,12542,12543,7,12,0,0,12543,2088,1,0,0,0,12544,12545,7,11,0,0,12545,12546,7,6,0,0,12546,12547,5,95,0,0,12547,12548,7,15,0,0,12548,12549,7,12,0,0,12549,12550,7,6,0,0,12550,12551,7,7,0,0,12551,12552,7,8,0,0,12552,12553,7,11,0,0,12553,12554,7,7,0,0,12554,12555,7,14,0,0,12555,12556,7,6,0,0,12556,12557,7,15,0,0,12557,12558,7,19,0,0,12558,12559,7,12,0,0,12559,2090,1,0,0,0,12560,12561,7,11,0,0,12561,12562,7,6,0,0,12562,12563,5,95,0,0,12563,12564,7,15,0,0,12564,12565,7,12,0,0,12565,12566,7,6,0,0,12566,12567,7,7,0,0,12567,12568,7,8,0,0,12568,12569,7,11,0,0,12569,12570,7,7,0,0,12570,12571,7,14,0,0,12571,12572,7,6,0,0,12572,12573,7,11,0,0,12573,2092,1,0,0,0,12574,12575,7,11,0,0,12575,12576,7,6,0,0,12576,12577,5,95,0,0,12577,12578,7,15,0,0,12578,12579,7,11,0,0,12579,12580,7,14,0,0,12580,12581,7,5,0,0,12581,12582,7,19,0,0,12582,12583,7,11,0,0,12583,12584,7,7,0,0,12584,12585,7,4,0,0,12585,2094,1,0,0,0,12586,12587,7,11,0,0,12587,12588,7,6,0,0,12588,12589,5,95,0,0,12589,12590,7,15,0,0,12590,12591,7,11,0,0,12591,12592,7,7,0,0,12592,12593,7,23,0,0,12593,12594,7,25,0,0,12594,12595,7,6,0,0,12595,12596,7,10,0,0,12596,2096,1,0,0,0,12597,12598,7,11,0,0,12598,12599,7,6,0,0,12599,12600,5,95,0,0,12600,12601,7,15,0,0,12601,12602,7,11,0,0,12602,12603,7,11,0,0,12603,12604,7,15,0,0,12604,12605,7,23,0,0,12605,12606,7,25,0,0,12606,12607,7,5,0,0,12607,12608,7,7,0,0,12608,2098,1,0,0,0,12609,12610,7,11,0,0,12610,12611,7,6,0,0,12611,12612,5,95,0,0,12612,12613,7,5,0,0,12613,12614,7,15,0,0,12614,12615,7,12,0,0,12615,12616,7,7,0,0,12616,12617,7,18,0,0,12617,12618,7,8,0,0,12618,12619,7,19,0,0,12619,12620,7,23,0,0,12620,12621,7,6,0,0,12621,12622,7,7,0,0,12622,12623,7,26,0,0,12623,12624,7,6,0,0,12624,2100,1,0,0,0,12625,12626,7,11,0,0,12626,12627,7,6,0,0,12627,12628,5,95,0,0,12628,12629,7,5,0,0,12629,12630,7,15,0,0,12630,12631,7,12,0,0,12631,12632,7,7,0,0,12632,12633,7,18,0,0,12633,12634,7,8,0,0,12634,12635,7,19,0,0,12635,12636,7,23,0,0,12636,12637,7,9,0,0,12637,12638,7,21,0,0,12638,12639,7,16,0,0,12639,2102,1,0,0,0,12640,12641,7,11,0,0,12641,12642,7,6,0,0,12642,12643,5,95,0,0,12643,12644,7,5,0,0,12644,12645,7,15,0,0,12645,12646,7,12,0,0,12646,12647,7,7,0,0,12647,12648,7,11,0,0,12648,12649,7,6,0,0,12649,12650,7,8,0,0,12650,12651,7,15,0,0,12651,12652,7,12,0,0,12652,12653,7,22,0,0,12653,12654,7,18,0,0,12654,12655,7,8,0,0,12655,12656,7,19,0,0,12656,12657,7,23,0,0,12657,12658,7,6,0,0,12658,12659,7,7,0,0,12659,12660,7,26,0,0,12660,12661,7,6,0,0,12661,2104,1,0,0,0,12662,12663,7,11,0,0,12663,12664,7,6,0,0,12664,12665,5,95,0,0,12665,12666,7,5,0,0,12666,12667,7,15,0,0,12667,12668,7,12,0,0,12668,12669,7,7,0,0,12669,12670,7,11,0,0,12670,12671,7,6,0,0,12671,12672,7,8,0,0,12672,12673,7,15,0,0,12673,12674,7,12,0,0,12674,12675,7,22,0,0,12675,12676,7,18,0,0,12676,12677,7,8,0,0,12677,12678,7,19,0,0,12678,12679,7,23,0,0,12679,12680,7,9,0,0,12680,12681,7,21,0,0,12681,12682,7,16,0,0,12682,2106,1,0,0,0,12683,12684,7,11,0,0,12684,12685,7,6,0,0,12685,12686,5,95,0,0,12686,12687,7,12,0,0,12687,12688,7,17,0,0,12688,12689,7,23,0,0,12689,12690,7,22,0,0,12690,12691,7,7,0,0,12691,12692,7,19,0,0,12692,12693,7,23,0,0,12693,12694,7,7,0,0,12694,12695,7,6,0,0,12695,12696,7,8,0,0,12696,12697,7,15,0,0,12697,12698,7,7,0,0,12698,12699,7,11,0,0,12699,2108,1,0,0,0,12700,12701,7,11,0,0,12701,12702,7,6,0,0,12702,12703,5,95,0,0,12703,12704,7,12,0,0,12704,12705,7,17,0,0,12705,12706,7,23,0,0,12706,12707,7,15,0,0,12707,12708,7,12,0,0,12708,12709,7,6,0,0,12709,12710,7,7,0,0,12710,12711,7,8,0,0,12711,12712,7,15,0,0,12712,12713,7,19,0,0,12713,12714,7,8,0,0,12714,12715,7,8,0,0,12715,12716,7,15,0,0,12716,12717,7,12,0,0,12717,12718,7,22,0,0,12718,2110,1,0,0,0,12719,12720,7,11,0,0,12720,12721,7,6,0,0,12721,12722,5,95,0,0,12722,12723,7,12,0,0,12723,12724,7,17,0,0,12724,12725,7,23,0,0,12725,12726,7,15,0,0,12726,12727,7,12,0,0,12727,12728,7,6,0,0,12728,12729,7,7,0,0,12729,12730,7,8,0,0,12730,12731,7,15,0,0,12731,12732,7,19,0,0,12732,12733,7,8,0,0,12733,12734,7,8,0,0,12734,12735,7,15,0,0,12735,12736,7,12,0,0,12736,12737,7,22,0,0,12737,12738,7,11,0,0,12738,2112,1,0,0,0,12739,12740,7,11,0,0,12740,12741,7,6,0,0,12741,12742,5,95,0,0,12742,12743,7,12,0,0,12743,12744,7,17,0,0,12744,12745,7,23,0,0,12745,12746,7,25,0,0,12746,12747,7,19,0,0,12747,12748,7,15,0,0,12748,12749,7,12,0,0,12749,12750,7,6,0,0,12750,12751,7,11,0,0,12751,2114,1,0,0,0,12752,12753,7,11,0,0,12753,12754,7,6,0,0,12754,12755,5,95,0,0,12755,12756,7,19,0,0,12756,12757,7,24,0,0,12757,12758,7,7,0,0,12758,12759,7,8,0,0,12759,12760,7,5,0,0,12760,12761,7,3,0,0,12761,12762,7,25,0,0,12762,12763,7,11,0,0,12763,2116,1,0,0,0,12764,12765,7,11,0,0,12765,12766,7,6,0,0,12766,12767,5,95,0,0,12767,12768,7,25,0,0,12768,12769,7,19,0,0,12769,12770,7,15,0,0,12770,12771,7,12,0,0,12771,12772,7,6,0,0,12772,12773,7,18,0,0,12773,12774,7,8,0,0,12774,12775,7,19,0,0,12775,12776,7,23,0,0,12776,12777,7,6,0,0,12777,12778,7,7,0,0,12778,12779,7,26,0,0,12779,12780,7,6,0,0,12780,2118,1,0,0,0,12781,12782,7,11,0,0,12782,12783,7,6,0,0,12783,12784,5,95,0,0,12784,12785,7,25,0,0,12785,12786,7,19,0,0,12786,12787,7,15,0,0,12787,12788,7,12,0,0,12788,12789,7,6,0,0,12789,12790,7,18,0,0,12790,12791,7,8,0,0,12791,12792,7,19,0,0,12792,12793,7,23,0,0,12793,12794,7,9,0,0,12794,12795,7,21,0,0,12795,12796,7,16,0,0,12796,2120,1,0,0,0,12797,12798,7,11,0,0,12798,12799,7,6,0,0,12799,12800,5,95,0,0,12800,12801,7,25,0,0,12801,12802,7,19,0,0,12802,12803,7,15,0,0,12803,12804,7,12,0,0,12804,12805,7,6,0,0,12805,12806,7,12,0,0,12806,2122,1,0,0,0,12807,12808,7,11,0,0,12808,12809,7,6,0,0,12809,12810,5,95,0,0,12810,12811,7,25,0,0,12811,12812,7,19,0,0,12812,12813,7,5,0,0,12813,12814,7,10,0,0,12814,12815,7,18,0,0,12815,12816,7,8,0,0,12816,12817,7,19,0,0,12817,12818,7,23,0,0,12818,12819,7,6,0,0,12819,12820,7,7,0,0,12820,12821,7,26,0,0,12821,12822,7,6,0,0,12822,2124,1,0,0,0,12823,12824,7,11,0,0,12824,12825,7,6,0,0,12825,12826,5,95,0,0,12826,12827,7,25,0,0,12827,12828,7,19,0,0,12828,12829,7,5,0,0,12829,12830,7,10,0,0,12830,12831,7,18,0,0,12831,12832,7,8,0,0,12832,12833,7,19,0,0,12833,12834,7,23,0,0,12834,12835,7,9,0,0,12835,12836,7,21,0,0,12836,12837,7,16,0,0,12837,2126,1,0,0,0,12838,12839,7,11,0,0,12839,12840,7,6,0,0,12840,12841,5,95,0,0,12841,12842,7,25,0,0,12842,12843,7,19,0,0,12843,12844,7,5,0,0,12844,12845,7,10,0,0,12845,12846,7,22,0,0,12846,12847,7,19,0,0,12847,12848,7,12,0,0,12848,12849,7,18,0,0,12849,12850,7,8,0,0,12850,12851,7,19,0,0,12851,12852,7,23,0,0,12852,12853,7,6,0,0,12853,12854,7,7,0,0,12854,12855,7,26,0,0,12855,12856,7,6,0,0,12856,2128,1,0,0,0,12857,12858,7,11,0,0,12858,12859,7,6,0,0,12859,12860,5,95,0,0,12860,12861,7,25,0,0,12861,12862,7,19,0,0,12862,12863,7,5,0,0,12863,12864,7,10,0,0,12864,12865,7,22,0,0,12865,12866,7,19,0,0,12866,12867,7,12,0,0,12867,12868,7,18,0,0,12868,12869,7,8,0,0,12869,12870,7,19,0,0,12870,12871,7,23,0,0,12871,12872,7,9,0,0,12872,12873,7,21,0,0,12873,12874,7,16,0,0,12874,2130,1,0,0,0,12875,12876,7,11,0,0,12876,12877,7,6,0,0,12877,12878,5,95,0,0,12878,12879,7,11,0,0,12879,12880,7,8,0,0,12880,12881,7,15,0,0,12881,12882,7,4,0,0,12882,2132,1,0,0,0,12883,12884,7,11,0,0,12884,12885,7,6,0,0,12885,12886,5,95,0,0,12886,12887,7,11,0,0,12887,12888,7,6,0,0,12888,12889,7,3,0,0,12889,12890,7,8,0,0,12890,12891,7,6,0,0,12891,12892,7,25,0,0,12892,12893,7,19,0,0,12893,12894,7,15,0,0,12894,12895,7,12,0,0,12895,12896,7,6,0,0,12896,2134,1,0,0,0,12897,12898,7,11,0,0,12898,12899,7,6,0,0,12899,12900,5,95,0,0,12900,12901,7,11,0,0,12901,12902,7,10,0,0,12902,12903,7,23,0,0,12903,12904,7,4,0,0,12904,12905,7,15,0,0,12905,12906,7,18,0,0,12906,12907,7,18,0,0,12907,12908,7,7,0,0,12908,12909,7,8,0,0,12909,12910,7,7,0,0,12910,12911,7,12,0,0,12911,12912,7,14,0,0,12912,12913,7,7,0,0,12913,2136,1,0,0,0,12914,12915,7,11,0,0,12915,12916,7,6,0,0,12916,12917,5,95,0,0,12917,12918,7,6,0,0,12918,12919,7,19,0,0,12919,12920,7,17,0,0,12920,12921,7,14,0,0,12921,12922,7,20,0,0,12922,12923,7,7,0,0,12923,12924,7,11,0,0,12924,2138,1,0,0,0,12925,12926,7,11,0,0,12926,12927,7,6,0,0,12927,12928,5,95,0,0,12928,12929,7,17,0,0,12929,12930,7,12,0,0,12930,12931,7,15,0,0,12931,12932,7,19,0,0,12932,12933,7,12,0,0,12933,2140,1,0,0,0,12934,12935,7,11,0,0,12935,12936,7,6,0,0,12936,12937,5,95,0,0,12937,12938,7,9,0,0,12938,12939,7,15,0,0,12939,12940,7,6,0,0,12940,12941,7,20,0,0,12941,12942,7,15,0,0,12942,12943,7,12,0,0,12943,2142,1,0,0,0,12944,12945,7,11,0,0,12945,12946,7,6,0,0,12946,12947,5,95,0,0,12947,12948,7,26,0,0,12948,2144,1,0,0,0,12949,12950,7,11,0,0,12950,12951,7,6,0,0,12951,12952,5,95,0,0,12952,12953,7,10,0,0,12953,2146,1,0,0,0,12954,12955,7,11,0,0,12955,12956,7,17,0,0,12956,12957,7,16,0,0,12957,12958,7,4,0,0,12958,12959,7,3,0,0,12959,12960,7,6,0,0,12960,12961,7,7,0,0,12961,2148,1,0,0,0,12962,12963,7,11,0,0,12963,12964,7,17,0,0,12964,12965,7,16,0,0,12965,12966,7,11,0,0,12966,12967,7,6,0,0,12967,12968,7,8,0,0,12968,12969,7,15,0,0,12969,12970,7,12,0,0,12970,12971,7,22,0,0,12971,12972,5,95,0,0,12972,12973,7,15,0,0,12973,12974,7,12,0,0,12974,12975,7,4,0,0,12975,12976,7,7,0,0,12976,12977,7,26,0,0,12977,2150,1,0,0,0,12978,12979,7,11,0,0,12979,12980,7,17,0,0,12980,12981,7,16,0,0,12981,12982,7,6,0,0,12982,12983,7,15,0,0,12983,12984,7,23,0,0,12984,12985,7,7,0,0,12985,2152,1,0,0,0,12986,12987,7,11,0,0,12987,12988,7,10,0,0,12988,12989,7,11,0,0,12989,12990,7,6,0,0,12990,12991,7,7,0,0,12991,12992,7,23,0,0,12992,12993,5,95,0,0,12993,12994,7,17,0,0,12994,12995,7,11,0,0,12995,12996,7,7,0,0,12996,12997,7,8,0,0,12997,2154,1,0,0,0,12998,12999,7,6,0,0,12999,13e3,7,3,0,0,13e3,13001,7,12,0,0,13001,2156,1,0,0,0,13002,13003,7,6,0,0,13003,13004,7,15,0,0,13004,13005,7,23,0,0,13005,13006,7,7,0,0,13006,13007,7,4,0,0,13007,13008,7,15,0,0,13008,13009,7,18,0,0,13009,13010,7,18,0,0,13010,2158,1,0,0,0,13011,13012,7,6,0,0,13012,13013,7,15,0,0,13013,13014,7,23,0,0,13014,13015,7,7,0,0,13015,13016,7,11,0,0,13016,13017,7,6,0,0,13017,13018,7,3,0,0,13018,13019,7,23,0,0,13019,13020,7,25,0,0,13020,13021,7,3,0,0,13021,13022,7,4,0,0,13022,13023,7,4,0,0,13023,2160,1,0,0,0,13024,13025,7,6,0,0,13025,13026,7,15,0,0,13026,13027,7,23,0,0,13027,13028,7,7,0,0,13028,13029,7,11,0,0,13029,13030,7,6,0,0,13030,13031,7,3,0,0,13031,13032,7,23,0,0,13032,13033,7,25,0,0,13033,13034,7,4,0,0,13034,13035,7,15,0,0,13035,13036,7,18,0,0,13036,13037,7,18,0,0,13037,2162,1,0,0,0,13038,13039,7,6,0,0,13039,13040,7,15,0,0,13040,13041,7,23,0,0,13041,13042,7,7,0,0,13042,13043,5,95,0,0,13043,13044,7,18,0,0,13044,13045,7,19,0,0,13045,13046,7,8,0,0,13046,13047,7,23,0,0,13047,13048,7,3,0,0,13048,13049,7,6,0,0,13049,2164,1,0,0,0,13050,13051,7,6,0,0,13051,13052,7,15,0,0,13052,13053,7,23,0,0,13053,13054,7,7,0,0,13054,13055,5,95,0,0,13055,13056,7,6,0,0,13056,13057,7,19,0,0,13057,13058,5,95,0,0,13058,13059,7,11,0,0,13059,13060,7,7,0,0,13060,13061,7,14,0,0,13061,2166,1,0,0,0,13062,13063,7,6,0,0,13063,13064,7,19,0,0,13064,13065,7,17,0,0,13065,13066,7,14,0,0,13066,13067,7,20,0,0,13067,13068,7,7,0,0,13068,13069,7,11,0,0,13069,2168,1,0,0,0,13070,13071,7,6,0,0,13071,13072,7,19,0,0,13072,13073,5,95,0,0,13073,13074,7,16,0,0,13074,13075,7,3,0,0,13075,13076,7,11,0,0,13076,13077,7,7,0,0,13077,13078,5,54,0,0,13078,13079,5,52,0,0,13079,2170,1,0,0,0,13080,13081,7,6,0,0,13081,13082,7,19,0,0,13082,13083,5,95,0,0,13083,13084,7,4,0,0,13084,13085,7,3,0,0,13085,13086,7,10,0,0,13086,13087,7,11,0,0,13087,2172,1,0,0,0,13088,13089,7,6,0,0,13089,13090,7,19,0,0,13090,13091,5,95,0,0,13091,13092,7,11,0,0,13092,13093,7,7,0,0,13093,13094,7,14,0,0,13094,13095,7,19,0,0,13095,13096,7,12,0,0,13096,13097,7,4,0,0,13097,13098,7,11,0,0,13098,2174,1,0,0,0,13099,13100,7,6,0,0,13100,13101,7,25,0,0,13101,13102,5,95,0,0,13102,13103,7,14,0,0,13103,13104,7,19,0,0,13104,13105,7,12,0,0,13105,13106,7,12,0,0,13106,13107,7,7,0,0,13107,13108,7,14,0,0,13108,13109,7,6,0,0,13109,13110,7,15,0,0,13110,13111,7,19,0,0,13111,13112,7,12,0,0,13112,13113,5,95,0,0,13113,13114,7,3,0,0,13114,13115,7,4,0,0,13115,13116,7,23,0,0,13116,13117,7,15,0,0,13117,13118,7,12,0,0,13118,2176,1,0,0,0,13119,13120,7,17,0,0,13120,13121,7,14,0,0,13121,13122,7,3,0,0,13122,13123,7,11,0,0,13123,13124,7,7,0,0,13124,2178,1,0,0,0,13125,13126,7,17,0,0,13126,13127,7,12,0,0,13127,13128,7,14,0,0,13128,13129,7,19,0,0,13129,13130,7,23,0,0,13130,13131,7,25,0,0,13131,13132,7,8,0,0,13132,13133,7,7,0,0,13133,13134,7,11,0,0,13134,13135,7,11,0,0,13135,2180,1,0,0,0,13136,13137,7,17,0,0,13137,13138,7,12,0,0,13138,13139,7,14,0,0,13139,13140,7,19,0,0,13140,13141,7,23,0,0,13141,13142,7,25,0,0,13142,13143,7,8,0,0,13143,13144,7,7,0,0,13144,13145,7,11,0,0,13145,13146,7,11,0,0,13146,13147,7,7,0,0,13147,13148,7,4,0,0,13148,13149,5,95,0,0,13149,13150,7,5,0,0,13150,13151,7,7,0,0,13151,13152,7,12,0,0,13152,13153,7,22,0,0,13153,13154,7,6,0,0,13154,13155,7,20,0,0,13155,2182,1,0,0,0,13156,13157,7,17,0,0,13157,13158,7,12,0,0,13158,13159,7,20,0,0,13159,13160,7,7,0,0,13160,13161,7,26,0,0,13161,2184,1,0,0,0,13162,13163,7,17,0,0,13163,13164,7,12,0,0,13164,13165,7,15,0,0,13165,13166,7,26,0,0,13166,13167,5,95,0,0,13167,13168,7,6,0,0,13168,13169,7,15,0,0,13169,13170,7,23,0,0,13170,13171,7,7,0,0,13171,13172,7,11,0,0,13172,13173,7,6,0,0,13173,13174,7,3,0,0,13174,13175,7,23,0,0,13175,13176,7,25,0,0,13176,2186,1,0,0,0,13177,13178,7,17,0,0,13178,13179,7,25,0,0,13179,13180,7,4,0,0,13180,13181,7,3,0,0,13181,13182,7,6,0,0,13182,13183,7,7,0,0,13183,13184,7,26,0,0,13184,13185,7,23,0,0,13185,13186,7,5,0,0,13186,2188,1,0,0,0,13187,13188,7,17,0,0,13188,13189,7,25,0,0,13189,13190,7,25,0,0,13190,13191,7,7,0,0,13191,13192,7,8,0,0,13192,2190,1,0,0,0,13193,13194,7,17,0,0,13194,13195,7,17,0,0,13195,13196,7,15,0,0,13196,13197,7,4,0,0,13197,2192,1,0,0,0,13198,13199,7,17,0,0,13199,13200,7,17,0,0,13200,13201,7,15,0,0,13201,13202,7,4,0,0,13202,13203,5,95,0,0,13203,13204,7,11,0,0,13204,13205,7,20,0,0,13205,13206,7,19,0,0,13206,13207,7,8,0,0,13207,13208,7,6,0,0,13208,2194,1,0,0,0,13209,13210,7,24,0,0,13210,13211,7,3,0,0,13211,13212,7,5,0,0,13212,13213,7,15,0,0,13213,13214,7,4,0,0,13214,13215,7,3,0,0,13215,13216,7,6,0,0,13216,13217,7,7,0,0,13217,13218,5,95,0,0,13218,13219,7,25,0,0,13219,13220,7,3,0,0,13220,13221,7,11,0,0,13221,13222,7,11,0,0,13222,13223,7,9,0,0,13223,13224,7,19,0,0,13224,13225,7,8,0,0,13225,13226,7,4,0,0,13226,13227,5,95,0,0,13227,13228,7,11,0,0,13228,13229,7,6,0,0,13229,13230,7,8,0,0,13230,13231,7,7,0,0,13231,13232,7,12,0,0,13232,13233,7,22,0,0,13233,13234,7,6,0,0,13234,13235,7,20,0,0,13235,2196,1,0,0,0,13236,13237,7,24,0,0,13237,13238,7,7,0,0,13238,13239,7,8,0,0,13239,13240,7,11,0,0,13240,13241,7,15,0,0,13241,13242,7,19,0,0,13242,13243,7,12,0,0,13243,2198,1,0,0,0,13244,13245,7,9,0,0,13245,13246,7,3,0,0,13246,13247,7,15,0,0,13247,13248,7,6,0,0,13248,13249,5,95,0,0,13249,13250,7,17,0,0,13250,13251,7,12,0,0,13251,13252,7,6,0,0,13252,13253,7,15,0,0,13253,13254,7,5,0,0,13254,13255,5,95,0,0,13255,13256,7,11,0,0,13256,13257,7,28,0,0,13257,13258,7,5,0,0,13258,13259,5,95,0,0,13259,13260,7,6,0,0,13260,13261,7,20,0,0,13261,13262,7,8,0,0,13262,13263,7,7,0,0,13263,13264,7,3,0,0,13264,13265,7,4,0,0,13265,13266,5,95,0,0,13266,13267,7,3,0,0,13267,13268,7,18,0,0,13268,13269,7,6,0,0,13269,13270,7,7,0,0,13270,13271,7,8,0,0,13271,13272,5,95,0,0,13272,13273,7,22,0,0,13273,13274,7,6,0,0,13274,13275,7,15,0,0,13275,13276,7,4,0,0,13276,13277,7,11,0,0,13277,2200,1,0,0,0,13278,13279,7,9,0,0,13279,13280,7,7,0,0,13280,13281,7,7,0,0,13281,13282,7,21,0,0,13282,13283,7,4,0,0,13283,13284,7,3,0,0,13284,13285,7,10,0,0,13285,2202,1,0,0,0,13286,13287,7,9,0,0,13287,13288,7,7,0,0,13288,13289,7,7,0,0,13289,13290,7,21,0,0,13290,13291,7,19,0,0,13291,13292,7,18,0,0,13292,13293,7,10,0,0,13293,13294,7,7,0,0,13294,13295,7,3,0,0,13295,13296,7,8,0,0,13296,2204,1,0,0,0,13297,13298,7,9,0,0,13298,13299,7,7,0,0,13299,13300,7,15,0,0,13300,13301,7,22,0,0,13301,13302,7,20,0,0,13302,13303,7,6,0,0,13303,13304,5,95,0,0,13304,13305,7,11,0,0,13305,13306,7,6,0,0,13306,13307,7,8,0,0,13307,13308,7,15,0,0,13308,13309,7,12,0,0,13309,13310,7,22,0,0,13310,2206,1,0,0,0,13311,13312,7,9,0,0,13312,13313,7,15,0,0,13313,13314,7,6,0,0,13314,13315,7,20,0,0,13315,13316,7,15,0,0,13316,13317,7,12,0,0,13317,2208,1,0,0,0,13318,13319,7,10,0,0,13319,13320,7,7,0,0,13320,13321,7,3,0,0,13321,13322,7,8,0,0,13322,13323,7,9,0,0,13323,13324,7,7,0,0,13324,13325,7,7,0,0,13325,13326,7,21,0,0,13326,2210,1,0,0,0,13327,13328,7,10,0,0,13328,2212,1,0,0,0,13329,13330,7,26,0,0,13330,2214,1,0,0,0,13331,13332,5,58,0,0,13332,13333,5,61,0,0,13333,2216,1,0,0,0,13334,13335,5,43,0,0,13335,13336,5,61,0,0,13336,2218,1,0,0,0,13337,13338,5,45,0,0,13338,13339,5,61,0,0,13339,2220,1,0,0,0,13340,13341,5,42,0,0,13341,13342,5,61,0,0,13342,2222,1,0,0,0,13343,13344,5,47,0,0,13344,13345,5,61,0,0,13345,2224,1,0,0,0,13346,13347,5,37,0,0,13347,13348,5,61,0,0,13348,2226,1,0,0,0,13349,13350,5,38,0,0,13350,13351,5,61,0,0,13351,2228,1,0,0,0,13352,13353,5,94,0,0,13353,13354,5,61,0,0,13354,2230,1,0,0,0,13355,13356,5,124,0,0,13356,13357,5,61,0,0,13357,2232,1,0,0,0,13358,13359,5,42,0,0,13359,2234,1,0,0,0,13360,13361,5,47,0,0,13361,2236,1,0,0,0,13362,13363,5,37,0,0,13363,2238,1,0,0,0,13364,13365,5,43,0,0,13365,2240,1,0,0,0,13366,13367,5,45,0,0,13367,2242,1,0,0,0,13368,13369,7,4,0,0,13369,13370,7,15,0,0,13370,13371,7,24,0,0,13371,2244,1,0,0,0,13372,13373,7,23,0,0,13373,13374,7,19,0,0,13374,13375,7,4,0,0,13375,2246,1,0,0,0,13376,13377,5,61,0,0,13377,2248,1,0,0,0,13378,13379,5,62,0,0,13379,2250,1,0,0,0,13380,13381,5,60,0,0,13381,2252,1,0,0,0,13382,13383,5,33,0,0,13383,2254,1,0,0,0,13384,13385,5,126,0,0,13385,2256,1,0,0,0,13386,13387,5,124,0,0,13387,2258,1,0,0,0,13388,13389,5,38,0,0,13389,2260,1,0,0,0,13390,13391,5,94,0,0,13391,2262,1,0,0,0,13392,13393,5,46,0,0,13393,2264,1,0,0,0,13394,13395,5,40,0,0,13395,2266,1,0,0,0,13396,13397,5,41,0,0,13397,2268,1,0,0,0,13398,13399,5,44,0,0,13399,2270,1,0,0,0,13400,13401,5,59,0,0,13401,2272,1,0,0,0,13402,13403,5,64,0,0,13403,2274,1,0,0,0,13404,13405,5,48,0,0,13405,2276,1,0,0,0,13406,13407,5,49,0,0,13407,2278,1,0,0,0,13408,13409,5,50,0,0,13409,2280,1,0,0,0,13410,13411,5,39,0,0,13411,2282,1,0,0,0,13412,13413,5,34,0,0,13413,2284,1,0,0,0,13414,13415,5,96,0,0,13415,2286,1,0,0,0,13416,13417,5,58,0,0,13417,2288,1,0,0,0,13418,13422,3,2281,1140,0,13419,13422,3,2283,1141,0,13420,13422,3,2285,1142,0,13421,13418,1,0,0,0,13421,13419,1,0,0,0,13421,13420,1,0,0,0,13422,2290,1,0,0,0,13423,13424,5,96,0,0,13424,13425,3,2323,1161,0,13425,13426,5,96,0,0,13426,2292,1,0,0,0,13427,13429,3,2337,1168,0,13428,13427,1,0,0,0,13429,13430,1,0,0,0,13430,13428,1,0,0,0,13430,13431,1,0,0,0,13431,13432,1,0,0,0,13432,13433,7,29,0,0,13433,2294,1,0,0,0,13434,13435,7,12,0,0,13435,13436,3,2331,1165,0,13436,2296,1,0,0,0,13437,13441,3,2329,1164,0,13438,13441,3,2331,1165,0,13439,13441,3,2333,1166,0,13440,13437,1,0,0,0,13440,13438,1,0,0,0,13440,13439,1,0,0,0,13441,2298,1,0,0,0,13442,13444,3,2337,1168,0,13443,13442,1,0,0,0,13444,13445,1,0,0,0,13445,13443,1,0,0,0,13445,13446,1,0,0,0,13446,2300,1,0,0,0,13447,13448,7,26,0,0,13448,13452,5,39,0,0,13449,13450,3,2335,1167,0,13450,13451,3,2335,1167,0,13451,13453,1,0,0,0,13452,13449,1,0,0,0,13453,13454,1,0,0,0,13454,13452,1,0,0,0,13454,13455,1,0,0,0,13455,13456,1,0,0,0,13456,13457,5,39,0,0,13457,13467,1,0,0,0,13458,13459,5,48,0,0,13459,13460,7,26,0,0,13460,13462,1,0,0,0,13461,13463,3,2335,1167,0,13462,13461,1,0,0,0,13463,13464,1,0,0,0,13464,13462,1,0,0,0,13464,13465,1,0,0,0,13465,13467,1,0,0,0,13466,13447,1,0,0,0,13466,13458,1,0,0,0,13467,2302,1,0,0,0,13468,13470,3,2337,1168,0,13469,13468,1,0,0,0,13470,13473,1,0,0,0,13471,13469,1,0,0,0,13471,13472,1,0,0,0,13472,13474,1,0,0,0,13473,13471,1,0,0,0,13474,13476,5,46,0,0,13475,13477,3,2337,1168,0,13476,13475,1,0,0,0,13477,13478,1,0,0,0,13478,13476,1,0,0,0,13478,13479,1,0,0,0,13479,13510,1,0,0,0,13480,13482,3,2337,1168,0,13481,13480,1,0,0,0,13482,13483,1,0,0,0,13483,13481,1,0,0,0,13483,13484,1,0,0,0,13484,13485,1,0,0,0,13485,13486,5,46,0,0,13486,13487,3,2325,1162,0,13487,13510,1,0,0,0,13488,13490,3,2337,1168,0,13489,13488,1,0,0,0,13490,13493,1,0,0,0,13491,13489,1,0,0,0,13491,13492,1,0,0,0,13492,13494,1,0,0,0,13493,13491,1,0,0,0,13494,13496,5,46,0,0,13495,13497,3,2337,1168,0,13496,13495,1,0,0,0,13497,13498,1,0,0,0,13498,13496,1,0,0,0,13498,13499,1,0,0,0,13499,13500,1,0,0,0,13500,13501,3,2325,1162,0,13501,13510,1,0,0,0,13502,13504,3,2337,1168,0,13503,13502,1,0,0,0,13504,13505,1,0,0,0,13505,13503,1,0,0,0,13505,13506,1,0,0,0,13506,13507,1,0,0,0,13507,13508,3,2325,1162,0,13508,13510,1,0,0,0,13509,13471,1,0,0,0,13509,13481,1,0,0,0,13509,13491,1,0,0,0,13509,13503,1,0,0,0,13510,2304,1,0,0,0,13511,13512,5,92,0,0,13512,13513,7,12,0,0,13513,2306,1,0,0,0,13514,13515,3,2339,1169,0,13515,2308,1,0,0,0,13516,13517,5,95,0,0,13517,13518,3,2323,1161,0,13518,2310,1,0,0,0,13519,13520,5,46,0,0,13520,13521,3,2327,1163,0,13521,2312,1,0,0,0,13522,13523,3,2327,1163,0,13523,2314,1,0,0,0,13524,13525,3,2333,1166,0,13525,2316,1,0,0,0,13526,13527,3,2273,1136,0,13527,13528,3,2341,1170,0,13528,2318,1,0,0,0,13529,13536,3,2273,1136,0,13530,13537,3,2297,1148,0,13531,13533,7,30,0,0,13532,13531,1,0,0,0,13533,13534,1,0,0,0,13534,13532,1,0,0,0,13534,13535,1,0,0,0,13535,13537,1,0,0,0,13536,13530,1,0,0,0,13536,13532,1,0,0,0,13537,2320,1,0,0,0,13538,13539,3,2273,1136,0,13539,13546,3,2273,1136,0,13540,13542,7,30,0,0,13541,13540,1,0,0,0,13542,13543,1,0,0,0,13543,13541,1,0,0,0,13543,13544,1,0,0,0,13544,13547,1,0,0,0,13545,13547,3,2333,1166,0,13546,13541,1,0,0,0,13546,13545,1,0,0,0,13547,2322,1,0,0,0,13548,13590,3,1491,745,0,13549,13590,3,1493,746,0,13550,13590,3,1495,747,0,13551,13590,3,451,225,0,13552,13590,3,1497,748,0,13553,13590,3,1499,749,0,13554,13590,3,1501,750,0,13555,13590,3,1503,751,0,13556,13590,3,1505,752,0,13557,13590,3,1507,753,0,13558,13590,3,1509,754,0,13559,13590,3,1511,755,0,13560,13590,3,1513,756,0,13561,13590,3,1515,757,0,13562,13590,3,1517,758,0,13563,13590,3,1521,760,0,13564,13590,3,1523,761,0,13565,13590,3,1525,762,0,13566,13590,3,1527,763,0,13567,13590,3,1529,764,0,13568,13590,3,1531,765,0,13569,13590,3,1533,766,0,13570,13590,3,1535,767,0,13571,13590,3,1537,768,0,13572,13590,3,1539,769,0,13573,13590,3,1541,770,0,13574,13590,3,1543,771,0,13575,13590,3,1545,772,0,13576,13590,3,1547,773,0,13577,13590,3,1549,774,0,13578,13590,3,1551,775,0,13579,13590,3,1553,776,0,13580,13590,3,1555,777,0,13581,13590,3,1557,778,0,13582,13590,3,1559,779,0,13583,13590,3,1561,780,0,13584,13590,3,1563,781,0,13585,13590,3,1565,782,0,13586,13590,3,1567,783,0,13587,13590,3,1569,784,0,13588,13590,3,1571,785,0,13589,13548,1,0,0,0,13589,13549,1,0,0,0,13589,13550,1,0,0,0,13589,13551,1,0,0,0,13589,13552,1,0,0,0,13589,13553,1,0,0,0,13589,13554,1,0,0,0,13589,13555,1,0,0,0,13589,13556,1,0,0,0,13589,13557,1,0,0,0,13589,13558,1,0,0,0,13589,13559,1,0,0,0,13589,13560,1,0,0,0,13589,13561,1,0,0,0,13589,13562,1,0,0,0,13589,13563,1,0,0,0,13589,13564,1,0,0,0,13589,13565,1,0,0,0,13589,13566,1,0,0,0,13589,13567,1,0,0,0,13589,13568,1,0,0,0,13589,13569,1,0,0,0,13589,13570,1,0,0,0,13589,13571,1,0,0,0,13589,13572,1,0,0,0,13589,13573,1,0,0,0,13589,13574,1,0,0,0,13589,13575,1,0,0,0,13589,13576,1,0,0,0,13589,13577,1,0,0,0,13589,13578,1,0,0,0,13589,13579,1,0,0,0,13589,13580,1,0,0,0,13589,13581,1,0,0,0,13589,13582,1,0,0,0,13589,13583,1,0,0,0,13589,13584,1,0,0,0,13589,13585,1,0,0,0,13589,13586,1,0,0,0,13589,13587,1,0,0,0,13589,13588,1,0,0,0,13590,2324,1,0,0,0,13591,13593,7,7,0,0,13592,13594,7,31,0,0,13593,13592,1,0,0,0,13593,13594,1,0,0,0,13594,13596,1,0,0,0,13595,13597,3,2337,1168,0,13596,13595,1,0,0,0,13597,13598,1,0,0,0,13598,13596,1,0,0,0,13598,13599,1,0,0,0,13599,2326,1,0,0,0,13600,13602,7,32,0,0,13601,13600,1,0,0,0,13602,13605,1,0,0,0,13603,13604,1,0,0,0,13603,13601,1,0,0,0,13604,13607,1,0,0,0,13605,13603,1,0,0,0,13606,13608,7,33,0,0,13607,13606,1,0,0,0,13608,13609,1,0,0,0,13609,13610,1,0,0,0,13609,13607,1,0,0,0,13610,13614,1,0,0,0,13611,13613,7,32,0,0,13612,13611,1,0,0,0,13613,13616,1,0,0,0,13614,13612,1,0,0,0,13614,13615,1,0,0,0,13615,2328,1,0,0,0,13616,13614,1,0,0,0,13617,13625,5,34,0,0,13618,13619,5,92,0,0,13619,13624,9,0,0,0,13620,13621,5,34,0,0,13621,13624,5,34,0,0,13622,13624,8,34,0,0,13623,13618,1,0,0,0,13623,13620,1,0,0,0,13623,13622,1,0,0,0,13624,13627,1,0,0,0,13625,13623,1,0,0,0,13625,13626,1,0,0,0,13626,13628,1,0,0,0,13627,13625,1,0,0,0,13628,13629,5,34,0,0,13629,2330,1,0,0,0,13630,13638,5,39,0,0,13631,13632,5,92,0,0,13632,13637,9,0,0,0,13633,13634,5,39,0,0,13634,13637,5,39,0,0,13635,13637,8,35,0,0,13636,13631,1,0,0,0,13636,13633,1,0,0,0,13636,13635,1,0,0,0,13637,13640,1,0,0,0,13638,13636,1,0,0,0,13638,13639,1,0,0,0,13639,13641,1,0,0,0,13640,13638,1,0,0,0,13641,13642,5,39,0,0,13642,2332,1,0,0,0,13643,13649,5,96,0,0,13644,13648,8,36,0,0,13645,13646,5,96,0,0,13646,13648,5,96,0,0,13647,13644,1,0,0,0,13647,13645,1,0,0,0,13648,13651,1,0,0,0,13649,13647,1,0,0,0,13649,13650,1,0,0,0,13650,13652,1,0,0,0,13651,13649,1,0,0,0,13652,13653,5,96,0,0,13653,2334,1,0,0,0,13654,13655,7,37,0,0,13655,2336,1,0,0,0,13656,13657,7,38,0,0,13657,2338,1,0,0,0,13658,13659,7,16,0,0,13659,13661,5,39,0,0,13660,13662,7,39,0,0,13661,13660,1,0,0,0,13662,13663,1,0,0,0,13663,13661,1,0,0,0,13663,13664,1,0,0,0,13664,13665,1,0,0,0,13665,13666,5,39,0,0,13666,2340,1,0,0,0,13667,13669,7,38,0,0,13668,13667,1,0,0,0,13669,13670,1,0,0,0,13670,13668,1,0,0,0,13670,13671,1,0,0,0,13671,13672,1,0,0,0,13672,13674,5,46,0,0,13673,13675,7,40,0,0,13674,13673,1,0,0,0,13675,13676,1,0,0,0,13676,13674,1,0,0,0,13676,13677,1,0,0,0,13677,13698,1,0,0,0,13678,13680,7,37,0,0,13679,13678,1,0,0,0,13680,13683,1,0,0,0,13681,13679,1,0,0,0,13681,13682,1,0,0,0,13682,13684,1,0,0,0,13683,13681,1,0,0,0,13684,13688,5,58,0,0,13685,13687,7,37,0,0,13686,13685,1,0,0,0,13687,13690,1,0,0,0,13688,13686,1,0,0,0,13688,13689,1,0,0,0,13689,13691,1,0,0,0,13690,13688,1,0,0,0,13691,13693,5,58,0,0,13692,13694,7,41,0,0,13693,13692,1,0,0,0,13694,13695,1,0,0,0,13695,13693,1,0,0,0,13695,13696,1,0,0,0,13696,13698,1,0,0,0,13697,13668,1,0,0,0,13697,13681,1,0,0,0,13698,2342,1,0,0,0,13699,13700,9,0,0,0,13700,13701,1,0,0,0,13701,13702,6,1171,2,0,13702,2344,1,0,0,0,51,0,2348,2359,2372,2386,2390,2395,2399,2403,2409,2413,2415,9261,9288,13421,13430,13440,13445,13454,13464,13466,13471,13478,13483,13491,13498,13505,13509,13534,13536,13543,13546,13589,13593,13598,13603,13609,13614,13623,13625,13636,13638,13647,13649,13663,13670,13676,13681,13688,13695,13697,3,0,1,0,6,0,0,0,3,0],Ki.vocabulary=new Ra(Ki.literalNames,Ki.symbolicNames,[]),Ki.decisionsToDFA=Ki._ATN.decisionToState.map(((t,e)=>new ni(t,e))),Ki),FC=(Qi=class t extends Cc{get grammarFileName(){return"MySqlParser.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}createFailedPredicateException(t,e){return new Sc(this,t,e)}constructor(e){super(e),this.interpreter=new Ai(this,t._ATN,t.decisionsToDFA,new Si)}root(){let e,s=new vC(this.context,this.state);this.enterRule(s,0,t.RULE_root);try{this.enterOuterAlt(s,1),this.state=751,this.errorHandler.sync(this),e=this.tokenStream.LA(1),(!(-32&e)&&1<'","'<'","'!'","'~'","'|'","'&'","'^'","'.'","'('","')'","','","';'","'@'","'0'","'1'","'2'","'''","'\"'","'`'","':'"],Qi.symbolicNames=[null,"SPACE","SPEC_MYSQL_COMMENT","COMMENT_INPUT","LINE_COMMENT","ADD","ALL","ALTER","ALWAYS","ANALYZE","AND","ARRAY","AS","ASC","ATTRIBUTE","BEFORE","BETWEEN","BOTH","BUCKETS","BY","CALL","CASCADE","CASE","CAST","CHANGE","CHARACTER","CHECK","COLLATE","COLUMN","CONDITION","CONSTRAINT","CONTINUE","CONVERT","CREATE","CROSS","CURRENT","CURRENT_ROLE","CURRENT_USER","CURSOR","DATABASE","DATABASES","DECLARE","DEFAULT","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DIAGNOSTICS","DISTINCT","DISTINCTROW","DROP","EACH","ELSE","ELSEIF","EMPTY","ENCLOSED","ENFORCED","ESCAPED","EXCEPT","EXISTS","EXIT","EXPLAIN","FALSE","FETCH","FOR","FORCE","FOREIGN","FROM","FULLTEXT","GENERATED","GET","GRANT","GROUP","HAVING","HIGH_PRIORITY","HISTOGRAM","IF","IGNORE","IGNORED","IN","INDEX","INFILE","INNER","INOUT","INSERT","INTERVAL","INTO","IS","ITERATE","JOIN","KEY","KEYS","KILL","LATERAL","LEADING","LEAVE","LEFT","LIKE","LIMIT","LINEAR","LINES","LOAD","LOCK","LOCKED","LOOP","LOW_PRIORITY","MASTER_BIND","MASTER_SSL_VERIFY_SERVER_CERT","MATCH","MAXVALUE","MINVALUE","MODIFIES","NATURAL","NOT","NO_WRITE_TO_BINLOG","NULL_LITERAL","NUMBER","ON","OPTIMIZE","OPTION","OPTIONAL","OPTIONALLY","OR","ORDER","OUT","OUTER","OUTFILE","OVER","PARTITION","PRIMARY","PROCEDURE","PURGE","RANGE","READ","READS","REFERENCES","REGEXP","RELEASE","RENAME","REPEAT","REPLACE","REQUIRE","RESIGNAL","RESTRICT","RETAIN","RETURN","REVOKE","RIGHT","RLIKE","SCHEMA","SCHEMAS","SELECT","SET","SEPARATOR","SHOW","SIGNAL","SKIP_","SKIP_QUERY_REWRITE","SPATIAL","SQL","SQLEXCEPTION","SQLSTATE","SQLWARNING","SQL_BIG_RESULT","SQL_CALC_FOUND_ROWS","SQL_SMALL_RESULT","SSL","STACKED","STARTING","STATEMENT","STRAIGHT_JOIN","TABLE","TERMINATED","THEN","TO","TRAILING","TRIGGER","TRUE","UNDO","UNION","UNIQUE","UNLOCK","UNSIGNED","UPDATE","USAGE","USE","USING","VALUES","WHEN","WHERE","WHILE","WITH","WRITE","XOR","ZEROFILL","TINYINT","SMALLINT","MEDIUMINT","MIDDLEINT","INT","INT1","INT2","INT3","INT4","INT8","INTEGER","BIGINT","REAL","DOUBLE","PRECISION","FLOAT","FLOAT4","FLOAT8","DECIMAL","DEC","NUMERIC","DATE","TIME","TIMESTAMP","DATETIME","YEAR","CHAR","VARCHAR","NVARCHAR","NATIONAL","BINARY","VARBINARY","TINYBLOB","BLOB","MEDIUMBLOB","LONG","LONGBLOB","TINYTEXT","TEXT","MEDIUMTEXT","LONGTEXT","ENUM","VARYING","SERIAL","YEAR_MONTH","DAY_HOUR","DAY_MINUTE","DAY_SECOND","HOUR_MINUTE","HOUR_SECOND","MINUTE_SECOND","SECOND_MICROSECOND","MINUTE_MICROSECOND","HOUR_MICROSECOND","DAY_MICROSECOND","JSON_ARRAY","JSON_ARRAYAGG","JSON_ARRAY_APPEND","JSON_ARRAY_INSERT","JSON_CONTAINS","JSON_CONTAINS_PATH","JSON_DEPTH","JSON_EXTRACT","JSON_INSERT","JSON_KEYS","JSON_LENGTH","JSON_MERGE","JSON_MERGE_PATCH","JSON_MERGE_PRESERVE","JSON_OBJECT","JSON_OBJECTAGG","JSON_OVERLAPS","JSON_PRETTY","JSON_QUOTE","JSON_REMOVE","JSON_REPLACE","JSON_SCHEMA_VALID","JSON_SCHEMA_VALIDATION_REPORT","JSON_SEARCH","JSON_SET","JSON_STORAGE_FREE","JSON_STORAGE_SIZE","JSON_TABLE","JSON_TYPE","JSON_UNQUOTE","JSON_VALID","JSON_VALUE","NESTED","ORDINALITY","PATH","AVG","BIT_AND","BIT_OR","BIT_XOR","COUNT","CUME_DIST","DENSE_RANK","FIRST_VALUE","GROUP_CONCAT","LAG","LAST_VALUE","LEAD","MAX","MIN","NTILE","NTH_VALUE","PERCENT_RANK","RANK","ROW_NUMBER","STD","STDDEV","STDDEV_POP","STDDEV_SAMP","SUM","VAR_POP","VAR_SAMP","VARIANCE","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","LOCALTIME","CURDATE","CURTIME","DATE_ADD","DATE_SUB","EXTRACT","LOCALTIMESTAMP","NOW","POSITION","SUBSTR","SUBSTRING","SYSDATE","TRIM","UTC_DATE","UTC_TIME","UTC_TIMESTAMP","ACCOUNT","ACTION","AFTER","AGGREGATE","ALGORITHM","ANY","AT","AUTHORS","AUTOCOMMIT","AUTOEXTEND_SIZE","AUTO_INCREMENT","AVG_ROW_LENGTH","BEGIN","BINLOG","BIT","BLOCK","BOOL","BOOLEAN","BTREE","CACHE","CASCADED","CHAIN","CHANGED","CHANNEL","CHECKSUM","PAGE_CHECKSUM","CIPHER","CLASS_ORIGIN","CLIENT","CLOSE","CLUSTERING","COALESCE","CODE","COLUMNS","COLUMN_FORMAT","COLUMN_NAME","COMMENT","COMMIT","COMPACT","COMPLETION","COMPRESSED","COMPRESSION","CONCURRENT","CONNECT","CONNECTION","CONSISTENT","CONSTRAINT_CATALOG","CONSTRAINT_SCHEMA","CONSTRAINT_NAME","CONTAINS","CONTEXT","CONTRIBUTORS","COPY","CPU","CYCLE","CURSOR_NAME","DATA","DATAFILE","DEALLOCATE","DEFAULT_AUTH","DEFINER","DELAY_KEY_WRITE","DES_KEY_FILE","DIRECTORY","DISABLE","DISCARD","DISK","DO","DUMPFILE","DUPLICATE","DYNAMIC","ENABLE","ENCRYPTED","ENCRYPTION","ENCRYPTION_KEY_ID","END","ENDS","ENGINE","ENGINES","ERROR","ERRORS","ESCAPE","EVEN","EVENT","EVENTS","EVERY","EXCHANGE","EXCLUSIVE","EXPIRE","EXPORT","EXTENDED","EXTENT_SIZE","FAILED_LOGIN_ATTEMPTS","FAST","FAULTS","FIELDS","FILE_BLOCK_SIZE","FILTER","FIRST","FIXED","FLUSH","FOLLOWING","FOLLOWS","FOUND","FULL","FUNCTION","GENERAL","GLOBAL","GRANTS","GROUP_REPLICATION","HANDLER","HASH","HELP","HISTORY","HOST","HOSTS","IDENTIFIED","IGNORE_SERVER_IDS","IMPORT","INCREMENT","INDEXES","INITIAL_SIZE","INPLACE","INSERT_METHOD","INSTALL","INSTANCE","INSTANT","INVISIBLE","INVOKER","IO","IO_THREAD","IPC","ISOLATION","ISSUER","JSON","KEY_BLOCK_SIZE","LANGUAGE","LAST","LEAVES","LESS","LEVEL","LIST","LOCAL","LOGFILE","LOGS","MASTER","MASTER_AUTO_POSITION","MASTER_CONNECT_RETRY","MASTER_DELAY","MASTER_HEARTBEAT_PERIOD","MASTER_HOST","MASTER_LOG_FILE","MASTER_LOG_POS","MASTER_PASSWORD","MASTER_PORT","MASTER_RETRY_COUNT","MASTER_SSL","MASTER_SSL_CA","MASTER_SSL_CAPATH","MASTER_SSL_CERT","MASTER_SSL_CIPHER","MASTER_SSL_CRL","MASTER_SSL_CRLPATH","MASTER_SSL_KEY","MASTER_TLS_VERSION","MASTER_USER","MAX_CONNECTIONS_PER_HOUR","MAX_QUERIES_PER_HOUR","MAX_ROWS","MAX_SIZE","MAX_UPDATES_PER_HOUR","MAX_USER_CONNECTIONS","MEDIUM","MEMBER","MERGE","MESSAGE_TEXT","MID","MIGRATE","MIN_ROWS","MODE","MODIFY","MUTEX","MYSQL","MYSQL_ERRNO","NAME","NAMES","NCHAR","NEVER","NEXT","NO","NOCACHE","NOCOPY","NOCYCLE","NOMAXVALUE","NOMINVALUE","NOWAIT","NODEGROUP","NONE","ODBC","OFFLINE","OFFSET","OF","OJ","OLD_PASSWORD","ONE","ONLINE","ONLY","OPEN","OPTIMIZER_COSTS","OPTIONS","OWNER","PACK_KEYS","PAGE","PAGE_COMPRESSED","PAGE_COMPRESSION_LEVEL","PARSER","PARTIAL","PARTITIONING","PARTITIONS","PASSWORD","PASSWORD_LOCK_TIME","PHASE","PLUGIN","PLUGIN_DIR","PLUGINS","PORT","PRECEDES","PRECEDING","PREPARE","PRESERVE","PREV","PROCESSLIST","PROFILE","PROFILES","PROXY","QUERY","QUICK","REBUILD","RECOVER","RECURSIVE","REDO_BUFFER_SIZE","REDUNDANT","RELAY","RELAY_LOG_FILE","RELAY_LOG_POS","RELAYLOG","REMOVE","REORGANIZE","REPAIR","REPLICATE_DO_DB","REPLICATE_DO_TABLE","REPLICATE_IGNORE_DB","REPLICATE_IGNORE_TABLE","REPLICATE_REWRITE_DB","REPLICATE_WILD_DO_TABLE","REPLICATE_WILD_IGNORE_TABLE","REPLICATION","RESET","RESTART","RESUME","RETURNED_SQLSTATE","RETURNING","RETURNS","REUSE","ROLE","ROLLBACK","ROLLUP","ROTATE","ROW","ROWS","ROW_FORMAT","RTREE","SAVEPOINT","SCHEDULE","SECURITY","SEQUENCE","SERVER","SESSION","SHARE","SHARED","SIGNED","SIMPLE","SLAVE","SLOW","SNAPSHOT","SOCKET","SOME","SONAME","SOUNDS","SOURCE","SQL_AFTER_GTIDS","SQL_AFTER_MTS_GAPS","SQL_BEFORE_GTIDS","SQL_BUFFER_RESULT","SQL_CACHE","SQL_NO_CACHE","SQL_THREAD","START","STARTS","STATS_AUTO_RECALC","STATS_PERSISTENT","STATS_SAMPLE_PAGES","STATUS","STOP","STORAGE","STORED","STRING","SUBCLASS_ORIGIN","SUBJECT","SUBPARTITION","SUBPARTITIONS","SUSPEND","SWAPS","SWITCHES","TABLE_NAME","TABLESPACE","TABLE_TYPE","TEMPORARY","TEMPTABLE","THAN","TRADITIONAL","TRANSACTION","TRANSACTIONAL","TRIGGERS","TRUNCATE","UNBOUNDED","UNDEFINED","UNDOFILE","UNDO_BUFFER_SIZE","UNINSTALL","UNKNOWN","UNTIL","UPGRADE","USER","USE_FRM","USER_RESOURCES","VALIDATION","VALUE","VARIABLES","VIEW","VIRTUAL","VISIBLE","WAIT","WARNINGS","WINDOW","WITHOUT","WORK","WRAPPER","X509","XA","XML","YES","EUR","USA","JIS","ISO","INTERNAL","QUARTER","MONTH","DAY","HOUR","MINUTE","WEEK","SECOND","MICROSECOND","ADMIN","APPLICATION_PASSWORD_ADMIN","AUDIT_ABORT_EXEMPT","AUDIT_ADMIN","AUTHENTICATION_POLICY_ADMIN","BACKUP_ADMIN","BINLOG_ADMIN","BINLOG_ENCRYPTION_ADMIN","CLONE_ADMIN","CONNECTION_ADMIN","ENCRYPTION_KEY_ADMIN","EXECUTE","FILE","FIREWALL_ADMIN","FIREWALL_EXEMPT","FIREWALL_USER","FLUSH_OPTIMIZER_COSTS","FLUSH_STATUS","FLUSH_TABLES","FLUSH_USER_RESOURCES","GROUP_REPLICATION_ADMIN","INNODB_REDO_LOG_ARCHIVE","INNODB_REDO_LOG_ENABLE","INVOKE","LAMBDA","NDB_STORED_USER","PASSWORDLESS_USER_ADMIN","PERSIST_RO_VARIABLES_ADMIN","PRIVILEGES","PROCESS","RELOAD","REPLICATION_APPLIER","REPLICATION_SLAVE_ADMIN","RESOURCE_GROUP_ADMIN","RESOURCE_GROUP_USER","ROLE_ADMIN","ROUTINE","S3","SERVICE_CONNECTION_ADMIN","SESSION_VARIABLES_ADMIN","SET_USER_ID","SHOW_ROUTINE","SHUTDOWN","SUPER","SYSTEM_VARIABLES_ADMIN","TABLES","TABLE_ENCRYPTION_ADMIN","VERSION_TOKEN_ADMIN","XA_RECOVER_ADMIN","ARMSCII8","ASCII","BIG5","CP1250","CP1251","CP1256","CP1257","CP850","CP852","CP866","CP932","DEC8","EUCJPMS","EUCKR","GB18030","GB2312","GBK","GEOSTD8","GREEK","HEBREW","HP8","KEYBCS2","KOI8R","KOI8U","LATIN1","LATIN2","LATIN5","LATIN7","MACCE","MACROMAN","SJIS","SWE7","TIS620","UCS2","UJIS","UTF16","UTF16LE","UTF32","UTF8","UTF8MB3","UTF8MB4","ARCHIVE","BLACKHOLE","CSV","FEDERATED","INNODB","MEMORY","MRG_MYISAM","MYISAM","NDB","NDBCLUSTER","PERFORMANCE_SCHEMA","TOKUDB","REPEATABLE","COMMITTED","UNCOMMITTED","SERIALIZABLE","GEOMETRYCOLLECTION","GEOMCOLLECTION","GEOMETRY","LINESTRING","MULTILINESTRING","MULTIPOINT","MULTIPOLYGON","POINT","POLYGON","ABS","ACOS","ADDDATE","ADDTIME","AES_DECRYPT","AES_ENCRYPT","AREA","ASBINARY","ASIN","ASTEXT","ASWKB","ASWKT","ASYMMETRIC_DECRYPT","ASYMMETRIC_DERIVE","ASYMMETRIC_ENCRYPT","ASYMMETRIC_SIGN","ASYMMETRIC_VERIFY","ATAN","ATAN2","BENCHMARK","BIN","BIT_COUNT","BIT_LENGTH","BUFFER","CATALOG_NAME","CEIL","CEILING","CENTROID","CHARACTER_LENGTH","CHARSET","CHAR_LENGTH","COERCIBILITY","COLLATION","COMPRESS","CONCAT","CONCAT_WS","CONNECTION_ID","CONV","CONVERT_TZ","COS","COT","CRC32","CREATE_ASYMMETRIC_PRIV_KEY","CREATE_ASYMMETRIC_PUB_KEY","CREATE_DH_PARAMETERS","CREATE_DIGEST","CROSSES","DATEDIFF","DATE_FORMAT","DAYNAME","DAYOFMONTH","DAYOFWEEK","DAYOFYEAR","DECODE","DEGREES","DES_DECRYPT","DES_ENCRYPT","DIMENSION","DISJOINT","ELT","ENCODE","ENCRYPT","ENDPOINT","ENGINE_ATTRIBUTE","ENVELOPE","EQUALS","EXP","EXPORT_SET","EXTERIORRING","EXTRACTVALUE","FIELD","FIND_IN_SET","FLOOR","FORMAT","FOUND_ROWS","FROM_BASE64","FROM_DAYS","FROM_UNIXTIME","GEOMCOLLFROMTEXT","GEOMCOLLFROMWKB","GEOMETRYCOLLECTIONFROMTEXT","GEOMETRYCOLLECTIONFROMWKB","GEOMETRYFROMTEXT","GEOMETRYFROMWKB","GEOMETRYN","GEOMETRYTYPE","GEOMFROMTEXT","GEOMFROMWKB","GET_FORMAT","GET_LOCK","GLENGTH","GREATEST","GTID_SUBSET","GTID_SUBTRACT","HEX","IFNULL","INET6_ATON","INET6_NTOA","INET_ATON","INET_NTOA","INSTR","INTERIORRINGN","INTERSECTS","ISCLOSED","ISEMPTY","ISNULL","ISSIMPLE","IS_FREE_LOCK","IS_IPV4","IS_IPV4_COMPAT","IS_IPV4_MAPPED","IS_IPV6","IS_USED_LOCK","LAST_INSERT_ID","LCASE","LEAST","LENGTH","LINEFROMTEXT","LINEFROMWKB","LINESTRINGFROMTEXT","LINESTRINGFROMWKB","LN","LOAD_FILE","LOCATE","LOG","LOG10","LOG2","LOWER","LPAD","LTRIM","MAKEDATE","MAKETIME","MAKE_SET","MASTER_POS_WAIT","MBRCONTAINS","MBRDISJOINT","MBREQUAL","MBRINTERSECTS","MBROVERLAPS","MBRTOUCHES","MBRWITHIN","MD5","MLINEFROMTEXT","MLINEFROMWKB","MONTHNAME","MPOINTFROMTEXT","MPOINTFROMWKB","MPOLYFROMTEXT","MPOLYFROMWKB","MULTILINESTRINGFROMTEXT","MULTILINESTRINGFROMWKB","MULTIPOINTFROMTEXT","MULTIPOINTFROMWKB","MULTIPOLYGONFROMTEXT","MULTIPOLYGONFROMWKB","NAME_CONST","NULLIF","NUMGEOMETRIES","NUMINTERIORRINGS","NUMPOINTS","OCT","OCTET_LENGTH","ORD","OVERLAPS","PERIOD_ADD","PERIOD_DIFF","PI","POINTFROMTEXT","POINTFROMWKB","POINTN","POLYFROMTEXT","POLYFROMWKB","POLYGONFROMTEXT","POLYGONFROMWKB","POW","POWER","QUOTE","RADIANS","RAND","RANDOM","RANDOM_BYTES","RELEASE_LOCK","REVERSE","ROUND","ROW_COUNT","RPAD","RTRIM","SEC_TO_TIME","SECONDARY_ENGINE_ATTRIBUTE","SESSION_USER","SHA","SHA1","SHA2","SCHEMA_NAME","SIGN","SIN","SLEEP","SOUNDEX","SQL_THREAD_WAIT_AFTER_GTIDS","SQRT","SRID","STARTPOINT","STRCMP","STR_TO_DATE","ST_AREA","ST_ASBINARY","ST_ASTEXT","ST_ASWKB","ST_ASWKT","ST_BUFFER","ST_CENTROID","ST_CONTAINS","ST_CROSSES","ST_DIFFERENCE","ST_DIMENSION","ST_DISJOINT","ST_DISTANCE","ST_ENDPOINT","ST_ENVELOPE","ST_EQUALS","ST_EXTERIORRING","ST_GEOMCOLLFROMTEXT","ST_GEOMCOLLFROMTXT","ST_GEOMCOLLFROMWKB","ST_GEOMETRYCOLLECTIONFROMTEXT","ST_GEOMETRYCOLLECTIONFROMWKB","ST_GEOMETRYFROMTEXT","ST_GEOMETRYFROMWKB","ST_GEOMETRYN","ST_GEOMETRYTYPE","ST_GEOMFROMTEXT","ST_GEOMFROMWKB","ST_INTERIORRINGN","ST_INTERSECTION","ST_INTERSECTS","ST_ISCLOSED","ST_ISEMPTY","ST_ISSIMPLE","ST_LINEFROMTEXT","ST_LINEFROMWKB","ST_LINESTRINGFROMTEXT","ST_LINESTRINGFROMWKB","ST_NUMGEOMETRIES","ST_NUMINTERIORRING","ST_NUMINTERIORRINGS","ST_NUMPOINTS","ST_OVERLAPS","ST_POINTFROMTEXT","ST_POINTFROMWKB","ST_POINTN","ST_POLYFROMTEXT","ST_POLYFROMWKB","ST_POLYGONFROMTEXT","ST_POLYGONFROMWKB","ST_SRID","ST_STARTPOINT","ST_SYMDIFFERENCE","ST_TOUCHES","ST_UNION","ST_WITHIN","ST_X","ST_Y","SUBDATE","SUBSTRING_INDEX","SUBTIME","SYSTEM_USER","TAN","TIMEDIFF","TIMESTAMPADD","TIMESTAMPDIFF","TIME_FORMAT","TIME_TO_SEC","TOUCHES","TO_BASE64","TO_DAYS","TO_SECONDS","TP_CONNECTION_ADMIN","UCASE","UNCOMPRESS","UNCOMPRESSED_LENGTH","UNHEX","UNIX_TIMESTAMP","UPDATEXML","UPPER","UUID","UUID_SHORT","VALIDATE_PASSWORD_STRENGTH","VERSION","WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS","WEEKDAY","WEEKOFYEAR","WEIGHT_STRING","WITHIN","YEARWEEK","Y_FUNCTION","X_FUNCTION","VAR_ASSIGN","PLUS_ASSIGN","MINUS_ASSIGN","MULT_ASSIGN","DIV_ASSIGN","MOD_ASSIGN","AND_ASSIGN","XOR_ASSIGN","OR_ASSIGN","STAR","DIVIDE","MODULE","PLUS","MINUS","DIV","MOD","EQUAL_SYMBOL","GREATER_SYMBOL","LESS_SYMBOL","EXCLAMATION_SYMBOL","BIT_NOT_OP","BIT_OR_OP","BIT_AND_OP","BIT_XOR_OP","DOT","LR_BRACKET","RR_BRACKET","COMMA","SEMI","AT_SIGN","ZERO_DECIMAL","ONE_DECIMAL","TWO_DECIMAL","SINGLE_QUOTE_SYMB","DOUBLE_QUOTE_SYMB","REVERSE_QUOTE_SYMB","COLON_SYMB","CHARSET_REVERSE_QOUTE_STRING","FILESIZE_LITERAL","START_NATIONAL_STRING_LITERAL","STRING_LITERAL","DECIMAL_LITERAL","HEXADECIMAL_LITERAL","REAL_LITERAL","NULL_SPEC_LITERAL","BIT_STRING","STRING_CHARSET_NAME","DOT_ID","ID","REVERSE_QUOTE_ID","HOST_IP_ADDRESS","LOCAL_ID","GLOBAL_ID","ERROR_RECONGNIGION"],Qi.ruleNames=["root","statements","statement","ddlStatement","dmlStatement","transactionStatement","replicationStatement","preparedStatement","compoundStatement","administrationStatement","utilityStatement","createDatabase","createEvent","createIndex","createLogfileGroup","createProcedure","createFunction","createRole","createServer","createTable","createTablespaceInnodb","createTablespaceNdb","createTrigger","withClause","commonTableExpressions","cteName","cteColumnName","createView","createDatabaseOption","charSet","currentUserExpression","ownerStatement","scheduleExpression","timestampValue","intervalExpr","intervalType","enableType","indexType","indexOption","procedureParameter","functionParameter","routineOption","serverOption","createDefinitions","createDefinition","columnDefinition","columnConstraint","tableConstraint","referenceDefinition","referenceAction","referenceControlType","indexColumnDefinition","tableOption","tableType","tablespaceStorage","partitionDefinitions","partitionFunctionDefinition","subpartitionFunctionDefinition","partitionDefinition","partitionDefinerAtom","partitionDefinerVector","subpartitionDefinition","partitionOption","alterDatabase","alterEvent","alterFunction","alterInstance","alterLogfileGroup","alterProcedure","alterServer","alterTable","alterTablespace","alterView","alterSpecification","alterPartitionSpecification","dropDatabase","dropEvent","dropIndex","dropLogfileGroup","dropProcedure","dropFunction","dropServer","dropTable","dropTablespace","dropTrigger","dropView","dropRole","setRole","renameTable","renameTableClause","truncateTable","callStatement","deleteStatement","doStatement","handlerStatement","insertStatement","loadDataStatement","loadXmlStatement","replaceStatement","selectStatement","updateStatement","valuesStatement","insertStatementValue","updatedElement","assignmentField","lockClause","singleDeleteStatement","multipleDeleteStatement","handlerOpenStatement","handlerReadIndexStatement","handlerReadStatement","handlerCloseStatement","singleUpdateStatement","multipleUpdateStatement","orderByClause","orderByExpression","tableSources","tableSource","tableSourceItem","indexHint","indexHintType","joinPart","joinSpec","queryExpression","queryExpressionNointo","querySpecification","querySpecificationNointo","unionParenthesis","unionStatement","lateralStatement","jsonTable","jsonColumnList","jsonColumn","jsonOnEmpty","jsonOnError","selectSpec","selectElements","selectElementAlias","selectElement","selectIntoExpression","selectFieldsInto","selectLinesInto","fromClause","groupByClause","havingClause","windowClause","groupByItem","limitClause","limitClauseAtom","startTransaction","beginWork","commitWork","rollbackWork","savepointStatement","rollbackStatement","releaseStatement","lockTables","unlockTables","setAutocommitStatement","setTransactionStatement","transactionMode","lockTableElement","lockAction","transactionOption","transactionLevel","changeMaster","changeReplicationFilter","purgeBinaryLogs","resetMaster","resetSlave","startSlave","stopSlave","startGroupReplication","stopGroupReplication","masterOption","stringMasterOption","decimalMasterOption","boolMasterOption","channelOption","replicationFilter","tablePair","threadType","untilOption","connectionOption","gtuidSet","xaStartTransaction","xaEndTransaction","xaPrepareStatement","xaCommitWork","xaRollbackWork","xaRecoverWork","prepareStatement","executeStatement","deallocatePrepare","routineBody","blockStatement","caseStatement","ifStatement","iterateStatement","leaveStatement","loopStatement","repeatStatement","returnStatement","whileStatement","cursorStatement","declareVariable","declareCondition","declareCursor","declareHandler","handlerConditionValue","procedureSqlStatement","caseAlternative","elifAlternative","alterUser","createUser","dropUser","grantStatement","roleOption","grantProxy","renameUser","revokeStatement","revokeProxy","setPasswordStatement","userSpecification","newUserAuthOptionList","newUserAuthOption","authOptionClause","authenticationRule","tlsOption","userResourceOption","userPasswordOption","userLockOption","privelegeClause","privilege","privilegeLevel","renameUserClause","analyzeTable","checkTable","checksumTable","optimizeTable","repairTable","checkTableOption","createUdfunction","installPlugin","uninstallPlugin","setStatement","showStatement","variableClause","showCommonEntity","showFilter","showGlobalInfoClause","showSchemaEntity","showProfileType","binlogStatement","cacheIndexStatement","flushStatement","killStatement","loadIndexIntoCache","resetStatement","shutdownStatement","tableIndexes","flushOption","flushTableOption","loadedTableIndexes","simpleDescribeStatement","fullDescribeStatement","helpStatement","useStatement","signalStatement","resignalStatement","signalConditionInformation","withStatement","tableStatement","diagnosticsStatement","diagnosticsConditionInformationName","describeObjectClause","fullId","tableName","tableNames","userOrRoleName","userOrRoleNameList","newRoleNameList","newRoleName","roleNameList","roleName","fullColumnName","databaseName","indexName","constraintName","triggerName","indexNameList","indexColumnName","simpleUserName","hostName","userNameList","newUserName","userName","mysqlVariable","charsetName","collationName","engineName","engineNameBase","uuidSet","xid","xuidStringId","authPlugin","uid","simpleId","dottedId","decimalLiteral","fileSizeLiteral","stringLiteral","booleanLiteral","hexadecimalLiteral","nullNotnull","constant","dataType","collectionOptions","convertedDataType","lengthOneDimension","lengthTwoDimension","lengthTwoOptionalDimension","uidList","fullColumnNameList","tables","indexColumnNames","expressions","expressionsWithDefaults","constants","simpleStrings","userVariables","defaultValue","currentTimestamp","expressionOrDefault","ifExists","ifNotExists","orReplace","waitNowaitClause","functionCall","specificFunction","caseFuncAlternative","levelsInWeightString","levelInWeightListElement","aggregateWindowedFunction","nonAggregateWindowedFunction","overClause","windowSpec","windowName","frameClause","frameUnits","frameExtent","frameBetween","frameRange","partitionClause","scalarFunctionName","passwordFunctionClause","functionArgs","functionArg","expression","predicate","expressionAtom","unaryOperator","comparisonOperator","logicalOperator","bitOperator","multOperator","addOperator","jsonOperator","charsetNameBase","transactionLevelBase","privilegesBase","intervalTypeBase","dataTypeBase","keywordsCanBeId","functionNameBase"],Qi._serializedATN=[4,1,1161,7380,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,2,265,7,265,2,266,7,266,2,267,7,267,2,268,7,268,2,269,7,269,2,270,7,270,2,271,7,271,2,272,7,272,2,273,7,273,2,274,7,274,2,275,7,275,2,276,7,276,2,277,7,277,2,278,7,278,2,279,7,279,2,280,7,280,2,281,7,281,2,282,7,282,2,283,7,283,2,284,7,284,2,285,7,285,2,286,7,286,2,287,7,287,2,288,7,288,2,289,7,289,2,290,7,290,2,291,7,291,2,292,7,292,2,293,7,293,2,294,7,294,2,295,7,295,2,296,7,296,2,297,7,297,2,298,7,298,2,299,7,299,2,300,7,300,2,301,7,301,2,302,7,302,2,303,7,303,2,304,7,304,2,305,7,305,2,306,7,306,2,307,7,307,2,308,7,308,2,309,7,309,2,310,7,310,2,311,7,311,2,312,7,312,2,313,7,313,2,314,7,314,2,315,7,315,2,316,7,316,2,317,7,317,2,318,7,318,2,319,7,319,2,320,7,320,2,321,7,321,2,322,7,322,2,323,7,323,2,324,7,324,2,325,7,325,2,326,7,326,2,327,7,327,2,328,7,328,2,329,7,329,2,330,7,330,2,331,7,331,2,332,7,332,2,333,7,333,2,334,7,334,2,335,7,335,2,336,7,336,2,337,7,337,2,338,7,338,2,339,7,339,2,340,7,340,2,341,7,341,2,342,7,342,2,343,7,343,2,344,7,344,2,345,7,345,2,346,7,346,2,347,7,347,2,348,7,348,2,349,7,349,2,350,7,350,2,351,7,351,2,352,7,352,2,353,7,353,2,354,7,354,2,355,7,355,2,356,7,356,2,357,7,357,2,358,7,358,2,359,7,359,2,360,7,360,2,361,7,361,2,362,7,362,2,363,7,363,2,364,7,364,2,365,7,365,2,366,7,366,2,367,7,367,2,368,7,368,2,369,7,369,2,370,7,370,2,371,7,371,2,372,7,372,2,373,7,373,2,374,7,374,1,0,3,0,752,8,0,1,0,1,0,1,1,1,1,3,1,758,8,1,1,1,1,1,1,1,1,1,3,1,764,8,1,1,2,1,2,1,2,1,2,1,2,1,2,1,2,3,2,773,8,2,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,3,3,813,8,3,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,3,4,828,8,4,1,5,1,5,1,5,1,5,1,5,1,5,1,5,1,5,1,5,3,5,839,8,5,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,3,6,856,8,6,1,7,1,7,1,7,3,7,861,8,7,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,873,8,8,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,3,9,900,8,9,1,10,1,10,1,10,1,10,1,10,1,10,1,10,3,10,909,8,10,1,11,1,11,1,11,3,11,914,8,11,1,11,1,11,5,11,918,8,11,10,11,12,11,921,9,11,1,12,1,12,3,12,925,8,12,1,12,1,12,3,12,929,8,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,3,12,938,8,12,1,12,3,12,941,8,12,1,12,3,12,944,8,12,1,12,1,12,3,12,948,8,12,1,12,1,12,1,12,1,13,1,13,3,13,955,8,13,1,13,3,13,958,8,13,1,13,1,13,1,13,3,13,963,8,13,1,13,1,13,1,13,1,13,5,13,969,8,13,10,13,12,13,972,9,13,1,13,1,13,3,13,976,8,13,1,13,1,13,1,13,3,13,981,8,13,1,13,5,13,984,8,13,10,13,12,13,987,9,13,1,14,1,14,1,14,1,14,1,14,1,14,1,14,1,14,1,14,3,14,998,8,14,1,14,3,14,1001,8,14,1,14,1,14,3,14,1005,8,14,1,14,3,14,1008,8,14,1,14,1,14,3,14,1012,8,14,1,14,3,14,1015,8,14,1,14,1,14,3,14,1019,8,14,1,14,3,14,1022,8,14,1,14,3,14,1025,8,14,1,14,1,14,3,14,1029,8,14,1,14,3,14,1032,8,14,1,14,1,14,3,14,1036,8,14,1,14,1,14,1,15,1,15,3,15,1042,8,15,1,15,1,15,1,15,1,15,3,15,1048,8,15,1,15,1,15,5,15,1052,8,15,10,15,12,15,1055,9,15,1,15,1,15,5,15,1059,8,15,10,15,12,15,1062,9,15,1,15,1,15,1,16,1,16,3,16,1068,8,16,1,16,3,16,1071,8,16,1,16,1,16,3,16,1075,8,16,1,16,1,16,1,16,3,16,1080,8,16,1,16,1,16,5,16,1084,8,16,10,16,12,16,1087,9,16,1,16,1,16,1,16,1,16,5,16,1093,8,16,10,16,12,16,1096,9,16,1,16,1,16,3,16,1100,8,16,1,17,1,17,1,17,3,17,1105,8,17,1,17,1,17,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,5,18,1121,8,18,10,18,12,18,1124,9,18,1,18,1,18,1,19,1,19,3,19,1130,8,19,1,19,1,19,3,19,1134,8,19,1,19,1,19,1,19,1,19,1,19,1,19,1,19,1,19,3,19,1144,8,19,1,19,1,19,3,19,1148,8,19,1,19,1,19,3,19,1152,8,19,1,19,1,19,3,19,1156,8,19,1,19,1,19,3,19,1160,8,19,1,19,5,19,1163,8,19,10,19,12,19,1166,9,19,3,19,1168,8,19,1,19,3,19,1171,8,19,1,19,3,19,1174,8,19,1,19,3,19,1177,8,19,1,19,1,19,1,19,1,19,3,19,1183,8,19,1,19,1,19,3,19,1187,8,19,1,19,1,19,1,19,1,19,3,19,1193,8,19,1,19,5,19,1196,8,19,10,19,12,19,1199,9,19,3,19,1201,8,19,1,19,3,19,1204,8,19,3,19,1206,8,19,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,1,20,3,20,1217,8,20,1,20,1,20,3,20,1221,8,20,1,20,3,20,1224,8,20,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,1,21,3,21,1238,8,21,1,21,3,21,1241,8,21,1,21,1,21,3,21,1245,8,21,1,21,3,21,1248,8,21,1,21,1,21,3,21,1252,8,21,1,21,3,21,1255,8,21,1,21,1,21,3,21,1259,8,21,1,21,3,21,1262,8,21,1,21,1,21,3,21,1266,8,21,1,21,3,21,1269,8,21,1,21,3,21,1272,8,21,1,21,1,21,3,21,1276,8,21,1,21,3,21,1279,8,21,1,21,1,21,3,21,1283,8,21,1,21,1,21,1,22,1,22,3,22,1289,8,22,1,22,1,22,3,22,1293,8,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,3,22,1305,8,22,1,22,1,22,1,23,1,23,3,23,1311,8,23,1,23,1,23,1,24,1,24,1,24,1,24,1,24,5,24,1320,8,24,10,24,12,24,1323,9,24,1,24,1,24,3,24,1327,8,24,1,24,1,24,1,24,1,24,1,24,1,24,3,24,1335,8,24,1,25,1,25,1,26,1,26,1,27,1,27,3,27,1343,8,27,1,27,1,27,1,27,3,27,1348,8,27,1,27,3,27,1351,8,27,1,27,1,27,1,27,3,27,1356,8,27,1,27,1,27,1,27,1,27,1,27,1,27,3,27,1364,8,27,1,27,1,27,1,27,3,27,1369,8,27,1,27,1,27,1,27,1,27,3,27,1375,8,27,1,27,1,27,1,27,3,27,1380,8,27,1,27,1,27,3,27,1384,8,27,3,27,1386,8,27,1,28,3,28,1389,8,28,1,28,1,28,3,28,1393,8,28,1,28,1,28,3,28,1397,8,28,1,28,3,28,1400,8,28,1,28,1,28,3,28,1404,8,28,1,28,1,28,3,28,1408,8,28,1,28,1,28,3,28,1412,8,28,1,28,1,28,1,28,1,28,3,28,1418,8,28,1,28,3,28,1421,8,28,1,29,1,29,1,29,1,29,1,29,3,29,1428,8,29,1,30,1,30,1,30,3,30,1433,8,30,1,31,1,31,1,31,1,31,3,31,1439,8,31,1,32,1,32,1,32,5,32,1444,8,32,10,32,12,32,1447,9,32,1,32,1,32,1,32,3,32,1452,8,32,1,32,1,32,1,32,1,32,5,32,1458,8,32,10,32,12,32,1461,9,32,3,32,1463,8,32,1,32,1,32,1,32,5,32,1468,8,32,10,32,12,32,1471,9,32,3,32,1473,8,32,3,32,1475,8,32,1,33,1,33,1,33,1,33,3,33,1481,8,33,1,34,1,34,1,34,1,34,3,34,1487,8,34,1,34,1,34,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,3,35,1504,8,35,1,36,1,36,1,36,1,36,1,36,3,36,1511,8,36,1,37,1,37,1,37,1,38,1,38,3,38,1518,8,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,3,38,1530,8,38,1,38,1,38,1,38,3,38,1535,8,38,1,38,3,38,1538,8,38,1,39,3,39,1541,8,39,1,39,1,39,1,39,1,40,1,40,1,40,1,41,1,41,1,41,1,41,1,41,3,41,1554,8,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,3,41,1567,8,41,1,41,1,41,1,41,3,41,1572,8,41,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,3,42,1588,8,42,1,43,1,43,1,43,1,43,5,43,1594,8,43,10,43,12,43,1597,9,43,1,43,1,43,1,44,1,44,1,44,1,44,1,44,3,44,1606,8,44,1,44,3,44,1609,8,44,1,44,3,44,1612,8,44,1,45,1,45,5,45,1616,8,45,10,45,12,45,1619,9,45,1,45,3,45,1622,8,45,1,45,3,45,1625,8,45,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,3,46,1636,8,46,1,46,3,46,1639,8,46,1,46,1,46,1,46,3,46,1644,8,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,3,46,1657,8,46,1,46,1,46,1,46,1,46,1,46,3,46,1664,8,46,1,46,1,46,1,46,1,46,1,46,3,46,1671,8,46,3,46,1673,8,46,1,46,1,46,1,46,1,46,1,46,3,46,1680,8,46,1,47,1,47,3,47,1684,8,47,3,47,1686,8,47,1,47,1,47,1,47,3,47,1691,8,47,1,47,3,47,1694,8,47,1,47,1,47,5,47,1698,8,47,10,47,12,47,1701,9,47,1,47,1,47,3,47,1705,8,47,3,47,1707,8,47,1,47,1,47,3,47,1711,8,47,1,47,3,47,1714,8,47,1,47,3,47,1717,8,47,1,47,1,47,5,47,1721,8,47,10,47,12,47,1724,9,47,1,47,1,47,3,47,1728,8,47,3,47,1730,8,47,1,47,1,47,1,47,3,47,1735,8,47,1,47,1,47,1,47,1,47,1,47,3,47,1742,8,47,3,47,1744,8,47,1,47,1,47,1,47,1,47,1,47,3,47,1751,8,47,1,48,1,48,1,48,3,48,1756,8,48,1,48,1,48,3,48,1760,8,48,1,48,3,48,1763,8,48,1,49,1,49,1,49,1,49,1,49,1,49,3,49,1771,8,49,1,49,1,49,1,49,1,49,1,49,1,49,3,49,1779,8,49,3,49,1781,8,49,1,50,1,50,1,50,1,50,1,50,1,50,1,50,1,50,3,50,1791,8,50,1,51,1,51,3,51,1795,8,51,1,51,3,51,1798,8,51,1,51,1,51,5,51,1802,8,51,10,51,12,51,1805,9,51,1,51,1,51,3,51,1809,8,51,1,51,3,51,1812,8,51,1,51,1,51,5,51,1816,8,51,10,51,12,51,1819,9,51,3,51,1821,8,51,1,52,1,52,3,52,1825,8,52,1,52,3,52,1828,8,52,1,52,1,52,3,52,1832,8,52,1,52,1,52,1,52,3,52,1837,8,52,1,52,1,52,1,52,3,52,1842,8,52,1,52,1,52,1,52,3,52,1847,8,52,1,52,1,52,3,52,1851,8,52,1,52,1,52,3,52,1855,8,52,1,52,1,52,3,52,1859,8,52,1,52,1,52,3,52,1863,8,52,1,52,1,52,3,52,1867,8,52,1,52,1,52,3,52,1871,8,52,1,52,1,52,1,52,3,52,1876,8,52,1,52,1,52,1,52,3,52,1881,8,52,1,52,1,52,1,52,3,52,1886,8,52,1,52,1,52,1,52,1,52,3,52,1892,8,52,1,52,1,52,1,52,3,52,1897,8,52,1,52,1,52,1,52,3,52,1902,8,52,1,52,1,52,1,52,3,52,1907,8,52,1,52,1,52,1,52,3,52,1912,8,52,1,52,1,52,1,52,3,52,1917,8,52,1,52,1,52,1,52,1,52,3,52,1923,8,52,1,52,1,52,1,52,3,52,1928,8,52,1,52,1,52,1,52,3,52,1933,8,52,1,52,1,52,1,52,3,52,1938,8,52,1,52,1,52,1,52,3,52,1943,8,52,1,52,1,52,1,52,3,52,1948,8,52,1,52,1,52,1,52,3,52,1953,8,52,1,52,1,52,1,52,3,52,1958,8,52,1,52,1,52,1,52,1,52,1,52,3,52,1965,8,52,1,52,1,52,1,52,3,52,1970,8,52,1,52,1,52,1,52,3,52,1975,8,52,1,52,1,52,1,52,3,52,1980,8,52,1,52,1,52,3,52,1984,8,52,1,52,1,52,1,52,3,52,1989,8,52,1,52,1,52,1,52,1,52,1,52,1,52,3,52,1997,8,52,1,52,1,52,1,52,3,52,2002,8,52,1,52,1,52,1,52,1,52,3,52,2008,8,52,1,53,1,53,1,54,1,54,1,54,1,55,1,55,1,55,1,55,1,55,3,55,2020,8,55,1,55,1,55,1,55,1,55,1,55,3,55,2027,8,55,3,55,2029,8,55,1,55,1,55,1,55,1,55,5,55,2035,8,55,10,55,12,55,2038,9,55,1,55,1,55,3,55,2042,8,55,1,56,3,56,2045,8,56,1,56,1,56,1,56,1,56,1,56,1,56,3,56,2053,8,56,1,56,1,56,1,56,1,56,3,56,2059,8,56,1,56,1,56,3,56,2063,8,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,3,56,2076,8,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,3,56,2088,8,56,3,56,2090,8,56,1,57,3,57,2093,8,57,1,57,1,57,1,57,1,57,1,57,1,57,3,57,2101,8,57,1,57,1,57,1,57,1,57,3,57,2107,8,57,1,57,1,57,1,57,1,57,3,57,2113,8,57,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,5,58,2124,8,58,10,58,12,58,2127,9,58,1,58,1,58,5,58,2131,8,58,10,58,12,58,2134,9,58,1,58,1,58,1,58,1,58,5,58,2140,8,58,10,58,12,58,2143,9,58,1,58,1,58,3,58,2147,8,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,5,58,2156,8,58,10,58,12,58,2159,9,58,1,58,1,58,1,58,1,58,5,58,2165,8,58,10,58,12,58,2168,9,58,1,58,1,58,3,58,2172,8,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,5,58,2182,8,58,10,58,12,58,2185,9,58,1,58,1,58,5,58,2189,8,58,10,58,12,58,2192,9,58,1,58,1,58,1,58,1,58,5,58,2198,8,58,10,58,12,58,2201,9,58,1,58,1,58,3,58,2205,8,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,5,58,2215,8,58,10,58,12,58,2218,9,58,1,58,1,58,5,58,2222,8,58,10,58,12,58,2225,9,58,1,58,1,58,1,58,1,58,5,58,2231,8,58,10,58,12,58,2234,9,58,1,58,1,58,3,58,2238,8,58,1,58,1,58,1,58,5,58,2243,8,58,10,58,12,58,2246,9,58,1,58,1,58,1,58,1,58,5,58,2252,8,58,10,58,12,58,2255,9,58,1,58,1,58,3,58,2259,8,58,3,58,2261,8,58,1,59,1,59,1,59,3,59,2266,8,59,1,60,1,60,1,60,1,60,4,60,2272,8,60,11,60,12,60,2273,1,60,1,60,1,61,1,61,1,61,5,61,2281,8,61,10,61,12,61,2284,9,61,1,62,3,62,2287,8,62,1,62,3,62,2290,8,62,1,62,1,62,3,62,2294,8,62,1,62,1,62,1,62,3,62,2299,8,62,1,62,1,62,1,62,1,62,3,62,2305,8,62,1,62,1,62,1,62,1,62,3,62,2311,8,62,1,62,1,62,1,62,3,62,2316,8,62,1,62,1,62,1,62,3,62,2321,8,62,1,62,1,62,1,62,3,62,2326,8,62,1,62,1,62,1,62,3,62,2331,8,62,1,62,3,62,2334,8,62,1,63,1,63,1,63,1,63,4,63,2340,8,63,11,63,12,63,2341,1,63,1,63,1,63,1,63,1,63,1,63,1,63,1,63,3,63,2352,8,63,1,64,1,64,3,64,2356,8,64,1,64,1,64,1,64,1,64,1,64,3,64,2363,8,64,1,64,1,64,1,64,3,64,2368,8,64,1,64,3,64,2371,8,64,1,64,1,64,1,64,3,64,2376,8,64,1,64,3,64,2379,8,64,1,64,1,64,3,64,2383,8,64,1,64,1,64,3,64,2387,8,64,1,65,1,65,1,65,1,65,5,65,2393,8,65,10,65,12,65,2396,9,65,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,1,67,3,67,2414,8,67,1,67,3,67,2417,8,67,1,67,3,67,2420,8,67,1,67,1,67,3,67,2424,8,67,1,67,1,67,1,68,1,68,1,68,1,68,5,68,2432,8,68,10,68,12,68,2435,9,68,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,5,69,2445,8,69,10,69,12,69,2448,9,69,1,69,1,69,1,70,1,70,3,70,2454,8,70,1,70,3,70,2457,8,70,1,70,1,70,1,70,3,70,2462,8,70,1,70,1,70,1,70,5,70,2467,8,70,10,70,12,70,2470,9,70,3,70,2472,8,70,1,70,3,70,2475,8,70,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,3,71,2486,8,71,1,71,3,71,2489,8,71,1,71,1,71,3,71,2493,8,71,1,71,1,71,1,72,1,72,1,72,1,72,3,72,2501,8,72,1,72,3,72,2504,8,72,1,72,1,72,1,72,3,72,2509,8,72,1,72,1,72,1,72,1,72,1,72,1,72,3,72,2517,8,72,1,72,1,72,1,72,1,72,3,72,2523,8,72,1,72,1,72,3,72,2527,8,72,1,73,1,73,3,73,2531,8,73,1,73,5,73,2534,8,73,10,73,12,73,2537,9,73,1,73,1,73,3,73,2541,8,73,1,73,1,73,1,73,1,73,1,73,3,73,2548,8,73,1,73,1,73,3,73,2552,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,5,73,2561,8,73,10,73,12,73,2564,9,73,1,73,1,73,1,73,1,73,1,73,3,73,2571,8,73,1,73,3,73,2574,8,73,1,73,1,73,5,73,2578,8,73,10,73,12,73,2581,9,73,1,73,1,73,1,73,3,73,2586,8,73,3,73,2588,8,73,1,73,1,73,1,73,3,73,2593,8,73,1,73,3,73,2596,8,73,1,73,1,73,5,73,2600,8,73,10,73,12,73,2603,9,73,1,73,1,73,1,73,3,73,2608,8,73,3,73,2610,8,73,1,73,1,73,3,73,2614,8,73,1,73,3,73,2617,8,73,1,73,3,73,2620,8,73,1,73,1,73,5,73,2624,8,73,10,73,12,73,2627,9,73,1,73,1,73,1,73,3,73,2632,8,73,1,73,3,73,2635,8,73,1,73,1,73,5,73,2639,8,73,10,73,12,73,2642,9,73,1,73,1,73,1,73,3,73,2647,8,73,3,73,2649,8,73,1,73,1,73,1,73,3,73,2654,8,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2662,8,73,3,73,2664,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2673,8,73,1,73,3,73,2676,8,73,1,73,3,73,2679,8,73,1,73,1,73,1,73,3,73,2684,8,73,3,73,2686,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2695,8,73,1,73,3,73,2698,8,73,1,73,3,73,2701,8,73,1,73,1,73,1,73,3,73,2706,8,73,3,73,2708,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2717,8,73,1,73,1,73,1,73,3,73,2722,8,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2730,8,73,1,73,1,73,3,73,2734,8,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2742,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2752,8,73,1,73,1,73,1,73,3,73,2757,8,73,1,73,1,73,1,73,1,73,1,73,3,73,2764,8,73,1,73,1,73,3,73,2768,8,73,1,73,1,73,3,73,2772,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2791,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2801,8,73,1,73,1,73,1,73,1,73,3,73,2807,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2824,8,73,1,73,1,73,3,73,2828,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2838,8,73,1,73,1,73,1,73,3,73,2843,8,73,1,73,3,73,2846,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2855,8,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,73,3,73,2866,8,73,1,73,1,73,1,73,1,73,5,73,2872,8,73,10,73,12,73,2875,9,73,1,73,1,73,1,73,3,73,2880,8,73,1,74,1,74,1,74,1,74,1,74,1,74,5,74,2888,8,74,10,74,12,74,2891,9,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,3,74,2902,8,74,1,74,1,74,1,74,1,74,1,74,3,74,2909,8,74,1,74,1,74,1,74,1,74,1,74,3,74,2916,8,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,5,74,2929,8,74,10,74,12,74,2932,9,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,3,74,2944,8,74,1,74,1,74,1,74,1,74,3,74,2950,8,74,1,74,1,74,1,74,1,74,3,74,2956,8,74,1,74,1,74,1,74,1,74,3,74,2962,8,74,1,74,1,74,1,74,1,74,3,74,2968,8,74,1,74,1,74,1,74,1,74,3,74,2974,8,74,1,74,1,74,1,74,1,74,3,74,2980,8,74,1,75,1,75,1,75,3,75,2985,8,75,1,75,1,75,1,76,1,76,1,76,3,76,2992,8,76,1,76,1,76,1,77,1,77,1,77,3,77,2999,8,77,1,77,1,77,1,77,1,77,1,77,3,77,3006,8,77,1,77,1,77,1,77,3,77,3011,8,77,1,77,5,77,3014,8,77,10,77,12,77,3017,9,77,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,78,1,79,1,79,1,79,3,79,3030,8,79,1,79,1,79,1,80,1,80,1,80,3,80,3037,8,80,1,80,1,80,1,81,1,81,1,81,3,81,3044,8,81,1,81,1,81,1,82,1,82,3,82,3050,8,82,1,82,1,82,3,82,3054,8,82,1,82,1,82,3,82,3058,8,82,1,83,1,83,1,83,1,83,1,83,3,83,3065,8,83,1,83,3,83,3068,8,83,1,84,1,84,1,84,3,84,3073,8,84,1,84,1,84,1,85,1,85,1,85,3,85,3080,8,85,1,85,1,85,1,85,5,85,3085,8,85,10,85,12,85,3088,9,85,1,85,3,85,3091,8,85,1,86,1,86,1,86,3,86,3096,8,86,1,86,1,86,1,87,1,87,1,87,1,87,1,87,1,87,3,87,3106,8,87,1,87,1,87,1,87,1,87,1,87,3,87,3113,8,87,1,88,1,88,1,88,1,88,1,88,5,88,3120,8,88,10,88,12,88,3123,9,88,1,89,1,89,1,89,1,89,1,90,1,90,3,90,3131,8,90,1,90,1,90,1,91,1,91,1,91,1,91,1,91,3,91,3140,8,91,1,91,3,91,3143,8,91,1,92,1,92,3,92,3147,8,92,1,93,1,93,1,93,1,94,1,94,1,94,1,94,3,94,3156,8,94,1,95,1,95,3,95,3160,8,95,1,95,3,95,3163,8,95,1,95,3,95,3166,8,95,1,95,1,95,1,95,1,95,3,95,3172,8,95,1,95,3,95,3175,8,95,1,95,1,95,3,95,3179,8,95,1,95,3,95,3182,8,95,1,95,1,95,3,95,3186,8,95,1,95,3,95,3189,8,95,1,95,1,95,1,95,1,95,5,95,3195,8,95,10,95,12,95,3198,9,95,3,95,3200,8,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,5,95,3209,8,95,10,95,12,95,3212,9,95,3,95,3214,8,95,1,96,1,96,1,96,3,96,3219,8,96,1,96,3,96,3222,8,96,1,96,1,96,1,96,3,96,3227,8,96,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,96,3,96,3237,8,96,1,96,1,96,1,96,3,96,3242,8,96,1,96,1,96,4,96,3246,8,96,11,96,12,96,3247,3,96,3250,8,96,1,96,1,96,4,96,3254,8,96,11,96,12,96,3255,3,96,3258,8,96,1,96,1,96,1,96,1,96,3,96,3264,8,96,1,96,1,96,1,96,1,96,5,96,3270,8,96,10,96,12,96,3273,9,96,1,96,1,96,3,96,3277,8,96,1,96,1,96,1,96,1,96,5,96,3283,8,96,10,96,12,96,3286,9,96,3,96,3288,8,96,1,97,1,97,1,97,3,97,3293,8,97,1,97,3,97,3296,8,97,1,97,1,97,1,97,3,97,3301,8,97,1,97,1,97,1,97,1,97,1,97,1,97,3,97,3309,8,97,1,97,1,97,1,97,1,97,1,97,1,97,3,97,3317,8,97,1,97,1,97,1,97,1,97,3,97,3323,8,97,1,97,1,97,1,97,1,97,5,97,3329,8,97,10,97,12,97,3332,9,97,1,97,1,97,3,97,3336,8,97,1,97,1,97,1,97,1,97,5,97,3342,8,97,10,97,12,97,3345,9,97,3,97,3347,8,97,1,98,1,98,3,98,3351,8,98,1,98,3,98,3354,8,98,1,98,1,98,1,98,1,98,1,98,1,98,3,98,3362,8,98,1,98,1,98,1,98,1,98,3,98,3368,8,98,1,98,1,98,1,98,1,98,1,98,5,98,3375,8,98,10,98,12,98,3378,9,98,3,98,3380,8,98,1,99,1,99,3,99,3384,8,99,1,99,1,99,3,99,3388,8,99,1,99,1,99,3,99,3392,8,99,1,99,4,99,3395,8,99,11,99,12,99,3396,1,99,1,99,3,99,3401,8,99,1,99,1,99,3,99,3405,8,99,3,99,3407,8,99,1,99,3,99,3410,8,99,1,99,3,99,3413,8,99,1,99,3,99,3416,8,99,1,99,1,99,4,99,3420,8,99,11,99,12,99,3421,1,99,1,99,3,99,3426,8,99,1,99,3,99,3429,8,99,1,99,3,99,3432,8,99,1,99,3,99,3435,8,99,1,99,3,99,3438,8,99,1,99,1,99,1,99,4,99,3443,8,99,11,99,12,99,3444,3,99,3447,8,99,1,100,1,100,3,100,3451,8,100,1,101,1,101,1,101,3,101,3456,8,101,1,101,1,101,1,101,1,101,3,101,3462,8,101,1,101,5,101,3465,8,101,10,101,12,101,3468,9,101,1,102,1,102,1,102,1,102,3,102,3474,8,102,1,102,1,102,1,102,1,102,3,102,3480,8,102,1,102,5,102,3483,8,102,10,102,12,102,3486,9,102,3,102,3488,8,102,1,103,1,103,1,103,1,103,3,103,3494,8,103,1,104,1,104,3,104,3498,8,104,1,105,1,105,1,105,1,105,1,105,1,105,3,105,3506,8,105,1,106,1,106,3,106,3510,8,106,1,106,3,106,3513,8,106,1,106,3,106,3516,8,106,1,106,1,106,1,106,3,106,3521,8,106,1,106,3,106,3524,8,106,1,106,1,106,1,106,1,106,1,106,3,106,3531,8,106,1,106,1,106,3,106,3535,8,106,1,106,3,106,3538,8,106,1,106,1,106,3,106,3542,8,106,1,107,1,107,3,107,3546,8,107,1,107,3,107,3549,8,107,1,107,3,107,3552,8,107,1,107,1,107,1,107,3,107,3557,8,107,1,107,1,107,1,107,1,107,3,107,3563,8,107,5,107,3565,8,107,10,107,12,107,3568,9,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,3577,8,107,1,107,1,107,1,107,1,107,3,107,3583,8,107,5,107,3585,8,107,10,107,12,107,3588,9,107,1,107,1,107,1,107,3,107,3593,8,107,1,107,1,107,3,107,3597,8,107,1,108,1,108,1,108,1,108,3,108,3603,8,108,1,108,3,108,3606,8,108,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,3,109,3618,8,109,1,109,1,109,3,109,3622,8,109,1,109,1,109,3,109,3626,8,109,1,110,1,110,1,110,1,110,1,110,1,110,3,110,3634,8,110,1,110,1,110,3,110,3638,8,110,1,111,1,111,1,111,1,111,1,112,1,112,3,112,3646,8,112,1,112,3,112,3649,8,112,1,112,1,112,3,112,3653,8,112,1,112,3,112,3656,8,112,1,112,1,112,1,112,1,112,5,112,3662,8,112,10,112,12,112,3665,9,112,1,112,1,112,3,112,3669,8,112,1,112,3,112,3672,8,112,1,112,3,112,3675,8,112,1,113,1,113,3,113,3679,8,113,1,113,3,113,3682,8,113,1,113,1,113,1,113,1,113,1,113,5,113,3689,8,113,10,113,12,113,3692,9,113,1,113,1,113,3,113,3696,8,113,1,114,1,114,1,114,1,114,1,114,5,114,3703,8,114,10,114,12,114,3706,9,114,1,115,1,115,3,115,3710,8,115,1,116,1,116,1,116,5,116,3715,8,116,10,116,12,116,3718,9,116,1,117,1,117,5,117,3722,8,117,10,117,12,117,3725,9,117,1,117,1,117,1,117,5,117,3730,8,117,10,117,12,117,3733,9,117,1,117,1,117,1,117,3,117,3738,8,117,1,118,1,118,1,118,1,118,1,118,1,118,3,118,3746,8,118,1,118,3,118,3749,8,118,1,118,3,118,3752,8,118,1,118,1,118,1,118,5,118,3757,8,118,10,118,12,118,3760,9,118,3,118,3762,8,118,1,118,1,118,1,118,1,118,1,118,3,118,3769,8,118,1,118,1,118,1,118,1,118,1,118,1,118,3,118,3777,8,118,1,119,1,119,1,119,1,119,3,119,3783,8,119,1,119,1,119,1,119,1,119,1,120,1,120,1,120,1,120,1,120,3,120,3794,8,120,1,121,3,121,3797,8,121,1,121,1,121,3,121,3801,8,121,1,121,1,121,5,121,3805,8,121,10,121,12,121,3808,9,121,1,121,1,121,1,121,1,121,5,121,3814,8,121,10,121,12,121,3817,9,121,1,121,1,121,3,121,3821,8,121,1,121,1,121,3,121,3825,8,121,1,121,1,121,5,121,3829,8,121,10,121,12,121,3832,9,121,1,121,1,121,1,121,3,121,3837,8,121,3,121,3839,8,121,1,121,1,121,3,121,3843,8,121,1,122,1,122,1,122,1,122,1,122,1,122,1,122,3,122,3852,8,122,1,123,1,123,1,123,1,123,1,123,1,123,1,123,1,123,3,123,3862,8,123,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,124,3,124,3872,8,124,1,125,1,125,5,125,3876,8,125,10,125,12,125,3879,9,125,1,125,1,125,3,125,3883,8,125,1,125,1,125,3,125,3887,8,125,1,125,3,125,3890,8,125,1,125,3,125,3893,8,125,1,125,3,125,3896,8,125,1,125,3,125,3899,8,125,1,125,1,125,5,125,3903,8,125,10,125,12,125,3906,9,125,1,125,1,125,1,125,3,125,3911,8,125,1,125,3,125,3914,8,125,1,125,3,125,3917,8,125,1,125,3,125,3920,8,125,1,125,3,125,3923,8,125,1,125,3,125,3926,8,125,3,125,3928,8,125,1,126,1,126,5,126,3932,8,126,10,126,12,126,3935,9,126,1,126,1,126,1,126,3,126,3940,8,126,1,126,3,126,3943,8,126,1,126,3,126,3946,8,126,1,126,3,126,3949,8,126,1,126,3,126,3952,8,126,1,126,3,126,3955,8,126,1,127,1,127,3,127,3959,8,127,1,127,1,127,1,128,1,128,3,128,3965,8,128,1,128,1,128,3,128,3969,8,128,1,129,1,129,1,129,1,129,1,129,1,129,3,129,3977,8,129,1,129,1,129,3,129,3981,8,129,1,129,3,129,3984,8,129,3,129,3986,8,129,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,3,130,3999,8,130,1,130,3,130,4002,8,130,1,131,1,131,1,131,5,131,4007,8,131,10,131,12,131,4010,9,131,1,132,1,132,1,132,1,132,1,132,1,132,1,132,3,132,4019,8,132,1,132,3,132,4022,8,132,1,132,1,132,1,132,3,132,4027,8,132,3,132,4029,8,132,1,132,1,132,3,132,4033,8,132,1,132,1,132,1,132,1,132,1,132,1,132,3,132,4041,8,132,1,133,1,133,1,133,1,133,3,133,4047,8,133,1,133,1,133,1,133,1,134,1,134,1,134,1,134,3,134,4056,8,134,1,134,1,134,1,134,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,3,135,4069,8,135,1,136,1,136,3,136,4073,8,136,1,136,1,136,5,136,4077,8,136,10,136,12,136,4080,9,136,1,137,3,137,4083,8,137,1,137,1,137,1,138,1,138,1,138,1,138,1,138,1,138,3,138,4093,8,138,1,138,1,138,3,138,4097,8,138,1,138,1,138,3,138,4101,8,138,1,138,1,138,3,138,4105,8,138,3,138,4107,8,138,1,139,1,139,1,139,1,139,5,139,4113,8,139,10,139,12,139,4116,9,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,3,139,4127,8,139,1,139,1,139,4,139,4131,8,139,11,139,12,139,4132,3,139,4135,8,139,1,139,1,139,4,139,4139,8,139,11,139,12,139,4140,3,139,4143,8,139,3,139,4145,8,139,1,140,1,140,1,140,1,140,3,140,4151,8,140,1,140,1,140,1,140,1,140,1,140,1,140,3,140,4159,8,140,1,141,1,141,1,141,1,141,1,141,1,141,3,141,4167,8,141,1,142,1,142,3,142,4171,8,142,1,142,1,142,3,142,4175,8,142,1,143,1,143,1,143,1,143,1,143,5,143,4182,8,143,10,143,12,143,4185,9,143,1,143,1,143,3,143,4189,8,143,1,144,1,144,1,144,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,145,1,145,5,145,4207,8,145,10,145,12,145,4210,9,145,1,146,1,146,3,146,4214,8,146,1,147,1,147,1,147,1,147,3,147,4220,8,147,1,147,1,147,1,147,1,147,1,147,3,147,4227,8,147,1,148,1,148,1,148,3,148,4232,8,148,1,149,1,149,1,149,1,149,1,149,5,149,4239,8,149,10,149,12,149,4242,9,149,3,149,4244,8,149,1,150,1,150,3,150,4248,8,150,1,151,1,151,3,151,4252,8,151,1,151,1,151,3,151,4256,8,151,1,151,3,151,4259,8,151,1,151,3,151,4262,8,151,1,151,3,151,4265,8,151,1,152,1,152,3,152,4269,8,152,1,152,1,152,3,152,4273,8,152,1,152,3,152,4276,8,152,1,152,3,152,4279,8,152,1,152,3,152,4282,8,152,1,153,1,153,1,153,1,154,1,154,3,154,4289,8,154,1,154,1,154,3,154,4293,8,154,1,154,1,154,1,155,1,155,1,155,1,155,1,156,1,156,1,156,1,156,1,156,5,156,4306,8,156,10,156,12,156,4309,9,156,1,156,3,156,4312,8,156,1,157,1,157,1,157,1,158,1,158,1,158,1,158,1,158,1,159,1,159,3,159,4324,8,159,1,159,1,159,1,159,1,159,5,159,4330,8,159,10,159,12,159,4333,9,159,1,160,1,160,1,160,1,160,1,160,1,160,1,160,3,160,4342,8,160,1,161,1,161,3,161,4346,8,161,1,161,3,161,4349,8,161,1,161,1,161,1,162,1,162,3,162,4355,8,162,1,162,3,162,4358,8,162,1,162,3,162,4361,8,162,1,163,1,163,1,163,1,163,1,163,1,163,1,163,3,163,4370,8,163,1,164,1,164,1,164,1,164,1,164,1,164,1,164,3,164,4379,8,164,1,165,1,165,1,165,1,165,1,165,1,165,5,165,4387,8,165,10,165,12,165,4390,9,165,1,165,3,165,4393,8,165,1,166,1,166,1,166,1,166,1,166,1,166,5,166,4401,8,166,10,166,12,166,4404,9,166,1,167,1,167,1,167,1,167,1,167,1,167,1,167,3,167,4413,8,167,1,168,1,168,1,168,1,169,1,169,1,169,3,169,4421,8,169,1,169,3,169,4424,8,169,1,170,1,170,1,170,1,170,1,170,5,170,4431,8,170,10,170,12,170,4434,9,170,3,170,4436,8,170,1,170,1,170,3,170,4440,8,170,1,170,5,170,4443,8,170,10,170,12,170,4446,9,170,1,170,3,170,4449,8,170,1,171,1,171,1,171,1,171,1,171,5,171,4456,8,171,10,171,12,171,4459,9,171,3,171,4461,8,171,1,172,1,172,1,172,1,173,1,173,1,173,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,5,174,4490,8,174,10,174,12,174,4493,9,174,3,174,4495,8,174,1,174,3,174,4498,8,174,1,175,1,175,1,176,1,176,1,177,1,177,1,178,1,178,1,178,1,178,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,1,179,5,179,4552,8,179,10,179,12,179,4555,9,179,1,179,1,179,3,179,4559,8,179,1,180,1,180,1,180,1,180,1,180,1,180,1,181,1,181,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,3,182,4587,8,182,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,3,183,4601,8,183,1,184,1,184,1,184,5,184,4606,8,184,10,184,12,184,4609,9,184,1,184,3,184,4612,8,184,1,185,1,185,1,185,1,185,3,185,4618,8,185,1,186,1,186,1,186,1,186,1,186,1,186,3,186,4626,8,186,3,186,4628,8,186,1,187,1,187,1,187,1,187,1,188,1,188,1,188,1,188,1,188,3,188,4639,8,188,1,189,1,189,1,189,1,189,1,190,1,190,1,190,1,190,3,190,4649,8,190,1,191,1,191,1,191,1,191,1,191,3,191,4656,8,191,1,192,1,192,1,192,1,192,3,192,4662,8,192,1,193,1,193,1,193,1,193,1,194,1,194,3,194,4670,8,194,1,195,1,195,1,195,3,195,4675,8,195,1,195,1,195,1,195,1,195,5,195,4681,8,195,10,195,12,195,4684,9,195,1,195,1,195,1,195,5,195,4689,8,195,10,195,12,195,4692,9,195,1,195,1,195,1,195,5,195,4697,8,195,10,195,12,195,4700,9,195,1,195,1,195,1,195,5,195,4705,8,195,10,195,12,195,4708,9,195,1,195,5,195,4711,8,195,10,195,12,195,4714,9,195,1,195,1,195,3,195,4718,8,195,1,196,1,196,1,196,3,196,4723,8,196,1,196,4,196,4726,8,196,11,196,12,196,4727,1,196,1,196,4,196,4732,8,196,11,196,12,196,4733,3,196,4736,8,196,1,196,1,196,1,196,1,197,1,197,1,197,1,197,4,197,4745,8,197,11,197,12,197,4746,1,197,5,197,4750,8,197,10,197,12,197,4753,9,197,1,197,1,197,4,197,4757,8,197,11,197,12,197,4758,3,197,4761,8,197,1,197,1,197,1,197,1,198,1,198,1,198,1,199,1,199,1,199,1,200,1,200,1,200,3,200,4775,8,200,1,200,1,200,4,200,4779,8,200,11,200,12,200,4780,1,200,1,200,1,200,3,200,4786,8,200,1,201,1,201,1,201,3,201,4791,8,201,1,201,1,201,4,201,4795,8,201,11,201,12,201,4796,1,201,1,201,1,201,1,201,1,201,3,201,4804,8,201,1,202,1,202,1,202,1,203,1,203,1,203,3,203,4812,8,203,1,203,1,203,1,203,1,203,4,203,4818,8,203,11,203,12,203,4819,1,203,1,203,1,203,3,203,4825,8,203,1,204,1,204,1,204,1,204,3,204,4831,8,204,1,204,3,204,4834,8,204,1,204,1,204,1,204,1,204,1,204,1,204,3,204,4842,8,204,1,205,1,205,1,205,1,205,1,205,3,205,4849,8,205,1,206,1,206,1,206,1,206,1,206,1,206,1,206,3,206,4858,8,206,1,206,3,206,4861,8,206,1,207,1,207,1,207,1,207,1,207,1,207,1,208,1,208,1,208,1,208,1,208,1,208,1,208,5,208,4876,8,208,10,208,12,208,4879,9,208,1,208,1,208,1,209,1,209,1,209,3,209,4886,8,209,1,209,1,209,1,209,1,209,1,209,1,209,3,209,4894,8,209,1,210,1,210,3,210,4898,8,210,1,210,1,210,1,211,1,211,1,211,3,211,4905,8,211,1,211,1,211,4,211,4909,8,211,11,211,12,211,4910,1,212,1,212,1,212,1,212,4,212,4917,8,212,11,212,12,212,4918,1,213,1,213,1,213,1,213,1,213,5,213,4926,8,213,10,213,12,213,4929,9,213,1,213,1,213,1,213,3,213,4934,8,213,1,213,1,213,1,213,1,213,1,213,3,213,4941,8,213,1,213,5,213,4944,8,213,10,213,12,213,4947,9,213,3,213,4949,8,213,3,213,4951,8,213,1,213,1,213,4,213,4955,8,213,11,213,12,213,4956,3,213,4959,8,213,1,213,1,213,5,213,4963,8,213,10,213,12,213,4966,9,213,1,213,1,213,1,213,1,213,3,213,4972,8,213,1,213,1,213,1,213,3,213,4977,8,213,1,213,1,213,1,213,1,213,1,213,3,213,4984,8,213,1,214,1,214,1,214,1,214,1,214,1,214,3,214,4992,8,214,1,214,1,214,1,214,1,214,3,214,4998,8,214,1,214,1,214,1,214,1,214,3,214,5004,8,214,1,214,5,214,5007,8,214,10,214,12,214,5010,9,214,3,214,5012,8,214,3,214,5014,8,214,1,214,1,214,4,214,5018,8,214,11,214,12,214,5019,3,214,5022,8,214,1,214,1,214,5,214,5026,8,214,10,214,12,214,5029,9,214,1,214,1,214,1,214,1,214,3,214,5035,8,214,3,214,5037,8,214,1,215,1,215,1,215,3,215,5042,8,215,1,215,1,215,1,216,1,216,1,216,1,216,5,216,5050,8,216,10,216,12,216,5053,9,216,1,216,1,216,3,216,5057,8,216,1,216,1,216,1,216,1,216,1,216,1,216,1,216,3,216,5066,8,216,1,216,5,216,5069,8,216,10,216,12,216,5072,9,216,3,216,5074,8,216,3,216,5076,8,216,1,216,1,216,1,216,1,216,5,216,5082,8,216,10,216,12,216,5085,9,216,3,216,5087,8,216,1,216,1,216,1,216,1,216,1,216,1,216,3,216,5095,8,216,1,216,1,216,1,216,1,216,1,216,1,216,1,216,3,216,5104,8,216,3,216,5106,8,216,1,217,1,217,1,217,1,217,1,217,3,217,5113,8,217,1,217,3,217,5116,8,217,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,5,218,5126,8,218,10,218,12,218,5129,9,218,1,218,1,218,1,218,3,218,5134,8,218,1,219,1,219,1,219,1,219,1,219,5,219,5141,8,219,10,219,12,219,5144,9,219,1,220,1,220,1,220,1,220,5,220,5150,8,220,10,220,12,220,5153,9,220,1,220,1,220,3,220,5157,8,220,1,220,1,220,1,220,1,220,1,220,1,220,1,220,3,220,5166,8,220,1,220,1,220,1,220,1,220,1,220,1,220,1,220,1,220,1,220,5,220,5177,8,220,10,220,12,220,5180,9,220,3,220,5182,8,220,1,221,1,221,1,221,1,221,1,221,1,221,1,221,1,221,5,221,5192,8,221,10,221,12,221,5195,9,221,1,222,1,222,1,222,1,222,3,222,5201,8,222,1,222,1,222,1,222,3,222,5206,8,222,1,223,1,223,1,223,1,224,1,224,1,224,5,224,5214,8,224,10,224,12,224,5217,9,224,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,225,3,225,5244,8,225,1,226,1,226,3,226,5248,8,226,1,226,1,226,1,226,3,226,5253,8,226,1,227,1,227,1,227,1,227,1,227,3,227,5260,8,227,1,227,3,227,5263,8,227,1,227,1,227,1,227,1,227,3,227,5269,8,227,1,228,1,228,1,228,1,228,1,228,1,228,1,228,1,228,3,228,5279,8,228,1,229,1,229,1,229,1,229,1,229,1,229,1,229,1,229,3,229,5289,8,229,1,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,3,230,5299,8,230,1,230,1,230,1,230,1,230,3,230,5305,8,230,1,230,1,230,1,230,1,230,1,230,1,230,1,230,3,230,5314,8,230,1,230,1,230,1,230,1,230,3,230,5320,8,230,1,230,1,230,1,230,1,230,1,230,3,230,5327,8,230,3,230,5329,8,230,1,231,1,231,1,231,1,232,1,232,1,232,1,232,1,232,3,232,5339,8,232,1,233,1,233,3,233,5343,8,233,1,233,1,233,3,233,5347,8,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,3,233,5357,8,233,1,233,1,233,1,233,3,233,5362,8,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,3,233,5434,8,233,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,1,234,3,234,5452,8,234,1,235,1,235,1,235,1,235,1,236,1,236,3,236,5460,8,236,1,236,1,236,1,236,1,236,1,236,1,236,1,236,1,236,5,236,5470,8,236,10,236,12,236,5473,9,236,1,236,1,236,1,236,1,236,3,236,5479,8,236,3,236,5481,8,236,1,236,1,236,1,236,1,236,1,236,1,236,5,236,5489,8,236,10,236,12,236,5492,9,236,3,236,5494,8,236,1,237,1,237,1,237,1,237,5,237,5500,8,237,10,237,12,237,5503,9,237,1,238,1,238,1,238,1,238,3,238,5509,8,238,1,239,1,239,3,239,5513,8,239,1,239,1,239,1,239,1,240,1,240,3,240,5520,8,240,1,240,1,240,1,240,3,240,5525,8,240,1,240,3,240,5528,8,240,1,240,3,240,5531,8,240,1,241,1,241,1,241,1,241,1,241,1,241,1,241,3,241,5540,8,241,1,242,1,242,3,242,5544,8,242,1,242,1,242,3,242,5548,8,242,1,242,1,242,1,242,1,242,1,242,1,242,1,243,1,243,1,243,1,243,1,243,1,243,1,244,1,244,1,244,1,244,1,245,1,245,1,245,1,245,1,245,3,245,5571,8,245,1,245,1,245,1,245,1,245,1,245,3,245,5578,8,245,5,245,5580,8,245,10,245,12,245,5583,9,245,1,245,1,245,1,245,1,245,3,245,5589,8,245,1,245,1,245,1,245,1,245,1,245,3,245,5596,8,245,1,245,3,245,5599,8,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,1,245,5,245,5613,8,245,10,245,12,245,5616,9,245,3,245,5618,8,245,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,5628,8,246,1,246,1,246,3,246,5632,8,246,1,246,1,246,1,246,1,246,3,246,5638,8,246,1,246,3,246,5641,8,246,1,246,1,246,1,246,3,246,5646,8,246,1,246,1,246,3,246,5650,8,246,1,246,1,246,1,246,1,246,1,246,3,246,5657,8,246,1,246,3,246,5660,8,246,1,246,1,246,1,246,1,246,3,246,5666,8,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,5698,8,246,1,246,3,246,5701,8,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,5713,8,246,1,246,3,246,5716,8,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,5726,8,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,5734,8,246,1,246,1,246,3,246,5738,8,246,1,246,1,246,1,246,1,246,1,246,3,246,5745,8,246,1,246,3,246,5748,8,246,1,246,1,246,1,246,1,246,1,246,5,246,5755,8,246,10,246,12,246,5758,9,246,1,246,1,246,1,246,3,246,5763,8,246,1,246,1,246,1,246,1,246,3,246,5769,8,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,3,246,5779,8,246,3,246,5781,8,246,1,247,1,247,1,247,1,247,3,247,5787,8,247,1,247,3,247,5790,8,247,1,247,3,247,5793,8,247,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,248,3,248,5805,8,248,1,248,3,248,5808,8,248,1,249,1,249,1,249,1,249,3,249,5814,8,249,1,250,3,250,5817,8,250,1,250,1,250,1,250,1,250,1,250,1,250,3,250,5825,8,250,1,250,1,250,1,250,1,250,1,250,1,250,3,250,5833,8,250,1,251,1,251,1,251,1,251,3,251,5839,8,251,1,251,1,251,3,251,5843,8,251,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,3,252,5857,8,252,1,253,1,253,1,253,1,254,1,254,1,254,1,254,1,254,5,254,5867,8,254,10,254,12,254,5870,9,254,1,254,1,254,1,254,1,254,3,254,5876,8,254,1,254,3,254,5879,8,254,1,254,1,254,1,254,1,255,1,255,3,255,5886,8,255,1,255,1,255,1,255,5,255,5891,8,255,10,255,12,255,5894,9,255,1,256,1,256,3,256,5898,8,256,1,256,1,256,1,257,1,257,1,257,1,257,1,257,1,257,1,257,5,257,5909,8,257,10,257,12,257,5912,9,257,1,258,1,258,1,258,1,258,1,259,1,259,1,260,1,260,3,260,5922,8,260,1,260,1,260,1,260,1,260,3,260,5928,8,260,1,261,1,261,1,261,3,261,5933,8,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,3,261,5946,8,261,3,261,5948,8,261,1,261,1,261,1,261,3,261,5953,8,261,1,261,1,261,3,261,5957,8,261,1,261,3,261,5960,8,261,3,261,5962,8,261,1,262,1,262,1,262,1,262,1,262,3,262,5969,8,262,1,263,1,263,1,263,1,263,1,263,3,263,5976,8,263,1,263,3,263,5979,8,263,1,263,3,263,5982,8,263,1,263,1,263,1,263,1,263,3,263,5988,8,263,1,263,1,263,3,263,5992,8,263,1,264,1,264,1,264,1,264,3,264,5998,8,264,1,265,1,265,1,265,1,265,3,265,6004,8,265,1,265,1,265,1,266,1,266,1,266,1,267,1,267,1,267,1,268,1,268,1,268,3,268,6017,8,268,1,268,1,268,1,268,3,268,6022,8,268,1,268,1,268,1,268,1,268,5,268,6028,8,268,10,268,12,268,6031,9,268,3,268,6033,8,268,1,269,1,269,1,269,3,269,6038,8,269,1,269,1,269,1,269,3,269,6043,8,269,1,269,1,269,1,269,1,269,5,269,6049,8,269,10,269,12,269,6052,9,269,3,269,6054,8,269,1,270,1,270,1,270,1,270,1,270,1,270,3,270,6062,8,270,1,271,1,271,3,271,6066,8,271,1,271,1,271,1,271,5,271,6071,8,271,10,271,12,271,6074,9,271,1,272,1,272,1,272,3,272,6079,8,272,1,272,3,272,6082,8,272,1,273,1,273,3,273,6086,8,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,5,273,6097,8,273,10,273,12,273,6100,9,273,1,273,1,273,1,273,3,273,6105,8,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,5,273,6115,8,273,10,273,12,273,6118,9,273,3,273,6120,8,273,1,274,1,274,1,275,1,275,1,275,1,275,1,275,3,275,6129,8,275,1,275,1,275,1,275,3,275,6134,8,275,1,276,1,276,1,276,1,276,3,276,6140,8,276,1,277,1,277,1,278,1,278,1,278,5,278,6147,8,278,10,278,12,278,6150,9,278,1,279,1,279,3,279,6154,8,279,1,280,1,280,1,280,5,280,6159,8,280,10,280,12,280,6162,9,280,1,281,1,281,1,281,5,281,6167,8,281,10,281,12,281,6170,9,281,1,282,1,282,1,283,1,283,1,283,5,283,6177,8,283,10,283,12,283,6180,9,283,1,284,1,284,1,285,1,285,1,285,3,285,6187,8,285,3,285,6189,8,285,1,285,3,285,6192,8,285,1,285,1,285,3,285,6196,8,285,3,285,6198,8,285,1,286,1,286,1,287,1,287,1,288,1,288,1,289,1,289,1,290,1,290,1,290,5,290,6211,8,290,10,290,12,290,6214,9,290,1,291,1,291,3,291,6218,8,291,1,291,1,291,1,291,1,291,3,291,6224,8,291,1,291,3,291,6227,8,291,1,291,3,291,6230,8,291,1,292,1,292,1,292,1,292,3,292,6236,8,292,1,293,1,293,1,294,1,294,1,294,5,294,6243,8,294,10,294,12,294,6246,9,294,1,295,1,295,1,295,1,295,1,295,3,295,6253,8,295,1,296,1,296,1,297,1,297,1,298,1,298,1,298,1,298,3,298,6263,8,298,1,299,1,299,3,299,6267,8,299,1,300,1,300,1,300,3,300,6272,8,300,1,301,1,301,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,1,302,4,302,6290,8,302,11,302,12,302,6291,1,303,1,303,1,303,1,303,1,303,3,303,6299,8,303,3,303,6301,8,303,1,304,1,304,1,304,4,304,6306,8,304,11,304,12,304,6307,3,304,6310,8,304,1,305,1,305,3,305,6314,8,305,1,306,1,306,1,306,3,306,6319,8,306,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,1,307,3,307,6330,8,307,1,308,1,308,1,308,3,308,6335,8,308,1,309,1,309,1,310,1,310,3,310,6341,8,310,1,311,3,311,6344,8,311,1,311,1,311,3,311,6348,8,311,1,311,4,311,6351,8,311,11,311,12,311,6352,1,311,3,311,6356,8,311,1,311,1,311,3,311,6360,8,311,1,311,1,311,3,311,6364,8,311,3,311,6366,8,311,1,312,1,312,1,313,3,313,6371,8,313,1,313,1,313,1,314,3,314,6376,8,314,1,314,1,314,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,1,315,3,315,6389,8,315,1,315,3,315,6392,8,315,1,316,1,316,3,316,6396,8,316,1,316,3,316,6399,8,316,1,316,3,316,6402,8,316,1,316,1,316,1,316,3,316,6407,8,316,1,316,1,316,1,316,3,316,6412,8,316,1,316,1,316,1,316,1,316,3,316,6418,8,316,1,316,3,316,6421,8,316,1,316,1,316,1,316,3,316,6426,8,316,1,316,3,316,6429,8,316,1,316,1,316,1,316,3,316,6434,8,316,1,316,3,316,6437,8,316,1,316,1,316,3,316,6441,8,316,1,316,5,316,6444,8,316,10,316,12,316,6447,9,316,1,316,1,316,3,316,6451,8,316,1,316,5,316,6454,8,316,10,316,12,316,6457,9,316,1,316,1,316,3,316,6461,8,316,1,316,3,316,6464,8,316,1,316,5,316,6467,8,316,10,316,12,316,6470,9,316,1,316,1,316,3,316,6474,8,316,1,316,5,316,6477,8,316,10,316,12,316,6480,9,316,1,316,1,316,1,316,3,316,6485,8,316,1,316,1,316,1,316,3,316,6490,8,316,1,316,1,316,1,316,3,316,6495,8,316,1,316,1,316,1,316,3,316,6500,8,316,1,316,1,316,3,316,6504,8,316,1,316,3,316,6507,8,316,1,316,1,316,1,316,3,316,6512,8,316,1,316,1,316,3,316,6516,8,316,1,316,1,316,3,316,6520,8,316,1,317,1,317,1,317,1,317,5,317,6526,8,317,10,317,12,317,6529,9,317,1,317,1,317,1,318,1,318,3,318,6535,8,318,1,318,1,318,3,318,6539,8,318,1,318,1,318,1,318,3,318,6544,8,318,1,318,1,318,1,318,3,318,6549,8,318,1,318,1,318,3,318,6553,8,318,3,318,6555,8,318,1,318,3,318,6558,8,318,1,319,1,319,1,319,1,319,1,320,1,320,1,320,1,320,1,320,1,320,1,321,1,321,1,321,1,321,3,321,6574,8,321,1,321,1,321,1,322,1,322,1,322,5,322,6581,8,322,10,322,12,322,6584,9,322,1,323,1,323,1,323,5,323,6589,8,323,10,323,12,323,6592,9,323,1,324,1,324,1,324,5,324,6597,8,324,10,324,12,324,6600,9,324,1,325,1,325,1,325,1,325,5,325,6606,8,325,10,325,12,325,6609,9,325,1,325,1,325,1,326,1,326,1,326,5,326,6616,8,326,10,326,12,326,6619,9,326,1,327,1,327,1,327,5,327,6624,8,327,10,327,12,327,6627,9,327,1,328,1,328,1,328,5,328,6632,8,328,10,328,12,328,6635,9,328,1,329,1,329,1,329,5,329,6640,8,329,10,329,12,329,6643,9,329,1,330,1,330,1,330,5,330,6648,8,330,10,330,12,330,6651,9,330,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,331,3,331,6662,8,331,1,331,1,331,1,331,1,331,1,331,3,331,6669,8,331,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,331,3,331,6679,8,331,1,332,1,332,1,332,3,332,6684,8,332,1,332,3,332,6687,8,332,1,332,1,332,1,332,3,332,6692,8,332,1,332,3,332,6695,8,332,1,333,1,333,3,333,6699,8,333,1,334,1,334,1,334,1,335,1,335,1,335,1,335,1,336,1,336,1,336,1,337,1,337,1,337,3,337,6714,8,337,1,338,1,338,1,338,1,338,1,338,1,338,3,338,6722,8,338,1,338,1,338,1,338,1,338,1,338,3,338,6729,8,338,1,338,1,338,1,338,3,338,6734,8,338,1,339,1,339,1,339,3,339,6739,8,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,4,339,6771,8,339,11,339,12,339,6772,1,339,1,339,3,339,6777,8,339,1,339,1,339,1,339,1,339,4,339,6783,8,339,11,339,12,339,6784,1,339,1,339,3,339,6789,8,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6798,8,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6806,8,339,1,339,1,339,1,339,3,339,6811,8,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6819,8,339,1,339,1,339,1,339,3,339,6824,8,339,1,339,1,339,1,339,3,339,6829,8,339,3,339,6831,8,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6840,8,339,1,339,1,339,1,339,3,339,6845,8,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6853,8,339,1,339,1,339,1,339,3,339,6858,8,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6866,8,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6874,8,339,1,339,3,339,6877,8,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6887,8,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,3,339,6905,8,339,1,339,3,339,6908,8,339,1,339,3,339,6911,8,339,1,339,1,339,3,339,6915,8,339,1,340,1,340,1,340,1,340,1,340,1,341,1,341,1,341,1,341,5,341,6926,8,341,10,341,12,341,6929,9,341,1,341,1,341,1,341,1,341,1,341,3,341,6936,8,341,1,342,1,342,3,342,6940,8,342,1,343,1,343,1,343,3,343,6945,8,343,1,343,1,343,1,343,3,343,6950,8,343,1,343,1,343,1,343,1,343,3,343,6956,8,343,1,343,1,343,1,343,3,343,6961,8,343,1,343,1,343,3,343,6965,8,343,1,343,1,343,1,343,3,343,6970,8,343,1,343,1,343,1,343,3,343,6975,8,343,1,343,1,343,1,343,3,343,6980,8,343,1,343,1,343,1,343,1,343,1,343,1,343,5,343,6988,8,343,10,343,12,343,6991,9,343,3,343,6993,8,343,1,343,1,343,3,343,6997,8,343,1,343,1,343,3,343,7001,8,343,1,344,1,344,1,344,1,344,1,344,3,344,7008,8,344,1,344,1,344,3,344,7012,8,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,1,344,3,344,7041,8,344,1,345,1,345,1,345,1,345,1,345,1,345,3,345,7049,8,345,1,346,3,346,7052,8,346,1,346,3,346,7055,8,346,1,346,3,346,7058,8,346,1,346,3,346,7061,8,346,1,347,1,347,1,348,1,348,1,348,1,349,1,349,1,350,1,350,3,350,7072,8,350,1,351,1,351,1,351,1,351,1,351,1,352,1,352,1,352,1,352,1,352,1,352,1,352,3,352,7086,8,352,1,353,1,353,1,353,1,353,1,353,5,353,7093,8,353,10,353,12,353,7096,9,353,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,1,354,3,354,7122,8,354,1,355,1,355,1,355,1,355,1,355,1,356,1,356,1,356,1,356,3,356,7133,8,356,1,356,1,356,1,356,1,356,1,356,3,356,7140,8,356,5,356,7142,8,356,10,356,12,356,7145,9,356,1,357,1,357,1,357,1,357,3,357,7151,8,357,1,358,1,358,1,358,1,358,1,358,1,358,3,358,7159,8,358,1,358,1,358,1,358,3,358,7164,8,358,1,358,1,358,1,358,1,358,5,358,7170,8,358,10,358,12,358,7173,9,358,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,3,359,7184,8,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,3,359,7197,8,359,1,359,1,359,1,359,1,359,3,359,7203,8,359,1,359,1,359,1,359,1,359,3,359,7209,8,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,3,359,7225,8,359,1,359,1,359,1,359,1,359,3,359,7231,8,359,1,359,1,359,1,359,1,359,1,359,1,359,1,359,5,359,7240,8,359,10,359,12,359,7243,9,359,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,5,360,7262,8,360,10,360,12,360,7265,9,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,4,360,7274,8,360,11,360,12,360,7275,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,3,360,7293,8,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,5,360,7314,8,360,10,360,12,360,7317,9,360,1,361,1,361,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,1,362,3,362,7335,8,362,1,363,1,363,1,363,1,363,1,363,1,363,1,363,3,363,7344,8,363,1,364,1,364,1,364,1,364,1,364,1,364,1,364,3,364,7353,8,364,1,365,1,365,1,366,1,366,1,367,1,367,1,367,1,367,1,367,3,367,7364,8,367,1,368,1,368,1,369,1,369,1,370,1,370,1,371,1,371,1,372,1,372,1,373,1,373,1,374,1,374,1,374,0,3,716,718,720,375,0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,312,314,316,318,320,322,324,326,328,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,376,378,380,382,384,386,388,390,392,394,396,398,400,402,404,406,408,410,412,414,416,418,420,422,424,426,428,430,432,434,436,438,440,442,444,446,448,450,452,454,456,458,460,462,464,466,468,470,472,474,476,478,480,482,484,486,488,490,492,494,496,498,500,502,504,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,564,566,568,570,572,574,576,578,580,582,584,586,588,590,592,594,596,598,600,602,604,606,608,610,612,614,616,618,620,622,624,626,628,630,632,634,636,638,640,642,644,646,648,650,652,654,656,658,660,662,664,666,668,670,672,674,676,678,680,682,684,686,688,690,692,694,696,698,700,702,704,706,708,710,712,714,716,718,720,722,724,726,728,730,732,734,736,738,740,742,744,746,748,0,145,2,0,39,39,150,150,2,0,531,531,537,537,3,0,69,69,159,159,181,181,3,0,42,42,384,384,454,454,4,0,42,42,419,419,529,529,611,611,2,0,514,514,1148,1148,2,0,78,78,141,141,2,0,15,15,334,334,3,0,44,44,85,85,184,184,2,0,434,434,558,558,3,0,506,506,650,650,658,658,2,0,392,392,460,460,2,0,352,352,474,474,2,0,42,42,1138,1139,2,0,350,350,443,443,2,0,459,459,673,673,3,0,80,80,84,84,125,125,3,0,42,42,402,402,431,431,3,0,42,42,398,398,792,792,2,0,637,637,672,672,2,0,81,81,91,91,3,0,436,436,548,548,613,613,2,0,69,69,159,159,1,0,356,357,1,0,1138,1139,2,0,1148,1148,1156,1156,2,0,81,81,388,388,2,0,545,545,1148,1148,2,0,546,546,1148,1148,3,0,430,430,469,469,521,521,7,0,42,42,370,370,372,372,402,402,431,431,573,573,1156,1156,2,0,514,514,530,530,1,0,1139,1140,2,0,5,5,51,51,4,0,42,42,384,384,454,454,458,458,2,0,26,26,30,30,2,0,12,12,175,175,2,0,192,192,677,677,2,0,21,21,144,144,3,0,43,43,75,75,106,106,2,0,106,106,374,374,2,0,365,365,427,427,2,0,101,101,601,601,2,0,43,43,106,106,2,0,6,6,49,49,2,0,188,188,669,669,4,0,430,430,469,469,520,520,562,562,2,0,430,430,520,520,2,0,13,13,45,45,3,0,66,66,78,78,186,186,2,0,34,34,83,83,2,0,97,97,148,148,2,0,6,6,49,50,1,0,626,627,2,0,172,172,742,742,2,0,439,439,609,609,2,0,226,226,477,477,5,0,107,107,482,483,485,485,489,497,575,575,4,0,479,480,484,484,486,487,576,576,3,0,108,108,478,478,488,488,2,0,462,462,628,628,2,0,622,622,624,624,2,0,344,344,629,629,2,0,90,90,591,591,2,0,51,51,390,390,3,0,31,31,61,61,179,179,3,0,131,131,172,172,437,437,3,0,12,12,19,19,187,187,2,0,42,42,121,121,2,0,103,103,182,182,2,0,360,360,614,614,2,0,40,40,671,671,2,0,115,115,474,474,2,0,422,422,568,568,4,0,206,206,208,208,214,214,638,638,2,0,1108,1108,1124,1124,2,0,345,345,577,577,2,0,68,68,80,80,3,0,131,131,415,415,437,437,2,0,172,172,671,671,2,0,513,513,634,634,2,0,412,412,675,675,2,0,131,131,437,437,3,0,81,81,92,92,452,452,3,0,439,439,474,474,609,609,2,0,634,634,670,670,2,0,376,376,567,567,6,0,226,226,409,409,411,411,438,438,574,574,615,615,2,0,45,46,62,62,3,0,422,422,550,550,885,885,2,0,466,466,652,652,10,0,359,359,367,367,378,380,387,387,507,507,515,515,639,639,646,646,836,836,1005,1005,2,0,35,35,168,168,2,0,117,117,996,996,11,0,359,359,367,367,378,380,387,387,507,507,515,515,592,592,639,639,646,646,836,836,1005,1005,2,0,1137,1137,1158,1159,1,0,1159,1160,2,0,375,375,787,798,3,0,1138,1140,1149,1149,1151,1151,2,0,63,63,178,178,2,0,116,116,1152,1152,5,0,25,25,222,224,231,231,233,236,518,518,2,0,25,25,222,222,2,0,25,25,222,223,1,0,196,207,3,0,183,183,195,195,612,612,2,0,211,216,431,431,6,0,217,217,228,228,230,230,232,232,239,239,348,349,4,0,218,221,226,227,229,229,346,346,2,0,153,153,237,237,2,0,466,466,803,811,3,0,211,211,226,226,518,518,6,0,200,200,206,206,209,209,217,218,220,221,466,466,1,0,214,215,2,0,183,183,612,612,2,0,200,200,206,206,2,0,315,316,322,322,3,0,150,150,313,316,331,331,1,0,325,326,3,0,17,17,95,95,176,176,2,0,222,222,226,226,2,0,217,218,220,220,3,0,13,13,45,45,994,994,3,0,286,286,298,299,309,309,3,0,287,289,305,308,310,312,2,0,295,295,297,297,2,0,293,293,296,296,2,0,291,292,302,304,2,0,133,133,601,601,2,0,433,433,559,559,2,0,535,535,551,551,2,0,114,114,1127,1127,3,0,63,63,178,178,662,662,2,0,137,137,149,149,3,0,6,6,337,337,618,618,3,0,114,114,1120,1121,1127,1128,2,0,1117,1119,1122,1123,1,0,1120,1121,2,0,226,226,746,786,1,0,799,802,5,0,708,709,725,727,733,733,739,740,742,742,1,0,689,696,3,0,217,221,234,234,237,237,59,0,11,11,14,14,18,18,29,29,35,35,37,37,42,42,48,48,55,55,57,57,59,59,73,73,79,79,94,94,117,117,121,121,124,124,130,130,158,158,168,168,239,239,283,290,294,294,298,299,305,312,332,385,387,403,405,405,407,432,434,450,452,458,460,521,523,523,527,544,547,558,560,589,591,592,594,606,608,636,638,672,674,675,677,682,684,688,697,697,699,707,710,712,717,718,720,724,728,732,734,734,736,738,741,741,743,745,792,792,836,836,875,875,1e3,1e3,1005,1005,1088,1088,23,0,39,39,97,97,148,148,150,150,217,219,221,221,251,282,290,293,295,297,300,304,324,324,459,459,673,673,689,696,736,736,803,803,806,835,837,874,876,999,1001,1004,1006,1087,1089,1107,1123,1123,8658,0,751,1,0,0,0,2,763,1,0,0,0,4,772,1,0,0,0,6,812,1,0,0,0,8,827,1,0,0,0,10,838,1,0,0,0,12,855,1,0,0,0,14,860,1,0,0,0,16,872,1,0,0,0,18,899,1,0,0,0,20,908,1,0,0,0,22,910,1,0,0,0,24,922,1,0,0,0,26,952,1,0,0,0,28,988,1,0,0,0,30,1039,1,0,0,0,32,1065,1,0,0,0,34,1101,1,0,0,0,36,1108,1,0,0,0,38,1205,1,0,0,0,40,1207,1,0,0,0,42,1225,1,0,0,0,44,1286,1,0,0,0,46,1308,1,0,0,0,48,1314,1,0,0,0,50,1336,1,0,0,0,52,1338,1,0,0,0,54,1340,1,0,0,0,56,1420,1,0,0,0,58,1427,1,0,0,0,60,1429,1,0,0,0,62,1434,1,0,0,0,64,1474,1,0,0,0,66,1480,1,0,0,0,68,1482,1,0,0,0,70,1503,1,0,0,0,72,1510,1,0,0,0,74,1512,1,0,0,0,76,1537,1,0,0,0,78,1540,1,0,0,0,80,1545,1,0,0,0,82,1571,1,0,0,0,84,1587,1,0,0,0,86,1589,1,0,0,0,88,1611,1,0,0,0,90,1613,1,0,0,0,92,1679,1,0,0,0,94,1750,1,0,0,0,96,1752,1,0,0,0,98,1780,1,0,0,0,100,1790,1,0,0,0,102,1820,1,0,0,0,104,2007,1,0,0,0,106,2009,1,0,0,0,108,2011,1,0,0,0,110,2014,1,0,0,0,112,2089,1,0,0,0,114,2112,1,0,0,0,116,2260,1,0,0,0,118,2265,1,0,0,0,120,2267,1,0,0,0,122,2277,1,0,0,0,124,2333,1,0,0,0,126,2351,1,0,0,0,128,2353,1,0,0,0,130,2388,1,0,0,0,132,2397,1,0,0,0,134,2404,1,0,0,0,136,2427,1,0,0,0,138,2436,1,0,0,0,140,2451,1,0,0,0,142,2476,1,0,0,0,144,2496,1,0,0,0,146,2879,1,0,0,0,148,2979,1,0,0,0,150,2981,1,0,0,0,152,2988,1,0,0,0,154,2995,1,0,0,0,156,3018,1,0,0,0,158,3026,1,0,0,0,160,3033,1,0,0,0,162,3040,1,0,0,0,164,3047,1,0,0,0,166,3059,1,0,0,0,168,3069,1,0,0,0,170,3076,1,0,0,0,172,3092,1,0,0,0,174,3112,1,0,0,0,176,3114,1,0,0,0,178,3124,1,0,0,0,180,3128,1,0,0,0,182,3134,1,0,0,0,184,3146,1,0,0,0,186,3148,1,0,0,0,188,3155,1,0,0,0,190,3157,1,0,0,0,192,3215,1,0,0,0,194,3289,1,0,0,0,196,3348,1,0,0,0,198,3446,1,0,0,0,200,3450,1,0,0,0,202,3452,1,0,0,0,204,3487,1,0,0,0,206,3489,1,0,0,0,208,3497,1,0,0,0,210,3505,1,0,0,0,212,3507,1,0,0,0,214,3543,1,0,0,0,216,3598,1,0,0,0,218,3607,1,0,0,0,220,3627,1,0,0,0,222,3639,1,0,0,0,224,3643,1,0,0,0,226,3676,1,0,0,0,228,3697,1,0,0,0,230,3707,1,0,0,0,232,3711,1,0,0,0,234,3737,1,0,0,0,236,3776,1,0,0,0,238,3778,1,0,0,0,240,3793,1,0,0,0,242,3842,1,0,0,0,244,3851,1,0,0,0,246,3861,1,0,0,0,248,3871,1,0,0,0,250,3927,1,0,0,0,252,3929,1,0,0,0,254,3956,1,0,0,0,256,3962,1,0,0,0,258,3970,1,0,0,0,260,3987,1,0,0,0,262,4003,1,0,0,0,264,4040,1,0,0,0,266,4046,1,0,0,0,268,4055,1,0,0,0,270,4068,1,0,0,0,272,4072,1,0,0,0,274,4082,1,0,0,0,276,4106,1,0,0,0,278,4144,1,0,0,0,280,4158,1,0,0,0,282,4166,1,0,0,0,284,4170,1,0,0,0,286,4176,1,0,0,0,288,4190,1,0,0,0,290,4193,1,0,0,0,292,4211,1,0,0,0,294,4215,1,0,0,0,296,4231,1,0,0,0,298,4233,1,0,0,0,300,4245,1,0,0,0,302,4249,1,0,0,0,304,4266,1,0,0,0,306,4283,1,0,0,0,308,4286,1,0,0,0,310,4296,1,0,0,0,312,4300,1,0,0,0,314,4313,1,0,0,0,316,4316,1,0,0,0,318,4321,1,0,0,0,320,4341,1,0,0,0,322,4343,1,0,0,0,324,4360,1,0,0,0,326,4369,1,0,0,0,328,4378,1,0,0,0,330,4380,1,0,0,0,332,4394,1,0,0,0,334,4405,1,0,0,0,336,4414,1,0,0,0,338,4417,1,0,0,0,340,4425,1,0,0,0,342,4450,1,0,0,0,344,4462,1,0,0,0,346,4465,1,0,0,0,348,4497,1,0,0,0,350,4499,1,0,0,0,352,4501,1,0,0,0,354,4503,1,0,0,0,356,4505,1,0,0,0,358,4558,1,0,0,0,360,4560,1,0,0,0,362,4566,1,0,0,0,364,4586,1,0,0,0,366,4600,1,0,0,0,368,4611,1,0,0,0,370,4613,1,0,0,0,372,4619,1,0,0,0,374,4629,1,0,0,0,376,4633,1,0,0,0,378,4640,1,0,0,0,380,4644,1,0,0,0,382,4650,1,0,0,0,384,4657,1,0,0,0,386,4663,1,0,0,0,388,4669,1,0,0,0,390,4674,1,0,0,0,392,4719,1,0,0,0,394,4740,1,0,0,0,396,4765,1,0,0,0,398,4768,1,0,0,0,400,4774,1,0,0,0,402,4790,1,0,0,0,404,4805,1,0,0,0,406,4811,1,0,0,0,408,4841,1,0,0,0,410,4843,1,0,0,0,412,4850,1,0,0,0,414,4862,1,0,0,0,416,4868,1,0,0,0,418,4893,1,0,0,0,420,4897,1,0,0,0,422,4901,1,0,0,0,424,4912,1,0,0,0,426,4983,1,0,0,0,428,5036,1,0,0,0,430,5038,1,0,0,0,432,5105,1,0,0,0,434,5115,1,0,0,0,436,5117,1,0,0,0,438,5135,1,0,0,0,440,5181,1,0,0,0,442,5183,1,0,0,0,444,5196,1,0,0,0,446,5207,1,0,0,0,448,5210,1,0,0,0,450,5243,1,0,0,0,452,5247,1,0,0,0,454,5268,1,0,0,0,456,5278,1,0,0,0,458,5288,1,0,0,0,460,5328,1,0,0,0,462,5330,1,0,0,0,464,5333,1,0,0,0,466,5433,1,0,0,0,468,5451,1,0,0,0,470,5453,1,0,0,0,472,5457,1,0,0,0,474,5495,1,0,0,0,476,5504,1,0,0,0,478,5510,1,0,0,0,480,5517,1,0,0,0,482,5539,1,0,0,0,484,5541,1,0,0,0,486,5555,1,0,0,0,488,5561,1,0,0,0,490,5617,1,0,0,0,492,5780,1,0,0,0,494,5792,1,0,0,0,496,5807,1,0,0,0,498,5813,1,0,0,0,500,5832,1,0,0,0,502,5842,1,0,0,0,504,5856,1,0,0,0,506,5858,1,0,0,0,508,5861,1,0,0,0,510,5883,1,0,0,0,512,5895,1,0,0,0,514,5901,1,0,0,0,516,5913,1,0,0,0,518,5917,1,0,0,0,520,5919,1,0,0,0,522,5961,1,0,0,0,524,5968,1,0,0,0,526,5970,1,0,0,0,528,5993,1,0,0,0,530,5999,1,0,0,0,532,6007,1,0,0,0,534,6010,1,0,0,0,536,6013,1,0,0,0,538,6034,1,0,0,0,540,6055,1,0,0,0,542,6063,1,0,0,0,544,6075,1,0,0,0,546,6083,1,0,0,0,548,6121,1,0,0,0,550,6133,1,0,0,0,552,6135,1,0,0,0,554,6141,1,0,0,0,556,6143,1,0,0,0,558,6153,1,0,0,0,560,6155,1,0,0,0,562,6163,1,0,0,0,564,6171,1,0,0,0,566,6173,1,0,0,0,568,6181,1,0,0,0,570,6197,1,0,0,0,572,6199,1,0,0,0,574,6201,1,0,0,0,576,6203,1,0,0,0,578,6205,1,0,0,0,580,6207,1,0,0,0,582,6226,1,0,0,0,584,6235,1,0,0,0,586,6237,1,0,0,0,588,6239,1,0,0,0,590,6252,1,0,0,0,592,6254,1,0,0,0,594,6256,1,0,0,0,596,6262,1,0,0,0,598,6266,1,0,0,0,600,6271,1,0,0,0,602,6273,1,0,0,0,604,6275,1,0,0,0,606,6293,1,0,0,0,608,6309,1,0,0,0,610,6313,1,0,0,0,612,6318,1,0,0,0,614,6329,1,0,0,0,616,6334,1,0,0,0,618,6336,1,0,0,0,620,6340,1,0,0,0,622,6365,1,0,0,0,624,6367,1,0,0,0,626,6370,1,0,0,0,628,6375,1,0,0,0,630,6391,1,0,0,0,632,6519,1,0,0,0,634,6521,1,0,0,0,636,6554,1,0,0,0,638,6559,1,0,0,0,640,6563,1,0,0,0,642,6569,1,0,0,0,644,6577,1,0,0,0,646,6585,1,0,0,0,648,6593,1,0,0,0,650,6601,1,0,0,0,652,6612,1,0,0,0,654,6620,1,0,0,0,656,6628,1,0,0,0,658,6636,1,0,0,0,660,6644,1,0,0,0,662,6678,1,0,0,0,664,6694,1,0,0,0,666,6698,1,0,0,0,668,6700,1,0,0,0,670,6703,1,0,0,0,672,6707,1,0,0,0,674,6713,1,0,0,0,676,6733,1,0,0,0,678,6914,1,0,0,0,680,6916,1,0,0,0,682,6935,1,0,0,0,684,6937,1,0,0,0,686,7e3,1,0,0,0,688,7040,1,0,0,0,690,7042,1,0,0,0,692,7051,1,0,0,0,694,7062,1,0,0,0,696,7064,1,0,0,0,698,7067,1,0,0,0,700,7071,1,0,0,0,702,7073,1,0,0,0,704,7085,1,0,0,0,706,7087,1,0,0,0,708,7121,1,0,0,0,710,7123,1,0,0,0,712,7132,1,0,0,0,714,7150,1,0,0,0,716,7163,1,0,0,0,718,7174,1,0,0,0,720,7292,1,0,0,0,722,7318,1,0,0,0,724,7334,1,0,0,0,726,7343,1,0,0,0,728,7352,1,0,0,0,730,7354,1,0,0,0,732,7356,1,0,0,0,734,7363,1,0,0,0,736,7365,1,0,0,0,738,7367,1,0,0,0,740,7369,1,0,0,0,742,7371,1,0,0,0,744,7373,1,0,0,0,746,7375,1,0,0,0,748,7377,1,0,0,0,750,752,3,2,1,0,751,750,1,0,0,0,751,752,1,0,0,0,752,753,1,0,0,0,753,754,5,0,0,1,754,1,1,0,0,0,755,757,3,4,2,0,756,758,5,1136,0,0,757,756,1,0,0,0,757,758,1,0,0,0,758,764,1,0,0,0,759,760,3,4,2,0,760,761,5,1136,0,0,761,762,3,2,1,0,762,764,1,0,0,0,763,755,1,0,0,0,763,759,1,0,0,0,764,3,1,0,0,0,765,773,3,6,3,0,766,773,3,8,4,0,767,773,3,10,5,0,768,773,3,12,6,0,769,773,3,14,7,0,770,773,3,18,9,0,771,773,3,20,10,0,772,765,1,0,0,0,772,766,1,0,0,0,772,767,1,0,0,0,772,768,1,0,0,0,772,769,1,0,0,0,772,770,1,0,0,0,772,771,1,0,0,0,773,5,1,0,0,0,774,813,3,22,11,0,775,813,3,24,12,0,776,813,3,26,13,0,777,813,3,28,14,0,778,813,3,30,15,0,779,813,3,32,16,0,780,813,3,36,18,0,781,813,3,38,19,0,782,813,3,40,20,0,783,813,3,42,21,0,784,813,3,44,22,0,785,813,3,54,27,0,786,813,3,34,17,0,787,813,3,126,63,0,788,813,3,128,64,0,789,813,3,130,65,0,790,813,3,132,66,0,791,813,3,134,67,0,792,813,3,136,68,0,793,813,3,138,69,0,794,813,3,140,70,0,795,813,3,142,71,0,796,813,3,144,72,0,797,813,3,150,75,0,798,813,3,152,76,0,799,813,3,154,77,0,800,813,3,156,78,0,801,813,3,158,79,0,802,813,3,160,80,0,803,813,3,162,81,0,804,813,3,164,82,0,805,813,3,166,83,0,806,813,3,168,84,0,807,813,3,170,85,0,808,813,3,172,86,0,809,813,3,174,87,0,810,813,3,176,88,0,811,813,3,180,90,0,812,774,1,0,0,0,812,775,1,0,0,0,812,776,1,0,0,0,812,777,1,0,0,0,812,778,1,0,0,0,812,779,1,0,0,0,812,780,1,0,0,0,812,781,1,0,0,0,812,782,1,0,0,0,812,783,1,0,0,0,812,784,1,0,0,0,812,785,1,0,0,0,812,786,1,0,0,0,812,787,1,0,0,0,812,788,1,0,0,0,812,789,1,0,0,0,812,790,1,0,0,0,812,791,1,0,0,0,812,792,1,0,0,0,812,793,1,0,0,0,812,794,1,0,0,0,812,795,1,0,0,0,812,796,1,0,0,0,812,797,1,0,0,0,812,798,1,0,0,0,812,799,1,0,0,0,812,800,1,0,0,0,812,801,1,0,0,0,812,802,1,0,0,0,812,803,1,0,0,0,812,804,1,0,0,0,812,805,1,0,0,0,812,806,1,0,0,0,812,807,1,0,0,0,812,808,1,0,0,0,812,809,1,0,0,0,812,810,1,0,0,0,812,811,1,0,0,0,813,7,1,0,0,0,814,828,3,198,99,0,815,828,3,190,95,0,816,828,3,200,100,0,817,828,3,184,92,0,818,828,3,196,98,0,819,828,3,182,91,0,820,828,3,192,96,0,821,828,3,194,97,0,822,828,3,186,93,0,823,828,3,188,94,0,824,828,3,202,101,0,825,828,3,542,271,0,826,828,3,544,272,0,827,814,1,0,0,0,827,815,1,0,0,0,827,816,1,0,0,0,827,817,1,0,0,0,827,818,1,0,0,0,827,819,1,0,0,0,827,820,1,0,0,0,827,821,1,0,0,0,827,822,1,0,0,0,827,823,1,0,0,0,827,824,1,0,0,0,827,825,1,0,0,0,827,826,1,0,0,0,828,9,1,0,0,0,829,839,3,298,149,0,830,839,3,300,150,0,831,839,3,302,151,0,832,839,3,304,152,0,833,839,3,306,153,0,834,839,3,308,154,0,835,839,3,310,155,0,836,839,3,312,156,0,837,839,3,314,157,0,838,829,1,0,0,0,838,830,1,0,0,0,838,831,1,0,0,0,838,832,1,0,0,0,838,833,1,0,0,0,838,834,1,0,0,0,838,835,1,0,0,0,838,836,1,0,0,0,838,837,1,0,0,0,839,11,1,0,0,0,840,856,3,330,165,0,841,856,3,332,166,0,842,856,3,334,167,0,843,856,3,336,168,0,844,856,3,338,169,0,845,856,3,340,170,0,846,856,3,342,171,0,847,856,3,344,172,0,848,856,3,346,173,0,849,856,3,370,185,0,850,856,3,372,186,0,851,856,3,374,187,0,852,856,3,376,188,0,853,856,3,378,189,0,854,856,3,380,190,0,855,840,1,0,0,0,855,841,1,0,0,0,855,842,1,0,0,0,855,843,1,0,0,0,855,844,1,0,0,0,855,845,1,0,0,0,855,846,1,0,0,0,855,847,1,0,0,0,855,848,1,0,0,0,855,849,1,0,0,0,855,850,1,0,0,0,855,851,1,0,0,0,855,852,1,0,0,0,855,853,1,0,0,0,855,854,1,0,0,0,856,13,1,0,0,0,857,861,3,382,191,0,858,861,3,384,192,0,859,861,3,386,193,0,860,857,1,0,0,0,860,858,1,0,0,0,860,859,1,0,0,0,861,15,1,0,0,0,862,873,3,390,195,0,863,873,3,392,196,0,864,873,3,394,197,0,865,873,3,398,199,0,866,873,3,400,200,0,867,873,3,402,201,0,868,873,3,406,203,0,869,873,3,396,198,0,870,873,3,404,202,0,871,873,3,408,204,0,872,862,1,0,0,0,872,863,1,0,0,0,872,864,1,0,0,0,872,865,1,0,0,0,872,866,1,0,0,0,872,867,1,0,0,0,872,868,1,0,0,0,872,869,1,0,0,0,872,870,1,0,0,0,872,871,1,0,0,0,873,17,1,0,0,0,874,900,3,426,213,0,875,900,3,428,214,0,876,900,3,430,215,0,877,900,3,432,216,0,878,900,3,436,218,0,879,900,3,438,219,0,880,900,3,440,220,0,881,900,3,442,221,0,882,900,3,472,236,0,883,900,3,474,237,0,884,900,3,476,238,0,885,900,3,478,239,0,886,900,3,480,240,0,887,900,3,484,242,0,888,900,3,486,243,0,889,900,3,488,244,0,890,900,3,490,245,0,891,900,3,492,246,0,892,900,3,506,253,0,893,900,3,508,254,0,894,900,3,510,255,0,895,900,3,512,256,0,896,900,3,514,257,0,897,900,3,516,258,0,898,900,3,518,259,0,899,874,1,0,0,0,899,875,1,0,0,0,899,876,1,0,0,0,899,877,1,0,0,0,899,878,1,0,0,0,899,879,1,0,0,0,899,880,1,0,0,0,899,881,1,0,0,0,899,882,1,0,0,0,899,883,1,0,0,0,899,884,1,0,0,0,899,885,1,0,0,0,899,886,1,0,0,0,899,887,1,0,0,0,899,888,1,0,0,0,899,889,1,0,0,0,899,890,1,0,0,0,899,891,1,0,0,0,899,892,1,0,0,0,899,893,1,0,0,0,899,894,1,0,0,0,899,895,1,0,0,0,899,896,1,0,0,0,899,897,1,0,0,0,899,898,1,0,0,0,900,19,1,0,0,0,901,909,3,528,264,0,902,909,3,530,265,0,903,909,3,532,266,0,904,909,3,534,267,0,905,909,3,536,268,0,906,909,3,538,269,0,907,909,3,546,273,0,908,901,1,0,0,0,908,902,1,0,0,0,908,903,1,0,0,0,908,904,1,0,0,0,908,905,1,0,0,0,908,906,1,0,0,0,908,907,1,0,0,0,909,21,1,0,0,0,910,911,5,33,0,0,911,913,7,0,0,0,912,914,3,670,335,0,913,912,1,0,0,0,913,914,1,0,0,0,914,915,1,0,0,0,915,919,3,612,306,0,916,918,3,56,28,0,917,916,1,0,0,0,918,921,1,0,0,0,919,917,1,0,0,0,919,920,1,0,0,0,920,23,1,0,0,0,921,919,1,0,0,0,922,924,5,33,0,0,923,925,3,62,31,0,924,923,1,0,0,0,924,925,1,0,0,0,925,926,1,0,0,0,926,928,5,415,0,0,927,929,3,670,335,0,928,927,1,0,0,0,928,929,1,0,0,0,929,930,1,0,0,0,930,931,3,552,276,0,931,932,5,118,0,0,932,933,5,605,0,0,933,940,3,64,32,0,934,935,5,118,0,0,935,937,5,371,0,0,936,938,5,114,0,0,937,936,1,0,0,0,937,938,1,0,0,0,938,939,1,0,0,0,939,941,5,561,0,0,940,934,1,0,0,0,940,941,1,0,0,0,941,943,1,0,0,0,942,944,3,72,36,0,943,942,1,0,0,0,943,944,1,0,0,0,944,947,1,0,0,0,945,946,5,368,0,0,946,948,5,1148,0,0,947,945,1,0,0,0,947,948,1,0,0,0,948,949,1,0,0,0,949,950,5,399,0,0,950,951,3,388,194,0,951,25,1,0,0,0,952,954,5,33,0,0,953,955,7,1,0,0,954,953,1,0,0,0,954,955,1,0,0,0,955,957,1,0,0,0,956,958,7,2,0,0,957,956,1,0,0,0,957,958,1,0,0,0,958,959,1,0,0,0,959,960,5,81,0,0,960,962,3,612,306,0,961,963,3,74,37,0,962,961,1,0,0,0,962,963,1,0,0,0,963,964,1,0,0,0,964,965,5,118,0,0,965,966,3,554,277,0,966,970,3,650,325,0,967,969,3,76,38,0,968,967,1,0,0,0,969,972,1,0,0,0,970,968,1,0,0,0,970,971,1,0,0,0,971,985,1,0,0,0,972,970,1,0,0,0,973,975,5,336,0,0,974,976,5,1124,0,0,975,974,1,0,0,0,975,976,1,0,0,0,976,977,1,0,0,0,977,984,7,3,0,0,978,980,5,103,0,0,979,981,5,1124,0,0,980,979,1,0,0,0,980,981,1,0,0,0,981,982,1,0,0,0,982,984,7,4,0,0,983,973,1,0,0,0,983,978,1,0,0,0,984,987,1,0,0,0,985,983,1,0,0,0,985,986,1,0,0,0,986,27,1,0,0,0,987,985,1,0,0,0,988,989,5,33,0,0,989,990,5,475,0,0,990,991,5,73,0,0,991,992,3,612,306,0,992,993,5,5,0,0,993,994,5,659,0,0,994,1e3,5,1148,0,0,995,997,5,453,0,0,996,998,5,1124,0,0,997,996,1,0,0,0,997,998,1,0,0,0,998,999,1,0,0,0,999,1001,3,620,310,0,1e3,995,1,0,0,0,1e3,1001,1,0,0,0,1001,1007,1,0,0,0,1002,1004,5,660,0,0,1003,1005,5,1124,0,0,1004,1003,1,0,0,0,1004,1005,1,0,0,0,1005,1006,1,0,0,0,1006,1008,3,620,310,0,1007,1002,1,0,0,0,1007,1008,1,0,0,0,1008,1014,1,0,0,0,1009,1011,5,572,0,0,1010,1012,5,1124,0,0,1011,1010,1,0,0,0,1011,1012,1,0,0,0,1012,1013,1,0,0,0,1013,1015,3,620,310,0,1014,1009,1,0,0,0,1014,1015,1,0,0,0,1015,1021,1,0,0,0,1016,1018,5,528,0,0,1017,1019,5,1124,0,0,1018,1017,1,0,0,0,1018,1019,1,0,0,0,1019,1020,1,0,0,0,1020,1022,3,612,306,0,1021,1016,1,0,0,0,1021,1022,1,0,0,0,1022,1024,1,0,0,0,1023,1025,5,674,0,0,1024,1023,1,0,0,0,1024,1025,1,0,0,0,1025,1031,1,0,0,0,1026,1028,5,368,0,0,1027,1029,5,1124,0,0,1028,1027,1,0,0,0,1028,1029,1,0,0,0,1029,1030,1,0,0,0,1030,1032,5,1148,0,0,1031,1026,1,0,0,0,1031,1032,1,0,0,0,1032,1033,1,0,0,0,1033,1035,5,409,0,0,1034,1036,5,1124,0,0,1035,1034,1,0,0,0,1035,1036,1,0,0,0,1036,1037,1,0,0,0,1037,1038,3,600,300,0,1038,29,1,0,0,0,1039,1041,5,33,0,0,1040,1042,3,62,31,0,1041,1040,1,0,0,0,1041,1042,1,0,0,0,1042,1043,1,0,0,0,1043,1044,5,131,0,0,1044,1045,3,552,276,0,1045,1047,5,1133,0,0,1046,1048,3,78,39,0,1047,1046,1,0,0,0,1047,1048,1,0,0,0,1048,1053,1,0,0,0,1049,1050,5,1135,0,0,1050,1052,3,78,39,0,1051,1049,1,0,0,0,1052,1055,1,0,0,0,1053,1051,1,0,0,0,1053,1054,1,0,0,0,1054,1056,1,0,0,0,1055,1053,1,0,0,0,1056,1060,5,1134,0,0,1057,1059,3,82,41,0,1058,1057,1,0,0,0,1059,1062,1,0,0,0,1060,1058,1,0,0,0,1060,1061,1,0,0,0,1061,1063,1,0,0,0,1062,1060,1,0,0,0,1063,1064,3,388,194,0,1064,31,1,0,0,0,1065,1067,5,33,0,0,1066,1068,3,62,31,0,1067,1066,1,0,0,0,1067,1068,1,0,0,0,1068,1070,1,0,0,0,1069,1071,5,335,0,0,1070,1069,1,0,0,0,1070,1071,1,0,0,0,1071,1072,1,0,0,0,1072,1074,5,437,0,0,1073,1075,3,670,335,0,1074,1073,1,0,0,0,1074,1075,1,0,0,0,1075,1076,1,0,0,0,1076,1077,3,552,276,0,1077,1079,5,1133,0,0,1078,1080,3,80,40,0,1079,1078,1,0,0,0,1079,1080,1,0,0,0,1080,1085,1,0,0,0,1081,1082,5,1135,0,0,1082,1084,3,80,40,0,1083,1081,1,0,0,0,1084,1087,1,0,0,0,1085,1083,1,0,0,0,1085,1086,1,0,0,0,1086,1088,1,0,0,0,1087,1085,1,0,0,0,1088,1089,5,1134,0,0,1089,1090,5,594,0,0,1090,1094,3,632,316,0,1091,1093,3,82,41,0,1092,1091,1,0,0,0,1093,1096,1,0,0,0,1094,1092,1,0,0,0,1094,1095,1,0,0,0,1095,1099,1,0,0,0,1096,1094,1,0,0,0,1097,1100,3,388,194,0,1098,1100,3,404,202,0,1099,1097,1,0,0,0,1099,1098,1,0,0,0,1100,33,1,0,0,0,1101,1102,5,33,0,0,1102,1104,5,596,0,0,1103,1105,3,670,335,0,1104,1103,1,0,0,0,1104,1105,1,0,0,0,1105,1106,1,0,0,0,1106,1107,3,562,281,0,1107,35,1,0,0,0,1108,1109,5,33,0,0,1109,1110,5,608,0,0,1110,1111,3,612,306,0,1111,1112,5,67,0,0,1112,1113,5,388,0,0,1113,1114,5,679,0,0,1114,1115,7,5,0,0,1115,1116,5,541,0,0,1116,1117,5,1133,0,0,1117,1122,3,84,42,0,1118,1119,5,1135,0,0,1119,1121,3,84,42,0,1120,1118,1,0,0,0,1121,1124,1,0,0,0,1122,1120,1,0,0,0,1122,1123,1,0,0,0,1123,1125,1,0,0,0,1124,1122,1,0,0,0,1125,1126,5,1134,0,0,1126,37,1,0,0,0,1127,1129,5,33,0,0,1128,1130,5,649,0,0,1129,1128,1,0,0,0,1129,1130,1,0,0,0,1130,1131,1,0,0,0,1131,1133,5,172,0,0,1132,1134,3,670,335,0,1133,1132,1,0,0,0,1133,1134,1,0,0,0,1134,1135,1,0,0,0,1135,1143,3,554,277,0,1136,1137,5,98,0,0,1137,1144,3,554,277,0,1138,1139,5,1133,0,0,1139,1140,5,98,0,0,1140,1141,3,554,277,0,1141,1142,5,1134,0,0,1142,1144,1,0,0,0,1143,1136,1,0,0,0,1143,1138,1,0,0,0,1144,1206,1,0,0,0,1145,1147,5,33,0,0,1146,1148,5,649,0,0,1147,1146,1,0,0,0,1147,1148,1,0,0,0,1148,1149,1,0,0,0,1149,1151,5,172,0,0,1150,1152,3,670,335,0,1151,1150,1,0,0,0,1151,1152,1,0,0,0,1152,1153,1,0,0,0,1153,1155,3,554,277,0,1154,1156,3,86,43,0,1155,1154,1,0,0,0,1155,1156,1,0,0,0,1156,1167,1,0,0,0,1157,1164,3,104,52,0,1158,1160,5,1135,0,0,1159,1158,1,0,0,0,1159,1160,1,0,0,0,1160,1161,1,0,0,0,1161,1163,3,104,52,0,1162,1159,1,0,0,0,1163,1166,1,0,0,0,1164,1162,1,0,0,0,1164,1165,1,0,0,0,1165,1168,1,0,0,0,1166,1164,1,0,0,0,1167,1157,1,0,0,0,1167,1168,1,0,0,0,1168,1170,1,0,0,0,1169,1171,3,110,55,0,1170,1169,1,0,0,0,1170,1171,1,0,0,0,1171,1173,1,0,0,0,1172,1174,7,6,0,0,1173,1172,1,0,0,0,1173,1174,1,0,0,0,1174,1176,1,0,0,0,1175,1177,5,12,0,0,1176,1175,1,0,0,0,1176,1177,1,0,0,0,1177,1178,1,0,0,0,1178,1179,3,198,99,0,1179,1206,1,0,0,0,1180,1182,5,33,0,0,1181,1183,5,649,0,0,1182,1181,1,0,0,0,1182,1183,1,0,0,0,1183,1184,1,0,0,0,1184,1186,5,172,0,0,1185,1187,3,670,335,0,1186,1185,1,0,0,0,1186,1187,1,0,0,0,1187,1188,1,0,0,0,1188,1189,3,554,277,0,1189,1200,3,86,43,0,1190,1197,3,104,52,0,1191,1193,5,1135,0,0,1192,1191,1,0,0,0,1192,1193,1,0,0,0,1193,1194,1,0,0,0,1194,1196,3,104,52,0,1195,1192,1,0,0,0,1196,1199,1,0,0,0,1197,1195,1,0,0,0,1197,1198,1,0,0,0,1198,1201,1,0,0,0,1199,1197,1,0,0,0,1200,1190,1,0,0,0,1200,1201,1,0,0,0,1201,1203,1,0,0,0,1202,1204,3,110,55,0,1203,1202,1,0,0,0,1203,1204,1,0,0,0,1204,1206,1,0,0,0,1205,1127,1,0,0,0,1205,1145,1,0,0,0,1205,1180,1,0,0,0,1206,39,1,0,0,0,1207,1208,5,33,0,0,1208,1209,5,647,0,0,1209,1210,3,612,306,0,1210,1211,5,5,0,0,1211,1212,5,389,0,0,1212,1216,5,1148,0,0,1213,1214,5,428,0,0,1214,1215,5,1124,0,0,1215,1217,3,620,310,0,1216,1213,1,0,0,0,1216,1217,1,0,0,0,1217,1223,1,0,0,0,1218,1220,5,409,0,0,1219,1221,5,1124,0,0,1220,1219,1,0,0,0,1220,1221,1,0,0,0,1221,1222,1,0,0,0,1222,1224,3,600,300,0,1223,1218,1,0,0,0,1223,1224,1,0,0,0,1224,41,1,0,0,0,1225,1226,5,33,0,0,1226,1227,5,647,0,0,1227,1228,3,612,306,0,1228,1229,5,5,0,0,1229,1230,5,389,0,0,1230,1231,5,1148,0,0,1231,1232,5,186,0,0,1232,1233,5,475,0,0,1233,1234,5,73,0,0,1234,1240,3,612,306,0,1235,1237,5,423,0,0,1236,1238,5,1124,0,0,1237,1236,1,0,0,0,1237,1238,1,0,0,0,1238,1239,1,0,0,0,1239,1241,3,620,310,0,1240,1235,1,0,0,0,1240,1241,1,0,0,0,1241,1247,1,0,0,0,1242,1244,5,453,0,0,1243,1245,5,1124,0,0,1244,1243,1,0,0,0,1244,1245,1,0,0,0,1245,1246,1,0,0,0,1246,1248,3,620,310,0,1247,1242,1,0,0,0,1247,1248,1,0,0,0,1248,1254,1,0,0,0,1249,1251,5,341,0,0,1250,1252,5,1124,0,0,1251,1250,1,0,0,0,1251,1252,1,0,0,0,1252,1253,1,0,0,0,1253,1255,3,620,310,0,1254,1249,1,0,0,0,1254,1255,1,0,0,0,1255,1261,1,0,0,0,1256,1258,5,501,0,0,1257,1259,5,1124,0,0,1258,1257,1,0,0,0,1258,1259,1,0,0,0,1259,1260,1,0,0,0,1260,1262,3,620,310,0,1261,1256,1,0,0,0,1261,1262,1,0,0,0,1262,1268,1,0,0,0,1263,1265,5,528,0,0,1264,1266,5,1124,0,0,1265,1264,1,0,0,0,1265,1266,1,0,0,0,1266,1267,1,0,0,0,1267,1269,3,612,306,0,1268,1263,1,0,0,0,1268,1269,1,0,0,0,1269,1271,1,0,0,0,1270,1272,5,674,0,0,1271,1270,1,0,0,0,1271,1272,1,0,0,0,1272,1278,1,0,0,0,1273,1275,5,368,0,0,1274,1276,5,1124,0,0,1275,1274,1,0,0,0,1275,1276,1,0,0,0,1276,1277,1,0,0,0,1277,1279,5,1148,0,0,1278,1273,1,0,0,0,1278,1279,1,0,0,0,1279,1280,1,0,0,0,1280,1282,5,409,0,0,1281,1283,5,1124,0,0,1282,1281,1,0,0,0,1282,1283,1,0,0,0,1283,1284,1,0,0,0,1284,1285,3,600,300,0,1285,43,1,0,0,0,1286,1288,5,33,0,0,1287,1289,3,62,31,0,1288,1287,1,0,0,0,1288,1289,1,0,0,0,1289,1290,1,0,0,0,1290,1292,5,177,0,0,1291,1293,3,670,335,0,1292,1291,1,0,0,0,1292,1293,1,0,0,0,1293,1294,1,0,0,0,1294,1295,3,552,276,0,1295,1296,7,7,0,0,1296,1297,7,8,0,0,1297,1298,5,118,0,0,1298,1299,3,554,277,0,1299,1300,5,65,0,0,1300,1301,5,52,0,0,1301,1304,5,600,0,0,1302,1303,7,9,0,0,1303,1305,3,552,276,0,1304,1302,1,0,0,0,1304,1305,1,0,0,0,1305,1306,1,0,0,0,1306,1307,3,388,194,0,1307,45,1,0,0,0,1308,1310,5,192,0,0,1309,1311,5,571,0,0,1310,1309,1,0,0,0,1310,1311,1,0,0,0,1311,1312,1,0,0,0,1312,1313,3,48,24,0,1313,47,1,0,0,0,1314,1326,3,50,25,0,1315,1316,5,1133,0,0,1316,1321,3,52,26,0,1317,1318,5,1135,0,0,1318,1320,3,52,26,0,1319,1317,1,0,0,0,1320,1323,1,0,0,0,1321,1319,1,0,0,0,1321,1322,1,0,0,0,1322,1324,1,0,0,0,1323,1321,1,0,0,0,1324,1325,5,1134,0,0,1325,1327,1,0,0,0,1326,1315,1,0,0,0,1326,1327,1,0,0,0,1327,1328,1,0,0,0,1328,1329,5,12,0,0,1329,1330,5,1133,0,0,1330,1331,3,8,4,0,1331,1334,5,1134,0,0,1332,1333,5,1135,0,0,1333,1335,3,48,24,0,1334,1332,1,0,0,0,1334,1335,1,0,0,0,1335,49,1,0,0,0,1336,1337,3,612,306,0,1337,51,1,0,0,0,1338,1339,3,612,306,0,1339,53,1,0,0,0,1340,1342,5,33,0,0,1341,1343,3,672,336,0,1342,1341,1,0,0,0,1342,1343,1,0,0,0,1343,1347,1,0,0,0,1344,1345,5,336,0,0,1345,1346,5,1124,0,0,1346,1348,7,10,0,0,1347,1344,1,0,0,0,1347,1348,1,0,0,0,1348,1350,1,0,0,0,1349,1351,3,62,31,0,1350,1349,1,0,0,0,1350,1351,1,0,0,0,1351,1355,1,0,0,0,1352,1353,5,160,0,0,1353,1354,5,606,0,0,1354,1356,7,11,0,0,1355,1352,1,0,0,0,1355,1356,1,0,0,0,1356,1357,1,0,0,0,1357,1358,5,671,0,0,1358,1363,3,552,276,0,1359,1360,5,1133,0,0,1360,1361,3,644,322,0,1361,1362,5,1134,0,0,1362,1364,1,0,0,0,1363,1359,1,0,0,0,1363,1364,1,0,0,0,1364,1365,1,0,0,0,1365,1385,5,12,0,0,1366,1368,5,1133,0,0,1367,1369,3,46,23,0,1368,1367,1,0,0,0,1368,1369,1,0,0,0,1369,1370,1,0,0,0,1370,1371,3,198,99,0,1371,1372,5,1134,0,0,1372,1386,1,0,0,0,1373,1375,3,46,23,0,1374,1373,1,0,0,0,1374,1375,1,0,0,0,1375,1376,1,0,0,0,1376,1383,3,198,99,0,1377,1379,5,192,0,0,1378,1380,7,12,0,0,1379,1378,1,0,0,0,1379,1380,1,0,0,0,1380,1381,1,0,0,0,1381,1382,5,26,0,0,1382,1384,5,120,0,0,1383,1377,1,0,0,0,1383,1384,1,0,0,0,1384,1386,1,0,0,0,1385,1366,1,0,0,0,1385,1374,1,0,0,0,1386,55,1,0,0,0,1387,1389,5,42,0,0,1388,1387,1,0,0,0,1388,1389,1,0,0,0,1389,1390,1,0,0,0,1390,1392,3,58,29,0,1391,1393,5,1124,0,0,1392,1391,1,0,0,0,1392,1393,1,0,0,0,1393,1396,1,0,0,0,1394,1397,3,596,298,0,1395,1397,5,42,0,0,1396,1394,1,0,0,0,1396,1395,1,0,0,0,1397,1421,1,0,0,0,1398,1400,5,42,0,0,1399,1398,1,0,0,0,1399,1400,1,0,0,0,1400,1401,1,0,0,0,1401,1403,5,27,0,0,1402,1404,5,1124,0,0,1403,1402,1,0,0,0,1403,1404,1,0,0,0,1404,1405,1,0,0,0,1405,1421,3,598,299,0,1406,1408,5,42,0,0,1407,1406,1,0,0,0,1407,1408,1,0,0,0,1408,1409,1,0,0,0,1409,1411,5,405,0,0,1410,1412,5,1124,0,0,1411,1410,1,0,0,0,1411,1412,1,0,0,0,1412,1413,1,0,0,0,1413,1421,5,1148,0,0,1414,1415,5,134,0,0,1415,1417,5,538,0,0,1416,1418,5,1124,0,0,1417,1416,1,0,0,0,1417,1418,1,0,0,0,1418,1419,1,0,0,0,1419,1421,7,13,0,0,1420,1388,1,0,0,0,1420,1399,1,0,0,0,1420,1407,1,0,0,0,1420,1414,1,0,0,0,1421,57,1,0,0,0,1422,1423,5,25,0,0,1423,1428,5,153,0,0,1424,1428,5,841,0,0,1425,1426,5,222,0,0,1426,1428,5,153,0,0,1427,1422,1,0,0,0,1427,1424,1,0,0,0,1427,1425,1,0,0,0,1428,59,1,0,0,0,1429,1432,5,37,0,0,1430,1431,5,1133,0,0,1431,1433,5,1134,0,0,1432,1430,1,0,0,0,1432,1433,1,0,0,0,1433,61,1,0,0,0,1434,1435,5,392,0,0,1435,1438,5,1124,0,0,1436,1439,3,592,296,0,1437,1439,3,60,30,0,1438,1436,1,0,0,0,1438,1437,1,0,0,0,1439,63,1,0,0,0,1440,1441,5,338,0,0,1441,1445,3,66,33,0,1442,1444,3,68,34,0,1443,1442,1,0,0,0,1444,1447,1,0,0,0,1445,1443,1,0,0,0,1445,1446,1,0,0,0,1446,1475,1,0,0,0,1447,1445,1,0,0,0,1448,1451,5,417,0,0,1449,1452,3,618,309,0,1450,1452,3,716,358,0,1451,1449,1,0,0,0,1451,1450,1,0,0,0,1452,1453,1,0,0,0,1453,1462,3,70,35,0,1454,1455,5,630,0,0,1455,1459,3,66,33,0,1456,1458,3,68,34,0,1457,1456,1,0,0,0,1458,1461,1,0,0,0,1459,1457,1,0,0,0,1459,1460,1,0,0,0,1460,1463,1,0,0,0,1461,1459,1,0,0,0,1462,1454,1,0,0,0,1462,1463,1,0,0,0,1463,1472,1,0,0,0,1464,1465,5,408,0,0,1465,1469,3,66,33,0,1466,1468,3,68,34,0,1467,1466,1,0,0,0,1468,1471,1,0,0,0,1469,1467,1,0,0,0,1469,1470,1,0,0,0,1470,1473,1,0,0,0,1471,1469,1,0,0,0,1472,1464,1,0,0,0,1472,1473,1,0,0,0,1473,1475,1,0,0,0,1474,1440,1,0,0,0,1474,1448,1,0,0,0,1475,65,1,0,0,0,1476,1481,5,315,0,0,1477,1481,3,622,311,0,1478,1481,3,618,309,0,1479,1481,3,716,358,0,1480,1476,1,0,0,0,1480,1477,1,0,0,0,1480,1478,1,0,0,0,1480,1479,1,0,0,0,1481,67,1,0,0,0,1482,1483,5,1120,0,0,1483,1486,5,86,0,0,1484,1487,3,618,309,0,1485,1487,3,716,358,0,1486,1484,1,0,0,0,1486,1485,1,0,0,0,1487,1488,1,0,0,0,1488,1489,3,70,35,0,1489,69,1,0,0,0,1490,1504,3,742,371,0,1491,1504,5,221,0,0,1492,1504,5,240,0,0,1493,1504,5,241,0,0,1494,1504,5,242,0,0,1495,1504,5,243,0,0,1496,1504,5,244,0,0,1497,1504,5,245,0,0,1498,1504,5,246,0,0,1499,1504,5,247,0,0,1500,1504,5,248,0,0,1501,1504,5,249,0,0,1502,1504,5,250,0,0,1503,1490,1,0,0,0,1503,1491,1,0,0,0,1503,1492,1,0,0,0,1503,1493,1,0,0,0,1503,1494,1,0,0,0,1503,1495,1,0,0,0,1503,1496,1,0,0,0,1503,1497,1,0,0,0,1503,1498,1,0,0,0,1503,1499,1,0,0,0,1503,1500,1,0,0,0,1503,1501,1,0,0,0,1503,1502,1,0,0,0,1504,71,1,0,0,0,1505,1511,5,403,0,0,1506,1511,5,396,0,0,1507,1508,5,396,0,0,1508,1509,5,118,0,0,1509,1511,5,614,0,0,1510,1505,1,0,0,0,1510,1506,1,0,0,0,1510,1507,1,0,0,0,1511,73,1,0,0,0,1512,1513,5,187,0,0,1513,1514,7,14,0,0,1514,75,1,0,0,0,1515,1517,5,467,0,0,1516,1518,5,1124,0,0,1517,1516,1,0,0,0,1517,1518,1,0,0,0,1518,1519,1,0,0,0,1519,1538,3,620,310,0,1520,1538,3,74,37,0,1521,1522,5,192,0,0,1522,1523,5,547,0,0,1523,1538,3,612,306,0,1524,1525,5,368,0,0,1525,1538,5,1148,0,0,1526,1538,7,15,0,0,1527,1529,5,875,0,0,1528,1530,5,1124,0,0,1529,1528,1,0,0,0,1529,1530,1,0,0,0,1530,1531,1,0,0,0,1531,1538,5,1148,0,0,1532,1534,5,1e3,0,0,1533,1535,5,1124,0,0,1534,1533,1,0,0,0,1534,1535,1,0,0,0,1535,1536,1,0,0,0,1536,1538,5,1148,0,0,1537,1515,1,0,0,0,1537,1520,1,0,0,0,1537,1521,1,0,0,0,1537,1524,1,0,0,0,1537,1526,1,0,0,0,1537,1527,1,0,0,0,1537,1532,1,0,0,0,1538,77,1,0,0,0,1539,1541,7,16,0,0,1540,1539,1,0,0,0,1540,1541,1,0,0,0,1541,1542,1,0,0,0,1542,1543,3,612,306,0,1543,1544,3,632,316,0,1544,79,1,0,0,0,1545,1546,3,612,306,0,1546,1547,3,632,316,0,1547,81,1,0,0,0,1548,1549,5,368,0,0,1549,1572,5,1148,0,0,1550,1551,5,468,0,0,1551,1572,5,160,0,0,1552,1554,5,114,0,0,1553,1552,1,0,0,0,1553,1554,1,0,0,0,1554,1555,1,0,0,0,1555,1572,5,47,0,0,1556,1557,5,381,0,0,1557,1567,5,160,0,0,1558,1559,5,521,0,0,1559,1567,5,160,0,0,1560,1561,5,135,0,0,1561,1562,5,160,0,0,1562,1567,5,388,0,0,1563,1564,5,112,0,0,1564,1565,5,160,0,0,1565,1567,5,388,0,0,1566,1556,1,0,0,0,1566,1558,1,0,0,0,1566,1560,1,0,0,0,1566,1563,1,0,0,0,1567,1572,1,0,0,0,1568,1569,5,160,0,0,1569,1570,5,606,0,0,1570,1572,7,11,0,0,1571,1548,1,0,0,0,1571,1550,1,0,0,0,1571,1553,1,0,0,0,1571,1566,1,0,0,0,1571,1568,1,0,0,0,1572,83,1,0,0,0,1573,1574,5,446,0,0,1574,1588,5,1148,0,0,1575,1576,5,39,0,0,1576,1588,5,1148,0,0,1577,1578,5,665,0,0,1578,1588,5,1148,0,0,1579,1580,5,551,0,0,1580,1588,5,1148,0,0,1581,1582,5,617,0,0,1582,1588,5,1148,0,0,1583,1584,5,542,0,0,1584,1588,5,1148,0,0,1585,1586,5,557,0,0,1586,1588,3,618,309,0,1587,1573,1,0,0,0,1587,1575,1,0,0,0,1587,1577,1,0,0,0,1587,1579,1,0,0,0,1587,1581,1,0,0,0,1587,1583,1,0,0,0,1587,1585,1,0,0,0,1588,85,1,0,0,0,1589,1590,5,1133,0,0,1590,1595,3,88,44,0,1591,1592,5,1135,0,0,1592,1594,3,88,44,0,1593,1591,1,0,0,0,1594,1597,1,0,0,0,1595,1593,1,0,0,0,1595,1596,1,0,0,0,1596,1598,1,0,0,0,1597,1595,1,0,0,0,1598,1599,5,1134,0,0,1599,87,1,0,0,0,1600,1601,3,570,285,0,1601,1602,3,90,45,0,1602,1612,1,0,0,0,1603,1605,3,94,47,0,1604,1606,5,114,0,0,1605,1604,1,0,0,0,1605,1606,1,0,0,0,1606,1608,1,0,0,0,1607,1609,5,57,0,0,1608,1607,1,0,0,0,1608,1609,1,0,0,0,1609,1612,1,0,0,0,1610,1612,3,102,51,0,1611,1600,1,0,0,0,1611,1603,1,0,0,0,1611,1610,1,0,0,0,1612,89,1,0,0,0,1613,1617,3,632,316,0,1614,1616,3,92,46,0,1615,1614,1,0,0,0,1616,1619,1,0,0,0,1617,1615,1,0,0,0,1617,1618,1,0,0,0,1618,1621,1,0,0,0,1619,1617,1,0,0,0,1620,1622,5,114,0,0,1621,1620,1,0,0,0,1621,1622,1,0,0,0,1622,1624,1,0,0,0,1623,1625,5,57,0,0,1624,1623,1,0,0,0,1624,1625,1,0,0,0,1625,91,1,0,0,0,1626,1680,3,628,314,0,1627,1628,5,42,0,0,1628,1680,3,662,331,0,1629,1680,5,673,0,0,1630,1680,5,459,0,0,1631,1636,5,342,0,0,1632,1633,5,118,0,0,1633,1634,5,184,0,0,1634,1636,3,664,332,0,1635,1631,1,0,0,0,1635,1632,1,0,0,0,1636,1680,1,0,0,0,1637,1639,5,130,0,0,1638,1637,1,0,0,0,1638,1639,1,0,0,0,1639,1640,1,0,0,0,1640,1680,5,91,0,0,1641,1643,5,181,0,0,1642,1644,5,91,0,0,1643,1642,1,0,0,0,1643,1644,1,0,0,0,1644,1680,1,0,0,0,1645,1646,5,368,0,0,1646,1680,5,1148,0,0,1647,1648,5,366,0,0,1648,1680,7,17,0,0,1649,1650,5,636,0,0,1650,1680,7,18,0,0,1651,1680,3,96,48,0,1652,1653,5,27,0,0,1653,1680,3,598,299,0,1654,1655,5,70,0,0,1655,1657,5,8,0,0,1656,1654,1,0,0,0,1656,1657,1,0,0,0,1657,1658,1,0,0,0,1658,1659,5,12,0,0,1659,1660,5,1133,0,0,1660,1661,3,716,358,0,1661,1663,5,1134,0,0,1662,1664,7,19,0,0,1663,1662,1,0,0,0,1663,1664,1,0,0,0,1664,1680,1,0,0,0,1665,1666,5,239,0,0,1666,1667,5,42,0,0,1667,1680,5,669,0,0,1668,1670,5,30,0,0,1669,1671,3,612,306,0,1670,1669,1,0,0,0,1670,1671,1,0,0,0,1671,1673,1,0,0,0,1672,1668,1,0,0,0,1672,1673,1,0,0,0,1673,1674,1,0,0,0,1674,1675,5,26,0,0,1675,1676,5,1133,0,0,1676,1677,3,716,358,0,1677,1678,5,1134,0,0,1678,1680,1,0,0,0,1679,1626,1,0,0,0,1679,1627,1,0,0,0,1679,1629,1,0,0,0,1679,1630,1,0,0,0,1679,1635,1,0,0,0,1679,1638,1,0,0,0,1679,1641,1,0,0,0,1679,1645,1,0,0,0,1679,1647,1,0,0,0,1679,1649,1,0,0,0,1679,1651,1,0,0,0,1679,1652,1,0,0,0,1679,1656,1,0,0,0,1679,1665,1,0,0,0,1679,1672,1,0,0,0,1680,93,1,0,0,0,1681,1683,5,30,0,0,1682,1684,3,612,306,0,1683,1682,1,0,0,0,1683,1684,1,0,0,0,1684,1686,1,0,0,0,1685,1681,1,0,0,0,1685,1686,1,0,0,0,1686,1687,1,0,0,0,1687,1688,5,130,0,0,1688,1690,5,91,0,0,1689,1691,3,612,306,0,1690,1689,1,0,0,0,1690,1691,1,0,0,0,1691,1693,1,0,0,0,1692,1694,3,74,37,0,1693,1692,1,0,0,0,1693,1694,1,0,0,0,1694,1695,1,0,0,0,1695,1699,3,650,325,0,1696,1698,3,76,38,0,1697,1696,1,0,0,0,1698,1701,1,0,0,0,1699,1697,1,0,0,0,1699,1700,1,0,0,0,1700,1751,1,0,0,0,1701,1699,1,0,0,0,1702,1704,5,30,0,0,1703,1705,3,612,306,0,1704,1703,1,0,0,0,1704,1705,1,0,0,0,1705,1707,1,0,0,0,1706,1702,1,0,0,0,1706,1707,1,0,0,0,1707,1708,1,0,0,0,1708,1710,5,181,0,0,1709,1711,7,20,0,0,1710,1709,1,0,0,0,1710,1711,1,0,0,0,1711,1713,1,0,0,0,1712,1714,3,612,306,0,1713,1712,1,0,0,0,1713,1714,1,0,0,0,1714,1716,1,0,0,0,1715,1717,3,74,37,0,1716,1715,1,0,0,0,1716,1717,1,0,0,0,1717,1718,1,0,0,0,1718,1722,3,650,325,0,1719,1721,3,76,38,0,1720,1719,1,0,0,0,1721,1724,1,0,0,0,1722,1720,1,0,0,0,1722,1723,1,0,0,0,1723,1751,1,0,0,0,1724,1722,1,0,0,0,1725,1727,5,30,0,0,1726,1728,3,612,306,0,1727,1726,1,0,0,0,1727,1728,1,0,0,0,1728,1730,1,0,0,0,1729,1725,1,0,0,0,1729,1730,1,0,0,0,1730,1731,1,0,0,0,1731,1732,5,67,0,0,1732,1734,5,91,0,0,1733,1735,3,612,306,0,1734,1733,1,0,0,0,1734,1735,1,0,0,0,1735,1736,1,0,0,0,1736,1737,3,650,325,0,1737,1738,3,96,48,0,1738,1751,1,0,0,0,1739,1741,5,30,0,0,1740,1742,3,612,306,0,1741,1740,1,0,0,0,1741,1742,1,0,0,0,1742,1744,1,0,0,0,1743,1739,1,0,0,0,1743,1744,1,0,0,0,1744,1745,1,0,0,0,1745,1746,5,26,0,0,1746,1747,5,1133,0,0,1747,1748,3,716,358,0,1748,1749,5,1134,0,0,1749,1751,1,0,0,0,1750,1685,1,0,0,0,1750,1706,1,0,0,0,1750,1729,1,0,0,0,1750,1743,1,0,0,0,1751,95,1,0,0,0,1752,1753,5,136,0,0,1753,1755,3,554,277,0,1754,1756,3,650,325,0,1755,1754,1,0,0,0,1755,1756,1,0,0,0,1756,1759,1,0,0,0,1757,1758,5,109,0,0,1758,1760,7,21,0,0,1759,1757,1,0,0,0,1759,1760,1,0,0,0,1760,1762,1,0,0,0,1761,1763,3,98,49,0,1762,1761,1,0,0,0,1762,1763,1,0,0,0,1763,97,1,0,0,0,1764,1765,5,118,0,0,1765,1766,5,44,0,0,1766,1770,3,100,50,0,1767,1768,5,118,0,0,1768,1769,5,184,0,0,1769,1771,3,100,50,0,1770,1767,1,0,0,0,1770,1771,1,0,0,0,1771,1781,1,0,0,0,1772,1773,5,118,0,0,1773,1774,5,184,0,0,1774,1778,3,100,50,0,1775,1776,5,118,0,0,1776,1777,5,44,0,0,1777,1779,3,100,50,0,1778,1775,1,0,0,0,1778,1779,1,0,0,0,1779,1781,1,0,0,0,1780,1764,1,0,0,0,1780,1772,1,0,0,0,1781,99,1,0,0,0,1782,1791,5,144,0,0,1783,1791,5,21,0,0,1784,1785,5,153,0,0,1785,1791,5,116,0,0,1786,1787,5,521,0,0,1787,1791,5,333,0,0,1788,1789,5,153,0,0,1789,1791,5,42,0,0,1790,1782,1,0,0,0,1790,1783,1,0,0,0,1790,1784,1,0,0,0,1790,1786,1,0,0,0,1790,1788,1,0,0,0,1791,101,1,0,0,0,1792,1794,7,20,0,0,1793,1795,3,612,306,0,1794,1793,1,0,0,0,1794,1795,1,0,0,0,1795,1797,1,0,0,0,1796,1798,3,74,37,0,1797,1796,1,0,0,0,1797,1798,1,0,0,0,1798,1799,1,0,0,0,1799,1803,3,650,325,0,1800,1802,3,76,38,0,1801,1800,1,0,0,0,1802,1805,1,0,0,0,1803,1801,1,0,0,0,1803,1804,1,0,0,0,1804,1821,1,0,0,0,1805,1803,1,0,0,0,1806,1808,7,22,0,0,1807,1809,7,20,0,0,1808,1807,1,0,0,0,1808,1809,1,0,0,0,1809,1811,1,0,0,0,1810,1812,3,612,306,0,1811,1810,1,0,0,0,1811,1812,1,0,0,0,1812,1813,1,0,0,0,1813,1817,3,650,325,0,1814,1816,3,76,38,0,1815,1814,1,0,0,0,1816,1819,1,0,0,0,1817,1815,1,0,0,0,1817,1818,1,0,0,0,1818,1821,1,0,0,0,1819,1817,1,0,0,0,1820,1792,1,0,0,0,1820,1806,1,0,0,0,1821,103,1,0,0,0,1822,1824,5,409,0,0,1823,1825,5,1124,0,0,1824,1823,1,0,0,0,1824,1825,1,0,0,0,1825,1827,1,0,0,0,1826,1828,3,600,300,0,1827,1826,1,0,0,0,1827,1828,1,0,0,0,1828,2008,1,0,0,0,1829,1831,5,875,0,0,1830,1832,5,1124,0,0,1831,1830,1,0,0,0,1831,1832,1,0,0,0,1832,1833,1,0,0,0,1833,2008,5,1148,0,0,1834,1836,5,341,0,0,1835,1837,5,1124,0,0,1836,1835,1,0,0,0,1836,1837,1,0,0,0,1837,1838,1,0,0,0,1838,2008,3,618,309,0,1839,1841,5,342,0,0,1840,1842,5,1124,0,0,1841,1840,1,0,0,0,1841,1842,1,0,0,0,1842,1843,1,0,0,0,1843,2008,3,618,309,0,1844,1846,5,343,0,0,1845,1847,5,1124,0,0,1846,1845,1,0,0,0,1846,1847,1,0,0,0,1847,1848,1,0,0,0,1848,2008,3,618,309,0,1849,1851,5,42,0,0,1850,1849,1,0,0,0,1850,1851,1,0,0,0,1851,1852,1,0,0,0,1852,1854,3,58,29,0,1853,1855,5,1124,0,0,1854,1853,1,0,0,0,1854,1855,1,0,0,0,1855,1858,1,0,0,0,1856,1859,3,596,298,0,1857,1859,5,42,0,0,1858,1856,1,0,0,0,1858,1857,1,0,0,0,1859,2008,1,0,0,0,1860,1862,7,23,0,0,1861,1863,5,1124,0,0,1862,1861,1,0,0,0,1862,1863,1,0,0,0,1863,1864,1,0,0,0,1864,2008,7,24,0,0,1865,1867,5,42,0,0,1866,1865,1,0,0,0,1866,1867,1,0,0,0,1867,1868,1,0,0,0,1868,1870,5,27,0,0,1869,1871,5,1124,0,0,1870,1869,1,0,0,0,1870,1871,1,0,0,0,1871,1872,1,0,0,0,1872,2008,3,598,299,0,1873,1875,5,368,0,0,1874,1876,5,1124,0,0,1875,1874,1,0,0,0,1875,1876,1,0,0,0,1876,1877,1,0,0,0,1877,2008,5,1148,0,0,1878,1880,5,373,0,0,1879,1881,5,1124,0,0,1880,1879,1,0,0,0,1880,1881,1,0,0,0,1881,1882,1,0,0,0,1882,2008,7,25,0,0,1883,1885,5,376,0,0,1884,1886,5,1124,0,0,1885,1884,1,0,0,0,1885,1886,1,0,0,0,1886,1887,1,0,0,0,1887,2008,5,1148,0,0,1888,1889,7,26,0,0,1889,1891,5,395,0,0,1890,1892,5,1124,0,0,1891,1890,1,0,0,0,1891,1892,1,0,0,0,1892,1893,1,0,0,0,1893,2008,5,1148,0,0,1894,1896,5,393,0,0,1895,1897,5,1124,0,0,1896,1895,1,0,0,0,1896,1897,1,0,0,0,1897,1898,1,0,0,0,1898,2008,7,24,0,0,1899,1901,5,405,0,0,1900,1902,5,1124,0,0,1901,1900,1,0,0,0,1901,1902,1,0,0,0,1902,1903,1,0,0,0,1903,2008,5,1148,0,0,1904,1906,7,27,0,0,1905,1907,5,1124,0,0,1906,1905,1,0,0,0,1906,1907,1,0,0,0,1907,1908,1,0,0,0,1908,2008,7,24,0,0,1909,1911,7,28,0,0,1910,1912,5,1124,0,0,1911,1910,1,0,0,0,1911,1912,1,0,0,0,1912,1913,1,0,0,0,1913,2008,3,618,309,0,1914,1916,5,406,0,0,1915,1917,5,1124,0,0,1916,1915,1,0,0,0,1916,1917,1,0,0,0,1917,1918,1,0,0,0,1918,2008,3,618,309,0,1919,1920,5,81,0,0,1920,1922,5,395,0,0,1921,1923,5,1124,0,0,1922,1921,1,0,0,0,1922,1923,1,0,0,0,1923,1924,1,0,0,0,1924,2008,5,1148,0,0,1925,1927,5,455,0,0,1926,1928,5,1124,0,0,1927,1926,1,0,0,0,1927,1928,1,0,0,0,1928,1929,1,0,0,0,1929,2008,7,29,0,0,1930,1932,5,467,0,0,1931,1933,5,1124,0,0,1932,1931,1,0,0,0,1932,1933,1,0,0,0,1933,1934,1,0,0,0,1934,2008,3,620,310,0,1935,1937,5,500,0,0,1936,1938,5,1124,0,0,1937,1936,1,0,0,0,1937,1938,1,0,0,0,1938,1939,1,0,0,0,1939,2008,3,618,309,0,1940,1942,5,510,0,0,1941,1943,5,1124,0,0,1942,1941,1,0,0,0,1942,1943,1,0,0,0,1943,1944,1,0,0,0,1944,2008,3,618,309,0,1945,1947,5,543,0,0,1946,1948,5,1124,0,0,1947,1946,1,0,0,0,1947,1948,1,0,0,0,1948,1949,1,0,0,0,1949,2008,7,13,0,0,1950,1952,5,551,0,0,1951,1953,5,1124,0,0,1952,1951,1,0,0,0,1952,1953,1,0,0,0,1953,1954,1,0,0,0,1954,2008,5,1148,0,0,1955,1957,5,602,0,0,1956,1958,5,1124,0,0,1957,1956,1,0,0,0,1957,1958,1,0,0,0,1958,1959,1,0,0,0,1959,2008,7,30,0,0,1960,1961,5,629,0,0,1961,2008,5,653,0,0,1962,1964,5,1e3,0,0,1963,1965,5,1124,0,0,1964,1963,1,0,0,0,1964,1965,1,0,0,0,1965,1966,1,0,0,0,1966,2008,5,1148,0,0,1967,1969,5,631,0,0,1968,1970,5,1124,0,0,1969,1968,1,0,0,0,1969,1970,1,0,0,0,1970,1971,1,0,0,0,1971,2008,7,13,0,0,1972,1974,5,632,0,0,1973,1975,5,1124,0,0,1974,1973,1,0,0,0,1974,1975,1,0,0,0,1975,1976,1,0,0,0,1976,2008,7,13,0,0,1977,1979,5,633,0,0,1978,1980,5,1124,0,0,1979,1978,1,0,0,0,1979,1980,1,0,0,0,1980,1983,1,0,0,0,1981,1984,5,42,0,0,1982,1984,3,618,309,0,1983,1981,1,0,0,0,1983,1982,1,0,0,0,1984,2008,1,0,0,0,1985,1986,5,647,0,0,1986,1988,3,612,306,0,1987,1989,3,108,54,0,1988,1987,1,0,0,0,1988,1989,1,0,0,0,1989,2008,1,0,0,0,1990,1991,5,648,0,0,1991,1992,5,1124,0,0,1992,2008,3,106,53,0,1993,2008,3,108,54,0,1994,1996,5,654,0,0,1995,1997,5,1124,0,0,1996,1995,1,0,0,0,1996,1997,1,0,0,0,1997,1998,1,0,0,0,1998,2008,7,24,0,0,1999,2001,5,180,0,0,2e3,2002,5,1124,0,0,2001,2e3,1,0,0,0,2001,2002,1,0,0,0,2002,2003,1,0,0,0,2003,2004,5,1133,0,0,2004,2005,3,648,324,0,2005,2006,5,1134,0,0,2006,2008,1,0,0,0,2007,1822,1,0,0,0,2007,1829,1,0,0,0,2007,1834,1,0,0,0,2007,1839,1,0,0,0,2007,1844,1,0,0,0,2007,1850,1,0,0,0,2007,1860,1,0,0,0,2007,1866,1,0,0,0,2007,1873,1,0,0,0,2007,1878,1,0,0,0,2007,1883,1,0,0,0,2007,1888,1,0,0,0,2007,1894,1,0,0,0,2007,1899,1,0,0,0,2007,1904,1,0,0,0,2007,1909,1,0,0,0,2007,1914,1,0,0,0,2007,1919,1,0,0,0,2007,1925,1,0,0,0,2007,1930,1,0,0,0,2007,1935,1,0,0,0,2007,1940,1,0,0,0,2007,1945,1,0,0,0,2007,1950,1,0,0,0,2007,1955,1,0,0,0,2007,1960,1,0,0,0,2007,1962,1,0,0,0,2007,1967,1,0,0,0,2007,1972,1,0,0,0,2007,1977,1,0,0,0,2007,1985,1,0,0,0,2007,1990,1,0,0,0,2007,1993,1,0,0,0,2007,1994,1,0,0,0,2007,1999,1,0,0,0,2008,105,1,0,0,0,2009,2010,7,31,0,0,2010,107,1,0,0,0,2011,2012,5,636,0,0,2012,2013,7,18,0,0,2013,109,1,0,0,0,2014,2015,5,129,0,0,2015,2016,5,19,0,0,2016,2019,3,112,56,0,2017,2018,5,550,0,0,2018,2020,3,618,309,0,2019,2017,1,0,0,0,2019,2020,1,0,0,0,2020,2028,1,0,0,0,2021,2022,5,641,0,0,2022,2023,5,19,0,0,2023,2026,3,114,57,0,2024,2025,5,642,0,0,2025,2027,3,618,309,0,2026,2024,1,0,0,0,2026,2027,1,0,0,0,2027,2029,1,0,0,0,2028,2021,1,0,0,0,2028,2029,1,0,0,0,2029,2041,1,0,0,0,2030,2031,5,1133,0,0,2031,2036,3,116,58,0,2032,2033,5,1135,0,0,2033,2035,3,116,58,0,2034,2032,1,0,0,0,2035,2038,1,0,0,0,2036,2034,1,0,0,0,2036,2037,1,0,0,0,2037,2039,1,0,0,0,2038,2036,1,0,0,0,2039,2040,5,1134,0,0,2040,2042,1,0,0,0,2041,2030,1,0,0,0,2041,2042,1,0,0,0,2042,111,1,0,0,0,2043,2045,5,100,0,0,2044,2043,1,0,0,0,2044,2045,1,0,0,0,2045,2046,1,0,0,0,2046,2047,5,443,0,0,2047,2048,5,1133,0,0,2048,2049,3,716,358,0,2049,2050,5,1134,0,0,2050,2090,1,0,0,0,2051,2053,5,100,0,0,2052,2051,1,0,0,0,2052,2053,1,0,0,0,2053,2054,1,0,0,0,2054,2058,5,91,0,0,2055,2056,5,336,0,0,2056,2057,5,1124,0,0,2057,2059,7,32,0,0,2058,2055,1,0,0,0,2058,2059,1,0,0,0,2059,2060,1,0,0,0,2060,2062,5,1133,0,0,2061,2063,3,644,322,0,2062,2061,1,0,0,0,2062,2063,1,0,0,0,2063,2064,1,0,0,0,2064,2090,5,1134,0,0,2065,2075,5,133,0,0,2066,2067,5,1133,0,0,2067,2068,3,716,358,0,2068,2069,5,1134,0,0,2069,2076,1,0,0,0,2070,2071,5,365,0,0,2071,2072,5,1133,0,0,2072,2073,3,644,322,0,2073,2074,5,1134,0,0,2074,2076,1,0,0,0,2075,2066,1,0,0,0,2075,2070,1,0,0,0,2076,2090,1,0,0,0,2077,2087,5,473,0,0,2078,2079,5,1133,0,0,2079,2080,3,716,358,0,2080,2081,5,1134,0,0,2081,2088,1,0,0,0,2082,2083,5,365,0,0,2083,2084,5,1133,0,0,2084,2085,3,644,322,0,2085,2086,5,1134,0,0,2086,2088,1,0,0,0,2087,2078,1,0,0,0,2087,2082,1,0,0,0,2088,2090,1,0,0,0,2089,2044,1,0,0,0,2089,2052,1,0,0,0,2089,2065,1,0,0,0,2089,2077,1,0,0,0,2090,113,1,0,0,0,2091,2093,5,100,0,0,2092,2091,1,0,0,0,2092,2093,1,0,0,0,2093,2094,1,0,0,0,2094,2095,5,443,0,0,2095,2096,5,1133,0,0,2096,2097,3,716,358,0,2097,2098,5,1134,0,0,2098,2113,1,0,0,0,2099,2101,5,100,0,0,2100,2099,1,0,0,0,2100,2101,1,0,0,0,2101,2102,1,0,0,0,2102,2106,5,91,0,0,2103,2104,5,336,0,0,2104,2105,5,1124,0,0,2105,2107,7,32,0,0,2106,2103,1,0,0,0,2106,2107,1,0,0,0,2107,2108,1,0,0,0,2108,2109,5,1133,0,0,2109,2110,3,644,322,0,2110,2111,5,1134,0,0,2111,2113,1,0,0,0,2112,2092,1,0,0,0,2112,2100,1,0,0,0,2113,115,1,0,0,0,2114,2115,5,129,0,0,2115,2116,3,612,306,0,2116,2117,5,188,0,0,2117,2118,5,471,0,0,2118,2119,5,651,0,0,2119,2120,5,1133,0,0,2120,2125,3,118,59,0,2121,2122,5,1135,0,0,2122,2124,3,118,59,0,2123,2121,1,0,0,0,2124,2127,1,0,0,0,2125,2123,1,0,0,0,2125,2126,1,0,0,0,2126,2128,1,0,0,0,2127,2125,1,0,0,0,2128,2132,5,1134,0,0,2129,2131,3,124,62,0,2130,2129,1,0,0,0,2131,2134,1,0,0,0,2132,2130,1,0,0,0,2132,2133,1,0,0,0,2133,2146,1,0,0,0,2134,2132,1,0,0,0,2135,2136,5,1133,0,0,2136,2141,3,122,61,0,2137,2138,5,1135,0,0,2138,2140,3,122,61,0,2139,2137,1,0,0,0,2140,2143,1,0,0,0,2141,2139,1,0,0,0,2141,2142,1,0,0,0,2142,2144,1,0,0,0,2143,2141,1,0,0,0,2144,2145,5,1134,0,0,2145,2147,1,0,0,0,2146,2135,1,0,0,0,2146,2147,1,0,0,0,2147,2261,1,0,0,0,2148,2149,5,129,0,0,2149,2150,3,612,306,0,2150,2151,5,188,0,0,2151,2152,5,471,0,0,2152,2153,5,651,0,0,2153,2157,3,118,59,0,2154,2156,3,124,62,0,2155,2154,1,0,0,0,2156,2159,1,0,0,0,2157,2155,1,0,0,0,2157,2158,1,0,0,0,2158,2171,1,0,0,0,2159,2157,1,0,0,0,2160,2161,5,1133,0,0,2161,2166,3,122,61,0,2162,2163,5,1135,0,0,2163,2165,3,122,61,0,2164,2162,1,0,0,0,2165,2168,1,0,0,0,2166,2164,1,0,0,0,2166,2167,1,0,0,0,2167,2169,1,0,0,0,2168,2166,1,0,0,0,2169,2170,5,1134,0,0,2170,2172,1,0,0,0,2171,2160,1,0,0,0,2171,2172,1,0,0,0,2172,2261,1,0,0,0,2173,2174,5,129,0,0,2174,2175,3,612,306,0,2175,2176,5,188,0,0,2176,2177,5,80,0,0,2177,2178,5,1133,0,0,2178,2183,3,118,59,0,2179,2180,5,1135,0,0,2180,2182,3,118,59,0,2181,2179,1,0,0,0,2182,2185,1,0,0,0,2183,2181,1,0,0,0,2183,2184,1,0,0,0,2184,2186,1,0,0,0,2185,2183,1,0,0,0,2186,2190,5,1134,0,0,2187,2189,3,124,62,0,2188,2187,1,0,0,0,2189,2192,1,0,0,0,2190,2188,1,0,0,0,2190,2191,1,0,0,0,2191,2204,1,0,0,0,2192,2190,1,0,0,0,2193,2194,5,1133,0,0,2194,2199,3,122,61,0,2195,2196,5,1135,0,0,2196,2198,3,122,61,0,2197,2195,1,0,0,0,2198,2201,1,0,0,0,2199,2197,1,0,0,0,2199,2200,1,0,0,0,2200,2202,1,0,0,0,2201,2199,1,0,0,0,2202,2203,5,1134,0,0,2203,2205,1,0,0,0,2204,2193,1,0,0,0,2204,2205,1,0,0,0,2205,2261,1,0,0,0,2206,2207,5,129,0,0,2207,2208,3,612,306,0,2208,2209,5,188,0,0,2209,2210,5,80,0,0,2210,2211,5,1133,0,0,2211,2216,3,120,60,0,2212,2213,5,1135,0,0,2213,2215,3,120,60,0,2214,2212,1,0,0,0,2215,2218,1,0,0,0,2216,2214,1,0,0,0,2216,2217,1,0,0,0,2217,2219,1,0,0,0,2218,2216,1,0,0,0,2219,2223,5,1134,0,0,2220,2222,3,124,62,0,2221,2220,1,0,0,0,2222,2225,1,0,0,0,2223,2221,1,0,0,0,2223,2224,1,0,0,0,2224,2237,1,0,0,0,2225,2223,1,0,0,0,2226,2227,5,1133,0,0,2227,2232,3,122,61,0,2228,2229,5,1135,0,0,2229,2231,3,122,61,0,2230,2228,1,0,0,0,2231,2234,1,0,0,0,2232,2230,1,0,0,0,2232,2233,1,0,0,0,2233,2235,1,0,0,0,2234,2232,1,0,0,0,2235,2236,5,1134,0,0,2236,2238,1,0,0,0,2237,2226,1,0,0,0,2237,2238,1,0,0,0,2238,2261,1,0,0,0,2239,2240,5,129,0,0,2240,2244,3,612,306,0,2241,2243,3,124,62,0,2242,2241,1,0,0,0,2243,2246,1,0,0,0,2244,2242,1,0,0,0,2244,2245,1,0,0,0,2245,2258,1,0,0,0,2246,2244,1,0,0,0,2247,2248,5,1133,0,0,2248,2253,3,122,61,0,2249,2250,5,1135,0,0,2250,2252,3,122,61,0,2251,2249,1,0,0,0,2252,2255,1,0,0,0,2253,2251,1,0,0,0,2253,2254,1,0,0,0,2254,2256,1,0,0,0,2255,2253,1,0,0,0,2256,2257,5,1134,0,0,2257,2259,1,0,0,0,2258,2247,1,0,0,0,2258,2259,1,0,0,0,2259,2261,1,0,0,0,2260,2114,1,0,0,0,2260,2148,1,0,0,0,2260,2173,1,0,0,0,2260,2206,1,0,0,0,2260,2239,1,0,0,0,2261,117,1,0,0,0,2262,2266,3,630,315,0,2263,2266,3,716,358,0,2264,2266,5,110,0,0,2265,2262,1,0,0,0,2265,2263,1,0,0,0,2265,2264,1,0,0,0,2266,119,1,0,0,0,2267,2268,5,1133,0,0,2268,2271,3,118,59,0,2269,2270,5,1135,0,0,2270,2272,3,118,59,0,2271,2269,1,0,0,0,2272,2273,1,0,0,0,2273,2271,1,0,0,0,2273,2274,1,0,0,0,2274,2275,1,0,0,0,2275,2276,5,1134,0,0,2276,121,1,0,0,0,2277,2278,5,641,0,0,2278,2282,3,612,306,0,2279,2281,3,124,62,0,2280,2279,1,0,0,0,2281,2284,1,0,0,0,2282,2280,1,0,0,0,2282,2283,1,0,0,0,2283,123,1,0,0,0,2284,2282,1,0,0,0,2285,2287,5,42,0,0,2286,2285,1,0,0,0,2286,2287,1,0,0,0,2287,2289,1,0,0,0,2288,2290,5,636,0,0,2289,2288,1,0,0,0,2289,2290,1,0,0,0,2290,2291,1,0,0,0,2291,2293,5,409,0,0,2292,2294,5,1124,0,0,2293,2292,1,0,0,0,2293,2294,1,0,0,0,2294,2295,1,0,0,0,2295,2334,3,600,300,0,2296,2298,5,368,0,0,2297,2299,5,1124,0,0,2298,2297,1,0,0,0,2298,2299,1,0,0,0,2299,2300,1,0,0,0,2300,2334,5,1148,0,0,2301,2302,5,388,0,0,2302,2304,5,395,0,0,2303,2305,5,1124,0,0,2304,2303,1,0,0,0,2304,2305,1,0,0,0,2305,2306,1,0,0,0,2306,2334,5,1148,0,0,2307,2308,5,81,0,0,2308,2310,5,395,0,0,2309,2311,5,1124,0,0,2310,2309,1,0,0,0,2310,2311,1,0,0,0,2311,2312,1,0,0,0,2312,2334,5,1148,0,0,2313,2315,5,500,0,0,2314,2316,5,1124,0,0,2315,2314,1,0,0,0,2315,2316,1,0,0,0,2316,2317,1,0,0,0,2317,2334,3,618,309,0,2318,2320,5,510,0,0,2319,2321,5,1124,0,0,2320,2319,1,0,0,0,2320,2321,1,0,0,0,2321,2322,1,0,0,0,2322,2334,3,618,309,0,2323,2325,5,647,0,0,2324,2326,5,1124,0,0,2325,2324,1,0,0,0,2325,2326,1,0,0,0,2326,2327,1,0,0,0,2327,2334,3,612,306,0,2328,2330,5,528,0,0,2329,2331,5,1124,0,0,2330,2329,1,0,0,0,2330,2331,1,0,0,0,2331,2332,1,0,0,0,2332,2334,3,612,306,0,2333,2286,1,0,0,0,2333,2296,1,0,0,0,2333,2301,1,0,0,0,2333,2307,1,0,0,0,2333,2313,1,0,0,0,2333,2318,1,0,0,0,2333,2323,1,0,0,0,2333,2328,1,0,0,0,2334,125,1,0,0,0,2335,2336,5,7,0,0,2336,2337,7,0,0,0,2337,2339,3,572,286,0,2338,2340,3,56,28,0,2339,2338,1,0,0,0,2340,2341,1,0,0,0,2341,2339,1,0,0,0,2341,2342,1,0,0,0,2342,2352,1,0,0,0,2343,2344,5,7,0,0,2344,2345,7,0,0,0,2345,2346,3,572,286,0,2346,2347,5,664,0,0,2347,2348,5,388,0,0,2348,2349,5,395,0,0,2349,2350,5,516,0,0,2350,2352,1,0,0,0,2351,2335,1,0,0,0,2351,2343,1,0,0,0,2352,127,1,0,0,0,2353,2355,5,7,0,0,2354,2356,3,62,31,0,2355,2354,1,0,0,0,2355,2356,1,0,0,0,2356,2357,1,0,0,0,2357,2358,5,415,0,0,2358,2362,3,552,276,0,2359,2360,5,118,0,0,2360,2361,5,605,0,0,2361,2363,3,64,32,0,2362,2359,1,0,0,0,2362,2363,1,0,0,0,2363,2370,1,0,0,0,2364,2365,5,118,0,0,2365,2367,5,371,0,0,2366,2368,5,114,0,0,2367,2366,1,0,0,0,2367,2368,1,0,0,0,2368,2369,1,0,0,0,2369,2371,5,561,0,0,2370,2364,1,0,0,0,2370,2371,1,0,0,0,2371,2375,1,0,0,0,2372,2373,5,139,0,0,2373,2374,5,175,0,0,2374,2376,3,552,276,0,2375,2372,1,0,0,0,2375,2376,1,0,0,0,2376,2378,1,0,0,0,2377,2379,3,72,36,0,2378,2377,1,0,0,0,2378,2379,1,0,0,0,2379,2382,1,0,0,0,2380,2381,5,368,0,0,2381,2383,5,1148,0,0,2382,2380,1,0,0,0,2382,2383,1,0,0,0,2383,2386,1,0,0,0,2384,2385,5,399,0,0,2385,2387,3,388,194,0,2386,2384,1,0,0,0,2386,2387,1,0,0,0,2387,129,1,0,0,0,2388,2389,5,7,0,0,2389,2390,5,437,0,0,2390,2394,3,552,276,0,2391,2393,3,82,41,0,2392,2391,1,0,0,0,2393,2396,1,0,0,0,2394,2392,1,0,0,0,2394,2395,1,0,0,0,2395,131,1,0,0,0,2396,2394,1,0,0,0,2397,2398,5,7,0,0,2398,2399,5,457,0,0,2399,2400,5,599,0,0,2400,2401,5,791,0,0,2401,2402,5,477,0,0,2402,2403,5,91,0,0,2403,133,1,0,0,0,2404,2405,5,7,0,0,2405,2406,5,475,0,0,2406,2407,5,73,0,0,2407,2408,3,612,306,0,2408,2409,5,5,0,0,2409,2410,5,659,0,0,2410,2416,5,1148,0,0,2411,2413,5,453,0,0,2412,2414,5,1124,0,0,2413,2412,1,0,0,0,2413,2414,1,0,0,0,2414,2415,1,0,0,0,2415,2417,3,620,310,0,2416,2411,1,0,0,0,2416,2417,1,0,0,0,2417,2419,1,0,0,0,2418,2420,5,674,0,0,2419,2418,1,0,0,0,2419,2420,1,0,0,0,2420,2421,1,0,0,0,2421,2423,5,409,0,0,2422,2424,5,1124,0,0,2423,2422,1,0,0,0,2423,2424,1,0,0,0,2424,2425,1,0,0,0,2425,2426,3,600,300,0,2426,135,1,0,0,0,2427,2428,5,7,0,0,2428,2429,5,131,0,0,2429,2433,3,552,276,0,2430,2432,3,82,41,0,2431,2430,1,0,0,0,2432,2435,1,0,0,0,2433,2431,1,0,0,0,2433,2434,1,0,0,0,2434,137,1,0,0,0,2435,2433,1,0,0,0,2436,2437,5,7,0,0,2437,2438,5,608,0,0,2438,2439,3,612,306,0,2439,2440,5,541,0,0,2440,2441,5,1133,0,0,2441,2446,3,84,42,0,2442,2443,5,1135,0,0,2443,2445,3,84,42,0,2444,2442,1,0,0,0,2445,2448,1,0,0,0,2446,2444,1,0,0,0,2446,2447,1,0,0,0,2447,2449,1,0,0,0,2448,2446,1,0,0,0,2449,2450,5,1134,0,0,2450,139,1,0,0,0,2451,2453,5,7,0,0,2452,2454,7,1,0,0,2453,2452,1,0,0,0,2453,2454,1,0,0,0,2454,2456,1,0,0,0,2455,2457,5,78,0,0,2456,2455,1,0,0,0,2456,2457,1,0,0,0,2457,2458,1,0,0,0,2458,2459,5,172,0,0,2459,2461,3,554,277,0,2460,2462,3,674,337,0,2461,2460,1,0,0,0,2461,2462,1,0,0,0,2462,2471,1,0,0,0,2463,2468,3,146,73,0,2464,2465,5,1135,0,0,2465,2467,3,146,73,0,2466,2464,1,0,0,0,2467,2470,1,0,0,0,2468,2466,1,0,0,0,2468,2469,1,0,0,0,2469,2472,1,0,0,0,2470,2468,1,0,0,0,2471,2463,1,0,0,0,2471,2472,1,0,0,0,2472,2474,1,0,0,0,2473,2475,3,110,55,0,2474,2473,1,0,0,0,2474,2475,1,0,0,0,2475,141,1,0,0,0,2476,2477,5,7,0,0,2477,2478,5,647,0,0,2478,2479,3,612,306,0,2479,2480,7,33,0,0,2480,2481,5,389,0,0,2481,2485,5,1148,0,0,2482,2483,5,453,0,0,2483,2484,5,1124,0,0,2484,2486,3,620,310,0,2485,2482,1,0,0,0,2485,2486,1,0,0,0,2486,2488,1,0,0,0,2487,2489,5,674,0,0,2488,2487,1,0,0,0,2488,2489,1,0,0,0,2489,2490,1,0,0,0,2490,2492,5,409,0,0,2491,2493,5,1124,0,0,2492,2491,1,0,0,0,2492,2493,1,0,0,0,2493,2494,1,0,0,0,2494,2495,3,600,300,0,2495,143,1,0,0,0,2496,2500,5,7,0,0,2497,2498,5,336,0,0,2498,2499,5,1124,0,0,2499,2501,7,10,0,0,2500,2497,1,0,0,0,2500,2501,1,0,0,0,2501,2503,1,0,0,0,2502,2504,3,62,31,0,2503,2502,1,0,0,0,2503,2504,1,0,0,0,2504,2508,1,0,0,0,2505,2506,5,160,0,0,2506,2507,5,606,0,0,2507,2509,7,11,0,0,2508,2505,1,0,0,0,2508,2509,1,0,0,0,2509,2510,1,0,0,0,2510,2511,5,671,0,0,2511,2516,3,552,276,0,2512,2513,5,1133,0,0,2513,2514,3,644,322,0,2514,2515,5,1134,0,0,2515,2517,1,0,0,0,2516,2512,1,0,0,0,2516,2517,1,0,0,0,2517,2518,1,0,0,0,2518,2519,5,12,0,0,2519,2526,3,198,99,0,2520,2522,5,192,0,0,2521,2523,7,12,0,0,2522,2521,1,0,0,0,2522,2523,1,0,0,0,2523,2524,1,0,0,0,2524,2525,5,26,0,0,2525,2527,5,120,0,0,2526,2520,1,0,0,0,2526,2527,1,0,0,0,2527,145,1,0,0,0,2528,2535,3,104,52,0,2529,2531,5,1135,0,0,2530,2529,1,0,0,0,2530,2531,1,0,0,0,2531,2532,1,0,0,0,2532,2534,3,104,52,0,2533,2530,1,0,0,0,2534,2537,1,0,0,0,2535,2533,1,0,0,0,2535,2536,1,0,0,0,2536,2880,1,0,0,0,2537,2535,1,0,0,0,2538,2540,5,5,0,0,2539,2541,5,28,0,0,2540,2539,1,0,0,0,2540,2541,1,0,0,0,2541,2542,1,0,0,0,2542,2543,3,612,306,0,2543,2547,3,90,45,0,2544,2548,5,430,0,0,2545,2546,5,334,0,0,2546,2548,3,612,306,0,2547,2544,1,0,0,0,2547,2545,1,0,0,0,2547,2548,1,0,0,0,2548,2880,1,0,0,0,2549,2551,5,5,0,0,2550,2552,5,28,0,0,2551,2550,1,0,0,0,2551,2552,1,0,0,0,2552,2553,1,0,0,0,2553,2554,5,1133,0,0,2554,2555,3,612,306,0,2555,2562,3,90,45,0,2556,2557,5,1135,0,0,2557,2558,3,612,306,0,2558,2559,3,90,45,0,2559,2561,1,0,0,0,2560,2556,1,0,0,0,2561,2564,1,0,0,0,2562,2560,1,0,0,0,2562,2563,1,0,0,0,2563,2565,1,0,0,0,2564,2562,1,0,0,0,2565,2566,5,1134,0,0,2566,2880,1,0,0,0,2567,2568,5,5,0,0,2568,2570,7,20,0,0,2569,2571,3,612,306,0,2570,2569,1,0,0,0,2570,2571,1,0,0,0,2571,2573,1,0,0,0,2572,2574,3,74,37,0,2573,2572,1,0,0,0,2573,2574,1,0,0,0,2574,2575,1,0,0,0,2575,2579,3,650,325,0,2576,2578,3,76,38,0,2577,2576,1,0,0,0,2578,2581,1,0,0,0,2579,2577,1,0,0,0,2579,2580,1,0,0,0,2580,2880,1,0,0,0,2581,2579,1,0,0,0,2582,2587,5,5,0,0,2583,2585,5,30,0,0,2584,2586,3,612,306,0,2585,2584,1,0,0,0,2585,2586,1,0,0,0,2586,2588,1,0,0,0,2587,2583,1,0,0,0,2587,2588,1,0,0,0,2588,2589,1,0,0,0,2589,2590,5,130,0,0,2590,2592,5,91,0,0,2591,2593,3,612,306,0,2592,2591,1,0,0,0,2592,2593,1,0,0,0,2593,2595,1,0,0,0,2594,2596,3,74,37,0,2595,2594,1,0,0,0,2595,2596,1,0,0,0,2596,2597,1,0,0,0,2597,2601,3,650,325,0,2598,2600,3,76,38,0,2599,2598,1,0,0,0,2600,2603,1,0,0,0,2601,2599,1,0,0,0,2601,2602,1,0,0,0,2602,2880,1,0,0,0,2603,2601,1,0,0,0,2604,2609,5,5,0,0,2605,2607,5,30,0,0,2606,2608,3,612,306,0,2607,2606,1,0,0,0,2607,2608,1,0,0,0,2608,2610,1,0,0,0,2609,2605,1,0,0,0,2609,2610,1,0,0,0,2610,2611,1,0,0,0,2611,2613,5,181,0,0,2612,2614,7,20,0,0,2613,2612,1,0,0,0,2613,2614,1,0,0,0,2614,2616,1,0,0,0,2615,2617,3,612,306,0,2616,2615,1,0,0,0,2616,2617,1,0,0,0,2617,2619,1,0,0,0,2618,2620,3,74,37,0,2619,2618,1,0,0,0,2619,2620,1,0,0,0,2620,2621,1,0,0,0,2621,2625,3,650,325,0,2622,2624,3,76,38,0,2623,2622,1,0,0,0,2624,2627,1,0,0,0,2625,2623,1,0,0,0,2625,2626,1,0,0,0,2626,2880,1,0,0,0,2627,2625,1,0,0,0,2628,2629,5,5,0,0,2629,2631,7,22,0,0,2630,2632,7,20,0,0,2631,2630,1,0,0,0,2631,2632,1,0,0,0,2632,2634,1,0,0,0,2633,2635,3,612,306,0,2634,2633,1,0,0,0,2634,2635,1,0,0,0,2635,2636,1,0,0,0,2636,2640,3,650,325,0,2637,2639,3,76,38,0,2638,2637,1,0,0,0,2639,2642,1,0,0,0,2640,2638,1,0,0,0,2640,2641,1,0,0,0,2641,2880,1,0,0,0,2642,2640,1,0,0,0,2643,2648,5,5,0,0,2644,2646,5,30,0,0,2645,2647,3,612,306,0,2646,2645,1,0,0,0,2646,2647,1,0,0,0,2647,2649,1,0,0,0,2648,2644,1,0,0,0,2648,2649,1,0,0,0,2649,2650,1,0,0,0,2650,2651,5,67,0,0,2651,2653,5,91,0,0,2652,2654,3,612,306,0,2653,2652,1,0,0,0,2653,2654,1,0,0,0,2654,2655,1,0,0,0,2655,2656,3,650,325,0,2656,2657,3,96,48,0,2657,2880,1,0,0,0,2658,2663,5,5,0,0,2659,2661,5,30,0,0,2660,2662,3,612,306,0,2661,2660,1,0,0,0,2661,2662,1,0,0,0,2662,2664,1,0,0,0,2663,2659,1,0,0,0,2663,2664,1,0,0,0,2664,2665,1,0,0,0,2665,2672,5,26,0,0,2666,2673,3,612,306,0,2667,2673,3,622,311,0,2668,2669,5,1133,0,0,2669,2670,3,716,358,0,2670,2671,5,1134,0,0,2671,2673,1,0,0,0,2672,2666,1,0,0,0,2672,2667,1,0,0,0,2672,2668,1,0,0,0,2673,2675,1,0,0,0,2674,2676,5,114,0,0,2675,2674,1,0,0,0,2675,2676,1,0,0,0,2676,2678,1,0,0,0,2677,2679,5,57,0,0,2678,2677,1,0,0,0,2678,2679,1,0,0,0,2679,2880,1,0,0,0,2680,2685,5,7,0,0,2681,2683,5,30,0,0,2682,2684,3,576,288,0,2683,2682,1,0,0,0,2683,2684,1,0,0,0,2684,2686,1,0,0,0,2685,2681,1,0,0,0,2685,2686,1,0,0,0,2686,2687,1,0,0,0,2687,2694,5,26,0,0,2688,2695,3,612,306,0,2689,2695,3,622,311,0,2690,2691,5,1133,0,0,2691,2692,3,716,358,0,2692,2693,5,1134,0,0,2693,2695,1,0,0,0,2694,2688,1,0,0,0,2694,2689,1,0,0,0,2694,2690,1,0,0,0,2695,2697,1,0,0,0,2696,2698,5,114,0,0,2697,2696,1,0,0,0,2697,2698,1,0,0,0,2698,2700,1,0,0,0,2699,2701,5,57,0,0,2700,2699,1,0,0,0,2700,2701,1,0,0,0,2701,2880,1,0,0,0,2702,2707,5,5,0,0,2703,2705,5,30,0,0,2704,2706,3,612,306,0,2705,2704,1,0,0,0,2705,2706,1,0,0,0,2706,2708,1,0,0,0,2707,2703,1,0,0,0,2707,2708,1,0,0,0,2708,2709,1,0,0,0,2709,2710,5,26,0,0,2710,2711,5,1133,0,0,2711,2712,3,716,358,0,2712,2713,5,1134,0,0,2713,2880,1,0,0,0,2714,2716,5,336,0,0,2715,2717,5,1124,0,0,2716,2715,1,0,0,0,2716,2717,1,0,0,0,2717,2718,1,0,0,0,2718,2880,7,34,0,0,2719,2721,5,7,0,0,2720,2722,5,28,0,0,2721,2720,1,0,0,0,2721,2722,1,0,0,0,2722,2723,1,0,0,0,2723,2729,3,612,306,0,2724,2725,5,153,0,0,2725,2726,5,42,0,0,2726,2730,3,662,331,0,2727,2728,5,51,0,0,2728,2730,5,42,0,0,2729,2724,1,0,0,0,2729,2727,1,0,0,0,2730,2880,1,0,0,0,2731,2733,5,24,0,0,2732,2734,5,28,0,0,2733,2732,1,0,0,0,2733,2734,1,0,0,0,2734,2735,1,0,0,0,2735,2736,3,612,306,0,2736,2737,3,612,306,0,2737,2741,3,90,45,0,2738,2742,5,430,0,0,2739,2740,5,334,0,0,2740,2742,3,612,306,0,2741,2738,1,0,0,0,2741,2739,1,0,0,0,2741,2742,1,0,0,0,2742,2880,1,0,0,0,2743,2744,5,139,0,0,2744,2745,5,28,0,0,2745,2746,3,612,306,0,2746,2747,5,175,0,0,2747,2748,3,612,306,0,2748,2880,1,0,0,0,2749,2751,5,103,0,0,2750,2752,5,1124,0,0,2751,2750,1,0,0,0,2751,2752,1,0,0,0,2752,2753,1,0,0,0,2753,2880,7,4,0,0,2754,2756,5,512,0,0,2755,2757,5,28,0,0,2756,2755,1,0,0,0,2756,2757,1,0,0,0,2757,2758,1,0,0,0,2758,2759,3,612,306,0,2759,2763,3,90,45,0,2760,2764,5,430,0,0,2761,2762,5,334,0,0,2762,2764,3,612,306,0,2763,2760,1,0,0,0,2763,2761,1,0,0,0,2763,2764,1,0,0,0,2764,2880,1,0,0,0,2765,2767,5,51,0,0,2766,2768,5,28,0,0,2767,2766,1,0,0,0,2767,2768,1,0,0,0,2768,2769,1,0,0,0,2769,2771,3,612,306,0,2770,2772,5,144,0,0,2771,2770,1,0,0,0,2771,2772,1,0,0,0,2772,2880,1,0,0,0,2773,2774,5,51,0,0,2774,2775,7,35,0,0,2775,2880,3,576,288,0,2776,2777,5,51,0,0,2777,2778,5,130,0,0,2778,2880,5,91,0,0,2779,2780,5,51,0,0,2780,2781,7,20,0,0,2781,2880,3,574,287,0,2782,2783,5,139,0,0,2783,2784,7,20,0,0,2784,2785,3,574,287,0,2785,2786,5,175,0,0,2786,2787,3,612,306,0,2787,2880,1,0,0,0,2788,2790,5,7,0,0,2789,2791,5,28,0,0,2790,2789,1,0,0,0,2790,2791,1,0,0,0,2791,2792,1,0,0,0,2792,2806,3,612,306,0,2793,2794,5,153,0,0,2794,2800,5,42,0,0,2795,2801,3,622,311,0,2796,2797,5,1133,0,0,2797,2798,3,716,358,0,2798,2799,5,1134,0,0,2799,2801,1,0,0,0,2800,2795,1,0,0,0,2800,2796,1,0,0,0,2801,2807,1,0,0,0,2802,2803,5,153,0,0,2803,2807,7,15,0,0,2804,2805,5,51,0,0,2805,2807,5,42,0,0,2806,2793,1,0,0,0,2806,2802,1,0,0,0,2806,2804,1,0,0,0,2807,2880,1,0,0,0,2808,2809,5,7,0,0,2809,2810,5,81,0,0,2810,2811,3,574,287,0,2811,2812,7,15,0,0,2812,2880,1,0,0,0,2813,2814,5,51,0,0,2814,2815,5,67,0,0,2815,2816,5,91,0,0,2816,2880,3,612,306,0,2817,2818,5,396,0,0,2818,2880,5,92,0,0,2819,2820,5,403,0,0,2820,2880,5,92,0,0,2821,2823,5,139,0,0,2822,2824,7,36,0,0,2823,2822,1,0,0,0,2823,2824,1,0,0,0,2824,2827,1,0,0,0,2825,2828,3,612,306,0,2826,2828,3,552,276,0,2827,2825,1,0,0,0,2827,2826,1,0,0,0,2828,2880,1,0,0,0,2829,2830,5,124,0,0,2830,2831,5,19,0,0,2831,2880,3,644,322,0,2832,2833,5,32,0,0,2833,2837,5,175,0,0,2834,2838,5,841,0,0,2835,2836,5,25,0,0,2836,2838,5,153,0,0,2837,2834,1,0,0,0,2837,2835,1,0,0,0,2838,2839,1,0,0,0,2839,2842,3,596,298,0,2840,2841,5,27,0,0,2841,2843,3,598,299,0,2842,2840,1,0,0,0,2842,2843,1,0,0,0,2843,2880,1,0,0,0,2844,2846,5,42,0,0,2845,2844,1,0,0,0,2845,2846,1,0,0,0,2846,2847,1,0,0,0,2847,2848,5,25,0,0,2848,2849,5,153,0,0,2849,2850,5,1124,0,0,2850,2854,3,596,298,0,2851,2852,5,27,0,0,2852,2853,5,1124,0,0,2853,2855,3,598,299,0,2854,2851,1,0,0,0,2854,2855,1,0,0,0,2855,2880,1,0,0,0,2856,2857,5,397,0,0,2857,2880,5,647,0,0,2858,2859,5,450,0,0,2859,2880,5,647,0,0,2860,2880,5,66,0,0,2861,2862,7,37,0,0,2862,2880,5,668,0,0,2863,2865,5,5,0,0,2864,2866,5,28,0,0,2865,2864,1,0,0,0,2865,2866,1,0,0,0,2866,2867,1,0,0,0,2867,2868,5,1133,0,0,2868,2873,3,88,44,0,2869,2870,5,1135,0,0,2870,2872,3,88,44,0,2871,2869,1,0,0,0,2872,2875,1,0,0,0,2873,2871,1,0,0,0,2873,2874,1,0,0,0,2874,2876,1,0,0,0,2875,2873,1,0,0,0,2876,2877,5,1134,0,0,2877,2880,1,0,0,0,2878,2880,3,148,74,0,2879,2528,1,0,0,0,2879,2538,1,0,0,0,2879,2549,1,0,0,0,2879,2567,1,0,0,0,2879,2582,1,0,0,0,2879,2604,1,0,0,0,2879,2628,1,0,0,0,2879,2643,1,0,0,0,2879,2658,1,0,0,0,2879,2680,1,0,0,0,2879,2702,1,0,0,0,2879,2714,1,0,0,0,2879,2719,1,0,0,0,2879,2731,1,0,0,0,2879,2743,1,0,0,0,2879,2749,1,0,0,0,2879,2754,1,0,0,0,2879,2765,1,0,0,0,2879,2773,1,0,0,0,2879,2776,1,0,0,0,2879,2779,1,0,0,0,2879,2782,1,0,0,0,2879,2788,1,0,0,0,2879,2808,1,0,0,0,2879,2813,1,0,0,0,2879,2817,1,0,0,0,2879,2819,1,0,0,0,2879,2821,1,0,0,0,2879,2829,1,0,0,0,2879,2832,1,0,0,0,2879,2845,1,0,0,0,2879,2856,1,0,0,0,2879,2858,1,0,0,0,2879,2860,1,0,0,0,2879,2861,1,0,0,0,2879,2863,1,0,0,0,2879,2878,1,0,0,0,2880,147,1,0,0,0,2881,2882,5,5,0,0,2882,2883,5,129,0,0,2883,2884,5,1133,0,0,2884,2889,3,116,58,0,2885,2886,5,1135,0,0,2886,2888,3,116,58,0,2887,2885,1,0,0,0,2888,2891,1,0,0,0,2889,2887,1,0,0,0,2889,2890,1,0,0,0,2890,2892,1,0,0,0,2891,2889,1,0,0,0,2892,2893,5,1134,0,0,2893,2980,1,0,0,0,2894,2895,5,51,0,0,2895,2896,5,129,0,0,2896,2980,3,644,322,0,2897,2898,5,397,0,0,2898,2901,5,129,0,0,2899,2902,3,644,322,0,2900,2902,5,6,0,0,2901,2899,1,0,0,0,2901,2900,1,0,0,0,2902,2903,1,0,0,0,2903,2980,5,647,0,0,2904,2905,5,450,0,0,2905,2908,5,129,0,0,2906,2909,3,644,322,0,2907,2909,5,6,0,0,2908,2906,1,0,0,0,2908,2907,1,0,0,0,2909,2910,1,0,0,0,2910,2980,5,647,0,0,2911,2912,5,656,0,0,2912,2915,5,129,0,0,2913,2916,3,644,322,0,2914,2916,5,6,0,0,2915,2913,1,0,0,0,2915,2914,1,0,0,0,2916,2980,1,0,0,0,2917,2918,5,363,0,0,2918,2919,5,129,0,0,2919,2980,3,618,309,0,2920,2921,5,579,0,0,2921,2922,5,129,0,0,2922,2923,3,644,322,0,2923,2924,5,87,0,0,2924,2925,5,1133,0,0,2925,2930,3,116,58,0,2926,2927,5,1135,0,0,2927,2929,3,116,58,0,2928,2926,1,0,0,0,2929,2932,1,0,0,0,2930,2928,1,0,0,0,2930,2931,1,0,0,0,2931,2933,1,0,0,0,2932,2930,1,0,0,0,2933,2934,5,1134,0,0,2934,2980,1,0,0,0,2935,2936,5,418,0,0,2936,2937,5,129,0,0,2937,2938,3,612,306,0,2938,2939,5,192,0,0,2939,2940,5,172,0,0,2940,2943,3,554,277,0,2941,2942,7,37,0,0,2942,2944,5,668,0,0,2943,2941,1,0,0,0,2943,2944,1,0,0,0,2944,2980,1,0,0,0,2945,2946,5,9,0,0,2946,2949,5,129,0,0,2947,2950,3,644,322,0,2948,2950,5,6,0,0,2949,2947,1,0,0,0,2949,2948,1,0,0,0,2950,2980,1,0,0,0,2951,2952,5,26,0,0,2952,2955,5,129,0,0,2953,2956,3,644,322,0,2954,2956,5,6,0,0,2955,2953,1,0,0,0,2955,2954,1,0,0,0,2956,2980,1,0,0,0,2957,2958,5,119,0,0,2958,2961,5,129,0,0,2959,2962,3,644,322,0,2960,2962,5,6,0,0,2961,2959,1,0,0,0,2961,2960,1,0,0,0,2962,2980,1,0,0,0,2963,2964,5,569,0,0,2964,2967,5,129,0,0,2965,2968,3,644,322,0,2966,2968,5,6,0,0,2967,2965,1,0,0,0,2967,2966,1,0,0,0,2968,2980,1,0,0,0,2969,2970,5,580,0,0,2970,2973,5,129,0,0,2971,2974,3,644,322,0,2972,2974,5,6,0,0,2973,2971,1,0,0,0,2973,2972,1,0,0,0,2974,2980,1,0,0,0,2975,2976,5,578,0,0,2976,2980,5,549,0,0,2977,2978,5,664,0,0,2978,2980,5,549,0,0,2979,2881,1,0,0,0,2979,2894,1,0,0,0,2979,2897,1,0,0,0,2979,2904,1,0,0,0,2979,2911,1,0,0,0,2979,2917,1,0,0,0,2979,2920,1,0,0,0,2979,2935,1,0,0,0,2979,2945,1,0,0,0,2979,2951,1,0,0,0,2979,2957,1,0,0,0,2979,2963,1,0,0,0,2979,2969,1,0,0,0,2979,2975,1,0,0,0,2979,2977,1,0,0,0,2980,149,1,0,0,0,2981,2982,5,51,0,0,2982,2984,7,0,0,0,2983,2985,3,668,334,0,2984,2983,1,0,0,0,2984,2985,1,0,0,0,2985,2986,1,0,0,0,2986,2987,3,572,286,0,2987,151,1,0,0,0,2988,2989,5,51,0,0,2989,2991,5,415,0,0,2990,2992,3,668,334,0,2991,2990,1,0,0,0,2991,2992,1,0,0,0,2992,2993,1,0,0,0,2993,2994,3,552,276,0,2994,153,1,0,0,0,2995,2996,5,51,0,0,2996,2998,5,81,0,0,2997,2999,7,1,0,0,2998,2997,1,0,0,0,2998,2999,1,0,0,0,2999,3e3,1,0,0,0,3e3,3001,3,574,287,0,3001,3002,5,118,0,0,3002,3015,3,554,277,0,3003,3005,5,336,0,0,3004,3006,5,1124,0,0,3005,3004,1,0,0,0,3005,3006,1,0,0,0,3006,3007,1,0,0,0,3007,3014,7,3,0,0,3008,3010,5,103,0,0,3009,3011,5,1124,0,0,3010,3009,1,0,0,0,3010,3011,1,0,0,0,3011,3012,1,0,0,0,3012,3014,7,4,0,0,3013,3003,1,0,0,0,3013,3008,1,0,0,0,3014,3017,1,0,0,0,3015,3013,1,0,0,0,3015,3016,1,0,0,0,3016,155,1,0,0,0,3017,3015,1,0,0,0,3018,3019,5,51,0,0,3019,3020,5,475,0,0,3020,3021,5,73,0,0,3021,3022,3,612,306,0,3022,3023,5,409,0,0,3023,3024,5,1124,0,0,3024,3025,3,600,300,0,3025,157,1,0,0,0,3026,3027,5,51,0,0,3027,3029,5,131,0,0,3028,3030,3,668,334,0,3029,3028,1,0,0,0,3029,3030,1,0,0,0,3030,3031,1,0,0,0,3031,3032,3,552,276,0,3032,159,1,0,0,0,3033,3034,5,51,0,0,3034,3036,5,437,0,0,3035,3037,3,668,334,0,3036,3035,1,0,0,0,3036,3037,1,0,0,0,3037,3038,1,0,0,0,3038,3039,3,552,276,0,3039,161,1,0,0,0,3040,3041,5,51,0,0,3041,3043,5,608,0,0,3042,3044,3,668,334,0,3043,3042,1,0,0,0,3043,3044,1,0,0,0,3044,3045,1,0,0,0,3045,3046,3,612,306,0,3046,163,1,0,0,0,3047,3049,5,51,0,0,3048,3050,5,649,0,0,3049,3048,1,0,0,0,3049,3050,1,0,0,0,3050,3051,1,0,0,0,3051,3053,5,172,0,0,3052,3054,3,668,334,0,3053,3052,1,0,0,0,3053,3054,1,0,0,0,3054,3055,1,0,0,0,3055,3057,3,648,324,0,3056,3058,7,38,0,0,3057,3056,1,0,0,0,3057,3058,1,0,0,0,3058,165,1,0,0,0,3059,3060,5,51,0,0,3060,3061,5,647,0,0,3061,3067,3,612,306,0,3062,3064,5,409,0,0,3063,3065,5,1124,0,0,3064,3063,1,0,0,0,3064,3065,1,0,0,0,3065,3066,1,0,0,0,3066,3068,3,600,300,0,3067,3062,1,0,0,0,3067,3068,1,0,0,0,3068,167,1,0,0,0,3069,3070,5,51,0,0,3070,3072,5,177,0,0,3071,3073,3,668,334,0,3072,3071,1,0,0,0,3072,3073,1,0,0,0,3073,3074,1,0,0,0,3074,3075,3,578,289,0,3075,169,1,0,0,0,3076,3077,5,51,0,0,3077,3079,5,671,0,0,3078,3080,3,668,334,0,3079,3078,1,0,0,0,3079,3080,1,0,0,0,3080,3081,1,0,0,0,3081,3086,3,552,276,0,3082,3083,5,1135,0,0,3083,3085,3,552,276,0,3084,3082,1,0,0,0,3085,3088,1,0,0,0,3086,3084,1,0,0,0,3086,3087,1,0,0,0,3087,3090,1,0,0,0,3088,3086,1,0,0,0,3089,3091,7,38,0,0,3090,3089,1,0,0,0,3090,3091,1,0,0,0,3091,171,1,0,0,0,3092,3093,5,51,0,0,3093,3095,5,596,0,0,3094,3096,3,668,334,0,3095,3094,1,0,0,0,3095,3096,1,0,0,0,3096,3097,1,0,0,0,3097,3098,3,566,283,0,3098,173,1,0,0,0,3099,3100,5,153,0,0,3100,3101,5,42,0,0,3101,3105,5,596,0,0,3102,3106,5,529,0,0,3103,3106,5,6,0,0,3104,3106,3,566,283,0,3105,3102,1,0,0,0,3105,3103,1,0,0,0,3105,3104,1,0,0,0,3106,3107,1,0,0,0,3107,3108,5,175,0,0,3108,3113,3,588,294,0,3109,3110,5,153,0,0,3110,3111,5,596,0,0,3111,3113,3,434,217,0,3112,3099,1,0,0,0,3112,3109,1,0,0,0,3113,175,1,0,0,0,3114,3115,5,139,0,0,3115,3116,5,172,0,0,3116,3121,3,178,89,0,3117,3118,5,1135,0,0,3118,3120,3,178,89,0,3119,3117,1,0,0,0,3120,3123,1,0,0,0,3121,3119,1,0,0,0,3121,3122,1,0,0,0,3122,177,1,0,0,0,3123,3121,1,0,0,0,3124,3125,3,554,277,0,3125,3126,5,175,0,0,3126,3127,3,554,277,0,3127,179,1,0,0,0,3128,3130,5,656,0,0,3129,3131,5,172,0,0,3130,3129,1,0,0,0,3130,3131,1,0,0,0,3131,3132,1,0,0,0,3132,3133,3,554,277,0,3133,181,1,0,0,0,3134,3135,5,20,0,0,3135,3142,3,552,276,0,3136,3139,5,1133,0,0,3137,3140,3,656,328,0,3138,3140,3,652,326,0,3139,3137,1,0,0,0,3139,3138,1,0,0,0,3139,3140,1,0,0,0,3140,3141,1,0,0,0,3141,3143,5,1134,0,0,3142,3136,1,0,0,0,3142,3143,1,0,0,0,3143,183,1,0,0,0,3144,3147,3,212,106,0,3145,3147,3,214,107,0,3146,3144,1,0,0,0,3146,3145,1,0,0,0,3147,185,1,0,0,0,3148,3149,5,399,0,0,3149,3150,3,652,326,0,3150,187,1,0,0,0,3151,3156,3,216,108,0,3152,3156,3,218,109,0,3153,3156,3,220,110,0,3154,3156,3,222,111,0,3155,3151,1,0,0,0,3155,3152,1,0,0,0,3155,3153,1,0,0,0,3155,3154,1,0,0,0,3156,189,1,0,0,0,3157,3159,5,85,0,0,3158,3160,7,39,0,0,3159,3158,1,0,0,0,3159,3160,1,0,0,0,3160,3162,1,0,0,0,3161,3163,5,78,0,0,3162,3161,1,0,0,0,3162,3163,1,0,0,0,3163,3165,1,0,0,0,3164,3166,5,87,0,0,3165,3164,1,0,0,0,3165,3166,1,0,0,0,3166,3167,1,0,0,0,3167,3174,3,554,277,0,3168,3169,5,129,0,0,3169,3171,5,1133,0,0,3170,3172,3,644,322,0,3171,3170,1,0,0,0,3171,3172,1,0,0,0,3172,3173,1,0,0,0,3173,3175,5,1134,0,0,3174,3168,1,0,0,0,3174,3175,1,0,0,0,3175,3199,1,0,0,0,3176,3178,5,1133,0,0,3177,3179,3,646,323,0,3178,3177,1,0,0,0,3178,3179,1,0,0,0,3179,3180,1,0,0,0,3180,3182,5,1134,0,0,3181,3176,1,0,0,0,3181,3182,1,0,0,0,3182,3183,1,0,0,0,3183,3188,3,204,102,0,3184,3186,5,12,0,0,3185,3184,1,0,0,0,3185,3186,1,0,0,0,3186,3187,1,0,0,0,3187,3189,3,612,306,0,3188,3185,1,0,0,0,3188,3189,1,0,0,0,3189,3200,1,0,0,0,3190,3191,5,153,0,0,3191,3196,3,206,103,0,3192,3193,5,1135,0,0,3193,3195,3,206,103,0,3194,3192,1,0,0,0,3195,3198,1,0,0,0,3196,3194,1,0,0,0,3196,3197,1,0,0,0,3197,3200,1,0,0,0,3198,3196,1,0,0,0,3199,3181,1,0,0,0,3199,3190,1,0,0,0,3200,3213,1,0,0,0,3201,3202,5,118,0,0,3202,3203,5,401,0,0,3203,3204,5,91,0,0,3204,3205,5,184,0,0,3205,3210,3,206,103,0,3206,3207,5,1135,0,0,3207,3209,3,206,103,0,3208,3206,1,0,0,0,3209,3212,1,0,0,0,3210,3208,1,0,0,0,3210,3211,1,0,0,0,3211,3214,1,0,0,0,3212,3210,1,0,0,0,3213,3201,1,0,0,0,3213,3214,1,0,0,0,3214,191,1,0,0,0,3215,3216,5,102,0,0,3216,3218,5,388,0,0,3217,3219,7,40,0,0,3218,3217,1,0,0,0,3218,3219,1,0,0,0,3219,3221,1,0,0,0,3220,3222,5,474,0,0,3221,3220,1,0,0,0,3221,3222,1,0,0,0,3222,3223,1,0,0,0,3223,3224,5,82,0,0,3224,3226,5,1148,0,0,3225,3227,7,6,0,0,3226,3225,1,0,0,0,3226,3227,1,0,0,0,3227,3228,1,0,0,0,3228,3229,5,87,0,0,3229,3230,5,172,0,0,3230,3236,3,554,277,0,3231,3232,5,129,0,0,3232,3233,5,1133,0,0,3233,3234,3,644,322,0,3234,3235,5,1134,0,0,3235,3237,1,0,0,0,3236,3231,1,0,0,0,3236,3237,1,0,0,0,3237,3241,1,0,0,0,3238,3239,5,25,0,0,3239,3240,5,153,0,0,3240,3242,3,596,298,0,3241,3238,1,0,0,0,3241,3242,1,0,0,0,3242,3249,1,0,0,0,3243,3245,7,41,0,0,3244,3246,3,280,140,0,3245,3244,1,0,0,0,3246,3247,1,0,0,0,3247,3245,1,0,0,0,3247,3248,1,0,0,0,3248,3250,1,0,0,0,3249,3243,1,0,0,0,3249,3250,1,0,0,0,3250,3257,1,0,0,0,3251,3253,5,101,0,0,3252,3254,3,282,141,0,3253,3252,1,0,0,0,3254,3255,1,0,0,0,3255,3253,1,0,0,0,3255,3256,1,0,0,0,3256,3258,1,0,0,0,3257,3251,1,0,0,0,3257,3258,1,0,0,0,3258,3263,1,0,0,0,3259,3260,5,78,0,0,3260,3261,3,618,309,0,3261,3262,7,42,0,0,3262,3264,1,0,0,0,3263,3259,1,0,0,0,3263,3264,1,0,0,0,3264,3276,1,0,0,0,3265,3266,5,1133,0,0,3266,3271,3,208,104,0,3267,3268,5,1135,0,0,3268,3270,3,208,104,0,3269,3267,1,0,0,0,3270,3273,1,0,0,0,3271,3269,1,0,0,0,3271,3272,1,0,0,0,3272,3274,1,0,0,0,3273,3271,1,0,0,0,3274,3275,5,1134,0,0,3275,3277,1,0,0,0,3276,3265,1,0,0,0,3276,3277,1,0,0,0,3277,3287,1,0,0,0,3278,3279,5,153,0,0,3279,3284,3,206,103,0,3280,3281,5,1135,0,0,3281,3283,3,206,103,0,3282,3280,1,0,0,0,3283,3286,1,0,0,0,3284,3282,1,0,0,0,3284,3285,1,0,0,0,3285,3288,1,0,0,0,3286,3284,1,0,0,0,3287,3278,1,0,0,0,3287,3288,1,0,0,0,3288,193,1,0,0,0,3289,3290,5,102,0,0,3290,3292,5,682,0,0,3291,3293,7,40,0,0,3292,3291,1,0,0,0,3292,3293,1,0,0,0,3293,3295,1,0,0,0,3294,3296,5,474,0,0,3295,3294,1,0,0,0,3295,3296,1,0,0,0,3296,3297,1,0,0,0,3297,3298,5,82,0,0,3298,3300,5,1148,0,0,3299,3301,7,6,0,0,3300,3299,1,0,0,0,3300,3301,1,0,0,0,3301,3302,1,0,0,0,3302,3303,5,87,0,0,3303,3304,5,172,0,0,3304,3308,3,554,277,0,3305,3306,5,25,0,0,3306,3307,5,153,0,0,3307,3309,3,596,298,0,3308,3305,1,0,0,0,3308,3309,1,0,0,0,3309,3316,1,0,0,0,3310,3311,5,601,0,0,3311,3312,5,448,0,0,3312,3313,5,19,0,0,3313,3314,5,1126,0,0,3314,3315,5,1148,0,0,3315,3317,5,1125,0,0,3316,3310,1,0,0,0,3316,3317,1,0,0,0,3317,3322,1,0,0,0,3318,3319,5,78,0,0,3319,3320,3,618,309,0,3320,3321,7,42,0,0,3321,3323,1,0,0,0,3322,3318,1,0,0,0,3322,3323,1,0,0,0,3323,3335,1,0,0,0,3324,3325,5,1133,0,0,3325,3330,3,208,104,0,3326,3327,5,1135,0,0,3327,3329,3,208,104,0,3328,3326,1,0,0,0,3329,3332,1,0,0,0,3330,3328,1,0,0,0,3330,3331,1,0,0,0,3331,3333,1,0,0,0,3332,3330,1,0,0,0,3333,3334,5,1134,0,0,3334,3336,1,0,0,0,3335,3324,1,0,0,0,3335,3336,1,0,0,0,3336,3346,1,0,0,0,3337,3338,5,153,0,0,3338,3343,3,206,103,0,3339,3340,5,1135,0,0,3340,3342,3,206,103,0,3341,3339,1,0,0,0,3342,3345,1,0,0,0,3343,3341,1,0,0,0,3343,3344,1,0,0,0,3344,3347,1,0,0,0,3345,3343,1,0,0,0,3346,3337,1,0,0,0,3346,3347,1,0,0,0,3347,195,1,0,0,0,3348,3350,5,141,0,0,3349,3351,7,43,0,0,3350,3349,1,0,0,0,3350,3351,1,0,0,0,3351,3353,1,0,0,0,3352,3354,5,87,0,0,3353,3352,1,0,0,0,3353,3354,1,0,0,0,3354,3355,1,0,0,0,3355,3361,3,554,277,0,3356,3357,5,129,0,0,3357,3358,5,1133,0,0,3358,3359,3,644,322,0,3359,3360,5,1134,0,0,3360,3362,1,0,0,0,3361,3356,1,0,0,0,3361,3362,1,0,0,0,3362,3379,1,0,0,0,3363,3364,5,1133,0,0,3364,3365,3,644,322,0,3365,3366,5,1134,0,0,3366,3368,1,0,0,0,3367,3363,1,0,0,0,3367,3368,1,0,0,0,3368,3369,1,0,0,0,3369,3380,3,204,102,0,3370,3371,5,153,0,0,3371,3376,3,206,103,0,3372,3373,5,1135,0,0,3373,3375,3,206,103,0,3374,3372,1,0,0,0,3375,3378,1,0,0,0,3376,3374,1,0,0,0,3376,3377,1,0,0,0,3377,3380,1,0,0,0,3378,3376,1,0,0,0,3379,3367,1,0,0,0,3379,3370,1,0,0,0,3380,197,1,0,0,0,3381,3383,3,250,125,0,3382,3384,3,210,105,0,3383,3382,1,0,0,0,3383,3384,1,0,0,0,3384,3447,1,0,0,0,3385,3387,3,246,123,0,3386,3388,3,210,105,0,3387,3386,1,0,0,0,3387,3388,1,0,0,0,3388,3447,1,0,0,0,3389,3392,3,252,126,0,3390,3392,3,248,124,0,3391,3389,1,0,0,0,3391,3390,1,0,0,0,3392,3394,1,0,0,0,3393,3395,3,256,128,0,3394,3393,1,0,0,0,3395,3396,1,0,0,0,3396,3394,1,0,0,0,3396,3397,1,0,0,0,3397,3406,1,0,0,0,3398,3400,5,180,0,0,3399,3401,7,44,0,0,3400,3399,1,0,0,0,3400,3401,1,0,0,0,3401,3404,1,0,0,0,3402,3405,3,250,125,0,3403,3405,3,246,123,0,3404,3402,1,0,0,0,3404,3403,1,0,0,0,3405,3407,1,0,0,0,3406,3398,1,0,0,0,3406,3407,1,0,0,0,3407,3409,1,0,0,0,3408,3410,3,228,114,0,3409,3408,1,0,0,0,3409,3410,1,0,0,0,3410,3412,1,0,0,0,3411,3413,3,294,147,0,3412,3411,1,0,0,0,3412,3413,1,0,0,0,3413,3415,1,0,0,0,3414,3416,3,210,105,0,3415,3414,1,0,0,0,3415,3416,1,0,0,0,3416,3447,1,0,0,0,3417,3419,3,248,124,0,3418,3420,3,254,127,0,3419,3418,1,0,0,0,3420,3421,1,0,0,0,3421,3419,1,0,0,0,3421,3422,1,0,0,0,3422,3428,1,0,0,0,3423,3425,5,180,0,0,3424,3426,7,44,0,0,3425,3424,1,0,0,0,3425,3426,1,0,0,0,3426,3427,1,0,0,0,3427,3429,3,246,123,0,3428,3423,1,0,0,0,3428,3429,1,0,0,0,3429,3431,1,0,0,0,3430,3432,3,228,114,0,3431,3430,1,0,0,0,3431,3432,1,0,0,0,3432,3434,1,0,0,0,3433,3435,3,294,147,0,3434,3433,1,0,0,0,3434,3435,1,0,0,0,3435,3437,1,0,0,0,3436,3438,3,210,105,0,3437,3436,1,0,0,0,3437,3438,1,0,0,0,3438,3447,1,0,0,0,3439,3442,3,252,126,0,3440,3441,5,1135,0,0,3441,3443,3,258,129,0,3442,3440,1,0,0,0,3443,3444,1,0,0,0,3444,3442,1,0,0,0,3444,3445,1,0,0,0,3445,3447,1,0,0,0,3446,3381,1,0,0,0,3446,3385,1,0,0,0,3446,3391,1,0,0,0,3446,3417,1,0,0,0,3446,3439,1,0,0,0,3447,199,1,0,0,0,3448,3451,3,224,112,0,3449,3451,3,226,113,0,3450,3448,1,0,0,0,3450,3449,1,0,0,0,3451,201,1,0,0,0,3452,3453,5,188,0,0,3453,3455,5,1133,0,0,3454,3456,3,654,327,0,3455,3454,1,0,0,0,3455,3456,1,0,0,0,3456,3457,1,0,0,0,3457,3466,5,1134,0,0,3458,3459,5,1135,0,0,3459,3461,5,1133,0,0,3460,3462,3,654,327,0,3461,3460,1,0,0,0,3461,3462,1,0,0,0,3462,3463,1,0,0,0,3463,3465,5,1134,0,0,3464,3458,1,0,0,0,3465,3468,1,0,0,0,3466,3464,1,0,0,0,3466,3467,1,0,0,0,3467,203,1,0,0,0,3468,3466,1,0,0,0,3469,3488,3,198,99,0,3470,3471,7,45,0,0,3471,3473,5,1133,0,0,3472,3474,3,654,327,0,3473,3472,1,0,0,0,3473,3474,1,0,0,0,3474,3475,1,0,0,0,3475,3484,5,1134,0,0,3476,3477,5,1135,0,0,3477,3479,5,1133,0,0,3478,3480,3,654,327,0,3479,3478,1,0,0,0,3479,3480,1,0,0,0,3480,3481,1,0,0,0,3481,3483,5,1134,0,0,3482,3476,1,0,0,0,3483,3486,1,0,0,0,3484,3482,1,0,0,0,3484,3485,1,0,0,0,3485,3488,1,0,0,0,3486,3484,1,0,0,0,3487,3469,1,0,0,0,3487,3470,1,0,0,0,3488,205,1,0,0,0,3489,3490,3,570,285,0,3490,3493,5,1124,0,0,3491,3494,3,716,358,0,3492,3494,5,42,0,0,3493,3491,1,0,0,0,3493,3492,1,0,0,0,3494,207,1,0,0,0,3495,3498,3,612,306,0,3496,3498,5,1159,0,0,3497,3495,1,0,0,0,3497,3496,1,0,0,0,3498,209,1,0,0,0,3499,3500,5,65,0,0,3500,3506,5,184,0,0,3501,3502,5,103,0,0,3502,3503,5,80,0,0,3503,3504,5,610,0,0,3504,3506,5,511,0,0,3505,3499,1,0,0,0,3505,3501,1,0,0,0,3506,211,1,0,0,0,3507,3509,5,44,0,0,3508,3510,5,106,0,0,3509,3508,1,0,0,0,3509,3510,1,0,0,0,3510,3512,1,0,0,0,3511,3513,5,568,0,0,3512,3511,1,0,0,0,3512,3513,1,0,0,0,3513,3515,1,0,0,0,3514,3516,5,78,0,0,3515,3514,1,0,0,0,3515,3516,1,0,0,0,3516,3517,1,0,0,0,3517,3518,5,68,0,0,3518,3523,3,554,277,0,3519,3521,5,12,0,0,3520,3519,1,0,0,0,3520,3521,1,0,0,0,3521,3522,1,0,0,0,3522,3524,3,612,306,0,3523,3520,1,0,0,0,3523,3524,1,0,0,0,3524,3530,1,0,0,0,3525,3526,5,129,0,0,3526,3527,5,1133,0,0,3527,3528,3,644,322,0,3528,3529,5,1134,0,0,3529,3531,1,0,0,0,3530,3525,1,0,0,0,3530,3531,1,0,0,0,3531,3534,1,0,0,0,3532,3533,5,190,0,0,3533,3535,3,716,358,0,3534,3532,1,0,0,0,3534,3535,1,0,0,0,3535,3537,1,0,0,0,3536,3538,3,228,114,0,3537,3536,1,0,0,0,3537,3538,1,0,0,0,3538,3541,1,0,0,0,3539,3540,5,99,0,0,3540,3542,3,296,148,0,3541,3539,1,0,0,0,3541,3542,1,0,0,0,3542,213,1,0,0,0,3543,3545,5,44,0,0,3544,3546,5,106,0,0,3545,3544,1,0,0,0,3545,3546,1,0,0,0,3546,3548,1,0,0,0,3547,3549,5,568,0,0,3548,3547,1,0,0,0,3548,3549,1,0,0,0,3549,3551,1,0,0,0,3550,3552,5,78,0,0,3551,3550,1,0,0,0,3551,3552,1,0,0,0,3552,3592,1,0,0,0,3553,3556,3,554,277,0,3554,3555,5,1132,0,0,3555,3557,5,1117,0,0,3556,3554,1,0,0,0,3556,3557,1,0,0,0,3557,3566,1,0,0,0,3558,3559,5,1135,0,0,3559,3562,3,554,277,0,3560,3561,5,1132,0,0,3561,3563,5,1117,0,0,3562,3560,1,0,0,0,3562,3563,1,0,0,0,3563,3565,1,0,0,0,3564,3558,1,0,0,0,3565,3568,1,0,0,0,3566,3564,1,0,0,0,3566,3567,1,0,0,0,3567,3569,1,0,0,0,3568,3566,1,0,0,0,3569,3570,5,68,0,0,3570,3571,3,232,116,0,3571,3593,1,0,0,0,3572,3573,5,68,0,0,3573,3576,3,554,277,0,3574,3575,5,1132,0,0,3575,3577,5,1117,0,0,3576,3574,1,0,0,0,3576,3577,1,0,0,0,3577,3586,1,0,0,0,3578,3579,5,1135,0,0,3579,3582,3,554,277,0,3580,3581,5,1132,0,0,3581,3583,5,1117,0,0,3582,3580,1,0,0,0,3582,3583,1,0,0,0,3583,3585,1,0,0,0,3584,3578,1,0,0,0,3585,3588,1,0,0,0,3586,3584,1,0,0,0,3586,3587,1,0,0,0,3587,3589,1,0,0,0,3588,3586,1,0,0,0,3589,3590,5,187,0,0,3590,3591,3,232,116,0,3591,3593,1,0,0,0,3592,3553,1,0,0,0,3592,3572,1,0,0,0,3593,3596,1,0,0,0,3594,3595,5,190,0,0,3595,3597,3,716,358,0,3596,3594,1,0,0,0,3596,3597,1,0,0,0,3597,215,1,0,0,0,3598,3599,5,442,0,0,3599,3600,3,554,277,0,3600,3605,5,539,0,0,3601,3603,5,12,0,0,3602,3601,1,0,0,0,3602,3603,1,0,0,0,3603,3604,1,0,0,0,3604,3606,3,612,306,0,3605,3602,1,0,0,0,3605,3606,1,0,0,0,3606,217,1,0,0,0,3607,3608,5,442,0,0,3608,3609,3,554,277,0,3609,3610,5,134,0,0,3610,3617,3,612,306,0,3611,3612,3,724,362,0,3612,3613,5,1133,0,0,3613,3614,3,656,328,0,3614,3615,5,1134,0,0,3615,3618,1,0,0,0,3616,3618,7,46,0,0,3617,3611,1,0,0,0,3617,3616,1,0,0,0,3618,3621,1,0,0,0,3619,3620,5,190,0,0,3620,3622,3,716,358,0,3621,3619,1,0,0,0,3621,3622,1,0,0,0,3622,3625,1,0,0,0,3623,3624,5,99,0,0,3624,3626,3,296,148,0,3625,3623,1,0,0,0,3625,3626,1,0,0,0,3626,219,1,0,0,0,3627,3628,5,442,0,0,3628,3629,3,554,277,0,3629,3630,5,134,0,0,3630,3633,7,47,0,0,3631,3632,5,190,0,0,3632,3634,3,716,358,0,3633,3631,1,0,0,0,3633,3634,1,0,0,0,3634,3637,1,0,0,0,3635,3636,5,99,0,0,3636,3638,3,296,148,0,3637,3635,1,0,0,0,3637,3638,1,0,0,0,3638,221,1,0,0,0,3639,3640,5,442,0,0,3640,3641,3,554,277,0,3641,3642,5,361,0,0,3642,223,1,0,0,0,3643,3645,5,184,0,0,3644,3646,5,106,0,0,3645,3644,1,0,0,0,3645,3646,1,0,0,0,3646,3648,1,0,0,0,3647,3649,5,78,0,0,3648,3647,1,0,0,0,3648,3649,1,0,0,0,3649,3650,1,0,0,0,3650,3655,3,554,277,0,3651,3653,5,12,0,0,3652,3651,1,0,0,0,3652,3653,1,0,0,0,3653,3654,1,0,0,0,3654,3656,3,612,306,0,3655,3652,1,0,0,0,3655,3656,1,0,0,0,3656,3657,1,0,0,0,3657,3658,5,153,0,0,3658,3663,3,206,103,0,3659,3660,5,1135,0,0,3660,3662,3,206,103,0,3661,3659,1,0,0,0,3662,3665,1,0,0,0,3663,3661,1,0,0,0,3663,3664,1,0,0,0,3664,3668,1,0,0,0,3665,3663,1,0,0,0,3666,3667,5,190,0,0,3667,3669,3,716,358,0,3668,3666,1,0,0,0,3668,3669,1,0,0,0,3669,3671,1,0,0,0,3670,3672,3,228,114,0,3671,3670,1,0,0,0,3671,3672,1,0,0,0,3672,3674,1,0,0,0,3673,3675,3,294,147,0,3674,3673,1,0,0,0,3674,3675,1,0,0,0,3675,225,1,0,0,0,3676,3678,5,184,0,0,3677,3679,5,106,0,0,3678,3677,1,0,0,0,3678,3679,1,0,0,0,3679,3681,1,0,0,0,3680,3682,5,78,0,0,3681,3680,1,0,0,0,3681,3682,1,0,0,0,3682,3683,1,0,0,0,3683,3684,3,556,278,0,3684,3685,5,153,0,0,3685,3690,3,206,103,0,3686,3687,5,1135,0,0,3687,3689,3,206,103,0,3688,3686,1,0,0,0,3689,3692,1,0,0,0,3690,3688,1,0,0,0,3690,3691,1,0,0,0,3691,3695,1,0,0,0,3692,3690,1,0,0,0,3693,3694,5,190,0,0,3694,3696,3,716,358,0,3695,3693,1,0,0,0,3695,3696,1,0,0,0,3696,227,1,0,0,0,3697,3698,5,124,0,0,3698,3699,5,19,0,0,3699,3704,3,230,115,0,3700,3701,5,1135,0,0,3701,3703,3,230,115,0,3702,3700,1,0,0,0,3703,3706,1,0,0,0,3704,3702,1,0,0,0,3704,3705,1,0,0,0,3705,229,1,0,0,0,3706,3704,1,0,0,0,3707,3709,3,716,358,0,3708,3710,7,48,0,0,3709,3708,1,0,0,0,3709,3710,1,0,0,0,3710,231,1,0,0,0,3711,3716,3,234,117,0,3712,3713,5,1135,0,0,3713,3715,3,234,117,0,3714,3712,1,0,0,0,3715,3718,1,0,0,0,3716,3714,1,0,0,0,3716,3717,1,0,0,0,3717,233,1,0,0,0,3718,3716,1,0,0,0,3719,3723,3,236,118,0,3720,3722,3,242,121,0,3721,3720,1,0,0,0,3722,3725,1,0,0,0,3723,3721,1,0,0,0,3723,3724,1,0,0,0,3724,3738,1,0,0,0,3725,3723,1,0,0,0,3726,3727,5,1133,0,0,3727,3731,3,236,118,0,3728,3730,3,242,121,0,3729,3728,1,0,0,0,3730,3733,1,0,0,0,3731,3729,1,0,0,0,3731,3732,1,0,0,0,3732,3734,1,0,0,0,3733,3731,1,0,0,0,3734,3735,5,1134,0,0,3735,3738,1,0,0,0,3736,3738,3,260,130,0,3737,3719,1,0,0,0,3737,3726,1,0,0,0,3737,3736,1,0,0,0,3738,235,1,0,0,0,3739,3745,3,554,277,0,3740,3741,5,129,0,0,3741,3742,5,1133,0,0,3742,3743,3,644,322,0,3743,3744,5,1134,0,0,3744,3746,1,0,0,0,3745,3740,1,0,0,0,3745,3746,1,0,0,0,3746,3751,1,0,0,0,3747,3749,5,12,0,0,3748,3747,1,0,0,0,3748,3749,1,0,0,0,3749,3750,1,0,0,0,3750,3752,3,612,306,0,3751,3748,1,0,0,0,3751,3752,1,0,0,0,3752,3761,1,0,0,0,3753,3758,3,238,119,0,3754,3755,5,1135,0,0,3755,3757,3,238,119,0,3756,3754,1,0,0,0,3757,3760,1,0,0,0,3758,3756,1,0,0,0,3758,3759,1,0,0,0,3759,3762,1,0,0,0,3760,3758,1,0,0,0,3761,3753,1,0,0,0,3761,3762,1,0,0,0,3762,3777,1,0,0,0,3763,3764,5,1133,0,0,3764,3765,3,198,99,0,3765,3766,5,1134,0,0,3766,3768,1,0,0,0,3767,3769,5,12,0,0,3768,3767,1,0,0,0,3768,3769,1,0,0,0,3769,3770,1,0,0,0,3770,3771,3,612,306,0,3771,3777,1,0,0,0,3772,3773,5,1133,0,0,3773,3774,3,232,116,0,3774,3775,5,1134,0,0,3775,3777,1,0,0,0,3776,3739,1,0,0,0,3776,3763,1,0,0,0,3776,3772,1,0,0,0,3777,237,1,0,0,0,3778,3779,7,49,0,0,3779,3782,7,20,0,0,3780,3781,5,65,0,0,3781,3783,3,240,120,0,3782,3780,1,0,0,0,3782,3783,1,0,0,0,3783,3784,1,0,0,0,3784,3785,5,1133,0,0,3785,3786,3,580,290,0,3786,3787,5,1134,0,0,3787,239,1,0,0,0,3788,3794,5,90,0,0,3789,3790,5,124,0,0,3790,3794,5,19,0,0,3791,3792,5,73,0,0,3792,3794,5,19,0,0,3793,3788,1,0,0,0,3793,3789,1,0,0,0,3793,3791,1,0,0,0,3794,241,1,0,0,0,3795,3797,7,50,0,0,3796,3795,1,0,0,0,3796,3797,1,0,0,0,3797,3798,1,0,0,0,3798,3800,5,90,0,0,3799,3801,5,94,0,0,3800,3799,1,0,0,0,3800,3801,1,0,0,0,3801,3802,1,0,0,0,3802,3806,3,236,118,0,3803,3805,3,244,122,0,3804,3803,1,0,0,0,3805,3808,1,0,0,0,3806,3804,1,0,0,0,3806,3807,1,0,0,0,3807,3843,1,0,0,0,3808,3806,1,0,0,0,3809,3810,5,171,0,0,3810,3815,3,236,118,0,3811,3812,5,118,0,0,3812,3814,3,716,358,0,3813,3811,1,0,0,0,3814,3817,1,0,0,0,3815,3813,1,0,0,0,3815,3816,1,0,0,0,3816,3843,1,0,0,0,3817,3815,1,0,0,0,3818,3820,7,51,0,0,3819,3821,5,126,0,0,3820,3819,1,0,0,0,3820,3821,1,0,0,0,3821,3822,1,0,0,0,3822,3824,5,90,0,0,3823,3825,5,94,0,0,3824,3823,1,0,0,0,3824,3825,1,0,0,0,3825,3826,1,0,0,0,3826,3830,3,236,118,0,3827,3829,3,244,122,0,3828,3827,1,0,0,0,3829,3832,1,0,0,0,3830,3828,1,0,0,0,3830,3831,1,0,0,0,3831,3843,1,0,0,0,3832,3830,1,0,0,0,3833,3838,5,113,0,0,3834,3836,7,51,0,0,3835,3837,5,126,0,0,3836,3835,1,0,0,0,3836,3837,1,0,0,0,3837,3839,1,0,0,0,3838,3834,1,0,0,0,3838,3839,1,0,0,0,3839,3840,1,0,0,0,3840,3841,5,90,0,0,3841,3843,3,236,118,0,3842,3796,1,0,0,0,3842,3809,1,0,0,0,3842,3818,1,0,0,0,3842,3833,1,0,0,0,3843,243,1,0,0,0,3844,3845,5,118,0,0,3845,3852,3,716,358,0,3846,3847,5,187,0,0,3847,3848,5,1133,0,0,3848,3849,3,644,322,0,3849,3850,5,1134,0,0,3850,3852,1,0,0,0,3851,3844,1,0,0,0,3851,3846,1,0,0,0,3852,245,1,0,0,0,3853,3854,5,1133,0,0,3854,3855,3,250,125,0,3855,3856,5,1134,0,0,3856,3862,1,0,0,0,3857,3858,5,1133,0,0,3858,3859,3,246,123,0,3859,3860,5,1134,0,0,3860,3862,1,0,0,0,3861,3853,1,0,0,0,3861,3857,1,0,0,0,3862,247,1,0,0,0,3863,3864,5,1133,0,0,3864,3865,3,252,126,0,3865,3866,5,1134,0,0,3866,3872,1,0,0,0,3867,3868,5,1133,0,0,3868,3869,3,248,124,0,3869,3870,5,1134,0,0,3870,3872,1,0,0,0,3871,3863,1,0,0,0,3871,3867,1,0,0,0,3872,249,1,0,0,0,3873,3877,5,152,0,0,3874,3876,3,270,135,0,3875,3874,1,0,0,0,3876,3879,1,0,0,0,3877,3875,1,0,0,0,3877,3878,1,0,0,0,3878,3880,1,0,0,0,3879,3877,1,0,0,0,3880,3882,3,272,136,0,3881,3883,3,278,139,0,3882,3881,1,0,0,0,3882,3883,1,0,0,0,3883,3884,1,0,0,0,3884,3886,3,284,142,0,3885,3887,3,286,143,0,3886,3885,1,0,0,0,3886,3887,1,0,0,0,3887,3889,1,0,0,0,3888,3890,3,288,144,0,3889,3888,1,0,0,0,3889,3890,1,0,0,0,3890,3892,1,0,0,0,3891,3893,3,290,145,0,3892,3891,1,0,0,0,3892,3893,1,0,0,0,3893,3895,1,0,0,0,3894,3896,3,228,114,0,3895,3894,1,0,0,0,3895,3896,1,0,0,0,3896,3898,1,0,0,0,3897,3899,3,294,147,0,3898,3897,1,0,0,0,3898,3899,1,0,0,0,3899,3928,1,0,0,0,3900,3904,5,152,0,0,3901,3903,3,270,135,0,3902,3901,1,0,0,0,3903,3906,1,0,0,0,3904,3902,1,0,0,0,3904,3905,1,0,0,0,3905,3907,1,0,0,0,3906,3904,1,0,0,0,3907,3908,3,272,136,0,3908,3910,3,284,142,0,3909,3911,3,286,143,0,3910,3909,1,0,0,0,3910,3911,1,0,0,0,3911,3913,1,0,0,0,3912,3914,3,288,144,0,3913,3912,1,0,0,0,3913,3914,1,0,0,0,3914,3916,1,0,0,0,3915,3917,3,290,145,0,3916,3915,1,0,0,0,3916,3917,1,0,0,0,3917,3919,1,0,0,0,3918,3920,3,228,114,0,3919,3918,1,0,0,0,3919,3920,1,0,0,0,3920,3922,1,0,0,0,3921,3923,3,294,147,0,3922,3921,1,0,0,0,3922,3923,1,0,0,0,3923,3925,1,0,0,0,3924,3926,3,278,139,0,3925,3924,1,0,0,0,3925,3926,1,0,0,0,3926,3928,1,0,0,0,3927,3873,1,0,0,0,3927,3900,1,0,0,0,3928,251,1,0,0,0,3929,3933,5,152,0,0,3930,3932,3,270,135,0,3931,3930,1,0,0,0,3932,3935,1,0,0,0,3933,3931,1,0,0,0,3933,3934,1,0,0,0,3934,3936,1,0,0,0,3935,3933,1,0,0,0,3936,3937,3,272,136,0,3937,3939,3,284,142,0,3938,3940,3,286,143,0,3939,3938,1,0,0,0,3939,3940,1,0,0,0,3940,3942,1,0,0,0,3941,3943,3,288,144,0,3942,3941,1,0,0,0,3942,3943,1,0,0,0,3943,3945,1,0,0,0,3944,3946,3,290,145,0,3945,3944,1,0,0,0,3945,3946,1,0,0,0,3946,3948,1,0,0,0,3947,3949,3,228,114,0,3948,3947,1,0,0,0,3948,3949,1,0,0,0,3949,3951,1,0,0,0,3950,3952,3,294,147,0,3951,3950,1,0,0,0,3951,3952,1,0,0,0,3952,3954,1,0,0,0,3953,3955,3,256,128,0,3954,3953,1,0,0,0,3954,3955,1,0,0,0,3955,253,1,0,0,0,3956,3958,5,180,0,0,3957,3959,7,44,0,0,3958,3957,1,0,0,0,3958,3959,1,0,0,0,3959,3960,1,0,0,0,3960,3961,3,248,124,0,3961,255,1,0,0,0,3962,3964,5,180,0,0,3963,3965,7,44,0,0,3964,3963,1,0,0,0,3964,3965,1,0,0,0,3965,3968,1,0,0,0,3966,3969,3,252,126,0,3967,3969,3,248,124,0,3968,3966,1,0,0,0,3968,3967,1,0,0,0,3969,257,1,0,0,0,3970,3985,5,94,0,0,3971,3986,3,252,126,0,3972,3986,3,248,124,0,3973,3976,5,1133,0,0,3974,3977,3,252,126,0,3975,3977,3,248,124,0,3976,3974,1,0,0,0,3976,3975,1,0,0,0,3977,3978,1,0,0,0,3978,3983,5,1134,0,0,3979,3981,5,12,0,0,3980,3979,1,0,0,0,3980,3981,1,0,0,0,3981,3982,1,0,0,0,3982,3984,3,612,306,0,3983,3980,1,0,0,0,3983,3984,1,0,0,0,3984,3986,1,0,0,0,3985,3971,1,0,0,0,3985,3972,1,0,0,0,3985,3973,1,0,0,0,3986,259,1,0,0,0,3987,3988,5,278,0,0,3988,3989,5,1133,0,0,3989,3990,5,1148,0,0,3990,3991,5,1135,0,0,3991,3992,5,1148,0,0,3992,3993,5,365,0,0,3993,3994,5,1133,0,0,3994,3995,3,262,131,0,3995,3996,5,1134,0,0,3996,4001,5,1134,0,0,3997,3999,5,12,0,0,3998,3997,1,0,0,0,3998,3999,1,0,0,0,3999,4e3,1,0,0,0,4e3,4002,3,612,306,0,4001,3998,1,0,0,0,4001,4002,1,0,0,0,4002,261,1,0,0,0,4003,4008,3,264,132,0,4004,4005,5,1135,0,0,4005,4007,3,264,132,0,4006,4004,1,0,0,0,4007,4010,1,0,0,0,4008,4006,1,0,0,0,4008,4009,1,0,0,0,4009,263,1,0,0,0,4010,4008,1,0,0,0,4011,4028,3,570,285,0,4012,4013,5,65,0,0,4013,4029,5,284,0,0,4014,4026,3,632,316,0,4015,4016,5,285,0,0,4016,4018,5,1148,0,0,4017,4019,3,266,133,0,4018,4017,1,0,0,0,4018,4019,1,0,0,0,4019,4021,1,0,0,0,4020,4022,3,268,134,0,4021,4020,1,0,0,0,4021,4022,1,0,0,0,4022,4027,1,0,0,0,4023,4024,5,60,0,0,4024,4025,5,285,0,0,4025,4027,5,1148,0,0,4026,4015,1,0,0,0,4026,4023,1,0,0,0,4027,4029,1,0,0,0,4028,4012,1,0,0,0,4028,4014,1,0,0,0,4029,4041,1,0,0,0,4030,4032,5,283,0,0,4031,4033,5,285,0,0,4032,4031,1,0,0,0,4032,4033,1,0,0,0,4033,4034,1,0,0,0,4034,4035,5,1148,0,0,4035,4036,5,365,0,0,4036,4037,5,1133,0,0,4037,4038,3,262,131,0,4038,4039,5,1134,0,0,4039,4041,1,0,0,0,4040,4011,1,0,0,0,4040,4030,1,0,0,0,4041,265,1,0,0,0,4042,4047,5,116,0,0,4043,4047,5,411,0,0,4044,4045,5,42,0,0,4045,4047,3,662,331,0,4046,4042,1,0,0,0,4046,4043,1,0,0,0,4046,4044,1,0,0,0,4047,4048,1,0,0,0,4048,4049,5,118,0,0,4049,4050,5,55,0,0,4050,267,1,0,0,0,4051,4056,5,116,0,0,4052,4056,5,411,0,0,4053,4054,5,42,0,0,4054,4056,3,662,331,0,4055,4051,1,0,0,0,4055,4052,1,0,0,0,4055,4053,1,0,0,0,4056,4057,1,0,0,0,4057,4058,5,118,0,0,4058,4059,5,411,0,0,4059,269,1,0,0,0,4060,4069,7,52,0,0,4061,4069,5,75,0,0,4062,4069,5,171,0,0,4063,4069,5,166,0,0,4064,4069,5,164,0,0,4065,4069,5,625,0,0,4066,4069,7,53,0,0,4067,4069,5,165,0,0,4068,4060,1,0,0,0,4068,4061,1,0,0,0,4068,4062,1,0,0,0,4068,4063,1,0,0,0,4068,4064,1,0,0,0,4068,4065,1,0,0,0,4068,4066,1,0,0,0,4068,4067,1,0,0,0,4069,271,1,0,0,0,4070,4073,5,1117,0,0,4071,4073,3,276,138,0,4072,4070,1,0,0,0,4072,4071,1,0,0,0,4073,4078,1,0,0,0,4074,4075,5,1135,0,0,4075,4077,3,276,138,0,4076,4074,1,0,0,0,4077,4080,1,0,0,0,4078,4076,1,0,0,0,4078,4079,1,0,0,0,4079,273,1,0,0,0,4080,4078,1,0,0,0,4081,4083,5,12,0,0,4082,4081,1,0,0,0,4082,4083,1,0,0,0,4083,4084,1,0,0,0,4084,4085,3,612,306,0,4085,275,1,0,0,0,4086,4087,3,552,276,0,4087,4088,5,1132,0,0,4088,4089,5,1117,0,0,4089,4107,1,0,0,0,4090,4092,3,570,285,0,4091,4093,3,274,137,0,4092,4091,1,0,0,0,4092,4093,1,0,0,0,4093,4107,1,0,0,0,4094,4096,3,676,338,0,4095,4097,3,274,137,0,4096,4095,1,0,0,0,4096,4097,1,0,0,0,4097,4107,1,0,0,0,4098,4099,5,1159,0,0,4099,4101,5,1108,0,0,4100,4098,1,0,0,0,4100,4101,1,0,0,0,4101,4102,1,0,0,0,4102,4104,3,716,358,0,4103,4105,3,274,137,0,4104,4103,1,0,0,0,4104,4105,1,0,0,0,4105,4107,1,0,0,0,4106,4086,1,0,0,0,4106,4090,1,0,0,0,4106,4094,1,0,0,0,4106,4100,1,0,0,0,4107,277,1,0,0,0,4108,4109,5,87,0,0,4109,4114,3,208,104,0,4110,4111,5,1135,0,0,4111,4113,3,208,104,0,4112,4110,1,0,0,0,4113,4116,1,0,0,0,4114,4112,1,0,0,0,4114,4115,1,0,0,0,4115,4145,1,0,0,0,4116,4114,1,0,0,0,4117,4118,5,87,0,0,4118,4119,5,400,0,0,4119,4145,5,1148,0,0,4120,4121,5,87,0,0,4121,4122,5,127,0,0,4122,4126,5,1148,0,0,4123,4124,5,25,0,0,4124,4125,5,153,0,0,4125,4127,3,596,298,0,4126,4123,1,0,0,0,4126,4127,1,0,0,0,4127,4134,1,0,0,0,4128,4130,7,41,0,0,4129,4131,3,280,140,0,4130,4129,1,0,0,0,4131,4132,1,0,0,0,4132,4130,1,0,0,0,4132,4133,1,0,0,0,4133,4135,1,0,0,0,4134,4128,1,0,0,0,4134,4135,1,0,0,0,4135,4142,1,0,0,0,4136,4138,5,101,0,0,4137,4139,3,282,141,0,4138,4137,1,0,0,0,4139,4140,1,0,0,0,4140,4138,1,0,0,0,4140,4141,1,0,0,0,4141,4143,1,0,0,0,4142,4136,1,0,0,0,4142,4143,1,0,0,0,4143,4145,1,0,0,0,4144,4108,1,0,0,0,4144,4117,1,0,0,0,4144,4120,1,0,0,0,4145,279,1,0,0,0,4146,4147,5,173,0,0,4147,4148,5,19,0,0,4148,4159,5,1148,0,0,4149,4151,5,122,0,0,4150,4149,1,0,0,0,4150,4151,1,0,0,0,4151,4152,1,0,0,0,4152,4153,5,56,0,0,4153,4154,5,19,0,0,4154,4159,5,1148,0,0,4155,4156,5,58,0,0,4156,4157,5,19,0,0,4157,4159,5,1148,0,0,4158,4146,1,0,0,0,4158,4150,1,0,0,0,4158,4155,1,0,0,0,4159,281,1,0,0,0,4160,4161,5,169,0,0,4161,4162,5,19,0,0,4162,4167,5,1148,0,0,4163,4164,5,173,0,0,4164,4165,5,19,0,0,4165,4167,5,1148,0,0,4166,4160,1,0,0,0,4166,4163,1,0,0,0,4167,283,1,0,0,0,4168,4169,5,68,0,0,4169,4171,3,232,116,0,4170,4168,1,0,0,0,4170,4171,1,0,0,0,4171,4174,1,0,0,0,4172,4173,5,190,0,0,4173,4175,3,716,358,0,4174,4172,1,0,0,0,4174,4175,1,0,0,0,4175,285,1,0,0,0,4176,4177,5,73,0,0,4177,4178,5,19,0,0,4178,4183,3,292,146,0,4179,4180,5,1135,0,0,4180,4182,3,292,146,0,4181,4179,1,0,0,0,4182,4185,1,0,0,0,4183,4181,1,0,0,0,4183,4184,1,0,0,0,4184,4188,1,0,0,0,4185,4183,1,0,0,0,4186,4187,5,192,0,0,4187,4189,5,598,0,0,4188,4186,1,0,0,0,4188,4189,1,0,0,0,4189,287,1,0,0,0,4190,4191,5,74,0,0,4191,4192,3,716,358,0,4192,289,1,0,0,0,4193,4194,5,676,0,0,4194,4195,3,694,347,0,4195,4196,5,12,0,0,4196,4197,5,1133,0,0,4197,4198,3,692,346,0,4198,4208,5,1134,0,0,4199,4200,5,1135,0,0,4200,4201,3,694,347,0,4201,4202,5,12,0,0,4202,4203,5,1133,0,0,4203,4204,3,692,346,0,4204,4205,5,1134,0,0,4205,4207,1,0,0,0,4206,4199,1,0,0,0,4207,4210,1,0,0,0,4208,4206,1,0,0,0,4208,4209,1,0,0,0,4209,291,1,0,0,0,4210,4208,1,0,0,0,4211,4213,3,716,358,0,4212,4214,7,48,0,0,4213,4212,1,0,0,0,4213,4214,1,0,0,0,4214,293,1,0,0,0,4215,4226,5,99,0,0,4216,4217,3,296,148,0,4217,4218,5,1135,0,0,4218,4220,1,0,0,0,4219,4216,1,0,0,0,4219,4220,1,0,0,0,4220,4221,1,0,0,0,4221,4227,3,296,148,0,4222,4223,3,296,148,0,4223,4224,5,532,0,0,4224,4225,3,296,148,0,4225,4227,1,0,0,0,4226,4219,1,0,0,0,4226,4222,1,0,0,0,4227,295,1,0,0,0,4228,4232,3,618,309,0,4229,4232,3,594,297,0,4230,4232,3,614,307,0,4231,4228,1,0,0,0,4231,4229,1,0,0,0,4231,4230,1,0,0,0,4232,297,1,0,0,0,4233,4234,5,629,0,0,4234,4243,5,653,0,0,4235,4240,3,320,160,0,4236,4237,5,1135,0,0,4237,4239,3,320,160,0,4238,4236,1,0,0,0,4239,4242,1,0,0,0,4240,4238,1,0,0,0,4240,4241,1,0,0,0,4241,4244,1,0,0,0,4242,4240,1,0,0,0,4243,4235,1,0,0,0,4243,4244,1,0,0,0,4244,299,1,0,0,0,4245,4247,5,344,0,0,4246,4248,5,678,0,0,4247,4246,1,0,0,0,4247,4248,1,0,0,0,4248,301,1,0,0,0,4249,4251,5,369,0,0,4250,4252,5,678,0,0,4251,4250,1,0,0,0,4251,4252,1,0,0,0,4252,4258,1,0,0,0,4253,4255,5,10,0,0,4254,4256,5,521,0,0,4255,4254,1,0,0,0,4255,4256,1,0,0,0,4256,4257,1,0,0,0,4257,4259,5,353,0,0,4258,4253,1,0,0,0,4258,4259,1,0,0,0,4259,4264,1,0,0,0,4260,4262,5,521,0,0,4261,4260,1,0,0,0,4261,4262,1,0,0,0,4262,4263,1,0,0,0,4263,4265,5,138,0,0,4264,4261,1,0,0,0,4264,4265,1,0,0,0,4265,303,1,0,0,0,4266,4268,5,597,0,0,4267,4269,5,678,0,0,4268,4267,1,0,0,0,4268,4269,1,0,0,0,4269,4275,1,0,0,0,4270,4272,5,10,0,0,4271,4273,5,521,0,0,4272,4271,1,0,0,0,4272,4273,1,0,0,0,4273,4274,1,0,0,0,4274,4276,5,353,0,0,4275,4270,1,0,0,0,4275,4276,1,0,0,0,4276,4281,1,0,0,0,4277,4279,5,521,0,0,4278,4277,1,0,0,0,4278,4279,1,0,0,0,4279,4280,1,0,0,0,4280,4282,5,138,0,0,4281,4278,1,0,0,0,4281,4282,1,0,0,0,4282,305,1,0,0,0,4283,4284,5,604,0,0,4284,4285,3,612,306,0,4285,307,1,0,0,0,4286,4288,5,597,0,0,4287,4289,5,678,0,0,4288,4287,1,0,0,0,4288,4289,1,0,0,0,4289,4290,1,0,0,0,4290,4292,5,175,0,0,4291,4293,5,604,0,0,4292,4291,1,0,0,0,4292,4293,1,0,0,0,4293,4294,1,0,0,0,4294,4295,3,612,306,0,4295,309,1,0,0,0,4296,4297,5,138,0,0,4297,4298,5,604,0,0,4298,4299,3,612,306,0,4299,311,1,0,0,0,4300,4301,5,103,0,0,4301,4302,7,54,0,0,4302,4307,3,322,161,0,4303,4304,5,1135,0,0,4304,4306,3,322,161,0,4305,4303,1,0,0,0,4306,4309,1,0,0,0,4307,4305,1,0,0,0,4307,4308,1,0,0,0,4308,4311,1,0,0,0,4309,4307,1,0,0,0,4310,4312,3,674,337,0,4311,4310,1,0,0,0,4311,4312,1,0,0,0,4312,313,1,0,0,0,4313,4314,5,182,0,0,4314,4315,5,742,0,0,4315,315,1,0,0,0,4316,4317,5,153,0,0,4317,4318,5,340,0,0,4318,4319,5,1124,0,0,4319,4320,7,24,0,0,4320,317,1,0,0,0,4321,4323,5,153,0,0,4322,4324,7,55,0,0,4323,4322,1,0,0,0,4323,4324,1,0,0,0,4324,4325,1,0,0,0,4325,4326,5,653,0,0,4326,4331,3,326,163,0,4327,4328,5,1135,0,0,4328,4330,3,326,163,0,4329,4327,1,0,0,0,4330,4333,1,0,0,0,4331,4329,1,0,0,0,4331,4332,1,0,0,0,4332,319,1,0,0,0,4333,4331,1,0,0,0,4334,4335,5,192,0,0,4335,4336,5,377,0,0,4336,4342,5,616,0,0,4337,4338,5,134,0,0,4338,4342,5,193,0,0,4339,4340,5,134,0,0,4340,4342,5,538,0,0,4341,4334,1,0,0,0,4341,4337,1,0,0,0,4341,4339,1,0,0,0,4342,321,1,0,0,0,4343,4348,3,554,277,0,4344,4346,5,12,0,0,4345,4344,1,0,0,0,4345,4346,1,0,0,0,4346,4347,1,0,0,0,4347,4349,3,612,306,0,4348,4345,1,0,0,0,4348,4349,1,0,0,0,4349,4350,1,0,0,0,4350,4351,3,324,162,0,4351,323,1,0,0,0,4352,4354,5,134,0,0,4353,4355,5,474,0,0,4354,4353,1,0,0,0,4354,4355,1,0,0,0,4355,4361,1,0,0,0,4356,4358,5,106,0,0,4357,4356,1,0,0,0,4357,4358,1,0,0,0,4358,4359,1,0,0,0,4359,4361,5,193,0,0,4360,4352,1,0,0,0,4360,4357,1,0,0,0,4361,325,1,0,0,0,4362,4363,5,464,0,0,4363,4364,5,472,0,0,4364,4370,3,328,164,0,4365,4366,5,134,0,0,4366,4370,5,193,0,0,4367,4368,5,134,0,0,4368,4370,5,538,0,0,4369,4362,1,0,0,0,4369,4365,1,0,0,0,4369,4367,1,0,0,0,4370,327,1,0,0,0,4371,4372,5,799,0,0,4372,4379,5,134,0,0,4373,4374,5,134,0,0,4374,4379,5,800,0,0,4375,4376,5,134,0,0,4376,4379,5,801,0,0,4377,4379,5,802,0,0,4378,4371,1,0,0,0,4378,4373,1,0,0,0,4378,4375,1,0,0,0,4378,4377,1,0,0,0,4379,329,1,0,0,0,4380,4381,5,24,0,0,4381,4382,5,477,0,0,4382,4383,5,175,0,0,4383,4388,3,348,174,0,4384,4385,5,1135,0,0,4385,4387,3,348,174,0,4386,4384,1,0,0,0,4387,4390,1,0,0,0,4388,4386,1,0,0,0,4388,4389,1,0,0,0,4389,4392,1,0,0,0,4390,4388,1,0,0,0,4391,4393,3,356,178,0,4392,4391,1,0,0,0,4392,4393,1,0,0,0,4393,331,1,0,0,0,4394,4395,5,24,0,0,4395,4396,5,588,0,0,4396,4397,5,429,0,0,4397,4402,3,358,179,0,4398,4399,5,1135,0,0,4399,4401,3,358,179,0,4400,4398,1,0,0,0,4401,4404,1,0,0,0,4402,4400,1,0,0,0,4402,4403,1,0,0,0,4403,333,1,0,0,0,4404,4402,1,0,0,0,4405,4406,5,132,0,0,4406,4407,7,56,0,0,4407,4412,5,476,0,0,4408,4409,5,175,0,0,4409,4413,5,1148,0,0,4410,4411,5,15,0,0,4411,4413,5,1148,0,0,4412,4408,1,0,0,0,4412,4410,1,0,0,0,4413,335,1,0,0,0,4414,4415,5,589,0,0,4415,4416,5,477,0,0,4416,337,1,0,0,0,4417,4418,5,589,0,0,4418,4420,5,614,0,0,4419,4421,5,6,0,0,4420,4419,1,0,0,0,4420,4421,1,0,0,0,4421,4423,1,0,0,0,4422,4424,3,356,178,0,4423,4422,1,0,0,0,4423,4424,1,0,0,0,4424,339,1,0,0,0,4425,4426,5,629,0,0,4426,4435,5,614,0,0,4427,4432,3,362,181,0,4428,4429,5,1135,0,0,4429,4431,3,362,181,0,4430,4428,1,0,0,0,4431,4434,1,0,0,0,4432,4430,1,0,0,0,4432,4433,1,0,0,0,4433,4436,1,0,0,0,4434,4432,1,0,0,0,4435,4427,1,0,0,0,4435,4436,1,0,0,0,4436,4439,1,0,0,0,4437,4438,5,663,0,0,4438,4440,3,364,182,0,4439,4437,1,0,0,0,4439,4440,1,0,0,0,4440,4444,1,0,0,0,4441,4443,3,366,183,0,4442,4441,1,0,0,0,4443,4446,1,0,0,0,4444,4442,1,0,0,0,4444,4445,1,0,0,0,4445,4448,1,0,0,0,4446,4444,1,0,0,0,4447,4449,3,356,178,0,4448,4447,1,0,0,0,4448,4449,1,0,0,0,4449,341,1,0,0,0,4450,4451,5,635,0,0,4451,4460,5,614,0,0,4452,4457,3,362,181,0,4453,4454,5,1135,0,0,4454,4456,3,362,181,0,4455,4453,1,0,0,0,4456,4459,1,0,0,0,4457,4455,1,0,0,0,4457,4458,1,0,0,0,4458,4461,1,0,0,0,4459,4457,1,0,0,0,4460,4452,1,0,0,0,4460,4461,1,0,0,0,4461,343,1,0,0,0,4462,4463,5,629,0,0,4463,4464,5,441,0,0,4464,345,1,0,0,0,4465,4466,5,635,0,0,4466,4467,5,441,0,0,4467,347,1,0,0,0,4468,4469,3,350,175,0,4469,4470,5,1124,0,0,4470,4471,5,1148,0,0,4471,4498,1,0,0,0,4472,4473,3,352,176,0,4473,4474,5,1124,0,0,4474,4475,3,618,309,0,4475,4498,1,0,0,0,4476,4477,3,354,177,0,4477,4478,5,1124,0,0,4478,4479,7,24,0,0,4479,4498,1,0,0,0,4480,4481,5,481,0,0,4481,4482,5,1124,0,0,4482,4498,5,1151,0,0,4483,4484,5,449,0,0,4484,4485,5,1124,0,0,4485,4494,5,1133,0,0,4486,4491,3,612,306,0,4487,4488,5,1135,0,0,4488,4490,3,612,306,0,4489,4487,1,0,0,0,4490,4493,1,0,0,0,4491,4489,1,0,0,0,4491,4492,1,0,0,0,4492,4495,1,0,0,0,4493,4491,1,0,0,0,4494,4486,1,0,0,0,4494,4495,1,0,0,0,4495,4496,1,0,0,0,4496,4498,5,1134,0,0,4497,4468,1,0,0,0,4497,4472,1,0,0,0,4497,4476,1,0,0,0,4497,4480,1,0,0,0,4497,4483,1,0,0,0,4498,349,1,0,0,0,4499,4500,7,57,0,0,4500,351,1,0,0,0,4501,4502,7,58,0,0,4502,353,1,0,0,0,4503,4504,7,59,0,0,4504,355,1,0,0,0,4505,4506,5,65,0,0,4506,4507,5,355,0,0,4507,4508,5,1148,0,0,4508,357,1,0,0,0,4509,4510,5,581,0,0,4510,4511,5,1124,0,0,4511,4512,5,1133,0,0,4512,4513,3,644,322,0,4513,4514,5,1134,0,0,4514,4559,1,0,0,0,4515,4516,5,583,0,0,4516,4517,5,1124,0,0,4517,4518,5,1133,0,0,4518,4519,3,644,322,0,4519,4520,5,1134,0,0,4520,4559,1,0,0,0,4521,4522,5,582,0,0,4522,4523,5,1124,0,0,4523,4524,5,1133,0,0,4524,4525,3,648,324,0,4525,4526,5,1134,0,0,4526,4559,1,0,0,0,4527,4528,5,584,0,0,4528,4529,5,1124,0,0,4529,4530,5,1133,0,0,4530,4531,3,648,324,0,4531,4532,5,1134,0,0,4532,4559,1,0,0,0,4533,4534,5,586,0,0,4534,4535,5,1124,0,0,4535,4536,5,1133,0,0,4536,4537,3,658,329,0,4537,4538,5,1134,0,0,4538,4559,1,0,0,0,4539,4540,5,587,0,0,4540,4541,5,1124,0,0,4541,4542,5,1133,0,0,4542,4543,3,658,329,0,4543,4544,5,1134,0,0,4544,4559,1,0,0,0,4545,4546,5,585,0,0,4546,4547,5,1124,0,0,4547,4548,5,1133,0,0,4548,4553,3,360,180,0,4549,4550,5,1135,0,0,4550,4552,3,360,180,0,4551,4549,1,0,0,0,4552,4555,1,0,0,0,4553,4551,1,0,0,0,4553,4554,1,0,0,0,4554,4556,1,0,0,0,4555,4553,1,0,0,0,4556,4557,5,1134,0,0,4557,4559,1,0,0,0,4558,4509,1,0,0,0,4558,4515,1,0,0,0,4558,4521,1,0,0,0,4558,4527,1,0,0,0,4558,4533,1,0,0,0,4558,4539,1,0,0,0,4558,4545,1,0,0,0,4559,359,1,0,0,0,4560,4561,5,1133,0,0,4561,4562,3,554,277,0,4562,4563,5,1135,0,0,4563,4564,3,554,277,0,4564,4565,5,1134,0,0,4565,361,1,0,0,0,4566,4567,7,60,0,0,4567,363,1,0,0,0,4568,4569,7,61,0,0,4569,4570,5,1124,0,0,4570,4587,3,368,184,0,4571,4572,5,483,0,0,4572,4573,5,1124,0,0,4573,4574,5,1148,0,0,4574,4575,5,1135,0,0,4575,4576,5,484,0,0,4576,4577,5,1124,0,0,4577,4587,3,618,309,0,4578,4579,5,575,0,0,4579,4580,5,1124,0,0,4580,4581,5,1148,0,0,4581,4582,5,1135,0,0,4582,4583,5,576,0,0,4583,4584,5,1124,0,0,4584,4587,3,618,309,0,4585,4587,5,623,0,0,4586,4568,1,0,0,0,4586,4571,1,0,0,0,4586,4578,1,0,0,0,4586,4585,1,0,0,0,4587,365,1,0,0,0,4588,4589,5,665,0,0,4589,4590,5,1124,0,0,4590,4601,5,1148,0,0,4591,4592,5,551,0,0,4592,4593,5,1124,0,0,4593,4601,5,1148,0,0,4594,4595,5,391,0,0,4595,4596,5,1124,0,0,4596,4601,5,1148,0,0,4597,4598,5,555,0,0,4598,4599,5,1124,0,0,4599,4601,5,1148,0,0,4600,4588,1,0,0,0,4600,4591,1,0,0,0,4600,4594,1,0,0,0,4600,4597,1,0,0,0,4601,367,1,0,0,0,4602,4607,3,604,302,0,4603,4604,5,1135,0,0,4604,4606,3,604,302,0,4605,4603,1,0,0,0,4606,4609,1,0,0,0,4607,4605,1,0,0,0,4607,4608,1,0,0,0,4608,4612,1,0,0,0,4609,4607,1,0,0,0,4610,4612,5,1148,0,0,4611,4602,1,0,0,0,4611,4610,1,0,0,0,4612,369,1,0,0,0,4613,4614,5,681,0,0,4614,4615,7,62,0,0,4615,4617,3,606,303,0,4616,4618,7,63,0,0,4617,4616,1,0,0,0,4617,4618,1,0,0,0,4618,371,1,0,0,0,4619,4620,5,681,0,0,4620,4621,5,407,0,0,4621,4627,3,606,303,0,4622,4625,5,643,0,0,4623,4624,5,65,0,0,4624,4626,5,509,0,0,4625,4623,1,0,0,0,4625,4626,1,0,0,0,4626,4628,1,0,0,0,4627,4622,1,0,0,0,4627,4628,1,0,0,0,4628,373,1,0,0,0,4629,4630,5,681,0,0,4630,4631,5,560,0,0,4631,4632,3,606,303,0,4632,375,1,0,0,0,4633,4634,5,681,0,0,4634,4635,5,369,0,0,4635,4638,3,606,303,0,4636,4637,5,536,0,0,4637,4639,5,553,0,0,4638,4636,1,0,0,0,4638,4639,1,0,0,0,4639,377,1,0,0,0,4640,4641,5,681,0,0,4641,4642,5,597,0,0,4642,4643,3,606,303,0,4643,379,1,0,0,0,4644,4645,5,681,0,0,4645,4648,5,570,0,0,4646,4647,5,32,0,0,4647,4649,3,606,303,0,4648,4646,1,0,0,0,4648,4649,1,0,0,0,4649,381,1,0,0,0,4650,4651,5,560,0,0,4651,4652,3,612,306,0,4652,4655,5,68,0,0,4653,4656,5,1148,0,0,4654,4656,5,1159,0,0,4655,4653,1,0,0,0,4655,4654,1,0,0,0,4656,383,1,0,0,0,4657,4658,5,708,0,0,4658,4661,3,612,306,0,4659,4660,5,187,0,0,4660,4662,3,660,330,0,4661,4659,1,0,0,0,4661,4662,1,0,0,0,4662,385,1,0,0,0,4663,4664,7,64,0,0,4664,4665,5,560,0,0,4665,4666,3,612,306,0,4666,387,1,0,0,0,4667,4670,3,390,195,0,4668,4670,3,4,2,0,4669,4667,1,0,0,0,4669,4668,1,0,0,0,4670,389,1,0,0,0,4671,4672,3,612,306,0,4672,4673,5,1144,0,0,4673,4675,1,0,0,0,4674,4671,1,0,0,0,4674,4675,1,0,0,0,4675,4676,1,0,0,0,4676,4682,5,344,0,0,4677,4678,3,410,205,0,4678,4679,5,1136,0,0,4679,4681,1,0,0,0,4680,4677,1,0,0,0,4681,4684,1,0,0,0,4682,4680,1,0,0,0,4682,4683,1,0,0,0,4683,4690,1,0,0,0,4684,4682,1,0,0,0,4685,4686,3,412,206,0,4686,4687,5,1136,0,0,4687,4689,1,0,0,0,4688,4685,1,0,0,0,4689,4692,1,0,0,0,4690,4688,1,0,0,0,4690,4691,1,0,0,0,4691,4698,1,0,0,0,4692,4690,1,0,0,0,4693,4694,3,414,207,0,4694,4695,5,1136,0,0,4695,4697,1,0,0,0,4696,4693,1,0,0,0,4697,4700,1,0,0,0,4698,4696,1,0,0,0,4698,4699,1,0,0,0,4699,4706,1,0,0,0,4700,4698,1,0,0,0,4701,4702,3,416,208,0,4702,4703,5,1136,0,0,4703,4705,1,0,0,0,4704,4701,1,0,0,0,4705,4708,1,0,0,0,4706,4704,1,0,0,0,4706,4707,1,0,0,0,4707,4712,1,0,0,0,4708,4706,1,0,0,0,4709,4711,3,420,210,0,4710,4709,1,0,0,0,4711,4714,1,0,0,0,4712,4710,1,0,0,0,4712,4713,1,0,0,0,4713,4715,1,0,0,0,4714,4712,1,0,0,0,4715,4717,5,407,0,0,4716,4718,3,612,306,0,4717,4716,1,0,0,0,4717,4718,1,0,0,0,4718,391,1,0,0,0,4719,4722,5,22,0,0,4720,4723,3,612,306,0,4721,4723,3,716,358,0,4722,4720,1,0,0,0,4722,4721,1,0,0,0,4722,4723,1,0,0,0,4723,4725,1,0,0,0,4724,4726,3,422,211,0,4725,4724,1,0,0,0,4726,4727,1,0,0,0,4727,4725,1,0,0,0,4727,4728,1,0,0,0,4728,4735,1,0,0,0,4729,4731,5,53,0,0,4730,4732,3,420,210,0,4731,4730,1,0,0,0,4732,4733,1,0,0,0,4733,4731,1,0,0,0,4733,4734,1,0,0,0,4734,4736,1,0,0,0,4735,4729,1,0,0,0,4735,4736,1,0,0,0,4736,4737,1,0,0,0,4737,4738,5,407,0,0,4738,4739,5,22,0,0,4739,393,1,0,0,0,4740,4741,5,77,0,0,4741,4742,3,716,358,0,4742,4744,5,174,0,0,4743,4745,3,420,210,0,4744,4743,1,0,0,0,4745,4746,1,0,0,0,4746,4744,1,0,0,0,4746,4747,1,0,0,0,4747,4751,1,0,0,0,4748,4750,3,424,212,0,4749,4748,1,0,0,0,4750,4753,1,0,0,0,4751,4749,1,0,0,0,4751,4752,1,0,0,0,4752,4760,1,0,0,0,4753,4751,1,0,0,0,4754,4756,5,53,0,0,4755,4757,3,420,210,0,4756,4755,1,0,0,0,4757,4758,1,0,0,0,4758,4756,1,0,0,0,4758,4759,1,0,0,0,4759,4761,1,0,0,0,4760,4754,1,0,0,0,4760,4761,1,0,0,0,4761,4762,1,0,0,0,4762,4763,5,407,0,0,4763,4764,5,77,0,0,4764,395,1,0,0,0,4765,4766,5,89,0,0,4766,4767,3,612,306,0,4767,397,1,0,0,0,4768,4769,5,96,0,0,4769,4770,3,612,306,0,4770,399,1,0,0,0,4771,4772,3,612,306,0,4772,4773,5,1144,0,0,4773,4775,1,0,0,0,4774,4771,1,0,0,0,4774,4775,1,0,0,0,4775,4776,1,0,0,0,4776,4778,5,105,0,0,4777,4779,3,420,210,0,4778,4777,1,0,0,0,4779,4780,1,0,0,0,4780,4778,1,0,0,0,4780,4781,1,0,0,0,4781,4782,1,0,0,0,4782,4783,5,407,0,0,4783,4785,5,105,0,0,4784,4786,3,612,306,0,4785,4784,1,0,0,0,4785,4786,1,0,0,0,4786,401,1,0,0,0,4787,4788,3,612,306,0,4788,4789,5,1144,0,0,4789,4791,1,0,0,0,4790,4787,1,0,0,0,4790,4791,1,0,0,0,4791,4792,1,0,0,0,4792,4794,5,140,0,0,4793,4795,3,420,210,0,4794,4793,1,0,0,0,4795,4796,1,0,0,0,4796,4794,1,0,0,0,4796,4797,1,0,0,0,4797,4798,1,0,0,0,4798,4799,5,663,0,0,4799,4800,3,716,358,0,4800,4801,5,407,0,0,4801,4803,5,140,0,0,4802,4804,3,612,306,0,4803,4802,1,0,0,0,4803,4804,1,0,0,0,4804,403,1,0,0,0,4805,4806,5,146,0,0,4806,4807,3,716,358,0,4807,405,1,0,0,0,4808,4809,3,612,306,0,4809,4810,5,1144,0,0,4810,4812,1,0,0,0,4811,4808,1,0,0,0,4811,4812,1,0,0,0,4812,4813,1,0,0,0,4813,4814,5,191,0,0,4814,4815,3,716,358,0,4815,4817,5,399,0,0,4816,4818,3,420,210,0,4817,4816,1,0,0,0,4818,4819,1,0,0,0,4819,4817,1,0,0,0,4819,4820,1,0,0,0,4820,4821,1,0,0,0,4821,4822,5,407,0,0,4822,4824,5,191,0,0,4823,4825,3,612,306,0,4824,4823,1,0,0,0,4824,4825,1,0,0,0,4825,407,1,0,0,0,4826,4827,5,361,0,0,4827,4842,3,612,306,0,4828,4833,5,64,0,0,4829,4831,5,520,0,0,4830,4829,1,0,0,0,4830,4831,1,0,0,0,4831,4832,1,0,0,0,4832,4834,5,68,0,0,4833,4830,1,0,0,0,4833,4834,1,0,0,0,4834,4835,1,0,0,0,4835,4836,3,612,306,0,4836,4837,5,87,0,0,4837,4838,3,644,322,0,4838,4842,1,0,0,0,4839,4840,5,539,0,0,4840,4842,3,612,306,0,4841,4826,1,0,0,0,4841,4828,1,0,0,0,4841,4839,1,0,0,0,4842,409,1,0,0,0,4843,4844,5,41,0,0,4844,4845,3,644,322,0,4845,4848,3,632,316,0,4846,4847,5,42,0,0,4847,4849,3,716,358,0,4848,4846,1,0,0,0,4848,4849,1,0,0,0,4849,411,1,0,0,0,4850,4851,5,41,0,0,4851,4852,3,612,306,0,4852,4853,5,29,0,0,4853,4860,5,65,0,0,4854,4861,3,618,309,0,4855,4857,5,162,0,0,4856,4858,5,669,0,0,4857,4856,1,0,0,0,4857,4858,1,0,0,0,4858,4859,1,0,0,0,4859,4861,5,1148,0,0,4860,4854,1,0,0,0,4860,4855,1,0,0,0,4861,413,1,0,0,0,4862,4863,5,41,0,0,4863,4864,3,612,306,0,4864,4865,5,38,0,0,4865,4866,5,65,0,0,4866,4867,3,198,99,0,4867,415,1,0,0,0,4868,4869,5,41,0,0,4869,4870,7,65,0,0,4870,4871,5,442,0,0,4871,4872,5,65,0,0,4872,4877,3,418,209,0,4873,4874,5,1135,0,0,4874,4876,3,418,209,0,4875,4873,1,0,0,0,4876,4879,1,0,0,0,4877,4875,1,0,0,0,4877,4878,1,0,0,0,4878,4880,1,0,0,0,4879,4877,1,0,0,0,4880,4881,3,388,194,0,4881,417,1,0,0,0,4882,4894,3,618,309,0,4883,4885,5,162,0,0,4884,4886,5,669,0,0,4885,4884,1,0,0,0,4885,4886,1,0,0,0,4886,4887,1,0,0,0,4887,4894,5,1148,0,0,4888,4894,3,612,306,0,4889,4894,5,163,0,0,4890,4891,5,114,0,0,4891,4894,5,435,0,0,4892,4894,5,161,0,0,4893,4882,1,0,0,0,4893,4883,1,0,0,0,4893,4888,1,0,0,0,4893,4889,1,0,0,0,4893,4890,1,0,0,0,4893,4892,1,0,0,0,4894,419,1,0,0,0,4895,4898,3,16,8,0,4896,4898,3,4,2,0,4897,4895,1,0,0,0,4897,4896,1,0,0,0,4898,4899,1,0,0,0,4899,4900,5,1136,0,0,4900,421,1,0,0,0,4901,4904,5,189,0,0,4902,4905,3,630,315,0,4903,4905,3,716,358,0,4904,4902,1,0,0,0,4904,4903,1,0,0,0,4905,4906,1,0,0,0,4906,4908,5,174,0,0,4907,4909,3,420,210,0,4908,4907,1,0,0,0,4909,4910,1,0,0,0,4910,4908,1,0,0,0,4910,4911,1,0,0,0,4911,423,1,0,0,0,4912,4913,5,54,0,0,4913,4914,3,716,358,0,4914,4916,5,174,0,0,4915,4917,3,420,210,0,4916,4915,1,0,0,0,4917,4918,1,0,0,0,4918,4916,1,0,0,0,4918,4919,1,0,0,0,4919,425,1,0,0,0,4920,4921,5,7,0,0,4921,4922,5,665,0,0,4922,4927,3,446,223,0,4923,4924,5,1135,0,0,4924,4926,3,446,223,0,4925,4923,1,0,0,0,4926,4929,1,0,0,0,4927,4925,1,0,0,0,4927,4928,1,0,0,0,4928,4984,1,0,0,0,4929,4927,1,0,0,0,4930,4931,5,7,0,0,4931,4933,5,665,0,0,4932,4934,3,668,334,0,4933,4932,1,0,0,0,4933,4934,1,0,0,0,4934,4935,1,0,0,0,4935,4950,3,448,224,0,4936,4948,5,142,0,0,4937,4949,5,529,0,0,4938,4945,3,456,228,0,4939,4941,5,10,0,0,4940,4939,1,0,0,0,4940,4941,1,0,0,0,4941,4942,1,0,0,0,4942,4944,3,456,228,0,4943,4940,1,0,0,0,4944,4947,1,0,0,0,4945,4943,1,0,0,0,4945,4946,1,0,0,0,4946,4949,1,0,0,0,4947,4945,1,0,0,0,4948,4937,1,0,0,0,4948,4938,1,0,0,0,4949,4951,1,0,0,0,4950,4936,1,0,0,0,4950,4951,1,0,0,0,4951,4958,1,0,0,0,4952,4954,5,192,0,0,4953,4955,3,458,229,0,4954,4953,1,0,0,0,4955,4956,1,0,0,0,4956,4954,1,0,0,0,4956,4957,1,0,0,0,4957,4959,1,0,0,0,4958,4952,1,0,0,0,4958,4959,1,0,0,0,4959,4964,1,0,0,0,4960,4963,3,460,230,0,4961,4963,3,462,231,0,4962,4960,1,0,0,0,4962,4961,1,0,0,0,4963,4966,1,0,0,0,4964,4962,1,0,0,0,4964,4965,1,0,0,0,4965,4971,1,0,0,0,4966,4964,1,0,0,0,4967,4968,5,368,0,0,4968,4972,5,1148,0,0,4969,4970,5,14,0,0,4970,4972,5,1148,0,0,4971,4967,1,0,0,0,4971,4969,1,0,0,0,4971,4972,1,0,0,0,4972,4984,1,0,0,0,4973,4974,5,7,0,0,4974,4976,5,665,0,0,4975,4977,3,668,334,0,4976,4975,1,0,0,0,4976,4977,1,0,0,0,4977,4978,1,0,0,0,4978,4979,3,592,296,0,4979,4980,5,42,0,0,4980,4981,5,596,0,0,4981,4982,3,434,217,0,4982,4984,1,0,0,0,4983,4920,1,0,0,0,4983,4930,1,0,0,0,4983,4973,1,0,0,0,4984,427,1,0,0,0,4985,4986,5,33,0,0,4986,4987,5,665,0,0,4987,5037,3,448,224,0,4988,4989,5,33,0,0,4989,4991,5,665,0,0,4990,4992,3,670,335,0,4991,4990,1,0,0,0,4991,4992,1,0,0,0,4992,4993,1,0,0,0,4993,4997,3,448,224,0,4994,4995,5,42,0,0,4995,4996,5,596,0,0,4996,4998,3,434,217,0,4997,4994,1,0,0,0,4997,4998,1,0,0,0,4998,5013,1,0,0,0,4999,5011,5,142,0,0,5e3,5012,5,529,0,0,5001,5008,3,456,228,0,5002,5004,5,10,0,0,5003,5002,1,0,0,0,5003,5004,1,0,0,0,5004,5005,1,0,0,0,5005,5007,3,456,228,0,5006,5003,1,0,0,0,5007,5010,1,0,0,0,5008,5006,1,0,0,0,5008,5009,1,0,0,0,5009,5012,1,0,0,0,5010,5008,1,0,0,0,5011,5e3,1,0,0,0,5011,5001,1,0,0,0,5012,5014,1,0,0,0,5013,4999,1,0,0,0,5013,5014,1,0,0,0,5014,5021,1,0,0,0,5015,5017,5,192,0,0,5016,5018,3,458,229,0,5017,5016,1,0,0,0,5018,5019,1,0,0,0,5019,5017,1,0,0,0,5019,5020,1,0,0,0,5020,5022,1,0,0,0,5021,5015,1,0,0,0,5021,5022,1,0,0,0,5022,5027,1,0,0,0,5023,5026,3,460,230,0,5024,5026,3,462,231,0,5025,5023,1,0,0,0,5025,5024,1,0,0,0,5026,5029,1,0,0,0,5027,5025,1,0,0,0,5027,5028,1,0,0,0,5028,5034,1,0,0,0,5029,5027,1,0,0,0,5030,5031,5,368,0,0,5031,5035,5,1148,0,0,5032,5033,5,14,0,0,5033,5035,5,1148,0,0,5034,5030,1,0,0,0,5034,5032,1,0,0,0,5034,5035,1,0,0,0,5035,5037,1,0,0,0,5036,4985,1,0,0,0,5036,4988,1,0,0,0,5037,429,1,0,0,0,5038,5039,5,51,0,0,5039,5041,5,665,0,0,5040,5042,3,668,334,0,5041,5040,1,0,0,0,5041,5042,1,0,0,0,5042,5043,1,0,0,0,5043,5044,3,588,294,0,5044,431,1,0,0,0,5045,5046,5,72,0,0,5046,5051,3,464,232,0,5047,5048,5,1135,0,0,5048,5050,3,464,232,0,5049,5047,1,0,0,0,5050,5053,1,0,0,0,5051,5049,1,0,0,0,5051,5052,1,0,0,0,5052,5054,1,0,0,0,5053,5051,1,0,0,0,5054,5056,5,118,0,0,5055,5057,7,66,0,0,5056,5055,1,0,0,0,5056,5057,1,0,0,0,5057,5058,1,0,0,0,5058,5059,3,468,234,0,5059,5060,5,175,0,0,5060,5075,3,560,280,0,5061,5073,5,142,0,0,5062,5074,5,529,0,0,5063,5070,3,456,228,0,5064,5066,5,10,0,0,5065,5064,1,0,0,0,5065,5066,1,0,0,0,5066,5067,1,0,0,0,5067,5069,3,456,228,0,5068,5065,1,0,0,0,5069,5072,1,0,0,0,5070,5068,1,0,0,0,5070,5071,1,0,0,0,5071,5074,1,0,0,0,5072,5070,1,0,0,0,5073,5062,1,0,0,0,5073,5063,1,0,0,0,5074,5076,1,0,0,0,5075,5061,1,0,0,0,5075,5076,1,0,0,0,5076,5086,1,0,0,0,5077,5083,5,192,0,0,5078,5079,5,72,0,0,5079,5082,5,120,0,0,5080,5082,3,458,229,0,5081,5078,1,0,0,0,5081,5080,1,0,0,0,5082,5085,1,0,0,0,5083,5081,1,0,0,0,5083,5084,1,0,0,0,5084,5087,1,0,0,0,5085,5083,1,0,0,0,5086,5077,1,0,0,0,5086,5087,1,0,0,0,5087,5094,1,0,0,0,5088,5089,5,12,0,0,5089,5090,3,592,296,0,5090,5091,5,192,0,0,5091,5092,5,596,0,0,5092,5093,3,434,217,0,5093,5095,1,0,0,0,5094,5088,1,0,0,0,5094,5095,1,0,0,0,5095,5106,1,0,0,0,5096,5097,5,72,0,0,5097,5098,3,566,283,0,5098,5099,5,175,0,0,5099,5103,3,560,280,0,5100,5101,5,192,0,0,5101,5102,5,697,0,0,5102,5104,5,120,0,0,5103,5100,1,0,0,0,5103,5104,1,0,0,0,5104,5106,1,0,0,0,5105,5045,1,0,0,0,5105,5096,1,0,0,0,5106,433,1,0,0,0,5107,5116,5,42,0,0,5108,5116,5,529,0,0,5109,5112,5,6,0,0,5110,5111,5,59,0,0,5111,5113,3,566,283,0,5112,5110,1,0,0,0,5112,5113,1,0,0,0,5113,5116,1,0,0,0,5114,5116,3,566,283,0,5115,5107,1,0,0,0,5115,5108,1,0,0,0,5115,5109,1,0,0,0,5115,5114,1,0,0,0,5116,435,1,0,0,0,5117,5118,5,72,0,0,5118,5119,5,566,0,0,5119,5120,5,118,0,0,5120,5121,3,592,296,0,5121,5122,5,175,0,0,5122,5127,3,592,296,0,5123,5124,5,1135,0,0,5124,5126,3,592,296,0,5125,5123,1,0,0,0,5126,5129,1,0,0,0,5127,5125,1,0,0,0,5127,5128,1,0,0,0,5128,5133,1,0,0,0,5129,5127,1,0,0,0,5130,5131,5,192,0,0,5131,5132,5,72,0,0,5132,5134,5,120,0,0,5133,5130,1,0,0,0,5133,5134,1,0,0,0,5134,437,1,0,0,0,5135,5136,5,139,0,0,5136,5137,5,665,0,0,5137,5142,3,470,235,0,5138,5139,5,1135,0,0,5139,5141,3,470,235,0,5140,5138,1,0,0,0,5141,5144,1,0,0,0,5142,5140,1,0,0,0,5142,5143,1,0,0,0,5143,439,1,0,0,0,5144,5142,1,0,0,0,5145,5146,5,147,0,0,5146,5151,3,464,232,0,5147,5148,5,1135,0,0,5148,5150,3,464,232,0,5149,5147,1,0,0,0,5150,5153,1,0,0,0,5151,5149,1,0,0,0,5151,5152,1,0,0,0,5152,5154,1,0,0,0,5153,5151,1,0,0,0,5154,5156,5,118,0,0,5155,5157,7,66,0,0,5156,5155,1,0,0,0,5156,5157,1,0,0,0,5157,5158,1,0,0,0,5158,5159,3,468,234,0,5159,5160,5,68,0,0,5160,5161,3,560,280,0,5161,5182,1,0,0,0,5162,5163,5,147,0,0,5163,5165,5,6,0,0,5164,5166,5,725,0,0,5165,5164,1,0,0,0,5165,5166,1,0,0,0,5166,5167,1,0,0,0,5167,5168,5,1135,0,0,5168,5169,5,72,0,0,5169,5170,5,120,0,0,5170,5171,5,68,0,0,5171,5182,3,560,280,0,5172,5173,5,147,0,0,5173,5174,3,566,283,0,5174,5178,5,68,0,0,5175,5177,3,560,280,0,5176,5175,1,0,0,0,5177,5180,1,0,0,0,5178,5176,1,0,0,0,5178,5179,1,0,0,0,5179,5182,1,0,0,0,5180,5178,1,0,0,0,5181,5145,1,0,0,0,5181,5162,1,0,0,0,5181,5172,1,0,0,0,5182,441,1,0,0,0,5183,5184,5,147,0,0,5184,5185,5,566,0,0,5185,5186,5,118,0,0,5186,5187,3,592,296,0,5187,5188,5,68,0,0,5188,5193,3,592,296,0,5189,5190,5,1135,0,0,5190,5192,3,592,296,0,5191,5189,1,0,0,0,5192,5195,1,0,0,0,5193,5191,1,0,0,0,5193,5194,1,0,0,0,5194,443,1,0,0,0,5195,5193,1,0,0,0,5196,5197,5,153,0,0,5197,5200,5,551,0,0,5198,5199,5,65,0,0,5199,5201,3,592,296,0,5200,5198,1,0,0,0,5200,5201,1,0,0,0,5201,5202,1,0,0,0,5202,5205,5,1124,0,0,5203,5206,3,710,355,0,5204,5206,5,1148,0,0,5205,5203,1,0,0,0,5205,5204,1,0,0,0,5206,445,1,0,0,0,5207,5208,3,592,296,0,5208,5209,3,460,230,0,5209,447,1,0,0,0,5210,5215,3,450,225,0,5211,5212,5,1135,0,0,5212,5214,3,450,225,0,5213,5211,1,0,0,0,5214,5217,1,0,0,0,5215,5213,1,0,0,0,5215,5216,1,0,0,0,5216,449,1,0,0,0,5217,5215,1,0,0,0,5218,5219,3,590,295,0,5219,5220,5,448,0,0,5220,5221,5,19,0,0,5221,5222,5,551,0,0,5222,5223,5,1148,0,0,5223,5244,1,0,0,0,5224,5225,3,590,295,0,5225,5226,5,448,0,0,5226,5227,5,19,0,0,5227,5228,5,991,0,0,5228,5229,5,551,0,0,5229,5230,3,452,226,0,5230,5244,1,0,0,0,5231,5232,3,590,295,0,5232,5233,5,448,0,0,5233,5234,5,19,0,0,5234,5235,5,1148,0,0,5235,5236,3,452,226,0,5236,5244,1,0,0,0,5237,5238,3,590,295,0,5238,5239,5,448,0,0,5239,5240,5,192,0,0,5240,5241,3,454,227,0,5241,5244,1,0,0,0,5242,5244,3,590,295,0,5243,5218,1,0,0,0,5243,5224,1,0,0,0,5243,5231,1,0,0,0,5243,5237,1,0,0,0,5243,5242,1,0,0,0,5244,451,1,0,0,0,5245,5246,5,141,0,0,5246,5248,5,1148,0,0,5247,5245,1,0,0,0,5247,5248,1,0,0,0,5248,5252,1,0,0,0,5249,5250,5,145,0,0,5250,5251,5,35,0,0,5251,5253,5,551,0,0,5252,5249,1,0,0,0,5252,5253,1,0,0,0,5253,453,1,0,0,0,5254,5262,3,610,305,0,5255,5259,7,67,0,0,5256,5260,5,1148,0,0,5257,5258,5,991,0,0,5258,5260,5,551,0,0,5259,5256,1,0,0,0,5259,5257,1,0,0,0,5260,5261,1,0,0,0,5261,5263,3,452,226,0,5262,5255,1,0,0,0,5262,5263,1,0,0,0,5263,5269,1,0,0,0,5264,5265,3,610,305,0,5265,5266,5,187,0,0,5266,5267,3,710,355,0,5267,5269,1,0,0,0,5268,5254,1,0,0,0,5268,5264,1,0,0,0,5269,455,1,0,0,0,5270,5279,5,167,0,0,5271,5279,5,680,0,0,5272,5273,5,358,0,0,5273,5279,5,1148,0,0,5274,5275,5,465,0,0,5275,5279,5,1148,0,0,5276,5277,5,640,0,0,5277,5279,5,1148,0,0,5278,5270,1,0,0,0,5278,5271,1,0,0,0,5278,5272,1,0,0,0,5278,5274,1,0,0,0,5278,5276,1,0,0,0,5279,457,1,0,0,0,5280,5281,5,499,0,0,5281,5289,3,618,309,0,5282,5283,5,502,0,0,5283,5289,3,618,309,0,5284,5285,5,498,0,0,5285,5289,3,618,309,0,5286,5287,5,503,0,0,5287,5289,3,618,309,0,5288,5280,1,0,0,0,5288,5282,1,0,0,0,5288,5284,1,0,0,0,5288,5286,1,0,0,0,5289,459,1,0,0,0,5290,5291,5,551,0,0,5291,5298,5,420,0,0,5292,5299,5,42,0,0,5293,5299,5,519,0,0,5294,5295,5,86,0,0,5295,5296,3,618,309,0,5296,5297,5,691,0,0,5297,5299,1,0,0,0,5298,5292,1,0,0,0,5298,5293,1,0,0,0,5298,5294,1,0,0,0,5298,5299,1,0,0,0,5299,5329,1,0,0,0,5300,5301,5,551,0,0,5301,5304,5,445,0,0,5302,5305,5,42,0,0,5303,5305,3,618,309,0,5304,5302,1,0,0,0,5304,5303,1,0,0,0,5305,5329,1,0,0,0,5306,5307,5,551,0,0,5307,5308,5,595,0,0,5308,5313,5,86,0,0,5309,5314,5,42,0,0,5310,5311,3,618,309,0,5311,5312,5,691,0,0,5312,5314,1,0,0,0,5313,5309,1,0,0,0,5313,5310,1,0,0,0,5314,5329,1,0,0,0,5315,5316,5,551,0,0,5316,5317,5,142,0,0,5317,5319,5,35,0,0,5318,5320,7,68,0,0,5319,5318,1,0,0,0,5319,5320,1,0,0,0,5320,5329,1,0,0,0,5321,5322,5,424,0,0,5322,5329,3,618,309,0,5323,5326,5,552,0,0,5324,5327,3,618,309,0,5325,5327,5,657,0,0,5326,5324,1,0,0,0,5326,5325,1,0,0,0,5327,5329,1,0,0,0,5328,5290,1,0,0,0,5328,5300,1,0,0,0,5328,5306,1,0,0,0,5328,5315,1,0,0,0,5328,5321,1,0,0,0,5328,5323,1,0,0,0,5329,461,1,0,0,0,5330,5331,5,332,0,0,5331,5332,7,69,0,0,5332,463,1,0,0,0,5333,5338,3,466,233,0,5334,5335,5,1133,0,0,5335,5336,3,644,322,0,5336,5337,5,1134,0,0,5337,5339,1,0,0,0,5338,5334,1,0,0,0,5338,5339,1,0,0,0,5339,465,1,0,0,0,5340,5342,5,6,0,0,5341,5343,5,725,0,0,5342,5341,1,0,0,0,5342,5343,1,0,0,0,5343,5434,1,0,0,0,5344,5346,5,7,0,0,5345,5347,5,733,0,0,5346,5345,1,0,0,0,5346,5347,1,0,0,0,5347,5434,1,0,0,0,5348,5356,5,33,0,0,5349,5350,5,649,0,0,5350,5357,5,742,0,0,5351,5357,5,733,0,0,5352,5357,5,671,0,0,5353,5357,5,665,0,0,5354,5357,5,647,0,0,5355,5357,5,596,0,0,5356,5349,1,0,0,0,5356,5351,1,0,0,0,5356,5352,1,0,0,0,5356,5353,1,0,0,0,5356,5354,1,0,0,0,5356,5355,1,0,0,0,5356,5357,1,0,0,0,5357,5434,1,0,0,0,5358,5434,5,44,0,0,5359,5361,5,51,0,0,5360,5362,5,596,0,0,5361,5360,1,0,0,0,5361,5362,1,0,0,0,5362,5434,1,0,0,0,5363,5434,5,415,0,0,5364,5434,5,708,0,0,5365,5434,5,709,0,0,5366,5367,5,72,0,0,5367,5434,5,120,0,0,5368,5434,5,81,0,0,5369,5434,5,85,0,0,5370,5371,5,103,0,0,5371,5434,5,742,0,0,5372,5434,5,726,0,0,5373,5434,5,566,0,0,5374,5434,5,136,0,0,5375,5434,5,727,0,0,5376,5377,5,588,0,0,5377,5434,7,70,0,0,5378,5434,5,152,0,0,5379,5380,5,155,0,0,5380,5434,7,71,0,0,5381,5434,5,739,0,0,5382,5434,5,740,0,0,5383,5434,5,177,0,0,5384,5434,5,184,0,0,5385,5434,5,185,0,0,5386,5434,5,698,0,0,5387,5434,5,699,0,0,5388,5434,5,700,0,0,5389,5434,5,701,0,0,5390,5434,5,702,0,0,5391,5434,5,703,0,0,5392,5434,5,704,0,0,5393,5434,5,705,0,0,5394,5434,5,706,0,0,5395,5434,5,707,0,0,5396,5434,5,710,0,0,5397,5434,5,711,0,0,5398,5434,5,712,0,0,5399,5434,5,713,0,0,5400,5434,5,714,0,0,5401,5434,5,715,0,0,5402,5434,5,716,0,0,5403,5434,5,717,0,0,5404,5434,5,718,0,0,5405,5434,5,719,0,0,5406,5434,5,722,0,0,5407,5434,5,723,0,0,5408,5434,5,724,0,0,5409,5434,5,728,0,0,5410,5434,5,729,0,0,5411,5434,5,730,0,0,5412,5434,5,731,0,0,5413,5434,5,732,0,0,5414,5434,5,735,0,0,5415,5434,5,736,0,0,5416,5434,5,737,0,0,5417,5434,5,158,0,0,5418,5434,5,738,0,0,5419,5434,5,1077,0,0,5420,5434,5,741,0,0,5421,5434,5,743,0,0,5422,5434,5,1088,0,0,5423,5434,5,744,0,0,5424,5434,5,745,0,0,5425,5426,5,102,0,0,5426,5427,5,68,0,0,5427,5434,5,734,0,0,5428,5429,5,152,0,0,5429,5430,5,87,0,0,5430,5434,5,734,0,0,5431,5432,5,720,0,0,5432,5434,5,721,0,0,5433,5340,1,0,0,0,5433,5344,1,0,0,0,5433,5348,1,0,0,0,5433,5358,1,0,0,0,5433,5359,1,0,0,0,5433,5363,1,0,0,0,5433,5364,1,0,0,0,5433,5365,1,0,0,0,5433,5366,1,0,0,0,5433,5368,1,0,0,0,5433,5369,1,0,0,0,5433,5370,1,0,0,0,5433,5372,1,0,0,0,5433,5373,1,0,0,0,5433,5374,1,0,0,0,5433,5375,1,0,0,0,5433,5376,1,0,0,0,5433,5378,1,0,0,0,5433,5379,1,0,0,0,5433,5381,1,0,0,0,5433,5382,1,0,0,0,5433,5383,1,0,0,0,5433,5384,1,0,0,0,5433,5385,1,0,0,0,5433,5386,1,0,0,0,5433,5387,1,0,0,0,5433,5388,1,0,0,0,5433,5389,1,0,0,0,5433,5390,1,0,0,0,5433,5391,1,0,0,0,5433,5392,1,0,0,0,5433,5393,1,0,0,0,5433,5394,1,0,0,0,5433,5395,1,0,0,0,5433,5396,1,0,0,0,5433,5397,1,0,0,0,5433,5398,1,0,0,0,5433,5399,1,0,0,0,5433,5400,1,0,0,0,5433,5401,1,0,0,0,5433,5402,1,0,0,0,5433,5403,1,0,0,0,5433,5404,1,0,0,0,5433,5405,1,0,0,0,5433,5406,1,0,0,0,5433,5407,1,0,0,0,5433,5408,1,0,0,0,5433,5409,1,0,0,0,5433,5410,1,0,0,0,5433,5411,1,0,0,0,5433,5412,1,0,0,0,5433,5413,1,0,0,0,5433,5414,1,0,0,0,5433,5415,1,0,0,0,5433,5416,1,0,0,0,5433,5417,1,0,0,0,5433,5418,1,0,0,0,5433,5419,1,0,0,0,5433,5420,1,0,0,0,5433,5421,1,0,0,0,5433,5422,1,0,0,0,5433,5423,1,0,0,0,5433,5424,1,0,0,0,5433,5425,1,0,0,0,5433,5428,1,0,0,0,5433,5431,1,0,0,0,5434,467,1,0,0,0,5435,5452,5,1117,0,0,5436,5437,5,1117,0,0,5437,5438,5,1132,0,0,5438,5452,5,1117,0,0,5439,5440,3,612,306,0,5440,5441,5,1132,0,0,5441,5442,5,1117,0,0,5442,5452,1,0,0,0,5443,5444,3,612,306,0,5444,5445,5,1132,0,0,5445,5446,3,612,306,0,5446,5452,1,0,0,0,5447,5448,3,612,306,0,5448,5449,3,616,308,0,5449,5452,1,0,0,0,5450,5452,3,612,306,0,5451,5435,1,0,0,0,5451,5436,1,0,0,0,5451,5439,1,0,0,0,5451,5443,1,0,0,0,5451,5447,1,0,0,0,5451,5450,1,0,0,0,5452,469,1,0,0,0,5453,5454,3,592,296,0,5454,5455,5,175,0,0,5455,5456,3,590,295,0,5456,471,1,0,0,0,5457,5459,5,9,0,0,5458,5460,7,72,0,0,5459,5458,1,0,0,0,5459,5460,1,0,0,0,5460,5461,1,0,0,0,5461,5462,7,54,0,0,5462,5480,3,648,324,0,5463,5464,5,184,0,0,5464,5465,5,76,0,0,5465,5466,5,118,0,0,5466,5471,3,570,285,0,5467,5468,5,1135,0,0,5468,5470,3,570,285,0,5469,5467,1,0,0,0,5470,5473,1,0,0,0,5471,5469,1,0,0,0,5471,5472,1,0,0,0,5472,5478,1,0,0,0,5473,5471,1,0,0,0,5474,5475,5,192,0,0,5475,5476,3,618,309,0,5476,5477,5,18,0,0,5477,5479,1,0,0,0,5478,5474,1,0,0,0,5478,5479,1,0,0,0,5479,5481,1,0,0,0,5480,5463,1,0,0,0,5480,5481,1,0,0,0,5481,5493,1,0,0,0,5482,5483,5,51,0,0,5483,5484,5,76,0,0,5484,5485,5,118,0,0,5485,5490,3,570,285,0,5486,5487,5,1135,0,0,5487,5489,3,570,285,0,5488,5486,1,0,0,0,5489,5492,1,0,0,0,5490,5488,1,0,0,0,5490,5491,1,0,0,0,5491,5494,1,0,0,0,5492,5490,1,0,0,0,5493,5482,1,0,0,0,5493,5494,1,0,0,0,5494,473,1,0,0,0,5495,5496,5,26,0,0,5496,5497,5,172,0,0,5497,5501,3,648,324,0,5498,5500,3,482,241,0,5499,5498,1,0,0,0,5500,5503,1,0,0,0,5501,5499,1,0,0,0,5501,5502,1,0,0,0,5502,475,1,0,0,0,5503,5501,1,0,0,0,5504,5505,5,356,0,0,5505,5506,5,172,0,0,5506,5508,3,648,324,0,5507,5509,7,73,0,0,5508,5507,1,0,0,0,5508,5509,1,0,0,0,5509,477,1,0,0,0,5510,5512,5,119,0,0,5511,5513,7,72,0,0,5512,5511,1,0,0,0,5512,5513,1,0,0,0,5513,5514,1,0,0,0,5514,5515,7,54,0,0,5515,5516,3,648,324,0,5516,479,1,0,0,0,5517,5519,5,580,0,0,5518,5520,7,72,0,0,5519,5518,1,0,0,0,5519,5520,1,0,0,0,5520,5521,1,0,0,0,5521,5522,5,172,0,0,5522,5524,3,648,324,0,5523,5525,5,568,0,0,5524,5523,1,0,0,0,5524,5525,1,0,0,0,5525,5527,1,0,0,0,5526,5528,5,422,0,0,5527,5526,1,0,0,0,5527,5528,1,0,0,0,5528,5530,1,0,0,0,5529,5531,5,666,0,0,5530,5529,1,0,0,0,5530,5531,1,0,0,0,5531,481,1,0,0,0,5532,5533,5,65,0,0,5533,5540,5,664,0,0,5534,5540,5,568,0,0,5535,5540,5,425,0,0,5536,5540,5,504,0,0,5537,5540,5,422,0,0,5538,5540,5,354,0,0,5539,5532,1,0,0,0,5539,5534,1,0,0,0,5539,5535,1,0,0,0,5539,5536,1,0,0,0,5539,5537,1,0,0,0,5539,5538,1,0,0,0,5540,483,1,0,0,0,5541,5543,5,33,0,0,5542,5544,5,335,0,0,5543,5542,1,0,0,0,5543,5544,1,0,0,0,5544,5545,1,0,0,0,5545,5547,5,437,0,0,5546,5548,3,670,335,0,5547,5546,1,0,0,0,5547,5548,1,0,0,0,5548,5549,1,0,0,0,5549,5550,3,612,306,0,5550,5551,5,594,0,0,5551,5552,7,74,0,0,5552,5553,5,619,0,0,5553,5554,5,1148,0,0,5554,485,1,0,0,0,5555,5556,5,456,0,0,5556,5557,5,554,0,0,5557,5558,3,612,306,0,5558,5559,5,619,0,0,5559,5560,5,1148,0,0,5560,487,1,0,0,0,5561,5562,5,661,0,0,5562,5563,5,554,0,0,5563,5564,3,612,306,0,5564,489,1,0,0,0,5565,5566,5,153,0,0,5566,5567,3,494,247,0,5567,5570,7,75,0,0,5568,5571,3,716,358,0,5569,5571,5,118,0,0,5570,5568,1,0,0,0,5570,5569,1,0,0,0,5571,5581,1,0,0,0,5572,5573,5,1135,0,0,5573,5574,3,494,247,0,5574,5577,7,75,0,0,5575,5578,3,716,358,0,5576,5578,5,118,0,0,5577,5575,1,0,0,0,5577,5576,1,0,0,0,5578,5580,1,0,0,0,5579,5572,1,0,0,0,5580,5583,1,0,0,0,5581,5579,1,0,0,0,5581,5582,1,0,0,0,5582,5618,1,0,0,0,5583,5581,1,0,0,0,5584,5585,5,153,0,0,5585,5588,3,58,29,0,5586,5589,3,596,298,0,5587,5589,5,42,0,0,5588,5586,1,0,0,0,5588,5587,1,0,0,0,5589,5618,1,0,0,0,5590,5591,5,153,0,0,5591,5598,5,517,0,0,5592,5595,3,596,298,0,5593,5594,5,27,0,0,5594,5596,3,598,299,0,5595,5593,1,0,0,0,5595,5596,1,0,0,0,5596,5599,1,0,0,0,5597,5599,5,42,0,0,5598,5592,1,0,0,0,5598,5597,1,0,0,0,5599,5618,1,0,0,0,5600,5618,3,444,222,0,5601,5618,3,318,159,0,5602,5618,3,316,158,0,5603,5604,5,153,0,0,5604,5605,3,552,276,0,5605,5606,7,75,0,0,5606,5614,3,716,358,0,5607,5608,5,1135,0,0,5608,5609,3,552,276,0,5609,5610,7,75,0,0,5610,5611,3,716,358,0,5611,5613,1,0,0,0,5612,5607,1,0,0,0,5613,5616,1,0,0,0,5614,5612,1,0,0,0,5614,5615,1,0,0,0,5615,5618,1,0,0,0,5616,5614,1,0,0,0,5617,5565,1,0,0,0,5617,5584,1,0,0,0,5617,5590,1,0,0,0,5617,5600,1,0,0,0,5617,5601,1,0,0,0,5617,5602,1,0,0,0,5617,5603,1,0,0,0,5618,491,1,0,0,0,5619,5620,5,155,0,0,5620,5621,7,56,0,0,5621,5781,5,476,0,0,5622,5623,5,155,0,0,5623,5624,7,76,0,0,5624,5627,5,416,0,0,5625,5626,5,80,0,0,5626,5628,5,1148,0,0,5627,5625,1,0,0,0,5627,5628,1,0,0,0,5628,5631,1,0,0,0,5629,5630,5,68,0,0,5630,5632,3,618,309,0,5631,5629,1,0,0,0,5631,5632,1,0,0,0,5632,5640,1,0,0,0,5633,5637,5,99,0,0,5634,5635,3,618,309,0,5635,5636,5,1135,0,0,5636,5638,1,0,0,0,5637,5634,1,0,0,0,5637,5638,1,0,0,0,5638,5639,1,0,0,0,5639,5641,3,618,309,0,5640,5633,1,0,0,0,5640,5641,1,0,0,0,5641,5781,1,0,0,0,5642,5643,5,155,0,0,5643,5645,3,496,248,0,5644,5646,3,498,249,0,5645,5644,1,0,0,0,5645,5646,1,0,0,0,5646,5781,1,0,0,0,5647,5649,5,155,0,0,5648,5650,5,436,0,0,5649,5648,1,0,0,0,5649,5650,1,0,0,0,5650,5651,1,0,0,0,5651,5652,7,41,0,0,5652,5653,7,77,0,0,5653,5656,3,554,277,0,5654,5655,7,77,0,0,5655,5657,3,612,306,0,5656,5654,1,0,0,0,5656,5657,1,0,0,0,5657,5659,1,0,0,0,5658,5660,3,498,249,0,5659,5658,1,0,0,0,5659,5660,1,0,0,0,5660,5781,1,0,0,0,5661,5662,5,155,0,0,5662,5663,5,33,0,0,5663,5665,7,0,0,0,5664,5666,3,670,335,0,5665,5664,1,0,0,0,5665,5666,1,0,0,0,5666,5667,1,0,0,0,5667,5781,3,572,286,0,5668,5669,5,155,0,0,5669,5670,5,33,0,0,5670,5671,7,78,0,0,5671,5781,3,552,276,0,5672,5673,5,155,0,0,5673,5674,5,33,0,0,5674,5675,7,79,0,0,5675,5781,3,554,277,0,5676,5677,5,155,0,0,5677,5678,5,33,0,0,5678,5679,5,177,0,0,5679,5781,3,578,289,0,5680,5681,5,155,0,0,5681,5682,5,33,0,0,5682,5683,5,665,0,0,5683,5781,3,592,296,0,5684,5685,5,155,0,0,5685,5686,5,409,0,0,5686,5687,3,600,300,0,5687,5688,7,80,0,0,5688,5781,1,0,0,0,5689,5690,5,155,0,0,5690,5781,3,500,250,0,5691,5692,5,155,0,0,5692,5700,7,81,0,0,5693,5697,5,99,0,0,5694,5695,3,618,309,0,5695,5696,5,1135,0,0,5696,5698,1,0,0,0,5697,5694,1,0,0,0,5697,5698,1,0,0,0,5698,5699,1,0,0,0,5699,5701,3,618,309,0,5700,5693,1,0,0,0,5700,5701,1,0,0,0,5701,5781,1,0,0,0,5702,5703,5,155,0,0,5703,5704,5,290,0,0,5704,5705,5,1133,0,0,5705,5706,5,1117,0,0,5706,5707,5,1134,0,0,5707,5781,7,81,0,0,5708,5709,5,155,0,0,5709,5712,3,502,251,0,5710,5711,7,77,0,0,5711,5713,3,612,306,0,5712,5710,1,0,0,0,5712,5713,1,0,0,0,5713,5715,1,0,0,0,5714,5716,3,498,249,0,5715,5714,1,0,0,0,5715,5716,1,0,0,0,5716,5781,1,0,0,0,5717,5718,5,155,0,0,5718,5719,7,82,0,0,5719,5720,5,364,0,0,5720,5781,3,552,276,0,5721,5722,5,155,0,0,5722,5725,5,440,0,0,5723,5724,5,65,0,0,5724,5726,3,592,296,0,5725,5723,1,0,0,0,5725,5726,1,0,0,0,5726,5781,1,0,0,0,5727,5728,5,155,0,0,5728,5729,7,83,0,0,5729,5730,7,77,0,0,5730,5733,3,554,277,0,5731,5732,7,77,0,0,5732,5734,3,612,306,0,5733,5731,1,0,0,0,5733,5734,1,0,0,0,5734,5737,1,0,0,0,5735,5736,5,190,0,0,5736,5738,3,716,358,0,5737,5735,1,0,0,0,5737,5738,1,0,0,0,5738,5781,1,0,0,0,5739,5740,5,155,0,0,5740,5741,5,539,0,0,5741,5744,5,742,0,0,5742,5743,7,77,0,0,5743,5745,3,612,306,0,5744,5742,1,0,0,0,5744,5745,1,0,0,0,5745,5747,1,0,0,0,5746,5748,3,498,249,0,5747,5746,1,0,0,0,5747,5748,1,0,0,0,5748,5781,1,0,0,0,5749,5750,5,155,0,0,5750,5751,5,564,0,0,5751,5756,3,504,252,0,5752,5753,5,1135,0,0,5753,5755,3,504,252,0,5754,5752,1,0,0,0,5755,5758,1,0,0,0,5756,5754,1,0,0,0,5756,5757,1,0,0,0,5757,5762,1,0,0,0,5758,5756,1,0,0,0,5759,5760,5,65,0,0,5760,5761,5,567,0,0,5761,5763,3,618,309,0,5762,5759,1,0,0,0,5762,5763,1,0,0,0,5763,5764,1,0,0,0,5764,5768,5,99,0,0,5765,5766,3,618,309,0,5766,5767,5,1135,0,0,5767,5769,1,0,0,0,5768,5765,1,0,0,0,5768,5769,1,0,0,0,5769,5770,1,0,0,0,5770,5771,3,618,309,0,5771,5781,1,0,0,0,5772,5773,5,155,0,0,5773,5774,5,614,0,0,5774,5778,5,634,0,0,5775,5776,5,65,0,0,5776,5777,5,355,0,0,5777,5779,5,1148,0,0,5778,5775,1,0,0,0,5778,5779,1,0,0,0,5779,5781,1,0,0,0,5780,5619,1,0,0,0,5780,5622,1,0,0,0,5780,5642,1,0,0,0,5780,5647,1,0,0,0,5780,5661,1,0,0,0,5780,5668,1,0,0,0,5780,5672,1,0,0,0,5780,5676,1,0,0,0,5780,5680,1,0,0,0,5780,5684,1,0,0,0,5780,5689,1,0,0,0,5780,5691,1,0,0,0,5780,5702,1,0,0,0,5780,5708,1,0,0,0,5780,5717,1,0,0,0,5780,5721,1,0,0,0,5780,5727,1,0,0,0,5780,5739,1,0,0,0,5780,5749,1,0,0,0,5780,5772,1,0,0,0,5781,493,1,0,0,0,5782,5793,5,1159,0,0,5783,5793,5,1160,0,0,5784,5785,5,1137,0,0,5785,5787,5,1137,0,0,5786,5784,1,0,0,0,5786,5787,1,0,0,0,5787,5788,1,0,0,0,5788,5790,7,84,0,0,5789,5786,1,0,0,0,5789,5790,1,0,0,0,5790,5791,1,0,0,0,5791,5793,3,612,306,0,5792,5782,1,0,0,0,5792,5783,1,0,0,0,5792,5789,1,0,0,0,5793,495,1,0,0,0,5794,5795,5,25,0,0,5795,5808,5,153,0,0,5796,5808,5,844,0,0,5797,5808,5,40,0,0,5798,5808,5,151,0,0,5799,5800,5,437,0,0,5800,5808,5,634,0,0,5801,5802,5,131,0,0,5802,5808,5,634,0,0,5803,5805,7,55,0,0,5804,5803,1,0,0,0,5804,5805,1,0,0,0,5805,5806,1,0,0,0,5806,5808,7,85,0,0,5807,5794,1,0,0,0,5807,5796,1,0,0,0,5807,5797,1,0,0,0,5807,5798,1,0,0,0,5807,5799,1,0,0,0,5807,5801,1,0,0,0,5807,5804,1,0,0,0,5808,497,1,0,0,0,5809,5810,5,98,0,0,5810,5814,5,1148,0,0,5811,5812,5,190,0,0,5812,5814,3,716,358,0,5813,5809,1,0,0,0,5813,5811,1,0,0,0,5814,499,1,0,0,0,5815,5817,5,636,0,0,5816,5815,1,0,0,0,5816,5817,1,0,0,0,5817,5818,1,0,0,0,5818,5833,5,410,0,0,5819,5820,5,477,0,0,5820,5833,5,634,0,0,5821,5833,5,556,0,0,5822,5833,5,725,0,0,5823,5825,5,436,0,0,5824,5823,1,0,0,0,5824,5825,1,0,0,0,5825,5826,1,0,0,0,5826,5833,5,563,0,0,5827,5833,5,565,0,0,5828,5829,5,614,0,0,5829,5833,5,447,0,0,5830,5833,5,339,0,0,5831,5833,5,383,0,0,5832,5816,1,0,0,0,5832,5819,1,0,0,0,5832,5821,1,0,0,0,5832,5822,1,0,0,0,5832,5824,1,0,0,0,5832,5827,1,0,0,0,5832,5828,1,0,0,0,5832,5830,1,0,0,0,5832,5831,1,0,0,0,5833,501,1,0,0,0,5834,5843,5,416,0,0,5835,5836,5,172,0,0,5836,5843,5,634,0,0,5837,5839,5,436,0,0,5838,5837,1,0,0,0,5838,5839,1,0,0,0,5839,5840,1,0,0,0,5840,5843,5,742,0,0,5841,5843,5,655,0,0,5842,5834,1,0,0,0,5842,5835,1,0,0,0,5842,5838,1,0,0,0,5842,5841,1,0,0,0,5843,503,1,0,0,0,5844,5857,5,6,0,0,5845,5846,5,347,0,0,5846,5857,5,461,0,0,5847,5848,5,382,0,0,5848,5857,5,645,0,0,5849,5857,5,385,0,0,5850,5857,5,463,0,0,5851,5857,5,792,0,0,5852,5853,5,544,0,0,5853,5857,5,426,0,0,5854,5857,5,621,0,0,5855,5857,5,644,0,0,5856,5844,1,0,0,0,5856,5845,1,0,0,0,5856,5847,1,0,0,0,5856,5849,1,0,0,0,5856,5850,1,0,0,0,5856,5851,1,0,0,0,5856,5852,1,0,0,0,5856,5854,1,0,0,0,5856,5855,1,0,0,0,5857,505,1,0,0,0,5858,5859,5,345,0,0,5859,5860,5,1148,0,0,5860,507,1,0,0,0,5861,5862,5,351,0,0,5862,5863,5,81,0,0,5863,5868,3,520,260,0,5864,5865,5,1135,0,0,5865,5867,3,520,260,0,5866,5864,1,0,0,0,5867,5870,1,0,0,0,5868,5866,1,0,0,0,5868,5869,1,0,0,0,5869,5878,1,0,0,0,5870,5868,1,0,0,0,5871,5872,5,129,0,0,5872,5875,5,1133,0,0,5873,5876,3,644,322,0,5874,5876,5,6,0,0,5875,5873,1,0,0,0,5875,5874,1,0,0,0,5876,5877,1,0,0,0,5877,5879,5,1134,0,0,5878,5871,1,0,0,0,5878,5879,1,0,0,0,5879,5880,1,0,0,0,5880,5881,5,80,0,0,5881,5882,3,612,306,0,5882,509,1,0,0,0,5883,5885,5,432,0,0,5884,5886,7,72,0,0,5885,5884,1,0,0,0,5885,5886,1,0,0,0,5886,5887,1,0,0,0,5887,5892,3,522,261,0,5888,5889,5,1135,0,0,5889,5891,3,522,261,0,5890,5888,1,0,0,0,5891,5894,1,0,0,0,5892,5890,1,0,0,0,5892,5893,1,0,0,0,5893,511,1,0,0,0,5894,5892,1,0,0,0,5895,5897,5,93,0,0,5896,5898,7,86,0,0,5897,5896,1,0,0,0,5897,5898,1,0,0,0,5898,5899,1,0,0,0,5899,5900,3,716,358,0,5900,513,1,0,0,0,5901,5902,5,102,0,0,5902,5903,5,81,0,0,5903,5904,5,87,0,0,5904,5905,5,351,0,0,5905,5910,3,526,263,0,5906,5907,5,1135,0,0,5907,5909,3,526,263,0,5908,5906,1,0,0,0,5909,5912,1,0,0,0,5910,5908,1,0,0,0,5910,5911,1,0,0,0,5911,515,1,0,0,0,5912,5910,1,0,0,0,5913,5914,5,589,0,0,5914,5915,5,567,0,0,5915,5916,5,351,0,0,5916,517,1,0,0,0,5917,5918,5,739,0,0,5918,519,1,0,0,0,5919,5927,3,554,277,0,5920,5922,7,20,0,0,5921,5920,1,0,0,0,5921,5922,1,0,0,0,5922,5923,1,0,0,0,5923,5924,5,1133,0,0,5924,5925,3,580,290,0,5925,5926,5,1134,0,0,5926,5928,1,0,0,0,5927,5921,1,0,0,0,5927,5928,1,0,0,0,5928,521,1,0,0,0,5929,5948,5,394,0,0,5930,5948,5,447,0,0,5931,5933,7,87,0,0,5932,5931,1,0,0,0,5932,5933,1,0,0,0,5933,5934,1,0,0,0,5934,5948,5,476,0,0,5935,5948,5,540,0,0,5936,5948,5,725,0,0,5937,5938,5,567,0,0,5938,5948,5,351,0,0,5939,5948,5,634,0,0,5940,5948,5,667,0,0,5941,5945,5,742,0,0,5942,5943,5,192,0,0,5943,5944,5,134,0,0,5944,5946,5,103,0,0,5945,5942,1,0,0,0,5945,5946,1,0,0,0,5946,5948,1,0,0,0,5947,5929,1,0,0,0,5947,5930,1,0,0,0,5947,5932,1,0,0,0,5947,5935,1,0,0,0,5947,5936,1,0,0,0,5947,5937,1,0,0,0,5947,5939,1,0,0,0,5947,5940,1,0,0,0,5947,5941,1,0,0,0,5948,5962,1,0,0,0,5949,5950,5,574,0,0,5950,5952,5,476,0,0,5951,5953,3,356,178,0,5952,5951,1,0,0,0,5952,5953,1,0,0,0,5953,5962,1,0,0,0,5954,5956,7,54,0,0,5955,5957,3,648,324,0,5956,5955,1,0,0,0,5956,5957,1,0,0,0,5957,5959,1,0,0,0,5958,5960,3,524,262,0,5959,5958,1,0,0,0,5959,5960,1,0,0,0,5960,5962,1,0,0,0,5961,5947,1,0,0,0,5961,5949,1,0,0,0,5961,5954,1,0,0,0,5962,523,1,0,0,0,5963,5964,5,192,0,0,5964,5965,5,134,0,0,5965,5969,5,103,0,0,5966,5967,5,65,0,0,5967,5969,5,421,0,0,5968,5963,1,0,0,0,5968,5966,1,0,0,0,5969,525,1,0,0,0,5970,5978,3,554,277,0,5971,5972,5,129,0,0,5972,5975,5,1133,0,0,5973,5976,3,644,322,0,5974,5976,5,6,0,0,5975,5973,1,0,0,0,5975,5974,1,0,0,0,5976,5977,1,0,0,0,5977,5979,5,1134,0,0,5978,5971,1,0,0,0,5978,5979,1,0,0,0,5979,5987,1,0,0,0,5980,5982,7,20,0,0,5981,5980,1,0,0,0,5981,5982,1,0,0,0,5982,5983,1,0,0,0,5983,5984,5,1133,0,0,5984,5985,3,580,290,0,5985,5986,5,1134,0,0,5986,5988,1,0,0,0,5987,5981,1,0,0,0,5987,5988,1,0,0,0,5988,5991,1,0,0,0,5989,5990,5,78,0,0,5990,5992,5,470,0,0,5991,5989,1,0,0,0,5991,5992,1,0,0,0,5992,527,1,0,0,0,5993,5994,7,88,0,0,5994,5997,3,554,277,0,5995,5998,3,612,306,0,5996,5998,5,1148,0,0,5997,5995,1,0,0,0,5997,5996,1,0,0,0,5997,5998,1,0,0,0,5998,529,1,0,0,0,5999,6003,7,88,0,0,6e3,6001,7,89,0,0,6001,6002,5,1124,0,0,6002,6004,7,90,0,0,6003,6e3,1,0,0,0,6003,6004,1,0,0,0,6004,6005,1,0,0,0,6005,6006,3,550,275,0,6006,531,1,0,0,0,6007,6008,5,444,0,0,6008,6009,5,1148,0,0,6009,533,1,0,0,0,6010,6011,5,186,0,0,6011,6012,3,612,306,0,6012,535,1,0,0,0,6013,6021,5,156,0,0,6014,6016,5,162,0,0,6015,6017,5,669,0,0,6016,6015,1,0,0,0,6016,6017,1,0,0,0,6017,6018,1,0,0,0,6018,6022,3,622,311,0,6019,6022,5,1156,0,0,6020,6022,5,1157,0,0,6021,6014,1,0,0,0,6021,6019,1,0,0,0,6021,6020,1,0,0,0,6022,6032,1,0,0,0,6023,6024,5,153,0,0,6024,6029,3,540,270,0,6025,6026,5,1135,0,0,6026,6028,3,540,270,0,6027,6025,1,0,0,0,6028,6031,1,0,0,0,6029,6027,1,0,0,0,6029,6030,1,0,0,0,6030,6033,1,0,0,0,6031,6029,1,0,0,0,6032,6023,1,0,0,0,6032,6033,1,0,0,0,6033,537,1,0,0,0,6034,6042,5,143,0,0,6035,6037,5,162,0,0,6036,6038,5,669,0,0,6037,6036,1,0,0,0,6037,6038,1,0,0,0,6038,6039,1,0,0,0,6039,6043,3,622,311,0,6040,6043,5,1156,0,0,6041,6043,5,1157,0,0,6042,6035,1,0,0,0,6042,6040,1,0,0,0,6042,6041,1,0,0,0,6042,6043,1,0,0,0,6043,6053,1,0,0,0,6044,6045,5,153,0,0,6045,6050,3,540,270,0,6046,6047,5,1135,0,0,6047,6049,3,540,270,0,6048,6046,1,0,0,0,6049,6052,1,0,0,0,6050,6048,1,0,0,0,6050,6051,1,0,0,0,6051,6054,1,0,0,0,6052,6050,1,0,0,0,6053,6044,1,0,0,0,6053,6054,1,0,0,0,6054,539,1,0,0,0,6055,6056,7,91,0,0,6056,6061,5,1124,0,0,6057,6062,3,622,311,0,6058,6062,5,1149,0,0,6059,6062,3,594,297,0,6060,6062,3,614,307,0,6061,6057,1,0,0,0,6061,6058,1,0,0,0,6061,6059,1,0,0,0,6061,6060,1,0,0,0,6062,541,1,0,0,0,6063,6065,5,192,0,0,6064,6066,5,571,0,0,6065,6064,1,0,0,0,6065,6066,1,0,0,0,6066,6067,1,0,0,0,6067,6072,3,48,24,0,6068,6069,5,1135,0,0,6069,6071,3,48,24,0,6070,6068,1,0,0,0,6071,6074,1,0,0,0,6072,6070,1,0,0,0,6072,6073,1,0,0,0,6073,543,1,0,0,0,6074,6072,1,0,0,0,6075,6076,5,172,0,0,6076,6078,3,554,277,0,6077,6079,3,228,114,0,6078,6077,1,0,0,0,6078,6079,1,0,0,0,6079,6081,1,0,0,0,6080,6082,3,294,147,0,6081,6080,1,0,0,0,6081,6082,1,0,0,0,6082,545,1,0,0,0,6083,6085,5,71,0,0,6084,6086,7,92,0,0,6085,6084,1,0,0,0,6085,6086,1,0,0,0,6086,6087,1,0,0,0,6087,6119,5,48,0,0,6088,6089,3,494,247,0,6089,6090,5,1124,0,0,6090,6098,7,93,0,0,6091,6092,5,1135,0,0,6092,6093,3,494,247,0,6093,6094,5,1124,0,0,6094,6095,7,93,0,0,6095,6097,1,0,0,0,6096,6091,1,0,0,0,6097,6100,1,0,0,0,6098,6096,1,0,0,0,6098,6099,1,0,0,0,6099,6120,1,0,0,0,6100,6098,1,0,0,0,6101,6104,5,29,0,0,6102,6105,3,618,309,0,6103,6105,3,494,247,0,6104,6102,1,0,0,0,6104,6103,1,0,0,0,6105,6106,1,0,0,0,6106,6107,3,494,247,0,6107,6108,5,1124,0,0,6108,6116,3,548,274,0,6109,6110,5,1135,0,0,6110,6111,3,494,247,0,6111,6112,5,1124,0,0,6112,6113,3,548,274,0,6113,6115,1,0,0,0,6114,6109,1,0,0,0,6115,6118,1,0,0,0,6116,6114,1,0,0,0,6116,6117,1,0,0,0,6117,6120,1,0,0,0,6118,6116,1,0,0,0,6119,6088,1,0,0,0,6119,6101,1,0,0,0,6120,547,1,0,0,0,6121,6122,7,94,0,0,6122,549,1,0,0,0,6123,6129,3,198,99,0,6124,6129,3,184,92,0,6125,6129,3,190,95,0,6126,6129,3,196,98,0,6127,6129,3,200,100,0,6128,6123,1,0,0,0,6128,6124,1,0,0,0,6128,6125,1,0,0,0,6128,6126,1,0,0,0,6128,6127,1,0,0,0,6129,6134,1,0,0,0,6130,6131,5,65,0,0,6131,6132,5,376,0,0,6132,6134,3,612,306,0,6133,6128,1,0,0,0,6133,6130,1,0,0,0,6134,551,1,0,0,0,6135,6139,3,612,306,0,6136,6140,5,1155,0,0,6137,6138,5,1132,0,0,6138,6140,3,612,306,0,6139,6136,1,0,0,0,6139,6137,1,0,0,0,6139,6140,1,0,0,0,6140,553,1,0,0,0,6141,6142,3,552,276,0,6142,555,1,0,0,0,6143,6148,3,554,277,0,6144,6145,5,1135,0,0,6145,6147,3,554,277,0,6146,6144,1,0,0,0,6147,6150,1,0,0,0,6148,6146,1,0,0,0,6148,6149,1,0,0,0,6149,557,1,0,0,0,6150,6148,1,0,0,0,6151,6154,3,592,296,0,6152,6154,3,568,284,0,6153,6151,1,0,0,0,6153,6152,1,0,0,0,6154,559,1,0,0,0,6155,6160,3,558,279,0,6156,6157,5,1135,0,0,6157,6159,3,558,279,0,6158,6156,1,0,0,0,6159,6162,1,0,0,0,6160,6158,1,0,0,0,6160,6161,1,0,0,0,6161,561,1,0,0,0,6162,6160,1,0,0,0,6163,6168,3,564,282,0,6164,6165,5,1135,0,0,6165,6167,3,564,282,0,6166,6164,1,0,0,0,6167,6170,1,0,0,0,6168,6166,1,0,0,0,6168,6169,1,0,0,0,6169,563,1,0,0,0,6170,6168,1,0,0,0,6171,6172,3,612,306,0,6172,565,1,0,0,0,6173,6178,3,568,284,0,6174,6175,5,1135,0,0,6175,6177,3,568,284,0,6176,6174,1,0,0,0,6177,6180,1,0,0,0,6178,6176,1,0,0,0,6178,6179,1,0,0,0,6179,567,1,0,0,0,6180,6178,1,0,0,0,6181,6182,3,564,282,0,6182,569,1,0,0,0,6183,6188,3,612,306,0,6184,6186,3,616,308,0,6185,6187,3,616,308,0,6186,6185,1,0,0,0,6186,6187,1,0,0,0,6187,6189,1,0,0,0,6188,6184,1,0,0,0,6188,6189,1,0,0,0,6189,6198,1,0,0,0,6190,6192,9,0,0,0,6191,6190,1,0,0,0,6191,6192,1,0,0,0,6192,6193,1,0,0,0,6193,6195,3,616,308,0,6194,6196,3,616,308,0,6195,6194,1,0,0,0,6195,6196,1,0,0,0,6196,6198,1,0,0,0,6197,6183,1,0,0,0,6197,6191,1,0,0,0,6198,571,1,0,0,0,6199,6200,3,612,306,0,6200,573,1,0,0,0,6201,6202,3,612,306,0,6202,575,1,0,0,0,6203,6204,3,612,306,0,6204,577,1,0,0,0,6205,6206,3,552,276,0,6206,579,1,0,0,0,6207,6212,3,574,287,0,6208,6209,5,1135,0,0,6209,6211,3,574,287,0,6210,6208,1,0,0,0,6211,6214,1,0,0,0,6212,6210,1,0,0,0,6212,6213,1,0,0,0,6213,581,1,0,0,0,6214,6212,1,0,0,0,6215,6218,3,612,306,0,6216,6218,5,1148,0,0,6217,6215,1,0,0,0,6217,6216,1,0,0,0,6218,6223,1,0,0,0,6219,6220,5,1133,0,0,6220,6221,3,618,309,0,6221,6222,5,1134,0,0,6222,6224,1,0,0,0,6223,6219,1,0,0,0,6223,6224,1,0,0,0,6224,6227,1,0,0,0,6225,6227,3,716,358,0,6226,6217,1,0,0,0,6226,6225,1,0,0,0,6227,6229,1,0,0,0,6228,6230,7,48,0,0,6229,6228,1,0,0,0,6229,6230,1,0,0,0,6230,583,1,0,0,0,6231,6236,5,1148,0,0,6232,6236,5,1156,0,0,6233,6236,5,697,0,0,6234,6236,3,746,373,0,6235,6231,1,0,0,0,6235,6232,1,0,0,0,6235,6233,1,0,0,0,6235,6234,1,0,0,0,6236,585,1,0,0,0,6237,6238,7,95,0,0,6238,587,1,0,0,0,6239,6244,3,592,296,0,6240,6241,5,1135,0,0,6241,6243,3,592,296,0,6242,6240,1,0,0,0,6243,6246,1,0,0,0,6244,6242,1,0,0,0,6244,6245,1,0,0,0,6245,589,1,0,0,0,6246,6244,1,0,0,0,6247,6253,3,584,292,0,6248,6249,3,584,292,0,6249,6250,3,586,293,0,6250,6253,1,0,0,0,6251,6253,3,60,30,0,6252,6247,1,0,0,0,6252,6248,1,0,0,0,6252,6251,1,0,0,0,6253,591,1,0,0,0,6254,6255,3,590,295,0,6255,593,1,0,0,0,6256,6257,7,96,0,0,6257,595,1,0,0,0,6258,6263,5,226,0,0,6259,6263,3,736,368,0,6260,6263,5,1148,0,0,6261,6263,5,1145,0,0,6262,6258,1,0,0,0,6262,6259,1,0,0,0,6262,6260,1,0,0,0,6262,6261,1,0,0,0,6263,597,1,0,0,0,6264,6267,3,612,306,0,6265,6267,5,1148,0,0,6266,6264,1,0,0,0,6266,6265,1,0,0,0,6267,599,1,0,0,0,6268,6272,3,602,301,0,6269,6272,5,1156,0,0,6270,6272,5,1148,0,0,6271,6268,1,0,0,0,6271,6269,1,0,0,0,6271,6270,1,0,0,0,6272,601,1,0,0,0,6273,6274,7,97,0,0,6274,603,1,0,0,0,6275,6276,3,618,309,0,6276,6277,5,1121,0,0,6277,6278,3,618,309,0,6278,6279,5,1121,0,0,6279,6280,3,618,309,0,6280,6281,5,1121,0,0,6281,6282,3,618,309,0,6282,6283,5,1121,0,0,6283,6289,3,618,309,0,6284,6285,5,1144,0,0,6285,6286,3,618,309,0,6286,6287,5,1121,0,0,6287,6288,3,618,309,0,6288,6290,1,0,0,0,6289,6284,1,0,0,0,6290,6291,1,0,0,0,6291,6289,1,0,0,0,6291,6292,1,0,0,0,6292,605,1,0,0,0,6293,6300,3,608,304,0,6294,6295,5,1135,0,0,6295,6298,3,608,304,0,6296,6297,5,1135,0,0,6297,6299,3,618,309,0,6298,6296,1,0,0,0,6298,6299,1,0,0,0,6299,6301,1,0,0,0,6300,6294,1,0,0,0,6300,6301,1,0,0,0,6301,607,1,0,0,0,6302,6310,5,1148,0,0,6303,6310,5,1153,0,0,6304,6306,5,1150,0,0,6305,6304,1,0,0,0,6306,6307,1,0,0,0,6307,6305,1,0,0,0,6307,6308,1,0,0,0,6308,6310,1,0,0,0,6309,6302,1,0,0,0,6309,6303,1,0,0,0,6309,6305,1,0,0,0,6310,609,1,0,0,0,6311,6314,3,612,306,0,6312,6314,5,1148,0,0,6313,6311,1,0,0,0,6313,6312,1,0,0,0,6314,611,1,0,0,0,6315,6319,3,614,307,0,6316,6319,5,1145,0,0,6317,6319,5,1148,0,0,6318,6315,1,0,0,0,6318,6316,1,0,0,0,6318,6317,1,0,0,0,6319,613,1,0,0,0,6320,6330,5,1156,0,0,6321,6330,3,736,368,0,6322,6330,3,738,369,0,6323,6330,3,602,301,0,6324,6330,3,740,370,0,6325,6330,3,742,371,0,6326,6330,3,744,372,0,6327,6330,3,746,373,0,6328,6330,3,708,354,0,6329,6320,1,0,0,0,6329,6321,1,0,0,0,6329,6322,1,0,0,0,6329,6323,1,0,0,0,6329,6324,1,0,0,0,6329,6325,1,0,0,0,6329,6326,1,0,0,0,6329,6327,1,0,0,0,6329,6328,1,0,0,0,6330,615,1,0,0,0,6331,6335,5,1155,0,0,6332,6333,5,1132,0,0,6333,6335,3,612,306,0,6334,6331,1,0,0,0,6334,6332,1,0,0,0,6335,617,1,0,0,0,6336,6337,7,98,0,0,6337,619,1,0,0,0,6338,6341,5,1146,0,0,6339,6341,3,618,309,0,6340,6338,1,0,0,0,6340,6339,1,0,0,0,6341,621,1,0,0,0,6342,6344,5,1154,0,0,6343,6342,1,0,0,0,6343,6344,1,0,0,0,6344,6345,1,0,0,0,6345,6348,5,1148,0,0,6346,6348,5,1147,0,0,6347,6343,1,0,0,0,6347,6346,1,0,0,0,6348,6350,1,0,0,0,6349,6351,5,1148,0,0,6350,6349,1,0,0,0,6351,6352,1,0,0,0,6352,6350,1,0,0,0,6352,6353,1,0,0,0,6353,6366,1,0,0,0,6354,6356,5,1154,0,0,6355,6354,1,0,0,0,6355,6356,1,0,0,0,6356,6357,1,0,0,0,6357,6360,5,1148,0,0,6358,6360,5,1147,0,0,6359,6355,1,0,0,0,6359,6358,1,0,0,0,6360,6363,1,0,0,0,6361,6362,5,27,0,0,6362,6364,3,598,299,0,6363,6361,1,0,0,0,6363,6364,1,0,0,0,6364,6366,1,0,0,0,6365,6347,1,0,0,0,6365,6359,1,0,0,0,6366,623,1,0,0,0,6367,6368,7,99,0,0,6368,625,1,0,0,0,6369,6371,5,1154,0,0,6370,6369,1,0,0,0,6370,6371,1,0,0,0,6371,6372,1,0,0,0,6372,6373,5,1150,0,0,6373,627,1,0,0,0,6374,6376,5,114,0,0,6375,6374,1,0,0,0,6375,6376,1,0,0,0,6376,6377,1,0,0,0,6377,6378,7,100,0,0,6378,629,1,0,0,0,6379,6392,3,622,311,0,6380,6392,3,618,309,0,6381,6382,5,1121,0,0,6382,6392,3,618,309,0,6383,6392,3,626,313,0,6384,6392,3,624,312,0,6385,6392,5,1151,0,0,6386,6392,5,1153,0,0,6387,6389,5,114,0,0,6388,6387,1,0,0,0,6388,6389,1,0,0,0,6389,6390,1,0,0,0,6390,6392,7,100,0,0,6391,6379,1,0,0,0,6391,6380,1,0,0,0,6391,6381,1,0,0,0,6391,6383,1,0,0,0,6391,6384,1,0,0,0,6391,6385,1,0,0,0,6391,6386,1,0,0,0,6391,6388,1,0,0,0,6392,631,1,0,0,0,6393,6395,7,101,0,0,6394,6396,5,238,0,0,6395,6394,1,0,0,0,6395,6396,1,0,0,0,6396,6398,1,0,0,0,6397,6399,3,638,319,0,6398,6397,1,0,0,0,6398,6399,1,0,0,0,6399,6401,1,0,0,0,6400,6402,5,226,0,0,6401,6400,1,0,0,0,6401,6402,1,0,0,0,6402,6406,1,0,0,0,6403,6404,3,58,29,0,6404,6405,3,596,298,0,6405,6407,1,0,0,0,6406,6403,1,0,0,0,6406,6407,1,0,0,0,6407,6411,1,0,0,0,6408,6409,5,27,0,0,6409,6412,3,598,299,0,6410,6412,5,226,0,0,6411,6408,1,0,0,0,6411,6410,1,0,0,0,6411,6412,1,0,0,0,6412,6520,1,0,0,0,6413,6414,5,225,0,0,6414,6415,7,102,0,0,6415,6417,5,238,0,0,6416,6418,3,638,319,0,6417,6416,1,0,0,0,6417,6418,1,0,0,0,6418,6420,1,0,0,0,6419,6421,5,226,0,0,6420,6419,1,0,0,0,6420,6421,1,0,0,0,6421,6520,1,0,0,0,6422,6423,5,225,0,0,6423,6425,7,103,0,0,6424,6426,3,638,319,0,6425,6424,1,0,0,0,6425,6426,1,0,0,0,6426,6428,1,0,0,0,6427,6429,5,226,0,0,6428,6427,1,0,0,0,6428,6429,1,0,0,0,6429,6520,1,0,0,0,6430,6431,5,518,0,0,6431,6433,5,223,0,0,6432,6434,3,638,319,0,6433,6432,1,0,0,0,6433,6434,1,0,0,0,6434,6436,1,0,0,0,6435,6437,5,226,0,0,6436,6435,1,0,0,0,6436,6437,1,0,0,0,6437,6520,1,0,0,0,6438,6440,7,104,0,0,6439,6441,3,638,319,0,6440,6439,1,0,0,0,6440,6441,1,0,0,0,6441,6445,1,0,0,0,6442,6444,7,105,0,0,6443,6442,1,0,0,0,6444,6447,1,0,0,0,6445,6443,1,0,0,0,6445,6446,1,0,0,0,6446,6520,1,0,0,0,6447,6445,1,0,0,0,6448,6450,5,208,0,0,6449,6451,3,640,320,0,6450,6449,1,0,0,0,6450,6451,1,0,0,0,6451,6455,1,0,0,0,6452,6454,7,105,0,0,6453,6452,1,0,0,0,6454,6457,1,0,0,0,6455,6453,1,0,0,0,6455,6456,1,0,0,0,6456,6520,1,0,0,0,6457,6455,1,0,0,0,6458,6460,5,209,0,0,6459,6461,5,210,0,0,6460,6459,1,0,0,0,6460,6461,1,0,0,0,6461,6463,1,0,0,0,6462,6464,3,640,320,0,6463,6462,1,0,0,0,6463,6464,1,0,0,0,6464,6468,1,0,0,0,6465,6467,7,105,0,0,6466,6465,1,0,0,0,6467,6470,1,0,0,0,6468,6466,1,0,0,0,6468,6469,1,0,0,0,6469,6520,1,0,0,0,6470,6468,1,0,0,0,6471,6473,7,106,0,0,6472,6474,3,642,321,0,6473,6472,1,0,0,0,6473,6474,1,0,0,0,6474,6478,1,0,0,0,6475,6477,7,105,0,0,6476,6475,1,0,0,0,6477,6480,1,0,0,0,6478,6476,1,0,0,0,6478,6479,1,0,0,0,6479,6520,1,0,0,0,6480,6478,1,0,0,0,6481,6520,7,107,0,0,6482,6484,7,108,0,0,6483,6485,3,638,319,0,6484,6483,1,0,0,0,6484,6485,1,0,0,0,6485,6520,1,0,0,0,6486,6487,7,109,0,0,6487,6489,3,634,317,0,6488,6490,5,226,0,0,6489,6488,1,0,0,0,6489,6490,1,0,0,0,6490,6494,1,0,0,0,6491,6492,3,58,29,0,6492,6493,3,596,298,0,6493,6495,1,0,0,0,6494,6491,1,0,0,0,6494,6495,1,0,0,0,6495,6520,1,0,0,0,6496,6499,7,110,0,0,6497,6498,5,1012,0,0,6498,6500,3,618,309,0,6499,6497,1,0,0,0,6499,6500,1,0,0,0,6500,6520,1,0,0,0,6501,6503,5,231,0,0,6502,6504,5,223,0,0,6503,6502,1,0,0,0,6503,6504,1,0,0,0,6504,6506,1,0,0,0,6505,6507,5,226,0,0,6506,6505,1,0,0,0,6506,6507,1,0,0,0,6507,6511,1,0,0,0,6508,6509,3,58,29,0,6509,6510,3,596,298,0,6510,6512,1,0,0,0,6511,6508,1,0,0,0,6511,6512,1,0,0,0,6512,6515,1,0,0,0,6513,6514,5,27,0,0,6514,6516,3,598,299,0,6515,6513,1,0,0,0,6515,6516,1,0,0,0,6516,6520,1,0,0,0,6517,6518,5,231,0,0,6518,6520,5,227,0,0,6519,6393,1,0,0,0,6519,6413,1,0,0,0,6519,6422,1,0,0,0,6519,6430,1,0,0,0,6519,6438,1,0,0,0,6519,6448,1,0,0,0,6519,6458,1,0,0,0,6519,6471,1,0,0,0,6519,6481,1,0,0,0,6519,6482,1,0,0,0,6519,6486,1,0,0,0,6519,6496,1,0,0,0,6519,6501,1,0,0,0,6519,6517,1,0,0,0,6520,633,1,0,0,0,6521,6522,5,1133,0,0,6522,6527,5,1148,0,0,6523,6524,5,1135,0,0,6524,6526,5,1148,0,0,6525,6523,1,0,0,0,6526,6529,1,0,0,0,6527,6525,1,0,0,0,6527,6528,1,0,0,0,6528,6530,1,0,0,0,6529,6527,1,0,0,0,6530,6531,5,1134,0,0,6531,635,1,0,0,0,6532,6534,7,111,0,0,6533,6535,3,638,319,0,6534,6533,1,0,0,0,6534,6535,1,0,0,0,6535,6555,1,0,0,0,6536,6538,5,222,0,0,6537,6539,3,638,319,0,6538,6537,1,0,0,0,6538,6539,1,0,0,0,6539,6543,1,0,0,0,6540,6541,3,58,29,0,6541,6542,3,596,298,0,6542,6544,1,0,0,0,6543,6540,1,0,0,0,6543,6544,1,0,0,0,6544,6555,1,0,0,0,6545,6555,7,112,0,0,6546,6548,7,113,0,0,6547,6549,3,642,321,0,6548,6547,1,0,0,0,6548,6549,1,0,0,0,6549,6555,1,0,0,0,6550,6552,7,114,0,0,6551,6553,7,115,0,0,6552,6551,1,0,0,0,6552,6553,1,0,0,0,6553,6555,1,0,0,0,6554,6532,1,0,0,0,6554,6536,1,0,0,0,6554,6545,1,0,0,0,6554,6546,1,0,0,0,6554,6550,1,0,0,0,6555,6557,1,0,0,0,6556,6558,5,11,0,0,6557,6556,1,0,0,0,6557,6558,1,0,0,0,6558,637,1,0,0,0,6559,6560,5,1133,0,0,6560,6561,3,618,309,0,6561,6562,5,1134,0,0,6562,639,1,0,0,0,6563,6564,5,1133,0,0,6564,6565,3,618,309,0,6565,6566,5,1135,0,0,6566,6567,3,618,309,0,6567,6568,5,1134,0,0,6568,641,1,0,0,0,6569,6570,5,1133,0,0,6570,6573,3,618,309,0,6571,6572,5,1135,0,0,6572,6574,3,618,309,0,6573,6571,1,0,0,0,6573,6574,1,0,0,0,6574,6575,1,0,0,0,6575,6576,5,1134,0,0,6576,643,1,0,0,0,6577,6582,3,612,306,0,6578,6579,5,1135,0,0,6579,6581,3,612,306,0,6580,6578,1,0,0,0,6581,6584,1,0,0,0,6582,6580,1,0,0,0,6582,6583,1,0,0,0,6583,645,1,0,0,0,6584,6582,1,0,0,0,6585,6590,3,570,285,0,6586,6587,5,1135,0,0,6587,6589,3,570,285,0,6588,6586,1,0,0,0,6589,6592,1,0,0,0,6590,6588,1,0,0,0,6590,6591,1,0,0,0,6591,647,1,0,0,0,6592,6590,1,0,0,0,6593,6598,3,554,277,0,6594,6595,5,1135,0,0,6595,6597,3,554,277,0,6596,6594,1,0,0,0,6597,6600,1,0,0,0,6598,6596,1,0,0,0,6598,6599,1,0,0,0,6599,649,1,0,0,0,6600,6598,1,0,0,0,6601,6602,5,1133,0,0,6602,6607,3,582,291,0,6603,6604,5,1135,0,0,6604,6606,3,582,291,0,6605,6603,1,0,0,0,6606,6609,1,0,0,0,6607,6605,1,0,0,0,6607,6608,1,0,0,0,6608,6610,1,0,0,0,6609,6607,1,0,0,0,6610,6611,5,1134,0,0,6611,651,1,0,0,0,6612,6617,3,716,358,0,6613,6614,5,1135,0,0,6614,6616,3,716,358,0,6615,6613,1,0,0,0,6616,6619,1,0,0,0,6617,6615,1,0,0,0,6617,6618,1,0,0,0,6618,653,1,0,0,0,6619,6617,1,0,0,0,6620,6625,3,666,333,0,6621,6622,5,1135,0,0,6622,6624,3,666,333,0,6623,6621,1,0,0,0,6624,6627,1,0,0,0,6625,6623,1,0,0,0,6625,6626,1,0,0,0,6626,655,1,0,0,0,6627,6625,1,0,0,0,6628,6633,3,630,315,0,6629,6630,5,1135,0,0,6630,6632,3,630,315,0,6631,6629,1,0,0,0,6632,6635,1,0,0,0,6633,6631,1,0,0,0,6633,6634,1,0,0,0,6634,657,1,0,0,0,6635,6633,1,0,0,0,6636,6641,5,1148,0,0,6637,6638,5,1135,0,0,6638,6640,5,1148,0,0,6639,6637,1,0,0,0,6640,6643,1,0,0,0,6641,6639,1,0,0,0,6641,6642,1,0,0,0,6642,659,1,0,0,0,6643,6641,1,0,0,0,6644,6649,5,1159,0,0,6645,6646,5,1135,0,0,6646,6648,5,1159,0,0,6647,6645,1,0,0,0,6648,6651,1,0,0,0,6649,6647,1,0,0,0,6649,6650,1,0,0,0,6650,661,1,0,0,0,6651,6649,1,0,0,0,6652,6679,5,116,0,0,6653,6654,5,23,0,0,6654,6655,5,1133,0,0,6655,6656,3,716,358,0,6656,6657,5,12,0,0,6657,6658,3,636,318,0,6658,6659,5,1134,0,0,6659,6679,1,0,0,0,6660,6662,3,722,361,0,6661,6660,1,0,0,0,6661,6662,1,0,0,0,6662,6663,1,0,0,0,6663,6679,3,630,315,0,6664,6668,3,664,332,0,6665,6666,5,118,0,0,6666,6667,5,184,0,0,6667,6669,3,664,332,0,6668,6665,1,0,0,0,6668,6669,1,0,0,0,6669,6679,1,0,0,0,6670,6671,5,1133,0,0,6671,6672,3,716,358,0,6672,6673,5,1134,0,0,6673,6679,1,0,0,0,6674,6675,5,1133,0,0,6675,6676,3,552,276,0,6676,6677,5,1134,0,0,6677,6679,1,0,0,0,6678,6652,1,0,0,0,6678,6653,1,0,0,0,6678,6661,1,0,0,0,6678,6664,1,0,0,0,6678,6670,1,0,0,0,6678,6674,1,0,0,0,6679,663,1,0,0,0,6680,6686,7,116,0,0,6681,6683,5,1133,0,0,6682,6684,3,618,309,0,6683,6682,1,0,0,0,6683,6684,1,0,0,0,6684,6685,1,0,0,0,6685,6687,5,1134,0,0,6686,6681,1,0,0,0,6686,6687,1,0,0,0,6687,6695,1,0,0,0,6688,6689,5,323,0,0,6689,6691,5,1133,0,0,6690,6692,3,618,309,0,6691,6690,1,0,0,0,6691,6692,1,0,0,0,6692,6693,1,0,0,0,6693,6695,5,1134,0,0,6694,6680,1,0,0,0,6694,6688,1,0,0,0,6695,665,1,0,0,0,6696,6699,3,716,358,0,6697,6699,5,42,0,0,6698,6696,1,0,0,0,6698,6697,1,0,0,0,6699,667,1,0,0,0,6700,6701,5,77,0,0,6701,6702,5,60,0,0,6702,669,1,0,0,0,6703,6704,5,77,0,0,6704,6705,5,114,0,0,6705,6706,5,60,0,0,6706,671,1,0,0,0,6707,6708,5,123,0,0,6708,6709,5,141,0,0,6709,673,1,0,0,0,6710,6711,5,674,0,0,6711,6714,3,618,309,0,6712,6714,5,527,0,0,6713,6710,1,0,0,0,6713,6712,1,0,0,0,6714,675,1,0,0,0,6715,6734,3,678,339,0,6716,6734,3,686,343,0,6717,6734,3,688,344,0,6718,6719,3,708,354,0,6719,6721,5,1133,0,0,6720,6722,3,712,356,0,6721,6720,1,0,0,0,6721,6722,1,0,0,0,6722,6723,1,0,0,0,6723,6724,5,1134,0,0,6724,6734,1,0,0,0,6725,6726,3,552,276,0,6726,6728,5,1133,0,0,6727,6729,3,712,356,0,6728,6727,1,0,0,0,6728,6729,1,0,0,0,6729,6730,1,0,0,0,6730,6731,5,1134,0,0,6731,6734,1,0,0,0,6732,6734,3,710,355,0,6733,6715,1,0,0,0,6733,6716,1,0,0,0,6733,6717,1,0,0,0,6733,6718,1,0,0,0,6733,6725,1,0,0,0,6733,6732,1,0,0,0,6734,677,1,0,0,0,6735,6738,7,117,0,0,6736,6737,5,1133,0,0,6737,6739,5,1134,0,0,6738,6736,1,0,0,0,6738,6739,1,0,0,0,6739,6915,1,0,0,0,6740,6915,3,60,30,0,6741,6742,5,32,0,0,6742,6743,5,1133,0,0,6743,6744,3,716,358,0,6744,6745,5,1135,0,0,6745,6746,3,636,318,0,6746,6747,5,1134,0,0,6747,6915,1,0,0,0,6748,6749,5,32,0,0,6749,6750,5,1133,0,0,6750,6751,3,716,358,0,6751,6752,5,187,0,0,6752,6753,3,596,298,0,6753,6754,5,1134,0,0,6754,6915,1,0,0,0,6755,6756,5,23,0,0,6756,6757,5,1133,0,0,6757,6758,3,716,358,0,6758,6759,5,12,0,0,6759,6760,3,636,318,0,6760,6761,5,1134,0,0,6761,6915,1,0,0,0,6762,6763,5,188,0,0,6763,6764,5,1133,0,0,6764,6765,3,570,285,0,6765,6766,5,1134,0,0,6766,6915,1,0,0,0,6767,6768,5,22,0,0,6768,6770,3,716,358,0,6769,6771,3,680,340,0,6770,6769,1,0,0,0,6771,6772,1,0,0,0,6772,6770,1,0,0,0,6772,6773,1,0,0,0,6773,6776,1,0,0,0,6774,6775,5,53,0,0,6775,6777,3,714,357,0,6776,6774,1,0,0,0,6776,6777,1,0,0,0,6777,6778,1,0,0,0,6778,6779,5,407,0,0,6779,6915,1,0,0,0,6780,6782,5,22,0,0,6781,6783,3,680,340,0,6782,6781,1,0,0,0,6783,6784,1,0,0,0,6784,6782,1,0,0,0,6784,6785,1,0,0,0,6785,6788,1,0,0,0,6786,6787,5,53,0,0,6787,6789,3,714,357,0,6788,6786,1,0,0,0,6788,6789,1,0,0,0,6789,6790,1,0,0,0,6790,6791,5,407,0,0,6791,6915,1,0,0,0,6792,6793,5,222,0,0,6793,6794,5,1133,0,0,6794,6797,3,712,356,0,6795,6796,5,187,0,0,6796,6798,3,596,298,0,6797,6795,1,0,0,0,6797,6798,1,0,0,0,6798,6799,1,0,0,0,6799,6800,5,1134,0,0,6800,6915,1,0,0,0,6801,6802,5,324,0,0,6802,6805,5,1133,0,0,6803,6806,3,622,311,0,6804,6806,3,716,358,0,6805,6803,1,0,0,0,6805,6804,1,0,0,0,6806,6807,1,0,0,0,6807,6810,5,80,0,0,6808,6811,3,622,311,0,6809,6811,3,716,358,0,6810,6808,1,0,0,0,6810,6809,1,0,0,0,6811,6812,1,0,0,0,6812,6813,5,1134,0,0,6813,6915,1,0,0,0,6814,6815,7,118,0,0,6815,6818,5,1133,0,0,6816,6819,3,622,311,0,6817,6819,3,716,358,0,6818,6816,1,0,0,0,6818,6817,1,0,0,0,6819,6820,1,0,0,0,6820,6823,5,68,0,0,6821,6824,3,618,309,0,6822,6824,3,716,358,0,6823,6821,1,0,0,0,6823,6822,1,0,0,0,6824,6830,1,0,0,0,6825,6828,5,65,0,0,6826,6829,3,618,309,0,6827,6829,3,716,358,0,6828,6826,1,0,0,0,6828,6827,1,0,0,0,6829,6831,1,0,0,0,6830,6825,1,0,0,0,6830,6831,1,0,0,0,6831,6832,1,0,0,0,6832,6833,5,1134,0,0,6833,6915,1,0,0,0,6834,6835,5,328,0,0,6835,6836,5,1133,0,0,6836,6839,7,119,0,0,6837,6840,3,622,311,0,6838,6840,3,716,358,0,6839,6837,1,0,0,0,6839,6838,1,0,0,0,6839,6840,1,0,0,0,6840,6841,1,0,0,0,6841,6844,5,68,0,0,6842,6845,3,622,311,0,6843,6845,3,716,358,0,6844,6842,1,0,0,0,6844,6843,1,0,0,0,6845,6846,1,0,0,0,6846,6847,5,1134,0,0,6847,6915,1,0,0,0,6848,6849,5,328,0,0,6849,6852,5,1133,0,0,6850,6853,3,622,311,0,6851,6853,3,716,358,0,6852,6850,1,0,0,0,6852,6851,1,0,0,0,6853,6854,1,0,0,0,6854,6857,5,68,0,0,6855,6858,3,622,311,0,6856,6858,3,716,358,0,6857,6855,1,0,0,0,6857,6856,1,0,0,0,6858,6859,1,0,0,0,6859,6860,5,1134,0,0,6860,6915,1,0,0,0,6861,6862,5,1103,0,0,6862,6865,5,1133,0,0,6863,6866,3,622,311,0,6864,6866,3,716,358,0,6865,6863,1,0,0,0,6865,6864,1,0,0,0,6866,6873,1,0,0,0,6867,6868,5,12,0,0,6868,6869,7,120,0,0,6869,6870,5,1133,0,0,6870,6871,3,618,309,0,6871,6872,5,1134,0,0,6872,6874,1,0,0,0,6873,6867,1,0,0,0,6873,6874,1,0,0,0,6874,6876,1,0,0,0,6875,6877,3,682,341,0,6876,6875,1,0,0,0,6876,6877,1,0,0,0,6877,6878,1,0,0,0,6878,6879,5,1134,0,0,6879,6915,1,0,0,0,6880,6881,5,321,0,0,6881,6882,5,1133,0,0,6882,6883,3,70,35,0,6883,6886,5,68,0,0,6884,6887,3,622,311,0,6885,6887,3,716,358,0,6886,6884,1,0,0,0,6886,6885,1,0,0,0,6887,6888,1,0,0,0,6888,6889,5,1134,0,0,6889,6915,1,0,0,0,6890,6891,5,900,0,0,6891,6892,5,1133,0,0,6892,6893,7,121,0,0,6893,6894,5,1135,0,0,6894,6895,3,622,311,0,6895,6896,5,1134,0,0,6896,6915,1,0,0,0,6897,6898,5,282,0,0,6898,6899,5,1133,0,0,6899,6900,3,716,358,0,6900,6901,5,1135,0,0,6901,6904,3,716,358,0,6902,6903,5,593,0,0,6903,6905,3,636,318,0,6904,6902,1,0,0,0,6904,6905,1,0,0,0,6905,6907,1,0,0,0,6906,6908,3,266,133,0,6907,6906,1,0,0,0,6907,6908,1,0,0,0,6908,6910,1,0,0,0,6909,6911,3,268,134,0,6910,6909,1,0,0,0,6910,6911,1,0,0,0,6911,6912,1,0,0,0,6912,6913,5,1134,0,0,6913,6915,1,0,0,0,6914,6735,1,0,0,0,6914,6740,1,0,0,0,6914,6741,1,0,0,0,6914,6748,1,0,0,0,6914,6755,1,0,0,0,6914,6762,1,0,0,0,6914,6767,1,0,0,0,6914,6780,1,0,0,0,6914,6792,1,0,0,0,6914,6801,1,0,0,0,6914,6814,1,0,0,0,6914,6834,1,0,0,0,6914,6848,1,0,0,0,6914,6861,1,0,0,0,6914,6880,1,0,0,0,6914,6890,1,0,0,0,6914,6897,1,0,0,0,6915,679,1,0,0,0,6916,6917,5,189,0,0,6917,6918,3,714,357,0,6918,6919,5,174,0,0,6919,6920,3,714,357,0,6920,681,1,0,0,0,6921,6922,5,472,0,0,6922,6927,3,684,342,0,6923,6924,5,1135,0,0,6924,6926,3,684,342,0,6925,6923,1,0,0,0,6926,6929,1,0,0,0,6927,6925,1,0,0,0,6927,6928,1,0,0,0,6928,6936,1,0,0,0,6929,6927,1,0,0,0,6930,6931,5,472,0,0,6931,6932,3,618,309,0,6932,6933,5,1121,0,0,6933,6934,3,618,309,0,6934,6936,1,0,0,0,6935,6921,1,0,0,0,6935,6930,1,0,0,0,6936,683,1,0,0,0,6937,6939,3,618,309,0,6938,6940,7,122,0,0,6939,6938,1,0,0,0,6939,6940,1,0,0,0,6940,685,1,0,0,0,6941,6942,7,123,0,0,6942,6944,5,1133,0,0,6943,6945,7,44,0,0,6944,6943,1,0,0,0,6944,6945,1,0,0,0,6945,6946,1,0,0,0,6946,6947,3,714,357,0,6947,6949,5,1134,0,0,6948,6950,3,690,345,0,6949,6948,1,0,0,0,6949,6950,1,0,0,0,6950,7001,1,0,0,0,6951,6952,5,290,0,0,6952,6960,5,1133,0,0,6953,6961,5,1117,0,0,6954,6956,5,6,0,0,6955,6954,1,0,0,0,6955,6956,1,0,0,0,6956,6957,1,0,0,0,6957,6961,3,714,357,0,6958,6959,5,49,0,0,6959,6961,3,712,356,0,6960,6953,1,0,0,0,6960,6955,1,0,0,0,6960,6958,1,0,0,0,6961,6962,1,0,0,0,6962,6964,5,1134,0,0,6963,6965,3,690,345,0,6964,6963,1,0,0,0,6964,6965,1,0,0,0,6965,7001,1,0,0,0,6966,6967,7,124,0,0,6967,6969,5,1133,0,0,6968,6970,5,6,0,0,6969,6968,1,0,0,0,6969,6970,1,0,0,0,6970,6971,1,0,0,0,6971,6972,3,714,357,0,6972,6974,5,1134,0,0,6973,6975,3,690,345,0,6974,6973,1,0,0,0,6974,6975,1,0,0,0,6975,7001,1,0,0,0,6976,6977,5,294,0,0,6977,6979,5,1133,0,0,6978,6980,5,49,0,0,6979,6978,1,0,0,0,6979,6980,1,0,0,0,6980,6981,1,0,0,0,6981,6992,3,712,356,0,6982,6983,5,124,0,0,6983,6984,5,19,0,0,6984,6989,3,230,115,0,6985,6986,5,1135,0,0,6986,6988,3,230,115,0,6987,6985,1,0,0,0,6988,6991,1,0,0,0,6989,6987,1,0,0,0,6989,6990,1,0,0,0,6990,6993,1,0,0,0,6991,6989,1,0,0,0,6992,6982,1,0,0,0,6992,6993,1,0,0,0,6993,6996,1,0,0,0,6994,6995,5,154,0,0,6995,6997,5,1148,0,0,6996,6994,1,0,0,0,6996,6997,1,0,0,0,6997,6998,1,0,0,0,6998,6999,5,1134,0,0,6999,7001,1,0,0,0,7e3,6941,1,0,0,0,7e3,6951,1,0,0,0,7e3,6966,1,0,0,0,7e3,6976,1,0,0,0,7001,687,1,0,0,0,7002,7003,7,125,0,0,7003,7004,5,1133,0,0,7004,7007,3,716,358,0,7005,7006,5,1135,0,0,7006,7008,3,618,309,0,7007,7005,1,0,0,0,7007,7008,1,0,0,0,7008,7011,1,0,0,0,7009,7010,5,1135,0,0,7010,7012,3,618,309,0,7011,7009,1,0,0,0,7011,7012,1,0,0,0,7012,7013,1,0,0,0,7013,7014,5,1134,0,0,7014,7015,3,690,345,0,7015,7041,1,0,0,0,7016,7017,7,126,0,0,7017,7018,5,1133,0,0,7018,7019,3,716,358,0,7019,7020,5,1134,0,0,7020,7021,3,690,345,0,7021,7041,1,0,0,0,7022,7023,7,127,0,0,7023,7024,5,1133,0,0,7024,7025,5,1134,0,0,7025,7041,3,690,345,0,7026,7027,5,301,0,0,7027,7028,5,1133,0,0,7028,7029,3,716,358,0,7029,7030,5,1135,0,0,7030,7031,3,618,309,0,7031,7032,5,1134,0,0,7032,7033,3,690,345,0,7033,7041,1,0,0,0,7034,7035,5,300,0,0,7035,7036,5,1133,0,0,7036,7037,3,618,309,0,7037,7038,5,1134,0,0,7038,7039,3,690,345,0,7039,7041,1,0,0,0,7040,7002,1,0,0,0,7040,7016,1,0,0,0,7040,7022,1,0,0,0,7040,7026,1,0,0,0,7040,7034,1,0,0,0,7041,689,1,0,0,0,7042,7048,5,128,0,0,7043,7044,5,1133,0,0,7044,7045,3,692,346,0,7045,7046,5,1134,0,0,7046,7049,1,0,0,0,7047,7049,3,694,347,0,7048,7043,1,0,0,0,7048,7047,1,0,0,0,7049,691,1,0,0,0,7050,7052,3,694,347,0,7051,7050,1,0,0,0,7051,7052,1,0,0,0,7052,7054,1,0,0,0,7053,7055,3,706,353,0,7054,7053,1,0,0,0,7054,7055,1,0,0,0,7055,7057,1,0,0,0,7056,7058,3,228,114,0,7057,7056,1,0,0,0,7057,7058,1,0,0,0,7058,7060,1,0,0,0,7059,7061,3,696,348,0,7060,7059,1,0,0,0,7060,7061,1,0,0,0,7061,693,1,0,0,0,7062,7063,3,612,306,0,7063,695,1,0,0,0,7064,7065,3,698,349,0,7065,7066,3,700,350,0,7066,697,1,0,0,0,7067,7068,7,128,0,0,7068,699,1,0,0,0,7069,7072,3,704,352,0,7070,7072,3,702,351,0,7071,7069,1,0,0,0,7071,7070,1,0,0,0,7072,701,1,0,0,0,7073,7074,5,16,0,0,7074,7075,3,704,352,0,7075,7076,5,10,0,0,7076,7077,3,704,352,0,7077,703,1,0,0,0,7078,7079,5,35,0,0,7079,7086,5,600,0,0,7080,7081,5,657,0,0,7081,7086,7,129,0,0,7082,7083,3,716,358,0,7083,7084,7,129,0,0,7084,7086,1,0,0,0,7085,7078,1,0,0,0,7085,7080,1,0,0,0,7085,7082,1,0,0,0,7086,705,1,0,0,0,7087,7088,5,129,0,0,7088,7089,5,19,0,0,7089,7094,3,716,358,0,7090,7091,5,1135,0,0,7091,7093,3,716,358,0,7092,7090,1,0,0,0,7093,7096,1,0,0,0,7094,7092,1,0,0,0,7094,7095,1,0,0,0,7095,707,1,0,0,0,7096,7094,1,0,0,0,7097,7122,3,748,374,0,7098,7122,5,747,0,0,7099,7122,5,317,0,0,7100,7122,5,313,0,0,7101,7122,5,314,0,0,7102,7122,5,315,0,0,7103,7122,5,318,0,0,7104,7122,5,319,0,0,7105,7122,5,320,0,0,7106,7122,5,77,0,0,7107,7122,5,85,0,0,7108,7122,5,316,0,0,7109,7122,5,322,0,0,7110,7122,5,508,0,0,7111,7122,5,323,0,0,7112,7122,5,140,0,0,7113,7122,5,141,0,0,7114,7122,5,325,0,0,7115,7122,5,326,0,0,7116,7122,5,327,0,0,7117,7122,5,328,0,0,7118,7122,5,329,0,0,7119,7122,5,330,0,0,7120,7122,5,331,0,0,7121,7097,1,0,0,0,7121,7098,1,0,0,0,7121,7099,1,0,0,0,7121,7100,1,0,0,0,7121,7101,1,0,0,0,7121,7102,1,0,0,0,7121,7103,1,0,0,0,7121,7104,1,0,0,0,7121,7105,1,0,0,0,7121,7106,1,0,0,0,7121,7107,1,0,0,0,7121,7108,1,0,0,0,7121,7109,1,0,0,0,7121,7110,1,0,0,0,7121,7111,1,0,0,0,7121,7112,1,0,0,0,7121,7113,1,0,0,0,7121,7114,1,0,0,0,7121,7115,1,0,0,0,7121,7116,1,0,0,0,7121,7117,1,0,0,0,7121,7118,1,0,0,0,7121,7119,1,0,0,0,7121,7120,1,0,0,0,7122,709,1,0,0,0,7123,7124,7,130,0,0,7124,7125,5,1133,0,0,7125,7126,3,714,357,0,7126,7127,5,1134,0,0,7127,711,1,0,0,0,7128,7133,3,630,315,0,7129,7133,3,570,285,0,7130,7133,3,676,338,0,7131,7133,3,716,358,0,7132,7128,1,0,0,0,7132,7129,1,0,0,0,7132,7130,1,0,0,0,7132,7131,1,0,0,0,7133,7143,1,0,0,0,7134,7139,5,1135,0,0,7135,7140,3,630,315,0,7136,7140,3,570,285,0,7137,7140,3,676,338,0,7138,7140,3,716,358,0,7139,7135,1,0,0,0,7139,7136,1,0,0,0,7139,7137,1,0,0,0,7139,7138,1,0,0,0,7140,7142,1,0,0,0,7141,7134,1,0,0,0,7142,7145,1,0,0,0,7143,7141,1,0,0,0,7143,7144,1,0,0,0,7144,713,1,0,0,0,7145,7143,1,0,0,0,7146,7151,3,630,315,0,7147,7151,3,570,285,0,7148,7151,3,676,338,0,7149,7151,3,716,358,0,7150,7146,1,0,0,0,7150,7147,1,0,0,0,7150,7148,1,0,0,0,7150,7149,1,0,0,0,7151,715,1,0,0,0,7152,7153,6,358,-1,0,7153,7154,7,131,0,0,7154,7164,3,716,358,4,7155,7156,3,718,359,0,7156,7158,5,88,0,0,7157,7159,5,114,0,0,7158,7157,1,0,0,0,7158,7159,1,0,0,0,7159,7160,1,0,0,0,7160,7161,7,132,0,0,7161,7164,1,0,0,0,7162,7164,3,718,359,0,7163,7152,1,0,0,0,7163,7155,1,0,0,0,7163,7162,1,0,0,0,7164,7171,1,0,0,0,7165,7166,10,3,0,0,7166,7167,3,726,363,0,7167,7168,3,716,358,4,7168,7170,1,0,0,0,7169,7165,1,0,0,0,7170,7173,1,0,0,0,7171,7169,1,0,0,0,7171,7172,1,0,0,0,7172,717,1,0,0,0,7173,7171,1,0,0,0,7174,7175,6,359,-1,0,7175,7176,3,720,360,0,7176,7241,1,0,0,0,7177,7178,10,8,0,0,7178,7179,3,724,362,0,7179,7180,3,718,359,9,7180,7240,1,0,0,0,7181,7183,10,6,0,0,7182,7184,5,114,0,0,7183,7182,1,0,0,0,7183,7184,1,0,0,0,7184,7185,1,0,0,0,7185,7186,5,16,0,0,7186,7187,3,718,359,0,7187,7188,5,10,0,0,7188,7189,3,718,359,7,7189,7240,1,0,0,0,7190,7191,10,5,0,0,7191,7192,5,620,0,0,7192,7193,5,98,0,0,7193,7240,3,718,359,6,7194,7196,10,3,0,0,7195,7197,5,114,0,0,7196,7195,1,0,0,0,7196,7197,1,0,0,0,7197,7198,1,0,0,0,7198,7199,7,133,0,0,7199,7240,3,718,359,4,7200,7202,10,10,0,0,7201,7203,5,114,0,0,7202,7201,1,0,0,0,7202,7203,1,0,0,0,7203,7204,1,0,0,0,7204,7205,5,80,0,0,7205,7208,5,1133,0,0,7206,7209,3,198,99,0,7207,7209,3,652,326,0,7208,7206,1,0,0,0,7208,7207,1,0,0,0,7209,7210,1,0,0,0,7210,7211,5,1134,0,0,7211,7240,1,0,0,0,7212,7213,10,9,0,0,7213,7214,5,88,0,0,7214,7240,3,628,314,0,7215,7216,10,7,0,0,7216,7217,3,724,362,0,7217,7218,7,134,0,0,7218,7219,5,1133,0,0,7219,7220,3,198,99,0,7220,7221,5,1134,0,0,7221,7240,1,0,0,0,7222,7224,10,4,0,0,7223,7225,5,114,0,0,7224,7223,1,0,0,0,7224,7225,1,0,0,0,7225,7226,1,0,0,0,7226,7227,5,98,0,0,7227,7230,3,718,359,0,7228,7229,5,413,0,0,7229,7231,5,1148,0,0,7230,7228,1,0,0,0,7230,7231,1,0,0,0,7231,7240,1,0,0,0,7232,7233,10,2,0,0,7233,7234,5,505,0,0,7234,7235,5,533,0,0,7235,7236,5,1133,0,0,7236,7237,3,718,359,0,7237,7238,5,1134,0,0,7238,7240,1,0,0,0,7239,7177,1,0,0,0,7239,7181,1,0,0,0,7239,7190,1,0,0,0,7239,7194,1,0,0,0,7239,7200,1,0,0,0,7239,7212,1,0,0,0,7239,7215,1,0,0,0,7239,7222,1,0,0,0,7239,7232,1,0,0,0,7240,7243,1,0,0,0,7241,7239,1,0,0,0,7241,7242,1,0,0,0,7242,719,1,0,0,0,7243,7241,1,0,0,0,7244,7245,6,360,-1,0,7245,7293,3,630,315,0,7246,7293,3,570,285,0,7247,7293,3,676,338,0,7248,7293,3,594,297,0,7249,7250,3,722,361,0,7250,7251,3,720,360,12,7251,7293,1,0,0,0,7252,7253,5,226,0,0,7253,7293,3,720,360,11,7254,7255,5,1159,0,0,7255,7256,5,1108,0,0,7256,7293,3,720,360,10,7257,7258,5,1133,0,0,7258,7263,3,716,358,0,7259,7260,5,1135,0,0,7260,7262,3,716,358,0,7261,7259,1,0,0,0,7262,7265,1,0,0,0,7263,7261,1,0,0,0,7263,7264,1,0,0,0,7264,7266,1,0,0,0,7265,7263,1,0,0,0,7266,7267,5,1134,0,0,7267,7293,1,0,0,0,7268,7269,5,600,0,0,7269,7270,5,1133,0,0,7270,7273,3,716,358,0,7271,7272,5,1135,0,0,7272,7274,3,716,358,0,7273,7271,1,0,0,0,7274,7275,1,0,0,0,7275,7273,1,0,0,0,7275,7276,1,0,0,0,7276,7277,1,0,0,0,7277,7278,5,1134,0,0,7278,7293,1,0,0,0,7279,7280,5,60,0,0,7280,7281,5,1133,0,0,7281,7282,3,198,99,0,7282,7283,5,1134,0,0,7283,7293,1,0,0,0,7284,7285,5,1133,0,0,7285,7286,3,198,99,0,7286,7287,5,1134,0,0,7287,7293,1,0,0,0,7288,7289,5,86,0,0,7289,7290,3,716,358,0,7290,7291,3,70,35,0,7291,7293,1,0,0,0,7292,7244,1,0,0,0,7292,7246,1,0,0,0,7292,7247,1,0,0,0,7292,7248,1,0,0,0,7292,7249,1,0,0,0,7292,7252,1,0,0,0,7292,7254,1,0,0,0,7292,7257,1,0,0,0,7292,7268,1,0,0,0,7292,7279,1,0,0,0,7292,7284,1,0,0,0,7292,7288,1,0,0,0,7293,7315,1,0,0,0,7294,7295,10,4,0,0,7295,7296,3,728,364,0,7296,7297,3,720,360,5,7297,7314,1,0,0,0,7298,7299,10,3,0,0,7299,7300,3,730,365,0,7300,7301,3,720,360,4,7301,7314,1,0,0,0,7302,7303,10,2,0,0,7303,7304,3,732,366,0,7304,7305,3,720,360,3,7305,7314,1,0,0,0,7306,7307,10,1,0,0,7307,7308,3,734,367,0,7308,7309,3,720,360,2,7309,7314,1,0,0,0,7310,7311,10,14,0,0,7311,7312,5,27,0,0,7312,7314,3,598,299,0,7313,7294,1,0,0,0,7313,7298,1,0,0,0,7313,7302,1,0,0,0,7313,7306,1,0,0,0,7313,7310,1,0,0,0,7314,7317,1,0,0,0,7315,7313,1,0,0,0,7315,7316,1,0,0,0,7316,721,1,0,0,0,7317,7315,1,0,0,0,7318,7319,7,135,0,0,7319,723,1,0,0,0,7320,7335,5,1124,0,0,7321,7335,5,1125,0,0,7322,7335,5,1126,0,0,7323,7324,5,1126,0,0,7324,7335,5,1124,0,0,7325,7326,5,1125,0,0,7326,7335,5,1124,0,0,7327,7328,5,1126,0,0,7328,7335,5,1125,0,0,7329,7330,5,1127,0,0,7330,7335,5,1124,0,0,7331,7332,5,1126,0,0,7332,7333,5,1124,0,0,7333,7335,5,1125,0,0,7334,7320,1,0,0,0,7334,7321,1,0,0,0,7334,7322,1,0,0,0,7334,7323,1,0,0,0,7334,7325,1,0,0,0,7334,7327,1,0,0,0,7334,7329,1,0,0,0,7334,7331,1,0,0,0,7335,725,1,0,0,0,7336,7344,5,10,0,0,7337,7338,5,1130,0,0,7338,7344,5,1130,0,0,7339,7344,5,194,0,0,7340,7344,5,123,0,0,7341,7342,5,1129,0,0,7342,7344,5,1129,0,0,7343,7336,1,0,0,0,7343,7337,1,0,0,0,7343,7339,1,0,0,0,7343,7340,1,0,0,0,7343,7341,1,0,0,0,7344,727,1,0,0,0,7345,7346,5,1126,0,0,7346,7353,5,1126,0,0,7347,7348,5,1125,0,0,7348,7353,5,1125,0,0,7349,7353,5,1130,0,0,7350,7353,5,1131,0,0,7351,7353,5,1129,0,0,7352,7345,1,0,0,0,7352,7347,1,0,0,0,7352,7349,1,0,0,0,7352,7350,1,0,0,0,7352,7351,1,0,0,0,7353,729,1,0,0,0,7354,7355,7,136,0,0,7355,731,1,0,0,0,7356,7357,7,137,0,0,7357,733,1,0,0,0,7358,7359,5,1121,0,0,7359,7364,5,1125,0,0,7360,7361,5,1121,0,0,7361,7362,5,1125,0,0,7362,7364,5,1125,0,0,7363,7358,1,0,0,0,7363,7360,1,0,0,0,7364,735,1,0,0,0,7365,7366,7,138,0,0,7366,737,1,0,0,0,7367,7368,7,139,0,0,7368,739,1,0,0,0,7369,7370,7,140,0,0,7370,741,1,0,0,0,7371,7372,7,141,0,0,7372,743,1,0,0,0,7373,7374,7,142,0,0,7374,745,1,0,0,0,7375,7376,7,143,0,0,7376,747,1,0,0,0,7377,7378,7,144,0,0,7378,749,1,0,0,0,1057,751,757,763,772,812,827,838,855,860,872,899,908,913,919,924,928,937,940,943,947,954,957,962,970,975,980,983,985,997,1e3,1004,1007,1011,1014,1018,1021,1024,1028,1031,1035,1041,1047,1053,1060,1067,1070,1074,1079,1085,1094,1099,1104,1122,1129,1133,1143,1147,1151,1155,1159,1164,1167,1170,1173,1176,1182,1186,1192,1197,1200,1203,1205,1216,1220,1223,1237,1240,1244,1247,1251,1254,1258,1261,1265,1268,1271,1275,1278,1282,1288,1292,1304,1310,1321,1326,1334,1342,1347,1350,1355,1363,1368,1374,1379,1383,1385,1388,1392,1396,1399,1403,1407,1411,1417,1420,1427,1432,1438,1445,1451,1459,1462,1469,1472,1474,1480,1486,1503,1510,1517,1529,1534,1537,1540,1553,1566,1571,1587,1595,1605,1608,1611,1617,1621,1624,1635,1638,1643,1656,1663,1670,1672,1679,1683,1685,1690,1693,1699,1704,1706,1710,1713,1716,1722,1727,1729,1734,1741,1743,1750,1755,1759,1762,1770,1778,1780,1790,1794,1797,1803,1808,1811,1817,1820,1824,1827,1831,1836,1841,1846,1850,1854,1858,1862,1866,1870,1875,1880,1885,1891,1896,1901,1906,1911,1916,1922,1927,1932,1937,1942,1947,1952,1957,1964,1969,1974,1979,1983,1988,1996,2001,2007,2019,2026,2028,2036,2041,2044,2052,2058,2062,2075,2087,2089,2092,2100,2106,2112,2125,2132,2141,2146,2157,2166,2171,2183,2190,2199,2204,2216,2223,2232,2237,2244,2253,2258,2260,2265,2273,2282,2286,2289,2293,2298,2304,2310,2315,2320,2325,2330,2333,2341,2351,2355,2362,2367,2370,2375,2378,2382,2386,2394,2413,2416,2419,2423,2433,2446,2453,2456,2461,2468,2471,2474,2485,2488,2492,2500,2503,2508,2516,2522,2526,2530,2535,2540,2547,2551,2562,2570,2573,2579,2585,2587,2592,2595,2601,2607,2609,2613,2616,2619,2625,2631,2634,2640,2646,2648,2653,2661,2663,2672,2675,2678,2683,2685,2694,2697,2700,2705,2707,2716,2721,2729,2733,2741,2751,2756,2763,2767,2771,2790,2800,2806,2823,2827,2837,2842,2845,2854,2865,2873,2879,2889,2901,2908,2915,2930,2943,2949,2955,2961,2967,2973,2979,2984,2991,2998,3005,3010,3013,3015,3029,3036,3043,3049,3053,3057,3064,3067,3072,3079,3086,3090,3095,3105,3112,3121,3130,3139,3142,3146,3155,3159,3162,3165,3171,3174,3178,3181,3185,3188,3196,3199,3210,3213,3218,3221,3226,3236,3241,3247,3249,3255,3257,3263,3271,3276,3284,3287,3292,3295,3300,3308,3316,3322,3330,3335,3343,3346,3350,3353,3361,3367,3376,3379,3383,3387,3391,3396,3400,3404,3406,3409,3412,3415,3421,3425,3428,3431,3434,3437,3444,3446,3450,3455,3461,3466,3473,3479,3484,3487,3493,3497,3505,3509,3512,3515,3520,3523,3530,3534,3537,3541,3545,3548,3551,3556,3562,3566,3576,3582,3586,3592,3596,3602,3605,3617,3621,3625,3633,3637,3645,3648,3652,3655,3663,3668,3671,3674,3678,3681,3690,3695,3704,3709,3716,3723,3731,3737,3745,3748,3751,3758,3761,3768,3776,3782,3793,3796,3800,3806,3815,3820,3824,3830,3836,3838,3842,3851,3861,3871,3877,3882,3886,3889,3892,3895,3898,3904,3910,3913,3916,3919,3922,3925,3927,3933,3939,3942,3945,3948,3951,3954,3958,3964,3968,3976,3980,3983,3985,3998,4001,4008,4018,4021,4026,4028,4032,4040,4046,4055,4068,4072,4078,4082,4092,4096,4100,4104,4106,4114,4126,4132,4134,4140,4142,4144,4150,4158,4166,4170,4174,4183,4188,4208,4213,4219,4226,4231,4240,4243,4247,4251,4255,4258,4261,4264,4268,4272,4275,4278,4281,4288,4292,4307,4311,4323,4331,4341,4345,4348,4354,4357,4360,4369,4378,4388,4392,4402,4412,4420,4423,4432,4435,4439,4444,4448,4457,4460,4491,4494,4497,4553,4558,4586,4600,4607,4611,4617,4625,4627,4638,4648,4655,4661,4669,4674,4682,4690,4698,4706,4712,4717,4722,4727,4733,4735,4746,4751,4758,4760,4774,4780,4785,4790,4796,4803,4811,4819,4824,4830,4833,4841,4848,4857,4860,4877,4885,4893,4897,4904,4910,4918,4927,4933,4940,4945,4948,4950,4956,4958,4962,4964,4971,4976,4983,4991,4997,5003,5008,5011,5013,5019,5021,5025,5027,5034,5036,5041,5051,5056,5065,5070,5073,5075,5081,5083,5086,5094,5103,5105,5112,5115,5127,5133,5142,5151,5156,5165,5178,5181,5193,5200,5205,5215,5243,5247,5252,5259,5262,5268,5278,5288,5298,5304,5313,5319,5326,5328,5338,5342,5346,5356,5361,5433,5451,5459,5471,5478,5480,5490,5493,5501,5508,5512,5519,5524,5527,5530,5539,5543,5547,5570,5577,5581,5588,5595,5598,5614,5617,5627,5631,5637,5640,5645,5649,5656,5659,5665,5697,5700,5712,5715,5725,5733,5737,5744,5747,5756,5762,5768,5778,5780,5786,5789,5792,5804,5807,5813,5816,5824,5832,5838,5842,5856,5868,5875,5878,5885,5892,5897,5910,5921,5927,5932,5945,5947,5952,5956,5959,5961,5968,5975,5978,5981,5987,5991,5997,6003,6016,6021,6029,6032,6037,6042,6050,6053,6061,6065,6072,6078,6081,6085,6098,6104,6116,6119,6128,6133,6139,6148,6153,6160,6168,6178,6186,6188,6191,6195,6197,6212,6217,6223,6226,6229,6235,6244,6252,6262,6266,6271,6291,6298,6300,6307,6309,6313,6318,6329,6334,6340,6343,6347,6352,6355,6359,6363,6365,6370,6375,6388,6391,6395,6398,6401,6406,6411,6417,6420,6425,6428,6433,6436,6440,6445,6450,6455,6460,6463,6468,6473,6478,6484,6489,6494,6499,6503,6506,6511,6515,6519,6527,6534,6538,6543,6548,6552,6554,6557,6573,6582,6590,6598,6607,6617,6625,6633,6641,6649,6661,6668,6678,6683,6686,6691,6694,6698,6713,6721,6728,6733,6738,6772,6776,6784,6788,6797,6805,6810,6818,6823,6828,6830,6839,6844,6852,6857,6865,6873,6876,6886,6904,6907,6910,6914,6927,6935,6939,6944,6949,6955,6960,6964,6969,6974,6979,6989,6992,6996,7e3,7007,7011,7040,7048,7051,7054,7057,7060,7071,7085,7094,7121,7132,7139,7143,7150,7158,7163,7171,7183,7196,7202,7208,7224,7230,7239,7241,7263,7275,7292,7313,7315,7334,7343,7352,7363],Qi.vocabulary=new Ra(Qi.literalNames,Qi.symbolicNames,[]),Qi.decisionsToDFA=Qi._ATN.decisionToState.map(((t,e)=>new ni(t,e))),Qi),vC=class extends ga{constructor(t,e){super(t,e)}EOF(){return this.getToken(FC.EOF,0)}statements(){return this.getRuleContext(0,BC)}get ruleIndex(){return FC.RULE_root}accept(t){return t.visitRoot?t.visitRoot(this):t.visitChildren(this)}},BC=class t extends ga{constructor(t,e){super(t,e)}statement(){return this.getRuleContext(0,yC)}SEMI(){return this.getToken(FC.SEMI,0)}statements(){return this.getRuleContext(0,t)}get ruleIndex(){return FC.RULE_statements}accept(t){return t.visitStatements?t.visitStatements(this):t.visitChildren(this)}},yC=class extends ga{constructor(t,e){super(t,e)}ddlStatement(){return this.getRuleContext(0,fC)}dmlStatement(){return this.getRuleContext(0,YC)}transactionStatement(){return this.getRuleContext(0,wC)}replicationStatement(){return this.getRuleContext(0,bC)}preparedStatement(){return this.getRuleContext(0,WC)}administrationStatement(){return this.getRuleContext(0,XC)}utilityStatement(){return this.getRuleContext(0,KC)}get ruleIndex(){return FC.RULE_statement}accept(t){return t.visitStatement?t.visitStatement(this):t.visitChildren(this)}},fC=class extends ga{constructor(t,e){super(t,e)}createDatabase(){return this.getRuleContext(0,QC)}createEvent(){return this.getRuleContext(0,JC)}createIndex(){return this.getRuleContext(0,ZC)}createLogfileGroup(){return this.getRuleContext(0,qC)}createProcedure(){return this.getRuleContext(0,jC)}createFunction(){return this.getRuleContext(0,zC)}createServer(){return this.getRuleContext(0,t_)}createTable(){return this.getRuleContext(0,e_)}createTablespaceInnodb(){return this.getRuleContext(0,i_)}createTablespaceNdb(){return this.getRuleContext(0,c_)}createTrigger(){return this.getRuleContext(0,n_)}createView(){return this.getRuleContext(0,R_)}createRole(){return this.getRuleContext(0,$C)}alterDatabase(){return this.getRuleContext(0,PM)}alterEvent(){return this.getRuleContext(0,UM)}alterFunction(){return this.getRuleContext(0,mM)}alterInstance(){return this.getRuleContext(0,DM)}alterLogfileGroup(){return this.getRuleContext(0,pM)}alterProcedure(){return this.getRuleContext(0,gM)}alterServer(){return this.getRuleContext(0,xM)}alterTable(){return this.getRuleContext(0,kM)}alterTablespace(){return this.getRuleContext(0,HM)}alterView(){return this.getRuleContext(0,GM)}dropDatabase(){return this.getRuleContext(0,Gd)}dropEvent(){return this.getRuleContext(0,Fd)}dropIndex(){return this.getRuleContext(0,vd)}dropLogfileGroup(){return this.getRuleContext(0,Bd)}dropProcedure(){return this.getRuleContext(0,yd)}dropFunction(){return this.getRuleContext(0,fd)}dropServer(){return this.getRuleContext(0,Yd)}dropTable(){return this.getRuleContext(0,wd)}dropTablespace(){return this.getRuleContext(0,bd)}dropTrigger(){return this.getRuleContext(0,Wd)}dropView(){return this.getRuleContext(0,Vd)}dropRole(){return this.getRuleContext(0,Xd)}setRole(){return this.getRuleContext(0,Kd)}renameTable(){return this.getRuleContext(0,Qd)}truncateTable(){return this.getRuleContext(0,Zd)}get ruleIndex(){return FC.RULE_ddlStatement}accept(t){return t.visitDdlStatement?t.visitDdlStatement(this):t.visitChildren(this)}},YC=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,rU)}insertStatement(){return this.getRuleContext(0,tU)}updateStatement(){return this.getRuleContext(0,TU)}deleteStatement(){return this.getRuleContext(0,jd)}replaceStatement(){return this.getRuleContext(0,aU)}callStatement(){return this.getRuleContext(0,qd)}loadDataStatement(){return this.getRuleContext(0,eU)}loadXmlStatement(){return this.getRuleContext(0,sU)}doStatement(){return this.getRuleContext(0,zd)}handlerStatement(){return this.getRuleContext(0,$d)}valuesStatement(){return this.getRuleContext(0,oU)}withStatement(){return this.getRuleContext(0,nx)}tableStatement(){return this.getRuleContext(0,hx)}get ruleIndex(){return FC.RULE_dmlStatement}accept(t){return t.visitDmlStatement?t.visitDmlStatement(this):t.visitChildren(this)}},wC=class extends ga{constructor(t,e){super(t,e)}startTransaction(){return this.getRuleContext(0,_m)}beginWork(){return this.getRuleContext(0,Pm)}commitWork(){return this.getRuleContext(0,Mm)}rollbackWork(){return this.getRuleContext(0,dm)}savepointStatement(){return this.getRuleContext(0,Um)}rollbackStatement(){return this.getRuleContext(0,mm)}releaseStatement(){return this.getRuleContext(0,Dm)}lockTables(){return this.getRuleContext(0,pm)}unlockTables(){return this.getRuleContext(0,gm)}get ruleIndex(){return FC.RULE_transactionStatement}accept(t){return t.visitTransactionStatement?t.visitTransactionStatement(this):t.visitChildren(this)}},bC=class extends ga{constructor(t,e){super(t,e)}changeMaster(){return this.getRuleContext(0,ym)}changeReplicationFilter(){return this.getRuleContext(0,fm)}purgeBinaryLogs(){return this.getRuleContext(0,Ym)}resetMaster(){return this.getRuleContext(0,wm)}resetSlave(){return this.getRuleContext(0,bm)}startSlave(){return this.getRuleContext(0,Wm)}stopSlave(){return this.getRuleContext(0,Vm)}startGroupReplication(){return this.getRuleContext(0,Xm)}stopGroupReplication(){return this.getRuleContext(0,Km)}xaStartTransaction(){return this.getRuleContext(0,MD)}xaEndTransaction(){return this.getRuleContext(0,dD)}xaPrepareStatement(){return this.getRuleContext(0,UD)}xaCommitWork(){return this.getRuleContext(0,mD)}xaRollbackWork(){return this.getRuleContext(0,DD)}xaRecoverWork(){return this.getRuleContext(0,pD)}get ruleIndex(){return FC.RULE_replicationStatement}accept(t){return t.visitReplicationStatement?t.visitReplicationStatement(this):t.visitChildren(this)}},WC=class extends ga{constructor(t,e){super(t,e)}prepareStatement(){return this.getRuleContext(0,gD)}executeStatement(){return this.getRuleContext(0,xD)}deallocatePrepare(){return this.getRuleContext(0,kD)}get ruleIndex(){return FC.RULE_preparedStatement}accept(t){return t.visitPreparedStatement?t.visitPreparedStatement(this):t.visitChildren(this)}},VC=class extends ga{constructor(t,e){super(t,e)}blockStatement(){return this.getRuleContext(0,GD)}caseStatement(){return this.getRuleContext(0,FD)}ifStatement(){return this.getRuleContext(0,vD)}leaveStatement(){return this.getRuleContext(0,yD)}loopStatement(){return this.getRuleContext(0,fD)}repeatStatement(){return this.getRuleContext(0,YD)}whileStatement(){return this.getRuleContext(0,bD)}iterateStatement(){return this.getRuleContext(0,BD)}returnStatement(){return this.getRuleContext(0,wD)}cursorStatement(){return this.getRuleContext(0,WD)}get ruleIndex(){return FC.RULE_compoundStatement}accept(t){return t.visitCompoundStatement?t.visitCompoundStatement(this):t.visitChildren(this)}},XC=class extends ga{constructor(t,e){super(t,e)}alterUser(){return this.getRuleContext(0,np)}createUser(){return this.getRuleContext(0,Tp)}dropUser(){return this.getRuleContext(0,Ap)}grantStatement(){return this.getRuleContext(0,Sp)}grantProxy(){return this.getRuleContext(0,Op)}renameUser(){return this.getRuleContext(0,Ip)}revokeStatement(){return this.getRuleContext(0,up)}revokeProxy(){return this.getRuleContext(0,_p)}analyzeTable(){return this.getRuleContext(0,qp)}checkTable(){return this.getRuleContext(0,jp)}checksumTable(){return this.getRuleContext(0,zp)}optimizeTable(){return this.getRuleContext(0,$p)}repairTable(){return this.getRuleContext(0,tg)}createUdfunction(){return this.getRuleContext(0,sg)}installPlugin(){return this.getRuleContext(0,ag)}uninstallPlugin(){return this.getRuleContext(0,rg)}setStatement(){return this.getRuleContext(0,ig)}showStatement(){return this.getRuleContext(0,Ag)}binlogStatement(){return this.getRuleContext(0,Yg)}cacheIndexStatement(){return this.getRuleContext(0,wg)}flushStatement(){return this.getRuleContext(0,bg)}killStatement(){return this.getRuleContext(0,Wg)}loadIndexIntoCache(){return this.getRuleContext(0,Vg)}resetStatement(){return this.getRuleContext(0,Xg)}shutdownStatement(){return this.getRuleContext(0,Kg)}get ruleIndex(){return FC.RULE_administrationStatement}accept(t){return t.visitAdministrationStatement?t.visitAdministrationStatement(this):t.visitChildren(this)}},KC=class extends ga{constructor(t,e){super(t,e)}simpleDescribeStatement(){return this.getRuleContext(0,tx)}fullDescribeStatement(){return this.getRuleContext(0,ex)}helpStatement(){return this.getRuleContext(0,sx)}useStatement(){return this.getRuleContext(0,ax)}signalStatement(){return this.getRuleContext(0,rx)}resignalStatement(){return this.getRuleContext(0,ix)}diagnosticsStatement(){return this.getRuleContext(0,Ex)}get ruleIndex(){return FC.RULE_utilityStatement}accept(t){return t.visitUtilityStatement?t.visitUtilityStatement(this):t.visitChildren(this)}},QC=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}uid(){return this.getRuleContext(0,Vx)}DATABASE(){return this.getToken(FC.DATABASE,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}ifNotExists(){return this.getRuleContext(0,Dk)}createDatabaseOption(t){return void 0===t?this.getRuleContexts(A_):this.getRuleContext(t,A_)}get ruleIndex(){return FC.RULE_createDatabase}accept(t){return t.visitCreateDatabase?t.visitCreateDatabase(this):t.visitChildren(this)}},JC=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}EVENT(){return this.getToken(FC.EVENT,0)}fullId(){return this.getRuleContext(0,Sx)}ON(t){return void 0===t?this.getTokens(FC.ON):this.getToken(FC.ON,t)}SCHEDULE(){return this.getToken(FC.SCHEDULE,0)}scheduleExpression(){return this.getRuleContext(0,I_)}DO(){return this.getToken(FC.DO,0)}routineBody(){return this.getRuleContext(0,HD)}ownerStatement(){return this.getRuleContext(0,O_)}ifNotExists(){return this.getRuleContext(0,Dk)}COMPLETION(){return this.getToken(FC.COMPLETION,0)}PRESERVE(){return this.getToken(FC.PRESERVE,0)}enableType(){return this.getRuleContext(0,P_)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}NOT(){return this.getToken(FC.NOT,0)}get ruleIndex(){return FC.RULE_createEvent}accept(t){return t.visitCreateEvent?t.visitCreateEvent(this):t.visitChildren(this)}},ZC=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}INDEX(){return this.getToken(FC.INDEX,0)}uid(){return this.getRuleContext(0,Vx)}ON(){return this.getToken(FC.ON,0)}tableName(){return this.getRuleContext(0,lx)}indexColumnNames(){return this.getRuleContext(0,uk)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}ALGORITHM(t){return void 0===t?this.getTokens(FC.ALGORITHM):this.getToken(FC.ALGORITHM,t)}LOCK(t){return void 0===t?this.getTokens(FC.LOCK):this.getToken(FC.LOCK,t)}ONLINE(){return this.getToken(FC.ONLINE,0)}OFFLINE(){return this.getToken(FC.OFFLINE,0)}UNIQUE(){return this.getToken(FC.UNIQUE,0)}FULLTEXT(){return this.getToken(FC.FULLTEXT,0)}SPATIAL(){return this.getToken(FC.SPATIAL,0)}DEFAULT(t){return void 0===t?this.getTokens(FC.DEFAULT):this.getToken(FC.DEFAULT,t)}INPLACE(t){return void 0===t?this.getTokens(FC.INPLACE):this.getToken(FC.INPLACE,t)}COPY(t){return void 0===t?this.getTokens(FC.COPY):this.getToken(FC.COPY,t)}NONE(t){return void 0===t?this.getTokens(FC.NONE):this.getToken(FC.NONE,t)}SHARED(t){return void 0===t?this.getTokens(FC.SHARED):this.getToken(FC.SHARED,t)}EXCLUSIVE(t){return void 0===t?this.getTokens(FC.EXCLUSIVE):this.getToken(FC.EXCLUSIVE,t)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}get ruleIndex(){return FC.RULE_createIndex}accept(t){return t.visitCreateIndex?t.visitCreateIndex(this):t.visitChildren(this)}},qC=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}LOGFILE(){return this.getToken(FC.LOGFILE,0)}GROUP(){return this.getToken(FC.GROUP,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}ADD(){return this.getToken(FC.ADD,0)}UNDOFILE(){return this.getToken(FC.UNDOFILE,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}INITIAL_SIZE(){return this.getToken(FC.INITIAL_SIZE,0)}UNDO_BUFFER_SIZE(){return this.getToken(FC.UNDO_BUFFER_SIZE,0)}REDO_BUFFER_SIZE(){return this.getToken(FC.REDO_BUFFER_SIZE,0)}NODEGROUP(){return this.getToken(FC.NODEGROUP,0)}WAIT(){return this.getToken(FC.WAIT,0)}COMMENT(){return this.getToken(FC.COMMENT,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}fileSizeLiteral(t){return void 0===t?this.getRuleContexts(Jx):this.getRuleContext(t,Jx)}get ruleIndex(){return FC.RULE_createLogfileGroup}accept(t){return t.visitCreateLogfileGroup?t.visitCreateLogfileGroup(this):t.visitChildren(this)}},jC=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}fullId(){return this.getRuleContext(0,Sx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}routineBody(){return this.getRuleContext(0,HD)}ownerStatement(){return this.getRuleContext(0,O_)}procedureParameter(t){return void 0===t?this.getRuleContexts(U_):this.getRuleContext(t,U_)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}routineOption(t){return void 0===t?this.getRuleContexts(D_):this.getRuleContext(t,D_)}get ruleIndex(){return FC.RULE_createProcedure}accept(t){return t.visitCreateProcedure?t.visitCreateProcedure(this):t.visitChildren(this)}},zC=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}fullId(){return this.getRuleContext(0,Sx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}RETURNS(){return this.getToken(FC.RETURNS,0)}dataType(){return this.getRuleContext(0,tk)}routineBody(){return this.getRuleContext(0,HD)}returnStatement(){return this.getRuleContext(0,wD)}ownerStatement(){return this.getRuleContext(0,O_)}AGGREGATE(){return this.getToken(FC.AGGREGATE,0)}ifNotExists(){return this.getRuleContext(0,Dk)}functionParameter(t){return void 0===t?this.getRuleContexts(m_):this.getRuleContext(t,m_)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}routineOption(t){return void 0===t?this.getRuleContexts(D_):this.getRuleContext(t,D_)}get ruleIndex(){return FC.RULE_createFunction}accept(t){return t.visitCreateFunction?t.visitCreateFunction(this):t.visitChildren(this)}},$C=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}ROLE(){return this.getToken(FC.ROLE,0)}newRoleNameList(){return this.getRuleContext(0,Nx)}ifNotExists(){return this.getRuleContext(0,Dk)}get ruleIndex(){return FC.RULE_createRole}accept(t){return t.visitCreateRole?t.visitCreateRole(this):t.visitChildren(this)}},t_=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}SERVER(){return this.getToken(FC.SERVER,0)}uid(){return this.getRuleContext(0,Vx)}FOREIGN(){return this.getToken(FC.FOREIGN,0)}DATA(){return this.getToken(FC.DATA,0)}WRAPPER(){return this.getToken(FC.WRAPPER,0)}OPTIONS(){return this.getToken(FC.OPTIONS,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}serverOption(t){return void 0===t?this.getRuleContexts(G_):this.getRuleContext(t,G_)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}MYSQL(){return this.getToken(FC.MYSQL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_createServer}accept(t){return t.visitCreateServer?t.visitCreateServer(this):t.visitChildren(this)}},e_=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_createTable}copyFrom(t){super.copyFrom(t)}},s_=class extends e_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CREATE(){return this.getToken(FC.CREATE,0)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(t){return void 0===t?this.getRuleContexts(lx):this.getRuleContext(t,lx)}LIKE(){return this.getToken(FC.LIKE,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}TEMPORARY(){return this.getToken(FC.TEMPORARY,0)}ifNotExists(){return this.getRuleContext(0,Dk)}accept(t){return t.visitCopyCreateTable?t.visitCopyCreateTable(this):t.visitChildren(this)}},a_=class extends e_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CREATE(){return this.getToken(FC.CREATE,0)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}createDefinitions(){return this.getRuleContext(0,F_)}TEMPORARY(){return this.getToken(FC.TEMPORARY,0)}ifNotExists(){return this.getRuleContext(0,Dk)}tableOption(t){return void 0===t?this.getRuleContexts(SP):this.getRuleContext(t,SP)}partitionDefinitions(){return this.getRuleContext(0,jP)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitColumnCreateTable?t.visitColumnCreateTable(this):t.visitChildren(this)}},r_=class extends e_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CREATE(){return this.getToken(FC.CREATE,0)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}selectStatement(){return this.getRuleContext(0,rU)}TEMPORARY(){return this.getToken(FC.TEMPORARY,0)}ifNotExists(){return this.getRuleContext(0,Dk)}createDefinitions(){return this.getRuleContext(0,F_)}tableOption(t){return void 0===t?this.getRuleContexts(SP):this.getRuleContext(t,SP)}partitionDefinitions(){return this.getRuleContext(0,jP)}AS(){return this.getToken(FC.AS,0)}IGNORE(){return this.getToken(FC.IGNORE,0)}REPLACE(){return this.getToken(FC.REPLACE,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitQueryCreateTable?t.visitQueryCreateTable(this):t.visitChildren(this)}},i_=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uid(){return this.getRuleContext(0,Vx)}ADD(){return this.getToken(FC.ADD,0)}DATAFILE(){return this.getToken(FC.DATAFILE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}FILE_BLOCK_SIZE(){return this.getToken(FC.FILE_BLOCK_SIZE,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}fileSizeLiteral(){return this.getRuleContext(0,Jx)}get ruleIndex(){return FC.RULE_createTablespaceInnodb}accept(t){return t.visitCreateTablespaceInnodb?t.visitCreateTablespaceInnodb(this):t.visitChildren(this)}},c_=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}ADD(){return this.getToken(FC.ADD,0)}DATAFILE(){return this.getToken(FC.DATAFILE,0)}USE(){return this.getToken(FC.USE,0)}LOGFILE(){return this.getToken(FC.LOGFILE,0)}GROUP(){return this.getToken(FC.GROUP,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}EXTENT_SIZE(){return this.getToken(FC.EXTENT_SIZE,0)}INITIAL_SIZE(){return this.getToken(FC.INITIAL_SIZE,0)}AUTOEXTEND_SIZE(){return this.getToken(FC.AUTOEXTEND_SIZE,0)}MAX_SIZE(){return this.getToken(FC.MAX_SIZE,0)}NODEGROUP(){return this.getToken(FC.NODEGROUP,0)}WAIT(){return this.getToken(FC.WAIT,0)}COMMENT(){return this.getToken(FC.COMMENT,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}fileSizeLiteral(t){return void 0===t?this.getRuleContexts(Jx):this.getRuleContext(t,Jx)}get ruleIndex(){return FC.RULE_createTablespaceNdb}accept(t){return t.visitCreateTablespaceNdb?t.visitCreateTablespaceNdb(this):t.visitChildren(this)}},n_=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}TRIGGER(){return this.getToken(FC.TRIGGER,0)}ON(){return this.getToken(FC.ON,0)}tableName(){return this.getRuleContext(0,lx)}FOR(){return this.getToken(FC.FOR,0)}EACH(){return this.getToken(FC.EACH,0)}ROW(){return this.getToken(FC.ROW,0)}routineBody(){return this.getRuleContext(0,HD)}fullId(t){return void 0===t?this.getRuleContexts(Sx):this.getRuleContext(t,Sx)}BEFORE(){return this.getToken(FC.BEFORE,0)}AFTER(){return this.getToken(FC.AFTER,0)}INSERT(){return this.getToken(FC.INSERT,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}DELETE(){return this.getToken(FC.DELETE,0)}ownerStatement(){return this.getRuleContext(0,O_)}ifNotExists(){return this.getRuleContext(0,Dk)}FOLLOWS(){return this.getToken(FC.FOLLOWS,0)}PRECEDES(){return this.getToken(FC.PRECEDES,0)}get ruleIndex(){return FC.RULE_createTrigger}accept(t){return t.visitCreateTrigger?t.visitCreateTrigger(this):t.visitChildren(this)}},h_=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(FC.WITH,0)}commonTableExpressions(){return this.getRuleContext(0,E_)}RECURSIVE(){return this.getToken(FC.RECURSIVE,0)}get ruleIndex(){return FC.RULE_withClause}accept(t){return t.visitWithClause?t.visitWithClause(this):t.visitChildren(this)}},E_=class t extends ga{constructor(t,e){super(t,e)}cteName(){return this.getRuleContext(0,T_)}AS(){return this.getToken(FC.AS,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}dmlStatement(){return this.getRuleContext(0,YC)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}cteColumnName(t){return void 0===t?this.getRuleContexts(o_):this.getRuleContext(t,o_)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}commonTableExpressions(){return this.getRuleContext(0,t)}get ruleIndex(){return FC.RULE_commonTableExpressions}accept(t){return t.visitCommonTableExpressions?t.visitCommonTableExpressions(this):t.visitChildren(this)}},T_=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_cteName}accept(t){return t.visitCteName?t.visitCteName(this):t.visitChildren(this)}},o_=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_cteColumnName}accept(t){return t.visitCteColumnName?t.visitCteColumnName(this):t.visitChildren(this)}},R_=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}VIEW(){return this.getToken(FC.VIEW,0)}fullId(){return this.getRuleContext(0,Sx)}AS(){return this.getToken(FC.AS,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}selectStatement(){return this.getRuleContext(0,rU)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}orReplace(){return this.getRuleContext(0,pk)}ALGORITHM(){return this.getToken(FC.ALGORITHM,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}ownerStatement(){return this.getRuleContext(0,O_)}SQL(){return this.getToken(FC.SQL,0)}SECURITY(){return this.getToken(FC.SECURITY,0)}uidList(){return this.getRuleContext(0,lk)}UNDEFINED(){return this.getToken(FC.UNDEFINED,0)}MERGE(){return this.getToken(FC.MERGE,0)}TEMPTABLE(){return this.getToken(FC.TEMPTABLE,0)}DEFINER(){return this.getToken(FC.DEFINER,0)}INVOKER(){return this.getToken(FC.INVOKER,0)}withClause(){return this.getRuleContext(0,h_)}WITH(){return this.getToken(FC.WITH,0)}CHECK(){return this.getToken(FC.CHECK,0)}OPTION(){return this.getToken(FC.OPTION,0)}CASCADED(){return this.getToken(FC.CASCADED,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}get ruleIndex(){return FC.RULE_createView}accept(t){return t.visitCreateView?t.visitCreateView(this):t.visitChildren(this)}},A_=class extends ga{constructor(t,e){super(t,e)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}DEFAULT(t){return void 0===t?this.getTokens(FC.DEFAULT):this.getToken(FC.DEFAULT,t)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}ENCRYPTION(){return this.getToken(FC.ENCRYPTION,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}READ(){return this.getToken(FC.READ,0)}ONLY(){return this.getToken(FC.ONLY,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}get ruleIndex(){return FC.RULE_createDatabaseOption}accept(t){return t.visitCreateDatabaseOption?t.visitCreateDatabaseOption(this):t.visitChildren(this)}},S_=class extends ga{constructor(t,e){super(t,e)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(){return this.getToken(FC.SET,0)}CHARSET(){return this.getToken(FC.CHARSET,0)}CHAR(){return this.getToken(FC.CHAR,0)}get ruleIndex(){return FC.RULE_charSet}accept(t){return t.visitCharSet?t.visitCharSet(this):t.visitChildren(this)}},l_=class extends ga{constructor(t,e){super(t,e)}CURRENT_USER(){return this.getToken(FC.CURRENT_USER,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}get ruleIndex(){return FC.RULE_currentUserExpression}accept(t){return t.visitCurrentUserExpression?t.visitCurrentUserExpression(this):t.visitChildren(this)}},O_=class extends ga{constructor(t,e){super(t,e)}DEFINER(){return this.getToken(FC.DEFINER,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}userName(){return this.getRuleContext(0,Gx)}currentUserExpression(){return this.getRuleContext(0,l_)}get ruleIndex(){return FC.RULE_ownerStatement}accept(t){return t.visitOwnerStatement?t.visitOwnerStatement(this):t.visitChildren(this)}},I_=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_scheduleExpression}copyFrom(t){super.copyFrom(t)}},u_=class extends I_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AT(){return this.getToken(FC.AT,0)}timestampValue(){return this.getRuleContext(0,L_)}intervalExpr(t){return void 0===t?this.getRuleContexts(C_):this.getRuleContext(t,C_)}accept(t){return t.visitPreciseSchedule?t.visitPreciseSchedule(this):t.visitChildren(this)}},N_=class extends I_{constructor(t){super(t.parent,t.invokingState),this._startIntervals=[],this._endIntervals=[],super.copyFrom(t)}EVERY(){return this.getToken(FC.EVERY,0)}intervalType(){return this.getRuleContext(0,__)}decimalLiteral(){return this.getRuleContext(0,Qx)}expression(){return this.getRuleContext(0,NH)}STARTS(){return this.getToken(FC.STARTS,0)}ENDS(){return this.getToken(FC.ENDS,0)}timestampValue(t){return void 0===t?this.getRuleContexts(L_):this.getRuleContext(t,L_)}intervalExpr(t){return void 0===t?this.getRuleContexts(C_):this.getRuleContext(t,C_)}accept(t){return t.visitIntervalSchedule?t.visitIntervalSchedule(this):t.visitChildren(this)}},L_=class extends ga{constructor(t,e){super(t,e)}CURRENT_TIMESTAMP(){return this.getToken(FC.CURRENT_TIMESTAMP,0)}stringLiteral(){return this.getRuleContext(0,Zx)}decimalLiteral(){return this.getRuleContext(0,Qx)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_timestampValue}accept(t){return t.visitTimestampValue?t.visitTimestampValue(this):t.visitChildren(this)}},C_=class extends ga{constructor(t,e){super(t,e)}PLUS(){return this.getToken(FC.PLUS,0)}INTERVAL(){return this.getToken(FC.INTERVAL,0)}intervalType(){return this.getRuleContext(0,__)}decimalLiteral(){return this.getRuleContext(0,Qx)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_intervalExpr}accept(t){return t.visitIntervalExpr?t.visitIntervalExpr(this):t.visitChildren(this)}},__=class extends ga{constructor(t,e){super(t,e)}intervalTypeBase(){return this.getRuleContext(0,hG)}YEAR(){return this.getToken(FC.YEAR,0)}YEAR_MONTH(){return this.getToken(FC.YEAR_MONTH,0)}DAY_HOUR(){return this.getToken(FC.DAY_HOUR,0)}DAY_MINUTE(){return this.getToken(FC.DAY_MINUTE,0)}DAY_SECOND(){return this.getToken(FC.DAY_SECOND,0)}HOUR_MINUTE(){return this.getToken(FC.HOUR_MINUTE,0)}HOUR_SECOND(){return this.getToken(FC.HOUR_SECOND,0)}MINUTE_SECOND(){return this.getToken(FC.MINUTE_SECOND,0)}SECOND_MICROSECOND(){return this.getToken(FC.SECOND_MICROSECOND,0)}MINUTE_MICROSECOND(){return this.getToken(FC.MINUTE_MICROSECOND,0)}HOUR_MICROSECOND(){return this.getToken(FC.HOUR_MICROSECOND,0)}DAY_MICROSECOND(){return this.getToken(FC.DAY_MICROSECOND,0)}get ruleIndex(){return FC.RULE_intervalType}accept(t){return t.visitIntervalType?t.visitIntervalType(this):t.visitChildren(this)}},P_=class extends ga{constructor(t,e){super(t,e)}ENABLE(){return this.getToken(FC.ENABLE,0)}DISABLE(){return this.getToken(FC.DISABLE,0)}ON(){return this.getToken(FC.ON,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}get ruleIndex(){return FC.RULE_enableType}accept(t){return t.visitEnableType?t.visitEnableType(this):t.visitChildren(this)}},M_=class extends ga{constructor(t,e){super(t,e)}USING(){return this.getToken(FC.USING,0)}BTREE(){return this.getToken(FC.BTREE,0)}HASH(){return this.getToken(FC.HASH,0)}get ruleIndex(){return FC.RULE_indexType}accept(t){return t.visitIndexType?t.visitIndexType(this):t.visitChildren(this)}},d_=class extends ga{constructor(t,e){super(t,e)}KEY_BLOCK_SIZE(){return this.getToken(FC.KEY_BLOCK_SIZE,0)}fileSizeLiteral(){return this.getRuleContext(0,Jx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}indexType(){return this.getRuleContext(0,M_)}WITH(){return this.getToken(FC.WITH,0)}PARSER(){return this.getToken(FC.PARSER,0)}uid(){return this.getRuleContext(0,Vx)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}VISIBLE(){return this.getToken(FC.VISIBLE,0)}INVISIBLE(){return this.getToken(FC.INVISIBLE,0)}ENGINE_ATTRIBUTE(){return this.getToken(FC.ENGINE_ATTRIBUTE,0)}SECONDARY_ENGINE_ATTRIBUTE(){return this.getToken(FC.SECONDARY_ENGINE_ATTRIBUTE,0)}get ruleIndex(){return FC.RULE_indexOption}accept(t){return t.visitIndexOption?t.visitIndexOption(this):t.visitChildren(this)}},U_=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}dataType(){return this.getRuleContext(0,tk)}IN(){return this.getToken(FC.IN,0)}OUT(){return this.getToken(FC.OUT,0)}INOUT(){return this.getToken(FC.INOUT,0)}get ruleIndex(){return FC.RULE_procedureParameter}accept(t){return t.visitProcedureParameter?t.visitProcedureParameter(this):t.visitChildren(this)}},m_=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}dataType(){return this.getRuleContext(0,tk)}get ruleIndex(){return FC.RULE_functionParameter}accept(t){return t.visitFunctionParameter?t.visitFunctionParameter(this):t.visitChildren(this)}},D_=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_routineOption}copyFrom(t){super.copyFrom(t)}},p_=class extends D_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DETERMINISTIC(){return this.getToken(FC.DETERMINISTIC,0)}NOT(){return this.getToken(FC.NOT,0)}accept(t){return t.visitRoutineBehavior?t.visitRoutineBehavior(this):t.visitChildren(this)}},g_=class extends D_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LANGUAGE(){return this.getToken(FC.LANGUAGE,0)}SQL(){return this.getToken(FC.SQL,0)}accept(t){return t.visitRoutineLanguage?t.visitRoutineLanguage(this):t.visitChildren(this)}},x_=class extends D_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitRoutineComment?t.visitRoutineComment(this):t.visitChildren(this)}},k_=class extends D_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SQL(){return this.getToken(FC.SQL,0)}SECURITY(){return this.getToken(FC.SECURITY,0)}DEFINER(){return this.getToken(FC.DEFINER,0)}INVOKER(){return this.getToken(FC.INVOKER,0)}accept(t){return t.visitRoutineSecurity?t.visitRoutineSecurity(this):t.visitChildren(this)}},H_=class extends D_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CONTAINS(){return this.getToken(FC.CONTAINS,0)}SQL(){return this.getToken(FC.SQL,0)}NO(){return this.getToken(FC.NO,0)}READS(){return this.getToken(FC.READS,0)}DATA(){return this.getToken(FC.DATA,0)}MODIFIES(){return this.getToken(FC.MODIFIES,0)}accept(t){return t.visitRoutineData?t.visitRoutineData(this):t.visitChildren(this)}},G_=class extends ga{constructor(t,e){super(t,e)}HOST(){return this.getToken(FC.HOST,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}DATABASE(){return this.getToken(FC.DATABASE,0)}USER(){return this.getToken(FC.USER,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}SOCKET(){return this.getToken(FC.SOCKET,0)}OWNER(){return this.getToken(FC.OWNER,0)}PORT(){return this.getToken(FC.PORT,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}get ruleIndex(){return FC.RULE_serverOption}accept(t){return t.visitServerOption?t.visitServerOption(this):t.visitChildren(this)}},F_=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}createDefinition(t){return void 0===t?this.getRuleContexts(v_):this.getRuleContext(t,v_)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_createDefinitions}accept(t){return t.visitCreateDefinitions?t.visitCreateDefinitions(this):t.visitChildren(this)}},v_=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_createDefinition}copyFrom(t){super.copyFrom(t)}},B_=class extends v_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}fullColumnName(){return this.getRuleContext(0,Px)}columnDefinition(){return this.getRuleContext(0,Y_)}accept(t){return t.visitColumnDeclaration?t.visitColumnDeclaration(this):t.visitChildren(this)}},y_=class extends v_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableConstraint(){return this.getRuleContext(0,aP)}NOT(){return this.getToken(FC.NOT,0)}ENFORCED(){return this.getToken(FC.ENFORCED,0)}accept(t){return t.visitConstraintDeclaration?t.visitConstraintDeclaration(this):t.visitChildren(this)}},f_=class extends v_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}indexColumnDefinition(){return this.getRuleContext(0,oP)}accept(t){return t.visitIndexDeclaration?t.visitIndexDeclaration(this):t.visitChildren(this)}},Y_=class extends ga{constructor(t,e){super(t,e)}dataType(){return this.getRuleContext(0,tk)}columnConstraint(t){return void 0===t?this.getRuleContexts(w_):this.getRuleContext(t,w_)}NOT(){return this.getToken(FC.NOT,0)}ENFORCED(){return this.getToken(FC.ENFORCED,0)}get ruleIndex(){return FC.RULE_columnDefinition}accept(t){return t.visitColumnDefinition?t.visitColumnDefinition(this):t.visitChildren(this)}},w_=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_columnConstraint}copyFrom(t){super.copyFrom(t)}},b_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STORAGE(){return this.getToken(FC.STORAGE,0)}DISK(){return this.getToken(FC.DISK,0)}MEMORY(){return this.getToken(FC.MEMORY,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}accept(t){return t.visitStorageColumnConstraint?t.visitStorageColumnConstraint(this):t.visitChildren(this)}},W_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}VISIBLE(){return this.getToken(FC.VISIBLE,0)}accept(t){return t.visitVisibilityColumnConstraint?t.visitVisibilityColumnConstraint(this):t.visitChildren(this)}},V_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AUTO_INCREMENT(){return this.getToken(FC.AUTO_INCREMENT,0)}ON(){return this.getToken(FC.ON,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}currentTimestamp(){return this.getRuleContext(0,dk)}accept(t){return t.visitAutoIncrementColumnConstraint?t.visitAutoIncrementColumnConstraint(this):t.visitChildren(this)}},X_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitCommentColumnConstraint?t.visitCommentColumnConstraint(this):t.visitChildren(this)}},K_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}UNIQUE(){return this.getToken(FC.UNIQUE,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitUniqueKeyColumnConstraint?t.visitUniqueKeyColumnConstraint(this):t.visitChildren(this)}},Q_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SERIAL(){return this.getToken(FC.SERIAL,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}VALUE(){return this.getToken(FC.VALUE,0)}accept(t){return t.visitSerialDefaultColumnConstraint?t.visitSerialDefaultColumnConstraint(this):t.visitChildren(this)}},J_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AS(){return this.getToken(FC.AS,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}GENERATED(){return this.getToken(FC.GENERATED,0)}ALWAYS(){return this.getToken(FC.ALWAYS,0)}VIRTUAL(){return this.getToken(FC.VIRTUAL,0)}STORED(){return this.getToken(FC.STORED,0)}accept(t){return t.visitGeneratedColumnConstraint?t.visitGeneratedColumnConstraint(this):t.visitChildren(this)}},Z_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COLUMN_FORMAT(){return this.getToken(FC.COLUMN_FORMAT,0)}FIXED(){return this.getToken(FC.FIXED,0)}DYNAMIC(){return this.getToken(FC.DYNAMIC,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}accept(t){return t.visitFormatColumnConstraint?t.visitFormatColumnConstraint(this):t.visitChildren(this)}},q_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitCollateColumnConstraint?t.visitCollateColumnConstraint(this):t.visitChildren(this)}},j_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}KEY(){return this.getToken(FC.KEY,0)}PRIMARY(){return this.getToken(FC.PRIMARY,0)}accept(t){return t.visitPrimaryKeyColumnConstraint?t.visitPrimaryKeyColumnConstraint(this):t.visitChildren(this)}},z_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHECK(){return this.getToken(FC.CHECK,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitCheckColumnConstraint?t.visitCheckColumnConstraint(this):t.visitChildren(this)}},$_=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}nullNotnull(){return this.getRuleContext(0,zx)}accept(t){return t.visitNullColumnConstraint?t.visitNullColumnConstraint(this):t.visitChildren(this)}},tP=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}defaultValue(){return this.getRuleContext(0,Mk)}accept(t){return t.visitDefaultColumnConstraint?t.visitDefaultColumnConstraint(this):t.visitChildren(this)}},eP=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}referenceDefinition(){return this.getRuleContext(0,hP)}accept(t){return t.visitReferenceColumnConstraint?t.visitReferenceColumnConstraint(this):t.visitChildren(this)}},sP=class extends w_{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INVISIBLE(){return this.getToken(FC.INVISIBLE,0)}accept(t){return t.visitInvisibilityColumnConstraint?t.visitInvisibilityColumnConstraint(this):t.visitChildren(this)}},aP=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_tableConstraint}copyFrom(t){super.copyFrom(t)}},rP=class extends aP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}UNIQUE(){return this.getToken(FC.UNIQUE,0)}indexColumnNames(){return this.getRuleContext(0,uk)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitUniqueKeyTableConstraint?t.visitUniqueKeyTableConstraint(this):t.visitChildren(this)}},iP=class extends aP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHECK(){return this.getToken(FC.CHECK,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitCheckTableConstraint?t.visitCheckTableConstraint(this):t.visitChildren(this)}},cP=class extends aP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PRIMARY(){return this.getToken(FC.PRIMARY,0)}KEY(){return this.getToken(FC.KEY,0)}indexColumnNames(){return this.getRuleContext(0,uk)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}accept(t){return t.visitPrimaryKeyTableConstraint?t.visitPrimaryKeyTableConstraint(this):t.visitChildren(this)}},nP=class extends aP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FOREIGN(){return this.getToken(FC.FOREIGN,0)}KEY(){return this.getToken(FC.KEY,0)}indexColumnNames(){return this.getRuleContext(0,uk)}referenceDefinition(){return this.getRuleContext(0,hP)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}accept(t){return t.visitForeignKeyTableConstraint?t.visitForeignKeyTableConstraint(this):t.visitChildren(this)}},hP=class extends ga{constructor(t,e){super(t,e)}REFERENCES(){return this.getToken(FC.REFERENCES,0)}tableName(){return this.getRuleContext(0,lx)}indexColumnNames(){return this.getRuleContext(0,uk)}MATCH(){return this.getToken(FC.MATCH,0)}referenceAction(){return this.getRuleContext(0,EP)}FULL(){return this.getToken(FC.FULL,0)}PARTIAL(){return this.getToken(FC.PARTIAL,0)}SIMPLE(){return this.getToken(FC.SIMPLE,0)}get ruleIndex(){return FC.RULE_referenceDefinition}accept(t){return t.visitReferenceDefinition?t.visitReferenceDefinition(this):t.visitChildren(this)}},EP=class extends ga{constructor(t,e){super(t,e)}ON(t){return void 0===t?this.getTokens(FC.ON):this.getToken(FC.ON,t)}DELETE(){return this.getToken(FC.DELETE,0)}referenceControlType(t){return void 0===t?this.getRuleContexts(TP):this.getRuleContext(t,TP)}UPDATE(){return this.getToken(FC.UPDATE,0)}get ruleIndex(){return FC.RULE_referenceAction}accept(t){return t.visitReferenceAction?t.visitReferenceAction(this):t.visitChildren(this)}},TP=class extends ga{constructor(t,e){super(t,e)}RESTRICT(){return this.getToken(FC.RESTRICT,0)}CASCADE(){return this.getToken(FC.CASCADE,0)}SET(){return this.getToken(FC.SET,0)}NULL_LITERAL(){return this.getToken(FC.NULL_LITERAL,0)}NO(){return this.getToken(FC.NO,0)}ACTION(){return this.getToken(FC.ACTION,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}get ruleIndex(){return FC.RULE_referenceControlType}accept(t){return t.visitReferenceControlType?t.visitReferenceControlType(this):t.visitChildren(this)}},oP=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_indexColumnDefinition}copyFrom(t){super.copyFrom(t)}},RP=class extends oP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}indexColumnNames(){return this.getRuleContext(0,uk)}FULLTEXT(){return this.getToken(FC.FULLTEXT,0)}SPATIAL(){return this.getToken(FC.SPATIAL,0)}uid(){return this.getRuleContext(0,Vx)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitSpecialIndexDeclaration?t.visitSpecialIndexDeclaration(this):t.visitChildren(this)}},AP=class extends oP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}indexColumnNames(){return this.getRuleContext(0,uk)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}uid(){return this.getRuleContext(0,Vx)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}accept(t){return t.visitSimpleIndexDeclaration?t.visitSimpleIndexDeclaration(this):t.visitChildren(this)}},SP=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_tableOption}copyFrom(t){super.copyFrom(t)}},lP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ENGINE(){return this.getToken(FC.ENGINE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}engineName(){return this.getRuleContext(0,yx)}accept(t){return t.visitTableOptionEngine?t.visitTableOptionEngine(this):t.visitChildren(this)}},OP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MAX_ROWS(){return this.getToken(FC.MAX_ROWS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionMaxRows?t.visitTableOptionMaxRows(this):t.visitChildren(this)}},IP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionCollate?t.visitTableOptionCollate(this):t.visitChildren(this)}},uP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STATS_PERSISTENT(){return this.getToken(FC.STATS_PERSISTENT,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionPersistent?t.visitTableOptionPersistent(this):t.visitChildren(this)}},NP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uid(){return this.getRuleContext(0,Vx)}tablespaceStorage(){return this.getRuleContext(0,qP)}accept(t){return t.visitTableOptionTablespace?t.visitTableOptionTablespace(this):t.visitChildren(this)}},LP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AUTOEXTEND_SIZE(){return this.getToken(FC.AUTOEXTEND_SIZE,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionAutoextendSize?t.visitTableOptionAutoextendSize(this):t.visitChildren(this)}},CP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PAGE_COMPRESSED(){return this.getToken(FC.PAGE_COMPRESSED,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionPageCompressed?t.visitTableOptionPageCompressed(this):t.visitChildren(this)}},_P=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}START(){return this.getToken(FC.START,0)}TRANSACTION(){return this.getToken(FC.TRANSACTION,0)}accept(t){return t.visitTableOptionStartTransaction?t.visitTableOptionStartTransaction(this):t.visitChildren(this)}},PP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PACK_KEYS(){return this.getToken(FC.PACK_KEYS,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionPackKeys?t.visitTableOptionPackKeys(this):t.visitChildren(this)}},MP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionPassword?t.visitTableOptionPassword(this):t.visitChildren(this)}},dP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}UNION(){return this.getToken(FC.UNION,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}tables(){return this.getRuleContext(0,Ik)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionUnion?t.visitTableOptionUnion(this):t.visitChildren(this)}},UP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STATS_SAMPLE_PAGES(){return this.getToken(FC.STATS_SAMPLE_PAGES,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionSamplePage?t.visitTableOptionSamplePage(this):t.visitChildren(this)}},mP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}DEFAULT(t){return void 0===t?this.getTokens(FC.DEFAULT):this.getToken(FC.DEFAULT,t)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionCharset?t.visitTableOptionCharset(this):t.visitChildren(this)}},DP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INDEX(){return this.getToken(FC.INDEX,0)}DIRECTORY(){return this.getToken(FC.DIRECTORY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionIndexDirectory?t.visitTableOptionIndexDirectory(this):t.visitChildren(this)}},pP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TABLE_TYPE(){return this.getToken(FC.TABLE_TYPE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}tableType(){return this.getRuleContext(0,ZP)}accept(t){return t.visitTableOptionTableType?t.visitTableOptionTableType(this):t.visitChildren(this)}},gP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}KEY_BLOCK_SIZE(){return this.getToken(FC.KEY_BLOCK_SIZE,0)}fileSizeLiteral(){return this.getRuleContext(0,Jx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionKeyBlockSize?t.visitTableOptionKeyBlockSize(this):t.visitChildren(this)}},xP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ENCRYPTION(){return this.getToken(FC.ENCRYPTION,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionEncryption?t.visitTableOptionEncryption(this):t.visitChildren(this)}},kP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DIRECTORY(){return this.getToken(FC.DIRECTORY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}DATA(){return this.getToken(FC.DATA,0)}INDEX(){return this.getToken(FC.INDEX,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionDataDirectory?t.visitTableOptionDataDirectory(this):t.visitChildren(this)}},HP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STATS_AUTO_RECALC(){return this.getToken(FC.STATS_AUTO_RECALC,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionRecalculation?t.visitTableOptionRecalculation(this):t.visitChildren(this)}},GP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AUTO_INCREMENT(){return this.getToken(FC.AUTO_INCREMENT,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionAutoIncrement?t.visitTableOptionAutoIncrement(this):t.visitChildren(this)}},FP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ENCRYPTION_KEY_ID(){return this.getToken(FC.ENCRYPTION_KEY_ID,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionEncryptionKeyId?t.visitTableOptionEncryptionKeyId(this):t.visitChildren(this)}},vP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHECKSUM(){return this.getToken(FC.CHECKSUM,0)}PAGE_CHECKSUM(){return this.getToken(FC.PAGE_CHECKSUM,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionChecksum?t.visitTableOptionChecksum(this):t.visitChildren(this)}},BP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DELAY_KEY_WRITE(){return this.getToken(FC.DELAY_KEY_WRITE,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionDelay?t.visitTableOptionDelay(this):t.visitChildren(this)}},yP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CONNECTION(){return this.getToken(FC.CONNECTION,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionConnection?t.visitTableOptionConnection(this):t.visitChildren(this)}},fP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TRANSACTIONAL(){return this.getToken(FC.TRANSACTIONAL,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionTransactional?t.visitTableOptionTransactional(this):t.visitChildren(this)}},YP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}decimalLiteral(){return this.getRuleContext(0,Qx)}PAGE_COMPRESSION_LEVEL(){return this.getToken(FC.PAGE_COMPRESSION_LEVEL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionPageCompressionLevel?t.visitTableOptionPageCompressionLevel(this):t.visitChildren(this)}},wP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SECONDARY_ENGINE_ATTRIBUTE(){return this.getToken(FC.SECONDARY_ENGINE_ATTRIBUTE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionSecondaryEngineAttribute?t.visitTableOptionSecondaryEngineAttribute(this):t.visitChildren(this)}},bP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionComment?t.visitTableOptionComment(this):t.visitChildren(this)}},WP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AVG_ROW_LENGTH(){return this.getToken(FC.AVG_ROW_LENGTH,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionAverage?t.visitTableOptionAverage(this):t.visitChildren(this)}},VP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ROW_FORMAT(){return this.getToken(FC.ROW_FORMAT,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}DYNAMIC(){return this.getToken(FC.DYNAMIC,0)}FIXED(){return this.getToken(FC.FIXED,0)}COMPRESSED(){return this.getToken(FC.COMPRESSED,0)}REDUNDANT(){return this.getToken(FC.REDUNDANT,0)}COMPACT(){return this.getToken(FC.COMPACT,0)}ID(){return this.getToken(FC.ID,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionRowFormat?t.visitTableOptionRowFormat(this):t.visitChildren(this)}},XP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COMPRESSION(){return this.getToken(FC.COMPRESSION,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ID(){return this.getToken(FC.ID,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionCompression?t.visitTableOptionCompression(this):t.visitChildren(this)}},KP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INSERT_METHOD(){return this.getToken(FC.INSERT_METHOD,0)}NO(){return this.getToken(FC.NO,0)}FIRST(){return this.getToken(FC.FIRST,0)}LAST(){return this.getToken(FC.LAST,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionInsertMethod?t.visitTableOptionInsertMethod(this):t.visitChildren(this)}},QP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ENGINE_ATTRIBUTE(){return this.getToken(FC.ENGINE_ATTRIBUTE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionEngineAttribute?t.visitTableOptionEngineAttribute(this):t.visitChildren(this)}},JP=class extends SP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MIN_ROWS(){return this.getToken(FC.MIN_ROWS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitTableOptionMinRows?t.visitTableOptionMinRows(this):t.visitChildren(this)}},ZP=class extends ga{constructor(t,e){super(t,e)}MYSQL(){return this.getToken(FC.MYSQL,0)}ODBC(){return this.getToken(FC.ODBC,0)}get ruleIndex(){return FC.RULE_tableType}accept(t){return t.visitTableType?t.visitTableType(this):t.visitChildren(this)}},qP=class extends ga{constructor(t,e){super(t,e)}STORAGE(){return this.getToken(FC.STORAGE,0)}DISK(){return this.getToken(FC.DISK,0)}MEMORY(){return this.getToken(FC.MEMORY,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}get ruleIndex(){return FC.RULE_tablespaceStorage}accept(t){return t.visitTablespaceStorage?t.visitTablespaceStorage(this):t.visitChildren(this)}},jP=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(FC.PARTITION,0)}BY(t){return void 0===t?this.getTokens(FC.BY):this.getToken(FC.BY,t)}partitionFunctionDefinition(){return this.getRuleContext(0,zP)}PARTITIONS(){return this.getToken(FC.PARTITIONS,0)}SUBPARTITION(){return this.getToken(FC.SUBPARTITION,0)}subpartitionFunctionDefinition(){return this.getRuleContext(0,aM)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}partitionDefinition(t){return void 0===t?this.getRuleContexts(cM):this.getRuleContext(t,cM)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}SUBPARTITIONS(){return this.getToken(FC.SUBPARTITIONS,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_partitionDefinitions}accept(t){return t.visitPartitionDefinitions?t.visitPartitionDefinitions(this):t.visitChildren(this)}},zP=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_partitionFunctionDefinition}copyFrom(t){super.copyFrom(t)}},$P=class extends zP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}KEY(){return this.getToken(FC.KEY,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}LINEAR(){return this.getToken(FC.LINEAR,0)}ALGORITHM(){return this.getToken(FC.ALGORITHM,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}uidList(){return this.getRuleContext(0,lk)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}TWO_DECIMAL(){return this.getToken(FC.TWO_DECIMAL,0)}accept(t){return t.visitPartitionFunctionKey?t.visitPartitionFunctionKey(this):t.visitChildren(this)}},tM=class extends zP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}HASH(){return this.getToken(FC.HASH,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}LINEAR(){return this.getToken(FC.LINEAR,0)}accept(t){return t.visitPartitionFunctionHash?t.visitPartitionFunctionHash(this):t.visitChildren(this)}},eM=class extends zP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LIST(){return this.getToken(FC.LIST,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}uidList(){return this.getRuleContext(0,lk)}accept(t){return t.visitPartitionFunctionList?t.visitPartitionFunctionList(this):t.visitChildren(this)}},sM=class extends zP{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RANGE(){return this.getToken(FC.RANGE,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}uidList(){return this.getRuleContext(0,lk)}accept(t){return t.visitPartitionFunctionRange?t.visitPartitionFunctionRange(this):t.visitChildren(this)}},aM=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_subpartitionFunctionDefinition}copyFrom(t){super.copyFrom(t)}},rM=class extends aM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}HASH(){return this.getToken(FC.HASH,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}LINEAR(){return this.getToken(FC.LINEAR,0)}accept(t){return t.visitSubPartitionFunctionHash?t.visitSubPartitionFunctionHash(this):t.visitChildren(this)}},iM=class extends aM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}KEY(){return this.getToken(FC.KEY,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}LINEAR(){return this.getToken(FC.LINEAR,0)}ALGORITHM(){return this.getToken(FC.ALGORITHM,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}TWO_DECIMAL(){return this.getToken(FC.TWO_DECIMAL,0)}accept(t){return t.visitSubPartitionFunctionKey?t.visitSubPartitionFunctionKey(this):t.visitChildren(this)}},cM=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_partitionDefinition}copyFrom(t){super.copyFrom(t)}},nM=class extends cM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PARTITION(){return this.getToken(FC.PARTITION,0)}uid(){return this.getRuleContext(0,Vx)}VALUES(){return this.getToken(FC.VALUES,0)}LESS(){return this.getToken(FC.LESS,0)}THAN(){return this.getToken(FC.THAN,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}partitionDefinerAtom(t){return void 0===t?this.getRuleContexts(oM):this.getRuleContext(t,oM)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}partitionOption(t){return void 0===t?this.getRuleContexts(SM):this.getRuleContext(t,SM)}subpartitionDefinition(t){return void 0===t?this.getRuleContexts(AM):this.getRuleContext(t,AM)}accept(t){return t.visitPartitionComparison?t.visitPartitionComparison(this):t.visitChildren(this)}},hM=class extends cM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PARTITION(){return this.getToken(FC.PARTITION,0)}uid(){return this.getRuleContext(0,Vx)}VALUES(){return this.getToken(FC.VALUES,0)}IN(){return this.getToken(FC.IN,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}partitionDefinerAtom(t){return void 0===t?this.getRuleContexts(oM):this.getRuleContext(t,oM)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}partitionOption(t){return void 0===t?this.getRuleContexts(SM):this.getRuleContext(t,SM)}subpartitionDefinition(t){return void 0===t?this.getRuleContexts(AM):this.getRuleContext(t,AM)}accept(t){return t.visitPartitionListAtom?t.visitPartitionListAtom(this):t.visitChildren(this)}},EM=class extends cM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PARTITION(){return this.getToken(FC.PARTITION,0)}uid(){return this.getRuleContext(0,Vx)}VALUES(){return this.getToken(FC.VALUES,0)}IN(){return this.getToken(FC.IN,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}partitionDefinerVector(t){return void 0===t?this.getRuleContexts(RM):this.getRuleContext(t,RM)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}partitionOption(t){return void 0===t?this.getRuleContexts(SM):this.getRuleContext(t,SM)}subpartitionDefinition(t){return void 0===t?this.getRuleContexts(AM):this.getRuleContext(t,AM)}accept(t){return t.visitPartitionListVector?t.visitPartitionListVector(this):t.visitChildren(this)}},TM=class extends cM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PARTITION(){return this.getToken(FC.PARTITION,0)}uid(){return this.getRuleContext(0,Vx)}partitionOption(t){return void 0===t?this.getRuleContexts(SM):this.getRuleContext(t,SM)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}subpartitionDefinition(t){return void 0===t?this.getRuleContexts(AM):this.getRuleContext(t,AM)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitPartitionSimple?t.visitPartitionSimple(this):t.visitChildren(this)}},oM=class extends ga{constructor(t,e){super(t,e)}constant(){return this.getRuleContext(0,$x)}expression(){return this.getRuleContext(0,NH)}MAXVALUE(){return this.getToken(FC.MAXVALUE,0)}get ruleIndex(){return FC.RULE_partitionDefinerAtom}accept(t){return t.visitPartitionDefinerAtom?t.visitPartitionDefinerAtom(this):t.visitChildren(this)}},RM=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}partitionDefinerAtom(t){return void 0===t?this.getRuleContexts(oM):this.getRuleContext(t,oM)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_partitionDefinerVector}accept(t){return t.visitPartitionDefinerVector?t.visitPartitionDefinerVector(this):t.visitChildren(this)}},AM=class extends ga{constructor(t,e){super(t,e)}SUBPARTITION(){return this.getToken(FC.SUBPARTITION,0)}uid(){return this.getRuleContext(0,Vx)}partitionOption(t){return void 0===t?this.getRuleContexts(SM):this.getRuleContext(t,SM)}get ruleIndex(){return FC.RULE_subpartitionDefinition}accept(t){return t.visitSubpartitionDefinition?t.visitSubpartitionDefinition(this):t.visitChildren(this)}},SM=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_partitionOption}copyFrom(t){super.copyFrom(t)}},lM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionComment?t.visitPartitionOptionComment(this):t.visitChildren(this)}},OM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}NODEGROUP(){return this.getToken(FC.NODEGROUP,0)}uid(){return this.getRuleContext(0,Vx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionNodeGroup?t.visitPartitionOptionNodeGroup(this):t.visitChildren(this)}},IM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INDEX(){return this.getToken(FC.INDEX,0)}DIRECTORY(){return this.getToken(FC.DIRECTORY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionIndexDirectory?t.visitPartitionOptionIndexDirectory(this):t.visitChildren(this)}},uM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MAX_ROWS(){return this.getToken(FC.MAX_ROWS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionMaxRows?t.visitPartitionOptionMaxRows(this):t.visitChildren(this)}},NM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uid(){return this.getRuleContext(0,Vx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionTablespace?t.visitPartitionOptionTablespace(this):t.visitChildren(this)}},LM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}STORAGE(){return this.getToken(FC.STORAGE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionEngine?t.visitPartitionOptionEngine(this):t.visitChildren(this)}},CM=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MIN_ROWS(){return this.getToken(FC.MIN_ROWS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionMinRows?t.visitPartitionOptionMinRows(this):t.visitChildren(this)}},_M=class extends SM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DATA(){return this.getToken(FC.DATA,0)}DIRECTORY(){return this.getToken(FC.DIRECTORY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitPartitionOptionDataDirectory?t.visitPartitionOptionDataDirectory(this):t.visitChildren(this)}},PM=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_alterDatabase}copyFrom(t){super.copyFrom(t)}},MM=class extends PM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}databaseName(){return this.getRuleContext(0,Mx)}UPGRADE(){return this.getToken(FC.UPGRADE,0)}DATA(){return this.getToken(FC.DATA,0)}DIRECTORY(){return this.getToken(FC.DIRECTORY,0)}NAME(){return this.getToken(FC.NAME,0)}DATABASE(){return this.getToken(FC.DATABASE,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}accept(t){return t.visitAlterUpgradeName?t.visitAlterUpgradeName(this):t.visitChildren(this)}},dM=class extends PM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}databaseName(){return this.getRuleContext(0,Mx)}DATABASE(){return this.getToken(FC.DATABASE,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}createDatabaseOption(t){return void 0===t?this.getRuleContexts(A_):this.getRuleContext(t,A_)}accept(t){return t.visitAlterSimpleDatabase?t.visitAlterSimpleDatabase(this):t.visitChildren(this)}},UM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}EVENT(){return this.getToken(FC.EVENT,0)}fullId(t){return void 0===t?this.getRuleContexts(Sx):this.getRuleContext(t,Sx)}ownerStatement(){return this.getRuleContext(0,O_)}ON(t){return void 0===t?this.getTokens(FC.ON):this.getToken(FC.ON,t)}SCHEDULE(){return this.getToken(FC.SCHEDULE,0)}scheduleExpression(){return this.getRuleContext(0,I_)}COMPLETION(){return this.getToken(FC.COMPLETION,0)}PRESERVE(){return this.getToken(FC.PRESERVE,0)}RENAME(){return this.getToken(FC.RENAME,0)}TO(){return this.getToken(FC.TO,0)}enableType(){return this.getRuleContext(0,P_)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}DO(){return this.getToken(FC.DO,0)}routineBody(){return this.getRuleContext(0,HD)}NOT(){return this.getToken(FC.NOT,0)}get ruleIndex(){return FC.RULE_alterEvent}accept(t){return t.visitAlterEvent?t.visitAlterEvent(this):t.visitChildren(this)}},mM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}fullId(){return this.getRuleContext(0,Sx)}routineOption(t){return void 0===t?this.getRuleContexts(D_):this.getRuleContext(t,D_)}get ruleIndex(){return FC.RULE_alterFunction}accept(t){return t.visitAlterFunction?t.visitAlterFunction(this):t.visitChildren(this)}},DM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}INSTANCE(){return this.getToken(FC.INSTANCE,0)}ROTATE(){return this.getToken(FC.ROTATE,0)}INNODB(){return this.getToken(FC.INNODB,0)}MASTER(){return this.getToken(FC.MASTER,0)}KEY(){return this.getToken(FC.KEY,0)}get ruleIndex(){return FC.RULE_alterInstance}accept(t){return t.visitAlterInstance?t.visitAlterInstance(this):t.visitChildren(this)}},pM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}LOGFILE(){return this.getToken(FC.LOGFILE,0)}GROUP(){return this.getToken(FC.GROUP,0)}uid(){return this.getRuleContext(0,Vx)}ADD(){return this.getToken(FC.ADD,0)}UNDOFILE(){return this.getToken(FC.UNDOFILE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}INITIAL_SIZE(){return this.getToken(FC.INITIAL_SIZE,0)}fileSizeLiteral(){return this.getRuleContext(0,Jx)}WAIT(){return this.getToken(FC.WAIT,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}get ruleIndex(){return FC.RULE_alterLogfileGroup}accept(t){return t.visitAlterLogfileGroup?t.visitAlterLogfileGroup(this):t.visitChildren(this)}},gM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}fullId(){return this.getRuleContext(0,Sx)}routineOption(t){return void 0===t?this.getRuleContexts(D_):this.getRuleContext(t,D_)}get ruleIndex(){return FC.RULE_alterProcedure}accept(t){return t.visitAlterProcedure?t.visitAlterProcedure(this):t.visitChildren(this)}},xM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}SERVER(){return this.getToken(FC.SERVER,0)}uid(){return this.getRuleContext(0,Vx)}OPTIONS(){return this.getToken(FC.OPTIONS,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}serverOption(t){return void 0===t?this.getRuleContexts(G_):this.getRuleContext(t,G_)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_alterServer}accept(t){return t.visitAlterServer?t.visitAlterServer(this):t.visitChildren(this)}},kM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}IGNORE(){return this.getToken(FC.IGNORE,0)}waitNowaitClause(){return this.getRuleContext(0,gk)}alterSpecification(t){return void 0===t?this.getRuleContexts(FM):this.getRuleContext(t,FM)}partitionDefinitions(){return this.getRuleContext(0,jP)}ONLINE(){return this.getToken(FC.ONLINE,0)}OFFLINE(){return this.getToken(FC.OFFLINE,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_alterTable}accept(t){return t.visitAlterTable?t.visitAlterTable(this):t.visitChildren(this)}},HM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uid(){return this.getRuleContext(0,Vx)}DATAFILE(){return this.getToken(FC.DATAFILE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}ADD(){return this.getToken(FC.ADD,0)}DROP(){return this.getToken(FC.DROP,0)}INITIAL_SIZE(){return this.getToken(FC.INITIAL_SIZE,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}fileSizeLiteral(){return this.getRuleContext(0,Jx)}WAIT(){return this.getToken(FC.WAIT,0)}get ruleIndex(){return FC.RULE_alterTablespace}accept(t){return t.visitAlterTablespace?t.visitAlterTablespace(this):t.visitChildren(this)}},GM=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(FC.ALTER,0)}VIEW(){return this.getToken(FC.VIEW,0)}fullId(){return this.getRuleContext(0,Sx)}AS(){return this.getToken(FC.AS,0)}selectStatement(){return this.getRuleContext(0,rU)}ALGORITHM(){return this.getToken(FC.ALGORITHM,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}ownerStatement(){return this.getRuleContext(0,O_)}SQL(){return this.getToken(FC.SQL,0)}SECURITY(){return this.getToken(FC.SECURITY,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}WITH(){return this.getToken(FC.WITH,0)}CHECK(){return this.getToken(FC.CHECK,0)}OPTION(){return this.getToken(FC.OPTION,0)}UNDEFINED(){return this.getToken(FC.UNDEFINED,0)}MERGE(){return this.getToken(FC.MERGE,0)}TEMPTABLE(){return this.getToken(FC.TEMPTABLE,0)}DEFINER(){return this.getToken(FC.DEFINER,0)}INVOKER(){return this.getToken(FC.INVOKER,0)}CASCADED(){return this.getToken(FC.CASCADED,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}get ruleIndex(){return FC.RULE_alterView}accept(t){return t.visitAlterView?t.visitAlterView(this):t.visitChildren(this)}},FM=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_alterSpecification}copyFrom(t){super.copyFrom(t)}},vM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}uid(){return this.getRuleContext(0,Vx)}SET(){return this.getToken(FC.SET,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}DROP(){return this.getToken(FC.DROP,0)}COLUMN(){return this.getToken(FC.COLUMN,0)}VISIBLE(){return this.getToken(FC.VISIBLE,0)}INVISIBLE(){return this.getToken(FC.INVISIBLE,0)}stringLiteral(){return this.getRuleContext(0,Zx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitAlterByAlterColumnDefault?t.visitAlterByAlterColumnDefault(this):t.visitChildren(this)}},BM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DISABLE(){return this.getToken(FC.DISABLE,0)}KEYS(){return this.getToken(FC.KEYS,0)}accept(t){return t.visitAlterByDisableKeys?t.visitAlterByDisableKeys(this):t.visitChildren(this)}},yM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(){return this.getToken(FC.SET,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}charsetName(){return this.getRuleContext(0,vx)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitAlterByDefaultCharset?t.visitAlterByDefaultCharset(this):t.visitChildren(this)}},fM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RENAME(){return this.getToken(FC.RENAME,0)}COLUMN(){return this.getToken(FC.COLUMN,0)}TO(){return this.getToken(FC.TO,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}accept(t){return t.visitAlterByRenameColumn?t.visitAlterByRenameColumn(this):t.visitChildren(this)}},YM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CONVERT(){return this.getToken(FC.CONVERT,0)}TO(){return this.getToken(FC.TO,0)}charsetName(){return this.getRuleContext(0,vx)}CHARSET(){return this.getToken(FC.CHARSET,0)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(){return this.getToken(FC.SET,0)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitAlterByConvertCharset?t.visitAlterByConvertCharset(this):t.visitChildren(this)}},wM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}FOREIGN(){return this.getToken(FC.FOREIGN,0)}KEY(){return this.getToken(FC.KEY,0)}indexColumnNames(){return this.getRuleContext(0,uk)}referenceDefinition(){return this.getRuleContext(0,hP)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}accept(t){return t.visitAlterByAddForeignKey?t.visitAlterByAddForeignKey(this):t.visitChildren(this)}},bM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RENAME(){return this.getToken(FC.RENAME,0)}indexName(){return this.getRuleContext(0,dx)}TO(){return this.getToken(FC.TO,0)}uid(){return this.getRuleContext(0,Vx)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitAlterByRenameIndex?t.visitAlterByRenameIndex(this):t.visitChildren(this)}},WM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RENAME(){return this.getToken(FC.RENAME,0)}uid(){return this.getRuleContext(0,Vx)}fullId(){return this.getRuleContext(0,Sx)}TO(){return this.getToken(FC.TO,0)}AS(){return this.getToken(FC.AS,0)}accept(t){return t.visitAlterByRename?t.visitAlterByRename(this):t.visitChildren(this)}},VM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}IMPORT(){return this.getToken(FC.IMPORT,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}accept(t){return t.visitAlterByImportTablespace?t.visitAlterByImportTablespace(this):t.visitChildren(this)}},XM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}createDefinition(t){return void 0===t?this.getRuleContexts(v_):this.getRuleContext(t,v_)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COLUMN(){return this.getToken(FC.COLUMN,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAlterByAddDefinitions?t.visitAlterByAddDefinitions(this):t.visitChildren(this)}},KM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}CHECK(){return this.getToken(FC.CHECK,0)}uid(){return this.getRuleContext(0,Vx)}stringLiteral(){return this.getRuleContext(0,Zx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}NOT(){return this.getToken(FC.NOT,0)}ENFORCED(){return this.getToken(FC.ENFORCED,0)}constraintName(){return this.getRuleContext(0,Ux)}accept(t){return t.visitAlterByAlterCheckTableConstraint?t.visitAlterByAlterCheckTableConstraint(this):t.visitChildren(this)}},QM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(FC.DROP,0)}constraintName(){return this.getRuleContext(0,Ux)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}CHECK(){return this.getToken(FC.CHECK,0)}accept(t){return t.visitAlterByDropConstraintCheck?t.visitAlterByDropConstraintCheck(this):t.visitChildren(this)}},JM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}columnDefinition(t){return void 0===t?this.getRuleContexts(Y_):this.getRuleContext(t,Y_)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COLUMN(){return this.getToken(FC.COLUMN,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAlterByAddColumns?t.visitAlterByAddColumns(this):t.visitChildren(this)}},ZM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}INDEX(){return this.getToken(FC.INDEX,0)}indexName(){return this.getRuleContext(0,dx)}VISIBLE(){return this.getToken(FC.VISIBLE,0)}INVISIBLE(){return this.getToken(FC.INVISIBLE,0)}accept(t){return t.visitAlterByAlterIndexVisibility?t.visitAlterByAlterIndexVisibility(this):t.visitChildren(this)}},qM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(FC.DROP,0)}FOREIGN(){return this.getToken(FC.FOREIGN,0)}KEY(){return this.getToken(FC.KEY,0)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitAlterByDropForeignKey?t.visitAlterByDropForeignKey(this):t.visitChildren(this)}},jM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}CHECK(){return this.getToken(FC.CHECK,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}stringLiteral(){return this.getRuleContext(0,Zx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}NOT(){return this.getToken(FC.NOT,0)}ENFORCED(){return this.getToken(FC.ENFORCED,0)}accept(t){return t.visitAlterByAddCheckTableConstraint?t.visitAlterByAddCheckTableConstraint(this):t.visitChildren(this)}},zM=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}alterPartitionSpecification(){return this.getRuleContext(0,ud)}accept(t){return t.visitAlterPartition?t.visitAlterPartition(this):t.visitChildren(this)}},$M=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}indexColumnNames(){return this.getRuleContext(0,uk)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}uid(){return this.getRuleContext(0,Vx)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}accept(t){return t.visitAlterByAddIndex?t.visitAlterByAddIndex(this):t.visitChildren(this)}},td=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(FC.DROP,0)}uid(){return this.getRuleContext(0,Vx)}COLUMN(){return this.getToken(FC.COLUMN,0)}RESTRICT(){return this.getToken(FC.RESTRICT,0)}accept(t){return t.visitAlterByDropColumn?t.visitAlterByDropColumn(this):t.visitChildren(this)}},ed=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}uid(){return this.getRuleContext(0,Vx)}SET(){return this.getToken(FC.SET,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}defaultValue(){return this.getRuleContext(0,Mk)}DROP(){return this.getToken(FC.DROP,0)}COLUMN(){return this.getToken(FC.COLUMN,0)}accept(t){return t.visitAlterByChangeDefault?t.visitAlterByChangeDefault(this):t.visitChildren(this)}},sd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FORCE(){return this.getToken(FC.FORCE,0)}accept(t){return t.visitAlterByForce?t.visitAlterByForce(this):t.visitChildren(this)}},ad=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}indexColumnNames(){return this.getRuleContext(0,uk)}FULLTEXT(){return this.getToken(FC.FULLTEXT,0)}SPATIAL(){return this.getToken(FC.SPATIAL,0)}uid(){return this.getRuleContext(0,Vx)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitAlterByAddSpecialIndex?t.visitAlterByAddSpecialIndex(this):t.visitChildren(this)}},rd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(FC.MODIFY,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}columnDefinition(){return this.getRuleContext(0,Y_)}COLUMN(){return this.getToken(FC.COLUMN,0)}FIRST(){return this.getToken(FC.FIRST,0)}AFTER(){return this.getToken(FC.AFTER,0)}accept(t){return t.visitAlterByModifyColumn?t.visitAlterByModifyColumn(this):t.visitChildren(this)}},id=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableOption(t){return void 0===t?this.getRuleContexts(SP):this.getRuleContext(t,SP)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAlterByTableOption?t.visitAlterByTableOption(this):t.visitChildren(this)}},cd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(FC.DROP,0)}PRIMARY(){return this.getToken(FC.PRIMARY,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitAlterByDropPrimaryKey?t.visitAlterByDropPrimaryKey(this):t.visitChildren(this)}},nd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LOCK(){return this.getToken(FC.LOCK,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}NONE(){return this.getToken(FC.NONE,0)}SHARED(){return this.getToken(FC.SHARED,0)}EXCLUSIVE(){return this.getToken(FC.EXCLUSIVE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitAlterByLock?t.visitAlterByLock(this):t.visitChildren(this)}},hd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DISCARD(){return this.getToken(FC.DISCARD,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}accept(t){return t.visitAlterByDiscardTablespace?t.visitAlterByDiscardTablespace(this):t.visitChildren(this)}},Ed=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}VALIDATION(){return this.getToken(FC.VALIDATION,0)}WITHOUT(){return this.getToken(FC.WITHOUT,0)}WITH(){return this.getToken(FC.WITH,0)}accept(t){return t.visitAlterByValidate?t.visitAlterByValidate(this):t.visitChildren(this)}},Td=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}PRIMARY(){return this.getToken(FC.PRIMARY,0)}KEY(){return this.getToken(FC.KEY,0)}indexColumnNames(){return this.getRuleContext(0,uk)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}accept(t){return t.visitAlterByAddPrimaryKey?t.visitAlterByAddPrimaryKey(this):t.visitChildren(this)}},od=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ENABLE(){return this.getToken(FC.ENABLE,0)}KEYS(){return this.getToken(FC.KEYS,0)}accept(t){return t.visitAlterByEnableKeys?t.visitAlterByEnableKeys(this):t.visitChildren(this)}},Rd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALGORITHM(){return this.getToken(FC.ALGORITHM,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}INSTANT(){return this.getToken(FC.INSTANT,0)}INPLACE(){return this.getToken(FC.INPLACE,0)}COPY(){return this.getToken(FC.COPY,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}accept(t){return t.visitAlterBySetAlgorithm?t.visitAlterBySetAlgorithm(this):t.visitChildren(this)}},Ad=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHANGE(){return this.getToken(FC.CHANGE,0)}columnDefinition(){return this.getRuleContext(0,Y_)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COLUMN(){return this.getToken(FC.COLUMN,0)}FIRST(){return this.getToken(FC.FIRST,0)}AFTER(){return this.getToken(FC.AFTER,0)}accept(t){return t.visitAlterByChangeColumn?t.visitAlterByChangeColumn(this):t.visitChildren(this)}},Sd=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}UNIQUE(){return this.getToken(FC.UNIQUE,0)}indexColumnNames(){return this.getRuleContext(0,uk)}CONSTRAINT(){return this.getToken(FC.CONSTRAINT,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}indexType(){return this.getRuleContext(0,M_)}indexOption(t){return void 0===t?this.getRuleContexts(d_):this.getRuleContext(t,d_)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitAlterByAddUniqueKey?t.visitAlterByAddUniqueKey(this):t.visitChildren(this)}},ld=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(FC.DROP,0)}indexName(){return this.getRuleContext(0,dx)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}accept(t){return t.visitAlterByDropIndex?t.visitAlterByDropIndex(this):t.visitChildren(this)}},Od=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}columnDefinition(){return this.getRuleContext(0,Y_)}COLUMN(){return this.getToken(FC.COLUMN,0)}FIRST(){return this.getToken(FC.FIRST,0)}AFTER(){return this.getToken(FC.AFTER,0)}accept(t){return t.visitAlterByAddColumn?t.visitAlterByAddColumn(this):t.visitChildren(this)}},Id=class extends FM{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ORDER(){return this.getToken(FC.ORDER,0)}BY(){return this.getToken(FC.BY,0)}uidList(){return this.getRuleContext(0,lk)}accept(t){return t.visitAlterByOrder?t.visitAlterByOrder(this):t.visitChildren(this)}},ud=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_alterPartitionSpecification}copyFrom(t){super.copyFrom(t)}},Nd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}IMPORT(){return this.getToken(FC.IMPORT,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByImportPartition?t.visitAlterByImportPartition(this):t.visitChildren(this)}},Ld=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(FC.DROP,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}accept(t){return t.visitAlterByDropPartition?t.visitAlterByDropPartition(this):t.visitChildren(this)}},Cd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DISCARD(){return this.getToken(FC.DISCARD,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByDiscardPartition?t.visitAlterByDiscardPartition(this):t.visitChildren(this)}},_d=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(FC.ADD,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}partitionDefinition(t){return void 0===t?this.getRuleContexts(cM):this.getRuleContext(t,cM)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAlterByAddPartition?t.visitAlterByAddPartition(this):t.visitChildren(this)}},Pd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REMOVE(){return this.getToken(FC.REMOVE,0)}PARTITIONING(){return this.getToken(FC.PARTITIONING,0)}accept(t){return t.visitAlterByRemovePartitioning?t.visitAlterByRemovePartitioning(this):t.visitChildren(this)}},Md=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}OPTIMIZE(){return this.getToken(FC.OPTIMIZE,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByOptimizePartition?t.visitAlterByOptimizePartition(this):t.visitChildren(this)}},dd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHECK(){return this.getToken(FC.CHECK,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByCheckPartition?t.visitAlterByCheckPartition(this):t.visitChildren(this)}},Ud=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COALESCE(){return this.getToken(FC.COALESCE,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}accept(t){return t.visitAlterByCoalescePartition?t.visitAlterByCoalescePartition(this):t.visitChildren(this)}},md=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REORGANIZE(){return this.getToken(FC.REORGANIZE,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}INTO(){return this.getToken(FC.INTO,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}partitionDefinition(t){return void 0===t?this.getRuleContexts(cM):this.getRuleContext(t,cM)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAlterByReorganizePartition?t.visitAlterByReorganizePartition(this):t.visitChildren(this)}},Dd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ANALYZE(){return this.getToken(FC.ANALYZE,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByAnalyzePartition?t.visitAlterByAnalyzePartition(this):t.visitChildren(this)}},pd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REBUILD(){return this.getToken(FC.REBUILD,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByRebuildPartition?t.visitAlterByRebuildPartition(this):t.visitChildren(this)}},gd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}UPGRADE(){return this.getToken(FC.UPGRADE,0)}PARTITIONING(){return this.getToken(FC.PARTITIONING,0)}accept(t){return t.visitAlterByUpgradePartitioning?t.visitAlterByUpgradePartitioning(this):t.visitChildren(this)}},xd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TRUNCATE(){return this.getToken(FC.TRUNCATE,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByTruncatePartition?t.visitAlterByTruncatePartition(this):t.visitChildren(this)}},kd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPAIR(){return this.getToken(FC.REPAIR,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}accept(t){return t.visitAlterByRepairPartition?t.visitAlterByRepairPartition(this):t.visitChildren(this)}},Hd=class extends ud{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXCHANGE(){return this.getToken(FC.EXCHANGE,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}uid(){return this.getRuleContext(0,Vx)}WITH(t){return void 0===t?this.getTokens(FC.WITH):this.getToken(FC.WITH,t)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}VALIDATION(){return this.getToken(FC.VALIDATION,0)}WITHOUT(){return this.getToken(FC.WITHOUT,0)}accept(t){return t.visitAlterByExchangePartition?t.visitAlterByExchangePartition(this):t.visitChildren(this)}},Gd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}databaseName(){return this.getRuleContext(0,Mx)}DATABASE(){return this.getToken(FC.DATABASE,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropDatabase}accept(t){return t.visitDropDatabase?t.visitDropDatabase(this):t.visitChildren(this)}},Fd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}EVENT(){return this.getToken(FC.EVENT,0)}fullId(){return this.getRuleContext(0,Sx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropEvent}accept(t){return t.visitDropEvent?t.visitDropEvent(this):t.visitChildren(this)}},vd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}INDEX(){return this.getToken(FC.INDEX,0)}indexName(){return this.getRuleContext(0,dx)}ON(){return this.getToken(FC.ON,0)}tableName(){return this.getRuleContext(0,lx)}ALGORITHM(t){return void 0===t?this.getTokens(FC.ALGORITHM):this.getToken(FC.ALGORITHM,t)}LOCK(t){return void 0===t?this.getTokens(FC.LOCK):this.getToken(FC.LOCK,t)}ONLINE(){return this.getToken(FC.ONLINE,0)}OFFLINE(){return this.getToken(FC.OFFLINE,0)}DEFAULT(t){return void 0===t?this.getTokens(FC.DEFAULT):this.getToken(FC.DEFAULT,t)}INPLACE(t){return void 0===t?this.getTokens(FC.INPLACE):this.getToken(FC.INPLACE,t)}COPY(t){return void 0===t?this.getTokens(FC.COPY):this.getToken(FC.COPY,t)}NONE(t){return void 0===t?this.getTokens(FC.NONE):this.getToken(FC.NONE,t)}SHARED(t){return void 0===t?this.getTokens(FC.SHARED):this.getToken(FC.SHARED,t)}EXCLUSIVE(t){return void 0===t?this.getTokens(FC.EXCLUSIVE):this.getToken(FC.EXCLUSIVE,t)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}get ruleIndex(){return FC.RULE_dropIndex}accept(t){return t.visitDropIndex?t.visitDropIndex(this):t.visitChildren(this)}},Bd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}LOGFILE(){return this.getToken(FC.LOGFILE,0)}GROUP(){return this.getToken(FC.GROUP,0)}uid(){return this.getRuleContext(0,Vx)}ENGINE(){return this.getToken(FC.ENGINE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}engineName(){return this.getRuleContext(0,yx)}get ruleIndex(){return FC.RULE_dropLogfileGroup}accept(t){return t.visitDropLogfileGroup?t.visitDropLogfileGroup(this):t.visitChildren(this)}},yd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}fullId(){return this.getRuleContext(0,Sx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropProcedure}accept(t){return t.visitDropProcedure?t.visitDropProcedure(this):t.visitChildren(this)}},fd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}fullId(){return this.getRuleContext(0,Sx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropFunction}accept(t){return t.visitDropFunction?t.visitDropFunction(this):t.visitChildren(this)}},Yd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}SERVER(){return this.getToken(FC.SERVER,0)}uid(){return this.getRuleContext(0,Vx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropServer}accept(t){return t.visitDropServer?t.visitDropServer(this):t.visitChildren(this)}},wd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}TABLE(){return this.getToken(FC.TABLE,0)}tables(){return this.getRuleContext(0,Ik)}TEMPORARY(){return this.getToken(FC.TEMPORARY,0)}ifExists(){return this.getRuleContext(0,mk)}RESTRICT(){return this.getToken(FC.RESTRICT,0)}CASCADE(){return this.getToken(FC.CASCADE,0)}get ruleIndex(){return FC.RULE_dropTable}accept(t){return t.visitDropTable?t.visitDropTable(this):t.visitChildren(this)}},bd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}uid(){return this.getRuleContext(0,Vx)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}get ruleIndex(){return FC.RULE_dropTablespace}accept(t){return t.visitDropTablespace?t.visitDropTablespace(this):t.visitChildren(this)}},Wd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}TRIGGER(){return this.getToken(FC.TRIGGER,0)}triggerName(){return this.getRuleContext(0,mx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropTrigger}accept(t){return t.visitDropTrigger?t.visitDropTrigger(this):t.visitChildren(this)}},Vd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}VIEW(){return this.getToken(FC.VIEW,0)}fullId(t){return void 0===t?this.getRuleContexts(Sx):this.getRuleContext(t,Sx)}ifExists(){return this.getRuleContext(0,mk)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}RESTRICT(){return this.getToken(FC.RESTRICT,0)}CASCADE(){return this.getToken(FC.CASCADE,0)}get ruleIndex(){return FC.RULE_dropView}accept(t){return t.visitDropView?t.visitDropView(this):t.visitChildren(this)}},Xd=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}ROLE(){return this.getToken(FC.ROLE,0)}roleNameList(){return this.getRuleContext(0,Cx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropRole}accept(t){return t.visitDropRole?t.visitDropRole(this):t.visitChildren(this)}},Kd=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(FC.SET,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}ROLE(){return this.getToken(FC.ROLE,0)}TO(){return this.getToken(FC.TO,0)}userNameList(){return this.getRuleContext(0,kx)}NONE(){return this.getToken(FC.NONE,0)}ALL(){return this.getToken(FC.ALL,0)}roleNameList(){return this.getRuleContext(0,Cx)}roleOption(){return this.getRuleContext(0,lp)}get ruleIndex(){return FC.RULE_setRole}accept(t){return t.visitSetRole?t.visitSetRole(this):t.visitChildren(this)}},Qd=class extends ga{constructor(t,e){super(t,e)}RENAME(){return this.getToken(FC.RENAME,0)}TABLE(){return this.getToken(FC.TABLE,0)}renameTableClause(t){return void 0===t?this.getRuleContexts(Jd):this.getRuleContext(t,Jd)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_renameTable}accept(t){return t.visitRenameTable?t.visitRenameTable(this):t.visitChildren(this)}},Jd=class extends ga{constructor(t,e){super(t,e)}tableName(t){return void 0===t?this.getRuleContexts(lx):this.getRuleContext(t,lx)}TO(){return this.getToken(FC.TO,0)}get ruleIndex(){return FC.RULE_renameTableClause}accept(t){return t.visitRenameTableClause?t.visitRenameTableClause(this):t.visitChildren(this)}},Zd=class extends ga{constructor(t,e){super(t,e)}TRUNCATE(){return this.getToken(FC.TRUNCATE,0)}tableName(){return this.getRuleContext(0,lx)}TABLE(){return this.getToken(FC.TABLE,0)}get ruleIndex(){return FC.RULE_truncateTable}accept(t){return t.visitTruncateTable?t.visitTruncateTable(this):t.visitChildren(this)}},qd=class extends ga{constructor(t,e){super(t,e)}CALL(){return this.getToken(FC.CALL,0)}fullId(){return this.getRuleContext(0,Sx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}constants(){return this.getRuleContext(0,Ck)}expressions(){return this.getRuleContext(0,Nk)}get ruleIndex(){return FC.RULE_callStatement}accept(t){return t.visitCallStatement?t.visitCallStatement(this):t.visitChildren(this)}},jd=class extends ga{constructor(t,e){super(t,e)}singleDeleteStatement(){return this.getRuleContext(0,OU)}multipleDeleteStatement(){return this.getRuleContext(0,IU)}get ruleIndex(){return FC.RULE_deleteStatement}accept(t){return t.visitDeleteStatement?t.visitDeleteStatement(this):t.visitChildren(this)}},zd=class extends ga{constructor(t,e){super(t,e)}DO(){return this.getToken(FC.DO,0)}expressions(){return this.getRuleContext(0,Nk)}get ruleIndex(){return FC.RULE_doStatement}accept(t){return t.visitDoStatement?t.visitDoStatement(this):t.visitChildren(this)}},$d=class extends ga{constructor(t,e){super(t,e)}handlerOpenStatement(){return this.getRuleContext(0,uU)}handlerReadIndexStatement(){return this.getRuleContext(0,NU)}handlerReadStatement(){return this.getRuleContext(0,LU)}handlerCloseStatement(){return this.getRuleContext(0,CU)}get ruleIndex(){return FC.RULE_handlerStatement}accept(t){return t.visitHandlerStatement?t.visitHandlerStatement(this):t.visitChildren(this)}},tU=class extends ga{constructor(t,e){super(t,e),this._setElements=[],this._duplicatedElements=[]}INSERT(){return this.getToken(FC.INSERT,0)}tableName(){return this.getRuleContext(0,lx)}insertStatementValue(){return this.getRuleContext(0,RU)}SET(){return this.getToken(FC.SET,0)}IGNORE(){return this.getToken(FC.IGNORE,0)}INTO(){return this.getToken(FC.INTO,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}updatedElement(t){return void 0===t?this.getRuleContexts(AU):this.getRuleContext(t,AU)}ON(){return this.getToken(FC.ON,0)}DUPLICATE(){return this.getToken(FC.DUPLICATE,0)}KEY(){return this.getToken(FC.KEY,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}DELAYED(){return this.getToken(FC.DELAYED,0)}HIGH_PRIORITY(){return this.getToken(FC.HIGH_PRIORITY,0)}uid(){return this.getRuleContext(0,Vx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}uidList(){return this.getRuleContext(0,lk)}AS(){return this.getToken(FC.AS,0)}fullColumnNameList(){return this.getRuleContext(0,Ok)}get ruleIndex(){return FC.RULE_insertStatement}accept(t){return t.visitInsertStatement?t.visitInsertStatement(this):t.visitChildren(this)}},eU=class extends ga{constructor(t,e){super(t,e)}LOAD(){return this.getToken(FC.LOAD,0)}DATA(){return this.getToken(FC.DATA,0)}INFILE(){return this.getToken(FC.INFILE,0)}INTO(){return this.getToken(FC.INTO,0)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(t){return void 0===t?this.getTokens(FC.SET):this.getToken(FC.SET,t)}LINES(t){return void 0===t?this.getTokens(FC.LINES):this.getToken(FC.LINES,t)}IGNORE(t){return void 0===t?this.getTokens(FC.IGNORE):this.getToken(FC.IGNORE,t)}decimalLiteral(){return this.getRuleContext(0,Qx)}assignmentField(t){return void 0===t?this.getRuleContexts(SU):this.getRuleContext(t,SU)}updatedElement(t){return void 0===t?this.getRuleContexts(AU):this.getRuleContext(t,AU)}charsetName(){return this.getRuleContext(0,vx)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}CONCURRENT(){return this.getToken(FC.CONCURRENT,0)}REPLACE(){return this.getToken(FC.REPLACE,0)}FIELDS(){return this.getToken(FC.FIELDS,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}ROWS(){return this.getToken(FC.ROWS,0)}selectFieldsInto(t){return void 0===t?this.getRuleContexts(Am):this.getRuleContext(t,Am)}selectLinesInto(t){return void 0===t?this.getRuleContexts(Sm):this.getRuleContext(t,Sm)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_loadDataStatement}accept(t){return t.visitLoadDataStatement?t.visitLoadDataStatement(this):t.visitChildren(this)}},sU=class extends ga{constructor(t,e){super(t,e)}LOAD(){return this.getToken(FC.LOAD,0)}XML(){return this.getToken(FC.XML,0)}INFILE(){return this.getToken(FC.INFILE,0)}INTO(){return this.getToken(FC.INTO,0)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}LOCAL(){return this.getToken(FC.LOCAL,0)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(t){return void 0===t?this.getTokens(FC.SET):this.getToken(FC.SET,t)}ROWS(t){return void 0===t?this.getTokens(FC.ROWS):this.getToken(FC.ROWS,t)}IDENTIFIED(){return this.getToken(FC.IDENTIFIED,0)}BY(){return this.getToken(FC.BY,0)}LESS_SYMBOL(){return this.getToken(FC.LESS_SYMBOL,0)}GREATER_SYMBOL(){return this.getToken(FC.GREATER_SYMBOL,0)}IGNORE(t){return void 0===t?this.getTokens(FC.IGNORE):this.getToken(FC.IGNORE,t)}decimalLiteral(){return this.getRuleContext(0,Qx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}assignmentField(t){return void 0===t?this.getRuleContexts(SU):this.getRuleContext(t,SU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}updatedElement(t){return void 0===t?this.getRuleContexts(AU):this.getRuleContext(t,AU)}charsetName(){return this.getRuleContext(0,vx)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}CONCURRENT(){return this.getToken(FC.CONCURRENT,0)}REPLACE(){return this.getToken(FC.REPLACE,0)}LINES(){return this.getToken(FC.LINES,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_loadXmlStatement}accept(t){return t.visitLoadXmlStatement?t.visitLoadXmlStatement(this):t.visitChildren(this)}},aU=class extends ga{constructor(t,e){super(t,e),this._setElements=[]}REPLACE(){return this.getToken(FC.REPLACE,0)}tableName(){return this.getRuleContext(0,lx)}insertStatementValue(){return this.getRuleContext(0,RU)}SET(){return this.getToken(FC.SET,0)}INTO(){return this.getToken(FC.INTO,0)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}updatedElement(t){return void 0===t?this.getRuleContexts(AU):this.getRuleContext(t,AU)}uidList(t){return void 0===t?this.getRuleContexts(lk):this.getRuleContext(t,lk)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}DELAYED(){return this.getToken(FC.DELAYED,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_replaceStatement}accept(t){return t.visitReplaceStatement?t.visitReplaceStatement(this):t.visitChildren(this)}},rU=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_selectStatement}copyFrom(t){super.copyFrom(t)}},iU=class extends rU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}querySpecificationNointo(){return this.getRuleContext(0,KU)}queryExpressionNointo(){return this.getRuleContext(0,VU)}unionStatement(t){return void 0===t?this.getRuleContexts(JU):this.getRuleContext(t,JU)}UNION(){return this.getToken(FC.UNION,0)}orderByClause(){return this.getRuleContext(0,MU)}limitClause(){return this.getRuleContext(0,Lm)}lockClause(){return this.getRuleContext(0,lU)}querySpecification(){return this.getRuleContext(0,XU)}queryExpression(){return this.getRuleContext(0,WU)}ALL(){return this.getToken(FC.ALL,0)}DISTINCT(){return this.getToken(FC.DISTINCT,0)}accept(t){return t.visitUnionSelect?t.visitUnionSelect(this):t.visitChildren(this)}},cU=class extends rU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}queryExpressionNointo(){return this.getRuleContext(0,VU)}unionParenthesis(t){return void 0===t?this.getRuleContexts(QU):this.getRuleContext(t,QU)}UNION(){return this.getToken(FC.UNION,0)}queryExpression(){return this.getRuleContext(0,WU)}orderByClause(){return this.getRuleContext(0,MU)}limitClause(){return this.getRuleContext(0,Lm)}lockClause(){return this.getRuleContext(0,lU)}ALL(){return this.getToken(FC.ALL,0)}DISTINCT(){return this.getToken(FC.DISTINCT,0)}accept(t){return t.visitUnionParenthesisSelect?t.visitUnionParenthesisSelect(this):t.visitChildren(this)}},nU=class extends rU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}querySpecification(){return this.getRuleContext(0,XU)}lockClause(){return this.getRuleContext(0,lU)}accept(t){return t.visitSimpleSelect?t.visitSimpleSelect(this):t.visitChildren(this)}},hU=class extends rU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}queryExpression(){return this.getRuleContext(0,WU)}lockClause(){return this.getRuleContext(0,lU)}accept(t){return t.visitParenthesisSelect?t.visitParenthesisSelect(this):t.visitChildren(this)}},EU=class extends rU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}querySpecificationNointo(){return this.getRuleContext(0,KU)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}lateralStatement(t){return void 0===t?this.getRuleContexts(ZU):this.getRuleContext(t,ZU)}accept(t){return t.visitWithLateralStatement?t.visitWithLateralStatement(this):t.visitChildren(this)}},TU=class extends ga{constructor(t,e){super(t,e)}singleUpdateStatement(){return this.getRuleContext(0,_U)}multipleUpdateStatement(){return this.getRuleContext(0,PU)}get ruleIndex(){return FC.RULE_updateStatement}accept(t){return t.visitUpdateStatement?t.visitUpdateStatement(this):t.visitChildren(this)}},oU=class extends ga{constructor(t,e){super(t,e)}VALUES(){return this.getToken(FC.VALUES,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}expressionsWithDefaults(t){return void 0===t?this.getRuleContexts(Lk):this.getRuleContext(t,Lk)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_valuesStatement}accept(t){return t.visitValuesStatement?t.visitValuesStatement(this):t.visitChildren(this)}},RU=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,rU)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}VALUES(){return this.getToken(FC.VALUES,0)}VALUE(){return this.getToken(FC.VALUE,0)}expressionsWithDefaults(t){return void 0===t?this.getRuleContexts(Lk):this.getRuleContext(t,Lk)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_insertStatementValue}accept(t){return t.visitInsertStatementValue?t.visitInsertStatementValue(this):t.visitChildren(this)}},AU=class extends ga{constructor(t,e){super(t,e)}fullColumnName(){return this.getRuleContext(0,Px)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}expression(){return this.getRuleContext(0,NH)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}get ruleIndex(){return FC.RULE_updatedElement}accept(t){return t.visitUpdatedElement?t.visitUpdatedElement(this):t.visitChildren(this)}},SU=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}get ruleIndex(){return FC.RULE_assignmentField}accept(t){return t.visitAssignmentField?t.visitAssignmentField(this):t.visitChildren(this)}},lU=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(FC.FOR,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}LOCK(){return this.getToken(FC.LOCK,0)}IN(){return this.getToken(FC.IN,0)}SHARE(){return this.getToken(FC.SHARE,0)}MODE(){return this.getToken(FC.MODE,0)}get ruleIndex(){return FC.RULE_lockClause}accept(t){return t.visitLockClause?t.visitLockClause(this):t.visitChildren(this)}},OU=class extends ga{constructor(t,e){super(t,e)}DELETE(){return this.getToken(FC.DELETE,0)}FROM(){return this.getToken(FC.FROM,0)}tableName(){return this.getRuleContext(0,lx)}QUICK(){return this.getToken(FC.QUICK,0)}IGNORE(){return this.getToken(FC.IGNORE,0)}uid(){return this.getRuleContext(0,Vx)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}orderByClause(){return this.getRuleContext(0,MU)}LIMIT(){return this.getToken(FC.LIMIT,0)}limitClauseAtom(){return this.getRuleContext(0,Cm)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_singleDeleteStatement}accept(t){return t.visitSingleDeleteStatement?t.visitSingleDeleteStatement(this):t.visitChildren(this)}},IU=class extends ga{constructor(t,e){super(t,e)}DELETE(){return this.getToken(FC.DELETE,0)}tableName(t){return void 0===t?this.getRuleContexts(lx):this.getRuleContext(t,lx)}FROM(){return this.getToken(FC.FROM,0)}tableSources(){return this.getRuleContext(0,UU)}USING(){return this.getToken(FC.USING,0)}QUICK(){return this.getToken(FC.QUICK,0)}IGNORE(){return this.getToken(FC.IGNORE,0)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}DOT(t){return void 0===t?this.getTokens(FC.DOT):this.getToken(FC.DOT,t)}STAR(t){return void 0===t?this.getTokens(FC.STAR):this.getToken(FC.STAR,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_multipleDeleteStatement}accept(t){return t.visitMultipleDeleteStatement?t.visitMultipleDeleteStatement(this):t.visitChildren(this)}},uU=class extends ga{constructor(t,e){super(t,e)}HANDLER(){return this.getToken(FC.HANDLER,0)}tableName(){return this.getRuleContext(0,lx)}OPEN(){return this.getToken(FC.OPEN,0)}uid(){return this.getRuleContext(0,Vx)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_handlerOpenStatement}accept(t){return t.visitHandlerOpenStatement?t.visitHandlerOpenStatement(this):t.visitChildren(this)}},NU=class extends ga{constructor(t,e){super(t,e)}HANDLER(){return this.getToken(FC.HANDLER,0)}tableName(){return this.getRuleContext(0,lx)}READ(){return this.getToken(FC.READ,0)}uid(){return this.getRuleContext(0,Vx)}comparisonOperator(){return this.getRuleContext(0,$H)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}constants(){return this.getRuleContext(0,Ck)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}LIMIT(){return this.getToken(FC.LIMIT,0)}limitClauseAtom(){return this.getRuleContext(0,Cm)}FIRST(){return this.getToken(FC.FIRST,0)}NEXT(){return this.getToken(FC.NEXT,0)}PREV(){return this.getToken(FC.PREV,0)}LAST(){return this.getToken(FC.LAST,0)}get ruleIndex(){return FC.RULE_handlerReadIndexStatement}accept(t){return t.visitHandlerReadIndexStatement?t.visitHandlerReadIndexStatement(this):t.visitChildren(this)}},LU=class extends ga{constructor(t,e){super(t,e)}HANDLER(){return this.getToken(FC.HANDLER,0)}tableName(){return this.getRuleContext(0,lx)}READ(){return this.getToken(FC.READ,0)}FIRST(){return this.getToken(FC.FIRST,0)}NEXT(){return this.getToken(FC.NEXT,0)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}LIMIT(){return this.getToken(FC.LIMIT,0)}limitClauseAtom(){return this.getRuleContext(0,Cm)}get ruleIndex(){return FC.RULE_handlerReadStatement}accept(t){return t.visitHandlerReadStatement?t.visitHandlerReadStatement(this):t.visitChildren(this)}},CU=class extends ga{constructor(t,e){super(t,e)}HANDLER(){return this.getToken(FC.HANDLER,0)}tableName(){return this.getRuleContext(0,lx)}CLOSE(){return this.getToken(FC.CLOSE,0)}get ruleIndex(){return FC.RULE_handlerCloseStatement}accept(t){return t.visitHandlerCloseStatement?t.visitHandlerCloseStatement(this):t.visitChildren(this)}},_U=class extends ga{constructor(t,e){super(t,e)}UPDATE(){return this.getToken(FC.UPDATE,0)}tableName(){return this.getRuleContext(0,lx)}SET(){return this.getToken(FC.SET,0)}updatedElement(t){return void 0===t?this.getRuleContexts(AU):this.getRuleContext(t,AU)}IGNORE(){return this.getToken(FC.IGNORE,0)}uid(){return this.getRuleContext(0,Vx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}orderByClause(){return this.getRuleContext(0,MU)}limitClause(){return this.getRuleContext(0,Lm)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_singleUpdateStatement}accept(t){return t.visitSingleUpdateStatement?t.visitSingleUpdateStatement(this):t.visitChildren(this)}},PU=class extends ga{constructor(t,e){super(t,e)}UPDATE(){return this.getToken(FC.UPDATE,0)}tableNames(){return this.getRuleContext(0,Ox)}SET(){return this.getToken(FC.SET,0)}updatedElement(t){return void 0===t?this.getRuleContexts(AU):this.getRuleContext(t,AU)}IGNORE(){return this.getToken(FC.IGNORE,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}get ruleIndex(){return FC.RULE_multipleUpdateStatement}accept(t){return t.visitMultipleUpdateStatement?t.visitMultipleUpdateStatement(this):t.visitChildren(this)}},MU=class extends ga{constructor(t,e){super(t,e)}ORDER(){return this.getToken(FC.ORDER,0)}BY(){return this.getToken(FC.BY,0)}orderByExpression(t){return void 0===t?this.getRuleContexts(dU):this.getRuleContext(t,dU)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_orderByClause}accept(t){return t.visitOrderByClause?t.visitOrderByClause(this):t.visitChildren(this)}},dU=class extends ga{constructor(t,e){super(t,e)}expression(){return this.getRuleContext(0,NH)}ASC(){return this.getToken(FC.ASC,0)}DESC(){return this.getToken(FC.DESC,0)}get ruleIndex(){return FC.RULE_orderByExpression}accept(t){return t.visitOrderByExpression?t.visitOrderByExpression(this):t.visitChildren(this)}},UU=class extends ga{constructor(t,e){super(t,e)}tableSource(t){return void 0===t?this.getRuleContexts(mU):this.getRuleContext(t,mU)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_tableSources}accept(t){return t.visitTableSources?t.visitTableSources(this):t.visitChildren(this)}},mU=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_tableSource}copyFrom(t){super.copyFrom(t)}},DU=class extends mU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}jsonTable(){return this.getRuleContext(0,qU)}accept(t){return t.visitTableJson?t.visitTableJson(this):t.visitChildren(this)}},pU=class extends mU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}tableSourceItem(){return this.getRuleContext(0,xU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}joinPart(t){return void 0===t?this.getRuleContexts(BU):this.getRuleContext(t,BU)}accept(t){return t.visitTableSourceNested?t.visitTableSourceNested(this):t.visitChildren(this)}},gU=class extends mU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableSourceItem(){return this.getRuleContext(0,xU)}joinPart(t){return void 0===t?this.getRuleContexts(BU):this.getRuleContext(t,BU)}accept(t){return t.visitTableSourceBase?t.visitTableSourceBase(this):t.visitChildren(this)}},xU=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_tableSourceItem}copyFrom(t){super.copyFrom(t)}},kU=class extends xU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}uid(){return this.getRuleContext(0,Vx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}selectStatement(){return this.getRuleContext(0,rU)}AS(){return this.getToken(FC.AS,0)}accept(t){return t.visitSubqueryTableItem?t.visitSubqueryTableItem(this):t.visitChildren(this)}},HU=class extends xU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableName(){return this.getRuleContext(0,lx)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}indexHint(t){return void 0===t?this.getRuleContexts(FU):this.getRuleContext(t,FU)}uid(){return this.getRuleContext(0,Vx)}AS(){return this.getToken(FC.AS,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAtomTableItem?t.visitAtomTableItem(this):t.visitChildren(this)}},GU=class extends xU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}tableSources(){return this.getRuleContext(0,UU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitTableSourcesItem?t.visitTableSourcesItem(this):t.visitChildren(this)}},FU=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}indexNameList(){return this.getRuleContext(0,Dx)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}USE(){return this.getToken(FC.USE,0)}IGNORE(){return this.getToken(FC.IGNORE,0)}FORCE(){return this.getToken(FC.FORCE,0)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}FOR(){return this.getToken(FC.FOR,0)}indexHintType(){return this.getRuleContext(0,vU)}get ruleIndex(){return FC.RULE_indexHint}accept(t){return t.visitIndexHint?t.visitIndexHint(this):t.visitChildren(this)}},vU=class extends ga{constructor(t,e){super(t,e)}JOIN(){return this.getToken(FC.JOIN,0)}ORDER(){return this.getToken(FC.ORDER,0)}BY(){return this.getToken(FC.BY,0)}GROUP(){return this.getToken(FC.GROUP,0)}get ruleIndex(){return FC.RULE_indexHintType}accept(t){return t.visitIndexHintType?t.visitIndexHintType(this):t.visitChildren(this)}},BU=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_joinPart}copyFrom(t){super.copyFrom(t)}},yU=class extends BU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}JOIN(){return this.getToken(FC.JOIN,0)}tableSourceItem(){return this.getRuleContext(0,xU)}LATERAL(){return this.getToken(FC.LATERAL,0)}joinSpec(t){return void 0===t?this.getRuleContexts(bU):this.getRuleContext(t,bU)}INNER(){return this.getToken(FC.INNER,0)}CROSS(){return this.getToken(FC.CROSS,0)}accept(t){return t.visitInnerJoin?t.visitInnerJoin(this):t.visitChildren(this)}},fU=class extends BU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}NATURAL(){return this.getToken(FC.NATURAL,0)}JOIN(){return this.getToken(FC.JOIN,0)}tableSourceItem(){return this.getRuleContext(0,xU)}LEFT(){return this.getToken(FC.LEFT,0)}RIGHT(){return this.getToken(FC.RIGHT,0)}OUTER(){return this.getToken(FC.OUTER,0)}accept(t){return t.visitNaturalJoin?t.visitNaturalJoin(this):t.visitChildren(this)}},YU=class extends BU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}JOIN(){return this.getToken(FC.JOIN,0)}tableSourceItem(){return this.getRuleContext(0,xU)}LEFT(){return this.getToken(FC.LEFT,0)}RIGHT(){return this.getToken(FC.RIGHT,0)}OUTER(){return this.getToken(FC.OUTER,0)}LATERAL(){return this.getToken(FC.LATERAL,0)}joinSpec(t){return void 0===t?this.getRuleContexts(bU):this.getRuleContext(t,bU)}accept(t){return t.visitOuterJoin?t.visitOuterJoin(this):t.visitChildren(this)}},wU=class extends BU{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STRAIGHT_JOIN(){return this.getToken(FC.STRAIGHT_JOIN,0)}tableSourceItem(){return this.getRuleContext(0,xU)}ON(t){return void 0===t?this.getTokens(FC.ON):this.getToken(FC.ON,t)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}accept(t){return t.visitStraightJoin?t.visitStraightJoin(this):t.visitChildren(this)}},bU=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(FC.ON,0)}expression(){return this.getRuleContext(0,NH)}USING(){return this.getToken(FC.USING,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}get ruleIndex(){return FC.RULE_joinSpec}accept(t){return t.visitJoinSpec?t.visitJoinSpec(this):t.visitChildren(this)}},WU=class t extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}querySpecification(){return this.getRuleContext(0,XU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}queryExpression(){return this.getRuleContext(0,t)}get ruleIndex(){return FC.RULE_queryExpression}accept(t){return t.visitQueryExpression?t.visitQueryExpression(this):t.visitChildren(this)}},VU=class t extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}querySpecificationNointo(){return this.getRuleContext(0,KU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}queryExpressionNointo(){return this.getRuleContext(0,t)}get ruleIndex(){return FC.RULE_queryExpressionNointo}accept(t){return t.visitQueryExpressionNointo?t.visitQueryExpressionNointo(this):t.visitChildren(this)}},XU=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(FC.SELECT,0)}selectElements(){return this.getRuleContext(0,sm)}fromClause(){return this.getRuleContext(0,lm)}selectSpec(t){return void 0===t?this.getRuleContexts(em):this.getRuleContext(t,em)}selectIntoExpression(){return this.getRuleContext(0,Em)}groupByClause(){return this.getRuleContext(0,Om)}havingClause(){return this.getRuleContext(0,Im)}windowClause(){return this.getRuleContext(0,um)}orderByClause(){return this.getRuleContext(0,MU)}limitClause(){return this.getRuleContext(0,Lm)}get ruleIndex(){return FC.RULE_querySpecification}accept(t){return t.visitQuerySpecification?t.visitQuerySpecification(this):t.visitChildren(this)}},KU=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(FC.SELECT,0)}selectElements(){return this.getRuleContext(0,sm)}fromClause(){return this.getRuleContext(0,lm)}selectSpec(t){return void 0===t?this.getRuleContexts(em):this.getRuleContext(t,em)}groupByClause(){return this.getRuleContext(0,Om)}havingClause(){return this.getRuleContext(0,Im)}windowClause(){return this.getRuleContext(0,um)}orderByClause(){return this.getRuleContext(0,MU)}limitClause(){return this.getRuleContext(0,Lm)}unionStatement(){return this.getRuleContext(0,JU)}get ruleIndex(){return FC.RULE_querySpecificationNointo}accept(t){return t.visitQuerySpecificationNointo?t.visitQuerySpecificationNointo(this):t.visitChildren(this)}},QU=class extends ga{constructor(t,e){super(t,e)}UNION(){return this.getToken(FC.UNION,0)}queryExpressionNointo(){return this.getRuleContext(0,VU)}ALL(){return this.getToken(FC.ALL,0)}DISTINCT(){return this.getToken(FC.DISTINCT,0)}get ruleIndex(){return FC.RULE_unionParenthesis}accept(t){return t.visitUnionParenthesis?t.visitUnionParenthesis(this):t.visitChildren(this)}},JU=class extends ga{constructor(t,e){super(t,e)}UNION(){return this.getToken(FC.UNION,0)}querySpecificationNointo(){return this.getRuleContext(0,KU)}queryExpressionNointo(){return this.getRuleContext(0,VU)}ALL(){return this.getToken(FC.ALL,0)}DISTINCT(){return this.getToken(FC.DISTINCT,0)}get ruleIndex(){return FC.RULE_unionStatement}accept(t){return t.visitUnionStatement?t.visitUnionStatement(this):t.visitChildren(this)}},ZU=class extends ga{constructor(t,e){super(t,e)}LATERAL(){return this.getToken(FC.LATERAL,0)}querySpecificationNointo(){return this.getRuleContext(0,KU)}queryExpressionNointo(){return this.getRuleContext(0,VU)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}uid(){return this.getRuleContext(0,Vx)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_lateralStatement}accept(t){return t.visitLateralStatement?t.visitLateralStatement(this):t.visitChildren(this)}},qU=class extends ga{constructor(t,e){super(t,e)}JSON_TABLE(){return this.getToken(FC.JSON_TABLE,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}COMMA(){return this.getToken(FC.COMMA,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}jsonColumnList(){return this.getRuleContext(0,jU)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}uid(){return this.getRuleContext(0,Vx)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_jsonTable}accept(t){return t.visitJsonTable?t.visitJsonTable(this):t.visitChildren(this)}},jU=class extends ga{constructor(t,e){super(t,e)}jsonColumn(t){return void 0===t?this.getRuleContexts(zU):this.getRuleContext(t,zU)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_jsonColumnList}accept(t){return t.visitJsonColumnList?t.visitJsonColumnList(this):t.visitChildren(this)}},zU=class extends ga{constructor(t,e){super(t,e)}fullColumnName(){return this.getRuleContext(0,Px)}FOR(){return this.getToken(FC.FOR,0)}ORDINALITY(){return this.getToken(FC.ORDINALITY,0)}dataType(){return this.getRuleContext(0,tk)}PATH(){return this.getToken(FC.PATH,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}EXISTS(){return this.getToken(FC.EXISTS,0)}jsonOnEmpty(){return this.getRuleContext(0,$U)}jsonOnError(){return this.getRuleContext(0,tm)}NESTED(){return this.getToken(FC.NESTED,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}jsonColumnList(){return this.getRuleContext(0,jU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}get ruleIndex(){return FC.RULE_jsonColumn}accept(t){return t.visitJsonColumn?t.visitJsonColumn(this):t.visitChildren(this)}},$U=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(FC.ON,0)}EMPTY(){return this.getToken(FC.EMPTY,0)}NULL_LITERAL(){return this.getToken(FC.NULL_LITERAL,0)}ERROR(){return this.getToken(FC.ERROR,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}defaultValue(){return this.getRuleContext(0,Mk)}get ruleIndex(){return FC.RULE_jsonOnEmpty}accept(t){return t.visitJsonOnEmpty?t.visitJsonOnEmpty(this):t.visitChildren(this)}},tm=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(FC.ON,0)}ERROR(t){return void 0===t?this.getTokens(FC.ERROR):this.getToken(FC.ERROR,t)}NULL_LITERAL(){return this.getToken(FC.NULL_LITERAL,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}defaultValue(){return this.getRuleContext(0,Mk)}get ruleIndex(){return FC.RULE_jsonOnError}accept(t){return t.visitJsonOnError?t.visitJsonOnError(this):t.visitChildren(this)}},em=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(FC.ALL,0)}DISTINCT(){return this.getToken(FC.DISTINCT,0)}DISTINCTROW(){return this.getToken(FC.DISTINCTROW,0)}HIGH_PRIORITY(){return this.getToken(FC.HIGH_PRIORITY,0)}STRAIGHT_JOIN(){return this.getToken(FC.STRAIGHT_JOIN,0)}SQL_SMALL_RESULT(){return this.getToken(FC.SQL_SMALL_RESULT,0)}SQL_BIG_RESULT(){return this.getToken(FC.SQL_BIG_RESULT,0)}SQL_BUFFER_RESULT(){return this.getToken(FC.SQL_BUFFER_RESULT,0)}SQL_CACHE(){return this.getToken(FC.SQL_CACHE,0)}SQL_NO_CACHE(){return this.getToken(FC.SQL_NO_CACHE,0)}SQL_CALC_FOUND_ROWS(){return this.getToken(FC.SQL_CALC_FOUND_ROWS,0)}get ruleIndex(){return FC.RULE_selectSpec}accept(t){return t.visitSelectSpec?t.visitSelectSpec(this):t.visitChildren(this)}},sm=class extends ga{constructor(t,e){super(t,e)}selectElement(t){return void 0===t?this.getRuleContexts(rm):this.getRuleContext(t,rm)}STAR(){return this.getToken(FC.STAR,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_selectElements}accept(t){return t.visitSelectElements?t.visitSelectElements(this):t.visitChildren(this)}},am=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_selectElementAlias}accept(t){return t.visitSelectElementAlias?t.visitSelectElementAlias(this):t.visitChildren(this)}},rm=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_selectElement}copyFrom(t){super.copyFrom(t)}},im=class extends rm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}expression(){return this.getRuleContext(0,NH)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}VAR_ASSIGN(){return this.getToken(FC.VAR_ASSIGN,0)}selectElementAlias(){return this.getRuleContext(0,am)}accept(t){return t.visitSelectExpressionElement?t.visitSelectExpressionElement(this):t.visitChildren(this)}},cm=class extends rm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}functionCall(){return this.getRuleContext(0,xk)}selectElementAlias(){return this.getRuleContext(0,am)}accept(t){return t.visitSelectFunctionElement?t.visitSelectFunctionElement(this):t.visitChildren(this)}},nm=class extends rm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}fullId(){return this.getRuleContext(0,Sx)}DOT(){return this.getToken(FC.DOT,0)}STAR(){return this.getToken(FC.STAR,0)}accept(t){return t.visitSelectStarElement?t.visitSelectStarElement(this):t.visitChildren(this)}},hm=class extends rm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}fullColumnName(){return this.getRuleContext(0,Px)}selectElementAlias(){return this.getRuleContext(0,am)}accept(t){return t.visitSelectColumnElement?t.visitSelectColumnElement(this):t.visitChildren(this)}},Em=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_selectIntoExpression}copyFrom(t){super.copyFrom(t)}},Tm=class extends Em{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INTO(){return this.getToken(FC.INTO,0)}assignmentField(t){return void 0===t?this.getRuleContexts(SU):this.getRuleContext(t,SU)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitSelectIntoVariables?t.visitSelectIntoVariables(this):t.visitChildren(this)}},om=class extends Em{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INTO(){return this.getToken(FC.INTO,0)}OUTFILE(){return this.getToken(FC.OUTFILE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(){return this.getToken(FC.SET,0)}LINES(){return this.getToken(FC.LINES,0)}charsetName(){return this.getRuleContext(0,vx)}FIELDS(){return this.getToken(FC.FIELDS,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}selectFieldsInto(t){return void 0===t?this.getRuleContexts(Am):this.getRuleContext(t,Am)}selectLinesInto(t){return void 0===t?this.getRuleContexts(Sm):this.getRuleContext(t,Sm)}accept(t){return t.visitSelectIntoTextFile?t.visitSelectIntoTextFile(this):t.visitChildren(this)}},Rm=class extends Em{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INTO(){return this.getToken(FC.INTO,0)}DUMPFILE(){return this.getToken(FC.DUMPFILE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitSelectIntoDumpFile?t.visitSelectIntoDumpFile(this):t.visitChildren(this)}},Am=class extends ga{constructor(t,e){super(t,e)}TERMINATED(){return this.getToken(FC.TERMINATED,0)}BY(){return this.getToken(FC.BY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ENCLOSED(){return this.getToken(FC.ENCLOSED,0)}OPTIONALLY(){return this.getToken(FC.OPTIONALLY,0)}ESCAPED(){return this.getToken(FC.ESCAPED,0)}get ruleIndex(){return FC.RULE_selectFieldsInto}accept(t){return t.visitSelectFieldsInto?t.visitSelectFieldsInto(this):t.visitChildren(this)}},Sm=class extends ga{constructor(t,e){super(t,e)}STARTING(){return this.getToken(FC.STARTING,0)}BY(){return this.getToken(FC.BY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}TERMINATED(){return this.getToken(FC.TERMINATED,0)}get ruleIndex(){return FC.RULE_selectLinesInto}accept(t){return t.visitSelectLinesInto?t.visitSelectLinesInto(this):t.visitChildren(this)}},lm=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(FC.FROM,0)}tableSources(){return this.getRuleContext(0,UU)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_fromClause}accept(t){return t.visitFromClause?t.visitFromClause(this):t.visitChildren(this)}},Om=class extends ga{constructor(t,e){super(t,e)}GROUP(){return this.getToken(FC.GROUP,0)}BY(){return this.getToken(FC.BY,0)}groupByItem(t){return void 0===t?this.getRuleContexts(Nm):this.getRuleContext(t,Nm)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}WITH(){return this.getToken(FC.WITH,0)}ROLLUP(){return this.getToken(FC.ROLLUP,0)}get ruleIndex(){return FC.RULE_groupByClause}accept(t){return t.visitGroupByClause?t.visitGroupByClause(this):t.visitChildren(this)}},Im=class extends ga{constructor(t,e){super(t,e)}HAVING(){return this.getToken(FC.HAVING,0)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_havingClause}accept(t){return t.visitHavingClause?t.visitHavingClause(this):t.visitChildren(this)}},um=class extends ga{constructor(t,e){super(t,e)}WINDOW(){return this.getToken(FC.WINDOW,0)}windowName(t){return void 0===t?this.getRuleContexts(hH):this.getRuleContext(t,hH)}AS(t){return void 0===t?this.getTokens(FC.AS):this.getToken(FC.AS,t)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}windowSpec(t){return void 0===t?this.getRuleContexts(nH):this.getRuleContext(t,nH)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_windowClause}accept(t){return t.visitWindowClause?t.visitWindowClause(this):t.visitChildren(this)}},Nm=class extends ga{constructor(t,e){super(t,e)}expression(){return this.getRuleContext(0,NH)}ASC(){return this.getToken(FC.ASC,0)}DESC(){return this.getToken(FC.DESC,0)}get ruleIndex(){return FC.RULE_groupByItem}accept(t){return t.visitGroupByItem?t.visitGroupByItem(this):t.visitChildren(this)}},Lm=class extends ga{constructor(t,e){super(t,e)}LIMIT(){return this.getToken(FC.LIMIT,0)}OFFSET(){return this.getToken(FC.OFFSET,0)}limitClauseAtom(t){return void 0===t?this.getRuleContexts(Cm):this.getRuleContext(t,Cm)}COMMA(){return this.getToken(FC.COMMA,0)}get ruleIndex(){return FC.RULE_limitClause}accept(t){return t.visitLimitClause?t.visitLimitClause(this):t.visitChildren(this)}},Cm=class extends ga{constructor(t,e){super(t,e)}decimalLiteral(){return this.getRuleContext(0,Qx)}mysqlVariable(){return this.getRuleContext(0,Fx)}simpleId(){return this.getRuleContext(0,Xx)}get ruleIndex(){return FC.RULE_limitClauseAtom}accept(t){return t.visitLimitClauseAtom?t.visitLimitClauseAtom(this):t.visitChildren(this)}},_m=class extends ga{constructor(t,e){super(t,e)}START(){return this.getToken(FC.START,0)}TRANSACTION(){return this.getToken(FC.TRANSACTION,0)}transactionMode(t){return void 0===t?this.getRuleContexts(Hm):this.getRuleContext(t,Hm)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_startTransaction}accept(t){return t.visitStartTransaction?t.visitStartTransaction(this):t.visitChildren(this)}},Pm=class extends ga{constructor(t,e){super(t,e)}BEGIN(){return this.getToken(FC.BEGIN,0)}WORK(){return this.getToken(FC.WORK,0)}get ruleIndex(){return FC.RULE_beginWork}accept(t){return t.visitBeginWork?t.visitBeginWork(this):t.visitChildren(this)}},Mm=class extends ga{constructor(t,e){super(t,e)}COMMIT(){return this.getToken(FC.COMMIT,0)}WORK(){return this.getToken(FC.WORK,0)}AND(){return this.getToken(FC.AND,0)}CHAIN(){return this.getToken(FC.CHAIN,0)}RELEASE(){return this.getToken(FC.RELEASE,0)}NO(t){return void 0===t?this.getTokens(FC.NO):this.getToken(FC.NO,t)}get ruleIndex(){return FC.RULE_commitWork}accept(t){return t.visitCommitWork?t.visitCommitWork(this):t.visitChildren(this)}},dm=class extends ga{constructor(t,e){super(t,e)}ROLLBACK(){return this.getToken(FC.ROLLBACK,0)}WORK(){return this.getToken(FC.WORK,0)}AND(){return this.getToken(FC.AND,0)}CHAIN(){return this.getToken(FC.CHAIN,0)}RELEASE(){return this.getToken(FC.RELEASE,0)}NO(t){return void 0===t?this.getTokens(FC.NO):this.getToken(FC.NO,t)}get ruleIndex(){return FC.RULE_rollbackWork}accept(t){return t.visitRollbackWork?t.visitRollbackWork(this):t.visitChildren(this)}},Um=class extends ga{constructor(t,e){super(t,e)}SAVEPOINT(){return this.getToken(FC.SAVEPOINT,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_savepointStatement}accept(t){return t.visitSavepointStatement?t.visitSavepointStatement(this):t.visitChildren(this)}},mm=class extends ga{constructor(t,e){super(t,e)}ROLLBACK(){return this.getToken(FC.ROLLBACK,0)}TO(){return this.getToken(FC.TO,0)}uid(){return this.getRuleContext(0,Vx)}WORK(){return this.getToken(FC.WORK,0)}SAVEPOINT(){return this.getToken(FC.SAVEPOINT,0)}get ruleIndex(){return FC.RULE_rollbackStatement}accept(t){return t.visitRollbackStatement?t.visitRollbackStatement(this):t.visitChildren(this)}},Dm=class extends ga{constructor(t,e){super(t,e)}RELEASE(){return this.getToken(FC.RELEASE,0)}SAVEPOINT(){return this.getToken(FC.SAVEPOINT,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_releaseStatement}accept(t){return t.visitReleaseStatement?t.visitReleaseStatement(this):t.visitChildren(this)}},pm=class extends ga{constructor(t,e){super(t,e)}LOCK(){return this.getToken(FC.LOCK,0)}lockTableElement(t){return void 0===t?this.getRuleContexts(Gm):this.getRuleContext(t,Gm)}TABLE(){return this.getToken(FC.TABLE,0)}TABLES(){return this.getToken(FC.TABLES,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}waitNowaitClause(){return this.getRuleContext(0,gk)}get ruleIndex(){return FC.RULE_lockTables}accept(t){return t.visitLockTables?t.visitLockTables(this):t.visitChildren(this)}},gm=class extends ga{constructor(t,e){super(t,e)}UNLOCK(){return this.getToken(FC.UNLOCK,0)}TABLES(){return this.getToken(FC.TABLES,0)}get ruleIndex(){return FC.RULE_unlockTables}accept(t){return t.visitUnlockTables?t.visitUnlockTables(this):t.visitChildren(this)}},xm=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(FC.SET,0)}AUTOCOMMIT(){return this.getToken(FC.AUTOCOMMIT,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}get ruleIndex(){return FC.RULE_setAutocommitStatement}accept(t){return t.visitSetAutocommitStatement?t.visitSetAutocommitStatement(this):t.visitChildren(this)}},km=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(FC.SET,0)}TRANSACTION(){return this.getToken(FC.TRANSACTION,0)}transactionOption(t){return void 0===t?this.getRuleContexts(vm):this.getRuleContext(t,vm)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}GLOBAL(){return this.getToken(FC.GLOBAL,0)}SESSION(){return this.getToken(FC.SESSION,0)}get ruleIndex(){return FC.RULE_setTransactionStatement}accept(t){return t.visitSetTransactionStatement?t.visitSetTransactionStatement(this):t.visitChildren(this)}},Hm=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(FC.WITH,0)}CONSISTENT(){return this.getToken(FC.CONSISTENT,0)}SNAPSHOT(){return this.getToken(FC.SNAPSHOT,0)}READ(){return this.getToken(FC.READ,0)}WRITE(){return this.getToken(FC.WRITE,0)}ONLY(){return this.getToken(FC.ONLY,0)}get ruleIndex(){return FC.RULE_transactionMode}accept(t){return t.visitTransactionMode?t.visitTransactionMode(this):t.visitChildren(this)}},Gm=class extends ga{constructor(t,e){super(t,e)}tableName(){return this.getRuleContext(0,lx)}lockAction(){return this.getRuleContext(0,Fm)}uid(){return this.getRuleContext(0,Vx)}AS(){return this.getToken(FC.AS,0)}get ruleIndex(){return FC.RULE_lockTableElement}accept(t){return t.visitLockTableElement?t.visitLockTableElement(this):t.visitChildren(this)}},Fm=class extends ga{constructor(t,e){super(t,e)}READ(){return this.getToken(FC.READ,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}WRITE(){return this.getToken(FC.WRITE,0)}LOW_PRIORITY(){return this.getToken(FC.LOW_PRIORITY,0)}get ruleIndex(){return FC.RULE_lockAction}accept(t){return t.visitLockAction?t.visitLockAction(this):t.visitChildren(this)}},vm=class extends ga{constructor(t,e){super(t,e)}ISOLATION(){return this.getToken(FC.ISOLATION,0)}LEVEL(){return this.getToken(FC.LEVEL,0)}transactionLevel(){return this.getRuleContext(0,Bm)}READ(){return this.getToken(FC.READ,0)}WRITE(){return this.getToken(FC.WRITE,0)}ONLY(){return this.getToken(FC.ONLY,0)}get ruleIndex(){return FC.RULE_transactionOption}accept(t){return t.visitTransactionOption?t.visitTransactionOption(this):t.visitChildren(this)}},Bm=class extends ga{constructor(t,e){super(t,e)}REPEATABLE(){return this.getToken(FC.REPEATABLE,0)}READ(){return this.getToken(FC.READ,0)}COMMITTED(){return this.getToken(FC.COMMITTED,0)}UNCOMMITTED(){return this.getToken(FC.UNCOMMITTED,0)}SERIALIZABLE(){return this.getToken(FC.SERIALIZABLE,0)}get ruleIndex(){return FC.RULE_transactionLevel}accept(t){return t.visitTransactionLevel?t.visitTransactionLevel(this):t.visitChildren(this)}},ym=class extends ga{constructor(t,e){super(t,e)}CHANGE(){return this.getToken(FC.CHANGE,0)}MASTER(){return this.getToken(FC.MASTER,0)}TO(){return this.getToken(FC.TO,0)}masterOption(t){return void 0===t?this.getRuleContexts(Qm):this.getRuleContext(t,Qm)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}channelOption(){return this.getRuleContext(0,sD)}get ruleIndex(){return FC.RULE_changeMaster}accept(t){return t.visitChangeMaster?t.visitChangeMaster(this):t.visitChildren(this)}},fm=class extends ga{constructor(t,e){super(t,e)}CHANGE(){return this.getToken(FC.CHANGE,0)}REPLICATION(){return this.getToken(FC.REPLICATION,0)}FILTER(){return this.getToken(FC.FILTER,0)}replicationFilter(t){return void 0===t?this.getRuleContexts(aD):this.getRuleContext(t,aD)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_changeReplicationFilter}accept(t){return t.visitChangeReplicationFilter?t.visitChangeReplicationFilter(this):t.visitChildren(this)}},Ym=class extends ga{constructor(t,e){super(t,e)}PURGE(){return this.getToken(FC.PURGE,0)}LOGS(){return this.getToken(FC.LOGS,0)}BINARY(){return this.getToken(FC.BINARY,0)}MASTER(){return this.getToken(FC.MASTER,0)}TO(){return this.getToken(FC.TO,0)}BEFORE(){return this.getToken(FC.BEFORE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_purgeBinaryLogs}accept(t){return t.visitPurgeBinaryLogs?t.visitPurgeBinaryLogs(this):t.visitChildren(this)}},wm=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(FC.RESET,0)}MASTER(){return this.getToken(FC.MASTER,0)}get ruleIndex(){return FC.RULE_resetMaster}accept(t){return t.visitResetMaster?t.visitResetMaster(this):t.visitChildren(this)}},bm=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(FC.RESET,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}ALL(){return this.getToken(FC.ALL,0)}channelOption(){return this.getRuleContext(0,sD)}get ruleIndex(){return FC.RULE_resetSlave}accept(t){return t.visitResetSlave?t.visitResetSlave(this):t.visitChildren(this)}},Wm=class extends ga{constructor(t,e){super(t,e)}START(){return this.getToken(FC.START,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}threadType(t){return void 0===t?this.getRuleContexts(RD):this.getRuleContext(t,RD)}UNTIL(){return this.getToken(FC.UNTIL,0)}untilOption(){return this.getRuleContext(0,AD)}connectionOption(t){return void 0===t?this.getRuleContexts(uD):this.getRuleContext(t,uD)}channelOption(){return this.getRuleContext(0,sD)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_startSlave}accept(t){return t.visitStartSlave?t.visitStartSlave(this):t.visitChildren(this)}},Vm=class extends ga{constructor(t,e){super(t,e)}STOP(){return this.getToken(FC.STOP,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}threadType(t){return void 0===t?this.getRuleContexts(RD):this.getRuleContext(t,RD)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_stopSlave}accept(t){return t.visitStopSlave?t.visitStopSlave(this):t.visitChildren(this)}},Xm=class extends ga{constructor(t,e){super(t,e)}START(){return this.getToken(FC.START,0)}GROUP_REPLICATION(){return this.getToken(FC.GROUP_REPLICATION,0)}get ruleIndex(){return FC.RULE_startGroupReplication}accept(t){return t.visitStartGroupReplication?t.visitStartGroupReplication(this):t.visitChildren(this)}},Km=class extends ga{constructor(t,e){super(t,e)}STOP(){return this.getToken(FC.STOP,0)}GROUP_REPLICATION(){return this.getToken(FC.GROUP_REPLICATION,0)}get ruleIndex(){return FC.RULE_stopGroupReplication}accept(t){return t.visitStopGroupReplication?t.visitStopGroupReplication(this):t.visitChildren(this)}},Qm=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_masterOption}copyFrom(t){super.copyFrom(t)}},Jm=class extends Qm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}stringMasterOption(){return this.getRuleContext(0,$m)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitMasterStringOption?t.visitMasterStringOption(this):t.visitChildren(this)}},Zm=class extends Qm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MASTER_HEARTBEAT_PERIOD(){return this.getToken(FC.MASTER_HEARTBEAT_PERIOD,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}REAL_LITERAL(){return this.getToken(FC.REAL_LITERAL,0)}accept(t){return t.visitMasterRealOption?t.visitMasterRealOption(this):t.visitChildren(this)}},qm=class extends Qm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}boolMasterOption(){return this.getRuleContext(0,eD)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}accept(t){return t.visitMasterBoolOption?t.visitMasterBoolOption(this):t.visitChildren(this)}},jm=class extends Qm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}IGNORE_SERVER_IDS(){return this.getToken(FC.IGNORE_SERVER_IDS,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitMasterUidListOption?t.visitMasterUidListOption(this):t.visitChildren(this)}},zm=class extends Qm{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}decimalMasterOption(){return this.getRuleContext(0,tD)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}accept(t){return t.visitMasterDecimalOption?t.visitMasterDecimalOption(this):t.visitChildren(this)}},$m=class extends ga{constructor(t,e){super(t,e)}MASTER_BIND(){return this.getToken(FC.MASTER_BIND,0)}MASTER_HOST(){return this.getToken(FC.MASTER_HOST,0)}MASTER_USER(){return this.getToken(FC.MASTER_USER,0)}MASTER_PASSWORD(){return this.getToken(FC.MASTER_PASSWORD,0)}MASTER_LOG_FILE(){return this.getToken(FC.MASTER_LOG_FILE,0)}RELAY_LOG_FILE(){return this.getToken(FC.RELAY_LOG_FILE,0)}MASTER_SSL_CA(){return this.getToken(FC.MASTER_SSL_CA,0)}MASTER_SSL_CAPATH(){return this.getToken(FC.MASTER_SSL_CAPATH,0)}MASTER_SSL_CERT(){return this.getToken(FC.MASTER_SSL_CERT,0)}MASTER_SSL_CRL(){return this.getToken(FC.MASTER_SSL_CRL,0)}MASTER_SSL_CRLPATH(){return this.getToken(FC.MASTER_SSL_CRLPATH,0)}MASTER_SSL_KEY(){return this.getToken(FC.MASTER_SSL_KEY,0)}MASTER_SSL_CIPHER(){return this.getToken(FC.MASTER_SSL_CIPHER,0)}MASTER_TLS_VERSION(){return this.getToken(FC.MASTER_TLS_VERSION,0)}get ruleIndex(){return FC.RULE_stringMasterOption}accept(t){return t.visitStringMasterOption?t.visitStringMasterOption(this):t.visitChildren(this)}},tD=class extends ga{constructor(t,e){super(t,e)}MASTER_PORT(){return this.getToken(FC.MASTER_PORT,0)}MASTER_CONNECT_RETRY(){return this.getToken(FC.MASTER_CONNECT_RETRY,0)}MASTER_RETRY_COUNT(){return this.getToken(FC.MASTER_RETRY_COUNT,0)}MASTER_DELAY(){return this.getToken(FC.MASTER_DELAY,0)}MASTER_LOG_POS(){return this.getToken(FC.MASTER_LOG_POS,0)}RELAY_LOG_POS(){return this.getToken(FC.RELAY_LOG_POS,0)}get ruleIndex(){return FC.RULE_decimalMasterOption}accept(t){return t.visitDecimalMasterOption?t.visitDecimalMasterOption(this):t.visitChildren(this)}},eD=class extends ga{constructor(t,e){super(t,e)}MASTER_AUTO_POSITION(){return this.getToken(FC.MASTER_AUTO_POSITION,0)}MASTER_SSL(){return this.getToken(FC.MASTER_SSL,0)}MASTER_SSL_VERIFY_SERVER_CERT(){return this.getToken(FC.MASTER_SSL_VERIFY_SERVER_CERT,0)}get ruleIndex(){return FC.RULE_boolMasterOption}accept(t){return t.visitBoolMasterOption?t.visitBoolMasterOption(this):t.visitChildren(this)}},sD=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(FC.FOR,0)}CHANNEL(){return this.getToken(FC.CHANNEL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_channelOption}accept(t){return t.visitChannelOption?t.visitChannelOption(this):t.visitChildren(this)}},aD=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_replicationFilter}copyFrom(t){super.copyFrom(t)}},rD=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_WILD_IGNORE_TABLE(){return this.getToken(FC.REPLICATE_WILD_IGNORE_TABLE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}simpleStrings(){return this.getRuleContext(0,_k)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitWildIgnoreTableReplication?t.visitWildIgnoreTableReplication(this):t.visitChildren(this)}},iD=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_DO_TABLE(){return this.getToken(FC.REPLICATE_DO_TABLE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}tables(){return this.getRuleContext(0,Ik)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitDoTableReplication?t.visitDoTableReplication(this):t.visitChildren(this)}},cD=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_IGNORE_TABLE(){return this.getToken(FC.REPLICATE_IGNORE_TABLE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}tables(){return this.getRuleContext(0,Ik)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitIgnoreTableReplication?t.visitIgnoreTableReplication(this):t.visitChildren(this)}},nD=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_REWRITE_DB(){return this.getToken(FC.REPLICATE_REWRITE_DB,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}tablePair(t){return void 0===t?this.getRuleContexts(oD):this.getRuleContext(t,oD)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitRewriteDbReplication?t.visitRewriteDbReplication(this):t.visitChildren(this)}},hD=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_DO_DB(){return this.getToken(FC.REPLICATE_DO_DB,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitDoDbReplication?t.visitDoDbReplication(this):t.visitChildren(this)}},ED=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_IGNORE_DB(){return this.getToken(FC.REPLICATE_IGNORE_DB,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitIgnoreDbReplication?t.visitIgnoreDbReplication(this):t.visitChildren(this)}},TD=class extends aD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLICATE_WILD_DO_TABLE(){return this.getToken(FC.REPLICATE_WILD_DO_TABLE,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}simpleStrings(){return this.getRuleContext(0,_k)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitWildDoTableReplication?t.visitWildDoTableReplication(this):t.visitChildren(this)}},oD=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}COMMA(){return this.getToken(FC.COMMA,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}tableName(t){return void 0===t?this.getRuleContexts(lx):this.getRuleContext(t,lx)}get ruleIndex(){return FC.RULE_tablePair}accept(t){return t.visitTablePair?t.visitTablePair(this):t.visitChildren(this)}},RD=class extends ga{constructor(t,e){super(t,e)}IO_THREAD(){return this.getToken(FC.IO_THREAD,0)}SQL_THREAD(){return this.getToken(FC.SQL_THREAD,0)}get ruleIndex(){return FC.RULE_threadType}accept(t){return t.visitThreadType?t.visitThreadType(this):t.visitChildren(this)}},AD=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_untilOption}copyFrom(t){super.copyFrom(t)}},SD=class extends AD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}gtuidSet(){return this.getRuleContext(0,PD)}SQL_BEFORE_GTIDS(){return this.getToken(FC.SQL_BEFORE_GTIDS,0)}SQL_AFTER_GTIDS(){return this.getToken(FC.SQL_AFTER_GTIDS,0)}accept(t){return t.visitGtidsUntilOption?t.visitGtidsUntilOption(this):t.visitChildren(this)}},lD=class extends AD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SQL_AFTER_MTS_GAPS(){return this.getToken(FC.SQL_AFTER_MTS_GAPS,0)}accept(t){return t.visitSqlGapsUntilOption?t.visitSqlGapsUntilOption(this):t.visitChildren(this)}},OD=class extends AD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MASTER_LOG_FILE(){return this.getToken(FC.MASTER_LOG_FILE,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}COMMA(){return this.getToken(FC.COMMA,0)}MASTER_LOG_POS(){return this.getToken(FC.MASTER_LOG_POS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}accept(t){return t.visitMasterLogUntilOption?t.visitMasterLogUntilOption(this):t.visitChildren(this)}},ID=class extends AD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RELAY_LOG_FILE(){return this.getToken(FC.RELAY_LOG_FILE,0)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}COMMA(){return this.getToken(FC.COMMA,0)}RELAY_LOG_POS(){return this.getToken(FC.RELAY_LOG_POS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}accept(t){return t.visitRelayLogUntilOption?t.visitRelayLogUntilOption(this):t.visitChildren(this)}},uD=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_connectionOption}copyFrom(t){super.copyFrom(t)}},ND=class extends uD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PLUGIN_DIR(){return this.getToken(FC.PLUGIN_DIR,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitPluginDirConnectionOption?t.visitPluginDirConnectionOption(this):t.visitChildren(this)}},LD=class extends uD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}USER(){return this.getToken(FC.USER,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitUserConnectionOption?t.visitUserConnectionOption(this):t.visitChildren(this)}},CD=class extends uD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DEFAULT_AUTH(){return this.getToken(FC.DEFAULT_AUTH,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitDefaultAuthConnectionOption?t.visitDefaultAuthConnectionOption(this):t.visitChildren(this)}},_D=class extends uD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitPasswordConnectionOption?t.visitPasswordConnectionOption(this):t.visitChildren(this)}},PD=class extends ga{constructor(t,e){super(t,e)}uuidSet(t){return void 0===t?this.getRuleContexts(Yx):this.getRuleContext(t,Yx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_gtuidSet}accept(t){return t.visitGtuidSet?t.visitGtuidSet(this):t.visitChildren(this)}},MD=class extends ga{constructor(t,e){super(t,e)}XA(){return this.getToken(FC.XA,0)}xid(){return this.getRuleContext(0,wx)}START(){return this.getToken(FC.START,0)}BEGIN(){return this.getToken(FC.BEGIN,0)}JOIN(){return this.getToken(FC.JOIN,0)}RESUME(){return this.getToken(FC.RESUME,0)}get ruleIndex(){return FC.RULE_xaStartTransaction}accept(t){return t.visitXaStartTransaction?t.visitXaStartTransaction(this):t.visitChildren(this)}},dD=class extends ga{constructor(t,e){super(t,e)}XA(){return this.getToken(FC.XA,0)}END(){return this.getToken(FC.END,0)}xid(){return this.getRuleContext(0,wx)}SUSPEND(){return this.getToken(FC.SUSPEND,0)}FOR(){return this.getToken(FC.FOR,0)}MIGRATE(){return this.getToken(FC.MIGRATE,0)}get ruleIndex(){return FC.RULE_xaEndTransaction}accept(t){return t.visitXaEndTransaction?t.visitXaEndTransaction(this):t.visitChildren(this)}},UD=class extends ga{constructor(t,e){super(t,e)}XA(){return this.getToken(FC.XA,0)}PREPARE(){return this.getToken(FC.PREPARE,0)}xid(){return this.getRuleContext(0,wx)}get ruleIndex(){return FC.RULE_xaPrepareStatement}accept(t){return t.visitXaPrepareStatement?t.visitXaPrepareStatement(this):t.visitChildren(this)}},mD=class extends ga{constructor(t,e){super(t,e)}XA(){return this.getToken(FC.XA,0)}COMMIT(){return this.getToken(FC.COMMIT,0)}xid(){return this.getRuleContext(0,wx)}ONE(){return this.getToken(FC.ONE,0)}PHASE(){return this.getToken(FC.PHASE,0)}get ruleIndex(){return FC.RULE_xaCommitWork}accept(t){return t.visitXaCommitWork?t.visitXaCommitWork(this):t.visitChildren(this)}},DD=class extends ga{constructor(t,e){super(t,e)}XA(){return this.getToken(FC.XA,0)}ROLLBACK(){return this.getToken(FC.ROLLBACK,0)}xid(){return this.getRuleContext(0,wx)}get ruleIndex(){return FC.RULE_xaRollbackWork}accept(t){return t.visitXaRollbackWork?t.visitXaRollbackWork(this):t.visitChildren(this)}},pD=class extends ga{constructor(t,e){super(t,e)}XA(){return this.getToken(FC.XA,0)}RECOVER(){return this.getToken(FC.RECOVER,0)}CONVERT(){return this.getToken(FC.CONVERT,0)}xid(){return this.getRuleContext(0,wx)}get ruleIndex(){return FC.RULE_xaRecoverWork}accept(t){return t.visitXaRecoverWork?t.visitXaRecoverWork(this):t.visitChildren(this)}},gD=class extends ga{constructor(t,e){super(t,e)}PREPARE(){return this.getToken(FC.PREPARE,0)}uid(){return this.getRuleContext(0,Vx)}FROM(){return this.getToken(FC.FROM,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}get ruleIndex(){return FC.RULE_prepareStatement}accept(t){return t.visitPrepareStatement?t.visitPrepareStatement(this):t.visitChildren(this)}},xD=class extends ga{constructor(t,e){super(t,e)}EXECUTE(){return this.getToken(FC.EXECUTE,0)}uid(){return this.getRuleContext(0,Vx)}USING(){return this.getToken(FC.USING,0)}userVariables(){return this.getRuleContext(0,Pk)}get ruleIndex(){return FC.RULE_executeStatement}accept(t){return t.visitExecuteStatement?t.visitExecuteStatement(this):t.visitChildren(this)}},kD=class extends ga{constructor(t,e){super(t,e)}PREPARE(){return this.getToken(FC.PREPARE,0)}uid(){return this.getRuleContext(0,Vx)}DEALLOCATE(){return this.getToken(FC.DEALLOCATE,0)}DROP(){return this.getToken(FC.DROP,0)}get ruleIndex(){return FC.RULE_deallocatePrepare}accept(t){return t.visitDeallocatePrepare?t.visitDeallocatePrepare(this):t.visitChildren(this)}},HD=class extends ga{constructor(t,e){super(t,e)}blockStatement(){return this.getRuleContext(0,GD)}statement(){return this.getRuleContext(0,yC)}get ruleIndex(){return FC.RULE_routineBody}accept(t){return t.visitRoutineBody?t.visitRoutineBody(this):t.visitChildren(this)}},GD=class extends ga{constructor(t,e){super(t,e)}BEGIN(){return this.getToken(FC.BEGIN,0)}END(){return this.getToken(FC.END,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COLON_SYMB(){return this.getToken(FC.COLON_SYMB,0)}declareVariable(t){return void 0===t?this.getRuleContexts(QD):this.getRuleContext(t,QD)}SEMI(t){return void 0===t?this.getTokens(FC.SEMI):this.getToken(FC.SEMI,t)}declareCondition(t){return void 0===t?this.getRuleContexts(JD):this.getRuleContext(t,JD)}declareCursor(t){return void 0===t?this.getRuleContexts(ZD):this.getRuleContext(t,ZD)}declareHandler(t){return void 0===t?this.getRuleContexts(qD):this.getRuleContext(t,qD)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_blockStatement}accept(t){return t.visitBlockStatement?t.visitBlockStatement(this):t.visitChildren(this)}},FD=class extends ga{constructor(t,e){super(t,e)}CASE(t){return void 0===t?this.getTokens(FC.CASE):this.getToken(FC.CASE,t)}END(){return this.getToken(FC.END,0)}uid(){return this.getRuleContext(0,Vx)}expression(){return this.getRuleContext(0,NH)}caseAlternative(t){return void 0===t?this.getRuleContexts(ip):this.getRuleContext(t,ip)}ELSE(){return this.getToken(FC.ELSE,0)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_caseStatement}accept(t){return t.visitCaseStatement?t.visitCaseStatement(this):t.visitChildren(this)}},vD=class extends ga{constructor(t,e){super(t,e),this._thenStatements=[],this._elseStatements=[]}IF(t){return void 0===t?this.getTokens(FC.IF):this.getToken(FC.IF,t)}expression(){return this.getRuleContext(0,NH)}THEN(){return this.getToken(FC.THEN,0)}END(){return this.getToken(FC.END,0)}elifAlternative(t){return void 0===t?this.getRuleContexts(cp):this.getRuleContext(t,cp)}ELSE(){return this.getToken(FC.ELSE,0)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_ifStatement}accept(t){return t.visitIfStatement?t.visitIfStatement(this):t.visitChildren(this)}},BD=class extends ga{constructor(t,e){super(t,e)}ITERATE(){return this.getToken(FC.ITERATE,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_iterateStatement}accept(t){return t.visitIterateStatement?t.visitIterateStatement(this):t.visitChildren(this)}},yD=class extends ga{constructor(t,e){super(t,e)}LEAVE(){return this.getToken(FC.LEAVE,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_leaveStatement}accept(t){return t.visitLeaveStatement?t.visitLeaveStatement(this):t.visitChildren(this)}},fD=class extends ga{constructor(t,e){super(t,e)}LOOP(t){return void 0===t?this.getTokens(FC.LOOP):this.getToken(FC.LOOP,t)}END(){return this.getToken(FC.END,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COLON_SYMB(){return this.getToken(FC.COLON_SYMB,0)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_loopStatement}accept(t){return t.visitLoopStatement?t.visitLoopStatement(this):t.visitChildren(this)}},YD=class extends ga{constructor(t,e){super(t,e)}REPEAT(t){return void 0===t?this.getTokens(FC.REPEAT):this.getToken(FC.REPEAT,t)}UNTIL(){return this.getToken(FC.UNTIL,0)}expression(){return this.getRuleContext(0,NH)}END(){return this.getToken(FC.END,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COLON_SYMB(){return this.getToken(FC.COLON_SYMB,0)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_repeatStatement}accept(t){return t.visitRepeatStatement?t.visitRepeatStatement(this):t.visitChildren(this)}},wD=class extends ga{constructor(t,e){super(t,e)}RETURN(){return this.getToken(FC.RETURN,0)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_returnStatement}accept(t){return t.visitReturnStatement?t.visitReturnStatement(this):t.visitChildren(this)}},bD=class extends ga{constructor(t,e){super(t,e)}WHILE(t){return void 0===t?this.getTokens(FC.WHILE):this.getToken(FC.WHILE,t)}expression(){return this.getRuleContext(0,NH)}DO(){return this.getToken(FC.DO,0)}END(){return this.getToken(FC.END,0)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COLON_SYMB(){return this.getToken(FC.COLON_SYMB,0)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_whileStatement}accept(t){return t.visitWhileStatement?t.visitWhileStatement(this):t.visitChildren(this)}},WD=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_cursorStatement}copyFrom(t){super.copyFrom(t)}},VD=class extends WD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CLOSE(){return this.getToken(FC.CLOSE,0)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitCloseCursor?t.visitCloseCursor(this):t.visitChildren(this)}},XD=class extends WD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}OPEN(){return this.getToken(FC.OPEN,0)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitOpenCursor?t.visitOpenCursor(this):t.visitChildren(this)}},KD=class extends WD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FETCH(){return this.getToken(FC.FETCH,0)}uid(){return this.getRuleContext(0,Vx)}INTO(){return this.getToken(FC.INTO,0)}uidList(){return this.getRuleContext(0,lk)}FROM(){return this.getToken(FC.FROM,0)}NEXT(){return this.getToken(FC.NEXT,0)}accept(t){return t.visitFetchCursor?t.visitFetchCursor(this):t.visitChildren(this)}},QD=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(FC.DECLARE,0)}uidList(){return this.getRuleContext(0,lk)}dataType(){return this.getRuleContext(0,tk)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_declareVariable}accept(t){return t.visitDeclareVariable?t.visitDeclareVariable(this):t.visitChildren(this)}},JD=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(FC.DECLARE,0)}uid(){return this.getRuleContext(0,Vx)}CONDITION(){return this.getToken(FC.CONDITION,0)}FOR(){return this.getToken(FC.FOR,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}SQLSTATE(){return this.getToken(FC.SQLSTATE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}VALUE(){return this.getToken(FC.VALUE,0)}get ruleIndex(){return FC.RULE_declareCondition}accept(t){return t.visitDeclareCondition?t.visitDeclareCondition(this):t.visitChildren(this)}},ZD=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(FC.DECLARE,0)}uid(){return this.getRuleContext(0,Vx)}CURSOR(){return this.getToken(FC.CURSOR,0)}FOR(){return this.getToken(FC.FOR,0)}selectStatement(){return this.getRuleContext(0,rU)}get ruleIndex(){return FC.RULE_declareCursor}accept(t){return t.visitDeclareCursor?t.visitDeclareCursor(this):t.visitChildren(this)}},qD=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(FC.DECLARE,0)}HANDLER(){return this.getToken(FC.HANDLER,0)}FOR(){return this.getToken(FC.FOR,0)}handlerConditionValue(t){return void 0===t?this.getRuleContexts(jD):this.getRuleContext(t,jD)}routineBody(){return this.getRuleContext(0,HD)}CONTINUE(){return this.getToken(FC.CONTINUE,0)}EXIT(){return this.getToken(FC.EXIT,0)}UNDO(){return this.getToken(FC.UNDO,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_declareHandler}accept(t){return t.visitDeclareHandler?t.visitDeclareHandler(this):t.visitChildren(this)}},jD=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_handlerConditionValue}copyFrom(t){super.copyFrom(t)}},zD=class extends jD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SQLWARNING(){return this.getToken(FC.SQLWARNING,0)}accept(t){return t.visitHandlerConditionWarning?t.visitHandlerConditionWarning(this):t.visitChildren(this)}},$D=class extends jD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}decimalLiteral(){return this.getRuleContext(0,Qx)}accept(t){return t.visitHandlerConditionCode?t.visitHandlerConditionCode(this):t.visitChildren(this)}},tp=class extends jD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}NOT(){return this.getToken(FC.NOT,0)}FOUND(){return this.getToken(FC.FOUND,0)}accept(t){return t.visitHandlerConditionNotfound?t.visitHandlerConditionNotfound(this):t.visitChildren(this)}},ep=class extends jD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SQLSTATE(){return this.getToken(FC.SQLSTATE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}VALUE(){return this.getToken(FC.VALUE,0)}accept(t){return t.visitHandlerConditionState?t.visitHandlerConditionState(this):t.visitChildren(this)}},sp=class extends jD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SQLEXCEPTION(){return this.getToken(FC.SQLEXCEPTION,0)}accept(t){return t.visitHandlerConditionException?t.visitHandlerConditionException(this):t.visitChildren(this)}},ap=class extends jD{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitHandlerConditionName?t.visitHandlerConditionName(this):t.visitChildren(this)}},rp=class extends ga{constructor(t,e){super(t,e)}SEMI(){return this.getToken(FC.SEMI,0)}compoundStatement(){return this.getRuleContext(0,VC)}statement(){return this.getRuleContext(0,yC)}get ruleIndex(){return FC.RULE_procedureSqlStatement}accept(t){return t.visitProcedureSqlStatement?t.visitProcedureSqlStatement(this):t.visitChildren(this)}},ip=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(FC.WHEN,0)}THEN(){return this.getToken(FC.THEN,0)}constant(){return this.getRuleContext(0,$x)}expression(){return this.getRuleContext(0,NH)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_caseAlternative}accept(t){return t.visitCaseAlternative?t.visitCaseAlternative(this):t.visitChildren(this)}},cp=class extends ga{constructor(t,e){super(t,e)}ELSEIF(){return this.getToken(FC.ELSEIF,0)}expression(){return this.getRuleContext(0,NH)}THEN(){return this.getToken(FC.THEN,0)}procedureSqlStatement(t){return void 0===t?this.getRuleContexts(rp):this.getRuleContext(t,rp)}get ruleIndex(){return FC.RULE_elifAlternative}accept(t){return t.visitElifAlternative?t.visitElifAlternative(this):t.visitChildren(this)}},np=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_alterUser}copyFrom(t){super.copyFrom(t)}},hp=class extends np{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}USER(){return this.getToken(FC.USER,0)}newUserAuthOptionList(){return this.getRuleContext(0,dp)}ifExists(){return this.getRuleContext(0,mk)}REQUIRE(){return this.getToken(FC.REQUIRE,0)}WITH(){return this.getToken(FC.WITH,0)}userPasswordOption(t){return void 0===t?this.getRuleContexts(yp):this.getRuleContext(t,yp)}userLockOption(t){return void 0===t?this.getRuleContexts(fp):this.getRuleContext(t,fp)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ATTRIBUTE(){return this.getToken(FC.ATTRIBUTE,0)}tlsOption(t){return void 0===t?this.getRuleContexts(vp):this.getRuleContext(t,vp)}NONE(){return this.getToken(FC.NONE,0)}userResourceOption(t){return void 0===t?this.getRuleContexts(Bp):this.getRuleContext(t,Bp)}AND(t){return void 0===t?this.getTokens(FC.AND):this.getToken(FC.AND,t)}userName(){return this.getRuleContext(0,Gx)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}ROLE(){return this.getToken(FC.ROLE,0)}roleOption(){return this.getRuleContext(0,lp)}accept(t){return t.visitAlterUserMysqlV80?t.visitAlterUserMysqlV80(this):t.visitChildren(this)}},Ep=class extends np{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(FC.ALTER,0)}USER(){return this.getToken(FC.USER,0)}userSpecification(t){return void 0===t?this.getRuleContexts(Mp):this.getRuleContext(t,Mp)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitAlterUserMysqlV56?t.visitAlterUserMysqlV56(this):t.visitChildren(this)}},Tp=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_createUser}copyFrom(t){super.copyFrom(t)}},op=class extends Tp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CREATE(){return this.getToken(FC.CREATE,0)}USER(){return this.getToken(FC.USER,0)}newUserAuthOptionList(){return this.getRuleContext(0,dp)}accept(t){return t.visitCreateUserMysqlV56?t.visitCreateUserMysqlV56(this):t.visitChildren(this)}},Rp=class extends Tp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CREATE(){return this.getToken(FC.CREATE,0)}USER(){return this.getToken(FC.USER,0)}newUserAuthOptionList(){return this.getRuleContext(0,dp)}ifNotExists(){return this.getRuleContext(0,Dk)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}ROLE(){return this.getToken(FC.ROLE,0)}roleOption(){return this.getRuleContext(0,lp)}REQUIRE(){return this.getToken(FC.REQUIRE,0)}WITH(){return this.getToken(FC.WITH,0)}userPasswordOption(t){return void 0===t?this.getRuleContexts(yp):this.getRuleContext(t,yp)}userLockOption(t){return void 0===t?this.getRuleContexts(fp):this.getRuleContext(t,fp)}COMMENT(){return this.getToken(FC.COMMENT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ATTRIBUTE(){return this.getToken(FC.ATTRIBUTE,0)}tlsOption(t){return void 0===t?this.getRuleContexts(vp):this.getRuleContext(t,vp)}NONE(){return this.getToken(FC.NONE,0)}userResourceOption(t){return void 0===t?this.getRuleContexts(Bp):this.getRuleContext(t,Bp)}AND(t){return void 0===t?this.getTokens(FC.AND):this.getToken(FC.AND,t)}accept(t){return t.visitCreateUserMysqlV80?t.visitCreateUserMysqlV80(this):t.visitChildren(this)}},Ap=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(FC.DROP,0)}USER(){return this.getToken(FC.USER,0)}userNameList(){return this.getRuleContext(0,kx)}ifExists(){return this.getRuleContext(0,mk)}get ruleIndex(){return FC.RULE_dropUser}accept(t){return t.visitDropUser?t.visitDropUser(this):t.visitChildren(this)}},Sp=class extends ga{constructor(t,e){super(t,e)}GRANT(t){return void 0===t?this.getTokens(FC.GRANT):this.getToken(FC.GRANT,t)}privelegeClause(t){return void 0===t?this.getRuleContexts(Yp):this.getRuleContext(t,Yp)}ON(){return this.getToken(FC.ON,0)}privilegeLevel(){return this.getRuleContext(0,bp)}TO(){return this.getToken(FC.TO,0)}userOrRoleNameList(){return this.getRuleContext(0,ux)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}REQUIRE(){return this.getToken(FC.REQUIRE,0)}WITH(t){return void 0===t?this.getTokens(FC.WITH):this.getToken(FC.WITH,t)}AS(){return this.getToken(FC.AS,0)}userName(){return this.getRuleContext(0,Gx)}ROLE(){return this.getToken(FC.ROLE,0)}roleOption(){return this.getRuleContext(0,lp)}TABLE(){return this.getToken(FC.TABLE,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}tlsOption(t){return void 0===t?this.getRuleContexts(vp):this.getRuleContext(t,vp)}NONE(){return this.getToken(FC.NONE,0)}OPTION(t){return void 0===t?this.getTokens(FC.OPTION):this.getToken(FC.OPTION,t)}userResourceOption(t){return void 0===t?this.getRuleContexts(Bp):this.getRuleContext(t,Bp)}AND(t){return void 0===t?this.getTokens(FC.AND):this.getToken(FC.AND,t)}roleNameList(){return this.getRuleContext(0,Cx)}ADMIN(){return this.getToken(FC.ADMIN,0)}get ruleIndex(){return FC.RULE_grantStatement}accept(t){return t.visitGrantStatement?t.visitGrantStatement(this):t.visitChildren(this)}},lp=class extends ga{constructor(t,e){super(t,e)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}NONE(){return this.getToken(FC.NONE,0)}ALL(){return this.getToken(FC.ALL,0)}EXCEPT(){return this.getToken(FC.EXCEPT,0)}roleNameList(){return this.getRuleContext(0,Cx)}get ruleIndex(){return FC.RULE_roleOption}accept(t){return t.visitRoleOption?t.visitRoleOption(this):t.visitChildren(this)}},Op=class extends ga{constructor(t,e){super(t,e),this._toOther=[]}GRANT(t){return void 0===t?this.getTokens(FC.GRANT):this.getToken(FC.GRANT,t)}PROXY(){return this.getToken(FC.PROXY,0)}ON(){return this.getToken(FC.ON,0)}TO(){return this.getToken(FC.TO,0)}userName(t){return void 0===t?this.getRuleContexts(Gx):this.getRuleContext(t,Gx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}WITH(){return this.getToken(FC.WITH,0)}OPTION(){return this.getToken(FC.OPTION,0)}get ruleIndex(){return FC.RULE_grantProxy}accept(t){return t.visitGrantProxy?t.visitGrantProxy(this):t.visitChildren(this)}},Ip=class extends ga{constructor(t,e){super(t,e)}RENAME(){return this.getToken(FC.RENAME,0)}USER(){return this.getToken(FC.USER,0)}renameUserClause(t){return void 0===t?this.getRuleContexts(Zp):this.getRuleContext(t,Zp)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_renameUser}accept(t){return t.visitRenameUser?t.visitRenameUser(this):t.visitChildren(this)}},up=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_revokeStatement}copyFrom(t){super.copyFrom(t)}},Np=class extends up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REVOKE(){return this.getToken(FC.REVOKE,0)}ALL(){return this.getToken(FC.ALL,0)}COMMA(){return this.getToken(FC.COMMA,0)}GRANT(){return this.getToken(FC.GRANT,0)}OPTION(){return this.getToken(FC.OPTION,0)}FROM(){return this.getToken(FC.FROM,0)}userOrRoleNameList(){return this.getRuleContext(0,ux)}PRIVILEGES(){return this.getToken(FC.PRIVILEGES,0)}accept(t){return t.visitShortPrivilegeRevoke?t.visitShortPrivilegeRevoke(this):t.visitChildren(this)}},Lp=class extends up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REVOKE(){return this.getToken(FC.REVOKE,0)}roleNameList(){return this.getRuleContext(0,Cx)}FROM(){return this.getToken(FC.FROM,0)}userOrRoleNameList(t){return void 0===t?this.getRuleContexts(ux):this.getRuleContext(t,ux)}accept(t){return t.visitRoleRevoke?t.visitRoleRevoke(this):t.visitChildren(this)}},Cp=class extends up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REVOKE(){return this.getToken(FC.REVOKE,0)}privelegeClause(t){return void 0===t?this.getRuleContexts(Yp):this.getRuleContext(t,Yp)}ON(){return this.getToken(FC.ON,0)}privilegeLevel(){return this.getRuleContext(0,bp)}FROM(){return this.getToken(FC.FROM,0)}userOrRoleNameList(){return this.getRuleContext(0,ux)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}TABLE(){return this.getToken(FC.TABLE,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}accept(t){return t.visitDetailedPrivilegeRevoke?t.visitDetailedPrivilegeRevoke(this):t.visitChildren(this)}},_p=class extends ga{constructor(t,e){super(t,e),this._fromOther=[]}REVOKE(){return this.getToken(FC.REVOKE,0)}PROXY(){return this.getToken(FC.PROXY,0)}ON(){return this.getToken(FC.ON,0)}FROM(){return this.getToken(FC.FROM,0)}userName(t){return void 0===t?this.getRuleContexts(Gx):this.getRuleContext(t,Gx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_revokeProxy}accept(t){return t.visitRevokeProxy?t.visitRevokeProxy(this):t.visitChildren(this)}},Pp=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(FC.SET,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}passwordFunctionClause(){return this.getRuleContext(0,OH)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}FOR(){return this.getToken(FC.FOR,0)}userName(){return this.getRuleContext(0,Gx)}get ruleIndex(){return FC.RULE_setPasswordStatement}accept(t){return t.visitSetPasswordStatement?t.visitSetPasswordStatement(this):t.visitChildren(this)}},Mp=class extends ga{constructor(t,e){super(t,e)}userName(){return this.getRuleContext(0,Gx)}userPasswordOption(){return this.getRuleContext(0,yp)}get ruleIndex(){return FC.RULE_userSpecification}accept(t){return t.visitUserSpecification?t.visitUserSpecification(this):t.visitChildren(this)}},dp=class extends ga{constructor(t,e){super(t,e)}newUserAuthOption(t){return void 0===t?this.getRuleContexts(Up):this.getRuleContext(t,Up)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_newUserAuthOptionList}accept(t){return t.visitNewUserAuthOptionList?t.visitNewUserAuthOptionList(this):t.visitChildren(this)}},Up=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_newUserAuthOption}copyFrom(t){super.copyFrom(t)}},mp=class extends Up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}newUserName(){return this.getRuleContext(0,Hx)}accept(t){return t.visitSimpleAuthOption?t.visitSimpleAuthOption(this):t.visitChildren(this)}},Dp=class extends Up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}newUserName(){return this.getRuleContext(0,Hx)}IDENTIFIED(){return this.getToken(FC.IDENTIFIED,0)}WITH(){return this.getToken(FC.WITH,0)}authenticationRule(){return this.getRuleContext(0,Hp)}accept(t){return t.visitModuleAuthOption?t.visitModuleAuthOption(this):t.visitChildren(this)}},pp=class extends Up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}newUserName(){return this.getRuleContext(0,Hx)}IDENTIFIED(){return this.getToken(FC.IDENTIFIED,0)}BY(){return this.getToken(FC.BY,0)}RANDOM(){return this.getToken(FC.RANDOM,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}authOptionClause(){return this.getRuleContext(0,kp)}accept(t){return t.visitRandomAuthOption?t.visitRandomAuthOption(this):t.visitChildren(this)}},gp=class extends Up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}newUserName(){return this.getRuleContext(0,Hx)}IDENTIFIED(){return this.getToken(FC.IDENTIFIED,0)}BY(){return this.getToken(FC.BY,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}authOptionClause(){return this.getRuleContext(0,kp)}accept(t){return t.visitStringAuthOption?t.visitStringAuthOption(this):t.visitChildren(this)}},xp=class extends Up{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}newUserName(){return this.getRuleContext(0,Hx)}IDENTIFIED(){return this.getToken(FC.IDENTIFIED,0)}BY(){return this.getToken(FC.BY,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitHashAuthOption?t.visitHashAuthOption(this):t.visitChildren(this)}},kp=class extends ga{constructor(t,e){super(t,e)}REPLACE(){return this.getToken(FC.REPLACE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}RETAIN(){return this.getToken(FC.RETAIN,0)}CURRENT(){return this.getToken(FC.CURRENT,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}get ruleIndex(){return FC.RULE_authOptionClause}accept(t){return t.visitAuthOptionClause?t.visitAuthOptionClause(this):t.visitChildren(this)}},Hp=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_authenticationRule}copyFrom(t){super.copyFrom(t)}},Gp=class extends Hp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}authPlugin(){return this.getRuleContext(0,Wx)}USING(){return this.getToken(FC.USING,0)}passwordFunctionClause(){return this.getRuleContext(0,OH)}accept(t){return t.visitPasswordModuleOption?t.visitPasswordModuleOption(this):t.visitChildren(this)}},Fp=class extends Hp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}authPlugin(){return this.getRuleContext(0,Wx)}authOptionClause(){return this.getRuleContext(0,kp)}BY(){return this.getToken(FC.BY,0)}USING(){return this.getToken(FC.USING,0)}AS(){return this.getToken(FC.AS,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}RANDOM(){return this.getToken(FC.RANDOM,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}accept(t){return t.visitModule?t.visitModule(this):t.visitChildren(this)}},vp=class extends ga{constructor(t,e){super(t,e)}SSL(){return this.getToken(FC.SSL,0)}X509(){return this.getToken(FC.X509,0)}CIPHER(){return this.getToken(FC.CIPHER,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ISSUER(){return this.getToken(FC.ISSUER,0)}SUBJECT(){return this.getToken(FC.SUBJECT,0)}get ruleIndex(){return FC.RULE_tlsOption}accept(t){return t.visitTlsOption?t.visitTlsOption(this):t.visitChildren(this)}},Bp=class extends ga{constructor(t,e){super(t,e)}MAX_QUERIES_PER_HOUR(){return this.getToken(FC.MAX_QUERIES_PER_HOUR,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}MAX_UPDATES_PER_HOUR(){return this.getToken(FC.MAX_UPDATES_PER_HOUR,0)}MAX_CONNECTIONS_PER_HOUR(){return this.getToken(FC.MAX_CONNECTIONS_PER_HOUR,0)}MAX_USER_CONNECTIONS(){return this.getToken(FC.MAX_USER_CONNECTIONS,0)}get ruleIndex(){return FC.RULE_userResourceOption}accept(t){return t.visitUserResourceOption?t.visitUserResourceOption(this):t.visitChildren(this)}},yp=class extends ga{constructor(t,e){super(t,e)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}EXPIRE(){return this.getToken(FC.EXPIRE,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}DAY(){return this.getToken(FC.DAY,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}NEVER(){return this.getToken(FC.NEVER,0)}INTERVAL(){return this.getToken(FC.INTERVAL,0)}HISTORY(){return this.getToken(FC.HISTORY,0)}REUSE(){return this.getToken(FC.REUSE,0)}REQUIRE(){return this.getToken(FC.REQUIRE,0)}CURRENT(){return this.getToken(FC.CURRENT,0)}OPTIONAL(){return this.getToken(FC.OPTIONAL,0)}FAILED_LOGIN_ATTEMPTS(){return this.getToken(FC.FAILED_LOGIN_ATTEMPTS,0)}PASSWORD_LOCK_TIME(){return this.getToken(FC.PASSWORD_LOCK_TIME,0)}UNBOUNDED(){return this.getToken(FC.UNBOUNDED,0)}get ruleIndex(){return FC.RULE_userPasswordOption}accept(t){return t.visitUserPasswordOption?t.visitUserPasswordOption(this):t.visitChildren(this)}},fp=class extends ga{constructor(t,e){super(t,e)}ACCOUNT(){return this.getToken(FC.ACCOUNT,0)}LOCK(){return this.getToken(FC.LOCK,0)}UNLOCK(){return this.getToken(FC.UNLOCK,0)}get ruleIndex(){return FC.RULE_userLockOption}accept(t){return t.visitUserLockOption?t.visitUserLockOption(this):t.visitChildren(this)}},Yp=class extends ga{constructor(t,e){super(t,e)}privilege(){return this.getRuleContext(0,wp)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}get ruleIndex(){return FC.RULE_privelegeClause}accept(t){return t.visitPrivelegeClause?t.visitPrivelegeClause(this):t.visitChildren(this)}},wp=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(FC.ALL,0)}PRIVILEGES(){return this.getToken(FC.PRIVILEGES,0)}ALTER(){return this.getToken(FC.ALTER,0)}ROUTINE(){return this.getToken(FC.ROUTINE,0)}CREATE(){return this.getToken(FC.CREATE,0)}TEMPORARY(){return this.getToken(FC.TEMPORARY,0)}TABLES(){return this.getToken(FC.TABLES,0)}VIEW(){return this.getToken(FC.VIEW,0)}USER(){return this.getToken(FC.USER,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}ROLE(){return this.getToken(FC.ROLE,0)}DELETE(){return this.getToken(FC.DELETE,0)}DROP(){return this.getToken(FC.DROP,0)}EVENT(){return this.getToken(FC.EVENT,0)}EXECUTE(){return this.getToken(FC.EXECUTE,0)}FILE(){return this.getToken(FC.FILE,0)}GRANT(){return this.getToken(FC.GRANT,0)}OPTION(){return this.getToken(FC.OPTION,0)}INDEX(){return this.getToken(FC.INDEX,0)}INSERT(){return this.getToken(FC.INSERT,0)}LOCK(){return this.getToken(FC.LOCK,0)}PROCESS(){return this.getToken(FC.PROCESS,0)}PROXY(){return this.getToken(FC.PROXY,0)}REFERENCES(){return this.getToken(FC.REFERENCES,0)}RELOAD(){return this.getToken(FC.RELOAD,0)}REPLICATION(){return this.getToken(FC.REPLICATION,0)}CLIENT(){return this.getToken(FC.CLIENT,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}SELECT(){return this.getToken(FC.SELECT,0)}SHOW(){return this.getToken(FC.SHOW,0)}DATABASES(){return this.getToken(FC.DATABASES,0)}SHUTDOWN(){return this.getToken(FC.SHUTDOWN,0)}SUPER(){return this.getToken(FC.SUPER,0)}TRIGGER(){return this.getToken(FC.TRIGGER,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}USAGE(){return this.getToken(FC.USAGE,0)}APPLICATION_PASSWORD_ADMIN(){return this.getToken(FC.APPLICATION_PASSWORD_ADMIN,0)}AUDIT_ABORT_EXEMPT(){return this.getToken(FC.AUDIT_ABORT_EXEMPT,0)}AUDIT_ADMIN(){return this.getToken(FC.AUDIT_ADMIN,0)}AUTHENTICATION_POLICY_ADMIN(){return this.getToken(FC.AUTHENTICATION_POLICY_ADMIN,0)}BACKUP_ADMIN(){return this.getToken(FC.BACKUP_ADMIN,0)}BINLOG_ADMIN(){return this.getToken(FC.BINLOG_ADMIN,0)}BINLOG_ENCRYPTION_ADMIN(){return this.getToken(FC.BINLOG_ENCRYPTION_ADMIN,0)}CLONE_ADMIN(){return this.getToken(FC.CLONE_ADMIN,0)}CONNECTION_ADMIN(){return this.getToken(FC.CONNECTION_ADMIN,0)}ENCRYPTION_KEY_ADMIN(){return this.getToken(FC.ENCRYPTION_KEY_ADMIN,0)}FIREWALL_ADMIN(){return this.getToken(FC.FIREWALL_ADMIN,0)}FIREWALL_EXEMPT(){return this.getToken(FC.FIREWALL_EXEMPT,0)}FIREWALL_USER(){return this.getToken(FC.FIREWALL_USER,0)}FLUSH_OPTIMIZER_COSTS(){return this.getToken(FC.FLUSH_OPTIMIZER_COSTS,0)}FLUSH_STATUS(){return this.getToken(FC.FLUSH_STATUS,0)}FLUSH_TABLES(){return this.getToken(FC.FLUSH_TABLES,0)}FLUSH_USER_RESOURCES(){return this.getToken(FC.FLUSH_USER_RESOURCES,0)}GROUP_REPLICATION_ADMIN(){return this.getToken(FC.GROUP_REPLICATION_ADMIN,0)}INNODB_REDO_LOG_ARCHIVE(){return this.getToken(FC.INNODB_REDO_LOG_ARCHIVE,0)}INNODB_REDO_LOG_ENABLE(){return this.getToken(FC.INNODB_REDO_LOG_ENABLE,0)}NDB_STORED_USER(){return this.getToken(FC.NDB_STORED_USER,0)}PASSWORDLESS_USER_ADMIN(){return this.getToken(FC.PASSWORDLESS_USER_ADMIN,0)}PERSIST_RO_VARIABLES_ADMIN(){return this.getToken(FC.PERSIST_RO_VARIABLES_ADMIN,0)}REPLICATION_APPLIER(){return this.getToken(FC.REPLICATION_APPLIER,0)}REPLICATION_SLAVE_ADMIN(){return this.getToken(FC.REPLICATION_SLAVE_ADMIN,0)}RESOURCE_GROUP_ADMIN(){return this.getToken(FC.RESOURCE_GROUP_ADMIN,0)}RESOURCE_GROUP_USER(){return this.getToken(FC.RESOURCE_GROUP_USER,0)}ROLE_ADMIN(){return this.getToken(FC.ROLE_ADMIN,0)}SERVICE_CONNECTION_ADMIN(){return this.getToken(FC.SERVICE_CONNECTION_ADMIN,0)}SESSION_VARIABLES_ADMIN(){return this.getToken(FC.SESSION_VARIABLES_ADMIN,0)}SET_USER_ID(){return this.getToken(FC.SET_USER_ID,0)}SKIP_QUERY_REWRITE(){return this.getToken(FC.SKIP_QUERY_REWRITE,0)}SHOW_ROUTINE(){return this.getToken(FC.SHOW_ROUTINE,0)}SYSTEM_USER(){return this.getToken(FC.SYSTEM_USER,0)}SYSTEM_VARIABLES_ADMIN(){return this.getToken(FC.SYSTEM_VARIABLES_ADMIN,0)}TABLE_ENCRYPTION_ADMIN(){return this.getToken(FC.TABLE_ENCRYPTION_ADMIN,0)}TP_CONNECTION_ADMIN(){return this.getToken(FC.TP_CONNECTION_ADMIN,0)}VERSION_TOKEN_ADMIN(){return this.getToken(FC.VERSION_TOKEN_ADMIN,0)}XA_RECOVER_ADMIN(){return this.getToken(FC.XA_RECOVER_ADMIN,0)}LOAD(){return this.getToken(FC.LOAD,0)}FROM(){return this.getToken(FC.FROM,0)}S3(){return this.getToken(FC.S3,0)}INTO(){return this.getToken(FC.INTO,0)}INVOKE(){return this.getToken(FC.INVOKE,0)}LAMBDA(){return this.getToken(FC.LAMBDA,0)}get ruleIndex(){return FC.RULE_privilege}accept(t){return t.visitPrivilege?t.visitPrivilege(this):t.visitChildren(this)}},bp=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_privilegeLevel}copyFrom(t){super.copyFrom(t)}},Wp=class extends bp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}uid(){return this.getRuleContext(0,Vx)}DOT(){return this.getToken(FC.DOT,0)}STAR(){return this.getToken(FC.STAR,0)}accept(t){return t.visitDefiniteSchemaPrivLevel?t.visitDefiniteSchemaPrivLevel(this):t.visitChildren(this)}},Vp=class extends bp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}uid(){return this.getRuleContext(0,Vx)}dottedId(){return this.getRuleContext(0,Kx)}accept(t){return t.visitDefiniteFullTablePrivLevel2?t.visitDefiniteFullTablePrivLevel2(this):t.visitChildren(this)}},Xp=class extends bp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}DOT(){return this.getToken(FC.DOT,0)}accept(t){return t.visitDefiniteFullTablePrivLevel?t.visitDefiniteFullTablePrivLevel(this):t.visitChildren(this)}},Kp=class extends bp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STAR(t){return void 0===t?this.getTokens(FC.STAR):this.getToken(FC.STAR,t)}DOT(){return this.getToken(FC.DOT,0)}accept(t){return t.visitGlobalPrivLevel?t.visitGlobalPrivLevel(this):t.visitChildren(this)}},Qp=class extends bp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitDefiniteTablePrivLevel?t.visitDefiniteTablePrivLevel(this):t.visitChildren(this)}},Jp=class extends bp{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}STAR(){return this.getToken(FC.STAR,0)}accept(t){return t.visitCurrentSchemaPriviLevel?t.visitCurrentSchemaPriviLevel(this):t.visitChildren(this)}},Zp=class extends ga{constructor(t,e){super(t,e)}userName(){return this.getRuleContext(0,Gx)}TO(){return this.getToken(FC.TO,0)}newUserName(){return this.getRuleContext(0,Hx)}get ruleIndex(){return FC.RULE_renameUserClause}accept(t){return t.visitRenameUserClause?t.visitRenameUserClause(this):t.visitChildren(this)}},qp=class extends ga{constructor(t,e){super(t,e)}ANALYZE(){return this.getToken(FC.ANALYZE,0)}tables(){return this.getRuleContext(0,Ik)}TABLE(){return this.getToken(FC.TABLE,0)}TABLES(){return this.getToken(FC.TABLES,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}HISTOGRAM(t){return void 0===t?this.getTokens(FC.HISTOGRAM):this.getToken(FC.HISTOGRAM,t)}ON(t){return void 0===t?this.getTokens(FC.ON):this.getToken(FC.ON,t)}fullColumnName(t){return void 0===t?this.getRuleContexts(Px):this.getRuleContext(t,Px)}DROP(){return this.getToken(FC.DROP,0)}NO_WRITE_TO_BINLOG(){return this.getToken(FC.NO_WRITE_TO_BINLOG,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}WITH(){return this.getToken(FC.WITH,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}BUCKETS(){return this.getToken(FC.BUCKETS,0)}get ruleIndex(){return FC.RULE_analyzeTable}accept(t){return t.visitAnalyzeTable?t.visitAnalyzeTable(this):t.visitChildren(this)}},jp=class extends ga{constructor(t,e){super(t,e)}CHECK(){return this.getToken(FC.CHECK,0)}TABLE(){return this.getToken(FC.TABLE,0)}tables(){return this.getRuleContext(0,Ik)}checkTableOption(t){return void 0===t?this.getRuleContexts(eg):this.getRuleContext(t,eg)}get ruleIndex(){return FC.RULE_checkTable}accept(t){return t.visitCheckTable?t.visitCheckTable(this):t.visitChildren(this)}},zp=class extends ga{constructor(t,e){super(t,e)}CHECKSUM(){return this.getToken(FC.CHECKSUM,0)}TABLE(){return this.getToken(FC.TABLE,0)}tables(){return this.getRuleContext(0,Ik)}QUICK(){return this.getToken(FC.QUICK,0)}EXTENDED(){return this.getToken(FC.EXTENDED,0)}get ruleIndex(){return FC.RULE_checksumTable}accept(t){return t.visitChecksumTable?t.visitChecksumTable(this):t.visitChildren(this)}},$p=class extends ga{constructor(t,e){super(t,e)}OPTIMIZE(){return this.getToken(FC.OPTIMIZE,0)}tables(){return this.getRuleContext(0,Ik)}TABLE(){return this.getToken(FC.TABLE,0)}TABLES(){return this.getToken(FC.TABLES,0)}NO_WRITE_TO_BINLOG(){return this.getToken(FC.NO_WRITE_TO_BINLOG,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}get ruleIndex(){return FC.RULE_optimizeTable}accept(t){return t.visitOptimizeTable?t.visitOptimizeTable(this):t.visitChildren(this)}},tg=class extends ga{constructor(t,e){super(t,e)}REPAIR(){return this.getToken(FC.REPAIR,0)}TABLE(){return this.getToken(FC.TABLE,0)}tables(){return this.getRuleContext(0,Ik)}QUICK(){return this.getToken(FC.QUICK,0)}EXTENDED(){return this.getToken(FC.EXTENDED,0)}USE_FRM(){return this.getToken(FC.USE_FRM,0)}NO_WRITE_TO_BINLOG(){return this.getToken(FC.NO_WRITE_TO_BINLOG,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}get ruleIndex(){return FC.RULE_repairTable}accept(t){return t.visitRepairTable?t.visitRepairTable(this):t.visitChildren(this)}},eg=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(FC.FOR,0)}UPGRADE(){return this.getToken(FC.UPGRADE,0)}QUICK(){return this.getToken(FC.QUICK,0)}FAST(){return this.getToken(FC.FAST,0)}MEDIUM(){return this.getToken(FC.MEDIUM,0)}EXTENDED(){return this.getToken(FC.EXTENDED,0)}CHANGED(){return this.getToken(FC.CHANGED,0)}get ruleIndex(){return FC.RULE_checkTableOption}accept(t){return t.visitCheckTableOption?t.visitCheckTableOption(this):t.visitChildren(this)}},sg=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(FC.CREATE,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}uid(){return this.getRuleContext(0,Vx)}RETURNS(){return this.getToken(FC.RETURNS,0)}SONAME(){return this.getToken(FC.SONAME,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}STRING(){return this.getToken(FC.STRING,0)}INTEGER(){return this.getToken(FC.INTEGER,0)}REAL(){return this.getToken(FC.REAL,0)}DECIMAL(){return this.getToken(FC.DECIMAL,0)}AGGREGATE(){return this.getToken(FC.AGGREGATE,0)}ifNotExists(){return this.getRuleContext(0,Dk)}get ruleIndex(){return FC.RULE_createUdfunction}accept(t){return t.visitCreateUdfunction?t.visitCreateUdfunction(this):t.visitChildren(this)}},ag=class extends ga{constructor(t,e){super(t,e)}INSTALL(){return this.getToken(FC.INSTALL,0)}PLUGIN(){return this.getToken(FC.PLUGIN,0)}uid(){return this.getRuleContext(0,Vx)}SONAME(){return this.getToken(FC.SONAME,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_installPlugin}accept(t){return t.visitInstallPlugin?t.visitInstallPlugin(this):t.visitChildren(this)}},rg=class extends ga{constructor(t,e){super(t,e)}UNINSTALL(){return this.getToken(FC.UNINSTALL,0)}PLUGIN(){return this.getToken(FC.PLUGIN,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_uninstallPlugin}accept(t){return t.visitUninstallPlugin?t.visitUninstallPlugin(this):t.visitChildren(this)}},ig=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_setStatement}copyFrom(t){super.copyFrom(t)}},cg=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}setTransactionStatement(){return this.getRuleContext(0,km)}accept(t){return t.visitSetTransaction?t.visitSetTransaction(this):t.visitChildren(this)}},ng=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SET(){return this.getToken(FC.SET,0)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}accept(t){return t.visitSetCharset?t.visitSetCharset(this):t.visitChildren(this)}},hg=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SET(){return this.getToken(FC.SET,0)}NAMES(){return this.getToken(FC.NAMES,0)}charsetName(){return this.getRuleContext(0,vx)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitSetNames?t.visitSetNames(this):t.visitChildren(this)}},Eg=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}setPasswordStatement(){return this.getRuleContext(0,Pp)}accept(t){return t.visitSetPassword?t.visitSetPassword(this):t.visitChildren(this)}},Tg=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}setAutocommitStatement(){return this.getRuleContext(0,xm)}accept(t){return t.visitSetAutocommit?t.visitSetAutocommit(this):t.visitChildren(this)}},og=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SET(){return this.getToken(FC.SET,0)}fullId(t){return void 0===t?this.getRuleContexts(Sx):this.getRuleContext(t,Sx)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}VAR_ASSIGN(t){return void 0===t?this.getTokens(FC.VAR_ASSIGN):this.getToken(FC.VAR_ASSIGN,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitSetNewValueInsideTrigger?t.visitSetNewValueInsideTrigger(this):t.visitChildren(this)}},Rg=class extends ig{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SET(){return this.getToken(FC.SET,0)}variableClause(t){return void 0===t?this.getRuleContexts(Gg):this.getRuleContext(t,Gg)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}VAR_ASSIGN(t){return void 0===t?this.getTokens(FC.VAR_ASSIGN):this.getToken(FC.VAR_ASSIGN,t)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}ON(t){return void 0===t?this.getTokens(FC.ON):this.getToken(FC.ON,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitSetVariable?t.visitSetVariable(this):t.visitChildren(this)}},Ag=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_showStatement}copyFrom(t){super.copyFrom(t)}},Sg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}OPEN(){return this.getToken(FC.OPEN,0)}TABLES(){return this.getToken(FC.TABLES,0)}uid(){return this.getRuleContext(0,Vx)}showFilter(){return this.getRuleContext(0,vg)}FROM(){return this.getToken(FC.FROM,0)}IN(){return this.getToken(FC.IN,0)}accept(t){return t.visitShowOpenTables?t.visitShowOpenTables(this):t.visitChildren(this)}},lg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}showGlobalInfoClause(){return this.getRuleContext(0,Bg)}accept(t){return t.visitShowGlobalInfo?t.visitShowGlobalInfo(this):t.visitChildren(this)}},Og=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}CREATE(){return this.getToken(FC.CREATE,0)}fullId(){return this.getRuleContext(0,Sx)}EVENT(){return this.getToken(FC.EVENT,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}accept(t){return t.visitShowCreateFullIdObject?t.visitShowCreateFullIdObject(this):t.visitChildren(this)}},Ig=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}CREATE(){return this.getToken(FC.CREATE,0)}USER(){return this.getToken(FC.USER,0)}userName(){return this.getRuleContext(0,Gx)}accept(t){return t.visitShowCreateUser?t.visitShowCreateUser(this):t.visitChildren(this)}},ug=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}ERRORS(){return this.getToken(FC.ERRORS,0)}WARNINGS(){return this.getToken(FC.WARNINGS,0)}LIMIT(){return this.getToken(FC.LIMIT,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}COMMA(){return this.getToken(FC.COMMA,0)}accept(t){return t.visitShowErrors?t.visitShowErrors(this):t.visitChildren(this)}},Ng=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}COUNT(){return this.getToken(FC.COUNT,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}STAR(){return this.getToken(FC.STAR,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}ERRORS(){return this.getToken(FC.ERRORS,0)}WARNINGS(){return this.getToken(FC.WARNINGS,0)}accept(t){return t.visitShowCountErrors?t.visitShowCountErrors(this):t.visitChildren(this)}},Lg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}showCommonEntity(){return this.getRuleContext(0,Fg)}showFilter(){return this.getRuleContext(0,vg)}accept(t){return t.visitShowObjectFilter?t.visitShowObjectFilter(this):t.visitChildren(this)}},Cg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}CREATE(){return this.getToken(FC.CREATE,0)}databaseName(){return this.getRuleContext(0,Mx)}DATABASE(){return this.getToken(FC.DATABASE,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}ifNotExists(){return this.getRuleContext(0,Dk)}accept(t){return t.visitShowCreateDb?t.visitShowCreateDb(this):t.visitChildren(this)}},_g=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}engineName(){return this.getRuleContext(0,yx)}STATUS(){return this.getToken(FC.STATUS,0)}MUTEX(){return this.getToken(FC.MUTEX,0)}accept(t){return t.visitShowEngine?t.visitShowEngine(this):t.visitChildren(this)}},Pg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}showSchemaEntity(){return this.getRuleContext(0,yg)}uid(){return this.getRuleContext(0,Vx)}showFilter(){return this.getRuleContext(0,vg)}FROM(){return this.getToken(FC.FROM,0)}IN(){return this.getToken(FC.IN,0)}accept(t){return t.visitShowSchemaFilter?t.visitShowSchemaFilter(this):t.visitChildren(this)}},Mg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}tableName(){return this.getRuleContext(0,lx)}INDEX(){return this.getToken(FC.INDEX,0)}INDEXES(){return this.getToken(FC.INDEXES,0)}KEYS(){return this.getToken(FC.KEYS,0)}FROM(t){return void 0===t?this.getTokens(FC.FROM):this.getToken(FC.FROM,t)}IN(t){return void 0===t?this.getTokens(FC.IN):this.getToken(FC.IN,t)}uid(){return this.getRuleContext(0,Vx)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}accept(t){return t.visitShowIndexes?t.visitShowIndexes(this):t.visitChildren(this)}},dg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}EVENTS(){return this.getToken(FC.EVENTS,0)}BINLOG(){return this.getToken(FC.BINLOG,0)}RELAYLOG(){return this.getToken(FC.RELAYLOG,0)}IN(){return this.getToken(FC.IN,0)}FROM(){return this.getToken(FC.FROM,0)}LIMIT(){return this.getToken(FC.LIMIT,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}COMMA(){return this.getToken(FC.COMMA,0)}accept(t){return t.visitShowLogEvents?t.visitShowLogEvents(this):t.visitChildren(this)}},Ug=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}CREATE(){return this.getToken(FC.CREATE,0)}TRIGGER(){return this.getToken(FC.TRIGGER,0)}triggerName(){return this.getRuleContext(0,mx)}accept(t){return t.visitShowCreateTrigger?t.visitShowCreateTrigger(this):t.visitChildren(this)}},mg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}LOGS(){return this.getToken(FC.LOGS,0)}BINARY(){return this.getToken(FC.BINARY,0)}MASTER(){return this.getToken(FC.MASTER,0)}accept(t){return t.visitShowMasterLogs?t.visitShowMasterLogs(this):t.visitChildren(this)}},Dg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}GRANTS(){return this.getToken(FC.GRANTS,0)}FOR(){return this.getToken(FC.FOR,0)}userName(){return this.getRuleContext(0,Gx)}accept(t){return t.visitShowGrants?t.visitShowGrants(this):t.visitChildren(this)}},pg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}STATUS(){return this.getToken(FC.STATUS,0)}FOR(){return this.getToken(FC.FOR,0)}CHANNEL(){return this.getToken(FC.CHANNEL,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitShowSlaveStatus?t.visitShowSlaveStatus(this):t.visitChildren(this)}},gg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}CODE(){return this.getToken(FC.CODE,0)}fullId(){return this.getRuleContext(0,Sx)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}accept(t){return t.visitShowRoutine?t.visitShowRoutine(this):t.visitChildren(this)}},xg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}PROFILE(){return this.getToken(FC.PROFILE,0)}showProfileType(t){return void 0===t?this.getRuleContexts(fg):this.getRuleContext(t,fg)}LIMIT(){return this.getToken(FC.LIMIT,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}FOR(){return this.getToken(FC.FOR,0)}QUERY(){return this.getToken(FC.QUERY,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}accept(t){return t.visitShowProfile?t.visitShowProfile(this):t.visitChildren(this)}},kg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}tableName(){return this.getRuleContext(0,lx)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}FIELDS(){return this.getToken(FC.FIELDS,0)}FROM(t){return void 0===t?this.getTokens(FC.FROM):this.getToken(FC.FROM,t)}IN(t){return void 0===t?this.getTokens(FC.IN):this.getToken(FC.IN,t)}FULL(){return this.getToken(FC.FULL,0)}uid(){return this.getRuleContext(0,Vx)}showFilter(){return this.getRuleContext(0,vg)}accept(t){return t.visitShowColumns?t.visitShowColumns(this):t.visitChildren(this)}},Hg=class extends Ag{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(FC.SHOW,0)}CREATE(){return this.getToken(FC.CREATE,0)}tableName(){return this.getRuleContext(0,lx)}TABLE(){return this.getToken(FC.TABLE,0)}VIEW(){return this.getToken(FC.VIEW,0)}accept(t){return t.visitShowCreateTableOrView?t.visitShowCreateTableOrView(this):t.visitChildren(this)}},Gg=class extends ga{constructor(t,e){super(t,e)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}GLOBAL_ID(){return this.getToken(FC.GLOBAL_ID,0)}uid(){return this.getRuleContext(0,Vx)}GLOBAL(){return this.getToken(FC.GLOBAL,0)}SESSION(){return this.getToken(FC.SESSION,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}AT_SIGN(t){return void 0===t?this.getTokens(FC.AT_SIGN):this.getToken(FC.AT_SIGN,t)}get ruleIndex(){return FC.RULE_variableClause}accept(t){return t.visitVariableClause?t.visitVariableClause(this):t.visitChildren(this)}},Fg=class extends ga{constructor(t,e){super(t,e)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}SET(){return this.getToken(FC.SET,0)}COLLATION(){return this.getToken(FC.COLLATION,0)}DATABASES(){return this.getToken(FC.DATABASES,0)}SCHEMAS(){return this.getToken(FC.SCHEMAS,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}STATUS(){return this.getToken(FC.STATUS,0)}PROCEDURE(){return this.getToken(FC.PROCEDURE,0)}VARIABLES(){return this.getToken(FC.VARIABLES,0)}GLOBAL(){return this.getToken(FC.GLOBAL,0)}SESSION(){return this.getToken(FC.SESSION,0)}get ruleIndex(){return FC.RULE_showCommonEntity}accept(t){return t.visitShowCommonEntity?t.visitShowCommonEntity(this):t.visitChildren(this)}},vg=class extends ga{constructor(t,e){super(t,e)}LIKE(){return this.getToken(FC.LIKE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}WHERE(){return this.getToken(FC.WHERE,0)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_showFilter}accept(t){return t.visitShowFilter?t.visitShowFilter(this):t.visitChildren(this)}},Bg=class extends ga{constructor(t,e){super(t,e)}ENGINES(){return this.getToken(FC.ENGINES,0)}STORAGE(){return this.getToken(FC.STORAGE,0)}MASTER(){return this.getToken(FC.MASTER,0)}STATUS(){return this.getToken(FC.STATUS,0)}PLUGINS(){return this.getToken(FC.PLUGINS,0)}PRIVILEGES(){return this.getToken(FC.PRIVILEGES,0)}PROCESSLIST(){return this.getToken(FC.PROCESSLIST,0)}FULL(){return this.getToken(FC.FULL,0)}PROFILES(){return this.getToken(FC.PROFILES,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}HOSTS(){return this.getToken(FC.HOSTS,0)}AUTHORS(){return this.getToken(FC.AUTHORS,0)}CONTRIBUTORS(){return this.getToken(FC.CONTRIBUTORS,0)}get ruleIndex(){return FC.RULE_showGlobalInfoClause}accept(t){return t.visitShowGlobalInfoClause?t.visitShowGlobalInfoClause(this):t.visitChildren(this)}},yg=class extends ga{constructor(t,e){super(t,e)}EVENTS(){return this.getToken(FC.EVENTS,0)}TABLE(){return this.getToken(FC.TABLE,0)}STATUS(){return this.getToken(FC.STATUS,0)}TABLES(){return this.getToken(FC.TABLES,0)}FULL(){return this.getToken(FC.FULL,0)}TRIGGERS(){return this.getToken(FC.TRIGGERS,0)}get ruleIndex(){return FC.RULE_showSchemaEntity}accept(t){return t.visitShowSchemaEntity?t.visitShowSchemaEntity(this):t.visitChildren(this)}},fg=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(FC.ALL,0)}BLOCK(){return this.getToken(FC.BLOCK,0)}IO(){return this.getToken(FC.IO,0)}CONTEXT(){return this.getToken(FC.CONTEXT,0)}SWITCHES(){return this.getToken(FC.SWITCHES,0)}CPU(){return this.getToken(FC.CPU,0)}IPC(){return this.getToken(FC.IPC,0)}MEMORY(){return this.getToken(FC.MEMORY,0)}PAGE(){return this.getToken(FC.PAGE,0)}FAULTS(){return this.getToken(FC.FAULTS,0)}SOURCE(){return this.getToken(FC.SOURCE,0)}SWAPS(){return this.getToken(FC.SWAPS,0)}get ruleIndex(){return FC.RULE_showProfileType}accept(t){return t.visitShowProfileType?t.visitShowProfileType(this):t.visitChildren(this)}},Yg=class extends ga{constructor(t,e){super(t,e)}BINLOG(){return this.getToken(FC.BINLOG,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_binlogStatement}accept(t){return t.visitBinlogStatement?t.visitBinlogStatement(this):t.visitChildren(this)}},wg=class extends ga{constructor(t,e){super(t,e)}CACHE(){return this.getToken(FC.CACHE,0)}INDEX(){return this.getToken(FC.INDEX,0)}tableIndexes(t){return void 0===t?this.getRuleContexts(Qg):this.getRuleContext(t,Qg)}IN(){return this.getToken(FC.IN,0)}uid(){return this.getRuleContext(0,Vx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}uidList(){return this.getRuleContext(0,lk)}ALL(){return this.getToken(FC.ALL,0)}get ruleIndex(){return FC.RULE_cacheIndexStatement}accept(t){return t.visitCacheIndexStatement?t.visitCacheIndexStatement(this):t.visitChildren(this)}},bg=class extends ga{constructor(t,e){super(t,e)}FLUSH(){return this.getToken(FC.FLUSH,0)}flushOption(t){return void 0===t?this.getRuleContexts(Jg):this.getRuleContext(t,Jg)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}NO_WRITE_TO_BINLOG(){return this.getToken(FC.NO_WRITE_TO_BINLOG,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}get ruleIndex(){return FC.RULE_flushStatement}accept(t){return t.visitFlushStatement?t.visitFlushStatement(this):t.visitChildren(this)}},Wg=class extends ga{constructor(t,e){super(t,e)}KILL(){return this.getToken(FC.KILL,0)}expression(){return this.getRuleContext(0,NH)}CONNECTION(){return this.getToken(FC.CONNECTION,0)}QUERY(){return this.getToken(FC.QUERY,0)}get ruleIndex(){return FC.RULE_killStatement}accept(t){return t.visitKillStatement?t.visitKillStatement(this):t.visitChildren(this)}},Vg=class extends ga{constructor(t,e){super(t,e)}LOAD(){return this.getToken(FC.LOAD,0)}INDEX(){return this.getToken(FC.INDEX,0)}INTO(){return this.getToken(FC.INTO,0)}CACHE(){return this.getToken(FC.CACHE,0)}loadedTableIndexes(t){return void 0===t?this.getRuleContexts($g):this.getRuleContext(t,$g)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_loadIndexIntoCache}accept(t){return t.visitLoadIndexIntoCache?t.visitLoadIndexIntoCache(this):t.visitChildren(this)}},Xg=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(FC.RESET,0)}QUERY(){return this.getToken(FC.QUERY,0)}CACHE(){return this.getToken(FC.CACHE,0)}get ruleIndex(){return FC.RULE_resetStatement}accept(t){return t.visitResetStatement?t.visitResetStatement(this):t.visitChildren(this)}},Kg=class extends ga{constructor(t,e){super(t,e)}SHUTDOWN(){return this.getToken(FC.SHUTDOWN,0)}get ruleIndex(){return FC.RULE_shutdownStatement}accept(t){return t.visitShutdownStatement?t.visitShutdownStatement(this):t.visitChildren(this)}},Qg=class extends ga{constructor(t,e){super(t,e)}tableName(){return this.getRuleContext(0,lx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}indexNameList(){return this.getRuleContext(0,Dx)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}get ruleIndex(){return FC.RULE_tableIndexes}accept(t){return t.visitTableIndexes?t.visitTableIndexes(this):t.visitChildren(this)}},Jg=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_flushOption}copyFrom(t){super.copyFrom(t)}},Zg=class extends Jg{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TABLE(){return this.getToken(FC.TABLE,0)}TABLES(){return this.getToken(FC.TABLES,0)}tables(){return this.getRuleContext(0,Ik)}flushTableOption(){return this.getRuleContext(0,zg)}accept(t){return t.visitTableFlushOption?t.visitTableFlushOption(this):t.visitChildren(this)}},qg=class extends Jg{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RELAY(){return this.getToken(FC.RELAY,0)}LOGS(){return this.getToken(FC.LOGS,0)}channelOption(){return this.getRuleContext(0,sD)}accept(t){return t.visitChannelFlushOption?t.visitChannelFlushOption(this):t.visitChildren(this)}},jg=class extends Jg{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DES_KEY_FILE(){return this.getToken(FC.DES_KEY_FILE,0)}HOSTS(){return this.getToken(FC.HOSTS,0)}LOGS(){return this.getToken(FC.LOGS,0)}OPTIMIZER_COSTS(){return this.getToken(FC.OPTIMIZER_COSTS,0)}PRIVILEGES(){return this.getToken(FC.PRIVILEGES,0)}QUERY(){return this.getToken(FC.QUERY,0)}CACHE(){return this.getToken(FC.CACHE,0)}STATUS(){return this.getToken(FC.STATUS,0)}USER_RESOURCES(){return this.getToken(FC.USER_RESOURCES,0)}TABLES(){return this.getToken(FC.TABLES,0)}WITH(){return this.getToken(FC.WITH,0)}READ(){return this.getToken(FC.READ,0)}LOCK(){return this.getToken(FC.LOCK,0)}BINARY(){return this.getToken(FC.BINARY,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}ERROR(){return this.getToken(FC.ERROR,0)}GENERAL(){return this.getToken(FC.GENERAL,0)}RELAY(){return this.getToken(FC.RELAY,0)}SLOW(){return this.getToken(FC.SLOW,0)}accept(t){return t.visitSimpleFlushOption?t.visitSimpleFlushOption(this):t.visitChildren(this)}},zg=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(FC.WITH,0)}READ(){return this.getToken(FC.READ,0)}LOCK(){return this.getToken(FC.LOCK,0)}FOR(){return this.getToken(FC.FOR,0)}EXPORT(){return this.getToken(FC.EXPORT,0)}get ruleIndex(){return FC.RULE_flushTableOption}accept(t){return t.visitFlushTableOption?t.visitFlushTableOption(this):t.visitChildren(this)}},$g=class extends ga{constructor(t,e){super(t,e)}tableName(){return this.getRuleContext(0,lx)}PARTITION(){return this.getToken(FC.PARTITION,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}indexNameList(){return this.getRuleContext(0,Dx)}IGNORE(){return this.getToken(FC.IGNORE,0)}LEAVES(){return this.getToken(FC.LEAVES,0)}ALL(){return this.getToken(FC.ALL,0)}uidList(){return this.getRuleContext(0,lk)}INDEX(){return this.getToken(FC.INDEX,0)}KEY(){return this.getToken(FC.KEY,0)}get ruleIndex(){return FC.RULE_loadedTableIndexes}accept(t){return t.visitLoadedTableIndexes?t.visitLoadedTableIndexes(this):t.visitChildren(this)}},tx=class extends ga{constructor(t,e){super(t,e)}tableName(){return this.getRuleContext(0,lx)}EXPLAIN(){return this.getToken(FC.EXPLAIN,0)}DESCRIBE(){return this.getToken(FC.DESCRIBE,0)}DESC(){return this.getToken(FC.DESC,0)}uid(){return this.getRuleContext(0,Vx)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_simpleDescribeStatement}accept(t){return t.visitSimpleDescribeStatement?t.visitSimpleDescribeStatement(this):t.visitChildren(this)}},ex=class extends ga{constructor(t,e){super(t,e)}describeObjectClause(){return this.getRuleContext(0,ox)}EXPLAIN(){return this.getToken(FC.EXPLAIN,0)}DESCRIBE(){return this.getToken(FC.DESCRIBE,0)}DESC(){return this.getToken(FC.DESC,0)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}EXTENDED(){return this.getToken(FC.EXTENDED,0)}PARTITIONS(){return this.getToken(FC.PARTITIONS,0)}FORMAT(){return this.getToken(FC.FORMAT,0)}TRADITIONAL(){return this.getToken(FC.TRADITIONAL,0)}JSON(){return this.getToken(FC.JSON,0)}get ruleIndex(){return FC.RULE_fullDescribeStatement}accept(t){return t.visitFullDescribeStatement?t.visitFullDescribeStatement(this):t.visitChildren(this)}},sx=class extends ga{constructor(t,e){super(t,e)}HELP(){return this.getToken(FC.HELP,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_helpStatement}accept(t){return t.visitHelpStatement?t.visitHelpStatement(this):t.visitChildren(this)}},ax=class extends ga{constructor(t,e){super(t,e)}USE(){return this.getToken(FC.USE,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_useStatement}accept(t){return t.visitUseStatement?t.visitUseStatement(this):t.visitChildren(this)}},rx=class extends ga{constructor(t,e){super(t,e)}SIGNAL(){return this.getToken(FC.SIGNAL,0)}ID(){return this.getToken(FC.ID,0)}REVERSE_QUOTE_ID(){return this.getToken(FC.REVERSE_QUOTE_ID,0)}SET(){return this.getToken(FC.SET,0)}signalConditionInformation(t){return void 0===t?this.getRuleContexts(cx):this.getRuleContext(t,cx)}SQLSTATE(){return this.getToken(FC.SQLSTATE,0)}stringLiteral(){return this.getRuleContext(0,Zx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}VALUE(){return this.getToken(FC.VALUE,0)}get ruleIndex(){return FC.RULE_signalStatement}accept(t){return t.visitSignalStatement?t.visitSignalStatement(this):t.visitChildren(this)}},ix=class extends ga{constructor(t,e){super(t,e)}RESIGNAL(){return this.getToken(FC.RESIGNAL,0)}ID(){return this.getToken(FC.ID,0)}REVERSE_QUOTE_ID(){return this.getToken(FC.REVERSE_QUOTE_ID,0)}SET(){return this.getToken(FC.SET,0)}signalConditionInformation(t){return void 0===t?this.getRuleContexts(cx):this.getRuleContext(t,cx)}SQLSTATE(){return this.getToken(FC.SQLSTATE,0)}stringLiteral(){return this.getRuleContext(0,Zx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}VALUE(){return this.getToken(FC.VALUE,0)}get ruleIndex(){return FC.RULE_resignalStatement}accept(t){return t.visitResignalStatement?t.visitResignalStatement(this):t.visitChildren(this)}},cx=class extends ga{constructor(t,e){super(t,e)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}CLASS_ORIGIN(){return this.getToken(FC.CLASS_ORIGIN,0)}SUBCLASS_ORIGIN(){return this.getToken(FC.SUBCLASS_ORIGIN,0)}MESSAGE_TEXT(){return this.getToken(FC.MESSAGE_TEXT,0)}MYSQL_ERRNO(){return this.getToken(FC.MYSQL_ERRNO,0)}CONSTRAINT_CATALOG(){return this.getToken(FC.CONSTRAINT_CATALOG,0)}CONSTRAINT_SCHEMA(){return this.getToken(FC.CONSTRAINT_SCHEMA,0)}CONSTRAINT_NAME(){return this.getToken(FC.CONSTRAINT_NAME,0)}CATALOG_NAME(){return this.getToken(FC.CATALOG_NAME,0)}SCHEMA_NAME(){return this.getToken(FC.SCHEMA_NAME,0)}TABLE_NAME(){return this.getToken(FC.TABLE_NAME,0)}COLUMN_NAME(){return this.getToken(FC.COLUMN_NAME,0)}CURSOR_NAME(){return this.getToken(FC.CURSOR_NAME,0)}stringLiteral(){return this.getRuleContext(0,Zx)}DECIMAL_LITERAL(){return this.getToken(FC.DECIMAL_LITERAL,0)}mysqlVariable(){return this.getRuleContext(0,Fx)}simpleId(){return this.getRuleContext(0,Xx)}get ruleIndex(){return FC.RULE_signalConditionInformation}accept(t){return t.visitSignalConditionInformation?t.visitSignalConditionInformation(this):t.visitChildren(this)}},nx=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(FC.WITH,0)}commonTableExpressions(t){return void 0===t?this.getRuleContexts(E_):this.getRuleContext(t,E_)}RECURSIVE(){return this.getToken(FC.RECURSIVE,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_withStatement}accept(t){return t.visitWithStatement?t.visitWithStatement(this):t.visitChildren(this)}},hx=class extends ga{constructor(t,e){super(t,e)}TABLE(){return this.getToken(FC.TABLE,0)}tableName(){return this.getRuleContext(0,lx)}orderByClause(){return this.getRuleContext(0,MU)}limitClause(){return this.getRuleContext(0,Lm)}get ruleIndex(){return FC.RULE_tableStatement}accept(t){return t.visitTableStatement?t.visitTableStatement(this):t.visitChildren(this)}},Ex=class extends ga{constructor(t,e){super(t,e)}GET(){return this.getToken(FC.GET,0)}DIAGNOSTICS(){return this.getToken(FC.DIAGNOSTICS,0)}CURRENT(){return this.getToken(FC.CURRENT,0)}STACKED(){return this.getToken(FC.STACKED,0)}variableClause(t){return void 0===t?this.getRuleContexts(Gg):this.getRuleContext(t,Gg)}EQUAL_SYMBOL(t){return void 0===t?this.getTokens(FC.EQUAL_SYMBOL):this.getToken(FC.EQUAL_SYMBOL,t)}CONDITION(){return this.getToken(FC.CONDITION,0)}diagnosticsConditionInformationName(t){return void 0===t?this.getRuleContexts(Tx):this.getRuleContext(t,Tx)}NUMBER(t){return void 0===t?this.getTokens(FC.NUMBER):this.getToken(FC.NUMBER,t)}ROW_COUNT(t){return void 0===t?this.getTokens(FC.ROW_COUNT):this.getToken(FC.ROW_COUNT,t)}decimalLiteral(){return this.getRuleContext(0,Qx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_diagnosticsStatement}accept(t){return t.visitDiagnosticsStatement?t.visitDiagnosticsStatement(this):t.visitChildren(this)}},Tx=class extends ga{constructor(t,e){super(t,e)}CLASS_ORIGIN(){return this.getToken(FC.CLASS_ORIGIN,0)}SUBCLASS_ORIGIN(){return this.getToken(FC.SUBCLASS_ORIGIN,0)}RETURNED_SQLSTATE(){return this.getToken(FC.RETURNED_SQLSTATE,0)}MESSAGE_TEXT(){return this.getToken(FC.MESSAGE_TEXT,0)}MYSQL_ERRNO(){return this.getToken(FC.MYSQL_ERRNO,0)}CONSTRAINT_CATALOG(){return this.getToken(FC.CONSTRAINT_CATALOG,0)}CONSTRAINT_SCHEMA(){return this.getToken(FC.CONSTRAINT_SCHEMA,0)}CONSTRAINT_NAME(){return this.getToken(FC.CONSTRAINT_NAME,0)}CATALOG_NAME(){return this.getToken(FC.CATALOG_NAME,0)}SCHEMA_NAME(){return this.getToken(FC.SCHEMA_NAME,0)}TABLE_NAME(){return this.getToken(FC.TABLE_NAME,0)}COLUMN_NAME(){return this.getToken(FC.COLUMN_NAME,0)}CURSOR_NAME(){return this.getToken(FC.CURSOR_NAME,0)}get ruleIndex(){return FC.RULE_diagnosticsConditionInformationName}accept(t){return t.visitDiagnosticsConditionInformationName?t.visitDiagnosticsConditionInformationName(this):t.visitChildren(this)}},ox=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_describeObjectClause}copyFrom(t){super.copyFrom(t)}},Rx=class extends ox{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}selectStatement(){return this.getRuleContext(0,rU)}deleteStatement(){return this.getRuleContext(0,jd)}insertStatement(){return this.getRuleContext(0,tU)}replaceStatement(){return this.getRuleContext(0,aU)}updateStatement(){return this.getRuleContext(0,TU)}accept(t){return t.visitDescribeStatements?t.visitDescribeStatements(this):t.visitChildren(this)}},Ax=class extends ox{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FOR(){return this.getToken(FC.FOR,0)}CONNECTION(){return this.getToken(FC.CONNECTION,0)}uid(){return this.getRuleContext(0,Vx)}accept(t){return t.visitDescribeConnection?t.visitDescribeConnection(this):t.visitChildren(this)}},Sx=class extends ga{constructor(t,e){super(t,e)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}DOT_ID(){return this.getToken(FC.DOT_ID,0)}DOT(){return this.getToken(FC.DOT,0)}get ruleIndex(){return FC.RULE_fullId}accept(t){return t.visitFullId?t.visitFullId(this):t.visitChildren(this)}},lx=class extends ga{constructor(t,e){super(t,e)}fullId(){return this.getRuleContext(0,Sx)}get ruleIndex(){return FC.RULE_tableName}accept(t){return t.visitTableName?t.visitTableName(this):t.visitChildren(this)}},Ox=class extends ga{constructor(t,e){super(t,e)}tableName(t){return void 0===t?this.getRuleContexts(lx):this.getRuleContext(t,lx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_tableNames}accept(t){return t.visitTableNames?t.visitTableNames(this):t.visitChildren(this)}},Ix=class extends ga{constructor(t,e){super(t,e)}userName(){return this.getRuleContext(0,Gx)}roleName(){return this.getRuleContext(0,_x)}get ruleIndex(){return FC.RULE_userOrRoleName}accept(t){return t.visitUserOrRoleName?t.visitUserOrRoleName(this):t.visitChildren(this)}},ux=class extends ga{constructor(t,e){super(t,e)}userOrRoleName(t){return void 0===t?this.getRuleContexts(Ix):this.getRuleContext(t,Ix)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_userOrRoleNameList}accept(t){return t.visitUserOrRoleNameList?t.visitUserOrRoleNameList(this):t.visitChildren(this)}},Nx=class extends ga{constructor(t,e){super(t,e)}newRoleName(t){return void 0===t?this.getRuleContexts(Lx):this.getRuleContext(t,Lx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_newRoleNameList}accept(t){return t.visitNewRoleNameList?t.visitNewRoleNameList(this):t.visitChildren(this)}},Lx=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_newRoleName}accept(t){return t.visitNewRoleName?t.visitNewRoleName(this):t.visitChildren(this)}},Cx=class extends ga{constructor(t,e){super(t,e)}roleName(t){return void 0===t?this.getRuleContexts(_x):this.getRuleContext(t,_x)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_roleNameList}accept(t){return t.visitRoleNameList?t.visitRoleNameList(this):t.visitChildren(this)}},_x=class extends ga{constructor(t,e){super(t,e)}newRoleName(){return this.getRuleContext(0,Lx)}get ruleIndex(){return FC.RULE_roleName}accept(t){return t.visitRoleName?t.visitRoleName(this):t.visitChildren(this)}},Px=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}dottedId(t){return void 0===t?this.getRuleContexts(Kx):this.getRuleContext(t,Kx)}get ruleIndex(){return FC.RULE_fullColumnName}accept(t){return t.visitFullColumnName?t.visitFullColumnName(this):t.visitChildren(this)}},Mx=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_databaseName}accept(t){return t.visitDatabaseName?t.visitDatabaseName(this):t.visitChildren(this)}},dx=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_indexName}accept(t){return t.visitIndexName?t.visitIndexName(this):t.visitChildren(this)}},Ux=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_constraintName}accept(t){return t.visitConstraintName?t.visitConstraintName(this):t.visitChildren(this)}},mx=class extends ga{constructor(t,e){super(t,e)}fullId(){return this.getRuleContext(0,Sx)}get ruleIndex(){return FC.RULE_triggerName}accept(t){return t.visitTriggerName?t.visitTriggerName(this):t.visitChildren(this)}},Dx=class extends ga{constructor(t,e){super(t,e)}indexName(t){return void 0===t?this.getRuleContexts(dx):this.getRuleContext(t,dx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_indexNameList}accept(t){return t.visitIndexNameList?t.visitIndexNameList(this):t.visitChildren(this)}},px=class extends ga{constructor(t,e){super(t,e)}expression(){return this.getRuleContext(0,NH)}uid(){return this.getRuleContext(0,Vx)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}ASC(){return this.getToken(FC.ASC,0)}DESC(){return this.getToken(FC.DESC,0)}get ruleIndex(){return FC.RULE_indexColumnName}accept(t){return t.visitIndexColumnName?t.visitIndexColumnName(this):t.visitChildren(this)}},gx=class extends ga{constructor(t,e){super(t,e)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}ID(){return this.getToken(FC.ID,0)}ADMIN(){return this.getToken(FC.ADMIN,0)}keywordsCanBeId(){return this.getRuleContext(0,TG)}get ruleIndex(){return FC.RULE_simpleUserName}accept(t){return t.visitSimpleUserName?t.visitSimpleUserName(this):t.visitChildren(this)}},xx=class extends ga{constructor(t,e){super(t,e)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}HOST_IP_ADDRESS(){return this.getToken(FC.HOST_IP_ADDRESS,0)}AT_SIGN(){return this.getToken(FC.AT_SIGN,0)}get ruleIndex(){return FC.RULE_hostName}accept(t){return t.visitHostName?t.visitHostName(this):t.visitChildren(this)}},kx=class extends ga{constructor(t,e){super(t,e)}userName(t){return void 0===t?this.getRuleContexts(Gx):this.getRuleContext(t,Gx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_userNameList}accept(t){return t.visitUserNameList?t.visitUserNameList(this):t.visitChildren(this)}},Hx=class extends ga{constructor(t,e){super(t,e)}simpleUserName(){return this.getRuleContext(0,gx)}hostName(){return this.getRuleContext(0,xx)}currentUserExpression(){return this.getRuleContext(0,l_)}get ruleIndex(){return FC.RULE_newUserName}accept(t){return t.visitNewUserName?t.visitNewUserName(this):t.visitChildren(this)}},Gx=class extends ga{constructor(t,e){super(t,e)}newUserName(){return this.getRuleContext(0,Hx)}get ruleIndex(){return FC.RULE_userName}accept(t){return t.visitUserName?t.visitUserName(this):t.visitChildren(this)}},Fx=class extends ga{constructor(t,e){super(t,e)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}GLOBAL_ID(){return this.getToken(FC.GLOBAL_ID,0)}get ruleIndex(){return FC.RULE_mysqlVariable}accept(t){return t.visitMysqlVariable?t.visitMysqlVariable(this):t.visitChildren(this)}},vx=class extends ga{constructor(t,e){super(t,e)}BINARY(){return this.getToken(FC.BINARY,0)}charsetNameBase(){return this.getRuleContext(0,iG)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}CHARSET_REVERSE_QOUTE_STRING(){return this.getToken(FC.CHARSET_REVERSE_QOUTE_STRING,0)}get ruleIndex(){return FC.RULE_charsetName}accept(t){return t.visitCharsetName?t.visitCharsetName(this):t.visitChildren(this)}},Bx=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_collationName}accept(t){return t.visitCollationName?t.visitCollationName(this):t.visitChildren(this)}},yx=class extends ga{constructor(t,e){super(t,e)}engineNameBase(){return this.getRuleContext(0,fx)}ID(){return this.getToken(FC.ID,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_engineName}accept(t){return t.visitEngineName?t.visitEngineName(this):t.visitChildren(this)}},fx=class extends ga{constructor(t,e){super(t,e)}ARCHIVE(){return this.getToken(FC.ARCHIVE,0)}BLACKHOLE(){return this.getToken(FC.BLACKHOLE,0)}CONNECT(){return this.getToken(FC.CONNECT,0)}CSV(){return this.getToken(FC.CSV,0)}FEDERATED(){return this.getToken(FC.FEDERATED,0)}INNODB(){return this.getToken(FC.INNODB,0)}MEMORY(){return this.getToken(FC.MEMORY,0)}MRG_MYISAM(){return this.getToken(FC.MRG_MYISAM,0)}MYISAM(){return this.getToken(FC.MYISAM,0)}NDB(){return this.getToken(FC.NDB,0)}NDBCLUSTER(){return this.getToken(FC.NDBCLUSTER,0)}PERFORMANCE_SCHEMA(){return this.getToken(FC.PERFORMANCE_SCHEMA,0)}TOKUDB(){return this.getToken(FC.TOKUDB,0)}get ruleIndex(){return FC.RULE_engineNameBase}accept(t){return t.visitEngineNameBase?t.visitEngineNameBase(this):t.visitChildren(this)}},Yx=class extends ga{constructor(t,e){super(t,e)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}MINUS(t){return void 0===t?this.getTokens(FC.MINUS):this.getToken(FC.MINUS,t)}COLON_SYMB(t){return void 0===t?this.getTokens(FC.COLON_SYMB):this.getToken(FC.COLON_SYMB,t)}get ruleIndex(){return FC.RULE_uuidSet}accept(t){return t.visitUuidSet?t.visitUuidSet(this):t.visitChildren(this)}},wx=class extends ga{constructor(t,e){super(t,e)}xuidStringId(t){return void 0===t?this.getRuleContexts(bx):this.getRuleContext(t,bx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}decimalLiteral(){return this.getRuleContext(0,Qx)}get ruleIndex(){return FC.RULE_xid}accept(t){return t.visitXid?t.visitXid(this):t.visitChildren(this)}},bx=class extends ga{constructor(t,e){super(t,e)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}BIT_STRING(){return this.getToken(FC.BIT_STRING,0)}HEXADECIMAL_LITERAL(t){return void 0===t?this.getTokens(FC.HEXADECIMAL_LITERAL):this.getToken(FC.HEXADECIMAL_LITERAL,t)}get ruleIndex(){return FC.RULE_xuidStringId}accept(t){return t.visitXuidStringId?t.visitXuidStringId(this):t.visitChildren(this)}},Wx=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_authPlugin}accept(t){return t.visitAuthPlugin?t.visitAuthPlugin(this):t.visitChildren(this)}},Vx=class extends ga{constructor(t,e){super(t,e)}simpleId(){return this.getRuleContext(0,Xx)}CHARSET_REVERSE_QOUTE_STRING(){return this.getToken(FC.CHARSET_REVERSE_QOUTE_STRING,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}get ruleIndex(){return FC.RULE_uid}accept(t){return t.visitUid?t.visitUid(this):t.visitChildren(this)}},Xx=class extends ga{constructor(t,e){super(t,e)}ID(){return this.getToken(FC.ID,0)}charsetNameBase(){return this.getRuleContext(0,iG)}transactionLevelBase(){return this.getRuleContext(0,cG)}engineNameBase(){return this.getRuleContext(0,fx)}privilegesBase(){return this.getRuleContext(0,nG)}intervalTypeBase(){return this.getRuleContext(0,hG)}dataTypeBase(){return this.getRuleContext(0,EG)}keywordsCanBeId(){return this.getRuleContext(0,TG)}scalarFunctionName(){return this.getRuleContext(0,lH)}get ruleIndex(){return FC.RULE_simpleId}accept(t){return t.visitSimpleId?t.visitSimpleId(this):t.visitChildren(this)}},Kx=class extends ga{constructor(t,e){super(t,e)}DOT_ID(){return this.getToken(FC.DOT_ID,0)}DOT(){return this.getToken(FC.DOT,0)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_dottedId}accept(t){return t.visitDottedId?t.visitDottedId(this):t.visitChildren(this)}},Qx=class extends ga{constructor(t,e){super(t,e)}DECIMAL_LITERAL(){return this.getToken(FC.DECIMAL_LITERAL,0)}ZERO_DECIMAL(){return this.getToken(FC.ZERO_DECIMAL,0)}ONE_DECIMAL(){return this.getToken(FC.ONE_DECIMAL,0)}TWO_DECIMAL(){return this.getToken(FC.TWO_DECIMAL,0)}REAL_LITERAL(){return this.getToken(FC.REAL_LITERAL,0)}get ruleIndex(){return FC.RULE_decimalLiteral}accept(t){return t.visitDecimalLiteral?t.visitDecimalLiteral(this):t.visitChildren(this)}},Jx=class extends ga{constructor(t,e){super(t,e)}FILESIZE_LITERAL(){return this.getToken(FC.FILESIZE_LITERAL,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}get ruleIndex(){return FC.RULE_fileSizeLiteral}accept(t){return t.visitFileSizeLiteral?t.visitFileSizeLiteral(this):t.visitChildren(this)}},Zx=class extends ga{constructor(t,e){super(t,e)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}START_NATIONAL_STRING_LITERAL(){return this.getToken(FC.START_NATIONAL_STRING_LITERAL,0)}STRING_CHARSET_NAME(){return this.getToken(FC.STRING_CHARSET_NAME,0)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}get ruleIndex(){return FC.RULE_stringLiteral}accept(t){return t.visitStringLiteral?t.visitStringLiteral(this):t.visitChildren(this)}},qx=class extends ga{constructor(t,e){super(t,e)}TRUE(){return this.getToken(FC.TRUE,0)}FALSE(){return this.getToken(FC.FALSE,0)}get ruleIndex(){return FC.RULE_booleanLiteral}accept(t){return t.visitBooleanLiteral?t.visitBooleanLiteral(this):t.visitChildren(this)}},jx=class extends ga{constructor(t,e){super(t,e)}HEXADECIMAL_LITERAL(){return this.getToken(FC.HEXADECIMAL_LITERAL,0)}STRING_CHARSET_NAME(){return this.getToken(FC.STRING_CHARSET_NAME,0)}get ruleIndex(){return FC.RULE_hexadecimalLiteral}accept(t){return t.visitHexadecimalLiteral?t.visitHexadecimalLiteral(this):t.visitChildren(this)}},zx=class extends ga{constructor(t,e){super(t,e)}NULL_LITERAL(){return this.getToken(FC.NULL_LITERAL,0)}NULL_SPEC_LITERAL(){return this.getToken(FC.NULL_SPEC_LITERAL,0)}NOT(){return this.getToken(FC.NOT,0)}get ruleIndex(){return FC.RULE_nullNotnull}accept(t){return t.visitNullNotnull?t.visitNullNotnull(this):t.visitChildren(this)}},$x=class extends ga{constructor(t,e){super(t,e)}stringLiteral(){return this.getRuleContext(0,Zx)}decimalLiteral(){return this.getRuleContext(0,Qx)}MINUS(){return this.getToken(FC.MINUS,0)}hexadecimalLiteral(){return this.getRuleContext(0,jx)}booleanLiteral(){return this.getRuleContext(0,qx)}REAL_LITERAL(){return this.getToken(FC.REAL_LITERAL,0)}BIT_STRING(){return this.getToken(FC.BIT_STRING,0)}NULL_LITERAL(){return this.getToken(FC.NULL_LITERAL,0)}NULL_SPEC_LITERAL(){return this.getToken(FC.NULL_SPEC_LITERAL,0)}NOT(){return this.getToken(FC.NOT,0)}get ruleIndex(){return FC.RULE_constant}accept(t){return t.visitConstant?t.visitConstant(this):t.visitChildren(this)}},tk=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_dataType}copyFrom(t){super.copyFrom(t)}},ek=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}GEOMETRYCOLLECTION(){return this.getToken(FC.GEOMETRYCOLLECTION,0)}GEOMCOLLECTION(){return this.getToken(FC.GEOMCOLLECTION,0)}LINESTRING(){return this.getToken(FC.LINESTRING,0)}MULTILINESTRING(){return this.getToken(FC.MULTILINESTRING,0)}MULTIPOINT(){return this.getToken(FC.MULTIPOINT,0)}MULTIPOLYGON(){return this.getToken(FC.MULTIPOLYGON,0)}POINT(){return this.getToken(FC.POINT,0)}POLYGON(){return this.getToken(FC.POLYGON,0)}JSON(){return this.getToken(FC.JSON,0)}GEOMETRY(){return this.getToken(FC.GEOMETRY,0)}SRID(){return this.getToken(FC.SRID,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}accept(t){return t.visitSpatialDataType?t.visitSpatialDataType(this):t.visitChildren(this)}},sk=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LONG(){return this.getToken(FC.LONG,0)}VARBINARY(){return this.getToken(FC.VARBINARY,0)}accept(t){return t.visitLongVarbinaryDataType?t.visitLongVarbinaryDataType(this):t.visitChildren(this)}},ak=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}collectionOptions(){return this.getRuleContext(0,Tk)}ENUM(){return this.getToken(FC.ENUM,0)}SET(){return this.getToken(FC.SET,0)}BINARY(){return this.getToken(FC.BINARY,0)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}accept(t){return t.visitCollectionDataType?t.visitCollectionDataType(this):t.visitChildren(this)}},rk=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}NATIONAL(){return this.getToken(FC.NATIONAL,0)}VARYING(){return this.getToken(FC.VARYING,0)}CHAR(){return this.getToken(FC.CHAR,0)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}lengthOneDimension(){return this.getRuleContext(0,Rk)}BINARY(){return this.getToken(FC.BINARY,0)}accept(t){return t.visitNationalVaryingStringDataType?t.visitNationalVaryingStringDataType(this):t.visitChildren(this)}},ik=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TINYINT(){return this.getToken(FC.TINYINT,0)}SMALLINT(){return this.getToken(FC.SMALLINT,0)}MEDIUMINT(){return this.getToken(FC.MEDIUMINT,0)}INT(){return this.getToken(FC.INT,0)}INTEGER(){return this.getToken(FC.INTEGER,0)}BIGINT(){return this.getToken(FC.BIGINT,0)}MIDDLEINT(){return this.getToken(FC.MIDDLEINT,0)}INT1(){return this.getToken(FC.INT1,0)}INT2(){return this.getToken(FC.INT2,0)}INT3(){return this.getToken(FC.INT3,0)}INT4(){return this.getToken(FC.INT4,0)}INT8(){return this.getToken(FC.INT8,0)}lengthOneDimension(){return this.getRuleContext(0,Rk)}SIGNED(t){return void 0===t?this.getTokens(FC.SIGNED):this.getToken(FC.SIGNED,t)}UNSIGNED(t){return void 0===t?this.getTokens(FC.UNSIGNED):this.getToken(FC.UNSIGNED,t)}ZEROFILL(t){return void 0===t?this.getTokens(FC.ZEROFILL):this.getToken(FC.ZEROFILL,t)}REAL(){return this.getToken(FC.REAL,0)}lengthTwoDimension(){return this.getRuleContext(0,Ak)}DOUBLE(){return this.getToken(FC.DOUBLE,0)}PRECISION(){return this.getToken(FC.PRECISION,0)}DECIMAL(){return this.getToken(FC.DECIMAL,0)}DEC(){return this.getToken(FC.DEC,0)}FIXED(){return this.getToken(FC.FIXED,0)}NUMERIC(){return this.getToken(FC.NUMERIC,0)}FLOAT(){return this.getToken(FC.FLOAT,0)}FLOAT4(){return this.getToken(FC.FLOAT4,0)}FLOAT8(){return this.getToken(FC.FLOAT8,0)}lengthTwoOptionalDimension(){return this.getRuleContext(0,Sk)}BIT(){return this.getToken(FC.BIT,0)}TIME(){return this.getToken(FC.TIME,0)}TIMESTAMP(){return this.getToken(FC.TIMESTAMP,0)}DATETIME(){return this.getToken(FC.DATETIME,0)}BINARY(){return this.getToken(FC.BINARY,0)}VARBINARY(){return this.getToken(FC.VARBINARY,0)}BLOB(){return this.getToken(FC.BLOB,0)}YEAR(){return this.getToken(FC.YEAR,0)}accept(t){return t.visitDimensionDataType?t.visitDimensionDataType(this):t.visitChildren(this)}},ck=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHAR(){return this.getToken(FC.CHAR,0)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}VARCHAR(){return this.getToken(FC.VARCHAR,0)}TINYTEXT(){return this.getToken(FC.TINYTEXT,0)}TEXT(){return this.getToken(FC.TEXT,0)}MEDIUMTEXT(){return this.getToken(FC.MEDIUMTEXT,0)}LONGTEXT(){return this.getToken(FC.LONGTEXT,0)}NCHAR(){return this.getToken(FC.NCHAR,0)}NVARCHAR(){return this.getToken(FC.NVARCHAR,0)}LONG(){return this.getToken(FC.LONG,0)}VARYING(){return this.getToken(FC.VARYING,0)}lengthOneDimension(){return this.getRuleContext(0,Rk)}BINARY(t){return void 0===t?this.getTokens(FC.BINARY):this.getToken(FC.BINARY,t)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitStringDataType?t.visitStringDataType(this):t.visitChildren(this)}},nk=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LONG(){return this.getToken(FC.LONG,0)}VARCHAR(){return this.getToken(FC.VARCHAR,0)}BINARY(){return this.getToken(FC.BINARY,0)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitLongVarcharDataType?t.visitLongVarcharDataType(this):t.visitChildren(this)}},hk=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}NATIONAL(){return this.getToken(FC.NATIONAL,0)}VARCHAR(){return this.getToken(FC.VARCHAR,0)}CHARACTER(){return this.getToken(FC.CHARACTER,0)}CHAR(){return this.getToken(FC.CHAR,0)}lengthOneDimension(){return this.getRuleContext(0,Rk)}BINARY(){return this.getToken(FC.BINARY,0)}NCHAR(){return this.getToken(FC.NCHAR,0)}accept(t){return t.visitNationalStringDataType?t.visitNationalStringDataType(this):t.visitChildren(this)}},Ek=class extends tk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DATE(){return this.getToken(FC.DATE,0)}TINYBLOB(){return this.getToken(FC.TINYBLOB,0)}MEDIUMBLOB(){return this.getToken(FC.MEDIUMBLOB,0)}LONGBLOB(){return this.getToken(FC.LONGBLOB,0)}BOOL(){return this.getToken(FC.BOOL,0)}BOOLEAN(){return this.getToken(FC.BOOLEAN,0)}SERIAL(){return this.getToken(FC.SERIAL,0)}accept(t){return t.visitSimpleDataType?t.visitSimpleDataType(this):t.visitChildren(this)}},Tk=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_collectionOptions}accept(t){return t.visitCollectionOptions?t.visitCollectionOptions(this):t.visitChildren(this)}},ok=class extends ga{constructor(t,e){super(t,e)}CHAR(){return this.getToken(FC.CHAR,0)}SIGNED(){return this.getToken(FC.SIGNED,0)}UNSIGNED(){return this.getToken(FC.UNSIGNED,0)}ARRAY(){return this.getToken(FC.ARRAY,0)}BINARY(){return this.getToken(FC.BINARY,0)}NCHAR(){return this.getToken(FC.NCHAR,0)}FLOAT(){return this.getToken(FC.FLOAT,0)}DATE(){return this.getToken(FC.DATE,0)}DATETIME(){return this.getToken(FC.DATETIME,0)}TIME(){return this.getToken(FC.TIME,0)}YEAR(){return this.getToken(FC.YEAR,0)}JSON(){return this.getToken(FC.JSON,0)}INT(){return this.getToken(FC.INT,0)}INTEGER(){return this.getToken(FC.INTEGER,0)}DOUBLE(){return this.getToken(FC.DOUBLE,0)}DECIMAL(){return this.getToken(FC.DECIMAL,0)}DEC(){return this.getToken(FC.DEC,0)}lengthOneDimension(){return this.getRuleContext(0,Rk)}charSet(){return this.getRuleContext(0,S_)}charsetName(){return this.getRuleContext(0,vx)}lengthTwoOptionalDimension(){return this.getRuleContext(0,Sk)}get ruleIndex(){return FC.RULE_convertedDataType}accept(t){return t.visitConvertedDataType?t.visitConvertedDataType(this):t.visitChildren(this)}},Rk=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}get ruleIndex(){return FC.RULE_lengthOneDimension}accept(t){return t.visitLengthOneDimension?t.visitLengthOneDimension(this):t.visitChildren(this)}},Ak=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}COMMA(){return this.getToken(FC.COMMA,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}get ruleIndex(){return FC.RULE_lengthTwoDimension}accept(t){return t.visitLengthTwoDimension?t.visitLengthTwoDimension(this):t.visitChildren(this)}},Sk=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(){return this.getToken(FC.COMMA,0)}get ruleIndex(){return FC.RULE_lengthTwoOptionalDimension}accept(t){return t.visitLengthTwoOptionalDimension?t.visitLengthTwoOptionalDimension(this):t.visitChildren(this)}},lk=class extends ga{constructor(t,e){super(t,e)}uid(t){return void 0===t?this.getRuleContexts(Vx):this.getRuleContext(t,Vx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_uidList}accept(t){return t.visitUidList?t.visitUidList(this):t.visitChildren(this)}},Ok=class extends ga{constructor(t,e){super(t,e)}fullColumnName(t){return void 0===t?this.getRuleContexts(Px):this.getRuleContext(t,Px)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_fullColumnNameList}accept(t){return t.visitFullColumnNameList?t.visitFullColumnNameList(this):t.visitChildren(this)}},Ik=class extends ga{constructor(t,e){super(t,e)}tableName(t){return void 0===t?this.getRuleContexts(lx):this.getRuleContext(t,lx)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_tables}accept(t){return t.visitTables?t.visitTables(this):t.visitChildren(this)}},uk=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}indexColumnName(t){return void 0===t?this.getRuleContexts(px):this.getRuleContext(t,px)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_indexColumnNames}accept(t){return t.visitIndexColumnNames?t.visitIndexColumnNames(this):t.visitChildren(this)}},Nk=class extends ga{constructor(t,e){super(t,e)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_expressions}accept(t){return t.visitExpressions?t.visitExpressions(this):t.visitChildren(this)}},Lk=class extends ga{constructor(t,e){super(t,e)}expressionOrDefault(t){return void 0===t?this.getRuleContexts(Uk):this.getRuleContext(t,Uk)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_expressionsWithDefaults}accept(t){return t.visitExpressionsWithDefaults?t.visitExpressionsWithDefaults(this):t.visitChildren(this)}},Ck=class extends ga{constructor(t,e){super(t,e)}constant(t){return void 0===t?this.getRuleContexts($x):this.getRuleContext(t,$x)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_constants}accept(t){return t.visitConstants?t.visitConstants(this):t.visitChildren(this)}},_k=class extends ga{constructor(t,e){super(t,e)}STRING_LITERAL(t){return void 0===t?this.getTokens(FC.STRING_LITERAL):this.getToken(FC.STRING_LITERAL,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_simpleStrings}accept(t){return t.visitSimpleStrings?t.visitSimpleStrings(this):t.visitChildren(this)}},Pk=class extends ga{constructor(t,e){super(t,e)}LOCAL_ID(t){return void 0===t?this.getTokens(FC.LOCAL_ID):this.getToken(FC.LOCAL_ID,t)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_userVariables}accept(t){return t.visitUserVariables?t.visitUserVariables(this):t.visitChildren(this)}},Mk=class extends ga{constructor(t,e){super(t,e)}NULL_LITERAL(){return this.getToken(FC.NULL_LITERAL,0)}CAST(){return this.getToken(FC.CAST,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}AS(){return this.getToken(FC.AS,0)}convertedDataType(){return this.getRuleContext(0,ok)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}constant(){return this.getRuleContext(0,$x)}unaryOperator(){return this.getRuleContext(0,zH)}currentTimestamp(t){return void 0===t?this.getRuleContexts(dk):this.getRuleContext(t,dk)}ON(){return this.getToken(FC.ON,0)}UPDATE(){return this.getToken(FC.UPDATE,0)}fullId(){return this.getRuleContext(0,Sx)}get ruleIndex(){return FC.RULE_defaultValue}accept(t){return t.visitDefaultValue?t.visitDefaultValue(this):t.visitChildren(this)}},dk=class extends ga{constructor(t,e){super(t,e)}NOW(){return this.getToken(FC.NOW,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}CURRENT_TIMESTAMP(){return this.getToken(FC.CURRENT_TIMESTAMP,0)}LOCALTIME(){return this.getToken(FC.LOCALTIME,0)}LOCALTIMESTAMP(){return this.getToken(FC.LOCALTIMESTAMP,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}get ruleIndex(){return FC.RULE_currentTimestamp}accept(t){return t.visitCurrentTimestamp?t.visitCurrentTimestamp(this):t.visitChildren(this)}},Uk=class extends ga{constructor(t,e){super(t,e)}expression(){return this.getRuleContext(0,NH)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}get ruleIndex(){return FC.RULE_expressionOrDefault}accept(t){return t.visitExpressionOrDefault?t.visitExpressionOrDefault(this):t.visitChildren(this)}},mk=class extends ga{constructor(t,e){super(t,e)}IF(){return this.getToken(FC.IF,0)}EXISTS(){return this.getToken(FC.EXISTS,0)}get ruleIndex(){return FC.RULE_ifExists}accept(t){return t.visitIfExists?t.visitIfExists(this):t.visitChildren(this)}},Dk=class extends ga{constructor(t,e){super(t,e)}IF(){return this.getToken(FC.IF,0)}NOT(){return this.getToken(FC.NOT,0)}EXISTS(){return this.getToken(FC.EXISTS,0)}get ruleIndex(){return FC.RULE_ifNotExists}accept(t){return t.visitIfNotExists?t.visitIfNotExists(this):t.visitChildren(this)}},pk=class extends ga{constructor(t,e){super(t,e)}OR(){return this.getToken(FC.OR,0)}REPLACE(){return this.getToken(FC.REPLACE,0)}get ruleIndex(){return FC.RULE_orReplace}accept(t){return t.visitOrReplace?t.visitOrReplace(this):t.visitChildren(this)}},gk=class extends ga{constructor(t,e){super(t,e)}WAIT(){return this.getToken(FC.WAIT,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}NOWAIT(){return this.getToken(FC.NOWAIT,0)}get ruleIndex(){return FC.RULE_waitNowaitClause}accept(t){return t.visitWaitNowaitClause?t.visitWaitNowaitClause(this):t.visitChildren(this)}},xk=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_functionCall}copyFrom(t){super.copyFrom(t)}},kk=class extends xk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}specificFunction(){return this.getRuleContext(0,yk)}accept(t){return t.visitSpecificFunctionCall?t.visitSpecificFunctionCall(this):t.visitChildren(this)}},Hk=class extends xk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}passwordFunctionClause(){return this.getRuleContext(0,OH)}accept(t){return t.visitPasswordFunctionCall?t.visitPasswordFunctionCall(this):t.visitChildren(this)}},Gk=class extends xk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}fullId(){return this.getRuleContext(0,Sx)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}functionArgs(){return this.getRuleContext(0,IH)}accept(t){return t.visitUdfFunctionCall?t.visitUdfFunctionCall(this):t.visitChildren(this)}},Fk=class extends xk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}nonAggregateWindowedFunction(){return this.getRuleContext(0,iH)}accept(t){return t.visitNonAggregateFunctionCall?t.visitNonAggregateFunctionCall(this):t.visitChildren(this)}},vk=class extends xk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}aggregateWindowedFunction(){return this.getRuleContext(0,rH)}accept(t){return t.visitAggregateFunctionCall?t.visitAggregateFunctionCall(this):t.visitChildren(this)}},Bk=class extends xk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}scalarFunctionName(){return this.getRuleContext(0,lH)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}functionArgs(){return this.getRuleContext(0,IH)}accept(t){return t.visitScalarFunctionCall?t.visitScalarFunctionCall(this):t.visitChildren(this)}},yk=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_specificFunction}copyFrom(t){super.copyFrom(t)}},fk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}POSITION(){return this.getToken(FC.POSITION,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}IN(){return this.getToken(FC.IN,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}stringLiteral(t){return void 0===t?this.getRuleContexts(Zx):this.getRuleContext(t,Zx)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}accept(t){return t.visitPositionFunctionCall?t.visitPositionFunctionCall(this):t.visitChildren(this)}},Yk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TRIM(){return this.getToken(FC.TRIM,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}FROM(){return this.getToken(FC.FROM,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}BOTH(){return this.getToken(FC.BOTH,0)}LEADING(){return this.getToken(FC.LEADING,0)}TRAILING(){return this.getToken(FC.TRAILING,0)}stringLiteral(t){return void 0===t?this.getRuleContexts(Zx):this.getRuleContext(t,Zx)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}accept(t){return t.visitTrimFunctionCall?t.visitTrimFunctionCall(this):t.visitChildren(this)}},wk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}JSON_VALUE(){return this.getToken(FC.JSON_VALUE,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}COMMA(){return this.getToken(FC.COMMA,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}RETURNING(){return this.getToken(FC.RETURNING,0)}convertedDataType(){return this.getRuleContext(0,ok)}jsonOnEmpty(){return this.getRuleContext(0,$U)}jsonOnError(){return this.getRuleContext(0,tm)}accept(t){return t.visitJsonValueFunctionCall?t.visitJsonValueFunctionCall(this):t.visitChildren(this)}},bk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CASE(){return this.getToken(FC.CASE,0)}END(){return this.getToken(FC.END,0)}caseFuncAlternative(t){return void 0===t?this.getRuleContexts($k):this.getRuleContext(t,$k)}ELSE(){return this.getToken(FC.ELSE,0)}functionArg(){return this.getRuleContext(0,uH)}accept(t){return t.visitCaseFunctionCall?t.visitCaseFunctionCall(this):t.visitChildren(this)}},Wk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXTRACT(){return this.getToken(FC.EXTRACT,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}intervalType(){return this.getRuleContext(0,__)}FROM(){return this.getToken(FC.FROM,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}stringLiteral(){return this.getRuleContext(0,Zx)}expression(){return this.getRuleContext(0,NH)}accept(t){return t.visitExtractFunctionCall?t.visitExtractFunctionCall(this):t.visitChildren(this)}},Vk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CONVERT(){return this.getToken(FC.CONVERT,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}convertedDataType(){return this.getRuleContext(0,ok)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(){return this.getToken(FC.COMMA,0)}USING(){return this.getToken(FC.USING,0)}charsetName(){return this.getRuleContext(0,vx)}CAST(){return this.getToken(FC.CAST,0)}AS(){return this.getToken(FC.AS,0)}accept(t){return t.visitDataTypeFunctionCall?t.visitDataTypeFunctionCall(this):t.visitChildren(this)}},Xk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}VALUES(){return this.getToken(FC.VALUES,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}fullColumnName(){return this.getRuleContext(0,Px)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitValuesFunctionCall?t.visitValuesFunctionCall(this):t.visitChildren(this)}},Kk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CASE(){return this.getToken(FC.CASE,0)}expression(){return this.getRuleContext(0,NH)}END(){return this.getToken(FC.END,0)}caseFuncAlternative(t){return void 0===t?this.getRuleContexts($k):this.getRuleContext(t,$k)}ELSE(){return this.getToken(FC.ELSE,0)}functionArg(){return this.getRuleContext(0,uH)}accept(t){return t.visitCaseExpressionFunctionCall?t.visitCaseExpressionFunctionCall(this):t.visitChildren(this)}},Qk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}currentUserExpression(){return this.getRuleContext(0,l_)}accept(t){return t.visitCurrentUser?t.visitCurrentUser(this):t.visitChildren(this)}},Jk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CURRENT_DATE(){return this.getToken(FC.CURRENT_DATE,0)}CURRENT_TIME(){return this.getToken(FC.CURRENT_TIME,0)}CURRENT_TIMESTAMP(){return this.getToken(FC.CURRENT_TIMESTAMP,0)}LOCALTIME(){return this.getToken(FC.LOCALTIME,0)}UTC_TIMESTAMP(){return this.getToken(FC.UTC_TIMESTAMP,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitSimpleFunctionCall?t.visitSimpleFunctionCall(this):t.visitChildren(this)}},Zk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CHAR(){return this.getToken(FC.CHAR,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}functionArgs(){return this.getRuleContext(0,IH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}USING(){return this.getToken(FC.USING,0)}charsetName(){return this.getRuleContext(0,vx)}accept(t){return t.visitCharFunctionCall?t.visitCharFunctionCall(this):t.visitChildren(this)}},qk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}WEIGHT_STRING(){return this.getToken(FC.WEIGHT_STRING,0)}LR_BRACKET(t){return void 0===t?this.getTokens(FC.LR_BRACKET):this.getToken(FC.LR_BRACKET,t)}RR_BRACKET(t){return void 0===t?this.getTokens(FC.RR_BRACKET):this.getToken(FC.RR_BRACKET,t)}stringLiteral(){return this.getRuleContext(0,Zx)}expression(){return this.getRuleContext(0,NH)}AS(){return this.getToken(FC.AS,0)}decimalLiteral(){return this.getRuleContext(0,Qx)}levelsInWeightString(){return this.getRuleContext(0,tH)}CHAR(){return this.getToken(FC.CHAR,0)}BINARY(){return this.getToken(FC.BINARY,0)}accept(t){return t.visitWeightFunctionCall?t.visitWeightFunctionCall(this):t.visitChildren(this)}},jk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}GET_FORMAT(){return this.getToken(FC.GET_FORMAT,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}COMMA(){return this.getToken(FC.COMMA,0)}stringLiteral(){return this.getRuleContext(0,Zx)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}DATE(){return this.getToken(FC.DATE,0)}TIME(){return this.getToken(FC.TIME,0)}DATETIME(){return this.getToken(FC.DATETIME,0)}accept(t){return t.visitGetFormatFunctionCall?t.visitGetFormatFunctionCall(this):t.visitChildren(this)}},zk=class extends yk{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}FROM(){return this.getToken(FC.FROM,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}SUBSTR(){return this.getToken(FC.SUBSTR,0)}SUBSTRING(){return this.getToken(FC.SUBSTRING,0)}stringLiteral(){return this.getRuleContext(0,Zx)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}FOR(){return this.getToken(FC.FOR,0)}accept(t){return t.visitSubstrFunctionCall?t.visitSubstrFunctionCall(this):t.visitChildren(this)}},$k=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(FC.WHEN,0)}THEN(){return this.getToken(FC.THEN,0)}functionArg(t){return void 0===t?this.getRuleContexts(uH):this.getRuleContext(t,uH)}get ruleIndex(){return FC.RULE_caseFuncAlternative}accept(t){return t.visitCaseFuncAlternative?t.visitCaseFuncAlternative(this):t.visitChildren(this)}},tH=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_levelsInWeightString}copyFrom(t){super.copyFrom(t)}},eH=class extends tH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LEVEL(){return this.getToken(FC.LEVEL,0)}MINUS(){return this.getToken(FC.MINUS,0)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}accept(t){return t.visitLevelWeightRange?t.visitLevelWeightRange(this):t.visitChildren(this)}},sH=class extends tH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LEVEL(){return this.getToken(FC.LEVEL,0)}levelInWeightListElement(t){return void 0===t?this.getRuleContexts(aH):this.getRuleContext(t,aH)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitLevelWeightList?t.visitLevelWeightList(this):t.visitChildren(this)}},aH=class extends ga{constructor(t,e){super(t,e)}decimalLiteral(){return this.getRuleContext(0,Qx)}ASC(){return this.getToken(FC.ASC,0)}DESC(){return this.getToken(FC.DESC,0)}REVERSE(){return this.getToken(FC.REVERSE,0)}get ruleIndex(){return FC.RULE_levelInWeightListElement}accept(t){return t.visitLevelInWeightListElement?t.visitLevelInWeightListElement(this):t.visitChildren(this)}},rH=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}functionArg(){return this.getRuleContext(0,uH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}AVG(){return this.getToken(FC.AVG,0)}MAX(){return this.getToken(FC.MAX,0)}MIN(){return this.getToken(FC.MIN,0)}SUM(){return this.getToken(FC.SUM,0)}overClause(){return this.getRuleContext(0,cH)}ALL(){return this.getToken(FC.ALL,0)}DISTINCT(){return this.getToken(FC.DISTINCT,0)}COUNT(){return this.getToken(FC.COUNT,0)}functionArgs(){return this.getRuleContext(0,IH)}STAR(){return this.getToken(FC.STAR,0)}BIT_AND(){return this.getToken(FC.BIT_AND,0)}BIT_OR(){return this.getToken(FC.BIT_OR,0)}BIT_XOR(){return this.getToken(FC.BIT_XOR,0)}STD(){return this.getToken(FC.STD,0)}STDDEV(){return this.getToken(FC.STDDEV,0)}STDDEV_POP(){return this.getToken(FC.STDDEV_POP,0)}STDDEV_SAMP(){return this.getToken(FC.STDDEV_SAMP,0)}VAR_POP(){return this.getToken(FC.VAR_POP,0)}VAR_SAMP(){return this.getToken(FC.VAR_SAMP,0)}VARIANCE(){return this.getToken(FC.VARIANCE,0)}GROUP_CONCAT(){return this.getToken(FC.GROUP_CONCAT,0)}ORDER(){return this.getToken(FC.ORDER,0)}BY(){return this.getToken(FC.BY,0)}orderByExpression(t){return void 0===t?this.getRuleContexts(dU):this.getRuleContext(t,dU)}SEPARATOR(){return this.getToken(FC.SEPARATOR,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_aggregateWindowedFunction}accept(t){return t.visitAggregateWindowedFunction?t.visitAggregateWindowedFunction(this):t.visitChildren(this)}},iH=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(){return this.getRuleContext(0,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}overClause(){return this.getRuleContext(0,cH)}LAG(){return this.getToken(FC.LAG,0)}LEAD(){return this.getToken(FC.LEAD,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}decimalLiteral(t){return void 0===t?this.getRuleContexts(Qx):this.getRuleContext(t,Qx)}FIRST_VALUE(){return this.getToken(FC.FIRST_VALUE,0)}LAST_VALUE(){return this.getToken(FC.LAST_VALUE,0)}CUME_DIST(){return this.getToken(FC.CUME_DIST,0)}DENSE_RANK(){return this.getToken(FC.DENSE_RANK,0)}PERCENT_RANK(){return this.getToken(FC.PERCENT_RANK,0)}RANK(){return this.getToken(FC.RANK,0)}ROW_NUMBER(){return this.getToken(FC.ROW_NUMBER,0)}NTH_VALUE(){return this.getToken(FC.NTH_VALUE,0)}NTILE(){return this.getToken(FC.NTILE,0)}get ruleIndex(){return FC.RULE_nonAggregateWindowedFunction}accept(t){return t.visitNonAggregateWindowedFunction?t.visitNonAggregateWindowedFunction(this):t.visitChildren(this)}},cH=class extends ga{constructor(t,e){super(t,e)}OVER(){return this.getToken(FC.OVER,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}windowSpec(){return this.getRuleContext(0,nH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}windowName(){return this.getRuleContext(0,hH)}get ruleIndex(){return FC.RULE_overClause}accept(t){return t.visitOverClause?t.visitOverClause(this):t.visitChildren(this)}},nH=class extends ga{constructor(t,e){super(t,e)}windowName(){return this.getRuleContext(0,hH)}partitionClause(){return this.getRuleContext(0,SH)}orderByClause(){return this.getRuleContext(0,MU)}frameClause(){return this.getRuleContext(0,EH)}get ruleIndex(){return FC.RULE_windowSpec}accept(t){return t.visitWindowSpec?t.visitWindowSpec(this):t.visitChildren(this)}},hH=class extends ga{constructor(t,e){super(t,e)}uid(){return this.getRuleContext(0,Vx)}get ruleIndex(){return FC.RULE_windowName}accept(t){return t.visitWindowName?t.visitWindowName(this):t.visitChildren(this)}},EH=class extends ga{constructor(t,e){super(t,e)}frameUnits(){return this.getRuleContext(0,TH)}frameExtent(){return this.getRuleContext(0,oH)}get ruleIndex(){return FC.RULE_frameClause}accept(t){return t.visitFrameClause?t.visitFrameClause(this):t.visitChildren(this)}},TH=class extends ga{constructor(t,e){super(t,e)}ROWS(){return this.getToken(FC.ROWS,0)}RANGE(){return this.getToken(FC.RANGE,0)}get ruleIndex(){return FC.RULE_frameUnits}accept(t){return t.visitFrameUnits?t.visitFrameUnits(this):t.visitChildren(this)}},oH=class extends ga{constructor(t,e){super(t,e)}frameRange(){return this.getRuleContext(0,AH)}frameBetween(){return this.getRuleContext(0,RH)}get ruleIndex(){return FC.RULE_frameExtent}accept(t){return t.visitFrameExtent?t.visitFrameExtent(this):t.visitChildren(this)}},RH=class extends ga{constructor(t,e){super(t,e)}BETWEEN(){return this.getToken(FC.BETWEEN,0)}frameRange(t){return void 0===t?this.getRuleContexts(AH):this.getRuleContext(t,AH)}AND(){return this.getToken(FC.AND,0)}get ruleIndex(){return FC.RULE_frameBetween}accept(t){return t.visitFrameBetween?t.visitFrameBetween(this):t.visitChildren(this)}},AH=class extends ga{constructor(t,e){super(t,e)}CURRENT(){return this.getToken(FC.CURRENT,0)}ROW(){return this.getToken(FC.ROW,0)}UNBOUNDED(){return this.getToken(FC.UNBOUNDED,0)}PRECEDING(){return this.getToken(FC.PRECEDING,0)}FOLLOWING(){return this.getToken(FC.FOLLOWING,0)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_frameRange}accept(t){return t.visitFrameRange?t.visitFrameRange(this):t.visitChildren(this)}},SH=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(FC.PARTITION,0)}BY(){return this.getToken(FC.BY,0)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_partitionClause}accept(t){return t.visitPartitionClause?t.visitPartitionClause(this):t.visitChildren(this)}},lH=class extends ga{constructor(t,e){super(t,e)}functionNameBase(){return this.getRuleContext(0,oG)}ASCII(){return this.getToken(FC.ASCII,0)}CURDATE(){return this.getToken(FC.CURDATE,0)}CURRENT_DATE(){return this.getToken(FC.CURRENT_DATE,0)}CURRENT_TIME(){return this.getToken(FC.CURRENT_TIME,0)}CURRENT_TIMESTAMP(){return this.getToken(FC.CURRENT_TIMESTAMP,0)}CURTIME(){return this.getToken(FC.CURTIME,0)}DATE_ADD(){return this.getToken(FC.DATE_ADD,0)}DATE_SUB(){return this.getToken(FC.DATE_SUB,0)}IF(){return this.getToken(FC.IF,0)}INSERT(){return this.getToken(FC.INSERT,0)}LOCALTIME(){return this.getToken(FC.LOCALTIME,0)}LOCALTIMESTAMP(){return this.getToken(FC.LOCALTIMESTAMP,0)}MID(){return this.getToken(FC.MID,0)}NOW(){return this.getToken(FC.NOW,0)}REPEAT(){return this.getToken(FC.REPEAT,0)}REPLACE(){return this.getToken(FC.REPLACE,0)}SUBSTR(){return this.getToken(FC.SUBSTR,0)}SUBSTRING(){return this.getToken(FC.SUBSTRING,0)}SYSDATE(){return this.getToken(FC.SYSDATE,0)}TRIM(){return this.getToken(FC.TRIM,0)}UTC_DATE(){return this.getToken(FC.UTC_DATE,0)}UTC_TIME(){return this.getToken(FC.UTC_TIME,0)}UTC_TIMESTAMP(){return this.getToken(FC.UTC_TIMESTAMP,0)}get ruleIndex(){return FC.RULE_scalarFunctionName}accept(t){return t.visitScalarFunctionName?t.visitScalarFunctionName(this):t.visitChildren(this)}},OH=class extends ga{constructor(t,e){super(t,e)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}functionArg(){return this.getRuleContext(0,uH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}OLD_PASSWORD(){return this.getToken(FC.OLD_PASSWORD,0)}get ruleIndex(){return FC.RULE_passwordFunctionClause}accept(t){return t.visitPasswordFunctionClause?t.visitPasswordFunctionClause(this):t.visitChildren(this)}},IH=class extends ga{constructor(t,e){super(t,e)}constant(t){return void 0===t?this.getRuleContexts($x):this.getRuleContext(t,$x)}fullColumnName(t){return void 0===t?this.getRuleContexts(Px):this.getRuleContext(t,Px)}functionCall(t){return void 0===t?this.getRuleContexts(xk):this.getRuleContext(t,xk)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}get ruleIndex(){return FC.RULE_functionArgs}accept(t){return t.visitFunctionArgs?t.visitFunctionArgs(this):t.visitChildren(this)}},uH=class extends ga{constructor(t,e){super(t,e)}constant(){return this.getRuleContext(0,$x)}fullColumnName(){return this.getRuleContext(0,Px)}functionCall(){return this.getRuleContext(0,xk)}expression(){return this.getRuleContext(0,NH)}get ruleIndex(){return FC.RULE_functionArg}accept(t){return t.visitFunctionArg?t.visitFunctionArg(this):t.visitChildren(this)}},NH=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_expression}copyFrom(t){super.copyFrom(t)}},LH=class extends NH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(){return this.getRuleContext(0,MH)}IS(){return this.getToken(FC.IS,0)}TRUE(){return this.getToken(FC.TRUE,0)}FALSE(){return this.getToken(FC.FALSE,0)}UNKNOWN(){return this.getToken(FC.UNKNOWN,0)}NOT(){return this.getToken(FC.NOT,0)}accept(t){return t.visitIsExpression?t.visitIsExpression(this):t.visitChildren(this)}},CH=class extends NH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}expression(){return this.getRuleContext(0,NH)}NOT(){return this.getToken(FC.NOT,0)}EXCLAMATION_SYMBOL(){return this.getToken(FC.EXCLAMATION_SYMBOL,0)}accept(t){return t.visitNotExpression?t.visitNotExpression(this):t.visitChildren(this)}},_H=class extends NH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}logicalOperator(){return this.getRuleContext(0,tG)}accept(t){return t.visitLogicalExpression?t.visitLogicalExpression(this):t.visitChildren(this)}},PH=class extends NH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(){return this.getRuleContext(0,MH)}accept(t){return t.visitPredicateExpression?t.visitPredicateExpression(this):t.visitChildren(this)}},MH=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_predicate}copyFrom(t){super.copyFrom(t)}},dH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(t){return void 0===t?this.getRuleContexts(MH):this.getRuleContext(t,MH)}SOUNDS(){return this.getToken(FC.SOUNDS,0)}LIKE(){return this.getToken(FC.LIKE,0)}accept(t){return t.visitSoundsLikePredicate?t.visitSoundsLikePredicate(this):t.visitChildren(this)}},UH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}expressionAtom(){return this.getRuleContext(0,FH)}accept(t){return t.visitExpressionAtomPredicate?t.visitExpressionAtomPredicate(this):t.visitChildren(this)}},mH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(){return this.getRuleContext(0,MH)}comparisonOperator(){return this.getRuleContext(0,$H)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}selectStatement(){return this.getRuleContext(0,rU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}ALL(){return this.getToken(FC.ALL,0)}ANY(){return this.getToken(FC.ANY,0)}SOME(){return this.getToken(FC.SOME,0)}accept(t){return t.visitSubqueryComparisonPredicate?t.visitSubqueryComparisonPredicate(this):t.visitChildren(this)}},DH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(t){return void 0===t?this.getRuleContexts(MH):this.getRuleContext(t,MH)}MEMBER(){return this.getToken(FC.MEMBER,0)}OF(){return this.getToken(FC.OF,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitJsonMemberOfPredicate?t.visitJsonMemberOfPredicate(this):t.visitChildren(this)}},pH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}comparisonOperator(){return this.getRuleContext(0,$H)}predicate(t){return void 0===t?this.getRuleContexts(MH):this.getRuleContext(t,MH)}accept(t){return t.visitBinaryComparisonPredicate?t.visitBinaryComparisonPredicate(this):t.visitChildren(this)}},gH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(){return this.getRuleContext(0,MH)}IN(){return this.getToken(FC.IN,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}selectStatement(){return this.getRuleContext(0,rU)}expressions(){return this.getRuleContext(0,Nk)}NOT(){return this.getToken(FC.NOT,0)}accept(t){return t.visitInPredicate?t.visitInPredicate(this):t.visitChildren(this)}},xH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(t){return void 0===t?this.getRuleContexts(MH):this.getRuleContext(t,MH)}BETWEEN(){return this.getToken(FC.BETWEEN,0)}AND(){return this.getToken(FC.AND,0)}NOT(){return this.getToken(FC.NOT,0)}accept(t){return t.visitBetweenPredicate?t.visitBetweenPredicate(this):t.visitChildren(this)}},kH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(){return this.getRuleContext(0,MH)}IS(){return this.getToken(FC.IS,0)}nullNotnull(){return this.getRuleContext(0,zx)}accept(t){return t.visitIsNullPredicate?t.visitIsNullPredicate(this):t.visitChildren(this)}},HH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(t){return void 0===t?this.getRuleContexts(MH):this.getRuleContext(t,MH)}LIKE(){return this.getToken(FC.LIKE,0)}NOT(){return this.getToken(FC.NOT,0)}ESCAPE(){return this.getToken(FC.ESCAPE,0)}STRING_LITERAL(){return this.getToken(FC.STRING_LITERAL,0)}accept(t){return t.visitLikePredicate?t.visitLikePredicate(this):t.visitChildren(this)}},GH=class extends MH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}predicate(t){return void 0===t?this.getRuleContexts(MH):this.getRuleContext(t,MH)}REGEXP(){return this.getToken(FC.REGEXP,0)}RLIKE(){return this.getToken(FC.RLIKE,0)}NOT(){return this.getToken(FC.NOT,0)}accept(t){return t.visitRegexpPredicate?t.visitRegexpPredicate(this):t.visitChildren(this)}},FH=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return FC.RULE_expressionAtom}copyFrom(t){super.copyFrom(t)}},vH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}unaryOperator(){return this.getRuleContext(0,zH)}expressionAtom(){return this.getRuleContext(0,FH)}accept(t){return t.visitUnaryExpressionAtom?t.visitUnaryExpressionAtom(this):t.visitChildren(this)}},BH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}expressionAtom(){return this.getRuleContext(0,FH)}COLLATE(){return this.getToken(FC.COLLATE,0)}collationName(){return this.getRuleContext(0,Bx)}accept(t){return t.visitCollateExpressionAtom?t.visitCollateExpressionAtom(this):t.visitChildren(this)}},yH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LOCAL_ID(){return this.getToken(FC.LOCAL_ID,0)}VAR_ASSIGN(){return this.getToken(FC.VAR_ASSIGN,0)}expressionAtom(){return this.getRuleContext(0,FH)}accept(t){return t.visitVariableAssignExpressionAtom?t.visitVariableAssignExpressionAtom(this):t.visitChildren(this)}},fH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}mysqlVariable(){return this.getRuleContext(0,Fx)}accept(t){return t.visitMysqlVariableExpressionAtom?t.visitMysqlVariableExpressionAtom(this):t.visitChildren(this)}},YH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitNestedExpressionAtom?t.visitNestedExpressionAtom(this):t.visitChildren(this)}},wH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ROW(){return this.getToken(FC.ROW,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}expression(t){return void 0===t?this.getRuleContexts(NH):this.getRuleContext(t,NH)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}COMMA(t){return void 0===t?this.getTokens(FC.COMMA):this.getToken(FC.COMMA,t)}accept(t){return t.visitNestedRowExpressionAtom?t.visitNestedRowExpressionAtom(this):t.visitChildren(this)}},bH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}multOperator(){return this.getRuleContext(0,sG)}expressionAtom(t){return void 0===t?this.getRuleContexts(FH):this.getRuleContext(t,FH)}addOperator(){return this.getRuleContext(0,aG)}accept(t){return t.visitMathExpressionAtom?t.visitMathExpressionAtom(this):t.visitChildren(this)}},WH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXISTS(){return this.getToken(FC.EXISTS,0)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}selectStatement(){return this.getRuleContext(0,rU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitExistsExpressionAtom?t.visitExistsExpressionAtom(this):t.visitChildren(this)}},VH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INTERVAL(){return this.getToken(FC.INTERVAL,0)}expression(){return this.getRuleContext(0,NH)}intervalType(){return this.getRuleContext(0,__)}accept(t){return t.visitIntervalExpressionAtom?t.visitIntervalExpressionAtom(this):t.visitChildren(this)}},XH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}jsonOperator(){return this.getRuleContext(0,rG)}expressionAtom(t){return void 0===t?this.getRuleContexts(FH):this.getRuleContext(t,FH)}accept(t){return t.visitJsonExpressionAtom?t.visitJsonExpressionAtom(this):t.visitChildren(this)}},KH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LR_BRACKET(){return this.getToken(FC.LR_BRACKET,0)}selectStatement(){return this.getRuleContext(0,rU)}RR_BRACKET(){return this.getToken(FC.RR_BRACKET,0)}accept(t){return t.visitSubqueryExpressionAtom?t.visitSubqueryExpressionAtom(this):t.visitChildren(this)}},QH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}constant(){return this.getRuleContext(0,$x)}accept(t){return t.visitConstantExpressionAtom?t.visitConstantExpressionAtom(this):t.visitChildren(this)}},JH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}functionCall(){return this.getRuleContext(0,xk)}accept(t){return t.visitFunctionCallExpressionAtom?t.visitFunctionCallExpressionAtom(this):t.visitChildren(this)}},ZH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}BINARY(){return this.getToken(FC.BINARY,0)}expressionAtom(){return this.getRuleContext(0,FH)}accept(t){return t.visitBinaryExpressionAtom?t.visitBinaryExpressionAtom(this):t.visitChildren(this)}},qH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}fullColumnName(){return this.getRuleContext(0,Px)}accept(t){return t.visitFullColumnNameExpressionAtom?t.visitFullColumnNameExpressionAtom(this):t.visitChildren(this)}},jH=class extends FH{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}bitOperator(){return this.getRuleContext(0,eG)}expressionAtom(t){return void 0===t?this.getRuleContexts(FH):this.getRuleContext(t,FH)}accept(t){return t.visitBitExpressionAtom?t.visitBitExpressionAtom(this):t.visitChildren(this)}},zH=class extends ga{constructor(t,e){super(t,e)}EXCLAMATION_SYMBOL(){return this.getToken(FC.EXCLAMATION_SYMBOL,0)}BIT_NOT_OP(){return this.getToken(FC.BIT_NOT_OP,0)}PLUS(){return this.getToken(FC.PLUS,0)}MINUS(){return this.getToken(FC.MINUS,0)}NOT(){return this.getToken(FC.NOT,0)}get ruleIndex(){return FC.RULE_unaryOperator}accept(t){return t.visitUnaryOperator?t.visitUnaryOperator(this):t.visitChildren(this)}},$H=class extends ga{constructor(t,e){super(t,e)}EQUAL_SYMBOL(){return this.getToken(FC.EQUAL_SYMBOL,0)}GREATER_SYMBOL(){return this.getToken(FC.GREATER_SYMBOL,0)}LESS_SYMBOL(){return this.getToken(FC.LESS_SYMBOL,0)}EXCLAMATION_SYMBOL(){return this.getToken(FC.EXCLAMATION_SYMBOL,0)}get ruleIndex(){return FC.RULE_comparisonOperator}accept(t){return t.visitComparisonOperator?t.visitComparisonOperator(this):t.visitChildren(this)}},tG=class extends ga{constructor(t,e){super(t,e)}AND(){return this.getToken(FC.AND,0)}BIT_AND_OP(t){return void 0===t?this.getTokens(FC.BIT_AND_OP):this.getToken(FC.BIT_AND_OP,t)}XOR(){return this.getToken(FC.XOR,0)}OR(){return this.getToken(FC.OR,0)}BIT_OR_OP(t){return void 0===t?this.getTokens(FC.BIT_OR_OP):this.getToken(FC.BIT_OR_OP,t)}get ruleIndex(){return FC.RULE_logicalOperator}accept(t){return t.visitLogicalOperator?t.visitLogicalOperator(this):t.visitChildren(this)}},eG=class extends ga{constructor(t,e){super(t,e)}LESS_SYMBOL(t){return void 0===t?this.getTokens(FC.LESS_SYMBOL):this.getToken(FC.LESS_SYMBOL,t)}GREATER_SYMBOL(t){return void 0===t?this.getTokens(FC.GREATER_SYMBOL):this.getToken(FC.GREATER_SYMBOL,t)}BIT_AND_OP(){return this.getToken(FC.BIT_AND_OP,0)}BIT_XOR_OP(){return this.getToken(FC.BIT_XOR_OP,0)}BIT_OR_OP(){return this.getToken(FC.BIT_OR_OP,0)}get ruleIndex(){return FC.RULE_bitOperator}accept(t){return t.visitBitOperator?t.visitBitOperator(this):t.visitChildren(this)}},sG=class extends ga{constructor(t,e){super(t,e)}STAR(){return this.getToken(FC.STAR,0)}DIVIDE(){return this.getToken(FC.DIVIDE,0)}MODULE(){return this.getToken(FC.MODULE,0)}DIV(){return this.getToken(FC.DIV,0)}MOD(){return this.getToken(FC.MOD,0)}get ruleIndex(){return FC.RULE_multOperator}accept(t){return t.visitMultOperator?t.visitMultOperator(this):t.visitChildren(this)}},aG=class extends ga{constructor(t,e){super(t,e)}PLUS(){return this.getToken(FC.PLUS,0)}MINUS(){return this.getToken(FC.MINUS,0)}get ruleIndex(){return FC.RULE_addOperator}accept(t){return t.visitAddOperator?t.visitAddOperator(this):t.visitChildren(this)}},rG=class extends ga{constructor(t,e){super(t,e)}MINUS(){return this.getToken(FC.MINUS,0)}GREATER_SYMBOL(t){return void 0===t?this.getTokens(FC.GREATER_SYMBOL):this.getToken(FC.GREATER_SYMBOL,t)}get ruleIndex(){return FC.RULE_jsonOperator}accept(t){return t.visitJsonOperator?t.visitJsonOperator(this):t.visitChildren(this)}},iG=class extends ga{constructor(t,e){super(t,e)}ARMSCII8(){return this.getToken(FC.ARMSCII8,0)}ASCII(){return this.getToken(FC.ASCII,0)}BIG5(){return this.getToken(FC.BIG5,0)}BINARY(){return this.getToken(FC.BINARY,0)}CP1250(){return this.getToken(FC.CP1250,0)}CP1251(){return this.getToken(FC.CP1251,0)}CP1256(){return this.getToken(FC.CP1256,0)}CP1257(){return this.getToken(FC.CP1257,0)}CP850(){return this.getToken(FC.CP850,0)}CP852(){return this.getToken(FC.CP852,0)}CP866(){return this.getToken(FC.CP866,0)}CP932(){return this.getToken(FC.CP932,0)}DEC8(){return this.getToken(FC.DEC8,0)}EUCJPMS(){return this.getToken(FC.EUCJPMS,0)}EUCKR(){return this.getToken(FC.EUCKR,0)}GB18030(){return this.getToken(FC.GB18030,0)}GB2312(){return this.getToken(FC.GB2312,0)}GBK(){return this.getToken(FC.GBK,0)}GEOSTD8(){return this.getToken(FC.GEOSTD8,0)}GREEK(){return this.getToken(FC.GREEK,0)}HEBREW(){return this.getToken(FC.HEBREW,0)}HP8(){return this.getToken(FC.HP8,0)}KEYBCS2(){return this.getToken(FC.KEYBCS2,0)}KOI8R(){return this.getToken(FC.KOI8R,0)}KOI8U(){return this.getToken(FC.KOI8U,0)}LATIN1(){return this.getToken(FC.LATIN1,0)}LATIN2(){return this.getToken(FC.LATIN2,0)}LATIN5(){return this.getToken(FC.LATIN5,0)}LATIN7(){return this.getToken(FC.LATIN7,0)}MACCE(){return this.getToken(FC.MACCE,0)}MACROMAN(){return this.getToken(FC.MACROMAN,0)}SJIS(){return this.getToken(FC.SJIS,0)}SWE7(){return this.getToken(FC.SWE7,0)}TIS620(){return this.getToken(FC.TIS620,0)}UCS2(){return this.getToken(FC.UCS2,0)}UJIS(){return this.getToken(FC.UJIS,0)}UTF16(){return this.getToken(FC.UTF16,0)}UTF16LE(){return this.getToken(FC.UTF16LE,0)}UTF32(){return this.getToken(FC.UTF32,0)}UTF8(){return this.getToken(FC.UTF8,0)}UTF8MB3(){return this.getToken(FC.UTF8MB3,0)}UTF8MB4(){return this.getToken(FC.UTF8MB4,0)}get ruleIndex(){return FC.RULE_charsetNameBase}accept(t){return t.visitCharsetNameBase?t.visitCharsetNameBase(this):t.visitChildren(this)}},cG=class extends ga{constructor(t,e){super(t,e)}REPEATABLE(){return this.getToken(FC.REPEATABLE,0)}COMMITTED(){return this.getToken(FC.COMMITTED,0)}UNCOMMITTED(){return this.getToken(FC.UNCOMMITTED,0)}SERIALIZABLE(){return this.getToken(FC.SERIALIZABLE,0)}get ruleIndex(){return FC.RULE_transactionLevelBase}accept(t){return t.visitTransactionLevelBase?t.visitTransactionLevelBase(this):t.visitChildren(this)}},nG=class extends ga{constructor(t,e){super(t,e)}TABLES(){return this.getToken(FC.TABLES,0)}ROUTINE(){return this.getToken(FC.ROUTINE,0)}EXECUTE(){return this.getToken(FC.EXECUTE,0)}FILE(){return this.getToken(FC.FILE,0)}PROCESS(){return this.getToken(FC.PROCESS,0)}RELOAD(){return this.getToken(FC.RELOAD,0)}SHUTDOWN(){return this.getToken(FC.SHUTDOWN,0)}SUPER(){return this.getToken(FC.SUPER,0)}PRIVILEGES(){return this.getToken(FC.PRIVILEGES,0)}get ruleIndex(){return FC.RULE_privilegesBase}accept(t){return t.visitPrivilegesBase?t.visitPrivilegesBase(this):t.visitChildren(this)}},hG=class extends ga{constructor(t,e){super(t,e)}QUARTER(){return this.getToken(FC.QUARTER,0)}MONTH(){return this.getToken(FC.MONTH,0)}DAY(){return this.getToken(FC.DAY,0)}HOUR(){return this.getToken(FC.HOUR,0)}MINUTE(){return this.getToken(FC.MINUTE,0)}WEEK(){return this.getToken(FC.WEEK,0)}SECOND(){return this.getToken(FC.SECOND,0)}MICROSECOND(){return this.getToken(FC.MICROSECOND,0)}get ruleIndex(){return FC.RULE_intervalTypeBase}accept(t){return t.visitIntervalTypeBase?t.visitIntervalTypeBase(this):t.visitChildren(this)}},EG=class extends ga{constructor(t,e){super(t,e)}DATE(){return this.getToken(FC.DATE,0)}TIME(){return this.getToken(FC.TIME,0)}TIMESTAMP(){return this.getToken(FC.TIMESTAMP,0)}DATETIME(){return this.getToken(FC.DATETIME,0)}YEAR(){return this.getToken(FC.YEAR,0)}ENUM(){return this.getToken(FC.ENUM,0)}TEXT(){return this.getToken(FC.TEXT,0)}get ruleIndex(){return FC.RULE_dataTypeBase}accept(t){return t.visitDataTypeBase?t.visitDataTypeBase(this):t.visitChildren(this)}},TG=class extends ga{constructor(t,e){super(t,e)}ACCOUNT(){return this.getToken(FC.ACCOUNT,0)}ACTION(){return this.getToken(FC.ACTION,0)}ADMIN(){return this.getToken(FC.ADMIN,0)}AFTER(){return this.getToken(FC.AFTER,0)}AGGREGATE(){return this.getToken(FC.AGGREGATE,0)}ALGORITHM(){return this.getToken(FC.ALGORITHM,0)}ANY(){return this.getToken(FC.ANY,0)}ARRAY(){return this.getToken(FC.ARRAY,0)}AT(){return this.getToken(FC.AT,0)}AUDIT_ADMIN(){return this.getToken(FC.AUDIT_ADMIN,0)}AUDIT_ABORT_EXEMPT(){return this.getToken(FC.AUDIT_ABORT_EXEMPT,0)}AUTHORS(){return this.getToken(FC.AUTHORS,0)}AUTOCOMMIT(){return this.getToken(FC.AUTOCOMMIT,0)}AUTOEXTEND_SIZE(){return this.getToken(FC.AUTOEXTEND_SIZE,0)}AUTO_INCREMENT(){return this.getToken(FC.AUTO_INCREMENT,0)}AUTHENTICATION_POLICY_ADMIN(){return this.getToken(FC.AUTHENTICATION_POLICY_ADMIN,0)}AVG(){return this.getToken(FC.AVG,0)}AVG_ROW_LENGTH(){return this.getToken(FC.AVG_ROW_LENGTH,0)}ATTRIBUTE(){return this.getToken(FC.ATTRIBUTE,0)}BACKUP_ADMIN(){return this.getToken(FC.BACKUP_ADMIN,0)}BEGIN(){return this.getToken(FC.BEGIN,0)}BINLOG(){return this.getToken(FC.BINLOG,0)}BINLOG_ADMIN(){return this.getToken(FC.BINLOG_ADMIN,0)}BINLOG_ENCRYPTION_ADMIN(){return this.getToken(FC.BINLOG_ENCRYPTION_ADMIN,0)}BIT(){return this.getToken(FC.BIT,0)}BIT_AND(){return this.getToken(FC.BIT_AND,0)}BIT_OR(){return this.getToken(FC.BIT_OR,0)}BIT_XOR(){return this.getToken(FC.BIT_XOR,0)}BLOCK(){return this.getToken(FC.BLOCK,0)}BOOL(){return this.getToken(FC.BOOL,0)}BOOLEAN(){return this.getToken(FC.BOOLEAN,0)}BTREE(){return this.getToken(FC.BTREE,0)}BUCKETS(){return this.getToken(FC.BUCKETS,0)}CACHE(){return this.getToken(FC.CACHE,0)}CASCADED(){return this.getToken(FC.CASCADED,0)}CHAIN(){return this.getToken(FC.CHAIN,0)}CHANGED(){return this.getToken(FC.CHANGED,0)}CHANNEL(){return this.getToken(FC.CHANNEL,0)}CHECKSUM(){return this.getToken(FC.CHECKSUM,0)}PAGE_CHECKSUM(){return this.getToken(FC.PAGE_CHECKSUM,0)}CATALOG_NAME(){return this.getToken(FC.CATALOG_NAME,0)}CIPHER(){return this.getToken(FC.CIPHER,0)}CLASS_ORIGIN(){return this.getToken(FC.CLASS_ORIGIN,0)}CLIENT(){return this.getToken(FC.CLIENT,0)}CLONE_ADMIN(){return this.getToken(FC.CLONE_ADMIN,0)}CLOSE(){return this.getToken(FC.CLOSE,0)}CLUSTERING(){return this.getToken(FC.CLUSTERING,0)}COALESCE(){return this.getToken(FC.COALESCE,0)}CODE(){return this.getToken(FC.CODE,0)}COLUMNS(){return this.getToken(FC.COLUMNS,0)}COLUMN_FORMAT(){return this.getToken(FC.COLUMN_FORMAT,0)}COLUMN_NAME(){return this.getToken(FC.COLUMN_NAME,0)}COMMENT(){return this.getToken(FC.COMMENT,0)}COMMIT(){return this.getToken(FC.COMMIT,0)}COMPACT(){return this.getToken(FC.COMPACT,0)}COMPLETION(){return this.getToken(FC.COMPLETION,0)}COMPRESSED(){return this.getToken(FC.COMPRESSED,0)}COMPRESSION(){return this.getToken(FC.COMPRESSION,0)}CONCURRENT(){return this.getToken(FC.CONCURRENT,0)}CONDITION(){return this.getToken(FC.CONDITION,0)}CONNECT(){return this.getToken(FC.CONNECT,0)}CONNECTION(){return this.getToken(FC.CONNECTION,0)}CONNECTION_ADMIN(){return this.getToken(FC.CONNECTION_ADMIN,0)}CONSISTENT(){return this.getToken(FC.CONSISTENT,0)}CONSTRAINT_CATALOG(){return this.getToken(FC.CONSTRAINT_CATALOG,0)}CONSTRAINT_NAME(){return this.getToken(FC.CONSTRAINT_NAME,0)}CONSTRAINT_SCHEMA(){return this.getToken(FC.CONSTRAINT_SCHEMA,0)}CONTAINS(){return this.getToken(FC.CONTAINS,0)}CONTEXT(){return this.getToken(FC.CONTEXT,0)}CONTRIBUTORS(){return this.getToken(FC.CONTRIBUTORS,0)}COPY(){return this.getToken(FC.COPY,0)}COUNT(){return this.getToken(FC.COUNT,0)}CPU(){return this.getToken(FC.CPU,0)}CURRENT(){return this.getToken(FC.CURRENT,0)}CURRENT_USER(){return this.getToken(FC.CURRENT_USER,0)}CURSOR_NAME(){return this.getToken(FC.CURSOR_NAME,0)}DATA(){return this.getToken(FC.DATA,0)}DATAFILE(){return this.getToken(FC.DATAFILE,0)}DEALLOCATE(){return this.getToken(FC.DEALLOCATE,0)}DEFAULT(){return this.getToken(FC.DEFAULT,0)}DEFAULT_AUTH(){return this.getToken(FC.DEFAULT_AUTH,0)}DEFINER(){return this.getToken(FC.DEFINER,0)}DELAY_KEY_WRITE(){return this.getToken(FC.DELAY_KEY_WRITE,0)}DES_KEY_FILE(){return this.getToken(FC.DES_KEY_FILE,0)}DIAGNOSTICS(){return this.getToken(FC.DIAGNOSTICS,0)}DIRECTORY(){return this.getToken(FC.DIRECTORY,0)}DISABLE(){return this.getToken(FC.DISABLE,0)}DISCARD(){return this.getToken(FC.DISCARD,0)}DISK(){return this.getToken(FC.DISK,0)}DO(){return this.getToken(FC.DO,0)}DUMPFILE(){return this.getToken(FC.DUMPFILE,0)}DUPLICATE(){return this.getToken(FC.DUPLICATE,0)}DYNAMIC(){return this.getToken(FC.DYNAMIC,0)}EMPTY(){return this.getToken(FC.EMPTY,0)}ENABLE(){return this.getToken(FC.ENABLE,0)}ENCRYPTION(){return this.getToken(FC.ENCRYPTION,0)}ENCRYPTION_KEY_ADMIN(){return this.getToken(FC.ENCRYPTION_KEY_ADMIN,0)}END(){return this.getToken(FC.END,0)}ENDS(){return this.getToken(FC.ENDS,0)}ENGINE(){return this.getToken(FC.ENGINE,0)}ENGINE_ATTRIBUTE(){return this.getToken(FC.ENGINE_ATTRIBUTE,0)}ENGINES(){return this.getToken(FC.ENGINES,0)}ENFORCED(){return this.getToken(FC.ENFORCED,0)}ERROR(){return this.getToken(FC.ERROR,0)}ERRORS(){return this.getToken(FC.ERRORS,0)}ESCAPE(){return this.getToken(FC.ESCAPE,0)}EUR(){return this.getToken(FC.EUR,0)}EVEN(){return this.getToken(FC.EVEN,0)}EVENT(){return this.getToken(FC.EVENT,0)}EVENTS(){return this.getToken(FC.EVENTS,0)}EVERY(){return this.getToken(FC.EVERY,0)}EXCEPT(){return this.getToken(FC.EXCEPT,0)}EXCHANGE(){return this.getToken(FC.EXCHANGE,0)}EXCLUSIVE(){return this.getToken(FC.EXCLUSIVE,0)}EXPIRE(){return this.getToken(FC.EXPIRE,0)}EXPORT(){return this.getToken(FC.EXPORT,0)}EXTENDED(){return this.getToken(FC.EXTENDED,0)}EXTENT_SIZE(){return this.getToken(FC.EXTENT_SIZE,0)}FAILED_LOGIN_ATTEMPTS(){return this.getToken(FC.FAILED_LOGIN_ATTEMPTS,0)}FAST(){return this.getToken(FC.FAST,0)}FAULTS(){return this.getToken(FC.FAULTS,0)}FIELDS(){return this.getToken(FC.FIELDS,0)}FILE_BLOCK_SIZE(){return this.getToken(FC.FILE_BLOCK_SIZE,0)}FILTER(){return this.getToken(FC.FILTER,0)}FIREWALL_ADMIN(){return this.getToken(FC.FIREWALL_ADMIN,0)}FIREWALL_EXEMPT(){return this.getToken(FC.FIREWALL_EXEMPT,0)}FIREWALL_USER(){return this.getToken(FC.FIREWALL_USER,0)}FIRST(){return this.getToken(FC.FIRST,0)}FIXED(){return this.getToken(FC.FIXED,0)}FLUSH(){return this.getToken(FC.FLUSH,0)}FOLLOWS(){return this.getToken(FC.FOLLOWS,0)}FOUND(){return this.getToken(FC.FOUND,0)}FULL(){return this.getToken(FC.FULL,0)}FUNCTION(){return this.getToken(FC.FUNCTION,0)}GENERAL(){return this.getToken(FC.GENERAL,0)}GLOBAL(){return this.getToken(FC.GLOBAL,0)}GRANTS(){return this.getToken(FC.GRANTS,0)}GROUP(){return this.getToken(FC.GROUP,0)}GROUP_CONCAT(){return this.getToken(FC.GROUP_CONCAT,0)}GROUP_REPLICATION(){return this.getToken(FC.GROUP_REPLICATION,0)}GROUP_REPLICATION_ADMIN(){return this.getToken(FC.GROUP_REPLICATION_ADMIN,0)}HANDLER(){return this.getToken(FC.HANDLER,0)}HASH(){return this.getToken(FC.HASH,0)}HELP(){return this.getToken(FC.HELP,0)}HISTORY(){return this.getToken(FC.HISTORY,0)}HOST(){return this.getToken(FC.HOST,0)}HOSTS(){return this.getToken(FC.HOSTS,0)}IDENTIFIED(){return this.getToken(FC.IDENTIFIED,0)}IGNORED(){return this.getToken(FC.IGNORED,0)}IGNORE_SERVER_IDS(){return this.getToken(FC.IGNORE_SERVER_IDS,0)}IMPORT(){return this.getToken(FC.IMPORT,0)}INDEXES(){return this.getToken(FC.INDEXES,0)}INITIAL_SIZE(){return this.getToken(FC.INITIAL_SIZE,0)}INNODB_REDO_LOG_ARCHIVE(){return this.getToken(FC.INNODB_REDO_LOG_ARCHIVE,0)}INPLACE(){return this.getToken(FC.INPLACE,0)}INSERT_METHOD(){return this.getToken(FC.INSERT_METHOD,0)}INSTALL(){return this.getToken(FC.INSTALL,0)}INSTANCE(){return this.getToken(FC.INSTANCE,0)}INSTANT(){return this.getToken(FC.INSTANT,0)}INTERNAL(){return this.getToken(FC.INTERNAL,0)}INVOKE(){return this.getToken(FC.INVOKE,0)}INVOKER(){return this.getToken(FC.INVOKER,0)}IO(){return this.getToken(FC.IO,0)}IO_THREAD(){return this.getToken(FC.IO_THREAD,0)}IPC(){return this.getToken(FC.IPC,0)}ISO(){return this.getToken(FC.ISO,0)}ISOLATION(){return this.getToken(FC.ISOLATION,0)}ISSUER(){return this.getToken(FC.ISSUER,0)}JIS(){return this.getToken(FC.JIS,0)}JSON(){return this.getToken(FC.JSON,0)}KEY_BLOCK_SIZE(){return this.getToken(FC.KEY_BLOCK_SIZE,0)}LAMBDA(){return this.getToken(FC.LAMBDA,0)}LANGUAGE(){return this.getToken(FC.LANGUAGE,0)}LAST(){return this.getToken(FC.LAST,0)}LATERAL(){return this.getToken(FC.LATERAL,0)}LEAVES(){return this.getToken(FC.LEAVES,0)}LESS(){return this.getToken(FC.LESS,0)}LEVEL(){return this.getToken(FC.LEVEL,0)}LIST(){return this.getToken(FC.LIST,0)}LOCAL(){return this.getToken(FC.LOCAL,0)}LOGFILE(){return this.getToken(FC.LOGFILE,0)}LOGS(){return this.getToken(FC.LOGS,0)}MASTER(){return this.getToken(FC.MASTER,0)}MASTER_AUTO_POSITION(){return this.getToken(FC.MASTER_AUTO_POSITION,0)}MASTER_CONNECT_RETRY(){return this.getToken(FC.MASTER_CONNECT_RETRY,0)}MASTER_DELAY(){return this.getToken(FC.MASTER_DELAY,0)}MASTER_HEARTBEAT_PERIOD(){return this.getToken(FC.MASTER_HEARTBEAT_PERIOD,0)}MASTER_HOST(){return this.getToken(FC.MASTER_HOST,0)}MASTER_LOG_FILE(){return this.getToken(FC.MASTER_LOG_FILE,0)}MASTER_LOG_POS(){return this.getToken(FC.MASTER_LOG_POS,0)}MASTER_PASSWORD(){return this.getToken(FC.MASTER_PASSWORD,0)}MASTER_PORT(){return this.getToken(FC.MASTER_PORT,0)}MASTER_RETRY_COUNT(){return this.getToken(FC.MASTER_RETRY_COUNT,0)}MASTER_SSL(){return this.getToken(FC.MASTER_SSL,0)}MASTER_SSL_CA(){return this.getToken(FC.MASTER_SSL_CA,0)}MASTER_SSL_CAPATH(){return this.getToken(FC.MASTER_SSL_CAPATH,0)}MASTER_SSL_CERT(){return this.getToken(FC.MASTER_SSL_CERT,0)}MASTER_SSL_CIPHER(){return this.getToken(FC.MASTER_SSL_CIPHER,0)}MASTER_SSL_CRL(){return this.getToken(FC.MASTER_SSL_CRL,0)}MASTER_SSL_CRLPATH(){return this.getToken(FC.MASTER_SSL_CRLPATH,0)}MASTER_SSL_KEY(){return this.getToken(FC.MASTER_SSL_KEY,0)}MASTER_TLS_VERSION(){return this.getToken(FC.MASTER_TLS_VERSION,0)}MASTER_USER(){return this.getToken(FC.MASTER_USER,0)}MAX_CONNECTIONS_PER_HOUR(){return this.getToken(FC.MAX_CONNECTIONS_PER_HOUR,0)}MAX_QUERIES_PER_HOUR(){return this.getToken(FC.MAX_QUERIES_PER_HOUR,0)}MAX(){return this.getToken(FC.MAX,0)}MAX_ROWS(){return this.getToken(FC.MAX_ROWS,0)}MAX_SIZE(){return this.getToken(FC.MAX_SIZE,0)}MAX_UPDATES_PER_HOUR(){return this.getToken(FC.MAX_UPDATES_PER_HOUR,0)}MAX_USER_CONNECTIONS(){return this.getToken(FC.MAX_USER_CONNECTIONS,0)}MEDIUM(){return this.getToken(FC.MEDIUM,0)}MEMBER(){return this.getToken(FC.MEMBER,0)}MEMORY(){return this.getToken(FC.MEMORY,0)}MERGE(){return this.getToken(FC.MERGE,0)}MESSAGE_TEXT(){return this.getToken(FC.MESSAGE_TEXT,0)}MID(){return this.getToken(FC.MID,0)}MIGRATE(){return this.getToken(FC.MIGRATE,0)}MIN(){return this.getToken(FC.MIN,0)}MIN_ROWS(){return this.getToken(FC.MIN_ROWS,0)}MODE(){return this.getToken(FC.MODE,0)}MODIFY(){return this.getToken(FC.MODIFY,0)}MUTEX(){return this.getToken(FC.MUTEX,0)}MYSQL(){return this.getToken(FC.MYSQL,0)}MYSQL_ERRNO(){return this.getToken(FC.MYSQL_ERRNO,0)}NAME(){return this.getToken(FC.NAME,0)}NAMES(){return this.getToken(FC.NAMES,0)}NCHAR(){return this.getToken(FC.NCHAR,0)}NDB_STORED_USER(){return this.getToken(FC.NDB_STORED_USER,0)}NESTED(){return this.getToken(FC.NESTED,0)}NEVER(){return this.getToken(FC.NEVER,0)}NEXT(){return this.getToken(FC.NEXT,0)}NO(){return this.getToken(FC.NO,0)}NOCOPY(){return this.getToken(FC.NOCOPY,0)}NODEGROUP(){return this.getToken(FC.NODEGROUP,0)}NONE(){return this.getToken(FC.NONE,0)}NOWAIT(){return this.getToken(FC.NOWAIT,0)}NUMBER(){return this.getToken(FC.NUMBER,0)}ODBC(){return this.getToken(FC.ODBC,0)}OFFLINE(){return this.getToken(FC.OFFLINE,0)}OFFSET(){return this.getToken(FC.OFFSET,0)}OF(){return this.getToken(FC.OF,0)}OJ(){return this.getToken(FC.OJ,0)}OLD_PASSWORD(){return this.getToken(FC.OLD_PASSWORD,0)}ONE(){return this.getToken(FC.ONE,0)}ONLINE(){return this.getToken(FC.ONLINE,0)}ONLY(){return this.getToken(FC.ONLY,0)}OPEN(){return this.getToken(FC.OPEN,0)}OPTIMIZER_COSTS(){return this.getToken(FC.OPTIMIZER_COSTS,0)}OPTIONAL(){return this.getToken(FC.OPTIONAL,0)}OPTIONS(){return this.getToken(FC.OPTIONS,0)}ORDER(){return this.getToken(FC.ORDER,0)}ORDINALITY(){return this.getToken(FC.ORDINALITY,0)}OWNER(){return this.getToken(FC.OWNER,0)}PACK_KEYS(){return this.getToken(FC.PACK_KEYS,0)}PAGE(){return this.getToken(FC.PAGE,0)}PARSER(){return this.getToken(FC.PARSER,0)}PARTIAL(){return this.getToken(FC.PARTIAL,0)}PARTITIONING(){return this.getToken(FC.PARTITIONING,0)}PARTITIONS(){return this.getToken(FC.PARTITIONS,0)}PASSWORD(){return this.getToken(FC.PASSWORD,0)}PASSWORDLESS_USER_ADMIN(){return this.getToken(FC.PASSWORDLESS_USER_ADMIN,0)}PASSWORD_LOCK_TIME(){return this.getToken(FC.PASSWORD_LOCK_TIME,0)}PATH(){return this.getToken(FC.PATH,0)}PERSIST_RO_VARIABLES_ADMIN(){return this.getToken(FC.PERSIST_RO_VARIABLES_ADMIN,0)}PHASE(){return this.getToken(FC.PHASE,0)}PLUGINS(){return this.getToken(FC.PLUGINS,0)}PLUGIN_DIR(){return this.getToken(FC.PLUGIN_DIR,0)}PLUGIN(){return this.getToken(FC.PLUGIN,0)}PORT(){return this.getToken(FC.PORT,0)}PRECEDES(){return this.getToken(FC.PRECEDES,0)}PREPARE(){return this.getToken(FC.PREPARE,0)}PRESERVE(){return this.getToken(FC.PRESERVE,0)}PREV(){return this.getToken(FC.PREV,0)}PRIMARY(){return this.getToken(FC.PRIMARY,0)}PROCESSLIST(){return this.getToken(FC.PROCESSLIST,0)}PROFILE(){return this.getToken(FC.PROFILE,0)}PROFILES(){return this.getToken(FC.PROFILES,0)}PROXY(){return this.getToken(FC.PROXY,0)}QUERY(){return this.getToken(FC.QUERY,0)}QUICK(){return this.getToken(FC.QUICK,0)}REBUILD(){return this.getToken(FC.REBUILD,0)}RECOVER(){return this.getToken(FC.RECOVER,0)}RECURSIVE(){return this.getToken(FC.RECURSIVE,0)}REDO_BUFFER_SIZE(){return this.getToken(FC.REDO_BUFFER_SIZE,0)}REDUNDANT(){return this.getToken(FC.REDUNDANT,0)}RELAY(){return this.getToken(FC.RELAY,0)}RELAYLOG(){return this.getToken(FC.RELAYLOG,0)}RELAY_LOG_FILE(){return this.getToken(FC.RELAY_LOG_FILE,0)}RELAY_LOG_POS(){return this.getToken(FC.RELAY_LOG_POS,0)}REMOVE(){return this.getToken(FC.REMOVE,0)}REORGANIZE(){return this.getToken(FC.REORGANIZE,0)}REPAIR(){return this.getToken(FC.REPAIR,0)}REPLICATE_DO_DB(){return this.getToken(FC.REPLICATE_DO_DB,0)}REPLICATE_DO_TABLE(){return this.getToken(FC.REPLICATE_DO_TABLE,0)}REPLICATE_IGNORE_DB(){return this.getToken(FC.REPLICATE_IGNORE_DB,0)}REPLICATE_IGNORE_TABLE(){return this.getToken(FC.REPLICATE_IGNORE_TABLE,0)}REPLICATE_REWRITE_DB(){return this.getToken(FC.REPLICATE_REWRITE_DB,0)}REPLICATE_WILD_DO_TABLE(){return this.getToken(FC.REPLICATE_WILD_DO_TABLE,0)}REPLICATE_WILD_IGNORE_TABLE(){return this.getToken(FC.REPLICATE_WILD_IGNORE_TABLE,0)}REPLICATION(){return this.getToken(FC.REPLICATION,0)}REPLICATION_APPLIER(){return this.getToken(FC.REPLICATION_APPLIER,0)}REPLICATION_SLAVE_ADMIN(){return this.getToken(FC.REPLICATION_SLAVE_ADMIN,0)}RESET(){return this.getToken(FC.RESET,0)}RESOURCE_GROUP_ADMIN(){return this.getToken(FC.RESOURCE_GROUP_ADMIN,0)}RESOURCE_GROUP_USER(){return this.getToken(FC.RESOURCE_GROUP_USER,0)}RESUME(){return this.getToken(FC.RESUME,0)}RETURNED_SQLSTATE(){return this.getToken(FC.RETURNED_SQLSTATE,0)}RETURNS(){return this.getToken(FC.RETURNS,0)}REUSE(){return this.getToken(FC.REUSE,0)}ROLE(){return this.getToken(FC.ROLE,0)}ROLE_ADMIN(){return this.getToken(FC.ROLE_ADMIN,0)}ROLLBACK(){return this.getToken(FC.ROLLBACK,0)}ROLLUP(){return this.getToken(FC.ROLLUP,0)}ROTATE(){return this.getToken(FC.ROTATE,0)}ROW(){return this.getToken(FC.ROW,0)}ROWS(){return this.getToken(FC.ROWS,0)}ROW_FORMAT(){return this.getToken(FC.ROW_FORMAT,0)}RTREE(){return this.getToken(FC.RTREE,0)}S3(){return this.getToken(FC.S3,0)}SAVEPOINT(){return this.getToken(FC.SAVEPOINT,0)}SCHEDULE(){return this.getToken(FC.SCHEDULE,0)}SCHEMA_NAME(){return this.getToken(FC.SCHEMA_NAME,0)}SECURITY(){return this.getToken(FC.SECURITY,0)}SECONDARY_ENGINE_ATTRIBUTE(){return this.getToken(FC.SECONDARY_ENGINE_ATTRIBUTE,0)}SERIAL(){return this.getToken(FC.SERIAL,0)}SERVER(){return this.getToken(FC.SERVER,0)}SESSION(){return this.getToken(FC.SESSION,0)}SESSION_VARIABLES_ADMIN(){return this.getToken(FC.SESSION_VARIABLES_ADMIN,0)}SET_USER_ID(){return this.getToken(FC.SET_USER_ID,0)}SHARE(){return this.getToken(FC.SHARE,0)}SHARED(){return this.getToken(FC.SHARED,0)}SHOW_ROUTINE(){return this.getToken(FC.SHOW_ROUTINE,0)}SIGNED(){return this.getToken(FC.SIGNED,0)}SIMPLE(){return this.getToken(FC.SIMPLE,0)}SLAVE(){return this.getToken(FC.SLAVE,0)}SLOW(){return this.getToken(FC.SLOW,0)}SKIP_QUERY_REWRITE(){return this.getToken(FC.SKIP_QUERY_REWRITE,0)}SNAPSHOT(){return this.getToken(FC.SNAPSHOT,0)}SOCKET(){return this.getToken(FC.SOCKET,0)}SOME(){return this.getToken(FC.SOME,0)}SONAME(){return this.getToken(FC.SONAME,0)}SOUNDS(){return this.getToken(FC.SOUNDS,0)}SOURCE(){return this.getToken(FC.SOURCE,0)}SQL_AFTER_GTIDS(){return this.getToken(FC.SQL_AFTER_GTIDS,0)}SQL_AFTER_MTS_GAPS(){return this.getToken(FC.SQL_AFTER_MTS_GAPS,0)}SQL_BEFORE_GTIDS(){return this.getToken(FC.SQL_BEFORE_GTIDS,0)}SQL_BUFFER_RESULT(){return this.getToken(FC.SQL_BUFFER_RESULT,0)}SQL_CACHE(){return this.getToken(FC.SQL_CACHE,0)}SQL_NO_CACHE(){return this.getToken(FC.SQL_NO_CACHE,0)}SQL_THREAD(){return this.getToken(FC.SQL_THREAD,0)}STACKED(){return this.getToken(FC.STACKED,0)}START(){return this.getToken(FC.START,0)}STARTS(){return this.getToken(FC.STARTS,0)}STATS_AUTO_RECALC(){return this.getToken(FC.STATS_AUTO_RECALC,0)}STATS_PERSISTENT(){return this.getToken(FC.STATS_PERSISTENT,0)}STATS_SAMPLE_PAGES(){return this.getToken(FC.STATS_SAMPLE_PAGES,0)}STATUS(){return this.getToken(FC.STATUS,0)}STD(){return this.getToken(FC.STD,0)}STDDEV(){return this.getToken(FC.STDDEV,0)}STDDEV_POP(){return this.getToken(FC.STDDEV_POP,0)}STDDEV_SAMP(){return this.getToken(FC.STDDEV_SAMP,0)}STOP(){return this.getToken(FC.STOP,0)}STORAGE(){return this.getToken(FC.STORAGE,0)}STRING(){return this.getToken(FC.STRING,0)}SUBCLASS_ORIGIN(){return this.getToken(FC.SUBCLASS_ORIGIN,0)}SUBJECT(){return this.getToken(FC.SUBJECT,0)}SUBPARTITION(){return this.getToken(FC.SUBPARTITION,0)}SUBPARTITIONS(){return this.getToken(FC.SUBPARTITIONS,0)}SUM(){return this.getToken(FC.SUM,0)}SUSPEND(){return this.getToken(FC.SUSPEND,0)}SWAPS(){return this.getToken(FC.SWAPS,0)}SWITCHES(){return this.getToken(FC.SWITCHES,0)}SYSTEM_VARIABLES_ADMIN(){return this.getToken(FC.SYSTEM_VARIABLES_ADMIN,0)}TABLE_NAME(){return this.getToken(FC.TABLE_NAME,0)}TABLESPACE(){return this.getToken(FC.TABLESPACE,0)}TABLE_ENCRYPTION_ADMIN(){return this.getToken(FC.TABLE_ENCRYPTION_ADMIN,0)}TABLE_TYPE(){return this.getToken(FC.TABLE_TYPE,0)}TEMPORARY(){return this.getToken(FC.TEMPORARY,0)}TEMPTABLE(){return this.getToken(FC.TEMPTABLE,0)}THAN(){return this.getToken(FC.THAN,0)}TP_CONNECTION_ADMIN(){return this.getToken(FC.TP_CONNECTION_ADMIN,0)}TRADITIONAL(){return this.getToken(FC.TRADITIONAL,0)}TRANSACTION(){return this.getToken(FC.TRANSACTION,0)}TRANSACTIONAL(){return this.getToken(FC.TRANSACTIONAL,0)}TRIGGERS(){return this.getToken(FC.TRIGGERS,0)}TRUNCATE(){return this.getToken(FC.TRUNCATE,0)}UNBOUNDED(){return this.getToken(FC.UNBOUNDED,0)}UNDEFINED(){return this.getToken(FC.UNDEFINED,0)}UNDOFILE(){return this.getToken(FC.UNDOFILE,0)}UNDO_BUFFER_SIZE(){return this.getToken(FC.UNDO_BUFFER_SIZE,0)}UNINSTALL(){return this.getToken(FC.UNINSTALL,0)}UNKNOWN(){return this.getToken(FC.UNKNOWN,0)}UNTIL(){return this.getToken(FC.UNTIL,0)}UPGRADE(){return this.getToken(FC.UPGRADE,0)}USA(){return this.getToken(FC.USA,0)}USER(){return this.getToken(FC.USER,0)}USE_FRM(){return this.getToken(FC.USE_FRM,0)}USER_RESOURCES(){return this.getToken(FC.USER_RESOURCES,0)}VALIDATION(){return this.getToken(FC.VALIDATION,0)}VALUE(){return this.getToken(FC.VALUE,0)}VAR_POP(){return this.getToken(FC.VAR_POP,0)}VAR_SAMP(){return this.getToken(FC.VAR_SAMP,0)}VARIABLES(){return this.getToken(FC.VARIABLES,0)}VARIANCE(){return this.getToken(FC.VARIANCE,0)}VERSION_TOKEN_ADMIN(){return this.getToken(FC.VERSION_TOKEN_ADMIN,0)}VIEW(){return this.getToken(FC.VIEW,0)}VIRTUAL(){return this.getToken(FC.VIRTUAL,0)}WAIT(){return this.getToken(FC.WAIT,0)}WARNINGS(){return this.getToken(FC.WARNINGS,0)}WITHOUT(){return this.getToken(FC.WITHOUT,0)}WORK(){return this.getToken(FC.WORK,0)}WRAPPER(){return this.getToken(FC.WRAPPER,0)}X509(){return this.getToken(FC.X509,0)}XA(){return this.getToken(FC.XA,0)}XA_RECOVER_ADMIN(){return this.getToken(FC.XA_RECOVER_ADMIN,0)}XML(){return this.getToken(FC.XML,0)}get ruleIndex(){return FC.RULE_keywordsCanBeId}accept(t){return t.visitKeywordsCanBeId?t.visitKeywordsCanBeId(this):t.visitChildren(this)}},oG=class extends ga{constructor(t,e){super(t,e)}ABS(){return this.getToken(FC.ABS,0)}ACOS(){return this.getToken(FC.ACOS,0)}ADDDATE(){return this.getToken(FC.ADDDATE,0)}ADDTIME(){return this.getToken(FC.ADDTIME,0)}AES_DECRYPT(){return this.getToken(FC.AES_DECRYPT,0)}AES_ENCRYPT(){return this.getToken(FC.AES_ENCRYPT,0)}AREA(){return this.getToken(FC.AREA,0)}ASBINARY(){return this.getToken(FC.ASBINARY,0)}ASIN(){return this.getToken(FC.ASIN,0)}ASTEXT(){return this.getToken(FC.ASTEXT,0)}ASWKB(){return this.getToken(FC.ASWKB,0)}ASWKT(){return this.getToken(FC.ASWKT,0)}ASYMMETRIC_DECRYPT(){return this.getToken(FC.ASYMMETRIC_DECRYPT,0)}ASYMMETRIC_DERIVE(){return this.getToken(FC.ASYMMETRIC_DERIVE,0)}ASYMMETRIC_ENCRYPT(){return this.getToken(FC.ASYMMETRIC_ENCRYPT,0)}ASYMMETRIC_SIGN(){return this.getToken(FC.ASYMMETRIC_SIGN,0)}ASYMMETRIC_VERIFY(){return this.getToken(FC.ASYMMETRIC_VERIFY,0)}ATAN(){return this.getToken(FC.ATAN,0)}ATAN2(){return this.getToken(FC.ATAN2,0)}BENCHMARK(){return this.getToken(FC.BENCHMARK,0)}BIN(){return this.getToken(FC.BIN,0)}BIT_COUNT(){return this.getToken(FC.BIT_COUNT,0)}BIT_LENGTH(){return this.getToken(FC.BIT_LENGTH,0)}BUFFER(){return this.getToken(FC.BUFFER,0)}CEIL(){return this.getToken(FC.CEIL,0)}CEILING(){return this.getToken(FC.CEILING,0)}CENTROID(){return this.getToken(FC.CENTROID,0)}CHARACTER_LENGTH(){return this.getToken(FC.CHARACTER_LENGTH,0)}CHARSET(){return this.getToken(FC.CHARSET,0)}CHAR_LENGTH(){return this.getToken(FC.CHAR_LENGTH,0)}COERCIBILITY(){return this.getToken(FC.COERCIBILITY,0)}COLLATION(){return this.getToken(FC.COLLATION,0)}COMPRESS(){return this.getToken(FC.COMPRESS,0)}CONCAT(){return this.getToken(FC.CONCAT,0)}CONCAT_WS(){return this.getToken(FC.CONCAT_WS,0)}CONNECTION_ID(){return this.getToken(FC.CONNECTION_ID,0)}CONV(){return this.getToken(FC.CONV,0)}CONVERT_TZ(){return this.getToken(FC.CONVERT_TZ,0)}COS(){return this.getToken(FC.COS,0)}COT(){return this.getToken(FC.COT,0)}COUNT(){return this.getToken(FC.COUNT,0)}CRC32(){return this.getToken(FC.CRC32,0)}CREATE_ASYMMETRIC_PRIV_KEY(){return this.getToken(FC.CREATE_ASYMMETRIC_PRIV_KEY,0)}CREATE_ASYMMETRIC_PUB_KEY(){return this.getToken(FC.CREATE_ASYMMETRIC_PUB_KEY,0)}CREATE_DH_PARAMETERS(){return this.getToken(FC.CREATE_DH_PARAMETERS,0)}CREATE_DIGEST(){return this.getToken(FC.CREATE_DIGEST,0)}CROSSES(){return this.getToken(FC.CROSSES,0)}CUME_DIST(){return this.getToken(FC.CUME_DIST,0)}DATABASE(){return this.getToken(FC.DATABASE,0)}DATE(){return this.getToken(FC.DATE,0)}DATEDIFF(){return this.getToken(FC.DATEDIFF,0)}DATE_FORMAT(){return this.getToken(FC.DATE_FORMAT,0)}DAY(){return this.getToken(FC.DAY,0)}DAYNAME(){return this.getToken(FC.DAYNAME,0)}DAYOFMONTH(){return this.getToken(FC.DAYOFMONTH,0)}DAYOFWEEK(){return this.getToken(FC.DAYOFWEEK,0)}DAYOFYEAR(){return this.getToken(FC.DAYOFYEAR,0)}DECODE(){return this.getToken(FC.DECODE,0)}DEGREES(){return this.getToken(FC.DEGREES,0)}DENSE_RANK(){return this.getToken(FC.DENSE_RANK,0)}DES_DECRYPT(){return this.getToken(FC.DES_DECRYPT,0)}DES_ENCRYPT(){return this.getToken(FC.DES_ENCRYPT,0)}DIMENSION(){return this.getToken(FC.DIMENSION,0)}DISJOINT(){return this.getToken(FC.DISJOINT,0)}ELT(){return this.getToken(FC.ELT,0)}ENCODE(){return this.getToken(FC.ENCODE,0)}ENCRYPT(){return this.getToken(FC.ENCRYPT,0)}ENDPOINT(){return this.getToken(FC.ENDPOINT,0)}ENVELOPE(){return this.getToken(FC.ENVELOPE,0)}EQUALS(){return this.getToken(FC.EQUALS,0)}EXP(){return this.getToken(FC.EXP,0)}EXPORT_SET(){return this.getToken(FC.EXPORT_SET,0)}EXTERIORRING(){return this.getToken(FC.EXTERIORRING,0)}EXTRACTVALUE(){return this.getToken(FC.EXTRACTVALUE,0)}FIELD(){return this.getToken(FC.FIELD,0)}FIND_IN_SET(){return this.getToken(FC.FIND_IN_SET,0)}FIRST_VALUE(){return this.getToken(FC.FIRST_VALUE,0)}FLOOR(){return this.getToken(FC.FLOOR,0)}FORMAT(){return this.getToken(FC.FORMAT,0)}FOUND_ROWS(){return this.getToken(FC.FOUND_ROWS,0)}FROM_BASE64(){return this.getToken(FC.FROM_BASE64,0)}FROM_DAYS(){return this.getToken(FC.FROM_DAYS,0)}FROM_UNIXTIME(){return this.getToken(FC.FROM_UNIXTIME,0)}GEOMCOLLFROMTEXT(){return this.getToken(FC.GEOMCOLLFROMTEXT,0)}GEOMCOLLFROMWKB(){return this.getToken(FC.GEOMCOLLFROMWKB,0)}GEOMETRYCOLLECTION(){return this.getToken(FC.GEOMETRYCOLLECTION,0)}GEOMETRYCOLLECTIONFROMTEXT(){return this.getToken(FC.GEOMETRYCOLLECTIONFROMTEXT,0)}GEOMETRYCOLLECTIONFROMWKB(){return this.getToken(FC.GEOMETRYCOLLECTIONFROMWKB,0)}GEOMETRYFROMTEXT(){return this.getToken(FC.GEOMETRYFROMTEXT,0)}GEOMETRYFROMWKB(){return this.getToken(FC.GEOMETRYFROMWKB,0)}GEOMETRYN(){return this.getToken(FC.GEOMETRYN,0)}GEOMETRYTYPE(){return this.getToken(FC.GEOMETRYTYPE,0)}GEOMFROMTEXT(){return this.getToken(FC.GEOMFROMTEXT,0)}GEOMFROMWKB(){return this.getToken(FC.GEOMFROMWKB,0)}GET_FORMAT(){return this.getToken(FC.GET_FORMAT,0)}GET_LOCK(){return this.getToken(FC.GET_LOCK,0)}GLENGTH(){return this.getToken(FC.GLENGTH,0)}GREATEST(){return this.getToken(FC.GREATEST,0)}GTID_SUBSET(){return this.getToken(FC.GTID_SUBSET,0)}GTID_SUBTRACT(){return this.getToken(FC.GTID_SUBTRACT,0)}HEX(){return this.getToken(FC.HEX,0)}HOUR(){return this.getToken(FC.HOUR,0)}IFNULL(){return this.getToken(FC.IFNULL,0)}INET6_ATON(){return this.getToken(FC.INET6_ATON,0)}INET6_NTOA(){return this.getToken(FC.INET6_NTOA,0)}INET_ATON(){return this.getToken(FC.INET_ATON,0)}INET_NTOA(){return this.getToken(FC.INET_NTOA,0)}INSTR(){return this.getToken(FC.INSTR,0)}INTERIORRINGN(){return this.getToken(FC.INTERIORRINGN,0)}INTERSECTS(){return this.getToken(FC.INTERSECTS,0)}INVISIBLE(){return this.getToken(FC.INVISIBLE,0)}ISCLOSED(){return this.getToken(FC.ISCLOSED,0)}ISEMPTY(){return this.getToken(FC.ISEMPTY,0)}ISNULL(){return this.getToken(FC.ISNULL,0)}ISSIMPLE(){return this.getToken(FC.ISSIMPLE,0)}IS_FREE_LOCK(){return this.getToken(FC.IS_FREE_LOCK,0)}IS_IPV4(){return this.getToken(FC.IS_IPV4,0)}IS_IPV4_COMPAT(){return this.getToken(FC.IS_IPV4_COMPAT,0)}IS_IPV4_MAPPED(){return this.getToken(FC.IS_IPV4_MAPPED,0)}IS_IPV6(){return this.getToken(FC.IS_IPV6,0)}IS_USED_LOCK(){return this.getToken(FC.IS_USED_LOCK,0)}LAG(){return this.getToken(FC.LAG,0)}LAST_INSERT_ID(){return this.getToken(FC.LAST_INSERT_ID,0)}LAST_VALUE(){return this.getToken(FC.LAST_VALUE,0)}LCASE(){return this.getToken(FC.LCASE,0)}LEAD(){return this.getToken(FC.LEAD,0)}LEAST(){return this.getToken(FC.LEAST,0)}LEFT(){return this.getToken(FC.LEFT,0)}LENGTH(){return this.getToken(FC.LENGTH,0)}LINEFROMTEXT(){return this.getToken(FC.LINEFROMTEXT,0)}LINEFROMWKB(){return this.getToken(FC.LINEFROMWKB,0)}LINESTRING(){return this.getToken(FC.LINESTRING,0)}LINESTRINGFROMTEXT(){return this.getToken(FC.LINESTRINGFROMTEXT,0)}LINESTRINGFROMWKB(){return this.getToken(FC.LINESTRINGFROMWKB,0)}LN(){return this.getToken(FC.LN,0)}LOAD_FILE(){return this.getToken(FC.LOAD_FILE,0)}LOCATE(){return this.getToken(FC.LOCATE,0)}LOG(){return this.getToken(FC.LOG,0)}LOG10(){return this.getToken(FC.LOG10,0)}LOG2(){return this.getToken(FC.LOG2,0)}LOWER(){return this.getToken(FC.LOWER,0)}LPAD(){return this.getToken(FC.LPAD,0)}LTRIM(){return this.getToken(FC.LTRIM,0)}MAKEDATE(){return this.getToken(FC.MAKEDATE,0)}MAKETIME(){return this.getToken(FC.MAKETIME,0)}MAKE_SET(){return this.getToken(FC.MAKE_SET,0)}MASTER_POS_WAIT(){return this.getToken(FC.MASTER_POS_WAIT,0)}MBRCONTAINS(){return this.getToken(FC.MBRCONTAINS,0)}MBRDISJOINT(){return this.getToken(FC.MBRDISJOINT,0)}MBREQUAL(){return this.getToken(FC.MBREQUAL,0)}MBRINTERSECTS(){return this.getToken(FC.MBRINTERSECTS,0)}MBROVERLAPS(){return this.getToken(FC.MBROVERLAPS,0)}MBRTOUCHES(){return this.getToken(FC.MBRTOUCHES,0)}MBRWITHIN(){return this.getToken(FC.MBRWITHIN,0)}MD5(){return this.getToken(FC.MD5,0)}MICROSECOND(){return this.getToken(FC.MICROSECOND,0)}MINUTE(){return this.getToken(FC.MINUTE,0)}MLINEFROMTEXT(){return this.getToken(FC.MLINEFROMTEXT,0)}MLINEFROMWKB(){return this.getToken(FC.MLINEFROMWKB,0)}MOD(){return this.getToken(FC.MOD,0)}MONTH(){return this.getToken(FC.MONTH,0)}MONTHNAME(){return this.getToken(FC.MONTHNAME,0)}MPOINTFROMTEXT(){return this.getToken(FC.MPOINTFROMTEXT,0)}MPOINTFROMWKB(){return this.getToken(FC.MPOINTFROMWKB,0)}MPOLYFROMTEXT(){return this.getToken(FC.MPOLYFROMTEXT,0)}MPOLYFROMWKB(){return this.getToken(FC.MPOLYFROMWKB,0)}MULTILINESTRING(){return this.getToken(FC.MULTILINESTRING,0)}MULTILINESTRINGFROMTEXT(){return this.getToken(FC.MULTILINESTRINGFROMTEXT,0)}MULTILINESTRINGFROMWKB(){return this.getToken(FC.MULTILINESTRINGFROMWKB,0)}MULTIPOINT(){return this.getToken(FC.MULTIPOINT,0)}MULTIPOINTFROMTEXT(){return this.getToken(FC.MULTIPOINTFROMTEXT,0)}MULTIPOINTFROMWKB(){return this.getToken(FC.MULTIPOINTFROMWKB,0)}MULTIPOLYGON(){return this.getToken(FC.MULTIPOLYGON,0)}MULTIPOLYGONFROMTEXT(){return this.getToken(FC.MULTIPOLYGONFROMTEXT,0)}MULTIPOLYGONFROMWKB(){return this.getToken(FC.MULTIPOLYGONFROMWKB,0)}NAME_CONST(){return this.getToken(FC.NAME_CONST,0)}NTH_VALUE(){return this.getToken(FC.NTH_VALUE,0)}NTILE(){return this.getToken(FC.NTILE,0)}NULLIF(){return this.getToken(FC.NULLIF,0)}NUMGEOMETRIES(){return this.getToken(FC.NUMGEOMETRIES,0)}NUMINTERIORRINGS(){return this.getToken(FC.NUMINTERIORRINGS,0)}NUMPOINTS(){return this.getToken(FC.NUMPOINTS,0)}OCT(){return this.getToken(FC.OCT,0)}OCTET_LENGTH(){return this.getToken(FC.OCTET_LENGTH,0)}ORD(){return this.getToken(FC.ORD,0)}OVERLAPS(){return this.getToken(FC.OVERLAPS,0)}PERCENT_RANK(){return this.getToken(FC.PERCENT_RANK,0)}PERIOD_ADD(){return this.getToken(FC.PERIOD_ADD,0)}PERIOD_DIFF(){return this.getToken(FC.PERIOD_DIFF,0)}PI(){return this.getToken(FC.PI,0)}POINT(){return this.getToken(FC.POINT,0)}POINTFROMTEXT(){return this.getToken(FC.POINTFROMTEXT,0)}POINTFROMWKB(){return this.getToken(FC.POINTFROMWKB,0)}POINTN(){return this.getToken(FC.POINTN,0)}POLYFROMTEXT(){return this.getToken(FC.POLYFROMTEXT,0)}POLYFROMWKB(){return this.getToken(FC.POLYFROMWKB,0)}POLYGON(){return this.getToken(FC.POLYGON,0)}POLYGONFROMTEXT(){return this.getToken(FC.POLYGONFROMTEXT,0)}POLYGONFROMWKB(){return this.getToken(FC.POLYGONFROMWKB,0)}POSITION(){return this.getToken(FC.POSITION,0)}POW(){return this.getToken(FC.POW,0)}POWER(){return this.getToken(FC.POWER,0)}QUARTER(){return this.getToken(FC.QUARTER,0)}QUOTE(){return this.getToken(FC.QUOTE,0)}RADIANS(){return this.getToken(FC.RADIANS,0)}RAND(){return this.getToken(FC.RAND,0)}RANDOM(){return this.getToken(FC.RANDOM,0)}RANK(){return this.getToken(FC.RANK,0)}RANDOM_BYTES(){return this.getToken(FC.RANDOM_BYTES,0)}RELEASE_LOCK(){return this.getToken(FC.RELEASE_LOCK,0)}REVERSE(){return this.getToken(FC.REVERSE,0)}RIGHT(){return this.getToken(FC.RIGHT,0)}ROUND(){return this.getToken(FC.ROUND,0)}ROW_COUNT(){return this.getToken(FC.ROW_COUNT,0)}ROW_NUMBER(){return this.getToken(FC.ROW_NUMBER,0)}RPAD(){return this.getToken(FC.RPAD,0)}RTRIM(){return this.getToken(FC.RTRIM,0)}SCHEMA(){return this.getToken(FC.SCHEMA,0)}SECOND(){return this.getToken(FC.SECOND,0)}SEC_TO_TIME(){return this.getToken(FC.SEC_TO_TIME,0)}SESSION_USER(){return this.getToken(FC.SESSION_USER,0)}SESSION_VARIABLES_ADMIN(){return this.getToken(FC.SESSION_VARIABLES_ADMIN,0)}SHA(){return this.getToken(FC.SHA,0)}SHA1(){return this.getToken(FC.SHA1,0)}SHA2(){return this.getToken(FC.SHA2,0)}SIGN(){return this.getToken(FC.SIGN,0)}SIN(){return this.getToken(FC.SIN,0)}SLEEP(){return this.getToken(FC.SLEEP,0)}SOUNDEX(){return this.getToken(FC.SOUNDEX,0)}SQL_THREAD_WAIT_AFTER_GTIDS(){return this.getToken(FC.SQL_THREAD_WAIT_AFTER_GTIDS,0)}SQRT(){return this.getToken(FC.SQRT,0)}SRID(){return this.getToken(FC.SRID,0)}STARTPOINT(){return this.getToken(FC.STARTPOINT,0)}STRCMP(){return this.getToken(FC.STRCMP,0)}STR_TO_DATE(){return this.getToken(FC.STR_TO_DATE,0)}ST_AREA(){return this.getToken(FC.ST_AREA,0)}ST_ASBINARY(){return this.getToken(FC.ST_ASBINARY,0)}ST_ASTEXT(){return this.getToken(FC.ST_ASTEXT,0)}ST_ASWKB(){return this.getToken(FC.ST_ASWKB,0)}ST_ASWKT(){return this.getToken(FC.ST_ASWKT,0)}ST_BUFFER(){return this.getToken(FC.ST_BUFFER,0)}ST_CENTROID(){return this.getToken(FC.ST_CENTROID,0)}ST_CONTAINS(){return this.getToken(FC.ST_CONTAINS,0)}ST_CROSSES(){return this.getToken(FC.ST_CROSSES,0)}ST_DIFFERENCE(){return this.getToken(FC.ST_DIFFERENCE,0)}ST_DIMENSION(){return this.getToken(FC.ST_DIMENSION,0)}ST_DISJOINT(){return this.getToken(FC.ST_DISJOINT,0)}ST_DISTANCE(){return this.getToken(FC.ST_DISTANCE,0)}ST_ENDPOINT(){return this.getToken(FC.ST_ENDPOINT,0)}ST_ENVELOPE(){return this.getToken(FC.ST_ENVELOPE,0)}ST_EQUALS(){return this.getToken(FC.ST_EQUALS,0)}ST_EXTERIORRING(){return this.getToken(FC.ST_EXTERIORRING,0)}ST_GEOMCOLLFROMTEXT(){return this.getToken(FC.ST_GEOMCOLLFROMTEXT,0)}ST_GEOMCOLLFROMTXT(){return this.getToken(FC.ST_GEOMCOLLFROMTXT,0)}ST_GEOMCOLLFROMWKB(){return this.getToken(FC.ST_GEOMCOLLFROMWKB,0)}ST_GEOMETRYCOLLECTIONFROMTEXT(){return this.getToken(FC.ST_GEOMETRYCOLLECTIONFROMTEXT,0)}ST_GEOMETRYCOLLECTIONFROMWKB(){return this.getToken(FC.ST_GEOMETRYCOLLECTIONFROMWKB,0)}ST_GEOMETRYFROMTEXT(){return this.getToken(FC.ST_GEOMETRYFROMTEXT,0)}ST_GEOMETRYFROMWKB(){return this.getToken(FC.ST_GEOMETRYFROMWKB,0)}ST_GEOMETRYN(){return this.getToken(FC.ST_GEOMETRYN,0)}ST_GEOMETRYTYPE(){return this.getToken(FC.ST_GEOMETRYTYPE,0)}ST_GEOMFROMTEXT(){return this.getToken(FC.ST_GEOMFROMTEXT,0)}ST_GEOMFROMWKB(){return this.getToken(FC.ST_GEOMFROMWKB,0)}ST_INTERIORRINGN(){return this.getToken(FC.ST_INTERIORRINGN,0)}ST_INTERSECTION(){return this.getToken(FC.ST_INTERSECTION,0)}ST_INTERSECTS(){return this.getToken(FC.ST_INTERSECTS,0)}ST_ISCLOSED(){return this.getToken(FC.ST_ISCLOSED,0)}ST_ISEMPTY(){return this.getToken(FC.ST_ISEMPTY,0)}ST_ISSIMPLE(){return this.getToken(FC.ST_ISSIMPLE,0)}ST_LINEFROMTEXT(){return this.getToken(FC.ST_LINEFROMTEXT,0)}ST_LINEFROMWKB(){return this.getToken(FC.ST_LINEFROMWKB,0)}ST_LINESTRINGFROMTEXT(){return this.getToken(FC.ST_LINESTRINGFROMTEXT,0)}ST_LINESTRINGFROMWKB(){return this.getToken(FC.ST_LINESTRINGFROMWKB,0)}ST_NUMGEOMETRIES(){return this.getToken(FC.ST_NUMGEOMETRIES,0)}ST_NUMINTERIORRING(){return this.getToken(FC.ST_NUMINTERIORRING,0)}ST_NUMINTERIORRINGS(){return this.getToken(FC.ST_NUMINTERIORRINGS,0)}ST_NUMPOINTS(){return this.getToken(FC.ST_NUMPOINTS,0)}ST_OVERLAPS(){return this.getToken(FC.ST_OVERLAPS,0)}ST_POINTFROMTEXT(){return this.getToken(FC.ST_POINTFROMTEXT,0)}ST_POINTFROMWKB(){return this.getToken(FC.ST_POINTFROMWKB,0)}ST_POINTN(){return this.getToken(FC.ST_POINTN,0)}ST_POLYFROMTEXT(){return this.getToken(FC.ST_POLYFROMTEXT,0)}ST_POLYFROMWKB(){return this.getToken(FC.ST_POLYFROMWKB,0)}ST_POLYGONFROMTEXT(){return this.getToken(FC.ST_POLYGONFROMTEXT,0)}ST_POLYGONFROMWKB(){return this.getToken(FC.ST_POLYGONFROMWKB,0)}ST_SRID(){return this.getToken(FC.ST_SRID,0)}ST_STARTPOINT(){return this.getToken(FC.ST_STARTPOINT,0)}ST_SYMDIFFERENCE(){return this.getToken(FC.ST_SYMDIFFERENCE,0)}ST_TOUCHES(){return this.getToken(FC.ST_TOUCHES,0)}ST_UNION(){return this.getToken(FC.ST_UNION,0)}ST_WITHIN(){return this.getToken(FC.ST_WITHIN,0)}ST_X(){return this.getToken(FC.ST_X,0)}ST_Y(){return this.getToken(FC.ST_Y,0)}SUBDATE(){return this.getToken(FC.SUBDATE,0)}SUBSTRING_INDEX(){return this.getToken(FC.SUBSTRING_INDEX,0)}SUBTIME(){return this.getToken(FC.SUBTIME,0)}SYSTEM_USER(){return this.getToken(FC.SYSTEM_USER,0)}TAN(){return this.getToken(FC.TAN,0)}TIME(){return this.getToken(FC.TIME,0)}TIMEDIFF(){return this.getToken(FC.TIMEDIFF,0)}TIMESTAMP(){return this.getToken(FC.TIMESTAMP,0)}TIMESTAMPADD(){return this.getToken(FC.TIMESTAMPADD,0)}TIMESTAMPDIFF(){return this.getToken(FC.TIMESTAMPDIFF,0)}TIME_FORMAT(){return this.getToken(FC.TIME_FORMAT,0)}TIME_TO_SEC(){return this.getToken(FC.TIME_TO_SEC,0)}TOUCHES(){return this.getToken(FC.TOUCHES,0)}TO_BASE64(){return this.getToken(FC.TO_BASE64,0)}TO_DAYS(){return this.getToken(FC.TO_DAYS,0)}TO_SECONDS(){return this.getToken(FC.TO_SECONDS,0)}UCASE(){return this.getToken(FC.UCASE,0)}UNCOMPRESS(){return this.getToken(FC.UNCOMPRESS,0)}UNCOMPRESSED_LENGTH(){return this.getToken(FC.UNCOMPRESSED_LENGTH,0)}UNHEX(){return this.getToken(FC.UNHEX,0)}UNIX_TIMESTAMP(){return this.getToken(FC.UNIX_TIMESTAMP,0)}UPDATEXML(){return this.getToken(FC.UPDATEXML,0)}UPPER(){return this.getToken(FC.UPPER,0)}UUID(){return this.getToken(FC.UUID,0)}UUID_SHORT(){return this.getToken(FC.UUID_SHORT,0)}VALIDATE_PASSWORD_STRENGTH(){return this.getToken(FC.VALIDATE_PASSWORD_STRENGTH,0)}VERSION(){return this.getToken(FC.VERSION,0)}VISIBLE(){return this.getToken(FC.VISIBLE,0)}WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS(){return this.getToken(FC.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS,0)}WEEK(){return this.getToken(FC.WEEK,0)}WEEKDAY(){return this.getToken(FC.WEEKDAY,0)}WEEKOFYEAR(){return this.getToken(FC.WEEKOFYEAR,0)}WEIGHT_STRING(){return this.getToken(FC.WEIGHT_STRING,0)}WITHIN(){return this.getToken(FC.WITHIN,0)}YEAR(){return this.getToken(FC.YEAR,0)}YEARWEEK(){return this.getToken(FC.YEARWEEK,0)}Y_FUNCTION(){return this.getToken(FC.Y_FUNCTION,0)}X_FUNCTION(){return this.getToken(FC.X_FUNCTION,0)}JSON_ARRAY(){return this.getToken(FC.JSON_ARRAY,0)}JSON_OBJECT(){return this.getToken(FC.JSON_OBJECT,0)}JSON_QUOTE(){return this.getToken(FC.JSON_QUOTE,0)}JSON_CONTAINS(){return this.getToken(FC.JSON_CONTAINS,0)}JSON_CONTAINS_PATH(){return this.getToken(FC.JSON_CONTAINS_PATH,0)}JSON_EXTRACT(){return this.getToken(FC.JSON_EXTRACT,0)}JSON_KEYS(){return this.getToken(FC.JSON_KEYS,0)}JSON_OVERLAPS(){return this.getToken(FC.JSON_OVERLAPS,0)}JSON_SEARCH(){return this.getToken(FC.JSON_SEARCH,0)}JSON_VALUE(){return this.getToken(FC.JSON_VALUE,0)}JSON_ARRAY_APPEND(){return this.getToken(FC.JSON_ARRAY_APPEND,0)}JSON_ARRAY_INSERT(){return this.getToken(FC.JSON_ARRAY_INSERT,0)}JSON_INSERT(){return this.getToken(FC.JSON_INSERT,0)}JSON_MERGE(){return this.getToken(FC.JSON_MERGE,0)}JSON_MERGE_PATCH(){return this.getToken(FC.JSON_MERGE_PATCH,0)}JSON_MERGE_PRESERVE(){return this.getToken(FC.JSON_MERGE_PRESERVE,0)}JSON_REMOVE(){return this.getToken(FC.JSON_REMOVE,0)}JSON_REPLACE(){return this.getToken(FC.JSON_REPLACE,0)}JSON_SET(){return this.getToken(FC.JSON_SET,0)}JSON_UNQUOTE(){return this.getToken(FC.JSON_UNQUOTE,0)}JSON_DEPTH(){return this.getToken(FC.JSON_DEPTH,0)}JSON_LENGTH(){return this.getToken(FC.JSON_LENGTH,0)}JSON_TYPE(){return this.getToken(FC.JSON_TYPE,0)}JSON_VALID(){return this.getToken(FC.JSON_VALID,0)}JSON_TABLE(){return this.getToken(FC.JSON_TABLE,0)}JSON_SCHEMA_VALID(){return this.getToken(FC.JSON_SCHEMA_VALID,0)}JSON_SCHEMA_VALIDATION_REPORT(){return this.getToken(FC.JSON_SCHEMA_VALIDATION_REPORT,0)}JSON_PRETTY(){return this.getToken(FC.JSON_PRETTY,0)}JSON_STORAGE_FREE(){return this.getToken(FC.JSON_STORAGE_FREE,0)}JSON_STORAGE_SIZE(){return this.getToken(FC.JSON_STORAGE_SIZE,0)}JSON_ARRAYAGG(){return this.getToken(FC.JSON_ARRAYAGG,0)}JSON_OBJECTAGG(){return this.getToken(FC.JSON_OBJECTAGG,0)}get ruleIndex(){return FC.RULE_functionNameBase}accept(t){return t.visitFunctionNameBase?t.visitFunctionNameBase(this):t.visitChildren(this)}},RG=class extends Ii{},AG={SPACE:FC.SPACE,FROM:FC.FROM,OPENING_BRACKET:FC.LR_BRACKET,CLOSING_BRACKET:FC.RR_BRACKET,ALTER:FC.ALTER,INSERT:FC.INSERT,UPDATE:FC.UPDATE,JOIN:FC.JOIN,SEMICOLON:FC.SEMI,SELECT:FC.SELECT};var SG=new Set(function(){let t=[],e=FC.VAR_ASSIGN,s=FC.ERROR_RECONGNIGION;for(let E=e;E<=s;E++)E!==FC.STAR&&t.push(E);let a=FC.ARMSCII8,r=FC.UTF8MB4;for(let E=a;E<=r;E++)t.push(E);let i=FC.AVG,c=FC.UTC_TIMESTAMP;for(let E=i;E<=c;E++)t.push(E);let n=FC.ABS,h=FC.X_FUNCTION;for(let E=n;E<=h;E++)t.push(E);return t.push(FC.EOF),t.push(FC.KEY),t}()),lG=new Set([FC.RULE_userName,FC.RULE_roleName,FC.RULE_databaseName,FC.RULE_constraintName,FC.RULE_triggerName,FC.RULE_indexName,FC.RULE_fullColumnName,FC.RULE_tableName,FC.RULE_simpleUserName,FC.RULE_fullId,FC.RULE_simpleId,FC.RULE_uid,FC.RULE_aggregateWindowedFunction,FC.RULE_scalarFunctionName,FC.RULE_specificFunction,FC.RULE_passwordFunctionClause]),OG=class extends RG{constructor(){super(),this.visitTableName=t=>{try{this.symbolTable.addNewSymbolOfType(qc,this.scope,t.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitAtomTableItem=t=>{try{var e;let s=null===(e=t.uid())||void 0===e?void 0:e.getText(),a="left"===(null===s||void 0===s?void 0:s.toLowerCase())||"right"===(null===s||void 0===s?void 0:s.toLowerCase());this.symbolTable.addNewSymbolOfType(qc,this.scope,t.tableName().getText(),a?void 0:s)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitSelectElementAlias=t=>{try{this.symbolTable.addNewSymbolOfType(zc,this.scope,t.uid().getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.symbolTable=new Zc("",{allowDuplicateSymbols:!0}),this.scope=this.symbolTable.addNewSymbolOfType(Bc,void 0)}};function IG(t,e){if(!e)return t.root();switch(e){case"from":return t.fromClause();case"alter":return t.alterTable();case"insert":return t.insertStatement();case"update":return t.multipleUpdateStatement();case"select":return t.selectStatement()}}var uG={Lexer:GC,Parser:FC,tokenDictionary:AG,ignoredTokens:SG,rulesToVisit:lG,getParseTree:IG,enrichAutocompleteResult:function(t,e,s,a,r,i){let{shouldSuggestColumns:c,shouldSuggestColumnAliases:n,shouldSuggestConstraints:h,...E}=function(t,e,s){let a,r=!1,i=!1,c=!1,n=!1,h=!1,E=!1,T=!1,o=!1,R=!1,A=!1;for(let[S,l]of t)if(uC(e,l))switch(S){case FC.RULE_tableName:if(l.ruleList.includes(FC.RULE_createTable))break;a=UC(s,AG,e,FC.VIEW)?"VIEWS":UC(s,AG,e,FC.TABLE)?"TABLES":"ALL";break;case FC.RULE_fullId:UC(s,AG,e,FC.VIEW)&&(l.ruleList.includes(FC.RULE_alterView)||l.ruleList.includes(FC.RULE_dropView))&&(a="VIEWS");break;case FC.RULE_aggregateWindowedFunction:r=!0;break;case FC.RULE_scalarFunctionName:i=!0;break;case FC.RULE_triggerName:n=!0;break;case FC.RULE_indexName:c=!0;break;case FC.RULE_constraintName:o=!0;break;case FC.RULE_databaseName:h=!0;break;case FC.RULE_roleName:E=!0;break;case FC.RULE_userName:T=!0;break;case FC.RULE_fullColumnName:case FC.RULE_indexColumnName:R=!0,(l.ruleList.includes(FC.RULE_groupByItem)||l.ruleList.includes(FC.RULE_orderByExpression))&&(A=!0);break;case FC.RULE_uid:(l.ruleList.includes(FC.RULE_alterSpecification)&&!UC(s,AG,e,FC.ADD)||l.ruleList.includes(FC.RULE_indexColumnName))&&(R=!0)}return{suggestViewsOrTables:a,suggestAggregateFunctions:r,suggestFunctions:i,suggestIndexes:c,suggestTriggers:n,suggestDatabases:h,suggestRoles:E,suggestUsers:T,shouldSuggestConstraints:o,shouldSuggestColumns:R,shouldSuggestColumnAliases:A}}(e,a,s),T={...t,...E,suggestTemplates:_C(i,r)};if(c||h||n){let t=new OG,{tableContextSuggestion:e,suggestColumnAliases:a}=mC(GC,FC,t,AG,IG,s,r,i);c&&e&&(T.suggestColumns=e),h&&e&&(T.suggestConstraints=e),n&&a&&(T.suggestColumnAliases=a)}return T}},NG=class{constructor(t){this.errors=[],this.whitespaceToken=t}syntaxError(t,e,s,a,r){if(e){let t=OC(e,this.whitespaceToken);this.errors.push({message:r,...t})}else this.errors.push({message:r,startLine:s,startColumn:a,endLine:s,endColumn:a})}reportAmbiguity(){}reportAttemptingFullContext(){}reportContextSensitivity(){}},LG=(Ji=class t extends $r{constructor(e){super(e),this.interpreter=new hi(this,t._ATN,t.decisionsToDFA,new Si)}get grammarFileName(){return"ClickHouseLexer.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}get channelNames(){return t.channelNames}get modeNames(){return t.modeNames}static get _ATN(){return t.__ATN||(t.__ATN=(new fr).deserialize(t._serializedATN)),t.__ATN}get vocabulary(){return t.vocabulary}},Ji.ADD=1,Ji.AFTER=2,Ji.ALIAS=3,Ji.ALL=4,Ji.ALTER=5,Ji.AND=6,Ji.ANTI=7,Ji.ANY=8,Ji.ARRAY=9,Ji.AS=10,Ji.ASCENDING=11,Ji.ASOF=12,Ji.AST=13,Ji.ASYNC=14,Ji.ATTACH=15,Ji.BETWEEN=16,Ji.BOTH=17,Ji.BY=18,Ji.CASE=19,Ji.CAST=20,Ji.CHECK=21,Ji.CLEAR=22,Ji.CLUSTER=23,Ji.CODEC=24,Ji.COLLATE=25,Ji.COLUMN=26,Ji.COMMENT=27,Ji.CONSTRAINT=28,Ji.CREATE=29,Ji.CROSS=30,Ji.CUBE=31,Ji.CURRENT=32,Ji.DATABASE=33,Ji.DATABASES=34,Ji.DATE=35,Ji.DAY=36,Ji.DEDUPLICATE=37,Ji.DEFAULT=38,Ji.DELAY=39,Ji.DELETE=40,Ji.DESC=41,Ji.DESCENDING=42,Ji.DESCRIBE=43,Ji.DETACH=44,Ji.DICTIONARIES=45,Ji.DICTIONARY=46,Ji.DISK=47,Ji.DISTINCT=48,Ji.DISTRIBUTED=49,Ji.DROP=50,Ji.ELSE=51,Ji.END=52,Ji.ENGINE=53,Ji.ESTIMATE=54,Ji.EVENTS=55,Ji.EXISTS=56,Ji.EXPLAIN=57,Ji.EXPRESSION=58,Ji.EXTRACT=59,Ji.FETCHES=60,Ji.FINAL=61,Ji.FIRST=62,Ji.FLUSH=63,Ji.FOLLOWING=64,Ji.FOR=65,Ji.FORMAT=66,Ji.FREEZE=67,Ji.FROM=68,Ji.FULL=69,Ji.FUNCTION=70,Ji.GLOBAL=71,Ji.GRANULARITY=72,Ji.GROUP=73,Ji.HAVING=74,Ji.HIERARCHICAL=75,Ji.HOUR=76,Ji.ID=77,Ji.IF=78,Ji.ILIKE=79,Ji.IN=80,Ji.INDEX=81,Ji.INF=82,Ji.INJECTIVE=83,Ji.INNER=84,Ji.INSERT=85,Ji.INTERVAL=86,Ji.INTO=87,Ji.IS=88,Ji.IS_OBJECT_ID=89,Ji.JOIN=90,Ji.KEY=91,Ji.KILL=92,Ji.LAST=93,Ji.LAYOUT=94,Ji.LEADING=95,Ji.LEFT=96,Ji.LIFETIME=97,Ji.LIKE=98,Ji.LIMIT=99,Ji.LIVE=100,Ji.LOCAL=101,Ji.LOGS=102,Ji.MATERIALIZE=103,Ji.MATERIALIZED=104,Ji.MAX=105,Ji.MERGES=106,Ji.MIN=107,Ji.MINUTE=108,Ji.MODIFY=109,Ji.MONTH=110,Ji.MOVE=111,Ji.MUTATION=112,Ji.NAN_SQL=113,Ji.NO=114,Ji.NOT=115,Ji.NULL_SQL=116,Ji.NULLS=117,Ji.OFFSET=118,Ji.ON=119,Ji.OPTIMIZE=120,Ji.OR=121,Ji.ORDER=122,Ji.OUTER=123,Ji.OUTFILE=124,Ji.OVER=125,Ji.PARTITION=126,Ji.PIPELINE=127,Ji.PLAN=128,Ji.POPULATE=129,Ji.PRECEDING=130,Ji.PREWHERE=131,Ji.PRIMARY=132,Ji.PROJECTION=133,Ji.QUARTER=134,Ji.QUERY=135,Ji.RANGE=136,Ji.RELOAD=137,Ji.REMOVE=138,Ji.RENAME=139,Ji.REPLACE=140,Ji.REPLICA=141,Ji.REPLICATED=142,Ji.RIGHT=143,Ji.ROLLUP=144,Ji.ROW=145,Ji.ROWS=146,Ji.SAMPLE=147,Ji.SECOND=148,Ji.SELECT=149,Ji.SEMI=150,Ji.SENDS=151,Ji.SET=152,Ji.SETTINGS=153,Ji.SHOW=154,Ji.SOURCE=155,Ji.START=156,Ji.STOP=157,Ji.SUBSTRING=158,Ji.SYNC=159,Ji.SYNTAX=160,Ji.SYSTEM=161,Ji.TABLE=162,Ji.TABLES=163,Ji.TEMPORARY=164,Ji.TEST=165,Ji.THEN=166,Ji.TIES=167,Ji.TIMEOUT=168,Ji.TIMESTAMP=169,Ji.TO=170,Ji.TOP=171,Ji.TOTALS=172,Ji.TRAILING=173,Ji.TRIM=174,Ji.TREE=175,Ji.TRUNCATE=176,Ji.TTL=177,Ji.TYPE=178,Ji.UNBOUNDED=179,Ji.UNION=180,Ji.UPDATE=181,Ji.USE=182,Ji.USING=183,Ji.UUID=184,Ji.VALUES=185,Ji.VIEW=186,Ji.VOLUME=187,Ji.WATCH=188,Ji.WEEK=189,Ji.WHEN=190,Ji.WHERE=191,Ji.WINDOW=192,Ji.WITH=193,Ji.YEAR=194,Ji.JSON_FALSE=195,Ji.JSON_TRUE=196,Ji.IDENTIFIER=197,Ji.FLOATING_LITERAL=198,Ji.OCTAL_LITERAL=199,Ji.DECIMAL_LITERAL=200,Ji.HEXADECIMAL_LITERAL=201,Ji.STRING_LITERAL=202,Ji.ARROW=203,Ji.ASTERISK=204,Ji.BACKQUOTE=205,Ji.BACKSLASH=206,Ji.COLON=207,Ji.COMMA=208,Ji.CONCAT=209,Ji.DASH=210,Ji.DOT=211,Ji.EQ_DOUBLE=212,Ji.EQ_SINGLE=213,Ji.GE=214,Ji.GT=215,Ji.LBRACE=216,Ji.LBRACKET=217,Ji.LE=218,Ji.LPAREN=219,Ji.LT=220,Ji.NOT_EQ=221,Ji.PERCENT=222,Ji.PLUS=223,Ji.QUESTIONMARK=224,Ji.QUOTE_DOUBLE=225,Ji.QUOTE_SINGLE=226,Ji.RBRACE=227,Ji.RBRACKET=228,Ji.RPAREN=229,Ji.SEMICOLON=230,Ji.SLASH=231,Ji.UNDERSCORE=232,Ji.MULTI_LINE_COMMENT=233,Ji.SINGLE_LINE_COMMENT=234,Ji.WHITESPACE=235,Ji.channelNames=["DEFAULT_TOKEN_CHANNEL","HIDDEN"],Ji.literalNames=[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"'false'","'true'",null,null,null,null,null,null,"'->'","'*'","'`'","''","':'","','","'||'","'-'","'.'","'=='","'='","'>='","'>'","'{'","'['","'<='","'('","'<'",null,"'%'","'+'","'?'","'\"'","'''","'}'","']'","')'","';'","'/'","'_'"],Ji.symbolicNames=[null,"ADD","AFTER","ALIAS","ALL","ALTER","AND","ANTI","ANY","ARRAY","AS","ASCENDING","ASOF","AST","ASYNC","ATTACH","BETWEEN","BOTH","BY","CASE","CAST","CHECK","CLEAR","CLUSTER","CODEC","COLLATE","COLUMN","COMMENT","CONSTRAINT","CREATE","CROSS","CUBE","CURRENT","DATABASE","DATABASES","DATE","DAY","DEDUPLICATE","DEFAULT","DELAY","DELETE","DESC","DESCENDING","DESCRIBE","DETACH","DICTIONARIES","DICTIONARY","DISK","DISTINCT","DISTRIBUTED","DROP","ELSE","END","ENGINE","ESTIMATE","EVENTS","EXISTS","EXPLAIN","EXPRESSION","EXTRACT","FETCHES","FINAL","FIRST","FLUSH","FOLLOWING","FOR","FORMAT","FREEZE","FROM","FULL","FUNCTION","GLOBAL","GRANULARITY","GROUP","HAVING","HIERARCHICAL","HOUR","ID","IF","ILIKE","IN","INDEX","INF","INJECTIVE","INNER","INSERT","INTERVAL","INTO","IS","IS_OBJECT_ID","JOIN","KEY","KILL","LAST","LAYOUT","LEADING","LEFT","LIFETIME","LIKE","LIMIT","LIVE","LOCAL","LOGS","MATERIALIZE","MATERIALIZED","MAX","MERGES","MIN","MINUTE","MODIFY","MONTH","MOVE","MUTATION","NAN_SQL","NO","NOT","NULL_SQL","NULLS","OFFSET","ON","OPTIMIZE","OR","ORDER","OUTER","OUTFILE","OVER","PARTITION","PIPELINE","PLAN","POPULATE","PRECEDING","PREWHERE","PRIMARY","PROJECTION","QUARTER","QUERY","RANGE","RELOAD","REMOVE","RENAME","REPLACE","REPLICA","REPLICATED","RIGHT","ROLLUP","ROW","ROWS","SAMPLE","SECOND","SELECT","SEMI","SENDS","SET","SETTINGS","SHOW","SOURCE","START","STOP","SUBSTRING","SYNC","SYNTAX","SYSTEM","TABLE","TABLES","TEMPORARY","TEST","THEN","TIES","TIMEOUT","TIMESTAMP","TO","TOP","TOTALS","TRAILING","TRIM","TREE","TRUNCATE","TTL","TYPE","UNBOUNDED","UNION","UPDATE","USE","USING","UUID","VALUES","VIEW","VOLUME","WATCH","WEEK","WHEN","WHERE","WINDOW","WITH","YEAR","JSON_FALSE","JSON_TRUE","IDENTIFIER","FLOATING_LITERAL","OCTAL_LITERAL","DECIMAL_LITERAL","HEXADECIMAL_LITERAL","STRING_LITERAL","ARROW","ASTERISK","BACKQUOTE","BACKSLASH","COLON","COMMA","CONCAT","DASH","DOT","EQ_DOUBLE","EQ_SINGLE","GE","GT","LBRACE","LBRACKET","LE","LPAREN","LT","NOT_EQ","PERCENT","PLUS","QUESTIONMARK","QUOTE_DOUBLE","QUOTE_SINGLE","RBRACE","RBRACKET","RPAREN","SEMICOLON","SLASH","UNDERSCORE","MULTI_LINE_COMMENT","SINGLE_LINE_COMMENT","WHITESPACE"],Ji.modeNames=["DEFAULT_MODE"],Ji.ruleNames=["ADD","AFTER","ALIAS","ALL","ALTER","AND","ANTI","ANY","ARRAY","AS","ASCENDING","ASOF","AST","ASYNC","ATTACH","BETWEEN","BOTH","BY","CASE","CAST","CHECK","CLEAR","CLUSTER","CODEC","COLLATE","COLUMN","COMMENT","CONSTRAINT","CREATE","CROSS","CUBE","CURRENT","DATABASE","DATABASES","DATE","DAY","DEDUPLICATE","DEFAULT","DELAY","DELETE","DESC","DESCENDING","DESCRIBE","DETACH","DICTIONARIES","DICTIONARY","DISK","DISTINCT","DISTRIBUTED","DROP","ELSE","END","ENGINE","ESTIMATE","EVENTS","EXISTS","EXPLAIN","EXPRESSION","EXTRACT","FETCHES","FINAL","FIRST","FLUSH","FOLLOWING","FOR","FORMAT","FREEZE","FROM","FULL","FUNCTION","GLOBAL","GRANULARITY","GROUP","HAVING","HIERARCHICAL","HOUR","ID","IF","ILIKE","IN","INDEX","INF","INJECTIVE","INNER","INSERT","INTERVAL","INTO","IS","IS_OBJECT_ID","JOIN","KEY","KILL","LAST","LAYOUT","LEADING","LEFT","LIFETIME","LIKE","LIMIT","LIVE","LOCAL","LOGS","MATERIALIZE","MATERIALIZED","MAX","MERGES","MIN","MINUTE","MODIFY","MONTH","MOVE","MUTATION","NAN_SQL","NO","NOT","NULL_SQL","NULLS","OFFSET","ON","OPTIMIZE","OR","ORDER","OUTER","OUTFILE","OVER","PARTITION","PIPELINE","PLAN","POPULATE","PRECEDING","PREWHERE","PRIMARY","PROJECTION","QUARTER","QUERY","RANGE","RELOAD","REMOVE","RENAME","REPLACE","REPLICA","REPLICATED","RIGHT","ROLLUP","ROW","ROWS","SAMPLE","SECOND","SELECT","SEMI","SENDS","SET","SETTINGS","SHOW","SOURCE","START","STOP","SUBSTRING","SYNC","SYNTAX","SYSTEM","TABLE","TABLES","TEMPORARY","TEST","THEN","TIES","TIMEOUT","TIMESTAMP","TO","TOP","TOTALS","TRAILING","TRIM","TREE","TRUNCATE","TTL","TYPE","UNBOUNDED","UNION","UPDATE","USE","USING","UUID","VALUES","VIEW","VOLUME","WATCH","WEEK","WHEN","WHERE","WINDOW","WITH","YEAR","JSON_FALSE","JSON_TRUE","IDENTIFIER","FLOATING_LITERAL","OCTAL_LITERAL","DECIMAL_LITERAL","HEXADECIMAL_LITERAL","STRING_LITERAL","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","LETTER","OCT_DIGIT","DEC_DIGIT","HEX_DIGIT","ARROW","ASTERISK","BACKQUOTE","BACKSLASH","COLON","COMMA","CONCAT","DASH","DOT","EQ_DOUBLE","EQ_SINGLE","GE","GT","LBRACE","LBRACKET","LE","LPAREN","LT","NOT_EQ","PERCENT","PLUS","QUESTIONMARK","QUOTE_DOUBLE","QUOTE_SINGLE","RBRACE","RBRACKET","RPAREN","SEMICOLON","SLASH","UNDERSCORE","MULTI_LINE_COMMENT","SINGLE_LINE_COMMENT","WHITESPACE"],Ji._serializedATN=[4,0,235,2168,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,1,0,1,0,1,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,2,1,2,1,2,1,2,1,2,1,3,1,3,1,3,1,3,1,4,1,4,1,4,1,4,1,4,1,4,1,5,1,5,1,5,1,5,1,6,1,6,1,6,1,6,1,6,1,7,1,7,1,7,1,7,1,8,1,8,1,8,1,8,1,8,1,8,1,9,1,9,1,9,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,3,10,594,8,10,1,11,1,11,1,11,1,11,1,11,1,12,1,12,1,12,1,12,1,13,1,13,1,13,1,13,1,13,1,13,1,14,1,14,1,14,1,14,1,14,1,14,1,14,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,15,1,16,1,16,1,16,1,16,1,16,1,17,1,17,1,17,1,18,1,18,1,18,1,18,1,18,1,19,1,19,1,19,1,19,1,19,1,20,1,20,1,20,1,20,1,20,1,20,1,21,1,21,1,21,1,21,1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,22,1,23,1,23,1,23,1,23,1,23,1,23,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,26,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,27,1,28,1,28,1,28,1,28,1,28,1,28,1,28,1,29,1,29,1,29,1,29,1,29,1,29,1,30,1,30,1,30,1,30,1,30,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,32,1,32,1,32,1,32,1,32,1,32,1,32,1,32,1,32,1,33,1,33,1,33,1,33,1,33,1,33,1,33,1,33,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,35,1,35,1,35,1,35,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,38,1,38,1,38,1,38,1,38,1,38,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,40,1,40,1,40,1,40,1,40,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,41,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,42,1,43,1,43,1,43,1,43,1,43,1,43,1,43,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,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,46,1,46,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,49,1,49,1,49,1,49,1,49,1,50,1,50,1,50,1,50,1,50,1,51,1,51,1,51,1,51,1,52,1,52,1,52,1,52,1,52,1,52,1,52,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,56,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,57,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,58,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,59,1,60,1,60,1,60,1,60,1,60,1,60,1,61,1,61,1,61,1,61,1,61,1,61,1,62,1,62,1,62,1,62,1,62,1,62,1,63,1,63,1,63,1,63,1,63,1,63,1,63,1,63,1,63,1,63,1,64,1,64,1,64,1,64,1,65,1,65,1,65,1,65,1,65,1,65,1,65,1,66,1,66,1,66,1,66,1,66,1,66,1,66,1,67,1,67,1,67,1,67,1,67,1,68,1,68,1,68,1,68,1,68,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,69,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,72,1,72,1,72,1,72,1,72,1,72,1,73,1,73,1,73,1,73,1,73,1,73,1,73,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,75,1,75,1,75,1,75,1,75,1,76,1,76,1,76,1,77,1,77,1,77,1,78,1,78,1,78,1,78,1,78,1,78,1,79,1,79,1,79,1,80,1,80,1,80,1,80,1,80,1,80,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,81,1,81,3,81,1101,8,81,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,83,1,83,1,83,1,83,1,83,1,83,1,84,1,84,1,84,1,84,1,84,1,84,1,84,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,86,1,86,1,86,1,86,1,86,1,87,1,87,1,87,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,89,1,89,1,89,1,89,1,89,1,90,1,90,1,90,1,90,1,91,1,91,1,91,1,91,1,91,1,92,1,92,1,92,1,92,1,92,1,93,1,93,1,93,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,95,1,95,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,97,1,97,1,97,1,97,1,97,1,98,1,98,1,98,1,98,1,98,1,98,1,99,1,99,1,99,1,99,1,99,1,100,1,100,1,100,1,100,1,100,1,100,1,101,1,101,1,101,1,101,1,101,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,104,1,104,1,104,1,104,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,106,1,106,1,106,1,106,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,108,1,108,1,108,1,108,1,108,1,108,1,108,1,109,1,109,1,109,1,109,1,109,1,109,1,110,1,110,1,110,1,110,1,110,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,111,1,112,1,112,1,112,1,112,1,113,1,113,1,113,1,114,1,114,1,114,1,114,1,115,1,115,1,115,1,115,1,115,1,116,1,116,1,116,1,116,1,116,1,116,1,117,1,117,1,117,1,117,1,117,1,117,1,117,1,118,1,118,1,118,1,119,1,119,1,119,1,119,1,119,1,119,1,119,1,119,1,119,1,120,1,120,1,120,1,121,1,121,1,121,1,121,1,121,1,121,1,122,1,122,1,122,1,122,1,122,1,122,1,123,1,123,1,123,1,123,1,123,1,123,1,123,1,123,1,124,1,124,1,124,1,124,1,124,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,126,1,126,1,126,1,126,1,126,1,126,1,126,1,126,1,126,1,127,1,127,1,127,1,127,1,127,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,131,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,134,1,134,1,134,1,134,1,134,1,134,1,135,1,135,1,135,1,135,1,135,1,135,1,136,1,136,1,136,1,136,1,136,1,136,1,136,1,137,1,137,1,137,1,137,1,137,1,137,1,137,1,138,1,138,1,138,1,138,1,138,1,138,1,138,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,139,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,142,1,142,1,142,1,142,1,142,1,142,1,143,1,143,1,143,1,143,1,143,1,143,1,143,1,144,1,144,1,144,1,144,1,145,1,145,1,145,1,145,1,145,1,146,1,146,1,146,1,146,1,146,1,146,1,146,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,148,1,148,1,148,1,148,1,148,1,148,1,148,1,149,1,149,1,149,1,149,1,149,1,150,1,150,1,150,1,150,1,150,1,150,1,151,1,151,1,151,1,151,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,153,1,153,1,153,1,153,1,153,1,154,1,154,1,154,1,154,1,154,1,154,1,154,1,155,1,155,1,155,1,155,1,155,1,155,1,156,1,156,1,156,1,156,1,156,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,157,1,158,1,158,1,158,1,158,1,158,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,161,1,161,1,161,1,161,1,161,1,161,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,163,1,164,1,164,1,164,1,164,1,164,1,165,1,165,1,165,1,165,1,165,1,166,1,166,1,166,1,166,1,166,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,168,1,169,1,169,1,169,1,170,1,170,1,170,1,170,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,172,1,173,1,173,1,173,1,173,1,173,1,174,1,174,1,174,1,174,1,174,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,176,1,176,1,176,1,176,1,177,1,177,1,177,1,177,1,177,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,178,1,179,1,179,1,179,1,179,1,179,1,179,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,181,1,181,1,181,1,181,1,182,1,182,1,182,1,182,1,182,1,182,1,183,1,183,1,183,1,183,1,183,1,184,1,184,1,184,1,184,1,184,1,184,1,184,1,185,1,185,1,185,1,185,1,185,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,187,1,187,1,187,1,187,1,187,1,187,1,188,1,188,1,188,1,188,1,188,1,189,1,189,1,189,1,189,1,189,1,190,1,190,1,190,1,190,1,190,1,190,1,191,1,191,1,191,1,191,1,191,1,191,1,191,1,192,1,192,1,192,1,192,1,192,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,193,3,193,1840,8,193,1,194,1,194,1,194,1,194,1,194,1,194,1,195,1,195,1,195,1,195,1,195,1,196,1,196,3,196,1855,8,196,1,196,1,196,1,196,5,196,1860,8,196,10,196,12,196,1863,9,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,5,196,1873,8,196,10,196,12,196,1876,9,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,5,196,1888,8,196,10,196,12,196,1891,9,196,1,196,1,196,3,196,1895,8,196,1,197,1,197,1,197,5,197,1900,8,197,10,197,12,197,1903,9,197,1,197,1,197,3,197,1907,8,197,1,197,1,197,3,197,1911,8,197,1,197,4,197,1914,8,197,11,197,12,197,1915,1,197,1,197,1,197,3,197,1921,8,197,1,197,1,197,3,197,1925,8,197,1,197,4,197,1928,8,197,11,197,12,197,1929,1,197,1,197,1,197,5,197,1935,8,197,10,197,12,197,1938,9,197,1,197,1,197,1,197,3,197,1943,8,197,1,197,4,197,1946,8,197,11,197,12,197,1947,1,197,1,197,1,197,1,197,1,197,3,197,1955,8,197,1,197,4,197,1958,8,197,11,197,12,197,1959,1,197,1,197,1,197,1,197,3,197,1966,8,197,1,197,4,197,1969,8,197,11,197,12,197,1970,3,197,1973,8,197,1,198,1,198,4,198,1977,8,198,11,198,12,198,1978,1,199,4,199,1982,8,199,11,199,12,199,1983,1,200,1,200,1,200,4,200,1989,8,200,11,200,12,200,1990,1,201,1,201,1,201,1,201,1,201,1,201,1,201,1,201,5,201,2001,8,201,10,201,12,201,2004,9,201,1,201,1,201,1,202,1,202,1,203,1,203,1,204,1,204,1,205,1,205,1,206,1,206,1,207,1,207,1,208,1,208,1,209,1,209,1,210,1,210,1,211,1,211,1,212,1,212,1,213,1,213,1,214,1,214,1,215,1,215,1,216,1,216,1,217,1,217,1,218,1,218,1,219,1,219,1,220,1,220,1,221,1,221,1,222,1,222,1,223,1,223,1,224,1,224,1,225,1,225,1,226,1,226,1,227,1,227,1,228,1,228,1,229,1,229,1,230,1,230,1,231,1,231,1,232,1,232,1,232,1,233,1,233,1,234,1,234,1,235,1,235,1,236,1,236,1,237,1,237,1,238,1,238,1,238,1,239,1,239,1,240,1,240,1,241,1,241,1,241,1,242,1,242,1,243,1,243,1,243,1,244,1,244,1,245,1,245,1,246,1,246,1,247,1,247,1,247,1,248,1,248,1,249,1,249,1,250,1,250,1,250,1,250,3,250,2113,8,250,1,251,1,251,1,252,1,252,1,253,1,253,1,254,1,254,1,255,1,255,1,256,1,256,1,257,1,257,1,258,1,258,1,259,1,259,1,260,1,260,1,261,1,261,1,262,1,262,1,262,1,262,5,262,2141,8,262,10,262,12,262,2144,9,262,1,262,1,262,1,262,1,262,1,262,1,263,1,263,1,263,1,263,5,263,2155,8,263,10,263,12,263,2158,9,263,1,263,3,263,2161,8,263,1,263,1,263,1,264,1,264,1,264,1,264,1,2142,0,265,1,1,3,2,5,3,7,4,9,5,11,6,13,7,15,8,17,9,19,10,21,11,23,12,25,13,27,14,29,15,31,16,33,17,35,18,37,19,39,20,41,21,43,22,45,23,47,24,49,25,51,26,53,27,55,28,57,29,59,30,61,31,63,32,65,33,67,34,69,35,71,36,73,37,75,38,77,39,79,40,81,41,83,42,85,43,87,44,89,45,91,46,93,47,95,48,97,49,99,50,101,51,103,52,105,53,107,54,109,55,111,56,113,57,115,58,117,59,119,60,121,61,123,62,125,63,127,64,129,65,131,66,133,67,135,68,137,69,139,70,141,71,143,72,145,73,147,74,149,75,151,76,153,77,155,78,157,79,159,80,161,81,163,82,165,83,167,84,169,85,171,86,173,87,175,88,177,89,179,90,181,91,183,92,185,93,187,94,189,95,191,96,193,97,195,98,197,99,199,100,201,101,203,102,205,103,207,104,209,105,211,106,213,107,215,108,217,109,219,110,221,111,223,112,225,113,227,114,229,115,231,116,233,117,235,118,237,119,239,120,241,121,243,122,245,123,247,124,249,125,251,126,253,127,255,128,257,129,259,130,261,131,263,132,265,133,267,134,269,135,271,136,273,137,275,138,277,139,279,140,281,141,283,142,285,143,287,144,289,145,291,146,293,147,295,148,297,149,299,150,301,151,303,152,305,153,307,154,309,155,311,156,313,157,315,158,317,159,319,160,321,161,323,162,325,163,327,164,329,165,331,166,333,167,335,168,337,169,339,170,341,171,343,172,345,173,347,174,349,175,351,176,353,177,355,178,357,179,359,180,361,181,363,182,365,183,367,184,369,185,371,186,373,187,375,188,377,189,379,190,381,191,383,192,385,193,387,194,389,195,391,196,393,197,395,198,397,199,399,200,401,201,403,202,405,0,407,0,409,0,411,0,413,0,415,0,417,0,419,0,421,0,423,0,425,0,427,0,429,0,431,0,433,0,435,0,437,0,439,0,441,0,443,0,445,0,447,0,449,0,451,0,453,0,455,0,457,0,459,0,461,0,463,0,465,203,467,204,469,205,471,206,473,207,475,208,477,209,479,210,481,211,483,212,485,213,487,214,489,215,491,216,493,217,495,218,497,219,499,220,501,221,503,222,505,223,507,224,509,225,511,226,513,227,515,228,517,229,519,230,521,231,523,232,525,233,527,234,529,235,1,0,36,2,0,92,92,96,96,2,0,34,34,92,92,2,0,39,39,92,92,2,0,65,65,97,97,2,0,66,66,98,98,2,0,67,67,99,99,2,0,68,68,100,100,2,0,69,69,101,101,2,0,70,70,102,102,2,0,71,71,103,103,2,0,72,72,104,104,2,0,73,73,105,105,2,0,74,74,106,106,2,0,75,75,107,107,2,0,76,76,108,108,2,0,77,77,109,109,2,0,78,78,110,110,2,0,79,79,111,111,2,0,80,80,112,112,2,0,81,81,113,113,2,0,82,82,114,114,2,0,83,83,115,115,2,0,84,84,116,116,2,0,85,85,117,117,2,0,86,86,118,118,2,0,87,87,119,119,2,0,88,88,120,120,2,0,89,89,121,121,2,0,90,90,122,122,2,0,65,90,97,122,1,0,48,55,1,0,48,57,3,0,48,57,65,70,97,102,2,0,10,10,13,13,2,1,10,10,13,13,2,0,9,13,32,32,2184,0,1,1,0,0,0,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,23,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,0,0,0,0,65,1,0,0,0,0,67,1,0,0,0,0,69,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,1,0,0,0,0,87,1,0,0,0,0,89,1,0,0,0,0,91,1,0,0,0,0,93,1,0,0,0,0,95,1,0,0,0,0,97,1,0,0,0,0,99,1,0,0,0,0,101,1,0,0,0,0,103,1,0,0,0,0,105,1,0,0,0,0,107,1,0,0,0,0,109,1,0,0,0,0,111,1,0,0,0,0,113,1,0,0,0,0,115,1,0,0,0,0,117,1,0,0,0,0,119,1,0,0,0,0,121,1,0,0,0,0,123,1,0,0,0,0,125,1,0,0,0,0,127,1,0,0,0,0,129,1,0,0,0,0,131,1,0,0,0,0,133,1,0,0,0,0,135,1,0,0,0,0,137,1,0,0,0,0,139,1,0,0,0,0,141,1,0,0,0,0,143,1,0,0,0,0,145,1,0,0,0,0,147,1,0,0,0,0,149,1,0,0,0,0,151,1,0,0,0,0,153,1,0,0,0,0,155,1,0,0,0,0,157,1,0,0,0,0,159,1,0,0,0,0,161,1,0,0,0,0,163,1,0,0,0,0,165,1,0,0,0,0,167,1,0,0,0,0,169,1,0,0,0,0,171,1,0,0,0,0,173,1,0,0,0,0,175,1,0,0,0,0,177,1,0,0,0,0,179,1,0,0,0,0,181,1,0,0,0,0,183,1,0,0,0,0,185,1,0,0,0,0,187,1,0,0,0,0,189,1,0,0,0,0,191,1,0,0,0,0,193,1,0,0,0,0,195,1,0,0,0,0,197,1,0,0,0,0,199,1,0,0,0,0,201,1,0,0,0,0,203,1,0,0,0,0,205,1,0,0,0,0,207,1,0,0,0,0,209,1,0,0,0,0,211,1,0,0,0,0,213,1,0,0,0,0,215,1,0,0,0,0,217,1,0,0,0,0,219,1,0,0,0,0,221,1,0,0,0,0,223,1,0,0,0,0,225,1,0,0,0,0,227,1,0,0,0,0,229,1,0,0,0,0,231,1,0,0,0,0,233,1,0,0,0,0,235,1,0,0,0,0,237,1,0,0,0,0,239,1,0,0,0,0,241,1,0,0,0,0,243,1,0,0,0,0,245,1,0,0,0,0,247,1,0,0,0,0,249,1,0,0,0,0,251,1,0,0,0,0,253,1,0,0,0,0,255,1,0,0,0,0,257,1,0,0,0,0,259,1,0,0,0,0,261,1,0,0,0,0,263,1,0,0,0,0,265,1,0,0,0,0,267,1,0,0,0,0,269,1,0,0,0,0,271,1,0,0,0,0,273,1,0,0,0,0,275,1,0,0,0,0,277,1,0,0,0,0,279,1,0,0,0,0,281,1,0,0,0,0,283,1,0,0,0,0,285,1,0,0,0,0,287,1,0,0,0,0,289,1,0,0,0,0,291,1,0,0,0,0,293,1,0,0,0,0,295,1,0,0,0,0,297,1,0,0,0,0,299,1,0,0,0,0,301,1,0,0,0,0,303,1,0,0,0,0,305,1,0,0,0,0,307,1,0,0,0,0,309,1,0,0,0,0,311,1,0,0,0,0,313,1,0,0,0,0,315,1,0,0,0,0,317,1,0,0,0,0,319,1,0,0,0,0,321,1,0,0,0,0,323,1,0,0,0,0,325,1,0,0,0,0,327,1,0,0,0,0,329,1,0,0,0,0,331,1,0,0,0,0,333,1,0,0,0,0,335,1,0,0,0,0,337,1,0,0,0,0,339,1,0,0,0,0,341,1,0,0,0,0,343,1,0,0,0,0,345,1,0,0,0,0,347,1,0,0,0,0,349,1,0,0,0,0,351,1,0,0,0,0,353,1,0,0,0,0,355,1,0,0,0,0,357,1,0,0,0,0,359,1,0,0,0,0,361,1,0,0,0,0,363,1,0,0,0,0,365,1,0,0,0,0,367,1,0,0,0,0,369,1,0,0,0,0,371,1,0,0,0,0,373,1,0,0,0,0,375,1,0,0,0,0,377,1,0,0,0,0,379,1,0,0,0,0,381,1,0,0,0,0,383,1,0,0,0,0,385,1,0,0,0,0,387,1,0,0,0,0,389,1,0,0,0,0,391,1,0,0,0,0,393,1,0,0,0,0,395,1,0,0,0,0,397,1,0,0,0,0,399,1,0,0,0,0,401,1,0,0,0,0,403,1,0,0,0,0,465,1,0,0,0,0,467,1,0,0,0,0,469,1,0,0,0,0,471,1,0,0,0,0,473,1,0,0,0,0,475,1,0,0,0,0,477,1,0,0,0,0,479,1,0,0,0,0,481,1,0,0,0,0,483,1,0,0,0,0,485,1,0,0,0,0,487,1,0,0,0,0,489,1,0,0,0,0,491,1,0,0,0,0,493,1,0,0,0,0,495,1,0,0,0,0,497,1,0,0,0,0,499,1,0,0,0,0,501,1,0,0,0,0,503,1,0,0,0,0,505,1,0,0,0,0,507,1,0,0,0,0,509,1,0,0,0,0,511,1,0,0,0,0,513,1,0,0,0,0,515,1,0,0,0,0,517,1,0,0,0,0,519,1,0,0,0,0,521,1,0,0,0,0,523,1,0,0,0,0,525,1,0,0,0,0,527,1,0,0,0,0,529,1,0,0,0,1,531,1,0,0,0,3,535,1,0,0,0,5,541,1,0,0,0,7,547,1,0,0,0,9,551,1,0,0,0,11,557,1,0,0,0,13,561,1,0,0,0,15,566,1,0,0,0,17,570,1,0,0,0,19,576,1,0,0,0,21,593,1,0,0,0,23,595,1,0,0,0,25,600,1,0,0,0,27,604,1,0,0,0,29,610,1,0,0,0,31,617,1,0,0,0,33,625,1,0,0,0,35,630,1,0,0,0,37,633,1,0,0,0,39,638,1,0,0,0,41,643,1,0,0,0,43,649,1,0,0,0,45,655,1,0,0,0,47,663,1,0,0,0,49,669,1,0,0,0,51,677,1,0,0,0,53,684,1,0,0,0,55,692,1,0,0,0,57,703,1,0,0,0,59,710,1,0,0,0,61,716,1,0,0,0,63,721,1,0,0,0,65,729,1,0,0,0,67,738,1,0,0,0,69,748,1,0,0,0,71,753,1,0,0,0,73,757,1,0,0,0,75,769,1,0,0,0,77,777,1,0,0,0,79,783,1,0,0,0,81,790,1,0,0,0,83,795,1,0,0,0,85,806,1,0,0,0,87,815,1,0,0,0,89,822,1,0,0,0,91,835,1,0,0,0,93,846,1,0,0,0,95,851,1,0,0,0,97,860,1,0,0,0,99,872,1,0,0,0,101,877,1,0,0,0,103,882,1,0,0,0,105,886,1,0,0,0,107,893,1,0,0,0,109,902,1,0,0,0,111,909,1,0,0,0,113,916,1,0,0,0,115,924,1,0,0,0,117,935,1,0,0,0,119,943,1,0,0,0,121,951,1,0,0,0,123,957,1,0,0,0,125,963,1,0,0,0,127,969,1,0,0,0,129,979,1,0,0,0,131,983,1,0,0,0,133,990,1,0,0,0,135,997,1,0,0,0,137,1002,1,0,0,0,139,1007,1,0,0,0,141,1016,1,0,0,0,143,1023,1,0,0,0,145,1035,1,0,0,0,147,1041,1,0,0,0,149,1048,1,0,0,0,151,1061,1,0,0,0,153,1066,1,0,0,0,155,1069,1,0,0,0,157,1072,1,0,0,0,159,1078,1,0,0,0,161,1081,1,0,0,0,163,1100,1,0,0,0,165,1102,1,0,0,0,167,1112,1,0,0,0,169,1118,1,0,0,0,171,1125,1,0,0,0,173,1134,1,0,0,0,175,1139,1,0,0,0,177,1142,1,0,0,0,179,1155,1,0,0,0,181,1160,1,0,0,0,183,1164,1,0,0,0,185,1169,1,0,0,0,187,1174,1,0,0,0,189,1181,1,0,0,0,191,1189,1,0,0,0,193,1194,1,0,0,0,195,1203,1,0,0,0,197,1208,1,0,0,0,199,1214,1,0,0,0,201,1219,1,0,0,0,203,1225,1,0,0,0,205,1230,1,0,0,0,207,1242,1,0,0,0,209,1255,1,0,0,0,211,1259,1,0,0,0,213,1266,1,0,0,0,215,1270,1,0,0,0,217,1277,1,0,0,0,219,1284,1,0,0,0,221,1290,1,0,0,0,223,1295,1,0,0,0,225,1304,1,0,0,0,227,1308,1,0,0,0,229,1311,1,0,0,0,231,1315,1,0,0,0,233,1320,1,0,0,0,235,1326,1,0,0,0,237,1333,1,0,0,0,239,1336,1,0,0,0,241,1345,1,0,0,0,243,1348,1,0,0,0,245,1354,1,0,0,0,247,1360,1,0,0,0,249,1368,1,0,0,0,251,1373,1,0,0,0,253,1383,1,0,0,0,255,1392,1,0,0,0,257,1397,1,0,0,0,259,1406,1,0,0,0,261,1416,1,0,0,0,263,1425,1,0,0,0,265,1433,1,0,0,0,267,1444,1,0,0,0,269,1452,1,0,0,0,271,1458,1,0,0,0,273,1464,1,0,0,0,275,1471,1,0,0,0,277,1478,1,0,0,0,279,1485,1,0,0,0,281,1493,1,0,0,0,283,1501,1,0,0,0,285,1512,1,0,0,0,287,1518,1,0,0,0,289,1525,1,0,0,0,291,1529,1,0,0,0,293,1534,1,0,0,0,295,1541,1,0,0,0,297,1548,1,0,0,0,299,1555,1,0,0,0,301,1560,1,0,0,0,303,1566,1,0,0,0,305,1570,1,0,0,0,307,1579,1,0,0,0,309,1584,1,0,0,0,311,1591,1,0,0,0,313,1597,1,0,0,0,315,1602,1,0,0,0,317,1612,1,0,0,0,319,1617,1,0,0,0,321,1624,1,0,0,0,323,1631,1,0,0,0,325,1637,1,0,0,0,327,1644,1,0,0,0,329,1654,1,0,0,0,331,1659,1,0,0,0,333,1664,1,0,0,0,335,1669,1,0,0,0,337,1677,1,0,0,0,339,1687,1,0,0,0,341,1690,1,0,0,0,343,1694,1,0,0,0,345,1701,1,0,0,0,347,1710,1,0,0,0,349,1715,1,0,0,0,351,1720,1,0,0,0,353,1729,1,0,0,0,355,1733,1,0,0,0,357,1738,1,0,0,0,359,1748,1,0,0,0,361,1754,1,0,0,0,363,1761,1,0,0,0,365,1765,1,0,0,0,367,1771,1,0,0,0,369,1776,1,0,0,0,371,1783,1,0,0,0,373,1788,1,0,0,0,375,1795,1,0,0,0,377,1801,1,0,0,0,379,1806,1,0,0,0,381,1811,1,0,0,0,383,1817,1,0,0,0,385,1824,1,0,0,0,387,1839,1,0,0,0,389,1841,1,0,0,0,391,1847,1,0,0,0,393,1894,1,0,0,0,395,1972,1,0,0,0,397,1974,1,0,0,0,399,1981,1,0,0,0,401,1985,1,0,0,0,403,1992,1,0,0,0,405,2007,1,0,0,0,407,2009,1,0,0,0,409,2011,1,0,0,0,411,2013,1,0,0,0,413,2015,1,0,0,0,415,2017,1,0,0,0,417,2019,1,0,0,0,419,2021,1,0,0,0,421,2023,1,0,0,0,423,2025,1,0,0,0,425,2027,1,0,0,0,427,2029,1,0,0,0,429,2031,1,0,0,0,431,2033,1,0,0,0,433,2035,1,0,0,0,435,2037,1,0,0,0,437,2039,1,0,0,0,439,2041,1,0,0,0,441,2043,1,0,0,0,443,2045,1,0,0,0,445,2047,1,0,0,0,447,2049,1,0,0,0,449,2051,1,0,0,0,451,2053,1,0,0,0,453,2055,1,0,0,0,455,2057,1,0,0,0,457,2059,1,0,0,0,459,2061,1,0,0,0,461,2063,1,0,0,0,463,2065,1,0,0,0,465,2067,1,0,0,0,467,2070,1,0,0,0,469,2072,1,0,0,0,471,2074,1,0,0,0,473,2076,1,0,0,0,475,2078,1,0,0,0,477,2080,1,0,0,0,479,2083,1,0,0,0,481,2085,1,0,0,0,483,2087,1,0,0,0,485,2090,1,0,0,0,487,2092,1,0,0,0,489,2095,1,0,0,0,491,2097,1,0,0,0,493,2099,1,0,0,0,495,2101,1,0,0,0,497,2104,1,0,0,0,499,2106,1,0,0,0,501,2112,1,0,0,0,503,2114,1,0,0,0,505,2116,1,0,0,0,507,2118,1,0,0,0,509,2120,1,0,0,0,511,2122,1,0,0,0,513,2124,1,0,0,0,515,2126,1,0,0,0,517,2128,1,0,0,0,519,2130,1,0,0,0,521,2132,1,0,0,0,523,2134,1,0,0,0,525,2136,1,0,0,0,527,2150,1,0,0,0,529,2164,1,0,0,0,531,532,3,405,202,0,532,533,3,411,205,0,533,534,3,411,205,0,534,2,1,0,0,0,535,536,3,405,202,0,536,537,3,415,207,0,537,538,3,443,221,0,538,539,3,413,206,0,539,540,3,439,219,0,540,4,1,0,0,0,541,542,3,405,202,0,542,543,3,427,213,0,543,544,3,421,210,0,544,545,3,405,202,0,545,546,3,441,220,0,546,6,1,0,0,0,547,548,3,405,202,0,548,549,3,427,213,0,549,550,3,427,213,0,550,8,1,0,0,0,551,552,3,405,202,0,552,553,3,427,213,0,553,554,3,443,221,0,554,555,3,413,206,0,555,556,3,439,219,0,556,10,1,0,0,0,557,558,3,405,202,0,558,559,3,431,215,0,559,560,3,411,205,0,560,12,1,0,0,0,561,562,3,405,202,0,562,563,3,431,215,0,563,564,3,443,221,0,564,565,3,421,210,0,565,14,1,0,0,0,566,567,3,405,202,0,567,568,3,431,215,0,568,569,3,453,226,0,569,16,1,0,0,0,570,571,3,405,202,0,571,572,3,439,219,0,572,573,3,439,219,0,573,574,3,405,202,0,574,575,3,453,226,0,575,18,1,0,0,0,576,577,3,405,202,0,577,578,3,441,220,0,578,20,1,0,0,0,579,580,3,405,202,0,580,581,3,441,220,0,581,582,3,409,204,0,582,594,1,0,0,0,583,584,3,405,202,0,584,585,3,441,220,0,585,586,3,409,204,0,586,587,3,413,206,0,587,588,3,431,215,0,588,589,3,411,205,0,589,590,3,421,210,0,590,591,3,431,215,0,591,592,3,417,208,0,592,594,1,0,0,0,593,579,1,0,0,0,593,583,1,0,0,0,594,22,1,0,0,0,595,596,3,405,202,0,596,597,3,441,220,0,597,598,3,433,216,0,598,599,3,415,207,0,599,24,1,0,0,0,600,601,3,405,202,0,601,602,3,441,220,0,602,603,3,443,221,0,603,26,1,0,0,0,604,605,3,405,202,0,605,606,3,441,220,0,606,607,3,453,226,0,607,608,3,431,215,0,608,609,3,409,204,0,609,28,1,0,0,0,610,611,3,405,202,0,611,612,3,443,221,0,612,613,3,443,221,0,613,614,3,405,202,0,614,615,3,409,204,0,615,616,3,419,209,0,616,30,1,0,0,0,617,618,3,407,203,0,618,619,3,413,206,0,619,620,3,443,221,0,620,621,3,449,224,0,621,622,3,413,206,0,622,623,3,413,206,0,623,624,3,431,215,0,624,32,1,0,0,0,625,626,3,407,203,0,626,627,3,433,216,0,627,628,3,443,221,0,628,629,3,419,209,0,629,34,1,0,0,0,630,631,3,407,203,0,631,632,3,453,226,0,632,36,1,0,0,0,633,634,3,409,204,0,634,635,3,405,202,0,635,636,3,441,220,0,636,637,3,413,206,0,637,38,1,0,0,0,638,639,3,409,204,0,639,640,3,405,202,0,640,641,3,441,220,0,641,642,3,443,221,0,642,40,1,0,0,0,643,644,3,409,204,0,644,645,3,419,209,0,645,646,3,413,206,0,646,647,3,409,204,0,647,648,3,425,212,0,648,42,1,0,0,0,649,650,3,409,204,0,650,651,3,427,213,0,651,652,3,413,206,0,652,653,3,405,202,0,653,654,3,439,219,0,654,44,1,0,0,0,655,656,3,409,204,0,656,657,3,427,213,0,657,658,3,445,222,0,658,659,3,441,220,0,659,660,3,443,221,0,660,661,3,413,206,0,661,662,3,439,219,0,662,46,1,0,0,0,663,664,3,409,204,0,664,665,3,433,216,0,665,666,3,411,205,0,666,667,3,413,206,0,667,668,3,409,204,0,668,48,1,0,0,0,669,670,3,409,204,0,670,671,3,433,216,0,671,672,3,427,213,0,672,673,3,427,213,0,673,674,3,405,202,0,674,675,3,443,221,0,675,676,3,413,206,0,676,50,1,0,0,0,677,678,3,409,204,0,678,679,3,433,216,0,679,680,3,427,213,0,680,681,3,445,222,0,681,682,3,429,214,0,682,683,3,431,215,0,683,52,1,0,0,0,684,685,3,409,204,0,685,686,3,433,216,0,686,687,3,429,214,0,687,688,3,429,214,0,688,689,3,413,206,0,689,690,3,431,215,0,690,691,3,443,221,0,691,54,1,0,0,0,692,693,3,409,204,0,693,694,3,433,216,0,694,695,3,431,215,0,695,696,3,441,220,0,696,697,3,443,221,0,697,698,3,439,219,0,698,699,3,405,202,0,699,700,3,421,210,0,700,701,3,431,215,0,701,702,3,443,221,0,702,56,1,0,0,0,703,704,3,409,204,0,704,705,3,439,219,0,705,706,3,413,206,0,706,707,3,405,202,0,707,708,3,443,221,0,708,709,3,413,206,0,709,58,1,0,0,0,710,711,3,409,204,0,711,712,3,439,219,0,712,713,3,433,216,0,713,714,3,441,220,0,714,715,3,441,220,0,715,60,1,0,0,0,716,717,3,409,204,0,717,718,3,445,222,0,718,719,3,407,203,0,719,720,3,413,206,0,720,62,1,0,0,0,721,722,3,409,204,0,722,723,3,445,222,0,723,724,3,439,219,0,724,725,3,439,219,0,725,726,3,413,206,0,726,727,3,431,215,0,727,728,3,443,221,0,728,64,1,0,0,0,729,730,3,411,205,0,730,731,3,405,202,0,731,732,3,443,221,0,732,733,3,405,202,0,733,734,3,407,203,0,734,735,3,405,202,0,735,736,3,441,220,0,736,737,3,413,206,0,737,66,1,0,0,0,738,739,3,411,205,0,739,740,3,405,202,0,740,741,3,443,221,0,741,742,3,405,202,0,742,743,3,407,203,0,743,744,3,405,202,0,744,745,3,441,220,0,745,746,3,413,206,0,746,747,3,441,220,0,747,68,1,0,0,0,748,749,3,411,205,0,749,750,3,405,202,0,750,751,3,443,221,0,751,752,3,413,206,0,752,70,1,0,0,0,753,754,3,411,205,0,754,755,3,405,202,0,755,756,3,453,226,0,756,72,1,0,0,0,757,758,3,411,205,0,758,759,3,413,206,0,759,760,3,411,205,0,760,761,3,445,222,0,761,762,3,435,217,0,762,763,3,427,213,0,763,764,3,421,210,0,764,765,3,409,204,0,765,766,3,405,202,0,766,767,3,443,221,0,767,768,3,413,206,0,768,74,1,0,0,0,769,770,3,411,205,0,770,771,3,413,206,0,771,772,3,415,207,0,772,773,3,405,202,0,773,774,3,445,222,0,774,775,3,427,213,0,775,776,3,443,221,0,776,76,1,0,0,0,777,778,3,411,205,0,778,779,3,413,206,0,779,780,3,427,213,0,780,781,3,405,202,0,781,782,3,453,226,0,782,78,1,0,0,0,783,784,3,411,205,0,784,785,3,413,206,0,785,786,3,427,213,0,786,787,3,413,206,0,787,788,3,443,221,0,788,789,3,413,206,0,789,80,1,0,0,0,790,791,3,411,205,0,791,792,3,413,206,0,792,793,3,441,220,0,793,794,3,409,204,0,794,82,1,0,0,0,795,796,3,411,205,0,796,797,3,413,206,0,797,798,3,441,220,0,798,799,3,409,204,0,799,800,3,413,206,0,800,801,3,431,215,0,801,802,3,411,205,0,802,803,3,421,210,0,803,804,3,431,215,0,804,805,3,417,208,0,805,84,1,0,0,0,806,807,3,411,205,0,807,808,3,413,206,0,808,809,3,441,220,0,809,810,3,409,204,0,810,811,3,439,219,0,811,812,3,421,210,0,812,813,3,407,203,0,813,814,3,413,206,0,814,86,1,0,0,0,815,816,3,411,205,0,816,817,3,413,206,0,817,818,3,443,221,0,818,819,3,405,202,0,819,820,3,409,204,0,820,821,3,419,209,0,821,88,1,0,0,0,822,823,3,411,205,0,823,824,3,421,210,0,824,825,3,409,204,0,825,826,3,443,221,0,826,827,3,421,210,0,827,828,3,433,216,0,828,829,3,431,215,0,829,830,3,405,202,0,830,831,3,439,219,0,831,832,3,421,210,0,832,833,3,413,206,0,833,834,3,441,220,0,834,90,1,0,0,0,835,836,3,411,205,0,836,837,3,421,210,0,837,838,3,409,204,0,838,839,3,443,221,0,839,840,3,421,210,0,840,841,3,433,216,0,841,842,3,431,215,0,842,843,3,405,202,0,843,844,3,439,219,0,844,845,3,453,226,0,845,92,1,0,0,0,846,847,3,411,205,0,847,848,3,421,210,0,848,849,3,441,220,0,849,850,3,425,212,0,850,94,1,0,0,0,851,852,3,411,205,0,852,853,3,421,210,0,853,854,3,441,220,0,854,855,3,443,221,0,855,856,3,421,210,0,856,857,3,431,215,0,857,858,3,409,204,0,858,859,3,443,221,0,859,96,1,0,0,0,860,861,3,411,205,0,861,862,3,421,210,0,862,863,3,441,220,0,863,864,3,443,221,0,864,865,3,439,219,0,865,866,3,421,210,0,866,867,3,407,203,0,867,868,3,445,222,0,868,869,3,443,221,0,869,870,3,413,206,0,870,871,3,411,205,0,871,98,1,0,0,0,872,873,3,411,205,0,873,874,3,439,219,0,874,875,3,433,216,0,875,876,3,435,217,0,876,100,1,0,0,0,877,878,3,413,206,0,878,879,3,427,213,0,879,880,3,441,220,0,880,881,3,413,206,0,881,102,1,0,0,0,882,883,3,413,206,0,883,884,3,431,215,0,884,885,3,411,205,0,885,104,1,0,0,0,886,887,3,413,206,0,887,888,3,431,215,0,888,889,3,417,208,0,889,890,3,421,210,0,890,891,3,431,215,0,891,892,3,413,206,0,892,106,1,0,0,0,893,894,3,413,206,0,894,895,3,441,220,0,895,896,3,443,221,0,896,897,3,421,210,0,897,898,3,429,214,0,898,899,3,405,202,0,899,900,3,443,221,0,900,901,3,413,206,0,901,108,1,0,0,0,902,903,3,413,206,0,903,904,3,447,223,0,904,905,3,413,206,0,905,906,3,431,215,0,906,907,3,443,221,0,907,908,3,441,220,0,908,110,1,0,0,0,909,910,3,413,206,0,910,911,3,451,225,0,911,912,3,421,210,0,912,913,3,441,220,0,913,914,3,443,221,0,914,915,3,441,220,0,915,112,1,0,0,0,916,917,3,413,206,0,917,918,3,451,225,0,918,919,3,435,217,0,919,920,3,427,213,0,920,921,3,405,202,0,921,922,3,421,210,0,922,923,3,431,215,0,923,114,1,0,0,0,924,925,3,413,206,0,925,926,3,451,225,0,926,927,3,435,217,0,927,928,3,439,219,0,928,929,3,413,206,0,929,930,3,441,220,0,930,931,3,441,220,0,931,932,3,421,210,0,932,933,3,433,216,0,933,934,3,431,215,0,934,116,1,0,0,0,935,936,3,413,206,0,936,937,3,451,225,0,937,938,3,443,221,0,938,939,3,439,219,0,939,940,3,405,202,0,940,941,3,409,204,0,941,942,3,443,221,0,942,118,1,0,0,0,943,944,3,415,207,0,944,945,3,413,206,0,945,946,3,443,221,0,946,947,3,409,204,0,947,948,3,419,209,0,948,949,3,413,206,0,949,950,3,441,220,0,950,120,1,0,0,0,951,952,3,415,207,0,952,953,3,421,210,0,953,954,3,431,215,0,954,955,3,405,202,0,955,956,3,427,213,0,956,122,1,0,0,0,957,958,3,415,207,0,958,959,3,421,210,0,959,960,3,439,219,0,960,961,3,441,220,0,961,962,3,443,221,0,962,124,1,0,0,0,963,964,3,415,207,0,964,965,3,427,213,0,965,966,3,445,222,0,966,967,3,441,220,0,967,968,3,419,209,0,968,126,1,0,0,0,969,970,3,415,207,0,970,971,3,433,216,0,971,972,3,427,213,0,972,973,3,427,213,0,973,974,3,433,216,0,974,975,3,449,224,0,975,976,3,421,210,0,976,977,3,431,215,0,977,978,3,417,208,0,978,128,1,0,0,0,979,980,3,415,207,0,980,981,3,433,216,0,981,982,3,439,219,0,982,130,1,0,0,0,983,984,3,415,207,0,984,985,3,433,216,0,985,986,3,439,219,0,986,987,3,429,214,0,987,988,3,405,202,0,988,989,3,443,221,0,989,132,1,0,0,0,990,991,3,415,207,0,991,992,3,439,219,0,992,993,3,413,206,0,993,994,3,413,206,0,994,995,3,455,227,0,995,996,3,413,206,0,996,134,1,0,0,0,997,998,3,415,207,0,998,999,3,439,219,0,999,1e3,3,433,216,0,1e3,1001,3,429,214,0,1001,136,1,0,0,0,1002,1003,3,415,207,0,1003,1004,3,445,222,0,1004,1005,3,427,213,0,1005,1006,3,427,213,0,1006,138,1,0,0,0,1007,1008,3,415,207,0,1008,1009,3,445,222,0,1009,1010,3,431,215,0,1010,1011,3,409,204,0,1011,1012,3,443,221,0,1012,1013,3,421,210,0,1013,1014,3,433,216,0,1014,1015,3,431,215,0,1015,140,1,0,0,0,1016,1017,3,417,208,0,1017,1018,3,427,213,0,1018,1019,3,433,216,0,1019,1020,3,407,203,0,1020,1021,3,405,202,0,1021,1022,3,427,213,0,1022,142,1,0,0,0,1023,1024,3,417,208,0,1024,1025,3,439,219,0,1025,1026,3,405,202,0,1026,1027,3,431,215,0,1027,1028,3,445,222,0,1028,1029,3,427,213,0,1029,1030,3,405,202,0,1030,1031,3,439,219,0,1031,1032,3,421,210,0,1032,1033,3,443,221,0,1033,1034,3,453,226,0,1034,144,1,0,0,0,1035,1036,3,417,208,0,1036,1037,3,439,219,0,1037,1038,3,433,216,0,1038,1039,3,445,222,0,1039,1040,3,435,217,0,1040,146,1,0,0,0,1041,1042,3,419,209,0,1042,1043,3,405,202,0,1043,1044,3,447,223,0,1044,1045,3,421,210,0,1045,1046,3,431,215,0,1046,1047,3,417,208,0,1047,148,1,0,0,0,1048,1049,3,419,209,0,1049,1050,3,421,210,0,1050,1051,3,413,206,0,1051,1052,3,439,219,0,1052,1053,3,405,202,0,1053,1054,3,439,219,0,1054,1055,3,409,204,0,1055,1056,3,419,209,0,1056,1057,3,421,210,0,1057,1058,3,409,204,0,1058,1059,3,405,202,0,1059,1060,3,427,213,0,1060,150,1,0,0,0,1061,1062,3,419,209,0,1062,1063,3,433,216,0,1063,1064,3,445,222,0,1064,1065,3,439,219,0,1065,152,1,0,0,0,1066,1067,3,421,210,0,1067,1068,3,411,205,0,1068,154,1,0,0,0,1069,1070,3,421,210,0,1070,1071,3,415,207,0,1071,156,1,0,0,0,1072,1073,3,421,210,0,1073,1074,3,427,213,0,1074,1075,3,421,210,0,1075,1076,3,425,212,0,1076,1077,3,413,206,0,1077,158,1,0,0,0,1078,1079,3,421,210,0,1079,1080,3,431,215,0,1080,160,1,0,0,0,1081,1082,3,421,210,0,1082,1083,3,431,215,0,1083,1084,3,411,205,0,1084,1085,3,413,206,0,1085,1086,3,451,225,0,1086,162,1,0,0,0,1087,1088,3,421,210,0,1088,1089,3,431,215,0,1089,1090,3,415,207,0,1090,1101,1,0,0,0,1091,1092,3,421,210,0,1092,1093,3,431,215,0,1093,1094,3,415,207,0,1094,1095,3,421,210,0,1095,1096,3,431,215,0,1096,1097,3,421,210,0,1097,1098,3,443,221,0,1098,1099,3,453,226,0,1099,1101,1,0,0,0,1100,1087,1,0,0,0,1100,1091,1,0,0,0,1101,164,1,0,0,0,1102,1103,3,421,210,0,1103,1104,3,431,215,0,1104,1105,3,423,211,0,1105,1106,3,413,206,0,1106,1107,3,409,204,0,1107,1108,3,443,221,0,1108,1109,3,421,210,0,1109,1110,3,447,223,0,1110,1111,3,413,206,0,1111,166,1,0,0,0,1112,1113,3,421,210,0,1113,1114,3,431,215,0,1114,1115,3,431,215,0,1115,1116,3,413,206,0,1116,1117,3,439,219,0,1117,168,1,0,0,0,1118,1119,3,421,210,0,1119,1120,3,431,215,0,1120,1121,3,441,220,0,1121,1122,3,413,206,0,1122,1123,3,439,219,0,1123,1124,3,443,221,0,1124,170,1,0,0,0,1125,1126,3,421,210,0,1126,1127,3,431,215,0,1127,1128,3,443,221,0,1128,1129,3,413,206,0,1129,1130,3,439,219,0,1130,1131,3,447,223,0,1131,1132,3,405,202,0,1132,1133,3,427,213,0,1133,172,1,0,0,0,1134,1135,3,421,210,0,1135,1136,3,431,215,0,1136,1137,3,443,221,0,1137,1138,3,433,216,0,1138,174,1,0,0,0,1139,1140,3,421,210,0,1140,1141,3,441,220,0,1141,176,1,0,0,0,1142,1143,3,421,210,0,1143,1144,3,441,220,0,1144,1145,3,523,261,0,1145,1146,3,433,216,0,1146,1147,3,407,203,0,1147,1148,3,423,211,0,1148,1149,3,413,206,0,1149,1150,3,409,204,0,1150,1151,3,443,221,0,1151,1152,3,523,261,0,1152,1153,3,421,210,0,1153,1154,3,411,205,0,1154,178,1,0,0,0,1155,1156,3,423,211,0,1156,1157,3,433,216,0,1157,1158,3,421,210,0,1158,1159,3,431,215,0,1159,180,1,0,0,0,1160,1161,3,425,212,0,1161,1162,3,413,206,0,1162,1163,3,453,226,0,1163,182,1,0,0,0,1164,1165,3,425,212,0,1165,1166,3,421,210,0,1166,1167,3,427,213,0,1167,1168,3,427,213,0,1168,184,1,0,0,0,1169,1170,3,427,213,0,1170,1171,3,405,202,0,1171,1172,3,441,220,0,1172,1173,3,443,221,0,1173,186,1,0,0,0,1174,1175,3,427,213,0,1175,1176,3,405,202,0,1176,1177,3,453,226,0,1177,1178,3,433,216,0,1178,1179,3,445,222,0,1179,1180,3,443,221,0,1180,188,1,0,0,0,1181,1182,3,427,213,0,1182,1183,3,413,206,0,1183,1184,3,405,202,0,1184,1185,3,411,205,0,1185,1186,3,421,210,0,1186,1187,3,431,215,0,1187,1188,3,417,208,0,1188,190,1,0,0,0,1189,1190,3,427,213,0,1190,1191,3,413,206,0,1191,1192,3,415,207,0,1192,1193,3,443,221,0,1193,192,1,0,0,0,1194,1195,3,427,213,0,1195,1196,3,421,210,0,1196,1197,3,415,207,0,1197,1198,3,413,206,0,1198,1199,3,443,221,0,1199,1200,3,421,210,0,1200,1201,3,429,214,0,1201,1202,3,413,206,0,1202,194,1,0,0,0,1203,1204,3,427,213,0,1204,1205,3,421,210,0,1205,1206,3,425,212,0,1206,1207,3,413,206,0,1207,196,1,0,0,0,1208,1209,3,427,213,0,1209,1210,3,421,210,0,1210,1211,3,429,214,0,1211,1212,3,421,210,0,1212,1213,3,443,221,0,1213,198,1,0,0,0,1214,1215,3,427,213,0,1215,1216,3,421,210,0,1216,1217,3,447,223,0,1217,1218,3,413,206,0,1218,200,1,0,0,0,1219,1220,3,427,213,0,1220,1221,3,433,216,0,1221,1222,3,409,204,0,1222,1223,3,405,202,0,1223,1224,3,427,213,0,1224,202,1,0,0,0,1225,1226,3,427,213,0,1226,1227,3,433,216,0,1227,1228,3,417,208,0,1228,1229,3,441,220,0,1229,204,1,0,0,0,1230,1231,3,429,214,0,1231,1232,3,405,202,0,1232,1233,3,443,221,0,1233,1234,3,413,206,0,1234,1235,3,439,219,0,1235,1236,3,421,210,0,1236,1237,3,405,202,0,1237,1238,3,427,213,0,1238,1239,3,421,210,0,1239,1240,3,455,227,0,1240,1241,3,413,206,0,1241,206,1,0,0,0,1242,1243,3,429,214,0,1243,1244,3,405,202,0,1244,1245,3,443,221,0,1245,1246,3,413,206,0,1246,1247,3,439,219,0,1247,1248,3,421,210,0,1248,1249,3,405,202,0,1249,1250,3,427,213,0,1250,1251,3,421,210,0,1251,1252,3,455,227,0,1252,1253,3,413,206,0,1253,1254,3,411,205,0,1254,208,1,0,0,0,1255,1256,3,429,214,0,1256,1257,3,405,202,0,1257,1258,3,451,225,0,1258,210,1,0,0,0,1259,1260,3,429,214,0,1260,1261,3,413,206,0,1261,1262,3,439,219,0,1262,1263,3,417,208,0,1263,1264,3,413,206,0,1264,1265,3,441,220,0,1265,212,1,0,0,0,1266,1267,3,429,214,0,1267,1268,3,421,210,0,1268,1269,3,431,215,0,1269,214,1,0,0,0,1270,1271,3,429,214,0,1271,1272,3,421,210,0,1272,1273,3,431,215,0,1273,1274,3,445,222,0,1274,1275,3,443,221,0,1275,1276,3,413,206,0,1276,216,1,0,0,0,1277,1278,3,429,214,0,1278,1279,3,433,216,0,1279,1280,3,411,205,0,1280,1281,3,421,210,0,1281,1282,3,415,207,0,1282,1283,3,453,226,0,1283,218,1,0,0,0,1284,1285,3,429,214,0,1285,1286,3,433,216,0,1286,1287,3,431,215,0,1287,1288,3,443,221,0,1288,1289,3,419,209,0,1289,220,1,0,0,0,1290,1291,3,429,214,0,1291,1292,3,433,216,0,1292,1293,3,447,223,0,1293,1294,3,413,206,0,1294,222,1,0,0,0,1295,1296,3,429,214,0,1296,1297,3,445,222,0,1297,1298,3,443,221,0,1298,1299,3,405,202,0,1299,1300,3,443,221,0,1300,1301,3,421,210,0,1301,1302,3,433,216,0,1302,1303,3,431,215,0,1303,224,1,0,0,0,1304,1305,3,431,215,0,1305,1306,3,405,202,0,1306,1307,3,431,215,0,1307,226,1,0,0,0,1308,1309,3,431,215,0,1309,1310,3,433,216,0,1310,228,1,0,0,0,1311,1312,3,431,215,0,1312,1313,3,433,216,0,1313,1314,3,443,221,0,1314,230,1,0,0,0,1315,1316,3,431,215,0,1316,1317,3,445,222,0,1317,1318,3,427,213,0,1318,1319,3,427,213,0,1319,232,1,0,0,0,1320,1321,3,431,215,0,1321,1322,3,445,222,0,1322,1323,3,427,213,0,1323,1324,3,427,213,0,1324,1325,3,441,220,0,1325,234,1,0,0,0,1326,1327,3,433,216,0,1327,1328,3,415,207,0,1328,1329,3,415,207,0,1329,1330,3,441,220,0,1330,1331,3,413,206,0,1331,1332,3,443,221,0,1332,236,1,0,0,0,1333,1334,3,433,216,0,1334,1335,3,431,215,0,1335,238,1,0,0,0,1336,1337,3,433,216,0,1337,1338,3,435,217,0,1338,1339,3,443,221,0,1339,1340,3,421,210,0,1340,1341,3,429,214,0,1341,1342,3,421,210,0,1342,1343,3,455,227,0,1343,1344,3,413,206,0,1344,240,1,0,0,0,1345,1346,3,433,216,0,1346,1347,3,439,219,0,1347,242,1,0,0,0,1348,1349,3,433,216,0,1349,1350,3,439,219,0,1350,1351,3,411,205,0,1351,1352,3,413,206,0,1352,1353,3,439,219,0,1353,244,1,0,0,0,1354,1355,3,433,216,0,1355,1356,3,445,222,0,1356,1357,3,443,221,0,1357,1358,3,413,206,0,1358,1359,3,439,219,0,1359,246,1,0,0,0,1360,1361,3,433,216,0,1361,1362,3,445,222,0,1362,1363,3,443,221,0,1363,1364,3,415,207,0,1364,1365,3,421,210,0,1365,1366,3,427,213,0,1366,1367,3,413,206,0,1367,248,1,0,0,0,1368,1369,3,433,216,0,1369,1370,3,447,223,0,1370,1371,3,413,206,0,1371,1372,3,439,219,0,1372,250,1,0,0,0,1373,1374,3,435,217,0,1374,1375,3,405,202,0,1375,1376,3,439,219,0,1376,1377,3,443,221,0,1377,1378,3,421,210,0,1378,1379,3,443,221,0,1379,1380,3,421,210,0,1380,1381,3,433,216,0,1381,1382,3,431,215,0,1382,252,1,0,0,0,1383,1384,3,435,217,0,1384,1385,3,421,210,0,1385,1386,3,435,217,0,1386,1387,3,413,206,0,1387,1388,3,427,213,0,1388,1389,3,421,210,0,1389,1390,3,431,215,0,1390,1391,3,413,206,0,1391,254,1,0,0,0,1392,1393,3,435,217,0,1393,1394,3,427,213,0,1394,1395,3,405,202,0,1395,1396,3,431,215,0,1396,256,1,0,0,0,1397,1398,3,435,217,0,1398,1399,3,433,216,0,1399,1400,3,435,217,0,1400,1401,3,445,222,0,1401,1402,3,427,213,0,1402,1403,3,405,202,0,1403,1404,3,443,221,0,1404,1405,3,413,206,0,1405,258,1,0,0,0,1406,1407,3,435,217,0,1407,1408,3,439,219,0,1408,1409,3,413,206,0,1409,1410,3,409,204,0,1410,1411,3,413,206,0,1411,1412,3,411,205,0,1412,1413,3,421,210,0,1413,1414,3,431,215,0,1414,1415,3,417,208,0,1415,260,1,0,0,0,1416,1417,3,435,217,0,1417,1418,3,439,219,0,1418,1419,3,413,206,0,1419,1420,3,449,224,0,1420,1421,3,419,209,0,1421,1422,3,413,206,0,1422,1423,3,439,219,0,1423,1424,3,413,206,0,1424,262,1,0,0,0,1425,1426,3,435,217,0,1426,1427,3,439,219,0,1427,1428,3,421,210,0,1428,1429,3,429,214,0,1429,1430,3,405,202,0,1430,1431,3,439,219,0,1431,1432,3,453,226,0,1432,264,1,0,0,0,1433,1434,3,435,217,0,1434,1435,3,439,219,0,1435,1436,3,433,216,0,1436,1437,3,423,211,0,1437,1438,3,413,206,0,1438,1439,3,409,204,0,1439,1440,3,443,221,0,1440,1441,3,421,210,0,1441,1442,3,433,216,0,1442,1443,3,431,215,0,1443,266,1,0,0,0,1444,1445,3,437,218,0,1445,1446,3,445,222,0,1446,1447,3,405,202,0,1447,1448,3,439,219,0,1448,1449,3,443,221,0,1449,1450,3,413,206,0,1450,1451,3,439,219,0,1451,268,1,0,0,0,1452,1453,3,437,218,0,1453,1454,3,445,222,0,1454,1455,3,413,206,0,1455,1456,3,439,219,0,1456,1457,3,453,226,0,1457,270,1,0,0,0,1458,1459,3,439,219,0,1459,1460,3,405,202,0,1460,1461,3,431,215,0,1461,1462,3,417,208,0,1462,1463,3,413,206,0,1463,272,1,0,0,0,1464,1465,3,439,219,0,1465,1466,3,413,206,0,1466,1467,3,427,213,0,1467,1468,3,433,216,0,1468,1469,3,405,202,0,1469,1470,3,411,205,0,1470,274,1,0,0,0,1471,1472,3,439,219,0,1472,1473,3,413,206,0,1473,1474,3,429,214,0,1474,1475,3,433,216,0,1475,1476,3,447,223,0,1476,1477,3,413,206,0,1477,276,1,0,0,0,1478,1479,3,439,219,0,1479,1480,3,413,206,0,1480,1481,3,431,215,0,1481,1482,3,405,202,0,1482,1483,3,429,214,0,1483,1484,3,413,206,0,1484,278,1,0,0,0,1485,1486,3,439,219,0,1486,1487,3,413,206,0,1487,1488,3,435,217,0,1488,1489,3,427,213,0,1489,1490,3,405,202,0,1490,1491,3,409,204,0,1491,1492,3,413,206,0,1492,280,1,0,0,0,1493,1494,3,439,219,0,1494,1495,3,413,206,0,1495,1496,3,435,217,0,1496,1497,3,427,213,0,1497,1498,3,421,210,0,1498,1499,3,409,204,0,1499,1500,3,405,202,0,1500,282,1,0,0,0,1501,1502,3,439,219,0,1502,1503,3,413,206,0,1503,1504,3,435,217,0,1504,1505,3,427,213,0,1505,1506,3,421,210,0,1506,1507,3,409,204,0,1507,1508,3,405,202,0,1508,1509,3,443,221,0,1509,1510,3,413,206,0,1510,1511,3,411,205,0,1511,284,1,0,0,0,1512,1513,3,439,219,0,1513,1514,3,421,210,0,1514,1515,3,417,208,0,1515,1516,3,419,209,0,1516,1517,3,443,221,0,1517,286,1,0,0,0,1518,1519,3,439,219,0,1519,1520,3,433,216,0,1520,1521,3,427,213,0,1521,1522,3,427,213,0,1522,1523,3,445,222,0,1523,1524,3,435,217,0,1524,288,1,0,0,0,1525,1526,3,439,219,0,1526,1527,3,433,216,0,1527,1528,3,449,224,0,1528,290,1,0,0,0,1529,1530,3,439,219,0,1530,1531,3,433,216,0,1531,1532,3,449,224,0,1532,1533,3,441,220,0,1533,292,1,0,0,0,1534,1535,3,441,220,0,1535,1536,3,405,202,0,1536,1537,3,429,214,0,1537,1538,3,435,217,0,1538,1539,3,427,213,0,1539,1540,3,413,206,0,1540,294,1,0,0,0,1541,1542,3,441,220,0,1542,1543,3,413,206,0,1543,1544,3,409,204,0,1544,1545,3,433,216,0,1545,1546,3,431,215,0,1546,1547,3,411,205,0,1547,296,1,0,0,0,1548,1549,3,441,220,0,1549,1550,3,413,206,0,1550,1551,3,427,213,0,1551,1552,3,413,206,0,1552,1553,3,409,204,0,1553,1554,3,443,221,0,1554,298,1,0,0,0,1555,1556,3,441,220,0,1556,1557,3,413,206,0,1557,1558,3,429,214,0,1558,1559,3,421,210,0,1559,300,1,0,0,0,1560,1561,3,441,220,0,1561,1562,3,413,206,0,1562,1563,3,431,215,0,1563,1564,3,411,205,0,1564,1565,3,441,220,0,1565,302,1,0,0,0,1566,1567,3,441,220,0,1567,1568,3,413,206,0,1568,1569,3,443,221,0,1569,304,1,0,0,0,1570,1571,3,441,220,0,1571,1572,3,413,206,0,1572,1573,3,443,221,0,1573,1574,3,443,221,0,1574,1575,3,421,210,0,1575,1576,3,431,215,0,1576,1577,3,417,208,0,1577,1578,3,441,220,0,1578,306,1,0,0,0,1579,1580,3,441,220,0,1580,1581,3,419,209,0,1581,1582,3,433,216,0,1582,1583,3,449,224,0,1583,308,1,0,0,0,1584,1585,3,441,220,0,1585,1586,3,433,216,0,1586,1587,3,445,222,0,1587,1588,3,439,219,0,1588,1589,3,409,204,0,1589,1590,3,413,206,0,1590,310,1,0,0,0,1591,1592,3,441,220,0,1592,1593,3,443,221,0,1593,1594,3,405,202,0,1594,1595,3,439,219,0,1595,1596,3,443,221,0,1596,312,1,0,0,0,1597,1598,3,441,220,0,1598,1599,3,443,221,0,1599,1600,3,433,216,0,1600,1601,3,435,217,0,1601,314,1,0,0,0,1602,1603,3,441,220,0,1603,1604,3,445,222,0,1604,1605,3,407,203,0,1605,1606,3,441,220,0,1606,1607,3,443,221,0,1607,1608,3,439,219,0,1608,1609,3,421,210,0,1609,1610,3,431,215,0,1610,1611,3,417,208,0,1611,316,1,0,0,0,1612,1613,3,441,220,0,1613,1614,3,453,226,0,1614,1615,3,431,215,0,1615,1616,3,409,204,0,1616,318,1,0,0,0,1617,1618,3,441,220,0,1618,1619,3,453,226,0,1619,1620,3,431,215,0,1620,1621,3,443,221,0,1621,1622,3,405,202,0,1622,1623,3,451,225,0,1623,320,1,0,0,0,1624,1625,3,441,220,0,1625,1626,3,453,226,0,1626,1627,3,441,220,0,1627,1628,3,443,221,0,1628,1629,3,413,206,0,1629,1630,3,429,214,0,1630,322,1,0,0,0,1631,1632,3,443,221,0,1632,1633,3,405,202,0,1633,1634,3,407,203,0,1634,1635,3,427,213,0,1635,1636,3,413,206,0,1636,324,1,0,0,0,1637,1638,3,443,221,0,1638,1639,3,405,202,0,1639,1640,3,407,203,0,1640,1641,3,427,213,0,1641,1642,3,413,206,0,1642,1643,3,441,220,0,1643,326,1,0,0,0,1644,1645,3,443,221,0,1645,1646,3,413,206,0,1646,1647,3,429,214,0,1647,1648,3,435,217,0,1648,1649,3,433,216,0,1649,1650,3,439,219,0,1650,1651,3,405,202,0,1651,1652,3,439,219,0,1652,1653,3,453,226,0,1653,328,1,0,0,0,1654,1655,3,443,221,0,1655,1656,3,413,206,0,1656,1657,3,441,220,0,1657,1658,3,443,221,0,1658,330,1,0,0,0,1659,1660,3,443,221,0,1660,1661,3,419,209,0,1661,1662,3,413,206,0,1662,1663,3,431,215,0,1663,332,1,0,0,0,1664,1665,3,443,221,0,1665,1666,3,421,210,0,1666,1667,3,413,206,0,1667,1668,3,441,220,0,1668,334,1,0,0,0,1669,1670,3,443,221,0,1670,1671,3,421,210,0,1671,1672,3,429,214,0,1672,1673,3,413,206,0,1673,1674,3,433,216,0,1674,1675,3,445,222,0,1675,1676,3,443,221,0,1676,336,1,0,0,0,1677,1678,3,443,221,0,1678,1679,3,421,210,0,1679,1680,3,429,214,0,1680,1681,3,413,206,0,1681,1682,3,441,220,0,1682,1683,3,443,221,0,1683,1684,3,405,202,0,1684,1685,3,429,214,0,1685,1686,3,435,217,0,1686,338,1,0,0,0,1687,1688,3,443,221,0,1688,1689,3,433,216,0,1689,340,1,0,0,0,1690,1691,3,443,221,0,1691,1692,3,433,216,0,1692,1693,3,435,217,0,1693,342,1,0,0,0,1694,1695,3,443,221,0,1695,1696,3,433,216,0,1696,1697,3,443,221,0,1697,1698,3,405,202,0,1698,1699,3,427,213,0,1699,1700,3,441,220,0,1700,344,1,0,0,0,1701,1702,3,443,221,0,1702,1703,3,439,219,0,1703,1704,3,405,202,0,1704,1705,3,421,210,0,1705,1706,3,427,213,0,1706,1707,3,421,210,0,1707,1708,3,431,215,0,1708,1709,3,417,208,0,1709,346,1,0,0,0,1710,1711,3,443,221,0,1711,1712,3,439,219,0,1712,1713,3,421,210,0,1713,1714,3,429,214,0,1714,348,1,0,0,0,1715,1716,3,443,221,0,1716,1717,3,439,219,0,1717,1718,3,413,206,0,1718,1719,3,413,206,0,1719,350,1,0,0,0,1720,1721,3,443,221,0,1721,1722,3,439,219,0,1722,1723,3,445,222,0,1723,1724,3,431,215,0,1724,1725,3,409,204,0,1725,1726,3,405,202,0,1726,1727,3,443,221,0,1727,1728,3,413,206,0,1728,352,1,0,0,0,1729,1730,3,443,221,0,1730,1731,3,443,221,0,1731,1732,3,427,213,0,1732,354,1,0,0,0,1733,1734,3,443,221,0,1734,1735,3,453,226,0,1735,1736,3,435,217,0,1736,1737,3,413,206,0,1737,356,1,0,0,0,1738,1739,3,445,222,0,1739,1740,3,431,215,0,1740,1741,3,407,203,0,1741,1742,3,433,216,0,1742,1743,3,445,222,0,1743,1744,3,431,215,0,1744,1745,3,411,205,0,1745,1746,3,413,206,0,1746,1747,3,411,205,0,1747,358,1,0,0,0,1748,1749,3,445,222,0,1749,1750,3,431,215,0,1750,1751,3,421,210,0,1751,1752,3,433,216,0,1752,1753,3,431,215,0,1753,360,1,0,0,0,1754,1755,3,445,222,0,1755,1756,3,435,217,0,1756,1757,3,411,205,0,1757,1758,3,405,202,0,1758,1759,3,443,221,0,1759,1760,3,413,206,0,1760,362,1,0,0,0,1761,1762,3,445,222,0,1762,1763,3,441,220,0,1763,1764,3,413,206,0,1764,364,1,0,0,0,1765,1766,3,445,222,0,1766,1767,3,441,220,0,1767,1768,3,421,210,0,1768,1769,3,431,215,0,1769,1770,3,417,208,0,1770,366,1,0,0,0,1771,1772,3,445,222,0,1772,1773,3,445,222,0,1773,1774,3,421,210,0,1774,1775,3,411,205,0,1775,368,1,0,0,0,1776,1777,3,447,223,0,1777,1778,3,405,202,0,1778,1779,3,427,213,0,1779,1780,3,445,222,0,1780,1781,3,413,206,0,1781,1782,3,441,220,0,1782,370,1,0,0,0,1783,1784,3,447,223,0,1784,1785,3,421,210,0,1785,1786,3,413,206,0,1786,1787,3,449,224,0,1787,372,1,0,0,0,1788,1789,3,447,223,0,1789,1790,3,433,216,0,1790,1791,3,427,213,0,1791,1792,3,445,222,0,1792,1793,3,429,214,0,1793,1794,3,413,206,0,1794,374,1,0,0,0,1795,1796,3,449,224,0,1796,1797,3,405,202,0,1797,1798,3,443,221,0,1798,1799,3,409,204,0,1799,1800,3,419,209,0,1800,376,1,0,0,0,1801,1802,3,449,224,0,1802,1803,3,413,206,0,1803,1804,3,413,206,0,1804,1805,3,425,212,0,1805,378,1,0,0,0,1806,1807,3,449,224,0,1807,1808,3,419,209,0,1808,1809,3,413,206,0,1809,1810,3,431,215,0,1810,380,1,0,0,0,1811,1812,3,449,224,0,1812,1813,3,419,209,0,1813,1814,3,413,206,0,1814,1815,3,439,219,0,1815,1816,3,413,206,0,1816,382,1,0,0,0,1817,1818,3,449,224,0,1818,1819,3,421,210,0,1819,1820,3,431,215,0,1820,1821,3,411,205,0,1821,1822,3,433,216,0,1822,1823,3,449,224,0,1823,384,1,0,0,0,1824,1825,3,449,224,0,1825,1826,3,421,210,0,1826,1827,3,443,221,0,1827,1828,3,419,209,0,1828,386,1,0,0,0,1829,1830,3,453,226,0,1830,1831,3,413,206,0,1831,1832,3,405,202,0,1832,1833,3,439,219,0,1833,1840,1,0,0,0,1834,1835,3,453,226,0,1835,1836,3,453,226,0,1836,1837,3,453,226,0,1837,1838,3,453,226,0,1838,1840,1,0,0,0,1839,1829,1,0,0,0,1839,1834,1,0,0,0,1840,388,1,0,0,0,1841,1842,5,102,0,0,1842,1843,5,97,0,0,1843,1844,5,108,0,0,1844,1845,5,115,0,0,1845,1846,5,101,0,0,1846,390,1,0,0,0,1847,1848,5,116,0,0,1848,1849,5,114,0,0,1849,1850,5,117,0,0,1850,1851,5,101,0,0,1851,392,1,0,0,0,1852,1855,3,457,228,0,1853,1855,3,523,261,0,1854,1852,1,0,0,0,1854,1853,1,0,0,0,1855,1861,1,0,0,0,1856,1860,3,457,228,0,1857,1860,3,523,261,0,1858,1860,3,461,230,0,1859,1856,1,0,0,0,1859,1857,1,0,0,0,1859,1858,1,0,0,0,1860,1863,1,0,0,0,1861,1859,1,0,0,0,1861,1862,1,0,0,0,1862,1895,1,0,0,0,1863,1861,1,0,0,0,1864,1874,3,469,234,0,1865,1873,8,0,0,0,1866,1867,3,471,235,0,1867,1868,9,0,0,0,1868,1873,1,0,0,0,1869,1870,3,469,234,0,1870,1871,3,469,234,0,1871,1873,1,0,0,0,1872,1865,1,0,0,0,1872,1866,1,0,0,0,1872,1869,1,0,0,0,1873,1876,1,0,0,0,1874,1872,1,0,0,0,1874,1875,1,0,0,0,1875,1877,1,0,0,0,1876,1874,1,0,0,0,1877,1878,3,469,234,0,1878,1895,1,0,0,0,1879,1889,3,509,254,0,1880,1888,8,1,0,0,1881,1882,3,471,235,0,1882,1883,9,0,0,0,1883,1888,1,0,0,0,1884,1885,3,509,254,0,1885,1886,3,509,254,0,1886,1888,1,0,0,0,1887,1880,1,0,0,0,1887,1881,1,0,0,0,1887,1884,1,0,0,0,1888,1891,1,0,0,0,1889,1887,1,0,0,0,1889,1890,1,0,0,0,1890,1892,1,0,0,0,1891,1889,1,0,0,0,1892,1893,3,509,254,0,1893,1895,1,0,0,0,1894,1854,1,0,0,0,1894,1864,1,0,0,0,1894,1879,1,0,0,0,1895,394,1,0,0,0,1896,1897,3,401,200,0,1897,1901,3,481,240,0,1898,1900,3,463,231,0,1899,1898,1,0,0,0,1900,1903,1,0,0,0,1901,1899,1,0,0,0,1901,1902,1,0,0,0,1902,1906,1,0,0,0,1903,1901,1,0,0,0,1904,1907,3,435,217,0,1905,1907,3,413,206,0,1906,1904,1,0,0,0,1906,1905,1,0,0,0,1907,1910,1,0,0,0,1908,1911,3,505,252,0,1909,1911,3,479,239,0,1910,1908,1,0,0,0,1910,1909,1,0,0,0,1910,1911,1,0,0,0,1911,1913,1,0,0,0,1912,1914,3,461,230,0,1913,1912,1,0,0,0,1914,1915,1,0,0,0,1915,1913,1,0,0,0,1915,1916,1,0,0,0,1916,1973,1,0,0,0,1917,1920,3,401,200,0,1918,1921,3,435,217,0,1919,1921,3,413,206,0,1920,1918,1,0,0,0,1920,1919,1,0,0,0,1921,1924,1,0,0,0,1922,1925,3,505,252,0,1923,1925,3,479,239,0,1924,1922,1,0,0,0,1924,1923,1,0,0,0,1924,1925,1,0,0,0,1925,1927,1,0,0,0,1926,1928,3,461,230,0,1927,1926,1,0,0,0,1928,1929,1,0,0,0,1929,1927,1,0,0,0,1929,1930,1,0,0,0,1930,1973,1,0,0,0,1931,1932,3,399,199,0,1932,1936,3,481,240,0,1933,1935,3,461,230,0,1934,1933,1,0,0,0,1935,1938,1,0,0,0,1936,1934,1,0,0,0,1936,1937,1,0,0,0,1937,1939,1,0,0,0,1938,1936,1,0,0,0,1939,1942,3,413,206,0,1940,1943,3,505,252,0,1941,1943,3,479,239,0,1942,1940,1,0,0,0,1942,1941,1,0,0,0,1942,1943,1,0,0,0,1943,1945,1,0,0,0,1944,1946,3,461,230,0,1945,1944,1,0,0,0,1946,1947,1,0,0,0,1947,1945,1,0,0,0,1947,1948,1,0,0,0,1948,1973,1,0,0,0,1949,1950,3,481,240,0,1950,1951,3,399,199,0,1951,1954,3,413,206,0,1952,1955,3,505,252,0,1953,1955,3,479,239,0,1954,1952,1,0,0,0,1954,1953,1,0,0,0,1954,1955,1,0,0,0,1955,1957,1,0,0,0,1956,1958,3,461,230,0,1957,1956,1,0,0,0,1958,1959,1,0,0,0,1959,1957,1,0,0,0,1959,1960,1,0,0,0,1960,1973,1,0,0,0,1961,1962,3,399,199,0,1962,1965,3,413,206,0,1963,1966,3,505,252,0,1964,1966,3,479,239,0,1965,1963,1,0,0,0,1965,1964,1,0,0,0,1965,1966,1,0,0,0,1966,1968,1,0,0,0,1967,1969,3,461,230,0,1968,1967,1,0,0,0,1969,1970,1,0,0,0,1970,1968,1,0,0,0,1970,1971,1,0,0,0,1971,1973,1,0,0,0,1972,1896,1,0,0,0,1972,1917,1,0,0,0,1972,1931,1,0,0,0,1972,1949,1,0,0,0,1972,1961,1,0,0,0,1973,396,1,0,0,0,1974,1976,5,48,0,0,1975,1977,3,459,229,0,1976,1975,1,0,0,0,1977,1978,1,0,0,0,1978,1976,1,0,0,0,1978,1979,1,0,0,0,1979,398,1,0,0,0,1980,1982,3,461,230,0,1981,1980,1,0,0,0,1982,1983,1,0,0,0,1983,1981,1,0,0,0,1983,1984,1,0,0,0,1984,400,1,0,0,0,1985,1986,5,48,0,0,1986,1988,3,451,225,0,1987,1989,3,463,231,0,1988,1987,1,0,0,0,1989,1990,1,0,0,0,1990,1988,1,0,0,0,1990,1991,1,0,0,0,1991,402,1,0,0,0,1992,2002,3,511,255,0,1993,2001,8,2,0,0,1994,1995,3,471,235,0,1995,1996,9,0,0,0,1996,2001,1,0,0,0,1997,1998,3,511,255,0,1998,1999,3,511,255,0,1999,2001,1,0,0,0,2e3,1993,1,0,0,0,2e3,1994,1,0,0,0,2e3,1997,1,0,0,0,2001,2004,1,0,0,0,2002,2e3,1,0,0,0,2002,2003,1,0,0,0,2003,2005,1,0,0,0,2004,2002,1,0,0,0,2005,2006,3,511,255,0,2006,404,1,0,0,0,2007,2008,7,3,0,0,2008,406,1,0,0,0,2009,2010,7,4,0,0,2010,408,1,0,0,0,2011,2012,7,5,0,0,2012,410,1,0,0,0,2013,2014,7,6,0,0,2014,412,1,0,0,0,2015,2016,7,7,0,0,2016,414,1,0,0,0,2017,2018,7,8,0,0,2018,416,1,0,0,0,2019,2020,7,9,0,0,2020,418,1,0,0,0,2021,2022,7,10,0,0,2022,420,1,0,0,0,2023,2024,7,11,0,0,2024,422,1,0,0,0,2025,2026,7,12,0,0,2026,424,1,0,0,0,2027,2028,7,13,0,0,2028,426,1,0,0,0,2029,2030,7,14,0,0,2030,428,1,0,0,0,2031,2032,7,15,0,0,2032,430,1,0,0,0,2033,2034,7,16,0,0,2034,432,1,0,0,0,2035,2036,7,17,0,0,2036,434,1,0,0,0,2037,2038,7,18,0,0,2038,436,1,0,0,0,2039,2040,7,19,0,0,2040,438,1,0,0,0,2041,2042,7,20,0,0,2042,440,1,0,0,0,2043,2044,7,21,0,0,2044,442,1,0,0,0,2045,2046,7,22,0,0,2046,444,1,0,0,0,2047,2048,7,23,0,0,2048,446,1,0,0,0,2049,2050,7,24,0,0,2050,448,1,0,0,0,2051,2052,7,25,0,0,2052,450,1,0,0,0,2053,2054,7,26,0,0,2054,452,1,0,0,0,2055,2056,7,27,0,0,2056,454,1,0,0,0,2057,2058,7,28,0,0,2058,456,1,0,0,0,2059,2060,7,29,0,0,2060,458,1,0,0,0,2061,2062,7,30,0,0,2062,460,1,0,0,0,2063,2064,7,31,0,0,2064,462,1,0,0,0,2065,2066,7,32,0,0,2066,464,1,0,0,0,2067,2068,5,45,0,0,2068,2069,5,62,0,0,2069,466,1,0,0,0,2070,2071,5,42,0,0,2071,468,1,0,0,0,2072,2073,5,96,0,0,2073,470,1,0,0,0,2074,2075,5,92,0,0,2075,472,1,0,0,0,2076,2077,5,58,0,0,2077,474,1,0,0,0,2078,2079,5,44,0,0,2079,476,1,0,0,0,2080,2081,5,124,0,0,2081,2082,5,124,0,0,2082,478,1,0,0,0,2083,2084,5,45,0,0,2084,480,1,0,0,0,2085,2086,5,46,0,0,2086,482,1,0,0,0,2087,2088,5,61,0,0,2088,2089,5,61,0,0,2089,484,1,0,0,0,2090,2091,5,61,0,0,2091,486,1,0,0,0,2092,2093,5,62,0,0,2093,2094,5,61,0,0,2094,488,1,0,0,0,2095,2096,5,62,0,0,2096,490,1,0,0,0,2097,2098,5,123,0,0,2098,492,1,0,0,0,2099,2100,5,91,0,0,2100,494,1,0,0,0,2101,2102,5,60,0,0,2102,2103,5,61,0,0,2103,496,1,0,0,0,2104,2105,5,40,0,0,2105,498,1,0,0,0,2106,2107,5,60,0,0,2107,500,1,0,0,0,2108,2109,5,33,0,0,2109,2113,5,61,0,0,2110,2111,5,60,0,0,2111,2113,5,62,0,0,2112,2108,1,0,0,0,2112,2110,1,0,0,0,2113,502,1,0,0,0,2114,2115,5,37,0,0,2115,504,1,0,0,0,2116,2117,5,43,0,0,2117,506,1,0,0,0,2118,2119,5,63,0,0,2119,508,1,0,0,0,2120,2121,5,34,0,0,2121,510,1,0,0,0,2122,2123,5,39,0,0,2123,512,1,0,0,0,2124,2125,5,125,0,0,2125,514,1,0,0,0,2126,2127,5,93,0,0,2127,516,1,0,0,0,2128,2129,5,41,0,0,2129,518,1,0,0,0,2130,2131,5,59,0,0,2131,520,1,0,0,0,2132,2133,5,47,0,0,2133,522,1,0,0,0,2134,2135,5,95,0,0,2135,524,1,0,0,0,2136,2137,5,47,0,0,2137,2138,5,42,0,0,2138,2142,1,0,0,0,2139,2141,9,0,0,0,2140,2139,1,0,0,0,2141,2144,1,0,0,0,2142,2143,1,0,0,0,2142,2140,1,0,0,0,2143,2145,1,0,0,0,2144,2142,1,0,0,0,2145,2146,5,42,0,0,2146,2147,5,47,0,0,2147,2148,1,0,0,0,2148,2149,6,262,0,0,2149,526,1,0,0,0,2150,2151,5,45,0,0,2151,2152,5,45,0,0,2152,2156,1,0,0,0,2153,2155,8,33,0,0,2154,2153,1,0,0,0,2155,2158,1,0,0,0,2156,2154,1,0,0,0,2156,2157,1,0,0,0,2157,2160,1,0,0,0,2158,2156,1,0,0,0,2159,2161,7,34,0,0,2160,2159,1,0,0,0,2161,2162,1,0,0,0,2162,2163,6,263,0,0,2163,528,1,0,0,0,2164,2165,7,35,0,0,2165,2166,1,0,0,0,2166,2167,6,264,1,0,2167,530,1,0,0,0,36,0,593,1100,1839,1854,1859,1861,1872,1874,1887,1889,1894,1901,1906,1910,1915,1920,1924,1929,1936,1942,1947,1954,1959,1965,1970,1972,1978,1983,1990,2e3,2002,2112,2142,2156,2160,2,6,0,0,0,1,0],Ji.vocabulary=new Ra(Ji.literalNames,Ji.symbolicNames,[]),Ji.decisionsToDFA=Ji._ATN.decisionToState.map(((t,e)=>new ni(t,e))),Ji),CG=(Zi=class t extends Cc{get grammarFileName(){return"ClickHouseParser.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}createFailedPredicateException(t,e){return new Sc(this,t,e)}constructor(e){super(e),this.interpreter=new Ai(this,t._ATN,t.decisionsToDFA,new Si)}root(){let e,s=new _G(this.context,this.state);this.enterRule(s,0,t.RULE_root);try{this.enterOuterAlt(s,1),this.state=257,this.errorHandler.sync(this),e=this.tokenStream.LA(1),(!(-32&e)&&1<'","'*'","'`'","''","':'","','","'||'","'-'","'.'","'=='","'='","'>='","'>'","'{'","'['","'<='","'('","'<'",null,"'%'","'+'","'?'","'\"'","'''","'}'","']'","')'","';'","'/'","'_'"],Zi.symbolicNames=[null,"ADD","AFTER","ALIAS","ALL","ALTER","AND","ANTI","ANY","ARRAY","AS","ASCENDING","ASOF","AST","ASYNC","ATTACH","BETWEEN","BOTH","BY","CASE","CAST","CHECK","CLEAR","CLUSTER","CODEC","COLLATE","COLUMN","COMMENT","CONSTRAINT","CREATE","CROSS","CUBE","CURRENT","DATABASE","DATABASES","DATE","DAY","DEDUPLICATE","DEFAULT","DELAY","DELETE","DESC","DESCENDING","DESCRIBE","DETACH","DICTIONARIES","DICTIONARY","DISK","DISTINCT","DISTRIBUTED","DROP","ELSE","END","ENGINE","ESTIMATE","EVENTS","EXISTS","EXPLAIN","EXPRESSION","EXTRACT","FETCHES","FINAL","FIRST","FLUSH","FOLLOWING","FOR","FORMAT","FREEZE","FROM","FULL","FUNCTION","GLOBAL","GRANULARITY","GROUP","HAVING","HIERARCHICAL","HOUR","ID","IF","ILIKE","IN","INDEX","INF","INJECTIVE","INNER","INSERT","INTERVAL","INTO","IS","IS_OBJECT_ID","JOIN","KEY","KILL","LAST","LAYOUT","LEADING","LEFT","LIFETIME","LIKE","LIMIT","LIVE","LOCAL","LOGS","MATERIALIZE","MATERIALIZED","MAX","MERGES","MIN","MINUTE","MODIFY","MONTH","MOVE","MUTATION","NAN_SQL","NO","NOT","NULL_SQL","NULLS","OFFSET","ON","OPTIMIZE","OR","ORDER","OUTER","OUTFILE","OVER","PARTITION","PIPELINE","PLAN","POPULATE","PRECEDING","PREWHERE","PRIMARY","PROJECTION","QUARTER","QUERY","RANGE","RELOAD","REMOVE","RENAME","REPLACE","REPLICA","REPLICATED","RIGHT","ROLLUP","ROW","ROWS","SAMPLE","SECOND","SELECT","SEMI","SENDS","SET","SETTINGS","SHOW","SOURCE","START","STOP","SUBSTRING","SYNC","SYNTAX","SYSTEM","TABLE","TABLES","TEMPORARY","TEST","THEN","TIES","TIMEOUT","TIMESTAMP","TO","TOP","TOTALS","TRAILING","TRIM","TREE","TRUNCATE","TTL","TYPE","UNBOUNDED","UNION","UPDATE","USE","USING","UUID","VALUES","VIEW","VOLUME","WATCH","WEEK","WHEN","WHERE","WINDOW","WITH","YEAR","JSON_FALSE","JSON_TRUE","IDENTIFIER","FLOATING_LITERAL","OCTAL_LITERAL","DECIMAL_LITERAL","HEXADECIMAL_LITERAL","STRING_LITERAL","ARROW","ASTERISK","BACKQUOTE","BACKSLASH","COLON","COMMA","CONCAT","DASH","DOT","EQ_DOUBLE","EQ_SINGLE","GE","GT","LBRACE","LBRACKET","LE","LPAREN","LT","NOT_EQ","PERCENT","PLUS","QUESTIONMARK","QUOTE_DOUBLE","QUOTE_SINGLE","RBRACE","RBRACKET","RPAREN","SEMICOLON","SLASH","UNDERSCORE","MULTI_LINE_COMMENT","SINGLE_LINE_COMMENT","WHITESPACE"],Zi.ruleNames=["root","statements","statement","notInsertStatement","commonTableExpressionStatement","namedQuery","columnAliases","alterStatement","alterTableClause","assignmentExpressionList","assignmentExpression","tableColumnPropertyType","partitionClause","attachStatement","checkStatement","deleteStatement","createTableStatement","createDatabaseStatement","createDictionaryStatement","createLiveViewStatement","createMaterializedViewStatement","createViewStatement","createStatement","dictionarySchemaClause","dictionaryAttributeDefinition","dictionaryEngineClause","dictionaryPrimaryKeyClause","dictionaryArgumentExpression","sourceClause","lifetimeClause","layoutClause","rangeClause","dictionarySettingsClause","clusterClause","uuidClause","destinationClause","subqueryClause","tableSchemaClause","engineClause","partitionByClause","primaryKeyClause","sampleByClause","ttlClause","engineExpression","tableElementExpression","tableColumnDefinition","tableColumnPropertyExpression","tableIndexDefinition","tableProjectionDefinition","codecExpression","codecArgExpression","ttlExpression","describeStatement","dropStatement","existsStatement","explainStatement","insertStatement","columnsClause","dataClause","valuesStatement","killStatement","optimizeStatement","renameStatement","projectionSelectStatement","selectUnionStatement","selectStatementWithParentheses","selectStatement","withClause","topClause","fromClause","arrayJoinClause","windowClause","prewhereClause","whereClause","groupByClause","havingClause","orderByClause","projectionOrderByClause","limitByClause","limitClause","settingsClause","joinExpression","joinOperator","joinOperatorCross","joinConstraintClause","sampleClause","limitExpression","orderExpressionList","orderExpression","ratioExpression","settingExpressionList","settingExpression","windowExpression","windowPartitionByClause","windowOrderByClause","windowFrameClause","windowFrameExtend","windowFrameBound","setStatement","showStatement","systemStatement","truncateStatement","useStatement","watchStatement","columnTypeExpression","columnExpressionList","columnsExpression","columnExpression","columnArgumentList","columnArgumentExpression","columnLambdaExpression","columnIdentifier","tableExpression","tableFunctionExpression","tableIdentifier","tableArgList","tableArgExpression","databaseIdentifier","floatingLiteral","numberLiteral","literal","interval","keyword","keywordForAlias","alias","identifier","identifierOrNull","enumValue"],Zi._serializedATN=[4,1,235,2137,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,1,0,3,0,258,8,0,1,0,1,0,1,1,1,1,3,1,264,8,1,1,1,1,1,1,1,1,1,3,1,270,8,1,1,2,1,2,1,2,1,2,3,2,276,8,2,1,2,1,2,3,2,280,8,2,1,2,3,2,283,8,2,1,2,3,2,286,8,2,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,3,3,308,8,3,1,3,3,3,311,8,3,1,4,1,4,1,4,1,4,5,4,317,8,4,10,4,12,4,320,9,4,1,5,1,5,3,5,324,8,5,1,5,1,5,1,5,1,5,1,5,1,6,1,6,1,6,1,6,5,6,335,8,6,10,6,12,6,338,9,6,1,6,1,6,1,7,1,7,1,7,1,7,3,7,346,8,7,1,7,1,7,1,7,5,7,351,8,7,10,7,12,7,354,9,7,1,8,1,8,1,8,1,8,1,8,3,8,361,8,8,1,8,1,8,1,8,3,8,366,8,8,1,8,1,8,1,8,1,8,1,8,3,8,373,8,8,1,8,1,8,1,8,3,8,378,8,8,1,8,1,8,1,8,1,8,1,8,3,8,385,8,8,1,8,1,8,1,8,3,8,390,8,8,1,8,1,8,1,8,1,8,3,8,396,8,8,1,8,1,8,1,8,1,8,3,8,402,8,8,1,8,1,8,1,8,3,8,407,8,8,1,8,1,8,1,8,1,8,3,8,413,8,8,1,8,1,8,1,8,3,8,418,8,8,1,8,1,8,1,8,1,8,3,8,424,8,8,1,8,1,8,1,8,3,8,429,8,8,1,8,1,8,1,8,1,8,3,8,435,8,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,449,8,8,1,8,1,8,1,8,1,8,1,8,3,8,456,8,8,1,8,1,8,1,8,1,8,1,8,3,8,463,8,8,1,8,1,8,1,8,1,8,1,8,3,8,470,8,8,1,8,1,8,1,8,1,8,3,8,476,8,8,1,8,1,8,1,8,3,8,481,8,8,1,8,1,8,1,8,1,8,3,8,487,8,8,1,8,1,8,1,8,3,8,492,8,8,1,8,1,8,1,8,1,8,3,8,498,8,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,507,8,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,517,8,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,527,8,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,547,8,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,555,8,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,570,8,8,1,9,1,9,1,9,5,9,575,8,9,10,9,12,9,578,9,9,1,10,1,10,1,10,1,10,1,11,1,11,1,12,1,12,1,12,1,12,1,12,3,12,591,8,12,1,13,1,13,1,13,1,13,3,13,597,8,13,1,14,1,14,1,14,1,14,3,14,603,8,14,1,15,1,15,1,15,1,15,3,15,609,8,15,1,15,3,15,612,8,15,1,16,1,16,1,16,1,16,3,16,618,8,16,1,16,3,16,621,8,16,1,16,3,16,624,8,16,1,16,1,16,1,16,1,16,3,16,630,8,16,1,16,1,16,3,16,634,8,16,1,16,3,16,637,8,16,1,16,3,16,640,8,16,1,16,3,16,643,8,16,1,16,3,16,646,8,16,1,17,1,17,1,17,1,17,1,17,3,17,653,8,17,1,17,1,17,3,17,657,8,17,1,17,1,17,1,18,1,18,1,18,1,18,3,18,665,8,18,1,18,3,18,668,8,18,1,18,1,18,1,18,1,18,3,18,674,8,18,1,18,1,18,3,18,678,8,18,1,18,3,18,681,8,18,1,18,1,18,1,18,1,19,1,19,1,19,1,19,1,19,1,19,3,19,692,8,19,1,19,1,19,3,19,696,8,19,1,19,3,19,699,8,19,1,19,1,19,1,19,3,19,704,8,19,3,19,706,8,19,1,19,3,19,709,8,19,1,19,3,19,712,8,19,1,19,1,19,1,20,1,20,1,20,1,20,1,20,1,20,3,20,722,8,20,1,20,1,20,3,20,726,8,20,1,20,3,20,729,8,20,1,20,3,20,732,8,20,1,20,1,20,1,20,3,20,737,8,20,3,20,739,8,20,1,20,1,20,1,21,1,21,1,21,3,21,746,8,21,1,21,1,21,1,21,1,21,3,21,752,8,21,1,21,1,21,3,21,756,8,21,1,21,3,21,759,8,21,1,21,3,21,762,8,21,1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,22,3,22,772,8,22,1,23,1,23,1,23,1,23,5,23,778,8,23,10,23,12,23,781,9,23,1,23,1,23,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,1,24,5,24,806,8,24,10,24,12,24,809,9,24,1,25,3,25,812,8,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,1,25,5,25,834,8,25,10,25,12,25,837,9,25,1,26,1,26,1,26,1,26,1,27,1,27,1,27,1,27,3,27,847,8,27,1,27,3,27,850,8,27,1,28,1,28,1,28,1,28,1,28,5,28,857,8,28,10,28,12,28,860,9,28,1,28,1,28,1,28,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,29,3,29,876,8,29,1,29,1,29,1,30,1,30,1,30,1,30,1,30,5,30,885,8,30,10,30,12,30,888,9,30,1,30,1,30,1,30,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,3,31,905,8,31,1,31,1,31,1,32,1,32,1,32,1,32,1,32,1,33,1,33,1,33,1,33,3,33,918,8,33,1,34,1,34,1,34,1,35,1,35,1,35,1,36,1,36,1,36,1,37,1,37,1,37,1,37,5,37,933,8,37,10,37,12,37,936,9,37,1,37,1,37,1,37,1,37,1,37,1,37,3,37,944,8,37,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,5,38,971,8,38,10,38,12,38,974,9,38,1,39,1,39,1,39,1,39,1,40,1,40,1,40,1,40,1,41,1,41,1,41,1,41,1,42,1,42,1,42,1,42,5,42,992,8,42,10,42,12,42,995,9,42,1,43,1,43,3,43,999,8,43,1,43,1,43,1,43,3,43,1004,8,43,1,43,3,43,1007,8,43,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,1019,8,44,1,45,1,45,1,45,3,45,1024,8,45,1,45,1,45,3,45,1028,8,45,1,45,3,45,1031,8,45,1,45,1,45,3,45,1035,8,45,1,45,1,45,3,45,1039,8,45,1,45,1,45,1,45,3,45,1044,8,45,1,45,3,45,1047,8,45,1,45,1,45,3,45,1051,8,45,3,45,1053,8,45,1,46,1,46,1,46,1,47,1,47,1,47,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,49,1,49,1,49,1,49,1,49,5,49,1073,8,49,10,49,12,49,1076,9,49,1,49,1,49,1,50,1,50,1,50,3,50,1083,8,50,1,50,3,50,1086,8,50,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,3,51,1096,8,51,1,52,1,52,3,52,1100,8,52,1,52,1,52,1,53,1,53,1,53,1,53,3,53,1108,8,53,1,53,1,53,3,53,1112,8,53,1,53,1,53,1,53,3,53,1117,8,53,1,53,1,53,3,53,1121,8,53,1,53,1,53,3,53,1125,8,53,1,53,1,53,3,53,1129,8,53,1,53,1,53,3,53,1133,8,53,3,53,1135,8,53,1,54,1,54,1,54,1,54,1,54,1,54,3,54,1143,8,54,1,54,1,54,3,54,1147,8,54,1,54,3,54,1150,8,54,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,1,55,3,55,1173,8,55,1,56,1,56,1,56,3,56,1178,8,56,1,56,1,56,1,56,3,56,1183,8,56,1,56,3,56,1186,8,56,1,56,1,56,1,57,1,57,1,57,1,57,5,57,1194,8,57,10,57,12,57,1197,9,57,1,57,1,57,1,58,1,58,1,58,1,58,1,58,3,58,1206,8,58,1,58,1,58,3,58,1210,8,58,1,59,1,59,1,59,3,59,1215,8,59,1,59,1,59,1,59,1,59,3,59,1221,8,59,1,59,5,59,1224,8,59,10,59,12,59,1227,9,59,1,60,1,60,1,60,3,60,1232,8,60,1,60,1,60,3,60,1236,8,60,1,61,1,61,1,61,1,61,3,61,1242,8,61,1,61,3,61,1245,8,61,1,61,3,61,1248,8,61,1,61,3,61,1251,8,61,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,5,62,1263,8,62,10,62,12,62,1266,9,62,1,62,3,62,1269,8,62,1,63,1,63,3,63,1273,8,63,1,63,1,63,1,63,3,63,1278,8,63,1,63,3,63,1281,8,63,1,63,1,63,1,64,1,64,1,64,1,64,5,64,1289,8,64,10,64,12,64,1292,9,64,1,65,1,65,1,65,1,65,1,65,3,65,1299,8,65,1,66,3,66,1302,8,66,1,66,1,66,3,66,1306,8,66,1,66,3,66,1309,8,66,1,66,1,66,3,66,1313,8,66,1,66,3,66,1316,8,66,1,66,3,66,1319,8,66,1,66,3,66,1322,8,66,1,66,3,66,1325,8,66,1,66,3,66,1328,8,66,1,66,1,66,3,66,1332,8,66,1,66,1,66,3,66,1336,8,66,1,66,3,66,1339,8,66,1,66,3,66,1342,8,66,1,66,3,66,1345,8,66,1,66,3,66,1348,8,66,1,66,3,66,1351,8,66,1,67,1,67,1,67,1,68,1,68,1,68,1,68,3,68,1360,8,68,1,69,1,69,1,69,1,70,3,70,1366,8,70,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,72,1,72,1,72,1,73,1,73,1,73,1,74,1,74,1,74,1,74,1,74,1,74,1,74,1,74,3,74,1393,8,74,1,75,1,75,1,75,1,76,1,76,1,76,1,76,1,77,1,77,1,77,1,77,1,78,1,78,1,78,1,78,1,78,1,79,1,79,1,79,1,79,3,79,1415,8,79,1,80,1,80,1,80,1,81,1,81,1,81,3,81,1423,8,81,1,81,3,81,1426,8,81,1,81,1,81,1,81,1,81,3,81,1432,8,81,1,81,1,81,1,81,1,81,1,81,1,81,3,81,1440,8,81,1,81,3,81,1443,8,81,1,81,1,81,1,81,1,81,5,81,1449,8,81,10,81,12,81,1452,9,81,1,82,3,82,1455,8,82,1,82,1,82,1,82,3,82,1460,8,82,1,82,3,82,1463,8,82,1,82,3,82,1466,8,82,1,82,1,82,3,82,1470,8,82,1,82,1,82,3,82,1474,8,82,1,82,3,82,1477,8,82,3,82,1479,8,82,1,82,3,82,1482,8,82,1,82,1,82,3,82,1486,8,82,1,82,1,82,3,82,1490,8,82,1,82,3,82,1493,8,82,3,82,1495,8,82,3,82,1497,8,82,1,83,3,83,1500,8,83,1,83,1,83,1,83,3,83,1505,8,83,1,84,1,84,1,84,1,84,1,84,1,84,1,84,1,84,1,84,3,84,1516,8,84,1,85,1,85,1,85,1,85,3,85,1522,8,85,1,86,1,86,1,86,3,86,1527,8,86,1,87,1,87,1,87,5,87,1532,8,87,10,87,12,87,1535,9,87,1,88,1,88,3,88,1539,8,88,1,88,1,88,3,88,1543,8,88,1,88,1,88,3,88,1547,8,88,1,89,1,89,1,89,3,89,1552,8,89,1,90,1,90,1,90,5,90,1557,8,90,10,90,12,90,1560,9,90,1,91,1,91,1,91,1,91,1,92,3,92,1567,8,92,1,92,3,92,1570,8,92,1,92,3,92,1573,8,92,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,94,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,1,96,3,96,1592,8,96,1,97,1,97,1,97,1,97,1,97,1,97,1,97,1,97,1,97,1,97,1,97,1,97,3,97,1606,8,97,1,98,1,98,1,98,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,3,99,1622,8,99,1,99,3,99,1625,8,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,3,99,1634,8,99,1,99,1,99,3,99,1638,8,99,1,99,1,99,1,99,3,99,1643,8,99,1,99,1,99,1,99,3,99,1648,8,99,1,99,3,99,1651,8,99,3,99,1653,8,99,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,3,100,1675,8,100,1,100,3,100,1678,8,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,3,100,1689,8,100,1,101,1,101,3,101,1693,8,101,1,101,3,101,1696,8,101,1,101,1,101,3,101,1700,8,101,1,101,1,101,3,101,1704,8,101,1,102,1,102,1,102,1,103,1,103,1,103,3,103,1712,8,103,1,103,1,103,3,103,1716,8,103,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,5,104,1727,8,104,10,104,12,104,1730,9,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,5,104,1739,8,104,10,104,12,104,1742,9,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,5,104,1751,8,104,10,104,12,104,1754,9,104,1,104,1,104,1,104,1,104,1,104,3,104,1761,8,104,1,104,1,104,3,104,1765,8,104,1,105,1,105,1,105,5,105,1770,8,105,10,105,12,105,1773,9,105,1,106,1,106,1,106,3,106,1778,8,106,1,106,1,106,1,106,1,106,1,106,1,106,3,106,1786,8,106,1,107,1,107,1,107,3,107,1791,8,107,1,107,1,107,1,107,1,107,1,107,4,107,1798,8,107,11,107,12,107,1799,1,107,1,107,3,107,1804,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1835,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1852,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1864,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1874,8,107,1,107,3,107,1877,8,107,1,107,1,107,3,107,1881,8,107,1,107,3,107,1884,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1896,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1913,8,107,1,107,1,107,3,107,1917,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1934,8,107,1,107,3,107,1937,8,107,1,107,1,107,3,107,1941,8,107,1,107,3,107,1944,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1955,8,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,3,107,1979,8,107,1,107,1,107,1,107,1,107,1,107,3,107,1986,8,107,5,107,1988,8,107,10,107,12,107,1991,9,107,1,108,1,108,1,108,5,108,1996,8,108,10,108,12,108,1999,9,108,1,109,1,109,3,109,2003,8,109,1,110,1,110,1,110,1,110,5,110,2009,8,110,10,110,12,110,2012,9,110,1,110,1,110,1,110,1,110,1,110,5,110,2019,8,110,10,110,12,110,2022,9,110,3,110,2024,8,110,1,110,1,110,1,110,1,111,1,111,1,111,3,111,2032,8,111,1,111,1,111,1,111,3,111,2037,8,111,1,112,1,112,1,112,1,112,1,112,1,112,1,112,3,112,2046,8,112,1,112,1,112,1,112,1,112,3,112,2052,8,112,5,112,2054,8,112,10,112,12,112,2057,9,112,1,113,1,113,1,113,3,113,2062,8,113,1,113,1,113,1,114,1,114,1,114,3,114,2069,8,114,1,114,1,114,1,115,1,115,1,115,5,115,2076,8,115,10,115,12,115,2079,9,115,1,116,1,116,1,116,3,116,2084,8,116,1,117,1,117,1,118,1,118,1,118,1,118,1,118,1,118,3,118,2094,8,118,3,118,2096,8,118,1,119,3,119,2099,8,119,1,119,1,119,1,119,1,119,1,119,1,119,3,119,2107,8,119,1,120,1,120,1,120,3,120,2112,8,120,1,121,1,121,1,122,1,122,1,123,1,123,1,124,1,124,3,124,2122,8,124,1,125,1,125,1,125,3,125,2127,8,125,1,126,1,126,3,126,2131,8,126,1,127,1,127,1,127,1,127,1,127,0,3,162,214,224,128,0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,0,28,6,0,3,3,24,24,27,27,38,38,104,104,177,177,2,0,15,15,29,29,3,0,3,3,38,38,104,104,2,0,41,41,43,43,2,0,44,44,50,50,3,0,14,14,159,159,165,165,2,0,31,31,144,144,2,0,84,84,96,96,2,0,71,71,101,101,3,0,4,4,8,8,12,12,4,0,4,4,7,8,12,12,150,150,2,0,96,96,143,143,2,0,4,4,8,8,2,0,118,118,208,208,2,0,11,11,41,42,2,0,62,62,93,93,2,0,136,136,146,146,2,0,68,68,80,80,1,0,156,157,3,0,17,17,95,95,173,173,3,0,204,204,222,222,231,231,2,0,209,210,223,223,2,0,79,79,98,98,1,0,199,200,2,0,210,210,223,223,8,0,36,36,76,76,108,108,110,110,134,134,148,148,189,189,194,194,15,0,2,35,37,53,55,75,77,81,83,107,109,109,111,112,114,115,117,126,129,132,136,147,149,174,176,188,190,193,195,196,4,0,35,35,62,62,77,77,91,91,2428,0,257,1,0,0,0,2,269,1,0,0,0,4,285,1,0,0,0,6,310,1,0,0,0,8,312,1,0,0,0,10,321,1,0,0,0,12,330,1,0,0,0,14,341,1,0,0,0,16,569,1,0,0,0,18,571,1,0,0,0,20,579,1,0,0,0,22,583,1,0,0,0,24,590,1,0,0,0,26,592,1,0,0,0,28,598,1,0,0,0,30,604,1,0,0,0,32,620,1,0,0,0,34,647,1,0,0,0,36,667,1,0,0,0,38,685,1,0,0,0,40,715,1,0,0,0,42,742,1,0,0,0,44,771,1,0,0,0,46,773,1,0,0,0,48,784,1,0,0,0,50,811,1,0,0,0,52,838,1,0,0,0,54,842,1,0,0,0,56,851,1,0,0,0,58,864,1,0,0,0,60,879,1,0,0,0,62,892,1,0,0,0,64,908,1,0,0,0,66,913,1,0,0,0,68,919,1,0,0,0,70,922,1,0,0,0,72,925,1,0,0,0,74,943,1,0,0,0,76,945,1,0,0,0,78,975,1,0,0,0,80,979,1,0,0,0,82,983,1,0,0,0,84,987,1,0,0,0,86,996,1,0,0,0,88,1018,1,0,0,0,90,1052,1,0,0,0,92,1054,1,0,0,0,94,1057,1,0,0,0,96,1064,1,0,0,0,98,1067,1,0,0,0,100,1079,1,0,0,0,102,1087,1,0,0,0,104,1097,1,0,0,0,106,1134,1,0,0,0,108,1149,1,0,0,0,110,1172,1,0,0,0,112,1174,1,0,0,0,114,1189,1,0,0,0,116,1209,1,0,0,0,118,1211,1,0,0,0,120,1228,1,0,0,0,122,1237,1,0,0,0,124,1252,1,0,0,0,126,1270,1,0,0,0,128,1284,1,0,0,0,130,1298,1,0,0,0,132,1301,1,0,0,0,134,1352,1,0,0,0,136,1355,1,0,0,0,138,1361,1,0,0,0,140,1365,1,0,0,0,142,1371,1,0,0,0,144,1378,1,0,0,0,146,1381,1,0,0,0,148,1384,1,0,0,0,150,1394,1,0,0,0,152,1397,1,0,0,0,154,1401,1,0,0,0,156,1405,1,0,0,0,158,1410,1,0,0,0,160,1416,1,0,0,0,162,1431,1,0,0,0,164,1496,1,0,0,0,166,1504,1,0,0,0,168,1515,1,0,0,0,170,1517,1,0,0,0,172,1523,1,0,0,0,174,1528,1,0,0,0,176,1536,1,0,0,0,178,1548,1,0,0,0,180,1553,1,0,0,0,182,1561,1,0,0,0,184,1566,1,0,0,0,186,1574,1,0,0,0,188,1578,1,0,0,0,190,1582,1,0,0,0,192,1591,1,0,0,0,194,1605,1,0,0,0,196,1607,1,0,0,0,198,1652,1,0,0,0,200,1688,1,0,0,0,202,1690,1,0,0,0,204,1705,1,0,0,0,206,1708,1,0,0,0,208,1764,1,0,0,0,210,1766,1,0,0,0,212,1785,1,0,0,0,214,1916,1,0,0,0,216,1992,1,0,0,0,218,2002,1,0,0,0,220,2023,1,0,0,0,222,2031,1,0,0,0,224,2045,1,0,0,0,226,2058,1,0,0,0,228,2068,1,0,0,0,230,2072,1,0,0,0,232,2083,1,0,0,0,234,2085,1,0,0,0,236,2095,1,0,0,0,238,2098,1,0,0,0,240,2111,1,0,0,0,242,2113,1,0,0,0,244,2115,1,0,0,0,246,2117,1,0,0,0,248,2121,1,0,0,0,250,2126,1,0,0,0,252,2130,1,0,0,0,254,2132,1,0,0,0,256,258,3,2,1,0,257,256,1,0,0,0,257,258,1,0,0,0,258,259,1,0,0,0,259,260,5,0,0,1,260,1,1,0,0,0,261,263,3,4,2,0,262,264,5,230,0,0,263,262,1,0,0,0,263,264,1,0,0,0,264,270,1,0,0,0,265,266,3,4,2,0,266,267,5,230,0,0,267,268,3,2,1,0,268,270,1,0,0,0,269,261,1,0,0,0,269,265,1,0,0,0,270,3,1,0,0,0,271,275,3,6,3,0,272,273,5,87,0,0,273,274,5,124,0,0,274,276,5,202,0,0,275,272,1,0,0,0,275,276,1,0,0,0,276,279,1,0,0,0,277,278,5,66,0,0,278,280,3,252,126,0,279,277,1,0,0,0,279,280,1,0,0,0,280,282,1,0,0,0,281,283,5,230,0,0,282,281,1,0,0,0,282,283,1,0,0,0,283,286,1,0,0,0,284,286,3,112,56,0,285,271,1,0,0,0,285,284,1,0,0,0,286,5,1,0,0,0,287,311,3,14,7,0,288,311,3,26,13,0,289,311,3,28,14,0,290,311,3,44,22,0,291,311,3,104,52,0,292,311,3,30,15,0,293,311,3,106,53,0,294,311,3,108,54,0,295,311,3,110,55,0,296,311,3,120,60,0,297,311,3,122,61,0,298,311,3,124,62,0,299,311,3,128,64,0,300,311,3,196,98,0,301,311,3,198,99,0,302,311,3,200,100,0,303,311,3,202,101,0,304,311,3,204,102,0,305,311,3,206,103,0,306,308,3,8,4,0,307,306,1,0,0,0,307,308,1,0,0,0,308,309,1,0,0,0,309,311,3,132,66,0,310,287,1,0,0,0,310,288,1,0,0,0,310,289,1,0,0,0,310,290,1,0,0,0,310,291,1,0,0,0,310,292,1,0,0,0,310,293,1,0,0,0,310,294,1,0,0,0,310,295,1,0,0,0,310,296,1,0,0,0,310,297,1,0,0,0,310,298,1,0,0,0,310,299,1,0,0,0,310,300,1,0,0,0,310,301,1,0,0,0,310,302,1,0,0,0,310,303,1,0,0,0,310,304,1,0,0,0,310,305,1,0,0,0,310,307,1,0,0,0,311,7,1,0,0,0,312,313,5,193,0,0,313,318,3,10,5,0,314,315,5,208,0,0,315,317,3,10,5,0,316,314,1,0,0,0,317,320,1,0,0,0,318,316,1,0,0,0,318,319,1,0,0,0,319,9,1,0,0,0,320,318,1,0,0,0,321,323,3,250,125,0,322,324,3,12,6,0,323,322,1,0,0,0,323,324,1,0,0,0,324,325,1,0,0,0,325,326,5,10,0,0,326,327,5,219,0,0,327,328,3,6,3,0,328,329,5,229,0,0,329,11,1,0,0,0,330,331,5,219,0,0,331,336,3,250,125,0,332,333,5,208,0,0,333,335,3,250,125,0,334,332,1,0,0,0,335,338,1,0,0,0,336,334,1,0,0,0,336,337,1,0,0,0,337,339,1,0,0,0,338,336,1,0,0,0,339,340,5,229,0,0,340,13,1,0,0,0,341,342,5,5,0,0,342,343,5,162,0,0,343,345,3,228,114,0,344,346,3,66,33,0,345,344,1,0,0,0,345,346,1,0,0,0,346,347,1,0,0,0,347,352,3,16,8,0,348,349,5,208,0,0,349,351,3,16,8,0,350,348,1,0,0,0,351,354,1,0,0,0,352,350,1,0,0,0,352,353,1,0,0,0,353,15,1,0,0,0,354,352,1,0,0,0,355,356,5,1,0,0,356,360,5,26,0,0,357,358,5,78,0,0,358,359,5,115,0,0,359,361,5,56,0,0,360,357,1,0,0,0,360,361,1,0,0,0,361,362,1,0,0,0,362,365,3,90,45,0,363,364,5,2,0,0,364,366,3,222,111,0,365,363,1,0,0,0,365,366,1,0,0,0,366,570,1,0,0,0,367,368,5,1,0,0,368,372,5,81,0,0,369,370,5,78,0,0,370,371,5,115,0,0,371,373,5,56,0,0,372,369,1,0,0,0,372,373,1,0,0,0,373,374,1,0,0,0,374,377,3,94,47,0,375,376,5,2,0,0,376,378,3,222,111,0,377,375,1,0,0,0,377,378,1,0,0,0,378,570,1,0,0,0,379,380,5,1,0,0,380,384,5,133,0,0,381,382,5,78,0,0,382,383,5,115,0,0,383,385,5,56,0,0,384,381,1,0,0,0,384,385,1,0,0,0,385,386,1,0,0,0,386,389,3,96,48,0,387,388,5,2,0,0,388,390,3,222,111,0,389,387,1,0,0,0,389,390,1,0,0,0,390,570,1,0,0,0,391,392,5,15,0,0,392,395,3,24,12,0,393,394,5,68,0,0,394,396,3,228,114,0,395,393,1,0,0,0,395,396,1,0,0,0,396,570,1,0,0,0,397,398,5,22,0,0,398,401,5,26,0,0,399,400,5,78,0,0,400,402,5,56,0,0,401,399,1,0,0,0,401,402,1,0,0,0,402,403,1,0,0,0,403,406,3,222,111,0,404,405,5,80,0,0,405,407,3,24,12,0,406,404,1,0,0,0,406,407,1,0,0,0,407,570,1,0,0,0,408,409,5,22,0,0,409,412,5,81,0,0,410,411,5,78,0,0,411,413,5,56,0,0,412,410,1,0,0,0,412,413,1,0,0,0,413,414,1,0,0,0,414,417,3,222,111,0,415,416,5,80,0,0,416,418,3,24,12,0,417,415,1,0,0,0,417,418,1,0,0,0,418,570,1,0,0,0,419,420,5,22,0,0,420,423,5,133,0,0,421,422,5,78,0,0,422,424,5,56,0,0,423,421,1,0,0,0,423,424,1,0,0,0,424,425,1,0,0,0,425,428,3,222,111,0,426,427,5,80,0,0,427,429,3,24,12,0,428,426,1,0,0,0,428,429,1,0,0,0,429,570,1,0,0,0,430,431,5,27,0,0,431,434,5,26,0,0,432,433,5,78,0,0,433,435,5,56,0,0,434,432,1,0,0,0,434,435,1,0,0,0,435,436,1,0,0,0,436,437,3,222,111,0,437,438,5,202,0,0,438,570,1,0,0,0,439,440,5,40,0,0,440,441,5,191,0,0,441,570,3,214,107,0,442,443,5,44,0,0,443,570,3,24,12,0,444,445,5,50,0,0,445,448,5,26,0,0,446,447,5,78,0,0,447,449,5,56,0,0,448,446,1,0,0,0,448,449,1,0,0,0,449,450,1,0,0,0,450,570,3,222,111,0,451,452,5,50,0,0,452,455,5,81,0,0,453,454,5,78,0,0,454,456,5,56,0,0,455,453,1,0,0,0,455,456,1,0,0,0,456,457,1,0,0,0,457,570,3,222,111,0,458,459,5,50,0,0,459,462,5,133,0,0,460,461,5,78,0,0,461,463,5,56,0,0,462,460,1,0,0,0,462,463,1,0,0,0,463,464,1,0,0,0,464,570,3,222,111,0,465,466,5,50,0,0,466,570,3,24,12,0,467,469,5,67,0,0,468,470,3,24,12,0,469,468,1,0,0,0,469,470,1,0,0,0,470,570,1,0,0,0,471,472,5,103,0,0,472,475,5,81,0,0,473,474,5,78,0,0,474,476,5,56,0,0,475,473,1,0,0,0,475,476,1,0,0,0,476,477,1,0,0,0,477,480,3,222,111,0,478,479,5,80,0,0,479,481,3,24,12,0,480,478,1,0,0,0,480,481,1,0,0,0,481,570,1,0,0,0,482,483,5,103,0,0,483,486,5,133,0,0,484,485,5,78,0,0,485,487,5,56,0,0,486,484,1,0,0,0,486,487,1,0,0,0,487,488,1,0,0,0,488,491,3,222,111,0,489,490,5,80,0,0,490,492,3,24,12,0,491,489,1,0,0,0,491,492,1,0,0,0,492,570,1,0,0,0,493,494,5,109,0,0,494,497,5,26,0,0,495,496,5,78,0,0,496,498,5,56,0,0,497,495,1,0,0,0,497,498,1,0,0,0,498,499,1,0,0,0,499,500,3,222,111,0,500,501,3,98,49,0,501,570,1,0,0,0,502,503,5,109,0,0,503,506,5,26,0,0,504,505,5,78,0,0,505,507,5,56,0,0,506,504,1,0,0,0,506,507,1,0,0,0,507,508,1,0,0,0,508,509,3,222,111,0,509,510,5,27,0,0,510,511,5,202,0,0,511,570,1,0,0,0,512,513,5,109,0,0,513,516,5,26,0,0,514,515,5,78,0,0,515,517,5,56,0,0,516,514,1,0,0,0,516,517,1,0,0,0,517,518,1,0,0,0,518,519,3,222,111,0,519,520,5,138,0,0,520,521,3,22,11,0,521,570,1,0,0,0,522,523,5,109,0,0,523,526,5,26,0,0,524,525,5,78,0,0,525,527,5,56,0,0,526,524,1,0,0,0,526,527,1,0,0,0,527,528,1,0,0,0,528,570,3,90,45,0,529,530,5,109,0,0,530,531,5,122,0,0,531,532,5,18,0,0,532,570,3,214,107,0,533,534,5,109,0,0,534,570,3,84,42,0,535,536,5,111,0,0,536,546,3,24,12,0,537,538,5,170,0,0,538,539,5,47,0,0,539,547,5,202,0,0,540,541,5,170,0,0,541,542,5,187,0,0,542,547,5,202,0,0,543,544,5,170,0,0,544,545,5,162,0,0,545,547,3,228,114,0,546,537,1,0,0,0,546,540,1,0,0,0,546,543,1,0,0,0,547,570,1,0,0,0,548,549,5,138,0,0,549,570,5,177,0,0,550,551,5,139,0,0,551,554,5,26,0,0,552,553,5,78,0,0,553,555,5,56,0,0,554,552,1,0,0,0,554,555,1,0,0,0,555,556,1,0,0,0,556,557,3,222,111,0,557,558,5,170,0,0,558,559,3,222,111,0,559,570,1,0,0,0,560,561,5,140,0,0,561,562,3,24,12,0,562,563,5,68,0,0,563,564,3,228,114,0,564,570,1,0,0,0,565,566,5,181,0,0,566,567,3,18,9,0,567,568,3,146,73,0,568,570,1,0,0,0,569,355,1,0,0,0,569,367,1,0,0,0,569,379,1,0,0,0,569,391,1,0,0,0,569,397,1,0,0,0,569,408,1,0,0,0,569,419,1,0,0,0,569,430,1,0,0,0,569,439,1,0,0,0,569,442,1,0,0,0,569,444,1,0,0,0,569,451,1,0,0,0,569,458,1,0,0,0,569,465,1,0,0,0,569,467,1,0,0,0,569,471,1,0,0,0,569,482,1,0,0,0,569,493,1,0,0,0,569,502,1,0,0,0,569,512,1,0,0,0,569,522,1,0,0,0,569,529,1,0,0,0,569,533,1,0,0,0,569,535,1,0,0,0,569,548,1,0,0,0,569,550,1,0,0,0,569,560,1,0,0,0,569,565,1,0,0,0,570,17,1,0,0,0,571,576,3,20,10,0,572,573,5,208,0,0,573,575,3,20,10,0,574,572,1,0,0,0,575,578,1,0,0,0,576,574,1,0,0,0,576,577,1,0,0,0,577,19,1,0,0,0,578,576,1,0,0,0,579,580,3,222,111,0,580,581,5,213,0,0,581,582,3,214,107,0,582,21,1,0,0,0,583,584,7,0,0,0,584,23,1,0,0,0,585,586,5,126,0,0,586,591,3,214,107,0,587,588,5,126,0,0,588,589,5,77,0,0,589,591,5,202,0,0,590,585,1,0,0,0,590,587,1,0,0,0,591,25,1,0,0,0,592,593,5,15,0,0,593,594,5,46,0,0,594,596,3,228,114,0,595,597,3,66,33,0,596,595,1,0,0,0,596,597,1,0,0,0,597,27,1,0,0,0,598,599,5,21,0,0,599,600,5,162,0,0,600,602,3,228,114,0,601,603,3,24,12,0,602,601,1,0,0,0,602,603,1,0,0,0,603,29,1,0,0,0,604,605,5,40,0,0,605,606,5,68,0,0,606,608,3,228,114,0,607,609,3,66,33,0,608,607,1,0,0,0,608,609,1,0,0,0,609,611,1,0,0,0,610,612,3,146,73,0,611,610,1,0,0,0,611,612,1,0,0,0,612,31,1,0,0,0,613,621,5,15,0,0,614,617,5,29,0,0,615,616,5,121,0,0,616,618,5,140,0,0,617,615,1,0,0,0,617,618,1,0,0,0,618,621,1,0,0,0,619,621,5,140,0,0,620,613,1,0,0,0,620,614,1,0,0,0,620,619,1,0,0,0,621,623,1,0,0,0,622,624,5,164,0,0,623,622,1,0,0,0,623,624,1,0,0,0,624,625,1,0,0,0,625,629,5,162,0,0,626,627,5,78,0,0,627,628,5,115,0,0,628,630,5,56,0,0,629,626,1,0,0,0,629,630,1,0,0,0,630,631,1,0,0,0,631,633,3,228,114,0,632,634,3,68,34,0,633,632,1,0,0,0,633,634,1,0,0,0,634,636,1,0,0,0,635,637,3,66,33,0,636,635,1,0,0,0,636,637,1,0,0,0,637,639,1,0,0,0,638,640,3,74,37,0,639,638,1,0,0,0,639,640,1,0,0,0,640,642,1,0,0,0,641,643,3,76,38,0,642,641,1,0,0,0,642,643,1,0,0,0,643,645,1,0,0,0,644,646,3,72,36,0,645,644,1,0,0,0,645,646,1,0,0,0,646,33,1,0,0,0,647,648,7,1,0,0,648,652,5,33,0,0,649,650,5,78,0,0,650,651,5,115,0,0,651,653,5,56,0,0,652,649,1,0,0,0,652,653,1,0,0,0,653,654,1,0,0,0,654,656,3,250,125,0,655,657,3,66,33,0,656,655,1,0,0,0,656,657,1,0,0,0,657,658,1,0,0,0,658,659,3,86,43,0,659,35,1,0,0,0,660,668,5,15,0,0,661,664,5,29,0,0,662,663,5,121,0,0,663,665,5,140,0,0,664,662,1,0,0,0,664,665,1,0,0,0,665,668,1,0,0,0,666,668,5,140,0,0,667,660,1,0,0,0,667,661,1,0,0,0,667,666,1,0,0,0,668,669,1,0,0,0,669,673,5,46,0,0,670,671,5,78,0,0,671,672,5,115,0,0,672,674,5,56,0,0,673,670,1,0,0,0,673,674,1,0,0,0,674,675,1,0,0,0,675,677,3,228,114,0,676,678,3,68,34,0,677,676,1,0,0,0,677,678,1,0,0,0,678,680,1,0,0,0,679,681,3,66,33,0,680,679,1,0,0,0,680,681,1,0,0,0,681,682,1,0,0,0,682,683,3,46,23,0,683,684,3,50,25,0,684,37,1,0,0,0,685,686,7,1,0,0,686,687,5,100,0,0,687,691,5,186,0,0,688,689,5,78,0,0,689,690,5,115,0,0,690,692,5,56,0,0,691,688,1,0,0,0,691,692,1,0,0,0,692,693,1,0,0,0,693,695,3,228,114,0,694,696,3,68,34,0,695,694,1,0,0,0,695,696,1,0,0,0,696,698,1,0,0,0,697,699,3,66,33,0,698,697,1,0,0,0,698,699,1,0,0,0,699,705,1,0,0,0,700,701,5,193,0,0,701,703,5,168,0,0,702,704,5,200,0,0,703,702,1,0,0,0,703,704,1,0,0,0,704,706,1,0,0,0,705,700,1,0,0,0,705,706,1,0,0,0,706,708,1,0,0,0,707,709,3,70,35,0,708,707,1,0,0,0,708,709,1,0,0,0,709,711,1,0,0,0,710,712,3,74,37,0,711,710,1,0,0,0,711,712,1,0,0,0,712,713,1,0,0,0,713,714,3,72,36,0,714,39,1,0,0,0,715,716,7,1,0,0,716,717,5,104,0,0,717,721,5,186,0,0,718,719,5,78,0,0,719,720,5,115,0,0,720,722,5,56,0,0,721,718,1,0,0,0,721,722,1,0,0,0,722,723,1,0,0,0,723,725,3,228,114,0,724,726,3,68,34,0,725,724,1,0,0,0,725,726,1,0,0,0,726,728,1,0,0,0,727,729,3,66,33,0,728,727,1,0,0,0,728,729,1,0,0,0,729,731,1,0,0,0,730,732,3,74,37,0,731,730,1,0,0,0,731,732,1,0,0,0,732,738,1,0,0,0,733,739,3,70,35,0,734,736,3,76,38,0,735,737,5,129,0,0,736,735,1,0,0,0,736,737,1,0,0,0,737,739,1,0,0,0,738,733,1,0,0,0,738,734,1,0,0,0,739,740,1,0,0,0,740,741,3,72,36,0,741,41,1,0,0,0,742,745,7,1,0,0,743,744,5,121,0,0,744,746,5,140,0,0,745,743,1,0,0,0,745,746,1,0,0,0,746,747,1,0,0,0,747,751,5,186,0,0,748,749,5,78,0,0,749,750,5,115,0,0,750,752,5,56,0,0,751,748,1,0,0,0,751,752,1,0,0,0,752,753,1,0,0,0,753,755,3,228,114,0,754,756,3,68,34,0,755,754,1,0,0,0,755,756,1,0,0,0,756,758,1,0,0,0,757,759,3,66,33,0,758,757,1,0,0,0,758,759,1,0,0,0,759,761,1,0,0,0,760,762,3,74,37,0,761,760,1,0,0,0,761,762,1,0,0,0,762,763,1,0,0,0,763,764,3,72,36,0,764,43,1,0,0,0,765,772,3,34,17,0,766,772,3,36,18,0,767,772,3,38,19,0,768,772,3,40,20,0,769,772,3,32,16,0,770,772,3,42,21,0,771,765,1,0,0,0,771,766,1,0,0,0,771,767,1,0,0,0,771,768,1,0,0,0,771,769,1,0,0,0,771,770,1,0,0,0,772,45,1,0,0,0,773,774,5,219,0,0,774,779,3,48,24,0,775,776,5,208,0,0,776,778,3,48,24,0,777,775,1,0,0,0,778,781,1,0,0,0,779,777,1,0,0,0,779,780,1,0,0,0,780,782,1,0,0,0,781,779,1,0,0,0,782,783,5,229,0,0,783,47,1,0,0,0,784,785,3,250,125,0,785,807,3,208,104,0,786,787,4,24,0,1,787,788,5,38,0,0,788,789,3,240,120,0,789,790,6,24,-1,0,790,806,1,0,0,0,791,792,4,24,1,1,792,793,5,58,0,0,793,794,3,214,107,0,794,795,6,24,-1,0,795,806,1,0,0,0,796,797,4,24,2,1,797,798,5,75,0,0,798,806,6,24,-1,0,799,800,4,24,3,1,800,801,5,83,0,0,801,806,6,24,-1,0,802,803,4,24,4,1,803,804,5,89,0,0,804,806,6,24,-1,0,805,786,1,0,0,0,805,791,1,0,0,0,805,796,1,0,0,0,805,799,1,0,0,0,805,802,1,0,0,0,806,809,1,0,0,0,807,805,1,0,0,0,807,808,1,0,0,0,808,49,1,0,0,0,809,807,1,0,0,0,810,812,3,52,26,0,811,810,1,0,0,0,811,812,1,0,0,0,812,835,1,0,0,0,813,814,4,25,5,1,814,815,3,56,28,0,815,816,6,25,-1,0,816,834,1,0,0,0,817,818,4,25,6,1,818,819,3,58,29,0,819,820,6,25,-1,0,820,834,1,0,0,0,821,822,4,25,7,1,822,823,3,60,30,0,823,824,6,25,-1,0,824,834,1,0,0,0,825,826,4,25,8,1,826,827,3,62,31,0,827,828,6,25,-1,0,828,834,1,0,0,0,829,830,4,25,9,1,830,831,3,64,32,0,831,832,6,25,-1,0,832,834,1,0,0,0,833,813,1,0,0,0,833,817,1,0,0,0,833,821,1,0,0,0,833,825,1,0,0,0,833,829,1,0,0,0,834,837,1,0,0,0,835,833,1,0,0,0,835,836,1,0,0,0,836,51,1,0,0,0,837,835,1,0,0,0,838,839,5,132,0,0,839,840,5,91,0,0,840,841,3,210,105,0,841,53,1,0,0,0,842,849,3,250,125,0,843,846,3,250,125,0,844,845,5,219,0,0,845,847,5,229,0,0,846,844,1,0,0,0,846,847,1,0,0,0,847,850,1,0,0,0,848,850,3,240,120,0,849,843,1,0,0,0,849,848,1,0,0,0,850,55,1,0,0,0,851,852,5,155,0,0,852,853,5,219,0,0,853,854,3,250,125,0,854,858,5,219,0,0,855,857,3,54,27,0,856,855,1,0,0,0,857,860,1,0,0,0,858,856,1,0,0,0,858,859,1,0,0,0,859,861,1,0,0,0,860,858,1,0,0,0,861,862,5,229,0,0,862,863,5,229,0,0,863,57,1,0,0,0,864,865,5,97,0,0,865,875,5,219,0,0,866,876,5,200,0,0,867,868,5,107,0,0,868,869,5,200,0,0,869,870,5,105,0,0,870,876,5,200,0,0,871,872,5,105,0,0,872,873,5,200,0,0,873,874,5,107,0,0,874,876,5,200,0,0,875,866,1,0,0,0,875,867,1,0,0,0,875,871,1,0,0,0,876,877,1,0,0,0,877,878,5,229,0,0,878,59,1,0,0,0,879,880,5,94,0,0,880,881,5,219,0,0,881,882,3,250,125,0,882,886,5,219,0,0,883,885,3,54,27,0,884,883,1,0,0,0,885,888,1,0,0,0,886,884,1,0,0,0,886,887,1,0,0,0,887,889,1,0,0,0,888,886,1,0,0,0,889,890,5,229,0,0,890,891,5,229,0,0,891,61,1,0,0,0,892,893,5,136,0,0,893,904,5,219,0,0,894,895,5,107,0,0,895,896,3,250,125,0,896,897,5,105,0,0,897,898,3,250,125,0,898,905,1,0,0,0,899,900,5,105,0,0,900,901,3,250,125,0,901,902,5,107,0,0,902,903,3,250,125,0,903,905,1,0,0,0,904,894,1,0,0,0,904,899,1,0,0,0,905,906,1,0,0,0,906,907,5,229,0,0,907,63,1,0,0,0,908,909,5,153,0,0,909,910,5,219,0,0,910,911,3,180,90,0,911,912,5,229,0,0,912,65,1,0,0,0,913,914,5,119,0,0,914,917,5,23,0,0,915,918,3,250,125,0,916,918,5,202,0,0,917,915,1,0,0,0,917,916,1,0,0,0,918,67,1,0,0,0,919,920,5,184,0,0,920,921,5,202,0,0,921,69,1,0,0,0,922,923,5,170,0,0,923,924,3,228,114,0,924,71,1,0,0,0,925,926,5,10,0,0,926,927,3,128,64,0,927,73,1,0,0,0,928,929,5,219,0,0,929,934,3,88,44,0,930,931,5,208,0,0,931,933,3,88,44,0,932,930,1,0,0,0,933,936,1,0,0,0,934,932,1,0,0,0,934,935,1,0,0,0,935,937,1,0,0,0,936,934,1,0,0,0,937,938,5,229,0,0,938,944,1,0,0,0,939,940,5,10,0,0,940,944,3,228,114,0,941,942,5,10,0,0,942,944,3,226,113,0,943,928,1,0,0,0,943,939,1,0,0,0,943,941,1,0,0,0,944,75,1,0,0,0,945,972,3,86,43,0,946,947,4,38,10,1,947,948,3,152,76,0,948,949,6,38,-1,0,949,971,1,0,0,0,950,951,4,38,11,1,951,952,3,78,39,0,952,953,6,38,-1,0,953,971,1,0,0,0,954,955,4,38,12,1,955,956,3,80,40,0,956,957,6,38,-1,0,957,971,1,0,0,0,958,959,4,38,13,1,959,960,3,82,41,0,960,961,6,38,-1,0,961,971,1,0,0,0,962,963,4,38,14,1,963,964,3,84,42,0,964,965,6,38,-1,0,965,971,1,0,0,0,966,967,4,38,15,1,967,968,3,160,80,0,968,969,6,38,-1,0,969,971,1,0,0,0,970,946,1,0,0,0,970,950,1,0,0,0,970,954,1,0,0,0,970,958,1,0,0,0,970,962,1,0,0,0,970,966,1,0,0,0,971,974,1,0,0,0,972,970,1,0,0,0,972,973,1,0,0,0,973,77,1,0,0,0,974,972,1,0,0,0,975,976,5,126,0,0,976,977,5,18,0,0,977,978,3,214,107,0,978,79,1,0,0,0,979,980,5,132,0,0,980,981,5,91,0,0,981,982,3,214,107,0,982,81,1,0,0,0,983,984,5,147,0,0,984,985,5,18,0,0,985,986,3,214,107,0,986,83,1,0,0,0,987,988,5,177,0,0,988,993,3,102,51,0,989,990,5,208,0,0,990,992,3,102,51,0,991,989,1,0,0,0,992,995,1,0,0,0,993,991,1,0,0,0,993,994,1,0,0,0,994,85,1,0,0,0,995,993,1,0,0,0,996,998,5,53,0,0,997,999,5,213,0,0,998,997,1,0,0,0,998,999,1,0,0,0,999,1e3,1,0,0,0,1e3,1006,3,252,126,0,1001,1003,5,219,0,0,1002,1004,3,210,105,0,1003,1002,1,0,0,0,1003,1004,1,0,0,0,1004,1005,1,0,0,0,1005,1007,5,229,0,0,1006,1001,1,0,0,0,1006,1007,1,0,0,0,1007,87,1,0,0,0,1008,1019,3,90,45,0,1009,1010,5,28,0,0,1010,1011,3,250,125,0,1011,1012,5,21,0,0,1012,1013,3,214,107,0,1013,1019,1,0,0,0,1014,1015,5,81,0,0,1015,1019,3,94,47,0,1016,1017,5,133,0,0,1017,1019,3,96,48,0,1018,1008,1,0,0,0,1018,1009,1,0,0,0,1018,1014,1,0,0,0,1018,1016,1,0,0,0,1019,89,1,0,0,0,1020,1021,3,222,111,0,1021,1023,3,208,104,0,1022,1024,3,92,46,0,1023,1022,1,0,0,0,1023,1024,1,0,0,0,1024,1027,1,0,0,0,1025,1026,5,27,0,0,1026,1028,5,202,0,0,1027,1025,1,0,0,0,1027,1028,1,0,0,0,1028,1030,1,0,0,0,1029,1031,3,98,49,0,1030,1029,1,0,0,0,1030,1031,1,0,0,0,1031,1034,1,0,0,0,1032,1033,5,177,0,0,1033,1035,3,214,107,0,1034,1032,1,0,0,0,1034,1035,1,0,0,0,1035,1053,1,0,0,0,1036,1038,3,222,111,0,1037,1039,3,208,104,0,1038,1037,1,0,0,0,1038,1039,1,0,0,0,1039,1040,1,0,0,0,1040,1043,3,92,46,0,1041,1042,5,27,0,0,1042,1044,5,202,0,0,1043,1041,1,0,0,0,1043,1044,1,0,0,0,1044,1046,1,0,0,0,1045,1047,3,98,49,0,1046,1045,1,0,0,0,1046,1047,1,0,0,0,1047,1050,1,0,0,0,1048,1049,5,177,0,0,1049,1051,3,214,107,0,1050,1048,1,0,0,0,1050,1051,1,0,0,0,1051,1053,1,0,0,0,1052,1020,1,0,0,0,1052,1036,1,0,0,0,1053,91,1,0,0,0,1054,1055,7,2,0,0,1055,1056,3,214,107,0,1056,93,1,0,0,0,1057,1058,3,222,111,0,1058,1059,3,214,107,0,1059,1060,5,178,0,0,1060,1061,3,208,104,0,1061,1062,5,72,0,0,1062,1063,5,200,0,0,1063,95,1,0,0,0,1064,1065,3,222,111,0,1065,1066,3,126,63,0,1066,97,1,0,0,0,1067,1068,5,24,0,0,1068,1069,5,219,0,0,1069,1074,3,100,50,0,1070,1071,5,208,0,0,1071,1073,3,100,50,0,1072,1070,1,0,0,0,1073,1076,1,0,0,0,1074,1072,1,0,0,0,1074,1075,1,0,0,0,1075,1077,1,0,0,0,1076,1074,1,0,0,0,1077,1078,5,229,0,0,1078,99,1,0,0,0,1079,1085,3,250,125,0,1080,1082,5,219,0,0,1081,1083,3,210,105,0,1082,1081,1,0,0,0,1082,1083,1,0,0,0,1083,1084,1,0,0,0,1084,1086,5,229,0,0,1085,1080,1,0,0,0,1085,1086,1,0,0,0,1086,101,1,0,0,0,1087,1095,3,214,107,0,1088,1096,5,40,0,0,1089,1090,5,170,0,0,1090,1091,5,47,0,0,1091,1096,5,202,0,0,1092,1093,5,170,0,0,1093,1094,5,187,0,0,1094,1096,5,202,0,0,1095,1088,1,0,0,0,1095,1089,1,0,0,0,1095,1092,1,0,0,0,1095,1096,1,0,0,0,1096,103,1,0,0,0,1097,1099,7,3,0,0,1098,1100,5,162,0,0,1099,1098,1,0,0,0,1099,1100,1,0,0,0,1100,1101,1,0,0,0,1101,1102,3,224,112,0,1102,105,1,0,0,0,1103,1104,7,4,0,0,1104,1107,5,33,0,0,1105,1106,5,78,0,0,1106,1108,5,56,0,0,1107,1105,1,0,0,0,1107,1108,1,0,0,0,1108,1109,1,0,0,0,1109,1111,3,234,117,0,1110,1112,3,66,33,0,1111,1110,1,0,0,0,1111,1112,1,0,0,0,1112,1135,1,0,0,0,1113,1120,7,4,0,0,1114,1121,5,46,0,0,1115,1117,5,164,0,0,1116,1115,1,0,0,0,1116,1117,1,0,0,0,1117,1118,1,0,0,0,1118,1121,5,162,0,0,1119,1121,5,186,0,0,1120,1114,1,0,0,0,1120,1116,1,0,0,0,1120,1119,1,0,0,0,1121,1124,1,0,0,0,1122,1123,5,78,0,0,1123,1125,5,56,0,0,1124,1122,1,0,0,0,1124,1125,1,0,0,0,1125,1126,1,0,0,0,1126,1128,3,228,114,0,1127,1129,3,66,33,0,1128,1127,1,0,0,0,1128,1129,1,0,0,0,1129,1132,1,0,0,0,1130,1131,5,114,0,0,1131,1133,5,39,0,0,1132,1130,1,0,0,0,1132,1133,1,0,0,0,1133,1135,1,0,0,0,1134,1103,1,0,0,0,1134,1113,1,0,0,0,1135,107,1,0,0,0,1136,1137,5,56,0,0,1137,1138,5,33,0,0,1138,1150,3,234,117,0,1139,1146,5,56,0,0,1140,1147,5,46,0,0,1141,1143,5,164,0,0,1142,1141,1,0,0,0,1142,1143,1,0,0,0,1143,1144,1,0,0,0,1144,1147,5,162,0,0,1145,1147,5,186,0,0,1146,1140,1,0,0,0,1146,1142,1,0,0,0,1146,1145,1,0,0,0,1146,1147,1,0,0,0,1147,1148,1,0,0,0,1148,1150,3,228,114,0,1149,1136,1,0,0,0,1149,1139,1,0,0,0,1150,109,1,0,0,0,1151,1152,5,57,0,0,1152,1173,3,6,3,0,1153,1154,5,57,0,0,1154,1155,5,13,0,0,1155,1173,3,6,3,0,1156,1157,5,57,0,0,1157,1158,5,160,0,0,1158,1173,3,6,3,0,1159,1160,5,57,0,0,1160,1161,5,127,0,0,1161,1173,3,6,3,0,1162,1163,5,57,0,0,1163,1164,5,128,0,0,1164,1173,3,6,3,0,1165,1166,5,57,0,0,1166,1167,5,135,0,0,1167,1168,5,175,0,0,1168,1173,3,6,3,0,1169,1170,5,57,0,0,1170,1171,5,54,0,0,1171,1173,3,6,3,0,1172,1151,1,0,0,0,1172,1153,1,0,0,0,1172,1156,1,0,0,0,1172,1159,1,0,0,0,1172,1162,1,0,0,0,1172,1165,1,0,0,0,1172,1169,1,0,0,0,1173,111,1,0,0,0,1174,1175,5,85,0,0,1175,1177,5,87,0,0,1176,1178,5,162,0,0,1177,1176,1,0,0,0,1177,1178,1,0,0,0,1178,1182,1,0,0,0,1179,1183,3,228,114,0,1180,1181,5,70,0,0,1181,1183,3,226,113,0,1182,1179,1,0,0,0,1182,1180,1,0,0,0,1183,1185,1,0,0,0,1184,1186,3,114,57,0,1185,1184,1,0,0,0,1185,1186,1,0,0,0,1186,1187,1,0,0,0,1187,1188,3,116,58,0,1188,113,1,0,0,0,1189,1190,5,219,0,0,1190,1195,3,222,111,0,1191,1192,5,208,0,0,1192,1194,3,222,111,0,1193,1191,1,0,0,0,1194,1197,1,0,0,0,1195,1193,1,0,0,0,1195,1196,1,0,0,0,1196,1198,1,0,0,0,1197,1195,1,0,0,0,1198,1199,5,229,0,0,1199,115,1,0,0,0,1200,1201,5,66,0,0,1201,1210,3,250,125,0,1202,1210,3,118,59,0,1203,1205,3,128,64,0,1204,1206,5,230,0,0,1205,1204,1,0,0,0,1205,1206,1,0,0,0,1206,1207,1,0,0,0,1207,1208,5,0,0,1,1208,1210,1,0,0,0,1209,1200,1,0,0,0,1209,1202,1,0,0,0,1209,1203,1,0,0,0,1210,117,1,0,0,0,1211,1212,5,185,0,0,1212,1214,5,219,0,0,1213,1215,3,240,120,0,1214,1213,1,0,0,0,1214,1215,1,0,0,0,1215,1216,1,0,0,0,1216,1225,5,229,0,0,1217,1218,5,208,0,0,1218,1220,5,219,0,0,1219,1221,3,240,120,0,1220,1219,1,0,0,0,1220,1221,1,0,0,0,1221,1222,1,0,0,0,1222,1224,5,229,0,0,1223,1217,1,0,0,0,1224,1227,1,0,0,0,1225,1223,1,0,0,0,1225,1226,1,0,0,0,1226,119,1,0,0,0,1227,1225,1,0,0,0,1228,1229,5,92,0,0,1229,1231,5,112,0,0,1230,1232,3,66,33,0,1231,1230,1,0,0,0,1231,1232,1,0,0,0,1232,1233,1,0,0,0,1233,1235,3,146,73,0,1234,1236,7,5,0,0,1235,1234,1,0,0,0,1235,1236,1,0,0,0,1236,121,1,0,0,0,1237,1238,5,120,0,0,1238,1239,5,162,0,0,1239,1241,3,228,114,0,1240,1242,3,66,33,0,1241,1240,1,0,0,0,1241,1242,1,0,0,0,1242,1244,1,0,0,0,1243,1245,3,24,12,0,1244,1243,1,0,0,0,1244,1245,1,0,0,0,1245,1247,1,0,0,0,1246,1248,5,61,0,0,1247,1246,1,0,0,0,1247,1248,1,0,0,0,1248,1250,1,0,0,0,1249,1251,5,37,0,0,1250,1249,1,0,0,0,1250,1251,1,0,0,0,1251,123,1,0,0,0,1252,1253,5,139,0,0,1253,1254,5,162,0,0,1254,1255,3,228,114,0,1255,1256,5,170,0,0,1256,1264,3,228,114,0,1257,1258,5,208,0,0,1258,1259,3,228,114,0,1259,1260,5,170,0,0,1260,1261,3,228,114,0,1261,1263,1,0,0,0,1262,1257,1,0,0,0,1263,1266,1,0,0,0,1264,1262,1,0,0,0,1264,1265,1,0,0,0,1265,1268,1,0,0,0,1266,1264,1,0,0,0,1267,1269,3,66,33,0,1268,1267,1,0,0,0,1268,1269,1,0,0,0,1269,125,1,0,0,0,1270,1272,5,219,0,0,1271,1273,3,134,67,0,1272,1271,1,0,0,0,1272,1273,1,0,0,0,1273,1274,1,0,0,0,1274,1275,5,149,0,0,1275,1277,3,210,105,0,1276,1278,3,148,74,0,1277,1276,1,0,0,0,1277,1278,1,0,0,0,1278,1280,1,0,0,0,1279,1281,3,154,77,0,1280,1279,1,0,0,0,1280,1281,1,0,0,0,1281,1282,1,0,0,0,1282,1283,5,229,0,0,1283,127,1,0,0,0,1284,1290,3,130,65,0,1285,1286,5,180,0,0,1286,1287,5,4,0,0,1287,1289,3,130,65,0,1288,1285,1,0,0,0,1289,1292,1,0,0,0,1290,1288,1,0,0,0,1290,1291,1,0,0,0,1291,129,1,0,0,0,1292,1290,1,0,0,0,1293,1299,3,132,66,0,1294,1295,5,219,0,0,1295,1296,3,128,64,0,1296,1297,5,229,0,0,1297,1299,1,0,0,0,1298,1293,1,0,0,0,1298,1294,1,0,0,0,1299,131,1,0,0,0,1300,1302,3,134,67,0,1301,1300,1,0,0,0,1301,1302,1,0,0,0,1302,1303,1,0,0,0,1303,1305,5,149,0,0,1304,1306,5,48,0,0,1305,1304,1,0,0,0,1305,1306,1,0,0,0,1306,1308,1,0,0,0,1307,1309,3,136,68,0,1308,1307,1,0,0,0,1308,1309,1,0,0,0,1309,1310,1,0,0,0,1310,1312,3,210,105,0,1311,1313,3,138,69,0,1312,1311,1,0,0,0,1312,1313,1,0,0,0,1313,1315,1,0,0,0,1314,1316,3,140,70,0,1315,1314,1,0,0,0,1315,1316,1,0,0,0,1316,1318,1,0,0,0,1317,1319,3,142,71,0,1318,1317,1,0,0,0,1318,1319,1,0,0,0,1319,1321,1,0,0,0,1320,1322,3,144,72,0,1321,1320,1,0,0,0,1321,1322,1,0,0,0,1322,1324,1,0,0,0,1323,1325,3,146,73,0,1324,1323,1,0,0,0,1324,1325,1,0,0,0,1325,1327,1,0,0,0,1326,1328,3,148,74,0,1327,1326,1,0,0,0,1327,1328,1,0,0,0,1328,1331,1,0,0,0,1329,1330,5,193,0,0,1330,1332,7,6,0,0,1331,1329,1,0,0,0,1331,1332,1,0,0,0,1332,1335,1,0,0,0,1333,1334,5,193,0,0,1334,1336,5,172,0,0,1335,1333,1,0,0,0,1335,1336,1,0,0,0,1336,1338,1,0,0,0,1337,1339,3,150,75,0,1338,1337,1,0,0,0,1338,1339,1,0,0,0,1339,1341,1,0,0,0,1340,1342,3,152,76,0,1341,1340,1,0,0,0,1341,1342,1,0,0,0,1342,1344,1,0,0,0,1343,1345,3,156,78,0,1344,1343,1,0,0,0,1344,1345,1,0,0,0,1345,1347,1,0,0,0,1346,1348,3,158,79,0,1347,1346,1,0,0,0,1347,1348,1,0,0,0,1348,1350,1,0,0,0,1349,1351,3,160,80,0,1350,1349,1,0,0,0,1350,1351,1,0,0,0,1351,133,1,0,0,0,1352,1353,5,193,0,0,1353,1354,3,210,105,0,1354,135,1,0,0,0,1355,1356,5,171,0,0,1356,1359,5,200,0,0,1357,1358,5,193,0,0,1358,1360,5,167,0,0,1359,1357,1,0,0,0,1359,1360,1,0,0,0,1360,137,1,0,0,0,1361,1362,5,68,0,0,1362,1363,3,162,81,0,1363,139,1,0,0,0,1364,1366,7,7,0,0,1365,1364,1,0,0,0,1365,1366,1,0,0,0,1366,1367,1,0,0,0,1367,1368,5,9,0,0,1368,1369,5,90,0,0,1369,1370,3,210,105,0,1370,141,1,0,0,0,1371,1372,5,192,0,0,1372,1373,3,250,125,0,1373,1374,5,10,0,0,1374,1375,5,219,0,0,1375,1376,3,184,92,0,1376,1377,5,229,0,0,1377,143,1,0,0,0,1378,1379,5,131,0,0,1379,1380,3,214,107,0,1380,145,1,0,0,0,1381,1382,5,191,0,0,1382,1383,3,214,107,0,1383,147,1,0,0,0,1384,1385,5,73,0,0,1385,1392,5,18,0,0,1386,1387,7,6,0,0,1387,1388,5,219,0,0,1388,1389,3,210,105,0,1389,1390,5,229,0,0,1390,1393,1,0,0,0,1391,1393,3,210,105,0,1392,1386,1,0,0,0,1392,1391,1,0,0,0,1393,149,1,0,0,0,1394,1395,5,74,0,0,1395,1396,3,214,107,0,1396,151,1,0,0,0,1397,1398,5,122,0,0,1398,1399,5,18,0,0,1399,1400,3,174,87,0,1400,153,1,0,0,0,1401,1402,5,122,0,0,1402,1403,5,18,0,0,1403,1404,3,210,105,0,1404,155,1,0,0,0,1405,1406,5,99,0,0,1406,1407,3,172,86,0,1407,1408,5,18,0,0,1408,1409,3,210,105,0,1409,157,1,0,0,0,1410,1411,5,99,0,0,1411,1414,3,172,86,0,1412,1413,5,193,0,0,1413,1415,5,167,0,0,1414,1412,1,0,0,0,1414,1415,1,0,0,0,1415,159,1,0,0,0,1416,1417,5,153,0,0,1417,1418,3,180,90,0,1418,161,1,0,0,0,1419,1420,6,81,-1,0,1420,1422,3,224,112,0,1421,1423,5,61,0,0,1422,1421,1,0,0,0,1422,1423,1,0,0,0,1423,1425,1,0,0,0,1424,1426,3,170,85,0,1425,1424,1,0,0,0,1425,1426,1,0,0,0,1426,1432,1,0,0,0,1427,1428,5,219,0,0,1428,1429,3,162,81,0,1429,1430,5,229,0,0,1430,1432,1,0,0,0,1431,1419,1,0,0,0,1431,1427,1,0,0,0,1432,1450,1,0,0,0,1433,1434,10,3,0,0,1434,1435,3,166,83,0,1435,1436,3,162,81,4,1436,1449,1,0,0,0,1437,1439,10,4,0,0,1438,1440,7,8,0,0,1439,1438,1,0,0,0,1439,1440,1,0,0,0,1440,1442,1,0,0,0,1441,1443,3,164,82,0,1442,1441,1,0,0,0,1442,1443,1,0,0,0,1443,1444,1,0,0,0,1444,1445,5,90,0,0,1445,1446,3,162,81,0,1446,1447,3,168,84,0,1447,1449,1,0,0,0,1448,1433,1,0,0,0,1448,1437,1,0,0,0,1449,1452,1,0,0,0,1450,1448,1,0,0,0,1450,1451,1,0,0,0,1451,163,1,0,0,0,1452,1450,1,0,0,0,1453,1455,7,9,0,0,1454,1453,1,0,0,0,1454,1455,1,0,0,0,1455,1456,1,0,0,0,1456,1463,5,84,0,0,1457,1459,5,84,0,0,1458,1460,7,9,0,0,1459,1458,1,0,0,0,1459,1460,1,0,0,0,1460,1463,1,0,0,0,1461,1463,7,9,0,0,1462,1454,1,0,0,0,1462,1457,1,0,0,0,1462,1461,1,0,0,0,1463,1497,1,0,0,0,1464,1466,7,10,0,0,1465,1464,1,0,0,0,1465,1466,1,0,0,0,1466,1467,1,0,0,0,1467,1469,7,11,0,0,1468,1470,5,123,0,0,1469,1468,1,0,0,0,1469,1470,1,0,0,0,1470,1479,1,0,0,0,1471,1473,7,11,0,0,1472,1474,5,123,0,0,1473,1472,1,0,0,0,1473,1474,1,0,0,0,1474,1476,1,0,0,0,1475,1477,7,10,0,0,1476,1475,1,0,0,0,1476,1477,1,0,0,0,1477,1479,1,0,0,0,1478,1465,1,0,0,0,1478,1471,1,0,0,0,1479,1497,1,0,0,0,1480,1482,7,12,0,0,1481,1480,1,0,0,0,1481,1482,1,0,0,0,1482,1483,1,0,0,0,1483,1485,5,69,0,0,1484,1486,5,123,0,0,1485,1484,1,0,0,0,1485,1486,1,0,0,0,1486,1495,1,0,0,0,1487,1489,5,69,0,0,1488,1490,5,123,0,0,1489,1488,1,0,0,0,1489,1490,1,0,0,0,1490,1492,1,0,0,0,1491,1493,7,12,0,0,1492,1491,1,0,0,0,1492,1493,1,0,0,0,1493,1495,1,0,0,0,1494,1481,1,0,0,0,1494,1487,1,0,0,0,1495,1497,1,0,0,0,1496,1462,1,0,0,0,1496,1478,1,0,0,0,1496,1494,1,0,0,0,1497,165,1,0,0,0,1498,1500,7,8,0,0,1499,1498,1,0,0,0,1499,1500,1,0,0,0,1500,1501,1,0,0,0,1501,1502,5,30,0,0,1502,1505,5,90,0,0,1503,1505,5,208,0,0,1504,1499,1,0,0,0,1504,1503,1,0,0,0,1505,167,1,0,0,0,1506,1507,5,119,0,0,1507,1516,3,210,105,0,1508,1509,5,183,0,0,1509,1510,5,219,0,0,1510,1511,3,210,105,0,1511,1512,5,229,0,0,1512,1516,1,0,0,0,1513,1514,5,183,0,0,1514,1516,3,210,105,0,1515,1506,1,0,0,0,1515,1508,1,0,0,0,1515,1513,1,0,0,0,1516,169,1,0,0,0,1517,1518,5,147,0,0,1518,1521,3,178,89,0,1519,1520,5,118,0,0,1520,1522,3,178,89,0,1521,1519,1,0,0,0,1521,1522,1,0,0,0,1522,171,1,0,0,0,1523,1526,3,214,107,0,1524,1525,7,13,0,0,1525,1527,3,214,107,0,1526,1524,1,0,0,0,1526,1527,1,0,0,0,1527,173,1,0,0,0,1528,1533,3,176,88,0,1529,1530,5,208,0,0,1530,1532,3,176,88,0,1531,1529,1,0,0,0,1532,1535,1,0,0,0,1533,1531,1,0,0,0,1533,1534,1,0,0,0,1534,175,1,0,0,0,1535,1533,1,0,0,0,1536,1538,3,214,107,0,1537,1539,7,14,0,0,1538,1537,1,0,0,0,1538,1539,1,0,0,0,1539,1542,1,0,0,0,1540,1541,5,117,0,0,1541,1543,7,15,0,0,1542,1540,1,0,0,0,1542,1543,1,0,0,0,1543,1546,1,0,0,0,1544,1545,5,25,0,0,1545,1547,5,202,0,0,1546,1544,1,0,0,0,1546,1547,1,0,0,0,1547,177,1,0,0,0,1548,1551,3,238,119,0,1549,1550,5,231,0,0,1550,1552,3,238,119,0,1551,1549,1,0,0,0,1551,1552,1,0,0,0,1552,179,1,0,0,0,1553,1558,3,182,91,0,1554,1555,5,208,0,0,1555,1557,3,182,91,0,1556,1554,1,0,0,0,1557,1560,1,0,0,0,1558,1556,1,0,0,0,1558,1559,1,0,0,0,1559,181,1,0,0,0,1560,1558,1,0,0,0,1561,1562,3,250,125,0,1562,1563,5,213,0,0,1563,1564,3,240,120,0,1564,183,1,0,0,0,1565,1567,3,186,93,0,1566,1565,1,0,0,0,1566,1567,1,0,0,0,1567,1569,1,0,0,0,1568,1570,3,188,94,0,1569,1568,1,0,0,0,1569,1570,1,0,0,0,1570,1572,1,0,0,0,1571,1573,3,190,95,0,1572,1571,1,0,0,0,1572,1573,1,0,0,0,1573,185,1,0,0,0,1574,1575,5,126,0,0,1575,1576,5,18,0,0,1576,1577,3,210,105,0,1577,187,1,0,0,0,1578,1579,5,122,0,0,1579,1580,5,18,0,0,1580,1581,3,174,87,0,1581,189,1,0,0,0,1582,1583,7,16,0,0,1583,1584,3,192,96,0,1584,191,1,0,0,0,1585,1592,3,194,97,0,1586,1587,5,16,0,0,1587,1588,3,194,97,0,1588,1589,5,6,0,0,1589,1590,3,194,97,0,1590,1592,1,0,0,0,1591,1585,1,0,0,0,1591,1586,1,0,0,0,1592,193,1,0,0,0,1593,1594,5,32,0,0,1594,1606,5,145,0,0,1595,1596,5,179,0,0,1596,1606,5,130,0,0,1597,1598,5,179,0,0,1598,1606,5,64,0,0,1599,1600,3,238,119,0,1600,1601,5,130,0,0,1601,1606,1,0,0,0,1602,1603,3,238,119,0,1603,1604,5,64,0,0,1604,1606,1,0,0,0,1605,1593,1,0,0,0,1605,1595,1,0,0,0,1605,1597,1,0,0,0,1605,1599,1,0,0,0,1605,1602,1,0,0,0,1606,195,1,0,0,0,1607,1608,5,152,0,0,1608,1609,3,180,90,0,1609,197,1,0,0,0,1610,1611,5,154,0,0,1611,1612,5,29,0,0,1612,1613,5,33,0,0,1613,1653,3,234,117,0,1614,1615,5,154,0,0,1615,1616,5,29,0,0,1616,1617,5,46,0,0,1617,1653,3,228,114,0,1618,1619,5,154,0,0,1619,1621,5,29,0,0,1620,1622,5,164,0,0,1621,1620,1,0,0,0,1621,1622,1,0,0,0,1622,1624,1,0,0,0,1623,1625,5,162,0,0,1624,1623,1,0,0,0,1624,1625,1,0,0,0,1625,1626,1,0,0,0,1626,1653,3,228,114,0,1627,1628,5,154,0,0,1628,1653,5,34,0,0,1629,1630,5,154,0,0,1630,1633,5,45,0,0,1631,1632,5,68,0,0,1632,1634,3,234,117,0,1633,1631,1,0,0,0,1633,1634,1,0,0,0,1634,1653,1,0,0,0,1635,1637,5,154,0,0,1636,1638,5,164,0,0,1637,1636,1,0,0,0,1637,1638,1,0,0,0,1638,1639,1,0,0,0,1639,1642,5,163,0,0,1640,1641,7,17,0,0,1641,1643,3,234,117,0,1642,1640,1,0,0,0,1642,1643,1,0,0,0,1643,1647,1,0,0,0,1644,1645,5,98,0,0,1645,1648,5,202,0,0,1646,1648,3,146,73,0,1647,1644,1,0,0,0,1647,1646,1,0,0,0,1647,1648,1,0,0,0,1648,1650,1,0,0,0,1649,1651,3,158,79,0,1650,1649,1,0,0,0,1650,1651,1,0,0,0,1651,1653,1,0,0,0,1652,1610,1,0,0,0,1652,1614,1,0,0,0,1652,1618,1,0,0,0,1652,1627,1,0,0,0,1652,1629,1,0,0,0,1652,1635,1,0,0,0,1653,199,1,0,0,0,1654,1655,5,161,0,0,1655,1656,5,63,0,0,1656,1657,5,49,0,0,1657,1689,3,228,114,0,1658,1659,5,161,0,0,1659,1660,5,63,0,0,1660,1689,5,102,0,0,1661,1662,5,161,0,0,1662,1663,5,137,0,0,1663,1689,5,45,0,0,1664,1665,5,161,0,0,1665,1666,5,137,0,0,1666,1667,5,46,0,0,1667,1689,3,228,114,0,1668,1669,5,161,0,0,1669,1677,7,18,0,0,1670,1671,5,49,0,0,1671,1678,5,151,0,0,1672,1678,5,60,0,0,1673,1675,5,177,0,0,1674,1673,1,0,0,0,1674,1675,1,0,0,0,1675,1676,1,0,0,0,1676,1678,5,106,0,0,1677,1670,1,0,0,0,1677,1672,1,0,0,0,1677,1674,1,0,0,0,1678,1679,1,0,0,0,1679,1689,3,228,114,0,1680,1681,5,161,0,0,1681,1682,7,18,0,0,1682,1683,5,142,0,0,1683,1689,5,151,0,0,1684,1685,5,161,0,0,1685,1686,5,159,0,0,1686,1687,5,141,0,0,1687,1689,3,228,114,0,1688,1654,1,0,0,0,1688,1658,1,0,0,0,1688,1661,1,0,0,0,1688,1664,1,0,0,0,1688,1668,1,0,0,0,1688,1680,1,0,0,0,1688,1684,1,0,0,0,1689,201,1,0,0,0,1690,1692,5,176,0,0,1691,1693,5,164,0,0,1692,1691,1,0,0,0,1692,1693,1,0,0,0,1693,1695,1,0,0,0,1694,1696,5,162,0,0,1695,1694,1,0,0,0,1695,1696,1,0,0,0,1696,1699,1,0,0,0,1697,1698,5,78,0,0,1698,1700,5,56,0,0,1699,1697,1,0,0,0,1699,1700,1,0,0,0,1700,1701,1,0,0,0,1701,1703,3,228,114,0,1702,1704,3,66,33,0,1703,1702,1,0,0,0,1703,1704,1,0,0,0,1704,203,1,0,0,0,1705,1706,5,182,0,0,1706,1707,3,234,117,0,1707,205,1,0,0,0,1708,1709,5,188,0,0,1709,1711,3,228,114,0,1710,1712,5,55,0,0,1711,1710,1,0,0,0,1711,1712,1,0,0,0,1712,1715,1,0,0,0,1713,1714,5,99,0,0,1714,1716,5,200,0,0,1715,1713,1,0,0,0,1715,1716,1,0,0,0,1716,207,1,0,0,0,1717,1765,3,250,125,0,1718,1719,3,250,125,0,1719,1720,5,219,0,0,1720,1721,3,250,125,0,1721,1728,3,208,104,0,1722,1723,5,208,0,0,1723,1724,3,250,125,0,1724,1725,3,208,104,0,1725,1727,1,0,0,0,1726,1722,1,0,0,0,1727,1730,1,0,0,0,1728,1726,1,0,0,0,1728,1729,1,0,0,0,1729,1731,1,0,0,0,1730,1728,1,0,0,0,1731,1732,5,229,0,0,1732,1765,1,0,0,0,1733,1734,3,250,125,0,1734,1735,5,219,0,0,1735,1740,3,254,127,0,1736,1737,5,208,0,0,1737,1739,3,254,127,0,1738,1736,1,0,0,0,1739,1742,1,0,0,0,1740,1738,1,0,0,0,1740,1741,1,0,0,0,1741,1743,1,0,0,0,1742,1740,1,0,0,0,1743,1744,5,229,0,0,1744,1765,1,0,0,0,1745,1746,3,250,125,0,1746,1747,5,219,0,0,1747,1752,3,208,104,0,1748,1749,5,208,0,0,1749,1751,3,208,104,0,1750,1748,1,0,0,0,1751,1754,1,0,0,0,1752,1750,1,0,0,0,1752,1753,1,0,0,0,1753,1755,1,0,0,0,1754,1752,1,0,0,0,1755,1756,5,229,0,0,1756,1765,1,0,0,0,1757,1758,3,250,125,0,1758,1760,5,219,0,0,1759,1761,3,210,105,0,1760,1759,1,0,0,0,1760,1761,1,0,0,0,1761,1762,1,0,0,0,1762,1763,5,229,0,0,1763,1765,1,0,0,0,1764,1717,1,0,0,0,1764,1718,1,0,0,0,1764,1733,1,0,0,0,1764,1745,1,0,0,0,1764,1757,1,0,0,0,1765,209,1,0,0,0,1766,1771,3,212,106,0,1767,1768,5,208,0,0,1768,1770,3,212,106,0,1769,1767,1,0,0,0,1770,1773,1,0,0,0,1771,1769,1,0,0,0,1771,1772,1,0,0,0,1772,211,1,0,0,0,1773,1771,1,0,0,0,1774,1775,3,228,114,0,1775,1776,5,211,0,0,1776,1778,1,0,0,0,1777,1774,1,0,0,0,1777,1778,1,0,0,0,1778,1779,1,0,0,0,1779,1786,5,204,0,0,1780,1781,5,219,0,0,1781,1782,3,128,64,0,1782,1783,5,229,0,0,1783,1786,1,0,0,0,1784,1786,3,214,107,0,1785,1777,1,0,0,0,1785,1780,1,0,0,0,1785,1784,1,0,0,0,1786,213,1,0,0,0,1787,1788,6,107,-1,0,1788,1790,5,19,0,0,1789,1791,3,214,107,0,1790,1789,1,0,0,0,1790,1791,1,0,0,0,1791,1797,1,0,0,0,1792,1793,5,190,0,0,1793,1794,3,214,107,0,1794,1795,5,166,0,0,1795,1796,3,214,107,0,1796,1798,1,0,0,0,1797,1792,1,0,0,0,1798,1799,1,0,0,0,1799,1797,1,0,0,0,1799,1800,1,0,0,0,1800,1803,1,0,0,0,1801,1802,5,51,0,0,1802,1804,3,214,107,0,1803,1801,1,0,0,0,1803,1804,1,0,0,0,1804,1805,1,0,0,0,1805,1806,5,52,0,0,1806,1917,1,0,0,0,1807,1808,5,20,0,0,1808,1809,5,219,0,0,1809,1810,3,214,107,0,1810,1811,5,10,0,0,1811,1812,3,208,104,0,1812,1813,5,229,0,0,1813,1917,1,0,0,0,1814,1815,5,35,0,0,1815,1917,5,202,0,0,1816,1817,5,59,0,0,1817,1818,5,219,0,0,1818,1819,3,242,121,0,1819,1820,5,68,0,0,1820,1821,3,214,107,0,1821,1822,5,229,0,0,1822,1917,1,0,0,0,1823,1824,5,86,0,0,1824,1825,3,214,107,0,1825,1826,3,242,121,0,1826,1917,1,0,0,0,1827,1828,5,158,0,0,1828,1829,5,219,0,0,1829,1830,3,214,107,0,1830,1831,5,68,0,0,1831,1834,3,214,107,0,1832,1833,5,65,0,0,1833,1835,3,214,107,0,1834,1832,1,0,0,0,1834,1835,1,0,0,0,1835,1836,1,0,0,0,1836,1837,5,229,0,0,1837,1917,1,0,0,0,1838,1839,5,169,0,0,1839,1917,5,202,0,0,1840,1841,5,174,0,0,1841,1842,5,219,0,0,1842,1843,7,19,0,0,1843,1844,5,202,0,0,1844,1845,5,68,0,0,1845,1846,3,214,107,0,1846,1847,5,229,0,0,1847,1917,1,0,0,0,1848,1849,3,250,125,0,1849,1851,5,219,0,0,1850,1852,3,210,105,0,1851,1850,1,0,0,0,1851,1852,1,0,0,0,1852,1853,1,0,0,0,1853,1854,5,229,0,0,1854,1855,1,0,0,0,1855,1856,5,125,0,0,1856,1857,5,219,0,0,1857,1858,3,184,92,0,1858,1859,5,229,0,0,1859,1917,1,0,0,0,1860,1861,3,250,125,0,1861,1863,5,219,0,0,1862,1864,3,210,105,0,1863,1862,1,0,0,0,1863,1864,1,0,0,0,1864,1865,1,0,0,0,1865,1866,5,229,0,0,1866,1867,1,0,0,0,1867,1868,5,125,0,0,1868,1869,3,250,125,0,1869,1917,1,0,0,0,1870,1876,3,250,125,0,1871,1873,5,219,0,0,1872,1874,3,210,105,0,1873,1872,1,0,0,0,1873,1874,1,0,0,0,1874,1875,1,0,0,0,1875,1877,5,229,0,0,1876,1871,1,0,0,0,1876,1877,1,0,0,0,1877,1878,1,0,0,0,1878,1880,5,219,0,0,1879,1881,5,48,0,0,1880,1879,1,0,0,0,1880,1881,1,0,0,0,1881,1883,1,0,0,0,1882,1884,3,216,108,0,1883,1882,1,0,0,0,1883,1884,1,0,0,0,1884,1885,1,0,0,0,1885,1886,5,229,0,0,1886,1917,1,0,0,0,1887,1917,3,240,120,0,1888,1889,5,210,0,0,1889,1917,3,214,107,17,1890,1891,5,115,0,0,1891,1917,3,214,107,12,1892,1893,3,228,114,0,1893,1894,5,211,0,0,1894,1896,1,0,0,0,1895,1892,1,0,0,0,1895,1896,1,0,0,0,1896,1897,1,0,0,0,1897,1917,5,204,0,0,1898,1899,5,219,0,0,1899,1900,3,128,64,0,1900,1901,5,229,0,0,1901,1917,1,0,0,0,1902,1903,5,219,0,0,1903,1904,3,214,107,0,1904,1905,5,229,0,0,1905,1917,1,0,0,0,1906,1907,5,219,0,0,1907,1908,3,210,105,0,1908,1909,5,229,0,0,1909,1917,1,0,0,0,1910,1912,5,217,0,0,1911,1913,3,210,105,0,1912,1911,1,0,0,0,1912,1913,1,0,0,0,1913,1914,1,0,0,0,1914,1917,5,228,0,0,1915,1917,3,222,111,0,1916,1787,1,0,0,0,1916,1807,1,0,0,0,1916,1814,1,0,0,0,1916,1816,1,0,0,0,1916,1823,1,0,0,0,1916,1827,1,0,0,0,1916,1838,1,0,0,0,1916,1840,1,0,0,0,1916,1848,1,0,0,0,1916,1860,1,0,0,0,1916,1870,1,0,0,0,1916,1887,1,0,0,0,1916,1888,1,0,0,0,1916,1890,1,0,0,0,1916,1895,1,0,0,0,1916,1898,1,0,0,0,1916,1902,1,0,0,0,1916,1906,1,0,0,0,1916,1910,1,0,0,0,1916,1915,1,0,0,0,1917,1989,1,0,0,0,1918,1919,10,16,0,0,1919,1920,7,20,0,0,1920,1988,3,214,107,17,1921,1922,10,15,0,0,1922,1923,7,21,0,0,1923,1988,3,214,107,16,1924,1943,10,14,0,0,1925,1944,5,212,0,0,1926,1944,5,213,0,0,1927,1944,5,221,0,0,1928,1944,5,218,0,0,1929,1944,5,214,0,0,1930,1944,5,220,0,0,1931,1944,5,215,0,0,1932,1934,5,71,0,0,1933,1932,1,0,0,0,1933,1934,1,0,0,0,1934,1936,1,0,0,0,1935,1937,5,115,0,0,1936,1935,1,0,0,0,1936,1937,1,0,0,0,1937,1938,1,0,0,0,1938,1944,5,80,0,0,1939,1941,5,115,0,0,1940,1939,1,0,0,0,1940,1941,1,0,0,0,1941,1942,1,0,0,0,1942,1944,7,22,0,0,1943,1925,1,0,0,0,1943,1926,1,0,0,0,1943,1927,1,0,0,0,1943,1928,1,0,0,0,1943,1929,1,0,0,0,1943,1930,1,0,0,0,1943,1931,1,0,0,0,1943,1933,1,0,0,0,1943,1940,1,0,0,0,1944,1945,1,0,0,0,1945,1988,3,214,107,15,1946,1947,10,11,0,0,1947,1948,5,6,0,0,1948,1988,3,214,107,12,1949,1950,10,10,0,0,1950,1951,5,121,0,0,1951,1988,3,214,107,11,1952,1954,10,9,0,0,1953,1955,5,115,0,0,1954,1953,1,0,0,0,1954,1955,1,0,0,0,1955,1956,1,0,0,0,1956,1957,5,16,0,0,1957,1958,3,214,107,0,1958,1959,5,6,0,0,1959,1960,3,214,107,10,1960,1988,1,0,0,0,1961,1962,10,8,0,0,1962,1963,5,224,0,0,1963,1964,3,214,107,0,1964,1965,5,207,0,0,1965,1966,3,214,107,8,1966,1988,1,0,0,0,1967,1968,10,19,0,0,1968,1969,5,217,0,0,1969,1970,3,214,107,0,1970,1971,5,228,0,0,1971,1988,1,0,0,0,1972,1973,10,18,0,0,1973,1974,5,211,0,0,1974,1988,5,200,0,0,1975,1976,10,13,0,0,1976,1978,5,88,0,0,1977,1979,5,115,0,0,1978,1977,1,0,0,0,1978,1979,1,0,0,0,1979,1980,1,0,0,0,1980,1988,5,116,0,0,1981,1985,10,7,0,0,1982,1986,3,248,124,0,1983,1984,5,10,0,0,1984,1986,3,250,125,0,1985,1982,1,0,0,0,1985,1983,1,0,0,0,1986,1988,1,0,0,0,1987,1918,1,0,0,0,1987,1921,1,0,0,0,1987,1924,1,0,0,0,1987,1946,1,0,0,0,1987,1949,1,0,0,0,1987,1952,1,0,0,0,1987,1961,1,0,0,0,1987,1967,1,0,0,0,1987,1972,1,0,0,0,1987,1975,1,0,0,0,1987,1981,1,0,0,0,1988,1991,1,0,0,0,1989,1987,1,0,0,0,1989,1990,1,0,0,0,1990,215,1,0,0,0,1991,1989,1,0,0,0,1992,1997,3,218,109,0,1993,1994,5,208,0,0,1994,1996,3,218,109,0,1995,1993,1,0,0,0,1996,1999,1,0,0,0,1997,1995,1,0,0,0,1997,1998,1,0,0,0,1998,217,1,0,0,0,1999,1997,1,0,0,0,2e3,2003,3,220,110,0,2001,2003,3,214,107,0,2002,2e3,1,0,0,0,2002,2001,1,0,0,0,2003,219,1,0,0,0,2004,2005,5,219,0,0,2005,2010,3,250,125,0,2006,2007,5,208,0,0,2007,2009,3,250,125,0,2008,2006,1,0,0,0,2009,2012,1,0,0,0,2010,2008,1,0,0,0,2010,2011,1,0,0,0,2011,2013,1,0,0,0,2012,2010,1,0,0,0,2013,2014,5,229,0,0,2014,2024,1,0,0,0,2015,2020,3,250,125,0,2016,2017,5,208,0,0,2017,2019,3,250,125,0,2018,2016,1,0,0,0,2019,2022,1,0,0,0,2020,2018,1,0,0,0,2020,2021,1,0,0,0,2021,2024,1,0,0,0,2022,2020,1,0,0,0,2023,2004,1,0,0,0,2023,2015,1,0,0,0,2024,2025,1,0,0,0,2025,2026,5,203,0,0,2026,2027,3,214,107,0,2027,221,1,0,0,0,2028,2029,3,228,114,0,2029,2030,5,211,0,0,2030,2032,1,0,0,0,2031,2028,1,0,0,0,2031,2032,1,0,0,0,2032,2033,1,0,0,0,2033,2036,3,250,125,0,2034,2035,5,211,0,0,2035,2037,3,250,125,0,2036,2034,1,0,0,0,2036,2037,1,0,0,0,2037,223,1,0,0,0,2038,2039,6,112,-1,0,2039,2046,3,228,114,0,2040,2046,3,226,113,0,2041,2042,5,219,0,0,2042,2043,3,128,64,0,2043,2044,5,229,0,0,2044,2046,1,0,0,0,2045,2038,1,0,0,0,2045,2040,1,0,0,0,2045,2041,1,0,0,0,2046,2055,1,0,0,0,2047,2051,10,1,0,0,2048,2052,3,248,124,0,2049,2050,5,10,0,0,2050,2052,3,250,125,0,2051,2048,1,0,0,0,2051,2049,1,0,0,0,2052,2054,1,0,0,0,2053,2047,1,0,0,0,2054,2057,1,0,0,0,2055,2053,1,0,0,0,2055,2056,1,0,0,0,2056,225,1,0,0,0,2057,2055,1,0,0,0,2058,2059,3,250,125,0,2059,2061,5,219,0,0,2060,2062,3,230,115,0,2061,2060,1,0,0,0,2061,2062,1,0,0,0,2062,2063,1,0,0,0,2063,2064,5,229,0,0,2064,227,1,0,0,0,2065,2066,3,234,117,0,2066,2067,5,211,0,0,2067,2069,1,0,0,0,2068,2065,1,0,0,0,2068,2069,1,0,0,0,2069,2070,1,0,0,0,2070,2071,3,250,125,0,2071,229,1,0,0,0,2072,2077,3,232,116,0,2073,2074,5,208,0,0,2074,2076,3,232,116,0,2075,2073,1,0,0,0,2076,2079,1,0,0,0,2077,2075,1,0,0,0,2077,2078,1,0,0,0,2078,231,1,0,0,0,2079,2077,1,0,0,0,2080,2084,3,222,111,0,2081,2084,3,226,113,0,2082,2084,3,240,120,0,2083,2080,1,0,0,0,2083,2081,1,0,0,0,2083,2082,1,0,0,0,2084,233,1,0,0,0,2085,2086,3,250,125,0,2086,235,1,0,0,0,2087,2096,5,198,0,0,2088,2089,5,211,0,0,2089,2096,7,23,0,0,2090,2091,5,200,0,0,2091,2093,5,211,0,0,2092,2094,7,23,0,0,2093,2092,1,0,0,0,2093,2094,1,0,0,0,2094,2096,1,0,0,0,2095,2087,1,0,0,0,2095,2088,1,0,0,0,2095,2090,1,0,0,0,2096,237,1,0,0,0,2097,2099,7,24,0,0,2098,2097,1,0,0,0,2098,2099,1,0,0,0,2099,2106,1,0,0,0,2100,2107,3,236,118,0,2101,2107,5,199,0,0,2102,2107,5,200,0,0,2103,2107,5,201,0,0,2104,2107,5,82,0,0,2105,2107,5,113,0,0,2106,2100,1,0,0,0,2106,2101,1,0,0,0,2106,2102,1,0,0,0,2106,2103,1,0,0,0,2106,2104,1,0,0,0,2106,2105,1,0,0,0,2107,239,1,0,0,0,2108,2112,3,238,119,0,2109,2112,5,202,0,0,2110,2112,5,116,0,0,2111,2108,1,0,0,0,2111,2109,1,0,0,0,2111,2110,1,0,0,0,2112,241,1,0,0,0,2113,2114,7,25,0,0,2114,243,1,0,0,0,2115,2116,7,26,0,0,2116,245,1,0,0,0,2117,2118,7,27,0,0,2118,247,1,0,0,0,2119,2122,5,197,0,0,2120,2122,3,246,123,0,2121,2119,1,0,0,0,2121,2120,1,0,0,0,2122,249,1,0,0,0,2123,2127,5,197,0,0,2124,2127,3,242,121,0,2125,2127,3,244,122,0,2126,2123,1,0,0,0,2126,2124,1,0,0,0,2126,2125,1,0,0,0,2127,251,1,0,0,0,2128,2131,3,250,125,0,2129,2131,5,116,0,0,2130,2128,1,0,0,0,2130,2129,1,0,0,0,2131,253,1,0,0,0,2132,2133,5,202,0,0,2133,2134,5,213,0,0,2134,2135,3,238,119,0,2135,255,1,0,0,0,280,257,263,269,275,279,282,285,307,310,318,323,336,345,352,360,365,372,377,384,389,395,401,406,412,417,423,428,434,448,455,462,469,475,480,486,491,497,506,516,526,546,554,569,576,590,596,602,608,611,617,620,623,629,633,636,639,642,645,652,656,664,667,673,677,680,691,695,698,703,705,708,711,721,725,728,731,736,738,745,751,755,758,761,771,779,805,807,811,833,835,846,849,858,875,886,904,917,934,943,970,972,993,998,1003,1006,1018,1023,1027,1030,1034,1038,1043,1046,1050,1052,1074,1082,1085,1095,1099,1107,1111,1116,1120,1124,1128,1132,1134,1142,1146,1149,1172,1177,1182,1185,1195,1205,1209,1214,1220,1225,1231,1235,1241,1244,1247,1250,1264,1268,1272,1277,1280,1290,1298,1301,1305,1308,1312,1315,1318,1321,1324,1327,1331,1335,1338,1341,1344,1347,1350,1359,1365,1392,1414,1422,1425,1431,1439,1442,1448,1450,1454,1459,1462,1465,1469,1473,1476,1478,1481,1485,1489,1492,1494,1496,1499,1504,1515,1521,1526,1533,1538,1542,1546,1551,1558,1566,1569,1572,1591,1605,1621,1624,1633,1637,1642,1647,1650,1652,1674,1677,1688,1692,1695,1699,1703,1711,1715,1728,1740,1752,1760,1764,1771,1777,1785,1790,1799,1803,1834,1851,1863,1873,1876,1880,1883,1895,1912,1916,1933,1936,1940,1943,1954,1978,1985,1987,1989,1997,2002,2010,2020,2023,2031,2036,2045,2051,2055,2061,2068,2077,2083,2093,2095,2098,2106,2111,2121,2126,2130],Zi.vocabulary=new Ra(Zi.literalNames,Zi.symbolicNames,[]),Zi.decisionsToDFA=Zi._ATN.decisionToState.map(((t,e)=>new ni(t,e))),Zi),_G=class extends ga{constructor(t,e){super(t,e)}EOF(){return this.getToken(CG.EOF,0)}statements(){return this.getRuleContext(0,PG)}get ruleIndex(){return CG.RULE_root}accept(t){return t.visitRoot?t.visitRoot(this):t.visitChildren(this)}},PG=class t extends ga{constructor(t,e){super(t,e)}statement(){return this.getRuleContext(0,MG)}SEMICOLON(){return this.getToken(CG.SEMICOLON,0)}statements(){return this.getRuleContext(0,t)}get ruleIndex(){return CG.RULE_statements}accept(t){return t.visitStatements?t.visitStatements(this):t.visitChildren(this)}},MG=class extends ga{constructor(t,e){super(t,e)}notInsertStatement(){return this.getRuleContext(0,dG)}INTO(){return this.getToken(CG.INTO,0)}OUTFILE(){return this.getToken(CG.OUTFILE,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}FORMAT(){return this.getToken(CG.FORMAT,0)}identifierOrNull(){return this.getRuleContext(0,by)}SEMICOLON(){return this.getToken(CG.SEMICOLON,0)}insertStatement(){return this.getRuleContext(0,uv)}get ruleIndex(){return CG.RULE_statement}accept(t){return t.visitStatement?t.visitStatement(this):t.visitChildren(this)}},dG=class extends ga{constructor(t,e){super(t,e)}alterStatement(){return this.getRuleContext(0,pG)}attachStatement(){return this.getRuleContext(0,TF)}checkStatement(){return this.getRuleContext(0,RF)}createStatement(){return this.getRuleContext(0,LF)}describeStatement(){return this.getRuleContext(0,av)}deleteStatement(){return this.getRuleContext(0,AF)}dropStatement(){return this.getRuleContext(0,rv)}existsStatement(){return this.getRuleContext(0,nv)}explainStatement(){return this.getRuleContext(0,Tv)}killStatement(){return this.getRuleContext(0,dv)}optimizeStatement(){return this.getRuleContext(0,mv)}renameStatement(){return this.getRuleContext(0,Dv)}selectUnionStatement(){return this.getRuleContext(0,gv)}setStatement(){return this.getRuleContext(0,NB)}showStatement(){return this.getRuleContext(0,LB)}systemStatement(){return this.getRuleContext(0,mB)}truncateStatement(){return this.getRuleContext(0,DB)}useStatement(){return this.getRuleContext(0,pB)}watchStatement(){return this.getRuleContext(0,gB)}selectStatement(){return this.getRuleContext(0,kv)}commonTableExpressionStatement(){return this.getRuleContext(0,UG)}get ruleIndex(){return CG.RULE_notInsertStatement}accept(t){return t.visitNotInsertStatement?t.visitNotInsertStatement(this):t.visitChildren(this)}},UG=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(CG.WITH,0)}namedQuery(t){return void 0===t?this.getRuleContexts(mG):this.getRuleContext(t,mG)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_commonTableExpressionStatement}accept(t){return t.visitCommonTableExpressionStatement?t.visitCommonTableExpressionStatement(this):t.visitChildren(this)}},mG=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(CG.AS,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}notInsertStatement(){return this.getRuleContext(0,dG)}RPAREN(){return this.getToken(CG.RPAREN,0)}identifier(){return this.getRuleContext(0,wy)}columnAliases(){return this.getRuleContext(0,DG)}get ruleIndex(){return CG.RULE_namedQuery}accept(t){return t.visitNamedQuery?t.visitNamedQuery(this):t.visitChildren(this)}},DG=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(CG.LPAREN,0)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_columnAliases}accept(t){return t.visitColumnAliases?t.visitColumnAliases(this):t.visitChildren(this)}},pG=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_alterStatement}copyFrom(t){super.copyFrom(t)}},gG=class extends pG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ALTER(){return this.getToken(CG.ALTER,0)}TABLE(){return this.getToken(CG.TABLE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}alterTableClause(t){return void 0===t?this.getRuleContexts(xG):this.getRuleContext(t,xG)}clusterClause(){return this.getRuleContext(0,xF)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}accept(t){return t.visitAlterTableStatement?t.visitAlterTableStatement(this):t.visitChildren(this)}},xG=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_alterTableClause}copyFrom(t){super.copyFrom(t)}},kG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REPLACE(){return this.getToken(CG.REPLACE,0)}partitionClause(){return this.getRuleContext(0,EF)}FROM(){return this.getToken(CG.FROM,0)}tableIdentifier(){return this.getRuleContext(0,gy)}accept(t){return t.visitAlterTableClauseReplace?t.visitAlterTableClauseReplace(this):t.visitChildren(this)}},HG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(CG.MODIFY,0)}ORDER(){return this.getToken(CG.ORDER,0)}BY(){return this.getToken(CG.BY,0)}columnExpression(){return this.getRuleContext(0,bB)}accept(t){return t.visitAlterTableClauseModifyOrderBy?t.visitAlterTableClauseModifyOrderBy(this):t.visitChildren(this)}},GG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}UPDATE(){return this.getToken(CG.UPDATE,0)}assignmentExpressionList(){return this.getRuleContext(0,cF)}whereClause(){return this.getRuleContext(0,fv)}accept(t){return t.visitAlterTableClauseUpdate?t.visitAlterTableClauseUpdate(this):t.visitChildren(this)}},FG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CLEAR(){return this.getToken(CG.CLEAR,0)}PROJECTION(){return this.getToken(CG.PROJECTION,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}IN(){return this.getToken(CG.IN,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseClearProjection?t.visitAlterTableClauseClearProjection(this):t.visitChildren(this)}},vG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(CG.MODIFY,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(){return this.getRuleContext(0,Py)}REMOVE(){return this.getToken(CG.REMOVE,0)}tableColumnPropertyType(){return this.getRuleContext(0,hF)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseModifyRemove?t.visitAlterTableClauseModifyRemove(this):t.visitChildren(this)}},BG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DELETE(){return this.getToken(CG.DELETE,0)}WHERE(){return this.getToken(CG.WHERE,0)}columnExpression(){return this.getRuleContext(0,bB)}accept(t){return t.visitAlterTableClauseDelete?t.visitAlterTableClauseDelete(this):t.visitChildren(this)}},yG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}COMMENT(){return this.getToken(CG.COMMENT,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(){return this.getRuleContext(0,Py)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseComment?t.visitAlterTableClauseComment(this):t.visitChildren(this)}},fG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(CG.DROP,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseDropColumn?t.visitAlterTableClauseDropColumn(this):t.visitChildren(this)}},YG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DETACH(){return this.getToken(CG.DETACH,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseDetach?t.visitAlterTableClauseDetach(this):t.visitChildren(this)}},wG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(CG.ADD,0)}INDEX(){return this.getToken(CG.INDEX,0)}tableIndexDefinition(){return this.getRuleContext(0,zF)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}AFTER(){return this.getToken(CG.AFTER,0)}columnIdentifier(){return this.getRuleContext(0,Py)}accept(t){return t.visitAlterTableClauseAddIndex?t.visitAlterTableClauseAddIndex(this):t.visitChildren(this)}},bG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(CG.DROP,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseDropPartition?t.visitAlterTableClauseDropPartition(this):t.visitChildren(this)}},WG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MATERIALIZE(){return this.getToken(CG.MATERIALIZE,0)}INDEX(){return this.getToken(CG.INDEX,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}IN(){return this.getToken(CG.IN,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseMaterializeIndex?t.visitAlterTableClauseMaterializeIndex(this):t.visitChildren(this)}},VG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MATERIALIZE(){return this.getToken(CG.MATERIALIZE,0)}PROJECTION(){return this.getToken(CG.PROJECTION,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}IN(){return this.getToken(CG.IN,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseMaterializeProjection?t.visitAlterTableClauseMaterializeProjection(this):t.visitChildren(this)}},XG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MOVE(){return this.getToken(CG.MOVE,0)}partitionClause(){return this.getRuleContext(0,EF)}TO(){return this.getToken(CG.TO,0)}DISK(){return this.getToken(CG.DISK,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}VOLUME(){return this.getToken(CG.VOLUME,0)}TABLE(){return this.getToken(CG.TABLE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}accept(t){return t.visitAlterTableClauseMovePartition?t.visitAlterTableClauseMovePartition(this):t.visitChildren(this)}},KG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}RENAME(){return this.getToken(CG.RENAME,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(t){return void 0===t?this.getRuleContexts(Py):this.getRuleContext(t,Py)}TO(){return this.getToken(CG.TO,0)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseRename?t.visitAlterTableClauseRename(this):t.visitChildren(this)}},QG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FREEZE(){return this.getToken(CG.FREEZE,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseFreezePartition?t.visitAlterTableClauseFreezePartition(this):t.visitChildren(this)}},JG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CLEAR(){return this.getToken(CG.CLEAR,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}IN(){return this.getToken(CG.IN,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseClearColumn?t.visitAlterTableClauseClearColumn(this):t.visitChildren(this)}},ZG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(CG.MODIFY,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}tableColumnDefinition(){return this.getRuleContext(0,qF)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseModify?t.visitAlterTableClauseModify(this):t.visitChildren(this)}},qG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CLEAR(){return this.getToken(CG.CLEAR,0)}INDEX(){return this.getToken(CG.INDEX,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}IN(){return this.getToken(CG.IN,0)}partitionClause(){return this.getRuleContext(0,EF)}accept(t){return t.visitAlterTableClauseClearIndex?t.visitAlterTableClauseClearIndex(this):t.visitChildren(this)}},jG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}REMOVE(){return this.getToken(CG.REMOVE,0)}TTL(){return this.getToken(CG.TTL,0)}accept(t){return t.visitAlterTableClauseRemoveTTL?t.visitAlterTableClauseRemoveTTL(this):t.visitChildren(this)}},zG=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(CG.MODIFY,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(){return this.getRuleContext(0,Py)}codecExpression(){return this.getRuleContext(0,tv)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseModifyCodec?t.visitAlterTableClauseModifyCodec(this):t.visitChildren(this)}},$G=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ATTACH(){return this.getToken(CG.ATTACH,0)}partitionClause(){return this.getRuleContext(0,EF)}FROM(){return this.getToken(CG.FROM,0)}tableIdentifier(){return this.getRuleContext(0,gy)}accept(t){return t.visitAlterTableClauseAttach?t.visitAlterTableClauseAttach(this):t.visitChildren(this)}},tF=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(CG.DROP,0)}PROJECTION(){return this.getToken(CG.PROJECTION,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseDropProjection?t.visitAlterTableClauseDropProjection(this):t.visitChildren(this)}},eF=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DROP(){return this.getToken(CG.DROP,0)}INDEX(){return this.getToken(CG.INDEX,0)}columnIdentifier(){return this.getRuleContext(0,Py)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseDropIndex?t.visitAlterTableClauseDropIndex(this):t.visitChildren(this)}},sF=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(CG.MODIFY,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}columnIdentifier(){return this.getRuleContext(0,Py)}COMMENT(){return this.getToken(CG.COMMENT,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}accept(t){return t.visitAlterTableClauseModifyComment?t.visitAlterTableClauseModifyComment(this):t.visitChildren(this)}},aF=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}MODIFY(){return this.getToken(CG.MODIFY,0)}ttlClause(){return this.getRuleContext(0,WF)}accept(t){return t.visitAlterTableClauseModifyTTL?t.visitAlterTableClauseModifyTTL(this):t.visitChildren(this)}},rF=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(CG.ADD,0)}PROJECTION(){return this.getToken(CG.PROJECTION,0)}tableProjectionDefinition(){return this.getRuleContext(0,$F)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}AFTER(){return this.getToken(CG.AFTER,0)}columnIdentifier(){return this.getRuleContext(0,Py)}accept(t){return t.visitAlterTableClauseAddProjection?t.visitAlterTableClauseAddProjection(this):t.visitChildren(this)}},iF=class extends xG{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ADD(){return this.getToken(CG.ADD,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}tableColumnDefinition(){return this.getRuleContext(0,qF)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}AFTER(){return this.getToken(CG.AFTER,0)}columnIdentifier(){return this.getRuleContext(0,Py)}accept(t){return t.visitAlterTableClauseAddColumn?t.visitAlterTableClauseAddColumn(this):t.visitChildren(this)}},cF=class extends ga{constructor(t,e){super(t,e)}assignmentExpression(t){return void 0===t?this.getRuleContexts(nF):this.getRuleContext(t,nF)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_assignmentExpressionList}accept(t){return t.visitAssignmentExpressionList?t.visitAssignmentExpressionList(this):t.visitChildren(this)}},nF=class extends ga{constructor(t,e){super(t,e)}columnIdentifier(){return this.getRuleContext(0,Py)}EQ_SINGLE(){return this.getToken(CG.EQ_SINGLE,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_assignmentExpression}accept(t){return t.visitAssignmentExpression?t.visitAssignmentExpression(this):t.visitChildren(this)}},hF=class extends ga{constructor(t,e){super(t,e)}ALIAS(){return this.getToken(CG.ALIAS,0)}CODEC(){return this.getToken(CG.CODEC,0)}COMMENT(){return this.getToken(CG.COMMENT,0)}DEFAULT(){return this.getToken(CG.DEFAULT,0)}MATERIALIZED(){return this.getToken(CG.MATERIALIZED,0)}TTL(){return this.getToken(CG.TTL,0)}get ruleIndex(){return CG.RULE_tableColumnPropertyType}accept(t){return t.visitTableColumnPropertyType?t.visitTableColumnPropertyType(this):t.visitChildren(this)}},EF=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(CG.PARTITION,0)}columnExpression(){return this.getRuleContext(0,bB)}ID(){return this.getToken(CG.ID,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}get ruleIndex(){return CG.RULE_partitionClause}accept(t){return t.visitPartitionClause?t.visitPartitionClause(this):t.visitChildren(this)}},TF=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_attachStatement}copyFrom(t){super.copyFrom(t)}},oF=class extends TF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ATTACH(){return this.getToken(CG.ATTACH,0)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}tableIdentifier(){return this.getRuleContext(0,gy)}clusterClause(){return this.getRuleContext(0,xF)}accept(t){return t.visitAttachDictionaryStatement?t.visitAttachDictionaryStatement(this):t.visitChildren(this)}},RF=class extends ga{constructor(t,e){super(t,e)}CHECK(){return this.getToken(CG.CHECK,0)}TABLE(){return this.getToken(CG.TABLE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}partitionClause(){return this.getRuleContext(0,EF)}get ruleIndex(){return CG.RULE_checkStatement}accept(t){return t.visitCheckStatement?t.visitCheckStatement(this):t.visitChildren(this)}},AF=class extends ga{constructor(t,e){super(t,e)}DELETE(){return this.getToken(CG.DELETE,0)}FROM(){return this.getToken(CG.FROM,0)}tableIdentifier(){return this.getRuleContext(0,gy)}clusterClause(){return this.getRuleContext(0,xF)}whereClause(){return this.getRuleContext(0,fv)}get ruleIndex(){return CG.RULE_deleteStatement}accept(t){return t.visitDeleteStatement?t.visitDeleteStatement(this):t.visitChildren(this)}},SF=class extends ga{constructor(t,e){super(t,e)}TABLE(){return this.getToken(CG.TABLE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}ATTACH(){return this.getToken(CG.ATTACH,0)}CREATE(){return this.getToken(CG.CREATE,0)}REPLACE(){return this.getToken(CG.REPLACE,0)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}uuidClause(){return this.getRuleContext(0,kF)}clusterClause(){return this.getRuleContext(0,xF)}tableSchemaClause(){return this.getRuleContext(0,FF)}engineClause(){return this.getRuleContext(0,fF)}subqueryClause(){return this.getRuleContext(0,GF)}OR(){return this.getToken(CG.OR,0)}get ruleIndex(){return CG.RULE_createTableStatement}accept(t){return t.visitCreateTableStatement?t.visitCreateTableStatement(this):t.visitChildren(this)}},lF=class extends ga{constructor(t,e){super(t,e)}DATABASE(){return this.getToken(CG.DATABASE,0)}identifier(){return this.getRuleContext(0,wy)}engineExpression(){return this.getRuleContext(0,VF)}ATTACH(){return this.getToken(CG.ATTACH,0)}CREATE(){return this.getToken(CG.CREATE,0)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}clusterClause(){return this.getRuleContext(0,xF)}get ruleIndex(){return CG.RULE_createDatabaseStatement}accept(t){return t.visitCreateDatabaseStatement?t.visitCreateDatabaseStatement(this):t.visitChildren(this)}},OF=class extends ga{constructor(t,e){super(t,e)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}tableIdentifier(){return this.getRuleContext(0,gy)}dictionarySchemaClause(){return this.getRuleContext(0,CF)}dictionaryEngineClause(){return this.getRuleContext(0,PF)}ATTACH(){return this.getToken(CG.ATTACH,0)}CREATE(){return this.getToken(CG.CREATE,0)}REPLACE(){return this.getToken(CG.REPLACE,0)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}uuidClause(){return this.getRuleContext(0,kF)}clusterClause(){return this.getRuleContext(0,xF)}OR(){return this.getToken(CG.OR,0)}get ruleIndex(){return CG.RULE_createDictionaryStatement}accept(t){return t.visitCreateDictionaryStatement?t.visitCreateDictionaryStatement(this):t.visitChildren(this)}},IF=class extends ga{constructor(t,e){super(t,e)}LIVE(){return this.getToken(CG.LIVE,0)}VIEW(){return this.getToken(CG.VIEW,0)}tableIdentifier(){return this.getRuleContext(0,gy)}subqueryClause(){return this.getRuleContext(0,GF)}ATTACH(){return this.getToken(CG.ATTACH,0)}CREATE(){return this.getToken(CG.CREATE,0)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}uuidClause(){return this.getRuleContext(0,kF)}clusterClause(){return this.getRuleContext(0,xF)}WITH(){return this.getToken(CG.WITH,0)}TIMEOUT(){return this.getToken(CG.TIMEOUT,0)}destinationClause(){return this.getRuleContext(0,HF)}tableSchemaClause(){return this.getRuleContext(0,FF)}DECIMAL_LITERAL(){return this.getToken(CG.DECIMAL_LITERAL,0)}get ruleIndex(){return CG.RULE_createLiveViewStatement}accept(t){return t.visitCreateLiveViewStatement?t.visitCreateLiveViewStatement(this):t.visitChildren(this)}},uF=class extends ga{constructor(t,e){super(t,e)}MATERIALIZED(){return this.getToken(CG.MATERIALIZED,0)}VIEW(){return this.getToken(CG.VIEW,0)}tableIdentifier(){return this.getRuleContext(0,gy)}subqueryClause(){return this.getRuleContext(0,GF)}ATTACH(){return this.getToken(CG.ATTACH,0)}CREATE(){return this.getToken(CG.CREATE,0)}destinationClause(){return this.getRuleContext(0,HF)}engineClause(){return this.getRuleContext(0,fF)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}uuidClause(){return this.getRuleContext(0,kF)}clusterClause(){return this.getRuleContext(0,xF)}tableSchemaClause(){return this.getRuleContext(0,FF)}POPULATE(){return this.getToken(CG.POPULATE,0)}get ruleIndex(){return CG.RULE_createMaterializedViewStatement}accept(t){return t.visitCreateMaterializedViewStatement?t.visitCreateMaterializedViewStatement(this):t.visitChildren(this)}},NF=class extends ga{constructor(t,e){super(t,e)}VIEW(){return this.getToken(CG.VIEW,0)}tableIdentifier(){return this.getRuleContext(0,gy)}subqueryClause(){return this.getRuleContext(0,GF)}ATTACH(){return this.getToken(CG.ATTACH,0)}CREATE(){return this.getToken(CG.CREATE,0)}OR(){return this.getToken(CG.OR,0)}REPLACE(){return this.getToken(CG.REPLACE,0)}IF(){return this.getToken(CG.IF,0)}NOT(){return this.getToken(CG.NOT,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}uuidClause(){return this.getRuleContext(0,kF)}clusterClause(){return this.getRuleContext(0,xF)}tableSchemaClause(){return this.getRuleContext(0,FF)}get ruleIndex(){return CG.RULE_createViewStatement}accept(t){return t.visitCreateViewStatement?t.visitCreateViewStatement(this):t.visitChildren(this)}},LF=class extends ga{constructor(t,e){super(t,e)}createDatabaseStatement(){return this.getRuleContext(0,lF)}createDictionaryStatement(){return this.getRuleContext(0,OF)}createLiveViewStatement(){return this.getRuleContext(0,IF)}createMaterializedViewStatement(){return this.getRuleContext(0,uF)}createTableStatement(){return this.getRuleContext(0,SF)}createViewStatement(){return this.getRuleContext(0,NF)}get ruleIndex(){return CG.RULE_createStatement}accept(t){return t.visitCreateStatement?t.visitCreateStatement(this):t.visitChildren(this)}},CF=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(CG.LPAREN,0)}dictionaryAttributeDefinition(t){return void 0===t?this.getRuleContexts(_F):this.getRuleContext(t,_F)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_dictionarySchemaClause}accept(t){return t.visitDictionarySchemaClause?t.visitDictionarySchemaClause(this):t.visitChildren(this)}},_F=class extends ga{constructor(t,e){super(t,e),this.attrs=new Set}identifier(){return this.getRuleContext(0,wy)}columnTypeExpression(){return this.getRuleContext(0,xB)}DEFAULT(t){return void 0===t?this.getTokens(CG.DEFAULT):this.getToken(CG.DEFAULT,t)}literal(t){return void 0===t?this.getRuleContexts(vy):this.getRuleContext(t,vy)}EXPRESSION(t){return void 0===t?this.getTokens(CG.EXPRESSION):this.getToken(CG.EXPRESSION,t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}HIERARCHICAL(t){return void 0===t?this.getTokens(CG.HIERARCHICAL):this.getToken(CG.HIERARCHICAL,t)}INJECTIVE(t){return void 0===t?this.getTokens(CG.INJECTIVE):this.getToken(CG.INJECTIVE,t)}IS_OBJECT_ID(t){return void 0===t?this.getTokens(CG.IS_OBJECT_ID):this.getToken(CG.IS_OBJECT_ID,t)}get ruleIndex(){return CG.RULE_dictionaryAttributeDefinition}accept(t){return t.visitDictionaryAttributeDefinition?t.visitDictionaryAttributeDefinition(this):t.visitChildren(this)}},PF=class extends ga{constructor(t,e){super(t,e),this.clauses=new Set}dictionaryPrimaryKeyClause(){return this.getRuleContext(0,MF)}sourceClause(t){return void 0===t?this.getRuleContexts(UF):this.getRuleContext(t,UF)}lifetimeClause(t){return void 0===t?this.getRuleContexts(mF):this.getRuleContext(t,mF)}layoutClause(t){return void 0===t?this.getRuleContexts(DF):this.getRuleContext(t,DF)}rangeClause(t){return void 0===t?this.getRuleContexts(pF):this.getRuleContext(t,pF)}dictionarySettingsClause(t){return void 0===t?this.getRuleContexts(gF):this.getRuleContext(t,gF)}get ruleIndex(){return CG.RULE_dictionaryEngineClause}accept(t){return t.visitDictionaryEngineClause?t.visitDictionaryEngineClause(this):t.visitChildren(this)}},MF=class extends ga{constructor(t,e){super(t,e)}PRIMARY(){return this.getToken(CG.PRIMARY,0)}KEY(){return this.getToken(CG.KEY,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_dictionaryPrimaryKeyClause}accept(t){return t.visitDictionaryPrimaryKeyClause?t.visitDictionaryPrimaryKeyClause(this):t.visitChildren(this)}},dF=class extends ga{constructor(t,e){super(t,e)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}literal(){return this.getRuleContext(0,vy)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}get ruleIndex(){return CG.RULE_dictionaryArgumentExpression}accept(t){return t.visitDictionaryArgumentExpression?t.visitDictionaryArgumentExpression(this):t.visitChildren(this)}},UF=class extends ga{constructor(t,e){super(t,e)}SOURCE(){return this.getToken(CG.SOURCE,0)}LPAREN(t){return void 0===t?this.getTokens(CG.LPAREN):this.getToken(CG.LPAREN,t)}identifier(){return this.getRuleContext(0,wy)}RPAREN(t){return void 0===t?this.getTokens(CG.RPAREN):this.getToken(CG.RPAREN,t)}dictionaryArgumentExpression(t){return void 0===t?this.getRuleContexts(dF):this.getRuleContext(t,dF)}get ruleIndex(){return CG.RULE_sourceClause}accept(t){return t.visitSourceClause?t.visitSourceClause(this):t.visitChildren(this)}},mF=class extends ga{constructor(t,e){super(t,e)}LIFETIME(){return this.getToken(CG.LIFETIME,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}DECIMAL_LITERAL(t){return void 0===t?this.getTokens(CG.DECIMAL_LITERAL):this.getToken(CG.DECIMAL_LITERAL,t)}MIN(){return this.getToken(CG.MIN,0)}MAX(){return this.getToken(CG.MAX,0)}get ruleIndex(){return CG.RULE_lifetimeClause}accept(t){return t.visitLifetimeClause?t.visitLifetimeClause(this):t.visitChildren(this)}},DF=class extends ga{constructor(t,e){super(t,e)}LAYOUT(){return this.getToken(CG.LAYOUT,0)}LPAREN(t){return void 0===t?this.getTokens(CG.LPAREN):this.getToken(CG.LPAREN,t)}identifier(){return this.getRuleContext(0,wy)}RPAREN(t){return void 0===t?this.getTokens(CG.RPAREN):this.getToken(CG.RPAREN,t)}dictionaryArgumentExpression(t){return void 0===t?this.getRuleContexts(dF):this.getRuleContext(t,dF)}get ruleIndex(){return CG.RULE_layoutClause}accept(t){return t.visitLayoutClause?t.visitLayoutClause(this):t.visitChildren(this)}},pF=class extends ga{constructor(t,e){super(t,e)}RANGE(){return this.getToken(CG.RANGE,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}MIN(){return this.getToken(CG.MIN,0)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}MAX(){return this.getToken(CG.MAX,0)}get ruleIndex(){return CG.RULE_rangeClause}accept(t){return t.visitRangeClause?t.visitRangeClause(this):t.visitChildren(this)}},gF=class extends ga{constructor(t,e){super(t,e)}SETTINGS(){return this.getToken(CG.SETTINGS,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}settingExpressionList(){return this.getRuleContext(0,EB)}RPAREN(){return this.getToken(CG.RPAREN,0)}get ruleIndex(){return CG.RULE_dictionarySettingsClause}accept(t){return t.visitDictionarySettingsClause?t.visitDictionarySettingsClause(this):t.visitChildren(this)}},xF=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(CG.ON,0)}CLUSTER(){return this.getToken(CG.CLUSTER,0)}identifier(){return this.getRuleContext(0,wy)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}get ruleIndex(){return CG.RULE_clusterClause}accept(t){return t.visitClusterClause?t.visitClusterClause(this):t.visitChildren(this)}},kF=class extends ga{constructor(t,e){super(t,e)}UUID(){return this.getToken(CG.UUID,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}get ruleIndex(){return CG.RULE_uuidClause}accept(t){return t.visitUuidClause?t.visitUuidClause(this):t.visitChildren(this)}},HF=class extends ga{constructor(t,e){super(t,e)}TO(){return this.getToken(CG.TO,0)}tableIdentifier(){return this.getRuleContext(0,gy)}get ruleIndex(){return CG.RULE_destinationClause}accept(t){return t.visitDestinationClause?t.visitDestinationClause(this):t.visitChildren(this)}},GF=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(CG.AS,0)}selectUnionStatement(){return this.getRuleContext(0,gv)}get ruleIndex(){return CG.RULE_subqueryClause}accept(t){return t.visitSubqueryClause?t.visitSubqueryClause(this):t.visitChildren(this)}},FF=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_tableSchemaClause}copyFrom(t){super.copyFrom(t)}},vF=class extends FF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AS(){return this.getToken(CG.AS,0)}tableIdentifier(){return this.getRuleContext(0,gy)}accept(t){return t.visitSchemaAsTableClause?t.visitSchemaAsTableClause(this):t.visitChildren(this)}},BF=class extends FF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}AS(){return this.getToken(CG.AS,0)}tableFunctionExpression(){return this.getRuleContext(0,py)}accept(t){return t.visitSchemaAsFunctionClause?t.visitSchemaAsFunctionClause(this):t.visitChildren(this)}},yF=class extends FF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}tableElementExpression(t){return void 0===t?this.getRuleContexts(XF):this.getRuleContext(t,XF)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}accept(t){return t.visitSchemaDescriptionClause?t.visitSchemaDescriptionClause(this):t.visitChildren(this)}},fF=class extends ga{constructor(t,e){super(t,e),this.clauses=new Set}engineExpression(){return this.getRuleContext(0,VF)}orderByClause(t){return void 0===t?this.getRuleContexts(bv):this.getRuleContext(t,bv)}partitionByClause(t){return void 0===t?this.getRuleContexts(YF):this.getRuleContext(t,YF)}primaryKeyClause(t){return void 0===t?this.getRuleContexts(wF):this.getRuleContext(t,wF)}sampleByClause(t){return void 0===t?this.getRuleContexts(bF):this.getRuleContext(t,bF)}ttlClause(t){return void 0===t?this.getRuleContexts(WF):this.getRuleContext(t,WF)}settingsClause(t){return void 0===t?this.getRuleContexts(Kv):this.getRuleContext(t,Kv)}get ruleIndex(){return CG.RULE_engineClause}accept(t){return t.visitEngineClause?t.visitEngineClause(this):t.visitChildren(this)}},YF=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(CG.PARTITION,0)}BY(){return this.getToken(CG.BY,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_partitionByClause}accept(t){return t.visitPartitionByClause?t.visitPartitionByClause(this):t.visitChildren(this)}},wF=class extends ga{constructor(t,e){super(t,e)}PRIMARY(){return this.getToken(CG.PRIMARY,0)}KEY(){return this.getToken(CG.KEY,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_primaryKeyClause}accept(t){return t.visitPrimaryKeyClause?t.visitPrimaryKeyClause(this):t.visitChildren(this)}},bF=class extends ga{constructor(t,e){super(t,e)}SAMPLE(){return this.getToken(CG.SAMPLE,0)}BY(){return this.getToken(CG.BY,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_sampleByClause}accept(t){return t.visitSampleByClause?t.visitSampleByClause(this):t.visitChildren(this)}},WF=class extends ga{constructor(t,e){super(t,e)}TTL(){return this.getToken(CG.TTL,0)}ttlExpression(t){return void 0===t?this.getRuleContexts(sv):this.getRuleContext(t,sv)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_ttlClause}accept(t){return t.visitTtlClause?t.visitTtlClause(this):t.visitChildren(this)}},VF=class extends ga{constructor(t,e){super(t,e)}ENGINE(){return this.getToken(CG.ENGINE,0)}identifierOrNull(){return this.getRuleContext(0,by)}EQ_SINGLE(){return this.getToken(CG.EQ_SINGLE,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_engineExpression}accept(t){return t.visitEngineExpression?t.visitEngineExpression(this):t.visitChildren(this)}},XF=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_tableElementExpression}copyFrom(t){super.copyFrom(t)}},KF=class extends XF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableColumnDefinition(){return this.getRuleContext(0,qF)}accept(t){return t.visitTableElementExpressionColumn?t.visitTableElementExpressionColumn(this):t.visitChildren(this)}},QF=class extends XF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CONSTRAINT(){return this.getToken(CG.CONSTRAINT,0)}identifier(){return this.getRuleContext(0,wy)}CHECK(){return this.getToken(CG.CHECK,0)}columnExpression(){return this.getRuleContext(0,bB)}accept(t){return t.visitTableElementExpressionConstraint?t.visitTableElementExpressionConstraint(this):t.visitChildren(this)}},JF=class extends XF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INDEX(){return this.getToken(CG.INDEX,0)}tableIndexDefinition(){return this.getRuleContext(0,zF)}accept(t){return t.visitTableElementExpressionIndex?t.visitTableElementExpressionIndex(this):t.visitChildren(this)}},ZF=class extends XF{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}PROJECTION(){return this.getToken(CG.PROJECTION,0)}tableProjectionDefinition(){return this.getRuleContext(0,$F)}accept(t){return t.visitTableElementExpressionProjection?t.visitTableElementExpressionProjection(this):t.visitChildren(this)}},qF=class extends ga{constructor(t,e){super(t,e)}columnIdentifier(){return this.getRuleContext(0,Py)}columnTypeExpression(){return this.getRuleContext(0,xB)}tableColumnPropertyExpression(){return this.getRuleContext(0,jF)}COMMENT(){return this.getToken(CG.COMMENT,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}codecExpression(){return this.getRuleContext(0,tv)}TTL(){return this.getToken(CG.TTL,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_tableColumnDefinition}accept(t){return t.visitTableColumnDefinition?t.visitTableColumnDefinition(this):t.visitChildren(this)}},jF=class extends ga{constructor(t,e){super(t,e)}columnExpression(){return this.getRuleContext(0,bB)}DEFAULT(){return this.getToken(CG.DEFAULT,0)}MATERIALIZED(){return this.getToken(CG.MATERIALIZED,0)}ALIAS(){return this.getToken(CG.ALIAS,0)}get ruleIndex(){return CG.RULE_tableColumnPropertyExpression}accept(t){return t.visitTableColumnPropertyExpression?t.visitTableColumnPropertyExpression(this):t.visitChildren(this)}},zF=class extends ga{constructor(t,e){super(t,e)}columnIdentifier(){return this.getRuleContext(0,Py)}columnExpression(){return this.getRuleContext(0,bB)}TYPE(){return this.getToken(CG.TYPE,0)}columnTypeExpression(){return this.getRuleContext(0,xB)}GRANULARITY(){return this.getToken(CG.GRANULARITY,0)}DECIMAL_LITERAL(){return this.getToken(CG.DECIMAL_LITERAL,0)}get ruleIndex(){return CG.RULE_tableIndexDefinition}accept(t){return t.visitTableIndexDefinition?t.visitTableIndexDefinition(this):t.visitChildren(this)}},$F=class extends ga{constructor(t,e){super(t,e)}columnIdentifier(){return this.getRuleContext(0,Py)}projectionSelectStatement(){return this.getRuleContext(0,pv)}get ruleIndex(){return CG.RULE_tableProjectionDefinition}accept(t){return t.visitTableProjectionDefinition?t.visitTableProjectionDefinition(this):t.visitChildren(this)}},tv=class extends ga{constructor(t,e){super(t,e)}CODEC(){return this.getToken(CG.CODEC,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}codecArgExpression(t){return void 0===t?this.getRuleContexts(ev):this.getRuleContext(t,ev)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_codecExpression}accept(t){return t.visitCodecExpression?t.visitCodecExpression(this):t.visitChildren(this)}},ev=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,wy)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_codecArgExpression}accept(t){return t.visitCodecArgExpression?t.visitCodecArgExpression(this):t.visitChildren(this)}},sv=class extends ga{constructor(t,e){super(t,e)}columnExpression(){return this.getRuleContext(0,bB)}DELETE(){return this.getToken(CG.DELETE,0)}TO(){return this.getToken(CG.TO,0)}DISK(){return this.getToken(CG.DISK,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}VOLUME(){return this.getToken(CG.VOLUME,0)}get ruleIndex(){return CG.RULE_ttlExpression}accept(t){return t.visitTtlExpression?t.visitTtlExpression(this):t.visitChildren(this)}},av=class extends ga{constructor(t,e){super(t,e)}tableExpression(){return this.getRuleContext(0,My)}DESCRIBE(){return this.getToken(CG.DESCRIBE,0)}DESC(){return this.getToken(CG.DESC,0)}TABLE(){return this.getToken(CG.TABLE,0)}get ruleIndex(){return CG.RULE_describeStatement}accept(t){return t.visitDescribeStatement?t.visitDescribeStatement(this):t.visitChildren(this)}},rv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_dropStatement}copyFrom(t){super.copyFrom(t)}},iv=class extends rv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DATABASE(){return this.getToken(CG.DATABASE,0)}databaseIdentifier(){return this.getRuleContext(0,Hy)}DETACH(){return this.getToken(CG.DETACH,0)}DROP(){return this.getToken(CG.DROP,0)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}clusterClause(){return this.getRuleContext(0,xF)}accept(t){return t.visitDropDatabaseStatement?t.visitDropDatabaseStatement(this):t.visitChildren(this)}},cv=class extends rv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableIdentifier(){return this.getRuleContext(0,gy)}DETACH(){return this.getToken(CG.DETACH,0)}DROP(){return this.getToken(CG.DROP,0)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}TABLE(){return this.getToken(CG.TABLE,0)}VIEW(){return this.getToken(CG.VIEW,0)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}clusterClause(){return this.getRuleContext(0,xF)}NO(){return this.getToken(CG.NO,0)}DELAY(){return this.getToken(CG.DELAY,0)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}accept(t){return t.visitDropTableStatement?t.visitDropTableStatement(this):t.visitChildren(this)}},nv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_existsStatement}copyFrom(t){super.copyFrom(t)}},hv=class extends nv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXISTS(){return this.getToken(CG.EXISTS,0)}DATABASE(){return this.getToken(CG.DATABASE,0)}databaseIdentifier(){return this.getRuleContext(0,Hy)}accept(t){return t.visitExistsDatabaseStatement?t.visitExistsDatabaseStatement(this):t.visitChildren(this)}},Ev=class extends nv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXISTS(){return this.getToken(CG.EXISTS,0)}tableIdentifier(){return this.getRuleContext(0,gy)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}TABLE(){return this.getToken(CG.TABLE,0)}VIEW(){return this.getToken(CG.VIEW,0)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}accept(t){return t.visitExistsTableStatement?t.visitExistsTableStatement(this):t.visitChildren(this)}},Tv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_explainStatement}copyFrom(t){super.copyFrom(t)}},ov=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}AST(){return this.getToken(CG.AST,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainASTStatement?t.visitExplainASTStatement(this):t.visitChildren(this)}},Rv=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}QUERY(){return this.getToken(CG.QUERY,0)}TREE(){return this.getToken(CG.TREE,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainQueryTreeStatement?t.visitExplainQueryTreeStatement(this):t.visitChildren(this)}},Av=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}PLAN(){return this.getToken(CG.PLAN,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainPlanStatement?t.visitExplainPlanStatement(this):t.visitChildren(this)}},Sv=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainDefaultStatement?t.visitExplainDefaultStatement(this):t.visitChildren(this)}},lv=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}ESTIMATE(){return this.getToken(CG.ESTIMATE,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainEstimateStatement?t.visitExplainEstimateStatement(this):t.visitChildren(this)}},Ov=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}SYNTAX(){return this.getToken(CG.SYNTAX,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainSyntaxStatement?t.visitExplainSyntaxStatement(this):t.visitChildren(this)}},Iv=class extends Tv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}PIPELINE(){return this.getToken(CG.PIPELINE,0)}notInsertStatement(){return this.getRuleContext(0,dG)}accept(t){return t.visitExplainPipelineStatement?t.visitExplainPipelineStatement(this):t.visitChildren(this)}},uv=class extends ga{constructor(t,e){super(t,e)}INSERT(){return this.getToken(CG.INSERT,0)}INTO(){return this.getToken(CG.INTO,0)}dataClause(){return this.getRuleContext(0,Lv)}tableIdentifier(){return this.getRuleContext(0,gy)}FUNCTION(){return this.getToken(CG.FUNCTION,0)}tableFunctionExpression(){return this.getRuleContext(0,py)}TABLE(){return this.getToken(CG.TABLE,0)}columnsClause(){return this.getRuleContext(0,Nv)}get ruleIndex(){return CG.RULE_insertStatement}accept(t){return t.visitInsertStatement?t.visitInsertStatement(this):t.visitChildren(this)}},Nv=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnIdentifier(t){return void 0===t?this.getRuleContexts(Py):this.getRuleContext(t,Py)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_columnsClause}accept(t){return t.visitColumnsClause?t.visitColumnsClause(this):t.visitChildren(this)}},Lv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_dataClause}copyFrom(t){super.copyFrom(t)}},Cv=class extends Lv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}valuesStatement(){return this.getRuleContext(0,Mv)}accept(t){return t.visitDataClauseValues?t.visitDataClauseValues(this):t.visitChildren(this)}},_v=class extends Lv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FORMAT(){return this.getToken(CG.FORMAT,0)}identifier(){return this.getRuleContext(0,wy)}accept(t){return t.visitDataClauseFormat?t.visitDataClauseFormat(this):t.visitChildren(this)}},Pv=class extends Lv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}selectUnionStatement(){return this.getRuleContext(0,gv)}EOF(){return this.getToken(CG.EOF,0)}SEMICOLON(){return this.getToken(CG.SEMICOLON,0)}accept(t){return t.visitDataClauseSelect?t.visitDataClauseSelect(this):t.visitChildren(this)}},Mv=class extends ga{constructor(t,e){super(t,e)}VALUES(){return this.getToken(CG.VALUES,0)}LPAREN(t){return void 0===t?this.getTokens(CG.LPAREN):this.getToken(CG.LPAREN,t)}RPAREN(t){return void 0===t?this.getTokens(CG.RPAREN):this.getToken(CG.RPAREN,t)}literal(t){return void 0===t?this.getRuleContexts(vy):this.getRuleContext(t,vy)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_valuesStatement}accept(t){return t.visitValuesStatement?t.visitValuesStatement(this):t.visitChildren(this)}},dv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_killStatement}copyFrom(t){super.copyFrom(t)}},Uv=class extends dv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}KILL(){return this.getToken(CG.KILL,0)}MUTATION(){return this.getToken(CG.MUTATION,0)}whereClause(){return this.getRuleContext(0,fv)}clusterClause(){return this.getRuleContext(0,xF)}SYNC(){return this.getToken(CG.SYNC,0)}ASYNC(){return this.getToken(CG.ASYNC,0)}TEST(){return this.getToken(CG.TEST,0)}accept(t){return t.visitKillMutationStatement?t.visitKillMutationStatement(this):t.visitChildren(this)}},mv=class extends ga{constructor(t,e){super(t,e)}OPTIMIZE(){return this.getToken(CG.OPTIMIZE,0)}TABLE(){return this.getToken(CG.TABLE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}clusterClause(){return this.getRuleContext(0,xF)}partitionClause(){return this.getRuleContext(0,EF)}FINAL(){return this.getToken(CG.FINAL,0)}DEDUPLICATE(){return this.getToken(CG.DEDUPLICATE,0)}get ruleIndex(){return CG.RULE_optimizeStatement}accept(t){return t.visitOptimizeStatement?t.visitOptimizeStatement(this):t.visitChildren(this)}},Dv=class extends ga{constructor(t,e){super(t,e)}RENAME(){return this.getToken(CG.RENAME,0)}TABLE(){return this.getToken(CG.TABLE,0)}tableIdentifier(t){return void 0===t?this.getRuleContexts(gy):this.getRuleContext(t,gy)}TO(t){return void 0===t?this.getTokens(CG.TO):this.getToken(CG.TO,t)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}clusterClause(){return this.getRuleContext(0,xF)}get ruleIndex(){return CG.RULE_renameStatement}accept(t){return t.visitRenameStatement?t.visitRenameStatement(this):t.visitChildren(this)}},pv=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(CG.LPAREN,0)}SELECT(){return this.getToken(CG.SELECT,0)}columnExpressionList(){return this.getRuleContext(0,BB)}RPAREN(){return this.getToken(CG.RPAREN,0)}withClause(){return this.getRuleContext(0,Hv)}groupByClause(){return this.getRuleContext(0,Yv)}projectionOrderByClause(){return this.getRuleContext(0,Wv)}get ruleIndex(){return CG.RULE_projectionSelectStatement}accept(t){return t.visitProjectionSelectStatement?t.visitProjectionSelectStatement(this):t.visitChildren(this)}},gv=class extends ga{constructor(t,e){super(t,e)}selectStatementWithParentheses(t){return void 0===t?this.getRuleContexts(xv):this.getRuleContext(t,xv)}UNION(t){return void 0===t?this.getTokens(CG.UNION):this.getToken(CG.UNION,t)}ALL(t){return void 0===t?this.getTokens(CG.ALL):this.getToken(CG.ALL,t)}get ruleIndex(){return CG.RULE_selectUnionStatement}accept(t){return t.visitSelectUnionStatement?t.visitSelectUnionStatement(this):t.visitChildren(this)}},xv=class extends ga{constructor(t,e){super(t,e)}selectStatement(){return this.getRuleContext(0,kv)}LPAREN(){return this.getToken(CG.LPAREN,0)}selectUnionStatement(){return this.getRuleContext(0,gv)}RPAREN(){return this.getToken(CG.RPAREN,0)}get ruleIndex(){return CG.RULE_selectStatementWithParentheses}accept(t){return t.visitSelectStatementWithParentheses?t.visitSelectStatementWithParentheses(this):t.visitChildren(this)}},kv=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(CG.SELECT,0)}columnExpressionList(){return this.getRuleContext(0,BB)}withClause(){return this.getRuleContext(0,Hv)}DISTINCT(){return this.getToken(CG.DISTINCT,0)}topClause(){return this.getRuleContext(0,Gv)}fromClause(){return this.getRuleContext(0,Fv)}arrayJoinClause(){return this.getRuleContext(0,vv)}windowClause(){return this.getRuleContext(0,Bv)}prewhereClause(){return this.getRuleContext(0,yv)}whereClause(){return this.getRuleContext(0,fv)}groupByClause(){return this.getRuleContext(0,Yv)}WITH(t){return void 0===t?this.getTokens(CG.WITH):this.getToken(CG.WITH,t)}TOTALS(){return this.getToken(CG.TOTALS,0)}havingClause(){return this.getRuleContext(0,wv)}orderByClause(){return this.getRuleContext(0,bv)}limitByClause(){return this.getRuleContext(0,Vv)}limitClause(){return this.getRuleContext(0,Xv)}settingsClause(){return this.getRuleContext(0,Kv)}CUBE(){return this.getToken(CG.CUBE,0)}ROLLUP(){return this.getToken(CG.ROLLUP,0)}get ruleIndex(){return CG.RULE_selectStatement}accept(t){return t.visitSelectStatement?t.visitSelectStatement(this):t.visitChildren(this)}},Hv=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(CG.WITH,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_withClause}accept(t){return t.visitWithClause?t.visitWithClause(this):t.visitChildren(this)}},Gv=class extends ga{constructor(t,e){super(t,e)}TOP(){return this.getToken(CG.TOP,0)}DECIMAL_LITERAL(){return this.getToken(CG.DECIMAL_LITERAL,0)}WITH(){return this.getToken(CG.WITH,0)}TIES(){return this.getToken(CG.TIES,0)}get ruleIndex(){return CG.RULE_topClause}accept(t){return t.visitTopClause?t.visitTopClause(this):t.visitChildren(this)}},Fv=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(CG.FROM,0)}joinExpression(){return this.getRuleContext(0,Qv)}get ruleIndex(){return CG.RULE_fromClause}accept(t){return t.visitFromClause?t.visitFromClause(this):t.visitChildren(this)}},vv=class extends ga{constructor(t,e){super(t,e)}ARRAY(){return this.getToken(CG.ARRAY,0)}JOIN(){return this.getToken(CG.JOIN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}LEFT(){return this.getToken(CG.LEFT,0)}INNER(){return this.getToken(CG.INNER,0)}get ruleIndex(){return CG.RULE_arrayJoinClause}accept(t){return t.visitArrayJoinClause?t.visitArrayJoinClause(this):t.visitChildren(this)}},Bv=class extends ga{constructor(t,e){super(t,e)}WINDOW(){return this.getToken(CG.WINDOW,0)}identifier(){return this.getRuleContext(0,wy)}AS(){return this.getToken(CG.AS,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}windowExpression(){return this.getRuleContext(0,oB)}RPAREN(){return this.getToken(CG.RPAREN,0)}get ruleIndex(){return CG.RULE_windowClause}accept(t){return t.visitWindowClause?t.visitWindowClause(this):t.visitChildren(this)}},yv=class extends ga{constructor(t,e){super(t,e)}PREWHERE(){return this.getToken(CG.PREWHERE,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_prewhereClause}accept(t){return t.visitPrewhereClause?t.visitPrewhereClause(this):t.visitChildren(this)}},fv=class extends ga{constructor(t,e){super(t,e)}WHERE(){return this.getToken(CG.WHERE,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_whereClause}accept(t){return t.visitWhereClause?t.visitWhereClause(this):t.visitChildren(this)}},Yv=class extends ga{constructor(t,e){super(t,e)}GROUP(){return this.getToken(CG.GROUP,0)}BY(){return this.getToken(CG.BY,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}RPAREN(){return this.getToken(CG.RPAREN,0)}CUBE(){return this.getToken(CG.CUBE,0)}ROLLUP(){return this.getToken(CG.ROLLUP,0)}get ruleIndex(){return CG.RULE_groupByClause}accept(t){return t.visitGroupByClause?t.visitGroupByClause(this):t.visitChildren(this)}},wv=class extends ga{constructor(t,e){super(t,e)}HAVING(){return this.getToken(CG.HAVING,0)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_havingClause}accept(t){return t.visitHavingClause?t.visitHavingClause(this):t.visitChildren(this)}},bv=class extends ga{constructor(t,e){super(t,e)}ORDER(){return this.getToken(CG.ORDER,0)}BY(){return this.getToken(CG.BY,0)}orderExpressionList(){return this.getRuleContext(0,cB)}get ruleIndex(){return CG.RULE_orderByClause}accept(t){return t.visitOrderByClause?t.visitOrderByClause(this):t.visitChildren(this)}},Wv=class extends ga{constructor(t,e){super(t,e)}ORDER(){return this.getToken(CG.ORDER,0)}BY(){return this.getToken(CG.BY,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_projectionOrderByClause}accept(t){return t.visitProjectionOrderByClause?t.visitProjectionOrderByClause(this):t.visitChildren(this)}},Vv=class extends ga{constructor(t,e){super(t,e)}LIMIT(){return this.getToken(CG.LIMIT,0)}limitExpression(){return this.getRuleContext(0,iB)}BY(){return this.getToken(CG.BY,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_limitByClause}accept(t){return t.visitLimitByClause?t.visitLimitByClause(this):t.visitChildren(this)}},Xv=class extends ga{constructor(t,e){super(t,e)}LIMIT(){return this.getToken(CG.LIMIT,0)}limitExpression(){return this.getRuleContext(0,iB)}WITH(){return this.getToken(CG.WITH,0)}TIES(){return this.getToken(CG.TIES,0)}get ruleIndex(){return CG.RULE_limitClause}accept(t){return t.visitLimitClause?t.visitLimitClause(this):t.visitChildren(this)}},Kv=class extends ga{constructor(t,e){super(t,e)}SETTINGS(){return this.getToken(CG.SETTINGS,0)}settingExpressionList(){return this.getRuleContext(0,EB)}get ruleIndex(){return CG.RULE_settingsClause}accept(t){return t.visitSettingsClause?t.visitSettingsClause(this):t.visitChildren(this)}},Qv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_joinExpression}copyFrom(t){super.copyFrom(t)}},Jv=class extends Qv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}joinExpression(){return this.getRuleContext(0,Qv)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitJoinExpressionParens?t.visitJoinExpressionParens(this):t.visitChildren(this)}},Zv=class extends Qv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableExpression(){return this.getRuleContext(0,My)}FINAL(){return this.getToken(CG.FINAL,0)}sampleClause(){return this.getRuleContext(0,rB)}accept(t){return t.visitJoinExpressionTable?t.visitJoinExpressionTable(this):t.visitChildren(this)}},qv=class extends Qv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}joinExpression(t){return void 0===t?this.getRuleContexts(Qv):this.getRuleContext(t,Qv)}joinOperatorCross(){return this.getRuleContext(0,sB)}accept(t){return t.visitJoinExpressionCrossOp?t.visitJoinExpressionCrossOp(this):t.visitChildren(this)}},jv=class extends Qv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}joinExpression(t){return void 0===t?this.getRuleContexts(Qv):this.getRuleContext(t,Qv)}JOIN(){return this.getToken(CG.JOIN,0)}joinConstraintClause(){return this.getRuleContext(0,aB)}joinOperator(){return this.getRuleContext(0,zv)}GLOBAL(){return this.getToken(CG.GLOBAL,0)}LOCAL(){return this.getToken(CG.LOCAL,0)}accept(t){return t.visitJoinExpressionOp?t.visitJoinExpressionOp(this):t.visitChildren(this)}},zv=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_joinOperator}copyFrom(t){super.copyFrom(t)}},$v=class extends zv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}FULL(){return this.getToken(CG.FULL,0)}OUTER(){return this.getToken(CG.OUTER,0)}ALL(){return this.getToken(CG.ALL,0)}ANY(){return this.getToken(CG.ANY,0)}accept(t){return t.visitJoinOpFull?t.visitJoinOpFull(this):t.visitChildren(this)}},tB=class extends zv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INNER(){return this.getToken(CG.INNER,0)}ALL(){return this.getToken(CG.ALL,0)}ANY(){return this.getToken(CG.ANY,0)}ASOF(){return this.getToken(CG.ASOF,0)}accept(t){return t.visitJoinOpInner?t.visitJoinOpInner(this):t.visitChildren(this)}},eB=class extends zv{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LEFT(){return this.getToken(CG.LEFT,0)}RIGHT(){return this.getToken(CG.RIGHT,0)}OUTER(){return this.getToken(CG.OUTER,0)}SEMI(){return this.getToken(CG.SEMI,0)}ALL(){return this.getToken(CG.ALL,0)}ANTI(){return this.getToken(CG.ANTI,0)}ANY(){return this.getToken(CG.ANY,0)}ASOF(){return this.getToken(CG.ASOF,0)}accept(t){return t.visitJoinOpLeftRight?t.visitJoinOpLeftRight(this):t.visitChildren(this)}},sB=class extends ga{constructor(t,e){super(t,e)}CROSS(){return this.getToken(CG.CROSS,0)}JOIN(){return this.getToken(CG.JOIN,0)}GLOBAL(){return this.getToken(CG.GLOBAL,0)}LOCAL(){return this.getToken(CG.LOCAL,0)}COMMA(){return this.getToken(CG.COMMA,0)}get ruleIndex(){return CG.RULE_joinOperatorCross}accept(t){return t.visitJoinOperatorCross?t.visitJoinOperatorCross(this):t.visitChildren(this)}},aB=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(CG.ON,0)}columnExpressionList(){return this.getRuleContext(0,BB)}USING(){return this.getToken(CG.USING,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}get ruleIndex(){return CG.RULE_joinConstraintClause}accept(t){return t.visitJoinConstraintClause?t.visitJoinConstraintClause(this):t.visitChildren(this)}},rB=class extends ga{constructor(t,e){super(t,e)}SAMPLE(){return this.getToken(CG.SAMPLE,0)}ratioExpression(t){return void 0===t?this.getRuleContexts(hB):this.getRuleContext(t,hB)}OFFSET(){return this.getToken(CG.OFFSET,0)}get ruleIndex(){return CG.RULE_sampleClause}accept(t){return t.visitSampleClause?t.visitSampleClause(this):t.visitChildren(this)}},iB=class extends ga{constructor(t,e){super(t,e)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}COMMA(){return this.getToken(CG.COMMA,0)}OFFSET(){return this.getToken(CG.OFFSET,0)}get ruleIndex(){return CG.RULE_limitExpression}accept(t){return t.visitLimitExpression?t.visitLimitExpression(this):t.visitChildren(this)}},cB=class extends ga{constructor(t,e){super(t,e)}orderExpression(t){return void 0===t?this.getRuleContexts(nB):this.getRuleContext(t,nB)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_orderExpressionList}accept(t){return t.visitOrderExpressionList?t.visitOrderExpressionList(this):t.visitChildren(this)}},nB=class extends ga{constructor(t,e){super(t,e)}columnExpression(){return this.getRuleContext(0,bB)}NULLS(){return this.getToken(CG.NULLS,0)}COLLATE(){return this.getToken(CG.COLLATE,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}ASCENDING(){return this.getToken(CG.ASCENDING,0)}DESCENDING(){return this.getToken(CG.DESCENDING,0)}DESC(){return this.getToken(CG.DESC,0)}FIRST(){return this.getToken(CG.FIRST,0)}LAST(){return this.getToken(CG.LAST,0)}get ruleIndex(){return CG.RULE_orderExpression}accept(t){return t.visitOrderExpression?t.visitOrderExpression(this):t.visitChildren(this)}},hB=class extends ga{constructor(t,e){super(t,e)}numberLiteral(t){return void 0===t?this.getRuleContexts(Fy):this.getRuleContext(t,Fy)}SLASH(){return this.getToken(CG.SLASH,0)}get ruleIndex(){return CG.RULE_ratioExpression}accept(t){return t.visitRatioExpression?t.visitRatioExpression(this):t.visitChildren(this)}},EB=class extends ga{constructor(t,e){super(t,e)}settingExpression(t){return void 0===t?this.getRuleContexts(TB):this.getRuleContext(t,TB)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_settingExpressionList}accept(t){return t.visitSettingExpressionList?t.visitSettingExpressionList(this):t.visitChildren(this)}},TB=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,wy)}EQ_SINGLE(){return this.getToken(CG.EQ_SINGLE,0)}literal(){return this.getRuleContext(0,vy)}get ruleIndex(){return CG.RULE_settingExpression}accept(t){return t.visitSettingExpression?t.visitSettingExpression(this):t.visitChildren(this)}},oB=class extends ga{constructor(t,e){super(t,e)}windowPartitionByClause(){return this.getRuleContext(0,RB)}windowOrderByClause(){return this.getRuleContext(0,AB)}windowFrameClause(){return this.getRuleContext(0,SB)}get ruleIndex(){return CG.RULE_windowExpression}accept(t){return t.visitWindowExpression?t.visitWindowExpression(this):t.visitChildren(this)}},RB=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(CG.PARTITION,0)}BY(){return this.getToken(CG.BY,0)}columnExpressionList(){return this.getRuleContext(0,BB)}get ruleIndex(){return CG.RULE_windowPartitionByClause}accept(t){return t.visitWindowPartitionByClause?t.visitWindowPartitionByClause(this):t.visitChildren(this)}},AB=class extends ga{constructor(t,e){super(t,e)}ORDER(){return this.getToken(CG.ORDER,0)}BY(){return this.getToken(CG.BY,0)}orderExpressionList(){return this.getRuleContext(0,cB)}get ruleIndex(){return CG.RULE_windowOrderByClause}accept(t){return t.visitWindowOrderByClause?t.visitWindowOrderByClause(this):t.visitChildren(this)}},SB=class extends ga{constructor(t,e){super(t,e)}windowFrameExtend(){return this.getRuleContext(0,lB)}ROWS(){return this.getToken(CG.ROWS,0)}RANGE(){return this.getToken(CG.RANGE,0)}get ruleIndex(){return CG.RULE_windowFrameClause}accept(t){return t.visitWindowFrameClause?t.visitWindowFrameClause(this):t.visitChildren(this)}},lB=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_windowFrameExtend}copyFrom(t){super.copyFrom(t)}},OB=class extends lB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}windowFrameBound(){return this.getRuleContext(0,uB)}accept(t){return t.visitFrameStart?t.visitFrameStart(this):t.visitChildren(this)}},IB=class extends lB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}BETWEEN(){return this.getToken(CG.BETWEEN,0)}windowFrameBound(t){return void 0===t?this.getRuleContexts(uB):this.getRuleContext(t,uB)}AND(){return this.getToken(CG.AND,0)}accept(t){return t.visitFrameBetween?t.visitFrameBetween(this):t.visitChildren(this)}},uB=class extends ga{constructor(t,e){super(t,e)}CURRENT(){return this.getToken(CG.CURRENT,0)}ROW(){return this.getToken(CG.ROW,0)}UNBOUNDED(){return this.getToken(CG.UNBOUNDED,0)}PRECEDING(){return this.getToken(CG.PRECEDING,0)}FOLLOWING(){return this.getToken(CG.FOLLOWING,0)}numberLiteral(){return this.getRuleContext(0,Fy)}get ruleIndex(){return CG.RULE_windowFrameBound}accept(t){return t.visitWindowFrameBound?t.visitWindowFrameBound(this):t.visitChildren(this)}},NB=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(CG.SET,0)}settingExpressionList(){return this.getRuleContext(0,EB)}get ruleIndex(){return CG.RULE_setStatement}accept(t){return t.visitSetStatement?t.visitSetStatement(this):t.visitChildren(this)}},LB=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_showStatement}copyFrom(t){super.copyFrom(t)}},CB=class extends LB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(CG.SHOW,0)}CREATE(){return this.getToken(CG.CREATE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}TABLE(){return this.getToken(CG.TABLE,0)}accept(t){return t.visitShowCreateTableStatement?t.visitShowCreateTableStatement(this):t.visitChildren(this)}},_B=class extends LB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(CG.SHOW,0)}CREATE(){return this.getToken(CG.CREATE,0)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}tableIdentifier(){return this.getRuleContext(0,gy)}accept(t){return t.visitShowCreateDictionaryStatement?t.visitShowCreateDictionaryStatement(this):t.visitChildren(this)}},PB=class extends LB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(CG.SHOW,0)}TABLES(){return this.getToken(CG.TABLES,0)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}databaseIdentifier(){return this.getRuleContext(0,Hy)}LIKE(){return this.getToken(CG.LIKE,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}whereClause(){return this.getRuleContext(0,fv)}limitClause(){return this.getRuleContext(0,Xv)}FROM(){return this.getToken(CG.FROM,0)}IN(){return this.getToken(CG.IN,0)}accept(t){return t.visitShowTablesStatement?t.visitShowTablesStatement(this):t.visitChildren(this)}},MB=class extends LB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(CG.SHOW,0)}DICTIONARIES(){return this.getToken(CG.DICTIONARIES,0)}FROM(){return this.getToken(CG.FROM,0)}databaseIdentifier(){return this.getRuleContext(0,Hy)}accept(t){return t.visitShowDictionariesStatement?t.visitShowDictionariesStatement(this):t.visitChildren(this)}},dB=class extends LB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(CG.SHOW,0)}CREATE(){return this.getToken(CG.CREATE,0)}DATABASE(){return this.getToken(CG.DATABASE,0)}databaseIdentifier(){return this.getRuleContext(0,Hy)}accept(t){return t.visitShowCreateDatabaseStatement?t.visitShowCreateDatabaseStatement(this):t.visitChildren(this)}},UB=class extends LB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SHOW(){return this.getToken(CG.SHOW,0)}DATABASES(){return this.getToken(CG.DATABASES,0)}accept(t){return t.visitShowDatabasesStatement?t.visitShowDatabasesStatement(this):t.visitChildren(this)}},mB=class extends ga{constructor(t,e){super(t,e)}SYSTEM(){return this.getToken(CG.SYSTEM,0)}FLUSH(){return this.getToken(CG.FLUSH,0)}DISTRIBUTED(){return this.getToken(CG.DISTRIBUTED,0)}tableIdentifier(){return this.getRuleContext(0,gy)}LOGS(){return this.getToken(CG.LOGS,0)}RELOAD(){return this.getToken(CG.RELOAD,0)}DICTIONARIES(){return this.getToken(CG.DICTIONARIES,0)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}START(){return this.getToken(CG.START,0)}STOP(){return this.getToken(CG.STOP,0)}SENDS(){return this.getToken(CG.SENDS,0)}FETCHES(){return this.getToken(CG.FETCHES,0)}MERGES(){return this.getToken(CG.MERGES,0)}TTL(){return this.getToken(CG.TTL,0)}REPLICATED(){return this.getToken(CG.REPLICATED,0)}SYNC(){return this.getToken(CG.SYNC,0)}REPLICA(){return this.getToken(CG.REPLICA,0)}get ruleIndex(){return CG.RULE_systemStatement}accept(t){return t.visitSystemStatement?t.visitSystemStatement(this):t.visitChildren(this)}},DB=class extends ga{constructor(t,e){super(t,e)}TRUNCATE(){return this.getToken(CG.TRUNCATE,0)}tableIdentifier(){return this.getRuleContext(0,gy)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}TABLE(){return this.getToken(CG.TABLE,0)}IF(){return this.getToken(CG.IF,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}clusterClause(){return this.getRuleContext(0,xF)}get ruleIndex(){return CG.RULE_truncateStatement}accept(t){return t.visitTruncateStatement?t.visitTruncateStatement(this):t.visitChildren(this)}},pB=class extends ga{constructor(t,e){super(t,e)}USE(){return this.getToken(CG.USE,0)}databaseIdentifier(){return this.getRuleContext(0,Hy)}get ruleIndex(){return CG.RULE_useStatement}accept(t){return t.visitUseStatement?t.visitUseStatement(this):t.visitChildren(this)}},gB=class extends ga{constructor(t,e){super(t,e)}WATCH(){return this.getToken(CG.WATCH,0)}tableIdentifier(){return this.getRuleContext(0,gy)}EVENTS(){return this.getToken(CG.EVENTS,0)}LIMIT(){return this.getToken(CG.LIMIT,0)}DECIMAL_LITERAL(){return this.getToken(CG.DECIMAL_LITERAL,0)}get ruleIndex(){return CG.RULE_watchStatement}accept(t){return t.visitWatchStatement?t.visitWatchStatement(this):t.visitChildren(this)}},xB=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_columnTypeExpression}copyFrom(t){super.copyFrom(t)}},kB=class extends xB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(){return this.getRuleContext(0,wy)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnTypeExpression(t){return void 0===t?this.getRuleContexts(xB):this.getRuleContext(t,xB)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}accept(t){return t.visitColumnTypeExpressionComplex?t.visitColumnTypeExpressionComplex(this):t.visitChildren(this)}},HB=class extends xB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(){return this.getRuleContext(0,wy)}LPAREN(){return this.getToken(CG.LPAREN,0)}enumValue(t){return void 0===t?this.getRuleContexts(Wy):this.getRuleContext(t,Wy)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}accept(t){return t.visitColumnTypeExpressionEnum?t.visitColumnTypeExpressionEnum(this):t.visitChildren(this)}},GB=class extends xB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnTypeExpression(t){return void 0===t?this.getRuleContexts(xB):this.getRuleContext(t,xB)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}accept(t){return t.visitColumnTypeExpressionNested?t.visitColumnTypeExpressionNested(this):t.visitChildren(this)}},FB=class extends xB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(){return this.getRuleContext(0,wy)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}accept(t){return t.visitColumnTypeExpressionParam?t.visitColumnTypeExpressionParam(this):t.visitChildren(this)}},vB=class extends xB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(){return this.getRuleContext(0,wy)}accept(t){return t.visitColumnTypeExpressionSimple?t.visitColumnTypeExpressionSimple(this):t.visitChildren(this)}},BB=class extends ga{constructor(t,e){super(t,e)}columnsExpression(t){return void 0===t?this.getRuleContexts(yB):this.getRuleContext(t,yB)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_columnExpressionList}accept(t){return t.visitColumnExpressionList?t.visitColumnExpressionList(this):t.visitChildren(this)}},yB=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_columnsExpression}copyFrom(t){super.copyFrom(t)}},fB=class extends yB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ASTERISK(){return this.getToken(CG.ASTERISK,0)}tableIdentifier(){return this.getRuleContext(0,gy)}DOT(){return this.getToken(CG.DOT,0)}accept(t){return t.visitColumnsExpressionAsterisk?t.visitColumnsExpressionAsterisk(this):t.visitChildren(this)}},YB=class extends yB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}selectUnionStatement(){return this.getRuleContext(0,gv)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitColumnsExpressionSubquery?t.visitColumnsExpressionSubquery(this):t.visitChildren(this)}},wB=class extends yB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(){return this.getRuleContext(0,bB)}accept(t){return t.visitColumnsExpressionColumn?t.visitColumnsExpressionColumn(this):t.visitChildren(this)}},bB=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_columnExpression}copyFrom(t){super.copyFrom(t)}},WB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(){return this.getRuleContext(0,bB)}IS(){return this.getToken(CG.IS,0)}NULL_SQL(){return this.getToken(CG.NULL_SQL,0)}NOT(){return this.getToken(CG.NOT,0)}accept(t){return t.visitColumnExpressionIsNull?t.visitColumnExpressionIsNull(this):t.visitChildren(this)}},VB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitColumnExpressionTuple?t.visitColumnExpressionTuple(this):t.visitChildren(this)}},XB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}AND(){return this.getToken(CG.AND,0)}accept(t){return t.visitColumnExpressionAnd?t.visitColumnExpressionAnd(this):t.visitChildren(this)}},KB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DATE(){return this.getToken(CG.DATE,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}accept(t){return t.visitColumnExpressionDate?t.visitColumnExpressionDate(this):t.visitChildren(this)}},QB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}BETWEEN(){return this.getToken(CG.BETWEEN,0)}AND(){return this.getToken(CG.AND,0)}NOT(){return this.getToken(CG.NOT,0)}accept(t){return t.visitColumnExpressionBetween?t.visitColumnExpressionBetween(this):t.visitChildren(this)}},JB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TRIM(){return this.getToken(CG.TRIM,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}FROM(){return this.getToken(CG.FROM,0)}columnExpression(){return this.getRuleContext(0,bB)}RPAREN(){return this.getToken(CG.RPAREN,0)}BOTH(){return this.getToken(CG.BOTH,0)}LEADING(){return this.getToken(CG.LEADING,0)}TRAILING(){return this.getToken(CG.TRAILING,0)}accept(t){return t.visitColumnExpressionTrim?t.visitColumnExpressionTrim(this):t.visitChildren(this)}},ZB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}NOT(){return this.getToken(CG.NOT,0)}columnExpression(){return this.getRuleContext(0,bB)}accept(t){return t.visitColumnExpressionNot?t.visitColumnExpressionNot(this):t.visitChildren(this)}},qB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}SUBSTRING(){return this.getToken(CG.SUBSTRING,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}FROM(){return this.getToken(CG.FROM,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}FOR(){return this.getToken(CG.FOR,0)}accept(t){return t.visitColumnExpressionSubstring?t.visitColumnExpressionSubstring(this):t.visitChildren(this)}},jB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CASE(){return this.getToken(CG.CASE,0)}END(){return this.getToken(CG.END,0)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}WHEN(t){return void 0===t?this.getTokens(CG.WHEN):this.getToken(CG.WHEN,t)}THEN(t){return void 0===t?this.getTokens(CG.THEN):this.getToken(CG.THEN,t)}ELSE(){return this.getToken(CG.ELSE,0)}accept(t){return t.visitColumnExpressionCase?t.visitColumnExpressionCase(this):t.visitChildren(this)}},zB=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnIdentifier(){return this.getRuleContext(0,Py)}accept(t){return t.visitColumnExpressionIdentifier?t.visitColumnExpressionIdentifier(this):t.visitChildren(this)}},$B=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}LBRACKET(){return this.getToken(CG.LBRACKET,0)}RBRACKET(){return this.getToken(CG.RBRACKET,0)}accept(t){return t.visitColumnExpressionArrayAccess?t.visitColumnExpressionArrayAccess(this):t.visitChildren(this)}},ty=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(){return this.getRuleContext(0,wy)}LPAREN(t){return void 0===t?this.getTokens(CG.LPAREN):this.getToken(CG.LPAREN,t)}RPAREN(t){return void 0===t?this.getTokens(CG.RPAREN):this.getToken(CG.RPAREN,t)}DISTINCT(){return this.getToken(CG.DISTINCT,0)}columnArgumentList(){return this.getRuleContext(0,Ly)}columnExpressionList(){return this.getRuleContext(0,BB)}accept(t){return t.visitColumnExpressionFunction?t.visitColumnExpressionFunction(this):t.visitChildren(this)}},ey=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}ASTERISK(){return this.getToken(CG.ASTERISK,0)}tableIdentifier(){return this.getRuleContext(0,gy)}DOT(){return this.getToken(CG.DOT,0)}accept(t){return t.visitColumnExpressionAsterisk?t.visitColumnExpressionAsterisk(this):t.visitChildren(this)}},sy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}literal(){return this.getRuleContext(0,vy)}accept(t){return t.visitColumnExpressionLiteral?t.visitColumnExpressionLiteral(this):t.visitChildren(this)}},ay=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(){return this.getRuleContext(0,wy)}OVER(){return this.getToken(CG.OVER,0)}LPAREN(t){return void 0===t?this.getTokens(CG.LPAREN):this.getToken(CG.LPAREN,t)}windowExpression(){return this.getRuleContext(0,oB)}RPAREN(t){return void 0===t?this.getTokens(CG.RPAREN):this.getToken(CG.RPAREN,t)}columnExpressionList(){return this.getRuleContext(0,BB)}accept(t){return t.visitColumnExpressionWinFunction?t.visitColumnExpressionWinFunction(this):t.visitChildren(this)}},ry=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}QUESTIONMARK(){return this.getToken(CG.QUESTIONMARK,0)}COLON(){return this.getToken(CG.COLON,0)}accept(t){return t.visitColumnExpressionTernaryOp?t.visitColumnExpressionTernaryOp(this):t.visitChildren(this)}},iy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LBRACKET(){return this.getToken(CG.LBRACKET,0)}RBRACKET(){return this.getToken(CG.RBRACKET,0)}columnExpressionList(){return this.getRuleContext(0,BB)}accept(t){return t.visitColumnExpressionArray?t.visitColumnExpressionArray(this):t.visitChildren(this)}},cy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(){return this.getRuleContext(0,bB)}DOT(){return this.getToken(CG.DOT,0)}DECIMAL_LITERAL(){return this.getToken(CG.DECIMAL_LITERAL,0)}accept(t){return t.visitColumnExpressionTupleAccess?t.visitColumnExpressionTupleAccess(this):t.visitChildren(this)}},ny=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnExpression(){return this.getRuleContext(0,bB)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitColumnExpressionParens?t.visitColumnExpressionParens(this):t.visitChildren(this)}},hy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}OVER(){return this.getToken(CG.OVER,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}columnExpressionList(){return this.getRuleContext(0,BB)}accept(t){return t.visitColumnExpressionWinFunctionTarget?t.visitColumnExpressionWinFunctionTarget(this):t.visitChildren(this)}},Ey=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(){return this.getRuleContext(0,bB)}alias(){return this.getRuleContext(0,Yy)}AS(){return this.getToken(CG.AS,0)}identifier(){return this.getRuleContext(0,wy)}accept(t){return t.visitColumnExpressionAlias?t.visitColumnExpressionAlias(this):t.visitChildren(this)}},Ty=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}EQ_DOUBLE(){return this.getToken(CG.EQ_DOUBLE,0)}EQ_SINGLE(){return this.getToken(CG.EQ_SINGLE,0)}NOT_EQ(){return this.getToken(CG.NOT_EQ,0)}LE(){return this.getToken(CG.LE,0)}GE(){return this.getToken(CG.GE,0)}LT(){return this.getToken(CG.LT,0)}GT(){return this.getToken(CG.GT,0)}IN(){return this.getToken(CG.IN,0)}LIKE(){return this.getToken(CG.LIKE,0)}ILIKE(){return this.getToken(CG.ILIKE,0)}GLOBAL(){return this.getToken(CG.GLOBAL,0)}NOT(){return this.getToken(CG.NOT,0)}accept(t){return t.visitColumnExpressionPrecedence3?t.visitColumnExpressionPrecedence3(this):t.visitChildren(this)}},oy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}TIMESTAMP(){return this.getToken(CG.TIMESTAMP,0)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}accept(t){return t.visitColumnExpressionTimestamp?t.visitColumnExpressionTimestamp(this):t.visitChildren(this)}},Ry=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}PLUS(){return this.getToken(CG.PLUS,0)}DASH(){return this.getToken(CG.DASH,0)}CONCAT(){return this.getToken(CG.CONCAT,0)}accept(t){return t.visitColumnExpressionPrecedence2?t.visitColumnExpressionPrecedence2(this):t.visitChildren(this)}},Ay=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}ASTERISK(){return this.getToken(CG.ASTERISK,0)}SLASH(){return this.getToken(CG.SLASH,0)}PERCENT(){return this.getToken(CG.PERCENT,0)}accept(t){return t.visitColumnExpressionPrecedence1?t.visitColumnExpressionPrecedence1(this):t.visitChildren(this)}},Sy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}INTERVAL(){return this.getToken(CG.INTERVAL,0)}columnExpression(){return this.getRuleContext(0,bB)}interval(){return this.getRuleContext(0,By)}accept(t){return t.visitColumnExpressionInterval?t.visitColumnExpressionInterval(this):t.visitChildren(this)}},ly=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}selectUnionStatement(){return this.getRuleContext(0,gv)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitColumnExpressionSubquery?t.visitColumnExpressionSubquery(this):t.visitChildren(this)}},Oy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}DASH(){return this.getToken(CG.DASH,0)}columnExpression(){return this.getRuleContext(0,bB)}accept(t){return t.visitColumnExpressionNegate?t.visitColumnExpressionNegate(this):t.visitChildren(this)}},Iy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}EXTRACT(){return this.getToken(CG.EXTRACT,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}interval(){return this.getRuleContext(0,By)}FROM(){return this.getToken(CG.FROM,0)}columnExpression(){return this.getRuleContext(0,bB)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitColumnExpressionExtract?t.visitColumnExpressionExtract(this):t.visitChildren(this)}},uy=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}CAST(){return this.getToken(CG.CAST,0)}LPAREN(){return this.getToken(CG.LPAREN,0)}columnExpression(){return this.getRuleContext(0,bB)}AS(){return this.getToken(CG.AS,0)}columnTypeExpression(){return this.getRuleContext(0,xB)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitColumnExpressionCast?t.visitColumnExpressionCast(this):t.visitChildren(this)}},Ny=class extends bB{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}columnExpression(t){return void 0===t?this.getRuleContexts(bB):this.getRuleContext(t,bB)}OR(){return this.getToken(CG.OR,0)}accept(t){return t.visitColumnExpressionOr?t.visitColumnExpressionOr(this):t.visitChildren(this)}},Ly=class extends ga{constructor(t,e){super(t,e)}columnArgumentExpression(t){return void 0===t?this.getRuleContexts(Cy):this.getRuleContext(t,Cy)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_columnArgumentList}accept(t){return t.visitColumnArgumentList?t.visitColumnArgumentList(this):t.visitChildren(this)}},Cy=class extends ga{constructor(t,e){super(t,e)}columnLambdaExpression(){return this.getRuleContext(0,_y)}columnExpression(){return this.getRuleContext(0,bB)}get ruleIndex(){return CG.RULE_columnArgumentExpression}accept(t){return t.visitColumnArgumentExpression?t.visitColumnArgumentExpression(this):t.visitChildren(this)}},_y=class extends ga{constructor(t,e){super(t,e)}ARROW(){return this.getToken(CG.ARROW,0)}columnExpression(){return this.getRuleContext(0,bB)}LPAREN(){return this.getToken(CG.LPAREN,0)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}RPAREN(){return this.getToken(CG.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_columnLambdaExpression}accept(t){return t.visitColumnLambdaExpression?t.visitColumnLambdaExpression(this):t.visitChildren(this)}},Py=class extends ga{constructor(t,e){super(t,e)}identifier(t){return void 0===t?this.getRuleContexts(wy):this.getRuleContext(t,wy)}tableIdentifier(){return this.getRuleContext(0,gy)}DOT(t){return void 0===t?this.getTokens(CG.DOT):this.getToken(CG.DOT,t)}get ruleIndex(){return CG.RULE_columnIdentifier}accept(t){return t.visitColumnIdentifier?t.visitColumnIdentifier(this):t.visitChildren(this)}},My=class extends ga{constructor(t,e){super(t,e)}get ruleIndex(){return CG.RULE_tableExpression}copyFrom(t){super.copyFrom(t)}},dy=class extends My{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableFunctionExpression(){return this.getRuleContext(0,py)}accept(t){return t.visitTableExpressionFunction?t.visitTableExpressionFunction(this):t.visitChildren(this)}},Uy=class extends My{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableIdentifier(){return this.getRuleContext(0,gy)}accept(t){return t.visitTableExpressionIdentifier?t.visitTableExpressionIdentifier(this):t.visitChildren(this)}},my=class extends My{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}tableExpression(){return this.getRuleContext(0,My)}alias(){return this.getRuleContext(0,Yy)}AS(){return this.getToken(CG.AS,0)}identifier(){return this.getRuleContext(0,wy)}accept(t){return t.visitTableExpressionAlias?t.visitTableExpressionAlias(this):t.visitChildren(this)}},Dy=class extends My{constructor(t){super(t.parent,t.invokingState),super.copyFrom(t)}LPAREN(){return this.getToken(CG.LPAREN,0)}selectUnionStatement(){return this.getRuleContext(0,gv)}RPAREN(){return this.getToken(CG.RPAREN,0)}accept(t){return t.visitTableExpressionSubquery?t.visitTableExpressionSubquery(this):t.visitChildren(this)}},py=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,wy)}LPAREN(){return this.getToken(CG.LPAREN,0)}RPAREN(){return this.getToken(CG.RPAREN,0)}tableArgList(){return this.getRuleContext(0,xy)}get ruleIndex(){return CG.RULE_tableFunctionExpression}accept(t){return t.visitTableFunctionExpression?t.visitTableFunctionExpression(this):t.visitChildren(this)}},gy=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,wy)}databaseIdentifier(){return this.getRuleContext(0,Hy)}DOT(){return this.getToken(CG.DOT,0)}get ruleIndex(){return CG.RULE_tableIdentifier}accept(t){return t.visitTableIdentifier?t.visitTableIdentifier(this):t.visitChildren(this)}},xy=class extends ga{constructor(t,e){super(t,e)}tableArgExpression(t){return void 0===t?this.getRuleContexts(ky):this.getRuleContext(t,ky)}COMMA(t){return void 0===t?this.getTokens(CG.COMMA):this.getToken(CG.COMMA,t)}get ruleIndex(){return CG.RULE_tableArgList}accept(t){return t.visitTableArgList?t.visitTableArgList(this):t.visitChildren(this)}},ky=class extends ga{constructor(t,e){super(t,e)}columnIdentifier(){return this.getRuleContext(0,Py)}tableFunctionExpression(){return this.getRuleContext(0,py)}literal(){return this.getRuleContext(0,vy)}get ruleIndex(){return CG.RULE_tableArgExpression}accept(t){return t.visitTableArgExpression?t.visitTableArgExpression(this):t.visitChildren(this)}},Hy=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,wy)}get ruleIndex(){return CG.RULE_databaseIdentifier}accept(t){return t.visitDatabaseIdentifier?t.visitDatabaseIdentifier(this):t.visitChildren(this)}},Gy=class extends ga{constructor(t,e){super(t,e)}FLOATING_LITERAL(){return this.getToken(CG.FLOATING_LITERAL,0)}DOT(){return this.getToken(CG.DOT,0)}DECIMAL_LITERAL(t){return void 0===t?this.getTokens(CG.DECIMAL_LITERAL):this.getToken(CG.DECIMAL_LITERAL,t)}OCTAL_LITERAL(){return this.getToken(CG.OCTAL_LITERAL,0)}get ruleIndex(){return CG.RULE_floatingLiteral}accept(t){return t.visitFloatingLiteral?t.visitFloatingLiteral(this):t.visitChildren(this)}},Fy=class extends ga{constructor(t,e){super(t,e)}floatingLiteral(){return this.getRuleContext(0,Gy)}OCTAL_LITERAL(){return this.getToken(CG.OCTAL_LITERAL,0)}DECIMAL_LITERAL(){return this.getToken(CG.DECIMAL_LITERAL,0)}HEXADECIMAL_LITERAL(){return this.getToken(CG.HEXADECIMAL_LITERAL,0)}INF(){return this.getToken(CG.INF,0)}NAN_SQL(){return this.getToken(CG.NAN_SQL,0)}PLUS(){return this.getToken(CG.PLUS,0)}DASH(){return this.getToken(CG.DASH,0)}get ruleIndex(){return CG.RULE_numberLiteral}accept(t){return t.visitNumberLiteral?t.visitNumberLiteral(this):t.visitChildren(this)}},vy=class extends ga{constructor(t,e){super(t,e)}numberLiteral(){return this.getRuleContext(0,Fy)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}NULL_SQL(){return this.getToken(CG.NULL_SQL,0)}get ruleIndex(){return CG.RULE_literal}accept(t){return t.visitLiteral?t.visitLiteral(this):t.visitChildren(this)}},By=class extends ga{constructor(t,e){super(t,e)}SECOND(){return this.getToken(CG.SECOND,0)}MINUTE(){return this.getToken(CG.MINUTE,0)}HOUR(){return this.getToken(CG.HOUR,0)}DAY(){return this.getToken(CG.DAY,0)}WEEK(){return this.getToken(CG.WEEK,0)}MONTH(){return this.getToken(CG.MONTH,0)}QUARTER(){return this.getToken(CG.QUARTER,0)}YEAR(){return this.getToken(CG.YEAR,0)}get ruleIndex(){return CG.RULE_interval}accept(t){return t.visitInterval?t.visitInterval(this):t.visitChildren(this)}},yy=class extends ga{constructor(t,e){super(t,e)}AFTER(){return this.getToken(CG.AFTER,0)}ALIAS(){return this.getToken(CG.ALIAS,0)}ALL(){return this.getToken(CG.ALL,0)}ALTER(){return this.getToken(CG.ALTER,0)}AND(){return this.getToken(CG.AND,0)}ANTI(){return this.getToken(CG.ANTI,0)}ANY(){return this.getToken(CG.ANY,0)}ARRAY(){return this.getToken(CG.ARRAY,0)}AS(){return this.getToken(CG.AS,0)}ASCENDING(){return this.getToken(CG.ASCENDING,0)}ASOF(){return this.getToken(CG.ASOF,0)}AST(){return this.getToken(CG.AST,0)}ASYNC(){return this.getToken(CG.ASYNC,0)}ATTACH(){return this.getToken(CG.ATTACH,0)}BETWEEN(){return this.getToken(CG.BETWEEN,0)}BOTH(){return this.getToken(CG.BOTH,0)}BY(){return this.getToken(CG.BY,0)}CASE(){return this.getToken(CG.CASE,0)}CAST(){return this.getToken(CG.CAST,0)}CHECK(){return this.getToken(CG.CHECK,0)}CLEAR(){return this.getToken(CG.CLEAR,0)}CLUSTER(){return this.getToken(CG.CLUSTER,0)}CODEC(){return this.getToken(CG.CODEC,0)}COLLATE(){return this.getToken(CG.COLLATE,0)}COLUMN(){return this.getToken(CG.COLUMN,0)}COMMENT(){return this.getToken(CG.COMMENT,0)}CONSTRAINT(){return this.getToken(CG.CONSTRAINT,0)}CREATE(){return this.getToken(CG.CREATE,0)}CROSS(){return this.getToken(CG.CROSS,0)}CUBE(){return this.getToken(CG.CUBE,0)}CURRENT(){return this.getToken(CG.CURRENT,0)}DATABASE(){return this.getToken(CG.DATABASE,0)}DATABASES(){return this.getToken(CG.DATABASES,0)}DATE(){return this.getToken(CG.DATE,0)}DEDUPLICATE(){return this.getToken(CG.DEDUPLICATE,0)}DEFAULT(){return this.getToken(CG.DEFAULT,0)}DELAY(){return this.getToken(CG.DELAY,0)}DELETE(){return this.getToken(CG.DELETE,0)}DESCRIBE(){return this.getToken(CG.DESCRIBE,0)}DESC(){return this.getToken(CG.DESC,0)}DESCENDING(){return this.getToken(CG.DESCENDING,0)}DETACH(){return this.getToken(CG.DETACH,0)}DICTIONARIES(){return this.getToken(CG.DICTIONARIES,0)}DICTIONARY(){return this.getToken(CG.DICTIONARY,0)}DISK(){return this.getToken(CG.DISK,0)}DISTINCT(){return this.getToken(CG.DISTINCT,0)}DISTRIBUTED(){return this.getToken(CG.DISTRIBUTED,0)}DROP(){return this.getToken(CG.DROP,0)}ELSE(){return this.getToken(CG.ELSE,0)}END(){return this.getToken(CG.END,0)}ENGINE(){return this.getToken(CG.ENGINE,0)}EVENTS(){return this.getToken(CG.EVENTS,0)}EXISTS(){return this.getToken(CG.EXISTS,0)}EXPLAIN(){return this.getToken(CG.EXPLAIN,0)}EXPRESSION(){return this.getToken(CG.EXPRESSION,0)}EXTRACT(){return this.getToken(CG.EXTRACT,0)}FETCHES(){return this.getToken(CG.FETCHES,0)}FINAL(){return this.getToken(CG.FINAL,0)}FIRST(){return this.getToken(CG.FIRST,0)}FLUSH(){return this.getToken(CG.FLUSH,0)}FOR(){return this.getToken(CG.FOR,0)}FOLLOWING(){return this.getToken(CG.FOLLOWING,0)}FORMAT(){return this.getToken(CG.FORMAT,0)}FREEZE(){return this.getToken(CG.FREEZE,0)}FROM(){return this.getToken(CG.FROM,0)}FULL(){return this.getToken(CG.FULL,0)}FUNCTION(){return this.getToken(CG.FUNCTION,0)}GLOBAL(){return this.getToken(CG.GLOBAL,0)}GRANULARITY(){return this.getToken(CG.GRANULARITY,0)}GROUP(){return this.getToken(CG.GROUP,0)}HAVING(){return this.getToken(CG.HAVING,0)}HIERARCHICAL(){return this.getToken(CG.HIERARCHICAL,0)}ID(){return this.getToken(CG.ID,0)}IF(){return this.getToken(CG.IF,0)}ILIKE(){return this.getToken(CG.ILIKE,0)}IN(){return this.getToken(CG.IN,0)}INDEX(){return this.getToken(CG.INDEX,0)}INJECTIVE(){return this.getToken(CG.INJECTIVE,0)}INNER(){return this.getToken(CG.INNER,0)}INSERT(){return this.getToken(CG.INSERT,0)}INTERVAL(){return this.getToken(CG.INTERVAL,0)}INTO(){return this.getToken(CG.INTO,0)}IS(){return this.getToken(CG.IS,0)}IS_OBJECT_ID(){return this.getToken(CG.IS_OBJECT_ID,0)}JOIN(){return this.getToken(CG.JOIN,0)}JSON_FALSE(){return this.getToken(CG.JSON_FALSE,0)}JSON_TRUE(){return this.getToken(CG.JSON_TRUE,0)}KEY(){return this.getToken(CG.KEY,0)}KILL(){return this.getToken(CG.KILL,0)}LAST(){return this.getToken(CG.LAST,0)}LAYOUT(){return this.getToken(CG.LAYOUT,0)}LEADING(){return this.getToken(CG.LEADING,0)}LEFT(){return this.getToken(CG.LEFT,0)}LIFETIME(){return this.getToken(CG.LIFETIME,0)}LIKE(){return this.getToken(CG.LIKE,0)}LIMIT(){return this.getToken(CG.LIMIT,0)}LIVE(){return this.getToken(CG.LIVE,0)}LOCAL(){return this.getToken(CG.LOCAL,0)}LOGS(){return this.getToken(CG.LOGS,0)}MATERIALIZE(){return this.getToken(CG.MATERIALIZE,0)}MATERIALIZED(){return this.getToken(CG.MATERIALIZED,0)}MAX(){return this.getToken(CG.MAX,0)}MERGES(){return this.getToken(CG.MERGES,0)}MIN(){return this.getToken(CG.MIN,0)}MODIFY(){return this.getToken(CG.MODIFY,0)}MOVE(){return this.getToken(CG.MOVE,0)}MUTATION(){return this.getToken(CG.MUTATION,0)}NO(){return this.getToken(CG.NO,0)}NOT(){return this.getToken(CG.NOT,0)}NULLS(){return this.getToken(CG.NULLS,0)}OFFSET(){return this.getToken(CG.OFFSET,0)}ON(){return this.getToken(CG.ON,0)}OPTIMIZE(){return this.getToken(CG.OPTIMIZE,0)}OR(){return this.getToken(CG.OR,0)}ORDER(){return this.getToken(CG.ORDER,0)}OUTER(){return this.getToken(CG.OUTER,0)}OUTFILE(){return this.getToken(CG.OUTFILE,0)}OVER(){return this.getToken(CG.OVER,0)}PARTITION(){return this.getToken(CG.PARTITION,0)}POPULATE(){return this.getToken(CG.POPULATE,0)}PRECEDING(){return this.getToken(CG.PRECEDING,0)}PREWHERE(){return this.getToken(CG.PREWHERE,0)}PRIMARY(){return this.getToken(CG.PRIMARY,0)}RANGE(){return this.getToken(CG.RANGE,0)}RELOAD(){return this.getToken(CG.RELOAD,0)}REMOVE(){return this.getToken(CG.REMOVE,0)}RENAME(){return this.getToken(CG.RENAME,0)}REPLACE(){return this.getToken(CG.REPLACE,0)}REPLICA(){return this.getToken(CG.REPLICA,0)}REPLICATED(){return this.getToken(CG.REPLICATED,0)}RIGHT(){return this.getToken(CG.RIGHT,0)}ROLLUP(){return this.getToken(CG.ROLLUP,0)}ROW(){return this.getToken(CG.ROW,0)}ROWS(){return this.getToken(CG.ROWS,0)}SAMPLE(){return this.getToken(CG.SAMPLE,0)}SELECT(){return this.getToken(CG.SELECT,0)}SEMI(){return this.getToken(CG.SEMI,0)}SENDS(){return this.getToken(CG.SENDS,0)}SET(){return this.getToken(CG.SET,0)}SETTINGS(){return this.getToken(CG.SETTINGS,0)}SHOW(){return this.getToken(CG.SHOW,0)}SOURCE(){return this.getToken(CG.SOURCE,0)}START(){return this.getToken(CG.START,0)}STOP(){return this.getToken(CG.STOP,0)}SUBSTRING(){return this.getToken(CG.SUBSTRING,0)}SYNC(){return this.getToken(CG.SYNC,0)}SYNTAX(){return this.getToken(CG.SYNTAX,0)}SYSTEM(){return this.getToken(CG.SYSTEM,0)}TABLE(){return this.getToken(CG.TABLE,0)}TABLES(){return this.getToken(CG.TABLES,0)}TEMPORARY(){return this.getToken(CG.TEMPORARY,0)}TEST(){return this.getToken(CG.TEST,0)}THEN(){return this.getToken(CG.THEN,0)}TIES(){return this.getToken(CG.TIES,0)}TIMEOUT(){return this.getToken(CG.TIMEOUT,0)}TIMESTAMP(){return this.getToken(CG.TIMESTAMP,0)}TOTALS(){return this.getToken(CG.TOTALS,0)}TRAILING(){return this.getToken(CG.TRAILING,0)}TRIM(){return this.getToken(CG.TRIM,0)}TRUNCATE(){return this.getToken(CG.TRUNCATE,0)}TO(){return this.getToken(CG.TO,0)}TOP(){return this.getToken(CG.TOP,0)}TTL(){return this.getToken(CG.TTL,0)}TYPE(){return this.getToken(CG.TYPE,0)}UNBOUNDED(){return this.getToken(CG.UNBOUNDED,0)}UNION(){return this.getToken(CG.UNION,0)}UPDATE(){return this.getToken(CG.UPDATE,0)}USE(){return this.getToken(CG.USE,0)}USING(){return this.getToken(CG.USING,0)}UUID(){return this.getToken(CG.UUID,0)}VALUES(){return this.getToken(CG.VALUES,0)}VIEW(){return this.getToken(CG.VIEW,0)}VOLUME(){return this.getToken(CG.VOLUME,0)}WATCH(){return this.getToken(CG.WATCH,0)}WHEN(){return this.getToken(CG.WHEN,0)}WHERE(){return this.getToken(CG.WHERE,0)}WINDOW(){return this.getToken(CG.WINDOW,0)}WITH(){return this.getToken(CG.WITH,0)}get ruleIndex(){return CG.RULE_keyword}accept(t){return t.visitKeyword?t.visitKeyword(this):t.visitChildren(this)}},fy=class extends ga{constructor(t,e){super(t,e)}DATE(){return this.getToken(CG.DATE,0)}FIRST(){return this.getToken(CG.FIRST,0)}ID(){return this.getToken(CG.ID,0)}KEY(){return this.getToken(CG.KEY,0)}get ruleIndex(){return CG.RULE_keywordForAlias}accept(t){return t.visitKeywordForAlias?t.visitKeywordForAlias(this):t.visitChildren(this)}},Yy=class extends ga{constructor(t,e){super(t,e)}IDENTIFIER(){return this.getToken(CG.IDENTIFIER,0)}keywordForAlias(){return this.getRuleContext(0,fy)}get ruleIndex(){return CG.RULE_alias}accept(t){return t.visitAlias?t.visitAlias(this):t.visitChildren(this)}},wy=class extends ga{constructor(t,e){super(t,e)}IDENTIFIER(){return this.getToken(CG.IDENTIFIER,0)}interval(){return this.getRuleContext(0,By)}keyword(){return this.getRuleContext(0,yy)}get ruleIndex(){return CG.RULE_identifier}accept(t){return t.visitIdentifier?t.visitIdentifier(this):t.visitChildren(this)}},by=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,wy)}NULL_SQL(){return this.getToken(CG.NULL_SQL,0)}get ruleIndex(){return CG.RULE_identifierOrNull}accept(t){return t.visitIdentifierOrNull?t.visitIdentifierOrNull(this):t.visitChildren(this)}},Wy=class extends ga{constructor(t,e){super(t,e)}STRING_LITERAL(){return this.getToken(CG.STRING_LITERAL,0)}EQ_SINGLE(){return this.getToken(CG.EQ_SINGLE,0)}numberLiteral(){return this.getRuleContext(0,Fy)}get ruleIndex(){return CG.RULE_enumValue}accept(t){return t.visitEnumValue?t.visitEnumValue(this):t.visitChildren(this)}},Vy=class extends Ii{},Xy=["Null","Set","Log","Memory","TinyLog","StripeLog"],Ky=["MergeTree()","Merge()","ReplacingMergeTree()","CollapsingMergeTree()","AggregatingMergeTree()","Buffer()","Dictionary()","Distributed()","File()","GraphiteMergeTree()","Join()","Kafka()","MySQL()","URL()","ReplicatedAggregatingMergeTree()","ReplicatedCollapsingMergeTree()","ReplicatedGraphiteMergeTree()","ReplicatedMergeTree()","ReplicatedReplacingMergeTree()","ReplicatedSummingMergeTree()","ReplicatedVersionedCollapsingMergeTree()","SummingMergeTree()","VersionedCollapsingMergeTree()","PostgreSQL()"],Qy={SPACE:CG.WHITESPACE,FROM:CG.FROM,OPENING_BRACKET:CG.LPAREN,CLOSING_BRACKET:CG.RPAREN,ALTER:CG.ALTER,INSERT:CG.INSERT,UPDATE:CG.UPDATE,JOIN:CG.JOIN,SEMICOLON:CG.SEMICOLON,SELECT:CG.SELECT};var Jy=new Set(function(){let t=[],e=CG.JSON_FALSE,s=CG.WHITESPACE;for(let a=e;a<=s;a++)a!==CG.ASTERISK&&t.push(a);return t.push(CG.EOF),t.push(CG.QUESTIONMARK),t}()),Zy=new Set([CG.RULE_databaseIdentifier,CG.RULE_tableIdentifier,CG.RULE_identifier,CG.RULE_columnIdentifier,CG.RULE_identifierOrNull,CG.RULE_literal]),qy=class extends Vy{constructor(){super(),this.visitTableIdentifier=t=>{try{this.symbolTable.addNewSymbolOfType(qc,this.scope,t.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitTableExpressionAlias=t=>{try{var e,s,a;this.symbolTable.addNewSymbolOfType(qc,this.scope,null===(e=t.tableExpression())||void 0===e?void 0:e.getText(),(null===(s=t.alias())||void 0===s?void 0:s.getText())||(null===(a=t.identifier())||void 0===a?void 0:a.getText())||void 0)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitColumnExpressionAlias=t=>{try{var e,s;let a=(null===(e=t.alias())||void 0===e?void 0:e.getText())||(null===(s=t.identifier())||void 0===s?void 0:s.getText());a&&this.symbolTable.addNewSymbolOfType(zc,this.scope,a)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.symbolTable=new Zc("",{allowDuplicateSymbols:!0}),this.scope=this.symbolTable.addNewSymbolOfType(Bc,void 0)}};function jy(t,e){if(!e||"update"===e)return t.root();switch(e){case"from":return t.fromClause();case"alter":return t.alterStatement();case"insert":return t.insertStatement();case"select":return t.selectStatement()}}var zy={Lexer:LG,Parser:CG,tokenDictionary:Qy,ignoredTokens:Jy,rulesToVisit:Zy,getParseTree:jy,enrichAutocompleteResult:function(t,e,s,a,r,i){let{shouldSuggestColumns:c,shouldSuggestColumnAliases:n,...h}=function(t,e,s){let a,r,i=!1,c=!1,n=!1,h=!1,E=!1;for(let[T,o]of t)if(uC(e,o))switch(T){case CG.RULE_tableIdentifier:if(o.ruleList.includes(CG.RULE_createStatement)||o.ruleList.includes(CG.RULE_columnsExpression))break;a=UC(s,Qy,e,CG.VIEW)?"VIEWS":UC(s,Qy,e,CG.TABLE)?"TABLES":"ALL";break;case CG.RULE_identifier:o.ruleList.includes(CG.RULE_columnExpression)&&(c=!0,i=!0),o.ruleList.includes(CG.RULE_alterTableClause)&&(h=!0);break;case CG.RULE_columnIdentifier:h=!0,(o.ruleList.includes(CG.RULE_orderExpression)||o.ruleList.includes(CG.RULE_groupByClause))&&(E=!0);break;case CG.RULE_identifierOrNull:o.ruleList.includes(CG.RULE_engineClause)&&(r={engines:Xy,functionalEngines:Ky});break;case CG.RULE_databaseIdentifier:n=!0}return{suggestViewsOrTables:a,suggestAggregateFunctions:i,suggestFunctions:c,suggestEngines:r,suggestDatabases:n,shouldSuggestColumns:h,shouldSuggestColumnAliases:E}}(e,a,s),E={...t,...h,suggestTemplates:_C(i,r)};if(c||n){let t=new qy,{tableContextSuggestion:e,suggestColumnAliases:a}=mC(LG,CG,t,Qy,jy,s,r,i);c&&e&&(E.suggestColumns=e),n&&a&&(E.suggestColumnAliases=a)}return E}},$y=(qi=class t extends $r{constructor(e){super(e),this.interpreter=new hi(this,t._ATN,t.decisionsToDFA,new Si)}get grammarFileName(){return"YQL.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}get channelNames(){return t.channelNames}get modeNames(){return t.modeNames}static get _ATN(){return t.__ATN||(t.__ATN=(new fr).deserialize(t._serializedATN)),t.__ATN}get vocabulary(){return t.vocabulary}},qi.QUERY=1,qi.EQUALS=2,qi.EQUALS2=3,qi.NOT_EQUALS=4,qi.NOT_EQUALS2=5,qi.LESS=6,qi.LESS_OR_EQ=7,qi.GREATER=8,qi.GREATER_OR_EQ=9,qi.SHIFT_LEFT=10,qi.ROT_LEFT=11,qi.AMPERSAND=12,qi.PIPE=13,qi.DOUBLE_PIPE=14,qi.STRUCT_OPEN=15,qi.STRUCT_CLOSE=16,qi.PLUS=17,qi.MINUS=18,qi.TILDA=19,qi.ASTERISK=20,qi.SLASH=21,qi.BACKSLASH=22,qi.PERCENT=23,qi.SEMICOLON=24,qi.DOT=25,qi.COMMA=26,qi.LPAREN=27,qi.RPAREN=28,qi.QUESTION=29,qi.COLON=30,qi.AT=31,qi.DOUBLE_AT=32,qi.DOLLAR=33,qi.QUOTE_DOUBLE=34,qi.QUOTE_SINGLE=35,qi.BACKTICK=36,qi.LBRACE_CURLY=37,qi.RBRACE_CURLY=38,qi.CARET=39,qi.NAMESPACE=40,qi.ARROW=41,qi.RBRACE_SQUARE=42,qi.LBRACE_SQUARE=43,qi.ABORT=44,qi.ACTION=45,qi.ADD=46,qi.AFTER=47,qi.ALL=48,qi.ALTER=49,qi.ANALYZE=50,qi.AND=51,qi.ANSI=52,qi.ANY=53,qi.ARRAY=54,qi.AS=55,qi.ASC=56,qi.ASSUME=57,qi.ASYMMETRIC=58,qi.ASYNC=59,qi.ATTACH=60,qi.ATTRIBUTES=61,qi.AUTOINCREMENT=62,qi.AUTOMAP=63,qi.BEFORE=64,qi.BEGIN=65,qi.BERNOULLI=66,qi.BETWEEN=67,qi.BITCAST=68,qi.BY=69,qi.CALLABLE=70,qi.CASCADE=71,qi.CASE=72,qi.CAST=73,qi.CHANGEFEED=74,qi.CHECK=75,qi.COLLATE=76,qi.COLUMN=77,qi.COLUMNS=78,qi.COMMIT=79,qi.COMPACT=80,qi.CONDITIONAL=81,qi.CONFLICT=82,qi.CONNECT=83,qi.CONSTRAINT=84,qi.CONSUMER=85,qi.COVER=86,qi.CREATE=87,qi.CROSS=88,qi.CUBE=89,qi.CURRENT=90,qi.CURRENT_DATE=91,qi.CURRENT_TIME=92,qi.CURRENT_TIMESTAMP=93,qi.DATA=94,qi.DATABASE=95,qi.DECIMAL=96,qi.DECLARE=97,qi.DEFAULT=98,qi.DEFERRABLE=99,qi.DEFERRED=100,qi.DEFINE=101,qi.DELETE=102,qi.DESC=103,qi.DESCRIBE=104,qi.DETACH=105,qi.DICT=106,qi.DIRECTORY=107,qi.DISABLE=108,qi.DISCARD=109,qi.DISTINCT=110,qi.DO=111,qi.DROP=112,qi.EACH=113,qi.ELSE=114,qi.EMPTY=115,qi.EMPTY_ACTION=116,qi.ENCRYPTED=117,qi.END=118,qi.ENUM=119,qi.ERASE=120,qi.ERROR=121,qi.ESCAPE=122,qi.EVALUATE=123,qi.EXCEPT=124,qi.EXCLUDE=125,qi.EXCLUSION=126,qi.EXCLUSIVE=127,qi.EXISTS=128,qi.EXPLAIN=129,qi.EXPORT=130,qi.EXTERNAL=131,qi.FAIL=132,qi.FALSE=133,qi.FAMILY=134,qi.FILTER=135,qi.FIRST=136,qi.FLATTEN=137,qi.FLOW=138,qi.FOLLOWING=139,qi.FOR=140,qi.FOREIGN=141,qi.FROM=142,qi.FULL=143,qi.FUNCTION=144,qi.GLOB=145,qi.GLOBAL=146,qi.GRANT=147,qi.GROUP=148,qi.GROUPING=149,qi.GROUPS=150,qi.HASH=151,qi.HAVING=152,qi.HOP=153,qi.IF=154,qi.IGNORE=155,qi.ILIKE=156,qi.IMMEDIATE=157,qi.IMPORT=158,qi.IN=159,qi.INDEX=160,qi.INDEXED=161,qi.INHERITS=162,qi.INITIAL=163,qi.INITIALLY=164,qi.INNER=165,qi.INSERT=166,qi.INSTEAD=167,qi.INTERSECT=168,qi.INTO=169,qi.IS=170,qi.ISNULL=171,qi.JOIN=172,qi.JSON_EXISTS=173,qi.JSON_QUERY=174,qi.JSON_VALUE=175,qi.KEY=176,qi.LAST=177,qi.LEFT=178,qi.LEGACY=179,qi.LIKE=180,qi.LIMIT=181,qi.LIST=182,qi.LOCAL=183,qi.MANAGE=184,qi.MATCH=185,qi.MATCHES=186,qi.MATCH_RECOGNIZE=187,qi.MEASURES=188,qi.MICROSECONDS=189,qi.MILLISECONDS=190,qi.MODIFY=191,qi.NANOSECONDS=192,qi.NATURAL=193,qi.NEXT=194,qi.NO=195,qi.NOT=196,qi.NOTNULL=197,qi.NULL=198,qi.NULLS=199,qi.OBJECT=200,qi.OF=201,qi.OFFSET=202,qi.OMIT=203,qi.ON=204,qi.ONE=205,qi.ONLY=206,qi.OPTION=207,qi.OPTIONAL=208,qi.OR=209,qi.ORDER=210,qi.OTHERS=211,qi.OUTER=212,qi.OVER=213,qi.PARALLEL=214,qi.PARTITION=215,qi.PASSING=216,qi.PASSWORD=217,qi.PAST=218,qi.PATTERN=219,qi.PER=220,qi.PERMUTE=221,qi.PLAN=222,qi.PRAGMA=223,qi.PRECEDING=224,qi.PRESORT=225,qi.PRIMARY=226,qi.PRIVILEGES=227,qi.PROCESS=228,qi.QUEUE=229,qi.RAISE=230,qi.RANGE=231,qi.REDUCE=232,qi.REFERENCES=233,qi.REGEXP=234,qi.REINDEX=235,qi.RELEASE=236,qi.REMOVE=237,qi.RENAME=238,qi.REPEATABLE=239,qi.REPLACE=240,qi.REPLICATION=241,qi.RESET=242,qi.RESOURCE=243,qi.RESPECT=244,qi.RESTRICT=245,qi.RESULT=246,qi.RETURN=247,qi.RETURNING=248,qi.REVERT=249,qi.REVOKE=250,qi.RIGHT=251,qi.RLIKE=252,qi.ROLLBACK=253,qi.ROLLUP=254,qi.ROW=255,qi.ROWS=256,qi.SAMPLE=257,qi.SAVEPOINT=258,qi.SCHEMA=259,qi.SECONDS=260,qi.SEEK=261,qi.SELECT=262,qi.SEMI=263,qi.SET=264,qi.SETS=265,qi.SHOW=266,qi.SKIP_RULE=267,qi.SOURCE=268,qi.STREAM=269,qi.STRUCT=270,qi.SUBQUERY=271,qi.SUBSET=272,qi.SYMBOLS=273,qi.SYMMETRIC=274,qi.SYNC=275,qi.SYSTEM=276,qi.TABLE=277,qi.TABLES=278,qi.TABLESAMPLE=279,qi.TABLESTORE=280,qi.TAGGED=281,qi.TEMP=282,qi.TEMPORARY=283,qi.THEN=284,qi.TIES=285,qi.TO=286,qi.TOPIC=287,qi.TRANSACTION=288,qi.TRIGGER=289,qi.TRUE=290,qi.TUPLE=291,qi.TYPE=292,qi.UNBOUNDED=293,qi.UNCONDITIONAL=294,qi.UNION=295,qi.UNIQUE=296,qi.UNKNOWN=297,qi.UNMATCHED=298,qi.UPDATE=299,qi.UPSERT=300,qi.USE=301,qi.USER=302,qi.USING=303,qi.VACUUM=304,qi.VALUES=305,qi.VARIANT=306,qi.VIEW=307,qi.VIRTUAL=308,qi.WHEN=309,qi.WHERE=310,qi.WINDOW=311,qi.WITH=312,qi.WITHOUT=313,qi.WRAPPER=314,qi.XOR=315,qi.STRING_VALUE=316,qi.ID_PLAIN=317,qi.ID_QUOTED=318,qi.DIGITS=319,qi.INTEGER_VALUE=320,qi.REAL=321,qi.BLOB=322,qi.WS=323,qi.COMMENT=324,qi.channelNames=["DEFAULT_TOKEN_CHANNEL","HIDDEN"],qi.literalNames=[null,null,"'='","'=='","'!='","'<>'","'<'","'<='","'>'","'>='","'<<'","'|<<'","'&'","'|'","'||'","'<|'","'|>'","'+'","'-'","'~'","'*'","'/'","''","'%'","';'","'.'","','","'('","')'","'?'","':'","'@'","'@@'","'$'","'\"'","'''","'`'","'{'","'}'","'^'","'::'","'->'","']'","'['"],qi.symbolicNames=[null,"QUERY","EQUALS","EQUALS2","NOT_EQUALS","NOT_EQUALS2","LESS","LESS_OR_EQ","GREATER","GREATER_OR_EQ","SHIFT_LEFT","ROT_LEFT","AMPERSAND","PIPE","DOUBLE_PIPE","STRUCT_OPEN","STRUCT_CLOSE","PLUS","MINUS","TILDA","ASTERISK","SLASH","BACKSLASH","PERCENT","SEMICOLON","DOT","COMMA","LPAREN","RPAREN","QUESTION","COLON","AT","DOUBLE_AT","DOLLAR","QUOTE_DOUBLE","QUOTE_SINGLE","BACKTICK","LBRACE_CURLY","RBRACE_CURLY","CARET","NAMESPACE","ARROW","RBRACE_SQUARE","LBRACE_SQUARE","ABORT","ACTION","ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANSI","ANY","ARRAY","AS","ASC","ASSUME","ASYMMETRIC","ASYNC","ATTACH","ATTRIBUTES","AUTOINCREMENT","AUTOMAP","BEFORE","BEGIN","BERNOULLI","BETWEEN","BITCAST","BY","CALLABLE","CASCADE","CASE","CAST","CHANGEFEED","CHECK","COLLATE","COLUMN","COLUMNS","COMMIT","COMPACT","CONDITIONAL","CONFLICT","CONNECT","CONSTRAINT","CONSUMER","COVER","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATA","DATABASE","DECIMAL","DECLARE","DEFAULT","DEFERRABLE","DEFERRED","DEFINE","DELETE","DESC","DESCRIBE","DETACH","DICT","DIRECTORY","DISABLE","DISCARD","DISTINCT","DO","DROP","EACH","ELSE","EMPTY","EMPTY_ACTION","ENCRYPTED","END","ENUM","ERASE","ERROR","ESCAPE","EVALUATE","EXCEPT","EXCLUDE","EXCLUSION","EXCLUSIVE","EXISTS","EXPLAIN","EXPORT","EXTERNAL","FAIL","FALSE","FAMILY","FILTER","FIRST","FLATTEN","FLOW","FOLLOWING","FOR","FOREIGN","FROM","FULL","FUNCTION","GLOB","GLOBAL","GRANT","GROUP","GROUPING","GROUPS","HASH","HAVING","HOP","IF","IGNORE","ILIKE","IMMEDIATE","IMPORT","IN","INDEX","INDEXED","INHERITS","INITIAL","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","JSON_EXISTS","JSON_QUERY","JSON_VALUE","KEY","LAST","LEFT","LEGACY","LIKE","LIMIT","LIST","LOCAL","MANAGE","MATCH","MATCHES","MATCH_RECOGNIZE","MEASURES","MICROSECONDS","MILLISECONDS","MODIFY","NANOSECONDS","NATURAL","NEXT","NO","NOT","NOTNULL","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OPTIONAL","OR","ORDER","OTHERS","OUTER","OVER","PARALLEL","PARTITION","PASSING","PASSWORD","PAST","PATTERN","PER","PERMUTE","PLAN","PRAGMA","PRECEDING","PRESORT","PRIMARY","PRIVILEGES","PROCESS","QUEUE","RAISE","RANGE","REDUCE","REFERENCES","REGEXP","REINDEX","RELEASE","REMOVE","RENAME","REPEATABLE","REPLACE","REPLICATION","RESET","RESOURCE","RESPECT","RESTRICT","RESULT","RETURN","RETURNING","REVERT","REVOKE","RIGHT","RLIKE","ROLLBACK","ROLLUP","ROW","ROWS","SAMPLE","SAVEPOINT","SCHEMA","SECONDS","SEEK","SELECT","SEMI","SET","SETS","SHOW","SKIP_RULE","SOURCE","STREAM","STRUCT","SUBQUERY","SUBSET","SYMBOLS","SYMMETRIC","SYNC","SYSTEM","TABLE","TABLES","TABLESAMPLE","TABLESTORE","TAGGED","TEMP","TEMPORARY","THEN","TIES","TO","TOPIC","TRANSACTION","TRIGGER","TRUE","TUPLE","TYPE","UNBOUNDED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UPDATE","UPSERT","USE","USER","USING","VACUUM","VALUES","VARIANT","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT","WRAPPER","XOR","STRING_VALUE","ID_PLAIN","ID_QUOTED","DIGITS","INTEGER_VALUE","REAL","BLOB","WS","COMMENT"],qi.modeNames=["DEFAULT_MODE"],qi.ruleNames=["QUERY","EQUALS","EQUALS2","NOT_EQUALS","NOT_EQUALS2","LESS","LESS_OR_EQ","GREATER","GREATER_OR_EQ","SHIFT_LEFT","ROT_LEFT","AMPERSAND","PIPE","DOUBLE_PIPE","STRUCT_OPEN","STRUCT_CLOSE","PLUS","MINUS","TILDA","ASTERISK","SLASH","BACKSLASH","PERCENT","SEMICOLON","DOT","COMMA","LPAREN","RPAREN","QUESTION","COLON","AT","DOUBLE_AT","DOLLAR","QUOTE_DOUBLE","QUOTE_SINGLE","BACKTICK","LBRACE_CURLY","RBRACE_CURLY","CARET","NAMESPACE","ARROW","RBRACE_SQUARE","LBRACE_SQUARE","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","ABORT","ACTION","ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANSI","ANY","ARRAY","AS","ASC","ASSUME","ASYMMETRIC","ASYNC","ATTACH","ATTRIBUTES","AUTOINCREMENT","AUTOMAP","BEFORE","BEGIN","BERNOULLI","BETWEEN","BITCAST","BY","CALLABLE","CASCADE","CASE","CAST","CHANGEFEED","CHECK","COLLATE","COLUMN","COLUMNS","COMMIT","COMPACT","CONDITIONAL","CONFLICT","CONNECT","CONSTRAINT","CONSUMER","COVER","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATA","DATABASE","DECIMAL","DECLARE","DEFAULT","DEFERRABLE","DEFERRED","DEFINE","DELETE","DESC","DESCRIBE","DETACH","DICT","DIRECTORY","DISABLE","DISCARD","DISTINCT","DO","DROP","EACH","ELSE","EMPTY","EMPTY_ACTION","ENCRYPTED","END","ENUM","ERASE","ERROR","ESCAPE","EVALUATE","EXCEPT","EXCLUDE","EXCLUSION","EXCLUSIVE","EXISTS","EXPLAIN","EXPORT","EXTERNAL","FAIL","FALSE","FAMILY","FILTER","FIRST","FLATTEN","FLOW","FOLLOWING","FOR","FOREIGN","FROM","FULL","FUNCTION","GLOB","GLOBAL","GRANT","GROUP","GROUPING","GROUPS","HASH","HAVING","HOP","IF","IGNORE","ILIKE","IMMEDIATE","IMPORT","IN","INDEX","INDEXED","INHERITS","INITIAL","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","JSON_EXISTS","JSON_QUERY","JSON_VALUE","KEY","LAST","LEFT","LEGACY","LIKE","LIMIT","LIST","LOCAL","MANAGE","MATCH","MATCHES","MATCH_RECOGNIZE","MEASURES","MICROSECONDS","MILLISECONDS","MODIFY","NANOSECONDS","NATURAL","NEXT","NO","NOT","NOTNULL","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OPTIONAL","OR","ORDER","OTHERS","OUTER","OVER","PARALLEL","PARTITION","PASSING","PASSWORD","PAST","PATTERN","PER","PERMUTE","PLAN","PRAGMA","PRECEDING","PRESORT","PRIMARY","PRIVILEGES","PROCESS","QUEUE","RAISE","RANGE","REDUCE","REFERENCES","REGEXP","REINDEX","RELEASE","REMOVE","RENAME","REPEATABLE","REPLACE","REPLICATION","RESET","RESOURCE","RESPECT","RESTRICT","RESULT","RETURN","RETURNING","REVERT","REVOKE","RIGHT","RLIKE","ROLLBACK","ROLLUP","ROW","ROWS","SAMPLE","SAVEPOINT","SCHEMA","SECONDS","SEEK","SELECT","SEMI","SET","SETS","SHOW","SKIP_RULE","SOURCE","STREAM","STRUCT","SUBQUERY","SUBSET","SYMBOLS","SYMMETRIC","SYNC","SYSTEM","TABLE","TABLES","TABLESAMPLE","TABLESTORE","TAGGED","TEMP","TEMPORARY","THEN","TIES","TO","TOPIC","TRANSACTION","TRIGGER","TRUE","TUPLE","TYPE","UNBOUNDED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UPDATE","UPSERT","USE","USER","USING","VACUUM","VALUES","VARIANT","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT","WRAPPER","XOR","STRING_CORE_SINGLE","STRING_CORE_DOUBLE","STRING_SINGLE","STRING_DOUBLE","STRING_MULTILINE","STRING_VALUE","ID_PLAIN","ID_QUOTED_CORE","ID_QUOTED","DIGIT","HEXDIGIT","HEXDIGITS","OCTDIGITS","BINDIGITS","DECDIGITS","DIGITS","INTEGER_VALUE","FLOAT_EXP","REAL","BLOB","MULTILINE_COMMENT","LINE_COMMENT","WS","COMMENT"],qi._serializedATN=[4,0,324,3058,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,2,265,7,265,2,266,7,266,2,267,7,267,2,268,7,268,2,269,7,269,2,270,7,270,2,271,7,271,2,272,7,272,2,273,7,273,2,274,7,274,2,275,7,275,2,276,7,276,2,277,7,277,2,278,7,278,2,279,7,279,2,280,7,280,2,281,7,281,2,282,7,282,2,283,7,283,2,284,7,284,2,285,7,285,2,286,7,286,2,287,7,287,2,288,7,288,2,289,7,289,2,290,7,290,2,291,7,291,2,292,7,292,2,293,7,293,2,294,7,294,2,295,7,295,2,296,7,296,2,297,7,297,2,298,7,298,2,299,7,299,2,300,7,300,2,301,7,301,2,302,7,302,2,303,7,303,2,304,7,304,2,305,7,305,2,306,7,306,2,307,7,307,2,308,7,308,2,309,7,309,2,310,7,310,2,311,7,311,2,312,7,312,2,313,7,313,2,314,7,314,2,315,7,315,2,316,7,316,2,317,7,317,2,318,7,318,2,319,7,319,2,320,7,320,2,321,7,321,2,322,7,322,2,323,7,323,2,324,7,324,2,325,7,325,2,326,7,326,2,327,7,327,2,328,7,328,2,329,7,329,2,330,7,330,2,331,7,331,2,332,7,332,2,333,7,333,2,334,7,334,2,335,7,335,2,336,7,336,2,337,7,337,2,338,7,338,2,339,7,339,2,340,7,340,2,341,7,341,2,342,7,342,2,343,7,343,2,344,7,344,2,345,7,345,2,346,7,346,2,347,7,347,2,348,7,348,2,349,7,349,2,350,7,350,2,351,7,351,2,352,7,352,2,353,7,353,2,354,7,354,2,355,7,355,2,356,7,356,2,357,7,357,2,358,7,358,2,359,7,359,2,360,7,360,2,361,7,361,2,362,7,362,2,363,7,363,2,364,7,364,1,0,1,0,1,0,1,0,1,0,1,0,1,1,1,1,1,2,1,2,1,2,1,3,1,3,1,3,1,4,1,4,1,4,1,5,1,5,1,6,1,6,1,6,1,7,1,7,1,8,1,8,1,8,1,9,1,9,1,9,1,10,1,10,1,10,1,10,1,11,1,11,1,12,1,12,1,13,1,13,1,13,1,14,1,14,1,14,1,15,1,15,1,15,1,16,1,16,1,17,1,17,1,18,1,18,1,19,1,19,1,20,1,20,1,21,1,21,1,22,1,22,1,23,1,23,1,24,1,24,1,25,1,25,1,26,1,26,1,27,1,27,1,28,1,28,1,29,1,29,1,30,1,30,1,31,1,31,1,31,1,32,1,32,1,33,1,33,1,34,1,34,1,35,1,35,1,36,1,36,1,37,1,37,1,38,1,38,1,39,1,39,1,39,1,40,1,40,1,40,1,41,1,41,1,42,1,42,1,43,1,43,1,44,1,44,1,45,1,45,1,46,1,46,1,47,1,47,1,48,1,48,1,49,1,49,1,50,1,50,1,51,1,51,1,52,1,52,1,53,1,53,1,54,1,54,1,55,1,55,1,56,1,56,1,57,1,57,1,58,1,58,1,59,1,59,1,60,1,60,1,61,1,61,1,62,1,62,1,63,1,63,1,64,1,64,1,65,1,65,1,66,1,66,1,67,1,67,1,68,1,68,1,69,1,69,1,69,1,69,1,69,1,69,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,71,1,72,1,72,1,72,1,72,1,72,1,72,1,73,1,73,1,73,1,73,1,74,1,74,1,74,1,74,1,74,1,74,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,75,1,76,1,76,1,76,1,76,1,77,1,77,1,77,1,77,1,77,1,78,1,78,1,78,1,78,1,79,1,79,1,79,1,79,1,79,1,79,1,80,1,80,1,80,1,81,1,81,1,81,1,81,1,82,1,82,1,82,1,82,1,82,1,82,1,82,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,83,1,84,1,84,1,84,1,84,1,84,1,84,1,85,1,85,1,85,1,85,1,85,1,85,1,85,1,86,1,86,1,86,1,86,1,86,1,86,1,86,1,86,1,86,1,86,1,86,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,87,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,88,1,89,1,89,1,89,1,89,1,89,1,89,1,89,1,90,1,90,1,90,1,90,1,90,1,90,1,91,1,91,1,91,1,91,1,91,1,91,1,91,1,91,1,91,1,91,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,92,1,93,1,93,1,93,1,93,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,96,1,97,1,97,1,97,1,97,1,97,1,98,1,98,1,98,1,98,1,98,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,99,1,100,1,100,1,100,1,100,1,100,1,100,1,101,1,101,1,101,1,101,1,101,1,101,1,101,1,101,1,102,1,102,1,102,1,102,1,102,1,102,1,102,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,103,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,105,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,106,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,107,1,108,1,108,1,108,1,108,1,108,1,108,1,108,1,108,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,109,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,110,1,111,1,111,1,111,1,111,1,111,1,111,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,113,1,113,1,113,1,113,1,113,1,113,1,114,1,114,1,114,1,114,1,114,1,115,1,115,1,115,1,115,1,115,1,115,1,115,1,115,1,116,1,116,1,116,1,116,1,116,1,116,1,116,1,116,1,116,1,116,1,116,1,116,1,116,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,118,1,118,1,119,1,119,1,119,1,119,1,119,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,120,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,121,1,122,1,122,1,122,1,122,1,122,1,122,1,122,1,122,1,123,1,123,1,123,1,123,1,123,1,123,1,123,1,123,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,124,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,125,1,126,1,126,1,126,1,126,1,126,1,126,1,126,1,127,1,127,1,127,1,127,1,127,1,127,1,127,1,128,1,128,1,128,1,128,1,128,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,131,1,131,1,131,1,131,1,131,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,132,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,133,1,134,1,134,1,134,1,134,1,134,1,134,1,134,1,134,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,136,1,136,1,136,1,137,1,137,1,137,1,137,1,137,1,138,1,138,1,138,1,138,1,138,1,139,1,139,1,139,1,139,1,139,1,140,1,140,1,140,1,140,1,140,1,140,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,141,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,143,1,143,1,143,1,143,1,144,1,144,1,144,1,144,1,144,1,145,1,145,1,145,1,145,1,145,1,145,1,146,1,146,1,146,1,146,1,146,1,146,1,147,1,147,1,147,1,147,1,147,1,147,1,147,1,148,1,148,1,148,1,148,1,148,1,148,1,148,1,148,1,148,1,149,1,149,1,149,1,149,1,149,1,149,1,149,1,150,1,150,1,150,1,150,1,150,1,150,1,150,1,150,1,151,1,151,1,151,1,151,1,151,1,151,1,151,1,151,1,151,1,151,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,152,1,153,1,153,1,153,1,153,1,153,1,153,1,153,1,154,1,154,1,154,1,154,1,154,1,154,1,154,1,154,1,155,1,155,1,155,1,155,1,155,1,155,1,155,1,156,1,156,1,156,1,156,1,156,1,156,1,156,1,156,1,156,1,157,1,157,1,157,1,157,1,157,1,158,1,158,1,158,1,158,1,158,1,158,1,159,1,159,1,159,1,159,1,159,1,159,1,159,1,160,1,160,1,160,1,160,1,160,1,160,1,160,1,161,1,161,1,161,1,161,1,161,1,161,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,162,1,163,1,163,1,163,1,163,1,163,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,164,1,165,1,165,1,165,1,165,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,166,1,167,1,167,1,167,1,167,1,167,1,168,1,168,1,168,1,168,1,168,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,169,1,170,1,170,1,170,1,170,1,170,1,171,1,171,1,171,1,171,1,171,1,171,1,171,1,172,1,172,1,172,1,172,1,172,1,172,1,173,1,173,1,173,1,173,1,173,1,173,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,175,1,175,1,175,1,175,1,175,1,175,1,175,1,176,1,176,1,176,1,176,1,176,1,177,1,177,1,177,1,177,1,177,1,177,1,177,1,178,1,178,1,178,1,178,1,179,1,179,1,179,1,180,1,180,1,180,1,180,1,180,1,180,1,180,1,181,1,181,1,181,1,181,1,181,1,181,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,184,1,184,1,184,1,185,1,185,1,185,1,185,1,185,1,185,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,186,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,187,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,188,1,189,1,189,1,189,1,189,1,189,1,189,1,189,1,189,1,189,1,189,1,190,1,190,1,190,1,190,1,190,1,190,1,191,1,191,1,191,1,191,1,191,1,191,1,191,1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,193,1,194,1,194,1,194,1,194,1,194,1,195,1,195,1,195,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,197,1,197,1,197,1,197,1,197,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,198,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,200,1,201,1,201,1,201,1,201,1,202,1,202,1,202,1,202,1,202,1,203,1,203,1,203,1,203,1,203,1,204,1,204,1,204,1,204,1,204,1,204,1,204,1,205,1,205,1,205,1,205,1,205,1,206,1,206,1,206,1,206,1,206,1,206,1,207,1,207,1,207,1,207,1,207,1,208,1,208,1,208,1,208,1,208,1,208,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,210,1,210,1,210,1,210,1,210,1,210,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,211,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,212,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,213,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,214,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,215,1,216,1,216,1,216,1,216,1,216,1,216,1,216,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,217,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,219,1,219,1,219,1,219,1,219,1,220,1,220,1,220,1,221,1,221,1,221,1,221,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,222,1,223,1,223,1,223,1,223,1,223,1,224,1,224,1,224,1,224,1,224,1,224,1,225,1,225,1,225,1,225,1,225,1,225,1,225,1,226,1,226,1,226,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,228,1,228,1,228,1,228,1,228,1,229,1,229,1,229,1,230,1,230,1,230,1,230,1,231,1,231,1,231,1,231,1,231,1,232,1,232,1,232,1,232,1,232,1,232,1,232,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,233,1,234,1,234,1,234,1,235,1,235,1,235,1,235,1,235,1,235,1,236,1,236,1,236,1,236,1,236,1,236,1,236,1,237,1,237,1,237,1,237,1,237,1,237,1,238,1,238,1,238,1,238,1,238,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,239,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,241,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,243,1,243,1,243,1,243,1,243,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,244,1,245,1,245,1,245,1,245,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,246,1,247,1,247,1,247,1,247,1,247,1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,249,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,250,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,251,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,252,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,254,1,254,1,254,1,254,1,254,1,254,1,255,1,255,1,255,1,255,1,255,1,255,1,256,1,256,1,256,1,256,1,256,1,256,1,257,1,257,1,257,1,257,1,257,1,257,1,257,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,258,1,259,1,259,1,259,1,259,1,259,1,259,1,259,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,260,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,261,1,262,1,262,1,262,1,262,1,262,1,262,1,262,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,265,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,266,1,267,1,267,1,267,1,267,1,267,1,267,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,268,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,269,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,271,1,271,1,271,1,271,1,271,1,271,1,271,1,272,1,272,1,272,1,272,1,272,1,272,1,272,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,274,1,274,1,274,1,274,1,274,1,274,1,274,1,275,1,275,1,275,1,275,1,275,1,275,1,275,1,276,1,276,1,276,1,276,1,276,1,276,1,277,1,277,1,277,1,277,1,277,1,277,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,278,1,279,1,279,1,279,1,279,1,279,1,279,1,279,1,280,1,280,1,280,1,280,1,281,1,281,1,281,1,281,1,281,1,282,1,282,1,282,1,282,1,282,1,282,1,282,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,283,1,284,1,284,1,284,1,284,1,284,1,284,1,284,1,285,1,285,1,285,1,285,1,285,1,285,1,285,1,285,1,286,1,286,1,286,1,286,1,286,1,287,1,287,1,287,1,287,1,287,1,287,1,287,1,288,1,288,1,288,1,288,1,288,1,289,1,289,1,289,1,289,1,290,1,290,1,290,1,290,1,290,1,291,1,291,1,291,1,291,1,291,1,292,1,292,1,292,1,292,1,292,1,293,1,293,1,293,1,293,1,293,1,293,1,293,1,294,1,294,1,294,1,294,1,294,1,294,1,294,1,295,1,295,1,295,1,295,1,295,1,295,1,295,1,296,1,296,1,296,1,296,1,296,1,296,1,296,1,296,1,296,1,297,1,297,1,297,1,297,1,297,1,297,1,297,1,298,1,298,1,298,1,298,1,298,1,298,1,298,1,298,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,299,1,300,1,300,1,300,1,300,1,300,1,301,1,301,1,301,1,301,1,301,1,301,1,301,1,302,1,302,1,302,1,302,1,302,1,302,1,303,1,303,1,303,1,303,1,303,1,303,1,303,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,304,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,305,1,306,1,306,1,306,1,306,1,306,1,306,1,306,1,307,1,307,1,307,1,307,1,307,1,308,1,308,1,308,1,308,1,308,1,308,1,308,1,308,1,308,1,308,1,309,1,309,1,309,1,309,1,309,1,310,1,310,1,310,1,310,1,310,1,311,1,311,1,311,1,312,1,312,1,312,1,312,1,312,1,312,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,313,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,314,1,315,1,315,1,315,1,315,1,315,1,316,1,316,1,316,1,316,1,316,1,316,1,317,1,317,1,317,1,317,1,317,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,318,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,319,1,320,1,320,1,320,1,320,1,320,1,320,1,321,1,321,1,321,1,321,1,321,1,321,1,321,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,322,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,323,1,324,1,324,1,324,1,324,1,324,1,324,1,324,1,325,1,325,1,325,1,325,1,325,1,325,1,325,1,326,1,326,1,326,1,326,1,327,1,327,1,327,1,327,1,327,1,328,1,328,1,328,1,328,1,328,1,328,1,329,1,329,1,329,1,329,1,329,1,329,1,329,1,330,1,330,1,330,1,330,1,330,1,330,1,330,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,331,1,332,1,332,1,332,1,332,1,332,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,333,1,334,1,334,1,334,1,334,1,334,1,335,1,335,1,335,1,335,1,335,1,335,1,336,1,336,1,336,1,336,1,336,1,336,1,336,1,337,1,337,1,337,1,337,1,337,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,338,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,339,1,340,1,340,1,340,1,340,1,341,1,341,1,341,1,341,3,341,2847,8,341,1,342,1,342,1,342,1,342,3,342,2853,8,342,1,343,1,343,5,343,2857,8,343,10,343,12,343,2860,9,343,1,343,1,343,1,344,1,344,5,344,2866,8,344,10,344,12,344,2869,9,344,1,344,1,344,1,345,1,345,5,345,2875,8,345,10,345,12,345,2878,9,345,1,345,1,345,4,345,2882,8,345,11,345,12,345,2883,1,345,3,345,2887,8,345,1,346,1,346,1,346,3,346,2892,8,346,1,346,1,346,1,346,1,346,1,346,1,346,1,346,1,346,3,346,2902,8,346,3,346,2904,8,346,1,347,1,347,1,347,5,347,2909,8,347,10,347,12,347,2912,9,347,1,348,1,348,1,348,1,348,1,348,3,348,2919,8,348,1,349,1,349,5,349,2923,8,349,10,349,12,349,2926,9,349,1,349,1,349,1,350,1,350,1,351,1,351,1,352,1,352,1,352,4,352,2937,8,352,11,352,12,352,2938,1,353,1,353,1,353,4,353,2944,8,353,11,353,12,353,2945,1,354,1,354,1,354,4,354,2951,8,354,11,354,12,354,2952,1,355,4,355,2956,8,355,11,355,12,355,2957,1,356,1,356,1,356,1,356,3,356,2964,8,356,1,357,1,357,1,357,3,357,2969,8,357,1,357,1,357,1,357,1,357,1,357,1,357,3,357,2977,8,357,1,358,1,358,1,358,3,358,2982,8,358,1,358,1,358,1,359,1,359,1,359,5,359,2989,8,359,10,359,12,359,2992,9,359,1,359,3,359,2995,8,359,1,359,1,359,1,359,3,359,3e3,8,359,1,359,1,359,1,359,1,359,1,359,1,359,3,359,3008,8,359,3,359,3010,8,359,1,360,1,360,1,360,4,360,3015,8,360,11,360,12,360,3016,1,360,1,360,1,361,1,361,1,361,1,361,5,361,3025,8,361,10,361,12,361,3028,9,361,1,361,1,361,1,361,1,362,1,362,1,362,1,362,5,362,3037,8,362,10,362,12,362,3040,9,362,1,362,1,362,3,362,3044,8,362,1,362,3,362,3047,8,362,1,363,1,363,1,363,1,363,1,364,1,364,3,364,3055,8,364,1,364,1,364,2,2876,3026,0,365,1,1,3,2,5,3,7,4,9,5,11,6,13,7,15,8,17,9,19,10,21,11,23,12,25,13,27,14,29,15,31,16,33,17,35,18,37,19,39,20,41,21,43,22,45,23,47,24,49,25,51,26,53,27,55,28,57,29,59,30,61,31,63,32,65,33,67,34,69,35,71,36,73,37,75,38,77,39,79,40,81,41,83,42,85,43,87,0,89,0,91,0,93,0,95,0,97,0,99,0,101,0,103,0,105,0,107,0,109,0,111,0,113,0,115,0,117,0,119,0,121,0,123,0,125,0,127,0,129,0,131,0,133,0,135,0,137,0,139,44,141,45,143,46,145,47,147,48,149,49,151,50,153,51,155,52,157,53,159,54,161,55,163,56,165,57,167,58,169,59,171,60,173,61,175,62,177,63,179,64,181,65,183,66,185,67,187,68,189,69,191,70,193,71,195,72,197,73,199,74,201,75,203,76,205,77,207,78,209,79,211,80,213,81,215,82,217,83,219,84,221,85,223,86,225,87,227,88,229,89,231,90,233,91,235,92,237,93,239,94,241,95,243,96,245,97,247,98,249,99,251,100,253,101,255,102,257,103,259,104,261,105,263,106,265,107,267,108,269,109,271,110,273,111,275,112,277,113,279,114,281,115,283,116,285,117,287,118,289,119,291,120,293,121,295,122,297,123,299,124,301,125,303,126,305,127,307,128,309,129,311,130,313,131,315,132,317,133,319,134,321,135,323,136,325,137,327,138,329,139,331,140,333,141,335,142,337,143,339,144,341,145,343,146,345,147,347,148,349,149,351,150,353,151,355,152,357,153,359,154,361,155,363,156,365,157,367,158,369,159,371,160,373,161,375,162,377,163,379,164,381,165,383,166,385,167,387,168,389,169,391,170,393,171,395,172,397,173,399,174,401,175,403,176,405,177,407,178,409,179,411,180,413,181,415,182,417,183,419,184,421,185,423,186,425,187,427,188,429,189,431,190,433,191,435,192,437,193,439,194,441,195,443,196,445,197,447,198,449,199,451,200,453,201,455,202,457,203,459,204,461,205,463,206,465,207,467,208,469,209,471,210,473,211,475,212,477,213,479,214,481,215,483,216,485,217,487,218,489,219,491,220,493,221,495,222,497,223,499,224,501,225,503,226,505,227,507,228,509,229,511,230,513,231,515,232,517,233,519,234,521,235,523,236,525,237,527,238,529,239,531,240,533,241,535,242,537,243,539,244,541,245,543,246,545,247,547,248,549,249,551,250,553,251,555,252,557,253,559,254,561,255,563,256,565,257,567,258,569,259,571,260,573,261,575,262,577,263,579,264,581,265,583,266,585,267,587,268,589,269,591,270,593,271,595,272,597,273,599,274,601,275,603,276,605,277,607,278,609,279,611,280,613,281,615,282,617,283,619,284,621,285,623,286,625,287,627,288,629,289,631,290,633,291,635,292,637,293,639,294,641,295,643,296,645,297,647,298,649,299,651,300,653,301,655,302,657,303,659,304,661,305,663,306,665,307,667,308,669,309,671,310,673,311,675,312,677,313,679,314,681,315,683,0,685,0,687,0,689,0,691,0,693,316,695,317,697,0,699,318,701,0,703,0,705,0,707,0,709,0,711,0,713,319,715,320,717,0,719,321,721,322,723,0,725,0,727,323,729,324,1,0,35,2,0,65,65,97,97,2,0,66,66,98,98,2,0,67,67,99,99,2,0,68,68,100,100,2,0,69,69,101,101,2,0,70,70,102,102,2,0,71,71,103,103,2,0,72,72,104,104,2,0,73,73,105,105,2,0,74,74,106,106,2,0,75,75,107,107,2,0,76,76,108,108,2,0,77,77,109,109,2,0,78,78,110,110,2,0,79,79,111,111,2,0,80,80,112,112,2,0,81,81,113,113,2,0,82,82,114,114,2,0,83,83,115,115,2,0,84,84,116,116,2,0,85,85,117,117,2,0,86,86,118,118,2,0,87,87,119,119,2,0,88,88,120,120,2,0,89,89,121,121,2,0,90,90,122,122,2,0,39,39,92,92,2,0,34,34,92,92,3,0,65,90,95,95,97,122,1,0,96,96,3,0,48,57,65,70,97,102,2,0,52,52,56,56,2,0,10,10,13,13,1,1,10,10,3,0,9,10,12,13,32,32,3068,0,1,1,0,0,0,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,23,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,0,0,0,0,65,1,0,0,0,0,67,1,0,0,0,0,69,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,1,0,0,0,0,139,1,0,0,0,0,141,1,0,0,0,0,143,1,0,0,0,0,145,1,0,0,0,0,147,1,0,0,0,0,149,1,0,0,0,0,151,1,0,0,0,0,153,1,0,0,0,0,155,1,0,0,0,0,157,1,0,0,0,0,159,1,0,0,0,0,161,1,0,0,0,0,163,1,0,0,0,0,165,1,0,0,0,0,167,1,0,0,0,0,169,1,0,0,0,0,171,1,0,0,0,0,173,1,0,0,0,0,175,1,0,0,0,0,177,1,0,0,0,0,179,1,0,0,0,0,181,1,0,0,0,0,183,1,0,0,0,0,185,1,0,0,0,0,187,1,0,0,0,0,189,1,0,0,0,0,191,1,0,0,0,0,193,1,0,0,0,0,195,1,0,0,0,0,197,1,0,0,0,0,199,1,0,0,0,0,201,1,0,0,0,0,203,1,0,0,0,0,205,1,0,0,0,0,207,1,0,0,0,0,209,1,0,0,0,0,211,1,0,0,0,0,213,1,0,0,0,0,215,1,0,0,0,0,217,1,0,0,0,0,219,1,0,0,0,0,221,1,0,0,0,0,223,1,0,0,0,0,225,1,0,0,0,0,227,1,0,0,0,0,229,1,0,0,0,0,231,1,0,0,0,0,233,1,0,0,0,0,235,1,0,0,0,0,237,1,0,0,0,0,239,1,0,0,0,0,241,1,0,0,0,0,243,1,0,0,0,0,245,1,0,0,0,0,247,1,0,0,0,0,249,1,0,0,0,0,251,1,0,0,0,0,253,1,0,0,0,0,255,1,0,0,0,0,257,1,0,0,0,0,259,1,0,0,0,0,261,1,0,0,0,0,263,1,0,0,0,0,265,1,0,0,0,0,267,1,0,0,0,0,269,1,0,0,0,0,271,1,0,0,0,0,273,1,0,0,0,0,275,1,0,0,0,0,277,1,0,0,0,0,279,1,0,0,0,0,281,1,0,0,0,0,283,1,0,0,0,0,285,1,0,0,0,0,287,1,0,0,0,0,289,1,0,0,0,0,291,1,0,0,0,0,293,1,0,0,0,0,295,1,0,0,0,0,297,1,0,0,0,0,299,1,0,0,0,0,301,1,0,0,0,0,303,1,0,0,0,0,305,1,0,0,0,0,307,1,0,0,0,0,309,1,0,0,0,0,311,1,0,0,0,0,313,1,0,0,0,0,315,1,0,0,0,0,317,1,0,0,0,0,319,1,0,0,0,0,321,1,0,0,0,0,323,1,0,0,0,0,325,1,0,0,0,0,327,1,0,0,0,0,329,1,0,0,0,0,331,1,0,0,0,0,333,1,0,0,0,0,335,1,0,0,0,0,337,1,0,0,0,0,339,1,0,0,0,0,341,1,0,0,0,0,343,1,0,0,0,0,345,1,0,0,0,0,347,1,0,0,0,0,349,1,0,0,0,0,351,1,0,0,0,0,353,1,0,0,0,0,355,1,0,0,0,0,357,1,0,0,0,0,359,1,0,0,0,0,361,1,0,0,0,0,363,1,0,0,0,0,365,1,0,0,0,0,367,1,0,0,0,0,369,1,0,0,0,0,371,1,0,0,0,0,373,1,0,0,0,0,375,1,0,0,0,0,377,1,0,0,0,0,379,1,0,0,0,0,381,1,0,0,0,0,383,1,0,0,0,0,385,1,0,0,0,0,387,1,0,0,0,0,389,1,0,0,0,0,391,1,0,0,0,0,393,1,0,0,0,0,395,1,0,0,0,0,397,1,0,0,0,0,399,1,0,0,0,0,401,1,0,0,0,0,403,1,0,0,0,0,405,1,0,0,0,0,407,1,0,0,0,0,409,1,0,0,0,0,411,1,0,0,0,0,413,1,0,0,0,0,415,1,0,0,0,0,417,1,0,0,0,0,419,1,0,0,0,0,421,1,0,0,0,0,423,1,0,0,0,0,425,1,0,0,0,0,427,1,0,0,0,0,429,1,0,0,0,0,431,1,0,0,0,0,433,1,0,0,0,0,435,1,0,0,0,0,437,1,0,0,0,0,439,1,0,0,0,0,441,1,0,0,0,0,443,1,0,0,0,0,445,1,0,0,0,0,447,1,0,0,0,0,449,1,0,0,0,0,451,1,0,0,0,0,453,1,0,0,0,0,455,1,0,0,0,0,457,1,0,0,0,0,459,1,0,0,0,0,461,1,0,0,0,0,463,1,0,0,0,0,465,1,0,0,0,0,467,1,0,0,0,0,469,1,0,0,0,0,471,1,0,0,0,0,473,1,0,0,0,0,475,1,0,0,0,0,477,1,0,0,0,0,479,1,0,0,0,0,481,1,0,0,0,0,483,1,0,0,0,0,485,1,0,0,0,0,487,1,0,0,0,0,489,1,0,0,0,0,491,1,0,0,0,0,493,1,0,0,0,0,495,1,0,0,0,0,497,1,0,0,0,0,499,1,0,0,0,0,501,1,0,0,0,0,503,1,0,0,0,0,505,1,0,0,0,0,507,1,0,0,0,0,509,1,0,0,0,0,511,1,0,0,0,0,513,1,0,0,0,0,515,1,0,0,0,0,517,1,0,0,0,0,519,1,0,0,0,0,521,1,0,0,0,0,523,1,0,0,0,0,525,1,0,0,0,0,527,1,0,0,0,0,529,1,0,0,0,0,531,1,0,0,0,0,533,1,0,0,0,0,535,1,0,0,0,0,537,1,0,0,0,0,539,1,0,0,0,0,541,1,0,0,0,0,543,1,0,0,0,0,545,1,0,0,0,0,547,1,0,0,0,0,549,1,0,0,0,0,551,1,0,0,0,0,553,1,0,0,0,0,555,1,0,0,0,0,557,1,0,0,0,0,559,1,0,0,0,0,561,1,0,0,0,0,563,1,0,0,0,0,565,1,0,0,0,0,567,1,0,0,0,0,569,1,0,0,0,0,571,1,0,0,0,0,573,1,0,0,0,0,575,1,0,0,0,0,577,1,0,0,0,0,579,1,0,0,0,0,581,1,0,0,0,0,583,1,0,0,0,0,585,1,0,0,0,0,587,1,0,0,0,0,589,1,0,0,0,0,591,1,0,0,0,0,593,1,0,0,0,0,595,1,0,0,0,0,597,1,0,0,0,0,599,1,0,0,0,0,601,1,0,0,0,0,603,1,0,0,0,0,605,1,0,0,0,0,607,1,0,0,0,0,609,1,0,0,0,0,611,1,0,0,0,0,613,1,0,0,0,0,615,1,0,0,0,0,617,1,0,0,0,0,619,1,0,0,0,0,621,1,0,0,0,0,623,1,0,0,0,0,625,1,0,0,0,0,627,1,0,0,0,0,629,1,0,0,0,0,631,1,0,0,0,0,633,1,0,0,0,0,635,1,0,0,0,0,637,1,0,0,0,0,639,1,0,0,0,0,641,1,0,0,0,0,643,1,0,0,0,0,645,1,0,0,0,0,647,1,0,0,0,0,649,1,0,0,0,0,651,1,0,0,0,0,653,1,0,0,0,0,655,1,0,0,0,0,657,1,0,0,0,0,659,1,0,0,0,0,661,1,0,0,0,0,663,1,0,0,0,0,665,1,0,0,0,0,667,1,0,0,0,0,669,1,0,0,0,0,671,1,0,0,0,0,673,1,0,0,0,0,675,1,0,0,0,0,677,1,0,0,0,0,679,1,0,0,0,0,681,1,0,0,0,0,693,1,0,0,0,0,695,1,0,0,0,0,699,1,0,0,0,0,713,1,0,0,0,0,715,1,0,0,0,0,719,1,0,0,0,0,721,1,0,0,0,0,727,1,0,0,0,0,729,1,0,0,0,1,731,1,0,0,0,3,737,1,0,0,0,5,739,1,0,0,0,7,742,1,0,0,0,9,745,1,0,0,0,11,748,1,0,0,0,13,750,1,0,0,0,15,753,1,0,0,0,17,755,1,0,0,0,19,758,1,0,0,0,21,761,1,0,0,0,23,765,1,0,0,0,25,767,1,0,0,0,27,769,1,0,0,0,29,772,1,0,0,0,31,775,1,0,0,0,33,778,1,0,0,0,35,780,1,0,0,0,37,782,1,0,0,0,39,784,1,0,0,0,41,786,1,0,0,0,43,788,1,0,0,0,45,790,1,0,0,0,47,792,1,0,0,0,49,794,1,0,0,0,51,796,1,0,0,0,53,798,1,0,0,0,55,800,1,0,0,0,57,802,1,0,0,0,59,804,1,0,0,0,61,806,1,0,0,0,63,808,1,0,0,0,65,811,1,0,0,0,67,813,1,0,0,0,69,815,1,0,0,0,71,817,1,0,0,0,73,819,1,0,0,0,75,821,1,0,0,0,77,823,1,0,0,0,79,825,1,0,0,0,81,828,1,0,0,0,83,831,1,0,0,0,85,833,1,0,0,0,87,835,1,0,0,0,89,837,1,0,0,0,91,839,1,0,0,0,93,841,1,0,0,0,95,843,1,0,0,0,97,845,1,0,0,0,99,847,1,0,0,0,101,849,1,0,0,0,103,851,1,0,0,0,105,853,1,0,0,0,107,855,1,0,0,0,109,857,1,0,0,0,111,859,1,0,0,0,113,861,1,0,0,0,115,863,1,0,0,0,117,865,1,0,0,0,119,867,1,0,0,0,121,869,1,0,0,0,123,871,1,0,0,0,125,873,1,0,0,0,127,875,1,0,0,0,129,877,1,0,0,0,131,879,1,0,0,0,133,881,1,0,0,0,135,883,1,0,0,0,137,885,1,0,0,0,139,887,1,0,0,0,141,893,1,0,0,0,143,900,1,0,0,0,145,904,1,0,0,0,147,910,1,0,0,0,149,914,1,0,0,0,151,920,1,0,0,0,153,928,1,0,0,0,155,932,1,0,0,0,157,937,1,0,0,0,159,941,1,0,0,0,161,947,1,0,0,0,163,950,1,0,0,0,165,954,1,0,0,0,167,961,1,0,0,0,169,972,1,0,0,0,171,978,1,0,0,0,173,985,1,0,0,0,175,996,1,0,0,0,177,1010,1,0,0,0,179,1018,1,0,0,0,181,1025,1,0,0,0,183,1031,1,0,0,0,185,1041,1,0,0,0,187,1049,1,0,0,0,189,1057,1,0,0,0,191,1060,1,0,0,0,193,1069,1,0,0,0,195,1077,1,0,0,0,197,1082,1,0,0,0,199,1087,1,0,0,0,201,1098,1,0,0,0,203,1104,1,0,0,0,205,1112,1,0,0,0,207,1119,1,0,0,0,209,1127,1,0,0,0,211,1134,1,0,0,0,213,1142,1,0,0,0,215,1154,1,0,0,0,217,1163,1,0,0,0,219,1171,1,0,0,0,221,1182,1,0,0,0,223,1191,1,0,0,0,225,1197,1,0,0,0,227,1204,1,0,0,0,229,1210,1,0,0,0,231,1215,1,0,0,0,233,1223,1,0,0,0,235,1236,1,0,0,0,237,1249,1,0,0,0,239,1267,1,0,0,0,241,1272,1,0,0,0,243,1281,1,0,0,0,245,1289,1,0,0,0,247,1297,1,0,0,0,249,1305,1,0,0,0,251,1316,1,0,0,0,253,1325,1,0,0,0,255,1332,1,0,0,0,257,1339,1,0,0,0,259,1344,1,0,0,0,261,1353,1,0,0,0,263,1360,1,0,0,0,265,1365,1,0,0,0,267,1375,1,0,0,0,269,1383,1,0,0,0,271,1391,1,0,0,0,273,1400,1,0,0,0,275,1403,1,0,0,0,277,1408,1,0,0,0,279,1413,1,0,0,0,281,1418,1,0,0,0,283,1424,1,0,0,0,285,1437,1,0,0,0,287,1447,1,0,0,0,289,1451,1,0,0,0,291,1456,1,0,0,0,293,1462,1,0,0,0,295,1468,1,0,0,0,297,1475,1,0,0,0,299,1484,1,0,0,0,301,1491,1,0,0,0,303,1499,1,0,0,0,305,1509,1,0,0,0,307,1519,1,0,0,0,309,1526,1,0,0,0,311,1534,1,0,0,0,313,1541,1,0,0,0,315,1550,1,0,0,0,317,1555,1,0,0,0,319,1561,1,0,0,0,321,1568,1,0,0,0,323,1575,1,0,0,0,325,1581,1,0,0,0,327,1589,1,0,0,0,329,1594,1,0,0,0,331,1604,1,0,0,0,333,1608,1,0,0,0,335,1616,1,0,0,0,337,1621,1,0,0,0,339,1626,1,0,0,0,341,1635,1,0,0,0,343,1640,1,0,0,0,345,1647,1,0,0,0,347,1653,1,0,0,0,349,1659,1,0,0,0,351,1668,1,0,0,0,353,1675,1,0,0,0,355,1680,1,0,0,0,357,1687,1,0,0,0,359,1691,1,0,0,0,361,1694,1,0,0,0,363,1701,1,0,0,0,365,1707,1,0,0,0,367,1717,1,0,0,0,369,1724,1,0,0,0,371,1727,1,0,0,0,373,1733,1,0,0,0,375,1741,1,0,0,0,377,1750,1,0,0,0,379,1758,1,0,0,0,381,1768,1,0,0,0,383,1774,1,0,0,0,385,1781,1,0,0,0,387,1789,1,0,0,0,389,1799,1,0,0,0,391,1804,1,0,0,0,393,1807,1,0,0,0,395,1814,1,0,0,0,397,1819,1,0,0,0,399,1831,1,0,0,0,401,1842,1,0,0,0,403,1853,1,0,0,0,405,1857,1,0,0,0,407,1862,1,0,0,0,409,1867,1,0,0,0,411,1874,1,0,0,0,413,1879,1,0,0,0,415,1885,1,0,0,0,417,1890,1,0,0,0,419,1896,1,0,0,0,421,1903,1,0,0,0,423,1909,1,0,0,0,425,1917,1,0,0,0,427,1933,1,0,0,0,429,1942,1,0,0,0,431,1955,1,0,0,0,433,1968,1,0,0,0,435,1975,1,0,0,0,437,1987,1,0,0,0,439,1995,1,0,0,0,441,2e3,1,0,0,0,443,2003,1,0,0,0,445,2007,1,0,0,0,447,2015,1,0,0,0,449,2020,1,0,0,0,451,2026,1,0,0,0,453,2033,1,0,0,0,455,2036,1,0,0,0,457,2043,1,0,0,0,459,2048,1,0,0,0,461,2051,1,0,0,0,463,2055,1,0,0,0,465,2060,1,0,0,0,467,2067,1,0,0,0,469,2076,1,0,0,0,471,2079,1,0,0,0,473,2085,1,0,0,0,475,2092,1,0,0,0,477,2098,1,0,0,0,479,2103,1,0,0,0,481,2112,1,0,0,0,483,2122,1,0,0,0,485,2130,1,0,0,0,487,2139,1,0,0,0,489,2144,1,0,0,0,491,2152,1,0,0,0,493,2156,1,0,0,0,495,2164,1,0,0,0,497,2169,1,0,0,0,499,2176,1,0,0,0,501,2186,1,0,0,0,503,2194,1,0,0,0,505,2202,1,0,0,0,507,2213,1,0,0,0,509,2221,1,0,0,0,511,2227,1,0,0,0,513,2233,1,0,0,0,515,2239,1,0,0,0,517,2246,1,0,0,0,519,2257,1,0,0,0,521,2264,1,0,0,0,523,2272,1,0,0,0,525,2280,1,0,0,0,527,2287,1,0,0,0,529,2294,1,0,0,0,531,2305,1,0,0,0,533,2313,1,0,0,0,535,2325,1,0,0,0,537,2331,1,0,0,0,539,2340,1,0,0,0,541,2348,1,0,0,0,543,2357,1,0,0,0,545,2364,1,0,0,0,547,2371,1,0,0,0,549,2381,1,0,0,0,551,2388,1,0,0,0,553,2395,1,0,0,0,555,2401,1,0,0,0,557,2407,1,0,0,0,559,2416,1,0,0,0,561,2423,1,0,0,0,563,2427,1,0,0,0,565,2432,1,0,0,0,567,2439,1,0,0,0,569,2449,1,0,0,0,571,2456,1,0,0,0,573,2464,1,0,0,0,575,2469,1,0,0,0,577,2476,1,0,0,0,579,2481,1,0,0,0,581,2485,1,0,0,0,583,2490,1,0,0,0,585,2495,1,0,0,0,587,2500,1,0,0,0,589,2507,1,0,0,0,591,2514,1,0,0,0,593,2521,1,0,0,0,595,2530,1,0,0,0,597,2537,1,0,0,0,599,2545,1,0,0,0,601,2555,1,0,0,0,603,2560,1,0,0,0,605,2567,1,0,0,0,607,2573,1,0,0,0,609,2580,1,0,0,0,611,2592,1,0,0,0,613,2603,1,0,0,0,615,2610,1,0,0,0,617,2615,1,0,0,0,619,2625,1,0,0,0,621,2630,1,0,0,0,623,2635,1,0,0,0,625,2638,1,0,0,0,627,2644,1,0,0,0,629,2656,1,0,0,0,631,2664,1,0,0,0,633,2669,1,0,0,0,635,2675,1,0,0,0,637,2680,1,0,0,0,639,2690,1,0,0,0,641,2704,1,0,0,0,643,2710,1,0,0,0,645,2717,1,0,0,0,647,2725,1,0,0,0,649,2735,1,0,0,0,651,2742,1,0,0,0,653,2749,1,0,0,0,655,2753,1,0,0,0,657,2758,1,0,0,0,659,2764,1,0,0,0,661,2771,1,0,0,0,663,2778,1,0,0,0,665,2786,1,0,0,0,667,2791,1,0,0,0,669,2799,1,0,0,0,671,2804,1,0,0,0,673,2810,1,0,0,0,675,2817,1,0,0,0,677,2822,1,0,0,0,679,2830,1,0,0,0,681,2838,1,0,0,0,683,2846,1,0,0,0,685,2852,1,0,0,0,687,2854,1,0,0,0,689,2863,1,0,0,0,691,2881,1,0,0,0,693,2891,1,0,0,0,695,2905,1,0,0,0,697,2918,1,0,0,0,699,2920,1,0,0,0,701,2929,1,0,0,0,703,2931,1,0,0,0,705,2933,1,0,0,0,707,2940,1,0,0,0,709,2947,1,0,0,0,711,2955,1,0,0,0,713,2963,1,0,0,0,715,2965,1,0,0,0,717,2978,1,0,0,0,719,2999,1,0,0,0,721,3011,1,0,0,0,723,3020,1,0,0,0,725,3032,1,0,0,0,727,3048,1,0,0,0,729,3054,1,0,0,0,731,732,3,119,59,0,732,733,3,127,63,0,733,734,3,95,47,0,734,735,3,121,60,0,735,736,3,135,67,0,736,2,1,0,0,0,737,738,5,61,0,0,738,4,1,0,0,0,739,740,5,61,0,0,740,741,5,61,0,0,741,6,1,0,0,0,742,743,5,33,0,0,743,744,5,61,0,0,744,8,1,0,0,0,745,746,5,60,0,0,746,747,5,62,0,0,747,10,1,0,0,0,748,749,5,60,0,0,749,12,1,0,0,0,750,751,5,60,0,0,751,752,5,61,0,0,752,14,1,0,0,0,753,754,5,62,0,0,754,16,1,0,0,0,755,756,5,62,0,0,756,757,5,61,0,0,757,18,1,0,0,0,758,759,5,60,0,0,759,760,5,60,0,0,760,20,1,0,0,0,761,762,5,124,0,0,762,763,5,60,0,0,763,764,5,60,0,0,764,22,1,0,0,0,765,766,5,38,0,0,766,24,1,0,0,0,767,768,5,124,0,0,768,26,1,0,0,0,769,770,5,124,0,0,770,771,5,124,0,0,771,28,1,0,0,0,772,773,5,60,0,0,773,774,5,124,0,0,774,30,1,0,0,0,775,776,5,124,0,0,776,777,5,62,0,0,777,32,1,0,0,0,778,779,5,43,0,0,779,34,1,0,0,0,780,781,5,45,0,0,781,36,1,0,0,0,782,783,5,126,0,0,783,38,1,0,0,0,784,785,5,42,0,0,785,40,1,0,0,0,786,787,5,47,0,0,787,42,1,0,0,0,788,789,5,92,0,0,789,44,1,0,0,0,790,791,5,37,0,0,791,46,1,0,0,0,792,793,5,59,0,0,793,48,1,0,0,0,794,795,5,46,0,0,795,50,1,0,0,0,796,797,5,44,0,0,797,52,1,0,0,0,798,799,5,40,0,0,799,54,1,0,0,0,800,801,5,41,0,0,801,56,1,0,0,0,802,803,5,63,0,0,803,58,1,0,0,0,804,805,5,58,0,0,805,60,1,0,0,0,806,807,5,64,0,0,807,62,1,0,0,0,808,809,5,64,0,0,809,810,5,64,0,0,810,64,1,0,0,0,811,812,5,36,0,0,812,66,1,0,0,0,813,814,5,34,0,0,814,68,1,0,0,0,815,816,5,39,0,0,816,70,1,0,0,0,817,818,5,96,0,0,818,72,1,0,0,0,819,820,5,123,0,0,820,74,1,0,0,0,821,822,5,125,0,0,822,76,1,0,0,0,823,824,5,94,0,0,824,78,1,0,0,0,825,826,5,58,0,0,826,827,5,58,0,0,827,80,1,0,0,0,828,829,5,45,0,0,829,830,5,62,0,0,830,82,1,0,0,0,831,832,5,93,0,0,832,84,1,0,0,0,833,834,5,91,0,0,834,86,1,0,0,0,835,836,7,0,0,0,836,88,1,0,0,0,837,838,7,1,0,0,838,90,1,0,0,0,839,840,7,2,0,0,840,92,1,0,0,0,841,842,7,3,0,0,842,94,1,0,0,0,843,844,7,4,0,0,844,96,1,0,0,0,845,846,7,5,0,0,846,98,1,0,0,0,847,848,7,6,0,0,848,100,1,0,0,0,849,850,7,7,0,0,850,102,1,0,0,0,851,852,7,8,0,0,852,104,1,0,0,0,853,854,7,9,0,0,854,106,1,0,0,0,855,856,7,10,0,0,856,108,1,0,0,0,857,858,7,11,0,0,858,110,1,0,0,0,859,860,7,12,0,0,860,112,1,0,0,0,861,862,7,13,0,0,862,114,1,0,0,0,863,864,7,14,0,0,864,116,1,0,0,0,865,866,7,15,0,0,866,118,1,0,0,0,867,868,7,16,0,0,868,120,1,0,0,0,869,870,7,17,0,0,870,122,1,0,0,0,871,872,7,18,0,0,872,124,1,0,0,0,873,874,7,19,0,0,874,126,1,0,0,0,875,876,7,20,0,0,876,128,1,0,0,0,877,878,7,21,0,0,878,130,1,0,0,0,879,880,7,22,0,0,880,132,1,0,0,0,881,882,7,23,0,0,882,134,1,0,0,0,883,884,7,24,0,0,884,136,1,0,0,0,885,886,7,25,0,0,886,138,1,0,0,0,887,888,3,87,43,0,888,889,3,89,44,0,889,890,3,115,57,0,890,891,3,121,60,0,891,892,3,125,62,0,892,140,1,0,0,0,893,894,3,87,43,0,894,895,3,91,45,0,895,896,3,125,62,0,896,897,3,103,51,0,897,898,3,115,57,0,898,899,3,113,56,0,899,142,1,0,0,0,900,901,3,87,43,0,901,902,3,93,46,0,902,903,3,93,46,0,903,144,1,0,0,0,904,905,3,87,43,0,905,906,3,97,48,0,906,907,3,125,62,0,907,908,3,95,47,0,908,909,3,121,60,0,909,146,1,0,0,0,910,911,3,87,43,0,911,912,3,109,54,0,912,913,3,109,54,0,913,148,1,0,0,0,914,915,3,87,43,0,915,916,3,109,54,0,916,917,3,125,62,0,917,918,3,95,47,0,918,919,3,121,60,0,919,150,1,0,0,0,920,921,3,87,43,0,921,922,3,113,56,0,922,923,3,87,43,0,923,924,3,109,54,0,924,925,3,135,67,0,925,926,3,137,68,0,926,927,3,95,47,0,927,152,1,0,0,0,928,929,3,87,43,0,929,930,3,113,56,0,930,931,3,93,46,0,931,154,1,0,0,0,932,933,3,87,43,0,933,934,3,113,56,0,934,935,3,123,61,0,935,936,3,103,51,0,936,156,1,0,0,0,937,938,3,87,43,0,938,939,3,113,56,0,939,940,3,135,67,0,940,158,1,0,0,0,941,942,3,87,43,0,942,943,3,121,60,0,943,944,3,121,60,0,944,945,3,87,43,0,945,946,3,135,67,0,946,160,1,0,0,0,947,948,3,87,43,0,948,949,3,123,61,0,949,162,1,0,0,0,950,951,3,87,43,0,951,952,3,123,61,0,952,953,3,91,45,0,953,164,1,0,0,0,954,955,3,87,43,0,955,956,3,123,61,0,956,957,3,123,61,0,957,958,3,127,63,0,958,959,3,111,55,0,959,960,3,95,47,0,960,166,1,0,0,0,961,962,3,87,43,0,962,963,3,123,61,0,963,964,3,135,67,0,964,965,3,111,55,0,965,966,3,111,55,0,966,967,3,95,47,0,967,968,3,125,62,0,968,969,3,121,60,0,969,970,3,103,51,0,970,971,3,91,45,0,971,168,1,0,0,0,972,973,3,87,43,0,973,974,3,123,61,0,974,975,3,135,67,0,975,976,3,113,56,0,976,977,3,91,45,0,977,170,1,0,0,0,978,979,3,87,43,0,979,980,3,125,62,0,980,981,3,125,62,0,981,982,3,87,43,0,982,983,3,91,45,0,983,984,3,101,50,0,984,172,1,0,0,0,985,986,3,87,43,0,986,987,3,125,62,0,987,988,3,125,62,0,988,989,3,121,60,0,989,990,3,103,51,0,990,991,3,89,44,0,991,992,3,127,63,0,992,993,3,125,62,0,993,994,3,95,47,0,994,995,3,123,61,0,995,174,1,0,0,0,996,997,3,87,43,0,997,998,3,127,63,0,998,999,3,125,62,0,999,1e3,3,115,57,0,1e3,1001,3,103,51,0,1001,1002,3,113,56,0,1002,1003,3,91,45,0,1003,1004,3,121,60,0,1004,1005,3,95,47,0,1005,1006,3,111,55,0,1006,1007,3,95,47,0,1007,1008,3,113,56,0,1008,1009,3,125,62,0,1009,176,1,0,0,0,1010,1011,3,87,43,0,1011,1012,3,127,63,0,1012,1013,3,125,62,0,1013,1014,3,115,57,0,1014,1015,3,111,55,0,1015,1016,3,87,43,0,1016,1017,3,117,58,0,1017,178,1,0,0,0,1018,1019,3,89,44,0,1019,1020,3,95,47,0,1020,1021,3,97,48,0,1021,1022,3,115,57,0,1022,1023,3,121,60,0,1023,1024,3,95,47,0,1024,180,1,0,0,0,1025,1026,3,89,44,0,1026,1027,3,95,47,0,1027,1028,3,99,49,0,1028,1029,3,103,51,0,1029,1030,3,113,56,0,1030,182,1,0,0,0,1031,1032,3,89,44,0,1032,1033,3,95,47,0,1033,1034,3,121,60,0,1034,1035,3,113,56,0,1035,1036,3,115,57,0,1036,1037,3,127,63,0,1037,1038,3,109,54,0,1038,1039,3,109,54,0,1039,1040,3,103,51,0,1040,184,1,0,0,0,1041,1042,3,89,44,0,1042,1043,3,95,47,0,1043,1044,3,125,62,0,1044,1045,3,131,65,0,1045,1046,3,95,47,0,1046,1047,3,95,47,0,1047,1048,3,113,56,0,1048,186,1,0,0,0,1049,1050,3,89,44,0,1050,1051,3,103,51,0,1051,1052,3,125,62,0,1052,1053,3,91,45,0,1053,1054,3,87,43,0,1054,1055,3,123,61,0,1055,1056,3,125,62,0,1056,188,1,0,0,0,1057,1058,3,89,44,0,1058,1059,3,135,67,0,1059,190,1,0,0,0,1060,1061,3,91,45,0,1061,1062,3,87,43,0,1062,1063,3,109,54,0,1063,1064,3,109,54,0,1064,1065,3,87,43,0,1065,1066,3,89,44,0,1066,1067,3,109,54,0,1067,1068,3,95,47,0,1068,192,1,0,0,0,1069,1070,3,91,45,0,1070,1071,3,87,43,0,1071,1072,3,123,61,0,1072,1073,3,91,45,0,1073,1074,3,87,43,0,1074,1075,3,93,46,0,1075,1076,3,95,47,0,1076,194,1,0,0,0,1077,1078,3,91,45,0,1078,1079,3,87,43,0,1079,1080,3,123,61,0,1080,1081,3,95,47,0,1081,196,1,0,0,0,1082,1083,3,91,45,0,1083,1084,3,87,43,0,1084,1085,3,123,61,0,1085,1086,3,125,62,0,1086,198,1,0,0,0,1087,1088,3,91,45,0,1088,1089,3,101,50,0,1089,1090,3,87,43,0,1090,1091,3,113,56,0,1091,1092,3,99,49,0,1092,1093,3,95,47,0,1093,1094,3,97,48,0,1094,1095,3,95,47,0,1095,1096,3,95,47,0,1096,1097,3,93,46,0,1097,200,1,0,0,0,1098,1099,3,91,45,0,1099,1100,3,101,50,0,1100,1101,3,95,47,0,1101,1102,3,91,45,0,1102,1103,3,107,53,0,1103,202,1,0,0,0,1104,1105,3,91,45,0,1105,1106,3,115,57,0,1106,1107,3,109,54,0,1107,1108,3,109,54,0,1108,1109,3,87,43,0,1109,1110,3,125,62,0,1110,1111,3,95,47,0,1111,204,1,0,0,0,1112,1113,3,91,45,0,1113,1114,3,115,57,0,1114,1115,3,109,54,0,1115,1116,3,127,63,0,1116,1117,3,111,55,0,1117,1118,3,113,56,0,1118,206,1,0,0,0,1119,1120,3,91,45,0,1120,1121,3,115,57,0,1121,1122,3,109,54,0,1122,1123,3,127,63,0,1123,1124,3,111,55,0,1124,1125,3,113,56,0,1125,1126,3,123,61,0,1126,208,1,0,0,0,1127,1128,3,91,45,0,1128,1129,3,115,57,0,1129,1130,3,111,55,0,1130,1131,3,111,55,0,1131,1132,3,103,51,0,1132,1133,3,125,62,0,1133,210,1,0,0,0,1134,1135,3,91,45,0,1135,1136,3,115,57,0,1136,1137,3,111,55,0,1137,1138,3,117,58,0,1138,1139,3,87,43,0,1139,1140,3,91,45,0,1140,1141,3,125,62,0,1141,212,1,0,0,0,1142,1143,3,91,45,0,1143,1144,3,115,57,0,1144,1145,3,113,56,0,1145,1146,3,93,46,0,1146,1147,3,103,51,0,1147,1148,3,125,62,0,1148,1149,3,103,51,0,1149,1150,3,115,57,0,1150,1151,3,113,56,0,1151,1152,3,87,43,0,1152,1153,3,109,54,0,1153,214,1,0,0,0,1154,1155,3,91,45,0,1155,1156,3,115,57,0,1156,1157,3,113,56,0,1157,1158,3,97,48,0,1158,1159,3,109,54,0,1159,1160,3,103,51,0,1160,1161,3,91,45,0,1161,1162,3,125,62,0,1162,216,1,0,0,0,1163,1164,3,91,45,0,1164,1165,3,115,57,0,1165,1166,3,113,56,0,1166,1167,3,113,56,0,1167,1168,3,95,47,0,1168,1169,3,91,45,0,1169,1170,3,125,62,0,1170,218,1,0,0,0,1171,1172,3,91,45,0,1172,1173,3,115,57,0,1173,1174,3,113,56,0,1174,1175,3,123,61,0,1175,1176,3,125,62,0,1176,1177,3,121,60,0,1177,1178,3,87,43,0,1178,1179,3,103,51,0,1179,1180,3,113,56,0,1180,1181,3,125,62,0,1181,220,1,0,0,0,1182,1183,3,91,45,0,1183,1184,3,115,57,0,1184,1185,3,113,56,0,1185,1186,3,123,61,0,1186,1187,3,127,63,0,1187,1188,3,111,55,0,1188,1189,3,95,47,0,1189,1190,3,121,60,0,1190,222,1,0,0,0,1191,1192,3,91,45,0,1192,1193,3,115,57,0,1193,1194,3,129,64,0,1194,1195,3,95,47,0,1195,1196,3,121,60,0,1196,224,1,0,0,0,1197,1198,3,91,45,0,1198,1199,3,121,60,0,1199,1200,3,95,47,0,1200,1201,3,87,43,0,1201,1202,3,125,62,0,1202,1203,3,95,47,0,1203,226,1,0,0,0,1204,1205,3,91,45,0,1205,1206,3,121,60,0,1206,1207,3,115,57,0,1207,1208,3,123,61,0,1208,1209,3,123,61,0,1209,228,1,0,0,0,1210,1211,3,91,45,0,1211,1212,3,127,63,0,1212,1213,3,89,44,0,1213,1214,3,95,47,0,1214,230,1,0,0,0,1215,1216,3,91,45,0,1216,1217,3,127,63,0,1217,1218,3,121,60,0,1218,1219,3,121,60,0,1219,1220,3,95,47,0,1220,1221,3,113,56,0,1221,1222,3,125,62,0,1222,232,1,0,0,0,1223,1224,3,91,45,0,1224,1225,3,127,63,0,1225,1226,3,121,60,0,1226,1227,3,121,60,0,1227,1228,3,95,47,0,1228,1229,3,113,56,0,1229,1230,3,125,62,0,1230,1231,5,95,0,0,1231,1232,3,93,46,0,1232,1233,3,87,43,0,1233,1234,3,125,62,0,1234,1235,3,95,47,0,1235,234,1,0,0,0,1236,1237,3,91,45,0,1237,1238,3,127,63,0,1238,1239,3,121,60,0,1239,1240,3,121,60,0,1240,1241,3,95,47,0,1241,1242,3,113,56,0,1242,1243,3,125,62,0,1243,1244,5,95,0,0,1244,1245,3,125,62,0,1245,1246,3,103,51,0,1246,1247,3,111,55,0,1247,1248,3,95,47,0,1248,236,1,0,0,0,1249,1250,3,91,45,0,1250,1251,3,127,63,0,1251,1252,3,121,60,0,1252,1253,3,121,60,0,1253,1254,3,95,47,0,1254,1255,3,113,56,0,1255,1256,3,125,62,0,1256,1257,5,95,0,0,1257,1258,3,125,62,0,1258,1259,3,103,51,0,1259,1260,3,111,55,0,1260,1261,3,95,47,0,1261,1262,3,123,61,0,1262,1263,3,125,62,0,1263,1264,3,87,43,0,1264,1265,3,111,55,0,1265,1266,3,117,58,0,1266,238,1,0,0,0,1267,1268,3,93,46,0,1268,1269,3,87,43,0,1269,1270,3,125,62,0,1270,1271,3,87,43,0,1271,240,1,0,0,0,1272,1273,3,93,46,0,1273,1274,3,87,43,0,1274,1275,3,125,62,0,1275,1276,3,87,43,0,1276,1277,3,89,44,0,1277,1278,3,87,43,0,1278,1279,3,123,61,0,1279,1280,3,95,47,0,1280,242,1,0,0,0,1281,1282,3,93,46,0,1282,1283,3,95,47,0,1283,1284,3,91,45,0,1284,1285,3,103,51,0,1285,1286,3,111,55,0,1286,1287,3,87,43,0,1287,1288,3,109,54,0,1288,244,1,0,0,0,1289,1290,3,93,46,0,1290,1291,3,95,47,0,1291,1292,3,91,45,0,1292,1293,3,109,54,0,1293,1294,3,87,43,0,1294,1295,3,121,60,0,1295,1296,3,95,47,0,1296,246,1,0,0,0,1297,1298,3,93,46,0,1298,1299,3,95,47,0,1299,1300,3,97,48,0,1300,1301,3,87,43,0,1301,1302,3,127,63,0,1302,1303,3,109,54,0,1303,1304,3,125,62,0,1304,248,1,0,0,0,1305,1306,3,93,46,0,1306,1307,3,95,47,0,1307,1308,3,97,48,0,1308,1309,3,95,47,0,1309,1310,3,121,60,0,1310,1311,3,121,60,0,1311,1312,3,87,43,0,1312,1313,3,89,44,0,1313,1314,3,109,54,0,1314,1315,3,95,47,0,1315,250,1,0,0,0,1316,1317,3,93,46,0,1317,1318,3,95,47,0,1318,1319,3,97,48,0,1319,1320,3,95,47,0,1320,1321,3,121,60,0,1321,1322,3,121,60,0,1322,1323,3,95,47,0,1323,1324,3,93,46,0,1324,252,1,0,0,0,1325,1326,3,93,46,0,1326,1327,3,95,47,0,1327,1328,3,97,48,0,1328,1329,3,103,51,0,1329,1330,3,113,56,0,1330,1331,3,95,47,0,1331,254,1,0,0,0,1332,1333,3,93,46,0,1333,1334,3,95,47,0,1334,1335,3,109,54,0,1335,1336,3,95,47,0,1336,1337,3,125,62,0,1337,1338,3,95,47,0,1338,256,1,0,0,0,1339,1340,3,93,46,0,1340,1341,3,95,47,0,1341,1342,3,123,61,0,1342,1343,3,91,45,0,1343,258,1,0,0,0,1344,1345,3,93,46,0,1345,1346,3,95,47,0,1346,1347,3,123,61,0,1347,1348,3,91,45,0,1348,1349,3,121,60,0,1349,1350,3,103,51,0,1350,1351,3,89,44,0,1351,1352,3,95,47,0,1352,260,1,0,0,0,1353,1354,3,93,46,0,1354,1355,3,95,47,0,1355,1356,3,125,62,0,1356,1357,3,87,43,0,1357,1358,3,91,45,0,1358,1359,3,101,50,0,1359,262,1,0,0,0,1360,1361,3,93,46,0,1361,1362,3,103,51,0,1362,1363,3,91,45,0,1363,1364,3,125,62,0,1364,264,1,0,0,0,1365,1366,3,93,46,0,1366,1367,3,103,51,0,1367,1368,3,121,60,0,1368,1369,3,95,47,0,1369,1370,3,91,45,0,1370,1371,3,125,62,0,1371,1372,3,115,57,0,1372,1373,3,121,60,0,1373,1374,3,135,67,0,1374,266,1,0,0,0,1375,1376,3,93,46,0,1376,1377,3,103,51,0,1377,1378,3,123,61,0,1378,1379,3,87,43,0,1379,1380,3,89,44,0,1380,1381,3,109,54,0,1381,1382,3,95,47,0,1382,268,1,0,0,0,1383,1384,3,93,46,0,1384,1385,3,103,51,0,1385,1386,3,123,61,0,1386,1387,3,91,45,0,1387,1388,3,87,43,0,1388,1389,3,121,60,0,1389,1390,3,93,46,0,1390,270,1,0,0,0,1391,1392,3,93,46,0,1392,1393,3,103,51,0,1393,1394,3,123,61,0,1394,1395,3,125,62,0,1395,1396,3,103,51,0,1396,1397,3,113,56,0,1397,1398,3,91,45,0,1398,1399,3,125,62,0,1399,272,1,0,0,0,1400,1401,3,93,46,0,1401,1402,3,115,57,0,1402,274,1,0,0,0,1403,1404,3,93,46,0,1404,1405,3,121,60,0,1405,1406,3,115,57,0,1406,1407,3,117,58,0,1407,276,1,0,0,0,1408,1409,3,95,47,0,1409,1410,3,87,43,0,1410,1411,3,91,45,0,1411,1412,3,101,50,0,1412,278,1,0,0,0,1413,1414,3,95,47,0,1414,1415,3,109,54,0,1415,1416,3,123,61,0,1416,1417,3,95,47,0,1417,280,1,0,0,0,1418,1419,3,95,47,0,1419,1420,3,111,55,0,1420,1421,3,117,58,0,1421,1422,3,125,62,0,1422,1423,3,135,67,0,1423,282,1,0,0,0,1424,1425,3,95,47,0,1425,1426,3,111,55,0,1426,1427,3,117,58,0,1427,1428,3,125,62,0,1428,1429,3,135,67,0,1429,1430,5,95,0,0,1430,1431,3,87,43,0,1431,1432,3,91,45,0,1432,1433,3,125,62,0,1433,1434,3,103,51,0,1434,1435,3,115,57,0,1435,1436,3,113,56,0,1436,284,1,0,0,0,1437,1438,3,95,47,0,1438,1439,3,113,56,0,1439,1440,3,91,45,0,1440,1441,3,121,60,0,1441,1442,3,135,67,0,1442,1443,3,117,58,0,1443,1444,3,125,62,0,1444,1445,3,95,47,0,1445,1446,3,93,46,0,1446,286,1,0,0,0,1447,1448,3,95,47,0,1448,1449,3,113,56,0,1449,1450,3,93,46,0,1450,288,1,0,0,0,1451,1452,3,95,47,0,1452,1453,3,113,56,0,1453,1454,3,127,63,0,1454,1455,3,111,55,0,1455,290,1,0,0,0,1456,1457,3,95,47,0,1457,1458,3,121,60,0,1458,1459,3,87,43,0,1459,1460,3,123,61,0,1460,1461,3,95,47,0,1461,292,1,0,0,0,1462,1463,3,95,47,0,1463,1464,3,121,60,0,1464,1465,3,121,60,0,1465,1466,3,115,57,0,1466,1467,3,121,60,0,1467,294,1,0,0,0,1468,1469,3,95,47,0,1469,1470,3,123,61,0,1470,1471,3,91,45,0,1471,1472,3,87,43,0,1472,1473,3,117,58,0,1473,1474,3,95,47,0,1474,296,1,0,0,0,1475,1476,3,95,47,0,1476,1477,3,129,64,0,1477,1478,3,87,43,0,1478,1479,3,109,54,0,1479,1480,3,127,63,0,1480,1481,3,87,43,0,1481,1482,3,125,62,0,1482,1483,3,95,47,0,1483,298,1,0,0,0,1484,1485,3,95,47,0,1485,1486,3,133,66,0,1486,1487,3,91,45,0,1487,1488,3,95,47,0,1488,1489,3,117,58,0,1489,1490,3,125,62,0,1490,300,1,0,0,0,1491,1492,3,95,47,0,1492,1493,3,133,66,0,1493,1494,3,91,45,0,1494,1495,3,109,54,0,1495,1496,3,127,63,0,1496,1497,3,93,46,0,1497,1498,3,95,47,0,1498,302,1,0,0,0,1499,1500,3,95,47,0,1500,1501,3,133,66,0,1501,1502,3,91,45,0,1502,1503,3,109,54,0,1503,1504,3,127,63,0,1504,1505,3,123,61,0,1505,1506,3,103,51,0,1506,1507,3,115,57,0,1507,1508,3,113,56,0,1508,304,1,0,0,0,1509,1510,3,95,47,0,1510,1511,3,133,66,0,1511,1512,3,91,45,0,1512,1513,3,109,54,0,1513,1514,3,127,63,0,1514,1515,3,123,61,0,1515,1516,3,103,51,0,1516,1517,3,129,64,0,1517,1518,3,95,47,0,1518,306,1,0,0,0,1519,1520,3,95,47,0,1520,1521,3,133,66,0,1521,1522,3,103,51,0,1522,1523,3,123,61,0,1523,1524,3,125,62,0,1524,1525,3,123,61,0,1525,308,1,0,0,0,1526,1527,3,95,47,0,1527,1528,3,133,66,0,1528,1529,3,117,58,0,1529,1530,3,109,54,0,1530,1531,3,87,43,0,1531,1532,3,103,51,0,1532,1533,3,113,56,0,1533,310,1,0,0,0,1534,1535,3,95,47,0,1535,1536,3,133,66,0,1536,1537,3,117,58,0,1537,1538,3,115,57,0,1538,1539,3,121,60,0,1539,1540,3,125,62,0,1540,312,1,0,0,0,1541,1542,3,95,47,0,1542,1543,3,133,66,0,1543,1544,3,125,62,0,1544,1545,3,95,47,0,1545,1546,3,121,60,0,1546,1547,3,113,56,0,1547,1548,3,87,43,0,1548,1549,3,109,54,0,1549,314,1,0,0,0,1550,1551,3,97,48,0,1551,1552,3,87,43,0,1552,1553,3,103,51,0,1553,1554,3,109,54,0,1554,316,1,0,0,0,1555,1556,3,97,48,0,1556,1557,3,87,43,0,1557,1558,3,109,54,0,1558,1559,3,123,61,0,1559,1560,3,95,47,0,1560,318,1,0,0,0,1561,1562,3,97,48,0,1562,1563,3,87,43,0,1563,1564,3,111,55,0,1564,1565,3,103,51,0,1565,1566,3,109,54,0,1566,1567,3,135,67,0,1567,320,1,0,0,0,1568,1569,3,97,48,0,1569,1570,3,103,51,0,1570,1571,3,109,54,0,1571,1572,3,125,62,0,1572,1573,3,95,47,0,1573,1574,3,121,60,0,1574,322,1,0,0,0,1575,1576,3,97,48,0,1576,1577,3,103,51,0,1577,1578,3,121,60,0,1578,1579,3,123,61,0,1579,1580,3,125,62,0,1580,324,1,0,0,0,1581,1582,3,97,48,0,1582,1583,3,109,54,0,1583,1584,3,87,43,0,1584,1585,3,125,62,0,1585,1586,3,125,62,0,1586,1587,3,95,47,0,1587,1588,3,113,56,0,1588,326,1,0,0,0,1589,1590,3,97,48,0,1590,1591,3,109,54,0,1591,1592,3,115,57,0,1592,1593,3,131,65,0,1593,328,1,0,0,0,1594,1595,3,97,48,0,1595,1596,3,115,57,0,1596,1597,3,109,54,0,1597,1598,3,109,54,0,1598,1599,3,115,57,0,1599,1600,3,131,65,0,1600,1601,3,103,51,0,1601,1602,3,113,56,0,1602,1603,3,99,49,0,1603,330,1,0,0,0,1604,1605,3,97,48,0,1605,1606,3,115,57,0,1606,1607,3,121,60,0,1607,332,1,0,0,0,1608,1609,3,97,48,0,1609,1610,3,115,57,0,1610,1611,3,121,60,0,1611,1612,3,95,47,0,1612,1613,3,103,51,0,1613,1614,3,99,49,0,1614,1615,3,113,56,0,1615,334,1,0,0,0,1616,1617,3,97,48,0,1617,1618,3,121,60,0,1618,1619,3,115,57,0,1619,1620,3,111,55,0,1620,336,1,0,0,0,1621,1622,3,97,48,0,1622,1623,3,127,63,0,1623,1624,3,109,54,0,1624,1625,3,109,54,0,1625,338,1,0,0,0,1626,1627,3,97,48,0,1627,1628,3,127,63,0,1628,1629,3,113,56,0,1629,1630,3,91,45,0,1630,1631,3,125,62,0,1631,1632,3,103,51,0,1632,1633,3,115,57,0,1633,1634,3,113,56,0,1634,340,1,0,0,0,1635,1636,3,99,49,0,1636,1637,3,109,54,0,1637,1638,3,115,57,0,1638,1639,3,89,44,0,1639,342,1,0,0,0,1640,1641,3,99,49,0,1641,1642,3,109,54,0,1642,1643,3,115,57,0,1643,1644,3,89,44,0,1644,1645,3,87,43,0,1645,1646,3,109,54,0,1646,344,1,0,0,0,1647,1648,3,99,49,0,1648,1649,3,121,60,0,1649,1650,3,87,43,0,1650,1651,3,113,56,0,1651,1652,3,125,62,0,1652,346,1,0,0,0,1653,1654,3,99,49,0,1654,1655,3,121,60,0,1655,1656,3,115,57,0,1656,1657,3,127,63,0,1657,1658,3,117,58,0,1658,348,1,0,0,0,1659,1660,3,99,49,0,1660,1661,3,121,60,0,1661,1662,3,115,57,0,1662,1663,3,127,63,0,1663,1664,3,117,58,0,1664,1665,3,103,51,0,1665,1666,3,113,56,0,1666,1667,3,99,49,0,1667,350,1,0,0,0,1668,1669,3,99,49,0,1669,1670,3,121,60,0,1670,1671,3,115,57,0,1671,1672,3,127,63,0,1672,1673,3,117,58,0,1673,1674,3,123,61,0,1674,352,1,0,0,0,1675,1676,3,101,50,0,1676,1677,3,87,43,0,1677,1678,3,123,61,0,1678,1679,3,101,50,0,1679,354,1,0,0,0,1680,1681,3,101,50,0,1681,1682,3,87,43,0,1682,1683,3,129,64,0,1683,1684,3,103,51,0,1684,1685,3,113,56,0,1685,1686,3,99,49,0,1686,356,1,0,0,0,1687,1688,3,101,50,0,1688,1689,3,115,57,0,1689,1690,3,117,58,0,1690,358,1,0,0,0,1691,1692,3,103,51,0,1692,1693,3,97,48,0,1693,360,1,0,0,0,1694,1695,3,103,51,0,1695,1696,3,99,49,0,1696,1697,3,113,56,0,1697,1698,3,115,57,0,1698,1699,3,121,60,0,1699,1700,3,95,47,0,1700,362,1,0,0,0,1701,1702,3,103,51,0,1702,1703,3,109,54,0,1703,1704,3,103,51,0,1704,1705,3,107,53,0,1705,1706,3,95,47,0,1706,364,1,0,0,0,1707,1708,3,103,51,0,1708,1709,3,111,55,0,1709,1710,3,111,55,0,1710,1711,3,95,47,0,1711,1712,3,93,46,0,1712,1713,3,103,51,0,1713,1714,3,87,43,0,1714,1715,3,125,62,0,1715,1716,3,95,47,0,1716,366,1,0,0,0,1717,1718,3,103,51,0,1718,1719,3,111,55,0,1719,1720,3,117,58,0,1720,1721,3,115,57,0,1721,1722,3,121,60,0,1722,1723,3,125,62,0,1723,368,1,0,0,0,1724,1725,3,103,51,0,1725,1726,3,113,56,0,1726,370,1,0,0,0,1727,1728,3,103,51,0,1728,1729,3,113,56,0,1729,1730,3,93,46,0,1730,1731,3,95,47,0,1731,1732,3,133,66,0,1732,372,1,0,0,0,1733,1734,3,103,51,0,1734,1735,3,113,56,0,1735,1736,3,93,46,0,1736,1737,3,95,47,0,1737,1738,3,133,66,0,1738,1739,3,95,47,0,1739,1740,3,93,46,0,1740,374,1,0,0,0,1741,1742,3,103,51,0,1742,1743,3,113,56,0,1743,1744,3,101,50,0,1744,1745,3,95,47,0,1745,1746,3,121,60,0,1746,1747,3,103,51,0,1747,1748,3,125,62,0,1748,1749,3,123,61,0,1749,376,1,0,0,0,1750,1751,3,103,51,0,1751,1752,3,113,56,0,1752,1753,3,103,51,0,1753,1754,3,125,62,0,1754,1755,3,103,51,0,1755,1756,3,87,43,0,1756,1757,3,109,54,0,1757,378,1,0,0,0,1758,1759,3,103,51,0,1759,1760,3,113,56,0,1760,1761,3,103,51,0,1761,1762,3,125,62,0,1762,1763,3,103,51,0,1763,1764,3,87,43,0,1764,1765,3,109,54,0,1765,1766,3,109,54,0,1766,1767,3,135,67,0,1767,380,1,0,0,0,1768,1769,3,103,51,0,1769,1770,3,113,56,0,1770,1771,3,113,56,0,1771,1772,3,95,47,0,1772,1773,3,121,60,0,1773,382,1,0,0,0,1774,1775,3,103,51,0,1775,1776,3,113,56,0,1776,1777,3,123,61,0,1777,1778,3,95,47,0,1778,1779,3,121,60,0,1779,1780,3,125,62,0,1780,384,1,0,0,0,1781,1782,3,103,51,0,1782,1783,3,113,56,0,1783,1784,3,123,61,0,1784,1785,3,125,62,0,1785,1786,3,95,47,0,1786,1787,3,87,43,0,1787,1788,3,93,46,0,1788,386,1,0,0,0,1789,1790,3,103,51,0,1790,1791,3,113,56,0,1791,1792,3,125,62,0,1792,1793,3,95,47,0,1793,1794,3,121,60,0,1794,1795,3,123,61,0,1795,1796,3,95,47,0,1796,1797,3,91,45,0,1797,1798,3,125,62,0,1798,388,1,0,0,0,1799,1800,3,103,51,0,1800,1801,3,113,56,0,1801,1802,3,125,62,0,1802,1803,3,115,57,0,1803,390,1,0,0,0,1804,1805,3,103,51,0,1805,1806,3,123,61,0,1806,392,1,0,0,0,1807,1808,3,103,51,0,1808,1809,3,123,61,0,1809,1810,3,113,56,0,1810,1811,3,127,63,0,1811,1812,3,109,54,0,1812,1813,3,109,54,0,1813,394,1,0,0,0,1814,1815,3,105,52,0,1815,1816,3,115,57,0,1816,1817,3,103,51,0,1817,1818,3,113,56,0,1818,396,1,0,0,0,1819,1820,3,105,52,0,1820,1821,3,123,61,0,1821,1822,3,115,57,0,1822,1823,3,113,56,0,1823,1824,5,95,0,0,1824,1825,3,95,47,0,1825,1826,3,133,66,0,1826,1827,3,103,51,0,1827,1828,3,123,61,0,1828,1829,3,125,62,0,1829,1830,3,123,61,0,1830,398,1,0,0,0,1831,1832,3,105,52,0,1832,1833,3,123,61,0,1833,1834,3,115,57,0,1834,1835,3,113,56,0,1835,1836,5,95,0,0,1836,1837,3,119,59,0,1837,1838,3,127,63,0,1838,1839,3,95,47,0,1839,1840,3,121,60,0,1840,1841,3,135,67,0,1841,400,1,0,0,0,1842,1843,3,105,52,0,1843,1844,3,123,61,0,1844,1845,3,115,57,0,1845,1846,3,113,56,0,1846,1847,5,95,0,0,1847,1848,3,129,64,0,1848,1849,3,87,43,0,1849,1850,3,109,54,0,1850,1851,3,127,63,0,1851,1852,3,95,47,0,1852,402,1,0,0,0,1853,1854,3,107,53,0,1854,1855,3,95,47,0,1855,1856,3,135,67,0,1856,404,1,0,0,0,1857,1858,3,109,54,0,1858,1859,3,87,43,0,1859,1860,3,123,61,0,1860,1861,3,125,62,0,1861,406,1,0,0,0,1862,1863,3,109,54,0,1863,1864,3,95,47,0,1864,1865,3,97,48,0,1865,1866,3,125,62,0,1866,408,1,0,0,0,1867,1868,3,109,54,0,1868,1869,3,95,47,0,1869,1870,3,99,49,0,1870,1871,3,87,43,0,1871,1872,3,91,45,0,1872,1873,3,135,67,0,1873,410,1,0,0,0,1874,1875,3,109,54,0,1875,1876,3,103,51,0,1876,1877,3,107,53,0,1877,1878,3,95,47,0,1878,412,1,0,0,0,1879,1880,3,109,54,0,1880,1881,3,103,51,0,1881,1882,3,111,55,0,1882,1883,3,103,51,0,1883,1884,3,125,62,0,1884,414,1,0,0,0,1885,1886,3,109,54,0,1886,1887,3,103,51,0,1887,1888,3,123,61,0,1888,1889,3,125,62,0,1889,416,1,0,0,0,1890,1891,3,109,54,0,1891,1892,3,115,57,0,1892,1893,3,91,45,0,1893,1894,3,87,43,0,1894,1895,3,109,54,0,1895,418,1,0,0,0,1896,1897,3,111,55,0,1897,1898,3,87,43,0,1898,1899,3,113,56,0,1899,1900,3,87,43,0,1900,1901,3,99,49,0,1901,1902,3,95,47,0,1902,420,1,0,0,0,1903,1904,3,111,55,0,1904,1905,3,87,43,0,1905,1906,3,125,62,0,1906,1907,3,91,45,0,1907,1908,3,101,50,0,1908,422,1,0,0,0,1909,1910,3,111,55,0,1910,1911,3,87,43,0,1911,1912,3,125,62,0,1912,1913,3,91,45,0,1913,1914,3,101,50,0,1914,1915,3,95,47,0,1915,1916,3,123,61,0,1916,424,1,0,0,0,1917,1918,3,111,55,0,1918,1919,3,87,43,0,1919,1920,3,125,62,0,1920,1921,3,91,45,0,1921,1922,3,101,50,0,1922,1923,5,95,0,0,1923,1924,3,121,60,0,1924,1925,3,95,47,0,1925,1926,3,91,45,0,1926,1927,3,115,57,0,1927,1928,3,99,49,0,1928,1929,3,113,56,0,1929,1930,3,103,51,0,1930,1931,3,137,68,0,1931,1932,3,95,47,0,1932,426,1,0,0,0,1933,1934,3,111,55,0,1934,1935,3,95,47,0,1935,1936,3,87,43,0,1936,1937,3,123,61,0,1937,1938,3,127,63,0,1938,1939,3,121,60,0,1939,1940,3,95,47,0,1940,1941,3,123,61,0,1941,428,1,0,0,0,1942,1943,3,111,55,0,1943,1944,3,103,51,0,1944,1945,3,91,45,0,1945,1946,3,121,60,0,1946,1947,3,115,57,0,1947,1948,3,123,61,0,1948,1949,3,95,47,0,1949,1950,3,91,45,0,1950,1951,3,115,57,0,1951,1952,3,113,56,0,1952,1953,3,93,46,0,1953,1954,3,123,61,0,1954,430,1,0,0,0,1955,1956,3,111,55,0,1956,1957,3,103,51,0,1957,1958,3,109,54,0,1958,1959,3,109,54,0,1959,1960,3,103,51,0,1960,1961,3,123,61,0,1961,1962,3,95,47,0,1962,1963,3,91,45,0,1963,1964,3,115,57,0,1964,1965,3,113,56,0,1965,1966,3,93,46,0,1966,1967,3,123,61,0,1967,432,1,0,0,0,1968,1969,3,111,55,0,1969,1970,3,115,57,0,1970,1971,3,93,46,0,1971,1972,3,103,51,0,1972,1973,3,97,48,0,1973,1974,3,135,67,0,1974,434,1,0,0,0,1975,1976,3,113,56,0,1976,1977,3,87,43,0,1977,1978,3,113,56,0,1978,1979,3,115,57,0,1979,1980,3,123,61,0,1980,1981,3,95,47,0,1981,1982,3,91,45,0,1982,1983,3,115,57,0,1983,1984,3,113,56,0,1984,1985,3,93,46,0,1985,1986,3,123,61,0,1986,436,1,0,0,0,1987,1988,3,113,56,0,1988,1989,3,87,43,0,1989,1990,3,125,62,0,1990,1991,3,127,63,0,1991,1992,3,121,60,0,1992,1993,3,87,43,0,1993,1994,3,109,54,0,1994,438,1,0,0,0,1995,1996,3,113,56,0,1996,1997,3,95,47,0,1997,1998,3,133,66,0,1998,1999,3,125,62,0,1999,440,1,0,0,0,2e3,2001,3,113,56,0,2001,2002,3,115,57,0,2002,442,1,0,0,0,2003,2004,3,113,56,0,2004,2005,3,115,57,0,2005,2006,3,125,62,0,2006,444,1,0,0,0,2007,2008,3,113,56,0,2008,2009,3,115,57,0,2009,2010,3,125,62,0,2010,2011,3,113,56,0,2011,2012,3,127,63,0,2012,2013,3,109,54,0,2013,2014,3,109,54,0,2014,446,1,0,0,0,2015,2016,3,113,56,0,2016,2017,3,127,63,0,2017,2018,3,109,54,0,2018,2019,3,109,54,0,2019,448,1,0,0,0,2020,2021,3,113,56,0,2021,2022,3,127,63,0,2022,2023,3,109,54,0,2023,2024,3,109,54,0,2024,2025,3,123,61,0,2025,450,1,0,0,0,2026,2027,3,115,57,0,2027,2028,3,89,44,0,2028,2029,3,105,52,0,2029,2030,3,95,47,0,2030,2031,3,91,45,0,2031,2032,3,125,62,0,2032,452,1,0,0,0,2033,2034,3,115,57,0,2034,2035,3,97,48,0,2035,454,1,0,0,0,2036,2037,3,115,57,0,2037,2038,3,97,48,0,2038,2039,3,97,48,0,2039,2040,3,123,61,0,2040,2041,3,95,47,0,2041,2042,3,125,62,0,2042,456,1,0,0,0,2043,2044,3,115,57,0,2044,2045,3,111,55,0,2045,2046,3,103,51,0,2046,2047,3,125,62,0,2047,458,1,0,0,0,2048,2049,3,115,57,0,2049,2050,3,113,56,0,2050,460,1,0,0,0,2051,2052,3,115,57,0,2052,2053,3,113,56,0,2053,2054,3,95,47,0,2054,462,1,0,0,0,2055,2056,3,115,57,0,2056,2057,3,113,56,0,2057,2058,3,109,54,0,2058,2059,3,135,67,0,2059,464,1,0,0,0,2060,2061,3,115,57,0,2061,2062,3,117,58,0,2062,2063,3,125,62,0,2063,2064,3,103,51,0,2064,2065,3,115,57,0,2065,2066,3,113,56,0,2066,466,1,0,0,0,2067,2068,3,115,57,0,2068,2069,3,117,58,0,2069,2070,3,125,62,0,2070,2071,3,103,51,0,2071,2072,3,115,57,0,2072,2073,3,113,56,0,2073,2074,3,87,43,0,2074,2075,3,109,54,0,2075,468,1,0,0,0,2076,2077,3,115,57,0,2077,2078,3,121,60,0,2078,470,1,0,0,0,2079,2080,3,115,57,0,2080,2081,3,121,60,0,2081,2082,3,93,46,0,2082,2083,3,95,47,0,2083,2084,3,121,60,0,2084,472,1,0,0,0,2085,2086,3,115,57,0,2086,2087,3,125,62,0,2087,2088,3,101,50,0,2088,2089,3,95,47,0,2089,2090,3,121,60,0,2090,2091,3,123,61,0,2091,474,1,0,0,0,2092,2093,3,115,57,0,2093,2094,3,127,63,0,2094,2095,3,125,62,0,2095,2096,3,95,47,0,2096,2097,3,121,60,0,2097,476,1,0,0,0,2098,2099,3,115,57,0,2099,2100,3,129,64,0,2100,2101,3,95,47,0,2101,2102,3,121,60,0,2102,478,1,0,0,0,2103,2104,3,117,58,0,2104,2105,3,87,43,0,2105,2106,3,121,60,0,2106,2107,3,87,43,0,2107,2108,3,109,54,0,2108,2109,3,109,54,0,2109,2110,3,95,47,0,2110,2111,3,109,54,0,2111,480,1,0,0,0,2112,2113,3,117,58,0,2113,2114,3,87,43,0,2114,2115,3,121,60,0,2115,2116,3,125,62,0,2116,2117,3,103,51,0,2117,2118,3,125,62,0,2118,2119,3,103,51,0,2119,2120,3,115,57,0,2120,2121,3,113,56,0,2121,482,1,0,0,0,2122,2123,3,117,58,0,2123,2124,3,87,43,0,2124,2125,3,123,61,0,2125,2126,3,123,61,0,2126,2127,3,103,51,0,2127,2128,3,113,56,0,2128,2129,3,99,49,0,2129,484,1,0,0,0,2130,2131,3,117,58,0,2131,2132,3,87,43,0,2132,2133,3,123,61,0,2133,2134,3,123,61,0,2134,2135,3,131,65,0,2135,2136,3,115,57,0,2136,2137,3,121,60,0,2137,2138,3,93,46,0,2138,486,1,0,0,0,2139,2140,3,117,58,0,2140,2141,3,87,43,0,2141,2142,3,123,61,0,2142,2143,3,125,62,0,2143,488,1,0,0,0,2144,2145,3,117,58,0,2145,2146,3,87,43,0,2146,2147,3,125,62,0,2147,2148,3,125,62,0,2148,2149,3,95,47,0,2149,2150,3,121,60,0,2150,2151,3,113,56,0,2151,490,1,0,0,0,2152,2153,3,117,58,0,2153,2154,3,95,47,0,2154,2155,3,121,60,0,2155,492,1,0,0,0,2156,2157,3,117,58,0,2157,2158,3,95,47,0,2158,2159,3,121,60,0,2159,2160,3,111,55,0,2160,2161,3,127,63,0,2161,2162,3,125,62,0,2162,2163,3,95,47,0,2163,494,1,0,0,0,2164,2165,3,117,58,0,2165,2166,3,109,54,0,2166,2167,3,87,43,0,2167,2168,3,113,56,0,2168,496,1,0,0,0,2169,2170,3,117,58,0,2170,2171,3,121,60,0,2171,2172,3,87,43,0,2172,2173,3,99,49,0,2173,2174,3,111,55,0,2174,2175,3,87,43,0,2175,498,1,0,0,0,2176,2177,3,117,58,0,2177,2178,3,121,60,0,2178,2179,3,95,47,0,2179,2180,3,91,45,0,2180,2181,3,95,47,0,2181,2182,3,93,46,0,2182,2183,3,103,51,0,2183,2184,3,113,56,0,2184,2185,3,99,49,0,2185,500,1,0,0,0,2186,2187,3,117,58,0,2187,2188,3,121,60,0,2188,2189,3,95,47,0,2189,2190,3,123,61,0,2190,2191,3,115,57,0,2191,2192,3,121,60,0,2192,2193,3,125,62,0,2193,502,1,0,0,0,2194,2195,3,117,58,0,2195,2196,3,121,60,0,2196,2197,3,103,51,0,2197,2198,3,111,55,0,2198,2199,3,87,43,0,2199,2200,3,121,60,0,2200,2201,3,135,67,0,2201,504,1,0,0,0,2202,2203,3,117,58,0,2203,2204,3,121,60,0,2204,2205,3,103,51,0,2205,2206,3,129,64,0,2206,2207,3,103,51,0,2207,2208,3,109,54,0,2208,2209,3,95,47,0,2209,2210,3,99,49,0,2210,2211,3,95,47,0,2211,2212,3,123,61,0,2212,506,1,0,0,0,2213,2214,3,117,58,0,2214,2215,3,121,60,0,2215,2216,3,115,57,0,2216,2217,3,91,45,0,2217,2218,3,95,47,0,2218,2219,3,123,61,0,2219,2220,3,123,61,0,2220,508,1,0,0,0,2221,2222,3,119,59,0,2222,2223,3,127,63,0,2223,2224,3,95,47,0,2224,2225,3,127,63,0,2225,2226,3,95,47,0,2226,510,1,0,0,0,2227,2228,3,121,60,0,2228,2229,3,87,43,0,2229,2230,3,103,51,0,2230,2231,3,123,61,0,2231,2232,3,95,47,0,2232,512,1,0,0,0,2233,2234,3,121,60,0,2234,2235,3,87,43,0,2235,2236,3,113,56,0,2236,2237,3,99,49,0,2237,2238,3,95,47,0,2238,514,1,0,0,0,2239,2240,3,121,60,0,2240,2241,3,95,47,0,2241,2242,3,93,46,0,2242,2243,3,127,63,0,2243,2244,3,91,45,0,2244,2245,3,95,47,0,2245,516,1,0,0,0,2246,2247,3,121,60,0,2247,2248,3,95,47,0,2248,2249,3,97,48,0,2249,2250,3,95,47,0,2250,2251,3,121,60,0,2251,2252,3,95,47,0,2252,2253,3,113,56,0,2253,2254,3,91,45,0,2254,2255,3,95,47,0,2255,2256,3,123,61,0,2256,518,1,0,0,0,2257,2258,3,121,60,0,2258,2259,3,95,47,0,2259,2260,3,99,49,0,2260,2261,3,95,47,0,2261,2262,3,133,66,0,2262,2263,3,117,58,0,2263,520,1,0,0,0,2264,2265,3,121,60,0,2265,2266,3,95,47,0,2266,2267,3,103,51,0,2267,2268,3,113,56,0,2268,2269,3,93,46,0,2269,2270,3,95,47,0,2270,2271,3,133,66,0,2271,522,1,0,0,0,2272,2273,3,121,60,0,2273,2274,3,95,47,0,2274,2275,3,109,54,0,2275,2276,3,95,47,0,2276,2277,3,87,43,0,2277,2278,3,123,61,0,2278,2279,3,95,47,0,2279,524,1,0,0,0,2280,2281,3,121,60,0,2281,2282,3,95,47,0,2282,2283,3,111,55,0,2283,2284,3,115,57,0,2284,2285,3,129,64,0,2285,2286,3,95,47,0,2286,526,1,0,0,0,2287,2288,3,121,60,0,2288,2289,3,95,47,0,2289,2290,3,113,56,0,2290,2291,3,87,43,0,2291,2292,3,111,55,0,2292,2293,3,95,47,0,2293,528,1,0,0,0,2294,2295,3,121,60,0,2295,2296,3,95,47,0,2296,2297,3,117,58,0,2297,2298,3,95,47,0,2298,2299,3,87,43,0,2299,2300,3,125,62,0,2300,2301,3,87,43,0,2301,2302,3,89,44,0,2302,2303,3,109,54,0,2303,2304,3,95,47,0,2304,530,1,0,0,0,2305,2306,3,121,60,0,2306,2307,3,95,47,0,2307,2308,3,117,58,0,2308,2309,3,109,54,0,2309,2310,3,87,43,0,2310,2311,3,91,45,0,2311,2312,3,95,47,0,2312,532,1,0,0,0,2313,2314,3,121,60,0,2314,2315,3,95,47,0,2315,2316,3,117,58,0,2316,2317,3,109,54,0,2317,2318,3,103,51,0,2318,2319,3,91,45,0,2319,2320,3,87,43,0,2320,2321,3,125,62,0,2321,2322,3,103,51,0,2322,2323,3,115,57,0,2323,2324,3,113,56,0,2324,534,1,0,0,0,2325,2326,3,121,60,0,2326,2327,3,95,47,0,2327,2328,3,123,61,0,2328,2329,3,95,47,0,2329,2330,3,125,62,0,2330,536,1,0,0,0,2331,2332,3,121,60,0,2332,2333,3,95,47,0,2333,2334,3,123,61,0,2334,2335,3,115,57,0,2335,2336,3,127,63,0,2336,2337,3,121,60,0,2337,2338,3,91,45,0,2338,2339,3,95,47,0,2339,538,1,0,0,0,2340,2341,3,121,60,0,2341,2342,3,95,47,0,2342,2343,3,123,61,0,2343,2344,3,117,58,0,2344,2345,3,95,47,0,2345,2346,3,91,45,0,2346,2347,3,125,62,0,2347,540,1,0,0,0,2348,2349,3,121,60,0,2349,2350,3,95,47,0,2350,2351,3,123,61,0,2351,2352,3,125,62,0,2352,2353,3,121,60,0,2353,2354,3,103,51,0,2354,2355,3,91,45,0,2355,2356,3,125,62,0,2356,542,1,0,0,0,2357,2358,3,121,60,0,2358,2359,3,95,47,0,2359,2360,3,123,61,0,2360,2361,3,127,63,0,2361,2362,3,109,54,0,2362,2363,3,125,62,0,2363,544,1,0,0,0,2364,2365,3,121,60,0,2365,2366,3,95,47,0,2366,2367,3,125,62,0,2367,2368,3,127,63,0,2368,2369,3,121,60,0,2369,2370,3,113,56,0,2370,546,1,0,0,0,2371,2372,3,121,60,0,2372,2373,3,95,47,0,2373,2374,3,125,62,0,2374,2375,3,127,63,0,2375,2376,3,121,60,0,2376,2377,3,113,56,0,2377,2378,3,103,51,0,2378,2379,3,113,56,0,2379,2380,3,99,49,0,2380,548,1,0,0,0,2381,2382,3,121,60,0,2382,2383,3,95,47,0,2383,2384,3,129,64,0,2384,2385,3,95,47,0,2385,2386,3,121,60,0,2386,2387,3,125,62,0,2387,550,1,0,0,0,2388,2389,3,121,60,0,2389,2390,3,95,47,0,2390,2391,3,129,64,0,2391,2392,3,115,57,0,2392,2393,3,107,53,0,2393,2394,3,95,47,0,2394,552,1,0,0,0,2395,2396,3,121,60,0,2396,2397,3,103,51,0,2397,2398,3,99,49,0,2398,2399,3,101,50,0,2399,2400,3,125,62,0,2400,554,1,0,0,0,2401,2402,3,121,60,0,2402,2403,3,109,54,0,2403,2404,3,103,51,0,2404,2405,3,107,53,0,2405,2406,3,95,47,0,2406,556,1,0,0,0,2407,2408,3,121,60,0,2408,2409,3,115,57,0,2409,2410,3,109,54,0,2410,2411,3,109,54,0,2411,2412,3,89,44,0,2412,2413,3,87,43,0,2413,2414,3,91,45,0,2414,2415,3,107,53,0,2415,558,1,0,0,0,2416,2417,3,121,60,0,2417,2418,3,115,57,0,2418,2419,3,109,54,0,2419,2420,3,109,54,0,2420,2421,3,127,63,0,2421,2422,3,117,58,0,2422,560,1,0,0,0,2423,2424,3,121,60,0,2424,2425,3,115,57,0,2425,2426,3,131,65,0,2426,562,1,0,0,0,2427,2428,3,121,60,0,2428,2429,3,115,57,0,2429,2430,3,131,65,0,2430,2431,3,123,61,0,2431,564,1,0,0,0,2432,2433,3,123,61,0,2433,2434,3,87,43,0,2434,2435,3,111,55,0,2435,2436,3,117,58,0,2436,2437,3,109,54,0,2437,2438,3,95,47,0,2438,566,1,0,0,0,2439,2440,3,123,61,0,2440,2441,3,87,43,0,2441,2442,3,129,64,0,2442,2443,3,95,47,0,2443,2444,3,117,58,0,2444,2445,3,115,57,0,2445,2446,3,103,51,0,2446,2447,3,113,56,0,2447,2448,3,125,62,0,2448,568,1,0,0,0,2449,2450,3,123,61,0,2450,2451,3,91,45,0,2451,2452,3,101,50,0,2452,2453,3,95,47,0,2453,2454,3,111,55,0,2454,2455,3,87,43,0,2455,570,1,0,0,0,2456,2457,3,123,61,0,2457,2458,3,95,47,0,2458,2459,3,91,45,0,2459,2460,3,115,57,0,2460,2461,3,113,56,0,2461,2462,3,93,46,0,2462,2463,3,123,61,0,2463,572,1,0,0,0,2464,2465,3,123,61,0,2465,2466,3,95,47,0,2466,2467,3,95,47,0,2467,2468,3,107,53,0,2468,574,1,0,0,0,2469,2470,3,123,61,0,2470,2471,3,95,47,0,2471,2472,3,109,54,0,2472,2473,3,95,47,0,2473,2474,3,91,45,0,2474,2475,3,125,62,0,2475,576,1,0,0,0,2476,2477,3,123,61,0,2477,2478,3,95,47,0,2478,2479,3,111,55,0,2479,2480,3,103,51,0,2480,578,1,0,0,0,2481,2482,3,123,61,0,2482,2483,3,95,47,0,2483,2484,3,125,62,0,2484,580,1,0,0,0,2485,2486,3,123,61,0,2486,2487,3,95,47,0,2487,2488,3,125,62,0,2488,2489,3,123,61,0,2489,582,1,0,0,0,2490,2491,3,123,61,0,2491,2492,3,101,50,0,2492,2493,3,115,57,0,2493,2494,3,131,65,0,2494,584,1,0,0,0,2495,2496,3,123,61,0,2496,2497,3,107,53,0,2497,2498,3,103,51,0,2498,2499,3,117,58,0,2499,586,1,0,0,0,2500,2501,3,123,61,0,2501,2502,3,115,57,0,2502,2503,3,127,63,0,2503,2504,3,121,60,0,2504,2505,3,91,45,0,2505,2506,3,95,47,0,2506,588,1,0,0,0,2507,2508,3,123,61,0,2508,2509,3,125,62,0,2509,2510,3,121,60,0,2510,2511,3,95,47,0,2511,2512,3,87,43,0,2512,2513,3,111,55,0,2513,590,1,0,0,0,2514,2515,3,123,61,0,2515,2516,3,125,62,0,2516,2517,3,121,60,0,2517,2518,3,127,63,0,2518,2519,3,91,45,0,2519,2520,3,125,62,0,2520,592,1,0,0,0,2521,2522,3,123,61,0,2522,2523,3,127,63,0,2523,2524,3,89,44,0,2524,2525,3,119,59,0,2525,2526,3,127,63,0,2526,2527,3,95,47,0,2527,2528,3,121,60,0,2528,2529,3,135,67,0,2529,594,1,0,0,0,2530,2531,3,123,61,0,2531,2532,3,127,63,0,2532,2533,3,89,44,0,2533,2534,3,123,61,0,2534,2535,3,95,47,0,2535,2536,3,125,62,0,2536,596,1,0,0,0,2537,2538,3,123,61,0,2538,2539,3,135,67,0,2539,2540,3,111,55,0,2540,2541,3,89,44,0,2541,2542,3,115,57,0,2542,2543,3,109,54,0,2543,2544,3,123,61,0,2544,598,1,0,0,0,2545,2546,3,123,61,0,2546,2547,3,135,67,0,2547,2548,3,111,55,0,2548,2549,3,111,55,0,2549,2550,3,95,47,0,2550,2551,3,125,62,0,2551,2552,3,121,60,0,2552,2553,3,103,51,0,2553,2554,3,91,45,0,2554,600,1,0,0,0,2555,2556,3,123,61,0,2556,2557,3,135,67,0,2557,2558,3,113,56,0,2558,2559,3,91,45,0,2559,602,1,0,0,0,2560,2561,3,123,61,0,2561,2562,3,135,67,0,2562,2563,3,123,61,0,2563,2564,3,125,62,0,2564,2565,3,95,47,0,2565,2566,3,111,55,0,2566,604,1,0,0,0,2567,2568,3,125,62,0,2568,2569,3,87,43,0,2569,2570,3,89,44,0,2570,2571,3,109,54,0,2571,2572,3,95,47,0,2572,606,1,0,0,0,2573,2574,3,125,62,0,2574,2575,3,87,43,0,2575,2576,3,89,44,0,2576,2577,3,109,54,0,2577,2578,3,95,47,0,2578,2579,3,123,61,0,2579,608,1,0,0,0,2580,2581,3,125,62,0,2581,2582,3,87,43,0,2582,2583,3,89,44,0,2583,2584,3,109,54,0,2584,2585,3,95,47,0,2585,2586,3,123,61,0,2586,2587,3,87,43,0,2587,2588,3,111,55,0,2588,2589,3,117,58,0,2589,2590,3,109,54,0,2590,2591,3,95,47,0,2591,610,1,0,0,0,2592,2593,3,125,62,0,2593,2594,3,87,43,0,2594,2595,3,89,44,0,2595,2596,3,109,54,0,2596,2597,3,95,47,0,2597,2598,3,123,61,0,2598,2599,3,125,62,0,2599,2600,3,115,57,0,2600,2601,3,121,60,0,2601,2602,3,95,47,0,2602,612,1,0,0,0,2603,2604,3,125,62,0,2604,2605,3,87,43,0,2605,2606,3,99,49,0,2606,2607,3,99,49,0,2607,2608,3,95,47,0,2608,2609,3,93,46,0,2609,614,1,0,0,0,2610,2611,3,125,62,0,2611,2612,3,95,47,0,2612,2613,3,111,55,0,2613,2614,3,117,58,0,2614,616,1,0,0,0,2615,2616,3,125,62,0,2616,2617,3,95,47,0,2617,2618,3,111,55,0,2618,2619,3,117,58,0,2619,2620,3,115,57,0,2620,2621,3,121,60,0,2621,2622,3,87,43,0,2622,2623,3,121,60,0,2623,2624,3,135,67,0,2624,618,1,0,0,0,2625,2626,3,125,62,0,2626,2627,3,101,50,0,2627,2628,3,95,47,0,2628,2629,3,113,56,0,2629,620,1,0,0,0,2630,2631,3,125,62,0,2631,2632,3,103,51,0,2632,2633,3,95,47,0,2633,2634,3,123,61,0,2634,622,1,0,0,0,2635,2636,3,125,62,0,2636,2637,3,115,57,0,2637,624,1,0,0,0,2638,2639,3,125,62,0,2639,2640,3,115,57,0,2640,2641,3,117,58,0,2641,2642,3,103,51,0,2642,2643,3,91,45,0,2643,626,1,0,0,0,2644,2645,3,125,62,0,2645,2646,3,121,60,0,2646,2647,3,87,43,0,2647,2648,3,113,56,0,2648,2649,3,123,61,0,2649,2650,3,87,43,0,2650,2651,3,91,45,0,2651,2652,3,125,62,0,2652,2653,3,103,51,0,2653,2654,3,115,57,0,2654,2655,3,113,56,0,2655,628,1,0,0,0,2656,2657,3,125,62,0,2657,2658,3,121,60,0,2658,2659,3,103,51,0,2659,2660,3,99,49,0,2660,2661,3,99,49,0,2661,2662,3,95,47,0,2662,2663,3,121,60,0,2663,630,1,0,0,0,2664,2665,3,125,62,0,2665,2666,3,121,60,0,2666,2667,3,127,63,0,2667,2668,3,95,47,0,2668,632,1,0,0,0,2669,2670,3,125,62,0,2670,2671,3,127,63,0,2671,2672,3,117,58,0,2672,2673,3,109,54,0,2673,2674,3,95,47,0,2674,634,1,0,0,0,2675,2676,3,125,62,0,2676,2677,3,135,67,0,2677,2678,3,117,58,0,2678,2679,3,95,47,0,2679,636,1,0,0,0,2680,2681,3,127,63,0,2681,2682,3,113,56,0,2682,2683,3,89,44,0,2683,2684,3,115,57,0,2684,2685,3,127,63,0,2685,2686,3,113,56,0,2686,2687,3,93,46,0,2687,2688,3,95,47,0,2688,2689,3,93,46,0,2689,638,1,0,0,0,2690,2691,3,127,63,0,2691,2692,3,113,56,0,2692,2693,3,91,45,0,2693,2694,3,115,57,0,2694,2695,3,113,56,0,2695,2696,3,93,46,0,2696,2697,3,103,51,0,2697,2698,3,125,62,0,2698,2699,3,103,51,0,2699,2700,3,115,57,0,2700,2701,3,113,56,0,2701,2702,3,87,43,0,2702,2703,3,109,54,0,2703,640,1,0,0,0,2704,2705,3,127,63,0,2705,2706,3,113,56,0,2706,2707,3,103,51,0,2707,2708,3,115,57,0,2708,2709,3,113,56,0,2709,642,1,0,0,0,2710,2711,3,127,63,0,2711,2712,3,113,56,0,2712,2713,3,103,51,0,2713,2714,3,119,59,0,2714,2715,3,127,63,0,2715,2716,3,95,47,0,2716,644,1,0,0,0,2717,2718,3,127,63,0,2718,2719,3,113,56,0,2719,2720,3,107,53,0,2720,2721,3,113,56,0,2721,2722,3,115,57,0,2722,2723,3,131,65,0,2723,2724,3,113,56,0,2724,646,1,0,0,0,2725,2726,3,127,63,0,2726,2727,3,113,56,0,2727,2728,3,111,55,0,2728,2729,3,87,43,0,2729,2730,3,125,62,0,2730,2731,3,91,45,0,2731,2732,3,101,50,0,2732,2733,3,95,47,0,2733,2734,3,93,46,0,2734,648,1,0,0,0,2735,2736,3,127,63,0,2736,2737,3,117,58,0,2737,2738,3,93,46,0,2738,2739,3,87,43,0,2739,2740,3,125,62,0,2740,2741,3,95,47,0,2741,650,1,0,0,0,2742,2743,3,127,63,0,2743,2744,3,117,58,0,2744,2745,3,123,61,0,2745,2746,3,95,47,0,2746,2747,3,121,60,0,2747,2748,3,125,62,0,2748,652,1,0,0,0,2749,2750,3,127,63,0,2750,2751,3,123,61,0,2751,2752,3,95,47,0,2752,654,1,0,0,0,2753,2754,3,127,63,0,2754,2755,3,123,61,0,2755,2756,3,95,47,0,2756,2757,3,121,60,0,2757,656,1,0,0,0,2758,2759,3,127,63,0,2759,2760,3,123,61,0,2760,2761,3,103,51,0,2761,2762,3,113,56,0,2762,2763,3,99,49,0,2763,658,1,0,0,0,2764,2765,3,129,64,0,2765,2766,3,87,43,0,2766,2767,3,91,45,0,2767,2768,3,127,63,0,2768,2769,3,127,63,0,2769,2770,3,111,55,0,2770,660,1,0,0,0,2771,2772,3,129,64,0,2772,2773,3,87,43,0,2773,2774,3,109,54,0,2774,2775,3,127,63,0,2775,2776,3,95,47,0,2776,2777,3,123,61,0,2777,662,1,0,0,0,2778,2779,3,129,64,0,2779,2780,3,87,43,0,2780,2781,3,121,60,0,2781,2782,3,103,51,0,2782,2783,3,87,43,0,2783,2784,3,113,56,0,2784,2785,3,125,62,0,2785,664,1,0,0,0,2786,2787,3,129,64,0,2787,2788,3,103,51,0,2788,2789,3,95,47,0,2789,2790,3,131,65,0,2790,666,1,0,0,0,2791,2792,3,129,64,0,2792,2793,3,103,51,0,2793,2794,3,121,60,0,2794,2795,3,125,62,0,2795,2796,3,127,63,0,2796,2797,3,87,43,0,2797,2798,3,109,54,0,2798,668,1,0,0,0,2799,2800,3,131,65,0,2800,2801,3,101,50,0,2801,2802,3,95,47,0,2802,2803,3,113,56,0,2803,670,1,0,0,0,2804,2805,3,131,65,0,2805,2806,3,101,50,0,2806,2807,3,95,47,0,2807,2808,3,121,60,0,2808,2809,3,95,47,0,2809,672,1,0,0,0,2810,2811,3,131,65,0,2811,2812,3,103,51,0,2812,2813,3,113,56,0,2813,2814,3,93,46,0,2814,2815,3,115,57,0,2815,2816,3,131,65,0,2816,674,1,0,0,0,2817,2818,3,131,65,0,2818,2819,3,103,51,0,2819,2820,3,125,62,0,2820,2821,3,101,50,0,2821,676,1,0,0,0,2822,2823,3,131,65,0,2823,2824,3,103,51,0,2824,2825,3,125,62,0,2825,2826,3,101,50,0,2826,2827,3,115,57,0,2827,2828,3,127,63,0,2828,2829,3,125,62,0,2829,678,1,0,0,0,2830,2831,3,131,65,0,2831,2832,3,121,60,0,2832,2833,3,87,43,0,2833,2834,3,117,58,0,2834,2835,3,117,58,0,2835,2836,3,95,47,0,2836,2837,3,121,60,0,2837,680,1,0,0,0,2838,2839,3,133,66,0,2839,2840,3,115,57,0,2840,2841,3,121,60,0,2841,682,1,0,0,0,2842,2847,8,26,0,0,2843,2844,3,43,21,0,2844,2845,9,0,0,0,2845,2847,1,0,0,0,2846,2842,1,0,0,0,2846,2843,1,0,0,0,2847,684,1,0,0,0,2848,2853,8,27,0,0,2849,2850,3,43,21,0,2850,2851,9,0,0,0,2851,2853,1,0,0,0,2852,2848,1,0,0,0,2852,2849,1,0,0,0,2853,686,1,0,0,0,2854,2858,3,69,34,0,2855,2857,3,683,341,0,2856,2855,1,0,0,0,2857,2860,1,0,0,0,2858,2856,1,0,0,0,2858,2859,1,0,0,0,2859,2861,1,0,0,0,2860,2858,1,0,0,0,2861,2862,3,69,34,0,2862,688,1,0,0,0,2863,2867,3,67,33,0,2864,2866,3,685,342,0,2865,2864,1,0,0,0,2866,2869,1,0,0,0,2867,2865,1,0,0,0,2867,2868,1,0,0,0,2868,2870,1,0,0,0,2869,2867,1,0,0,0,2870,2871,3,67,33,0,2871,690,1,0,0,0,2872,2876,3,63,31,0,2873,2875,9,0,0,0,2874,2873,1,0,0,0,2875,2878,1,0,0,0,2876,2877,1,0,0,0,2876,2874,1,0,0,0,2877,2879,1,0,0,0,2878,2876,1,0,0,0,2879,2880,3,63,31,0,2880,2882,1,0,0,0,2881,2872,1,0,0,0,2882,2883,1,0,0,0,2883,2881,1,0,0,0,2883,2884,1,0,0,0,2884,2886,1,0,0,0,2885,2887,3,61,30,0,2886,2885,1,0,0,0,2886,2887,1,0,0,0,2887,692,1,0,0,0,2888,2892,3,687,343,0,2889,2892,3,689,344,0,2890,2892,3,691,345,0,2891,2888,1,0,0,0,2891,2889,1,0,0,0,2891,2890,1,0,0,0,2892,2903,1,0,0,0,2893,2904,3,123,61,0,2894,2904,3,127,63,0,2895,2904,3,135,67,0,2896,2904,3,105,52,0,2897,2901,3,117,58,0,2898,2902,3,125,62,0,2899,2902,3,89,44,0,2900,2902,3,129,64,0,2901,2898,1,0,0,0,2901,2899,1,0,0,0,2901,2900,1,0,0,0,2901,2902,1,0,0,0,2902,2904,1,0,0,0,2903,2893,1,0,0,0,2903,2894,1,0,0,0,2903,2895,1,0,0,0,2903,2896,1,0,0,0,2903,2897,1,0,0,0,2903,2904,1,0,0,0,2904,694,1,0,0,0,2905,2910,7,28,0,0,2906,2909,7,28,0,0,2907,2909,3,701,350,0,2908,2906,1,0,0,0,2908,2907,1,0,0,0,2909,2912,1,0,0,0,2910,2908,1,0,0,0,2910,2911,1,0,0,0,2911,696,1,0,0,0,2912,2910,1,0,0,0,2913,2914,5,96,0,0,2914,2919,5,96,0,0,2915,2916,5,92,0,0,2916,2919,5,96,0,0,2917,2919,8,29,0,0,2918,2913,1,0,0,0,2918,2915,1,0,0,0,2918,2917,1,0,0,0,2919,698,1,0,0,0,2920,2924,3,71,35,0,2921,2923,3,697,348,0,2922,2921,1,0,0,0,2923,2926,1,0,0,0,2924,2922,1,0,0,0,2924,2925,1,0,0,0,2925,2927,1,0,0,0,2926,2924,1,0,0,0,2927,2928,3,71,35,0,2928,700,1,0,0,0,2929,2930,2,48,57,0,2930,702,1,0,0,0,2931,2932,7,30,0,0,2932,704,1,0,0,0,2933,2934,5,48,0,0,2934,2936,3,133,66,0,2935,2937,3,703,351,0,2936,2935,1,0,0,0,2937,2938,1,0,0,0,2938,2936,1,0,0,0,2938,2939,1,0,0,0,2939,706,1,0,0,0,2940,2941,5,48,0,0,2941,2943,3,115,57,0,2942,2944,2,48,56,0,2943,2942,1,0,0,0,2944,2945,1,0,0,0,2945,2943,1,0,0,0,2945,2946,1,0,0,0,2946,708,1,0,0,0,2947,2948,5,48,0,0,2948,2950,3,89,44,0,2949,2951,2,48,49,0,2950,2949,1,0,0,0,2951,2952,1,0,0,0,2952,2950,1,0,0,0,2952,2953,1,0,0,0,2953,710,1,0,0,0,2954,2956,3,701,350,0,2955,2954,1,0,0,0,2956,2957,1,0,0,0,2957,2955,1,0,0,0,2957,2958,1,0,0,0,2958,712,1,0,0,0,2959,2964,3,711,355,0,2960,2964,3,705,352,0,2961,2964,3,707,353,0,2962,2964,3,709,354,0,2963,2959,1,0,0,0,2963,2960,1,0,0,0,2963,2961,1,0,0,0,2963,2962,1,0,0,0,2964,714,1,0,0,0,2965,2968,3,713,356,0,2966,2969,3,117,58,0,2967,2969,3,127,63,0,2968,2966,1,0,0,0,2968,2967,1,0,0,0,2968,2969,1,0,0,0,2969,2976,1,0,0,0,2970,2977,3,109,54,0,2971,2977,3,123,61,0,2972,2977,3,125,62,0,2973,2977,3,103,51,0,2974,2977,3,89,44,0,2975,2977,3,113,56,0,2976,2970,1,0,0,0,2976,2971,1,0,0,0,2976,2972,1,0,0,0,2976,2973,1,0,0,0,2976,2974,1,0,0,0,2976,2975,1,0,0,0,2976,2977,1,0,0,0,2977,716,1,0,0,0,2978,2981,3,95,47,0,2979,2982,3,33,16,0,2980,2982,3,35,17,0,2981,2979,1,0,0,0,2981,2980,1,0,0,0,2981,2982,1,0,0,0,2982,2983,1,0,0,0,2983,2984,3,711,355,0,2984,718,1,0,0,0,2985,2986,3,711,355,0,2986,2990,3,49,24,0,2987,2989,3,701,350,0,2988,2987,1,0,0,0,2989,2992,1,0,0,0,2990,2988,1,0,0,0,2990,2991,1,0,0,0,2991,2994,1,0,0,0,2992,2990,1,0,0,0,2993,2995,3,717,358,0,2994,2993,1,0,0,0,2994,2995,1,0,0,0,2995,3e3,1,0,0,0,2996,2997,3,711,355,0,2997,2998,3,717,358,0,2998,3e3,1,0,0,0,2999,2985,1,0,0,0,2999,2996,1,0,0,0,3e3,3009,1,0,0,0,3001,3010,3,97,48,0,3002,3007,3,117,58,0,3003,3004,3,97,48,0,3004,3005,7,31,0,0,3005,3008,1,0,0,0,3006,3008,3,113,56,0,3007,3003,1,0,0,0,3007,3006,1,0,0,0,3007,3008,1,0,0,0,3008,3010,1,0,0,0,3009,3001,1,0,0,0,3009,3002,1,0,0,0,3009,3010,1,0,0,0,3010,720,1,0,0,0,3011,3012,3,133,66,0,3012,3014,3,69,34,0,3013,3015,3,703,351,0,3014,3013,1,0,0,0,3015,3016,1,0,0,0,3016,3014,1,0,0,0,3016,3017,1,0,0,0,3017,3018,1,0,0,0,3018,3019,3,69,34,0,3019,722,1,0,0,0,3020,3021,5,47,0,0,3021,3022,5,42,0,0,3022,3026,1,0,0,0,3023,3025,9,0,0,0,3024,3023,1,0,0,0,3025,3028,1,0,0,0,3026,3027,1,0,0,0,3026,3024,1,0,0,0,3027,3029,1,0,0,0,3028,3026,1,0,0,0,3029,3030,5,42,0,0,3030,3031,5,47,0,0,3031,724,1,0,0,0,3032,3033,5,45,0,0,3033,3034,5,45,0,0,3034,3038,1,0,0,0,3035,3037,8,32,0,0,3036,3035,1,0,0,0,3037,3040,1,0,0,0,3038,3036,1,0,0,0,3038,3039,1,0,0,0,3039,3046,1,0,0,0,3040,3038,1,0,0,0,3041,3043,5,13,0,0,3042,3044,5,10,0,0,3043,3042,1,0,0,0,3043,3044,1,0,0,0,3044,3047,1,0,0,0,3045,3047,7,33,0,0,3046,3041,1,0,0,0,3046,3045,1,0,0,0,3047,726,1,0,0,0,3048,3049,7,34,0,0,3049,3050,1,0,0,0,3050,3051,6,363,0,0,3051,728,1,0,0,0,3052,3055,3,723,361,0,3053,3055,3,725,362,0,3054,3052,1,0,0,0,3054,3053,1,0,0,0,3055,3056,1,0,0,0,3056,3057,6,364,1,0,3057,730,1,0,0,0,34,0,2846,2852,2858,2867,2876,2883,2886,2891,2901,2903,2908,2910,2918,2924,2938,2945,2952,2957,2963,2968,2976,2981,2990,2994,2999,3007,3009,3016,3026,3038,3043,3046,3054,2,0,1,0,6,0,0],qi.vocabulary=new Ra(qi.literalNames,qi.symbolicNames,[]),qi.decisionsToDFA=qi._ATN.decisionToState.map(((t,e)=>new ni(t,e))),qi),tf=(ji=class t extends Cc{get grammarFileName(){return"YQL.g4"}get literalNames(){return t.literalNames}get symbolicNames(){return t.symbolicNames}get ruleNames(){return t.ruleNames}get serializedATN(){return t._serializedATN}createFailedPredicateException(t,e){return new Sc(this,t,e)}constructor(e){super(e),this.interpreter=new Ai(this,t._ATN,t.decisionsToDFA,new Si)}sql_query(){let e=new ef(this.context,this.state);this.enterRule(e,0,t.RULE_sql_query);try{switch(this.state=811,this.errorHandler.sync(this),this.interpreter.adaptivePredict(this.tokenStream,0,this.context)){case 1:this.enterOuterAlt(e,1),this.state=806,this.sql_stmt_list();break;case 2:this.enterOuterAlt(e,2),this.state=807,this.match(t.PRAGMA),this.state=808,this.match(t.ANSI),this.state=809,this.match(t.DIGITS),this.state=810,this.ansi_sql_stmt_list()}}catch(s){if(!(s instanceof jr))throw s;this.errorHandler.reportError(this,s),this.errorHandler.recover(this,s)}finally{this.exitRule()}return e}sql_stmt_list(){let e,s=new sf(this.context,this.state);this.enterRule(s,2,t.RULE_sql_stmt_list);try{let a;for(this.enterOuterAlt(s,1),this.state=816,this.errorHandler.sync(this),e=this.tokenStream.LA(1);24===e;)this.state=813,this.match(t.SEMICOLON),this.state=818,this.errorHandler.sync(this),e=this.tokenStream.LA(1);for(this.state=819,this.sql_stmt(),this.state=828,this.errorHandler.sync(this),a=this.interpreter.adaptivePredict(this.tokenStream,3,this.context);2!==a&&a!==ja.INVALID_ALT_NUMBER;){if(1===a){this.state=821,this.errorHandler.sync(this),e=this.tokenStream.LA(1);do{this.state=820,this.match(t.SEMICOLON),this.state=823,this.errorHandler.sync(this),e=this.tokenStream.LA(1)}while(24===e);this.state=825,this.sql_stmt()}this.state=830,this.errorHandler.sync(this),a=this.interpreter.adaptivePredict(this.tokenStream,3,this.context)}for(this.state=834,this.errorHandler.sync(this),e=this.tokenStream.LA(1);24===e;)this.state=831,this.match(t.SEMICOLON),this.state=836,this.errorHandler.sync(this),e=this.tokenStream.LA(1);this.state=837,this.match(t.EOF)}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}ansi_sql_stmt_list(){let e,s=new af(this.context,this.state);this.enterRule(s,4,t.RULE_ansi_sql_stmt_list);try{for(this.enterOuterAlt(s,1),this.state=842,this.errorHandler.sync(this),e=this.tokenStream.LA(1);24===e;)this.state=839,this.match(t.SEMICOLON),this.state=844,this.errorHandler.sync(this),e=this.tokenStream.LA(1);this.state=845,this.match(t.EOF)}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}lambda_body(){let e,s=new rf(this.context,this.state);this.enterRule(s,6,t.RULE_lambda_body);try{for(this.enterOuterAlt(s,1),this.state=850,this.errorHandler.sync(this),e=this.tokenStream.LA(1);24===e;)this.state=847,this.match(t.SEMICOLON),this.state=852,this.errorHandler.sync(this),e=this.tokenStream.LA(1);for(this.state=861,this.errorHandler.sync(this),e=this.tokenStream.LA(1);33===e||158===e;){this.state=853,this.lambda_stmt(),this.state=855,this.errorHandler.sync(this),e=this.tokenStream.LA(1);do{this.state=854,this.match(t.SEMICOLON),this.state=857,this.errorHandler.sync(this),e=this.tokenStream.LA(1)}while(24===e);this.state=863,this.errorHandler.sync(this),e=this.tokenStream.LA(1)}for(this.state=864,this.match(t.RETURN),this.state=865,this.expr(),this.state=869,this.errorHandler.sync(this),e=this.tokenStream.LA(1);24===e;)this.state=866,this.match(t.SEMICOLON),this.state=871,this.errorHandler.sync(this),e=this.tokenStream.LA(1)}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}lambda_stmt(){let e=new cf(this.context,this.state);this.enterRule(e,8,t.RULE_lambda_stmt);try{switch(this.state=874,this.errorHandler.sync(this),this.tokenStream.LA(1)){case t.DOLLAR:this.enterOuterAlt(e,1),this.state=872,this.named_nodes_stmt();break;case t.IMPORT:this.enterOuterAlt(e,2),this.state=873,this.import_stmt();break;default:throw new Ei(this)}}catch(s){if(!(s instanceof jr))throw s;this.errorHandler.reportError(this,s),this.errorHandler.recover(this,s)}finally{this.exitRule()}return e}sql_stmt(){let e,s=new nf(this.context,this.state);this.enterRule(s,10,t.RULE_sql_stmt);try{this.enterOuterAlt(s,1),this.state=881,this.errorHandler.sync(this),e=this.tokenStream.LA(1),129===e&&(this.state=876,this.match(t.EXPLAIN),this.state=879,this.errorHandler.sync(this),e=this.tokenStream.LA(1),1===e&&(this.state=877,this.match(t.QUERY),this.state=878,this.match(t.PLAN))),this.state=883,this.sql_stmt_core()}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}sql_stmt_core(){let e=new hf(this.context,this.state);this.enterRule(e,12,t.RULE_sql_stmt_core);try{switch(this.state=929,this.errorHandler.sync(this),this.interpreter.adaptivePredict(this.tokenStream,13,this.context)){case 1:this.enterOuterAlt(e,1),this.state=885,this.pragma_stmt();break;case 2:this.enterOuterAlt(e,2),this.state=886,this.select_stmt();break;case 3:this.enterOuterAlt(e,3),this.state=887,this.named_nodes_stmt();break;case 4:this.enterOuterAlt(e,4),this.state=888,this.create_table_stmt();break;case 5:this.enterOuterAlt(e,5),this.state=889,this.drop_table_stmt();break;case 6:this.enterOuterAlt(e,6),this.state=890,this.use_stmt();break;case 7:this.enterOuterAlt(e,7),this.state=891,this.into_table_stmt();break;case 8:this.enterOuterAlt(e,8),this.state=892,this.commit_stmt();break;case 9:this.enterOuterAlt(e,9),this.state=893,this.update_stmt();break;case 10:this.enterOuterAlt(e,10),this.state=894,this.delete_stmt();break;case 11:this.enterOuterAlt(e,11),this.state=895,this.rollback_stmt();break;case 12:this.enterOuterAlt(e,12),this.state=896,this.declare_stmt();break;case 13:this.enterOuterAlt(e,13),this.state=897,this.import_stmt();break;case 14:this.enterOuterAlt(e,14),this.state=898,this.export_stmt();break;case 15:this.enterOuterAlt(e,15),this.state=899,this.alter_table_stmt();break;case 16:this.enterOuterAlt(e,16),this.state=900,this.alter_external_table_stmt();break;case 17:this.enterOuterAlt(e,17),this.state=901,this.do_stmt();break;case 18:this.enterOuterAlt(e,18),this.state=902,this.define_action_or_subquery_stmt();break;case 19:this.enterOuterAlt(e,19),this.state=903,this.if_stmt();break;case 20:this.enterOuterAlt(e,20),this.state=904,this.for_stmt();break;case 21:this.enterOuterAlt(e,21),this.state=905,this.values_stmt();break;case 22:this.enterOuterAlt(e,22),this.state=906,this.create_user_stmt();break;case 23:this.enterOuterAlt(e,23),this.state=907,this.alter_user_stmt();break;case 24:this.enterOuterAlt(e,24),this.state=908,this.create_group_stmt();break;case 25:this.enterOuterAlt(e,25),this.state=909,this.alter_group_stmt();break;case 26:this.enterOuterAlt(e,26),this.state=910,this.drop_role_stmt();break;case 27:this.enterOuterAlt(e,27),this.state=911,this.create_object_stmt();break;case 28:this.enterOuterAlt(e,28),this.state=912,this.alter_object_stmt();break;case 29:this.enterOuterAlt(e,29),this.state=913,this.drop_object_stmt();break;case 30:this.enterOuterAlt(e,30),this.state=914,this.create_external_data_source_stmt();break;case 31:this.enterOuterAlt(e,31),this.state=915,this.alter_external_data_source_stmt();break;case 32:this.enterOuterAlt(e,32),this.state=916,this.drop_external_data_source_stmt();break;case 33:this.enterOuterAlt(e,33),this.state=917,this.create_replication_stmt();break;case 34:this.enterOuterAlt(e,34),this.state=918,this.drop_replication_stmt();break;case 35:this.enterOuterAlt(e,35),this.state=919,this.create_topic_stmt();break;case 36:this.enterOuterAlt(e,36),this.state=920,this.alter_topic_stmt();break;case 37:this.enterOuterAlt(e,37),this.state=921,this.drop_topic_stmt();break;case 38:this.enterOuterAlt(e,38),this.state=922,this.grant_permissions_stmt();break;case 39:this.enterOuterAlt(e,39),this.state=923,this.revoke_permissions_stmt();break;case 40:this.enterOuterAlt(e,40),this.state=924,this.alter_table_store_stmt();break;case 41:this.enterOuterAlt(e,41),this.state=925,this.upsert_object_stmt();break;case 42:this.enterOuterAlt(e,42),this.state=926,this.create_view_stmt();break;case 43:this.enterOuterAlt(e,43),this.state=927,this.drop_view_stmt();break;case 44:this.enterOuterAlt(e,44),this.state=928,this.alter_replication_stmt()}}catch(s){if(!(s instanceof jr))throw s;this.errorHandler.reportError(this,s),this.errorHandler.recover(this,s)}finally{this.exitRule()}return e}expr(){let e,s=new Ef(this.context,this.state);this.enterRule(s,14,t.RULE_expr);try{switch(this.state=940,this.errorHandler.sync(this),this.interpreter.adaptivePredict(this.tokenStream,15,this.context)){case 1:for(this.enterOuterAlt(s,1),this.state=931,this.or_subexpr(),this.state=936,this.errorHandler.sync(this),e=this.tokenStream.LA(1);209===e;)this.state=932,this.match(t.OR),this.state=933,this.or_subexpr(),this.state=938,this.errorHandler.sync(this),e=this.tokenStream.LA(1);break;case 2:this.enterOuterAlt(s,2),this.state=939,this.type_name_composite()}}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}or_subexpr(){let e,s=new Tf(this.context,this.state);this.enterRule(s,16,t.RULE_or_subexpr);try{for(this.enterOuterAlt(s,1),this.state=942,this.and_subexpr(),this.state=947,this.errorHandler.sync(this),e=this.tokenStream.LA(1);51===e;)this.state=943,this.match(t.AND),this.state=944,this.and_subexpr(),this.state=949,this.errorHandler.sync(this),e=this.tokenStream.LA(1)}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}and_subexpr(){let e,s=new of(this.context,this.state);this.enterRule(s,18,t.RULE_and_subexpr);try{for(this.enterOuterAlt(s,1),this.state=950,this.xor_subexpr(),this.state=955,this.errorHandler.sync(this),e=this.tokenStream.LA(1);315===e;)this.state=951,this.match(t.XOR),this.state=952,this.xor_subexpr(),this.state=957,this.errorHandler.sync(this),e=this.tokenStream.LA(1)}catch($c){if(!($c instanceof jr))throw $c;this.errorHandler.reportError(this,$c),this.errorHandler.recover(this,$c)}finally{this.exitRule()}return s}xor_subexpr(){let e,s=new Rf(this.context,this.state);this.enterRule(s,20,t.RULE_xor_subexpr);try{this.enterOuterAlt(s,1),this.state=958,this.eq_subexpr(),this.state=960,this.errorHandler.sync(this),e=this.tokenStream.LA(1),(!(-32&e)&&1<'","'<'","'<='","'>'","'>='","'<<'","'|<<'","'&'","'|'","'||'","'<|'","'|>'","'+'","'-'","'~'","'*'","'/'","''","'%'","';'","'.'","','","'('","')'","'?'","':'","'@'","'@@'","'$'","'\"'","'''","'`'","'{'","'}'","'^'","'::'","'->'","']'","'['"],ji.symbolicNames=[null,"QUERY","EQUALS","EQUALS2","NOT_EQUALS","NOT_EQUALS2","LESS","LESS_OR_EQ","GREATER","GREATER_OR_EQ","SHIFT_LEFT","ROT_LEFT","AMPERSAND","PIPE","DOUBLE_PIPE","STRUCT_OPEN","STRUCT_CLOSE","PLUS","MINUS","TILDA","ASTERISK","SLASH","BACKSLASH","PERCENT","SEMICOLON","DOT","COMMA","LPAREN","RPAREN","QUESTION","COLON","AT","DOUBLE_AT","DOLLAR","QUOTE_DOUBLE","QUOTE_SINGLE","BACKTICK","LBRACE_CURLY","RBRACE_CURLY","CARET","NAMESPACE","ARROW","RBRACE_SQUARE","LBRACE_SQUARE","ABORT","ACTION","ADD","AFTER","ALL","ALTER","ANALYZE","AND","ANSI","ANY","ARRAY","AS","ASC","ASSUME","ASYMMETRIC","ASYNC","ATTACH","ATTRIBUTES","AUTOINCREMENT","AUTOMAP","BEFORE","BEGIN","BERNOULLI","BETWEEN","BITCAST","BY","CALLABLE","CASCADE","CASE","CAST","CHANGEFEED","CHECK","COLLATE","COLUMN","COLUMNS","COMMIT","COMPACT","CONDITIONAL","CONFLICT","CONNECT","CONSTRAINT","CONSUMER","COVER","CREATE","CROSS","CUBE","CURRENT","CURRENT_DATE","CURRENT_TIME","CURRENT_TIMESTAMP","DATA","DATABASE","DECIMAL","DECLARE","DEFAULT","DEFERRABLE","DEFERRED","DEFINE","DELETE","DESC","DESCRIBE","DETACH","DICT","DIRECTORY","DISABLE","DISCARD","DISTINCT","DO","DROP","EACH","ELSE","EMPTY","EMPTY_ACTION","ENCRYPTED","END","ENUM","ERASE","ERROR","ESCAPE","EVALUATE","EXCEPT","EXCLUDE","EXCLUSION","EXCLUSIVE","EXISTS","EXPLAIN","EXPORT","EXTERNAL","FAIL","FALSE","FAMILY","FILTER","FIRST","FLATTEN","FLOW","FOLLOWING","FOR","FOREIGN","FROM","FULL","FUNCTION","GLOB","GLOBAL","GRANT","GROUP","GROUPING","GROUPS","HASH","HAVING","HOP","IF","IGNORE","ILIKE","IMMEDIATE","IMPORT","IN","INDEX","INDEXED","INHERITS","INITIAL","INITIALLY","INNER","INSERT","INSTEAD","INTERSECT","INTO","IS","ISNULL","JOIN","JSON_EXISTS","JSON_QUERY","JSON_VALUE","KEY","LAST","LEFT","LEGACY","LIKE","LIMIT","LIST","LOCAL","MANAGE","MATCH","MATCHES","MATCH_RECOGNIZE","MEASURES","MICROSECONDS","MILLISECONDS","MODIFY","NANOSECONDS","NATURAL","NEXT","NO","NOT","NOTNULL","NULL","NULLS","OBJECT","OF","OFFSET","OMIT","ON","ONE","ONLY","OPTION","OPTIONAL","OR","ORDER","OTHERS","OUTER","OVER","PARALLEL","PARTITION","PASSING","PASSWORD","PAST","PATTERN","PER","PERMUTE","PLAN","PRAGMA","PRECEDING","PRESORT","PRIMARY","PRIVILEGES","PROCESS","QUEUE","RAISE","RANGE","REDUCE","REFERENCES","REGEXP","REINDEX","RELEASE","REMOVE","RENAME","REPEATABLE","REPLACE","REPLICATION","RESET","RESOURCE","RESPECT","RESTRICT","RESULT","RETURN","RETURNING","REVERT","REVOKE","RIGHT","RLIKE","ROLLBACK","ROLLUP","ROW","ROWS","SAMPLE","SAVEPOINT","SCHEMA","SECONDS","SEEK","SELECT","SEMI","SET","SETS","SHOW","SKIP_RULE","SOURCE","STREAM","STRUCT","SUBQUERY","SUBSET","SYMBOLS","SYMMETRIC","SYNC","SYSTEM","TABLE","TABLES","TABLESAMPLE","TABLESTORE","TAGGED","TEMP","TEMPORARY","THEN","TIES","TO","TOPIC","TRANSACTION","TRIGGER","TRUE","TUPLE","TYPE","UNBOUNDED","UNCONDITIONAL","UNION","UNIQUE","UNKNOWN","UNMATCHED","UPDATE","UPSERT","USE","USER","USING","VACUUM","VALUES","VARIANT","VIEW","VIRTUAL","WHEN","WHERE","WINDOW","WITH","WITHOUT","WRAPPER","XOR","STRING_VALUE","ID_PLAIN","ID_QUOTED","DIGITS","INTEGER_VALUE","REAL","BLOB","WS","COMMENT"],ji.ruleNames=["sql_query","sql_stmt_list","ansi_sql_stmt_list","lambda_body","lambda_stmt","sql_stmt","sql_stmt_core","expr","or_subexpr","and_subexpr","xor_subexpr","distinct_from_op","cond_expr","match_op","eq_subexpr","shift_right","rot_right","double_question","neq_subexpr","bit_subexpr","add_subexpr","mul_subexpr","con_subexpr","unary_op","unary_subexpr_suffix","unary_casual_subexpr","in_unary_casual_subexpr","unary_subexpr","in_unary_subexpr","list_literal","expr_dict_list","dict_literal","expr_struct_list","struct_literal","atom_expr","in_atom_expr","cast_expr","bitcast_expr","exists_expr","case_expr","lambda","in_expr","json_api_expr","jsonpath_spec","json_variable_name","json_variable","json_variables","json_common_args","json_case_handler","json_value","json_exists_handler","json_exists","json_query_wrapper","json_query_handler","json_query","smart_parenthesis","expr_list","pure_column_list","pure_column_or_named","pure_column_or_named_list","column_name","without_column_name","column_list","without_column_list","named_expr","named_expr_list","invoke_expr","invoke_expr_tail","using_call_expr","key_expr","when_expr","literal_value","bind_parameter","opt_bind_parameter","bind_parameter_list","named_bind_parameter","named_bind_parameter_list","signed_number","type_name_simple","integer_or_bind","type_name_tag","struct_arg","struct_arg_positional","variant_arg","callable_arg","callable_arg_list","type_name_decimal","type_name_optional","type_name_tuple","type_name_struct","type_name_variant","type_name_list","type_name_stream","type_name_flow","type_name_dict","type_name_set","type_name_enum","type_name_resource","type_name_tagged","type_name_callable","type_name_composite","type_name","type_name_or_bind","value_constructor_literal","value_constructor","declare_stmt","module_path","import_stmt","export_stmt","call_action","inline_action","do_stmt","pragma_stmt","pragma_value","sort_specification","sort_specification_list","select_stmt","select_unparenthesized_stmt","select_kind_parenthesis","select_op","select_kind_partial","select_kind","process_core","external_call_param","external_call_settings","reduce_core","opt_set_quantifier","select_core","row_pattern_recognition_clause","row_pattern_rows_per_match","row_pattern_empty_match_handling","row_pattern_measures","row_pattern_measure_list","row_pattern_measure_definition","row_pattern_common_syntax","row_pattern_skip_to","row_pattern_skip_to_variable_name","row_pattern_initial_or_seek","row_pattern","row_pattern_term","row_pattern_factor","row_pattern_quantifier","row_pattern_primary","row_pattern_primary_variable_name","row_pattern_permute","row_pattern_subset_clause","row_pattern_subset_list","row_pattern_subset_item","row_pattern_subset_item_variable_name","row_pattern_subset_rhs","row_pattern_subset_rhs_variable_name","row_pattern_definition_list","row_pattern_definition","row_pattern_definition_variable_name","row_pattern_definition_search_condition","search_condition","row_pattern_variable_name","order_by_clause","ext_order_by_clause","group_by_clause","grouping_element_list","grouping_element","ordinary_grouping_set","ordinary_grouping_set_list","rollup_list","cube_list","grouping_sets_specification","hopping_window_specification","result_column","join_source","named_column","flatten_by_arg","flatten_source","named_single_source","single_source","sample_clause","tablesample_clause","sampling_mode","repeatable_clause","join_op","join_constraint","returning_columns_list","into_table_stmt","into_table_stmt_yq","into_values_source","values_stmt","values_source","values_source_row_list","values_source_row","simple_values_source","create_external_data_source_stmt","alter_external_data_source_stmt","alter_external_data_source_action","drop_external_data_source_stmt","create_view_stmt","drop_view_stmt","upsert_object_stmt","create_object_stmt","create_object_features","alter_object_stmt","alter_object_features","drop_object_stmt","drop_object_features","object_feature_value","object_feature_kv","object_feature_flag","object_feature","object_features","object_type_ref","create_table_stmt","create_table_entry","table_inherits","table_partition_by","with_table_settings","table_tablestore","table_settings_entry","table_as_source","alter_table_stmt","alter_table_action","alter_external_table_stmt","alter_external_table_action","alter_table_store_stmt","alter_table_store_action","alter_table_add_column","alter_table_drop_column","alter_table_alter_column","alter_table_add_column_family","alter_table_alter_column_family","alter_table_set_table_setting_uncompat","alter_table_set_table_setting_compat","alter_table_reset_table_setting","alter_table_add_index","alter_table_drop_index","alter_table_rename_to","alter_table_rename_index_to","alter_table_add_changefeed","alter_table_alter_changefeed","alter_table_drop_changefeed","column_schema","family_relation","opt_column_constraints","column_order_by_specification","table_constraint","table_index","table_index_type","global_index","local_index","changefeed","changefeed_settings","changefeed_settings_entry","changefeed_setting_value","changefeed_alter_settings","alter_table_setting_entry","table_setting_value","family_entry","family_settings","family_settings_entry","family_setting_value","split_boundaries","literal_value_list","drop_table_stmt","create_user_stmt","alter_user_stmt","create_group_stmt","alter_group_stmt","drop_role_stmt","role_name","create_user_option","grant_permissions_stmt","revoke_permissions_stmt","permission_id","permission_name","permission_name_target","create_replication_stmt","replication_target","replication_settings","replication_settings_entry","alter_replication_stmt","alter_replication_action","alter_replication_set_setting","drop_replication_stmt","action_or_subquery_args","define_action_or_subquery_stmt","define_action_or_subquery_body","if_stmt","for_stmt","table_ref","table_key","table_arg","table_hints","table_hint","object_ref","simple_table_ref_core","simple_table_ref","into_simple_table_ref","delete_stmt","update_stmt","set_clause_choice","set_clause_list","set_clause","set_target","multiple_column_assignment","set_target_list","create_topic_stmt","create_topic_entries","create_topic_entry","with_topic_settings","alter_topic_stmt","alter_topic_action","alter_topic_add_consumer","topic_create_consumer_entry","alter_topic_alter_consumer","alter_topic_alter_consumer_entry","alter_topic_drop_consumer","topic_alter_consumer_set","topic_alter_consumer_reset","alter_topic_set_settings","alter_topic_reset_settings","drop_topic_stmt","topic_settings","topic_settings_entry","topic_setting_value","topic_consumer_with_settings","topic_consumer_settings","topic_consumer_settings_entry","topic_consumer_setting_value","topic_ref","topic_consumer_ref","null_treatment","filter_clause","window_name_or_specification","window_name","window_clause","window_definition_list","window_definition","new_window_name","window_specification","window_specification_details","existing_window_name","window_partition_clause","window_order_clause","window_frame_clause","window_frame_units","window_frame_extent","window_frame_between","window_frame_bound","window_frame_exclusion","use_stmt","subselect_stmt","named_nodes_stmt","commit_stmt","rollback_stmt","identifier","id","id_schema","id_expr","id_expr_in","id_window","id_table","id_without","id_hint","id_as_compat","an_id","an_id_or_type","an_id_schema","an_id_expr","an_id_expr_in","an_id_window","an_id_table","an_id_without","an_id_hint","an_id_pure","an_id_as_compat","view_name","opt_id_prefix","cluster_expr","id_or_type","opt_id_prefix_or_type","id_or_at","id_table_or_type","id_table_or_at","keyword","keyword_expr_uncompat","keyword_table_uncompat","keyword_select_uncompat","keyword_alter_uncompat","keyword_in_uncompat","keyword_window_uncompat","keyword_hint_uncompat","keyword_as_compat","keyword_compat","type_id","bool_value","real","integer","sql_query_yq","sql_stmt_list_yq","sql_stmt_yq","sql_stmt_core_yq","replication_name","where_expr","from_stmt","alter_table_for_autocomplete"],ji._serializedATN=[4,1,324,4277,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,2,69,7,69,2,70,7,70,2,71,7,71,2,72,7,72,2,73,7,73,2,74,7,74,2,75,7,75,2,76,7,76,2,77,7,77,2,78,7,78,2,79,7,79,2,80,7,80,2,81,7,81,2,82,7,82,2,83,7,83,2,84,7,84,2,85,7,85,2,86,7,86,2,87,7,87,2,88,7,88,2,89,7,89,2,90,7,90,2,91,7,91,2,92,7,92,2,93,7,93,2,94,7,94,2,95,7,95,2,96,7,96,2,97,7,97,2,98,7,98,2,99,7,99,2,100,7,100,2,101,7,101,2,102,7,102,2,103,7,103,2,104,7,104,2,105,7,105,2,106,7,106,2,107,7,107,2,108,7,108,2,109,7,109,2,110,7,110,2,111,7,111,2,112,7,112,2,113,7,113,2,114,7,114,2,115,7,115,2,116,7,116,2,117,7,117,2,118,7,118,2,119,7,119,2,120,7,120,2,121,7,121,2,122,7,122,2,123,7,123,2,124,7,124,2,125,7,125,2,126,7,126,2,127,7,127,2,128,7,128,2,129,7,129,2,130,7,130,2,131,7,131,2,132,7,132,2,133,7,133,2,134,7,134,2,135,7,135,2,136,7,136,2,137,7,137,2,138,7,138,2,139,7,139,2,140,7,140,2,141,7,141,2,142,7,142,2,143,7,143,2,144,7,144,2,145,7,145,2,146,7,146,2,147,7,147,2,148,7,148,2,149,7,149,2,150,7,150,2,151,7,151,2,152,7,152,2,153,7,153,2,154,7,154,2,155,7,155,2,156,7,156,2,157,7,157,2,158,7,158,2,159,7,159,2,160,7,160,2,161,7,161,2,162,7,162,2,163,7,163,2,164,7,164,2,165,7,165,2,166,7,166,2,167,7,167,2,168,7,168,2,169,7,169,2,170,7,170,2,171,7,171,2,172,7,172,2,173,7,173,2,174,7,174,2,175,7,175,2,176,7,176,2,177,7,177,2,178,7,178,2,179,7,179,2,180,7,180,2,181,7,181,2,182,7,182,2,183,7,183,2,184,7,184,2,185,7,185,2,186,7,186,2,187,7,187,2,188,7,188,2,189,7,189,2,190,7,190,2,191,7,191,2,192,7,192,2,193,7,193,2,194,7,194,2,195,7,195,2,196,7,196,2,197,7,197,2,198,7,198,2,199,7,199,2,200,7,200,2,201,7,201,2,202,7,202,2,203,7,203,2,204,7,204,2,205,7,205,2,206,7,206,2,207,7,207,2,208,7,208,2,209,7,209,2,210,7,210,2,211,7,211,2,212,7,212,2,213,7,213,2,214,7,214,2,215,7,215,2,216,7,216,2,217,7,217,2,218,7,218,2,219,7,219,2,220,7,220,2,221,7,221,2,222,7,222,2,223,7,223,2,224,7,224,2,225,7,225,2,226,7,226,2,227,7,227,2,228,7,228,2,229,7,229,2,230,7,230,2,231,7,231,2,232,7,232,2,233,7,233,2,234,7,234,2,235,7,235,2,236,7,236,2,237,7,237,2,238,7,238,2,239,7,239,2,240,7,240,2,241,7,241,2,242,7,242,2,243,7,243,2,244,7,244,2,245,7,245,2,246,7,246,2,247,7,247,2,248,7,248,2,249,7,249,2,250,7,250,2,251,7,251,2,252,7,252,2,253,7,253,2,254,7,254,2,255,7,255,2,256,7,256,2,257,7,257,2,258,7,258,2,259,7,259,2,260,7,260,2,261,7,261,2,262,7,262,2,263,7,263,2,264,7,264,2,265,7,265,2,266,7,266,2,267,7,267,2,268,7,268,2,269,7,269,2,270,7,270,2,271,7,271,2,272,7,272,2,273,7,273,2,274,7,274,2,275,7,275,2,276,7,276,2,277,7,277,2,278,7,278,2,279,7,279,2,280,7,280,2,281,7,281,2,282,7,282,2,283,7,283,2,284,7,284,2,285,7,285,2,286,7,286,2,287,7,287,2,288,7,288,2,289,7,289,2,290,7,290,2,291,7,291,2,292,7,292,2,293,7,293,2,294,7,294,2,295,7,295,2,296,7,296,2,297,7,297,2,298,7,298,2,299,7,299,2,300,7,300,2,301,7,301,2,302,7,302,2,303,7,303,2,304,7,304,2,305,7,305,2,306,7,306,2,307,7,307,2,308,7,308,2,309,7,309,2,310,7,310,2,311,7,311,2,312,7,312,2,313,7,313,2,314,7,314,2,315,7,315,2,316,7,316,2,317,7,317,2,318,7,318,2,319,7,319,2,320,7,320,2,321,7,321,2,322,7,322,2,323,7,323,2,324,7,324,2,325,7,325,2,326,7,326,2,327,7,327,2,328,7,328,2,329,7,329,2,330,7,330,2,331,7,331,2,332,7,332,2,333,7,333,2,334,7,334,2,335,7,335,2,336,7,336,2,337,7,337,2,338,7,338,2,339,7,339,2,340,7,340,2,341,7,341,2,342,7,342,2,343,7,343,2,344,7,344,2,345,7,345,2,346,7,346,2,347,7,347,2,348,7,348,2,349,7,349,2,350,7,350,2,351,7,351,2,352,7,352,2,353,7,353,2,354,7,354,2,355,7,355,2,356,7,356,2,357,7,357,2,358,7,358,2,359,7,359,2,360,7,360,2,361,7,361,2,362,7,362,2,363,7,363,2,364,7,364,2,365,7,365,2,366,7,366,2,367,7,367,2,368,7,368,2,369,7,369,2,370,7,370,2,371,7,371,2,372,7,372,2,373,7,373,2,374,7,374,2,375,7,375,2,376,7,376,2,377,7,377,2,378,7,378,2,379,7,379,2,380,7,380,2,381,7,381,2,382,7,382,2,383,7,383,2,384,7,384,2,385,7,385,2,386,7,386,2,387,7,387,2,388,7,388,2,389,7,389,2,390,7,390,2,391,7,391,2,392,7,392,2,393,7,393,2,394,7,394,2,395,7,395,2,396,7,396,2,397,7,397,2,398,7,398,2,399,7,399,2,400,7,400,2,401,7,401,2,402,7,402,1,0,1,0,1,0,1,0,1,0,3,0,812,8,0,1,1,5,1,815,8,1,10,1,12,1,818,9,1,1,1,1,1,4,1,822,8,1,11,1,12,1,823,1,1,5,1,827,8,1,10,1,12,1,830,9,1,1,1,5,1,833,8,1,10,1,12,1,836,9,1,1,1,1,1,1,2,5,2,841,8,2,10,2,12,2,844,9,2,1,2,1,2,1,3,5,3,849,8,3,10,3,12,3,852,9,3,1,3,1,3,4,3,856,8,3,11,3,12,3,857,5,3,860,8,3,10,3,12,3,863,9,3,1,3,1,3,1,3,5,3,868,8,3,10,3,12,3,871,9,3,1,4,1,4,3,4,875,8,4,1,5,1,5,1,5,3,5,880,8,5,3,5,882,8,5,1,5,1,5,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,3,6,930,8,6,1,7,1,7,1,7,5,7,935,8,7,10,7,12,7,938,9,7,1,7,3,7,941,8,7,1,8,1,8,1,8,5,8,946,8,8,10,8,12,8,949,9,8,1,9,1,9,1,9,5,9,954,8,9,10,9,12,9,957,9,9,1,10,1,10,3,10,961,8,10,1,11,1,11,3,11,965,8,11,1,11,1,11,1,11,1,12,3,12,971,8,12,1,12,1,12,1,12,1,12,3,12,977,8,12,1,12,3,12,980,8,12,1,12,1,12,3,12,984,8,12,1,12,1,12,1,12,1,12,1,12,1,12,3,12,992,8,12,1,12,1,12,3,12,996,8,12,1,12,3,12,999,8,12,1,12,1,12,3,12,1003,8,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,3,12,1014,8,12,1,12,4,12,1017,8,12,11,12,12,12,1018,3,12,1021,8,12,1,13,1,13,1,14,1,14,1,14,5,14,1028,8,14,10,14,12,14,1031,9,14,1,15,1,15,1,15,1,16,1,16,1,16,1,16,1,17,1,17,1,17,1,18,1,18,1,18,1,18,1,18,1,18,1,18,1,18,3,18,1051,8,18,1,18,5,18,1054,8,18,10,18,12,18,1057,9,18,1,18,1,18,1,18,1,18,4,18,1063,8,18,11,18,12,18,1064,3,18,1067,8,18,1,19,1,19,1,19,5,19,1072,8,19,10,19,12,19,1075,9,19,1,20,1,20,1,20,5,20,1080,8,20,10,20,12,20,1083,9,20,1,21,1,21,1,21,5,21,1088,8,21,10,21,12,21,1091,9,21,1,22,1,22,1,22,1,22,3,22,1097,8,22,1,23,1,23,1,24,1,24,1,24,1,24,1,24,1,24,3,24,1107,8,24,5,24,1109,8,24,10,24,12,24,1112,9,24,1,24,1,24,3,24,1116,8,24,1,25,1,25,3,25,1120,8,25,1,25,1,25,1,26,1,26,3,26,1126,8,26,1,26,1,26,1,27,1,27,3,27,1132,8,27,1,28,1,28,3,28,1136,8,28,1,29,1,29,3,29,1140,8,29,1,29,3,29,1143,8,29,1,29,1,29,1,30,1,30,1,30,3,30,1150,8,30,1,30,1,30,1,30,1,30,3,30,1156,8,30,5,30,1158,8,30,10,30,12,30,1161,9,30,1,31,1,31,3,31,1165,8,31,1,31,3,31,1168,8,31,1,31,1,31,1,32,1,32,1,32,1,32,1,32,1,32,1,32,1,32,5,32,1180,8,32,10,32,12,32,1183,9,32,1,33,1,33,3,33,1187,8,33,1,33,3,33,1190,8,33,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,1,34,3,34,1204,8,34,1,34,1,34,1,34,1,34,1,34,3,34,1211,8,34,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,3,35,1222,8,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,3,35,1233,8,35,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,38,1,38,1,38,1,38,3,38,1253,8,38,1,38,1,38,1,39,1,39,3,39,1259,8,39,1,39,4,39,1262,8,39,11,39,12,39,1263,1,39,1,39,3,39,1268,8,39,1,39,1,39,1,40,1,40,1,40,1,40,1,40,1,40,1,40,1,40,1,40,1,40,3,40,1282,8,40,3,40,1284,8,40,1,41,1,41,1,42,1,42,1,42,3,42,1291,8,42,1,43,1,43,1,44,1,44,3,44,1297,8,44,1,45,1,45,1,45,1,45,1,46,1,46,1,46,5,46,1306,8,46,10,46,12,46,1309,9,46,1,47,1,47,1,47,1,47,1,47,3,47,1316,8,47,1,48,1,48,1,48,1,48,3,48,1322,8,48,1,49,1,49,1,49,1,49,1,49,3,49,1329,8,49,1,49,1,49,1,49,1,49,5,49,1335,8,49,10,49,12,49,1338,9,49,1,49,1,49,1,50,1,50,1,50,1,50,1,51,1,51,1,51,1,51,3,51,1350,8,51,1,51,1,51,1,52,1,52,3,52,1356,8,52,1,52,1,52,3,52,1360,8,52,1,52,3,52,1363,8,52,3,52,1365,8,52,1,53,1,53,1,53,1,53,1,53,1,53,3,53,1373,8,53,1,54,1,54,1,54,1,54,1,54,1,54,3,54,1381,8,54,1,54,1,54,1,54,1,54,3,54,1387,8,54,1,54,1,54,1,54,1,54,3,54,1393,8,54,1,54,1,54,1,55,1,55,3,55,1399,8,55,1,55,3,55,1402,8,55,1,55,1,55,1,56,1,56,1,56,5,56,1409,8,56,10,56,12,56,1412,9,56,1,57,1,57,1,57,1,57,5,57,1418,8,57,10,57,12,57,1421,9,57,1,57,1,57,1,58,1,58,3,58,1427,8,58,1,59,1,59,1,59,1,59,5,59,1433,8,59,10,59,12,59,1436,9,59,1,59,1,59,1,60,1,60,1,60,1,61,1,61,1,61,1,61,1,61,3,61,1448,8,61,1,62,1,62,1,62,5,62,1453,8,62,10,62,12,62,1456,9,62,1,62,3,62,1459,8,62,1,63,1,63,1,63,5,63,1464,8,63,10,63,12,63,1467,9,63,1,63,3,63,1470,8,63,1,64,1,64,1,64,3,64,1475,8,64,1,65,1,65,1,65,5,65,1480,8,65,10,65,12,65,1483,9,65,1,66,1,66,1,66,1,66,3,66,1489,8,66,1,66,3,66,1492,8,66,1,66,1,66,1,66,1,67,1,67,3,67,1499,8,67,1,67,1,67,3,67,1503,8,67,1,68,1,68,1,68,1,68,1,68,1,68,1,68,1,68,3,68,1513,8,68,1,68,1,68,1,69,1,69,1,69,1,69,1,70,1,70,1,70,1,70,1,70,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,3,71,1536,8,71,1,72,1,72,1,72,1,72,3,72,1542,8,72,1,73,1,73,3,73,1546,8,73,1,74,1,74,1,74,5,74,1551,8,74,10,74,12,74,1554,9,74,1,75,1,75,1,75,3,75,1559,8,75,1,76,1,76,1,76,5,76,1564,8,76,10,76,12,76,1567,9,76,1,77,3,77,1570,8,77,1,77,1,77,3,77,1574,8,77,1,78,1,78,1,79,1,79,3,79,1580,8,79,1,80,1,80,1,80,3,80,1585,8,80,1,81,1,81,1,81,1,81,1,82,1,82,1,82,3,82,1594,8,82,1,82,3,82,1597,8,82,1,82,1,82,1,82,1,82,3,82,1603,8,82,1,83,1,83,1,83,3,83,1608,8,83,1,83,1,83,1,84,1,84,1,84,1,84,3,84,1616,8,84,1,85,1,85,1,85,5,85,1621,8,85,10,85,12,85,1624,9,85,1,86,1,86,1,86,1,86,1,86,1,86,1,86,1,87,1,87,1,87,1,87,1,87,1,88,1,88,1,88,1,88,1,88,5,88,1643,8,88,10,88,12,88,1646,9,88,1,88,3,88,1649,8,88,3,88,1651,8,88,1,88,1,88,3,88,1655,8,88,1,89,1,89,1,89,1,89,1,89,5,89,1662,8,89,10,89,12,89,1665,9,89,1,89,3,89,1668,8,89,3,89,1670,8,89,1,89,1,89,3,89,1674,8,89,1,90,1,90,1,90,1,90,1,90,5,90,1681,8,90,10,90,12,90,1684,9,90,1,90,3,90,1687,8,90,1,90,1,90,1,91,1,91,1,91,1,91,1,91,1,92,1,92,1,92,1,92,1,92,1,93,1,93,1,93,1,93,1,93,1,94,1,94,1,94,1,94,1,94,1,94,1,94,1,95,1,95,1,95,1,95,1,95,1,96,1,96,1,96,1,96,1,96,5,96,1723,8,96,10,96,12,96,1726,9,96,1,96,3,96,1729,8,96,1,96,1,96,1,97,1,97,1,97,1,97,1,97,1,98,1,98,1,98,1,98,1,98,1,98,1,98,1,99,1,99,1,99,1,99,3,99,1749,8,99,1,99,3,99,1752,8,99,1,99,1,99,1,99,1,99,3,99,1758,8,99,1,99,1,99,1,99,1,99,1,99,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,1,100,3,100,1778,8,100,1,100,5,100,1781,8,100,10,100,12,100,1784,9,100,1,101,1,101,1,101,3,101,1789,8,101,1,101,5,101,1792,8,101,10,101,12,101,1795,9,101,3,101,1797,8,101,1,102,1,102,3,102,1801,8,102,1,103,1,103,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,1,104,3,104,1828,8,104,1,105,1,105,1,105,1,105,1,105,1,105,3,105,1836,8,105,1,106,3,106,1839,8,106,1,106,1,106,1,106,5,106,1844,8,106,10,106,12,106,1847,9,106,1,107,1,107,1,107,1,107,1,107,1,108,1,108,1,108,1,109,1,109,3,109,1859,8,109,1,109,1,109,3,109,1863,8,109,1,109,1,109,1,110,1,110,1,110,1,110,1,110,1,111,1,111,1,111,3,111,1875,8,111,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,1,112,5,112,1886,8,112,10,112,12,112,1889,9,112,1,112,1,112,3,112,1893,8,112,1,113,1,113,1,113,1,113,1,113,3,113,1900,8,113,1,114,1,114,3,114,1904,8,114,1,115,1,115,1,115,5,115,1909,8,115,10,115,12,115,1912,9,115,1,116,1,116,1,116,1,116,5,116,1918,8,116,10,116,12,116,1921,9,116,1,117,1,117,1,117,1,117,5,117,1927,8,117,10,117,12,117,1930,9,117,1,118,1,118,1,118,1,118,1,118,3,118,1937,8,118,1,119,1,119,3,119,1941,8,119,1,119,1,119,3,119,1945,8,119,1,120,1,120,1,120,1,120,1,120,3,120,1952,8,120,3,120,1954,8,120,1,121,3,121,1957,8,121,1,121,1,121,1,121,3,121,1962,8,121,1,121,1,121,1,121,3,121,1967,8,121,1,122,1,122,3,122,1971,8,122,1,122,1,122,1,122,5,122,1976,8,122,10,122,12,122,1979,9,122,1,122,1,122,1,122,1,122,3,122,1985,8,122,1,122,1,122,3,122,1989,8,122,1,122,3,122,1992,8,122,1,122,1,122,3,122,1996,8,122,1,122,1,122,3,122,2e3,8,122,3,122,2002,8,122,1,123,1,123,1,123,1,123,1,124,1,124,1,124,5,124,2011,8,124,10,124,12,124,2014,9,124,1,125,1,125,1,125,1,125,5,125,2020,8,125,10,125,12,125,2023,9,125,1,125,1,125,3,125,2027,8,125,1,125,1,125,1,125,1,125,3,125,2033,8,125,1,125,1,125,1,125,3,125,2038,8,125,1,125,3,125,2041,8,125,1,125,1,125,3,125,2045,8,125,1,125,1,125,3,125,2049,8,125,1,126,3,126,2052,8,126,1,127,1,127,3,127,2056,8,127,1,127,1,127,3,127,2060,8,127,1,127,1,127,1,127,1,127,5,127,2066,8,127,10,127,12,127,2069,9,127,1,127,3,127,2072,8,127,1,127,1,127,3,127,2076,8,127,1,127,1,127,3,127,2080,8,127,1,127,3,127,2083,8,127,1,127,3,127,2086,8,127,1,127,1,127,3,127,2090,8,127,1,127,3,127,2093,8,127,1,127,3,127,2096,8,127,1,128,1,128,1,128,3,128,2101,8,128,1,128,3,128,2104,8,128,1,128,3,128,2107,8,128,1,128,3,128,2110,8,128,1,128,1,128,1,128,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,1,129,3,129,2124,8,129,3,129,2126,8,129,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,1,130,3,130,2137,8,130,1,131,1,131,1,131,1,132,1,132,1,132,5,132,2145,8,132,10,132,12,132,2148,9,132,1,133,1,133,1,133,1,133,1,134,1,134,1,134,3,134,2157,8,134,1,134,3,134,2160,8,134,1,134,1,134,1,134,1,134,1,134,3,134,2167,8,134,1,134,1,134,1,134,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,1,135,3,135,2191,8,135,1,136,1,136,1,137,1,137,1,138,1,138,1,138,5,138,2200,8,138,10,138,12,138,2203,9,138,1,139,4,139,2206,8,139,11,139,12,139,2207,1,140,1,140,3,140,2212,8,140,1,141,1,141,3,141,2216,8,141,1,141,1,141,3,141,2220,8,141,1,141,1,141,3,141,2224,8,141,1,141,1,141,3,141,2228,8,141,1,141,1,141,3,141,2232,8,141,1,141,1,141,3,141,2236,8,141,1,141,1,141,1,141,1,141,3,141,2242,8,141,1,142,1,142,1,142,1,142,1,142,3,142,2249,8,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,1,142,3,142,2259,8,142,1,143,1,143,1,144,1,144,1,144,1,144,1,144,5,144,2268,8,144,10,144,12,144,2271,9,144,1,144,1,144,1,145,1,145,1,145,1,146,1,146,1,146,5,146,2281,8,146,10,146,12,146,2284,9,146,1,147,1,147,1,147,1,147,1,147,1,147,1,148,1,148,1,149,1,149,1,149,5,149,2297,8,149,10,149,12,149,2300,9,149,1,150,1,150,1,151,1,151,1,151,5,151,2307,8,151,10,151,12,151,2310,9,151,1,152,1,152,1,152,1,152,1,153,1,153,1,154,1,154,1,155,1,155,1,156,1,156,1,157,1,157,1,157,1,157,1,158,3,158,2329,8,158,1,158,1,158,1,159,1,159,3,159,2335,8,159,1,159,1,159,1,159,1,159,1,159,3,159,2342,8,159,1,160,1,160,1,160,5,160,2347,8,160,10,160,12,160,2350,9,160,1,161,1,161,1,161,1,161,1,161,3,161,2357,8,161,1,162,1,162,1,163,1,163,1,163,5,163,2364,8,163,10,163,12,163,2367,9,163,1,164,1,164,1,164,1,164,1,164,1,165,1,165,1,165,1,165,1,165,1,166,1,166,1,166,1,166,1,166,1,166,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,167,1,168,1,168,1,168,1,168,1,168,1,168,1,168,3,168,2403,8,168,3,168,2405,8,168,1,169,3,169,2408,8,169,1,169,1,169,1,169,3,169,2413,8,169,1,169,1,169,3,169,2417,8,169,5,169,2419,8,169,10,169,12,169,2422,9,169,1,170,1,170,1,170,3,170,2427,8,170,1,171,1,171,1,171,1,171,3,171,2433,8,171,1,171,1,171,3,171,2437,8,171,1,172,1,172,1,172,3,172,2442,8,172,1,172,1,172,1,172,3,172,2447,8,172,3,172,2449,8,172,1,173,1,173,3,173,2453,8,173,1,173,1,173,1,173,3,173,2458,8,173,1,173,3,173,2461,8,173,3,173,2463,8,173,1,173,1,173,3,173,2467,8,173,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,1,174,3,174,2478,8,174,1,175,1,175,1,175,1,176,1,176,1,176,1,176,1,176,1,176,3,176,2489,8,176,1,177,1,177,1,178,1,178,1,178,1,178,1,178,1,179,1,179,3,179,2500,8,179,1,179,1,179,3,179,2504,8,179,1,179,1,179,3,179,2508,8,179,1,179,1,179,3,179,2512,8,179,1,179,3,179,2515,8,179,1,179,1,179,3,179,2519,8,179,1,179,3,179,2522,8,179,1,180,1,180,1,180,1,180,3,180,2528,8,180,1,181,1,181,1,181,1,181,1,181,5,181,2535,8,181,10,181,12,181,2538,9,181,3,181,2540,8,181,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,1,182,3,182,2554,8,182,1,182,1,182,1,182,1,182,3,182,2560,8,182,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,1,183,3,183,2573,8,183,1,183,1,183,1,183,1,183,1,184,3,184,2580,8,184,1,184,1,184,1,184,3,184,2585,8,184,1,185,1,185,1,185,1,186,1,186,3,186,2592,8,186,1,187,1,187,1,187,5,187,2597,8,187,10,187,12,187,2600,9,187,1,188,1,188,1,188,1,188,1,189,1,189,3,189,2608,8,189,1,190,1,190,1,190,3,190,2613,8,190,1,190,1,190,1,190,1,190,1,190,1,190,3,190,2621,8,190,1,190,1,190,1,190,1,191,1,191,1,191,1,191,1,191,1,191,1,191,1,191,5,191,2634,8,191,10,191,12,191,2637,9,191,1,192,1,192,1,192,3,192,2642,8,192,1,193,1,193,1,193,1,193,1,193,1,193,3,193,2650,8,193,1,193,1,193,1,194,1,194,1,194,1,194,1,194,1,194,1,194,1,195,1,195,1,195,1,195,1,196,1,196,1,196,1,196,1,196,1,196,1,196,1,196,3,196,2673,8,196,1,197,1,197,1,197,1,197,1,197,3,197,2680,8,197,1,197,1,197,1,197,1,197,1,197,1,197,3,197,2688,8,197,1,198,1,198,1,198,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,199,1,200,1,200,1,200,1,201,1,201,1,201,1,201,3,201,2709,8,201,1,201,1,201,1,201,1,201,1,201,1,201,3,201,2717,8,201,1,202,1,202,1,202,1,203,1,203,1,203,3,203,2725,8,203,1,204,1,204,1,204,1,204,1,205,1,205,1,206,1,206,3,206,2735,8,206,1,207,1,207,1,207,1,207,1,207,5,207,2742,8,207,10,207,12,207,2745,9,207,1,207,1,207,3,207,2749,8,207,1,208,1,208,1,209,1,209,1,209,3,209,2756,8,209,1,209,1,209,1,209,1,209,1,209,1,209,1,209,1,209,3,209,2766,8,209,1,209,1,209,1,209,3,209,2771,8,209,1,209,1,209,1,209,1,209,1,209,5,209,2778,8,209,10,209,12,209,2781,9,209,1,209,3,209,2784,8,209,1,209,1,209,3,209,2788,8,209,1,209,3,209,2791,8,209,1,209,3,209,2794,8,209,1,209,3,209,2797,8,209,1,209,3,209,2800,8,209,1,210,1,210,1,210,1,210,1,210,1,210,3,210,2808,8,210,1,211,1,211,1,211,1,211,1,211,5,211,2815,8,211,10,211,12,211,2818,9,211,1,211,1,211,1,212,1,212,1,212,1,212,1,212,1,213,1,213,1,213,1,213,1,213,5,213,2832,8,213,10,213,12,213,2835,9,213,1,213,1,213,1,214,1,214,1,214,1,215,1,215,1,215,1,215,1,216,1,216,1,216,1,217,1,217,1,217,1,217,1,217,1,217,5,217,2855,8,217,10,217,12,217,2858,9,217,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,1,218,3,218,2875,8,218,1,219,1,219,1,219,1,219,1,219,1,219,1,219,5,219,2884,8,219,10,219,12,219,2887,9,219,1,220,1,220,1,220,1,220,1,220,3,220,2894,8,220,1,221,1,221,1,221,1,221,1,221,1,221,5,221,2902,8,221,10,221,12,221,2905,9,221,1,222,1,222,3,222,2909,8,222,1,223,1,223,3,223,2913,8,223,1,223,1,223,1,224,1,224,3,224,2919,8,224,1,224,1,224,1,225,1,225,1,225,1,225,1,225,1,225,1,226,1,226,1,226,1,227,1,227,1,227,1,227,1,227,1,227,1,227,1,228,1,228,1,228,1,228,1,229,1,229,1,229,1,229,1,229,5,229,2948,8,229,10,229,12,229,2951,9,229,1,229,1,229,1,230,1,230,1,230,1,230,1,230,5,230,2960,8,230,10,230,12,230,2963,9,230,1,230,1,230,1,231,1,231,1,231,1,232,1,232,1,232,1,232,1,233,1,233,1,233,1,233,1,234,1,234,1,234,1,234,1,234,1,234,1,235,1,235,1,235,1,236,1,236,1,236,1,236,1,236,1,237,1,237,1,237,1,237,1,238,1,238,1,238,3,238,2999,8,238,1,238,1,238,1,239,1,239,1,239,1,240,3,240,3007,8,240,1,240,3,240,3010,8,240,1,240,1,240,3,240,3014,8,240,1,241,1,241,3,241,3018,8,241,1,242,1,242,1,242,1,242,1,242,1,242,5,242,3026,8,242,10,242,12,242,3029,9,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,5,242,3039,8,242,10,242,12,242,3042,9,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,1,242,5,242,3052,8,242,10,242,12,242,3055,9,242,1,242,1,242,3,242,3059,8,242,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,1,243,5,243,3074,8,243,10,243,12,243,3077,9,243,1,243,3,243,3080,8,243,1,243,1,243,3,243,3084,8,243,1,243,1,243,1,243,1,243,1,243,5,243,3091,8,243,10,243,12,243,3094,9,243,1,243,1,243,1,243,1,243,1,243,1,243,5,243,3102,8,243,10,243,12,243,3105,9,243,1,243,1,243,3,243,3109,8,243,1,244,1,244,3,244,3113,8,244,1,245,1,245,3,245,3117,8,245,1,245,3,245,3120,8,245,1,246,1,246,1,247,1,247,1,247,1,247,1,247,1,247,1,247,1,248,1,248,1,248,5,248,3134,8,248,10,248,12,248,3137,9,248,1,249,1,249,1,249,1,249,1,250,1,250,1,251,1,251,1,251,1,251,1,251,1,251,3,251,3151,8,251,1,252,1,252,1,252,1,252,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,1,253,3,253,3166,8,253,1,253,3,253,3169,8,253,1,254,1,254,1,254,1,254,1,255,1,255,1,255,1,255,5,255,3179,8,255,10,255,12,255,3182,9,255,3,255,3184,8,255,1,255,1,255,1,256,1,256,1,256,1,256,1,257,1,257,1,258,1,258,1,258,1,258,5,258,3198,8,258,10,258,12,258,3201,9,258,1,258,1,258,1,258,3,258,3206,8,258,1,259,1,259,1,259,1,259,5,259,3212,8,259,10,259,12,259,3215,9,259,1,259,1,259,1,260,1,260,1,260,1,260,1,260,3,260,3224,8,260,1,260,1,260,3,260,3228,8,260,1,260,1,260,1,261,1,261,1,261,1,261,3,261,3236,8,261,1,262,1,262,1,262,1,262,3,262,3242,8,262,1,262,1,262,1,262,1,262,3,262,3248,8,262,1,263,1,263,1,263,1,263,1,263,1,263,1,263,1,263,5,263,3258,8,263,10,263,12,263,3261,9,263,1,263,3,263,3264,8,263,3,263,3266,8,263,1,264,1,264,1,264,1,264,1,264,1,264,1,264,1,264,5,264,3276,8,264,10,264,12,264,3279,9,264,1,264,3,264,3282,8,264,1,264,1,264,1,264,3,264,3287,8,264,1,265,1,265,1,265,1,265,3,265,3293,8,265,1,265,1,265,1,265,5,265,3298,8,265,10,265,12,265,3301,9,265,1,265,3,265,3304,8,265,1,266,1,266,3,266,3308,8,266,1,267,3,267,3311,8,267,1,267,1,267,1,267,1,268,1,268,1,268,1,268,1,268,1,268,5,268,3322,8,268,10,268,12,268,3325,9,268,1,268,1,268,1,268,1,268,5,268,3331,8,268,10,268,12,268,3334,9,268,1,268,3,268,3337,8,268,1,268,1,268,1,268,3,268,3342,8,268,1,269,1,269,1,269,1,269,3,269,3348,8,269,1,269,1,269,1,269,1,269,1,269,5,269,3355,8,269,10,269,12,269,3358,9,269,1,269,1,269,1,269,1,269,5,269,3364,8,269,10,269,12,269,3367,9,269,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,1,270,3,270,3383,8,270,1,270,1,270,3,270,3387,8,270,1,270,1,270,3,270,3391,8,270,3,270,3393,8,270,1,271,1,271,3,271,3397,8,271,1,272,1,272,1,272,5,272,3402,8,272,10,272,12,272,3405,9,272,1,272,3,272,3408,8,272,1,272,1,272,3,272,3412,8,272,3,272,3414,8,272,1,273,1,273,1,273,1,273,1,273,1,273,1,273,1,273,5,273,3424,8,273,10,273,12,273,3427,9,273,1,273,1,273,1,273,1,273,1,273,1,274,1,274,1,274,1,275,1,275,1,275,5,275,3440,8,275,10,275,12,275,3443,9,275,1,276,1,276,1,276,1,276,1,277,1,277,1,277,1,277,1,277,1,277,1,277,5,277,3456,8,277,10,277,12,277,3459,9,277,1,278,1,278,1,279,1,279,1,279,1,279,1,279,1,280,1,280,1,280,1,280,1,280,3,280,3473,8,280,1,281,1,281,1,281,5,281,3478,8,281,10,281,12,281,3481,9,281,1,282,1,282,1,282,1,282,1,282,3,282,3488,8,282,1,282,1,282,1,282,1,282,1,282,1,282,1,283,5,283,3497,8,283,10,283,12,283,3500,9,283,1,283,1,283,4,283,3504,8,283,11,283,12,283,3505,1,283,5,283,3509,8,283,10,283,12,283,3512,9,283,1,283,5,283,3515,8,283,10,283,12,283,3518,9,283,3,283,3520,8,283,1,284,3,284,3523,8,284,1,284,1,284,1,284,1,284,1,284,3,284,3530,8,284,1,285,3,285,3533,8,285,1,285,3,285,3536,8,285,1,285,1,285,1,285,1,285,1,285,1,285,1,285,3,285,3545,8,285,1,286,1,286,1,286,3,286,3550,8,286,1,286,3,286,3553,8,286,1,286,1,286,1,286,1,286,1,286,1,286,5,286,3561,8,286,10,286,12,286,3564,9,286,1,286,3,286,3567,8,286,3,286,3569,8,286,1,286,1,286,1,286,1,286,1,286,3,286,3576,8,286,1,286,3,286,3579,8,286,1,286,1,286,3,286,3583,8,286,3,286,3585,8,286,1,286,3,286,3588,8,286,1,287,1,287,1,287,3,287,3593,8,287,1,288,3,288,3596,8,288,1,288,1,288,1,288,3,288,3601,8,288,1,289,1,289,1,289,1,289,1,289,1,289,5,289,3609,8,289,10,289,12,289,3612,9,289,1,289,1,289,3,289,3616,8,289,1,290,1,290,1,290,1,290,1,290,1,290,1,290,5,290,3625,8,290,10,290,12,290,3628,9,290,1,290,3,290,3631,8,290,1,290,1,290,3,290,3635,8,290,3,290,3637,8,290,1,290,1,290,3,290,3641,8,290,1,290,1,290,1,290,3,290,3646,8,290,1,290,1,290,1,290,1,290,5,290,3652,8,290,10,290,12,290,3655,9,290,3,290,3657,8,290,1,290,3,290,3660,8,290,1,290,3,290,3663,8,290,1,291,1,291,1,291,3,291,3668,8,291,1,291,1,291,1,292,1,292,3,292,3674,8,292,1,292,3,292,3677,8,292,1,293,1,293,3,293,3681,8,293,1,294,1,294,1,294,1,294,3,294,3687,8,294,1,295,1,295,1,295,1,295,1,295,1,295,3,295,3695,8,295,1,295,3,295,3698,8,295,1,296,1,296,1,296,1,296,1,296,3,296,3705,8,296,1,296,1,296,3,296,3709,8,296,1,296,3,296,3712,8,296,1,297,1,297,3,297,3716,8,297,1,298,1,298,1,298,5,298,3721,8,298,10,298,12,298,3724,9,298,1,299,1,299,1,299,1,299,1,300,1,300,1,301,1,301,1,301,1,301,1,301,1,301,1,302,1,302,1,302,1,302,5,302,3742,8,302,10,302,12,302,3745,9,302,1,302,1,302,1,303,1,303,1,303,1,303,3,303,3753,8,303,1,303,3,303,3756,8,303,1,304,1,304,1,304,1,304,5,304,3762,8,304,10,304,12,304,3765,9,304,1,304,1,304,1,305,1,305,1,306,1,306,1,306,1,306,1,306,1,307,1,307,1,307,1,307,1,307,1,307,5,307,3782,8,307,10,307,12,307,3785,9,307,1,308,1,308,1,308,1,308,1,308,3,308,3792,8,308,1,309,1,309,1,309,1,310,1,310,1,310,3,310,3800,8,310,1,311,1,311,1,311,1,311,1,311,1,312,1,312,3,312,3809,8,312,1,313,1,313,1,313,1,313,1,314,1,314,1,314,1,314,1,314,1,315,1,315,1,315,1,315,1,315,5,315,3825,8,315,10,315,12,315,3828,9,315,1,315,1,315,1,316,1,316,1,316,1,316,1,316,1,317,1,317,1,317,1,317,1,317,5,317,3842,8,317,10,317,12,317,3845,9,317,1,317,1,317,1,318,1,318,1,318,1,318,1,319,1,319,1,319,5,319,3856,8,319,10,319,12,319,3859,9,319,1,320,1,320,1,320,1,320,1,321,1,321,1,322,1,322,1,322,1,322,1,322,1,323,1,323,1,323,5,323,3875,8,323,10,323,12,323,3878,9,323,1,324,1,324,1,324,1,324,1,325,1,325,1,326,1,326,1,326,3,326,3889,8,326,1,326,1,326,1,327,1,327,1,328,1,328,1,328,1,328,3,328,3899,8,328,1,329,1,329,1,329,1,329,1,329,1,330,1,330,3,330,3908,8,330,1,331,1,331,1,332,1,332,1,332,1,333,1,333,1,333,5,333,3918,8,333,10,333,12,333,3921,9,333,1,334,1,334,1,334,1,334,1,335,1,335,1,336,1,336,1,336,1,336,1,337,3,337,3934,8,337,1,337,3,337,3937,8,337,1,337,3,337,3940,8,337,1,337,3,337,3943,8,337,1,338,1,338,1,339,1,339,3,339,3949,8,339,1,339,1,339,1,339,1,340,1,340,1,341,1,341,1,341,3,341,3959,8,341,1,342,1,342,1,343,1,343,3,343,3965,8,343,1,344,1,344,1,344,1,344,1,344,1,345,1,345,1,345,1,345,3,345,3976,8,345,1,345,3,345,3979,8,345,1,346,1,346,1,346,1,346,1,346,1,346,1,346,1,346,1,346,1,346,3,346,3991,8,346,1,347,1,347,1,347,1,348,1,348,1,348,1,348,1,348,3,348,4001,8,348,1,349,1,349,1,349,1,349,3,349,4007,8,349,1,350,1,350,1,351,1,351,1,352,1,352,1,353,1,353,3,353,4017,8,353,1,354,1,354,1,354,1,354,1,354,1,354,1,354,3,354,4026,8,354,1,355,1,355,1,355,1,355,1,355,1,355,3,355,4034,8,355,1,356,1,356,1,356,1,356,1,356,3,356,4041,8,356,1,357,1,357,1,357,1,357,1,357,1,357,1,357,1,357,3,357,4051,8,357,1,358,1,358,1,358,1,358,1,358,1,358,1,358,3,358,4060,8,358,1,359,1,359,1,359,1,359,1,359,1,359,1,359,3,359,4069,8,359,1,360,1,360,1,360,1,360,1,360,1,360,1,360,1,360,3,360,4079,8,360,1,361,1,361,3,361,4083,8,361,1,362,1,362,3,362,4087,8,362,1,363,1,363,3,363,4091,8,363,1,364,1,364,3,364,4095,8,364,1,365,1,365,3,365,4099,8,365,1,366,1,366,3,366,4103,8,366,1,367,1,367,3,367,4107,8,367,1,368,1,368,3,368,4111,8,368,1,369,1,369,3,369,4115,8,369,1,370,1,370,3,370,4119,8,370,1,371,1,371,3,371,4123,8,371,1,372,1,372,3,372,4127,8,372,1,373,1,373,1,373,3,373,4132,8,373,1,374,1,374,1,374,3,374,4137,8,374,1,375,1,375,1,375,3,375,4142,8,375,1,375,1,375,3,375,4146,8,375,1,376,1,376,3,376,4150,8,376,1,377,1,377,1,377,3,377,4155,8,377,1,378,3,378,4158,8,378,1,378,1,378,1,379,1,379,3,379,4164,8,379,1,380,3,380,4167,8,380,1,380,1,380,1,381,1,381,1,381,1,381,1,381,1,381,1,381,1,381,3,381,4179,8,381,1,382,1,382,1,383,1,383,1,384,1,384,1,385,1,385,1,386,1,386,1,387,1,387,1,388,1,388,1,389,1,389,1,390,1,390,1,391,1,391,1,392,1,392,1,393,1,393,1,394,1,394,1,395,1,395,1,395,1,395,1,395,3,395,4212,8,395,1,396,5,396,4215,8,396,10,396,12,396,4218,9,396,1,396,1,396,4,396,4222,8,396,11,396,12,396,4223,1,396,5,396,4227,8,396,10,396,12,396,4230,9,396,1,396,5,396,4233,8,396,10,396,12,396,4236,9,396,1,396,1,396,1,397,1,397,1,397,3,397,4243,8,397,3,397,4245,8,397,1,397,1,397,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,1,398,3,398,4262,8,398,1,399,1,399,1,399,1,400,1,400,1,400,1,401,1,401,1,401,1,402,1,402,3,402,4275,8,402,1,402,0,0,403,0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,312,314,316,318,320,322,324,326,328,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,376,378,380,382,384,386,388,390,392,394,396,398,400,402,404,406,408,410,412,414,416,418,420,422,424,426,428,430,432,434,436,438,440,442,444,446,448,450,452,454,456,458,460,462,464,466,468,470,472,474,476,478,480,482,484,486,488,490,492,494,496,498,500,502,504,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,564,566,568,570,572,574,576,578,580,582,584,586,588,590,592,594,596,598,600,602,604,606,608,610,612,614,616,618,620,622,624,626,628,630,632,634,636,638,640,642,644,646,648,650,652,654,656,658,660,662,664,666,668,670,672,674,676,678,680,682,684,686,688,690,692,694,696,698,700,702,704,706,708,710,712,714,716,718,720,722,724,726,728,730,732,734,736,738,740,742,744,746,748,750,752,754,756,758,760,762,764,766,768,770,772,774,776,778,780,782,784,786,788,790,792,794,796,798,800,802,804,0,39,2,0,58,58,274,274,6,0,145,145,156,156,180,180,185,185,234,234,252,252,1,0,6,9,1,0,17,18,2,0,20,21,23,23,2,0,17,19,196,196,2,0,115,115,121,121,4,0,121,121,133,133,290,290,297,297,2,0,81,81,294,294,2,0,56,56,103,103,2,0,26,26,202,202,2,0,48,48,110,110,2,0,163,163,261,261,3,0,106,106,182,182,208,208,2,0,66,66,276,276,2,0,206,206,263,263,2,0,59,59,275,275,3,0,189,190,192,192,260,260,2,0,46,46,112,112,2,0,148,148,302,302,2,0,61,61,278,278,2,0,120,120,299,299,3,0,49,49,104,104,237,237,3,0,61,61,255,255,278,278,2,0,143,143,301,301,3,0,107,107,229,229,277,277,2,0,45,45,271,271,2,0,78,78,259,259,3,0,150,150,231,231,256,256,2,0,139,139,224,224,1,0,317,318,21,0,58,58,67,68,72,73,89,89,91,93,116,116,128,128,142,143,153,153,173,175,183,183,196,196,198,198,228,228,232,232,247,248,254,254,262,262,274,274,293,293,309,310,3,0,53,53,120,120,269,269,11,0,48,48,55,55,57,57,110,110,124,124,152,152,168,168,181,181,295,295,311,311,313,313,31,0,61,61,83,83,85,85,94,94,104,104,107,107,136,136,147,147,163,163,177,177,179,179,184,184,186,192,194,194,203,203,205,205,207,207,214,214,218,221,227,227,229,229,237,237,241,241,250,250,260,261,266,268,272,272,278,278,287,287,292,292,298,298,50,0,44,47,49,52,54,54,56,56,59,62,64,66,69,69,71,71,74,76,79,79,81,88,90,90,94,105,107,109,111,115,117,118,121,123,125,127,129,132,134,137,139,141,144,145,147,149,151,151,154,167,169,172,176,180,184,195,197,197,199,207,209,227,229,230,233,238,240,242,244,246,249,253,255,255,257,258,260,261,263,263,265,268,271,273,275,280,282,289,292,292,294,294,296,305,307,308,312,312,314,315,12,0,70,70,106,106,119,119,138,138,182,182,208,208,243,243,264,264,270,270,281,281,291,291,306,306,2,0,133,133,290,290,1,0,319,320,4591,0,811,1,0,0,0,2,816,1,0,0,0,4,842,1,0,0,0,6,850,1,0,0,0,8,874,1,0,0,0,10,881,1,0,0,0,12,929,1,0,0,0,14,940,1,0,0,0,16,942,1,0,0,0,18,950,1,0,0,0,20,958,1,0,0,0,22,962,1,0,0,0,24,1020,1,0,0,0,26,1022,1,0,0,0,28,1024,1,0,0,0,30,1032,1,0,0,0,32,1035,1,0,0,0,34,1039,1,0,0,0,36,1042,1,0,0,0,38,1068,1,0,0,0,40,1076,1,0,0,0,42,1084,1,0,0,0,44,1096,1,0,0,0,46,1098,1,0,0,0,48,1110,1,0,0,0,50,1119,1,0,0,0,52,1125,1,0,0,0,54,1131,1,0,0,0,56,1135,1,0,0,0,58,1137,1,0,0,0,60,1146,1,0,0,0,62,1162,1,0,0,0,64,1171,1,0,0,0,66,1184,1,0,0,0,68,1210,1,0,0,0,70,1232,1,0,0,0,72,1234,1,0,0,0,74,1241,1,0,0,0,76,1248,1,0,0,0,78,1256,1,0,0,0,80,1271,1,0,0,0,82,1285,1,0,0,0,84,1290,1,0,0,0,86,1292,1,0,0,0,88,1296,1,0,0,0,90,1298,1,0,0,0,92,1302,1,0,0,0,94,1310,1,0,0,0,96,1321,1,0,0,0,98,1323,1,0,0,0,100,1341,1,0,0,0,102,1345,1,0,0,0,104,1364,1,0,0,0,106,1372,1,0,0,0,108,1374,1,0,0,0,110,1396,1,0,0,0,112,1405,1,0,0,0,114,1413,1,0,0,0,116,1426,1,0,0,0,118,1428,1,0,0,0,120,1439,1,0,0,0,122,1447,1,0,0,0,124,1449,1,0,0,0,126,1460,1,0,0,0,128,1471,1,0,0,0,130,1476,1,0,0,0,132,1484,1,0,0,0,134,1498,1,0,0,0,136,1512,1,0,0,0,138,1516,1,0,0,0,140,1520,1,0,0,0,142,1535,1,0,0,0,144,1537,1,0,0,0,146,1543,1,0,0,0,148,1547,1,0,0,0,150,1555,1,0,0,0,152,1560,1,0,0,0,154,1569,1,0,0,0,156,1575,1,0,0,0,158,1579,1,0,0,0,160,1584,1,0,0,0,162,1586,1,0,0,0,164,1602,1,0,0,0,166,1607,1,0,0,0,168,1611,1,0,0,0,170,1617,1,0,0,0,172,1625,1,0,0,0,174,1632,1,0,0,0,176,1637,1,0,0,0,178,1656,1,0,0,0,180,1675,1,0,0,0,182,1690,1,0,0,0,184,1695,1,0,0,0,186,1700,1,0,0,0,188,1705,1,0,0,0,190,1712,1,0,0,0,192,1717,1,0,0,0,194,1732,1,0,0,0,196,1737,1,0,0,0,198,1744,1,0,0,0,200,1777,1,0,0,0,202,1796,1,0,0,0,204,1800,1,0,0,0,206,1802,1,0,0,0,208,1827,1,0,0,0,210,1829,1,0,0,0,212,1838,1,0,0,0,214,1848,1,0,0,0,216,1853,1,0,0,0,218,1858,1,0,0,0,220,1866,1,0,0,0,222,1871,1,0,0,0,224,1876,1,0,0,0,226,1899,1,0,0,0,228,1901,1,0,0,0,230,1905,1,0,0,0,232,1913,1,0,0,0,234,1922,1,0,0,0,236,1936,1,0,0,0,238,1944,1,0,0,0,240,1946,1,0,0,0,242,1956,1,0,0,0,244,1968,1,0,0,0,246,2003,1,0,0,0,248,2007,1,0,0,0,250,2015,1,0,0,0,252,2051,1,0,0,0,254,2055,1,0,0,0,256,2097,1,0,0,0,258,2125,1,0,0,0,260,2136,1,0,0,0,262,2138,1,0,0,0,264,2141,1,0,0,0,266,2149,1,0,0,0,268,2156,1,0,0,0,270,2190,1,0,0,0,272,2192,1,0,0,0,274,2194,1,0,0,0,276,2196,1,0,0,0,278,2205,1,0,0,0,280,2209,1,0,0,0,282,2241,1,0,0,0,284,2258,1,0,0,0,286,2260,1,0,0,0,288,2262,1,0,0,0,290,2274,1,0,0,0,292,2277,1,0,0,0,294,2285,1,0,0,0,296,2291,1,0,0,0,298,2293,1,0,0,0,300,2301,1,0,0,0,302,2303,1,0,0,0,304,2311,1,0,0,0,306,2315,1,0,0,0,308,2317,1,0,0,0,310,2319,1,0,0,0,312,2321,1,0,0,0,314,2323,1,0,0,0,316,2328,1,0,0,0,318,2332,1,0,0,0,320,2343,1,0,0,0,322,2356,1,0,0,0,324,2358,1,0,0,0,326,2360,1,0,0,0,328,2368,1,0,0,0,330,2373,1,0,0,0,332,2378,1,0,0,0,334,2384,1,0,0,0,336,2404,1,0,0,0,338,2407,1,0,0,0,340,2423,1,0,0,0,342,2436,1,0,0,0,344,2438,1,0,0,0,346,2450,1,0,0,0,348,2477,1,0,0,0,350,2479,1,0,0,0,352,2482,1,0,0,0,354,2490,1,0,0,0,356,2492,1,0,0,0,358,2521,1,0,0,0,360,2527,1,0,0,0,362,2529,1,0,0,0,364,2553,1,0,0,0,366,2572,1,0,0,0,368,2584,1,0,0,0,370,2586,1,0,0,0,372,2591,1,0,0,0,374,2593,1,0,0,0,376,2601,1,0,0,0,378,2607,1,0,0,0,380,2609,1,0,0,0,382,2625,1,0,0,0,384,2641,1,0,0,0,386,2643,1,0,0,0,388,2653,1,0,0,0,390,2660,1,0,0,0,392,2664,1,0,0,0,394,2674,1,0,0,0,396,2689,1,0,0,0,398,2692,1,0,0,0,400,2701,1,0,0,0,402,2704,1,0,0,0,404,2718,1,0,0,0,406,2724,1,0,0,0,408,2726,1,0,0,0,410,2730,1,0,0,0,412,2734,1,0,0,0,414,2748,1,0,0,0,416,2750,1,0,0,0,418,2752,1,0,0,0,420,2807,1,0,0,0,422,2809,1,0,0,0,424,2821,1,0,0,0,426,2826,1,0,0,0,428,2838,1,0,0,0,430,2841,1,0,0,0,432,2845,1,0,0,0,434,2848,1,0,0,0,436,2874,1,0,0,0,438,2876,1,0,0,0,440,2893,1,0,0,0,442,2895,1,0,0,0,444,2908,1,0,0,0,446,2910,1,0,0,0,448,2916,1,0,0,0,450,2922,1,0,0,0,452,2928,1,0,0,0,454,2931,1,0,0,0,456,2938,1,0,0,0,458,2942,1,0,0,0,460,2954,1,0,0,0,462,2966,1,0,0,0,464,2969,1,0,0,0,466,2973,1,0,0,0,468,2977,1,0,0,0,470,2983,1,0,0,0,472,2986,1,0,0,0,474,2991,1,0,0,0,476,2995,1,0,0,0,478,3002,1,0,0,0,480,3009,1,0,0,0,482,3015,1,0,0,0,484,3058,1,0,0,0,486,3060,1,0,0,0,488,3112,1,0,0,0,490,3114,1,0,0,0,492,3121,1,0,0,0,494,3123,1,0,0,0,496,3130,1,0,0,0,498,3138,1,0,0,0,500,3142,1,0,0,0,502,3150,1,0,0,0,504,3152,1,0,0,0,506,3168,1,0,0,0,508,3170,1,0,0,0,510,3174,1,0,0,0,512,3187,1,0,0,0,514,3191,1,0,0,0,516,3205,1,0,0,0,518,3207,1,0,0,0,520,3218,1,0,0,0,522,3231,1,0,0,0,524,3237,1,0,0,0,526,3249,1,0,0,0,528,3267,1,0,0,0,530,3288,1,0,0,0,532,3307,1,0,0,0,534,3310,1,0,0,0,536,3315,1,0,0,0,538,3343,1,0,0,0,540,3392,1,0,0,0,542,3396,1,0,0,0,544,3413,1,0,0,0,546,3415,1,0,0,0,548,3433,1,0,0,0,550,3436,1,0,0,0,552,3444,1,0,0,0,554,3448,1,0,0,0,556,3460,1,0,0,0,558,3462,1,0,0,0,560,3467,1,0,0,0,562,3474,1,0,0,0,564,3482,1,0,0,0,566,3498,1,0,0,0,568,3522,1,0,0,0,570,3532,1,0,0,0,572,3549,1,0,0,0,574,3589,1,0,0,0,576,3595,1,0,0,0,578,3602,1,0,0,0,580,3662,1,0,0,0,582,3667,1,0,0,0,584,3676,1,0,0,0,586,3678,1,0,0,0,588,3682,1,0,0,0,590,3688,1,0,0,0,592,3699,1,0,0,0,594,3715,1,0,0,0,596,3717,1,0,0,0,598,3725,1,0,0,0,600,3729,1,0,0,0,602,3731,1,0,0,0,604,3737,1,0,0,0,606,3748,1,0,0,0,608,3757,1,0,0,0,610,3768,1,0,0,0,612,3770,1,0,0,0,614,3775,1,0,0,0,616,3791,1,0,0,0,618,3793,1,0,0,0,620,3796,1,0,0,0,622,3801,1,0,0,0,624,3808,1,0,0,0,626,3810,1,0,0,0,628,3814,1,0,0,0,630,3819,1,0,0,0,632,3831,1,0,0,0,634,3836,1,0,0,0,636,3848,1,0,0,0,638,3852,1,0,0,0,640,3860,1,0,0,0,642,3864,1,0,0,0,644,3866,1,0,0,0,646,3871,1,0,0,0,648,3879,1,0,0,0,650,3883,1,0,0,0,652,3888,1,0,0,0,654,3892,1,0,0,0,656,3898,1,0,0,0,658,3900,1,0,0,0,660,3907,1,0,0,0,662,3909,1,0,0,0,664,3911,1,0,0,0,666,3914,1,0,0,0,668,3922,1,0,0,0,670,3926,1,0,0,0,672,3928,1,0,0,0,674,3933,1,0,0,0,676,3944,1,0,0,0,678,3946,1,0,0,0,680,3953,1,0,0,0,682,3955,1,0,0,0,684,3960,1,0,0,0,686,3964,1,0,0,0,688,3966,1,0,0,0,690,3978,1,0,0,0,692,3990,1,0,0,0,694,3992,1,0,0,0,696,4e3,1,0,0,0,698,4002,1,0,0,0,700,4008,1,0,0,0,702,4010,1,0,0,0,704,4012,1,0,0,0,706,4016,1,0,0,0,708,4025,1,0,0,0,710,4033,1,0,0,0,712,4040,1,0,0,0,714,4050,1,0,0,0,716,4059,1,0,0,0,718,4068,1,0,0,0,720,4078,1,0,0,0,722,4082,1,0,0,0,724,4086,1,0,0,0,726,4090,1,0,0,0,728,4094,1,0,0,0,730,4098,1,0,0,0,732,4102,1,0,0,0,734,4106,1,0,0,0,736,4110,1,0,0,0,738,4114,1,0,0,0,740,4118,1,0,0,0,742,4122,1,0,0,0,744,4126,1,0,0,0,746,4131,1,0,0,0,748,4136,1,0,0,0,750,4141,1,0,0,0,752,4149,1,0,0,0,754,4154,1,0,0,0,756,4157,1,0,0,0,758,4163,1,0,0,0,760,4166,1,0,0,0,762,4178,1,0,0,0,764,4180,1,0,0,0,766,4182,1,0,0,0,768,4184,1,0,0,0,770,4186,1,0,0,0,772,4188,1,0,0,0,774,4190,1,0,0,0,776,4192,1,0,0,0,778,4194,1,0,0,0,780,4196,1,0,0,0,782,4198,1,0,0,0,784,4200,1,0,0,0,786,4202,1,0,0,0,788,4204,1,0,0,0,790,4211,1,0,0,0,792,4216,1,0,0,0,794,4244,1,0,0,0,796,4261,1,0,0,0,798,4263,1,0,0,0,800,4266,1,0,0,0,802,4269,1,0,0,0,804,4274,1,0,0,0,806,812,3,2,1,0,807,808,5,223,0,0,808,809,5,52,0,0,809,810,5,319,0,0,810,812,3,4,2,0,811,806,1,0,0,0,811,807,1,0,0,0,812,1,1,0,0,0,813,815,5,24,0,0,814,813,1,0,0,0,815,818,1,0,0,0,816,814,1,0,0,0,816,817,1,0,0,0,817,819,1,0,0,0,818,816,1,0,0,0,819,828,3,10,5,0,820,822,5,24,0,0,821,820,1,0,0,0,822,823,1,0,0,0,823,821,1,0,0,0,823,824,1,0,0,0,824,825,1,0,0,0,825,827,3,10,5,0,826,821,1,0,0,0,827,830,1,0,0,0,828,826,1,0,0,0,828,829,1,0,0,0,829,834,1,0,0,0,830,828,1,0,0,0,831,833,5,24,0,0,832,831,1,0,0,0,833,836,1,0,0,0,834,832,1,0,0,0,834,835,1,0,0,0,835,837,1,0,0,0,836,834,1,0,0,0,837,838,5,0,0,1,838,3,1,0,0,0,839,841,5,24,0,0,840,839,1,0,0,0,841,844,1,0,0,0,842,840,1,0,0,0,842,843,1,0,0,0,843,845,1,0,0,0,844,842,1,0,0,0,845,846,5,0,0,1,846,5,1,0,0,0,847,849,5,24,0,0,848,847,1,0,0,0,849,852,1,0,0,0,850,848,1,0,0,0,850,851,1,0,0,0,851,861,1,0,0,0,852,850,1,0,0,0,853,855,3,8,4,0,854,856,5,24,0,0,855,854,1,0,0,0,856,857,1,0,0,0,857,855,1,0,0,0,857,858,1,0,0,0,858,860,1,0,0,0,859,853,1,0,0,0,860,863,1,0,0,0,861,859,1,0,0,0,861,862,1,0,0,0,862,864,1,0,0,0,863,861,1,0,0,0,864,865,5,247,0,0,865,869,3,14,7,0,866,868,5,24,0,0,867,866,1,0,0,0,868,871,1,0,0,0,869,867,1,0,0,0,869,870,1,0,0,0,870,7,1,0,0,0,871,869,1,0,0,0,872,875,3,698,349,0,873,875,3,214,107,0,874,872,1,0,0,0,874,873,1,0,0,0,875,9,1,0,0,0,876,879,5,129,0,0,877,878,5,1,0,0,878,880,5,222,0,0,879,877,1,0,0,0,879,880,1,0,0,0,880,882,1,0,0,0,881,876,1,0,0,0,881,882,1,0,0,0,882,883,1,0,0,0,883,884,3,12,6,0,884,11,1,0,0,0,885,930,3,224,112,0,886,930,3,232,116,0,887,930,3,698,349,0,888,930,3,418,209,0,889,930,3,520,260,0,890,930,3,694,347,0,891,930,3,364,182,0,892,930,3,700,350,0,893,930,3,592,296,0,894,930,3,590,295,0,895,930,3,702,351,0,896,930,3,210,105,0,897,930,3,214,107,0,898,930,3,216,108,0,899,930,3,434,217,0,900,930,3,438,219,0,901,930,3,222,111,0,902,930,3,564,282,0,903,930,3,568,284,0,904,930,3,570,285,0,905,930,3,370,185,0,906,930,3,522,261,0,907,930,3,524,262,0,908,930,3,526,263,0,909,930,3,528,264,0,910,930,3,530,265,0,911,930,3,394,197,0,912,930,3,398,199,0,913,930,3,402,201,0,914,930,3,380,190,0,915,930,3,382,191,0,916,930,3,386,193,0,917,930,3,546,273,0,918,930,3,560,280,0,919,930,3,606,303,0,920,930,3,614,307,0,921,930,3,636,318,0,922,930,3,536,268,0,923,930,3,538,269,0,924,930,3,442,221,0,925,930,3,392,196,0,926,930,3,388,194,0,927,930,3,390,195,0,928,930,3,554,277,0,929,885,1,0,0,0,929,886,1,0,0,0,929,887,1,0,0,0,929,888,1,0,0,0,929,889,1,0,0,0,929,890,1,0,0,0,929,891,1,0,0,0,929,892,1,0,0,0,929,893,1,0,0,0,929,894,1,0,0,0,929,895,1,0,0,0,929,896,1,0,0,0,929,897,1,0,0,0,929,898,1,0,0,0,929,899,1,0,0,0,929,900,1,0,0,0,929,901,1,0,0,0,929,902,1,0,0,0,929,903,1,0,0,0,929,904,1,0,0,0,929,905,1,0,0,0,929,906,1,0,0,0,929,907,1,0,0,0,929,908,1,0,0,0,929,909,1,0,0,0,929,910,1,0,0,0,929,911,1,0,0,0,929,912,1,0,0,0,929,913,1,0,0,0,929,914,1,0,0,0,929,915,1,0,0,0,929,916,1,0,0,0,929,917,1,0,0,0,929,918,1,0,0,0,929,919,1,0,0,0,929,920,1,0,0,0,929,921,1,0,0,0,929,922,1,0,0,0,929,923,1,0,0,0,929,924,1,0,0,0,929,925,1,0,0,0,929,926,1,0,0,0,929,927,1,0,0,0,929,928,1,0,0,0,930,13,1,0,0,0,931,936,3,16,8,0,932,933,5,209,0,0,933,935,3,16,8,0,934,932,1,0,0,0,935,938,1,0,0,0,936,934,1,0,0,0,936,937,1,0,0,0,937,941,1,0,0,0,938,936,1,0,0,0,939,941,3,200,100,0,940,931,1,0,0,0,940,939,1,0,0,0,941,15,1,0,0,0,942,947,3,18,9,0,943,944,5,51,0,0,944,946,3,18,9,0,945,943,1,0,0,0,946,949,1,0,0,0,947,945,1,0,0,0,947,948,1,0,0,0,948,17,1,0,0,0,949,947,1,0,0,0,950,955,3,20,10,0,951,952,5,315,0,0,952,954,3,20,10,0,953,951,1,0,0,0,954,957,1,0,0,0,955,953,1,0,0,0,955,956,1,0,0,0,956,19,1,0,0,0,957,955,1,0,0,0,958,960,3,28,14,0,959,961,3,24,12,0,960,959,1,0,0,0,960,961,1,0,0,0,961,21,1,0,0,0,962,964,5,170,0,0,963,965,5,196,0,0,964,963,1,0,0,0,964,965,1,0,0,0,965,966,1,0,0,0,966,967,5,110,0,0,967,968,5,142,0,0,968,23,1,0,0,0,969,971,5,196,0,0,970,969,1,0,0,0,970,971,1,0,0,0,971,972,1,0,0,0,972,973,3,26,13,0,973,976,3,28,14,0,974,975,5,122,0,0,975,977,3,28,14,0,976,974,1,0,0,0,976,977,1,0,0,0,977,1021,1,0,0,0,978,980,5,196,0,0,979,978,1,0,0,0,979,980,1,0,0,0,980,981,1,0,0,0,981,983,5,159,0,0,982,984,5,80,0,0,983,982,1,0,0,0,983,984,1,0,0,0,984,985,1,0,0,0,985,1021,3,82,41,0,986,996,5,171,0,0,987,996,5,197,0,0,988,989,5,170,0,0,989,996,5,198,0,0,990,992,5,170,0,0,991,990,1,0,0,0,991,992,1,0,0,0,992,993,1,0,0,0,993,994,5,196,0,0,994,996,5,198,0,0,995,986,1,0,0,0,995,987,1,0,0,0,995,988,1,0,0,0,995,991,1,0,0,0,996,1021,1,0,0,0,997,999,5,196,0,0,998,997,1,0,0,0,998,999,1,0,0,0,999,1e3,1,0,0,0,1e3,1002,5,67,0,0,1001,1003,7,0,0,0,1002,1001,1,0,0,0,1002,1003,1,0,0,0,1003,1004,1,0,0,0,1004,1005,3,28,14,0,1005,1006,5,51,0,0,1006,1007,3,28,14,0,1007,1021,1,0,0,0,1008,1014,5,2,0,0,1009,1014,5,3,0,0,1010,1014,5,4,0,0,1011,1014,5,5,0,0,1012,1014,3,22,11,0,1013,1008,1,0,0,0,1013,1009,1,0,0,0,1013,1010,1,0,0,0,1013,1011,1,0,0,0,1013,1012,1,0,0,0,1014,1015,1,0,0,0,1015,1017,3,28,14,0,1016,1013,1,0,0,0,1017,1018,1,0,0,0,1018,1016,1,0,0,0,1018,1019,1,0,0,0,1019,1021,1,0,0,0,1020,970,1,0,0,0,1020,979,1,0,0,0,1020,995,1,0,0,0,1020,998,1,0,0,0,1020,1016,1,0,0,0,1021,25,1,0,0,0,1022,1023,7,1,0,0,1023,27,1,0,0,0,1024,1029,3,36,18,0,1025,1026,7,2,0,0,1026,1028,3,36,18,0,1027,1025,1,0,0,0,1028,1031,1,0,0,0,1029,1027,1,0,0,0,1029,1030,1,0,0,0,1030,29,1,0,0,0,1031,1029,1,0,0,0,1032,1033,5,8,0,0,1033,1034,5,8,0,0,1034,31,1,0,0,0,1035,1036,5,8,0,0,1036,1037,5,8,0,0,1037,1038,5,13,0,0,1038,33,1,0,0,0,1039,1040,5,29,0,0,1040,1041,5,29,0,0,1041,35,1,0,0,0,1042,1055,3,38,19,0,1043,1051,5,10,0,0,1044,1051,3,30,15,0,1045,1051,5,11,0,0,1046,1051,3,32,16,0,1047,1051,5,12,0,0,1048,1051,5,13,0,0,1049,1051,5,39,0,0,1050,1043,1,0,0,0,1050,1044,1,0,0,0,1050,1045,1,0,0,0,1050,1046,1,0,0,0,1050,1047,1,0,0,0,1050,1048,1,0,0,0,1050,1049,1,0,0,0,1051,1052,1,0,0,0,1052,1054,3,38,19,0,1053,1050,1,0,0,0,1054,1057,1,0,0,0,1055,1053,1,0,0,0,1055,1056,1,0,0,0,1056,1066,1,0,0,0,1057,1055,1,0,0,0,1058,1059,3,34,17,0,1059,1060,3,36,18,0,1060,1067,1,0,0,0,1061,1063,5,29,0,0,1062,1061,1,0,0,0,1063,1064,1,0,0,0,1064,1062,1,0,0,0,1064,1065,1,0,0,0,1065,1067,1,0,0,0,1066,1058,1,0,0,0,1066,1062,1,0,0,0,1066,1067,1,0,0,0,1067,37,1,0,0,0,1068,1073,3,40,20,0,1069,1070,7,3,0,0,1070,1072,3,40,20,0,1071,1069,1,0,0,0,1072,1075,1,0,0,0,1073,1071,1,0,0,0,1073,1074,1,0,0,0,1074,39,1,0,0,0,1075,1073,1,0,0,0,1076,1081,3,42,21,0,1077,1078,7,4,0,0,1078,1080,3,42,21,0,1079,1077,1,0,0,0,1080,1083,1,0,0,0,1081,1079,1,0,0,0,1081,1082,1,0,0,0,1082,41,1,0,0,0,1083,1081,1,0,0,0,1084,1089,3,44,22,0,1085,1086,5,14,0,0,1086,1088,3,44,22,0,1087,1085,1,0,0,0,1088,1091,1,0,0,0,1089,1087,1,0,0,0,1089,1090,1,0,0,0,1090,43,1,0,0,0,1091,1089,1,0,0,0,1092,1097,3,54,27,0,1093,1094,3,46,23,0,1094,1095,3,54,27,0,1095,1097,1,0,0,0,1096,1092,1,0,0,0,1096,1093,1,0,0,0,1097,45,1,0,0,0,1098,1099,7,5,0,0,1099,47,1,0,0,0,1100,1109,3,138,69,0,1101,1109,3,132,66,0,1102,1106,5,25,0,0,1103,1107,3,144,72,0,1104,1107,5,319,0,0,1105,1107,3,726,363,0,1106,1103,1,0,0,0,1106,1104,1,0,0,0,1106,1105,1,0,0,0,1107,1109,1,0,0,0,1108,1100,1,0,0,0,1108,1101,1,0,0,0,1108,1102,1,0,0,0,1109,1112,1,0,0,0,1110,1108,1,0,0,0,1110,1111,1,0,0,0,1111,1115,1,0,0,0,1112,1110,1,0,0,0,1113,1114,5,76,0,0,1114,1116,3,724,362,0,1115,1113,1,0,0,0,1115,1116,1,0,0,0,1116,49,1,0,0,0,1117,1120,3,710,355,0,1118,1120,3,68,34,0,1119,1117,1,0,0,0,1119,1118,1,0,0,0,1120,1121,1,0,0,0,1121,1122,3,48,24,0,1122,51,1,0,0,0,1123,1126,3,712,356,0,1124,1126,3,70,35,0,1125,1123,1,0,0,0,1125,1124,1,0,0,0,1126,1127,1,0,0,0,1127,1128,3,48,24,0,1128,53,1,0,0,0,1129,1132,3,50,25,0,1130,1132,3,84,42,0,1131,1129,1,0,0,0,1131,1130,1,0,0,0,1132,55,1,0,0,0,1133,1136,3,52,26,0,1134,1136,3,84,42,0,1135,1133,1,0,0,0,1135,1134,1,0,0,0,1136,57,1,0,0,0,1137,1139,5,43,0,0,1138,1140,3,112,56,0,1139,1138,1,0,0,0,1139,1140,1,0,0,0,1140,1142,1,0,0,0,1141,1143,5,26,0,0,1142,1141,1,0,0,0,1142,1143,1,0,0,0,1143,1144,1,0,0,0,1144,1145,5,42,0,0,1145,59,1,0,0,0,1146,1149,3,14,7,0,1147,1148,5,30,0,0,1148,1150,3,14,7,0,1149,1147,1,0,0,0,1149,1150,1,0,0,0,1150,1159,1,0,0,0,1151,1152,5,26,0,0,1152,1155,3,14,7,0,1153,1154,5,30,0,0,1154,1156,3,14,7,0,1155,1153,1,0,0,0,1155,1156,1,0,0,0,1156,1158,1,0,0,0,1157,1151,1,0,0,0,1158,1161,1,0,0,0,1159,1157,1,0,0,0,1159,1160,1,0,0,0,1160,61,1,0,0,0,1161,1159,1,0,0,0,1162,1164,5,37,0,0,1163,1165,3,60,30,0,1164,1163,1,0,0,0,1164,1165,1,0,0,0,1165,1167,1,0,0,0,1166,1168,5,26,0,0,1167,1166,1,0,0,0,1167,1168,1,0,0,0,1168,1169,1,0,0,0,1169,1170,5,38,0,0,1170,63,1,0,0,0,1171,1172,3,14,7,0,1172,1173,5,30,0,0,1173,1181,3,14,7,0,1174,1175,5,26,0,0,1175,1176,3,14,7,0,1176,1177,5,30,0,0,1177,1178,3,14,7,0,1178,1180,1,0,0,0,1179,1174,1,0,0,0,1180,1183,1,0,0,0,1181,1179,1,0,0,0,1181,1182,1,0,0,0,1182,65,1,0,0,0,1183,1181,1,0,0,0,1184,1186,5,15,0,0,1185,1187,3,64,32,0,1186,1185,1,0,0,0,1186,1187,1,0,0,0,1187,1189,1,0,0,0,1188,1190,5,26,0,0,1189,1188,1,0,0,0,1189,1190,1,0,0,0,1190,1191,1,0,0,0,1191,1192,5,16,0,0,1192,67,1,0,0,0,1193,1211,3,142,71,0,1194,1211,3,144,72,0,1195,1211,3,80,40,0,1196,1211,3,72,36,0,1197,1211,3,76,38,0,1198,1211,3,78,39,0,1199,1200,3,726,363,0,1200,1203,5,40,0,0,1201,1204,3,752,376,0,1202,1204,5,316,0,0,1203,1201,1,0,0,0,1203,1202,1,0,0,0,1204,1211,1,0,0,0,1205,1211,3,208,104,0,1206,1211,3,74,37,0,1207,1211,3,58,29,0,1208,1211,3,62,31,0,1209,1211,3,66,33,0,1210,1193,1,0,0,0,1210,1194,1,0,0,0,1210,1195,1,0,0,0,1210,1196,1,0,0,0,1210,1197,1,0,0,0,1210,1198,1,0,0,0,1210,1199,1,0,0,0,1210,1205,1,0,0,0,1210,1206,1,0,0,0,1210,1207,1,0,0,0,1210,1208,1,0,0,0,1210,1209,1,0,0,0,1211,69,1,0,0,0,1212,1233,3,142,71,0,1213,1233,3,144,72,0,1214,1233,3,80,40,0,1215,1233,3,72,36,0,1216,1233,3,78,39,0,1217,1218,3,726,363,0,1218,1221,5,40,0,0,1219,1222,3,752,376,0,1220,1222,5,316,0,0,1221,1219,1,0,0,0,1221,1220,1,0,0,0,1222,1233,1,0,0,0,1223,1224,5,27,0,0,1224,1225,3,232,116,0,1225,1226,5,28,0,0,1226,1233,1,0,0,0,1227,1233,3,208,104,0,1228,1233,3,74,37,0,1229,1233,3,58,29,0,1230,1233,3,62,31,0,1231,1233,3,66,33,0,1232,1212,1,0,0,0,1232,1213,1,0,0,0,1232,1214,1,0,0,0,1232,1215,1,0,0,0,1232,1216,1,0,0,0,1232,1217,1,0,0,0,1232,1223,1,0,0,0,1232,1227,1,0,0,0,1232,1228,1,0,0,0,1232,1229,1,0,0,0,1232,1230,1,0,0,0,1232,1231,1,0,0,0,1233,71,1,0,0,0,1234,1235,5,73,0,0,1235,1236,5,27,0,0,1236,1237,3,14,7,0,1237,1238,5,55,0,0,1238,1239,3,204,102,0,1239,1240,5,28,0,0,1240,73,1,0,0,0,1241,1242,5,68,0,0,1242,1243,5,27,0,0,1243,1244,3,14,7,0,1244,1245,5,55,0,0,1245,1246,3,156,78,0,1246,1247,5,28,0,0,1247,75,1,0,0,0,1248,1249,5,128,0,0,1249,1252,5,27,0,0,1250,1253,3,232,116,0,1251,1253,3,370,185,0,1252,1250,1,0,0,0,1252,1251,1,0,0,0,1253,1254,1,0,0,0,1254,1255,5,28,0,0,1255,77,1,0,0,0,1256,1258,5,72,0,0,1257,1259,3,14,7,0,1258,1257,1,0,0,0,1258,1259,1,0,0,0,1259,1261,1,0,0,0,1260,1262,3,140,70,0,1261,1260,1,0,0,0,1262,1263,1,0,0,0,1263,1261,1,0,0,0,1263,1264,1,0,0,0,1264,1267,1,0,0,0,1265,1266,5,114,0,0,1266,1268,3,14,7,0,1267,1265,1,0,0,0,1267,1268,1,0,0,0,1268,1269,1,0,0,0,1269,1270,5,118,0,0,1270,79,1,0,0,0,1271,1283,3,110,55,0,1272,1281,5,41,0,0,1273,1274,5,27,0,0,1274,1275,3,14,7,0,1275,1276,5,28,0,0,1276,1282,1,0,0,0,1277,1278,5,37,0,0,1278,1279,3,6,3,0,1279,1280,5,38,0,0,1280,1282,1,0,0,0,1281,1273,1,0,0,0,1281,1277,1,0,0,0,1282,1284,1,0,0,0,1283,1272,1,0,0,0,1283,1284,1,0,0,0,1284,81,1,0,0,0,1285,1286,3,56,28,0,1286,83,1,0,0,0,1287,1291,3,98,49,0,1288,1291,3,102,51,0,1289,1291,3,108,54,0,1290,1287,1,0,0,0,1290,1288,1,0,0,0,1290,1289,1,0,0,0,1291,85,1,0,0,0,1292,1293,5,316,0,0,1293,87,1,0,0,0,1294,1297,3,710,355,0,1295,1297,5,316,0,0,1296,1294,1,0,0,0,1296,1295,1,0,0,0,1297,89,1,0,0,0,1298,1299,3,14,7,0,1299,1300,5,55,0,0,1300,1301,3,88,44,0,1301,91,1,0,0,0,1302,1307,3,90,45,0,1303,1304,5,26,0,0,1304,1306,3,90,45,0,1305,1303,1,0,0,0,1306,1309,1,0,0,0,1307,1305,1,0,0,0,1307,1308,1,0,0,0,1308,93,1,0,0,0,1309,1307,1,0,0,0,1310,1311,3,14,7,0,1311,1312,5,26,0,0,1312,1315,3,86,43,0,1313,1314,5,216,0,0,1314,1316,3,92,46,0,1315,1313,1,0,0,0,1315,1316,1,0,0,0,1316,95,1,0,0,0,1317,1322,5,121,0,0,1318,1322,5,198,0,0,1319,1320,5,98,0,0,1320,1322,3,14,7,0,1321,1317,1,0,0,0,1321,1318,1,0,0,0,1321,1319,1,0,0,0,1322,97,1,0,0,0,1323,1324,5,175,0,0,1324,1325,5,27,0,0,1325,1328,3,94,47,0,1326,1327,5,248,0,0,1327,1329,3,156,78,0,1328,1326,1,0,0,0,1328,1329,1,0,0,0,1329,1336,1,0,0,0,1330,1331,3,96,48,0,1331,1332,5,204,0,0,1332,1333,7,6,0,0,1333,1335,1,0,0,0,1334,1330,1,0,0,0,1335,1338,1,0,0,0,1336,1334,1,0,0,0,1336,1337,1,0,0,0,1337,1339,1,0,0,0,1338,1336,1,0,0,0,1339,1340,5,28,0,0,1340,99,1,0,0,0,1341,1342,7,7,0,0,1342,1343,5,204,0,0,1343,1344,5,121,0,0,1344,101,1,0,0,0,1345,1346,5,173,0,0,1346,1347,5,27,0,0,1347,1349,3,94,47,0,1348,1350,3,100,50,0,1349,1348,1,0,0,0,1349,1350,1,0,0,0,1350,1351,1,0,0,0,1351,1352,5,28,0,0,1352,103,1,0,0,0,1353,1355,5,313,0,0,1354,1356,5,54,0,0,1355,1354,1,0,0,0,1355,1356,1,0,0,0,1356,1365,1,0,0,0,1357,1359,5,312,0,0,1358,1360,7,8,0,0,1359,1358,1,0,0,0,1359,1360,1,0,0,0,1360,1362,1,0,0,0,1361,1363,5,54,0,0,1362,1361,1,0,0,0,1362,1363,1,0,0,0,1363,1365,1,0,0,0,1364,1353,1,0,0,0,1364,1357,1,0,0,0,1365,105,1,0,0,0,1366,1373,5,121,0,0,1367,1373,5,198,0,0,1368,1369,5,115,0,0,1369,1373,5,54,0,0,1370,1371,5,115,0,0,1371,1373,5,200,0,0,1372,1366,1,0,0,0,1372,1367,1,0,0,0,1372,1368,1,0,0,0,1372,1370,1,0,0,0,1373,107,1,0,0,0,1374,1375,5,174,0,0,1375,1376,5,27,0,0,1376,1380,3,94,47,0,1377,1378,3,104,52,0,1378,1379,5,314,0,0,1379,1381,1,0,0,0,1380,1377,1,0,0,0,1380,1381,1,0,0,0,1381,1386,1,0,0,0,1382,1383,3,106,53,0,1383,1384,5,204,0,0,1384,1385,5,115,0,0,1385,1387,1,0,0,0,1386,1382,1,0,0,0,1386,1387,1,0,0,0,1387,1392,1,0,0,0,1388,1389,3,106,53,0,1389,1390,5,204,0,0,1390,1391,5,121,0,0,1391,1393,1,0,0,0,1392,1388,1,0,0,0,1392,1393,1,0,0,0,1393,1394,1,0,0,0,1394,1395,5,28,0,0,1395,109,1,0,0,0,1396,1398,5,27,0,0,1397,1399,3,130,65,0,1398,1397,1,0,0,0,1398,1399,1,0,0,0,1399,1401,1,0,0,0,1400,1402,5,26,0,0,1401,1400,1,0,0,0,1401,1402,1,0,0,0,1402,1403,1,0,0,0,1403,1404,5,28,0,0,1404,111,1,0,0,0,1405,1410,3,14,7,0,1406,1407,5,26,0,0,1407,1409,3,14,7,0,1408,1406,1,0,0,0,1409,1412,1,0,0,0,1410,1408,1,0,0,0,1410,1411,1,0,0,0,1411,113,1,0,0,0,1412,1410,1,0,0,0,1413,1414,5,27,0,0,1414,1419,3,724,362,0,1415,1416,5,26,0,0,1416,1418,3,724,362,0,1417,1415,1,0,0,0,1418,1421,1,0,0,0,1419,1417,1,0,0,0,1419,1420,1,0,0,0,1420,1422,1,0,0,0,1421,1419,1,0,0,0,1422,1423,5,28,0,0,1423,115,1,0,0,0,1424,1427,3,144,72,0,1425,1427,3,724,362,0,1426,1424,1,0,0,0,1426,1425,1,0,0,0,1427,117,1,0,0,0,1428,1429,5,27,0,0,1429,1434,3,116,58,0,1430,1431,5,26,0,0,1431,1433,3,116,58,0,1432,1430,1,0,0,0,1433,1436,1,0,0,0,1434,1432,1,0,0,0,1434,1435,1,0,0,0,1435,1437,1,0,0,0,1436,1434,1,0,0,0,1437,1438,5,28,0,0,1438,119,1,0,0,0,1439,1440,3,748,374,0,1440,1441,3,724,362,0,1441,121,1,0,0,0,1442,1443,3,724,362,0,1443,1444,5,25,0,0,1444,1445,3,724,362,0,1445,1448,1,0,0,0,1446,1448,3,738,369,0,1447,1442,1,0,0,0,1447,1446,1,0,0,0,1448,123,1,0,0,0,1449,1454,3,120,60,0,1450,1451,5,26,0,0,1451,1453,3,120,60,0,1452,1450,1,0,0,0,1453,1456,1,0,0,0,1454,1452,1,0,0,0,1454,1455,1,0,0,0,1455,1458,1,0,0,0,1456,1454,1,0,0,0,1457,1459,5,26,0,0,1458,1457,1,0,0,0,1458,1459,1,0,0,0,1459,125,1,0,0,0,1460,1465,3,122,61,0,1461,1462,5,26,0,0,1462,1464,3,122,61,0,1463,1461,1,0,0,0,1464,1467,1,0,0,0,1465,1463,1,0,0,0,1465,1466,1,0,0,0,1466,1469,1,0,0,0,1467,1465,1,0,0,0,1468,1470,5,26,0,0,1469,1468,1,0,0,0,1469,1470,1,0,0,0,1470,127,1,0,0,0,1471,1474,3,14,7,0,1472,1473,5,55,0,0,1473,1475,3,726,363,0,1474,1472,1,0,0,0,1474,1475,1,0,0,0,1475,129,1,0,0,0,1476,1481,3,128,64,0,1477,1478,5,26,0,0,1478,1480,3,128,64,0,1479,1477,1,0,0,0,1480,1483,1,0,0,0,1481,1479,1,0,0,0,1481,1482,1,0,0,0,1482,131,1,0,0,0,1483,1481,1,0,0,0,1484,1491,5,27,0,0,1485,1486,3,252,126,0,1486,1488,3,130,65,0,1487,1489,5,26,0,0,1488,1487,1,0,0,0,1488,1489,1,0,0,0,1489,1492,1,0,0,0,1490,1492,5,20,0,0,1491,1485,1,0,0,0,1491,1490,1,0,0,0,1491,1492,1,0,0,0,1492,1493,1,0,0,0,1493,1494,5,28,0,0,1494,1495,3,134,67,0,1495,133,1,0,0,0,1496,1499,3,656,328,0,1497,1499,3,658,329,0,1498,1496,1,0,0,0,1498,1497,1,0,0,0,1498,1499,1,0,0,0,1499,1502,1,0,0,0,1500,1501,5,213,0,0,1501,1503,3,660,330,0,1502,1500,1,0,0,0,1502,1503,1,0,0,0,1503,135,1,0,0,0,1504,1505,3,726,363,0,1505,1506,5,40,0,0,1506,1507,3,726,363,0,1507,1513,1,0,0,0,1508,1513,3,730,365,0,1509,1513,3,144,72,0,1510,1511,5,131,0,0,1511,1513,5,144,0,0,1512,1504,1,0,0,0,1512,1508,1,0,0,0,1512,1509,1,0,0,0,1512,1510,1,0,0,0,1513,1514,1,0,0,0,1514,1515,3,132,66,0,1515,137,1,0,0,0,1516,1517,5,43,0,0,1517,1518,3,14,7,0,1518,1519,5,42,0,0,1519,139,1,0,0,0,1520,1521,5,309,0,0,1521,1522,3,14,7,0,1522,1523,5,284,0,0,1523,1524,3,14,7,0,1524,141,1,0,0,0,1525,1536,3,788,394,0,1526,1536,3,786,393,0,1527,1536,5,316,0,0,1528,1536,5,322,0,0,1529,1536,5,198,0,0,1530,1536,5,92,0,0,1531,1536,5,91,0,0,1532,1536,5,93,0,0,1533,1536,3,784,392,0,1534,1536,5,116,0,0,1535,1525,1,0,0,0,1535,1526,1,0,0,0,1535,1527,1,0,0,0,1535,1528,1,0,0,0,1535,1529,1,0,0,0,1535,1530,1,0,0,0,1535,1531,1,0,0,0,1535,1532,1,0,0,0,1535,1533,1,0,0,0,1535,1534,1,0,0,0,1536,143,1,0,0,0,1537,1541,5,33,0,0,1538,1542,3,726,363,0,1539,1542,5,290,0,0,1540,1542,5,133,0,0,1541,1538,1,0,0,0,1541,1539,1,0,0,0,1541,1540,1,0,0,0,1542,145,1,0,0,0,1543,1545,3,144,72,0,1544,1546,5,29,0,0,1545,1544,1,0,0,0,1545,1546,1,0,0,0,1546,147,1,0,0,0,1547,1552,3,144,72,0,1548,1549,5,26,0,0,1549,1551,3,144,72,0,1550,1548,1,0,0,0,1551,1554,1,0,0,0,1552,1550,1,0,0,0,1552,1553,1,0,0,0,1553,149,1,0,0,0,1554,1552,1,0,0,0,1555,1558,3,144,72,0,1556,1557,5,55,0,0,1557,1559,3,144,72,0,1558,1556,1,0,0,0,1558,1559,1,0,0,0,1559,151,1,0,0,0,1560,1565,3,150,75,0,1561,1562,5,26,0,0,1562,1564,3,150,75,0,1563,1561,1,0,0,0,1564,1567,1,0,0,0,1565,1563,1,0,0,0,1565,1566,1,0,0,0,1566,153,1,0,0,0,1567,1565,1,0,0,0,1568,1570,7,3,0,0,1569,1568,1,0,0,0,1569,1570,1,0,0,0,1570,1573,1,0,0,0,1571,1574,3,788,394,0,1572,1574,3,786,393,0,1573,1571,1,0,0,0,1573,1572,1,0,0,0,1574,155,1,0,0,0,1575,1576,3,742,371,0,1576,157,1,0,0,0,1577,1580,3,788,394,0,1578,1580,3,144,72,0,1579,1577,1,0,0,0,1579,1578,1,0,0,0,1580,159,1,0,0,0,1581,1585,3,706,353,0,1582,1585,5,316,0,0,1583,1585,3,144,72,0,1584,1581,1,0,0,0,1584,1582,1,0,0,0,1584,1583,1,0,0,0,1585,161,1,0,0,0,1586,1587,3,160,80,0,1587,1588,5,30,0,0,1588,1589,3,204,102,0,1589,163,1,0,0,0,1590,1591,3,160,80,0,1591,1596,3,204,102,0,1592,1594,5,196,0,0,1593,1592,1,0,0,0,1593,1594,1,0,0,0,1594,1595,1,0,0,0,1595,1597,5,198,0,0,1596,1593,1,0,0,0,1596,1597,1,0,0,0,1597,1603,1,0,0,0,1598,1599,3,204,102,0,1599,1600,5,55,0,0,1600,1601,3,160,80,0,1601,1603,1,0,0,0,1602,1590,1,0,0,0,1602,1598,1,0,0,0,1603,165,1,0,0,0,1604,1605,3,160,80,0,1605,1606,5,30,0,0,1606,1608,1,0,0,0,1607,1604,1,0,0,0,1607,1608,1,0,0,0,1608,1609,1,0,0,0,1609,1610,3,204,102,0,1610,167,1,0,0,0,1611,1615,3,166,83,0,1612,1613,5,37,0,0,1613,1614,5,63,0,0,1614,1616,5,38,0,0,1615,1612,1,0,0,0,1615,1616,1,0,0,0,1616,169,1,0,0,0,1617,1622,3,168,84,0,1618,1619,5,26,0,0,1619,1621,3,168,84,0,1620,1618,1,0,0,0,1621,1624,1,0,0,0,1622,1620,1,0,0,0,1622,1623,1,0,0,0,1623,171,1,0,0,0,1624,1622,1,0,0,0,1625,1626,5,96,0,0,1626,1627,5,27,0,0,1627,1628,3,158,79,0,1628,1629,5,26,0,0,1629,1630,3,158,79,0,1630,1631,5,28,0,0,1631,173,1,0,0,0,1632,1633,5,208,0,0,1633,1634,5,6,0,0,1634,1635,3,204,102,0,1635,1636,5,8,0,0,1636,175,1,0,0,0,1637,1654,5,291,0,0,1638,1650,5,6,0,0,1639,1644,3,204,102,0,1640,1641,5,26,0,0,1641,1643,3,204,102,0,1642,1640,1,0,0,0,1643,1646,1,0,0,0,1644,1642,1,0,0,0,1644,1645,1,0,0,0,1645,1648,1,0,0,0,1646,1644,1,0,0,0,1647,1649,5,26,0,0,1648,1647,1,0,0,0,1648,1649,1,0,0,0,1649,1651,1,0,0,0,1650,1639,1,0,0,0,1650,1651,1,0,0,0,1651,1652,1,0,0,0,1652,1655,5,8,0,0,1653,1655,5,5,0,0,1654,1638,1,0,0,0,1654,1653,1,0,0,0,1655,177,1,0,0,0,1656,1673,5,270,0,0,1657,1669,5,6,0,0,1658,1663,3,162,81,0,1659,1660,5,26,0,0,1660,1662,3,162,81,0,1661,1659,1,0,0,0,1662,1665,1,0,0,0,1663,1661,1,0,0,0,1663,1664,1,0,0,0,1664,1667,1,0,0,0,1665,1663,1,0,0,0,1666,1668,5,26,0,0,1667,1666,1,0,0,0,1667,1668,1,0,0,0,1668,1670,1,0,0,0,1669,1658,1,0,0,0,1669,1670,1,0,0,0,1670,1671,1,0,0,0,1671,1674,5,8,0,0,1672,1674,5,5,0,0,1673,1657,1,0,0,0,1673,1672,1,0,0,0,1674,179,1,0,0,0,1675,1676,5,306,0,0,1676,1677,5,6,0,0,1677,1682,3,166,83,0,1678,1679,5,26,0,0,1679,1681,3,166,83,0,1680,1678,1,0,0,0,1681,1684,1,0,0,0,1682,1680,1,0,0,0,1682,1683,1,0,0,0,1683,1686,1,0,0,0,1684,1682,1,0,0,0,1685,1687,5,26,0,0,1686,1685,1,0,0,0,1686,1687,1,0,0,0,1687,1688,1,0,0,0,1688,1689,5,8,0,0,1689,181,1,0,0,0,1690,1691,5,182,0,0,1691,1692,5,6,0,0,1692,1693,3,204,102,0,1693,1694,5,8,0,0,1694,183,1,0,0,0,1695,1696,5,269,0,0,1696,1697,5,6,0,0,1697,1698,3,204,102,0,1698,1699,5,8,0,0,1699,185,1,0,0,0,1700,1701,5,138,0,0,1701,1702,5,6,0,0,1702,1703,3,204,102,0,1703,1704,5,8,0,0,1704,187,1,0,0,0,1705,1706,5,106,0,0,1706,1707,5,6,0,0,1707,1708,3,204,102,0,1708,1709,5,26,0,0,1709,1710,3,204,102,0,1710,1711,5,8,0,0,1711,189,1,0,0,0,1712,1713,5,264,0,0,1713,1714,5,6,0,0,1714,1715,3,204,102,0,1715,1716,5,8,0,0,1716,191,1,0,0,0,1717,1718,5,119,0,0,1718,1719,5,6,0,0,1719,1724,3,160,80,0,1720,1721,5,26,0,0,1721,1723,3,160,80,0,1722,1720,1,0,0,0,1723,1726,1,0,0,0,1724,1722,1,0,0,0,1724,1725,1,0,0,0,1725,1728,1,0,0,0,1726,1724,1,0,0,0,1727,1729,5,26,0,0,1728,1727,1,0,0,0,1728,1729,1,0,0,0,1729,1730,1,0,0,0,1730,1731,5,8,0,0,1731,193,1,0,0,0,1732,1733,5,243,0,0,1733,1734,5,6,0,0,1734,1735,3,160,80,0,1735,1736,5,8,0,0,1736,195,1,0,0,0,1737,1738,5,281,0,0,1738,1739,5,6,0,0,1739,1740,3,204,102,0,1740,1741,5,26,0,0,1741,1742,3,160,80,0,1742,1743,5,8,0,0,1743,197,1,0,0,0,1744,1745,5,70,0,0,1745,1746,5,6,0,0,1746,1748,5,27,0,0,1747,1749,3,170,85,0,1748,1747,1,0,0,0,1748,1749,1,0,0,0,1749,1751,1,0,0,0,1750,1752,5,26,0,0,1751,1750,1,0,0,0,1751,1752,1,0,0,0,1752,1757,1,0,0,0,1753,1754,5,43,0,0,1754,1755,3,170,85,0,1755,1756,5,42,0,0,1756,1758,1,0,0,0,1757,1753,1,0,0,0,1757,1758,1,0,0,0,1758,1759,1,0,0,0,1759,1760,5,28,0,0,1760,1761,5,41,0,0,1761,1762,3,204,102,0,1762,1763,5,8,0,0,1763,199,1,0,0,0,1764,1778,3,174,87,0,1765,1778,3,176,88,0,1766,1778,3,178,89,0,1767,1778,3,180,90,0,1768,1778,3,182,91,0,1769,1778,3,184,92,0,1770,1778,3,186,93,0,1771,1778,3,188,94,0,1772,1778,3,190,95,0,1773,1778,3,192,96,0,1774,1778,3,194,97,0,1775,1778,3,196,98,0,1776,1778,3,198,99,0,1777,1764,1,0,0,0,1777,1765,1,0,0,0,1777,1766,1,0,0,0,1777,1767,1,0,0,0,1777,1768,1,0,0,0,1777,1769,1,0,0,0,1777,1770,1,0,0,0,1777,1771,1,0,0,0,1777,1772,1,0,0,0,1777,1773,1,0,0,0,1777,1774,1,0,0,0,1777,1775,1,0,0,0,1777,1776,1,0,0,0,1778,1782,1,0,0,0,1779,1781,5,29,0,0,1780,1779,1,0,0,0,1781,1784,1,0,0,0,1782,1780,1,0,0,0,1782,1783,1,0,0,0,1783,201,1,0,0,0,1784,1782,1,0,0,0,1785,1797,3,200,100,0,1786,1789,3,172,86,0,1787,1789,3,156,78,0,1788,1786,1,0,0,0,1788,1787,1,0,0,0,1789,1793,1,0,0,0,1790,1792,5,29,0,0,1791,1790,1,0,0,0,1792,1795,1,0,0,0,1793,1791,1,0,0,0,1793,1794,1,0,0,0,1794,1797,1,0,0,0,1795,1793,1,0,0,0,1796,1785,1,0,0,0,1796,1788,1,0,0,0,1797,203,1,0,0,0,1798,1801,3,202,101,0,1799,1801,3,144,72,0,1800,1798,1,0,0,0,1800,1799,1,0,0,0,1801,205,1,0,0,0,1802,1803,5,316,0,0,1803,207,1,0,0,0,1804,1805,5,306,0,0,1805,1806,5,27,0,0,1806,1807,3,14,7,0,1807,1808,5,26,0,0,1808,1809,3,14,7,0,1809,1810,5,26,0,0,1810,1811,3,14,7,0,1811,1812,5,28,0,0,1812,1828,1,0,0,0,1813,1814,5,119,0,0,1814,1815,5,27,0,0,1815,1816,3,14,7,0,1816,1817,5,26,0,0,1817,1818,3,14,7,0,1818,1819,5,28,0,0,1819,1828,1,0,0,0,1820,1821,5,70,0,0,1821,1822,5,27,0,0,1822,1823,3,14,7,0,1823,1824,5,26,0,0,1824,1825,3,14,7,0,1825,1826,5,28,0,0,1826,1828,1,0,0,0,1827,1804,1,0,0,0,1827,1813,1,0,0,0,1827,1820,1,0,0,0,1828,209,1,0,0,0,1829,1830,5,97,0,0,1830,1831,3,144,72,0,1831,1832,5,55,0,0,1832,1835,3,202,101,0,1833,1834,5,2,0,0,1834,1836,3,142,71,0,1835,1833,1,0,0,0,1835,1836,1,0,0,0,1836,211,1,0,0,0,1837,1839,5,25,0,0,1838,1837,1,0,0,0,1838,1839,1,0,0,0,1839,1840,1,0,0,0,1840,1845,3,724,362,0,1841,1842,5,25,0,0,1842,1844,3,724,362,0,1843,1841,1,0,0,0,1844,1847,1,0,0,0,1845,1843,1,0,0,0,1845,1846,1,0,0,0,1846,213,1,0,0,0,1847,1845,1,0,0,0,1848,1849,5,158,0,0,1849,1850,3,212,106,0,1850,1851,5,273,0,0,1851,1852,3,152,76,0,1852,215,1,0,0,0,1853,1854,5,130,0,0,1854,1855,3,148,74,0,1855,217,1,0,0,0,1856,1859,3,144,72,0,1857,1859,5,116,0,0,1858,1856,1,0,0,0,1858,1857,1,0,0,0,1859,1860,1,0,0,0,1860,1862,5,27,0,0,1861,1863,3,112,56,0,1862,1861,1,0,0,0,1862,1863,1,0,0,0,1863,1864,1,0,0,0,1864,1865,5,28,0,0,1865,219,1,0,0,0,1866,1867,5,65,0,0,1867,1868,3,566,283,0,1868,1869,5,118,0,0,1869,1870,5,111,0,0,1870,221,1,0,0,0,1871,1874,5,111,0,0,1872,1875,3,218,109,0,1873,1875,3,220,110,0,1874,1872,1,0,0,0,1874,1873,1,0,0,0,1875,223,1,0,0,0,1876,1877,5,223,0,0,1877,1878,3,754,377,0,1878,1892,3,724,362,0,1879,1880,5,2,0,0,1880,1893,3,226,113,0,1881,1882,5,27,0,0,1882,1887,3,226,113,0,1883,1884,5,26,0,0,1884,1886,3,226,113,0,1885,1883,1,0,0,0,1886,1889,1,0,0,0,1887,1885,1,0,0,0,1887,1888,1,0,0,0,1888,1890,1,0,0,0,1889,1887,1,0,0,0,1890,1891,5,28,0,0,1891,1893,1,0,0,0,1892,1879,1,0,0,0,1892,1881,1,0,0,0,1892,1893,1,0,0,0,1893,225,1,0,0,0,1894,1900,3,154,77,0,1895,1900,3,706,353,0,1896,1900,5,316,0,0,1897,1900,3,784,392,0,1898,1900,3,144,72,0,1899,1894,1,0,0,0,1899,1895,1,0,0,0,1899,1896,1,0,0,0,1899,1897,1,0,0,0,1899,1898,1,0,0,0,1900,227,1,0,0,0,1901,1903,3,14,7,0,1902,1904,7,9,0,0,1903,1902,1,0,0,0,1903,1904,1,0,0,0,1904,229,1,0,0,0,1905,1910,3,228,114,0,1906,1907,5,26,0,0,1907,1909,3,228,114,0,1908,1906,1,0,0,0,1909,1912,1,0,0,0,1910,1908,1,0,0,0,1910,1911,1,0,0,0,1911,231,1,0,0,0,1912,1910,1,0,0,0,1913,1919,3,236,118,0,1914,1915,3,238,119,0,1915,1916,3,236,118,0,1916,1918,1,0,0,0,1917,1914,1,0,0,0,1918,1921,1,0,0,0,1919,1917,1,0,0,0,1919,1920,1,0,0,0,1920,233,1,0,0,0,1921,1919,1,0,0,0,1922,1928,3,240,120,0,1923,1924,3,238,119,0,1924,1925,3,236,118,0,1925,1927,1,0,0,0,1926,1923,1,0,0,0,1927,1930,1,0,0,0,1928,1926,1,0,0,0,1928,1929,1,0,0,0,1929,235,1,0,0,0,1930,1928,1,0,0,0,1931,1937,3,240,120,0,1932,1933,5,27,0,0,1933,1934,3,240,120,0,1934,1935,5,28,0,0,1935,1937,1,0,0,0,1936,1931,1,0,0,0,1936,1932,1,0,0,0,1937,237,1,0,0,0,1938,1940,5,295,0,0,1939,1941,5,48,0,0,1940,1939,1,0,0,0,1940,1941,1,0,0,0,1941,1945,1,0,0,0,1942,1945,5,168,0,0,1943,1945,5,124,0,0,1944,1938,1,0,0,0,1944,1942,1,0,0,0,1944,1943,1,0,0,0,1945,239,1,0,0,0,1946,1953,3,242,121,0,1947,1948,5,181,0,0,1948,1951,3,14,7,0,1949,1950,7,10,0,0,1950,1952,3,14,7,0,1951,1949,1,0,0,0,1951,1952,1,0,0,0,1952,1954,1,0,0,0,1953,1947,1,0,0,0,1953,1954,1,0,0,0,1954,241,1,0,0,0,1955,1957,5,109,0,0,1956,1955,1,0,0,0,1956,1957,1,0,0,0,1957,1961,1,0,0,0,1958,1962,3,244,122,0,1959,1962,3,250,125,0,1960,1962,3,254,127,0,1961,1958,1,0,0,0,1961,1959,1,0,0,0,1961,1960,1,0,0,0,1962,1966,1,0,0,0,1963,1964,5,169,0,0,1964,1965,5,246,0,0,1965,1967,3,116,58,0,1966,1963,1,0,0,0,1966,1967,1,0,0,0,1967,243,1,0,0,0,1968,1970,5,228,0,0,1969,1971,5,269,0,0,1970,1969,1,0,0,0,1970,1971,1,0,0,0,1971,1972,1,0,0,0,1972,1977,3,346,173,0,1973,1974,5,26,0,0,1974,1976,3,346,173,0,1975,1973,1,0,0,0,1976,1979,1,0,0,0,1977,1975,1,0,0,0,1977,1978,1,0,0,0,1978,2001,1,0,0,0,1979,1977,1,0,0,0,1980,1981,5,303,0,0,1981,1984,3,136,68,0,1982,1983,5,55,0,0,1983,1985,3,724,362,0,1984,1982,1,0,0,0,1984,1985,1,0,0,0,1985,1988,1,0,0,0,1986,1987,5,312,0,0,1987,1989,3,248,124,0,1988,1986,1,0,0,0,1988,1989,1,0,0,0,1989,1991,1,0,0,0,1990,1992,3,800,400,0,1991,1990,1,0,0,0,1991,1992,1,0,0,0,1992,1995,1,0,0,0,1993,1994,5,152,0,0,1994,1996,3,14,7,0,1995,1993,1,0,0,0,1995,1996,1,0,0,0,1996,1999,1,0,0,0,1997,1998,5,57,0,0,1998,2e3,3,314,157,0,1999,1997,1,0,0,0,1999,2e3,1,0,0,0,2e3,2002,1,0,0,0,2001,1980,1,0,0,0,2001,2002,1,0,0,0,2002,245,1,0,0,0,2003,2004,3,724,362,0,2004,2005,5,2,0,0,2005,2006,3,14,7,0,2006,247,1,0,0,0,2007,2012,3,246,123,0,2008,2009,5,26,0,0,2009,2011,3,246,123,0,2010,2008,1,0,0,0,2011,2014,1,0,0,0,2012,2010,1,0,0,0,2012,2013,1,0,0,0,2013,249,1,0,0,0,2014,2012,1,0,0,0,2015,2016,5,232,0,0,2016,2021,3,346,173,0,2017,2018,5,26,0,0,2018,2020,3,346,173,0,2019,2017,1,0,0,0,2020,2023,1,0,0,0,2021,2019,1,0,0,0,2021,2022,1,0,0,0,2022,2026,1,0,0,0,2023,2021,1,0,0,0,2024,2025,5,225,0,0,2025,2027,3,230,115,0,2026,2024,1,0,0,0,2026,2027,1,0,0,0,2027,2028,1,0,0,0,2028,2029,5,204,0,0,2029,2030,3,124,62,0,2030,2032,5,303,0,0,2031,2033,5,48,0,0,2032,2031,1,0,0,0,2032,2033,1,0,0,0,2033,2034,1,0,0,0,2034,2037,3,136,68,0,2035,2036,5,55,0,0,2036,2038,3,724,362,0,2037,2035,1,0,0,0,2037,2038,1,0,0,0,2038,2040,1,0,0,0,2039,2041,3,800,400,0,2040,2039,1,0,0,0,2040,2041,1,0,0,0,2041,2044,1,0,0,0,2042,2043,5,152,0,0,2043,2045,3,14,7,0,2044,2042,1,0,0,0,2044,2045,1,0,0,0,2045,2048,1,0,0,0,2046,2047,5,57,0,0,2047,2049,3,314,157,0,2048,2046,1,0,0,0,2048,2049,1,0,0,0,2049,251,1,0,0,0,2050,2052,7,11,0,0,2051,2050,1,0,0,0,2051,2052,1,0,0,0,2052,253,1,0,0,0,2053,2054,5,142,0,0,2054,2056,3,338,169,0,2055,2053,1,0,0,0,2055,2056,1,0,0,0,2056,2057,1,0,0,0,2057,2059,5,262,0,0,2058,2060,5,269,0,0,2059,2058,1,0,0,0,2059,2060,1,0,0,0,2060,2061,1,0,0,0,2061,2062,3,252,126,0,2062,2067,3,336,168,0,2063,2064,5,26,0,0,2064,2066,3,336,168,0,2065,2063,1,0,0,0,2066,2069,1,0,0,0,2067,2065,1,0,0,0,2067,2068,1,0,0,0,2068,2071,1,0,0,0,2069,2067,1,0,0,0,2070,2072,5,26,0,0,2071,2070,1,0,0,0,2071,2072,1,0,0,0,2072,2075,1,0,0,0,2073,2074,5,313,0,0,2074,2076,3,126,63,0,2075,2073,1,0,0,0,2075,2076,1,0,0,0,2076,2079,1,0,0,0,2077,2078,5,142,0,0,2078,2080,3,338,169,0,2079,2077,1,0,0,0,2079,2080,1,0,0,0,2080,2082,1,0,0,0,2081,2083,3,800,400,0,2082,2081,1,0,0,0,2082,2083,1,0,0,0,2083,2085,1,0,0,0,2084,2086,3,318,159,0,2085,2084,1,0,0,0,2085,2086,1,0,0,0,2086,2089,1,0,0,0,2087,2088,5,152,0,0,2088,2090,3,14,7,0,2089,2087,1,0,0,0,2089,2090,1,0,0,0,2090,2092,1,0,0,0,2091,2093,3,664,332,0,2092,2091,1,0,0,0,2092,2093,1,0,0,0,2093,2095,1,0,0,0,2094,2096,3,316,158,0,2095,2094,1,0,0,0,2095,2096,1,0,0,0,2096,255,1,0,0,0,2097,2098,5,187,0,0,2098,2100,5,27,0,0,2099,2101,3,678,339,0,2100,2099,1,0,0,0,2100,2101,1,0,0,0,2101,2103,1,0,0,0,2102,2104,3,314,157,0,2103,2102,1,0,0,0,2103,2104,1,0,0,0,2104,2106,1,0,0,0,2105,2107,3,262,131,0,2106,2105,1,0,0,0,2106,2107,1,0,0,0,2107,2109,1,0,0,0,2108,2110,3,258,129,0,2109,2108,1,0,0,0,2109,2110,1,0,0,0,2110,2111,1,0,0,0,2111,2112,3,268,134,0,2112,2113,5,28,0,0,2113,257,1,0,0,0,2114,2115,5,205,0,0,2115,2116,5,255,0,0,2116,2117,5,220,0,0,2117,2126,5,185,0,0,2118,2119,5,48,0,0,2119,2120,5,256,0,0,2120,2121,5,220,0,0,2121,2123,5,185,0,0,2122,2124,3,260,130,0,2123,2122,1,0,0,0,2123,2124,1,0,0,0,2124,2126,1,0,0,0,2125,2114,1,0,0,0,2125,2118,1,0,0,0,2126,259,1,0,0,0,2127,2128,5,266,0,0,2128,2129,5,115,0,0,2129,2137,5,186,0,0,2130,2131,5,203,0,0,2131,2132,5,115,0,0,2132,2137,5,186,0,0,2133,2134,5,312,0,0,2134,2135,5,298,0,0,2135,2137,5,256,0,0,2136,2127,1,0,0,0,2136,2130,1,0,0,0,2136,2133,1,0,0,0,2137,261,1,0,0,0,2138,2139,5,188,0,0,2139,2140,3,264,132,0,2140,263,1,0,0,0,2141,2146,3,266,133,0,2142,2143,5,26,0,0,2143,2145,3,266,133,0,2144,2142,1,0,0,0,2145,2148,1,0,0,0,2146,2144,1,0,0,0,2146,2147,1,0,0,0,2147,265,1,0,0,0,2148,2146,1,0,0,0,2149,2150,3,14,7,0,2150,2151,5,55,0,0,2151,2152,3,724,362,0,2152,267,1,0,0,0,2153,2154,5,47,0,0,2154,2155,5,185,0,0,2155,2157,3,270,135,0,2156,2153,1,0,0,0,2156,2157,1,0,0,0,2157,2159,1,0,0,0,2158,2160,3,274,137,0,2159,2158,1,0,0,0,2159,2160,1,0,0,0,2160,2161,1,0,0,0,2161,2162,5,219,0,0,2162,2163,5,27,0,0,2163,2164,3,276,138,0,2164,2166,5,28,0,0,2165,2167,3,290,145,0,2166,2165,1,0,0,0,2166,2167,1,0,0,0,2167,2168,1,0,0,0,2168,2169,5,101,0,0,2169,2170,3,302,151,0,2170,269,1,0,0,0,2171,2172,5,267,0,0,2172,2173,5,286,0,0,2173,2174,5,194,0,0,2174,2191,5,255,0,0,2175,2176,5,267,0,0,2176,2177,5,218,0,0,2177,2178,5,177,0,0,2178,2191,5,255,0,0,2179,2180,5,267,0,0,2180,2181,5,286,0,0,2181,2182,5,136,0,0,2182,2191,3,272,136,0,2183,2184,5,267,0,0,2184,2185,5,286,0,0,2185,2186,5,177,0,0,2186,2191,3,272,136,0,2187,2188,5,267,0,0,2188,2189,5,286,0,0,2189,2191,3,272,136,0,2190,2171,1,0,0,0,2190,2175,1,0,0,0,2190,2179,1,0,0,0,2190,2183,1,0,0,0,2190,2187,1,0,0,0,2191,271,1,0,0,0,2192,2193,3,312,156,0,2193,273,1,0,0,0,2194,2195,7,12,0,0,2195,275,1,0,0,0,2196,2201,3,278,139,0,2197,2198,5,13,0,0,2198,2200,3,278,139,0,2199,2197,1,0,0,0,2200,2203,1,0,0,0,2201,2199,1,0,0,0,2201,2202,1,0,0,0,2202,277,1,0,0,0,2203,2201,1,0,0,0,2204,2206,3,280,140,0,2205,2204,1,0,0,0,2206,2207,1,0,0,0,2207,2205,1,0,0,0,2207,2208,1,0,0,0,2208,279,1,0,0,0,2209,2211,3,284,142,0,2210,2212,3,282,141,0,2211,2210,1,0,0,0,2211,2212,1,0,0,0,2212,281,1,0,0,0,2213,2215,5,20,0,0,2214,2216,5,29,0,0,2215,2214,1,0,0,0,2215,2216,1,0,0,0,2216,2242,1,0,0,0,2217,2219,5,17,0,0,2218,2220,5,29,0,0,2219,2218,1,0,0,0,2219,2220,1,0,0,0,2220,2242,1,0,0,0,2221,2223,5,29,0,0,2222,2224,5,29,0,0,2223,2222,1,0,0,0,2223,2224,1,0,0,0,2224,2242,1,0,0,0,2225,2227,5,37,0,0,2226,2228,3,788,394,0,2227,2226,1,0,0,0,2227,2228,1,0,0,0,2228,2229,1,0,0,0,2229,2231,5,26,0,0,2230,2232,3,788,394,0,2231,2230,1,0,0,0,2231,2232,1,0,0,0,2232,2233,1,0,0,0,2233,2235,5,38,0,0,2234,2236,5,29,0,0,2235,2234,1,0,0,0,2235,2236,1,0,0,0,2236,2242,1,0,0,0,2237,2238,5,37,0,0,2238,2239,3,788,394,0,2239,2240,5,38,0,0,2240,2242,1,0,0,0,2241,2213,1,0,0,0,2241,2217,1,0,0,0,2241,2221,1,0,0,0,2241,2225,1,0,0,0,2241,2237,1,0,0,0,2242,283,1,0,0,0,2243,2259,3,286,143,0,2244,2259,5,33,0,0,2245,2259,5,39,0,0,2246,2248,5,27,0,0,2247,2249,3,276,138,0,2248,2247,1,0,0,0,2248,2249,1,0,0,0,2249,2250,1,0,0,0,2250,2259,5,28,0,0,2251,2252,5,37,0,0,2252,2253,5,18,0,0,2253,2254,3,276,138,0,2254,2255,5,18,0,0,2255,2256,5,38,0,0,2256,2259,1,0,0,0,2257,2259,3,288,144,0,2258,2243,1,0,0,0,2258,2244,1,0,0,0,2258,2245,1,0,0,0,2258,2246,1,0,0,0,2258,2251,1,0,0,0,2258,2257,1,0,0,0,2259,285,1,0,0,0,2260,2261,3,312,156,0,2261,287,1,0,0,0,2262,2263,5,221,0,0,2263,2264,5,27,0,0,2264,2269,3,276,138,0,2265,2266,5,26,0,0,2266,2268,3,276,138,0,2267,2265,1,0,0,0,2268,2271,1,0,0,0,2269,2267,1,0,0,0,2269,2270,1,0,0,0,2270,2272,1,0,0,0,2271,2269,1,0,0,0,2272,2273,5,28,0,0,2273,289,1,0,0,0,2274,2275,5,272,0,0,2275,2276,3,292,146,0,2276,291,1,0,0,0,2277,2282,3,294,147,0,2278,2279,5,26,0,0,2279,2281,3,294,147,0,2280,2278,1,0,0,0,2281,2284,1,0,0,0,2282,2280,1,0,0,0,2282,2283,1,0,0,0,2283,293,1,0,0,0,2284,2282,1,0,0,0,2285,2286,3,296,148,0,2286,2287,5,2,0,0,2287,2288,5,27,0,0,2288,2289,3,298,149,0,2289,2290,5,28,0,0,2290,295,1,0,0,0,2291,2292,3,312,156,0,2292,297,1,0,0,0,2293,2298,3,300,150,0,2294,2295,5,26,0,0,2295,2297,3,300,150,0,2296,2294,1,0,0,0,2297,2300,1,0,0,0,2298,2296,1,0,0,0,2298,2299,1,0,0,0,2299,299,1,0,0,0,2300,2298,1,0,0,0,2301,2302,3,312,156,0,2302,301,1,0,0,0,2303,2308,3,304,152,0,2304,2305,5,26,0,0,2305,2307,3,304,152,0,2306,2304,1,0,0,0,2307,2310,1,0,0,0,2308,2306,1,0,0,0,2308,2309,1,0,0,0,2309,303,1,0,0,0,2310,2308,1,0,0,0,2311,2312,3,306,153,0,2312,2313,5,55,0,0,2313,2314,3,308,154,0,2314,305,1,0,0,0,2315,2316,3,312,156,0,2316,307,1,0,0,0,2317,2318,3,310,155,0,2318,309,1,0,0,0,2319,2320,3,14,7,0,2320,311,1,0,0,0,2321,2322,3,704,352,0,2322,313,1,0,0,0,2323,2324,5,210,0,0,2324,2325,5,69,0,0,2325,2326,3,230,115,0,2326,315,1,0,0,0,2327,2329,5,57,0,0,2328,2327,1,0,0,0,2328,2329,1,0,0,0,2329,2330,1,0,0,0,2330,2331,3,314,157,0,2331,317,1,0,0,0,2332,2334,5,148,0,0,2333,2335,5,80,0,0,2334,2333,1,0,0,0,2334,2335,1,0,0,0,2335,2336,1,0,0,0,2336,2337,5,69,0,0,2337,2338,3,252,126,0,2338,2341,3,320,160,0,2339,2340,5,312,0,0,2340,2342,3,724,362,0,2341,2339,1,0,0,0,2341,2342,1,0,0,0,2342,319,1,0,0,0,2343,2348,3,322,161,0,2344,2345,5,26,0,0,2345,2347,3,322,161,0,2346,2344,1,0,0,0,2347,2350,1,0,0,0,2348,2346,1,0,0,0,2348,2349,1,0,0,0,2349,321,1,0,0,0,2350,2348,1,0,0,0,2351,2357,3,324,162,0,2352,2357,3,328,164,0,2353,2357,3,330,165,0,2354,2357,3,332,166,0,2355,2357,3,334,167,0,2356,2351,1,0,0,0,2356,2352,1,0,0,0,2356,2353,1,0,0,0,2356,2354,1,0,0,0,2356,2355,1,0,0,0,2357,323,1,0,0,0,2358,2359,3,128,64,0,2359,325,1,0,0,0,2360,2365,3,324,162,0,2361,2362,5,26,0,0,2362,2364,3,324,162,0,2363,2361,1,0,0,0,2364,2367,1,0,0,0,2365,2363,1,0,0,0,2365,2366,1,0,0,0,2366,327,1,0,0,0,2367,2365,1,0,0,0,2368,2369,5,254,0,0,2369,2370,5,27,0,0,2370,2371,3,326,163,0,2371,2372,5,28,0,0,2372,329,1,0,0,0,2373,2374,5,89,0,0,2374,2375,5,27,0,0,2375,2376,3,326,163,0,2376,2377,5,28,0,0,2377,331,1,0,0,0,2378,2379,5,149,0,0,2379,2380,5,265,0,0,2380,2381,5,27,0,0,2381,2382,3,320,160,0,2382,2383,5,28,0,0,2383,333,1,0,0,0,2384,2385,5,153,0,0,2385,2386,5,27,0,0,2386,2387,3,14,7,0,2387,2388,5,26,0,0,2388,2389,3,14,7,0,2389,2390,5,26,0,0,2390,2391,3,14,7,0,2391,2392,5,26,0,0,2392,2393,3,14,7,0,2393,2394,5,28,0,0,2394,335,1,0,0,0,2395,2396,3,748,374,0,2396,2397,5,20,0,0,2397,2405,1,0,0,0,2398,2402,3,14,7,0,2399,2400,5,55,0,0,2400,2403,3,726,363,0,2401,2403,3,744,372,0,2402,2399,1,0,0,0,2402,2401,1,0,0,0,2402,2403,1,0,0,0,2403,2405,1,0,0,0,2404,2395,1,0,0,0,2404,2398,1,0,0,0,2405,337,1,0,0,0,2406,2408,5,53,0,0,2407,2406,1,0,0,0,2407,2408,1,0,0,0,2408,2409,1,0,0,0,2409,2420,3,344,172,0,2410,2412,3,358,179,0,2411,2413,5,53,0,0,2412,2411,1,0,0,0,2412,2413,1,0,0,0,2413,2414,1,0,0,0,2414,2416,3,344,172,0,2415,2417,3,360,180,0,2416,2415,1,0,0,0,2416,2417,1,0,0,0,2417,2419,1,0,0,0,2418,2410,1,0,0,0,2419,2422,1,0,0,0,2420,2418,1,0,0,0,2420,2421,1,0,0,0,2421,339,1,0,0,0,2422,2420,1,0,0,0,2423,2426,3,120,60,0,2424,2425,5,55,0,0,2425,2427,3,724,362,0,2426,2424,1,0,0,0,2426,2427,1,0,0,0,2427,341,1,0,0,0,2428,2437,3,340,170,0,2429,2430,5,27,0,0,2430,2432,3,130,65,0,2431,2433,5,26,0,0,2432,2431,1,0,0,0,2432,2433,1,0,0,0,2433,2434,1,0,0,0,2434,2435,5,28,0,0,2435,2437,1,0,0,0,2436,2428,1,0,0,0,2436,2429,1,0,0,0,2437,343,1,0,0,0,2438,2448,3,346,173,0,2439,2446,5,137,0,0,2440,2442,7,13,0,0,2441,2440,1,0,0,0,2441,2442,1,0,0,0,2442,2443,1,0,0,0,2443,2444,5,69,0,0,2444,2447,3,342,171,0,2445,2447,5,78,0,0,2446,2441,1,0,0,0,2446,2445,1,0,0,0,2447,2449,1,0,0,0,2448,2439,1,0,0,0,2448,2449,1,0,0,0,2449,345,1,0,0,0,2450,2452,3,348,174,0,2451,2453,3,256,128,0,2452,2451,1,0,0,0,2452,2453,1,0,0,0,2453,2462,1,0,0,0,2454,2455,5,55,0,0,2455,2458,3,724,362,0,2456,2458,3,744,372,0,2457,2454,1,0,0,0,2457,2456,1,0,0,0,2458,2460,1,0,0,0,2459,2461,3,114,57,0,2460,2459,1,0,0,0,2460,2461,1,0,0,0,2461,2463,1,0,0,0,2462,2457,1,0,0,0,2462,2463,1,0,0,0,2463,2466,1,0,0,0,2464,2467,3,350,175,0,2465,2467,3,352,176,0,2466,2464,1,0,0,0,2466,2465,1,0,0,0,2466,2467,1,0,0,0,2467,347,1,0,0,0,2468,2478,3,572,286,0,2469,2470,5,27,0,0,2470,2471,3,232,116,0,2471,2472,5,28,0,0,2472,2478,1,0,0,0,2473,2474,5,27,0,0,2474,2475,3,370,185,0,2475,2476,5,28,0,0,2476,2478,1,0,0,0,2477,2468,1,0,0,0,2477,2469,1,0,0,0,2477,2473,1,0,0,0,2478,349,1,0,0,0,2479,2480,5,257,0,0,2480,2481,3,14,7,0,2481,351,1,0,0,0,2482,2483,5,279,0,0,2483,2484,3,354,177,0,2484,2485,5,27,0,0,2485,2486,3,14,7,0,2486,2488,5,28,0,0,2487,2489,3,356,178,0,2488,2487,1,0,0,0,2488,2489,1,0,0,0,2489,353,1,0,0,0,2490,2491,7,14,0,0,2491,355,1,0,0,0,2492,2493,5,239,0,0,2493,2494,5,27,0,0,2494,2495,3,14,7,0,2495,2496,5,28,0,0,2496,357,1,0,0,0,2497,2522,5,26,0,0,2498,2500,5,193,0,0,2499,2498,1,0,0,0,2499,2500,1,0,0,0,2500,2518,1,0,0,0,2501,2503,5,178,0,0,2502,2504,7,15,0,0,2503,2502,1,0,0,0,2503,2504,1,0,0,0,2504,2512,1,0,0,0,2505,2507,5,251,0,0,2506,2508,7,15,0,0,2507,2506,1,0,0,0,2507,2508,1,0,0,0,2508,2512,1,0,0,0,2509,2512,5,126,0,0,2510,2512,5,143,0,0,2511,2501,1,0,0,0,2511,2505,1,0,0,0,2511,2509,1,0,0,0,2511,2510,1,0,0,0,2511,2512,1,0,0,0,2512,2514,1,0,0,0,2513,2515,5,212,0,0,2514,2513,1,0,0,0,2514,2515,1,0,0,0,2515,2519,1,0,0,0,2516,2519,5,165,0,0,2517,2519,5,88,0,0,2518,2511,1,0,0,0,2518,2516,1,0,0,0,2518,2517,1,0,0,0,2519,2520,1,0,0,0,2520,2522,5,172,0,0,2521,2497,1,0,0,0,2521,2499,1,0,0,0,2522,359,1,0,0,0,2523,2524,5,204,0,0,2524,2528,3,14,7,0,2525,2526,5,303,0,0,2526,2528,3,118,59,0,2527,2523,1,0,0,0,2527,2525,1,0,0,0,2528,361,1,0,0,0,2529,2539,5,248,0,0,2530,2540,5,20,0,0,2531,2536,3,724,362,0,2532,2533,5,26,0,0,2533,2535,3,724,362,0,2534,2532,1,0,0,0,2535,2538,1,0,0,0,2536,2534,1,0,0,0,2536,2537,1,0,0,0,2537,2540,1,0,0,0,2538,2536,1,0,0,0,2539,2530,1,0,0,0,2539,2531,1,0,0,0,2540,363,1,0,0,0,2541,2554,5,166,0,0,2542,2543,5,166,0,0,2543,2544,5,209,0,0,2544,2554,5,44,0,0,2545,2546,5,166,0,0,2546,2547,5,209,0,0,2547,2554,5,249,0,0,2548,2549,5,166,0,0,2549,2550,5,209,0,0,2550,2554,5,155,0,0,2551,2554,5,300,0,0,2552,2554,5,240,0,0,2553,2541,1,0,0,0,2553,2542,1,0,0,0,2553,2545,1,0,0,0,2553,2548,1,0,0,0,2553,2551,1,0,0,0,2553,2552,1,0,0,0,2554,2555,1,0,0,0,2555,2556,5,169,0,0,2556,2557,3,588,294,0,2557,2559,3,368,184,0,2558,2560,3,362,181,0,2559,2558,1,0,0,0,2559,2560,1,0,0,0,2560,365,1,0,0,0,2561,2573,5,166,0,0,2562,2563,5,166,0,0,2563,2564,5,209,0,0,2564,2573,5,44,0,0,2565,2566,5,166,0,0,2566,2567,5,209,0,0,2567,2573,5,249,0,0,2568,2569,5,166,0,0,2569,2570,5,209,0,0,2570,2573,5,155,0,0,2571,2573,5,240,0,0,2572,2561,1,0,0,0,2572,2562,1,0,0,0,2572,2565,1,0,0,0,2572,2568,1,0,0,0,2572,2571,1,0,0,0,2573,2574,1,0,0,0,2574,2575,5,169,0,0,2575,2576,3,588,294,0,2576,2577,3,368,184,0,2577,367,1,0,0,0,2578,2580,3,114,57,0,2579,2578,1,0,0,0,2579,2580,1,0,0,0,2580,2581,1,0,0,0,2581,2585,3,372,186,0,2582,2583,5,98,0,0,2583,2585,5,305,0,0,2584,2579,1,0,0,0,2584,2582,1,0,0,0,2585,369,1,0,0,0,2586,2587,5,305,0,0,2587,2588,3,374,187,0,2588,371,1,0,0,0,2589,2592,3,370,185,0,2590,2592,3,232,116,0,2591,2589,1,0,0,0,2591,2590,1,0,0,0,2592,373,1,0,0,0,2593,2598,3,376,188,0,2594,2595,5,26,0,0,2595,2597,3,376,188,0,2596,2594,1,0,0,0,2597,2600,1,0,0,0,2598,2596,1,0,0,0,2598,2599,1,0,0,0,2599,375,1,0,0,0,2600,2598,1,0,0,0,2601,2602,5,27,0,0,2602,2603,3,112,56,0,2603,2604,5,28,0,0,2604,377,1,0,0,0,2605,2608,3,112,56,0,2606,2608,3,232,116,0,2607,2605,1,0,0,0,2607,2606,1,0,0,0,2608,379,1,0,0,0,2609,2612,5,87,0,0,2610,2611,5,209,0,0,2611,2613,5,240,0,0,2612,2610,1,0,0,0,2612,2613,1,0,0,0,2613,2614,1,0,0,0,2614,2615,5,131,0,0,2615,2616,5,94,0,0,2616,2620,5,268,0,0,2617,2618,5,154,0,0,2618,2619,5,196,0,0,2619,2621,5,128,0,0,2620,2617,1,0,0,0,2620,2621,1,0,0,0,2621,2622,1,0,0,0,2622,2623,3,582,291,0,2623,2624,3,426,213,0,2624,381,1,0,0,0,2625,2626,5,49,0,0,2626,2627,5,131,0,0,2627,2628,5,94,0,0,2628,2629,5,268,0,0,2629,2630,3,582,291,0,2630,2635,3,384,192,0,2631,2632,5,26,0,0,2632,2634,3,384,192,0,2633,2631,1,0,0,0,2634,2637,1,0,0,0,2635,2633,1,0,0,0,2635,2636,1,0,0,0,2636,383,1,0,0,0,2637,2635,1,0,0,0,2638,2642,3,456,228,0,2639,2642,3,458,229,0,2640,2642,3,460,230,0,2641,2638,1,0,0,0,2641,2639,1,0,0,0,2641,2640,1,0,0,0,2642,385,1,0,0,0,2643,2644,5,112,0,0,2644,2645,5,131,0,0,2645,2646,5,94,0,0,2646,2649,5,268,0,0,2647,2648,5,154,0,0,2648,2650,5,128,0,0,2649,2647,1,0,0,0,2649,2650,1,0,0,0,2650,2651,1,0,0,0,2651,2652,3,582,291,0,2652,387,1,0,0,0,2653,2654,5,87,0,0,2654,2655,5,307,0,0,2655,2656,3,582,291,0,2656,2657,3,426,213,0,2657,2658,5,55,0,0,2658,2659,3,232,116,0,2659,389,1,0,0,0,2660,2661,5,112,0,0,2661,2662,5,307,0,0,2662,2663,3,582,291,0,2663,391,1,0,0,0,2664,2665,5,300,0,0,2665,2666,5,200,0,0,2666,2667,3,582,291,0,2667,2668,5,27,0,0,2668,2669,5,292,0,0,2669,2670,3,416,208,0,2670,2672,5,28,0,0,2671,2673,3,396,198,0,2672,2671,1,0,0,0,2672,2673,1,0,0,0,2673,393,1,0,0,0,2674,2675,5,87,0,0,2675,2679,5,200,0,0,2676,2677,5,154,0,0,2677,2678,5,196,0,0,2678,2680,5,128,0,0,2679,2676,1,0,0,0,2679,2680,1,0,0,0,2680,2681,1,0,0,0,2681,2682,3,582,291,0,2682,2683,5,27,0,0,2683,2684,5,292,0,0,2684,2685,3,416,208,0,2685,2687,5,28,0,0,2686,2688,3,396,198,0,2687,2686,1,0,0,0,2687,2688,1,0,0,0,2688,395,1,0,0,0,2689,2690,5,312,0,0,2690,2691,3,414,207,0,2691,397,1,0,0,0,2692,2693,5,49,0,0,2693,2694,5,200,0,0,2694,2695,3,582,291,0,2695,2696,5,27,0,0,2696,2697,5,292,0,0,2697,2698,3,416,208,0,2698,2699,5,28,0,0,2699,2700,3,400,200,0,2700,399,1,0,0,0,2701,2702,5,264,0,0,2702,2703,3,414,207,0,2703,401,1,0,0,0,2704,2705,5,112,0,0,2705,2708,5,200,0,0,2706,2707,5,154,0,0,2707,2709,5,128,0,0,2708,2706,1,0,0,0,2708,2709,1,0,0,0,2709,2710,1,0,0,0,2710,2711,3,582,291,0,2711,2712,5,27,0,0,2712,2713,5,292,0,0,2713,2714,3,416,208,0,2714,2716,5,28,0,0,2715,2717,3,404,202,0,2716,2715,1,0,0,0,2716,2717,1,0,0,0,2717,403,1,0,0,0,2718,2719,5,312,0,0,2719,2720,3,414,207,0,2720,405,1,0,0,0,2721,2725,3,752,376,0,2722,2725,3,144,72,0,2723,2725,5,316,0,0,2724,2721,1,0,0,0,2724,2722,1,0,0,0,2724,2723,1,0,0,0,2725,407,1,0,0,0,2726,2727,3,726,363,0,2727,2728,5,2,0,0,2728,2729,3,406,203,0,2729,409,1,0,0,0,2730,2731,3,726,363,0,2731,411,1,0,0,0,2732,2735,3,408,204,0,2733,2735,3,410,205,0,2734,2732,1,0,0,0,2734,2733,1,0,0,0,2735,413,1,0,0,0,2736,2749,3,412,206,0,2737,2738,5,27,0,0,2738,2743,3,412,206,0,2739,2740,5,26,0,0,2740,2742,3,412,206,0,2741,2739,1,0,0,0,2742,2745,1,0,0,0,2743,2741,1,0,0,0,2743,2744,1,0,0,0,2744,2746,1,0,0,0,2745,2743,1,0,0,0,2746,2747,5,28,0,0,2747,2749,1,0,0,0,2748,2736,1,0,0,0,2748,2737,1,0,0,0,2749,415,1,0,0,0,2750,2751,3,726,363,0,2751,417,1,0,0,0,2752,2755,5,87,0,0,2753,2754,5,209,0,0,2754,2756,5,240,0,0,2755,2753,1,0,0,0,2755,2756,1,0,0,0,2756,2765,1,0,0,0,2757,2766,5,277,0,0,2758,2766,5,280,0,0,2759,2760,5,131,0,0,2760,2766,5,277,0,0,2761,2762,5,282,0,0,2762,2766,5,277,0,0,2763,2764,5,283,0,0,2764,2766,5,277,0,0,2765,2757,1,0,0,0,2765,2758,1,0,0,0,2765,2759,1,0,0,0,2765,2761,1,0,0,0,2765,2763,1,0,0,0,2766,2770,1,0,0,0,2767,2768,5,154,0,0,2768,2769,5,196,0,0,2769,2771,5,128,0,0,2770,2767,1,0,0,0,2770,2771,1,0,0,0,2771,2772,1,0,0,0,2772,2773,3,586,293,0,2773,2774,5,27,0,0,2774,2779,3,420,210,0,2775,2776,5,26,0,0,2776,2778,3,420,210,0,2777,2775,1,0,0,0,2778,2781,1,0,0,0,2779,2777,1,0,0,0,2779,2780,1,0,0,0,2780,2783,1,0,0,0,2781,2779,1,0,0,0,2782,2784,5,26,0,0,2783,2782,1,0,0,0,2783,2784,1,0,0,0,2784,2785,1,0,0,0,2785,2787,5,28,0,0,2786,2788,3,422,211,0,2787,2786,1,0,0,0,2787,2788,1,0,0,0,2788,2790,1,0,0,0,2789,2791,3,424,212,0,2790,2789,1,0,0,0,2790,2791,1,0,0,0,2791,2793,1,0,0,0,2792,2794,3,426,213,0,2793,2792,1,0,0,0,2793,2794,1,0,0,0,2794,2796,1,0,0,0,2795,2797,3,428,214,0,2796,2795,1,0,0,0,2796,2797,1,0,0,0,2797,2799,1,0,0,0,2798,2800,3,432,216,0,2799,2798,1,0,0,0,2799,2800,1,0,0,0,2800,419,1,0,0,0,2801,2808,3,476,238,0,2802,2808,3,484,242,0,2803,2808,3,486,243,0,2804,2808,3,508,254,0,2805,2808,3,494,247,0,2806,2808,3,728,364,0,2807,2801,1,0,0,0,2807,2802,1,0,0,0,2807,2803,1,0,0,0,2807,2804,1,0,0,0,2807,2805,1,0,0,0,2807,2806,1,0,0,0,2808,421,1,0,0,0,2809,2810,5,162,0,0,2810,2811,5,27,0,0,2811,2816,3,584,292,0,2812,2813,5,26,0,0,2813,2815,3,584,292,0,2814,2812,1,0,0,0,2815,2818,1,0,0,0,2816,2814,1,0,0,0,2816,2817,1,0,0,0,2817,2819,1,0,0,0,2818,2816,1,0,0,0,2819,2820,5,28,0,0,2820,423,1,0,0,0,2821,2822,5,215,0,0,2822,2823,5,69,0,0,2823,2824,5,151,0,0,2824,2825,3,114,57,0,2825,425,1,0,0,0,2826,2827,5,312,0,0,2827,2828,5,27,0,0,2828,2833,3,430,215,0,2829,2830,5,26,0,0,2830,2832,3,430,215,0,2831,2829,1,0,0,0,2832,2835,1,0,0,0,2833,2831,1,0,0,0,2833,2834,1,0,0,0,2834,2836,1,0,0,0,2835,2833,1,0,0,0,2836,2837,5,28,0,0,2837,427,1,0,0,0,2838,2839,5,280,0,0,2839,2840,3,584,292,0,2840,429,1,0,0,0,2841,2842,3,724,362,0,2842,2843,5,2,0,0,2843,2844,3,506,253,0,2844,431,1,0,0,0,2845,2846,5,55,0,0,2846,2847,3,372,186,0,2847,433,1,0,0,0,2848,2849,5,49,0,0,2849,2850,5,277,0,0,2850,2851,3,586,293,0,2851,2856,3,436,218,0,2852,2853,5,26,0,0,2853,2855,3,436,218,0,2854,2852,1,0,0,0,2855,2858,1,0,0,0,2856,2854,1,0,0,0,2856,2857,1,0,0,0,2857,435,1,0,0,0,2858,2856,1,0,0,0,2859,2875,3,446,223,0,2860,2875,3,448,224,0,2861,2875,3,450,225,0,2862,2875,3,452,226,0,2863,2875,3,454,227,0,2864,2875,3,456,228,0,2865,2875,3,458,229,0,2866,2875,3,460,230,0,2867,2875,3,462,231,0,2868,2875,3,464,232,0,2869,2875,3,466,233,0,2870,2875,3,470,235,0,2871,2875,3,472,236,0,2872,2875,3,474,237,0,2873,2875,3,468,234,0,2874,2859,1,0,0,0,2874,2860,1,0,0,0,2874,2861,1,0,0,0,2874,2862,1,0,0,0,2874,2863,1,0,0,0,2874,2864,1,0,0,0,2874,2865,1,0,0,0,2874,2866,1,0,0,0,2874,2867,1,0,0,0,2874,2868,1,0,0,0,2874,2869,1,0,0,0,2874,2870,1,0,0,0,2874,2871,1,0,0,0,2874,2872,1,0,0,0,2874,2873,1,0,0,0,2875,437,1,0,0,0,2876,2877,5,49,0,0,2877,2878,5,131,0,0,2878,2879,5,277,0,0,2879,2880,3,586,293,0,2880,2885,3,440,220,0,2881,2882,5,26,0,0,2882,2884,3,440,220,0,2883,2881,1,0,0,0,2884,2887,1,0,0,0,2885,2883,1,0,0,0,2885,2886,1,0,0,0,2886,439,1,0,0,0,2887,2885,1,0,0,0,2888,2894,3,446,223,0,2889,2894,3,448,224,0,2890,2894,3,456,228,0,2891,2894,3,458,229,0,2892,2894,3,460,230,0,2893,2888,1,0,0,0,2893,2889,1,0,0,0,2893,2890,1,0,0,0,2893,2891,1,0,0,0,2893,2892,1,0,0,0,2894,441,1,0,0,0,2895,2896,5,49,0,0,2896,2897,5,280,0,0,2897,2898,3,582,291,0,2898,2903,3,444,222,0,2899,2900,5,26,0,0,2900,2902,3,444,222,0,2901,2899,1,0,0,0,2902,2905,1,0,0,0,2903,2901,1,0,0,0,2903,2904,1,0,0,0,2904,443,1,0,0,0,2905,2903,1,0,0,0,2906,2909,3,446,223,0,2907,2909,3,448,224,0,2908,2906,1,0,0,0,2908,2907,1,0,0,0,2909,445,1,0,0,0,2910,2912,5,46,0,0,2911,2913,5,77,0,0,2912,2911,1,0,0,0,2912,2913,1,0,0,0,2913,2914,1,0,0,0,2914,2915,3,476,238,0,2915,447,1,0,0,0,2916,2918,5,112,0,0,2917,2919,5,77,0,0,2918,2917,1,0,0,0,2918,2919,1,0,0,0,2919,2920,1,0,0,0,2920,2921,3,724,362,0,2921,449,1,0,0,0,2922,2923,5,49,0,0,2923,2924,5,77,0,0,2924,2925,3,724,362,0,2925,2926,5,264,0,0,2926,2927,3,478,239,0,2927,451,1,0,0,0,2928,2929,5,46,0,0,2929,2930,3,508,254,0,2930,453,1,0,0,0,2931,2932,5,49,0,0,2932,2933,5,134,0,0,2933,2934,3,724,362,0,2934,2935,5,264,0,0,2935,2936,3,724,362,0,2936,2937,3,514,257,0,2937,455,1,0,0,0,2938,2939,5,264,0,0,2939,2940,3,724,362,0,2940,2941,3,506,253,0,2941,457,1,0,0,0,2942,2943,5,264,0,0,2943,2944,5,27,0,0,2944,2949,3,504,252,0,2945,2946,5,26,0,0,2946,2948,3,504,252,0,2947,2945,1,0,0,0,2948,2951,1,0,0,0,2949,2947,1,0,0,0,2949,2950,1,0,0,0,2950,2952,1,0,0,0,2951,2949,1,0,0,0,2952,2953,5,28,0,0,2953,459,1,0,0,0,2954,2955,5,242,0,0,2955,2956,5,27,0,0,2956,2961,3,724,362,0,2957,2958,5,26,0,0,2958,2960,3,724,362,0,2959,2957,1,0,0,0,2960,2963,1,0,0,0,2961,2959,1,0,0,0,2961,2962,1,0,0,0,2962,2964,1,0,0,0,2963,2961,1,0,0,0,2964,2965,5,28,0,0,2965,461,1,0,0,0,2966,2967,5,46,0,0,2967,2968,3,486,243,0,2968,463,1,0,0,0,2969,2970,5,112,0,0,2970,2971,5,160,0,0,2971,2972,3,724,362,0,2972,465,1,0,0,0,2973,2974,5,238,0,0,2974,2975,5,286,0,0,2975,2976,3,736,368,0,2976,467,1,0,0,0,2977,2978,5,238,0,0,2978,2979,5,160,0,0,2979,2980,3,724,362,0,2980,2981,5,286,0,0,2981,2982,3,724,362,0,2982,469,1,0,0,0,2983,2984,5,46,0,0,2984,2985,3,494,247,0,2985,471,1,0,0,0,2986,2987,5,49,0,0,2987,2988,5,74,0,0,2988,2989,3,724,362,0,2989,2990,3,502,251,0,2990,473,1,0,0,0,2991,2992,5,112,0,0,2992,2993,5,74,0,0,2993,2994,3,724,362,0,2994,475,1,0,0,0,2995,2996,3,728,364,0,2996,2998,3,204,102,0,2997,2999,3,478,239,0,2998,2997,1,0,0,0,2998,2999,1,0,0,0,2999,3e3,1,0,0,0,3e3,3001,3,480,240,0,3001,477,1,0,0,0,3002,3003,5,134,0,0,3003,3004,3,724,362,0,3004,479,1,0,0,0,3005,3007,5,196,0,0,3006,3005,1,0,0,0,3006,3007,1,0,0,0,3007,3008,1,0,0,0,3008,3010,5,198,0,0,3009,3006,1,0,0,0,3009,3010,1,0,0,0,3010,3013,1,0,0,0,3011,3012,5,98,0,0,3012,3014,3,14,7,0,3013,3011,1,0,0,0,3013,3014,1,0,0,0,3014,481,1,0,0,0,3015,3017,3,724,362,0,3016,3018,7,9,0,0,3017,3016,1,0,0,0,3017,3018,1,0,0,0,3018,483,1,0,0,0,3019,3020,5,226,0,0,3020,3021,5,176,0,0,3021,3022,5,27,0,0,3022,3027,3,724,362,0,3023,3024,5,26,0,0,3024,3026,3,724,362,0,3025,3023,1,0,0,0,3026,3029,1,0,0,0,3027,3025,1,0,0,0,3027,3028,1,0,0,0,3028,3030,1,0,0,0,3029,3027,1,0,0,0,3030,3031,5,28,0,0,3031,3059,1,0,0,0,3032,3033,5,215,0,0,3033,3034,5,69,0,0,3034,3035,5,27,0,0,3035,3040,3,724,362,0,3036,3037,5,26,0,0,3037,3039,3,724,362,0,3038,3036,1,0,0,0,3039,3042,1,0,0,0,3040,3038,1,0,0,0,3040,3041,1,0,0,0,3041,3043,1,0,0,0,3042,3040,1,0,0,0,3043,3044,5,28,0,0,3044,3059,1,0,0,0,3045,3046,5,210,0,0,3046,3047,5,69,0,0,3047,3048,5,27,0,0,3048,3053,3,482,241,0,3049,3050,5,26,0,0,3050,3052,3,482,241,0,3051,3049,1,0,0,0,3052,3055,1,0,0,0,3053,3051,1,0,0,0,3053,3054,1,0,0,0,3054,3056,1,0,0,0,3055,3053,1,0,0,0,3056,3057,5,28,0,0,3057,3059,1,0,0,0,3058,3019,1,0,0,0,3058,3032,1,0,0,0,3058,3045,1,0,0,0,3059,485,1,0,0,0,3060,3061,5,160,0,0,3061,3062,3,724,362,0,3062,3083,3,488,244,0,3063,3064,5,312,0,0,3064,3065,5,27,0,0,3065,3066,3,724,362,0,3066,3067,5,2,0,0,3067,3075,3,724,362,0,3068,3069,5,26,0,0,3069,3070,3,724,362,0,3070,3071,5,2,0,0,3071,3072,3,724,362,0,3072,3074,1,0,0,0,3073,3068,1,0,0,0,3074,3077,1,0,0,0,3075,3073,1,0,0,0,3075,3076,1,0,0,0,3076,3079,1,0,0,0,3077,3075,1,0,0,0,3078,3080,5,26,0,0,3079,3078,1,0,0,0,3079,3080,1,0,0,0,3080,3081,1,0,0,0,3081,3082,5,28,0,0,3082,3084,1,0,0,0,3083,3063,1,0,0,0,3083,3084,1,0,0,0,3084,3085,1,0,0,0,3085,3086,5,204,0,0,3086,3087,5,27,0,0,3087,3092,3,728,364,0,3088,3089,5,26,0,0,3089,3091,3,728,364,0,3090,3088,1,0,0,0,3091,3094,1,0,0,0,3092,3090,1,0,0,0,3092,3093,1,0,0,0,3093,3095,1,0,0,0,3094,3092,1,0,0,0,3095,3108,5,28,0,0,3096,3097,5,86,0,0,3097,3098,5,27,0,0,3098,3103,3,728,364,0,3099,3100,5,26,0,0,3100,3102,3,728,364,0,3101,3099,1,0,0,0,3102,3105,1,0,0,0,3103,3101,1,0,0,0,3103,3104,1,0,0,0,3104,3106,1,0,0,0,3105,3103,1,0,0,0,3106,3107,5,28,0,0,3107,3109,1,0,0,0,3108,3096,1,0,0,0,3108,3109,1,0,0,0,3109,487,1,0,0,0,3110,3113,3,490,245,0,3111,3113,3,492,246,0,3112,3110,1,0,0,0,3112,3111,1,0,0,0,3113,489,1,0,0,0,3114,3116,5,146,0,0,3115,3117,5,296,0,0,3116,3115,1,0,0,0,3116,3117,1,0,0,0,3117,3119,1,0,0,0,3118,3120,7,16,0,0,3119,3118,1,0,0,0,3119,3120,1,0,0,0,3120,491,1,0,0,0,3121,3122,5,183,0,0,3122,493,1,0,0,0,3123,3124,5,74,0,0,3124,3125,3,724,362,0,3125,3126,5,312,0,0,3126,3127,5,27,0,0,3127,3128,3,496,248,0,3128,3129,5,28,0,0,3129,495,1,0,0,0,3130,3135,3,498,249,0,3131,3132,5,26,0,0,3132,3134,3,498,249,0,3133,3131,1,0,0,0,3134,3137,1,0,0,0,3135,3133,1,0,0,0,3135,3136,1,0,0,0,3136,497,1,0,0,0,3137,3135,1,0,0,0,3138,3139,3,724,362,0,3139,3140,5,2,0,0,3140,3141,3,500,250,0,3141,499,1,0,0,0,3142,3143,3,14,7,0,3143,501,1,0,0,0,3144,3151,5,108,0,0,3145,3146,5,264,0,0,3146,3147,5,27,0,0,3147,3148,3,496,248,0,3148,3149,5,28,0,0,3149,3151,1,0,0,0,3150,3144,1,0,0,0,3150,3145,1,0,0,0,3151,503,1,0,0,0,3152,3153,3,724,362,0,3153,3154,5,2,0,0,3154,3155,3,506,253,0,3155,505,1,0,0,0,3156,3169,3,706,353,0,3157,3169,5,316,0,0,3158,3169,3,788,394,0,3159,3169,3,516,258,0,3160,3161,3,14,7,0,3161,3162,5,204,0,0,3162,3165,3,724,362,0,3163,3164,5,55,0,0,3164,3166,7,17,0,0,3165,3163,1,0,0,0,3165,3166,1,0,0,0,3166,3169,1,0,0,0,3167,3169,3,784,392,0,3168,3156,1,0,0,0,3168,3157,1,0,0,0,3168,3158,1,0,0,0,3168,3159,1,0,0,0,3168,3160,1,0,0,0,3168,3167,1,0,0,0,3169,507,1,0,0,0,3170,3171,5,134,0,0,3171,3172,3,724,362,0,3172,3173,3,510,255,0,3173,509,1,0,0,0,3174,3183,5,27,0,0,3175,3180,3,512,256,0,3176,3177,5,26,0,0,3177,3179,3,512,256,0,3178,3176,1,0,0,0,3179,3182,1,0,0,0,3180,3178,1,0,0,0,3180,3181,1,0,0,0,3181,3184,1,0,0,0,3182,3180,1,0,0,0,3183,3175,1,0,0,0,3183,3184,1,0,0,0,3184,3185,1,0,0,0,3185,3186,5,28,0,0,3186,511,1,0,0,0,3187,3188,3,724,362,0,3188,3189,5,2,0,0,3189,3190,3,514,257,0,3190,513,1,0,0,0,3191,3192,5,316,0,0,3192,515,1,0,0,0,3193,3194,5,27,0,0,3194,3199,3,518,259,0,3195,3196,5,26,0,0,3196,3198,3,518,259,0,3197,3195,1,0,0,0,3198,3201,1,0,0,0,3199,3197,1,0,0,0,3199,3200,1,0,0,0,3200,3202,1,0,0,0,3201,3199,1,0,0,0,3202,3203,5,28,0,0,3203,3206,1,0,0,0,3204,3206,3,518,259,0,3205,3193,1,0,0,0,3205,3204,1,0,0,0,3206,517,1,0,0,0,3207,3208,5,27,0,0,3208,3213,3,142,71,0,3209,3210,5,26,0,0,3210,3212,3,142,71,0,3211,3209,1,0,0,0,3212,3215,1,0,0,0,3213,3211,1,0,0,0,3213,3214,1,0,0,0,3214,3216,1,0,0,0,3215,3213,1,0,0,0,3216,3217,5,28,0,0,3217,519,1,0,0,0,3218,3223,5,112,0,0,3219,3224,5,277,0,0,3220,3224,5,280,0,0,3221,3222,5,131,0,0,3222,3224,5,277,0,0,3223,3219,1,0,0,0,3223,3220,1,0,0,0,3223,3221,1,0,0,0,3224,3227,1,0,0,0,3225,3226,5,154,0,0,3226,3228,5,128,0,0,3227,3225,1,0,0,0,3227,3228,1,0,0,0,3228,3229,1,0,0,0,3229,3230,3,586,293,0,3230,521,1,0,0,0,3231,3232,5,87,0,0,3232,3233,5,302,0,0,3233,3235,3,532,266,0,3234,3236,3,534,267,0,3235,3234,1,0,0,0,3235,3236,1,0,0,0,3236,523,1,0,0,0,3237,3238,5,49,0,0,3238,3239,5,302,0,0,3239,3247,3,532,266,0,3240,3242,5,312,0,0,3241,3240,1,0,0,0,3241,3242,1,0,0,0,3242,3243,1,0,0,0,3243,3248,3,534,267,0,3244,3245,5,238,0,0,3245,3246,5,286,0,0,3246,3248,3,532,266,0,3247,3241,1,0,0,0,3247,3244,1,0,0,0,3248,525,1,0,0,0,3249,3250,5,87,0,0,3250,3251,5,148,0,0,3251,3265,3,532,266,0,3252,3253,5,312,0,0,3253,3254,5,302,0,0,3254,3259,3,532,266,0,3255,3256,5,26,0,0,3256,3258,3,532,266,0,3257,3255,1,0,0,0,3258,3261,1,0,0,0,3259,3257,1,0,0,0,3259,3260,1,0,0,0,3260,3263,1,0,0,0,3261,3259,1,0,0,0,3262,3264,5,26,0,0,3263,3262,1,0,0,0,3263,3264,1,0,0,0,3264,3266,1,0,0,0,3265,3252,1,0,0,0,3265,3266,1,0,0,0,3266,527,1,0,0,0,3267,3268,5,49,0,0,3268,3269,5,148,0,0,3269,3286,3,532,266,0,3270,3271,7,18,0,0,3271,3272,5,302,0,0,3272,3277,3,532,266,0,3273,3274,5,26,0,0,3274,3276,3,532,266,0,3275,3273,1,0,0,0,3276,3279,1,0,0,0,3277,3275,1,0,0,0,3277,3278,1,0,0,0,3278,3281,1,0,0,0,3279,3277,1,0,0,0,3280,3282,5,26,0,0,3281,3280,1,0,0,0,3281,3282,1,0,0,0,3282,3287,1,0,0,0,3283,3284,5,238,0,0,3284,3285,5,286,0,0,3285,3287,3,532,266,0,3286,3270,1,0,0,0,3286,3283,1,0,0,0,3287,529,1,0,0,0,3288,3289,5,112,0,0,3289,3292,7,19,0,0,3290,3291,5,154,0,0,3291,3293,5,128,0,0,3292,3290,1,0,0,0,3292,3293,1,0,0,0,3293,3294,1,0,0,0,3294,3299,3,532,266,0,3295,3296,5,26,0,0,3296,3298,3,532,266,0,3297,3295,1,0,0,0,3298,3301,1,0,0,0,3299,3297,1,0,0,0,3299,3300,1,0,0,0,3300,3303,1,0,0,0,3301,3299,1,0,0,0,3302,3304,5,26,0,0,3303,3302,1,0,0,0,3303,3304,1,0,0,0,3304,531,1,0,0,0,3305,3308,3,726,363,0,3306,3308,3,144,72,0,3307,3305,1,0,0,0,3307,3306,1,0,0,0,3308,533,1,0,0,0,3309,3311,5,117,0,0,3310,3309,1,0,0,0,3310,3311,1,0,0,0,3311,3312,1,0,0,0,3312,3313,5,217,0,0,3313,3314,3,14,7,0,3314,535,1,0,0,0,3315,3316,5,147,0,0,3316,3317,3,544,272,0,3317,3318,5,204,0,0,3318,3323,3,728,364,0,3319,3320,5,26,0,0,3320,3322,3,728,364,0,3321,3319,1,0,0,0,3322,3325,1,0,0,0,3323,3321,1,0,0,0,3323,3324,1,0,0,0,3324,3326,1,0,0,0,3325,3323,1,0,0,0,3326,3327,5,286,0,0,3327,3332,3,532,266,0,3328,3329,5,26,0,0,3329,3331,3,532,266,0,3330,3328,1,0,0,0,3331,3334,1,0,0,0,3332,3330,1,0,0,0,3332,3333,1,0,0,0,3333,3336,1,0,0,0,3334,3332,1,0,0,0,3335,3337,5,26,0,0,3336,3335,1,0,0,0,3336,3337,1,0,0,0,3337,3341,1,0,0,0,3338,3339,5,312,0,0,3339,3340,5,147,0,0,3340,3342,5,207,0,0,3341,3338,1,0,0,0,3341,3342,1,0,0,0,3342,537,1,0,0,0,3343,3347,5,250,0,0,3344,3345,5,147,0,0,3345,3346,5,207,0,0,3346,3348,5,140,0,0,3347,3344,1,0,0,0,3347,3348,1,0,0,0,3348,3349,1,0,0,0,3349,3350,3,544,272,0,3350,3351,5,204,0,0,3351,3356,3,728,364,0,3352,3353,5,26,0,0,3353,3355,3,728,364,0,3354,3352,1,0,0,0,3355,3358,1,0,0,0,3356,3354,1,0,0,0,3356,3357,1,0,0,0,3357,3359,1,0,0,0,3358,3356,1,0,0,0,3359,3360,5,142,0,0,3360,3365,3,532,266,0,3361,3362,5,26,0,0,3362,3364,3,532,266,0,3363,3361,1,0,0,0,3364,3367,1,0,0,0,3365,3363,1,0,0,0,3365,3366,1,0,0,0,3366,539,1,0,0,0,3367,3365,1,0,0,0,3368,3393,5,83,0,0,3369,3393,5,182,0,0,3370,3393,5,166,0,0,3371,3393,5,184,0,0,3372,3393,5,112,0,0,3373,3393,5,147,0,0,3374,3375,5,191,0,0,3375,3393,7,20,0,0,3376,3377,7,21,0,0,3377,3393,5,255,0,0,3378,3379,7,22,0,0,3379,3393,5,259,0,0,3380,3382,5,262,0,0,3381,3383,7,23,0,0,3382,3381,1,0,0,0,3382,3383,1,0,0,0,3383,3393,1,0,0,0,3384,3386,7,24,0,0,3385,3387,5,179,0,0,3386,3385,1,0,0,0,3386,3387,1,0,0,0,3387,3393,1,0,0,0,3388,3390,5,87,0,0,3389,3391,7,25,0,0,3390,3389,1,0,0,0,3390,3391,1,0,0,0,3391,3393,1,0,0,0,3392,3368,1,0,0,0,3392,3369,1,0,0,0,3392,3370,1,0,0,0,3392,3371,1,0,0,0,3392,3372,1,0,0,0,3392,3373,1,0,0,0,3392,3374,1,0,0,0,3392,3376,1,0,0,0,3392,3378,1,0,0,0,3392,3380,1,0,0,0,3392,3384,1,0,0,0,3392,3388,1,0,0,0,3393,541,1,0,0,0,3394,3397,3,540,270,0,3395,3397,5,316,0,0,3396,3394,1,0,0,0,3396,3395,1,0,0,0,3397,543,1,0,0,0,3398,3403,3,542,271,0,3399,3400,5,26,0,0,3400,3402,3,542,271,0,3401,3399,1,0,0,0,3402,3405,1,0,0,0,3403,3401,1,0,0,0,3403,3404,1,0,0,0,3404,3407,1,0,0,0,3405,3403,1,0,0,0,3406,3408,5,26,0,0,3407,3406,1,0,0,0,3407,3408,1,0,0,0,3408,3414,1,0,0,0,3409,3411,5,48,0,0,3410,3412,5,227,0,0,3411,3410,1,0,0,0,3411,3412,1,0,0,0,3412,3414,1,0,0,0,3413,3398,1,0,0,0,3413,3409,1,0,0,0,3414,545,1,0,0,0,3415,3416,5,87,0,0,3416,3417,5,59,0,0,3417,3418,5,241,0,0,3418,3419,3,582,291,0,3419,3420,5,140,0,0,3420,3425,3,548,274,0,3421,3422,5,26,0,0,3422,3424,3,548,274,0,3423,3421,1,0,0,0,3424,3427,1,0,0,0,3425,3423,1,0,0,0,3425,3426,1,0,0,0,3426,3428,1,0,0,0,3427,3425,1,0,0,0,3428,3429,5,312,0,0,3429,3430,5,27,0,0,3430,3431,3,550,275,0,3431,3432,5,28,0,0,3432,547,1,0,0,0,3433,3434,3,582,291,0,3434,3435,3,798,399,0,3435,549,1,0,0,0,3436,3441,3,552,276,0,3437,3438,5,26,0,0,3438,3440,3,552,276,0,3439,3437,1,0,0,0,3440,3443,1,0,0,0,3441,3439,1,0,0,0,3441,3442,1,0,0,0,3442,551,1,0,0,0,3443,3441,1,0,0,0,3444,3445,3,724,362,0,3445,3446,5,2,0,0,3446,3447,5,316,0,0,3447,553,1,0,0,0,3448,3449,5,49,0,0,3449,3450,5,59,0,0,3450,3451,5,241,0,0,3451,3452,3,582,291,0,3452,3457,3,556,278,0,3453,3454,5,26,0,0,3454,3456,3,556,278,0,3455,3453,1,0,0,0,3456,3459,1,0,0,0,3457,3455,1,0,0,0,3457,3458,1,0,0,0,3458,555,1,0,0,0,3459,3457,1,0,0,0,3460,3461,3,558,279,0,3461,557,1,0,0,0,3462,3463,5,264,0,0,3463,3464,5,27,0,0,3464,3465,3,550,275,0,3465,3466,5,28,0,0,3466,559,1,0,0,0,3467,3468,5,112,0,0,3468,3469,5,59,0,0,3469,3470,5,241,0,0,3470,3472,3,582,291,0,3471,3473,5,71,0,0,3472,3471,1,0,0,0,3472,3473,1,0,0,0,3473,561,1,0,0,0,3474,3479,3,146,73,0,3475,3476,5,26,0,0,3476,3478,3,146,73,0,3477,3475,1,0,0,0,3478,3481,1,0,0,0,3479,3477,1,0,0,0,3479,3480,1,0,0,0,3480,563,1,0,0,0,3481,3479,1,0,0,0,3482,3483,5,101,0,0,3483,3484,7,26,0,0,3484,3485,3,144,72,0,3485,3487,5,27,0,0,3486,3488,3,562,281,0,3487,3486,1,0,0,0,3487,3488,1,0,0,0,3488,3489,1,0,0,0,3489,3490,5,28,0,0,3490,3491,5,55,0,0,3491,3492,3,566,283,0,3492,3493,5,118,0,0,3493,3494,5,101,0,0,3494,565,1,0,0,0,3495,3497,5,24,0,0,3496,3495,1,0,0,0,3497,3500,1,0,0,0,3498,3496,1,0,0,0,3498,3499,1,0,0,0,3499,3519,1,0,0,0,3500,3498,1,0,0,0,3501,3510,3,12,6,0,3502,3504,5,24,0,0,3503,3502,1,0,0,0,3504,3505,1,0,0,0,3505,3503,1,0,0,0,3505,3506,1,0,0,0,3506,3507,1,0,0,0,3507,3509,3,12,6,0,3508,3503,1,0,0,0,3509,3512,1,0,0,0,3510,3508,1,0,0,0,3510,3511,1,0,0,0,3511,3516,1,0,0,0,3512,3510,1,0,0,0,3513,3515,5,24,0,0,3514,3513,1,0,0,0,3515,3518,1,0,0,0,3516,3514,1,0,0,0,3516,3517,1,0,0,0,3517,3520,1,0,0,0,3518,3516,1,0,0,0,3519,3501,1,0,0,0,3519,3520,1,0,0,0,3520,567,1,0,0,0,3521,3523,5,123,0,0,3522,3521,1,0,0,0,3522,3523,1,0,0,0,3523,3524,1,0,0,0,3524,3525,5,154,0,0,3525,3526,3,14,7,0,3526,3529,3,222,111,0,3527,3528,5,114,0,0,3528,3530,3,222,111,0,3529,3527,1,0,0,0,3529,3530,1,0,0,0,3530,569,1,0,0,0,3531,3533,5,123,0,0,3532,3531,1,0,0,0,3532,3533,1,0,0,0,3533,3535,1,0,0,0,3534,3536,5,214,0,0,3535,3534,1,0,0,0,3535,3536,1,0,0,0,3536,3537,1,0,0,0,3537,3538,5,140,0,0,3538,3539,3,144,72,0,3539,3540,5,159,0,0,3540,3541,3,14,7,0,3541,3544,3,222,111,0,3542,3543,5,114,0,0,3543,3545,3,222,111,0,3544,3542,1,0,0,0,3544,3545,1,0,0,0,3545,571,1,0,0,0,3546,3547,3,750,375,0,3547,3548,5,25,0,0,3548,3550,1,0,0,0,3549,3546,1,0,0,0,3549,3550,1,0,0,0,3550,3552,1,0,0,0,3551,3553,5,31,0,0,3552,3551,1,0,0,0,3552,3553,1,0,0,0,3553,3584,1,0,0,0,3554,3585,3,574,287,0,3555,3556,3,730,365,0,3556,3568,5,27,0,0,3557,3562,3,576,288,0,3558,3559,5,26,0,0,3559,3561,3,576,288,0,3560,3558,1,0,0,0,3561,3564,1,0,0,0,3562,3560,1,0,0,0,3562,3563,1,0,0,0,3563,3566,1,0,0,0,3564,3562,1,0,0,0,3565,3567,5,26,0,0,3566,3565,1,0,0,0,3566,3567,1,0,0,0,3567,3569,1,0,0,0,3568,3557,1,0,0,0,3568,3569,1,0,0,0,3569,3570,1,0,0,0,3570,3571,5,28,0,0,3571,3585,1,0,0,0,3572,3578,3,144,72,0,3573,3575,5,27,0,0,3574,3576,3,112,56,0,3575,3574,1,0,0,0,3575,3576,1,0,0,0,3576,3577,1,0,0,0,3577,3579,5,28,0,0,3578,3573,1,0,0,0,3578,3579,1,0,0,0,3579,3582,1,0,0,0,3580,3581,5,307,0,0,3581,3583,3,746,373,0,3582,3580,1,0,0,0,3582,3583,1,0,0,0,3583,3585,1,0,0,0,3584,3554,1,0,0,0,3584,3555,1,0,0,0,3584,3572,1,0,0,0,3585,3587,1,0,0,0,3586,3588,3,578,289,0,3587,3586,1,0,0,0,3587,3588,1,0,0,0,3588,573,1,0,0,0,3589,3592,3,758,379,0,3590,3591,5,307,0,0,3591,3593,3,746,373,0,3592,3590,1,0,0,0,3592,3593,1,0,0,0,3593,575,1,0,0,0,3594,3596,5,31,0,0,3595,3594,1,0,0,0,3595,3596,1,0,0,0,3596,3597,1,0,0,0,3597,3600,3,128,64,0,3598,3599,5,307,0,0,3599,3601,3,746,373,0,3600,3598,1,0,0,0,3600,3601,1,0,0,0,3601,577,1,0,0,0,3602,3615,5,312,0,0,3603,3616,3,580,290,0,3604,3605,5,27,0,0,3605,3610,3,580,290,0,3606,3607,5,26,0,0,3607,3609,3,580,290,0,3608,3606,1,0,0,0,3609,3612,1,0,0,0,3610,3608,1,0,0,0,3610,3611,1,0,0,0,3611,3613,1,0,0,0,3612,3610,1,0,0,0,3613,3614,5,28,0,0,3614,3616,1,0,0,0,3615,3603,1,0,0,0,3615,3604,1,0,0,0,3616,579,1,0,0,0,3617,3636,3,740,370,0,3618,3634,5,2,0,0,3619,3635,3,160,80,0,3620,3621,5,27,0,0,3621,3626,3,160,80,0,3622,3623,5,26,0,0,3623,3625,3,160,80,0,3624,3622,1,0,0,0,3625,3628,1,0,0,0,3626,3624,1,0,0,0,3626,3627,1,0,0,0,3627,3630,1,0,0,0,3628,3626,1,0,0,0,3629,3631,5,26,0,0,3630,3629,1,0,0,0,3630,3631,1,0,0,0,3631,3632,1,0,0,0,3632,3633,5,28,0,0,3633,3635,1,0,0,0,3634,3619,1,0,0,0,3634,3620,1,0,0,0,3635,3637,1,0,0,0,3636,3618,1,0,0,0,3636,3637,1,0,0,0,3637,3663,1,0,0,0,3638,3640,7,27,0,0,3639,3641,5,2,0,0,3640,3639,1,0,0,0,3640,3641,1,0,0,0,3641,3642,1,0,0,0,3642,3663,3,204,102,0,3643,3645,5,259,0,0,3644,3646,5,2,0,0,3645,3644,1,0,0,0,3645,3646,1,0,0,0,3646,3647,1,0,0,0,3647,3656,5,27,0,0,3648,3653,3,164,82,0,3649,3650,5,26,0,0,3650,3652,3,164,82,0,3651,3649,1,0,0,0,3652,3655,1,0,0,0,3653,3651,1,0,0,0,3653,3654,1,0,0,0,3654,3657,1,0,0,0,3655,3653,1,0,0,0,3656,3648,1,0,0,0,3656,3657,1,0,0,0,3657,3659,1,0,0,0,3658,3660,5,26,0,0,3659,3658,1,0,0,0,3659,3660,1,0,0,0,3660,3661,1,0,0,0,3661,3663,5,28,0,0,3662,3617,1,0,0,0,3662,3638,1,0,0,0,3662,3643,1,0,0,0,3663,581,1,0,0,0,3664,3665,3,750,375,0,3665,3666,5,25,0,0,3666,3668,1,0,0,0,3667,3664,1,0,0,0,3667,3668,1,0,0,0,3668,3669,1,0,0,0,3669,3670,3,756,378,0,3670,583,1,0,0,0,3671,3677,3,582,291,0,3672,3674,5,31,0,0,3673,3672,1,0,0,0,3673,3674,1,0,0,0,3674,3675,1,0,0,0,3675,3677,3,144,72,0,3676,3671,1,0,0,0,3676,3673,1,0,0,0,3677,585,1,0,0,0,3678,3680,3,584,292,0,3679,3681,3,578,289,0,3680,3679,1,0,0,0,3680,3681,1,0,0,0,3681,587,1,0,0,0,3682,3686,3,586,293,0,3683,3684,5,120,0,0,3684,3685,5,69,0,0,3685,3687,3,114,57,0,3686,3683,1,0,0,0,3686,3687,1,0,0,0,3687,589,1,0,0,0,3688,3689,5,102,0,0,3689,3690,5,142,0,0,3690,3694,3,586,293,0,3691,3695,3,800,400,0,3692,3693,5,204,0,0,3693,3695,3,368,184,0,3694,3691,1,0,0,0,3694,3692,1,0,0,0,3694,3695,1,0,0,0,3695,3697,1,0,0,0,3696,3698,3,362,181,0,3697,3696,1,0,0,0,3697,3698,1,0,0,0,3698,591,1,0,0,0,3699,3700,5,299,0,0,3700,3708,3,586,293,0,3701,3702,5,264,0,0,3702,3704,3,594,297,0,3703,3705,3,800,400,0,3704,3703,1,0,0,0,3704,3705,1,0,0,0,3705,3709,1,0,0,0,3706,3707,5,204,0,0,3707,3709,3,368,184,0,3708,3701,1,0,0,0,3708,3706,1,0,0,0,3709,3711,1,0,0,0,3710,3712,3,362,181,0,3711,3710,1,0,0,0,3711,3712,1,0,0,0,3712,593,1,0,0,0,3713,3716,3,596,298,0,3714,3716,3,602,301,0,3715,3713,1,0,0,0,3715,3714,1,0,0,0,3716,595,1,0,0,0,3717,3722,3,598,299,0,3718,3719,5,26,0,0,3719,3721,3,598,299,0,3720,3718,1,0,0,0,3721,3724,1,0,0,0,3722,3720,1,0,0,0,3722,3723,1,0,0,0,3723,597,1,0,0,0,3724,3722,1,0,0,0,3725,3726,3,600,300,0,3726,3727,5,2,0,0,3727,3728,3,14,7,0,3728,599,1,0,0,0,3729,3730,3,120,60,0,3730,601,1,0,0,0,3731,3732,3,604,302,0,3732,3733,5,2,0,0,3733,3734,5,27,0,0,3734,3735,3,378,189,0,3735,3736,5,28,0,0,3736,603,1,0,0,0,3737,3738,5,27,0,0,3738,3743,3,600,300,0,3739,3740,5,26,0,0,3740,3742,3,600,300,0,3741,3739,1,0,0,0,3742,3745,1,0,0,0,3743,3741,1,0,0,0,3743,3744,1,0,0,0,3744,3746,1,0,0,0,3745,3743,1,0,0,0,3746,3747,5,28,0,0,3747,605,1,0,0,0,3748,3749,5,87,0,0,3749,3750,5,287,0,0,3750,3752,3,652,326,0,3751,3753,3,608,304,0,3752,3751,1,0,0,0,3752,3753,1,0,0,0,3753,3755,1,0,0,0,3754,3756,3,612,306,0,3755,3754,1,0,0,0,3755,3756,1,0,0,0,3756,607,1,0,0,0,3757,3758,5,27,0,0,3758,3763,3,610,305,0,3759,3760,5,26,0,0,3760,3762,3,610,305,0,3761,3759,1,0,0,0,3762,3765,1,0,0,0,3763,3761,1,0,0,0,3763,3764,1,0,0,0,3764,3766,1,0,0,0,3765,3763,1,0,0,0,3766,3767,5,28,0,0,3767,609,1,0,0,0,3768,3769,3,620,310,0,3769,611,1,0,0,0,3770,3771,5,312,0,0,3771,3772,5,27,0,0,3772,3773,3,638,319,0,3773,3774,5,28,0,0,3774,613,1,0,0,0,3775,3776,5,49,0,0,3776,3777,5,287,0,0,3777,3778,3,652,326,0,3778,3783,3,616,308,0,3779,3780,5,26,0,0,3780,3782,3,616,308,0,3781,3779,1,0,0,0,3782,3785,1,0,0,0,3783,3781,1,0,0,0,3783,3784,1,0,0,0,3784,615,1,0,0,0,3785,3783,1,0,0,0,3786,3792,3,618,309,0,3787,3792,3,622,311,0,3788,3792,3,626,313,0,3789,3792,3,632,316,0,3790,3792,3,634,317,0,3791,3786,1,0,0,0,3791,3787,1,0,0,0,3791,3788,1,0,0,0,3791,3789,1,0,0,0,3791,3790,1,0,0,0,3792,617,1,0,0,0,3793,3794,5,46,0,0,3794,3795,3,620,310,0,3795,619,1,0,0,0,3796,3797,5,85,0,0,3797,3799,3,724,362,0,3798,3800,3,644,322,0,3799,3798,1,0,0,0,3799,3800,1,0,0,0,3800,621,1,0,0,0,3801,3802,5,49,0,0,3802,3803,5,85,0,0,3803,3804,3,654,327,0,3804,3805,3,624,312,0,3805,623,1,0,0,0,3806,3809,3,628,314,0,3807,3809,3,630,315,0,3808,3806,1,0,0,0,3808,3807,1,0,0,0,3809,625,1,0,0,0,3810,3811,5,112,0,0,3811,3812,5,85,0,0,3812,3813,3,654,327,0,3813,627,1,0,0,0,3814,3815,5,264,0,0,3815,3816,5,27,0,0,3816,3817,3,646,323,0,3817,3818,5,28,0,0,3818,629,1,0,0,0,3819,3820,5,242,0,0,3820,3821,5,27,0,0,3821,3826,3,724,362,0,3822,3823,5,26,0,0,3823,3825,3,724,362,0,3824,3822,1,0,0,0,3825,3828,1,0,0,0,3826,3824,1,0,0,0,3826,3827,1,0,0,0,3827,3829,1,0,0,0,3828,3826,1,0,0,0,3829,3830,5,28,0,0,3830,631,1,0,0,0,3831,3832,5,264,0,0,3832,3833,5,27,0,0,3833,3834,3,638,319,0,3834,3835,5,28,0,0,3835,633,1,0,0,0,3836,3837,5,242,0,0,3837,3838,5,27,0,0,3838,3843,3,724,362,0,3839,3840,5,26,0,0,3840,3842,3,742,371,0,3841,3839,1,0,0,0,3842,3845,1,0,0,0,3843,3841,1,0,0,0,3843,3844,1,0,0,0,3844,3846,1,0,0,0,3845,3843,1,0,0,0,3846,3847,5,28,0,0,3847,635,1,0,0,0,3848,3849,5,112,0,0,3849,3850,5,287,0,0,3850,3851,3,652,326,0,3851,637,1,0,0,0,3852,3857,3,640,320,0,3853,3854,5,26,0,0,3854,3856,3,640,320,0,3855,3853,1,0,0,0,3856,3859,1,0,0,0,3857,3855,1,0,0,0,3857,3858,1,0,0,0,3858,639,1,0,0,0,3859,3857,1,0,0,0,3860,3861,3,724,362,0,3861,3862,5,2,0,0,3862,3863,3,642,321,0,3863,641,1,0,0,0,3864,3865,3,14,7,0,3865,643,1,0,0,0,3866,3867,5,312,0,0,3867,3868,5,27,0,0,3868,3869,3,646,323,0,3869,3870,5,28,0,0,3870,645,1,0,0,0,3871,3876,3,648,324,0,3872,3873,5,26,0,0,3873,3875,3,648,324,0,3874,3872,1,0,0,0,3875,3878,1,0,0,0,3876,3874,1,0,0,0,3876,3877,1,0,0,0,3877,647,1,0,0,0,3878,3876,1,0,0,0,3879,3880,3,724,362,0,3880,3881,5,2,0,0,3881,3882,3,650,325,0,3882,649,1,0,0,0,3883,3884,3,14,7,0,3884,651,1,0,0,0,3885,3886,3,750,375,0,3886,3887,5,25,0,0,3887,3889,1,0,0,0,3888,3885,1,0,0,0,3888,3889,1,0,0,0,3889,3890,1,0,0,0,3890,3891,3,724,362,0,3891,653,1,0,0,0,3892,3893,3,742,371,0,3893,655,1,0,0,0,3894,3895,5,244,0,0,3895,3899,5,199,0,0,3896,3897,5,155,0,0,3897,3899,5,199,0,0,3898,3894,1,0,0,0,3898,3896,1,0,0,0,3899,657,1,0,0,0,3900,3901,5,135,0,0,3901,3902,5,27,0,0,3902,3903,3,800,400,0,3903,3904,5,28,0,0,3904,659,1,0,0,0,3905,3908,3,662,331,0,3906,3908,3,672,336,0,3907,3905,1,0,0,0,3907,3906,1,0,0,0,3908,661,1,0,0,0,3909,3910,3,734,367,0,3910,663,1,0,0,0,3911,3912,5,311,0,0,3912,3913,3,666,333,0,3913,665,1,0,0,0,3914,3919,3,668,334,0,3915,3916,5,26,0,0,3916,3918,3,668,334,0,3917,3915,1,0,0,0,3918,3921,1,0,0,0,3919,3917,1,0,0,0,3919,3920,1,0,0,0,3920,667,1,0,0,0,3921,3919,1,0,0,0,3922,3923,3,670,335,0,3923,3924,5,55,0,0,3924,3925,3,672,336,0,3925,669,1,0,0,0,3926,3927,3,662,331,0,3927,671,1,0,0,0,3928,3929,5,27,0,0,3929,3930,3,674,337,0,3930,3931,5,28,0,0,3931,673,1,0,0,0,3932,3934,3,676,338,0,3933,3932,1,0,0,0,3933,3934,1,0,0,0,3934,3936,1,0,0,0,3935,3937,3,678,339,0,3936,3935,1,0,0,0,3936,3937,1,0,0,0,3937,3939,1,0,0,0,3938,3940,3,680,340,0,3939,3938,1,0,0,0,3939,3940,1,0,0,0,3940,3942,1,0,0,0,3941,3943,3,682,341,0,3942,3941,1,0,0,0,3942,3943,1,0,0,0,3943,675,1,0,0,0,3944,3945,3,662,331,0,3945,677,1,0,0,0,3946,3948,5,215,0,0,3947,3949,5,80,0,0,3948,3947,1,0,0,0,3948,3949,1,0,0,0,3949,3950,1,0,0,0,3950,3951,5,69,0,0,3951,3952,3,130,65,0,3952,679,1,0,0,0,3953,3954,3,314,157,0,3954,681,1,0,0,0,3955,3956,3,684,342,0,3956,3958,3,686,343,0,3957,3959,3,692,346,0,3958,3957,1,0,0,0,3958,3959,1,0,0,0,3959,683,1,0,0,0,3960,3961,7,28,0,0,3961,685,1,0,0,0,3962,3965,3,690,345,0,3963,3965,3,688,344,0,3964,3962,1,0,0,0,3964,3963,1,0,0,0,3965,687,1,0,0,0,3966,3967,5,67,0,0,3967,3968,3,690,345,0,3968,3969,5,51,0,0,3969,3970,3,690,345,0,3970,689,1,0,0,0,3971,3972,5,90,0,0,3972,3979,5,255,0,0,3973,3976,3,14,7,0,3974,3976,5,293,0,0,3975,3973,1,0,0,0,3975,3974,1,0,0,0,3976,3977,1,0,0,0,3977,3979,7,29,0,0,3978,3971,1,0,0,0,3978,3975,1,0,0,0,3979,691,1,0,0,0,3980,3981,5,125,0,0,3981,3982,5,90,0,0,3982,3991,5,255,0,0,3983,3984,5,125,0,0,3984,3991,5,148,0,0,3985,3986,5,125,0,0,3986,3991,5,285,0,0,3987,3988,5,125,0,0,3988,3989,5,195,0,0,3989,3991,5,211,0,0,3990,3980,1,0,0,0,3990,3983,1,0,0,0,3990,3985,1,0,0,0,3990,3987,1,0,0,0,3991,693,1,0,0,0,3992,3993,5,301,0,0,3993,3994,3,750,375,0,3994,695,1,0,0,0,3995,3996,5,27,0,0,3996,3997,3,232,116,0,3997,3998,5,28,0,0,3998,4001,1,0,0,0,3999,4001,3,234,117,0,4e3,3995,1,0,0,0,4e3,3999,1,0,0,0,4001,697,1,0,0,0,4002,4003,3,148,74,0,4003,4006,5,2,0,0,4004,4007,3,14,7,0,4005,4007,3,696,348,0,4006,4004,1,0,0,0,4006,4005,1,0,0,0,4007,699,1,0,0,0,4008,4009,5,79,0,0,4009,701,1,0,0,0,4010,4011,5,253,0,0,4011,703,1,0,0,0,4012,4013,7,30,0,0,4013,705,1,0,0,0,4014,4017,3,704,352,0,4015,4017,3,762,381,0,4016,4014,1,0,0,0,4016,4015,1,0,0,0,4017,707,1,0,0,0,4018,4026,3,704,352,0,4019,4026,3,780,390,0,4020,4026,3,764,382,0,4021,4026,3,768,384,0,4022,4026,3,772,386,0,4023,4026,3,774,387,0,4024,4026,3,776,388,0,4025,4018,1,0,0,0,4025,4019,1,0,0,0,4025,4020,1,0,0,0,4025,4021,1,0,0,0,4025,4022,1,0,0,0,4025,4023,1,0,0,0,4025,4024,1,0,0,0,4026,709,1,0,0,0,4027,4034,3,704,352,0,4028,4034,3,780,390,0,4029,4034,3,770,385,0,4030,4034,3,772,386,0,4031,4034,3,774,387,0,4032,4034,3,776,388,0,4033,4027,1,0,0,0,4033,4028,1,0,0,0,4033,4029,1,0,0,0,4033,4030,1,0,0,0,4033,4031,1,0,0,0,4033,4032,1,0,0,0,4034,711,1,0,0,0,4035,4041,3,704,352,0,4036,4041,3,780,390,0,4037,4041,3,770,385,0,4038,4041,3,774,387,0,4039,4041,3,776,388,0,4040,4035,1,0,0,0,4040,4036,1,0,0,0,4040,4037,1,0,0,0,4040,4038,1,0,0,0,4040,4039,1,0,0,0,4041,713,1,0,0,0,4042,4051,3,704,352,0,4043,4051,3,780,390,0,4044,4051,3,764,382,0,4045,4051,3,766,383,0,4046,4051,3,768,384,0,4047,4051,3,770,385,0,4048,4051,3,772,386,0,4049,4051,3,776,388,0,4050,4042,1,0,0,0,4050,4043,1,0,0,0,4050,4044,1,0,0,0,4050,4045,1,0,0,0,4050,4046,1,0,0,0,4050,4047,1,0,0,0,4050,4048,1,0,0,0,4050,4049,1,0,0,0,4051,715,1,0,0,0,4052,4060,3,704,352,0,4053,4060,3,780,390,0,4054,4060,3,764,382,0,4055,4060,3,768,384,0,4056,4060,3,772,386,0,4057,4060,3,774,387,0,4058,4060,3,776,388,0,4059,4052,1,0,0,0,4059,4053,1,0,0,0,4059,4054,1,0,0,0,4059,4055,1,0,0,0,4059,4056,1,0,0,0,4059,4057,1,0,0,0,4059,4058,1,0,0,0,4060,717,1,0,0,0,4061,4069,3,704,352,0,4062,4069,3,780,390,0,4063,4069,3,766,383,0,4064,4069,3,770,385,0,4065,4069,3,772,386,0,4066,4069,3,774,387,0,4067,4069,3,776,388,0,4068,4061,1,0,0,0,4068,4062,1,0,0,0,4068,4063,1,0,0,0,4068,4064,1,0,0,0,4068,4065,1,0,0,0,4068,4066,1,0,0,0,4068,4067,1,0,0,0,4069,719,1,0,0,0,4070,4079,3,704,352,0,4071,4079,3,780,390,0,4072,4079,3,764,382,0,4073,4079,3,766,383,0,4074,4079,3,768,384,0,4075,4079,3,770,385,0,4076,4079,3,772,386,0,4077,4079,3,774,387,0,4078,4070,1,0,0,0,4078,4071,1,0,0,0,4078,4072,1,0,0,0,4078,4073,1,0,0,0,4078,4074,1,0,0,0,4078,4075,1,0,0,0,4078,4076,1,0,0,0,4078,4077,1,0,0,0,4079,721,1,0,0,0,4080,4083,3,704,352,0,4081,4083,3,778,389,0,4082,4080,1,0,0,0,4082,4081,1,0,0,0,4083,723,1,0,0,0,4084,4087,3,706,353,0,4085,4087,5,316,0,0,4086,4084,1,0,0,0,4086,4085,1,0,0,0,4087,725,1,0,0,0,4088,4091,3,752,376,0,4089,4091,5,316,0,0,4090,4088,1,0,0,0,4090,4089,1,0,0,0,4091,727,1,0,0,0,4092,4095,3,708,354,0,4093,4095,5,316,0,0,4094,4092,1,0,0,0,4094,4093,1,0,0,0,4095,729,1,0,0,0,4096,4099,3,710,355,0,4097,4099,5,316,0,0,4098,4096,1,0,0,0,4098,4097,1,0,0,0,4099,731,1,0,0,0,4100,4103,3,712,356,0,4101,4103,5,316,0,0,4102,4100,1,0,0,0,4102,4101,1,0,0,0,4103,733,1,0,0,0,4104,4107,3,714,357,0,4105,4107,5,316,0,0,4106,4104,1,0,0,0,4106,4105,1,0,0,0,4107,735,1,0,0,0,4108,4111,3,716,358,0,4109,4111,5,316,0,0,4110,4108,1,0,0,0,4110,4109,1,0,0,0,4111,737,1,0,0,0,4112,4115,3,718,359,0,4113,4115,5,316,0,0,4114,4112,1,0,0,0,4114,4113,1,0,0,0,4115,739,1,0,0,0,4116,4119,3,720,360,0,4117,4119,5,316,0,0,4118,4116,1,0,0,0,4118,4117,1,0,0,0,4119,741,1,0,0,0,4120,4123,3,704,352,0,4121,4123,5,316,0,0,4122,4120,1,0,0,0,4122,4121,1,0,0,0,4123,743,1,0,0,0,4124,4127,3,722,361,0,4125,4127,5,316,0,0,4126,4124,1,0,0,0,4126,4125,1,0,0,0,4127,745,1,0,0,0,4128,4132,3,724,362,0,4129,4130,5,226,0,0,4130,4132,5,176,0,0,4131,4128,1,0,0,0,4131,4129,1,0,0,0,4132,747,1,0,0,0,4133,4134,3,724,362,0,4134,4135,5,25,0,0,4135,4137,1,0,0,0,4136,4133,1,0,0,0,4136,4137,1,0,0,0,4137,749,1,0,0,0,4138,4139,3,724,362,0,4139,4140,5,30,0,0,4140,4142,1,0,0,0,4141,4138,1,0,0,0,4141,4142,1,0,0,0,4142,4145,1,0,0,0,4143,4146,3,116,58,0,4144,4146,5,20,0,0,4145,4143,1,0,0,0,4145,4144,1,0,0,0,4146,751,1,0,0,0,4147,4150,3,706,353,0,4148,4150,3,782,391,0,4149,4147,1,0,0,0,4149,4148,1,0,0,0,4150,753,1,0,0,0,4151,4152,3,726,363,0,4152,4153,5,25,0,0,4153,4155,1,0,0,0,4154,4151,1,0,0,0,4154,4155,1,0,0,0,4155,755,1,0,0,0,4156,4158,5,31,0,0,4157,4156,1,0,0,0,4157,4158,1,0,0,0,4158,4159,1,0,0,0,4159,4160,3,726,363,0,4160,757,1,0,0,0,4161,4164,3,736,368,0,4162,4164,3,782,391,0,4163,4161,1,0,0,0,4163,4162,1,0,0,0,4164,759,1,0,0,0,4165,4167,5,31,0,0,4166,4165,1,0,0,0,4166,4167,1,0,0,0,4167,4168,1,0,0,0,4168,4169,3,758,379,0,4169,761,1,0,0,0,4170,4179,3,780,390,0,4171,4179,3,764,382,0,4172,4179,3,766,383,0,4173,4179,3,768,384,0,4174,4179,3,770,385,0,4175,4179,3,772,386,0,4176,4179,3,774,387,0,4177,4179,3,776,388,0,4178,4170,1,0,0,0,4178,4171,1,0,0,0,4178,4172,1,0,0,0,4178,4173,1,0,0,0,4178,4174,1,0,0,0,4178,4175,1,0,0,0,4178,4176,1,0,0,0,4178,4177,1,0,0,0,4179,763,1,0,0,0,4180,4181,7,31,0,0,4181,765,1,0,0,0,4182,4183,7,32,0,0,4183,767,1,0,0,0,4184,4185,7,33,0,0,4185,769,1,0,0,0,4186,4187,5,77,0,0,4187,771,1,0,0,0,4188,4189,5,80,0,0,4189,773,1,0,0,0,4190,4191,7,28,0,0,4191,775,1,0,0,0,4192,4193,7,27,0,0,4193,777,1,0,0,0,4194,4195,7,34,0,0,4195,779,1,0,0,0,4196,4197,7,35,0,0,4197,781,1,0,0,0,4198,4199,7,36,0,0,4199,783,1,0,0,0,4200,4201,7,37,0,0,4201,785,1,0,0,0,4202,4203,5,321,0,0,4203,787,1,0,0,0,4204,4205,7,38,0,0,4205,789,1,0,0,0,4206,4212,3,792,396,0,4207,4208,5,223,0,0,4208,4209,5,52,0,0,4209,4210,5,319,0,0,4210,4212,3,4,2,0,4211,4206,1,0,0,0,4211,4207,1,0,0,0,4212,791,1,0,0,0,4213,4215,5,24,0,0,4214,4213,1,0,0,0,4215,4218,1,0,0,0,4216,4214,1,0,0,0,4216,4217,1,0,0,0,4217,4219,1,0,0,0,4218,4216,1,0,0,0,4219,4228,3,794,397,0,4220,4222,5,24,0,0,4221,4220,1,0,0,0,4222,4223,1,0,0,0,4223,4221,1,0,0,0,4223,4224,1,0,0,0,4224,4225,1,0,0,0,4225,4227,3,794,397,0,4226,4221,1,0,0,0,4227,4230,1,0,0,0,4228,4226,1,0,0,0,4228,4229,1,0,0,0,4229,4234,1,0,0,0,4230,4228,1,0,0,0,4231,4233,5,24,0,0,4232,4231,1,0,0,0,4233,4236,1,0,0,0,4234,4232,1,0,0,0,4234,4235,1,0,0,0,4235,4237,1,0,0,0,4236,4234,1,0,0,0,4237,4238,5,0,0,1,4238,793,1,0,0,0,4239,4242,5,129,0,0,4240,4241,5,1,0,0,4241,4243,5,222,0,0,4242,4240,1,0,0,0,4242,4243,1,0,0,0,4243,4245,1,0,0,0,4244,4239,1,0,0,0,4244,4245,1,0,0,0,4245,4246,1,0,0,0,4246,4247,3,796,398,0,4247,795,1,0,0,0,4248,4262,3,224,112,0,4249,4262,3,232,116,0,4250,4262,3,698,349,0,4251,4262,3,694,347,0,4252,4262,3,366,183,0,4253,4262,3,210,105,0,4254,4262,3,214,107,0,4255,4262,3,216,108,0,4256,4262,3,222,111,0,4257,4262,3,564,282,0,4258,4262,3,568,284,0,4259,4262,3,570,285,0,4260,4262,3,370,185,0,4261,4248,1,0,0,0,4261,4249,1,0,0,0,4261,4250,1,0,0,0,4261,4251,1,0,0,0,4261,4252,1,0,0,0,4261,4253,1,0,0,0,4261,4254,1,0,0,0,4261,4255,1,0,0,0,4261,4256,1,0,0,0,4261,4257,1,0,0,0,4261,4258,1,0,0,0,4261,4259,1,0,0,0,4261,4260,1,0,0,0,4262,797,1,0,0,0,4263,4264,5,55,0,0,4264,4265,3,582,291,0,4265,799,1,0,0,0,4266,4267,5,310,0,0,4267,4268,3,14,7,0,4268,801,1,0,0,0,4269,4270,5,142,0,0,4270,4271,3,338,169,0,4271,803,1,0,0,0,4272,4275,3,434,217,0,4273,4275,3,442,221,0,4274,4272,1,0,0,0,4274,4273,1,0,0,0,4275,805,1,0,0,0,476,811,816,823,828,834,842,850,857,861,869,874,879,881,929,936,940,947,955,960,964,970,976,979,983,991,995,998,1002,1013,1018,1020,1029,1050,1055,1064,1066,1073,1081,1089,1096,1106,1108,1110,1115,1119,1125,1131,1135,1139,1142,1149,1155,1159,1164,1167,1181,1186,1189,1203,1210,1221,1232,1252,1258,1263,1267,1281,1283,1290,1296,1307,1315,1321,1328,1336,1349,1355,1359,1362,1364,1372,1380,1386,1392,1398,1401,1410,1419,1426,1434,1447,1454,1458,1465,1469,1474,1481,1488,1491,1498,1502,1512,1535,1541,1545,1552,1558,1565,1569,1573,1579,1584,1593,1596,1602,1607,1615,1622,1644,1648,1650,1654,1663,1667,1669,1673,1682,1686,1724,1728,1748,1751,1757,1777,1782,1788,1793,1796,1800,1827,1835,1838,1845,1858,1862,1874,1887,1892,1899,1903,1910,1919,1928,1936,1940,1944,1951,1953,1956,1961,1966,1970,1977,1984,1988,1991,1995,1999,2001,2012,2021,2026,2032,2037,2040,2044,2048,2051,2055,2059,2067,2071,2075,2079,2082,2085,2089,2092,2095,2100,2103,2106,2109,2123,2125,2136,2146,2156,2159,2166,2190,2201,2207,2211,2215,2219,2223,2227,2231,2235,2241,2248,2258,2269,2282,2298,2308,2328,2334,2341,2348,2356,2365,2402,2404,2407,2412,2416,2420,2426,2432,2436,2441,2446,2448,2452,2457,2460,2462,2466,2477,2488,2499,2503,2507,2511,2514,2518,2521,2527,2536,2539,2553,2559,2572,2579,2584,2591,2598,2607,2612,2620,2635,2641,2649,2672,2679,2687,2708,2716,2724,2734,2743,2748,2755,2765,2770,2779,2783,2787,2790,2793,2796,2799,2807,2816,2833,2856,2874,2885,2893,2903,2908,2912,2918,2949,2961,2998,3006,3009,3013,3017,3027,3040,3053,3058,3075,3079,3083,3092,3103,3108,3112,3116,3119,3135,3150,3165,3168,3180,3183,3199,3205,3213,3223,3227,3235,3241,3247,3259,3263,3265,3277,3281,3286,3292,3299,3303,3307,3310,3323,3332,3336,3341,3347,3356,3365,3382,3386,3390,3392,3396,3403,3407,3411,3413,3425,3441,3457,3472,3479,3487,3498,3505,3510,3516,3519,3522,3529,3532,3535,3544,3549,3552,3562,3566,3568,3575,3578,3582,3584,3587,3592,3595,3600,3610,3615,3626,3630,3634,3636,3640,3645,3653,3656,3659,3662,3667,3673,3676,3680,3686,3694,3697,3704,3708,3711,3715,3722,3743,3752,3755,3763,3783,3791,3799,3808,3826,3843,3857,3876,3888,3898,3907,3919,3933,3936,3939,3942,3948,3958,3964,3975,3978,3990,4e3,4006,4016,4025,4033,4040,4050,4059,4068,4078,4082,4086,4090,4094,4098,4102,4106,4110,4114,4118,4122,4126,4131,4136,4141,4145,4149,4154,4157,4163,4166,4178,4211,4216,4223,4228,4234,4242,4244,4261,4274],ji.vocabulary=new Ra(ji.literalNames,ji.symbolicNames,[]),ji.decisionsToDFA=ji._ATN.decisionToState.map(((t,e)=>new ni(t,e))),ji),ef=class extends ga{constructor(t,e){super(t,e)}sql_stmt_list(){return this.getRuleContext(0,sf)}PRAGMA(){return this.getToken(tf.PRAGMA,0)}ANSI(){return this.getToken(tf.ANSI,0)}DIGITS(){return this.getToken(tf.DIGITS,0)}ansi_sql_stmt_list(){return this.getRuleContext(0,af)}get ruleIndex(){return tf.RULE_sql_query}accept(t){return t.visitSql_query?t.visitSql_query(this):t.visitChildren(this)}},sf=class extends ga{constructor(t,e){super(t,e)}sql_stmt(t){return void 0===t?this.getRuleContexts(nf):this.getRuleContext(t,nf)}EOF(){return this.getToken(tf.EOF,0)}SEMICOLON(t){return void 0===t?this.getTokens(tf.SEMICOLON):this.getToken(tf.SEMICOLON,t)}get ruleIndex(){return tf.RULE_sql_stmt_list}accept(t){return t.visitSql_stmt_list?t.visitSql_stmt_list(this):t.visitChildren(this)}},af=class extends ga{constructor(t,e){super(t,e)}EOF(){return this.getToken(tf.EOF,0)}SEMICOLON(t){return void 0===t?this.getTokens(tf.SEMICOLON):this.getToken(tf.SEMICOLON,t)}get ruleIndex(){return tf.RULE_ansi_sql_stmt_list}accept(t){return t.visitAnsi_sql_stmt_list?t.visitAnsi_sql_stmt_list(this):t.visitChildren(this)}},rf=class extends ga{constructor(t,e){super(t,e)}RETURN(){return this.getToken(tf.RETURN,0)}expr(){return this.getRuleContext(0,Ef)}SEMICOLON(t){return void 0===t?this.getTokens(tf.SEMICOLON):this.getToken(tf.SEMICOLON,t)}lambda_stmt(t){return void 0===t?this.getRuleContexts(cf):this.getRuleContext(t,cf)}get ruleIndex(){return tf.RULE_lambda_body}accept(t){return t.visitLambda_body?t.visitLambda_body(this):t.visitChildren(this)}},cf=class extends ga{constructor(t,e){super(t,e)}named_nodes_stmt(){return this.getRuleContext(0,mX)}import_stmt(){return this.getRuleContext(0,ew)}get ruleIndex(){return tf.RULE_lambda_stmt}accept(t){return t.visitLambda_stmt?t.visitLambda_stmt(this):t.visitChildren(this)}},nf=class extends ga{constructor(t,e){super(t,e)}sql_stmt_core(){return this.getRuleContext(0,hf)}EXPLAIN(){return this.getToken(tf.EXPLAIN,0)}QUERY(){return this.getToken(tf.QUERY,0)}PLAN(){return this.getToken(tf.PLAN,0)}get ruleIndex(){return tf.RULE_sql_stmt}accept(t){return t.visitSql_stmt?t.visitSql_stmt(this):t.visitChildren(this)}},hf=class extends ga{constructor(t,e){super(t,e)}pragma_stmt(){return this.getRuleContext(0,cw)}select_stmt(){return this.getRuleContext(0,Tw)}named_nodes_stmt(){return this.getRuleContext(0,mX)}create_table_stmt(){return this.getRuleContext(0,Zb)}drop_table_stmt(){return this.getRuleContext(0,KW)}use_stmt(){return this.getRuleContext(0,dX)}into_table_stmt(){return this.getRuleContext(0,_b)}commit_stmt(){return this.getRuleContext(0,DX)}update_stmt(){return this.getRuleContext(0,DV)}delete_stmt(){return this.getRuleContext(0,mV)}rollback_stmt(){return this.getRuleContext(0,pX)}declare_stmt(){return this.getRuleContext(0,$Y)}import_stmt(){return this.getRuleContext(0,ew)}export_stmt(){return this.getRuleContext(0,sw)}alter_table_stmt(){return this.getRuleContext(0,aW)}alter_external_table_stmt(){return this.getRuleContext(0,iW)}do_stmt(){return this.getRuleContext(0,iw)}define_action_or_subquery_stmt(){return this.getRuleContext(0,SV)}if_stmt(){return this.getRuleContext(0,OV)}for_stmt(){return this.getRuleContext(0,IV)}values_stmt(){return this.getRuleContext(0,db)}create_user_stmt(){return this.getRuleContext(0,QW)}alter_user_stmt(){return this.getRuleContext(0,JW)}create_group_stmt(){return this.getRuleContext(0,ZW)}alter_group_stmt(){return this.getRuleContext(0,qW)}drop_role_stmt(){return this.getRuleContext(0,jW)}create_object_stmt(){return this.getRuleContext(0,Bb)}alter_object_stmt(){return this.getRuleContext(0,fb)}drop_object_stmt(){return this.getRuleContext(0,wb)}create_external_data_source_stmt(){return this.getRuleContext(0,gb)}alter_external_data_source_stmt(){return this.getRuleContext(0,xb)}drop_external_data_source_stmt(){return this.getRuleContext(0,Hb)}create_replication_stmt(){return this.getRuleContext(0,iV)}drop_replication_stmt(){return this.getRuleContext(0,RV)}create_topic_stmt(){return this.getRuleContext(0,FV)}alter_topic_stmt(){return this.getRuleContext(0,fV)}drop_topic_stmt(){return this.getRuleContext(0,qV)}grant_permissions_stmt(){return this.getRuleContext(0,tV)}revoke_permissions_stmt(){return this.getRuleContext(0,eV)}alter_table_store_stmt(){return this.getRuleContext(0,nW)}upsert_object_stmt(){return this.getRuleContext(0,vb)}create_view_stmt(){return this.getRuleContext(0,Gb)}drop_view_stmt(){return this.getRuleContext(0,Fb)}alter_replication_stmt(){return this.getRuleContext(0,EV)}get ruleIndex(){return tf.RULE_sql_stmt_core}accept(t){return t.visitSql_stmt_core?t.visitSql_stmt_core(this):t.visitChildren(this)}},Ef=class extends ga{constructor(t,e){super(t,e)}or_subexpr(t){return void 0===t?this.getRuleContexts(Tf):this.getRuleContext(t,Tf)}OR(t){return void 0===t?this.getTokens(tf.OR):this.getToken(tf.OR,t)}type_name_composite(){return this.getRuleContext(0,JY)}get ruleIndex(){return tf.RULE_expr}accept(t){return t.visitExpr?t.visitExpr(this):t.visitChildren(this)}},Tf=class extends ga{constructor(t,e){super(t,e)}and_subexpr(t){return void 0===t?this.getRuleContexts(of):this.getRuleContext(t,of)}AND(t){return void 0===t?this.getTokens(tf.AND):this.getToken(tf.AND,t)}get ruleIndex(){return tf.RULE_or_subexpr}accept(t){return t.visitOr_subexpr?t.visitOr_subexpr(this):t.visitChildren(this)}},of=class extends ga{constructor(t,e){super(t,e)}xor_subexpr(t){return void 0===t?this.getRuleContexts(Rf):this.getRuleContext(t,Rf)}XOR(t){return void 0===t?this.getTokens(tf.XOR):this.getToken(tf.XOR,t)}get ruleIndex(){return tf.RULE_and_subexpr}accept(t){return t.visitAnd_subexpr?t.visitAnd_subexpr(this):t.visitChildren(this)}},Rf=class extends ga{constructor(t,e){super(t,e)}eq_subexpr(){return this.getRuleContext(0,Of)}cond_expr(){return this.getRuleContext(0,Sf)}get ruleIndex(){return tf.RULE_xor_subexpr}accept(t){return t.visitXor_subexpr?t.visitXor_subexpr(this):t.visitChildren(this)}},Af=class extends ga{constructor(t,e){super(t,e)}IS(){return this.getToken(tf.IS,0)}DISTINCT(){return this.getToken(tf.DISTINCT,0)}FROM(){return this.getToken(tf.FROM,0)}NOT(){return this.getToken(tf.NOT,0)}get ruleIndex(){return tf.RULE_distinct_from_op}accept(t){return t.visitDistinct_from_op?t.visitDistinct_from_op(this):t.visitChildren(this)}},Sf=class extends ga{constructor(t,e){super(t,e)}match_op(){return this.getRuleContext(0,lf)}eq_subexpr(t){return void 0===t?this.getRuleContexts(Of):this.getRuleContext(t,Of)}NOT(){return this.getToken(tf.NOT,0)}ESCAPE(){return this.getToken(tf.ESCAPE,0)}IN(){return this.getToken(tf.IN,0)}in_expr(){return this.getRuleContext(0,Wf)}COMPACT(){return this.getToken(tf.COMPACT,0)}ISNULL(){return this.getToken(tf.ISNULL,0)}NOTNULL(){return this.getToken(tf.NOTNULL,0)}IS(){return this.getToken(tf.IS,0)}NULL(){return this.getToken(tf.NULL,0)}BETWEEN(){return this.getToken(tf.BETWEEN,0)}AND(){return this.getToken(tf.AND,0)}SYMMETRIC(){return this.getToken(tf.SYMMETRIC,0)}ASYMMETRIC(){return this.getToken(tf.ASYMMETRIC,0)}EQUALS(t){return void 0===t?this.getTokens(tf.EQUALS):this.getToken(tf.EQUALS,t)}EQUALS2(t){return void 0===t?this.getTokens(tf.EQUALS2):this.getToken(tf.EQUALS2,t)}NOT_EQUALS(t){return void 0===t?this.getTokens(tf.NOT_EQUALS):this.getToken(tf.NOT_EQUALS,t)}NOT_EQUALS2(t){return void 0===t?this.getTokens(tf.NOT_EQUALS2):this.getToken(tf.NOT_EQUALS2,t)}distinct_from_op(t){return void 0===t?this.getRuleContexts(Af):this.getRuleContext(t,Af)}get ruleIndex(){return tf.RULE_cond_expr}accept(t){return t.visitCond_expr?t.visitCond_expr(this):t.visitChildren(this)}},lf=class extends ga{constructor(t,e){super(t,e)}LIKE(){return this.getToken(tf.LIKE,0)}ILIKE(){return this.getToken(tf.ILIKE,0)}GLOB(){return this.getToken(tf.GLOB,0)}REGEXP(){return this.getToken(tf.REGEXP,0)}RLIKE(){return this.getToken(tf.RLIKE,0)}MATCH(){return this.getToken(tf.MATCH,0)}get ruleIndex(){return tf.RULE_match_op}accept(t){return t.visitMatch_op?t.visitMatch_op(this):t.visitChildren(this)}},Of=class extends ga{constructor(t,e){super(t,e)}neq_subexpr(t){return void 0===t?this.getRuleContexts(Lf):this.getRuleContext(t,Lf)}LESS(t){return void 0===t?this.getTokens(tf.LESS):this.getToken(tf.LESS,t)}LESS_OR_EQ(t){return void 0===t?this.getTokens(tf.LESS_OR_EQ):this.getToken(tf.LESS_OR_EQ,t)}GREATER(t){return void 0===t?this.getTokens(tf.GREATER):this.getToken(tf.GREATER,t)}GREATER_OR_EQ(t){return void 0===t?this.getTokens(tf.GREATER_OR_EQ):this.getToken(tf.GREATER_OR_EQ,t)}get ruleIndex(){return tf.RULE_eq_subexpr}accept(t){return t.visitEq_subexpr?t.visitEq_subexpr(this):t.visitChildren(this)}},If=class extends ga{constructor(t,e){super(t,e)}GREATER(t){return void 0===t?this.getTokens(tf.GREATER):this.getToken(tf.GREATER,t)}get ruleIndex(){return tf.RULE_shift_right}accept(t){return t.visitShift_right?t.visitShift_right(this):t.visitChildren(this)}},uf=class extends ga{constructor(t,e){super(t,e)}GREATER(t){return void 0===t?this.getTokens(tf.GREATER):this.getToken(tf.GREATER,t)}PIPE(){return this.getToken(tf.PIPE,0)}get ruleIndex(){return tf.RULE_rot_right}accept(t){return t.visitRot_right?t.visitRot_right(this):t.visitChildren(this)}},Nf=class extends ga{constructor(t,e){super(t,e)}QUESTION(t){return void 0===t?this.getTokens(tf.QUESTION):this.getToken(tf.QUESTION,t)}get ruleIndex(){return tf.RULE_double_question}accept(t){return t.visitDouble_question?t.visitDouble_question(this):t.visitChildren(this)}},Lf=class t extends ga{constructor(t,e){super(t,e)}bit_subexpr(t){return void 0===t?this.getRuleContexts(Cf):this.getRuleContext(t,Cf)}SHIFT_LEFT(t){return void 0===t?this.getTokens(tf.SHIFT_LEFT):this.getToken(tf.SHIFT_LEFT,t)}shift_right(t){return void 0===t?this.getRuleContexts(If):this.getRuleContext(t,If)}ROT_LEFT(t){return void 0===t?this.getTokens(tf.ROT_LEFT):this.getToken(tf.ROT_LEFT,t)}rot_right(t){return void 0===t?this.getRuleContexts(uf):this.getRuleContext(t,uf)}AMPERSAND(t){return void 0===t?this.getTokens(tf.AMPERSAND):this.getToken(tf.AMPERSAND,t)}PIPE(t){return void 0===t?this.getTokens(tf.PIPE):this.getToken(tf.PIPE,t)}CARET(t){return void 0===t?this.getTokens(tf.CARET):this.getToken(tf.CARET,t)}double_question(){return this.getRuleContext(0,Nf)}neq_subexpr(){return this.getRuleContext(0,t)}QUESTION(t){return void 0===t?this.getTokens(tf.QUESTION):this.getToken(tf.QUESTION,t)}get ruleIndex(){return tf.RULE_neq_subexpr}accept(t){return t.visitNeq_subexpr?t.visitNeq_subexpr(this):t.visitChildren(this)}},Cf=class extends ga{constructor(t,e){super(t,e)}add_subexpr(t){return void 0===t?this.getRuleContexts(_f):this.getRuleContext(t,_f)}PLUS(t){return void 0===t?this.getTokens(tf.PLUS):this.getToken(tf.PLUS,t)}MINUS(t){return void 0===t?this.getTokens(tf.MINUS):this.getToken(tf.MINUS,t)}get ruleIndex(){return tf.RULE_bit_subexpr}accept(t){return t.visitBit_subexpr?t.visitBit_subexpr(this):t.visitChildren(this)}},_f=class extends ga{constructor(t,e){super(t,e)}mul_subexpr(t){return void 0===t?this.getRuleContexts(Pf):this.getRuleContext(t,Pf)}ASTERISK(t){return void 0===t?this.getTokens(tf.ASTERISK):this.getToken(tf.ASTERISK,t)}SLASH(t){return void 0===t?this.getTokens(tf.SLASH):this.getToken(tf.SLASH,t)}PERCENT(t){return void 0===t?this.getTokens(tf.PERCENT):this.getToken(tf.PERCENT,t)}get ruleIndex(){return tf.RULE_add_subexpr}accept(t){return t.visitAdd_subexpr?t.visitAdd_subexpr(this):t.visitChildren(this)}},Pf=class extends ga{constructor(t,e){super(t,e)}con_subexpr(t){return void 0===t?this.getRuleContexts(Mf):this.getRuleContext(t,Mf)}DOUBLE_PIPE(t){return void 0===t?this.getTokens(tf.DOUBLE_PIPE):this.getToken(tf.DOUBLE_PIPE,t)}get ruleIndex(){return tf.RULE_mul_subexpr}accept(t){return t.visitMul_subexpr?t.visitMul_subexpr(this):t.visitChildren(this)}},Mf=class extends ga{constructor(t,e){super(t,e)}unary_subexpr(){return this.getRuleContext(0,pf)}unary_op(){return this.getRuleContext(0,df)}get ruleIndex(){return tf.RULE_con_subexpr}accept(t){return t.visitCon_subexpr?t.visitCon_subexpr(this):t.visitChildren(this)}},df=class extends ga{constructor(t,e){super(t,e)}PLUS(){return this.getToken(tf.PLUS,0)}MINUS(){return this.getToken(tf.MINUS,0)}TILDA(){return this.getToken(tf.TILDA,0)}NOT(){return this.getToken(tf.NOT,0)}get ruleIndex(){return tf.RULE_unary_op}accept(t){return t.visitUnary_op?t.visitUnary_op(this):t.visitChildren(this)}},Uf=class extends ga{constructor(t,e){super(t,e)}key_expr(t){return void 0===t?this.getRuleContexts(IY):this.getRuleContext(t,IY)}invoke_expr(t){return void 0===t?this.getRuleContexts(SY):this.getRuleContext(t,SY)}COLLATE(){return this.getToken(tf.COLLATE,0)}an_id(){return this.getRuleContext(0,YX)}DOT(t){return void 0===t?this.getTokens(tf.DOT):this.getToken(tf.DOT,t)}bind_parameter(t){return void 0===t?this.getRuleContexts(LY):this.getRuleContext(t,LY)}DIGITS(t){return void 0===t?this.getTokens(tf.DIGITS):this.getToken(tf.DIGITS,t)}an_id_or_type(t){return void 0===t?this.getRuleContexts(wX):this.getRuleContext(t,wX)}get ruleIndex(){return tf.RULE_unary_subexpr_suffix}accept(t){return t.visitUnary_subexpr_suffix?t.visitUnary_subexpr_suffix(this):t.visitChildren(this)}},mf=class extends ga{constructor(t,e){super(t,e)}unary_subexpr_suffix(){return this.getRuleContext(0,Uf)}id_expr(){return this.getRuleContext(0,HX)}atom_expr(){return this.getRuleContext(0,vf)}get ruleIndex(){return tf.RULE_unary_casual_subexpr}accept(t){return t.visitUnary_casual_subexpr?t.visitUnary_casual_subexpr(this):t.visitChildren(this)}},Df=class extends ga{constructor(t,e){super(t,e)}unary_subexpr_suffix(){return this.getRuleContext(0,Uf)}id_expr_in(){return this.getRuleContext(0,GX)}in_atom_expr(){return this.getRuleContext(0,Bf)}get ruleIndex(){return tf.RULE_in_unary_casual_subexpr}accept(t){return t.visitIn_unary_casual_subexpr?t.visitIn_unary_casual_subexpr(this):t.visitChildren(this)}},pf=class extends ga{constructor(t,e){super(t,e)}unary_casual_subexpr(){return this.getRuleContext(0,mf)}json_api_expr(){return this.getRuleContext(0,Vf)}get ruleIndex(){return tf.RULE_unary_subexpr}accept(t){return t.visitUnary_subexpr?t.visitUnary_subexpr(this):t.visitChildren(this)}},gf=class extends ga{constructor(t,e){super(t,e)}in_unary_casual_subexpr(){return this.getRuleContext(0,Df)}json_api_expr(){return this.getRuleContext(0,Vf)}get ruleIndex(){return tf.RULE_in_unary_subexpr}accept(t){return t.visitIn_unary_subexpr?t.visitIn_unary_subexpr(this):t.visitChildren(this)}},xf=class extends ga{constructor(t,e){super(t,e)}LBRACE_SQUARE(){return this.getToken(tf.LBRACE_SQUARE,0)}RBRACE_SQUARE(){return this.getToken(tf.RBRACE_SQUARE,0)}expr_list(){return this.getRuleContext(0,rY)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_list_literal}accept(t){return t.visitList_literal?t.visitList_literal(this):t.visitChildren(this)}},kf=class extends ga{constructor(t,e){super(t,e)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}COLON(t){return void 0===t?this.getTokens(tf.COLON):this.getToken(tf.COLON,t)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_expr_dict_list}accept(t){return t.visitExpr_dict_list?t.visitExpr_dict_list(this):t.visitChildren(this)}},Hf=class extends ga{constructor(t,e){super(t,e)}LBRACE_CURLY(){return this.getToken(tf.LBRACE_CURLY,0)}RBRACE_CURLY(){return this.getToken(tf.RBRACE_CURLY,0)}expr_dict_list(){return this.getRuleContext(0,kf)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_dict_literal}accept(t){return t.visitDict_literal?t.visitDict_literal(this):t.visitChildren(this)}},Gf=class extends ga{constructor(t,e){super(t,e)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}COLON(t){return void 0===t?this.getTokens(tf.COLON):this.getToken(tf.COLON,t)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_expr_struct_list}accept(t){return t.visitExpr_struct_list?t.visitExpr_struct_list(this):t.visitChildren(this)}},Ff=class extends ga{constructor(t,e){super(t,e)}STRUCT_OPEN(){return this.getToken(tf.STRUCT_OPEN,0)}STRUCT_CLOSE(){return this.getToken(tf.STRUCT_CLOSE,0)}expr_struct_list(){return this.getRuleContext(0,Gf)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_struct_literal}accept(t){return t.visitStruct_literal?t.visitStruct_literal(this):t.visitChildren(this)}},vf=class extends ga{constructor(t,e){super(t,e)}literal_value(){return this.getRuleContext(0,NY)}bind_parameter(){return this.getRuleContext(0,LY)}lambda(){return this.getRuleContext(0,bf)}cast_expr(){return this.getRuleContext(0,yf)}exists_expr(){return this.getRuleContext(0,Yf)}case_expr(){return this.getRuleContext(0,wf)}an_id_or_type(){return this.getRuleContext(0,wX)}NAMESPACE(){return this.getToken(tf.NAMESPACE,0)}id_or_type(){return this.getRuleContext(0,tK)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}value_constructor(){return this.getRuleContext(0,zY)}bitcast_expr(){return this.getRuleContext(0,ff)}list_literal(){return this.getRuleContext(0,xf)}dict_literal(){return this.getRuleContext(0,Hf)}struct_literal(){return this.getRuleContext(0,Ff)}get ruleIndex(){return tf.RULE_atom_expr}accept(t){return t.visitAtom_expr?t.visitAtom_expr(this):t.visitChildren(this)}},Bf=class extends ga{constructor(t,e){super(t,e)}literal_value(){return this.getRuleContext(0,NY)}bind_parameter(){return this.getRuleContext(0,LY)}lambda(){return this.getRuleContext(0,bf)}cast_expr(){return this.getRuleContext(0,yf)}case_expr(){return this.getRuleContext(0,wf)}an_id_or_type(){return this.getRuleContext(0,wX)}NAMESPACE(){return this.getToken(tf.NAMESPACE,0)}id_or_type(){return this.getRuleContext(0,tK)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}select_stmt(){return this.getRuleContext(0,Tw)}RPAREN(){return this.getToken(tf.RPAREN,0)}value_constructor(){return this.getRuleContext(0,zY)}bitcast_expr(){return this.getRuleContext(0,ff)}list_literal(){return this.getRuleContext(0,xf)}dict_literal(){return this.getRuleContext(0,Hf)}struct_literal(){return this.getRuleContext(0,Ff)}get ruleIndex(){return tf.RULE_in_atom_expr}accept(t){return t.visitIn_atom_expr?t.visitIn_atom_expr(this):t.visitChildren(this)}},yf=class extends ga{constructor(t,e){super(t,e)}CAST(){return this.getToken(tf.CAST,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(){return this.getRuleContext(0,Ef)}AS(){return this.getToken(tf.AS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_cast_expr}accept(t){return t.visitCast_expr?t.visitCast_expr(this):t.visitChildren(this)}},ff=class extends ga{constructor(t,e){super(t,e)}BITCAST(){return this.getToken(tf.BITCAST,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(){return this.getRuleContext(0,Ef)}AS(){return this.getToken(tf.AS,0)}type_name_simple(){return this.getRuleContext(0,UY)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_bitcast_expr}accept(t){return t.visitBitcast_expr?t.visitBitcast_expr(this):t.visitChildren(this)}},Yf=class extends ga{constructor(t,e){super(t,e)}EXISTS(){return this.getToken(tf.EXISTS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}select_stmt(){return this.getRuleContext(0,Tw)}values_stmt(){return this.getRuleContext(0,db)}get ruleIndex(){return tf.RULE_exists_expr}accept(t){return t.visitExists_expr?t.visitExists_expr(this):t.visitChildren(this)}},wf=class extends ga{constructor(t,e){super(t,e)}CASE(){return this.getToken(tf.CASE,0)}END(){return this.getToken(tf.END,0)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}when_expr(t){return void 0===t?this.getRuleContexts(uY):this.getRuleContext(t,uY)}ELSE(){return this.getToken(tf.ELSE,0)}get ruleIndex(){return tf.RULE_case_expr}accept(t){return t.visitCase_expr?t.visitCase_expr(this):t.visitChildren(this)}},bf=class extends ga{constructor(t,e){super(t,e)}smart_parenthesis(){return this.getRuleContext(0,aY)}ARROW(){return this.getToken(tf.ARROW,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(){return this.getRuleContext(0,Ef)}RPAREN(){return this.getToken(tf.RPAREN,0)}LBRACE_CURLY(){return this.getToken(tf.LBRACE_CURLY,0)}lambda_body(){return this.getRuleContext(0,rf)}RBRACE_CURLY(){return this.getToken(tf.RBRACE_CURLY,0)}get ruleIndex(){return tf.RULE_lambda}accept(t){return t.visitLambda?t.visitLambda(this):t.visitChildren(this)}},Wf=class extends ga{constructor(t,e){super(t,e)}in_unary_subexpr(){return this.getRuleContext(0,gf)}get ruleIndex(){return tf.RULE_in_expr}accept(t){return t.visitIn_expr?t.visitIn_expr(this):t.visitChildren(this)}},Vf=class extends ga{constructor(t,e){super(t,e)}json_value(){return this.getRuleContext(0,jf)}json_exists(){return this.getRuleContext(0,$f)}json_query(){return this.getRuleContext(0,sY)}get ruleIndex(){return tf.RULE_json_api_expr}accept(t){return t.visitJson_api_expr?t.visitJson_api_expr(this):t.visitChildren(this)}},Xf=class extends ga{constructor(t,e){super(t,e)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_jsonpath_spec}accept(t){return t.visitJsonpath_spec?t.visitJsonpath_spec(this):t.visitChildren(this)}},Kf=class extends ga{constructor(t,e){super(t,e)}id_expr(){return this.getRuleContext(0,HX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_json_variable_name}accept(t){return t.visitJson_variable_name?t.visitJson_variable_name(this):t.visitChildren(this)}},Qf=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}AS(){return this.getToken(tf.AS,0)}json_variable_name(){return this.getRuleContext(0,Kf)}get ruleIndex(){return tf.RULE_json_variable}accept(t){return t.visitJson_variable?t.visitJson_variable(this):t.visitChildren(this)}},Jf=class extends ga{constructor(t,e){super(t,e)}json_variable(t){return void 0===t?this.getRuleContexts(Qf):this.getRuleContext(t,Qf)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_json_variables}accept(t){return t.visitJson_variables?t.visitJson_variables(this):t.visitChildren(this)}},Zf=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}COMMA(){return this.getToken(tf.COMMA,0)}jsonpath_spec(){return this.getRuleContext(0,Xf)}PASSING(){return this.getToken(tf.PASSING,0)}json_variables(){return this.getRuleContext(0,Jf)}get ruleIndex(){return tf.RULE_json_common_args}accept(t){return t.visitJson_common_args?t.visitJson_common_args(this):t.visitChildren(this)}},qf=class extends ga{constructor(t,e){super(t,e)}ERROR(){return this.getToken(tf.ERROR,0)}NULL(){return this.getToken(tf.NULL,0)}DEFAULT(){return this.getToken(tf.DEFAULT,0)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_json_case_handler}accept(t){return t.visitJson_case_handler?t.visitJson_case_handler(this):t.visitChildren(this)}},jf=class extends ga{constructor(t,e){super(t,e)}JSON_VALUE(){return this.getToken(tf.JSON_VALUE,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}json_common_args(){return this.getRuleContext(0,Zf)}RPAREN(){return this.getToken(tf.RPAREN,0)}RETURNING(){return this.getToken(tf.RETURNING,0)}type_name_simple(){return this.getRuleContext(0,UY)}json_case_handler(t){return void 0===t?this.getRuleContexts(qf):this.getRuleContext(t,qf)}ON(t){return void 0===t?this.getTokens(tf.ON):this.getToken(tf.ON,t)}EMPTY(t){return void 0===t?this.getTokens(tf.EMPTY):this.getToken(tf.EMPTY,t)}ERROR(t){return void 0===t?this.getTokens(tf.ERROR):this.getToken(tf.ERROR,t)}get ruleIndex(){return tf.RULE_json_value}accept(t){return t.visitJson_value?t.visitJson_value(this):t.visitChildren(this)}},zf=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(tf.ON,0)}ERROR(t){return void 0===t?this.getTokens(tf.ERROR):this.getToken(tf.ERROR,t)}TRUE(){return this.getToken(tf.TRUE,0)}FALSE(){return this.getToken(tf.FALSE,0)}UNKNOWN(){return this.getToken(tf.UNKNOWN,0)}get ruleIndex(){return tf.RULE_json_exists_handler}accept(t){return t.visitJson_exists_handler?t.visitJson_exists_handler(this):t.visitChildren(this)}},$f=class extends ga{constructor(t,e){super(t,e)}JSON_EXISTS(){return this.getToken(tf.JSON_EXISTS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}json_common_args(){return this.getRuleContext(0,Zf)}RPAREN(){return this.getToken(tf.RPAREN,0)}json_exists_handler(){return this.getRuleContext(0,zf)}get ruleIndex(){return tf.RULE_json_exists}accept(t){return t.visitJson_exists?t.visitJson_exists(this):t.visitChildren(this)}},tY=class extends ga{constructor(t,e){super(t,e)}WITHOUT(){return this.getToken(tf.WITHOUT,0)}ARRAY(){return this.getToken(tf.ARRAY,0)}WITH(){return this.getToken(tf.WITH,0)}CONDITIONAL(){return this.getToken(tf.CONDITIONAL,0)}UNCONDITIONAL(){return this.getToken(tf.UNCONDITIONAL,0)}get ruleIndex(){return tf.RULE_json_query_wrapper}accept(t){return t.visitJson_query_wrapper?t.visitJson_query_wrapper(this):t.visitChildren(this)}},eY=class extends ga{constructor(t,e){super(t,e)}ERROR(){return this.getToken(tf.ERROR,0)}NULL(){return this.getToken(tf.NULL,0)}EMPTY(){return this.getToken(tf.EMPTY,0)}ARRAY(){return this.getToken(tf.ARRAY,0)}OBJECT(){return this.getToken(tf.OBJECT,0)}get ruleIndex(){return tf.RULE_json_query_handler}accept(t){return t.visitJson_query_handler?t.visitJson_query_handler(this):t.visitChildren(this)}},sY=class extends ga{constructor(t,e){super(t,e)}JSON_QUERY(){return this.getToken(tf.JSON_QUERY,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}json_common_args(){return this.getRuleContext(0,Zf)}RPAREN(){return this.getToken(tf.RPAREN,0)}json_query_wrapper(){return this.getRuleContext(0,tY)}WRAPPER(){return this.getToken(tf.WRAPPER,0)}json_query_handler(t){return void 0===t?this.getRuleContexts(eY):this.getRuleContext(t,eY)}ON(t){return void 0===t?this.getTokens(tf.ON):this.getToken(tf.ON,t)}EMPTY(){return this.getToken(tf.EMPTY,0)}ERROR(){return this.getToken(tf.ERROR,0)}get ruleIndex(){return tf.RULE_json_query}accept(t){return t.visitJson_query?t.visitJson_query(this):t.visitChildren(this)}},aY=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}named_expr_list(){return this.getRuleContext(0,AY)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_smart_parenthesis}accept(t){return t.visitSmart_parenthesis?t.visitSmart_parenthesis(this):t.visitChildren(this)}},rY=class extends ga{constructor(t,e){super(t,e)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_expr_list}accept(t){return t.visitExpr_list?t.visitExpr_list(this):t.visitChildren(this)}},iY=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_pure_column_list}accept(t){return t.visitPure_column_list?t.visitPure_column_list(this):t.visitChildren(this)}},cY=class extends ga{constructor(t,e){super(t,e)}bind_parameter(){return this.getRuleContext(0,LY)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_pure_column_or_named}accept(t){return t.visitPure_column_or_named?t.visitPure_column_or_named(this):t.visitChildren(this)}},nY=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}pure_column_or_named(t){return void 0===t?this.getRuleContexts(cY):this.getRuleContext(t,cY)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_pure_column_or_named_list}accept(t){return t.visitPure_column_or_named_list?t.visitPure_column_or_named_list(this):t.visitChildren(this)}},hY=class extends ga{constructor(t,e){super(t,e)}opt_id_prefix(){return this.getRuleContext(0,zX)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_column_name}accept(t){return t.visitColumn_name?t.visitColumn_name(this):t.visitChildren(this)}},EY=class extends ga{constructor(t,e){super(t,e)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}DOT(){return this.getToken(tf.DOT,0)}an_id_without(){return this.getRuleContext(0,QX)}get ruleIndex(){return tf.RULE_without_column_name}accept(t){return t.visitWithout_column_name?t.visitWithout_column_name(this):t.visitChildren(this)}},TY=class extends ga{constructor(t,e){super(t,e)}column_name(t){return void 0===t?this.getRuleContexts(hY):this.getRuleContext(t,hY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_column_list}accept(t){return t.visitColumn_list?t.visitColumn_list(this):t.visitChildren(this)}},oY=class extends ga{constructor(t,e){super(t,e)}without_column_name(t){return void 0===t?this.getRuleContexts(EY):this.getRuleContext(t,EY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_without_column_list}accept(t){return t.visitWithout_column_list?t.visitWithout_column_list(this):t.visitChildren(this)}},RY=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}AS(){return this.getToken(tf.AS,0)}an_id_or_type(){return this.getRuleContext(0,wX)}get ruleIndex(){return tf.RULE_named_expr}accept(t){return t.visitNamed_expr?t.visitNamed_expr(this):t.visitChildren(this)}},AY=class extends ga{constructor(t,e){super(t,e)}named_expr(t){return void 0===t?this.getRuleContexts(RY):this.getRuleContext(t,RY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_named_expr_list}accept(t){return t.visitNamed_expr_list?t.visitNamed_expr_list(this):t.visitChildren(this)}},SY=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}invoke_expr_tail(){return this.getRuleContext(0,lY)}opt_set_quantifier(){return this.getRuleContext(0,Lw)}named_expr_list(){return this.getRuleContext(0,AY)}ASTERISK(){return this.getToken(tf.ASTERISK,0)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_invoke_expr}accept(t){return t.visitInvoke_expr?t.visitInvoke_expr(this):t.visitChildren(this)}},lY=class extends ga{constructor(t,e){super(t,e)}null_treatment(){return this.getRuleContext(0,cX)}filter_clause(){return this.getRuleContext(0,nX)}OVER(){return this.getToken(tf.OVER,0)}window_name_or_specification(){return this.getRuleContext(0,hX)}get ruleIndex(){return tf.RULE_invoke_expr_tail}accept(t){return t.visitInvoke_expr_tail?t.visitInvoke_expr_tail(this):t.visitChildren(this)}},OY=class extends ga{constructor(t,e){super(t,e)}invoke_expr(){return this.getRuleContext(0,SY)}an_id_expr(){return this.getRuleContext(0,WX)}bind_parameter(){return this.getRuleContext(0,LY)}an_id_or_type(t){return void 0===t?this.getRuleContexts(wX):this.getRuleContext(t,wX)}NAMESPACE(){return this.getToken(tf.NAMESPACE,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}FUNCTION(){return this.getToken(tf.FUNCTION,0)}get ruleIndex(){return tf.RULE_using_call_expr}accept(t){return t.visitUsing_call_expr?t.visitUsing_call_expr(this):t.visitChildren(this)}},IY=class extends ga{constructor(t,e){super(t,e)}LBRACE_SQUARE(){return this.getToken(tf.LBRACE_SQUARE,0)}expr(){return this.getRuleContext(0,Ef)}RBRACE_SQUARE(){return this.getToken(tf.RBRACE_SQUARE,0)}get ruleIndex(){return tf.RULE_key_expr}accept(t){return t.visitKey_expr?t.visitKey_expr(this):t.visitChildren(this)}},uY=class extends ga{constructor(t,e){super(t,e)}WHEN(){return this.getToken(tf.WHEN,0)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}THEN(){return this.getToken(tf.THEN,0)}get ruleIndex(){return tf.RULE_when_expr}accept(t){return t.visitWhen_expr?t.visitWhen_expr(this):t.visitChildren(this)}},NY=class extends ga{constructor(t,e){super(t,e)}integer(){return this.getRuleContext(0,uK)}real(){return this.getRuleContext(0,IK)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}BLOB(){return this.getToken(tf.BLOB,0)}NULL(){return this.getToken(tf.NULL,0)}CURRENT_TIME(){return this.getToken(tf.CURRENT_TIME,0)}CURRENT_DATE(){return this.getToken(tf.CURRENT_DATE,0)}CURRENT_TIMESTAMP(){return this.getToken(tf.CURRENT_TIMESTAMP,0)}bool_value(){return this.getRuleContext(0,OK)}EMPTY_ACTION(){return this.getToken(tf.EMPTY_ACTION,0)}get ruleIndex(){return tf.RULE_literal_value}accept(t){return t.visitLiteral_value?t.visitLiteral_value(this):t.visitChildren(this)}},LY=class extends ga{constructor(t,e){super(t,e)}DOLLAR(){return this.getToken(tf.DOLLAR,0)}an_id_or_type(){return this.getRuleContext(0,wX)}TRUE(){return this.getToken(tf.TRUE,0)}FALSE(){return this.getToken(tf.FALSE,0)}get ruleIndex(){return tf.RULE_bind_parameter}accept(t){return t.visitBind_parameter?t.visitBind_parameter(this):t.visitChildren(this)}},CY=class extends ga{constructor(t,e){super(t,e)}bind_parameter(){return this.getRuleContext(0,LY)}QUESTION(){return this.getToken(tf.QUESTION,0)}get ruleIndex(){return tf.RULE_opt_bind_parameter}accept(t){return t.visitOpt_bind_parameter?t.visitOpt_bind_parameter(this):t.visitChildren(this)}},_Y=class extends ga{constructor(t,e){super(t,e)}bind_parameter(t){return void 0===t?this.getRuleContexts(LY):this.getRuleContext(t,LY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_bind_parameter_list}accept(t){return t.visitBind_parameter_list?t.visitBind_parameter_list(this):t.visitChildren(this)}},PY=class extends ga{constructor(t,e){super(t,e)}bind_parameter(t){return void 0===t?this.getRuleContexts(LY):this.getRuleContext(t,LY)}AS(){return this.getToken(tf.AS,0)}get ruleIndex(){return tf.RULE_named_bind_parameter}accept(t){return t.visitNamed_bind_parameter?t.visitNamed_bind_parameter(this):t.visitChildren(this)}},MY=class extends ga{constructor(t,e){super(t,e)}named_bind_parameter(t){return void 0===t?this.getRuleContexts(PY):this.getRuleContext(t,PY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_named_bind_parameter_list}accept(t){return t.visitNamed_bind_parameter_list?t.visitNamed_bind_parameter_list(this):t.visitChildren(this)}},dY=class extends ga{constructor(t,e){super(t,e)}integer(){return this.getRuleContext(0,uK)}real(){return this.getRuleContext(0,IK)}PLUS(){return this.getToken(tf.PLUS,0)}MINUS(){return this.getToken(tf.MINUS,0)}get ruleIndex(){return tf.RULE_signed_number}accept(t){return t.visitSigned_number?t.visitSigned_number(this):t.visitChildren(this)}},UY=class extends ga{constructor(t,e){super(t,e)}an_id_pure(){return this.getRuleContext(0,ZX)}get ruleIndex(){return tf.RULE_type_name_simple}accept(t){return t.visitType_name_simple?t.visitType_name_simple(this):t.visitChildren(this)}},mY=class extends ga{constructor(t,e){super(t,e)}integer(){return this.getRuleContext(0,uK)}bind_parameter(){return this.getRuleContext(0,LY)}get ruleIndex(){return tf.RULE_integer_or_bind}accept(t){return t.visitInteger_or_bind?t.visitInteger_or_bind(this):t.visitChildren(this)}},DY=class extends ga{constructor(t,e){super(t,e)}id(){return this.getRuleContext(0,xX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}bind_parameter(){return this.getRuleContext(0,LY)}get ruleIndex(){return tf.RULE_type_name_tag}accept(t){return t.visitType_name_tag?t.visitType_name_tag(this):t.visitChildren(this)}},pY=class extends ga{constructor(t,e){super(t,e)}type_name_tag(){return this.getRuleContext(0,DY)}COLON(){return this.getToken(tf.COLON,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}get ruleIndex(){return tf.RULE_struct_arg}accept(t){return t.visitStruct_arg?t.visitStruct_arg(this):t.visitChildren(this)}},gY=class extends ga{constructor(t,e){super(t,e)}type_name_tag(){return this.getRuleContext(0,DY)}type_name_or_bind(){return this.getRuleContext(0,qY)}NULL(){return this.getToken(tf.NULL,0)}NOT(){return this.getToken(tf.NOT,0)}AS(){return this.getToken(tf.AS,0)}get ruleIndex(){return tf.RULE_struct_arg_positional}accept(t){return t.visitStruct_arg_positional?t.visitStruct_arg_positional(this):t.visitChildren(this)}},xY=class extends ga{constructor(t,e){super(t,e)}type_name_or_bind(){return this.getRuleContext(0,qY)}type_name_tag(){return this.getRuleContext(0,DY)}COLON(){return this.getToken(tf.COLON,0)}get ruleIndex(){return tf.RULE_variant_arg}accept(t){return t.visitVariant_arg?t.visitVariant_arg(this):t.visitChildren(this)}},kY=class extends ga{constructor(t,e){super(t,e)}variant_arg(){return this.getRuleContext(0,xY)}LBRACE_CURLY(){return this.getToken(tf.LBRACE_CURLY,0)}AUTOMAP(){return this.getToken(tf.AUTOMAP,0)}RBRACE_CURLY(){return this.getToken(tf.RBRACE_CURLY,0)}get ruleIndex(){return tf.RULE_callable_arg}accept(t){return t.visitCallable_arg?t.visitCallable_arg(this):t.visitChildren(this)}},HY=class extends ga{constructor(t,e){super(t,e)}callable_arg(t){return void 0===t?this.getRuleContexts(kY):this.getRuleContext(t,kY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_callable_arg_list}accept(t){return t.visitCallable_arg_list?t.visitCallable_arg_list(this):t.visitChildren(this)}},GY=class extends ga{constructor(t,e){super(t,e)}DECIMAL(){return this.getToken(tf.DECIMAL,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}integer_or_bind(t){return void 0===t?this.getRuleContexts(mY):this.getRuleContext(t,mY)}COMMA(){return this.getToken(tf.COMMA,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_type_name_decimal}accept(t){return t.visitType_name_decimal?t.visitType_name_decimal(this):t.visitChildren(this)}},FY=class extends ga{constructor(t,e){super(t,e)}OPTIONAL(){return this.getToken(tf.OPTIONAL,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_optional}accept(t){return t.visitType_name_optional?t.visitType_name_optional(this):t.visitChildren(this)}},vY=class extends ga{constructor(t,e){super(t,e)}TUPLE(){return this.getToken(tf.TUPLE,0)}LESS(){return this.getToken(tf.LESS,0)}GREATER(){return this.getToken(tf.GREATER,0)}NOT_EQUALS2(){return this.getToken(tf.NOT_EQUALS2,0)}type_name_or_bind(t){return void 0===t?this.getRuleContexts(qY):this.getRuleContext(t,qY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_type_name_tuple}accept(t){return t.visitType_name_tuple?t.visitType_name_tuple(this):t.visitChildren(this)}},BY=class extends ga{constructor(t,e){super(t,e)}STRUCT(){return this.getToken(tf.STRUCT,0)}LESS(){return this.getToken(tf.LESS,0)}GREATER(){return this.getToken(tf.GREATER,0)}NOT_EQUALS2(){return this.getToken(tf.NOT_EQUALS2,0)}struct_arg(t){return void 0===t?this.getRuleContexts(pY):this.getRuleContext(t,pY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_type_name_struct}accept(t){return t.visitType_name_struct?t.visitType_name_struct(this):t.visitChildren(this)}},yY=class extends ga{constructor(t,e){super(t,e)}VARIANT(){return this.getToken(tf.VARIANT,0)}LESS(){return this.getToken(tf.LESS,0)}variant_arg(t){return void 0===t?this.getRuleContexts(xY):this.getRuleContext(t,xY)}GREATER(){return this.getToken(tf.GREATER,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_type_name_variant}accept(t){return t.visitType_name_variant?t.visitType_name_variant(this):t.visitChildren(this)}},fY=class extends ga{constructor(t,e){super(t,e)}LIST(){return this.getToken(tf.LIST,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_list}accept(t){return t.visitType_name_list?t.visitType_name_list(this):t.visitChildren(this)}},YY=class extends ga{constructor(t,e){super(t,e)}STREAM(){return this.getToken(tf.STREAM,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_stream}accept(t){return t.visitType_name_stream?t.visitType_name_stream(this):t.visitChildren(this)}},wY=class extends ga{constructor(t,e){super(t,e)}FLOW(){return this.getToken(tf.FLOW,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_flow}accept(t){return t.visitType_name_flow?t.visitType_name_flow(this):t.visitChildren(this)}},bY=class extends ga{constructor(t,e){super(t,e)}DICT(){return this.getToken(tf.DICT,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(t){return void 0===t?this.getRuleContexts(qY):this.getRuleContext(t,qY)}COMMA(){return this.getToken(tf.COMMA,0)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_dict}accept(t){return t.visitType_name_dict?t.visitType_name_dict(this):t.visitChildren(this)}},WY=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_set}accept(t){return t.visitType_name_set?t.visitType_name_set(this):t.visitChildren(this)}},VY=class extends ga{constructor(t,e){super(t,e)}ENUM(){return this.getToken(tf.ENUM,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_tag(t){return void 0===t?this.getRuleContexts(DY):this.getRuleContext(t,DY)}GREATER(){return this.getToken(tf.GREATER,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_type_name_enum}accept(t){return t.visitType_name_enum?t.visitType_name_enum(this):t.visitChildren(this)}},XY=class extends ga{constructor(t,e){super(t,e)}RESOURCE(){return this.getToken(tf.RESOURCE,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_tag(){return this.getRuleContext(0,DY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_resource}accept(t){return t.visitType_name_resource?t.visitType_name_resource(this):t.visitChildren(this)}},KY=class extends ga{constructor(t,e){super(t,e)}TAGGED(){return this.getToken(tf.TAGGED,0)}LESS(){return this.getToken(tf.LESS,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}COMMA(){return this.getToken(tf.COMMA,0)}type_name_tag(){return this.getRuleContext(0,DY)}GREATER(){return this.getToken(tf.GREATER,0)}get ruleIndex(){return tf.RULE_type_name_tagged}accept(t){return t.visitType_name_tagged?t.visitType_name_tagged(this):t.visitChildren(this)}},QY=class extends ga{constructor(t,e){super(t,e)}CALLABLE(){return this.getToken(tf.CALLABLE,0)}LESS(){return this.getToken(tf.LESS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}ARROW(){return this.getToken(tf.ARROW,0)}type_name_or_bind(){return this.getRuleContext(0,qY)}GREATER(){return this.getToken(tf.GREATER,0)}callable_arg_list(t){return void 0===t?this.getRuleContexts(HY):this.getRuleContext(t,HY)}COMMA(){return this.getToken(tf.COMMA,0)}LBRACE_SQUARE(){return this.getToken(tf.LBRACE_SQUARE,0)}RBRACE_SQUARE(){return this.getToken(tf.RBRACE_SQUARE,0)}get ruleIndex(){return tf.RULE_type_name_callable}accept(t){return t.visitType_name_callable?t.visitType_name_callable(this):t.visitChildren(this)}},JY=class extends ga{constructor(t,e){super(t,e)}type_name_optional(){return this.getRuleContext(0,FY)}type_name_tuple(){return this.getRuleContext(0,vY)}type_name_struct(){return this.getRuleContext(0,BY)}type_name_variant(){return this.getRuleContext(0,yY)}type_name_list(){return this.getRuleContext(0,fY)}type_name_stream(){return this.getRuleContext(0,YY)}type_name_flow(){return this.getRuleContext(0,wY)}type_name_dict(){return this.getRuleContext(0,bY)}type_name_set(){return this.getRuleContext(0,WY)}type_name_enum(){return this.getRuleContext(0,VY)}type_name_resource(){return this.getRuleContext(0,XY)}type_name_tagged(){return this.getRuleContext(0,KY)}type_name_callable(){return this.getRuleContext(0,QY)}QUESTION(t){return void 0===t?this.getTokens(tf.QUESTION):this.getToken(tf.QUESTION,t)}get ruleIndex(){return tf.RULE_type_name_composite}accept(t){return t.visitType_name_composite?t.visitType_name_composite(this):t.visitChildren(this)}},ZY=class extends ga{constructor(t,e){super(t,e)}type_name_composite(){return this.getRuleContext(0,JY)}type_name_decimal(){return this.getRuleContext(0,GY)}type_name_simple(){return this.getRuleContext(0,UY)}QUESTION(t){return void 0===t?this.getTokens(tf.QUESTION):this.getToken(tf.QUESTION,t)}get ruleIndex(){return tf.RULE_type_name}accept(t){return t.visitType_name?t.visitType_name(this):t.visitChildren(this)}},qY=class extends ga{constructor(t,e){super(t,e)}type_name(){return this.getRuleContext(0,ZY)}bind_parameter(){return this.getRuleContext(0,LY)}get ruleIndex(){return tf.RULE_type_name_or_bind}accept(t){return t.visitType_name_or_bind?t.visitType_name_or_bind(this):t.visitChildren(this)}},jY=class extends ga{constructor(t,e){super(t,e)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_value_constructor_literal}accept(t){return t.visitValue_constructor_literal?t.visitValue_constructor_literal(this):t.visitChildren(this)}},zY=class extends ga{constructor(t,e){super(t,e)}VARIANT(){return this.getToken(tf.VARIANT,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}RPAREN(){return this.getToken(tf.RPAREN,0)}ENUM(){return this.getToken(tf.ENUM,0)}CALLABLE(){return this.getToken(tf.CALLABLE,0)}get ruleIndex(){return tf.RULE_value_constructor}accept(t){return t.visitValue_constructor?t.visitValue_constructor(this):t.visitChildren(this)}},$Y=class extends ga{constructor(t,e){super(t,e)}DECLARE(){return this.getToken(tf.DECLARE,0)}bind_parameter(){return this.getRuleContext(0,LY)}AS(){return this.getToken(tf.AS,0)}type_name(){return this.getRuleContext(0,ZY)}EQUALS(){return this.getToken(tf.EQUALS,0)}literal_value(){return this.getRuleContext(0,NY)}get ruleIndex(){return tf.RULE_declare_stmt}accept(t){return t.visitDeclare_stmt?t.visitDeclare_stmt(this):t.visitChildren(this)}},tw=class extends ga{constructor(t,e){super(t,e)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}DOT(t){return void 0===t?this.getTokens(tf.DOT):this.getToken(tf.DOT,t)}get ruleIndex(){return tf.RULE_module_path}accept(t){return t.visitModule_path?t.visitModule_path(this):t.visitChildren(this)}},ew=class extends ga{constructor(t,e){super(t,e)}IMPORT(){return this.getToken(tf.IMPORT,0)}module_path(){return this.getRuleContext(0,tw)}SYMBOLS(){return this.getToken(tf.SYMBOLS,0)}named_bind_parameter_list(){return this.getRuleContext(0,MY)}get ruleIndex(){return tf.RULE_import_stmt}accept(t){return t.visitImport_stmt?t.visitImport_stmt(this):t.visitChildren(this)}},sw=class extends ga{constructor(t,e){super(t,e)}EXPORT(){return this.getToken(tf.EXPORT,0)}bind_parameter_list(){return this.getRuleContext(0,_Y)}get ruleIndex(){return tf.RULE_export_stmt}accept(t){return t.visitExport_stmt?t.visitExport_stmt(this):t.visitChildren(this)}},aw=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}bind_parameter(){return this.getRuleContext(0,LY)}EMPTY_ACTION(){return this.getToken(tf.EMPTY_ACTION,0)}expr_list(){return this.getRuleContext(0,rY)}get ruleIndex(){return tf.RULE_call_action}accept(t){return t.visitCall_action?t.visitCall_action(this):t.visitChildren(this)}},rw=class extends ga{constructor(t,e){super(t,e)}BEGIN(){return this.getToken(tf.BEGIN,0)}define_action_or_subquery_body(){return this.getRuleContext(0,lV)}END(){return this.getToken(tf.END,0)}DO(){return this.getToken(tf.DO,0)}get ruleIndex(){return tf.RULE_inline_action}accept(t){return t.visitInline_action?t.visitInline_action(this):t.visitChildren(this)}},iw=class extends ga{constructor(t,e){super(t,e)}DO(){return this.getToken(tf.DO,0)}call_action(){return this.getRuleContext(0,aw)}inline_action(){return this.getRuleContext(0,rw)}get ruleIndex(){return tf.RULE_do_stmt}accept(t){return t.visitDo_stmt?t.visitDo_stmt(this):t.visitChildren(this)}},cw=class extends ga{constructor(t,e){super(t,e)}PRAGMA(){return this.getToken(tf.PRAGMA,0)}opt_id_prefix_or_type(){return this.getRuleContext(0,eK)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}pragma_value(t){return void 0===t?this.getRuleContexts(nw):this.getRuleContext(t,nw)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_pragma_stmt}accept(t){return t.visitPragma_stmt?t.visitPragma_stmt(this):t.visitChildren(this)}},nw=class extends ga{constructor(t,e){super(t,e)}signed_number(){return this.getRuleContext(0,dY)}id(){return this.getRuleContext(0,xX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}bool_value(){return this.getRuleContext(0,OK)}bind_parameter(){return this.getRuleContext(0,LY)}get ruleIndex(){return tf.RULE_pragma_value}accept(t){return t.visitPragma_value?t.visitPragma_value(this):t.visitChildren(this)}},hw=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}ASC(){return this.getToken(tf.ASC,0)}DESC(){return this.getToken(tf.DESC,0)}get ruleIndex(){return tf.RULE_sort_specification}accept(t){return t.visitSort_specification?t.visitSort_specification(this):t.visitChildren(this)}},Ew=class extends ga{constructor(t,e){super(t,e)}sort_specification(t){return void 0===t?this.getRuleContexts(hw):this.getRuleContext(t,hw)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_sort_specification_list}accept(t){return t.visitSort_specification_list?t.visitSort_specification_list(this):t.visitChildren(this)}},Tw=class extends ga{constructor(t,e){super(t,e)}select_kind_parenthesis(t){return void 0===t?this.getRuleContexts(Rw):this.getRuleContext(t,Rw)}select_op(t){return void 0===t?this.getRuleContexts(Aw):this.getRuleContext(t,Aw)}get ruleIndex(){return tf.RULE_select_stmt}accept(t){return t.visitSelect_stmt?t.visitSelect_stmt(this):t.visitChildren(this)}},ow=class extends ga{constructor(t,e){super(t,e)}select_kind_partial(){return this.getRuleContext(0,Sw)}select_op(t){return void 0===t?this.getRuleContexts(Aw):this.getRuleContext(t,Aw)}select_kind_parenthesis(t){return void 0===t?this.getRuleContexts(Rw):this.getRuleContext(t,Rw)}get ruleIndex(){return tf.RULE_select_unparenthesized_stmt}accept(t){return t.visitSelect_unparenthesized_stmt?t.visitSelect_unparenthesized_stmt(this):t.visitChildren(this)}},Rw=class extends ga{constructor(t,e){super(t,e)}select_kind_partial(){return this.getRuleContext(0,Sw)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_select_kind_parenthesis}accept(t){return t.visitSelect_kind_parenthesis?t.visitSelect_kind_parenthesis(this):t.visitChildren(this)}},Aw=class extends ga{constructor(t,e){super(t,e)}UNION(){return this.getToken(tf.UNION,0)}ALL(){return this.getToken(tf.ALL,0)}INTERSECT(){return this.getToken(tf.INTERSECT,0)}EXCEPT(){return this.getToken(tf.EXCEPT,0)}get ruleIndex(){return tf.RULE_select_op}accept(t){return t.visitSelect_op?t.visitSelect_op(this):t.visitChildren(this)}},Sw=class extends ga{constructor(t,e){super(t,e)}select_kind(){return this.getRuleContext(0,lw)}LIMIT(){return this.getToken(tf.LIMIT,0)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}OFFSET(){return this.getToken(tf.OFFSET,0)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_select_kind_partial}accept(t){return t.visitSelect_kind_partial?t.visitSelect_kind_partial(this):t.visitChildren(this)}},lw=class extends ga{constructor(t,e){super(t,e)}process_core(){return this.getRuleContext(0,Ow)}reduce_core(){return this.getRuleContext(0,Nw)}select_core(){return this.getRuleContext(0,Cw)}DISCARD(){return this.getToken(tf.DISCARD,0)}INTO(){return this.getToken(tf.INTO,0)}RESULT(){return this.getToken(tf.RESULT,0)}pure_column_or_named(){return this.getRuleContext(0,cY)}get ruleIndex(){return tf.RULE_select_kind}accept(t){return t.visitSelect_kind?t.visitSelect_kind(this):t.visitChildren(this)}},Ow=class extends ga{constructor(t,e){super(t,e)}PROCESS(){return this.getToken(tf.PROCESS,0)}named_single_source(t){return void 0===t?this.getRuleContexts(Ab):this.getRuleContext(t,Ab)}STREAM(){return this.getToken(tf.STREAM,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}USING(){return this.getToken(tf.USING,0)}using_call_expr(){return this.getRuleContext(0,OY)}AS(){return this.getToken(tf.AS,0)}an_id(){return this.getRuleContext(0,YX)}WITH(){return this.getToken(tf.WITH,0)}external_call_settings(){return this.getRuleContext(0,uw)}where_expr(){return this.getRuleContext(0,MK)}HAVING(){return this.getToken(tf.HAVING,0)}expr(){return this.getRuleContext(0,Ef)}ASSUME(){return this.getToken(tf.ASSUME,0)}order_by_clause(){return this.getRuleContext(0,jw)}get ruleIndex(){return tf.RULE_process_core}accept(t){return t.visitProcess_core?t.visitProcess_core(this):t.visitChildren(this)}},Iw=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_external_call_param}accept(t){return t.visitExternal_call_param?t.visitExternal_call_param(this):t.visitChildren(this)}},uw=class extends ga{constructor(t,e){super(t,e)}external_call_param(t){return void 0===t?this.getRuleContexts(Iw):this.getRuleContext(t,Iw)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_external_call_settings}accept(t){return t.visitExternal_call_settings?t.visitExternal_call_settings(this):t.visitChildren(this)}},Nw=class extends ga{constructor(t,e){super(t,e)}REDUCE(){return this.getToken(tf.REDUCE,0)}named_single_source(t){return void 0===t?this.getRuleContexts(Ab):this.getRuleContext(t,Ab)}ON(){return this.getToken(tf.ON,0)}column_list(){return this.getRuleContext(0,TY)}USING(){return this.getToken(tf.USING,0)}using_call_expr(){return this.getRuleContext(0,OY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}PRESORT(){return this.getToken(tf.PRESORT,0)}sort_specification_list(){return this.getRuleContext(0,Ew)}ALL(){return this.getToken(tf.ALL,0)}AS(){return this.getToken(tf.AS,0)}an_id(){return this.getRuleContext(0,YX)}where_expr(){return this.getRuleContext(0,MK)}HAVING(){return this.getToken(tf.HAVING,0)}expr(){return this.getRuleContext(0,Ef)}ASSUME(){return this.getToken(tf.ASSUME,0)}order_by_clause(){return this.getRuleContext(0,jw)}get ruleIndex(){return tf.RULE_reduce_core}accept(t){return t.visitReduce_core?t.visitReduce_core(this):t.visitChildren(this)}},Lw=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(tf.ALL,0)}DISTINCT(){return this.getToken(tf.DISTINCT,0)}get ruleIndex(){return tf.RULE_opt_set_quantifier}accept(t){return t.visitOpt_set_quantifier?t.visitOpt_set_quantifier(this):t.visitChildren(this)}},Cw=class extends ga{constructor(t,e){super(t,e)}SELECT(){return this.getToken(tf.SELECT,0)}opt_set_quantifier(){return this.getRuleContext(0,Lw)}result_column(t){return void 0===t?this.getRuleContexts(hb):this.getRuleContext(t,hb)}FROM(t){return void 0===t?this.getTokens(tf.FROM):this.getToken(tf.FROM,t)}join_source(t){return void 0===t?this.getRuleContexts(Eb):this.getRuleContext(t,Eb)}STREAM(){return this.getToken(tf.STREAM,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}WITHOUT(){return this.getToken(tf.WITHOUT,0)}without_column_list(){return this.getRuleContext(0,oY)}where_expr(){return this.getRuleContext(0,MK)}group_by_clause(){return this.getRuleContext(0,$w)}HAVING(){return this.getToken(tf.HAVING,0)}expr(){return this.getRuleContext(0,Ef)}window_clause(){return this.getRuleContext(0,TX)}ext_order_by_clause(){return this.getRuleContext(0,zw)}get ruleIndex(){return tf.RULE_select_core}accept(t){return t.visitSelect_core?t.visitSelect_core(this):t.visitChildren(this)}},_w=class extends ga{constructor(t,e){super(t,e)}MATCH_RECOGNIZE(){return this.getToken(tf.MATCH_RECOGNIZE,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}row_pattern_common_syntax(){return this.getRuleContext(0,Dw)}RPAREN(){return this.getToken(tf.RPAREN,0)}window_partition_clause(){return this.getRuleContext(0,IX)}order_by_clause(){return this.getRuleContext(0,jw)}row_pattern_measures(){return this.getRuleContext(0,dw)}row_pattern_rows_per_match(){return this.getRuleContext(0,Pw)}get ruleIndex(){return tf.RULE_row_pattern_recognition_clause}accept(t){return t.visitRow_pattern_recognition_clause?t.visitRow_pattern_recognition_clause(this):t.visitChildren(this)}},Pw=class extends ga{constructor(t,e){super(t,e)}ONE(){return this.getToken(tf.ONE,0)}ROW(){return this.getToken(tf.ROW,0)}PER(){return this.getToken(tf.PER,0)}MATCH(){return this.getToken(tf.MATCH,0)}ALL(){return this.getToken(tf.ALL,0)}ROWS(){return this.getToken(tf.ROWS,0)}row_pattern_empty_match_handling(){return this.getRuleContext(0,Mw)}get ruleIndex(){return tf.RULE_row_pattern_rows_per_match}accept(t){return t.visitRow_pattern_rows_per_match?t.visitRow_pattern_rows_per_match(this):t.visitChildren(this)}},Mw=class extends ga{constructor(t,e){super(t,e)}SHOW(){return this.getToken(tf.SHOW,0)}EMPTY(){return this.getToken(tf.EMPTY,0)}MATCHES(){return this.getToken(tf.MATCHES,0)}OMIT(){return this.getToken(tf.OMIT,0)}WITH(){return this.getToken(tf.WITH,0)}UNMATCHED(){return this.getToken(tf.UNMATCHED,0)}ROWS(){return this.getToken(tf.ROWS,0)}get ruleIndex(){return tf.RULE_row_pattern_empty_match_handling}accept(t){return t.visitRow_pattern_empty_match_handling?t.visitRow_pattern_empty_match_handling(this):t.visitChildren(this)}},dw=class extends ga{constructor(t,e){super(t,e)}MEASURES(){return this.getToken(tf.MEASURES,0)}row_pattern_measure_list(){return this.getRuleContext(0,Uw)}get ruleIndex(){return tf.RULE_row_pattern_measures}accept(t){return t.visitRow_pattern_measures?t.visitRow_pattern_measures(this):t.visitChildren(this)}},Uw=class extends ga{constructor(t,e){super(t,e)}row_pattern_measure_definition(t){return void 0===t?this.getRuleContexts(mw):this.getRuleContext(t,mw)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_row_pattern_measure_list}accept(t){return t.visitRow_pattern_measure_list?t.visitRow_pattern_measure_list(this):t.visitChildren(this)}},mw=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}AS(){return this.getToken(tf.AS,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_row_pattern_measure_definition}accept(t){return t.visitRow_pattern_measure_definition?t.visitRow_pattern_measure_definition(this):t.visitChildren(this)}},Dw=class extends ga{constructor(t,e){super(t,e)}PATTERN(){return this.getToken(tf.PATTERN,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}row_pattern(){return this.getRuleContext(0,kw)}RPAREN(){return this.getToken(tf.RPAREN,0)}DEFINE(){return this.getToken(tf.DEFINE,0)}row_pattern_definition_list(){return this.getRuleContext(0,Xw)}AFTER(){return this.getToken(tf.AFTER,0)}MATCH(){return this.getToken(tf.MATCH,0)}row_pattern_skip_to(){return this.getRuleContext(0,pw)}row_pattern_initial_or_seek(){return this.getRuleContext(0,xw)}row_pattern_subset_clause(){return this.getRuleContext(0,fw)}get ruleIndex(){return tf.RULE_row_pattern_common_syntax}accept(t){return t.visitRow_pattern_common_syntax?t.visitRow_pattern_common_syntax(this):t.visitChildren(this)}},pw=class extends ga{constructor(t,e){super(t,e)}SKIP_RULE(){return this.getToken(tf.SKIP_RULE,0)}TO(){return this.getToken(tf.TO,0)}NEXT(){return this.getToken(tf.NEXT,0)}ROW(){return this.getToken(tf.ROW,0)}PAST(){return this.getToken(tf.PAST,0)}LAST(){return this.getToken(tf.LAST,0)}FIRST(){return this.getToken(tf.FIRST,0)}row_pattern_skip_to_variable_name(){return this.getRuleContext(0,gw)}get ruleIndex(){return tf.RULE_row_pattern_skip_to}accept(t){return t.visitRow_pattern_skip_to?t.visitRow_pattern_skip_to(this):t.visitChildren(this)}},gw=class extends ga{constructor(t,e){super(t,e)}row_pattern_variable_name(){return this.getRuleContext(0,qw)}get ruleIndex(){return tf.RULE_row_pattern_skip_to_variable_name}accept(t){return t.visitRow_pattern_skip_to_variable_name?t.visitRow_pattern_skip_to_variable_name(this):t.visitChildren(this)}},xw=class extends ga{constructor(t,e){super(t,e)}INITIAL(){return this.getToken(tf.INITIAL,0)}SEEK(){return this.getToken(tf.SEEK,0)}get ruleIndex(){return tf.RULE_row_pattern_initial_or_seek}accept(t){return t.visitRow_pattern_initial_or_seek?t.visitRow_pattern_initial_or_seek(this):t.visitChildren(this)}},kw=class extends ga{constructor(t,e){super(t,e)}row_pattern_term(t){return void 0===t?this.getRuleContexts(Hw):this.getRuleContext(t,Hw)}PIPE(t){return void 0===t?this.getTokens(tf.PIPE):this.getToken(tf.PIPE,t)}get ruleIndex(){return tf.RULE_row_pattern}accept(t){return t.visitRow_pattern?t.visitRow_pattern(this):t.visitChildren(this)}},Hw=class extends ga{constructor(t,e){super(t,e)}row_pattern_factor(t){return void 0===t?this.getRuleContexts(Gw):this.getRuleContext(t,Gw)}get ruleIndex(){return tf.RULE_row_pattern_term}accept(t){return t.visitRow_pattern_term?t.visitRow_pattern_term(this):t.visitChildren(this)}},Gw=class extends ga{constructor(t,e){super(t,e)}row_pattern_primary(){return this.getRuleContext(0,vw)}row_pattern_quantifier(){return this.getRuleContext(0,Fw)}get ruleIndex(){return tf.RULE_row_pattern_factor}accept(t){return t.visitRow_pattern_factor?t.visitRow_pattern_factor(this):t.visitChildren(this)}},Fw=class extends ga{constructor(t,e){super(t,e)}ASTERISK(){return this.getToken(tf.ASTERISK,0)}QUESTION(t){return void 0===t?this.getTokens(tf.QUESTION):this.getToken(tf.QUESTION,t)}PLUS(){return this.getToken(tf.PLUS,0)}LBRACE_CURLY(){return this.getToken(tf.LBRACE_CURLY,0)}COMMA(){return this.getToken(tf.COMMA,0)}RBRACE_CURLY(){return this.getToken(tf.RBRACE_CURLY,0)}integer(t){return void 0===t?this.getRuleContexts(uK):this.getRuleContext(t,uK)}get ruleIndex(){return tf.RULE_row_pattern_quantifier}accept(t){return t.visitRow_pattern_quantifier?t.visitRow_pattern_quantifier(this):t.visitChildren(this)}},vw=class extends ga{constructor(t,e){super(t,e)}row_pattern_primary_variable_name(){return this.getRuleContext(0,Bw)}DOLLAR(){return this.getToken(tf.DOLLAR,0)}CARET(){return this.getToken(tf.CARET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}row_pattern(){return this.getRuleContext(0,kw)}LBRACE_CURLY(){return this.getToken(tf.LBRACE_CURLY,0)}MINUS(t){return void 0===t?this.getTokens(tf.MINUS):this.getToken(tf.MINUS,t)}RBRACE_CURLY(){return this.getToken(tf.RBRACE_CURLY,0)}row_pattern_permute(){return this.getRuleContext(0,yw)}get ruleIndex(){return tf.RULE_row_pattern_primary}accept(t){return t.visitRow_pattern_primary?t.visitRow_pattern_primary(this):t.visitChildren(this)}},Bw=class extends ga{constructor(t,e){super(t,e)}row_pattern_variable_name(){return this.getRuleContext(0,qw)}get ruleIndex(){return tf.RULE_row_pattern_primary_variable_name}accept(t){return t.visitRow_pattern_primary_variable_name?t.visitRow_pattern_primary_variable_name(this):t.visitChildren(this)}},yw=class extends ga{constructor(t,e){super(t,e)}PERMUTE(){return this.getToken(tf.PERMUTE,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}row_pattern(t){return void 0===t?this.getRuleContexts(kw):this.getRuleContext(t,kw)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_row_pattern_permute}accept(t){return t.visitRow_pattern_permute?t.visitRow_pattern_permute(this):t.visitChildren(this)}},fw=class extends ga{constructor(t,e){super(t,e)}SUBSET(){return this.getToken(tf.SUBSET,0)}row_pattern_subset_list(){return this.getRuleContext(0,Yw)}get ruleIndex(){return tf.RULE_row_pattern_subset_clause}accept(t){return t.visitRow_pattern_subset_clause?t.visitRow_pattern_subset_clause(this):t.visitChildren(this)}},Yw=class extends ga{constructor(t,e){super(t,e)}row_pattern_subset_item(t){return void 0===t?this.getRuleContexts(ww):this.getRuleContext(t,ww)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_row_pattern_subset_list}accept(t){return t.visitRow_pattern_subset_list?t.visitRow_pattern_subset_list(this):t.visitChildren(this)}},ww=class extends ga{constructor(t,e){super(t,e)}row_pattern_subset_item_variable_name(){return this.getRuleContext(0,bw)}EQUALS(){return this.getToken(tf.EQUALS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}row_pattern_subset_rhs(){return this.getRuleContext(0,Ww)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_row_pattern_subset_item}accept(t){return t.visitRow_pattern_subset_item?t.visitRow_pattern_subset_item(this):t.visitChildren(this)}},bw=class extends ga{constructor(t,e){super(t,e)}row_pattern_variable_name(){return this.getRuleContext(0,qw)}get ruleIndex(){return tf.RULE_row_pattern_subset_item_variable_name}accept(t){return t.visitRow_pattern_subset_item_variable_name?t.visitRow_pattern_subset_item_variable_name(this):t.visitChildren(this)}},Ww=class extends ga{constructor(t,e){super(t,e)}row_pattern_subset_rhs_variable_name(t){return void 0===t?this.getRuleContexts(Vw):this.getRuleContext(t,Vw)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_row_pattern_subset_rhs}accept(t){return t.visitRow_pattern_subset_rhs?t.visitRow_pattern_subset_rhs(this):t.visitChildren(this)}},Vw=class extends ga{constructor(t,e){super(t,e)}row_pattern_variable_name(){return this.getRuleContext(0,qw)}get ruleIndex(){return tf.RULE_row_pattern_subset_rhs_variable_name}accept(t){return t.visitRow_pattern_subset_rhs_variable_name?t.visitRow_pattern_subset_rhs_variable_name(this):t.visitChildren(this)}},Xw=class extends ga{constructor(t,e){super(t,e)}row_pattern_definition(t){return void 0===t?this.getRuleContexts(Kw):this.getRuleContext(t,Kw)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_row_pattern_definition_list}accept(t){return t.visitRow_pattern_definition_list?t.visitRow_pattern_definition_list(this):t.visitChildren(this)}},Kw=class extends ga{constructor(t,e){super(t,e)}row_pattern_definition_variable_name(){return this.getRuleContext(0,Qw)}AS(){return this.getToken(tf.AS,0)}row_pattern_definition_search_condition(){return this.getRuleContext(0,Jw)}get ruleIndex(){return tf.RULE_row_pattern_definition}accept(t){return t.visitRow_pattern_definition?t.visitRow_pattern_definition(this):t.visitChildren(this)}},Qw=class extends ga{constructor(t,e){super(t,e)}row_pattern_variable_name(){return this.getRuleContext(0,qw)}get ruleIndex(){return tf.RULE_row_pattern_definition_variable_name}accept(t){return t.visitRow_pattern_definition_variable_name?t.visitRow_pattern_definition_variable_name(this):t.visitChildren(this)}},Jw=class extends ga{constructor(t,e){super(t,e)}search_condition(){return this.getRuleContext(0,Zw)}get ruleIndex(){return tf.RULE_row_pattern_definition_search_condition}accept(t){return t.visitRow_pattern_definition_search_condition?t.visitRow_pattern_definition_search_condition(this):t.visitChildren(this)}},Zw=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_search_condition}accept(t){return t.visitSearch_condition?t.visitSearch_condition(this):t.visitChildren(this)}},qw=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}get ruleIndex(){return tf.RULE_row_pattern_variable_name}accept(t){return t.visitRow_pattern_variable_name?t.visitRow_pattern_variable_name(this):t.visitChildren(this)}},jw=class extends ga{constructor(t,e){super(t,e)}ORDER(){return this.getToken(tf.ORDER,0)}BY(){return this.getToken(tf.BY,0)}sort_specification_list(){return this.getRuleContext(0,Ew)}get ruleIndex(){return tf.RULE_order_by_clause}accept(t){return t.visitOrder_by_clause?t.visitOrder_by_clause(this):t.visitChildren(this)}},zw=class extends ga{constructor(t,e){super(t,e)}order_by_clause(){return this.getRuleContext(0,jw)}ASSUME(){return this.getToken(tf.ASSUME,0)}get ruleIndex(){return tf.RULE_ext_order_by_clause}accept(t){return t.visitExt_order_by_clause?t.visitExt_order_by_clause(this):t.visitChildren(this)}},$w=class extends ga{constructor(t,e){super(t,e)}GROUP(){return this.getToken(tf.GROUP,0)}BY(){return this.getToken(tf.BY,0)}opt_set_quantifier(){return this.getRuleContext(0,Lw)}grouping_element_list(){return this.getRuleContext(0,tb)}COMPACT(){return this.getToken(tf.COMPACT,0)}WITH(){return this.getToken(tf.WITH,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_group_by_clause}accept(t){return t.visitGroup_by_clause?t.visitGroup_by_clause(this):t.visitChildren(this)}},tb=class extends ga{constructor(t,e){super(t,e)}grouping_element(t){return void 0===t?this.getRuleContexts(eb):this.getRuleContext(t,eb)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_grouping_element_list}accept(t){return t.visitGrouping_element_list?t.visitGrouping_element_list(this):t.visitChildren(this)}},eb=class extends ga{constructor(t,e){super(t,e)}ordinary_grouping_set(){return this.getRuleContext(0,sb)}rollup_list(){return this.getRuleContext(0,rb)}cube_list(){return this.getRuleContext(0,ib)}grouping_sets_specification(){return this.getRuleContext(0,cb)}hopping_window_specification(){return this.getRuleContext(0,nb)}get ruleIndex(){return tf.RULE_grouping_element}accept(t){return t.visitGrouping_element?t.visitGrouping_element(this):t.visitChildren(this)}},sb=class extends ga{constructor(t,e){super(t,e)}named_expr(){return this.getRuleContext(0,RY)}get ruleIndex(){return tf.RULE_ordinary_grouping_set}accept(t){return t.visitOrdinary_grouping_set?t.visitOrdinary_grouping_set(this):t.visitChildren(this)}},ab=class extends ga{constructor(t,e){super(t,e)}ordinary_grouping_set(t){return void 0===t?this.getRuleContexts(sb):this.getRuleContext(t,sb)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_ordinary_grouping_set_list}accept(t){return t.visitOrdinary_grouping_set_list?t.visitOrdinary_grouping_set_list(this):t.visitChildren(this)}},rb=class extends ga{constructor(t,e){super(t,e)}ROLLUP(){return this.getToken(tf.ROLLUP,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}ordinary_grouping_set_list(){return this.getRuleContext(0,ab)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_rollup_list}accept(t){return t.visitRollup_list?t.visitRollup_list(this):t.visitChildren(this)}},ib=class extends ga{constructor(t,e){super(t,e)}CUBE(){return this.getToken(tf.CUBE,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}ordinary_grouping_set_list(){return this.getRuleContext(0,ab)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_cube_list}accept(t){return t.visitCube_list?t.visitCube_list(this):t.visitChildren(this)}},cb=class extends ga{constructor(t,e){super(t,e)}GROUPING(){return this.getToken(tf.GROUPING,0)}SETS(){return this.getToken(tf.SETS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}grouping_element_list(){return this.getRuleContext(0,tb)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_grouping_sets_specification}accept(t){return t.visitGrouping_sets_specification?t.visitGrouping_sets_specification(this):t.visitChildren(this)}},nb=class extends ga{constructor(t,e){super(t,e)}HOP(){return this.getToken(tf.HOP,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(t){return void 0===t?this.getRuleContexts(Ef):this.getRuleContext(t,Ef)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_hopping_window_specification}accept(t){return t.visitHopping_window_specification?t.visitHopping_window_specification(this):t.visitChildren(this)}},hb=class extends ga{constructor(t,e){super(t,e)}opt_id_prefix(){return this.getRuleContext(0,zX)}ASTERISK(){return this.getToken(tf.ASTERISK,0)}expr(){return this.getRuleContext(0,Ef)}an_id_as_compat(){return this.getRuleContext(0,qX)}AS(){return this.getToken(tf.AS,0)}an_id_or_type(){return this.getRuleContext(0,wX)}get ruleIndex(){return tf.RULE_result_column}accept(t){return t.visitResult_column?t.visitResult_column(this):t.visitChildren(this)}},Eb=class extends ga{constructor(t,e){super(t,e)}flatten_source(t){return void 0===t?this.getRuleContexts(Rb):this.getRuleContext(t,Rb)}ANY(t){return void 0===t?this.getTokens(tf.ANY):this.getToken(tf.ANY,t)}join_op(t){return void 0===t?this.getRuleContexts(Nb):this.getRuleContext(t,Nb)}join_constraint(t){return void 0===t?this.getRuleContexts(Lb):this.getRuleContext(t,Lb)}get ruleIndex(){return tf.RULE_join_source}accept(t){return t.visitJoin_source?t.visitJoin_source(this):t.visitChildren(this)}},Tb=class extends ga{constructor(t,e){super(t,e)}column_name(){return this.getRuleContext(0,hY)}AS(){return this.getToken(tf.AS,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_named_column}accept(t){return t.visitNamed_column?t.visitNamed_column(this):t.visitChildren(this)}},ob=class extends ga{constructor(t,e){super(t,e)}named_column(){return this.getRuleContext(0,Tb)}LPAREN(){return this.getToken(tf.LPAREN,0)}named_expr_list(){return this.getRuleContext(0,AY)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(){return this.getToken(tf.COMMA,0)}get ruleIndex(){return tf.RULE_flatten_by_arg}accept(t){return t.visitFlatten_by_arg?t.visitFlatten_by_arg(this):t.visitChildren(this)}},Rb=class extends ga{constructor(t,e){super(t,e)}named_single_source(){return this.getRuleContext(0,Ab)}FLATTEN(){return this.getToken(tf.FLATTEN,0)}BY(){return this.getToken(tf.BY,0)}flatten_by_arg(){return this.getRuleContext(0,ob)}COLUMNS(){return this.getToken(tf.COLUMNS,0)}OPTIONAL(){return this.getToken(tf.OPTIONAL,0)}LIST(){return this.getToken(tf.LIST,0)}DICT(){return this.getToken(tf.DICT,0)}get ruleIndex(){return tf.RULE_flatten_source}accept(t){return t.visitFlatten_source?t.visitFlatten_source(this):t.visitChildren(this)}},Ab=class extends ga{constructor(t,e){super(t,e)}single_source(){return this.getRuleContext(0,Sb)}row_pattern_recognition_clause(){return this.getRuleContext(0,_w)}sample_clause(){return this.getRuleContext(0,lb)}tablesample_clause(){return this.getRuleContext(0,Ob)}an_id_as_compat(){return this.getRuleContext(0,qX)}pure_column_list(){return this.getRuleContext(0,iY)}AS(){return this.getToken(tf.AS,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_named_single_source}accept(t){return t.visitNamed_single_source?t.visitNamed_single_source(this):t.visitChildren(this)}},Sb=class extends ga{constructor(t,e){super(t,e)}table_ref(){return this.getRuleContext(0,uV)}LPAREN(){return this.getToken(tf.LPAREN,0)}select_stmt(){return this.getRuleContext(0,Tw)}RPAREN(){return this.getToken(tf.RPAREN,0)}values_stmt(){return this.getRuleContext(0,db)}get ruleIndex(){return tf.RULE_single_source}accept(t){return t.visitSingle_source?t.visitSingle_source(this):t.visitChildren(this)}},lb=class extends ga{constructor(t,e){super(t,e)}SAMPLE(){return this.getToken(tf.SAMPLE,0)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_sample_clause}accept(t){return t.visitSample_clause?t.visitSample_clause(this):t.visitChildren(this)}},Ob=class extends ga{constructor(t,e){super(t,e)}TABLESAMPLE(){return this.getToken(tf.TABLESAMPLE,0)}sampling_mode(){return this.getRuleContext(0,Ib)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(){return this.getRuleContext(0,Ef)}RPAREN(){return this.getToken(tf.RPAREN,0)}repeatable_clause(){return this.getRuleContext(0,ub)}get ruleIndex(){return tf.RULE_tablesample_clause}accept(t){return t.visitTablesample_clause?t.visitTablesample_clause(this):t.visitChildren(this)}},Ib=class extends ga{constructor(t,e){super(t,e)}BERNOULLI(){return this.getToken(tf.BERNOULLI,0)}SYSTEM(){return this.getToken(tf.SYSTEM,0)}get ruleIndex(){return tf.RULE_sampling_mode}accept(t){return t.visitSampling_mode?t.visitSampling_mode(this):t.visitChildren(this)}},ub=class extends ga{constructor(t,e){super(t,e)}REPEATABLE(){return this.getToken(tf.REPEATABLE,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr(){return this.getRuleContext(0,Ef)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_repeatable_clause}accept(t){return t.visitRepeatable_clause?t.visitRepeatable_clause(this):t.visitChildren(this)}},Nb=class extends ga{constructor(t,e){super(t,e)}COMMA(){return this.getToken(tf.COMMA,0)}JOIN(){return this.getToken(tf.JOIN,0)}INNER(){return this.getToken(tf.INNER,0)}CROSS(){return this.getToken(tf.CROSS,0)}NATURAL(){return this.getToken(tf.NATURAL,0)}LEFT(){return this.getToken(tf.LEFT,0)}RIGHT(){return this.getToken(tf.RIGHT,0)}EXCLUSION(){return this.getToken(tf.EXCLUSION,0)}FULL(){return this.getToken(tf.FULL,0)}OUTER(){return this.getToken(tf.OUTER,0)}ONLY(){return this.getToken(tf.ONLY,0)}SEMI(){return this.getToken(tf.SEMI,0)}get ruleIndex(){return tf.RULE_join_op}accept(t){return t.visitJoin_op?t.visitJoin_op(this):t.visitChildren(this)}},Lb=class extends ga{constructor(t,e){super(t,e)}ON(){return this.getToken(tf.ON,0)}expr(){return this.getRuleContext(0,Ef)}USING(){return this.getToken(tf.USING,0)}pure_column_or_named_list(){return this.getRuleContext(0,nY)}get ruleIndex(){return tf.RULE_join_constraint}accept(t){return t.visitJoin_constraint?t.visitJoin_constraint(this):t.visitChildren(this)}},Cb=class extends ga{constructor(t,e){super(t,e)}RETURNING(){return this.getToken(tf.RETURNING,0)}ASTERISK(){return this.getToken(tf.ASTERISK,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_returning_columns_list}accept(t){return t.visitReturning_columns_list?t.visitReturning_columns_list(this):t.visitChildren(this)}},_b=class extends ga{constructor(t,e){super(t,e)}INTO(){return this.getToken(tf.INTO,0)}into_simple_table_ref(){return this.getRuleContext(0,UV)}into_values_source(){return this.getRuleContext(0,Mb)}INSERT(){return this.getToken(tf.INSERT,0)}OR(){return this.getToken(tf.OR,0)}ABORT(){return this.getToken(tf.ABORT,0)}REVERT(){return this.getToken(tf.REVERT,0)}IGNORE(){return this.getToken(tf.IGNORE,0)}UPSERT(){return this.getToken(tf.UPSERT,0)}REPLACE(){return this.getToken(tf.REPLACE,0)}returning_columns_list(){return this.getRuleContext(0,Cb)}get ruleIndex(){return tf.RULE_into_table_stmt}accept(t){return t.visitInto_table_stmt?t.visitInto_table_stmt(this):t.visitChildren(this)}},Pb=class extends ga{constructor(t,e){super(t,e)}INTO(){return this.getToken(tf.INTO,0)}into_simple_table_ref(){return this.getRuleContext(0,UV)}into_values_source(){return this.getRuleContext(0,Mb)}INSERT(){return this.getToken(tf.INSERT,0)}OR(){return this.getToken(tf.OR,0)}ABORT(){return this.getToken(tf.ABORT,0)}REVERT(){return this.getToken(tf.REVERT,0)}IGNORE(){return this.getToken(tf.IGNORE,0)}REPLACE(){return this.getToken(tf.REPLACE,0)}get ruleIndex(){return tf.RULE_into_table_stmt_yq}accept(t){return t.visitInto_table_stmt_yq?t.visitInto_table_stmt_yq(this):t.visitChildren(this)}},Mb=class extends ga{constructor(t,e){super(t,e)}values_source(){return this.getRuleContext(0,Ub)}pure_column_list(){return this.getRuleContext(0,iY)}DEFAULT(){return this.getToken(tf.DEFAULT,0)}VALUES(){return this.getToken(tf.VALUES,0)}get ruleIndex(){return tf.RULE_into_values_source}accept(t){return t.visitInto_values_source?t.visitInto_values_source(this):t.visitChildren(this)}},db=class extends ga{constructor(t,e){super(t,e)}VALUES(){return this.getToken(tf.VALUES,0)}values_source_row_list(){return this.getRuleContext(0,mb)}get ruleIndex(){return tf.RULE_values_stmt}accept(t){return t.visitValues_stmt?t.visitValues_stmt(this):t.visitChildren(this)}},Ub=class extends ga{constructor(t,e){super(t,e)}values_stmt(){return this.getRuleContext(0,db)}select_stmt(){return this.getRuleContext(0,Tw)}get ruleIndex(){return tf.RULE_values_source}accept(t){return t.visitValues_source?t.visitValues_source(this):t.visitChildren(this)}},mb=class extends ga{constructor(t,e){super(t,e)}values_source_row(t){return void 0===t?this.getRuleContexts(Db):this.getRuleContext(t,Db)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_values_source_row_list}accept(t){return t.visitValues_source_row_list?t.visitValues_source_row_list(this):t.visitChildren(this)}},Db=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}expr_list(){return this.getRuleContext(0,rY)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_values_source_row}accept(t){return t.visitValues_source_row?t.visitValues_source_row(this):t.visitChildren(this)}},pb=class extends ga{constructor(t,e){super(t,e)}expr_list(){return this.getRuleContext(0,rY)}select_stmt(){return this.getRuleContext(0,Tw)}get ruleIndex(){return tf.RULE_simple_values_source}accept(t){return t.visitSimple_values_source?t.visitSimple_values_source(this):t.visitChildren(this)}},gb=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}DATA(){return this.getToken(tf.DATA,0)}SOURCE(){return this.getToken(tf.SOURCE,0)}object_ref(){return this.getRuleContext(0,PV)}with_table_settings(){return this.getRuleContext(0,$b)}OR(){return this.getToken(tf.OR,0)}REPLACE(){return this.getToken(tf.REPLACE,0)}IF(){return this.getToken(tf.IF,0)}NOT(){return this.getToken(tf.NOT,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}get ruleIndex(){return tf.RULE_create_external_data_source_stmt}accept(t){return t.visitCreate_external_data_source_stmt?t.visitCreate_external_data_source_stmt(this):t.visitChildren(this)}},xb=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}DATA(){return this.getToken(tf.DATA,0)}SOURCE(){return this.getToken(tf.SOURCE,0)}object_ref(){return this.getRuleContext(0,PV)}alter_external_data_source_action(t){return void 0===t?this.getRuleContexts(kb):this.getRuleContext(t,kb)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_external_data_source_stmt}accept(t){return t.visitAlter_external_data_source_stmt?t.visitAlter_external_data_source_stmt(this):t.visitChildren(this)}},kb=class extends ga{constructor(t,e){super(t,e)}alter_table_set_table_setting_uncompat(){return this.getRuleContext(0,SW)}alter_table_set_table_setting_compat(){return this.getRuleContext(0,lW)}alter_table_reset_table_setting(){return this.getRuleContext(0,OW)}get ruleIndex(){return tf.RULE_alter_external_data_source_action}accept(t){return t.visitAlter_external_data_source_action?t.visitAlter_external_data_source_action(this):t.visitChildren(this)}},Hb=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}DATA(){return this.getToken(tf.DATA,0)}SOURCE(){return this.getToken(tf.SOURCE,0)}object_ref(){return this.getRuleContext(0,PV)}IF(){return this.getToken(tf.IF,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}get ruleIndex(){return tf.RULE_drop_external_data_source_stmt}accept(t){return t.visitDrop_external_data_source_stmt?t.visitDrop_external_data_source_stmt(this):t.visitChildren(this)}},Gb=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}VIEW(){return this.getToken(tf.VIEW,0)}object_ref(){return this.getRuleContext(0,PV)}with_table_settings(){return this.getRuleContext(0,$b)}AS(){return this.getToken(tf.AS,0)}select_stmt(){return this.getRuleContext(0,Tw)}get ruleIndex(){return tf.RULE_create_view_stmt}accept(t){return t.visitCreate_view_stmt?t.visitCreate_view_stmt(this):t.visitChildren(this)}},Fb=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}VIEW(){return this.getToken(tf.VIEW,0)}object_ref(){return this.getRuleContext(0,PV)}get ruleIndex(){return tf.RULE_drop_view_stmt}accept(t){return t.visitDrop_view_stmt?t.visitDrop_view_stmt(this):t.visitChildren(this)}},vb=class extends ga{constructor(t,e){super(t,e)}UPSERT(){return this.getToken(tf.UPSERT,0)}OBJECT(){return this.getToken(tf.OBJECT,0)}object_ref(){return this.getRuleContext(0,PV)}LPAREN(){return this.getToken(tf.LPAREN,0)}TYPE(){return this.getToken(tf.TYPE,0)}object_type_ref(){return this.getRuleContext(0,Jb)}RPAREN(){return this.getToken(tf.RPAREN,0)}create_object_features(){return this.getRuleContext(0,yb)}get ruleIndex(){return tf.RULE_upsert_object_stmt}accept(t){return t.visitUpsert_object_stmt?t.visitUpsert_object_stmt(this):t.visitChildren(this)}},Bb=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}OBJECT(){return this.getToken(tf.OBJECT,0)}object_ref(){return this.getRuleContext(0,PV)}LPAREN(){return this.getToken(tf.LPAREN,0)}TYPE(){return this.getToken(tf.TYPE,0)}object_type_ref(){return this.getRuleContext(0,Jb)}RPAREN(){return this.getToken(tf.RPAREN,0)}IF(){return this.getToken(tf.IF,0)}NOT(){return this.getToken(tf.NOT,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}create_object_features(){return this.getRuleContext(0,yb)}get ruleIndex(){return tf.RULE_create_object_stmt}accept(t){return t.visitCreate_object_stmt?t.visitCreate_object_stmt(this):t.visitChildren(this)}},yb=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(tf.WITH,0)}object_features(){return this.getRuleContext(0,Qb)}get ruleIndex(){return tf.RULE_create_object_features}accept(t){return t.visitCreate_object_features?t.visitCreate_object_features(this):t.visitChildren(this)}},fb=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}OBJECT(){return this.getToken(tf.OBJECT,0)}object_ref(){return this.getRuleContext(0,PV)}LPAREN(){return this.getToken(tf.LPAREN,0)}TYPE(){return this.getToken(tf.TYPE,0)}object_type_ref(){return this.getRuleContext(0,Jb)}RPAREN(){return this.getToken(tf.RPAREN,0)}alter_object_features(){return this.getRuleContext(0,Yb)}get ruleIndex(){return tf.RULE_alter_object_stmt}accept(t){return t.visitAlter_object_stmt?t.visitAlter_object_stmt(this):t.visitChildren(this)}},Yb=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}object_features(){return this.getRuleContext(0,Qb)}get ruleIndex(){return tf.RULE_alter_object_features}accept(t){return t.visitAlter_object_features?t.visitAlter_object_features(this):t.visitChildren(this)}},wb=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}OBJECT(){return this.getToken(tf.OBJECT,0)}object_ref(){return this.getRuleContext(0,PV)}LPAREN(){return this.getToken(tf.LPAREN,0)}TYPE(){return this.getToken(tf.TYPE,0)}object_type_ref(){return this.getRuleContext(0,Jb)}RPAREN(){return this.getToken(tf.RPAREN,0)}IF(){return this.getToken(tf.IF,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}drop_object_features(){return this.getRuleContext(0,bb)}get ruleIndex(){return tf.RULE_drop_object_stmt}accept(t){return t.visitDrop_object_stmt?t.visitDrop_object_stmt(this):t.visitChildren(this)}},bb=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(tf.WITH,0)}object_features(){return this.getRuleContext(0,Qb)}get ruleIndex(){return tf.RULE_drop_object_features}accept(t){return t.visitDrop_object_features?t.visitDrop_object_features(this):t.visitChildren(this)}},Wb=class extends ga{constructor(t,e){super(t,e)}id_or_type(){return this.getRuleContext(0,tK)}bind_parameter(){return this.getRuleContext(0,LY)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_object_feature_value}accept(t){return t.visitObject_feature_value?t.visitObject_feature_value(this):t.visitChildren(this)}},Vb=class extends ga{constructor(t,e){super(t,e)}an_id_or_type(){return this.getRuleContext(0,wX)}EQUALS(){return this.getToken(tf.EQUALS,0)}object_feature_value(){return this.getRuleContext(0,Wb)}get ruleIndex(){return tf.RULE_object_feature_kv}accept(t){return t.visitObject_feature_kv?t.visitObject_feature_kv(this):t.visitChildren(this)}},Xb=class extends ga{constructor(t,e){super(t,e)}an_id_or_type(){return this.getRuleContext(0,wX)}get ruleIndex(){return tf.RULE_object_feature_flag}accept(t){return t.visitObject_feature_flag?t.visitObject_feature_flag(this):t.visitChildren(this)}},Kb=class extends ga{constructor(t,e){super(t,e)}object_feature_kv(){return this.getRuleContext(0,Vb)}object_feature_flag(){return this.getRuleContext(0,Xb)}get ruleIndex(){return tf.RULE_object_feature}accept(t){return t.visitObject_feature?t.visitObject_feature(this):t.visitChildren(this)}},Qb=class extends ga{constructor(t,e){super(t,e)}object_feature(t){return void 0===t?this.getRuleContexts(Kb):this.getRuleContext(t,Kb)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_object_features}accept(t){return t.visitObject_features?t.visitObject_features(this):t.visitChildren(this)}},Jb=class extends ga{constructor(t,e){super(t,e)}an_id_or_type(){return this.getRuleContext(0,wX)}get ruleIndex(){return tf.RULE_object_type_ref}accept(t){return t.visitObject_type_ref?t.visitObject_type_ref(this):t.visitChildren(this)}},Zb=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}simple_table_ref(){return this.getRuleContext(0,dV)}LPAREN(){return this.getToken(tf.LPAREN,0)}create_table_entry(t){return void 0===t?this.getRuleContexts(qb):this.getRuleContext(t,qb)}RPAREN(){return this.getToken(tf.RPAREN,0)}TABLE(){return this.getToken(tf.TABLE,0)}TABLESTORE(){return this.getToken(tf.TABLESTORE,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}TEMP(){return this.getToken(tf.TEMP,0)}TEMPORARY(){return this.getToken(tf.TEMPORARY,0)}OR(){return this.getToken(tf.OR,0)}REPLACE(){return this.getToken(tf.REPLACE,0)}IF(){return this.getToken(tf.IF,0)}NOT(){return this.getToken(tf.NOT,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}table_inherits(){return this.getRuleContext(0,jb)}table_partition_by(){return this.getRuleContext(0,zb)}with_table_settings(){return this.getRuleContext(0,$b)}table_tablestore(){return this.getRuleContext(0,tW)}table_as_source(){return this.getRuleContext(0,sW)}get ruleIndex(){return tf.RULE_create_table_stmt}accept(t){return t.visitCreate_table_stmt?t.visitCreate_table_stmt(this):t.visitChildren(this)}},qb=class extends ga{constructor(t,e){super(t,e)}column_schema(){return this.getRuleContext(0,MW)}table_constraint(){return this.getRuleContext(0,DW)}table_index(){return this.getRuleContext(0,pW)}family_entry(){return this.getRuleContext(0,YW)}changefeed(){return this.getRuleContext(0,HW)}an_id_schema(){return this.getRuleContext(0,bX)}get ruleIndex(){return tf.RULE_create_table_entry}accept(t){return t.visitCreate_table_entry?t.visitCreate_table_entry(this):t.visitChildren(this)}},jb=class extends ga{constructor(t,e){super(t,e)}INHERITS(){return this.getToken(tf.INHERITS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}simple_table_ref_core(t){return void 0===t?this.getRuleContexts(MV):this.getRuleContext(t,MV)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_table_inherits}accept(t){return t.visitTable_inherits?t.visitTable_inherits(this):t.visitChildren(this)}},zb=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(tf.PARTITION,0)}BY(){return this.getToken(tf.BY,0)}HASH(){return this.getToken(tf.HASH,0)}pure_column_list(){return this.getRuleContext(0,iY)}get ruleIndex(){return tf.RULE_table_partition_by}accept(t){return t.visitTable_partition_by?t.visitTable_partition_by(this):t.visitChildren(this)}},$b=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(tf.WITH,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}table_settings_entry(t){return void 0===t?this.getRuleContexts(eW):this.getRuleContext(t,eW)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_with_table_settings}accept(t){return t.visitWith_table_settings?t.visitWith_table_settings(this):t.visitChildren(this)}},tW=class extends ga{constructor(t,e){super(t,e)}TABLESTORE(){return this.getToken(tf.TABLESTORE,0)}simple_table_ref_core(){return this.getRuleContext(0,MV)}get ruleIndex(){return tf.RULE_table_tablestore}accept(t){return t.visitTable_tablestore?t.visitTable_tablestore(this):t.visitChildren(this)}},eW=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}table_setting_value(){return this.getRuleContext(0,fW)}get ruleIndex(){return tf.RULE_table_settings_entry}accept(t){return t.visitTable_settings_entry?t.visitTable_settings_entry(this):t.visitChildren(this)}},sW=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(tf.AS,0)}values_source(){return this.getRuleContext(0,Ub)}get ruleIndex(){return tf.RULE_table_as_source}accept(t){return t.visitTable_as_source?t.visitTable_as_source(this):t.visitChildren(this)}},aW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}TABLE(){return this.getToken(tf.TABLE,0)}simple_table_ref(){return this.getRuleContext(0,dV)}alter_table_action(t){return void 0===t?this.getRuleContexts(rW):this.getRuleContext(t,rW)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_table_stmt}accept(t){return t.visitAlter_table_stmt?t.visitAlter_table_stmt(this):t.visitChildren(this)}},rW=class extends ga{constructor(t,e){super(t,e)}alter_table_add_column(){return this.getRuleContext(0,EW)}alter_table_drop_column(){return this.getRuleContext(0,TW)}alter_table_alter_column(){return this.getRuleContext(0,oW)}alter_table_add_column_family(){return this.getRuleContext(0,RW)}alter_table_alter_column_family(){return this.getRuleContext(0,AW)}alter_table_set_table_setting_uncompat(){return this.getRuleContext(0,SW)}alter_table_set_table_setting_compat(){return this.getRuleContext(0,lW)}alter_table_reset_table_setting(){return this.getRuleContext(0,OW)}alter_table_add_index(){return this.getRuleContext(0,IW)}alter_table_drop_index(){return this.getRuleContext(0,uW)}alter_table_rename_to(){return this.getRuleContext(0,NW)}alter_table_add_changefeed(){return this.getRuleContext(0,CW)}alter_table_alter_changefeed(){return this.getRuleContext(0,_W)}alter_table_drop_changefeed(){return this.getRuleContext(0,PW)}alter_table_rename_index_to(){return this.getRuleContext(0,LW)}get ruleIndex(){return tf.RULE_alter_table_action}accept(t){return t.visitAlter_table_action?t.visitAlter_table_action(this):t.visitChildren(this)}},iW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}TABLE(){return this.getToken(tf.TABLE,0)}simple_table_ref(){return this.getRuleContext(0,dV)}alter_external_table_action(t){return void 0===t?this.getRuleContexts(cW):this.getRuleContext(t,cW)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_external_table_stmt}accept(t){return t.visitAlter_external_table_stmt?t.visitAlter_external_table_stmt(this):t.visitChildren(this)}},cW=class extends ga{constructor(t,e){super(t,e)}alter_table_add_column(){return this.getRuleContext(0,EW)}alter_table_drop_column(){return this.getRuleContext(0,TW)}alter_table_set_table_setting_uncompat(){return this.getRuleContext(0,SW)}alter_table_set_table_setting_compat(){return this.getRuleContext(0,lW)}alter_table_reset_table_setting(){return this.getRuleContext(0,OW)}get ruleIndex(){return tf.RULE_alter_external_table_action}accept(t){return t.visitAlter_external_table_action?t.visitAlter_external_table_action(this):t.visitChildren(this)}},nW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}TABLESTORE(){return this.getToken(tf.TABLESTORE,0)}object_ref(){return this.getRuleContext(0,PV)}alter_table_store_action(t){return void 0===t?this.getRuleContexts(hW):this.getRuleContext(t,hW)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_table_store_stmt}accept(t){return t.visitAlter_table_store_stmt?t.visitAlter_table_store_stmt(this):t.visitChildren(this)}},hW=class extends ga{constructor(t,e){super(t,e)}alter_table_add_column(){return this.getRuleContext(0,EW)}alter_table_drop_column(){return this.getRuleContext(0,TW)}get ruleIndex(){return tf.RULE_alter_table_store_action}accept(t){return t.visitAlter_table_store_action?t.visitAlter_table_store_action(this):t.visitChildren(this)}},EW=class extends ga{constructor(t,e){super(t,e)}ADD(){return this.getToken(tf.ADD,0)}column_schema(){return this.getRuleContext(0,MW)}COLUMN(){return this.getToken(tf.COLUMN,0)}get ruleIndex(){return tf.RULE_alter_table_add_column}accept(t){return t.visitAlter_table_add_column?t.visitAlter_table_add_column(this):t.visitChildren(this)}},TW=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}an_id(){return this.getRuleContext(0,YX)}COLUMN(){return this.getToken(tf.COLUMN,0)}get ruleIndex(){return tf.RULE_alter_table_drop_column}accept(t){return t.visitAlter_table_drop_column?t.visitAlter_table_drop_column(this):t.visitChildren(this)}},oW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}COLUMN(){return this.getToken(tf.COLUMN,0)}an_id(){return this.getRuleContext(0,YX)}SET(){return this.getToken(tf.SET,0)}family_relation(){return this.getRuleContext(0,dW)}get ruleIndex(){return tf.RULE_alter_table_alter_column}accept(t){return t.visitAlter_table_alter_column?t.visitAlter_table_alter_column(this):t.visitChildren(this)}},RW=class extends ga{constructor(t,e){super(t,e)}ADD(){return this.getToken(tf.ADD,0)}family_entry(){return this.getRuleContext(0,YW)}get ruleIndex(){return tf.RULE_alter_table_add_column_family}accept(t){return t.visitAlter_table_add_column_family?t.visitAlter_table_add_column_family(this):t.visitChildren(this)}},AW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}FAMILY(){return this.getToken(tf.FAMILY,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}SET(){return this.getToken(tf.SET,0)}family_setting_value(){return this.getRuleContext(0,WW)}get ruleIndex(){return tf.RULE_alter_table_alter_column_family}accept(t){return t.visitAlter_table_alter_column_family?t.visitAlter_table_alter_column_family(this):t.visitChildren(this)}},SW=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}an_id(){return this.getRuleContext(0,YX)}table_setting_value(){return this.getRuleContext(0,fW)}get ruleIndex(){return tf.RULE_alter_table_set_table_setting_uncompat}accept(t){return t.visitAlter_table_set_table_setting_uncompat?t.visitAlter_table_set_table_setting_uncompat(this):t.visitChildren(this)}},lW=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}alter_table_setting_entry(t){return void 0===t?this.getRuleContexts(yW):this.getRuleContext(t,yW)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_table_set_table_setting_compat}accept(t){return t.visitAlter_table_set_table_setting_compat?t.visitAlter_table_set_table_setting_compat(this):t.visitChildren(this)}},OW=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(tf.RESET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_table_reset_table_setting}accept(t){return t.visitAlter_table_reset_table_setting?t.visitAlter_table_reset_table_setting(this):t.visitChildren(this)}},IW=class extends ga{constructor(t,e){super(t,e)}ADD(){return this.getToken(tf.ADD,0)}table_index(){return this.getRuleContext(0,pW)}get ruleIndex(){return tf.RULE_alter_table_add_index}accept(t){return t.visitAlter_table_add_index?t.visitAlter_table_add_index(this):t.visitChildren(this)}},uW=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}INDEX(){return this.getToken(tf.INDEX,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_alter_table_drop_index}accept(t){return t.visitAlter_table_drop_index?t.visitAlter_table_drop_index(this):t.visitChildren(this)}},NW=class extends ga{constructor(t,e){super(t,e)}RENAME(){return this.getToken(tf.RENAME,0)}TO(){return this.getToken(tf.TO,0)}an_id_table(){return this.getRuleContext(0,KX)}get ruleIndex(){return tf.RULE_alter_table_rename_to}accept(t){return t.visitAlter_table_rename_to?t.visitAlter_table_rename_to(this):t.visitChildren(this)}},LW=class extends ga{constructor(t,e){super(t,e)}RENAME(){return this.getToken(tf.RENAME,0)}INDEX(){return this.getToken(tf.INDEX,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}TO(){return this.getToken(tf.TO,0)}get ruleIndex(){return tf.RULE_alter_table_rename_index_to}accept(t){return t.visitAlter_table_rename_index_to?t.visitAlter_table_rename_index_to(this):t.visitChildren(this)}},CW=class extends ga{constructor(t,e){super(t,e)}ADD(){return this.getToken(tf.ADD,0)}changefeed(){return this.getRuleContext(0,HW)}get ruleIndex(){return tf.RULE_alter_table_add_changefeed}accept(t){return t.visitAlter_table_add_changefeed?t.visitAlter_table_add_changefeed(this):t.visitChildren(this)}},_W=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}CHANGEFEED(){return this.getToken(tf.CHANGEFEED,0)}an_id(){return this.getRuleContext(0,YX)}changefeed_alter_settings(){return this.getRuleContext(0,BW)}get ruleIndex(){return tf.RULE_alter_table_alter_changefeed}accept(t){return t.visitAlter_table_alter_changefeed?t.visitAlter_table_alter_changefeed(this):t.visitChildren(this)}},PW=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}CHANGEFEED(){return this.getToken(tf.CHANGEFEED,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_alter_table_drop_changefeed}accept(t){return t.visitAlter_table_drop_changefeed?t.visitAlter_table_drop_changefeed(this):t.visitChildren(this)}},MW=class extends ga{constructor(t,e){super(t,e)}an_id_schema(){return this.getRuleContext(0,bX)}type_name_or_bind(){return this.getRuleContext(0,qY)}opt_column_constraints(){return this.getRuleContext(0,UW)}family_relation(){return this.getRuleContext(0,dW)}get ruleIndex(){return tf.RULE_column_schema}accept(t){return t.visitColumn_schema?t.visitColumn_schema(this):t.visitChildren(this)}},dW=class extends ga{constructor(t,e){super(t,e)}FAMILY(){return this.getToken(tf.FAMILY,0)}an_id(){return this.getRuleContext(0,YX)}get ruleIndex(){return tf.RULE_family_relation}accept(t){return t.visitFamily_relation?t.visitFamily_relation(this):t.visitChildren(this)}},UW=class extends ga{constructor(t,e){super(t,e)}NULL(){return this.getToken(tf.NULL,0)}DEFAULT(){return this.getToken(tf.DEFAULT,0)}expr(){return this.getRuleContext(0,Ef)}NOT(){return this.getToken(tf.NOT,0)}get ruleIndex(){return tf.RULE_opt_column_constraints}accept(t){return t.visitOpt_column_constraints?t.visitOpt_column_constraints(this):t.visitChildren(this)}},mW=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}ASC(){return this.getToken(tf.ASC,0)}DESC(){return this.getToken(tf.DESC,0)}get ruleIndex(){return tf.RULE_column_order_by_specification}accept(t){return t.visitColumn_order_by_specification?t.visitColumn_order_by_specification(this):t.visitChildren(this)}},DW=class extends ga{constructor(t,e){super(t,e)}PRIMARY(){return this.getToken(tf.PRIMARY,0)}KEY(){return this.getToken(tf.KEY,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}PARTITION(){return this.getToken(tf.PARTITION,0)}BY(){return this.getToken(tf.BY,0)}ORDER(){return this.getToken(tf.ORDER,0)}column_order_by_specification(t){return void 0===t?this.getRuleContexts(mW):this.getRuleContext(t,mW)}get ruleIndex(){return tf.RULE_table_constraint}accept(t){return t.visitTable_constraint?t.visitTable_constraint(this):t.visitChildren(this)}},pW=class extends ga{constructor(t,e){super(t,e)}INDEX(){return this.getToken(tf.INDEX,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}table_index_type(){return this.getRuleContext(0,gW)}ON(){return this.getToken(tf.ON,0)}LPAREN(t){return void 0===t?this.getTokens(tf.LPAREN):this.getToken(tf.LPAREN,t)}an_id_schema(t){return void 0===t?this.getRuleContexts(bX):this.getRuleContext(t,bX)}RPAREN(t){return void 0===t?this.getTokens(tf.RPAREN):this.getToken(tf.RPAREN,t)}WITH(){return this.getToken(tf.WITH,0)}EQUALS(t){return void 0===t?this.getTokens(tf.EQUALS):this.getToken(tf.EQUALS,t)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}COVER(){return this.getToken(tf.COVER,0)}get ruleIndex(){return tf.RULE_table_index}accept(t){return t.visitTable_index?t.visitTable_index(this):t.visitChildren(this)}},gW=class extends ga{constructor(t,e){super(t,e)}global_index(){return this.getRuleContext(0,xW)}local_index(){return this.getRuleContext(0,kW)}get ruleIndex(){return tf.RULE_table_index_type}accept(t){return t.visitTable_index_type?t.visitTable_index_type(this):t.visitChildren(this)}},xW=class extends ga{constructor(t,e){super(t,e)}GLOBAL(){return this.getToken(tf.GLOBAL,0)}UNIQUE(){return this.getToken(tf.UNIQUE,0)}SYNC(){return this.getToken(tf.SYNC,0)}ASYNC(){return this.getToken(tf.ASYNC,0)}get ruleIndex(){return tf.RULE_global_index}accept(t){return t.visitGlobal_index?t.visitGlobal_index(this):t.visitChildren(this)}},kW=class extends ga{constructor(t,e){super(t,e)}LOCAL(){return this.getToken(tf.LOCAL,0)}get ruleIndex(){return tf.RULE_local_index}accept(t){return t.visitLocal_index?t.visitLocal_index(this):t.visitChildren(this)}},HW=class extends ga{constructor(t,e){super(t,e)}CHANGEFEED(){return this.getToken(tf.CHANGEFEED,0)}an_id(){return this.getRuleContext(0,YX)}WITH(){return this.getToken(tf.WITH,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}changefeed_settings(){return this.getRuleContext(0,GW)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_changefeed}accept(t){return t.visitChangefeed?t.visitChangefeed(this):t.visitChildren(this)}},GW=class extends ga{constructor(t,e){super(t,e)}changefeed_settings_entry(t){return void 0===t?this.getRuleContexts(FW):this.getRuleContext(t,FW)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_changefeed_settings}accept(t){return t.visitChangefeed_settings?t.visitChangefeed_settings(this):t.visitChildren(this)}},FW=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}changefeed_setting_value(){return this.getRuleContext(0,vW)}get ruleIndex(){return tf.RULE_changefeed_settings_entry}accept(t){return t.visitChangefeed_settings_entry?t.visitChangefeed_settings_entry(this):t.visitChildren(this)}},vW=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_changefeed_setting_value}accept(t){return t.visitChangefeed_setting_value?t.visitChangefeed_setting_value(this):t.visitChildren(this)}},BW=class extends ga{constructor(t,e){super(t,e)}DISABLE(){return this.getToken(tf.DISABLE,0)}SET(){return this.getToken(tf.SET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}changefeed_settings(){return this.getRuleContext(0,GW)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_changefeed_alter_settings}accept(t){return t.visitChangefeed_alter_settings?t.visitChangefeed_alter_settings(this):t.visitChildren(this)}},yW=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}table_setting_value(){return this.getRuleContext(0,fW)}get ruleIndex(){return tf.RULE_alter_table_setting_entry}accept(t){return t.visitAlter_table_setting_entry?t.visitAlter_table_setting_entry(this):t.visitChildren(this)}},fW=class extends ga{constructor(t,e){super(t,e)}id(){return this.getRuleContext(0,xX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}integer(){return this.getRuleContext(0,uK)}split_boundaries(){return this.getRuleContext(0,VW)}expr(){return this.getRuleContext(0,Ef)}ON(){return this.getToken(tf.ON,0)}an_id(){return this.getRuleContext(0,YX)}AS(){return this.getToken(tf.AS,0)}SECONDS(){return this.getToken(tf.SECONDS,0)}MILLISECONDS(){return this.getToken(tf.MILLISECONDS,0)}MICROSECONDS(){return this.getToken(tf.MICROSECONDS,0)}NANOSECONDS(){return this.getToken(tf.NANOSECONDS,0)}bool_value(){return this.getRuleContext(0,OK)}get ruleIndex(){return tf.RULE_table_setting_value}accept(t){return t.visitTable_setting_value?t.visitTable_setting_value(this):t.visitChildren(this)}},YW=class extends ga{constructor(t,e){super(t,e)}FAMILY(){return this.getToken(tf.FAMILY,0)}an_id(){return this.getRuleContext(0,YX)}family_settings(){return this.getRuleContext(0,wW)}get ruleIndex(){return tf.RULE_family_entry}accept(t){return t.visitFamily_entry?t.visitFamily_entry(this):t.visitChildren(this)}},wW=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}family_settings_entry(t){return void 0===t?this.getRuleContexts(bW):this.getRuleContext(t,bW)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_family_settings}accept(t){return t.visitFamily_settings?t.visitFamily_settings(this):t.visitChildren(this)}},bW=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}family_setting_value(){return this.getRuleContext(0,WW)}get ruleIndex(){return tf.RULE_family_settings_entry}accept(t){return t.visitFamily_settings_entry?t.visitFamily_settings_entry(this):t.visitChildren(this)}},WW=class extends ga{constructor(t,e){super(t,e)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_family_setting_value}accept(t){return t.visitFamily_setting_value?t.visitFamily_setting_value(this):t.visitChildren(this)}},VW=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}literal_value_list(t){return void 0===t?this.getRuleContexts(XW):this.getRuleContext(t,XW)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_split_boundaries}accept(t){return t.visitSplit_boundaries?t.visitSplit_boundaries(this):t.visitChildren(this)}},XW=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}literal_value(t){return void 0===t?this.getRuleContexts(NY):this.getRuleContext(t,NY)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_literal_value_list}accept(t){return t.visitLiteral_value_list?t.visitLiteral_value_list(this):t.visitChildren(this)}},KW=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}simple_table_ref(){return this.getRuleContext(0,dV)}TABLE(){return this.getToken(tf.TABLE,0)}TABLESTORE(){return this.getToken(tf.TABLESTORE,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}IF(){return this.getToken(tf.IF,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}get ruleIndex(){return tf.RULE_drop_table_stmt}accept(t){return t.visitDrop_table_stmt?t.visitDrop_table_stmt(this):t.visitChildren(this)}},QW=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}USER(){return this.getToken(tf.USER,0)}role_name(){return this.getRuleContext(0,zW)}create_user_option(){return this.getRuleContext(0,$W)}get ruleIndex(){return tf.RULE_create_user_stmt}accept(t){return t.visitCreate_user_stmt?t.visitCreate_user_stmt(this):t.visitChildren(this)}},JW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}USER(){return this.getToken(tf.USER,0)}role_name(t){return void 0===t?this.getRuleContexts(zW):this.getRuleContext(t,zW)}create_user_option(){return this.getRuleContext(0,$W)}RENAME(){return this.getToken(tf.RENAME,0)}TO(){return this.getToken(tf.TO,0)}WITH(){return this.getToken(tf.WITH,0)}get ruleIndex(){return tf.RULE_alter_user_stmt}accept(t){return t.visitAlter_user_stmt?t.visitAlter_user_stmt(this):t.visitChildren(this)}},ZW=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}GROUP(){return this.getToken(tf.GROUP,0)}role_name(t){return void 0===t?this.getRuleContexts(zW):this.getRuleContext(t,zW)}WITH(){return this.getToken(tf.WITH,0)}USER(){return this.getToken(tf.USER,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_create_group_stmt}accept(t){return t.visitCreate_group_stmt?t.visitCreate_group_stmt(this):t.visitChildren(this)}},qW=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}GROUP(){return this.getToken(tf.GROUP,0)}role_name(t){return void 0===t?this.getRuleContexts(zW):this.getRuleContext(t,zW)}USER(){return this.getToken(tf.USER,0)}RENAME(){return this.getToken(tf.RENAME,0)}TO(){return this.getToken(tf.TO,0)}ADD(){return this.getToken(tf.ADD,0)}DROP(){return this.getToken(tf.DROP,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_group_stmt}accept(t){return t.visitAlter_group_stmt?t.visitAlter_group_stmt(this):t.visitChildren(this)}},jW=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}role_name(t){return void 0===t?this.getRuleContexts(zW):this.getRuleContext(t,zW)}USER(){return this.getToken(tf.USER,0)}GROUP(){return this.getToken(tf.GROUP,0)}IF(){return this.getToken(tf.IF,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_drop_role_stmt}accept(t){return t.visitDrop_role_stmt?t.visitDrop_role_stmt(this):t.visitChildren(this)}},zW=class extends ga{constructor(t,e){super(t,e)}an_id_or_type(){return this.getRuleContext(0,wX)}bind_parameter(){return this.getRuleContext(0,LY)}get ruleIndex(){return tf.RULE_role_name}accept(t){return t.visitRole_name?t.visitRole_name(this):t.visitChildren(this)}},$W=class extends ga{constructor(t,e){super(t,e)}PASSWORD(){return this.getToken(tf.PASSWORD,0)}expr(){return this.getRuleContext(0,Ef)}ENCRYPTED(){return this.getToken(tf.ENCRYPTED,0)}get ruleIndex(){return tf.RULE_create_user_option}accept(t){return t.visitCreate_user_option?t.visitCreate_user_option(this):t.visitChildren(this)}},tV=class extends ga{constructor(t,e){super(t,e)}GRANT(t){return void 0===t?this.getTokens(tf.GRANT):this.getToken(tf.GRANT,t)}permission_name_target(){return this.getRuleContext(0,rV)}ON(){return this.getToken(tf.ON,0)}an_id_schema(t){return void 0===t?this.getRuleContexts(bX):this.getRuleContext(t,bX)}TO(){return this.getToken(tf.TO,0)}role_name(t){return void 0===t?this.getRuleContexts(zW):this.getRuleContext(t,zW)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}WITH(){return this.getToken(tf.WITH,0)}OPTION(){return this.getToken(tf.OPTION,0)}get ruleIndex(){return tf.RULE_grant_permissions_stmt}accept(t){return t.visitGrant_permissions_stmt?t.visitGrant_permissions_stmt(this):t.visitChildren(this)}},eV=class extends ga{constructor(t,e){super(t,e)}REVOKE(){return this.getToken(tf.REVOKE,0)}permission_name_target(){return this.getRuleContext(0,rV)}ON(){return this.getToken(tf.ON,0)}an_id_schema(t){return void 0===t?this.getRuleContexts(bX):this.getRuleContext(t,bX)}FROM(){return this.getToken(tf.FROM,0)}role_name(t){return void 0===t?this.getRuleContexts(zW):this.getRuleContext(t,zW)}GRANT(){return this.getToken(tf.GRANT,0)}OPTION(){return this.getToken(tf.OPTION,0)}FOR(){return this.getToken(tf.FOR,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_revoke_permissions_stmt}accept(t){return t.visitRevoke_permissions_stmt?t.visitRevoke_permissions_stmt(this):t.visitChildren(this)}},sV=class extends ga{constructor(t,e){super(t,e)}CONNECT(){return this.getToken(tf.CONNECT,0)}LIST(){return this.getToken(tf.LIST,0)}INSERT(){return this.getToken(tf.INSERT,0)}MANAGE(){return this.getToken(tf.MANAGE,0)}DROP(){return this.getToken(tf.DROP,0)}GRANT(){return this.getToken(tf.GRANT,0)}MODIFY(){return this.getToken(tf.MODIFY,0)}TABLES(){return this.getToken(tf.TABLES,0)}ATTRIBUTES(){return this.getToken(tf.ATTRIBUTES,0)}ROW(){return this.getToken(tf.ROW,0)}UPDATE(){return this.getToken(tf.UPDATE,0)}ERASE(){return this.getToken(tf.ERASE,0)}SCHEMA(){return this.getToken(tf.SCHEMA,0)}REMOVE(){return this.getToken(tf.REMOVE,0)}DESCRIBE(){return this.getToken(tf.DESCRIBE,0)}ALTER(){return this.getToken(tf.ALTER,0)}SELECT(){return this.getToken(tf.SELECT,0)}USE(){return this.getToken(tf.USE,0)}FULL(){return this.getToken(tf.FULL,0)}LEGACY(){return this.getToken(tf.LEGACY,0)}CREATE(){return this.getToken(tf.CREATE,0)}DIRECTORY(){return this.getToken(tf.DIRECTORY,0)}TABLE(){return this.getToken(tf.TABLE,0)}QUEUE(){return this.getToken(tf.QUEUE,0)}get ruleIndex(){return tf.RULE_permission_id}accept(t){return t.visitPermission_id?t.visitPermission_id(this):t.visitChildren(this)}},aV=class extends ga{constructor(t,e){super(t,e)}permission_id(){return this.getRuleContext(0,sV)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_permission_name}accept(t){return t.visitPermission_name?t.visitPermission_name(this):t.visitChildren(this)}},rV=class extends ga{constructor(t,e){super(t,e)}permission_name(t){return void 0===t?this.getRuleContexts(aV):this.getRuleContext(t,aV)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}ALL(){return this.getToken(tf.ALL,0)}PRIVILEGES(){return this.getToken(tf.PRIVILEGES,0)}get ruleIndex(){return tf.RULE_permission_name_target}accept(t){return t.visitPermission_name_target?t.visitPermission_name_target(this):t.visitChildren(this)}},iV=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}ASYNC(){return this.getToken(tf.ASYNC,0)}REPLICATION(){return this.getToken(tf.REPLICATION,0)}object_ref(){return this.getRuleContext(0,PV)}FOR(){return this.getToken(tf.FOR,0)}replication_target(t){return void 0===t?this.getRuleContexts(cV):this.getRuleContext(t,cV)}WITH(){return this.getToken(tf.WITH,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}replication_settings(){return this.getRuleContext(0,nV)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_create_replication_stmt}accept(t){return t.visitCreate_replication_stmt?t.visitCreate_replication_stmt(this):t.visitChildren(this)}},cV=class extends ga{constructor(t,e){super(t,e)}object_ref(){return this.getRuleContext(0,PV)}replication_name(){return this.getRuleContext(0,PK)}get ruleIndex(){return tf.RULE_replication_target}accept(t){return t.visitReplication_target?t.visitReplication_target(this):t.visitChildren(this)}},nV=class extends ga{constructor(t,e){super(t,e)}replication_settings_entry(t){return void 0===t?this.getRuleContexts(hV):this.getRuleContext(t,hV)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_replication_settings}accept(t){return t.visitReplication_settings?t.visitReplication_settings(this):t.visitChildren(this)}},hV=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_replication_settings_entry}accept(t){return t.visitReplication_settings_entry?t.visitReplication_settings_entry(this):t.visitChildren(this)}},EV=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}ASYNC(){return this.getToken(tf.ASYNC,0)}REPLICATION(){return this.getToken(tf.REPLICATION,0)}object_ref(){return this.getRuleContext(0,PV)}alter_replication_action(t){return void 0===t?this.getRuleContexts(TV):this.getRuleContext(t,TV)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_replication_stmt}accept(t){return t.visitAlter_replication_stmt?t.visitAlter_replication_stmt(this):t.visitChildren(this)}},TV=class extends ga{constructor(t,e){super(t,e)}alter_replication_set_setting(){return this.getRuleContext(0,oV)}get ruleIndex(){return tf.RULE_alter_replication_action}accept(t){return t.visitAlter_replication_action?t.visitAlter_replication_action(this):t.visitChildren(this)}},oV=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}replication_settings(){return this.getRuleContext(0,nV)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_alter_replication_set_setting}accept(t){return t.visitAlter_replication_set_setting?t.visitAlter_replication_set_setting(this):t.visitChildren(this)}},RV=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}ASYNC(){return this.getToken(tf.ASYNC,0)}REPLICATION(){return this.getToken(tf.REPLICATION,0)}object_ref(){return this.getRuleContext(0,PV)}CASCADE(){return this.getToken(tf.CASCADE,0)}get ruleIndex(){return tf.RULE_drop_replication_stmt}accept(t){return t.visitDrop_replication_stmt?t.visitDrop_replication_stmt(this):t.visitChildren(this)}},AV=class extends ga{constructor(t,e){super(t,e)}opt_bind_parameter(t){return void 0===t?this.getRuleContexts(CY):this.getRuleContext(t,CY)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_action_or_subquery_args}accept(t){return t.visitAction_or_subquery_args?t.visitAction_or_subquery_args(this):t.visitChildren(this)}},SV=class extends ga{constructor(t,e){super(t,e)}DEFINE(t){return void 0===t?this.getTokens(tf.DEFINE):this.getToken(tf.DEFINE,t)}bind_parameter(){return this.getRuleContext(0,LY)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}AS(){return this.getToken(tf.AS,0)}define_action_or_subquery_body(){return this.getRuleContext(0,lV)}END(){return this.getToken(tf.END,0)}ACTION(){return this.getToken(tf.ACTION,0)}SUBQUERY(){return this.getToken(tf.SUBQUERY,0)}action_or_subquery_args(){return this.getRuleContext(0,AV)}get ruleIndex(){return tf.RULE_define_action_or_subquery_stmt}accept(t){return t.visitDefine_action_or_subquery_stmt?t.visitDefine_action_or_subquery_stmt(this):t.visitChildren(this)}},lV=class extends ga{constructor(t,e){super(t,e)}SEMICOLON(t){return void 0===t?this.getTokens(tf.SEMICOLON):this.getToken(tf.SEMICOLON,t)}sql_stmt_core(t){return void 0===t?this.getRuleContexts(hf):this.getRuleContext(t,hf)}get ruleIndex(){return tf.RULE_define_action_or_subquery_body}accept(t){return t.visitDefine_action_or_subquery_body?t.visitDefine_action_or_subquery_body(this):t.visitChildren(this)}},OV=class extends ga{constructor(t,e){super(t,e)}IF(){return this.getToken(tf.IF,0)}expr(){return this.getRuleContext(0,Ef)}do_stmt(t){return void 0===t?this.getRuleContexts(iw):this.getRuleContext(t,iw)}EVALUATE(){return this.getToken(tf.EVALUATE,0)}ELSE(){return this.getToken(tf.ELSE,0)}get ruleIndex(){return tf.RULE_if_stmt}accept(t){return t.visitIf_stmt?t.visitIf_stmt(this):t.visitChildren(this)}},IV=class extends ga{constructor(t,e){super(t,e)}FOR(){return this.getToken(tf.FOR,0)}bind_parameter(){return this.getRuleContext(0,LY)}IN(){return this.getToken(tf.IN,0)}expr(){return this.getRuleContext(0,Ef)}do_stmt(t){return void 0===t?this.getRuleContexts(iw):this.getRuleContext(t,iw)}EVALUATE(){return this.getToken(tf.EVALUATE,0)}PARALLEL(){return this.getToken(tf.PARALLEL,0)}ELSE(){return this.getToken(tf.ELSE,0)}get ruleIndex(){return tf.RULE_for_stmt}accept(t){return t.visitFor_stmt?t.visitFor_stmt(this):t.visitChildren(this)}},uV=class extends ga{constructor(t,e){super(t,e)}table_key(){return this.getRuleContext(0,NV)}an_id_expr(){return this.getRuleContext(0,WX)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}bind_parameter(){return this.getRuleContext(0,LY)}cluster_expr(){return this.getRuleContext(0,$X)}DOT(){return this.getToken(tf.DOT,0)}AT(){return this.getToken(tf.AT,0)}table_hints(){return this.getRuleContext(0,CV)}table_arg(t){return void 0===t?this.getRuleContexts(LV):this.getRuleContext(t,LV)}VIEW(){return this.getToken(tf.VIEW,0)}view_name(){return this.getRuleContext(0,jX)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}expr_list(){return this.getRuleContext(0,rY)}get ruleIndex(){return tf.RULE_table_ref}accept(t){return t.visitTable_ref?t.visitTable_ref(this):t.visitChildren(this)}},NV=class extends ga{constructor(t,e){super(t,e)}id_table_or_type(){return this.getRuleContext(0,aK)}VIEW(){return this.getToken(tf.VIEW,0)}view_name(){return this.getRuleContext(0,jX)}get ruleIndex(){return tf.RULE_table_key}accept(t){return t.visitTable_key?t.visitTable_key(this):t.visitChildren(this)}},LV=class extends ga{constructor(t,e){super(t,e)}named_expr(){return this.getRuleContext(0,RY)}AT(){return this.getToken(tf.AT,0)}VIEW(){return this.getToken(tf.VIEW,0)}view_name(){return this.getRuleContext(0,jX)}get ruleIndex(){return tf.RULE_table_arg}accept(t){return t.visitTable_arg?t.visitTable_arg(this):t.visitChildren(this)}},CV=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(tf.WITH,0)}table_hint(t){return void 0===t?this.getRuleContexts(_V):this.getRuleContext(t,_V)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_table_hints}accept(t){return t.visitTable_hints?t.visitTable_hints(this):t.visitChildren(this)}},_V=class extends ga{constructor(t,e){super(t,e)}an_id_hint(){return this.getRuleContext(0,JX)}EQUALS(){return this.getToken(tf.EQUALS,0)}type_name_tag(t){return void 0===t?this.getRuleContexts(DY):this.getRuleContext(t,DY)}LPAREN(){return this.getToken(tf.LPAREN,0)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}type_name_or_bind(){return this.getRuleContext(0,qY)}SCHEMA(){return this.getToken(tf.SCHEMA,0)}COLUMNS(){return this.getToken(tf.COLUMNS,0)}struct_arg_positional(t){return void 0===t?this.getRuleContexts(gY):this.getRuleContext(t,gY)}get ruleIndex(){return tf.RULE_table_hint}accept(t){return t.visitTable_hint?t.visitTable_hint(this):t.visitChildren(this)}},PV=class extends ga{constructor(t,e){super(t,e)}id_or_at(){return this.getRuleContext(0,sK)}cluster_expr(){return this.getRuleContext(0,$X)}DOT(){return this.getToken(tf.DOT,0)}get ruleIndex(){return tf.RULE_object_ref}accept(t){return t.visitObject_ref?t.visitObject_ref(this):t.visitChildren(this)}},MV=class extends ga{constructor(t,e){super(t,e)}object_ref(){return this.getRuleContext(0,PV)}bind_parameter(){return this.getRuleContext(0,LY)}AT(){return this.getToken(tf.AT,0)}get ruleIndex(){return tf.RULE_simple_table_ref_core}accept(t){return t.visitSimple_table_ref_core?t.visitSimple_table_ref_core(this):t.visitChildren(this)}},dV=class extends ga{constructor(t,e){super(t,e)}simple_table_ref_core(){return this.getRuleContext(0,MV)}table_hints(){return this.getRuleContext(0,CV)}get ruleIndex(){return tf.RULE_simple_table_ref}accept(t){return t.visitSimple_table_ref?t.visitSimple_table_ref(this):t.visitChildren(this)}},UV=class extends ga{constructor(t,e){super(t,e)}simple_table_ref(){return this.getRuleContext(0,dV)}ERASE(){return this.getToken(tf.ERASE,0)}BY(){return this.getToken(tf.BY,0)}pure_column_list(){return this.getRuleContext(0,iY)}get ruleIndex(){return tf.RULE_into_simple_table_ref}accept(t){return t.visitInto_simple_table_ref?t.visitInto_simple_table_ref(this):t.visitChildren(this)}},mV=class extends ga{constructor(t,e){super(t,e)}DELETE(){return this.getToken(tf.DELETE,0)}FROM(){return this.getToken(tf.FROM,0)}simple_table_ref(){return this.getRuleContext(0,dV)}where_expr(){return this.getRuleContext(0,MK)}ON(){return this.getToken(tf.ON,0)}into_values_source(){return this.getRuleContext(0,Mb)}returning_columns_list(){return this.getRuleContext(0,Cb)}get ruleIndex(){return tf.RULE_delete_stmt}accept(t){return t.visitDelete_stmt?t.visitDelete_stmt(this):t.visitChildren(this)}},DV=class extends ga{constructor(t,e){super(t,e)}UPDATE(){return this.getToken(tf.UPDATE,0)}simple_table_ref(){return this.getRuleContext(0,dV)}SET(){return this.getToken(tf.SET,0)}set_clause_choice(){return this.getRuleContext(0,pV)}ON(){return this.getToken(tf.ON,0)}into_values_source(){return this.getRuleContext(0,Mb)}returning_columns_list(){return this.getRuleContext(0,Cb)}where_expr(){return this.getRuleContext(0,MK)}get ruleIndex(){return tf.RULE_update_stmt}accept(t){return t.visitUpdate_stmt?t.visitUpdate_stmt(this):t.visitChildren(this)}},pV=class extends ga{constructor(t,e){super(t,e)}set_clause_list(){return this.getRuleContext(0,gV)}multiple_column_assignment(){return this.getRuleContext(0,HV)}get ruleIndex(){return tf.RULE_set_clause_choice}accept(t){return t.visitSet_clause_choice?t.visitSet_clause_choice(this):t.visitChildren(this)}},gV=class extends ga{constructor(t,e){super(t,e)}set_clause(t){return void 0===t?this.getRuleContexts(xV):this.getRuleContext(t,xV)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_set_clause_list}accept(t){return t.visitSet_clause_list?t.visitSet_clause_list(this):t.visitChildren(this)}},xV=class extends ga{constructor(t,e){super(t,e)}set_target(){return this.getRuleContext(0,kV)}EQUALS(){return this.getToken(tf.EQUALS,0)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_set_clause}accept(t){return t.visitSet_clause?t.visitSet_clause(this):t.visitChildren(this)}},kV=class extends ga{constructor(t,e){super(t,e)}column_name(){return this.getRuleContext(0,hY)}get ruleIndex(){return tf.RULE_set_target}accept(t){return t.visitSet_target?t.visitSet_target(this):t.visitChildren(this)}},HV=class extends ga{constructor(t,e){super(t,e)}set_target_list(){return this.getRuleContext(0,GV)}EQUALS(){return this.getToken(tf.EQUALS,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}simple_values_source(){return this.getRuleContext(0,pb)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_multiple_column_assignment}accept(t){return t.visitMultiple_column_assignment?t.visitMultiple_column_assignment(this):t.visitChildren(this)}},GV=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}set_target(t){return void 0===t?this.getRuleContexts(kV):this.getRuleContext(t,kV)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_set_target_list}accept(t){return t.visitSet_target_list?t.visitSet_target_list(this):t.visitChildren(this)}},FV=class extends ga{constructor(t,e){super(t,e)}CREATE(){return this.getToken(tf.CREATE,0)}TOPIC(){return this.getToken(tf.TOPIC,0)}topic_ref(){return this.getRuleContext(0,rX)}create_topic_entries(){return this.getRuleContext(0,vV)}with_topic_settings(){return this.getRuleContext(0,yV)}get ruleIndex(){return tf.RULE_create_topic_stmt}accept(t){return t.visitCreate_topic_stmt?t.visitCreate_topic_stmt(this):t.visitChildren(this)}},vV=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}create_topic_entry(t){return void 0===t?this.getRuleContexts(BV):this.getRuleContext(t,BV)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_create_topic_entries}accept(t){return t.visitCreate_topic_entries?t.visitCreate_topic_entries(this):t.visitChildren(this)}},BV=class extends ga{constructor(t,e){super(t,e)}topic_create_consumer_entry(){return this.getRuleContext(0,bV)}get ruleIndex(){return tf.RULE_create_topic_entry}accept(t){return t.visitCreate_topic_entry?t.visitCreate_topic_entry(this):t.visitChildren(this)}},yV=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(tf.WITH,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}topic_settings(){return this.getRuleContext(0,jV)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_with_topic_settings}accept(t){return t.visitWith_topic_settings?t.visitWith_topic_settings(this):t.visitChildren(this)}},fV=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}TOPIC(){return this.getToken(tf.TOPIC,0)}topic_ref(){return this.getRuleContext(0,rX)}alter_topic_action(t){return void 0===t?this.getRuleContexts(YV):this.getRuleContext(t,YV)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_alter_topic_stmt}accept(t){return t.visitAlter_topic_stmt?t.visitAlter_topic_stmt(this):t.visitChildren(this)}},YV=class extends ga{constructor(t,e){super(t,e)}alter_topic_add_consumer(){return this.getRuleContext(0,wV)}alter_topic_alter_consumer(){return this.getRuleContext(0,WV)}alter_topic_drop_consumer(){return this.getRuleContext(0,XV)}alter_topic_set_settings(){return this.getRuleContext(0,JV)}alter_topic_reset_settings(){return this.getRuleContext(0,ZV)}get ruleIndex(){return tf.RULE_alter_topic_action}accept(t){return t.visitAlter_topic_action?t.visitAlter_topic_action(this):t.visitChildren(this)}},wV=class extends ga{constructor(t,e){super(t,e)}ADD(){return this.getToken(tf.ADD,0)}topic_create_consumer_entry(){return this.getRuleContext(0,bV)}get ruleIndex(){return tf.RULE_alter_topic_add_consumer}accept(t){return t.visitAlter_topic_add_consumer?t.visitAlter_topic_add_consumer(this):t.visitChildren(this)}},bV=class extends ga{constructor(t,e){super(t,e)}CONSUMER(){return this.getToken(tf.CONSUMER,0)}an_id(){return this.getRuleContext(0,YX)}topic_consumer_with_settings(){return this.getRuleContext(0,tX)}get ruleIndex(){return tf.RULE_topic_create_consumer_entry}accept(t){return t.visitTopic_create_consumer_entry?t.visitTopic_create_consumer_entry(this):t.visitChildren(this)}},WV=class extends ga{constructor(t,e){super(t,e)}ALTER(){return this.getToken(tf.ALTER,0)}CONSUMER(){return this.getToken(tf.CONSUMER,0)}topic_consumer_ref(){return this.getRuleContext(0,iX)}alter_topic_alter_consumer_entry(){return this.getRuleContext(0,VV)}get ruleIndex(){return tf.RULE_alter_topic_alter_consumer}accept(t){return t.visitAlter_topic_alter_consumer?t.visitAlter_topic_alter_consumer(this):t.visitChildren(this)}},VV=class extends ga{constructor(t,e){super(t,e)}topic_alter_consumer_set(){return this.getRuleContext(0,KV)}topic_alter_consumer_reset(){return this.getRuleContext(0,QV)}get ruleIndex(){return tf.RULE_alter_topic_alter_consumer_entry}accept(t){return t.visitAlter_topic_alter_consumer_entry?t.visitAlter_topic_alter_consumer_entry(this):t.visitChildren(this)}},XV=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}CONSUMER(){return this.getToken(tf.CONSUMER,0)}topic_consumer_ref(){return this.getRuleContext(0,iX)}get ruleIndex(){return tf.RULE_alter_topic_drop_consumer}accept(t){return t.visitAlter_topic_drop_consumer?t.visitAlter_topic_drop_consumer(this):t.visitChildren(this)}},KV=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}topic_consumer_settings(){return this.getRuleContext(0,eX)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_topic_alter_consumer_set}accept(t){return t.visitTopic_alter_consumer_set?t.visitTopic_alter_consumer_set(this):t.visitChildren(this)}},QV=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(tf.RESET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}an_id(t){return void 0===t?this.getRuleContexts(YX):this.getRuleContext(t,YX)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_topic_alter_consumer_reset}accept(t){return t.visitTopic_alter_consumer_reset?t.visitTopic_alter_consumer_reset(this):t.visitChildren(this)}},JV=class extends ga{constructor(t,e){super(t,e)}SET(){return this.getToken(tf.SET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}topic_settings(){return this.getRuleContext(0,jV)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_alter_topic_set_settings}accept(t){return t.visitAlter_topic_set_settings?t.visitAlter_topic_set_settings(this):t.visitChildren(this)}},ZV=class extends ga{constructor(t,e){super(t,e)}RESET(){return this.getToken(tf.RESET,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}an_id(){return this.getRuleContext(0,YX)}RPAREN(){return this.getToken(tf.RPAREN,0)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}an_id_pure(t){return void 0===t?this.getRuleContexts(ZX):this.getRuleContext(t,ZX)}get ruleIndex(){return tf.RULE_alter_topic_reset_settings}accept(t){return t.visitAlter_topic_reset_settings?t.visitAlter_topic_reset_settings(this):t.visitChildren(this)}},qV=class extends ga{constructor(t,e){super(t,e)}DROP(){return this.getToken(tf.DROP,0)}TOPIC(){return this.getToken(tf.TOPIC,0)}topic_ref(){return this.getRuleContext(0,rX)}get ruleIndex(){return tf.RULE_drop_topic_stmt}accept(t){return t.visitDrop_topic_stmt?t.visitDrop_topic_stmt(this):t.visitChildren(this)}},jV=class extends ga{constructor(t,e){super(t,e)}topic_settings_entry(t){return void 0===t?this.getRuleContexts(zV):this.getRuleContext(t,zV)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_topic_settings}accept(t){return t.visitTopic_settings?t.visitTopic_settings(this):t.visitChildren(this)}},zV=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}topic_setting_value(){return this.getRuleContext(0,$V)}get ruleIndex(){return tf.RULE_topic_settings_entry}accept(t){return t.visitTopic_settings_entry?t.visitTopic_settings_entry(this):t.visitChildren(this)}},$V=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_topic_setting_value}accept(t){return t.visitTopic_setting_value?t.visitTopic_setting_value(this):t.visitChildren(this)}},tX=class extends ga{constructor(t,e){super(t,e)}WITH(){return this.getToken(tf.WITH,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}topic_consumer_settings(){return this.getRuleContext(0,eX)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_topic_consumer_with_settings}accept(t){return t.visitTopic_consumer_with_settings?t.visitTopic_consumer_with_settings(this):t.visitChildren(this)}},eX=class extends ga{constructor(t,e){super(t,e)}topic_consumer_settings_entry(t){return void 0===t?this.getRuleContexts(sX):this.getRuleContext(t,sX)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_topic_consumer_settings}accept(t){return t.visitTopic_consumer_settings?t.visitTopic_consumer_settings(this):t.visitChildren(this)}},sX=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}EQUALS(){return this.getToken(tf.EQUALS,0)}topic_consumer_setting_value(){return this.getRuleContext(0,aX)}get ruleIndex(){return tf.RULE_topic_consumer_settings_entry}accept(t){return t.visitTopic_consumer_settings_entry?t.visitTopic_consumer_settings_entry(this):t.visitChildren(this)}},aX=class extends ga{constructor(t,e){super(t,e)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_topic_consumer_setting_value}accept(t){return t.visitTopic_consumer_setting_value?t.visitTopic_consumer_setting_value(this):t.visitChildren(this)}},rX=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}cluster_expr(){return this.getRuleContext(0,$X)}DOT(){return this.getToken(tf.DOT,0)}get ruleIndex(){return tf.RULE_topic_ref}accept(t){return t.visitTopic_ref?t.visitTopic_ref(this):t.visitChildren(this)}},iX=class extends ga{constructor(t,e){super(t,e)}an_id_pure(){return this.getRuleContext(0,ZX)}get ruleIndex(){return tf.RULE_topic_consumer_ref}accept(t){return t.visitTopic_consumer_ref?t.visitTopic_consumer_ref(this):t.visitChildren(this)}},cX=class extends ga{constructor(t,e){super(t,e)}RESPECT(){return this.getToken(tf.RESPECT,0)}NULLS(){return this.getToken(tf.NULLS,0)}IGNORE(){return this.getToken(tf.IGNORE,0)}get ruleIndex(){return tf.RULE_null_treatment}accept(t){return t.visitNull_treatment?t.visitNull_treatment(this):t.visitChildren(this)}},nX=class extends ga{constructor(t,e){super(t,e)}FILTER(){return this.getToken(tf.FILTER,0)}LPAREN(){return this.getToken(tf.LPAREN,0)}where_expr(){return this.getRuleContext(0,MK)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_filter_clause}accept(t){return t.visitFilter_clause?t.visitFilter_clause(this):t.visitChildren(this)}},hX=class extends ga{constructor(t,e){super(t,e)}window_name(){return this.getRuleContext(0,EX)}window_specification(){return this.getRuleContext(0,SX)}get ruleIndex(){return tf.RULE_window_name_or_specification}accept(t){return t.visitWindow_name_or_specification?t.visitWindow_name_or_specification(this):t.visitChildren(this)}},EX=class extends ga{constructor(t,e){super(t,e)}an_id_window(){return this.getRuleContext(0,XX)}get ruleIndex(){return tf.RULE_window_name}accept(t){return t.visitWindow_name?t.visitWindow_name(this):t.visitChildren(this)}},TX=class extends ga{constructor(t,e){super(t,e)}WINDOW(){return this.getToken(tf.WINDOW,0)}window_definition_list(){return this.getRuleContext(0,oX)}get ruleIndex(){return tf.RULE_window_clause}accept(t){return t.visitWindow_clause?t.visitWindow_clause(this):t.visitChildren(this)}},oX=class extends ga{constructor(t,e){super(t,e)}window_definition(t){return void 0===t?this.getRuleContexts(RX):this.getRuleContext(t,RX)}COMMA(t){return void 0===t?this.getTokens(tf.COMMA):this.getToken(tf.COMMA,t)}get ruleIndex(){return tf.RULE_window_definition_list}accept(t){return t.visitWindow_definition_list?t.visitWindow_definition_list(this):t.visitChildren(this)}},RX=class extends ga{constructor(t,e){super(t,e)}new_window_name(){return this.getRuleContext(0,AX)}AS(){return this.getToken(tf.AS,0)}window_specification(){return this.getRuleContext(0,SX)}get ruleIndex(){return tf.RULE_window_definition}accept(t){return t.visitWindow_definition?t.visitWindow_definition(this):t.visitChildren(this)}},AX=class extends ga{constructor(t,e){super(t,e)}window_name(){return this.getRuleContext(0,EX)}get ruleIndex(){return tf.RULE_new_window_name}accept(t){return t.visitNew_window_name?t.visitNew_window_name(this):t.visitChildren(this)}},SX=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}window_specification_details(){return this.getRuleContext(0,lX)}RPAREN(){return this.getToken(tf.RPAREN,0)}get ruleIndex(){return tf.RULE_window_specification}accept(t){return t.visitWindow_specification?t.visitWindow_specification(this):t.visitChildren(this)}},lX=class extends ga{constructor(t,e){super(t,e)}existing_window_name(){return this.getRuleContext(0,OX)}window_partition_clause(){return this.getRuleContext(0,IX)}window_order_clause(){return this.getRuleContext(0,uX)}window_frame_clause(){return this.getRuleContext(0,NX)}get ruleIndex(){return tf.RULE_window_specification_details}accept(t){return t.visitWindow_specification_details?t.visitWindow_specification_details(this):t.visitChildren(this)}},OX=class extends ga{constructor(t,e){super(t,e)}window_name(){return this.getRuleContext(0,EX)}get ruleIndex(){return tf.RULE_existing_window_name}accept(t){return t.visitExisting_window_name?t.visitExisting_window_name(this):t.visitChildren(this)}},IX=class extends ga{constructor(t,e){super(t,e)}PARTITION(){return this.getToken(tf.PARTITION,0)}BY(){return this.getToken(tf.BY,0)}named_expr_list(){return this.getRuleContext(0,AY)}COMPACT(){return this.getToken(tf.COMPACT,0)}get ruleIndex(){return tf.RULE_window_partition_clause}accept(t){return t.visitWindow_partition_clause?t.visitWindow_partition_clause(this):t.visitChildren(this)}},uX=class extends ga{constructor(t,e){super(t,e)}order_by_clause(){return this.getRuleContext(0,jw)}get ruleIndex(){return tf.RULE_window_order_clause}accept(t){return t.visitWindow_order_clause?t.visitWindow_order_clause(this):t.visitChildren(this)}},NX=class extends ga{constructor(t,e){super(t,e)}window_frame_units(){return this.getRuleContext(0,LX)}window_frame_extent(){return this.getRuleContext(0,CX)}window_frame_exclusion(){return this.getRuleContext(0,MX)}get ruleIndex(){return tf.RULE_window_frame_clause}accept(t){return t.visitWindow_frame_clause?t.visitWindow_frame_clause(this):t.visitChildren(this)}},LX=class extends ga{constructor(t,e){super(t,e)}ROWS(){return this.getToken(tf.ROWS,0)}RANGE(){return this.getToken(tf.RANGE,0)}GROUPS(){return this.getToken(tf.GROUPS,0)}get ruleIndex(){return tf.RULE_window_frame_units}accept(t){return t.visitWindow_frame_units?t.visitWindow_frame_units(this):t.visitChildren(this)}},CX=class extends ga{constructor(t,e){super(t,e)}window_frame_bound(){return this.getRuleContext(0,PX)}window_frame_between(){return this.getRuleContext(0,_X)}get ruleIndex(){return tf.RULE_window_frame_extent}accept(t){return t.visitWindow_frame_extent?t.visitWindow_frame_extent(this):t.visitChildren(this)}},_X=class extends ga{constructor(t,e){super(t,e)}BETWEEN(){return this.getToken(tf.BETWEEN,0)}window_frame_bound(t){return void 0===t?this.getRuleContexts(PX):this.getRuleContext(t,PX)}AND(){return this.getToken(tf.AND,0)}get ruleIndex(){return tf.RULE_window_frame_between}accept(t){return t.visitWindow_frame_between?t.visitWindow_frame_between(this):t.visitChildren(this)}},PX=class extends ga{constructor(t,e){super(t,e)}CURRENT(){return this.getToken(tf.CURRENT,0)}ROW(){return this.getToken(tf.ROW,0)}PRECEDING(){return this.getToken(tf.PRECEDING,0)}FOLLOWING(){return this.getToken(tf.FOLLOWING,0)}expr(){return this.getRuleContext(0,Ef)}UNBOUNDED(){return this.getToken(tf.UNBOUNDED,0)}get ruleIndex(){return tf.RULE_window_frame_bound}accept(t){return t.visitWindow_frame_bound?t.visitWindow_frame_bound(this):t.visitChildren(this)}},MX=class extends ga{constructor(t,e){super(t,e)}EXCLUDE(){return this.getToken(tf.EXCLUDE,0)}CURRENT(){return this.getToken(tf.CURRENT,0)}ROW(){return this.getToken(tf.ROW,0)}GROUP(){return this.getToken(tf.GROUP,0)}TIES(){return this.getToken(tf.TIES,0)}NO(){return this.getToken(tf.NO,0)}OTHERS(){return this.getToken(tf.OTHERS,0)}get ruleIndex(){return tf.RULE_window_frame_exclusion}accept(t){return t.visitWindow_frame_exclusion?t.visitWindow_frame_exclusion(this):t.visitChildren(this)}},dX=class extends ga{constructor(t,e){super(t,e)}USE(){return this.getToken(tf.USE,0)}cluster_expr(){return this.getRuleContext(0,$X)}get ruleIndex(){return tf.RULE_use_stmt}accept(t){return t.visitUse_stmt?t.visitUse_stmt(this):t.visitChildren(this)}},UX=class extends ga{constructor(t,e){super(t,e)}LPAREN(){return this.getToken(tf.LPAREN,0)}select_stmt(){return this.getRuleContext(0,Tw)}RPAREN(){return this.getToken(tf.RPAREN,0)}select_unparenthesized_stmt(){return this.getRuleContext(0,ow)}get ruleIndex(){return tf.RULE_subselect_stmt}accept(t){return t.visitSubselect_stmt?t.visitSubselect_stmt(this):t.visitChildren(this)}},mX=class extends ga{constructor(t,e){super(t,e)}bind_parameter_list(){return this.getRuleContext(0,_Y)}EQUALS(){return this.getToken(tf.EQUALS,0)}expr(){return this.getRuleContext(0,Ef)}subselect_stmt(){return this.getRuleContext(0,UX)}get ruleIndex(){return tf.RULE_named_nodes_stmt}accept(t){return t.visitNamed_nodes_stmt?t.visitNamed_nodes_stmt(this):t.visitChildren(this)}},DX=class extends ga{constructor(t,e){super(t,e)}COMMIT(){return this.getToken(tf.COMMIT,0)}get ruleIndex(){return tf.RULE_commit_stmt}accept(t){return t.visitCommit_stmt?t.visitCommit_stmt(this):t.visitChildren(this)}},pX=class extends ga{constructor(t,e){super(t,e)}ROLLBACK(){return this.getToken(tf.ROLLBACK,0)}get ruleIndex(){return tf.RULE_rollback_stmt}accept(t){return t.visitRollback_stmt?t.visitRollback_stmt(this):t.visitChildren(this)}},gX=class extends ga{constructor(t,e){super(t,e)}ID_PLAIN(){return this.getToken(tf.ID_PLAIN,0)}ID_QUOTED(){return this.getToken(tf.ID_QUOTED,0)}get ruleIndex(){return tf.RULE_identifier}accept(t){return t.visitIdentifier?t.visitIdentifier(this):t.visitChildren(this)}},xX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword(){return this.getRuleContext(0,iK)}get ruleIndex(){return tf.RULE_id}accept(t){return t.visitId?t.visitId(this):t.visitChildren(this)}},kX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_expr_uncompat(){return this.getRuleContext(0,cK)}keyword_select_uncompat(){return this.getRuleContext(0,hK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_id_schema}accept(t){return t.visitId_schema?t.visitId_schema(this):t.visitChildren(this)}},HX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_alter_uncompat(){return this.getRuleContext(0,EK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_id_expr}accept(t){return t.visitId_expr?t.visitId_expr(this):t.visitChildren(this)}},GX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_alter_uncompat(){return this.getRuleContext(0,EK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_id_expr_in}accept(t){return t.visitId_expr_in?t.visitId_expr_in(this):t.visitChildren(this)}},FX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_expr_uncompat(){return this.getRuleContext(0,cK)}keyword_table_uncompat(){return this.getRuleContext(0,nK)}keyword_select_uncompat(){return this.getRuleContext(0,hK)}keyword_alter_uncompat(){return this.getRuleContext(0,EK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_id_window}accept(t){return t.visitId_window?t.visitId_window(this):t.visitChildren(this)}},vX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_expr_uncompat(){return this.getRuleContext(0,cK)}keyword_select_uncompat(){return this.getRuleContext(0,hK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_id_table}accept(t){return t.visitId_table?t.visitId_table(this):t.visitChildren(this)}},BX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_table_uncompat(){return this.getRuleContext(0,nK)}keyword_alter_uncompat(){return this.getRuleContext(0,EK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_id_without}accept(t){return t.visitId_without?t.visitId_without(this):t.visitChildren(this)}},yX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_expr_uncompat(){return this.getRuleContext(0,cK)}keyword_table_uncompat(){return this.getRuleContext(0,nK)}keyword_select_uncompat(){return this.getRuleContext(0,hK)}keyword_alter_uncompat(){return this.getRuleContext(0,EK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}get ruleIndex(){return tf.RULE_id_hint}accept(t){return t.visitId_hint?t.visitId_hint(this):t.visitChildren(this)}},fX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}keyword_as_compat(){return this.getRuleContext(0,AK)}get ruleIndex(){return tf.RULE_id_as_compat}accept(t){return t.visitId_as_compat?t.visitId_as_compat(this):t.visitChildren(this)}},YX=class extends ga{constructor(t,e){super(t,e)}id(){return this.getRuleContext(0,xX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id}accept(t){return t.visitAn_id?t.visitAn_id(this):t.visitChildren(this)}},wX=class extends ga{constructor(t,e){super(t,e)}id_or_type(){return this.getRuleContext(0,tK)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_or_type}accept(t){return t.visitAn_id_or_type?t.visitAn_id_or_type(this):t.visitChildren(this)}},bX=class extends ga{constructor(t,e){super(t,e)}id_schema(){return this.getRuleContext(0,kX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_schema}accept(t){return t.visitAn_id_schema?t.visitAn_id_schema(this):t.visitChildren(this)}},WX=class extends ga{constructor(t,e){super(t,e)}id_expr(){return this.getRuleContext(0,HX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_expr}accept(t){return t.visitAn_id_expr?t.visitAn_id_expr(this):t.visitChildren(this)}},VX=class extends ga{constructor(t,e){super(t,e)}id_expr_in(){return this.getRuleContext(0,GX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_expr_in}accept(t){return t.visitAn_id_expr_in?t.visitAn_id_expr_in(this):t.visitChildren(this)}},XX=class extends ga{constructor(t,e){super(t,e)}id_window(){return this.getRuleContext(0,FX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_window}accept(t){return t.visitAn_id_window?t.visitAn_id_window(this):t.visitChildren(this)}},KX=class extends ga{constructor(t,e){super(t,e)}id_table(){return this.getRuleContext(0,vX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_table}accept(t){return t.visitAn_id_table?t.visitAn_id_table(this):t.visitChildren(this)}},QX=class extends ga{constructor(t,e){super(t,e)}id_without(){return this.getRuleContext(0,BX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_without}accept(t){return t.visitAn_id_without?t.visitAn_id_without(this):t.visitChildren(this)}},JX=class extends ga{constructor(t,e){super(t,e)}id_hint(){return this.getRuleContext(0,yX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_hint}accept(t){return t.visitAn_id_hint?t.visitAn_id_hint(this):t.visitChildren(this)}},ZX=class extends ga{constructor(t,e){super(t,e)}identifier(){return this.getRuleContext(0,gX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_pure}accept(t){return t.visitAn_id_pure?t.visitAn_id_pure(this):t.visitChildren(this)}},qX=class extends ga{constructor(t,e){super(t,e)}id_as_compat(){return this.getRuleContext(0,fX)}STRING_VALUE(){return this.getToken(tf.STRING_VALUE,0)}get ruleIndex(){return tf.RULE_an_id_as_compat}accept(t){return t.visitAn_id_as_compat?t.visitAn_id_as_compat(this):t.visitChildren(this)}},jX=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}PRIMARY(){return this.getToken(tf.PRIMARY,0)}KEY(){return this.getToken(tf.KEY,0)}get ruleIndex(){return tf.RULE_view_name}accept(t){return t.visitView_name?t.visitView_name(this):t.visitChildren(this)}},zX=class extends ga{constructor(t,e){super(t,e)}an_id(){return this.getRuleContext(0,YX)}DOT(){return this.getToken(tf.DOT,0)}get ruleIndex(){return tf.RULE_opt_id_prefix}accept(t){return t.visitOpt_id_prefix?t.visitOpt_id_prefix(this):t.visitChildren(this)}},$X=class extends ga{constructor(t,e){super(t,e)}pure_column_or_named(){return this.getRuleContext(0,cY)}ASTERISK(){return this.getToken(tf.ASTERISK,0)}an_id(){return this.getRuleContext(0,YX)}COLON(){return this.getToken(tf.COLON,0)}get ruleIndex(){return tf.RULE_cluster_expr}accept(t){return t.visitCluster_expr?t.visitCluster_expr(this):t.visitChildren(this)}},tK=class extends ga{constructor(t,e){super(t,e)}id(){return this.getRuleContext(0,xX)}type_id(){return this.getRuleContext(0,lK)}get ruleIndex(){return tf.RULE_id_or_type}accept(t){return t.visitId_or_type?t.visitId_or_type(this):t.visitChildren(this)}},eK=class extends ga{constructor(t,e){super(t,e)}an_id_or_type(){return this.getRuleContext(0,wX)}DOT(){return this.getToken(tf.DOT,0)}get ruleIndex(){return tf.RULE_opt_id_prefix_or_type}accept(t){return t.visitOpt_id_prefix_or_type?t.visitOpt_id_prefix_or_type(this):t.visitChildren(this)}},sK=class extends ga{constructor(t,e){super(t,e)}an_id_or_type(){return this.getRuleContext(0,wX)}AT(){return this.getToken(tf.AT,0)}get ruleIndex(){return tf.RULE_id_or_at}accept(t){return t.visitId_or_at?t.visitId_or_at(this):t.visitChildren(this)}},aK=class extends ga{constructor(t,e){super(t,e)}an_id_table(){return this.getRuleContext(0,KX)}type_id(){return this.getRuleContext(0,lK)}get ruleIndex(){return tf.RULE_id_table_or_type}accept(t){return t.visitId_table_or_type?t.visitId_table_or_type(this):t.visitChildren(this)}},rK=class extends ga{constructor(t,e){super(t,e)}id_table_or_type(){return this.getRuleContext(0,aK)}AT(){return this.getToken(tf.AT,0)}get ruleIndex(){return tf.RULE_id_table_or_at}accept(t){return t.visitId_table_or_at?t.visitId_table_or_at(this):t.visitChildren(this)}},iK=class extends ga{constructor(t,e){super(t,e)}keyword_compat(){return this.getRuleContext(0,SK)}keyword_expr_uncompat(){return this.getRuleContext(0,cK)}keyword_table_uncompat(){return this.getRuleContext(0,nK)}keyword_select_uncompat(){return this.getRuleContext(0,hK)}keyword_alter_uncompat(){return this.getRuleContext(0,EK)}keyword_in_uncompat(){return this.getRuleContext(0,TK)}keyword_window_uncompat(){return this.getRuleContext(0,oK)}keyword_hint_uncompat(){return this.getRuleContext(0,RK)}get ruleIndex(){return tf.RULE_keyword}accept(t){return t.visitKeyword?t.visitKeyword(this):t.visitChildren(this)}},cK=class extends ga{constructor(t,e){super(t,e)}ASYMMETRIC(){return this.getToken(tf.ASYMMETRIC,0)}BETWEEN(){return this.getToken(tf.BETWEEN,0)}BITCAST(){return this.getToken(tf.BITCAST,0)}CASE(){return this.getToken(tf.CASE,0)}CAST(){return this.getToken(tf.CAST,0)}CUBE(){return this.getToken(tf.CUBE,0)}CURRENT_DATE(){return this.getToken(tf.CURRENT_DATE,0)}CURRENT_TIME(){return this.getToken(tf.CURRENT_TIME,0)}CURRENT_TIMESTAMP(){return this.getToken(tf.CURRENT_TIMESTAMP,0)}EMPTY_ACTION(){return this.getToken(tf.EMPTY_ACTION,0)}EXISTS(){return this.getToken(tf.EXISTS,0)}FROM(){return this.getToken(tf.FROM,0)}FULL(){return this.getToken(tf.FULL,0)}HOP(){return this.getToken(tf.HOP,0)}JSON_EXISTS(){return this.getToken(tf.JSON_EXISTS,0)}JSON_VALUE(){return this.getToken(tf.JSON_VALUE,0)}JSON_QUERY(){return this.getToken(tf.JSON_QUERY,0)}LOCAL(){return this.getToken(tf.LOCAL,0)}NOT(){return this.getToken(tf.NOT,0)}NULL(){return this.getToken(tf.NULL,0)}PROCESS(){return this.getToken(tf.PROCESS,0)}REDUCE(){return this.getToken(tf.REDUCE,0)}RETURN(){return this.getToken(tf.RETURN,0)}RETURNING(){return this.getToken(tf.RETURNING,0)}ROLLUP(){return this.getToken(tf.ROLLUP,0)}SELECT(){return this.getToken(tf.SELECT,0)}SYMMETRIC(){return this.getToken(tf.SYMMETRIC,0)}UNBOUNDED(){return this.getToken(tf.UNBOUNDED,0)}WHEN(){return this.getToken(tf.WHEN,0)}WHERE(){return this.getToken(tf.WHERE,0)}get ruleIndex(){return tf.RULE_keyword_expr_uncompat}accept(t){return t.visitKeyword_expr_uncompat?t.visitKeyword_expr_uncompat(this):t.visitChildren(this)}},nK=class extends ga{constructor(t,e){super(t,e)}ANY(){return this.getToken(tf.ANY,0)}ERASE(){return this.getToken(tf.ERASE,0)}STREAM(){return this.getToken(tf.STREAM,0)}get ruleIndex(){return tf.RULE_keyword_table_uncompat}accept(t){return t.visitKeyword_table_uncompat?t.visitKeyword_table_uncompat(this):t.visitChildren(this)}},hK=class extends ga{constructor(t,e){super(t,e)}ALL(){return this.getToken(tf.ALL,0)}AS(){return this.getToken(tf.AS,0)}ASSUME(){return this.getToken(tf.ASSUME,0)}DISTINCT(){return this.getToken(tf.DISTINCT,0)}EXCEPT(){return this.getToken(tf.EXCEPT,0)}HAVING(){return this.getToken(tf.HAVING,0)}INTERSECT(){return this.getToken(tf.INTERSECT,0)}LIMIT(){return this.getToken(tf.LIMIT,0)}UNION(){return this.getToken(tf.UNION,0)}WINDOW(){return this.getToken(tf.WINDOW,0)}WITHOUT(){return this.getToken(tf.WITHOUT,0)}get ruleIndex(){return tf.RULE_keyword_select_uncompat}accept(t){return t.visitKeyword_select_uncompat?t.visitKeyword_select_uncompat(this):t.visitChildren(this)}},EK=class extends ga{constructor(t,e){super(t,e)}COLUMN(){return this.getToken(tf.COLUMN,0)}get ruleIndex(){return tf.RULE_keyword_alter_uncompat}accept(t){return t.visitKeyword_alter_uncompat?t.visitKeyword_alter_uncompat(this):t.visitChildren(this)}},TK=class extends ga{constructor(t,e){super(t,e)}COMPACT(){return this.getToken(tf.COMPACT,0)}get ruleIndex(){return tf.RULE_keyword_in_uncompat}accept(t){return t.visitKeyword_in_uncompat?t.visitKeyword_in_uncompat(this):t.visitChildren(this)}},oK=class extends ga{constructor(t,e){super(t,e)}GROUPS(){return this.getToken(tf.GROUPS,0)}RANGE(){return this.getToken(tf.RANGE,0)}ROWS(){return this.getToken(tf.ROWS,0)}get ruleIndex(){return tf.RULE_keyword_window_uncompat}accept(t){return t.visitKeyword_window_uncompat?t.visitKeyword_window_uncompat(this):t.visitChildren(this)}},RK=class extends ga{constructor(t,e){super(t,e)}SCHEMA(){return this.getToken(tf.SCHEMA,0)}COLUMNS(){return this.getToken(tf.COLUMNS,0)}get ruleIndex(){return tf.RULE_keyword_hint_uncompat}accept(t){return t.visitKeyword_hint_uncompat?t.visitKeyword_hint_uncompat(this):t.visitChildren(this)}},AK=class extends ga{constructor(t,e){super(t,e)}ATTRIBUTES(){return this.getToken(tf.ATTRIBUTES,0)}CONNECT(){return this.getToken(tf.CONNECT,0)}CONSUMER(){return this.getToken(tf.CONSUMER,0)}DATA(){return this.getToken(tf.DATA,0)}DESCRIBE(){return this.getToken(tf.DESCRIBE,0)}DIRECTORY(){return this.getToken(tf.DIRECTORY,0)}FIRST(){return this.getToken(tf.FIRST,0)}GRANT(){return this.getToken(tf.GRANT,0)}INITIAL(){return this.getToken(tf.INITIAL,0)}LAST(){return this.getToken(tf.LAST,0)}LEGACY(){return this.getToken(tf.LEGACY,0)}MANAGE(){return this.getToken(tf.MANAGE,0)}MATCHES(){return this.getToken(tf.MATCHES,0)}MATCH_RECOGNIZE(){return this.getToken(tf.MATCH_RECOGNIZE,0)}MEASURES(){return this.getToken(tf.MEASURES,0)}MICROSECONDS(){return this.getToken(tf.MICROSECONDS,0)}MILLISECONDS(){return this.getToken(tf.MILLISECONDS,0)}MODIFY(){return this.getToken(tf.MODIFY,0)}NANOSECONDS(){return this.getToken(tf.NANOSECONDS,0)}NEXT(){return this.getToken(tf.NEXT,0)}OMIT(){return this.getToken(tf.OMIT,0)}ONE(){return this.getToken(tf.ONE,0)}OPTION(){return this.getToken(tf.OPTION,0)}PARALLEL(){return this.getToken(tf.PARALLEL,0)}PAST(){return this.getToken(tf.PAST,0)}PATTERN(){return this.getToken(tf.PATTERN,0)}PER(){return this.getToken(tf.PER,0)}PERMUTE(){return this.getToken(tf.PERMUTE,0)}PRIVILEGES(){return this.getToken(tf.PRIVILEGES,0)}QUEUE(){return this.getToken(tf.QUEUE,0)}REMOVE(){return this.getToken(tf.REMOVE,0)}REPLICATION(){return this.getToken(tf.REPLICATION,0)}REVOKE(){return this.getToken(tf.REVOKE,0)}SECONDS(){return this.getToken(tf.SECONDS,0)}SEEK(){return this.getToken(tf.SEEK,0)}SHOW(){return this.getToken(tf.SHOW,0)}SKIP_RULE(){return this.getToken(tf.SKIP_RULE,0)}SOURCE(){return this.getToken(tf.SOURCE,0)}SUBSET(){return this.getToken(tf.SUBSET,0)}TABLES(){return this.getToken(tf.TABLES,0)}TOPIC(){return this.getToken(tf.TOPIC,0)}TYPE(){return this.getToken(tf.TYPE,0)}UNMATCHED(){return this.getToken(tf.UNMATCHED,0)}get ruleIndex(){return tf.RULE_keyword_as_compat}accept(t){return t.visitKeyword_as_compat?t.visitKeyword_as_compat(this):t.visitChildren(this)}},SK=class extends ga{constructor(t,e){super(t,e)}ABORT(){return this.getToken(tf.ABORT,0)}ACTION(){return this.getToken(tf.ACTION,0)}ADD(){return this.getToken(tf.ADD,0)}AFTER(){return this.getToken(tf.AFTER,0)}ALTER(){return this.getToken(tf.ALTER,0)}ANALYZE(){return this.getToken(tf.ANALYZE,0)}AND(){return this.getToken(tf.AND,0)}ANSI(){return this.getToken(tf.ANSI,0)}ARRAY(){return this.getToken(tf.ARRAY,0)}ASC(){return this.getToken(tf.ASC,0)}ASYNC(){return this.getToken(tf.ASYNC,0)}ATTACH(){return this.getToken(tf.ATTACH,0)}ATTRIBUTES(){return this.getToken(tf.ATTRIBUTES,0)}AUTOINCREMENT(){return this.getToken(tf.AUTOINCREMENT,0)}BEFORE(){return this.getToken(tf.BEFORE,0)}BEGIN(){return this.getToken(tf.BEGIN,0)}BERNOULLI(){return this.getToken(tf.BERNOULLI,0)}BY(){return this.getToken(tf.BY,0)}CASCADE(){return this.getToken(tf.CASCADE,0)}CHANGEFEED(){return this.getToken(tf.CHANGEFEED,0)}CHECK(){return this.getToken(tf.CHECK,0)}COLLATE(){return this.getToken(tf.COLLATE,0)}COMMIT(){return this.getToken(tf.COMMIT,0)}CONDITIONAL(){return this.getToken(tf.CONDITIONAL,0)}CONFLICT(){return this.getToken(tf.CONFLICT,0)}CONNECT(){return this.getToken(tf.CONNECT,0)}CONSTRAINT(){return this.getToken(tf.CONSTRAINT,0)}CONSUMER(){return this.getToken(tf.CONSUMER,0)}COVER(){return this.getToken(tf.COVER,0)}CREATE(){return this.getToken(tf.CREATE,0)}CROSS(){return this.getToken(tf.CROSS,0)}CURRENT(){return this.getToken(tf.CURRENT,0)}DATA(){return this.getToken(tf.DATA,0)}DATABASE(){return this.getToken(tf.DATABASE,0)}DECIMAL(){return this.getToken(tf.DECIMAL,0)}DECLARE(){return this.getToken(tf.DECLARE,0)}DEFAULT(){return this.getToken(tf.DEFAULT,0)}DEFERRABLE(){return this.getToken(tf.DEFERRABLE,0)}DEFERRED(){return this.getToken(tf.DEFERRED,0)}DEFINE(){return this.getToken(tf.DEFINE,0)}DELETE(){return this.getToken(tf.DELETE,0)}DESC(){return this.getToken(tf.DESC,0)}DESCRIBE(){return this.getToken(tf.DESCRIBE,0)}DETACH(){return this.getToken(tf.DETACH,0)}DIRECTORY(){return this.getToken(tf.DIRECTORY,0)}DISABLE(){return this.getToken(tf.DISABLE,0)}DISCARD(){return this.getToken(tf.DISCARD,0)}DO(){return this.getToken(tf.DO,0)}DROP(){return this.getToken(tf.DROP,0)}EACH(){return this.getToken(tf.EACH,0)}ELSE(){return this.getToken(tf.ELSE,0)}EMPTY(){return this.getToken(tf.EMPTY,0)}ENCRYPTED(){return this.getToken(tf.ENCRYPTED,0)}END(){return this.getToken(tf.END,0)}ERROR(){return this.getToken(tf.ERROR,0)}ESCAPE(){return this.getToken(tf.ESCAPE,0)}EVALUATE(){return this.getToken(tf.EVALUATE,0)}EXCLUDE(){return this.getToken(tf.EXCLUDE,0)}EXCLUSION(){return this.getToken(tf.EXCLUSION,0)}EXCLUSIVE(){return this.getToken(tf.EXCLUSIVE,0)}EXPLAIN(){return this.getToken(tf.EXPLAIN,0)}EXPORT(){return this.getToken(tf.EXPORT,0)}EXTERNAL(){return this.getToken(tf.EXTERNAL,0)}FAIL(){return this.getToken(tf.FAIL,0)}FAMILY(){return this.getToken(tf.FAMILY,0)}FILTER(){return this.getToken(tf.FILTER,0)}FIRST(){return this.getToken(tf.FIRST,0)}FLATTEN(){return this.getToken(tf.FLATTEN,0)}FOLLOWING(){return this.getToken(tf.FOLLOWING,0)}FOR(){return this.getToken(tf.FOR,0)}FOREIGN(){return this.getToken(tf.FOREIGN,0)}FUNCTION(){return this.getToken(tf.FUNCTION,0)}GLOB(){return this.getToken(tf.GLOB,0)}GRANT(){return this.getToken(tf.GRANT,0)}GROUP(){return this.getToken(tf.GROUP,0)}GROUPING(){return this.getToken(tf.GROUPING,0)}HASH(){return this.getToken(tf.HASH,0)}IF(){return this.getToken(tf.IF,0)}IGNORE(){return this.getToken(tf.IGNORE,0)}ILIKE(){return this.getToken(tf.ILIKE,0)}IMMEDIATE(){return this.getToken(tf.IMMEDIATE,0)}IMPORT(){return this.getToken(tf.IMPORT,0)}IN(){return this.getToken(tf.IN,0)}INDEX(){return this.getToken(tf.INDEX,0)}INDEXED(){return this.getToken(tf.INDEXED,0)}INHERITS(){return this.getToken(tf.INHERITS,0)}INITIAL(){return this.getToken(tf.INITIAL,0)}INITIALLY(){return this.getToken(tf.INITIALLY,0)}INNER(){return this.getToken(tf.INNER,0)}INSERT(){return this.getToken(tf.INSERT,0)}INSTEAD(){return this.getToken(tf.INSTEAD,0)}INTO(){return this.getToken(tf.INTO,0)}IS(){return this.getToken(tf.IS,0)}ISNULL(){return this.getToken(tf.ISNULL,0)}JOIN(){return this.getToken(tf.JOIN,0)}KEY(){return this.getToken(tf.KEY,0)}LAST(){return this.getToken(tf.LAST,0)}LEFT(){return this.getToken(tf.LEFT,0)}LEGACY(){return this.getToken(tf.LEGACY,0)}LIKE(){return this.getToken(tf.LIKE,0)}MANAGE(){return this.getToken(tf.MANAGE,0)}MATCH(){return this.getToken(tf.MATCH,0)}MATCHES(){return this.getToken(tf.MATCHES,0)}MATCH_RECOGNIZE(){return this.getToken(tf.MATCH_RECOGNIZE,0)}MEASURES(){return this.getToken(tf.MEASURES,0)}MICROSECONDS(){return this.getToken(tf.MICROSECONDS,0)}MILLISECONDS(){return this.getToken(tf.MILLISECONDS,0)}MODIFY(){return this.getToken(tf.MODIFY,0)}NANOSECONDS(){return this.getToken(tf.NANOSECONDS,0)}NATURAL(){return this.getToken(tf.NATURAL,0)}NEXT(){return this.getToken(tf.NEXT,0)}NO(){return this.getToken(tf.NO,0)}NOTNULL(){return this.getToken(tf.NOTNULL,0)}NULLS(){return this.getToken(tf.NULLS,0)}OBJECT(){return this.getToken(tf.OBJECT,0)}OF(){return this.getToken(tf.OF,0)}OFFSET(){return this.getToken(tf.OFFSET,0)}OMIT(){return this.getToken(tf.OMIT,0)}ON(){return this.getToken(tf.ON,0)}ONE(){return this.getToken(tf.ONE,0)}ONLY(){return this.getToken(tf.ONLY,0)}OPTION(){return this.getToken(tf.OPTION,0)}OR(){return this.getToken(tf.OR,0)}ORDER(){return this.getToken(tf.ORDER,0)}OTHERS(){return this.getToken(tf.OTHERS,0)}OUTER(){return this.getToken(tf.OUTER,0)}OVER(){return this.getToken(tf.OVER,0)}PARALLEL(){return this.getToken(tf.PARALLEL,0)}PARTITION(){return this.getToken(tf.PARTITION,0)}PASSING(){return this.getToken(tf.PASSING,0)}PASSWORD(){return this.getToken(tf.PASSWORD,0)}PAST(){return this.getToken(tf.PAST,0)}PATTERN(){return this.getToken(tf.PATTERN,0)}PER(){return this.getToken(tf.PER,0)}PERMUTE(){return this.getToken(tf.PERMUTE,0)}PLAN(){return this.getToken(tf.PLAN,0)}PRAGMA(){return this.getToken(tf.PRAGMA,0)}PRECEDING(){return this.getToken(tf.PRECEDING,0)}PRESORT(){return this.getToken(tf.PRESORT,0)}PRIMARY(){return this.getToken(tf.PRIMARY,0)}PRIVILEGES(){return this.getToken(tf.PRIVILEGES,0)}QUEUE(){return this.getToken(tf.QUEUE,0)}RAISE(){return this.getToken(tf.RAISE,0)}REFERENCES(){return this.getToken(tf.REFERENCES,0)}REGEXP(){return this.getToken(tf.REGEXP,0)}REINDEX(){return this.getToken(tf.REINDEX,0)}RELEASE(){return this.getToken(tf.RELEASE,0)}REMOVE(){return this.getToken(tf.REMOVE,0)}RENAME(){return this.getToken(tf.RENAME,0)}REPLACE(){return this.getToken(tf.REPLACE,0)}REPLICATION(){return this.getToken(tf.REPLICATION,0)}RESET(){return this.getToken(tf.RESET,0)}RESPECT(){return this.getToken(tf.RESPECT,0)}RESTRICT(){return this.getToken(tf.RESTRICT,0)}RESULT(){return this.getToken(tf.RESULT,0)}REVERT(){return this.getToken(tf.REVERT,0)}REVOKE(){return this.getToken(tf.REVOKE,0)}RIGHT(){return this.getToken(tf.RIGHT,0)}RLIKE(){return this.getToken(tf.RLIKE,0)}ROLLBACK(){return this.getToken(tf.ROLLBACK,0)}ROW(){return this.getToken(tf.ROW,0)}SAMPLE(){return this.getToken(tf.SAMPLE,0)}SAVEPOINT(){return this.getToken(tf.SAVEPOINT,0)}SECONDS(){return this.getToken(tf.SECONDS,0)}SEEK(){return this.getToken(tf.SEEK,0)}SEMI(){return this.getToken(tf.SEMI,0)}SETS(){return this.getToken(tf.SETS,0)}SHOW(){return this.getToken(tf.SHOW,0)}SKIP_RULE(){return this.getToken(tf.SKIP_RULE,0)}SOURCE(){return this.getToken(tf.SOURCE,0)}SUBQUERY(){return this.getToken(tf.SUBQUERY,0)}SUBSET(){return this.getToken(tf.SUBSET,0)}SYMBOLS(){return this.getToken(tf.SYMBOLS,0)}SYNC(){return this.getToken(tf.SYNC,0)}SYSTEM(){return this.getToken(tf.SYSTEM,0)}TABLE(){return this.getToken(tf.TABLE,0)}TABLES(){return this.getToken(tf.TABLES,0)}TABLESAMPLE(){return this.getToken(tf.TABLESAMPLE,0)}TABLESTORE(){return this.getToken(tf.TABLESTORE,0)}TEMP(){return this.getToken(tf.TEMP,0)}TEMPORARY(){return this.getToken(tf.TEMPORARY,0)}THEN(){return this.getToken(tf.THEN,0)}TIES(){return this.getToken(tf.TIES,0)}TO(){return this.getToken(tf.TO,0)}TOPIC(){return this.getToken(tf.TOPIC,0)}TRANSACTION(){return this.getToken(tf.TRANSACTION,0)}TRIGGER(){return this.getToken(tf.TRIGGER,0)}TYPE(){return this.getToken(tf.TYPE,0)}UNCONDITIONAL(){return this.getToken(tf.UNCONDITIONAL,0)}UNIQUE(){return this.getToken(tf.UNIQUE,0)}UNKNOWN(){return this.getToken(tf.UNKNOWN,0)}UNMATCHED(){return this.getToken(tf.UNMATCHED,0)}UPDATE(){return this.getToken(tf.UPDATE,0)}UPSERT(){return this.getToken(tf.UPSERT,0)}USE(){return this.getToken(tf.USE,0)}USER(){return this.getToken(tf.USER,0)}USING(){return this.getToken(tf.USING,0)}VACUUM(){return this.getToken(tf.VACUUM,0)}VALUES(){return this.getToken(tf.VALUES,0)}VIEW(){return this.getToken(tf.VIEW,0)}VIRTUAL(){return this.getToken(tf.VIRTUAL,0)}WITH(){return this.getToken(tf.WITH,0)}WRAPPER(){return this.getToken(tf.WRAPPER,0)}XOR(){return this.getToken(tf.XOR,0)}get ruleIndex(){return tf.RULE_keyword_compat}accept(t){return t.visitKeyword_compat?t.visitKeyword_compat(this):t.visitChildren(this)}},lK=class extends ga{constructor(t,e){super(t,e)}OPTIONAL(){return this.getToken(tf.OPTIONAL,0)}TUPLE(){return this.getToken(tf.TUPLE,0)}STRUCT(){return this.getToken(tf.STRUCT,0)}VARIANT(){return this.getToken(tf.VARIANT,0)}LIST(){return this.getToken(tf.LIST,0)}FLOW(){return this.getToken(tf.FLOW,0)}DICT(){return this.getToken(tf.DICT,0)}SET(){return this.getToken(tf.SET,0)}ENUM(){return this.getToken(tf.ENUM,0)}RESOURCE(){return this.getToken(tf.RESOURCE,0)}TAGGED(){return this.getToken(tf.TAGGED,0)}CALLABLE(){return this.getToken(tf.CALLABLE,0)}get ruleIndex(){return tf.RULE_type_id}accept(t){return t.visitType_id?t.visitType_id(this):t.visitChildren(this)}},OK=class extends ga{constructor(t,e){super(t,e)}TRUE(){return this.getToken(tf.TRUE,0)}FALSE(){return this.getToken(tf.FALSE,0)}get ruleIndex(){return tf.RULE_bool_value}accept(t){return t.visitBool_value?t.visitBool_value(this):t.visitChildren(this)}},IK=class extends ga{constructor(t,e){super(t,e)}REAL(){return this.getToken(tf.REAL,0)}get ruleIndex(){return tf.RULE_real}accept(t){return t.visitReal?t.visitReal(this):t.visitChildren(this)}},uK=class extends ga{constructor(t,e){super(t,e)}DIGITS(){return this.getToken(tf.DIGITS,0)}INTEGER_VALUE(){return this.getToken(tf.INTEGER_VALUE,0)}get ruleIndex(){return tf.RULE_integer}accept(t){return t.visitInteger?t.visitInteger(this):t.visitChildren(this)}},NK=class extends ga{constructor(t,e){super(t,e)}sql_stmt_list_yq(){return this.getRuleContext(0,LK)}PRAGMA(){return this.getToken(tf.PRAGMA,0)}ANSI(){return this.getToken(tf.ANSI,0)}DIGITS(){return this.getToken(tf.DIGITS,0)}ansi_sql_stmt_list(){return this.getRuleContext(0,af)}get ruleIndex(){return tf.RULE_sql_query_yq}accept(t){return t.visitSql_query_yq?t.visitSql_query_yq(this):t.visitChildren(this)}},LK=class extends ga{constructor(t,e){super(t,e)}sql_stmt_yq(t){return void 0===t?this.getRuleContexts(CK):this.getRuleContext(t,CK)}EOF(){return this.getToken(tf.EOF,0)}SEMICOLON(t){return void 0===t?this.getTokens(tf.SEMICOLON):this.getToken(tf.SEMICOLON,t)}get ruleIndex(){return tf.RULE_sql_stmt_list_yq}accept(t){return t.visitSql_stmt_list_yq?t.visitSql_stmt_list_yq(this):t.visitChildren(this)}},CK=class extends ga{constructor(t,e){super(t,e)}sql_stmt_core_yq(){return this.getRuleContext(0,_K)}EXPLAIN(){return this.getToken(tf.EXPLAIN,0)}QUERY(){return this.getToken(tf.QUERY,0)}PLAN(){return this.getToken(tf.PLAN,0)}get ruleIndex(){return tf.RULE_sql_stmt_yq}accept(t){return t.visitSql_stmt_yq?t.visitSql_stmt_yq(this):t.visitChildren(this)}},_K=class extends ga{constructor(t,e){super(t,e)}pragma_stmt(){return this.getRuleContext(0,cw)}select_stmt(){return this.getRuleContext(0,Tw)}named_nodes_stmt(){return this.getRuleContext(0,mX)}use_stmt(){return this.getRuleContext(0,dX)}into_table_stmt_yq(){return this.getRuleContext(0,Pb)}declare_stmt(){return this.getRuleContext(0,$Y)}import_stmt(){return this.getRuleContext(0,ew)}export_stmt(){return this.getRuleContext(0,sw)}do_stmt(){return this.getRuleContext(0,iw)}define_action_or_subquery_stmt(){return this.getRuleContext(0,SV)}if_stmt(){return this.getRuleContext(0,OV)}for_stmt(){return this.getRuleContext(0,IV)}values_stmt(){return this.getRuleContext(0,db)}get ruleIndex(){return tf.RULE_sql_stmt_core_yq}accept(t){return t.visitSql_stmt_core_yq?t.visitSql_stmt_core_yq(this):t.visitChildren(this)}},PK=class extends ga{constructor(t,e){super(t,e)}AS(){return this.getToken(tf.AS,0)}object_ref(){return this.getRuleContext(0,PV)}get ruleIndex(){return tf.RULE_replication_name}accept(t){return t.visitReplication_name?t.visitReplication_name(this):t.visitChildren(this)}},MK=class extends ga{constructor(t,e){super(t,e)}WHERE(){return this.getToken(tf.WHERE,0)}expr(){return this.getRuleContext(0,Ef)}get ruleIndex(){return tf.RULE_where_expr}accept(t){return t.visitWhere_expr?t.visitWhere_expr(this):t.visitChildren(this)}},dK=class extends ga{constructor(t,e){super(t,e)}FROM(){return this.getToken(tf.FROM,0)}join_source(){return this.getRuleContext(0,Eb)}get ruleIndex(){return tf.RULE_from_stmt}accept(t){return t.visitFrom_stmt?t.visitFrom_stmt(this):t.visitChildren(this)}},UK=class extends ga{constructor(t,e){super(t,e)}alter_table_stmt(){return this.getRuleContext(0,aW)}alter_table_store_stmt(){return this.getRuleContext(0,nW)}get ruleIndex(){return tf.RULE_alter_table_for_autocomplete}accept(t){return t.visitAlter_table_for_autocomplete?t.visitAlter_table_for_autocomplete(this):t.visitChildren(this)}},mK=class extends Ii{},DK={SPACE:tf.WS,FROM:tf.FROM,OPENING_BRACKET:tf.LPAREN,CLOSING_BRACKET:tf.RPAREN,ALTER:tf.ALTER,INSERT:tf.INSERT,UPDATE:tf.UPDATE,JOIN:tf.JOIN,SEMICOLON:tf.SEMICOLON,SELECT:tf.SELECT};function pK(t){let e=new Map(t.map((t=>[t,!0])));return{anyRuleInList:t=>(Array.isArray(t)?t:[t]).some((t=>e.has(t))),allRulesInList:t=>!t.some((t=>!e.has(t)))}}var gK=tf.ruleNames;function xK(t){let e=t.findIndex((t=>t===tf.RULE_sql_stmt_core||t===tf.RULE_sql_stmt_core_yq));if(-1===e)return;let s=t[e+1];return s?gK[s]:void 0}var kK={suggestObject:"object",suggestTableStore:"tableStore",suggestTable:"table",suggestExternalTable:"externalTable",suggestExternalDatasource:"externalDataSource",suggestTopic:"topic",suggestView:"view",suggestReplication:"replication",suggestGroup:"group",suggestUser:"user"};function HK(t,e,s){let a={...pK(t),cursorTokenIndex:e,tokenStream:s},r=function(t){let{anyRuleInList:e,allRulesInList:s}=t;if(s([tf.RULE_select_stmt,tf.RULE_id_expr]))return!e([tf.RULE_window_specification_details,tf.RULE_group_by_clause,tf.RULE_table_ref,tf.RULE_where_expr])||void 0}(a),i=function(t){let{anyRuleInList:e}=t;return e([tf.RULE_alter_object_stmt,tf.RULE_drop_object_stmt])&&e(tf.RULE_id_or_at)}(a),c=function(t){let{anyRuleInList:e,tokenStream:s,cursorTokenIndex:a}=t;if(!e(tf.RULE_id_or_at))return;let r=e(tf.RULE_drop_table_stmt)&&!!UC(s,DK,a,tf.TABLESTORE);return e(tf.RULE_alter_table_store_stmt)||r}(a),n=function(t){let{anyRuleInList:e,allRulesInList:s,tokenStream:a,cursorTokenIndex:r}=t;if(!e([tf.RULE_id_or_at,tf.RULE_id_table_or_type]))return;let i=e(tf.RULE_replication_target)&&!e(tf.RULE_replication_name),c=s([tf.RULE_simple_table_ref])&&!UC(a,DK,r,tf.CREATE)&&!UC(a,DK,r,tf.EXTERNAL);return e([tf.RULE_table_ref,tf.RULE_table_inherits])||c||i}(a),h=function(t){let{anyRuleInList:e,tokenStream:s,cursorTokenIndex:a}=t;if(!e(tf.RULE_role_name))return;let r=!!UC(s,DK,a,tf.USER),i=!!UC(s,DK,a,tf.RENAME),c=e(tf.RULE_revoke_permissions_stmt),n=e(tf.RULE_alter_group_stmt)&&!i&&r,h=e(tf.RULE_create_group_stmt)&&r,E=e(tf.RULE_alter_user_stmt)&&!i;return e(tf.RULE_drop_role_stmt)&&r||E||h||n||c}(a),E=function(t){let{anyRuleInList:e,tokenStream:s,cursorTokenIndex:a}=t;if(!e(tf.RULE_role_name))return;let r=!!UC(s,DK,a,tf.GROUP),i=!!UC(s,DK,a,tf.USER),c=!!UC(s,DK,a,tf.RENAME),n=e(tf.RULE_drop_role_stmt)&&r,h=e(tf.RULE_alter_group_stmt)&&!c&&!i;return e(tf.RULE_revoke_permissions_stmt)||h||n}(a),T=function(t){let{anyRuleInList:e}=t;if(e([tf.RULE_an_id,tf.RULE_topic_ref]))return e([tf.RULE_drop_topic_stmt,tf.RULE_alter_topic_stmt])}(a),o=function(t){let{allRulesInList:e}=t;return e([tf.RULE_drop_view_stmt,tf.RULE_id_or_at])||e([tf.RULE_table_ref,tf.RULE_id_table_or_type])}(a),R=function(t){let{anyRuleInList:e}=t;if(e(tf.RULE_id_or_at))return e([tf.RULE_alter_replication_stmt,tf.RULE_drop_replication_stmt])}(a),A=function(t){let{allRulesInList:e,tokenStream:s,cursorTokenIndex:a}=t,r=!!UC(s,DK,a,tf.EXTERNAL);return e([tf.RULE_id_or_at,tf.RULE_drop_table_stmt])&&r||e([tf.RULE_table_ref,tf.RULE_id_table_or_type])}(a),S=function(t){let{anyRuleInList:e}=t;if(e(tf.RULE_id_or_at))return e([tf.RULE_drop_external_data_source_stmt,tf.RULE_alter_external_data_source_stmt])}(a),l=function(t){let{anyRuleInList:e}=t;if(e(tf.RULE_an_id))return e([tf.RULE_alter_table_drop_index,tf.RULE_alter_table_rename_index_to])}(a),O=function(t){let{anyRuleInList:e,tokenStream:s,cursorTokenIndex:a}=t;if(!e([tf.RULE_an_id,tf.RULE_id_expr])||e([tf.RULE_table_ref,tf.RULE_values_stmt,tf.RULE_alter_table_add_column,tf.RULE_lambda_stmt]))return;let r=e(tf.RULE_select_kind)&&!UC(s,DK,a,tf.LIMIT),i=e(tf.RULE_alter_table_alter_column)&&!UC(s,DK,a,tf.FAMILY);return e([tf.RULE_pure_column_list,tf.RULE_pure_column_or_named,tf.RULE_column_name,tf.RULE_without_column_name,tf.RULE_alter_table_drop_column,tf.RULE_delete_stmt])||i||r}(a),I=function(t){let{anyRuleInList:e,allRulesInList:s}=t,a=s([tf.RULE_id_expr,tf.RULE_select_stmt])&&!e(tf.RULE_table_ref);return e(tf.RULE_type_name_simple)||a}(a),u=function(t){let{allRulesInList:e}=t;return e([tf.RULE_an_id,tf.RULE_pragma_stmt])}(a),N=function(t){let{anyRuleInList:e}=t;if(e([tf.RULE_atom_expr,tf.RULE_in_atom_expr])&&!e(tf.RULE_table_ref))return e(tf.RULE_select_stmt)}(a),L=function(t){let{allRulesInList:e}=t;return e([tf.RULE_id_expr,tf.RULE_table_ref])}(a),C=function(t){let{anyRuleInList:e}=t;if(e(tf.RULE_id_expr)&&!e(tf.RULE_table_ref))return e(tf.RULE_select_stmt)}(a),_=function(t){let{anyRuleInList:e,allRulesInList:s}=t;if(s([tf.RULE_select_stmt,tf.RULE_id_expr]))return!e([tf.RULE_group_by_clause,tf.RULE_table_ref,tf.RULE_where_expr])||void 0}(a),P=function(t){let{allRulesInList:e}=t;return e([tf.RULE_an_id_hint,tf.RULE_table_hint])}(a),M=function(t){let{allRulesInList:e,anyRuleInList:s}=t;if(!s([tf.RULE_table_setting_value,tf.RULE_topic_setting_value,tf.RULE_topic_consumer_setting_value])){if(e([tf.RULE_with_table_settings,tf.RULE_an_id]))return s(tf.RULE_create_external_data_source_stmt)?"externalDataSource":s(tf.RULE_create_view_stmt)?"view":s(tf.RULE_create_table_stmt)?"table":void 0;if(e([tf.RULE_with_topic_settings,tf.RULE_an_id]))return"topic";if(e([tf.RULE_topic_consumer_with_settings,tf.RULE_an_id]))return"topicConsumer";if(e([tf.RULE_replication_settings,tf.RULE_an_id]))return"replication"}}(a);return{suggestWindowFunctions:r,shouldSuggestTableIndexes:l,shouldSuggestColumns:O,shouldSuggestColumnAliases:O,suggestSimpleTypes:I,suggestPragmas:u,suggestUdfs:N,suggestTableFunctions:L,suggestFunctions:C,suggestAggregateFunctions:_,suggestTableHints:P?xK(t):void 0,suggestEntitySettings:M,suggestObject:i,suggestTableStore:c,suggestTable:n,suggestUser:h,suggestGroup:E,suggestTopic:T,suggestView:o,suggestReplication:R,suggestExternalTable:A,suggestExternalDatasource:S}}var GK=new Set(function(){let t=[],e=tf.EQUALS,s=tf.LBRACE_SQUARE;for(let a=e;a<=s;a++)a!==tf.ASTERISK&&t.push(a);return t.push(tf.STREAM),t.push(tf.STRING_VALUE),t.push(tf.REAL),t.push(tf.EOF),t.push(tf.DIGITS),t.push(tf.BLOB),t.push(tf.CURRENT_TIME),t.push(tf.CURRENT_DATE),t.push(tf.CURRENT_TIMESTAMP),t}()),FK=new Set([tf.RULE_id_or_type,tf.RULE_cluster_expr,tf.RULE_identifier,tf.RULE_id,tf.RULE_integer,tf.RULE_type_id,tf.RULE_keyword,tf.RULE_keyword_compat,tf.RULE_keyword_expr_uncompat,tf.RULE_keyword_table_uncompat,tf.RULE_keyword_select_uncompat,tf.RULE_keyword_alter_uncompat,tf.RULE_keyword_in_uncompat,tf.RULE_keyword_window_uncompat,tf.RULE_keyword_hint_uncompat,tf.RULE_id_schema,tf.RULE_id_expr_in,tf.RULE_id_window,tf.RULE_id_table,tf.RULE_id_without,tf.RULE_id_hint,tf.RULE_id_as_compat]),vK=class extends mK{constructor(){super(),this.visitSimple_table_ref_core=t=>{try{var e,s,a;let r=null===(e=t.object_ref())||void 0===e||null===(s=e.id_or_at())||void 0===s||null===(a=s.an_id_or_type())||void 0===a?void 0:a.getText();r&&this.symbolTable.addNewSymbolOfType(qc,this.scope,r)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitAlter_table_store_stmt=t=>{try{var e,s;this.symbolTable.addNewSymbolOfType(qc,this.scope,null===(e=t.object_ref())||void 0===e||null===(s=e.id_or_at())||void 0===s?void 0:s.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitNamed_single_source=t=>{try{var e,s,a,r,i;this.symbolTable.addNewSymbolOfType(qc,this.scope,null!==(e=null===(s=t.single_source().table_ref())||void 0===s?void 0:s.getText())&&void 0!==e?e:"",null!==(a=null===(r=t.an_id())||void 0===r?void 0:r.getText())&&void 0!==a?a:null===(i=t.an_id_as_compat())||void 0===i?void 0:i.getText())}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitNamed_column=t=>{try{var e;let s=null===(e=t.an_id())||void 0===e?void 0:e.getText();s&&this.symbolTable.addNewSymbolOfType(zc,this.scope,s)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitNamed_expr=t=>{try{var e;let s=null===(e=t.an_id_or_type())||void 0===e?void 0:e.getText();s&&this.symbolTable.addNewSymbolOfType(zc,this.scope,s)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.visitResult_column=t=>{try{var e,s,a;let r=null!==(e=null===(s=t.an_id_or_type())||void 0===s?void 0:s.getText())&&void 0!==e?e:null===(a=t.an_id_as_compat())||void 0===a?void 0:a.getText();r&&this.symbolTable.addNewSymbolOfType(zc,this.scope,r)}catch($c){if(!($c instanceof vc))throw $c}return this.visitChildren(t)},this.symbolTable=new Zc("",{allowDuplicateSymbols:!0}),this.scope=this.symbolTable.addNewSymbolOfType(Bc,void 0)}};function BK(t,e){return e?fK(t,e):t.sql_query()}function yK(t,e){return e?fK(t,e):t.sql_query_yq()}function fK(t,e){switch(e){case"from":return t.from_stmt();case"alter":return t.alter_table_for_autocomplete();case"insert":return t.into_table_stmt();case"update":return t.update_stmt();case"select":return t.select_core()}}function YK(t){return(e,s,a,r,i,c)=>{let{shouldSuggestColumns:n,shouldSuggestColumnAliases:h,shouldSuggestTableIndexes:E,...T}=function(t,e,s){let a={};for(let[O,I]of t){if(!uC(e,I))break;switch(O){case tf.RULE_id_table:case tf.RULE_id_hint:case tf.RULE_identifier:case tf.RULE_id_or_type:case tf.RULE_id:{let t=HK(I.ruleList,e,s),r=Object.fromEntries(Object.entries(t).filter((t=>{let[e,s]=t;return s})));a={...a,...r}}}}let{suggestObject:r,suggestTableStore:i,suggestTable:c,suggestUser:n,suggestGroup:h,suggestTopic:E,suggestView:T,suggestReplication:o,suggestExternalTable:R,suggestExternalDatasource:A,...S}=a,l=Object.entries({suggestObject:r,suggestTableStore:i,suggestTable:c,suggestUser:n,suggestGroup:h,suggestTopic:E,suggestView:T,suggestReplication:o,suggestExternalTable:R,suggestExternalDatasource:A}).filter((t=>{let[e,s]=t;return s})).map((t=>{let[e]=t;return kK[e]}));return{suggestEntity:l.length?l:void 0,...S}}(s,r,a),o={...e,...T,suggestTemplates:_C(c,i)};if(n||h||E){let e=new vK,{tableContextSuggestion:s,suggestColumnAliases:r}=mC($y,tf,e,DK,t,a,i,c,!0);n&&s&&(o.suggestColumns={tables:s.tables}),E&&s&&(o.suggestTableIndexes={tables:s.tables}),h&&r&&(o.suggestColumnAliases=r)}return o}}var wK=new ef(null,-1),bK={Lexer:$y,Parser:tf,tokenDictionary:DK,ignoredTokens:GK,rulesToVisit:FK,getParseTree:BK,enrichAutocompleteResult:YK(BK),context:wK},WK=new NK(null,-1),VK={Lexer:$y,Parser:tf,tokenDictionary:DK,ignoredTokens:GK,rulesToVisit:FK,getParseTree:yK,enrichAutocompleteResult:YK(yK),context:WK};function XK(t,e,s,a,r){let i=PC(t,e,r),c=new NG(s.SPACE);return i.removeErrorListeners(),i.addErrorListener(c),a(i),{errors:c.errors}}var KK=/^'(.*)'$/;function QK(t,e,s,a,r,i,c,n,h,E){let T=PC(t,e,n),{tokenStream:o}=T,R=new NG(s.SPACE);T.removeErrorListeners(),T.addErrorListener(R),i(T);let A=new Jc(T);A.ignoredTokens=a,A.preferredRules=r;let S=IC(o,h,s.SPACE);if(void 0===S)throw new Error("Could not find cursor token index for line: ".concat(h.line,", column: ").concat(h.column));let l=[],{tokens:O,rules:I}=A.collectCandidates(S,E);return O.forEach(((t,e)=>{var s;let a=(null===(s=T.vocabulary.getLiteralName(e))||void 0===s?void 0:s.replace(KK,"$1"))||T.vocabulary.getSymbolicName(e);if(!a)throw new Error("Could not get name for token ".concat(e));l.push({value:a})})),c({errors:R.errors,suggestKeywords:l},I,o,S,h,n)}function JK(t){return XK(uG.Lexer,uG.Parser,uG.tokenDictionary,uG.getParseTree,t)}function ZK(t,e){return QK(uG.Lexer,uG.Parser,uG.tokenDictionary,uG.ignoredTokens,uG.rulesToVisit,uG.getParseTree,uG.enrichAutocompleteResult,t,e)}function qK(t){return XK(HC.Lexer,HC.Parser,HC.tokenDictionary,HC.getParseTree,t)}function jK(t,e){return QK(HC.Lexer,HC.Parser,HC.tokenDictionary,HC.ignoredTokens,HC.rulesToVisit,HC.getParseTree,HC.enrichAutocompleteResult,t,e)}function zK(t){return XK(zy.Lexer,zy.Parser,zy.tokenDictionary,zy.getParseTree,t)}function $K(t,e){return QK(zy.Lexer,zy.Parser,zy.tokenDictionary,zy.ignoredTokens,zy.rulesToVisit,zy.getParseTree,zy.enrichAutocompleteResult,t,e)}function tQ(t){return XK(bK.Lexer,bK.Parser,bK.tokenDictionary,bK.getParseTree,t)}function eQ(t,e){return QK(bK.Lexer,bK.Parser,bK.tokenDictionary,bK.ignoredTokens,bK.rulesToVisit,bK.getParseTree,bK.enrichAutocompleteResult,t,e,bK.context)}function sQ(t){return XK(VK.Lexer,VK.Parser,VK.tokenDictionary,VK.getParseTree,t)}function aQ(t,e){return QK(VK.Lexer,VK.Parser,VK.tokenDictionary,VK.ignoredTokens,VK.rulesToVisit,VK.getParseTree,VK.enrichAutocompleteResult,t,e,VK.context)}}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/9759.7dadb893.chunk.js b/ydb/core/viewer/monitoring/static/js/9759.7dadb893.chunk.js new file mode 100644 index 000000000000..1e44830c7016 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/9759.7dadb893.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[9759],{50422:(e,a,o)=>{o.d(a,{q:()=>h});var t=o(84317),r=o(17176),n=o(2418),l=o(905),s=o(24362),i=o(34051),d=o(30817);const c=JSON.parse('{"None":"None","15 sec":"15 sec","1 min":"1 min","2 min":"2 min","5 min":"5 min","Refresh":"Refresh"}'),u=(0,d.wZ)("ydb-diagnostics-autorefresh-control",{en:c});var m=o(75859);const v=(0,s.cn)("auto-refresh-control");function h(e){let{className:a}=e;const o=(0,i.zL)(),[s,d]=(0,i.Rj)();return(0,m.jsxs)("div",{className:v(null,a),children:[(0,m.jsx)(r.z,{view:"flat",onClick:()=>{o(l.h.util.invalidateTags(["All"]))},extraProps:{"aria-label":u("Refresh")},children:(0,m.jsx)(r.z.Icon,{children:(0,m.jsx)(t.Z,{})})}),(0,m.jsxs)(n.P,{value:[String(s)],onUpdate:e=>{d(Number(e))},width:85,children:[(0,m.jsx)(n.P.Option,{value:"0",children:u("None")}),(0,m.jsx)(n.P.Option,{value:"15000",children:u("15 sec")}),(0,m.jsx)(n.P.Option,{value:"60000",children:u("1 min")}),(0,m.jsx)(n.P.Option,{value:"120000",children:u("2 min")}),(0,m.jsx)(n.P.Option,{value:"300000",children:u("5 min")})]})]})}},90861:(e,a,o)=>{o.d(a,{m:()=>u});var t=o(27320),r=o(17176),n=o(11050),l=o(81434),s=o(24362),i=o(75859);const d=(0,s.cn)("clipboard-button");function c(e){let{className:a,status:o,title:l,...s}=e;return(0,i.jsx)(t.u,{content:"success"===o?"Copied!":l||"Copy",placement:"bottom-start",children:(0,i.jsx)(r.z,{...s,className:d(null,a),children:(0,i.jsx)(r.z.Icon,{children:(0,i.jsx)(n.K,{status:o,size:16})})})})}function u(e){let{text:a,...o}=e;return(0,i.jsx)(l.h,{text:a,timeout:1e3,children:e=>(0,i.jsx)(c,{...o,status:e})})}},1796:(e,a,o)=>{o.d(a,{p:()=>c});var t=o(68963),r=o(24362),n=o(52317),l=o(92666),s=o(34051),i=o(75859);const d=(0,r.cn)("storage-disk-progress-bar");function c(e){let{diskAllocatedPercent:a=-1,severity:o,compact:r}=e;const[c]=(0,s.yu)(n.yT),u={inverted:c,compact:r},m=void 0!==o&&(0,l.b)(o);return m&&(u[m.toLocaleLowerCase()]=!0),(0,i.jsx)("div",{className:d(u),role:"meter","aria-label":"Disk allocated space","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":a,children:r?(0,i.jsx)("div",{className:d("filled"),style:{width:"100%"}}):a>=0&&(0,i.jsxs)(t.Fragment,{children:[(0,i.jsx)("div",{className:d("filled"),style:{width:"".concat(c?100-a:a,"%")}}),(0,i.jsx)("div",{className:d("filled-title"),children:"".concat(Math.round(a),"%")})]})})}},69214:(e,a,o)=>{o.d(a,{A:()=>u});var t=o(86017),r=o(75850),n=o(24362),l=o(90861),s=o(68036),i=o(98366),d=o(75859);const c=(0,n.cn)("entity-status");function u(e){let{status:a=r.K.Grey,name:o="",label:n,path:u,iconPath:m,size:v="s",mode:h="color",showStatus:p=!0,externalLink:N=!1,withLeftTrim:b=!1,hasClipboardButton:g,clipboardButtonAlwaysVisible:k=!1,className:D,additionalControls:I}=e;const S=()=>p?(0,d.jsx)(i.J,{className:c("icon"),status:a,size:v,mode:h}):null;return(0,d.jsxs)("div",{className:c(null,D),title:o,children:[m?(R=m,(0,d.jsx)(t.r,{target:"_blank",href:R,children:S()})):S(),n&&(0,d.jsx)("span",{title:n,className:c("label",{size:v,state:a.toLowerCase()}),children:n}),(0,d.jsx)("span",{className:c("link",{"with-left-trim":b}),children:u?N?(0,d.jsx)(t.r,{className:c("name"),href:u,children:o}):(0,d.jsx)(s.h,{className:c("name"),to:u,children:o}):o&&(0,d.jsx)("span",{className:c("name"),children:o})}),g&&(0,d.jsx)(l.m,{text:o,size:"s",className:c("clipboard-button",{visible:k})}),I]});var R}},40073:(e,a,o)=>{o.d(a,{J:()=>p,b:()=>h});var t=o(68963),r=o(44920),n=o(75850),l=o(24362),s=o(52317),i=o(4119),d=o(47651),c=o(62206),u=o(75859);const m=(0,l.cn)("pdisk-storage-popup"),v=[n.K.Orange,n.K.Red,n.K.Yellow],h=(e,a)=>{const{AvailableSize:o,TotalSize:t,State:r,PDiskId:n,NodeId:l,Path:c,Realtime:u,Type:m,Device:h}=e,p=[{label:"PDisk",value:(0,i.CH)({NodeId:l,PDiskId:n})||s.jX},{label:"State",value:r||"not available"},{label:"Type",value:m||"unknown"}];return l&&p.push({label:"Node Id",value:l}),a&&l&&a.get(l)&&p.push({label:"Host",value:a.get(l)}),c&&p.push({label:"Path",value:c}),p.push({label:"Available",value:"".concat((0,d.Uz)(o)," of ").concat((0,d.Uz)(t))}),u&&v.includes(u)&&p.push({label:"Realtime",value:u}),h&&v.includes(h)&&p.push({label:"Device",value:h}),p},p=e=>{let{data:a,nodes:o,...n}=e;const l=t.useMemo((()=>h(a,o)),[a,o]);return(0,u.jsx)(r.G,{contentClassName:m(),placement:["top","bottom"],offset:[0,12],...n,children:(0,u.jsx)(c._P,{title:"PDisk",info:l,size:"s"})})}},67359:(e,a,o)=>{o.d(a,{y:()=>u});var t=o(56829),r=o(24362),n=o(4119),l=o(47651),s=o(75859);const i=(0,r.cn)("progress-viewer"),d=e=>(0,n.uf)((0,n.W0)(Number(e),2)),c=(e,a)=>[d(e),d(a)];function u(e){let{value:a,capacity:o,formatValues:r=c,percents:n,className:d,size:u="xs",colorizeProgress:m,inverseColorize:v,warningThreshold:h=60,dangerThreshold:p=80}=e;const N=(0,t.F)();let b=Math.round(parseFloat(String(a))/parseFloat(String(o))*100)||0;b=b>100?100:b;let g=a,k=o,D="/";n?(g=b+"%",k="",D=""):r&&([g,k]=r(Number(a),Number(o)));let I=v?"danger":"good";m&&(b>h&&b<=p?I="warning":b>p&&(I=v?"good":"danger"));const S={width:b+"%"};return(0,l.kE)(a)?(0,s.jsxs)("div",{className:i({size:u,theme:N,status:I},d),children:[(0,s.jsx)("div",{className:i("line"),style:S}),(0,s.jsx)("span",{className:i("text"),children:(0,l.kE)(o)?"".concat(g," ").concat(D," ").concat(k):g})]}):(0,s.jsx)("div",{className:"".concat(i({size:u})," ").concat(d," error"),children:"no data"})}},98366:(e,a,o)=>{o.d(a,{J:()=>m});var t=o(67585),r=o(57225),n=o(71586),l=o(88776),s=o(75850),i=o(24362),d=o(75859);const c=(0,i.cn)("ydb-status-icon"),u={[s.K.Blue]:t.Z,[s.K.Yellow]:r.Z,[s.K.Orange]:n.Z,[s.K.Red]:r.Z};function m(e){let{status:a=s.K.Grey,size:o="s",mode:t="color",className:r}=e;const n={state:a.toLowerCase(),size:o};return"icons"===t&&a in u?(0,d.jsx)(l.J,{className:c("status-icon",n,r),data:u[a]}):(0,d.jsx)("div",{className:c("status-color",n,r)})}},79255:(e,a,o)=>{o.d(a,{c:()=>P});var t=o(4119),r=o(92666),n=o(68963),l=o(24362),s=o(75859);const i=(0,l.cn)("stack"),d=e=>{let{children:a,className:o}=e;return(0,s.jsx)("div",{className:i(null,o),children:n.Children.map(a,((e,a)=>n.isValidElement(e)?(0,s.jsx)("div",{className:i("layer"),style:{"--ydb-stack-level":a},children:e}):null))})};var c=o(92398),u=o(54665),m=o(5922),v=o(52317),h=o(34051),p=o(1796),N=o(74170),b=o(44920),g=o(14979),k=o(75850),D=o(47651),I=o(62206),S=o(40073);const R=(0,l.cn)("vdisk-storage-popup"),y=e=>{let{data:a,nodes:o,...l}=e;const i=(0,r.I)(a),d=n.useMemo((()=>i?(e=>{var a,o,r,n;const{VDiskId:l,VDiskState:s,SatisfactionRank:i,DiskSpace:d,FrontQueues:c,Replicated:u,UnsyncedVDisks:m,AllocatedSize:v,ReadThroughput:h,WriteThroughput:p,StoragePoolName:N}=e,b=[{label:"VDisk",value:(0,t.a2)(l)},{label:"State",value:null!==s&&void 0!==s?s:"not available"}];var g,I;return N&&b.push({label:"StoragePool",value:N}),i&&(null===(a=i.FreshRank)||void 0===a?void 0:a.Flag)!==k.K.Green&&b.push({label:"Fresh",value:null===(g=i.FreshRank)||void 0===g?void 0:g.Flag}),i&&(null===(o=i.LevelRank)||void 0===o?void 0:o.Flag)!==k.K.Green&&b.push({label:"Level",value:null===(I=i.LevelRank)||void 0===I?void 0:I.Flag}),i&&null!==(r=i.FreshRank)&&void 0!==r&&r.RankPercent&&b.push({label:"Fresh",value:i.FreshRank.RankPercent}),i&&null!==(n=i.LevelRank)&&void 0!==n&&n.RankPercent&&b.push({label:"Level",value:i.LevelRank.RankPercent}),d&&d!==k.K.Green&&b.push({label:"Space",value:d}),c&&c!==k.K.Green&&b.push({label:"FrontQueues",value:c}),u||b.push({label:"Replicated",value:"NO"}),m&&b.push({label:"UnsyncVDisks",value:m}),Number(v)&&b.push({label:"Allocated",value:(0,D.Uz)(v)}),Number(h)&&b.push({label:"Read",value:(0,D.Qt)(h)}),Number(p)&&b.push({label:"Write",value:(0,D.Qt)(p)}),b})(a):(e=>{const{NodeId:a,PDiskId:o,VSlotId:t,StoragePoolName:r}=e,n=[{label:"State",value:"not available"}];return r&&n.push({label:"StoragePool",value:r}),n.push({label:"NodeId",value:null!==a&&void 0!==a?a:v.jX},{label:"PDiskId",value:null!==o&&void 0!==o?o:v.jX},{label:"VSlotId",value:null!==t&&void 0!==t?t:v.jX}),n})(a)),[a,i]),c=n.useMemo((()=>i&&a.PDisk&&(0,S.b)(a.PDisk,o)),[a,o,i]);return(0,s.jsxs)(b.G,{contentClassName:R(),placement:["top","bottom"],offset:[0,12],...l,children:[a.DonorMode&&(0,s.jsx)(g._,{className:R("donor-label"),children:"Donor"}),(0,s.jsx)(I._P,{title:"VDisk",info:d,size:"s"}),c&&(0,s.jsx)(I._P,{title:"PDisk",info:c,size:"s"})]})},f=(0,l.cn)("ydb-vdisk-component"),x=e=>{let{data:a={},nodes:o,compact:l}=e;const i=(0,r.I)(a),[d]=(0,h.yu)(v.fo),[b,g]=n.useState(!1),k=n.useRef(null);let D;return d&&(0,m.D)(a.VDiskSlotId)&&(0,m.D)(a.PDiskId)&&(0,m.D)(a.NodeId)?D=(0,u.By)(a.VDiskSlotId,a.PDiskId,a.NodeId):(0,m.D)(a.NodeId)&&i&&(D=(0,u.ax)(u.ZP.node,{id:a.NodeId,activeTab:c.pV},{pdiskId:a.PDiskId,vdiskId:(0,t.a2)(a.VDiskId)})),(0,s.jsxs)(n.Fragment,{children:[(0,s.jsx)(y,{data:a,nodes:o,anchorRef:k,open:b}),(0,s.jsx)("div",{className:f(),ref:k,onMouseEnter:()=>{g(!0)},onMouseLeave:()=>{g(!1)},children:D?(0,s.jsx)(N.h,{to:D,className:f("content"),children:(0,s.jsx)(p.p,{diskAllocatedPercent:a.AllocatedPercent,severity:a.Severity,compact:l})}):(0,s.jsx)(p.p,{diskAllocatedPercent:a.AllocatedPercent,severity:a.Severity,compact:l})})]})};function P(e){let{data:a,nodes:o,compact:n,className:l,stackClassName:i}=e;const c=null===a||void 0===a?void 0:a.Donors,u=c&&c.length>0?(0,s.jsxs)(d,{className:i,children:[(0,s.jsx)(x,{data:a,nodes:o,compact:n}),c.map((e=>{const a=(0,r.I)(e);return(0,s.jsx)(x,{data:e,nodes:o,compact:n},(0,t.a2)(a?e.VDiskId:e))}))]}):(0,s.jsx)(x,{data:a,nodes:o,compact:n});return(0,s.jsx)("div",{className:l,children:u})}},92092:(e,a,o)=>{o.d(a,{KJ:()=>N,Y2:()=>p,mD:()=>u,sl:()=>v});var t=o(75850),r=o(21897),n=o(17632),l=o(3764),s=o(51688),i=o(15106);const d={[t.K.Grey]:0,[t.K.Blue]:0,[t.K.Green]:1,[t.K.Yellow]:100,[t.K.Orange]:1e4,[t.K.Red]:1e6},c=(e,a)=>{var o;const t=(0,l.w)(e);return{...t,StoragePoolName:a,Donors:null===t||void 0===t||null===(o=t.Donors)||void 0===o?void 0:o.map((e=>({...e,StoragePoolName:a})))}},u=(e,a)=>{var o;let t,s=0,u=0,m=0,v=0,h=0,p=0;const{Name:N,MediaType:b}=a;if(e.VDisks)for(const i of e.VDisks){const{Replicated:e,VDiskState:a,AvailableSize:o,AllocatedSize:c,PDisk:N,DiskSpace:b,ReadThroughput:g,WriteThroughput:k}=i,{Type:D,State:I,AvailableSize:S}=(0,l.b)(N);e&&I===r.w.Normal&&a===n.H.OK||(s+=1),b&&(u+=d[b]);const R=Number(null!==o&&void 0!==o?o:S)||0,y=Number(c)||0;m+=y,v+=R+y,h+=Number(g)||0,p+=Number(k)||0,t=!D||D!==t&&t?"Mixed":D}const g=null===(o=e.VDisks)||void 0===o?void 0:o.map((e=>c(e,N))),k=(0,i.Ic)({Used:m,Limit:v},5);return{...e,VDisks:g,Usage:k,Read:h,Write:p,PoolName:N,Used:m,Limit:v,Degraded:s,UsedSpaceFlag:u,MediaType:b||t||void 0}},m=e=>{const{VDisks:a=[],PoolName:o,Usage:r=0,Read:n=0,Write:l=0,Used:s=0,Limit:i=0,Degraded:u=0,Kind:m,MediaType:v}=e,h=a.reduce(((e,a)=>{let{DiskSpace:o}=a;return o&&o!==t.K.Grey?e+d[o]:e}),0),p=a.map((e=>c(e,o))),N=Math.floor(100*Number(r));return{...e,UsedSpaceFlag:h,PoolName:o,MediaType:v||m,VDisks:p,Usage:N,Read:Number(n),Write:Number(l),Used:Number(s),Limit:Number(i),Degraded:Number(u)}},v=(e,a)=>{let o=[];return e?o=e.map(m):null===a||void 0===a||a.forEach((e=>{var a;null===(a=e.Groups)||void 0===a||a.forEach((a=>{o.push(u(a,e))}))})),o},h=e=>{var a,o,t;const n=(null===(a=e.PDisks)||void 0===a?void 0:a.filter((e=>e.State!==r.w.Normal)).length)||0,i=null===(o=e.PDisks)||void 0===o?void 0:o.map((a=>({...(0,l.b)(a),NodeId:e.NodeId}))),d=null===(t=e.VDisks)||void 0===t?void 0:t.map((a=>({...(0,l.w)(a),NodeId:e.NodeId})));return{...(0,s.Ns)(e.SystemState),NodeId:e.NodeId,PDisks:i,VDisks:d,Missing:n}},p=e=>{const{Nodes:a,TotalNodes:o,FoundNodes:t}=e,r=null===a||void 0===a?void 0:a.map(h);return{nodes:r,total:Number(o)||(null===r||void 0===r?void 0:r.length),found:Number(t)}},N=e=>{const{StoragePools:a,StorageGroups:o,TotalGroups:t,FoundGroups:r}=e,n=v(o,a);return{groups:n,total:Number(t)||n.length,found:Number(r)}}},21897:(e,a,o)=>{let t;o.d(a,{w:()=>t}),function(e){e.Initial="Initial",e.InitialFormatRead="InitialFormatRead",e.InitialFormatReadError="InitialFormatReadError",e.InitialSysLogRead="InitialSysLogRead",e.InitialSysLogReadError="InitialSysLogReadError",e.InitialSysLogParseError="InitialSysLogParseError",e.InitialCommonLogRead="InitialCommonLogRead",e.InitialCommonLogReadError="InitialCommonLogReadError",e.InitialCommonLogParseError="InitialCommonLogParseError",e.CommonLoggerInitError="CommonLoggerInitError",e.Normal="Normal",e.OpenFileError="OpenFileError",e.ChunkQuotaError="ChunkQuotaError",e.DeviceIoError="DeviceIoError",e.Missing="Missing",e.Timeout="Timeout",e.NodeDisconnected="NodeDisconnected",e.Unknown="Unknown"}(t||(t={}))},11431:(e,a,o)=>{let t;o.d(a,{w:()=>t}),function(e){e.v1="v1",e.v2="v2"}(t||(t={}))},17632:(e,a,o)=>{let t;o.d(a,{H:()=>t}),function(e){e.Initial="Initial",e.LocalRecoveryError="LocalRecoveryError",e.SyncGuidRecovery="SyncGuidRecovery",e.SyncGuidRecoveryError="SyncGuidRecoveryError",e.OK="OK",e.PDiskError="PDiskError"}(t||(t={}))},77072:(e,a,o)=>{o.d(a,{i6:()=>s,mG:()=>l,mr:()=>d,oO:()=>n,s:()=>i,tH:()=>c});var t=o(21897),r=o(17632);const n={Grey:0,Green:1,Blue:2,Yellow:3,Orange:4,Red:5},l=Object.entries(n).reduce(((e,a)=>{let[o,t]=a;return{...e,[t]:o}}),{}),s=n.Grey,i=l[s],d={[r.H.OK]:n.Green,[r.H.Initial]:n.Yellow,[r.H.SyncGuidRecovery]:n.Yellow,[r.H.LocalRecoveryError]:n.Red,[r.H.SyncGuidRecoveryError]:n.Red,[r.H.PDiskError]:n.Red},c={[t.w.Initial]:n.Grey,[t.w.Normal]:n.Green,[t.w.InitialFormatRead]:n.Yellow,[t.w.InitialSysLogRead]:n.Yellow,[t.w.InitialCommonLogRead]:n.Yellow,[t.w.InitialFormatReadError]:n.Red,[t.w.InitialSysLogReadError]:n.Red,[t.w.InitialSysLogParseError]:n.Red,[t.w.InitialCommonLogReadError]:n.Red,[t.w.InitialCommonLogParseError]:n.Red,[t.w.CommonLoggerInitError]:n.Red,[t.w.OpenFileError]:n.Red,[t.w.ChunkQuotaError]:n.Red,[t.w.DeviceIoError]:n.Red}},92666:(e,a,o)=>{o.d(a,{I:()=>r,b:()=>n});var t=o(77072);function r(e){return"VDiskId"in e}function n(e){return void 0===e?t.s:t.mG[e]||t.s}},3764:(e,a,o)=>{o.d(a,{b:()=>p,w:()=>h});var t=o(47651),r=o(75850),n=o(99106),l=o(77072);const s=(0,n.p)(85,95,[r.K.Green,r.K.Yellow,r.K.Red]);function i(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const o=function(e){return a=e,void 0!==a&&a in l.tH?l.tH[e]:l.i6;var a}(e.State),t=s(a);return o!==l.i6&&t?Math.max(o,l.oO[t]):o}var d=o(92666);function c(e){if(!(0,d.I)(e))return l.i6;const{DiskSpace:a,VDiskState:o,FrontQueues:t,Replicated:r,DonorMode:n}=e;if(!o)return l.i6;const s=u(a),i=function(e){var a;if(!e)return l.i6;return null!==(a=l.mr[e])&&void 0!==a?a:l.i6}(o),c=Math.min(l.oO.Orange,u(t));let m=Math.max(s,i,c);return r||n||m!==l.oO.Green||(m=l.oO.Blue),m}function u(e){var a;return e&&null!==(a=l.oO[e])&&void 0!==a?a:l.i6}const m={HDD:"HDD",SSD:"SSD",MVME:"NVME"};function v(e){if(!e)return;const a=function(e,a){const o={};return Object.entries(a).reduce(((a,t)=>{let[r,n]=t;const l=e.length-a,s=l-n;return o[r]=e.substring(s,l)||"0",a+n}),0),o}(BigInt(e).toString(2),{isSolidState:1,kind:55,typeExt:8});if("1"===a.isSolidState)switch(parseInt(a.typeExt,2)){case 0:return m.SSD;case 2:return m.MVME}else if("0"===a.typeExt)return m.HDD}function h(){var e,a;let o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const r=o.PDisk?p(o.PDisk):void 0,n=null!==(e=o.PDiskId)&&void 0!==e?e:null===r||void 0===r?void 0:r.PDiskId,l=function(e,a,o){const r=null!==a&&void 0!==a?a:o;if(!(0,t.kE)(e)||!(0,t.kE)(r))return;return Math.round(100*Number(e)/(Number(e)+Number(r)))}(o.AllocatedSize,o.AvailableSize,null===r||void 0===r?void 0:r.AvailableSize),s=null===(a=o.Donors)||void 0===a?void 0:a.map((e=>h({...e,DonorMode:!0}))),i=c(o);return{...o,PDisk:r,PDiskId:n,AllocatedPercent:l,Donors:s,Severity:i}}function p(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{AvailableSize:a,TotalSize:o,Category:r}=e,n=v(r),l=function(e,a){if(!(0,t.kE)(e)||!(0,t.kE)(a))return;return Math.round(100*(Number(a)-Number(e))/Number(a))}(a,o),s=i(e,l);return{...e,Type:n,AllocatedPercent:l,Severity:s}}},99106:(e,a,o)=>{o.d(a,{p:()=>t});const t=(e,a,o)=>t=>0<=t&&t{o.d(a,{Ic:()=>t,P7:()=>n,t5:()=>r});const t=function(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;const o=e.Limit?100*e.Used/e.Limit:0;return Math.floor(o/a)*a},r={PoolName:"PoolName",Kind:"Kind",MediaType:"MediaType",Erasure:"Erasure",Degraded:"Degraded",Usage:"Usage",GroupId:"GroupId",Used:"Used",Limit:"Limit",Read:"Read",Write:"Write"},n=e=>Object.values(r).includes(e)}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/9818.24b1ff88.chunk.js b/ydb/core/viewer/monitoring/static/js/9818.24b1ff88.chunk.js new file mode 100644 index 000000000000..fa2e1622e38d --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/9818.24b1ff88.chunk.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkydb_embedded_ui=self.webpackChunkydb_embedded_ui||[]).push([[9818],{50422:(e,s,t)=>{t.d(s,{q:()=>h});var r=t(84317),a=t(17176),l=t(2418),n=t(905),o=t(24362),c=t(34051),i=t(30817);const d=JSON.parse('{"None":"None","15 sec":"15 sec","1 min":"1 min","2 min":"2 min","5 min":"5 min","Refresh":"Refresh"}'),u=(0,i.wZ)("ydb-diagnostics-autorefresh-control",{en:d});var v=t(75859);const m=(0,o.cn)("auto-refresh-control");function h(e){let{className:s}=e;const t=(0,c.zL)(),[o,i]=(0,c.Rj)();return(0,v.jsxs)("div",{className:m(null,s),children:[(0,v.jsx)(a.z,{view:"flat",onClick:()=>{t(n.h.util.invalidateTags(["All"]))},extraProps:{"aria-label":u("Refresh")},children:(0,v.jsx)(a.z.Icon,{children:(0,v.jsx)(r.Z,{})})}),(0,v.jsxs)(l.P,{value:[String(o)],onUpdate:e=>{i(Number(e))},width:85,children:[(0,v.jsx)(l.P.Option,{value:"0",children:u("None")}),(0,v.jsx)(l.P.Option,{value:"15000",children:u("15 sec")}),(0,v.jsx)(l.P.Option,{value:"60000",children:u("1 min")}),(0,v.jsx)(l.P.Option,{value:"120000",children:u("2 min")}),(0,v.jsx)(l.P.Option,{value:"300000",children:u("5 min")})]})]})}},8747:(e,s,t)=>{t.d(s,{V:()=>l});var r=t(68746),a=t(75859);const l=e=>{let{error:s,className:t,defaultMessage:l=(0,r.Z)("responseError.defaultMessage")}=e,n="";return s&&"string"===typeof s&&(n=s),s&&"object"===typeof s&&("data"in s&&"string"===typeof s.data?n=s.data:"statusText"in s&&"string"===typeof s.statusText?n=s.statusText:"message"in s&&"string"===typeof s.message&&(n=s.message)),(0,a.jsx)("div",{className:"error ".concat(t),children:n||l})}},26688:(e,s,t)=>{t.d(s,{V:()=>r.V});var r=t(8747)},68746:(e,s,t)=>{t.d(s,{Z:()=>n});var r=t(30817);const a=JSON.parse('{"403.title":"Access denied","403.description":"You don\u2019t have the necessary roles to view this page.","responseError.defaultMessage":"Response error"}'),l=JSON.parse('{"403.title":"\u0414\u043e\u0441\u0442\u0443\u043f \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d","403.description":"\u0423 \u0432\u0430\u0441 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u0430\u0432 \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b.","responseError.defaultMessage":"\u041e\u0448\u0438\u0431\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430"}'),n=(0,r.wZ)("ydb-errors-access-denied",{ru:l,en:a})},16670:(e,s,t)=>{t.d(s,{a:()=>o});var r=t(2982),a=t(24362),l=t(75859);const n=(0,a.cn)("ydb-loader"),o=e=>{let{size:s="m",className:t}=e;return(0,l.jsx)("div",{className:n(null,t),children:(0,l.jsx)(r.a,{size:s})})}},67359:(e,s,t)=>{t.d(s,{y:()=>u});var r=t(56829),a=t(24362),l=t(4119),n=t(47651),o=t(75859);const c=(0,a.cn)("progress-viewer"),i=e=>(0,l.uf)((0,l.W0)(Number(e),2)),d=(e,s)=>[i(e),i(s)];function u(e){let{value:s,capacity:t,formatValues:a=d,percents:l,className:i,size:u="xs",colorizeProgress:v,inverseColorize:m,warningThreshold:h=60,dangerThreshold:N=80}=e;const g=(0,r.F)();let p=Math.round(parseFloat(String(s))/parseFloat(String(t))*100)||0;p=p>100?100:p;let S=s,x=t,f="/";l?(S=p+"%",x="",f=""):a&&([S,x]=a(Number(s),Number(t)));let E=m?"danger":"good";v&&(p>h&&p<=N?E="warning":p>N&&(E=m?"good":"danger"));const j={width:p+"%"};return(0,n.kE)(s)?(0,o.jsxs)("div",{className:c({size:u,theme:g,status:E},i),children:[(0,o.jsx)("div",{className:c("line"),style:j}),(0,o.jsx)("span",{className:c("text"),children:(0,n.kE)(t)?"".concat(S," ").concat(f," ").concat(x):S})]}):(0,o.jsx)("div",{className:"".concat(c({size:u})," ").concat(i," error"),children:"no data"})}},2098:(e,s,t)=>{t.d(s,{G:()=>i});var r=t(2639),a=t(19812),l=t(24362),n=t(89712),o=t(75859);const c=(0,l.cn)("ydb-resizeable-data-table");function i(e){let{columnsWidthLSKey:s,columns:t,settings:l,wrapperClassName:i,...d}=e;const[u,v]=(0,n.M)(s),m=(0,r.B)(t,u),h={...l,defaultResizeable:!0};return(0,o.jsx)("div",{className:c(null,i),children:(0,o.jsx)(a.ZP,{theme:"yandex-cloud",columns:m,onResize:v,settings:h,...d})})}},30629:(e,s,t)=>{t.d(s,{o:()=>c});var r=t(68963),a=t(77264),l=t(24362),n=t(75859);const o=(0,l.cn)("ydb-search"),c=e=>{let{onChange:s,value:t="",className:l,debounce:c=200,placeholder:i}=e;const[d,u]=r.useState(t),v=r.useRef();r.useEffect((()=>{u((e=>e!==t?t:e))}),[t]);return(0,n.jsx)(a.o,{hasClear:!0,autoFocus:!0,className:o(null,l),placeholder:i,value:d,onUpdate:e=>{u(e),window.clearTimeout(v.current),v.current=window.setTimeout((()=>{null===s||void 0===s||s(e)}),c)}})}},11551:(e,s,t)=>{t.d(s,{o:()=>r.o});var r=t(30629)},76435:(e,s,t)=>{t.r(s),t.d(s,{Clusters:()=>ee});var r=t(68963),a=t(19812),l=t(2418),n=t(48857),o=t(49352),c=t(50422),i=t(26688),d=t(16670),u=t(2098),v=t(11551),m=t(20163),h=t(43680),N=t.n(h);const g=e=>e.clusters.clusterName,p=e=>e.clusters.status,S=e=>e.clusters.service,x=e=>e.clusters.version,f=(e,s)=>0===s.length||e.status&&s.includes(e.status),E=(e,s)=>0===s.length||e.service&&s.includes(e.service),j=(e,s)=>0===s.length||s.some((s=>{var t,r;return null===(t=e.cluster)||void 0===t||null===(r=t.Versions)||void 0===r?void 0:r.some((e=>e.startsWith(s)))})),b=function(e){var s;let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(!t)return!0;const r=t.toLowerCase(),a=r.split(" "),l=(null===(s=e.title)||void 0===s?void 0:s.toLowerCase().match(/[^\d\s]+|\d+|[^-\s]+|[^_\s]+/g))||[],n=a.every((s=>{const t=N()(s),r=new RegExp("^".concat(t,"|[\\s\\-_]").concat(t),"i");return e.title&&r.test(e.title)||l.some((e=>e.startsWith(s)))})),o=e.preparedVersions.some((e=>e.version.includes(r))),c=Boolean(e.hosts&&e.hosts[r]);return n||o||c};var T=t(52317),O=t(34051),C=t(30601),w=t(67359),y=t(4119),A=t(30817);const _=JSON.parse('{"controls_status-select-label":"Status:","controls_service-select-label":"Service:","controls_version-select-label":"Version:","controls_search-placeholder":"Cluster name, version, host","controls_select-placeholder":"All","statistics_clusters":"Clusters","statistics_hosts":"Hosts","statistics_tenants":"Tenants","statistics_nodes":"Nodes","statistics_load":"Load","statistics_storage":"Storage","tooltip_no-cluster-data":"No cluster data","page_title":"Clusters"}'),R=JSON.parse('{"controls_status-select-label":"\u0421\u0442\u0430\u0442\u0443\u0441:","controls_service-select-label":"\u0421\u0435\u0440\u0432\u0438\u0441:","controls_version-select-label":"\u0412\u0435\u0440\u0441\u0438\u044f:","controls_search-placeholder":"\u0418\u043c\u044f \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430, \u0432\u0435\u0440\u0441\u0438\u044f \u0438\u043b\u0438 \u0445\u043e\u0441\u0442","controls_select-placeholder":"\u0412\u0441\u0435","statistics_clusters":"\u041a\u043b\u0430\u0441\u0442\u0435\u0440\u044b","statistics_hosts":"\u0425\u043e\u0441\u0442\u044b","statistics_tenants":"\u0411\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445","statistics_nodes":"\u0423\u0437\u043b\u044b","statistics_load":"\u041d\u0430\u0433\u0440\u0443\u0437\u043a\u0430","statistics_storage":"\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435","tooltip_no-cluster-data":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430","page_title":"\u041a\u043b\u0430\u0441\u0442\u0435\u0440\u044b"}'),I=(0,A.wZ)("ydb-clusters-page",{ru:R,en:_});var L=t(24362);const z=(0,L.cn)("clusters");var D=t(75859);const P=e=>{let{count:s,stats:t}=e;const{NodesTotal:r,NodesAlive:a,Hosts:l,Tenants:n,LoadAverage:o,NumberOfCpus:c,StorageUsed:i,StorageTotal:d}=t;return(0,D.jsxs)("div",{className:z("aggregation"),children:[(0,D.jsxs)("div",{className:z("aggregation-value-container"),children:[(0,D.jsx)("span",{className:z("aggregation-label"),children:I("statistics_clusters")}),s]}),(0,D.jsxs)("div",{className:z("aggregation-value-container"),children:[(0,D.jsx)("span",{className:z("aggregation-label"),children:I("statistics_hosts")}),l]}),(0,D.jsxs)("div",{className:z("aggregation-value-container"),children:[(0,D.jsx)("span",{className:z("aggregation-label"),children:I("statistics_tenants")}),n]}),(0,D.jsxs)("div",{className:z("aggregation-value-container"),children:[(0,D.jsx)("span",{className:z("aggregation-label"),children:I("statistics_nodes")}),(0,D.jsx)(w.y,{size:"ns",value:a,capacity:r,colorizeProgress:!0,inverseColorize:!0})]}),(0,D.jsxs)("div",{className:z("aggregation-value-container"),children:[(0,D.jsx)("span",{className:z("aggregation-label"),children:I("statistics_load")}),(0,D.jsx)(w.y,{size:"ns",value:o,capacity:c,colorizeProgress:!0})]}),(0,D.jsxs)("div",{className:z("aggregation-value-container"),children:[(0,D.jsx)("span",{className:z("aggregation-label"),children:I("statistics_storage")}),(0,D.jsx)(w.y,{size:"ns",value:i,capacity:d,formatValues:y.QO,colorizeProgress:!0})]})]})};var V=t(21986),U=t(86017),k=t(84893),M=t(19797),G=t(40726);const W=(0,L.cn)("kv-user");function Z(e){let{login:s,className:t}=e;const r=(0,G.C)("StaffCard");return(0,D.jsx)("div",{className:W(null,t),children:(0,D.jsx)(r,{login:s,children:(0,D.jsx)("div",{className:W("name"),children:s})})})}var H=t(45535),B=t(81003);const q="selectedColumns",F={TITLE:"title",VERSIONS:"versions",CLUSTER:"cluster",SERVICE:"service",STATUS:"status",NODES:"nodes",LOAD:"load",STORAGE:"storage",HOSTS:"hosts",TENANTS:"tenants",OWNER:"owner",DESCRIPTION:"description",BALANCER:"balancer"},J=[F.TITLE,F.VERSIONS,F.SERVICE,F.STATUS,F.NODES,F.LOAD,F.STORAGE,F.HOSTS,F.TENANTS,F.OWNER,F.BALANCER],X={[F.TITLE]:"Cluster",[F.VERSIONS]:"Versions",[F.CLUSTER]:"DC",[F.SERVICE]:"Service",[F.STATUS]:"Status",[F.NODES]:"Nodes",[F.LOAD]:"Load",[F.STORAGE]:"Storage",[F.HOSTS]:"Hosts",[F.TENANTS]:"Tenants",[F.OWNER]:"Owner",[F.DESCRIPTION]:"Description",[F.BALANCER]:"Balancer"},K="clustersTableColumnsWidth",Q=(0,D.jsx)("span",{className:z("empty-cell"),children:"\u2014"}),Y=[{name:F.TITLE,header:X[F.TITLE],width:230,render:e=>{var s,t;let{row:r}=e;const{balancer:a,name:l}=r,n=a&&(0,H.M2)(a),o=(0,B.B7)(void 0,{backend:n,clusterName:l}),c=null===(s=r.cluster)||void 0===s?void 0:s.Overall;return(0,D.jsxs)("div",{className:z("cluster"),children:[c?(0,D.jsx)(U.r,{href:o,children:(0,D.jsx)("div",{className:z("cluster-status",{type:c&&c.toLowerCase()})})}):(0,D.jsx)("div",{className:z("cluster-status"),children:(0,D.jsx)(V.J,{content:(0,D.jsx)("span",{className:z("tooltip-content"),children:(null===(t=r.cluster)||void 0===t?void 0:t.error)||I("tooltip_no-cluster-data")}),offset:{left:0}})}),(0,D.jsx)("div",{className:z("cluster-name"),children:(0,D.jsx)(U.r,{href:o,children:r.title})})]})},defaultOrder:a.ZP.ASCENDING},{name:F.VERSIONS,header:X[F.VERSIONS],width:300,defaultOrder:a.ZP.DESCENDING,sortAccessor:e=>{let{preparedVersions:s}=e;return s.map((e=>e.version.replace(/^[0-9]\+\./g,""))).sort(((e,s)=>e.localeCompare(s)))[0]||void 0},render:e=>{let{row:s}=e;const{preparedVersions:t,versions:a=[],balancer:l,name:n}=s;if(!a.length||a.some((e=>!e.version)))return Q;const o=a.reduce(((e,s)=>e+s.count),0),c=a.map((e=>{var s;return{value:e.count/o*100,color:null===(s=t.find((s=>s.version===e.version)))||void 0===s?void 0:s.color}})),i=l&&(0,H.M2)(l);return t.length>0&&(0,D.jsx)(U.r,{className:z("cluster-versions"),href:(0,B.B7)(B.xu.versions,{backend:i,clusterName:n}),children:(0,D.jsxs)(r.Fragment,{children:[t.map(((e,s)=>(0,D.jsx)("div",{className:z("cluster-version"),style:{color:e.color},title:e.version,children:e.version},s))),(0,D.jsx)(k.E,{size:"s",value:100,stack:c})]})})}},{name:F.CLUSTER,header:X[F.CLUSTER],width:120,sortable:!1,render:e=>{let{row:s}=e;const t=s.cluster&&s.cluster.DataCenters||[];return(0,D.jsx)("div",{className:z("cluster-dc"),children:t.join(", ")||Q})}},{name:F.SERVICE,header:X[F.SERVICE],width:100,sortable:!0},{name:F.STATUS,header:X[F.STATUS],width:150,sortable:!0},{name:F.NODES,header:X[F.NODES],resizeMinWidth:140,defaultOrder:a.ZP.DESCENDING,sortAccessor:e=>{let{cluster:s={}}=e;const{NodesTotal:t=0}=s;return t},render:e=>{let{row:s}=e;const{NodesAlive:t=0,NodesTotal:r=0,Overall:a}=s.cluster||{};return a?(0,D.jsx)(w.y,{value:t,capacity:r}):Q}},{name:F.LOAD,header:X[F.LOAD],resizeMinWidth:140,defaultOrder:a.ZP.DESCENDING,sortAccessor:e=>{let{cluster:s}=e;return null===s||void 0===s?void 0:s.NumberOfCpus},render:e=>{let{row:s}=e;const{LoadAverage:t=0,NumberOfCpus:r=0,Overall:a}=s.cluster||{};return a?(0,D.jsx)(w.y,{value:t,capacity:r}):Q}},{name:F.STORAGE,header:X[F.STORAGE],resizeMinWidth:140,defaultOrder:a.ZP.DESCENDING,sortAccessor:e=>{let{cluster:s}=e;return Number(null===s||void 0===s?void 0:s.StorageTotal)},render:e=>{let{row:s}=e;const{StorageUsed:t=0,StorageTotal:r=0,Overall:a}=s.cluster||{};return a?(0,D.jsx)(w.y,{value:t,capacity:r,formatValues:y.JD}):Q}},{name:F.HOSTS,header:X[F.HOSTS],width:80,defaultOrder:a.ZP.DESCENDING,sortAccessor:e=>{let{cluster:s}=e;return Number(null===s||void 0===s?void 0:s.Hosts)||0},render:e=>{var s;let{row:t}=e;return Number(null===(s=t.cluster)||void 0===s?void 0:s.Hosts)||Q}},{name:F.TENANTS,header:X[F.TENANTS],width:80,defaultOrder:a.ZP.DESCENDING,sortAccessor:e=>{let{cluster:s}=e;return Number(null===s||void 0===s?void 0:s.Tenants)||0},render:e=>{var s;let{row:t}=e;return Number(null===(s=t.cluster)||void 0===s?void 0:s.Tenants)||Q}},{name:F.OWNER,header:X[F.OWNER],sortable:!1,width:120,render:e=>{var s;let{row:t}=e;const r=null===(s=t.owner)||void 0===s?void 0:s.split(", ");return null!==r&&void 0!==r&&r.length?r.map((e=>(0,D.jsx)(Z,{login:e},e))):Q}},{name:F.DESCRIPTION,header:X[F.DESCRIPTION],sortable:!1,width:150,render:e=>{let{row:s}=e;return s.description?(0,D.jsx)("div",{className:z("description"),children:s.description}):Q}},{name:F.BALANCER,header:X[F.BALANCER],sortable:!1,width:290,render:e=>{let{row:s}=e;if(!s.balancer)return Q;const t=(0,H.q)(s.balancer);return(0,D.jsxs)("div",{className:z("balancer-cell"),children:[(0,D.jsx)("div",{className:z("balancer-text"),children:t}),(0,D.jsx)(M.m,{size:"s",text:t,className:z("balancer-icon")})]})}}],$=(e,s,t,r,a)=>{const[l,n]=(0,O.yu)(s,r),o=e.map((e=>e.name));return{columnsToShow:e.filter((e=>l.find((s=>s===e.name)))),columnsToSelect:o.map((e=>{const s=null===a||void 0===a?void 0:a.includes(e);return{id:e,title:t[e],selected:l.includes(e),required:s,sticky:s?"start":void 0}})),setColumns:e=>{const s=e.filter((e=>e.selected)).map((e=>e.id));n(s)}}};function ee(){const[e]=(0,O.Rj)(),s=m.W1.useGetClustersListQuery(void 0,{pollingInterval:e}),t=(0,O.zL)(),h=(0,O.ix)(g),N=(0,O.ix)(p),w=(0,O.ix)(S),y=(0,O.ix)(x),{columnsToShow:A,columnsToSelect:_,setColumns:R}=$(Y,q,X,J,[F.TITLE]),L=s.data,{servicesToSelect:V,versions:U}=r.useMemo((()=>{const e=new Set,s=new Set;return(null!==L&&void 0!==L?L:[]).forEach((t=>{var r,a;t.service&&e.add(t.service),null===(r=t.cluster)||void 0===r||null===(a=r.Versions)||void 0===a||a.forEach((e=>{s.add((0,C.H)(e))}))})),{servicesToSelect:Array.from(e).map((e=>({value:e,content:e}))),versions:Array.from(s).map((e=>({value:e,content:e})))}}),[L]),k=r.useMemo((()=>function(e,s){return e.filter((e=>f(e,s.status)&&E(e,s.service)&&j(e,s.version)&&b(e,s.clusterName)))}(null!==L&&void 0!==L?L:[],{clusterName:h,status:N,service:w,version:y})),[h,L,w,N,y]),M=r.useMemo((()=>function(e){let s=0,t=0,r=0,a=0,l=0,n=0,o=0;const c=new Set;return e.filter((e=>{let{cluster:s}=e;return!(null!==s&&void 0!==s&&s.error)})).forEach((e=>{let{cluster:i,hosts:d={}}=e;s+=(null===i||void 0===i?void 0:i.NodesTotal)||0,t+=(null===i||void 0===i?void 0:i.NodesAlive)||0,Object.keys(d).forEach((e=>c.add(e))),o+=Number(null===i||void 0===i?void 0:i.Tenants)||0,r+=Number(null===i||void 0===i?void 0:i.LoadAverage)||0,a+=(null===i||void 0===i?void 0:i.NumberOfCpus)||0,l+=null!==i&&void 0!==i&&i.StorageUsed?Math.floor(parseInt(i.StorageUsed,10)):0,n+=null!==i&&void 0!==i&&i.StorageTotal?Math.floor(parseInt(i.StorageTotal,10)):0})),{NodesTotal:s,NodesAlive:t,Hosts:c.size,Tenants:o,LoadAverage:r,NumberOfCpus:a,StorageUsed:l,StorageTotal:n}}(k)),[k]),G=r.useMemo((()=>Array.from(new Set((null!==L&&void 0!==L?L:[]).map((e=>e.status)).filter(Boolean))).sort().map((e=>({value:e,content:e})))),[L]);return(0,D.jsxs)("div",{className:z(),children:[(0,D.jsx)(o.ql,{children:(0,D.jsx)("title",{children:I("page_title")})}),(0,D.jsx)(P,{stats:M,count:k.length}),(0,D.jsxs)("div",{className:z("controls"),children:[(0,D.jsx)("div",{className:z("control",{wide:!0}),children:(0,D.jsx)(v.o,{placeholder:I("controls_search-placeholder"),onChange:e=>{t((0,m.g_)({clusterName:e}))},value:h})}),(0,D.jsx)("div",{className:z("control"),children:(0,D.jsx)(l.P,{multiple:!0,filterable:!0,hasClear:!0,placeholder:I("controls_select-placeholder"),label:I("controls_status-select-label"),value:N,options:G,onUpdate:e=>{t((0,m.g_)({status:e}))},width:"max"})}),(0,D.jsx)("div",{className:z("control"),children:(0,D.jsx)(l.P,{multiple:!0,filterable:!0,hasClear:!0,placeholder:I("controls_select-placeholder"),label:I("controls_service-select-label"),value:w,options:V,onUpdate:e=>{t((0,m.g_)({service:e}))},width:"max"})}),(0,D.jsx)("div",{className:z("control"),children:(0,D.jsx)(l.P,{multiple:!0,filterable:!0,hasClear:!0,placeholder:I("controls_select-placeholder"),label:I("controls_version-select-label"),value:y,options:U,onUpdate:e=>{t((0,m.g_)({version:e}))},width:"max"})}),(0,D.jsx)("div",{className:z("control"),children:(0,D.jsx)(n.N,{popupWidth:242,items:_,showStatus:!0,onUpdate:R,sortable:!1},"TableColumnSetup")}),(0,D.jsx)(c.q,{})]}),s.isError?(0,D.jsx)(i.V,{error:s.error,className:z("error")}):null,s.isLoading?(0,D.jsx)(d.a,{size:"l"}):null,s.fulfilledTimeStamp?(0,D.jsx)("div",{className:z("table-wrapper"),children:(0,D.jsx)("div",{className:z("table-content"),children:(0,D.jsx)(u.G,{columnsWidthLSKey:K,wrapperClassName:z("table"),data:k,columns:A,settings:{...T.LE,dynamicRender:!1},initialSortOrder:{columnId:F.TITLE,order:a.ZP.ASCENDING}})})}):null]})}},89712:(e,s,t)=>{t.d(s,{M:()=>n});var r=t(68963),a=t(2639),l=t(18193);const n=e=>{const s=r.useCallback((()=>e?l.r.readUserSettingsValue(e,{}):{}),[e]),t=r.useCallback((s=>{e&&l.r.setUserSettingsValue(e,s)}),[e]);return(0,a.M)({saveSizes:t,getSizes:s})}},84893:(e,s,t)=>{t.d(s,{E:()=>u});var r=t(68963);const a=(0,t(36951).Ge)("progress");function l(e){const{text:s,offset:t=0}=e;return s?r.createElement("div",{className:a("text-inner"),style:{transform:"translateX(calc(var(--g-flow-direction) * ".concat(-t,"%))")}},s):null}function n(e){let{item:s}=e;const{value:t,color:l,className:n,theme:o,title:c,content:i,loading:d}=s,u={loading:d};return"undefined"===typeof l&&(u.theme=o||"default"),Number.isFinite(t)?r.createElement("div",{className:a("item",u,n),style:{width:"".concat(t,"%"),backgroundColor:l},title:c},i):null}function o(e){return e<100?e-100:0}function c(e){const{theme:s,colorStops:t,colorStopsValue:r,value:a}=e;if(t){const e=t.find(((e,s)=>{const l="number"===typeof r?r:a,n=s>1?t[s-1].stop:0,o=s=n&&l<=o}));return e?e.theme:s}return s}function i(e){const{stack:s,stackClassName:t,value:c,text:i}=e,d=o(c||function(e){return e.reduce(((e,s)=>{let{value:t}=s;return e+t}),0)}(s));return r.createElement("div",{className:a("stack",t),style:{transform:"translateX(calc(var(--g-flow-direction) * ".concat(d,"%))")}},r.createElement("div",{className:a("item"),style:{width:"".concat(-d,"%")}}),s.map(((e,s)=>r.createElement(n,{key:s,item:e}))),r.createElement(l,{offset:d,text:i}))}function d(e){const{value:s,loading:t,text:n}=e,i=o(s);return Number.isFinite(s)?r.createElement("div",{className:a("item",{theme:c(e),loading:t}),style:{transform:"translateX(calc(var(--g-flow-direction) * ".concat(i,"%))")}},r.createElement(l,{offset:i,text:n})):null}const u=r.forwardRef((function(e,s){const{text:t="",theme:l="default",size:n="m",loading:o=!1,className:c,qa:u}=e,v=Object.assign(Object.assign({},e),{text:t,theme:l,size:n,loading:o});return r.createElement("div",{ref:s,className:a({size:n},c),"data-qa":u},r.createElement("div",{className:a("text")},t),function(e){return void 0!==e.stack}(v)?r.createElement(i,Object.assign({},v)):r.createElement(d,Object.assign({},v)))}))}}]); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/main.62a60ecb.js b/ydb/core/viewer/monitoring/static/js/main.62a60ecb.js deleted file mode 100644 index 31e7683bbe77..000000000000 --- a/ydb/core/viewer/monitoring/static/js/main.62a60ecb.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see main.62a60ecb.js.LICENSE.txt */ -(()=>{var e={81003:(e,t,n)=>{"use strict";n.d(t,{B7:()=>s,V2:()=>a,_Y:()=>o,xu:()=>i});var r=n(54665);const i={overview:"overview",tenants:"tenants",nodes:"nodes",storage:"storage",versions:"versions"},o=[{id:i.overview,title:"Overview"},{id:i.tenants,title:"Databases"},{id:i.nodes,title:"Nodes"},{id:i.storage,title:"Storage"},{id:i.versions,title:"Versions"}];function a(e){return Object.values(i).includes(e)}const s=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(0,r.ax)(r.ZP.cluster,e?{activeTab:e}:void 0,t)}},6523:(e,t,n)=>{"use strict";n.d(t,{$J:()=>k,Jp:()=>y,Sb:()=>T,St:()=>_,TV:()=>h,d:()=>u,dC:()=>g,dw:()=>x,fd:()=>N,lZ:()=>s,uL:()=>O,vp:()=>f,zf:()=>w});var r=n(35638),i=n(9416);const o={[r.mR.EPathSubTypeSyncIndexImplTable]:"index_table",[r.mR.EPathSubTypeAsyncIndexImplTable]:"index_table",[r.mR.EPathSubTypeStreamImpl]:void 0,[r.mR.EPathSubTypeEmpty]:void 0},a={[r.gb.EPathTypeInvalid]:void 0,[r.gb.EPathTypeSubDomain]:"database",[r.gb.EPathTypeExtSubDomain]:"database",[r.gb.EPathTypeDir]:"directory",[r.gb.EPathTypeColumnStore]:"directory",[r.gb.EPathTypeTable]:"table",[r.gb.EPathTypeTableIndex]:"index",[r.gb.EPathTypeColumnTable]:"column_table",[r.gb.EPathTypeCdcStream]:"stream",[r.gb.EPathTypePersQueueGroup]:"topic",[r.gb.EPathTypeExternalDataSource]:"external_data_source",[r.gb.EPathTypeExternalTable]:"external_table",[r.gb.EPathTypeView]:"view",[r.gb.EPathTypeReplication]:"async_replication"},s=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r.gb.EPathTypeDir,t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"directory";return t&&o[t]||a[e]||n},l={[r.mR.EPathSubTypeSyncIndexImplTable]:"Secondary Index Table",[r.mR.EPathSubTypeAsyncIndexImplTable]:"Secondary Index Table",[r.mR.EPathSubTypeStreamImpl]:void 0,[r.mR.EPathSubTypeEmpty]:void 0},c={[r.gb.EPathTypeInvalid]:void 0,[r.gb.EPathTypeSubDomain]:"Database",[r.gb.EPathTypeExtSubDomain]:"Database",[r.gb.EPathTypeDir]:"Directory",[r.gb.EPathTypeTable]:"Table",[r.gb.EPathTypeTableIndex]:"Secondary Index",[r.gb.EPathTypeColumnStore]:"Tablestore",[r.gb.EPathTypeColumnTable]:"Columntable",[r.gb.EPathTypeCdcStream]:"Changefeed",[r.gb.EPathTypePersQueueGroup]:"Topic",[r.gb.EPathTypeExternalDataSource]:"External Data Source",[r.gb.EPathTypeExternalTable]:"External Table",[r.gb.EPathTypeView]:"View",[r.gb.EPathTypeReplication]:"Async Replication"},u=(e,t)=>t&&l[t]||e&&c[e],d={[i.Hi.UnknownTenantType]:"Database",[i.Hi.Domain]:"Cluster Root",[i.Hi.Dedicated]:"Dedicated Database",[i.Hi.Shared]:"Shared Database",[i.Hi.Serverless]:"Serverless Database"},h=e=>e&&d[e],p={[r.gb.EPathTypeTable]:!0,[r.gb.EPathTypeColumnTable]:!0,[r.gb.EPathTypeExternalTable]:!0,[r.gb.EPathTypeView]:!0,[r.gb.EPathTypeInvalid]:!1,[r.gb.EPathTypeDir]:!1,[r.gb.EPathTypeSubDomain]:!1,[r.gb.EPathTypeTableIndex]:!1,[r.gb.EPathTypeExtSubDomain]:!1,[r.gb.EPathTypeColumnStore]:!1,[r.gb.EPathTypeCdcStream]:!1,[r.gb.EPathTypePersQueueGroup]:!1,[r.gb.EPathTypeExternalDataSource]:!1,[r.gb.EPathTypeReplication]:!1},f=e=>{var t;return null!==(t=e&&p[e])&&void 0!==t&&t},m={[r.mR.EPathSubTypeSyncIndexImplTable]:!0,[r.mR.EPathSubTypeAsyncIndexImplTable]:!0,[r.mR.EPathSubTypeStreamImpl]:!1,[r.mR.EPathSubTypeEmpty]:!1},g=e=>{var t;return null!==(t=e&&m[e])&&void 0!==t&&t},v={[r.gb.EPathTypeColumnStore]:!0,[r.gb.EPathTypeColumnTable]:!0,[r.gb.EPathTypeInvalid]:!1,[r.gb.EPathTypeDir]:!1,[r.gb.EPathTypeTable]:!1,[r.gb.EPathTypeSubDomain]:!1,[r.gb.EPathTypeTableIndex]:!1,[r.gb.EPathTypeExtSubDomain]:!1,[r.gb.EPathTypeCdcStream]:!1,[r.gb.EPathTypePersQueueGroup]:!1,[r.gb.EPathTypeExternalDataSource]:!1,[r.gb.EPathTypeExternalTable]:!1,[r.gb.EPathTypeView]:!1,[r.gb.EPathTypeReplication]:!1},y=e=>{var t;return null!==(t=e&&v[e])&&void 0!==t&&t},b={[r.gb.EPathTypeSubDomain]:!0,[r.gb.EPathTypeExtSubDomain]:!0,[r.gb.EPathTypeInvalid]:!1,[r.gb.EPathTypeDir]:!1,[r.gb.EPathTypeColumnStore]:!1,[r.gb.EPathTypeColumnTable]:!1,[r.gb.EPathTypeTable]:!1,[r.gb.EPathTypeTableIndex]:!1,[r.gb.EPathTypeCdcStream]:!1,[r.gb.EPathTypePersQueueGroup]:!1,[r.gb.EPathTypeExternalDataSource]:!1,[r.gb.EPathTypeExternalTable]:!1,[r.gb.EPathTypeView]:!1,[r.gb.EPathTypeReplication]:!1},x=e=>{var t;return null!==(t=e&&b[e])&&void 0!==t&&t},w=e=>e===r.gb.EPathTypeCdcStream,S={[r.gb.EPathTypeCdcStream]:!0,[r.gb.EPathTypePersQueueGroup]:!1,[r.gb.EPathTypeInvalid]:!1,[r.gb.EPathTypeColumnStore]:!1,[r.gb.EPathTypeColumnTable]:!1,[r.gb.EPathTypeDir]:!1,[r.gb.EPathTypeTable]:!1,[r.gb.EPathTypeSubDomain]:!1,[r.gb.EPathTypeTableIndex]:!1,[r.gb.EPathTypeExtSubDomain]:!1,[r.gb.EPathTypeExternalDataSource]:!1,[r.gb.EPathTypeExternalTable]:!1,[r.gb.EPathTypeView]:!1,[r.gb.EPathTypeReplication]:!1},_=e=>{var t;return null!==(t=e&&S[e])&&void 0!==t&&t},C={[r.mR.EPathSubTypeSyncIndexImplTable]:!0,[r.mR.EPathSubTypeAsyncIndexImplTable]:!0,[r.mR.EPathSubTypeStreamImpl]:!1,[r.mR.EPathSubTypeEmpty]:!1},E={[r.gb.EPathTypeCdcStream]:!0,[r.gb.EPathTypePersQueueGroup]:!0,[r.gb.EPathTypeExternalDataSource]:!0,[r.gb.EPathTypeExternalTable]:!0,[r.gb.EPathTypeView]:!0,[r.gb.EPathTypeReplication]:!0,[r.gb.EPathTypeInvalid]:!1,[r.gb.EPathTypeColumnStore]:!1,[r.gb.EPathTypeColumnTable]:!1,[r.gb.EPathTypeDir]:!1,[r.gb.EPathTypeTable]:!1,[r.gb.EPathTypeSubDomain]:!1,[r.gb.EPathTypeTableIndex]:!1,[r.gb.EPathTypeExtSubDomain]:!1},T=(e,t)=>{var n;return null!==(n=t&&C[t]||e&&E[e])&&void 0!==n&&n},O=(r.gb.EPathTypeCdcStream,r.gb.EPathTypePersQueueGroup,r.gb.EPathTypeInvalid,r.gb.EPathTypeColumnStore,r.gb.EPathTypeColumnTable,r.gb.EPathTypeDir,r.gb.EPathTypeTable,r.gb.EPathTypeSubDomain,r.gb.EPathTypeTableIndex,r.gb.EPathTypeExtSubDomain,r.gb.EPathTypeExternalDataSource,r.gb.EPathTypeExternalTable,r.gb.EPathTypeView,r.gb.EPathTypeReplication,e=>e===r.gb.EPathTypeExternalTable),N=e=>e===r.gb.EPathTypeTable,k=e=>e===r.gb.EPathTypeView},36084:(e,t,n)=>{"use strict";n.r(t),n.d(t,{ASIDE_HEADER_COMPACT_KEY:()=>Lo.Ac,AUTOCOMPLETE_ON_ENTER:()=>Lo.XX,AUTO_REFRESH_INTERVAL:()=>Lo.KU,AUTO_RELOAD_INTERVAL:()=>Lo.t_,AppSlots:()=>r,BINARY_DATA_IN_PLAIN_TEXT_DISPLAY:()=>Lo.N1,CLUSTER_DEFAULT_TITLE:()=>Lo.DO,COLORS_PRIORITY:()=>Lo.sl,DATA_QA_TUNE_COLUMNS_POPUP:()=>Lo.KS,DAY_IN_SECONDS:()=>Lo.ii,DEFAULT_CLUSTER_TAB_KEY:()=>Lo.S7,DEFAULT_IS_QUERY_RESULT_COLLAPSED:()=>Lo.eG,DEFAULT_IS_TENANT_COMMON_INFO_COLLAPSED:()=>Lo.Mn,DEFAULT_IS_TENANT_SUMMARY_COLLAPSED:()=>Lo.sO,DEFAULT_POLLING_INTERVAL:()=>Lo.ME,DEFAULT_SIZE_RESULT_PANE_KEY:()=>Lo.XN,DEFAULT_SIZE_TENANT_KEY:()=>Lo.z4,DEFAULT_SIZE_TENANT_SUMMARY_KEY:()=>Lo.wr,DEFAULT_TABLE_SETTINGS:()=>Lo.LE,DEVELOPER_UI_TITLE:()=>Lo.Ah,EMPTY_DATA_PLACEHOLDER:()=>Lo.jX,ENABLE_AUTOCOMPLETE:()=>Lo.y6,ErrorBoundary:()=>Xe,ErrorBoundaryFallback:()=>$e,GIGABYTE:()=>Lo.GS,HOUR_IN_SECONDS:()=>Lo.RQ,INVERTED_DISKS_KEY:()=>Lo.yT,IS_HOTKEYS_HELP_HIDDDEN_KEY:()=>Lo.JZ,KILOBYTE:()=>Lo.h0,LANGUAGE_KEY:()=>Lo.Px,LAST_USED_QUERY_ACTION_KEY:()=>Lo.w7,LOAD_AVERAGE_TIME_INTERVALS:()=>Lo.x5,Lang:()=>We.Uo,MEGABYTE:()=>Lo.nQ,MINUTE_IN_SECONDS:()=>Lo.sU,MS_IN_NANOSECONDS:()=>Lo.yD,MultiClusterApp:()=>aq,PARTITIONS_HIDDEN_COLUMNS_KEY:()=>Lo.ZY,QUERIES_HISTORY_KEY:()=>Lo.if,QUERY_INITIAL_MODE_KEY:()=>Lo.Wm,QUERY_USE_MULTI_SCHEMA_KEY:()=>Lo.Rq,SAVED_QUERIES_KEY:()=>Lo.DG,SingleClusterApp:()=>PW,TABLET_COLORS:()=>Lo.HN,TABLET_SYMBOLS:()=>Lo.tV,TENANT_DEFAULT_TITLE:()=>Lo.FU,TENANT_INITIAL_PAGE_KEY:()=>Lo.pf,TENANT_OVERVIEW_TABLES_LIMIT:()=>Lo.fl,TENANT_OVERVIEW_TABLES_SETTINGS:()=>Lo.E6,TERABYTE:()=>Lo.Bp,THEME_KEY:()=>Lo.bw,USE_BACKEND_PARAMS_FOR_TABLES_KEY:()=>Lo.ET,USE_CLUSTER_BALANCER_AS_BACKEND_KEY:()=>Lo.IG,USE_NODES_ENDPOINT_IN_DIAGNOSTICS_KEY:()=>Lo.UF,YdbEmbeddedAPI:()=>sq.su,YdbWebVersionAPI:()=>sq.Iy,appRoutes:()=>Ta.ZP,cn:()=>Me,componentsRegistry:()=>kW,configureStore:()=>h_.xC,createApi:()=>sq.LC,getMonitoringClusterLink:()=>MW,getMonitoringLink:()=>RW,getTabletLabel:()=>Lo.qV,i18n:()=>We.ag,reportWebVitals:()=>cq.Z,rootReducer:()=>h_.QW,setUserSettings:()=>Ro.m9,settingsManager:()=>Vc.r,toaster:()=>lq.m,useSetting:()=>Mo,useTypedSelector:()=>Do,userSettings:()=>Xa});var r={};n.r(r),n.d(r,{ClusterSlot:()=>qH,ClustersSlot:()=>WH,NodeSlot:()=>YH,PDiskPageSlot:()=>KH,RedirectSlot:()=>eV,RoutesSlot:()=>JH,TabletSlot:()=>XH,TabletsFiltersSlot:()=>$H,TenantSlot:()=>ZH,VDiskPageSlot:()=>QH});var i,o,a=n(68963),s=n(64572),l=n(77808),c=n.n(l),u=n(32733),d=n.n(u),h=n(69612),p=n.n(h),f=(e=>(e.BASE="base",e.BODY="body",e.HEAD="head",e.HTML="html",e.LINK="link",e.META="meta",e.NOSCRIPT="noscript",e.SCRIPT="script",e.STYLE="style",e.TITLE="title",e.FRAGMENT="Symbol(react.fragment)",e))(f||{}),m={rel:["amphtml","canonical","alternate"]},g={type:["application/ld+json"]},v={charset:"",name:["generator","robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]},y=Object.values(f),b={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},x=Object.entries(b).reduce(((e,t)=>{let[n,r]=t;return e[r]=n,e}),{}),w="data-rh",S="defaultTitle",_="defer",C="encodeSpecialCharacters",E="onChangeClientState",T="titleTemplate",O="prioritizeSeoTags",N=(e,t)=>{for(let n=e.length-1;n>=0;n-=1){const r=e[n];if(Object.prototype.hasOwnProperty.call(r,t))return r[t]}return null},k=e=>{let t=N(e,"title");const n=N(e,T);if(Array.isArray(t)&&(t=t.join("")),n&&t)return n.replace(/%s/g,(()=>t));const r=N(e,S);return t||r||void 0},j=e=>N(e,E)||(()=>{}),I=(e,t)=>t.filter((t=>"undefined"!==typeof t[e])).map((t=>t[e])).reduce(((e,t)=>({...e,...t})),{}),P=(e,t)=>t.filter((e=>"undefined"!==typeof e.base)).map((e=>e.base)).reverse().reduce(((t,n)=>{if(!t.length){const r=Object.keys(n);for(let i=0;i{const r={};return n.filter((t=>{return!!Array.isArray(t[e])||("undefined"!==typeof t[e]&&(n="Helmet: ".concat(e,' should be of type "Array". Instead found type "').concat(typeof t[e],'"'),console&&"function"===typeof console.warn&&console.warn(n)),!1);var n})).map((t=>t[e])).reverse().reduce(((e,n)=>{const i={};n.filter((e=>{let n;const o=Object.keys(e);for(let r=0;re.push(t)));const o=Object.keys(i);for(let t=0;t{if(Array.isArray(e)&&e.length)for(let n=0;nArray.isArray(e)?e.join(""):e,M=(e,t)=>Array.isArray(e)?e.reduce(((e,n)=>(((e,t)=>{const n=Object.keys(e);for(let r=0;r({...e,[t]:void 0}),F=["noscript","script","style"],z=function(e){return!1===(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])?String(e):String(e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},B=e=>Object.keys(e).reduce(((t,n)=>{const r="undefined"!==typeof e[n]?"".concat(n,'="').concat(e[n],'"'):"".concat(n);return t?"".concat(t," ").concat(r):r}),""),U=(e,t,n,r)=>{const i=B(n),o=R(t);return i?"<".concat(e," ").concat(w,'="true" ').concat(i,">").concat(z(o,r),""):"<".concat(e," ").concat(w,'="true">').concat(z(o,r),"")},H=function(e,t){let n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return t.reduce(((t,r)=>{const i=r,o=Object.keys(i).filter((e=>!("innerHTML"===e||"cssText"===e))).reduce(((e,t)=>{const r="undefined"===typeof i[t]?t:"".concat(t,'="').concat(z(i[t],n),'"');return e?"".concat(e," ").concat(r):r}),""),a=i.innerHTML||i.cssText||"",s=-1===F.indexOf(e);return"".concat(t,"<").concat(e," ").concat(w,'="true" ').concat(o).concat(s?"/>":">".concat(a,""))}),"")},V=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(e).reduce(((t,n)=>(t[b[n]||n]=e[n],t)),t)},G=(e,t,n)=>{const r=V(n,{key:t,[w]:!0});return[a.createElement("title",r,t)]},W=(e,t)=>t.map(((t,n)=>{const r={key:n,[w]:!0};return Object.keys(t).forEach((e=>{const n=b[e]||e;if("innerHTML"===n||"cssText"===n){const e=t.innerHTML||t.cssText;r.dangerouslySetInnerHTML={__html:e}}else r[n]=t[e]})),a.createElement(e,r)})),q=function(e,t){let n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];switch(e){case"title":return{toComponent:()=>G(e,t.title,t.titleAttributes),toString:()=>U(e,t.title,t.titleAttributes,n)};case"bodyAttributes":case"htmlAttributes":return{toComponent:()=>V(t),toString:()=>B(t)};default:return{toComponent:()=>W(e,t),toString:()=>H(e,t,n)}}},Z=e=>{const{baseTag:t,bodyAttributes:n,encode:r=!0,htmlAttributes:i,noscriptTags:o,styleTags:a,title:s="",titleAttributes:l,prioritizeSeoTags:c}=e;let{linkTags:u,metaTags:d,scriptTags:h}=e,p={toComponent:()=>{},toString:()=>""};return c&&({priorityMethods:p,linkTags:u,metaTags:d,scriptTags:h}=(e=>{let{metaTags:t,linkTags:n,scriptTags:r,encode:i}=e;const o=M(t,v),a=M(n,m),s=M(r,g);return{priorityMethods:{toComponent:()=>[...W("meta",o.priority),...W("link",a.priority),...W("script",s.priority)],toString:()=>"".concat(q("meta",o.priority,i)," ").concat(q("link",a.priority,i)," ").concat(q("script",s.priority,i))},metaTags:o.default,linkTags:a.default,scriptTags:s.default}})(e)),{priority:p,base:q("base",t,r),bodyAttributes:q("bodyAttributes",n,r),htmlAttributes:q("htmlAttributes",i,r),link:q("link",u,r),meta:q("meta",d,r),noscript:q("noscript",o,r),script:q("script",h,r),style:q("style",a,r),title:q("title",{title:s,titleAttributes:l},r)}},Y=[],K=!("undefined"===typeof window||!window.document||!window.document.createElement),Q=class{constructor(e,t){(0,s.Z)(this,"instances",[]),(0,s.Z)(this,"canUseDOM",K),(0,s.Z)(this,"context",void 0),(0,s.Z)(this,"value",{setHelmet:e=>{this.context.helmet=e},helmetInstances:{get:()=>this.canUseDOM?Y:this.instances,add:e=>{(this.canUseDOM?Y:this.instances).push(e)},remove:e=>{const t=(this.canUseDOM?Y:this.instances).indexOf(e);(this.canUseDOM?Y:this.instances).splice(t,1)}}}),this.context=e,this.canUseDOM=t||!1,t||(e.helmet=Z({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))}},X=a.createContext({}),$=(i=class e extends a.Component{constructor(t){super(t),(0,s.Z)(this,"helmetData",void 0),this.helmetData=new Q(this.props.context||{},e.canUseDOM)}render(){return a.createElement(X.Provider,{value:this.helmetData.value},this.props.children)}},(0,s.Z)(i,"canUseDOM",K),i),J=(e,t)=>{const n=document.head||document.querySelector("head"),r=n.querySelectorAll("".concat(e,"[").concat(w,"]")),i=[].slice.call(r),o=[];let a;return t&&t.length&&t.forEach((t=>{const n=document.createElement(e);for(const e in t)if(Object.prototype.hasOwnProperty.call(t,e))if("innerHTML"===e)n.innerHTML=t.innerHTML;else if("cssText"===e)n.styleSheet?n.styleSheet.cssText=t.cssText:n.appendChild(document.createTextNode(t.cssText));else{const r=e,i="undefined"===typeof t[r]?"":t[r];n.setAttribute(e,i)}n.setAttribute(w,"true"),i.some(((e,t)=>(a=t,n.isEqualNode(e))))?i.splice(a,1):o.push(n)})),i.forEach((e=>{var t;return null===(t=e.parentNode)||void 0===t?void 0:t.removeChild(e)})),o.forEach((e=>n.appendChild(e))),{oldTags:i,newTags:o}},ee=(e,t)=>{const n=document.getElementsByTagName(e)[0];if(!n)return;const r=n.getAttribute(w),i=r?r.split(","):[],o=[...i],a=Object.keys(t);for(const s of a){const e=t[s]||"";n.getAttribute(s)!==e&&n.setAttribute(s,e),-1===i.indexOf(s)&&i.push(s);const r=o.indexOf(s);-1!==r&&o.splice(r,1)}for(let s=o.length-1;s>=0;s-=1)n.removeAttribute(o[s]);i.length===o.length?n.removeAttribute(w):n.getAttribute(w)!==a.join(",")&&n.setAttribute(w,a.join(","))},te=(e,t)=>{const{baseTag:n,bodyAttributes:r,htmlAttributes:i,linkTags:o,metaTags:a,noscriptTags:s,onChangeClientState:l,scriptTags:c,styleTags:u,title:d,titleAttributes:h}=e;ee("body",r),ee("html",i),((e,t)=>{"undefined"!==typeof e&&document.title!==e&&(document.title=R(e)),ee("title",t)})(d,h);const p={baseTag:J("base",n),linkTags:J("link",o),metaTags:J("meta",a),noscriptTags:J("noscript",s),scriptTags:J("script",c),styleTags:J("style",u)},f={},m={};Object.keys(p).forEach((e=>{const{newTags:t,oldTags:n}=p[e];t.length&&(f[e]=t),n.length&&(m[e]=p[e].oldTags)})),t&&t(),l(e,f,m)},ne=null,re=e=>{ne&&cancelAnimationFrame(ne),e.defer?ne=requestAnimationFrame((()=>{te(e,(()=>{ne=null}))})):(te(e),ne=null)},ie=class extends a.Component{constructor(){super(...arguments),(0,s.Z)(this,"rendered",!1)}shouldComponentUpdate(e){return!p()(e,this.props)}componentDidUpdate(){this.emitChange()}componentWillUnmount(){const{helmetInstances:e}=this.props.context;e.remove(this),this.emitChange()}emitChange(){const{helmetInstances:e,setHelmet:t}=this.props.context;let n=null;const r=(i=e.get().map((e=>{const t={...e.props};return delete t.context,t})),{baseTag:P(["href"],i),bodyAttributes:I("bodyAttributes",i),defer:N(i,_),encode:N(i,C),htmlAttributes:I("htmlAttributes",i),linkTags:D("link",["rel","href"],i),metaTags:D("meta",["name","charset","http-equiv","property","itemprop"],i),noscriptTags:D("noscript",["innerHTML"],i),onChangeClientState:j(i),scriptTags:D("script",["src","innerHTML"],i),styleTags:D("style",["cssText"],i),title:k(i),titleAttributes:I("titleAttributes",i),prioritizeSeoTags:A(i,O)});var i;$.canUseDOM?re(r):Z&&(n=Z(r)),t(n)}init(){if(this.rendered)return;this.rendered=!0;const{helmetInstances:e}=this.props.context;e.add(this),this.emitChange()}render(){return this.init(),null}},oe=(o=class extends a.Component{shouldComponentUpdate(e){return!c()(L(this.props,"helmetData"),L(e,"helmetData"))}mapNestedChildrenToProps(e,t){if(!t)return null;switch(e.type){case"script":case"noscript":return{innerHTML:t};case"style":return{cssText:t};default:throw new Error("<".concat(e.type," /> elements are self-closing and can not contain children. Refer to our API for more information."))}}flattenArrayTypeChildren(e,t,n,r){return{...t,[e.type]:[...t[e.type]||[],{...n,...this.mapNestedChildrenToProps(e,r)}]}}mapObjectTypeChildren(e,t,n,r){switch(e.type){case"title":return{...t,[e.type]:r,titleAttributes:{...n}};case"body":return{...t,bodyAttributes:{...n}};case"html":return{...t,htmlAttributes:{...n}};default:return{...t,[e.type]:{...n}}}}mapArrayTypeChildrenToProps(e,t){let n={...t};return Object.keys(e).forEach((t=>{n={...n,[t]:e[t]}})),n}warnOnInvalidChildren(e,t){return d()(y.some((t=>e.type===t)),"function"===typeof e.type?"You may be attempting to nest components within each other, which is not allowed. Refer to our API for more information.":"Only elements types ".concat(y.join(", ")," are allowed. Helmet does not support rendering <").concat(e.type,"> elements. Refer to our API for more information.")),d()(!t||"string"===typeof t||Array.isArray(t)&&!t.some((e=>"string"!==typeof e)),"Helmet expects a string as a child of <".concat(e.type,">. Did you forget to wrap your children in braces? ( <").concat(e.type,">{``} ) Refer to our API for more information.")),!0}mapChildrenToProps(e,t){let n={};return a.Children.forEach(e,(e=>{if(!e||!e.props)return;const{children:r,...i}=e.props,o=Object.keys(i).reduce(((e,t)=>(e[x[t]||t]=i[t],e)),{});let{type:a}=e;switch("symbol"===typeof a?a=a.toString():this.warnOnInvalidChildren(e,r),a){case"Symbol(react.fragment)":t=this.mapChildrenToProps(r,t);break;case"link":case"meta":case"noscript":case"script":case"style":n=this.flattenArrayTypeChildren(e,n,o,r);break;default:t=this.mapObjectTypeChildren(e,t,o,r)}})),this.mapArrayTypeChildrenToProps(n,t)}render(){const{children:e,...t}=this.props;let n={...t},{helmetData:r}=t;if(e&&(n=this.mapChildrenToProps(e,n)),r&&!(r instanceof Q)){r=new Q(r.context,!0),delete n.helmetData}return r?a.createElement(ie,{...n,context:r.value}):a.createElement(X.Consumer,null,(e=>a.createElement(ie,{...n,context:e})))}},(0,s.Z)(o,"defaultProps",{defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1}),o),ae=n(87555),se=n(70292),le=n(36951),ce=n(99742);const ue="function"===typeof a.useId?function(){return"".concat(le.A7).concat(a.useId())}:function(){const e=a.useRef();return void 0===e.current&&(e.current=(0,ce.x)()),e.current},de=a.createContext(void 0),he=a.createContext(void 0);function pe(e){const{size:t,disabled:n,defaultExpanded:r,arrowPosition:i,summary:o,keepMounted:s,onUpdate:l,expanded:c}=e,[u,d]=a.useState((()=>Boolean(r))),h=void 0!==c,p=ue(),f="disclosure".concat(p);return a.createElement(de.Provider,{value:{size:t,disabled:n,summary:o,arrowPosition:i,keepMounted:s,expanded:h?c:u,ariaControls:p,ariaLabelledby:f}},a.createElement(he.Provider,{value:()=>{d((e=>!e));l(h?!c:!u)}},e.children))}function fe(){const e=a.useContext(de);if(void 0===e)throw new Error("useDisclosureAttributes must be used within DisclosureProvider");return e}var me=n(62685),ge=n(31445);const ve=(0,le.Ge)("disclosure"),ye={SUMMARY:"disclosure-summary",DETAILS:"disclosure-details"};function be(e){let{children:t}=e;const n=a.useRef(null),{ariaControls:r,ariaLabelledby:i,keepMounted:o,expanded:s}=fe();return a.createElement(me.Z,{nodeRef:n,in:s,addEndListener:e=>{var t;return null===(t=n.current)||void 0===t?void 0:t.addEventListener("animationend",e)},classNames:(0,ge.Y)(ve),mountOnEnter:!o,unmountOnExit:!o,appear:!0},a.createElement("div",{ref:n,id:r,role:"region","aria-labelledby":i,className:ve("content",{visible:s}),"data-qa":ye.DETAILS},t))}be.displayName="DisclosureDetails";const xe=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M2.97 5.47a.75.75 0 0 1 1.06 0L8 9.44l3.97-3.97a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 0 1-1.06 0l-4.5-4.5a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"}));var we=n(88776);const Se=(0,le.Ge)("arrow-toggle");function _e(e){let{size:t=16,direction:n="bottom",className:r,qa:i}=e;return a.createElement("span",{style:{width:t,height:t},className:Se({direction:n},r),"data-qa":i},a.createElement(we.J,{data:xe,size:t}))}var Ce=n(12913);const Ee={m:14,l:16,xl:20};function Te(){(0,Ce.O)('[Disclosure] Physical values (left, right) of "arrowPosition" property are deprecated. Use logical values (start, end) instead.')}function Oe(e){let{children:t}=e;const n=function(){const e=a.useContext(he);if(void 0===e)throw new Error("useToggleDisclosure must be used within DisclosureProvider");return e}(),{ariaControls:r,ariaLabelledby:i,expanded:o,disabled:s}=fe(),l={onClick:n,ariaControls:r,id:i,expanded:o,disabled:s};return t(l,a.createElement(Ne,Object.assign({},l)))}function Ne(e){let{onClick:t,ariaControls:n,id:r,expanded:i,disabled:o}=e;const{size:s,summary:l,arrowPosition:c}=fe();let u=c;return"left"===u&&(Te(),u="start"),"right"===u&&(Te(),u="end"),a.createElement("button",{type:"button","aria-expanded":i,className:ve("trigger",{disabled:o,arrow:u}),"aria-controls":n,id:r,onClick:t,disabled:o,"data-qa":ye.SUMMARY},a.createElement(_e,{size:Ee[s],direction:i?"top":"bottom"}),l)}Oe.displayName="DisclosureSummary";const ke=(0,se.s)(Oe),je=a.forwardRef((function(e,t){const{size:n="m",disabled:r=!1,defaultExpanded:i=!1,arrowPosition:o="start",summary:s="",className:l,keepMounted:c=!0,children:u,onUpdate:d=(()=>{}),expanded:h,qa:p}=e,[f,m]=function(e){const t=a.Children.toArray(e);let n,r;const i=[];for(const o of t){if(ke(o)){if(n)throw new Error("Only one component is allowed");n=o}else i.push(o)}i.length>0&&(r=a.createElement(be,null,i));n||(n=a.createElement(Oe,null,(e=>a.createElement(Ne,Object.assign({},e)))));return[n,r]}(u);return a.createElement(pe,{disabled:r,defaultExpanded:i,expanded:h,keepMounted:c,size:n,summary:s,arrowPosition:o,onUpdate:d},a.createElement("section",{ref:t,className:ve({size:n},l),"data-qa":p},f,m))}));je.Summary=Oe,je.displayName="Disclosure";var Ie=n(17176);const Pe=(0,a.createContext)(null),De={didCatch:!1,error:null};class Ae extends a.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=De}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){const{error:e}=this.state;if(null!==e){for(var t,n,r=arguments.length,i=new Array(r),o=0;o0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e.length!==t.length||e.some(((e,n)=>!Object.is(e,t[n])))}(e.resetKeys,r)&&(null===(i=(o=this.props).onReset)||void 0===i||i.call(o,{next:r,prev:e.resetKeys,reason:"keys"}),this.setState(De))}render(){const{children:e,fallbackRender:t,FallbackComponent:n,fallback:r}=this.props,{didCatch:i,error:o}=this.state;let s=e;if(i){const e={error:o,resetErrorBoundary:this.resetErrorBoundary};if("function"===typeof t)s=t(e);else if(n)s=(0,a.createElement)(n,e);else{if(null!==r&&!(0,a.isValidElement)(r))throw o;s=r}}return(0,a.createElement)(Pe.Provider,{value:{didCatch:i,error:o,resetErrorBoundary:this.resetErrorBoundary}},s)}}var Re=n(5247);const Me=(0,Re.withNaming)({e:"__",m:"_"});var Le=n(75859);const Fe=a.createContext(void 0);function ze(e){let{children:t,registry:n}=e;return(0,Le.jsx)(Fe.Provider,{value:n,children:t})}function Be(e){const t=a.useContext(Fe);if(void 0===t)throw new Error("useComponent must be used within ComponentsProvider");return t.get(e)}var Ue=n(64270);const He={light:{403:()=>n.e(3457).then(n.bind(n,73457)),thumbsUp:()=>n.e(6876).then(n.bind(n,36876)),error:()=>n.e(2435).then(n.bind(n,32435))},dark:{403:()=>n.e(7409).then(n.bind(n,77409)),thumbsUp:()=>n.e(8622).then(n.bind(n,28622)),error:()=>n.e(598).then(n.bind(n,40598))}},Ve=Me("kv-illustration"),Ge=e=>{let{name:t,className:n,...r}=e;const i=(0,Ue.C)(),[o,s]=a.useState(""),l=He[i]&&He[i][t];return a.useEffect((()=>{"function"===typeof l&&l().then((e=>s(e.default))).catch((e=>{console.error(e),s("")}))}),[l]),o?(0,Le.jsx)("img",{alt:t,src:o,className:Ve(null,n),...r}):null};var We=n(30817);const qe=JSON.parse('{"error-title":"Something went wrong","error-description":"We have something broken, but don\'t worry, it won\'t last long","show-details":"Show details","report-problem":"Report a problem","button-reset":"Try again"}'),Ze=JSON.parse('{"error-title":"\u0427\u0442\u043e-\u0442\u043e \u043f\u043e\u0448\u043b\u043e \u043d\u0435 \u0442\u0430\u043a","error-description":"\u0423 \u043d\u0430\u0441 \u0447\u0442\u043e-\u0442\u043e \u0441\u043b\u043e\u043c\u0430\u043b\u043e\u0441\u044c, \u043d\u043e \u043d\u0435 \u043f\u0435\u0440\u0435\u0436\u0438\u0432\u0430\u0439\u0442\u0435, \u044d\u0442\u043e \u043d\u0435\u043d\u0430\u0434\u043e\u043b\u0433\u043e","show-details":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0434\u0435\u0442\u0430\u043b\u0438","report-problem":"\u0421\u043e\u043e\u0431\u0449\u0438\u0442\u044c \u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0435","button-reset":"\u041f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0441\u043d\u043e\u0432\u0430"}'),Ye=(0,We.wZ)("ydb-error-boundary",{ru:Ze,en:qe}),Ke=Me("ydb-error-boundary");function Qe(e){let{children:t}=e;const n=Be("ErrorBoundary");return(0,Le.jsx)(n,{children:t})}function Xe(e){let{children:t,useRetry:n=!0,onReportProblem:r}=e;return(0,Le.jsx)(Ae,{onError:(e,t)=>{var n;!function(e,t){var n;let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"error";"undefined"!==typeof window&&null!==(n=window.Ya)&&void 0!==n&&n.Rum?window.Ya.Rum.logError({additional:{url:window.location.href},type:r,message:t,level:window.Ya.Rum.ERROR_LEVEL.ERROR},e):console.error(e)}(e,null!==(n=t.componentStack)&&void 0!==n?n:void 0,"error-boundary")},fallbackRender:e=>{let{error:t,resetErrorBoundary:i}=e;return(0,Le.jsx)($e,{error:t,useRetry:n,resetErrorBoundary:i,onReportProblem:r})},children:t})}function $e(e){let{error:t,resetErrorBoundary:n,useRetry:r,onReportProblem:i}=e;return(0,Le.jsxs)("div",{className:Ke(),children:[(0,Le.jsx)(Ge,{name:"error",className:Ke("illustration")}),(0,Le.jsxs)("div",{className:Ke("content"),children:[(0,Le.jsx)("h2",{className:Ke("error-title"),children:Ye("error-title")}),(0,Le.jsx)("div",{className:Ke("error-description"),children:Ye("error-description")}),(0,Le.jsx)(je,{summary:Ye("show-details"),className:Ke("show-details"),size:"m",children:(0,Le.jsx)("pre",{className:Ke("error-details"),children:t.stack})}),(0,Le.jsxs)("div",{className:Ke("actions"),children:[r&&(0,Le.jsx)(Ie.z,{view:"outlined",onClick:n,children:Ye("button-reset")}),i&&(0,Le.jsx)(Ie.z,{view:"outlined",onClick:()=>i(t),children:Ye("report-problem")})]})]})]})}function Je(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);ia.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M9.5 12c0 .414-.168.79-.44 1.06A1.49 1.49 0 0 1 8 13.5H4a1.49 1.49 0 0 1-1.06-.44A1.496 1.496 0 0 1 2.5 12V8c0-.414.168-.79.44-1.06A1.49 1.49 0 0 1 4 6.5h4c.414 0 .79.168 1.06.44.272.27.44.646.44 1.06v4Zm-1.47-1.03s.001 0 0 0L7.06 10l.97-.97a.75.75 0 0 0-1.06-1.06L6 8.94l-.97-.97a.75.75 0 0 0-1.06 1.06l.97.97-.97.97a.75.75 0 0 0 1.06 1.06c0 .001 0 0 0 0l.97-.97.97.97a.75.75 0 0 0 1.06-1.06ZM6.5 5H8a3 3 0 0 1 3 3v1.5h1A1.498 1.498 0 0 0 13.5 8V4A1.5 1.5 0 0 0 12 2.5H8A1.5 1.5 0 0 0 6.5 4v1ZM5 4a3 3 0 0 1 3-3h4a3 3 0 0 1 3 3v4a3 3 0 0 1-3 3h-1v1a3 3 0 0 1-3 3H4a3 3 0 0 1-3-3V8a3 3 0 0 1 3-3h1V4Z",clipRule:"evenodd"})),it=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("g",{fill:"currentColor"},a.createElement("path",{d:"m8 9.076.085-.107a.751.751 0 1 0-1.171-.937L5.438 9.877 5.03 9.47a.747.747 0 0 0-1.06 0 .75.75 0 0 0 0 1.06l.407.408.593.592a.75.75 0 0 0 1.116-.061l.522-.654h.001L8 9.074Z"}),a.createElement("path",{fillRule:"evenodd",d:"M12 11a3 3 0 0 0 3-3V4a3 3 0 0 0-3-3H8a3 3 0 0 0-3 3v1H4a3 3 0 0 0-3 3v4a3 3 0 0 0 3 3h4a3 3 0 0 0 3-3v-1h1ZM4 6.5A1.5 1.5 0 0 0 2.5 8v4A1.5 1.5 0 0 0 4 13.5h4A1.5 1.5 0 0 0 9.5 12V8A1.498 1.498 0 0 0 8 6.5H4ZM13.5 4A1.5 1.5 0 0 0 12 2.5H8A1.5 1.5 0 0 0 6.5 4v1H8a3 3 0 0 1 3 3v1.5h1A1.498 1.498 0 0 0 13.5 8V4Z",clipRule:"evenodd"}))),ot=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M12 2.5H8A1.5 1.5 0 0 0 6.5 4v1H8a3 3 0 0 1 3 3v1.5h1A1.5 1.5 0 0 0 13.5 8V4A1.5 1.5 0 0 0 12 2.5ZM11 11h1a3 3 0 0 0 3-3V4a3 3 0 0 0-3-3H8a3 3 0 0 0-3 3v1H4a3 3 0 0 0-3 3v4a3 3 0 0 0 3 3h4a3 3 0 0 0 3-3v-1ZM4 6.5h4A1.5 1.5 0 0 1 9.5 8v4A1.5 1.5 0 0 1 8 13.5H4A1.5 1.5 0 0 1 2.5 12V8A1.5 1.5 0 0 1 4 6.5Z",clipRule:"evenodd"}));function at(e){var{status:t}=e,n=(0,nt._T)(e,["status"]);return"error"===t?a.createElement(we.J,Object.assign({data:rt},n)):"success"===t?a.createElement(we.J,Object.assign({data:it},n)):a.createElement(we.J,Object.assign({data:ot},n))}var st=n(15942),lt=n.n(st);const ct="pending";function ut(e){const{children:t,text:n,options:r,timeout:i,onCopy:o}=e,[s,l]=a.useState(ct),c=a.useRef(),u=a.useMemo((()=>t(s)),[t,s]),d=a.useCallback(((e,t)=>{l(t?"success":"error"),window.clearTimeout(c.current),c.current=window.setTimeout((()=>l(ct)),i),null===o||void 0===o||o(e,t)}),[o,i]);if(a.useEffect((()=>()=>window.clearTimeout(c.current)),[]),!a.isValidElement(u))throw new Error("Content must be a valid react element");return a.createElement(lt(),{text:n,onCopy:d,options:r},u)}const dt=(0,le.Ge)("label"),ht={xs:{copyIconSize:12,closeIconSize:12,buttonSize:"xs"},s:{copyIconSize:14,closeIconSize:14,buttonSize:"s"},m:{copyIconSize:16,closeIconSize:16,buttonSize:"m"}},pt={pin:"brick-round",className:dt("addon",{side:"right",interactive:!0})},ft=a.forwardRef((function(e,t){const{type:n="default",theme:r="normal",size:i="xs",icon:o,children:s,onCloseClick:l,className:c,disabled:u,copyText:d,closeButtonLabel:h,copyButtonLabel:p,interactive:f=!1,value:m,onCopy:g,onClick:v,qa:y}=e,b=Boolean(""!==s&&a.Children.count(s)>0),x="close"===n&&b,w="copy"===n&&b,S="function"===typeof v,_=Boolean(w&&d),C=(S||_||f)&&!u,{copyIconSize:E,closeIconSize:T,buttonSize:O}=ht[i],N=o&&a.createElement("div",{className:dt("addon",{side:b?"left":void 0})},o),k=b&&a.createElement("div",{className:dt("text")},a.createElement("div",{className:dt("content")},s),Boolean(m)&&a.createElement("div",{className:dt("value")},a.createElement("div",{className:dt("separator")},":"),a.createElement("div",{className:dt("key")},m))),j=e=>{let o;return w?o=a.createElement(Ie.z,Object.assign({size:O,extraProps:{"aria-label":p||void 0},onClick:S?v:void 0,disabled:u},pt),a.createElement(Ie.z.Icon,null,a.createElement(at,{status:e||"pending",size:E}))):x&&(o=a.createElement(Ie.z,Object.assign({onClick:l,size:O,extraProps:{"aria-label":h||void 0},disabled:u},pt),a.createElement(we.J,{size:T,data:tt.Z}))),a.createElement("div",{ref:t,className:dt({theme:r,size:i,type:n,"is-interactive":C,"has-right-addon":Boolean(o),"has-left-addon":Boolean(N),disabled:u},c),"data-qa":y},N,S?a.createElement("button",{disabled:u,type:"button",onClick:v,className:dt("action-button")},k):k,o)};return _&&d&&!S?a.createElement(ut,{text:d,onCopy:g,timeout:1e3},(e=>j(e))):j()})),mt=(0,le.Ge)("tabs");function gt(e){let{id:t,className:n,title:r,meta:i,hint:o,icon:s,counter:l,label:c,active:u,disabled:d,hasOverflow:h,extraProps:p,onClick:f}=e;const{activeTabId:m}=a.useContext(et),g="boolean"===typeof u?u:m===t,v=a.useMemo((()=>void 0!==o?o:"string"===typeof r?r:void 0),[o,r]);return a.createElement("div",Object.assign({},p,{role:"tab","aria-selected":g,"aria-disabled":!0===d,tabIndex:d?-1:0,className:mt("item",{active:g,disabled:d,overflow:Boolean(h)},n),title:v,onClick:()=>{f(t)},onKeyDown:e=>{" "===e.key&&f(t)}}),a.createElement("div",{className:mt("item-content")},s&&a.createElement("div",{className:mt("item-icon")},s),a.createElement("div",{className:mt("item-title")},r||t),"number"===typeof l&&a.createElement("div",{className:mt("item-counter")},l),c&&a.createElement(ft,{className:mt("item-label"),theme:c.theme},c.content)),i&&a.createElement("div",{className:mt("item-meta")},i))}gt.displayName="Tabs.Item";const vt=(0,le.Ge)("tabs");var yt;!function(e){e.Horizontal="horizontal",e.Vertical="vertical"}(yt||(yt={}));const bt=[],xt=a.forwardRef(((e,t)=>{let{direction:n=yt.Horizontal,size:r="m",activeTab:i,allowNotSelected:o=!1,items:s=bt,children:l,className:c,onSelectTab:u,wrapTo:d,qa:h}=e;const p=((e,t,n)=>{var r;return e||(t||0===(null===n||void 0===n?void 0:n.length)||null===(r=null===n||void 0===n?void 0:n[0])||void 0===r?void 0:r.id)})(i,o,s),f=a.useMemo((()=>({activeTabId:p})),[p]),m=a.useMemo((()=>{const e=e=>{u&&u(e)};return s.map(((t,n)=>{const r=a.createElement(gt,Object.assign({key:t.id},t,{onClick:e}));return d?d(t,r,n):r}))}),[s,u,d]);return a.createElement("div",{role:"tablist",className:vt({direction:n,size:r},c),"data-qa":h,ref:t},a.createElement(et.Provider,{value:f},l||m))}));xt.displayName="Tabs";const wt=Object.assign(xt,{Item:gt});var St=n(93316);function _t(e,t,n){const[r,i]=a.useState(null!==e&&void 0!==e?e:t),o=a.useRef(void 0!==e),s=void 0!==e;a.useEffect((()=>{const e=o.current;e!==s&&console.error("[useControlledState] A component changed from ".concat(e?"controlled":"uncontrolled"," to ").concat(s?"controlled":"uncontrolled",".")),o.current=s}),[s]);let l=s?e:r;const c=a.useCallback((function(e){if(!Object.is(l,e)){for(var t=arguments.length,r=new Array(t>1?t-1:0),o=1;ot.every((e=>null===e||void 0===e))?null:e=>{for(const n of t)Ct(n,e)}),t)}var Tt=n(54466),Ot=n.n(Tt),Nt=n(43832),kt=n.n(Nt);const jt=16,It=2;function Pt(e,t){const[n,r]=a.useState({width:0,height:0});return a.useLayoutEffect((()=>{if(!(null===e||void 0===e?void 0:e.current))return;const t=new ResizeObserver(kt()((e=>{if(!Array.isArray(e))return;const t=e[0];if(t.borderBoxSize){const e=t.borderBoxSize[0]?t.borderBoxSize[0]:t.borderBoxSize;r({width:Ot()(e.inlineSize,It),height:Ot()(e.blockSize,It)})}else{const e=t.target;r({width:Ot()(e.offsetWidth,It),height:Ot()(e.offsetHeight,It)})}}),jt));return t.observe(e.current),()=>{t.disconnect()}}),[e,t]),n}var Dt=n(38886);function At(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Rt(e){return e instanceof At(e).Element||e instanceof Element}function Mt(e){return e instanceof At(e).HTMLElement||e instanceof HTMLElement}function Lt(e){return"undefined"!==typeof ShadowRoot&&(e instanceof At(e).ShadowRoot||e instanceof ShadowRoot)}var Ft=Math.max,zt=Math.min,Bt=Math.round;function Ut(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function Ht(){return!/^((?!chrome|android).)*safari/i.test(Ut())}function Vt(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!1);var r=e.getBoundingClientRect(),i=1,o=1;t&&Mt(e)&&(i=e.offsetWidth>0&&Bt(r.width)/e.offsetWidth||1,o=e.offsetHeight>0&&Bt(r.height)/e.offsetHeight||1);var a=(Rt(e)?At(e):window).visualViewport,s=!Ht()&&n,l=(r.left+(s&&a?a.offsetLeft:0))/i,c=(r.top+(s&&a?a.offsetTop:0))/o,u=r.width/i,d=r.height/o;return{width:u,height:d,top:c,right:l+u,bottom:c+d,left:l,x:l,y:c}}function Gt(e){var t=At(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Wt(e){return e?(e.nodeName||"").toLowerCase():null}function qt(e){return((Rt(e)?e.ownerDocument:e.document)||window.document).documentElement}function Zt(e){return Vt(qt(e)).left+Gt(e).scrollLeft}function Yt(e){return At(e).getComputedStyle(e)}function Kt(e){var t=Yt(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+i+r)}function Qt(e,t,n){void 0===n&&(n=!1);var r=Mt(t),i=Mt(t)&&function(e){var t=e.getBoundingClientRect(),n=Bt(t.width)/e.offsetWidth||1,r=Bt(t.height)/e.offsetHeight||1;return 1!==n||1!==r}(t),o=qt(t),a=Vt(e,i,n),s={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(r||!r&&!n)&&(("body"!==Wt(t)||Kt(o))&&(s=function(e){return e!==At(e)&&Mt(e)?{scrollLeft:(t=e).scrollLeft,scrollTop:t.scrollTop}:Gt(e);var t}(t)),Mt(t)?((l=Vt(t,!0)).x+=t.clientLeft,l.y+=t.clientTop):o&&(l.x=Zt(o))),{x:a.left+s.scrollLeft-l.x,y:a.top+s.scrollTop-l.y,width:a.width,height:a.height}}function Xt(e){var t=Vt(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function $t(e){return"html"===Wt(e)?e:e.assignedSlot||e.parentNode||(Lt(e)?e.host:null)||qt(e)}function Jt(e){return["html","body","#document"].indexOf(Wt(e))>=0?e.ownerDocument.body:Mt(e)&&Kt(e)?e:Jt($t(e))}function en(e,t){var n;void 0===t&&(t=[]);var r=Jt(e),i=r===(null==(n=e.ownerDocument)?void 0:n.body),o=At(r),a=i?[o].concat(o.visualViewport||[],Kt(r)?r:[]):r,s=t.concat(a);return i?s:s.concat(en($t(a)))}function tn(e){return["table","td","th"].indexOf(Wt(e))>=0}function nn(e){return Mt(e)&&"fixed"!==Yt(e).position?e.offsetParent:null}function rn(e){for(var t=At(e),n=nn(e);n&&tn(n)&&"static"===Yt(n).position;)n=nn(n);return n&&("html"===Wt(n)||"body"===Wt(n)&&"static"===Yt(n).position)?t:n||function(e){var t=/firefox/i.test(Ut());if(/Trident/i.test(Ut())&&Mt(e)&&"fixed"===Yt(e).position)return null;var n=$t(e);for(Lt(n)&&(n=n.host);Mt(n)&&["html","body"].indexOf(Wt(n))<0;){var r=Yt(n);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||t&&"filter"===r.willChange||t&&r.filter&&"none"!==r.filter)return n;n=n.parentNode}return null}(e)||t}var on="top",an="bottom",sn="right",ln="left",cn="auto",un=[on,an,sn,ln],dn="start",hn="end",pn="clippingParents",fn="viewport",mn="popper",gn="reference",vn=un.reduce((function(e,t){return e.concat([t+"-"+dn,t+"-"+hn])}),[]),yn=[].concat(un,[cn]).reduce((function(e,t){return e.concat([t,t+"-"+dn,t+"-"+hn])}),[]),bn=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function xn(e){var t=new Map,n=new Set,r=[];function i(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&i(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||i(e)})),r}function wn(e){var t;return function(){return t||(t=new Promise((function(n){Promise.resolve().then((function(){t=void 0,n(e())}))}))),t}}var Sn={placement:"bottom",modifiers:[],strategy:"absolute"};function _n(){for(var e=arguments.length,t=new Array(e),n=0;n=0?"x":"y"}function kn(e){var t,n=e.reference,r=e.element,i=e.placement,o=i?Tn(i):null,a=i?On(i):null,s=n.x+n.width/2-r.width/2,l=n.y+n.height/2-r.height/2;switch(o){case on:t={x:s,y:n.y-r.height};break;case an:t={x:s,y:n.y+n.height};break;case sn:t={x:n.x+n.width,y:l};break;case ln:t={x:n.x-r.width,y:l};break;default:t={x:n.x,y:n.y}}var c=o?Nn(o):null;if(null!=c){var u="y"===c?"height":"width";switch(a){case dn:t[c]=t[c]-(n[u]/2-r[u]/2);break;case hn:t[c]=t[c]+(n[u]/2-r[u]/2)}}return t}var jn={top:"auto",right:"auto",bottom:"auto",left:"auto"};function In(e){var t,n=e.popper,r=e.popperRect,i=e.placement,o=e.variation,a=e.offsets,s=e.position,l=e.gpuAcceleration,c=e.adaptive,u=e.roundOffsets,d=e.isFixed,h=a.x,p=void 0===h?0:h,f=a.y,m=void 0===f?0:f,g="function"===typeof u?u({x:p,y:m}):{x:p,y:m};p=g.x,m=g.y;var v=a.hasOwnProperty("x"),y=a.hasOwnProperty("y"),b=ln,x=on,w=window;if(c){var S=rn(n),_="clientHeight",C="clientWidth";if(S===At(n)&&"static"!==Yt(S=qt(n)).position&&"absolute"===s&&(_="scrollHeight",C="scrollWidth"),i===on||(i===ln||i===sn)&&o===hn)x=an,m-=(d&&S===w&&w.visualViewport?w.visualViewport.height:S[_])-r.height,m*=l?1:-1;if(i===ln||(i===on||i===an)&&o===hn)b=sn,p-=(d&&S===w&&w.visualViewport?w.visualViewport.width:S[C])-r.width,p*=l?1:-1}var E,T=Object.assign({position:s},c&&jn),O=!0===u?function(e,t){var n=e.x,r=e.y,i=t.devicePixelRatio||1;return{x:Bt(n*i)/i||0,y:Bt(r*i)/i||0}}({x:p,y:m},At(n)):{x:p,y:m};return p=O.x,m=O.y,l?Object.assign({},T,((E={})[x]=y?"0":"",E[b]=v?"0":"",E.transform=(w.devicePixelRatio||1)<=1?"translate("+p+"px, "+m+"px)":"translate3d("+p+"px, "+m+"px, 0)",E)):Object.assign({},T,((t={})[x]=y?m+"px":"",t[b]=v?p+"px":"",t.transform="",t))}const Pn={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},r=t.attributes[e]||{},i=t.elements[e];Mt(i)&&Wt(i)&&(Object.assign(i.style,n),Object.keys(r).forEach((function(e){var t=r[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var r=t.elements[e],i=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});Mt(r)&&Wt(r)&&(Object.assign(r.style,o),Object.keys(i).forEach((function(e){r.removeAttribute(e)})))}))}},requires:["computeStyles"]};const Dn={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,r=e.name,i=n.offset,o=void 0===i?[0,0]:i,a=yn.reduce((function(e,n){return e[n]=function(e,t,n){var r=Tn(e),i=[ln,on].indexOf(r)>=0?-1:1,o="function"===typeof n?n(Object.assign({},t,{placement:e})):n,a=o[0],s=o[1];return a=a||0,s=(s||0)*i,[ln,sn].indexOf(r)>=0?{x:s,y:a}:{x:a,y:s}}(n,t.rects,o),e}),{}),s=a[t.placement],l=s.x,c=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=c),t.modifiersData[r]=a}};var An={left:"right",right:"left",bottom:"top",top:"bottom"};function Rn(e){return e.replace(/left|right|bottom|top/g,(function(e){return An[e]}))}var Mn={start:"end",end:"start"};function Ln(e){return e.replace(/start|end/g,(function(e){return Mn[e]}))}function Fn(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&Lt(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function zn(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function Bn(e,t,n){return t===fn?zn(function(e,t){var n=At(e),r=qt(e),i=n.visualViewport,o=r.clientWidth,a=r.clientHeight,s=0,l=0;if(i){o=i.width,a=i.height;var c=Ht();(c||!c&&"fixed"===t)&&(s=i.offsetLeft,l=i.offsetTop)}return{width:o,height:a,x:s+Zt(e),y:l}}(e,n)):Rt(t)?function(e,t){var n=Vt(e,!1,"fixed"===t);return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}(t,n):zn(function(e){var t,n=qt(e),r=Gt(e),i=null==(t=e.ownerDocument)?void 0:t.body,o=Ft(n.scrollWidth,n.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),a=Ft(n.scrollHeight,n.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),s=-r.scrollLeft+Zt(e),l=-r.scrollTop;return"rtl"===Yt(i||n).direction&&(s+=Ft(n.clientWidth,i?i.clientWidth:0)-o),{width:o,height:a,x:s,y:l}}(qt(e)))}function Un(e,t,n,r){var i="clippingParents"===t?function(e){var t=en($t(e)),n=["absolute","fixed"].indexOf(Yt(e).position)>=0&&Mt(e)?rn(e):e;return Rt(n)?t.filter((function(e){return Rt(e)&&Fn(e,n)&&"body"!==Wt(e)})):[]}(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce((function(t,n){var i=Bn(e,n,r);return t.top=Ft(i.top,t.top),t.right=zt(i.right,t.right),t.bottom=zt(i.bottom,t.bottom),t.left=Ft(i.left,t.left),t}),Bn(e,a,r));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function Hn(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function Vn(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}function Gn(e,t){void 0===t&&(t={});var n=t,r=n.placement,i=void 0===r?e.placement:r,o=n.strategy,a=void 0===o?e.strategy:o,s=n.boundary,l=void 0===s?pn:s,c=n.rootBoundary,u=void 0===c?fn:c,d=n.elementContext,h=void 0===d?mn:d,p=n.altBoundary,f=void 0!==p&&p,m=n.padding,g=void 0===m?0:m,v=Hn("number"!==typeof g?g:Vn(g,un)),y=h===mn?gn:mn,b=e.rects.popper,x=e.elements[f?y:h],w=Un(Rt(x)?x:x.contextElement||qt(e.elements.popper),l,u,a),S=Vt(e.elements.reference),_=kn({reference:S,element:b,strategy:"absolute",placement:i}),C=zn(Object.assign({},b,_)),E=h===mn?C:S,T={top:w.top-E.top+v.top,bottom:E.bottom-w.bottom+v.bottom,left:w.left-E.left+v.left,right:E.right-w.right+v.right},O=e.modifiersData.offset;if(h===mn&&O){var N=O[i];Object.keys(T).forEach((function(e){var t=[sn,an].indexOf(e)>=0?1:-1,n=[on,an].indexOf(e)>=0?"y":"x";T[e]+=N[n]*t}))}return T}const Wn={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var i=n.mainAxis,o=void 0===i||i,a=n.altAxis,s=void 0===a||a,l=n.fallbackPlacements,c=n.padding,u=n.boundary,d=n.rootBoundary,h=n.altBoundary,p=n.flipVariations,f=void 0===p||p,m=n.allowedAutoPlacements,g=t.options.placement,v=Tn(g),y=l||(v===g||!f?[Rn(g)]:function(e){if(Tn(e)===cn)return[];var t=Rn(e);return[Ln(e),t,Ln(t)]}(g)),b=[g].concat(y).reduce((function(e,n){return e.concat(Tn(n)===cn?function(e,t){void 0===t&&(t={});var n=t,r=n.placement,i=n.boundary,o=n.rootBoundary,a=n.padding,s=n.flipVariations,l=n.allowedAutoPlacements,c=void 0===l?yn:l,u=On(r),d=u?s?vn:vn.filter((function(e){return On(e)===u})):un,h=d.filter((function(e){return c.indexOf(e)>=0}));0===h.length&&(h=d);var p=h.reduce((function(t,n){return t[n]=Gn(e,{placement:n,boundary:i,rootBoundary:o,padding:a})[Tn(n)],t}),{});return Object.keys(p).sort((function(e,t){return p[e]-p[t]}))}(t,{placement:n,boundary:u,rootBoundary:d,padding:c,flipVariations:f,allowedAutoPlacements:m}):n)}),[]),x=t.rects.reference,w=t.rects.popper,S=new Map,_=!0,C=b[0],E=0;E=0,j=k?"width":"height",I=Gn(t,{placement:T,boundary:u,rootBoundary:d,altBoundary:h,padding:c}),P=k?N?sn:ln:N?an:on;x[j]>w[j]&&(P=Rn(P));var D=Rn(P),A=[];if(o&&A.push(I[O]<=0),s&&A.push(I[P]<=0,I[D]<=0),A.every((function(e){return e}))){C=T,_=!1;break}S.set(T,A)}if(_)for(var R=function(e){var t=b.find((function(t){var n=S.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return C=t,"break"},M=f?3:1;M>0;M--){if("break"===R(M))break}t.placement!==C&&(t.modifiersData[r]._skip=!0,t.placement=C,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function qn(e,t,n){return Ft(e,zt(t,n))}const Zn={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name,i=n.mainAxis,o=void 0===i||i,a=n.altAxis,s=void 0!==a&&a,l=n.boundary,c=n.rootBoundary,u=n.altBoundary,d=n.padding,h=n.tether,p=void 0===h||h,f=n.tetherOffset,m=void 0===f?0:f,g=Gn(t,{boundary:l,rootBoundary:c,padding:d,altBoundary:u}),v=Tn(t.placement),y=On(t.placement),b=!y,x=Nn(v),w="x"===x?"y":"x",S=t.modifiersData.popperOffsets,_=t.rects.reference,C=t.rects.popper,E="function"===typeof m?m(Object.assign({},t.rects,{placement:t.placement})):m,T="number"===typeof E?{mainAxis:E,altAxis:E}:Object.assign({mainAxis:0,altAxis:0},E),O=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,N={x:0,y:0};if(S){if(o){var k,j="y"===x?on:ln,I="y"===x?an:sn,P="y"===x?"height":"width",D=S[x],A=D+g[j],R=D-g[I],M=p?-C[P]/2:0,L=y===dn?_[P]:C[P],F=y===dn?-C[P]:-_[P],z=t.elements.arrow,B=p&&z?Xt(z):{width:0,height:0},U=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},H=U[j],V=U[I],G=qn(0,_[P],B[P]),W=b?_[P]/2-M-G-H-T.mainAxis:L-G-H-T.mainAxis,q=b?-_[P]/2+M+G+V+T.mainAxis:F+G+V+T.mainAxis,Z=t.elements.arrow&&rn(t.elements.arrow),Y=Z?"y"===x?Z.clientTop||0:Z.clientLeft||0:0,K=null!=(k=null==O?void 0:O[x])?k:0,Q=D+q-K,X=qn(p?zt(A,D+W-K-Y):A,D,p?Ft(R,Q):R);S[x]=X,N[x]=X-D}if(s){var $,J="x"===x?on:ln,ee="x"===x?an:sn,te=S[w],ne="y"===w?"height":"width",re=te+g[J],ie=te-g[ee],oe=-1!==[on,ln].indexOf(v),ae=null!=($=null==O?void 0:O[w])?$:0,se=oe?re:te-_[ne]-C[ne]-ae+T.altAxis,le=oe?te+_[ne]+C[ne]-ae-T.altAxis:ie,ce=p&&oe?function(e,t,n){var r=qn(e,t,n);return r>n?n:r}(se,te,le):qn(p?se:re,te,p?le:ie);S[w]=ce,N[w]=ce-te}t.modifiersData[r]=N}},requiresIfExists:["offset"]};var Yn=function(e,t){return Hn("number"!==typeof(e="function"===typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:Vn(e,un))};const Kn={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,r=e.name,i=e.options,o=n.elements.arrow,a=n.modifiersData.popperOffsets,s=Tn(n.placement),l=Nn(s),c=[ln,sn].indexOf(s)>=0?"height":"width";if(o&&a){var u=Yn(i.padding,n),d=Xt(o),h="y"===l?on:ln,p="y"===l?an:sn,f=n.rects.reference[c]+n.rects.reference[l]-a[l]-n.rects.popper[c],m=a[l]-n.rects.reference[l],g=rn(o),v=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,y=f/2-m/2,b=u[h],x=v-d[c]-u[p],w=v/2-d[c]/2+y,S=qn(b,w,x),_=l;n.modifiersData[r]=((t={})[_]=S,t.centerOffset=S-w,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!==typeof r||(r=t.elements.popper.querySelector(r)))&&Fn(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Qn(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function Xn(e){return[on,sn,an,ln].some((function(t){return e[t]>=0}))}var $n=Cn({defaultModifiers:[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,n=e.instance,r=e.options,i=r.scroll,o=void 0===i||i,a=r.resize,s=void 0===a||a,l=At(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&c.forEach((function(e){e.addEventListener("scroll",n.update,En)})),s&&l.addEventListener("resize",n.update,En),function(){o&&c.forEach((function(e){e.removeEventListener("scroll",n.update,En)})),s&&l.removeEventListener("resize",n.update,En)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=kn({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,i=void 0===r||r,o=n.adaptive,a=void 0===o||o,s=n.roundOffsets,l=void 0===s||s,c={placement:Tn(t.placement),variation:On(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,In(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,In(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}},Pn,Dn,Wn,Zn,Kn,{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,i=t.rects.popper,o=t.modifiersData.preventOverflow,a=Gn(t,{elementContext:"reference"}),s=Gn(t,{altBoundary:!0}),l=Qn(a,r),c=Qn(s,i,o),u=Xn(l),d=Xn(c);t.modifiersData[n]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:u,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}}]}),Jn=function(e){return e.reduce((function(e,t){var n=t[0],r=t[1];return e[n]=r,e}),{})},er="undefined"!==typeof window&&window.document&&window.document.createElement?a.useLayoutEffect:a.useEffect,tr=[],nr=function(e,t,n){void 0===n&&(n={});var r=a.useRef(null),i={onFirstUpdate:n.onFirstUpdate,placement:n.placement||"bottom",strategy:n.strategy||"absolute",modifiers:n.modifiers||tr},o=a.useState({styles:{popper:{position:i.strategy,left:"0",top:"0"},arrow:{position:"absolute"}},attributes:{}}),s=o[0],l=o[1],u=a.useMemo((function(){return{name:"updateState",enabled:!0,phase:"write",fn:function(e){var t=e.state,n=Object.keys(t.elements);Dt.flushSync((function(){l({styles:Jn(n.map((function(e){return[e,t.styles[e]||{}]}))),attributes:Jn(n.map((function(e){return[e,t.attributes[e]]})))})}))},requires:["computeStyles"]}}),[]),d=a.useMemo((function(){var e={onFirstUpdate:i.onFirstUpdate,placement:i.placement,strategy:i.strategy,modifiers:[].concat(i.modifiers,[u,{name:"applyStyles",enabled:!1}])};return c()(r.current,e)?r.current||e:(r.current=e,e)}),[i.onFirstUpdate,i.placement,i.strategy,i.modifiers,u]),h=a.useRef();return er((function(){h.current&&h.current.setOptions(d)}),[d]),er((function(){if(null!=e&&null!=t){var r=(n.createPopper||$n)(e,t,d);return h.current=r,function(){r.destroy(),h.current=null}}}),[e,t,n.createPopper]),{state:h.current?h.current.state:null,styles:s.styles,attributes:s.attributes,update:h.current?h.current.update:null,forceUpdate:h.current?h.current.forceUpdate:null}},rr=n(40797);function ir(){return(0,rr.T)().direction}const or=["bottom-start","bottom","bottom-end","top-start","top","top-end","right-start","right","right-end","left-start","left","left-end"],ar={name:"rtlOffsetFix",enabled:!0,phase:"main",requires:["offset"],fn(e){let{state:t}=e;var n;if(!t.placement.startsWith("top")&&!t.placement.startsWith("bottom"))return;const r=null===(n=t.modifiersData.offset)||void 0===n?void 0:n[t.placement];r&&(t.modifiersData.popperOffsets.x-=2*r.x)}};var sr=["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])"],lr=sr.join(","),cr="undefined"===typeof Element,ur=cr?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,dr=!cr&&Element.prototype.getRootNode?function(e){var t;return null===e||void 0===e||null===(t=e.getRootNode)||void 0===t?void 0:t.call(e)}:function(e){return null===e||void 0===e?void 0:e.ownerDocument},hr=function e(t,n){var r;void 0===n&&(n=!0);var i=null===t||void 0===t||null===(r=t.getAttribute)||void 0===r?void 0:r.call(t,"inert");return""===i||"true"===i||n&&t&&e(t.parentNode)},pr=function(e,t,n){if(hr(e))return[];var r=Array.prototype.slice.apply(e.querySelectorAll(lr));return t&&ur.call(e,lr)&&r.unshift(e),r=r.filter(n)},fr=function e(t,n,r){for(var i=[],o=Array.from(t);o.length;){var a=o.shift();if(!hr(a,!1))if("SLOT"===a.tagName){var s=a.assignedElements(),l=e(s.length?s:a.children,!0,r);r.flatten?i.push.apply(i,l):i.push({scopeParent:a,candidates:l})}else{ur.call(a,lr)&&r.filter(a)&&(n||!t.includes(a))&&i.push(a);var c=a.shadowRoot||"function"===typeof r.getShadowRoot&&r.getShadowRoot(a),u=!hr(c,!1)&&(!r.shadowRootFilter||r.shadowRootFilter(a));if(c&&u){var d=e(!0===c?a.children:c.children,!0,r);r.flatten?i.push.apply(i,d):i.push({scopeParent:a,candidates:d})}else o.unshift.apply(o,a.children)}}return i},mr=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},gr=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||function(e){var t,n=null===e||void 0===e||null===(t=e.getAttribute)||void 0===t?void 0:t.call(e,"contenteditable");return""===n||"true"===n}(e))&&!mr(e)?0:e.tabIndex},vr=function(e,t){return e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},yr=function(e){return"INPUT"===e.tagName},br=function(e){return function(e){return yr(e)&&"radio"===e.type}(e)&&!function(e){if(!e.name)return!0;var t,n=e.form||dr(e),r=function(e){return n.querySelectorAll('input[type="radio"][name="'+e+'"]')};if("undefined"!==typeof window&&"undefined"!==typeof window.CSS&&"function"===typeof window.CSS.escape)t=r(window.CSS.escape(e.name));else try{t=r(e.name)}catch(o){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",o.message),!1}var i=function(e,t){for(var n=0;nsummary:first-of-type")?e.parentElement:e;if(ur.call(i,"details:not([open]) *"))return!0;if(n&&"full"!==n&&"legacy-full"!==n){if("non-zero-area"===n)return xr(e)}else{if("function"===typeof r){for(var o=e;e;){var a=e.parentElement,s=dr(e);if(a&&!a.shadowRoot&&!0===r(a))return xr(e);e=e.assignedSlot?e.assignedSlot:a||s===e.ownerDocument?a:s.host}e=o}if(function(e){var t,n,r,i,o=e&&dr(e),a=null===(t=o)||void 0===t?void 0:t.host,s=!1;if(o&&o!==e)for(s=!!(null!==(n=a)&&void 0!==n&&null!==(r=n.ownerDocument)&&void 0!==r&&r.contains(a)||null!==e&&void 0!==e&&null!==(i=e.ownerDocument)&&void 0!==i&&i.contains(e));!s&&a;){var l,c,u;s=!(null===(c=a=null===(l=o=dr(a))||void 0===l?void 0:l.host)||void 0===c||null===(u=c.ownerDocument)||void 0===u||!u.contains(a))}return s}(e))return!e.getClientRects().length;if("legacy-full"!==n)return!0}return!1},Sr=function(e,t){return!(t.disabled||hr(t)||function(e){return yr(e)&&"hidden"===e.type}(t)||wr(t,e)||function(e){return"DETAILS"===e.tagName&&Array.prototype.slice.apply(e.children).some((function(e){return"SUMMARY"===e.tagName}))}(t)||function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var t=e.parentElement;t;){if("FIELDSET"===t.tagName&&t.disabled){for(var n=0;n=0)},Er=function e(t){var n=[],r=[];return t.forEach((function(t,i){var o=!!t.scopeParent,a=o?t.scopeParent:t,s=function(e,t){var n=gr(e);return n<0&&t&&!mr(e)?0:n}(a,o),l=o?e(t.candidates):a;0===s?o?n.push.apply(n,l):n.push(a):r.push({documentOrder:i,tabIndex:s,item:t,isScope:o,content:l})})),r.sort(vr).reduce((function(e,t){return t.isScope?e.push.apply(e,t.content):e.push(t.content),e}),[]).concat(n)},Tr=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return!1!==ur.call(e,lr)&&_r(t,e)},Or=sr.concat("iframe").join(","),Nr=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return!1!==ur.call(e,Or)&&Sr(t,e)};function kr(e){let{enabled:t,restoreFocusRef:n,focusTrapped:r}=e;const i=a.useRef(null),o=a.useRef(null),s=a.useRef(null);return a.useEffect((()=>{if(!t)return;const e=e=>{const t=e.target;!r&&t instanceof HTMLElement&&Tr(t)&&(s.current=t)},n=e=>{const t=e.target;t instanceof HTMLElement&&Tr(t)?s.current=t:s.current=null};return window.addEventListener("focusin",e),window.addEventListener("mousedown",n),window.addEventListener("touchstart",n),()=>{window.removeEventListener("focusin",e),window.removeEventListener("mousedown",n),window.removeEventListener("touchstart",n)}}),[t,r]),a.useEffect((()=>{var e;i.current=t&&null!==(e=(null===n||void 0===n?void 0:n.current)||o.current)&&void 0!==e?e:null})),a.useEffect((()=>{if(t)return()=>{let e=i.current;const t=s.current;t&&document.contains(t)&&Tr(t)&&(e=t),e&&"function"===typeof e.focus&&document.contains(e)&&Nr(e)&&(e!==document.activeElement&&setTimeout((()=>{null===e||void 0===e||e.focus()}),0),o.current=null,s.current=null)}}),[t]),{onFocus:e=>{var r;t&&null===o.current&&(o.current=e.relatedTarget,s.current=o.current,i.current=null!==(r=(null===n||void 0===n?void 0:n.current)||o.current)&&void 0!==r?r:null)}}}var jr=n(57107);function Ir(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Pr(e){for(var t=1;t0){var n=e[e.length-1];n!==t&&n.pause()}var r=e.indexOf(t);-1===r||e.splice(r,1),e.push(t)},Rr=function(e,t){var n=e.indexOf(t);-1!==n&&e.splice(n,1),e.length>0&&e[e.length-1].unpause()},Mr=function(e){return"Tab"===(null===e||void 0===e?void 0:e.key)||9===(null===e||void 0===e?void 0:e.keyCode)},Lr=function(e){return Mr(e)&&!e.shiftKey},Fr=function(e){return Mr(e)&&e.shiftKey},zr=function(e){return setTimeout(e,0)},Br=function(e,t){var n=-1;return e.every((function(e,r){return!t(e)||(n=r,!1)})),n},Ur=function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r1?n-1:0),a=1;a=0)e=r.activeElement;else{var t=a.tabbableGroups[0];e=t&&t.firstTabbableNode||c("fallbackFocus")}if(!e)throw new Error("Your focus-trap needs to have at least one focusable element");return e},d=function(){if(a.containerGroups=a.containers.map((function(e){var t=function(e,t){var n;return n=(t=t||{}).getShadowRoot?fr([e],t.includeContainer,{filter:_r.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:Cr}):pr(e,t.includeContainer,_r.bind(null,t)),Er(n)}(e,o.tabbableOptions),n=function(e,t){return(t=t||{}).getShadowRoot?fr([e],t.includeContainer,{filter:Sr.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):pr(e,t.includeContainer,Sr.bind(null,t))}(e,o.tabbableOptions),r=t.length>0?t[0]:void 0,i=t.length>0?t[t.length-1]:void 0,a=n.find((function(e){return Tr(e)})),s=n.slice().reverse().find((function(e){return Tr(e)})),l=!!t.find((function(e){return gr(e)>0}));return{container:e,tabbableNodes:t,focusableNodes:n,posTabIndexesFound:l,firstTabbableNode:r,lastTabbableNode:i,firstDomTabbableNode:a,lastDomTabbableNode:s,nextTabbableNode:function(e){var r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=t.indexOf(e);return i<0?r?n.slice(n.indexOf(e)+1).find((function(e){return Tr(e)})):n.slice(0,n.indexOf(e)).reverse().find((function(e){return Tr(e)})):t[i+(r?1:-1)]}}})),a.tabbableGroups=a.containerGroups.filter((function(e){return e.tabbableNodes.length>0})),a.tabbableGroups.length<=0&&!c("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(a.containerGroups.find((function(e){return e.posTabIndexesFound}))&&a.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},h=function e(t){var n=t.activeElement;if(n)return n.shadowRoot&&null!==n.shadowRoot.activeElement?e(n.shadowRoot):n},p=function e(t){!1!==t&&t!==h(document)&&(t&&t.focus?(t.focus({preventScroll:!!o.preventScroll}),a.mostRecentlyFocusedNode=t,function(e){return e.tagName&&"input"===e.tagName.toLowerCase()&&"function"===typeof e.select}(t)&&t.select()):e(u()))},f=function(e){var t=c("setReturnFocus",e);return t||!1!==t&&e},m=function(e){var t=e.target,n=e.event,r=e.isBackward,i=void 0!==r&&r;t=t||Hr(n),d();var s=null;if(a.tabbableGroups.length>0){var u=l(t,n),h=u>=0?a.containerGroups[u]:void 0;if(u<0)s=i?a.tabbableGroups[a.tabbableGroups.length-1].lastTabbableNode:a.tabbableGroups[0].firstTabbableNode;else if(i){var p=Br(a.tabbableGroups,(function(e){var n=e.firstTabbableNode;return t===n}));if(p<0&&(h.container===t||Nr(t,o.tabbableOptions)&&!Tr(t,o.tabbableOptions)&&!h.nextTabbableNode(t,!1))&&(p=u),p>=0){var f=0===p?a.tabbableGroups.length-1:p-1,m=a.tabbableGroups[f];s=gr(t)>=0?m.lastTabbableNode:m.lastDomTabbableNode}else Mr(n)||(s=h.nextTabbableNode(t,!1))}else{var g=Br(a.tabbableGroups,(function(e){var n=e.lastTabbableNode;return t===n}));if(g<0&&(h.container===t||Nr(t,o.tabbableOptions)&&!Tr(t,o.tabbableOptions)&&!h.nextTabbableNode(t))&&(g=u),g>=0){var v=g===a.tabbableGroups.length-1?0:g+1,y=a.tabbableGroups[v];s=gr(t)>=0?y.firstTabbableNode:y.firstDomTabbableNode}else Mr(n)||(s=h.nextTabbableNode(t))}}else s=c("fallbackFocus");return s},g=function(e){var t=Hr(e);l(t,e)>=0||(Ur(o.clickOutsideDeactivates,e)?n.deactivate({returnFocus:o.returnFocusOnDeactivate}):Ur(o.allowOutsideClick,e)||e.preventDefault())},v=function(e){var t=Hr(e),n=l(t,e)>=0;if(n||t instanceof Document)n&&(a.mostRecentlyFocusedNode=t);else{var r;e.stopImmediatePropagation();var i=!0;if(a.mostRecentlyFocusedNode)if(gr(a.mostRecentlyFocusedNode)>0){var s=l(a.mostRecentlyFocusedNode),c=a.containerGroups[s].tabbableNodes;if(c.length>0){var d=c.findIndex((function(e){return e===a.mostRecentlyFocusedNode}));d>=0&&(o.isKeyForward(a.recentNavEvent)?d+1=0&&(r=c[d-1],i=!1))}}else a.containerGroups.some((function(e){return e.tabbableNodes.some((function(e){return gr(e)>0}))}))||(i=!1);else i=!1;i&&(r=m({target:a.mostRecentlyFocusedNode,isBackward:o.isKeyBackward(a.recentNavEvent)})),p(r||(a.mostRecentlyFocusedNode||u()))}a.recentNavEvent=void 0},y=function(e){if(function(e){return"Escape"===(null===e||void 0===e?void 0:e.key)||"Esc"===(null===e||void 0===e?void 0:e.key)||27===(null===e||void 0===e?void 0:e.keyCode)}(e)&&!1!==Ur(o.escapeDeactivates,e))return e.preventDefault(),void n.deactivate();(o.isKeyForward(e)||o.isKeyBackward(e))&&function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];a.recentNavEvent=e;var n=m({event:e,isBackward:t});n&&(Mr(e)&&e.preventDefault(),p(n))}(e,o.isKeyBackward(e))},b=function(e){var t=Hr(e);l(t,e)>=0||Ur(o.clickOutsideDeactivates,e)||Ur(o.allowOutsideClick,e)||(e.preventDefault(),e.stopImmediatePropagation())},x=function(){if(a.active)return Ar(i,n),a.delayInitialFocusTimer=o.delayInitialFocus?zr((function(){p(u())})):p(u()),r.addEventListener("focusin",v,!0),r.addEventListener("mousedown",g,{capture:!0,passive:!1}),r.addEventListener("touchstart",g,{capture:!0,passive:!1}),r.addEventListener("click",b,{capture:!0,passive:!1}),r.addEventListener("keydown",y,{capture:!0,passive:!1}),n},w=function(){if(a.active)return r.removeEventListener("focusin",v,!0),r.removeEventListener("mousedown",g,!0),r.removeEventListener("touchstart",g,!0),r.removeEventListener("click",b,!0),r.removeEventListener("keydown",y,!0),n},S="undefined"!==typeof window&&"MutationObserver"in window?new MutationObserver((function(e){e.some((function(e){return Array.from(e.removedNodes).some((function(e){return e===a.mostRecentlyFocusedNode}))}))&&p(u())})):void 0,_=function(){S&&(S.disconnect(),a.active&&!a.paused&&a.containers.map((function(e){S.observe(e,{subtree:!0,childList:!0})})))};return(n={get active(){return a.active},get paused(){return a.paused},activate:function(e){if(a.active)return this;var t=s(e,"onActivate"),n=s(e,"onPostActivate"),i=s(e,"checkCanFocusTrap");i||d(),a.active=!0,a.paused=!1,a.nodeFocusedBeforeActivation=r.activeElement,null===t||void 0===t||t();var o=function(){i&&d(),x(),_(),null===n||void 0===n||n()};return i?(i(a.containers.concat()).then(o,o),this):(o(),this)},deactivate:function(e){if(!a.active)return this;var t=Pr({onDeactivate:o.onDeactivate,onPostDeactivate:o.onPostDeactivate,checkCanReturnFocus:o.checkCanReturnFocus},e);clearTimeout(a.delayInitialFocusTimer),a.delayInitialFocusTimer=void 0,w(),a.active=!1,a.paused=!1,_(),Rr(i,n);var r=s(t,"onDeactivate"),l=s(t,"onPostDeactivate"),c=s(t,"checkCanReturnFocus"),u=s(t,"returnFocus","returnFocusOnDeactivate");null===r||void 0===r||r();var d=function(){zr((function(){u&&p(f(a.nodeFocusedBeforeActivation)),null===l||void 0===l||l()}))};return u&&c?(c(f(a.nodeFocusedBeforeActivation)).then(d,d),this):(d(),this)},pause:function(e){if(a.paused||!a.active)return this;var t=s(e,"onPause"),n=s(e,"onPostPause");return a.paused=!0,null===t||void 0===t||t(),w(),_(),null===n||void 0===n||n(),this},unpause:function(e){if(!a.paused||!a.active)return this;var t=s(e,"onUnpause"),n=s(e,"onPostUnpause");return a.paused=!1,null===t||void 0===t||t(),d(),x(),_(),null===n||void 0===n||n(),this},updateContainerElements:function(e){var t=[].concat(e).filter(Boolean);return a.containers=t.map((function(e){return"string"===typeof e?r.querySelector(e):e})),a.active&&d(),_(),this}}).updateContainerElements(e),n};const Wr=a.createContext(void 0);function qr(e){let{children:t,enabled:n=!0,disableAutoFocus:r,autoFocus:i=!0}=e;const o=a.useRef(null),s=a.useRef(!r&&i);a.useEffect((()=>{s.current=!r&&i}));const l=a.useRef(),c=a.useRef({}),u=a.useCallback((()=>{var e;null===(e=l.current)||void 0===e||e.updateContainerElements([o.current,...Object.values(c.current)])}),[]),d=a.useMemo((()=>({addNode(e,t){var n;c.current[e]===t||(null===(n=o.current)||void 0===n?void 0:n.contains(t))||(c.current[e]=t,u())},removeNode(e){c.current[e]&&(delete c.current[e],u())}})),[u]),h=a.useCallback((e=>{var t;n&&e?(o.current=e,l.current||(l.current=Gr([],{initialFocus:()=>s.current&&function(e){if(!(document.activeElement instanceof HTMLElement)||!e.contains(document.activeElement))return e.hasAttribute("tabIndex")||e.setAttribute("tabIndex","-1"),e;return document.activeElement}(e),fallbackFocus:()=>e,returnFocusOnDeactivate:!1,escapeDeactivates:!1,clickOutsideDeactivates:!1,allowOutsideClick:!0})),u(),l.current.activate()):(null===(t=l.current)||void 0===t||t.deactivate(),o.current=null)}),[n,u]),p=a.Children.only(t);if(!a.isValidElement(p))throw new Error("Children must contain only one valid element");const f=Et(h,p.ref);return a.createElement(Wr.Provider,{value:d},a.cloneElement(p,{ref:f}))}var Zr=n(59926),Yr=n(93404);const Kr=new class{constructor(){this.stack=[],this.handleDocumentKeyDown=e=>{var t,n,r;if(e.code===Zr.V.ESCAPE){const r=this.getTopLayer();r.disableEscapeKeyDown||(null===(t=r.onEscapeKeyDown)||void 0===t||t.call(r,e),null===(n=r.onClose)||void 0===n||n.call(r,e,"escapeKeyDown"))}if("Enter"===e.code){const t=this.getTopLayer();null===(r=t.onEnterKeyDown)||void 0===r||r.call(t,e)}},this.handleDocumentClick=e=>{var t,n;if(this.isToastClick(e))return;let r,i=null;if(this.mouseDownLayerTarget){if(r=this.mouseDownLayerTarget.layer,i=this.mouseDownLayerTarget.target,this.mouseDownLayerTarget=void 0,!this.stack.includes(r))return}else r=this.getTopLayer();!r.disableOutsideClick&&this.isOutsideClick(r,e,i)&&(null===(t=r.onOutsideClick)||void 0===t||t.call(r,e),null===(n=r.onClose)||void 0===n||n.call(r,e,"outsideClick"))},this.handleDocumentMouseDown=e=>{const t=this.getTopLayer();t&&(this.mouseDownLayerTarget={layer:t,target:e.target})}}add(e){this.stack.push(e),1===this.stack.length&&this.addListeners(),this.notifyLayersChange()}remove(e){const t=this.stack.indexOf(e);this.stack.splice(t,1),0===this.stack.length&&this.removeListeners(),this.notifyLayersChange()}getLayersCount(){return this.stack.length}getLayers(){return this.stack.map((e=>{let{type:t}=e;return{type:t}}))}addListeners(){document.addEventListener("keydown",this.handleDocumentKeyDown),document.addEventListener("click",this.handleDocumentClick,!0),document.addEventListener("mousedown",this.handleDocumentMouseDown,!0)}removeListeners(){document.removeEventListener("keydown",this.handleDocumentKeyDown),document.removeEventListener("click",this.handleDocumentClick,!0),document.removeEventListener("mousedown",this.handleDocumentMouseDown,!0)}notifyLayersChange(){Yr.P.publish({componentId:"LayerManager",eventId:"layerschange",meta:{layersCount:this.getLayersCount(),layers:this.getLayers()}})}getTopLayer(){return this.stack[this.stack.length-1]}isOutsideClick(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;const r=e.contentRefs||[],{target:i}=t,o="function"===typeof t.composedPath?t.composedPath():[];if(r.length>0){return!r.some((e=>{var t,r,a,s;return(null===(r=null===(t=null===e||void 0===e?void 0:e.current)||void 0===t?void 0:t.contains)||void 0===r?void 0:r.call(t,i))||(null===(s=null===(a=null===e||void 0===e?void 0:e.current)||void 0===a?void 0:a.contains)||void 0===s?void 0:s.call(a,n))||o.includes(null===e||void 0===e?void 0:e.current)}))}return!1}isToastClick(e){return("function"===typeof e.composedPath?e.composedPath():[]).some((e=>{var t;return Boolean(null===(t=null===e||void 0===e?void 0:e.dataset)||void 0===t?void 0:t.toast)}))}};function Qr(e){let{open:t,disableEscapeKeyDown:n,disableOutsideClick:r,onEscapeKeyDown:i,onEnterKeyDown:o,onOutsideClick:s,onClose:l,contentRefs:c,enabled:u=!0,type:d}=e;const h=a.useRef({disableEscapeKeyDown:n,disableOutsideClick:r,onEscapeKeyDown:i,onEnterKeyDown:o,onOutsideClick:s,onClose:l,contentRefs:c,type:d});a.useEffect((()=>{Object.assign(h.current,{disableEscapeKeyDown:n,disableOutsideClick:r,onEscapeKeyDown:i,onEnterKeyDown:o,onOutsideClick:s,onClose:l,contentRefs:c,enabled:u})}),[n,r,i,o,s,l,c,u]),a.useEffect((()=>{if(t&&u){const e=h.current;return Kr.add(e),()=>{Kr.remove(e)}}}),[t,u])}const Xr=(0,le.Ge)("popup");function $r(e){let{styles:t,attributes:n,setArrowRef:r}=e;return a.createElement("div",Object.assign({"data-popper-arrow":!0,ref:r,className:Xr("arrow"),style:t},n),a.createElement("div",{className:Xr("arrow-content")},a.createElement("div",{className:Xr("arrow-circle-wrapper")},a.createElement("div",{className:Xr("arrow-circle",{left:!0})})),a.createElement("div",{className:Xr("arrow-circle-wrapper")},a.createElement("div",{className:Xr("arrow-circle",{right:!0})}))))}const Jr=(0,le.Ge)("popup"),ei=8;function ti(e){let{keepMounted:t=!1,hasArrow:n=!1,offset:r=[0,4],open:i,placement:o,anchorRef:s,disableEscapeKeyDown:l,disableOutsideClick:c,disableLayer:u,style:d,className:h,contentClassName:p,modifiers:f=[],children:m,onEscapeKeyDown:g,onOutsideClick:v,onClose:y,onClick:b,onMouseEnter:x,onMouseLeave:w,onFocus:S,onBlur:_,onTransitionEnter:C,onTransitionEntered:E,onTransitionExit:T,onTransitionExited:O,disablePortal:N,container:k,strategy:j,qa:I,restoreFocus:P,restoreFocusRef:D,"aria-label":A,"aria-labelledby":R,role:M,id:L,focusTrap:F=!1,autoFocus:z=!1}=e;const B=a.useRef(null);Qr({open:i,disableEscapeKeyDown:l,disableOutsideClick:c,onEscapeKeyDown:g,onOutsideClick:v,onClose:y,contentRefs:[s,B],enabled:!u,type:"popup"});const{attributes:U,styles:H,setPopperRef:V,setArrowRef:G}=function(e){let{anchorRef:t,placement:n=or,offset:r,modifiers:i=[],strategy:o,altBoundary:s}=e;const[l,c]=a.useState(null),[u,d]=a.useState(null),h=ir(),p=a.useMemo((()=>{let e=Array.isArray(n)?n:[n];return"rtl"===h&&(e=e.map((e=>e.replace(/(top|bottom)-(start|end)/g,((e,t,n)=>"start"===n?t+"-end":"end"===n?t+"-start":e))))),e}),[n,h]),{attributes:f,styles:m}=nr(null===t||void 0===t?void 0:t.current,l,{strategy:o,modifiers:[{name:"arrow",options:{element:u}},{name:"offset",options:{offset:r,altBoundary:s}},{name:"flip",options:{fallbackPlacements:p.slice(1),altBoundary:s}},..."rtl"===h?[ar]:[],...i],placement:p[0]});return{attributes:f,styles:m,setPopperRef:c,setArrowRef:d}}({anchorRef:s,placement:o,offset:n?[r[0],r[1]+ei]:r,strategy:j,altBoundary:N,modifiers:[{name:"arrow",options:{enabled:n,padding:4}},{name:"preventOverflow",options:{padding:1,altBoundary:N}},...f]}),W=Et(V,B,function(){const e=a.useContext(Wr),t=ue();return a.useMemo((()=>{if(e)return n=>{n?e.addNode(t,n):e.removeNode(t)}}),[e,t])}()),q=kr({enabled:Boolean(P&&i),restoreFocusRef:D});return a.createElement(me.Z,{nodeRef:B,in:i,addEndListener:e=>{var t;return null===(t=B.current)||void 0===t?void 0:t.addEventListener("animationend",e)},classNames:(0,ge.Y)(Jr),mountOnEnter:!t,unmountOnExit:!t,appear:!0,onEnter:()=>{null===C||void 0===C||C()},onEntered:()=>{null===E||void 0===E||E()},onExit:()=>{null===T||void 0===T||T()},onExited:()=>{null===O||void 0===O||O()}},a.createElement(jr.h,{container:k,disablePortal:N},a.createElement("div",Object.assign({ref:W,style:H.popper},U.popper,q,{className:Jr({open:i},h),"data-qa":I,id:L,role:M,"aria-label":A,"aria-labelledby":R}),a.createElement(qr,{enabled:F&&i,disableAutoFocus:!z},a.createElement("div",{onClick:b,onMouseEnter:x,onMouseLeave:w,onFocus:S,onBlur:_,className:Jr("content",p),style:d,tabIndex:-1},n&&a.createElement($r,{styles:H.arrow,attributes:U.arrow,setArrowRef:G}),m)))))}const ni=(0,le.Ge)("popover"),ri=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];switch(e){case"special":return t?"normal-contrast":"flat-contrast";case"announcement":return t?"normal-contrast":"outlined";default:return t?"normal":"flat"}},ii=e=>{let{theme:t,tooltipActionButton:n,tooltipCancelButton:r}=e;return n||r?a.createElement("div",{className:ni("tooltip-buttons")},n&&a.createElement(Ie.z,{view:ri(t,!0),width:"max",onClick:n.onClick,className:ni("tooltip-button")},n.text),r&&a.createElement(Ie.z,{view:ri(t,!1),width:"max",onClick:r.onClick,className:ni("tooltip-button")},r.text)):null},oi=e=>{let{secondary:t,htmlContent:n,content:r,className:i}=e;return n||r?n?a.createElement("div",{className:ni("tooltip-content",{secondary:t},i),dangerouslySetInnerHTML:{__html:n}}):r?a.createElement("div",{className:ni("tooltip-content",{secondary:t},i)},r):null:null},ai=(0,le.Ge)("link"),si=a.forwardRef((function(e,t){let{view:n="normal",visitable:r,href:i,target:o,rel:s,title:l,children:c,extraProps:u,onClick:d,onFocus:h,onBlur:p,id:f,style:m,className:g,qa:v}=e;const y={title:l,onClick:d,onClickCapture:a.useCallback((e=>{Yr.P.publish({componentId:"Link",eventId:"click",domEvent:e})}),[]),onFocus:h,onBlur:p,id:f,style:m,className:ai({view:n,visitable:r},g),"data-qa":v},b="_blank"!==o||s?s:"noopener noreferrer";return a.createElement("a",Object.assign({},u,y,{ref:t,href:i,target:o,rel:b}),c)})),li=e=>{let{links:t}=e;return 0===t.length?null:a.createElement("div",{className:ni("tooltip-links")},t.map(((e,t)=>{const{text:n,href:r,target:i="_blank",onClick:o}=e;return a.createElement(a.Fragment,{key:"link-".concat(t)},a.createElement(si,{href:r,target:i,onClick:o,className:ni("tooltip-link")},n),a.createElement("br",null))})))};var ci=n(68512);const ui=e=>{let{open:t,openOnHover:n,disabled:r,className:i,openTooltip:o,closeTooltip:s,closedManually:l,onClick:c,children:u}=e;const d=async e=>{if(r||t&&n)return;if(!(!c||await c(e)))return;t?(s(),l.current=!0):(o(),l.current=!1)},{onKeyDown:h}=(0,ci.b)(d);return"function"===typeof u?a.createElement(a.Fragment,null,u({onClick:d,onKeyDown:h,open:t})):a.createElement("div",{className:i,onClick:d,onKeyDown:c?h:void 0},u)};var di;!function(e){e.Immediate="immediate",e.Delayed="delayed",e.DelayedClosing="delayedClosing"}(di||(di={}));const hi={[di.Immediate]:[0,0],[di.Delayed]:[300,300],[di.DelayedClosing]:[0,300]},pi=e=>{let{initialOpen:t,disabled:n,autoclosable:r,onOpenChange:i,delayOpening:o,delayClosing:s,behavior:l,shouldBeOpen:c}=e;const u=a.useRef(null),d=a.useRef(null),[h,p]=a.useState(t),f=a.useCallback((()=>{u.current&&(clearTimeout(u.current),u.current=null)}),[]),m=a.useCallback((()=>{d.current&&(clearTimeout(d.current),d.current=null)}),[]);a.useEffect((()=>()=>{f(),m()}),[m,f]);const g=a.useCallback((e=>{p(e),c.current=e,null===i||void 0===i||i(e)}),[i,c]),v=a.useCallback((()=>{f(),g(!0)}),[g,f]),y=a.useCallback((()=>{m(),g(!1)}),[g,m]);a.useEffect((()=>{n&&y()}),[n,y]),((e,t)=>{const n=a.useRef(!0);a.useEffect((()=>{n.current?n.current=!1:e()}),t)})((()=>{r&&!c.current&&y()}),[r,y,c]);const[b,x]=hi[l],w=a.useCallback((()=>{u.current=setTimeout((()=>{u.current=null,v()}),null!==o&&void 0!==o?o:b)}),[b,o,v]),S=a.useCallback((()=>{d.current=setTimeout((()=>{d.current=null,y()}),null!==s&&void 0!==s?s:x)}),[y,x,s]);return{isOpen:h,closingTimeout:d,openTooltip:v,openTooltipDelayed:w,unsetOpeningTimeout:f,closeTooltip:y,closeTooltipDelayed:S,unsetClosingTimeout:m}},fi=a.forwardRef((function(e,t){let{initialOpen:n=!1,disabled:r=!1,autoclosable:i=!0,openOnHover:o=!0,delayOpening:s,delayClosing:l,behavior:c=di.Delayed,placement:u,offset:d={},tooltipOffset:h,tooltipClassName:p,tooltipContentClassName:f,theme:m="info",size:g="s",hasArrow:v=!0,hasClose:y=!1,className:b,children:x,title:w,content:S,htmlContent:_,contentClassName:C,links:E,forceLinksAppearance:T=!1,tooltipActionButton:O,tooltipCancelButton:N,onOpenChange:k,onCloseClick:j,onClick:I,anchorRef:P,strategy:D,qa:A,disablePortal:R=!1,tooltipId:M,focusTrap:L,autoFocus:F,restoreFocusRef:z,modifiers:B}=e;const U=ir(),H=a.useRef(null),V=a.useRef(!1),G=a.useRef(n),{isOpen:W,closingTimeout:q,openTooltip:Z,openTooltipDelayed:Y,unsetOpeningTimeout:K,closeTooltip:Q,closeTooltipDelayed:X,unsetClosingTimeout:$}=pi({initialOpen:n,disabled:r,autoclosable:i,onOpenChange:k,delayOpening:s,delayClosing:l,behavior:c,shouldBeOpen:G}),J=a.useMemo((()=>u||("rtl"===U?["left","bottom"]:["right","bottom"])),[U,u]);a.useImperativeHandle(t,(()=>({openTooltip:Z,closeTooltip:Q})),[Z,Q]);const ee=Boolean(w),te=a.createElement(ti,{id:M,role:o?"tooltip":"dialog",strategy:D,anchorRef:P||H,className:ni("tooltip",{theme:m,size:g,"with-close":y,"force-links-appearance":T},p),contentClassName:ni("tooltip-popup-content",f),open:W,placement:J,hasArrow:v,offset:h,onClose:P?void 0:Q,qa:A?"".concat(A,"-tooltip"):"",disablePortal:R,focusTrap:L,autoFocus:F,restoreFocus:!0,restoreFocusRef:z||H,modifiers:B},a.createElement(a.Fragment,null,w&&a.createElement("h3",{className:ni("tooltip-title")},w),a.createElement(oi,{secondary:!!ee&&"announcement"!==m,content:S,htmlContent:_,className:C}),E&&a.createElement(li,{links:E}),a.createElement(ii,{theme:m,tooltipActionButton:O,tooltipCancelButton:N}),y&&a.createElement("div",{className:ni("tooltip-close")},a.createElement(Ie.z,{size:"s",view:"flat-secondary",onClick:async e=>{Q(),null===j||void 0===j||j(e)},extraProps:{"aria-label":"Close"}},a.createElement(we.J,{data:tt.Z,size:16})))));if(P)return te;const ne=()=>{$(),W||r||V.current?G.current=!0:Y()},re=()=>{!i||V.current||q.current?G.current=!1:(K(),X()),V.current=!1};return!d||"number"!==typeof d.top&&"number"!==typeof d.left||(0,Ce.O)('[Popover] Physical names (top, left) of "offset" property are deprecated. Use logical names (block, inline) instead.'),a.createElement("div",{ref:H,className:ni({disabled:r},b),onMouseEnter:o?ne:void 0,onMouseLeave:o?re:void 0,onFocus:o?ne:void 0,onBlur:o?re:void 0,style:{top:d.top,left:d.left,insetBlockStart:d.block,insetInlineStart:d.inline},"data-qa":A},a.createElement(ui,{closeTooltip:Q,openTooltip:Z,open:W,openOnHover:o,className:ni("handler"),disabled:r,onClick:I,closedManually:V},x),te)}));fi.displayName="Popover";var mi=n(54973);const gi=JSON.parse('{"label_clear-button":"Clear"}'),vi=JSON.parse('{"label_clear-button":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c"}'),yi=(0,mi.e)({en:gi,ru:vi},"".concat(le.A7,"clear-button")),bi=(0,le.Ge)("clear-button"),xi=e=>{switch(e){case"s":return"xs";case"m":return"s";case"l":return"m";case"xl":return"l";default:throw new Error('Unknown text input size "'.concat(e,'"'))}},wi=e=>{const{size:t,className:n,onClick:r}=e;return a.createElement(Ie.z,{size:t,className:bi(null,n),onClick:r,extraProps:{onMouseDown:e=>{e.preventDefault()},"aria-label":yi("label_clear-button")}},a.createElement(we.J,{data:tt.Z,size:16}))},Si=e=>"boolean"===typeof e?e?"on":"off":e,_i=e=>{const{error:t,errorMessage:n,errorPlacement:r,validationState:i}=e;let o,a;return"string"===typeof t&&(o=t),n&&(o=n),("invalid"===i||Boolean(t))&&(a="invalid"),{errorMessage:o,errorPlacement:r,validationState:a}},Ci=(0,le.Ge)("outer-additional-content"),Ei=e=>{let{errorMessage:t,note:n,noteId:r,errorMessageId:i}=e;return t||n?a.createElement("div",{className:Ci()},t&&a.createElement("div",{className:Ci("error"),id:i,"data-qa":"control-error-message-qa"},t),n&&a.createElement("div",{className:Ci("note"),id:r},n)):null},Ti=(0,le.Ge)("text-input"),Oi=a.forwardRef((function(e,t){let{placement:n,children:r,onClick:i}=e;return r?a.createElement("div",{ref:t,className:Ti("additional-content",{placement:n}),onClick:i},r):null})),Ni=(0,le.Ge)("text-input");function ki(e){const{controlProps:t,controlRef:n,type:r,name:i,id:o,tabIndex:s,autoComplete:l,placeholder:c,value:u,defaultValue:d,autoFocus:h,disabled:p,onChange:f,onFocus:m,onBlur:g,onKeyDown:v,onKeyUp:y,onKeyPress:b}=e;return a.createElement("input",Object.assign({},t,{ref:n,className:Ni("control",{type:"input"},t.className),type:r,name:i,id:o,tabIndex:s,placeholder:c,value:u,defaultValue:d,autoFocus:h,autoComplete:l,onChange:f,onFocus:m,onBlur:g,onKeyDown:v,onKeyUp:y,onKeyPress:b,disabled:null!==p&&void 0!==p?p:t.disabled}))}const ji=(0,le.Ge)("text-input"),Ii=a.forwardRef((function(e,t){const{view:n="normal",size:r="m",pin:i="round-round",name:o,value:s,defaultValue:l,label:c,disabled:u=!1,hasClear:d=!1,error:h,errorMessage:p,errorPlacement:f="outside",validationState:m,autoComplete:g,id:v,tabIndex:y,style:b,className:x,qa:w,controlProps:S,leftContent:_,rightContent:C,startContent:E=_,endContent:T=C,note:O,onUpdate:N,onChange:k}=e,{errorMessage:j,errorPlacement:I,validationState:P}=_i({error:h,errorMessage:p,errorPlacement:f,validationState:m}),[D,A]=_t(s,null!==l&&void 0!==l?l:"",N),R=a.useRef(null),M=Et(e.controlRef,R),L=a.useRef(null),F=a.useRef(null),z=(e=>"invalid"===e?"error":void 0)(P),B=Boolean(c),U="invalid"===P&&Boolean(j)&&"outside"===I,H="invalid"===P&&Boolean(j)&&"inside"===I,V=Boolean(d&&!u&&D),G=Boolean(E),W=Boolean(T),q=B&&!v&&!o&&"undefined"===typeof g,Z=ue(),Y=B?v||Z:v,K=Pt(B?L:null,r),Q=Pt(G?F:null,r),X=ue(),$=ue(),J=[null===S||void 0===S?void 0:S["aria-describedby"],O?$:void 0,U?X:void 0].filter(Boolean).join(" "),ee=Object.assign(Object.assign({},S),{style:Object.assign(Object.assign({},null===S||void 0===S?void 0:S.style),B&&K.width?{paddingInlineStart:"".concat(K.width,"px")}:{}),"aria-invalid":"invalid"===P||void 0,"aria-describedby":J||void 0}),te={id:Y,tabIndex:y,name:o,onChange(e){A(e.target.value),k&&k(e)},autoComplete:q?"off":Si(g),controlProps:ee},ne=e=>{var t,n;const r=!e.currentTarget.contains(document.activeElement)&&e.currentTarget.contains(e.target),i=Boolean(null===(t=document.getSelection())||void 0===t?void 0:t.toString());r&&!i&&(null===(n=R.current)||void 0===n||n.focus())};return a.createElement("span",{ref:t,style:b,className:ji({view:n,size:r,disabled:u,state:z,pin:"clear"===n?void 0:i,"has-clear":V,"has-start-content":G,"has-end-content":V||W},x),"data-qa":w},a.createElement("span",{className:ji("content")},G&&a.createElement(Oi,{ref:F,placement:"start",onClick:ne},E),B&&a.createElement("label",{ref:L,style:{insetInlineStart:G?Q.width:void 0,maxWidth:"calc(50% - ".concat(Q.width,"px)")},className:ji("label"),title:c,htmlFor:Y},"".concat(c)),a.createElement(ki,Object.assign({},e,te,{controlRef:M})),V&&a.createElement(wi,{size:xi(r),onClick:e=>{A("");const t=R.current;if(t){const n=Object.create(e);n.target=t,n.currentTarget=t,t.value="",k&&k(n)}},className:ji("clear",{size:r})}),W&&a.createElement(Oi,{placement:"end",onClick:ne},T),H&&a.createElement(fi,{content:j},a.createElement("span",{"data-qa":"control-error-icon-qa"},a.createElement(we.J,{data:St.Z,className:ji("error-icon"),size:"s"===r?12:16})))),a.createElement(Ei,{note:O,errorMessage:U?j:null,noteId:$,errorMessageId:X}))})),Pi=(0,le.Ge)("loader");function Di(e){let{size:t="s",className:n,qa:r}=e;return a.createElement("div",{className:Pi({size:t},n),"data-qa":r},a.createElement("div",{className:Pi("left")}),a.createElement("div",{className:Pi("center")}),a.createElement("div",{className:Pi("right")}))}var Ai=n(77796),Ri=n(5718);function Mi(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!==typeof document){var r=document.head||document.getElementsByTagName("head")[0],i=document.createElement("style");i.type="text/css","top"===n&&r.firstChild?r.insertBefore(i,r.firstChild):r.appendChild(i),i.styleSheet?i.styleSheet.cssText=e:i.appendChild(document.createTextNode(e))}}var Li=n(5687),Fi=n(10288),zi={button_close:"Close"},Bi={button_close:"\u0417\u0430\u043a\u0440\u044b\u0442\u044c"};var Ui=(0,mi.e)({en:zi,ru:Bi},"".concat(Ri.N).concat("Title"));Mi(".gn-title{align-items:center;box-sizing:border-box;display:flex;justify-content:space-between;min-height:64px;padding:14px 10px 14px 20px}.gn-title_separator{border-bottom:1px solid var(--g-color-line-generic)}.gn-title__text{margin:0 20px 0 0}");const Hi=(0,Ri.b)("title"),Vi=e=>{let{children:t,closeIconSize:n=23,hasSeparator:r,closeTitle:i=Ui("button_close"),onClose:o}=e;return a.createElement("div",{className:Hi({separator:r})},a.createElement(Fi.x,{className:Hi("text"),as:"h3",variant:"subheader-3"},t),o&&a.createElement(Ie.z,{onClick:o,view:"flat",size:"l",extraProps:{"aria-label":i}},a.createElement(we.J,{data:tt.Z,size:n})))};function Gi(e){const t=a.useRef();return a.useEffect((()=>(t.current=e,()=>{t.current=void 0})),[e]),a.useCallback((function(){if("function"===typeof t.current)return t.current(...arguments)}),[])}function Wi(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function qi(e){const t=Wi(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"").replace(/\s+/g,".*?");return Zi(e,"",new RegExp(t,"i"))}function Zi(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0;const r=[],i={};let o=!1,s=!1;return a.Children.forEach(e,(e=>{var l,c;if(a.isValidElement(e))if(e.type===a.Fragment){const{menu:o,pages:a}=Zi(e.props.children,t,n);r.push(...o),Object.assign(i,a)}else if(e.props.groupTitle){0;const a="".concat(t,"/").concat(null!==(l=e.props.id)&&void 0!==l?l:e.props.groupTitle);o=!0;const{menu:s,pages:c}=Zi(e.props.children,a,n);0,r.push({groupTitle:e.props.groupTitle,items:s}),Object.assign(i,c)}else{s=!0;const o="".concat(t,"/").concat(null!==(c=e.props.id)&&void 0!==c?c:e.props.title);0,i[o]=Yi(e.props.children,n),i[o].id=o,r.push({id:o,title:e.props.title,icon:e.props.icon,withBadge:i[o].withBadge,disabled:i[o].hidden})}})),{menu:r,pages:i}}function Yi(e,t){const n={id:"",sections:[],hidden:!0};return a.Children.forEach(e,(e=>{if(a.isValidElement(e))if(e.type===a.Fragment){const{sections:r,withBadge:i,hidden:o}=Yi(e.props.children,t);n.sections.push(...r),n.withBadge=i||n.withBadge,n.hidden=o&&n.hidden}else{const{withBadge:r,showTitle:i=!0}=e.props,{items:o,hidden:a}=Ki(e.props.children,t);n.withBadge=r||n.withBadge,n.hidden=a&&n.hidden,n.sections.push(Object.assign(Object.assign({},e.props),{withBadge:r,items:o,hidden:a,showTitle:i}))}})),n}function Ki(e,t){let n=!0;const r=[];return a.Children.forEach(e,(e=>{if(a.isValidElement(e))if(e.type===a.Fragment){const i=Ki(e.props.children,t);r.push(...i.items),n=n&&i.hidden}else{const i=Object.assign(Object.assign({},e.props),{element:e,hidden:!t.test(e.props.title)});r.push(i),n=n&&i.hidden}})),{items:r,hidden:n}}Vi.displayName="Title";const Qi=a.createContext({});function Xi(e,t){const n=a.useRef(null);return a.useMemo((()=>t?Object.assign({selectedRef:n},function(e,t){if(!t.settingId&&!t.section&&!t.page)return{};for(const n of Object.values(e)){if(!t.settingId&&!t.section){if(t.page!==n.id)continue;return{page:n}}for(const e of n.sections)if(t.settingId){for(const r of e.items)if(r.id===t.settingId)return{page:n,section:e,setting:r}}else if(t.section&&("id"in t.section?t.section.id===e.id:t.section.title===e.title))return{page:n,section:e}}return{}}(e,t)):{selectedRef:n}),[e,t])}Qi.displayName="SettingsSelectionContext";const $i=Qi.Provider;var Ji=function(e){return e};Mi('.gn-settings-menu__group-heading{display:inline-block;font-weight:var(--g-text-accent-font-weight);line-height:18px;margin-bottom:12px;padding:0 20px}.gn-settings-menu__group+.gn-settings-menu__group{margin-top:24px}.gn-settings-menu__item{align-items:center;color:var(--g-color-text-primary);cursor:pointer;display:flex;height:40px;padding:0 20px}.gn-settings-menu__item-icon{color:var(--g-color-text-misc);margin-right:5px}.gn-settings-menu__item:hover,.gn-settings-menu__item_focused{background:var(--g-color-base-simple-hover)}.gn-settings-menu__item_selected{background:var(--g-color-base-selection)}.gn-settings-menu__item_selected.gn-settings-menu__item_focused,.gn-settings-menu__item_selected:hover{background:var(--g-color-base-selection-hover)}.gn-settings-menu__item_disabled{color:var(--g-color-text-secondary);cursor:auto}.gn-settings-menu__item_disabled:hover{background:none}.gn-settings-menu__item_disabled .gn-settings-menu__item-icon{color:var(--g-color-base-misc-heavy)}.gn-settings-menu__item_badge{position:relative}.gn-settings-menu__item_badge:after{background-color:var(--g-color-text-danger);border-radius:50%;content:"";display:block;height:6px;position:absolute;right:9px;top:calc(50% - 3px);width:6px}');const eo=(0,Ri.b)("settings-menu"),to=a.forwardRef((function(e,t){let{items:n,onChange:r,activeItemId:i}=e;const[o,s]=a.useState(),l=a.useRef(null),c=Gi(r),u=function(e){const t=a.useRef(e);return t.current=e,a.useCallback((()=>t.current),[])}(o);return a.useImperativeHandle(t,(()=>({handleKeyDown(e){if(!l.current)return!1;const t=u();return t&&"Enter"===e.key?(c(t),!0):"ArrowDown"===e.key?(s(ro(l.current,t,1)),!0):"ArrowUp"===e.key&&(s(ro(l.current,t,-1)),!0)},clearFocus(){s(void 0)}})),[u,c]),a.createElement("div",{ref:l,className:eo()},n.map((e=>"groupTitle"in e?a.createElement("div",{key:e.groupTitle,className:eo("group")},a.createElement("span",{className:eo("group-heading")},e.groupTitle),e.items.map((e=>no(e,r,i,o)))):no(e,r,i,o))))}));function no(e,t,n,r){return a.createElement("span",{key:e.title,className:eo("item",{selected:n===e.id,disabled:e.disabled,focused:r===e.id,badge:e.withBadge}),onClick:()=>{e.disabled||t(e.id)},"data-id":e.id},e.icon?a.createElement(we.J,Object.assign({size:16},e.icon,{className:eo("item-icon")})):void 0,a.createElement("span",null,e.title))}function ro(e,t,n){var r;const i=e.querySelectorAll(".".concat(eo("item"),":not(.").concat(eo("item"),"_disabled)"));if(0===i.length)return;let o=n>0?-1:0;return t&&(o=Array.prototype.findIndex.call(i,(e=>e.getAttribute("data-id")===t))),o=(i.length+o+n)%i.length,null!==(r=i[o].getAttribute("data-id"))&&void 0!==r?r:void 0}Mi('.gn-settings-menu-mobile.g-tabs_direction_horizontal{-ms-overflow-style:none;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:none;scrollbar-width:none}.gn-settings-menu-mobile.g-tabs_direction_horizontal::-webkit-scrollbar{display:none}.gn-settings-menu-mobile__item_badge{position:relative}.gn-settings-menu-mobile__item_badge:after{background-color:var(--g-color-text-danger);border-radius:50%;content:"";display:block;height:6px;position:absolute;right:-8px;top:11px;width:6px}');const io=(0,Ri.b)("settings-menu-mobile"),oo=e=>{let{items:t,onChange:n,activeItemId:r,className:i}=e;const o=a.useRef(null),s=a.useMemo((()=>{const e=[];return t.forEach((t=>{if("groupTitle"in t)e.push(...t.items.map((e=>{let{id:t,title:n,disabled:r,withBadge:i}=e;return{id:t,title:n,disabled:r,className:io("item",{badge:i})}})));else{const{id:n,title:r,disabled:i,withBadge:o}=t;e.push({id:n,title:r,disabled:i,className:io("item",{badge:o})})}})),e}),[t]);return a.createElement("div",{ref:o,onTouchMove:e=>{e.stopPropagation()}},a.createElement(wt,{items:s,className:io(null,i),size:"l",activeTab:r,onSelectTab:n}))};var ao={label_title:"Settings","label_filter-placeholder":"Search settings","label_empty-placeholder":"No results found",label_search:"Search"},so={label_title:"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438","label_filter-placeholder":"\u041d\u0430\u0439\u0442\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438","label_empty-placeholder":"\u041d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u043e",label_search:"\u041f\u043e\u0438\u0441\u043a"};var lo=(0,mi.e)({en:ao,ru:so},"".concat(Ri.N).concat("Settings"));const co=(0,Ri.b)("settings-search");function uo(e){let{className:t,initialValue:n,onChange:r,debounce:i=200,inputRef:o,inputSize:s,placeholder:l,autoFocus:c=!0}=e;const[u,d]=a.useState(null!==n&&void 0!==n?n:""),h=Gi((0,Li.d)(r,i)),p=Gi((e=>{d(e),h(e)}));return a.createElement("div",{className:co(null,t)},a.createElement(Ii,{value:u,controlRef:o,hasClear:!0,autoFocus:c,size:s,placeholder:l,onUpdate:p,controlProps:{"aria-label":lo("label_search")}}))}Mi('.gn-settings{display:grid;grid-template-columns:216px 1fr;height:100%;width:834px}.gn-settings_view_mobile{display:block;height:calc(80vh - 56px);overflow-x:hidden;width:auto}@supports (height:90dvh){.gn-settings_view_mobile{height:calc(90dvh - 56px)}}.gn-settings_view_mobile.gn-settings_loading{text-align:center}.gn-settings_view_mobile .gn-settings__loader{margin-top:20px}.gn-settings_view_mobile .gn-settings__search{margin:4px 0 16px;padding:0 20px}.gn-settings_view_mobile .gn-settings__page{overflow-y:visible}.gn-settings_view_mobile .gn-settings__tabs .g-tabs__item:first-child{margin-left:20px}.gn-settings_view_mobile .gn-settings__tabs .g-tabs__item:last-child{margin-right:20px}.gn-settings_view_mobile .gn-settings__section-heading{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.gn-settings_view_mobile .gn-settings__section-subheader{color:var(--g-color-text-secondary)}.gn-settings_view_mobile .gn-settings__section-heading+.gn-settings-subheader{margin-top:8px}.gn-settings_view_mobile .gn-settings__section-item{margin-top:0}.gn-settings_view_mobile .gn-settings__section-heading+.gn-settings__section-item,.gn-settings_view_mobile .gn-settings__section-subheader+.gn-settings__section-item{margin-top:30px}.gn-settings_view_mobile .gn-settings__section-item+.gn-settings__section-item{margin-top:22px}.gn-settings_view_mobile .gn-settings__item:not(.gn-settings_view_mobile .gn-settings__item_mode_row){gap:8px;grid-template-columns:1fr}.gn-settings_view_mobile .gn-settings__item-heading{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.gn-settings_view_mobile .gn-settings__item-description{font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.gn-settings_view_mobile .gn-settings__item_mode_row{grid-template-columns:1fr auto}.gn-settings_view_mobile .gn-settings__item_mode_row .gn-settings__item-heading{padding-right:20px}.gn-settings_view_mobile .gn-settings__item-content{width:100%}.gn-settings_view_mobile .gn-settings__not-found{color:var(--g-color-text-hint);font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);justify-items:start;line-height:var(--g-text-body-2-line-height);margin:20px 0 0 20px}.gn-settings_loading{grid-template-columns:auto}.gn-settings__loader{place-self:center}.gn-settings__not-found{display:grid;height:100%;place-items:center}.gn-settings__menu{border-right:1px solid var(--g-color-line-generic)}.gn-settings__heading{font-size:var(--g-text-subheader-2-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-2-line-height);margin:20px 20px 0}.gn-settings__search{margin:0 20px 16px}.gn-settings__page{overflow-y:auto}.gn-settings__content{padding:20px}.gn-settings__section-right-adornment_hidden{opacity:0;transition:opacity .2s}.gn-settings__section-heading:hover .gn-settings__section-right-adornment_hidden{opacity:1}.gn-settings__section-heading{font-size:var(--g-text-subheader-2-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-2-line-height);margin:0}.gn-settings__section-item{margin-top:24px}.gn-settings__section+.gn-settings__section{margin-top:32px}.gn-settings__item{display:grid;grid-template-columns:216px 1fr;justify-items:start}.gn-settings__item_align_top{align-items:start}.gn-settings__item_align_center{align-items:center}.gn-settings__item-title_badge{position:relative}.gn-settings__item-title_badge:after{background-color:var(--g-color-text-danger);border-radius:50%;content:"";display:block;height:6px;position:absolute;right:-8px;top:1px;width:6px}.gn-settings__item-description{color:var(--g-color-text-secondary);display:block;font-size:var(--g-text-caption-2-font-size);font-weight:var(--g-text-caption-font-weight);line-height:var(--g-text-caption-2-line-height);margin-top:2px;padding-right:20px}.gn-settings__item-right-adornment_hidden{opacity:0;transition:opacity .2s}.gn-settings__item:hover .gn-settings__item-right-adornment_hidden{opacity:1}.gn-settings__item_selected,.gn-settings__section_selected{background:var(--g-color-base-selection);border-radius:8px;margin-left:-8px;padding:8px}.gn-settings__found{background:var(--g-color-base-selection);font-weight:var(--g-text-accent-font-weight)}');const ho=(0,Ri.b)("settings"),po=a.createContext({}),fo=()=>a.useContext(po);function mo(e){var{loading:t,renderLoading:n,children:r,view:i="normal",renderRightAdornment:o,renderSectionRightAdornment:s,showRightAdornmentOnHover:l=!0}=e,c=Je(e,["loading","renderLoading","children","view","renderRightAdornment","renderSectionRightAdornment","showRightAdornmentOnHover"]);return t?a.createElement("div",{className:ho({loading:!0,view:i})},"function"===typeof n?n():a.createElement(Di,{className:ho("loader"),size:"m"})):a.createElement(po.Provider,{value:{renderRightAdornment:o,renderSectionRightAdornment:s,showRightAdornmentOnHover:l}},a.createElement(vo,Object.assign({view:i},c),r))}const go=(e,t)=>{for(const n of e)if("groupTitle"in n){for(const e of n.items)if(e.id===t)return e.title}else if(n.id===t)return n.title;return""};function vo(e){let{initialPage:t,initialSearch:n,selection:r,children:i,renderNotFound:o,title:s=lo("label_title"),filterPlaceholder:l=lo("label_filter-placeholder"),emptyPlaceholder:c=lo("label_empty-placeholder"),view:u,onPageChange:d,onClose:h}=e;var p,f;const{renderSectionRightAdornment:m,showRightAdornmentOnHover:g}=fo(),[v,y]=a.useState(null!==n&&void 0!==n?n:""),{menu:b,pages:x}=qi(i,v),w=Xi(x,r),S=Object.keys(x),_=w.page&&S.includes(w.page.id)?w.page.id:void 0,[C,E]=a.useState(_||(t&&S.includes(t)?t:void 0)),T=a.useRef(null),O=a.useRef(null),N="mobile"===u;a.useEffect((()=>{var e;null===(e=O.current)||void 0===e||e.clearFocus()}),[v]),a.useEffect((()=>{const e=()=>{var e;null===(e=O.current)||void 0===e||e.clearFocus()};return window.addEventListener("click",e),()=>{window.removeEventListener("click",e)}}),[]);let k=C;k&&!(null===(p=x[k])||void 0===p?void 0:p.hidden)||(k=null===(f=Object.values(x).find((e=>{let{hidden:t}=e;return!t})))||void 0===f?void 0:f.id);const j=e=>{E((t=>(t!==e&&(null===d||void 0===d||d(e)),e)))};a.useEffect((()=>{k!==C&&j(k)})),a.useEffect((()=>{_&&E(_)}),[_]),a.useEffect((()=>{var e;(null===(e=w.selectedRef)||void 0===e?void 0:e.current)&&w.selectedRef.current.scrollIntoView()}),[w.selectedRef]);const I=(e,t)=>{const n=function(e,t,n){var r;return!(!e.section||e.setting)&&(!(!e.section.id||e.section.id!==n.id)||!((null===(r=e.page)||void 0===r?void 0:r.id)!==t||!e.section.title||e.section.title!==n.title))}(w,e,t);return a.createElement("div",{key:t.title,className:ho("section",{selected:n}),ref:n?w.selectedRef:void 0},t.showTitle&&a.createElement("h3",{className:ho("section-heading")},m?a.createElement(Ai.k,{gap:2,alignItems:"center"},t.title,a.createElement("div",{className:ho("section-right-adornment",{hidden:g})},m(t))):t.title),t.header&&(N?a.createElement("div",{className:ho("section-subheader")},t.header):t.header),t.items.map((e=>e.hidden?null:(e=>{let{title:t,element:n}=e;return a.createElement("div",{key:t,className:ho("section-item")},a.cloneElement(n,Object.assign(Object.assign({},n.props),{highlightedTitle:v&&t?yo(t,v):t})))})(e))))};return a.createElement($i,{value:w},a.createElement("div",{className:ho({view:u})},N?a.createElement(a.Fragment,null,a.createElement(uo,{inputRef:T,className:ho("search"),initialValue:n,onChange:y,autoFocus:!1,inputSize:"xl"}),a.createElement(oo,{items:b,onChange:j,activeItemId:k,className:ho("tabs")})):a.createElement("div",{className:ho("menu"),onClick:()=>{T.current&&T.current.focus()},onKeyDown:e=>{O.current&&O.current.handleKeyDown(e)&&e.preventDefault()}},a.createElement(Vi,null,s),a.createElement(uo,{inputRef:T,className:ho("search"),initialValue:n,onChange:y,placeholder:l,autoFocus:!0}),a.createElement(to,{ref:O,items:b,onChange:j,activeItemId:k})),a.createElement("div",{className:ho("page")},(e=>{if(!e)return"function"===typeof o?o():a.createElement("div",{className:ho("not-found")},c);const t=x[e].sections.filter((e=>!e.hidden));return a.createElement(a.Fragment,null,!N&&a.createElement(Vi,{hasSeparator:!0,onClose:h},go(b,e)),a.createElement("div",{className:ho("content")},t.map((t=>I(e,t)))))})(k))))}function yo(e,t){let n=e.slice(0);const r=[],i=Wi(t).split(" ").filter(Boolean);let o=0;for(const s of i){const e=new RegExp(s,"ig").exec(n);if(e){const t=e[0],i=e.index;i>0&&r.push(n.slice(0,i)),r.push(a.createElement("strong",{key:o++,className:ho("found")},t)),n=n.slice(i+t.length)}}return n&&r.push(n),r}function bo(e){let{name:t,value:n,id:r,defaultChecked:i,checked:o,indeterminate:s,onUpdate:l,onChange:c,controlRef:u,controlProps:d,onFocus:h,onBlur:p,disabled:f}=e;const m=a.useRef(null),[g,v]=_t(o,null!==i&&void 0!==i&&i,l),y=!s&&o,b=s?"mixed":g,x=Et(u,m);a.useLayoutEffect((()=>{m.current&&(m.current.indeterminate=Boolean(s))}),[s]);const w=a.useCallback((e=>{Yr.P.publish({componentId:"Checkbox",eventId:"click",domEvent:e,meta:{checked:e.target.checked}})}),[]);return{checked:g,inputProps:Object.assign(Object.assign({},d),{name:t,value:n,id:r,onFocus:h,onBlur:p,disabled:f,type:"checkbox",onChange:e=>{v(e.target.checked),c&&c(e)},onClickCapture:w,defaultChecked:i,checked:y,"aria-checked":b,ref:x})}}mo.Group=function(e){let{children:t}=e;return a.createElement(a.Fragment,null,t)},mo.Page=function(e){let{children:t}=e;return a.createElement(a.Fragment,null,t)},mo.Section=function(e){let{children:t}=e;return a.createElement(a.Fragment,null,t)},mo.Item=function(e){const{id:t,labelId:n,highlightedTitle:r,children:i,align:o="center",withBadge:s,renderTitleComponent:l=Ji,mode:c,description:u}=e,d=a.useContext(Qi),h=d.setting&&d.setting.id===t,{renderRightAdornment:p,showRightAdornmentOnHover:f}=fo(),m=a.createElement("span",{className:ho("item-title",{badge:s})},l(r));return a.createElement("div",{className:ho("item",{align:o,mode:c,selected:h}),ref:h?d.selectedRef:void 0},a.createElement("label",{className:ho("item-heading"),id:n},p?a.createElement(Ai.k,{className:ho("item-title-wrapper"),gap:3},m,a.createElement("div",{className:ho("item-right-adornment",{hidden:f})},p(e))):m,u?a.createElement("span",{className:ho("item-description")},u):null),a.createElement("div",{className:ho("item-content")},i))};const xo=(0,le.Ge)("control-label"),wo=a.forwardRef(((e,t)=>{let{children:n,className:r,labelClassName:i,title:o,style:s,disabled:l=!1,control:c,size:u="m",qa:d}=e;const h=a.cloneElement(c,{className:xo("indicator",c.props.className)});return a.createElement("label",{ref:t,title:o,style:s,className:xo({size:u,disabled:l},r),"data-qa":d},h,n?a.createElement("span",{className:xo("text",i)},n):null)}));wo.displayName="ControlLabel";const So=(0,le.Ge)("switch"),_o=a.forwardRef((function(e,t){const{size:n="m",disabled:r=!1,content:i,children:o,title:s,style:l,className:c,qa:u}=e,{checked:d,inputProps:h}=bo(Object.assign(Object.assign({},e),{controlProps:Object.assign(Object.assign({},e.controlProps),{role:"switch"})})),p=i||o,f=a.createElement("span",{className:So("indicator")},a.createElement("input",Object.assign({},h,{className:So("control")})),a.createElement("span",{className:So("outline")}),a.createElement("span",{className:So("slider")}));return a.createElement(wo,{ref:t,title:s,style:l,size:n,disabled:r,className:So({size:n,disabled:r,checked:d},c),labelClassName:So("text"),qa:u,control:f},p)}));const Co=(0,le.Ge)("radio-button"),Eo=a.forwardRef((function(e,t){const{disabled:n=!1,content:r,children:i,title:o}=e,{checked:s,inputProps:l}=function(e){let{name:t,value:n,checked:r,defaultChecked:i,disabled:o,controlRef:s,controlProps:l,onUpdate:c,onChange:u,onFocus:d,onBlur:h,id:p}=e;const f=ue(),m=a.useRef(null),[g,v]=a.useState(null!==i&&void 0!==i&&i),y="boolean"===typeof r,b=y?r:g,x=Et(s,m);return{checked:b,inputProps:Object.assign(Object.assign({},l),{name:t||f,value:n,id:p,onFocus:d,onBlur:h,disabled:o,type:"radio",onChange:e=>{y||v(e.target.checked),u&&u(e),c&&c(e.target.checked)},onChangeCapture:e=>{Yr.P.publish({componentId:"Radio",eventId:"click",domEvent:e})},checked:r,defaultChecked:i,"aria-checked":b,ref:x})}}(e),c=r||i,u=(0,ce.y)(c);return a.createElement("label",{className:Co("option",{disabled:n,checked:s}),ref:t,title:o},a.createElement("input",Object.assign({},l,{className:Co("option-control")})),a.createElement("span",{className:Co("option-outline")}),c&&a.createElement("span",{className:Co("option-text",{icon:u})},c))})),To=(0,le.Ge)("radio-button"),Oo=a.forwardRef((function(e,t){const{size:n="m",width:r,style:i,className:o,qa:s,children:l}=e;let c=e.options;c||(c=a.Children.toArray(l).map((e=>{let{props:t}=e;return{value:t.value,content:t.content||t.children,disabled:t.disabled,title:t.title}})));const u=a.useRef(null),d=a.useRef(),h=a.useCallback((e=>{if(!e)return;const t=u.current;if(!t)return;const n=d.current;if(n&&n!==e){const r=e=>{t.style.left="".concat(e.offsetLeft,"px"),t.style.width="".concat(e.offsetWidth,"px")};r(n),t.hidden=!1,r(e)}d.current=e}),[]),p=a.useCallback((e=>{e.currentTarget.hidden=!0}),[]),{containerProps:f,optionsProps:m}=function(e){var t,n;const{name:r,value:i,defaultValue:o,options:s=[],disabled:l,onUpdate:c,onChange:u,onFocus:d,onBlur:h}=e,p=ue(),[f,m]=a.useState(null!==o&&void 0!==o?o:null===(n=null===(t=s[0])||void 0===t?void 0:t.value)||void 0===n?void 0:n.toString()),g="undefined"!==typeof i,v=g?i:f,y=a.useCallback((e=>{g||m(e.target.value),u&&u(e),c&&c(e.target.value)}),[g,c,u]);return{containerProps:{role:"radiogroup","aria-disabled":l,"aria-label":e["aria-label"],"aria-labelledby":e["aria-labelledby"]},optionsProps:s.map((e=>({name:r||p,value:e.value,content:e.content,title:e.title,checked:v===String(e.value),disabled:l||e.disabled,onChange:y,onFocus:d,onBlur:h})))}}(Object.assign(Object.assign({},e),{options:c}));return a.createElement("div",Object.assign({},f,{ref:t,style:i,className:To({size:n,width:r},o),"data-qa":s}),a.createElement("div",{ref:u,className:To("plate"),onTransitionEnd:p,hidden:!0}),m.map((e=>a.createElement(Eo,Object.assign({},e,{key:e.value,ref:e.checked?h:void 0})))))}));Oo.Option=Eo;const No=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 13.5a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11ZM8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14ZM6.44 4.54c.43-.354.994-.565 1.56-.565 1.217 0 2.34.82 2.34 2.14 0 .377-.079.745-.298 1.1-.208.339-.513.614-.875.867-.217.153-.326.257-.379.328-.038.052-.038.07-.038.089a.75.75 0 0 1-1.5 0c0-.794.544-1.286 1.057-1.645.28-.196.4-.332.458-.426a.543.543 0 0 0 .074-.312c0-.3-.243-.641-.839-.641a.997.997 0 0 0-.608.223c-.167.138-.231.287-.231.418a.75.75 0 1 1-1.5 0c0-.674.345-1.22.78-1.577ZM8 12a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z",clipRule:"evenodd"})),ko=((0,Re.withNaming)({e:"__",m:"_",v:"_"}),(0,Re.withNaming)({n:"gc-",e:"__",m:"_",v:"_"})("help-popover")),jo=16;function Io(e){var t;return a.createElement(fi,Object.assign({},e,{className:ko(null,e.className)}),a.createElement("button",Object.assign({ref:e.buttonRef,type:"button"},e.buttonProps,{className:ko("button",null===(t=e.buttonProps)||void 0===t?void 0:t.className)}),a.createElement(we.J,{data:No,size:jo})))}const Po=e=>{let{text:t,popoverContent:n,className:r,contentClassName:i}=e;return(0,Le.jsxs)("div",{className:r,children:[t,"\xa0",(0,Le.jsx)(Io,{content:n,contentClassName:i})]})},Do=ae.v9,Ao=ae.I0;var Ro=n(80839);const Mo=(e,t)=>{const n=Ao();return[Do((n=>{var r;return null!==(r=(0,Ro.Cx)(n,e))&&void 0!==r?r:t})),a.useCallback((t=>{n((0,Ro.xI)(e,t))}),[n,e])]};var Lo=n(52317);const Fo=()=>Mo(Lo.Wm);var zo=n(81413);const Bo=(e,t)=>{let{sortValue:n,sortOrder:r=zo.hr}=e;return[a.useMemo((()=>{if(n)return{columnId:n,order:r}}),[n,r]),e=>{const n=Array.isArray(e)?e[0]:e;t({sortValue:null===n||void 0===n?void 0:n.columnId,sortOrder:null===n||void 0===n?void 0:n.order})}]};var Uo=n(51721),Ho=n(50134),Vo=n.n(Ho),Go=n(91668),Wo=n(35731),qo=n(87462),Zo=n(85528),Yo=n.n(Zo),Ko=(n(99898),n(63366)),Qo=n(15170),Xo=n.n(Qo),$o=1073741823,Jo="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof window?window:"undefined"!==typeof n.g?n.g:{};var ea=a.createContext||function(e,t){var n,r,i="__create-react-context-"+function(){var e="__global_unique_id__";return Jo[e]=(Jo[e]||0)+1}()+"__",o=function(e){function n(){for(var t,n=arguments.length,r=new Array(n),i=0;i{const e=Ca();return(0,Ta.mB)(e)};var Na=n(51688);let ka;!function(e){e.v1="v1",e.v2="v2"}(ka||(ka={}));const ja=e=>{let{type:t="switch",settingKey:n,title:r,description:i,helpPopoverContent:o,options:a,defaultValue:s,onValueUpdate:l}=e;const[c,u]=Mo(n,s),d=e=>{u(e),null===l||void 0===l||l()};return(0,Le.jsx)(mo.Item,{title:r,highlightedTitle:r,description:i,renderTitleComponent:e=>o?(0,Le.jsx)(Po,{className:$a("item-with-popup"),contentClassName:$a("popup"),text:e,popoverContent:o}):e,children:(e=>{switch(e){case"switch":return(0,Le.jsx)(_o,{checked:Boolean(c),onUpdate:d});case"radio":return a?(0,Le.jsx)(Oo,{value:String(c),onUpdate:d,children:a.map((e=>{let{value:t,content:n}=e;return(0,Le.jsx)(Oo.Option,{value:t,children:n},t)}))}):null;default:return null}})(t)})},Ia=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",d:"M6.886.773C7.29-.231 8.71-.231 9.114.773l1.472 3.667 3.943.268c1.08.073 1.518 1.424.688 2.118L12.185 9.36l.964 3.832c.264 1.05-.886 1.884-1.802 1.31L8 12.4l-3.347 2.101c-.916.575-2.066-.26-1.802-1.309l.964-3.832L.783 6.826c-.83-.694-.391-2.045.688-2.118l3.943-.268L6.886.773Z"})),Pa=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M11.494 13.2c.837-.482 1.006-.946 1.006-1.2 0-.35-.105-.692-.303-.981L9.072 6.435a1.854 1.854 0 0 1-.322-1.044V2.909C8.518 2.968 8.265 3 8 3s-.518-.032-.75-.09v2.48c0 .373-.112.737-.322 1.045L3.803 11.02c-.198.289-.303.63-.303.981 0 .254.169.718 1.006 1.2.813.468 2.043.8 3.494.8s2.68-.332 3.494-.8ZM8 .5c2 0 2.25 1 2.25 1.5v3.39c0 .072.021.141.062.2l3.125 4.584c.367.538.563 1.175.563 1.826 0 2-2.686 3.5-6 3.5S2 14 2 12c0-.652.196-1.288.563-1.826L5.69 5.59a.354.354 0 0 0 .061-.2V2C5.75 1.5 6 .5 8 .5Zm.084 7.626a.75.75 0 0 1 1.04.208l1.5 2.25a.75.75 0 1 1-1.248.832l-1.5-2.25a.75.75 0 0 1 .208-1.04Z",clipRule:"evenodd"})),Da=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M6.169 6.331a3 3 0 0 0-.833 1.6l-.338 1.912a1 1 0 0 0 1.159 1.159l1.912-.338a3 3 0 0 0 1.6-.833l3.07-3.07 2-2A.894.894 0 0 0 15 4.13 3.13 3.13 0 0 0 11.87 1a.894.894 0 0 0-.632.262l-2 2-3.07 3.07Zm3.936-1.814L7.229 7.392a1.5 1.5 0 0 0-.416.8L6.6 9.4l1.208-.213.057-.01a1.5 1.5 0 0 0 .743-.406l2.875-2.876a1.63 1.63 0 0 0-1.378-1.378Zm2.558.199a3.143 3.143 0 0 0-1.379-1.38l.82-.82a1.63 1.63 0 0 1 1.38 1.38l-.82.82ZM8 2.25a.75.75 0 0 0-.75-.75H4.5a3 3 0 0 0-3 3v7a3 3 0 0 0 3 3h7a3 3 0 0 0 3-3V8.75a.75.75 0 0 0-1.5 0v2.75a1.5 1.5 0 0 1-1.5 1.5h-7A1.5 1.5 0 0 1 3 11.5v-7A1.5 1.5 0 0 1 4.5 3h2.75A.75.75 0 0 0 8 2.25Z",clipRule:"evenodd"}));function Aa(e){let{children:t,mode:n}=e;return Do((e=>"single"===n?e.singleClusterMode:!e.singleClusterMode))?(0,Le.jsx)(a.Fragment,{children:t}):null}const Ra=JSON.parse('{"page.general":"General","section.appearance":"Appearance","page.experiments":"Experiments","section.experiments":"Experiments","page.editor":"Editor","section.dev-setting":"Development settings","settings.editor.autocomplete.title":"Enable autocomplete","settings.editor.autocomplete.description":"You\u2019re always able to get suggestions by pressing Ctrl+Space.","settings.editor.autocomplete-on-enter.title":"Accept suggestion on Enter","settings.editor.autocomplete-on-enter.description":"Controls whether suggestions should be accepted on Enter, in addition to Tab. Helps to avoid ambiguity between inserting new lines or accepting suggestions.","settings.theme.title":"Interface theme","settings.theme.option-dark":"Dark","settings.theme.option-light":"Light","settings.theme.option-system":"System","settings.language.title":"Interface language","settings.language.option-russian":"Russian","settings.language.option-english":"English","settings.binaryDataInPlainTextDisplay.title":"Display binary data in plain text","settings.binaryDataInPlainTextDisplay.description":"Available starting from version 24.1","settings.invertedDisks.title":"Inverted disks space indicators","settings.useNodesEndpoint.title":"Break the Nodes tab in Diagnostics","settings.useNodesEndpoint.popover":"Use /viewer/json/nodes endpoint for Nodes Tab in diagnostics. It could return incorrect data on some versions","settings.useVirtualTables.title":"Use table with data load on scroll for Nodes and Storage tabs","settings.useVirtualTables.popover":"It will increase performance, but could work unstable","settings.queryUseMultiSchema.title":"Allow queries with multiple result sets","settings.queryUseMultiSchema.popover":"Use \'multi\' schema for queries that enables queries with multiple result sets. Returns nothing on versions 23-3 and older"}'),Ma=(0,We.wZ)("ydb-user-settings",{en:Ra}),La=[{value:"system",content:Ma("settings.theme.option-system")},{value:"light",content:Ma("settings.theme.option-light")},{value:"dark",content:Ma("settings.theme.option-dark")}],Fa={settingKey:Lo.bw,title:Ma("settings.theme.title"),type:"radio",options:La},za=(We.Uo.Ru,Ma("settings.language.option-russian"),We.Uo.En,Ma("settings.language.option-english"),Lo.Px,Ma("settings.language.title"),We.Fp,{settingKey:Lo.N1,title:Ma("settings.binaryDataInPlainTextDisplay.title"),description:(0,Le.jsx)(Aa,{mode:"multi",children:Ma("settings.binaryDataInPlainTextDisplay.description")})}),Ba={settingKey:Lo.yT,title:Ma("settings.invertedDisks.title")},Ua={settingKey:Lo.UF,title:Ma("settings.useNodesEndpoint.title"),helpPopoverContent:Ma("settings.useNodesEndpoint.popover")},Ha={settingKey:Lo.ET,title:Ma("settings.useVirtualTables.title"),helpPopoverContent:Ma("settings.useVirtualTables.popover")},Va={settingKey:Lo.Rq,title:Ma("settings.queryUseMultiSchema.title"),helpPopoverContent:Ma("settings.queryUseMultiSchema.popover")},Ga={settingKey:Lo.y6,title:Ma("settings.editor.autocomplete.title"),description:Ma("settings.editor.autocomplete.description")},Wa={settingKey:Lo.XX,title:Ma("settings.editor.autocomplete-on-enter.title"),description:Ma("settings.editor.autocomplete-on-enter.description")},qa={id:"appearanceSection",title:Ma("section.appearance"),settings:[Fa,Ba,za]},Za={id:"experimentsSection",title:Ma("section.experiments"),settings:[Ua,Ha,Va]},Ya={id:"devSettingsSection",title:Ma("section.dev-setting"),settings:[Ga,Wa]},Ka={id:"generalPage",title:Ma("page.general"),icon:{data:Ia,height:14,width:14},sections:[qa]},Qa={id:"experimentsPage",title:Ma("page.experiments"),icon:{data:Pa},sections:[Za]},Xa=[Ka,{id:"editorPage",title:Ma("page.editor"),icon:{data:Da},sections:[Ya]},Qa],$a=Me("ydb-user-settings"),Ja=e=>{let{settings:t=Xa}=e;return(0,Le.jsx)(mo,{children:t.map((e=>{const{id:t,title:n,icon:r,sections:i=[]}=e;return(0,Le.jsx)(mo.Page,{id:t,title:n,icon:r,children:i.map((e=>{const{title:n,settings:r=[]}=e;return(0,Le.jsx)(mo.Section,{title:n,children:r.map((e=>(0,Le.jsx)(ja,{...e},e.settingKey)))},t)}))},t)}))})},es=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M14.78 7.47a.75.75 0 0 1 0 1.06l-2.5 2.5a.75.75 0 1 1-1.06-1.06l1.22-1.22H4.75a.75.75 0 0 1 0-1.5h7.69l-1.22-1.22a.75.75 0 0 1 1.06-1.06l2.5 2.5ZM9.5 4.25a.75.75 0 0 1-1.5 0V4a1.5 1.5 0 0 0-1.5-1.5H4A1.5 1.5 0 0 0 2.5 4v8A1.5 1.5 0 0 0 4 13.5h2.5A1.5 1.5 0 0 0 8 12v-.25a.75.75 0 0 1 1.5 0V12a3 3 0 0 1-3 3H4a3 3 0 0 1-3-3V4a3 3 0 0 1 3-3h2.5a3 3 0 0 1 3 3v.25Z",clipRule:"evenodd"})),ts=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M11.78 7.47a.75.75 0 0 1 0 1.06l-2.5 2.5a.75.75 0 1 1-1.06-1.06l1.22-1.22H1.75a.75.75 0 0 1 0-1.5h7.69L8.22 6.03a.75.75 0 0 1 1.06-1.06l2.5 2.5ZM4 11.75a.75.75 0 0 1 1.5 0V12A1.5 1.5 0 0 0 7 13.5h5a1.5 1.5 0 0 0 1.5-1.5V4A1.5 1.5 0 0 0 12 2.5H7A1.5 1.5 0 0 0 5.5 4v.25a.75.75 0 0 1-1.5 0V4a3 3 0 0 1 3-3h5a3 3 0 0 1 3 3v8a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3v-.25Z",clipRule:"evenodd"}));var ns=n(14146);const rs=JSON.parse('{"pages.query":"Query","pages.diagnostics":"Diagnostics","navigation-item.documentation":"Documentation","navigation-item.settings":"Settings","navigation-item.account":"Account","account.user":"YDB User","account.login":"Login","account.logout":"Logout"}'),is=JSON.parse('{"pages.query":"\u0420\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432","pages.diagnostics":"\u0414\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430","navigation-item.documentation":"\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f","navigation-item.settings":"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438","navigation-item.account":"\u0410\u043a\u043a\u0430\u0443\u043d\u0442","account.user":"\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c YDB","account.login":"\u0412\u043e\u0439\u0442\u0438","account.logout":"\u0412\u044b\u0439\u0442\u0438"}'),os=(0,We.wZ)("ydb-aside-navigation",{ru:is,en:rs}),as=Me("kv-ydb-internal-user");function ss(){const{user:e}=Do((e=>e.authentication)),t=_a(),n=Ao();return(0,Le.jsxs)("div",{className:as(),children:[(0,Le.jsxs)("div",{className:as("user-info-wrapper"),children:[(0,Le.jsx)("div",{className:as("ydb-internal-user-title"),children:os("account.user")}),e&&(0,Le.jsx)("div",{className:as("username"),children:e})]}),e?(0,Le.jsx)(Ie.z,{view:"flat-secondary",title:os("account.logout"),onClick:()=>{n(ns.kS)},children:(0,Le.jsx)(we.J,{data:es})}):(0,Le.jsx)(Ie.z,{view:"flat-secondary",title:os("account.login"),onClick:()=>{t.push((0,Ta.ax)(Ta.ZP.auth,void 0,{returnUrl:encodeURIComponent(location.href)}))},children:(0,Le.jsx)(we.J,{data:ts})})]})}const ls=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M12 3.5H4A1.5 1.5 0 0 0 2.5 5v6A1.5 1.5 0 0 0 4 12.5h8a1.5 1.5 0 0 0 1.5-1.5V5A1.5 1.5 0 0 0 12 3.5ZM4 2a3 3 0 0 0-3 3v6a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V5a3 3 0 0 0-3-3H4Zm.47 8.53a.75.75 0 0 1 0-1.06L5.94 8 4.47 6.53a.75.75 0 0 1 1.06-1.06l2 2a.75.75 0 0 1 0 1.06l-2 2a.75.75 0 0 1-1.06 0ZM8.75 9.5a.75.75 0 0 0 0 1.5h2.5a.75.75 0 0 0 0-1.5h-2.5Z",clipRule:"evenodd"})),cs=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("g",{clipPath:"url(#a)"},a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M9.235 1a.75.75 0 0 1 .74.56l2.034 7.726 1.09-1.908A.75.75 0 0 1 13.75 7h1.5a.75.75 0 0 1 0 1.5h-1.065l-1.784 3.122a.75.75 0 0 1-1.376-.181l-1.71-6.496-2.083 9.466a.75.75 0 0 1-1.446.07L3.544 7.55l-.65 1.085A.75.75 0 0 1 2.25 9H.75a.75.75 0 1 1 0-1.5h1.075l1.282-2.136a.75.75 0 0 1 1.357.155l1.898 5.868 2.156-9.798A.75.75 0 0 1 9.235 1Z",clipRule:"evenodd"})),a.createElement("defs",null,a.createElement("clipPath",{id:"a"},a.createElement("path",{fill:"currentColor",d:"M0 0h16v16H0z"}))));var us=n(24015);const ds={summaryTab:"summaryTab",queryTab:"queryTab",diagnosticsTab:"diagnosticsTab",metricsTab:"metricsTab"},hs=[{id:us.uw.overview,title:"Overview"},{id:us.uw.acl,title:"ACL"}],ps=[{id:us.uw.schema,title:"Schema"}],fs=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,Ta.ax)(Ta.ZP.tenant,void 0,e)};function ms(e){let{children:t,userSettings:n}=e;const r=Be("AsideNavigation"),i=function(){const e=Ca(),t=_a(),[,n]=Mo(Lo.pf),{tenantPage:r}=Do((e=>e.tenant)),{pathname:i}=e,o=(0,Ta.mB)(e),s=i===Ta.ZP.tenant;return a.useMemo((()=>s?[{id:us.m2.query,title:os("pages.query"),icon:ls,iconSize:20,location:fs({...o,[us.bS]:us.m2.query})},{id:us.m2.diagnostics,title:os("pages.diagnostics"),icon:cs,iconSize:20,location:fs({...o,[us.bS]:us.m2.diagnostics})}].map((e=>{const i=e.id===r;return{id:e.id,title:e.title,icon:e.icon,iconSize:e.iconSize,current:i,onItemClick:()=>{n(e.id),t.push(e.location)}}})):[]),[r,s,n,t,o])}();return(0,Le.jsx)(r,{settings:(0,Le.jsx)(Ja,{settings:n}),menuItems:i,ydbInternalUser:(0,Le.jsx)(ss,{}),content:t})}const gs={top:0,right:0,bottom:0,left:0};var vs=n(3027),ys=n(83326),bs=n.n(ys);const xs=Me("info-viewer"),ws=e=>{let{title:t,info:n,dots:r=!0,size:i,className:o,multilineLabels:s,renderEmptyState:l}=e;return n&&n.length||!l?(0,Le.jsxs)("div",{className:xs({size:i},o),children:[t&&(0,Le.jsx)("div",{className:xs("title"),children:t}),n&&n.length>0?(0,Le.jsx)("div",{className:xs("items"),children:n.map(((e,t)=>(0,Le.jsxs)("div",{className:xs("row"),children:[(0,Le.jsxs)("div",{className:xs("label"),children:[(0,Le.jsx)("div",{className:xs("label-text",{multiline:s}),children:e.label}),r&&(0,Le.jsx)("div",{className:xs("dots")})]}),(0,Le.jsx)("div",{className:xs("value"),children:e.value})]},t)))}):(0,Le.jsxs)(a.Fragment,{children:["No ",t," data"]})]}):(0,Le.jsx)(a.Fragment,{children:l({title:t,size:i})})},Ss=ws;function _s(e,t){var n;return null!==(n=t[e])&&void 0!==n?n:e}function Cs(e,t,n,r){const i=n[e]||r;return i?i(t):t}function Es(e){let{values:t,labels:n,defaultValueFormatter:r}=e;return(e,i)=>({label:_s(e,n||{}),value:Cs(e,i,t||{},r)})}const Ts=(e,t)=>t?Object.entries(t).map((t=>{let[n,r]=t;return e(n,r)})).filter((e=>{let{value:t}=e;return Boolean(t)})):[],Os=Me("ydb-node-endpoints-tooltip-content"),Ns=e=>{let{data:t}=e;const n=[];return null!==t&&void 0!==t&&t.Rack&&n.push({label:"Rack",value:t.Rack}),null!==t&&void 0!==t&&t.Endpoints&&t.Endpoints.length&&t.Endpoints.forEach((e=>{let{Name:t,Address:r}=e;t&&r&&n.push({label:t,value:r})})),(0,Le.jsx)(Ss,{className:Os(null),info:n,dots:!1,size:"s"})};var ks=n(4119);const js=Es({values:{ChangeTime:e=>(0,ks.fG)(e)},labels:{TabletId:"Tablet"},defaultValueFormatter:e=>e&&String(e)}),Is=e=>{let{data:t={},className:n}=e;const{TabletId:r,NodeId:i,State:o,Type:a,ChangeTime:s,Generation:l}=t,c=Ts(js,{TabletId:r,NodeId:i,State:o,Type:a,ChangeTime:s,Generation:l});return(0,Le.jsx)(Ss,{className:n,info:c,dots:!1,size:"s"})},Ps=Es({values:{Usage:e=>e&&"".concat((100*Number(e)).toFixed(2)," %")},labels:{Name:"Pool"},defaultValueFormatter:e=>e&&String(e)}),Ds=e=>{let{data:t={},className:n}=e;const r=Ts(Ps,t);return(0,Le.jsx)(Ss,{className:n,info:r,dots:!1,size:"s"})},As=Me("node-tootltip"),Rs=e=>{const{data:t}=e;return t&&(0,Le.jsx)("div",{className:As(),children:(0,Le.jsx)("table",{children:(0,Le.jsxs)("tbody",{children:[(0,Le.jsxs)("tr",{children:[(0,Le.jsx)("td",{className:As("label"),children:"ID"}),(0,Le.jsx)("td",{className:As("value"),children:t.nodeId||"?"})]}),(0,Le.jsxs)("tr",{children:[(0,Le.jsx)("td",{className:As("label"),children:"Rack"}),(0,Le.jsx)("td",{className:As("value"),children:t.rack||"?"})]}),t.connected&&t.capacity?(0,Le.jsxs)("tr",{children:[(0,Le.jsx)("td",{className:As("label"),children:"Net"}),(0,Le.jsx)("td",{className:As("value"),children:"".concat(t.connected," / ").concat(t.capacity)})]}):null]})})})},Ms=Me("tabletsOverall-tooltip"),Ls=e=>{const{data:t}=e;return t&&(0,Le.jsx)("div",{className:Ms(),children:(0,Le.jsx)("table",{children:(0,Le.jsx)("tbody",{children:t.map(((e,t)=>(0,Le.jsxs)("tr",{children:[(0,Le.jsxs)("td",{className:Ms("label"),children:[e.color,":"]}),(0,Le.jsx)("td",{className:Ms("value"),children:"".concat(e.value,"/").concat(e.total," (").concat(e.percents.toFixed(2),"%)")})]},t)))})})})},Fs=Me("histogram-tooltip"),zs=e=>{const{data:t}=e;return t&&(0,Le.jsx)("div",{className:Fs(),children:(0,Le.jsx)("table",{children:(0,Le.jsxs)("tbody",{children:[(0,Le.jsxs)("tr",{children:[(0,Le.jsx)("td",{className:Fs("label"),children:"Count"}),(0,Le.jsx)("td",{className:Fs("value"),children:t.count||"?"})]}),(0,Le.jsxs)("tr",{children:[(0,Le.jsx)("td",{className:Fs("label"),children:"From"}),(0,Le.jsx)("td",{className:Fs("value"),children:t.leftBound||"?"})]}),(0,Le.jsxs)("tr",{children:[(0,Le.jsx)("td",{className:Fs("label"),children:"To"}),(0,Le.jsx)("td",{className:Fs("value"),children:t.rightBound||"?"})]})]})})})},Bs=Me("cell-tooltip"),Us=Me("json-tooltip"),Hs={pool:e=>(0,Le.jsx)(Ds,{data:e}),tablet:e=>(0,Le.jsx)(Is,{data:e}),node:e=>(0,Le.jsx)(Rs,{data:e}),nodeEndpoints:e=>(0,Le.jsx)(Ns,{data:e}),tabletsOverall:e=>(0,Le.jsx)(Ls,{data:e}),histogram:e=>(0,Le.jsx)(zs,{data:e}),cell:e=>(0,Le.jsx)("div",{className:Bs(),children:e}),json:e=>(0,Le.jsx)("div",{className:Us(),children:(0,Le.jsx)(bs(),{data:e,search:!1,isExpanded:()=>!0,className:Us("inspector")})})};const Vs=(0,ae.$j)((e=>{const{toolTipVisible:t,currentHoveredRef:n,data:r,templateType:i,additionalData:o,positions:a}=e.tooltip,{popupClassName:s}=o||{};return{toolTipVisible:t,currentHoveredRef:n,data:r,template:Hs[i],additionalData:o,positions:a,popupClassName:s}}),{hideTooltip:vs.i8})((function(e){var t,n;const r=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{rect:t,contextElement:n}=e,r=a.useRef(gs),i=a.useRef({contextElement:n,getBoundingClientRect(){const{top:e,right:t,bottom:n,left:i}=r.current;return{top:e,right:t,bottom:n,left:i,width:t-i,height:n-e}}});if(i.current.contextElement=n,t){const{top:e=0,left:n=0,right:i=n,bottom:o=e}=t;r.current={top:e,right:i,bottom:o,left:n}}else r.current=gs;return i}({rect:{top:null===(t=e.positions)||void 0===t?void 0:t.top,left:null===(n=e.positions)||void 0===n?void 0:n.left}});a.useEffect((()=>(window.addEventListener("scroll",i,!0),()=>{window.removeEventListener("scroll",i)})),[]);const i=()=>{const{hideTooltip:t,toolTipVisible:n}=e;n&&setTimeout((()=>t()),500)},{className:o="",toolTipVisible:s,currentHoveredRef:l,data:c,additionalData:u,positions:d}=e;return(0,Le.jsx)("div",{className:"redux-tooltip ".concat(o),children:d?((t,n,i,o)=>{const{template:s,popupClassName:l,hideTooltip:c}=e;return(0,Le.jsx)(a.Fragment,{children:(0,Le.jsx)(ti,{open:t,placement:["top","bottom","left","right"],contentClassName:l,anchorRef:r,onOutsideClick:c,children:i&&s(i,o)})})})(s,0,c,u):((t,n,r,i)=>{const{template:o,popupClassName:a,hideTooltip:s}=e;return(0,Le.jsx)(ti,{open:t,anchorRef:{current:n},hasArrow:!0,placement:["top","bottom","left","right"],className:a,onOutsideClick:s,children:r&&o(r,i)})})(s,l,c,u)})}));function Gs(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"unknown";const t=()=>null;return t.displayName="Slot(".concat(e,")"),t.__slotName=e,t}function Ws(e){return"function"===typeof e&&"__slotName"in e}class qs{constructor(e){this.children=null,this.slots=void 0;const t=[];this.slots=new Map,a.Children.forEach(e,(e=>{if(n=e,a.isValidElement(n)&&Ws(n.type)){const{type:t,props:n,ref:r}=e;if(this.slots.has(t))throw new Error('Duplicate slot elements with name "'.concat(t.__slotName,'" found.'));this.slots.set(t,{name:t.__slotName,props:n,ref:r,rendered:n.children})}else null!==e&&void 0!==e&&""!==e&&t.push(e);var n}));t.length>0&&(this.children=t)}get(e){if(!Ws(e))throw new Error('Invalid slot component. Should be a component created using "createSlot".');return this.slots.get(e)}}var Zs=n(99337);const Ys=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M3.03 1.97a.75.75 0 0 0-1.06 1.06l.83.83A8.206 8.206 0 0 0 .5 6.876l-.26.585a1.328 1.328 0 0 0 0 1.079l.26.585a8.208 8.208 0 0 0 11.434 3.87l1.036 1.035a.75.75 0 1 0 1.06-1.06l-11-11Zm7.788 9.908-1.294-1.293a3 3 0 0 1-4.109-4.109L3.866 4.927A6.707 6.707 0 0 0 1.87 7.486L1.641 8l.23.515a6.708 6.708 0 0 0 8.947 3.363ZM6.55 7.611A1.502 1.502 0 0 0 8.389 9.45L6.55 7.611Zm1.658-2.604 2.784 2.784a3 3 0 0 0-2.784-2.784Zm5.92 3.508a6.704 6.704 0 0 1-.915 1.496l1.065 1.066A8.203 8.203 0 0 0 15.5 9.125l.26-.585a1.328 1.328 0 0 0 0-1.08l-.26-.584A8.208 8.208 0 0 0 5.572 2.37L6.81 3.61a6.708 6.708 0 0 1 7.32 3.877l.228.514-.228.515Z",clipRule:"evenodd"})),Ks=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M1.87 8.515 1.641 8l.229-.515a6.708 6.708 0 0 1 12.26 0l.228.515-.229.515a6.708 6.708 0 0 1-12.259 0ZM.5 6.876l-.26.585a1.328 1.328 0 0 0 0 1.079l.26.584a8.208 8.208 0 0 0 15 0l.26-.584a1.328 1.328 0 0 0 0-1.08l-.26-.584a8.208 8.208 0 0 0-15 0ZM9.5 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z",clipRule:"evenodd"}));var Qs,Xs;function $s(){return $s=Object.assign?Object.assign.bind():function(e){for(var t=1;te.authentication)),[l,c]=a.useState(""),[u,d]=a.useState(""),[h,p]=a.useState(""),[f,m]=a.useState(""),[g,v]=a.useState(!1);a.useEffect((()=>{var e,t,n,r;null!==s&&void 0!==s&&null!==(e=s.data)&&void 0!==e&&null!==(t=e.error)&&void 0!==t&&t.includes("user")&&p(s.data.error),null!==s&&void 0!==s&&null!==(n=s.data)&&void 0!==n&&null!==(r=n.error)&&void 0!==r&&r.includes("password")&&m(s.data.error)}),[s]);const y=()=>{n((0,ns.YR)(l,u)).then((()=>{if(o){const e=decodeURIComponent(o.toString()),t=new URL(e),n=t.pathname+t.search;r.replace(n)}}))},b=e=>{13===e.keyCode&&y()};return(0,Le.jsxs)("section",{className:el(),children:[(0,Le.jsxs)("form",{className:el("form-wrapper"),children:[(0,Le.jsxs)("div",{className:el("header"),children:[(0,Le.jsxs)("div",{className:el("logo"),children:[(0,Le.jsx)(we.J,{data:Js,size:24}),"YDB"]}),(0,Le.jsx)(si,{href:"http://ydb.tech/docs",target:"_blank",children:"Documentation"})]}),(0,Le.jsx)("h2",{className:el("title"),children:"Sign in"}),(0,Le.jsx)("div",{className:el("field-wrapper"),children:(0,Le.jsx)(Ii,{value:l,onUpdate:e=>{c(e),p("")},placeholder:"Username",error:h,onKeyDown:b,size:"l",autoFocus:!0})}),(0,Le.jsxs)("div",{className:el("field-wrapper"),children:[(0,Le.jsx)(Ii,{value:u,onUpdate:e=>{d(e),m("")},type:g?"text":"password",placeholder:"Password",error:f,onKeyDown:b,size:"l"}),(0,Le.jsx)(Ie.z,{onClick:()=>{v((e=>!e))},size:"l",className:el("show-password-button"),children:(0,Le.jsx)(we.J,{data:g?Ys:Ks,size:16})})]}),(0,Le.jsx)(Ie.z,{view:"action",onClick:y,width:"max",size:"l",disabled:Boolean(!l||h||f),className:el("button-sign-in"),children:"Sign in"})]}),t&&r.length>1&&(0,Le.jsx)(Ie.z,{onClick:()=>{r.go(-1)},className:el("close"),children:(0,Le.jsx)(we.J,{data:tt.Z,size:24})})]})},nl=(0,le.Ge)("skeleton");function rl(e){let{className:t,style:n,qa:r}=e;return a.createElement("div",{className:nl(null,t),style:n,"data-qa":r})}var il=n(63041),ol=n.n(il),al=n(75850);const sl=(e,t)=>{let{openDelay:n=250,closeDelay:r,preventTriggerOnFocus:i=!1}=t;const[o,s,l]=function(e){const[t,n]=a.useState(e);return[t,a.useCallback((()=>n(!0)),[]),a.useCallback((()=>n(!1)),[]),a.useCallback((()=>n((e=>!e))),[])]}(!1),c=a.useRef(),u=a.useRef(!1);return a.useEffect((()=>{if(e)return e.addEventListener("mouseenter",t),e.addEventListener("mouseleave",o),e.addEventListener("keydown",h),i||(e.addEventListener("focus",a),e.addEventListener("blur",d)),()=>{e.removeEventListener("mouseenter",t),e.removeEventListener("mouseleave",o),e.removeEventListener("focus",a),e.removeEventListener("blur",d),e.removeEventListener("keydown",h)};function t(){clearTimeout(c.current),c.current=window.setTimeout(s,n)}function o(){clearTimeout(c.current),c.current=window.setTimeout(l,r)}function a(e){u.current||document.activeElement!==e.target||(u.current=!0,clearTimeout(c.current),s())}function d(e){u.current&&!e.currentTarget.contains(e.relatedTarget)&&(u.current=!1,clearTimeout(c.current),l())}function h(e){e.key===Zr.V.ESCAPE&&(clearTimeout(c.current),l())}}),[e,s,l,n,r,i]),o},ll=(0,le.Ge)("tooltip"),cl=["bottom","top"],ul=e=>{const{children:t,content:n,disabled:r,placement:i=cl,qa:o,id:s,className:l,style:c,disablePortal:u,contentClassName:d,openDelay:h=1e3,closeDelay:p}=e,[f,m]=a.useState(null),g=sl(f,{openDelay:h,closeDelay:p,preventTriggerOnFocus:!0}),v=a.Children.only(t),y=Et(m,v.ref);return a.createElement(a.Fragment,null,a.cloneElement(v,{ref:y}),f?a.createElement(ti,{id:s,role:"tooltip",className:ll(null,l),style:c,open:g&&!r,placement:i,anchorRef:{current:f},disablePortal:u,disableEscapeKeyDown:!0,disableOutsideClick:!0,disableLayer:!0,qa:o},a.createElement("div",{className:ll("content",d)},a.createElement(Fi.x,{variant:"body-short",color:"complementary"},n))):null)},dl=Me("clipboard-button");function hl(e){let{className:t,status:n,title:r,...i}=e;return(0,Le.jsx)(ul,{content:"success"===n?"Copied!":r||"Copy",placement:"bottom-start",children:(0,Le.jsx)(Ie.z,{...i,className:dl(null,t),children:(0,Le.jsx)(Ie.z.Icon,{children:(0,Le.jsx)(at,{status:n,size:16})})})})}function pl(e){let{text:t,...n}=e;return(0,Le.jsx)(ut,{text:t,timeout:1e3,children:e=>(0,Le.jsx)(hl,{...n,status:e})})}a.Component;a.Component;var fl=function(e,t){return"function"===typeof e?e(t):e},ml=function(e,t){return"string"===typeof e?(0,Go.ob)(e,null,null,t):e},gl=function(e){return e},vl=a.forwardRef;"undefined"===typeof vl&&(vl=gl);var yl=vl((function(e,t){var n=e.innerRef,r=e.navigate,i=e.onClick,o=(0,Ko.Z)(e,["innerRef","navigate","onClick"]),s=o.target,l=(0,qo.Z)({},o,{onClick:function(e){try{i&&i(e)}catch(t){throw e.preventDefault(),t}e.defaultPrevented||0!==e.button||s&&"_self"!==s||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)||(e.preventDefault(),r())}});return l.ref=gl!==vl&&t||n,a.createElement("a",l)}));var bl=vl((function(e,t){var n=e.component,r=void 0===n?yl:n,i=e.replace,o=e.to,s=e.innerRef,l=(0,Ko.Z)(e,["component","replace","to","innerRef"]);return a.createElement(ra.Consumer,null,(function(e){e||(0,Wo.Z)(!1);var n=e.history,c=ml(fl(o,e.location),e.location),u=c?n.createHref(c):"",d=(0,qo.Z)({},l,{href:u,navigate:function(){var t=fl(o,e.location),r=(0,Go.Ep)(e.location)===(0,Go.Ep)(ml(t));(i||r?n.replace:n.push)(t)}});return gl!==vl?d.ref=t||s:d.innerRef=s,a.createElement(r,d)}))})),xl=function(e){return e},wl=a.forwardRef;"undefined"===typeof wl&&(wl=xl);wl((function(e,t){var n=e["aria-current"],r=void 0===n?"page":n,i=e.activeClassName,o=void 0===i?"active":i,s=e.activeStyle,l=e.className,c=e.exact,u=e.isActive,d=e.location,h=e.sensitive,p=e.strict,f=e.style,m=e.to,g=e.innerRef,v=(0,Ko.Z)(e,["aria-current","activeClassName","activeStyle","className","exact","isActive","location","sensitive","strict","style","to","innerRef"]);return a.createElement(ra.Consumer,null,(function(e){e||(0,Wo.Z)(!1);var n=d||e.location,i=ml(fl(m,n),n),y=i.pathname,b=y&&y.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1"),x=b?fa(n.pathname,{path:b,exact:c,sensitive:h,strict:p}):null,w=!!(u?u(x,n):x),S="function"===typeof l?l(w):l,_="function"===typeof f?f(w):f;w&&(S=function(){for(var e=arguments.length,t=new Array(e),n=0;n{let{className:t,to:n,onClick:r,...i}=e;return n?(0,Le.jsx)(bl,{to:n,onClick:r,className:Sl({view:"normal"},t),...i}):(0,Le.jsx)("span",{className:t,onClick:r,children:i.children})};var Cl=n(67585);const El=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0Zm-6 2.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8.75 5a.75.75 0 0 0-1.5 0v2.5a.75.75 0 0 0 1.5 0V5Z",clipRule:"evenodd"}));var Tl=n(71586);const Ol=Me("ydb-status-icon"),Nl={[al.K.Blue]:Cl.Z,[al.K.Yellow]:El,[al.K.Orange]:Tl.Z,[al.K.Red]:El};function kl(e){let{status:t=al.K.Grey,size:n="s",mode:r="color",className:i}=e;const o={state:t.toLowerCase(),size:n};return"icons"===r&&t in Nl?(0,Le.jsx)(we.J,{className:Ol("status-icon",o,i),data:Nl[t]}):(0,Le.jsx)("div",{className:Ol("status-color",o,i)})}const jl=Me("entity-status");function Il(e){let{status:t=al.K.Grey,name:n="",label:r,path:i,iconPath:o,size:a="s",mode:s="color",showStatus:l=!0,externalLink:c=!1,withLeftTrim:u=!1,hasClipboardButton:d,clipboardButtonAlwaysVisible:h=!1,className:p,additionalControls:f}=e;const m=()=>l?(0,Le.jsx)(kl,{className:jl("icon"),status:t,size:a,mode:s}):null;return(0,Le.jsxs)("div",{className:jl(null,p),title:n,children:[o?(g=o,(0,Le.jsx)(si,{target:"_blank",href:g,children:m()})):m(),r&&(0,Le.jsx)("span",{title:r,className:jl("label",{size:a,state:t.toLowerCase()}),children:r}),(0,Le.jsx)("span",{className:jl("link",{"with-left-trim":u}),children:i?c?(0,Le.jsx)(si,{className:jl("name"),href:i,children:n}):(0,Le.jsx)(_l,{className:jl("name"),to:i,children:n}):n&&(0,Le.jsx)("span",{className:jl("name"),children:n})}),d&&(0,Le.jsx)(pl,{text:n,size:"s",className:jl("clipboard-button",{visible:h})}),f]});var g}var Pl=n(77915),Dl=n(905);const Al=Dl.h.injectEndpoints({endpoints:e=>({getClusterNodes:e.query({queryFn:async()=>{try{const e=await window.api.getClusterNodes(),{SystemStateInfo:t=[]}=e;return{data:t.map((e=>({...e,uptime:(0,ks.fG)(e.StartTime)})))}}catch(e){return{error:e}}},providesTags:["All"]})}),overrideExisting:"throw"});var Rl=n(79061),Ml=n(94076),Ll=n(30601);const Fl=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0;const n=e.reduce(((e,t)=>(t.Version&&(e[t.Version]?e[t.Version]=e[t.Version]+1:e[t.Version]=1),e)),{});return Object.keys(n).map((r=>({title:r,version:r,color:null===t||void 0===t?void 0:t.get((0,Ll.H)(r)),value:n[r]/e.length*100})))};var zl=n(17095);function Bl(e,t){let n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return{...e,default:t,decode:function(){const r=e.decode(...arguments);return void 0===r||n&&null===r?t:r}}}function Ul(e,t){if(null==e)return e;if(0===e.length&&(!t||t&&""!==e))return null;const n=e instanceof Array?e[0]:e;return null==n||t||""!==n?n:null}function Hl(e){const t=Ul(e,!0);return null==t?t:String(t)}function Vl(e){const t=function(e){return null==e||e instanceof Array?e:""===e?[]:[e]}(e);return t}const Gl={encode:function(e){return null==e?e:String(e)},decode:Hl},Wl={encode:function(e){return e},decode:Vl};'{}[],":'.split("").map((e=>[e,encodeURIComponent(e)]));function ql(e,t){const n={},r=Object.keys(t);for(const i of r){const r=t[i];e[i]?n[i]=e[i].encode(t[i]):n[i]=null==r?r:String(r)}return n}const Zl=new class{constructor(){this.paramsMap=new Map,this.registeredParams=new Map}set(e,t,n,r){this.paramsMap.set(e,{stringified:t,decoded:n,decode:r})}has(e,t,n){if(!this.paramsMap.has(e))return!1;const r=this.paramsMap.get(e);return!!r&&(r.stringified===t&&(null==n||r.decode===n))}get(e){var t;if(this.paramsMap.has(e))return null==(t=this.paramsMap.get(e))?void 0:t.decoded}registerParams(e){for(const t of e){const e=this.registeredParams.get(t)||0;this.registeredParams.set(t,e+1)}}unregisterParams(e){for(const t of e){const e=(this.registeredParams.get(t)||0)-1;e<=0?(this.registeredParams.delete(t),this.paramsMap.has(t)&&this.paramsMap.delete(t)):this.registeredParams.set(t,e)}}clear(){this.paramsMap.clear(),this.registeredParams.clear()}};function Yl(e,t,n,r){var i;if(!n||!t.length)return e;let o={...e},a=!1;for(const s of t)Object.prototype.hasOwnProperty.call(o,s)||(o[s]=null!=(i=n[s])?i:r,a=!0);return a?o:e}const Kl=Object.prototype.hasOwnProperty;function Ql(e,t){return e===t?0!==e||0!==t||1/e===1/t:e!==e&&t!==t}function Xl(e,t,n){var r,i;if(Ql(e,t))return!0;if("object"!==typeof e||null===e||"object"!==typeof t||null===t)return!1;const o=Object.keys(e),a=Object.keys(t);if(o.length!==a.length)return!1;for(let s=0;s{if(ec===t&&nc===e&&tc===n)return rc;ec=t,nc=e;const r=e(null!=t?t:"");tc=n;const i=function(e){if(e)return Object.fromEntries(e.split("\n").map((e=>e.split("\0"))))}(n);for(let[o,a]of Object.entries(r)){(null==i?void 0:i[o])&&(delete r[o],o=i[o],r[o]=a);const e=rc[o];Xl(a,e)&&(r[o]=e)}return rc=r,r},oc={searchStringToObject:function(e){const t=new URLSearchParams(e),n={};for(let[r,i]of t)Object.prototype.hasOwnProperty.call(n,r)?Array.isArray(n[r])?n[r].push(i):n[r]=[n[r],i]:n[r]=i;return n},objectToSearchString:function(e){const t=new URLSearchParams,n=Object.entries(e);for(const[r,i]of n)if(void 0!==i&&null!==i)if(Array.isArray(i))for(const e of i)t.append(r,null!=e?e:"");else t.append(r,i);return t.toString()},updateType:"pushIn",includeKnownParams:void 0,includeAllParams:!1,removeDefaultsFromUrl:!1,enableBatching:!1,skipUpdateWhenNoChange:!0};function ac(e,t){null==t&&(t={});const n={...e,...t};return t.params&&e.params&&(n.params={...e.params,...t.params}),n}const sc={adapter:{},options:oc},lc=a.createContext(sc);function cc(e){let{children:t,adapter:n,options:r}=e;const{adapter:i,options:o}=a.useContext(lc),s=a.useMemo((()=>({adapter:null!=n?n:i,options:ac(o,r)})),[n,r,i,o]);return a.createElement(lc.Provider,{value:s},t)}function uc(e){let{children:t,adapter:n,options:r}=e;const i=n;return i?a.createElement(i,null,(e=>a.createElement(cc,{adapter:e,options:r},t))):a.createElement(cc,{options:r},t)}function dc(e){let{changes:t,updateType:n,currentSearchString:r,paramConfigMap:i,options:o}=e;const{searchStringToObject:a,objectToSearchString:s}=o;let l;null==n&&(n=o.updateType);const c=ic(a,r),u=Yl(i,Object.keys(t),o.params);let d,h;if("function"===typeof t){d=t($l(c,u,Zl))}else d=t;return l=ql(u,d),o.removeDefaultsFromUrl&&function(e,t){var n;for(const r in e)void 0!==(null==(n=t[r])?void 0:n.default)&&void 0!==e[r]&&t[r].encode(t[r].default)===e[r]&&(e[r]=void 0)}(l,u),l=function(e,t){var n;let r={};for(const i in e)null!=(null==(n=t[i])?void 0:n.urlName)?r[t[i].urlName]=e[i]:r[i]=e[i];return r}(l,u),h=s("push"===n||"replace"===n?l:{...c,...l}),(null==h?void 0:h.length)&&"?"!==h[0]&&(h="?".concat(h)),null!=h?h:""}const hc=e=>e(),pc=e=>setTimeout((()=>e()),0),fc=[];function mc(e,t){const{adapter:n,options:r}=function(){const e=a.useContext(lc);if(void 0===e||e===sc)throw new Error("useQueryParams must be used within a QueryParamProvider");return e}(),[i]=(0,a.useState)(Jl),{paramConfigMap:o,options:s}=function(e,t){let n,r;void 0===e?(n={},r=t):Array.isArray(e)?(n=Object.fromEntries(e.map((e=>[e,"inherit"]))),r=t):(n=e,r=t);return{paramConfigMap:n,options:r}}(e,t),l=(0,a.useMemo)((()=>ac(r,s)),[r,s]);let c=function(e,t){var n,r,i;const o={};let a=!1;const s=Object.keys(e);let l=s;if(t.includeKnownParams||!1!==t.includeKnownParams&&0===s.length){const e=Object.keys(null!=(n=t.params)?n:{});l.push(...e)}for(const c of l){const n=e[c];null==n||"object"!==typeof n?(a=!0,o[c]=null!=(i=null==(r=t.params)?void 0:r[c])?i:Gl):o[c]=n}return a?o:e}(o,l);const u=ic(l.searchStringToObject,n.location.search,function(e){let t;for(const n in e)if(e[n].urlName){const r=e[n].urlName,i="".concat(r,"\0").concat(n);t?t.push(i):t=[i]}return t?t.join("\n"):void 0}(c));l.includeAllParams&&(c=Yl(c,Object.keys(u),l.params,Gl));const d=i(u,c,Zl),h=Object.keys(c).join("\0");(0,a.useEffect)((()=>{const e=h.split("\0");return Zl.registerParams(e),()=>{Zl.unregisterParams(e)}}),[h]);const p={adapter:n,paramConfigMap:c,options:l},f=(0,a.useRef)(p);null==f.current&&(f.current=p),(0,a.useEffect)((()=>{f.current.adapter=n,f.current.paramConfigMap=c,f.current.options=l}),[n,c,l]);const[m]=(0,a.useState)((()=>(e,t)=>{const{adapter:n,paramConfigMap:r,options:i}=f.current;null==t&&(t=i.updateType),function(e){let{immediate:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};fc.push(e);let n=t?hc:pc;1===fc.length&&n((()=>{const t=fc.slice();fc.length=0;const n=t[0].currentSearchString;let r;for(let e=0;e{let{total:t,current:n,label:r,loading:i,className:o}=e,a="";return r&&(a+="".concat(r,": ")),i?a+="...":(a+="".concat(n),t&&Number(t)!==Number(n)&&(a+=" ".concat(vc("of")," ").concat(t))),(0,Le.jsx)(ft,{theme:"info",size:"m",className:o,children:a})};var bc,xc,wc,Sc,_c,Cc,Ec,Tc,Oc,Nc,kc;function jc(){return jc=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{image:t,title:n,description:r,actions:i,size:o="m",position:a="center"}=e;return(0,Le.jsx)("div",{className:Pc({size:o}),children:(0,Le.jsxs)("div",{className:Pc("wrapper",{size:o,position:a}),children:[(0,Le.jsx)("div",{className:Pc("image"),children:t||(0,Le.jsx)(we.J,{data:Ic,width:Dc[o],height:Dc[o]})}),(0,Le.jsx)("div",{className:Pc("title",{size:o}),children:n}),(0,Le.jsx)("div",{className:Pc("description"),children:r}),(0,Le.jsx)("div",{className:Pc("actions"),children:i})]})})},Rc=JSON.parse('{"403.title":"Access denied","403.description":"You don\u2019t have the necessary roles to view this page.","responseError.defaultMessage":"Response error"}'),Mc=JSON.parse('{"403.title":"\u0414\u043e\u0441\u0442\u0443\u043f \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d","403.description":"\u0423 \u0432\u0430\u0441 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u0430\u0432 \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b.","responseError.defaultMessage":"\u041e\u0448\u0438\u0431\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430"}'),Lc=(0,We.wZ)("ydb-errors-access-denied",{ru:Mc,en:Rc}),Fc=e=>{let{title:t,description:n,...r}=e;return(0,Le.jsx)(Ac,{image:(0,Le.jsx)(Ge,{name:"403"}),title:t||Lc("403.title"),description:n||Lc("403.description"),...r})},zc=e=>{let{error:t,className:n,defaultMessage:r=Lc("responseError.defaultMessage")}=e,i="";return t&&"string"===typeof t&&(i=t),t&&"object"===typeof t&&("statusText"in t&&"string"===typeof t.statusText?i=t.statusText:"message"in t&&"string"===typeof t.message&&(i=t.message)),(0,Le.jsx)("div",{className:"error ".concat(n),children:i||r})},Bc=e=>{let{value:t,onChange:n,className:r}=e;return(0,Le.jsxs)(Oo,{value:t,onUpdate:n,className:r,children:[(0,Le.jsx)(Oo.Option,{value:Ro.pu.ALL,children:Ro.pu.ALL}),(0,Le.jsx)(Oo.Option,{value:Ro.pu.PROBLEMS,children:Ro.pu.PROBLEMS})]})};function Uc(e,t){return e.map((e=>{var n;let r;e.sub&&(r=Uc(e.sub,t));const i=null!==(n=t[e.name])&&void 0!==n?n:e.width;return Object.assign(Object.assign({},e),{width:i,sub:r})}))}var Hc=n(19812),Vc=n(18193);const Gc=e=>{const t=a.useCallback((()=>e?Vc.r.readUserSettingsValue(e,{}):{}),[e]);return function(e){let{saveSizes:t,getSizes:n}=e;const[r,i]=a.useState((()=>n()));return[r,a.useCallback(((e,n)=>{i((r=>{const i=Object.assign(Object.assign({},r),{[e]:n});return t(i),i}))}),[t])]}({saveSizes:a.useCallback((t=>{e&&Vc.r.setUserSettingsValue(e,t)}),[e]),getSizes:t})},Wc=Me("ydb-resizeable-data-table");function qc(e){let{columnsWidthLSKey:t,columns:n,settings:r,wrapperClassName:i,...o}=e;const[a,s]=Gc(t),l=Uc(n,a),c={...r,defaultResizeable:!0};return(0,Le.jsx)("div",{className:Wc(null,i),children:(0,Le.jsx)(Hc.ZP,{theme:"yandex-cloud",columns:l,onResize:s,settings:c,...o})})}const Zc=Me("ydb-search"),Yc=e=>{let{onChange:t,value:n="",className:r,debounce:i=200,placeholder:o}=e;const[s,l]=a.useState(n),c=a.useRef();a.useEffect((()=>{l((e=>e!==n?n:e))}),[n]);return(0,Le.jsx)(Ii,{hasClear:!0,autoFocus:!0,className:Zc(null,r),placeholder:o,value:s,onUpdate:e=>{l(e),window.clearTimeout(c.current),c.current=window.setTimeout((()=>{null===t||void 0===t||t(e)}),i)}})},Kc=Me("table-skeleton"),Qc=e=>{let{rows:t=2,className:n}=e;return(0,Le.jsxs)("div",{className:Kc(null,n),children:[(0,Le.jsxs)("div",{className:Kc("row"),children:[(0,Le.jsx)(rl,{className:Kc("col-1")}),(0,Le.jsx)(rl,{className:Kc("col-2")}),(0,Le.jsx)(rl,{className:Kc("col-3")}),(0,Le.jsx)(rl,{className:Kc("col-4")}),(0,Le.jsx)(rl,{className:Kc("col-5")})]}),[...new Array(t)].map(((e,t)=>(0,Le.jsx)("div",{className:Kc("row"),children:(0,Le.jsx)(rl,{className:Kc("col-full")})},"skeleton-row-".concat(t))))]})},Xc=Me("ydb-table-with-controls-layout"),$c=e=>{let{children:t,className:n}=e;return(0,Le.jsx)("div",{className:Xc(null,n),children:t})};$c.Controls=function(e){let{children:t,className:n}=e;return(0,Le.jsx)("div",{className:Xc("controls-wrapper"),children:(0,Le.jsx)("div",{className:Xc("controls",n),children:t})})},$c.Table=function(e){let{children:t,loading:n,className:r}=e;return n?(0,Le.jsx)(Qc,{className:Xc("loader")}):(0,Le.jsx)("div",{className:Xc("table",r),children:t})};const Jc=e=>{let{value:t,onChange:n,className:r}=e;return(0,Le.jsxs)(Oo,{value:t,onUpdate:n,className:r,children:[(0,Le.jsx)(Oo.Option,{value:Na.Uu.All,children:Na.qU[Na.Uu.All]}),(0,Le.jsx)(Oo.Option,{value:Na.Uu.SmallUptime,children:Na.qU[Na.Uu.SmallUptime]})]})};let eu;!function(e){e.v1="v1",e.v2="v2"}(eu||(eu={}));const tu=(e,t,n)=>r=>0<=r&&r{var n;return{...e,TenantName:null!==(n=e.Tenant)&&void 0!==n?n:t,SystemState:null===e||void 0===e?void 0:e.Overall,Uptime:(0,ks.fG)(null===e||void 0===e?void 0:e.StartTime),DC:e.DataCenter}},ru=e=>{const t=((e,t)=>{const n=[];if(e)e.forEach((e=>{n.push(nu(e))}));else if(t)for(const i of t){var r;null===(r=i.Nodes)||void 0===r||r.forEach((e=>{n.push(nu(e,i.Name))}))}return n})(e.Nodes,e.Tenants);return{Nodes:t,TotalNodes:Number(e.TotalNodes)||t.length,FoundNodes:Number(e.FoundNodes)}},iu=e=>{const t=(e.Nodes||[]).map((e=>{var t,n,r,i;const o=Number(null===(t=e.SystemState.SharedCacheStats)||void 0===t?void 0:t.LimitBytes)||void 0;return{...(0,Na.Ns)(e.SystemState),Tablets:e.Tablets,NodeId:e.NodeId,TenantName:null===(n=e.SystemState)||void 0===n||null===(r=n.Tenants)||void 0===r?void 0:r[0],SharedCacheUsed:null===(i=e.SystemState.SharedCacheStats)||void 0===i?void 0:i.UsedBytes,SharedCacheLimit:o}}));return{Nodes:t,TotalNodes:Number(e.TotalNodes)||t.length,FoundNodes:Number(e.FoundNodes)}},ou=tu(60,80,["success","warning","danger"]),au=Dl.h.injectEndpoints({endpoints:e=>({getNodes:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{const t=await window.api.getNodes({type:"any",storage:!1,...e},{signal:n});return{data:iu(t)}}catch(r){return{error:r}}},providesTags:["All"]}),getComputeNodes:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{const t=await window.api.getCompute({version:eu.v2,...e},{signal:n});return{data:ru(t)}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"});var su=n(27070);const lu=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(arguments.length>1?arguments[1]:void 0)===Ro.pu.ALL?e:e.filter((e=>{let{SystemState:t}=e;return t&&t!==al.K.Green}))},cu=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(arguments.length>1?arguments[1]:void 0)===Na.Uu.All?e:e.filter((e=>{let{StartTime:t}=e;return!t||(0,ks.OW)(t)0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0;if(!t)return e;const n=(0,su.Y)(t);return e.filter((e=>!e.Host||(n.test(e.Host)||n.test(String(e.NodeId)))))};const du=Me("ydb-cell-with-popover");function hu(e){let{children:t,className:n,wrapperClassName:r,...i}=e;return(0,Le.jsx)("div",{className:du(null,r),children:(0,Le.jsx)(fi,{className:du("popover",n),...i,children:t})})}const pu=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10 1.5A.75.75 0 0 0 10 3h1.94L6.97 7.97a.75.75 0 0 0 1.06 1.06L13 4.06V6a.75.75 0 0 0 1.5 0V2.25a.75.75 0 0 0-.75-.75H10ZM7.5 3.25a.75.75 0 0 0-.75-.75H4.5a3 3 0 0 0-3 3v6a3 3 0 0 0 3 3h6a3 3 0 0 0 3-3V9.25a.75.75 0 0 0-1.5 0v2.25a1.5 1.5 0 0 1-1.5 1.5h-6A1.5 1.5 0 0 1 3 11.5v-6A1.5 1.5 0 0 1 4.5 4h2.25a.75.75 0 0 0 .75-.75Z",clipRule:"evenodd"})),fu="storage",mu="tablets",gu="overview",vu="structure",yu=[{id:gu,name:"Overview"},{id:fu,name:"Storage"},{id:vu,name:"Structure"},{id:mu,name:"Tablets"}];function bu(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(0,Ta.ax)(Ta.ZP.node,{id:e,activeTab:gu},t)}const xu=Me("ydb-node-host-wrapper"),wu=e=>{let{node:t,getNodeRef:n}=e;if(!t.Host)return(0,Le.jsx)("span",{children:"\u2014"});const r=!(0,Na.TA)(t),i=r&&n?n(t)+"internal":void 0,o=r?bu(t.NodeId,{tenantName:t.TenantName}):void 0,a=i?(0,Le.jsx)(Ie.z,{size:"s",href:i,className:xu("external-button"),target:"_blank",children:(0,Le.jsx)(we.J,{data:pu})}):null;return(0,Le.jsx)(hu,{disabled:!r,content:(0,Le.jsx)(Ns,{data:t}),placement:["top","bottom"],behavior:di.Immediate,children:(0,Le.jsx)(Il,{name:t.Host,status:t.SystemState,path:o,hasClipboardButton:!0,additionalControls:a})})},Su=e=>{let{children:t,content:n,className:r,hasArrow:i=!0,placement:o=["top","bottom"],...s}=e;const[l,c]=a.useState(!1),u=a.useRef(null);return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(ti,{anchorRef:u,open:l,placement:o,hasArrow:i,...s,children:n}),(0,Le.jsx)("span",{className:r,ref:u,onMouseEnter:()=>{c(!0)},onMouseLeave:()=>{c(!1)},children:t})]})},_u=Me("ydb-pool-bar"),Cu=e=>{let{data:t={}}=e;const{Usage:n=0}=t,r=Math.min(100*n,100),i=(e=>e>=75?"danger":e>=50&&e<75?"warning":"normal")(r);return(0,Le.jsx)(Su,{className:_u({type:i}),content:(0,Le.jsx)(Ds,{data:t,className:_u("popup-content")}),children:(0,Le.jsx)("div",{style:{height:"".concat(r,"%")},className:_u("value",{type:i})})})},Eu=Me("ydb-pools-graph"),Tu=e=>{let{pools:t=[]}=e;return(0,Le.jsx)("div",{className:Eu(),children:t.map(((e,t)=>(0,Le.jsx)(Cu,{data:e},t)))})};var Ou=n(47651);const Nu=Me("progress-viewer"),ku=e=>(0,ks.uf)((0,ks.W0)(Number(e),2)),ju=(e,t)=>[ku(e),ku(t)];function Iu(e){let{value:t,capacity:n,formatValues:r=ju,percents:i,className:o,size:a="xs",colorizeProgress:s,inverseColorize:l,warningThreshold:c=60,dangerThreshold:u=80}=e;const d=(0,rr.T)().theme;let h=Math.round(parseFloat(String(t))/parseFloat(String(n))*100)||0;h=h>100?100:h;let p=t,f=n,m="/";i?(p=h+"%",f="",m=""):r&&([p,f]=r(Number(t),Number(n)));let g=l?"danger":"good";s&&(h>c&&h<=u?g="warning":h>u&&(g=l?"good":"danger"));const v={width:h+"%"};return(0,Ou.kE)(t)?(0,Le.jsxs)("div",{className:Nu({size:a,theme:d,status:g},o),children:[(0,Le.jsx)("div",{className:Nu("line"),style:v}),(0,Le.jsx)("span",{className:Nu("text"),children:(0,Ou.kE)(n)?"".concat(p," ").concat(m," ").concat(f):p})]}):(0,Le.jsx)("div",{className:"".concat(Nu({size:a})," ").concat(o," error"),children:"no data"})}var Pu=n(28164);const Du={[Pu.g.Dead]:al.K.Red,[Pu.g.Created]:al.K.Yellow,[Pu.g.ResolveStateStorage]:al.K.Yellow,[Pu.g.Candidate]:al.K.Yellow,[Pu.g.BlockBlobStorage]:al.K.Yellow,[Pu.g.WriteZeroEntry]:al.K.Yellow,[Pu.g.Restored]:al.K.Yellow,[Pu.g.Discover]:al.K.Yellow,[Pu.g.Lock]:al.K.Yellow,[Pu.g.Stopped]:al.K.Yellow,[Pu.g.ResolveLeader]:al.K.Yellow,[Pu.g.RebuildGraph]:al.K.Yellow,[Pu.g.Deleted]:al.K.Green,[Pu.g.Active]:al.K.Green},Au=Object.keys(Pu.g),Ru=Object.entries(Du).reduce(((e,t)=>{let[n,r]=t;return e[r]?e[r].push(n):e[r]=[n],e}),{}),Mu=e=>{if(!e)return al.K.Grey;return t=e,Object.values(al.K).includes(t)?e:Du[e];var t};function Lu(e){if(!e)return"unknown";switch(e){case Pu.g.Dead:return"danger";case Pu.g.Active:case Pu.g.Deleted:return"success";default:return"warning"}}const Fu=Me("tablets-statistic"),zu=e=>{let{tablets:t=[],path:n,nodeIds:r,backend:i}=e;const o=(e=>e.map((e=>({label:(0,Lo.qV)(e.Type),type:e.Type,count:e.Count,state:Mu(e.State)}))).sort(((e,t)=>String(e.label).localeCompare(String(t.label)))))(t);return(0,Le.jsx)("div",{className:Fu(),children:o.map(((e,t)=>{var o;const a=(0,Ta.ax)(Ta.ZP.tabletsFilters,void 0,{nodeIds:r,state:e.state,type:e.type,path:n,backend:i}),s="".concat(e.label,": ").concat(e.count),l=Fu("tablet",{state:null===(o=e.state)||void 0===o?void 0:o.toLowerCase()});return i?(0,Le.jsx)("a",{href:a,className:l,children:s},t):(0,Le.jsx)(bl,{to:a,className:l,children:s},t)}))})},Bu=Me("ydb-usage-label");function Uu(e){let{value:t,overloadThreshold:n=90,theme:r,...i}=e;return(0,Le.jsxs)(ft,{theme:r,className:Bu({overload:Number(t)>=n}),...i,children:[t||0,"%"]})}const Hu="nodesTableColumnsWidth",Vu="Host",Gu="DC",Wu="Rack",qu="Version",Zu="Uptime",Yu="Memory",Ku="CPU",Qu="LoadAverage",Xu="Tablets",$u="TopNodesLoadAverage",Ju="TopNodesMemory",ed="SharedCacheUsage",td="MemoryUsedInAlloc",nd="TotalSessions",rd={name:"NodeId",header:"#",width:80,render:e=>{let{row:t}=e;return t.NodeId},align:Hc.ZP.RIGHT,sortable:!1},id=e=>({name:Vu,render:t=>{let{row:n}=t;return(0,Le.jsx)(wu,{node:n,getNodeRef:e})},width:350,align:Hc.ZP.LEFT,sortable:!1}),od=e=>({...id(e),width:void 0}),ad={name:Gu,header:"DC",align:Hc.ZP.LEFT,render:e=>{let{row:t}=e;return t.DC||Lo.jX},width:60},sd={name:Wu,header:"Rack",align:Hc.ZP.LEFT,render:e=>{let{row:t}=e;return t.Rack?t.Rack:"\u2014"},width:80},ld={name:qu,width:200,align:Hc.ZP.LEFT,render:e=>{let{row:t}=e;return(0,Le.jsx)(hu,{content:t.Version,children:t.Version})},sortable:!1},cd={name:Zu,header:"Uptime",sortAccessor:e=>{let{StartTime:t}=e;return t&&-t},render:e=>{let{row:t}=e;return t.Uptime},align:Hc.ZP.RIGHT,width:110,sortable:!1},ud={name:Yu,header:"Memory",sortAccessor:e=>{let{MemoryUsed:t=0}=e;return Number(t)},defaultOrder:Hc.ZP.DESCENDING,render:e=>{let{row:t}=e;return t.MemoryUsed?(0,ks.SX)(t.MemoryUsed):"\u2014"},align:Hc.ZP.RIGHT,width:120},dd={name:Ku,header:"CPU",sortAccessor:e=>{let{PoolStats:t=[]}=e;return Math.max(...t.map((e=>{let{Usage:t}=e;return Number(t)})))},defaultOrder:Hc.ZP.DESCENDING,render:e=>{let{row:t}=e;return t.PoolStats?(0,Le.jsx)(Tu,{pools:t.PoolStats}):"\u2014"},align:Hc.ZP.LEFT,width:80,resizeMinWidth:60,sortable:!1},hd={name:Qu,header:"Load average",sortAccessor:e=>{let{LoadAverage:t=[]}=e;return t.slice(0,1).reduce(((e,t)=>e+t),0)},defaultOrder:Hc.ZP.DESCENDING,render:e=>{let{row:t}=e;return t.LoadAverage&&t.LoadAverage.length>0?(0,Le.jsx)(Iu,{value:t.LoadAverage[0],percents:!0,colorizeProgress:!0,capacity:100}):"\u2014"},align:Hc.ZP.LEFT,width:140,resizeMinWidth:140,sortable:!1},pd=e=>({name:Xu,width:500,resizeMinWidth:500,render:t=>{let{row:n}=t;return n.Tablets?(0,Le.jsx)(zu,{path:null!==e&&void 0!==e?e:n.TenantName,nodeIds:[n.NodeId],tablets:n.Tablets}):"\u2014"},align:Hc.ZP.LEFT,sortable:!1}),fd={name:$u,header:"Load",render:e=>{let{row:t}=e;return t.LoadAverage&&t.LoadAverage.length>0?(0,Le.jsx)(Uu,{value:t.LoadAverage[0].toFixed(),theme:ou(t.LoadAverage[0])}):"\u2014"},align:Hc.ZP.LEFT,width:80,resizeMinWidth:70,sortable:!1},md={name:Ju,header:"Process",render:e=>{let{row:t}=e;return(0,Le.jsx)(Iu,{value:t.MemoryUsed,capacity:t.MemoryLimit,formatValues:ks.q3,colorizeProgress:!0})},align:Hc.ZP.LEFT,width:140,resizeMinWidth:140,sortable:!1},gd={name:ed,header:"Tablet Cache",render:e=>{let{row:t}=e;return(0,Le.jsx)(Iu,{value:t.SharedCacheUsed,capacity:t.SharedCacheLimit,formatValues:ks.q3,colorizeProgress:!0})},align:Hc.ZP.LEFT,width:140,resizeMinWidth:140,sortable:!1},vd={name:td,header:"Query Runtime",render:e=>{let{row:t}=e;return(0,Le.jsx)(Iu,{value:t.MemoryUsedInAlloc,capacity:t.MemoryLimit,formatValues:ks.q3,colorizeProgress:!0})},align:Hc.ZP.LEFT,width:140,resizeMinWidth:140,sortable:!1},yd={name:nd,header:"Sessions",render:e=>{var t;let{row:n}=e;return null!==(t=n.TotalSessions)&&void 0!==t?t:"\u2014"},align:Hc.ZP.RIGHT,width:100,sortable:!1};function bd(e){let{tabletsPath:t,getNodeRef:n}=e;return[rd,id(n),ad,sd,ld,cd,ud,dd,hd,pd(t)]}const xd=JSON.parse('{"empty.default":"No such nodes"}'),wd=JSON.parse('{"empty.default":"\u041d\u0435\u0442 \u0443\u0437\u043b\u043e\u0432"}'),Sd=(0,We.wZ)("ydb-nodes",{ru:wd,en:xd}),_d=Me("ydb-nodes"),Cd=e=>{var t;let{path:n,additionalNodesProps:r={}}=e;const[i,o]=mc({uptimeFilter:Gl,search:Gl}),s=Na.U8.parse(i.uptimeFilter),l=null!==(t=i.search)&&void 0!==t?t:"",c=Ao(),u=!n,d=Do((e=>e.settings.problemFilter)),{autorefresh:h}=Do((e=>e.schema)),[p]=Mo(Lo.UF),f=u?Lo.ME:h,m=n&&!p,g=au.useGetNodesQuery(m?zl.CN:{path:n},{pollingInterval:f}),v=au.useGetComputeNodesQuery(m?{path:n}:zl.CN,{pollingInterval:f}),{currentData:y,isLoading:b,error:x}=m?v:g,[w,S]=a.useState({sortValue:"NodeId",sortOrder:zo.zE}),[_,C]=Bo(w,(e=>{S(e)})),E=e=>{o({search:e||void 0},"replaceIn")},T=e=>{c((0,Ro.M6)(e))},O=e=>{o({uptimeFilter:e},"replaceIn")},N=a.useMemo((()=>function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],{uptimeFilter:t,searchValue:n,problemFilter:r}=arguments.length>1?arguments[1]:void 0,i=cu(e,t);return i=lu(i,r),i=uu(i,n),i}(null===y||void 0===y?void 0:y.Nodes,{searchValue:l,uptimeFilter:s,problemFilter:d})),[y,l,s,d]),k=(null===y||void 0===y?void 0:y.TotalNodes)||0;return x?403===x.status?(0,Le.jsx)(Fc,{}):(0,Le.jsx)(zc,{error:x}):(0,Le.jsxs)($c,{children:[(0,Le.jsx)($c.Controls,{children:(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(Yc,{onChange:E,placeholder:"Host name",className:_d("search"),value:l}),(0,Le.jsx)(Bc,{value:d,onChange:T}),(0,Le.jsx)(Jc,{value:s,onChange:O}),(0,Le.jsx)(yc,{total:k,current:(null===N||void 0===N?void 0:N.length)||0,label:"Nodes",loading:b})]})}),(0,Le.jsx)($c.Table,{loading:b,children:(()=>{const e=bd({getNodeRef:r.getNodeRef}).map((e=>({...e,sortable:(0,Na.oh)(e.name)})));return!N||0!==N.length||d===Ro.pu.ALL&&s===Na.Uu.All?(0,Le.jsx)(qc,{columnsWidthLSKey:Hu,data:N||[],columns:e,settings:Lo.LE,sortOrder:_,onSort:C,emptyDataMessage:Sd("empty.default"),rowClassName:e=>_d("node",{unavailable:(0,Na.TA)(e)})}):(0,Le.jsx)(Ge,{name:"thumbsUp",width:"200"})})()})]})},Ed=e=>[...Array(e).keys()];function Td(e){return null!==e&&void 0!==e}const Od="left",Nd=-1,kd=40,jd=Me("ydb-virtual-table"),Id=e=>{let{children:t,className:n,height:r,width:i,align:o=Od}=e;return(0,Le.jsx)("td",{className:jd("row-cell",{align:o},n),style:{height:"".concat(r,"px"),width:"".concat(i,"px"),maxWidth:"".concat(i,"px")},children:t})},Pd=e=>{let{index:t,columns:n,height:r}=e;return(0,Le.jsx)("tr",{className:jd("row"),children:n.map((e=>(0,Le.jsx)(Id,{height:r,width:e.width,align:e.align,className:e.className,children:(0,Le.jsx)(rl,{style:{width:"80%",height:"50%"}})},"".concat(e.name).concat(t))))})},Dd=e=>{let{row:t,index:n,columns:r,getRowClassName:i,height:o}=e;const a=null===i||void 0===i?void 0:i(t);return(0,Le.jsx)("tr",{className:jd("row",a),children:r.map((e=>(0,Le.jsx)(Id,{height:o,width:e.width,align:e.align,className:e.className,children:e.render({row:t,index:n})},"".concat(e.name).concat(n))))})},Ad=e=>{let{columns:t,children:n}=e;return(0,Le.jsx)("tr",{className:jd("row",{empty:!0}),children:(0,Le.jsx)("td",{colSpan:t.length,className:jd("td"),children:n})})},Rd=(0,a.memo)((function(e){var t;let{id:n,chunkSize:r,rowHeight:i,columns:o,chunkData:s,observer:l,getRowClassName:c}=e;const u=a.useRef(null);a.useEffect((()=>{const e=u.current;return e&&l.observe(e),()=>{e&&l.unobserve(e)}}),[l]);const d=null===s||void 0===s||null===(t=s.data)||void 0===t?void 0:t.length,h=d?d*i:r*i;return(0,Le.jsx)("tbody",{ref:u,id:n.toString(),style:{height:"".concat(h,"px")},children:(()=>{var e;return s&&s.active?s.loading||s.error?Ed(r).map((e=>(0,Le.jsx)(Pd,{columns:o,height:i,index:e},e))):null===(e=s.data)||void 0===e?void 0:e.map(((e,t)=>(0,Le.jsx)(Dd,{index:t,row:e,columns:o,height:i,getRowClassName:c},t))):null})()})}));function Md(e){let{minWidth:t,maxWidth:n,getCurrentColumnWidth:r,onResize:i}=e;const o=a.useRef(null),[s,l]=a.useState(!1);return a.useEffect((()=>{const e=o.current;if(!e)return;let a,s,c;const u=function(e){let t,n=null;return function(){for(var r=arguments.length,i=new Array(r),o=0;o{e(...t),n=null})))}}((e=>{if(Ld(e),"number"!==typeof a||"number"!==typeof s)return;const r=e.clientX-a,o=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:40,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1/0;return Math.max(t,Math.min(e,n))}(s+r,t,n);o!==c&&(c=o,null===i||void 0===i||i(c))})),d=e=>{Ld(e),void 0!==c&&(null===i||void 0===i||i(c)),l(!1),a=void 0,document.removeEventListener("mousemove",u),document.removeEventListener("mouseup",d)},h=e=>{s=r(),Ld(e),a=e.clientX,l(!0),document.addEventListener("mousemove",u),document.addEventListener("mouseup",d)};return e.addEventListener("mousedown",h),()=>{e.removeEventListener("mousedown",h),document.removeEventListener("mousemove",u),document.removeEventListener("mouseup",d)}}),[i,t,n,r]),(0,Le.jsx)("span",{ref:o,className:jd("resize-handler",{resizing:s}),onClick:e=>Ld(e)})}function Ld(e){e.preventDefault(),e.stopPropagation()}const Fd=e=>{let{order:t}=e;return(0,Le.jsx)("svg",{className:jd("sort-icon",{desc:-1===t}),viewBox:"0 0 10 6",width:"10",height:"6",children:(0,Le.jsx)("path",{fill:"currentColor",d:"M0 5h10l-5 -5z"})})},zd=e=>{let{sortOrder:t,sortable:n,defaultSortOrder:r}=e;return n?(0,Le.jsx)("span",{className:jd("sort-icon-container",{shadow:!t}),children:(0,Le.jsx)(Fd,{order:t||r})}):null},Bd=e=>{var t;let{column:n,resizeable:r,sortOrder:i,defaultSortOrder:o,onSort:s,rowHeight:l,onCellMount:c,onCellUnMount:u,onColumnsResize:d}=e;const h=a.useRef(null);a.useEffect((()=>{const e=h.current;return e&&(null===c||void 0===c||c(e)),()=>{e&&(null===u||void 0===u||u(e))}}),[c,u]);const p=a.useCallback((()=>{var e;return null===(e=h.current)||void 0===e?void 0:e.getBoundingClientRect().width}),[]),f=a.useCallback((e=>{null===d||void 0===d||d(n.name,e)}),[d,n.name]),m=null!==(t=n.header)&&void 0!==t?t:n.name;return(0,Le.jsx)("th",{children:(0,Le.jsxs)("div",{ref:h,className:jd("head-cell-wrapper"),style:{height:"".concat(l,"px"),width:"".concat(n.width,"px")},children:[(0,Le.jsxs)("div",{className:jd("head-cell",{align:n.align,sortable:n.sortable},n.className),onClick:()=>{n.sortable&&(null===s||void 0===s||s(n.name))},children:[(0,Le.jsx)("div",{className:jd("head-cell-content"),children:m}),(0,Le.jsx)(zd,{sortOrder:i,sortable:n.sortable,defaultSortOrder:o})]}),r?(0,Le.jsx)(Md,{maxWidth:n.resizeMaxWidth,minWidth:n.resizeMinWidth,getCurrentColumnWidth:p,onResize:f}):null]})})},Ud=e=>{let{columns:t,onSort:n,onColumnsResize:r,defaultSortOrder:i=Nd,rowHeight:o=kd}=e;const[s,l]=a.useState({}),c=e=>{let t={};if(e===s.columnId){if(s.sortOrder&&s.sortOrder!==i)return l(t),void(null===n||void 0===n||n(t));t={sortOrder:1===s.sortOrder?-1:1,columnId:e}}else t={sortOrder:i,columnId:e};null===n||void 0===n||n(t),l(t)};return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("colgroup",{children:t.map((e=>(0,Le.jsx)("col",{style:{width:"".concat(e.width,"px")}},e.name)))}),(0,Le.jsx)("thead",{className:jd("head"),children:(0,Le.jsx)("tr",{children:t.map((e=>{var t;const n=s.columnId===e.name?s.sortOrder:void 0,a=r&&(null===(t=e.resizeable)||void 0===t||t);return(0,Le.jsx)(Bd,{column:e,resizeable:a,sortOrder:n,defaultSortOrder:i,onSort:c,rowHeight:o,onColumnsResize:r},e.name)}))})})]})},Hd=JSON.parse('{"empty":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445"}'),Vd=(0,We.wZ)("ydb-virtual-table",{ru:Hd,en:{empty:"No data"}}),Gd="infiniteTable/INIT_CHUNK",Wd="infiniteTable/REMOVE_CHUNK",qd="infiniteTable/SET_CHUNK_LOADING",Zd="infiniteTable/SET_CHUNK_DATA",Yd="infiniteTable/SET_CHUNK_ERROR",Kd="infiniteTable/RESET_CHUNKS",Qd=e=>({type:Gd,data:{id:e}}),Xd=e=>{let{limit:t,fetchData:n,columns:r,getRowClassName:i,rowHeight:o=kd,parentContainer:s,initialSortParams:l,onColumnsResize:c,renderControls:u,renderEmptyDataMessage:d,renderErrorMessage:h,dependencyArray:p}=e;const f=a.useRef(!1),m=a.useRef(null),[g,v]=a.useReducer(((e,t)=>{switch(t.type){case Zd:{const{id:n,data:r}=t.data;return{...e,[n]:{loading:!1,wasLoaded:!0,active:!0,data:r}}}case Yd:{const{id:n,error:r}=t.data;return{...e,[n]:{loading:!1,wasLoaded:!0,active:!0,error:r}}}case Gd:{const{id:n}=t.data;return{...e,[n]:{loading:!1,wasLoaded:!1,active:!0}}}case qd:{const{id:n}=t.data;return{...e,[n]:{loading:!0,wasLoaded:!1,active:!0}}}case Wd:{const{id:n}=t.data,r={...e};return delete r[n],r}case Kd:return{};default:return e}}),{}),[y,b]=a.useState(l),[x,w]=a.useState(t),[S,_]=a.useState(0),[C,E]=a.useState(),T=a.useRef({}),O=a.useCallback((async e=>{v((e=>({type:qd,data:{id:e}}))(e));const r=setTimeout((async()=>{const r=Number(e)*t;try{const i=await n(t,r,y),{data:o,total:a,found:s}=i;w(a),_(s),f.current=!0,v(((e,t)=>({type:Zd,data:{id:e,data:t}}))(e,o))}catch(i){if(null!==i&&void 0!==i&&i.isCancelled)return;v(((e,t)=>({type:Yd,data:{id:e,error:t}}))(e,i)),E(i)}}),200);if(T.current[e]){const t=T.current[e];window.clearTimeout(t)}T.current[e]=r}),[n,t,y]),N=a.useCallback((e=>{v(Qd(e))}),[]),k=a.useCallback((e=>{if(v((e=>({type:Wd,data:{id:e}}))(e)),T.current[e]){const t=T.current[e];window.clearTimeout(t),delete T.current[e]}}),[]);a.useEffect((()=>()=>{Object.values(T.current).forEach((e=>{window.clearTimeout(e)})),T.current={}}),[]),a.useEffect((()=>{for(const e of Object.keys(g)){const t=g[Number(e)];null===t||void 0===t||!t.active||null!==t&&void 0!==t&&t.loading||null!==t&&void 0!==t&&t.wasLoaded||O(e)}}),[O,g]),a.useEffect((()=>{var e;(w(t),_(0),E(void 0),v({type:Kd}),f.current=!1,s)?s.scrollTo(0,0):null===(e=m.current)||void 0===e||e.scrollTo(0,0);v(Qd("0"))}),[p,t,s]);const j=e=>{b(e),(()=>{for(const t of Object.keys(g)){var e;null!==(e=g[Number(t)])&&void 0!==e&&e.active&&v(Qd(t))}})()},I=(e=>{let{onEntry:t,onLeave:n,parentContainer:r}=e;const i=a.useRef();return a.useEffect((()=>(i.current=new IntersectionObserver((e=>{e.forEach((e=>{e.isIntersecting?t(e.target.id):n(e.target.id)}))}),{root:r,rootMargin:"100%"}),()=>{var e;null===(e=i.current)||void 0===e||e.disconnect(),i.current=void 0})),[r,t,n]),i.current})({onEntry:N,onLeave:k,parentContainer:s}),P=S||t,D=Math.ceil(P/t),A=()=>f.current&&0===S?(0,Le.jsx)("tbody",{children:(0,Le.jsx)(Ad,{columns:r,children:d?d():Vd("empty")})}):!f.current&&C?(0,Le.jsx)("tbody",{children:(0,Le.jsx)(Ad,{columns:r,children:h?h(C):(0,Le.jsx)(zc,{error:C})})}):I?Ed(D).map((e=>{const n=g[e];return(0,Le.jsx)(Rd,{observer:I,id:e,chunkSize:t,rowHeight:o,columns:r,chunkData:n,getRowClassName:i},e)})):null,R=()=>(0,Le.jsxs)("table",{className:jd("table"),children:[(0,Le.jsx)(Ud,{columns:r,onSort:j,onColumnsResize:c}),A()]});return(0,Le.jsx)("div",{ref:m,className:jd(null),children:u?(0,Le.jsxs)($c,{children:[(0,Le.jsx)($c.Controls,{children:u({inited:f.current,totalEntities:x,foundEntities:S})}),(0,Le.jsx)($c.Table,{children:R()})]}):R()})};function $d(e){let{columnsWidthLSKey:t,columns:n,...r}=e;const[i,o]=Gc(t),a=function(e,t){return e.map((e=>{var n;return{...e,width:null!==(n=t[e.name])&&void 0!==n?n:e.width}}))}(n,i);return(0,Le.jsx)(Xd,{columns:a,onColumnsResize:o,...r})}const Jd=(e,t)=>"getNodes|offset".concat(t,"|limit").concat(e),eh=async e=>{let{type:t="any",storage:n=!1,limit:r,offset:i,...o}=e;const a=await window.api.getNodes({type:t,storage:n,limit:r,offset:i,...o},{concurrentId:Jd(r,i)}),s=iu(a);return{data:s.Nodes||[],found:s.FoundNodes||0,total:s.TotalNodes||0}},th=Me("ydb-nodes"),nh=e=>{var t;let{path:n,parentContainer:r,additionalNodesProps:i}=e;const[o,s]=mc({uptimeFilter:Gl,search:Gl}),l=Na.U8.parse(o.uptimeFilter),c=null!==(t=o.search)&&void 0!==t?t:"",u=Ao(),d=Do((e=>e.settings.problemFilter)),h=a.useMemo((()=>[n,c,d,l]),[n,c,d,l]),p=a.useCallback((async function(e,t){let{sortOrder:r,columnId:i}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return await eh({limit:e,offset:t,path:n,filter:c,problems_only:(0,Na.eV)(d),uptime:(0,Na.RW)(l),sortOrder:r,sortValue:i})}),[n,d,c,l]),f=bd({getNodeRef:null===i||void 0===i?void 0:i.getNodeRef}).map((e=>({...e,sortable:(0,Na.oh)(e.name)})));return(0,Le.jsx)($d,{columnsWidthLSKey:Hu,parentContainer:r,columns:f,fetchData:p,limit:50,renderControls:e=>{let{totalEntities:t,foundEntities:n,inited:r}=e;return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(Yc,{onChange:e=>{s({search:e||void 0},"replaceIn")},placeholder:"Host name",className:th("search"),value:c}),(0,Le.jsx)(Bc,{value:d,onChange:e=>{u((0,Ro.M6)(e))}}),(0,Le.jsx)(Jc,{value:l,onChange:e=>{s({uptimeFilter:e},"replaceIn")}}),(0,Le.jsx)(yc,{total:t,current:n,label:"Nodes",loading:!r})]})},renderErrorMessage:e=>e&&403===e.status?(0,Le.jsx)(Fc,{position:"left"}):(0,Le.jsx)(zc,{error:e}),renderEmptyDataMessage:()=>d!==Ro.pu.ALL||l!==Na.Uu.All?(0,Le.jsx)(Ge,{name:"thumbsUp",width:"200"}):Sd("empty.default"),dependencyArray:h,getRowClassName:e=>th("node",{unavailable:(0,Na.TA)(e)})})},rh=e=>{let{parentContainer:t,...n}=e;const[r]=Mo(Lo.ET);return r?(0,Le.jsx)(nh,{parentContainer:t,...n}):(0,Le.jsx)(Cd,{...n})},ih={all:"all",missing:"missing",space:"space"},oh={groups:"groups",nodes:"nodes"},ah=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;const n=e.Limit?100*e.Used/e.Limit:0;return Math.floor(n/t)*t},sh={PoolName:"PoolName",Kind:"Kind",MediaType:"MediaType",Erasure:"Erasure",Degraded:"Degraded",Usage:"Usage",GroupId:"GroupId",Used:"Used",Limit:"Limit",Read:"Read",Write:"Write"},lh=e=>e.trim().toLowerCase(),ch=(e,t)=>{const n=lh(t);return n?e.filter((e=>{var t,r;return(null===(t=e.NodeId)||void 0===t?void 0:t.toString().includes(n))||(null===(r=e.Host)||void 0===r?void 0:r.toLowerCase().includes(n))})):e},uh=(e,t)=>{const n=lh(t);return n?e.filter((e=>{var t,r;return(null===(t=e.PoolName)||void 0===t?void 0:t.toLowerCase().includes(n))||(null===(r=e.GroupID)||void 0===r?void 0:r.toString().includes(n))})):e},dh=(e,t)=>Array.isArray(t)&&0!==t.length?e.filter((e=>{const n=e.Usage;return t.some((e=>Number(e)<=n&&n{let[n,r]=t;return{...e,[r]:n}}),{}),gh=fh.Grey,vh=mh[gh],yh={[ph.OK]:fh.Green,[ph.Initial]:fh.Yellow,[ph.SyncGuidRecovery]:fh.Yellow,[ph.LocalRecoveryError]:fh.Red,[ph.SyncGuidRecoveryError]:fh.Red,[ph.PDiskError]:fh.Red},bh={[hh.Initial]:fh.Grey,[hh.Normal]:fh.Green,[hh.InitialFormatRead]:fh.Yellow,[hh.InitialSysLogRead]:fh.Yellow,[hh.InitialCommonLogRead]:fh.Yellow,[hh.InitialFormatReadError]:fh.Red,[hh.InitialSysLogReadError]:fh.Red,[hh.InitialSysLogParseError]:fh.Red,[hh.InitialCommonLogReadError]:fh.Red,[hh.InitialCommonLogParseError]:fh.Red,[hh.CommonLoggerInitError]:fh.Red,[hh.OpenFileError]:fh.Red,[hh.ChunkQuotaError]:fh.Red,[hh.DeviceIoError]:fh.Red},xh=tu(85,95,[al.K.Green,al.K.Yellow,al.K.Red]);function wh(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const n=function(e){return void 0!==e&&e in bh}(r=e.State)?bh[r]:gh;var r;const i=xh(t);return n!==gh&&i?Math.max(n,fh[i]):n}function Sh(e){return"VDiskId"in e}function _h(e){return void 0===e?vh:mh[e]||vh}function Ch(e){if(!Sh(e))return gh;const{DiskSpace:t,VDiskState:n,FrontQueues:r,Replicated:i,DonorMode:o}=e;if(!n)return gh;const a=Eh(t),s=function(e){var t;if(!e)return gh;return null!==(t=yh[e])&&void 0!==t?t:gh}(n),l=Math.min(fh.Orange,Eh(r));let c=Math.max(a,s,l);return i||o||c!==fh.Green||(c=fh.Blue),c}function Eh(e){var t;return e&&null!==(t=fh[e])&&void 0!==t?t:gh}const Th={HDD:"HDD",SSD:"SSD",MVME:"NVME"};function Oh(e){if(!e)return;const t=function(e,t){const n={};return Object.entries(t).reduce(((t,r)=>{let[i,o]=r;const a=e.length-t,s=a-o;return n[i]=e.substring(s,a)||"0",t+o}),0),n}(BigInt(e).toString(2),{isSolidState:1,kind:55,typeExt:8});if("1"===t.isSolidState)switch(parseInt(t.typeExt,2)){case 0:return Th.SSD;case 2:return Th.MVME}else if("0"===t.typeExt)return Th.HDD}function Nh(){var e;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const n=t.PDisk?kh(t.PDisk):void 0,r=function(e,t,n){const r=null!==t&&void 0!==t?t:n;if(!(0,Ou.kE)(e)||!(0,Ou.kE)(r))return;return Math.round(100*Number(e)/(Number(e)+Number(r)))}(t.AllocatedSize,t.AvailableSize,null===n||void 0===n?void 0:n.AvailableSize),i=null===(e=t.Donors)||void 0===e?void 0:e.map((e=>Nh({...e,DonorMode:!0}))),o=Ch(t);return{...t,PDisk:n,AllocatedPercent:r,Donors:i,Severity:o}}function kh(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{AvailableSize:t,TotalSize:n,Category:r}=e,i=Oh(r),o=function(e,t){if(!(0,Ou.kE)(e)||!(0,Ou.kE)(t))return;return Math.round(100*(Number(t)-Number(e))/Number(t))}(t,n),a=wh(e,o);return{...e,Type:i,AllocatedPercent:o,Severity:a}}const jh={[al.K.Grey]:0,[al.K.Blue]:0,[al.K.Green]:1,[al.K.Yellow]:100,[al.K.Orange]:1e4,[al.K.Red]:1e6},Ih=(e,t)=>{var n;const r=Nh(e);return{...r,StoragePoolName:t,Donors:null===r||void 0===r||null===(n=r.Donors)||void 0===n?void 0:n.map((e=>({...e,StoragePoolName:t})))}},Ph=(e,t)=>{var n;let r,i=0,o=0,a=0,s=0,l=0,c=0;const{Name:u,MediaType:d}=t;if(e.VDisks)for(const f of e.VDisks){const{Replicated:e,VDiskState:t,AvailableSize:n,AllocatedSize:u,PDisk:d,DiskSpace:h,ReadThroughput:p,WriteThroughput:m}=f,{Type:g,State:v,AvailableSize:y}=kh(d);e&&v===hh.Normal&&t===ph.OK||(i+=1),h&&(o+=jh[h]);const b=Number(null!==n&&void 0!==n?n:y)||0,x=Number(u)||0;a+=x,s+=b+x,l+=Number(p)||0,c+=Number(m)||0,r=!g||g!==r&&r?"Mixed":g}const h=null===(n=e.VDisks)||void 0===n?void 0:n.map((e=>Ih(e,u))),p=ah({Used:a,Limit:s},5);return{...e,VDisks:h,Usage:p,Read:l,Write:c,PoolName:u,Used:a,Limit:s,Degraded:i,UsedSpaceFlag:o,MediaType:d||r||void 0}},Dh=e=>{const{VDisks:t=[],PoolName:n,Usage:r=0,Read:i=0,Write:o=0,Used:a=0,Limit:s=0,Degraded:l=0,Kind:c,MediaType:u}=e,d=t.reduce(((e,t)=>{let{DiskSpace:n}=t;return n&&n!==al.K.Grey?e+jh[n]:e}),0),h=t.map((e=>Ih(e,n))),p=Math.floor(100*Number(r));return{...e,UsedSpaceFlag:d,PoolName:n,MediaType:u||c,VDisks:h,Usage:p,Read:Number(i),Write:Number(o),Used:Number(a),Limit:Number(s),Degraded:Number(l)}},Ah=(e,t)=>{let n=[];return e?n=e.map(Dh):null===t||void 0===t||t.forEach((e=>{var t;null===(t=e.Groups)||void 0===t||t.forEach((t=>{n.push(Ph(t,e))}))})),n},Rh=e=>{var t,n,r;const i=(null===(t=e.PDisks)||void 0===t?void 0:t.filter((e=>e.State!==hh.Normal)).length)||0,o=null===(n=e.PDisks)||void 0===n?void 0:n.map((t=>({...kh(t),NodeId:e.NodeId}))),a=null===(r=e.VDisks)||void 0===r?void 0:r.map((t=>({...Nh(t),NodeId:e.NodeId})));return{...(0,Na.Ns)(e.SystemState),NodeId:e.NodeId,PDisks:o,VDisks:a,Missing:i}},Mh=e=>{const{Nodes:t,TotalNodes:n,FoundNodes:r}=e,i=null===t||void 0===t?void 0:t.map(Rh);return{nodes:i,total:Number(n)||(null===i||void 0===i?void 0:i.length),found:Number(r)}},Lh=e=>{const{StoragePools:t,StorageGroups:n,TotalGroups:r,FoundGroups:i}=e,o=Ah(n,t);return{groups:o,total:Number(r)||o.length,found:Number(i)}},Fh=Dl.h.injectEndpoints({endpoints:e=>({getStorageNodesInfo:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{const t=await window.api.getNodes({storage:!0,type:"static",...e},{signal:n});return{data:Mh(t)}}catch(r){return{error:r}}},providesTags:["All"]}),getStorageGroupsInfo:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{const t=await window.api.getStorageInfo({version:ka.v1,...e},{signal:n});return{data:Lh(t)}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"});var zh=n(95408);const Bh=zh.z.nativeEnum(ih).catch(ih.all),Uh=zh.z.nativeEnum(oh).catch(oh.groups),Hh={[oh.groups]:"Groups",[oh.nodes]:"Nodes"},Vh=e=>{let{value:t,onChange:n}=e;return(0,Le.jsxs)(Oo,{value:t,onUpdate:n,qa:"storage-type-filter",children:[(0,Le.jsx)(Oo.Option,{value:oh.groups,children:Hh[oh.groups]}),(0,Le.jsx)(Oo.Option,{value:oh.nodes,children:Hh[oh.nodes]})]})},Gh={[ih.all]:"All",[ih.missing]:"Degraded",[ih.space]:"Out of Space"},Wh=e=>{let{value:t,onChange:n}=e;return(0,Le.jsxs)(Oo,{value:t,onUpdate:n,qa:"storage-visible-entities-filter",children:[(0,Le.jsx)(Oo.Option,{value:ih.missing,children:Gh[ih.missing]}),(0,Le.jsx)(Oo.Option,{value:ih.space,children:Gh[ih.space]}),(0,Le.jsx)(Oo.Option,{value:ih.all,children:Gh[ih.all]})]})},qh=e=>{var t;const[n,r]=_t(e.open,null!==(t=e.defaultOpen)&&void 0!==t&&t,e.onOpenChange),{onClose:i}=e,o=a.useCallback((e=>{const t="boolean"===typeof e?e:!n;t!==n&&r(t),!1===t&&i&&i()}),[n,r,i]);return{open:n,toggleOpen:o}};class Zh{constructor(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};var r,i;this.nativeEvent=t,this.target=null!==(r=n.target)&&void 0!==r?r:t.target,this.currentTarget=null!==(i=n.currentTarget)&&void 0!==i?i:t.currentTarget,this.relatedTarget=t.relatedTarget,this.bubbles=t.bubbles,this.cancelable=t.cancelable,this.defaultPrevented=t.defaultPrevented,this.eventPhase=t.eventPhase,this.isTrusted=t.isTrusted,this.timeStamp=t.timeStamp,this.type=e}isDefaultPrevented(){return this.nativeEvent.defaultPrevented}preventDefault(){this.defaultPrevented=!0,this.nativeEvent.preventDefault()}stopPropagation(){this.nativeEvent.stopPropagation(),this.isPropagationStopped=()=>!0}isPropagationStopped(){return!1}persist(){}}function Yh(e){const{onFocusWithin:t,onBlurWithin:n,onFocusWithinChange:r,isDisabled:i}=e,o=a.useRef(!1),s=a.useCallback((e=>{o.current||document.activeElement!==e.target||(o.current=!0,t&&t(e),r&&r(!0))}),[t,r]),l=a.useCallback((e=>{o.current&&(o.current=!1,n&&n(e),r&&r(!1))}),[n,r]),{onBlur:c,onFocus:u}=function(e){let{onFocus:t,onBlur:n,isDisabled:r}=e;const i=a.useRef(!1),o=a.useRef(null);a.useEffect((()=>{if(r)return;const e=function(){i.current=!1},t=function(e){if(!i.current&&o.current){const t=new FocusEvent("blur",Object.assign(Object.assign({},e),{relatedTarget:e.target,bubbles:!1,cancelable:!1}));n(new Zh("blur",t,{target:o.current,currentTarget:o.current})),o.current=null}};return window.addEventListener("focus",e,{capture:!0}),window.addEventListener("focusin",t),()=>{window.removeEventListener("focus",e,{capture:!0}),window.removeEventListener("focusin",t)}}),[r,n]);const s=a.useCallback((e=>{null!==e.relatedTarget&&e.relatedTarget!==document.body&&e.relatedTarget!==document||(n(e),o.current=null)}),[n]),l=function(e){const t=a.useRef({isFocused:!1,observer:null});a.useEffect((()=>{const e=t.current;return()=>{e.observer&&(e.observer.disconnect(),e.observer=null)}}),[]);const n=a.useCallback((n=>{const r=n.target;if(r instanceof HTMLButtonElement||r instanceof HTMLInputElement||r instanceof HTMLTextAreaElement||r instanceof HTMLSelectElement){t.current.isFocused=!0;const n=n=>{t.current.isFocused=!1,r.disabled&&(null===e||void 0===e||e(new Zh("blur",n))),t.current.observer&&(t.current.observer.disconnect(),t.current.observer=null)};r.addEventListener("focusout",n,{once:!0});const i=new MutationObserver((()=>{if(t.current.isFocused&&r.disabled){i.disconnect(),t.current.observer=null;const e=r===document.activeElement?null:document.activeElement;r.dispatchEvent(new FocusEvent("blur",{relatedTarget:e})),r.dispatchEvent(new FocusEvent("focusout",{relatedTarget:e,bubbles:!0}))}}));i.observe(r,{attributes:!0,attributeFilter:["disabled"]}),t.current.observer=i}}),[e]);return n}(n),c=a.useCallback((e=>{i.current=!0,o.current=e.target,l(e),t(e)}),[l,t]);return{onBlur:s,onFocus:c}}({onFocus:s,onBlur:l,isDisabled:i});return i?{focusWithinProps:{onFocus:void 0,onBlur:void 0}}:{focusWithinProps:{onFocus:u,onBlur:c}}}var Kh=n(79805);const Qh=(0,le.Ge)("select"),Xh=(0,le.Ge)("select-control"),$h=(0,le.Ge)("select-control__button"),Jh=(0,le.Ge)("select-list"),ep=(0,le.Ge)("select-clear"),tp={s:28,m:28,l:32,xl:36},np=50,rp="select-list",ip="select-popup",op="select-sheet",ap="select-clear",sp="select-filter-input",lp=Symbol("flatten"),cp=(0,le.Ge)("select-filter"),up={padding:"4px 4px 0"},dp=a.forwardRef(((e,t)=>{const{onChange:n,onKeyDown:r,renderFilter:i,size:o,value:s,placeholder:l}=e,c=a.useRef(null);return a.useImperativeHandle(t,(()=>({focus:()=>{var e;return null===(e=c.current)||void 0===e?void 0:e.focus({preventScroll:!0})}})),[]),i?i({onChange:n,onKeyDown:r,value:s,ref:c,style:up}):a.createElement("div",{className:cp(),style:up},a.createElement(Ii,{controlRef:c,controlProps:{className:cp("input"),size:1},size:o,value:s,placeholder:l,onUpdate:n,onKeyDown:r,qa:sp}))}));dp.displayName="SelectFilter";var hp=n(85690),pp=n.n(hp),fp=n(95188),mp=n.n(fp),gp=n(38907),vp=a.createContext(null);var yp=function(e){e()},bp=function(){return yp};var xp={notify:function(){},get:function(){return[]}};function wp(e,t){var n,r=xp;function i(){a.onStateChange&&a.onStateChange()}function o(){n||(n=t?t.addNestedSub(i):e.subscribe(i),r=function(){var e=bp(),t=null,n=null;return{clear:function(){t=null,n=null},notify:function(){e((function(){for(var e=t;e;)e.callback(),e=e.next}))},get:function(){for(var e=[],n=t;n;)e.push(n),n=n.next;return e},subscribe:function(e){var r=!0,i=n={callback:e,next:null,prev:n};return i.prev?i.prev.next=i:t=i,function(){r&&null!==t&&(r=!1,i.next?i.next.prev=i.prev:n=i.prev,i.prev?i.prev.next=i.next:t=i.next)}}}}())}var a={addNestedSub:function(e){return o(),r.subscribe(e)},notifyNestedSubs:function(){r.notify()},handleChangeWrapper:i,isSubscribed:function(){return Boolean(n)},trySubscribe:o,tryUnsubscribe:function(){n&&(n(),n=void 0,r.clear(),r=xp)},getListeners:function(){return r}};return a}var Sp="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement?a.useLayoutEffect:a.useEffect;const _p=function(e){var t=e.store,n=e.context,r=e.children,i=(0,a.useMemo)((function(){var e=wp(t);return{store:t,subscription:e}}),[t]),o=(0,a.useMemo)((function(){return t.getState()}),[t]);Sp((function(){var e=i.subscription;return e.onStateChange=e.notifyNestedSubs,e.trySubscribe(),o!==t.getState()&&e.notifyNestedSubs(),function(){e.tryUnsubscribe(),e.onStateChange=null}}),[i,o]);var s=n||vp;return a.createElement(s.Provider,{value:i},r)};var Cp=n(60380),Ep=["getDisplayName","methodName","renderCountProp","shouldHandleStateChanges","storeKey","withRef","forwardRef","context"],Tp=["reactReduxForwardedRef"],Op=[],Np=[null,null];function kp(e,t){var n=e[1];return[t.payload,n+1]}function jp(e,t,n){Sp((function(){return e.apply(void 0,t)}),n)}function Ip(e,t,n,r,i,o,a){e.current=r,t.current=i,n.current=!1,o.current&&(o.current=null,a())}function Pp(e,t,n,r,i,o,a,s,l,c){if(e){var u=!1,d=null,h=function(){if(!u){var e,n,h=t.getState();try{e=r(h,i.current)}catch(tD){n=tD,d=tD}n||(d=null),e===o.current?a.current||l():(o.current=e,s.current=e,a.current=!0,c({type:"STORE_UPDATED",payload:{error:n}}))}};n.onStateChange=h,n.trySubscribe(),h();return function(){if(u=!0,n.tryUnsubscribe(),n.onStateChange=null,d)throw d}}}var Dp=function(){return[null,0]};function Ap(e,t){void 0===t&&(t={});var n=t,r=n.getDisplayName,i=void 0===r?function(e){return"ConnectAdvanced("+e+")"}:r,o=n.methodName,s=void 0===o?"connectAdvanced":o,l=n.renderCountProp,c=void 0===l?void 0:l,u=n.shouldHandleStateChanges,d=void 0===u||u,h=n.storeKey,p=void 0===h?"store":h,f=(n.withRef,n.forwardRef),m=void 0!==f&&f,g=n.context,v=void 0===g?vp:g,y=(0,Ko.Z)(n,Ep),b=v;return function(t){var n=t.displayName||t.name||"Component",r=i(n),o=(0,qo.Z)({},y,{getDisplayName:i,methodName:s,renderCountProp:c,shouldHandleStateChanges:d,storeKey:p,displayName:r,wrappedComponentName:n,WrappedComponent:t}),l=y.pure;var u=l?a.useMemo:function(e){return e()};function h(n){var r=(0,a.useMemo)((function(){var e=n.reactReduxForwardedRef,t=(0,Ko.Z)(n,Tp);return[n.context,e,t]}),[n]),i=r[0],s=r[1],l=r[2],c=(0,a.useMemo)((function(){return i&&i.Consumer&&(0,Cp.isContextConsumer)(a.createElement(i.Consumer,null))?i:b}),[i,b]),h=(0,a.useContext)(c),p=Boolean(n.store)&&Boolean(n.store.getState)&&Boolean(n.store.dispatch);Boolean(h)&&Boolean(h.store);var f=p?n.store:h.store,m=(0,a.useMemo)((function(){return function(t){return e(t.dispatch,o)}(f)}),[f]),g=(0,a.useMemo)((function(){if(!d)return Np;var e=wp(f,p?null:h.subscription),t=e.notifyNestedSubs.bind(e);return[e,t]}),[f,p,h]),v=g[0],y=g[1],x=(0,a.useMemo)((function(){return p?h:(0,qo.Z)({},h,{subscription:v})}),[p,h,v]),w=(0,a.useReducer)(kp,Op,Dp),S=w[0][0],_=w[1];if(S&&S.error)throw S.error;var C=(0,a.useRef)(),E=(0,a.useRef)(l),T=(0,a.useRef)(),O=(0,a.useRef)(!1),N=u((function(){return T.current&&l===E.current?T.current:m(f.getState(),l)}),[f,S,l]);jp(Ip,[E,C,O,l,N,T,y]),jp(Pp,[d,f,v,m,E,C,O,T,y,_],[f,v,m]);var k=(0,a.useMemo)((function(){return a.createElement(t,(0,qo.Z)({},N,{ref:s}))}),[s,t,N]);return(0,a.useMemo)((function(){return d?a.createElement(c.Provider,{value:x},k):k}),[c,k,x])}var f=l?a.memo(h):h;if(f.WrappedComponent=t,f.displayName=h.displayName=r,m){var g=a.forwardRef((function(e,t){return a.createElement(f,(0,qo.Z)({},e,{reactReduxForwardedRef:t}))}));return g.displayName=r,g.WrappedComponent=t,Xo()(g,t)}return Xo()(f,t)}}function Rp(e,t){return e===t?0!==e||0!==t||1/e===1/t:e!==e&&t!==t}function Mp(e,t){if(Rp(e,t))return!0;if("object"!==typeof e||null===e||"object"!==typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(var i=0;i=0;r--){var i=t[r](e);if(i)return i}return function(t,r){throw new Error("Invalid value of type "+typeof e+" for "+n+" argument when connecting component "+r.wrappedComponentName+".")}}function Qp(e,t){return e===t}function Xp(e){var t=void 0===e?{}:e,n=t.connectHOC,r=void 0===n?Ap:n,i=t.mapStateToPropsFactories,o=void 0===i?Up:i,a=t.mapDispatchToPropsFactories,s=void 0===a?Bp:a,l=t.mergePropsFactories,c=void 0===l?Vp:l,u=t.selectorFactory,d=void 0===u?Zp:u;return function(e,t,n,i){void 0===i&&(i={});var a=i,l=a.pure,u=void 0===l||l,h=a.areStatesEqual,p=void 0===h?Qp:h,f=a.areOwnPropsEqual,m=void 0===f?Mp:f,g=a.areStatePropsEqual,v=void 0===g?Mp:g,y=a.areMergedPropsEqual,b=void 0===y?Mp:y,x=(0,Ko.Z)(a,Yp),w=Kp(e,o,"mapStateToProps"),S=Kp(t,s,"mapDispatchToProps"),_=Kp(n,c,"mergeProps");return r(d,(0,qo.Z)({methodName:"connect",getDisplayName:function(e){return"Connect("+e+")"},shouldHandleStateChanges:Boolean(e),initMapStateToProps:w,initMapDispatchToProps:S,initMergeProps:_,pure:u,areStatesEqual:p,areOwnPropsEqual:m,areStatePropsEqual:v,areMergedPropsEqual:b},x))}}const $p=Xp();var Jp;function ef(e,t){var n=(0,a.useState)((function(){return{inputs:t,result:e()}}))[0],r=(0,a.useRef)(!0),i=(0,a.useRef)(n),o=r.current||Boolean(t&&i.current.inputs&&function(e,t){if(e.length!==t.length)return!1;for(var n=0;n");return t.callbacks},t.setCallbacks=function(e){t.callbacks=e},t}(0,Uo.Z)(t,e);var n=t.prototype;return n.componentDidMount=function(){this.unbind=Of(window,[{eventName:"error",fn:this.onWindowError}])},n.componentDidCatch=function(e){if(!(e instanceof jf))throw e;this.setState({})},n.componentWillUnmount=function(){this.unbind()},n.render=function(){return this.props.children(this.setCallbacks)},t}(a.Component),Df=function(e){return e+1},Af=function(e,t){var n=e.droppableId===t.droppableId,r=Df(e.index),i=Df(t.index);return n?"\n You have moved the item from position "+r+"\n to position "+i+"\n ":"\n You have moved the item from position "+r+"\n in list "+e.droppableId+"\n to list "+t.droppableId+"\n in position "+i+"\n "},Rf=function(e,t,n){return t.droppableId===n.droppableId?"\n The item "+e+"\n has been combined with "+n.draggableId:"\n The item "+e+"\n in list "+t.droppableId+"\n has been combined with "+n.draggableId+"\n in list "+n.droppableId+"\n "},Mf=function(e){return"\n The item has returned to its starting position\n of "+Df(e.index)+"\n"},Lf={dragHandleUsageInstructions:"\n Press space bar to start a drag.\n When dragging you can use the arrow keys to move the item around and escape to cancel.\n Some screen readers may require you to be in focus mode or to use your pass through key\n",onDragStart:function(e){return"\n You have lifted an item in position "+Df(e.source.index)+"\n"},onDragUpdate:function(e){var t=e.destination;if(t)return Af(e.source,t);var n=e.combine;return n?Rf(e.draggableId,e.source,n):"You are over an area that cannot be dropped on"},onDragEnd:function(e){if("CANCEL"===e.reason)return"\n Movement cancelled.\n "+Mf(e.source)+"\n ";var t=e.destination,n=e.combine;return t?"\n You have dropped the item.\n "+Af(e.source,t)+"\n ":n?"\n You have dropped the item.\n "+Rf(e.draggableId,e.source,n)+"\n ":"\n The item has been dropped while not over a drop area.\n "+Mf(e.source)+"\n "}},Ff={x:0,y:0},zf=function(e,t){return{x:e.x+t.x,y:e.y+t.y}},Bf=function(e,t){return{x:e.x-t.x,y:e.y-t.y}},Uf=function(e,t){return e.x===t.x&&e.y===t.y},Hf=function(e){return{x:0!==e.x?-e.x:0,y:0!==e.y?-e.y:0}},Vf=function(e,t,n){var r;return void 0===n&&(n=0),(r={})[e]=t,r["x"===e?"y":"x"]=n,r},Gf=function(e,t){return Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))},Wf=function(e,t){return Math.min.apply(Math,t.map((function(t){return Gf(e,t)})))},qf=function(e){return function(t){return{x:e(t.x),y:e(t.y)}}},Zf=function(e,t){return{top:e.top+t.y,left:e.left+t.x,bottom:e.bottom+t.y,right:e.right+t.x}},Yf=function(e){return[{x:e.left,y:e.top},{x:e.right,y:e.top},{x:e.left,y:e.bottom},{x:e.right,y:e.bottom}]},Kf=function(e,t){return t&&t.shouldClipSubject?function(e,t){var n=rf({top:Math.max(t.top,e.top),right:Math.min(t.right,e.right),bottom:Math.min(t.bottom,e.bottom),left:Math.max(t.left,e.left)});return n.width<=0||n.height<=0?null:n}(t.pageMarginBox,e):rf(e)},Qf=function(e){var t=e.page,n=e.withPlaceholder,r=e.axis,i=e.frame,o=function(e,t){return t?Zf(e,t.scroll.diff.displacement):e}(t.marginBox,i),a=function(e,t,n){var r;return n&&n.increasedBy?(0,qo.Z)({},e,((r={})[t.end]=e[t.end]+n.increasedBy[t.line],r)):e}(o,r,n);return{page:t,withPlaceholder:n,active:Kf(a,i)}},Xf=function(e,t){e.frame||If(!1);var n=e.frame,r=Bf(t,n.scroll.initial),i=Hf(r),o=(0,qo.Z)({},n,{scroll:{initial:n.scroll.initial,current:t,diff:{value:r,displacement:i},max:n.scroll.max}}),a=Qf({page:e.subject.page,withPlaceholder:e.subject.withPlaceholder,axis:e.axis,frame:o});return(0,qo.Z)({},e,{frame:o,subject:a})};function $f(e){return Object.values?Object.values(e):Object.keys(e).map((function(t){return e[t]}))}function Jf(e,t){if(e.findIndex)return e.findIndex(t);for(var n=0;ne.bottom,s=r.lefte.right;return!(!a||!s)||(a&&o||s&&i)}},gm=function(e){var t=fm(e.top,e.bottom),n=fm(e.left,e.right);return function(e){return t(e.top)&&t(e.bottom)&&n(e.left)&&n(e.right)}},vm={direction:"vertical",line:"y",crossAxisLine:"x",start:"top",end:"bottom",size:"height",crossAxisStart:"left",crossAxisEnd:"right",crossAxisSize:"width"},ym={direction:"horizontal",line:"x",crossAxisLine:"y",start:"left",end:"right",size:"width",crossAxisStart:"top",crossAxisEnd:"bottom",crossAxisSize:"height"},bm=function(e){var t=e.target,n=e.destination,r=e.viewport,i=e.withDroppableDisplacement,o=e.isVisibleThroughFrameFn,a=i?function(e,t){var n=t.frame?t.frame.scroll.diff.displacement:Ff;return Zf(e,n)}(t,n):t;return function(e,t,n){return!!t.subject.active&&n(t.subject.active)(e)}(a,n,o)&&function(e,t,n){return n(t)(e)}(a,r,o)},xm=function(e){return bm((0,qo.Z)({},e,{isVisibleThroughFrameFn:mm}))},wm=function(e){return bm((0,qo.Z)({},e,{isVisibleThroughFrameFn:gm}))},Sm=function(e,t,n){if("boolean"===typeof n)return n;if(!t)return!0;var r=t.invisible,i=t.visible;if(r[e])return!1;var o=i[e];return!o||o.shouldAnimate};function _m(e){var t=e.afterDragging,n=e.destination,r=e.displacedBy,i=e.viewport,o=e.forceShouldAnimate,a=e.last;return t.reduce((function(e,t){var s=function(e,t){var n=e.page.marginBox,r={top:t.point.y,right:0,bottom:0,left:t.point.x};return rf(of(n,r))}(t,r),l=t.descriptor.id;if(e.all.push(l),!xm({target:s,destination:n,viewport:i,withDroppableDisplacement:!0}))return e.invisible[t.descriptor.id]=!0,e;var c={draggableId:l,shouldAnimate:Sm(l,a,o)};return e.visible[l]=c,e}),{all:[],visible:{},invisible:{}})}function Cm(e){var t=e.insideDestination,n=e.inHomeList,r=e.displacedBy,i=e.destination,o=function(e,t){if(!e.length)return 0;var n=e[e.length-1].descriptor.index;return t.inHomeList?n:n+1}(t,{inHomeList:n});return{displaced:hm,displacedBy:r,at:{type:"REORDER",destination:{droppableId:i.descriptor.id,index:o}}}}function Em(e){var t=e.draggable,n=e.insideDestination,r=e.destination,i=e.viewport,o=e.displacedBy,a=e.last,s=e.index,l=e.forceShouldAnimate,c=um(t,r);if(null==s)return Cm({insideDestination:n,inHomeList:c,displacedBy:o,destination:r});var u=em(n,(function(e){return e.descriptor.index===s}));if(!u)return Cm({insideDestination:n,inHomeList:c,displacedBy:o,destination:r});var d=cm(t,n),h=n.indexOf(u);return{displaced:_m({afterDragging:d.slice(h),destination:r,displacedBy:o,last:a,viewport:i.frame,forceShouldAnimate:l}),displacedBy:o,at:{type:"REORDER",destination:{droppableId:r.descriptor.id,index:s}}}}function Tm(e,t){return Boolean(t.effected[e])}var Om=function(e){var t=e.isMovingForward,n=e.isInHomeList,r=e.draggable,i=e.draggables,o=e.destination,a=e.insideDestination,s=e.previousImpact,l=e.viewport,c=e.afterCritical,u=s.at;if(u||If(!1),"REORDER"===u.type){var d=function(e){var t=e.isMovingForward,n=e.isInHomeList,r=e.insideDestination,i=e.location;if(!r.length)return null;var o=i.index,a=t?o+1:o-1,s=r[0].descriptor.index,l=r[r.length-1].descriptor.index;return a(n?l:l+1)?null:a}({isMovingForward:t,isInHomeList:n,location:u.destination,insideDestination:a});return null==d?null:Em({draggable:r,insideDestination:a,destination:o,viewport:l,last:s.displaced,displacedBy:s.displacedBy,index:d})}var h=function(e){var t=e.isMovingForward,n=e.destination,r=e.draggables,i=e.combine,o=e.afterCritical;if(!n.isCombineEnabled)return null;var a=i.draggableId,s=r[a].descriptor.index;return Tm(a,o)?t?s:s-1:t?s+1:s}({isMovingForward:t,destination:o,displaced:s.displaced,draggables:i,combine:u.combine,afterCritical:c});return null==h?null:Em({draggable:r,insideDestination:a,destination:o,viewport:l,last:s.displaced,displacedBy:s.displacedBy,index:h})},Nm=function(e){var t=e.afterCritical,n=e.impact,r=e.draggables,i=lm(n);i||If(!1);var o=i.draggableId,a=r[o].page.borderBox.center,s=function(e){var t=e.displaced,n=e.afterCritical,r=e.combineWith,i=e.displacedBy,o=Boolean(t.visible[r]||t.invisible[r]);return Tm(r,n)?o?Ff:Hf(i.point):o?i.point:Ff}({displaced:n.displaced,afterCritical:t,combineWith:o,displacedBy:n.displacedBy});return zf(a,s)},km=function(e,t){return t.margin[e.start]+t.borderBox[e.size]/2},jm=function(e,t,n){return t[e.crossAxisStart]+n.margin[e.crossAxisStart]+n.borderBox[e.crossAxisSize]/2},Im=function(e){var t=e.axis,n=e.moveRelativeTo,r=e.isMoving;return Vf(t.line,n.marginBox[t.end]+km(t,r),jm(t,n.marginBox,r))},Pm=function(e){var t=e.axis,n=e.moveRelativeTo,r=e.isMoving;return Vf(t.line,n.marginBox[t.start]-function(e,t){return t.margin[e.end]+t.borderBox[e.size]/2}(t,r),jm(t,n.marginBox,r))},Dm=function(e){var t=e.impact,n=e.draggable,r=e.draggables,i=e.droppable,o=e.afterCritical,a=am(i.descriptor.id,r),s=n.page,l=i.axis;if(!a.length)return function(e){var t=e.axis,n=e.moveInto,r=e.isMoving;return Vf(t.line,n.contentBox[t.start]+km(t,r),jm(t,n.contentBox,r))}({axis:l,moveInto:i.page,isMoving:s});var c=t.displaced,u=t.displacedBy,d=c.all[0];if(d){var h=r[d];if(Tm(d,o))return Pm({axis:l,moveRelativeTo:h.page,isMoving:s});var p=uf(h.page,u.point);return Pm({axis:l,moveRelativeTo:p,isMoving:s})}var f=a[a.length-1];if(f.descriptor.id===n.descriptor.id)return s.borderBox.center;if(Tm(f.descriptor.id,o)){var m=uf(f.page,Hf(o.displacedBy.point));return Im({axis:l,moveRelativeTo:m,isMoving:s})}return Im({axis:l,moveRelativeTo:f.page,isMoving:s})},Am=function(e,t){var n=e.frame;return n?zf(t,n.scroll.diff.displacement):t},Rm=function(e){var t=function(e){var t=e.impact,n=e.draggable,r=e.droppable,i=e.draggables,o=e.afterCritical,a=n.page.borderBox.center,s=t.at;return r&&s?"REORDER"===s.type?Dm({impact:t,draggable:n,draggables:i,droppable:r,afterCritical:o}):Nm({impact:t,draggables:i,afterCritical:o}):a}(e),n=e.droppable;return n?Am(n,t):t},Mm=function(e,t){var n=Bf(t,e.scroll.initial),r=Hf(n);return{frame:rf({top:t.y,bottom:t.y+e.frame.height,left:t.x,right:t.x+e.frame.width}),scroll:{initial:e.scroll.initial,max:e.scroll.max,current:t,diff:{value:n,displacement:r}}}};function Lm(e,t){return e.map((function(e){return t[e]}))}var Fm=function(e){var t=e.pageBorderBoxCenter,n=e.draggable,r=function(e,t){return zf(e.scroll.diff.displacement,t)}(e.viewport,t),i=Bf(r,n.page.borderBox.center);return zf(n.client.borderBox.center,i)},zm=function(e){var t=e.draggable,n=e.destination,r=e.newPageBorderBoxCenter,i=e.viewport,o=e.withDroppableDisplacement,a=e.onlyOnMainAxis,s=void 0!==a&&a,l=Bf(r,t.page.borderBox.center),c={target:Zf(t.page.borderBox,l),destination:n,withDroppableDisplacement:o,viewport:i};return s?function(e){return bm((0,qo.Z)({},e,{isVisibleThroughFrameFn:(t=e.destination.axis,function(e){var n=fm(e.top,e.bottom),r=fm(e.left,e.right);return function(e){return t===vm?n(e.top)&&n(e.bottom):r(e.left)&&r(e.right)}})}));var t}(c):wm(c)},Bm=function(e){var t=e.isMovingForward,n=e.draggable,r=e.destination,i=e.draggables,o=e.previousImpact,a=e.viewport,s=e.previousPageBorderBoxCenter,l=e.previousClientSelection,c=e.afterCritical;if(!r.isEnabled)return null;var u=am(r.descriptor.id,i),d=um(n,r),h=function(e){var t=e.isMovingForward,n=e.draggable,r=e.destination,i=e.insideDestination,o=e.previousImpact;if(!r.isCombineEnabled)return null;if(!sm(o))return null;function a(e){var t={type:"COMBINE",combine:{draggableId:e,droppableId:r.descriptor.id}};return(0,qo.Z)({},o,{at:t})}var s=o.displaced.all,l=s.length?s[0]:null;if(t)return l?a(l):null;var c=cm(n,i);if(!l)return c.length?a(c[c.length-1].descriptor.id):null;var u=Jf(c,(function(e){return e.descriptor.id===l}));-1===u&&If(!1);var d=u-1;return d<0?null:a(c[d].descriptor.id)}({isMovingForward:t,draggable:n,destination:r,insideDestination:u,previousImpact:o})||Om({isMovingForward:t,isInHomeList:d,draggable:n,draggables:i,destination:r,insideDestination:u,previousImpact:o,viewport:a,afterCritical:c});if(!h)return null;var p=Rm({impact:h,draggable:n,droppable:r,draggables:i,afterCritical:c});if(zm({draggable:n,destination:r,newPageBorderBoxCenter:p,viewport:a.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0}))return{clientSelection:Fm({pageBorderBoxCenter:p,draggable:n,viewport:a}),impact:h,scrollJumpRequest:null};var f=Bf(p,s),m=function(e){var t=e.impact,n=e.viewport,r=e.destination,i=e.draggables,o=e.maxScrollChange,a=Mm(n,zf(n.scroll.current,o)),s=r.frame?Xf(r,zf(r.frame.scroll.current,o)):r,l=t.displaced,c=_m({afterDragging:Lm(l.all,i),destination:r,displacedBy:t.displacedBy,viewport:a.frame,last:l,forceShouldAnimate:!1}),u=_m({afterDragging:Lm(l.all,i),destination:s,displacedBy:t.displacedBy,viewport:n.frame,last:l,forceShouldAnimate:!1}),d={},h={},p=[l,c,u];return l.all.forEach((function(e){var t=function(e,t){for(var n=0;n1?u.sort((function(e,t){return Um(e)[s.start]-Um(t)[s.start]}))[0]:c.sort((function(e,t){var r=Wf(n,Yf(Um(e))),i=Wf(n,Yf(Um(t)));return r!==i?r-i:Um(e)[s.start]-Um(t)[s.start]}))[0]}({isMovingForward:t,pageBorderBoxCenter:n,source:i,droppables:a,viewport:s});if(!c)return null;var u=am(c.descriptor.id,o),d=function(e){var t=e.pageBorderBoxCenter,n=e.viewport,r=e.destination,i=e.insideDestination,o=e.afterCritical,a=i.filter((function(e){return wm({target:Vm(e,o),destination:r,viewport:n.frame,withDroppableDisplacement:!0})})).sort((function(e,n){var i=Gf(t,Am(r,Hm(e,o))),a=Gf(t,Am(r,Hm(n,o)));return ir.left&&n.topr.top))return!1;if(Xm(i)(t.center))return!0;var o=e.axis,a=i.center[o.crossAxisLine],s=t[o.crossAxisStart],l=t[o.crossAxisEnd],c=fm(i[o.crossAxisStart],i[o.crossAxisEnd]),u=c(s),d=c(l);return!u&&!d||(u?sa)}));return i.length?1===i.length?i[0].descriptor.id:function(e){var t=e.pageBorderBox,n=e.draggable,r=e.candidates,i=n.page.borderBox.center,o=r.map((function(e){var n=e.axis,r=Vf(e.axis.line,t.center[n.line],e.page.borderBox.center[n.crossAxisLine]);return{id:e.descriptor.id,distance:Gf(i,r)}})).sort((function(e,t){return t.distance-e.distance}));return o[0]?o[0].id:null}({pageBorderBox:t,draggable:n,candidates:i}):null}var Jm=function(e,t){return rf(Zf(e,t))};function eg(e){var t=e.displaced,n=e.id;return Boolean(t.visible[n]||t.invisible[n])}var tg=function(e){var t=e.pageOffset,n=e.draggable,r=e.draggables,i=e.droppables,o=e.previousImpact,a=e.viewport,s=e.afterCritical,l=Jm(n.page.borderBox,t),c=$m({pageBorderBox:l,draggable:n,droppables:i});if(!c)return pm;var u=i[c],d=am(u.descriptor.id,r),h=function(e,t){var n=e.frame;return n?Jm(t,n.scroll.diff.value):t}(u,l);return function(e){var t=e.draggable,n=e.pageBorderBoxWithDroppableScroll,r=e.previousImpact,i=e.destination,o=e.insideDestination,a=e.afterCritical;if(!i.isCombineEnabled)return null;var s=i.axis,l=Gm(i.axis,t.displaceBy),c=l.value,u=n[s.start],d=n[s.end],h=em(cm(t,o),(function(e){var t=e.descriptor.id,n=e.page.borderBox,i=n[s.size]/4,o=Tm(t,a),l=eg({displaced:r.displaced,id:t});return o?l?d>n[s.start]+i&&dn[s.start]-c+i&&un[s.start]+c+i&&dn[s.start]+i&&ut.descriptor.index?n.descriptor.index-1:n.descriptor.index:null}({draggable:n,closest:em(cm(n,i),(function(e){var t=e.descriptor.id,n=e.page.borderBox.center[l.line],r=Tm(t,s),i=eg({displaced:o,id:t});return r?i?h<=n:d=1500)return Ug;var o=Bg+Hg*(i/1500);return Number(("CANCEL"===r?.6*o:o).toFixed(2))}({current:i.current.client.offset,destination:g,reason:o});n(function(e){return{type:"DROP_ANIMATE",payload:e}}({newHomeClientOffset:g,dropDuration:y,completed:v}))}else n(kg({completed:v}))}}else n(function(e){return{type:"DROP_PENDING",payload:e}}({reason:o}))}else e(r)}}},Gg=function(){return{x:window.pageXOffset,y:window.pageYOffset}};function Wg(e){var t=e.onWindowScroll;var n=vf((function(){t(Gg())})),r=function(e){return{eventName:"scroll",options:{passive:!0,capture:!1},fn:function(t){t.target!==window&&t.target!==window.document||e()}}}(n),i=Tf;function o(){return i!==Tf}return{start:function(){o()&&If(!1),i=Of(window,[r])},stop:function(){o()||If(!1),n.cancel(),i(),i=Tf},isActive:o}}var qg=function(e){var t=Wg({onWindowScroll:function(t){e.dispatch({type:"MOVE_BY_WINDOW_SCROLL",payload:{newScroll:t}})}});return function(e){return function(n){t.isActive()||"INITIAL_PUBLISH"!==n.type||t.start(),t.isActive()&&function(e){return"DROP_COMPLETE"===e.type||"DROP_ANIMATE"===e.type||"FLUSH"===e.type}(n)&&t.stop(),e(n)}}},Zg=function(){var e=[];return{add:function(t){var n=setTimeout((function(){return function(t){var n=Jf(e,(function(e){return e.timerId===t}));-1===n&&If(!1),e.splice(n,1)[0].callback()}(n)})),r={timerId:n,callback:t};e.push(r)},flush:function(){if(e.length){var t=[].concat(e);e.length=0,t.forEach((function(e){clearTimeout(e.timerId),e.callback()}))}}}},Yg=function(e,t){cg(),t(),ug()},Kg=function(e,t){return{draggableId:e.draggable.id,type:e.droppable.type,source:{droppableId:e.droppable.id,index:e.draggable.index},mode:t}},Qg=function(e,t,n,r){if(e){var i=function(e){var t=!1,n=!1,r=setTimeout((function(){n=!0})),i=function(i){t||n||(t=!0,e(i),clearTimeout(r))};return i.wasCalled=function(){return t},i}(n);e(t,{announce:i}),i.wasCalled()||n(r(t))}else n(r(t))},Xg=function(e,t){var n=function(e,t){var n=Zg(),r=null,i=function(n){r||If(!1),r=null,Yg(0,(function(){return Qg(e().onDragEnd,n,t,Lf.onDragEnd)}))};return{beforeCapture:function(t,n){r&&If(!1),Yg(0,(function(){var r=e().onBeforeCapture;r&&r({draggableId:t,mode:n})}))},beforeStart:function(t,n){r&&If(!1),Yg(0,(function(){var r=e().onBeforeDragStart;r&&r(Kg(t,n))}))},start:function(i,o){r&&If(!1);var a=Kg(i,o);r={mode:o,lastCritical:i,lastLocation:a.source,lastCombine:null},n.add((function(){Yg(0,(function(){return Qg(e().onDragStart,a,t,Lf.onDragStart)}))}))},update:function(i,o){var a=sm(o),s=lm(o);r||If(!1);var l=!function(e,t){if(e===t)return!0;var n=e.draggable.id===t.draggable.id&&e.draggable.droppableId===t.draggable.droppableId&&e.draggable.type===t.draggable.type&&e.draggable.index===t.draggable.index,r=e.droppable.id===t.droppable.id&&e.droppable.type===t.droppable.type;return n&&r}(i,r.lastCritical);l&&(r.lastCritical=i);var c,u,d=(u=a,!(null==(c=r.lastLocation)&&null==u||null!=c&&null!=u&&c.droppableId===u.droppableId&&c.index===u.index));d&&(r.lastLocation=a);var h=!function(e,t){return null==e&&null==t||null!=e&&null!=t&&e.draggableId===t.draggableId&&e.droppableId===t.droppableId}(r.lastCombine,s);if(h&&(r.lastCombine=s),l||d||h){var p=(0,qo.Z)({},Kg(i,r.mode),{combine:s,destination:a});n.add((function(){Yg(0,(function(){return Qg(e().onDragUpdate,p,t,Lf.onDragUpdate)}))}))}},flush:function(){r||If(!1),n.flush()},drop:i,abort:function(){if(r){var e=(0,qo.Z)({},Kg(r.lastCritical,r.mode),{combine:null,destination:null,reason:"CANCEL"});i(e)}}}}(e,t);return function(e){return function(t){return function(r){if("BEFORE_INITIAL_CAPTURE"!==r.type){if("INITIAL_PUBLISH"===r.type){var i=r.payload.critical;return n.beforeStart(i,r.payload.movementMode),t(r),void n.start(i,r.payload.movementMode)}if("DROP_COMPLETE"===r.type){var o=r.payload.completed.result;return n.flush(),t(r),void n.drop(o)}if(t(r),"FLUSH"!==r.type){var a=e.getState();"DRAGGING"===a.phase&&n.update(a.critical,a.impact)}else n.abort()}else n.beforeCapture(r.payload.draggableId,r.payload.movementMode)}}}},$g=function(e){return function(t){return function(n){if("DROP_ANIMATION_FINISHED"===n.type){var r=e.getState();"DROP_ANIMATING"!==r.phase&&If(!1),e.dispatch(kg({completed:r.completed}))}else t(n)}}},Jg=function(e){var t=null,n=null;return function(r){return function(i){if("FLUSH"!==i.type&&"DROP_COMPLETE"!==i.type&&"DROP_ANIMATION_FINISHED"!==i.type||(n&&(cancelAnimationFrame(n),n=null),t&&(t(),t=null)),r(i),"DROP_ANIMATE"===i.type){var o={eventName:"scroll",options:{capture:!0,passive:!1,once:!0},fn:function(){"DROP_ANIMATING"===e.getState().phase&&e.dispatch({type:"DROP_ANIMATION_FINISHED",payload:null})}};n=requestAnimationFrame((function(){n=null,t=Of(window,[o])}))}}}},ev=function(e){return function(t){return function(n){if(t(n),"PUBLISH_WHILE_DRAGGING"===n.type){var r=e.getState();"DROP_PENDING"===r.phase&&(r.isWaiting||e.dispatch(jg({reason:r.reason})))}}}},tv=gp.qC,nv=function(e){var t,n=e.dimensionMarshal,r=e.focusMarshal,i=e.styleMarshal,o=e.getResponders,a=e.announce,s=e.autoScroller;return(0,gp.MT)(gg,tv((0,gp.md)((t=i,function(){return function(e){return function(n){"INITIAL_PUBLISH"===n.type&&t.dragging(),"DROP_ANIMATE"===n.type&&t.dropping(n.payload.completed.result.reason),"FLUSH"!==n.type&&"DROP_COMPLETE"!==n.type||t.resting(),e(n)}}}),function(e){return function(){return function(t){return function(n){"DROP_COMPLETE"!==n.type&&"FLUSH"!==n.type&&"DROP_ANIMATE"!==n.type||e.stopPublishing(),t(n)}}}}(n),function(e){return function(t){var n=t.getState,r=t.dispatch;return function(t){return function(i){if("LIFT"===i.type){var o=i.payload,a=o.id,s=o.clientSelection,l=o.movementMode,c=n();"DROP_ANIMATING"===c.phase&&r(kg({completed:c.completed})),"IDLE"!==n().phase&&If(!1),r(Ng()),r({type:"BEFORE_INITIAL_CAPTURE",payload:{draggableId:a,movementMode:l}});var u={draggableId:a,scrollOptions:{shouldPublishImmediately:"SNAP"===l}},d=e.startPublishing(u),h=d.critical,p=d.dimensions,f=d.viewport;r({type:"INITIAL_PUBLISH",payload:{critical:h,dimensions:p,clientSelection:s,movementMode:l,viewport:f}})}else t(i)}}}}(n),Vg,$g,Jg,ev,function(e){return function(t){return function(n){return function(r){if(function(e){return"DROP_COMPLETE"===e.type||"DROP_ANIMATE"===e.type||"FLUSH"===e.type}(r))return e.stop(),void n(r);if("INITIAL_PUBLISH"===r.type){n(r);var i=t.getState();return"DRAGGING"!==i.phase&&If(!1),void e.start(i)}n(r),e.scroll(t.getState())}}}}(s),qg,function(e){var t=!1;return function(){return function(n){return function(r){if("INITIAL_PUBLISH"===r.type)return t=!0,e.tryRecordFocus(r.payload.critical.draggable.id),n(r),void e.tryRestoreFocusRecorded();if(n(r),t){if("FLUSH"===r.type)return t=!1,void e.tryRestoreFocusRecorded();if("DROP_COMPLETE"===r.type){t=!1;var i=r.payload.completed.result;i.combine&&e.tryShiftRecord(i.draggableId,i.combine.draggableId),e.tryRestoreFocusRecorded()}}}}}}(r),Xg(o,a))))},rv=function(){return{additions:{},removals:{},modified:{}}};var iv=function(e){var t=e.scrollHeight,n=e.scrollWidth,r=e.height,i=e.width,o=Bf({x:n,y:t},{x:i,y:r});return{x:Math.max(0,o.x),y:Math.max(0,o.y)}},ov=function(){var e=document.documentElement;return e||If(!1),e},av=function(){var e=ov();return iv({scrollHeight:e.scrollHeight,scrollWidth:e.scrollWidth,width:e.clientWidth,height:e.clientHeight})},sv=function(e){var t=e.critical,n=e.scrollOptions,r=e.registry;cg();var i=function(){var e=Gg(),t=av(),n=e.y,r=e.x,i=ov(),o=i.clientWidth,a=i.clientHeight;return{frame:rf({top:n,left:r,right:r+o,bottom:n+a}),scroll:{initial:e,current:e,max:t,diff:{value:Ff,displacement:Ff}}}}(),o=i.scroll.current,a=t.droppable,s=r.droppable.getAllByType(a.type).map((function(e){return e.callbacks.getDimensionAndWatchScroll(o,n)})),l=r.draggable.getAllByType(t.draggable.type).map((function(e){return e.getDimension(o)})),c={draggables:rm(l),droppables:nm(s)};return ug(),{dimensions:c,critical:t,viewport:i}};function lv(e,t,n){return n.descriptor.id!==t.id&&(n.descriptor.type===t.type&&"virtual"===e.droppable.getById(n.descriptor.droppableId).descriptor.mode)}var cv=function(e,t){var n=null,r=function(e){var t=e.registry,n=e.callbacks,r=rv(),i=null,o=function(){i||(n.collectionStarting(),i=requestAnimationFrame((function(){i=null,cg();var e=r,o=e.additions,a=e.removals,s=e.modified,l=Object.keys(o).map((function(e){return t.draggable.getById(e).getDimension(Ff)})).sort((function(e,t){return e.descriptor.index-t.descriptor.index})),c=Object.keys(s).map((function(e){return{droppableId:e,scroll:t.droppable.getById(e).callbacks.getScrollWhileDragging()}})),u={additions:l,removals:Object.keys(a),modified:c};r=rv(),ug(),n.publish(u)})))};return{add:function(e){var t=e.descriptor.id;r.additions[t]=e,r.modified[e.descriptor.droppableId]=!0,r.removals[t]&&delete r.removals[t],o()},remove:function(e){var t=e.descriptor;r.removals[t.id]=!0,r.modified[t.droppableId]=!0,r.additions[t.id]&&delete r.additions[t.id],o()},stop:function(){i&&(cancelAnimationFrame(i),i=null,r=rv())}}}({callbacks:{publish:t.publishWhileDragging,collectionStarting:t.collectionStarting},registry:e}),i=function(t){n||If(!1);var i=n.critical.draggable;"ADDITION"===t.type&&lv(e,i,t.value)&&r.add(t.value),"REMOVAL"===t.type&&lv(e,i,t.value)&&r.remove(t.value)},o={updateDroppableIsEnabled:function(r,i){e.droppable.exists(r)||If(!1),n&&t.updateDroppableIsEnabled({id:r,isEnabled:i})},updateDroppableIsCombineEnabled:function(r,i){n&&(e.droppable.exists(r)||If(!1),t.updateDroppableIsCombineEnabled({id:r,isCombineEnabled:i}))},scrollDroppable:function(t,r){n&&e.droppable.getById(t).callbacks.scroll(r)},updateDroppableScroll:function(r,i){n&&(e.droppable.exists(r)||If(!1),t.updateDroppableScroll({id:r,newScroll:i}))},startPublishing:function(t){n&&If(!1);var r=e.draggable.getById(t.draggableId),o=e.droppable.getById(r.descriptor.droppableId),a={draggable:r.descriptor,droppable:o.descriptor},s=e.subscribe(i);return n={critical:a,unsubscribe:s},sv({critical:a,registry:e,scrollOptions:t.scrollOptions})},stopPublishing:function(){if(n){r.stop();var t=n.critical.droppable;e.droppable.getAllByType(t.type).forEach((function(e){return e.callbacks.dragStopped()})),n.unsubscribe(),n=null}}};return o},uv=function(e,t){return"IDLE"===e.phase||"DROP_ANIMATING"===e.phase&&(e.completed.result.draggableId!==t&&"DROP"===e.completed.result.reason)},dv=function(e){window.scrollBy(e.x,e.y)},hv=gf((function(e){return im(e).filter((function(e){return!!e.isEnabled&&!!e.frame}))})),pv=function(e){var t=e.center,n=e.destination,r=e.droppables;if(n){var i=r[n];return i.frame?i:null}var o=function(e,t){var n=em(hv(t),(function(t){return t.frame||If(!1),Xm(t.frame.pageMarginBox)(e)}));return n}(t,r);return o},fv=.25,mv=.05,gv=28,vv=function(e){return Math.pow(e,2)},yv={stopDampeningAt:1200,accelerateAt:360},bv=function(e){var t=e.startOfRange,n=e.endOfRange,r=e.current,i=n-t;return 0===i?0:(r-t)/i},xv=yv.accelerateAt,wv=yv.stopDampeningAt,Sv=function(e){var t=e.distanceToEdge,n=e.thresholds,r=e.dragStartTime,i=e.shouldUseTimeDampening,o=function(e,t){if(e>t.startScrollingFrom)return 0;if(e<=t.maxScrollValueAt)return gv;if(e===t.startScrollingFrom)return 1;var n=bv({startOfRange:t.maxScrollValueAt,endOfRange:t.startScrollingFrom,current:e}),r=gv*vv(1-n);return Math.ceil(r)}(t,n);return 0===o?0:i?Math.max(function(e,t){var n=t,r=wv,i=Date.now()-n;if(i>=wv)return e;if(it.height,o=n.width>t.width;return o||i?o&&i?null:{x:o?0:r.x,y:i?0:r.y}:r}({container:n,subject:r,proposedScroll:c});return u?Uf(u,Ff)?null:u:null},Tv=qf((function(e){return 0===e?0:e>0?1:-1})),Ov=function(){var e=function(e,t){return e<0?e:e>t?e-t:0};return function(t){var n=t.current,r=t.max,i=t.change,o=zf(n,i),a={x:e(o.x,r.x),y:e(o.y,r.y)};return Uf(a,Ff)?null:a}}(),Nv=function(e){var t=e.max,n=e.current,r=e.change,i={x:Math.max(n.x,t.x),y:Math.max(n.y,t.y)},o=Tv(r),a=Ov({max:i,current:n,change:o});return!a||(0!==o.x&&0===a.x||0!==o.y&&0===a.y)},kv=function(e,t){return Nv({current:e.scroll.current,max:e.scroll.max,change:t})},jv=function(e,t){var n=e.frame;return!!n&&Nv({current:n.scroll.current,max:n.scroll.max,change:t})},Iv=function(e){var t=e.state,n=e.dragStartTime,r=e.shouldUseTimeDampening,i=e.scrollWindow,o=e.scrollDroppable,a=t.current.page.borderBoxCenter,s=t.dimensions.draggables[t.critical.draggable.id].page.marginBox;if(t.isWindowScrollAllowed){var l=function(e){var t=e.viewport,n=e.subject,r=e.center,i=e.dragStartTime,o=e.shouldUseTimeDampening,a=Ev({dragStartTime:i,container:t.frame,subject:n,center:r,shouldUseTimeDampening:o});return a&&kv(t,a)?a:null}({dragStartTime:n,viewport:t.viewport,subject:s,center:a,shouldUseTimeDampening:r});if(l)return void i(l)}var c=pv({center:a,destination:Ym(t.impact),droppables:t.dimensions.droppables});if(c){var u=function(e){var t=e.droppable,n=e.subject,r=e.center,i=e.dragStartTime,o=e.shouldUseTimeDampening,a=t.frame;if(!a)return null;var s=Ev({dragStartTime:i,container:a.pageMarginBox,subject:n,center:r,shouldUseTimeDampening:o});return s&&jv(t,s)?s:null}({dragStartTime:n,droppable:c,subject:s,center:a,shouldUseTimeDampening:r});u&&o(c.descriptor.id,u)}},Pv=function(e){var t=e.move,n=e.scrollDroppable,r=e.scrollWindow,i=function(e,t){if(!jv(e,t))return t;var r=function(e,t){var n=e.frame;return n&&jv(e,t)?Ov({current:n.scroll.current,max:n.scroll.max,change:t}):null}(e,t);if(!r)return n(e.descriptor.id,t),null;var i=Bf(t,r);return n(e.descriptor.id,i),Bf(t,i)},o=function(e,t,n){if(!e)return n;if(!kv(t,n))return n;var i=function(e,t){if(!kv(e,t))return null;var n=e.scroll.max,r=e.scroll.current;return Ov({current:r,max:n,change:t})}(t,n);if(!i)return r(n),null;var o=Bf(n,i);return r(o),Bf(n,o)};return function(e){var n=e.scrollJumpRequest;if(n){var r=Ym(e.impact);r||If(!1);var a=i(e.dimensions.droppables[r],n);if(a){var s=e.viewport,l=o(e.isWindowScrollAllowed,s,a);l&&function(e,n){var r=zf(e.current.client.selection,n);t({client:r})}(e,l)}}}},Dv=function(e){var t=e.scrollDroppable,n=e.scrollWindow,r=e.move,i=function(e){var t=e.scrollWindow,n=e.scrollDroppable,r=vf(t),i=vf(n),o=null,a=function(e){o||If(!1);var t=o,n=t.shouldUseTimeDampening,a=t.dragStartTime;Iv({state:e,scrollWindow:r,scrollDroppable:i,dragStartTime:a,shouldUseTimeDampening:n})};return{start:function(e){cg(),o&&If(!1);var t=Date.now(),n=!1,r=function(){n=!0};Iv({state:e,dragStartTime:0,shouldUseTimeDampening:!1,scrollWindow:r,scrollDroppable:r}),o={dragStartTime:t,shouldUseTimeDampening:n},ug(),n&&a(e)},stop:function(){o&&(r.cancel(),i.cancel(),o=null)},scroll:a}}({scrollWindow:n,scrollDroppable:t}),o=Pv({move:r,scrollWindow:n,scrollDroppable:t});return{scroll:function(e){"DRAGGING"===e.phase&&("FLUID"!==e.movementMode?e.scrollJumpRequest&&o(e):i.scroll(e))},start:i.start,stop:i.stop}},Av="data-rbd",Rv=function(){var e=Av+"-drag-handle";return{base:e,draggableId:e+"-draggable-id",contextId:e+"-context-id"}}(),Mv=function(){var e=Av+"-draggable";return{base:e,contextId:e+"-context-id",id:e+"-id"}}(),Lv=function(){var e=Av+"-droppable";return{base:e,contextId:e+"-context-id",id:e+"-id"}}(),Fv={contextId:Av+"-scroll-container-context-id"},zv=function(e,t){return e.map((function(e){var n=e.styles[t];return n?e.selector+" { "+n+" }":""})).join(" ")},Bv=function(e){var t=function(e){return function(t){return"["+t+'="'+e+'"]'}}(e),n=function(){var e="\n cursor: -webkit-grab;\n cursor: grab;\n ";return{selector:t(Rv.contextId),styles:{always:"\n -webkit-touch-callout: none;\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n touch-action: manipulation;\n ",resting:e,dragging:"pointer-events: none;",dropAnimating:e}}}(),r=function(){var e="\n transition: "+Lg.outOfTheWay+";\n ";return{selector:t(Mv.contextId),styles:{dragging:e,dropAnimating:e,userCancel:e}}}(),i=[r,n,{selector:t(Lv.contextId),styles:{always:"overflow-anchor: none;"}},{selector:"body",styles:{dragging:"\n cursor: grabbing;\n cursor: -webkit-grabbing;\n user-select: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n overflow-anchor: none;\n "}}];return{always:zv(i,"always"),resting:zv(i,"resting"),dragging:zv(i,"dragging"),dropAnimating:zv(i,"dropAnimating"),userCancel:zv(i,"userCancel")}},Uv="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement?a.useLayoutEffect:a.useEffect,Hv=function(){var e=document.querySelector("head");return e||If(!1),e},Vv=function(e){var t=document.createElement("style");return e&&t.setAttribute("nonce",e),t.type="text/css",t};var Gv=function(e){return e&&e.ownerDocument?e.ownerDocument.defaultView:window};function Wv(e){return e instanceof Gv(e).HTMLElement}function qv(e,t){var n="["+Rv.contextId+'="'+e+'"]',r=tm(document.querySelectorAll(n));if(!r.length)return null;var i=em(r,(function(e){return e.getAttribute(Rv.draggableId)===t}));return i&&Wv(i)?i:null}function Zv(){var e={draggables:{},droppables:{}},t=[];function n(e){t.length&&t.forEach((function(t){return t(e)}))}function r(t){return e.draggables[t]||null}function i(t){return e.droppables[t]||null}return{draggable:{register:function(t){e.draggables[t.descriptor.id]=t,n({type:"ADDITION",value:t})},update:function(t,n){var r=e.draggables[n.descriptor.id];r&&r.uniqueId===t.uniqueId&&(delete e.draggables[n.descriptor.id],e.draggables[t.descriptor.id]=t)},unregister:function(t){var i=t.descriptor.id,o=r(i);o&&t.uniqueId===o.uniqueId&&(delete e.draggables[i],n({type:"REMOVAL",value:t}))},getById:function(e){var t=r(e);return t||If(!1),t},findById:r,exists:function(e){return Boolean(r(e))},getAllByType:function(t){return $f(e.draggables).filter((function(e){return e.descriptor.type===t}))}},droppable:{register:function(t){e.droppables[t.descriptor.id]=t},unregister:function(t){var n=i(t.descriptor.id);n&&t.uniqueId===n.uniqueId&&delete e.droppables[t.descriptor.id]},getById:function(e){var t=i(e);return t||If(!1),t},findById:i,exists:function(e){return Boolean(i(e))},getAllByType:function(t){return $f(e.droppables).filter((function(e){return e.descriptor.type===t}))}},subscribe:function(e){return t.push(e),function(){var n=t.indexOf(e);-1!==n&&t.splice(n,1)}},clean:function(){e.draggables={},e.droppables={},t.length=0}}}var Yv=a.createContext(null),Kv=function(){var e=document.body;return e||If(!1),e},Qv={position:"absolute",width:"1px",height:"1px",margin:"-1px",border:"0",padding:"0",overflow:"hidden",clip:"rect(0 0 0 0)","clip-path":"inset(100%)"},Xv=function(e){return"rbd-announcement-"+e};var $v=0,Jv={separator:"::"};function ey(e,t){return void 0===t&&(t=Jv),tf((function(){return""+e+t.separator+$v++}),[t.separator,e])}var ty=a.createContext(null);function ny(e){0}function ry(e,t){ny()}function iy(e){var t=(0,a.useRef)(e);return(0,a.useEffect)((function(){t.current=e})),t}var oy,ay=27,sy=32,ly=37,cy=38,uy=39,dy=40,hy=((oy={})[13]=!0,oy[9]=!0,oy),py=function(e){hy[e.keyCode]&&e.preventDefault()},fy=function(){var e="visibilitychange";return"undefined"===typeof document?e:em([e,"ms"+e,"webkit"+e,"moz"+e,"o"+e],(function(e){return"on"+e in document}))||e}(),my=0,gy=5;var vy,yy={type:"IDLE"};function by(e){var t=e.cancel,n=e.completed,r=e.getPhase,i=e.setPhase;return[{eventName:"mousemove",fn:function(e){var t=e.button,n=e.clientX,o=e.clientY;if(t===my){var a={x:n,y:o},s=r();if("DRAGGING"===s.type)return e.preventDefault(),void s.actions.move(a);"PENDING"!==s.type&&If(!1);var l=s.point;if(c=l,u=a,Math.abs(u.x-c.x)>=gy||Math.abs(u.y-c.y)>=gy){var c,u;e.preventDefault();var d=s.actions.fluidLift(a);i({type:"DRAGGING",actions:d})}}}},{eventName:"mouseup",fn:function(e){var i=r();"DRAGGING"===i.type?(e.preventDefault(),i.actions.drop({shouldBlockNextClick:!0}),n()):t()}},{eventName:"mousedown",fn:function(e){"DRAGGING"===r().type&&e.preventDefault(),t()}},{eventName:"keydown",fn:function(e){if("PENDING"!==r().type)return e.keyCode===ay?(e.preventDefault(),void t()):void py(e);t()}},{eventName:"resize",fn:t},{eventName:"scroll",options:{passive:!0,capture:!1},fn:function(){"PENDING"===r().type&&t()}},{eventName:"webkitmouseforcedown",fn:function(e){var n=r();"IDLE"===n.type&&If(!1),n.actions.shouldRespectForcePress()?t():e.preventDefault()}},{eventName:fy,fn:t}]}function xy(){}var wy=((vy={})[34]=!0,vy[33]=!0,vy[36]=!0,vy[35]=!0,vy);function Sy(e,t){function n(){t(),e.cancel()}return[{eventName:"keydown",fn:function(r){return r.keyCode===ay?(r.preventDefault(),void n()):r.keyCode===sy?(r.preventDefault(),t(),void e.drop()):r.keyCode===dy?(r.preventDefault(),void e.moveDown()):r.keyCode===cy?(r.preventDefault(),void e.moveUp()):r.keyCode===uy?(r.preventDefault(),void e.moveRight()):r.keyCode===ly?(r.preventDefault(),void e.moveLeft()):void(wy[r.keyCode]?r.preventDefault():py(r))}},{eventName:"mousedown",fn:n},{eventName:"mouseup",fn:n},{eventName:"click",fn:n},{eventName:"touchstart",fn:n},{eventName:"resize",fn:n},{eventName:"wheel",fn:n,options:{passive:!0}},{eventName:fy,fn:n}]}var _y={type:"IDLE"},Cy=120,Ey=.15;var Ty={input:!0,button:!0,textarea:!0,select:!0,option:!0,optgroup:!0,video:!0,audio:!0};function Oy(e,t){if(null==t)return!1;if(Boolean(Ty[t.tagName.toLowerCase()]))return!0;var n=t.getAttribute("contenteditable");return"true"===n||""===n||t!==e&&Oy(e,t.parentElement)}function Ny(e,t){var n=t.target;return!!Wv(n)&&Oy(e,n)}var ky=function(e){return rf(e.getBoundingClientRect()).center};var jy=function(){var e="matches";return"undefined"===typeof document?e:em([e,"msMatchesSelector","webkitMatchesSelector"],(function(e){return e in Element.prototype}))||e}();function Iy(e,t){return null==e?null:e[jy](t)?e:Iy(e.parentElement,t)}function Py(e,t){return e.closest?e.closest(t):Iy(e,t)}function Dy(e,t){var n,r=t.target;if(!((n=r)instanceof Gv(n).Element))return null;var i=function(e){return"["+Rv.contextId+'="'+e+'"]'}(e),o=Py(r,i);return o&&Wv(o)?o:null}function Ay(e){e.preventDefault()}function Ry(e){var t=e.expected,n=e.phase,r=e.isLockActive;e.shouldWarn;return!!r()&&t===n}function My(e){var t=e.lockAPI,n=e.store,r=e.registry,i=e.draggableId;if(t.isClaimed())return!1;var o=r.draggable.findById(i);return!!o&&(!!o.options.isEnabled&&!!uv(n.getState(),i))}function Ly(e){var t=e.lockAPI,n=e.contextId,r=e.store,i=e.registry,o=e.draggableId,a=e.forceSensorStop,s=e.sourceEvent;if(!My({lockAPI:t,store:r,registry:i,draggableId:o}))return null;var l=i.draggable.getById(o),c=function(e,t){var n="["+Mv.contextId+'="'+e+'"]',r=em(tm(document.querySelectorAll(n)),(function(e){return e.getAttribute(Mv.id)===t}));return r&&Wv(r)?r:null}(n,l.descriptor.id);if(!c)return null;if(s&&!l.options.canDragInteractiveElements&&Ny(c,s))return null;var u=t.claim(a||Tf),d="PRE_DRAG";function h(){return l.options.shouldRespectForcePress}function p(){return t.isActive(u)}var f=function(e,t){Ry({expected:e,phase:d,isLockActive:p,shouldWarn:!0})&&r.dispatch(t())}.bind(null,"DRAGGING");function m(e){function n(){t.release(),d="COMPLETED"}function i(t,i){if(void 0===i&&(i={shouldBlockNextClick:!1}),e.cleanup(),i.shouldBlockNextClick){var o=Of(window,[{eventName:"click",fn:Ay,options:{once:!0,passive:!1,capture:!0}}]);setTimeout(o)}n(),r.dispatch(jg({reason:t}))}return"PRE_DRAG"!==d&&(n(),"PRE_DRAG"!==d&&If(!1)),r.dispatch(vg(e.liftActionArgs)),d="DRAGGING",(0,qo.Z)({isActive:function(){return Ry({expected:"DRAGGING",phase:d,isLockActive:p,shouldWarn:!1})},shouldRespectForcePress:h,drop:function(e){return i("DROP",e)},cancel:function(e){return i("CANCEL",e)}},e.actions)}var g={isActive:function(){return Ry({expected:"PRE_DRAG",phase:d,isLockActive:p,shouldWarn:!1})},shouldRespectForcePress:h,fluidLift:function(e){var t=vf((function(e){f((function(){return _g({client:e})}))})),n=m({liftActionArgs:{id:o,clientSelection:e,movementMode:"FLUID"},cleanup:function(){return t.cancel()},actions:{move:t}});return(0,qo.Z)({},n,{move:t})},snapLift:function(){var e={moveUp:function(){return f(Cg)},moveRight:function(){return f(Tg)},moveDown:function(){return f(Eg)},moveLeft:function(){return f(Og)}};return m({liftActionArgs:{id:o,clientSelection:ky(c),movementMode:"SNAP"},cleanup:Tf,actions:e})},abort:function(){Ry({expected:"PRE_DRAG",phase:d,isLockActive:p,shouldWarn:!0})&&t.release()}};return g}var Fy=[function(e){var t=(0,a.useRef)(yy),n=(0,a.useRef)(Tf),r=tf((function(){return{eventName:"mousedown",fn:function(t){if(!t.defaultPrevented&&t.button===my&&!(t.ctrlKey||t.metaKey||t.shiftKey||t.altKey)){var r=e.findClosestDraggableId(t);if(r){var i=e.tryGetLock(r,s,{sourceEvent:t});if(i){t.preventDefault();var o={x:t.clientX,y:t.clientY};n.current(),u(i,o)}}}}}}),[e]),i=tf((function(){return{eventName:"webkitmouseforcewillbegin",fn:function(t){if(!t.defaultPrevented){var n=e.findClosestDraggableId(t);if(n){var r=e.findOptionsForDraggable(n);r&&(r.shouldRespectForcePress||e.canGetLock(n)&&t.preventDefault())}}}}}),[e]),o=nf((function(){n.current=Of(window,[i,r],{passive:!1,capture:!0})}),[i,r]),s=nf((function(){"IDLE"!==t.current.type&&(t.current=yy,n.current(),o())}),[o]),l=nf((function(){var e=t.current;s(),"DRAGGING"===e.type&&e.actions.cancel({shouldBlockNextClick:!0}),"PENDING"===e.type&&e.actions.abort()}),[s]),c=nf((function(){var e=by({cancel:l,completed:s,getPhase:function(){return t.current},setPhase:function(e){t.current=e}});n.current=Of(window,e,{capture:!0,passive:!1})}),[l,s]),u=nf((function(e,n){"IDLE"!==t.current.type&&If(!1),t.current={type:"PENDING",point:n,actions:e},c()}),[c]);Uv((function(){return o(),function(){n.current()}}),[o])},function(e){var t=(0,a.useRef)(xy),n=tf((function(){return{eventName:"keydown",fn:function(n){if(!n.defaultPrevented&&n.keyCode===sy){var i=e.findClosestDraggableId(n);if(i){var o=e.tryGetLock(i,l,{sourceEvent:n});if(o){n.preventDefault();var a=!0,s=o.snapLift();t.current(),t.current=Of(window,Sy(s,l),{capture:!0,passive:!1})}}}function l(){a||If(!1),a=!1,t.current(),r()}}}}),[e]),r=nf((function(){t.current=Of(window,[n],{passive:!1,capture:!0})}),[n]);Uv((function(){return r(),function(){t.current()}}),[r])},function(e){var t=(0,a.useRef)(_y),n=(0,a.useRef)(Tf),r=nf((function(){return t.current}),[]),i=nf((function(e){t.current=e}),[]),o=tf((function(){return{eventName:"touchstart",fn:function(t){if(!t.defaultPrevented){var r=e.findClosestDraggableId(t);if(r){var i=e.tryGetLock(r,l,{sourceEvent:t});if(i){var o=t.touches[0],a={x:o.clientX,y:o.clientY};n.current(),h(i,a)}}}}}}),[e]),s=nf((function(){n.current=Of(window,[o],{capture:!0,passive:!1})}),[o]),l=nf((function(){var e=t.current;"IDLE"!==e.type&&("PENDING"===e.type&&clearTimeout(e.longPressTimerId),i(_y),n.current(),s())}),[s,i]),c=nf((function(){var e=t.current;l(),"DRAGGING"===e.type&&e.actions.cancel({shouldBlockNextClick:!0}),"PENDING"===e.type&&e.actions.abort()}),[l]),u=nf((function(){var e={capture:!0,passive:!1},t={cancel:c,completed:l,getPhase:r},i=Of(window,function(e){var t=e.cancel,n=e.completed,r=e.getPhase;return[{eventName:"touchmove",options:{capture:!1},fn:function(e){var n=r();if("DRAGGING"===n.type){n.hasMoved=!0;var i=e.touches[0],o={x:i.clientX,y:i.clientY};e.preventDefault(),n.actions.move(o)}else t()}},{eventName:"touchend",fn:function(e){var i=r();"DRAGGING"===i.type?(e.preventDefault(),i.actions.drop({shouldBlockNextClick:!0}),n()):t()}},{eventName:"touchcancel",fn:function(e){"DRAGGING"===r().type?(e.preventDefault(),t()):t()}},{eventName:"touchforcechange",fn:function(e){var n=r();"IDLE"===n.type&&If(!1);var i=e.touches[0];if(i&&i.force>=Ey){var o=n.actions.shouldRespectForcePress();if("PENDING"!==n.type)return o?n.hasMoved?void e.preventDefault():void t():void e.preventDefault();o&&t()}}},{eventName:fy,fn:t}]}(t),e),o=Of(window,function(e){var t=e.cancel,n=e.getPhase;return[{eventName:"orientationchange",fn:t},{eventName:"resize",fn:t},{eventName:"contextmenu",fn:function(e){e.preventDefault()}},{eventName:"keydown",fn:function(e){"DRAGGING"===n().type?(e.keyCode===ay&&e.preventDefault(),t()):t()}},{eventName:fy,fn:t}]}(t),e);n.current=function(){i(),o()}}),[c,r,l]),d=nf((function(){var e=r();"PENDING"!==e.type&&If(!1);var t=e.actions.fluidLift(e.point);i({type:"DRAGGING",actions:t,hasMoved:!1})}),[r,i]),h=nf((function(e,t){"IDLE"!==r().type&&If(!1);var n=setTimeout(d,Cy);i({type:"PENDING",point:t,actions:e,longPressTimerId:n}),u()}),[u,r,i,d]);Uv((function(){return s(),function(){n.current();var e=r();"PENDING"===e.type&&(clearTimeout(e.longPressTimerId),i(_y))}}),[r,s,i]),Uv((function(){return Of(window,[{eventName:"touchmove",fn:function(){},options:{capture:!1,passive:!1}}])}),[])}];function zy(e){var t=e.contextId,n=e.store,r=e.registry,i=e.customSensors,o=e.enableDefaultSensors,s=[].concat(o?Fy:[],i||[]),l=(0,a.useState)((function(){return function(){var e=null;function t(){e||If(!1),e=null}return{isClaimed:function(){return Boolean(e)},isActive:function(t){return t===e},claim:function(t){e&&If(!1);var n={abandon:t};return e=n,n},release:t,tryAbandon:function(){e&&(e.abandon(),t())}}}()}))[0],c=nf((function(e,t){e.isDragging&&!t.isDragging&&l.tryAbandon()}),[l]);Uv((function(){var e=n.getState();return n.subscribe((function(){var t=n.getState();c(e,t),e=t}))}),[l,n,c]),Uv((function(){return l.tryAbandon}),[l.tryAbandon]);var u=nf((function(e){return My({lockAPI:l,registry:r,store:n,draggableId:e})}),[l,r,n]),d=nf((function(e,i,o){return Ly({lockAPI:l,registry:r,contextId:t,store:n,draggableId:e,forceSensorStop:i,sourceEvent:o&&o.sourceEvent?o.sourceEvent:null})}),[t,l,r,n]),h=nf((function(e){return function(e,t){var n=Dy(e,t);return n?n.getAttribute(Rv.draggableId):null}(t,e)}),[t]),p=nf((function(e){var t=r.draggable.findById(e);return t?t.options:null}),[r.draggable]),f=nf((function(){l.isClaimed()&&(l.tryAbandon(),"IDLE"!==n.getState().phase&&n.dispatch(Ng()))}),[l,n]),m=nf(l.isClaimed,[l]),g=tf((function(){return{canGetLock:u,tryGetLock:d,findClosestDraggableId:h,findOptionsForDraggable:p,tryReleaseLock:f,isLockClaimed:m}}),[u,d,h,p,f,m]);ny();for(var v=0;v div, .contract-trigger:before { content: " "; display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; z-index: -1; } .resize-triggers > div { background: #eee; overflow: auto; } .contract-trigger:before { width: 200%; height: 200%; }',o=n.head||n.getElementsByTagName("head")[0],a=n.createElement("style");a.id="detectElementResize",a.type="text/css",null!=e&&a.setAttribute("nonce",e),a.styleSheet?a.styleSheet.cssText=r:a.appendChild(n.createTextNode(r)),o.appendChild(a)}}(l),o.__resizeLast__={},o.__resizeListeners__=[],(o.__resizeTriggers__=l.createElement("div")).className="resize-triggers";const u=l.createElement("div");u.className="expand-trigger",u.appendChild(l.createElement("div"));const d=l.createElement("div");d.className="contract-trigger",o.__resizeTriggers__.appendChild(u),o.__resizeTriggers__.appendChild(d),o.appendChild(o.__resizeTriggers__),a(o),o.addEventListener("scroll",s,!0),r&&(o.__resizeTriggers__.__animationListener__=function(e){e.animationName===n&&a(o)},o.__resizeTriggers__.addEventListener(r,o.__resizeTriggers__.__animationListener__))}o.__resizeListeners__.push(c)}},removeResizeListener:function(e,t){if(l)e.detachEvent("onresize",t);else if(e.__resizeListeners__.splice(e.__resizeListeners__.indexOf(t),1),!e.__resizeListeners__.length){e.removeEventListener("scroll",s,!0),e.__resizeTriggers__.__animationListener__&&(e.__resizeTriggers__.removeEventListener(r,e.__resizeTriggers__.__animationListener__),e.__resizeTriggers__.__animationListener__=null);try{e.__resizeTriggers__=!e.removeChild(e.__resizeTriggers__)}catch(tD){}}}}}null==Fb||null==zb?(Ab=Mb,Rb=function(e){return Lb(e,20)}):(Ab=function(e){let[t,n]=e;Fb(t),Mb(n)},Rb=function(e){const t=zb((function(){Mb(n),e()})),n=Lb((function(){Fb(t),e()}),20);return[t,n]});class Ub extends a.Component{constructor(){super(...arguments),this.state={height:this.props.defaultHeight||0,scaledHeight:this.props.defaultHeight||0,scaledWidth:this.props.defaultWidth||0,width:this.props.defaultWidth||0},this._autoSizer=null,this._detectElementResize=null,this._parentNode=null,this._resizeObserver=null,this._timeoutId=null,this._onResize=()=>{this._timeoutId=null;const{disableHeight:e,disableWidth:t,onResize:n}=this.props;if(this._parentNode){const r=window.getComputedStyle(this._parentNode)||{},i=parseFloat(r.paddingLeft||"0"),o=parseFloat(r.paddingRight||"0"),a=parseFloat(r.paddingTop||"0"),s=parseFloat(r.paddingBottom||"0"),l=this._parentNode.getBoundingClientRect(),c=l.height-a-s,u=l.width-i-o,d=this._parentNode.offsetHeight-a-s,h=this._parentNode.offsetWidth-i-o;(e||this.state.height===d&&this.state.scaledHeight===c)&&(t||this.state.width===h&&this.state.scaledWidth===u)||(this.setState({height:d,width:h,scaledHeight:c,scaledWidth:u}),"function"===typeof n&&n({height:d,scaledHeight:c,scaledWidth:u,width:h}))}},this._setRef=e=>{this._autoSizer=e}}componentDidMount(){const{nonce:e}=this.props,t=this._autoSizer?this._autoSizer.parentNode:null;if(null!=t&&t.ownerDocument&&t.ownerDocument.defaultView&&t instanceof t.ownerDocument.defaultView.HTMLElement){this._parentNode=t;const n=t.ownerDocument.defaultView.ResizeObserver;null!=n?(this._resizeObserver=new n((()=>{this._timeoutId=setTimeout(this._onResize,0)})),this._resizeObserver.observe(t)):(this._detectElementResize=Bb(e),this._detectElementResize.addResizeListener(t,this._onResize)),this._onResize()}}componentWillUnmount(){this._parentNode&&(this._detectElementResize&&this._detectElementResize.removeResizeListener(this._parentNode,this._onResize),null!==this._timeoutId&&clearTimeout(this._timeoutId),this._resizeObserver&&this._resizeObserver.disconnect())}render(){const{children:e,defaultHeight:t,defaultWidth:n,disableHeight:r=!1,disableWidth:i=!1,doNotBailOutOnEmptyChildren:o=!1,nonce:s,onResize:l,style:c={},tagName:u="div",...d}=this.props,{height:h,scaledHeight:p,scaledWidth:f,width:m}=this.state,g={overflow:"visible"},v={};let y=!1;return r||(0===h&&(y=!0),g.height=0,v.height=h,v.scaledHeight=p),i||(0===m&&(y=!0),g.width=0,v.width=m,v.scaledWidth=f),o&&(y=!1),(0,a.createElement)(u,{ref:this._setRef,style:{...g,...c},...d},!y&&e(v))}}var Hb=n(97326),Vb="object"===typeof performance&&"function"===typeof performance.now?function(){return performance.now()}:function(){return Date.now()};function Gb(e){cancelAnimationFrame(e.id)}function Wb(e,t){var n=Vb();var r={id:requestAnimationFrame((function i(){Vb()-n>=t?e.call(null):r.id=requestAnimationFrame(i)}))};return r}var qb=-1;function Zb(e){if(void 0===e&&(e=!1),-1===qb||e){var t=document.createElement("div"),n=t.style;n.width="50px",n.height="50px",n.overflow="scroll",document.body.appendChild(t),qb=t.offsetWidth-t.clientWidth,document.body.removeChild(t)}return qb}var Yb=null;function Kb(e){if(void 0===e&&(e=!1),null===Yb||e){var t=document.createElement("div"),n=t.style;n.width="50px",n.height="50px",n.overflow="scroll",n.direction="rtl";var r=document.createElement("div"),i=r.style;return i.width="100px",i.height="100px",t.appendChild(r),document.body.appendChild(t),t.scrollLeft>0?Yb="positive-descending":(t.scrollLeft=1,Yb=0===t.scrollLeft?"negative":"positive-ascending"),document.body.removeChild(t),Yb}return Yb}var Qb=150,Xb=function(e,t){return e};function $b(e){var t,n=e.getItemOffset,r=e.getEstimatedTotalSize,i=e.getItemSize,o=e.getOffsetForIndexAndAlignment,s=e.getStartIndexForOffset,l=e.getStopIndexForStartIndex,c=e.initInstanceProps,u=e.shouldResetStyleCacheOnItemSizeChange,d=e.validateProps;return t=function(e){function t(t){var r;return(r=e.call(this,t)||this)._instanceProps=c(r.props,(0,Hb.Z)(r)),r._outerRef=void 0,r._resetIsScrollingTimeoutId=null,r.state={instance:(0,Hb.Z)(r),isScrolling:!1,scrollDirection:"forward",scrollOffset:"number"===typeof r.props.initialScrollOffset?r.props.initialScrollOffset:0,scrollUpdateWasRequested:!1},r._callOnItemsRendered=void 0,r._callOnItemsRendered=gf((function(e,t,n,i){return r.props.onItemsRendered({overscanStartIndex:e,overscanStopIndex:t,visibleStartIndex:n,visibleStopIndex:i})})),r._callOnScroll=void 0,r._callOnScroll=gf((function(e,t,n){return r.props.onScroll({scrollDirection:e,scrollOffset:t,scrollUpdateWasRequested:n})})),r._getItemStyle=void 0,r._getItemStyle=function(e){var t,o=r.props,a=o.direction,s=o.itemSize,l=o.layout,c=r._getItemStyleCache(u&&s,u&&l,u&&a);if(c.hasOwnProperty(e))t=c[e];else{var d=n(r.props,e,r._instanceProps),h=i(r.props,e,r._instanceProps),p="horizontal"===a||"horizontal"===l,f="rtl"===a,m=p?d:0;c[e]=t={position:"absolute",left:f?void 0:m,right:f?m:void 0,top:p?0:d,height:p?"100%":h,width:p?h:"100%"}}return t},r._getItemStyleCache=void 0,r._getItemStyleCache=gf((function(e,t,n){return{}})),r._onScrollHorizontal=function(e){var t=e.currentTarget,n=t.clientWidth,i=t.scrollLeft,o=t.scrollWidth;r.setState((function(e){if(e.scrollOffset===i)return null;var t=r.props.direction,a=i;if("rtl"===t)switch(Kb()){case"negative":a=-i;break;case"positive-descending":a=o-n-i}return a=Math.max(0,Math.min(a,o-n)),{isScrolling:!0,scrollDirection:e.scrollOffsetl.clientWidth?Zb():0:l.scrollHeight>l.clientHeight?Zb():0}this.scrollTo(o(this.props,e,t,a,this._instanceProps,s))},h.componentDidMount=function(){var e=this.props,t=e.direction,n=e.initialScrollOffset,r=e.layout;if("number"===typeof n&&null!=this._outerRef){var i=this._outerRef;"horizontal"===t||"horizontal"===r?i.scrollLeft=n:i.scrollTop=n}this._callPropsCallbacks()},h.componentDidUpdate=function(){var e=this.props,t=e.direction,n=e.layout,r=this.state,i=r.scrollOffset;if(r.scrollUpdateWasRequested&&null!=this._outerRef){var o=this._outerRef;if("horizontal"===t||"horizontal"===n)if("rtl"===t)switch(Kb()){case"negative":o.scrollLeft=-i;break;case"positive-ascending":o.scrollLeft=i;break;default:var a=o.clientWidth,s=o.scrollWidth;o.scrollLeft=s-a-i}else o.scrollLeft=i;else o.scrollTop=i}this._callPropsCallbacks()},h.componentWillUnmount=function(){null!==this._resetIsScrollingTimeoutId&&Gb(this._resetIsScrollingTimeoutId)},h.render=function(){var e=this.props,t=e.children,n=e.className,i=e.direction,o=e.height,s=e.innerRef,l=e.innerElementType,c=e.innerTagName,u=e.itemCount,d=e.itemData,h=e.itemKey,p=void 0===h?Xb:h,f=e.layout,m=e.outerElementType,g=e.outerTagName,v=e.style,y=e.useIsScrolling,b=e.width,x=this.state.isScrolling,w="horizontal"===i||"horizontal"===f,S=w?this._onScrollHorizontal:this._onScrollVertical,_=this._getRangeToRender(),C=_[0],E=_[1],T=[];if(u>0)for(var O=C;O<=E;O++)T.push((0,a.createElement)(t,{data:d,key:p(O,d),index:O,isScrolling:y?x:void 0,style:this._getItemStyle(O)}));var N=r(this.props,this._instanceProps);return(0,a.createElement)(m||g||"div",{className:n,onScroll:S,ref:this._outerRefSetter,style:(0,qo.Z)({position:"relative",height:o,width:b,overflow:"auto",WebkitOverflowScrolling:"touch",willChange:"transform",direction:i},v)},(0,a.createElement)(l||c||"div",{children:T,ref:s,style:{height:w?"100%":N,pointerEvents:x?"none":void 0,width:w?N:"100%"}}))},h._callPropsCallbacks=function(){if("function"===typeof this.props.onItemsRendered&&this.props.itemCount>0){var e=this._getRangeToRender(),t=e[0],n=e[1],r=e[2],i=e[3];this._callOnItemsRendered(t,n,r,i)}if("function"===typeof this.props.onScroll){var o=this.state,a=o.scrollDirection,s=o.scrollOffset,l=o.scrollUpdateWasRequested;this._callOnScroll(a,s,l)}},h._getRangeToRender=function(){var e=this.props,t=e.itemCount,n=e.overscanCount,r=this.state,i=r.isScrolling,o=r.scrollDirection,a=r.scrollOffset;if(0===t)return[0,0,0,0];var c=s(this.props,a,this._instanceProps),u=l(this.props,c,a,this._instanceProps),d=i&&"backward"!==o?1:Math.max(1,n),h=i&&"forward"!==o?1:Math.max(1,n);return[Math.max(0,c-d),Math.max(0,Math.min(t-1,u+h)),c,u]},t}(a.PureComponent),t.defaultProps={direction:"ltr",itemData:void 0,layout:"vertical",overscanCount:2,useIsScrolling:!1},t}var Jb=function(e,t){e.children,e.direction,e.height,e.layout,e.innerTagName,e.outerTagName,e.width,t.instance},ex=function(e,t,n){var r=e.itemSize,i=n.itemMetadataMap,o=n.lastMeasuredIndex;if(t>o){var a=0;if(o>=0){var s=i[o];a=s.offset+s.size}for(var l=o+1;l<=t;l++){var c=r(l);i[l]={offset:a,size:c},a+=c}n.lastMeasuredIndex=t}return i[t]},tx=function(e,t,n,r,i){for(;r<=n;){var o=r+Math.floor((n-r)/2),a=ex(e,o,t).offset;if(a===i)return o;ai&&(n=o-1)}return r>0?r-1:0},nx=function(e,t,n,r){for(var i=e.itemCount,o=1;n=n&&(o=n-1),o>=0){var s=r[o];a=s.offset+s.size}return a+(n-o-1)*i},ix=$b({getItemOffset:function(e,t,n){return ex(e,t,n).offset},getItemSize:function(e,t,n){return n.itemMetadataMap[t].size},getEstimatedTotalSize:rx,getOffsetForIndexAndAlignment:function(e,t,n,r,i,o){var a=e.direction,s=e.height,l=e.layout,c=e.width,u="horizontal"===a||"horizontal"===l?c:s,d=ex(e,t,i),h=rx(e,i),p=Math.max(0,Math.min(h-u,d.offset)),f=Math.max(0,d.offset-u+d.size+o);switch("smart"===n&&(n=r>=f-u&&r<=p+u?"auto":"center"),n){case"start":return p;case"end":return f;case"center":return Math.round(f+(p-f)/2);default:return r>=f&&r<=p?r:r0?r[i].offset:0)>=n?tx(e,t,i,0,n):nx(e,t,Math.max(0,i),n)}(e,n,t)},getStopIndexForStartIndex:function(e,t,n,r){for(var i=e.direction,o=e.height,a=e.itemCount,s=e.layout,l=e.width,c="horizontal"===i||"horizontal"===s?l:o,u=ex(e,t,r),d=n+c,h=u.offset+u.size,p=t;p{let{element:t,options:n,onIntersect:r}=e;a.useEffect((()=>{const e=new IntersectionObserver((e=>{let[t]=e;t.isIntersecting&&(null===r||void 0===r||r())}),n);return t&&e.observe(t),()=>null===t?void 0:e.unobserve(t)}),[t,n,r])},sx=(0,le.Ge)("list"),lx=e=>{const t=a.useRef(null);return ax({element:t.current,onIntersect:null===e||void 0===e?void 0:e.onIntersect}),a.createElement("div",{ref:t,className:sx("loading-indicator")},a.createElement(Di,{qa:"list-loader"}))},cx=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M7 3a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0ZM5.5 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm5 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm0-5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM7 13a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Zm3.5 1.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z",clipRule:"evenodd"})),ux="list-active-item",dx=[Zr.V.TAB],hx=(0,le.Ge)("list"),px=e=>String(e);function fx(e,t){return t?Object.assign(Object.assign({},null===e||void 0===e?void 0:e.draggableProps.style),t):null===e||void 0===e?void 0:e.draggableProps.style}class mx extends a.Component{constructor(){super(...arguments),this.node=null,this.getNode=()=>this.node,this.setRef=e=>{var t;this.node=e,null===(t=this.props.provided)||void 0===t||t.innerRef(e)},this.onClick=()=>{var e,t;return null===(t=(e=this.props).onClick)||void 0===t?void 0:t.call(e,this.props.item,this.props.itemIndex)},this.onClickCapture=e=>{mx.publishEvent({domEvent:e,eventId:"click"})},this.onMouseEnter=()=>!this.props.item.disabled&&this.props.onActivate(this.props.itemIndex),this.onMouseLeave=()=>this.props.onActivate(void 0)}render(){var e,t;const{item:n,style:r,sortable:i,sortHandleAlign:o,itemClassName:s,selected:l,active:c,role:u="listitem",isDragging:d=!1}=this.props,h=Object.assign(Object.assign({},r),{right:void 0});return a.createElement("div",Object.assign({role:u,"aria-selected":l,"data-qa":c?ux:void 0,className:hx("item",{sortable:i,active:c,selected:l,inactive:n.disabled,"sort-handle-align":o,dragging:d},s)},null===(e=this.props.provided)||void 0===e?void 0:e.draggableProps,null===(t=this.props.provided)||void 0===t?void 0:t.dragHandleProps,{style:fx(this.props.provided,h),onClick:n.disabled?void 0:this.onClick,onClickCapture:n.disabled?void 0:this.onClickCapture,onMouseEnter:this.onMouseEnter,onMouseLeave:this.onMouseLeave,ref:this.setRef,id:"".concat(this.props.listId,"-item-").concat(this.props.itemIndex)}),this.renderSortIcon(),this.renderContent())}renderSortIcon(){const{sortable:e}=this.props;return e?a.createElement("div",{className:hx("item-sort-icon")},a.createElement(we.J,{data:cx,size:12})):null}renderContent(){const{renderItem:e=px,item:t,active:n,itemIndex:r}=this.props;return a.createElement("div",{className:hx("item-content")},e(t,n,r))}}mx.publishEvent=Yr.P.withEventPublisher("List");var gx=n(28925),vx=n.n(gx);function yx(e){return vx()(e).reduce(((e,t)=>(e[t]=a.createRef(),e)),{})}class bx extends a.Component{static getDerivedStateFromProps(e,t){let{itemCount:n}=e;return n===Object.keys(t.refsList).length?t:{refsList:yx(n)}}constructor(e){super(e),this.node=null,this.setRef=e=>{var t;this.node=e,null===(t=this.props.provided)||void 0===t||t.innerRef(e)},this.state={refsList:yx(e.itemCount)}}render(){const e=a.Children.map(this.props.children,((e,t)=>a.cloneElement(e,{ref:this.state.refsList[t]})));return a.createElement("div",{ref:this.setRef},e)}scrollToItem(e){var t,n;const r=null===(t=this.state.refsList[e])||void 0===t?void 0:t.current;if(r&&"function"===typeof r.getNode){const e=r.getNode();e&&(null===(n=e.scrollIntoView)||void 0===n||n.call(e,{block:"nearest"}))}}}const xx=(0,le.Ge)("list"),wx=a.forwardRef(((e,t)=>a.createElement(ix,Object.assign({ref:t},e,{direction:ir()}))));wx.displayName="ListContainer";class Sx extends a.Component{constructor(){super(...arguments),this.state={items:this.props.items,filter:""},this.refFilter=a.createRef(),this.refContainer=a.createRef(),this.blurTimer=null,this.loadingItem={value:"__LIST_ITEM_LOADING__",disabled:!1},this.uniqId=(0,ce.x)(),this.onKeyDown=e=>{const{activeItem:t,pageSize:n}=this.state;if(dx.includes(e.key))return;const r=e.target instanceof HTMLInputElement;switch(e.key){case"ArrowDown":this.handleKeyMove(e,1,-1);break;case"ArrowUp":this.handleKeyMove(e,-1);break;case"PageDown":this.handleKeyMove(e,n);break;case"PageUp":this.handleKeyMove(e,-n);break;case"Home":if(r)return;this.handleKeyMove(e,this.state.items.length-(t||0));break;case"End":if(r)return;this.handleKeyMove(e,-(t||0)-1);break;case"Enter":"number"===typeof t&&this.props.onItemClick&&this.props.onItemClick(this.state.items[t],t,!0);break;default:this.refFilter.current&&this.refFilter.current.focus()}},this.renderItemContent=(e,t,n)=>{const{onLoadMore:r}=this.props;return mp()(e)&&"value"in e&&e.value===this.loadingItem.value?a.createElement(lx,{onIntersect:0===n?void 0:r}):this.props.renderItem?this.props.renderItem(e,t,n):px(e)},this.renderItem=e=>{let{index:t,style:n,provided:r,isDragging:i}=e;var o;const{sortHandleAlign:s,role:l}=this.props,{items:c,activeItem:u}=this.state,d=this.getItemsWithLoading()[t],h=this.props.sortable&&c.length>1&&!this.getFilter(),p=t===u||t===this.props.activeItemIndex,f=Array.isArray(this.props.selectedItemIndex)?this.props.selectedItemIndex.includes(t):t===this.props.selectedItemIndex;return a.createElement(mx,{key:t,style:n,itemIndex:t,item:d,sortable:h,sortHandleAlign:s,renderItem:this.renderItemContent,itemClassName:this.props.itemClassName,active:p,selected:f,onActivate:this.onItemActivate,onClick:this.props.onItemClick,role:"listbox"===l?"option":"listitem",listId:null!==(o=this.props.id)&&void 0!==o?o:this.uniqId,provided:r,isDragging:i})},this.renderVirtualizedItem=e=>{let{index:t,style:n}=e;return a.createElement(Nb,{draggableId:String(t),index:t,key:"item-key-".concat(t)},(e=>this.renderItem({index:t,style:n,provided:e})))},this.filterItem=e=>t=>String(t).includes(e),this.scrollToIndex=e=>{const t=this.refContainer.current;t&&t.scrollToItem(e)},this.deactivate=()=>{this.blurTimer&&this.props.deactivateOnLeave&&this.setState({activeItem:void 0})},this.handleFocus=()=>{this.blurTimer&&(clearTimeout(this.blurTimer),this.blurTimer=null)},this.handleBlur=()=>{this.blurTimer||(this.blurTimer=setTimeout(this.deactivate,50))},this.onUpdateFilterInternal=e=>{const{items:t,filterItem:n=this.filterItem,onFilterEnd:r}=this.props;this.setState({filter:e,items:e?t.filter(n(e)):t},(()=>{r&&r({items:this.state.items})}))},this.onFilterUpdate=e=>{this.props.onFilterUpdate?this.props.onFilterUpdate(e):this.onUpdateFilterInternal(e)},this.onItemsRendered=e=>{let{visibleStartIndex:t,visibleStopIndex:n}=e;this.setState({pageSize:n-t})},this.onItemActivate=e=>{this.state.sorting||this.activateItem(e,!1)},this.onMouseLeave=()=>{this.deactivate()},this.onSortStart=()=>{this.setState({sorting:!0})},this.onSortEnd=e=>{if(!e.destination)return void this.setState({sorting:!1});if(e.source.index===e.destination.index)return void this.setState({sorting:!1});const t=e.source.index,n=e.destination.index;this.props.onSortEnd&&this.props.onSortEnd({oldIndex:t,newIndex:n});const r=((e,t,n)=>{const r=Array.from(e),[i]=r.splice(t,1);return r.splice(n,0,i),r})(this.getItems(),t,n);this.setState({activeItem:n,items:r,sorting:!1})},this.getItemHeight=e=>{const{itemHeight:t}=this.props;if("function"===typeof t){const{items:n}=this.state;return t(n[e],e)}return t},this.getVirtualizedItemHeight=e=>this.getItemHeight(e)||28}static moveListElement(e,t,n){if(t!==n){const[r]=e.splice(t,1);e.splice(n,0,r)}return e}static findNextIndex(e,t,n){const r=e.length;let i=(t+r)%r;for(let o=0;o{let{mobile:c}=l;return a.createElement("div",{className:xx({mobile:c},n),"data-qa":i,tabIndex:-1,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.onKeyDown},this.renderFilter(),a.createElement("div",{className:xx("items",{virtualized:t},r),style:this.getItemsStyle(),onMouseLeave:this.onMouseLeave,role:o},this.renderItems(),0===s.length&&Boolean(e)&&a.createElement("div",{className:xx("empty-placeholder")},e)))}))}getItems(){return this.state.items}getItemsWithLoading(){return this.props.sortable?this.getItems():this.props.loading?[...this.state.items,this.loadingItem]:this.getItems()}getActiveItem(){return"number"===typeof this.state.activeItem?this.state.activeItem:null}activateItem(e){"number"===typeof e&&(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])&&this.scrollToIndex(e),this.setState({activeItem:e})}renderFilter(){const{size:e,filterable:t,filter:n=this.state.filter,filterPlaceholder:r,filterClassName:i="",autoFocus:o}=this.props;return t?a.createElement("div",{className:xx("filter",i)},a.createElement(Ii,{controlRef:this.refFilter,size:e,placeholder:r,value:n,hasClear:!0,onUpdate:this.onFilterUpdate,autoFocus:o})):null}renderSimpleContainer(){const{sortable:e}=this.props,t=this.getItemsWithLoading();return e?a.createElement(Gy,{onDragStart:this.onSortStart,onDragEnd:this.onSortEnd},a.createElement(Pb,{droppableId:"droppable",renderClone:(e,t,n)=>this.renderItem({index:n.source.index,provided:e,isDragging:t.isDragging})},(e=>a.createElement(bx,{ref:this.refContainer,itemCount:t.length,provided:e},t.map(((e,t)=>a.createElement(Nb,{draggableId:String(t),index:t,key:"item-key-".concat(t)},((e,n)=>this.renderItem({index:t,isDragging:n.isDragging,provided:e,style:{height:this.getItemHeight(t)}}))))))))):a.createElement(bx,{itemCount:t.length,ref:this.refContainer},t.map(((e,t)=>this.renderItem({index:t,style:{height:this.getItemHeight(t)}}))))}renderVirtualizedContainer(){const e=[...this.getItemsWithLoading()];return this.props.sortable?a.createElement(Gy,{onDragStart:this.onSortStart,onDragEnd:this.onSortEnd},a.createElement(Pb,{droppableId:"droppable",mode:"virtual",renderClone:(e,t,n)=>this.renderItem({index:n.source.index,provided:e,isDragging:t.isDragging})},(t=>a.createElement(Ub,null,(n=>{let{width:r,height:i}=n;return a.createElement(wx,{ref:this.refContainer,outerRef:t.innerRef,width:r,height:i,itemSize:this.getVirtualizedItemHeight,itemData:e,itemCount:e.length,overscanCount:10,onItemsRendered:this.onItemsRendered,activeItem:this.state.activeItem},this.renderVirtualizedItem)}))))):a.createElement(Ub,null,(t=>{let{width:n,height:r}=t;return a.createElement(wx,{ref:this.refContainer,width:n,height:r,itemSize:this.getVirtualizedItemHeight,itemData:e,itemCount:e.length,overscanCount:10,onItemsRendered:this.onItemsRendered,activeItem:this.state.activeItem},this.renderItem)}))}renderItems(){return this.props.virtualized?this.renderVirtualizedContainer():this.renderSimpleContainer()}getFilter(){const{filter:e=this.state.filter}=this.props;return e}getItemsStyle(){let{itemsHeight:e}=this.props;return"function"===typeof e&&(e=e(this.state.items)),e?{height:e}:void 0}handleKeyMove(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;const{activeItem:r=n}=this.state;e.preventDefault();const i=this.getItemsWithLoading();this.activateItem(Sx.findNextIndex(i,r+t,Math.sign(t)))}}Sx.defaultProps={items:[],itemClassName:"",filterable:!0,sortable:!1,virtualized:!0,deactivateOnLeave:!0};const _x=e=>Boolean(e&&"label"in e),Cx=e=>{const t=e.reduce(((e,t)=>("label"in t?(e.push({label:t.label,disabled:!0}),e.push(...t.options||[])):e.push(t),e)),[]);return Object.defineProperty(t,lp,{enumerable:!1,value:{}}),t},Ex=e=>{const{getOptionHeight:t,getOptionGroupHeight:n,size:r,option:i,index:o,mobile:a}=e;let s=a?32:tp[r];if(_x(i)){const e=0===o?0:5;return s=""===i.label?0:s,n?n(i,o):s+e}return t?t(i,o):s},Tx=e=>"string"===typeof e.content?e.content:"string"===typeof e.children?e.children:e.text?e.text:e.value,Ox=e=>(e=>a.Children.toArray(e))(e).reduce(((e,t)=>{let{props:n}=t;if("label"in n){const t=n.options||(e=>a.Children.toArray(e).reduce(((e,t)=>{let{props:n}=t;return"value"in n&&e.push(n),e}),[]))(n.children);e.push({options:t,label:n.label})}return"value"in n&&e.push(Object.assign({},n)),e}),[]),Nx=(e,t)=>t?t.findIndex((t=>{if(_x(t))return!1;if(t.disabled)return!1;const n=Tx(t);return(r=e,new RegExp(r.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"i")).test(n);var r})):-1,kx=e=>{var t;return(null===(t=null===e||void 0===e?void 0:e.current)||void 0===t?void 0:t.getItems())||[]},jx=e=>{const{options:t,filter:n,filterOption:r}=e,i=t.filter((e=>!!_x(e)||(r?r(e,n):((e,t)=>{const n=Tx(e).toLocaleLowerCase(),r=t.toLocaleLowerCase();return-1!==n.indexOf(r)})(e,n))));return i.reduce(((e,t,n)=>{const r=_x(t),o=_x(e[e.length-1]),a=n===i.length-1;return r&&o&&e.pop(),(!r||r&&!a)&&e.push(t),e}),[])},Ix=(0,le.Ge)("select-list"),Px=e=>{let{option:t,renderOptionGroup:n}=e;return n?a.createElement("div",{className:Ix("group-label-custom")},n(t)):a.createElement("div",{className:Ix("group-label",{empty:""===t.label})},a.createElement("div",{className:Ix("group-label-content")},t.label))},Dx=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M13.488 3.43a.75.75 0 0 1 .081 1.058l-6 7a.75.75 0 0 1-1.1.042l-3.5-3.5A.75.75 0 0 1 4.03 6.97l2.928 2.927 5.473-6.385a.75.75 0 0 1 1.057-.081Z",clipRule:"evenodd"})),Ax=(0,le.Ge)("select-list"),Rx=e=>{let{option:t}=e;const{content:n,children:r,disabled:i}=t;return a.createElement("span",{className:Ax("option-default-label",{disabled:i})},n||r)},Mx=e=>{const{renderOption:t,value:n,option:r,multiple:i}=e,o=-1!==n.indexOf(r.value),s=t?t(r):a.createElement(Rx,{option:r});return a.createElement("div",{"data-qa":r.qa,className:Ax("option",{colored:o&&!i,disabled:r.disabled})},i&&a.createElement(we.J,{className:Ax("tick-icon",{shown:o&&i}),data:Dx}),s)},Lx=e=>{const t=a.useRef(null);return ax({element:t.current,onIntersect:null===e||void 0===e?void 0:e.onIntersect}),a.createElement("div",{ref:t,className:Jh("loading-indicator")},a.createElement(Di,null))},Fx={value:"__SELECT_LIST_ITEM_LOADING__",disabled:!0},zx=a.forwardRef(((e,t)=>{const{onOptionClick:n,renderOption:r,renderOptionGroup:i,getOptionHeight:o,getOptionGroupHeight:s,size:l,flattenOptions:c,value:u,multiple:d,virtualized:h,mobile:p,loading:f,onLoadMore:m,selectId:g,onChangeActive:v}=e,y=a.useMemo((()=>f?[...c,Fx]:c),[c,f]),b=a.useMemo((()=>c.reduce(((e,t,n)=>("value"in t&&u.includes(t.value)&&e.push(n),e)),[])),[c,u]),x=(e=>{const{getOptionHeight:t,getOptionGroupHeight:n,size:r,options:i,mobile:o}=e;return i.reduce(((e,i,a)=>e+Ex({getOptionHeight:t,getOptionGroupHeight:n,size:r,option:i,index:a,mobile:o})),0)})({options:y,getOptionHeight:o,getOptionGroupHeight:s,size:l,mobile:p}),w=a.useCallback(((e,t)=>Ex({getOptionHeight:o,getOptionGroupHeight:s,size:l,option:e,index:t,mobile:p})),[o,s,p,l]),S=a.useCallback(((e,t,n)=>{if("label"in e){const t=i?e=>i(e,{itemHeight:w(e,n)}):void 0;return a.createElement(Px,{option:e,renderOptionGroup:t})}if(e.value===Fx.value)return a.createElement(Lx,{onIntersect:0===n?void 0:m});const o=r?e=>r(e,{itemHeight:w(e,n)}):void 0;return a.createElement(Mx,{option:e,value:u,multiple:d,renderOption:o})}),[r,i,u,d,w,m]);return a.createElement(Sx,{ref:t,className:Jh({size:l,virtualized:h,mobile:p}),qa:rp,itemClassName:Jh("item"),itemHeight:w,itemsHeight:h?x:void 0,items:y,filterable:!1,virtualized:h,renderItem:S,onItemClick:n,selectedItemIndex:b,id:"".concat(g,"-list"),role:"listbox",onChangeActive:v})}));zx.displayName="SelectList";const Bx=(0,le.Ge)("select-empty-placeholder"),Ux=e=>{let{renderEmptyOptions:t,filter:n}=e;return a.createElement("div",{className:Bx({empty:!t})},null===t||void 0===t?void 0:t({filter:n}))};var Hx=n(85198),Vx=n.n(Hx);const Gx=JSON.parse('{"label_clear":"Clear","label_show-error-info":"Show popup with error info"}'),Wx=JSON.parse('{"label_clear":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c","label_show-error-info":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u043e\u043f\u0430\u043f \u0441 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0435\u0439 \u043e\u0431 \u043e\u0448\u0438\u0431\u043a\u0435"}'),qx=(0,mi.e)({en:Gx,ru:Wx},"Select"),Zx=e=>{const{size:t,onClick:n,onMouseEnter:r,onMouseLeave:i,renderIcon:o}=e,s=o?o():a.createElement(we.J,{className:ep("clear"),data:tt.Z});return a.createElement("button",{className:ep({size:t}),"aria-label":qx("label_clear"),onClick:n,onMouseEnter:r,onMouseLeave:i,"data-qa":ap,type:"button"},s)};Zx.displayName="SelectClear";const Yx=(0,le.Ge)("select-counter"),Kx=a.forwardRef((function(e,t){let{count:n,size:r,disabled:i}=e;return a.createElement("div",{className:Yx({size:r}),ref:t},a.createElement(Fi.x,{variant:"xl"===r?"body-2":"body-1",color:i?"hint":"primary",className:Yx("text")},n))})),Qx=a.forwardRef(((e,t)=>{const{toggleOpen:n,clearValue:r,onKeyDown:i,renderControl:o,view:s,size:l,pin:c,selectedOptionsContent:u,className:d,qa:h,name:p,label:f,placeholder:m,isErrorVisible:g,errorMessage:v,open:y,disabled:b,value:x,hasClear:w,popupId:S,selectId:_,activeIndex:C,renderCounter:E,hasCounter:T,title:O}=e,N=Boolean(u),k=Boolean(m&&!N),j=Array.isArray(x)&&!Vx()(x.filter(Boolean)),I=ue(),[P,D]=a.useState(!1),A={open:y,size:l,pin:c,disabled:b,error:g,"has-clear":w,"no-active":P,"has-value":j},R={open:y,size:l,view:s,pin:c,disabled:b,error:g},M=a.useCallback((e=>{e&&e.currentTarget!==document.activeElement&&"focus"in e.currentTarget&&e.currentTarget.focus(),n()}),[n]),L=a.useCallback((()=>{D(!0)}),[]),F=a.useCallback((()=>{D(!1)}),[]),z=a.useCallback((()=>{D(!1),r()}),[r]),B=()=>{if(!T)return null;const e=Number(null===x||void 0===x?void 0:x.length)||0,t=a.createElement(Kx,{count:e,size:l,disabled:b});return E?E(t,{count:e,size:l,disabled:b}):t},U=e=>{const t=!(null===x||void 0===x?void 0:x[0]);return!w||!r||t||b?null:a.createElement(Zx,{size:l,onClick:z,onMouseEnter:L,onMouseLeave:F,renderIcon:e.renderIcon})};return o?o({onKeyDown:i,onClear:r,onClick:M,renderClear:e=>U(e),renderCounter:B,ref:t,open:Boolean(y),popupId:S,selectId:_,activeIndex:C},{value:x}):a.createElement(a.Fragment,null,a.createElement("div",{className:Xh(A),role:"group"},a.createElement("button",{ref:t,role:"combobox","aria-controls":S,className:$h(R,d),"aria-haspopup":"listbox","aria-expanded":y,"aria-activedescendant":void 0===C?void 0:"".concat(_,"-list-item-").concat(C),name:p,disabled:b,onClick:M,onKeyDown:i,type:"button","data-qa":h,title:O},f&&a.createElement("span",{className:Xh("label")},f),k&&a.createElement("span",{className:Xh("placeholder")},m),N&&a.createElement("span",{className:Xh("option-text")},u)),B(),U({}),v&&a.createElement(fi,{content:v,tooltipId:I},a.createElement("button",{"aria-label":qx("label_show-error-info"),"aria-describedby":I,className:Xh("error-icon")},a.createElement(we.J,{data:St.Z,size:"s"===l?12:16}))),a.createElement(we.J,{className:Xh("chevron-icon",{disabled:b}),data:xe,"aria-hidden":"true"})))}));Qx.displayName="SelectControl";let Xx,$x=0;function Jx(e){let{enabled:t}=e;a.useLayoutEffect((()=>{if(t)return $x++,1===$x&&function(){const e=window.innerWidth-document.documentElement.clientWidth,t=window.innerHeight-document.documentElement.clientHeight,n=function(){const e=window.getComputedStyle(document.body);return{top:Number.parseFloat(e.paddingTop),right:Number.parseFloat(e.paddingRight),bottom:Number.parseFloat(e.paddingBottom),left:Number.parseFloat(e.paddingLeft)}}();Xx=document.body.style.cssText,document.body.style.overflow="hidden",e&&(document.body.style.paddingRight="".concat(n.right+e,"px"));t&&(document.body.style.paddingBottom="".concat(n.bottom+t,"px"))}(),()=>{$x--,0===$x&&(Xx?document.body.style.cssText=Xx:document.body.removeAttribute("style"))}}),[t])}var ew=n(66573);const tw=(0,le.Ge)("sheet");class nw{constructor(e,t){this.x=e,this.y=t,this.timeStamp=Date.now()}}class rw{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:5;this.points=[],this.pointsLen=e,this.clear()}clear(){this.points=new Array(this.pointsLen)}addMovement(e){let{x:t,y:n}=e;this.points.pop(),this.points.unshift(new nw(t,n))}getYAcceleration(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;const t=this.points[0],n=this.points[e];return t&&n?(t.y-n.y)/Math.pow(t.timeStamp-n.timeStamp,2):0}}let iw=[];class ow extends a.Component{constructor(){super(...arguments),this.veilRef=a.createRef(),this.sheetRef=a.createRef(),this.sheetTopRef=a.createRef(),this.sheetContentRef=a.createRef(),this.sheetInnerContentRef=a.createRef(),this.sheetTitleRef=a.createRef(),this.velocityTracker=new rw,this.observer=null,this.state={startScrollTop:0,startY:0,deltaY:0,prevSheetHeight:0,swipeAreaTouched:!1,contentTouched:!1,veilTouched:!1,isAnimating:!1,inWindowResizeScope:!1},this.setStyles=e=>{let{status:t,deltaHeight:n=0}=e;if(!this.sheetRef.current||!this.veilRef.current)return;const r=this.sheetHeight-n,i="showing"===t?"translate3d(0, -".concat(r,"px, 0)"):"translate3d(0, 0, 0)";let o=0;"showing"===t&&(o=0===n?1:r/this.sheetHeight),this.veilRef.current.style.opacity=String(o),this.sheetRef.current.style.transform=i},this.show=()=>{this.setState({isAnimating:!0},(()=>{this.setStyles({status:"showing"}),this.setHash()}))},this.hide=()=>{this.setState({isAnimating:!0},(()=>{this.setStyles({status:"hiding"}),this.removeHash()}))},this.onSwipeAreaTouchStart=e=>{this.velocityTracker.clear(),this.setState({startY:e.nativeEvent.touches[0].clientY,swipeAreaTouched:!0})},this.onContentTouchStart=e=>{this.props.allowHideOnContentScroll&&!this.state.swipeAreaTouched&&(this.velocityTracker.clear(),this.setState({startY:e.nativeEvent.touches[0].clientY,startScrollTop:this.sheetScrollTop,contentTouched:!0}))},this.onSwipeAriaTouchMove=e=>{const t=e.nativeEvent.touches[0].clientY-this.state.startY;this.velocityTracker.addMovement({x:e.nativeEvent.touches[0].clientX,y:e.nativeEvent.touches[0].clientY}),this.setState({deltaY:t}),t<=0||this.setStyles({status:"showing",deltaHeight:t})},this.onContentTouchMove=e=>{if(!this.props.allowHideOnContentScroll)return;const{startScrollTop:t,swipeAreaTouched:n}=this.state;if(n||this.sheetScrollTop>0||t>0&&t!==this.sheetScrollTop)return;const r=e.nativeEvent.touches[0].clientY-this.state.startY;this.velocityTracker.addMovement({x:e.nativeEvent.touches[0].clientX,y:e.nativeEvent.touches[0].clientY}),this.setState({deltaY:r}),r<=0||this.setStyles({status:"showing",deltaHeight:r})},this.onTouchEndAction=e=>{const t=this.velocityTracker.getYAcceleration();this.sheetHeight<=e?this.props.hideSheet():e>50&&t<=.08&&t>=-.02||t>.08?this.hide():0!==e&&this.show()},this.onSwipeAriaTouchEnd=()=>{const{deltaY:e}=this.state;this.onTouchEndAction(e),this.setState({startY:0,deltaY:0,swipeAreaTouched:!1})},this.onContentTouchEnd=()=>{const{deltaY:e,swipeAreaTouched:t}=this.state;this.props.allowHideOnContentScroll&&!t&&(this.onTouchEndAction(e),this.setState({startY:0,deltaY:0,contentTouched:!1}))},this.onVeilClick=()=>{this.setState({veilTouched:!0}),this.hide()},this.onVeilTransitionEnd=()=>{this.setState({isAnimating:!1}),"0"===this.veilOpacity&&this.props.hideSheet()},this.onContentTransitionEnd=e=>{"height"===e.propertyName&&this.sheetContentRef.current&&(this.sheetContentRef.current.style.transition="none")},this.onResizeWindow=()=>{this.setState({inWindowResizeScope:!0}),this.onResize(),setTimeout((()=>this.setState({inWindowResizeScope:!1})),0)},this.onResize=()=>{if(!this.sheetRef.current||!this.sheetContentRef.current)return;const e=this.sheetTitleHeight+this.innerContentHeight+this.sheetTopHeight;if(e===this.state.prevSheetHeight&&!this.state.inWindowResizeScope)return;const t=.9*window.innerHeight,n=e>=t?t:e;this.sheetContentRef.current.style.transition=this.state.prevSheetHeight>e?"height 0s ease ".concat("0.3s"):"none",this.sheetContentRef.current.style.height="".concat(n-this.sheetTopHeight,"px"),this.sheetRef.current.style.transform="translate3d(0, -".concat(n,"px, 0)"),this.setState({prevSheetHeight:e})}}componentDidMount(){this.addListeners(),this.show(),this.setInitialStyles(),this.setState({prevSheetHeight:this.sheetTitleHeight+this.innerContentHeight+this.sheetTopHeight})}componentDidUpdate(e){const{visible:t,location:n}=this.props;!e.visible&&t&&this.show(),(e.visible&&!t||this.shouldClose(e))&&this.hide(),e.location.pathname!==n.pathname&&(iw=[])}componentWillUnmount(){this.removeListeners()}render(){const{content:e,contentClassName:t,swipeAreaClassName:n,hideTopBar:r,title:i}=this.props,{deltaY:o,swipeAreaTouched:s,contentTouched:l,veilTouched:c,isAnimating:u,inWindowResizeScope:d}=this.state,h={"with-transition":!o||c},p={"with-transition":!d&&h["with-transition"]},f={"without-scroll":o>0&&l||s};return a.createElement(a.Fragment,null,a.createElement("div",{ref:this.veilRef,className:tw("veil",h),onClick:u?void 0:this.onVeilClick,onTransitionEnd:this.onVeilTransitionEnd,role:"presentation"}),a.createElement("div",{ref:this.sheetRef,className:tw("sheet",p),role:"dialog","aria-modal":"true","aria-label":i},!r&&a.createElement("div",{ref:this.sheetTopRef,className:tw("sheet-top")},a.createElement("div",{className:tw("sheet-top-resizer")})),a.createElement("div",{className:tw("sheet-swipe-area",n),onTouchStart:this.onSwipeAreaTouchStart,onTouchMove:this.onSwipeAriaTouchMove,onTouchEnd:this.onSwipeAriaTouchEnd}),a.createElement("div",{ref:this.sheetContentRef,className:tw("sheet-content",f,t),onTouchStart:this.onContentTouchStart,onTouchMove:this.onContentTouchMove,onTouchEnd:this.onContentTouchEnd,onTransitionEnd:this.onContentTransitionEnd},i&&a.createElement("div",{ref:this.sheetTitleRef,className:tw("sheet-content-title")},i),a.createElement("div",{ref:this.sheetInnerContentRef},e))))}get veilOpacity(){var e;return(null===(e=this.veilRef.current)||void 0===e?void 0:e.style.opacity)||0}get sheetTopHeight(){var e;return(null===(e=this.sheetTopRef.current)||void 0===e?void 0:e.getBoundingClientRect().height)||0}get sheetHeight(){var e;return(null===(e=this.sheetRef.current)||void 0===e?void 0:e.getBoundingClientRect().height)||0}get innerContentHeight(){var e;return(null===(e=this.sheetInnerContentRef.current)||void 0===e?void 0:e.getBoundingClientRect().height)||0}get sheetTitleHeight(){var e;return(null===(e=this.sheetTitleRef.current)||void 0===e?void 0:e.getBoundingClientRect().height)||0}get sheetScrollTop(){var e;return(null===(e=this.sheetContentRef.current)||void 0===e?void 0:e.scrollTop)||0}setInitialStyles(){if(this.sheetContentRef.current&&this.sheetInnerContentRef.current){const e=this.sheetHeight-this.sheetTopHeight;this.sheetContentRef.current.style.height="".concat(e,"px")}}addListeners(){window.addEventListener("resize",this.onResizeWindow),this.sheetInnerContentRef.current&&(this.observer=new ResizeObserver((()=>{this.state.inWindowResizeScope||this.onResize()})),this.observer.observe(this.sheetInnerContentRef.current))}removeListeners(){window.removeEventListener("resize",this.onResizeWindow),this.observer&&this.observer.disconnect()}setHash(){const{id:e,platform:t,location:n,history:r}=this.props;if(t===ew.t.BROWSER)return;const i=Object.assign(Object.assign({},n),{hash:e});switch(t){case ew.t.IOS:n.hash&&iw.push(n.hash),r.replace(i);break;case ew.t.ANDROID:r.push(i)}}removeHash(){var e;const{id:t,platform:n,location:r,history:i}=this.props;if(n!==ew.t.BROWSER&&r.hash==="#".concat(t))switch(n){case ew.t.IOS:i.replace(Object.assign(Object.assign({},r),{hash:null!==(e=iw.pop())&&void 0!==e?e:""}));break;case ew.t.ANDROID:i.goBack()}}shouldClose(e){const{id:t,platform:n,location:r,history:i}=this.props;return n!==ew.t.BROWSER&&"POP"===i.action&&e.location.hash!==r.hash&&r.hash!=="#".concat(t)}}ow.defaultProps={id:"sheet",allowHideOnContentScroll:!0};const aw=function(e){var t;const n=(r=e).displayName||r.name||"Component";var r;return(t=class extends a.Component{render(){return a.createElement(e,Object.assign({},this.props,{mobile:this.context.mobile,platform:this.context.platform,useHistory:this.context.useHistory,useLocation:this.context.useLocation}))}}).displayName="withMobile(".concat(n,")"),t.contextType=ox.z,t}(function(e){const t=t=>{const{useHistory:n,useLocation:r}=t,i=(0,nt._T)(t,["useHistory","useLocation"]);return a.createElement(e,Object.assign({},i,{history:n(),location:r()}))},n=e.displayName||e.name||"Component";return t.displayName="withRouterWrapper(".concat(n,")"),t}(ow)),sw=e=>{let{children:t,onClose:n,visible:r,id:i,title:o,className:s,contentClassName:l,swipeAreaClassName:c,allowHideOnContentScroll:u,hideTopBar:d,qa:h}=e;const[p,f]=a.useState(r),[m,g]=a.useState(r);Jx({enabled:p}),!m&&r&&f(!0),r!==m&&g(r);return p?a.createElement(jr.h,null,a.createElement("div",{"data-qa":h,className:tw(null,s)},a.createElement(aw,{id:i,content:t,contentClassName:l,swipeAreaClassName:c,title:o,visible:r,allowHideOnContentScroll:u,hideTopBar:d,hideSheet:()=>{n&&n(),f(!1)}}))):null},lw=e=>e-2,cw=(e,t,n)=>{let r=t;return r="number"===typeof e?e:"fit"===e?lw(t):((e,t)=>t?e>100?e:100:lw(e))(t,n),"".concat(r,"px")},uw=e=>{const{width:t,disablePortal:n,virtualized:r}=e;return[{name:"sameWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:e=>{let{state:n,name:i}=e;var o;if(null===(o=n.modifiersData["".concat(i,"#persistent")])||void 0===o?void 0:o.skip)return;const a=cw(t,n.rects.reference.width,r);"number"!==typeof t&&"fit"!==t?(n.styles.popper.minWidth=a,n.styles.popper.width=void 0):(n.styles.popper.minWidth=a,n.styles.popper.width=a),n.styles.popper.maxWidth="max(90vw, ".concat(lw(n.rects.reference.width),"px)"),n.modifiersData["".concat(i,"#persistent")]={skip:"number"!==typeof t}},effect:e=>{let{state:n,name:i}=e;var o;if(null===(o=n.modifiersData["".concat(i,"#persistent")])||void 0===o?void 0:o.skip)return;const a=cw(t,n.elements.reference.offsetWidth,r);"number"!==typeof t&&"fit"!==t?n.elements.popper.style.minWidth=a:(n.elements.popper.style.minWidth=a,n.elements.popper.style.width=a),n.elements.popper.style.maxWidth="max(90vw, ".concat(n.elements.reference.offsetWidth,"px)")}},{name:"preventOverflow",options:{padding:10,altBoundary:n,altAxis:!0}}]},dw=(0,le.Ge)("select-popup"),hw=["bottom-start","bottom-end","top-start","top-end"],pw=a.forwardRef(((e,t)=>{let{handleClose:n,width:r,open:i,placement:o=hw,controlRef:s,children:l,className:c,disablePortal:u,virtualized:d,mobile:h,id:p}=e;return h?a.createElement(sw,{qa:op,className:c,visible:Boolean(i),onClose:n},l):a.createElement(ti,{contentClassName:dw(null,c),qa:ip,anchorRef:t,placement:o,offset:[1,1],open:i,onClose:n,disablePortal:u,restoreFocus:!0,restoreFocusRef:s,modifiers:uw({width:r,disablePortal:u,virtualized:d}),id:p},l)}));pw.displayName="SelectPopup";const fw=e=>{const{onChange:t,open:n,disabled:r}=e,[i,o]=a.useState(""),[s,l]=a.useState(),c=a.useCallback((e=>{if(clearTimeout(s),e){const e=window.setTimeout((()=>o("")),2e3);l(e)}}),[s]),u=a.useCallback((e=>{e.stopPropagation();const t=((e,t)=>{const n=1===e.length;let r="";return e===Zr.V.BACKSPACE&&t.length?r=t.slice(0,t.length-1):n&&(r=(t+e).trim()),r})(e.key,i);i!==t&&(c(t),o(t))}),[c,i]);a.useEffect((()=>(n&&!r?document.addEventListener("keydown",u):n||r||o(""),()=>{n&&!r&&document.removeEventListener("keydown",u)})),[u,n,r]),a.useEffect((()=>(n||clearTimeout(s),()=>clearTimeout(s))),[n,s]),a.useEffect((()=>{t(i)}),[t,i])};var mw=n(63639),gw=n.n(mw);function vw(e){return gw()(e,[lp])}const yw={filter:""},bw=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:yw,t=arguments.length>1?arguments[1]:void 0;if("SET_FILTER"===t.type){const{filter:n}=t.payload;return Object.assign(Object.assign({},e),{filter:n})}return e},xw=e=>{let{renderFilter:t,renderList:n}=e;return a.createElement(a.Fragment,null,t(),n())},ww=a.forwardRef((function(e,t){const{onUpdate:n,onOpenChange:r,onFilterChange:i,renderControl:o,renderFilter:s,renderOption:l,renderOptionGroup:c,renderSelectedOption:u,renderEmptyOptions:d,renderPopup:h=xw,getOptionHeight:p,getOptionGroupHeight:f,filterOption:m,name:g,className:v,controlClassName:y,popupClassName:b,qa:x,value:w,defaultValue:S,defaultOpen:_,open:C,label:E,placeholder:T,filterPlaceholder:O,width:N,popupWidth:k,popupPlacement:j,error:I,virtualizationThreshold:P=np,view:D="normal",size:A="m",pin:R="round-round",multiple:M=!1,disabled:L=!1,filterable:F=!1,disablePortal:z,hasClear:B=!1,onClose:U,id:H,hasCounter:V,renderCounter:G,title:W}=e,q=(0,Kh.X)(),[{filter:Z},Y]=a.useReducer(bw,yw),K=a.useRef(null),Q=a.useRef(null),X=a.useRef(null),$=a.useRef(null),J=Et(t,Q),ee=a.useCallback((e=>{null===i||void 0===i||i(e),Y({type:"SET_FILTER",payload:{filter:e}})}),[i]),te=a.useCallback((e=>{null===r||void 0===r||r(e),!e&&F&&setTimeout((()=>{ee("")}),100)}),[F,r,ee]),{value:ne,open:re,activeIndex:ie,toggleOpen:oe,handleSelection:ae,handleClearValue:se,setActiveIndex:le}=(e=>{let{defaultOpen:t,onClose:n,onOpenChange:r,open:i,value:o,defaultValue:s=[],multiple:l,onUpdate:c}=e;const[u,d]=_t(o,s,c),[h,p]=a.useState(),f=qh({defaultOpen:t,onClose:n,onOpenChange:r,open:i}),{toggleOpen:m}=f,g=(0,nt._T)(f,["toggleOpen"]),v=a.useCallback((e=>{if(!u.includes(e.value)){const t=[e.value];d(t)}m(!1)}),[u,d,m]),y=a.useCallback((e=>{const t=u.includes(e.value)?u.filter((t=>t!==e.value)):[...u,e.value];d(t)}),[u,d]),b=a.useCallback((e=>{l?y(e):v(e)}),[l,v,y]),x=a.useCallback((()=>{d([])}),[d]);return Object.assign({value:u,activeIndex:h,handleSelection:b,handleClearValue:x,toggleOpen:m,setActiveIndex:p},g)})({onUpdate:n,value:w,defaultValue:S,defaultOpen:_,multiple:M,open:C,onClose:U,onOpenChange:te}),ce=ue(),de=null!==H&&void 0!==H?H:ce,he=function(e){const{filter:t="",filterable:n,filterOption:r}=e,i=a.useMemo((()=>vw(e.options)?e.options:Cx(e.options)),[e.options]),o=a.useMemo((()=>n?jx({options:i,filter:t,filterOption:r}):i),[t,n,r,i]);return i[lp].filteredOptions=o,i}({options:e.options||Ox(e.children),filter:Z,filterable:F,filterOption:m}),pe=function(e){if(!vw(e))throw Error("You should use options generated by useSelectOptions hook");return gw()(e,[lp,"filteredOptions"])}(he),fe=((e,t,n)=>{if(0===t.length)return null;const r=e.filter((e=>!_x(e))),i=t.reduce(((e,t)=>{const n=r.find((e=>e.value===t));return e.push(n||{value:t}),e}),[]);return n?i.map(((e,t)=>a.createElement(a.Fragment,{key:e.value},n(e,t)))):i.map((e=>Tx(e))).join(", ")})(he,ne,u),me=pe.length>=P,{errorMessage:ge,errorPlacement:ve,validationState:ye}=_i({error:I,errorMessage:e.errorMessage,errorPlacement:e.errorPlacement||"outside",validationState:e.validationState}),be=ue(),xe="invalid"===ye,we=xe&&Boolean(ge)&&"outside"===ve,Se=xe&&Boolean(ge)&&"inside"===ve,_e=a.useCallback((e=>{var t,n;if(e&&!(null===e||void 0===e?void 0:e.disabled)&&!("label"in e)){if(M){const e=null===(t=null===$||void 0===$?void 0:$.current)||void 0===t?void 0:t.getActiveItem();null===(n=X.current)||void 0===n||n.focus(),"number"===typeof e&&setTimeout((()=>{var t;null===(t=null===$||void 0===$?void 0:$.current)||void 0===t||t.activateItem(e,!0)}),50)}ae(e)}}),[ae,M]),Ce=a.useCallback((e=>{var t;[Zr.V.ENTER,Zr.V.SPACEBAR].includes(e.key)&&re&&(e.preventDefault(),e.key===Zr.V.SPACEBAR&&_e((e=>{var t;const n=kx(e),r=null===(t=null===e||void 0===e?void 0:e.current)||void 0===t?void 0:t.getActiveItem();return"number"===typeof r?n[r]:void 0})($))),[Zr.V.ARROW_DOWN,Zr.V.ARROW_UP].includes(e.key)&&!re&&(e.preventDefault(),oe()),null===(t=null===$||void 0===$?void 0:$.current)||void 0===t||t.onKeyDown(e)}),[_e,re,oe]),Ee=a.useCallback((e=>{var t;null===(t=null===$||void 0===$?void 0:$.current)||void 0===t||t.onKeyDown(e)}),[]),Te=a.useCallback((e=>{var t;if(e){const n=Nx(e,kx($));"number"===typeof n&&-1!==n&&(null===(t=null===$||void 0===$?void 0:$.current)||void 0===t||t.activateItem(n,!0))}}),[]);fw({onChange:Te,open:re,disabled:F}),a.useEffect((()=>{var e;re&&((e=>{var t;const n=kx(e);null===(t=null===e||void 0===e?void 0:e.current)||void 0===t||t.activateItem(Sx.findNextIndex(n,0,1),!1)})($),F&&(null===(e=X.current)||void 0===e||e.focus()))}),[re,F]);const Oe=Object.assign({},"max"===N&&{width:N}),Ne={};"number"===typeof N&&(Ne.width=N);const ke=a.useCallback((()=>oe(!1)),[oe]),{onFocus:je,onBlur:Ie}=e,{focusWithinProps:Pe}=Yh({onFocusWithin:je,onBlurWithin:a.useCallback((e=>{null===Ie||void 0===Ie||Ie(e),ke()}),[ke,Ie])});return a.createElement("div",Object.assign({ref:K,className:Qh(Oe,v)},Pe,{style:Ne}),a.createElement(Qx,{toggleOpen:oe,hasClear:B,clearValue:se,ref:J,className:y,qa:x,name:g,view:D,size:A,pin:R,label:E,placeholder:T,selectedOptionsContent:fe,isErrorVisible:xe,errorMessage:Se?ge:void 0,open:re,disabled:L,onKeyDown:Ce,renderControl:o,value:ne,popupId:"select-popup-".concat(de),selectId:"select-".concat(de),activeIndex:ie,hasCounter:M&&V,renderCounter:G,title:W}),a.createElement(pw,{ref:K,className:b,controlRef:Q,width:k,open:re,handleClose:ke,disablePortal:z,virtualized:me,mobile:q,id:"select-popup-".concat(de),placement:j},h({renderFilter:()=>F?a.createElement(dp,{ref:X,size:A,value:Z,placeholder:O,onChange:ee,onKeyDown:Ee,renderFilter:s}):null,renderList:()=>pe.length||e.loading?a.createElement(zx,{ref:$,size:A,value:ne,mobile:q,flattenOptions:pe,multiple:M,virtualized:me,onOptionClick:_e,renderOption:l,renderOptionGroup:c,getOptionHeight:p,getOptionGroupHeight:f,loading:e.loading,onLoadMore:e.onLoadMore,selectId:"select-".concat(de),onChangeActive:le}):a.createElement(Ux,{filter:Z,renderEmptyOptions:d})})),a.createElement(Ei,{errorMessage:we?ge:null,errorMessageId:be}))}));ww.Option=e=>null,ww.OptionGroup=e=>null;const Sw=tu(1,2,["success","warning","danger"]),_w={"block-4-2":tu(1,2,["success","warning","danger"]),"mirror-3-dc":tu(1,3,["success","warning","danger"])},Cw=e=>{var t;return(void 0!==(t=e.ErasureSpecies)&&t in _w?_w[e.ErasureSpecies]:Sw)(e.Degraded)},Ew=tu(80,85,["success","warning","danger"]),Tw=tu(80,85,[al.K.Green,al.K.Yellow,al.K.Red]),Ow={sortValue:Na.Hk.NodeId,sortOrder:zo.zE},Nw={sortValue:sh.PoolName,sortOrder:zo.zE},kw={sortValue:sh.Degraded,sortOrder:zo.hr},jw={sortValue:sh.Usage,sortOrder:zo.hr};const Iw=JSON.parse('{"label":"Usage:","default_value":"Any","groups_count":["{{count}} group","{{count}} groups","{{count}} groups","No groups"]}'),Pw=JSON.parse('{"label":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435:","default_value":"\u041b\u044e\u0431\u043e\u0435","groups_count":["{{count}} \u0433\u0440\u0443\u043f\u043f\u0430","{{count}} \u0433\u0440\u0443\u043f\u043f\u044b","{{count}} \u0433\u0440\u0443\u043f\u043f","\u041d\u0435\u0442 \u0433\u0440\u0443\u043f\u043f"]}'),Dw=(0,We.wZ)("ydb-usage-filter",{ru:Pw,en:Iw}),Aw=Me("usage-filter"),Rw=e=>{const{className:t,value:n=[],groups:r=[],onChange:i,debounce:o=200}=e,[s,l]=a.useState(n),c=a.useRef();a.useEffect((()=>{l((e=>e.join(",")!==n.join(",")?n:e))}),[n]);const u=a.useMemo((()=>r.map((e=>{let{threshold:t,count:n}=e;return{value:String(t),text:"".concat(t,"%"),data:{count:n}}}))),[r]),d=Math.max(...r.map((e=>{let{count:t}=e;return t})));return(0,Le.jsx)(ww,{className:Aw(null,t),label:Dw("label"),value:s,placeholder:Dw("default_value"),options:u,multiple:!0,onUpdate:e=>{l(e),window.clearTimeout(c.current),c.current=window.setTimeout((()=>{null===i||void 0===i||i(e)}),o)},renderOption:e=>{let{value:t,data:n,text:r}=e;return(0,Le.jsxs)("div",{className:Aw("option"),children:[(0,Le.jsx)(Il,{className:Aw("option-title"),status:Tw(Number(t)),name:r,size:"xs"}),(0,Le.jsxs)("div",{className:Aw("option-meta"),children:[Dw("groups_count",{count:n.count}),(0,Le.jsx)("div",{className:Aw("option-bar"),style:{width:"".concat(n.count/d*100,"%")}})]})]})},getOptionHeight:()=>50,popupWidth:280,disabled:0===r.length})},Mw=JSON.parse('{"groups":"Groups","nodes":"Nodes","controls_groups-search-placeholder":"Group ID, Pool name","controls_nodes-search-placeholder":"Node ID, FQDN"}'),Lw=JSON.parse('{"groups":"\u0413\u0440\u0443\u043f\u043f\u044b","nodes":"\u041d\u043e\u0434\u044b","controls_groups-search-placeholder":"ID \u0433\u0440\u0443\u043f\u043f\u044b, \u0438\u043c\u044f \u043f\u0443\u043b\u0430","controls_nodes-search-placeholder":"ID \u0443\u0437\u043b\u0430, FQDN"}'),Fw=(0,We.wZ)("ydb-storage",{ru:Lw,en:Mw}),zw=Me("global-storage"),Bw=e=>{let{searchValue:t,handleSearchValueChange:n,withTypeSelector:r,storageType:i,handleStorageTypeChange:o,visibleEntities:s,handleVisibleEntitiesChange:l,nodesUptimeFilter:c,handleNodesUptimeFilterChange:u,withGroupsUsageFilter:d,groupsUsageFilter:h,groupsUsageFilterOptions:p,handleGroupsUsageFilterChange:f,entitiesCountCurrent:m,entitiesCountTotal:g,entitiesLoading:v}=e;const y=i===oh.nodes,b=Fw(y?"nodes":"groups");return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(Yc,{value:t,onChange:n,placeholder:Fw(y?"controls_nodes-search-placeholder":"controls_groups-search-placeholder"),className:zw("search")}),r&&(0,Le.jsx)(Vh,{value:i,onChange:o}),(0,Le.jsx)(Wh,{value:s,onChange:l}),y&&(0,Le.jsx)(Jc,{value:c,onChange:u}),!y&&d&&(0,Le.jsx)(Rw,{value:h,onChange:f,groups:p}),(0,Le.jsx)(yc,{label:b,loading:v,total:g,current:m})]})},Uw=JSON.parse('{"default_message":"Everything is fine!","default_button_label":"Show All"}'),Hw=JSON.parse('{"default_message":"\u0412\u0441\u0451 \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435!","default_button_label":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0441\u0435"}'),Vw=(0,We.wZ)("ydb-storage-empty-filter",{ru:Hw,en:Uw}),Gw=e=>{let{title:t,message:n=Vw("default_message"),showAll:r=Vw("default_button_label"),onShowAll:i}=e;return(0,Le.jsx)(Ac,{image:(0,Le.jsx)(Ge,{name:"thumbsUp"}),position:"left",title:t,description:n,actions:i&&[(0,Le.jsx)(Ie.z,{onClick:i,children:r},"show-all")]})},Ww=JSON.parse('{"empty.default":"No such groups","empty.out_of_space":"No groups with out of space errors","empty.degraded":"No degraded groups","show_all":"Show all groups","encrypted":"Encrypted group"}'),qw=JSON.parse('{"empty.default":"\u041d\u0435\u0442 \u0433\u0440\u0443\u043f\u043f","empty.out_of_space":"\u041d\u0435\u0442 \u0433\u0440\u0443\u043f\u043f, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043a\u043e\u043d\u0447\u0430\u0435\u0442\u0441\u044f \u043c\u0435\u0441\u0442\u043e","empty.degraded":"\u041d\u0435\u0442 \u0434\u0435\u0433\u0440\u0430\u0434\u0438\u0440\u043e\u0432\u0430\u0432\u0448\u0438\u0445 \u0433\u0440\u0443\u043f\u043f","show_all":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0441\u0435 \u0433\u0440\u0443\u043f\u043f\u044b","encrypted":"\u0417\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0433\u0440\u0443\u043f\u043f\u0430"}'),Zw=(0,We.wZ)("ydb-storage-groups",{ru:qw,en:Ww}),Yw=e=>{let t,{visibleEntities:n,onShowAll:r}=e;return n===ih.space&&(t=Zw("empty.out_of_space")),n===ih.missing&&(t=Zw("empty.degraded")),t?(0,Le.jsx)(Gw,{title:t,showAll:Zw("show_all"),onShowAll:r}):null},Kw=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"m3.003 4.702 4.22-2.025a1.796 1.796 0 0 1 1.554 0l4.22 2.025a.886.886 0 0 1 .503.8V6a8.55 8.55 0 0 1-3.941 7.201l-.986.631a1.063 1.063 0 0 1-1.146 0l-.986-.63A8.55 8.55 0 0 1 2.5 6v-.498c0-.341.196-.652.503-.8Zm3.57-3.377L2.354 3.35A2.387 2.387 0 0 0 1 5.502V6a10.05 10.05 0 0 0 4.632 8.465l.986.63a2.563 2.563 0 0 0 2.764 0l.986-.63A10.05 10.05 0 0 0 15 6v-.498c0-.918-.526-1.755-1.354-2.152l-4.22-2.025a3.296 3.296 0 0 0-2.852 0ZM9.5 7a1.5 1.5 0 0 1-.75 1.3v1.95a.75.75 0 0 1-1.5 0V8.3A1.5 1.5 0 1 1 9.5 7Z",clipRule:"evenodd"})),Qw=Me("stack"),Xw=e=>{let{children:t,className:n}=e;return(0,Le.jsx)("div",{className:Qw(null,n),children:a.Children.map(t,((e,t)=>a.isValidElement(e)?(0,Le.jsx)("div",{className:Qw("layer"),style:{"--ydb-stack-level":t},children:e}):null))})},$w=Me("storage-disk-progress-bar");function Jw(e){let{diskAllocatedPercent:t=-1,severity:n,compact:r}=e;const[i]=Mo(Lo.yT),o={inverted:i,compact:r},s=void 0!==n&&_h(n);return s&&(o[s.toLocaleLowerCase()]=!0),(0,Le.jsx)("div",{className:$w(o),role:"meter","aria-label":"Disk allocated space","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":t,children:r?(0,Le.jsx)("div",{className:$w("filled"),style:{width:"100%"}}):t>=0&&(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("div",{className:$w("filled"),style:{width:"".concat(i?100-t:t,"%")}}),(0,Le.jsx)("div",{className:$w("filled-title"),children:"".concat(Math.round(t),"%")})]})})}const eS=Me("pdisk-storage-popup"),tS=[al.K.Orange,al.K.Red,al.K.Yellow],nS=(e,t)=>{const{AvailableSize:n,TotalSize:r,State:i,PDiskId:o,NodeId:a,Path:s,Realtime:l,Type:c,Device:u}=e,d=[{label:"PDisk",value:(0,ks.CH)({NodeId:a,PDiskId:o})||Lo.jX},{label:"State",value:i||"not available"},{label:"Type",value:c||"unknown"}];return a&&d.push({label:"Node Id",value:a}),t&&a&&t.get(a)&&d.push({label:"Host",value:t.get(a)}),s&&d.push({label:"Path",value:s}),d.push({label:"Available",value:"".concat((0,Ou.Uz)(n)," of ").concat((0,Ou.Uz)(r))}),l&&tS.includes(l)&&d.push({label:"Realtime",value:l}),u&&tS.includes(u)&&d.push({label:"Device",value:u}),d},rS=e=>{let{data:t,nodes:n,...r}=e;const i=a.useMemo((()=>nS(t,n)),[t,n]);return(0,Le.jsx)(ti,{contentClassName:eS(),placement:["top","bottom"],offset:[0,12],...r,children:(0,Le.jsx)(Ss,{title:"PDisk",info:i,size:"s"})})},iS=Me("vdisk-storage-popup"),oS=e=>{let{data:t,nodes:n,...r}=e;const i=Sh(t),o=a.useMemo((()=>i?(e=>{var t,n,r,i;const{VDiskId:o,VDiskState:a,SatisfactionRank:s,DiskSpace:l,FrontQueues:c,Replicated:u,UnsyncedVDisks:d,AllocatedSize:h,ReadThroughput:p,WriteThroughput:f,StoragePoolName:m}=e,g=[{label:"VDisk",value:(0,ks.a2)(o)},{label:"State",value:null!==a&&void 0!==a?a:"not available"}];var v,y;return m&&g.push({label:"StoragePool",value:m}),s&&(null===(t=s.FreshRank)||void 0===t?void 0:t.Flag)!==al.K.Green&&g.push({label:"Fresh",value:null===(v=s.FreshRank)||void 0===v?void 0:v.Flag}),s&&(null===(n=s.LevelRank)||void 0===n?void 0:n.Flag)!==al.K.Green&&g.push({label:"Level",value:null===(y=s.LevelRank)||void 0===y?void 0:y.Flag}),s&&null!==(r=s.FreshRank)&&void 0!==r&&r.RankPercent&&g.push({label:"Fresh",value:s.FreshRank.RankPercent}),s&&null!==(i=s.LevelRank)&&void 0!==i&&i.RankPercent&&g.push({label:"Level",value:s.LevelRank.RankPercent}),l&&l!==al.K.Green&&g.push({label:"Space",value:l}),c&&c!==al.K.Green&&g.push({label:"FrontQueues",value:c}),u||g.push({label:"Replicated",value:"NO"}),d&&g.push({label:"UnsyncVDisks",value:d}),Number(h)&&g.push({label:"Allocated",value:(0,Ou.Uz)(h)}),Number(p)&&g.push({label:"Read",value:(0,Ou.Qt)(p)}),Number(f)&&g.push({label:"Write",value:(0,Ou.Qt)(f)}),g})(t):(e=>{const{NodeId:t,PDiskId:n,VSlotId:r,StoragePoolName:i}=e,o=[{label:"State",value:"not available"}];return i&&o.push({label:"StoragePool",value:i}),o.push({label:"NodeId",value:null!==t&&void 0!==t?t:Lo.jX},{label:"PDiskId",value:null!==n&&void 0!==n?n:Lo.jX},{label:"VSlotId",value:null!==r&&void 0!==r?r:Lo.jX}),o})(t)),[t,i]),s=a.useMemo((()=>i&&t.PDisk&&nS(t.PDisk,n)),[t,n,i]);return(0,Le.jsxs)(ti,{contentClassName:iS(),placement:["top","bottom"],offset:[0,12],...r,children:[t.DonorMode&&(0,Le.jsx)(ft,{className:iS("donor-label"),children:"Donor"}),(0,Le.jsx)(Ss,{title:"VDisk",info:o,size:"s"}),s&&(0,Le.jsx)(Ss,{title:"PDisk",info:s,size:"s"})]})},aS=Me("ydb-vdisk-component"),sS=e=>{var t,n;let{data:r={},nodes:i,compact:o}=e;const s=Sh(r),[l,c]=a.useState(!1),u=a.useRef(null);return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(oS,{data:r,nodes:i,anchorRef:u,open:l}),(0,Le.jsx)("div",{className:aS(),ref:u,onMouseEnter:()=>{c(!0)},onMouseLeave:()=>{c(!1)},children:r.NodeId&&s?(0,Le.jsx)(_l,{to:(0,Ta.ax)(Ta.ZP.node,{id:r.NodeId,activeTab:vu},{pdiskId:null!==(t=r.PDiskId)&&void 0!==t?t:null===(n=r.PDisk)||void 0===n?void 0:n.PDiskId,vdiskId:(0,ks.a2)(r.VDiskId)}),className:aS("content"),children:(0,Le.jsx)(Jw,{diskAllocatedPercent:r.AllocatedPercent,severity:r.Severity,compact:o})}):(0,Le.jsx)(Jw,{diskAllocatedPercent:r.AllocatedPercent,severity:r.Severity,compact:o})})]})};function lS(e){let{data:t,nodes:n,compact:r,className:i,stackClassName:o}=e;const a=null===t||void 0===t?void 0:t.Donors,s=a&&a.length>0?(0,Le.jsxs)(Xw,{className:o,children:[(0,Le.jsx)(sS,{data:t,nodes:n,compact:r}),a.map((e=>{const t=Sh(e);return(0,Le.jsx)(sS,{data:e,nodes:n,compact:r},(0,ks.a2)(t?e.VDiskId:e))}))]}):(0,Le.jsx)(sS,{data:t,nodes:n,compact:r});return(0,Le.jsx)("div",{className:i,children:s})}const cS=Me("global-storage-groups"),uS="storageGroupsColumnsWidth",dS="MediaType",hS="Erasure",pS="GroupId",fS="Used",mS="Limit",gS="Usage",vS="UsedSpaceFlag",yS="Read",bS="Write",xS="VDisks",wS="Degraded",SS={name:"PoolName",header:"Pool Name",width:250,render:e=>{var t;let{row:n}=e;const r=null===(t=n.PoolName)||void 0===t?void 0:t.split("/");return r&&(0,Le.jsx)(hu,{wrapperClassName:cS("pool-name-wrapper"),content:n.PoolName,placement:["right"],behavior:di.Immediate,children:r[r.length-1]})},align:Hc.ZP.LEFT},_S={name:dS,header:"Type",width:100,resizeMinWidth:100,align:Hc.ZP.LEFT,render:e=>{let{row:t}=e;return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(ft,{children:t.MediaType||"\u2014"}),"\xa0",t.Encryption&&(0,Le.jsx)(fi,{content:Zw("encrypted"),placement:"right",behavior:di.Immediate,children:(0,Le.jsx)(ft,{children:(0,Le.jsx)(we.J,{data:Kw,size:18})})})]})},sortable:!1},CS={name:hS,header:"Erasure",width:100,render:e=>{let{row:t}=e;return t.ErasureSpecies?t.ErasureSpecies:"-"},align:Hc.ZP.LEFT,sortable:!1},ES={name:wS,header:"Degraded",width:100,render:e=>{let{row:t}=e;return t.Degraded?(0,Le.jsxs)(ft,{theme:Cw(t),children:["Degraded: ",t.Degraded]}):"-"},align:Hc.ZP.LEFT,defaultOrder:Hc.ZP.DESCENDING},TS={name:gS,header:"Usage",width:100,resizeMinWidth:70,render:e=>{let{row:t}=e;return t.Limit?(0,Le.jsx)(Uu,{value:t.Usage,theme:Ew(t.Usage)}):"-"},sortAccessor:e=>e.Limit?e.Usage:null,align:Hc.ZP.LEFT,sortable:!1},OS={name:pS,header:"Group ID",width:130,render:e=>{let{row:t}=e;return(0,Le.jsx)("span",{className:cS("group-id"),children:t.GroupID})},sortAccessor:e=>Number(e.GroupID),align:Hc.ZP.RIGHT,sortable:!1},NS={name:fS,header:"Used",width:100,render:e=>{let{row:t}=e;return(0,Ou.Uz)(t.Used,!0)},align:Hc.ZP.RIGHT,sortable:!1},kS={name:mS,header:"Limit",width:100,render:e=>{let{row:t}=e;return(0,Ou.Uz)(t.Limit)},align:Hc.ZP.RIGHT,sortable:!1},jS={name:vS,header:"Space",width:110,render:e=>{let{row:t}=e;const n=t.UsedSpaceFlag;let r=al.K.Red;return n<100?r=al.K.Green:n<1e4?r=al.K.Yellow:n<1e6&&(r=al.K.Orange),(0,Le.jsx)(Il,{status:r})},align:Hc.ZP.CENTER},IS={name:yS,header:"Read",width:100,render:e=>{let{row:t}=e;return t.Read?(0,Ou.Qt)(t.Read):"-"},align:Hc.ZP.RIGHT},PS={name:bS,header:"Write",width:100,render:e=>{let{row:t}=e;return t.Write?(0,Ou.Qt)(t.Write):"-"},align:Hc.ZP.RIGHT},DS=e=>({name:xS,className:cS("vdisks-column"),header:"VDisks",render:t=>{var n;let{row:r}=t;return(0,Le.jsx)("div",{className:cS("vdisks-wrapper"),children:null===(n=r.VDisks)||void 0===n?void 0:n.map((t=>(0,Le.jsx)(lS,{data:t,nodes:e,className:cS("vdisks-item")},(0,ks.a2)(t.VDiskId))))})},align:Hc.ZP.CENTER,width:900,resizeable:!1}),AS=()=>[OS,_S,CS,TS,NS,kS],RS=e=>[SS,_S,CS,ES,OS,TS,NS,DS(e)],MS=(e,t)=>{const n=(e=>[SS,_S,CS,ES,TS,OS,NS,kS,jS,IS,PS,DS(e)])(e),r=((e,t)=>t===ih.space?e.filter((e=>e.name!==wS)):t===ih.missing?e.filter((e=>e.name!==vS)):e.filter((e=>e.name!==wS&&e.name!==vS)))(n,t);return r.map((e=>{return{...e,sortable:(t=e.name,Object.values(sh).includes(t))};var t}))};function LS(e){let{data:t,tableSettings:n,visibleEntities:r,nodes:i,onShowAll:o,sort:s,handleSort:l}=e;const c=a.useMemo((()=>MS(i,r)),[i,r]);return t.length||r===ih.all?(0,Le.jsx)(qc,{columnsWidthLSKey:uS,data:t,columns:c,settings:n,emptyDataMessage:Zw("empty.default"),sortOrder:s,onSort:l},r):(0,Le.jsx)(Yw,{onShowAll:o,visibleEntities:r})}const FS=JSON.parse('{"empty.default":"No such nodes","empty.out_of_space":"No nodes with out of space errors","empty.degraded":"No degraded nodes","empty.small_uptime":"No nodes with uptime < 1h","empty.several_filters":"No nodes match current filters combination","show_all":"Show all nodes"}'),zS=JSON.parse('{"empty.default":"\u041d\u0435\u0442 \u0443\u0437\u043b\u043e\u0432","empty.out_of_space":"\u041d\u0435\u0442 \u0443\u0437\u043b\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043a\u043e\u043d\u0447\u0430\u0435\u0442\u0441\u044f \u043c\u0435\u0441\u0442\u043e","empty.degraded":"\u041d\u0435\u0442 \u0434\u0435\u0433\u0440\u0430\u0434\u0438\u0440\u043e\u0432\u0430\u0432\u0448\u0438\u0445 \u0443\u0437\u043b\u043e\u0432","empty.small_uptime":"\u041d\u0435\u0442 \u0443\u0437\u043b\u043e\u0432 \u0441 uptime < 1h","empty.several_filters":"\u041d\u0435\u0442 \u0443\u0437\u043b\u043e\u0432, \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u043f\u043e\u0434 \u0442\u0435\u043a\u0443\u0449\u0438\u0435 \u0444\u0438\u043b\u044c\u0442\u0440\u044b","show_all":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0441\u0435 \u0443\u0437\u043b\u044b"}'),BS=(0,We.wZ)("ydb-storage-nodes",{ru:zS,en:FS}),US=e=>{let t,{visibleEntities:n,nodesUptimeFilter:r,onShowAll:i}=e;return n===ih.space&&(t=BS("empty.out_of_space")),n===ih.missing&&(t=BS("empty.degraded")),r===Na.Uu.SmallUptime&&(t=BS("empty.small_uptime")),n!==ih.all&&r!==Na.Uu.All&&(t=BS("empty.several_filters")),t?(0,Le.jsx)(Gw,{title:t,showAll:BS("show_all"),onShowAll:i}):null},HS=Me("pdisk-storage"),VS=e=>{let{nodeId:t,data:n={},vDisks:r}=e;const[i,o]=a.useState(!1),s=a.useRef(null);return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(rS,{data:n,anchorRef:s,open:i}),(0,Le.jsxs)("div",{className:HS(),ref:s,children:[null!==r&&void 0!==r&&r.length?(0,Le.jsx)("div",{className:HS("vdisks"),children:r.map((e=>(0,Le.jsx)("div",{className:HS("vdisks-item"),style:{flexGrow:Number(e.AllocatedSize)||1},children:(0,Le.jsx)(lS,{data:e,compact:!0,stackClassName:HS("donors-stack")})},(0,ks.a2)(e.VDiskId))))}):null,(0,Le.jsxs)(_l,{to:(0,Ta.ax)(Ta.ZP.node,{id:t,activeTab:vu},{pdiskId:n.PDiskId||""}),className:HS("content"),onMouseEnter:()=>{o(!0)},onMouseLeave:()=>{o(!1)},children:[(0,Le.jsx)(Jw,{diskAllocatedPercent:n.AllocatedPercent,severity:n.Severity}),(0,Le.jsx)("div",{className:HS("media-type"),children:n.Type})]})]})]})},GS=Me("global-storage-nodes"),WS=e=>GS("node",{unavailable:(0,Na.TA)(e)}),qS="storageNodesColumnsWidth",ZS="NodeId",YS="Host",KS="DC",QS="Rack",XS="Uptime",$S="PDisks",JS="Missing",e_=(e,t)=>{const n=(e=>{const t=null===e||void 0===e?void 0:e.getNodeRef;return[{name:ZS,header:"Node ID",width:100,align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return t.NodeId}},{name:YS,header:"Host",width:350,render:e=>{let{row:n}=e;return(0,Le.jsx)(wu,{node:n,getNodeRef:t})},align:Hc.ZP.LEFT},{name:KS,header:"DC",width:100,render:e=>{let{row:t}=e;return t.DC||Lo.jX},align:Hc.ZP.LEFT},{name:QS,header:"Rack",width:100,render:e=>{let{row:t}=e;return t.Rack||"\u2014"},align:Hc.ZP.LEFT},{name:XS,header:"Uptime",width:130,sortAccessor:e=>{let{StartTime:t}=e;return t?-t:0},align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return t.Uptime}},{name:JS,header:"Missing",width:100,align:Hc.ZP.CENTER,defaultOrder:Hc.ZP.DESCENDING,render:e=>{let{row:t}=e;return t.Missing}},{name:$S,className:GS("pdisks-column"),header:"PDisks",render:e=>{var t;let{row:n}=e;return(0,Le.jsx)("div",{className:GS("pdisks-wrapper"),children:null===(t=n.PDisks)||void 0===t?void 0:t.map((e=>{var t;const r=null===(t=n.VDisks)||void 0===t?void 0:t.filter((t=>t.PDiskId===e.PDiskId));return(0,Le.jsx)("div",{className:GS("pdisks-item"),children:(0,Le.jsx)(VS,{data:e,nodeId:n.NodeId,vDisks:r})},e.PDiskId)}))})},align:Hc.ZP.CENTER,sortable:!1,width:900,resizeable:!1}]})(e),r=n.map((e=>({...e,sortable:(0,Na.oh)(e.name)})));return t!==ih.missing?r.filter((e=>e.name!==JS)):r};function t_(e){let{data:t,tableSettings:n,visibleEntities:r,onShowAll:i,nodesUptimeFilter:o,additionalNodesProps:a,sort:s,handleSort:l}=e;const c=e_(a,r);return t.length||r===ih.all&&o===Na.Uu.All?(0,Le.jsx)(qc,{columnsWidthLSKey:qS,data:t,columns:c,settings:{...n,dynamicRenderType:"variable"},emptyDataMessage:BS("empty.default"),rowClassName:WS,sortOrder:s,onSort:l},r):(0,Le.jsx)(US,{visibleEntities:r,nodesUptimeFilter:o,onShowAll:i})}const n_=Bl({encode:Wl.encode,decode:e=>null===e||void 0===e?e:Array.isArray(e)?e.filter(Boolean):e?[e]:[]},[]),r_=e=>{var t;let{additionalNodesProps:n,tenant:r,nodeId:i}=e;const{autorefresh:o}=Do((e=>e.schema)),[s,l]=mc({type:Gl,visible:Gl,search:Gl,uptimeFilter:Gl,usageFilter:n_}),c=Uh.parse(s.type),u=Bh.parse(s.visible),d=null!==(t=s.search)&&void 0!==t?t:"",h=Na.U8.parse(s.uptimeFilter),p=s.usageFilter,f=Do(Zs.d),[m,g]=a.useState({sortOrder:void 0,sortValue:void 0}),v=m.sortValue?m:Ow,[y,b]=a.useState({sortOrder:void 0,sortValue:void 0}),x=y.sortOrder?y:function(e){return e===ih.missing?kw:e===ih.space?jw:Nw}(u),w=void 0!==i,S=w?oh.groups:c,_=(e=>{let{filter:t,problemFilter:n,nodesUptimeFilter:r,sortOrder:i,sortValue:o}=e;const[s]=Mo(Lo.ET);return a.useMemo((()=>{if(s){const e=(0,Na.eV)(n),a=(0,Na.RW)(r);return{filter:t,problems_only:e,uptime:a,sortOrder:i,sortValue:o}}}),[s,t,n,r,i,o])})({filter:d,nodesUptimeFilter:h,...v}),C=(e=>{let{filter:t,sortOrder:n,sortValue:r}=e;const[i]=Mo(Lo.ET);return a.useMemo((()=>{if(i)return{version:ka.v2,filter:t,sortOrder:n,sortValue:r}}),[i,t,n,r])})({filter:d,...x}),E=r?o:Lo.ME,T=Fh.useGetStorageNodesInfoQuery({tenant:r,visibleEntities:u,..._},{skip:S!==oh.nodes,pollingInterval:E}),O=Fh.useGetStorageGroupsInfoQuery({tenant:r,visibleEntities:u,nodeId:i,...C},{skip:S!==oh.groups,pollingInterval:E}),{currentData:N,isFetching:k,error:j}=S===oh.nodes?T:O,{currentData:{nodes:I=[]}={}}=T,{currentData:{groups:P=[]}={}}=O,{nodes:D,groups:A,...R}=null!==N&&void 0!==N?N:{found:0,total:0},M=void 0===N&&k,L=a.useMemo((()=>function(e,t,n){let r=e||[];return r=ch(r,t),r=cu(r,n),r}(I,d,h)),[d,I,h]),F=a.useMemo((()=>function(e,t,n){let r=e||[];return r=uh(r,t),r=dh(r,n),r}(P,d,p)),[d,P,p]),z=a.useMemo((()=>function(e){const t={};return null===e||void 0===e||e.forEach((e=>{const n=ah(e,5);Object.prototype.hasOwnProperty.call(t,n)||(t[n]=0),t[n]+=1})),Object.entries(t).map((e=>{let[t,n]=e;return{threshold:Number(t),count:n}})).sort(((e,t)=>t.threshold-e.threshold))}(P)),[P]),[B,U]=Bo(v,(e=>g(e))),[H,V]=Bo(x,(e=>b(e))),G=e=>{l({usageFilter:e.length?e:void 0},"replaceIn")},W=e=>{l({search:e||void 0},"replaceIn")},q=e=>{l({visible:e},"replaceIn")},Z=e=>{l({type:e},"replaceIn")},Y=e=>{l({uptimeFilter:e},"replaceIn")},K=()=>{q(ih.all),Y(Na.Uu.All)};return j?403===j.status?(0,Le.jsx)(Fc,{position:"left"}):(0,Le.jsx)(zc,{error:j}):(0,Le.jsxs)($c,{children:[(0,Le.jsx)($c.Controls,{children:(0,Le.jsx)(Bw,{searchValue:d,handleSearchValueChange:W,withTypeSelector:!w,storageType:S,handleStorageTypeChange:Z,visibleEntities:u,handleVisibleEntitiesChange:q,nodesUptimeFilter:h,handleNodesUptimeFilterChange:Y,groupsUsageFilter:p,groupsUsageFilterOptions:z,handleGroupsUsageFilterChange:G,entitiesCountCurrent:S===oh.groups?F.length:L.length,entitiesCountTotal:R.total,entitiesLoading:M})}),(0,Le.jsx)($c.Table,{loading:M,className:zw("table"),children:(0,Le.jsxs)(a.Fragment,{children:[S===oh.groups&&(0,Le.jsx)(LS,{visibleEntities:u,data:F,tableSettings:Lo.LE,nodes:f,onShowAll:()=>q(ih.all),sort:H,handleSort:V},"groups"),S===oh.nodes&&(0,Le.jsx)(t_,{visibleEntities:u,nodesUptimeFilter:h,data:L,tableSettings:Lo.LE,onShowAll:K,additionalNodesProps:n,sort:B,handleSort:U},"nodes")]})})]})},i_=(e,t)=>"getStorageGroups|offset".concat(t,"|limit").concat(e),o_=async e=>{let{limit:t,offset:n,...r}=e;const i=await window.api.getStorageInfo({version:ka.v2,limit:t,offset:n,...r},{concurrentId:i_(t,n)}),o=Lh(i);return{data:o.groups||[],found:o.found||0,total:o.total||0}},a_=e=>{let{searchValue:t,visibleEntities:n,tenant:r,nodeId:i,nodesMap:o,onShowAll:s,parentContainer:l,renderControls:c,renderErrorMessage:u}=e;const d=a.useMemo((()=>[t,n,r,i]),[t,n,r,i]),h=a.useCallback((async function(e,o){let{sortOrder:a,columnId:s}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return await o_({limit:e,offset:o,filter:t,visibleEntities:n,tenant:r,nodeId:i,sortOrder:a,sortValue:s})}),[i,t,r,n]),p=a.useMemo((()=>MS(o,n)),[o,n]);return(0,Le.jsx)($d,{columnsWidthLSKey:uS,parentContainer:l,columns:p,fetchData:h,limit:50,renderControls:c,renderErrorMessage:u,renderEmptyDataMessage:()=>n!==ih.all?(0,Le.jsx)(Yw,{onShowAll:s,visibleEntities:n}):Zw("empty.default"),dependencyArray:d})},s_=(e,t)=>"getStorageNodes|offset".concat(t,"|limit").concat(e),l_=async e=>{let{type:t="static",storage:n=!0,limit:r,offset:i,...o}=e;const a=await window.api.getNodes({type:t,storage:n,limit:r,offset:i,...o},{concurrentId:s_(r,i)}),s=Mh(a);return{data:s.nodes||[],found:s.found||0,total:s.total||0}},c_=e=>{let{searchValue:t,visibleEntities:n,nodesUptimeFilter:r,tenant:i,additionalNodesProps:o,onShowAll:s,parentContainer:l,renderControls:c,renderErrorMessage:u}=e;const d=a.useMemo((()=>[t,n,r,i]),[t,n,r,i]),h=a.useCallback((async function(e,o){let{sortOrder:a,columnId:s}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return await l_({limit:e,offset:o,filter:t,uptime:(0,Na.RW)(r),visibleEntities:n,tenant:i,sortOrder:a,sortValue:s})}),[r,t,i,n]),p=a.useMemo((()=>e_(o,n)),[o,n]);return(0,Le.jsx)($d,{columnsWidthLSKey:qS,parentContainer:l,columns:p,fetchData:h,rowHeight:50,limit:50,renderControls:c,renderErrorMessage:u,renderEmptyDataMessage:()=>n!==ih.all||r!==Na.Uu.All?(0,Le.jsx)(US,{onShowAll:s,nodesUptimeFilter:r,visibleEntities:n}):BS("empty.default"),getRowClassName:WS,dependencyArray:d})},u_=e=>{var t;let{tenant:n,nodeId:r,parentContainer:i,additionalNodesProps:o}=e;const[a,s]=mc({type:Gl,visible:Gl,search:Gl,uptimeFilter:Gl}),l=Uh.parse(a.type),c=Bh.parse(a.visible),u=null!==(t=a.search)&&void 0!==t?t:"",d=Na.U8.parse(a.uptimeFilter),h=e=>{s({search:e||void 0},"replaceIn")},p=e=>{s({visible:e},"replaceIn")},f=e=>{s({type:e},"replaceIn")},m=e=>{s({uptimeFilter:e},"replaceIn")},g=Do(Zs.d),v=()=>{s({visible:ih.all,uptimeFilter:Na.Uu.All},"replaceIn")},y=e=>{let{totalEntities:t,foundEntities:n,inited:i}=e;return(0,Le.jsx)(Bw,{searchValue:u,handleSearchValueChange:h,withTypeSelector:!r,storageType:l,handleStorageTypeChange:f,visibleEntities:c,handleVisibleEntitiesChange:p,nodesUptimeFilter:d,handleNodesUptimeFilterChange:m,withGroupsUsageFilter:!1,entitiesCountCurrent:n,entitiesCountTotal:t,entitiesLoading:!i})},b=e=>403===e.status?(0,Le.jsx)(Fc,{position:"left"}):(0,Le.jsx)(zc,{error:e});return l===oh.nodes?(0,Le.jsx)(c_,{searchValue:u,visibleEntities:c,nodesUptimeFilter:d,tenant:n,additionalNodesProps:o,onShowAll:v,parentContainer:i,renderControls:y,renderErrorMessage:b}):(0,Le.jsx)(a_,{searchValue:u,visibleEntities:c,tenant:n,nodeId:r,nodesMap:g,onShowAll:()=>{p(ih.all)},parentContainer:i,renderControls:y,renderErrorMessage:b})},d_=e=>{let{parentContainer:t,...n}=e;const[r]=Mo(Lo.ET);return r?(0,Le.jsx)(u_,{parentContainer:t,...n}):(0,Le.jsx)(r_,{...n})};var h_=n(27102),p_=n(36313),f_=n(43680),m_=n.n(f_),g_=n(53809);const v_=(0,p_.P1)((e=>e),(e=>g_.Xv.endpoints.getTenantsInfo.select({clusterName:e}))),y_=(0,p_.P1)((e=>e),((e,t)=>v_(t)),((e,t)=>{var n;return null!==(n=t(e).data)&&void 0!==n?n:[]})),b_=e=>e.tenants.searchValue,x_=(0,p_.P1)([y_,Ro.qz,b_],((e,t,n)=>{let r=((e,t)=>t===Ro.pu.ALL?e:e.filter((e=>e.Overall&&e.Overall!==al.K.Green)))(e,t);return r=((e,t)=>e.filter((e=>{const n=new RegExp(m_()(t),"i");return n.test(e.Name||"")||n.test(e.controlPlaneName)})))(r,n),r})),w_=Me("tenants"),S_=e=>{let{additionalTenantsProps:t}=e;const n=Ao(),{currentData:r,isFetching:i,error:o}=g_.Xv.useGetTenantsInfoQuery({clusterName:h_.qw},{pollingInterval:Lo.ME}),s=i&&void 0===r,l=null!==r&&void 0!==r?r:[],c=Do(b_),u=Do((e=>x_(e,h_.qw))),d=Do(Ro.qz),h=e=>{n((0,Ro.M6)(e))},p=e=>{n((0,g_.gI)(e))};return o?(0,Le.jsx)(zc,{error:o}):(0,Le.jsxs)($c,{children:[(0,Le.jsx)($c.Controls,{children:(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(Yc,{value:c,onChange:p,placeholder:"Database name",className:w_("search")}),(0,Le.jsx)(Bc,{value:d,onChange:h}),(0,Le.jsx)(yc,{total:l.length,current:(null===u||void 0===u?void 0:u.length)||0,label:"Databases",loading:s})]})}),(0,Le.jsx)($c.Table,{loading:s,children:(()=>{const e=e=>{var n,r;const i=null!==(n=e.MonitoringEndpoint)&&void 0!==n?n:e.backend;return null===t||void 0===t||null===(r=t.prepareTenantBackend)||void 0===r?void 0:r.call(t,i)},n=[{name:"Name",header:"Database",render:n=>{var r;let{row:i}=n;const o=e(i),a=Boolean(o);return(0,Le.jsx)(Il,{externalLink:a,className:w_("name"),name:i.Name||"unknown database",withLeftTrim:!0,status:i.Overall,hasClipboardButton:!0,path:fs({name:i.Name,backend:o}),additionalControls:(0,Le.jsx)("span",{className:w_("monitoring-button"),children:null===t||void 0===t||null===(r=t.getMonitoringLink)||void 0===r?void 0:r.call(t,i.Name,i.Type)})})},width:440,sortable:!0,defaultOrder:Hc.ZP.DESCENDING},{name:"controlPlaneName",header:"Name",render:e=>{let{row:t}=e;return t.controlPlaneName},width:200,sortable:!0,defaultOrder:Hc.ZP.DESCENDING},{name:"Type",width:200,resizeMinWidth:150,render:e=>{let{row:t}=e;return"Serverless"!==t.Type?t.Type:(0,Le.jsxs)("div",{className:w_("type"),children:[(0,Le.jsx)("span",{className:w_("type-value"),children:t.Type}),(0,Le.jsx)(Ie.z,{className:w_("type-button"),onClick:()=>p(t.sharedTenantName||""),children:"Show shared"})]})}},{name:"State",width:90,render:e=>{let{row:t}=e;return t.State?t.State.toLowerCase():"\u2014"},customStyle:()=>({textTransform:"capitalize"})},{name:"cpu",header:"CPU",width:80,render:e=>{let{row:t}=e;return t.cpu&&t.cpu>1e4?(0,ks.LO)(t.cpu):"\u2014"},align:Hc.ZP.RIGHT,defaultOrder:Hc.ZP.DESCENDING},{name:"memory",header:"Memory",width:120,render:e=>{let{row:t}=e;return t.memory?(0,ks.SX)(t.memory):"\u2014"},align:Hc.ZP.RIGHT,defaultOrder:Hc.ZP.DESCENDING},{name:"storage",header:"Storage",width:120,render:e=>{let{row:t}=e;return t.storage?(0,ks.SX)(t.storage):"\u2014"},align:Hc.ZP.RIGHT,defaultOrder:Hc.ZP.DESCENDING},{name:"nodesCount",header:"Nodes",width:100,render:e=>{let{row:t}=e;return t.nodesCount?(0,ks.uf)(t.nodesCount):"\u2014"},align:Hc.ZP.RIGHT,defaultOrder:Hc.ZP.DESCENDING},{name:"groupsCount",header:"Groups",width:100,render:e=>{let{row:t}=e;return t.groupsCount?(0,ks.uf)(t.groupsCount):"\u2014"},align:Hc.ZP.RIGHT,defaultOrder:Hc.ZP.DESCENDING},{name:"PoolStats",header:"Pools",width:100,resizeMinWidth:60,sortAccessor:e=>{let{PoolStats:t=[]}=e;return t.reduce(((e,t)=>e+(t.Usage||0)),0)},defaultOrder:Hc.ZP.DESCENDING,align:Hc.ZP.LEFT,render:e=>{let{row:t}=e;return(0,Le.jsx)(Tu,{pools:t.PoolStats})}},{name:"Tablets",header:"Tablets States",sortable:!1,width:500,resizeMinWidth:500,render:t=>{let{row:n}=t;const r=e(n);return n.Tablets?(0,Le.jsx)(zu,{path:n.Name,tablets:n.Tablets,nodeIds:n.NodeIds||[],backend:r}):"\u2014"}}];return 0===u.length&&d!==Ro.pu.ALL?(0,Le.jsx)(Ge,{name:"thumbsUp",width:"200"}):(0,Le.jsx)(qc,{columnsWidthLSKey:"databasesTableColumnsWidth",data:u,columns:n,settings:Lo.LE,emptyDataMessage:"No such tenants"})})()})]})};function __(e){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 17 17",width:"16",height:"16",fill:"currentColor"},e),a.createElement("path",{d:"M4 7h9v3H4z"}))}function C_(e){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 12 10",width:"16",height:"16",fill:"currentColor"},e),a.createElement("path",{d:"M.49 5.385l1.644-1.644 4.385 4.385L4.874 9.77.49 5.385zm4.384 1.096L10.356 1 12 2.644 6.519 8.126 4.874 6.48v.001z"}))}const E_=(0,le.Ge)("checkbox"),T_=a.forwardRef((function(e,t){const{size:n="m",indeterminate:r,disabled:i=!1,content:o,children:s,title:l,style:c,className:u,qa:d}=e,{checked:h,inputProps:p}=bo(e),f=o||s,m=a.createElement("span",{className:E_("indicator")},a.createElement("span",{className:E_("icon"),"aria-hidden":!0},r?a.createElement(__,{className:E_("icon-svg",{type:"dash"})}):a.createElement(C_,{className:E_("icon-svg",{type:"tick"})})),a.createElement("input",Object.assign({},p,{className:E_("control")})),a.createElement("span",{className:E_("outline")}));return a.createElement(wo,{ref:t,title:l,style:c,size:n,disabled:i,className:E_({size:n,disabled:i,indeterminate:r,checked:h},u),qa:d,control:m},f)})),O_=Me("ydb-loader"),N_=e=>{let{size:t="m",className:n}=e;return(0,Le.jsx)("div",{className:O_(null,n),children:(0,Le.jsx)(Di,{size:t})})},k_=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M3 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM9.5 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Zm5 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Z",clipRule:"evenodd"})),j_=(0,le.Ge)("dropdown-menu"),I_=a.createContext({toggle(){},data:void 0});I_.displayName="DropdownMenu.Context";const P_=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10.53 2.97a.75.75 0 0 1 0 1.06L6.56 8l3.97 3.97a.75.75 0 1 1-1.06 1.06l-4.5-4.5a.75.75 0 0 1 0-1.06l4.5-4.5a.75.75 0 0 1 1.06 0Z",clipRule:"evenodd"})),D_=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M5.47 13.03a.75.75 0 0 1 0-1.06L9.44 8 5.47 4.03a.75.75 0 0 1 1.06-1.06l4.5 4.5a.75.75 0 0 1 0 1.06l-4.5 4.5a.75.75 0 0 1-1.06 0Z",clipRule:"evenodd"})),A_=(0,le.Ge)("menu"),R_=a.forwardRef((function(e,t){let{label:n,children:r,style:i,className:o,qa:s}=e;const l=ue();return a.createElement("li",{ref:t,className:A_("list-group-item")},a.createElement("div",{style:i,className:A_("group",o),"data-qa":s},n&&a.createElement("div",{id:l,className:A_("group-label")},n),a.createElement("ul",{role:"group","aria-labelledby":l,className:A_("group-list")},r)))})),M_=(0,le.Ge)("menu"),L_=a.forwardRef((function(e,t){let{icon:n,iconStart:r=n,iconEnd:i,title:o,disabled:s,active:l,selected:c,href:u,target:d,rel:h,onClick:p,style:f,className:m,theme:g,extraProps:v,children:y,qa:b}=e;const{onKeyDown:x}=(0,ci.b)(p),w=a.useCallback((e=>{Yr.P.publish({componentId:"MenuItem",eventId:"click",domEvent:e})}),[]),S={role:"menuitem",onKeyDown:p&&!s?x:void 0},_={title:o,onClick:s?void 0:p,onClickCapture:s?void 0:w,style:f,tabIndex:s?-1:0,className:M_("item",{disabled:s,active:l,selected:c,theme:g,interactive:Boolean(p)},m),"data-qa":b},C=[r&&a.createElement("div",{key:"icon-start",className:M_("item-icon")},r),a.createElement("div",{key:"content",className:M_("item-content")},y),i&&a.createElement("div",{key:"icon-end",className:M_("item-icon-end")},i)];let E;return E=u?a.createElement("a",Object.assign({},S,v,_,{href:u,target:d,rel:h}),C):a.createElement("div",Object.assign({},S,v,_),C),a.createElement("li",{ref:t,className:M_("list-item")},E)})),F_=(0,le.Ge)("menu"),z_=a.forwardRef((function(e,t){let{size:n="m",children:r,style:i,className:o,qa:s}=e;return a.createElement("ul",{ref:t,role:"menu",style:i,className:F_({size:n},o),"data-qa":s},r)}));function B_(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,r=arguments.length>3?arguments[3]:void 0;const i=(e.length+t-n%e.length)%e.length;return r&&r(e[i])?B_(e,i,1,r):i}function U_(e,t){let n=arguments.length>3?arguments[3]:void 0;const r=(t+(arguments.length>2&&void 0!==arguments[2]?arguments[2]:1))%e.length;return n&&n(e[r])?U_(e,r,1,n):r}z_.Item=L_,z_.Group=R_;const H_=[],V_=a.createContext({activeMenuPath:H_,setActiveMenuPath:()=>{},anchorRef:{current:null}}),G_=e=>{let{anchorRef:t,children:n,disabled:r}=e;const[i,o]=a.useState(H_);a.useEffect((()=>{r&&o(H_)}),[r]);const s=a.useMemo((()=>({activeMenuPath:i,setActiveMenuPath:o,anchorRef:t})),[i,t]);return a.createElement(V_.Provider,{value:s},n)},W_={text:"",action:()=>{},path:[]};function q_(e){return e===W_}function Z_(e){return e.disabled||q_(e)}function Y_(e){var t;return null!==(t=null===e||void 0===e?void 0:e.join(" "))&&void 0!==t?t:""}const K_=e=>{let{items:t,open:n,anchorRef:r,onClose:i,size:o,menuProps:s,children:l,popupProps:c,path:u=[]}=e;const{toggle:d,data:h}=a.useContext(I_),{activeMenuPath:p,setActiveMenuPath:f,anchorRef:m}=a.useContext(V_),g=u.length>0,v=a.useCallback((()=>{f(u.slice(0,u.length-1))}),[f,u]),y=a.useCallback((e=>{var t;f(u),null===(t=null===c||void 0===c?void 0:c.onMouseEnter)||void 0===t||t.call(c,e)}),[u,c,f]),b=a.useCallback((e=>{var t;v(),null===(t=null===c||void 0===c?void 0:c.onMouseLeave)||void 0===t||t.call(c,e)}),[v,c]),x=a.useCallback(((e,t)=>{var n;e.items&&e.path?f(e.path):(null===(n=e.action)||void 0===n||n.call(e,t,h),d(!1))}),[h,f,d]),w=a.useCallback(((e,n)=>{switch(n.key){case"Escape":return g&&(n.stopPropagation(),null===v||void 0===v||v()),!1;case"Enter":case" ":{const r=t[e],i=null===r||void 0===r?void 0:r.items;return(g||i)&&(n.stopPropagation(),n.preventDefault()),r&&x(r,n),!1}}return!0}),[v,x,g,t]),S=n&&Y_(u)===Y_(p),{activeItemIndex:_,setActiveItemIndex:C,reset:E}=function(e){let{items:t,skip:n,pageSize:r,processHomeKey:i=!0,processEndKey:o=!0,anchorRef:s,disabled:l=!1,initialValue:c=-1,onAnchorKeyDown:u}=e;const[d,h]=a.useState(c),p=a.useCallback((()=>{h(c)}),[c]);return a.useEffect((()=>{t&&p()}),[t,p]),a.useLayoutEffect((()=>{if(l)return;if(!t.some((e=>!(null===n||void 0===n?void 0:n(e)))))return;const e=null===s||void 0===s?void 0:s.current;if(!e)return;const a=e=>{if(!1!==(null===u||void 0===u?void 0:u(d,e)))switch(e.key){case"ArrowDown":e.preventDefault(),h((e=>U_(t,e,1,n)));break;case"ArrowUp":e.preventDefault(),h((e=>B_(t,e,1,n)));break;case"PageDown":if(!r)return;e.preventDefault(),h((e=>U_(t,e,r,n)));break;case"PageUp":if(!r)return;e.preventDefault(),h((e=>B_(t,e,r,n)));break;case"Home":if(!i)return;e.preventDefault(),h((e=>B_(t,e,e,n)));break;case"End":if(!o)return;e.preventDefault(),h((e=>B_(t,e,e+1,n)))}};return e.addEventListener("keydown",a),()=>{e.removeEventListener("keydown",a)}}),[d,s,l,t,u,r,o,i,n]),{activeItemIndex:d,setActiveItemIndex:h,reset:p}}({items:t,skip:Z_,anchorRef:m,onAnchorKeyDown:w,disabled:!S,initialValue:g?0:-1});return a.useEffect((()=>{n||E()}),[n,E]),a.createElement(ti,Object.assign({open:n,anchorRef:r,onClose:i},c,{onMouseEnter:y,onMouseLeave:b}),l||a.createElement(z_,Object.assign({className:j_("menu"),size:o},s),t.map(((e,t)=>{var r;const o=S&&_===t,s=n&&!o&&0!==p.length&&Y_(e.path)===Y_(p.slice(0,e.path.length)),l=Object.assign(Object.assign({},e.extraProps),{onMouseEnter:()=>C(t)});return a.createElement($_,Object.assign({key:t,className:j_("menu-item",{separator:q_(e),"active-parent":s,"with-submenu":Boolean(null===(r=e.items)||void 0===r?void 0:r.length)},e.className),selected:o,popupProps:c,closeMenu:i},e,{extraProps:l}))}))))};function Q_(e,t){var n;return null!==(n=null===e||void 0===e?void 0:e.every(((e,n)=>e===(null===t||void 0===t?void 0:t[n]))))&&void 0!==n&&n}function X_(e){let{items:t,path:n}=e;const{activeMenuPath:r,setActiveMenuPath:i}=a.useContext(V_),o=Boolean(n)&&Boolean(null===t||void 0===t?void 0:t.length),s=a.useCallback((()=>{n&&i(n.slice(0,n.length-1))}),[n,i]),l=a.useCallback((()=>{n&&i(n)}),[n,i]);return{hasSubmenu:o,isSubmenuOpen:Q_(n,r),openSubmenu:l,closeSubmenu:s}}const $_=e=>{var{text:t,action:n,items:r,popupProps:i,closeMenu:o,children:s,path:l}=e,c=(0,nt._T)(e,["text","action","items","popupProps","closeMenu","children","path"]);const{toggle:u,data:d}=a.useContext(I_),h=a.useRef(null),p=ir(),{hasSubmenu:f,isSubmenuOpen:m,closeSubmenu:g,openSubmenu:v}=X_({items:r,path:l}),y=a.useCallback((()=>{const e=()=>{o?o():u(!1)};f?(g(),requestAnimationFrame(e)):e()}),[o,g,f,u]),b=a.useCallback((e=>{f||(null===n||void 0===n||n(e,d),y())}),[n,d,y,f]),x=a.useMemo((()=>Object.assign(Object.assign({},c.extraProps),{onMouseEnter:e=>{var t,n;null===(n=null===(t=c.extraProps)||void 0===t?void 0:t.onMouseEnter)||void 0===n||n.call(t,e),f&&v()},onMouseLeave:e=>{var t,n;null===(n=null===(t=c.extraProps)||void 0===t?void 0:t.onMouseLeave)||void 0===n||n.call(t,e),f&&g()}})),[c.extraProps,g,f,v]),w=a.useMemo((()=>"rtl"===p?["left-start","right-start"]:["right-start","left-start"]),[p]),S=a.useMemo((()=>f?a.createElement(we.J,{data:"rtl"===p?P_:D_,size:10,className:j_("sub-menu-arrow")}):c.iconEnd),[f,p,c.iconEnd]);return a.createElement(a.Fragment,null,a.createElement(z_.Item,Object.assign({ref:h},c,{extraProps:x,onClick:b,iconEnd:S}),t||s),f&&r&&a.createElement(K_,{popupProps:Object.assign(Object.assign({},i),{className:j_("sub-menu",null===i||void 0===i?void 0:i.className),placement:w}),items:r,path:l,open:m,anchorRef:h,onClose:y}))},J_=e=>"function"===typeof e;function eC(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0!==e&&void 0!==t;const i=function(e,t){const[n,r]=a.useState(e);return[n,a.useCallback((e=>{J_(e)?r((n=>{const r=e(n);return null===t||void 0===t||t(r),r})):(null===t||void 0===t||t(e),r(e))}),[t])]}(e||n,t);return r?[e,t]:i}function tC(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];const r=[];let i=!1,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;for(const a of e)if(Array.isArray(a)){const e=tC(a,t,n,o);0!==r.length&&r.push(t),r.push(...e),o+=e.length,i=!0}else{if(a.hidden)continue;i&&r.push(t);const e=Object.assign(Object.assign({},a),{path:[...n,o++]});a.items&&(e.items=tC(a.items,t,e.path)),r.push(e),i=!1}return r}const nC=Object.assign((e=>{let{items:t=[],size:n="m",icon:r=a.createElement(we.J,{data:k_}),open:i,onOpenToggle:o,hideOnScroll:s=!0,data:l,disabled:c,switcher:u,renderSwitcher:d,switcherWrapperClassName:h,defaultSwitcherProps:p,defaultSwitcherClassName:f,onSwitcherClick:m,menuProps:g,popupProps:v,children:y}=e;const b=a.useRef(null),{isPopupShown:x,togglePopup:w,closePopup:S}=function(e,t,n){const[r,i]=eC(e,t,!1),o=a.useCallback((e=>{i((t=>"boolean"===typeof e?e:!t))}),[i]),s=a.useCallback((()=>{i(!1)}),[i]);return a.useEffect((()=>{n&&r&&s()}),[s,n,r]),{isPopupShown:r,togglePopup:o,closePopup:s}}(i,o,c);!function(e,t,n){a.useEffect((()=>{if(n)return;const r=n=>{n.target.contains(t.current)&&e(n)};return document.addEventListener("scroll",r,!0),()=>{document.removeEventListener("scroll",r,!0)}}),[t,e,n])}(S,b,!x||!s);const _=a.useMemo((()=>({toggle:w,data:l})),[l,w]),C=a.useMemo((()=>tC(t,W_)),[t]),E=a.useCallback((e=>{c||(null===m||void 0===m||m(e),w())}),[c,m,w]),{onKeyDown:T}=(0,ci.b)(E),O=a.useMemo((()=>({onClick:E,onKeyDown:T})),[E,T]);return a.createElement(I_.Provider,{value:_},a.createElement("div",Object.assign({ref:b,className:j_("switcher-wrapper",h)},d?{}:O),(null===d||void 0===d?void 0:d(O))||u||a.createElement(Ie.z,Object.assign({view:"flat",size:n},p,{className:j_("switcher-button",f),disabled:c}),r)),a.createElement(G_,{anchorRef:b,disabled:!x},a.createElement(K_,{items:C,open:x,size:n,menuProps:g,anchorRef:b,onClose:S,popupProps:v},y)))}),{Item:$_}),rC=(0,Re.withNaming)({e:"__",m:"_"}),iC="--ydb-tree-view-level",oC=rC("ydb-tree-view");function aC(e){let{children:t,name:n,title:r,icon:i,collapsed:o=!0,active:s=!1,onClick:l,onArrowClick:c,hasArrow:u=!1,actions:d,additionalNodeElements:h,level:p}=e;const f=a.useCallback((e=>{if(!l)return;e.nativeEvent.composedPath().some((e=>e instanceof HTMLElement&&("BUTTON"===e.nodeName&&!e.hasAttribute("disabled")||e.hasAttribute("tabindex")&&e.tabIndex>-1)))||l()}),[l]),m=c||l;let g="tree-view_arrow",v="tree-view_children";return o&&(g+=" tree-view_arrow-collapsed",v+=" tree-view_children-collapsed"),(0,Le.jsx)("div",{className:oC(),style:{[iC]:p},children:(0,Le.jsxs)("div",{className:"tree-view",children:[(0,Le.jsxs)("div",{className:"".concat("tree-view_item"," ").concat(oC("item",{active:s})),onClick:f,children:[(0,Le.jsx)("button",{type:"button",className:"".concat(g," ").concat(oC("arrow",{collapsed:o,hidden:!u})),disabled:!m,onClick:m}),(0,Le.jsxs)("div",{className:oC("content"),children:[i&&(0,Le.jsx)("div",{className:oC("icon"),children:i}),(0,Le.jsx)("div",{className:oC("text"),title:r,children:n}),d&&d.length>0&&(0,Le.jsxs)("div",{className:oC("actions"),children:[h,(0,Le.jsx)(nC,{defaultSwitcherProps:{view:"flat-secondary",size:"s",pin:"brick-brick"},items:d})]})]})]}),(0,Le.jsx)("div",{className:"".concat(v," ").concat(oC("container",{collapsed:o})),children:o?null:t})]})})}const sC=[{name:"NodeId",header:"#",width:80,resizeMinWidth:80,align:Hc.ZP.LEFT,render:e=>{let{row:t}=e;return t.NodeId}},{name:"Host",render:e=>{var t;let{row:n}=e;const r=n.Endpoints&&(null===(t=n.Endpoints.find((e=>"http-mon"===e.Name)))||void 0===t?void 0:t.Address),i=n.Host&&"".concat(n.Host).concat(r||"")||"unknown",o=!(0,Na.TA)(n)&&n.NodeId?bu(n.NodeId):void 0;return(0,Le.jsx)(Il,{name:i,path:o,hasClipboardButton:!0,showStatus:!1})},width:400,align:Hc.ZP.LEFT},{name:"Endpoints",sortable:!1,render:e=>{let{row:t}=e;return t.Endpoints?t.Endpoints.map((e=>{let{Name:t,Address:n}=e;return"".concat(t," ").concat(n)})).join(", "):"-"},width:300,align:Hc.ZP.LEFT},{name:"uptime",header:"Uptime",sortAccessor:e=>{let{StartTime:t}=e;return t&&-t},width:120,align:Hc.ZP.LEFT,render:e=>{let{row:t}=e;return t.uptime}},{name:"MemoryUsed",header:"Memory used",sortAccessor:e=>{let{MemoryUsed:t=0}=e;return Number(t)},defaultOrder:Hc.ZP.DESCENDING,render:e=>{let{row:t}=e;return t.MemoryUsed?(0,ks.td)(t.MemoryUsed):"\u2014"},width:120,align:Hc.ZP.RIGHT},{name:"MemoryLimit",header:"Memory limit",sortAccessor:e=>{let{MemoryLimit:t=0}=e;return Number(t)},defaultOrder:Hc.ZP.DESCENDING,render:e=>{let{row:t}=e;return t.MemoryLimit?(0,ks.td)(t.MemoryLimit):"\u2014"},width:120,align:Hc.ZP.RIGHT},{name:"PoolStats",header:"Pools",sortAccessor:e=>{let{PoolStats:t=[]}=e;return t.reduce(((e,t)=>e+(t.Usage||0)),0)},defaultOrder:Hc.ZP.DESCENDING,width:80,resizeMinWidth:60,render:e=>{let{row:t}=e;return t.PoolStats?(0,Le.jsx)(Tu,{pools:t.PoolStats}):"\u2014"},align:Hc.ZP.LEFT},{name:"LoadAverage",header:"Load average",sortAccessor:e=>{let{LoadAverage:t=[]}=e;return t.slice(0,1).reduce(((e,t)=>e+t),0)},defaultOrder:Hc.ZP.DESCENDING,width:140,resizeMinWidth:140,render:e=>{let{row:t}=e;return t.LoadAverage&&t.LoadAverage.length>0?(0,Le.jsx)(Iu,{value:t.LoadAverage[0],percents:!0,capacity:100,colorizeProgress:!0}):"\u2014"},align:Hc.ZP.LEFT}],lC=e=>{let{nodes:t}=e;return(0,Le.jsx)(qc,{columnsWidthLSKey:"versionsTableColumnsWidth",data:t,columns:sC,settings:Lo.LE})},cC=(0,le.Ge)("progress");function uC(e){const{text:t,offset:n=0}=e;return t?a.createElement("div",{className:cC("text-inner"),style:{transform:"translateX(calc(var(--g-flow-direction) * ".concat(-n,"%))")}},t):null}function dC(e){let{item:t}=e;const{value:n,color:r,className:i,theme:o,title:s,content:l,loading:c}=t,u={loading:c};return"undefined"===typeof r&&(u.theme=o||"default"),Number.isFinite(n)?a.createElement("div",{className:cC("item",u,i),style:{width:"".concat(n,"%"),backgroundColor:r},title:s},l):null}function hC(e){return e<100?e-100:0}function pC(e){const{theme:t,colorStops:n,colorStopsValue:r,value:i}=e;if(n){const e=n.find(((e,t)=>{const o="number"===typeof r?r:i,a=t>1?n[t-1].stop:0,s=t=a&&o<=s}));return e?e.theme:t}return t}function fC(e){const{stack:t,stackClassName:n,value:r,text:i}=e,o=hC(r||function(e){return e.reduce(((e,t)=>{let{value:n}=t;return e+n}),0)}(t));return a.createElement("div",{className:cC("stack",n),style:{transform:"translateX(calc(var(--g-flow-direction) * ".concat(o,"%))")}},a.createElement("div",{className:cC("item"),style:{width:"".concat(-o,"%")}}),t.map(((e,t)=>a.createElement(dC,{key:t,item:e}))),a.createElement(uC,{offset:o,text:i}))}function mC(e){const{value:t,loading:n,text:r}=e,i=hC(t);return Number.isFinite(t)?a.createElement("div",{className:cC("item",{theme:pC(e),loading:n}),style:{transform:"translateX(calc(var(--g-flow-direction) * ".concat(i,"%))")}},a.createElement(uC,{offset:i,text:r})):null}const gC=a.forwardRef((function(e,t){const{text:n="",theme:r="default",size:i="m",loading:o=!1,className:s,qa:l}=e,c=Object.assign(Object.assign({},e),{text:n,theme:r,size:i,loading:o});return a.createElement("div",{ref:t,className:cC({size:i},s),"data-qa":l},a.createElement("div",{className:cC("text")},n),function(e){return void 0!==e.stack}(c)?a.createElement(fC,Object.assign({},c)):a.createElement(mC,Object.assign({},c)))})),vC=Me("ydb-versions-nodes-tree-title"),yC=e=>{let t,{title:n,nodes:r,items:i,versionColor:o,versionsValues:a}=e;return t=i?i.reduce(((e,t)=>t.nodes?e+t.nodes.length:e),0):r?r.length:0,(0,Le.jsxs)("div",{className:vC("overview"),children:[(0,Le.jsxs)("div",{className:vC("overview-container"),children:[o?(0,Le.jsx)("div",{className:vC("version-color"),style:{background:o}}):null,n?(0,Le.jsxs)("span",{className:vC("overview-title"),children:[n,(0,Le.jsx)(pl,{text:n,size:"s",className:vC("clipboard-button")})]}):null]}),(0,Le.jsxs)("div",{className:vC("overview-info"),children:[(0,Le.jsxs)("div",{children:[(0,Le.jsx)("span",{className:vC("info-value"),children:t}),(0,Le.jsx)("span",{className:vC("info-label",{margin:"left"}),children:"Nodes"})]}),a?(0,Le.jsxs)("div",{className:vC("version-progress"),children:[(0,Le.jsx)("span",{className:vC("info-label",{margin:"right"}),children:"Versions"}),(0,Le.jsx)(gC,{size:"s",value:100,stack:a})]}):null]})]})},bC=Me("ydb-versions-grouped-node-tree"),xC=e=>{let{title:t,nodes:n,items:r,expanded:i=!1,versionColor:o,versionsValues:s,level:l=0}=e;const[c,u]=a.useState(!1);a.useEffect((()=>{u(i)}),[i]);const d=(0,Le.jsx)(yC,{title:t,nodes:n,items:r,versionColor:o,versionsValues:s}),h=()=>{u((e=>!e))};return r?(0,Le.jsx)("div",{className:bC({"first-level":0===l}),children:(0,Le.jsx)(aC,{name:d,collapsed:!c,hasArrow:!0,onClick:h,onArrowClick:h,children:r.map(((e,t)=>(0,Le.jsx)(xC,{title:e.title,nodes:e.nodes,expanded:i,versionColor:e.versionColor,level:l+1},t)))},t)}):(0,Le.jsx)("div",{className:bC({"first-level":0===l}),children:(0,Le.jsx)(aC,{name:d,collapsed:!c,hasArrow:!0,onClick:h,onArrowClick:h,children:(0,Le.jsx)("div",{className:bC("dt-wrapper"),children:(0,Le.jsx)(lC,{nodes:n||[]})})},t)})};var wC=n(46754),SC=n.n(wC);let _C;!function(e){e.VERSION="Version",e.TENANT="Database",e.STORAGE="Storage"}(_C||(_C={}));const CC=(e,t)=>{var n;return(null===(n=e.title)||void 0===n?void 0:n.localeCompare(t.title||""))||-1},EC=Me("ydb-versions"),TC=e=>{let{versionToColor:t}=e;const{data:n=[],isLoading:r}=Al.useGetClusterNodesQuery(void 0,{pollingInterval:Lo.ME}),[i,o]=a.useState(_C.VERSION),[s,l]=a.useState(!1),c=e=>{o(e)};if(r)return(0,Le.jsx)(N_,{});const u=((e,t,n)=>{if(e&&e.length){if(n===_C.VERSION){const n=SC()(e,"Version");return Object.keys(n).map((e=>{const r=n[e].filter((e=>{let{Tenants:t}=e;return Boolean(t)})),i=SC()(r,"Tenants"),o=Object.keys(i).map((e=>({title:e,nodes:i[e]}))).sort(CC);return o.length?{title:e,items:o,versionColor:null===t||void 0===t?void 0:t.get((0,Ll.H)(e))}:null})).filter((e=>Boolean(e)))}{const n=e.filter((e=>{let{Tenants:t}=e;return Boolean(t)})),r=SC()(n,"Tenants");return Object.keys(r).map((e=>{const n=Fl(r[e],t),i=SC()(r[e],"Version"),o=Object.keys(i).map((e=>({title:e,nodes:i[e],versionColor:null===t||void 0===t?void 0:t.get((0,Ll.H)(e))})));return o.length?{title:e,items:o,versionsValues:n}:null})).filter((e=>Boolean(e))).sort(CC)}}})(n,t,i),d=((e,t)=>{if(!e||!e.length)return;const n=e.filter((e=>{let{Roles:t}=e;return null===t||void 0===t?void 0:t.includes("Storage")})),r=SC()(n,"Version");return Object.keys(r).map((e=>({title:e,nodes:r[e],versionColor:null===t||void 0===t?void 0:t.get((0,Ll.H)(e))})))})(n,t),h=((e,t)=>{if(!e||!e.length)return;const n=e.filter((e=>{let{Roles:t}=e;return!t})),r=SC()(n,"Version");return Object.keys(r).map((e=>({title:e,nodes:r[e],versionColor:null===t||void 0===t?void 0:t.get((0,Ll.H)(e))})))})(n,t),p=null!==d&&void 0!==d&&d.length?(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("h3",{children:"Storage nodes"}),d.map((e=>{let{title:t,nodes:n,items:r,versionColor:i}=e;return(0,Le.jsx)(xC,{title:t,nodes:n,items:r,versionColor:i},"storage-nodes-".concat(t))}))]}):null,f=null!==u&&void 0!==u&&u.length?(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("h3",{children:"Database nodes"}),(0,Le.jsxs)("div",{className:EC("controls"),children:[(0,Le.jsxs)("div",{className:EC("group"),children:[(0,Le.jsx)("span",{className:EC("label"),children:"Group by:"}),(0,Le.jsxs)(Oo,{value:i,onUpdate:c,children:[(0,Le.jsx)(Oo.Option,{value:_C.TENANT,children:_C.TENANT}),(0,Le.jsx)(Oo.Option,{value:_C.VERSION,children:_C.VERSION})]})]}),(0,Le.jsx)(T_,{className:EC("checkbox"),onChange:()=>l((e=>!e)),checked:s,children:"All expanded"})]}),u.map((e=>{let{title:t,nodes:n,items:r,versionColor:i,versionsValues:o}=e;return(0,Le.jsx)(xC,{title:t,nodes:n,items:r,expanded:s,versionColor:i,versionsValues:o},"tenant-nodes-".concat(t))}))]}):null,m=null!==h&&void 0!==h&&h.length?(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("h3",{children:"Other nodes"}),h.map((e=>{let{title:t,nodes:n,items:r,versionColor:i,versionsValues:o}=e;return(0,Le.jsx)(xC,{title:t,nodes:n,items:r,versionColor:i,versionsValues:o},"other-nodes-".concat(t))}))]}):null;return(0,Le.jsxs)("div",{className:EC("versions"),children:[p,f,m]})},OC=Me("ydb-info-viewer-skeleton"),NC=()=>(0,Le.jsxs)("div",{className:OC("label"),children:[(0,Le.jsx)(rl,{className:OC("label__text")}),(0,Le.jsx)("div",{className:OC("label__dots")})]}),kC=e=>{let{rows:t=8,className:n}=e;return(0,Le.jsx)("div",{className:OC(null,n),children:[...new Array(t)].map(((e,t)=>(0,Le.jsxs)("div",{className:OC("row"),children:[(0,Le.jsx)(NC,{}),(0,Le.jsx)(rl,{className:OC("value")})]},"skeleton-row-".concat(t))))})},jC=Me("ydb-link-with-icon"),IC=e=>{let{title:t,url:n,external:r=!0}=e;const i=(0,Le.jsxs)(a.Fragment,{children:[t,"\xa0",(0,Le.jsx)(pu,{})]});return r?(0,Le.jsx)(si,{href:n,target:"_blank",className:jC(),children:i}):(0,Le.jsx)(_l,{to:n,className:jC(),children:i})},PC=Me("tablet-icon"),DC=e=>{let{text:t,className:n}=e;return(0,Le.jsx)("div",{className:PC(null,n),children:(0,Le.jsx)("div",{className:PC("type"),children:t||"T"})})},AC=Me("tablet"),RC=e=>{var t;let{tablet:n={},tenantName:r}=e;const{TabletId:i,NodeId:o,Type:a}=n,s=null===(t=n.Overall)||void 0===t?void 0:t.toLowerCase(),l=i&&(0,Ta.ax)(Ta.ZP.tablet,{id:i},{nodeId:o,tenantName:r,type:a});return(0,Le.jsx)(Su,{className:AC("wrapper"),content:(0,Le.jsx)(Is,{data:n,className:AC("popup-content")}),children:(0,Le.jsx)(_l,{to:l,children:(0,Le.jsx)(DC,{className:AC({status:s}),text:(0,Lo.qV)(n.Type)})})})},MC=Me("tag"),LC=e=>{let{text:t,type:n}=e;return(0,Le.jsx)("div",{className:MC({type:n}),children:t})},FC=Me("tags"),zC=e=>{let{tags:t,tagsType:n,className:r=""}=e;return(0,Le.jsx)("div",{className:FC(null,r),children:t&&t.map(((e,t)=>(0,Le.jsx)(LC,{text:e,type:n},t)))})};var BC=n(81854);const UC=Me("ydb-cluster-versions-bar"),HC=e=>{let{versionsValues:t=[]}=e;return(0,Le.jsxs)("div",{className:UC(),children:[(0,Le.jsx)(gC,{value:100,stack:t,size:"s"}),(0,Le.jsx)("div",{className:UC("versions"),children:t.map(((e,n)=>(0,Le.jsx)("div",{className:UC("version-title"),style:{color:e.color},title:e.version,children:"".concat(e.version).concat(n===t.length-1?"":",")},e.version)))})]})},VC=JSON.parse('{"disk-type":"Disk Type","erasure":"Erasure","allocated":"Allocated","available":"Available","usage":"Usage","dc":"DC","tablets":"Tablets","databases":"Databases","nodes":"Nodes","load":"Load","storage-size":"Storage size","storage-groups":"Storage groups, {{diskType}}","links":"Links","versions":"Versions"}'),GC=JSON.parse('{"disk-type":"\u0422\u0438\u043f \u0434\u0438\u0441\u043a\u0430","erasure":"\u0420\u0435\u0436\u0438\u043c","allocated":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043e","available":"\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u043e","usage":"\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435","dc":"\u0414\u0426","tablets":"\u0422\u0430\u0431\u043b\u0435\u0442\u043a\u0438","databases":"\u0411\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445","nodes":"\u0423\u0437\u043b\u044b","load":"\u041d\u0430\u0433\u0440\u0443\u0437\u043a\u0430","storage-size":"\u0420\u0430\u0437\u043c\u0435\u0440 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430","storage-groups":"\u0413\u0440\u0443\u043f\u043f\u044b \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f, {{diskType}}","links":"\u0421\u0441\u044b\u043b\u043a\u0438","versions":"\u0412\u0435\u0440\u0441\u0438\u0438"}'),WC=(0,We.wZ)("ydb-cluster",{ru:GC,en:VC}),qC=(e,t)=>e.Type===Pu.F.TxAllocator?1:t.Type===Pu.F.TxAllocator?-1:0,ZC=Me("cluster-info"),YC=e=>{let{stats:t}=e;const{diskType:n,erasure:r,allocatedSize:i,availableSize:o}=t,a=(0,BC.dT)(Math.max(i,o),2),s=(0,BC.td)({value:i,size:a}),l=(0,BC.td)({value:o,size:a}),c=Math.round(i/(i+o)*100),u=[{label:WC("disk-type"),value:n},{label:WC("erasure"),value:r},{label:WC("allocated"),value:s},{label:WC("available"),value:l},{label:WC("usage"),value:c+"%"}];return(0,Le.jsx)(Ss,{dots:!0,info:u,className:ZC("groups-stats-popup-content"),size:"s"})},KC=e=>{let{stats:t}=e;return(0,Le.jsx)("div",{className:ZC("storage-groups-stats"),children:Object.values(t).map((e=>(0,Le.jsx)(Su,{placement:["right"],content:(0,Le.jsx)(YC,{stats:e}),children:(0,Le.jsx)(Iu,{className:ZC("groups-stats-bar"),value:e.createdGroups,capacity:e.totalGroups})},e.erasure)))})},QC=(e,t,n,r,i)=>{const o=[];if(e.DataCenters&&o.push({label:WC("dc"),value:(0,Le.jsx)(zC,{tags:e.DataCenters})}),e.SystemTablets){const t=e.SystemTablets.slice(0).sort(qC);o.push({label:WC("tablets"),value:(0,Le.jsx)("div",{className:ZC("system-tablets"),children:t.map(((e,t)=>(0,Le.jsx)(RC,{tablet:e},t)))})})}return e.Tenants&&o.push({label:WC("databases"),value:e.Tenants}),o.push({label:WC("nodes"),value:(0,Le.jsx)(Iu,{value:null===e||void 0===e?void 0:e.NodesAlive,capacity:null===e||void 0===e?void 0:e.NodesTotal})},{label:WC("load"),value:(0,Le.jsx)(Iu,{value:null===e||void 0===e?void 0:e.LoadAverage,capacity:null===e||void 0===e?void 0:e.NumberOfCpus})},{label:WC("storage-size"),value:(0,Le.jsx)(Iu,{value:null===e||void 0===e?void 0:e.StorageUsed,capacity:null===e||void 0===e?void 0:e.StorageTotal,formatValues:ks.QO})}),Object.keys(n).length&&o.push(...(e=>Object.keys(e).map((t=>({label:WC("storage-groups",{diskType:t}),value:(0,Le.jsx)(KC,{stats:e[t]})}))))(n)),o.push(...r,{label:WC("links"),value:(0,Le.jsx)("div",{className:ZC("links"),children:i.map((e=>{let{title:t,url:n}=e;return(0,Le.jsx)(IC,{title:t,url:n},t)}))})},{label:WC("versions"),value:(0,Le.jsx)(HC,{versionsValues:t})}),o},XC=e=>{let{cluster:t={},versionsValues:n=[],groupsStats:r={},loading:i,error:o,additionalClusterProps:a={}}=e;const s=Do((e=>e.singleClusterMode));let l=h_.y3+"/internal";s&&!h_.j4&&(l="/internal");const{info:c=[],links:u=[]}=a,d=QC(t,n,r,c,[{title:Lo.Ah,url:l},...u]);return(0,Le.jsx)("div",{className:ZC(),children:(0,Le.jsx)("div",{className:ZC("info"),children:i?(0,Le.jsx)(kC,{className:ZC("skeleton"),rows:9}):o?(0,Le.jsx)(zc,{error:o,className:ZC("error")}):(0,Le.jsx)(Ss,{dots:!0,info:d})})})};var $C=n(81003);const JC=Me("cluster");const eE=function(e){var t,n;let{additionalClusterProps:r,additionalTenantsProps:i,additionalNodesProps:o,additionalVersionsProps:s}=e;const l=a.useRef(null),c=Ao(),u=function(){const e=Ao(),t=Do((e=>e.cluster.defaultClusterTab)),n=Ea(Ta.ZP.cluster),{activeTab:r}=(null===n||void 0===n?void 0:n.params)||{};let i;i=(0,$C.V2)(r)?r:t;return a.useEffect((()=>{i!==t&&e((0,Pl.LQ)(i))}),[i,t,e]),i}(),d=Ca(),h=ol().parse(d.search,{ignoreQueryPrefix:!0}),{clusterName:p,backend:f}=h,{data:{clusterData:m={},groupsStats:g}={},isLoading:v,error:y}=Pl.UM.useGetClusterInfoQuery(p?String(p):void 0,{pollingInterval:Lo.ME}),b=y&&"object"===typeof y?y:void 0,{data:x=[],isLoading:w}=Al.useGetClusterNodesQuery(void 0),S=v||w,{Name:_}=m;a.useEffect((()=>{c((0,Rl.J)("cluster",{}))}),[c,_]);const C=a.useMemo((()=>null!==s&&void 0!==s&&s.getVersionToColorMap?null===s||void 0===s?void 0:s.getVersionToColorMap():(0,Ml.ZP)(null===m||void 0===m?void 0:m.Versions)),[s,m]),E=a.useMemo((()=>Fl(x,C)),[x,C]),T=null!==(t=null!==(n=null===m||void 0===m?void 0:m.Name)&&void 0!==n?n:p)&&void 0!==t?t:Lo.DO,O=a.useMemo((()=>$C._Y.find((e=>{let{id:t}=e;return t===u}))),[u]);return(0,Le.jsxs)("div",{className:JC(),ref:l,children:[(0,Le.jsx)(oe,{defaultTitle:"".concat(T," \u2014 YDB Monitoring"),titleTemplate:"%s \u2014 ".concat(T," \u2014 YDB Monitoring"),children:O?(0,Le.jsx)("title",{children:O.title}):null}),(0,Le.jsx)("div",{className:JC("header"),children:(()=>{var e;return S?(0,Le.jsx)(rl,{className:JC("title-skeleton")}):(0,Le.jsx)(Il,{size:"m",status:null===m||void 0===m?void 0:m.Overall,name:null!==(e=null===m||void 0===m?void 0:m.Name)&&void 0!==e?e:Lo.DO,className:JC("title")})})()}),(0,Le.jsx)("div",{className:JC("tabs"),children:(0,Le.jsx)(wt,{size:"l",allowNotSelected:!0,activeTab:u,items:$C._Y,wrapTo:(e,t)=>{let{id:n}=e;const r=(0,$C.B7)(n,{clusterName:p,backend:f});return(0,Le.jsx)(_l,{to:r,onClick:()=>{c((0,Pl.LQ)(n))},children:t},n)}})}),(0,Le.jsx)("div",{children:(0,Le.jsxs)(wa,{children:[(0,Le.jsx)(ma,{path:(0,Ta.Fz)((0,$C.B7)($C.xu.overview)).pathname,children:(0,Le.jsx)(XC,{cluster:m,groupsStats:g,versionsValues:E,loading:S,error:b,additionalClusterProps:r})}),(0,Le.jsx)(ma,{path:(0,Ta.Fz)((0,$C.B7)($C.xu.tenants)).pathname,children:(0,Le.jsx)(S_,{additionalTenantsProps:i})}),(0,Le.jsx)(ma,{path:(0,Ta.Fz)((0,$C.B7)($C.xu.nodes)).pathname,children:(0,Le.jsx)(rh,{parentContainer:l.current,additionalNodesProps:o})}),(0,Le.jsx)(ma,{path:(0,Ta.Fz)((0,$C.B7)($C.xu.storage)).pathname,children:(0,Le.jsx)(d_,{parentContainer:l.current,additionalNodesProps:o})}),(0,Le.jsx)(ma,{path:(0,Ta.Fz)((0,$C.B7)($C.xu.versions)).pathname,children:(0,Le.jsx)(TC,{versionToColor:C})}),(0,Le.jsx)(ua,{to:(0,Ta.Fz)((0,$C.B7)(u))})]})})]})},tE=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("g",{clipPath:"url(#a)"},a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M7.199 2H8.8a.2.2 0 0 1 .2.2c0 1.808 1.958 2.939 3.524 2.034a.199.199 0 0 1 .271.073l.802 1.388a.199.199 0 0 1-.073.272c-1.566.904-1.566 3.164 0 4.069a.199.199 0 0 1 .073.271l-.802 1.388a.199.199 0 0 1-.271.073C10.958 10.863 9 11.993 9 13.8a.2.2 0 0 1-.199.2H7.2a.199.199 0 0 1-.2-.2c0-1.808-1.958-2.938-3.524-2.034a.199.199 0 0 1-.272-.073l-.8-1.388a.199.199 0 0 1 .072-.271c1.566-.905 1.566-3.165 0-4.07a.199.199 0 0 1-.073-.271l.801-1.388a.199.199 0 0 1 .272-.073C5.042 5.138 7 4.007 7 2.2c0-.11.089-.199.199-.199ZM5.5 2.2c0-.94.76-1.7 1.699-1.7H8.8c.94 0 1.7.76 1.7 1.7a.85.85 0 0 0 1.274.735 1.699 1.699 0 0 1 2.32.622l.802 1.388c.469.813.19 1.851-.622 2.32a.85.85 0 0 0 0 1.472 1.7 1.7 0 0 1 .622 2.32l-.802 1.388a1.699 1.699 0 0 1-2.32.622.85.85 0 0 0-1.274.735c0 .939-.76 1.7-1.699 1.7H7.2a1.7 1.7 0 0 1-1.699-1.7.85.85 0 0 0-1.274-.735 1.698 1.698 0 0 1-2.32-.622l-.802-1.388a1.699 1.699 0 0 1 .622-2.32.85.85 0 0 0 0-1.471 1.699 1.699 0 0 1-.622-2.321l.801-1.388a1.699 1.699 0 0 1 2.32-.622A.85.85 0 0 0 5.5 2.2Zm4 5.8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z",clipRule:"evenodd"})),a.createElement("defs",null,a.createElement("clipPath",{id:"a"},a.createElement("path",{fill:"currentColor",d:"M0 0h16v16H0z"})))),nE=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10.5 6V5a2.5 2.5 0 0 0-5 0v1h5ZM4 5v1a3 3 0 0 0-3 3v3a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V9a3 3 0 0 0-3-3V5a4 4 0 0 0-8 0Zm6.5 2.5H12A1.5 1.5 0 0 1 13.5 9v3a1.5 1.5 0 0 1-1.5 1.5H4A1.5 1.5 0 0 1 2.5 12V9A1.5 1.5 0 0 1 4 7.5h6.5Zm-1.75 2a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0v-2Z",clipRule:"evenodd"})),rE=e=>null!==e&&"object"===typeof e&&"data"in e,iE=e=>{let{item:t,groupedId:n,getItemId:r}=e,i=n;return"function"===typeof r?i=r(rE(t)?t.data:t):t&&"object"===typeof t&&"id"in t&&t.id&&(i=t.id),i},oE="data-list-item",aE={s:[22,44],m:[26,44],l:[34,52],xl:[44,62]},sE=(e,t)=>t?"".concat(t).concat("-").concat(e):"".concat(e),lE=e=>e.split("-");function cE(e){let{items:t,expandedById:n,getItemId:r}=e;const i=a.useMemo((()=>function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;const r=(e,i,o,a)=>{const s=sE(o,a),l=iE({groupedId:s,item:i,getItemId:n});return e.push(l),rE(i)&&i.children&&(l in t&&!t[l]||e.push(...i.children.reduce(((e,t,n)=>r(e,t,n,l)),[]))),e},i=e.reduce(((e,t,n)=>r(e,t,n)),[]),o={};for(const[a,s]of i.entries())o[s]=a;return{visibleFlattenIds:i,idToFlattenIndex:o}}(t,n,r)),[t,n,r]);return i}function uE(e,t){const n={itemsById:{},groupsState:{},itemsState:{},initialState:{disabledById:{},selectedById:{},expandedById:{}}},r=e=>{let{item:i,index:o,parentGroupedId:a,parentId:s}=e;const l=sE(o,a),c=iE({groupedId:l,item:i,getItemId:t});s&&n.groupsState[s].childrenIds.push(c),n.itemsById[c]=i.data,n.itemsState[c]||(n.itemsState[c]={indentation:0}),"undefined"!==typeof s&&(n.itemsState[c].parentId=s),"undefined"!==typeof i.selected&&(n.initialState.selectedById[c]=i.selected),"undefined"!==typeof i.disabled&&(n.initialState.disabledById[c]=i.disabled),l&&(n.itemsState[c].indentation=lE(l).length-1),i.children&&(n.groupsState[c]={childrenIds:[]},"undefined"!==typeof i.expanded&&(n.initialState.expandedById[c]=i.expanded),i.children.forEach(((e,t)=>{r({item:e,index:t,parentGroupedId:l,parentId:c})})))};return e.forEach(((e,i)=>rE(e)?r({item:e,index:i}):(e=>{let{item:r,index:i}=e;const o=iE({groupedId:String(i),item:r,getItemId:t});n.itemsById[o]=r,n.itemsState[o]||(n.itemsState[o]={indentation:0}),r&&"object"===typeof r&&("selected"in r&&"boolean"===typeof r.selected&&(n.initialState.selectedById[o]=r.selected),"disabled"in r&&"boolean"===typeof r.disabled&&(n.initialState.disabledById[o]=r.disabled))})({item:e,index:i}))),n}const dE=e=>{let{items:t,expandedById:n,getItemId:r}=e;const{itemsById:i,groupsState:o,itemsState:s,initialState:l}=function(e){let{items:t,getItemId:n}=e;return a.useMemo((()=>uE(t,n)),[n,t])}({items:t,getItemId:r}),{visibleFlattenIds:c,idToFlattenIndex:u}=cE({items:t,expandedById:n||l.expandedById,getItemId:r});return{items:t,visibleFlattenIds:c,idToFlattenIndex:u,itemsById:i,groupsState:o,itemsState:s,initialState:l}},hE=e=>{let{list:t,index:n,step:r,disabledItems:i={}}=e;const o=t.length;let a=(n+o)%o;for(let s=0;s{var n;if(document){const r=(t||document).querySelector("[".concat(oE,'="').concat(e,'"]'));r&&(null===(n=r.scrollIntoView)||void 0===n||n.call(r,{block:"nearest"}))}},fE=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M13.03 10.53a.75.75 0 0 1-1.06 0L8 6.56l-3.97 3.97a.75.75 0 1 1-1.06-1.06l4.5-4.5a.75.75 0 0 1 1.06 0l4.5 4.5a.75.75 0 0 1 0 1.06Z",clipRule:"evenodd"}));var mE=n(39137),gE=n(95216);const vE=(0,le.Ge)("list-item-view"),yE=e=>{var{children:t,indentation:n=1,className:r}=e,i=(0,nt._T)(e,["children","indentation","className"]);return a.createElement(Ai.k,Object.assign({width:16*n,className:vE("slot",r)},i),t)},bE=a.forwardRef(((e,t)=>{var{id:n,as:r="div",size:i="m",active:o,selected:s,disabled:l,activeOnHover:c,className:u,hasSelectionIcon:d=!0,indentation:h,startSlot:p,subtitle:f,endSlot:m,title:g,height:v,expanded:y,dragging:b,style:x,role:w="option",onClick:S}=e,_=(0,nt._T)(e,["id","as","size","active","selected","disabled","activeOnHover","className","hasSelectionIcon","indentation","startSlot","subtitle","endSlot","title","height","expanded","dragging","style","role","onClick"]);const C="boolean"===typeof y,E=l?void 0:S,T="boolean"===typeof c?c:Boolean(E);return a.createElement(Ai.k,Object.assign({[oE]:n,role:w,"aria-selected":s,onClick:E,className:vE({active:b||o,selected:s&&!d,activeOnHover:T,radius:i,dragging:b,clickable:Boolean(E)},(0,gE.W)({px:2},u)),style:Object.assign({minHeight:null!==v&&void 0!==v?v:aE[i][Number(Boolean(f))]},x),as:r,ref:t,alignItems:"center",gap:"4",justifyContent:"space-between"},_),a.createElement(Ai.k,{gap:"2",alignItems:"center",grow:!0},d&&a.createElement(yE,null,s?a.createElement(we.J,{data:Dx,size:16,className:(0,mE.V)({color:"info"})}):null),(e=>e&&e>=1?a.createElement(yE,{indentation:Math.floor(e)}):null)(h),C?a.createElement(we.J,{className:vE("icon",(0,mE.V)({color:l?"hint":void 0})),data:y?xe:fE,size:16}):null,p,a.createElement("div",{className:vE("main-content")},"string"===typeof g?a.createElement(Fi.x,{ellipsis:!0,color:l?"hint":void 0,variant:C?"subheader-1":void 0},g):g,"string"===typeof f?a.createElement(Fi.x,{ellipsis:!0,color:l?"hint":"secondary"},f):f)),m)}));bE.displayName="ListItemView";const xE=(0,le.Ge)("list-container-view"),wE=a.forwardRef((function(e,t){let{as:n="div",role:r="listbox",children:i,id:o,className:s,fixedHeight:l,extraProps:c,qa:u}=e;return a.createElement(Ai.k,Object.assign({"data-qa":u,as:n,direction:"column",ref:t,grow:!0,tabIndex:-1,id:o,role:r,className:xE({"fixed-height":l},s)},c),i)})),SE=(0,le.Ge)("list-recursive-renderer");function _E(e){var{itemSchema:t,index:n,parentId:r}=e,i=(0,nt._T)(e,["itemSchema","index","parentId"]);const o=sE(n,r),s=iE({item:t,groupedId:o,getItemId:i.getItemId}),l=i.children(s,i.idToFlattenIndex[s]);if(rE(t)&&t.children){const e=!i.expandedById||!(s in i.expandedById)||i.expandedById[s];return a.createElement("ul",{style:i.style,className:SE(null,i.className),role:"group"},l,e&&t.children.map(((e,t)=>a.createElement(_E,Object.assign({itemSchema:e,key:t,index:t,parentId:o},i)))))}return l}const CE=e=>{let{qa:t,items:n,id:r,containerRef:i,expandedById:o,renderItem:s,className:l,idToFlattenIndex:c,getItemId:u}=e;return a.createElement(wE,{ref:i,className:l,id:r,qa:t},n.map(((e,t)=>a.createElement(_E,{key:t,idToFlattenIndex:c,itemSchema:e,index:t,expandedById:o,getItemId:u},s))))},EE=(0,le.Ge)("tree-list"),TE=e=>{let{qa:t,id:n,size:r="m",items:i,className:o,expandedById:s,disabledById:l,selectedById:c,activeItemId:u,defaultGroupsExpanded:d=!0,getItemId:h,renderItem:p,renderContainer:f=CE,onItemClick:m,multiple:g,setActiveItemId:v,containerRef:y,mapItemDataToProps:b}=e;const x=ue(),w=null!==n&&void 0!==n?n:x,S=a.useRef(null),_=null!==y&&void 0!==y?y:S,C=dE({items:i,getItemId:h,expandedById:s,disabledById:l,selectedById:c,activeItemId:u}),E=s||C.initialState.expandedById,T=l||C.initialState.disabledById,O=c||C.initialState.selectedById,N=a.useMemo((()=>{if(m)return e=>{null===m||void 0===m||m({id:e,index:C.idToFlattenIndex[e],data:C.itemsById[e],expanded:E&&e in E?E[e]:e in C.initialState.expandedById?C.initialState.expandedById[e]:d,disabled:T?Boolean(T[e]):Boolean(C.initialState.disabledById[e]),selected:O?Boolean(O[e]):Boolean(C.initialState.selectedById[e]),context:{isLastItem:C.visibleFlattenIds[C.visibleFlattenIds.length-1]===e,groupState:C.groupsState[e],itemState:C.itemsState[e]}})}}),[d,T,E,O,C,m]);(e=>{let{visibleFlattenIds:t,onItemClick:n,containerRef:r,disabledById:i={},activeItemId:o,setActiveItemId:s,enabled:l}=e;const c=a.useCallback((function(e){let n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];"number"===typeof e&&t[e]&&(n&&pE(t[e],null===r||void 0===r?void 0:r.current),null===s||void 0===s||s(t[e]))}),[r,t,s]),u=a.useCallback((function(e,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;e.preventDefault();const a=t.findIndex((e=>e===o)),s=hE({list:t,index:(a>-1?a:r)+n,step:Math.sign(n),disabledItems:i});c(s)}),[c,o,i,t]);a.useLayoutEffect((()=>{const e=null===r||void 0===r?void 0:r.current;if(l||!e)return;const t=e=>{switch(e.key){case Zr.V.ARROW_DOWN:u(e,1,-1);break;case Zr.V.ARROW_UP:u(e,-1);break;case Zr.V.SPACEBAR:case Zr.V.ENTER:o&&!i[o]&&(e.preventDefault(),null===n||void 0===n||n(o))}};return e.addEventListener("keydown",t),()=>{e.removeEventListener("keydown",t)}}),[o,r,i,l,u,n])})(Object.assign(Object.assign({containerRef:_,onItemClick:N},C),{activeItemId:u,disabledById:T,setActiveItemId:v}));return f(Object.assign(Object.assign({qa:t,id:"list-".concat(w),size:r,containerRef:_,className:EE(null,o)},C),{expandedById:E,disabledById:T,activeItemId:u,selectedById:O,renderItem:(e,n,i)=>{const o=(e=>{let{qa:t,itemsById:n,disabledById:r,expandedById:i,groupsState:o,onItemClick:a,mapItemDataToProps:s,visibleFlattenIds:l,size:c="m",itemsState:u,selectedById:d,activeItemId:h,multiple:p=!1,defaultExpanded:f=!0,id:m}=e;var g;const v={itemState:u[m],groupState:o[m],isLastItem:m===l[l.length-1]};let y,b;o[m]&&i&&(y=null!==(g=i[m])&&void 0!==g?g:f),d&&(b=Boolean(d[m]));const x=Object.assign({id:m,size:c,expanded:y,active:m===h,indentation:v.itemState.indentation,disabled:Boolean(null===r||void 0===r?void 0:r[m]),selected:b,hasSelectionIcon:Boolean(p)&&!v.groupState,onClick:a?()=>a(m):void 0},s(n[m]));return t&&(x.qa=((e,t)=>"".concat(e,"-").concat(t))(t,m)),{data:n[m],props:x,context:v}})(Object.assign(Object.assign({qa:t,id:e,size:r,multiple:g,mapItemDataToProps:b,onItemClick:N},C),{expandedById:E,disabledById:T,activeItemId:u,selectedById:O,defaultExpanded:d}));return p?p({data:o.data,props:o.props,context:o.context,index:n,renderContainerProps:i}):a.createElement(bE,Object.assign({},o.props,i))},getItemId:h}))};function OE(e,t){const[n,r]=a.useState(e||t);return[e||n,r]}const NE=(0,le.Ge)("tree-select"),kE=e=>a.createElement(bE,Object.assign({},e.props,e.renderContainerProps)),jE=a.forwardRef((function(e,t){let{id:n,qa:r,placement:i,slotBeforeListBody:o,slotAfterListBody:s,size:l,items:c,defaultOpen:u,width:d,containerRef:h,className:p,containerClassName:f,popupClassName:m,open:g,multiple:v,popupWidth:y,expandedById:b,disabledById:x,activeItemId:w,defaultValue:S,popupDisablePortal:_,groupsBehavior:C="expandable",value:E,defaultGroupsExpanded:T,onClose:O,onUpdate:N,getItemId:k,onOpenChange:j,renderControl:I,renderItem:P=kE,renderContainer:D,onItemClick:A,setActiveItemId:R,mapItemDataToProps:M,title:L}=e;const F=(0,Kh.X)(),z=ue(),B=null!==n&&void 0!==n?n:z,U=a.useRef(null),H=a.useRef(null),V=a.useRef(null),G=null!==h&&void 0!==h?h:V,W=Et(t,H),{value:q,setInnerValue:Z,selected:Y}=(e=>{let{defaultValue:t,value:n}=e;const[r,i]=a.useState(t||[]),o=n||r,s=!n;return{selected:a.useMemo((()=>o.reduce(((e,t)=>(e[t]=!0,e)),{})),[o]),value:o,setInnerValue:s?i:void 0}})({value:E,defaultValue:S}),K=function(){let{initialValues:e,controlledValues:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const[n,r]=OE(null===t||void 0===t?void 0:t.disabledById,(null===e||void 0===e?void 0:e.disabledById)||{}),[i,o]=OE(null===t||void 0===t?void 0:t.selectedById,(null===e||void 0===e?void 0:e.selectedById)||{}),[a,s]=OE(null===t||void 0===t?void 0:t.expandedById,(null===e||void 0===e?void 0:e.expandedById)||{}),[l,c]=OE(null===t||void 0===t?void 0:t.activeItemId,null===e||void 0===e?void 0:e.activeItemId);return{disabledById:n,setDisabled:r,selectedById:i,setSelected:o,expandedById:a,setExpanded:s,activeItemId:l,setActiveItemId:c}}({controlledValues:{expandedById:b,disabledById:x,activeItemId:w,selectedById:Y}}),Q=null!==R&&void 0!==R?R:K.setActiveItemId,X=dE(Object.assign({items:c,getItemId:k},K)),$=a.useCallback((e=>null===N||void 0===N?void 0:N(e,e.map((e=>X.itemsById[e])))),[X.itemsById,N]),{open:J,toggleOpen:ee,handleClearValue:te,handleMultipleSelection:ne,handleSingleSelection:re}=(e=>{let{value:t,setInnerValue:n,defaultOpen:r,onClose:i,onOpenChange:o,open:s,onUpdate:l}=e;const{toggleOpen:c,open:u}=qh({defaultOpen:r,onClose:i,onOpenChange:o,open:s}),d=a.useCallback((e=>{if(!t.includes(e)){const t=[e];null===l||void 0===l||l(t),null===n||void 0===n||n(t)}c(!1)}),[t,c,l,n]),h=a.useCallback((e=>{const r=t.includes(e)?t.filter((t=>t!==e)):[...t,e];null===l||void 0===l||l(r),null===n||void 0===n||n(r)}),[t,l,n]),p=a.useCallback((()=>{null===l||void 0===l||l([]),null===n||void 0===n||n([])}),[l,n]);return{open:u,toggleOpen:c,handleSingleSelection:d,handleMultipleSelection:h,handleClearValue:p}})({setInnerValue:Z,value:q,onUpdate:$,defaultOpen:u,open:g,onClose:O,onOpenChange:j}),ie=a.useCallback((e=>{const{groupState:t}=e.context,n=()=>{K.disabledById[e.id]||(Q(e.id),t&&"expandable"===C?K.setExpanded((t=>Object.assign(Object.assign({},t),{[e.id]:!e.expanded}))):v?ne(e.id):(re(e.id),ee(!1)))};return A?A(e,n):n()}),[A,K,Q,C,v,ne,re,ee]);a.useLayoutEffect((()=>{var e;if(J){const t=q[q.length-1];null===(e=G.current)||void 0===e||e.focus(),Q(t),t&&pE(t,G.current)}}),[J]);const oe=a.useCallback((()=>ee(!1)),[ee]),ae={open:J,toggleOpen:ee,clearValue:te,ref:W,size:l,value:q,id:B,activeItemId:K.activeItemId,title:L},se=I?I(ae):a.createElement(Qx,Object.assign({},ae,{selectedOptionsContent:a.Children.toArray(q.map((e=>M(X.itemsById[e]).title))).join(", "),view:"normal",pin:"round-round",popupId:"tree-select-popup-".concat(B),selectId:"tree-select-".concat(B)})),le=Object.assign({},"max"===d&&{width:d}),ce={};return"number"===typeof d&&(ce.width=d),a.createElement(Ai.k,{direction:"column",gap:"5",ref:U,className:NE(le,p),style:ce},se,a.createElement(pw,{ref:U,className:NE("popup",{size:l},m),controlRef:H,width:y,placement:i,open:J,handleClose:oe,disablePortal:_,mobile:F,id:"tree-select-popup-".concat(B)},o,a.createElement(TE,{size:l,className:NE("list",f),qa:r,multiple:v,id:"list-".concat(B),containerRef:G,getItemId:k,disabledById:K.disabledById,selectedById:K.selectedById,expandedById:K.expandedById,activeItemId:K.activeItemId,setActiveItemId:Q,onItemClick:ie,items:c,defaultGroupsExpanded:T,renderContainer:D,mapItemDataToProps:M,renderItem:null!==P&&void 0!==P?P:kE}),s))})),IE=JSON.parse('{"button_apply":"Apply","button_reset":"Reset","button_switcher":"Columns"}'),PE=JSON.parse('{"button_apply":"\u041f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c","button_reset":"\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c","button_switcher":"\u041a\u043e\u043b\u043e\u043d\u043a\u0438"}'),DE=(0,mi.e)({en:IE,ru:PE},"TableColumnSetupInner"),AE=(0,le.Ge)("inner-table-column-setup"),RE=AE("controls"),ME={isDragDisabled:!0},LE=e=>({title:e.title}),FE=e=>{const{renderSwitcher:t,popupWidth:n,popupPlacement:r,items:i,onUpdate:o,sortable:s,renderControls:l,className:c,defaultItems:u=i,showResetButton:d}=e,[h,p]=a.useState(!1),[f,m]=a.useState(i),[g,v]=a.useState(i);i!==g&&(v(i),m(i));const y=()=>{const e=f.map((e=>{let{id:t,isSelected:n}=e;return{id:t,isSelected:n}}));o(e),p(!1)},b=()=>a.createElement(Ie.z,{view:"action",width:"max",onClick:y},DE("button_apply")),x="function"===typeof d?d(f):d,w=(e=>{let{onDragEnd:t,renderControls:n}=e;const r=ue();return e=>{let{renderItem:i,visibleFlattenIds:o,itemsById:s,containerRef:l,id:c,className:u}=e;const{stickyStartItemIdList:d,sortableItemIdList:h,stickyEndItemIdList:p}=((e,t)=>{let n=0;for(;n!==t.length;n++){const r=e[t[n]];if("left"!==(null===r||void 0===r?void 0:r.sticky)&&"start"!==(null===r||void 0===r?void 0:r.sticky))break}let r=t.length;for(;0!==r;r--){const n=e[t[r-1]];if("right"!==(null===n||void 0===n?void 0:n.sticky)&&"end"!==(null===n||void 0===n?void 0:n.sticky))break}return{stickyStartItemIdList:t.slice(0,n),sortableItemIdList:t.slice(n,r),stickyEndItemIdList:t.slice(r)}})(s,o),f=d.map(((e,t)=>i(e,t,ME))),m=h.map(((e,t)=>i(e,t+d.length))),g=p.map(((e,t)=>i(e,f.length+m.length+t,ME)));return a.createElement(a.Fragment,null,a.createElement(wE,{ref:l,id:c,className:u},f,a.createElement(Gy,{onDragEnd:t},a.createElement(Pb,{droppableId:r,renderClone:(e,t,n)=>{const r={provided:e,snapshot:t};return i(o[n.source.index],n.source.index,r)}},(e=>a.createElement("div",Object.assign({},e.droppableProps,{ref:e.innerRef}),m,e.placeholder)))),g),a.createElement("div",{className:RE},n()))}})({onDragEnd:e=>{let{destination:t,source:n}=e;void 0!==(null===t||void 0===t?void 0:t.index)&&(null===t||void 0===t?void 0:t.index)!==n.index&&m((e=>((e,t,n)=>{const r=[...e],[i]=r.splice(t,1);return r.splice(n,0,i),r})(e,n.index,t.index)))},renderControls:()=>l?l({DefaultApplyButton:b,onApply:y}):a.createElement(Ai.k,{gapRow:1,direction:"column",className:RE},x&&a.createElement(Ie.z,{onClick:()=>{m(u)},width:"max"},DE("button_reset")),a.createElement(b,null))}),S=(e=>t=>{let{data:n,props:r,index:i,renderContainerProps:o}=t;const s=!1===e||!0===(null===o||void 0===o?void 0:o.isDragDisabled),l=s?void 0:a.createElement(we.J,{data:cx,size:16}),c=!n.isRequired,u=n.isRequired?a.createElement(we.J,{data:nE}):void 0,d=!n.isRequired&&r.selected,h=Object.assign(Object.assign({},r),{selected:d,startSlot:u,hasSelectionIcon:c,endSlot:l});if(s)return a.createElement(bE,Object.assign({},h,{key:h.id}));const p=(e,t)=>a.createElement(bE,Object.assign({},h,e.draggableProps,e.dragHandleProps,{ref:e.innerRef,dragging:t.isDragging}));return(null===o||void 0===o?void 0:o.provided)&&o.snapshot?p(o.provided,o.snapshot):a.createElement(Nb,{draggableId:r.id,index:i,key:"item-key-".concat(r.id),isDragDisabled:s},p)})(s),_=a.useMemo((()=>(e=>{const t=[];return e.forEach((e=>{let{id:n,isSelected:r}=e;r&&t.push(n)})),t})(f)),[f]);return a.createElement(jE,{className:AE(null,c),mapItemDataToProps:LE,multiple:!0,size:"l",open:h,value:_,items:f,onUpdate:e=>{m((t=>t.map((t=>Object.assign(Object.assign({},t),{isSelected:t.isRequired||e.includes(t.id)})))))},popupWidth:n,onOpenChange:e=>{p(e),!1===e&&m(i)},placement:r,renderContainer:w,renderControl:e=>{let{toggleOpen:n}=e;const r=(0,ci.S)(n);return(null===t||void 0===t?void 0:t({onClick:n,onKeyDown:r}))||a.createElement(Ie.z,{onClick:n,extraProps:{onKeyDown:r}},a.createElement(we.J,{data:tE}),DE("button_switcher"))},renderItem:S})},zE=JSON.parse('{"button_switcher":"Columns"}'),BE=JSON.parse('{"button_switcher":"\u041a\u043e\u043b\u043e\u043d\u043a\u0438"}'),UE=(0,mi.e)({en:zE,ru:BE},"TableColumnSetup"),HE=(0,le.Ge)("table-column-setup"),VE=e=>{const{switcher:t,renderSwitcher:n,disabled:r,popupWidth:i,popupPlacement:o,className:s,items:l,sortable:c=!0,showStatus:u,onUpdate:d}=e,h=l.map((e=>{let{id:t,title:n,required:r,selected:i,sticky:o}=e;return{id:t,title:n,isRequired:r,isSelected:i,sticky:o}}));return a.createElement(FE,{items:h,onUpdate:e=>{d(e.map((e=>{let{id:t,isSelected:n}=e;const r=l.find((e=>e.id===t));return{id:t,selected:n,title:null===r||void 0===r?void 0:r.title,required:null===r||void 0===r?void 0:r.required}})))},popupPlacement:o,popupWidth:i,renderSwitcher:e=>(null===n||void 0===n?void 0:n(e))||t||a.createElement(Ie.z,{disabled:r,onClick:e.onClick},a.createElement(we.J,{data:tE}),UE("button_switcher"),(()=>{if(!u)return null;const e=l.reduce(((e,t)=>t.selected?e+1:e),0),t=l.length,n="".concat(e,"/").concat(t);return a.createElement("span",{className:HE("status")},n)})()),sortable:c,className:HE(null,s)})};var GE=n(20163);const WE=e=>e.clusters.clusterName,qE=e=>e.clusters.status,ZE=e=>e.clusters.service,YE=e=>e.clusters.version,KE=(e,t)=>0===t.length||e.status&&t.includes(e.status),QE=(e,t)=>0===t.length||e.service&&t.includes(e.service),XE=(e,t)=>0===t.length||t.some((t=>{var n,r;return null===(n=e.cluster)||void 0===n||null===(r=n.Versions)||void 0===r?void 0:r.some((e=>e.startsWith(t)))})),$E=function(e){var t;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(!n)return!0;const r=n.toLowerCase(),i=r.split(" "),o=(null===(t=e.title)||void 0===t?void 0:t.toLowerCase().match(/[^\d\s]+|\d+|[^-\s]+|[^_\s]+/g))||[],a=i.every((t=>{const n=m_()(t),r=new RegExp("^".concat(n,"|[\\s\\-_]").concat(n),"i");return e.title&&r.test(e.title)||o.some((e=>e.startsWith(t)))})),s=e.preparedVersions.some((e=>e.version.includes(r))),l=Boolean(e.hosts&&e.hosts[r]);return a||s||l};const JE=JSON.parse('{"controls_status-select-label":"Status:","controls_service-select-label":"Service:","controls_version-select-label":"Version:","controls_search-placeholder":"Cluster name, version, host","controls_select-placeholder":"All","statistics_clusters":"Clusters","statistics_hosts":"Hosts","statistics_tenants":"Tenants","statistics_nodes":"Nodes","statistics_load":"Load","statistics_storage":"Storage","tooltip_no-cluster-data":"No cluster data","page_title":"Clusters"}'),eT=JSON.parse('{"controls_status-select-label":"\u0421\u0442\u0430\u0442\u0443\u0441:","controls_service-select-label":"\u0421\u0435\u0440\u0432\u0438\u0441:","controls_version-select-label":"\u0412\u0435\u0440\u0441\u0438\u044f:","controls_search-placeholder":"\u0418\u043c\u044f \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430, \u0432\u0435\u0440\u0441\u0438\u044f \u0438\u043b\u0438 \u0445\u043e\u0441\u0442","controls_select-placeholder":"\u0412\u0441\u0435","statistics_clusters":"\u041a\u043b\u0430\u0441\u0442\u0435\u0440\u044b","statistics_hosts":"\u0425\u043e\u0441\u0442\u044b","statistics_tenants":"\u0411\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445","statistics_nodes":"\u0423\u0437\u043b\u044b","statistics_load":"\u041d\u0430\u0433\u0440\u0443\u0437\u043a\u0430","statistics_storage":"\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435","tooltip_no-cluster-data":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430","page_title":"\u041a\u043b\u0430\u0441\u0442\u0435\u0440\u044b"}'),tT=(0,We.wZ)("ydb-clusters-page",{ru:eT,en:JE}),nT=Me("clusters"),rT=e=>{let{count:t,stats:n}=e;const{NodesTotal:r,NodesAlive:i,Hosts:o,Tenants:a,LoadAverage:s,NumberOfCpus:l,StorageUsed:c,StorageTotal:u}=n;return(0,Le.jsxs)("div",{className:nT("aggregation"),children:[(0,Le.jsxs)("div",{className:nT("aggregation-value-container"),children:[(0,Le.jsx)("span",{className:nT("aggregation-label"),children:tT("statistics_clusters")}),t]}),(0,Le.jsxs)("div",{className:nT("aggregation-value-container"),children:[(0,Le.jsx)("span",{className:nT("aggregation-label"),children:tT("statistics_hosts")}),o]}),(0,Le.jsxs)("div",{className:nT("aggregation-value-container"),children:[(0,Le.jsx)("span",{className:nT("aggregation-label"),children:tT("statistics_tenants")}),a]}),(0,Le.jsxs)("div",{className:nT("aggregation-value-container"),children:[(0,Le.jsx)("span",{className:nT("aggregation-label"),children:tT("statistics_nodes")}),(0,Le.jsx)(Iu,{size:"ns",value:i,capacity:r,colorizeProgress:!0,inverseColorize:!0})]}),(0,Le.jsxs)("div",{className:nT("aggregation-value-container"),children:[(0,Le.jsx)("span",{className:nT("aggregation-label"),children:tT("statistics_load")}),(0,Le.jsx)(Iu,{size:"ns",value:s,capacity:l,colorizeProgress:!0})]}),(0,Le.jsxs)("div",{className:nT("aggregation-value-container"),children:[(0,Le.jsx)("span",{className:nT("aggregation-label"),children:tT("statistics_storage")}),(0,Le.jsx)(Iu,{size:"ns",value:c,capacity:u,formatValues:ks.QO,colorizeProgress:!0})]})]})},iT={pc:{NormalizeMap:{arrowup:"up",arrowdown:"down",arrowleft:"left",arrowright:"right",esc:"escape",return:"enter",mod:"ctrl",control:"ctrl",opt:"alt",option:"alt",cmd:"ctrl",command:"ctrl"},Priority:{shift:200,alt:300,ctrl:400},DisplayName:{up:"\u2191",down:"\u2193",left:"\u2190",right:"\u2192",escape:"Esc",plus:"\uff0b",enter:"Enter",ctrl:"Ctrl",alt:"Alt",shift:"Shift",tab:"Tab",backspace:"Backspace"}},mac:{NormalizeMap:{arrowup:"up",arrowdown:"down",arrowleft:"left",arrowright:"right",esc:"escape",enter:"return",mod:"command",ctrl:"control",alt:"option",opt:"option",cmd:"command"},Priority:{command:100,shift:200,option:300,control:400},DisplayName:{up:"\u25b2",down:"\u25bc",left:"\u25c0",right:"\u25b6",escape:"\u238b",plus:"\uff0b",return:"\u23ce",command:"\u2318",option:"\u2325",control:"\u2303",shift:"\u21e7",backspace:"\u232b",tab:"\u21e5"}}};var oT=n(6381),aT=n.n(oT),sT=n(60619),lT=n.n(sT);const cT=()=>"undefined"!==typeof navigator&&/Mac|iP(hone|[oa]d)/.test(navigator.platform);function uT(e,t){return e.trim().split(t).filter(Boolean)}const dT=/\s/,hT="+";function pT(e,t){return uT(t,dT).map((t=>lT()(uT(t,hT).map(function(e){return function(t){var n;const r=function(e,t){var n;return t=t.toLowerCase(),null!==(n=e.NormalizeMap[t])&&void 0!==n?n:t}(e,t);return{raw:t,id:r,priority:null!==(n=e.Priority[r])&&void 0!==n?n:0,displayName:e.DisplayName[r]}}}(e)).sort(((e,t)=>t.priority-e.priority)),(e=>e.id)).map(fT)))}function fT(e){var t;return null!==(t=e.displayName)&&void 0!==t?t:aT()(e.id)}const mT=(0,le.Ge)("hotkey"),gT={BetweenGroups:String.fromCharCode(160),BetweenKeys:String.fromCharCode(8239)},vT=a.forwardRef((function(e,t){const{value:n,platform:r,view:i="light",qa:o,style:s,className:l}=e,c=function(e,t){var n;const r=null!==(n=t.platform)&&void 0!==n?n:cT()?"mac":"pc",i=iT[r];return pT(i,e)}(n,{platform:r}),u=[];let d=!1;return c.forEach(((e,t)=>{0!==e.length&&(d?u.push(gT.BetweenGroups):d=!0,e.forEach(((e,n)=>{0===n||u.push(gT.BetweenKeys,a.createElement("span",{key:"".concat(e,"_").concat(t,"_").concat(n,"_plus"),className:mT("plus")},"+"),gT.BetweenKeys),u.push(a.createElement("kbd",{key:"".concat(e,"_").concat(t,"_").concat(n)},e))})))})),0===u.length?null:a.createElement("kbd",{ref:t,style:s,"data-qa":o,className:mT({view:i},l)},u)}));const yT=["bottom","top"],bT=(0,le.Ge)("action-tooltip");function xT(e){const{placement:t=yT,title:n,hotkey:r,children:i,className:o,contentClassName:s,description:l,disabled:c=!1,style:u,qa:d,id:h,disablePortal:p}=e,f=(0,nt._T)(e,["placement","title","hotkey","children","className","contentClassName","description","disabled","style","qa","id","disablePortal"]),[m,g]=a.useState(null),v=sl(m,f),y=a.Children.only(i),b=Et(g,y.ref);return a.createElement(a.Fragment,null,a.cloneElement(y,{ref:b}),m?a.createElement(ti,{id:h,disablePortal:p,role:"tooltip",className:bT(null,o),style:u,open:v&&!c,placement:t,anchorRef:{current:m},disableEscapeKeyDown:!0,disableOutsideClick:!0,disableLayer:!0,qa:d},a.createElement("div",{className:bT("content",s)},a.createElement("div",{className:bT("heading")},a.createElement("div",{className:bT("title")},n),r&&a.createElement(vT,{view:"dark",value:r,className:bT("hotkey")})),l&&a.createElement("div",{className:bT("description")},l))):null)}const wT=JSON.parse('{"startCopy":"Copy","endCopy":"Copied!"}'),ST=JSON.parse('{"startCopy":"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c","endCopy":"\u0421\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043e!"}'),_T=(0,mi.e)({en:wT,ru:ST},"ClipboardButton"),CT=1e3,ET={xs:12,s:16,m:16,l:16,xl:20},TT=e=>{const{size:t="m",hasTooltip:n=!0,tooltipInitialText:r=_T("startCopy"),tooltipSuccessText:i=_T("endCopy"),status:o,view:s="flat",extraProps:l={}}=e,c=(0,nt._T)(e,["size","hasTooltip","tooltipInitialText","tooltipSuccessText","status","view","extraProps"]);return a.createElement(xT,{disabled:!n,title:"success"===o?i:r},a.createElement(Ie.z,Object.assign({view:s,size:t,extraProps:Object.assign({"aria-label":r},l)},c),a.createElement(Ie.z.Icon,null,a.createElement(at,{size:ET[t],status:o}))))};function OT(e){const{text:t,timeout:n=CT,onCopy:r,options:i}=e,o=(0,nt._T)(e,["text","timeout","onCopy","options"]);return a.createElement(ut,{text:t,timeout:n,onCopy:r,options:i},(e=>a.createElement(TT,Object.assign({},o,{status:e}))))}const NT=Me("kv-user");function kT(e){let{login:t,className:n}=e;const r=Be("StaffCard");return(0,Le.jsx)("div",{className:NT(null,n),children:(0,Le.jsx)(r,{login:t,children:(0,Le.jsx)("div",{className:NT("name"),children:t})})})}const jT=e=>e.replace(/\/viewer\/json/,""),IT=e=>{const t=jT((e=>e.replace(/http[s]?:\/\//,""))(e)),n=t.split("/");if(1===n.length)return{balancer:n[0],proxy:void 0};const r=n[0];return{balancer:t.replace(r+"/",""),proxy:r}},PT=e=>IT(e).balancer.replace(/:\d+$/,""),DT="selectedColumns",AT={TITLE:"title",VERSIONS:"versions",CLUSTER:"cluster",SERVICE:"service",STATUS:"status",NODES:"nodes",LOAD:"load",STORAGE:"storage",HOSTS:"hosts",TENANTS:"tenants",OWNER:"owner",DESCRIPTION:"description",BALANCER:"balancer"},RT=[AT.TITLE,AT.VERSIONS,AT.SERVICE,AT.STATUS,AT.NODES,AT.LOAD,AT.STORAGE,AT.HOSTS,AT.TENANTS,AT.OWNER,AT.BALANCER],MT={[AT.TITLE]:"Cluster",[AT.VERSIONS]:"Versions",[AT.CLUSTER]:"DC",[AT.SERVICE]:"Service",[AT.STATUS]:"Status",[AT.NODES]:"Nodes",[AT.LOAD]:"Load",[AT.STORAGE]:"Storage",[AT.HOSTS]:"Hosts",[AT.TENANTS]:"Tenants",[AT.OWNER]:"Owner",[AT.DESCRIPTION]:"Description",[AT.BALANCER]:"Balancer"},LT="clustersTableColumnsWidth",FT=(0,Le.jsx)("span",{className:nT("empty-cell"),children:"\u2014"}),zT=[{name:AT.TITLE,header:MT[AT.TITLE],width:230,render:e=>{var t,n;let{row:r}=e;const{balancer:i,name:o}=r,a=i&&jT(i),s=(0,$C.B7)(void 0,{backend:a,clusterName:o}),l=null===(t=r.cluster)||void 0===t?void 0:t.Overall;return(0,Le.jsxs)("div",{className:nT("cluster"),children:[l?(0,Le.jsx)(si,{href:s,children:(0,Le.jsx)("div",{className:nT("cluster-status",{type:l&&l.toLowerCase()})})}):(0,Le.jsx)("div",{className:nT("cluster-status"),children:(0,Le.jsx)(Io,{content:(0,Le.jsx)("span",{className:nT("tooltip-content"),children:(null===(n=r.cluster)||void 0===n?void 0:n.error)||tT("tooltip_no-cluster-data")}),offset:{left:0}})}),(0,Le.jsx)("div",{className:nT("cluster-name"),children:(0,Le.jsx)(si,{href:s,children:r.title})})]})},defaultOrder:Hc.ZP.ASCENDING},{name:AT.VERSIONS,header:MT[AT.VERSIONS],width:300,defaultOrder:Hc.ZP.DESCENDING,sortAccessor:e=>{let{preparedVersions:t}=e;return t.map((e=>e.version.replace(/^[0-9]\+\./g,""))).sort(((e,t)=>e.localeCompare(t)))[0]||void 0},render:e=>{let{row:t}=e;const{preparedVersions:n,versions:r=[],balancer:i,name:o}=t;if(!r.length||r.some((e=>!e.version)))return FT;const s=r.reduce(((e,t)=>e+t.count),0),l=r.map((e=>{var t;return{value:e.count/s*100,color:null===(t=n.find((t=>t.version===e.version)))||void 0===t?void 0:t.color}})),c=i&&jT(i);return n.length>0&&(0,Le.jsx)(si,{className:nT("cluster-versions"),href:(0,$C.B7)($C.xu.versions,{backend:c,clusterName:o}),children:(0,Le.jsxs)(a.Fragment,{children:[n.map(((e,t)=>(0,Le.jsx)("div",{className:nT("cluster-version"),style:{color:e.color},title:e.version,children:e.version},t))),(0,Le.jsx)(gC,{size:"s",value:100,stack:l})]})})}},{name:AT.CLUSTER,header:MT[AT.CLUSTER],width:120,sortable:!1,render:e=>{let{row:t}=e;const n=t.cluster&&t.cluster.DataCenters||[];return(0,Le.jsx)("div",{className:nT("cluster-dc"),children:n.join(", ")||FT})}},{name:AT.SERVICE,header:MT[AT.SERVICE],width:100,sortable:!0},{name:AT.STATUS,header:MT[AT.STATUS],width:150,sortable:!0},{name:AT.NODES,header:MT[AT.NODES],resizeMinWidth:140,defaultOrder:Hc.ZP.DESCENDING,sortAccessor:e=>{let{cluster:t={}}=e;const{NodesTotal:n=0}=t;return n},render:e=>{let{row:t}=e;const{NodesAlive:n=0,NodesTotal:r=0,Overall:i}=t.cluster||{};return i?(0,Le.jsx)(Iu,{value:n,capacity:r}):FT}},{name:AT.LOAD,header:MT[AT.LOAD],resizeMinWidth:140,defaultOrder:Hc.ZP.DESCENDING,sortAccessor:e=>{let{cluster:t}=e;return null===t||void 0===t?void 0:t.NumberOfCpus},render:e=>{let{row:t}=e;const{LoadAverage:n=0,NumberOfCpus:r=0,Overall:i}=t.cluster||{};return i?(0,Le.jsx)(Iu,{value:n,capacity:r}):FT}},{name:AT.STORAGE,header:MT[AT.STORAGE],resizeMinWidth:140,defaultOrder:Hc.ZP.DESCENDING,sortAccessor:e=>{let{cluster:t}=e;return Number(null===t||void 0===t?void 0:t.StorageTotal)},render:e=>{let{row:t}=e;const{StorageUsed:n=0,StorageTotal:r=0,Overall:i}=t.cluster||{};return i?(0,Le.jsx)(Iu,{value:n,capacity:r,formatValues:ks.JD}):FT}},{name:AT.HOSTS,header:MT[AT.HOSTS],width:80,defaultOrder:Hc.ZP.DESCENDING,sortAccessor:e=>{let{cluster:t}=e;return Number(null===t||void 0===t?void 0:t.Hosts)||0},render:e=>{var t;let{row:n}=e;return Number(null===(t=n.cluster)||void 0===t?void 0:t.Hosts)||FT}},{name:AT.TENANTS,header:MT[AT.TENANTS],width:80,defaultOrder:Hc.ZP.DESCENDING,sortAccessor:e=>{let{cluster:t}=e;return Number(null===t||void 0===t?void 0:t.Tenants)||0},render:e=>{var t;let{row:n}=e;return Number(null===(t=n.cluster)||void 0===t?void 0:t.Tenants)||FT}},{name:AT.OWNER,header:MT[AT.OWNER],sortable:!1,width:120,render:e=>{var t;let{row:n}=e;const r=null===(t=n.owner)||void 0===t?void 0:t.split(", ");return null!==r&&void 0!==r&&r.length?r.map((e=>(0,Le.jsx)(kT,{login:e},e))):FT}},{name:AT.DESCRIPTION,header:MT[AT.DESCRIPTION],sortable:!1,width:150,render:e=>{let{row:t}=e;return t.description?(0,Le.jsx)("div",{className:nT("description"),children:t.description}):FT}},{name:AT.BALANCER,header:MT[AT.BALANCER],sortable:!1,width:290,render:e=>{let{row:t}=e;if(!t.balancer)return FT;const n=PT(t.balancer);return(0,Le.jsxs)("div",{className:nT("balancer-cell"),children:[(0,Le.jsx)("div",{className:nT("balancer-text"),children:n}),(0,Le.jsx)(OT,{size:"s",text:n,className:nT("balancer-icon")})]})}}],BT=(e,t,n,r,i)=>{const[o,a]=Mo(t,r),s=e.map((e=>e.name));return{columnsToShow:e.filter((e=>o.find((t=>t===e.name)))),columnsToSelect:s.map((e=>{const t=null===i||void 0===i?void 0:i.includes(e);return{id:e,title:n[e],selected:o.includes(e),required:t,sticky:t?"start":void 0}})),setColumns:e=>{const t=e.filter((e=>e.selected)).map((e=>e.id));a(t)}}};function UT(){const e=GE.W1.useGetClustersListQuery(void 0,{pollingInterval:Lo.ME}),t=Ao(),n=Do(WE),r=Do(qE),i=Do(ZE),o=Do(YE),{columnsToShow:s,columnsToSelect:l,setColumns:c}=BT(zT,DT,MT,RT,[AT.TITLE]),u=e.data,{servicesToSelect:d,versions:h}=a.useMemo((()=>{const e=new Set,t=new Set;return(null!==u&&void 0!==u?u:[]).forEach((n=>{var r,i;n.service&&e.add(n.service),null===(r=n.cluster)||void 0===r||null===(i=r.Versions)||void 0===i||i.forEach((e=>{t.add((0,Ll.H)(e))}))})),{servicesToSelect:Array.from(e).map((e=>({value:e,content:e}))),versions:Array.from(t).map((e=>({value:e,content:e})))}}),[u]),p=a.useMemo((()=>function(e,t){return e.filter((e=>KE(e,t.status)&&QE(e,t.service)&&XE(e,t.version)&&$E(e,t.clusterName)))}(null!==u&&void 0!==u?u:[],{clusterName:n,status:r,service:i,version:o})),[n,u,i,r,o]),f=a.useMemo((()=>function(e){let t=0,n=0,r=0,i=0,o=0,a=0,s=0;const l=new Set;return e.filter((e=>{let{cluster:t}=e;return!(null!==t&&void 0!==t&&t.error)})).forEach((e=>{let{cluster:c,hosts:u={}}=e;t+=(null===c||void 0===c?void 0:c.NodesTotal)||0,n+=(null===c||void 0===c?void 0:c.NodesAlive)||0,Object.keys(u).forEach((e=>l.add(e))),s+=Number(null===c||void 0===c?void 0:c.Tenants)||0,r+=Number(null===c||void 0===c?void 0:c.LoadAverage)||0,i+=(null===c||void 0===c?void 0:c.NumberOfCpus)||0,o+=null!==c&&void 0!==c&&c.StorageUsed?Math.floor(parseInt(c.StorageUsed,10)):0,a+=null!==c&&void 0!==c&&c.StorageTotal?Math.floor(parseInt(c.StorageTotal,10)):0})),{NodesTotal:t,NodesAlive:n,Hosts:l.size,Tenants:s,LoadAverage:r,NumberOfCpus:i,StorageUsed:o,StorageTotal:a}}(p)),[p]),m=a.useMemo((()=>Array.from(new Set((null!==u&&void 0!==u?u:[]).map((e=>e.status)).filter(Boolean))).sort().map((e=>({value:e,content:e})))),[u]);return e.isLoading?(0,Le.jsx)(N_,{size:"l"}):(0,Le.jsxs)("div",{className:nT(),children:[(0,Le.jsx)(oe,{children:(0,Le.jsx)("title",{children:tT("page_title")})}),(0,Le.jsx)(rT,{stats:f,count:p.length}),(0,Le.jsxs)("div",{className:nT("controls"),children:[(0,Le.jsx)("div",{className:nT("control",{wide:!0}),children:(0,Le.jsx)(Yc,{placeholder:tT("controls_search-placeholder"),onChange:e=>{t((0,GE.g_)({clusterName:e}))},value:n})}),(0,Le.jsx)("div",{className:nT("control"),children:(0,Le.jsx)(ww,{multiple:!0,filterable:!0,hasClear:!0,placeholder:tT("controls_select-placeholder"),label:tT("controls_status-select-label"),value:r,options:m,onUpdate:e=>{t((0,GE.g_)({status:e}))},width:"max"})}),(0,Le.jsx)("div",{className:nT("control"),children:(0,Le.jsx)(ww,{multiple:!0,filterable:!0,hasClear:!0,placeholder:tT("controls_select-placeholder"),label:tT("controls_service-select-label"),value:i,options:d,onUpdate:e=>{t((0,GE.g_)({service:e}))},width:"max"})}),(0,Le.jsx)("div",{className:nT("control"),children:(0,Le.jsx)(ww,{multiple:!0,filterable:!0,hasClear:!0,placeholder:tT("controls_select-placeholder"),label:tT("controls_version-select-label"),value:o,options:h,onUpdate:e=>{t((0,GE.g_)({version:e}))},width:"max"})}),(0,Le.jsx)("div",{className:nT("control"),children:(0,Le.jsx)(VE,{popupWidth:242,items:l,showStatus:!0,onUpdate:c,sortable:!1},"TableColumnSetup")})]}),e.isError?(0,Le.jsx)(zc,{error:e.error,className:nT("error")}):null,(0,Le.jsx)("div",{className:nT("table-wrapper"),children:(0,Le.jsx)("div",{className:nT("table-content"),children:(0,Le.jsx)(qc,{columnsWidthLSKey:LT,wrapperClassName:nT("table"),data:p,columns:s,settings:{...Lo.LE,dynamicRender:!1},initialSortOrder:{columnId:AT.TITLE,order:Hc.ZP.ASCENDING}})})})]})}const HT=(0,le.Ge)("breadcrumbs");function VT(e){return a.createElement("button",Object.assign({},e,{type:"button",className:HT("switcher",{more:!0})}))}const GT=(0,le.Ge)("breadcrumbs");const WT=a.memo((function(e){let{item:t,isCurrent:n,isPrevCurrent:r,renderItemContent:i,renderItem:o}=e;const s=i?i(t,n,r):t.text;if(o)return o({item:t,children:s,isCurrent:n,isPrevCurrent:r});const l=t.title||t.text;return r||!n?void 0!==t.href?a.createElement(si,{key:t.text,view:"secondary",href:t.href,title:l,onClick:t.action,className:GT("item",{"prev-current":r})},s):a.createElement(VT,{key:t.text,title:l,onClick:t.action},s):a.createElement("div",{title:l,className:GT("item",{current:!0})},s)}));WT.displayName="Breadcrumbs.Item";const qT=JSON.parse('{"label_more":"Show more"}'),ZT=JSON.parse('{"label_more":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435"}'),YT=(0,mi.e)({en:qT,ru:ZT},"Breadcrumbs"),KT=(0,le.Ge)("breadcrumbs");function QT(e){let{popupStyle:t,popupPlacement:n,items:r}=e;return a.createElement(nC,{items:r,popupProps:{className:KT("popup",{staircase:"staircase"===t}),placement:n},renderSwitcher:e=>{let{onClick:t}=e;return a.createElement(VT,{title:YT("label_more"),onClick:t},"...")}})}QT.displayName="Breadcrumbs.More";const XT=(0,le.Ge)("breadcrumbs");function $T(e){let{renderItemDivider:t}=e;return a.createElement("div",{"aria-hidden":!0,className:XT("divider")},t?t():"/")}$T.displayName="Breadcrumbs.Separator";const JT=(0,le.Ge)("breadcrumbs");var eO,tO;!function(e){e[e.One=1]="One",e[e.Two=2]="Two"}(eO||(eO={})),function(e){e[e.Zero=0]="Zero",e[e.One=1]="One"}(tO||(tO={}));class nO extends a.Component{static prepareInitialState(e){const{firstDisplayedItemsCount:t}=e;return{calculated:!1,rootItem:t?e.items[0]:void 0,visibleItems:e.items.slice(t),hiddenItems:[],allItems:e.items}}static getDerivedStateFromProps(e,t){return t.allItems!==e.items?nO.prepareInitialState(e):null}constructor(e){super(e),this.handleResize=()=>{const e=nO.prepareInitialState(this.props);this.setState(e,this.recalculate)},this.handleResize=kt()(this.handleResize,200),"undefined"!==typeof window&&(this.resizeObserver=new ResizeObserver(this.handleResize)),this.container=a.createRef(),this.state=nO.prepareInitialState(e)}componentDidMount(){var e;this.recalculate(),null===(e=this.resizeObserver)||void 0===e||e.observe(this.container.current)}componentDidUpdate(e){e.items!==this.state.allItems&&this.recalculate()}componentWillUnmount(){var e;null===(e=this.resizeObserver)||void 0===e||e.disconnect()}render(){const{className:e,qa:t}=this.props,{calculated:n}=this.state;return a.createElement("div",{className:JT({calculated:n?"yes":"no"},e),"data-qa":t},a.createElement("div",{className:JT("inner"),ref:this.container},this.renderRootItem(),this.renderMoreItem(),this.renderVisibleItems()))}renderItem(e,t,n,r){return a.createElement(WT,{item:e,isCurrent:t,isPrevCurrent:n,renderItemContent:r||this.props.renderItemContent,renderItem:this.props.renderItem})}renderItemDivider(){const{renderItemDivider:e}=this.props;return a.createElement($T,{renderItemDivider:e})}renderRootItem(){const{renderRootContent:e}=this.props,{rootItem:t,visibleItems:n}=this.state,r=0===n.length;return t?this.renderItem(t,r,!1,e):null}renderVisibleItems(){const{visibleItems:e}=this.state;return e.map(((e,t,n)=>{const r=t===n.length-1,i=t===n.length-2;return a.createElement(a.Fragment,{key:t},this.renderItemDivider(),this.renderItem(e,r,i))}))}renderMoreItem(){const{hiddenItems:e}=this.state;if(0===e.length)return null;const{popupStyle:t,popupPlacement:n,renderItemDivider:r}=this.props;return a.createElement(a.Fragment,null,a.createElement($T,{renderItemDivider:r}),a.createElement(QT,{items:e,popupPlacement:n,popupStyle:t}))}recalculate(){var e;const{items:t,lastDisplayedItemsCount:n,firstDisplayedItemsCount:r}=this.props;let i=(null===(e=this.container.current)||void 0===e?void 0:e.offsetWidth)||0;if(this.container.current&&i>0){i+=4;const e=Array.from(this.container.current.querySelectorAll(".".concat(JT("divider")))),o=[...Array.from(this.container.current.querySelectorAll(".".concat(JT("switcher")))),...Array.from(this.container.current.querySelectorAll(".".concat(JT("item"))))],a=o.map(((e,t)=>e.scrollWidth+(t===o.length-1?4:8))),s=e.map((e=>e.offsetWidth)),l=a.reduce(((e,t,r,i)=>{const o=i.length-1===r,a=n===eO.Two&&i.length-2===r;return o||a?e+Math.min(t,200):e+t}),0);let c=l+s.reduce(((e,t)=>e+t),0),u=1;for(;c>i&&ua.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M11 2.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3ZM14 4a3 3 0 1 0-5.895.79L6.15 5.908a3 3 0 1 0 0 4.185l1.955 1.117A3.003 3.003 0 0 0 11 15a3 3 0 1 0-2.15-5.092L6.895 8.79a3.003 3.003 0 0 0 0-1.58L8.85 6.092A3 3 0 0 0 14 4Zm-3 6.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3ZM2.5 8a1.5 1.5 0 1 1 3 0 1.5 1.5 0 0 1-3 0Z",clipRule:"evenodd"})),iO=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M11.615 4.888c.814-.375.885-.714.885-.888 0-.174-.071-.513-.885-.888C10.8 2.737 9.538 2.5 8 2.5c-1.538 0-2.799.237-3.615.612-.814.375-.885.714-.885.888 0 .174.071.513.885.888C5.2 5.263 6.462 5.5 8 5.5c1.538 0 2.799-.237 3.615-.612Zm.885 1.235C11.4 6.708 9.792 7 8 7c-1.792 0-3.4-.292-4.5-.877V8c0 .174.071.513.885.888C5.2 9.263 6.462 9.5 8 9.5c1.538 0 2.799-.237 3.615-.612.814-.375.885-.714.885-.888V6.123Zm0 4C11.4 10.708 9.792 11 8 11c-1.792 0-3.4-.293-4.5-.877V12c0 .174.071.513.885.887.816.377 2.077.613 3.615.613 1.538 0 2.799-.236 3.615-.613.814-.374.885-.713.885-.887v-1.877ZM14 4c0-2-2.686-3-6-3S2 2 2 4v8c0 2 2.686 3 6 3s6-1 6-3V4Z",clipRule:"evenodd"})),oO=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M12 8.5a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5H4A1.5 1.5 0 0 1 2.5 11v-1A1.5 1.5 0 0 1 4 8.5h8Zm.89-1.366L11.488 4.33a1.5 1.5 0 0 0-1.342-.829H5.854a1.5 1.5 0 0 0-1.342.83L3.11 7.133A3 3 0 0 1 4 7h8a3 3 0 0 1 .89.134ZM15 9.18V11a3 3 0 0 1-3 3H4a3 3 0 0 1-3-3V9.18a5 5 0 0 1 .528-2.236L3.17 3.658A3 3 0 0 1 5.854 2h4.292a3 3 0 0 1 2.683 1.658l1.643 3.286A5 5 0 0 1 15 9.18Zm-6 .57a.75.75 0 0 0 0 1.5h2.5a.75.75 0 0 0 0-1.5H9Z",clipRule:"evenodd"})),aO=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M7 1.25a.75.75 0 0 0-1.5 0V2.5a3 3 0 0 0-3 3H1.25a.75.75 0 0 0 0 1.5H2.5v2H1.25a.75.75 0 0 0 0 1.5H2.5a3 3 0 0 0 3 3v1.25a.75.75 0 0 0 1.5 0V13.5h2v1.25a.75.75 0 0 0 1.5 0V13.5a3 3 0 0 0 3-3h1.25a.75.75 0 1 0 0-1.5H13.5V7h1.25a.75.75 0 1 0 0-1.5H13.5a3 3 0 0 0-3-3V1.25a.75.75 0 0 0-1.5 0V2.5H7V1.25ZM10.5 4h-5A1.5 1.5 0 0 0 4 5.5v5A1.5 1.5 0 0 0 5.5 12h5a1.5 1.5 0 0 0 1.5-1.5v-5A1.5 1.5 0 0 0 10.5 4Zm0 2.25a.75.75 0 0 0-.75-.75h-3.5a.75.75 0 0 0-.75.75v3.5a.75.75 0 0 0 .75.75h3.5a.75.75 0 0 0 .75-.75v-3.5ZM7 7h2v2H7V7Z",clipRule:"evenodd"})),sO=JSON.parse('{"breadcrumbs.tenant":"Tenant","breadcrumbs.node":"Node","breadcrumbs.pDisk":"PDisk","breadcrumbs.vDisk":"VDisk","breadcrumbs.tablet":"Tablet","breadcrumbs.tablets":"Tablets"}'),lO=(0,We.wZ)("ydb-header",{en:sO}),cO=e=>e.startsWith("/")?e.slice(1):e,uO=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{clusterName:n,clusterTab:r}=e;return[{text:n||Lo.DO,link:(0,$C.B7)(r,t),icon:(0,Le.jsx)(rO,{})}]},dO=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{tenantName:n}=e,r=n?cO(n):lO("breadcrumbs.tenant"),i=n?fs({...t,name:n}):void 0;return[...uO(e,t),{text:r,link:i,icon:(0,Le.jsx)(iO,{})}]},hO=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{tenantName:n,nodeId:r}=e;let i;const o=!n,a={...t,[us.bS]:us.m2.diagnostics,[ds.diagnosticsTab]:us.qQ.nodes};i=o?uO(e,t):dO(e,a);const s=r?"".concat(lO("breadcrumbs.node")," ").concat(r):lO("breadcrumbs.node"),l=r?bu(r,t):void 0,c=o?(0,Le.jsx)(oO,{}):(0,Le.jsx)(aO,{});return i.push({text:s,link:l,icon:c}),i},pO=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{nodeId:n,pDiskId:r}=e,i=hO({tenantName:void 0,nodeId:n}),o=r?"".concat(lO("breadcrumbs.pDisk")," ").concat(r):lO("breadcrumbs.pDisk"),a=r&&n?(0,Ta.ds)(r,n,t):void 0;return i.push({text:o,link:a}),i},fO=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{vDiskSlotId:n}=e,r=pO(e,t),i=n?"".concat(lO("breadcrumbs.vDisk")," ").concat(n):lO("breadcrumbs.vDisk");return r.push({text:i}),r},mO=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{tenantName:n,nodeIds:r}=e,i={...t,[us.bS]:us.m2.diagnostics,[ds.diagnosticsTab]:us.qQ.tablets};let o;o=n?dO(e,i):uO(e,t);const a=(0,Ta.ax)(Ta.ZP.tabletsFilters,void 0,{...t,nodeIds:r,path:n});return o.push({text:lO("breadcrumbs.tablets"),link:a}),o},gO=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{tabletId:n,tabletType:r}=e,i=mO(e,t);return i.push({text:n||lO("breadcrumbs.tablet"),icon:(0,Le.jsx)(DC,{text:(0,Lo.qV)(r)})}),i},vO=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};switch(e){case"cluster":return[...n,...uO(t,r)];case"tenant":return[...n,...dO(t,r)];case"node":return[...n,...hO(t,r)];case"pDisk":return[...n,...pO(t,r)];case"vDisk":return[...n,...fO(t,r)];case"tablets":return[...n,...mO(t,r)];case"tablet":return[...n,...gO(t,r)];default:return n}},yO=Me("header"),bO=e=>e&&!h_.j4?"/internal":h_.y3+"/internal";const xO=function(e){var t;let{mainPage:n}=e;const r=_a(),i=Ca(),o=Do((e=>e.singleClusterMode)),{page:s,pageBreadcrumbsOptions:l}=Do((e=>e.header)),c=(0,Ta.mB)(i),u=null===(t=c.clusterName)||void 0===t?void 0:t.toString(),{currentData:{clusterData:d}={}}=Pl.UM.useGetClusterInfoQuery(u),h=(null===d||void 0===d?void 0:d.Name)||u,p=a.useMemo((()=>{const e=[];let t=l;n&&e.push(n),h&&(t={...l,clusterName:h});return vO(s,t,e,c).map((e=>({...e,action:()=>{e.link&&r.push(e.link)}})))}),[h,n,r,c,s,l]);return(0,Le.jsxs)("header",{className:yO(),children:[(0,Le.jsx)("div",{children:(0,Le.jsx)(nO,{items:p,lastDisplayedItemsCount:1,firstDisplayedItemsCount:1,renderItemContent:e=>{let{icon:t,text:n}=e;return t?(0,Le.jsxs)("span",{className:yO("breadcrumb"),children:[(0,Le.jsx)("div",{className:yO("breadcrumb__icon"),children:t}),n]}):n}})}),(0,Le.jsx)(IC,{title:Lo.Ah,url:bO(o)})]})};var wO=n(48169);const SO=Me("basic-node-viewer"),_O=e=>{let t,{node:n,additionalNodesProps:r,className:i}=e;return null!==r&&void 0!==r&&r.getNodeRef?t=r.getNodeRef(n)+"internal":n.NodeId&&(t=(0,wO.wq)(n.NodeId)+"internal"),(0,Le.jsx)("div",{className:SO(null,i),children:n?(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("div",{className:SO("title"),children:"Node"}),(0,Le.jsx)(Il,{status:n.SystemState,name:n.Host}),t&&(0,Le.jsx)("a",{rel:"noopener noreferrer",className:SO("link",{external:!0}),href:t,target:"_blank",children:(0,Le.jsx)(we.J,{data:pu})}),(0,Le.jsxs)("div",{className:SO("id"),children:[(0,Le.jsx)("label",{className:SO("label"),children:"NodeID"}),(0,Le.jsx)("label",{children:n.NodeId})]}),n.DC&&(0,Le.jsx)(zC,{tags:[n.DC]}),n.Roles&&(0,Le.jsx)(zC,{tags:n.Roles,tagsType:"blue"})]}):(0,Le.jsx)("div",{className:"error",children:"no data"})})},CO=Me("ydb-pool-usage"),EO=e=>{let t="green";return e>60&&e<=80?t="yellow":e>80&&(t="red"),t},TO=e=>{let{data:t={}}=e;const{Threads:n,Name:r="Unknown",Usage:i=0}=t,o=i&&n,a=Math.floor(100*i),s=a>100?100:a;return(0,Le.jsxs)("div",{className:CO(),children:[(0,Le.jsxs)("div",{className:CO("info"),children:[(0,Le.jsx)("div",{className:CO("pool-name"),children:r}),o&&(0,Le.jsxs)("div",{className:CO("value"),children:[(0,Le.jsxs)("div",{className:CO("percents"),children:[a<1?"<1":a,"%"]}),(0,Le.jsxs)("div",{className:CO("threads"),children:["(\xd7",n,")"]})]})]}),(0,Le.jsx)("div",{className:CO("visual"),children:(0,Le.jsx)("div",{className:CO("usage-line",{type:EO(s)}),style:{width:"".concat(s,"%")}})})]})},OO=Me("full-node-viewer"),NO=e=>{var t,n,r,i;let{node:o,className:a}=e;const s=null===o||void 0===o||null===(t=o.Endpoints)||void 0===t?void 0:t.map((e=>{let{Name:t,Address:n}=e;return{label:t,value:n}})),l=[];null!==o&&void 0!==o&&null!==(n=o.Tenants)&&void 0!==n&&n.length&&l.push({label:"Database",value:o.Tenants[0]}),l.push({label:"Version",value:null===o||void 0===o?void 0:o.Version},{label:"Uptime",value:null===o||void 0===o?void 0:o.Uptime},{label:"DC",value:(null===o||void 0===o?void 0:o.DataCenterDescription)||(null===o||void 0===o?void 0:o.DC)},{label:"Rack",value:null===o||void 0===o?void 0:o.Rack});const c=null===o||void 0===o||null===(r=o.LoadAverage)||void 0===r?void 0:r.map(((e,t)=>({label:Lo.x5[t],value:(0,Le.jsx)(Iu,{value:e,percents:!0,colorizeProgress:!0,capacity:100})})));return(0,Le.jsx)("div",{className:"".concat(OO()," ").concat(a),children:o?(0,Le.jsxs)("div",{className:OO("common-info"),children:[(0,Le.jsxs)("div",{children:[(0,Le.jsx)("div",{className:OO("section-title"),children:"Pools"}),(0,Le.jsx)("div",{className:OO("section",{pools:!0}),children:null===o||void 0===o||null===(i=o.PoolStats)||void 0===i?void 0:i.map(((e,t)=>(0,Le.jsx)(TO,{data:e},t)))})]}),s&&s.length&&(0,Le.jsx)(Ss,{title:"Endpoints",className:OO("section"),info:s}),(0,Le.jsx)(Ss,{title:"Common info",className:OO("section"),info:l}),(0,Le.jsx)(Ss,{title:"Load average",className:OO("section",{average:!0}),info:c})]}):(0,Le.jsx)("div",{className:"error",children:"no data"})})},kO=e=>{var t;if(null===(t=e.SystemStateInfo)||void 0===t||!t.length)return{};const n=e.SystemStateInfo[0];return(0,Na.Ns)(n)},jO=Dl.h.injectEndpoints({endpoints:e=>({getNodeInfo:e.query({queryFn:async(e,t)=>{let{nodeId:n}=e,{signal:r}=t;try{const e=await window.api.getNodeInfo(n,{signal:r});return{data:kO(e)}}catch(i){return{error:i}}},providesTags:["All"]}),getNodeStructure:e.query({queryFn:async(e,t)=>{let{nodeId:n}=e,{signal:r}=t;try{return{data:await window.api.getStorageInfo({nodeId:n},{signal:r})}}catch(i){return{error:i}}},providesTags:["All"]})}),overrideExisting:"throw"}),IO=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 1.5a6.501 6.501 0 0 0-6.445 5.649.75.75 0 1 0 1.488.194A5.001 5.001 0 0 1 11.57 4.5h-1.32a.75.75 0 0 0 0 1.5h3a.75.75 0 0 0 .75-.75v-3a.75.75 0 0 0-1.5 0v1.06A6.48 6.48 0 0 0 8 1.5Zm-5.25 13a.75.75 0 0 1-.75-.75v-3a.75.75 0 0 1 .75-.75h3a.75.75 0 0 1 0 1.5H4.43a5.001 5.001 0 0 0 8.528-2.843.75.75 0 1 1 1.487.194A6.501 6.501 0 0 1 3.5 12.691v1.059a.75.75 0 0 1-.75.75Z",clipRule:"evenodd"}));var PO=n(76506);const DO=(0,le.Ge)("modal");function AO(e){let{open:t=!1,keepMounted:n=!1,disableBodyScrollLock:r=!1,disableEscapeKeyDown:i,disableOutsideClick:o,disableFocusTrap:s,disableAutoFocus:l,focusTrap:c=!0,autoFocus:u=!0,restoreFocusRef:d,onEscapeKeyDown:h,onEnterKeyDown:p,onOutsideClick:f,onClose:m,onTransitionEnter:g,onTransitionEntered:v,onTransitionExit:y,onTransitionExited:b,children:x,style:w,contentOverflow:S="visible",className:_,contentClassName:C,"aria-labelledby":E,"aria-label":T,container:O,qa:N}=e;const k=a.useRef(null),j=a.useRef(null),[I,P]=a.useState(!1);Jx({enabled:!r&&(t||I)});const D=kr({enabled:t||I,restoreFocusRef:d,focusTrapped:!0});return Qr({open:t,disableEscapeKeyDown:i,disableOutsideClick:o,onEscapeKeyDown:h,onEnterKeyDown:p,onOutsideClick:f,onClose:m,contentRefs:[j],type:"modal"}),a.createElement(me.Z,{nodeRef:k,in:t,addEndListener:e=>{var t;return null===(t=k.current)||void 0===t?void 0:t.addEventListener("animationend",e)},classNames:(0,ge.Y)(DO),mountOnEnter:!n,unmountOnExit:!n,appear:!0,onEnter:()=>{P(!0),null===g||void 0===g||g()},onExit:()=>{P(!0),null===y||void 0===y||y()},onEntered:()=>{P(!1),null===v||void 0===v||v()},onExited:()=>{P(!1),null===b||void 0===b||b()}},a.createElement(jr.h,{container:O},a.createElement("div",{ref:k,style:w,className:DO({open:t},_),"data-qa":N},a.createElement("div",{className:DO("content-aligner")},a.createElement("div",{className:DO("content-wrapper")},a.createElement(qr,{enabled:!s&&c&&t&&!I,autoFocus:!l&&u},a.createElement("div",Object.assign({ref:j,tabIndex:-1,role:"dialog","aria-modal":t,"aria-label":T,"aria-labelledby":E,className:DO("content",{"has-scroll":"auto"===S},C)},D),x)))))))}const RO=JSON.parse('{"close":"Close dialog"}'),MO=JSON.parse('{"close":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u0434\u0438\u0430\u043b\u043e\u0433\u043e\u0432\u043e\u0435 \u043e\u043a\u043d\u043e"}'),LO=(0,mi.e)({en:RO,ru:MO},"Dialog"),FO=(0,le.Ge)("dialog-btn-close");function zO(e){let{onClose:t}=e;return a.createElement("div",{className:FO()},a.createElement(Ie.z,{view:"flat",size:"l",className:FO("btn"),onClick:e=>t(e,{isOutsideClick:!1}),extraProps:{"aria-label":LO("close")}},a.createElement(we.J,{data:tt.Z,size:20})))}const BO=(0,le.Ge)("dialog-body");const UO=(0,le.Ge)("dialog-divider");const HO=(0,le.Ge)("dialog-footer");class VO extends a.Component{constructor(){super(...arguments),this.errorTooltipRef=a.createRef(),this.handleKeyDown=e=>{"Enter"===e.key&&(e.preventDefault(),this.props.onClickButtonApply&&this.props.onClickButtonApply(e))}}componentDidMount(){this.props.listenKeyEnter&&this.attachKeyDownListeners()}componentDidUpdate(e){!this.props.listenKeyEnter&&e.listenKeyEnter&&this.detachKeyDownListeners(),this.props.listenKeyEnter&&!e.listenKeyEnter&&this.attachKeyDownListeners()}componentWillUnmount(){this.detachKeyDownListeners()}render(){const{onClickButtonCancel:e,onClickButtonApply:t,loading:n,textButtonCancel:r,textButtonApply:i,propsButtonCancel:o,propsButtonApply:s,preset:l,children:c,errorText:u,showError:d,renderButtons:h}=this.props,p=a.createElement("div",{className:HO("button",{action:"cancel"})},a.createElement(Ie.z,Object.assign({view:i?"flat":"normal",size:"l",width:"max",onClick:e,disabled:n},o),r)),f=a.createElement("div",{className:HO("button",{action:"apply"})},a.createElement(Ie.z,Object.assign({ref:this.errorTooltipRef,type:"submit",view:"action",size:"l",width:"max",onClick:t,loading:n,className:HO("button-apply",{preset:l})},s),i),u&&a.createElement(ti,{open:d,anchorRef:this.errorTooltipRef,placement:["bottom","top"],disableLayer:!0,hasArrow:!0},a.createElement("div",{className:HO("error")},u)));return a.createElement("div",{className:HO()},a.createElement("div",{className:HO("children")},c),a.createElement("div",{className:HO("bts-wrapper")},h?h(f,p):a.createElement(a.Fragment,null,r&&p,i&&f)))}attachKeyDownListeners(){setTimeout((()=>{window.addEventListener("keydown",this.handleKeyDown)}),0)}detachKeyDownListeners(){window.removeEventListener("keydown",this.handleKeyDown)}}VO.defaultProps={preset:"default",showError:!1,listenKeyEnter:!1};const GO=(0,le.Ge)("dialog-header");const WO=(0,le.Ge)("dialog");class qO extends a.Component{constructor(){super(...arguments),this.handleCloseButtonClick=e=>{const{onClose:t}=this.props;t(e.nativeEvent,"closeButtonClick")}}render(){const{container:e,children:t,open:n,disableBodyScrollLock:r,disableEscapeKeyDown:i,disableOutsideClick:o,disableFocusTrap:s,disableAutoFocus:l,restoreFocusRef:c,keepMounted:u,size:d,contentOverflow:h="visible",className:p,modalClassName:f,hasCloseButton:m,onEscapeKeyDown:g,onEnterKeyDown:v,onOutsideClick:y,onClose:b,onTransitionEnter:x,onTransitionEntered:w,onTransitionExit:S,onTransitionExited:_,"aria-label":C,"aria-labelledby":E,qa:T}=this.props;return a.createElement(AO,{open:n,contentOverflow:h,disableBodyScrollLock:r,disableEscapeKeyDown:i,disableOutsideClick:o,disableFocusTrap:s,disableAutoFocus:l,restoreFocusRef:c,keepMounted:u,onEscapeKeyDown:g,onEnterKeyDown:v,onOutsideClick:y,onClose:b,onTransitionEnter:x,onTransitionEntered:w,onTransitionExit:S,onTransitionExited:_,className:WO("modal",f),"aria-label":C,"aria-labelledby":E,container:e,qa:T},a.createElement("div",{className:WO({size:d,"has-close":m,"has-scroll":"auto"===h},p)},t,m&&a.createElement(zO,{onClose:this.handleCloseButtonClick})))}}qO.defaultProps={disableBodyScrollLock:!1,disableEscapeKeyDown:!1,disableOutsideClick:!1,keepMounted:!1,hasCloseButton:!0},qO.Footer=VO,qO.Header=function(e){const{caption:t="",insertBefore:n,insertAfter:r,className:i,id:o}=e;return a.createElement("div",{className:GO(null,i)},n,a.createElement("div",{className:GO("caption"),id:o},t),r)},qO.Body=function(e){const{className:t,hasBorders:n=!1}=e;return a.createElement("div",{className:BO({"has-borders":n},t)},e.children)},qO.Divider=function(e){let{className:t}=e;return a.createElement("div",{className:UO(null,t)})};const ZO=JSON.parse('{"default-error":"Something went wrong, action cannot be completed","no-rights-error":"You don\'t have enough rights to complete the operation","button-confirm":"Confirm","button-cancel":"Cancel","button-close":"Close"}'),YO=(0,We.wZ)("ydb-critical-action-dialog",{en:ZO}),KO=Me("ydb-critical-dialog"),QO=e=>403===e.status?YO("no-rights-error"):e.statusText?e.statusText:YO("default-error");function XO(e){let{visible:t,text:n,onClose:r,onConfirm:i,onConfirmActionSuccess:o,onConfirmActionError:s}=e;const[l,c]=a.useState(!1),[u,d]=a.useState(),h=async e=>(e.preventDefault(),c(!0),i().then((()=>{o(),r()})).catch((e=>{s(),d(e)})).finally((()=>{c(!1)})));return(0,Le.jsx)(qO,{open:t,hasCloseButton:!1,className:KO(),size:"s",onClose:r,onTransitionExited:()=>d(void 0),children:u?(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsxs)(qO.Body,{className:KO("body"),children:[(0,Le.jsx)("span",{className:KO("error-icon"),children:(0,Le.jsx)(PO.Z,{width:"24",height:"22"})}),QO(u)]}),(0,Le.jsx)(qO.Footer,{loading:!1,preset:"default",textButtonCancel:YO("button-close"),onClickButtonCancel:r})]}):(0,Le.jsxs)("form",{onSubmit:h,children:[(0,Le.jsxs)(qO.Body,{className:KO("body"),children:[(0,Le.jsx)("span",{className:KO("warning-icon"),children:(0,Le.jsx)(we.J,{data:Tl.Z,size:24})}),n]}),(0,Le.jsx)(qO.Footer,{loading:l,preset:"default",textButtonApply:YO("button-confirm"),textButtonCancel:YO("button-cancel"),propsButtonApply:{type:"submit"},onClickButtonCancel:r,onClickButtonApply:()=>{}})]})})}function $O(e){let{children:t,onConfirmAction:n,onConfirmActionSuccess:r,dialogContent:i,buttonDisabled:o=!1,buttonView:s="action",buttonClassName:l,withPopover:c=!1,popoverContent:u,popoverPlacement:d="right",popoverDisabled:h=!0}=e;const[p,f]=a.useState(!1),[m,g]=a.useState(!1),v=()=>(0,Le.jsx)(Ie.z,{onClick:()=>f(!0),view:s,disabled:o,loading:!o&&m,className:l,children:t});return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(XO,{visible:p,text:i,onConfirm:async()=>{g(!0),await n(),g(!1)},onConfirmActionSuccess:async()=>{if(r){g(!0);try{await r()}catch{}finally{g(!1)}}},onConfirmActionError:()=>{g(!1)},onClose:()=>{f(!1)}}),c?(0,Le.jsx)(fi,{content:u,placement:d,disabled:h,children:v()}):v()]})}var JO=n(99399);const eN=JSON.parse('{"noTabletsData":"No tablets data","Type":"Type","Tablet":"Tablet","State":"State","Node ID":"Node ID","Node FQDN":"Node FQDN","Generation":"Generation","Uptime":"Uptime","dialog.kill":"The tablet will be restarted. Do you want to proceed?","controls.kill-not-allowed":"You don\'t have enough rights to restart tablet"}'),tN=(0,We.wZ)("ydb-tablets",{en:eN}),nN=Me("tablets"),rN=[{name:"Type",get header(){return tN("Type")},render:e=>{let{row:t}=e;return(0,Le.jsxs)("span",{children:[t.Type," ",t.Leader?(0,Le.jsx)(Fi.x,{color:"secondary",children:"leader"}):""]})}},{name:"TabletId",get header(){return tN("Tablet")},render:e=>{let{row:t}=e;const n=t.TabletId&&(0,Ta.ax)(Ta.ZP.tablet,{id:t.TabletId},{nodeId:t.NodeId,type:t.Type});return(0,Le.jsx)(_l,{to:n,children:t.TabletId})}},{name:"State",get header(){return tN("State")},render:e=>{let{row:t}=e;return(0,Le.jsx)(ft,{theme:Lu(t.State),children:t.State})}},{name:"NodeId",get header(){return tN("Node ID")},render:e=>{let{row:t}=e;const n=void 0===t.NodeId?void 0:bu(t.NodeId);return(0,Le.jsx)(_l,{to:n,children:t.NodeId})},align:"right"},{name:"FQDN",get header(){return tN("Node FQDN")},render:e=>{let{row:t}=e;return t.fqdn?(0,Le.jsx)(Il,{name:t.fqdn,showStatus:!1,hasClipboardButton:!0}):(0,Le.jsx)("span",{children:"\u2014"})}},{name:"Generation",get header(){return tN("Generation")},align:"right"},{name:"Uptime",get header(){return tN("Uptime")},render:e=>{let{row:t}=e;return(0,ks.fG)(t.ChangeTime)},sortAccessor:e=>-Number(e.ChangeTime),align:"right"},{name:"Actions",sortable:!1,resizeable:!1,header:"",render:e=>{let{row:t}=e;return(0,Le.jsx)(iN,{...t})}}];function iN(e){const t=e.State===Pu.g.Stopped,n=Ao(),{isUserAllowedToMakeChanges:r}=Do((e=>e.authentication));return(0,Le.jsx)($O,{buttonView:"outlined",dialogContent:tN("dialog.kill"),onConfirmAction:()=>window.api.killTablet(e.TabletId),onConfirmActionSuccess:()=>{n(JO.zg.util.invalidateTags(["All"]))},buttonDisabled:t||!r,withPopover:!0,popoverContent:tN("controls.kill-not-allowed"),popoverDisabled:r,children:(0,Le.jsx)(we.J,{data:IO})})}function oN(e){let{nodeId:t,path:n,className:r}=e;const{autorefresh:i}=Do((e=>e.schema));let o=zl.CN;const a=void 0===t?void 0:String(t);void 0!==a?o={nodes:[String(a)]}:n&&(o={path:n});const{currentData:s,isFetching:l,error:c}=JO.zg.useGetTabletsInfoQuery(o,{pollingInterval:i}),u=l&&void 0===s,d=Do((e=>(0,JO.Sq)(e,a,n)));return u?(0,Le.jsx)(Qc,{}):c?(0,Le.jsx)(zc,{error:c}):(0,Le.jsx)("div",{className:nN(null,r),children:(0,Le.jsx)(qc,{columns:rN,data:d,settings:Lo.LE,emptyDataMessage:tN("noTabletsData")})})}var aN=n(92820);const sN=(0,p_.P1)((e=>e),(e=>jO.endpoints.getNodeStructure.select({nodeId:e}))),lN=(0,p_.P1)((e=>e),((e,t)=>sN(t)),((e,t)=>t(e).data)),cN=(0,p_.P1)(((e,t)=>Number(t)),((e,t)=>lN(e,t)),((e,t)=>{const n=null===t||void 0===t?void 0:t.StoragePools,r={};null===n||void 0===n||n.forEach((t=>{const n=t.Groups;null===n||void 0===n||n.forEach((n=>{var i;const o=null===(i=n.VDisks)||void 0===i?void 0:i.filter((t=>t.NodeId===e));null===o||void 0===o||o.forEach((n=>{const i=(0,ks.a2)(n.VDiskId),o=kh(n.PDisk),a=o.PDiskId;r[String(a)]||(r[String(a)]={vDisks:{},...o}),r[String(a)].vDisks[i]={...n,PDiskId:a,NodeId:e,StoragePoolName:t.Name}}))}))}));const i=Object.keys(r).reduce(((e,t)=>{const n=r[t].vDisks,i=Object.keys(n).reduce(((e,t,r)=>(e.push({...n[t],id:t,order:r}),e)),[]);return e[t]={...r[t],vDisks:i},e}),{});return i})),uN=JSON.parse('{"path":"Path","guid":"GUID","category":"Category","type":"Type","size":"Size","state":"State","device":"Device","realtime":"Realtime","serial-number":"SerialNumber","links":"Links","developer-ui":"Developer UI","pdisk-page":"PDisk page"}'),dN=(0,We.wZ)("ydb-pDisk-info",{en:uN}),hN=Me("ydb-pdisk-info");function pN(e){let{pDisk:t,nodeId:n,isPDiskPage:r=!1,...i}=e;const{PDiskId:o,Path:a,Guid:s,Category:l,Type:c,Device:u,Realtime:d,State:h,SerialNumber:p,TotalSize:f,AvailableSize:m}=t,g=Number(f),v=Number(m),y=[];if(Td(a)&&y.push({label:dN("path"),value:a}),Td(s)&&y.push({label:dN("guid"),value:s}),Td(l)&&(y.push({label:dN("category"),value:l}),y.push({label:dN("type"),value:c})),g>=0&&v>=0&&y.push({label:dN("size"),value:(0,Le.jsx)(Iu,{value:g-v,capacity:g,formatValues:ks.q3,colorizeProgress:!0})}),Td(h)&&y.push({label:dN("state"),value:h}),Td(u)&&y.push({label:dN("device"),value:(0,Le.jsx)(Il,{status:u})}),Td(d)&&y.push({label:dN("realtime"),value:(0,Le.jsx)(Il,{status:d})}),Td(p)&&y.push({label:dN("serial-number"),value:p||Lo.jX}),Td(o)&&Td(n)){const e=(0,Ta.ds)(o,n),t=(0,wO.ok)({nodeId:n,pDiskId:o});y.push({label:dN("links"),value:(0,Le.jsxs)("span",{className:hN("links"),children:[!r&&(0,Le.jsx)(IC,{title:dN("pdisk-page"),url:e,external:!1}),(0,Le.jsx)(IC,{title:dN("developer-ui"),url:t})]})})}return(0,Le.jsx)(ws,{info:y,...i})}const fN=JSON.parse('{"pdisk.developer-ui-button-title":"PDisk Developer UI page","vdisk.developer-ui-button-title":"VDisk Developer UI page"}'),mN=JSON.parse('{"pdisk.developer-ui-button-title":"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 PDisk \u0432 Developer UI","vdisk.developer-ui-button-title":"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 VDisk \u0432 Developer UI"}'),gN=(0,We.wZ)("ydb-node-page",{en:fN,ru:mN}),vN=Me("kv-node-structure");function yN(e){let{label:t,value:n,className:r}=e;return(0,Le.jsxs)("span",{className:vN("pdisk-title-item",r),children:[t&&(0,Le.jsxs)("span",{className:vN("pdisk-title-item-label"),children:[t,":"]}),(0,Le.jsx)("span",{className:vN("pdisk-title-item-value"),children:n})]})}const bN=JSON.parse('{"slot-id":"VDisk Slot Id","pool-name":"Storage Pool Name","kind":"Kind","guid":"GUID","incarnation-guid":"Incarnation GUID","instance-guid":"Instance GUID","replication-status":"Replicated","state-status":"VDisk State","space-status":"Disk Space","fresh-rank-satisfaction":"Fresh Rank Satisfaction","level-rank-satisfaction":"Level Rank Satisfaction","front-queues":"Front Queues","has-unreadable-blobs":"Has Unreadable Blobs","size":"Size","read-throughput":"Read Throughput","write-throughput":"Write Throughput","links":"Links","vdisk-page":"VDisk Page","developer-ui":"Developer UI","yes":"Yes","no":"No"}'),xN=(0,We.wZ)("ydb-vDisk-info",{en:bN}),wN=Me("ydb-vdisk-info");function SN(e){var t,n;let{data:r,isVDiskPage:i=!1,...o}=e;const{AllocatedSize:a,DiskSpace:s,FrontQueues:l,Guid:c,Replicated:u,VDiskState:d,VDiskSlotId:h,Kind:p,SatisfactionRank:f,AvailableSize:m,HasUnreadableBlobs:g,IncarnationGuid:v,InstanceGuid:y,StoragePoolName:b,ReadThroughput:x,WriteThroughput:w,PDiskId:S,NodeId:_}=r,C=[];var E,T;(Td(h)&&C.push({label:xN("slot-id"),value:h}),Td(b)&&C.push({label:xN("pool-name"),value:b}),Td(d)&&C.push({label:xN("state-status"),value:d}),Number(a)>=0&&Number(m)>=0&&C.push({label:xN("size"),value:(0,Le.jsx)(Iu,{value:a,capacity:Number(a)+Number(m),formatValues:ks.q3,colorizeProgress:!0})}),Td(p)&&C.push({label:xN("kind"),value:p}),Td(c)&&C.push({label:xN("guid"),value:c}),Td(v)&&C.push({label:xN("incarnation-guid"),value:v}),Td(y)&&C.push({label:xN("instance-guid"),value:y}),Td(u)&&C.push({label:xN("replication-status"),value:xN(u?"yes":"no")}),Td(s)&&C.push({label:xN("space-status"),value:(0,Le.jsx)(Il,{status:s})}),Td(null===f||void 0===f||null===(t=f.FreshRank)||void 0===t?void 0:t.Flag))&&C.push({label:xN("fresh-rank-satisfaction"),value:(0,Le.jsx)(Il,{status:null===f||void 0===f||null===(E=f.FreshRank)||void 0===E?void 0:E.Flag})});Td(null===f||void 0===f||null===(n=f.LevelRank)||void 0===n?void 0:n.Flag)&&C.push({label:xN("level-rank-satisfaction"),value:(0,Le.jsx)(Il,{status:null===f||void 0===f||null===(T=f.LevelRank)||void 0===T?void 0:T.Flag})});if(Td(l)&&C.push({label:xN("front-queues"),value:(0,Le.jsx)(Il,{status:l})}),Td(g)&&C.push({label:xN("has-unreadable-blobs"),value:xN(g?"yes":"no")}),Td(x)&&C.push({label:xN("read-throughput"),value:(0,Ou.Qt)(x)}),Td(w)&&C.push({label:xN("write-throughput"),value:(0,Ou.Qt)(w)}),Td(S)&&Td(_)&&Td(h)){const e=(0,Ta.By)(h,S,_),t=(0,wO.yf)({nodeId:_,pDiskId:S,vDiskSlotId:h});C.push({label:xN("links"),value:(0,Le.jsxs)("span",{className:wN("links"),children:[!i&&(0,Le.jsx)(IC,{title:xN("vdisk-page"),url:e,external:!1}),(0,Le.jsx)(IC,{title:xN("developer-ui"),url:t})]})})}return(0,Le.jsx)(Ss,{info:C,...o})}const _N=Me("kv-node-structure");function CN(e){let{data:t}=e;const{VDiskState:n,VDiskId:r}=t;return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsxs)("div",{className:_N("row"),children:[(0,Le.jsx)("span",{className:_N("title"),children:"VDisk "}),(0,Le.jsx)(Il,{status:n===ph.OK?al.K.Green:al.K.Red,name:(0,ks.a2)(r)})]}),(0,Le.jsx)("div",{className:_N("column"),children:(0,Le.jsx)(SN,{className:_N("section"),data:t})})]})}const EN=Me("kv-node-structure");var TN;!function(e){e.slotId="VDiskSlotId",e.VDiskState="VDiskState",e.Size="Size",e.Info="Info"}(TN||(TN={}));const ON={VDiskSlotId:"Slot id",VDiskState:"Status",Size:"Size",Info:""};function NN(e){let{pDiskId:t,selectedVdiskId:n,nodeId:r}=e;return[{name:TN.slotId,header:ON[TN.slotId],width:100,render:e=>{let{row:i}=e;const o=i.VDiskSlotId;let a=null;return Td(r)&&Td(t)&&Td(o)&&(a=(0,wO.yf)({nodeId:r,pDiskId:t,vDiskSlotId:o})),(0,Le.jsxs)("div",{className:EN("vdisk-id",{selected:i.id===n}),children:[(0,Le.jsx)("span",{children:o}),a&&(0,Le.jsx)(Ie.z,{size:"s",className:EN("external-button",{hidden:!0}),href:a,target:"_blank",title:gN("vdisk.developer-ui-button-title"),children:(0,Le.jsx)(we.J,{data:pu})})]})},align:Hc.ZP.LEFT},{name:TN.VDiskState,header:ON[TN.VDiskState],width:70,render:e=>{let{row:t}=e;return(0,Le.jsx)(Il,{status:t.VDiskState===ph.OK?al.K.Green:al.K.Red})},sortAccessor:e=>e.VDiskState===ph.OK?1:0,align:Hc.ZP.CENTER},{name:TN.Size,header:ON[TN.Size],width:100,render:e=>{let{row:t}=e;return(0,Le.jsx)(Iu,{value:t.AllocatedSize,capacity:Number(t.AllocatedSize)+Number(t.AvailableSize),formatValues:ks.q3,colorizeProgress:!0})},sortAccessor:e=>Number(e.AllocatedSize),align:Hc.ZP.CENTER},{name:TN.Info,header:ON[TN.Info],width:70,render:e=>{let{row:t}=e;return(0,Le.jsx)(fi,{placement:["right"],content:(0,Le.jsx)(CN,{data:t}),tooltipContentClassName:EN("vdisk-details"),children:(0,Le.jsx)(Ie.z,{view:"flat-secondary",className:EN("vdisk-details-button",{selected:t.id===n}),children:(0,Le.jsx)(we.J,{data:Cl.Z,size:18})})})},sortable:!1}]}function kN(e){let{id:t,data:n,selectedVdiskId:r,nodeId:i,unfolded:o}=e;const[s,l]=a.useState(null!==o&&void 0!==o&&o),{TotalSize:c=0,AvailableSize:u=0,Device:d,PDiskId:h,Type:p,vDisks:f}=n,m=Number(c),g=Number(u);return(0,Le.jsxs)("div",{className:EN("pdisk"),id:t,children:[(0,Le.jsxs)("div",{className:EN("pdisk-header"),children:[(0,Le.jsxs)("div",{className:EN("pdisk-title-wrapper"),children:[(0,Le.jsx)(Il,{status:d}),(0,Le.jsx)(yN,{label:"PDiskID",value:h,className:EN("pdisk-title-id")}),(0,Le.jsx)(yN,{value:p,className:EN("pdisk-title-type")}),(0,Le.jsx)(Iu,{value:m-g,capacity:m,formatValues:ks.q3,colorizeProgress:!0,className:EN("pdisk-title-size")}),(0,Le.jsx)(yN,{label:"VDisks",value:f.length})]}),(0,Le.jsx)(Ie.z,{onClick:s?()=>{l(!1)}:()=>{l(!0)},view:"flat-secondary",children:(0,Le.jsx)(_e,{direction:s?"top":"bottom"})})]}),s&&(Vx()(n)?(0,Le.jsx)("div",{children:"No information about PDisk"}):(0,Le.jsxs)("div",{children:[(0,Le.jsx)(pN,{pDisk:n,nodeId:i,className:EN("pdisk-details")}),(0,Le.jsxs)("div",{className:EN("vdisks-container"),children:[(0,Le.jsx)("div",{className:EN("vdisks-header"),children:"VDisks"}),(0,Le.jsx)(Hc.ZP,{theme:"yandex-cloud",data:f,columns:NN({nodeId:i,pDiskId:h,selectedVdiskId:r}),settings:{...Lo.LE,dynamicRender:!1},rowClassName:e=>e.id===r?EN("selected-vdisk"):""})]})]}))]})}const jN=Me("kv-node-structure");function IN(e){let{type:t,id:n}=e;return"".concat(t,"-").concat(n)}const PN=function(e){let{nodeId:t,className:n}=e;const r=Do((e=>cN(e,t))),{currentData:i,isFetching:o,error:s}=jO.useGetNodeStructureQuery({nodeId:t},{pollingInterval:Lo.ME}),l=o&&void 0===i,{pdiskId:c,vdiskId:u}=aN.parse(window.location.href,!0).query,d=a.useRef(null),h=a.useRef(!1);return a.useEffect((()=>{if(!Vx()(r)&&!h.current&&d.current){const t=document.getElementById(IN({type:"pdisk",id:c}));let n=0;if(u){var e;const t=null===(e=r[c])||void 0===e?void 0:e.vDisks,i=null===t||void 0===t?void 0:t.find((e=>e.id===u)),o=i?document.querySelector(".data-table"):void 0,a=(null===i||void 0===i?void 0:i.order)||0;o&&(n+=o.offsetTop+40*a)}t&&(d.current.scrollTo({behavior:"smooth",top:n||t.offsetTop}),h.current=!0)}}),[r,c,u]),(0,Le.jsx)("div",{className:jN(),ref:d,children:(0,Le.jsx)("div",{className:n,children:l?(0,Le.jsx)(N_,{size:"m"}):s?(0,Le.jsx)(zc,{error:s}):(()=>{const e=Object.keys(r);return e.length>0?e.map((e=>(0,Le.jsx)(kN,{data:r[e],id:IN({type:"pdisk",id:e}),unfolded:c===e,selectedVdiskId:u,nodeId:t},e))):"There is no information about node structure."})()})})},DN=Me("node"),AN="Storage";const RN=function(e){var t;const n=a.useRef(null),r=Ao(),i=Ca(),o=null!==(t=Ea(Ta.ZP.node))&&void 0!==t?t:Object.create(null),{id:s,activeTab:l}=o.params,{tenantName:c}=(0,Ta.mB)(i),{currentData:u,isFetching:d,error:h}=jO.useGetNodeInfoQuery({nodeId:s},{pollingInterval:Lo.ME}),p=d&&void 0===u,f=u,{activeTabVerified:m,nodeTabs:g}=a.useMemo((()=>{var e;const t=((null===f||void 0===f||null===(e=f.Roles)||void 0===e?void 0:e.find((e=>e===AN)))?yu:yu.filter((e=>e.id!==fu))).map((e=>({...e,title:e.name})));let n=t.find((e=>{let{id:t}=e;return t===l}));return n||(n=t[0]),{activeTabVerified:n,nodeTabs:t}}),[l,f]);a.useEffect((()=>{var e;const t=(null===f||void 0===f||null===(e=f.Tenants)||void 0===e?void 0:e[0])||(null===c||void 0===c?void 0:c.toString());r((0,Rl.J)("node",{tenantName:t,nodeId:s}))}),[r,f,s,c]);const v=()=>{switch(m.id){case fu:return(0,Le.jsx)("div",{className:DN("storage"),children:(0,Le.jsx)(d_,{nodeId:s,parentContainer:n.current})});case mu:return(0,Le.jsx)(oN,{nodeId:s,className:DN("node-page-wrapper")});case gu:return(0,Le.jsx)(NO,{node:f,className:DN("overview-wrapper")});case vu:return(0,Le.jsx)(PN,{className:DN("node-page-wrapper"),nodeId:s});default:return!1}};return p?(0,Le.jsx)(N_,{size:"l"}):h?(0,Le.jsx)(zc,{error:h}):f?(0,Le.jsxs)("div",{className:DN(null,e.className),ref:n,children:[(0,Le.jsx)(oe,{titleTemplate:"%s \u2014 ".concat(f.Host," \u2014 YDB Monitoring"),defaultTitle:"".concat(f.Host," \u2014 YDB Monitoring"),children:(0,Le.jsx)("title",{children:m.title})}),(0,Le.jsx)(_O,{node:f,additionalNodesProps:e.additionalNodesProps,className:DN("header")}),(0,Le.jsx)("div",{className:DN("tabs"),children:(0,Le.jsx)(wt,{size:"l",items:g,activeTab:m.id,wrapTo:(e,t)=>{let{id:n}=e;return(0,Le.jsx)(bl,{to:(0,Ta.ax)(Ta.ZP.node,{id:s,activeTab:n}),className:DN("tab"),children:t},n)},allowNotSelected:!0})}),(0,Le.jsx)("div",{className:DN("content"),children:v()})]}):(0,Le.jsx)("div",{className:"error",children:"no node data"})},MN=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 1.5a6.5 6.5 0 1 1-6.445 7.348.75.75 0 1 1 1.487-.194A5.001 5.001 0 1 0 4.43 4.5h1.32a.75.75 0 0 1 0 1.5h-3A.75.75 0 0 1 2 5.25v-3a.75.75 0 0 1 1.5 0v1.06A6.48 6.48 0 0 1 8 1.5Z",clipRule:"evenodd"})),LN=Me("ydb-disk-page-title");function FN(e){let{entityName:t,status:n,id:r,className:i}=e;return(0,Le.jsxs)("div",{className:LN(null,i),children:[(0,Le.jsx)("span",{className:LN("prefix"),children:t}),(0,Le.jsx)(kl,{className:LN("icon"),status:n,size:"s"}),r]})}const zN=Me("ydb-page-meta");function BN(e){let{items:t,loading:n,className:r}=e;return(0,Le.jsx)("div",{className:zN(null,r),children:n?(0,Le.jsx)(rl,{className:zN("skeleton")}):t.filter((e=>Boolean(e))).join("\xa0\xa0\xb7\xa0\xa0")})}const UN=Dl.h.injectEndpoints({endpoints:e=>({getPdiskInfo:e.query({queryFn:async(e,t)=>{let{nodeId:n,pDiskId:r}=e,{signal:i}=t;try{const e=function(e){var t,n,r,i;let[o,a]=e;const s=kh(null===(t=o.PDiskStateInfo)||void 0===t?void 0:t[0]),l=null===(n=a.SystemStateInfo)||void 0===n?void 0:n[0],c=(0,Na.Ns)(l);return{...s,NodeId:null!==(r=s.NodeId)&&void 0!==r?r:c.NodeId,NodeHost:c.Host,NodeType:null===(i=c.Roles)||void 0===i?void 0:i[0],NodeDC:c.DC}}(await Promise.all([window.api.getPDiskInfo({nodeId:n,pDiskId:r},{signal:i}),window.api.getNodeInfo(n,{signal:i})]));return{data:e}}catch(o){return{error:o}}},providesTags:["All"]}),getStorageInfo:e.query({queryFn:async(e,t)=>{let{nodeId:n,pDiskId:r}=e,{signal:i}=t;try{const e=function(e,t,n){var r;const i=[];return null===(r=e.StoragePools)||void 0===r||r.forEach((e=>{var r;return null===(r=e.Groups)||void 0===r?void 0:r.forEach((r=>{var o;(null===(o=r.VDisks)||void 0===o?void 0:o.some((e=>{var r,i,o,a;const s=null!==(r=e.PDiskId)&&void 0!==r?r:null===(i=e.PDisk)||void 0===i?void 0:i.PDiskId,l=null!==(o=e.NodeId)&&void 0!==o?o:null===(a=e.PDisk)||void 0===a?void 0:a.NodeId;return s===Number(t)&&l===Number(n)})))&&i.push(Ph(r,e))}))})),i}(await window.api.getStorageInfo({nodeId:n,version:ka.v1},{signal:i}),r,n);return{data:e}}catch(o){return{error:o}}},providesTags:["All"]})}),overrideExisting:"throw"}),HN=JSON.parse('{"fqdn":"FQDN","pdisk":"PDisk","groups":"Groups","node":"Node","restart-pdisk-button":"Restart PDisk","restart-pdisk-dialog":"PDisk will be restarted. Do you want to proceed?","restart-pdisk-not-allowed":"You don\'t have enough rights to restart PDisk"}'),VN=(0,We.wZ)("ydb-pDisk-page",{en:HN}),GN=Me("ydb-pdisk-page");function WN(e){let{data:t,nodesMap:n,loading:r}=e;const i=a.useMemo((()=>RS(n)),[n]);return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("div",{className:GN("groups-title"),children:VN("groups")}),(0,Le.jsx)("div",{children:r?(0,Le.jsx)(Qc,{}):(0,Le.jsx)(qc,{columnsWidthLSKey:uS,data:t,columns:i,settings:Lo.LE})})]})}const qN=Dl.h.injectEndpoints({endpoints:e=>({getTablet:e.query({queryFn:async(e,t)=>{let{id:n}=e,{signal:r}=t;try{const[e,t,i]=await Promise.all([window.api.getTablet({id:n},{signal:r}),window.api.getTabletHistory({id:n},{signal:r}),window.api.getNodesList({signal:r})]),o=(0,Na.dn)(i),a=Object.keys(t).reduce(((e,n)=>{var r;const i=null===(r=t[n])||void 0===r?void 0:r.TabletStateInfo;if(i&&i.length){const t=i.find((e=>e.Leader))||i[0],{ChangeTime:r,Generation:a,State:s,Leader:l,FollowerId:c}=t,u=o&&n?o.get(Number(n)):void 0;e.push({nodeId:n,generation:a,changeTime:r,state:s,leader:l,followerId:c,fqdn:u})}return e}),[]),{TabletStateInfo:s=[]}=e,[l={}]=s,{TabletId:c}=l;return{data:{id:c,data:l,history:a}}}catch(i){return{error:i}}},providesTags:["All"]}),getTabletDescribe:e.query({queryFn:async(e,t)=>{let{tenantId:n}=e,{signal:r}=t;try{const e=await window.api.getTabletDescribe(n,{signal:r}),{SchemeShard:t,PathId:i}=n;return{data:(null===e||void 0===e?void 0:e.Path)||"".concat(t,":").concat(i)}}catch(i){return{error:i}}},providesTags:["All"]})}),overrideExisting:"throw"}),ZN=JSON.parse('{"tablet.header":"Tablet","controls.kill":"Restart","controls.stop":"Stop","controls.resume":"Resume","controls.kill-not-allowed":"You don\'t have enough rights to restart tablet","controls.stop-not-allowed":"You don\'t have enough rights to stop tablet","controls.resume-not-allowed":"You don\'t have enough rights to resume tablet","dialog.kill":"The tablet will be restarted. Do you want to proceed?","dialog.stop":"The tablet will be stopped. Do you want to proceed?","dialog.resume":"The tablet will be resumed. Do you want to proceed?","emptyState":"The tablet was not found"}'),YN=(0,We.wZ)("ydb-tablet-page",{en:ZN}),KN=e=>{let{tablet:t,fetchData:n}=e;const{TabletId:r,HiveId:i}=t,{isUserAllowedToMakeChanges:o}=Do((e=>e.authentication)),s=t.State===Pu.g.Stopped,l=t.State!==Pu.g.Stopped&&t.State!==Pu.g.Dead,c=t.State===Pu.g.Stopped||t.State===Pu.g.Deleted;return(0,Le.jsxs)("div",{className:ek("controls"),children:[(0,Le.jsx)($O,{dialogContent:YN("dialog.kill"),onConfirmAction:()=>window.api.killTablet(r),onConfirmActionSuccess:n,buttonClassName:ek("control"),buttonDisabled:s||!o,withPopover:!0,popoverContent:YN("controls.kill-not-allowed"),popoverPlacement:"bottom",popoverDisabled:o,children:YN("controls.kill")}),i&&"0"!==i?(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)($O,{dialogContent:YN("dialog.stop"),onConfirmAction:()=>window.api.stopTablet(r,i),onConfirmActionSuccess:n,buttonClassName:ek("control"),buttonDisabled:c||!o,withPopover:!0,popoverContent:YN("controls.stop-not-allowed"),popoverPlacement:"bottom",popoverDisabled:o,children:YN("controls.stop")}),(0,Le.jsx)($O,{dialogContent:YN("dialog.resume"),onConfirmAction:()=>window.api.resumeTablet(r,i),onConfirmActionSuccess:n,buttonClassName:ek("control"),buttonDisabled:l||!o,withPopover:!0,popoverContent:YN("controls.resume-not-allowed"),popoverPlacement:"bottom",popoverDisabled:o,children:YN("controls.resume")})]}):null]})},QN=e=>{let{tablet:t,tenantPath:n}=e;const{ChangeTime:r,Generation:i,FollowerId:o,NodeId:a,HiveId:s,State:l,Type:c,TenantId:{SchemeShard:u}={}}=t,d=s&&"0"!==s,h=l===Pu.g.Active,p=[{label:"Database",value:n||"-"}];return d&&p.push({label:"HiveId",value:(0,Le.jsx)(si,{href:(0,Ta.ax)(Ta.ZP.tablet,{id:s}),target:"_blank",children:s})}),u&&p.push({label:"SchemeShard",value:(0,Le.jsx)(si,{href:(0,Ta.ax)(Ta.ZP.tablet,{id:u}),target:"_blank",children:u})}),p.push({label:"Type",value:c},{label:"State",value:l}),h&&p.push({label:"Uptime",value:(0,ks.fG)(r)}),p.push({label:"Generation",value:i},{label:"Node",value:(0,Le.jsx)(bl,{className:ek("link"),to:bu(String(a)),children:a})}),o&&p.push({label:"Follower",value:o}),(0,Le.jsx)(Ss,{info:p})},XN=[{name:"Generation",align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return t.generation}},{name:"Change time",align:Hc.ZP.RIGHT,sortable:!1,render:e=>{let{row:t}=e;return(0,ks.fG)(t.changeTime)}},{name:"State",sortable:!1,render:e=>{let{row:t}=e;return t.state}},{name:"Follower ID",sortable:!1,render:e=>{let{row:t}=e;return t.leader?"leader":t.followerId}},{name:"Node ID",align:Hc.ZP.RIGHT,sortable:!1,render:e=>{let{row:t}=e;return(0,Le.jsx)(_l,{to:bu(t.nodeId),children:t.nodeId})}},{name:"Node FQDN",sortable:!1,width:300,render:e=>{let{row:t}=e;return t.fqdn?(0,Le.jsx)(Il,{name:t.fqdn,showStatus:!1,hasClipboardButton:!0}):(0,Le.jsx)("span",{children:"\u2014"})}}],$N={displayIndices:!1},JN=e=>{let{history:t}=e;return(0,Le.jsx)(qc,{columnsWidthLSKey:"tabletTableColumnsWidth",data:t,columns:XN,settings:$N,initialSortOrder:{columnId:"Generation",order:Hc.ZP.DESCENDING}})},ek=Me("tablet-page");var tk=n(99090),nk=n.n(tk),rk=n(83570),ik=n.n(rk),ok=n(40510);const ak=JSON.parse('{"page.title":"Tablets"}'),sk=JSON.parse('{"page.title":"\u0422\u0430\u0431\u043b\u0435\u0442\u043a\u0438"}'),lk=(0,We.wZ)("ydb-tablets-filters-page",{en:ak,ru:sk}),ck=Me("tablets-filters");class uk extends a.Component{constructor(){super(...arguments),this.state={nodeFilter:[],tenantPath:"",clusterName:""},this.reloadDescriptor=-1,this.makeRequest=()=>{const{nodeFilter:e,tenantPath:t}=this.state;this.props.getTabletsInfo({nodes:e,path:[t]})},this.getTablets=()=>{const{timeoutForRequest:e}=this.props;clearInterval(this.reloadDescriptor),this.reloadDescriptor=setTimeout((()=>{this.makeRequest(),this.reloadDescriptor=-1}),e)},this.handleNodeFilterChange=e=>{this.setState({nodeFilter:e},(()=>{this.props.clearWasLoadingFlag(),this.makeRequest()}))},this.handleStateFilterChange=e=>{const{setStateFilter:t}=this.props;t(e)},this.handleTypeFilterChange=e=>{const{setTypeFilter:t}=this.props;t(e)},this.renderTablet=(e,t)=>{const{filteredTablets:n,size:r}=this.props;return(0,Le.jsx)(RC,{tablet:n[e],tenantName:this.state.tenantPath,size:r,className:ck("tablet")},t)},this.renderContent=()=>{const{nodeFilter:e,tenantPath:t}=this.state,{tablets:n,filteredTablets:r,nodes:i,stateFilter:o,typeFilter:s,error:l}=this.props,c=Au.map((e=>({value:e,content:e}))),u=Array.from(new Set(...[nk()(n,(e=>e.Type))])).map((e=>({value:e,content:e}))),d=nk()(i,(e=>({content:e.Id,value:e.Id,meta:e.Host})));return(0,Le.jsxs)("div",{className:ck(),children:[t?(0,Le.jsx)("div",{className:ck("tenant"),children:(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("span",{className:ck("label"),children:"Database: "})," ",t]})}):null,(0,Le.jsx)(hk,{nodesForSelect:d,nodeFilter:e,onChangeNodes:this.handleNodeFilterChange,states:c,stateFilter:o,onChangeStates:this.handleStateFilterChange,types:u,typeFilter:s,onChangeTypes:this.handleTypeFilterChange}),l&&(0,Le.jsx)("div",{className:"error",children:l}),r.length>0?(0,Le.jsx)("div",{className:ck("items"),children:(0,Le.jsx)(ik(),{itemRenderer:this.renderTablet,length:r.length,type:"uniform"})}):!l&&(0,Le.jsx)("div",{className:ck("empty-message"),children:"no tablets"})]})},this.renderView=()=>{const{loading:e,wasLoaded:t,error:n}=this.props;return e&&!t?uk.renderLoader():n&&"object"===typeof n?403===n.status?(0,Le.jsx)(Fc,{}):(0,Le.jsx)("div",{children:n.statusText}):this.renderContent()}}static renderLoader(){return(0,Le.jsx)("div",{className:"loader",children:(0,Le.jsx)(Di,{size:"l"})})}componentDidMount(){const{setStateFilter:e,setTypeFilter:t,setHeaderBreadcrumbs:n}=this.props,r=(0,Ta.mB)(this.props.location),{nodeIds:i,type:o,path:a,state:s,clusterName:l}=r,c=uk.parseNodes(i);if(s){e(uk.getStateFiltersFromColor(s))}o&&t([o]),this.setState({nodeFilter:c,tenantPath:a,clusterName:l},(()=>{this.makeRequest()})),n("tablets",{tenantName:a})}componentDidUpdate(e){const{loading:t,error:n}=this.props;!n&&e.path&&this.props.path&&e.path!==this.props.path&&(this.props.clearWasLoadingFlag(),this.getTablets()),n||t||-1!==this.reloadDescriptor||this.getTablets()}componentWillUnmount(){clearInterval(this.reloadDescriptor)}render(){const{tenantPath:e,clusterName:t}=this.state;return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(oe,{children:(0,Le.jsx)("title",{children:"".concat(lk("page.title")," \u2014 ").concat(e||t||Lo.DO)})}),this.renderView()]})}}uk.parseNodes=e=>{if(Array.isArray(e))return e.map(Number).filter(Number.isInteger)},uk.getStateFiltersFromColor=e=>Ru[e]||[e],uk.CONTROL_WIDTH=220,uk.POPUP_WIDTH=300;const dk=e=>{let{nodesForSelect:t,nodeFilter:n,onChangeNodes:r,states:i,stateFilter:o,onChangeStates:a,types:s,typeFilter:l,onChangeTypes:c}=e;return(0,Le.jsxs)("div",{className:ck("filters"),children:[(0,Le.jsx)("div",{className:ck("filter-wrapper"),children:(0,Le.jsx)(ww,{multiple:!0,label:"Node ID",width:uk.CONTROL_WIDTH,popupWidth:uk.POPUP_WIDTH,placeholder:"All",options:t,value:n,onUpdate:r,renderOption:e=>(0,Le.jsxs)("div",{className:ck("node"),children:[(0,Le.jsx)("div",{children:e.content}),(0,Le.jsx)("div",{className:ck("node-meta"),title:e.meta,children:e.meta})]}),getOptionHeight:()=>40})}),(0,Le.jsx)("div",{className:ck("filter-wrapper"),children:(0,Le.jsx)(ww,{multiple:!0,label:"multiple",width:uk.CONTROL_WIDTH,placeholder:"All",options:i,value:o,onUpdate:a})}),(0,Le.jsx)("div",{className:ck("filter-wrapper"),children:(0,Le.jsx)(ww,{multiple:!0,label:"Types",width:uk.CONTROL_WIDTH,placeholder:"All",options:s,value:l,onUpdate:c})})]})},hk=a.memo(dk,((e,t)=>pp()(e.nodeFilter,t.nodeFilter)&&pp()(e.stateFilter,t.stateFilter)&&pp()(e.typeFilter,t.typeFilter))),pk={getTabletsInfo:ok.NM,clearWasLoadingFlag:ok.$S,setStateFilter:ok.nq,setTypeFilter:ok.jk,setHeaderBreadcrumbs:Rl.J},fk=(0,ae.$j)((e=>{const{nodes:t,wasLoaded:n,loading:r,timeoutForRequest:i,stateFilter:o,typeFilter:a,error:s}=e.tabletsFilters;return{tablets:(0,ok.ct)(e),filteredTablets:(0,ok.TI)(e),nodes:t,timeoutForRequest:i,wasLoaded:n,loading:r,stateFilter:o,typeFilter:a,error:s}}),pk)(uk);var mk="undefined"!==typeof window?window:null,gk=null===mk,vk=gk?void 0:mk.document,yk="addEventListener",bk="removeEventListener",xk="getBoundingClientRect",wk="_a",Sk="_b",_k="_c",Ck="horizontal",Ek=function(){return!1},Tk=gk?"calc":["","-webkit-","-moz-","-o-"].filter((function(e){var t=vk.createElement("div");return t.style.cssText="width:"+e+"calc(9px)",!!t.style.length})).shift()+"calc",Ok=function(e){return"string"===typeof e||e instanceof String},Nk=function(e){if(Ok(e)){var t=vk.querySelector(e);if(!t)throw new Error("Selector "+e+" did not match a DOM element");return t}return e},kk=function(e,t,n){var r=e[t];return void 0!==r?r:n},jk=function(e,t,n,r){if(t){if("end"===r)return 0;if("center"===r)return e/2}else if(n){if("start"===r)return 0;if("center"===r)return e/2}return e},Ik=function(e,t){var n=vk.createElement("div");return n.className="gutter gutter-"+t,n},Pk=function(e,t,n){var r={};return Ok(t)?r[e]=t:r[e]=Tk+"("+t+"% - "+n+"px)",r},Dk=function(e,t){var n;return(n={})[e]=t+"px",n};const Ak=function(e,t){if(void 0===t&&(t={}),gk)return{};var n,r,i,o,a,s,l=e;Array.from&&(l=Array.from(l));var c=Nk(l[0]).parentNode,u=getComputedStyle?getComputedStyle(c):null,d=u?u.flexDirection:null,h=kk(t,"sizes")||l.map((function(){return 100/l.length})),p=kk(t,"minSize",100),f=Array.isArray(p)?p:l.map((function(){return p})),m=kk(t,"maxSize",1/0),g=Array.isArray(m)?m:l.map((function(){return m})),v=kk(t,"expandToMin",!1),y=kk(t,"gutterSize",10),b=kk(t,"gutterAlign","center"),x=kk(t,"snapOffset",30),w=Array.isArray(x)?x:l.map((function(){return x})),S=kk(t,"dragInterval",1),_=kk(t,"direction",Ck),C=kk(t,"cursor",_===Ck?"col-resize":"row-resize"),E=kk(t,"gutter",Ik),T=kk(t,"elementStyle",Pk),O=kk(t,"gutterStyle",Dk);function N(e,t,r,i){var o=T(n,t,r,i);Object.keys(o).forEach((function(t){e.style[t]=o[t]}))}function k(){return s.map((function(e){return e.size}))}function j(e){return"touches"in e?e.touches[0][r]:e[r]}function I(e){var t=s[this.a],n=s[this.b],r=t.size+n.size;t.size=e/this.size*r,n.size=r-e/this.size*r,N(t.element,t.size,this[Sk],t.i),N(n.element,n.size,this[_k],n.i)}function P(e){var n,r=s[this.a],i=s[this.b];this.dragging&&(n=j(e)-this.start+(this[Sk]-this.dragOffset),S>1&&(n=Math.round(n/S)*S),n<=r.minSize+r.snapOffset+this[Sk]?n=r.minSize+this[Sk]:n>=this.size-(i.minSize+i.snapOffset+this[_k])&&(n=this.size-(i.minSize+this[_k])),n>=r.maxSize-r.snapOffset+this[Sk]?n=r.maxSize+this[Sk]:n<=this.size-(i.maxSize-i.snapOffset+this[_k])&&(n=this.size-(i.maxSize+this[_k])),I.call(this,n),kk(t,"onDrag",Ek)(k()))}function D(){var e=s[this.a].element,t=s[this.b].element,r=e[xk](),a=t[xk]();this.size=r[n]+a[n]+this[Sk]+this[_k],this.start=r[i],this.end=r[o]}function A(e){var t=function(e){if(!getComputedStyle)return null;var t=getComputedStyle(e);if(!t)return null;var n=e[a];return 0===n?null:n-=_===Ck?parseFloat(t.paddingLeft)+parseFloat(t.paddingRight):parseFloat(t.paddingTop)+parseFloat(t.paddingBottom)}(c);if(null===t)return e;if(f.reduce((function(e,t){return e+t}),0)>t)return e;var n=0,r=[],i=e.map((function(i,o){var a=t*i/100,s=jk(y,0===o,o===e.length-1,b),l=f[o]+s;return a0&&r[i]-n>0){var a=Math.min(n,r[i]-n);n-=a,o=e-a}return o/t*100}))}function R(){var e=this,n=s[e.a].element,r=s[e.b].element;e.dragging&&kk(t,"onDragEnd",Ek)(k()),e.dragging=!1,mk[bk]("mouseup",e.stop),mk[bk]("touchend",e.stop),mk[bk]("touchcancel",e.stop),mk[bk]("mousemove",e.move),mk[bk]("touchmove",e.move),e.stop=null,e.move=null,n[bk]("selectstart",Ek),n[bk]("dragstart",Ek),r[bk]("selectstart",Ek),r[bk]("dragstart",Ek),n.style.userSelect="",n.style.webkitUserSelect="",n.style.MozUserSelect="",n.style.pointerEvents="",r.style.userSelect="",r.style.webkitUserSelect="",r.style.MozUserSelect="",r.style.pointerEvents="",e.gutter.style.cursor="",e.parent.style.cursor="",vk.body.style.cursor=""}function M(e){if(!("button"in e)||0===e.button){var n=this,r=s[n.a].element,i=s[n.b].element;n.dragging||kk(t,"onDragStart",Ek)(k()),e.preventDefault(),n.dragging=!0,n.move=P.bind(n),n.stop=R.bind(n),mk[yk]("mouseup",n.stop),mk[yk]("touchend",n.stop),mk[yk]("touchcancel",n.stop),mk[yk]("mousemove",n.move),mk[yk]("touchmove",n.move),r[yk]("selectstart",Ek),r[yk]("dragstart",Ek),i[yk]("selectstart",Ek),i[yk]("dragstart",Ek),r.style.userSelect="none",r.style.webkitUserSelect="none",r.style.MozUserSelect="none",r.style.pointerEvents="none",i.style.userSelect="none",i.style.webkitUserSelect="none",i.style.MozUserSelect="none",i.style.pointerEvents="none",n.gutter.style.cursor=C,n.parent.style.cursor=C,vk.body.style.cursor=C,D.call(n),n.dragOffset=j(e)-n.end}}_===Ck?(n="width",r="clientX",i="left",o="right",a="clientWidth"):"vertical"===_&&(n="height",r="clientY",i="top",o="bottom",a="clientHeight"),h=A(h);var L=[];function F(e){var t=e.i===L.length,n=t?L[e.i-1]:L[e.i];D.call(n);var r=t?n.size-e.minSize-n[_k]:e.minSize+n[Sk];I.call(n,r)}return s=l.map((function(e,t){var r,i={element:Nk(e),size:h[t],minSize:f[t],maxSize:g[t],snapOffset:w[t],i:t};if(t>0&&((r={a:t-1,b:t,dragging:!1,direction:_,parent:c})[Sk]=jk(y,t-1===0,!1,b),r[_k]=jk(y,!1,t===l.length-1,b),"row-reverse"===d||"column-reverse"===d)){var o=r.a;r.a=r.b,r.b=o}if(t>0){var a=E(t,_,i.element);!function(e,t,r){var i=O(n,t,r);Object.keys(i).forEach((function(t){e.style[t]=i[t]}))}(a,y,t),r[wk]=M.bind(r),a[yk]("mousedown",r[wk]),a[yk]("touchstart",r[wk]),c.insertBefore(a,i.element),r.gutter=a}return N(i.element,i.size,jk(y,0===t,t===l.length-1,b),t),t>0&&L.push(r),i})),s.forEach((function(e){var t=e.element[xk]()[n];t0){var r=L[n-1],i=s[r.a],o=s[r.b];i.size=t[n-1],o.size=e,N(i.element,i.size,r[Sk],i.i),N(o.element,o.size,r[_k],o.i)}}))},getSizes:k,collapse:function(e){F(s[e])},destroy:function(e,t){L.forEach((function(r){if(!0!==t?r.parent.removeChild(r.gutter):(r.gutter[bk]("mousedown",r[wk]),r.gutter[bk]("touchstart",r[wk])),!0!==e){var i=T(n,r.a.size,r[Sk]);Object.keys(i).forEach((function(e){s[r.a].element.style[e]="",s[r.b].element.style[e]=""}))}}))},parent:c,pairs:L}};function Rk(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&-1===t.indexOf(r)&&(n[r]=e[r]);return n}var Mk=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.componentDidMount=function(){var e=this.props;e.children;var t=e.gutter,n=Rk(e,["children","gutter"]);n.gutter=function(e,n){var r;return t?r=t(e,n):(r=document.createElement("div")).className="gutter gutter-"+n,r.__isSplitGutter=!0,r},this.split=Ak(this.parent.children,n)},t.prototype.componentDidUpdate=function(e){var t=this,n=this.props;n.children;var r=n.minSize,i=n.sizes,o=n.collapsed,a=Rk(n,["children","minSize","sizes","collapsed"]),s=e.minSize,l=e.sizes,c=e.collapsed,u=["maxSize","expandToMin","gutterSize","gutterAlign","snapOffset","dragInterval","direction","cursor"].map((function(n){return t.props[n]!==e[n]})).reduce((function(e,t){return e||t}),!1);if(Array.isArray(r)&&Array.isArray(s)){var d=!1;r.forEach((function(e,t){d=d||e!==s[t]})),u=u||d}else u=!(!Array.isArray(r)&&!Array.isArray(s))||(u||r!==s);if(u)a.minSize=r,a.sizes=i||this.split.getSizes(),this.split.destroy(!0,!0),a.gutter=function(e,t,n){return n.previousSibling},this.split=Ak(Array.from(this.parent.children).filter((function(e){return!e.__isSplitGutter})),a);else if(i){var h=!1;i.forEach((function(e,t){h=h||e!==l[t]})),h&&this.split.setSizes(this.props.sizes)}Number.isInteger(o)&&(o!==c||u)&&this.split.collapse(o)},t.prototype.componentWillUnmount=function(){this.split.destroy(),delete this.split},t.prototype.render=function(){var e=this,t=this.props;t.sizes,t.minSize,t.maxSize,t.expandToMin,t.gutterSize,t.gutterAlign,t.snapOffset,t.dragInterval,t.direction,t.cursor,t.gutter,t.elementStyle,t.gutterStyle,t.onDrag,t.onDragStart,t.onDragEnd,t.collapsed;var n=t.children,r=Rk(t,["sizes","minSize","maxSize","expandToMin","gutterSize","gutterAlign","snapOffset","dragInterval","direction","cursor","gutter","elementStyle","gutterStyle","onDrag","onDragStart","onDragEnd","collapsed","children"]);return a.createElement("div",Object.assign({},{ref:function(t){e.parent=t}},r),n)},t}(a.Component);Mk.propTypes={sizes:Vo().arrayOf(Vo().number),minSize:Vo().oneOfType([Vo().number,Vo().arrayOf(Vo().number)]),maxSize:Vo().oneOfType([Vo().number,Vo().arrayOf(Vo().number)]),expandToMin:Vo().bool,gutterSize:Vo().number,gutterAlign:Vo().string,snapOffset:Vo().oneOfType([Vo().number,Vo().arrayOf(Vo().number)]),dragInterval:Vo().number,direction:Vo().string,cursor:Vo().string,gutter:Vo().func,elementStyle:Vo().func,gutterStyle:Vo().func,onDrag:Vo().func,onDragStart:Vo().func,onDragEnd:Vo().func,collapsed:Vo().number,children:Vo().arrayOf(Vo().element)},Mk.defaultProps={sizes:void 0,minSize:void 0,maxSize:void 0,expandToMin:void 0,gutterSize:void 0,gutterAlign:void 0,snapOffset:void 0,dragInterval:void 0,direction:void 0,cursor:void 0,gutter:void 0,elementStyle:void 0,gutterStyle:void 0,onDrag:void 0,onDragStart:void 0,onDragEnd:void 0,collapsed:void 0,children:void 0};const Lk=Mk,Fk=Me("kv-split"),zk=[0,100],Bk=[50,50];const Uk=function(e){const[t,n]=a.useState(),r=t=>{const{defaultSizePaneKey:n}=e;localStorage.setItem(n,t.join(","))};return a.useEffect((()=>{const{collapsedSizes:t,triggerCollapse:i}=e;if(i){const e=t||zk;r(e),n(e)}}),[e.triggerCollapse]),a.useEffect((()=>{const{triggerExpand:t,defaultSizes:i}=e,o=i||Bk;t&&(r(o),n(o))}),[e.triggerExpand]),(0,Le.jsx)(a.Fragment,{children:(0,Le.jsx)(Lk,{direction:e.direction||"horizontal",sizes:t||(()=>{var t;const{defaultSizePaneKey:n,defaultSizes:r=Bk,initialSizes:i}=e;if(i)return i;return(null===(t=localStorage.getItem(n))||void 0===t?void 0:t.split(",").map(Number))||r})(),minSize:e.minSize||[0,0],onDrag:t=>{const{onSplitDragAdditional:n}=e;n&&n(),r(t)},className:Fk(null,e.direction||"horizontal"),gutterSize:8,onDragStart:()=>{const{onSplitStartDragAdditional:t}=e;t&&t(),n(void 0)},expandToMin:!0,children:e.children})})},Hk=Uk;var Vk=n(6748),Gk=n(8511),Wk=n(93717);const qk=Me("heatmap"),Zk={width:0,height:0},Yk=10,Kk=2,Qk=e=>{const[t,n]=a.useState(Zk),{tablets:r}=e,i=a.useRef(null),o=a.useRef(null);a.useEffect((()=>{const e=i.current,n=e.getContext("2d");n.clearRect(0,0,e.offsetWidth,e.offsetHeight),r.map(function(e){return(n,r)=>{const{columnsCount:i}=t,o=r%i*(Yk+Kk),a=Math.floor(r/i)*(Yk+Kk);e.fillStyle=n.color||"grey",e.fillRect(o,a,Yk,Yk)}}(n))})),a.useLayoutEffect((()=>{const e=o.current;if(e){const t=e.offsetWidth-15,i=Math.floor(t/(Yk+Kk)),o=Math.ceil(r.length/i);n({width:t,height:o*(Yk+Kk),columnsCount:i,rowsCount:o})}}),[]);const s=()=>{let e=i.current,t=0;for(;e;)t+=e.offsetTop,e=e.offsetParent;return t},l=()=>{let e=i.current,t=0;for(;e;)t+=e.offsetLeft,e=e.offsetParent;return t},c=(e,n)=>{const{columnsCount:r}=t,i=Yk+Kk,o=Yk+Kk,a=Math.floor(e/i);return r*Math.floor(n/o)+a},u=kt()(((t,n)=>{const i=new CustomEvent("scroll");window.dispatchEvent(i);const o=e.parentRef.current,a=t-l()+o.scrollLeft,u=n-s()+o.scrollTop,d=c(a,u),h=r[d];if(h){const r={name:h.currentMetric,value:h.formattedValue};e.showTooltip(void 0,h,"tablet",r,{left:t-20,top:n-20})}else e.hideTooltip()}),20);return(0,Le.jsx)("div",{ref:o,className:qk("canvas-container"),onMouseLeave:()=>{setTimeout((()=>{e.hideTooltip()}),40)},children:(0,Le.jsx)("canvas",{ref:i,width:t.width,height:t.height,onClick:t=>{const n=e.parentRef.current,i=t.clientX-l()+n.scrollLeft,o=t.clientY-s()+n.scrollTop,a=c(i,o),u=r[a];u&&window.open((e=>{const{TabletId:t}=e,n=window.location.hostname,r=(0,Ta.ax)(Ta.ZP.tablet,{id:t}),i=[n,h_.EZ,r].map((e=>e.startsWith("/")?e.slice(1):e)).filter(Boolean).join("/");return"".concat("https://").concat(i)})(u),"_blank")},onMouseMove:e=>u(e.clientX,e.clientY)})})},Xk={r:255,g:4,b:0},$k={r:255,g:219,b:77},Jk={r:59,g:201,b:53},ej={CPU:{min:0,max:1e6},Network:{min:0,max:1e9},Storage:{min:0,max:2e9},DataSize:{min:0,max:2e9},RowCount:{min:0},IndexSize:{min:0}},tj=e=>{const t=e.toString(16);return 1===t.length?"0".concat(t):t},nj=(e,t,n)=>{if(1===e)return[t];if(2===e)return[t,n];const r=(t.r-n.r)/(e-1),i=(t.g-n.g)/(e-1),o=(t.b-n.b)/(e-1),a=[];for(let s=0;s(e=>{let{r:t,g:n,b:r}=e;return"#".concat(tj(t)).concat(tj(n)).concat(tj(r))})(e)))},rj=e=>{const t=Math.floor(e/2),n=t+1;return[...nj(e%2===0?t:t+1,Jk,$k),...nj(n,$k,Xk).slice(1)]},ij=(e,t)=>{const n=new Set,r=ej[e]||{};t.forEach((t=>{n.add(Number(t.metrics[e]))})),Number.isInteger(r.min)&&n.add(r.min),Number.isInteger(r.max)&&n.add(r.max);const i=Array.from(n.values()).sort(((e,t)=>e-t));return{min:i[0],max:i[i.length-1]}},oj=Me("histogram"),aj=e=>{const t=a.useRef(),{data:n={},maxCount:r}=e,{count:i,leftBound:o,rightBound:s,color:l}=n,c=i/r*100;return(0,Le.jsx)("div",{ref:t,className:oj("item"),style:{backgroundColor:l,height:"".concat(c,"%")},onMouseEnter:()=>{const n=t.current;e.showTooltip(n,{count:i,leftBound:o,rightBound:s},"histogram")},onMouseLeave:e.hideTooltip})},sj=e=>{const{tablets:t,currentMetric:n}=e,{min:r,max:i}=ij(n,t),o=rj(50),a=(i-r)/50,s=o.map(((e,t)=>({color:e,count:0,leftBound:(0,ks.uf)(r+t*a),rightBound:(0,ks.uf)(r+(t+1)*a)})));let l=0;t.forEach((e=>{var t;const r=n&&Number(e.metrics[n]),i=Math.floor(r/a),o=(null===(t=s[i])||void 0===t?void 0:t.count)+1;o>l&&(l=o),s[i]={...s[i],count:o}}));return(0,Le.jsx)("div",{className:oj(),children:(0,Le.jsxs)("div",{className:oj("chart"),children:[Boolean(i)&&s.map(((t,n)=>(0,Le.jsx)(aj,{data:t,maxCount:l,showTooltip:e.showTooltip,hideTooltip:e.hideTooltip},n))),(0,Le.jsx)("div",{className:oj("x-min"),children:(0,ks.uf)(r)}),(0,Le.jsx)("div",{className:oj("x-max"),children:(0,ks.uf)(i)}),(0,Le.jsx)("div",{className:oj("y-min"),children:"0"}),(0,Le.jsx)("div",{className:oj("y-max"),children:(0,ks.uf)(l)})]})})},lj=Me("heatmap"),cj=rj(500),uj=e=>{let{path:t}=e;const n=Ao(),r=a.createRef(),{autorefresh:i}=Do((e=>e.schema)),{currentData:o,isFetching:s,error:l}=Wk.Vc.useGetHeatmapTabletsInfoQuery({path:t},{pollingInterval:i}),c=s&&void 0===o,{tablets:u=[],metrics:d}=o||{},{sort:h,heatmap:p,currentMetric:f}=Do((e=>e.heatmap)),m=function(){n((0,vs.hJ)(...arguments))},g=()=>{n((0,vs.i8)())},v=e=>{n((0,Wk.U_)({currentMetric:e[0]}))},y=()=>{n((0,Wk.U_)({sort:!h}))},b=()=>{n((0,Wk.U_)({heatmap:!p}))},x=()=>{const{min:e,max:t}=ij(f,u),n=u.map((n=>{var r;const i=f&&Number(null===(r=n.metrics)||void 0===r?void 0:r[f]),o=((e,t,n)=>0===n?0:Math.round((e-t)/(n-t)*499))(i,e,t),a=cj[o];return{...n,color:a,value:i,formattedValue:(0,ks.uf)(i),currentMetric:f}})),i=h?n.sort(((e,t)=>Number(t.value)-Number(e.value))):n;return(0,Le.jsx)("div",{ref:r,className:lj("items"),children:(0,Le.jsx)(Qk,{tablets:i,parentRef:r,showTooltip:m,hideTooltip:g})})};return c?(0,Le.jsx)(N_,{}):l?(0,Le.jsx)(zc,{error:l}):(()=>{const{min:e,max:t}=ij(f,u);return(0,Le.jsxs)("div",{className:lj(),children:[(0,Le.jsxs)("div",{className:lj("filters"),children:[(0,Le.jsx)(ww,{className:lj("heatmap-select"),value:f?[f]:[],options:d,onUpdate:v,width:200}),(0,Le.jsx)("div",{className:lj("sort-checkbox"),children:(0,Le.jsx)(T_,{onUpdate:y,checked:h,children:"Sort"})}),(0,Le.jsx)("div",{className:lj("histogram-checkbox"),children:(0,Le.jsx)(T_,{onUpdate:b,checked:p,children:"Heatmap"})}),(0,Le.jsxs)("div",{className:lj("limits"),children:[(0,Le.jsxs)("div",{className:lj("limits-block"),children:[(0,Le.jsx)("div",{className:lj("limits-title"),children:"min:"}),(0,Le.jsx)("div",{className:lj("limits-value"),children:Number.isInteger(e)?(0,ks.uf)(e):"\u2014"})]}),(0,Le.jsxs)("div",{className:lj("limits-block"),children:[(0,Le.jsx)("div",{className:lj("limits-title"),children:"max:"}),(0,Le.jsx)("div",{className:lj("limits-value"),children:Number.isInteger(t)?(0,ks.uf)(t):"\u2014"})]}),(0,Le.jsxs)("div",{className:lj("limits-block"),children:[(0,Le.jsx)("div",{className:lj("limits-title"),children:"count:"}),(0,Le.jsx)("div",{className:lj("limits-value"),children:(0,ks.uf)(u.length)})]})]})]}),p?x():(0,Le.jsx)(sj,{tablets:u,currentMetric:f,showTooltip:m,hideTooltip:g})]})})()};var dj,hj=n(35638),pj=n(6523);function fj(){return fj=Object.assign?Object.assign.bind():function(e){for(var t=1;t(t[n]=r-e.keyColumnIds.length,t)),{}),n=[{name:gj.id,width:60}];return(0,pj.uL)(e.type)||n.push({name:gj.key,width:70,resizeMinWidth:70,defaultOrder:Hc.ZP.ASCENDING,sortAccessor:e=>e.Id&&t[e.Id]||1,render:t=>{let{row:n}=t;return n.Id&&e.keyColumnIds.includes(n.Id)?(0,Le.jsx)("div",{className:e.b("key-icon"),children:(0,Le.jsx)(we.J,{data:mj,width:12,height:7})}):null}}),n.push({name:gj.name,width:100},{name:gj.type,width:100},{name:gj.notNull,width:100,defaultOrder:Hc.ZP.DESCENDING,render:e=>{let{row:t}=e;if(t.NotNull)return"\u2713"}}),e.withFamilies&&(0,pj.fd)(e.type)&&n.push({name:gj.familyName,width:100,render:t=>{let{row:n}=t;return n.Family?e.families[n.Family].Name:void 0},sortAccessor:t=>t.Family?e.families[t.Family].Name:void 0},{name:gj.preferredPoolKind,width:100,render:t=>{var n,r;let{row:i}=t;return i.Family?null===(n=e.families[i.Family].StorageConfig)||void 0===n||null===(r=n.Data)||void 0===r?void 0:r.PreferredPoolKind:void 0},sortAccessor:t=>{var n,r;return t.Family?null===(n=e.families[t.Family].StorageConfig)||void 0===n||null===(r=n.Data)||void 0===r?void 0:r.PreferredPoolKind:void 0}},{name:gj.columnCodec,width:100,render:t=>{let{row:n}=t;return n.Family?(r=e.families[n.Family].ColumnCodec)?r===hj.C6.ColumnCodecPlain?"None":r.replace("ColumnCodec","").toLocaleLowerCase():null:void 0;var r},sortAccessor:t=>t.Family?e.families[t.Family].ColumnCodec:void 0}),n}const yj=Me("schema-viewer"),bj=e=>{let{type:t,path:n,withFamilies:r=!1}=e;const{data:i,loading:o}=Do((e=>e.schema)),a=n?i[n]:void 0,{columns:s,keyColumnIds:l}=function(e,t){let n=[],r=[];if((0,pj.vp)(e)&&(0,pj.Jp)(e)){var i,o,a;const e=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{Name:t,Schema:n}=e;if(n){const{Columns:e,KeyColumnNames:r}=n,i=null===r||void 0===r?void 0:r.map((t=>{const n=null===e||void 0===e?void 0:e.find((e=>e.Name===t));return null===n||void 0===n?void 0:n.Id})).filter((e=>void 0!==e));return{Columns:e,KeyColumnNames:r,Name:t,KeyColumnIds:i}}return{Name:t}}(null===t||void 0===t||null===(i=t.PathDescription)||void 0===i?void 0:i.ColumnTableDescription);n=null!==(o=e.KeyColumnIds)&&void 0!==o?o:[],r=null!==(a=e.Columns)&&void 0!==a?a:[]}else if((0,pj.uL)(e)){var s,l,c;r=null!==(s=null===t||void 0===t||null===(l=t.PathDescription)||void 0===l||null===(c=l.ExternalTableDescription)||void 0===c?void 0:c.Columns)&&void 0!==s?s:[]}else{var u,d,h,p,f,m;n=null!==(u=null===t||void 0===t||null===(d=t.PathDescription)||void 0===d||null===(h=d.Table)||void 0===h?void 0:h.KeyColumnIds)&&void 0!==u?u:[],r=null!==(p=null===t||void 0===t||null===(f=t.PathDescription)||void 0===f||null===(m=f.Table)||void 0===m?void 0:m.Columns)&&void 0!==p?p:[]}return{columns:r,keyColumnIds:n}}(t,a),c=function(e){var t,n,r,i,o;return null!==(t=null===e||void 0===e||null===(n=e.PathDescription)||void 0===n||null===(r=n.Table)||void 0===r||null===(i=r.PartitionConfig)||void 0===i||null===(o=i.ColumnFamilies)||void 0===o?void 0:o.reduce(((e,t)=>(t.Id&&(e[t.Id]=t),e)),{}))&&void 0!==t?t:{}}(a);return(0,Le.jsx)("div",{className:yj(null),children:o?(0,Le.jsx)(Qc,{}):(0,Le.jsx)(qc,{columnsWidthLSKey:"schemaTableColumnsWidth",data:s,columns:vj({type:t,b:yj,families:c,keyColumnIds:l,withFamilies:r}),settings:Lo.LE,initialSortOrder:{columnId:gj.key,order:Hc.ZP.ASCENDING}})})},xj=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 1.5a6.501 6.501 0 0 1 6.445 5.649.75.75 0 1 1-1.488.194A5.001 5.001 0 0 0 4.43 4.5h1.32a.75.75 0 0 1 0 1.5h-3A.75.75 0 0 1 2 5.25v-3a.75.75 0 1 1 1.5 0v1.06A6.48 6.48 0 0 1 8 1.5Zm5.25 13a.75.75 0 0 0 .75-.75v-3a.75.75 0 0 0-.75-.75h-3a.75.75 0 1 0 0 1.5h1.32a5.001 5.001 0 0 1-8.528-2.843.75.75 0 1 0-1.487.194 6.501 6.501 0 0 0 10.945 3.84v1.059c0 .414.336.75.75.75Z",clipRule:"evenodd"})),wj=JSON.parse('{"None":"None","15 sec":"15 sec","1 min":"1 min","2 min":"2 min","5 min":"5 min","Refresh":"Refresh"}'),Sj=(0,We.wZ)("ydb-diagnostics-autorefresh-control",{en:wj}),_j=Me("autorefresh-control");function Cj(e){let{className:t}=e;const n=Ao(),r=Do((e=>e.schema.autorefresh));return(0,Le.jsxs)("div",{className:_j(null,t),children:[(0,Le.jsx)(Ie.z,{view:"flat",onClick:()=>{n(Dl.h.util.invalidateTags(["All"]))},extraProps:{"aria-label":Sj("Refresh")},children:(0,Le.jsx)(Ie.z.Icon,{children:(0,Le.jsx)(xj,{})})}),(0,Le.jsxs)(ww,{value:[String(r)],onUpdate:e=>{n((0,Vk.w4)(Number(e)))},width:85,children:[(0,Le.jsx)(ww.Option,{value:"0",children:Sj("None")}),(0,Le.jsx)(ww.Option,{value:"15000",children:Sj("15 sec")}),(0,Le.jsx)(ww.Option,{value:"60000",children:Sj("1 min")}),(0,Le.jsx)(ww.Option,{value:"120000",children:Sj("2 min")}),(0,Le.jsx)(ww.Option,{value:"300000",children:Sj("5 min")})]})]})}var Ej=n(1504);const Tj=Dl.h.injectEndpoints({endpoints:e=>({getTopic:e.query({queryFn:async e=>{try{const t=await window.api.getTopic(e);return"object"!==typeof t?{error:{}}:{data:t}}catch(t){return{error:t}}},providesTags:["All"]})}),overrideExisting:"throw"}),Oj=(0,p_.P1)((e=>e),(e=>Tj.endpoints.getTopic.select({path:e}))),Nj=(0,p_.P1)((e=>e),((e,t)=>Oj(t)),((e,t)=>{var n;return null===(n=t(e).data)||void 0===n?void 0:n.topic_stats})),kj=(0,p_.P1)((e=>e),((e,t)=>Oj(t)),((e,t)=>{var n;return null===(n=t(e).data)||void 0===n?void 0:n.consumers})),jj=(0,p_.P1)(kj,(e=>null===e||void 0===e?void 0:e.map((e=>null===e||void 0===e?void 0:e.name)).filter((e=>void 0!==e)))),Ij=(0,p_.P1)(Nj,(e=>{if(!e)return;const{store_size_bytes:t="0",min_last_write_time:n,max_write_time_lag:r,bytes_written:i}=e||{};return{storeSize:t,partitionsIdleTime:(0,Ej.lE)(n),partitionsWriteLag:(0,Ej.DA)(r),writeSpeed:(0,BC.c4)(i)}})),Pj=(0,p_.P1)(kj,(e=>null===e||void 0===e?void 0:e.map((e=>{const{name:t,consumer_stats:n}=e||{},{min_partitions_last_read_time:r,max_read_time_lag:i,max_write_time_lag:o,bytes_read:a}=n||{};return{name:t,readSpeed:(0,BC.c4)(a),writeLag:(0,Ej.DA)(o),readLag:(0,Ej.DA)(i),readIdleTime:(0,Ej.lE)(r)}})))),Dj=JSON.parse('{"averageSpeed":"Average speed","perMinute":"per minute","perHour":"per hour","perDay":"per day"}'),Aj=JSON.parse('{"averageSpeed":"\u0421\u0440\u0435\u0434\u043d\u044f\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c","perMinute":"\u0437\u0430 \u043c\u0438\u043d\u0443\u0442\u0443","perHour":"\u0437\u0430 \u0447\u0430\u0441","perDay":"\u0437\u0430 \u0434\u0435\u043d\u044c"}'),Rj=(0,We.wZ)("ydb-components-speed-multimeter",{ru:Aj,en:Dj}),Mj=Me("speed-multimeter"),Lj=e=>{let{data:t,speedSize:n="kb",withValue:r=!0,withPopover:i=!0}=e;const{perMinute:o=0,perHour:s=0,perDay:l=0}=t||{},c=[o,s,l],u=e=>(0,BC.td)({value:e,size:n,withSpeedLabel:!0}),d=[{value:u(o),label:Rj("perMinute")},{value:u(s),label:Rj("perHour")},{value:u(l),label:Rj("perDay")}],[h,p]=a.useState(o),[f,m]=a.useState(r?0:void 0),[g,v]=a.useState(),y=(e,t)=>{p(e[t]),m(t),v(t)},b=e=>f===e,x=e=>g===e;return(0,Le.jsx)("div",{className:Mj(),children:(0,Le.jsxs)("div",{className:Mj("content"),children:[r&&(0,Le.jsx)("div",{className:Mj("displayed-value"),children:u(h)}),(0,Le.jsx)(fi,{content:(0,Le.jsxs)("div",{className:Mj("popover-content"),children:[(0,Le.jsx)("span",{className:Mj("popover-header"),children:Rj("averageSpeed")}),d.map(((e,t)=>{return(0,Le.jsx)("span",{className:Mj("popover-row",(n=b(t),n?{color:"primary"}:{color:"secondary"})),children:"".concat(e.label,": ").concat(e.value)},t);var n}))]}),className:Mj("popover-container"),placement:"bottom",disabled:!i,hasArrow:!0,size:"s",children:(0,Le.jsx)("div",{className:Mj("bars"),onMouseLeave:()=>{p(o),m(r?0:void 0),v(void 0)},children:(()=>{const e=Math.max(...c,0)||1;return c.map(((t,n)=>(0,Le.jsx)("div",{className:Mj("bar-container",{highlighted:x(n)}),onMouseEnter:y.bind(null,c,n),children:(0,Le.jsx)("div",{className:Mj("bar",{color:b(n)?"dark":"light"}),style:{width:"".concat(100*t/e,"%")}})},n)))})()})})]})})},Fj=Me("ydb-diagnostics-consumers-topic-stats"),zj=e=>{let{data:t}=e;const{writeSpeed:n,partitionsWriteLag:r,partitionsIdleTime:i}=t||{},o=[{label:"Write speed",value:(0,Le.jsx)(Lj,{data:n})},{label:"Write lag",value:(0,ks.gC)(r||0)},{label:"Write idle time",value:(0,ks.gC)(i||0)}];return(0,Le.jsx)("div",{className:Fj("wrapper"),children:o.map(((e,t)=>(0,Le.jsxs)("div",{className:Fj("item"),children:[(0,Le.jsx)("div",{className:Fj("label"),children:e.label}),(0,Le.jsx)("div",{className:Fj("value"),children:e.value})]},t)))})},Bj=70,Uj=54,Hj=268,Vj="#ADE8F5",Gj="#f5be9d",Wj=e=>{let{width:t,height:n,transform:r}=e;return(0,Le.jsx)("path",{d:"M-".concat(t/2," 0 c0 -").concat(n,", ").concat(t," -").concat(n,", ").concat(t," 0"),fill:"none",strokeDasharray:"4,6",stroke:"#28f",strokeWidth:"1.6",transform:r})},qj=e=>{let{width:t}=e;return(0,Le.jsx)("path",{fill:"none",strokeWidth:"2",d:"M0 0 h".concat(t," l-10 -5 m0 10 l10 -5")})},Zj=()=>(0,Le.jsxs)("g",{fill:"var(--g-color-text-primary)",fontSize:"12",children:[(0,Le.jsx)("g",{transform:"translate(0, ".concat(27,")"),stroke:Gj,children:(0,Le.jsx)(qj,{width:203})}),(0,Le.jsxs)("g",{transform:"translate(".concat(30,", 0)"),children:[(0,Le.jsxs)("g",{transform:"translate(".concat(35,", ").concat(27,")"),children:[(0,Le.jsx)(Wj,{width:Bj,height:15}),(0,Le.jsx)("text",{x:"0",y:"-15",textAnchor:"middle",children:(0,Le.jsx)("tspan",{x:"0",dy:"0",children:"write lag"})})]}),(0,Le.jsxs)("g",{transform:"translate(".concat(119,", ").concat(27,")"),children:[(0,Le.jsx)(Wj,{width:98,height:15}),(0,Le.jsx)("text",{x:"0",y:"-15",textAnchor:"middle",children:(0,Le.jsx)("tspan",{x:"0",dy:"0",children:"write idle time"})})]})]}),(0,Le.jsxs)("g",{transform:"translate(".concat(30,", 0)"),children:[(0,Le.jsxs)("g",{transform:"translate(".concat(0,", ",27,")"),children:[(0,Le.jsx)("use",{y:"-10",xlinkHref:"#check",stroke:Gj}),(0,Le.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,Le.jsx)("tspan",{x:"0",dy:"0",children:"create time"})})]}),(0,Le.jsxs)("g",{transform:"translate(".concat(Bj,", ").concat(27,")"),children:[(0,Le.jsx)("use",{y:"-10",xlinkHref:"#check",stroke:Gj}),(0,Le.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,Le.jsx)("tspan",{x:"0",dy:"0",children:"write time"})})]}),(0,Le.jsx)("g",{transform:"translate(".concat(168,", ").concat(27,")"),children:(0,Le.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,Le.jsx)("tspan",{x:"0",dy:"0",children:"now"})})})]})]}),Yj=()=>(0,Le.jsxs)("g",{fill:"var(--g-color-text-primary)",fontSize:"12",children:[(0,Le.jsx)("g",{transform:"translate(0, ".concat(27,")"),stroke:Vj,children:(0,Le.jsx)(qj,{width:Hj})}),(0,Le.jsxs)("g",{transform:"translate(".concat(30,", 0)"),children:[(0,Le.jsxs)("g",{transform:"translate(".concat(105,", ").concat(27,")"),children:[(0,Le.jsx)(Wj,{width:Bj,height:15}),(0,Le.jsx)("text",{x:"0",y:"-15",textAnchor:"middle",children:(0,Le.jsx)("tspan",{x:"0",dy:"0",children:"read lag"})})]}),(0,Le.jsxs)("g",{transform:"translate(".concat(35,", ").concat(27,")"),children:[(0,Le.jsx)(Wj,{width:Bj,height:15}),(0,Le.jsx)("text",{x:"0",y:"-15",textAnchor:"middle",children:(0,Le.jsx)("tspan",{x:"0",dy:"0",children:"write lag"})})]}),(0,Le.jsxs)("g",{transform:"translate(".concat(182,", ").concat(27,")"),children:[(0,Le.jsx)(Wj,{width:91,height:15}),(0,Le.jsx)("text",{x:"0",y:"-15",textAnchor:"middle",children:(0,Le.jsx)("tspan",{x:"0",dy:"0",children:"read idle time"})})]})]}),(0,Le.jsxs)("g",{transform:"translate(".concat(30,", ").concat(27,")"),children:[(0,Le.jsxs)("g",{transform:"translate(".concat(0,", 0)"),children:[(0,Le.jsx)("use",{y:"-10",xlinkHref:"#check",stroke:Vj}),(0,Le.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,Le.jsx)("tspan",{x:"0",dy:"0",children:"create time"})})]}),(0,Le.jsxs)("g",{transform:"translate(".concat(Bj,", 0)"),children:[(0,Le.jsx)("use",{y:"-10",xlinkHref:"#check",stroke:Vj}),(0,Le.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,Le.jsx)("tspan",{x:"0",dy:"0",children:"write time"})})]}),(0,Le.jsxs)("g",{transform:"translate(".concat(140,", 0)"),children:[(0,Le.jsx)("use",{x:"-2",y:"-10",xlinkHref:"#check",stroke:Vj}),(0,Le.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,Le.jsx)("tspan",{x:"0",dy:"0",children:"read time"})})]}),(0,Le.jsx)("g",{transform:"translate(".concat(224,", 0)"),children:(0,Le.jsx)("text",{x:"0",y:"20",textAnchor:"middle",children:(0,Le.jsx)("tspan",{x:"0",dy:"0",children:"now"})})})]})]}),Kj=e=>{let{id:t,fill:n}=e;return(0,Le.jsx)("pattern",{id:t,x:"0",y:"0",width:"8",height:"8",patternUnits:"userSpaceOnUse",children:(0,Le.jsx)("path",{d:"M0 5L5 0H8L0 8V5M5 8L8 5V8Z",fill:n})})},Qj=()=>(0,Le.jsxs)("svg",{className:"paint",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",viewBox:"0 0 ".concat(Hj," ").concat(Uj),width:Hj,height:Uj,children:[(0,Le.jsxs)("defs",{children:[(0,Le.jsx)("g",{id:"check",children:(0,Le.jsx)("path",{d:"M0 3 v14",strokeWidth:"2"})}),(0,Le.jsx)(Kj,{id:"latest-read",fill:Vj}),(0,Le.jsx)(Kj,{id:"latest-write",fill:Gj})]}),(0,Le.jsx)(Zj,{})]}),Xj=()=>(0,Le.jsxs)("svg",{className:"paint",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",viewBox:"0 0 ".concat(Hj," ").concat(Uj),width:Hj,height:Uj,children:[(0,Le.jsxs)("defs",{children:[(0,Le.jsx)("g",{id:"check",children:(0,Le.jsx)("path",{d:"M0 3 v14",strokeWidth:"2"})}),(0,Le.jsx)(Kj,{id:"latest-read",fill:Vj}),(0,Le.jsx)(Kj,{id:"latest-write",fill:Gj})]}),(0,Le.jsx)(Yj,{})]}),$j=Me("ydb-lag-popover-content"),Jj=e=>{let{text:t,type:n}=e;return(0,Le.jsxs)("div",{className:$j({type:n}),children:[(0,Le.jsx)("div",{className:$j("text"),children:t}),(0,Le.jsx)("div",{children:"read"===n?(0,Le.jsx)(Xj,{}):(0,Le.jsx)(Qj,{})})]})},eI=JSON.parse('{"noConsumersMessage.topic":"This topic has no consumers","noConsumersMessage.stream":"This changefeed has no consumers","lagsPopover.readLags":"Read lags statistics, maximum among all consumer partitions (time format dd hh:mm:ss)","table.emptyDataMessage":"No consumers match the current search","controls.search":"Consumer"}'),tI=JSON.parse('{"noConsumersMessage.topic":"\u0423 \u044d\u0442\u043e\u0433\u043e \u0442\u043e\u043f\u0438\u043a\u0430 \u043d\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439","noConsumersMessage.stream":"\u0423 \u044d\u0442\u043e\u0433\u043e \u0441\u0442\u0440\u0438\u043c\u0430 \u043d\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439","lagsPopover.readLags":"\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043b\u0430\u0433\u043e\u0432 \u0447\u0442\u0435\u043d\u0438\u044f, \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0440\u0435\u0434\u0438 \u0432\u0441\u0435\u0445 \u043f\u0430\u0440\u0442\u0438\u0446\u0438\u0439 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f (\u0444\u043e\u0440\u043c\u0430\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0434\u0434 \u0447\u0447:\u043c\u043c:\u0441\u0441)","table.emptyDataMessage":"\u041f\u043e \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u043e\u0438\u0441\u043a\u0443 \u043d\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439","controls.search":"Consumer"}'),nI=(0,We.wZ)("ydb-diagnostics-consumers",{ru:tI,en:eI}),rI="consumer",iI="readSpeed",oI="readLags",aI={[rI]:"Consumer",[iI]:"Read speed",[oI]:"Read lags, duration"},sI="writeLag",lI="readLag",cI="readIdleTime",uI={[sI]:"write lag",[lI]:"read lag",[cI]:"read idle time"},dI=Me("ydb-diagnostics-consumers-columns-header"),hI=()=>(0,Le.jsx)(Po,{className:dI("lags"),text:aI[oI],popoverContent:(0,Le.jsx)(Jj,{text:nI("lagsPopover.readLags"),type:"read"})}),pI=Me("ydb-diagnostics-consumers-columns"),fI=[{name:rI,header:aI[rI],align:Hc.ZP.LEFT,render:e=>{let{row:t}=e;if(!t.name)return"\u2013";const n=ol().parse(location.search,{ignoreQueryPrefix:!0});return(0,Le.jsx)(_l,{to:(0,Ta.ax)(Ta.ZP.tenant,void 0,{...n,[ds.diagnosticsTab]:us.qQ.partitions,selectedConsumer:t.name}),children:t.name})}},{name:iI,header:aI[iI],align:Hc.ZP.RIGHT,resizeMinWidth:140,sortAccessor:e=>e.readSpeed.perMinute,render:e=>{let{row:t}=e;return(0,Le.jsx)(Lj,{data:t.readSpeed})}},{name:oI,header:(0,Le.jsx)(hI,{}),className:pI("lags-header"),sub:[{name:sI,header:uI[sI],align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,ks.gC)(t.writeLag)}},{name:lI,header:uI[lI],align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,ks.gC)(t.readLag)}},{name:cI,header:uI[cI],align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,ks.gC)(t.readIdleTime)}}]}],mI=Me("ydb-diagnostics-consumers"),gI=e=>{let{path:t,type:n}=e;const r=(0,pj.zf)(n),[i,o]=a.useState(""),{autorefresh:s}=Do((e=>e.schema)),{currentData:l,isFetching:c,error:u}=Tj.useGetTopicQuery({path:t},{pollingInterval:s}),d=c&&void 0===l,h=Do((e=>Pj(e,t))),p=Do((e=>Ij(e,t))),f=a.useMemo((()=>{if(!h)return[];const e=new RegExp(m_()(i),"i");return h.filter((t=>e.test(String(t.name))))}),[h,i]);return d?(0,Le.jsx)(N_,{size:"m"}):u?(0,Le.jsx)(zc,{error:u}):h&&h.length?(0,Le.jsxs)("div",{className:mI(),children:[(0,Le.jsxs)("div",{className:mI("controls"),children:[(0,Le.jsx)(Yc,{onChange:e=>{o(e)},placeholder:nI("controls.search"),className:mI("search"),value:i}),p&&(0,Le.jsx)(zj,{data:p})]}),(0,Le.jsx)("div",{className:mI("table-wrapper"),children:(0,Le.jsx)("div",{className:mI("table-content"),children:(0,Le.jsx)(qc,{columnsWidthLSKey:"consumersColumnsWidth",wrapperClassName:mI("table"),data:f,columns:fI,settings:Lo.LE,emptyDataMessage:nI("table.emptyDataMessage")})})})]}):(0,Le.jsx)("div",{children:nI("noConsumersMessage.".concat(r?"stream":"topic"))})},vI=Dl.h.injectEndpoints({endpoints:e=>({getDescribe:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{const t=await Promise.all(e.map((e=>window.api.getDescribe({path:e},{signal:n}))));return{data:t.reduce(((e,t)=>(null!==t&&void 0!==t&&t.Path&&(e[t.Path]=t),e)),{})}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"}),yI=Me("kv-describe"),bI=new Map,xI=e=>{let{tenant:t,type:n}=e;const{autorefresh:r,currentSchemaPath:i}=Do((e=>e.schema)),o=(0,pj.St)(n),a=Do((e=>(0,Vk.eU)(e,i,n)),ae.wU),s=i||t;let l=zl.CN;o?a&&(l=[s,...a]):l=[s];const{currentData:c,isFetching:u,error:d}=vI.useGetDescribeQuery(l,{pollingInterval:r}),h=u&&void 0===c,p=c;let f;if(p){const e=Object.keys(p);f=1===e.length?p[e[0]]:p}return h||o&&!a?(0,Le.jsx)(N_,{size:"m"}):d?(0,Le.jsx)(zc,{error:d,className:yI("message-container")}):h||f?(0,Le.jsx)("div",{className:yI(),children:(0,Le.jsx)("div",{className:yI("result"),children:(0,Le.jsx)(bs(),{data:f,className:yI("tree"),onClick:e=>{let{path:t}=e;const n=!bI.get(t);bI.set(t,n)},searchOptions:{debounceTime:300},isExpanded:e=>bI.get(e)||!1})})}):(0,Le.jsx)("div",{className:yI("message-container"),children:"Empty"})},wI=e=>{const{PathType:t,PathSubType:n}=(null===e||void 0===e?void 0:e.Self)||{};return(0,pj.d)(t,n)},SI=JSON.parse('{"common.created":"Created","common.type":"Type"}'),_I=JSON.parse('{"common.created":"\u0421\u043e\u0437\u0434\u0430\u043d\u043e","common.type":"\u0422\u0438\u043f"}'),CI=(0,We.wZ)("ydb-components-info-viewer",{ru:_I,en:SI}),EI=Es({values:{PathType:e=>null===e||void 0===e?void 0:e.substring("EPathType".length),CreateStep:ks.o0},labels:{PathType:CI("common.type"),CreateStep:CI("common.created")}}),TI=e=>{let{value:t,withSpeedLabel:n,...r}=e;const i=(0,BC.td)({value:t,withSpeedLabel:n,...r}),o=(0,BC.td)({value:t,withSpeedLabel:n,size:"b"});return(0,Le.jsx)("span",{title:o,children:i})},OI=(e,t)=>e?(0,Le.jsx)(TI,{value:e,significantDigits:2,...t}):null,NI=Es({values:{Type:e=>null===e||void 0===e?void 0:e.substring(10),State:e=>null===e||void 0===e?void 0:e.substring(11),KeyColumnNames:e=>null===e||void 0===e?void 0:e.join(", "),DataColumnNames:e=>null===e||void 0===e?void 0:e.join(", "),DataSize:OI},labels:{KeyColumnNames:"Columns",DataColumnNames:"Includes"}}),kI={[hj.tB.METERING_MODE_REQUEST_UNITS]:"request-units",[hj.tB.METERING_MODE_RESERVED_CAPACITY]:"reserved-capacity"},jI=Es({values:{Partitions:e=>(0,ks.uf)((null===e||void 0===e?void 0:e.length)||0),PQTabletConfig:e=>{const t=Math.round(e.PartitionConfig.LifetimeSeconds/Lo.RQ*100)/100;return"".concat((0,ks.uf)(t)," hours")}},labels:{Partitions:"Partitions count",PQTabletConfig:"Retention"}}),II=Es({values:{Codecs:e=>e&&Object.values(e.Codecs||{}).join(", "),MeteringMode:e=>e&&kI[e]},labels:{MeteringMode:"Metering mode"}}),PI=Es({values:{StorageLimitBytes:ks.td,WriteSpeedInBytesPerSecond:ks.t$},labels:{StorageLimitBytes:"Retention storage",WriteSpeedInBytesPerSecond:"Partitions write speed"}}),DI=Es({values:{Mode:e=>null===e||void 0===e?void 0:e.substring("ECdcStreamMode".length),Format:e=>null===e||void 0===e?void 0:e.substring("ECdcStreamFormat".length)}}),AI=Es({values:{CPU:ks.LO,Memory:OI,Storage:OI,Network:ks.t$,ReadThroughput:ks.t$,WriteThroughput:ks.t$},defaultValueFormatter:ks.uf}),RI=Es({values:{FollowerCount:ks.uf},labels:{FollowerCountPerDataCenter:"FollowerCountPerDC"},defaultValueFormatter:e=>e&&String(e)}),MI=Es({values:{FollowerCount:ks.uf,CrossDataCenterFollowerCount:ks.uf}}),LI=Es({values:{DataSize:OI,IndexSize:OI,LastAccessTime:ks.o0,LastUpdateTime:ks.o0},defaultValueFormatter:ks.uf}),FI=new Set(["Type","State","DataSize","KeyColumnNames","DataColumnNames"]),zI=e=>{var t;let{data:n}=e;const r=wI(null===n||void 0===n?void 0:n.PathDescription);if(!n)return(0,Le.jsxs)("div",{className:"error",children:["No ",r," data"]});const i=null===(t=n.PathDescription)||void 0===t?void 0:t.TableIndex,o=[];let a;for(a in i)FI.has(a)&&o.push(NI(a,null===i||void 0===i?void 0:i[a]));return(0,Le.jsx)(Ss,{title:r,info:o})};var BI=n(39623);function UI(e){return"SELECT * FROM `".concat(e,"/.sys/primary_index_stats`")}const HI="execute-scan",VI=Dl.h.injectEndpoints({endpoints:e=>({getOlapStats:e.query({queryFn:async function(){let{path:e=""}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{signal:t}=arguments.length>1?arguments[1]:void 0;try{const n=await window.api.sendQuery({schema:"modern",query:UI(e),database:e,action:HI},{signal:t});return(0,BI.gW)(n)?{error:n}:{data:(0,BI.gY)(n)}}catch(n){return{error:n||new Error("Unauthorized")}}},providesTags:["All"]})}),overrideExisting:"throw"}),GI=Dl.h.injectEndpoints({endpoints:e=>({getOverview:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{const[t,...r]=await Promise.all(e.map((e=>window.api.getDescribe({path:e},{signal:n}))));return{data:{data:t,additionalData:r}}}catch(r){return{error:r}}}})})}),WI=JSON.parse('{"external-objects.source-type":"Source Type","external-objects.data-source":"Data Source","external-objects.location":"Location","external-objects.auth-method":"Auth Method","external-objects.auth-method.none":"None","external-objects.auth-method.service-account":"Service Account"}'),qI=JSON.parse('{"external-objects.source-type":"\u0422\u0438\u043f \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430","external-objects.data-source":"\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a","external-objects.location":"\u0420\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435","external-objects.auth-method":"\u0410\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f","external-objects.auth-method.none":"\u041d\u0435\u0442","external-objects.auth-method.service-account":"\u0421\u0435\u0440\u0432\u0438\u0441\u043d\u044b\u0439 \u0430\u043a\u043a\u0430\u0443\u043d\u0442"}'),ZI=(0,We.wZ)("ydb-tenant-objects-info",{ru:qI,en:WI}),YI=Me("ydb-external-data-source-info"),KI=e=>{var t,n,r,i;return[{label:ZI("external-objects.source-type"),value:null===(t=e.PathDescription)||void 0===t||null===(n=t.ExternalDataSourceDescription)||void 0===n?void 0:n.SourceType},EI("CreateStep",null===(r=e.PathDescription)||void 0===r||null===(i=r.Self)||void 0===i?void 0:i.CreateStep)]},QI=e=>{var t;const{Location:n,Auth:r}=(null===(t=e.PathDescription)||void 0===t?void 0:t.ExternalDataSourceDescription)||{};return[...KI(e),{label:ZI("external-objects.location"),value:(0,Le.jsx)(Il,{name:n,showStatus:!1,hasClipboardButton:!0,clipboardButtonAlwaysVisible:!0,className:YI("location")})},{label:ZI("external-objects.auth-method"),value:null!==r&&void 0!==r&&r.ServiceAccount?ZI("external-objects.auth-method.service-account"):ZI("external-objects.auth-method.none")}]},XI=e=>{let{data:t,prepareData:n}=e;const r=wI(null===t||void 0===t?void 0:t.PathDescription),{error:i}=Do((e=>e.schema));return i?(0,Le.jsx)(zc,{error:i}):t?(0,Le.jsx)(Ss,{title:r,info:n(t)}):(0,Le.jsxs)("div",{className:"error",children:["No ",r," data"]})},$I=e=>{let{data:t}=e;return(0,Le.jsx)(XI,{data:t,prepareData:QI})},JI=e=>{let{data:t}=e;return(0,Le.jsx)(XI,{data:t,prepareData:KI})},eP=Me("ydb-external-table-info"),tP=(e,t)=>{var n,r;const{CreateStep:i}=(null===(n=e.PathDescription)||void 0===n?void 0:n.Self)||{},{SourceType:o,DataSourcePath:a}=(null===(r=e.PathDescription)||void 0===r?void 0:r.ExternalTableDescription)||{},s=null===a||void 0===a?void 0:a.split("/").pop();return[{label:ZI("external-objects.source-type"),value:o},EI("CreateStep",i),{label:ZI("external-objects.data-source"),value:a&&(0,Le.jsx)("span",{title:a,children:(0,Le.jsx)(IC,{title:s||"",url:t})})}]},nP=(e,t)=>{var n,r;const i=null===(n=e.PathDescription)||void 0===n||null===(r=n.ExternalTableDescription)||void 0===r?void 0:r.Location;return[...tP(e,t),{label:ZI("external-objects.location"),value:(0,Le.jsx)(Il,{name:i,showStatus:!1,hasClipboardButton:!0,clipboardButtonAlwaysVisible:!0,className:eP("location")})}]},rP=e=>{var t,n;let{data:r,prepareData:i}=e;const o=Ca(),a=(0,Ta.mB)(o),s=(0,Ta.vF)({...a,schema:null===r||void 0===r||null===(t=r.PathDescription)||void 0===t||null===(n=t.ExternalTableDescription)||void 0===n?void 0:n.DataSourcePath}),l=wI(null===r||void 0===r?void 0:r.PathDescription),{error:c}=Do((e=>e.schema));return c?(0,Le.jsx)(zc,{error:c}):r?(0,Le.jsx)(Ss,{title:l,info:i(r,s)}):(0,Le.jsxs)("div",{className:"error",children:["No ",l," data"]})},iP=e=>{let{data:t}=e;return(0,Le.jsx)(rP,{data:t,prepareData:nP})},oP=e=>{let{data:t}=e;return(0,Le.jsx)(rP,{data:t,prepareData:tP})};function aP(e){let{state:t}=e;return t?"StandBy"in t?(0,Le.jsx)(ft,{theme:"info",children:"Standby"}):"Paused"in t?(0,Le.jsx)(ft,{theme:"info",children:"Paused"}):"Done"in t?(0,Le.jsx)(ft,{theme:"success",children:"Done"}):"Error"in t?(0,Le.jsx)(ft,{theme:"danger",children:"Error"}):(0,Le.jsx)(ft,{size:"s",children:"Unknown"}):null}const sP=JSON.parse('{"column.dstPath.name":"Dist","column.srcPath.name":"Source","everythingWithPrefix":"Everything with prefix:","noData":"No data.","title":"Replicated Paths"}'),lP=(0,We.wZ)("ydb-diagnostics-async-replication-paths",{en:sP}),cP=Me("ydb-async-replication-paths"),uP=[{name:lP("column.srcPath.name"),render:e=>{let{row:t}=e;return t.SrcPath},sortAccessor:e=>e.SrcPath},{name:lP("column.dstPath.name"),render:e=>{let{row:t}=e;return t.DstPath},sortAccessor:e=>e.DstPath}];function dP(e){let{config:t}=e;if(!t)return null;let n=lP("noData");var r,i;t.Everything&&(n=(0,Le.jsxs)("span",{children:[lP("everythingWithPrefix")," ",(0,Le.jsx)(Fi.x,{variant:"code-inline-2",children:null!==(r=null===(i=t.Everything)||void 0===i?void 0:i.DstPrefix)&&void 0!==r?r:"undefined"}),"."]}));return t.Specific&&(n=(0,Le.jsx)(qc,{data:t.Specific.Targets,settings:Lo.E6,columns:uP})),(0,Le.jsxs)("div",{className:cP(),children:[(0,Le.jsx)("div",{className:cP("title"),children:lP("title")}),n]})}function hP(e){let{connection:t}=e;return t?t.StaticCredentials?(0,Le.jsx)(ft,{value:t.StaticCredentials.User,theme:"normal",children:"user"}):"OAuthToken"in t?"OAuth":"unknown":null}const pP=JSON.parse('{"credentials.label":"Credentials","noData":"No data for entity:","srcConnection.database.label":"Source Database Path","srcConnection.endpoint.label":"Source Cluster Endpoint","state.label":"State"}'),fP=(0,We.wZ)("ydb-diagnostics-async-replication-info",{en:pP});function mP(e){var t,n,r,i,o,a,s,l,c,u,d,h,p,f,m;let{data:g}=e;const v=wI(null===g||void 0===g?void 0:g.PathDescription),{error:y}=Do((e=>e.schema));return y?(0,Le.jsx)("div",{className:"error",children:y.statusText}):g?(0,Le.jsxs)(Ai.k,{direction:"column",gap:"4",children:[(0,Le.jsx)(Ss,{title:v,info:[{label:fP("state.label"),value:(0,Le.jsx)(aP,{state:null===(t=g.PathDescription)||void 0===t||null===(n=t.ReplicationDescription)||void 0===n?void 0:n.State})},{label:fP("srcConnection.endpoint.label"),value:(0,Le.jsx)(Fi.x,{variant:"code-inline-2",children:null===(r=g.PathDescription)||void 0===r||null===(i=r.ReplicationDescription)||void 0===i||null===(o=i.Config)||void 0===o||null===(a=o.SrcConnectionParams)||void 0===a?void 0:a.Endpoint})},{label:fP("srcConnection.database.label"),value:(0,Le.jsx)(Fi.x,{variant:"code-inline-2",children:null===(s=g.PathDescription)||void 0===s||null===(l=s.ReplicationDescription)||void 0===l||null===(c=l.Config)||void 0===c||null===(u=c.SrcConnectionParams)||void 0===u?void 0:u.Database})},{label:fP("credentials.label"),value:(0,Le.jsx)(hP,{connection:null===(d=g.PathDescription)||void 0===d||null===(h=d.ReplicationDescription)||void 0===h||null===(p=h.Config)||void 0===p?void 0:p.SrcConnectionParams})}]}),(0,Le.jsx)(dP,{config:null===(f=g.PathDescription)||void 0===f||null===(m=f.ReplicationDescription)||void 0===m?void 0:m.Config})]}):(0,Le.jsxs)("div",{className:"error",children:[fP("noData")," ",v]})}const gP=JSON.parse('{"writeLagPopover":"Write lag, maximum among all topic partitions","writeIdleTimePopover":"Write idle time, maximum among all topic partitions"}'),vP=JSON.parse('{"writeLagPopover":"\u041b\u0430\u0433 \u0437\u0430\u043f\u0438\u0441\u0438, \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0440\u0435\u0434\u0438 \u0432\u0441\u0435\u0445 \u043f\u0430\u0440\u0442\u0438\u0446\u0438\u0439 \u0442\u043e\u043f\u0438\u043a\u0430","writeIdleTimePopover":"\u0412\u0440\u0435\u043c\u044f \u0431\u0435\u0437 \u0437\u0430\u043f\u0438\u0441\u0438, \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0440\u0435\u0434\u0438 \u0432\u0441\u0435\u0445 \u043f\u0430\u0440\u0442\u0438\u0446\u0438\u0439 \u0442\u043e\u043f\u0438\u043a\u0430"}'),yP=(0,We.wZ)("ydb-diagnostics-overview-topic-stats",{ru:vP,en:gP}),bP=Me("ydb-overview-topic-stats"),xP=e=>[{label:"Store size",value:(0,ks.td)(e.storeSize)},{label:(0,Le.jsx)(Po,{text:"Write idle time",popoverContent:(0,Le.jsx)(Jj,{text:yP("writeIdleTimePopover"),type:"write"})}),value:(0,Ej.tt)(e.partitionsIdleTime)},{label:(0,Le.jsx)(Po,{text:"Write lag",popoverContent:(0,Le.jsx)(Jj,{text:yP("writeLagPopover"),type:"write"})}),value:(0,Ej.tt)(e.partitionsWriteLag)},{label:"Average write speed",value:(0,Le.jsx)(Lj,{data:e.writeSpeed,withValue:!1})}],wP=e=>{const t=e.writeSpeed;return[{label:"per minute",value:(0,ks.t$)(t.perMinute)},{label:"per hour",value:(0,ks.t$)(t.perHour)},{label:"per day",value:(0,ks.t$)(t.perDay)}]},SP=()=>{const{autorefresh:e,currentSchemaPath:t}=Do((e=>e.schema)),{currentData:n,isFetching:r,error:i}=Tj.useGetTopicQuery({path:t},{pollingInterval:e}),o=r&&void 0===n,a=Do((e=>Ij(e,t)));return o?(0,Le.jsx)("div",{className:bP(),children:(0,Le.jsx)(N_,{size:"s"})}):i||!a?(0,Le.jsxs)("div",{className:bP(),children:[(0,Le.jsx)("div",{className:bP("title"),children:"Stats"}),(0,Le.jsx)(zc,{error:i})]}):(0,Le.jsxs)("div",{className:bP(),children:[(0,Le.jsx)("div",{className:bP("title"),children:"Stats"}),(0,Le.jsx)("div",{className:bP("info"),children:(0,Le.jsx)(Ss,{info:xP(a),multilineLabels:!0})}),(0,Le.jsx)("div",{className:bP("bytes-written"),children:(0,Le.jsx)(Ss,{info:wP(a)})})]})},_P=e=>{var t;const n=null===e||void 0===e||null===(t=e.PathDescription)||void 0===t?void 0:t.PersQueueGroup;if(!n)return[];const{Partitions:r=[],PQTabletConfig:i={PartitionConfig:{LifetimeSeconds:0}}}=n,{Codecs:o,MeteringMode:a}=i,{WriteSpeedInBytesPerSecond:s,StorageLimitBytes:l}=i.PartitionConfig;return[...Ts(jI,{Partitions:r,PQTabletConfig:i}),...Ts(PI,{StorageLimitBytes:l,WriteSpeedInBytesPerSecond:s}),...Ts(II,{Codecs:o,MeteringMode:a})]},CP=(e,t)=>{var n,r,i;if(!e&&!t)return[];const o=null===e||void 0===e||null===(n=e.PathDescription)||void 0===n?void 0:n.CdcStreamDescription,{Mode:a,Format:s}=o||{};return[EI("CreateStep",null===e||void 0===e||null===(r=e.PathDescription)||void 0===r||null===(i=r.Self)||void 0===i?void 0:i.CreateStep),...Ts(DI,{Mode:a,Format:s}),..._P(t)]},EP=e=>{let{data:t,topic:n}=e;const r=wI(null===t||void 0===t?void 0:t.PathDescription),{error:i}=Do((e=>e.schema));return i?(0,Le.jsx)("div",{className:"error",children:i.statusText}):t&&n?(0,Le.jsxs)("div",{children:[(0,Le.jsx)(Ss,{title:r,info:CP(t,n)}),(0,Le.jsx)(SP,{})]}):(0,Le.jsxs)("div",{className:"error",children:["No ",r," data"]})},TP=JSON.parse('{"tableStats":"Table Stats","tabletMetrics":"Tablet Metrics","partitionConfig":"Partition Config"}'),OP=JSON.parse('{"tableStats":"\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b","tabletMetrics":"\u041c\u0435\u0442\u0440\u0438\u043a\u0438 \u0442\u0430\u0431\u043b\u0435\u0442\u043a\u0438","partitionConfig":"\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043f\u0430\u0440\u0442\u0438\u0446\u0438\u0438"}'),NP=(0,We.wZ)("ydb-diagnostics-overview-table-info",{ru:OP,en:TP}),kP=e=>e.SchemaPresetName&&void 0!==e.SchemaPresetId,jP=e=>{var t,n,r;const i=null===e||void 0===e?void 0:e.reduce(((e,t)=>e+((0,Ou.kE)(t.Bytes)?Number(t.Bytes):0)),0),o=null===e||void 0===e?void 0:e.reduce(((e,t)=>e+((0,Ou.kE)(t.Rows)?Number(t.Rows):0)),0),a=null===e||void 0===e?void 0:e.reduce(((e,t)=>(e.add(t.TabletId),e)),new Set);return[{label:"PartCount",value:null!==(t=null===a||void 0===a?void 0:a.size)&&void 0!==t?t:0},{label:"RowCount",value:null!==(n=(0,ks.uf)(o))&&void 0!==n?n:0},{label:"DataSize",value:null!==(r=(0,ks.td)(i))&&void 0!==r?r:0}]},IP=e=>{if(e.Enabled&&e.Enabled.ColumnName&&void 0!==e.Enabled.ExpireAfterSeconds){return{label:"TTL for rows",value:"column: '".concat(e.Enabled.ColumnName,"', expire after: ").concat((0,Ej.tt)(1e3*e.Enabled.ExpireAfterSeconds,1))}}};const PP=(e,t,n)=>{if(!e)return{};const{PathDescription:r={}}=e,{TableStats:i={},TabletMetrics:o={},Table:{PartitionConfig:a={},TTLSettings:s}={},ColumnTableDescription:l={}}=r,{PartCount:c,RowCount:u,DataSize:d,IndexSize:h,LastAccessTime:p,LastUpdateTime:f,ImmediateTxCompleted:m,PlannedTxCompleted:g,TxRejectedByOverload:v,TxRejectedBySpace:y,TxCompleteLagMsec:b,InFlightTxCount:x,RowUpdates:w,RowDeletes:S,RowReads:_,RangeReads:C,RangeReadRows:E}=i,{FollowerGroups:T,FollowerCount:O,CrossDataCenterFollowerCount:N}=a;let k,j=[];switch(t){case hj.gb.EPathTypeTable:j=((e,t)=>{var n;const{PartitioningPolicy:r={},FollowerGroups:i,EnableFilterByKey:o}=e,a=[],s=r.SizeToSplit&&Number(r.SizeToSplit)>0?"Enabled, split size: ".concat((0,ks.td)(r.SizeToSplit)):"Disabled",l=null!==(n=r.SplitByLoadSettings)&&void 0!==n&&n.Enabled?"Enabled":"Disabled";if(a.push({label:"Partitioning by size",value:s},{label:"Partitioning by load",value:l},{label:"Min number of partitions",value:(0,ks.uf)(r.MinPartitionsCount||0)}),r.MaxPartitionsCount&&a.push({label:"Max number of partitions",value:(0,ks.uf)(r.MaxPartitionsCount)}),i&&i.length){const{RequireAllDataCenters:e,FollowerCountPerDataCenter:t,FollowerCount:n}=i[0];let r;r=e&&t?"PER_AZ: ".concat(n):"ANY_AZ: ".concat(n),a.push({label:"Read replicas (followers)",value:r})}if(t){const e=IP(t);e&&a.push(e)}return a.push({label:"Bloom filter",value:o?"Enabled":"Disabled"}),a})(a,s);break;case hj.gb.EPathTypeColumnTable:j=function(e){const t=[];if(t.push({label:"Standalone",value:String(!kP(e))}),e.Sharding&&e.Sharding.HashSharding&&t.push({label:"Sharding",value:"hash"}),e.TtlSettings){const n=IP(null===e||void 0===e?void 0:e.TtlSettings);n&&t.push(n)}return t}(l)}k=t===hj.gb.EPathTypeColumnTable&&kP(l)?[jP(n)]:[Ts(LI,{PartCount:c,RowCount:u,DataSize:d,IndexSize:h}),Ts(LI,{LastAccessTime:p,LastUpdateTime:f}),Ts(LI,{ImmediateTxCompleted:m,PlannedTxCompleted:g,TxRejectedByOverload:v,TxRejectedBySpace:y,TxCompleteLagMsec:b,InFlightTxCount:x}),Ts(LI,{RowUpdates:w,RowDeletes:S,RowReads:_,RangeReads:C,RangeReadRows:E})];const I=Ts(AI,o);let P=[];return Array.isArray(T)&&T.length>0?P=Ts(RI,T[0]):void 0!==O?P.push(MI("FollowerCount",O)):void 0!==N&&P.push(MI("CrossDataCenterFollowerCount",N)),{generalInfo:j,tableStatsInfo:k,tabletMetricsInfo:I,partitionConfigInfo:P}},DP=Me("ydb-diagnostics-table-info"),AP=e=>{let{data:t,type:n,olapStats:r}=e;const i=wI(null===t||void 0===t?void 0:t.PathDescription),{generalInfo:o=[],tableStatsInfo:s=[],tabletMetricsInfo:l=[],partitionConfigInfo:c=[]}=a.useMemo((()=>PP(t,n,r)),[t,n,r]);return(0,Le.jsxs)("div",{className:DP(),children:[(0,Le.jsx)(Ss,{info:o,title:i,className:DP("info-block"),renderEmptyState:()=>(0,Le.jsx)("div",{className:DP("title"),children:i})}),(0,Le.jsxs)("div",{className:DP("row"),children:[(0,Le.jsx)("div",{className:DP("col"),children:s.map(((e,t)=>(0,Le.jsx)(Ss,{info:e,title:0===t?NP("tableStats"):void 0,className:DP("info-block"),renderEmptyState:()=>null},t)))}),l.length>0||c.length>0?(0,Le.jsxs)("div",{className:DP("col"),children:[(0,Le.jsx)(Ss,{info:l,title:NP("tabletMetrics"),className:DP("info-block"),renderEmptyState:()=>null}),(0,Le.jsx)(Ss,{info:c,title:NP("partitionConfig"),className:DP("info-block"),renderEmptyState:()=>null})]}):null]})]})},RP=e=>{let{data:t}=e;const n=wI(null===t||void 0===t?void 0:t.PathDescription),{error:r}=Do((e=>e.schema));return r?(0,Le.jsx)("div",{className:"error",children:r.statusText}):t?(0,Le.jsxs)("div",{children:[(0,Le.jsx)(Ss,{title:n,info:_P(t)}),(0,Le.jsx)(SP,{})]}):(0,Le.jsxs)("div",{className:"error",children:["No ",n," data"]})};const MP=function(e){let{type:t,tenantName:n}=e;const{autorefresh:r,currentSchemaPath:i}=Do((e=>e.schema)),o=i||n,a=(0,pj.vp)(t)&&(0,pj.Jp)(t)?{path:o}:zl.CN,{currentData:s,isFetching:l}=VI.useGetOlapStatsQuery(a,{pollingInterval:r}),c=l&&void 0===s,{result:u}=s||{result:void 0},d=(0,pj.St)(t),h=Do((e=>(0,Vk.eU)(e,i,t)),ae.wU);let p=zl.CN;o&&(d?h&&(p=[o,...h]):p=[o]);const{currentData:f,isFetching:m,error:g}=GI.useGetOverviewQuery(p,{pollingInterval:r}),v=m&&void 0===f,{data:y,additionalData:b}=f||{};return v||c||d&&!h?(0,Le.jsx)(N_,{size:"m"}):g?(0,Le.jsx)(zc,{error:g}):(0,Le.jsx)("div",{children:(()=>{var e;const n=null!==y&&void 0!==y?y:void 0,r={[hj.gb.EPathTypeInvalid]:void 0,[hj.gb.EPathTypeDir]:void 0,[hj.gb.EPathTypeTable]:void 0,[hj.gb.EPathTypeSubDomain]:void 0,[hj.gb.EPathTypeTableIndex]:()=>(0,Le.jsx)(zI,{data:n}),[hj.gb.EPathTypeExtSubDomain]:void 0,[hj.gb.EPathTypeColumnStore]:void 0,[hj.gb.EPathTypeColumnTable]:void 0,[hj.gb.EPathTypeCdcStream]:()=>{var e;return(0,Le.jsx)(EP,{data:n,topic:null!==(e=null===b||void 0===b?void 0:b[0])&&void 0!==e?e:void 0})},[hj.gb.EPathTypePersQueueGroup]:()=>(0,Le.jsx)(RP,{data:n}),[hj.gb.EPathTypeExternalTable]:()=>(0,Le.jsx)(iP,{data:n}),[hj.gb.EPathTypeExternalDataSource]:()=>(0,Le.jsx)($I,{data:n}),[hj.gb.EPathTypeView]:void 0,[hj.gb.EPathTypeReplication]:()=>(0,Le.jsx)(mP,{data:n})};return t&&(null===(e=r[t])||void 0===e?void 0:e.call(r))||(0,Le.jsx)(AP,{data:n,type:t,olapStats:u})})()})};var LP=n(30696),FP=n(8978),zP=n(66307),BP=n(30746);const UP=()=>"ck.".concat(((e,t)=>{let n="";for(let r=e;r>0;--r)n+=t[Math.floor(Math.random()*t.length)];return n})(10,"0123456789abcdefghijklmnopqrstuvwxyz")),HP=a.memo,VP=(0,Re.withNaming)({e:"__",m:"_"}),GP=(0,Re.withNaming)({n:"chartkit-",e:"__",m:"_"});class WP extends a.Component{constructor(){super(...arguments),this.state={error:void 0},this.resetError=()=>{this.state.error&&this.setState({error:void 0})}}static getDerivedStateFromError(e){return{error:e}}componentDidCatch(){var e,t;const{error:n}=this.state;n&&(null===(t=(e=this.props).onError)||void 0===t||t.call(e,{error:n}))}componentDidUpdate(e){if(e.data!==this.props.data){const{error:e}=this.state;e&&"code"in e&&e.code===BP.Wn.NO_DATA&&this.resetError()}}render(){const{error:e}=this.state;if(e){const t=function(e){const t="code"in e&&e.code;return(e.message||t||(0,zP.a)("error","label_unknown-error")).toString()}(e);return this.props.renderError?this.props.renderError({error:e,message:t,resetError:this.resetError}):a.createElement("div",null,t)}return this.props.children}}const qP=GP("loader"),ZP=e=>{var{renderPluginLoader:t}=e,n=(0,nt._T)(e,["renderPluginLoader"]);const r=null===t||void 0===t?void 0:t();return"undefined"!==typeof r?r:a.createElement("div",{className:qP()},a.createElement(Di,Object.assign({},n)))},YP=VP("chartkit"),KP=e=>{const t=a.useRef(),{instanceRef:n,id:r,type:i,isMobile:o,renderPluginLoader:s}=e,l=(0,nt._T)(e,["instanceRef","id","type","isMobile","renderPluginLoader"]),c=a.useMemo((()=>UP()),[]),u=r||c,d=FP.X.get("lang"),h=FP.X.get("plugins").find((e=>e.type===i));if(!h)throw new BP.Dx({code:BP.Wn.UNKNOWN_PLUGIN,message:(0,zP.a)("error","label_unknown-plugin",{type:i})});const p=h.renderer;return a.useImperativeHandle(n,(()=>({reflow(e){var n;(null===(n=t.current)||void 0===n?void 0:n.reflow)&&t.current.reflow(e)}})),[]),a.createElement(a.Suspense,{fallback:a.createElement(ZP,{renderPluginLoader:s})},a.createElement("div",{className:YP({mobile:o},"chartkit-theme_common")},a.createElement(p,Object.assign({ref:t,id:u,lang:d},l))))},QP=HP(a.forwardRef((function(e,t){return a.createElement(WP,{onError:e.onError,data:e.data,renderError:e.renderError},a.createElement(KP,Object.assign({instanceRef:t},e)))}))),XP={type:"yagr",renderer:a.lazy((()=>Promise.all([n.e(7645),n.e(4983)]).then(n.bind(n,87645))))};var $P={grad:.9,turn:360,rad:360/(2*Math.PI)},JP=function(e){return"string"==typeof e?e.length>0:"number"==typeof e},eD=function(e,t,n){return void 0===t&&(t=0),void 0===n&&(n=Math.pow(10,t)),Math.round(n*e)/n+0},tD=function(e,t,n){return void 0===t&&(t=0),void 0===n&&(n=1),e>n?n:e>t?e:t},nD=function(e){return(e=isFinite(e)?e%360:0)>0?e:e+360},rD=function(e){return{r:tD(e.r,0,255),g:tD(e.g,0,255),b:tD(e.b,0,255),a:tD(e.a)}},iD=function(e){return{r:eD(e.r),g:eD(e.g),b:eD(e.b),a:eD(e.a,3)}},oD=/^#([0-9a-f]{3,8})$/i,aD=function(e){var t=e.toString(16);return t.length<2?"0"+t:t},sD=function(e){var t=e.r,n=e.g,r=e.b,i=e.a,o=Math.max(t,n,r),a=o-Math.min(t,n,r),s=a?o===t?(n-r)/a:o===n?2+(r-t)/a:4+(t-n)/a:0;return{h:60*(s<0?s+6:s),s:o?a/o*100:0,v:o/255*100,a:i}},lD=function(e){var t=e.h,n=e.s,r=e.v,i=e.a;t=t/360*6,n/=100,r/=100;var o=Math.floor(t),a=r*(1-n),s=r*(1-(t-o)*n),l=r*(1-(1-t+o)*n),c=o%6;return{r:255*[r,s,a,a,l,r][c],g:255*[l,r,r,s,a,a][c],b:255*[a,a,l,r,r,s][c],a:i}},cD=function(e){return{h:nD(e.h),s:tD(e.s,0,100),l:tD(e.l,0,100),a:tD(e.a)}},uD=function(e){return{h:eD(e.h),s:eD(e.s),l:eD(e.l),a:eD(e.a,3)}},dD=function(e){return lD((n=(t=e).s,{h:t.h,s:(n*=((r=t.l)<50?r:100-r)/100)>0?2*n/(r+n)*100:0,v:r+n,a:t.a}));var t,n,r},hD=function(e){return{h:(t=sD(e)).h,s:(i=(200-(n=t.s))*(r=t.v)/100)>0&&i<200?n*r/100/(i<=100?i:200-i)*100:0,l:i/2,a:t.a};var t,n,r,i},pD=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,fD=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,mD=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,gD=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,vD={string:[[function(e){var t=oD.exec(e);return t?(e=t[1]).length<=4?{r:parseInt(e[0]+e[0],16),g:parseInt(e[1]+e[1],16),b:parseInt(e[2]+e[2],16),a:4===e.length?eD(parseInt(e[3]+e[3],16)/255,2):1}:6===e.length||8===e.length?{r:parseInt(e.substr(0,2),16),g:parseInt(e.substr(2,2),16),b:parseInt(e.substr(4,2),16),a:8===e.length?eD(parseInt(e.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(e){var t=mD.exec(e)||gD.exec(e);return t?t[2]!==t[4]||t[4]!==t[6]?null:rD({r:Number(t[1])/(t[2]?100/255:1),g:Number(t[3])/(t[4]?100/255:1),b:Number(t[5])/(t[6]?100/255:1),a:void 0===t[7]?1:Number(t[7])/(t[8]?100:1)}):null},"rgb"],[function(e){var t=pD.exec(e)||fD.exec(e);if(!t)return null;var n,r,i=cD({h:(n=t[1],r=t[2],void 0===r&&(r="deg"),Number(n)*($P[r]||1)),s:Number(t[3]),l:Number(t[4]),a:void 0===t[5]?1:Number(t[5])/(t[6]?100:1)});return dD(i)},"hsl"]],object:[[function(e){var t=e.r,n=e.g,r=e.b,i=e.a,o=void 0===i?1:i;return JP(t)&&JP(n)&&JP(r)?rD({r:Number(t),g:Number(n),b:Number(r),a:Number(o)}):null},"rgb"],[function(e){var t=e.h,n=e.s,r=e.l,i=e.a,o=void 0===i?1:i;if(!JP(t)||!JP(n)||!JP(r))return null;var a=cD({h:Number(t),s:Number(n),l:Number(r),a:Number(o)});return dD(a)},"hsl"],[function(e){var t=e.h,n=e.s,r=e.v,i=e.a,o=void 0===i?1:i;if(!JP(t)||!JP(n)||!JP(r))return null;var a=function(e){return{h:nD(e.h),s:tD(e.s,0,100),v:tD(e.v,0,100),a:tD(e.a)}}({h:Number(t),s:Number(n),v:Number(r),a:Number(o)});return lD(a)},"hsv"]]},yD=function(e,t){for(var n=0;n=.5},e.prototype.toHex=function(){return t=(e=iD(this.rgba)).r,n=e.g,r=e.b,o=(i=e.a)<1?aD(eD(255*i)):"","#"+aD(t)+aD(n)+aD(r)+o;var e,t,n,r,i,o},e.prototype.toRgb=function(){return iD(this.rgba)},e.prototype.toRgbString=function(){return t=(e=iD(this.rgba)).r,n=e.g,r=e.b,(i=e.a)<1?"rgba("+t+", "+n+", "+r+", "+i+")":"rgb("+t+", "+n+", "+r+")";var e,t,n,r,i},e.prototype.toHsl=function(){return uD(hD(this.rgba))},e.prototype.toHslString=function(){return t=(e=uD(hD(this.rgba))).h,n=e.s,r=e.l,(i=e.a)<1?"hsla("+t+", "+n+"%, "+r+"%, "+i+")":"hsl("+t+", "+n+"%, "+r+"%)";var e,t,n,r,i},e.prototype.toHsv=function(){return e=sD(this.rgba),{h:eD(e.h),s:eD(e.s),v:eD(e.v),a:eD(e.a,3)};var e},e.prototype.invert=function(){return CD({r:255-(e=this.rgba).r,g:255-e.g,b:255-e.b,a:e.a});var e},e.prototype.saturate=function(e){return void 0===e&&(e=.1),CD(xD(this.rgba,e))},e.prototype.desaturate=function(e){return void 0===e&&(e=.1),CD(xD(this.rgba,-e))},e.prototype.grayscale=function(){return CD(xD(this.rgba,-1))},e.prototype.lighten=function(e){return void 0===e&&(e=.1),CD(SD(this.rgba,e))},e.prototype.darken=function(e){return void 0===e&&(e=.1),CD(SD(this.rgba,-e))},e.prototype.rotate=function(e){return void 0===e&&(e=15),this.hue(this.hue()+e)},e.prototype.alpha=function(e){return"number"==typeof e?CD({r:(t=this.rgba).r,g:t.g,b:t.b,a:e}):eD(this.rgba.a,3);var t},e.prototype.hue=function(e){var t=hD(this.rgba);return"number"==typeof e?CD({h:e,s:t.s,l:t.l,a:t.a}):eD(t.h)},e.prototype.isEqual=function(e){return this.toHex()===CD(e).toHex()},e}(),CD=function(e){return e instanceof _D?e:new _D(e)};const ED=["#7EB26D","#EAB839","#6ED0E0","#EF843C","#E24D42","#1F78C1","#BA43A9","#705DA0","#508642","#CCA300"];const TD=e=>{switch(e){case"ms":return OD;case"size":return ND;case"percent":return kD;default:return}};function OD(e){return null===e?Lo.jX:(0,Ej.zm)((0,ks.W0)(jD(e),2))}function ND(e){return null===e?Lo.jX:(0,BC.td)({value:jD(e),precision:3})}function kD(e){return null===e?Lo.jX:Math.round(100*jD(e))+"%"}function jD(e){return(0,Ou.kE)(e)?Number(e):0}const ID={"30m":30*Lo.sU,"1h":Lo.RQ,"1d":Lo.ii,"1w":7*Lo.ii},PD=JSON.parse('{"not-supported":"Charts are not supported on current ydb version"}'),DD=(0,We.wZ)("ydb-metric-chart",{en:PD}),AD=Dl.h.injectEndpoints({endpoints:e=>({getChartData:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{const t=await async function(e){let{database:t,metrics:n,timeFrame:r,maxDataPoints:i}=e,{signal:o}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const a=n.map((e=>"target=".concat(e.target))).join("&"),s=Math.round(Date.now()/1e3),l=s-ID[r];return window.api.getChartData({target:a,from:l,until:s,maxDataPoints:i,database:t},{signal:o})}(e,{signal:n});if(Array.isArray(t)){const n=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0;const n=e.map((e=>{let{datapoints:n,target:r}=e;const i=t.find((e=>e.target===r));if(!i)return;const o=n.map((e=>e[0]));return{...i,data:o}})).filter((e=>void 0!==e));return{timeline:e[0].datapoints.map((e=>1e3*e[1])),metrics:n}}(t,e.metrics);return{data:n}}return{error:new Error("string"===typeof t?DD("not-supported"):t.error)}}catch(r){return{error:r}}},providesTags:["All"],keepUnusedDataFor:0})}),overrideExisting:"throw"}),RD=Me("ydb-metric-chart");FP.X.set({plugins:[XP]});const MD=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{dataType:n,scaleRange:r}=t,i=TD(n),o=!e.metrics.length,a=e.metrics.map(((e,t)=>{const n=e.color||ED[t],r=function(e,t){const n=CD(e);if(!n.isValid())throw new Error("Invalid color is passed");return n.alpha(t).toRgbString()}(n,.1);return{id:e.target,name:e.title||e.target,data:e.data,formatter:i,lineColor:n,color:r,legendColorKey:"lineColor"}}));return{data:{timeline:e.timeline,graphs:a},libraryConfig:{chart:{size:{padding:o?[10,0,10,0]:void 0},series:{type:"area",spanGaps:!0,lineWidth:1.5},select:{zoom:!1}},scales:{y:{type:"linear",range:"nice",min:(null===r||void 0===r?void 0:r.min)||0,max:null===r||void 0===r?void 0:r.max}},axes:{y:{values:i?(e,t)=>t.map(i):void 0}},tooltip:{show:!0,tracking:"sticky"}}}},LD={timeline:[],metrics:[]},FD=e=>{let{database:t,title:n,metrics:r,timeFrame:i="1h",autorefresh:o,width:s=400,height:l=s/1.5,chartOptions:c,onChartDataStatusChange:u,isChartVisible:d}=e;const{currentData:h,error:p,isFetching:f,status:m}=AD.useGetChartDataQuery({database:t,metrics:r,timeFrame:i,maxDataPoints:s/2},{pollingInterval:o}),g=f&&!h;a.useEffect((()=>null===u||void 0===u?void 0:u("fulfilled"===m?"success":"loading")),[m,u]);const v=MD(h||LD,c);return(0,Le.jsxs)("div",{className:RD(null),style:{height:l,width:s},children:[(0,Le.jsx)("div",{className:RD("title"),children:n}),g?(0,Le.jsx)(N_,{}):d?(0,Le.jsxs)("div",{className:RD("chart"),children:[(0,Le.jsx)(QP,{type:"yagr",data:v}),p?(0,Le.jsx)(zc,{className:RD("error"),error:p}):null]}):null]})},zD=Me("ydb-timeframe-selector"),BD=e=>{let{value:t,onChange:n,className:r}=e;return(0,Le.jsx)("div",{className:zD(null,r),children:Object.keys(ID).map((e=>(0,Le.jsx)(Ie.z,{view:"flat",selected:t===e,onClick:()=>n(e),children:e},e)))})},UD=Me("ydb-tenant-dashboard"),HD=e=>{let{database:t,charts:n}=e;const[r,i]=a.useState(!0),[o="1h",s]=((e,t,n)=>{const r=(0,a.useMemo)((()=>({[e]:null!=t?t:"inherit"})),[e,t]),[i,o]=gc(r,n);return[i[e],(0,a.useCallback)(((t,n)=>o("function"===typeof t?n=>{const r=t(n[e]);return{[e]:r}}:{[e]:t},n)),[e,o])]})("timeframe",Gl),{autorefresh:l}=Do((e=>e.schema)),c=r?0:l,u=e=>{"success"===e&&i(!1)},d=1===n.length?872:428;return(0,Le.jsxs)("div",{className:UD(null),style:{display:r?"none":void 0},children:[(0,Le.jsx)("div",{className:UD("controls"),children:(0,Le.jsx)(BD,{value:o,onChange:s})}),(0,Le.jsx)("div",{className:UD("charts"),children:n.map((e=>{const n=e.metrics.map((e=>{let{target:t}=e;return t})).join("&");return(0,Le.jsx)(FD,{database:t,title:e.title,metrics:e.metrics,timeFrame:o,chartOptions:e.options,autorefresh:c,width:d,height:285.3333333333333,onChartDataStatusChange:u,isChartVisible:!r},n)}))})]})},VD=JSON.parse('{"no-data":"No data","no-pools-data":"No pools data","top-nodes.empty-data":"No such nodes","top-groups.empty-data":"No such groups","top":"Top","nodes":"nodes","shards":"shards","groups":"groups","queries":"queries","tables":"tables","by-pools-usage":"by pools usage","by-cpu-time":"by cpu time","by-cpu-usage":"by cpu usage","by-load":"by load","by-memory":"by memory","by-usage":"by usage","by-size":"by size","cards.cpu-label":"CPU","cards.storage-label":"Storage","cards.memory-label":"Memory","charts.queries-per-second":"Queries per second","charts.transaction-latency":"Transactions latencies {{percentile}}","charts.cpu-usage":"CPU usage by pool","charts.storage-usage":"Tablet storage usage","charts.memory-usage":"Memory usage","storage.tablet-storage-title":"Tablet storage","storage.tablet-storage-description":"Size of user data and indexes stored in schema objects (tables, topics, etc.)","storage.db-storage-title":"Database storage","storage.db-storage-description":"Size of data stored in distributed storage with all overheads for redundancy"}'),GD=(0,We.wZ)("ydb-diagnostics-tenant-overview",{en:VD}),WD=[{title:GD("charts.queries-per-second"),metrics:[{target:"queries.requests",title:GD("charts.queries-per-second")}]},{title:GD("charts.transaction-latency",{percentile:""}),metrics:[{target:"queries.latencies.p50",title:GD("charts.transaction-latency",{percentile:"p50"})},{target:"queries.latencies.p75",title:GD("charts.transaction-latency",{percentile:"p75"})},{target:"queries.latencies.p90",title:GD("charts.transaction-latency",{percentile:"p90"})},{target:"queries.latencies.p99",title:GD("charts.transaction-latency",{percentile:"p99"})}],options:{dataType:"ms"}}],qD=e=>{let{database:t}=e;return(0,Le.jsx)(HD,{database:t,charts:WD})};var ZD=n(87863),YD=n.n(ZD);let KD,QD;!function(e){e.UNSPECIFIED="UNSPECIFIED",e.GOOD="GOOD",e.DEGRADED="DEGRADED",e.MAINTENANCE_REQUIRED="MAINTENANCE_REQUIRED",e.EMERGENCY="EMERGENCY"}(KD||(KD={})),function(e){e.UNSPECIFIED="UNSPECIFIED",e.GREY="GREY",e.GREEN="GREEN",e.BLUE="BLUE",e.YELLOW="YELLOW",e.ORANGE="ORANGE",e.RED="RED"}(QD||(QD={}));const XD={[QD.UNSPECIFIED]:al.K.Grey,[QD.GREY]:al.K.Grey,[QD.GREEN]:al.K.Green,[QD.BLUE]:al.K.Blue,[QD.YELLOW]:al.K.Yellow,[QD.ORANGE]:al.K.Orange,[QD.RED]:al.K.Red},$D=Me("issue-tree-item"),JD=e=>{let{status:t,message:n,type:r,onClick:i}=e;return(0,Le.jsxs)("div",{className:$D(),onClick:i,children:[(0,Le.jsx)("div",{className:$D("field",{status:!0}),children:(0,Le.jsx)(Il,{mode:"icons",status:t,name:r})}),(0,Le.jsx)("div",{className:$D("field",{message:!0}),children:n})]})},eA=Me("issue-tree"),tA=e=>{let{issueTree:t}=e;const[n,r]=a.useState({}),i=a.useCallback((e=>e?(0,Le.jsx)("div",{className:eA("info-panel"),children:(0,Le.jsx)(bs(),{data:e,search:!1,isExpanded:()=>!0,className:eA("inspector")})}):null),[]),o=a.useCallback((e=>e.map((e=>{const{id:t}=e,{status:a,message:s,type:l,reasonsItems:c,level:u,...d}=e,h="undefined"===typeof n[t]||n[t],p=()=>{r((e=>({...e,[t]:!h})))};return(0,Le.jsxs)(aC,{name:(0,Le.jsx)(JD,{status:XD[a],message:s,type:l}),collapsed:h,hasArrow:!0,onClick:p,onArrowClick:p,level:u-1,children:[i(YD()(d,["reason"])),o(c||[])]},t)}))),[n,i]);return(0,Le.jsx)("div",{className:eA(),children:(0,Le.jsx)("div",{className:eA("block"),children:o([t])})})},nA=JSON.parse('{"title.healthcheck":"Healthcheck","label.update":"Update","label.show-details":"Show details","label.issues":"Issues:","status_message.ok":"No issues","no-data":"no healthcheck data"}'),rA=JSON.parse('{"title.healthcheck":"Healthcheck","label.update":"\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c","label.show-details":"\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438","label.issues":"\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u044b:","status_message.ok":"\u041d\u0435\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c","no-data":"\u043d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445 healthcheck"}'),iA=(0,We.wZ)("ydb-diagnostics-healthcheck",{ru:rA,en:nA}),oA=Me("healthcheck");function aA(e){const{issueTrees:t,loading:n,error:r}=e;return(0,Le.jsx)("div",{className:oA("details"),children:(0,Le.jsx)("div",{className:oA("details-content-wrapper"),children:r?(0,Le.jsx)(zc,{error:r,defaultMessage:iA("no-data")}):n?(0,Le.jsx)(N_,{size:"m"}):t&&t.length?(0,Le.jsx)(a.Fragment,{children:t.map((e=>(0,Le.jsx)(tA,{issueTree:e},e.id)))}):iA("status_message.ok")})})}var sA=n(35240);const lA=Me("ydb-diagnostic-card");function cA(e){let{children:t,className:n,active:r}=e;return(0,Le.jsx)("div",{className:lA({active:r},n),children:t})}const uA=Me("healthcheck");function dA(e){const{selfCheckResult:t,issuesStatistics:n,loading:r,onUpdate:i,error:o,active:s}=e;return(0,Le.jsxs)(cA,{className:uA("preview"),active:s,children:[(()=>{const e=t.toLowerCase();return r?null:(0,Le.jsxs)("div",{className:uA("preview-header"),children:[(0,Le.jsxs)("div",{className:uA("preview-title-wrapper"),children:[(0,Le.jsx)("div",{className:uA("preview-title"),children:iA("title.healthcheck")}),(0,Le.jsx)(Ie.z,{size:"s",onClick:e=>{e.preventDefault(),i()},loading:r,view:"flat-secondary",children:(0,Le.jsx)(we.J,{data:IO,size:20})})]}),(0,Le.jsx)("div",{className:uA("self-check-status-indicator",{[e]:!0}),children:t})]})})(),o?(0,Le.jsx)(zc,{error:o,defaultMessage:iA("no-data")}):r?(0,Le.jsx)(N_,{size:"m"}):(0,Le.jsx)("div",{className:uA("preview-content"),children:n&&n.length?(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("div",{children:iA("label.issues")}),(0,Le.jsx)("div",{className:uA("issues-statistics"),children:n.map((e=>{let[t,n]=e;return(0,Le.jsx)(Il,{mode:"icons",status:XD[t],label:n.toString(),size:"l"},t)}))})]}):iA("status_message.ok")})]})}const hA=Me("ydb-metrics-card"),pA=e=>{let t;return"Warning"===e&&(t=al.K.Yellow),"Danger"===e&&(t=al.K.Red),t?(0,Le.jsx)(kl,{status:t,mode:"icons",size:"l"}):null};function fA(e){let{active:t,label:n,status:r,metrics:i}=e;return(0,Le.jsxs)(cA,{className:hA({active:t}),active:t,children:[(0,Le.jsxs)("div",{className:hA("header"),children:[n&&(0,Le.jsx)("div",{className:hA("label"),children:n}),pA(r)]}),(0,Le.jsx)("div",{className:hA("content"),children:i.map(((e,t)=>{let{title:n,...r}=e;return(0,Le.jsxs)("div",{className:hA("metric"),children:[(0,Le.jsx)("div",{className:hA("metric-title"),children:n}),(0,Le.jsx)(Iu,{size:"xs",colorizeProgress:!0,...r})]},t)}))})]})}const mA=Me("metrics-cards");function gA(e){let{poolsCpuStats:t,memoryStats:n,blobStorageStats:r,tabletStorageStats:i,issuesStatistics:o,selfCheckResult:a,fetchHealthcheck:s,healthcheckLoading:l,healthcheckError:c}=e;const u=Ca(),{metricsTab:d}=Do((e=>e.tenant)),h=(0,Ta.mB)(u),p=e=>e===d?"":e,f={[us.Xk.cpu]:fs({...h,[ds.metricsTab]:p(us.Xk.cpu)}),[us.Xk.storage]:fs({...h,[ds.metricsTab]:p(us.Xk.storage)}),[us.Xk.memory]:fs({...h,[ds.metricsTab]:p(us.Xk.memory)}),[us.Xk.healthcheck]:fs({...h,[ds.metricsTab]:p(us.Xk.healthcheck)})};return(0,Le.jsxs)("div",{className:mA(),children:[(0,Le.jsx)(bl,{to:f.cpu,className:mA("tab"),children:(0,Le.jsx)(vA,{poolsCpuStats:t,active:d===us.Xk.cpu})}),(0,Le.jsx)(bl,{to:f.storage,className:mA("tab"),children:(0,Le.jsx)(yA,{blobStorageStats:r,tabletStorageStats:i,active:d===us.Xk.storage})}),(0,Le.jsx)(bl,{to:f.memory,className:mA("tab"),children:(0,Le.jsx)(bA,{memoryStats:n,active:d===us.Xk.memory})}),(0,Le.jsx)(bl,{to:f.healthcheck,className:mA("tab"),children:(0,Le.jsx)(dA,{selfCheckResult:a,issuesStatistics:o,onUpdate:s,loading:l,error:c,active:d===us.Xk.healthcheck})})]})}function vA(e){let{poolsCpuStats:t=[],active:n}=e,r=sA.L.Unspecified;const i=t.filter((e=>!("Batch"===e.name||"IO"===e.name))).map((e=>{const{name:t,usage:n,limit:i,used:o}=e,a=(0,LP.Vn)(n);return sA.l[a]>sA.l[r]&&(r=a),{title:t,value:o,capacity:i,warningThreshold:LP.hJ,dangerThreshold:LP.Gz}}));return(0,Le.jsx)(fA,{label:GD("cards.cpu-label"),active:n,metrics:i,status:r})}function yA(e){let{blobStorageStats:t=[],tabletStorageStats:n,active:r}=e,i=sA.L.Unspecified;const o=(n||t).map((e=>{const{name:t,used:n,limit:r,usage:o}=e,a=(0,LP._W)(o);return sA.l[a]>sA.l[i]&&(i=a),{title:t,value:n,capacity:r,warningThreshold:LP._g,dangerThreshold:LP.nD,formatValues:ks.QO}}));return(0,Le.jsx)(fA,{label:GD("cards.storage-label"),active:r,metrics:o,status:i})}function bA(e){let{active:t,memoryStats:n=[]}=e,r=sA.L.Unspecified;const i=n.map((e=>{const{name:t,used:n,limit:i,usage:o}=e,a=(0,LP.Lv)(o);return sA.l[a]>sA.l[r]&&(r=a),{title:t,value:n,capacity:i,warningThreshold:LP.B8,dangerThreshold:LP.nr,formatValues:ks.QO}}));return(0,Le.jsx)(fA,{label:GD("cards.memory-label"),active:t,metrics:i,status:r})}const xA=Dl.h.injectEndpoints({endpoints:e=>({getTopNodes:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{const t=await window.api.getNodes({type:"any",sortOrder:-1,limit:Lo.fl,...e},{signal:n});return{data:iu(t).Nodes}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"}),wA=Me("tenant-overview");function SA(e){let{title:t,error:n,loading:r,tableClassNameModifiers:i={},...o}=e;return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("div",{className:wA("title"),children:t}),(0,Le.jsx)("div",{className:wA("table",i),children:n?(0,Le.jsx)(zc,{error:n}):r?(0,Le.jsx)(Qc,{rows:Lo.fl}):(0,Le.jsx)(qc,{settings:Lo.E6,...o})})]})}const _A=e=>{let{prefix:t=GD("top"),entity:n,postfix:r,link:i}=e;return i?(0,Le.jsxs)(a.Fragment,{children:[t," ",(0,Le.jsx)(_l,{to:i,children:n})," ",r]}):"".concat(t," ").concat(n," ").concat(r)};function CA(e){let{path:t,additionalNodesProps:n}=e;const r=Oa(),{autorefresh:i}=Do((e=>e.schema)),o=(a=null===n||void 0===n?void 0:n.getNodeRef,[dd,rd,od(a)]);var a;const{currentData:s,isFetching:l,error:c}=xA.useGetTopNodesQuery({tenant:t,sortValue:"CPU"},{pollingInterval:i}),u=l&&void 0===s,d=s,h=_A({entity:GD("nodes"),postfix:GD("by-pools-usage"),link:fs({...r,[ds.diagnosticsTab]:us.qQ.nodes})});return(0,Le.jsx)(SA,{columnsWidthLSKey:Hu,data:d||[],columns:o,title:h,loading:u,error:c,emptyDataMessage:GD("top-nodes.empty-data")})}function EA(e){let{path:t,additionalNodesProps:n}=e;const r=Oa(),{autorefresh:i}=Do((e=>e.schema)),o=(a=null===n||void 0===n?void 0:n.getNodeRef,[fd,rd,od(a),ld]);var a;const{currentData:s,isFetching:l,error:c}=xA.useGetTopNodesQuery({tenant:t,sortValue:"LoadAverage"},{pollingInterval:i}),u=l&&void 0===s,d=s,h=_A({entity:GD("nodes"),postfix:GD("by-load"),link:fs({...r,[ds.diagnosticsTab]:us.qQ.nodes})});return(0,Le.jsx)(SA,{columnsWidthLSKey:Hu,data:d||[],columns:o,title:h,loading:u,error:c,emptyDataMessage:GD("top-nodes.empty-data")})}var TA=n(83786);const OA=Dl.h.injectEndpoints({endpoints:e=>({getOverviewTopQueries:e.query({queryFn:async(e,t)=>{let{database:n}=e,{signal:r}=t;try{const e=await window.api.sendQuery({schema:"modern",query:(i=n,"\nSELECT\n CPUTime as CPUTimeUs,\n QueryText,\nFROM `".concat(i,"/.sys/top_queries_by_cpu_time_one_hour`\nORDER BY CPUTimeUs DESC\nLIMIT ").concat(Lo.fl,"\n")),database:n,action:"execute-scan"},{signal:r});return(0,BI.gW)(e)?{error:e}:{data:(0,BI.gY)(e)}}catch(o){return{error:o||new Error("Unauthorized")}}var i},providesTags:["All"]})}),overrideExisting:"throw"}),NA=Me("kv-truncated-query"),kA=e=>{let{value:t="",maxQueryHeight:n=6}=e;const r=t.split("\n");if(r.length>n){const e=r.slice(0,n).join("\n"),t="\n...\nThe request was truncated. Click on the line to show the full query on the query tab";return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("span",{className:NA(),children:e}),(0,Le.jsx)("span",{className:NA("message",{color:"secondary"}),children:t})]})}return(0,Le.jsx)(a.Fragment,{children:t})},jA=e=>{let{value:t=""}=e;return(0,Le.jsx)(hu,{contentClassName:NA("popover-content"),content:t,children:t})};var IA=n(47694),PA=n.n(IA);const DA=6,AA={...Lo.LE,dynamicRenderType:"variable"},RA=Me("kv-top-queries"),MA="topQueriesColumnsWidth",LA="QueryText",FA="EndTime",zA="ReadRows",BA="ReadBytes",UA="UserSID",HA="OneLineQueryText",VA="QueryHash",GA="Duration",WA={name:"CPUTimeUs",sortAccessor:e=>Number(e.CPUTimeUs),width:120,align:Hc.ZP.RIGHT,sortable:!1},qA={name:LA,sortAccessor:e=>Number(e.CPUTimeUs),render:e=>{var t;let{row:n}=e;return(0,Le.jsx)("div",{className:RA("query"),children:(0,Le.jsx)(kA,{value:null===(t=n.QueryText)||void 0===t?void 0:t.toString(),maxQueryHeight:DA})})},sortable:!1,width:500},ZA={name:FA,render:e=>{let{row:t}=e;return(0,ks.o0)(new Date(t.EndTime).getTime())},align:Hc.ZP.RIGHT,width:200},YA={name:zA,render:e=>{let{row:t}=e;return(0,ks.uf)(t.ReadRows)},sortAccessor:e=>Number(e.ReadRows),align:Hc.ZP.RIGHT,width:150},KA={name:BA,render:e=>{let{row:t}=e;return(0,ks.uf)(t.ReadBytes)},sortAccessor:e=>Number(e.ReadBytes),align:Hc.ZP.RIGHT,width:150},QA={name:UA,render:e=>{let{row:t}=e;return(0,Le.jsx)("div",{className:RA("user-sid"),children:t.UserSID||"\u2013"})},sortAccessor:e=>String(e.UserSID),align:Hc.ZP.LEFT},XA={name:HA,header:"QueryText",render:e=>{var t;let{row:n}=e;return(0,Le.jsx)(jA,{value:null===(t=n.QueryText)||void 0===t?void 0:t.toString()})},sortable:!1,width:500},$A={name:VA,render:e=>{let{row:t}=e;return n=String(t.QueryText),(PA().str(n)>>>0).toString(16).toUpperCase().padStart(8,"0");var n},width:130,sortable:!1},JA={name:GA,header:"Duration, ms",render:e=>{var t;let{row:n}=e;return(0,ks.uf)((0,Ej.BO)(null!==(t=n.Duration)&&void 0!==t?t:void 0))},sortAccessor:e=>Number(e.Duration),align:Hc.ZP.RIGHT,width:150},eR=()=>[$A,XA,WA];function tR(e){let{path:t}=e;const n=Ao(),r=Ca(),i=_a(),o=(0,Ta.mB)(r),{autorefresh:s}=Do((e=>e.schema)),l=eR(),{currentData:c,isFetching:u,error:d}=OA.useGetOverviewTopQueriesQuery({database:t},{pollingInterval:s}),h=u&&void 0===c,{result:p}=c||{},f=a.useCallback((e=>{const{QueryText:t}=e;n((0,TA.B8)({input:t}));const o=(0,Ta.mB)(r),a=fs({...o,[us.bS]:us.m2.query,[ds.queryTab]:us._0.newQuery});i.push(a)}),[n,i,r]),m=_A({entity:GD("queries"),postfix:GD("by-cpu-time"),link:fs({...o,[ds.diagnosticsTab]:us.qQ.topQueries})});return(0,Le.jsx)(SA,{columnsWidthLSKey:MA,data:p||[],columns:l,onRowClick:f,title:m,loading:h,error:(0,BI.fV)(d),rowClassName:()=>wA("top-queries-row")})}function nR(e,t){const n=t?"CAST(SUBSTRING(CAST(Path AS String), ".concat(t.length,") AS Utf8) AS Path"):"Path";return"SELECT\n ".concat(n,",\n TabletId,\n CPUCores,\nFROM `.sys/partition_stats`\nWHERE\n Path='").concat(e,"'\n OR Path LIKE '").concat(e,"/%'\nORDER BY CPUCores DESC\nLIMIT ").concat(Lo.fl)}const rR=Dl.h.injectEndpoints({endpoints:e=>({getTopShards:e.query({queryFn:async(e,t)=>{let{database:n,path:r=""}=e,{signal:i}=t;try{const e=await window.api.sendQuery({schema:"modern",query:nR(r,n),database:n,action:"execute-scan"},{signal:i});return(0,BI.gW)(e)?{error:e}:{data:(0,BI.gY)(e)}}catch(o){return{error:o||new Error("Unauthorized")}}},providesTags:["All"]})}),overrideExisting:"throw"});function iR(e){let{path:t,location:n,...r}=e;const i=(0,Ta.mB)(n),o=(0,Ta.vF)({...i,schema:t});return(0,Le.jsx)(si,{view:"normal",...r,href:o})}const oR=tu(60,80,["success","warning","danger"]),aR="topShardsColumnsWidth",sR="TabletId",lR="CPUCores",cR="DataSize",uR="Path",dR="NodeId",hR="InFlightTxCount",pR={TabletId:"TabletId",CPUCores:"CPUCores",DataSize:"DataSize (B)",Path:"Path",NodeId:"NodeId",PeakTime:"PeakTime",InFlightTxCount:"InFlightTxCount",IntervalEnd:"IntervalEnd"};const fR=(e,t)=>({name:uR,header:pR[uR],render:n=>{let{row:r}=n;return(0,Le.jsx)(iR,{path:e+r.Path,location:t,children:r.Path})},sortable:!1,width:300}),mR={name:lR,header:pR[lR],render:e=>{let{row:t}=e;return n=t.CPUCores||0,"".concat((0,ks.W0)(100*Number(n),2),"%");var n},align:Hc.ZP.RIGHT},gR={name:cR,header:pR[cR],render:e=>{let{row:t}=e;return(0,ks.uf)(t.DataSize)},align:Hc.ZP.RIGHT},vR={name:sR,header:pR[sR],render:e=>{let{row:t}=e;return t.TabletId?(0,Le.jsx)(_l,{to:(0,Ta.ax)(Ta.ZP.tablet,{id:t.TabletId}),children:t.TabletId}):"\u2013"},sortable:!1,width:190},yR={name:dR,header:pR[dR],render:e=>{let{row:t}=e;return t.NodeId?(0,Le.jsx)(_l,{to:bu(t.NodeId),children:t.NodeId}):"\u2013"},align:Hc.ZP.RIGHT},bR={name:lR,header:pR[lR],render:e=>{let{row:t}=e;return(0,Le.jsx)(Uu,{value:(0,ks.W0)(100*Number(t.CPUCores),2),theme:oR(100*Number(t.CPUCores))})},align:Hc.ZP.RIGHT,sortable:!1,width:140,resizeMinWidth:140},xR={name:hR,header:pR[hR],render:e=>{let{row:t}=e;return(0,ks.uf)(t.InFlightTxCount)},align:Hc.ZP.RIGHT},wR=e=>{let{path:t}=e;const n=Ca(),r=(0,Ta.mB)(n),{autorefresh:i,currentSchemaPath:o}=Do((e=>e.schema)),{currentData:a,isFetching:s,error:l}=rR.useGetTopShardsQuery({database:t,path:o},{pollingInterval:i}),c=s&&void 0===a,{result:u}=a||{},d=((e,t)=>[vR,fR(e,t),bR])(t,n),h=_A({entity:GD("shards"),postfix:GD("by-cpu-usage"),link:fs({...r,[ds.diagnosticsTab]:us.qQ.topShards})});return(0,Le.jsx)(SA,{columnsWidthLSKey:aR,data:u||[],columns:d,title:h,loading:c,error:(0,BI.fV)(l)})},SR=[{title:GD("charts.cpu-usage"),metrics:["IC","IO","Batch","User","System"].map((e=>({target:"resources.cpu.".concat(e,".usage"),title:e}))),options:{dataType:"percent",scaleRange:{min:0,max:1}}}];function _R(e){let{path:t,additionalNodesProps:n}=e;return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(HD,{database:t,charts:SR}),(0,Le.jsx)(EA,{path:t,additionalNodesProps:n}),(0,Le.jsx)(CA,{path:t,additionalNodesProps:n}),(0,Le.jsx)(wR,{path:t}),(0,Le.jsx)(tR,{path:t})]})}function CR(e){let{path:t,additionalNodesProps:n}=e;const r=Oa(),{autorefresh:i}=Do((e=>e.schema)),o=function(e){let{tabletsPath:t,getNodeRef:n}=e;return[rd,id(n),cd,fd,md,gd,vd,yd,pd(t)]}({getNodeRef:null===n||void 0===n?void 0:n.getNodeRef}),{currentData:a,isFetching:s,error:l}=xA.useGetTopNodesQuery({tenant:t,sortValue:"Memory"},{pollingInterval:i}),c=s&&void 0===a,u=a,d=_A({entity:GD("nodes"),postfix:GD("by-memory"),link:fs({...r,[ds.diagnosticsTab]:us.qQ.nodes})});return(0,Le.jsx)(SA,{columnsWidthLSKey:Hu,data:u||[],columns:o,title:d,loading:c,error:l,emptyDataMessage:GD("top-nodes.empty-data")})}const ER=[{title:GD("charts.memory-usage"),metrics:[{target:"resources.memory.used_bytes",title:GD("charts.memory-usage")}],options:{dataType:"size"}}];function TR(e){let{path:t}=e;return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(HD,{database:t,charts:ER}),(0,Le.jsx)(CR,{path:t})]})}const OR=e=>{const{StoragePools:t,StorageGroups:n}=e,r=Ah(n,t);return t&&r.sort(((e,t)=>t.Usage-e.Usage)),{groups:r.slice(0,Lo.fl)}},NR=Dl.h.injectEndpoints({endpoints:e=>({getTopStorageGroups:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{const t=await window.api.getStorageInfo({visibleEntities:"all",sortOrder:-1,sortValue:"Usage",limit:Lo.fl,version:ka.v2,...e},{signal:n});return{data:OR(t).groups||[]}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"});function kR(e){let{tenant:t}=e;const n=Oa(),{autorefresh:r}=Do((e=>e.schema)),i=AS(),{currentData:o,isFetching:a,error:s}=NR.useGetTopStorageGroupsQuery({tenant:t},{pollingInterval:r}),l=a&&void 0===o,c=o,u=_A({entity:GD("groups"),postfix:GD("by-usage"),link:fs({...n,[ds.diagnosticsTab]:us.qQ.storage})});return(0,Le.jsx)(SA,{columnsWidthLSKey:uS,data:c||[],columns:i,title:u,loading:l,error:s})}const jR=e=>"\nSELECT\n Path, SUM(DataSize) as Size\nFROM `".concat(e,"/.sys/partition_stats`\nGROUP BY Path\n ORDER BY Size DESC\n LIMIT ").concat(Lo.fl,"\n"),IR=Dl.h.injectEndpoints({endpoints:e=>({getTopTables:e.query({queryFn:async(e,t)=>{let{path:n}=e,{signal:r}=t;try{const e=await window.api.sendQuery({schema:"modern",query:jR(n),database:n,action:"execute-scan"},{signal:r});return(0,BI.gW)(e)?{error:e}:{data:(0,BI.gY)(e)}}catch(i){return{error:i||"Unauthorized"}}},providesTags:["All"]})}),overrideExisting:"throw"}),PR="topTablesTableColumnsWidth";function DR(e){let{path:t}=e;const n=Ca(),{autorefresh:r}=Do((e=>e.schema)),{currentData:i,error:o,isFetching:a}=IR.useGetTopTablesQuery({path:t},{pollingInterval:r}),s=a&&void 0===i,{result:l}=i||{},c=[{name:"Size",width:100,sortable:!1,render:e=>{let{row:t}=e;return(e=>{const t=(0,BC.dT)(null!==l&&void 0!==l&&l.length?Number(l[0].Size):0,0);return(0,BC.td)({value:e,size:t,precision:1})})(Number(t.Size))},align:Hc.ZP.RIGHT},{name:"Path",width:700,sortable:!1,render:e=>{let{row:t}=e;return t.Path?(0,Le.jsx)(hu,{content:t.Path,children:(0,Le.jsx)(iR,{path:String(t.Path),location:n,children:t.Path})}):null}}],u=_A({entity:GD("tables"),postfix:GD("by-size")});return(0,Le.jsx)(SA,{columnsWidthLSKey:PR,data:l||[],columns:c,title:u,loading:s,error:(0,BI.fV)(o)})}const AR=[{title:GD("charts.storage-usage"),metrics:[{target:"resources.storage.used_bytes",title:GD("charts.storage-usage")}],options:{dataType:"size"}}];function RR(e){let{tenantName:t,metrics:n}=e;const{blobStorageUsed:r,tabletStorageUsed:i,blobStorageLimit:o,tabletStorageLimit:s}=n,l=[{label:(0,Le.jsx)(Po,{text:GD("storage.tablet-storage-title"),popoverContent:GD("storage.tablet-storage-description")}),value:(0,Le.jsx)(Iu,{value:i,capacity:s,formatValues:ks.QO,colorizeProgress:!0,warningThreshold:75,dangerThreshold:85})},{label:(0,Le.jsx)(Po,{text:GD("storage.db-storage-title"),popoverContent:GD("storage.db-storage-description")}),value:(0,Le.jsx)(Iu,{value:r,capacity:o,formatValues:ks.QO,colorizeProgress:!0,warningThreshold:75,dangerThreshold:85})}];return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(HD,{database:t,charts:AR}),(0,Le.jsx)(Ss,{className:wA("storage-info"),title:"Storage details",info:l}),(0,Le.jsx)(DR,{path:t}),(0,Le.jsx)(kR,{tenant:t})]})}const MR=Dl.h.injectEndpoints({endpoints:e=>({getHealthcheckInfo:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{return{data:await window.api.getHealthcheckInfo(e,{signal:n})}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"}),LR={RED:0,ORANGE:1,YELLOW:2,BLUE:3,GREEN:4},FR=e=>e.sort(((e,t)=>(LR[e.status]||0)-(LR[t.status]||0))),zR=e=>{let{issue:t,data:n}=e;return FR(n.filter((e=>t.reason&&-1!==t.reason.indexOf(e.id))))},BR=e=>FR(e.filter((t=>!e.find((e=>e.reason&&-1!==e.reason.indexOf(t.id)))))),UR=e=>{let{data:t,roots:n}=e;return n?n.map((e=>{const n=UR({roots:zR({issue:e,data:t}),data:t});return{...e,reasonsItems:n}})):[]},HR=e=>{const t={};for(const n of e)t[n.status]||(t[n.status]=0),t[n.status]++;return Object.entries(t).sort(((e,t)=>{let[n]=e,[r]=t;return(LR[n]||0)-(LR[r]||0)}))},VR=(0,p_.P1)((e=>e),(e=>MR.endpoints.getHealthcheckInfo.select(e))),GR=(0,p_.P1)((e=>e),((e,t)=>VR(t)),((e,t)=>{var n;return(null===(n=t(e).data)||void 0===n?void 0:n.issue_log)||[]})),WR=(0,p_.P1)(GR,(function(){return BR(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[])})),qR=(0,p_.P1)([GR,WR],(function(){return UR({data:arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],roots:arguments.length>1&&void 0!==arguments[1]?arguments[1]:[]})})),ZR=(0,p_.P1)(GR,(function(){return HR(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[])})),YR=function(e){let{autorefresh:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{currentData:n,isFetching:r,error:i,refetch:o}=MR.useGetHealthcheckInfoQuery(e,{pollingInterval:t}),a=(null===n||void 0===n?void 0:n.self_check_result)||KD.UNSPECIFIED,s=Do((t=>ZR(t,e)));return{issueTrees:Do((t=>qR(t,e))),issuesStatistics:s,loading:void 0===n&&r,error:i,refetch:o,selfCheckResult:a}};function KR(e){var t;let{tenantName:n,additionalTenantProps:r,additionalNodesProps:i}=e;const{metricsTab:o}=Do((e=>e.tenant)),{autorefresh:a}=Do((e=>e.schema)),{issueTrees:s,issuesStatistics:l,selfCheckResult:c,loading:u,error:d,refetch:h}=YR(n,{autorefresh:a}),{currentData:p,isFetching:f}=Gk.$1.useGetTenantInfoQuery({path:n},{pollingInterval:a}),m=f&&void 0===p,{Name:g,Type:v,Overall:y}=p||{},b=(0,pj.TV)(v),{blobStorage:x,tabletStorage:w,blobStorageLimit:S,tabletStorageLimit:_,poolsStats:C,memoryStats:E,blobStorageStats:T,tabletStorageStats:O}=(0,LP.HH)(null!==p&&void 0!==p?p:void 0),N={blobStorageUsed:x,blobStorageLimit:S,tabletStorageUsed:w,tabletStorageLimit:_};return m?(0,Le.jsx)("div",{className:wA("loader"),children:(0,Le.jsx)(Di,{size:"m"})}):(0,Le.jsxs)("div",{className:wA(),children:[(0,Le.jsxs)("div",{className:wA("info"),children:[(0,Le.jsx)("div",{className:wA("top-label"),children:b}),(0,Le.jsxs)("div",{className:wA("top"),children:[(0,Le.jsx)("div",{className:wA("tenant-name-wrapper"),children:(0,Le.jsx)(Il,{status:y,name:g||Lo.FU,withLeftTrim:!0,hasClipboardButton:Boolean(p),clipboardButtonAlwaysVisible:!0})}),null===r||void 0===r||null===(t=r.getMonitoringLink)||void 0===t?void 0:t.call(r,g,v)]}),(0,Le.jsx)(gA,{poolsCpuStats:C,memoryStats:E,blobStorageStats:T,tabletStorageStats:O,issuesStatistics:l,selfCheckResult:c,fetchHealthcheck:h,healthcheckLoading:u,healthcheckError:d})]}),(()=>{switch(o){case us.Xk.cpu:return(0,Le.jsx)(_R,{path:n,additionalNodesProps:i});case us.Xk.storage:return(0,Le.jsx)(RR,{tenantName:n,metrics:N});case us.Xk.memory:return(0,Le.jsx)(TR,{path:n});case us.Xk.healthcheck:return(0,Le.jsx)(aA,{issueTrees:s,loading:u,error:d});default:return(0,Le.jsx)(qD,{database:n})}})()]})}const QR=Me("kv-detailed-overview");const XR=function(e){const{type:t,tenantName:n,additionalTenantProps:r,additionalNodesProps:i}=e,{currentSchemaPath:o}=(0,ae.v9)((e=>e.schema)),a=n===o;return(0,Le.jsx)("div",{className:QR(),children:a?(0,Le.jsx)("div",{className:QR("section"),children:(0,Le.jsx)(KR,{tenantName:n,additionalTenantProps:r,additionalNodesProps:i})}):(0,Le.jsx)(MP,{type:t,tenantName:n})})},$R={id:us.qQ.overview,title:"Info"},JR={id:us.qQ.schema,title:"Schema"},eM={id:us.qQ.topQueries,title:"Top queries"},tM={id:us.qQ.topShards,title:"Top shards"},nM={id:us.qQ.nodes,title:"Nodes"},rM={id:us.qQ.tablets,title:"Tablets"},iM={id:us.qQ.storage,title:"Storage"},oM={id:us.qQ.network,title:"Network"},aM={id:us.qQ.describe,title:"Describe"},sM={id:us.qQ.hotKeys,title:"Hot keys"},lM={id:us.qQ.graph,title:"Graph"},cM={id:us.qQ.consumers,title:"Consumers"},uM={id:us.qQ.partitions,title:"Partitions"},dM=[$R,aM],hM=[$R,eM,tM,nM,rM,iM,oM,aM],pM=[$R,JR,tM,nM,lM,rM,sM,aM],fM=[$R,JR,tM,nM,lM,rM,aM],mM=[$R,tM,nM,aM],gM=[$R,cM,uM,nM,aM],vM=[$R,cM,uM,nM,aM],yM=[$R,aM],bM=[$R,aM],xM=[$R,aM],wM={[hj.gb.EPathTypeInvalid]:void 0,[hj.gb.EPathTypeSubDomain]:hM,[hj.gb.EPathTypeExtSubDomain]:hM,[hj.gb.EPathTypeColumnStore]:hM,[hj.gb.EPathTypeTable]:pM,[hj.gb.EPathTypeColumnTable]:fM,[hj.gb.EPathTypeDir]:mM,[hj.gb.EPathTypeTableIndex]:mM,[hj.gb.EPathTypeCdcStream]:gM,[hj.gb.EPathTypePersQueueGroup]:vM,[hj.gb.EPathTypeExternalDataSource]:yM,[hj.gb.EPathTypeExternalTable]:bM,[hj.gb.EPathTypeView]:xM,[hj.gb.EPathTypeReplication]:dM},SM=e=>e&&wM[e]||mM;var _M=n(91387),CM=n(77952);const EM=JSON.parse('{"hot-keys-collecting":"Please wait a little while we are collecting hot keys samples...","no-data":"No information about hot keys","help":"Hot keys contains a list of table primary key values that are accessed most often. Sample is collected upon request to the tab during 5s time interval. Samples column indicates how many requests to the particular key value were registered during collection phase."}'),TM=(0,We.wZ)("ydb-hot-keys",{en:EM}),OM=Me("ydb-hot-keys"),NM={accessSample:"accessSample",keyValues:"keyValues"},kM=function(){const e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).map(((e,t)=>({name:e,header:(0,Le.jsxs)("div",{className:OM("primary-key-column"),children:[(0,Le.jsx)(we.J,{data:mj,width:12,height:7}),e]}),render:e=>{let{row:n}=e;return n.keyValues[t]},align:Hc.ZP.RIGHT,sortable:!1})));return[...e,{name:NM.accessSample,header:"Samples",render:e=>{let{row:t}=e;return t.accessSample},align:Hc.ZP.RIGHT,sortable:!1}]};function jM(e){var t,n,r;let{path:i}=e;const o=Ao(),[s,l]=Mo(Lo.JZ),c=a.useRef(),{loading:u,wasLoaded:d,data:h,error:p}=Do((e=>e.hotKeys)),{loading:f,data:m}=Do((e=>e.schema)),g=null===(t=m[i])||void 0===t||null===(n=t.PathDescription)||void 0===n||null===(r=n.Table)||void 0===r?void 0:r.KeyColumnNames,v=a.useMemo((()=>kM(g)),[g]);a.useEffect((()=>{const e=async e=>{try{return await window.api.getHotKeys(i,e)}catch(t){return void o((0,CM.Ou)(t))}};(async()=>{void 0!==c.current&&window.clearInterval(c.current),o((0,CM.eE)()),o((0,CM.AE)());const t=await e(!0);if(t&&t.hotkeys)o((0,CM.Vd)(t));else if(t){const t=setTimeout((async()=>{const t=await e(!1);t&&o((0,CM.Vd)(t))}),5e3);c.current=t}})()}),[o,i]);return(0,Le.jsxs)(a.Fragment,{children:[s?null:(0,Le.jsxs)(_M.Z,{theme:"info",view:"filled",type:"container",className:OM("help-card"),children:[TM("help"),(0,Le.jsx)(Ie.z,{className:OM("help-card__close-button"),view:"flat",onClick:()=>l(!0),children:(0,Le.jsx)(we.J,{data:tt.Z,size:18})})]}),u&&!d||f?(0,Le.jsx)("div",{children:TM("hot-keys-collecting")}):p?(0,Le.jsx)(zc,{error:p}):h?(0,Le.jsx)(qc,{wrapperClassName:OM("table"),columns:v,data:h,settings:Lo.LE,initialSortOrder:{columnId:NM.accessSample,order:Hc.ZP.DESCENDING}}):(0,Le.jsx)("div",{children:TM("no-data")})]})}const IM=Dl.h.injectEndpoints({endpoints:e=>({getNetworkInfo:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{return{data:await window.api.getNetwork(e,{signal:n})}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"}),PM=Me("node-network");function DM(){}function AM(e){let{nodeId:t,connected:n,capacity:r,rack:i,status:o,onClick:s=DM,onMouseEnter:l=DM,onMouseLeave:c=DM,showID:u,isBlurred:d}=e;const h=a.useRef(null),p=o||function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const n=Math.floor(e/t*100);return 100===n?al.K.Green:n>=70?al.K.Yellow:n>=1?al.K.Red:al.K.Grey}(n,r);return(0,Le.jsx)("div",{ref:h,className:PM({[p.toLowerCase()]:!0,id:u,blur:d}),onMouseEnter:()=>{l(h.current,{nodeId:t,connected:n,capacity:r,rack:i},"node")},onMouseLeave:()=>{c()},onClick:()=>s(t),children:u?t:null})}const RM=e=>null===e||void 0===e?void 0:e.reduce(((e,t)=>t.Connected?e+1:e),0);var MM,LM,FM,zM,BM,UM,HM,VM,GM,WM,qM,ZM,YM,KM,QM;function XM(){return XM=Object.assign?Object.assign.bind():function(e){for(var t=1;te.schema)),o=Do(Ro.qz),s=Ao(),[l,c]=a.useState(),[u,d]=a.useState(!1),[h,p]=a.useState(!1),{currentData:f,isFetching:m,error:g}=IM.useGetNetworkInfoQuery(r,{pollingInterval:i});if(m&&void 0===f)return(0,Le.jsx)("div",{className:"loader",children:(0,Le.jsx)(Di,{size:"l"})});if(g)return(0,Le.jsx)(zc,{error:g});const v=f,y=null!==(t=(null===v||void 0===v?void 0:v.Tenants)&&v.Tenants[0].Nodes)&&void 0!==t?t:[];if(0===y.length)return(0,Le.jsx)("div",{className:"error",children:"no nodes data"});const b=nL(y,"NodeType"),x=l?nL(null!==(n=l.Peers)&&void 0!==n?n:[],"NodeType"):{};return(0,Le.jsx)("div",{className:JM(),children:(0,Le.jsx)("div",{className:JM("inner"),children:(0,Le.jsxs)("div",{className:JM("nodes-row"),children:[(0,Le.jsxs)("div",{className:JM("left"),children:[(0,Le.jsx)("div",{className:JM("controls-wrapper"),children:(0,Le.jsxs)("div",{className:JM("controls"),children:[(0,Le.jsx)(Bc,{value:o,onChange:e=>{s((0,Ro.M6)(e))},className:JM("problem-filter")}),(0,Le.jsx)("div",{className:JM("checkbox-wrapper"),children:(0,Le.jsx)(T_,{onUpdate:()=>{d(!u)},checked:u,children:"ID"})}),(0,Le.jsx)("div",{className:JM("checkbox-wrapper"),children:(0,Le.jsx)(T_,{onUpdate:()=>{p(!h)},checked:h,children:"Racks"})})]})}),(0,Le.jsx)(tL,{nodes:b,showId:u,showRacks:h,clickedNode:l,onClickNode:c})]}),(0,Le.jsx)("div",{className:JM("right"),children:l?(0,Le.jsxs)("div",{children:[(0,Le.jsxs)("div",{className:JM("label"),children:["Connectivity of node"," ",(0,Le.jsx)(bl,{className:JM("link"),to:bu(l.NodeId),children:l.NodeId})," ","to other nodes"]}),(0,Le.jsx)("div",{className:JM("nodes-row"),children:(0,Le.jsx)(tL,{nodes:x,isRight:!0,showId:u,showRacks:h,clickedNode:l,onClickNode:c})})]}):(0,Le.jsxs)("div",{className:JM("placeholder"),children:[(0,Le.jsx)("div",{className:JM("placeholder-img"),children:(0,Le.jsx)(we.J,{data:$M,width:221,height:204})}),(0,Le.jsx)("div",{className:JM("placeholder-text"),children:"Select node to see its connectivity to other nodes"})]})})]})})})}function tL(e){let{nodes:t,isRight:n,showId:r,showRacks:i,clickedNode:o,onClickNode:a}=e;const s=Do(Ro.qz),l=Ao();let c=0;const u=Object.keys(t).map(((e,u)=>{const d=nL(t[e],"Rack");return(0,Le.jsxs)("div",{className:JM("nodes-container",{right:n}),children:[(0,Le.jsxs)("div",{className:JM("nodes-title"),children:[e," nodes"]}),(0,Le.jsx)("div",{className:JM("nodes"),children:i?Object.keys(d).map(((e,t)=>(0,Le.jsxs)("div",{className:JM("rack-column"),children:[(0,Le.jsx)("div",{className:JM("rack-index"),children:"undefined"===e?"?":e}),d[e].map(((e,t)=>{let i,u;return!n&&"Peers"in e&&e.Peers&&(i=Object.keys(e.Peers).length,u=RM(e.Peers)),s===Ro.pu.PROBLEMS&&i!==u||s===Ro.pu.ALL||n?(c++,(0,Le.jsx)(AM,{nodeId:e.NodeId,showID:r,rack:e.Rack,status:"ConnectStatus"in e?e.ConnectStatus:void 0,capacity:i,connected:u,onMouseEnter:function(){l((0,vs.hJ)(...arguments))},onMouseLeave:()=>{l((0,vs.i8)())},onClick:n?void 0:()=>{a(o&&e.NodeId===o.NodeId?void 0:e)},isBlurred:!n&&o&&o.NodeId!==e.NodeId},t)):null}))]},t))):t[e].map(((e,t)=>{let i,u;const d=e&&"Peers"in e?e.Peers:void 0;return!n&&"Peers"in e&&e.Peers&&(i=e.Peers.length,u=RM(d)),s===Ro.pu.PROBLEMS&&i!==u||s===Ro.pu.ALL||n?(c++,(0,Le.jsx)(AM,{nodeId:e.NodeId,showID:r,rack:e.Rack,status:"ConnectStatus"in e?e.ConnectStatus:void 0,capacity:null===d||void 0===d?void 0:d.length,connected:u,onMouseEnter:function(){l((0,vs.hJ)(...arguments))},onMouseLeave:()=>{l((0,vs.i8)())},onClick:n?void 0:()=>{a(o&&e.NodeId===o.NodeId?void 0:e)},isBlurred:!n&&o&&o.NodeId!==e.NodeId},t)):null}))})]},u)}));return s===Ro.pu.PROBLEMS&&0===c?(0,Le.jsx)(Ge,{name:"thumbsUp",width:"200"}):u}function nL(e,t){return e.reduce(((e,n)=>(e[n[t]]?e[n[t]].push(n):e[n[t]]=[n],e)),{})}var rL=n(42703);const iL=JSON.parse('{"lagsPopover.writeLags":"Write lags statistics (time format dd hh:mm:ss)","lagsPopover.readLags":"Read lags statistics (time format dd hh:mm:ss)","headers.unread":"End offset - Last read offset","headers.uncommited":"End offset - Committed offset","controls.consumerSelector":"Consumer:","controls.consumerSelector.emptyOption":"No consumer","controls.partitionSearch":"Partition ID","controls.generalSearch":"Host, Host ID, Reader, Read Session ID","table.emptyDataMessage":"No partitions match the current search","noConsumersMessage.topic":"This topic has no consumers","noConsumersMessage.stream":"This changefeed has no consumers"}'),oL=JSON.parse('{"lagsPopover.writeLags":"\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043b\u0430\u0433\u043e\u0432 \u0437\u0430\u043f\u0438\u0441\u0438 (\u0444\u043e\u0440\u043c\u0430\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0434\u0434 \u0447\u0447:\u043c\u043c:\u0441\u0441)","lagsPopover.readLags":"\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u043b\u0430\u0433\u043e\u0432 \u0447\u0442\u0435\u043d\u0438\u044f (\u0444\u043e\u0440\u043c\u0430\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0434\u0434 \u0447\u0447:\u043c\u043c:\u0441\u0441)","headers.unread":"End offset - Last read offset","headers.uncommited":"End offset - Committed offset","controls.consumerSelector":"\u0427\u0438\u0442\u0430\u0442\u0435\u043b\u044c:","controls.consumerSelector.emptyOption":"\u041d\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f","controls.partitionSearch":"Partition ID","controls.generalSearch":"Host, Host ID, Reader, Read Session ID","table.emptyDataMessage":"\u041f\u043e \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u043e\u0438\u0441\u043a\u0443 \u043d\u0435\u0442 \u043f\u0430\u0440\u0442\u0438\u0446\u0438\u0439","noConsumersMessage.topic":"\u0423 \u044d\u0442\u043e\u0433\u043e \u0442\u043e\u043f\u0438\u043a\u0430 \u043d\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439","noConsumersMessage.stream":"\u0423 \u044d\u0442\u043e\u0433\u043e \u0441\u0442\u0440\u0438\u043c\u0430 \u043d\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439"}'),aL=(0,We.wZ)("ydb-diagnostics-partitions",{ru:oL,en:iL}),sL={PARTITION_ID:"partitionId",STORE_SIZE:"storeSize",WRITE_SPEED:"writeSpeed",READ_SPEED:"readSpeed",WRITE_LAGS:"writeLags",READ_LAGS:"readLags",UNCOMMITED_MESSAGES:"uncommitedMessages",UNREAD_MESSAGES:"unreadMessages",START_OFFSET:"startOffset",END_OFFSET:"endOffset",COMMITED_OFFSET:"commitedOffset",READ_SESSION_ID:"readSessionId",READER_NAME:"readerName",PARTITION_HOST:"partitionHost",CONNECTION_HOST:"connectionHost"},lL={[sL.PARTITION_ID]:"Partition ID",[sL.STORE_SIZE]:"Store size",[sL.WRITE_SPEED]:"Write speed",[sL.READ_SPEED]:"Read speed",[sL.WRITE_LAGS]:"Write lags, duration",[sL.READ_LAGS]:"Read lags, duration",[sL.UNCOMMITED_MESSAGES]:"Uncommited messages",[sL.UNREAD_MESSAGES]:"Unread messages",[sL.START_OFFSET]:"Start offset",[sL.END_OFFSET]:"End offset",[sL.COMMITED_OFFSET]:"Commited offset",[sL.READ_SESSION_ID]:"Read session ID",[sL.READER_NAME]:"Reader name",[sL.PARTITION_HOST]:"Partition host",[sL.CONNECTION_HOST]:"Connection host"},cL="partitionWriteLag",uL="partitionWriteIdleTime",dL={[cL]:"write lag",[uL]:"write idle time"},hL="consumerWriteLag",pL="consumerReadLag",fL="consumerReadIdleTime",mL={[hL]:"write lag",[pL]:"read lag",[fL]:"read idle time"},gL=[sL.PARTITION_ID,sL.STORE_SIZE,sL.WRITE_SPEED,sL.WRITE_LAGS,sL.START_OFFSET,sL.END_OFFSET,sL.PARTITION_HOST],vL=Object.values(sL),yL=e=>{let{consumers:t,selectedConsumer:n,onSelectedConsumerChange:r,selectDisabled:i,partitions:o,onSearchChange:s,hiddenColumns:l,onHiddenColumnsChange:c,initialColumnsIds:u}=e;const[d,h]=a.useState(""),[p,f]=a.useState("");a.useEffect((()=>{if(!o)return;const e=new RegExp(m_()(p),"i"),t=new RegExp(m_()(d),"i"),n=o.filter((n=>{const{partitionId:r,readerName:i,readSessionId:o,partitionNodeId:a,connectionNodeId:s,partitionHost:l,connectionHost:c}=n,u=e.test(r),d=[i,o,a,s,l,c].filter(Boolean).map(String),h=0===d.length||d.some((e=>t.test(e)));return u&&h}));s(n)}),[p,d,o,s]);const m=a.useMemo((()=>{const e=t&&t.length?t.map((e=>({value:e,content:e}))):[];return[{value:"",content:aL("controls.consumerSelector.emptyOption")},...e]}),[t]),g=a.useMemo((()=>{const e=[];for(const t of u){const n=t===sL.PARTITION_ID,r={title:lL[t],selected:Boolean(!l.includes(t)),id:t,required:n,sticky:n?"start":void 0};n?e.unshift(r):e.push(r)}return e}),[u,l]),v=e=>(0,Le.jsx)("div",{className:kL("select-option",{empty:""===e.value}),children:e.content});return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(ww,{className:kL("consumer-select"),label:aL("controls.consumerSelector"),options:m,value:[n],onUpdate:e=>{r(e[0])},filterable:t&&t.length>5,disabled:i||!t||!t.length,renderOption:v,renderSelectedOption:v}),(0,Le.jsx)(Yc,{onChange:e=>{f(e)},placeholder:aL("controls.partitionSearch"),className:kL("search",{partition:!0}),value:p}),(0,Le.jsx)(Yc,{onChange:e=>{h(e)},placeholder:aL("controls.generalSearch"),className:kL("search",{general:!0}),value:d}),(0,Le.jsx)(VE,{popupWidth:242,items:g,showStatus:!0,onUpdate:e=>{const t=[...l];e.forEach((e=>{e.selected||l.includes(e.id)?e.selected&&l.includes(e.id)&&t.splice(l.indexOf(e.id)):t.push(e.id)})),c(t)},sortable:!1},"TableColumnSetup")]})},bL=Me("ydb-diagnostics-partitions-columns-header"),xL=e=>{let{title:t}=e;return(0,Le.jsx)("div",{className:bL("multiline"),children:t})},wL=()=>(0,Le.jsx)("div",{className:bL("read-session"),children:lL[sL.READ_SESSION_ID]}),SL=()=>(0,Le.jsx)(Po,{className:bL("lags"),text:lL[sL.WRITE_LAGS],popoverContent:(0,Le.jsx)(Jj,{text:aL("lagsPopover.writeLags"),type:"write"})}),_L=()=>(0,Le.jsx)(Po,{className:bL("lags"),text:lL[sL.READ_LAGS],popoverContent:(0,Le.jsx)(Jj,{text:aL("lagsPopover.readLags"),type:"read"})}),CL=()=>(0,Le.jsx)(Po,{className:bL("messages"),text:lL[sL.UNREAD_MESSAGES],popoverContent:(0,Le.jsx)("div",{className:bL("messages-popover-content"),children:aL("headers.unread")})}),EL=()=>(0,Le.jsx)(Po,{className:bL("messages"),text:lL[sL.UNCOMMITED_MESSAGES],popoverContent:(0,Le.jsx)("div",{className:bL("messages-popover-content"),children:aL("headers.uncommited")})}),TL=Me("ydb-diagnostics-partitions-columns"),OL=[{name:sL.PARTITION_ID,header:(0,Le.jsx)(xL,{title:lL[sL.PARTITION_ID]}),sortAccessor:e=>(0,Ou.kE)(e.partitionId)&&Number(e.partitionId),align:Hc.ZP.LEFT,render:e=>{let{row:t}=e;return t.partitionId}},{name:sL.STORE_SIZE,header:(0,Le.jsx)(xL,{title:lL[sL.STORE_SIZE]}),align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,ks.td)(t.storeSize)}},{name:sL.WRITE_SPEED,header:lL[sL.WRITE_SPEED],align:Hc.ZP.LEFT,resizeMinWidth:140,sortAccessor:e=>e.writeSpeed.perMinute,render:e=>{let{row:t}=e;return(0,Le.jsx)(Lj,{data:t.writeSpeed})}},{name:sL.READ_SPEED,header:lL[sL.READ_SPEED],align:Hc.ZP.LEFT,resizeMinWidth:140,sortAccessor:e=>{var t;return null===(t=e.readSpeed)||void 0===t?void 0:t.perMinute},render:e=>{let{row:t}=e;return(0,Le.jsx)(Lj,{data:t.readSpeed})}},{name:sL.WRITE_LAGS,header:(0,Le.jsx)(SL,{}),className:TL("lags-header"),sub:[{name:cL,header:dL[cL],align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,ks.gC)(t.partitionWriteLag)}},{name:uL,header:dL[uL],align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,ks.gC)(t.partitionWriteIdleTime)}}]},{name:sL.READ_LAGS,header:(0,Le.jsx)(_L,{}),className:TL("lags-header"),sub:[{name:hL,header:mL[hL],align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,ks.gC)(t.consumerWriteLag)}},{name:pL,header:mL[pL],align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,ks.gC)(t.consumerReadLag)}},{name:fL,header:mL[fL],align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return(0,ks.gC)(t.consumerReadIdleTime)}}]},{name:sL.UNCOMMITED_MESSAGES,header:(0,Le.jsx)(EL,{}),align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return t.uncommitedMessages}},{name:sL.UNREAD_MESSAGES,header:(0,Le.jsx)(CL,{}),align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return t.unreadMessages}},{name:sL.START_OFFSET,header:(0,Le.jsx)(xL,{title:lL[sL.START_OFFSET]}),sortAccessor:e=>(0,Ou.kE)(e.startOffset)&&Number(e.startOffset),align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return t.startOffset}},{name:sL.END_OFFSET,header:(0,Le.jsx)(xL,{title:lL[sL.END_OFFSET]}),sortAccessor:e=>(0,Ou.kE)(e.endOffset)&&Number(e.endOffset),align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return t.endOffset}},{name:sL.COMMITED_OFFSET,header:(0,Le.jsx)(xL,{title:lL[sL.COMMITED_OFFSET]}),sortAccessor:e=>(0,Ou.kE)(e.commitedOffset)&&Number(e.commitedOffset),align:Hc.ZP.RIGHT,render:e=>{let{row:t}=e;return t.commitedOffset}},{name:sL.READ_SESSION_ID,header:(0,Le.jsx)(wL,{}),align:Hc.ZP.LEFT,width:150,render:e=>{let{row:t}=e;return t.readSessionId?(0,Le.jsx)(Il,{name:t.readSessionId,showStatus:!1,hasClipboardButton:!0}):"\u2013"}},{name:sL.READER_NAME,header:(0,Le.jsx)(xL,{title:lL[sL.READER_NAME]}),align:Hc.ZP.LEFT,width:150,render:e=>{let{row:t}=e;return t.readerName?(0,Le.jsx)(Il,{name:t.readerName,showStatus:!1,hasClipboardButton:!0}):"\u2013"}},{name:sL.PARTITION_HOST,header:(0,Le.jsx)(xL,{title:lL[sL.PARTITION_HOST]}),align:Hc.ZP.LEFT,width:200,render:e=>{let{row:t}=e;return t.partitionNodeId&&t.partitionHost?(0,Le.jsx)(Il,{name:t.partitionHost,path:bu(t.partitionNodeId),showStatus:!1,hasClipboardButton:!0}):"\u2013"}},{name:sL.CONNECTION_HOST,header:(0,Le.jsx)(xL,{title:lL[sL.CONNECTION_HOST]}),align:Hc.ZP.LEFT,width:200,render:e=>{let{row:t}=e;return t.connectionNodeId&&t.connectionHost?(0,Le.jsx)(Il,{name:t.connectionHost,path:bu(t.connectionNodeId),showStatus:!1,hasClipboardButton:!0}):"\u2013"}}],NL=OL.filter((e=>gL.includes(e.name))),kL=Me("ydb-diagnostics-partitions"),jL=e=>{let{path:t}=e;const n=Ao(),[r,i]=a.useState(t),[o,s]=a.useState([]),l=Do((e=>jj(e,t))),{autorefresh:c}=Do((e=>e.schema)),{selectedConsumer:u}=Do((e=>e.partitions)),{currentData:d,isFetching:h,error:p}=Tj.useGetTopicQuery({path:t}),f=h&&void 0===d,{currentData:m,isFetching:g,error:v}=Zs.W.useGetNodesListQuery(void 0),y=g&&void 0===m,b=Do(Zs.d),[x,w]=Mo(Lo.ZY),[S,_]=(e=>{const[t,n]=a.useState([]),[r,i]=a.useState([]);return a.useEffect((()=>{e?(n(OL),i(vL)):(n(NL),i(gL))}),[e]),[t,r]})(u);a.useEffect((()=>{i(t)}),[n,t]);const C=!f&&r?{path:r,consumerName:u}:zl.CN,{currentData:E,isFetching:T,error:O}=rL.TB.useGetPartitionsQuery(C,{pollingInterval:c}),N=T&&void 0===E,k=E,j=a.useMemo((()=>function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0;return null===e||void 0===e?void 0:e.map((e=>{const n=e.partitionNodeId&&t?t.get(e.partitionNodeId):void 0,r=e.connectionNodeId&&t?t.get(e.connectionNodeId):void 0;return{...e,partitionHost:n,connectionHost:r}}))}(k,b)),[k,b]);a.useEffect((()=>{const e=!f&&!l,t=u&&l&&!l.includes(u);(e||t)&&n((0,rL.M$)(""))}),[n,f,u,l]);const I=a.useMemo((()=>S.filter((e=>!x.includes(e.name)))),[S,x]),P=e=>{w(e)},D=e=>{n((0,rL.M$)(e))},A=f||y||N,R=v||p||O;return(0,Le.jsxs)("div",{className:kL(),children:[(0,Le.jsx)("div",{className:kL("controls"),children:(0,Le.jsx)(yL,{consumers:l,selectedConsumer:u,onSelectedConsumerChange:D,selectDisabled:Boolean(R)||A,partitions:j,onSearchChange:s,hiddenColumns:x,onHiddenColumnsChange:P,initialColumnsIds:_})}),(0,Le.jsx)("div",{className:kL("table-wrapper"),children:(0,Le.jsx)("div",{className:kL("table-content"),children:A?(0,Le.jsx)(Qc,{className:kL("loader")}):R?(0,Le.jsx)(zc,{error:R}):(0,Le.jsx)(qc,{columnsWidthLSKey:"partitionsColumnsWidth",wrapperClassName:kL("table"),data:o,columns:I,settings:Lo.LE,emptyDataMessage:aL("table.emptyDataMessage")})})})]})},IL=Me("date-range"),PL=e=>{if(!e||isNaN(e))return;const t=e-60*(new Date).getTimezoneOffset()*1e3;return new Date(t).toISOString().substring(0,"yyyy-MM-DDThh:mm".length)},DL=e=>{let{from:t,to:n,className:r,onChange:i}=e;const o=PL(t),a=PL(n);return(0,Le.jsxs)("div",{className:IL(null,r),children:[(0,Le.jsx)("input",{type:"datetime-local",value:o||"",max:a,onChange:e=>{let{target:{value:t}}=e,r=t?new Date(t).getTime():void 0;r&&n&&r>n&&(r=n),null===i||void 0===i||i({from:r,to:n})},className:IL("input")}),"\u2014",(0,Le.jsx)("input",{type:"datetime-local",min:o,value:a||"",onChange:e=>{let{target:{value:n}}=e,r=n?new Date(n).getTime():void 0;t&&r&&t>r&&(r=t),null===i||void 0===i||i({from:t,to:r})},className:IL("input")})]})};var AL=n(30667);const RL={CPUCores:"CPUCores",DataSize:"DataSize",InFlightTxCount:"InFlightTxCount"},ML={CPUTimeUs:"CPUTimeUs",EndTime:"EndTime",ReadRows:"ReadRows",ReadBytes:"ReadBytes",UserSID:"UserSID",Duration:"Duration"},LL=e=>Object.values(RL).includes(e),FL=JSON.parse('{"no-data":"No data","filter.text.placeholder":"Search by query text..."}'),zL=JSON.parse('{"no-data":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445","filter.text.placeholder":"\u0418\u0441\u043a\u0430\u0442\u044c \u043f\u043e \u0442\u0435\u043a\u0441\u0442\u0443 \u0437\u0430\u043f\u0440\u043e\u0441\u0430..."}'),BL=(0,We.wZ)("ydb-diagnostics-top-queries",{ru:zL,en:FL}),UL=Me("kv-top-queries"),HL=e=>{let{path:t,type:n}=e;const r=Ao(),i=Ca(),o=_a(),{autorefresh:s}=Do((e=>e.schema)),l=Do((e=>e.executeTopQueries)),{currentData:c,isFetching:u,error:d}=AL.MU.useGetTopQueriesQuery({database:t,filters:l},{pollingInterval:s}),h=u&&void 0===c,{result:p}=c||{},f=[WA,qA,ZA,JA,YA,KA,QA].map((e=>{return{...e,sortable:(t=e.name,Object.values(ML).includes(t))};var t})),m=a.useCallback((e=>{const{QueryText:t}=e;r((0,TA.B8)({input:t}));const n=(0,Ta.mB)(i),a=fs({...n,[us.bS]:us.m2.query,[ds.queryTab]:us._0.newQuery});o.push(a)}),[r,o,i]),g=e=>{r((0,AL.Im)({text:e}))},v=e=>{r((0,AL.Im)(e))};return(0,Le.jsxs)($c,{children:[(0,Le.jsx)($c.Controls,{children:(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(Yc,{value:l.text,onChange:g,placeholder:BL("filter.text.placeholder"),className:UL("search")}),(0,Le.jsx)(DL,{from:l.from,to:l.to,onChange:v})]})}),(0,Le.jsx)($c.Table,{loading:h,children:d?(0,Le.jsx)("div",{className:"error",children:(0,BI.fV)(d)}):!p||(0,pj.Jp)(n)?BL("no-data"):(0,Le.jsx)(qc,{columnsWidthLSKey:MA,columns:f,data:p,settings:AA,onRowClick:m,rowClassName:()=>UL("row")})})]})};var VL=n(9345),GL=n(58660);const WL=JSON.parse('{"no-data":"No data","filters.mode.immediate":"Immediate","filters.mode.history":"Historical","description":"Historical data only tracks shards with CPU load over 70%"}'),qL=JSON.parse('{"no-data":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445","filters.mode.immediate":"\u041c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u044b\u0435","filters.mode.history":"\u0418\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0435","description":"\u0418\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043e \u0448\u0430\u0440\u0434\u0430\u0445 \u0441 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439 CPU \u0432\u044b\u0448\u0435 70%"}'),ZL=(0,We.wZ)("ydb-diagnostics-top-shards",{ru:qL,en:WL}),YL=e=>{let{value:t,onChange:n}=e;const r=t.mode===GL.F.Immediate?void 0:t.from,i=t.mode===GL.F.Immediate?void 0:t.to;return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsxs)(Oo,{value:t.mode,onUpdate:e=>{if(!((e,t)=>Object.values(e).includes(t))(GL.F,e)){const t=Object.values(GL.F).join(", ");throw new Error('Unexpected TopShards mode "'.concat(e,'". Should be one of: ').concat(t))}n({mode:e})},children:[(0,Le.jsx)(Oo.Option,{value:GL.F.Immediate,children:ZL("filters.mode.immediate")}),(0,Le.jsx)(Oo.Option,{value:GL.F.History,children:ZL("filters.mode.history")})]}),(0,Le.jsx)(DL,{from:r,to:i,onChange:e=>{n({mode:GL.F.History,...e})}})]})},KL=Me("top-shards"),QL={...Lo.LE,dynamicRender:!1,externalSort:!0,disableSortReset:!0,defaultOrder:Hc.ZP.DESCENDING},XL="CPUCores",$L="PeakTime",JL="IntervalEnd";function eF(e){return e?(0,ks.o0)(new Date(e).getTime()):"\u2013"}function tF(e){return e?e.split(",").map((e=>({columnId:e,order:Hc.ZP.DESCENDING}))):void 0}function nF(e){return e.to=Date.now(),e.from=e.to-1e3*Lo.RQ,e}const rF=e=>{let{tenantPath:t,type:n}=e;const r=Ao(),i=Ca(),{autorefresh:o,currentSchemaPath:s}=Do((e=>e.schema)),l=Do((e=>e.shardsWorkload)),[c,u]=a.useState((()=>{const e={...l};return e.mode||(e.mode=GL.F.Immediate),e.from||e.to||nF(e),e})),[d,h]=a.useState(XL),{data:p,isFetching:f,error:m}=VL.Ag.useSendShardQueryQuery({database:t,path:s,sortOrder:(g=d,g?g.split(",").map((e=>({columnId:e,order:"DESC"}))):void 0),filters:c},{pollingInterval:o});var g;const v=f&&void 0===p,{result:y}=null!==p&&void 0!==p?p:{},b=e=>{h(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return(Array.isArray(e)?e:[e]).map((e=>{let{columnId:t}=e;return t})).join(",")}(e))},x=e=>{const t={...e};if(!l.from&&!l.to&&!e.from&&!e.to)switch(e.mode){case GL.F.Immediate:t.from=t.to=void 0;break;case GL.F.History:nF(t)}r((0,VL.K2)(e)),u((e=>({...e,...t})))},w=a.useMemo((()=>{const e=((e,t)=>[fR(e,t),mR,gR,vR,yR,xR])(t,i),n=e.map((e=>({...e,sortable:LL(e.name)})));return c.mode===GL.F.History&&(n.splice(5,0,{name:$L,render:e=>{let{row:t}=e;return eF(t.PeakTime)},sortable:!1}),n.push({name:JL,render:e=>{let{row:t}=e;return eF(t.IntervalEnd)}})),n}),[c.mode,t,i]);return(0,Le.jsxs)($c,{children:[(0,Le.jsx)($c.Controls,{children:(0,Le.jsx)(YL,{value:c,onChange:x})}),c.mode===GL.F.History&&(0,Le.jsx)("div",{className:KL("hint"),children:ZL("description")}),(0,Le.jsx)($c.Table,{loading:v,children:m?(0,Le.jsx)("div",{className:"error",children:(0,BI.fV)(m)}):!y||(0,pj.Jp)(n)?ZL("no-data"):(0,Le.jsx)(qc,{columnsWidthLSKey:aR,columns:w,data:y,settings:QL,onSort:b,sortOrder:tF(d)})})]})},iF=Me("kv-tenant-diagnostics");const oF=function(e){const t=a.useRef(null),n=Ao(),{currentSchemaPath:r,wasLoaded:i}=Do((e=>e.schema)),{diagnosticsTab:o=us.qQ.overview}=Do((e=>e.tenant)),[s]=mc({name:Gl,backend:Gl,clusterName:Gl}),{name:l}=s,c=(0,pj.dw)(e.type)?r:l,u=(0,pj.dw)(e.type)||r===l,d=a.useMemo((()=>u?hM:SM(e.type)),[e.type,u]),h=a.useMemo((()=>{if(i){let e=d.find((e=>e.id===o));return e||(e=d[0]),e&&e.id!==o&&(e=>{n((0,Gk.$v)(e))})(e.id),e}}),[d,o,i]);return i?(0,Le.jsxs)("div",{className:iF(),ref:t,children:[h?(0,Le.jsx)(oe,{children:(0,Le.jsx)("title",{children:h.title})}):null,(0,Le.jsx)("div",{className:iF("header-wrapper"),children:(0,Le.jsxs)("div",{className:iF("tabs"),children:[(0,Le.jsx)(wt,{size:"l",items:d,activeTab:null===h||void 0===h?void 0:h.id,wrapTo:(e,t)=>{let{id:n}=e;const r=(0,Ta.ax)(Ta.ZP.tenant,void 0,{...s,[ds.diagnosticsTab]:n});return(0,Le.jsx)(bl,{to:r,className:iF("tab"),children:t},n)},allowNotSelected:!0}),(0,Le.jsx)(Cj,{})]})}),(0,Le.jsx)("div",{className:iF("page-wrapper"),children:(()=>{const{type:n}=e,i=c;switch(null===h||void 0===h?void 0:h.id){case us.qQ.overview:return(0,Le.jsx)(XR,{type:n,tenantName:i,additionalTenantProps:e.additionalTenantProps,additionalNodesProps:e.additionalNodesProps});case us.qQ.schema:return(0,Le.jsx)(bj,{path:r,type:n,withFamilies:!0});case us.qQ.topQueries:return(0,Le.jsx)(HL,{path:i,type:n});case us.qQ.topShards:return(0,Le.jsx)(rF,{tenantPath:i,type:n});case us.qQ.nodes:return(0,Le.jsx)(rh,{path:r,additionalNodesProps:e.additionalNodesProps,parentContainer:t.current});case us.qQ.tablets:return(0,Le.jsx)(oN,{path:r});case us.qQ.storage:return(0,Le.jsx)(d_,{tenant:i,parentContainer:t.current});case us.qQ.network:return(0,Le.jsx)(eL,{path:i});case us.qQ.describe:return(0,Le.jsx)(xI,{tenant:i,type:n});case us.qQ.hotKeys:return(0,Le.jsx)(jM,{path:r});case us.qQ.graph:return(0,Le.jsx)(uj,{path:r});case us.qQ.consumers:return(0,Le.jsx)(gI,{path:r,type:n});case us.qQ.partitions:return(0,Le.jsx)(jL,{path:r});default:return(0,Le.jsx)("div",{children:"No data..."})}})()})]}):(0,Le.jsx)(N_,{size:"l"})},aF=JSON.parse('{"controls.query-mode-selector_type":"Query type:","tabs.newQuery":"Query","tabs.history":"History","tabs.saved":"Saved","history.empty":"History is empty","saved.empty":"There are no saved queries","delete-dialog.header":"Delete query","delete-dialog.question":"Are you sure you want to delete query","delete-dialog.delete":"Delete","delete-dialog.cancel":"Cancel","preview.title":"Preview","preview.not-available":"Preview is not available","preview.close":"Close preview","method-description.script":"For YQL-scripts combining DDL and DML.\\nAPI call: schema.scripting","method-description.scan":"Read-only queries, potentially reading a lot of data.\\nAPI call: table.ExecuteScan","method-description.data":"DML queries for changing and fetching data in serialization mode.\\nAPI call: table.executeDataQuery","method-description.query":"Any query. An experimental API call supposed to replace all existing methods.\\nAPI Call: query.ExecuteScript","method-description.pg":"Queries in postgresql syntax.\\nAPI call: query.ExecuteScript","query-duration.description":"Duration of server-side query execution","action.send-query":"Send query","action.send-selected-query":"Send selected query","action.previous-query":"Previous query in history","action.next-query":"Next query in history"}'),sF=(0,We.wZ)("ydb-query-editor",{en:aF}),lF=Me("ydb-queries-history"),cF="queriesHistoryTableColumnsWidth";const uF=function(e){let{changeUserInput:t}=e;const n=Ao(),[r,i]=Fo(),o=[...Do(TA.qV)].reverse(),a=[{name:"queryText",header:"Query Text",render:e=>{let{row:t}=e;return(0,Le.jsx)("div",{className:lF("query"),children:(0,Le.jsx)(kA,{value:t.queryText,maxQueryHeight:DA})})},sortable:!1,width:600},{name:"syntax",header:"Syntax",render:e=>{let{row:t}=e;return t.syntax===BI.jM.pg?"PostgreSQL":"YQL"},sortable:!1,width:200}];return(0,Le.jsx)("div",{className:lF(),children:(0,Le.jsx)(qc,{columnsWidthLSKey:cF,columns:a,data:o,settings:AA,emptyDataMessage:sF("history.empty"),onRowClick:e=>{return(o=e).syntax===BI.jM.pg&&r!==BI.wZ.pg?i(BI.wZ.pg):o.syntax!==BI.jM.pg&&r===BI.wZ.pg&&i(BI.wZ.script),t({input:o.queryText}),void n((0,Gk.jk)(us._0.newQuery));var o},rowClassName:()=>lF("table-row")})})};function dF(){return(0,Le.jsx)("div",{style:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,Le.jsx)(Di,{size:"l"})})}const hF=function(e,t,n){const r=a.lazy((()=>e().then((e=>({default:e[t]}))).catch((e=>({default:()=>(0,Le.jsx)($e,{error:e})}))))),i=(e,t)=>{const i=Be("ErrorBoundary");return(0,Le.jsx)(i,{children:(0,Le.jsx)(a.Suspense,{fallback:null!==n&&void 0!==n?n:(0,Le.jsx)(dF,{}),children:(0,Le.jsx)(r,{ref:t,...e})})})};return i.displayName=t,a.forwardRef(i)}((async()=>{const e=(await Promise.all([n.e(1551),n.e(3757)]).then(n.bind(n,93757))).default,{registerLanguages:t}=await Promise.all([n.e(1551),n.e(8424),n.e(4842)]).then(n.bind(n,14842));return t(),{Editor:e}}),"Editor"),pF=new Set(["PlanNodeId","PlanNodeType","Node Type","Plans"]);function fF(e){const t=[];if(e.Operators){const n=[];for(const t of e.Operators){const e={name:t.Name,items:[]};for(const[n,r]of Object.entries(t)){if("Name"===n)continue;const t=Array.isArray(r)?r.join(", "):r;e.items.push({name:n,value:t})}n.push(e)}t.push({group:"Operators",stats:n})}if("Connection"===e.PlanNodeType){const n=[];for(const[t,r]of Object.entries(e))pF.has(t)||n.push({name:t,value:String(r)});n.length>0&&t.push({group:"Attributes",stats:n})}return t}function mF(e){switch(e.PlanNodeType){case"Connection":return"connection";case"ResultSet":return"result";case"Query":return"query";default:return"stage"}}const gF={v2:"0.2"},vF=Object.values(gF),yF=e=>{const{plan:t,ast:n}=(0,BI.CC)(e);if(!t)return{ast:n};const{tables:r,meta:i,Plan:o}=(0,BI.y5)(t);if(-1===vF.indexOf(i.version))return{plan:{pristine:t,version:i.version},ast:n};let a=[],s=[];if(o){const e=function(e){const t=[],n=[],r=e,i={name:String(r.PlanNodeId),data:{id:r.PlanNodeId,type:mF(r),name:r["Node Type"]}};return t.push(i),function e(){let r=arguments.length>1?arguments[1]:void 0;(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).forEach((i=>{var o;const a={name:String(i.PlanNodeId),data:{id:i.PlanNodeId,type:mF(i),name:i["Node Type"],operators:null===(o=i.Operators)||void 0===o?void 0:o.map((e=>e.Name)),stats:fF(i),tables:i.Tables}};t.push(a),n.push({from:r,to:a.name}),e(i.Plans,a.name)}))}(r.Plans,i.name),{nodes:t,links:n}}(o);a=e.links,s=e.nodes}return{plan:{links:a,nodes:s,tables:r,version:i.version,pristine:t},ast:n}},bF=Dl.h.injectEndpoints({endpoints:e=>({explainQuery:e.mutation({queryFn:async e=>{let{query:t,database:n,mode:r}=e,i="explain",o=BI.jM.yql;"pg"===r?(i="explain-query",o=BI.jM.pg):r&&(i="explain-".concat(r));try{const e=await window.api.getExplainQuery(t,n,i,o);if((0,BI.gW)(e))return{error:e};return{data:yF(e)}}catch(a){return{error:a}}}})}),overrideExisting:"throw"});var xF=n(62729);const wF=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10.97 12.53a.75.75 0 1 0 1.06-1.06l-3.5-3.5a.75.75 0 0 0-1.06 0l-3.5 3.5a.75.75 0 1 0 1.06 1.06L8 9.56l2.97 2.97Zm0-5a.75.75 0 1 0 1.06-1.06l-3.5-3.5a.75.75 0 0 0-1.06 0l-3.5 3.5a.75.75 0 0 0 1.06 1.06L8 4.56l2.97 2.97Z",clipRule:"evenodd"}));let SF;!function(e){e.triggerCollapse="triggerCollapse",e.triggerExpand="triggerExpand",e.clear="clear"}(SF||(SF={}));const _F=e=>{localStorage.setItem(e,"true")},CF=e=>{localStorage.removeItem(e)};function EF(e){return function(t,n){switch(n){case SF.triggerCollapse:return _F(e),{...t,triggerCollapse:!0,triggerExpand:!1,collapsed:!0};case SF.triggerExpand:return CF(e),{...t,triggerCollapse:!1,triggerExpand:!0,collapsed:!1};case SF.clear:return CF(e),{triggerCollapse:!1,triggerExpand:!1,collapsed:!1};default:return t}}}const TF=Me("kv-pane-visibility-button");function OF(e){let{onCollapse:t,onExpand:n,isCollapsed:r,initialDirection:i="top",className:o}=e;return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(Ie.z,{view:"flat-secondary",onClick:t,className:TF({hidden:r},o),title:"Collapse",children:(0,Le.jsx)(we.J,{data:wF,className:TF({[i]:!0})})}),(0,Le.jsx)(Ie.z,{view:"flat-secondary",onClick:n,className:TF({hidden:!r},o),title:"Expand",children:(0,Le.jsx)(we.J,{data:wF,className:TF({[i]:!0},"rotate")})})]})}const NF=Me("kv-divider");const kF=function(){return(0,Le.jsx)("div",{className:NF()})},jF=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M4.5 3A1.5 1.5 0 0 0 3 4.5v1.75a.75.75 0 0 1-1.5 0V4.5a3 3 0 0 1 3-3h1.75a.75.75 0 0 1 0 1.5H4.5ZM9 2.25a.75.75 0 0 1 .75-.75h1.75a3 3 0 0 1 3 3v1.75a.75.75 0 0 1-1.5 0V4.5A1.5 1.5 0 0 0 11.5 3H9.75A.75.75 0 0 1 9 2.25ZM2.25 9a.75.75 0 0 1 .75.75v1.75A1.5 1.5 0 0 0 4.5 13h1.75a.75.75 0 0 1 0 1.5H4.5a3 3 0 0 1-3-3V9.75A.75.75 0 0 1 2.25 9Zm11.5 0a.75.75 0 0 1 .75.75v1.75a3 3 0 0 1-3 3H9.75a.75.75 0 0 1 0-1.5h1.75a1.5 1.5 0 0 0 1.5-1.5V9.75a.75.75 0 0 1 .75-.75Z",clipRule:"evenodd"}));var IF=n(56963);const PF=function(e){let{disabled:t}=e;const n=Ao();return(0,Le.jsx)(Ie.z,{onClick:()=>{n((0,IF.Xl)())},view:"flat-secondary",disabled:t,title:"Fullscreen",children:(0,Le.jsx)(we.J,{data:jF})})};var DF;function AF(){return AF=Object.assign?Object.assign.bind():function(e){for(var t=1;t{t((0,IF.vj)())}),[t]);return a.useEffect((()=>{const e=e=>{"Escape"===e.key&&n()};return document.addEventListener("keydown",e,!1),()=>{document.removeEventListener("keydown",e,!1)}}),[n]),(0,Le.jsx)(LF,{children:(0,Le.jsxs)("div",{className:MF(null,e.className),children:[(0,Le.jsx)(Ie.z,{onClick:n,view:"raised",className:MF("close-button"),children:(0,Le.jsx)(we.J,{data:RF})}),e.children]})})},zF=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14ZM6.44 4.54c.43-.354.994-.565 1.56-.565 1.217 0 2.34.82 2.34 2.14 0 .377-.079.745-.298 1.1-.208.339-.513.614-.875.867-.217.153-.326.257-.379.328-.038.052-.038.07-.038.089a.75.75 0 0 1-1.5 0c0-.794.544-1.286 1.056-1.645.28-.196.402-.332.46-.425a.543.543 0 0 0 .073-.313c0-.3-.243-.641-.839-.641a.997.997 0 0 0-.608.224c-.167.137-.231.286-.231.417a.75.75 0 0 1-1.5 0c0-.673.345-1.22.78-1.577ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",clipRule:"evenodd"}));var BF=n(80518),UF=n(96261),HF=n(52369);const VF=Me("kv-query-execution-status"),GF=e=>{let t,n,{className:r,error:i}=e;if((0,HF.IZ)(i)&&"ECONNABORTED"===i.code)t=(0,Le.jsx)(we.J,{data:zF}),n="Connection aborted";else{const e=Boolean(i);t=(0,Le.jsx)(we.J,{data:e?BF.Z:UF.Z,className:VF("result-status-icon",{error:e})}),n=e?"Failed":"Completed"}return(0,Le.jsxs)("div",{className:VF(null,r),children:[t,n]})},WF=a.memo((function(e){const{className:t,value:n}=e,r=Ao();return a.useEffect((()=>()=>{r((0,vs.i8)())}),[r]),(0,Le.jsx)("span",{className:QF("cell",t),onClick:e=>r((0,vs.hJ)(e.target,n,"cell")),children:n})})),qF=JSON.parse('{"empty":"Table is empty"}'),ZF=JSON.parse('{"empty":"\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u043f\u0443\u0441\u0442\u0430\u044f"}'),YF=(0,We.wZ)("ydb-query-result-table",{ru:ZF,en:qF}),KF={...Lo.LE,stripedRows:!0,dynamicRenderType:"variable",dynamicItemSizeGetter:()=>40},QF=Me("ydb-query-result-table"),XF=(e,t)=>t,$F=e=>{const{columns:t,data:n,settings:r,...i}=e,o=a.useMemo((()=>(0,BI.Xh)(n)),[n]),s=a.useMemo((()=>t?(e=>e.length?e.map((e=>{let{name:t,type:n}=e;const r=(0,BI.T$)(n);return{name:t,align:"number"===r?Hc.ZP.RIGHT:Hc.ZP.LEFT,sortAccessor:e=>{const n=e[t];return void 0===n||null===n?null:"number"===r?BigInt(n):n},render:e=>{let{row:n}=e;return(0,Le.jsx)(WF,{value:String(n[t])})}}})):[])(t):(e=>e.length?Object.keys(e[0]).map((t=>({name:t,align:(0,Ou.kE)(e[0][t])?Hc.ZP.RIGHT:Hc.ZP.LEFT,sortAccessor:e=>(0,Ou.kE)(e[t])?Number(e[t]):e[t],render:e=>{let{row:n}=e;return(0,Le.jsx)(WF,{value:String(n[t])})}}))):[])(o)),[o,t]),l=a.useMemo((()=>({...KF,...r})),[r]);return Array.isArray(n)?s.length?(0,Le.jsx)(qc,{data:o,columns:s,settings:l,rowKey:XF,...i}):(0,Le.jsx)("div",{className:QF("message"),children:YF("empty")}):null},JF=JSON.parse('{"default_collapse_label":"Show less","default_expand_label":"Show more","chars_count":[" ({{count}} symbol)"," ({{count}} symbols)"," ({{count}} symbols)"," ({{count}} symbols)"]}'),ez=JSON.parse('{"default_collapse_label":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043c\u0435\u043d\u044c\u0448\u0435","default_expand_label":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0435\u0449\u0451","chars_count":[" ({{count}} \u0441\u0438\u043c\u0432\u043e\u043b)"," ({{count}} \u0441\u0438\u043c\u0432\u043e\u043b\u0430)"," ({{count}} \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432)"," ({{count}} \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432)"]}'),tz=(0,We.wZ)("ydb-shorty-string",{ru:ez,en:JF}),nz=Me("kv-shorty-string");function rz(e){let{value:t="",limit:n=200,strict:r=!1,displayLength:i=!0,render:o=(e=>e),onToggle:s,expandLabel:l=tz("default_expand_label"),collapseLabel:c=tz("default_collapse_label")}=e;const[u,d]=a.useState(!1),h=(u?c:l)+(i&&!u?tz("chars_count",{count:t.length}):""),p=t.length>n+(r?0:h.length),f=u||!p?t:t.slice(0,n-4)+"\xa0...";return(0,Le.jsxs)("div",{className:nz(),children:[o(f),p?(0,Le.jsx)(si,{className:nz("toggle"),href:"#",onClick:e=>{e.stopPropagation(),e.preventDefault(),d((e=>!e)),null===s||void 0===s||s()},children:h}):null]})}const iz=["S_FATAL","S_ERROR","S_WARNING","S_INFO"];function oz(e){return function(e){return!!e&&void 0!==iz[e]}(e)?iz[e]:"S_INFO"}const az=Me("kv-result-issues"),sz=Me("kv-issues"),lz=Me("kv-issue");function cz(e){let{data:t}=e;const[n,r]=a.useState(!1),i="string"===typeof t||null===t||void 0===t?void 0:t.issues,o=Array.isArray(i)&&i.length>0;return(0,Le.jsxs)("div",{className:az(),children:[(0,Le.jsxs)("div",{className:az("error-message"),children:[(()=>{let e;if("string"===typeof t)e=t;else{var n,r;const i=oz(null===t||void 0===t||null===(n=t.error)||void 0===n?void 0:n.severity);e=(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(mz,{severity:i})," ",(0,Le.jsx)("span",{className:az("error-message-text"),children:null===t||void 0===t||null===(r=t.error)||void 0===r?void 0:r.message})]})}return e})(),o&&(0,Le.jsx)(Ie.z,{view:"normal",onClick:()=>r(!n),children:n?"Hide details":"Show details"})]}),o&&n&&(0,Le.jsx)(uz,{issues:i})]})}function uz(e){let{issues:t}=e;const n=null===t||void 0===t?void 0:t.reduce(((e,t)=>{var n;const r=null!==(n=t.severity)&&void 0!==n?n:10;return Math.min(e,r)}),10);return(0,Le.jsx)("div",{className:sz(null),children:null===t||void 0===t?void 0:t.map(((e,t)=>(0,Le.jsx)(dz,{issue:e,expanded:e===n},t)))})}function dz(e){let{issue:t,level:n=0}=e;const[r,i]=a.useState(!0),o=oz(t.severity),s=function(e){const{position:t={}}=e;if(!t)return!1;const{file:n,row:r,column:i}=t;return"".concat(n?"file:":"").concat(r,":").concat(i)}(t),l=t.issues,c=Array.isArray(l)&&l.length>0,u=r?"bottom":"right";return(0,Le.jsxs)("div",{className:lz({leaf:!c,"has-issues":c}),children:[(0,Le.jsxs)("div",{className:lz("line"),children:[c&&(0,Le.jsx)(Ie.z,{view:"flat-secondary",onClick:()=>i(!r),className:lz("arrow-toggle"),children:(0,Le.jsx)(_e,{direction:u,size:16})}),(0,Le.jsx)(mz,{severity:o}),(0,Le.jsxs)("span",{className:lz("message"),children:[s&&(0,Le.jsx)("span",{className:lz("place-text"),title:"Position",children:s}),(0,Le.jsx)("div",{className:lz("message-text"),children:(0,Le.jsx)(rz,{value:t.message,expandLabel:"Show full message"})})]}),t.issue_code?(0,Le.jsxs)("span",{className:lz("code"),children:["Code: ",t.issue_code]}):null]}),c&&r&&(0,Le.jsx)("div",{className:lz("issues"),children:(0,Le.jsx)(hz,{issues:l,level:n+1,expanded:r})})]})}function hz(e){const{issues:t,level:n,expanded:r}=e;return(0,Le.jsx)("div",{className:lz("list"),children:t.map(((e,t)=>(0,Le.jsx)(dz,{issue:e,level:n,expanded:r},t)))})}const pz={S_INFO:Cl.Z,S_WARNING:El,S_ERROR:Tl.Z,S_FATAL:PO.Z},fz=Me("yql-issue-severity");function mz(e){let{severity:t}=e;const n=t.slice(2).toLowerCase();return(0,Le.jsxs)("span",{className:fz({severity:n}),children:[(0,Le.jsx)(we.J,{className:fz("icon"),data:pz[t]}),(0,Le.jsx)("span",{className:fz("title"),children:n})]})}const gz=Me("ydb-query-duration"),vz=e=>{let{duration:t}=e;if(!t)return null;const n=(0,Ej.tt)((0,Ej.BO)(t),1);return(0,Le.jsx)("span",{className:gz(),children:(0,Le.jsx)(Po,{className:gz("item-with-popover"),contentClassName:gz("popover"),text:n,popoverContent:sF("query-duration.description")})})};function yz(e){return e.replaceAll("\\","\\\\").replaceAll("\n","\\n").replaceAll("\r","\\r").replaceAll("\t","\\t")}const bz=Me("ydb-query-execute-result"),xz={result:"result",stats:"stats"},wz=[{value:xz.result,content:"Result"},{value:xz.stats,content:"Stats"}];function Sz(e){var t,n,r;let{data:i,stats:o,error:s,isResultsCollapsed:l,onCollapseResults:c,onExpandResults:u}=e;const[d,h]=a.useState(0),[p,f]=a.useState(xz.result),m=Do((e=>e.fullscreen)),g=Ao(),v=null===i||void 0===i||null===(t=i.resultSets)||void 0===t?void 0:t.length,y=v&&v>0,b=y?null===i||void 0===i||null===(n=i.resultSets)||void 0===n?void 0:n[d].result:null===i||void 0===i?void 0:i.result,x=y?null===i||void 0===i||null===(r=i.resultSets)||void 0===r?void 0:r[d].columns:null===i||void 0===i?void 0:i.columns,w=function(e){if(null===e||void 0===e||!e.length)return"";const t=Object.keys(e[0]),n=[t.map(yz).join("\t")];for(const r of e){const e=[];for(const n of t){const t=r[n];e.push(yz("object"===typeof t?JSON.stringify(t):"".concat(t)))}n.push(e.join("\t"))}return n.join("\n")}(b),S=!w.length,_=(0,BI.dt)(s);a.useEffect((()=>()=>{g((0,IF.vj)())}),[g]);const C=(e,t)=>(0,Le.jsx)($F,{data:e,columns:t,settings:{sortable:!1}}),E=()=>{const e=(0,Le.jsx)(bs(),{data:o,isExpanded:()=>!0,className:bz("inspector"),searchOptions:{debounceTime:300}});return(0,Le.jsxs)(a.Fragment,{children:[e,m&&(0,Le.jsx)(FF,{children:(0,Le.jsx)("div",{className:bz("inspector",{fullscreen:!0}),children:e})})]})},T=()=>{const e=(0,Le.jsxs)(a.Fragment,{children:[y&&v>1&&(0,Le.jsx)("div",{children:(0,Le.jsx)(wt,{className:bz("result-tabs"),size:"l",items:Ed(v).map((e=>({id:String(e),title:"Result #".concat(e+1)}))),activeTab:String(d),onSelectTab:e=>h(Number(e))})}),(0,Le.jsx)("div",{className:bz("result"),children:C(b,x)})]});return(0,Le.jsxs)(a.Fragment,{children:[e,m&&(0,Le.jsx)(FF,{children:(0,Le.jsx)("div",{className:bz("result-fullscreen-wrapper"),children:e})})]})},O=()=>{if(!_)return null;if("object"===typeof _){const e=(0,Le.jsx)(cz,{data:_});return(0,Le.jsxs)(a.Fragment,{children:[e,m&&(0,Le.jsx)(FF,{children:(0,Le.jsx)("div",{className:bz("result-fullscreen-wrapper",bz("result")),children:e})})]})}return(0,Le.jsx)("div",{className:bz("error"),children:_})};return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsxs)("div",{className:bz("controls"),children:[(0,Le.jsxs)("div",{className:bz("controls-right"),children:[(0,Le.jsx)(GF,{error:s}),o&&!s&&(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(vz,{duration:null===o||void 0===o?void 0:o.DurationUs}),(0,Le.jsx)(kF,{}),(0,Le.jsx)(Oo,{options:wz,value:p,onUpdate:e=>{f(e)}})]})]}),(0,Le.jsxs)("div",{className:bz("controls-left"),children:[(0,Le.jsx)(pl,{text:w,view:"flat-secondary",title:"Copy results",disabled:S}),(0,Le.jsx)(PF,{}),(0,Le.jsx)(OF,{onCollapse:c,onExpand:u,isCollapsed:l,initialDirection:"bottom"})]})]}),p!==xz.result||s?(0,Le.jsxs)("div",{className:bz("result"),children:[p===xz.stats&&!s&&E(),O()]}):T()]})}var _z=n(14702);function Cz(e,t){const n=document.createElement("button");return n.innerText=e,n.className="paranoid-button paranoid-button_".concat(t),n}const Ez="ParanoidC";function Tz(e,t){const n=document.getElementById(e);if(!n)throw new Error("Not found element with id ".concat(e));n.style.position="relative";const r=Cz("+","plus"),i=Cz("-","minus"),o=Cz("1:1","normal"),a=function(e,t){const n=document.createElement("canvas");n.setAttribute("id",Ez),n.setAttribute("width",String(e.offsetWidth)),n.setAttribute("height",String(e.offsetHeight)),e.appendChild(n);const r=t.colors||{};return new _z.fabric.Canvas(Ez,{selection:!1,backgroundColor:r.fill,defaultCursor:"grab"})}(n,t),s=function(e,t,n,r){const i=document.createElement("div");i.className="paranoid-controls";const o=document.createElement("style");return o.innerText=function(e){return"\n .paranoid-controls {\n position: absolute;\n top: 10px;\n right: 10px;\n }\n .paranoid-button {\n margin-left: 12px;\n border-radius: 4px;\n height: 36px;\n width: 36px;\n line-height: 13px;\n font-family: Arial, sans-serif;\n font-size: 13px;\n text-align: center;\n padding: 0;\n box-shadow: 0px 5px 6px ".concat(e.nodeShadow,";\n border: 1px solid ").concat(e.buttonBorderColor,";\n background-color: ").concat(e.nodeFill,";\n color: ").concat(e.textColor,";\n cursor: pointer;\n }\n .paranoid-button:focus {\n outline: none;\n }\n .paranoid-button:active {\n border: 1px solid ").concat(e.buttonBorderColor,";\n }\n .paranoid-button_plus {\n margin-left: 0;\n border-left: none;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .paranoid-button_minus {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n")}(r),i.appendChild(o),i.appendChild(t),i.appendChild(e),i.appendChild(n),i}(r,i,o,t.colors);return n.appendChild(s),function(e,t,n,r,i){const o=i.minZoom||.2,a=i.zoomStep||.2,s=i.maxZoom||2,l=i.startZoom||1;e.setZoom(l),n.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation();let n=e.getZoom();n-=a,n{t.preventDefault(),t.stopPropagation();let n=e.getZoom();n+=a,n>s&&(n=s),e.setZoom(n)})),r.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation(),e.setZoom(1)}))}(a,r,i,o,t),function(e){let t=!1,n=0,r=0;e.on("mouse:down",(i=>{i.target||(e.setCursor("grabbing"),t=!0,n=i.pointer.x,r=i.pointer.y)})),e.on("mouse:move",(i=>{t&&(e.viewportTransform[4]+=i.pointer.x-n,e.viewportTransform[5]+=i.pointer.y-r,e.setCursor("grabbing"),e.getObjects().forEach((e=>e.setCoords())),e.requestRenderAll(),n=i.pointer.x,r=i.pointer.y)})),e.on("mouse:up",(()=>{t&&(e.setCursor("grab"),t=!1)}))}(a),a}const Oz={success:"rgba(59, 201, 53, 0.75)",error:"#ff0400",warning:"#ff7700",errorBackground:"rgba(235,50,38,0.08)",warningBackground:"rgba(255,219,77,0.3)",mute:"rgba(0,0,0,0.15)",stroke:"rgba(0,0,0,0.3)",fill:"#fafafa",nodeFill:"#ffffff",nodeShadow:"rgba(0,0,0,0.15)",titleColor:"#000000",textColor:"rgba(0,0,0,0.7)",buttonBorderColor:"rgba(0,0,0,0.07)",groupBorderColor:"rgba(2, 123, 243, 0.14)",groupFill:"rgba(2, 123, 243, 0.08)",titleHoverColor:"#004080",nodeHover:"#f3f3f3",specialHover:"rgba(2,123,243,1)"},Nz={hasControls:!1,hasRotatingPoint:!1,lockMovementX:!0,lockMovementY:!0,selectable:!1,hoverCursor:"default",subTargetCheck:!0},kz="Arial, sans-serif",jz=13,Iz=1.38;var Pz;!function(e){e.Group="GROUP"}(Pz||(Pz={}));var Dz=n(69886),Az=n.n(Dz);class Rz{constructor(e,t){this.children=[],this.members=[],this.data=e,this.canvasNode=t}add(e,t){const n=new Rz(e,t);n.addParent(this),this.children.push(n)}addNode(e){e.addParent(this),this.children.push(e)}addNodes(e){e.forEach((e=>{e.addParent(this)})),this.children=this.children.concat(e)}addCanvasNode(e){this.canvasNode=e}addShapeInstance(e){this.shapeInstance=e}hasChildren(){return this.children.length>0}addParent(e){this.parent=e}getLeftSibling(){if(!this.parent)return;const e=this.parent.children.findIndex((e=>e===this));return this.parent.children[e-1]}getRightSibling(){if(!this.parent)return;const e=this.parent.children.findIndex((e=>e===this));return this.parent.children[e+1]}}class Mz{constructor(e){this.nodesWithChildren=[],this.root=e}traverseBF(e){const t=[this.root];for(;t.length>0;){const n=t.shift();n&&(t.push(...n.children),e(n))}}traverseDF(e){const t=[this.root];for(;t.length;){const n=t.shift();let r=!1;n&&(n.children.length>0?t.unshift(...n.children):r=!0,e(n,r))}}traverseByLevels(e){let t=0,n=this.root.children;for(e([this.root],0);n.length>0;)t++,e(n,t),n=n.reduce(((e,t)=>e.concat(t.children)),[])}getTreeDepth(){let e=0;return this.traverseByLevels(((t,n)=>{e=n})),e}setCanvas(e){this.canvas=e}setNodesWithChildren(e){this.nodesWithChildren=e}}class Lz{constructor(e,t){this.nodes=new Map,this.data=e,this.opts=t}parseData(){const e=this.data,t=this.getGroups(e),n=[...e.nodes];t.forEach(((e,t)=>{n.push({name:t,children:e,type:Pz.Group})}));const r=this.findSources(n,e.links);let i=[],o={},a=new Map;return r.forEach((t=>{const r=this.mapNodesToTree(t,n,e.links);o=Object.assign(Object.assign({},r.groups),o),a=new Map([...a,...r.notGroupMemebersChildren]),i.push(r.tree)})),a.forEach(((e,t)=>{o[t]&&o[t].addNodes(e)})),i=i.reduce(((e,t)=>{const n=t.root.data.group;return n?o[n].members.push(t):e.push(t),e}),[]),i}getGroups(e){let{nodes:t}=e;const n=new Map;return t.forEach((e=>{if(e.group){const t=n.get(e.group);t?t.push(e.name):n.set(e.group,[e.name])}})),n}findSources(e,t){const n=t.map((e=>{let{to:t}=e;return t}));return e.reduce(((e,t)=>(n.includes(t.name)||e.push(t),e)),[])}mapNodesToTree(e,t,n){var r;const i=this.createNode(e),o={};this.appendGoup(o,i);const a=t.map((e=>{const t=n.reduce(((t,n)=>(n.from===e.name&&t.push(n.to),t)),[]);return Object.assign(Object.assign({},e),{children:t})})),s=this.getAppender(a,o)(i,(null===(r=a.find((t=>t.name===e.name)))||void 0===r?void 0:r.children)||[]);return{tree:new Mz(i),groups:o,notGroupMemebersChildren:s}}appendGoup(e,t){const n=t.data;t.data.type===Pz.Group&&(e[n.name]=t)}getAppender(e,t){const n=new Map,r=(i,o)=>{const a=o.map((n=>{const i=e.find((e=>{let{name:t}=e;return t===n})),o=this.createNode(i);return this.appendGoup(t,o),i.children.length>0&&r(o,i.children),o})),s=i.data.group,l=Boolean(s),c=[],u=[];if(a.forEach((e=>{const t=e.data.group;l?s===t?c.push(e):u.push(e):c.push(e)})),i.addNodes(c),s&&u.length>0){const e=n.get(s);e?e.push(...u):n.set(s,u)}return n};return r}createNode(e){const t=new Rz(e);return this.nodes.set(e.name,t),t}}class Fz extends CustomEvent{}class zz extends EventTarget{dispatch(e,t){this.dispatchEvent(new Fz(e,{detail:t}))}}const Bz=16,Uz=16,Hz=24;function Vz(e){switch(e){case 0:return 0;case 1:return Uz;default:return Hz}}function Gz(e,t,n,r,i,o){const a=function(e,t,n,r,i,o,a){const s=new Map,l=new Map,c=new Map,u=[];return r.traverseBF((r=>{const{object:i,width:o,height:l}=function(e,t,n,r,i,o,a){var s,l;const c=null!==(s=t.shapeInstance)&&void 0!==s?s:o.node(e,{top:n,left:r},t,i,a),u=null!==(l=t.canvasNode)&&void 0!==l?l:c.getShape();return t.addShapeInstance(c),t.addCanvasNode(u),{object:u,top:n,left:r,width:u.getScaledWidth(),height:u.getScaledHeight()}}(e,r,0,0,t,n,a);s.set(r,{width:o,height:l}),u.push(i)})),function e(t){const{width:n}=s.get(t);let r=n,i=0;if(t.parent&&1===t.parent.children.length&&l.has(t.parent)){const e=l.get(t.parent);r0&&(i=(t.children.length-1)*Bz+t.children.reduce(((t,n)=>t+e(n)),0),c.set(t,i)),r=Math.max(r,i),l.set(t,r),r}(r.root),function e(t,n,r){let i=r,o=r;for(const a of t){const{width:t,height:r}=s.get(a),u=l.get(a),d=n,h=i+Math.floor(u/2)-Math.floor(t/2);if(a.canvasNode.set({top:d,left:h}),a.canvasNode.setCoords(),i=i+u+Bz,a.children.length){let t=0;const i=c.get(a);i{s=Math.max(s,(e.left||0)+e.getScaledWidth()),l=Math.max(l,(e.top||0)+e.getScaledHeight())})),{nodes:a,bottom:l,right:s}}function Wz(e){const t=e.canvasNode;if(t){const e=t.left||0,n=(t.top||0)+t.getScaledHeight();return{x:e+t.getScaledWidth()/2,y:n}}return{x:0,y:0}}function qz(e){const t=e.canvasNode;if(t){const e=t.left||0,n=t.top||0;return{x:e+t.getScaledWidth()/2,y:n}}return{x:0,y:0}}class Zz{constructor(e,t,n,r){this.canvas=Tz(e,t),this.parser=new Lz(n,t),this.opts=t,this.shapes=r,this.em=new zz,this.trees=[],this.nodes=[],this.links=[],this.listenNodeResize()}render(){requestAnimationFrame((()=>{this.trees=this.parser.parseData(),this.renderIntoCanvas(),this.opts.initialZoomFitsCanvas&&this.zoomObjectsToFitCanvas()}))}destroy(){const e=document.getElementById(Ez);e&&(this.canvas.dispose(),e.remove())}getEventEmmiter(){return this.em}getGraphNode(e){return this.parser.nodes.get(e)}getOpts(){return this.opts}getColors(){return this.opts.colors}getCanvas(){return this.canvas}renderIntoCanvas(){this.nodes.forEach((e=>{this.canvas.remove(e)})),this.nodes=[],this.links.forEach((e=>{this.canvas.remove(e)})),this.links=[];const e=this.canvas.getHeight()||0,t=this.canvas.getWidth()||0;let n=e,r=t;const i=this.opts.initialTop;let o=this.opts.initialLeft;this.trees.forEach((e=>{e.setCanvas(this.canvas);const{nodes:t,bottom:a,right:s}=Gz(e,i,o,this.opts,this.shapes,this.em);o=s+15,n=Math.max(a,n),r=Math.max(s,r),this.nodes.push(...t),this.canvas.add(...t)}));const a=function(e,t){const n=t.colors,r=[];return e.data.links.reduce(((t,i)=>{let{from:o}=i;const a=e.nodes.get(o);if(a&&1===a.children.length&&!r.includes(o)){const{x:e,y:i}=Wz(a),s=new _z.fabric.Path("M ".concat(e," ").concat(i,"\n V ").concat(i+Uz),{fill:"",stroke:n.stroke,strokeWidth:1});t.push(new _z.fabric.Group([s],Object.assign({},Nz))),r.push(o)}if(a&&a.children.length>1&&!r.includes(o)){const{x:e,y:i}=Wz(a),s=Hz/2,l=6,c=[new _z.fabric.Path("M ".concat(e," ").concat(i,"\n V ").concat(i+s),{fill:"",stroke:n.stroke,strokeWidth:1})],{x:u,y:d}=qz(a.children[0]),{x:h,y:p}=qz(a.children[a.children.length-1]),f=new _z.fabric.Path("M ".concat(u," ").concat(d,"\n V ").concat(d-s+l,"\n Q ").concat(u," ").concat(d-s," ").concat(u+l," ").concat(d-s,"\n H ").concat(h-l,"\n Q ").concat(h," ").concat(p-s," ").concat(h," ").concat(p+l-s,"\n V ").concat(p,"\n "),{fill:"",stroke:n.stroke,strokeWidth:1});c.push(f),a.children.forEach(((e,t)=>{if(0===t||t===a.children.length-1)return;const{x:r,y:i}=qz(e),o=new _z.fabric.Path("M ".concat(r," ").concat(i,"\n V ").concat(i-s,"\n "),{fill:"",stroke:n.stroke,strokeWidth:1});c.push(o)})),t.push(new _z.fabric.Group(c,Object.assign({},Nz))),r.push(o)}return t}),[])}(this.parser,this.opts);this.links.push(...a),this.canvas.add(...a),this.bringNodesToFront()}bringNodesToFront(){var e;const t=null===(e=this.parser)||void 0===e?void 0:e.nodes;t&&t.forEach((e=>{e.canvasNode&&e.canvasNode.bringToFront()}))}listenNodeResize(){this.em.addEventListener("node:resize",(()=>{this.renderIntoCanvas()}))}zoomObjectsToFitCanvas(){let e=0,t=0;this.canvas.getObjects().forEach((n=>{const{top:r,left:i,height:o,width:a}=n.getBoundingRect(),s=i+a,l=r+o;s>e&&(e=s),l>t&&(t=l)})),e+=this.opts.initialLeft,t+=this.opts.initialTop;const n=this.canvas.getWidth()/e,r=this.canvas.getHeight()/t,i=Math.min(n,r);if(i<1){this.canvas.setZoom(i);const e=this.opts.initialTop*i,t=this.opts.initialLeft*i,n=this.opts.initialTop-e,r=this.opts.initialLeft-t;this.canvas.relativePan(new _z.fabric.Point(r,n))}}}function Yz(){const e={success:"--g-color-text-positive",error:"--g-color-text-danger",warning:"--g-color-text-warning",errorBackground:"--g-color-base-danger-light",warningBackground:"--g-color-base-warning-light",mute:"--g-color-line-generic",stroke:"--g-color-text-hint",fill:"--g-color-base-generic-ultralight",nodeFill:"--g-color-base-float",nodeShadow:"--g-color-sfx-shadow",titleColor:"--g-color-text-primary",textColor:"--g-color-text-complementary",buttonBorderColor:"--g-color-line-generic",groupBorderColor:"--g-color-base-info-light-hover",groupFill:"--g-color-base-info-light",titleHoverColor:"--g-color-text-link-hover",nodeHover:"--g-color-base-float-hover",specialHover:"--g-color-line-brand"},t=getComputedStyle(document.body),n=Object.keys(e).reduce(((n,r)=>{const i=t.getPropertyValue(e[r]).replace(/ /g,"");return i&&(n[r]=i),n}),{});return Object.assign(Object.assign(Object.assign({},Oz),n),{getCommonColor:e=>t.getPropertyValue("--g-color-".concat(e)).replace(/ /g,"")})}const Kz={linkType:"arrow"};function Qz(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Kz;const t=e.colors||{};return Object.assign(Object.assign({initialTop:10,initialLeft:10},e),{colors:Object.assign(Object.assign(Object.assign({},Oz),Yz()),t)})}n(57002);var Xz=function(){if("undefined"!==typeof Map)return Map;function e(e,t){var n=-1;return e.some((function(e,r){return e[0]===t&&(n=r,!0)})),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(t){var n=e(this.__entries__,t),r=this.__entries__[n];return r&&r[1]},t.prototype.set=function(t,n){var r=e(this.__entries__,t);~r?this.__entries__[r][1]=n:this.__entries__.push([t,n])},t.prototype.delete=function(t){var n=this.__entries__,r=e(n,t);~r&&n.splice(r,1)},t.prototype.has=function(t){return!!~e(this.__entries__,t)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(e,t){void 0===t&&(t=null);for(var n=0,r=this.__entries__;n0},e.prototype.connect_=function(){$z&&!this.connected_&&(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),iB?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){$z&&this.connected_&&(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(e){var t=e.propertyName,n=void 0===t?"":t,r=rB.some((function(e){return!!~n.indexOf(e)}));r&&this.refresh()},e.getInstance=function(){return this.instance_||(this.instance_=new e),this.instance_},e.instance_=null,e}(),aB=function(e,t){for(var n=0,r=Object.keys(t);n0},e}(),yB="undefined"!==typeof WeakMap?new WeakMap:new Xz,bB=function e(t){if(!(this instanceof e))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var n=oB.getInstance(),r=new vB(t,n,this);yB.set(this,r)};["observe","unobserve","disconnect"].forEach((function(e){bB.prototype[e]=function(){var t;return(t=yB.get(this))[e].apply(t,arguments)}}));"undefined"!==typeof Jz.ResizeObserver&&Jz.ResizeObserver;class xB extends a.Component{constructor(e){super(e),this.handleResize=debounce((e=>{var t,n,r;const{contentRect:i}=e[0];null===this.paranoid||void 0===t||t.getCanvas().setWidth(i.width),null===this.paranoid||void 0===n||n.getCanvas().setHeight(i.height),null===this.paranoid||void 0===r||r.getCanvas().renderAll()}),300),this.container=React.createRef(),this.resizeObserver=new ResizeObserver(this.handleResize)}componentDidMount(){this.paranoid=getTopology(paranoidRoot,this.props.data,this.props.opts,this.props.shapes),this.paranoid.render(),this.resizeObserver.observe(this.container.current),this.props.initListeners&&this.props.initListeners(this.paranoid)}componentDidUpdate(e){let{data:t,opts:n}=e;var r;!this.paranoid||isEqual(t,this.props.data)&&isEqual(n,this.props.opts)||(null===this.paranoid||void 0===r||r.destroy(),this.paranoid=getTopology(paranoidRoot,this.props.data,this.props.opts,this.props.shapes),this.paranoid.render(),this.props.initListeners&&this.props.initListeners(this.paranoid))}componentWillUnmount(){this.paranoid&&(this.paranoid.destroy(),this.paranoid=void 0),this.resizeObserver.disconnect()}render(){const{styles:e}=this.props;return React.createElement("div",{ref:this.container,id:paranoidRoot,style:e||{height:"100%"}})}}class wB extends a.Component{componentDidMount(){this.paranoid=getCompactTopology(CompactTopology_paranoidRoot,this.props.data,this.props.opts),this.paranoid.renderCompactTopology()}componentDidUpdate(e){let{data:t,opts:n}=e;var r;!this.paranoid||isEqual(t,this.props.data)&&isEqual(n,this.props.opts)||(null===this.paranoid||void 0===r||r.destroy(),this.paranoid=getCompactTopology(CompactTopology_paranoidRoot,this.props.data,this.props.opts),this.paranoid.renderCompactTopology())}componentWillUnmount(){this.paranoid&&this.paranoid.destroy()}render(){const{styles:e}=this.props;return React.createElement("div",{id:CompactTopology_paranoidRoot,style:e||{height:"100%"}})}}const SB={width:280,expandedWidth:360,borderRadius:4,titleFontSize:jz,titleLineHeight:Iz,textFontSize:jz,textLineHeight:Iz,padding:12,timeMaxWidth:25,percentageMaxWidth:25,textOffset:8,tagLeftOffset:4,tagTopOffset:5,statsOffset:24};class _B{constructor(e,t,n,r){this.top=0,this.left=0,this.canvas=e,this.stats=t,this.coords=n,this.colors=r,this.textProps={fontSize:SB.textFontSize,lineHeight:SB.textLineHeight,fontFamily:kz,fill:null===r||void 0===r?void 0:r.titleColor},this.selectedGroup=t[0].group;const i=this.createTitles(),o=i.map((e=>e.getScaledHeight())),a=Math.max.apply(null,o);this.lineTop=this.top+a+SB.textOffset;const s=this.createLine();this.content=this.createContent(i),this.group=this.createGroup(i,s,this.content),this.initListeners()}getCanvasObject(){return this.group}createTitles(){let e=this.left;return this.stats.map((e=>{let{group:t}=e;return t})).map((t=>{var n,r;const i=new _z.fabric.Text(t,Object.assign(Object.assign({left:e,top:this.top},this.textProps),{fill:t===this.selectedGroup?null===(n=this.colors)||void 0===n?void 0:n.titleColor:null===(r=this.colors)||void 0===r?void 0:r.textColor}));return e+=i.getScaledWidth()+SB.statsOffset,i}))}createLine(){return new _z.fabric.Path("M ".concat(this.left," ").concat(this.lineTop,"\n H ").concat(SB.expandedWidth-2*SB.padding),{fill:"",stroke:this.colors.stroke,strokeWidth:1})}createContent(e){return this.stats.map(((t,n)=>{let{group:r,stats:i}=t;const o=this.getContentItems(i,this.lineTop),a=e[n],s=a.left||0,l=s+a.getScaledWidth();return{group:r,items:new _z.fabric.Group(o,{opacity:this.selectedGroup===r?1:0}),title:a,hoverLine:this.createHoverLine(s,l,r)}}))}getContentItems(e,t){let n=t+2*SB.textOffset;const r=[],i=e=>{e.forEach((e=>{let{name:t,value:i}=e;var o;const a=new _z.fabric.Text(t,Object.assign({left:this.left,top:n},this.textProps)),s=SB.expandedWidth/2-SB.padding,l=SB.expandedWidth-2*SB.padding,c=new _z.fabric.Textbox(String(i),Object.assign(Object.assign({left:s,top:n},this.textProps),{fill:null===(o=this.colors)||void 0===o?void 0:o.textColor,splitByGrapheme:!0,width:l-s}));r.push(a,c),n+=Math.max(a.getScaledHeight(),c.getScaledHeight())+SB.textOffset}))};return!function(e){var t;return Boolean(null===(t=e[0])||void 0===t?void 0:t.items)}(e)?i(e):e.forEach(((t,o)=>{let{name:a,items:s}=t;const l=new _z.fabric.Text(a,Object.assign(Object.assign({left:this.left,top:n},this.textProps),{fontWeight:"bold"}));if(r.push(l),n+=l.getScaledHeight()+SB.textOffset,i(s),o!==e.length-1){const e=new _z.fabric.Path("M ".concat(this.left," ").concat(n,"\n H ").concat(SB.expandedWidth-2*SB.padding),{fill:"",stroke:this.colors.stroke,strokeWidth:1,strokeDashArray:[6,4]});r.push(e),n+=e.getScaledHeight()+SB.textOffset}})),r}createGroup(e,t,n){const r=n.map((e=>{let{items:t}=e;return t})),i=n.map((e=>{let{hoverLine:t}=e;return t}));return new _z.fabric.Group([...e,t,...r,...i],Object.assign({left:this.coords.left,top:this.coords.top},Nz))}createHoverLine(e,t,n){return new _z.fabric.Path("M ".concat(e," ").concat(this.lineTop-1,"\n H ").concat(t),{fill:"",stroke:this.colors.specialHover,strokeWidth:2,opacity:this.selectedGroup===n?1:0})}initListeners(){this.content.forEach((e=>{let{group:t,title:n,items:r,hoverLine:i}=e;n.on("mousedown",(()=>{const e=this.selectedGroup,o=this.content.find((t=>t.group===e));o&&(o.title.set({fill:this.colors.textColor}),o.items.set({opacity:0}),o.hoverLine.set({opacity:0}),n.set({fill:this.colors.titleColor}),r.set({opacity:1}),i.set({opacity:1}),this.selectedGroup=t,this.canvas.requestRenderAll())}))}))}}function CB(e,t,n,r,i){return new _B(e,t,{top:n,left:r},i).getCanvasObject()}function EB(e,t,n){return new _z.fabric.Textbox(e?"#".concat(e):"",{fontSize:12,lineHeight:14,textAlign:"right",fontFamily:kz,fill:n.getCommonColor("text-secondary"),hoverCursor:t?"pointer":"default"})}const TB={width:112,expandedWidth:360,borderRadius:6,titleFontSize:jz,titleLineHeight:Iz,textFontSize:jz,textLineHeight:Iz,padding:16,textOffset:8},OB={scaleX:16/512,scaleY:16/512,originY:"center"};function NB(e,t,n){const r=new _z.fabric.Text(e,{fontSize:TB.textFontSize,lineHeight:TB.textFontSize,fontFamily:kz,fill:n.getCommonColor("text-misc"),originY:"center"}),i=[r];let o;switch(e){case"Merge":o=new _z.fabric.Path("M232.5 5.171C247.4-1.718 264.6-1.718 279.5 5.171L498.1 106.2C506.6 110.1 512 118.6 512 127.1C512 137.3 506.6 145.8 498.1 149.8L279.5 250.8C264.6 257.7 247.4 257.7 232.5 250.8L13.93 149.8C5.438 145.8 0 137.3 0 127.1C0 118.6 5.437 110.1 13.93 106.2L232.5 5.171zM498.1 234.2C506.6 238.1 512 246.6 512 255.1C512 265.3 506.6 273.8 498.1 277.8L279.5 378.8C264.6 385.7 247.4 385.7 232.5 378.8L13.93 277.8C5.438 273.8 0 265.3 0 255.1C0 246.6 5.437 238.1 13.93 234.2L67.13 209.6L219.1 279.8C242.5 290.7 269.5 290.7 292.9 279.8L444.9 209.6L498.1 234.2zM292.9 407.8L444.9 337.6L498.1 362.2C506.6 366.1 512 374.6 512 383.1C512 393.3 506.6 401.8 498.1 405.8L279.5 506.8C264.6 513.7 247.4 513.7 232.5 506.8L13.93 405.8C5.438 401.8 0 393.3 0 383.1C0 374.6 5.437 366.1 13.93 362.2L67.13 337.6L219.1 407.8C242.5 418.7 269.5 418.7 292.9 407.8V407.8z",OB);break;case"UnionAll":o=new _z.fabric.Path("M200 288H88c-21.4 0-32.1 25.8-17 41l32.9 31-99.2 99.3c-6.2 6.2-6.2 16.4 0 22.6l25.4 25.4c6.2 6.2 16.4 6.2 22.6 0L152 408l31.1 33c15.1 15.1 40.9 4.4 40.9-17V312c0-13.3-10.7-24-24-24zm112-64h112c21.4 0 32.1-25.9 17-41l-33-31 99.3-99.3c6.2-6.2 6.2-16.4 0-22.6L481.9 4.7c-6.2-6.2-16.4-6.2-22.6 0L360 104l-31.1-33C313.8 55.9 288 66.6 288 88v112c0 13.3 10.7 24 24 24zm96 136l33-31.1c15.1-15.1 4.4-40.9-17-40.9H312c-13.3 0-24 10.7-24 24v112c0 21.4 25.9 32.1 41 17l31-32.9 99.3 99.3c6.2 6.2 16.4 6.2 22.6 0l25.4-25.4c6.2-6.2 6.2-16.4 0-22.6L408 360zM183 71.1L152 104 52.7 4.7c-6.2-6.2-16.4-6.2-22.6 0L4.7 30.1c-6.2 6.2-6.2 16.4 0 22.6L104 152l-33 31.1C55.9 198.2 66.6 224 88 224h112c13.3 0 24-10.7 24-24V88c0-21.3-25.9-32-41-16.9z",OB);break;case"HashShuffle":o=new _z.fabric.Path("M504.971 359.029c9.373 9.373 9.373 24.569 0 33.941l-80 79.984c-15.01 15.01-40.971 4.49-40.971-16.971V416h-58.785a12.004 12.004 0 0 1-8.773-3.812l-70.556-75.596 53.333-57.143L352 336h32v-39.981c0-21.438 25.943-31.998 40.971-16.971l80 79.981zM12 176h84l52.781 56.551 53.333-57.143-70.556-75.596A11.999 11.999 0 0 0 122.785 96H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12zm372 0v39.984c0 21.46 25.961 31.98 40.971 16.971l80-79.984c9.373-9.373 9.373-24.569 0-33.941l-80-79.981C409.943 24.021 384 34.582 384 56.019V96h-58.785a12.004 12.004 0 0 0-8.773 3.812L96 336H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12h110.785c3.326 0 6.503-1.381 8.773-3.812L352 176h32z",OB);break;case"Map":o=new _z.fabric.Path("M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm-28.9 143.6l75.5 72.4H120c-13.3 0-24 10.7-24 24v16c0 13.3 10.7 24 24 24h182.6l-75.5 72.4c-9.7 9.3-9.9 24.8-.4 34.3l11 10.9c9.4 9.4 24.6 9.4 33.9 0L404.3 273c9.4-9.4 9.4-24.6 0-33.9L271.6 106.3c-9.4-9.4-24.6-9.4-33.9 0l-11 10.9c-9.5 9.6-9.3 25.1.4 34.4z",OB);break;case"Broadcast":o=new _z.fabric.Path("M377.941 169.941V216H134.059v-46.059c0-21.382-25.851-32.09-40.971-16.971L7.029 239.029c-9.373 9.373-9.373 24.568 0 33.941l86.059 86.059c15.119 15.119 40.971 4.411 40.971-16.971V296h243.882v46.059c0 21.382 25.851 32.09 40.971 16.971l86.059-86.059c9.373-9.373 9.373-24.568 0-33.941l-86.059-86.059c-15.119-15.12-40.971-4.412-40.971 16.97z",OB)}return o&&(o.set({fill:n.getCommonColor("text-misc"),top:0,left:0,originY:"center"}),r.set({left:22}),i.push(o)),new _z.fabric.Group(i,Object.assign(Object.assign({},Nz),{hoverCursor:t?"pointer":"default"}))}class kB{constructor(e,t,n,r,i){this.expanded=!1,this.expandedNodeHeight=0,this.nodeHeight=0,this.canvas=e,this.coords=t,this.treeNode=n,this.opts=r,this.em=i,this.data=gw()(n,["data","data"]),this.objects=this.prepareShapeObjects(),this.setShapeObjectsCoords(),this.body=this.prepareNodeBody(),this.group=this.createGroup(),this.initListeners()}getShape(){return this.group}getFillColor(){return this.opts.colors.getCommonColor("base-misc-light")}getHoverFillColor(){return this.opts.colors.getCommonColor("base-misc-light-hover")}getShadow(){}getHoverShadow(){}toggleHighlight(e){this.isExpandable()&&!this.expanded&&this.body.set({fill:e?this.getHoverFillColor():this.getFillColor()}),this.canvas.requestRenderAll()}prepareNodeBody(){const e=this.opts.colors,t=this.objects[this.objects.length-1];return this.nodeHeight=(t.top||0)+t.getScaledHeight()+TB.padding,new _z.fabric.Rect({width:TB.width,height:this.nodeHeight,fill:this.getFillColor(),shadow:this.getShadow(),stroke:e.getCommonColor("line-misc"),rx:TB.borderRadius,ry:TB.borderRadius,hoverCursor:this.isExpandable()?"pointer":"default"})}prepareShapeObjects(){return[EB(this.data.id,this.isExpandable(),this.opts.colors),NB(this.data.name||"",this.isExpandable(),this.opts.colors)]}setShapeObjectsCoords(){const[e,t]=this.objects,n=TB.padding,r=this.expanded?TB.expandedWidth:TB.width,i=t.getScaledWidth();e.set({left:0,top:4,width:r-4}),t.set({left:r/2-i/2,top:n})}createGroup(){const{top:e,left:t}=this.coords;return new _z.fabric.Group([this.body,...this.objects],Object.assign({top:e,left:t},Nz))}initListeners(){this.initHover(),this.isExpandable()&&this.initExpand()}initHover(){this.group.on("mouseover",(()=>{this.em.dispatch("node:mouseover",this.treeNode),this.toggleHighlight(!0)})),this.group.on("mouseout",(()=>{this.em.dispatch("node:mouseout",this.treeNode),this.toggleHighlight(!1)}))}initExpand(){this.group.on("mousedown",(e=>{var t;this.stats&&(null===(t=e.subTargets)||void 0===t?void 0:t.includes(this.stats))||(this.expanded=!this.expanded,this.updateDimensions(),this.em.dispatch("node:resize",this.treeNode))}))}updateDimensions(){const e=this.opts.colors,[t,n]=this.objects,r=n.getScaledWidth();let i,o;this.expanded?(this.stats=CB(this.canvas,this.data.stats,(this.group.top||0)+this.body.getScaledHeight()+TB.padding,(this.group.left||0)+TB.padding,e),this.expandedNodeHeight=this.nodeHeight+this.stats.getScaledHeight()+2*TB.padding,i=TB.expandedWidth,o=this.expandedNodeHeight,this.group.addWithUpdate(this.stats)):(i=TB.width,o=this.nodeHeight,this.group.removeWithUpdate(this.stats),this.stats=void 0);const a=function(e,t){const n=[];return t.forEachObject((r=>{n.push(r),t.removeWithUpdate(r),e.add(r)})),()=>{n.forEach((n=>{e.remove(n),t.addWithUpdate(n)}))}}(this.canvas,this.group);this.body.set({width:i,height:o,fill:this.getFillColor(),shadow:this.getShadow()}),t.set({width:i-4}),n.set({left:(this.body.left||0)+(this.body.width||0)/2-r/2}),a()}isExpandable(){return Boolean(this.data.stats&&this.data.stats.length>0)}}const jB={width:190,bevelSize:10,titleFontSize:jz,titleLineHeight:Iz,padding:12};class IB{constructor(e,t,n,r,i){this.nodeHeight=0,this.coords=t,this.opts=r,this.data=gw()(n,["data","data"]),this.shadow=new _z.fabric.Shadow({color:r.colors.nodeShadow,offsetY:1,blur:5}),this.hoverShadow=new _z.fabric.Shadow({color:r.colors.nodeShadow,offsetY:3,blur:8}),this.objects=this.prepareShapeObjects(),this.setShapeObjectsCoords(),this.body=this.prepareNodeBody(),this.group=this.createGroup()}getShape(){return this.group}getFillColor(){return this.opts.colors.nodeFill}getHoverFillColor(){return this.opts.colors.nodeHover}getShadow(){return this.shadow}getHoverShadow(){return this.hoverShadow}toggleHighlight(){}prepareNodeBody(){const e=this.opts.colors,t=this.objects[this.objects.length-1];return this.nodeHeight=(t.top||0)+t.getScaledHeight()+jB.padding,new _z.fabric.Polygon([{x:jB.bevelSize,y:0},{x:jB.width-jB.bevelSize,y:0},{x:jB.width,y:jB.bevelSize},{x:jB.width,y:this.nodeHeight-jB.bevelSize},{x:jB.width-jB.bevelSize,y:this.nodeHeight},{x:jB.bevelSize,y:this.nodeHeight},{x:0,y:this.nodeHeight-jB.bevelSize},{x:0,y:jB.bevelSize}],{fill:this.getFillColor(),stroke:null===e||void 0===e?void 0:e.nodeShadow,shadow:this.getShadow(),hoverCursor:"default"})}prepareShapeObjects(){const e=function(e,t){return new _z.fabric.Text(e.join("\n"),{fontSize:jB.titleFontSize,lineHeight:jB.titleLineHeight,left:0,top:26,fontFamily:kz,fontStyle:"italic",fill:t.getCommonColor("text-primary")})}([this.data.name||""],this.opts.colors);return[e]}setShapeObjectsCoords(){const[e]=this.objects,t=jB.padding,n=e.getScaledWidth();e.set({left:jB.width/2-n/2,top:t})}createGroup(){const{top:e,left:t}=this.coords;return new _z.fabric.Group([this.body,...this.objects],Object.assign({top:e,left:t},Nz))}}const PB=40,DB=40,AB=20;class RB{constructor(e,t,n,r,i){this.coords=t,this.opts=r,this.shadow=new _z.fabric.Shadow({color:r.colors.nodeShadow,offsetY:1,blur:5}),this.hoverShadow=new _z.fabric.Shadow({color:r.colors.nodeShadow,offsetY:3,blur:8}),this.body=this.prepareNodeBody(),this.group=this.createGroup()}getShape(){return this.group}getFillColor(){return this.opts.colors.nodeFill}getHoverFillColor(){return this.opts.colors.nodeHover}getShadow(){return this.shadow}getHoverShadow(){return this.hoverShadow}toggleHighlight(){}prepareNodeBody(){const e=this.opts.colors;return new _z.fabric.Rect({width:PB,height:DB,fill:this.getFillColor(),stroke:null===e||void 0===e?void 0:e.nodeShadow,rx:AB,ry:AB,shadow:this.getShadow(),hoverCursor:"default"})}createGroup(){const{top:e,left:t}=this.coords;return new _z.fabric.Group([this.body],Object.assign({top:e,left:t},Nz))}}const MB={width:112,borderRadius:6,titleFontSize:jz,titleLineHeight:Iz,textFontSize:jz,textLineHeight:Iz,padding:12,textOffset:8};class LB{constructor(e,t,n,r,i){this.nodeHeight=0,this.coords=t,this.opts=r,this.data=gw()(n,["data","data"]),this.shadow=new _z.fabric.Shadow({color:r.colors.nodeShadow,offsetY:1,blur:5}),this.hoverShadow=new _z.fabric.Shadow({color:r.colors.nodeShadow,offsetY:3,blur:8}),this.objects=this.prepareShapeObjects(),this.setShapeObjectsCoords(),this.body=this.prepareNodeBody(),this.group=this.createGroup()}getShape(){return this.group}getFillColor(){return this.opts.colors.nodeFill}getHoverFillColor(){return this.opts.colors.nodeHover}getShadow(){return this.shadow}getHoverShadow(){return this.hoverShadow}toggleHighlight(){}prepareNodeBody(){const e=this.opts.colors,t=this.objects[this.objects.length-1];return this.nodeHeight=(t.top||0)+t.getScaledHeight()+MB.padding,new _z.fabric.Rect({width:MB.width,height:this.nodeHeight,fill:this.getFillColor(),stroke:null===e||void 0===e?void 0:e.nodeShadow,shadow:this.getShadow(),hoverCursor:"default"})}prepareShapeObjects(){const e=function(e,t){return new _z.fabric.Text(e.join("\n"),{fontSize:MB.textFontSize,lineHeight:MB.textLineHeight,left:0,top:26,fontFamily:kz,fill:t.getCommonColor("text-primary")})}([this.data.name||""],this.opts.colors);return[e]}setShapeObjectsCoords(){const[e]=this.objects,t=MB.padding,n=e.getScaledWidth();e.set({left:MB.width/2-n/2,top:t})}createGroup(){const{top:e,left:t}=this.coords;return new _z.fabric.Group([this.body,...this.objects],Object.assign({top:e,left:t},Nz))}}const FB={width:248,expandedWidth:360,borderRadius:6,titleFontSize:jz,titleLineHeight:Iz,textFontSize:jz,textLineHeight:Iz,padding:12,textOffset:8};class zB{constructor(e,t,n,r,i){this.expanded=!1,this.expandedNodeHeight=0,this.nodeHeight=0,this.canvas=e,this.coords=t,this.treeNode=n,this.opts=r,this.em=i,this.data=gw()(n,["data","data"]),this.shadow=new _z.fabric.Shadow({color:r.colors.nodeShadow,offsetY:1,blur:5}),this.hoverShadow=new _z.fabric.Shadow({color:r.colors.nodeShadow,offsetY:3,blur:8}),this.objects=this.prepareShapeObjects(),this.setShapeObjectsCoords(),this.body=this.prepareNodeBody(),this.group=this.createGroup(),this.initListeners()}getShape(){return this.group}getFillColor(){return this.opts.colors.nodeFill}getHoverFillColor(){return this.opts.colors.nodeHover}getShadow(){return this.shadow}getHoverShadow(){return this.hoverShadow}toggleHighlight(e){this.isExpandable()&&!this.expanded&&this.body.set({fill:e?this.getHoverFillColor():this.getFillColor(),shadow:e?this.getHoverShadow():this.getShadow()}),this.canvas.requestRenderAll()}prepareNodeBody(){const e=this.opts.colors,t=this.objects[this.objects.length-1];return this.nodeHeight=(t.top||0)+t.getScaledHeight()+FB.padding,new _z.fabric.Rect({width:FB.width,height:this.nodeHeight,fill:this.getFillColor(),stroke:null===e||void 0===e?void 0:e.nodeShadow,rx:FB.borderRadius,ry:FB.borderRadius,shadow:this.getShadow(),hoverCursor:this.isExpandable()?"pointer":"default"})}prepareShapeObjects(){const e=EB(this.data.id,this.isExpandable(),this.opts.colors),t=function(e,t,n){return new _z.fabric.Text(e.join("\n"),{fontSize:FB.textFontSize,lineHeight:FB.textLineHeight,fontFamily:kz,fill:n.getCommonColor("text-primary"),hoverCursor:t?"pointer":"default"})}(this.data.operators||[this.data.name||""],this.isExpandable(),this.opts.colors),n=function(e,t){if(0===e.length)return new _z.fabric.Group([],Object.assign({top:0,left:0},Nz));const n=new _z.fabric.Text("Tables:",{fontSize:FB.textFontSize,lineHeight:FB.textLineHeight,fontFamily:kz,fill:t.getCommonColor("text-secondary"),hoverCursor:"pointer"}),r=n.getScaledWidth()+2,i=FB.width-2*FB.padding-r,o=new _z.fabric.Textbox(e.join("\n"),{left:r,width:i,fontSize:FB.textFontSize,lineHeight:FB.textLineHeight,fontFamily:kz,fill:t.getCommonColor("text-primary"),splitByGrapheme:!0,hoverCursor:"pointer"});return new _z.fabric.Group([n,o],Object.assign({top:0,left:0},Nz))}(this.data.tables||[],this.opts.colors),r=function(e,t){if(!e)return new _z.fabric.Group([],Object.assign({top:0,left:0},Nz));const n=new _z.fabric.Text("CTE:",{fontSize:FB.textFontSize,lineHeight:FB.textLineHeight,fontFamily:kz,fill:t.getCommonColor("text-secondary"),hoverCursor:"pointer"}),r=n.getScaledWidth()+2,i=FB.width-2*FB.padding-r,o=new _z.fabric.Textbox(e,{left:r,width:i,fontSize:FB.textFontSize,lineHeight:FB.textLineHeight,fontFamily:kz,fill:t.getCommonColor("text-primary"),splitByGrapheme:!0,hoverCursor:"pointer"});return new _z.fabric.Group([n,o],Object.assign({top:0,left:0},Nz))}(this.data.cte||"",this.opts.colors);return[e,t,n,r]}setShapeObjectsCoords(){const[e,t,n,r]=this.objects;let i=FB.padding;const o=FB.padding;e.set({left:0,top:4,width:(this.expanded?FB.expandedWidth:FB.width)-4}),t.set({left:o,top:i}),i+=t.getScaledHeight(),n.set({left:o,top:i+(0===n.size()?0:FB.textOffset)}),i+=n.getScaledHeight(),r.set({left:o,top:i+(0===r.size()?0:FB.textOffset)})}createGroup(){const{top:e,left:t}=this.coords;return new _z.fabric.Group([this.body,...this.objects],Object.assign({top:e,left:t},Nz))}initListeners(){this.initHover(),this.isExpandable()&&this.initExpand()}initHover(){this.group.on("mouseover",(()=>{this.em.dispatch("node:mouseover",this.treeNode),this.toggleHighlight(!0)})),this.group.on("mouseout",(()=>{this.em.dispatch("node:mouseout",this.treeNode),this.toggleHighlight(!1)}))}initExpand(){this.group.on("mousedown",(e=>{var t;this.stats&&(null===(t=e.subTargets)||void 0===t?void 0:t.includes(this.stats))||(this.updateDimensions(),this.expanded=!this.expanded,this.em.dispatch("node:resize",this.treeNode))}))}updateDimensions(){const e=this.opts.colors;if(this.expanded){const e=FB.width,t=this.nodeHeight;this.body.set({width:e,height:t,fill:this.getFillColor(),shadow:this.getShadow()}).setCoords(),this.objects[0].set({width:e-4}).setCoords(),this.group.removeWithUpdate(this.stats),this.stats=void 0}else{this.stats=CB(this.canvas,this.data.stats,(this.group.top||0)+this.body.getScaledHeight()+FB.padding,(this.group.left||0)+FB.padding,e),this.expandedNodeHeight=this.nodeHeight+this.stats.getScaledHeight()+2*FB.padding;const t=FB.expandedWidth,n=this.expandedNodeHeight;this.body.set({width:t,height:n,fill:this.getFillColor(),shadow:this.getShadow()}).setCoords(),this.objects[0].set({width:t-4}).setCoords(),this.group.addWithUpdate(this.stats)}}isExpandable(){return Boolean(this.data.stats&&this.data.stats.length>0)}}function BB(e,t,n,r,i){return function(e){const t=gw()(e,["data","data"]);return"connection"===(null===t||void 0===t?void 0:t.type)}(n)?new kB(e,t,n,r,i):function(e){const t=gw()(e,["data","data"]);return"result"===(null===t||void 0===t?void 0:t.type)}(n)?new LB(e,t,n,r,i):function(e){const t=gw()(e,["data","data"]);return"query"===(null===t||void 0===t?void 0:t.type)}(n)?new RB(e,t,n,r,i):function(e){const t=gw()(e,["data","data"]);return"materialize"===(null===t||void 0===t?void 0:t.type)}(n)?new IB(e,t,n,r,i):new zB(e,t,n,r,i)}var UB=n(60749);const HB=e=>{const t=e.name.split("|");return t.length>1?t[1]:e.name},VB=Me("ydb-query-explain-result"),GB={automaticLayout:!0,selectOnLineNumbers:!0,readOnly:!0,minimap:{enabled:!1},wrappingIndent:"indent"},WB={schema:"schema",json:"json",ast:"ast"},qB=[{value:WB.schema,content:"Schema"},{value:WB.json,content:"JSON"},{value:WB.ast,content:"AST"}];function ZB(e){const t=a.useRef(),{data:n,opts:r,shapes:i,theme:o}=e;return a.useEffect((()=>{const e=document.getElementById("graphRoot");if(!e)throw new Error("Can't find element with id #graphRoot");return e.innerHTML="",t.current=function(e,t,n,r){const i=Qz(n);return new Zz(e,i,t,r)}("graphRoot",n,r,i),t.current.render(),()=>{t.current=void 0}}),[o]),a.useEffect((()=>{var n,r;null===(n=t.current)||void 0===n||null===(r=n.updateData)||void 0===r||r.call(n,e.data)}),[e.data]),(0,Le.jsx)("div",{id:"graphRoot",style:{height:"100vh"}})}function YB(e){const t=Ao(),[n,r]=a.useState(WB.schema),i=Do((e=>e.fullscreen));a.useEffect((()=>()=>{t((0,IF.vj)())}),[t]);const o=()=>{var t,r;switch(n){case WB.schema:return Boolean(null===(t=e.explain)||void 0===t||null===(r=t.nodes)||void 0===r?void 0:r.length);case WB.json:return Boolean(e.explain);case WB.ast:return Boolean(e.ast);default:return!1}};return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("div",{className:VB("controls"),children:!e.loading&&(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsxs)("div",{className:VB("controls-right"),children:[(0,Le.jsx)(GF,{error:e.error}),!e.error&&(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(kF,{}),(0,Le.jsx)(Oo,{options:qB,value:n,onUpdate:e=>{r(e)}})]})]}),(0,Le.jsxs)("div",{className:VB("controls-left"),children:[(0,Le.jsx)(PF,{disabled:Boolean(e.error)||!o()}),(0,Le.jsx)(OF,{onCollapse:e.onCollapseResults,onExpand:e.onExpandResults,isCollapsed:e.isResultsCollapsed,initialDirection:"bottom"})]})]})}),(0,Le.jsx)("div",{className:VB("result"),children:(()=>{const{error:t,loading:r}=e;if(r)return(0,Le.jsx)("div",{className:VB("loader"),children:(0,Le.jsx)(Di,{size:"m"})});if(t)return(0,Le.jsx)("div",{className:VB("text-message"),children:(0,BI.fV)(e.error)});if(!o())return(0,Le.jsx)("div",{className:VB("text-message"),children:"There is no ".concat(n," for the request")});switch(n){case WB.json:return(()=>{var t;const n=(0,Le.jsx)(bs(),{data:null===(t=e.explain)||void 0===t?void 0:t.pristine,isExpanded:()=>!0,className:VB("inspector"),searchOptions:{debounceTime:300}});return(0,Le.jsxs)(a.Fragment,{children:[n,i&&(0,Le.jsx)(FF,{children:n})]})})();case WB.ast:return(()=>{const t=(0,Le.jsx)("div",{className:VB("ast"),children:(0,Le.jsx)(hF,{language:UB.K,value:e.ast,options:GB,wrappingIndent:"indent",theme:"vs-".concat(e.theme)})});return(0,Le.jsxs)(a.Fragment,{children:[t,i&&(0,Le.jsx)(FF,{children:t})]})})();case WB.schema:return(()=>{const{explain:t={},theme:r}=e,{links:o,nodes:s,version:l}=t,c=l===gF.v2,u=o&&s&&s.length,d=c&&u?(0,Le.jsx)("div",{className:VB("explain-canvas-container",{hidden:n!==WB.schema}),children:(0,Le.jsx)(ZB,{theme:r,data:{links:o,nodes:s},opts:{renderNodeTitle:HB,textOverflow:"normal",initialZoomFitsCanvas:!0},shapes:{node:BB}})}):null;return(0,Le.jsxs)(a.Fragment,{children:[!i&&d,i&&(0,Le.jsx)(FF,{children:d})]})})();default:return null}})()})]})}const KB=Dl.h.injectEndpoints({endpoints:e=>({sendQuery:e.query({queryFn:async(e,t)=>{let{query:n,database:r,action:i}=e,{signal:o}=t;try{const e=await window.api.sendQuery({schema:"modern",query:n,database:r,action:i},{signal:o});return(0,BI.gW)(e)?{error:e}:{data:(0,BI.gY)(e)}}catch(a){return{error:a||new Error("Unauthorized")}}},providesTags:["All"]})}),overrideExisting:"throw"}),QB=Me("kv-preview"),XB=e=>{var t;let{database:n,type:r}=e;const i=Ao(),o=(0,pj.vp)(r),{autorefresh:a,currentSchemaPath:s}=Do((e=>e.schema)),l=Do((e=>e.fullscreen)),c="--!syntax_v1\nselect * from `".concat(s,"` limit 32"),{currentData:u,isFetching:d,error:h}=KB.useSendQueryQuery({database:n,query:c,action:(0,pj.uL)(r)?"execute-query":"execute-scan"},{pollingInterval:a,skip:!o}),p=null!==u&&void 0!==u?u:{},f=()=>{i((0,Vk.m7)(!1))};if(d&&void 0===u)return(0,Le.jsx)("div",{className:QB("loader-container"),children:(0,Le.jsx)(Di,{size:"m"})});let m;o?h&&(m=(0,Le.jsx)("div",{className:QB("message-container","error"),children:(0,BI.fV)(h)})):m=(0,Le.jsx)("div",{className:QB("message-container"),children:sF("preview.not-available")});const g=null!==(t=m)&&void 0!==t?t:(0,Le.jsx)("div",{className:QB("result"),children:(0,Le.jsx)($F,{data:p.result,columns:p.columns})});return(0,Le.jsxs)("div",{className:QB(),children:[(0,Le.jsxs)("div",{className:QB("header"),children:[(0,Le.jsxs)("div",{className:QB("title"),children:[sF("preview.title")," ",(0,Le.jsx)("div",{className:QB("table-name"),children:s})]}),(0,Le.jsxs)("div",{className:QB("controls-left"),children:[(0,Le.jsx)(PF,{disabled:Boolean(h)}),(0,Le.jsx)(Ie.z,{view:"flat-secondary",onClick:f,title:sF("preview.close"),children:(0,Le.jsx)(we.J,{data:tt.Z,size:18})})]})]}),l?(0,Le.jsx)(FF,{children:g}):g]})},$B=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("g",{clipPath:"url(#a)"},a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M14.756 10.164c1.665-.962 1.665-3.366 0-4.329L6.251.918C4.585-.045 2.5 1.158 2.5 3.083v9.834c0 1.925 2.085 3.128 3.751 2.164l8.505-4.917Z",clipRule:"evenodd"})),a.createElement("defs",null,a.createElement("clipPath",{id:"a"},a.createElement("path",{fill:"currentColor",d:"M0 0h16v16H0z"}))));var JB=n(26364),eU=n.n(JB),tU=n(97894);const nU=Me("kv-save-query");const rU=function(e){let{savedQueries:t,onSaveQuery:n,saveButtonDisabled:r}=e;const i=Do((e=>e.singleClusterMode)),[o,s]=a.useState(!1),[l,c]=a.useState(""),[u,d]=a.useState(null),h=Do((e=>e.saveQuery)),p=Ao(),f=()=>{s(!0),p((0,tU.GC)(null))},m=()=>{s(!1),c(""),d(null)},g=e=>{c(e),d(v(e))},v=e=>eU()(t,(t=>t.name.toLowerCase()===e.trim().toLowerCase()))?"This name already exists":null,y=()=>{l&&!u&&(n(l),m())},b=()=>{n(h),p((0,tU.GC)(null))},x=e=>(0,Le.jsx)(Ie.z,{onClick:e,disabled:r,children:h?"Edit query":"Save query"});return(0,Le.jsxs)(a.Fragment,{children:[h?(()=>{const e=[{action:b,text:"Edit existing"},{action:f,text:"Save as new"}];return(0,Le.jsx)(nC,{items:e,switcher:x(),popupPlacement:["top"]})})():x(f),o&&(0,Le.jsxs)(qO,{open:o,hasCloseButton:!1,size:"s",onClose:m,onEnterKeyDown:y,children:[(0,Le.jsx)(qO.Header,{caption:"Save query"}),(0,Le.jsxs)(qO.Body,{className:nU("dialog-body"),children:[i&&(0,Le.jsx)("div",{className:nU("dialog-row"),children:"The query will be saved in your browser"}),(0,Le.jsxs)("div",{className:nU("dialog-row"),children:[(0,Le.jsx)("label",{htmlFor:"queryName",className:nU("field-title","required"),children:"Query name"}),(0,Le.jsxs)("div",{className:nU("control-wrapper"),children:[(0,Le.jsx)(Ii,{id:"queryName",placeholder:"Enter query name",value:l,onUpdate:g,hasClear:!0,autoFocus:!0}),(0,Le.jsx)("span",{className:nU("error"),children:u})]})]})]}),(0,Le.jsx)(qO.Footer,{textButtonApply:"Save",textButtonCancel:"Cancel",onClickButtonCancel:m,onClickButtonApply:y,propsButtonApply:{disabled:!l||Boolean(u)}})]})]})},iU=Me("ydb-query-editor-controls"),oU={[BI.wZ.script]:{title:BI.U4[BI.wZ.script],description:sF("method-description.script")},[BI.wZ.scan]:{title:BI.U4[BI.wZ.scan],description:sF("method-description.scan")},[BI.wZ.data]:{title:BI.U4[BI.wZ.data],description:sF("method-description.data")},[BI.wZ.query]:{title:BI.U4[BI.wZ.query],description:sF("method-description.query")},[BI.wZ.pg]:{title:BI.U4[BI.wZ.pg],description:sF("method-description.pg")}},aU=e=>{let{onRunButtonClick:t,runIsLoading:n,onExplainButtonClick:r,explainIsLoading:i,onSaveQueryClick:o,savedQueries:s,disabled:l,onUpdateQueryMode:c,queryMode:u,highlightedAction:d}=e;const h=a.useMemo((()=>Object.entries(oU).map((e=>{let[t,{title:n,description:r}]=e;return{text:(0,Le.jsx)(Po,{className:iU("item-with-popover"),contentClassName:iU("popover"),text:n,popoverContent:r}),action:()=>{c(t)}}}))),[c]),p="execute"===d?"action":void 0,f="explain"===d?"action":void 0;return(0,Le.jsxs)("div",{className:iU(),children:[(0,Le.jsxs)("div",{className:iU("left"),children:[(0,Le.jsxs)(Ie.z,{onClick:()=>{t(u)},disabled:l,loading:n,view:p,children:[(0,Le.jsx)(we.J,{data:$B,size:14}),"Run"]}),(0,Le.jsx)(Ie.z,{onClick:()=>{r(u)},disabled:l,loading:i,view:f,children:"Explain"}),(0,Le.jsx)("div",{className:iU("mode-selector"),children:(0,Le.jsx)(nC,{items:h,popupProps:{className:iU("mode-selector__popup"),qa:"query-mode-selector-popup"},switcher:(0,Le.jsx)(Ie.z,{className:iU("mode-selector__button"),qa:"query-mode-selector",children:(0,Le.jsxs)("span",{className:iU("mode-selector__button-content"),children:["".concat(sF("controls.query-mode-selector_type")," ").concat(oU[u].title),(0,Le.jsx)(we.J,{data:xe})]})})})})]}),(0,Le.jsx)(rU,{savedQueries:s,onSaveQuery:o,saveButtonDisabled:l})]})},sU={automaticLayout:!0,selectOnLineNumbers:!0,minimap:{enabled:!1}};const lU="navigation",cU={EXECUTE:"execute",EXPLAIN:"explain"},uU={sendQuery:"sendQuery",sendSelectedQuery:"sendSelectedQuery"},dU=Me("query-editor"),hU={triggerExpand:!1,triggerCollapse:!1,collapsed:!0};const pU={saveQueryToHistory:TA.hO,goToPreviousQuery:TA.NU,goToNextQuery:TA.AJ,setShowPreview:Vk.m7,setTenantPath:TA.K0},fU=(0,ae.$j)((e=>({executeQuery:e.executeQuery,showPreview:e.schema.showPreview})),pU)((function(e){const t=function(){const[e]=Mo(Lo.y6),[t]=Mo(Lo.XX);return a.useMemo((()=>{const n=Boolean(e);return{quickSuggestions:n,suggestOnTriggerCharacters:n,acceptSuggestionOnEnter:t?"on":"off",...sU}}),[e,t])}(),{path:n,setTenantPath:r,executeQuery:i,type:o,theme:s,changeUserInput:l,showPreview:c}=e,{tenantPath:u}=i,[d,h]=a.useState(cU.EXECUTE),[p,f]=a.useState(!1),[m,g]=Fo(),[v]=Mo(Lo.Rq),[y,b]=Mo(Lo.w7),[x,w]=Mo(Lo.DG),[S,_]=a.useState(null),[C,E]=TA.mg.useExecuteQueryMutation(),[T,O]=bF.useExplainQueryMutation();a.useEffect((()=>{u!==n&&(u&&l({input:""}),r(n))}),[l,r,n,u]);const[N,k]=a.useReducer(EF(Lo.eG),hU),j=a.useRef();a.useEffect((()=>{const e=()=>{j.current&&j.current.layout()},t=kt()((()=>{e()}),100);return e(),window.addEventListener("resize",t),()=>{window.removeEventListener("resize",t)}}),[]),a.useEffect((()=>{const e=e=>{if(e.key===Lo.DG){const t=(0,Ou.Mo)(e.newValue);w(t)}};return window.addEventListener("storage",e),()=>{window.removeEventListener("storage",e)}}),[w]),a.useEffect((()=>{k(SF.triggerCollapse)}),[]),a.useEffect((()=>{e.showPreview||p?k(SF.triggerExpand):k(SF.triggerCollapse)}),[e.showPreview,p]),a.useEffect((()=>{var e;const{input:t,history:n}=i,r=!!t&&t!==(null===(e=n.queries[n.queries.length-1])||void 0===e?void 0:e.queryText);return window.onbeforeunload=r?e=>{e.preventDefault(),e.returnValue=""}:null,()=>{window.onbeforeunload=null}}),[i]);const I=(t,r)=>{if(!t)return;const{input:o,history:a}=i,s=v?"multi":"modern",l=null!==r&&void 0!==r?r:o;if(b(BI.Jf.execute),h(cU.EXECUTE),C({query:l,database:n,mode:t,schema:s}),f(!0),e.setShowPreview(!1),!r){var c;const{queries:n,currentIndex:r}=a;l!==(null===(c=n[r])||void 0===c?void 0:c.queryText)&&e.saveQueryToHistory(o,t)}k(SF.triggerExpand)},P=t=>{const{input:r}=i;b(BI.Jf.explain),h(cU.EXPLAIN),T({query:r,database:n,mode:t}),f(!0),e.setShowPreview(!1),k(SF.triggerExpand)};a.useEffect((()=>{if(null!==S)switch(_(null),S){case uU.sendQuery:y===BI.Jf.explain?P(m):I(m);break;case uU.sendSelectedQuery:{var e,t;const n=null===(e=j.current)||void 0===e?void 0:e.getSelection(),r=null===(t=j.current)||void 0===t?void 0:t.getModel();if(n&&r){const e=r.getValueInRange({startLineNumber:n.getSelectionStart().lineNumber,startColumn:n.getSelectionStart().column,endLineNumber:n.getPosition().lineNumber,endColumn:n.getPosition().column});I(m,e)}break}}}),[S]);const D=e=>{const{input:t}=i,n=x.findIndex((t=>t.name.toLowerCase()===e.toLowerCase())),r=[...x],o={name:e,body:t};-1===n?r.push(o):r[n]=o,w(r)};return(0,Le.jsx)("div",{className:dU(),children:(0,Le.jsxs)(Hk,{direction:"vertical",defaultSizePaneKey:Lo.XN,triggerCollapse:N.triggerCollapse,triggerExpand:N.triggerExpand,minSize:[0,52],collapsedSizes:[100,0],onSplitStartDragAdditional:()=>{k(SF.clear)},children:[(0,Le.jsxs)("div",{className:dU("pane-wrapper",{top:!0}),children:[(0,Le.jsx)("div",{className:dU("monaco-wrapper"),children:(0,Le.jsx)("div",{className:dU("monaco"),children:(0,Le.jsx)(hF,{language:xF.Oo,value:i.input,options:t,onChange:t=>{e.changeUserInput({input:t})},editorDidMount:(t,n)=>{j.current=t,t.focus(),t.addAction({id:"sendQuery",label:sF("action.send-query"),keybindings:[n.KeyMod.CtrlCmd|n.KeyCode.Enter],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:lU,contextMenuOrder:1,run:()=>_(uU.sendQuery)});const r=t.createContextKey("canSendSelectedText",!1);t.onDidChangeCursorSelection((e=>{let{selection:t,secondarySelections:n}=e;const i=t.selectionStartLineNumber!==t.positionLineNumber||t.selectionStartColumn!==t.positionColumn,o=n.length>0;r.set(i&&!o)})),t.addAction({id:"sendSelectedQuery",label:sF("action.send-selected-query"),keybindings:[n.KeyMod.CtrlCmd|n.KeyMod.Shift|n.KeyCode.Enter],precondition:"canSendSelectedText",contextMenuGroupId:lU,contextMenuOrder:1,run:()=>_(uU.sendSelectedQuery)}),t.addAction({id:"previous-query",label:sF("action.previous-query"),keybindings:[n.KeyMod.CtrlCmd|n.KeyCode.UpArrow],contextMenuGroupId:lU,contextMenuOrder:2,run:()=>{e.goToPreviousQuery()}}),t.addAction({id:"next-query",label:sF("action.next-query"),keybindings:[n.KeyMod.CtrlCmd|n.KeyCode.DownArrow],contextMenuGroupId:lU,contextMenuOrder:3,run:()=>{e.goToNextQuery()}})},theme:"vs-".concat(s)})})}),(0,Le.jsx)(aU,{onRunButtonClick:I,runIsLoading:E.isLoading,onExplainButtonClick:P,explainIsLoading:O.isLoading,onSaveQueryClick:D,savedQueries:x,disabled:!i.input,onUpdateQueryMode:g,queryMode:m,highlightedAction:y})]}),(0,Le.jsx)("div",{className:dU("pane-wrapper"),children:(0,Le.jsx)(mU,{executeQueryData:E.data,executeQueryError:E.error,explainQueryData:O.data,explainQueryError:O.error,explainQueryLoading:O.isLoading,resultVisibilityState:N,onExpandResultHandler:()=>{k(SF.triggerExpand)},onCollapseResultHandler:()=>{k(SF.triggerCollapse)},type:o,theme:s,resultType:d,path:n,showPreview:c})})]})})}));function mU(e){let{executeQueryData:t,executeQueryError:n,explainQueryData:r,explainQueryError:i,explainQueryLoading:o,resultVisibilityState:a,onExpandResultHandler:s,onCollapseResultHandler:l,type:c,theme:u,resultType:d,path:h,showPreview:p}=e;if(p)return(0,Le.jsx)(XB,{database:h,type:c});if(d===cU.EXECUTE){if(t||n){const{stats:e,...r}=t||{};return(0,Le.jsx)(Sz,{data:r,stats:e,error:n,isResultsCollapsed:a.collapsed,onExpandResults:s,onCollapseResults:l})}return null}if(d===cU.EXPLAIN){const{plan:e,ast:t}=r||{};return(0,Le.jsx)(YB,{error:i,explain:e,ast:t,loading:o,theme:u,isResultsCollapsed:a.collapsed,onExpandResults:s,onCollapseResults:l})}return null}const gU=[{id:us._0.newQuery,title:sF("tabs.newQuery")},{id:us._0.history,title:sF("tabs.history")},{id:us._0.saved,title:sF("tabs.saved")}],vU=e=>{let{className:t,activeTab:n}=e;const r=Ca(),i=(0,Ta.mB)(r);return(0,Le.jsx)("div",{className:t,children:(0,Le.jsx)(wt,{size:"l",allowNotSelected:!0,activeTab:n,items:gU,wrapTo:(e,t)=>{let{id:n}=e;const r=fs({...i,[ds.queryTab]:n});return(0,Le.jsx)(_l,{to:r,children:t},n)}})})},yU=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M11.423 1A3.577 3.577 0 0 1 15 4.577c0 .27-.108.53-.3.722l-.528.529-1.971 1.971-5.059 5.059a3 3 0 0 1-1.533.82l-2.638.528a1 1 0 0 1-1.177-1.177l.528-2.638a3 3 0 0 1 .82-1.533l5.059-5.059 2.5-2.5c.191-.191.451-.299.722-.299Zm-2.31 4.009-4.91 4.91a1.5 1.5 0 0 0-.41.766l-.38 1.903 1.902-.38a1.5 1.5 0 0 0 .767-.41l4.91-4.91a2.077 2.077 0 0 0-1.88-1.88Zm3.098.658a3.59 3.59 0 0 0-1.878-1.879l1.28-1.28c.995.09 1.788.884 1.878 1.88l-1.28 1.28Z",clipRule:"evenodd"})),bU=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M9 2H7a.5.5 0 0 0-.5.5V3h3v-.5A.5.5 0 0 0 9 2Zm2 1v-.5a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2V3H2.251a.75.75 0 0 0 0 1.5h.312l.317 7.625A3 3 0 0 0 5.878 15h4.245a3 3 0 0 0 2.997-2.875l.318-7.625h.312a.75.75 0 0 0 0-1.5H11Zm.936 1.5H4.064l.315 7.562A1.5 1.5 0 0 0 5.878 13.5h4.245a1.5 1.5 0 0 0 1.498-1.438l.315-7.562Zm-6.186 2v5a.75.75 0 0 0 1.5 0v-5a.75.75 0 0 0-1.5 0Zm3.75-.75a.75.75 0 0 1 .75.75v5a.75.75 0 0 1-1.5 0v-5a.75.75 0 0 1 .75-.75Z",clipRule:"evenodd"})),xU=Me("ydb-saved-queries"),wU=e=>{let{visible:t,queryName:n,onCancelClick:r,onConfirmClick:i}=e;return(0,Le.jsxs)(qO,{open:t,hasCloseButton:!1,size:"s",onClose:r,onEnterKeyDown:i,children:[(0,Le.jsx)(qO.Header,{caption:sF("delete-dialog.header")}),(0,Le.jsxs)(qO.Body,{className:xU("dialog-body"),children:[sF("delete-dialog.question"),(0,Le.jsx)("span",{className:xU("dialog-query-name"),children:" ".concat(n,"?")})]}),(0,Le.jsx)(qO.Footer,{textButtonApply:sF("delete-dialog.delete"),textButtonCancel:sF("delete-dialog.cancel"),onClickButtonCancel:r,onClickButtonApply:i})]})},SU=e=>{let{savedQueries:t,changeUserInput:n,onDeleteQuery:r}=e;const i=Ao(),[o,s]=a.useState(!1),[l,c]=a.useState(""),u=()=>{s(!1),c("")},d=[{name:"name",header:"Name",render:e=>{let{row:t}=e;return(0,Le.jsx)("div",{className:xU("query-name"),children:t.name})},width:200},{name:"body",header:"Query Text",render:e=>{let{row:t}=e;return(0,Le.jsxs)("div",{className:xU("query"),children:[(0,Le.jsx)("div",{className:xU("query-body"),children:(0,Le.jsx)(kA,{value:t.body,maxQueryHeight:DA})}),(0,Le.jsxs)("span",{className:xU("controls"),children:[(0,Le.jsx)(Ie.z,{view:"flat-secondary",children:(0,Le.jsx)(we.J,{data:yU})}),(0,Le.jsx)(Ie.z,{view:"flat-secondary",onClick:(n=t.name,e=>{e.stopPropagation(),s(!0),c(n)}),children:(0,Le.jsx)(we.J,{data:bU})})]})]});var n},sortable:!1,resizeMinWidth:650}];return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("div",{className:xU(),children:(0,Le.jsx)(qc,{columnsWidthLSKey:"savedQueriesTableColumnsWidth",columns:d,data:t,settings:AA,emptyDataMessage:sF("saved.empty"),rowClassName:()=>xU("row"),onRowClick:e=>{return t=e.body,r=e.name,n({input:t}),i((0,tU.GC)(r)),void i((0,Gk.jk)(us._0.newQuery));var t,r},initialSortOrder:{columnId:"name",order:Hc.ZP.ASCENDING}})}),(0,Le.jsx)(wU,{visible:o,queryName:l,onCancelClick:()=>{u()},onConfirmClick:()=>{u(),r(l),c("")}})]})},_U=Me("ydb-query"),CU=e=>{const t=Ao(),{queryTab:n=us._0.newQuery}=Do((e=>e.tenant)),[r,i]=Mo(Lo.DG,[]),o=e=>{const t=r.filter((t=>t.name.toLowerCase()!==e.toLowerCase()));i(t)},s=e=>{t((0,TA.B8)(e))},l=a.useMemo((()=>gU.find((e=>{let{id:t}=e;return t===n}))),[n]);return(0,Le.jsxs)("div",{className:_U(),children:[l?(0,Le.jsx)(oe,{children:(0,Le.jsx)("title",{children:l.title})}):null,(0,Le.jsx)(vU,{className:_U("tabs"),activeTab:n}),(0,Le.jsx)("div",{className:_U("content"),children:(()=>{switch(n){case us._0.newQuery:return(0,Le.jsx)(fU,{changeUserInput:s,...e});case us._0.history:return(0,Le.jsx)(uF,{changeUserInput:s});case us._0.saved:return(0,Le.jsx)(SU,{changeUserInput:s,savedQueries:r,onDeleteQuery:o});default:return null}})()})]})},EU=Me("object-general");const TU=function(e){const t=(0,Ue.C)(),{tenantPage:n}=Do((e=>e.tenant)),r=()=>{const{type:r,additionalTenantProps:i,additionalNodesProps:o,tenantName:a}=e;return n===us.m2.query?(0,Le.jsx)(CU,{path:a,theme:t,type:r}):(0,Le.jsx)(oF,{type:r,additionalTenantProps:i,additionalNodesProps:o})};return(()=>{const{tenantName:t}=e;return t?(0,Le.jsx)("div",{className:EU(),children:r()}):null})()},OU=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M13.5 6H8.75v2.5h4.75V6ZM7.25 6H2.5v2.5h4.75V6ZM1 6V5a3 3 0 0 1 3-3h8a3 3 0 0 1 3 3v6a3 3 0 0 1-3 3H4a3 3 0 0 1-3-3V6Zm7.75 4h4.75v1a1.5 1.5 0 0 1-1.5 1.5H8.75V10ZM2.5 10h4.75v2.5H4A1.5 1.5 0 0 1 2.5 11v-1Z",clipRule:"evenodd"})),NU=e=>{var t,n,r,i,o;let{data:s}=e;if(!s)return(0,Le.jsx)("div",{className:"error",children:"No CDC Stream data"});const l=null===(t=s.PathDescription)||void 0===t?void 0:t.CdcStreamDescription,c=[];c.push(EI("PathType",null===(n=s.PathDescription)||void 0===n||null===(r=n.Self)||void 0===r?void 0:r.PathType)),c.push(EI("CreateStep",null===(i=s.PathDescription)||void 0===i||null===(o=i.Self)||void 0===o?void 0:o.CreateStep));const{Mode:u,Format:d}=l||{};return c.push(...Ts(DI,{Mode:u,Format:d})),(0,Le.jsx)(a.Fragment,{children:c.length?(0,Le.jsx)(Ss,{info:c}):"Empty"})},kU=e=>{var t,n,r,i,o;let{data:s}=e;if(!s)return(0,Le.jsx)("div",{className:"error",children:"No PersQueueGroup data"});const l=null===(t=s.PathDescription)||void 0===t?void 0:t.PersQueueGroup,c=[];return c.push(EI("PathType",null===(n=s.PathDescription)||void 0===n||null===(r=n.Self)||void 0===r?void 0:r.PathType)),c.push(EI("CreateStep",null===(i=s.PathDescription)||void 0===i||null===(o=i.Self)||void 0===o?void 0:o.CreateStep)),c.push(jI("Partitions",(null===l||void 0===l?void 0:l.Partitions)||[])),c.push(jI("PQTabletConfig",(null===l||void 0===l?void 0:l.PQTabletConfig)||{PartitionConfig:{LifetimeSeconds:0}})),(0,Le.jsx)(a.Fragment,{children:c.length?(0,Le.jsx)(Ss,{info:c}):"Empty"})};var jU=n(71336);const IU=JSON.parse('{"page.title":"Database","acl.owner":"Owner","acl.empty":"No Acl data","summary.navigation":"Navigation","summary.showPreview":"Show preview","summary.copySchemaPath":"Copy schema path","actions.copied":"The path is copied to the clipboard","actions.notCopied":"Couldn\u2019t copy the path","actions.copyPath":"Copy path","actions.openPreview":"Open preview","actions.createTable":"Create table...","actions.createExternalTable":"Create external table...","actions.createTopic":"Create topic...","actions.createView":"Create view...","actions.dropTable":"Drop table...","actions.dropTopic":"Drop topic...","actions.dropView":"Drop view...","actions.alterTable":"Alter table...","actions.alterTopic":"Alter topic...","actions.selectQuery":"Select query...","actions.upsertQuery":"Upsert query..."}'),PU=(0,We.wZ)("ydb-tenant",{en:IU}),DU=Me("ydb-acl"),AU={...Lo.LE,dynamicRender:!1,stickyTop:36},RU=e=>{if(e&&e.endsWith("@staff")&&!e.startsWith("svc_")){return e.split("@")[0]}return e},MU=[{name:"AccessType",header:"Access Type",sortable:!1,render:e=>{let{row:t}=e;return t.AccessType}},{name:"AccessRights",header:"Access Rights",render:e=>{var t;let{row:n}=e;return null===(t=n.AccessRights)||void 0===t?void 0:t.map(((e,t)=>(0,Le.jsx)("div",{children:e},t)))},sortable:!1},{name:"Subject",sortable:!1,render:e=>{let{row:t}=e;return RU(t.Subject)},width:140},{name:"InheritanceType",header:"Inheritance Type",render:e=>{var t;let{row:n}=e;return null===(t=n.InheritanceType)||void 0===t?void 0:t.map(((e,t)=>(0,Le.jsx)("div",{children:e},t)))},sortable:!1}],LU=()=>{const e=Ao(),{currentSchemaPath:t}=Do((e=>e.schema)),{loading:n,error:r,acl:i,owner:o,wasLoaded:s}=Do((e=>e.schemaAcl));a.useEffect((()=>(t&&e((0,jU.Y)({path:t})),()=>{e((0,jU.Yg)())})),[t,e]);return n&&!s?(0,Le.jsx)(N_,{}):r?(0,Le.jsx)(zc,{error:r}):n||i||o?(0,Le.jsx)("div",{className:DU(),children:(0,Le.jsxs)("div",{className:DU("result"),children:[o?(0,Le.jsxs)("div",{className:DU("owner-container"),children:[(0,Le.jsx)("span",{className:DU("owner-label"),children:"".concat(PU("acl.owner"),": ")}),RU(o)]}):null,i&&i.length?(0,Le.jsx)(qc,{columnsWidthLSKey:"aclTableColumnsWidth",columns:MU,data:i,settings:AU}):null]})}):(0,Le.jsx)(a.Fragment,{children:PU("acl.empty")})},FU=JSON.parse('{"label_error":"Error","label_empty":"No data"}'),zU=JSON.parse('{"label_error":"\u041e\u0448\u0438\u0431\u043a\u0430","label_empty":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445"}'),BU=(0,mi.e)({en:FU,ru:zU},"ydb-navigation-tree"),UU=rC("ydb-navigation-tree-view-empty");function HU(e){let{level:t}=e;return(0,Le.jsx)(aC,{name:(0,Le.jsx)("span",{className:UU(),children:BU("label_empty")}),level:t})}const VU=rC("ydb-navigation-tree-view-error");function GU(e){let{level:t}=e;return(0,Le.jsx)(aC,{name:(0,Le.jsx)("span",{className:VU(),children:BU("label_error")}),level:t})}const WU=(0,le.Ge)("spin"),qU=a.forwardRef((function(e,t){const{size:n="m",style:r,className:i,qa:o}=e;return a.createElement("div",{ref:t,style:r,className:WU({size:n},i),"data-qa":o},a.createElement("div",{className:WU("inner")}))})),ZU=rC("ydb-navigation-tree-view-loader");function YU(e){let{level:t}=e;return(0,Le.jsx)(aC,{name:(0,Le.jsx)("div",{className:ZU(),children:(0,Le.jsx)(qU,{size:"xs"})}),level:t})}function KU(e){return(0,Le.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},e,{children:(0,Le.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.22 15.03s-.001 0 0 0a.75.75 0 0 0 1.06-1.06l-.47-.47H10a3.016 3.016 0 0 0 1.507-.405A2.999 2.999 0 0 0 13 10.5V7.896h.003a2.735 2.735 0 0 0 .785-.366 2.75 2.75 0 1 0-2.288.366V10.5A1.5 1.5 0 0 1 10 12h-.19l.47-.47s0 .001 0 0a.75.75 0 0 0-1.06-1.06l-.47.47-1.28 1.28a.75.75 0 0 0 0 1.06l1.75 1.75ZM5.72 2.97a.75.75 0 0 1 1.06 0l.47.47 1.28 1.28a.748.748 0 0 1 0 1.06L6.78 7.53c.001 0 0 0 0 0a.751.751 0 0 1-1.06-1.06L6.19 6H6a1.5 1.5 0 0 0-1.5 1.5v2.604a2.757 2.757 0 0 1 2 2.646 2.738 2.738 0 0 1-1.212 2.28 2.737 2.737 0 0 1-1.538.47A2.747 2.747 0 0 1 1 12.75a2.751 2.751 0 0 1 2-2.646V7.5a2.999 2.999 0 0 1 3-3h.19l-.47-.47a.75.75 0 0 1 0-1.06Zm-.908 9.121A1.246 1.246 0 0 1 5 12.75a1.25 1.25 0 1 1-.188-.659ZM11 5.25a1.25 1.25 0 1 1 2.5 0 1.25 1.25 0 0 1-2.5 0Z"})}))}function QU(e){return(0,Le.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},e,{children:(0,Le.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.01033 3.79551C2.11275 2.787 2.96447 2 4 2H5.5H7H9H10.5H12C13.1046 2 14 2.89543 14 4V5.5V12C14 13.1046 13.1046 14 12 14H10.5H9H7H5.5H4C2.89543 14 2 13.1046 2 12V5.5V4C2 3.93096 2.0035 3.86275 2.01033 3.79551ZM10.5 12.5H11.5C12.0523 12.5 12.5 12.0523 12.5 11.5V5.5H10.5L10.5 12.5ZM9 5.5L9 12.5H7L7 5.5H9ZM3.5 5.5H5.5L5.5 12.5H4.5C3.94772 12.5 3.5 12.0523 3.5 11.5V5.5Z"})}))}function XU(e){return(0,Le.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512",fill:"currentColor"},e,{children:(0,Le.jsx)("path",{d:"M448 80V128C448 172.2 347.7 208 224 208C100.3 208 0 172.2 0 128V80C0 35.82 100.3 0 224 0C347.7 0 448 35.82 448 80zM393.2 214.7C413.1 207.3 433.1 197.8 448 186.1V288C448 332.2 347.7 368 224 368C100.3 368 0 332.2 0 288V186.1C14.93 197.8 34.02 207.3 54.85 214.7C99.66 230.7 159.5 240 224 240C288.5 240 348.3 230.7 393.2 214.7V214.7zM54.85 374.7C99.66 390.7 159.5 400 224 400C288.5 400 348.3 390.7 393.2 374.7C413.1 367.3 433.1 357.8 448 346.1V432C448 476.2 347.7 512 224 512C100.3 512 0 476.2 0 432V346.1C14.93 357.8 34.02 367.3 54.85 374.7z"})}))}function $U(e){return(0,Le.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},e,{children:(0,Le.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 6.75C0 6.35156 0.338542 6 0.722222 6L3.61111 6V3L0.722222 3C0.338542 3 0 2.67188 0 2.25C0 1.85156 0.338542 1.5 0.722222 1.5L3.61111 1.5V0.750001C3.61111 0.351563 3.94965 0 4.33333 0C4.73958 0 5.05556 0.351563 5.05556 0.750001H5.77778C7.53819 0.750001 8.98264 2.03906 9.32118 3.75H12V5.25H9.32118C9.29095 5.4049 9.25189 5.55606 9.20457 5.70291C9.10459 5.73587 9.00778 5.77066 8.9144 5.80723C8.505 5.96755 8.12646 6.17556 7.83841 6.44187C7.5498 6.70871 7.3 7.08678 7.3 7.56255V7.90902C6.83862 8.12843 6.32337 8.25 5.77778 8.25H5.05556C5.05556 8.67188 4.73958 9 4.33333 9C3.94965 9 3.61111 8.67188 3.61111 8.25V7.5L0.722222 7.5C0.338542 7.5 0 7.17188 0 6.75ZM16 8.5V7.5625C16 6.70312 14.1964 6 12 6C9.78571 6 8 6.70312 8 7.5625V8.5C8 9.37891 9.78571 10.0625 12 10.0625C14.1964 10.0625 16 9.37891 16 8.5ZM16 9.65234C15.7321 9.86719 15.375 10.0625 15.0179 10.1992C14.2143 10.5117 13.1429 10.6875 12 10.6875C10.8393 10.6875 9.76786 10.5117 8.96429 10.1992C8.60714 10.0625 8.25 9.86719 8 9.65234V11.625C8 12.5039 9.78571 13.1875 12 13.1875C14.1964 13.1875 16 12.5039 16 11.625V9.65234ZM12 13.8125C10.8393 13.8125 9.76786 13.6367 8.96429 13.3242C8.60714 13.1875 8.25 12.9922 8 12.7773V14.4375C8 15.3164 9.78571 16 12 16C14.1964 16 16 15.3164 16 14.4375V12.7773C15.7321 12.9922 15.375 13.1875 15.0179 13.3242C14.2143 13.6367 13.1429 13.8125 12 13.8125Z"})}))}function JU(e){return(0,Le.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},e,{children:(0,Le.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 6.75C0 6.35156 0.351562 6 0.75 6L3.75 6V3L0.75 3C0.351562 3 0 2.67188 0 2.25C0 1.85156 0.351562 1.5 0.75 1.5L3.75 1.5V0.750001C3.75 0.351563 4.10156 0 4.5 0C4.92188 0 5.25 0.351563 5.25 0.750001H6C7.82812 0.750001 9.32812 2.03906 9.67969 3.75H12V5.25H9.67969C9.60376 5.62455 9.47428 5.97724 9.2995 6.30005H7.19969C6.09701 6.30005 5.26846 7.20143 5.25 8.25C5.25 8.67188 4.92188 9 4.5 9C4.10156 9 3.75 8.67188 3.75 8.25V7.5L0.75 7.5C0.351562 7.5 0 7.17188 0 6.75ZM16 8.28571C16 7.58259 15.4336 7 14.75 7H7.25C6.54688 7 6 7.58259 6 8.28571V14.7143C6 15.4375 6.54688 16 7.25 16H14.75C15.4336 16 16 15.4375 16 14.7143V8.28571ZM10.375 9.57143V11.5H7.25V9.57143H10.375ZM7.25 14.7143V12.7857H10.375V14.7143H7.25ZM14.75 14.7143H11.625V12.7857H14.75V14.7143ZM14.75 9.57143V11.5H11.625V9.57143H14.75Z"})}))}function eH(e){return(0,Le.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},e,{children:(0,Le.jsx)("path",{d:"M13.2812 4.875H8.40625L6.78125 3.25H2.71875C2.0332 3.25 1.5 3.80859 1.5 4.46875V11.7812C1.5 12.4668 2.0332 13 2.71875 13H13.2812C13.9414 13 14.5 12.4668 14.5 11.7812V6.09375C14.5 5.43359 13.9414 4.875 13.2812 4.875Z"})}))}function tH(e){return(0,Le.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},e,{children:(0,Le.jsx)("path",{d:"M15.2109 9.06445C15.4648 8.6582 15.1602 8.125 14.6777 8.125H4.54688C4.01367 8.125 3.37891 8.50586 3.125 8.9375L1.29688 12.0859C1.04297 12.4922 1.34766 13 1.83008 13H11.9609C12.4941 13 13.1289 12.6445 13.3828 12.2129L15.2109 9.06445ZM4.54688 7.3125H12.875V6.09375C12.875 5.43359 12.3164 4.875 11.6562 4.875H7.59375L5.96875 3.25H1.90625C1.2207 3.25 0.6875 3.80859 0.6875 4.46875V11.5527L2.43945 8.53125C2.87109 7.79492 3.6582 7.3125 4.54688 7.3125Z"})}))}function nH(e){return(0,Le.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},e,{children:(0,Le.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.24935 2.94323L8.5 9.5H12.1L11.1446 14.2772C11.0322 14.839 11.7994 15.1177 12.0738 14.6147L15.9111 7.57956C16.1765 7.09311 15.8244 6.5 15.2703 6.5H12.9L13.5325 3.33728C13.6192 2.90413 13.2879 2.5 12.8461 2.5H9.74611C9.49194 2.5 9.27821 2.69069 9.24935 2.94323ZM7.40003 10.5L8.25717 3H1.625C0.710938 3 0 3.73633 0 4.625V12.75C0 13.6641 0.710938 14.375 1.625 14.375H10.1517C10.1538 14.2803 10.1646 14.1822 10.1848 14.0811L10.901 10.5H7.40003ZM5.6875 8.6875V6.25H1.625V8.6875H5.6875ZM1.625 10.3125V12.75H5.6875V10.3125H1.625Z"})}))}function rH(e){return(0,Le.jsx)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},e,{children:(0,Le.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.01033 3.79551C2.11275 2.787 2.96447 2 4 2H7.3H8.8H12C13.1046 2 14 2.89543 14 4V5.5V8.2002V9.7002V12C14 13.1046 13.1046 14 12 14H8.8H7.3H4C2.89543 14 2 13.1046 2 12V9.7002V8.2002V5.5V4C2 3.93096 2.0035 3.86275 2.01033 3.79551ZM8.8 12.5H11.5C12.0523 12.5 12.5 12.0523 12.5 11.5V9.7002H8.8V12.5ZM7.3 9.7002V12.5H4.5C3.94772 12.5 3.5 12.0523 3.5 11.5V9.7002H7.3ZM8.8 8.2002H12.5V5.5H8.8L8.8 8.2002ZM7.3 5.5L7.3 8.2002H3.5V5.5H7.3Z"})}))}function iH(e){return(0,Le.jsxs)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},e,{children:[(0,Le.jsx)("rect",{x:"2",y:"2.20001",width:"9",height:"2.5",rx:"0.5"}),(0,Le.jsx)("rect",{x:"5",y:"6.70001",width:"9",height:"2.5",rx:"0.5"}),(0,Le.jsx)("rect",{x:"2",y:"11.2",width:"9",height:"2.5",rx:"0.5"})]}))}function oH(e){return(0,Le.jsxs)("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",fill:"currentColor"},e,{children:[(0,Le.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M1.625 2H7.49951C6.47457 2.77006 5.7552 3.92488 5.55588 5.25H1.625V7.6875H5.79193C6.48417 9.6186 8.33076 11 10.5 11C10.877 11 11.2443 10.9583 11.5974 10.8792L12.7748 12.5799C12.4905 13.0601 11.9665 13.375 11.375 13.375H1.625C0.710938 13.375 0 12.6641 0 11.75V3.625C0 2.73633 0.710938 2 1.625 2ZM1.625 11.75V9.3125H5.6875V11.75H1.625Z"}),(0,Le.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.4411 8.71106C14.0985 7.9983 14.5 7.04604 14.5 6C14.5 3.79086 12.7091 2 10.5 2C8.29086 2 6.5 3.79086 6.5 6C6.5 8.20914 8.29086 10 10.5 10C11.0316 10 11.5389 9.89631 12.0029 9.70806L14.2807 12.9981C14.5557 13.3955 15.1008 13.4946 15.4981 13.2195C15.8955 12.9444 15.9946 12.3993 15.7195 12.002L13.4411 8.71106ZM12.5 6C12.5 7.10457 11.6046 8 10.5 8C9.39543 8 8.5 7.10457 8.5 6C8.5 4.89543 9.39543 4 10.5 4C11.6046 4 12.5 4.89543 12.5 6Z"})]}))}function aH(e){return"status"in e}function sH(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;const i=e[t];if(i&&(n(i,r,t,e),!i.collapsed))for(const o of i.children)sH(e,"".concat(t,"/").concat(o),n,r+1)}var lH;function cH(e){return Object.assign(Object.assign(Object.assign({},{collapsed:!0,loading:!1,loaded:!1,error:!1,children:[]}),{expandable:"database"===e.type||"directory"===e.type}),e)}function uH(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;var n,r;switch(t.type){case lH.ToggleCollapsed:return Object.assign(Object.assign({},e),{[t.payload.path]:Object.assign(Object.assign({},e[t.payload.path]),{collapsed:!e[t.payload.path].collapsed})});case lH.StartLoading:return Object.assign(Object.assign({},e),{[t.payload.path]:Object.assign(Object.assign({},e[t.payload.path]),{loading:!0,loaded:!1,error:!1,children:[]})});case lH.FinishLoading:{const i=Object.assign(Object.assign({},e),{[t.payload.path]:Object.assign(Object.assign({},e[t.payload.path]),{loading:!1,loaded:Boolean(t.payload.data),error:!1})});if(t.payload.data){i[t.payload.path].children=t.payload.data.map((e=>{let{name:t}=e;return t}));for(const o of t.payload.data){const a="".concat(t.payload.path,"/").concat(o.name),{activePath:s=""}=t.payload,l=null!==(r=null===(n=e[a])||void 0===n?void 0:n.collapsed)&&void 0!==r?r:!s.startsWith("".concat(a,"/"));i[a]=cH(Object.assign(Object.assign({},o),{collapsed:l,path:a}))}}return i}case lH.ErrorLoading:return Object.assign(Object.assign({},e),{[t.payload.path]:Object.assign(Object.assign({},e[t.payload.path]),{loading:!1,loaded:!1,error:!0})});case lH.ResetNode:return Object.assign(Object.assign({},e),{[t.payload.path]:Object.assign(Object.assign({},e[t.payload.path]),{collapsed:!0,loading:!1,loaded:!1,error:!1,children:[]})});default:return e}}function dH(e,t){const n=[];return sH(e,t,((e,t)=>{n.push(Object.assign(Object.assign({},e),{level:t}));const r=function(e,t){if(!e.collapsed)return e.loading?{path:e.path,status:"loading",level:t+1}:e.error?{path:e.path,status:"error",level:t+1}:e.loaded&&0===e.children.length?{path:e.path,status:"empty",level:t+1}:void 0}(e,t);r&&n.push(r)})),n}function hH(e,t){switch(e){case"async_replication":return(0,Le.jsx)(KU,{height:16});case"database":return(0,Le.jsx)(XU,{height:14});case"directory":return t?(0,Le.jsx)(eH,{height:16}):(0,Le.jsx)(tH,{height:16});case"index":return(0,Le.jsx)(nH,{height:16});case"table":case"index_table":return(0,Le.jsx)(rH,{height:16});case"column_table":return(0,Le.jsx)(QU,{height:16});case"stream":case"topic":return(0,Le.jsx)(iH,{height:16});case"external_table":return(0,Le.jsx)(JU,{height:16});case"external_data_source":return(0,Le.jsx)($U,{height:16});case"view":return(0,Le.jsx)(oH,{height:16});default:return null}}function pH(e){let{path:t,fetchPath:n,activePath:r,state:i,level:o,dispatch:s,children:l,onActivate:c,getActions:u,renderAdditionalNodeElements:d,cache:h}=e;const p=i[t];a.useEffect((()=>{p.collapsed?h||s({type:lH.ResetNode,payload:{path:t}}):p.loaded||p.loading||(s({type:lH.StartLoading,payload:{path:t}}),n(t).then((e=>{s({type:lH.FinishLoading,payload:{path:t,activePath:r,data:e}})})).catch((e=>{s({type:lH.ErrorLoading,payload:{path:t,error:e}})})))}),[p.collapsed]);const f=a.useCallback((()=>{c&&c(t)}),[t,c]),m=a.useCallback((()=>{s({type:lH.ToggleCollapsed,payload:{path:t}})}),[s,t]),g=a.useMemo((()=>null===d||void 0===d?void 0:d(p.path,p.type)),[d,p]),v=a.useMemo((()=>null===u||void 0===u?void 0:u(p.path,p.type)),[u,p]);return(0,Le.jsx)(aC,{name:p.name,icon:hH(p.type,p.collapsed),collapsed:p.collapsed,active:p.path===r,actions:v,additionalNodeElements:g,hasArrow:p.expandable,onClick:f,onArrowClick:m,level:o,children:l})}!function(e){e.ToggleCollapsed="toggle-collapsed",e.StartLoading="start-loading",e.FinishLoading="finish-loading",e.ErrorLoading="error-loading",e.ResetNode="reset-node"}(lH||(lH={}));const fH=e=>{const t="".concat(e.path,"|").concat(e.status);return"loading"===e.status?(0,Le.jsx)(YU,{level:e.level},t):"error"===e.status?(0,Le.jsx)(GU,{level:e.level},t):(0,Le.jsx)(HU,{level:e.level},t)};function mH(e){let{rootState:t,fetchPath:n,getActions:r,renderAdditionalNodeElements:i,activePath:o,onActivePathUpdate:s,cache:l=!0,virtualize:c=!1}=e;const[u,d]=a.useReducer(uH,{[t.path]:cH(t)}),h=a.useMemo((()=>dH(u,t.path)),[t.path,u]),p=e=>(0,Le.jsx)(pH,{state:u,path:e.path,activePath:o,fetchPath:n,dispatch:d,onActivate:s,getActions:r,renderAdditionalNodeElements:i,cache:l,level:e.level},e.path);return c?(0,Le.jsx)(ik(),{type:"uniform",length:h.length,useStaticSize:!0,itemRenderer:e=>{const t=h[e];return aH(t)?fH(t):p(t)}}):(0,Le.jsx)(a.Fragment,{children:h.map((e=>aH(e)?fH(e):p(e)))})}var gH=n(80977);const vH=e=>"-- docs: https://ydb.tech/en/docs/yql/reference/syntax/create_table\nCREATE TABLE `".concat(e,"/ydb_row_table` (\n category_id Uint64 NOT NULL,\n id Uint64,\n expire_at Datetime,\n updated_on Datetime,\n name Text,\n `binary-payload` Bytes,\n attributes JsonDocument,\n -- uncomment to add a secondary index\n -- INDEX idx_row_table_id GLOBAL SYNC ON ( id ) COVER ( name, attributes ), -- Secondary indexes docs https://ydb.tech/en/docs/yql/reference/syntax/create_table#secondary_index\n PRIMARY KEY (category_id, id)\n) \nWITH (\n AUTO_PARTITIONING_BY_SIZE = ENABLED,\n AUTO_PARTITIONING_PARTITION_SIZE_MB = 2048,\n AUTO_PARTITIONING_BY_LOAD = ENABLED,\n AUTO_PARTITIONING_MIN_PARTITIONS_COUNT = 4,\n AUTO_PARTITIONING_MAX_PARTITIONS_COUNT = 1024,\n -- uncomment to create a table with predefined partitions\n -- UNIFORM_PARTITIONS = 4, -- The number of partitions for uniform initial table partitioning.\n -- The primary key's first column must have type Uint64 or Uint32.\n -- A created table is immediately divided into the specified number of partitions\n -- uncomment to launch read only replicas in every AZ\n -- READ_REPLICAS_SETTINGS = 'PER_AZ:1', -- Enable read replicas for stale read, launch one replica in every availability zone\n -- uncomment to enable ttl\n -- TTL = Interval(\"PT1H\") ON expire_at, -- Enable background deletion of expired rows https://ydb.tech/en/docs/concepts/ttl\n KEY_BLOOM_FILTER = ENABLED -- With a Bloom filter, you can more efficiently determine\n -- if some keys are missing in a table when making multiple single queries by the primary key.\n)"),yH=e=>"ALTER TABLE `".concat(e,"`\n ADD COLUMN is_deleted Bool;"),bH=e=>"SELECT *\n FROM `".concat(e,"`\n LIMIT 10;"),xH=e=>"UPSERT INTO `".concat(e,"`\n ( `id`, `name` )\nVALUES ( );"),wH=e=>"DROP EXTERNAL TABLE `".concat(e,"`;"),SH=e=>{const t=e.split("/").slice(0,-1).join("/");return"CREATE EXTERNAL TABLE `".concat(t,'/my_external_table` (\n column1 Int,\n column2 Int\n) WITH (\n DATA_SOURCE="').concat(e,'",\n LOCATION="",\n FORMAT="json_as_string",\n `file_pattern`=""\n);')},_H=e=>"-- docs: https://ydb.tech/en/docs/yql/reference/syntax/create_topic\nCREATE TOPIC `".concat(e,"/my_topic` (\n CONSUMER consumer1,\n CONSUMER consumer2 WITH (read_from = Datetime('1970-01-01T00:00:00Z')) -- Sets up the message write time starting from which the consumer will receive data.\n -- Value type: Datetime OR Timestamp OR integer (unix-timestamp in the numeric format). \n -- Default value: now\n) WITH (\n min_active_partitions = 1, -- Minimum number of topic partitions.\n partition_count_limit = 0, -- Maximum number of active partitions in the topic. 0 is interpreted as unlimited.\n retention_period = Interval('PT18H'), -- Data retention period in the topic. Value type: Interval.\n retention_storage_mb = 0, -- Limit on the maximum disk space occupied by the topic data. \n -- When this value is exceeded, the older data is cleared, like under a retention policy. \n -- 0 is interpreted as unlimited.\n partition_write_speed_bytes_per_second = 1048576, -- Maximum allowed write speed per partition.\n partition_write_burst_bytes = 0 -- Write quota allocated for write bursts. \n -- When set to zero, the actual write_burst value is equalled to \n -- the quota value (this allows write bursts of up to one second).\n);"),CH=e=>"-- docs: https://ydb.tech/en/docs/yql/reference/syntax/alter_topic\nALTER TOPIC `".concat(e,"`\n ADD CONSUMER new_consumer WITH (read_from = Datetime('1970-01-01T00:00:00Z')), -- Sets up the message write time starting from which the consumer will receive data.\n -- Value type: Datetime OR Timestamp OR integer (unix-timestamp in the numeric format).\n -- Default value: now\n ALTER CONSUMER consumer1 SET (read_from = Datetime('1970-01-01T00:00:00Z')),\n DROP CONSUMER consumer2,\n SET (\n min_active_partitions = 1, -- Minimum number of topic partitions.\n partition_count_limit = 0, -- Maximum number of active partitions in the topic. 0 is interpreted as unlimited.\n retention_period = Interval('PT18H'), -- Data retention period in the topic. Value type: Interval.\n retention_storage_mb = 0, -- Limit on the maximum disk space occupied by the topic data. \n -- When this value is exceeded, the older data is cleared, like under a retention policy. \n -- 0 is interpreted as unlimited.\n partition_write_speed_bytes_per_second = 1048576, -- Maximum allowed write speed per partition.\n partition_write_burst_bytes = 0 -- Write quota allocated for write bursts. \n -- When set to zero, the actual write_burst value is equalled to\n -- the quota value (this allows write bursts of up to one second).\n );"),EH=e=>"DROP TOPIC `".concat(e,"`;"),TH=e=>"CREATE VIEW `".concat(e,"/my_view` WITH (security_invoker = TRUE) AS SELECT 1;"),OH=e=>"DROP VIEW `".concat(e,"`;"),NH=(e,t)=>(n,r)=>{const i=((e,t,n)=>{const{setActivePath:r,setQueryMode:i}=n,o=(n,o)=>()=>{o&&i(o),t((0,TA.B8)({input:n(e)})),t((0,Gk.Cs)(us.m2.query)),t((0,Gk.jk)(us._0.newQuery)),r(e)};return{createTable:o(vH,"script"),alterTable:o(yH,"script"),selectQuery:o(bH),upsertQuery:o(xH),createExternalTable:o(SH,"script"),dropExternalTable:o(wH,"script"),selectQueryFromExternalTable:o(bH,"query"),createTopic:o(_H,"script"),alterTopic:o(CH,"script"),dropTopic:o(EH,"script"),createView:o(TH,"script"),dropView:o(OH,"script"),copyPath:()=>{try{Az()(e),(0,gH.Z)({name:"Copied",title:PU("actions.copied"),type:"success"})}catch{(0,gH.Z)({name:"Not copied",title:PU("actions.notCopied"),type:"error"})}}}})(n,e,t),o={text:PU("actions.copyPath"),action:i.copyPath},a=[[o],[{text:PU("actions.createTable"),action:i.createTable},{text:PU("actions.createTopic"),action:i.createTopic},{text:PU("actions.createView"),action:i.createView}]],s=[[o],[{text:PU("actions.alterTable"),action:i.alterTable},{text:PU("actions.selectQuery"),action:i.selectQuery},{text:PU("actions.upsertQuery"),action:i.upsertQuery}]],l=[o];return{async_replication:l,database:a,directory:a,table:s,column_table:s,index_table:l,topic:[[o],[{text:PU("actions.alterTopic"),action:i.alterTopic},{text:PU("actions.dropTopic"),action:i.dropTopic}]],stream:l,index:l,external_table:[[o],[{text:PU("actions.selectQuery"),action:i.selectQueryFromExternalTable}],[{text:PU("actions.dropTable"),action:i.dropExternalTable}]],external_data_source:[[o],[{text:PU("actions.createExternalTable"),action:i.createExternalTable}]],view:[[o],[{text:PU("actions.selectQuery"),action:i.selectQuery}],[{text:PU("actions.dropView"),action:i.dropView}]]}[r]},kH=(e,t)=>(n,r)=>{const i=((e,t,n)=>{const{setActivePath:r}=n;return{openPreview:()=>{t((0,Vk.m7)(!0)),t((0,Gk.Cs)(us.m2.query)),t((0,Gk.jk)(us._0.newQuery)),r(e)}}})(n,e,t),o=(0,Le.jsx)(Ie.z,{view:"flat-secondary",onClick:i.openPreview,title:PU("actions.openPreview"),size:"s",children:(0,Le.jsx)(we.J,{data:OU})});return{async_replication:void 0,database:void 0,directory:void 0,table:o,column_table:o,index_table:void 0,topic:void 0,stream:void 0,index:void 0,external_table:o,external_data_source:void 0,view:o}[r]};function jH(e){const{rootPath:t,rootName:n,rootType:r,currentPath:i}=e,o=Ao(),[s,l]=Fo(),c=e=>{o((0,Vk.Ii)(e))};return a.useEffect((()=>{null!==i&&void 0!==i&&i.startsWith(t)||c(t)}),[]),(0,Le.jsx)(mH,{rootState:{path:t,name:n,type:(0,pj.lZ)(r),collapsed:!1},fetchPath:e=>window.api.getSchema({path:e},{concurrentId:"NavigationTree.getSchema|".concat(e)}).then((t=>{if(!t)throw new Error("no describe data about path ".concat(e));const{PathDescription:{Children:n=[]}={}}=t,r={[e]:t},i=n.map((t=>{const{Name:n="",PathType:i,PathSubType:o}=t;return r["".concat(e,"/").concat(n)]={PathDescription:{Self:t}},{name:n,type:(0,pj.lZ)(i,o),expandable:!(0,pj.Sb)(i,o)}}));return o((0,Vk.yM)(r)),i})),getActions:NH(o,{setActivePath:c,setQueryMode:l}),renderAdditionalNodeElements:kH(o,{setActivePath:c}),activePath:i,onActivePathUpdate:c,cache:!1,virtualize:!0})}const IH=Me("object-summary"),PH=()=>({triggerExpand:!1,triggerCollapse:!1,collapsed:Boolean(localStorage.getItem(Lo.Mn))});function DH(e){var t,n,r;let{type:i,subType:o,onCollapseSummary:s,onExpandSummary:l,isCollapsed:c}=e;const u=Ao(),[d,h]=a.useReducer(EF(Lo.Mn),void 0,PH),{data:p,currentSchemaPath:f,currentSchema:m={}}=Do((e=>e.schema)),{summaryTab:g=us.uw.overview}=Do((e=>e.tenant)),v=Ca(),y=ol().parse(v.search,{ignoreQueryPrefix:!0}),{name:b}=y,x=b?null===(t=p[b.toString()])||void 0===t||null===(n=t.PathDescription)||void 0===n?void 0:n.Self:void 0,w=f?p[f]:void 0,S=null===w||void 0===w||null===(r=w.PathDescription)||void 0===r?void 0:r.Self;a.useEffect((()=>{const e=(0,pj.vp)(i)&&!(0,pj.$J)(i);!i||e||hs.find((e=>e.id===g))||u((0,Gk.Tu)(us.uw.overview))}),[u,i,g]);const _=()=>{const e=(0,pj.vp)(i)&&!(0,pj.$J)(i)?[...hs,...ps]:hs;return(0,Le.jsx)("div",{className:IH("tabs"),children:(0,Le.jsx)(wt,{size:"l",items:e,activeTab:g,wrapTo:(e,t)=>{let{id:n}=e;const r=(0,Ta.ax)(Ta.ZP.tenant,void 0,{...y,name:b,[ds.summaryTab]:n});return(0,Le.jsx)(bl,{to:r,className:IH("tab"),children:t},n)},allowNotSelected:!0})})},C=()=>{switch(g){case us.uw.acl:return(0,Le.jsx)(LU,{});case us.uw.schema:return(0,Le.jsx)(bj,{type:i,path:f});default:return(()=>{var e;const t=Number(null===S||void 0===S?void 0:S.CreateStep),n=t?(0,ks.o0)(t):"unknown",r="Created At",i={[hj.gb.EPathTypeInvalid]:void 0,[hj.gb.EPathTypeDir]:void 0,[hj.gb.EPathTypeTable]:void 0,[hj.gb.EPathTypeSubDomain]:void 0,[hj.gb.EPathTypeTableIndex]:void 0,[hj.gb.EPathTypeExtSubDomain]:void 0,[hj.gb.EPathTypeColumnStore]:void 0,[hj.gb.EPathTypeColumnTable]:void 0,[hj.gb.EPathTypeCdcStream]:()=>(0,Le.jsx)(NU,{data:w}),[hj.gb.EPathTypePersQueueGroup]:()=>(0,Le.jsx)(kU,{data:w}),[hj.gb.EPathTypeExternalTable]:()=>(0,Le.jsx)(oP,{data:w}),[hj.gb.EPathTypeExternalDataSource]:()=>(0,Le.jsx)(JI,{data:w}),[hj.gb.EPathTypeView]:void 0,[hj.gb.EPathTypeReplication]:()=>{var e,t;return(0,Le.jsx)(Ss,{info:[{label:r,value:n},{label:"State",value:(0,Le.jsx)(aP,{state:null===w||void 0===w||null===(e=w.PathDescription)||void 0===e||null===(t=e.ReplicationDescription)||void 0===t?void 0:t.State})}]})}};let o=(null===S||void 0===S?void 0:S.PathType)&&(null===(e=i[S.PathType])||void 0===e?void 0:e.call(i));return o||(o=(0,Le.jsx)(Ss,{info:[{label:r,value:n}]})),o})()}},E=()=>{h(SF.triggerCollapse)},T=()=>{h(SF.triggerExpand)},O=()=>{h(SF.clear)},N=()=>{u((0,Vk.m7)(!0)),u((0,Gk.Cs)(us.m2.query)),u((0,Gk.jk)(us._0.newQuery))},k=()=>{const e=(0,pj.vp)(i)&&!(0,pj.dC)(o);return(0,Le.jsxs)(a.Fragment,{children:[e&&(0,Le.jsx)(Ie.z,{view:"flat-secondary",onClick:N,title:PU("summary.showPreview"),children:(0,Le.jsx)(we.J,{data:OU})}),f&&(0,Le.jsx)(pl,{text:f,view:"flat-secondary",title:PU("summary.copySchemaPath")}),(0,Le.jsx)(OF,{onCollapse:E,onExpand:T,isCollapsed:d.collapsed,initialDirection:"bottom"})]})},j=()=>{const{Status:e,Reason:t}=m;let n;return!i&&e&&t&&(n="".concat(e,": ").concat(t)),i?(0,Le.jsx)("div",{className:IH("entity-type"),children:i.replace("EPathType","")}):(0,Le.jsx)("div",{className:IH("entity-type",{error:!0}),children:(0,Le.jsx)(Io,{content:n,offset:{left:0}})})};return b?(0,Le.jsxs)("div",{className:IH(),children:[(0,Le.jsx)("div",{className:IH({hidden:c}),children:(0,Le.jsxs)(Hk,{direction:"vertical",defaultSizePaneKey:Lo.wr,onSplitStartDragAdditional:O,triggerCollapse:d.triggerCollapse,triggerExpand:d.triggerExpand,minSize:[200,52],collapsedSizes:[100,0],children:[f?(0,Le.jsxs)("div",{className:IH("tree-wrapper"),children:[(0,Le.jsx)("div",{className:IH("tree-header"),children:PU("summary.navigation")}),(0,Le.jsx)("div",{className:IH("tree"),children:x&&(0,Le.jsx)(jH,{rootPath:b,rootName:x.Name||String(b),rootType:x.PathType,currentPath:f})})]}):(0,Le.jsx)("div",{children:(0,Le.jsx)(N_,{})}),(0,Le.jsxs)("div",{className:IH("info"),children:[(0,Le.jsxs)("div",{className:IH("sticky-top"),children:[(0,Le.jsxs)("div",{className:IH("info-header"),children:[(0,Le.jsxs)("div",{className:IH("info-title"),children:[j(),(0,Le.jsx)("div",{className:IH("path-name"),children:f})]}),(0,Le.jsx)("div",{className:IH("info-controls"),children:k()})]}),_()]}),(0,Le.jsx)("div",{className:IH("overview-wrapper"),children:C()})]})]})}),(0,Le.jsx)(OF,{onCollapse:s,onExpand:l,isCollapsed:c,initialDirection:"left",className:IH("action-button")})]}):null}const AH=Me("tenant-page"),RH=()=>({triggerExpand:!1,triggerCollapse:!1,collapsed:Boolean(localStorage.getItem(Lo.sO))});const MH=function(e){var t;const[r,i]=a.useReducer(EF(Lo.sO),void 0,RH),o=a.useRef(),{currentSchemaPath:s,currentSchema:l={}}=Do((e=>e.schema)),{PathType:c,PathSubType:u}=Do((e=>{var t,n;return s?null===(t=e.schema.data[s])||void 0===t||null===(n=t.PathDescription)||void 0===n?void 0:n.Self:void 0}))||{},{PathType:d,PathSubType:h}=(null===(t=l.PathDescription)||void 0===t?void 0:t.Self)||{},{error:{status:p=200}={}}=Do((e=>e.schema)),f=Ao(),m=Ca(),g=ol().parse(m.search,{ignoreQueryPrefix:!0}),{name:v}=g,y=v;a.useEffect((()=>{if(y&&"string"===typeof y&&o.current!==y){(async()=>{const{registerYQLCompletionItemProvider:e}=await Promise.all([n.e(1551),n.e(8424),n.e(6531)]).then(n.bind(n,16531));e(y)})().catch(console.error),o.current=y}}),[y]),a.useEffect((()=>{f((0,Vk.J1)({path:y}))}),[y,f]),a.useEffect((()=>{s&&s!==y&&f((0,Vk.J1)({path:s}))}),[s,f,y]),a.useEffect((()=>{y&&f((0,Rl.J)("tenant",{tenantName:y}))}),[y,f]);const b=403===p,x=s||y||PU("page.title");return(0,Le.jsxs)("div",{className:AH(),children:[(0,Le.jsx)(oe,{defaultTitle:"".concat(x," \u2014 YDB Monitoring"),titleTemplate:"%s \u2014 ".concat(x," \u2014 YDB Monitoring")}),b?(0,Le.jsx)(Fc,{}):(0,Le.jsxs)(Hk,{defaultSizePaneKey:Lo.z4,defaultSizes:[25,75],triggerCollapse:r.triggerCollapse,triggerExpand:r.triggerExpand,minSize:[36,200],onSplitStartDragAdditional:()=>{i(SF.clear)},children:[(0,Le.jsx)(DH,{type:c||d,subType:u||h,onCollapseSummary:()=>{i(SF.triggerCollapse)},onExpandSummary:()=>{i(SF.triggerExpand)},isCollapsed:r.collapsed}),(0,Le.jsx)(TU,{type:c||d,additionalTenantProps:e.additionalTenantProps,additionalNodesProps:e.additionalNodesProps,tenantName:y})]})]})},LH=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M9.28 4.78a.75.75 0 0 0 0-1.06l-2.5-2.5a.75.75 0 1 0-1.06 1.06L6.94 3.5H1.75a.75.75 0 1 0 0 1.5h5.19L5.72 6.22a.75.75 0 1 0 1.06 1.06l2.5-2.5Zm-.06 3.94-2.5 2.5a.75.75 0 0 0 0 1.06l2.5 2.5a.75.75 0 1 0 1.06-1.06L9.06 12.5h5.19a.75.75 0 0 0 0-1.5H9.06l1.22-1.22a.75.75 0 1 0-1.06-1.06ZM14 4.25a1.75 1.75 0 1 1-3.5 0 1.75 1.75 0 0 1 3.5 0ZM3.75 13.5a1.75 1.75 0 1 0 0-3.5 1.75 1.75 0 0 0 0 3.5Z",clipRule:"evenodd"})),FH=JSON.parse('{"group-id":"Group ID","pool-name":"Storage Pool Name","size":"Size","erasure":"Erasure"}'),zH=(0,We.wZ)("ydb-group-info",{en:FH});function BH(e){let{data:t,...n}=e;const{GroupID:r,PoolName:i,Used:o,Limit:a,ErasureSpecies:s}=t,l=[];return Td(r)&&l.push({label:zH("group-id"),value:r}),Td(i)&&l.push({label:zH("pool-name"),value:i}),Td(s)&&l.push({label:zH("erasure"),value:s}),Number(o)>=0&&Number(a)>=0&&l.push({label:zH("size"),value:(0,Le.jsx)(Iu,{value:o,capacity:a,formatValues:ks.q3,colorizeProgress:!0})}),(0,Le.jsx)(Ss,{info:l,...n})}const UH=Dl.h.injectEndpoints({endpoints:e=>({getVDiskData:e.query({queryFn:async e=>{let{nodeId:t,pDiskId:n,vDiskSlotId:r}=e;try{const{vDiskData:e,groupData:i}=await async function(e){let{nodeId:t,pDiskId:n,vDiskSlotId:r}=e,{signal:i}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const o=await Promise.all([window.api.getVDiskInfo({nodeId:t,pDiskId:n,vDiskSlotId:r},{signal:i}),window.api.getPDiskInfo({nodeId:t,pDiskId:n},{signal:i}),window.api.getNodeInfo(t,{signal:i})]),a=function(e){var t,n,r,i,o,a,s;let[l,c,u]=e;const d=Nh(null===(t=l.VDiskStateInfo)||void 0===t?void 0:t[0]),h=kh(null===(n=c.PDiskStateInfo)||void 0===n?void 0:n[0]),p=null===(r=u.SystemStateInfo)||void 0===r?void 0:r[0],f=(0,Na.Ns)(p),m=null!==(i=null!==(o=d.NodeId)&&void 0!==o?o:h.NodeId)&&void 0!==i?i:f.NodeId,g=f.Host,v=null===(a=f.Roles)||void 0===a?void 0:a[0],y=f.DC,b=null!==(s=d.PDiskId)&&void 0!==s?s:h.PDiskId,x=h.Type;return{...d,NodeId:m,NodeHost:g,NodeType:v,NodeDC:y,PDiskId:b,PDiskType:x}}(o),{StoragePoolName:s,VDiskId:l={}}=a,{GroupID:c}=l;let u;if(Td(s)&&Td(c)){u=function(e,t,n){var r,i;const o=null===(r=e.StoragePools)||void 0===r?void 0:r.find((e=>e.Name===t)),a=null===o||void 0===o||null===(i=o.Groups)||void 0===i?void 0:i.find((e=>e.GroupID===n));if(a&&o)return Ph(a,o)}(await window.api.getStorageInfo({nodeId:t,poolName:s,groupId:c,version:ka.v1},{signal:i}),s,c)}return{vDiskData:a,groupData:u}}({nodeId:t,pDiskId:n,vDiskSlotId:r});return{data:{vDiskData:e,groupData:i}}}catch(i){return{error:i}}},providesTags:["All"]})}),overrideExisting:"throw"});const HH=JSON.parse('{"fqdn":"FQDN","node":"Node","pdisk":"PDisk","vdisk":"VDisk","group":"Group","evict-vdisk-button":"Evict VDisk","evict-vdisk-dialog":"VDisk will be evicted. Do you want to proceed?","evict-vdisk-not-allowed":"You don\'t have enough rights to evict VDisk"}'),VH=(0,We.wZ)("ydb-vDisk-page",{en:HH}),GH=Me("ydb-vdisk-page");const WH=Gs("clusters"),qH=Gs("cluster"),ZH=Gs("tenant"),YH=Gs("node"),KH=Gs("pDisk"),QH=Gs("vDisk"),XH=Gs("tablet"),$H=Gs("tabletsFilters"),JH=Gs("routes"),eV=Gs("redirect"),tV=JSON.parse('{"pages.clusters":"All clusters"}'),nV=JSON.parse('{"pages.clusters":"\u0412\u0441\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u044b"}'),rV=(0,We.wZ)("ydb-app-content",{ru:nV,en:tV}),iV=Me("app"),oV=[{path:Ta.ZP.cluster,slot:qH,component:eE},{path:Ta.ZP.tenant,slot:ZH,component:MH},{path:Ta.ZP.node,slot:YH,component:RN},{path:Ta.ZP.pDisk,slot:KH,component:function(){var e;const t=Ao(),n=Do(Zs.d),{isUserAllowedToMakeChanges:r}=Do((e=>e.authentication)),[{nodeId:i,pDiskId:o}]=mc({nodeId:Gl,pDiskId:Gl});a.useEffect((()=>{t((0,Rl.J)("pDisk",{nodeId:i,pDiskId:o}))}),[t,i,o]);const s=Td(i)&&Td(o)?{nodeId:i,pDiskId:o}:zl.CN,l=UN.useGetPdiskInfoQuery(s,{pollingInterval:Lo.ME}),c=l.isFetching&&void 0===l.currentData,u=l.currentData||{},{NodeHost:d,NodeId:h,NodeType:p,NodeDC:f,Severity:m}=u,g=UN.useGetStorageInfoQuery(s,{pollingInterval:Lo.ME}),v=g.isFetching&&void 0===g.currentData,y=null!==(e=g.currentData)&&void 0!==e?e:[],b=async()=>{if(Td(i)&&Td(o))return window.api.restartPDisk(i,o).then((e=>{if(!1===(null===e||void 0===e?void 0:e.result)){throw{statusText:e.error}}}))},x=async()=>Promise.all([l.refetch(),g.refetch()]);return(0,Le.jsxs)("div",{className:GN(null),children:[(()=>{const e=o?"".concat(VN("pdisk")," ").concat(o):VN("pdisk"),t=d||VN("node");return(0,Le.jsx)(oe,{titleTemplate:"%s - ".concat(e," \u2014 ").concat(t," \u2014 YDB Monitoring"),defaultTitle:"".concat(e," \u2014 ").concat(t," \u2014 YDB Monitoring")})})(),(()=>{const e=d?"".concat(VN("fqdn"),": ").concat(d):void 0,t=h?"".concat(VN("node"),": ").concat(h):void 0;return(0,Le.jsx)(BN,{className:GN("meta"),loading:c,items:[e,t,p,f]})})(),(0,Le.jsx)(FN,{entityName:VN("pdisk"),status:_h(m),id:o,className:GN("title")}),(0,Le.jsx)("div",{className:GN("controls"),children:(0,Le.jsxs)($O,{onConfirmAction:b,onConfirmActionSuccess:x,buttonDisabled:!i||!o||!r,buttonView:"normal",dialogContent:VN("restart-pdisk-dialog"),withPopover:!0,popoverContent:VN("restart-pdisk-not-allowed"),popoverDisabled:r,children:[(0,Le.jsx)(we.J,{data:MN}),VN("restart-pdisk-button")]})}),c?(0,Le.jsx)(kC,{className:GN("info"),rows:10}):(0,Le.jsx)(pN,{pDisk:u,nodeId:i,className:GN("info"),isPDiskPage:!0}),(0,Le.jsx)(WN,{data:y,nodesMap:n,loading:v})]})}},{path:Ta.ZP.vDisk,slot:QH,component:function(){const e=Ao(),t=Do(Zs.d),{isUserAllowedToMakeChanges:n}=Do((e=>e.authentication)),[{nodeId:r,pDiskId:i,vDiskSlotId:o}]=mc({nodeId:Gl,pDiskId:Gl,vDiskSlotId:Gl});a.useEffect((()=>{e((0,Rl.J)("vDisk",{nodeId:r,pDiskId:i,vDiskSlotId:o}))}),[e,r,i,o]);const s=Td(r)&&Td(i)&&Td(o)?{nodeId:r,pDiskId:i,vDiskSlotId:o}:zl.CN,{currentData:l,isFetching:c,refetch:u}=UH.useGetVDiskDataQuery(s,{pollingInterval:Lo.ME}),d=c&&void 0===l,{vDiskData:h={},groupData:p}=l||{},{NodeHost:f,NodeId:m,NodeType:g,NodeDC:v,PDiskId:y,PDiskType:b,Severity:x,VDiskId:w}=h,S=async()=>{const{GroupID:e,GroupGeneration:t,Ring:n,Domain:r,VDisk:i}=w||{};if(Td(e)&&Td(t)&&Td(n)&&Td(r)&&Td(i))return window.api.evictVDisk({groupId:e,groupGeneration:t,failRealmIdx:n,failDomainIdx:r,vDiskIdx:i})},_=async()=>u(),C=()=>{var e;return p?(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)("div",{className:GH("group-title"),children:VH("group")}),(0,Le.jsx)(BH,{data:p}),(0,Le.jsx)("div",{className:GH("group-disks"),children:null===(e=p.VDisks)||void 0===e?void 0:e.map((e=>(0,Le.jsx)(lS,{data:e,nodes:t,className:GH("group-disk")},(0,ks.a2)(e.VDiskId))))})]}):null};return(0,Le.jsxs)("div",{className:GH(null),children:[(()=>{const e=o?"".concat(VH("vdisk")," ").concat(o):VH("vdisk"),t=i?"".concat(VH("pdisk")," ").concat(i):VH("pdisk"),n=f||VH("node");return(0,Le.jsx)(oe,{titleTemplate:"%s - ".concat(e," - ").concat(t," \u2014 ").concat(n," \u2014 YDB Monitoring"),defaultTitle:"".concat(e," - ").concat(t," \u2014 ").concat(n," \u2014 YDB Monitoring")})})(),(()=>{const e=f?"".concat(VH("fqdn"),": ").concat(f):void 0,t=m?"".concat(VH("node"),": ").concat(m):void 0,n=m?"".concat(VH("pdisk"),": ").concat(y):void 0;return(0,Le.jsx)(BN,{loading:d,items:[e,t,g,v,n,b]})})(),(0,Le.jsx)(FN,{entityName:VH("vdisk"),status:_h(x),id:(0,ks.a2)(null===h||void 0===h?void 0:h.VDiskId)}),(0,Le.jsx)("div",{children:(0,Le.jsxs)($O,{onConfirmAction:S,onConfirmActionSuccess:_,buttonDisabled:!w||!n,buttonView:"normal",dialogContent:VH("evict-vdisk-dialog"),withPopover:!0,popoverContent:VH("evict-vdisk-not-allowed"),popoverDisabled:n,children:[(0,Le.jsx)(we.J,{data:LH}),VH("evict-vdisk-button")]})}),d?(0,Le.jsx)(kC,{rows:20}):(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(SN,{data:h,isVDiskPage:!0}),C()]})]})}},{path:Ta.ZP.tablet,slot:XH,component:()=>{var e;const t=a.useRef(!0),n=Ao(),r=Ca(),i=function(){var e=Sa(ra).match;return e?e.params:{}}(),{id:o}=i,{nodeId:s,tenantName:l,type:c,clusterName:u}=(0,Ta.mB)(r),{currentData:d,isFetching:h,error:p,refetch:f}=qN.useGetTabletQuery({id:o},{pollingInterval:Lo.ME}),m=h&&void 0===d,{id:g,data:v={},history:y=[]}=d||{},{currentData:b}=qN.useGetTabletDescribeQuery(v.TenantId?{tenantId:v.TenantId}:zl.CN),x=(null===(e=v.NodeId)||void 0===e?void 0:e.toString())||(null===s||void 0===s?void 0:s.toString()),w=b||(null===l||void 0===l?void 0:l.toString()),S=v.Type||(null===c||void 0===c?void 0:c.toString());a.useEffect((()=>{n((0,Rl.J)("tablet",{nodeIds:x?[x]:[],tenantName:w,tabletId:o,tabletType:S}))}),[n,w,o,x,S]);const _=(e,t)=>(0,Le.jsx)("li",{className:ek("link",{external:!0}),children:(0,Le.jsx)(si,{href:"".concat(h_.y3).concat(e.path),target:"_blank",children:e.name})},t);return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(oe,{children:(0,Le.jsx)("title",{children:"".concat(o," \u2014 ").concat(YN("tablet.header")," \u2014 ").concat(w||u||Lo.DO)})}),(()=>{if(m&&o!==g&&t.current)return(0,Le.jsx)(N_,{size:"l"});if(p)return(0,Le.jsx)(zc,{error:p});if(!v||!Object.keys(v).length)return(0,Le.jsx)("div",{className:ek("placeholder"),children:(0,Le.jsx)(Ac,{title:YN("emptyState")})});const{TabletId:e,Overall:n,Leader:r}=v,i=[{name:"".concat(Lo.Ah," - tablet"),path:"/tablets?TabletID=".concat(e)}];return(0,Le.jsx)("div",{className:ek(),children:(0,Le.jsxs)("div",{className:ek("pane-wrapper"),children:[(0,Le.jsxs)("div",{className:ek("left-pane"),children:[(0,Le.jsx)("ul",{className:ek("links"),children:i.map(_)}),(0,Le.jsxs)("div",{className:ek("row",{header:!0}),children:[(0,Le.jsx)("span",{className:ek("title"),children:YN("tablet.header")}),(0,Le.jsx)(Il,{status:n,name:e}),(0,Le.jsx)("a",{rel:"noopener noreferrer",className:ek("link",{external:!0}),href:"".concat(h_.y3,"/tablets?TabletID=").concat(e),target:"_blank",children:(0,Le.jsx)(we.J,{data:pu})}),r&&(0,Le.jsx)(LC,{text:"Leader",type:"blue"}),(0,Le.jsx)("span",{className:ek("loader"),children:m&&(0,Le.jsx)(N_,{size:"s"})})]}),(0,Le.jsx)(QN,{tablet:v,tenantPath:w}),(0,Le.jsx)(KN,{tablet:v,fetchData:f})]}),(0,Le.jsx)("div",{className:ek("rigth-pane"),children:(0,Le.jsx)(JN,{history:y})})]})})})()]})}},{path:Ta.ZP.tabletsFilters,slot:$H,component:fk}];function aV(e,t){return(0,Le.jsx)(ma,{path:t.path,exact:t.exact,render:n=>{const r=e.get(t.slot);let i;if(r)i="function"===typeof r.rendered?r.rendered({component:t.component,...n}):r.rendered;else{const e=t.component;i=(0,Le.jsx)(e,{...n})}return(0,Le.jsx)("main",{className:iV("main"),children:i})}},t.path)}function sV(e){var t;const{singleClusterMode:n}=e,r=function(e){const{children:t}=e;return a.useMemo((()=>new qs(t)),[t])}(e),i=r.get(JH),o=r.get(eV),s=null!==(t=null===o||void 0===o?void 0:o.props)&&void 0!==t?t:n?{to:(0,$C.B7)()}:{to:Ta.ZP.clusters};let l;return n||(l={text:rV("pages.clusters"),link:Ta.ZP.clusters}),(0,Le.jsxs)(wa,{children:[n?null:aV(r,{path:Ta.ZP.clusters,exact:!0,component:UT,slot:WH}),null===i||void 0===i?void 0:i.rendered,(0,Le.jsxs)(ma,{children:[(0,Le.jsx)(lV,{}),(0,Le.jsx)(cV,{}),(0,Le.jsx)(xO,{mainPage:l}),(0,Le.jsxs)(wa,{children:[oV.map((e=>aV(r,e))),(0,Le.jsx)(ua,{...s})]})]},"single-cluster")]})}function lV(){const e=Ao(),{isAuthenticated:t,isInternalUser:n}=Do((e=>({isAuthenticated:e.authentication.isAuthenticated,isInternalUser:Boolean(e.authentication.user)})),ae.wU);return a.useEffect((()=>{t&&!n&&e((0,ns.PR)())}),[e,t,n]),null}function cV(){return Zs.W.useGetNodesListQuery(void 0),null}const uV=(0,ae.$j)((function(e){return{isAuthenticated:e.authentication.isAuthenticated,singleClusterMode:e.singleClusterMode}}))((function(e){const{singleClusterMode:t,isAuthenticated:n}=e;return(0,Le.jsxs)(wa,{children:[(0,Le.jsx)(ma,{path:Ta.ZP.auth,children:(0,Le.jsx)(tl,{closable:!0})}),(0,Le.jsx)(ma,{children:(0,Le.jsx)("div",{className:iV({embedded:t}),children:n?e.children:(0,Le.jsx)(tl,{})})})]})}));var dV=n(87720);const hV=e=>{let{children:t}=e;Ca();const n=_a();return t({replace(e){n.replace(e.search||"?",e.state)},push(e){n.push(e.search||"?",e.state)},get location(){return n.location}})},pV=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10 4.5a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm1.5 0a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Zm-9 8c0-.204.22-.809 1.32-1.459C4.838 10.44 6.32 10 8 10c1.68 0 3.162.44 4.18 1.041 1.1.65 1.32 1.255 1.32 1.459a1 1 0 0 1-1 1h-9a1 1 0 0 1-1-1Zm5.5-4c-3.85 0-7 2-7 4A2.5 2.5 0 0 0 3.5 15h9a2.5 2.5 0 0 0 2.5-2.5c0-2-3.15-4-7-4Z",clipRule:"evenodd"})),fV=a.createContext(void 0);fV.displayName="AsideHeaderInnerContext";const mV=fV.Provider,gV=()=>{const e=a.useContext(fV);if(void 0===e)throw new Error("AsideHeaderInnerContext is not initialized.\n Please check if you wrapped your component with AsideHeaderInnerContext.Provider");return e},vV=a.createContext({compact:!1,size:0});vV.displayName="AsideHeaderContext";const yV=vV.Provider,bV=()=>{const e=a.useContext(vV);if(void 0===e)throw new Error("AsideHeaderContext is not initialized.\n Please check if you wrapped your component with AsideHeader\n Context.Provider");return e},xV=40;Mi('.gn-composite-bar-highlighted-item{--_--background-color:var(--g-color-base-background);--_--item-icon-background-size:38px;--_--item-background-color-hover:var(--g-color-base-selection-hover);--_--item-selected-background-color-active:var(--g-color-base-selection);display:flex;justify-content:center;position:absolute;z-index:10000}.gn-composite-bar-highlighted-item__icon{align-items:center;background-color:var(--gn-aside-header-background-color,var(--_--background-color));border-radius:7px;box-shadow:0 8px 20px 0 var(--g-color-sfx-shadow);cursor:pointer;display:flex;height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));justify-content:center;overflow:hidden;position:relative;transform:translateY(1px);width:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size))}.gn-composite-bar-highlighted-item__icon:before{background-color:var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color-active));content:"";height:100%;position:absolute;width:100%;z-index:-1}.gn-composite-bar-highlighted-item__icon:hover:before{background-color:var(--gn-aside-header-item-background-color-hover,var(--_--item-background-color-hover))}');const wV=(0,Ri.b)("composite-bar-highlighted-item"),SV=e=>{let{iconRef:t,iconNode:n,onClick:r,onClickCapture:i}=e;const{openModalSubscriber:o}=gV(),[{top:s,left:l,width:c,height:u},d]=(0,a.useState)({top:0,left:0,width:0,height:0}),[h,p]=(0,a.useState)(!1),f=(0,a.useMemo)((()=>(0,Li.d)((()=>{var e;const{top:n=0,left:r=0,width:i=0,height:o=0}=(null===(e=null===t||void 0===t?void 0:t.current)||void 0===e?void 0:e.getBoundingClientRect())||{};d({top:n+window.scrollY,left:r+window.scrollX,width:i,height:o})}),200,{leading:!0})),[t]),m=(0,a.useCallback)((()=>f()),[f]);return(0,a.useEffect)((()=>{if(h)return m(),window.addEventListener("resize",m),()=>window.removeEventListener("resize",m)}),[m,h]),null===o||void 0===o||o((e=>{p(e)})),n&&h?a.createElement(jr.h,null,a.createElement("div",{className:wV(),style:{left:l,top:s,width:c,height:u},onClick:r,onClickCapture:i,"data-toast":!0},a.createElement("div",{className:wV("icon")},n))):null};SV.displayName="HighlightedItem";const _V="collapse-item-id",CV=["right-start","right-end","right"],EV=28;function TV(e){if(!kV(e))return xV;switch(e.type){case"action":return 50;case"divider":return 15;default:return xV}}function OV(e){return e.reduce(((e,t)=>e+TV(t)),0)}function NV(e){const t=e.findIndex((e=>{let{current:t}=e;return Boolean(t)}));return-1===t?void 0:t}function kV(e){return void 0!==(null===e||void 0===e?void 0:e.id)}Mi('.gn-composite-bar-item{--gn-composite-bar-item-action-size:36px;--_--horizontal-divider-line-color:var(--g-color-line-generic);--_--item-background-color-hover:var(--g-color-base-simple-hover);--_--item-general-icon-color:var(--g-color-text-primary);--_--item-icon-color:var(--g-color-text-misc);--_--item-text-color:var(--g-color-text-primary);--_--item-selected-text-color:var(--g-color-text-primary);--_--item-selected-background-color-active:var(--g-color-base-selection);align-items:center;cursor:pointer;display:flex;height:100%;width:100%}.gn-composite-bar-item__icon{color:var(--gn-aside-header-item-icon-color,var(--_--item-icon-color))}.gn-composite-bar-item_current .gn-composite-bar-item__icon{color:var(--gn-aside-header-item-current-icon-color,var(--gn-aside-header-item-icon-color,var(--_--item-icon-color)))}.gn-composite-bar-highlighted-item .gn-composite-bar-item__icon,.gn-composite-bar_subheader .gn-composite-bar-item__icon,.gn-footer-item .gn-composite-bar-item__icon{color:var(--gn-aside-header-general-item-icon-color,var(--_--item-general-icon-color))}.gn-composite-bar-highlighted-item.gn-composite-bar-item_current .gn-composite-bar-item__icon,.gn-composite-bar_subheader .gn-composite-bar-item_current .gn-composite-bar-item__icon,.gn-footer-item.gn-composite-bar-item_current .gn-composite-bar-item__icon{color:var(--gn-aside-header-item-current-icon-color,var(--gn-aside-header-general-item-icon-color,var(--_--item-general-icon-color)))}.gn-composite-bar-item__icon-tooltip .g-action-tooltip__description{color:var(--g-color-text-light-primary);margin-block-start:0}.gn-composite-bar-item__icon-place{align-items:center;display:flex;flex-shrink:0;height:100%;justify-content:center;width:var(--gn-aside-header-min-width)}.gn-composite-bar-item__title{display:flex;overflow:hidden}.gn-composite-bar-item__title-text{color:var(--gn-aside-header-item-text-color,var(--_--item-text-color));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gn-composite-bar-item_current .gn-composite-bar-item__title-text{color:var(--gn-aside-header-item-current-text-color,var(--_--item-selected-text-color))}.gn-composite-bar-item__title-adornment{margin:0 10px}.gn-composite-bar-item__collapse-item{align-items:center;cursor:pointer;display:flex;height:100%;padding:0 16px;width:100%}.gn-composite-bar-item__collapse-item .gn-composite-bar-item__title-adornment{margin-right:0}.gn-composite-bar-item__menu-divider{border-top:1px solid var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));cursor:default;margin:0 8px;width:100%}.gn-composite-bar-item__collapse-items-popup-content{padding:4px 0}.gn-composite-bar-item__link{align-items:center;display:flex;height:100%;width:100%}.gn-composite-bar-item__link,.gn-composite-bar-item__link:active,.gn-composite-bar-item__link:focus,.gn-composite-bar-item__link:hover,.gn-composite-bar-item__link:visited{color:inherit;outline:none;text-decoration:none}.gn-composite-bar-item__btn-icon{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.gn-composite-bar-item_type_action{background:var(--g-color-base-float);border-radius:var(--gn-composite-bar-item-action-size);box-shadow:0 0 0 1px rgba(0,0,0,.03),0 5px 6px rgba(0,0,0,.12);height:var(--gn-composite-bar-item-action-size);justify-content:center;margin:0 10px 8px;transition:transform .1s ease-out,background-color .15s linear}.gn-composite-bar-item_type_action:focus-visible{box-shadow:0 0 0 2px var(--g-color-line-misc)}.gn-composite-bar-item_type_action:hover{background-color:var(--g-color-base-float-hover)}.gn-composite-bar-item_type_action:active{box-shadow:0 1px 2px var(--g-color-sfx-shadow);transform:scale(.96);transition:none}.gn-composite-bar-item_type_action .gn-composite-bar-item__icon-place{width:var(--gn-composite-bar-item-action-size)}.gn-composite-bar-item_type_action .gn-composite-bar-item__title{margin-right:16px}.gn-composite-bar-item__icon-tooltip_item-type_action{margin-left:10px}.gn-composite-bar-item:not(.gn-composite-bar-item_compact).gn-composite-bar-item_current.gn-composite-bar-item_type_regular{background-color:var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color-active))}.gn-composite-bar-item:not(.gn-composite-bar-item_compact):hover.gn-composite-bar-item_type_regular{background-color:var(--gn-aside-header-item-current-background-color-hover,var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color-active)))}.gn-composite-bar-item:not(.gn-composite-bar-item_compact):not(.gn-composite-bar-item_current):hover.gn-composite-bar-item_type_regular{background-color:var(--gn-aside-header-item-background-color-hover,var(--_--item-background-color-hover))}.gn-composite-bar-item_compact.gn-composite-bar-item_type_action{width:var(--gn-composite-bar-item-action-size)}.gn-composite-bar-item_compact.gn-composite-bar-item_type_action .gn-composite-bar-item__title{margin:0}.gn-composite-bar-item_compact.gn-composite-bar-item_current.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon{background-color:transparent;position:relative}.gn-composite-bar-item_compact.gn-composite-bar-item_current.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon:before{background-color:var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color-active));border-radius:7px;content:"";height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));left:50%;margin-left:-19px;margin-top:-19px;position:absolute;top:50%;width:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));z-index:-1}.gn-composite-bar-item_compact:hover.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon{background-color:transparent;position:relative}.gn-composite-bar-item_compact:hover.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon:before{background-color:var(--gn-aside-header-item-current-background-color-hover,var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color-active)));border-radius:7px;content:"";height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));left:50%;margin-left:-19px;margin-top:-19px;position:absolute;top:50%;width:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));z-index:-1}.gn-composite-bar-item_compact:not(.gn-composite-bar-item_current):hover.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon{background-color:transparent;position:relative}.gn-composite-bar-item_compact:not(.gn-composite-bar-item_current):hover.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon:before{background-color:var(--gn-aside-header-item-background-color-hover,var(--_--item-background-color-hover));border-radius:7px;content:"";height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));left:50%;margin-left:-19px;margin-top:-19px;position:absolute;top:50%;width:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));z-index:-1}');const jV=(0,Ri.b)("composite-bar-item");function IV(e){let t=a.createElement("div",{className:jV("title-text")},e.title);return e.rightAdornment&&(t=a.createElement(a.Fragment,null,t,a.createElement("div",{className:jV("title-adornment")},e.rightAdornment))),t}const PV=["right-end"],DV=[-20,8],AV=e=>{const{item:t,className:n,collapseItems:r,onMouseLeave:i,onMouseEnter:o,enableTooltip:s=!0,popupVisible:l=!1,popupAnchor:c,popupPlacement:u=PV,popupOffset:d=DV,popupKeepMounted:h,popupContentClassName:p,renderPopupContent:f,onClosePopup:m,onItemClick:g,onItemClickCapture:v,bringForward:y}=e,{compact:b}=bV(),[x,w]=a.useState(!1),S=a.useRef(null),_=c||S,C=a.useRef(null),E=t.type||"regular",T=t.current||!1,O=t.tooltipText||t.title,N=t.icon,k=t.iconSize||18,j=t.iconQa,I=t.id===_V,P=a.useMemo((()=>[{name:"compact",enabled:!0,options:{compact:b},phase:"main",fn(){}}]),[b]),D=a.useCallback((e=>{var t;e instanceof MouseEvent&&e.target&&(null===(t=S.current)||void 0===t?void 0:t.contains(e.target))||null===m||void 0===m||m()}),[m]);if("divider"===t.type)return a.createElement("div",{className:jV("menu-divider")});const A=e=>b?a.createElement(xT,{title:"",description:O,disabled:!s||I&&x||l,placement:"right",className:jV("icon-tooltip",{"item-type":E})},a.createElement("div",{onMouseEnter:()=>null===o||void 0===o?void 0:o(),onMouseLeave:()=>null===i||void 0===i?void 0:i(),className:jV("btn-icon")},e)):e,R=e=>{let{icon:r,title:s}=e;const c=a.createElement(a.Fragment,null,a.createElement("div",{className:jV({type:E,current:T,compact:b},n),ref:S,onClick:e=>{I?w(!x):null===g||void 0===g||g(t,!1,e)},onClickCapture:v,onMouseEnter:()=>{b||null===o||void 0===o||o()},onMouseLeave:()=>{b||null===i||void 0===i||i()}},a.createElement("div",{className:jV("icon-place"),ref:C},A(r)),a.createElement("div",{className:jV("title"),title:"string"===typeof t.title?t.title:void 0},s)),f&&Boolean(null===_||void 0===_?void 0:_.current)&&a.createElement(ti,{contentClassName:jV("popup",p),open:l,keepMounted:h,placement:u,offset:d,anchorRef:_,onClose:D,modifiers:P},f()));return t.link?a.createElement("a",{href:t.link,className:jV("link")},c):c},M=N?a.createElement(we.J,{qa:j,data:N,size:k,className:jV("icon")}):null,L={icon:M,title:IV(t)};let F,z=null;const B={compact:Boolean(b),collapsed:!1,item:t,ref:S};return"function"===typeof t.itemWrapper?(F=t.itemWrapper(L,R,B),z=y&&t.itemWrapper(L,(e=>{let{icon:t}=e;return A(t)}),B)):(F=R(L),z=y&&A(M)),a.createElement(a.Fragment,null,y&&a.createElement(SV,{iconNode:z,iconRef:C,onClick:e=>null===g||void 0===g?void 0:g(t,!1,e),onClickCapture:v}),F,x&&I&&(null===r||void 0===r?void 0:r.length)&&Boolean(null===_||void 0===_?void 0:_.current)&&a.createElement(RV,Object.assign({},e,{anchorRef:S,onClose:()=>w(!1)})))};function RV(e){let{onItemClick:t,collapseItems:n,anchorRef:r,onClose:i}=e;const{compact:o}=bV();return(null===n||void 0===n?void 0:n.length)?a.createElement(ti,{placement:CV,open:!0,anchorRef:r,onClose:i},a.createElement("div",{className:jV("collapse-items-popup-content")},a.createElement(Sx,{itemClassName:jV("root-collapse-item"),items:n,selectedItemIndex:NV(n),itemHeight:EV,itemsHeight:n.length*EV,virtualized:!1,filterable:!1,sortable:!1,onItemClick:i,renderItem:e=>{const n=n=>{let{title:r}=n;const i=a.createElement("div",{className:jV("collapse-item"),onClick:n=>{null===t||void 0===t||t(e,!0,n)}},r);return e.link?a.createElement("a",{href:e.link,className:jV("link")},i):i},i={title:IV(e)},s={compact:Boolean(o),collapsed:!0,item:e,ref:r};return"function"===typeof e.itemWrapper?e.itemWrapper(i,n,s):n(i)}}))):null}AV.displayName="Item";Mi(".gn-footer-item{height:40px;width:100%}");const MV=(0,Ri.b)("footer-item"),LV=e=>{var{item:t}=e,n=Je(e,["item"]);return a.createElement(AV,Object.assign({},n,{item:Object.assign({iconSize:18},t),className:MV({compact:n.compact}),onItemClick:t.onItemClick,onItemClickCapture:t.onItemClickCapture}))},FV=a.memo((e=>{let{renderContent:t,size:n}=e;return a.createElement(a.Fragment,null,t({size:n}))}));FV.displayName="RenderContent";const zV=e=>{let{size:t,className:n,cssSizeVariableName:r="--gn-aside-header-size",renderContent:i,children:o}=e;return a.createElement("div",{className:n,style:Object.assign({},{[r]:"".concat(t,"px")})},"function"===typeof i?a.createElement(FV,{size:t,renderContent:i}):o)};var BV=n(50528);Mi('.g-root{--gn-aside-top-panel-height:0px}.gn-aside-header{--gn-aside-header-min-width:56px;--_--item-icon-background-size:38px;--_--background-color:var(--g-color-base-background);--_--decoration-collapsed-background-color:var(--g-color-base-warning-light);--_--decoration-expanded-background-color:var(--g-color-base-warning-light);--_--vertical-divider-line-color:var(--g-color-line-generic);--_--horizontal-divider-line-color:var(--g-color-line-generic);background-color:var(--g-color-base-background);height:100%;position:relative;width:100%}.gn-aside-header__aside{background-color:var(--gn-aside-header-background-color,var(--_--background-color));box-sizing:border-box;display:flex;flex-direction:column;height:100vh;left:0;margin-top:var(--gn-aside-top-panel-height);max-height:calc(100vh - var(--gn-aside-top-panel-height));position:sticky;top:var(--gn-aside-top-panel-height);width:inherit;z-index:100}.gn-aside-header__aside:after{background-color:var(--gn-aside-header-divider-vertical-color,var(--_--vertical-divider-line-color));content:"";height:100%;position:absolute;right:0;top:0;width:1px;z-index:2}.gn-aside-header__aside-popup-anchor{inset:0;position:absolute;z-index:1}.gn-aside-header__aside-content{--gradient-height:334px;display:flex;flex-direction:column;height:inherit;overflow-x:hidden;position:relative;user-select:none;width:inherit;z-index:2}.gn-aside-header__aside-content>.gn-aside-header-logo{margin:8px 0}.gn-aside-header__aside-content_with-decoration{background:linear-gradient(180deg,var(--gn-aside-header-decoration-expanded-background-color,var(--_--decoration-expanded-background-color)) calc(var(--gradient-height)*.33),transparent calc(var(--gradient-height)*.88))}.gn-aside-header__aside-custom-background{bottom:0;display:flex;position:absolute;top:0;z-index:-1}.gn-aside-header_compact .gn-aside-header__aside-content{background:transparent}.gn-aside-header__header{--gn-aside-header-header-divider-height:29px;box-sizing:border-box;flex:none;padding-bottom:22px;padding-top:8px;position:relative;width:100%;z-index:1}.gn-aside-header__header .gn-aside-header__header-divider{bottom:0;color:var(--gn-aside-header-decoration-collapsed-background-color,var(--_--decoration-collapsed-background-color));display:none;left:0;position:absolute;z-index:-2}.gn-aside-header__header_with-decoration:before{background-color:var(--gn-aside-header-decoration-collapsed-background-color,var(--_--decoration-collapsed-background-color));content:"";display:none;height:calc(100% - var(--gn-aside-header-header-divider-height));left:0;position:absolute;top:0;width:100%;z-index:-2}.gn-aside-header__header:after{background-color:var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));bottom:12px;content:"";height:1px;left:0;position:absolute;width:100%;z-index:-2}.gn-aside-header_compact .gn-aside-header__header:before,.gn-aside-header_compact .gn-aside-header__header_with-decoration .gn-aside-header__header-divider{display:block}.gn-aside-header_compact .gn-aside-header__header_with-decoration:after{display:none}.gn-aside-header__logo-button-wrapper{width:var(--gn-aside-header-min-width)}.gn-aside-header__logo-button[class],.gn-aside-header__logo-button[class] .g-button__icon{height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size))}.gn-aside-header__menu-items{flex-grow:1}.gn-aside-header__footer{display:flex;flex-direction:column;flex-shrink:0;margin:8px 0;width:100%}.gn-aside-header__panels{inset:var(--gn-aside-top-panel-height) 0 0;max-height:calc(100vh - var(--gn-aside-top-panel-height));overflow:auto;position:fixed;z-index:98}.gn-aside-header__panel{height:100%}.gn-aside-header__pane-container{display:flex;flex-direction:row;outline:none;overflow:visible;user-select:text}.gn-aside-header__pane-top-divider{background-color:var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));height:1px;margin-top:-1px}.gn-aside-header__pane-top{background:var(--g-color-base-background);position:fixed;top:0;width:100%;z-index:98}.gn-aside-header__pane-top-alert_centered{display:flex;justify-content:space-around}.gn-aside-header__pane-top-alert_dense{padding-bottom:var(--g-spacing-2);padding-top:var(--g-spacing-2)}.gn-aside-header__content{margin-top:var(--gn-aside-top-panel-height);width:calc(100% - var(--gn-aside-header-size));z-index:95}.gn-aside-header__collapse-button{--g-button-background-color-hover:transparent;border-top:1px solid var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));box-sizing:border-box;flex:none;height:20px;margin-top:auto;overflow:hidden;width:100%}.gn-aside-header__collapse-button>.g-button__text{align-items:center;display:flex;height:20px;justify-content:center}.gn-aside-header__collapse-button:not(.gn-aside-header__collapse-button_compact) .gn-aside-header__collapse-icon{transform:rotate(180deg)}.gn-aside-header__collapse-button .gn-aside-header__collapse-icon{color:var(--g-color-text-secondary)}.gn-aside-header__collapse-button:hover .gn-aside-header__collapse-icon{color:var(--g-color-text-primary)}');const UV=a.lazy((()=>n.e(328).then(n.bind(n,30328)).then((e=>({default:e.TopPanel}))))),HV=Object.assign((e=>{let{compact:t,className:n,children:r,topAlert:i}=e;const o=t?56:236,s=(0,a.useMemo)((()=>({size:o,compact:t})),[t,o]);return a.createElement(yV,{value:s},a.createElement("div",{className:(0,BV.b)({compact:t},n),style:Object.assign({},{"--gn-aside-header-size":"".concat(o,"px")})},i&&a.createElement(a.Suspense,{fallback:null},a.createElement(UV,{topAlert:i})),a.createElement("div",{className:(0,BV.b)("pane-container")},r)))}),{Content:e=>{let{children:t,renderContent:n}=e;const{size:r}=bV();return a.createElement(zV,{size:r,className:(0,BV.b)("content"),renderContent:n},t)}}),VV=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10.5 2.255v-.01c.003-.03.013-.157-.361-.35C9.703 1.668 8.966 1.5 8 1.5c-.967 0-1.703.169-2.138.394-.375.194-.365.32-.362.351v.01c-.003.03-.013.157.362.35C6.297 2.832 7.033 3 8 3c.967 0 1.703-.169 2.139-.394.374-.194.364-.32.361-.351ZM8 4.5c.506 0 .99-.04 1.436-.118l.84 2.352.253.707.717.221c.648.2 1.055.44 1.277.65.192.18.227.31.227.438 0 .14-.055.488-.937.878-.869.384-2.2.622-3.813.622s-2.944-.238-3.813-.622c-.882-.39-.937-.738-.937-.878 0-.128.035-.259.227-.439.222-.209.629-.448 1.277-.649l.717-.221.253-.707.84-2.352c.445.079.93.118 1.436.118Zm4-2.25c0 .738-.433 1.294-1.136 1.669l.825 2.31c1.553.48 2.561 1.32 2.561 2.52 0 1.854-2.402 2.848-5.5 2.985V15a.75.75 0 0 1-1.5 0v-3.266c-3.098-.136-5.5-1.131-5.5-2.984 0-1.2 1.008-2.04 2.561-2.52l.825-2.311C4.433 3.544 4 2.988 4 2.25 4 .75 5.79 0 8 0s4 .75 4 2.25Z",clipRule:"evenodd"})),GV=e=>a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),a.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10.5 2.255v-.01c.003-.03.013-.157-.361-.35C9.703 1.668 8.966 1.5 8 1.5c-.967 0-1.703.169-2.138.394-.375.194-.365.32-.362.351v.01c-.003.03-.013.157.362.35C6.297 2.832 7.033 3 8 3c.967 0 1.703-.169 2.139-.394.374-.194.364-.32.361-.351ZM12 2.25c0 .738-.433 1.294-1.136 1.669l.825 2.31c1.553.48 2.561 1.32 2.561 2.52 0 1.854-2.402 2.848-5.5 2.985V15a.75.75 0 0 1-1.5 0v-3.266c-3.098-.136-5.5-1.131-5.5-2.984 0-1.2 1.008-2.04 2.561-2.52l.825-2.311C4.433 3.544 4 2.988 4 2.25 4 .75 5.79 0 8 0s4 .75 4 2.25Z",clipRule:"evenodd"}));var WV;function qV(){return qV=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0||(i[n]=e[n]);return i}function QV(e,t){return QV=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},QV(e,t)}function XV(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,QV(e,t)}var $V,JV,eG,tG;function nG(){if(JV)return $V;JV=1;return $V="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}function rG(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}(function(){if(tG)return eG;tG=1;var e=nG();function t(){}function n(){}return n.resetWarningCache=t,eG=function(){function r(t,n,r,i,o,a){if(a!==e){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function i(){return r}r.isRequired=r;var o={array:r,bigint:r,bool:r,func:r,number:r,object:r,string:r,symbol:r,any:r,arrayOf:i,element:r,elementType:r,instanceOf:i,node:r,objectOf:i,oneOf:i,oneOfType:i,shape:i,exact:i,checkPropTypes:n,resetWarningCache:t};return o.PropTypes=o,o}})()();var iG=!1,oG=a.createContext(null),aG=function(e){return e.scrollTop},sG="unmounted",lG="exited",cG="entering",uG="entered",dG="exiting",hG=function(e){function t(t,n){var r;r=e.call(this,t,n)||this;var i,o=n&&!n.isMounting?t.enter:t.appear;return r.appearStatus=null,t.in?o?(i=lG,r.appearStatus=cG):i=uG:i=t.unmountOnExit||t.mountOnEnter?sG:lG,r.state={status:i},r.nextCallback=null,r}XV(t,e),t.getDerivedStateFromProps=function(e,t){return e.in&&t.status===sG?{status:lG}:null};var n=t.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(e){var t=null;if(e!==this.props){var n=this.state.status;this.props.in?n!==cG&&n!==uG&&(t=cG):n!==cG&&n!==uG||(t=dG)}this.updateStatus(!1,t)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var e,t,n,r=this.props.timeout;return e=t=n=r,null!=r&&"number"!==typeof r&&(e=r.exit,t=r.enter,n=void 0!==r.appear?r.appear:t),{exit:e,enter:t,appear:n}},n.updateStatus=function(e,t){if(void 0===e&&(e=!1),null!==t)if(this.cancelNextCallback(),t===cG){if(this.props.unmountOnExit||this.props.mountOnEnter){var n=this.props.nodeRef?this.props.nodeRef.current:Dt.findDOMNode(this);n&&aG(n)}this.performEnter(e)}else this.performExit();else this.props.unmountOnExit&&this.state.status===lG&&this.setState({status:sG})},n.performEnter=function(e){var t=this,n=this.props.enter,r=this.context?this.context.isMounting:e,i=this.props.nodeRef?[r]:[Dt.findDOMNode(this),r],o=i[0],a=i[1],s=this.getTimeouts(),l=r?s.appear:s.enter;!e&&!n||iG?this.safeSetState({status:uG},(function(){t.props.onEntered(o)})):(this.props.onEnter(o,a),this.safeSetState({status:cG},(function(){t.props.onEntering(o,a),t.onTransitionEnd(l,(function(){t.safeSetState({status:uG},(function(){t.props.onEntered(o,a)}))}))})))},n.performExit=function(){var e=this,t=this.props.exit,n=this.getTimeouts(),r=this.props.nodeRef?void 0:Dt.findDOMNode(this);t&&!iG?(this.props.onExit(r),this.safeSetState({status:dG},(function(){e.props.onExiting(r),e.onTransitionEnd(n.exit,(function(){e.safeSetState({status:lG},(function(){e.props.onExited(r)}))}))}))):this.safeSetState({status:lG},(function(){e.props.onExited(r)}))},n.cancelNextCallback=function(){null!==this.nextCallback&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(e,t){t=this.setNextCallback(t),this.setState(e,t)},n.setNextCallback=function(e){var t=this,n=!0;return this.nextCallback=function(r){n&&(n=!1,t.nextCallback=null,e(r))},this.nextCallback.cancel=function(){n=!1},this.nextCallback},n.onTransitionEnd=function(e,t){this.setNextCallback(t);var n=this.props.nodeRef?this.props.nodeRef.current:Dt.findDOMNode(this),r=null==e&&!this.props.addEndListener;if(n&&!r){if(this.props.addEndListener){var i=this.props.nodeRef?[this.nextCallback]:[n,this.nextCallback],o=i[0],a=i[1];this.props.addEndListener(o,a)}null!=e&&setTimeout(this.nextCallback,e)}else setTimeout(this.nextCallback,0)},n.render=function(){var e=this.state.status;if(e===sG)return null;var t=this.props,n=t.children;t.in,t.mountOnEnter,t.unmountOnExit,t.appear,t.enter,t.exit,t.timeout,t.addEndListener,t.onEnter,t.onEntering,t.onEntered,t.onExit,t.onExiting,t.onExited,t.nodeRef;var r=KV(t,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return a.createElement(oG.Provider,{value:null},"function"===typeof n?n(e,r):a.cloneElement(a.Children.only(n),r))},t}(a.Component);function pG(){}hG.contextType=oG,hG.propTypes={},hG.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:pG,onEntering:pG,onEntered:pG,onExit:pG,onExiting:pG,onExited:pG},hG.UNMOUNTED=sG,hG.EXITED=lG,hG.ENTERING=cG,hG.ENTERED=uG,hG.EXITING=dG;var fG=function(e,t){return e&&t&&t.split(" ").forEach((function(t){return r=t,void((n=e).classList?n.classList.add(r):function(e,t){return e.classList?!!t&&e.classList.contains(t):-1!==(" "+(e.className.baseVal||e.className)+" ").indexOf(" "+t+" ")}(n,r)||("string"===typeof n.className?n.className=n.className+" "+r:n.setAttribute("class",(n.className&&n.className.baseVal||"")+" "+r)));var n,r}))},mG=function(e,t){return e&&t&&t.split(" ").forEach((function(t){return r=t,void((n=e).classList?n.classList.remove(r):"string"===typeof n.className?n.className=rG(n.className,r):n.setAttribute("class",rG(n.className&&n.className.baseVal||"",r)));var n,r}))},gG=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),i=0;i{let{visible:t,content:n,direction:r,className:i}=e;const o=a.useRef(null),s="left"===r?void 0:r;return a.createElement(gG,{in:t,timeout:300,unmountOnExit:!0,classNames:jG("item-transition",{direction:s}),nodeRef:o},a.createElement("div",{ref:o,className:jG("item",{direction:s},i)},n))},PG=e=>{let{className:t,children:n,style:r,onVeilClick:i,onEscape:o,preventScrollBody:s=!0}=e,l=!1;a.Children.forEach(n,(e=>{const t=e;if(t.type===IG){Boolean(t.props.visible)&&(l=!0)}})),a.useEffect((()=>{function e(e){"Escape"===e.key&&(null===o||void 0===o||o())}return l&&window.addEventListener("keydown",e),()=>{window.removeEventListener("keydown",e)}}),[o,l]),Jx({enabled:s&&l});const c=a.useRef(null),u=a.useRef(null);return a.createElement(hG,{in:l,timeout:{enter:0,exit:300},mountOnEnter:!0,unmountOnExit:!0,nodeRef:c},(e=>{const o=l&&"entered"===e;return a.createElement("div",{ref:c,className:jG(null,t),style:r},a.createElement(gG,{in:o,timeout:300,unmountOnExit:!0,classNames:jG("veil-transition"),nodeRef:u},a.createElement("div",{ref:u,className:jG("veil"),onClick:i})),a.Children.map(n,(e=>{const t=e;if(t.type===IG){const e=Boolean(t.props.visible);return a.cloneElement(t,Object.assign(Object.assign({},t.props),{visible:e&&o}))}return e})))}))};Mi(".gn-all-pages-list-item{align-items:center;column-gap:var(--g-spacing-4);display:flex;height:40px;padding:0 var(--g-spacing-6);width:100%}.gn-all-pages-list-item__text{flex:1}.gn-all-pages-list-item__icon{color:var(--g-color-text-misc)}");const DG=(0,Ri.b)("all-pages-list-item"),AG=e=>{const{item:t,editMode:n,onToggle:r}=e,i=(0,a.useCallback)((e=>{e.stopPropagation(),e.preventDefault(),r()}),[r]);return a.createElement("div",{className:DG(),onClick:e=>{n&&(e.stopPropagation(),e.preventDefault())}},t.icon?a.createElement(we.J,{className:DG("icon"),data:t.icon,size:t.iconSize}):null,a.createElement("span",{className:DG("text")},t.title),n&&a.createElement(Ie.z,{onClick:i,view:t.hidden?"flat-secondary":"flat-action"},a.createElement(Ie.z.Icon,null,t.hidden?a.createElement(VV,null):a.createElement(GV,null))))};var RG=(0,mi.e)({en:{"menu-item.all-pages.title":"All pages","all-panel.menu.category.allOther":"All other","all-panel.resetToDefault":"Reset to default","all-panel.title.editing":"Editing","all-panel.title.main":"All pages"},ru:{"menu-item.all-pages.title":"\u0412\u0441\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b","all-panel.menu.category.allOther":"\u041e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435","all-panel.resetToDefault":"\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e","all-panel.title.editing":"\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435","all-panel.title.main":"\u0412\u0441\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b"}},"".concat(Ri.N).concat("AllPagesPanel"));const MG="all-pages";Mi(".gn-all-pages-panel{box-sizing:border-box;height:100%;min-width:300px;padding:var(--g-spacing-4) var(--g-spacing-6)}.gn-all-pages-panel__content{flex:1;margin:0 calc(var(--g-spacing-6)*-1);overflow:auto}.gn-all-pages-panel__category{padding:0 var(--g-spacing-6)}.gn-all-pages-panel__discoverable-feature-wrapper{display:flex}");const LG=(0,Ri.b)("all-pages-panel"),FG=e=>{const{startEditIcon:t,onEditModeChanged:n,className:r}=e,{menuItems:i,onMenuItemsChanged:o}=gV(),s=(0,a.useRef)(i);s.current=i;const[l,c]=(0,a.useState)(!1),u=(0,a.useCallback)((()=>{c((e=>!e))}),[]),d=(e=>{const t=(0,a.useMemo)((()=>{const t=e.filter((e=>"divider"!==e.type&&e.id!==MG));return t.sort(((e,t)=>"action"===e.type?1:"action"===t.type?-1:0)),t.reduce(((e,t)=>{const n=t.category||RG("all-panel.menu.category.allOther");return e[n]||(e[n]=[]),e[n].push(t),e}),{})}),[e]);return t})(i);(0,a.useEffect)((()=>{null===n||void 0===n||n(l)}),[l,n]);const h=(0,a.useCallback)((e=>{var t;null===(t=e.onItemClick)||void 0===t||t.call(e,e,!1)}),[]),p=(0,a.useCallback)((e=>{if(!o)return;const t=Object.assign(Object.assign({},e),{hidden:!e.hidden}),n=s.current.filter((e=>e.id!==MG));o(n.map((e=>e.id!==t.id?e:t)))}),[o]),f=(0,a.useCallback)(((e,t,n)=>a.createElement(AG,{item:e,editMode:l,onToggle:()=>p(e)})),[l,p]),m=(0,a.useCallback)((()=>{if(!o)return;const e=s.current.filter((e=>e.id!==MG));o(e.map((e=>Object.assign(Object.assign({},e),{hidden:!1}))))}),[o]);return a.createElement(Ai.k,{className:LG(null,r),gap:"5",direction:"column"},a.createElement(Ai.k,{gap:"4",alignItems:"center",justifyContent:"space-between"},a.createElement(Fi.x,{variant:"subheader-2"},RG(l?"all-panel.title.editing":"all-panel.title.main")),a.createElement(Ie.z,{selected:l,view:"normal",onClick:u},t||a.createElement(we.J,{data:tE}))),a.createElement(Ai.k,{className:LG("content"),gap:"5",direction:"column"},Object.keys(d).map((e=>a.createElement(Ai.k,{key:e,direction:"column",gap:"3"},a.createElement(Fi.x,{className:LG("category"),variant:"body-1",color:"secondary"},e),a.createElement(Sx,{virtualized:!1,filterable:!1,items:d[e],onItemClick:h,renderItem:f}))))),l&&a.createElement(Ie.z,{onClick:m},RG("all-panel.resetToDefault")))};let zG;zG="undefined"!==typeof window?window:"undefined"!==typeof self?self:n.g;let BG=null,UG=null;const HG=zG.clearTimeout,VG=zG.setTimeout,GG=zG.cancelAnimationFrame||zG.mozCancelAnimationFrame||zG.webkitCancelAnimationFrame,WG=zG.requestAnimationFrame||zG.mozRequestAnimationFrame||zG.webkitRequestAnimationFrame;function qG(e){let t,n,r,i,o,a,s;const l="undefined"!==typeof document&&document.attachEvent;if(!l){a=function(e){const t=e.__resizeTriggers__,n=t.firstElementChild,r=t.lastElementChild,i=n.firstElementChild;r.scrollLeft=r.scrollWidth,r.scrollTop=r.scrollHeight,i.style.width=n.offsetWidth+1+"px",i.style.height=n.offsetHeight+1+"px",n.scrollLeft=n.scrollWidth,n.scrollTop=n.scrollHeight},o=function(e){return e.offsetWidth!==e.__resizeLast__.width||e.offsetHeight!==e.__resizeLast__.height},s=function(e){if(e.target.className&&"function"===typeof e.target.className.indexOf&&e.target.className.indexOf("contract-trigger")<0&&e.target.className.indexOf("expand-trigger")<0)return;const t=this;a(this),this.__resizeRAF__&&BG(this.__resizeRAF__),this.__resizeRAF__=UG((function(){o(t)&&(t.__resizeLast__.width=t.offsetWidth,t.__resizeLast__.height=t.offsetHeight,t.__resizeListeners__.forEach((function(n){n.call(t,e)})))}))};let e=!1,l="";r="animationstart";const c="Webkit Moz O ms".split(" ");let u="webkitAnimationStart animationstart oAnimationStart MSAnimationStart".split(" "),d="";{const t=document.createElement("fakeelement");if(void 0!==t.style.animationName&&(e=!0),!1===e)for(let n=0;n div, .contract-trigger:before { content: " "; display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; z-index: -1; } .resize-triggers > div { background: #eee; overflow: auto; } .contract-trigger:before { width: 200%; height: 200%; }',o=n.head||n.getElementsByTagName("head")[0],a=n.createElement("style");a.id="detectElementResize",a.type="text/css",null!=e&&a.setAttribute("nonce",e),a.styleSheet?a.styleSheet.cssText=r:a.appendChild(n.createTextNode(r)),o.appendChild(a)}}(l),o.__resizeLast__={},o.__resizeListeners__=[],(o.__resizeTriggers__=l.createElement("div")).className="resize-triggers";const u=l.createElement("div");u.className="expand-trigger",u.appendChild(l.createElement("div"));const d=l.createElement("div");d.className="contract-trigger",o.__resizeTriggers__.appendChild(u),o.__resizeTriggers__.appendChild(d),o.appendChild(o.__resizeTriggers__),a(o),o.addEventListener("scroll",s,!0),r&&(o.__resizeTriggers__.__animationListener__=function(e){e.animationName===n&&a(o)},o.__resizeTriggers__.addEventListener(r,o.__resizeTriggers__.__animationListener__))}o.__resizeListeners__.push(c)}},removeResizeListener:function(e,t){if(l)e.detachEvent("onresize",t);else if(e.__resizeListeners__.splice(e.__resizeListeners__.indexOf(t),1),!e.__resizeListeners__.length){e.removeEventListener("scroll",s,!0),e.__resizeTriggers__.__animationListener__&&(e.__resizeTriggers__.removeEventListener(r,e.__resizeTriggers__.__animationListener__),e.__resizeTriggers__.__animationListener__=null);try{e.__resizeTriggers__=!e.removeChild(e.__resizeTriggers__)}catch(tD){}}}}}null==GG||null==WG?(BG=HG,UG=function(e){return VG(e,20)}):(BG=function(e){let[t,n]=e;GG(t),HG(n)},UG=function(e){const t=WG((function(){HG(n),e()})),n=VG((function(){GG(t),e()}),20);return[t,n]});class ZG extends a.Component{constructor(){super(...arguments),this.state={height:this.props.defaultHeight||0,scaledHeight:this.props.defaultHeight||0,scaledWidth:this.props.defaultWidth||0,width:this.props.defaultWidth||0},this._autoSizer=null,this._detectElementResize=null,this._parentNode=null,this._resizeObserver=null,this._timeoutId=null,this._onResize=()=>{this._timeoutId=null;const{disableHeight:e,disableWidth:t,onResize:n}=this.props;if(this._parentNode){const r=window.getComputedStyle(this._parentNode)||{},i=parseFloat(r.paddingLeft||"0"),o=parseFloat(r.paddingRight||"0"),a=parseFloat(r.paddingTop||"0"),s=parseFloat(r.paddingBottom||"0"),l=this._parentNode.getBoundingClientRect(),c=l.height-a-s,u=l.width-i-o,d=this._parentNode.offsetHeight-a-s,h=this._parentNode.offsetWidth-i-o;(e||this.state.height===d&&this.state.scaledHeight===c)&&(t||this.state.width===h&&this.state.scaledWidth===u)||(this.setState({height:d,width:h,scaledHeight:c,scaledWidth:u}),"function"===typeof n&&n({height:d,scaledHeight:c,scaledWidth:u,width:h}))}},this._setRef=e=>{this._autoSizer=e}}componentDidMount(){const{nonce:e}=this.props;this._autoSizer&&this._autoSizer.parentNode&&this._autoSizer.parentNode.ownerDocument&&this._autoSizer.parentNode.ownerDocument.defaultView&&this._autoSizer.parentNode instanceof this._autoSizer.parentNode.ownerDocument.defaultView.HTMLElement&&(this._parentNode=this._autoSizer.parentNode,null!=this._parentNode&&("undefined"!==typeof ResizeObserver?(this._resizeObserver=new ResizeObserver((()=>{this._timeoutId=setTimeout(this._onResize,0)})),this._resizeObserver.observe(this._parentNode)):(this._detectElementResize=qG(e),this._detectElementResize.addResizeListener(this._parentNode,this._onResize)),this._onResize()))}componentWillUnmount(){this._parentNode&&(this._detectElementResize&&this._detectElementResize.removeResizeListener(this._parentNode,this._onResize),null!==this._timeoutId&&clearTimeout(this._timeoutId),this._resizeObserver&&(this._resizeObserver.observe(this._parentNode),this._resizeObserver.disconnect()))}render(){const{children:e,defaultHeight:t,defaultWidth:n,disableHeight:r=!1,disableWidth:i=!1,nonce:o,onResize:s,style:l={},tagName:c="div",...u}=this.props,{height:d,scaledHeight:h,scaledWidth:p,width:f}=this.state,m={overflow:"visible"},g={};let v=!1;return r||(0===d&&(v=!0),m.height=0,g.height=d,g.scaledHeight=h),i||(0===f&&(v=!0),m.width=0,g.width=f,g.scaledWidth=p),(0,a.createElement)(c,{ref:this._setRef,style:{...m,...l},...u},!v&&e(g))}}const YG={active:!1,activeIndex:void 0,hideCollapseItemTooltip:!1,lastClickedItemIndex:void 0,setValue:()=>{}},KG=a.createContext(YG);class QG extends a.PureComponent{constructor(){super(...arguments),this.state=Object.assign({},YG),this.setValue=e=>{this.setState(Object.assign({},e))}}render(){const{children:e}=this.props;return a.createElement(KG.Provider,{value:Object.assign(Object.assign({},this.state),{setValue:this.setValue})},e)}}Mi('.g-root_theme_dark .gn-multiple-tooltip,.g-root_theme_dark-hc .gn-multiple-tooltip{--multiple-tooltip-item-active-bg-color:var(--g-color-base-float-heavy);--multiple-tooltip-backdrop-background:linear-gradient(90deg,var(--g-color-base-background) 50%,transparent);--multiple-tooltip-backdrop-filter:blur(16px)}.g-root_theme_light .gn-multiple-tooltip,.g-root_theme_light-hc .gn-multiple-tooltip{--multiple-tooltip-item-active-bg-color:var(--g-color-base-float-heavy);--multiple-tooltip-backdrop-background:linear-gradient(90deg,var(--g-color-base-background) 50%,transparent);--multiple-tooltip-backdrop-filter:blur(12px)}.gn-multiple-tooltip.gn-multiple-tooltip{background-color:transparent;box-shadow:none}.gn-multiple-tooltip:before{background:var(--multiple-tooltip-backdrop-background);box-shadow:none;content:"";filter:var(--multiple-tooltip-backdrop-filter);height:100%;opacity:.7;position:absolute;width:100%;z-index:-1}.gn-multiple-tooltip__items-container{align-items:flex-start;display:flex;flex-direction:column;padding:32px 40px 32px 12px}.gn-multiple-tooltip__item{align-items:center;background-color:var(--g-color-base-float-medium);border-radius:5px;box-sizing:border-box;color:var(--g-color-text-light-primary);display:flex;height:30px;margin-bottom:5px;padding:8px 12px;position:relative;transition:transform .1s ease-in-out}.gn-multiple-tooltip__item:first-child,.gn-multiple-tooltip__item:not(.gn-multiple-tooltip__item_divider)+.gn-multiple-tooltip__item:not(.gn-multiple-tooltip__item_divider){margin-top:5px}.gn-multiple-tooltip__item_divider+.gn-multiple-tooltip__item:not(.gn-multiple-tooltip__item_divider){margin-top:4px}.gn-multiple-tooltip__item_active{background-color:var(--multiple-tooltip-item-active-bg-color);transform:translateX(-12px)}.gn-multiple-tooltip__item_divider{height:15px;margin:0;visibility:hidden}');const XG=(0,Ri.b)("multiple-tooltip"),$G=[-32,4],JG=[{name:"preventOverflow",enabled:!1}],eW=e=>{let{items:t,open:n,anchorRef:r,placement:i}=e;const{activeIndex:o,hideCollapseItemTooltip:s}=a.useContext(KG),l=void 0===o?null:t[o];return a.createElement(ti,{open:n,anchorRef:r,placement:i,offset:$G,contentClassName:XG(null),modifiers:JG,disableLayer:!0},a.createElement("div",{className:XG("items-container")},t.filter((e=>{let{type:t="regular",id:n}=e;return!s||n!==_V&&"action"!==t})).map(((e,t)=>"divider"===e.type?a.createElement("div",{className:XG("item",{divider:!0}),key:t},e.title):a.createElement("div",{className:XG("item",{active:e===l}),key:t},e.title)))))};Mi(".gn-composite-bar{flex:1 0 auto;min-height:40px;width:100%}.gn-composite-bar .gn-composite-bar__root-menu-item[class]{background-color:transparent}");const tW=(0,Ri.b)("composite-bar"),nW=e=>{let{type:t,items:n,onItemClick:r,collapseItems:i,multipleTooltip:o=!1}=e;const s=(0,a.useRef)(null),l=(0,a.useRef)(null),{setValue:c,active:u,activeIndex:d,lastClickedItemIndex:h}=(0,a.useContext)(KG),{compact:p}=bV();a.useEffect((()=>{function e(){o&&u&&c({active:!1})}return window.addEventListener("blur",e),()=>{window.removeEventListener("blur",e)}}),[o,u,c]);const f=(0,a.useCallback)((e=>{o&&p&&!u&&document.hasFocus()&&d!==h&&e.clientX<=56&&(null===c||void 0===c||c({active:!0}))}),[o,p,u,d,h,c]),m=(0,a.useCallback)((()=>{o&&u&&document.hasFocus()&&(null===c||void 0===c||c({active:!1,lastClickedItemIndex:void 0}))}),[o,u,c]),g=(0,a.useCallback)((e=>()=>{if(o&&document.hasFocus()){let t=u;if(u||e===h||(t=!0),d===e&&u===t)return;c({activeIndex:e,active:t})}}),[o,u,h,d,c]),v=(0,a.useCallback)((()=>{var e;p&&document.hasFocus()&&(null===(e=s.current)||void 0===e||e.activateItem(void 0),!o||void 0===d&&void 0===h||c({activeIndex:void 0,lastClickedItemIndex:void 0}))}),[d,p,h,o,c]),y=(0,a.useCallback)((e=>(t,n,i)=>{p&&o&&e!==h&&t.id!==_V&&c({lastClickedItemIndex:e,active:!1}),null===r||void 0===r||r(t,n,i)}),[p,h,o,r,c]);return a.createElement(a.Fragment,null,a.createElement("div",{ref:l,onMouseEnter:f,onMouseLeave:m},a.createElement(Sx,{ref:s,items:n,selectedItemIndex:"menu"===t?NV(n):void 0,itemHeight:TV,itemsHeight:OV,itemClassName:tW("root-menu-item"),virtualized:!1,filterable:!1,sortable:!1,renderItem:(e,t,n)=>{const r=kV(e)?{item:e}:e,s=kV(e)?!o:e.enableTooltip;return a.createElement(AV,Object.assign({},r,{enableTooltip:s,onMouseEnter:g(n),onMouseLeave:v,onItemClick:y(n),collapseItems:i}))}})),"menu"===t&&o&&a.createElement(eW,{open:p&&u,anchorRef:l,placement:["right-start"],items:n}))},rW=e=>{let t,{type:n,items:r,menuMoreTitle:i,onItemClick:o,multipleTooltip:s=!1}=e;if(0===r.length)return null;if("menu"===n){const e=function(e){const t=function(e){const t=[];for(const n of e)(n.pinned||"divider"===n.type&&t.length>0&&"divider"!==t[t.length-1].type)&&t.push(n);return t}(e),n=e.filter((e=>e.afterMoreButton));return OV(t)+OV(n)+(t.length===e.length?0:xV)}(r),n=function(e){return{id:_V,title:e,icon:k_,iconSize:18}}(i);t=a.createElement("div",{className:tW({autosizer:!0}),style:{minHeight:e}},0!==r.length&&a.createElement(ZG,null,(e=>{const t=Number.isNaN(e.width)?0:e.width,i=Number.isNaN(e.height)?0:e.height,{listItems:l,collapseItems:c}=function(e,t,n){var r,i,o;const a=e.filter((e=>e.afterMoreButton)),s=e.filter((e=>!e.afterMoreButton)),l=[...s,...a],c=OV(l);if(c<=t)return{listItems:l,collapseItems:[]};const u=TV(n);l.splice(s.length,0,n);const d=[];let h=c+u,p=l.length;for(;h>t&&0!==p;){p--;const e=l[p];e.pinned||e.id===_V||e.afterMoreButton||("divider"!==e.type?(h-=TV(e),d.unshift(...l.splice(p,1))):p+1a.createElement(t,Object.assign({},e));return n.displayName=e,n}("NotIcon",we.J),dW=()=>{const{onChangeCompact:e,compact:t,expandTitle:n,collapseTitle:r}=gV(),i=(0,a.useCallback)((()=>{null===e||void 0===e||e(!t)}),[t,e]),o=t?n||sW("button_expand"):r||sW("button_collapse");return a.createElement(Ie.z,{className:(0,BV.b)("collapse-button",{compact:t}),view:"flat",pin:"brick-brick",onClick:i,title:o},a.createElement(uW,{data:cW,className:(0,BV.b)("collapse-icon"),width:"16",height:"10"}))};Mi(".gn-logo{height:40px}.gn-logo,.gn-logo__logo-btn-place{align-items:center;display:flex;flex-shrink:0}.gn-logo__logo-btn-place{cursor:pointer;justify-content:center}.gn-logo__logo-btn-place .g-button:before{background-color:transparent}.gn-logo__logo{cursor:pointer;font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height);vertical-align:middle}.gn-logo__logo-link,.gn-logo__logo-link:active,.gn-logo__logo-link:focus,.gn-logo__logo-link:hover,.gn-logo__logo-link:visited{color:inherit;outline:none;text-decoration:none}.g-root .gn-logo__btn-logo.button2_theme_flat.button2_hovered_yes:before{background-color:transparent}");const hW=(0,Ri.b)("logo"),pW=e=>{let{text:t,icon:n,iconSrc:r,iconClassName:i,iconSize:o=24,textSize:s=15,href:l,target:c="_self",wrapper:u,onClick:d,compact:h,className:p,buttonWrapperClassName:f,buttonClassName:m,"aria-label":g,"aria-labelledby":v}=e;const y="function"===typeof u;let b;r?b=a.createElement(Ie.z.Icon,{className:i},a.createElement("img",{alt:"logo icon",src:r,width:o,height:o})):n&&(b=a.createElement(we.J,{data:n,size:o,className:i}));const x=a.createElement(Ie.z,{view:"flat",size:"l",className:hW("btn-logo",m),component:y?"span":void 0,onClick:d,target:c,rel:"_self"===c?void 0:"noreferrer",href:l,extraProps:{"aria-label":g,"aria-labelledby":v}},b);let w;return w="function"===typeof t?t():a.createElement("div",{className:hW("logo"),style:{fontSize:s}},t),a.createElement("div",{className:hW(null,p)},a.createElement("div",{className:hW("logo-btn-place",f)},y?u(x,Boolean(h)):x),!h&&(y?a.createElement("div",{onClick:d},u(w,Boolean(h))):a.createElement("a",{href:null!==l&&void 0!==l?l:"/",target:c,rel:"_self"===c?void 0:"noreferrer",className:hW("logo-link"),onClick:d},w)))},fW=[],mW=()=>{const{logo:e,onItemClick:t,onClosePanel:n,headerDecoration:r,subheaderItems:i}=gV(),{compact:o}=bV(),{onClick:s}=e,l=(0,a.useCallback)((e=>{null===n||void 0===n||n(),null===s||void 0===s||s(e)}),[n,s]);return a.createElement("div",{className:(0,BV.b)("header",{"with-decoration":r})},a.createElement(pW,Object.assign({},e,{onClick:l,compact:o,buttonWrapperClassName:(0,BV.b)("logo-button-wrapper"),buttonClassName:(0,BV.b)("logo-button")})),a.createElement(rW,{type:"subheader",items:i||fW,onItemClick:t}),a.createElement(we.J,{data:ZV,className:(0,BV.b)("header-divider"),width:56,height:29}))},gW=()=>{const{panelItems:e,onClosePanel:t,size:n}=gV();return e?a.createElement(PG,{className:(0,BV.b)("panels"),onVeilClick:t,onEscape:t,style:{left:n}},e.map((e=>a.createElement(IG,Object.assign({key:e.id},e))))):null},vW=a.forwardRef(((e,t)=>{const{size:n,onItemClick:r,headerDecoration:i,multipleTooltip:o,menuMoreTitle:s,renderFooter:l,compact:c,customBackground:u,customBackgroundClassName:d,className:h,hideCollapseButton:p}=gV(),f=(()=>{const{menuItems:e,allPagesIsAvailable:t}=gV();return(0,a.useMemo)((()=>{if(!t)return e;let n=0;return e.filter(((e,t,r)=>!e.hidden&&(!(t>0&&"divider"===e.type)||"divider"!==r[n].type&&!r[n].hidden)&&(n=t,!0)))}),[t,e])})(),m=(0,a.useRef)(null);return a.useEffect((()=>{Ct(t,m.current)}),[t]),a.createElement(a.Fragment,null,a.createElement("div",{className:(0,BV.b)("aside",h),style:{width:n}},a.createElement("div",{className:(0,BV.b)("aside-popup-anchor"),ref:m}),a.createElement("div",{className:(0,BV.b)("aside-content",{"with-decoration":i})},u&&a.createElement("div",{className:(0,BV.b)("aside-custom-background",d)},u),a.createElement(mW,null),(null===f||void 0===f?void 0:f.length)?a.createElement(rW,{type:"menu",items:f,menuMoreTitle:null!==s&&void 0!==s?s:sW("label_more"),onItemClick:r,multipleTooltip:o}):a.createElement("div",{className:(0,BV.b)("menu-items")}),a.createElement("div",{className:(0,BV.b)("footer")},null===l||void 0===l?void 0:l({size:n,compact:Boolean(c),asideRef:m})),!p&&a.createElement(dW,null))),a.createElement(gW,null))}));var yW;vW.displayName="FirstPanel",function(e){e.AllPages="all-pages"}(yW||(yW={}));const bW=[],xW=e=>{const{size:t,onClosePanel:n,menuItems:r,panelItems:i,onMenuItemsChanged:o}=e,[s,l]=(0,a.useState)(),c=a.useMemo((()=>({id:MG,title:RG("menu-item.all-pages.title"),tooltipText:RG("menu-item.all-pages.title"),icon:k_})),[]),u=Boolean(o)&&(!r||(null===r||void 0===r?void 0:r.length)>0);(0,a.useEffect)((()=>{(null===i||void 0===i?void 0:i.some((e=>e.visible)))&&l(void 0)}),[i]);const d=(0,a.useCallback)((()=>{l(void 0),null===n||void 0===n||n()}),[n]),h=(0,a.useCallback)(((e,t,n)=>{var r;e.id===c.id?l((e=>e===yW.AllPages?void 0:yW.AllPages)):d(),null===(r=e.onItemClick)||void 0===r||r.call(e,e,t,n)}),[d,c]),p=(0,a.useMemo)((()=>u?[...r||bW,Object.assign(Object.assign({},c),{current:s===yW.AllPages})]:r||bW),[u,r,s,c]),f=(0,a.useMemo)((()=>u?[...i||[],{id:yW.AllPages,content:a.createElement(FG,null),visible:s===yW.AllPages}]:i),[u,i,s]);return Object.assign(Object.assign({},e),{onClosePanel:d,allPagesIsAvailable:u,menuItems:p,panelItems:f,size:t,onItemClick:h})},wW=a.forwardRef(((e,t)=>{const{size:n,compact:r}=bV(),i=xW(Object.assign({size:n,compact:r},e));return a.createElement(mV,{value:i},a.createElement(vW,{ref:t}))}));wW.displayName="PageLayoutAside";const SW=a.forwardRef(((e,t)=>{var{compact:n,className:r,topAlert:i}=e,o=Je(e,["compact","className","topAlert"]);return a.createElement(HV,{compact:n,className:r,topAlert:i},a.createElement(wW,Object.assign({ref:t},o)),a.createElement(HV.Content,{renderContent:o.renderContent}))}));var _W;function CW(){return CW=Object.assign?Object.assign.bind():function(e){for(var t=1;ts(!0)},enableTooltip:!o,popupAnchor:n,popupVisible:o,onClosePopup:()=>s(!1),renderPopupContent:()=>(0,Le.jsx)("div",{className:TW("ydb-user-wrapper"),children:i})})}var NW;!function(e){e.UserSettings="UserSettings"}(NW||(NW={}));const kW=(new class{constructor(){this.type=void 0,this.entities={}}set(e,t){return this.entities[e]=t,this}get(e){return this.entities[e]}register(e,t){return this.entities[e]=t,this}}).register("StaffCard",(function(e){let{children:t}=e;return(0,Le.jsx)(a.Fragment,{children:t})})).register("AsideNavigation",(function(e){const t=_a(),[n,r]=a.useState(),{user:i}=Do((e=>e.authentication)),[o,s]=Mo(Lo.Ac);return(0,Le.jsx)(a.Fragment,{children:(0,Le.jsx)(SW,{logo:{text:"YDB",icon:Js,onClick:()=>t.push("/")},menuItems:e.menuItems,compact:o,onChangeCompact:s,className:TW(),renderContent:()=>e.content,renderFooter:t=>{let{compact:o,asideRef:s}=t;return(0,Le.jsxs)(a.Fragment,{children:[(0,Le.jsx)(LV,{compact:o,item:{id:"documentation",title:os("navigation-item.documentation"),icon:No,onItemClick:()=>{window.open("https://ydb.tech/docs","_blank","noreferrer")}}}),(0,Le.jsx)(LV,{item:{id:"user-settings",title:os("navigation-item.settings"),icon:tE,current:n===NW.UserSettings,onItemClick:()=>{r(n===NW.UserSettings?void 0:NW.UserSettings)}},compact:o}),(0,Le.jsx)(OW,{isCompact:o,popupAnchor:s,ydbUser:{login:i},children:e.ydbInternalUser})]})},panelItems:[{id:"user-settings",visible:n===NW.UserSettings,content:e.settings}],onClosePanel:()=>{r(void 0)}})})})).register("ErrorBoundary",Xe);function jW(e){let{store:t,history:n,componentsRegistry:r=kW,children:i}=e;return(0,Le.jsx)($,{children:(0,Le.jsx)(ae.zt,{store:t,children:(0,Le.jsx)(ia,{history:n,children:(0,Le.jsx)(uc,{adapter:hV,children:(0,Le.jsx)(IW,{children:(0,Le.jsx)(ze,{registry:r,children:i})})})})})})}function IW(e){let{children:t}=e;const[n]=Mo(Lo.bw);return(0,Le.jsx)(dV.f,{theme:n,children:t})}const PW=(0,ae.$j)((function(e){return{singleClusterMode:e.singleClusterMode}}))((function(e){let{store:t,history:n,singleClusterMode:r,children:i,userSettings:o=Xa}=e;return(0,Le.jsxs)(jW,{store:t,history:n,children:[(0,Le.jsx)(oe,{defaultTitle:"YDB Monitoring",titleTemplate:"%s \u2014 YDB Monitoring"}),(0,Le.jsx)(uV,{children:(0,Le.jsx)(ms,{userSettings:o,children:(0,Le.jsxs)(Qe,{children:[(0,Le.jsx)(sV,{singleClusterMode:r,children:i}),(0,Le.jsx)("div",{id:"fullscreen-root"})]})})}),(0,Le.jsx)(Vs,{})]})}));var DW,AW=n(9416);function RW(e){let{monitoring:t,dbName:n,dbType:r,clusterName:i}=e;try{const e=LW(t);if(e){var o,a;const t=null!==(o=e.host)&&void 0!==o?o:"cluster",s=null!==(a=e.slot)&&void 0!==a?a:"static",l=e.cluster_name||i||"",c=new URL(e.monitoring_url);if(!c.search){const t=r===AW.Hi.Serverless?e.serverless_dashboard:e.dedicated_dashboard;c.pathname+="/".concat(t)}return c.searchParams.has("p.cluster")||c.searchParams.set("p.cluster",l),c.searchParams.set("p.host",t),c.searchParams.set("p.slot",s),c.searchParams.set("p.database",n),c.toString()}}catch{}return""}function MW(e,t){try{const n=LW(e);if(n){const e=n.cluster_dashboard,r=n.cluster_name||t||"",i=new URL(n.monitoring_url);return!i.search&&e&&(i.pathname+="/".concat(e,"/view")),i.searchParams.has("p.cluster")||i.searchParams.set("p.cluster",r),i.searchParams.set("p.database","-"),i.toString()}}catch{}return""}function LW(e){try{const t=JSON.parse(e);if("object"===typeof t&&"monitoring_url"in t)return t}catch{}}function FW(){return FW=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const n=null!==(r=e)&&void 0!==r&&r.startsWith("vm-")?"u-".concat(r):r;var r;const i=IT(t).proxy;return i?VW+i+"/"+n:VW+n},WW=(e,t,n)=>{const{Host:r,Endpoints:i,NodeId:o}=e;if(n&&o){const e=jT(t);return"".concat(e,"/node/").concat(o,"/")}if(r&&i){var a;const e=null===(a=i.find((e=>"http-mon"===e.Name)))||void 0===a?void 0:a.Address;if(!e||!r)return null;return GW(r+e,t)+"/"}return null},qW=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:h_.y3,t=arguments.length>1?arguments[1]:void 0;return{getNodeRef:function(){return WW(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},null!==e&&void 0!==e?e:"",t)}}};function ZW(){const e=Ca(),{clusterName:t}=(0,Ta.mB)(e),{data:n}=GE.W1.useGetClustersListQuery(void 0),r=a.useMemo((()=>(n||[]).find((e=>e.name===t))),[n,t]),{solomon:i,balancer:o,versions:s,cluster:l}=r||{},[c]=Mo(Lo.IG);return{monitoring:i,balancer:o,versions:s,cluster:l,useClusterBalancerAsBackend:c,additionalNodesProps:qW(o,c)}}const YW=Me("extended-cluster"),KW=e=>{const t=PT(e);return{label:"Balancer",value:(0,Le.jsxs)("div",{className:YW("balancer"),children:[t,(0,Le.jsx)(OT,{text:t,size:"s",className:YW("clipboard-button")})]})}},QW=(e,t,n,r)=>{const i={};if(t&&r){const n=r(t,e);n&&(i.links=[{title:"Monitoring",url:n}])}return n&&(i.info=[KW(n)]),i},XW=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{getVersionToColorMap:()=>(0,HW.n$)((0,HW.kn)(e))}},$W=(e,t,n,r,i)=>{const o={prepareTenantBackend:e=>{if(n){if(r)return jT(n);if(e)return GW(e,n)}}};return t&&i&&(o.getMonitoringLink=(n,r)=>{if(n&&r){const o=i({monitoring:t,dbName:n,dbType:r,clusterName:e});return(0,Le.jsx)(UW,{href:o})}return null}),o};function JW(e){let{component:t,getMonitoringLink:n,getMonitoringClusterLink:r}=e;const{monitoring:i,balancer:o,versions:a,cluster:s,useClusterBalancerAsBackend:l,additionalNodesProps:c}=ZW();return(0,Le.jsx)("div",{className:YW(),children:(0,Le.jsx)(t,{additionalClusterProps:QW(null===s||void 0===s?void 0:s.Name,i,o,r),additionalVersionsProps:XW(a),additionalTenantsProps:$W(null===s||void 0===s?void 0:s.Name,i,o,l,n),additionalNodesProps:c})})}function eq(e){let{component:t}=e;const{additionalNodesProps:n}=ZW();return(0,Le.jsx)(t,{additionalNodesProps:n})}function tq(e){let{component:t,getMonitoringLink:n}=e;const{additionalNodesProps:r,cluster:i,monitoring:o}=ZW(),a={getMonitoringLink:(e,t)=>{if(o&&e&&t&&n){const r=n({monitoring:o,dbName:e,dbType:t,clusterName:null===i||void 0===i?void 0:i.Name});return r?(0,Le.jsx)(UW,{href:r,visible:!0}):null}return null}};return(0,Le.jsx)(t,{additionalTenantProps:a,additionalNodesProps:r})}const nq=JSON.parse('{"settings.useClusterBalancerAsBackend.title":"Use cluster balancer as backend","settings.useClusterBalancerAsBackend.popover":"By default random cluster node is used as backend. It causes saved links to become invalid after some time, when node is restarted. Using balancer as backend fixes it"}'),rq=JSON.parse('{"settings.useClusterBalancerAsBackend.title":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0431\u0430\u043b\u0430\u043d\u0441\u0435\u0440 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u043a\u0430\u043a \u0431\u044d\u043a\u0435\u043d\u0434","settings.useClusterBalancerAsBackend.popover":"\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0431\u044d\u043a\u0435\u043d\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0439 \u0443\u0437\u0435\u043b \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430. \u042d\u0442\u043e \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u043d\u044b\u0435 \u0441\u0441\u044b\u043b\u043a\u0438 \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0442\u0441\u044f \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u044b\u043c\u0438 \u0441\u043f\u0443\u0441\u0442\u044f \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f, \u043a\u043e\u0433\u0434\u0430 \u0443\u0437\u0435\u043b \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u0430\u043b\u0430\u043d\u0441\u0435\u0440\u0430 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u044d\u0442\u043e"}'),iq=(0,We.wZ)("ydb-extended-user-settings",{ru:rq,en:nq}),oq=Xa;function aq(e){let{store:t,history:n,getMonitoringLink:r=RW,getMonitoringClusterLink:i=MW,userSettings:o=oq,children:a}=e;return(0,Le.jsxs)(PW,{store:t,history:n,userSettings:o,children:[(0,Le.jsx)(qH,{children:e=>{let{component:t}=e;return(0,Le.jsx)(JW,{component:t,getMonitoringLink:r,getMonitoringClusterLink:i})}}),(0,Le.jsx)(YH,{children:e=>{let{component:t}=e;return(0,Le.jsx)(eq,{component:t})}}),(0,Le.jsx)(ZH,{children:e=>{let{component:t}=e;return(0,Le.jsx)(tq,{component:t,getMonitoringLink:r})}}),a]})}oq[2].sections[0].settings.push({title:iq("settings.useClusterBalancerAsBackend.title"),helpPopoverContent:iq("settings.useClusterBalancerAsBackend.popover"),settingKey:Lo.IG});var sq=n(43066),lq=n(63660),cq=n(90058)},90058:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});const r=e=>{e&&e instanceof Function&&n.e(599).then(n.bind(n,40599)).then((t=>{let{getCLS:n,getFID:r,getFCP:i,getLCP:o,getTTFB:a}=t;n(e),r(e),i(e),o(e),a(e)}))}},54665:(e,t,n)=>{"use strict";n.d(t,{By:()=>v,Fz:()=>m,ZP:()=>u,ax:()=>p,ds:()=>g,mB:()=>d,vF:()=>f});var r=n(85198),i=n.n(r),o=n(7856),a=n(63041),s=n.n(a),l=n(27102);const c={clusters:"/".concat("clusters"),cluster:"/".concat("cluster","/:activeTab?"),tenant:"/".concat("tenant"),node:"/".concat("node","/:id/:activeTab?"),pDisk:"/".concat("pDisk"),vDisk:"/".concat("vDisk"),tablet:"/".concat("tablet","/:id"),tabletsFilters:"/tabletsFilters",auth:"/auth"},u=c,d=e=>s().parse(e.search,{ignoreQueryPrefix:!0}),h=e=>{let t=e;const n=/:\d{3,5}/g,r=e.match(n);if(r){const i=r[0];t=e.replace(n,":\\"+i.slice(1))}return t};function p(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n;const a=Boolean(n.backend);l.y3&&!a&&l.dx&&(r={...n,backend:l.y3});const c=Boolean(n.clusterName);l.qw&&!c&&l.dx&&(r={...r,clusterName:l.qw});const u=i()(r)?"":"?".concat(s().stringify(r,{encode:!1})),d=h(e);return"".concat((0,o.compile)(d)(t)).concat(u)}const f=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return p(window.location.pathname,void 0,e)};function m(e){const{pathname:t,search:n,hash:r}=new URL(e,"http://localhost");return{pathname:t,search:n,hash:r}}function g(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return p(c.pDisk,void 0,{...n,nodeId:t,pDiskId:e})}function v(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return p(c.vDisk,void 0,{...r,nodeId:n,pDiskId:t,vDiskSlotId:e})}},43066:(e,t,n)=>{"use strict";n.d(t,{su:()=>m,Iy:()=>g,LC:()=>v});var r=n(63585),i=n.n(r),o=n(52369),a=n(27208);class s{constructor(){var e=this;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.setApiEndpoint=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";"undefined"!==typeof location&&(t=t.replace("%CURRENT_HOST%",location.host)),e.apiEndpoint=t},this.setCSRFToken=e=>{this._axios.defaults.headers.post["X-CSRF-Token"]=e,this._axios.defaults.headers.put["X-CSRF-Token"]=e,this._axios.defaults.headers.delete["X-CSRF-Token"]=e},this.setDefaultHeader=e=>{let{name:t,value:n,methods:r}=e;const i=this._axios.defaults.headers;Array.isArray(r)?r.forEach((e=>{const r=i[e];r&&r instanceof o.uu&&(r[t]=n)})):i.common[t]=n},this.apiPath=e=>"".concat(this.apiEndpoint).concat(e);const{config:n={},apiEndpoint:r="/api",collector:l={}}=t,c=Object.assign({xsrfCookieName:"",timeout:s.DEFAULT_TIMEOUT,withCredentials:!0},n);this._axios=a.Z.create(c),this._axios.defaults.headers=i()(this._axios.defaults.headers),this.requestTokens={},this.setApiEndpoint(r),this.collectorSettings=l,this.collector={errors:[],requests:[]}}collectRequest(e){let{method:t,url:n,data:r,requestStart:i,response:o,responseError:a,error:s=!1,cancelled:l=!1}=e;const{collectErrors:c,collectRequests:u}=this.collectorSettings;if(!c&&!u)return;const{responseText:d="",responseURL:h=n}=o&&o.request||{},p=s&&a instanceof Error?a.message:"",f={method:t,url:h,time:{start:i,end:Number(new Date)},status:o&&o.status,size:d.length,requestData:r&&JSON.stringify(r,null,2)||"",responseData:o&&o.data&&JSON.stringify(o.data,null,2)||p,isError:s,isCancelled:l};c&&s&&(this.collector.errors=[...this.collector.errors,f].slice(-c)),u&&(this.collector.requests=[...this.collector.requests,f].slice(-u))}getCollectedRequests(){return{errors:[...this.collector.errors],requests:[...this.collector.requests]}}async request(e){const{method:t,url:n,data:r=null,params:i,options:o={},retries:s=0}=e,l=o.requestConfig||{},{concurrentId:c,collectRequest:u=!0,timeout:d,headers:h,onDownloadProgress:p}=o;c&&(this.cancelRequest(c),l.cancelToken=this.createRequestToken(c)),h&&(l.headers=h),"undefined"!==typeof d&&(l.timeout=d);const f=Number(new Date),m={method:t,url:n,data:r,params:i,onDownloadProgress:p};try{const e=await this._axios.request(Object.assign(Object.assign({},l),m));return this.clearRequestToken(c),u&&this.collectRequest(Object.assign(Object.assign({},m),{requestStart:f,response:e})),e.data}catch(g){if(a.Z.isCancel(g))throw{isCancelled:!0,error:g};let t;return this.clearRequestToken(c),t=g.response?g.response:"function"===typeof g.toJSON?g.toJSON():g,u&&this.collectRequest(Object.assign(Object.assign({},m),{requestStart:f,response:t,error:!0,cancelled:a.Z.isCancel(g),responseError:g})),this.handleRequestError(t,(()=>this.request(Object.assign(Object.assign({},e),{retries:s+1}))),s,new Error(g instanceof Error?g.message:"Unknown error"))}}cancelRequest(e){e&&this.requestTokens[e]&&this.requestTokens[e].cancel("Concurrent request")}get(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request({method:"GET",url:e,params:t,options:n})}post(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.request({method:"POST",url:e,data:t,params:n,options:r})}put(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.request({method:"PUT",url:e,data:t,params:n,options:r})}patch(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.request({method:"PATCH",url:e,data:t,params:n,options:r})}delete(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.request({method:"DELETE",url:e,data:t,params:n,options:r})}head(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request({method:"HEAD",url:e,params:t,options:n})}handleRequestError(e){throw e}createRequestToken(e){if(e){const t=a.Z.CancelToken.source();return this.requestTokens[e]=t,t.token}}clearRequestToken(e){e&&this.requestTokens[e]&&delete this.requestTokens[e]}}s.DEFAULT_TIMEOUT=6e4;var l=n(27102),c=n(52317),u=n(48169),d=n(27070);const h=e=>{const{cluster:t={}}=e,{cluster:n,balancer:r,solomon:i}=t;return{...n,Name:t.title||(null===n||void 0===n?void 0:n.Name),Balancer:r,Solomon:i}},p=e=>({TenantInfo:null===e||void 0===e?void 0:e.databases});var f=n(18193);class m extends s{getPath(e){return"".concat(null!==l.y3&&void 0!==l.y3?l.y3:"").concat(e)}getClusterInfo(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/cluster"),{name:e,tablets:!0},{concurrentId:t||"getClusterInfo",requestConfig:{signal:n}})}getClusterNodes(){let{concurrentId:e,signal:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.get(this.getPath("/viewer/json/sysinfo"),{},{concurrentId:e||"getClusterNodes",requestConfig:{signal:t}})}getNodeInfo(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/sysinfo?enums=true"),{node_id:e},{concurrentId:t,requestConfig:{signal:n}})}getTenants(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/tenantinfo"),{tablets:1,storage:1,cluster_name:e},{concurrentId:t,requestConfig:{signal:n}})}getTenantInfo(e){let{path:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/tenantinfo"),{path:t,tablets:!0,storage:!0},{concurrentId:n||"getTenantInfo|".concat(t),requestConfig:{signal:r}})}getNodes(e){let{visibleEntities:t,type:n="any",tablets:r=!0,sortOrder:i,sortValue:o,...a}=e,{concurrentId:s,signal:l}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const c=(0,d.A)(o,i);return this.get(this.getPath("/viewer/json/nodes?enums=true"),{with:t,type:n,tablets:r,sort:c,...a},{concurrentId:s,requestConfig:{signal:l}})}getCompute(e){let{sortOrder:t,sortValue:n,...r}=e,{concurrentId:i,signal:o}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const a=(0,d.A)(n,t);return this.get(this.getPath("/viewer/json/compute?enums=true"),{sort:a,...r},{concurrentId:i,requestConfig:{signal:o}})}getStorageInfo(e){let{tenant:t,visibleEntities:n,nodeId:r,poolName:i,groupId:o,sortOrder:a,sortValue:s,...l}=e,{concurrentId:c,signal:u}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const h=(0,d.A)(s,a);return this.get(this.getPath("/viewer/json/storage?enums=true"),{tenant:t,node_id:r,pool:i,group_id:o,with:n,sort:h,...l},{concurrentId:c,requestConfig:{signal:u}})}getPDiskInfo(e){let{nodeId:t,pDiskId:n}=e,{concurrentId:r,signal:i}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/pdiskinfo?enums=true"),{filter:"(NodeId=".concat(t).concat(n?";PDiskId=".concat(n):"",")")},{concurrentId:r,requestConfig:{signal:i}})}getVDiskInfo(e){let{vDiskSlotId:t,pDiskId:n,nodeId:r}=e,{concurrentId:i,signal:o}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/vdiskinfo?enums=true"),{node_id:r,filter:"(PDiskId=".concat(n,";VDiskSlotId=").concat(t,")")},{concurrentId:i,requestConfig:{signal:o}})}getGroupInfo(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/storage?enums=true"),{group_id:e},{concurrentId:t,requestConfig:{signal:n}})}getHostInfo(){let{concurrentId:e,signal:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.get(this.getPath("/viewer/json/sysinfo?node_id=.&enums=true"),{concurrentId:e,requestConfig:{signal:t}})}getTabletsInfo(e){let{nodes:t=[],path:n}=e,{concurrentId:r,signal:i}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const o=t.length>0&&"(NodeId=[".concat(t.join(","),"])");return this.get(this.getPath("/viewer/json/tabletinfo"),{filter:o,path:n,enums:!0},{concurrentId:r,requestConfig:{signal:i}})}getSchema(e){let{path:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/describe"),{path:t,enums:!0,backup:!1,private:!0,partition_config:!0,partition_stats:!0,partitioning_info:!0,subs:1},{concurrentId:n||"getSchema|".concat(t),requestConfig:{signal:r}})}getDescribe(e){let{path:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/describe"),{path:t,enums:!0,partition_stats:!0,subs:0},{concurrentId:n||"getDescribe|".concat(t),requestConfig:{signal:r}})}getSchemaAcl(e){let{path:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/acl"),{path:t},{concurrentId:n||"getSchemaAcl",requestConfig:{signal:r}})}getHeatmapData(e){let{path:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/describe"),{path:t,enums:!0,backup:!1,children:!1,partition_config:!1,partition_stats:!0},{concurrentId:n,requestConfig:{signal:r}})}getNetwork(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/netinfo"),{enums:!0,path:e},{concurrentId:t,requestConfig:{signal:n}})}getTopic(e){let{path:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/describe_topic"),{enums:!0,include_stats:!0,path:t},{concurrentId:n,requestConfig:{signal:r}})}getConsumer(e){let{path:t,consumer:n}=e,{concurrentId:r,signal:i}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/describe_consumer"),{enums:!0,include_stats:!0,path:t,consumer:n},{concurrentId:r||"getConsumer",requestConfig:{signal:i}})}getPoolInfo(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/storage"),{pool:e,enums:!0},{concurrentId:t,requestConfig:{signal:n}})}getTablet(e){let{id:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/tabletinfo?filter=(TabletId=".concat(t,")")),{enums:!0},{concurrentId:n,requestConfig:{signal:r}})}getTabletHistory(e){let{id:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/tabletinfo?filter=(TabletId=".concat(t,")")),{enums:!0,merge:!1},{concurrentId:n,requestConfig:{signal:r}})}getNodesList(){let{concurrentId:e,signal:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.get(this.getPath("/viewer/json/nodelist"),{enums:!0},{concurrentId:e,requestConfig:{signal:t}})}getTenantsList(){let{concurrentId:e,signal:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.get(this.getPath("/viewer/json/tenants"),{enums:!0,state:0},{concurrentId:e,requestConfig:{signal:t}})}sendQuery(e){let{schema:t,...n}=e,{concurrentId:r,signal:i}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const o=!f.r.readUserSettingsValue(c.N1,!0);return this.post(this.getPath("/viewer/json/query?timeout=".concat(6e5,"&base64=").concat(o).concat(t?"&schema=".concat(t):"")),n,{},{concurrentId:r,timeout:54e4,requestConfig:{signal:i}})}getExplainQuery(e,t,n,r){return this.post(this.getPath("/viewer/json/query"),{query:e,database:t,action:n||"explain",syntax:r,timeout:6e5},{})}getExplainQueryAst(e,t){return this.post(this.getPath("/viewer/json/query"),{query:e,database:t,action:"explain-ast",timeout:6e5},{})}getHotKeys(e,t){let{concurrentId:n,signal:r}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.get(this.getPath("/viewer/json/hotkeys"),{path:e,enable_sampling:t},{concurrentId:n||"getHotKeys",requestConfig:{signal:r}})}getHealthcheckInfo(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/healthcheck?merge_records=true"),{tenant:e},{concurrentId:t,requestConfig:{signal:n}})}evictVDisk(e){let{groupId:t,groupGeneration:n,failRealmIdx:r,failDomainIdx:i,vDiskIdx:o}=e;return this.post(this.getPath("/tablets/app?TabletID=".concat("72057594037932033","&exec=1")),{Command:{ReassignGroupDisk:{GroupId:t,GroupGeneration:n,FailRealmIdx:r,FailDomainIdx:i,VDiskIdx:o}}},{},{headers:{Accept:"application/json"}})}restartPDisk(e,t){const n=(0,u.ok)({nodeId:e,pDiskId:t,host:this.getPath("")});return this.post(n,"restartPDisk=",{},{headers:{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}})}killTablet(e){return this.get(this.getPath("/tablets?KillTabletID=".concat(e)),{})}stopTablet(e,t){return this.get(this.getPath("/tablets/app?TabletID=".concat(t,"&page=StopTablet&tablet=").concat(e)),{})}resumeTablet(e,t){return this.get(this.getPath("/tablets/app?TabletID=".concat(t,"&page=ResumeTablet&tablet=").concat(e)),{})}getTabletDescribe(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/describe"),{schemeshard_id:null===e||void 0===e?void 0:e.SchemeShard,path_id:null===e||void 0===e?void 0:e.PathId},{concurrentId:t,requestConfig:{signal:n}})}getChartData(e){let{target:t,from:n,until:r,maxDataPoints:i,database:o}=e,{concurrentId:a,signal:s}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const l="".concat(t,"&from=").concat(n,"&until=").concat(r,"&maxDataPoints=").concat(i,"&format=json");return this.post(this.getPath("/viewer/json/render?database=".concat(o)),l,{},{concurrentId:a,headers:{"Content-Type":"application/x-www-form-urlencoded"},requestConfig:{signal:s}})}postSetting(e,t,n){return this.request({method:"PATCH",url:e,data:{[t]:n}})}authenticate(e,t){return this.post(this.getPath("/login"),{user:e,password:t},{})}logout(){return this.post(this.getPath("/logout"),{},{})}whoami(){return this.get(this.getPath("/viewer/json/whoami"),{})}autocomplete(e){const{table:t,...n}=e,r=null===t||void 0===t?void 0:t.join(",");return this.get(this.getPath("/viewer/json/autocomplete"),{...n,table:r},{concurrentId:"sql-autocomplete"})}getClustersList(e){let{signal:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get("".concat(l.Vq||"","/meta/clusters"),null,{requestConfig:{signal:t}})}}class g extends m{getClusterInfo(e){let{signal:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get("".concat(l.Vq||"","/meta/cluster"),{name:e},{concurrentId:"getCluster".concat(e),requestConfig:{signal:t}}).then(h)}getTenants(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get("".concat(l.Vq||"","/meta/cp_databases"),{cluster_name:e},{concurrentId:t,requestConfig:{signal:n}}).then(p)}}function v(){let{webVersion:e=!1,withCredentials:t=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const n={withCredentials:t};return e?new g({config:n}):new m({config:n})}},18193:(e,t,n)=>{"use strict";n.d(t,{r:()=>l,t:()=>s});var r=n(24015),i=n(52317),o=n(39623),a=n(47651);const s={[i.bw]:"system",[i.Px]:void 0,[i.yT]:!1,[i.UF]:!1,[i.Rq]:!1,[i.N1]:!0,[i.DG]:[],[i.pf]:r.m2.query,[i.Wm]:o.wZ.script,[i.w7]:o.Jf.execute,[i.Ac]:!0,[i.ZY]:[],[i.ET]:!1,[i.IG]:!0,[i.y6]:!1,[i.XX]:!0,[i.JZ]:!1};const l=new class{constructor(){this.extractSettingsFromLS=e=>Object.entries(e).reduce(((e,t)=>{let[n,r]=t;return e[n]=this.readUserSettingsValue(n,r),e}),{}),this.readValueFromLS=e=>{try{const t=localStorage.getItem(e);return(0,a.Mo)(t)}catch{return}},this.setValueToLS=(e,t)=>{try{"string"===typeof t?localStorage.setItem(e,t):localStorage.setItem(e,JSON.stringify(t))}catch{}}}readUserSettingsValue(e,t){var n;return null!==(n=this.readValueFromLS(e))&&void 0!==n?n:t}setUserSettingsValue(e,t){return this.setValueToLS(e,t)}}},67510:(e,t,n)=>{"use strict";n.d(t,{y3:()=>O,EZ:()=>N,qw:()=>k,xC:()=>F,j4:()=>R,Vq:()=>M,dx:()=>A});var r=n(1399),i=n(91668),o=n(91087),a=n(43066),s=n(92820);const l=e=>{let{href:t,singleClusterMode:n,customBackend:r}=e;if(n){if(r){const{backend:e}=s.parse(t,!0).query;return{basename:"/",backend:e?String(e):r}}{const e=window.location.pathname.match(/.*(?=\/monitoring)/)||[],t=e.length>0?e[0]:"";return{basename:[t,"monitoring"].filter(Boolean).join("/"),backend:t||""}}}{const{backend:e,clusterName:n}=s.parse(t,!0).query;return{basename:"/",backend:e?String(e):e,clusterName:n?String(n):n}}};var c=n(9869),u=n(905),d=n(3027),h=n(84142),p=n.n(h),f=n(25484),m=n.n(f),g=n(3186),v=n.n(g),y=n(63041),b=n.n(y),x=n(94909),w=n(58102),S=n(43903),_=n(78103),C=n(93717);const E={global:{problemFilter:{stateKey:"settings.problemFilter",initialState:n(80839).E3.problemFilter}},"/tenant":{sort:{stateKey:"heatmap.sort",initialState:C.E3.sort,type:"bool"},heatmap:{stateKey:"heatmap.heatmap",initialState:C.E3.heatmap,type:"bool"},currentMetric:{stateKey:"heatmap.currentMetric",initialState:C.E3.currentMetric},schema:{stateKey:"schema.currentSchemaPath"},stateFilter:{stateKey:"tablets.stateFilter",type:"array"},typeFilter:{stateKey:"tablets.typeFilter",type:"array"},tenantPage:{stateKey:"tenant.tenantPage"},queryTab:{stateKey:"tenant.queryTab"},diagnosticsTab:{stateKey:"tenant.diagnosticsTab"},summaryTab:{stateKey:"tenant.summaryTab"},metricsTab:{stateKey:"tenant.metricsTab"},shardsMode:{stateKey:"shardsWorkload.mode"},shardsDateFrom:{stateKey:"shardsWorkload.from",type:"number"},shardsDateTo:{stateKey:"shardsWorkload.to",type:"number"},topQueriesDateFrom:{stateKey:"executeTopQueries.from",type:"number"},topQueriesDateTo:{stateKey:"executeTopQueries.to",type:"number"},selectedConsumer:{stateKey:"partitions.selectedConsumer"}},"/cluster/tenants":{search:{stateKey:"tenants.searchValue"}}};function T(e,t){return v()({},e,t.query)}let O,N,k,j="";function I(e,t,n){const r=(0,_.stateToParams)(e,t,n);let{location:i}=r;if(i.search===j)return{location:n,shouldPush:!1};{const e=/\?\w+/;return j=i.search,e.test(n.search)&&(i=function(e,t){const{search:n,...r}=e,i=b().parse(t.search.slice(1)),o=(0,w.getMatchingDeclaredPath)(E,e),a=o&&E[o];p()(m()(a),(e=>{delete i[e]})),p()(m()(E.global||{}),(e=>{delete i[e]}));const s=b().stringify(i,{encoder:encodeURIComponent}),l=n.startsWith("?")?"&":"?";return{search:"".concat(n).concat(l).concat(s),...r}}(i,n)),{...r,location:i}}}function P(e,t,n){return(r,i)=>{const o=((n,r)=>{const{type:i,payload:o}=r;if(!o)return n;if(x.LOCATION_POP===i||x.LOCATION_PUSH===i){const r=o;return r.query=(0,S.parseQuery)(e,o),t(n,r)}return n})(n(r,i),i);return o!==r?o:r}}function D(e,t,n,i){const{locationMiddleware:a,reducersWithLocation:s}=function(e,t){const{locationMiddleware:n}=(0,o.zl)(E,T,e,t,I);return{locationMiddleware:n,reducersWithLocation:P(E,T,t)}}(t,e);return(0,r.xC)({reducer:s,preloadedState:n,middleware:e=>e({immutableCheck:{ignoredPaths:["tooltip.currentHoveredRef"]},serializableCheck:{ignoredPaths:["tooltip.currentHoveredRef","api"],ignoredActions:[d.MB,"api/executeQuery/rejected"]}}).concat(a,...i)})}const A=window.web_version,R=window.custom_backend,M=window.meta_backend,L="undefined"==="".concat(M);function F(){let{aRootReducer:e=c.Z,singleClusterMode:t=L,api:n=(0,a.LC)({webVersion:A,withCredentials:!R})}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};({backend:O,basename:N,clusterName:k}=l({href:window.location.href,singleClusterMode:t,customBackend:R}));const r=(0,i.lX)({basename:N}),s=D(e,r,{singleClusterMode:t},[u.h.middleware]);return(0,o.C1)(s,r),n._axios.interceptors.response.use((function(e){return Promise.resolve(e)}),(function(e){var t;const n=e.response;return n&&401===n.status&&null!==(t=n.data)&&void 0!==t&&t.authUrl?window.location.assign(n.data.authUrl):Promise.reject(e)})),window.api=n,{history:r,store:s}}},27102:(e,t,n)=>{"use strict";n.d(t,{EZ:()=>r.EZ,QW:()=>i.Q,Vq:()=>r.Vq,dx:()=>r.dx,j4:()=>r.j4,qw:()=>r.qw,xC:()=>r.xC,y3:()=>r.y3});var r=n(67510),i=n(9869)},905:(e,t,n)=>{"use strict";n.d(t,{h:()=>x});var r=n(17095),i=n(38907),o=n(1399),a=n(68963),s=n(87555),l=n(36313);function c(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{let{endpointName:t,queryArgs:n}=e,r="";const o=null===d||void 0===d?void 0:d.get(n);if("string"===typeof o)r=o;else{const e=JSON.stringify(n,((e,t)=>(0,i.PO)(t)?Object.keys(t).sort().reduce(((e,n)=>(e[n]=t[n],e)),{}):t));(0,i.PO)(n)&&(null===d||void 0===d||d.set(n,e)),r=e}return"".concat(t,"(").concat(r,")")},p=Symbol();function f(e,t,n,r){const i=(0,a.useMemo)((()=>({queryArgs:e,serialized:"object"==typeof e?t({queryArgs:e,endpointDefinition:n,endpointName:r}):e})),[e,t,n,r]),o=(0,a.useRef)(i);return(0,a.useEffect)((()=>{o.current.serialized!==i.serialized&&(o.current=i)}),[i]),o.current.serialized===i.serialized?o.current.queryArgs:e}function m(e){const t=(0,a.useRef)(e);return(0,a.useEffect)((()=>{(0,s.wU)(t.current,e)||(t.current=e)}),[e]),(0,s.wU)(t.current,e)?t.current:e}var g="undefined"!==typeof window&&window.document&&window.document.createElement?a.useLayoutEffect:a.useEffect,v=e=>e.isUninitialized?{...e,isUninitialized:!1,isFetching:!0,isLoading:void 0===e.data,status:r.oZ.pending}:e;var y=Symbol();var b=(0,r.Tk)((0,r.hF)(),function(){let{batch:e=s.dC,hooks:t={useDispatch:s.I0,useSelector:s.v9,useStore:s.oR},createSelector:n=l.P1,unstable__sideEffectsInRender:i=!1,...d}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{name:y,init(l,d,y){let{serializeQueryArgs:b}=d;const x=l,{buildQueryHooks:w,buildMutationHook:S,usePrefetch:_}=function(e){let{api:t,moduleOptions:{batch:n,hooks:{useDispatch:i,useSelector:l,useStore:c},unstable__sideEffectsInRender:u,createSelector:d},serializeQueryArgs:y,context:b}=e;const x=u?e=>e():a.useEffect;return{buildQueryHooks:function(e){const u=function(n){let{refetchOnReconnect:s,refetchOnFocus:l,refetchOnMountOrArgChange:c,skip:u=!1,pollingInterval:d=0,skipPollingIfUnfocused:p=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{initiate:g}=t.endpoints[e],v=i(),y=(0,a.useRef)();if(!y.current){const e=v(t.internalActions.internal_getRTKQSubscriptions());y.current=e}const w=f(u?r.CN:n,h,b.endpointDefinitions[e],e),S=m({refetchOnReconnect:s,refetchOnFocus:l,pollingInterval:d,skipPollingIfUnfocused:p}),_=(0,a.useRef)(!1),C=(0,a.useRef)();let{queryCacheKey:E,requestId:T}=C.current||{},O=!1;E&&T&&(O=y.current.isRequestSubscribed(E,T));const N=!O&&_.current;return x((()=>{_.current=O})),x((()=>{N&&(C.current=void 0)}),[N]),x((()=>{var e;const t=C.current;if(w===r.CN)return null===t||void 0===t||t.unsubscribe(),void(C.current=void 0);const n=null===(e=C.current)||void 0===e?void 0:e.subscriptionOptions;if(t&&t.arg===w)S!==n&&t.updateSubscriptionOptions(S);else{null===t||void 0===t||t.unsubscribe();const e=v(g(w,{subscriptionOptions:S,forceRefetch:c}));C.current=e}}),[v,g,c,w,S,N]),(0,a.useEffect)((()=>()=>{var e;null===(e=C.current)||void 0===e||e.unsubscribe(),C.current=void 0}),[]),(0,a.useMemo)((()=>({refetch:()=>{var e;if(!C.current)throw new Error((0,o.rJ)(38));return null===(e=C.current)||void 0===e?void 0:e.refetch()}})),[])},S=function(){let{refetchOnReconnect:r,refetchOnFocus:o,pollingInterval:s=0,skipPollingIfUnfocused:l=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{initiate:c}=t.endpoints[e],u=i(),[d,h]=(0,a.useState)(p),f=(0,a.useRef)(),g=m({refetchOnReconnect:r,refetchOnFocus:o,pollingInterval:s,skipPollingIfUnfocused:l});x((()=>{var e;const t=null===(e=f.current)||void 0===e?void 0:e.subscriptionOptions;var n;g!==t&&(null===(n=f.current)||void 0===n||n.updateSubscriptionOptions(g))}),[g]);const v=(0,a.useRef)(g);x((()=>{v.current=g}),[g]);const y=(0,a.useCallback)((function(e){let t,r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return n((()=>{var n;null===(n=f.current)||void 0===n||n.unsubscribe(),f.current=t=u(c(e,{subscriptionOptions:v.current,forceRefetch:!r})),h(e)})),t}),[u,c]);return(0,a.useEffect)((()=>()=>{var e;null===f||void 0===f||null===(e=f.current)||void 0===e||e.unsubscribe()}),[]),(0,a.useEffect)((()=>{d===p||f.current||y(d,!0)}),[d,y]),(0,a.useMemo)((()=>[y,d]),[y,d])},_=function(n){let{skip:i=!1,selectFromResult:o}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{select:u}=t.endpoints[e],h=f(i?r.CN:n,y,b.endpointDefinitions[e],e),p=(0,a.useRef)(),m=(0,a.useMemo)((()=>d([u(h),(e,t)=>t,e=>h],w,{memoizeOptions:{resultEqualityCheck:s.wU}})),[u,h]),v=(0,a.useMemo)((()=>o?d([m],o,{devModeChecks:{identityFunctionCheck:"never"}}):m),[m,o]),x=l((e=>v(e,p.current)),s.wU),S=c(),_=m(S.getState(),p.current);return g((()=>{p.current=_}),[_]),x};return{useQueryState:_,useQuerySubscription:u,useLazyQuerySubscription:S,useLazyQuery(e){const[t,n]=S(e),r=_(n,{...e,skip:n===p}),i=(0,a.useMemo)((()=>({lastArg:n})),[n]);return(0,a.useMemo)((()=>[t,r,i]),[t,r,i])},useQuery(e,t){const n=u(e,t),i=_(e,{selectFromResult:e===r.CN||null!==t&&void 0!==t&&t.skip?void 0:v,...t}),{data:o,status:s,isLoading:l,isSuccess:c,isError:d,error:h}=i;return(0,a.useDebugValue)({data:o,status:s,isLoading:l,isSuccess:c,isError:d,error:h}),(0,a.useMemo)((()=>({...i,...n})),[i,n])}}},buildMutationHook:function(e){return function(){let{selectFromResult:r,fixedCacheKey:o}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{select:c,initiate:u}=t.endpoints[e],h=i(),[p,f]=(0,a.useState)();(0,a.useEffect)((()=>()=>{null!==p&&void 0!==p&&p.arg.fixedCacheKey||null===p||void 0===p||p.reset()}),[p]);const m=(0,a.useCallback)((function(e){const t=h(u(e,{fixedCacheKey:o}));return f(t),t}),[h,u,o]),{requestId:g}=p||{},v=(0,a.useMemo)((()=>c({fixedCacheKey:o,requestId:null===p||void 0===p?void 0:p.requestId})),[o,p,c]),y=(0,a.useMemo)((()=>r?d([v],r):v),[r,v]),b=l(y,s.wU),x=null==o?null===p||void 0===p?void 0:p.arg.originalArgs:void 0,w=(0,a.useCallback)((()=>{n((()=>{p&&f(void 0),o&&h(t.internalActions.removeMutationResult({requestId:g,fixedCacheKey:o}))}))}),[h,o,p,g]),{endpointName:S,data:_,status:C,isLoading:E,isSuccess:T,isError:O,error:N}=b;(0,a.useDebugValue)({endpointName:S,data:_,status:C,isLoading:E,isSuccess:T,isError:O,error:N});const k=(0,a.useMemo)((()=>({...b,originalArgs:x,reset:w})),[b,x,w]);return(0,a.useMemo)((()=>[m,k]),[m,k])}},usePrefetch:function(e,n){const r=i(),o=m(n);return(0,a.useCallback)(((n,i)=>r(t.util.prefetch(e,n,{...o,...i}))),[e,r,o])}};function w(e,t,n){var r,i;if(null!==(r=t)&&void 0!==r&&r.endpointName&&e.isUninitialized){const{endpointName:e}=t,r=b.endpointDefinitions[e];y({queryArgs:t.originalArgs,endpointDefinition:r,endpointName:e})===y({queryArgs:n,endpointDefinition:r,endpointName:e})&&(t=void 0)}let o=e.isSuccess?e.data:null===(i=t)||void 0===i?void 0:i.data;void 0===o&&(o=e.data);const a=void 0!==o,s=e.isLoading,l=!a&&s,c=e.isSuccess||s&&a;return{...e,data:o,currentData:e.data,isFetching:s,isLoading:l,isSuccess:c}}}({api:l,moduleOptions:{batch:e,hooks:t,unstable__sideEffectsInRender:i,createSelector:n},serializeQueryArgs:b,context:y});return c(x,{usePrefetch:_}),c(y,{batch:e}),{injectEndpoint(e,t){if("query"===t.type){const{useQuery:t,useLazyQuery:n,useLazyQuerySubscription:r,useQueryState:i,useQuerySubscription:o}=w(e);c(x.endpoints[e],{useQuery:t,useLazyQuery:n,useLazyQuerySubscription:r,useQueryState:i,useQuerySubscription:o}),l["use".concat(u(e),"Query")]=t,l["useLazy".concat(u(e),"Query")]=n}else if(function(e){return"mutation"===e.type}(t)){const t=S(e);c(x.endpoints[e],{useMutation:t}),l["use".concat(u(e),"Mutation")]=t}}}}}}());const x=b({baseQuery:function(){throw new Error("When using `fakeBaseQuery`, all queries & mutations must use the `queryFn` definition syntax.")},endpoints:()=>({}),refetchOnMountOrArgChange:!0,invalidationBehavior:"immediately",tagTypes:["All"]});Symbol()},14146:(e,t,n)=>{"use strict";n.d(t,{PR:()=>u,Pq:()=>i,YR:()=>l,ZP:()=>d,kS:()=>c});var r=n(76765);const i=(0,r.U)("authentication","SET_UNAUTHENTICATED"),o=(0,r.U)("authentication","SET_AUTHENTICATED"),a=(0,r.U)("authentication","FETCH_USER"),s={isAuthenticated:!0,user:"",error:void 0},l=(e,t)=>(0,r.Sz)({request:window.api.authenticate(e,t),actions:o}),c=()=>(0,r.Sz)({request:window.api.logout(),actions:i}),u=()=>(0,r.Sz)({request:window.api.whoami(),actions:a,dataHandler:e=>{const{UserSID:t,AuthType:n,IsMonitoringAllowed:r}=e;return{user:"Login"===n?t:void 0,isUserAllowedToMakeChanges:!1!==r}}}),d=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case i.SUCCESS:return{...e,isAuthenticated:!1,user:"",error:void 0};case o.SUCCESS:return{...e,isAuthenticated:!0,error:void 0};case o.FAILURE:return{...e,error:t.error};case a.SUCCESS:{const{user:n,isUserAllowedToMakeChanges:r}=t.data;return{...e,user:n,isUserAllowedToMakeChanges:r}}default:return{...e}}}},77915:(e,t,n)=>{"use strict";n.d(t,{UM:()=>g,ZP:()=>m,LQ:()=>f});var r=n(1399),i=n(81003),o=n(52317),a=n(39623),s=n(905);const l=e=>"\nSELECT \n PDiskFilter,\n ErasureSpecies,\n CurrentAvailableSize,\n CurrentAllocatedSize,\n CurrentGroupsCreated,\n AvailableGroupsToCreate\n FROM `".concat(e,"/.sys/ds_storage_stats`\n ORDER BY CurrentGroupsCreated DESC;\n"),c=e=>{const t=(0,a.gY)(e).result,n={};return null===t||void 0===t||t.forEach((e=>{const{PDiskFilter:t,ErasureSpecies:r,CurrentAvailableSize:i,CurrentAllocatedSize:o,CurrentGroupsCreated:a,AvailableGroupsToCreate:s}=e,l=Number(a)||0,c=l+(Number(s)||0),u=Number(o)||0,d=Number(i)||0,h=t&&"string"===typeof t&&(e=>{var t,n;const r=null===(t=e.match(/^Type:(?[A-Za-z]+)/))||void 0===t||null===(n=t.groups)||void 0===n?void 0:n.type;return"ROT"===r?"HDD":r})(t);if(h&&r&&"string"===typeof r&&l){const e={diskType:h,erasure:r,createdGroups:l,totalGroups:c,allocatedSize:u,availableSize:d};if(n[h])if(n[h][r]){const e={...n[h][r]};n[h][r]={diskType:h,erasure:r,createdGroups:e.createdGroups+l,totalGroups:e.totalGroups+c,allocatedSize:e.allocatedSize+u,availableSize:e.availableSize+d}}else n[h][r]=e;else n[h]={[r]:e}}})),n},u=localStorage.getItem(o.S7);let d;d=(0,i.V2)(u)?u:i.xu.overview;const h={defaultClusterTab:d},p=(0,r.oM)({name:"cluster",initialState:h,reducers:{setDefaultClusterTab(e,t){e.defaultClusterTab=t.payload}}});function f(e){return t=>{(0,i.V2)(e)&&(localStorage.setItem(o.S7,e),t(p.actions.setDefaultClusterTab(e)))}}const m=p.reducer,g=s.h.injectEndpoints({endpoints:e=>({getClusterInfo:e.query({queryFn:async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",{signal:t}=arguments.length>1?arguments[1]:void 0;try{const n=await window.api.getClusterInfo(e,{signal:t}),r=n.Domain;if(!r)return{data:{clusterData:n}};try{const e=l(r),t=await window.api.sendQuery({schema:"modern",query:e,database:r,action:"execute-scan"});return(0,a.gW)(t)?{data:{clusterData:n}}:{data:{clusterData:n,groupsStats:c(t)}}}catch{return{data:{clusterData:n}}}}catch(n){return{error:n}}},providesTags:["All"]})}),overrideExisting:"throw"})},20163:(e,t,n)=>{"use strict";n.d(t,{g_:()=>c,W1:()=>u,ZP:()=>l});var r=n(1399),i=n(905),o=n(90860);const a=e=>{const{clusters:t=[]}=e;let n=new Map;t.forEach((e=>{let{versions:t=[]}=e;n=(0,o.kn)(t,n)}));const r=(0,o.n$)(n);return t.map((e=>({...e,preparedVersions:(0,o.B_)(e.versions,r)})))},s=(0,r.oM)({name:"clusters",initialState:{clusterName:"",status:[],service:[],version:[]},reducers:{changeClustersFilters:(e,t)=>({...e,...t.payload})}}),l=s.reducer,{changeClustersFilters:c}=s.actions,u=i.h.injectEndpoints({endpoints:e=>({getClustersList:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{const e=await window.api.getClustersList(void 0,{signal:n});return{data:a(e)}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"})},83786:(e,t,n)=>{"use strict";n.d(t,{AJ:()=>x,B8:()=>w,K0:()=>S,NU:()=>b,ZP:()=>C,hO:()=>y,mg:()=>v,qV:()=>_});var r=n(18193),i=n(52317),o=n(39623),a=n(76765),s=n(905);const l=20,c=((0,a.U)("query","SEND_QUERY"),"query/CHANGE_USER_INPUT"),u="query/SAVE_QUERY_TO_HISTORY",d="query/GO_TO_PREVIOUS_QUERY",h="query/GO_TO_NEXT_QUERY",p="query/SET_TENANT_PATH",f=r.r.readUserSettingsValue(i.if,[]),m=f.length-l,g={loading:!1,input:"",history:{queries:f.slice(m<0?0:m).map((function(e){if("string"===typeof e)return{queryText:e};return e})),currentIndex:f.length>l?l-1:f.length-1}},v=s.h.injectEndpoints({endpoints:e=>({executeQuery:e.mutation({queryFn:async e=>{let{query:t,database:n,mode:r,schema:i="modern"}=e,a="execute",s=o.jM.yql;"pg"===r?(a="execute-query",s=o.jM.pg):r&&(a="execute-".concat(r));try{const e=await window.api.sendQuery({schema:i,query:t,database:n,action:a,syntax:s,stats:"full"});if((0,o.gW)(e))return{error:e};return{data:(0,o.gY)(e)}}catch(l){return{error:l}}}})}),overrideExisting:"throw"}),y=(e,t)=>({type:u,data:{queryText:e,mode:t}}),b=()=>({type:d}),x=()=>({type:h}),w=e=>{let{input:t}=e;return{type:c,data:{input:t}}},S=e=>({type:p,data:e}),_=e=>e.executeQuery.history.queries;const C=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:g,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case c:return{...e,input:t.data.input};case u:{const n=t.data.queryText,a=t.data.mode===o.wZ.pg?o.jM.pg:void 0,s=[...e.history.queries,{queryText:n,syntax:a}].slice(e.history.queries.length>=l?1:0);r.r.setUserSettingsValue(i.if,s);const c=s.length-1;return{...e,history:{queries:s,currentIndex:c}}}case d:{const t=e.history.currentIndex;if(t<=0)return e;const n=t-1,r=e.history.queries[n];return{...e,history:{...e.history,currentIndex:n},input:r.queryText}}case h:{const t=e.history.queries.length-1,n=e.history.currentIndex;if(n>=t)return e;const r=n+1,i=e.history.queries[r];return{...e,history:{...e.history,currentIndex:r},input:i.queryText}}case p:return{...e,tenantPath:t.data};default:return e}}},30667:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>h,Im:()=>d,MU:()=>f});var r=n(1399),i=n(52317),o=n(39623),a=n(905);const s="EndTime",l="IntervalEnd",c=e=>"(\n SELECT\n MAX(".concat(l,")\n FROM `").concat(e,"/.sys/top_queries_by_cpu_time_one_hour`\n)");const u=(0,r.oM)({name:"executeTopQueries",initialState:{},reducers:{setTopQueriesFilters:(e,t)=>({...e,...t.payload})}}),{setTopQueriesFilters:d}=u.actions,h=u.reducer,p=(e,t)=>{const n=function(e,t){const n=[];if(null!==t&&void 0!==t&&t.from&&null!==t&&void 0!==t&&t.to&&t.from>t.to)throw new Error("Invalid date range");if(null!==t&&void 0!==t&&t.from){const e=t.to===t.from?">=":">";n.push("".concat(s," ").concat(e," Timestamp('").concat(new Date(t.from).toISOString(),"')"))}return null!==t&&void 0!==t&&t.to&&n.push("".concat(s," <= Timestamp('").concat(new Date(t.to).toISOString(),"')")),null!==t&&void 0!==t&&t.from||null!==t&&void 0!==t&&t.to||n.push("".concat(l," IN ").concat(c(e))),null!==t&&void 0!==t&&t.text&&n.push("QueryText ILIKE '%".concat(t.text,"%'")),n.join(" AND ")}(e,t);return"\nSELECT\n CPUTime as CPUTimeUs,\n QueryText,\n IntervalEnd,\n EndTime,\n ReadRows,\n ReadBytes,\n UserSID,\n Duration\nFROM `".concat(e,"/.sys/top_queries_by_cpu_time_one_hour`\nWHERE ").concat(n||"true","\n")},f=a.h.injectEndpoints({endpoints:e=>({getTopQueries:e.query({queryFn:async(e,t)=>{let{database:n,filters:r}=e,{signal:a,dispatch:s}=t;try{const e=await window.api.sendQuery({schema:"modern",query:p(n,r),database:n,action:"execute-scan"},{signal:a});if((0,o.gW)(e))return{error:e};const t=(0,o.gY)(e);if((null===r||void 0===r||!r.from)&&(null===r||void 0===r||!r.to)){var l,c;const e=null===t||void 0===t||null===(l=t.result)||void 0===l||null===(c=l[0])||void 0===c?void 0:c.IntervalEnd;if(e){const t=new Date(e).getTime(),n=new Date(t-1e3*i.RQ).getTime();s(d({from:n,to:t}))}}return{data:t}}catch(u){return{error:u}}}})}),overrideExisting:"throw"})},56963:(e,t,n)=>{"use strict";n.d(t,{Xl:()=>a,ZP:()=>l,vj:()=>s});const r="ENABLE_FULLSCREEN_MODE",i="DISABLE_FULLSCREEN_MODE",o=!1;function a(){return{type:r}}function s(){return{type:i}}const l=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o;switch((arguments.length>1?arguments[1]:void 0).type){case i:return!1;case r:return!0;default:return e}}},79061:(e,t,n)=>{"use strict";n.d(t,{J:()=>o,Z:()=>a});const r="header/SET_HEADER_BREADCRUMBS",i={pageBreadcrumbsOptions:{}};function o(e,t){return{type:r,page:e,options:t}}const a=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i,t=arguments.length>1?arguments[1]:void 0;return t.type===r?{page:t.page,pageBreadcrumbsOptions:t.options}:e}},93717:(e,t,n)=>{"use strict";n.d(t,{E3:()=>o,U_:()=>l,Vc:()=>c,ZP:()=>s});var r=n(1399),i=n(905);const o={currentMetric:void 0,sort:!1,heatmap:!1},a=(0,r.oM)({name:"heatmap",initialState:o,reducers:{setHeatmapOptions:(e,t)=>({...e,...t.payload})}}),s=a.reducer,{setHeatmapOptions:l}=a.actions,c=i.h.injectEndpoints({endpoints:e=>({getHeatmapTabletsInfo:e.query({queryFn:async(e,t)=>{let{nodes:n,path:r}=e,{signal:i,getState:o,dispatch:a}=t;try{var s;const e=function(e){let[t,n]=e;const{TabletStateInfo:r=[]}=t,i=new Map,{PathDescription:o={}}=null!==n&&void 0!==n?n:{},{TablePartitions:a=[],TablePartitionStats:s=[],TablePartitionMetrics:l=[]}=o;r.forEach((e=>{e.TabletId&&i.set(e.TabletId,e)})),a.forEach(((e,t)=>{const n=Object.assign({},s[t],l[t]);e.DatashardId&&i.set(e.DatashardId,{...i.get(e.DatashardId),metrics:n})}));const c=Array.from(i.values()),u=c[0]&&c[0].metrics&&Object.keys(c[0].metrics).map((e=>({value:e,content:e})));return{tablets:c,metrics:u}}(await Promise.all([window.api.getTabletsInfo({nodes:n,path:r},{signal:i}),window.api.getHeatmapData({path:r},{signal:i})]));if(null!==(s=e.metrics)&&void 0!==s&&s.length){const t=o().heatmap.currentMetric;t&&e.metrics.find((e=>e.value===t))||a(l({currentMetric:e.metrics[0].value}))}return{data:e}}catch(c){return{error:c}}},providesTags:["All"]})}),overrideExisting:"throw"})},77952:(e,t,n)=>{"use strict";n.d(t,{AE:()=>s,Ou:()=>c,Vd:()=>l,ZP:()=>u,eE:()=>a});const r=(0,n(76765).U)("hot_keys","FETCH_HOT_KEYS"),i="hot_keys/SET_DATA_WAS_NOT_LOADED",o={loading:!0,wasLoaded:!1,data:null};function a(){return{type:i}}function s(){return{type:r.REQUEST}}function l(e){return{type:r.SUCCESS,data:e}}function c(e){return{type:r.FAILURE,error:e}}const u=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case r.REQUEST:return{...e,loading:!0};case r.SUCCESS:return{...e,data:t.data.hotkeys,loading:!1,error:void 0,wasLoaded:!0};case r.FAILURE:var n;return null!==(n=t.error)&&void 0!==n&&n.isCancelled?e:{...e,error:t.error,loading:!1};case i:return{...e,wasLoaded:!1};default:return e}}},9869:(e,t,n)=>{"use strict";n.d(t,{Z:()=>j,Q:()=>k});var r=n(38907),i=n(905),o=n(14146),a=n(77915),s=n(20163),l=n(83786),c=n(30667),u=n(56963),d=n(79061),h=n(93717);const p=(0,n(76765).U)("host","FETCH_HOST"),f={loading:!0,wasLoaded:!1,data:{}};const m=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case p.REQUEST:return{...e,loading:!0};case p.SUCCESS:var n;return{...e,data:null===(n=t.data.SystemStateInfo)||void 0===n?void 0:n[0],loading:!1,wasLoaded:!0,error:void 0};case p.FAILURE:return{...e,error:t.error,loading:!1};default:return e}};var g=n(77952),v=n(42703),y=n(97894),b=n(6748),x=n(71336),w=n(80839),S=n(9345);const _=function(){return!(arguments.length>0&&void 0!==arguments[0])||arguments[0]};var C=n(99399),E=n(40510),T=n(8511),O=n(53809),N=n(3027);const k={[i.h.reducerPath]:i.h.reducer,singleClusterMode:_,cluster:a.ZP,tenant:T.ZP,tooltip:N.ZP,tablets:C.ZP,schema:b.ZP,host:m,tenants:O.ZP,partitions:v.ZP,executeQuery:l.ZP,tabletsFilters:E.ZP,heatmap:h.ZP,settings:w.ZP,schemaAcl:x.ZP,executeTopQueries:c.ZP,shardsWorkload:S.ZP,hotKeys:g.ZP,authentication:o.ZP,header:d.Z,saveQuery:y.ZP,fullscreen:u.ZP,clusters:s.ZP},j=(0,r.UY)({...k})},99337:(e,t,n)=>{"use strict";n.d(t,{W:()=>o,d:()=>s});var r=n(36313),i=n(51688);const o=n(905).h.injectEndpoints({endpoints:e=>({getNodesList:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{return{data:await window.api.getNodesList({signal:n})}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"}),a=o.endpoints.getNodesList.select(void 0),s=(0,r.P1)((e=>a(e).data),(e=>(0,i.dn)(e)))},42703:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>d,TB:()=>h,M$:()=>u});var r=n(1399),i=n(905),o=n(81854),a=n(1504),s=n(47651);const l=e=>{const{partition_offsets:t,store_size_bytes:n="0",last_write_time:r,max_write_time_lag:i,bytes_written:s,partition_node_id:l=0}=e||{},{start:c="0",end:u="0"}=t||{};return{storeSize:n,writeSpeed:(0,o.c4)(s),partitionWriteLag:(0,a.DA)(i),partitionWriteIdleTime:(0,a.lE)(r),startOffset:c,endOffset:u,partitionNodeId:l}},c=(0,r.oM)({name:"partitions",initialState:{selectedConsumer:""},reducers:{setSelectedConsumer:(e,t)=>{e.selectedConsumer=t.payload}}}),{setSelectedConsumer:u}=c.actions,d=c.reducer,h=i.h.injectEndpoints({endpoints:e=>({getPartitions:e.query({queryFn:async(e,t)=>{let{path:n,consumerName:r}=e,{signal:i}=t;try{if(r){const e=await window.api.getConsumer({path:n,consumer:r},{signal:i}),t=(e=>null===e||void 0===e?void 0:e.map((e=>{const{partition_id:t="0",partition_stats:n,partition_consumer_stats:r}=e,i=l(n),{endOffset:c}=i,{last_read_offset:u="0",committed_offset:d="0",read_session_id:h,last_read_time:p,max_read_time_lag:f,max_write_time_lag:m,bytes_read:g,reader_name:v,connection_node_id:y=0}=r||{},b=(0,s.kE)(c)&&(0,s.kE)(d)?Number(c)-Number(d):0,x=(0,s.kE)(c)&&(0,s.kE)(u)?Number(c)-Number(u):0;return{...i,partitionId:t,readSpeed:(0,o.c4)(g),consumerWriteLag:(0,a.DA)(m),consumerReadLag:(0,a.DA)(f),consumerReadIdleTime:(0,a.lE)(p),uncommitedMessages:b,unreadMessages:x,commitedOffset:d,readSessionId:h,readerName:v,connectionNodeId:y}})))(e.partitions);return{data:t}}{const e=await window.api.getTopic({path:n},{signal:i}),t=(e=>null===e||void 0===e?void 0:e.map((e=>{const{partition_id:t="0",partition_stats:n}=e;return{partitionId:t,...l(n)}})))(e.partitions);return{data:t}}}catch(c){return{error:c}}},providesTags:["All"]})}),overrideExisting:"throw"})},97894:(e,t,n)=>{"use strict";n.d(t,{GC:()=>a,ZP:()=>s});const r="SET_QUERY_NAME_TO_EDIT",i="CLEAR_QUERY_NAME_TO_EDIT",o=null;function a(e){return{type:r,data:e}}const s=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case r:return t.data;case i:return null;default:return e}}},6748:(e,t,n)=>{"use strict";n.d(t,{Ii:()=>v,J1:()=>g,ZP:()=>S,eU:()=>w,m7:()=>b,w4:()=>y,yM:()=>x});var r=n(36313),i=n(6523),o=n(18193),a=n(52317),s=n(76765);const l=(0,s.U)("schema","FETCH_SCHEMA"),c="schema/PRELOAD_SCHEMAS",u="schema/SET_SCHEMA",d="schema/SET_SHOW_PREVIEW",h="schema/SET_AUTOREFRESH_INTERVAL",p="schema/RESET_LOADING_STATE",f=Number(o.r.readUserSettingsValue(a.KU,0)),m={loading:!0,wasLoaded:!1,data:{},currentSchemaPath:void 0,autorefresh:isNaN(f)?0:f,showPreview:!1};function g(e){let{path:t}=e;const n=window.api.getSchema({path:t});return(0,s.Sz)({request:n,actions:l,dataHandler:e=>{const t={};return null!==e&&void 0!==e&&e.Path&&(t[e.Path]=e),{path:null===e||void 0===e?void 0:e.Path,currentSchema:null!==e&&void 0!==e?e:void 0,data:t}}})}function v(e){return{type:u,data:e}}function y(e){return t=>{o.r.setUserSettingsValue(a.KU,e),t({type:h,data:e})}}function b(e){return{type:d,data:e}}function x(e){return{type:c,data:e}}const w=(0,r.P1)([(e,t)=>t,(e,t,n)=>n,(e,t)=>{var n,r;return t?null===(n=e.schema.data[t])||void 0===n||null===(r=n.PathDescription)||void 0===r?void 0:r.Children:void 0}],((e,t,n)=>(0,i.St)(t)?null===n||void 0===n?void 0:n.map((t=>{let{Name:n}=t;return e+"/"+n})):void 0)),S=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:m,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case l.REQUEST:return{...e,loading:!0};case l.SUCCESS:{const n=!e.currentSchemaPath||e.currentSchemaPath===t.data.path,r={...e.data,...t.data.data};return n?{...e,error:void 0,data:r,currentSchema:t.data.currentSchema,currentSchemaPath:t.data.path,loading:!1,wasLoaded:!0}:{...e,data:r}}case l.FAILURE:var n;return null!==(n=t.error)&&void 0!==n&&n.isCancelled?e:{...e,error:t.error,loading:!1};case c:return{...e,data:{...t.data,...e.data}};case u:return{...e,currentSchemaPath:t.data};case h:return{...e,autorefresh:t.data};case d:return{...e,showPreview:t.data};case p:return{...e,wasLoaded:m.wasLoaded};default:return e}}},71336:(e,t,n)=>{"use strict";n.d(t,{Y:()=>s,Yg:()=>l,ZP:()=>c});var r=n(76765);const i=(0,r.U)("schemaAcl","FETCH_SCHEMA_ACL"),o="schemaAcl/SET_DATA_WAS_NOT_LOADED",a={loading:!1,wasLoaded:!1};function s(e){let{path:t}=e;return(0,r.Sz)({request:window.api.getSchemaAcl({path:t}),actions:i})}const l=()=>({type:o}),c=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case i.REQUEST:return{...e,loading:!0};case i.SUCCESS:{var n,r;const i=null===(n=t.data.Common)||void 0===n?void 0:n.ACL,o=null===(r=t.data.Common)||void 0===r?void 0:r.Owner;return{...e,acl:i,owner:o,loading:!1,wasLoaded:!0,error:void 0}}case i.FAILURE:var s;return null!==(s=t.error)&&void 0!==s&&s.isCancelled?e:{...e,error:t.error,loading:!1};case o:return{...e,wasLoaded:!1};default:return e}}},80839:(e,t,n)=>{"use strict";n.d(t,{Cx:()=>p,E3:()=>u,M6:()=>f,ZP:()=>g,m9:()=>h,pu:()=>s,qz:()=>m,xI:()=>d});var r=n(18193);const i="settings/CHANGE_PROBLEM_FILTER",o="settings/SET_VALUE",a="settings/SET_USER_SETTINGS",s={ALL:"All",PROBLEMS:"With problems"},l=r.r.extractSettingsFromLS(r.t),c=window.systemSettings||{},u={problemFilter:s.ALL,userSettings:l,systemSettings:c},d=(e,t)=>n=>{n({type:o,data:{name:e,value:t}}),r.r.setUserSettingsValue(e,t)},h=e=>({type:a,data:e}),p=(e,t)=>e.settings.userSettings[t],f=e=>({type:i,data:e}),m=e=>e.settings.problemFilter,g=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:u,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case i:return{...e,problemFilter:t.data};case o:{const n={...e.userSettings,[t.data.name]:t.data.value};return{...e,userSettings:n}}case a:return{...e,userSettings:{...e.userSettings,...t.data}};default:return e}}},9345:(e,t,n)=>{"use strict";n.d(t,{Ag:()=>p,K2:()=>d,ZP:()=>h});var r=n(1399),i=n(39623),o=n(905),a=n(58660);function s(e){let{columnId:t,order:n}=e;return"".concat(t," ").concat(n)}function l(e,t,n,r){const i=r?"CAST(SUBSTRING(CAST(Path AS String), ".concat(r.length,") AS Utf8) AS Path"):"Path";let o="Path='".concat(e,"' OR Path LIKE '").concat(e,"/%'");const a=function(e){const t=[];if(null!==e&&void 0!==e&&e.from&&null!==e&&void 0!==e&&e.to&&e.from>e.to)throw new Error("Invalid date range");if(null!==e&&void 0!==e&&e.from){const n=e.to===e.from?">=":">";t.push("IntervalEnd ".concat(n," Timestamp('").concat(new Date(e.from).toISOString(),"')"))}return null!==e&&void 0!==e&&e.to&&t.push("IntervalEnd <= Timestamp('".concat(new Date(e.to).toISOString(),"')")),t.join(" AND ")}(t);a.length&&(o="(".concat(o,") AND ").concat(a));const l=n?"ORDER BY ".concat(n.map(s).join(", ")):"";return"SELECT\n ".concat(i,",\n TabletId,\n CPUCores,\n DataSize,\n NodeId,\n PeakTime,\n InFlightTxCount,\n IntervalEnd\nFROM `.sys/top_partitions_one_hour`\nWHERE ").concat(o,"\n").concat(l,"\nLIMIT 20")}function c(e,t,n){const r=n?"CAST(SUBSTRING(CAST(Path AS String), ".concat(n.length,") AS Utf8) AS Path"):"Path",i=t?"ORDER BY ".concat(t.map(s).join(", ")):"";return"SELECT\n ".concat(r,",\n TabletId,\n CPUCores,\n DataSize,\n NodeId,\n InFlightTxCount\nFROM `.sys/partition_stats`\nWHERE\n Path='").concat(e,"'\n OR Path LIKE '").concat(e,"/%'\n").concat(i,"\nLIMIT 20")}const u=(0,r.oM)({name:"shardsWorkload",initialState:{},reducers:{setShardsQueryFilters:(e,t)=>({...e,...t.payload})}}),{setShardsQueryFilters:d}=u.actions,h=u.reducer,p=o.h.injectEndpoints({endpoints:e=>({sendShardQuery:e.query({queryFn:async(e,t)=>{let{database:n,path:r="",sortOrder:o,filters:s}=e,{signal:u}=t;try{const e=await window.api.sendQuery({schema:"modern",query:(null===s||void 0===s?void 0:s.mode)===a.F.Immediate?c(r,o,n):l(r,s,o,n),database:n,action:"execute-scan"},{signal:u});if((0,i.gW)(e))return{error:e};return{data:(0,i.gY)(e)}}catch(d){return{error:d}}},providesTags:["All"]})}),overrideExisting:"throw"})},58660:(e,t,n)=>{"use strict";let r;n.d(t,{F:()=>r}),function(e){e.Immediate="immediate",e.History="history"}(r||(r={}))},99399:(e,t,n)=>{"use strict";n.d(t,{Sq:()=>f,ZP:()=>u,zg:()=>d});var r=n(1399),i=n(36313),o=n(905),a=n(99337);const s=(0,r.oM)({name:"tablets",initialState:{stateFilter:[],typeFilter:[]},reducers:{setStateFilter:(e,t)=>{e.stateFilter=t.payload},setTypeFilter:(e,t)=>{e.typeFilter=t.payload}}}),{setStateFilter:l,setTypeFilter:c}=s.actions,u=s.reducer,d=o.h.injectEndpoints({endpoints:e=>({getTabletsInfo:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{return{data:await window.api.getTabletsInfo(e,{signal:n})}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"}),h=(0,i.P1)(((e,t)=>({nodeId:e,path:t})),(e=>{let{nodeId:t,path:n}=e;return d.endpoints.getTabletsInfo.select(void 0===t?{path:n}:{nodes:[t]})})),p=(0,i.P1)((e=>e),((e,t,n)=>h(t,n)),((e,t)=>t(e).data)),f=(0,i.P1)(((e,t,n)=>p(e,t,n)),(e=>(0,a.d)(e)),((e,t)=>null!==e&&void 0!==e&&e.TabletStateInfo?t?e.TabletStateInfo.map((e=>{const n=void 0===e.NodeId?void 0:t.get(e.NodeId);return{...e,fqdn:n}})):e.TabletStateInfo:[]))},40510:(e,t,n)=>{"use strict";n.d(t,{$S:()=>l,NM:()=>d,TI:()=>p,ZP:()=>f,ct:()=>h,jk:()=>u,nq:()=>c});var r=n(36313),i=n(52317),o=n(76765);const a=(0,o.U)("tabletsFilters","FETCH_TABLETS_FILTERS"),s={data:void 0,loading:!0,wasLoaded:!1,stateFilter:[],typeFilter:[]},l=()=>({type:"CLEAR_WAS_LOADING_TABLETS"}),c=e=>({type:"SET_STATE_FILTER",data:e}),u=e=>({type:"SET_TYPE_FILTER",data:e});function d(e){return(0,o.Sz)({request:Promise.all([window.api.getTabletsInfo(e),window.api.getNodesList()]),actions:a})}const h=e=>{const{tabletsData:t}=e.tabletsFilters;return(null===t||void 0===t?void 0:t.TabletStateInfo)||[]},p=(0,r.P1)([h,e=>e.tabletsFilters.stateFilter,e=>e.tabletsFilters.typeFilter],((e,t,n)=>{let r=e;return n.length>0&&(r=r.filter((e=>n.some((t=>e.Type===t))))),t.length>0&&(r=r.filter((e=>t.some((t=>e.State===t))))),r})),f=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case a.REQUEST:return{...e,loading:!0,requestTime:(new Date).getTime()};case a.SUCCESS:{const n=(new Date).getTime()-e.requestTime,[r,o]=t.data;return{...e,tabletsData:r,nodes:o,loading:!1,wasLoaded:!0,timeoutForRequest:n>i.t_?n:i.t_,error:void 0}}case a.FAILURE:return{...e,error:t.error||"Request-URI Too Large. Please reload the page",loading:!1};case"CLEAR_WAS_LOADING_TABLETS":{const{stateFilter:t,typeFilter:n}=e;return{...s,stateFilter:t,typeFilter:n}}case"SET_STATE_FILTER":return{...e,stateFilter:t.data};case"SET_TYPE_FILTER":return{...e,typeFilter:t.data};default:return e}}},24015:(e,t,n)=>{"use strict";n.d(t,{Xk:()=>l,_0:()=>o,bS:()=>r,m2:()=>i,qQ:()=>a,uw:()=>s});const r="tenantPage",i={query:"query",diagnostics:"diagnostics"},o={newQuery:"newQuery",history:"history",saved:"saved"},a={overview:"overview",schema:"schema",topQueries:"topQueries",topShards:"topShards",nodes:"nodes",tablets:"tablets",storage:"storage",network:"network",describe:"describe",hotKeys:"hotKeys",graph:"graph",consumers:"consumers",partitions:"partitions"},s={overview:"overview",acl:"acl",schema:"schema"},l={cpu:"cpu",storage:"storage",memory:"memory",healthcheck:"healthcheck"}},8511:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>d,$v:()=>f,jk:()=>p,Tu:()=>m,Cs:()=>h,$1:()=>v});var r=n(1399),i=n(18193),o=n(52317),a=n(905),s=n(95408),l=n(24015);const c={tenantPage:s.z.nativeEnum(l.m2).catch(i.t[o.pf]).parse(i.r.readUserSettingsValue(o.pf))},u=(0,r.oM)({name:"tenant",initialState:c,reducers:{setTenantPage:(e,t)=>{e.tenantPage=t.payload},setQueryTab:(e,t)=>{e.queryTab=t.payload},setDiagnosticsTab:(e,t)=>{e.diagnosticsTab=t.payload},setSummaryTab:(e,t)=>{e.summaryTab=t.payload},setMetricsTab:(e,t)=>{e.metricsTab=t.payload}}}),d=u.reducer,{setTenantPage:h,setQueryTab:p,setDiagnosticsTab:f,setSummaryTab:m,setMetricsTab:g}=u.actions,v=a.h.injectEndpoints({endpoints:e=>({getTenantInfo:e.query({queryFn:async(e,t)=>{let{path:n}=e,{signal:r}=t;try{var i,o;return{data:null!==(i=null===(o=(await window.api.getTenantInfo({path:n},{signal:r})).TenantInfo)||void 0===o?void 0:o[0])&&void 0!==i?i:null}}catch(a){return{error:a}}},providesTags:["All"]})}),overrideExisting:"throw"})},35240:(e,t,n)=>{"use strict";n.d(t,{L:()=>r,l:()=>i});const r={Unspecified:"Unspecified",Good:"Good",Warning:"Warning",Danger:"Danger"},i={[r.Unspecified]:0,[r.Good]:1,[r.Warning]:2,[r.Danger]:3}},53809:(e,t,n)=>{"use strict";n.d(t,{Xv:()=>c,ZP:()=>l,gI:()=>s});var r=n(1399),i=n(905),o=n(30696);const a=(0,r.oM)({name:"tenants",initialState:{searchValue:""},reducers:{setSearchValue:(e,t)=>{e.searchValue=t.payload}}}),{setSearchValue:s}=a.actions,l=a.reducer,c=i.h.injectEndpoints({endpoints:e=>({getTenantsInfo:e.query({queryFn:async(e,t)=>{let{clusterName:n}=e,{signal:r,getState:i}=t;try{const e=await window.api.getTenants(n,{signal:r});let t;if(Array.isArray(e.TenantInfo)){const{singleClusterMode:n}=i();t=(0,o.Rp)(e.TenantInfo,n)}else t=[];return{data:t}}catch(a){return{error:a}}},providesTags:["All"]})}),overrideExisting:"throw"})},30696:(e,t,n)=>{"use strict";n.d(t,{B8:()=>m,Gz:()=>u,HH:()=>s,Lv:()=>y,Rp:()=>l,Vn:()=>g,_W:()=>v,_g:()=>p,hJ:()=>d,nD:()=>h,nr:()=>f});var r=n(9416),i=(n(81854),n(4119),n(47651)),o=n(35240);const a=e=>{if(e)return e.map((e=>{if(e.Name){const t=Number(e.Usage)||0,n=Number(e.Threads),r=n*t;return{name:e.Name,usage:100*t,limit:n,used:r}}})).filter((e=>void 0!==e))},s=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{CoresUsed:t,MemoryUsed:n,StorageAllocatedSize:o,MemoryLimit:s,StorageAllocatedLimit:l,PoolStats:u,Metrics:d={},DatabaseQuotas:h={},StorageUsage:p,QuotaUsage:f}=e,m=1e6*Number(t)||0,g=Number(n)||0,v=Number(o)||0,y=Number(d.Storage)||0,b=(0,i.kE)(s)?Number(s):void 0,x=(0,i.kE)(l)?Number(l):void 0,w=(0,i.kE)(h.data_size_soft_quota)?Number(h.data_size_soft_quota):void 0,S=a(u);let _,C;_=p?p.map((e=>{const{Type:t,Size:n,Limit:r}=e,i=Number(n),o=Number(r);return{name:t,used:i,limit:o,usage:c(i,o)}})):[{name:r.Fx.SSD,used:v,limit:x,usage:c(v,x)}],f?C=f.map((e=>{const{Type:t,Size:n,Limit:r}=e,i=Number(n),o=Number(r);return{name:t,used:i,limit:o,usage:c(i,o)}})):w&&(C=[{name:r.Fx.SSD,used:y,limit:w,usage:c(y,w)}]);return{memory:g,blobStorage:v,tabletStorage:y,memoryLimit:b,blobStorageLimit:x,tabletStorageLimit:w,cpu:m,poolsStats:S,memoryStats:[{name:"Process",used:g,limit:b,usage:c(g,b)}],blobStorageStats:_,tabletStorageStats:C}},l=(e,t)=>e.map((n=>{var r;const o=t?(e=>{var t;const n=e.Nodes?e.Nodes[0]:{},r=n.Host&&n.Endpoints?null===(t=n.Endpoints.find((e=>"http-mon"===e.Name)))||void 0===t?void 0:t.Address:void 0;return n.Host?"".concat(n.Host).concat(r||""):void 0})(n):void 0,a=null===(r=e.find((e=>e.Id===n.ResourceId)))||void 0===r?void 0:r.Name,l=(e=>{var t,n;const r=null===(t=e.Name)||void 0===t?void 0:t.split("/"),i=null!==r&&void 0!==r&&r.length?r[r.length-1]:"\u2014",o=null===(n=e.ControlPlane)||void 0===n?void 0:n.name;return null!==o&&void 0!==o?o:i})(n),{cpu:c,memory:u,blobStorage:d}=s(n),{nodesCount:h,groupsCount:p}=(e=>{var t;const{StorageGroups:n,NodeIds:r}=e;return{nodesCount:null!==(t=null===r||void 0===r?void 0:r.length)&&void 0!==t?t:0,groupsCount:(0,i.kE)(n)?Number(n):0}})(n);return{...n,backend:o,sharedTenantName:a,controlPlaneName:l,cpu:c,memory:u,storage:d,nodesCount:h,groupsCount:p}}));function c(e,t){if(e&&t)return 100*e/t}const u=70,d=60,h=85,p=75,f=70,m=60,g=e=>e?e>u?o.L.Danger:e>d?o.L.Warning:o.L.Good:o.L.Unspecified,v=e=>e?e>h?o.L.Danger:e>p?o.L.Warning:o.L.Good:o.L.Unspecified,y=e=>e?e>f?o.L.Danger:e>m?o.L.Warning:o.L.Good:o.L.Unspecified},3027:(e,t,n)=>{"use strict";n.d(t,{MB:()=>a,ZP:()=>u,hJ:()=>c,i8:()=>l});var r=n(85690),i=n.n(r);const o="tooltip/HIDE_TOOLTIP",a="tooltip/UPDATE_REF",s={toolTipVisible:!1,currentHoveredRef:void 0,data:void 0,templateType:"pool"},l=()=>({type:o}),c=(e,t,n,r,i)=>({type:a,node:e,data:t,templateType:n,additionalData:r,positions:i}),u=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case o:return{...e,currentHoveredRef:void 0,toolTipVisible:!1};case a:return"cell"===t.templateType&&i()(t.node,e.currentHoveredRef)?{...e,currentHoveredRef:void 0,toolTipVisible:!1}:{...e,toolTipVisible:!0,currentHoveredRef:t.node,positions:t.positions,data:t.data,additionalData:t.additionalData,templateType:t.templateType};default:return e}}},76765:(e,t,n)=>{"use strict";n.d(t,{Sz:()=>l,U:()=>s});var r=n(80977),i=n(30490),o=n(14146);const a=e=>e;function s(e,t){return{REQUEST:"".concat(e,"/").concat(t,"_REQUEST"),SUCCESS:"".concat(e,"/").concat(t,"_SUCCESS"),FAILURE:"".concat(e,"/").concat(t,"_FAILURE")}}function l(e){let{actions:t,request:n,dataHandler:s=a}=e;return async function(e,a){e({type:t.REQUEST});try{const r=await n,i=s(r,a);return e({type:t.SUCCESS,data:i}),i}catch(l){return(0,i.$)(l)&&401===l.status?e({type:o.Pq.SUCCESS}):(0,i.$)(l)&&l.status>=500&&l.statusText&&(0,r.Z)({name:"Request failure",title:"Request failure",type:"error",content:"".concat(l.status," ").concat(l.statusText)}),void e({type:t.FAILURE,error:l})}}}},75850:(e,t,n)=>{"use strict";let r;n.d(t,{K:()=>r}),function(e){e.Grey="Grey",e.Green="Green",e.Blue="Blue",e.Yellow="Yellow",e.Orange="Orange",e.Red="Red"}(r||(r={}))},35638:(e,t,n)=>{"use strict";var r,i;let o,a;var s;let l,c;var u,d,h,p,f;let m;var g,v,y,b,x,w,S;n.d(t,{C6:()=>l,tB:()=>m,mR:()=>a,gb:()=>o}),function(e){e.StatusSuccess="StatusSuccess",e.StatusAccepted="StatusAccepted",e.StatusPathDoesNotExist="StatusPathDoesNotExist",e.StatusPathIsNotDirectory="StatusPathIsNotDirectory",e.StatusAlreadyExists="StatusAlreadyExists",e.StatusSchemeError="StatusSchemeError",e.StatusNameConflict="StatusNameConflict",e.StatusInvalidParameter="StatusInvalidParameter",e.StatusMultipleModifications="StatusMultipleModifications",e.StatusReadOnly="StatusReadOnly",e.StatusTxIdNotExists="StatusTxIdNotExists",e.StatusTxIsNotCancellable="StatusTxIsNotCancellable",e.StatusAccessDenied="StatusAccessDenied",e.StatusNotAvailable="StatusNotAvailable",e.StatusPreconditionFailed="StatusPreconditionFailed",e.StatusRedirectDomain="StatusRedirectDomain",e.StatusQuotaExceeded="StatusQuotaExceeded",e.StatusResourceExhausted="StatusResourceExhausted"}(r||(r={})),function(e){e.UNKNOWN="UNKNOWN",e.USER="USER",e.GROUP="GROUP"}(i||(i={})),function(e){e.EPathTypeInvalid="EPathTypeInvalid",e.EPathTypeDir="EPathTypeDir",e.EPathTypeTable="EPathTypeTable",e.EPathTypePersQueueGroup="EPathTypePersQueueGroup",e.EPathTypeSubDomain="EPathTypeSubDomain",e.EPathTypeTableIndex="EPathTypeTableIndex",e.EPathTypeExtSubDomain="EPathTypeExtSubDomain",e.EPathTypeColumnStore="EPathTypeColumnStore",e.EPathTypeColumnTable="EPathTypeColumnTable",e.EPathTypeCdcStream="EPathTypeCdcStream",e.EPathTypeExternalDataSource="EPathTypeExternalDataSource",e.EPathTypeExternalTable="EPathTypeExternalTable",e.EPathTypeView="EPathTypeView",e.EPathTypeReplication="EPathTypeReplication"}(o||(o={})),function(e){e.EPathSubTypeEmpty="EPathSubTypeEmpty",e.EPathSubTypeSyncIndexImplTable="EPathSubTypeSyncIndexImplTable",e.EPathSubTypeAsyncIndexImplTable="EPathSubTypeAsyncIndexImplTable",e.EPathSubTypeStreamImpl="EPathSubTypeStreamImpl"}(a||(a={})),function(e){e.EPathStateNotExist="EPathStateNotExist",e.EPathStateNoChanges="EPathStateNoChanges",e.EPathStateCreate="EPathStateCreate",e.EPathStateAlter="EPathStateAlter",e.EPathStateDrop="EPathStateDrop",e.EPathStateCopying="EPathStateCopying",e.EPathStateBackup="EPathStateBackup",e.EPathStateUpgrade="EPathStateUpgrade",e.EPathStateMigrated="EPathStateMigrated",e.EPathStateRestore="EPathStateRestore",e.EPathStateMoving="EPathStateMoving"}(s||(s={})),function(e){e.ColumnCodecPlain="ColumnCodecPlain",e.ColumnCodecLZ4="ColumnCodecLZ4",e.ColumnCodecZSTD="ColumnCodecZSTD"}(l||(l={})),function(e){e.UNIT_AUTO="UNIT_AUTO",e.UNIT_SECONDS="UNIT_SECONDS",e.UNIT_MILLISECONDS="UNIT_MILLISECONDS",e.UNIT_MICROSECONDS="UNIT_MICROSECONDS",e.UNIT_NANOSECONDS="UNIT_NANOSECONDS"}(c||(c={})),function(e){e.ECdcStreamModeInvalid="ECdcStreamModeInvalid",e.ECdcStreamModeKeysOnly="ECdcStreamModeKeysOnly",e.ECdcStreamModeUpdate="ECdcStreamModeUpdate",e.ECdcStreamModeNewImage="ECdcStreamModeNewImage",e.ECdcStreamModeOldImage="ECdcStreamModeOldImage",e.ECdcStreamModeNewAndOldImages="ECdcStreamModeNewAndOldImages"}(u||(u={})),function(e){e.ECdcStreamFormatInvalid="ECdcStreamFormatInvalid",e.ECdcStreamFormatProto="ECdcStreamFormatProto",e.ECdcStreamFormatJson="ECdcStreamFormatJson"}(d||(d={})),function(e){e.ECdcStreamStateInvalid="ECdcStreamStateInvalid",e.ECdcStreamStateReady="ECdcStreamStateReady",e.ECdcStreamStateDisabled="ECdcStreamStateDisabled"}(h||(h={})),function(e){e.HASH_FUNCTION_MODULO_N="HASH_FUNCTION_MODULO_N",e.HASH_FUNCTION_CLOUD_LOGS="HASH_FUNCTION_CLOUD_LOGS"}(p||(p={})),function(e){e.COLUMN_ENGINE_NONE="COLUMN_ENGINE_NONE",e.COLUMN_ENGINE_REPLACING_TIMESERIES="COLUMN_ENGINE_REPLACING_TIMESERIES"}(f||(f={})),function(e){e.METERING_MODE_RESERVED_CAPACITY="METERING_MODE_RESERVED_CAPACITY",e.METERING_MODE_REQUEST_UNITS="METERING_MODE_REQUEST_UNITS"}(m||(m={})),function(e){e.SysLog="SysLog",e.Log="Log",e.Data="Data",e.External="External"}(g||(g={})),function(e){e.Unspecified="Unspecified",e.Freeze="Freeze",e.Unfreeze="Unfreeze"}(v||(v={})),function(e){e.ColumnCacheNone="ColumnCacheNone",e.ColumnCacheOnce="ColumnCacheOnce",e.ColumnCacheEver="ColumnCacheEver"}(y||(y={})),function(e){e.ColumnStorage1="ColumnStorage1",e.ColumnStorage2="ColumnStorage2",e.ColumnStorage1Ext1="ColumnStorage1Ext1",e.ColumnStorage1Ext2="ColumnStorage1Ext2",e.ColumnStorage2Ext1="ColumnStorage2Ext1",e.ColumnStorage2Ext2="ColumnStorage2Ext2",e.ColumnStorage1Med2Ext2="ColumnStorage1Med2Ext2",e.ColumnStorage2Med2Ext2="ColumnStorage2Med2Ext2",e.ColumnStorageTest_1_2_1k="ColumnStorageTest_1_2_1k"}(b||(b={})),function(e){e.CompactionStrategyUnset="CompactionStrategyUnset",e.CompactionStrategyGenerational="CompactionStrategyGenerational",e.CompactionStrategySharded="CompactionStrategySharded"}(x||(x={})),function(e){e.EIndexTypeInvalid="EIndexTypeInvalid",e.EIndexTypeGlobal="EIndexTypeGlobal",e.EIndexTypeGlobalAsync="EIndexTypeGlobalAsync"}(w||(w={})),function(e){e.EIndexStateInvalid="EIndexStateInvalid",e.EIndexStateReady="EIndexStateReady",e.EIndexStateNotReady="EIndexStateNotReady",e.EIndexStateWriteOnly="EIndexStateWriteOnly"}(S||(S={}))},28164:(e,t,n)=>{"use strict";let r,i;n.d(t,{F:()=>r,g:()=>i}),function(e){e.Unknown="Unknown",e.OldSchemeShard="OldSchemeShard",e.OldDataShard="OldDataShard",e.OldHive="OldHive",e.OldCoordinator="OldCoordinator",e.Mediator="Mediator",e.OldTxProxy="OldTxProxy",e.OldBSController="OldBSController",e.Dummy="Dummy",e.RTMRPartition="RTMRPartition",e.OldKeyValue="OldKeyValue",e.KeyValue="KeyValue",e.Coordinator="Coordinator",e.Hive="Hive",e.BSController="BSController",e.SchemeShard="SchemeShard",e.TxProxy="TxProxy",e.DataShard="DataShard",e.PersQueue="PersQueue",e.Cms="Cms",e.NodeBroker="NodeBroker",e.TxAllocator="TxAllocator",e.PersQueueReadBalancer="PersQueueReadBalancer",e.BlockStoreVolume="BlockStoreVolume",e.BlockStorePartition="BlockStorePartition",e.TenantSlotBroker="TenantSlotBroker",e.Console="Console",e.Kesus="Kesus",e.BlockStorePartition2="BlockStorePartition2",e.BlockStoreDiskRegistry="BlockStoreDiskRegistry",e.SysViewProcessor="SysViewProcessor",e.FileStore="FileStore",e.ColumnShard="ColumnShard",e.TestShard="TestShard",e.SequenceShard="SequenceShard",e.ReplicationController="ReplicationController",e.BlobDepot="BlobDepot",e.UserTypeStart="UserTypeStart",e.TypeInvalid="TypeInvalid"}(r||(r={})),function(e){e.Created="Created",e.ResolveStateStorage="ResolveStateStorage",e.Candidate="Candidate",e.BlockBlobStorage="BlockBlobStorage",e.RebuildGraph="RebuildGraph",e.WriteZeroEntry="WriteZeroEntry",e.Restored="Restored",e.Discover="Discover",e.Lock="Lock",e.Dead="Dead",e.Active="Active",e.ResolveLeader="ResolveLeader",e.Deleted="Deleted",e.Stopped="Stopped"}(i||(i={}))},9416:(e,t,n)=>{"use strict";let r,i,o,a;n.d(t,{Fx:()=>a,Hi:()=>r}),function(e){e.UnknownTenantType="UnknownTenantType",e.Domain="Domain",e.Dedicated="Dedicated",e.Shared="Shared",e.Serverless="Serverless"}(r||(r={})),function(e){e.STATE_UNSPECIFIED="STATE_UNSPECIFIED",e.CREATING="CREATING",e.RUNNING="RUNNING",e.REMOVING="REMOVING",e.PENDING_RESOURCES="PENDING_RESOURCES",e.CONFIGURING="CONFIGURING"}(i||(i={})),function(e){e.TABLET_VOLATILE_STATE_UNKNOWN="TABLET_VOLATILE_STATE_UNKNOWN",e.TABLET_VOLATILE_STATE_STOPPED="TABLET_VOLATILE_STATE_STOPPED",e.TABLET_VOLATILE_STATE_BOOTING="TABLET_VOLATILE_STATE_BOOTING",e.TABLET_VOLATILE_STATE_STARTING="TABLET_VOLATILE_STATE_STARTING",e.TABLET_VOLATILE_STATE_RUNNING="TABLET_VOLATILE_STATE_RUNNING"}(o||(o={})),function(e){e.None="None",e.HDD="HDD",e.SSD="SSD"}(a||(a={}))},57510:(e,t,n)=>{"use strict";n.d(t,{t:()=>p,d:()=>d});var r=n(52317),i=n(4119),o=n(47651),a=n(30817);const s=JSON.parse('{"b":"B","kb":"KB","mb":"MB","gb":"GB","tb":"TB","perSecond":"/s"}'),l=JSON.parse('{"b":"\u0411","kb":"\u041a\u0411","mb":"\u041c\u0411","gb":"\u0413\u0411","tb":"\u0422\u0411","perSecond":"/\u0441"}'),c=(0,a.wZ)("ydb-bytes-parsers",{ru:l,en:s}),u={b:{value:1,label:c("b")},kb:{value:r.h0,label:c("kb")},mb:{value:r.nQ,label:c("mb")},gb:{value:r.GS,label:c("gb")},tb:{value:r.Bp,label:c("tb")}},d=(e,t)=>{const n=10**t,r=u.tb.value*n,i=u.gb.value*n,o=u.mb.value*n;let a="b";return e>=u.kb.value*n&&(a="kb"),e>=o&&(a="mb"),e>=i&&(a="gb"),e>=r&&(a="tb"),a},h=(e,t)=>e+" ".concat(u[t].label),p=e=>{let{value:t,size:n,withSpeedLabel:r=!1,withSizeLabel:a=!0,significantDigits:s=0,...l}=e;if(!(0,o.kE)(t))return"";const p=Number(t),f=null!==n&&void 0!==n?n:d(p,s),m=(e=>{let{value:t,size:n="mb",precision:r=0}=e;const o=(0,i.W0)(Number(t)/u[n].value,r);return(0,i.uf)(o)})({value:p,size:f,...l});return r?((e,t)=>h(e,t)+c("perSecond"))(m,f):a?h(m,f):m}},81854:(e,t,n)=>{"use strict";n.d(t,{c4:()=>o,td:()=>r.t,dT:()=>r.d});var r=n(57510),i=n(52317);const o=e=>({perMinute:e&&e.per_minute?Math.round(Number(e.per_minute)/i.sU):0,perHour:e&&e.per_hour?Math.round(Number(e.per_hour)/i.RQ):0,perDay:e&&e.per_day?Math.round(Number(e.per_day)/i.ii):0})},90860:(e,t,n)=>{"use strict";n.d(t,{B_:()=>u,kn:()=>l,n$:()=>c});var r=n(60619),i=n.n(r),o=n(30601),a=n(94076);const s="__no_color__",l=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Map;return e.forEach((e=>{var n;let{version:r,version_base_color_index:i=s}=e;const a=(0,o.H)(r);t.has(i)||t.set(i,new Set),null===(n=t.get(i))||void 0===n||n.add(a)})),t},c=e=>{const t=new Map;for(const[n,r]of e)Array.from(r).sort(((e,t)=>(0,a.un)(t)-(0,a.un)(e))).forEach(((e,i)=>{if(n===s)t.set(e,a.HD);else{const o=Number(n)%a.DM.length,s=r.size,l=a.DM[o],c=Math.max(100-i*(100/s),20),u=Math.round(255*c/100).toString(16),d="".concat(l).concat(u);t.set(e,d)}}));return t},u=function(){let e=arguments.length>1?arguments[1]:void 0;const t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).filter((e=>e.version));return i()(t,"version").map((e=>({...e,minorVersion:(0,o.H)(e.version)}))).reduce(((t,n)=>{const r=e.get(n.minorVersion);return t.push({...n,color:r}),t}),[])}},52317:(e,t,n)=>{"use strict";n.d(t,{Ac:()=>j,Ah:()=>S,Bp:()=>u,DG:()=>k,DO:()=>_,E6:()=>V,ET:()=>Y,FU:()=>C,GS:()=>c,HN:()=>m,IG:()=>Q,JZ:()=>J,KS:()=>P,KU:()=>A,LE:()=>H,ME:()=>a,Mn:()=>z,N1:()=>D,Px:()=>T,RQ:()=>h,Rq:()=>K,S7:()=>U,UF:()=>N,Wm:()=>G,XN:()=>R,XX:()=>$,ZY:()=>q,bw:()=>E,eG:()=>B,fl:()=>x,h0:()=>s,if:()=>I,ii:()=>p,jX:()=>w,nQ:()=>l,pf:()=>Z,qV:()=>v,sO:()=>F,sU:()=>d,sl:()=>b,tV:()=>g,t_:()=>o,w7:()=>W,wr:()=>M,x5:()=>y,y6:()=>X,yD:()=>f,yT:()=>O,z4:()=>L});var r=n(19812),i=n(28164);const o=1e4,a=3e4,s=1e3,l=1e6,c=1e9,u=1e12,d=60,h=60*d,p=24*h,f=1e6,m={Created:"grey",ResolveStateStorage:"lightgrey",Candidate:"lightgrey",BlockBlobStorage:"lightgrey",RebuildGraph:"yellow",Restored:"yellow",Discover:"orange",Lock:"lightblue",Dead:"black",Active:"lightgreen"},g={[i.F.OldTxProxy]:"P",[i.F.TxProxy]:"P",[i.F.BSController]:"BS",[i.F.Dummy]:"DY",[i.F.RTMRPartition]:"RP",[i.F.PersQueueReadBalancer]:"PB",[i.F.Cms]:"CM",[i.F.BlockStorePartition]:"BP",[i.F.BlockStoreVolume]:"BV",[i.F.Console]:"CN",[i.F.TenantSlotBroker]:"TB",[i.F.BlockStoreDiskRegistry]:"BDR"},v=e=>{var t;if(!e)return;const n=null===(t=e.match(/[A-Z]/g))||void 0===t?void 0:t.join("");return(e=>e in g)(e)?g[e]:n},y=["1 min","5 min","15 min"],b={green:5,yellow:4,orange:3,red:2,blue:1,grey:1},x=5,w="\u2014",S="Developer UI",_="Cluster",C="Database",E="theme",T="language",O="invertedDisks",N="useNodesEndpointInDiagnostics",k="saved_queries",j="asideHeaderCompact",I="queries_history",P="tune-columns-popup",D="binaryDataInPlainTextDisplay",A="auto-refresh-interval",R="default-size-result-pane",M="default-size-tenant-summary-pane",L="default-size-tenant-pane",F="default-is-tenant-summary-collapsed",z="default-is-tenant-common-info-collapsed",B="default-is-query-result-collapsed",U="default-cluster-tab",H={displayIndices:!1,stickyHead:r.ZP.MOVING,syncHeadOnResize:!0,dynamicRender:!0,highlightRows:!0},V={...H,stickyHead:"fixed",dynamicRender:!1},G="query_initial_mode",W="last_used_query_action",q="partitionsHiddenColumns",Z="saved_tenant_initial_tab",Y="useBackendParamsForTables",K="queryUseMultiSchema",Q="useClusterBalancerAsBacked",X="enableAutocomplete",$="autocompleteOnEnter",J="isHotKeysHelpHidden"},80977:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(63660);const i=function(e){let{name:t,title:n,type:i,content:o}=e;return r.m.add({name:null!==t&&void 0!==t?t:"Request succeeded",title:null!==n&&void 0!==n?n:"Request succeeded",theme:"error"===i?"danger":"success",content:o,isClosable:!0,autoHiding:"success"===i&&5e3})}},4119:(e,t,n)=>{"use strict";n.d(t,{fG:()=>k,OW:()=>N,t$:()=>f,td:()=>p,SX:()=>m,LO:()=>T,o0:()=>O,gC:()=>b,uf:()=>_,QO:()=>x,q3:()=>w,JD:()=>S,CH:()=>v,W0:()=>C,a2:()=>g});var r=n(396),i=n(57510),o=n(52317),a=n(36453),s=n.n(a),l=(n(40022),n(30817));Object.values(l.Uo).forEach((e=>{s().locales[e]&&(s().locales[e].delimiters.thousands=" ")})),s().locale(l.ag.lang);const c=s();var u=n(47651);const d=JSON.parse('{"format-cpu.cores":["core","cores","cores","cores"]}'),h=JSON.parse('{"format-cpu.cores":["\u044f\u0434\u0440\u043e","\u044f\u0434\u0440\u0430","\u044f\u0434\u0435\u0440","\u044f\u0434\u0435\u0440"]}'),p=((0,l.wZ)("ydb-format-cpu",{ru:h,en:d}),e=>(0,u.kE)(e)?c(e).format("0 b"):""),f=e=>{const t=p(e);return t?t+"/s":""},m=e=>"".concat(Math.floor(Number(e)/o.GS)," GB"),g=e=>e?Object.values(e).join("-"):"",v=e=>e.NodeId&&e.PDiskId?"".concat(e.NodeId,"-").concat(e.PDiskId):void 0,y=e=>{const t=Math.floor(e/o.ii),n=e%o.ii;return[t&&"".concat(t,"d"),c(n).format("00:00:00")].filter(Boolean).join(" ")},b=e=>e&&y(e/1e3),x=(e,t,n)=>{let r=(0,i.d)(Number(e),0),o=!0,a=0;(0,u.kE)(t)&&(r=(0,i.d)(Number(t),0),o=!1,a=1);return[(0,i.t)({value:e,withSizeLabel:o,size:n||r,precision:a}),(0,i.t)({value:t,size:n||r})]},w=(e,t)=>x(e,t,"gb"),S=(e,t)=>x(e,t,"tb"),_=e=>(0,u.kE)(e)?c(e).format("0,0.[00000]"):"",C=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,[n]=String(e).split(".");return Number(e)<1&&(n=""),n.length>=t?Math.round(Number(e)):Number(Number(e).toFixed(t-n.length))},E=e=>{const t=Number(e)/1e6;return C(t,3)},T=e=>{if(void 0!==e)return c(E(e)).format("0.[000]")},O=e=>{var t;if(!(0,u.kE)(e))return"";const n=null===(t=(0,r.J)(Number(e)))||void 0===t?void 0:t.format("YYYY-MM-DD HH:mm");return Number(e)>0&&n?n:"N/A"},N=e=>{const t=(new Date).getTime()-Number(e);return t<=0?0:t/1e3},k=e=>y(N(Number(e)))},48169:(e,t,n)=>{"use strict";n.d(t,{ok:()=>a,wq:()=>o,yf:()=>s});var r=n(27102),i=n(47651);const o=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.y3;const n=/\/node\/\d+\/?$/g;return n.test(String(t))?String(t).replace(n,"/node/".concat(e,"/")):"".concat(null!==t&&void 0!==t?t:"","/node/").concat(e,"/")},a=e=>{let{nodeId:t,pDiskId:n,host:r}=e;const a="actors/pdisks/pdisk"+(0,i.bJ)(n);return o(t,r)+a},s=e=>{let{nodeId:t,pDiskId:n,vDiskSlotId:r,host:a}=e;const s="actors/vdisks/vdisk"+(0,i.bJ)(n)+"_"+(0,i.bJ)(r);return o(t,a)+s}},27070:(e,t,n)=>{"use strict";n.d(t,{A:()=>a,Y:()=>s});var r=n(81413),i=n(43680),o=n.n(i);const a=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.hr;return e?t===r.hr?"-"+e:e:""},s=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return new RegExp(o()(e),"i")}},30817:(e,t,n)=>{"use strict";n.d(t,{Uo:()=>r,Fp:()=>l,ag:()=>u,wZ:()=>d});var r,i=n(31329),o=n(24205),a=n(18193),s=n(52317);!function(e){e.En="en",e.Ru="ru"}(r||(r={}));const l=r.En,c=a.r.readUserSettingsValue(s.Px,l),u=new i.mb({lang:c,fallbackLang:r.En});function d(e,t){for(const n of Object.keys(t))u.registerKeyset(n,e,t[n]);return u.keyset(e)}(0,o.jQ)({lang:c})},60749:(e,t,n)=>{"use strict";n.d(t,{K:()=>r});const r="s-expression"},62729:(e,t,n)=>{"use strict";n.d(t,{EQ:()=>u,JX:()=>l,Oo:()=>r,Ot:()=>a,S8:()=>d,j:()=>o,t6:()=>s,vy:()=>i,yJ:()=>c});const r="yql",i=["String","Bool","Int32","Uint32","Int64","Uint64","Float","Double","Void","Yson","Utf8","Unit","Json","Date","Datetime","Timestamp","Interval","Null","Int8","Uint8","Int16","Uint16","TzDate","TzDatetime","TzTimestamp","Uuid","EmptyList","EmptyDict","JsonDocument","DyNumber"],o=["CAST","COALESCE","LENGTH","LEN","SUBSTRING","FIND","RFIND","StartsWith","EndsWith","IF","NANVL","Random","RandomNumber","RandomUuid","CurrentUtcDate","CurrentUtcDatetime","CurrentUtcTimestamp","CurrentTzDate","CurrentTzDatetime","CurrentTzTimestamp","AddTimezone","RemoveTimezone","MAX_OF","MIN_OF","GREATEST","LEAST","AsTuple","AsStruct","AsList","AsDict","AsSet","AsListStrict","AsDictStrict","AsSetStrict","Variant","AsVariant","Enum","AsEnum","AsTagged","Untag","TableRow","JoinTableRow","Ensure","EnsureType","EnsureConvertibleTo","ToBytes","FromBytes","ByteAt","TestBit","ClearBit","SetBit","FlipBit","Abs","Just","Unwrap","Nothing","Callable","StaticMap","StaticZip","ListCreate","AsListStrict","ListLength","ListHasItems","ListCollect","ListSort","ListSortAsc","ListSortDesc","ListExtend","ListExtendStrict","ListUnionAll","ListZip","ListZipAll","ListEnumerate","ListReverse","ListSkip","ListTake","ListIndexOf","ListMap","ListFilter","ListFlatMap","ListNotNull","ListFlatten","ListUniq","ListAny","ListAll","ListHas","ListHead","ListLast","ListMin","ListMax","ListSum","ListAvg","ListFold","ListFold1","ListFoldMap","ListFold1Map","ListFromRange","ListReplicate","ListConcat","ListExtract","ListTakeWhile","ListSkipWhile","ListAggregate","ToDict","ToMultiDict","ToSet","DictCreate","SetCreate","DictLength","DictHasItems","DictItems","DictKeys","DictPayloads","DictLookup","DictContains","DictAggregate","SetIsDisjoint","SetIntersection","SetIncludes","SetUnion","SetDifference","SetSymmetricDifference","TryMember","ExpandStruct","AddMember","RemoveMember","ForceRemoveMember","ChooseMembers","RemoveMembers","ForceRemoveMembers","CombineMembers","FlattenMembers","StructMembers","RenameMembers","ForceRenameMembers","GatherMembers","SpreadMembers","ForceSpreadMembers","FormatType","ParseType","TypeOf","InstanceOf","DataType","OptionalType","ListType","StreamType","DictType","TupleType","StructType","VariantType","ResourceType","CallableType","GenericType","UnitType","VoidType","OptionalItemType","ListItemType","StreamItemType","DictKeyType","DictPayloadType","TupleElementType","StructMemberType","CallableResultType","CallableArgumentType","VariantUnderlyingType","JSON_EXISTS","JSON_VALUE","JSON_QUERY"],a=["COUNT","MIN","MAX","SUM","AVG","COUNT_IF","SUM_IF","AVG_IF","SOME","CountDistinctEstimate","HyperLogLog","AGGREGATE_LIST","AGGREGATE_LIST_DISTINCT","AGG_LIST","AGG_LIST_DISTINCT","MAX_BY","MIN_BY","AGGREGATE_BY","MULTI_AGGREGATE_BY","TOP","BOTTOM","TOP_BY","BOTTOM_BY","TOPFREQ","MODE","STDDEV","VARIANCE","CORRELATION","COVARIANCE","PERCENTILE","MEDIAN","HISTOGRAM","LogarithmicHistogram","LogHistogram","LinearHistogram","BOOL_AND","BOOL_OR","BOOL_XOR","BIT_AND","BIT_OR","BIT_XOR","SessionStart"],s=Object.entries({DateTime:["EndOfMonth","Format","FromMicroseconds","FromMilliseconds","FromSeconds","GetDayOfMonth","GetDayOfWeek","GetDayOfWeekName","GetDayOfYear","GetHour","GetMicrosecondOfSecond","GetMillisecondOfSecond","GetMinute","GetMonth","GetMonthName","GetSecond","GetTimezoneId","GetTimezoneName","GetWeekOfYear","GetWeekOfYearIso8601","GetYear","IntervalFromDays","IntervalFromHours","IntervalFromMicroseconds","IntervalFromMilliseconds","IntervalFromMinutes","IntervalFromSeconds","MakeDate","MakeDatetime","MakeTimestamp","MakeTzDate","MakeTzDatetime","MakeTzTimestamp","Parse","ParseHttp","ParseIso8601","ParseRfc822","ParseX509","ShiftMonths","ShiftQuarters","ShiftYears","Split","StartOf","StartOfDay","StartOfMonth","StartOfQuarter","StartOfWeek","StartOfYear","TimeOfDay","ToDays","ToHours","ToMicroseconds","ToMilliseconds","ToMinutes","ToSeconds","Update"],Dsv:["Parse","ReadRecord","Serialize"],String:["AsciiToLower","AsciiToTitle","AsciiToUpper","Base32Decode","Base32Encode","Base32StrictDecode","Base64Decode","Base64Encode","Base64EncodeUrl","Base64StrictDecode","Bin","BinText","CgiEscape","CgiUnescape","Collapse","CollapseText","Contains","DecodeHtml","EncodeHtml","EndsWith","EndsWithIgnoreCase","EscapeC","FromByteList","HasPrefix","HasPrefixIgnoreCase","HasSuffix","HasSuffixIgnoreCase","Hex","HexDecode","HexEncode","HexText","HumanReadableBytes","HumanReadableDuration","HumanReadableQuantity","IsAscii","IsAsciiAlnum","IsAsciiAlpha","IsAsciiDigit","IsAsciiHex","IsAsciiLower","IsAsciiSpace","IsAsciiUpper","JoinFromList","LeftPad","LevensteinDistance","Prec","RemoveAll","RemoveFirst","RemoveLast","ReplaceAll","ReplaceFirst","ReplaceLast","RightPad","SBin","SHex","SplitToList","StartsWith","StartsWithIgnoreCase","Strip","ToByteList","UnescapeC"],Unicode:["Find","Fold","FromCodePointList","GetLength","IsAlnum","IsAlpha","IsAscii","IsDigit","IsHex","IsLower","IsSpace","IsUnicodeSet","IsUpper","IsUtf","JoinFromList","LevensteinDistance","Normalize","NormalizeNFC","NormalizeNFD","NormalizeNFKC","NormalizeNFKD","RFind","RemoveAll","RemoveFirst","RemoveLast","ReplaceAll","ReplaceFirst","ReplaceLast","Reverse","SplitToList","Strip","Substring","ToCodePointList","ToLower","ToTitle","ToUint64","ToUpper","Translit","TryToUint64"],Url:["BuildQueryString","CanBePunycodeHostName","CutQueryStringAndFragment","CutScheme","CutWWW","CutWWW2","Decode","Encode","ForceHostNameToPunycode","ForcePunycodeToHostName","GetCGIParam","GetDomain","GetDomainLevel","GetFragment","GetHost","GetHostPort","GetOwner","GetPath","GetPort","GetScheme","GetSchemeHost","GetSchemeHostPort","GetSignificantDomain","GetTLD","GetTail","HostNameToPunycode","IsAllowedByRobotsTxt","IsKnownTLD","IsWellKnownTLD","Normalize","NormalizeWithDefaultHttpScheme","Parse","PunycodeToHostName","QueryStringToDict","QueryStringToList"],Yson:["Attributes","Contains","ConvertTo","ConvertToBool","ConvertToBoolDict","ConvertToBoolList","ConvertToDict","ConvertToDouble","ConvertToDoubleDict","ConvertToDoubleList","ConvertToInt64","ConvertToInt64Dict","ConvertToInt64List","ConvertToList","ConvertToString","ConvertToStringDict","ConvertToStringList","ConvertToUint64","ConvertToUint64Dict","ConvertToUint64List","Equals","From","GetHash","GetLength","IsBool","IsDict","IsDouble","IsEntity","IsInt64","IsList","IsString","IsUint64","Lookup","LookupBool","LookupDict","LookupDouble","LookupInt64","LookupList","LookupString","LookupUint64","Options","Parse","ParseJson","ParseJsonDecodeUtf8","Serialize","SerializeJson","SerializePretty","SerializeText","WithAttributes","YPath","YPathBool","YPathDict","YPathDouble","YPathInt64","YPathList","YPathString","YPathUint64"],HyperLogLog:["AddValue","Create","Deserialize","GetResult","Merge","Serialize"],Hyperscan:["BacktrackingGrep","BacktrackingMatch","Capture","Grep","Match","MultiGrep","MultiMatch","Replace"],Ip:["ConvertToIPv6","FromString","GetSubnet","GetSubnetByMask","IsEmbeddedIPv4","IsIPv4","IsIPv6","SubnetFromString","SubnetMatch","SubnetToString","ToFixedIPv6String","ToString"],Json:["BoolAsJsonNode","CompilePath","DoubleAsJsonNode","JsonAsJsonNode","JsonDocumentSqlExists","JsonDocumentSqlQuery","JsonDocumentSqlQueryConditionalWrap","JsonDocumentSqlQueryWrap","JsonDocumentSqlTryExists","JsonDocumentSqlValueBool","JsonDocumentSqlValueConvertToUtf8","JsonDocumentSqlValueInt64","JsonDocumentSqlValueNumber","JsonDocumentSqlValueUtf8","Parse","Serialize","SerializeToJsonDocument","SqlExists","SqlQuery","SqlQueryConditionalWrap","SqlQueryWrap","SqlTryExists","SqlValueBool","SqlValueConvertToUtf8","SqlValueInt64","SqlValueNumber","SqlValueUtf8","Utf8AsJsonNode"],Math:["Abs","Acos","Asin","Asinh","Atan","Atan2","Cbrt","Ceil","Cos","Cosh","E","Eps","Erf","ErfInv","ErfcInv","Exp","Exp2","Fabs","Floor","Fmod","FuzzyEquals","Hypot","IsFinite","IsInf","IsNaN","Ldexp","Lgamma","Log","Log10","Log2","Mod","NearbyInt","Pi","Pow","Rem","Remainder","Rint","Round","RoundDownward","RoundToNearest","RoundTowardZero","RoundUpward","Sigmoid","Sin","Sinh","Sqrt","Tan","Tanh","Tgamma","Trunc"],Pire:["Capture","Grep","Match","MultiGrep","MultiMatch","Replace"],Re2:["Capture","Count","Escape","FindAndConsume","Grep","Match","Options","PatternFromLike","Replace"],Re2posix:["Capture","Count","Escape","FindAndConsume","Grep","Match","Options","PatternFromLike","Replace"],Digest:["Argon2","Blake2B","CityHash","CityHash128","Crc32c","Crc64","FarmHashFingerprint","FarmHashFingerprint128","FarmHashFingerprint2","FarmHashFingerprint32","FarmHashFingerprint64","Fnv32","Fnv64","HighwayHash","IntHash64","Md5HalfMix","Md5Hex","Md5Raw","MurMurHash","MurMurHash2A","MurMurHash2A32","MurMurHash32","NumericHash","Sha1","Sha256","SipHash","SuperFastHash","XXH3","XXH3_128"],Histogram:["CalcLowerBound","CalcLowerBoundSafe","CalcUpperBound","CalcUpperBoundSafe","GetSumAboveBound","GetSumBelowBound","GetSumInRange","Normalize","Print","ToCumulativeDistributionFunction"]}).reduce(((e,t)=>{let[n,r]=t;const i=r.map((e=>"".concat(n,"::").concat(e)));return e.concat(i)}),[]),l=["ROW_NUMBER","LAG","LEAD","FIRST_VALUE","LAST_VALUE","RANK","DENSE_RANK","SessionState"],c=[],u=["TablePathPrefix","Warning"],d={table:["AUTO_PARTITIONING_BY_SIZE","AUTO_PARTITIONING_PARTITION_SIZE_MB","AUTO_PARTITIONING_BY_LOAD","AUTO_PARTITIONING_MIN_PARTITIONS_COUNT","AUTO_PARTITIONING_MAX_PARTITIONS_COUNT","UNIFORM_PARTITIONS","READ_REPLICAS_SETTINGS","TTL","KEY_BLOOM_FILTER","STORE"],view:["security_invoker"],topic:["min_active_partitions","partition_count_limit","retention_period","retention_storage_mb","partition_write_speed_bytes_per_second","partition_write_burst_bytes","metering_mode"],object:[],user:[],group:[],externalDataSource:[],externalTable:[],tableStore:[],replication:["ENDPOINT","DATABASE","USER","PASSWORD"],tableIndex:[],topicConsumer:["important","read_from"]}},51688:(e,t,n)=>{"use strict";n.d(t,{Hk:()=>g,Ns:()=>p,RW:()=>m,TA:()=>d,U8:()=>c,Uu:()=>l,dn:()=>h,eV:()=>f,oh:()=>v,qU:()=>u});var r=n(95408),i=n(80839),o=n(75850),a=n(52317),s=n(4119);let l;!function(e){e.All="All",e.SmallUptime="SmallUptime"}(l||(l={}));const c=r.z.nativeEnum(l).catch(l.All),u={[l.All]:"All",[l.SmallUptime]:"Uptime < 1h"},d=e=>!e.SystemState||e.SystemState===o.K.Grey,h=e=>null===e||void 0===e?void 0:e.reduce(((e,t)=>(t.Id&&t.Host&&e.set(Number(t.Id),t.Host),e)),new Map),p=function(){var e,t;let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const r=(null===(e=n.Location)||void 0===e?void 0:e.Rack)||n.Rack,i=(null===(t=n.Location)||void 0===t?void 0:t.DataCenter)||n.DataCenter,o=(0,s.fG)(n.StartTime);return{...n,Rack:r,DC:i,Uptime:o}},f=e=>e===i.pu.PROBLEMS,m=e=>e===l.SmallUptime?a.RQ:void 0,g={NodeId:"NodeId",Host:"Host",DC:"DC",Rack:"Rack",Version:"Version",Uptime:"Uptime",Memory:"Memory",CPU:"CPU",LoadAverage:"LoadAverage"},v=e=>Object.values(g).includes(e)},39623:(e,t,n)=>{"use strict";let r;n.d(t,{Jf:()=>o,wZ:()=>a,U4:()=>s,jM:()=>l,T$:()=>c,gW:()=>h,gY:()=>p,CC:()=>f,dt:()=>v,fV:()=>y,y5:()=>m,Xh:()=>g}),function(e){e.Bool="Bool",e.Int8="Int8",e.Int16="Int16",e.Int32="Int32",e.Int64="Int64",e.Uint8="Uint8",e.Uint16="Uint16",e.Uint32="Uint32",e.Uint64="Uint64",e.Float="Float",e.Double="Double",e.Decimal="Decimal",e.String="String",e.Utf8="Utf8",e.Json="Json",e.JsonDocument="JsonDocument",e.Yson="Yson",e.Uuid="Uuid",e.Date="Date",e.Datetime="Datetime",e.Timestamp="Timestamp",e.Interval="Interval",e.TzDate="TzDate",e.TzDateTime="TzDateTime",e.TzTimestamp="TzTimestamp"}(r||(r={}));var i=n(30490);const o={execute:"execute",explain:"explain"},a={scan:"scan",script:"script",data:"data",query:"query",pg:"pg"},s={scan:"Scan",script:"YQL Script",data:"Data",query:"YQL - QueryService",pg:"PostgreSQL"},l={yql:"yql_v1",pg:"pg"},c=e=>{switch(e.replace(/\?$/,"")){case r.Bool:return"boolean";case r.Int8:case r.Int16:case r.Int32:case r.Int64:case r.Uint8:case r.Uint16:case r.Uint32:case r.Uint64:case r.Float:case r.Double:case r.Decimal:return"number";case r.String:case r.Utf8:case r.Json:case r.JsonDocument:case r.Yson:case r.Uuid:return"string";case r.Date:case r.Datetime:case r.Timestamp:case r.Interval:case r.TzDate:case r.TzDateTime:case r.TzTimestamp:return"date";default:return}},u=(e,t)=>e.map((e=>e.reduce(((e,n,r)=>{const{name:i}=t[r];return e[i]=n,e}),{}))),d=e=>Boolean(!e||"object"!==typeof e||Array.isArray(e)||"result"in e&&!Array.isArray(e.result));function h(e){return Boolean(e&&"object"===typeof e&&"error"in e&&"issues"in e)}const p=e=>d(e)?{}:(e=>Boolean(e&&!Array.isArray(e)&&Array.isArray(e.result)&&"object"===typeof e.result[0]&&"rows"in e.result[0]&&"columns"in e.result[0]))(e)?(e=>{const{result:t,...n}=e;return{resultSets:null===t||void 0===t?void 0:t.map((e=>{const{rows:t,columns:n}=e;let r;return n&&(r=[]),t&&n&&(r=u(t,n)),{columns:n,result:r}})),...n}})(e):(e=>Boolean(e&&!Array.isArray(e)&&Array.isArray(e.result)&&Array.isArray(e.columns)))(e)?(e=>{const{result:t,columns:n,...r}=e;return{result:t&&n&&u(t,n),columns:n,...r}})(e):e,f=e=>d(e)?{}:e,m=e=>(e=>Boolean(e&&"queries"in e))(e)?e.queries&&e.queries.length?{Plan:e.queries[0].Plan,tables:e.queries[0].tables,meta:e.meta}:{meta:e.meta}:e,g=e=>Array.isArray(e)?e.map((e=>{const t={};for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)){const r=typeof e[n];null!==e[n]&&"object"===r||"boolean"===r||Array.isArray(e[n])?t[n]=JSON.stringify(e[n]):t[n]=e[n]}return t})):[],v=e=>"string"===typeof e||h(e)?e:(0,i.e)(e)?e.message:(0,i.$)(e)?"data"in e&&h(e.data)?e.data:e.statusText:void 0,y=e=>{var t;const n=v(e);return"string"===typeof n?n:null===n||void 0===n||null===(t=n.error)||void 0===t?void 0:t.message}},30490:(e,t,n)=>{"use strict";n.d(t,{$:()=>i,e:()=>r});const r=e=>Boolean(e&&"object"===typeof e&&"message"in e&&"Network Error"===e.message),i=e=>Boolean(e&&"object"===typeof e&&"status"in e)},1504:(e,t,n)=>{"use strict";n.d(t,{tt:()=>c,zm:()=>u,DA:()=>p,lE:()=>f,BO:()=>m});var r=n(52317),i=n(4119),o=n(30817);const a=JSON.parse('{"daysHours":"{{days}}\xa0d\xa0{{hours}}\xa0h","hoursMin":"{{hours}}\xa0h\xa0{{minutes}}\xa0m","minSec":"{{minutes}}\xa0m\xa0{{seconds}}\xa0s","secMs":"{{seconds}}\xa0s\xa0{{ms}}\xa0ms","days":"{{days}}\xa0d","hours":"{{hours}}\xa0h","min":"{{minutes}}\xa0m","sec":"{{seconds}}\xa0s","ms":"{{ms}}\xa0ms"}'),s=JSON.parse('{"daysHours":"{{days}}\xa0\u0434\xa0{{hours}}\xa0\u0447","hoursMin":"{{hours}}\xa0\u0447\xa0{{minutes}}\xa0\u043c","minSec":"{{minutes}}\xa0\u043c\xa0{{seconds}}\xa0\u0441","secMs":"{{seconds}}\xa0\u0441\xa0{{ms}}\xa0\u043c\u0441","days":"{{days}}\xa0\u0434","hours":"{{hours}}\xa0\u0447","min":"{{minutes}}\xa0\u043c","sec":"{{seconds}}\xa0\u0441","ms":"{{ms}}\xa0\u043c\u0441"}'),l=(0,o.wZ)("ydb-time-parsers",{ru:s,en:a}),c=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;const n=e%1e3;let i=Math.floor(e/1e3);const o=Math.floor(i/r.ii);i%=r.ii;const a=Math.floor(i/r.RQ);i%=r.RQ;const s=Math.floor(i/60);i%=60;const c=i,u={days:o,hours:a,minutes:s,seconds:c,ms:n};if(2===t){if(o>0)return l("daysHours",u);if(a>0)return l("hoursMin",u);if(s>0)return l("minSec",u);if(c>0)return l("secMs",u)}if(1===t){if(o>0)return l("days",u);if(a>0)return l("hours",u);if(s>0)return l("min",u);if(c>0)return l("sec",u)}return l("ms",u)},u=e=>l("ms",{ms:(0,i.uf)(e)}),d=e=>(e.seconds?1e3*Number(e.seconds):0)+(e.nanos?e.nanos/r.yD:0);var h=n(47651);const p=e=>e?(e=>"string"===typeof e?1e3*parseInt(e,10):d(e))(e):0,f=e=>{if(!e)return 0;const t=Date.now()-(e=>"string"===typeof e?Date.parse(e):d(e))(e);return t<0?0:t},m=e=>e&&(0,h.kE)(e)?Math.round(Number(e)/1e3):0},47651:(e,t,n)=>{"use strict";function r(e){if(e)try{return JSON.parse(e)}catch(t){return e}}n.d(t,{Mo:()=>r,Qt:()=>a,Uz:()=>s,bJ:()=>l,kE:()=>c});const i=[" B"," KB"," MB"," GB"," TB"," PB"," EB"],o=1e3;function a(e){return"".concat(function(e){if(isNaN(e))return"";const t=e/o**2;return t<10?t.toFixed(2)+i[2]:t<100?t.toFixed(1)+i[2]:t.toFixed()+i[2]}(e)).concat(e?"ps":"")}function s(e,t){if(isNaN(e))return"N/A";const n=e/1e9;return t?n.toFixed()+i[3]:n<10?n.toFixed(2)+i[3]:n<100?n.toFixed(1)+i[3]:n.toFixed()+i[3]}function l(e){let t=e;for(let n=String(e).length;n<9;n++)t="0"+t;return t}function c(e){return!isNaN(e)&&!isNaN(parseFloat(e))}},94076:(e,t,n)=>{"use strict";n.d(t,{DM:()=>o,HD:()=>a,ZP:()=>c,un:()=>i});var r=n(30601);const i=e=>e.split("").reduce(((e,t)=>{const n=(e<<5)-e+t.charCodeAt(0);return n&n}),0),o=["#008000","#4169e1","#ffd700","#ff8c00","#808000","#e9967a","#ff1493","#00bfff","#da70d6","#3cb371","#b22222"],a="#bfbfbf",s=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Map;return e.forEach((e=>{var n;const i=(0,r.X)(e),o=(0,r.H)(e);t.has(i)||t.set(i,new Set),null===(n=t.get(i))||void 0===n||n.add(o)})),t},l=e=>{const t=Array.from(e.keys()).map((e=>({version:e,hash:i(e)}))),n=new Map;let r=o.length-1;return t.sort(((e,t)=>e.hash-t.hash)).forEach((t=>{if(/^(\w+-)?stable/.test(t.version)){r=(r+1)%o.length,n.set(t.version,o[r]);const a=Array.from(e.get(t.version)||[]).filter((e=>e!==t.version)).map((e=>({version:e,hash:i(e)}))),s=a.length;a.sort(((e,t)=>t.hash-e.hash)).forEach(((e,t)=>{const i=o[r],a=Math.max(100-t*(100/s),20),l=Math.round(255*a/100).toString(16),c="".concat(i).concat(l);n.set(e.version,c)}))}else n.set(t.version,a)})),n},c=function(){return l(s(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]))}},30601:(e,t,n)=>{"use strict";n.d(t,{H:()=>r,X:()=>i});const r=e=>{let t=e;/\d{1,}-\d{1,}(-\d){0,}(-hotfix-\d{1,}(-\d{1,})?)?\.[0-9a-zA-Z]+$/.test(e)&&(t=t.replace(/(-hotfix-\d{1,}(-\d{1,})?)?\.[0-9a-zA-Z]+$/,""));return/\d{1,}-\d{1,}-\d{1,}-\d{1,}$/.test(e)&&(t=t.replace(/-\d{1,}$/,"")),t},i=e=>{const t=r(e);return/\d{1,}-\d{1,}-\d{1,}/.test(t)?t.replace(/-\d{1,}$/,""):t}},36767:(e,t)=>{"use strict";function n(e){function t(t,i,o,a){var s=i?n+t+e.e+i:n+t,l=s;if(o){var c=" "+l+e.m;for(var u in o)if(o.hasOwnProperty(u)){var d=o[u];!0===d?l+=c+u:d&&(l+=c+u+r+d)}}if(void 0!==a)for(var h=0,p=(a=Array.isArray(a)?a:[a]).length;h{"use strict";e.exports=n(36767)},66307:(e,t,n)=>{"use strict";n.d(t,{a:()=>s,p:()=>a});var r=n(31329);const i=JSON.parse('{"common":{"tooltip-sum":"Sum","tooltip-rest":"Rest"},"chartkit":{"error":"Error","legend-series-hide":"Hide all lines","legend-series-show":"Show all lines","tooltip-point-format-size":"Size","tooltip-sum":"Sum","tooltip-rest":"Rest","error-incorrect-key-value-intro":"Incorrect notation of an object passed to","error-incorrect-key":", object keys must be convertible to integer","error-incorrect-value":", object values must be a string or a function which returns a string"},"chartkit-table":{"message-no-data":"No data","paginator-rows":"Rows"},"chartkit-ymap-legend":{"label-more":"Show more {{count}}","label-hide":"Hide","label-heatmap":"Heatmap"},"error":{"label_no-data":"No data","label_unknown-plugin":"Unknown plugin type \\"{{type}}\\"","label_unknown-error":"Unknown error","label_invalid-axis-category-data-point":"It seems you are trying to use inappropriate data type for \\"{{key}}\\" value in series \\"{{seriesName}}\\" for axis with type \\"category\\". Strings and numbers are allowed.","label_invalid-axis-datetime-data-point":"It seems you are trying to use inappropriate data type for \\"{{key}}\\" value in series \\"{{seriesName}}\\" for axis with type \\"datetime\\". Only numbers are allowed.","label_invalid-axis-linear-data-point":"It seems you are trying to use inappropriate data type for \\"{{key}}\\" value in series \\"{{seriesName}}\\" for axis with type \\"linear\\". Numbers and nulls are allowed.","label_invalid-pie-data-value":"It seems you are trying to use inappropriate data type for \\"value\\" value. Only numbers are allowed.","label_invalid-series-type":"It seems you haven\'t defined \\"series.type\\" property, or defined it incorrectly. Available values: [{{types}}].","label_invalid-series-property":"It seems you are trying to use inappropriate value for \\"{{key}}\\", or defined it incorrectly. Available values: [{{values}}].","label_invalid-treemap-redundant-value":"It seems you are trying to set \\"value\\" for container node. Check node with this properties: { id: \\"{{id}}\\", name: \\"{{name}}\\" }","label_invalid-treemap-missing-value":"It seems you are trying to use node without \\"value\\". Check node with this properties: { id: \\"{{id}}\\", name: \\"{{name}}\\" }"},"highcharts":{"reset-zoom-title":"Reset zoom","decimal-point":".","thousands-sep":" ","Mon":"Mon","Tue":"Tue","Wed":"Wed","Thu":"Thu","Fri":"Fri","Sat":"Sat","Sun":"Sun","Jan":"Jan","January":"January","Feb":"Feb","February":"February","Mar":"Mar","March":"March","Apr":"Apr","April":"April","May":"May","Jun":"Jun","June":"June","Jul":"Jul","July":"July","Aug":"Aug","August":"August","Sep":"Sep","September":"September","Oct":"Oct","October":"October","Nov":"Nov","November":"November","Dec":"Dec","December":"December"}}'),o=JSON.parse('{"common":{"tooltip-sum":"\u0421\u0443\u043c\u043c\u0430","tooltip-rest":"\u041e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435"},"chartkit":{"error":"\u041e\u0448\u0438\u0431\u043a\u0430","legend-series-hide":"\u0421\u043a\u0440\u044b\u0442\u044c \u0432\u0441\u0435 \u043b\u0438\u043d\u0438\u0438","legend-series-show":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0441\u0435 \u043b\u0438\u043d\u0438\u0438","loading":"\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430","tooltip-point-format-size":"\u0420\u0430\u0437\u043c\u0435\u0440","tooltip-sum":"\u0421\u0443\u043c\u043c\u0430","tooltip-rest":"\u041e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435","error-incorrect-key-value-intro":"\u041d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u0430\u043a \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432","error-incorrect-key":", \u043a\u043b\u044e\u0447\u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u043c\u044b \u0432 \u0446\u0435\u043b\u043e\u0435 \u0447\u0438\u0441\u043b\u043e","error-incorrect-value":", \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043b\u0438\u0431\u043e \u0441\u0442\u0440\u043e\u043a\u0430, \u043b\u0438\u0431\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044e\u0449\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0443"},"chartkit-table":{"message-no-data":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445","paginator-rows":"\u0421\u0442\u0440\u043e\u043a\u0438"},"chartkit-ymap-legend":{"label-more":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0435\u0449\u0451 {{count}}","label-hide":"\u0421\u0432\u0435\u0440\u043d\u0443\u0442\u044c","label-heatmap":"\u0422\u0435\u043f\u043b\u043e\u0432\u0430\u044f \u043a\u0430\u0440\u0442\u0430"},"error":{"label_no-data":"\u041d\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0445","label_unknown-plugin":"\u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u0442\u0438\u043f \u043f\u043b\u0430\u0433\u0438\u043d\u0430 \\"{{type}}\\"","label_unknown-error":"\u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430","label_invalid-axis-category-data-point":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \\"{{key}}\\" \u0432 \u0441\u0435\u0440\u0438\u0438 \\"{{seriesName}}\\" \u0434\u043b\u044f \u043e\u0441\u0438 \u0441 \u0442\u0438\u043f\u043e\u043c \\"category\\". \u0414\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0442\u0440\u043e\u043a \u0438 \u0447\u0438\u0441\u0435\u043b.","label_invalid-axis-datetime-data-point":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \\"{{key}}\\" \u0432 \u0441\u0435\u0440\u0438\u0438 \\"{{seriesName}}\\" \u0434\u043b\u044f \u043e\u0441\u0438 \u0441 \u0442\u0438\u043f\u043e\u043c \\"datetime\\". \u0414\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0447\u0438\u0441\u0435\u043b.","label_invalid-axis-linear-data-point":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \\"{{key}}\\" \u0432 \u0441\u0435\u0440\u0438\u0438 \\"{{seriesName}}\\" \u0434\u043b\u044f \u043e\u0441\u0438 \u0441 \u0442\u0438\u043f\u043e\u043c \\"linear\\". \u0414\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0447\u0438\u0441\u0435\u043b \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 null.","label_invalid-pie-data-value":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \\"value\\". \u0414\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0447\u0438\u0441\u0435\u043b.","label_invalid-series-type":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \\"series.type\\" \u0438\u043b\u0438 \u0443\u043a\u0430\u0437\u0430\u043b\u0438 \u0435\u0433\u043e \u043d\u0435\u0432\u0435\u0440\u043d\u043e. \u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f: [{{types}}].","label_invalid-series-property":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \\"{{key}}\\", \u0438\u043b\u0438 \u0443\u043a\u0430\u0437\u0430\u043b\u0438 \u0435\u0433\u043e \u043d\u0435\u0432\u0435\u0440\u043d\u043e. \u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f: [{{values}}].","label_invalid-treemap-redundant-value":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \\"value\\" \u0434\u043b\u044f \u0443\u0437\u043b\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0433\u043e \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430. \u041f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u0443\u0437\u0435\u043b \u0441 \u044d\u0442\u0438\u043c\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438: { id: \\"{{id}}\\", name: \\"{{name}}\\" }","label_invalid-treemap-missing-value":"\u041f\u043e\u0445\u043e\u0436\u0435, \u0447\u0442\u043e \u0432\u044b \u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0443\u0437\u0435\u043b \u0431\u0435\u0437 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \\"value\\". \u041f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u0443\u0437\u0435\u043b \u0441 \u044d\u0442\u0438\u043c\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438: { id: \\"{{id}}\\", name: \\"{{name}}\\" }"},"highcharts":{"reset-zoom-title":"\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435","decimal-point":",","thousands-sep":" ","Mon":"\u041f\u043d","Tue":"\u0412\u0442","Wed":"\u0421\u0440","Thu":"\u0427\u0442","Fri":"\u041f\u0442","Sat":"\u0421\u0431","Sun":"\u0412\u0441","Jan":"\u042f\u043d\u0432","January":"\u042f\u043d\u0432\u0430\u0440\u044c","Feb":"\u0424\u0435\u0432","February":"\u0424\u0435\u0432\u0440\u0430\u043b\u044c","Mar":"\u041c\u0430\u0440","March":"\u041c\u0430\u0440\u0442","Apr":"\u0410\u043f\u0440","April":"\u0410\u043f\u0440\u0435\u043b\u044c","May":"\u041c\u0430\u0439","Jun":"\u0418\u044e\u043d","June":"\u0418\u044e\u043d\u044c","Jul":"\u0418\u044e\u043b","July":"\u0418\u044e\u043b\u044c","Aug":"\u0410\u0432\u0433","August":"\u0410\u0432\u0433\u0443\u0441\u0442","Sep":"\u0421\u0435\u043d","September":"\u0421\u0435\u043d\u0442\u044f\u0431\u0440\u044c","Oct":"\u041e\u043a\u0442","October":"\u041e\u043a\u0442\u044f\u0431\u0440\u044c","Nov":"\u041d\u043e\u044f","November":"\u041d\u043e\u044f\u0431\u0440\u044c","Dec":"\u0414\u0435\u043a","December":"\u0414\u0435\u043a\u0430\u0431\u0440\u044c"}}'),a=new r.mb;a.registerKeysets("en",i),a.registerKeysets("ru",o);const s=a.i18n.bind(a)},30746:(e,t,n)=>{"use strict";n.d(t,{Dx:()=>i,Wn:()=>r});const r={NO_DATA:"ERR.CK.NO_DATA",INVALID_DATA:"ERR.CK.INVALID_DATA",UNKNOWN:"ERR.CK.UNKNOWN_ERROR",UNKNOWN_PLUGIN:"ERR.CK.UNKNOWN_PLUGIN",TOO_MANY_LINES:"ERR.CK.TOO_MANY_LINES"};class i extends Error{constructor(){let{originalError:e,message:t,code:n=r.UNKNOWN}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};super(t),this.isCustomError=!0,this.code=n,e&&(this.name=e.name,this.stack=e.stack)}}},8978:(e,t,n)=>{"use strict";n.d(t,{X:()=>f});var r=n(24205),i=n(63639),o=n.n(i),a=n(51804),s=n.n(a),l=n(66307);var c=n(95188),u=n.n(c);function d(e,t,n){if("plugins"===n){const n=[...e],r=[...t];let i=n.map((e=>{const t=r.findIndex((t=>{let{type:n}=t;return n===e.type}));if(-1!==t){const n=r[t];return r.splice(t,1),{type:e.type,renderer:n.renderer}}return e}));return r.length>0&&(i=[...i,...r]),i}return u()(e)?s()(e,t,d):t}const h=new class{constructor(){this.events={}}on(e,t){this.events[e]?this.events[e].push(t):this.events[e]=[t]}off(e,t){this.events[e]&&(this.events[e]=this.events[e].filter((e=>{let{id:n}=e;return n!==t})))}dispatch(e,t){this.events[e]&&this.events[e].forEach((e=>{let{action:n}=e;n(t)}))}},p=e=>{(0,r.jQ)({lang:e}),l.p.setLang(e)};const f=new class{constructor(){this.settings={plugins:[],lang:"en"},p(this.get("lang"))}get(e){return o()(this.settings,e)}set(e){const t=(n=e,Object.entries(n).reduce(((e,t)=>{let[n,r]=t;return"undefined"!==typeof r&&(e[n]=r),e}),{}));var n;if(this.settings=s()(this.settings,t,d),t.lang){const e=t.lang||this.get("lang");p(e),h.dispatch("change-lang",e)}}}},66857:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.STRICT=void 0,t.STRICT=!0},85688:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_SYSTEM_DATE_FORMAT=void 0,t.DEFAULT_SYSTEM_DATE_FORMAT="YYYY-MM-DD"},20843:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),i(n(66857),t),i(n(85688),t),i(n(38346),t)},38346:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UtcTimeZone=void 0,t.UtcTimeZone="UTC"},79376:function(e,t,n){"use strict";var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;nn},e.prototype.isValid=function(){return this._date.isValid()},e.prototype.diff=function(t,n,r){var i=e.isDateTime(t)?t.valueOf():t;return this._date.diff(i,n,r)},e.prototype.fromNow=function(e){return this._date.fromNow(e)},e.prototype.from=function(t,n){var r=e.isDateTime(t)?t.valueOf():t;return this._date.from(r,n)},e.prototype.locale=function(e){return e?f({ts:this.valueOf(),timeZone:this._timeZone,offset:this._offset,locale:a.default.locale(e,void 0,!0)}):this._locale},e.prototype.toDate=function(){return new Date(this.valueOf())},e.prototype.unix=function(){return Math.floor(this.valueOf()/1e3)},e.prototype.utc=function(e){return this.timeZone(o.UtcTimeZone,e)},e.prototype.daysInMonth=function(){return this._date.daysInMonth()},e.prototype.set=function(e,t){var n,i,s,l=(0,u.tsToObject)(this._timestamp,this._offset),d=(0,u.normalizeDateComponents)("object"===typeof e?e:((n={})[e]=t,n),u.normalizeComponent),h=void 0!==d.weekNumber||void 0!==d.day||void 0!==d.isoWeekNumber||void 0!==d.isoWeekday,p=void 0!==d.year||void 0!==d.month||void 0!==d.date;if(h&&p)throw new Error("Can't mix weekYear/weekNumber units with year/month/day");if(h){for(var m=a.default.utc((0,u.objToTS)(r(r({},l),d))),g={weekNumber:"week",day:"day",isoWeekNumber:"isoWeek",isoWeekday:"isoWeekday"},v=0,y=["weekNumber","day","isoWeekNumber","isoWeekday"];v{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parseDateMath=t.parse=t.isLikeRelative=void 0;var r=n(18916),i=["y","Q","M","w","d","h","m","s"];function o(e,t,n){for(var r=e.replace(/\s/g,""),o=t,a=0,s=r.length;a10)return;u=parseInt(r.substring(d,a),10)}if(0===c&&1!==u)return;var h=r.charAt(a++);if(!i.includes(h))return;0===c?o=n?o.endOf(h):o.startOf(h):1===c?o=o.add(u,h):2===c&&(o=o.subtract(u,h))}return o}t.isLikeRelative=function(e){return e.startsWith("now")},t.parse=function(e,t){if(void 0===t&&(t={}),e){var n,i,a,s=t.roundUp,l=t.timeZone,c="";if("now"===e.substring(0,3)?(n=(0,r.dateTime)({timeZone:l}),c=e.substring("now".length)):(-1===(i=e.indexOf("||"))?(a=e,c=""):(a=e.substring(0,i),c=e.substring(i+2)),n=(0,r.dateTime)({input:a,timeZone:l})),n.isValid())return c.length?o(c,n,s):n}},t.parseDateMath=o},97553:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),i(n(43104),t)},4796:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=r(n(22877)),o=r(n(46770)),a=r(n(9817)),s=r(n(52703)),l=r(n(46635)),c=r(n(13708)),u=r(n(93876)),d=r(n(87134)),h=r(n(72209)),p=r(n(85226)),f=r(n(1035)),m=r(n(54591)),g=r(n(8901));i.default.extend(a.default),i.default.extend(s.default),i.default.extend(g.default),i.default.extend(l.default),i.default.extend(d.default),i.default.extend(h.default),i.default.extend(c.default),i.default.extend(o.default),i.default.extend(m.default),i.default.extend(p.default),i.default.extend(f.default),i.default.extend(u.default),t.default=i.default},48132:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createDuration=void 0;var r=n(39232),i=n(46808),o=n(90390),a=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9]+)(?:[.,]([0-9]+)?)?S)?)?$/;function s(e){var t=e?parseFloat(e.replace(",",".")):0;return isNaN(t)?0:t}t.createDuration=function(e,t,n){void 0===n&&(n={});var l={},c=null,u=(t&&"object"===typeof t?t:n).lang,d="string"===typeof t?t:"milliseconds";if((0,i.isDuration)(e))return e;if(isNaN(Number(e)))if("string"===typeof e&&(c=a.exec(e))){var h="-"===c[1]?-1:1,p=c[8]&&"-"===c[8][0]?-1:1;l=(0,o.removeZeros)({y:s(c[2])*h,M:s(c[3])*h,w:s(c[4])*h,d:s(c[5])*h,h:s(c[6])*h,m:s(c[7])*h,s:s(c[8])*h,ms:Math.floor(1e3*s(c[9]?"0.".concat(c[9]):c[9]))*p*h})}else{if(!e||"object"!==typeof e)throw new Error("Unknown duration: ".concat(e));l=e}else l[d]=Number(e);return new i.DurationImpl({values:(0,r.normalizeDateComponents)(l,r.normalizeDurationUnit),locale:u})}},46808:function(e,t,n){"use strict";var r,i=this&&this.__assign||function(){return i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isDuration=t.duration=void 0;var r=n(48132);Object.defineProperty(t,"duration",{enumerable:!0,get:function(){return r.createDuration}});var i=n(46808);Object.defineProperty(t,"isDuration",{enumerable:!0,get:function(){return i.isDuration}})},90390:function(e,t){"use strict";var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,r=arguments.length;n{"use strict";t.J=t.CQ=void 0,n(14783).settings;var r=n(18916);Object.defineProperty(t,"CQ",{enumerable:!0,get:function(){return r.dateTime}});var i=n(97553);var o=n(77757);Object.defineProperty(t,"J",{enumerable:!0,get:function(){return o.dateTimeParse}});var a=n(87116);var s=n(20843);var l=n(98507)},77757:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),i(n(4093),t)},4093:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isValid=t.dateTimeParse=t.isLikeRelative=void 0;var r=n(18916),i=n(14783);function o(e){return"string"===typeof e&&i.settings.getRelativeParser().isLikeRelative(e)}t.isLikeRelative=o;t.dateTimeParse=function(e,t){if(e){var n=function(e,t){var n;if(o(e)){if(null!==(n=null===t||void 0===t?void 0:t.allowRelative)&&void 0!==n&&!n)return;return i.settings.getRelativeParser().parse(e,t)}var a=t||{},s=a.format,l=a.lang,c=(0,r.dateTime)({input:e,format:s,lang:l,timeZone:null===t||void 0===t?void 0:t.timeZone});return c.isValid()?c:void 0}(e,t);return n}},t.isValid=function(e){if((0,r.isDateTime)(e))return e.isValid();var n=(0,t.dateTimeParse)(e,{allowRelative:!0});return!!n&&n.isValid()}},14783:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),i(n(82936),t)},24033:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.localeLoaders=void 0,t.localeLoaders={af:function(){return n.e(6392).then(n.t.bind(n,80246,23))},am:function(){return n.e(4618).then(n.t.bind(n,24618,23))},"ar-dz":function(){return n.e(704).then(n.t.bind(n,704,23))},"ar-iq":function(){return n.e(515).then(n.t.bind(n,60515,23))},"ar-kw":function(){return n.e(8858).then(n.t.bind(n,48858,23))},"ar-ly":function(){return n.e(6887).then(n.t.bind(n,96887,23))},"ar-ma":function(){return n.e(4848).then(n.t.bind(n,94848,23))},"ar-sa":function(){return n.e(4198).then(n.t.bind(n,34198,23))},"ar-tn":function(){return n.e(620).then(n.t.bind(n,20620,23))},ar:function(){return n.e(9204).then(n.t.bind(n,89204,23))},az:function(){return n.e(1736).then(n.t.bind(n,11736,23))},be:function(){return n.e(8747).then(n.t.bind(n,38747,23))},bg:function(){return n.e(1528).then(n.t.bind(n,31528,23))},bi:function(){return n.e(6877).then(n.t.bind(n,36877,23))},bm:function(){return n.e(4814).then(n.t.bind(n,34814,23))},"bn-bd":function(){return n.e(202).then(n.t.bind(n,10202,23))},bn:function(){return n.e(9280).then(n.t.bind(n,9280,23))},bo:function(){return n.e(5863).then(n.t.bind(n,65863,23))},br:function(){return n.e(6058).then(n.t.bind(n,46058,23))},bs:function(){return n.e(632).then(n.t.bind(n,70632,23))},ca:function(){return n.e(7202).then(n.t.bind(n,47202,23))},cs:function(){return n.e(7999).then(n.t.bind(n,47999,23))},cv:function(){return n.e(2367).then(n.t.bind(n,52367,23))},cy:function(){return n.e(5373).then(n.t.bind(n,45373,23))},da:function(){return n.e(6393).then(n.t.bind(n,66393,23))},"de-at":function(){return n.e(5448).then(n.t.bind(n,45448,23))},"de-ch":function(){return n.e(6679).then(n.t.bind(n,96679,23))},de:function(){return n.e(4132).then(n.t.bind(n,84132,23))},dv:function(){return n.e(9219).then(n.t.bind(n,29219,23))},el:function(){return n.e(556).then(n.t.bind(n,20556,23))},"en-au":function(){return n.e(8850).then(n.t.bind(n,98850,23))},"en-ca":function(){return n.e(9297).then(n.t.bind(n,29297,23))},"en-gb":function(){return n.e(3630).then(n.t.bind(n,63630,23))},"en-ie":function(){return n.e(3231).then(n.t.bind(n,83231,23))},"en-il":function(){return n.e(6815).then(n.t.bind(n,6815,23))},"en-in":function(){return n.e(2620).then(n.t.bind(n,12620,23))},"en-nz":function(){return n.e(6961).then(n.t.bind(n,96961,23))},"en-sg":function(){return n.e(7257).then(n.t.bind(n,7257,23))},"en-tt":function(){return n.e(8702).then(n.t.bind(n,58702,23))},en:function(){return n.e(3304).then(n.t.bind(n,73304,23))},eo:function(){return n.e(1508).then(n.t.bind(n,11508,23))},"es-do":function(){return n.e(3271).then(n.t.bind(n,53271,23))},"es-mx":function(){return n.e(30).then(n.t.bind(n,50030,23))},"es-pr":function(){return n.e(5117).then(n.t.bind(n,85117,23))},"es-us":function(){return n.e(5387).then(n.t.bind(n,95387,23))},es:function(){return n.e(5670).then(n.t.bind(n,5670,23))},et:function(){return n.e(7388).then(n.t.bind(n,27388,23))},eu:function(){return n.e(3333).then(n.t.bind(n,3333,23))},fa:function(){return n.e(1278).then(n.t.bind(n,61278,23))},fi:function(){return n.e(178).then(n.t.bind(n,10178,23))},fo:function(){return n.e(6892).then(n.t.bind(n,46892,23))},"fr-ca":function(){return n.e(2229).then(n.t.bind(n,62229,23))},"fr-ch":function(){return n.e(4326).then(n.t.bind(n,94326,23))},fr:function(){return n.e(7276).then(n.t.bind(n,97276,23))},fy:function(){return n.e(7803).then(n.t.bind(n,67803,23))},ga:function(){return n.e(5720).then(n.t.bind(n,85720,23))},gd:function(){return n.e(6954).then(n.t.bind(n,6954,23))},gl:function(){return n.e(9413).then(n.t.bind(n,19413,23))},"gom-latn":function(){return n.e(3945).then(n.t.bind(n,53945,23))},gu:function(){return n.e(2981).then(n.t.bind(n,72981,23))},he:function(){return n.e(1150).then(n.t.bind(n,11150,23))},hi:function(){return n.e(3926).then(n.t.bind(n,3926,23))},hr:function(){return n.e(5643).then(n.t.bind(n,45643,23))},ht:function(){return n.e(5161).then(n.t.bind(n,25161,23))},hu:function(){return n.e(2238).then(n.t.bind(n,42238,23))},"hy-am":function(){return n.e(8133).then(n.t.bind(n,18133,23))},id:function(){return n.e(4949).then(n.t.bind(n,84949,23))},is:function(){return n.e(383).then(n.t.bind(n,20383,23))},"it-ch":function(){return n.e(2701).then(n.t.bind(n,32701,23))},it:function(){return n.e(3645).then(n.t.bind(n,73645,23))},ja:function(){return n.e(2677).then(n.t.bind(n,92677,23))},jv:function(){return n.e(2477).then(n.t.bind(n,22477,23))},ka:function(){return n.e(5399).then(n.t.bind(n,45399,23))},kk:function(){return n.e(4985).then(n.t.bind(n,34985,23))},km:function(){return n.e(674).then(n.t.bind(n,10674,23))},kn:function(){return n.e(9207).then(n.t.bind(n,89207,23))},ko:function(){return n.e(7779).then(n.t.bind(n,77779,23))},ku:function(){return n.e(1148).then(n.t.bind(n,61148,23))},ky:function(){return n.e(8011).then(n.t.bind(n,8011,23))},lb:function(){return n.e(96).then(n.t.bind(n,80096,23))},lo:function(){return n.e(8167).then(n.t.bind(n,68167,23))},lt:function(){return n.e(4347).then(n.t.bind(n,64347,23))},lv:function(){return n.e(2223).then(n.t.bind(n,62223,23))},me:function(){return n.e(2033).then(n.t.bind(n,2033,23))},mi:function(){return n.e(8695).then(n.t.bind(n,68695,23))},mk:function(){return n.e(8140).then(n.t.bind(n,18140,23))},ml:function(){return n.e(6227).then(n.t.bind(n,36227,23))},mn:function(){return n.e(148).then(n.t.bind(n,50148,23))},mr:function(){return n.e(9572).then(n.t.bind(n,59572,23))},"ms-my":function(){return n.e(1179).then(n.t.bind(n,81179,23))},ms:function(){return n.e(1746).then(n.t.bind(n,81746,23))},mt:function(){return n.e(3466).then(n.t.bind(n,33466,23))},my:function(){return n.e(4684).then(n.t.bind(n,44684,23))},nb:function(){return n.e(5226).then(n.t.bind(n,45226,23))},ne:function(){return n.e(115).then(n.t.bind(n,50115,23))},"nl-be":function(){return n.e(4964).then(n.t.bind(n,14964,23))},nl:function(){return n.e(1869).then(n.t.bind(n,11869,23))},nn:function(){return n.e(9917).then(n.t.bind(n,59917,23))},"oc-lnc":function(){return n.e(163).then(n.t.bind(n,51343,23))},"pa-in":function(){return n.e(3025).then(n.t.bind(n,73025,23))},pl:function(){return n.e(6156).then(n.t.bind(n,26156,23))},"pt-br":function(){return n.e(6361).then(n.t.bind(n,56361,23))},pt:function(){return n.e(4663).then(n.t.bind(n,74663,23))},rn:function(){return n.e(7992).then(n.t.bind(n,17992,23))},ro:function(){return n.e(3756).then(n.t.bind(n,83756,23))},ru:function(){return n.e(678).then(n.t.bind(n,40678,23))},rw:function(){return n.e(436).then(n.t.bind(n,75643,23))},sd:function(){return n.e(5112).then(n.t.bind(n,5112,23))},se:function(){return n.e(9555).then(n.t.bind(n,49555,23))},si:function(){return n.e(5809).then(n.t.bind(n,25809,23))},sk:function(){return n.e(5450).then(n.t.bind(n,95450,23))},sl:function(){return n.e(5491).then(n.t.bind(n,75491,23))},sq:function(){return n.e(8591).then(n.t.bind(n,98591,23))},"sr-cyrl":function(){return n.e(7016).then(n.t.bind(n,77016,23))},sr:function(){return n.e(9308).then(n.t.bind(n,69308,23))},ss:function(){return n.e(9411).then(n.t.bind(n,99411,23))},"sv-fi":function(){return n.e(6521).then(n.t.bind(n,86521,23))},sv:function(){return n.e(4159).then(n.t.bind(n,14159,23))},sw:function(){return n.e(9528).then(n.t.bind(n,99528,23))},ta:function(){return n.e(4826).then(n.t.bind(n,14826,23))},te:function(){return n.e(5352).then(n.t.bind(n,45352,23))},tet:function(){return n.e(9292).then(n.t.bind(n,49292,23))},tg:function(){return n.e(7684).then(n.t.bind(n,77684,23))},th:function(){return n.e(9212).then(n.t.bind(n,89212,23))},tk:function(){return n.e(6065).then(n.t.bind(n,16065,23))},"tl-ph":function(){return n.e(5341).then(n.t.bind(n,45341,23))},tlh:function(){return n.e(4583).then(n.t.bind(n,4583,23))},tr:function(){return n.e(3920).then(n.t.bind(n,33920,23))},tzl:function(){return n.e(7119).then(n.t.bind(n,97119,23))},"tzm-latn":function(){return n.e(6144).then(n.t.bind(n,36144,23))},tzm:function(){return n.e(1350).then(n.t.bind(n,31350,23))},"ug-cn":function(){return n.e(2590).then(n.t.bind(n,92590,23))},uk:function(){return n.e(6291).then(n.t.bind(n,26291,23))},ur:function(){return n.e(3397).then(n.t.bind(n,53397,23))},"uz-latn":function(){return n.e(1168).then(n.t.bind(n,51168,23))},uz:function(){return n.e(8853).then(n.t.bind(n,8853,23))},vi:function(){return n.e(4535).then(n.t.bind(n,44535,23))},"x-pseudo":function(){return n.e(9101).then(n.t.bind(n,79101,23))},yo:function(){return n.e(2986).then(n.t.bind(n,42986,23))},"zh-cn":function(){return n.e(4080).then(n.t.bind(n,4080,23))},"zh-hk":function(){return n.e(3898).then(n.t.bind(n,73898,23))},"zh-tw":function(){return n.e(1616).then(n.t.bind(n,33739,23))},zh:function(){return n.e(7522).then(n.t.bind(n,87522,23))}}},82936:function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(i,o){function a(e){try{l(r.next(e))}catch(t){o(t)}}function s(e){try{l(r.throw(e))}catch(t){o(t)}}function l(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((r=r.apply(e,t||[])).next())}))},i=this&&this.__generator||function(e,t){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]=0){var v=new Date(g);v.setUTCFullYear(p,f,i.day),g=v.valueOf()}var y=n.valueOf(),b=y%1e3;return(g-(y-=b>=0?b:1e3+b))/6e4}t.timeZoneOffset=u,t.normalizeTimeZone=function(e,t){if(void 0===e||null===e)return t;var n=e.toLowerCase();if("utc"===n||"gmt"===n)return i.UtcTimeZone;if("system"===n)return"system";if("default"===n)return t;if(l(e))return e;throw new Error("InvalidZone: ".concat(e))},t.fixOffset=function(e,t,n){var r=e-60*t*1e3,i=u(n,r);if(t===i)return[r,t];var o=u(n,r-=60*(i-t)*1e3);return i===o?[r,i]:[e-60*Math.min(i,o)*1e3,Math.min(i,o)]}},59318:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),i(n(39232),t)},55353:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getNumberFormat=t.getListFormat=t.getDateTimeFormat=void 0;var n=new Map;t.getDateTimeFormat=function(e,t){void 0===t&&(t={});var r=JSON.stringify([e,t]),i=n.get(r);return i||(i=new Intl.DateTimeFormat(e,t),n.set(r,i)),i};var r=new Map;t.getListFormat=function(e,t){void 0===t&&(t={});var n=JSON.stringify([e,t]),i=r.get(n);return i||(i=new Intl.ListFormat(e,t),r.set(n,i)),i};var i=new Map;t.getNumberFormat=function(e,t){void 0===t&&(t={});var n=JSON.stringify([e,t]),r=i.get(n);return r||(r=new Intl.NumberFormat(e,t),i.set(n,r)),r}},39232:(e,t)=>{"use strict";function n(e,t){return e-t*Math.floor(e/t)}function r(e){return e%4===0&&(e%100!==0||e%400===0)}Object.defineProperty(t,"__esModule",{value:!0}),t.offsetFromString=t.normalizeDateComponents=t.normalizeComponent=t.normalizeDurationUnit=t.objToTS=t.tsToObject=t.daysInMonth=t.isLeapYear=t.floorMod=void 0,t.floorMod=n,t.isLeapYear=r,t.daysInMonth=function(e,t){var i=n(t,12);return 1===i?r(e+(t-i)/12)?29:28:[31,-1,31,30,31,30,31,31,30,31,30,31][i]},t.tsToObject=function(e,t){var n=new Date(e+60*t*1e3);return{year:n.getUTCFullYear(),month:n.getUTCMonth(),date:n.getUTCDate(),hour:n.getUTCHours(),minute:n.getUTCMinutes(),second:n.getUTCSeconds(),millisecond:n.getUTCMilliseconds()}},t.objToTS=function(e){var t=Date.UTC(e.year,e.month,e.date,e.hour,e.minute,e.second,e.millisecond);if(e.year<100&&e.year>=0){var n=new Date(t);return n.setUTCFullYear(e.year,e.month,e.date),n.valueOf()}return t};var i={y:"years",year:"years",years:"years",Q:"quarters",quarter:"quarters",quarters:"quarters",M:"months",month:"months",months:"months",w:"weeks",week:"weeks",weeks:"weeks",d:"days",day:"days",days:"days",h:"hours",hour:"hours",hours:"hours",m:"minutes",minute:"minutes",minutes:"minutes",s:"seconds",second:"seconds",seconds:"seconds",ms:"milliseconds",millisecond:"milliseconds",milliseconds:"milliseconds"};t.normalizeDurationUnit=function(e){var t=["d","D","m","M","w","W","E","Q"].includes(e)?e:e.toLowerCase();if(t in i)return i[t];throw new Error("Invalid unit ".concat(e))};var o={y:"year",year:"year",years:"year",M:"month",month:"month",months:"month",D:"date",date:"date",dates:"date",h:"hour",hour:"hour",hours:"hour",m:"minute",minute:"minute",minutes:"minute",Q:"quarter",quarter:"quarter",quarters:"quarter",s:"second",second:"second",seconds:"second",ms:"millisecond",millisecond:"millisecond",milliseconds:"millisecond",d:"day",day:"day",days:"day",weeknumber:"weekNumber",w:"weekNumber",week:"weekNumber",weeks:"weekNumber",isoweeknumber:"isoWeekNumber",W:"isoWeekNumber",isoweek:"isoWeekNumber",isoweeks:"isoWeekNumber",E:"isoWeekday",isoweekday:"isoWeekday",isoweekdays:"isoWeekday",weekday:"day",weekdays:"day",e:"day"};function a(e){var t=Number(e);if("boolean"===typeof e||""===e||Number.isNaN(t))throw new Error("Invalid unit value ".concat(e));return t}t.normalizeComponent=function(e){var t=["d","D","m","M","w","W","E","Q"].includes(e)?e:e.toLowerCase();if(t in o)return o[t];throw new Error("Invalid unit ".concat(e))},t.normalizeDateComponents=function(e,t){for(var n={},r=0,i=Object.entries(e);r{"use strict";n.d(t,{mb:()=>u});const r=/{{(.*?)}}/g;const i={EmptyKeyset:"EMPTY_KEYSET",EmptyLanguageData:"EMPTY_LANGUAGE_DATA",KeysetNotFound:"KEYSET_NOT_FOUND",MissingKey:"MISSING_KEY",MissingKeyFor0:"MISSING_KEY_FOR_0",MissingKeyParamsCount:"MISSING_KEY_PARAMS_COUNT",MissingKeyPlurals:"MISSING_KEY_PLURALS",NoLanguageData:"NO_LANGUAGE_DATA"};Object.values(i);function o(e){const{code:t,fallbackLang:n,lang:r}=e;let o="Using language ".concat(r,". ");switch(t){case i.EmptyKeyset:o+="Keyset is empty.";break;case i.EmptyLanguageData:o+="Language data is empty.";break;case i.KeysetNotFound:o+="Keyset not found.";break;case i.MissingKey:o+="Missing key.";break;case i.MissingKeyFor0:return o+="Missing key for 0",o;case i.MissingKeyParamsCount:o+="Missing params.count for key.";break;case i.MissingKeyPlurals:o+="Missing required plurals.";break;case i.NoLanguageData:o='Language "'.concat(r,'" is not defined, make sure you call setLang for the same language you called registerKeysets for!')}return n&&(o+=' Trying to use fallback language "'.concat(n,'"...')),o}var a;function s(e,t){return 0===e?t.None:1===e||-1===e?t.One:t.Many}function l(e,t){const n=Math.abs(e%10),r=Math.abs(e%100);return 0===e?t.None:1===n&&11!==r?t.One:n>1&&n<5&&(r<10||r>20)?t.Few:t.Many}function c(e){let{value:t,count:n,lang:r,pluralizers:i,log:o,key:s}=e;if(!Array.isArray(t))return function(e,t,n,r){if("undefined"===typeof t.other)throw new Error("Missing required plural form 'other' for key '".concat(e,"'"));if(t.zero&&0===n)return t.zero;if(!Intl.PluralRules)throw new Error("Intl.PluralRules is not available. Use polyfill.");const i=new Intl.PluralRules(r).select(n);return"other"===i&&"undefined"===typeof t.other?t.many||t.few:t[i]||t.other}(s,t,n,r)||s;if(!i)return o("Can not use deprecated plural format without pluralizers"),s;if(i[r]||o("Pluralization is not configured for language '".concat(r,"', falling back to the english ruleset")),t.length<3)return o("Missing required plurals"),s;const l=i[r]||i.en;return l?t[l(n,a)]||t[a.Many]||s:(o("Fallback pluralization is not configured!"),s)}!function(e){e[e.One=0]="One",e[e.Few=1]="Few",e[e.Many=2]="Many",e[e.None=3]="None"}(a||(a={}));class u{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.data={},this.pluralizers={en:s,ru:l},this.logger=null;const{data:t,fallbackLang:n,lang:r,logger:i=null}=e;this.fallbackLang=n,this.lang=r,this.logger=i,t&&Object.entries(t).forEach((e=>{let[t,n]=e;this.registerKeysets(t,n)}))}setLang(e){this.lang=e}setFallbackLang(e){this.fallbackLang=e}configurePluralization(e){this.pluralizers=Object.assign({},this.pluralizers,e)}registerKeyset(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=this.data[e]&&Object.prototype.hasOwnProperty.call(this.data[e],t);if(r)throw new Error("Keyset '".concat(t,"' is already registered, aborting!"));r&&this.warn("Keyset '".concat(t,"' is already registered.")),this.data[e]=Object.assign({},this.data[e],{[t]:n})}registerKeysets(e,t){Object.keys(t).forEach((n=>{this.registerKeyset(e,n,t[n])}))}has(e,t,n){var r;const i=this.getLanguageData(n);return Boolean(i&&i[e]&&(null===(r=i[e])||void 0===r?void 0:r[t]))}i18n(e,t,n){if(!this.lang&&!this.fallbackLang)throw new Error('Language is not specified. You should set at least one of these: "lang", "fallbackLang"');let r,i;if(this.lang){if(({text:r,details:i}=this.getTranslationData({keysetName:e,key:t,params:n,lang:this.lang})),i){const e=o({code:i.code,lang:this.lang,fallbackLang:this.fallbackLang===this.lang?void 0:this.fallbackLang});this.warn(e,i.keysetName,i.key)}}else this.warn("Target language is not specified.");if(void 0===r&&this.fallbackLang&&this.fallbackLang!==this.lang&&(({text:r,details:i}=this.getTranslationData({keysetName:e,key:t,params:n,lang:this.fallbackLang})),i)){const e=o({code:i.code,lang:this.fallbackLang});this.warn(e,i.keysetName,i.key)}return null!==r&&void 0!==r?r:t}keyset(e){return(t,n)=>this.i18n(e,t,n)}warn(e,t,n){var r;let i="";t?(i+=t,n&&(i+=".".concat(n))):i="languageData",null===(r=this.logger)||void 0===r||r.log("I18n: ".concat(e),{level:"info",logger:i,extra:{type:"i18n"}})}getLanguageData(e){const t=e||this.lang;return t?this.data[t]:void 0}getTranslationData(e){const{lang:t,key:n,keysetName:o,params:a}=e,s=this.getLanguageData(t);if("undefined"===typeof s)return{details:{code:i.NoLanguageData}};if(0===Object.keys(s).length)return{details:{code:i.EmptyLanguageData}};const l=s[o];if(!l)return{details:{code:i.KeysetNotFound,keysetName:o}};if(0===Object.keys(l).length)return{details:{code:i.EmptyKeyset,keysetName:o}};const u=l&&l[n],d={};if(void 0===u)return{details:{code:i.MissingKey,keysetName:o,key:n}};if("string"!==typeof u){const e=Number(null===a||void 0===a?void 0:a.count);if(Number.isNaN(e))return{details:{code:i.MissingKeyParamsCount,keysetName:o,key:n}};d.text=c({key:n,value:u,count:e,lang:this.lang||"en",pluralizers:this.pluralizers,log:e=>this.warn(e,o,n)})}else d.text=u;return a&&(d.text=function(e,t){let n,i="",o=r.lastIndex=0;for(;n=r.exec(e);){o!==n.index&&(i+=e.slice(o,n.index)),o=r.lastIndex;const[a,s]=n;s&&Object.prototype.hasOwnProperty.call(t,s)?i+=t[s]:i+=a}return o{"use strict";n.d(t,{Z:()=>i});var r=n(68963);const i=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M13.5 8a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0ZM15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0Zm-3.9-1.55a.75.75 0 1 0-1.2-.9L7.419 8.858 6.03 7.47a.75.75 0 0 0-1.06 1.06l2 2a.75.75 0 0 0 1.13-.08l3-4Z",clipRule:"evenodd"}))},68010:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(68963);const i=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 13.5a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11ZM8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm1-9.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Zm-.25 3a.75.75 0 0 0-1.5 0V11a.75.75 0 0 0 1.5 0V8.5Z",clipRule:"evenodd"}))},67585:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(68963);const i=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm1-9.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM8 7.75a.75.75 0 0 1 .75.75V11a.75.75 0 0 1-1.5 0V8.5A.75.75 0 0 1 8 7.75Z",clipRule:"evenodd"}))},80518:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(68963);const i=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M13.5 8a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0ZM15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0ZM6.53 5.47a.75.75 0 0 0-1.06 1.06L6.94 8 5.47 9.47a.75.75 0 1 0 1.06 1.06L8 9.06l1.47 1.47a.75.75 0 1 0 1.06-1.06L9.06 8l1.47-1.47a.75.75 0 1 0-1.06-1.06L8 6.94 6.53 5.47Z",clipRule:"evenodd"}))},76506:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(68963);const i=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14ZM6.53 5.47a.75.75 0 0 0-1.06 1.06L6.94 8 5.47 9.47a.75.75 0 1 0 1.06 1.06L8 9.06l1.47 1.47a.75.75 0 1 0 1.06-1.06L9.06 8l1.47-1.47a.75.75 0 1 0-1.06-1.06L8 6.94 6.53 5.47Z",clipRule:"evenodd"}))},3442:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(68963);const i=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"m7.835 6 .76-2.027L9.336 2H5.5a.716.716 0 0 0-.664.45L2.513 8.257a.177.177 0 0 0 .164.243h4.965l-.732 2.013-1.082 2.975a.382.382 0 0 0 .637.392l6.956-7.391A.29.29 0 0 0 13.21 6H7.835Zm1.558-4.154ZM10.563 3l.235-.627A1.386 1.386 0 0 0 9.5.5h-4c-.906 0-1.72.552-2.057 1.393L1.12 7.7A1.677 1.677 0 0 0 2.677 10H5.5l-.545 1.5-.537 1.475a1.882 1.882 0 0 0 3.14 1.933l6.956-7.391A1.79 1.79 0 0 0 13.21 4.5H10l.563-1.5Z",clipRule:"evenodd"}))},93316:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(68963);const i=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M7.134 2.994 2.217 11.5a1 1 0 0 0 .866 1.5h9.834a1 1 0 0 0 .866-1.5L8.866 2.993a1 1 0 0 0-1.732 0Zm3.03-.75c-.962-1.665-3.366-1.665-4.328 0L.919 10.749c-.964 1.666.239 3.751 2.164 3.751h9.834c1.925 0 3.128-2.085 2.164-3.751l-4.917-8.505ZM8 5a.75.75 0 0 1 .75.75v2a.75.75 0 0 1-1.5 0v-2A.75.75 0 0 1 8 5Zm1 5.75a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",clipRule:"evenodd"}))},71586:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(68963);const i=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M5.836 2.244c.962-1.665 3.366-1.665 4.328 0l4.917 8.505c.964 1.666-.239 3.751-2.164 3.751H3.083c-1.925 0-3.128-2.085-2.164-3.751l4.917-8.505ZM8 5a.75.75 0 0 1 .75.75v2a.75.75 0 1 1-1.5 0v-2A.75.75 0 0 1 8 5Zm1 5.75a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",clipRule:"evenodd"}))},77280:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(68963);const i=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M3.47 3.47a.75.75 0 0 1 1.06 0L8 6.94l3.47-3.47a.75.75 0 1 1 1.06 1.06L9.06 8l3.47 3.47a.75.75 0 1 1-1.06 1.06L8 9.06l-3.47 3.47a.75.75 0 0 1-1.06-1.06L6.94 8 3.47 4.53a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"}))},5718:(e,t,n)=>{"use strict";n.d(t,{N:()=>i,b:()=>o});var r=n(5247);const i="gn-";(0,r.withNaming)({e:"__",m:"_"});const o=(0,r.withNaming)({n:i,e:"__",m:"_"})},5687:(e,t,n)=>{"use strict";n.d(t,{d:()=>G});var r="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof window?window:"undefined"!==typeof n.g?n.g:"undefined"!==typeof self?self:{};var i=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},o="object"==typeof r&&r&&r.Object===Object&&r,a="object"==typeof self&&self&&self.Object===Object&&self,s=o||a||Function("return this")(),l=s,c=function(){return l.Date.now()},u=/\s/;var d=function(e){for(var t=e.length;t--&&u.test(e.charAt(t)););return t},h=/^\s+/;var p=function(e){return e?e.slice(0,d(e)+1).replace(h,""):e},f=s.Symbol,m=f,g=Object.prototype,v=g.hasOwnProperty,y=g.toString,b=m?m.toStringTag:void 0;var x=function(e){var t=v.call(e,b),n=e[b];try{e[b]=void 0;var r=!0}catch(o){}var i=y.call(e);return r&&(t?e[b]=n:delete e[b]),i},w=Object.prototype.toString;var S=x,_=function(e){return w.call(e)},C="[object Null]",E="[object Undefined]",T=f?f.toStringTag:void 0;var O=function(e){return null==e?void 0===e?E:C:T&&T in Object(e)?S(e):_(e)},N=function(e){return null!=e&&"object"==typeof e},k="[object Symbol]";var j=p,I=i,P=function(e){return"symbol"==typeof e||N(e)&&O(e)==k},D=NaN,A=/^[-+]0x[0-9a-f]+$/i,R=/^0b[01]+$/i,M=/^0o[0-7]+$/i,L=parseInt;var F=i,z=c,B=function(e){if("number"==typeof e)return e;if(P(e))return D;if(I(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=I(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=j(e);var n=R.test(e);return n||M.test(e)?L(e.slice(2),n?2:8):A.test(e)?D:+e},U="Expected a function",H=Math.max,V=Math.min;var G=function(e,t,n){var r,i,o,a,s,l,c=0,u=!1,d=!1,h=!0;if("function"!=typeof e)throw new TypeError(U);function p(t){var n=r,o=i;return r=i=void 0,c=t,a=e.apply(o,n)}function f(e){var n=e-l;return void 0===l||n>=t||n<0||d&&e-c>=o}function m(){var e=z();if(f(e))return g(e);s=setTimeout(m,function(e){var n=t-(e-l);return d?V(n,o-(e-c)):n}(e))}function g(e){return s=void 0,h&&r?p(e):(r=i=void 0,a)}function v(){var e=z(),n=f(e);if(r=arguments,i=this,l=e,n){if(void 0===s)return function(e){return c=e,s=setTimeout(m,t),u?p(e):a}(l);if(d)return clearTimeout(s),s=setTimeout(m,t),p(l)}return void 0===s&&(s=setTimeout(m,t)),a}return t=B(t)||0,F(n)&&(u=!!n.leading,o=(d="maxWait"in n)?H(B(n.maxWait)||0,t):o,h="trailing"in n?!!n.trailing:h),v.cancel=function(){void 0!==s&&clearTimeout(s),c=0,r=l=i=s=void 0},v.flush=function(){return void 0===s?a:g(z())},v}},50528:(e,t,n)=>{"use strict";n.d(t,{b:()=>r});const r=(0,n(5718).b)("aside-header")},81413:(e,t,n)=>{"use strict";n.d(t,{RL:()=>o,dv:()=>a,hA:()=>l,hr:()=>i,oc:()=>u,pX:()=>s,qA:()=>c,zE:()=>r});const r=1,i=-1,o="left",a="center",s="right",l="fixed",c="moving",u="__index__"},19812:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>D});var r=n(95097),i=n(68963),o=n(83570),a=n.n(o),s=n(5247),l=n(81413);const c=(0,s.withNaming)({e:"__",m:"_"})("data-table");function u(e,t){let{name:n,defaultOrder:i}=e,{sortOrder:o={},sortColumns:a=[]}=t,s=arguments.length>2&&void 0!==arguments[2]&&arguments[2],{defaultOrder:c,disableSortReset:u}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const d=i||c,h={sortOrder:{},sortColumns:[]};if(!n)return s?{sortOrder:o,sortColumns:a}:h;let p=a;const f=o[n];let m=d;if(f&&(m=f===d||u?f===l.zE?l.hr:l.zE:void 0),!s)return m?{sortOrder:{[n]:m},sortColumns:[n]}:h;const g=o,v=n,y=(g[v],(0,r._T)(g,["symbol"===typeof v?v:v+""]));return m?(y[n]=m,new Set(a).has(n)||(p=[...a,n])):p=a.filter((e=>e!==n)),{sortOrder:y,sortColumns:p}}function d(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=t,{sortAscending:i}=e;return"function"===typeof i?(e,t)=>r*i(e,t):(t,i)=>{const o=e._getSortValue(t.row),a=e._getSortValue(i.row);return null==o&&null!=a?n.nullBeforeNumbers?-r:1:null==a&&null!=o?n.nullBeforeNumbers?r:-1:oa?Number(r):0}}function h(e,t,n,r){let{sortOrder:i,sortColumns:o}=n;const a={};t.forEach((e=>{i[e.name]?a[e.name]=d(e,i[e.name],r):e.group&&e.autogroup&&(a[e.name]=d(e,l.zE,r))}));const s=t.filter((e=>e.group)),c=s.length>0,u=[...s.map((e=>a[e.name])).filter(Boolean),...o.map((e=>a[e])).filter(Boolean)],h=e.map(((e,t)=>c?{row:e,index:t,span:{}}:{row:e,index:t}));if(u.length&&!r.externalSort&&h.sort(((e,t)=>{let n=0;return u.some((r=>(n=r(e,t),Boolean(n)))),n||e.index-t.index})),h.length>1&&c){const e=[],t=[];h.forEach((n=>{s.every(((r,i)=>{const o=r._getValue(n.row);return e[i]&&o===t[i]?(e[i].span[r.name]+=1,n.span[r.name]=0,!0):(s.slice(i).forEach(((r,o)=>{e[i+o]=n,t[i+o]=r._getValue(n.row),n.span[r.name]=1})),!1)}))}))}return h}function p(e,t){return(Array.isArray(e)?e:[e]).reduce(((e,n)=>{let{columnId:r,order:i}=n;return u({name:r,defaultOrder:i},e,!0,t)}),{sortOrder:{},sortColumns:[]})}function f(e){let{getColumn:t,columnIndex:n,columnId:r,minWidth:o,maxWidth:a,onResize:s}=e;const l=i.useRef(null),[u,d]=i.useState(!1);return i.useEffect((()=>{const e=l.current;if(!e)return;let i,c,u;const h=function(e){let t,n=null;return function(){for(var r=arguments.length,i=new Array(r),o=0;o{e(...t),n=null})))}}((e=>{if(m(e),"number"!==typeof i||"number"!==typeof c)return;const t=e.clientX-i,n=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:40,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1/0;return Math.max(t,Math.min(e,n))}(c+t,o,a);n!==u&&(u=n,null===s||void 0===s||s(r,u))})),p=e=>{m(e),void 0!==u&&(null===s||void 0===s||s(r,u)),d(!1),i=void 0,document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",p)},f=e=>{var r;c=null===(r=t(n))||void 0===r?void 0:r.getBoundingClientRect().width,m(e),i=e.clientX,d(!0),document.addEventListener("mousemove",h),document.addEventListener("mouseup",p)};return e.addEventListener("mousedown",f),()=>{e.removeEventListener("mousedown",f),document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",p)}}),[r,s,o,a,t,n]),i.createElement("span",{ref:l,className:c("resize-handler",{resizing:u}),onClick:e=>m(e)})}function m(e){e.preventDefault(),e.stopPropagation()}const g=function(){const e=document.createElement("a").style;return e.cssText="position:sticky; position:-webkit-sticky;",-1!==e.position.indexOf("sticky")}(),v={getSrcElement:()=>null,onHeightChange:()=>{}};class y{constructor(e){this.prevHeight=0,this.params=v,this.checkAndUpdateHeight=()=>{this.node?requestAnimationFrame((()=>{const e=this.node;e?this.updateHeight(e.offsetHeight):this.updateHeight(0)})):this.updateHeight(0)},this.params=Object.assign({},e)}destroy(){this.updateHeight(0),this.params=v}get node(){return this.params.getSrcElement()}updateHeight(e){this.prevHeight!==e&&(this.prevHeight=e,this.params.onHeightChange(e))}}const b=i.createElement("svg",{className:c("icon"),viewBox:"0 0 10 6",width:"10",height:"6"},i.createElement("path",{fill:"currentColor",d:"M0 5h10l-5 -5z"})),x=i.createElement("svg",{className:c("icon"),viewBox:"0 0 10 6",width:"10",height:"6"},i.createElement("path",{fill:"currentColor",d:"M0 1h10l-5 5z"})),w={ICON_ASC:b,ICON_DESC:x};const S=e=>{let{sortOrder:t,sortIndex:n,sortable:r,defaultOrder:o}=e;return r?i.createElement("span",{className:c("sort-icon",{shadow:!t}),"data-index":n},function(e){switch(e){case l.zE:return w.ICON_ASC;case l.hr:return w.ICON_DESC;default:return!1}}(t||o)):null};class _ extends i.PureComponent{constructor(){super(...arguments),this.onClick=e=>{if(this.props.onClick){const{row:t,index:n}=this.props;this.props.onClick(t,n,e)}}}render(){const{className:e,columns:t,row:n,index:r,odd:o,footer:a,span:s,getColSpansOfRow:l,headerData:u}=this.props,d=l?l(this.props):void 0;let h=0;return i.createElement("tr",{className:c("row",{odd:o,footer:a,"header-data":u},e),onClick:this.onClick},t.map(((e,t)=>{if(d){if(--h>0)return null;d[e.name]>1&&(h=d[e.name])}let o;if(s){if(0===s[e.name])return null;o=s[e.name]}const l=e._getValue(n);let c=e.customStyle({row:n,index:r,name:e.name,header:!1,footer:a,headerData:u});return e.resizeable&&(c=Object.assign(Object.assign({},c),{width:e.width,maxWidth:e.width})),i.createElement("td",{key:t,className:e._className,title:e._getTitle(n),style:c,colSpan:d?d[e.name]:void 0,rowSpan:o,onClick:e._getOnClick({row:n,index:r,footer:a,headerData:u})},e._renderValue({value:l,row:n,index:r,footer:a,headerData:u}))})))}}_.defaultProps={footer:!1};class C extends i.Component{constructor(){super(...arguments),this._dataRowsRef=null,this.renderedColumns=[],this.renderHeadCell=e=>{var t;const{onResize:n}=this.props,{column:r,rowSpan:o,colSpan:a}=e,{sortable:s=!1,header:l=r.name,className:u,index:d,columnIndex:h,align:p,name:m,width:g,resizeable:v,resizeMinWidth:y,resizeMaxWidth:b}=r,{headerTitle:x="string"===typeof l&&l||void 0}=r;let w=null===(t=r.customStyle)||void 0===t?void 0:t.call(r,{header:!0,name:m});return v&&(w=Object.assign(Object.assign({},w),{width:g,maxWidth:g})),i.createElement("th",{ref:r.dataColumn?this._getColumnRef(h):null,className:c("th",{sortable:s,align:p},u),key:m,title:x,"data-index":d,colSpan:a,rowSpan:o,style:w,onClick:this._getOnSortClick(r)},i.createElement("div",{className:c("head-cell")},l,i.createElement(S,Object.assign({},r))),v&&i.createElement(f,{getColumn:this._getRenderedColumn,columnIndex:h,onResize:n,columnId:m,minWidth:y,maxWidth:b}))},this.renderHeadLevel=(e,t)=>i.createElement("tr",{key:t,className:c("head-row")},e.map(this.renderHeadCell)),this.dataRowsRef=e=>{var t;this._dataRowsRef=e,e&&(null===(t=this.dataRowsHeightObserver)||void 0===t||t.checkAndUpdateHeight())},this._getColumnRef=e=>t=>{this.renderedColumns[e]=t},this._getRenderedColumn=e=>{if(void 0!==e)return this.renderedColumns[e]}}componentDidMount(){this._calculateColumnsWidth(),"function"===typeof this.props.onDataRowsHeightChange&&(this.dataRowsHeightObserver=new y({getSrcElement:()=>this._dataRowsRef,onHeightChange:e=>{"function"===typeof this.props.onDataRowsHeightChange&&this.props.onDataRowsHeightChange(e)}}))}componentDidUpdate(){var e;this._calculateColumnsWidth(),null===(e=this.dataRowsHeightObserver)||void 0===e||e.checkAndUpdateHeight()}componentWillUnmount(){var e;null===(e=this.dataRowsHeightObserver)||void 0===e||e.destroy()}render(){const{headColumns:e,dataColumns:t,renderedDataRows:n}=this.props;return this.renderedColumns.length=t.length,i.createElement(i.Fragment,null,i.createElement("thead",{className:c("head")},e.map(this.renderHeadLevel)),void 0===n?null:i.createElement("tbody",{ref:this.dataRowsRef},n))}_calculateColumnsWidth(){const{onColumnsUpdated:e}=this.props;"function"===typeof e&&requestAnimationFrame((()=>{const t=this.renderedColumns.map((e=>e&&e.getBoundingClientRect().width));e(t)}))}onSort(e,t){const{onSort:n}=this.props;"function"===typeof n&&n(e,t)}_getOnSortClick(e){const{sortable:t=!1,name:n}=e;return n===l.oc?()=>{this.onSort()}:t?t=>{this.onSort(e,t.ctrlKey||t.metaKey)}:void 0}}class E extends i.Component{constructor(){super(...arguments),this.state={style:{top:E.defaultProps.top}},this.onDataRowsHeightChange=e=>{this.props.onDataRowsHeightChange(e+1)},this._nodeRef=e=>{this._node=e}}static getDerivedStateFromProps(e,t){var n;return e.top!==(null===(n=t.style)||void 0===n?void 0:n.top)?void 0===e.top?null:{style:{top:e.top}}:null}render(){const e=this.props,{mode:t,top:n}=e,o=(0,r._T)(e,["mode","top"]);if(t===l.qA){const{style:e}=this.state;return i.createElement("div",{className:c("sticky",{moving:!0,head:!0}),style:e},this.renderHeader(o))}{const{widths:e=[],right:t=0}=this.state,n=e.reduce(((e,t)=>e+t),0);return i.createElement("div",{ref:this._nodeRef,className:c("sticky",{fixed:!0,head:!0}),style:{right:t,display:n?void 0:"none"}},this.renderHeader(o))}}setScrollLeft(e){requestAnimationFrame((()=>{this._node&&(this._node.scrollLeft=e)}))}setRightPosition(e){this.state.right===e||this.props.top||this.props.mode===l.qA||this.setState({right:e})}renderHeader(e){const{widths:t=[]}=this.state,n=t.reduce(((e,t)=>e+t),0);return i.createElement("div",{className:c("table-wrapper",{sticky:!0})},i.createElement("table",{className:c("table",{sticky:!0}),style:{width:n||"auto"}},i.createElement("colgroup",null,t.map(((e,t)=>i.createElement("col",{key:t,style:{width:e}})))),i.createElement(C,Object.assign({},e,{onDataRowsHeightChange:this.onDataRowsHeightChange}))))}updateWidths(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];const{widths:t=[]}=this.state;e.some(((e,n)=>e!==t[n]))&&this.setState({widths:e})}}E.defaultProps={top:0};class T extends i.PureComponent{constructor(){super(...arguments),this.state={style:{bottom:0}},this._nodeFixed=null,this._nodeMoving=null,this._nodeFixedRef=e=>{this._nodeFixed=e},this._nodeMovingRef=e=>{var t;this._nodeMoving=e,e&&(null===(t=this.heightObserver)||void 0===t||t.checkAndUpdateHeight())}}static getDerivedStateFromProps(e,t){var n;return e.bottom!==(null===(n=t.style)||void 0===n?void 0:n.bottom)?void 0===e.bottom?null:{style:{bottom:e.bottom}}:null}componentDidMount(){this.heightObserver=new y({getSrcElement:()=>this._nodeMoving,onHeightChange:this.props.onMovingHeightChange})}componentDidUpdate(){var e;null===(e=this.heightObserver)||void 0===e||e.checkAndUpdateHeight()}componentWillUnmount(){var e;null===(e=this.heightObserver)||void 0===e||e.destroy()}render(){if(!this.props.renderedRows)return null;const{mode:e,renderedRows:t}=this.props;if(e===l.qA){const{style:e}=this.state;return i.createElement("div",{ref:this._nodeMovingRef,className:c("sticky",{footer:!0,moving:!0}),style:e},this.renderFooter(t))}{const{widths:e=[],right:n=0}=this.state,r=e.reduce(((e,t)=>e+t),0);return i.createElement("div",{ref:this._nodeFixedRef,className:c("sticky",{footer:!0,fixed:!0}),style:{right:n,display:r?void 0:"none"}},this.renderFooter(t))}}setScrollLeft(e){requestAnimationFrame((()=>{this._nodeFixed&&(this._nodeFixed.scrollLeft=e)}))}setRightPosition(e){this.state.right!==e&&!this.props.bottom&&this._nodeFixed&&this.setState({right:e})}renderFooter(e){const{widths:t=[]}=this.state,n=t.reduce(((e,t)=>e+t),0);return i.createElement("div",{className:c("table-wrapper",{sticky:!0})},i.createElement("table",{className:c("table",{sticky:!0}),style:{width:n||"auto"}},i.createElement("colgroup",null,t.map(((e,t)=>i.createElement("col",{key:t,style:{width:e}})))),i.createElement("tbody",null,e)))}updateWidths(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];const{widths:t=[]}=this.state;e.some(((e,n)=>e!==t[n]))&&this.setState({widths:e})}}T.defaultProps={bottom:0};class O extends i.PureComponent{constructor(){var e;super(...arguments),e=this,this.state={},this._refBody=e=>{this._body=e},this._refBox=e=>{this._box=e},this._refHead=e=>{this._head=e},this._refStickyHead=e=>{this._stickyHead=e},this._refStickyFooter=e=>{this._stickyFooter=e},this._onBoxScroll=()=>{this._updateBoxConstraints()},this._onColumnsUpdated=e=>{this._stickyHead&&this._stickyHead.updateWidths(e),this._stickyFooter&&this._stickyFooter.updateWidths(e)},this.onMovingHeaderDataRowsHeightChange=e=>{var t;-e!==(null===(t=this.state.movingHeaderStyle)||void 0===t?void 0:t.marginTop)&&this.setState({movingHeaderStyle:{marginTop:-e}})},this.onMovingFooterHeightChange=e=>{var t;-e!==(null===(t=this.state.movingFooterStyle)||void 0===t?void 0:t.marginBottom)&&this.setState({movingFooterStyle:{marginBottom:-e}})},this.renderRow=e=>{const{data:t,onRowClick:n}=this.props,{row:r,index:i,span:o}=t[e];return this.renderRowImpl(r,i,{onRowClick:n,odd:e%2===0,span:o})},this.renderFooterRow=(e,t)=>this.renderRowImpl(e,t,{footer:!0}),this.renderHeaderRow=(e,t)=>this.renderRowImpl(e,t,{headerData:!0}),this.renderRowImpl=function(t,n){let{onRowClick:r,odd:o,span:a,footer:s,headerData:l}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{columns:{dataColumns:c},rowClassName:u,rowKey:d,getColSpansOfRow:h}=e.props,p="function"===typeof u?u(t,n,s,l):"";return i.createElement(_,{getColSpansOfRow:h,key:d(t,n),className:p,columns:c,row:t,index:n,span:a,odd:o,onClick:r,footer:s,headerData:l})},this.renderTable=(e,t)=>{const{footerData:n,columns:{dataColumns:r},settings:{stickyHead:o}}=this.props,{movingHeaderStyle:a,movingFooterStyle:s}=this.state,u=this.getStickyFooterMode();return i.createElement("div",{className:c("table-wrapper"),style:u===l.qA?s:void 0},i.createElement("table",{className:c("table"),style:o===l.qA?a:void 0},i.createElement("colgroup",null,r.map(((e,t)=>{let{width:n}=e;return i.createElement("col",{key:t,width:n})}))),this.renderHead(),i.createElement("tbody",{ref:t},e.length?e:this._getEmptyRow()),n&&i.createElement("tfoot",{className:c("foot",{"has-sticky-footer":u})},n.map(this.renderFooterRow))))}}componentDidMount(){const{stickyHead:e,syncHeadOnResize:t}=this.props.settings;this._updateBoxConstraints(),e&&t&&!this._onWindowResize&&(this._onWindowResize=()=>{this.syncHeadWidths()},window.addEventListener("resize",this._onWindowResize))}componentDidUpdate(){this._updateBoxConstraints()}componentWillUnmount(){this._onWindowResize&&(window.removeEventListener("resize",this._onWindowResize),delete this._onWindowResize)}render(){const{className:e}=this.props,{stickyHead:t,dynamicRender:n}=this.props.settings,r=this.getStickyFooterMode();return i.createElement("div",{className:e,ref:this._refBody},t&&this.renderStickyHead(),i.createElement("div",{ref:this._refBox,className:c("box",{"sticky-head":t,"sticky-footer":r}),onScroll:this._onBoxScroll},n?this.renderTableDynamic():this.renderTableSimple()),r&&this.renderStickyFooter())}_updateBoxConstraints(){const e=this._stickyHead||this._stickyFooter;if(this._box&&e){const e=this._box.offsetWidth-this._box.clientWidth;this._stickyHead&&(this._stickyHead.setRightPosition(e),this._stickyHead.setScrollLeft(this._box.scrollLeft)),this._stickyFooter&&(this._stickyFooter.setRightPosition(e),this._stickyFooter.setScrollLeft(this._box.scrollLeft))}}syncHeadWidths(){this._head&&this._head._calculateColumnsWidth()}_getEmptyRow(){const{columns:{dataColumns:e},emptyDataMessage:t,renderEmptyRow:n}=this.props;return"function"===typeof n?n(e):i.createElement("tr",{className:c("row")},i.createElement("td",{className:c("td",c("no-data")),colSpan:e.length},t))}renderHead(){const{columns:e,onSort:t,onResize:n}=this.props,{displayIndices:r}=this.props.settings,o=this.renderHeaderRows();return i.createElement(C,Object.assign({ref:this._refHead},e,{displayIndices:Boolean(r),onSort:t,onResize:n,onColumnsUpdated:this._onColumnsUpdated,renderedDataRows:o}))}renderStickyHead(){const{columns:e,onSort:t,onResize:n}=this.props,{displayIndices:r,stickyTop:o,stickyHead:a}=this.props.settings,s="auto"===o&&this._body&&this._body.parentNode?this._body.parentNode.offsetTop:Number(o)||0,l=this.renderHeaderRows();return i.createElement(E,Object.assign({mode:a,top:s,ref:this._refStickyHead},e,{displayIndices:r,onSort:t,onResize:n,renderedDataRows:l,onDataRowsHeightChange:this.onMovingHeaderDataRowsHeightChange}))}renderStickyFooter(){const{columns:e}=this.props,{stickyBottom:t}=this.props.settings;let n=Number(t)||0;if("auto"===t&&this._body&&this._body.parentNode){const e=this._body.parentNode;n=e.offsetTop+e.offsetHeight}const r=this.renderFooterRows();return i.createElement(T,{ref:this._refStickyFooter,mode:this.getStickyFooterMode(),bottom:n,dataColumns:e.dataColumns,renderedRows:r,onMovingHeightChange:this.onMovingFooterHeightChange})}renderTableDynamic(){const{data:e,settings:{dynamicInnerRef:t,dynamicRenderType:n="uniform",dynamicRenderUseStaticSize:r,dynamicRenderThreshold:o,dynamicRenderMinSize:s,dynamicRenderScrollParentGetter:l,dynamicRenderScrollParentViewportSizeGetter:c,dynamicItemSizeEstimator:u,dynamicItemSizeGetter:d}={}}=this.props;return i.createElement(a(),{ref:t,type:n,useStaticSize:r,threshold:o,minSize:s,itemSizeEstimator:u,itemSizeGetter:d,length:e.length,itemRenderer:this.renderRow,itemsRenderer:this.renderTable,scrollParentGetter:l,scrollParentViewportSizeGetter:c})}renderTableSimple(){const{data:e}=this.props,t=e.map(((e,t)=>this.renderRow(t)));return this.renderTable(t,null)}renderHeaderRows(){const{headerData:e}=this.props;return e&&e.map(this.renderHeaderRow)}renderFooterRows(){const{footerData:e}=this.props;return null===e||void 0===e?void 0:e.map(this.renderFooterRow)}getStickyFooterMode(){const{footerData:e}=this.props;if(!(null===e||void 0===e?void 0:e.length))return!1;const{stickyFooter:t}=this.props.settings;return t}}const N=i.memo((function(e){const{column:t,value:n,row:r,index:o,footer:a,headerData:s}=e;return i.createElement(i.Fragment,null,t.render({value:n,row:r,index:o,footer:a,headerData:s}))}));class k extends i.Component{constructor(){super(...arguments),this.state=Object.assign({settings:{}},p(this.props.initialSortOrder,this.props.settings)),this._tableRef=e=>{this.table=e},this.renderMemoizedCell=e=>{let{column:t,value:n,row:r,index:o,footer:a,headerData:s}=e;return i.createElement(N,{column:t,value:n,row:r,index:o,footer:a,headerData:s})},this.getColumn=(e,t)=>{var n;const{onResize:r}=this.props,{settings:i}=this.state,{defaultOrder:o}=i,{sortOrder:a={},sortColumns:s,indexColumn:l}=this.state,u=Number(Boolean(l)),d=this.isSortEnabled(),{name:h,accessor:p=e.name,align:f,sortable:m=i.sortable,group:g,autogroup:v=!0}=e,{sortAccessor:y,onClick:b}=e,x=c("td",{align:f},e.className),w=(null!==(n=e.resizeable)&&void 0!==n?n:i.defaultResizeable)&&Boolean(r),S="function"===typeof p?e=>p(e):e=>Object.prototype.hasOwnProperty.call(e,p)?e[p]:void 0,_="function"===typeof e.title?t=>e.title(t):()=>"string"===typeof e.title&&e.title||void 0,C="function"===typeof y?e=>y(e):S,E="function"===typeof e.render?t=>{let{value:n,row:r,index:i,footer:o,headerData:a}=t;return this.renderMemoizedCell({column:e,value:n,row:r,index:i,footer:o,headerData:a})}:e=>{let{value:t}=e;return t},T="function"===typeof e.customStyle?e.customStyle:()=>{},O="function"===typeof b?t=>n=>b(t,e,n):()=>{};return Object.assign(Object.assign({index:t-u,columnIndex:t,dataColumn:!0,defaultOrder:o},e),{resizeable:w,sortable:m&&d,_className:x,_getValue:S,_getTitle:_,_getSortValue:C,_renderValue:E,_getOnClick:O,customStyle:T,group:g,autogroup:v,sortOrder:a[h]||void 0,sortIndex:s.length>1?s.indexOf(h)+1:void 0})},this.isSortEnabled=()=>{const{data:e}=this.props;return Array.isArray(e)&&e.length>1},this.onSort=(e,t)=>{if(e){const{sortOrder:n,sortColumns:r}=u(e,this.state,t,this.props.settings);this.setState({sortOrder:n,sortColumns:r});const{onSort:i}=this.props;if("function"===typeof i){const e=function(e){return Object.keys(e).map((t=>({columnId:t,order:e[t]})))}(n);i(e)}}else{this.setState({sortOrder:{},sortColumns:[]});const{onSort:e}=this.props;"function"===typeof e&&e([])}}}static normalizeStickyHead(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return e!==l.qA||g?e:(console.warn("Your browser does not support position: sticky, moving sticky headers will be disabled."),!1)}static calculateSettings(e){return Object.assign(Object.assign(Object.assign({},k.defaultProps.settings),e),{stickyHead:k.normalizeStickyHead(e.stickyHead),stickyFooter:k.normalizeStickyHead(e.stickyFooter)})}static getIndexColumn(e){let{startIndex:t,data:n,visibleRowIndex:r}=e;const i=t+n.length+1;return{name:l.oc,header:"#",className:c("index"),render:e=>{let{row:n,index:i,footer:o,headerData:a}=e;var s,l;return a?null!==(s=n.headerIndex)&&void 0!==s?s:t+i:o?null!==(l=n.footerIndex)&&void 0!==l?l:t+i:"function"===typeof r?r(n,i):t+i},sortable:!1,resizeable:!1,width:20+10*Math.ceil(Math.log10(i))}}static getDerivedStateFromProps(e){const t=k.calculateSettings(e.settings);return Object.assign({settings:t,indexColumn:Boolean(t.displayIndices)&&k.getIndexColumn(e)},e.sortOrder?Object.assign({},p(e.sortOrder,e.settings)):void 0)}render(){const{getColSpansOfRow:e,headerData:t,data:n,footerData:r,columns:o,startIndex:a,emptyDataMessage:s,rowClassName:l,rowKey:u,onRowClick:d,onResize:p,theme:f,renderEmptyRow:m,nullBeforeNumbers:g}=this.props,{settings:v,sortOrder:y,sortColumns:b}=this.state,{highlightRows:x=!1,stripedRows:w=!1,headerMod:S=!1}=v,_=c({"highlight-rows":x,"striped-rows":w,header:S,theme:f}),C=this.getComplexColumns(o);return v.dynamicRender&&C.dataColumns.some((e=>e.group))&&console.warn("Simultaneously used grouping cells and dynamic render. The table will render unpredictable."),i.createElement(O,{ref:this._tableRef,getColSpansOfRow:e,className:_,settings:v,startIndex:a,columns:C,emptyDataMessage:s,renderEmptyRow:m,rowClassName:l,rowKey:u||k.defaultProps.rowKey,onRowClick:d,headerData:t,data:h(n,C.dataColumns,{sortOrder:y,sortColumns:b},{nullBeforeNumbers:g,externalSort:null===v||void 0===v?void 0:v.externalSort}),footerData:r,onSort:this.onSort,onResize:p})}getComplexColumns(e){const t=[],n=[],r=[],{indexColumn:i}=this.state,o=i?[i,...e]:e,a=(e,i)=>{t[i]||(t[i]=[]);const o=t[i];return e.reduce(((e,t)=>{let s=1,l=-1,c=t;if(Array.isArray(t.sub))s=a(t.sub,i+1);else{const e=this.getColumn(t,n.length);n.push(e),l=i,c=e}const u={column:c,itemLevel:l,colSpan:s,rowSpan:0};return r.push(u),o.push(u),s+e}),0)};return a(o,0),r.forEach((e=>{e.rowSpan=e.itemLevel<0?1:t.length-e.itemLevel})),{headColumns:t,dataColumns:n}}resize(){this.table&&this.table.syncHeadWidths()}}function j(e){return new Set(e.map((e=>e.name))).size!==e.length}k.defaultProps={startIndex:0,emptyDataMessage:"No data",settings:{displayIndices:!0,dynamicRenderMinSize:1,stickyHead:!1,stickyFooter:!1,sortable:!0,externalSort:!1,defaultOrder:l.zE,defaultResizeable:!1},rowKey:(e,t)=>Object.prototype.hasOwnProperty.call(e,"id")?e.id:t,initialSortOrder:{},initialSortColumns:[],theme:"yandex-cloud"},k.getSortedData=h;const I="It is strongly recommended against using duplicate column names. They act as default accessors and titles, so doing so may lead to confusing titles and the wrong data being extracted.";class P extends i.PureComponent{constructor(){super(...arguments),this.state={},this._tableRef=e=>{this.table=e}}static setCustomIcons(e){w.ICON_ASC=e.ICON_ASC||b,w.ICON_DESC=e.ICON_DESC||x}componentDidMount(){j(this.props.columns)&&console.warn(I)}componentDidUpdate(e){const{columns:t}=this.props;t!==e.columns&&j(t)&&console.warn(I)}componentDidCatch(e){console.error(e),this.setState({error:e});const{onError:t}=this.props;"function"===typeof t&&t(e)}render(){const{error:e}=this.state;return e?i.createElement("pre",{className:c("error")},"DataTable got stuck in invalid state. Please tell developers about it.","\n\n",e.stack&&String(e.stack)||String(e)):i.createElement(k,Object.assign({ref:this._tableRef},this.props))}resize(){this.table&&this.table.resize()}}P.FIXED=l.hA,P.MOVING=l.qA,P.ASCENDING=l.zE,P.DESCENDING=l.hr,P.LEFT=l.RL,P.CENTER=l.dv,P.RIGHT=l.pX;const D=P},17176:(e,t,n)=>{"use strict";n.d(t,{z:()=>f});var r=n(68963),i=n(36951),o=n(99742),a=n(93404),s=n(70292),l=n(12913);const c=(0,i.Ge)("button");function u(){(0,l.O)('[Button.Icon] Physical values (left, right) of "side" property are deprecated. Use logical values (start, end) instead.')}const d=e=>{let{side:t,className:n,children:i}=e,o=t;return"left"===o&&(u(),o="start"),"right"===o&&(u(),o="end"),r.createElement("span",{className:c("icon",{side:o},n)},r.createElement("span",{className:c("icon-inner")},i))};d.displayName="Button.Icon";const h=(0,i.Ge)("button"),p=r.forwardRef((function(e,t){let{view:n="normal",size:i="m",pin:o="round-round",selected:s,disabled:l=!1,loading:c=!1,width:u,title:d,tabIndex:p,type:f="button",component:m,href:v,target:y,rel:b,extraProps:x,onClick:w,onMouseEnter:S,onMouseLeave:_,onFocus:C,onBlur:E,children:T,id:O,style:N,className:k,qa:j}=e;const I={title:d,tabIndex:p,onClick:w,onClickCapture:r.useCallback((e=>{a.P.publish({componentId:"Button",eventId:"click",domEvent:e,meta:{content:e.currentTarget.textContent,view:n}})}),[n]),onMouseEnter:S,onMouseLeave:_,onFocus:C,onBlur:E,id:O,style:N,className:h({view:n,size:i,pin:o,selected:s,disabled:l||c,loading:c,width:u},k),"data-qa":j};if("string"===typeof v||m){const e={href:v,target:y,rel:"_blank"!==y||b?b:"noopener noreferrer"};return r.createElement(m||"a",Object.assign(Object.assign(Object.assign(Object.assign({},x),I),m?{}:e),{ref:t,"aria-disabled":l||c}),g(T))}return r.createElement("button",Object.assign({},x,I,{ref:t,type:f,disabled:l||c,"aria-pressed":s}),g(T))}));p.displayName="Button";const f=Object.assign(p,{Icon:d}),m=(0,s.s)(d);function g(e){const t=r.Children.toArray(e);if(1===t.length){const e=t[0];return m(e)?e:(0,o.y)(e)?r.createElement(f.Icon,{key:"icon"},e):r.createElement("span",{key:"text",className:h("text")},e)}{let e,n,i;const a=[];for(const s of t){const t=(0,o.y)(s),i=m(s);if(t||i)if(e||0!==a.length){if(!n&&0!==a.length){const e="icon-end",i="end";n=t?r.createElement(f.Icon,{key:e,side:i},s):r.cloneElement(s,{side:i})}}else{const n="icon-start",i="start";e=t?r.createElement(f.Icon,{key:n,side:i},s):r.cloneElement(s,{side:i})}else a.push(s)}return a.length>0&&(i=r.createElement("span",{key:"text",className:h("text")},a)),[e,n,i]}}},91387:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l});var r=n(95097),i=n(68963),o=n(68512),a=n(28989);const s=(0,n(36951).Ge)("card"),l=i.forwardRef((function(e,t){const{type:n="container",theme:l,view:c,size:u="m",children:d,className:h,onClick:p,disabled:f,selected:m}=e,g=(0,r._T)(e,["type","theme","view","size","children","className","onClick","disabled","selected"]),v="selection"===n,y="container"===n,b=("action"===n||v)&&Boolean(p)&&!(f||m),x=y?"normal":void 0,w=y||v?"outlined":void 0,S=b?p:void 0,{onKeyDown:_}=(0,o.b)(p);return i.createElement(a.x,Object.assign({ref:t,role:b?"button":void 0,className:s({theme:l||x,view:c||w,type:n,selected:m,size:u,disabled:f,clickable:b},h),onClick:S,onKeyDown:b?_:void 0,tabIndex:b?0:void 0},g),d)}))},88776:(e,t,n)=>{"use strict";n.d(t,{J:()=>c});var r=n(68963),i=n(36951);const o={"aria-hidden":!0};function a(e){return"object"===typeof e}function s(e){return"string"===typeof e}const l=(0,i.Ge)("icon"),c=r.forwardRef(((e,t)=>{let n,i,u,{data:d,width:h,height:p,size:f,className:m,fill:g="currentColor",stroke:v="none",qa:y}=e;if(f&&(n=f,i=f),h&&(n=h),p&&(i=p),a(d))({viewBox:u}=d);else if(s(d))u=function(e){const t=e.match(/viewBox=(["']?)([\d\s,-]+)\1/);return t?t[2]:void 0}(d);else if(function(e){return"object"===typeof e&&"defaultProps"in e}(d))({viewBox:u}=d.defaultProps);else if(function(e){return"function"===typeof e&&(!e.prototype||!e.prototype.render)}(d)){const e=d({});e&&({viewBox:u}=e.props)}if(u&&(!n||!i)){const e=u.split(/\s+|\s*,\s*/);n||(n=e[2]),i||(i=e[3])}const b=Object.assign({xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",width:n,height:i,className:l(null,m),fill:g,stroke:v,"data-qa":y},o);if(s(d)){const e=function(e){return e.replace(/]*>/,(e=>e.replace(/(width|height)=(["']?)\d+\2/g,"").replace(/(\s){2,}\b/g,"$1").replace(/(\s)+>/g,">")))}(d);return r.createElement("svg",Object.assign({},b,{ref:t,dangerouslySetInnerHTML:{__html:e}}))}if(a(d)){const e=c.prefix+(d.url||"#".concat(d.id));return r.createElement("svg",Object.assign({},b,{viewBox:u,ref:t}),r.createElement("use",{href:e,xlinkHref:e}))}const x=d;return x.defaultProps&&(x.defaultProps.width=x.defaultProps.height=void 0),r.createElement("svg",Object.assign({},b,{ref:t}),r.createElement(x,{width:void 0,height:void 0}))}));c.displayName="Icon",c.prefix=""},57107:(e,t,n)=>{"use strict";n.d(t,{h:()=>c});var r=n(68963),i=n(38886);const o=r.createContext({current:null});o.displayName="PortalContext";var a=n(87720),s=n(40797);const l=(0,n(36951).Ge)("portal");function c(e){let{container:t,children:n,disablePortal:c}=e;const u=function(){var e;const t=r.useContext(o);let n=null;return"object"===typeof window&&(n=window.document.body),null!==(e=t.current)&&void 0!==e?e:n}(),{scoped:d}=(0,s.T)(),h=null!==t&&void 0!==t?t:u;return c?r.createElement(r.Fragment,null,n):h?i.createPortal(d?r.createElement(a.f,{rootClassName:l("theme-wrapper"),scoped:!0},n):n,h):null}},10288:(e,t,n)=>{"use strict";n.d(t,{x:()=>l});var r=n(95097),i=n(68963),o=n(39137);const a=(0,n(36951).Ge)("text"),s=(e,t)=>{let{variant:n="body-1",ellipsis:r,ellipsisLines:i,whiteSpace:o,wordBreak:s}=e;return a({variant:n,ellipsis:r,ws:o,wb:s,"ellipsis-lines":i},t)},l=i.forwardRef((function(e,t){var{as:n,children:a,variant:l,className:c,ellipsis:u,color:d,whiteSpace:h,wordBreak:p,ellipsisLines:f,style:m,qa:g}=e,v=(0,r._T)(e,["as","children","variant","className","ellipsis","color","whiteSpace","wordBreak","ellipsisLines","style","qa"]);const y=n||"span",b=Object.assign({},m);return"number"===typeof f&&(b.WebkitLineClamp=f),i.createElement(y,Object.assign({ref:t,className:s({variant:l,ellipsis:u,whiteSpace:h,wordBreak:p,ellipsisLines:"number"===typeof f},d?(0,o.V)({color:d},c):c),style:b,"data-qa":g},v),a)}));l.displayName="Text"},39137:(e,t,n)=>{"use strict";n.d(t,{V:()=>i});const r=(0,n(36951).Ge)("color-text"),i=(e,t)=>{let{color:n}=e;return r({color:n},t)}},28989:(e,t,n)=>{"use strict";n.d(t,{x:()=>l});var r=n(95097),i=n(68963),o=n(36951),a=n(95216);const s=(0,o.Ge)("box"),l=i.forwardRef((function(e,t){var{as:n,children:o,qa:l,className:c,width:u,height:d,minWidth:h,minHeight:p,maxHeight:f,maxWidth:m,style:g,spacing:v,overflow:y}=e,b=(0,r._T)(e,["as","children","qa","className","width","height","minWidth","minHeight","maxHeight","maxWidth","style","spacing","overflow"]);const x=n||"div",w=Object.assign({width:u,height:d,minWidth:h,minHeight:p,maxHeight:f,maxWidth:m},g);return i.createElement(x,Object.assign({},b,{"data-qa":l,style:w,ref:t,className:s({overflow:y},v?(0,a.sp)(v,c):c)}),o)}))},77796:(e,t,n)=>{"use strict";n.d(t,{k:()=>u});var r=n(95097),i=n(68963),o=n(36951),a=n(28989),s=n(35490),l=n(34293);const c=(0,o.Ge)("flex"),u=i.forwardRef((function(e,t){const{direction:n,grow:o,basis:u,children:d,style:h,alignContent:p,alignItems:f,alignSelf:m,justifyContent:g,justifyItems:v,justifySelf:y,shrink:b,wrap:x,inline:w,gap:S,gapRow:_,className:C,space:E,centerContent:T}=e,O=(0,r._T)(e,["direction","grow","basis","children","style","alignContent","alignItems","alignSelf","justifyContent","justifyItems","justifySelf","shrink","wrap","inline","gap","gapRow","className","space","centerContent"]),{getClosestMediaProps:N,theme:{spaceBaseSize:k}}=(()=>{const{activeMediaQuery:e,theme:t}=i.useContext(s.V),{isMediaActive:n,getClosestMediaProps:r}=i.useMemo((()=>({isMediaActive:(0,l.ur)(e),getClosestMediaProps:(0,l.GD)(e)})),[e]);return{theme:t,activeMediaQuery:e,isMediaActive:n,getClosestMediaProps:r}})(),j=e=>"object"===typeof e&&null!==e?N(e):e,I=j(S),P=I?k*Number(I):void 0,D=j(_)||I,A=D?k*Number(D):void 0,R=j(E),M=S||_||!R?void 0:(0,l.cA)(R);return i.createElement(a.x,Object.assign({className:c({"center-content":T,inline:w,s:M},C),style:Object.assign({flexDirection:j(n),flexGrow:!0===o?1:o,flexWrap:!0===x?"wrap":x,flexBasis:u,flexShrink:b,columnGap:P,rowGap:A,alignContent:j(p),alignItems:j(f),alignSelf:j(m),justifyContent:j(g),justifyItems:j(v),justifySelf:j(y)},h),ref:t},O),E?i.Children.map(d,(e=>e?i.createElement("div",{className:c("wr")},e):e)):d)}))},14399:(e,t,n)=>{"use strict";n.d(t,{A:()=>i,Q:()=>r});const r={.5:"half"},i={breakpoints:{s:576,m:768,l:1080,xl:1200,xxl:1400,xxxl:1920},spaceBaseSize:4,components:{container:{gutters:"3",media:{l:{gutters:"5"}}}}}},35490:(e,t,n)=>{"use strict";n.d(t,{V:()=>o});var r=n(68963),i=n(14399);const o=r.createContext({theme:i.A,activeMediaQuery:"s"})},95216:(e,t,n)=>{"use strict";n.d(t,{sp:()=>s,W:()=>a});var r=n(36951),i=n(34293);const o=(0,r.Ge)("s"),a=(e,t)=>{const n=[];for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)){const t=e[r];"undefined"!==typeof t&&n.push(o("".concat(r,"_").concat((0,i.cA)(t))))}return t&&n.push(t),n.join(" ")},s=a},34293:(e,t,n)=>{"use strict";n.d(t,{GD:()=>s,cA:()=>l,ur:()=>o});var r=n(14399);const i={s:0,m:1,l:2,xl:3,xxl:4,xxxl:5},o=e=>t=>e in i&&i[e]-i[t]>=0,a=["s","m","l","xl","xxl","xxxl"],s=e=>function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!e)return;let n=e;for(;n;){if(t[n])return t[n];n=a[i[n]-1]}},l=e=>e in r.Q?r.Q[e]:String(e)},84584:(e,t,n)=>{"use strict";n.d(t,{z:()=>o});var r=n(68963);const i={mobile:!1,platform:n(66573).t.BROWSER,useHistory:()=>({action:"",replace(){},push(){},goBack(){}}),useLocation:()=>({pathname:"",search:"",hash:""})},o=r.createContext(i)},66573:(e,t,n)=>{"use strict";n.d(t,{t:()=>r});var r,i=n(36951);!function(e){e.IOS="ios",e.ANDROID="android",e.BROWSER="browser"}(r||(r={}));(0,i.Ge)("root")({mobile:!0}).split(/\s+/)[1]},79805:(e,t,n)=>{"use strict";n.d(t,{X:()=>o});var r=n(68963),i=n(84584);function o(){return r.useContext(i.z).mobile}},57840:(e,t,n)=>{"use strict";n.d(t,{N:()=>r});const r=n(68963).createContext(void 0);r.displayName="ThemeContext"},87720:(e,t,n)=>{"use strict";n.d(t,{f:()=>O});var r=n(68963),i=n(35490);const o={media:"",matches:!1,onchange:()=>{},addListener:()=>{},removeListener:()=>{},addEventListener:()=>{},removeEventListener:()=>{},dispatchEvent:e=>!0},a=e=>"undefined"===typeof window||"function"!==typeof window.matchMedia?o:window.matchMedia(e);class s{constructor(e){this.queryListsDecl=[];const t={s:"(max-width: ".concat((n=e).m-1,"px)"),m:"(min-width: ".concat(n.m,"px) and (max-width: ").concat(n.l-1,"px)"),l:"(min-width: ".concat(n.l,"px) and (max-width: ").concat(n.xl-1,"px)"),xl:"(min-width: ".concat(n.xl,"px) and (max-width: ").concat(n.xxl-1,"px)"),xxl:"(min-width: ".concat(n.xxl,"px) and (max-width: ").concat(n.xxxl-1,"px)"),xxxl:"(min-width: ".concat(n.xxxl,"px)")};var n;this.queryListsDecl=[["s",a(t.s)],["m",a(t.m)],["l",a(t.l)],["xl",a(t.xl)],["xxl",a(t.xxl)],["xxxl",a(t.xxxl)]]}getCurrentActiveMedia(){const e=this.queryListsDecl.find((e=>{let[t,n]=e;return n.matches}));return e?e[0]:"s"}addListeners(e){this.queryListsDecl.forEach((t=>{let[n,r]=t;return r.addEventListener("change",e)}))}removeListeners(e){this.queryListsDecl.forEach((t=>{let[n,r]=t;return r.removeEventListener("change",e)}))}}const l=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"s";const[n,i]=r.useState(t);return r.useLayoutEffect((()=>{const t=new s(e),n=()=>{i(t.getCurrentActiveMedia())};return t.addListeners(n),n(),()=>{t.removeListeners(n)}}),[e]),n};var c=n(3186),u=n.n(c);function d(e){let{children:t,config:n,initialMediaQuery:o}=e;const a=r.useContext(i.V),s=r.useMemo((()=>function(e){let{theme:t,override:n}=e;return u()(t,n)}({theme:a.theme,override:n})),[n,a.theme]),c=l(s.breakpoints,o),d=r.useMemo((()=>({activeMediaQuery:c,theme:s})),[c,s]);return r.createElement(i.V.Provider,{value:d},t)}var h=n(36951),p=n(57840);const f=r.createContext(void 0);f.displayName="ThemeSettingsContext";const m="system",g="light",v="dark",y="root",b="ltr",x=(0,h.Ge)(y),w=x();function S(e){let{theme:t,nativeScrollbar:n=!1,className:r,prevClassName:i}=e;const o=document.body;if(o.classList.contains(w)||o.classList.add(w),i){i.split(" ").forEach((e=>{e&&o.classList.remove(e)}))}if(r){r.split(" ").forEach((e=>{e&&!o.classList.contains(e)&&o.classList.add(e)}))}[...o.classList].forEach((e=>{e.startsWith((0,h.Ui)(x({theme:!0})))&&o.classList.remove(e)})),o.classList.add((0,h.Ui)(x({theme:t})));const a={"native-scrollbar":n};for(const[s,l]of Object.entries(a))o.classList.toggle((0,h.Ui)(x({[s]:!0})),l)}const _="undefined"!==typeof window&&"function"===typeof window.matchMedia,C=()=>window.matchMedia("(prefers-color-scheme: dark)");function E(){const[e,t]=r.useState(_&&C().matches?"dark":"light");return r.useEffect((()=>{if(!_)return;const e=function(e,t){const n="function"!==typeof e.addEventListener;return n?e.addListener(t):e.addEventListener("change",t),()=>{n?e.removeListener(t):e.removeEventListener("change",t)}}(C(),(function(e){t(e.matches?"dark":"light")}));return()=>e()}),[]),e}const T=(0,h.Ge)(y);function O(e){let{theme:t,systemLightTheme:n,systemDarkTheme:i,direction:o,nativeScrollbar:a,scoped:s=!1,rootClassName:l="",children:c,layout:u}=e;var h,y,x,w;const _=r.useContext(p.N),C=r.useContext(f),O=void 0!==_||s,N=null!==(h=null===_||void 0===_?void 0:_.theme)&&void 0!==h?h:m,k=null!==t&&void 0!==t?t:N,j=null!==(y=null!==n&&void 0!==n?n:null===C||void 0===C?void 0:C.systemLightTheme)&&void 0!==y?y:g,I=null!==(x=null!==i&&void 0!==i?i:null===C||void 0===C?void 0:C.systemDarkTheme)&&void 0!==x?x:v,P=null!==(w=null===_||void 0===_?void 0:_.direction)&&void 0!==w?w:b,D=null!==o&&void 0!==o?o:P,A="light"===E()?j:I,R="system"===k?A:k,M=r.useRef("");r.useLayoutEffect((()=>{O||(S({theme:R,nativeScrollbar:a,className:l,prevClassName:M.current}),function(e){const t=document.body;e===b?t.removeAttribute("dir"):t.setAttribute("dir",e)}(D),M.current=l)}),[O,R,D,a,l]);const L=r.useMemo((()=>({theme:k,themeValue:R,direction:D,scoped:O})),[k,R,D,O]),F=r.useMemo((()=>({systemLightTheme:j,systemDarkTheme:I})),[j,I]);return r.createElement(d,Object.assign({},u),r.createElement(p.N.Provider,{value:L},r.createElement(f.Provider,{value:F},O?r.createElement("div",{className:T({theme:R,"native-scrollbar":!1!==a},l),dir:D},c):c)))}O.displayName="ThemeProvider"},40797:(e,t,n)=>{"use strict";n.d(t,{T:()=>o});var r=n(68963),i=n(57840);function o(){const e=r.useContext(i.N);if(void 0===e)throw new Error("useTheme* hooks must be used within ThemeProvider");return e}},64270:(e,t,n)=>{"use strict";n.d(t,{C:()=>i});var r=n(40797);function i(){return(0,r.T)().themeValue}},54973:(e,t,n)=>{"use strict";n.d(t,{e:()=>s});var r=n(31329),i=n(24205);const o=(0,i.iE)().lang,a=new r.mb({lang:o,fallbackLang:o});function s(e,t){return Object.entries(e).forEach((e=>{let[n,r]=e;return a.registerKeyset(n,t,r)})),a.keyset(t)}(0,i.Pe)((e=>{a.setLang(e.lang)}))},36951:(e,t,n)=>{"use strict";n.d(t,{A7:()=>i,Ge:()=>o,Ui:()=>a});var r=n(5247);const i="g-",o=((0,r.withNaming)({e:"__",m:"_"}),(0,r.withNaming)({n:i,e:"__",m:"_"}));function a(e){return e.split(/\s(.*)/)[1]}},99742:(e,t,n)=>{"use strict";n.d(t,{x:()=>s,y:()=>l});var r=n(88776),i=n(36951),o=n(70292);let a=1;function s(){return"".concat(i.A7,"uniq-").concat(a++)}const l=(0,o.s)(r.J)},24205:(e,t,n)=>{"use strict";var r;n.d(t,{Pe:()=>s,iE:()=>l,jQ:()=>a}),function(e){e.Ru="ru",e.En="en"}(r||(r={}));let i=[];const o={lang:r.En},a=e=>{Object.assign(o,e),i.forEach((e=>{e(o)}))},s=e=>(i.push(e),()=>{i=i.filter((t=>t!==e))}),l=()=>o},93404:(e,t,n)=>{"use strict";n.d(t,{P:()=>o});var r=n(95097),i=n(36951);const o=new class{constructor(e){this.subscriptions=[],this.componentPrefix=e}subscribe(e){this.subscriptions.push(e)}unsubscribe(e){const t=this.subscriptions.indexOf(e);t>-1&&this.subscriptions.splice(t,1)}publish(e){var{componentId:t}=e,n=(0,r._T)(e,["componentId"]);this.subscriptions.forEach((e=>e(Object.assign(Object.assign({},n),{componentId:this.componentPrefix?"".concat(this.componentPrefix).concat(t):t}))))}withEventPublisher(e,t){return n=>{this.publish(Object.assign(Object.assign({},n),{componentId:e,qa:t}))}}}(i.A7)},70292:(e,t,n)=>{"use strict";n.d(t,{s:()=>i});var r=n(68963);function i(e){return function(t){if(!r.isValidElement(t))return!1;const{type:n}=t;if(n===e)return!0;if("string"===typeof e||"string"===typeof n)return!1;const i=n.displayName;return Boolean(i&&i===e.displayName)}}},31445:(e,t,n)=>{"use strict";n.d(t,{Y:()=>i});var r=n(36951);function i(e){return{appear:(0,r.Ui)(e({appear:!0})),appearActive:(0,r.Ui)(e({appear:"active"})),appearDone:(0,r.Ui)(e({appear:"done"})),enter:(0,r.Ui)(e({enter:!0})),enterActive:(0,r.Ui)(e({enter:"active"})),enterDone:(0,r.Ui)(e({enter:"done"})),exit:(0,r.Ui)(e({exit:!0})),exitActive:(0,r.Ui)(e({exit:"active"})),exitDone:(0,r.Ui)(e({exit:"done"}))}}},12913:(e,t,n)=>{"use strict";n.d(t,{O:()=>i});const r=new Map;function i(e){!e||r.has(e)}},59926:(e,t,n)=>{"use strict";n.d(t,{V:()=>r});const r={BACKSPACE:"Backspace",ENTER:"Enter",TAB:"Tab",SPACEBAR:" ",SPACEBAR_OLD:"Spacebar",ESCAPE:"Escape",ARROW_UP:"ArrowUp",ARROW_DOWN:"ArrowDown"}},68512:(e,t,n)=>{"use strict";n.d(t,{S:()=>o,b:()=>a});var r=n(68963),i=n(59926);function o(e){return t=>{e&&[i.V.ENTER,i.V.SPACEBAR,i.V.SPACEBAR_OLD].includes(t.key)&&(t.preventDefault(),e(t))}}function a(e){return{onKeyDown:r.useMemo((()=>o(e)),[e])}}},63660:(e,t,n)=>{"use strict";n.d(t,{m:()=>re});var r=n(63609),i=n(68963),o=n(63639),a=n.n(o),s=n(38886),l=n(36951);function c(e,t){return e.findIndex((e=>e.name===t))}function u(e,t){return-1!==c(e,t)}function d(e,t){return u(e,t)?e.filter((e=>e.name!==t)):e}const h=i.createContext(null);h.displayName="ToasterContext";const p=i.createContext([]);p.displayName="ToastsContext";const f=i.forwardRef((function(e,t){let{children:n}=e;const[r,o]=i.useState([]),a=i.useCallback((e=>{const{name:t}=e;o((n=>{let r=n;return u(n,t)&&(r=d(n,t)),[...r,Object.assign(Object.assign({},e),{addedAt:Date.now(),ref:i.createRef()})]}))}),[]),s=i.useCallback((e=>{o((t=>d(t,e)))}),[]),l=i.useCallback((()=>{o((()=>[]))}),[]),f=i.useCallback(((e,t)=>{o((n=>{if(!u(n,e))return n;const r=c(n,e);return[...n.slice(0,r),Object.assign(Object.assign({},n[r]),t),...n.slice(r+1)]}))}),[]),m=i.useRef(r);i.useEffect((()=>{m.current=r}),[r]);const g=i.useCallback((e=>!!m.current&&u(m.current,e)),[]),v=i.useMemo((()=>({add:a,remove:s,removeAll:l,update:f,has:g})),[a,s,l,f,g]);return i.useImperativeHandle(t,(()=>({add:a,remove:s,removeAll:l,update:f,has:g}))),i.createElement(h.Provider,{value:v},i.createElement(p.Provider,{value:r},n))}));f.displayName="ToasterProvider";var m=n(79805),g=n(63366),v=n(87462),y=n(97326),b=n(51721),x=n(24330);function w(e,t){var n=Object.create(null);return e&&i.Children.map(e,(function(e){return e})).forEach((function(e){n[e.key]=function(e){return t&&(0,i.isValidElement)(e)?t(e):e}(e)})),n}function S(e,t,n){return null!=n[t]?n[t]:e.props[t]}function _(e,t,n){var r=w(e.children),o=function(e,t){function n(n){return n in t?t[n]:e[n]}e=e||{},t=t||{};var r,i=Object.create(null),o=[];for(var a in e)a in t?o.length&&(i[a]=o,o=[]):o.push(a);var s={};for(var l in t){if(i[l])for(r=0;r{t(!0)}),[]),i.useCallback((()=>{t(!1)}),[]),e]}();var s,l;return s=t,l=a?null:n,i.useEffect((()=>{if("number"!==typeof l)return;const e=setTimeout((()=>{s()}),l);return()=>{clearTimeout(e)}}),[s,l]),{onMouseOver:r,onMouseLeave:o}}var R=n(17176),M=n(88776),L=n(54973);const F=JSON.parse('{"label_close-button":"Close"}'),z=JSON.parse('{"label_close-button":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c"}'),B=(0,L.e)({en:F,ru:z},"Toaster"),U=(0,l.Ge)("toast"),H=5e3,V={normal:null,info:k.Z,success:j.Z,warning:I.Z,danger:I.Z,utility:P.Z};const G=i.forwardRef((function(e,t){const{name:n,content:r,actions:o,title:a,className:s,theme:l="normal",renderIcon:c,autoHiding:u=H,isClosable:d=!0,mobile:h=!1,removeCallback:p}=e,f=i.useCallback((()=>p(n)),[p,n]),m=A({onClose:f,timeout:"number"===typeof u?u:void 0}),g={mobile:h,theme:l},v=Boolean(a),y=Boolean(r),b=c?c(e):function(e){let{theme:t}=e;return t&&V[t]?i.createElement(M.J,{data:V[t],size:20,className:U("icon",{[t]:!0})}):null}({theme:l});return i.createElement("div",Object.assign({ref:t,className:U(g,s)},m,{"data-toast":!0}),b&&i.createElement("div",{className:U("icon-container")},b),i.createElement("div",{className:U("container")},v&&i.createElement("h3",{className:U("title")},a),d&&i.createElement(R.z,{size:"s",view:"flat",className:U("btn-close"),onClick:f,extraProps:{"aria-label":B("label_close-button")}},i.createElement(M.J,{data:D.Z})),y&&i.createElement("div",{className:U("content",{"without-title":!v})},r),function(e){let{actions:t,onClose:n}=e;return t&&t.length?i.createElement("div",{className:U("actions")},t.map(((e,t)=>{let{label:r,onClick:o,view:a="outlined",removeAfterClick:s=!0}=e;return i.createElement(R.z,{key:"".concat(r,"__").concat(t),className:U("action"),onClick:()=>{o(),s&&n()},type:"button",size:"l",view:a,width:"auto"},r)}))):null}({actions:o,onClose:f})))})),W=(0,N.Y)((0,l.Ge)("toast-animation-desktop")),q=(0,N.Y)((0,l.Ge)("toast-animation-mobile"));function Z(e){const{toasts:t,mobile:n,removeCallback:r}=e;return i.createElement(T,{component:null},t.map((e=>i.createElement(O.Z,{key:"".concat(e.name,"_").concat(e.addedAt),nodeRef:e.ref,classNames:n?q:W,addEndListener:t=>{var n,r;return null===(r=null===(n=e.ref)||void 0===n?void 0:n.current)||void 0===r?void 0:r.addEventListener("animationend",t)},onEnter:()=>Y(e),onExit:()=>Y(e)},i.createElement(G,Object.assign({},e,{mobile:n,removeCallback:r}))))))}function Y(e){var t;(null===(t=e.ref)||void 0===t?void 0:t.current)&&e.ref.current.style.setProperty("--_--item-height","".concat(e.ref.current.offsetHeight,"px"))}var K=n(57107);const Q=(0,l.Ge)("toaster");function X(e){let{children:t,className:n,mobile:r}=e;const o=i.useRef("undefined"===typeof document?void 0:document.createElement("div"));return i.useEffect((()=>{const e=o.current;if(e)return document.body.appendChild(e),()=>{document.body.removeChild(e)}}),[]),i.useEffect((()=>{o.current&&(o.current.className=Q({mobile:r},n))}),[n,r]),i.createElement(K.h,{container:o.current},t)}function $(e){let{className:t,mobile:n,hasPortal:r=!0}=e;const o=(0,m.X)(),{remove:a}=function(){const e=i.useContext(h);if(null===e)throw new Error("Toaster: `useToaster` hook is used out of context");return i.useMemo((()=>e),[e])}(),s=i.useContext(p),l=i.createElement(Z,{toasts:s,removeCallback:a,mobile:null!==n&&void 0!==n?n:o});return r?i.createElement(X,{className:t||"",mobile:null!==n&&void 0!==n?n:o},l):l}X.displayName="ToasterPortal",$.displayName="ToasterComponent";const J=Symbol("Toaster instance key"),ee=(0,l.Ge)("toaster");let te;class ne{static injectReactDOMClient(e){te=e}constructor(e){this.className="",this.mobile=!1,this.componentAPI=null,this.add=e=>{var t;null===(t=this.componentAPI)||void 0===t||t.add(e)},this.remove=e=>{var t;null===(t=this.componentAPI)||void 0===t||t.remove(e)},this.removeAll=()=>{var e;null===(e=this.componentAPI)||void 0===e||e.removeAll()},this.update=(e,t)=>{var n;null===(n=this.componentAPI)||void 0===n||n.update(e,t)},this.has=e=>{var t,n;return null!==(n=null===(t=this.componentAPI)||void 0===t?void 0:t.has(e))&&void 0!==n&&n};const t=a()(e,["className"],""),n=a()(e,["mobile"],!1);if(window[J]instanceof ne){const e=window[J];return e.className=t,e.mobile=n,e.setRootNodeClassName(),e}this.className=t,this.mobile=n,this.createRootNode(),this.createReactRoot(),this.render(),window[J]=this}destroy(){s.unmountComponentAtNode(this.rootNode),document.body.removeChild(this.rootNode)}createRootNode(){this.rootNode=document.createElement("div"),this.setRootNodeClassName(),document.body.appendChild(this.rootNode)}createReactRoot(){te&&(this.reactRoot=te.createRoot(this.rootNode))}render(){const e=i.createElement(f,{ref:e=>{this.componentAPI=e}},i.createElement($,{hasPortal:!1,mobile:this.mobile}));this.reactRoot?this.reactRoot.render(e):s.render(e,this.rootNode,(()=>Promise.resolve()))}setRootNodeClassName(){this.rootNode.className=ee({mobile:this.mobile},this.className)}}ne.injectReactDOMClient(r);const re="object"===typeof window?new ne:{}},69039:(e,t,n)=>{"use strict";var r=n(42780),i=n(9371),o=i(r("String.prototype.indexOf"));e.exports=function(e,t){var n=r(e,!!t);return"function"===typeof n&&o(e,".prototype.")>-1?i(n):n}},9371:(e,t,n)=>{"use strict";var r=n(88050),i=n(42780),o=n(18083),a=n(84968),s=i("%Function.prototype.apply%"),l=i("%Function.prototype.call%"),c=i("%Reflect.apply%",!0)||r.call(l,s),u=n(85122),d=i("%Math.max%");e.exports=function(e){if("function"!==typeof e)throw new a("a function is required");var t=c(r,l,arguments);return o(t,1+d(0,e.length-(arguments.length-1)),!0)};var h=function(){return c(r,s,arguments)};u?u(e.exports,"apply",{value:h}):e.exports.apply=h},69886:(e,t,n)=>{"use strict";var r=n(21034),i={"text/plain":"Text","text/html":"Url",default:"Text"},o="Copy to clipboard: #{key}, Enter";e.exports=function(e,t){var n,a,s,l,c,u,d=!1;t||(t={}),n=t.debug||!1;try{if(s=r(),l=document.createRange(),c=document.getSelection(),(u=document.createElement("span")).textContent=e,u.ariaHidden="true",u.style.all="unset",u.style.position="fixed",u.style.top=0,u.style.clip="rect(0, 0, 0, 0)",u.style.whiteSpace="pre",u.style.webkitUserSelect="text",u.style.MozUserSelect="text",u.style.msUserSelect="text",u.style.userSelect="text",u.addEventListener("copy",(function(r){if(r.stopPropagation(),t.format)if(r.preventDefault(),"undefined"===typeof r.clipboardData){n&&console.warn("unable to use e.clipboardData"),n&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var o=i[t.format]||i.default;window.clipboardData.setData(o,e)}else r.clipboardData.clearData(),r.clipboardData.setData(t.format,e);t.onCopy&&(r.preventDefault(),t.onCopy(r.clipboardData))})),document.body.appendChild(u),l.selectNodeContents(u),c.addRange(l),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");d=!0}catch(h){n&&console.error("unable to copy using execCommand: ",h),n&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),d=!0}catch(h){n&&console.error("unable to copy using clipboardData: ",h),n&&console.error("falling back to prompt"),a=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:o),window.prompt(a,e)}}finally{c&&("function"==typeof c.removeRange?c.removeRange(l):c.removeAllRanges()),u&&document.body.removeChild(u),s()}return d}},47694:(e,t)=>{var n;n=function(e){e.version="1.2.2";var t=function(){for(var e=0,t=new Array(256),n=0;256!=n;++n)e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=n)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1,t[n]=e;return"undefined"!==typeof Int32Array?new Int32Array(t):t}(),n=function(e){var t=0,n=0,r=0,i="undefined"!==typeof Int32Array?new Int32Array(4096):new Array(4096);for(r=0;256!=r;++r)i[r]=e[r];for(r=0;256!=r;++r)for(n=e[r],t=256+r;t<4096;t+=256)n=i[t]=n>>>8^e[255&n];var o=[];for(r=1;16!=r;++r)o[r-1]="undefined"!==typeof Int32Array?i.subarray(256*r,256*r+256):i.slice(256*r,256*r+256);return o}(t),r=n[0],i=n[1],o=n[2],a=n[3],s=n[4],l=n[5],c=n[6],u=n[7],d=n[8],h=n[9],p=n[10],f=n[11],m=n[12],g=n[13],v=n[14];e.table=t,e.bstr=function(e,n){for(var r=-1^n,i=0,o=e.length;i>>8^t[255&(r^e.charCodeAt(i++))];return~r},e.buf=function(e,n){for(var y=-1^n,b=e.length-15,x=0;x>8&255]^m[e[x++]^y>>16&255]^f[e[x++]^y>>>24]^p[e[x++]]^h[e[x++]]^d[e[x++]]^u[e[x++]]^c[e[x++]]^l[e[x++]]^s[e[x++]]^a[e[x++]]^o[e[x++]]^i[e[x++]]^r[e[x++]]^t[e[x++]];for(b+=15;x>>8^t[255&(y^e[x++])];return~y},e.str=function(e,n){for(var r=-1^n,i=0,o=e.length,a=0,s=0;i>>8^t[255&(r^a)]:a<2048?r=(r=r>>>8^t[255&(r^(192|a>>6&31))])>>>8^t[255&(r^(128|63&a))]:a>=55296&&a<57344?(a=64+(1023&a),s=1023&e.charCodeAt(i++),r=(r=(r=(r=r>>>8^t[255&(r^(240|a>>8&7))])>>>8^t[255&(r^(128|a>>2&63))])>>>8^t[255&(r^(128|s>>6&15|(3&a)<<4))])>>>8^t[255&(r^(128|63&s))]):r=(r=(r=r>>>8^t[255&(r^(224|a>>12&15))])>>>8^t[255&(r^(128|a>>6&63))])>>>8^t[255&(r^(128|63&a))];return~r}},"undefined"===typeof DO_NOT_EXPORT_CRC?n(t):n({})},44937:(e,t,n)=>{"use strict";var r=n(29335),i={};var o=function(e){};function a(e,t,n,r,i,a,s,l){if(o(t),!e){var c;if(void 0===t)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[n,r,i,a,s,l],d=0;(c=new Error(t.replace(/%s/g,(function(){return u[d++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}var s="mixins";e.exports=function(e,t,n){var o=[],l={mixins:"DEFINE_MANY",statics:"DEFINE_MANY",propTypes:"DEFINE_MANY",contextTypes:"DEFINE_MANY",childContextTypes:"DEFINE_MANY",getDefaultProps:"DEFINE_MANY_MERGED",getInitialState:"DEFINE_MANY_MERGED",getChildContext:"DEFINE_MANY_MERGED",render:"DEFINE_ONCE",componentWillMount:"DEFINE_MANY",componentDidMount:"DEFINE_MANY",componentWillReceiveProps:"DEFINE_MANY",shouldComponentUpdate:"DEFINE_ONCE",componentWillUpdate:"DEFINE_MANY",componentDidUpdate:"DEFINE_MANY",componentWillUnmount:"DEFINE_MANY",UNSAFE_componentWillMount:"DEFINE_MANY",UNSAFE_componentWillReceiveProps:"DEFINE_MANY",UNSAFE_componentWillUpdate:"DEFINE_MANY",updateComponent:"OVERRIDE_BASE"},c={getDerivedStateFromProps:"DEFINE_MANY_MERGED"},u={displayName:function(e,t){e.displayName=t},mixins:function(e,t){if(t)for(var n=0;n{"use strict";var r=n(68963),i=n(44937);if("undefined"===typeof r)throw Error("create-react-class could not find the React object. If you are using script tags, make sure that React is being loaded before create-react-class.");var o=(new r.Component).updater;e.exports=i(r.Component,r.isValidElement,o)},75812:e=>{e.exports=Date.now||function(){return(new Date).getTime()}},22877:function(e){e.exports=function(){"use strict";var e=1e3,t=6e4,n=36e5,r="millisecond",i="second",o="minute",a="hour",s="day",l="week",c="month",u="quarter",d="year",h="date",p="Invalid Date",f=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],n=e%100;return"["+e+(t[(n-20)%10]||t[n]||t[0])+"]"}},v=function(e,t,n){var r=String(e);return!r||r.length>=t?e:""+Array(t+1-r.length).join(n)+e},y={s:v,z:function(e){var t=-e.utcOffset(),n=Math.abs(t),r=Math.floor(n/60),i=n%60;return(t<=0?"+":"-")+v(r,2,"0")+":"+v(i,2,"0")},m:function e(t,n){if(t.date()1)return e(a[0])}else{var s=t.name;x[s]=t,i=s}return!r&&i&&(b=i),i||!r&&b},C=function(e,t){if(S(e))return e.clone();var n="object"==typeof t?t:{};return n.date=e,n.args=arguments,new T(n)},E=y;E.l=_,E.i=S,E.w=function(e,t){return C(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var T=function(){function g(e){this.$L=_(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[w]=!0}var v=g.prototype;return v.parse=function(e){this.$d=function(e){var t=e.date,n=e.utc;if(null===t)return new Date(NaN);if(E.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var r=t.match(f);if(r){var i=r[2]-1||0,o=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,o)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,o)}}return new Date(t)}(e),this.init()},v.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},v.$utils=function(){return E},v.isValid=function(){return!(this.$d.toString()===p)},v.isSame=function(e,t){var n=C(e);return this.startOf(t)<=n&&n<=this.endOf(t)},v.isAfter=function(e,t){return C(e)68?1900:2e3)},s=function(e){return function(t){this[e]=+t}},l=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if("Z"===e)return 0;var t=e.match(/([+-]|\d\d)/g),n=60*t[1]+(+t[2]||0);return 0===n?0:"+"===t[0]?-n:n}(e)}],c=function(e){var t=o[e];return t&&(t.indexOf?t:t.s.concat(t.f))},u=function(e,t){var n,r=o.meridiem;if(r){for(var i=1;i<=24;i+=1)if(e.indexOf(r(i,0,t))>-1){n=i>12;break}}else n=e===(t?"pm":"PM");return n},d={A:[i,function(e){this.afternoon=u(e,!1)}],a:[i,function(e){this.afternoon=u(e,!0)}],S:[/\d/,function(e){this.milliseconds=100*+e}],SS:[n,function(e){this.milliseconds=10*+e}],SSS:[/\d{3}/,function(e){this.milliseconds=+e}],s:[r,s("seconds")],ss:[r,s("seconds")],m:[r,s("minutes")],mm:[r,s("minutes")],H:[r,s("hours")],h:[r,s("hours")],HH:[r,s("hours")],hh:[r,s("hours")],D:[r,s("day")],DD:[n,s("day")],Do:[i,function(e){var t=o.ordinal,n=e.match(/\d+/);if(this.day=n[0],t)for(var r=1;r<=31;r+=1)t(r).replace(/\[|\]/g,"")===e&&(this.day=r)}],M:[r,s("month")],MM:[n,s("month")],MMM:[i,function(e){var t=c("months"),n=(c("monthsShort")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(n<1)throw new Error;this.month=n%12||n}],MMMM:[i,function(e){var t=c("months").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],Y:[/[+-]?\d+/,s("year")],YY:[n,function(e){this.year=a(e)}],YYYY:[/\d{4}/,s("year")],Z:l,ZZ:l};function h(n){var r,i;r=n,i=o&&o.formats;for(var a=(n=r.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var o=r&&r.toUpperCase();return n||i[r]||e[r]||i[o].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}))).match(t),s=a.length,l=0;l-1)return new Date(("X"===t?1e3:1)*e);var r=h(t)(e),i=r.year,o=r.month,a=r.day,s=r.hours,l=r.minutes,c=r.seconds,u=r.milliseconds,d=r.zone,p=new Date,f=a||(i||o?1:p.getDate()),m=i||p.getFullYear(),g=0;i&&!o||(g=o>0?o-1:p.getMonth());var v=s||0,y=l||0,b=c||0,x=u||0;return d?new Date(Date.UTC(m,g,f,v,y,b,x+60*d.offset*1e3)):n?new Date(Date.UTC(m,g,f,v,y,b,x)):new Date(m,g,f,v,y,b,x)}catch(e){return new Date("")}}(t,s,r),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(s)&&(this.$d=new Date("")),o={}}else if(s instanceof Array)for(var p=s.length,f=1;f<=p;f+=1){a[1]=s[f-1];var m=n.apply(this,a);if(m.isValid()){this.$d=m.$d,this.$L=m.$L,this.init();break}f===p&&(this.$d=new Date(""))}else i.call(this,e)}}}()},46635:function(e){e.exports=function(){"use strict";var e="day";return function(t,n,r){var i=function(t){return t.add(4-t.isoWeekday(),e)},o=n.prototype;o.isoWeekYear=function(){return i(this).year()},o.isoWeek=function(t){if(!this.$utils().u(t))return this.add(7*(t-this.isoWeek()),e);var n,o,a,s=i(this),l=(n=this.isoWeekYear(),a=4-(o=(this.$u?r.utc:r)().year(n).startOf("year")).isoWeekday(),o.isoWeekday()>4&&(a+=7),o.add(a,e));return s.diff(l,"week")+1},o.isoWeekday=function(e){return this.$utils().u(e)?this.day()||7:this.day(this.day()%7?e:e-7)};var a=o.startOf;o.startOf=function(e,t){var n=this.$utils(),r=!!n.u(t)||t;return"isoweek"===n.p(e)?r?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):a.bind(this)(e,t)}}}()},13708:function(e){e.exports=function(){"use strict";var e={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"};return function(t,n,r){var i=n.prototype,o=i.format;r.en.formats=e,i.format=function(t){void 0===t&&(t="YYYY-MM-DDTHH:mm:ssZ");var n=this.$locale().formats,r=function(t,n){return t.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,r,i){var o=i&&i.toUpperCase();return r||n[i]||e[i]||n[o].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}))}(t,void 0===n?{}:n);return o.call(this,r)}}}()},93876:function(e){e.exports=function(){"use strict";return function(e,t,n){var r=t.prototype,i=function(e){var t,i=e.date,o=e.utc,a={};if(!(null===(t=i)||t instanceof Date||t instanceof Array||r.$utils().u(t)||"Object"!==t.constructor.name)){if(!Object.keys(i).length)return new Date;var s=o?n.utc():n();Object.keys(i).forEach((function(e){var t,n;a[(t=e,n=r.$utils().p(t),"date"===n?"day":n)]=i[e]}));var l=a.day||(a.year||a.month>=0?1:s.date()),c=a.year||s.year(),u=a.month>=0?a.month:a.year||a.day?0:s.month(),d=a.hour||0,h=a.minute||0,p=a.second||0,f=a.millisecond||0;return o?new Date(Date.UTC(c,u,l,d,h,p,f)):new Date(c,u,l,d,h,p,f)}return i},o=r.parse;r.parse=function(e){e.date=i.bind(this)(e),o.bind(this)(e)};var a=r.set,s=r.add,l=r.subtract,c=function(e,t,n,r){void 0===r&&(r=1);var i=Object.keys(t),o=this;return i.forEach((function(n){o=e.bind(o)(t[n]*r,n)})),o};r.set=function(e,t){return t=void 0===t?e:t,"Object"===e.constructor.name?c.bind(this)((function(e,t){return a.bind(this)(t,e)}),t,e):a.bind(this)(e,t)},r.add=function(e,t){return"Object"===e.constructor.name?c.bind(this)(s,e,t):s.bind(this)(e,t)},r.subtract=function(e,t){return"Object"===e.constructor.name?c.bind(this)(s,e,t,-1):l.bind(this)(e,t)}}}()},87134:function(e){e.exports=function(){"use strict";var e="month",t="quarter";return function(n,r){var i=r.prototype;i.quarter=function(e){return this.$utils().u(e)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(e-1))};var o=i.add;i.add=function(n,r){return n=Number(n),this.$utils().p(r)===t?this.add(3*n,e):o.bind(this)(n,r)};var a=i.startOf;i.startOf=function(n,r){var i=this.$utils(),o=!!i.u(r)||r;if(i.p(n)===t){var s=this.quarter()-1;return o?this.month(3*s).startOf(e).startOf("day"):this.month(3*s+2).endOf(e).endOf("day")}return a.bind(this)(n,r)}}}()},72209:function(e){e.exports=function(){"use strict";return function(e,t,n){e=e||{};var r=t.prototype,i={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function o(e,t,n,i){return r.fromToBase(e,t,n,i)}n.en.relativeTime=i,r.fromToBase=function(t,r,o,a,s){for(var l,c,u,d=o.$locale().relativeTime||i,h=e.thresholds||[{l:"s",r:44,d:"second"},{l:"m",r:89},{l:"mm",r:44,d:"minute"},{l:"h",r:89},{l:"hh",r:21,d:"hour"},{l:"d",r:35},{l:"dd",r:25,d:"day"},{l:"M",r:45},{l:"MM",r:10,d:"month"},{l:"y",r:17},{l:"yy",d:"year"}],p=h.length,f=0;f0,g<=m.r||!m.r){g<=1&&f>0&&(m=h[f-1]);var v=d[m.l];s&&(g=s(""+g)),c="string"==typeof v?v.replace("%d",g):v(g,r,m.l,u);break}}if(r)return c;var y=u?d.future:d.past;return"function"==typeof y?y(c):y.replace("%s",c)},r.to=function(e,t){return o(e,t,this,!0)},r.from=function(e,t){return o(e,t,this)};var a=function(e){return e.$u?n.utc():n()};r.toNow=function(e){return this.to(a(this),e)},r.fromNow=function(e){return this.from(a(this),e)}}}()},85226:function(e){e.exports=function(){"use strict";var e={year:0,month:1,day:2,hour:3,minute:4,second:5},t={};return function(n,r,i){var o,a=function(e,n,r){void 0===r&&(r={});var i=new Date(e),o=function(e,n){void 0===n&&(n={});var r=n.timeZoneName||"short",i=e+"|"+r,o=t[i];return o||(o=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:e,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:r}),t[i]=o),o}(n,r);return o.formatToParts(i)},s=function(t,n){for(var r=a(t,n),o=[],s=0;s=0&&(o[d]=parseInt(u,10))}var h=o[3],p=24===h?0:h,f=o[0]+"-"+o[1]+"-"+o[2]+" "+p+":"+o[4]+":"+o[5]+":000",m=+t;return(i.utc(f).valueOf()-(m-=m%1e3))/6e4},l=r.prototype;l.tz=function(e,t){void 0===e&&(e=o);var n=this.utcOffset(),r=this.toDate(),a=r.toLocaleString("en-US",{timeZone:e}),s=Math.round((r-new Date(a))/1e3/60),l=i(a,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(15*-Math.round(r.getTimezoneOffset()/15)-s,!0);if(t){var c=l.utcOffset();l=l.add(n-c,"minute")}return l.$x.$timezone=e,l},l.offsetName=function(e){var t=this.$x.$timezone||i.tz.guess(),n=a(this.valueOf(),t,{timeZoneName:e}).find((function(e){return"timezonename"===e.type.toLowerCase()}));return n&&n.value};var c=l.startOf;l.startOf=function(e,t){if(!this.$x||!this.$x.$timezone)return c.call(this,e,t);var n=i(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return c.call(n,e,t).tz(this.$x.$timezone,!0)},i.tz=function(e,t,n){var r=n&&t,a=n||t||o,l=s(+i(),a);if("string"!=typeof e)return i(e).tz(a);var c=function(e,t,n){var r=e-60*t*1e3,i=s(r,n);if(t===i)return[r,t];var o=s(r-=60*(i-t)*1e3,n);return i===o?[r,i]:[e-60*Math.min(i,o)*1e3,Math.max(i,o)]}(i.utc(e,r).valueOf(),l,a),u=c[0],d=c[1],h=i(u).utcOffset(d);return h.$x.$timezone=a,h},i.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},i.tz.setDefault=function(e){o=e}}}()},1035:function(e){e.exports=function(){"use strict";return function(e,t,n){n.updateLocale=function(e,t){var r=n.Ls[e];if(r)return(t?Object.keys(t):[]).forEach((function(e){r[e]=t[e]})),r}}}()},54591:function(e){e.exports=function(){"use strict";var e="minute",t=/[+-]\d\d(?::?\d\d)?/g,n=/([+-]|\d\d)/g;return function(r,i,o){var a=i.prototype;o.utc=function(e){return new i({date:e,utc:!0,args:arguments})},a.utc=function(t){var n=o(this.toDate(),{locale:this.$L,utc:!0});return t?n.add(this.utcOffset(),e):n},a.local=function(){return o(this.toDate(),{locale:this.$L,utc:!1})};var s=a.parse;a.parse=function(e){e.utc&&(this.$u=!0),this.$utils().u(e.$offset)||(this.$offset=e.$offset),s.call(this,e)};var l=a.init;a.init=function(){if(this.$u){var e=this.$d;this.$y=e.getUTCFullYear(),this.$M=e.getUTCMonth(),this.$D=e.getUTCDate(),this.$W=e.getUTCDay(),this.$H=e.getUTCHours(),this.$m=e.getUTCMinutes(),this.$s=e.getUTCSeconds(),this.$ms=e.getUTCMilliseconds()}else l.call(this)};var c=a.utcOffset;a.utcOffset=function(r,i){var o=this.$utils().u;if(o(r))return this.$u?0:o(this.$offset)?c.call(this):this.$offset;if("string"==typeof r&&(r=function(e){void 0===e&&(e="");var r=e.match(t);if(!r)return null;var i=(""+r[0]).match(n)||["-",0,0],o=i[0],a=60*+i[1]+ +i[2];return 0===a?0:"+"===o?a:-a}(r),null===r))return this;var a=Math.abs(r)<=16?60*r:r,s=this;if(i)return s.$offset=a,s.$u=0===r,s;if(0!==r){var l=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(s=this.local().add(a+l,e)).$offset=a,s.$x.$localOffset=l}else s=this.utc();return s};var u=a.format;a.format=function(e){var t=e||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return u.call(this,t)},a.valueOf=function(){var e=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*e},a.isUTC=function(){return!!this.$u},a.toISOString=function(){return this.toDate().toISOString()},a.toString=function(){return this.toDate().toUTCString()};var d=a.toDate;a.toDate=function(e){return"s"===e&&this.$offset?o(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():d.call(this)};var h=a.diff;a.diff=function(e,t,n){if(e&&this.$u===e.$u)return h.call(this,e,t,n);var r=this.local(),i=o(e).local();return h.call(r,i,t,n)}}}()},8901:function(e){e.exports=function(){"use strict";var e="week",t="year";return function(n,r,i){var o=r.prototype;o.week=function(n){if(void 0===n&&(n=null),null!==n)return this.add(7*(n-this.week()),"day");var r=this.$locale().yearStart||1;if(11===this.month()&&this.date()>25){var o=i(this).startOf(t).add(1,t).date(r),a=i(this).endOf(e);if(o.isBefore(a))return 1}var s=i(this).startOf(t).date(r).startOf(e).subtract(1,"millisecond"),l=this.diff(s,e,!0);return l<0?i(this).startOf("week").week():Math.ceil(l)},o.weeks=function(e){return void 0===e&&(e=null),this.week(e)}}}()},60305:(e,t,n)=>{var r=n(75812);e.exports=function(e,t,n){var i,o,a,s,l;function c(){var u=r()-s;u0?i=setTimeout(c,t-u):(i=null,n||(l=e.apply(a,o),i||(a=o=null)))}return null==t&&(t=100),function(){a=this,o=arguments,s=r();var u=n&&!i;return i||(i=setTimeout(c,t)),u&&(l=e.apply(a,o),a=o=null),l}}},10854:(e,t,n)=>{"use strict";var r=n(85122),i=n(47849),o=n(84968),a=n(81687);e.exports=function(e,t,n){if(!e||"object"!==typeof e&&"function"!==typeof e)throw new o("`obj` must be an object or a function`");if("string"!==typeof t&&"symbol"!==typeof t)throw new o("`property` must be a string or a symbol`");if(arguments.length>3&&"boolean"!==typeof arguments[3]&&null!==arguments[3])throw new o("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!==typeof arguments[4]&&null!==arguments[4])throw new o("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!==typeof arguments[5]&&null!==arguments[5])throw new o("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!==typeof arguments[6])throw new o("`loose`, if provided, must be a boolean");var s=arguments.length>3?arguments[3]:null,l=arguments.length>4?arguments[4]:null,c=arguments.length>5?arguments[5]:null,u=arguments.length>6&&arguments[6],d=!!a&&a(e,t);if(r)r(e,t,{configurable:null===c&&d?d.configurable:!c,enumerable:null===s&&d?d.enumerable:!s,value:n,writable:null===l&&d?d.writable:!l});else{if(!u&&(s||l||c))throw new i("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");e[t]=n}}},85122:(e,t,n)=>{"use strict";var r=n(42780)("%Object.defineProperty%",!0)||!1;if(r)try{r({},"a",{value:1})}catch(i){r=!1}e.exports=r},16101:e=>{"use strict";e.exports=EvalError},41830:e=>{"use strict";e.exports=Error},69715:e=>{"use strict";e.exports=RangeError},64546:e=>{"use strict";e.exports=ReferenceError},47849:e=>{"use strict";e.exports=SyntaxError},84968:e=>{"use strict";e.exports=TypeError},68344:e=>{"use strict";e.exports=URIError},14702:(e,t,n)=>{var r,i=i||{version:"5.3.0"};if(t.fabric=i,"undefined"!==typeof document&&"undefined"!==typeof window)document instanceof("undefined"!==typeof HTMLDocument?HTMLDocument:Document)?i.document=document:i.document=document.implementation.createHTMLDocument(""),i.window=window;else{var o=new(n(24960).JSDOM)(decodeURIComponent("%3C!DOCTYPE%20html%3E%3Chtml%3E%3Chead%3E%3C%2Fhead%3E%3Cbody%3E%3C%2Fbody%3E%3C%2Fhtml%3E"),{features:{FetchExternalResources:["img"]},resources:"usable"}).window;i.document=o.document,i.jsdomImplForWrapper=n(26759).implForWrapper,i.nodeCanvas=n(56272).Canvas,i.window=o,DOMParser=i.window.DOMParser}function a(e,t){var n=e.canvas,r=t.targetCanvas,i=r.getContext("2d");i.translate(0,r.height),i.scale(1,-1);var o=n.height-r.height;i.drawImage(n,0,o,r.width,r.height,0,0,r.width,r.height)}function s(e,t){var n=t.targetCanvas.getContext("2d"),r=t.destinationWidth,i=t.destinationHeight,o=r*i*4,a=new Uint8Array(this.imageBuffer,0,o),s=new Uint8ClampedArray(this.imageBuffer,0,o);e.readPixels(0,0,r,i,e.RGBA,e.UNSIGNED_BYTE,a);var l=new ImageData(s,r,i);n.putImageData(l,0,0)}i.isTouchSupported="ontouchstart"in i.window||"ontouchstart"in i.document||i.window&&i.window.navigator&&i.window.navigator.maxTouchPoints>0,i.isLikelyNode="undefined"!==typeof Buffer&&"undefined"===typeof window,i.SHARED_ATTRIBUTES=["display","transform","fill","fill-opacity","fill-rule","opacity","stroke","stroke-dasharray","stroke-linecap","stroke-dashoffset","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","id","paint-order","vector-effect","instantiated_by_use","clip-path"],i.DPI=96,i.reNum="(?:[-+]?(?:\\d+|\\d*\\.\\d+)(?:[eE][-+]?\\d+)?)",i.commaWsp="(?:\\s+,?\\s*|,\\s*)",i.rePathCommand=/([-+]?((\d+\.\d+)|((\d+)|(\.\d+)))(?:[eE][-+]?\d+)?)/gi,i.reNonWord=/[ \n\.,;!\?\-]/,i.fontPaths={},i.iMatrix=[1,0,0,1,0,0],i.svgNS="http://www.w3.org/2000/svg",i.perfLimitSizeTotal=2097152,i.maxCacheSideLimit=4096,i.minCacheSideLimit=256,i.charWidthsCache={},i.textureSize=2048,i.disableStyleCopyPaste=!1,i.enableGLFiltering=!0,i.devicePixelRatio=i.window.devicePixelRatio||i.window.webkitDevicePixelRatio||i.window.mozDevicePixelRatio||1,i.browserShadowBlurConstant=1,i.arcToSegmentsCache={},i.boundsOfCurveCache={},i.cachesBoundsOfCurve=!0,i.forceGLPutImageData=!1,i.initFilterBackend=function(){return i.enableGLFiltering&&i.isWebglSupported&&i.isWebglSupported(i.textureSize)?(console.log("max texture size: "+i.maxTextureSize),new i.WebglFilterBackend({tileSize:i.textureSize})):i.Canvas2dFilterBackend?new i.Canvas2dFilterBackend:void 0},"undefined"!==typeof document&&"undefined"!==typeof window&&(window.fabric=i),function(){function e(e,t){if(this.__eventListeners[e]){var n=this.__eventListeners[e];t?n[n.indexOf(t)]=!1:i.util.array.fill(n,!1)}}function t(e,t){var n=function(){t.apply(this,arguments),this.off(e,n)}.bind(this);this.on(e,n)}i.Observable={fire:function(e,t){if(!this.__eventListeners)return this;var n=this.__eventListeners[e];if(!n)return this;for(var r=0,i=n.length;r-1||!!t&&this._objects.some((function(t){return"function"===typeof t.contains&&t.contains(e,!0)}))},complexity:function(){return this._objects.reduce((function(e,t){return e+=t.complexity?t.complexity():0}),0)}},i.CommonMethods={_setOptions:function(e){for(var t in e)this.set(t,e[t])},_initGradient:function(e,t){!e||!e.colorStops||e instanceof i.Gradient||this.set(t,new i.Gradient(e))},_initPattern:function(e,t,n){!e||!e.source||e instanceof i.Pattern?n&&n():this.set(t,new i.Pattern(e,n))},_setObject:function(e){for(var t in e)this._set(t,e[t])},set:function(e,t){return"object"===typeof e?this._setObject(e):this._set(e,t),this},_set:function(e,t){this[e]=t},toggle:function(e){var t=this.get(e);return"boolean"===typeof t&&this.set(e,!t),this},get:function(e){return this[e]}},function(e){var t=Math.sqrt,n=Math.atan2,r=Math.pow,o=Math.PI/180,a=Math.PI/2;i.util={cos:function(e){if(0===e)return 1;switch(e<0&&(e=-e),e/a){case 1:case 3:return 0;case 2:return-1}return Math.cos(e)},sin:function(e){if(0===e)return 0;var t=1;switch(e<0&&(t=-1),e/a){case 1:return t;case 2:return 0;case 3:return-t}return Math.sin(e)},removeFromArray:function(e,t){var n=e.indexOf(t);return-1!==n&&e.splice(n,1),e},getRandomInt:function(e,t){return Math.floor(Math.random()*(t-e+1))+e},degreesToRadians:function(e){return e*o},radiansToDegrees:function(e){return e/o},rotatePoint:function(e,t,n){var r=new i.Point(e.x-t.x,e.y-t.y),o=i.util.rotateVector(r,n);return new i.Point(o.x,o.y).addEquals(t)},rotateVector:function(e,t){var n=i.util.sin(t),r=i.util.cos(t);return{x:e.x*r-e.y*n,y:e.x*n+e.y*r}},createVector:function(e,t){return new i.Point(t.x-e.x,t.y-e.y)},calcAngleBetweenVectors:function(e,t){return Math.acos((e.x*t.x+e.y*t.y)/(Math.hypot(e.x,e.y)*Math.hypot(t.x,t.y)))},getHatVector:function(e){return new i.Point(e.x,e.y).multiply(1/Math.hypot(e.x,e.y))},getBisector:function(e,t,n){var r=i.util.createVector(e,t),o=i.util.createVector(e,n),a=i.util.calcAngleBetweenVectors(r,o),s=a*(0===i.util.calcAngleBetweenVectors(i.util.rotateVector(r,a),o)?1:-1)/2;return{vector:i.util.getHatVector(i.util.rotateVector(r,s)),angle:a}},projectStrokeOnPoints:function(e,t,n){var r=[],o=t.strokeWidth/2,a=t.strokeUniform?new i.Point(1/t.scaleX,1/t.scaleY):new i.Point(1,1),s=function(e){var t=o/Math.hypot(e.x,e.y);return new i.Point(e.x*t*a.x,e.y*t*a.y)};return e.length<=1||e.forEach((function(l,c){var u,d,h=new i.Point(l.x,l.y);0===c?(d=e[c+1],u=n?s(i.util.createVector(d,h)).addEquals(h):e[e.length-1]):c===e.length-1?(u=e[c-1],d=n?s(i.util.createVector(u,h)).addEquals(h):e[0]):(u=e[c-1],d=e[c+1]);var p,f,m=i.util.getBisector(h,u,d),g=m.vector,v=m.angle;if("miter"===t.strokeLineJoin&&(p=-o/Math.sin(v/2),f=new i.Point(g.x*p*a.x,g.y*p*a.y),Math.hypot(f.x,f.y)/o<=t.strokeMiterLimit))return r.push(h.add(f)),void r.push(h.subtract(f));p=-o*Math.SQRT2,f=new i.Point(g.x*p*a.x,g.y*p*a.y),r.push(h.add(f)),r.push(h.subtract(f))})),r},transformPoint:function(e,t,n){return n?new i.Point(t[0]*e.x+t[2]*e.y,t[1]*e.x+t[3]*e.y):new i.Point(t[0]*e.x+t[2]*e.y+t[4],t[1]*e.x+t[3]*e.y+t[5])},makeBoundingBoxFromPoints:function(e,t){if(t)for(var n=0;n0&&(t>r?t-=r:t=0,n>r?n-=r:n=0);var i,o=!0,a=e.getImageData(t,n,2*r||1,2*r||1),s=a.data.length;for(i=3;i0)i.util.hasStyleChanged(o,c,!0)?a.push({start:r,end:r+1,style:c}):a[a.length-1].end++;o=c||{}}else r+=n[s].length;return a},stylesFromArray:function(e,t){if(!Array.isArray(e))return e;for(var n=t.split("\n"),r=-1,i=0,o={},a=0;a=i?o-i:2*Math.PI-(i-o)}function a(e,t,n){for(var a=n[1],s=n[2],l=n[3],c=n[4],u=n[5],d=function(e,t,n,a,s,l,c){var u=Math.PI,d=c*u/180,h=i.util.sin(d),p=i.util.cos(d),f=0,m=0,g=-p*e*.5-h*t*.5,v=-p*t*.5+h*e*.5,y=(n=Math.abs(n))*n,b=(a=Math.abs(a))*a,x=v*v,w=g*g,S=y*b-y*x-b*w,_=0;if(S<0){var C=Math.sqrt(1-S/(y*b));n*=C,a*=C}else _=(s===l?-1:1)*Math.sqrt(S/(y*x+b*w));var E=_*n*v/a,T=-_*a*g/n,O=p*E-h*T+.5*e,N=h*E+p*T+.5*t,k=o(1,0,(g-E)/n,(v-T)/a),j=o((g-E)/n,(v-T)/a,(-g-E)/n,(-v-T)/a);0===l&&j>0?j-=2*u:1===l&&j<0&&(j+=2*u);for(var I=Math.ceil(Math.abs(j/u*2)),P=[],D=j/I,A=8/3*Math.sin(D/4)*Math.sin(D/4)/Math.sin(D/2),R=k+D,M=0;M1e-4;)n=l(o),i=o,(r=s(c.x,c.y,n.x,n.y))+a>t?(o-=u,u/=2):(c=n,o+=u,a+=r);return n.angle=d(i),n}function f(e){for(var t,n,r,i,o=0,a=e.length,p=0,f=0,m=0,g=0,v=[],y=0;y_)for(var E=1,T=g.length;E2;for(t=t||0,u&&(l=e[2].xe[n-2].x?1:o.x===e[n-2].x?0:-1,c=o.y>e[n-2].y?1:o.y===e[n-2].y?0:-1),r.push(["L",o.x+l*t,o.y+c*t]),r},i.util.getPathSegmentsInfo=f,i.util.getBoundsOfCurve=function(t,n,r,o,a,s,l,c){var u;if(i.cachesBoundsOfCurve&&(u=e.call(arguments),i.boundsOfCurveCache[u]))return i.boundsOfCurveCache[u];var d,h,p,f,m,g,v,y,b=Math.sqrt,x=Math.min,w=Math.max,S=Math.abs,_=[],C=[[],[]];h=6*t-12*r+6*a,d=-3*t+9*r-9*a+3*l,p=3*r-3*t;for(var E=0;E<2;++E)if(E>0&&(h=6*n-12*o+6*s,d=-3*n+9*o-9*s+3*c,p=3*o-3*n),S(d)<1e-12){if(S(h)<1e-12)continue;0<(f=-p/h)&&f<1&&_.push(f)}else(v=h*h-4*p*d)<0||(0<(m=(-h+(y=b(v)))/(2*d))&&m<1&&_.push(m),0<(g=(-h-y)/(2*d))&&g<1&&_.push(g));for(var T,O,N,k=_.length,j=k;k--;)T=(N=1-(f=_[k]))*N*N*t+3*N*N*f*r+3*N*f*f*a+f*f*f*l,C[0][k]=T,O=N*N*N*n+3*N*N*f*o+3*N*f*f*s+f*f*f*c,C[1][k]=O;C[0][j]=t,C[1][j]=n,C[0][j+1]=l,C[1][j+1]=c;var I=[{x:x.apply(null,C[0]),y:x.apply(null,C[1])},{x:w.apply(null,C[0]),y:w.apply(null,C[1])}];return i.cachesBoundsOfCurve&&(i.boundsOfCurveCache[u]=I),I},i.util.getPointOnPath=function(e,t,n){n||(n=f(e));for(var r=0;t-n[r].length>0&&r=t}))}}}(),function(){function e(t,n,r){if(r)if(!i.isLikelyNode&&n instanceof Element)t=n;else if(n instanceof Array){t=[];for(var o=0,a=n.length;o57343)return e.charAt(t);if(55296<=n&&n<=56319){if(e.length<=t+1)throw"High surrogate without following low surrogate";var r=e.charCodeAt(t+1);if(56320>r||r>57343)throw"High surrogate without following low surrogate";return e.charAt(t)+e.charAt(t+1)}if(0===t)throw"Low surrogate without preceding high surrogate";var i=e.charCodeAt(t-1);if(55296>i||i>56319)throw"Low surrogate without preceding high surrogate";return!1}i.util.string={camelize:function(e){return e.replace(/-+(.)?/g,(function(e,t){return t?t.toUpperCase():""}))},capitalize:function(e,t){return e.charAt(0).toUpperCase()+(t?e.slice(1):e.slice(1).toLowerCase())},escapeXml:function(e){return e.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")},graphemeSplit:function(t){var n,r=0,i=[];for(r=0;r-1?e.prototype[i]=function(e){return function(){var n=this.constructor.superclass;this.constructor.superclass=r;var i=t[e].apply(this,arguments);if(this.constructor.superclass=n,"initialize"!==e)return i}}(i):e.prototype[i]=t[i],n&&(t.toString!==Object.prototype.toString&&(e.prototype.toString=t.toString),t.valueOf!==Object.prototype.valueOf&&(e.prototype.valueOf=t.valueOf))};function o(){}function a(t){for(var n=null,r=this;r.constructor.superclass;){var i=r.constructor.superclass.prototype[t];if(r[t]!==i){n=i;break}r=r.constructor.superclass.prototype}return n?arguments.length>1?n.apply(this,e.call(arguments,1)):n.call(this):console.log("tried to callSuper "+t+", method not found in prototype chain",this)}i.util.createClass=function(){var n=null,i=e.call(arguments,0);function s(){this.initialize.apply(this,arguments)}"function"===typeof i[0]&&(n=i.shift()),s.superclass=n,s.subclasses=[],n&&(o.prototype=n.prototype,s.prototype=new o,n.subclasses.push(s));for(var l=0,c=i.length;l-1||"touch"===e.pointerType}}(),function(){var e=i.document.createElement("div"),t="string"===typeof e.style.opacity,n="string"===typeof e.style.filter,r=/alpha\s*\(\s*opacity\s*=\s*([^\)]+)\)/,o=function(e){return e};t?o=function(e,t){return e.style.opacity=t,e}:n&&(o=function(e,t){var n=e.style;return e.currentStyle&&!e.currentStyle.hasLayout&&(n.zoom=1),r.test(n.filter)?(t=t>=.9999?"":"alpha(opacity="+100*t+")",n.filter=n.filter.replace(r,t)):n.filter+=" alpha(opacity="+100*t+")",e}),i.util.setStyle=function(e,t){var n=e.style;if(!n)return e;if("string"===typeof t)return e.style.cssText+=";"+t,t.indexOf("opacity")>-1?o(e,t.match(/opacity:\s*(\d?\.?\d*)/)[1]):e;for(var r in t)if("opacity"===r)o(e,t[r]);else{var i="float"===r||"cssFloat"===r?"undefined"===typeof n.styleFloat?"cssFloat":"styleFloat":r;n.setProperty(i,t[r])}return e}}(),function(){var e=Array.prototype.slice;var t,n,r=function(t){return e.call(t,0)};try{t=r(i.document.childNodes)instanceof Array}catch(s){}function o(e,t){var n=i.document.createElement(e);for(var r in t)"class"===r?n.className=t[r]:"for"===r?n.htmlFor=t[r]:n.setAttribute(r,t[r]);return n}function a(e){for(var t=0,n=0,r=i.document.documentElement,o=i.document.body||{scrollLeft:0,scrollTop:0};e&&(e.parentNode||e.host)&&((e=e.parentNode||e.host)===i.document?(t=o.scrollLeft||r.scrollLeft||0,n=o.scrollTop||r.scrollTop||0):(t+=e.scrollLeft||0,n+=e.scrollTop||0),1!==e.nodeType||"fixed"!==e.style.position););return{left:t,top:n}}t||(r=function(e){for(var t=new Array(e.length),n=e.length;n--;)t[n]=e[n];return t}),n=i.document.defaultView&&i.document.defaultView.getComputedStyle?function(e,t){var n=i.document.defaultView.getComputedStyle(e,null);return n?n[t]:void 0}:function(e,t){var n=e.style[t];return!n&&e.currentStyle&&(n=e.currentStyle[t]),n},function(){var e=i.document.documentElement.style,t="userSelect"in e?"userSelect":"MozUserSelect"in e?"MozUserSelect":"WebkitUserSelect"in e?"WebkitUserSelect":"KhtmlUserSelect"in e?"KhtmlUserSelect":"";i.util.makeElementUnselectable=function(e){return"undefined"!==typeof e.onselectstart&&(e.onselectstart=i.util.falseFunction),t?e.style[t]="none":"string"===typeof e.unselectable&&(e.unselectable="on"),e},i.util.makeElementSelectable=function(e){return"undefined"!==typeof e.onselectstart&&(e.onselectstart=null),t?e.style[t]="":"string"===typeof e.unselectable&&(e.unselectable=""),e}}(),i.util.setImageSmoothing=function(e,t){e.imageSmoothingEnabled=e.imageSmoothingEnabled||e.webkitImageSmoothingEnabled||e.mozImageSmoothingEnabled||e.msImageSmoothingEnabled||e.oImageSmoothingEnabled,e.imageSmoothingEnabled=t},i.util.getById=function(e){return"string"===typeof e?i.document.getElementById(e):e},i.util.toArray=r,i.util.addClass=function(e,t){e&&-1===(" "+e.className+" ").indexOf(" "+t+" ")&&(e.className+=(e.className?" ":"")+t)},i.util.makeElement=o,i.util.wrapElement=function(e,t,n){return"string"===typeof t&&(t=o(t,n)),e.parentNode&&e.parentNode.replaceChild(t,e),t.appendChild(e),t},i.util.getScrollLeftTop=a,i.util.getElementOffset=function(e){var t,r,i=e&&e.ownerDocument,o={left:0,top:0},s={left:0,top:0},l={borderLeftWidth:"left",borderTopWidth:"top",paddingLeft:"left",paddingTop:"top"};if(!i)return s;for(var c in l)s[l[c]]+=parseInt(n(e,c),10)||0;return t=i.documentElement,"undefined"!==typeof e.getBoundingClientRect&&(o=e.getBoundingClientRect()),r=a(e),{left:o.left+r.left-(t.clientLeft||0)+s.left,top:o.top+r.top-(t.clientTop||0)+s.top}},i.util.getNodeCanvas=function(e){var t=i.jsdomImplForWrapper(e);return t._canvas||t._image},i.util.cleanUpJsdomNode=function(e){if(i.isLikelyNode){var t=i.jsdomImplForWrapper(e);t&&(t._image=null,t._canvas=null,t._currentSrc=null,t._attributes=null,t._classList=null)}}}(),function(){function e(){}i.util.request=function(t,n){n||(n={});var r=n.method?n.method.toUpperCase():"GET",o=n.onComplete||function(){},a=new i.window.XMLHttpRequest,s=n.body||n.parameters;return a.onreadystatechange=function(){4===a.readyState&&(o(a),a.onreadystatechange=e)},"GET"===r&&(s=null,"string"===typeof n.parameters&&(t=function(e,t){return e+(/\?/.test(e)?"&":"?")+t}(t,n.parameters))),a.open(r,t,!0),"POST"!==r&&"PUT"!==r||a.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),a.send(s),a}}(),i.log=console.log,i.warn=console.warn,function(){var e=i.util.object.extend,t=i.util.object.clone,n=[];function r(){return!1}function o(e,t,n,r){return-n*Math.cos(e/r*(Math.PI/2))+n+t}i.util.object.extend(n,{cancelAll:function(){var e=this.splice(0);return e.forEach((function(e){e.cancel()})),e},cancelByCanvas:function(e){if(!e)return[];var t=this.filter((function(t){return"object"===typeof t.target&&t.target.canvas===e}));return t.forEach((function(e){e.cancel()})),t},cancelByTarget:function(e){var t=this.findAnimationsByTarget(e);return t.forEach((function(e){e.cancel()})),t},findAnimationIndex:function(e){return this.indexOf(this.findAnimation(e))},findAnimation:function(e){return this.find((function(t){return t.cancel===e}))},findAnimationsByTarget:function(e){return e?this.filter((function(t){return t.target===e})):[]}});var a=i.window.requestAnimationFrame||i.window.webkitRequestAnimationFrame||i.window.mozRequestAnimationFrame||i.window.oRequestAnimationFrame||i.window.msRequestAnimationFrame||function(e){return i.window.setTimeout(e,1e3/60)},s=i.window.cancelAnimationFrame||i.window.clearTimeout;function l(){return a.apply(i.window,arguments)}i.util.animate=function(n){n||(n={});var a,s=!1,c=function(){var e=i.runningAnimations.indexOf(a);return e>-1&&i.runningAnimations.splice(e,1)[0]};return a=e(t(n),{cancel:function(){return s=!0,c()},currentValue:"startValue"in n?n.startValue:0,completionRate:0,durationRate:0}),i.runningAnimations.push(a),l((function(e){var t,i=e||+new Date,u=n.duration||500,d=i+u,h=n.onChange||r,p=n.abort||r,f=n.onComplete||r,m=n.easing||o,g="startValue"in n&&n.startValue.length>0,v="startValue"in n?n.startValue:0,y="endValue"in n?n.endValue:100,b=n.byValue||(g?v.map((function(e,t){return y[t]-v[t]})):y-v);n.onStart&&n.onStart(),function e(n){var r=(t=n||+new Date)>d?u:t-i,o=r/u,x=g?v.map((function(e,t){return m(r,v[t],b[t],u)})):m(r,v,b,u),w=g?Math.abs((x[0]-v[0])/b[0]):Math.abs((x-v)/b);if(a.currentValue=g?x.slice():x,a.completionRate=w,a.durationRate=o,!s){if(!p(x,w,o))return t>d?(a.currentValue=g?y.slice():y,a.completionRate=1,a.durationRate=1,h(g?y.slice():y,1,1),f(y,1,1),void c()):(h(x,w,o),void l(e));c()}}(i)})),a.cancel},i.util.requestAnimFrame=l,i.util.cancelAnimFrame=function(){return s.apply(i.window,arguments)},i.runningAnimations=n}(),function(){function e(e,t,n){var r="rgba("+parseInt(e[0]+n*(t[0]-e[0]),10)+","+parseInt(e[1]+n*(t[1]-e[1]),10)+","+parseInt(e[2]+n*(t[2]-e[2]),10);return r+=","+(e&&t?parseFloat(e[3]+n*(t[3]-e[3])):1),r+=")"}i.util.animateColor=function(t,n,r,o){var a=new i.Color(t).getSource(),s=new i.Color(n).getSource(),l=o.onComplete,c=o.onChange;return o=o||{},i.util.animate(i.util.object.extend(o,{duration:r||500,startValue:a,endValue:s,byValue:s,easing:function(t,n,r,i){return e(n,r,o.colorEasing?o.colorEasing(t,i):1-Math.cos(t/i*(Math.PI/2)))},onComplete:function(t,n,r){if(l)return l(e(s,s,0),n,r)},onChange:function(t,n,r){if(c){if(Array.isArray(t))return c(e(t,t,0),n,r);c(t,n,r)}}}))}}(),function(){function e(e,t,n,r){return e-1&&u>-1&&u-1)&&(n="stroke")}else{if("href"===e||"xlink:href"===e||"font"===e)return n;if("imageSmoothing"===e)return"optimizeQuality"===n;s=l?n.map(o):o(n,i)}}else n="";return!l&&isNaN(s)?n:s}function p(e){return new RegExp("^("+e.join("|")+")\\b","i")}function f(e,t){var n,r,i,o,a=[];for(i=0,o=t.length;i1;)l.shift(),c=t.util.multiplyTransformMatrices(c,l[0]);return c}}();var y=new RegExp("^\\s*("+t.reNum+"+)\\s*,?\\s*("+t.reNum+"+)\\s*,?\\s*("+t.reNum+"+)\\s*,?\\s*("+t.reNum+"+)\\s*$");function b(e){if(!t.svgViewBoxElementsRegEx.test(e.nodeName))return{};var n,r,i,a,s,l,c=e.getAttribute("viewBox"),u=1,d=1,h=e.getAttribute("width"),p=e.getAttribute("height"),f=e.getAttribute("x")||0,m=e.getAttribute("y")||0,g=e.getAttribute("preserveAspectRatio")||"",v=!c||!(c=c.match(y)),b=!h||!p||"100%"===h||"100%"===p,x=v&&b,w={},S="",_=0,C=0;if(w.width=0,w.height=0,w.toBeParsed=x,v&&(f||m)&&e.parentNode&&"#document"!==e.parentNode.nodeName&&(S=" translate("+o(f)+" "+o(m)+") ",s=(e.getAttribute("transform")||"")+S,e.setAttribute("transform",s),e.removeAttribute("x"),e.removeAttribute("y")),x)return w;if(v)return w.width=o(h),w.height=o(p),w;if(n=-parseFloat(c[1]),r=-parseFloat(c[2]),i=parseFloat(c[3]),a=parseFloat(c[4]),w.minX=n,w.minY=r,w.viewBoxWidth=i,w.viewBoxHeight=a,b?(w.width=i,w.height=a):(w.width=o(h),w.height=o(p),u=w.width/i,d=w.height/a),"none"!==(g=t.util.parsePreserveAspectRatioAttribute(g)).alignX&&("meet"===g.meetOrSlice&&(d=u=u>d?d:u),"slice"===g.meetOrSlice&&(d=u=u>d?u:d),_=w.width-i*u,C=w.height-a*u,"Mid"===g.alignX&&(_/=2),"Mid"===g.alignY&&(C/=2),"Min"===g.alignX&&(_=0),"Min"===g.alignY&&(C=0)),1===u&&1===d&&0===n&&0===r&&0===f&&0===m)return w;if((f||m)&&"#document"!==e.parentNode.nodeName&&(S=" translate("+o(f)+" "+o(m)+") "),s=S+" matrix("+u+" 0 0 "+d+" "+(n*u+_)+" "+(r*d+C)+") ","svg"===e.nodeName){for(l=e.ownerDocument.createElementNS(t.svgNS,"g");e.firstChild;)l.appendChild(e.firstChild);e.appendChild(l)}else(l=e).removeAttribute("x"),l.removeAttribute("y"),s=l.getAttribute("transform")+s;return l.setAttribute("transform",s),w}function x(e,t){var n="xlink:href",r=v(e,t.getAttribute(n).slice(1));if(r&&r.getAttribute(n)&&x(e,r),["gradientTransform","x1","x2","y1","y2","gradientUnits","cx","cy","r","fx","fy"].forEach((function(e){r&&!t.hasAttribute(e)&&r.hasAttribute(e)&&t.setAttribute(e,r.getAttribute(e))})),!t.children.length)for(var i=r.cloneNode(!0);i.firstChild;)t.appendChild(i.firstChild);t.removeAttribute(n)}t.parseSVGDocument=function(e,n,i,o){if(e){!function(e){for(var n=f(e,["use","svg:use"]),r=0;n.length&&re.x&&this.y>e.y},gte:function(e){return this.x>=e.x&&this.y>=e.y},lerp:function(e,t){return"undefined"===typeof t&&(t=.5),t=Math.max(Math.min(1,t),0),new n(this.x+(e.x-this.x)*t,this.y+(e.y-this.y)*t)},distanceFrom:function(e){var t=this.x-e.x,n=this.y-e.y;return Math.sqrt(t*t+n*n)},midPointFrom:function(e){return this.lerp(e)},min:function(e){return new n(Math.min(this.x,e.x),Math.min(this.y,e.y))},max:function(e){return new n(Math.max(this.x,e.x),Math.max(this.y,e.y))},toString:function(){return this.x+","+this.y},setXY:function(e,t){return this.x=e,this.y=t,this},setX:function(e){return this.x=e,this},setY:function(e){return this.y=e,this},setFromPoint:function(e){return this.x=e.x,this.y=e.y,this},swap:function(e){var t=this.x,n=this.y;this.x=e.x,this.y=e.y,e.x=t,e.y=n},clone:function(){return new n(this.x,this.y)}})}(t),function(e){"use strict";var t=e.fabric||(e.fabric={});function n(e){this.status=e,this.points=[]}t.Intersection?t.warn("fabric.Intersection is already defined"):(t.Intersection=n,t.Intersection.prototype={constructor:n,appendPoint:function(e){return this.points.push(e),this},appendPoints:function(e){return this.points=this.points.concat(e),this}},t.Intersection.intersectLineLine=function(e,r,i,o){var a,s=(o.x-i.x)*(e.y-i.y)-(o.y-i.y)*(e.x-i.x),l=(r.x-e.x)*(e.y-i.y)-(r.y-e.y)*(e.x-i.x),c=(o.y-i.y)*(r.x-e.x)-(o.x-i.x)*(r.y-e.y);if(0!==c){var u=s/c,d=l/c;0<=u&&u<=1&&0<=d&&d<=1?(a=new n("Intersection")).appendPoint(new t.Point(e.x+u*(r.x-e.x),e.y+u*(r.y-e.y))):a=new n}else a=new n(0===s||0===l?"Coincident":"Parallel");return a},t.Intersection.intersectLinePolygon=function(e,t,r){var i,o,a,s,l=new n,c=r.length;for(s=0;s0&&(l.status="Intersection"),l},t.Intersection.intersectPolygonPolygon=function(e,t){var r,i=new n,o=e.length;for(r=0;r0&&(i.status="Intersection"),i},t.Intersection.intersectPolygonRectangle=function(e,r,i){var o=r.min(i),a=r.max(i),s=new t.Point(a.x,o.y),l=new t.Point(o.x,a.y),c=n.intersectLinePolygon(o,s,e),u=n.intersectLinePolygon(s,a,e),d=n.intersectLinePolygon(a,l,e),h=n.intersectLinePolygon(l,o,e),p=new n;return p.appendPoints(c.points),p.appendPoints(u.points),p.appendPoints(d.points),p.appendPoints(h.points),p.points.length>0&&(p.status="Intersection"),p})}(t),function(e){"use strict";var t=e.fabric||(e.fabric={});function n(e){e?this._tryParsingColor(e):this.setSource([0,0,0,1])}function r(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}t.Color?t.warn("fabric.Color is already defined."):(t.Color=n,t.Color.prototype={_tryParsingColor:function(e){var t;e in n.colorNameMap&&(e=n.colorNameMap[e]),"transparent"===e&&(t=[255,255,255,0]),t||(t=n.sourceFromHex(e)),t||(t=n.sourceFromRgb(e)),t||(t=n.sourceFromHsl(e)),t||(t=[0,0,0,1]),t&&this.setSource(t)},_rgbToHsl:function(e,n,r){e/=255,n/=255,r/=255;var i,o,a,s=t.util.array.max([e,n,r]),l=t.util.array.min([e,n,r]);if(a=(s+l)/2,s===l)i=o=0;else{var c=s-l;switch(o=a>.5?c/(2-s-l):c/(s+l),s){case e:i=(n-r)/c+(n0)-(e<0)||+e};function p(e,t){var n=e.angle+d(Math.atan2(t.y,t.x))+360;return Math.round(n%360/45)}function f(e,n){var r=n.transform.target,i=r.canvas,o=t.util.object.clone(n);o.target=r,i&&i.fire("object:"+e,o),r.fire(e,n)}function m(e,t){var n=t.canvas,r=e[n.uniScaleKey];return n.uniformScaling&&!r||!n.uniformScaling&&r}function g(e){return e.originX===c&&e.originY===c}function v(e,t,n){var r=e.lockScalingX,i=e.lockScalingY;return!(!r||!i)||(!(t||!r&&!i||!n)||(!(!r||"x"!==t)||!(!i||"y"!==t)))}function y(e,t,n,r){return{e:e,transform:t,pointer:{x:n,y:r}}}function b(e){return function(t,n,r,i){var o=n.target,a=o.getCenterPoint(),s=o.translateToOriginPoint(a,n.originX,n.originY),l=e(t,n,r,i);return o.setPositionByOrigin(s,n.originX,n.originY),l}}function x(e,t){return function(n,r,i,o){var a=t(n,r,i,o);return a&&f(e,y(n,r,i,o)),a}}function w(e,n,r,i,o){var a=e.target,s=a.controls[e.corner],l=a.canvas.getZoom(),c=a.padding/l,u=a.toLocalPoint(new t.Point(i,o),n,r);return u.x>=c&&(u.x-=c),u.x<=-c&&(u.x+=c),u.y>=c&&(u.y-=c),u.y<=c&&(u.y+=c),u.x-=s.offsetX,u.y-=s.offsetY,u}function S(e){return e.flipX!==e.flipY}function _(e,t,n,r,i){if(0!==e[t]){var o=i/e._getTransformedDimensions()[r]*e[n];e.set(n,o)}}function C(e,t,n,r){var i,c=t.target,u=c._getTransformedDimensions(0,c.skewY),h=w(t,t.originX,t.originY,n,r),p=Math.abs(2*h.x)-u.x,f=c.skewX;p<2?i=0:(i=d(Math.atan2(p/c.scaleX,u.y/c.scaleY)),t.originX===o&&t.originY===l&&(i=-i),t.originX===s&&t.originY===a&&(i=-i),S(c)&&(i=-i));var m=f!==i;if(m){var g=c._getTransformedDimensions().y;c.set("skewX",i),_(c,"skewY","scaleY","y",g)}return m}function E(e,t,n,r){var i,c=t.target,u=c._getTransformedDimensions(c.skewX,0),h=w(t,t.originX,t.originY,n,r),p=Math.abs(2*h.y)-u.y,f=c.skewY;p<2?i=0:(i=d(Math.atan2(p/c.scaleY,u.x/c.scaleX)),t.originX===o&&t.originY===l&&(i=-i),t.originX===s&&t.originY===a&&(i=-i),S(c)&&(i=-i));var m=f!==i;if(m){var g=c._getTransformedDimensions().x;c.set("skewY",i),_(c,"skewX","scaleX","x",g)}return m}function T(e,t,n,r,i){i=i||{};var o,a,s,l,c,d,p=t.target,f=p.lockScalingX,y=p.lockScalingY,b=i.by,x=m(e,p),S=v(p,b,x),_=t.gestureScale;if(S)return!1;if(_)a=t.scaleX*_,s=t.scaleY*_;else{if(o=w(t,t.originX,t.originY,n,r),c="y"!==b?h(o.x):1,d="x"!==b?h(o.y):1,t.signX||(t.signX=c),t.signY||(t.signY=d),p.lockScalingFlip&&(t.signX!==c||t.signY!==d))return!1;if(l=p._getTransformedDimensions(),x&&!b){var C=Math.abs(o.x)+Math.abs(o.y),E=t.original,T=C/(Math.abs(l.x*E.scaleX/p.scaleX)+Math.abs(l.y*E.scaleY/p.scaleY));a=E.scaleX*T,s=E.scaleY*T}else a=Math.abs(o.x*p.scaleX/l.x),s=Math.abs(o.y*p.scaleY/l.y);g(t)&&(a*=2,s*=2),t.signX!==c&&"y"!==b&&(t.originX=u[t.originX],a*=-1,t.signX=c),t.signY!==d&&"x"!==b&&(t.originY=u[t.originY],s*=-1,t.signY=d)}var O=p.scaleX,N=p.scaleY;return b?("x"===b&&p.set("scaleX",a),"y"===b&&p.set("scaleY",s)):(!f&&p.set("scaleX",a),!y&&p.set("scaleY",s)),O!==p.scaleX||N!==p.scaleY}i.scaleCursorStyleHandler=function(e,t,r){var i=m(e,r),o="";if(0!==t.x&&0===t.y?o="x":0===t.x&&0!==t.y&&(o="y"),v(r,o,i))return"not-allowed";var a=p(r,t);return n[a]+"-resize"},i.skewCursorStyleHandler=function(e,t,n){var i="not-allowed";if(0!==t.x&&n.lockSkewingY)return i;if(0!==t.y&&n.lockSkewingX)return i;var o=p(n,t)%4;return r[o]+"-resize"},i.scaleSkewCursorStyleHandler=function(e,t,n){return e[n.canvas.altActionKey]?i.skewCursorStyleHandler(e,t,n):i.scaleCursorStyleHandler(e,t,n)},i.rotationWithSnapping=x("rotating",b((function(e,t,n,r){var i=t,o=i.target,a=o.translateToOriginPoint(o.getCenterPoint(),i.originX,i.originY);if(o.lockRotation)return!1;var s,l=Math.atan2(i.ey-a.y,i.ex-a.x),c=Math.atan2(r-a.y,n-a.x),u=d(c-l+i.theta);if(o.snapAngle>0){var h=o.snapAngle,p=o.snapThreshold||h,f=Math.ceil(u/h)*h,m=Math.floor(u/h)*h;Math.abs(u-m)0?o:s:(u>0&&(i=d===a?o:s),u<0&&(i=d===a?s:o),S(l)&&(i=i===o?s:o)),t.originX=i,x("skewing",b(C))(e,t,n,r))},i.skewHandlerY=function(e,t,n,r){var i,s=t.target,u=s.skewY,d=t.originX;return!s.lockSkewingY&&(0===u?i=w(t,c,c,n,r).y>0?a:l:(u>0&&(i=d===o?a:l),u<0&&(i=d===o?l:a),S(s)&&(i=i===a?l:a)),t.originY=i,x("skewing",b(E))(e,t,n,r))},i.dragHandler=function(e,t,n,r){var i=t.target,o=n-t.offsetX,a=r-t.offsetY,s=!i.get("lockMovementX")&&i.left!==o,l=!i.get("lockMovementY")&&i.top!==a;return s&&i.set("left",o),l&&i.set("top",a),(s||l)&&f("moving",y(e,t,n,r)),s||l},i.scaleOrSkewActionName=function(e,t,n){var r=e[n.canvas.altActionKey];return 0===t.x?r?"skewX":"scaleY":0===t.y?r?"skewY":"scaleX":void 0},i.rotationStyleHandler=function(e,t,n){return n.lockRotation?"not-allowed":t.cursorStyle},i.fireEvent=f,i.wrapWithFixedAnchor=b,i.wrapWithFireEvent=x,i.getLocalPoint=w,t.controlsUtils=i}(t),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.util.degreesToRadians,r=t.controlsUtils;r.renderCircleControl=function(e,t,n,r,i){r=r||{};var o,a=this.sizeX||r.cornerSize||i.cornerSize,s=this.sizeY||r.cornerSize||i.cornerSize,l="undefined"!==typeof r.transparentCorners?r.transparentCorners:i.transparentCorners,c=l?"stroke":"fill",u=!l&&(r.cornerStrokeColor||i.cornerStrokeColor),d=t,h=n;e.save(),e.fillStyle=r.cornerColor||i.cornerColor,e.strokeStyle=r.cornerStrokeColor||i.cornerStrokeColor,a>s?(o=a,e.scale(1,s/a),h=n*a/s):s>a?(o=s,e.scale(a/s,1),d=t*s/a):o=a,e.lineWidth=1,e.beginPath(),e.arc(d,h,o/2,0,2*Math.PI,!1),e[c](),u&&e.stroke(),e.restore()},r.renderSquareControl=function(e,t,r,i,o){i=i||{};var a=this.sizeX||i.cornerSize||o.cornerSize,s=this.sizeY||i.cornerSize||o.cornerSize,l="undefined"!==typeof i.transparentCorners?i.transparentCorners:o.transparentCorners,c=l?"stroke":"fill",u=!l&&(i.cornerStrokeColor||o.cornerStrokeColor),d=a/2,h=s/2;e.save(),e.fillStyle=i.cornerColor||o.cornerColor,e.strokeStyle=i.cornerStrokeColor||o.cornerStrokeColor,e.lineWidth=1,e.translate(t,r),e.rotate(n(o.angle)),e[c+"Rect"](-d,-h,a,s),u&&e.strokeRect(-d,-h,a,s),e.restore()}}(t),function(e){"use strict";var t=e.fabric||(e.fabric={});t.Control=function(e){for(var t in e)this[t]=e[t]},t.Control.prototype={visible:!0,actionName:"scale",angle:0,x:0,y:0,offsetX:0,offsetY:0,sizeX:null,sizeY:null,touchSizeX:null,touchSizeY:null,cursorStyle:"crosshair",withConnection:!1,actionHandler:function(){},mouseDownHandler:function(){},mouseUpHandler:function(){},getActionHandler:function(){return this.actionHandler},getMouseDownHandler:function(){return this.mouseDownHandler},getMouseUpHandler:function(){return this.mouseUpHandler},cursorStyleHandler:function(e,t){return t.cursorStyle},getActionName:function(e,t){return t.actionName},getVisibility:function(e,t){var n=e._controlsVisibility;return n&&"undefined"!==typeof n[t]?n[t]:this.visible},setVisibility:function(e){this.visible=e},positionHandler:function(e,n){return t.util.transformPoint({x:this.x*e.x+this.offsetX,y:this.y*e.y+this.offsetY},n)},calcCornerCoords:function(e,n,r,i,o){var a,s,l,c,u=o?this.touchSizeX:this.sizeX,d=o?this.touchSizeY:this.sizeY;if(u&&d&&u!==d){var h=Math.atan2(d,u),p=Math.sqrt(u*u+d*d)/2,f=h-t.util.degreesToRadians(e),m=Math.PI/2-h-t.util.degreesToRadians(e);a=p*t.util.cos(f),s=p*t.util.sin(f),l=p*t.util.cos(m),c=p*t.util.sin(m)}else{p=.7071067812*(u&&d?u:n);f=t.util.degreesToRadians(45-e);a=l=p*t.util.cos(f),s=c=p*t.util.sin(f)}return{tl:{x:r-c,y:i-l},tr:{x:r+a,y:i-s},bl:{x:r-a,y:i+s},br:{x:r+c,y:i+l}}},render:function(e,n,r,i,o){if("circle"===((i=i||{}).cornerStyle||o.cornerStyle))t.controlsUtils.renderCircleControl.call(this,e,n,r,i,o);else t.controlsUtils.renderSquareControl.call(this,e,n,r,i,o)}}}(t),function(){function e(e,t){var n,r,o,a,s=e.getAttribute("style"),l=e.getAttribute("offset")||0;if(l=(l=parseFloat(l)/(/%$/.test(l)?100:1))<0?0:l>1?1:l,s){var c=s.split(/\s*;\s*/);for(""===c[c.length-1]&&c.pop(),a=c.length;a--;){var u=c[a].split(/\s*:\s*/),d=u[0].trim(),h=u[1].trim();"stop-color"===d?n=h:"stop-opacity"===d&&(o=h)}}return n||(n=e.getAttribute("stop-color")||"rgb(0,0,0)"),o||(o=e.getAttribute("stop-opacity")),r=(n=new i.Color(n)).getAlpha(),o=isNaN(parseFloat(o))?1:parseFloat(o),o*=r*t,{offset:l,color:n.toRgb(),opacity:o}}var t=i.util.object.clone;i.Gradient=i.util.createClass({offsetX:0,offsetY:0,gradientTransform:null,gradientUnits:"pixels",type:"linear",initialize:function(e){e||(e={}),e.coords||(e.coords={});var t,n=this;Object.keys(e).forEach((function(t){n[t]=e[t]})),this.id?this.id+="_"+i.Object.__uid++:this.id=i.Object.__uid++,t={x1:e.coords.x1||0,y1:e.coords.y1||0,x2:e.coords.x2||0,y2:e.coords.y2||0},"radial"===this.type&&(t.r1=e.coords.r1||0,t.r2=e.coords.r2||0),this.coords=t,this.colorStops=e.colorStops.slice()},addColorStop:function(e){for(var t in e){var n=new i.Color(e[t]);this.colorStops.push({offset:parseFloat(t),color:n.toRgb(),opacity:n.getAlpha()})}return this},toObject:function(e){var t={type:this.type,coords:this.coords,colorStops:this.colorStops,offsetX:this.offsetX,offsetY:this.offsetY,gradientUnits:this.gradientUnits,gradientTransform:this.gradientTransform?this.gradientTransform.concat():this.gradientTransform};return i.util.populateWithProperties(this,t,e),t},toSVG:function(e,n){var r,o,a,s,l=t(this.coords,!0),c=(n=n||{},t(this.colorStops,!0)),u=l.r1>l.r2,d=this.gradientTransform?this.gradientTransform.concat():i.iMatrix.concat(),h=-this.offsetX,p=-this.offsetY,f=!!n.additionalTransform,m="pixels"===this.gradientUnits?"userSpaceOnUse":"objectBoundingBox";if(c.sort((function(e,t){return e.offset-t.offset})),"objectBoundingBox"===m?(h/=e.width,p/=e.height):(h+=e.width/2,p+=e.height/2),"path"===e.type&&"percentage"!==this.gradientUnits&&(h-=e.pathOffset.x,p-=e.pathOffset.y),d[4]-=h,d[5]-=p,s='id="SVGID_'+this.id+'" gradientUnits="'+m+'"',s+=' gradientTransform="'+(f?n.additionalTransform+" ":"")+i.util.matrixToSVG(d)+'" ',"linear"===this.type?a=["\n']:"radial"===this.type&&(a=["\n']),"radial"===this.type){if(u)for((c=c.concat()).reverse(),r=0,o=c.length;r0){var v=g/Math.max(l.r1,l.r2);for(r=0,o=c.length;r\n')}return a.push("linear"===this.type?"\n":"\n"),a.join("")},toLive:function(e){var t,n,r,o=i.util.object.clone(this.coords);if(this.type){for("linear"===this.type?t=e.createLinearGradient(o.x1,o.y1,o.x2,o.y2):"radial"===this.type&&(t=e.createRadialGradient(o.x1,o.y1,o.r1,o.x2,o.y2,o.r2)),n=0,r=this.colorStops.length;n1?1:a,isNaN(a)&&(a=1);var s,l,c,u,d=t.getElementsByTagName("stop"),h="userSpaceOnUse"===t.getAttribute("gradientUnits")?"pixels":"percentage",p=t.getAttribute("gradientTransform")||"",f=[],m=0,g=0;for("linearGradient"===t.nodeName||"LINEARGRADIENT"===t.nodeName?(s="linear",l=function(e){return{x1:e.getAttribute("x1")||0,y1:e.getAttribute("y1")||0,x2:e.getAttribute("x2")||"100%",y2:e.getAttribute("y2")||0}}(t)):(s="radial",l=function(e){return{x1:e.getAttribute("fx")||e.getAttribute("cx")||"50%",y1:e.getAttribute("fy")||e.getAttribute("cy")||"50%",r1:0,x2:e.getAttribute("cx")||"50%",y2:e.getAttribute("cy")||"50%",r2:e.getAttribute("r")||"50%"}}(t)),c=d.length;c--;)f.push(e(d[c],a));return u=i.parseTransformAttribute(p),function(e,t,n,r){var i,o;Object.keys(t).forEach((function(e){"Infinity"===(i=t[e])?o=1:"-Infinity"===i?o=0:(o=parseFloat(t[e],10),"string"===typeof i&&/^(\d+\.\d+)%|(\d+)%$/.test(i)&&(o*=.01,"pixels"===r&&("x1"!==e&&"x2"!==e&&"r2"!==e||(o*=n.viewBoxWidth||n.width),"y1"!==e&&"y2"!==e||(o*=n.viewBoxHeight||n.height)))),t[e]=o}))}(0,l,o,h),"pixels"===h&&(m=-n.left,g=-n.top),new i.Gradient({id:t.getAttribute("id"),type:s,coords:l,colorStops:f,gradientUnits:h,gradientTransform:u,offsetX:m,offsetY:g})}})}(),function(){"use strict";var e=i.util.toFixed;i.Pattern=i.util.createClass({repeat:"repeat",offsetX:0,offsetY:0,crossOrigin:"",patternTransform:null,initialize:function(e,t){if(e||(e={}),this.id=i.Object.__uid++,this.setOptions(e),!e.source||e.source&&"string"!==typeof e.source)t&&t(this);else{var n=this;this.source=i.util.createImage(),i.util.loadImage(e.source,(function(e,r){n.source=e,t&&t(n,r)}),null,this.crossOrigin)}},toObject:function(t){var n,r,o=i.Object.NUM_FRACTION_DIGITS;return"string"===typeof this.source.src?n=this.source.src:"object"===typeof this.source&&this.source.toDataURL&&(n=this.source.toDataURL()),r={type:"pattern",source:n,repeat:this.repeat,crossOrigin:this.crossOrigin,offsetX:e(this.offsetX,o),offsetY:e(this.offsetY,o),patternTransform:this.patternTransform?this.patternTransform.concat():null},i.util.populateWithProperties(this,r,t),r},toSVG:function(e){var t="function"===typeof this.source?this.source():this.source,n=t.width/e.width,r=t.height/e.height,i=this.offsetX/e.width,o=this.offsetY/e.height,a="";return"repeat-x"!==this.repeat&&"no-repeat"!==this.repeat||(r=1,o&&(r+=Math.abs(o))),"repeat-y"!==this.repeat&&"no-repeat"!==this.repeat||(n=1,i&&(n+=Math.abs(i))),t.src?a=t.src:t.toDataURL&&(a=t.toDataURL()),'\n\n\n'},setOptions:function(e){for(var t in e)this[t]=e[t]},toLive:function(e){var t=this.source;if(!t)return"";if("undefined"!==typeof t.src){if(!t.complete)return"";if(0===t.naturalWidth||0===t.naturalHeight)return""}return e.createPattern(t,this.repeat)}})}(),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.util.toFixed;t.Shadow?t.warn("fabric.Shadow is already defined."):(t.Shadow=t.util.createClass({color:"rgb(0,0,0)",blur:0,offsetX:0,offsetY:0,affectStroke:!1,includeDefaultValues:!0,nonScaling:!1,initialize:function(e){for(var n in"string"===typeof e&&(e=this._parseShadow(e)),e)this[n]=e[n];this.id=t.Object.__uid++},_parseShadow:function(e){var n=e.trim(),r=t.Shadow.reOffsetsAndBlur.exec(n)||[];return{color:(n.replace(t.Shadow.reOffsetsAndBlur,"")||"rgb(0,0,0)").trim(),offsetX:parseFloat(r[1],10)||0,offsetY:parseFloat(r[2],10)||0,blur:parseFloat(r[3],10)||0}},toString:function(){return[this.offsetX,this.offsetY,this.blur,this.color].join("px ")},toSVG:function(e){var r=40,i=40,o=t.Object.NUM_FRACTION_DIGITS,a=t.util.rotateVector({x:this.offsetX,y:this.offsetY},t.util.degreesToRadians(-e.angle)),s=new t.Color(this.color);return e.width&&e.height&&(r=100*n((Math.abs(a.x)+this.blur)/e.width,o)+20,i=100*n((Math.abs(a.y)+this.blur)/e.height,o)+20),e.flipX&&(a.x*=-1),e.flipY&&(a.y*=-1),'\n\t\n\t\n\t\n\t\n\t\n\t\t\n\t\t\n\t\n\n'},toObject:function(){if(this.includeDefaultValues)return{color:this.color,blur:this.blur,offsetX:this.offsetX,offsetY:this.offsetY,affectStroke:this.affectStroke,nonScaling:this.nonScaling};var e={},n=t.Shadow.prototype;return["color","blur","offsetX","offsetY","affectStroke","nonScaling"].forEach((function(t){this[t]!==n[t]&&(e[t]=this[t])}),this),e}}),t.Shadow.reOffsetsAndBlur=/(?:\s|^)(-?\d+(?:\.\d*)?(?:px)?(?:\s?|$))?(-?\d+(?:\.\d*)?(?:px)?(?:\s?|$))?(\d+(?:\.\d*)?(?:px)?)?(?:\s?|$)(?:$|\s)/)}(t),function(){"use strict";if(i.StaticCanvas)i.warn("fabric.StaticCanvas is already defined.");else{var e=i.util.object.extend,t=i.util.getElementOffset,n=i.util.removeFromArray,r=i.util.toFixed,o=i.util.transformPoint,a=i.util.invertTransform,s=i.util.getNodeCanvas,l=i.util.createCanvasElement,c=new Error("Could not initialize `canvas` element");i.StaticCanvas=i.util.createClass(i.CommonMethods,{initialize:function(e,t){t||(t={}),this.renderAndResetBound=this.renderAndReset.bind(this),this.requestRenderAllBound=this.requestRenderAll.bind(this),this._initStatic(e,t)},backgroundColor:"",backgroundImage:null,overlayColor:"",overlayImage:null,includeDefaultValues:!0,stateful:!1,renderOnAddRemove:!0,controlsAboveOverlay:!1,allowTouchScrolling:!1,imageSmoothingEnabled:!0,viewportTransform:i.iMatrix.concat(),backgroundVpt:!0,overlayVpt:!0,enableRetinaScaling:!0,vptCoords:{},skipOffscreen:!0,clipPath:void 0,_initStatic:function(e,t){var n=this.requestRenderAllBound;this._objects=[],this._createLowerCanvas(e),this._initOptions(t),this.interactive||this._initRetinaScaling(),t.overlayImage&&this.setOverlayImage(t.overlayImage,n),t.backgroundImage&&this.setBackgroundImage(t.backgroundImage,n),t.backgroundColor&&this.setBackgroundColor(t.backgroundColor,n),t.overlayColor&&this.setOverlayColor(t.overlayColor,n),this.calcOffset()},_isRetinaScaling:function(){return i.devicePixelRatio>1&&this.enableRetinaScaling},getRetinaScaling:function(){return this._isRetinaScaling()?Math.max(1,i.devicePixelRatio):1},_initRetinaScaling:function(){if(this._isRetinaScaling()){var e=i.devicePixelRatio;this.__initRetinaScaling(e,this.lowerCanvasEl,this.contextContainer),this.upperCanvasEl&&this.__initRetinaScaling(e,this.upperCanvasEl,this.contextTop)}},__initRetinaScaling:function(e,t,n){t.setAttribute("width",this.width*e),t.setAttribute("height",this.height*e),n.scale(e,e)},calcOffset:function(){return this._offset=t(this.lowerCanvasEl),this},setOverlayImage:function(e,t,n){return this.__setBgOverlayImage("overlayImage",e,t,n)},setBackgroundImage:function(e,t,n){return this.__setBgOverlayImage("backgroundImage",e,t,n)},setOverlayColor:function(e,t){return this.__setBgOverlayColor("overlayColor",e,t)},setBackgroundColor:function(e,t){return this.__setBgOverlayColor("backgroundColor",e,t)},__setBgOverlayImage:function(e,t,n,r){return"string"===typeof t?i.util.loadImage(t,(function(t,o){if(t){var a=new i.Image(t,r);this[e]=a,a.canvas=this}n&&n(t,o)}),this,r&&r.crossOrigin):(r&&t.setOptions(r),this[e]=t,t&&(t.canvas=this),n&&n(t,!1)),this},__setBgOverlayColor:function(e,t,n){return this[e]=t,this._initGradient(t,e),this._initPattern(t,e,n),this},_createCanvasElement:function(){var e=l();if(!e)throw c;if(e.style||(e.style={}),"undefined"===typeof e.getContext)throw c;return e},_initOptions:function(e){var t=this.lowerCanvasEl;this._setOptions(e),this.width=this.width||parseInt(t.width,10)||0,this.height=this.height||parseInt(t.height,10)||0,this.lowerCanvasEl.style&&(t.width=this.width,t.height=this.height,t.style.width=this.width+"px",t.style.height=this.height+"px",this.viewportTransform=this.viewportTransform.slice())},_createLowerCanvas:function(e){e&&e.getContext?this.lowerCanvasEl=e:this.lowerCanvasEl=i.util.getById(e)||this._createCanvasElement(),i.util.addClass(this.lowerCanvasEl,"lower-canvas"),this._originalCanvasStyle=this.lowerCanvasEl.style,this.interactive&&this._applyCanvasStyle(this.lowerCanvasEl),this.contextContainer=this.lowerCanvasEl.getContext("2d")},getWidth:function(){return this.width},getHeight:function(){return this.height},setWidth:function(e,t){return this.setDimensions({width:e},t)},setHeight:function(e,t){return this.setDimensions({height:e},t)},setDimensions:function(e,t){var n;for(var r in t=t||{},e)n=e[r],t.cssOnly||(this._setBackstoreDimension(r,e[r]),n+="px",this.hasLostContext=!0),t.backstoreOnly||this._setCssDimension(r,n);return this._isCurrentlyDrawing&&this.freeDrawingBrush&&this.freeDrawingBrush._setBrushStyles(this.contextTop),this._initRetinaScaling(),this.calcOffset(),t.cssOnly||this.requestRenderAll(),this},_setBackstoreDimension:function(e,t){return this.lowerCanvasEl[e]=t,this.upperCanvasEl&&(this.upperCanvasEl[e]=t),this.cacheCanvasEl&&(this.cacheCanvasEl[e]=t),this[e]=t,this},_setCssDimension:function(e,t){return this.lowerCanvasEl.style[e]=t,this.upperCanvasEl&&(this.upperCanvasEl.style[e]=t),this.wrapperEl&&(this.wrapperEl.style[e]=t),this},getZoom:function(){return this.viewportTransform[0]},setViewportTransform:function(e){var t,n,r,i=this._activeObject,o=this.backgroundImage,a=this.overlayImage;for(this.viewportTransform=e,n=0,r=this._objects.length;n\n'),this._setSVGBgOverlayColor(n,"background"),this._setSVGBgOverlayImage(n,"backgroundImage",t),this._setSVGObjects(n,t),this.clipPath&&n.push("\n"),this._setSVGBgOverlayColor(n,"overlay"),this._setSVGBgOverlayImage(n,"overlayImage",t),n.push(""),n.join("")},_setSVGPreamble:function(e,t){t.suppressPreamble||e.push('\n','\n')},_setSVGHeader:function(e,t){var n,o=t.width||this.width,a=t.height||this.height,s='viewBox="0 0 '+this.width+" "+this.height+'" ',l=i.Object.NUM_FRACTION_DIGITS;t.viewBox?s='viewBox="'+t.viewBox.x+" "+t.viewBox.y+" "+t.viewBox.width+" "+t.viewBox.height+'" ':this.svgViewportTransformation&&(n=this.viewportTransform,s='viewBox="'+r(-n[4]/n[0],l)+" "+r(-n[5]/n[3],l)+" "+r(this.width/n[0],l)+" "+r(this.height/n[3],l)+'" '),e.push("\n',"Created with Fabric.js ",i.version,"\n","\n",this.createSVGFontFacesMarkup(),this.createSVGRefElementsMarkup(),this.createSVGClipPathMarkup(t),"\n")},createSVGClipPathMarkup:function(e){var t=this.clipPath;return t?(t.clipPathId="CLIPPATH_"+i.Object.__uid++,'\n'+this.clipPath.toClipPathSVG(e.reviver)+"\n"):""},createSVGRefElementsMarkup:function(){var e=this;return["background","overlay"].map((function(t){var n=e[t+"Color"];if(n&&n.toLive){var r=e[t+"Vpt"],o=e.viewportTransform,a={width:e.width/(r?o[0]:1),height:e.height/(r?o[3]:1)};return n.toSVG(a,{additionalTransform:r?i.util.matrixToSVG(o):""})}})).join("")},createSVGFontFacesMarkup:function(){var e,t,n,r,o,a,s,l,c="",u={},d=i.fontPaths,h=[];for(this._objects.forEach((function e(t){h.push(t),t._objects&&t._objects.forEach(e)})),s=0,l=h.length;s',"\n",c,"","\n"].join("")),c},_setSVGObjects:function(e,t){var n,r,i,o=this._objects;for(r=0,i=o.length;r\n")}else e.push('\n")},sendToBack:function(e){if(!e)return this;var t,r,i,o=this._activeObject;if(e===o&&"activeSelection"===e.type)for(t=(i=o._objects).length;t--;)r=i[t],n(this._objects,r),this._objects.unshift(r);else n(this._objects,e),this._objects.unshift(e);return this.renderOnAddRemove&&this.requestRenderAll(),this},bringToFront:function(e){if(!e)return this;var t,r,i,o=this._activeObject;if(e===o&&"activeSelection"===e.type)for(i=o._objects,t=0;t0+c&&(a=o-1,n(this._objects,i),this._objects.splice(a,0,i)),c++;else 0!==(o=this._objects.indexOf(e))&&(a=this._findNewLowerIndex(e,o,t),n(this._objects,e),this._objects.splice(a,0,e));return this.renderOnAddRemove&&this.requestRenderAll(),this},_findNewLowerIndex:function(e,t,n){var r,i;if(n)for(r=t,i=t-1;i>=0;--i){if(e.intersectsWithObject(this._objects[i])||e.isContainedWithinObject(this._objects[i])||this._objects[i].isContainedWithinObject(e)){r=i;break}}else r=t-1;return r},bringForward:function(e,t){if(!e)return this;var r,i,o,a,s,l=this._activeObject,c=0;if(e===l&&"activeSelection"===e.type)for(r=(s=l._objects).length;r--;)i=s[r],(o=this._objects.indexOf(i))"}}),e(i.StaticCanvas.prototype,i.Observable),e(i.StaticCanvas.prototype,i.Collection),e(i.StaticCanvas.prototype,i.DataURLExporter),e(i.StaticCanvas,{EMPTY_JSON:'{"objects": [], "background": "white"}',supports:function(e){var t=l();if(!t||!t.getContext)return null;var n=t.getContext("2d");return n&&"setLineDash"===e?"undefined"!==typeof n.setLineDash:null}}),i.StaticCanvas.prototype.toJSON=i.StaticCanvas.prototype.toObject,i.isLikelyNode&&(i.StaticCanvas.prototype.createPNGStream=function(){var e=s(this.lowerCanvasEl);return e&&e.createPNGStream()},i.StaticCanvas.prototype.createJPEGStream=function(e){var t=s(this.lowerCanvasEl);return t&&t.createJPEGStream(e)})}}(),i.BaseBrush=i.util.createClass({color:"rgb(0, 0, 0)",width:1,shadow:null,strokeLineCap:"round",strokeLineJoin:"round",strokeMiterLimit:10,strokeDashArray:null,limitedToCanvasSize:!1,_setBrushStyles:function(e){e.strokeStyle=this.color,e.lineWidth=this.width,e.lineCap=this.strokeLineCap,e.miterLimit=this.strokeMiterLimit,e.lineJoin=this.strokeLineJoin,e.setLineDash(this.strokeDashArray||[])},_saveAndTransform:function(e){var t=this.canvas.viewportTransform;e.save(),e.transform(t[0],t[1],t[2],t[3],t[4],t[5])},_setShadow:function(){if(this.shadow){var e=this.canvas,t=this.shadow,n=e.contextTop,r=e.getZoom();e&&e._isRetinaScaling()&&(r*=i.devicePixelRatio),n.shadowColor=t.color,n.shadowBlur=t.blur*r,n.shadowOffsetX=t.offsetX*r,n.shadowOffsetY=t.offsetY*r}},needsFullRender:function(){return new i.Color(this.color).getAlpha()<1||!!this.shadow},_resetShadow:function(){var e=this.canvas.contextTop;e.shadowColor="",e.shadowBlur=e.shadowOffsetX=e.shadowOffsetY=0},_isOutSideCanvas:function(e){return e.x<0||e.x>this.canvas.getWidth()||e.y<0||e.y>this.canvas.getHeight()}}),i.PencilBrush=i.util.createClass(i.BaseBrush,{decimate:.4,drawStraightLine:!1,straightLineKey:"shiftKey",initialize:function(e){this.canvas=e,this._points=[]},needsFullRender:function(){return this.callSuper("needsFullRender")||this._hasStraightLine},_drawSegment:function(e,t,n){var r=t.midPointFrom(n);return e.quadraticCurveTo(t.x,t.y,r.x,r.y),r},onMouseDown:function(e,t){this.canvas._isMainEvent(t.e)&&(this.drawStraightLine=t.e[this.straightLineKey],this._prepareForDrawing(e),this._captureDrawingPath(e),this._render())},onMouseMove:function(e,t){if(this.canvas._isMainEvent(t.e)&&(this.drawStraightLine=t.e[this.straightLineKey],(!0!==this.limitedToCanvasSize||!this._isOutSideCanvas(e))&&this._captureDrawingPath(e)&&this._points.length>1))if(this.needsFullRender())this.canvas.clearContext(this.canvas.contextTop),this._render();else{var n=this._points,r=n.length,i=this.canvas.contextTop;this._saveAndTransform(i),this.oldEnd&&(i.beginPath(),i.moveTo(this.oldEnd.x,this.oldEnd.y)),this.oldEnd=this._drawSegment(i,n[r-2],n[r-1],!0),i.stroke(),i.restore()}},onMouseUp:function(e){return!this.canvas._isMainEvent(e.e)||(this.drawStraightLine=!1,this.oldEnd=void 0,this._finalizeAndAddPath(),!1)},_prepareForDrawing:function(e){var t=new i.Point(e.x,e.y);this._reset(),this._addPoint(t),this.canvas.contextTop.moveTo(t.x,t.y)},_addPoint:function(e){return!(this._points.length>1&&e.eq(this._points[this._points.length-1]))&&(this.drawStraightLine&&this._points.length>1&&(this._hasStraightLine=!0,this._points.pop()),this._points.push(e),!0)},_reset:function(){this._points=[],this._setBrushStyles(this.canvas.contextTop),this._setShadow(),this._hasStraightLine=!1},_captureDrawingPath:function(e){var t=new i.Point(e.x,e.y);return this._addPoint(t)},_render:function(e){var t,n,r=this._points[0],o=this._points[1];if(e=e||this.canvas.contextTop,this._saveAndTransform(e),e.beginPath(),2===this._points.length&&r.x===o.x&&r.y===o.y){var a=this.width/1e3;r=new i.Point(r.x,r.y),o=new i.Point(o.x,o.y),r.x-=a,o.x+=a}for(e.moveTo(r.x,r.y),t=1,n=this._points.length;t=i&&(a=e[n],s.push(a));return s.push(e[o]),s},_finalizeAndAddPath:function(){this.canvas.contextTop.closePath(),this.decimate&&(this._points=this.decimatePoints(this._points,this.decimate));var e=this.convertPointsToSVGPath(this._points);if(this._isEmptySVGPath(e))this.canvas.requestRenderAll();else{var t=this.createPath(e);this.canvas.clearContext(this.canvas.contextTop),this.canvas.fire("before:path:created",{path:t}),this.canvas.add(t),this.canvas.requestRenderAll(),t.setCoords(),this._resetShadow(),this.canvas.fire("path:created",{path:t})}}}),i.CircleBrush=i.util.createClass(i.BaseBrush,{width:10,initialize:function(e){this.canvas=e,this.points=[]},drawDot:function(e){var t=this.addPoint(e),n=this.canvas.contextTop;this._saveAndTransform(n),this.dot(n,t),n.restore()},dot:function(e,t){e.fillStyle=t.fill,e.beginPath(),e.arc(t.x,t.y,t.radius,0,2*Math.PI,!1),e.closePath(),e.fill()},onMouseDown:function(e){this.points.length=0,this.canvas.clearContext(this.canvas.contextTop),this._setShadow(),this.drawDot(e)},_render:function(){var e,t,n=this.canvas.contextTop,r=this.points;for(this._saveAndTransform(n),e=0,t=r.length;e0&&!this.preserveObjectStacking){t=[],n=[];for(var i=0,o=this._objects.length;i1&&(this._activeObject._objects=n),t.push.apply(t,n)}else t=this._objects;return t},renderAll:function(){!this.contextTopDirty||this._groupSelector||this.isDrawingMode||(this.clearContext(this.contextTop),this.contextTopDirty=!1),this.hasLostContext&&(this.renderTopLayer(this.contextTop),this.hasLostContext=!1);var e=this.contextContainer;return this.renderCanvas(e,this._chooseObjectsToRender()),this},renderTopLayer:function(e){e.save(),this.isDrawingMode&&this._isCurrentlyDrawing&&(this.freeDrawingBrush&&this.freeDrawingBrush._render(),this.contextTopDirty=!0),this.selection&&this._groupSelector&&(this._drawSelection(e),this.contextTopDirty=!0),e.restore()},renderTop:function(){var e=this.contextTop;return this.clearContext(e),this.renderTopLayer(e),this.fire("after:render"),this},_normalizePointer:function(e,t){var n=e.calcTransformMatrix(),r=i.util.invertTransform(n),o=this.restorePointerVpt(t);return i.util.transformPoint(o,r)},isTargetTransparent:function(e,t,n){if(e.shouldCache()&&e._cacheCanvas&&e!==this._activeObject){var r=this._normalizePointer(e,{x:t,y:n}),o=Math.max(e.cacheTranslationX+r.x*e.zoomX,0),a=Math.max(e.cacheTranslationY+r.y*e.zoomY,0);return i.util.isTransparent(e._cacheContext,Math.round(o),Math.round(a),this.targetFindTolerance)}var s=this.contextCache,l=e.selectionBackgroundColor,c=this.viewportTransform;return e.selectionBackgroundColor="",this.clearContext(s),s.save(),s.transform(c[0],c[1],c[2],c[3],c[4],c[5]),e.render(s),s.restore(),e.selectionBackgroundColor=l,i.util.isTransparent(s,t,n,this.targetFindTolerance)},_isSelectionKeyPressed:function(e){return Array.isArray(this.selectionKey)?!!this.selectionKey.find((function(t){return!0===e[t]})):e[this.selectionKey]},_shouldClearSelection:function(e,t){var n=this.getActiveObjects(),r=this._activeObject;return!t||t&&r&&n.length>1&&-1===n.indexOf(t)&&r!==t&&!this._isSelectionKeyPressed(e)||t&&!t.evented||t&&!t.selectable&&r&&r!==t},_shouldCenterTransform:function(e,t,n){var r;if(e)return"scale"===t||"scaleX"===t||"scaleY"===t||"resizing"===t?r=this.centeredScaling||e.centeredScaling:"rotate"===t&&(r=this.centeredRotation||e.centeredRotation),r?!n:n},_getOriginFromCorner:function(e,t){var n={x:e.originX,y:e.originY};return"ml"===t||"tl"===t||"bl"===t?n.x="right":"mr"!==t&&"tr"!==t&&"br"!==t||(n.x="left"),"tl"===t||"mt"===t||"tr"===t?n.y="bottom":"bl"!==t&&"mb"!==t&&"br"!==t||(n.y="top"),n},_getActionFromCorner:function(e,t,n,r){if(!t||!e)return"drag";var i=r.controls[t];return i.getActionName(n,i,r)},_setupCurrentTransform:function(e,n,r){if(n){var o=this.getPointer(e),a=n.__corner,s=n.controls[a],l=r&&a?s.getActionHandler(e,n,s):i.controlsUtils.dragHandler,c=this._getActionFromCorner(r,a,e,n),u=this._getOriginFromCorner(n,a),d=e[this.centeredKey],h={target:n,action:c,actionHandler:l,corner:a,scaleX:n.scaleX,scaleY:n.scaleY,skewX:n.skewX,skewY:n.skewY,offsetX:o.x-n.left,offsetY:o.y-n.top,originX:u.x,originY:u.y,ex:o.x,ey:o.y,lastX:o.x,lastY:o.y,theta:t(n.angle),width:n.width*n.scaleX,shiftKey:e.shiftKey,altKey:d,original:i.util.saveObjectTransform(n)};this._shouldCenterTransform(n,c,d)&&(h.originX="center",h.originY="center"),h.original.originX=u.x,h.original.originY=u.y,this._currentTransform=h,this._beforeTransform(e)}},setCursor:function(e){this.upperCanvasEl.style.cursor=e},_drawSelection:function(e){var t=this._groupSelector,n=new i.Point(t.ex,t.ey),r=i.util.transformPoint(n,this.viewportTransform),o=new i.Point(t.ex+t.left,t.ey+t.top),a=i.util.transformPoint(o,this.viewportTransform),s=Math.min(r.x,a.x),l=Math.min(r.y,a.y),c=Math.max(r.x,a.x),u=Math.max(r.y,a.y),d=this.selectionLineWidth/2;this.selectionColor&&(e.fillStyle=this.selectionColor,e.fillRect(s,l,c-s,u-l)),this.selectionLineWidth&&this.selectionBorderColor&&(e.lineWidth=this.selectionLineWidth,e.strokeStyle=this.selectionBorderColor,s+=d,l+=d,c-=d,u-=d,i.Object.prototype._setLineDash.call(this,e,this.selectionDashArray),e.strokeRect(s,l,c-s,u-l))},findTarget:function(e,t){if(!this.skipTargetFind){var r,i,o=this.getPointer(e,!0),a=this._activeObject,s=this.getActiveObjects(),l=n(e),c=s.length>1&&!t||1===s.length;if(this.targets=[],c&&a._findTargetCorner(o,l))return a;if(s.length>1&&!t&&a===this._searchPossibleTargets([a],o))return a;if(1===s.length&&a===this._searchPossibleTargets([a],o)){if(!this.preserveObjectStacking)return a;r=a,i=this.targets,this.targets=[]}var u=this._searchPossibleTargets(this._objects,o);return e[this.altSelectionKey]&&u&&r&&u!==r&&(u=r,this.targets=i),u}},_checkTarget:function(e,t,n){if(t&&t.visible&&t.evented&&t.containsPoint(e)){if(!this.perPixelTargetFind&&!t.perPixelTargetFind||t.isEditing)return!0;if(!this.isTargetTransparent(t,n.x,n.y))return!0}},_searchPossibleTargets:function(e,t){for(var n,r,o=e.length;o--;){var a=e[o],s=a.group?this._normalizePointer(a.group,t):t;if(this._checkTarget(s,a,t)){(n=e[o]).subTargetCheck&&n instanceof i.Group&&(r=this._searchPossibleTargets(n._objects,t))&&this.targets.push(r);break}}return n},restorePointerVpt:function(e){return i.util.transformPoint(e,i.util.invertTransform(this.viewportTransform))},getPointer:function(t,n){if(this._absolutePointer&&!n)return this._absolutePointer;if(this._pointer&&n)return this._pointer;var r,i=e(t),o=this.upperCanvasEl,a=o.getBoundingClientRect(),s=a.width||0,l=a.height||0;s&&l||("top"in a&&"bottom"in a&&(l=Math.abs(a.top-a.bottom)),"right"in a&&"left"in a&&(s=Math.abs(a.right-a.left))),this.calcOffset(),i.x=i.x-this._offset.left,i.y=i.y-this._offset.top,n||(i=this.restorePointerVpt(i));var c=this.getRetinaScaling();return 1!==c&&(i.x/=c,i.y/=c),r=0===s||0===l?{width:1,height:1}:{width:o.width/s,height:o.height/l},{x:i.x*r.width,y:i.y*r.height}},_createUpperCanvas:function(){var e=this.lowerCanvasEl.className.replace(/\s*lower-canvas\s*/,""),t=this.lowerCanvasEl,n=this.upperCanvasEl;n?n.className="":(n=this._createCanvasElement(),this.upperCanvasEl=n),i.util.addClass(n,"upper-canvas "+e),this.wrapperEl.appendChild(n),this._copyCanvasStyle(t,n),this._applyCanvasStyle(n),this.contextTop=n.getContext("2d")},getTopContext:function(){return this.contextTop},_createCacheCanvas:function(){this.cacheCanvasEl=this._createCanvasElement(),this.cacheCanvasEl.setAttribute("width",this.width),this.cacheCanvasEl.setAttribute("height",this.height),this.contextCache=this.cacheCanvasEl.getContext("2d")},_initWrapperElement:function(){this.wrapperEl=i.util.wrapElement(this.lowerCanvasEl,"div",{class:this.containerClass}),i.util.setStyle(this.wrapperEl,{width:this.width+"px",height:this.height+"px",position:"relative"}),i.util.makeElementUnselectable(this.wrapperEl)},_applyCanvasStyle:function(e){var t=this.width||e.width,n=this.height||e.height;i.util.setStyle(e,{position:"absolute",width:t+"px",height:n+"px",left:0,top:0,"touch-action":this.allowTouchScrolling?"manipulation":"none","-ms-touch-action":this.allowTouchScrolling?"manipulation":"none"}),e.width=t,e.height=n,i.util.makeElementUnselectable(e)},_copyCanvasStyle:function(e,t){t.style.cssText=e.style.cssText},getSelectionContext:function(){return this.contextTop},getSelectionElement:function(){return this.upperCanvasEl},getActiveObject:function(){return this._activeObject},getActiveObjects:function(){var e=this._activeObject;return e?"activeSelection"===e.type&&e._objects?e._objects.slice(0):[e]:[]},_onObjectRemoved:function(e){e===this._activeObject&&(this.fire("before:selection:cleared",{target:e}),this._discardActiveObject(),this.fire("selection:cleared",{target:e}),e.fire("deselected")),e===this._hoveredTarget&&(this._hoveredTarget=null,this._hoveredTargets=[]),this.callSuper("_onObjectRemoved",e)},_fireSelectionEvents:function(e,t){var n=!1,r=this.getActiveObjects(),i=[],o=[];e.forEach((function(e){-1===r.indexOf(e)&&(n=!0,e.fire("deselected",{e:t,target:e}),o.push(e))})),r.forEach((function(r){-1===e.indexOf(r)&&(n=!0,r.fire("selected",{e:t,target:r}),i.push(r))})),e.length>0&&r.length>0?n&&this.fire("selection:updated",{e:t,selected:i,deselected:o}):r.length>0?this.fire("selection:created",{e:t,selected:i}):e.length>0&&this.fire("selection:cleared",{e:t,deselected:o})},setActiveObject:function(e,t){var n=this.getActiveObjects();return this._setActiveObject(e,t),this._fireSelectionEvents(n,t),this},_setActiveObject:function(e,t){return this._activeObject!==e&&(!!this._discardActiveObject(t,e)&&(!e.onSelect({e:t})&&(this._activeObject=e,!0)))},_discardActiveObject:function(e,t){var n=this._activeObject;if(n){if(n.onDeselect({e:e,object:t}))return!1;this._activeObject=null}return!0},discardActiveObject:function(e){var t=this.getActiveObjects(),n=this.getActiveObject();return t.length&&this.fire("before:selection:cleared",{target:n,e:e}),this._discardActiveObject(e),this._fireSelectionEvents(t,e),this},dispose:function(){var e=this.wrapperEl;return this.removeListeners(),e.removeChild(this.upperCanvasEl),e.removeChild(this.lowerCanvasEl),this.contextCache=null,this.contextTop=null,["upperCanvasEl","cacheCanvasEl"].forEach(function(e){i.util.cleanUpJsdomNode(this[e]),this[e]=void 0}.bind(this)),e.parentNode&&e.parentNode.replaceChild(this.lowerCanvasEl,this.wrapperEl),delete this.wrapperEl,i.StaticCanvas.prototype.dispose.call(this),this},clear:function(){return this.discardActiveObject(),this.clearContext(this.contextTop),this.callSuper("clear")},drawControls:function(e){var t=this._activeObject;t&&t._renderControls(e)},_toObject:function(e,t,n){var r=this._realizeGroupTransformOnObject(e),i=this.callSuper("_toObject",e,t,n);return this._unwindGroupTransformOnObject(e,r),i},_realizeGroupTransformOnObject:function(e){if(e.group&&"activeSelection"===e.group.type&&this._activeObject===e.group){var t={};return["angle","flipX","flipY","left","scaleX","scaleY","skewX","skewY","top"].forEach((function(n){t[n]=e[n]})),i.util.addTransformToObject(e,this._activeObject.calcOwnMatrix()),t}return null},_unwindGroupTransformOnObject:function(e,t){t&&e.set(t)},_setSVGObject:function(e,t,n){var r=this._realizeGroupTransformOnObject(t);this.callSuper("_setSVGObject",e,t,n),this._unwindGroupTransformOnObject(t,r)},setViewportTransform:function(e){this.renderOnAddRemove&&this._activeObject&&this._activeObject.isEditing&&this._activeObject.clearContextTop(),i.StaticCanvas.prototype.setViewportTransform.call(this,e)}}),i.StaticCanvas)"prototype"!==r&&(i.Canvas[r]=i.StaticCanvas[r])}(),function(){var e=i.util.addListener,t=i.util.removeListener,n={passive:!1};function r(e,t){return e.button&&e.button===t-1}i.util.object.extend(i.Canvas.prototype,{mainTouchId:null,_initEventListeners:function(){this.removeListeners(),this._bindEvents(),this.addOrRemove(e,"add")},_getEventPrefix:function(){return this.enablePointerEvents?"pointer":"mouse"},addOrRemove:function(e,t){var r=this.upperCanvasEl,o=this._getEventPrefix();e(i.window,"resize",this._onResize),e(r,o+"down",this._onMouseDown),e(r,o+"move",this._onMouseMove,n),e(r,o+"out",this._onMouseOut),e(r,o+"enter",this._onMouseEnter),e(r,"wheel",this._onMouseWheel),e(r,"contextmenu",this._onContextMenu),e(r,"dblclick",this._onDoubleClick),e(r,"dragover",this._onDragOver),e(r,"dragenter",this._onDragEnter),e(r,"dragleave",this._onDragLeave),e(r,"drop",this._onDrop),this.enablePointerEvents||e(r,"touchstart",this._onTouchStart,n),"undefined"!==typeof eventjs&&t in eventjs&&(eventjs[t](r,"gesture",this._onGesture),eventjs[t](r,"drag",this._onDrag),eventjs[t](r,"orientation",this._onOrientationChange),eventjs[t](r,"shake",this._onShake),eventjs[t](r,"longpress",this._onLongPress))},removeListeners:function(){this.addOrRemove(t,"remove");var e=this._getEventPrefix();t(i.document,e+"up",this._onMouseUp),t(i.document,"touchend",this._onTouchEnd,n),t(i.document,e+"move",this._onMouseMove,n),t(i.document,"touchmove",this._onMouseMove,n)},_bindEvents:function(){this.eventsBound||(this._onMouseDown=this._onMouseDown.bind(this),this._onTouchStart=this._onTouchStart.bind(this),this._onMouseMove=this._onMouseMove.bind(this),this._onMouseUp=this._onMouseUp.bind(this),this._onTouchEnd=this._onTouchEnd.bind(this),this._onResize=this._onResize.bind(this),this._onGesture=this._onGesture.bind(this),this._onDrag=this._onDrag.bind(this),this._onShake=this._onShake.bind(this),this._onLongPress=this._onLongPress.bind(this),this._onOrientationChange=this._onOrientationChange.bind(this),this._onMouseWheel=this._onMouseWheel.bind(this),this._onMouseOut=this._onMouseOut.bind(this),this._onMouseEnter=this._onMouseEnter.bind(this),this._onContextMenu=this._onContextMenu.bind(this),this._onDoubleClick=this._onDoubleClick.bind(this),this._onDragOver=this._onDragOver.bind(this),this._onDragEnter=this._simpleEventHandler.bind(this,"dragenter"),this._onDragLeave=this._simpleEventHandler.bind(this,"dragleave"),this._onDrop=this._onDrop.bind(this),this.eventsBound=!0)},_onGesture:function(e,t){this.__onTransformGesture&&this.__onTransformGesture(e,t)},_onDrag:function(e,t){this.__onDrag&&this.__onDrag(e,t)},_onMouseWheel:function(e){this.__onMouseWheel(e)},_onMouseOut:function(e){var t=this._hoveredTarget;this.fire("mouse:out",{target:t,e:e}),this._hoveredTarget=null,t&&t.fire("mouseout",{e:e});var n=this;this._hoveredTargets.forEach((function(r){n.fire("mouse:out",{target:t,e:e}),r&&t.fire("mouseout",{e:e})})),this._hoveredTargets=[]},_onMouseEnter:function(e){this._currentTransform||this.findTarget(e)||(this.fire("mouse:over",{target:null,e:e}),this._hoveredTarget=null,this._hoveredTargets=[])},_onOrientationChange:function(e,t){this.__onOrientationChange&&this.__onOrientationChange(e,t)},_onShake:function(e,t){this.__onShake&&this.__onShake(e,t)},_onLongPress:function(e,t){this.__onLongPress&&this.__onLongPress(e,t)},_onDragOver:function(e){e.preventDefault();var t=this._simpleEventHandler("dragover",e);this._fireEnterLeaveEvents(t,e)},_onDrop:function(e){return this._simpleEventHandler("drop:before",e),this._simpleEventHandler("drop",e)},_onContextMenu:function(e){return this.stopContextMenu&&(e.stopPropagation(),e.preventDefault()),!1},_onDoubleClick:function(e){this._cacheTransformEventData(e),this._handleEvent(e,"dblclick"),this._resetTransformEventData(e)},getPointerId:function(e){var t=e.changedTouches;return t?t[0]&&t[0].identifier:this.enablePointerEvents?e.pointerId:-1},_isMainEvent:function(e){return!0===e.isPrimary||!1!==e.isPrimary&&("touchend"===e.type&&0===e.touches.length||(!e.changedTouches||e.changedTouches[0].identifier===this.mainTouchId))},_onTouchStart:function(r){r.preventDefault(),null===this.mainTouchId&&(this.mainTouchId=this.getPointerId(r)),this.__onMouseDown(r),this._resetTransformEventData();var o=this.upperCanvasEl,a=this._getEventPrefix();e(i.document,"touchend",this._onTouchEnd,n),e(i.document,"touchmove",this._onMouseMove,n),t(o,a+"down",this._onMouseDown)},_onMouseDown:function(r){this.__onMouseDown(r),this._resetTransformEventData();var o=this.upperCanvasEl,a=this._getEventPrefix();t(o,a+"move",this._onMouseMove,n),e(i.document,a+"up",this._onMouseUp),e(i.document,a+"move",this._onMouseMove,n)},_onTouchEnd:function(r){if(!(r.touches.length>0)){this.__onMouseUp(r),this._resetTransformEventData(),this.mainTouchId=null;var o=this._getEventPrefix();t(i.document,"touchend",this._onTouchEnd,n),t(i.document,"touchmove",this._onMouseMove,n);var a=this;this._willAddMouseDown&&clearTimeout(this._willAddMouseDown),this._willAddMouseDown=setTimeout((function(){e(a.upperCanvasEl,o+"down",a._onMouseDown),a._willAddMouseDown=0}),400)}},_onMouseUp:function(r){this.__onMouseUp(r),this._resetTransformEventData();var o=this.upperCanvasEl,a=this._getEventPrefix();this._isMainEvent(r)&&(t(i.document,a+"up",this._onMouseUp),t(i.document,a+"move",this._onMouseMove,n),e(o,a+"move",this._onMouseMove,n))},_onMouseMove:function(e){!this.allowTouchScrolling&&e.preventDefault&&e.preventDefault(),this.__onMouseMove(e)},_onResize:function(){this.calcOffset()},_shouldRender:function(e){var t=this._activeObject;return!!(!!t!==!!e||t&&e&&t!==e)||(t&&t.isEditing,!1)},__onMouseUp:function(e){var t,n=this._currentTransform,o=this._groupSelector,a=!1,s=!o||0===o.left&&0===o.top;if(this._cacheTransformEventData(e),t=this._target,this._handleEvent(e,"up:before"),r(e,3))this.fireRightClick&&this._handleEvent(e,"up",3,s);else{if(r(e,2))return this.fireMiddleClick&&this._handleEvent(e,"up",2,s),void this._resetTransformEventData();if(this.isDrawingMode&&this._isCurrentlyDrawing)this._onMouseUpInDrawingMode(e);else if(this._isMainEvent(e)){if(n&&(this._finalizeCurrentTransform(e),a=n.actionPerformed),!s){var l=t===this._activeObject;this._maybeGroupObjects(e),a||(a=this._shouldRender(t)||!l&&t===this._activeObject)}var c,u;if(t){if(c=t._findTargetCorner(this.getPointer(e,!0),i.util.isTouchEvent(e)),t.selectable&&t!==this._activeObject&&"up"===t.activeOn)this.setActiveObject(t,e),a=!0;else{var d=t.controls[c],h=d&&d.getMouseUpHandler(e,t,d);h&&h(e,n,(u=this.getPointer(e)).x,u.y)}t.isMoving=!1}if(n&&(n.target!==t||n.corner!==c)){var p=n.target&&n.target.controls[n.corner],f=p&&p.getMouseUpHandler(e,t,d);u=u||this.getPointer(e),f&&f(e,n,u.x,u.y)}this._setCursorFromEvent(e,t),this._handleEvent(e,"up",1,s),this._groupSelector=null,this._currentTransform=null,t&&(t.__corner=0),a?this.requestRenderAll():s||this.renderTop()}}},_simpleEventHandler:function(e,t){var n=this.findTarget(t),r=this.targets,i={e:t,target:n,subTargets:r};if(this.fire(e,i),n&&n.fire(e,i),!r)return n;for(var o=0;o1&&(t=new i.ActiveSelection(n.reverse(),{canvas:this}),this.setActiveObject(t,e))},_collectObjects:function(n){for(var r,o=[],a=this._groupSelector.ex,s=this._groupSelector.ey,l=a+this._groupSelector.left,c=s+this._groupSelector.top,u=new i.Point(e(a,l),e(s,c)),d=new i.Point(t(a,l),t(s,c)),h=!this.selectionFullyContained,p=a===l&&s===c,f=this._objects.length;f--&&!((r=this._objects[f])&&r.selectable&&r.visible&&(h&&r.intersectsWithRect(u,d,!0)||r.isContainedWithinRect(u,d,!0)||h&&r.containsPoint(u,null,!0)||h&&r.containsPoint(d,null,!0))&&(o.push(r),p)););return o.length>1&&(o=o.filter((function(e){return!e.onSelect({e:n})}))),o},_maybeGroupObjects:function(e){this.selection&&this._groupSelector&&this._groupSelectedObjects(e),this.setCursor(this.defaultCursor),this._groupSelector=null}})}(),i.util.object.extend(i.StaticCanvas.prototype,{toDataURL:function(e){e||(e={});var t=e.format||"png",n=e.quality||1,r=(e.multiplier||1)*(e.enableRetinaScaling?this.getRetinaScaling():1),o=this.toCanvasElement(r,e);return i.util.toDataURL(o,t,n)},toCanvasElement:function(e,t){e=e||1;var n=((t=t||{}).width||this.width)*e,r=(t.height||this.height)*e,o=this.getZoom(),a=this.width,s=this.height,l=o*e,c=this.viewportTransform,u=(c[4]-(t.left||0))*e,d=(c[5]-(t.top||0))*e,h=this.interactive,p=[l,0,0,l,u,d],f=this.enableRetinaScaling,m=i.util.createCanvasElement(),g=this.contextTop;return m.width=n,m.height=r,this.contextTop=null,this.enableRetinaScaling=!1,this.interactive=!1,this.viewportTransform=p,this.width=n,this.height=r,this.calcViewportBoundaries(),this.renderCanvas(m.getContext("2d"),this._objects),this.viewportTransform=c,this.width=a,this.height=s,this.calcViewportBoundaries(),this.interactive=h,this.enableRetinaScaling=f,this.contextTop=g,m}}),i.util.object.extend(i.StaticCanvas.prototype,{loadFromJSON:function(e,t,n){if(e){var r="string"===typeof e?JSON.parse(e):i.util.object.clone(e),o=this,a=r.clipPath,s=this.renderOnAddRemove;return this.renderOnAddRemove=!1,delete r.clipPath,this._enlivenObjects(r.objects,(function(e){o.clear(),o._setBgOverlay(r,(function(){a?o._enlivenObjects([a],(function(n){o.clipPath=n[0],o.__setupCanvas.call(o,r,e,s,t)})):o.__setupCanvas.call(o,r,e,s,t)}))}),n),this}},__setupCanvas:function(e,t,n,r){var i=this;t.forEach((function(e,t){i.insertAt(e,t)})),this.renderOnAddRemove=n,delete e.objects,delete e.backgroundImage,delete e.overlayImage,delete e.background,delete e.overlay,this._setOptions(e),this.renderAll(),r&&r()},_setBgOverlay:function(e,t){var n={backgroundColor:!1,overlayColor:!1,backgroundImage:!1,overlayImage:!1};if(e.backgroundImage||e.overlayImage||e.background||e.overlay){var r=function(){n.backgroundImage&&n.overlayImage&&n.backgroundColor&&n.overlayColor&&t&&t()};this.__setBgOverlay("backgroundImage",e.backgroundImage,n,r),this.__setBgOverlay("overlayImage",e.overlayImage,n,r),this.__setBgOverlay("backgroundColor",e.background,n,r),this.__setBgOverlay("overlayColor",e.overlay,n,r)}else t&&t()},__setBgOverlay:function(e,t,n,r){var o=this;if(!t)return n[e]=!0,void(r&&r());"backgroundImage"===e||"overlayImage"===e?i.util.enlivenObjects([t],(function(t){o[e]=t[0],n[e]=!0,r&&r()})):this["set"+i.util.string.capitalize(e,!0)](t,(function(){n[e]=!0,r&&r()}))},_enlivenObjects:function(e,t,n){e&&0!==e.length?i.util.enlivenObjects(e,(function(e){t&&t(e)}),null,n):t&&t([])},_toDataURL:function(e,t){this.clone((function(n){t(n.toDataURL(e))}))},_toDataURLWithMultiplier:function(e,t,n){this.clone((function(r){n(r.toDataURLWithMultiplier(e,t))}))},clone:function(e,t){var n=JSON.stringify(this.toJSON(t));this.cloneWithoutData((function(t){t.loadFromJSON(n,(function(){e&&e(t)}))}))},cloneWithoutData:function(e){var t=i.util.createCanvasElement();t.width=this.width,t.height=this.height;var n=new i.Canvas(t);this.backgroundImage?(n.setBackgroundImage(this.backgroundImage.src,(function(){n.renderAll(),e&&e(n)})),n.backgroundImageOpacity=this.backgroundImageOpacity,n.backgroundImageStretch=this.backgroundImageStretch):e&&e(n)}}),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.util.object.extend,r=t.util.object.clone,i=t.util.toFixed,o=t.util.string.capitalize,a=t.util.degreesToRadians,s=!t.isLikelyNode;t.Object||(t.Object=t.util.createClass(t.CommonMethods,{type:"object",originX:"left",originY:"top",top:0,left:0,width:0,height:0,scaleX:1,scaleY:1,flipX:!1,flipY:!1,opacity:1,angle:0,skewX:0,skewY:0,cornerSize:13,touchCornerSize:24,transparentCorners:!0,hoverCursor:null,moveCursor:null,padding:0,borderColor:"rgb(178,204,255)",borderDashArray:null,cornerColor:"rgb(178,204,255)",cornerStrokeColor:null,cornerStyle:"rect",cornerDashArray:null,centeredScaling:!1,centeredRotation:!0,fill:"rgb(0,0,0)",fillRule:"nonzero",globalCompositeOperation:"source-over",backgroundColor:"",selectionBackgroundColor:"",stroke:null,strokeWidth:1,strokeDashArray:null,strokeDashOffset:0,strokeLineCap:"butt",strokeLineJoin:"miter",strokeMiterLimit:4,shadow:null,borderOpacityWhenMoving:.4,borderScaleFactor:1,minScaleLimit:0,selectable:!0,evented:!0,visible:!0,hasControls:!0,hasBorders:!0,perPixelTargetFind:!1,includeDefaultValues:!0,lockMovementX:!1,lockMovementY:!1,lockRotation:!1,lockScalingX:!1,lockScalingY:!1,lockSkewingX:!1,lockSkewingY:!1,lockScalingFlip:!1,excludeFromExport:!1,objectCaching:s,statefullCache:!1,noScaleCache:!0,strokeUniform:!1,dirty:!0,__corner:0,paintFirst:"fill",activeOn:"down",stateProperties:"top left width height scaleX scaleY flipX flipY originX originY transformMatrix stroke strokeWidth strokeDashArray strokeLineCap strokeDashOffset strokeLineJoin strokeMiterLimit angle opacity fill globalCompositeOperation shadow visible backgroundColor skewX skewY fillRule paintFirst clipPath strokeUniform".split(" "),cacheProperties:"fill stroke strokeWidth strokeDashArray width height paintFirst strokeUniform strokeLineCap strokeDashOffset strokeLineJoin strokeMiterLimit backgroundColor clipPath".split(" "),colorProperties:"fill stroke backgroundColor".split(" "),clipPath:void 0,inverted:!1,absolutePositioned:!1,initialize:function(e){e&&this.setOptions(e)},_createCacheCanvas:function(){this._cacheProperties={},this._cacheCanvas=t.util.createCanvasElement(),this._cacheContext=this._cacheCanvas.getContext("2d"),this._updateCacheCanvas(),this.dirty=!0},_limitCacheSize:function(e){var n=t.perfLimitSizeTotal,r=e.width,i=e.height,o=t.maxCacheSideLimit,a=t.minCacheSideLimit;if(r<=o&&i<=o&&r*i<=n)return ru&&(e.zoomX/=r/u,e.width=u,e.capped=!0),i>d&&(e.zoomY/=i/d,e.height=d,e.capped=!0),e},_getCacheCanvasDimensions:function(){var e=this.getTotalObjectScaling(),t=this._getTransformedDimensions(0,0),n=t.x*e.scaleX/this.scaleX,r=t.y*e.scaleY/this.scaleY;return{width:n+2,height:r+2,zoomX:e.scaleX,zoomY:e.scaleY,x:n,y:r}},_updateCacheCanvas:function(){var e=this.canvas;if(this.noScaleCache&&e&&e._currentTransform){var n=e._currentTransform.target,r=e._currentTransform.action;if(this===n&&r.slice&&"scale"===r.slice(0,5))return!1}var i,o,a=this._cacheCanvas,s=this._limitCacheSize(this._getCacheCanvasDimensions()),l=t.minCacheSideLimit,c=s.width,u=s.height,d=s.zoomX,h=s.zoomY,p=c!==this.cacheWidth||u!==this.cacheHeight,f=this.zoomX!==d||this.zoomY!==h,m=p||f,g=0,v=0,y=!1;if(p){var b=this._cacheCanvas.width,x=this._cacheCanvas.height,w=c>b||u>x;y=w||(c<.9*b||u<.9*x)&&b>l&&x>l,w&&!s.capped&&(c>l||u>l)&&(g=.1*c,v=.1*u)}return this instanceof t.Text&&this.path&&(m=!0,y=!0,g+=this.getHeightOfLine(0)*this.zoomX,v+=this.getHeightOfLine(0)*this.zoomY),!!m&&(y?(a.width=Math.ceil(c+g),a.height=Math.ceil(u+v)):(this._cacheContext.setTransform(1,0,0,1,0,0),this._cacheContext.clearRect(0,0,a.width,a.height)),i=s.x/2,o=s.y/2,this.cacheTranslationX=Math.round(a.width/2-i)+i,this.cacheTranslationY=Math.round(a.height/2-o)+o,this.cacheWidth=c,this.cacheHeight=u,this._cacheContext.translate(this.cacheTranslationX,this.cacheTranslationY),this._cacheContext.scale(d,h),this.zoomX=d,this.zoomY=h,!0)},setOptions:function(e){this._setOptions(e),this._initGradient(e.fill,"fill"),this._initGradient(e.stroke,"stroke"),this._initPattern(e.fill,"fill"),this._initPattern(e.stroke,"stroke")},transform:function(e){var t=this.group&&!this.group._transformDone||this.group&&this.canvas&&e===this.canvas.contextTop,n=this.calcTransformMatrix(!t);e.transform(n[0],n[1],n[2],n[3],n[4],n[5])},toObject:function(e){var n=t.Object.NUM_FRACTION_DIGITS,r={type:this.type,version:t.version,originX:this.originX,originY:this.originY,left:i(this.left,n),top:i(this.top,n),width:i(this.width,n),height:i(this.height,n),fill:this.fill&&this.fill.toObject?this.fill.toObject():this.fill,stroke:this.stroke&&this.stroke.toObject?this.stroke.toObject():this.stroke,strokeWidth:i(this.strokeWidth,n),strokeDashArray:this.strokeDashArray?this.strokeDashArray.concat():this.strokeDashArray,strokeLineCap:this.strokeLineCap,strokeDashOffset:this.strokeDashOffset,strokeLineJoin:this.strokeLineJoin,strokeUniform:this.strokeUniform,strokeMiterLimit:i(this.strokeMiterLimit,n),scaleX:i(this.scaleX,n),scaleY:i(this.scaleY,n),angle:i(this.angle,n),flipX:this.flipX,flipY:this.flipY,opacity:i(this.opacity,n),shadow:this.shadow&&this.shadow.toObject?this.shadow.toObject():this.shadow,visible:this.visible,backgroundColor:this.backgroundColor,fillRule:this.fillRule,paintFirst:this.paintFirst,globalCompositeOperation:this.globalCompositeOperation,skewX:i(this.skewX,n),skewY:i(this.skewY,n)};return this.clipPath&&!this.clipPath.excludeFromExport&&(r.clipPath=this.clipPath.toObject(e),r.clipPath.inverted=this.clipPath.inverted,r.clipPath.absolutePositioned=this.clipPath.absolutePositioned),t.util.populateWithProperties(this,r,e),this.includeDefaultValues||(r=this._removeDefaultValues(r)),r},toDatalessObject:function(e){return this.toObject(e)},_removeDefaultValues:function(e){var n=t.util.getKlass(e.type).prototype;return n.stateProperties.forEach((function(t){"left"!==t&&"top"!==t&&(e[t]===n[t]&&delete e[t],Array.isArray(e[t])&&Array.isArray(n[t])&&0===e[t].length&&0===n[t].length&&delete e[t])})),e},toString:function(){return"#"},getObjectScaling:function(){if(!this.group)return{scaleX:this.scaleX,scaleY:this.scaleY};var e=t.util.qrDecompose(this.calcTransformMatrix());return{scaleX:Math.abs(e.scaleX),scaleY:Math.abs(e.scaleY)}},getTotalObjectScaling:function(){var e=this.getObjectScaling(),t=e.scaleX,n=e.scaleY;if(this.canvas){var r=this.canvas.getZoom(),i=this.canvas.getRetinaScaling();t*=r*i,n*=r*i}return{scaleX:t,scaleY:n}},getObjectOpacity:function(){var e=this.opacity;return this.group&&(e*=this.group.getObjectOpacity()),e},_set:function(e,n){var r="scaleX"===e||"scaleY"===e,i=this[e]!==n,o=!1;return r&&(n=this._constrainScale(n)),"scaleX"===e&&n<0?(this.flipX=!this.flipX,n*=-1):"scaleY"===e&&n<0?(this.flipY=!this.flipY,n*=-1):"shadow"!==e||!n||n instanceof t.Shadow?"dirty"===e&&this.group&&this.group.set("dirty",n):n=new t.Shadow(n),this[e]=n,i&&(o=this.group&&this.group.isOnACache(),this.cacheProperties.indexOf(e)>-1?(this.dirty=!0,o&&this.group.set("dirty",!0)):o&&this.stateProperties.indexOf(e)>-1&&this.group.set("dirty",!0)),this},setOnGroup:function(){},getViewportTransform:function(){return this.canvas&&this.canvas.viewportTransform?this.canvas.viewportTransform:t.iMatrix.concat()},isNotVisible:function(){return 0===this.opacity||!this.width&&!this.height&&0===this.strokeWidth||!this.visible},render:function(e){this.isNotVisible()||this.canvas&&this.canvas.skipOffscreen&&!this.group&&!this.isOnScreen()||(e.save(),this._setupCompositeOperation(e),this.drawSelectionBackground(e),this.transform(e),this._setOpacity(e),this._setShadow(e,this),this.shouldCache()?(this.renderCache(),this.drawCacheOnCanvas(e)):(this._removeCacheCanvas(),this.dirty=!1,this.drawObject(e),this.objectCaching&&this.statefullCache&&this.saveState({propertySet:"cacheProperties"})),e.restore())},renderCache:function(e){e=e||{},this._cacheCanvas&&this._cacheContext||this._createCacheCanvas(),this.isCacheDirty()&&(this.statefullCache&&this.saveState({propertySet:"cacheProperties"}),this.drawObject(this._cacheContext,e.forClipping),this.dirty=!1)},_removeCacheCanvas:function(){this._cacheCanvas=null,this._cacheContext=null,this.cacheWidth=0,this.cacheHeight=0},hasStroke:function(){return this.stroke&&"transparent"!==this.stroke&&0!==this.strokeWidth},hasFill:function(){return this.fill&&"transparent"!==this.fill},needsItsOwnCache:function(){return!("stroke"!==this.paintFirst||!this.hasFill()||!this.hasStroke()||"object"!==typeof this.shadow)||!!this.clipPath},shouldCache:function(){return this.ownCaching=this.needsItsOwnCache()||this.objectCaching&&(!this.group||!this.group.isOnACache()),this.ownCaching},willDrawShadow:function(){return!!this.shadow&&(0!==this.shadow.offsetX||0!==this.shadow.offsetY)},drawClipPathOnCache:function(e,n){if(e.save(),n.inverted?e.globalCompositeOperation="destination-out":e.globalCompositeOperation="destination-in",n.absolutePositioned){var r=t.util.invertTransform(this.calcTransformMatrix());e.transform(r[0],r[1],r[2],r[3],r[4],r[5])}n.transform(e),e.scale(1/n.zoomX,1/n.zoomY),e.drawImage(n._cacheCanvas,-n.cacheTranslationX,-n.cacheTranslationY),e.restore()},drawObject:function(e,t){var n=this.fill,r=this.stroke;t?(this.fill="black",this.stroke="",this._setClippingProperties(e)):this._renderBackground(e),this._render(e),this._drawClipPath(e,this.clipPath),this.fill=n,this.stroke=r},_drawClipPath:function(e,t){t&&(t.canvas=this.canvas,t.shouldCache(),t._transformDone=!0,t.renderCache({forClipping:!0}),this.drawClipPathOnCache(e,t))},drawCacheOnCanvas:function(e){e.scale(1/this.zoomX,1/this.zoomY),e.drawImage(this._cacheCanvas,-this.cacheTranslationX,-this.cacheTranslationY)},isCacheDirty:function(e){if(this.isNotVisible())return!1;if(this._cacheCanvas&&this._cacheContext&&!e&&this._updateCacheCanvas())return!0;if(this.dirty||this.clipPath&&this.clipPath.absolutePositioned||this.statefullCache&&this.hasStateChanged("cacheProperties")){if(this._cacheCanvas&&this._cacheContext&&!e){var t=this.cacheWidth/this.zoomX,n=this.cacheHeight/this.zoomY;this._cacheContext.clearRect(-t/2,-n/2,t,n)}return!0}return!1},_renderBackground:function(e){if(this.backgroundColor){var t=this._getNonTransformedDimensions();e.fillStyle=this.backgroundColor,e.fillRect(-t.x/2,-t.y/2,t.x,t.y),this._removeShadow(e)}},_setOpacity:function(e){this.group&&!this.group._transformDone?e.globalAlpha=this.getObjectOpacity():e.globalAlpha*=this.opacity},_setStrokeStyles:function(e,t){var n=t.stroke;n&&(e.lineWidth=t.strokeWidth,e.lineCap=t.strokeLineCap,e.lineDashOffset=t.strokeDashOffset,e.lineJoin=t.strokeLineJoin,e.miterLimit=t.strokeMiterLimit,n.toLive?"percentage"===n.gradientUnits||n.gradientTransform||n.patternTransform?this._applyPatternForTransformedGradient(e,n):(e.strokeStyle=n.toLive(e,this),this._applyPatternGradientTransform(e,n)):e.strokeStyle=t.stroke)},_setFillStyles:function(e,t){var n=t.fill;n&&(n.toLive?(e.fillStyle=n.toLive(e,this),this._applyPatternGradientTransform(e,t.fill)):e.fillStyle=n)},_setClippingProperties:function(e){e.globalAlpha=1,e.strokeStyle="transparent",e.fillStyle="#000000"},_setLineDash:function(e,t){t&&0!==t.length&&(1&t.length&&t.push.apply(t,t),e.setLineDash(t))},_renderControls:function(e,n){var r,i,o,s=this.getViewportTransform(),l=this.calcTransformMatrix();i="undefined"!==typeof(n=n||{}).hasBorders?n.hasBorders:this.hasBorders,o="undefined"!==typeof n.hasControls?n.hasControls:this.hasControls,l=t.util.multiplyTransformMatrices(s,l),r=t.util.qrDecompose(l),e.save(),e.translate(r.translateX,r.translateY),e.lineWidth=1*this.borderScaleFactor,this.group||(e.globalAlpha=this.isMoving?this.borderOpacityWhenMoving:1),this.flipX&&(r.angle-=180),e.rotate(a(this.group?r.angle:this.angle)),n.forActiveSelection||this.group?i&&this.drawBordersInGroup(e,r,n):i&&this.drawBorders(e,n),o&&this.drawControls(e,n),e.restore()},_setShadow:function(e){if(this.shadow){var n,r=this.shadow,i=this.canvas,o=i&&i.viewportTransform[0]||1,a=i&&i.viewportTransform[3]||1;n=r.nonScaling?{scaleX:1,scaleY:1}:this.getObjectScaling(),i&&i._isRetinaScaling()&&(o*=t.devicePixelRatio,a*=t.devicePixelRatio),e.shadowColor=r.color,e.shadowBlur=r.blur*t.browserShadowBlurConstant*(o+a)*(n.scaleX+n.scaleY)/4,e.shadowOffsetX=r.offsetX*o*n.scaleX,e.shadowOffsetY=r.offsetY*a*n.scaleY}},_removeShadow:function(e){this.shadow&&(e.shadowColor="",e.shadowBlur=e.shadowOffsetX=e.shadowOffsetY=0)},_applyPatternGradientTransform:function(e,t){if(!t||!t.toLive)return{offsetX:0,offsetY:0};var n=t.gradientTransform||t.patternTransform,r=-this.width/2+t.offsetX||0,i=-this.height/2+t.offsetY||0;return"percentage"===t.gradientUnits?e.transform(this.width,0,0,this.height,r,i):e.transform(1,0,0,1,r,i),n&&e.transform(n[0],n[1],n[2],n[3],n[4],n[5]),{offsetX:r,offsetY:i}},_renderPaintInOrder:function(e){"stroke"===this.paintFirst?(this._renderStroke(e),this._renderFill(e)):(this._renderFill(e),this._renderStroke(e))},_render:function(){},_renderFill:function(e){this.fill&&(e.save(),this._setFillStyles(e,this),"evenodd"===this.fillRule?e.fill("evenodd"):e.fill(),e.restore())},_renderStroke:function(e){if(this.stroke&&0!==this.strokeWidth){if(this.shadow&&!this.shadow.affectStroke&&this._removeShadow(e),e.save(),this.strokeUniform&&this.group){var t=this.getObjectScaling();e.scale(1/t.scaleX,1/t.scaleY)}else this.strokeUniform&&e.scale(1/this.scaleX,1/this.scaleY);this._setLineDash(e,this.strokeDashArray),this._setStrokeStyles(e,this),e.stroke(),e.restore()}},_applyPatternForTransformedGradient:function(e,n){var r,i=this._limitCacheSize(this._getCacheCanvasDimensions()),o=t.util.createCanvasElement(),a=this.canvas.getRetinaScaling(),s=i.x/this.scaleX/a,l=i.y/this.scaleY/a;o.width=s,o.height=l,(r=o.getContext("2d")).beginPath(),r.moveTo(0,0),r.lineTo(s,0),r.lineTo(s,l),r.lineTo(0,l),r.closePath(),r.translate(s/2,l/2),r.scale(i.zoomX/this.scaleX/a,i.zoomY/this.scaleY/a),this._applyPatternGradientTransform(r,n),r.fillStyle=n.toLive(e),r.fill(),e.translate(-this.width/2-this.strokeWidth/2,-this.height/2-this.strokeWidth/2),e.scale(a*this.scaleX/i.zoomX,a*this.scaleY/i.zoomY),e.strokeStyle=r.createPattern(o,"no-repeat")},_findCenterFromElement:function(){return{x:this.left+this.width/2,y:this.top+this.height/2}},_assignTransformMatrixProps:function(){if(this.transformMatrix){var e=t.util.qrDecompose(this.transformMatrix);this.flipX=!1,this.flipY=!1,this.set("scaleX",e.scaleX),this.set("scaleY",e.scaleY),this.angle=e.angle,this.skewX=e.skewX,this.skewY=0}},_removeTransformMatrix:function(e){var n=this._findCenterFromElement();this.transformMatrix&&(this._assignTransformMatrixProps(),n=t.util.transformPoint(n,this.transformMatrix)),this.transformMatrix=null,e&&(this.scaleX*=e.scaleX,this.scaleY*=e.scaleY,this.cropX=e.cropX,this.cropY=e.cropY,n.x+=e.offsetLeft,n.y+=e.offsetTop,this.width=e.width,this.height=e.height),this.setPositionByOrigin(n,"center","center")},clone:function(e,n){var r=this.toObject(n);this.constructor.fromObject?this.constructor.fromObject(r,e):t.Object._fromObject("Object",r,e)},cloneAsImage:function(e,n){var r=this.toCanvasElement(n);return e&&e(new t.Image(r)),this},toCanvasElement:function(e){e||(e={});var n=t.util,r=n.saveObjectTransform(this),i=this.group,o=this.shadow,a=Math.abs,s=(e.multiplier||1)*(e.enableRetinaScaling?t.devicePixelRatio:1);delete this.group,e.withoutTransform&&n.resetObjectTransform(this),e.withoutShadow&&(this.shadow=null);var l,c,u,d,h=t.util.createCanvasElement(),p=this.getBoundingRect(!0,!0),f=this.shadow,m={x:0,y:0};f&&(c=f.blur,l=f.nonScaling?{scaleX:1,scaleY:1}:this.getObjectScaling(),m.x=2*Math.round(a(f.offsetX)+c)*a(l.scaleX),m.y=2*Math.round(a(f.offsetY)+c)*a(l.scaleY)),u=p.width+m.x,d=p.height+m.y,h.width=Math.ceil(u),h.height=Math.ceil(d);var g=new t.StaticCanvas(h,{enableRetinaScaling:!1,renderOnAddRemove:!1,skipOffscreen:!1});"jpeg"===e.format&&(g.backgroundColor="#fff"),this.setPositionByOrigin(new t.Point(g.width/2,g.height/2),"center","center");var v=this.canvas;g.add(this);var y=g.toCanvasElement(s||1,e);return this.shadow=o,this.set("canvas",v),i&&(this.group=i),this.set(r).setCoords(),g._objects=[],g.dispose(),g=null,y},toDataURL:function(e){return e||(e={}),t.util.toDataURL(this.toCanvasElement(e),e.format||"png",e.quality||1)},isType:function(e){return arguments.length>1?Array.from(arguments).includes(this.type):this.type===e},complexity:function(){return 1},toJSON:function(e){return this.toObject(e)},rotate:function(e){var t=("center"!==this.originX||"center"!==this.originY)&&this.centeredRotation;return t&&this._setOriginToCenter(),this.set("angle",e),t&&this._resetOrigin(),this},centerH:function(){return this.canvas&&this.canvas.centerObjectH(this),this},viewportCenterH:function(){return this.canvas&&this.canvas.viewportCenterObjectH(this),this},centerV:function(){return this.canvas&&this.canvas.centerObjectV(this),this},viewportCenterV:function(){return this.canvas&&this.canvas.viewportCenterObjectV(this),this},center:function(){return this.canvas&&this.canvas.centerObject(this),this},viewportCenter:function(){return this.canvas&&this.canvas.viewportCenterObject(this),this},getLocalPointer:function(e,n){n=n||this.canvas.getPointer(e);var r=new t.Point(n.x,n.y),i=this._getLeftTopCoords();return this.angle&&(r=t.util.rotatePoint(r,i,a(-this.angle))),{x:r.x-i.x,y:r.y-i.y}},_setupCompositeOperation:function(e){this.globalCompositeOperation&&(e.globalCompositeOperation=this.globalCompositeOperation)},dispose:function(){t.runningAnimations&&t.runningAnimations.cancelByTarget(this)}}),t.util.createAccessors&&t.util.createAccessors(t.Object),n(t.Object.prototype,t.Observable),t.Object.NUM_FRACTION_DIGITS=2,t.Object.ENLIVEN_PROPS=["clipPath"],t.Object._fromObject=function(e,n,i,o){var a=t[e];n=r(n,!0),t.util.enlivenPatterns([n.fill,n.stroke],(function(e){"undefined"!==typeof e[0]&&(n.fill=e[0]),"undefined"!==typeof e[1]&&(n.stroke=e[1]),t.util.enlivenObjectEnlivables(n,n,(function(){var e=o?new a(n[o],n):new a(n);i&&i(e)}))}))},t.Object.__uid=0)}(t),function(){var e=i.util.degreesToRadians,t={left:-.5,center:0,right:.5},n={top:-.5,center:0,bottom:.5};i.util.object.extend(i.Object.prototype,{translateToGivenOrigin:function(e,r,o,a,s){var l,c,u,d=e.x,h=e.y;return"string"===typeof r?r=t[r]:r-=.5,"string"===typeof a?a=t[a]:a-=.5,"string"===typeof o?o=n[o]:o-=.5,"string"===typeof s?s=n[s]:s-=.5,c=s-o,((l=a-r)||c)&&(u=this._getTransformedDimensions(),d=e.x+l*u.x,h=e.y+c*u.y),new i.Point(d,h)},translateToCenterPoint:function(t,n,r){var o=this.translateToGivenOrigin(t,n,r,"center","center");return this.angle?i.util.rotatePoint(o,t,e(this.angle)):o},translateToOriginPoint:function(t,n,r){var o=this.translateToGivenOrigin(t,"center","center",n,r);return this.angle?i.util.rotatePoint(o,t,e(this.angle)):o},getCenterPoint:function(){var e=new i.Point(this.left,this.top);return this.translateToCenterPoint(e,this.originX,this.originY)},getPointByOrigin:function(e,t){var n=this.getCenterPoint();return this.translateToOriginPoint(n,e,t)},toLocalPoint:function(t,n,r){var o,a,s=this.getCenterPoint();return o="undefined"!==typeof n&&"undefined"!==typeof r?this.translateToGivenOrigin(s,"center","center",n,r):new i.Point(this.left,this.top),a=new i.Point(t.x,t.y),this.angle&&(a=i.util.rotatePoint(a,s,-e(this.angle))),a.subtractEquals(o)},setPositionByOrigin:function(e,t,n){var r=this.translateToCenterPoint(e,t,n),i=this.translateToOriginPoint(r,this.originX,this.originY);this.set("left",i.x),this.set("top",i.y)},adjustPosition:function(n){var r,o,a=e(this.angle),s=this.getScaledWidth(),l=i.util.cos(a)*s,c=i.util.sin(a)*s;r="string"===typeof this.originX?t[this.originX]:this.originX-.5,o="string"===typeof n?t[n]:n-.5,this.left+=l*(o-r),this.top+=c*(o-r),this.setCoords(),this.originX=n},_setOriginToCenter:function(){this._originalOriginX=this.originX,this._originalOriginY=this.originY;var e=this.getCenterPoint();this.originX="center",this.originY="center",this.left=e.x,this.top=e.y},_resetOrigin:function(){var e=this.translateToOriginPoint(this.getCenterPoint(),this._originalOriginX,this._originalOriginY);this.originX=this._originalOriginX,this.originY=this._originalOriginY,this.left=e.x,this.top=e.y,this._originalOriginX=null,this._originalOriginY=null},_getLeftTopCoords:function(){return this.translateToOriginPoint(this.getCenterPoint(),"left","top")}})}(),function(){var e=i.util,t=e.degreesToRadians,n=e.multiplyTransformMatrices,r=e.transformPoint;e.object.extend(i.Object.prototype,{oCoords:null,aCoords:null,lineCoords:null,ownMatrixCache:null,matrixCache:null,controls:{},_getCoords:function(e,t){return t?e?this.calcACoords():this.calcLineCoords():(this.aCoords&&this.lineCoords||this.setCoords(!0),e?this.aCoords:this.lineCoords)},getCoords:function(e,t){return n=this._getCoords(e,t),[new i.Point(n.tl.x,n.tl.y),new i.Point(n.tr.x,n.tr.y),new i.Point(n.br.x,n.br.y),new i.Point(n.bl.x,n.bl.y)];var n},intersectsWithRect:function(e,t,n,r){var o=this.getCoords(n,r);return"Intersection"===i.Intersection.intersectPolygonRectangle(o,e,t).status},intersectsWithObject:function(e,t,n){return"Intersection"===i.Intersection.intersectPolygonPolygon(this.getCoords(t,n),e.getCoords(t,n)).status||e.isContainedWithinObject(this,t,n)||this.isContainedWithinObject(e,t,n)},isContainedWithinObject:function(e,t,n){for(var r=this.getCoords(t,n),i=t?e.aCoords:e.lineCoords,o=0,a=e._getImageLines(i);o<4;o++)if(!e.containsPoint(r[o],a))return!1;return!0},isContainedWithinRect:function(e,t,n,r){var i=this.getBoundingRect(n,r);return i.left>=e.x&&i.left+i.width<=t.x&&i.top>=e.y&&i.top+i.height<=t.y},containsPoint:function(e,t,n,r){var i=this._getCoords(n,r),o=(t=t||this._getImageLines(i),this._findCrossPoints(e,t));return 0!==o&&o%2===1},isOnScreen:function(e){if(!this.canvas)return!1;var t=this.canvas.vptCoords.tl,n=this.canvas.vptCoords.br;return!!this.getCoords(!0,e).some((function(e){return e.x<=n.x&&e.x>=t.x&&e.y<=n.y&&e.y>=t.y}))||(!!this.intersectsWithRect(t,n,!0,e)||this._containsCenterOfCanvas(t,n,e))},_containsCenterOfCanvas:function(e,t,n){var r={x:(e.x+t.x)/2,y:(e.y+t.y)/2};return!!this.containsPoint(r,null,!0,n)},isPartiallyOnScreen:function(e){if(!this.canvas)return!1;var t=this.canvas.vptCoords.tl,n=this.canvas.vptCoords.br;return!!this.intersectsWithRect(t,n,!0,e)||this.getCoords(!0,e).every((function(e){return(e.x>=n.x||e.x<=t.x)&&(e.y>=n.y||e.y<=t.y)}))&&this._containsCenterOfCanvas(t,n,e)},_getImageLines:function(e){return{topline:{o:e.tl,d:e.tr},rightline:{o:e.tr,d:e.br},bottomline:{o:e.br,d:e.bl},leftline:{o:e.bl,d:e.tl}}},_findCrossPoints:function(e,t){var n,r,i,o=0;for(var a in t)if(!((i=t[a]).o.y=e.y&&i.d.y>=e.y)&&(i.o.x===i.d.x&&i.o.x>=e.x?r=i.o.x:(0,n=(i.d.y-i.o.y)/(i.d.x-i.o.x),r=-(e.y-0*e.x-(i.o.y-n*i.o.x))/(0-n)),r>=e.x&&(o+=1),2===o))break;return o},getBoundingRect:function(t,n){var r=this.getCoords(t,n);return e.makeBoundingBoxFromPoints(r)},getScaledWidth:function(){return this._getTransformedDimensions().x},getScaledHeight:function(){return this._getTransformedDimensions().y},_constrainScale:function(e){return Math.abs(e)\n')}},toSVG:function(e){return this._createBaseSVGMarkup(this._toSVG(e),{reviver:e})},toClipPathSVG:function(e){return"\t"+this._createBaseClipPathSVGMarkup(this._toSVG(e),{reviver:e})},_createBaseClipPathSVGMarkup:function(e,t){var n=(t=t||{}).reviver,r=t.additionalTransform||"",i=[this.getSvgTransform(!0,r),this.getSvgCommons()].join(""),o=e.indexOf("COMMON_PARTS");return e[o]=i,n?n(e.join("")):e.join("")},_createBaseSVGMarkup:function(e,t){var n,r,o=(t=t||{}).noStyle,a=t.reviver,s=o?"":'style="'+this.getSvgStyles()+'" ',l=t.withShadow?'style="'+this.getSvgFilter()+'" ':"",c=this.clipPath,u=this.strokeUniform?'vector-effect="non-scaling-stroke" ':"",d=c&&c.absolutePositioned,h=this.stroke,p=this.fill,f=this.shadow,m=[],g=e.indexOf("COMMON_PARTS"),v=t.additionalTransform;return c&&(c.clipPathId="CLIPPATH_"+i.Object.__uid++,r='\n'+c.toClipPathSVG(a)+"\n"),d&&m.push("\n"),m.push("\n"),n=[s,u,o?"":this.addPaintOrder()," ",v?'transform="'+v+'" ':""].join(""),e[g]=n,p&&p.toLive&&m.push(p.toSVG(this)),h&&h.toLive&&m.push(h.toSVG(this)),f&&m.push(f.toSVG(this)),c&&m.push(r),m.push(e.join("")),m.push("\n"),d&&m.push("\n"),a?a(m.join("")):m.join("")},addPaintOrder:function(){return"fill"!==this.paintFirst?' paint-order="'+this.paintFirst+'" ':""}})}(),function(){var e=i.util.object.extend,t="stateProperties";function n(t,n,r){var i={};r.forEach((function(e){i[e]=t[e]})),e(t[n],i,!0)}function r(e,t,n){if(e===t)return!0;if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(var i=0,o=e.length;i=0;l--)if(i=s[l],this.isControlVisible(i)&&(r=this._getImageLines(t?this.oCoords[i].touchCorner:this.oCoords[i].corner),0!==(n=this._findCrossPoints({x:o,y:a},r))&&n%2===1))return this.__corner=i,i;return!1},forEachControl:function(e){for(var t in this.controls)e(this.controls[t],t,this)},_setCornerCoords:function(){var e=this.oCoords;for(var t in e){var n=this.controls[t];e[t].corner=n.calcCornerCoords(this.angle,this.cornerSize,e[t].x,e[t].y,!1),e[t].touchCorner=n.calcCornerCoords(this.angle,this.touchCornerSize,e[t].x,e[t].y,!0)}},drawSelectionBackground:function(t){if(!this.selectionBackgroundColor||this.canvas&&!this.canvas.interactive||this.canvas&&this.canvas._activeObject!==this)return this;t.save();var n=this.getCenterPoint(),r=this._calculateCurrentDimensions(),i=this.canvas.viewportTransform;return t.translate(n.x,n.y),t.scale(1/i[0],1/i[3]),t.rotate(e(this.angle)),t.fillStyle=this.selectionBackgroundColor,t.fillRect(-r.x/2,-r.y/2,r.x,r.y),t.restore(),this},drawBorders:function(e,t){t=t||{};var n=this._calculateCurrentDimensions(),r=this.borderScaleFactor,i=n.x+r,o=n.y+r,a="undefined"!==typeof t.hasControls?t.hasControls:this.hasControls,s=!1;return e.save(),e.strokeStyle=t.borderColor||this.borderColor,this._setLineDash(e,t.borderDashArray||this.borderDashArray),e.strokeRect(-i/2,-o/2,i,o),a&&(e.beginPath(),this.forEachControl((function(t,n,r){t.withConnection&&t.getVisibility(r,n)&&(s=!0,e.moveTo(t.x*i,t.y*o),e.lineTo(t.x*i+t.offsetX,t.y*o+t.offsetY))})),s&&e.stroke()),e.restore(),this},drawBordersInGroup:function(e,t,n){n=n||{};var r=i.util.sizeAfterTransform(this.width,this.height,t),o=this.strokeWidth,a=this.strokeUniform,s=this.borderScaleFactor,l=r.x+o*(a?this.canvas.getZoom():t.scaleX)+s,c=r.y+o*(a?this.canvas.getZoom():t.scaleY)+s;return e.save(),this._setLineDash(e,n.borderDashArray||this.borderDashArray),e.strokeStyle=n.borderColor||this.borderColor,e.strokeRect(-l/2,-c/2,l,c),e.restore(),this},drawControls:function(e,t){t=t||{},e.save();var n,r,o=this.canvas.getRetinaScaling();return e.setTransform(o,0,0,o,0,0),e.strokeStyle=e.fillStyle=t.cornerColor||this.cornerColor,this.transparentCorners||(e.strokeStyle=t.cornerStrokeColor||this.cornerStrokeColor),this._setLineDash(e,t.cornerDashArray||this.cornerDashArray),this.setCoords(),this.group&&(n=this.group.calcTransformMatrix()),this.forEachControl((function(o,a,s){r=s.oCoords[a],o.getVisibility(s,a)&&(n&&(r=i.util.transformPoint(r,n)),o.render(e,r.x,r.y,t,s))})),e.restore(),this},isControlVisible:function(e){return this.controls[e]&&this.controls[e].getVisibility(this,e)},setControlVisible:function(e,t){return this._controlsVisibility||(this._controlsVisibility={}),this._controlsVisibility[e]=t,this},setControlsVisibility:function(e){for(var t in e||(e={}),e)this.setControlVisible(t,e[t]);return this},onDeselect:function(){},onSelect:function(){}})}(),i.util.object.extend(i.StaticCanvas.prototype,{FX_DURATION:500,fxCenterObjectH:function(e,t){var n=function(){},r=(t=t||{}).onComplete||n,o=t.onChange||n,a=this;return i.util.animate({target:this,startValue:e.left,endValue:this.getCenterPoint().x,duration:this.FX_DURATION,onChange:function(t){e.set("left",t),a.requestRenderAll(),o()},onComplete:function(){e.setCoords(),r()}})},fxCenterObjectV:function(e,t){var n=function(){},r=(t=t||{}).onComplete||n,o=t.onChange||n,a=this;return i.util.animate({target:this,startValue:e.top,endValue:this.getCenterPoint().y,duration:this.FX_DURATION,onChange:function(t){e.set("top",t),a.requestRenderAll(),o()},onComplete:function(){e.setCoords(),r()}})},fxRemove:function(e,t){var n=function(){},r=(t=t||{}).onComplete||n,o=t.onChange||n,a=this;return i.util.animate({target:this,startValue:e.opacity,endValue:0,duration:this.FX_DURATION,onChange:function(t){e.set("opacity",t),a.requestRenderAll(),o()},onComplete:function(){a.remove(e),r()}})}}),i.util.object.extend(i.Object.prototype,{animate:function(){if(arguments[0]&&"object"===typeof arguments[0]){var e,t,n=[],r=[];for(e in arguments[0])n.push(e);for(var i=0,o=n.length;i-1||o&&a.colorProperties.indexOf(o[1])>-1,l=o?this.get(o[0])[o[1]]:this.get(e);"from"in n||(n.from=l),s||(t=~t.indexOf("=")?l+parseFloat(t.replace("=","")):parseFloat(t));var c={target:this,startValue:n.from,endValue:t,byValue:n.by,easing:n.easing,duration:n.duration,abort:n.abort&&function(e,t,r){return n.abort.call(a,e,t,r)},onChange:function(t,i,s){o?a[o[0]][o[1]]=t:a.set(e,t),r||n.onChange&&n.onChange(t,i,s)},onComplete:function(e,t,i){r||(a.setCoords(),n.onComplete&&n.onComplete(e,t,i))}};return s?i.util.animateColor(c.startValue,c.endValue,c.duration,c):i.util.animate(c)}}),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.util.object.extend,r=t.util.object.clone,i={x1:1,x2:1,y1:1,y2:1};function o(e,t){var n=e.origin,r=e.axis1,i=e.axis2,o=e.dimension,a=t.nearest,s=t.center,l=t.farthest;return function(){switch(this.get(n)){case a:return Math.min(this.get(r),this.get(i));case s:return Math.min(this.get(r),this.get(i))+.5*this.get(o);case l:return Math.max(this.get(r),this.get(i))}}}t.Line?t.warn("fabric.Line is already defined"):(t.Line=t.util.createClass(t.Object,{type:"line",x1:0,y1:0,x2:0,y2:0,cacheProperties:t.Object.prototype.cacheProperties.concat("x1","x2","y1","y2"),initialize:function(e,t){e||(e=[0,0,0,0]),this.callSuper("initialize",t),this.set("x1",e[0]),this.set("y1",e[1]),this.set("x2",e[2]),this.set("y2",e[3]),this._setWidthHeight(t)},_setWidthHeight:function(e){e||(e={}),this.width=Math.abs(this.x2-this.x1),this.height=Math.abs(this.y2-this.y1),this.left="left"in e?e.left:this._getLeftToOriginX(),this.top="top"in e?e.top:this._getTopToOriginY()},_set:function(e,t){return this.callSuper("_set",e,t),"undefined"!==typeof i[e]&&this._setWidthHeight(),this},_getLeftToOriginX:o({origin:"originX",axis1:"x1",axis2:"x2",dimension:"width"},{nearest:"left",center:"center",farthest:"right"}),_getTopToOriginY:o({origin:"originY",axis1:"y1",axis2:"y2",dimension:"height"},{nearest:"top",center:"center",farthest:"bottom"}),_render:function(e){e.beginPath();var t=this.calcLinePoints();e.moveTo(t.x1,t.y1),e.lineTo(t.x2,t.y2),e.lineWidth=this.strokeWidth;var n=e.strokeStyle;e.strokeStyle=this.stroke||e.fillStyle,this.stroke&&this._renderStroke(e),e.strokeStyle=n},_findCenterFromElement:function(){return{x:(this.x1+this.x2)/2,y:(this.y1+this.y2)/2}},toObject:function(e){return n(this.callSuper("toObject",e),this.calcLinePoints())},_getNonTransformedDimensions:function(){var e=this.callSuper("_getNonTransformedDimensions");return"butt"===this.strokeLineCap&&(0===this.width&&(e.y-=this.strokeWidth),0===this.height&&(e.x-=this.strokeWidth)),e},calcLinePoints:function(){var e=this.x1<=this.x2?-1:1,t=this.y1<=this.y2?-1:1,n=e*this.width*.5,r=t*this.height*.5;return{x1:n,x2:e*this.width*-.5,y1:r,y2:t*this.height*-.5}},_toSVG:function(){var e=this.calcLinePoints();return["\n']}}),t.Line.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("x1 y1 x2 y2".split(" ")),t.Line.fromElement=function(e,r,i){i=i||{};var o=t.parseAttributes(e,t.Line.ATTRIBUTE_NAMES),a=[o.x1||0,o.y1||0,o.x2||0,o.y2||0];r(new t.Line(a,n(o,i)))},t.Line.fromObject=function(e,n){var i=r(e,!0);i.points=[e.x1,e.y1,e.x2,e.y2],t.Object._fromObject("Line",i,(function(e){delete e.points,n&&n(e)}),"points")})}(t),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.util.degreesToRadians;t.Circle?t.warn("fabric.Circle is already defined."):(t.Circle=t.util.createClass(t.Object,{type:"circle",radius:0,startAngle:0,endAngle:360,cacheProperties:t.Object.prototype.cacheProperties.concat("radius","startAngle","endAngle"),_set:function(e,t){return this.callSuper("_set",e,t),"radius"===e&&this.setRadius(t),this},toObject:function(e){return this.callSuper("toObject",["radius","startAngle","endAngle"].concat(e))},_toSVG:function(){var e,r=(this.endAngle-this.startAngle)%360;if(0===r)e=["\n'];else{var i=n(this.startAngle),o=n(this.endAngle),a=this.radius;e=['180?"1":"0")+" 1"," "+t.util.cos(o)*a+" "+t.util.sin(o)*a,'" ',"COMMON_PARTS"," />\n"]}return e},_render:function(e){e.beginPath(),e.arc(0,0,this.radius,n(this.startAngle),n(this.endAngle),!1),this._renderPaintInOrder(e)},getRadiusX:function(){return this.get("radius")*this.get("scaleX")},getRadiusY:function(){return this.get("radius")*this.get("scaleY")},setRadius:function(e){return this.radius=e,this.set("width",2*e).set("height",2*e)}}),t.Circle.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("cx cy r".split(" ")),t.Circle.fromElement=function(e,n){var r,i=t.parseAttributes(e,t.Circle.ATTRIBUTE_NAMES);if(!("radius"in(r=i)&&r.radius>=0))throw new Error("value of `r` attribute is required and can not be negative");i.left=(i.left||0)-i.radius,i.top=(i.top||0)-i.radius,n(new t.Circle(i))},t.Circle.fromObject=function(e,n){t.Object._fromObject("Circle",e,n)})}(t),function(e){"use strict";var t=e.fabric||(e.fabric={});t.Triangle?t.warn("fabric.Triangle is already defined"):(t.Triangle=t.util.createClass(t.Object,{type:"triangle",width:100,height:100,_render:function(e){var t=this.width/2,n=this.height/2;e.beginPath(),e.moveTo(-t,n),e.lineTo(0,-n),e.lineTo(t,n),e.closePath(),this._renderPaintInOrder(e)},_toSVG:function(){var e=this.width/2,t=this.height/2;return["']}}),t.Triangle.fromObject=function(e,n){return t.Object._fromObject("Triangle",e,n)})}(t),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=2*Math.PI;t.Ellipse?t.warn("fabric.Ellipse is already defined."):(t.Ellipse=t.util.createClass(t.Object,{type:"ellipse",rx:0,ry:0,cacheProperties:t.Object.prototype.cacheProperties.concat("rx","ry"),initialize:function(e){this.callSuper("initialize",e),this.set("rx",e&&e.rx||0),this.set("ry",e&&e.ry||0)},_set:function(e,t){switch(this.callSuper("_set",e,t),e){case"rx":this.rx=t,this.set("width",2*t);break;case"ry":this.ry=t,this.set("height",2*t)}return this},getRx:function(){return this.get("rx")*this.get("scaleX")},getRy:function(){return this.get("ry")*this.get("scaleY")},toObject:function(e){return this.callSuper("toObject",["rx","ry"].concat(e))},_toSVG:function(){return["\n']},_render:function(e){e.beginPath(),e.save(),e.transform(1,0,0,this.ry/this.rx,0,0),e.arc(0,0,this.rx,0,n,!1),e.restore(),this._renderPaintInOrder(e)}}),t.Ellipse.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("cx cy rx ry".split(" ")),t.Ellipse.fromElement=function(e,n){var r=t.parseAttributes(e,t.Ellipse.ATTRIBUTE_NAMES);r.left=(r.left||0)-r.rx,r.top=(r.top||0)-r.ry,n(new t.Ellipse(r))},t.Ellipse.fromObject=function(e,n){t.Object._fromObject("Ellipse",e,n)})}(t),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.util.object.extend;t.Rect?t.warn("fabric.Rect is already defined"):(t.Rect=t.util.createClass(t.Object,{stateProperties:t.Object.prototype.stateProperties.concat("rx","ry"),type:"rect",rx:0,ry:0,cacheProperties:t.Object.prototype.cacheProperties.concat("rx","ry"),initialize:function(e){this.callSuper("initialize",e),this._initRxRy()},_initRxRy:function(){this.rx&&!this.ry?this.ry=this.rx:this.ry&&!this.rx&&(this.rx=this.ry)},_render:function(e){var t=this.rx?Math.min(this.rx,this.width/2):0,n=this.ry?Math.min(this.ry,this.height/2):0,r=this.width,i=this.height,o=-this.width/2,a=-this.height/2,s=0!==t||0!==n,l=.4477152502;e.beginPath(),e.moveTo(o+t,a),e.lineTo(o+r-t,a),s&&e.bezierCurveTo(o+r-l*t,a,o+r,a+l*n,o+r,a+n),e.lineTo(o+r,a+i-n),s&&e.bezierCurveTo(o+r,a+i-l*n,o+r-l*t,a+i,o+r-t,a+i),e.lineTo(o+t,a+i),s&&e.bezierCurveTo(o+l*t,a+i,o,a+i-l*n,o,a+i-n),e.lineTo(o,a+n),s&&e.bezierCurveTo(o,a+l*n,o+l*t,a,o+t,a),e.closePath(),this._renderPaintInOrder(e)},toObject:function(e){return this.callSuper("toObject",["rx","ry"].concat(e))},_toSVG:function(){return["\n']}}),t.Rect.ATTRIBUTE_NAMES=t.SHARED_ATTRIBUTES.concat("x y rx ry width height".split(" ")),t.Rect.fromElement=function(e,r,i){if(!e)return r(null);i=i||{};var o=t.parseAttributes(e,t.Rect.ATTRIBUTE_NAMES);o.left=o.left||0,o.top=o.top||0,o.height=o.height||0,o.width=o.width||0;var a=new t.Rect(n(i?t.util.object.clone(i):{},o));a.visible=a.visible&&a.width>0&&a.height>0,r(a)},t.Rect.fromObject=function(e,n){return t.Object._fromObject("Rect",e,n)})}(t),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.util.object.extend,r=t.util.array.min,i=t.util.array.max,o=t.util.toFixed,a=t.util.projectStrokeOnPoints;t.Polyline?t.warn("fabric.Polyline is already defined"):(t.Polyline=t.util.createClass(t.Object,{type:"polyline",points:null,exactBoundingBox:!1,cacheProperties:t.Object.prototype.cacheProperties.concat("points"),initialize:function(e,t){t=t||{},this.points=e||[],this.callSuper("initialize",t),this._setPositionDimensions(t)},_projectStrokeOnPoints:function(){return a(this.points,this,!0)},_setPositionDimensions:function(e){var t,n=this._calcDimensions(e),r=this.exactBoundingBox?this.strokeWidth:0;this.width=n.width-r,this.height=n.height-r,e.fromSVG||(t=this.translateToGivenOrigin({x:n.left-this.strokeWidth/2+r/2,y:n.top-this.strokeWidth/2+r/2},"left","top",this.originX,this.originY)),"undefined"===typeof e.left&&(this.left=e.fromSVG?n.left:t.x),"undefined"===typeof e.top&&(this.top=e.fromSVG?n.top:t.y),this.pathOffset={x:n.left+this.width/2+r/2,y:n.top+this.height/2+r/2}},_calcDimensions:function(){var e=this.exactBoundingBox?this._projectStrokeOnPoints():this.points,t=r(e,"x")||0,n=r(e,"y")||0;return{left:t,top:n,width:(i(e,"x")||0)-t,height:(i(e,"y")||0)-n}},toObject:function(e){return n(this.callSuper("toObject",e),{points:this.points.concat()})},_toSVG:function(){for(var e=[],n=this.pathOffset.x,r=this.pathOffset.y,i=t.Object.NUM_FRACTION_DIGITS,a=0,s=this.points.length;a\n']},commonRender:function(e){var t,n=this.points.length,r=this.pathOffset.x,i=this.pathOffset.y;if(!n||isNaN(this.points[n-1].y))return!1;e.beginPath(),e.moveTo(this.points[0].x-r,this.points[0].y-i);for(var o=0;o"},toObject:function(e){return i(this.callSuper("toObject",e),{path:this.path.map((function(e){return e.slice()}))})},toDatalessObject:function(e){var t=this.toObject(["sourcePath"].concat(e));return t.sourcePath&&delete t.path,t},_toSVG:function(){return["\n"]},_getOffsetTransform:function(){var e=t.Object.NUM_FRACTION_DIGITS;return" translate("+a(-this.pathOffset.x,e)+", "+a(-this.pathOffset.y,e)+")"},toClipPathSVG:function(e){var t=this._getOffsetTransform();return"\t"+this._createBaseClipPathSVGMarkup(this._toSVG(),{reviver:e,additionalTransform:t})},toSVG:function(e){var t=this._getOffsetTransform();return this._createBaseSVGMarkup(this._toSVG(),{reviver:e,additionalTransform:t})},complexity:function(){return this.path.length},_calcDimensions:function(){for(var e,i,o=[],a=[],s=0,l=0,c=0,u=0,d=0,h=this.path.length;d"},addWithUpdate:function(e){var n=!!this.group;return this._restoreObjectsState(),t.util.resetObjectTransform(this),e&&(n&&t.util.removeTransformFromObject(e,this.group.calcTransformMatrix()),this._objects.push(e),e.group=this,e._set("canvas",this.canvas)),this._calcBounds(),this._updateObjectsCoords(),this.dirty=!0,n?this.group.addWithUpdate():this.setCoords(),this},removeWithUpdate:function(e){return this._restoreObjectsState(),t.util.resetObjectTransform(this),this.remove(e),this._calcBounds(),this._updateObjectsCoords(),this.setCoords(),this.dirty=!0,this},_onObjectAdded:function(e){this.dirty=!0,e.group=this,e._set("canvas",this.canvas)},_onObjectRemoved:function(e){this.dirty=!0,delete e.group},_set:function(e,n){var r=this._objects.length;if(this.useSetOnGroup)for(;r--;)this._objects[r].setOnGroup(e,n);if("canvas"===e)for(;r--;)this._objects[r]._set(e,n);t.Object.prototype._set.call(this,e,n)},toObject:function(e){var n=this.includeDefaultValues,r=this._objects.filter((function(e){return!e.excludeFromExport})).map((function(t){var r=t.includeDefaultValues;t.includeDefaultValues=n;var i=t.toObject(e);return t.includeDefaultValues=r,i})),i=t.Object.prototype.toObject.call(this,e);return i.objects=r,i},toDatalessObject:function(e){var n,r=this.sourcePath;if(r)n=r;else{var i=this.includeDefaultValues;n=this._objects.map((function(t){var n=t.includeDefaultValues;t.includeDefaultValues=i;var r=t.toDatalessObject(e);return t.includeDefaultValues=n,r}))}var o=t.Object.prototype.toDatalessObject.call(this,e);return o.objects=n,o},render:function(e){this._transformDone=!0,this.callSuper("render",e),this._transformDone=!1},shouldCache:function(){var e=t.Object.prototype.shouldCache.call(this);if(e)for(var n=0,r=this._objects.length;n\n"],n=0,r=this._objects.length;n\n"),t},getSvgStyles:function(){var e="undefined"!==typeof this.opacity&&1!==this.opacity?"opacity: "+this.opacity+";":"",t=this.visible?"":" visibility: hidden;";return[e,this.getSvgFilter(),t].join("")},toClipPathSVG:function(e){for(var t=[],n=0,r=this._objects.length;n"},shouldCache:function(){return!1},isOnACache:function(){return!1},_renderControls:function(e,t,n){e.save(),e.globalAlpha=this.isMoving?this.borderOpacityWhenMoving:1,this.callSuper("_renderControls",e,t),"undefined"===typeof(n=n||{}).hasControls&&(n.hasControls=!1),n.forActiveSelection=!0;for(var r=0,i=this._objects.length;r\n','\t\n',"\n"),s=' clip-path="url(#imageCrop_'+c+')" '}if(this.imageSmoothing||(l='" image-rendering="optimizeSpeed'),n.push("\t\n"),this.stroke||this.strokeDashArray){var u=this.fill;this.fill=null,e=["\t\n'],this.fill=u}return t="fill"!==this.paintFirst?t.concat(e,n):t.concat(n,e)},getSrc:function(e){var t=e?this._element:this._originalElement;return t?t.toDataURL?t.toDataURL():this.srcFromAttribute?t.getAttribute("src"):t.src:this.src||""},setSrc:function(e,t,n){return i.util.loadImage(e,(function(e,r){this.setElement(e,n),this._setWidthHeight(),t&&t(this,r)}),this,n&&n.crossOrigin),this},toString:function(){return'#'},applyResizeFilters:function(){var e=this.resizeFilter,t=this.minimumScaleTrigger,n=this.getTotalObjectScaling(),r=n.scaleX,o=n.scaleY,a=this._filteredEl||this._originalElement;if(this.group&&this.set("dirty",!0),!e||r>t&&o>t)return this._element=a,this._filterScalingX=1,this._filterScalingY=1,this._lastScaleX=r,void(this._lastScaleY=o);i.filterBackend||(i.filterBackend=i.initFilterBackend());var s=i.util.createCanvasElement(),l=this._filteredEl?this.cacheKey+"_filtered":this.cacheKey,c=a.width,u=a.height;s.width=c,s.height=u,this._element=s,this._lastScaleX=e.scaleX=r,this._lastScaleY=e.scaleY=o,i.filterBackend.applyFilters([e],a,c,u,this._element,l),this._filterScalingX=s.width/this._originalElement.width,this._filterScalingY=s.height/this._originalElement.height},applyFilters:function(e){if(e=(e=e||this.filters||[]).filter((function(e){return e&&!e.isNeutralState()})),this.set("dirty",!0),this.removeTexture(this.cacheKey+"_filtered"),0===e.length)return this._element=this._originalElement,this._filteredEl=null,this._filterScalingX=1,this._filterScalingY=1,this;var t=this._originalElement,n=t.naturalWidth||t.width,r=t.naturalHeight||t.height;if(this._element===this._originalElement){var o=i.util.createCanvasElement();o.width=n,o.height=r,this._element=o,this._filteredEl=o}else this._element=this._filteredEl,this._filteredEl.getContext("2d").clearRect(0,0,n,r),this._lastScaleX=1,this._lastScaleY=1;return i.filterBackend||(i.filterBackend=i.initFilterBackend()),i.filterBackend.applyFilters(e,this._originalElement,n,r,this._element,this.cacheKey),this._originalElement.width===this._element.width&&this._originalElement.height===this._element.height||(this._filterScalingX=this._element.width/this._originalElement.width,this._filterScalingY=this._element.height/this._originalElement.height),this},_render:function(e){i.util.setImageSmoothing(e,this.imageSmoothing),!0!==this.isMoving&&this.resizeFilter&&this._needsResize()&&this.applyResizeFilters(),this._stroke(e),this._renderPaintInOrder(e)},drawCacheOnCanvas:function(e){i.util.setImageSmoothing(e,this.imageSmoothing),i.Object.prototype.drawCacheOnCanvas.call(this,e)},shouldCache:function(){return this.needsItsOwnCache()},_renderFill:function(e){var t=this._element;if(t){var n=this._filterScalingX,r=this._filterScalingY,i=this.width,o=this.height,a=Math.min,s=Math.max,l=s(this.cropX,0),c=s(this.cropY,0),u=t.naturalWidth||t.width,d=t.naturalHeight||t.height,h=l*n,p=c*r,f=a(i*n,u-h),m=a(o*r,d-p),g=-i/2,v=-o/2,y=a(i,u/n-l),b=a(o,d/r-c);t&&e.drawImage(t,h,p,f,m,g,v,y,b)}},_needsResize:function(){var e=this.getTotalObjectScaling();return e.scaleX!==this._lastScaleX||e.scaleY!==this._lastScaleY},_resetWidthHeight:function(){this.set(this.getOriginalSize())},_initElement:function(e,t){this.setElement(i.util.getById(e),t),i.util.addClass(this.getElement(),i.Image.CSS_CANVAS)},_initConfig:function(e){e||(e={}),this.setOptions(e),this._setWidthHeight(e)},_initFilters:function(e,t){e&&e.length?i.util.enlivenObjects(e,(function(e){t&&t(e)}),"fabric.Image.filters"):t&&t()},_setWidthHeight:function(e){e||(e={});var t=this.getElement();this.width=e.width||t.naturalWidth||t.width||0,this.height=e.height||t.naturalHeight||t.height||0},parsePreserveAspectRatioAttribute:function(){var e,t=i.util.parsePreserveAspectRatioAttribute(this.preserveAspectRatio||""),n=this._element.width,r=this._element.height,o=1,a=1,s=0,l=0,c=0,u=0,d=this.width,h=this.height,p={width:d,height:h};return!t||"none"===t.alignX&&"none"===t.alignY?(o=d/n,a=h/r):("meet"===t.meetOrSlice&&(e=(d-n*(o=a=i.util.findScaleToFit(this._element,p)))/2,"Min"===t.alignX&&(s=-e),"Max"===t.alignX&&(s=e),e=(h-r*a)/2,"Min"===t.alignY&&(l=-e),"Max"===t.alignY&&(l=e)),"slice"===t.meetOrSlice&&(e=n-d/(o=a=i.util.findScaleToCover(this._element,p)),"Mid"===t.alignX&&(c=e/2),"Max"===t.alignX&&(c=e),e=r-h/a,"Mid"===t.alignY&&(u=e/2),"Max"===t.alignY&&(u=e),n=d/o,r=h/a)),{width:n,height:r,scaleX:o,scaleY:a,offsetLeft:s,offsetTop:l,cropX:c,cropY:u}}}),i.Image.CSS_CANVAS="canvas-img",i.Image.prototype.getSvgSrc=i.Image.prototype.getSrc,i.Image.fromObject=function(e,t){var n=i.util.object.clone(e);i.util.loadImage(n.src,(function(e,r){r?t&&t(null,!0):i.Image.prototype._initFilters.call(n,n.filters,(function(r){n.filters=r||[],i.Image.prototype._initFilters.call(n,[n.resizeFilter],(function(r){n.resizeFilter=r[0],i.util.enlivenObjectEnlivables(n,n,(function(){var r=new i.Image(e,n);t(r,!1)}))}))}))}),null,n.crossOrigin)},i.Image.fromURL=function(e,t,n){i.util.loadImage(e,(function(e,r){t&&t(new i.Image(e,n),r)}),null,n&&n.crossOrigin)},i.Image.ATTRIBUTE_NAMES=i.SHARED_ATTRIBUTES.concat("x y width height preserveAspectRatio xlink:href crossOrigin image-rendering".split(" ")),i.Image.fromElement=function(e,n,r){var o=i.parseAttributes(e,i.Image.ATTRIBUTE_NAMES);i.Image.fromURL(o["xlink:href"],n,t(r?i.util.object.clone(r):{},o))})}(t),i.util.object.extend(i.Object.prototype,{_getAngleValueForStraighten:function(){var e=this.angle%360;return e>0?90*Math.round((e-1)/90):90*Math.round(e/90)},straighten:function(){return this.rotate(this._getAngleValueForStraighten())},fxStraighten:function(e){var t=function(){},n=(e=e||{}).onComplete||t,r=e.onChange||t,o=this;return i.util.animate({target:this,startValue:this.get("angle"),endValue:this._getAngleValueForStraighten(),duration:this.FX_DURATION,onChange:function(e){o.rotate(e),r()},onComplete:function(){o.setCoords(),n()}})}}),i.util.object.extend(i.StaticCanvas.prototype,{straightenObject:function(e){return e.straighten(),this.requestRenderAll(),this},fxStraightenObject:function(e){return e.fxStraighten({onChange:this.requestRenderAllBound})}}),function(){"use strict";function e(e,t){var n="precision "+t+" float;\nvoid main(){}",r=e.createShader(e.FRAGMENT_SHADER);return e.shaderSource(r,n),e.compileShader(r),!!e.getShaderParameter(r,e.COMPILE_STATUS)}function t(e){e&&e.tileSize&&(this.tileSize=e.tileSize),this.setupGLContext(this.tileSize,this.tileSize),this.captureGPUInfo()}i.isWebglSupported=function(t){if(i.isLikelyNode)return!1;t=t||i.WebglFilterBackend.prototype.tileSize;var n=document.createElement("canvas"),r=n.getContext("webgl")||n.getContext("experimental-webgl"),o=!1;if(r){i.maxTextureSize=r.getParameter(r.MAX_TEXTURE_SIZE),o=i.maxTextureSize>=t;for(var a=["highp","mediump","lowp"],s=0;s<3;s++)if(e(r,a[s])){i.webGlPrecision=a[s];break}}return this.isSupported=o,o},i.WebglFilterBackend=t,t.prototype={tileSize:2048,resources:{},setupGLContext:function(e,t){this.dispose(),this.createWebGLCanvas(e,t),this.aPosition=new Float32Array([0,0,0,1,1,0,1,1]),this.chooseFastestCopyGLTo2DMethod(e,t)},chooseFastestCopyGLTo2DMethod:function(e,t){var n,r="undefined"!==typeof window.performance;try{new ImageData(1,1),n=!0}catch(f){n=!1}var o="undefined"!==typeof ArrayBuffer,l="undefined"!==typeof Uint8ClampedArray;if(r&&n&&o&&l){var c=i.util.createCanvasElement(),u=new ArrayBuffer(e*t*4);if(i.forceGLPutImageData)return this.imageBuffer=u,void(this.copyGLTo2D=s);var d,h,p={imageBuffer:u,destinationWidth:e,destinationHeight:t,targetCanvas:c};c.width=e,c.height=t,d=window.performance.now(),a.call(p,this.gl,p),h=window.performance.now()-d,d=window.performance.now(),s.call(p,this.gl,p),h>window.performance.now()-d?(this.imageBuffer=u,this.copyGLTo2D=s):this.copyGLTo2D=a}},createWebGLCanvas:function(e,t){var n=i.util.createCanvasElement();n.width=e,n.height=t;var r={alpha:!0,premultipliedAlpha:!1,depth:!1,stencil:!1,antialias:!1},o=n.getContext("webgl",r);o||(o=n.getContext("experimental-webgl",r)),o&&(o.clearColor(0,0,0,0),this.canvas=n,this.gl=o)},applyFilters:function(e,t,n,r,i,o){var a,s=this.gl;o&&(a=this.getCachedTexture(o,t));var l={originalWidth:t.width||t.originalWidth,originalHeight:t.height||t.originalHeight,sourceWidth:n,sourceHeight:r,destinationWidth:n,destinationHeight:r,context:s,sourceTexture:this.createTexture(s,n,r,!a&&t),targetTexture:this.createTexture(s,n,r),originalTexture:a||this.createTexture(s,n,r,!a&&t),passes:e.length,webgl:!0,aPosition:this.aPosition,programCache:this.programCache,pass:0,filterBackend:this,targetCanvas:i},c=s.createFramebuffer();return s.bindFramebuffer(s.FRAMEBUFFER,c),e.forEach((function(e){e&&e.applyTo(l)})),function(e){var t=e.targetCanvas,n=t.width,r=t.height,i=e.destinationWidth,o=e.destinationHeight;n===i&&r===o||(t.width=i,t.height=o)}(l),this.copyGLTo2D(s,l),s.bindTexture(s.TEXTURE_2D,null),s.deleteTexture(l.sourceTexture),s.deleteTexture(l.targetTexture),s.deleteFramebuffer(c),i.getContext("2d").setTransform(1,0,0,1,0,0),l},dispose:function(){this.canvas&&(this.canvas=null,this.gl=null),this.clearWebGLCaches()},clearWebGLCaches:function(){this.programCache={},this.textureCache={}},createTexture:function(e,t,n,r,i){var o=e.createTexture();return e.bindTexture(e.TEXTURE_2D,o),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,i||e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,i||e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),r?e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,r):e.texImage2D(e.TEXTURE_2D,0,e.RGBA,t,n,0,e.RGBA,e.UNSIGNED_BYTE,null),o},getCachedTexture:function(e,t){if(this.textureCache[e])return this.textureCache[e];var n=this.createTexture(this.gl,t.width,t.height,t);return this.textureCache[e]=n,n},evictCachesForKey:function(e){this.textureCache[e]&&(this.gl.deleteTexture(this.textureCache[e]),delete this.textureCache[e])},copyGLTo2D:a,captureGPUInfo:function(){if(this.gpuInfo)return this.gpuInfo;var e=this.gl,t={renderer:"",vendor:""};if(!e)return t;var n=e.getExtension("WEBGL_debug_renderer_info");if(n){var r=e.getParameter(n.UNMASKED_RENDERER_WEBGL),i=e.getParameter(n.UNMASKED_VENDOR_WEBGL);r&&(t.renderer=r.toLowerCase()),i&&(t.vendor=i.toLowerCase())}return this.gpuInfo=t,t}}}(),function(){"use strict";var e=function(){};function t(){}i.Canvas2dFilterBackend=t,t.prototype={evictCachesForKey:e,dispose:e,clearWebGLCaches:e,resources:{},applyFilters:function(e,t,n,r,i){var o=i.getContext("2d");o.drawImage(t,0,0,n,r);var a={sourceWidth:n,sourceHeight:r,imageData:o.getImageData(0,0,n,r),originalEl:t,originalImageData:o.getImageData(0,0,n,r),canvasEl:i,ctx:o,filterBackend:this};return e.forEach((function(e){e.applyTo(a)})),a.imageData.width===n&&a.imageData.height===r||(i.width=a.imageData.width,i.height=a.imageData.height),o.putImageData(a.imageData,0,0),a}}}(),i.Image=i.Image||{},i.Image.filters=i.Image.filters||{},i.Image.filters.BaseFilter=i.util.createClass({type:"BaseFilter",vertexSource:"attribute vec2 aPosition;\nvarying vec2 vTexCoord;\nvoid main() {\nvTexCoord = aPosition;\ngl_Position = vec4(aPosition * 2.0 - 1.0, 0.0, 1.0);\n}",fragmentSource:"precision highp float;\nvarying vec2 vTexCoord;\nuniform sampler2D uTexture;\nvoid main() {\ngl_FragColor = texture2D(uTexture, vTexCoord);\n}",initialize:function(e){e&&this.setOptions(e)},setOptions:function(e){for(var t in e)this[t]=e[t]},createProgram:function(e,t,n){t=t||this.fragmentSource,n=n||this.vertexSource,"highp"!==i.webGlPrecision&&(t=t.replace(/precision highp float/g,"precision "+i.webGlPrecision+" float"));var r=e.createShader(e.VERTEX_SHADER);if(e.shaderSource(r,n),e.compileShader(r),!e.getShaderParameter(r,e.COMPILE_STATUS))throw new Error("Vertex shader compile error for "+this.type+": "+e.getShaderInfoLog(r));var o=e.createShader(e.FRAGMENT_SHADER);if(e.shaderSource(o,t),e.compileShader(o),!e.getShaderParameter(o,e.COMPILE_STATUS))throw new Error("Fragment shader compile error for "+this.type+": "+e.getShaderInfoLog(o));var a=e.createProgram();if(e.attachShader(a,r),e.attachShader(a,o),e.linkProgram(a),!e.getProgramParameter(a,e.LINK_STATUS))throw new Error('Shader link error for "${this.type}" '+e.getProgramInfoLog(a));var s=this.getAttributeLocations(e,a),l=this.getUniformLocations(e,a)||{};return l.uStepW=e.getUniformLocation(a,"uStepW"),l.uStepH=e.getUniformLocation(a,"uStepH"),{program:a,attributeLocations:s,uniformLocations:l}},getAttributeLocations:function(e,t){return{aPosition:e.getAttribLocation(t,"aPosition")}},getUniformLocations:function(){return{}},sendAttributeData:function(e,t,n){var r=t.aPosition,i=e.createBuffer();e.bindBuffer(e.ARRAY_BUFFER,i),e.enableVertexAttribArray(r),e.vertexAttribPointer(r,2,e.FLOAT,!1,0,0),e.bufferData(e.ARRAY_BUFFER,n,e.STATIC_DRAW)},_setupFrameBuffer:function(e){var t,n,r=e.context;e.passes>1?(t=e.destinationWidth,n=e.destinationHeight,e.sourceWidth===t&&e.sourceHeight===n||(r.deleteTexture(e.targetTexture),e.targetTexture=e.filterBackend.createTexture(r,t,n)),r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,e.targetTexture,0)):(r.bindFramebuffer(r.FRAMEBUFFER,null),r.finish())},_swapTextures:function(e){e.passes--,e.pass++;var t=e.targetTexture;e.targetTexture=e.sourceTexture,e.sourceTexture=t},isNeutralState:function(){var e=this.mainParameter,t=i.Image.filters[this.type].prototype;if(e){if(Array.isArray(t[e])){for(var n=t[e].length;n--;)if(this[e][n]!==t[e][n])return!1;return!0}return t[e]===this[e]}return!1},applyTo:function(e){e.webgl?(this._setupFrameBuffer(e),this.applyToWebGL(e),this._swapTextures(e)):this.applyTo2d(e)},retrieveShader:function(e){return e.programCache.hasOwnProperty(this.type)||(e.programCache[this.type]=this.createProgram(e.context)),e.programCache[this.type]},applyToWebGL:function(e){var t=e.context,n=this.retrieveShader(e);0===e.pass&&e.originalTexture?t.bindTexture(t.TEXTURE_2D,e.originalTexture):t.bindTexture(t.TEXTURE_2D,e.sourceTexture),t.useProgram(n.program),this.sendAttributeData(t,n.attributeLocations,e.aPosition),t.uniform1f(n.uniformLocations.uStepW,1/e.sourceWidth),t.uniform1f(n.uniformLocations.uStepH,1/e.sourceHeight),this.sendUniformData(t,n.uniformLocations),t.viewport(0,0,e.destinationWidth,e.destinationHeight),t.drawArrays(t.TRIANGLE_STRIP,0,4)},bindAdditionalTexture:function(e,t,n){e.activeTexture(n),e.bindTexture(e.TEXTURE_2D,t),e.activeTexture(e.TEXTURE0)},unbindAdditionalTexture:function(e,t){e.activeTexture(t),e.bindTexture(e.TEXTURE_2D,null),e.activeTexture(e.TEXTURE0)},getMainParameter:function(){return this[this.mainParameter]},setMainParameter:function(e){this[this.mainParameter]=e},sendUniformData:function(){},createHelpLayer:function(e){if(!e.helpLayer){var t=document.createElement("canvas");t.width=e.sourceWidth,t.height=e.sourceHeight,e.helpLayer=t}},toObject:function(){var e={type:this.type},t=this.mainParameter;return t&&(e[t]=this[t]),e},toJSON:function(){return this.toObject()}}),i.Image.filters.BaseFilter.fromObject=function(e,t){var n=new i.Image.filters[e.type](e);return t&&t(n),n},function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.Image.filters,r=t.util.createClass;n.ColorMatrix=r(n.BaseFilter,{type:"ColorMatrix",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nvarying vec2 vTexCoord;\nuniform mat4 uColorMatrix;\nuniform vec4 uConstants;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\ncolor *= uColorMatrix;\ncolor += uConstants;\ngl_FragColor = color;\n}",matrix:[1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0],mainParameter:"matrix",colorsOnly:!0,initialize:function(e){this.callSuper("initialize",e),this.matrix=this.matrix.slice(0)},applyTo2d:function(e){var t,n,r,i,o,a=e.imageData.data,s=a.length,l=this.matrix,c=this.colorsOnly;for(o=0;o=x||a<0||a>=b||(l=4*(s*b+a),c=g[p*v+h],t+=m[l]*c,n+=m[l+1]*c,r+=m[l+2]*c,_||(i+=m[l+3]*c));S[o]=t,S[o+1]=n,S[o+2]=r,S[o+3]=_?m[o+3]:i}e.imageData=w},getUniformLocations:function(e,t){return{uMatrix:e.getUniformLocation(t,"uMatrix"),uOpaque:e.getUniformLocation(t,"uOpaque"),uHalfSize:e.getUniformLocation(t,"uHalfSize"),uSize:e.getUniformLocation(t,"uSize")}},sendUniformData:function(e,t){e.uniform1fv(t.uMatrix,this.matrix)},toObject:function(){return n(this.callSuper("toObject"),{opaque:this.opaque,matrix:this.matrix})}}),t.Image.filters.Convolute.fromObject=t.Image.filters.BaseFilter.fromObject}(t),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.Image.filters,r=t.util.createClass;n.Grayscale=r(n.BaseFilter,{type:"Grayscale",fragmentSource:{average:"precision highp float;\nuniform sampler2D uTexture;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nfloat average = (color.r + color.b + color.g) / 3.0;\ngl_FragColor = vec4(average, average, average, color.a);\n}",lightness:"precision highp float;\nuniform sampler2D uTexture;\nuniform int uMode;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 col = texture2D(uTexture, vTexCoord);\nfloat average = (max(max(col.r, col.g),col.b) + min(min(col.r, col.g),col.b)) / 2.0;\ngl_FragColor = vec4(average, average, average, col.a);\n}",luminosity:"precision highp float;\nuniform sampler2D uTexture;\nuniform int uMode;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 col = texture2D(uTexture, vTexCoord);\nfloat average = 0.21 * col.r + 0.72 * col.g + 0.07 * col.b;\ngl_FragColor = vec4(average, average, average, col.a);\n}"},mode:"average",mainParameter:"mode",applyTo2d:function(e){var t,n,r=e.imageData.data,i=r.length,o=this.mode;for(t=0;tc[0]&&i>c[1]&&o>c[2]&&r 0.0) {\n"+this.fragmentSource[e]+"}\n}"},retrieveShader:function(e){var t,n=this.type+"_"+this.mode;return e.programCache.hasOwnProperty(n)||(t=this.buildSource(this.mode),e.programCache[n]=this.createProgram(e.context,t)),e.programCache[n]},applyTo2d:function(e){var n,r,i,o,a,s,l,c=e.imageData.data,u=c.length,d=1-this.alpha;n=(l=new t.Color(this.color).getSource())[0]*this.alpha,r=l[1]*this.alpha,i=l[2]*this.alpha;for(var h=0;h=e||t<=-e)return 0;if(t<1.1920929e-7&&t>-1.1920929e-7)return 1;var n=(t*=Math.PI)/e;return s(t)/t*s(n)/n}},applyTo2d:function(e){var t=e.imageData,n=this.scaleX,r=this.scaleY;this.rcpScaleX=1/n,this.rcpScaleY=1/r;var i,o=t.width,s=t.height,l=a(o*n),c=a(s*r);"sliceHack"===this.resizeType?i=this.sliceByTwo(e,o,s,l,c):"hermite"===this.resizeType?i=this.hermiteFastResize(e,o,s,l,c):"bilinear"===this.resizeType?i=this.bilinearFiltering(e,o,s,l,c):"lanczos"===this.resizeType&&(i=this.lanczosResize(e,o,s,l,c)),e.imageData=i},sliceByTwo:function(e,n,i,o,a){var s,l,c=e.imageData,u=.5,d=!1,h=!1,p=n*u,f=i*u,m=t.filterBackend.resources,g=0,v=0,y=n,b=0;for(m.sliceByTwo||(m.sliceByTwo=document.createElement("canvas")),((s=m.sliceByTwo).width<1.5*n||s.height=t)){P=r(1e3*o(C-w.x)),x[P]||(x[P]={});for(var A=S.y-b;A<=S.y+b;A++)A<0||A>=a||(D=r(1e3*o(A-w.y)),x[P][D]||(x[P][D]=p(i(n(P*g,2)+n(D*v,2))/1e3)),(E=x[P][D])>0&&(O+=E,N+=E*u[T=4*(A*t+C)],k+=E*u[T+1],j+=E*u[T+2],I+=E*u[T+3]))}h[T=4*(_*s+l)]=N/O,h[T+1]=k/O,h[T+2]=j/O,h[T+3]=I/O}return++l1&&D<-1||(b=2*D*D*D-3*D*D+1)>0&&(E+=b*p[(P=4*(I+O*t))+3],w+=b,p[P+3]<255&&(b=b*p[P+3]/250),S+=b*p[P],_+=b*p[P+1],C+=b*p[P+2],x+=b)}m[y]=S/x,m[y+1]=_/x,m[y+2]=C/x,m[y+3]=E/w}return f},toObject:function(){return{type:this.type,scaleX:this.scaleX,scaleY:this.scaleY,resizeType:this.resizeType,lanczosLobes:this.lanczosLobes}}}),t.Image.filters.Resize.fromObject=t.Image.filters.BaseFilter.fromObject}(t),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.Image.filters,r=t.util.createClass;n.Contrast=r(n.BaseFilter,{type:"Contrast",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uContrast;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nfloat contrastF = 1.015 * (uContrast + 1.0) / (1.0 * (1.015 - uContrast));\ncolor.rgb = contrastF * (color.rgb - 0.5) + 0.5;\ngl_FragColor = color;\n}",contrast:0,mainParameter:"contrast",applyTo2d:function(e){if(0!==this.contrast){var t,n=e.imageData.data,r=n.length,i=Math.floor(255*this.contrast),o=259*(i+255)/(255*(259-i));for(t=0;t1&&(t=1/this.aspectRatio):this.aspectRatio<1&&(t=this.aspectRatio),e=t*this.blur*.12,this.horizontal?n[0]=e:n[1]=e,n}}),n.Blur.fromObject=t.Image.filters.BaseFilter.fromObject}(t),function(e){"use strict";var t=e.fabric||(e.fabric={}),n=t.Image.filters,r=t.util.createClass;n.Gamma=r(n.BaseFilter,{type:"Gamma",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform vec3 uGamma;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nvec3 correction = (1.0 / uGamma);\ncolor.r = pow(color.r, correction.r);\ncolor.g = pow(color.g, correction.g);\ncolor.b = pow(color.b, correction.b);\ngl_FragColor = color;\ngl_FragColor.rgb *= color.a;\n}",gamma:[1,1,1],mainParameter:"gamma",initialize:function(e){this.gamma=[1,1,1],n.BaseFilter.prototype.initialize.call(this,e)},applyTo2d:function(e){var t,n=e.imageData.data,r=this.gamma,i=n.length,o=1/r[0],a=1/r[1],s=1/r[2];for(this.rVals||(this.rVals=new Uint8Array(256),this.gVals=new Uint8Array(256),this.bVals=new Uint8Array(256)),t=0,i=256;t'},_getCacheCanvasDimensions:function(){var e=this.callSuper("_getCacheCanvasDimensions"),t=this.fontSize;return e.width+=t*e.zoomX,e.height+=t*e.zoomY,e},_render:function(e){var t=this.path;t&&!t.isNotVisible()&&t._render(e),this._setTextStyles(e),this._renderTextLinesBackground(e),this._renderTextDecoration(e,"underline"),this._renderText(e),this._renderTextDecoration(e,"overline"),this._renderTextDecoration(e,"linethrough")},_renderText:function(e){"stroke"===this.paintFirst?(this._renderTextStroke(e),this._renderTextFill(e)):(this._renderTextFill(e),this._renderTextStroke(e))},_setTextStyles:function(e,t,n){if(e.textBaseline="alphabetical",this.path)switch(this.pathAlign){case"center":e.textBaseline="middle";break;case"ascender":e.textBaseline="top";break;case"descender":e.textBaseline="bottom"}e.font=this._getFontDeclaration(t,n)},calcTextWidth:function(){for(var e=this.getLineWidth(0),t=1,n=this._textLines.length;te&&(e=r)}return e},_renderTextLine:function(e,t,n,r,i,o){this._renderChars(e,t,n,r,i,o)},_renderTextLinesBackground:function(e){if(this.textBackgroundColor||this.styleHas("textBackgroundColor")){for(var t,n,r,i,o,a,s,l=e.fillStyle,c=this._getLeftOffset(),u=this._getTopOffset(),d=0,h=0,p=this.path,f=0,m=this._textLines.length;f=0:ns?d%=s:d<0&&(d+=s),this._setGraphemeOnPath(d,o,a),d+=o.kernedWidth}return{width:l,numOfSpaces:0}},_setGraphemeOnPath:function(e,n,r){var i=e+n.kernedWidth/2,o=this.path,a=t.util.getPointOnPath(o.path,i,o.segmentsInfo);n.renderLeft=a.x-r.x,n.renderTop=a.y-r.y,n.angle=a.angle+("right"===this.pathSide?Math.PI:0)},_getGraphemeBox:function(e,t,n,r,i){var o,a=this.getCompleteStyleDeclaration(t,n),s=r?this.getCompleteStyleDeclaration(t,n-1):{},l=this._measureChar(e,a,r,s),c=l.kernedWidth,u=l.width;0!==this.charSpacing&&(u+=o=this._getWidthOfCharSpacing(),c+=o);var d={width:u,left:0,height:a.fontSize,kernedWidth:c,deltaY:a.deltaY};if(n>0&&!i){var h=this.__charBounds[t][n-1];d.left=h.left+h.width+l.kernedWidth-l.width}return d},getHeightOfLine:function(e){if(this.__lineHeights[e])return this.__lineHeights[e];for(var t=this._textLines[e],n=this.getHeightOfChar(e,0),r=1,i=t.length;r0){var O=y+o+d;"rtl"===this.direction&&(O=this.width-O-h),c&&v&&(e.fillStyle=v,e.fillRect(O,u+S*r+a,h,this.fontSize/15)),d=p.left,h=p.width,c=f,v=g,r=i,a=s}else h+=p.kernedWidth;O=y+o+d;"rtl"===this.direction&&(O=this.width-O-h),e.fillStyle=g,f&&g&&e.fillRect(O,u+S*r+a,h-w,this.fontSize/15),b+=n}else b+=n;this._removeShadow(e)}},_getFontDeclaration:function(e,n){var r=e||this,i=this.fontFamily,o=t.Text.genericFonts.indexOf(i.toLowerCase())>-1,a=void 0===i||i.indexOf("'")>-1||i.indexOf(",")>-1||i.indexOf('"')>-1||o?r.fontFamily:'"'+r.fontFamily+'"';return[t.isLikelyNode?r.fontWeight:r.fontStyle,t.isLikelyNode?r.fontStyle:r.fontWeight,n?this.CACHE_FONT_SIZE+"px":r.fontSize+"px",a].join(" ")},render:function(e){this.visible&&(this.canvas&&this.canvas.skipOffscreen&&!this.group&&!this.isOnScreen()||(this._shouldClearDimensionCache()&&this.initDimensions(),this.callSuper("render",e)))},_splitTextIntoLines:function(e){for(var n=e.split(this._reNewline),r=new Array(n.length),i=["\n"],o=[],a=0;a-1&&(e.underline=!0),e.textDecoration.indexOf("line-through")>-1&&(e.linethrough=!0),e.textDecoration.indexOf("overline")>-1&&(e.overline=!0),delete e.textDecoration)}i.IText=i.util.createClass(i.Text,i.Observable,{type:"i-text",selectionStart:0,selectionEnd:0,selectionColor:"rgba(17,119,255,0.3)",isEditing:!1,editable:!0,editingBorderColor:"rgba(102,153,255,0.25)",cursorWidth:2,cursorColor:"",cursorDelay:1e3,cursorDuration:600,caching:!0,hiddenTextareaContainer:null,_reSpace:/\s|\n/,_currentCursorOpacity:0,_selectionDirection:null,_abortCursorAnimation:!1,__widthOfSpace:[],inCompositionMode:!1,initialize:function(e,t){this.callSuper("initialize",e,t),this.initBehavior()},setSelectionStart:function(e){e=Math.max(e,0),this._updateAndFire("selectionStart",e)},setSelectionEnd:function(e){e=Math.min(e,this.text.length),this._updateAndFire("selectionEnd",e)},_updateAndFire:function(e,t){this[e]!==t&&(this._fireSelectionChanged(),this[e]=t),this._updateTextarea()},_fireSelectionChanged:function(){this.fire("selection:changed"),this.canvas&&this.canvas.fire("text:selection:changed",{target:this})},initDimensions:function(){this.isEditing&&this.initDelayedCursor(),this.clearContextTop(),this.callSuper("initDimensions")},render:function(e){this.clearContextTop(),this.callSuper("render",e),this.cursorOffsetCache={},this.renderCursorOrSelection()},_render:function(e){this.callSuper("_render",e)},clearContextTop:function(e){if(this.isEditing&&this.canvas&&this.canvas.contextTop){var t=this.canvas.contextTop,n=this.canvas.viewportTransform;t.save(),t.transform(n[0],n[1],n[2],n[3],n[4],n[5]),this.transform(t),this._clearTextArea(t),e||t.restore()}},renderCursorOrSelection:function(){if(this.isEditing&&this.canvas&&this.canvas.contextTop){var e=this._getCursorBoundaries(),t=this.canvas.contextTop;this.clearContextTop(!0),this.selectionStart===this.selectionEnd?this.renderCursor(e,t):this.renderSelection(e,t),t.restore()}},_clearTextArea:function(e){var t=this.width+4,n=this.height+4;e.clearRect(-t/2,-n/2,t,n)},_getCursorBoundaries:function(e){"undefined"===typeof e&&(e=this.selectionStart);var t=this._getLeftOffset(),n=this._getTopOffset(),r=this._getCursorBoundariesOffsets(e);return{left:t,top:n,leftOffset:r.left,topOffset:r.top}},_getCursorBoundariesOffsets:function(e){if(this.cursorOffsetCache&&"top"in this.cursorOffsetCache)return this.cursorOffsetCache;var t,n,r,i,o=0,a=0,s=this.get2DCursorLocation(e);r=s.charIndex,n=s.lineIndex;for(var l=0;l0?a:0)},"rtl"===this.direction&&(i.left*=-1),this.cursorOffsetCache=i,this.cursorOffsetCache},renderCursor:function(e,t){var n=this.get2DCursorLocation(),r=n.lineIndex,i=n.charIndex>0?n.charIndex-1:0,o=this.getValueOfPropertyAt(r,i,"fontSize"),a=this.scaleX*this.canvas.getZoom(),s=this.cursorWidth/a,l=e.topOffset,c=this.getValueOfPropertyAt(r,i,"deltaY");l+=(1-this._fontSizeFraction)*this.getHeightOfLine(r)/this.lineHeight-o*(1-this._fontSizeFraction),this.inCompositionMode&&this.renderSelection(e,t),t.fillStyle=this.cursorColor||this.getValueOfPropertyAt(r,i,"fill"),t.globalAlpha=this.__isMousedown?1:this._currentCursorOpacity,t.fillRect(e.left+e.leftOffset-s/2,l+e.top+c,s,o)},renderSelection:function(e,t){for(var n=this.inCompositionMode?this.hiddenTextarea.selectionStart:this.selectionStart,r=this.inCompositionMode?this.hiddenTextarea.selectionEnd:this.selectionEnd,i=-1!==this.textAlign.indexOf("justify"),o=this.get2DCursorLocation(n),a=this.get2DCursorLocation(r),s=o.lineIndex,l=a.lineIndex,c=o.charIndex<0?0:o.charIndex,u=a.charIndex<0?0:a.charIndex,d=s;d<=l;d++){var h,p=this._getLineLeftOffset(d)||0,f=this.getHeightOfLine(d),m=0,g=0;if(d===s&&(m=this.__charBounds[s][c].left),d>=s&&d1)&&(f/=this.lineHeight);var y=e.left+p+m,b=g-m,x=f,w=0;this.inCompositionMode?(t.fillStyle=this.compositionColor||"black",x=1,w=f):t.fillStyle=this.selectionColor,"rtl"===this.direction&&(y=this.width-y-b),t.fillRect(y,e.top+e.topOffset+w,b,x),e.topOffset+=h}},getCurrentCharFontSize:function(){var e=this._getCurrentCharIndex();return this.getValueOfPropertyAt(e.l,e.c,"fontSize")},getCurrentCharColor:function(){var e=this._getCurrentCharIndex();return this.getValueOfPropertyAt(e.l,e.c,"fill")},_getCurrentCharIndex:function(){var e=this.get2DCursorLocation(this.selectionStart,!0),t=e.charIndex>0?e.charIndex-1:0;return{l:e.lineIndex,c:t}}}),i.IText.fromObject=function(t,n){var r=i.util.stylesFromArray(t.styles,t.text),o=Object.assign({},t,{styles:r});if(e(o),o.styles)for(var a in o.styles)for(var s in o.styles[a])e(o.styles[a][s]);i.Object._fromObject("IText",o,n,"text")}}(),function(){var e=i.util.object.clone;i.util.object.extend(i.IText.prototype,{initBehavior:function(){this.initAddedHandler(),this.initRemovedHandler(),this.initCursorSelectionHandlers(),this.initDoubleClickSimulation(),this.mouseMoveHandler=this.mouseMoveHandler.bind(this)},onDeselect:function(){this.isEditing&&this.exitEditing(),this.selected=!1},initAddedHandler:function(){var e=this;this.on("added",(function(){var t=e.canvas;t&&(t._hasITextHandlers||(t._hasITextHandlers=!0,e._initCanvasHandlers(t)),t._iTextInstances=t._iTextInstances||[],t._iTextInstances.push(e))}))},initRemovedHandler:function(){var e=this;this.on("removed",(function(){var t=e.canvas;t&&(t._iTextInstances=t._iTextInstances||[],i.util.removeFromArray(t._iTextInstances,e),0===t._iTextInstances.length&&(t._hasITextHandlers=!1,e._removeCanvasHandlers(t)))}))},_initCanvasHandlers:function(e){e._mouseUpITextHandler=function(){e._iTextInstances&&e._iTextInstances.forEach((function(e){e.__isMousedown=!1}))},e.on("mouse:up",e._mouseUpITextHandler)},_removeCanvasHandlers:function(e){e.off("mouse:up",e._mouseUpITextHandler)},_tick:function(){this._currentTickState=this._animateCursor(this,1,this.cursorDuration,"_onTickComplete")},_animateCursor:function(e,t,n,r){var i;return i={isAborted:!1,abort:function(){this.isAborted=!0}},e.animate("_currentCursorOpacity",t,{duration:n,onComplete:function(){i.isAborted||e[r]()},onChange:function(){e.canvas&&e.selectionStart===e.selectionEnd&&e.renderCursorOrSelection()},abort:function(){return i.isAborted}}),i},_onTickComplete:function(){var e=this;this._cursorTimeout1&&clearTimeout(this._cursorTimeout1),this._cursorTimeout1=setTimeout((function(){e._currentTickCompleteState=e._animateCursor(e,0,this.cursorDuration/2,"_tick")}),100)},initDelayedCursor:function(e){var t=this,n=e?0:this.cursorDelay;this.abortCursorAnimation(),this._currentCursorOpacity=1,this._cursorTimeout2=setTimeout((function(){t._tick()}),n)},abortCursorAnimation:function(){var e=this._currentTickState||this._currentTickCompleteState,t=this.canvas;this._currentTickState&&this._currentTickState.abort(),this._currentTickCompleteState&&this._currentTickCompleteState.abort(),clearTimeout(this._cursorTimeout1),clearTimeout(this._cursorTimeout2),this._currentCursorOpacity=0,e&&t&&t.clearContext(t.contextTop||t.contextContainer)},selectAll:function(){return this.selectionStart=0,this.selectionEnd=this._text.length,this._fireSelectionChanged(),this._updateTextarea(),this},getSelectedText:function(){return this._text.slice(this.selectionStart,this.selectionEnd).join("")},findWordBoundaryLeft:function(e){var t=0,n=e-1;if(this._reSpace.test(this._text[n]))for(;this._reSpace.test(this._text[n]);)t++,n--;for(;/\S/.test(this._text[n])&&n>-1;)t++,n--;return e-t},findWordBoundaryRight:function(e){var t=0,n=e;if(this._reSpace.test(this._text[n]))for(;this._reSpace.test(this._text[n]);)t++,n++;for(;/\S/.test(this._text[n])&&n-1;)t++,n--;return e-t},findLineBoundaryRight:function(e){for(var t=0,n=e;!/\n/.test(this._text[n])&&n0&&rthis.__selectionStartOnMouseDown?(this.selectionStart=this.__selectionStartOnMouseDown,this.selectionEnd=t):(this.selectionStart=t,this.selectionEnd=this.__selectionStartOnMouseDown),this.selectionStart===n&&this.selectionEnd===r||(this.restartCursorIfNeeded(),this._fireSelectionChanged(),this._updateTextarea(),this.renderCursorOrSelection()))}},_setEditingProps:function(){this.hoverCursor="text",this.canvas&&(this.canvas.defaultCursor=this.canvas.moveCursor="text"),this.borderColor=this.editingBorderColor,this.hasControls=this.selectable=!1,this.lockMovementX=this.lockMovementY=!0},fromStringToGraphemeSelection:function(e,t,n){var r=n.slice(0,e),o=i.util.string.graphemeSplit(r).length;if(e===t)return{selectionStart:o,selectionEnd:o};var a=n.slice(e,t);return{selectionStart:o,selectionEnd:o+i.util.string.graphemeSplit(a).length}},fromGraphemeToStringSelection:function(e,t,n){var r=n.slice(0,e).join("").length;return e===t?{selectionStart:r,selectionEnd:r}:{selectionStart:r,selectionEnd:r+n.slice(e,t).join("").length}},_updateTextarea:function(){if(this.cursorOffsetCache={},this.hiddenTextarea){if(!this.inCompositionMode){var e=this.fromGraphemeToStringSelection(this.selectionStart,this.selectionEnd,this._text);this.hiddenTextarea.selectionStart=e.selectionStart,this.hiddenTextarea.selectionEnd=e.selectionEnd}this.updateTextareaPosition()}},updateFromTextArea:function(){if(this.hiddenTextarea){this.cursorOffsetCache={},this.text=this.hiddenTextarea.value,this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords());var e=this.fromStringToGraphemeSelection(this.hiddenTextarea.selectionStart,this.hiddenTextarea.selectionEnd,this.hiddenTextarea.value);this.selectionEnd=this.selectionStart=e.selectionEnd,this.inCompositionMode||(this.selectionStart=e.selectionStart),this.updateTextareaPosition()}},updateTextareaPosition:function(){if(this.selectionStart===this.selectionEnd){var e=this._calcTextareaPosition();this.hiddenTextarea.style.left=e.left,this.hiddenTextarea.style.top=e.top}},_calcTextareaPosition:function(){if(!this.canvas)return{x:1,y:1};var e=this.inCompositionMode?this.compositionStart:this.selectionStart,t=this._getCursorBoundaries(e),n=this.get2DCursorLocation(e),r=n.lineIndex,o=n.charIndex,a=this.getValueOfPropertyAt(r,o,"fontSize")*this.lineHeight,s=t.leftOffset,l=this.calcTransformMatrix(),c={x:t.left+s,y:t.top+t.topOffset+a},u=this.canvas.getRetinaScaling(),d=this.canvas.upperCanvasEl,h=d.width/u,p=d.height/u,f=h-a,m=p-a,g=d.clientWidth/h,v=d.clientHeight/p;return c=i.util.transformPoint(c,l),(c=i.util.transformPoint(c,this.canvas.viewportTransform)).x*=g,c.y*=v,c.x<0&&(c.x=0),c.x>f&&(c.x=f),c.y<0&&(c.y=0),c.y>m&&(c.y=m),c.x+=this.canvas._offset.left,c.y+=this.canvas._offset.top,{left:c.x+"px",top:c.y+"px",fontSize:a+"px",charHeight:a}},_saveEditingProps:function(){this._savedProps={hasControls:this.hasControls,borderColor:this.borderColor,lockMovementX:this.lockMovementX,lockMovementY:this.lockMovementY,hoverCursor:this.hoverCursor,selectable:this.selectable,defaultCursor:this.canvas&&this.canvas.defaultCursor,moveCursor:this.canvas&&this.canvas.moveCursor}},_restoreEditingProps:function(){this._savedProps&&(this.hoverCursor=this._savedProps.hoverCursor,this.hasControls=this._savedProps.hasControls,this.borderColor=this._savedProps.borderColor,this.selectable=this._savedProps.selectable,this.lockMovementX=this._savedProps.lockMovementX,this.lockMovementY=this._savedProps.lockMovementY,this.canvas&&(this.canvas.defaultCursor=this._savedProps.defaultCursor,this.canvas.moveCursor=this._savedProps.moveCursor))},exitEditing:function(){var e=this._textBeforeEdit!==this.text,t=this.hiddenTextarea;return this.selected=!1,this.isEditing=!1,this.selectionEnd=this.selectionStart,t&&(t.blur&&t.blur(),t.parentNode&&t.parentNode.removeChild(t)),this.hiddenTextarea=null,this.abortCursorAnimation(),this._restoreEditingProps(),this._currentCursorOpacity=0,this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this.fire("editing:exited"),e&&this.fire("modified"),this.canvas&&(this.canvas.off("mouse:move",this.mouseMoveHandler),this.canvas.fire("text:editing:exited",{target:this}),e&&this.canvas.fire("object:modified",{target:this})),this},_removeExtraneousStyles:function(){for(var e in this.styles)this._textLines[e]||delete this.styles[e]},removeStyleFromTo:function(e,t){var n,r,i=this.get2DCursorLocation(e,!0),o=this.get2DCursorLocation(t,!0),a=i.lineIndex,s=i.charIndex,l=o.lineIndex,c=o.charIndex;if(a!==l){if(this.styles[a])for(n=s;n=c&&(r[u-h]=r[d],delete r[d])}},shiftLineStyles:function(t,n){var r=e(this.styles);for(var i in this.styles){var o=parseInt(i,10);o>t&&(this.styles[o+n]=r[o],r[o-n]||delete this.styles[o])}},restartCursorIfNeeded:function(){this._currentTickState&&!this._currentTickState.isAborted&&this._currentTickCompleteState&&!this._currentTickCompleteState.isAborted||this.initDelayedCursor()},insertNewlineStyleObject:function(t,n,r,i){var o,a={},s=!1,l=this._unwrappedTextLines[t].length===n;for(var c in r||(r=1),this.shiftLineStyles(t,r),this.styles[t]&&(o=this.styles[t][0===n?n:n-1]),this.styles[t]){var u=parseInt(c,10);u>=n&&(s=!0,a[u-n]=this.styles[t][c],l&&0===n||delete this.styles[t][c])}var d=!1;for(s&&!l&&(this.styles[t+r]=a,d=!0),d&&r--;r>0;)i&&i[r-1]?this.styles[t+r]={0:e(i[r-1])}:o?this.styles[t+r]={0:e(o)}:delete this.styles[t+r],r--;this._forceClearCache=!0},insertCharStyleObject:function(t,n,r,i){this.styles||(this.styles={});var o=this.styles[t],a=o?e(o):{};for(var s in r||(r=1),a){var l=parseInt(s,10);l>=n&&(o[l+r]=a[l],a[l-r]||delete o[l])}if(this._forceClearCache=!0,i)for(;r--;)Object.keys(i[r]).length&&(this.styles[t]||(this.styles[t]={}),this.styles[t][n+r]=e(i[r]));else if(o)for(var c=o[n?n-1:1];c&&r--;)this.styles[t][n+r]=e(c)},insertNewStyleBlock:function(e,t,n){for(var r=this.get2DCursorLocation(t,!0),i=[0],o=0,a=0;a0&&(this.insertCharStyleObject(r.lineIndex,r.charIndex,i[0],n),n=n&&n.slice(i[0]+1)),o&&this.insertNewlineStyleObject(r.lineIndex,r.charIndex+i[0],o);for(a=1;a0?this.insertCharStyleObject(r.lineIndex+a,0,i[a],n):n&&this.styles[r.lineIndex+a]&&n[0]&&(this.styles[r.lineIndex+a][0]=n[0]),n=n&&n.slice(i[a]+1);i[a]>0&&this.insertCharStyleObject(r.lineIndex+a,0,i[a],n)},setSelectionStartEndWithShift:function(e,t,n){n<=e?(t===e?this._selectionDirection="left":"right"===this._selectionDirection&&(this._selectionDirection="left",this.selectionEnd=e),this.selectionStart=n):n>e&&ne?this.selectionStart=e:this.selectionStart<0&&(this.selectionStart=0),this.selectionEnd>e?this.selectionEnd=e:this.selectionEnd<0&&(this.selectionEnd=0)}})}(),i.util.object.extend(i.IText.prototype,{initDoubleClickSimulation:function(){this.__lastClickTime=+new Date,this.__lastLastClickTime=+new Date,this.__lastPointer={},this.on("mousedown",this.onMouseDown)},onMouseDown:function(e){if(this.canvas){this.__newClickTime=+new Date;var t=e.pointer;this.isTripleClick(t)&&(this.fire("tripleclick",e),this._stopEvent(e.e)),this.__lastLastClickTime=this.__lastClickTime,this.__lastClickTime=this.__newClickTime,this.__lastPointer=t,this.__lastIsEditing=this.isEditing,this.__lastSelected=this.selected}},isTripleClick:function(e){return this.__newClickTime-this.__lastClickTime<500&&this.__lastClickTime-this.__lastLastClickTime<500&&this.__lastPointer.x===e.x&&this.__lastPointer.y===e.y},_stopEvent:function(e){e.preventDefault&&e.preventDefault(),e.stopPropagation&&e.stopPropagation()},initCursorSelectionHandlers:function(){this.initMousedownHandler(),this.initMouseupHandler(),this.initClicks()},doubleClickHandler:function(e){this.isEditing&&this.selectWord(this.getSelectionStartFromPointer(e.e))},tripleClickHandler:function(e){this.isEditing&&this.selectLine(this.getSelectionStartFromPointer(e.e))},initClicks:function(){this.on("mousedblclick",this.doubleClickHandler),this.on("tripleclick",this.tripleClickHandler)},_mouseDownHandler:function(e){!this.canvas||!this.editable||e.e.button&&1!==e.e.button||(this.__isMousedown=!0,this.selected&&(this.inCompositionMode=!1,this.setCursorByClick(e.e)),this.isEditing&&(this.__selectionStartOnMouseDown=this.selectionStart,this.selectionStart===this.selectionEnd&&this.abortCursorAnimation(),this.renderCursorOrSelection()))},_mouseDownHandlerBefore:function(e){!this.canvas||!this.editable||e.e.button&&1!==e.e.button||(this.selected=this===this.canvas._activeObject)},initMousedownHandler:function(){this.on("mousedown",this._mouseDownHandler),this.on("mousedown:before",this._mouseDownHandlerBefore)},initMouseupHandler:function(){this.on("mouseup",this.mouseUpHandler)},mouseUpHandler:function(e){if(this.__isMousedown=!1,!(!this.editable||this.group||e.transform&&e.transform.actionPerformed||e.e.button&&1!==e.e.button)){if(this.canvas){var t=this.canvas._activeObject;if(t&&t!==this)return}this.__lastSelected&&!this.__corner?(this.selected=!1,this.__lastSelected=!1,this.enterEditing(e.e),this.selectionStart===this.selectionEnd?this.initDelayedCursor(!0):this.renderCursorOrSelection()):this.selected=!0}},setCursorByClick:function(e){var t=this.getSelectionStartFromPointer(e),n=this.selectionStart,r=this.selectionEnd;e.shiftKey?this.setSelectionStartEndWithShift(n,r,t):(this.selectionStart=t,this.selectionEnd=t),this.isEditing&&(this._fireSelectionChanged(),this._updateTextarea())},getSelectionStartFromPointer:function(e){for(var t,n=this.getLocalPointer(e),r=0,i=0,o=0,a=0,s=0,l=0,c=this._textLines.length;l0&&(a+=this._textLines[l-1].length+this.missingNewlineOffset(l-1));i=this._getLineLeftOffset(s)*this.scaleX,t=this._textLines[s],"rtl"===this.direction&&(n.x=this.width*this.scaleX-n.x+i);for(var u=0,d=t.length;uo||a<0?0:1);return this.flipX&&(s=i-s),s>this._text.length&&(s=this._text.length),s}}),i.util.object.extend(i.IText.prototype,{initHiddenTextarea:function(){this.hiddenTextarea=i.document.createElement("textarea"),this.hiddenTextarea.setAttribute("autocapitalize","off"),this.hiddenTextarea.setAttribute("autocorrect","off"),this.hiddenTextarea.setAttribute("autocomplete","off"),this.hiddenTextarea.setAttribute("spellcheck","false"),this.hiddenTextarea.setAttribute("data-fabric-hiddentextarea",""),this.hiddenTextarea.setAttribute("wrap","off");var e=this._calcTextareaPosition();this.hiddenTextarea.style.cssText="position: absolute; top: "+e.top+"; left: "+e.left+"; z-index: -999; opacity: 0; width: 1px; height: 1px; font-size: 1px; padding-top: "+e.fontSize+";",this.hiddenTextareaContainer?this.hiddenTextareaContainer.appendChild(this.hiddenTextarea):i.document.body.appendChild(this.hiddenTextarea),i.util.addListener(this.hiddenTextarea,"keydown",this.onKeyDown.bind(this)),i.util.addListener(this.hiddenTextarea,"keyup",this.onKeyUp.bind(this)),i.util.addListener(this.hiddenTextarea,"input",this.onInput.bind(this)),i.util.addListener(this.hiddenTextarea,"copy",this.copy.bind(this)),i.util.addListener(this.hiddenTextarea,"cut",this.copy.bind(this)),i.util.addListener(this.hiddenTextarea,"paste",this.paste.bind(this)),i.util.addListener(this.hiddenTextarea,"compositionstart",this.onCompositionStart.bind(this)),i.util.addListener(this.hiddenTextarea,"compositionupdate",this.onCompositionUpdate.bind(this)),i.util.addListener(this.hiddenTextarea,"compositionend",this.onCompositionEnd.bind(this)),!this._clickHandlerInitialized&&this.canvas&&(i.util.addListener(this.canvas.upperCanvasEl,"click",this.onClick.bind(this)),this._clickHandlerInitialized=!0)},keysMap:{9:"exitEditing",27:"exitEditing",33:"moveCursorUp",34:"moveCursorDown",35:"moveCursorRight",36:"moveCursorLeft",37:"moveCursorLeft",38:"moveCursorUp",39:"moveCursorRight",40:"moveCursorDown"},keysMapRtl:{9:"exitEditing",27:"exitEditing",33:"moveCursorUp",34:"moveCursorDown",35:"moveCursorLeft",36:"moveCursorRight",37:"moveCursorRight",38:"moveCursorUp",39:"moveCursorLeft",40:"moveCursorDown"},ctrlKeysMapUp:{67:"copy",88:"cut"},ctrlKeysMapDown:{65:"selectAll"},onClick:function(){this.hiddenTextarea&&this.hiddenTextarea.focus()},onKeyDown:function(e){if(this.isEditing){var t="rtl"===this.direction?this.keysMapRtl:this.keysMap;if(e.keyCode in t)this[t[e.keyCode]](e);else{if(!(e.keyCode in this.ctrlKeysMapDown)||!e.ctrlKey&&!e.metaKey)return;this[this.ctrlKeysMapDown[e.keyCode]](e)}e.stopImmediatePropagation(),e.preventDefault(),e.keyCode>=33&&e.keyCode<=40?(this.inCompositionMode=!1,this.clearContextTop(),this.renderCursorOrSelection()):this.canvas&&this.canvas.requestRenderAll()}},onKeyUp:function(e){!this.isEditing||this._copyDone||this.inCompositionMode?this._copyDone=!1:e.keyCode in this.ctrlKeysMapUp&&(e.ctrlKey||e.metaKey)&&(this[this.ctrlKeysMapUp[e.keyCode]](e),e.stopImmediatePropagation(),e.preventDefault(),this.canvas&&this.canvas.requestRenderAll())},onInput:function(e){var t=this.fromPaste;if(this.fromPaste=!1,e&&e.stopPropagation(),this.isEditing){var n,r,o,a,s,l=this._splitTextIntoLines(this.hiddenTextarea.value).graphemeText,c=this._text.length,u=l.length,d=u-c,h=this.selectionStart,p=this.selectionEnd,f=h!==p;if(""===this.hiddenTextarea.value)return this.styles={},this.updateFromTextArea(),this.fire("changed"),void(this.canvas&&(this.canvas.fire("text:changed",{target:this}),this.canvas.requestRenderAll()));var m=this.fromStringToGraphemeSelection(this.hiddenTextarea.selectionStart,this.hiddenTextarea.selectionEnd,this.hiddenTextarea.value),g=h>m.selectionStart;f?(n=this._text.slice(h,p),d+=p-h):u0&&(r+=(n=this.__charBounds[e][t-1]).left+n.width),r},getDownCursorOffset:function(e,t){var n=this._getSelectionForOffset(e,t),r=this.get2DCursorLocation(n),i=r.lineIndex;if(i===this._textLines.length-1||e.metaKey||34===e.keyCode)return this._text.length-n;var o=r.charIndex,a=this._getWidthBeforeCursor(i,o),s=this._getIndexOnLine(i+1,a);return this._textLines[i].slice(o).length+s+1+this.missingNewlineOffset(i)},_getSelectionForOffset:function(e,t){return e.shiftKey&&this.selectionStart!==this.selectionEnd&&t?this.selectionEnd:this.selectionStart},getUpCursorOffset:function(e,t){var n=this._getSelectionForOffset(e,t),r=this.get2DCursorLocation(n),i=r.lineIndex;if(0===i||e.metaKey||33===e.keyCode)return-n;var o=r.charIndex,a=this._getWidthBeforeCursor(i,o),s=this._getIndexOnLine(i-1,a),l=this._textLines[i].slice(0,o),c=this.missingNewlineOffset(i-1);return-this._textLines[i-1].length+s-l.length+(1-c)},_getIndexOnLine:function(e,t){for(var n,r,i=this._textLines[e],o=this._getLineLeftOffset(e),a=0,s=0,l=i.length;st){r=!0;var c=o-n,u=o,d=Math.abs(c-t);a=Math.abs(u-t)=this._text.length&&this.selectionEnd>=this._text.length||this._moveCursorUpOrDown("Down",e)},moveCursorUp:function(e){0===this.selectionStart&&0===this.selectionEnd||this._moveCursorUpOrDown("Up",e)},_moveCursorUpOrDown:function(e,t){var n=this["get"+e+"CursorOffset"](t,"right"===this._selectionDirection);t.shiftKey?this.moveCursorWithShift(n):this.moveCursorWithoutShift(n),0!==n&&(this.setSelectionInBoundaries(),this.abortCursorAnimation(),this._currentCursorOpacity=1,this.initDelayedCursor(),this._fireSelectionChanged(),this._updateTextarea())},moveCursorWithShift:function(e){var t="left"===this._selectionDirection?this.selectionStart+e:this.selectionEnd+e;return this.setSelectionStartEndWithShift(this.selectionStart,this.selectionEnd,t),0!==e},moveCursorWithoutShift:function(e){return e<0?(this.selectionStart+=e,this.selectionEnd=this.selectionStart):(this.selectionEnd+=e,this.selectionStart=this.selectionEnd),0!==e},moveCursorLeft:function(e){0===this.selectionStart&&0===this.selectionEnd||this._moveCursorLeftOrRight("Left",e)},_move:function(e,t,n){var r;if(e.altKey)r=this["findWordBoundary"+n](this[t]);else{if(!e.metaKey&&35!==e.keyCode&&36!==e.keyCode)return this[t]+="Left"===n?-1:1,!0;r=this["findLineBoundary"+n](this[t])}if("undefined"!==typeof r&&this[t]!==r)return this[t]=r,!0},_moveLeft:function(e,t){return this._move(e,t,"Left")},_moveRight:function(e,t){return this._move(e,t,"Right")},moveCursorLeftWithoutShift:function(e){var t=!0;return this._selectionDirection="left",this.selectionEnd===this.selectionStart&&0!==this.selectionStart&&(t=this._moveLeft(e,"selectionStart")),this.selectionEnd=this.selectionStart,t},moveCursorLeftWithShift:function(e){return"right"===this._selectionDirection&&this.selectionStart!==this.selectionEnd?this._moveLeft(e,"selectionEnd"):0!==this.selectionStart?(this._selectionDirection="left",this._moveLeft(e,"selectionStart")):void 0},moveCursorRight:function(e){this.selectionStart>=this._text.length&&this.selectionEnd>=this._text.length||this._moveCursorLeftOrRight("Right",e)},_moveCursorLeftOrRight:function(e,t){var n="moveCursor"+e+"With";this._currentCursorOpacity=1,t.shiftKey?n+="Shift":n+="outShift",this[n](t)&&(this.abortCursorAnimation(),this.initDelayedCursor(),this._fireSelectionChanged(),this._updateTextarea())},moveCursorRightWithShift:function(e){return"left"===this._selectionDirection&&this.selectionStart!==this.selectionEnd?this._moveRight(e,"selectionStart"):this.selectionEnd!==this._text.length?(this._selectionDirection="right",this._moveRight(e,"selectionEnd")):void 0},moveCursorRightWithoutShift:function(e){var t=!0;return this._selectionDirection="right",this.selectionStart===this.selectionEnd?(t=this._moveRight(e,"selectionStart"),this.selectionEnd=this.selectionStart):this.selectionStart=this.selectionEnd,t},removeChars:function(e,t){"undefined"===typeof t&&(t=e+1),this.removeStyleFromTo(e,t),this._text.splice(e,t-e),this.text=this._text.join(""),this.set("dirty",!0),this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this._removeExtraneousStyles()},insertChars:function(e,t,n,r){"undefined"===typeof r&&(r=n),r>n&&this.removeStyleFromTo(n,r);var o=i.util.string.graphemeSplit(e);this.insertNewStyleBlock(o,n,t),this._text=[].concat(this._text.slice(0,n),o,this._text.slice(r)),this.text=this._text.join(""),this.set("dirty",!0),this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this._removeExtraneousStyles()}}),function(){var e=i.util.toFixed,t=/ +/g;i.util.object.extend(i.Text.prototype,{_toSVG:function(){var e=this._getSVGLeftTopOffsets(),t=this._getSVGTextAndBg(e.textTop,e.textLeft);return this._wrapSVGTextAndBg(t)},toSVG:function(e){return this._createBaseSVGMarkup(this._toSVG(),{reviver:e,noStyle:!0,withShadow:!0})},_getSVGLeftTopOffsets:function(){return{textLeft:-this.width/2,textTop:-this.height/2,lineTop:this.getHeightOfLine(0)}},_wrapSVGTextAndBg:function(e){var t=this.getSvgTextDecoration(this);return[e.textBgRects.join(""),'\t\t",e.textSpans.join(""),"\n"]},_getSVGTextAndBg:function(e,t){var n,r=[],i=[],o=e;this._setSVGBg(i);for(var a=0,s=this._textLines.length;a",i.util.string.escapeXml(n),""].join("")},_setSVGTextLineText:function(e,t,n,r){var o,a,s,l,c,u=this.getHeightOfLine(t),d=-1!==this.textAlign.indexOf("justify"),h="",p=0,f=this._textLines[t];r+=u*(1-this._fontSizeFraction)/this.lineHeight;for(var m=0,g=f.length-1;m<=g;m++)c=m===g||this.charSpacing,h+=f[m],s=this.__charBounds[t][m],0===p?(n+=s.kernedWidth-s.width,p+=s.width):p+=s.kernedWidth,d&&!c&&this._reSpaceAndTab.test(f[m])&&(c=!0),c||(o=o||this.getCompleteStyleDeclaration(t,m),a=this.getCompleteStyleDeclaration(t,m+1),c=i.util.hasStyleChanged(o,a,!0)),c&&(l=this._getStyleDeclaration(t,m)||{},e.push(this._createTextCharSpan(h,l,n,r)),h="",o=a,n+=p,p=0)},_pushTextBgRect:function(t,n,r,o,a,s){var l=i.Object.NUM_FRACTION_DIGITS;t.push("\t\t\n')},_setSVGTextLineBg:function(e,t,n,r){for(var i,o,a=this._textLines[t],s=this.getHeightOfLine(t)/this.lineHeight,l=0,c=0,u=this.getValueOfPropertyAt(t,0,"textBackgroundColor"),d=0,h=a.length;dthis.width&&this._set("width",this.dynamicMinWidth),-1!==this.textAlign.indexOf("justify")&&this.enlargeSpaces(),this.height=this.calcTextHeight(),this.saveState({propertySet:"_dimensionAffectingProps"}))},_generateStyleMap:function(e){for(var t=0,n=0,r=0,i={},o=0;o0?(n=0,r++,t++):!this.splitByGrapheme&&this._reSpaceAndTab.test(e.graphemeText[r])&&o>0&&(n++,r++),i[o]={line:t,offset:n},r+=e.graphemeLines[o].length,n+=e.graphemeLines[o].length;return i},styleHas:function(e,n){if(this._styleMap&&!this.isWrapping){var r=this._styleMap[n];r&&(n=r.line)}return t.Text.prototype.styleHas.call(this,e,n)},isEmptyStyles:function(e){if(!this.styles)return!0;var t,n,r=0,i=!1,o=this._styleMap[e],a=this._styleMap[e+1];for(var s in o&&(e=o.line,r=o.offset),a&&(i=a.line===e,t=a.offset),n="undefined"===typeof e?this.styles:{line:this.styles[e]})for(var l in n[s])if(l>=r&&(!i||lr&&!g?(s.push(l),l=[],o=p,g=!0):o+=v,g||a||l.push(h),l=l.concat(u),f=a?0:this._measureWord([h],n,d),d++,g=!1,p>m&&(m=p);return y&&s.push(l),m+i>this.dynamicMinWidth&&(this.dynamicMinWidth=m-v+i),s},isEndOfWrapping:function(e){return!this._styleMap[e+1]||this._styleMap[e+1].line!==this._styleMap[e].line},missingNewlineOffset:function(e){return this.splitByGrapheme?this.isEndOfWrapping(e)?1:0:1},_splitTextIntoLines:function(e){for(var n=t.Text.prototype._splitTextIntoLines.call(this,e),r=this._wrapText(n.lines,this.width),i=new Array(r.length),o=0;o{"use strict";var t="Function.prototype.bind called on incompatible ",n=Object.prototype.toString,r=Math.max,i="[object Function]",o=function(e,t){for(var n=[],r=0;r{"use strict";var r=n(12406);e.exports=Function.prototype.bind||r},42780:(e,t,n)=>{"use strict";var r,i=n(41830),o=n(16101),a=n(69715),s=n(64546),l=n(47849),c=n(84968),u=n(68344),d=Function,h=function(e){try{return d('"use strict"; return ('+e+").constructor;")()}catch(t){}},p=Object.getOwnPropertyDescriptor;if(p)try{p({},"")}catch(M){p=null}var f=function(){throw new c},m=p?function(){try{return f}catch(e){try{return p(arguments,"callee").get}catch(t){return f}}}():f,g=n(83895)(),v=n(29571)(),y=Object.getPrototypeOf||(v?function(e){return e.__proto__}:null),b={},x="undefined"!==typeof Uint8Array&&y?y(Uint8Array):r,w={__proto__:null,"%AggregateError%":"undefined"===typeof AggregateError?r:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"===typeof ArrayBuffer?r:ArrayBuffer,"%ArrayIteratorPrototype%":g&&y?y([][Symbol.iterator]()):r,"%AsyncFromSyncIteratorPrototype%":r,"%AsyncFunction%":b,"%AsyncGenerator%":b,"%AsyncGeneratorFunction%":b,"%AsyncIteratorPrototype%":b,"%Atomics%":"undefined"===typeof Atomics?r:Atomics,"%BigInt%":"undefined"===typeof BigInt?r:BigInt,"%BigInt64Array%":"undefined"===typeof BigInt64Array?r:BigInt64Array,"%BigUint64Array%":"undefined"===typeof BigUint64Array?r:BigUint64Array,"%Boolean%":Boolean,"%DataView%":"undefined"===typeof DataView?r:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":i,"%eval%":eval,"%EvalError%":o,"%Float32Array%":"undefined"===typeof Float32Array?r:Float32Array,"%Float64Array%":"undefined"===typeof Float64Array?r:Float64Array,"%FinalizationRegistry%":"undefined"===typeof FinalizationRegistry?r:FinalizationRegistry,"%Function%":d,"%GeneratorFunction%":b,"%Int8Array%":"undefined"===typeof Int8Array?r:Int8Array,"%Int16Array%":"undefined"===typeof Int16Array?r:Int16Array,"%Int32Array%":"undefined"===typeof Int32Array?r:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":g&&y?y(y([][Symbol.iterator]())):r,"%JSON%":"object"===typeof JSON?JSON:r,"%Map%":"undefined"===typeof Map?r:Map,"%MapIteratorPrototype%":"undefined"!==typeof Map&&g&&y?y((new Map)[Symbol.iterator]()):r,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"===typeof Promise?r:Promise,"%Proxy%":"undefined"===typeof Proxy?r:Proxy,"%RangeError%":a,"%ReferenceError%":s,"%Reflect%":"undefined"===typeof Reflect?r:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"===typeof Set?r:Set,"%SetIteratorPrototype%":"undefined"!==typeof Set&&g&&y?y((new Set)[Symbol.iterator]()):r,"%SharedArrayBuffer%":"undefined"===typeof SharedArrayBuffer?r:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":g&&y?y(""[Symbol.iterator]()):r,"%Symbol%":g?Symbol:r,"%SyntaxError%":l,"%ThrowTypeError%":m,"%TypedArray%":x,"%TypeError%":c,"%Uint8Array%":"undefined"===typeof Uint8Array?r:Uint8Array,"%Uint8ClampedArray%":"undefined"===typeof Uint8ClampedArray?r:Uint8ClampedArray,"%Uint16Array%":"undefined"===typeof Uint16Array?r:Uint16Array,"%Uint32Array%":"undefined"===typeof Uint32Array?r:Uint32Array,"%URIError%":u,"%WeakMap%":"undefined"===typeof WeakMap?r:WeakMap,"%WeakRef%":"undefined"===typeof WeakRef?r:WeakRef,"%WeakSet%":"undefined"===typeof WeakSet?r:WeakSet};if(y)try{null.error}catch(M){var S=y(y(M));w["%Error.prototype%"]=S}var _=function e(t){var n;if("%AsyncFunction%"===t)n=h("async function () {}");else if("%GeneratorFunction%"===t)n=h("function* () {}");else if("%AsyncGeneratorFunction%"===t)n=h("async function* () {}");else if("%AsyncGenerator%"===t){var r=e("%AsyncGeneratorFunction%");r&&(n=r.prototype)}else if("%AsyncIteratorPrototype%"===t){var i=e("%AsyncGenerator%");i&&y&&(n=y(i.prototype))}return w[t]=n,n},C={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},E=n(88050),T=n(17652),O=E.call(Function.call,Array.prototype.concat),N=E.call(Function.apply,Array.prototype.splice),k=E.call(Function.call,String.prototype.replace),j=E.call(Function.call,String.prototype.slice),I=E.call(Function.call,RegExp.prototype.exec),P=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,D=/\\(\\)?/g,A=function(e){var t=j(e,0,1),n=j(e,-1);if("%"===t&&"%"!==n)throw new l("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==t)throw new l("invalid intrinsic syntax, expected opening `%`");var r=[];return k(e,P,(function(e,t,n,i){r[r.length]=n?k(i,D,"$1"):t||e})),r},R=function(e,t){var n,r=e;if(T(C,r)&&(r="%"+(n=C[r])[0]+"%"),T(w,r)){var i=w[r];if(i===b&&(i=_(r)),"undefined"===typeof i&&!t)throw new c("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:n,name:r,value:i}}throw new l("intrinsic "+e+" does not exist!")};e.exports=function(e,t){if("string"!==typeof e||0===e.length)throw new c("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!==typeof t)throw new c('"allowMissing" argument must be a boolean');if(null===I(/^%?[^%]*%?$/,e))throw new l("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=A(e),r=n.length>0?n[0]:"",i=R("%"+r+"%",t),o=i.name,a=i.value,s=!1,u=i.alias;u&&(r=u[0],N(n,O([0,1],u)));for(var d=1,h=!0;d=n.length){var v=p(a,f);a=(h=!!v)&&"get"in v&&!("originalValue"in v.get)?v.get:a[f]}else h=T(a,f),a=a[f];h&&!s&&(w[o]=a)}}return a}},81687:(e,t,n)=>{"use strict";var r=n(42780)("%Object.getOwnPropertyDescriptor%",!0);if(r)try{r([],"length")}catch(i){r=null}e.exports=r},43597:(e,t,n)=>{"use strict";var r=n(85122),i=function(){return!!r};i.hasArrayLengthDefineBug=function(){if(!r)return null;try{return 1!==r([],"length",{value:1}).length}catch(e){return!0}},e.exports=i},29571:e=>{"use strict";var t={__proto__:null,foo:{}},n=Object;e.exports=function(){return{__proto__:t}.foo===t.foo&&!(t instanceof n)}},83895:(e,t,n)=>{"use strict";var r="undefined"!==typeof Symbol&&Symbol,i=n(75687);e.exports=function(){return"function"===typeof r&&("function"===typeof Symbol&&("symbol"===typeof r("foo")&&("symbol"===typeof Symbol("bar")&&i())))}},75687:e=>{"use strict";e.exports=function(){if("function"!==typeof Symbol||"function"!==typeof Object.getOwnPropertySymbols)return!1;if("symbol"===typeof Symbol.iterator)return!0;var e={},t=Symbol("test"),n=Object(t);if("string"===typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(t in e[t]=42,e)return!1;if("function"===typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"===typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;var r=Object.getOwnPropertySymbols(e);if(1!==r.length||r[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"===typeof Object.getOwnPropertyDescriptor){var i=Object.getOwnPropertyDescriptor(e,t);if(42!==i.value||!0!==i.enumerable)return!1}return!0}},17652:(e,t,n)=>{"use strict";var r=Function.prototype.call,i=Object.prototype.hasOwnProperty,o=n(88050);e.exports=o.call(r,i)},91668:(e,t,n)=>{"use strict";n.d(t,{lX:()=>_,q_:()=>k,ob:()=>m,PP:()=>I,Ep:()=>f,Hp:()=>g});var r=n(87462);function i(e){return"/"===e.charAt(0)}function o(e,t){for(var n=t,r=n+1,i=e.length;r=0;h--){var p=a[h];"."===p?o(a,h):".."===p?(o(a,h),d++):d&&(o(a,h),d--)}if(!c)for(;d--;d)a.unshift("..");!c||""===a[0]||a[0]&&i(a[0])||a.unshift("");var f=a.join("/");return n&&"/"!==f.substr(-1)&&(f+="/"),f};function s(e){return e.valueOf?e.valueOf():Object.prototype.valueOf.call(e)}const l=function e(t,n){if(t===n)return!0;if(null==t||null==n)return!1;if(Array.isArray(t))return Array.isArray(n)&&t.length===n.length&&t.every((function(t,r){return e(t,n[r])}));if("object"===typeof t||"object"===typeof n){var r=s(t),i=s(n);return r!==t||i!==n?e(r,i):Object.keys(Object.assign({},t,n)).every((function(r){return e(t[r],n[r])}))}return!1};var c=n(35731);function u(e){return"/"===e.charAt(0)?e:"/"+e}function d(e){return"/"===e.charAt(0)?e.substr(1):e}function h(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function p(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function f(e){var t=e.pathname,n=e.search,r=e.hash,i=t||"/";return n&&"?"!==n&&(i+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(i+="#"===r.charAt(0)?r:"#"+r),i}function m(e,t,n,i){var o;"string"===typeof e?(o=function(e){var t=e||"/",n="",r="",i=t.indexOf("#");-1!==i&&(r=t.substr(i),t=t.substr(0,i));var o=t.indexOf("?");return-1!==o&&(n=t.substr(o),t=t.substr(0,o)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),o.state=t):(void 0===(o=(0,r.Z)({},e)).pathname&&(o.pathname=""),o.search?"?"!==o.search.charAt(0)&&(o.search="?"+o.search):o.search="",o.hash?"#"!==o.hash.charAt(0)&&(o.hash="#"+o.hash):o.hash="",void 0!==t&&void 0===o.state&&(o.state=t));try{o.pathname=decodeURI(o.pathname)}catch(s){throw s instanceof URIError?new URIError('Pathname "'+o.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):s}return n&&(o.key=n),i?o.pathname?"/"!==o.pathname.charAt(0)&&(o.pathname=a(o.pathname,i.pathname)):o.pathname=i.pathname:o.pathname||(o.pathname="/"),o}function g(e,t){return e.pathname===t.pathname&&e.search===t.search&&e.hash===t.hash&&e.key===t.key&&l(e.state,t.state)}function v(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,i){if(null!=e){var o="function"===typeof e?e(t,n):e;"string"===typeof o?"function"===typeof r?r(o,i):i(!0):i(!1!==o)}else i(!0)},appendListener:function(e){var n=!0;function r(){n&&e.apply(void 0,arguments)}return t.push(r),function(){n=!1,t=t.filter((function(e){return e!==r}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),r=0;rt?n.splice(t,n.length-t,i):n.push(i),d({action:r,location:i,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",i=m(e,t,h(),x.location);u.confirmTransitionTo(i,r,n,(function(e){e&&(x.entries[x.index]=i,d({action:r,location:i}))}))},go:b,goBack:function(){b(-1)},goForward:function(){b(1)},canGo:function(e){var t=x.index+e;return t>=0&&t{"use strict";var r=n(70248),i={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},a={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return r.isMemo(e)?a:s[e.$$typeof]||i}s[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[r.Memo]=a;var c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,h=Object.getOwnPropertyDescriptor,p=Object.getPrototypeOf,f=Object.prototype;e.exports=function e(t,n,r){if("string"!==typeof n){if(f){var i=p(n);i&&i!==f&&e(t,i,r)}var a=u(n);d&&(a=a.concat(d(n)));for(var s=l(t),m=l(n),g=0;g{"use strict";var n="function"===typeof Symbol&&Symbol.for,r=n?Symbol.for("react.element"):60103,i=n?Symbol.for("react.portal"):60106,o=n?Symbol.for("react.fragment"):60107,a=n?Symbol.for("react.strict_mode"):60108,s=n?Symbol.for("react.profiler"):60114,l=n?Symbol.for("react.provider"):60109,c=n?Symbol.for("react.context"):60110,u=n?Symbol.for("react.async_mode"):60111,d=n?Symbol.for("react.concurrent_mode"):60111,h=n?Symbol.for("react.forward_ref"):60112,p=n?Symbol.for("react.suspense"):60113,f=n?Symbol.for("react.suspense_list"):60120,m=n?Symbol.for("react.memo"):60115,g=n?Symbol.for("react.lazy"):60116,v=n?Symbol.for("react.block"):60121,y=n?Symbol.for("react.fundamental"):60117,b=n?Symbol.for("react.responder"):60118,x=n?Symbol.for("react.scope"):60119;function w(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case u:case d:case o:case s:case a:case p:return e;default:switch(e=e&&e.$$typeof){case c:case h:case g:case m:case l:return e;default:return t}}case i:return t}}}function S(e){return w(e)===d}t.AsyncMode=u,t.ConcurrentMode=d,t.ContextConsumer=c,t.ContextProvider=l,t.Element=r,t.ForwardRef=h,t.Fragment=o,t.Lazy=g,t.Memo=m,t.Portal=i,t.Profiler=s,t.StrictMode=a,t.Suspense=p,t.isAsyncMode=function(e){return S(e)||w(e)===u},t.isConcurrentMode=S,t.isContextConsumer=function(e){return w(e)===c},t.isContextProvider=function(e){return w(e)===l},t.isElement=function(e){return"object"===typeof e&&null!==e&&e.$$typeof===r},t.isForwardRef=function(e){return w(e)===h},t.isFragment=function(e){return w(e)===o},t.isLazy=function(e){return w(e)===g},t.isMemo=function(e){return w(e)===m},t.isPortal=function(e){return w(e)===i},t.isProfiler=function(e){return w(e)===s},t.isStrictMode=function(e){return w(e)===a},t.isSuspense=function(e){return w(e)===p},t.isValidElementType=function(e){return"string"===typeof e||"function"===typeof e||e===o||e===d||e===s||e===a||e===p||e===f||"object"===typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===m||e.$$typeof===l||e.$$typeof===c||e.$$typeof===h||e.$$typeof===y||e.$$typeof===b||e.$$typeof===x||e.$$typeof===v)},t.typeOf=w},70248:(e,t,n)=>{"use strict";e.exports=n(17943)},32733:e=>{"use strict";e.exports=function(e,t,n,r,i,o,a,s){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,i,o,a,s],u=0;(l=new Error(t.replace(/%s/g,(function(){return c[u++]})))).name="Invariant Violation"}throw l.framesToPop=1,l}}},49099:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},22849:(e,t,n)=>{var r=n(72892)(n(57849),"DataView");e.exports=r},90145:(e,t,n)=>{var r=n(29076),i=n(76009),o=n(86992),a=n(59120),s=n(25899);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var r=n(29917),i=n(43490),o=n(64872),a=n(21744),s=n(88820);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var r=n(72892)(n(57849),"Map");e.exports=r},47059:(e,t,n)=>{var r=n(27161),i=n(65317),o=n(93297),a=n(25771),s=n(633);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var r=n(72892)(n(57849),"Promise");e.exports=r},70607:(e,t,n)=>{var r=n(72892)(n(57849),"Set");e.exports=r},75304:(e,t,n)=>{var r=n(47059),i=n(93648),o=n(56683);function a(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t{var r=n(18084),i=n(41662),o=n(97368),a=n(87454),s=n(16596),l=n(32052);function c(e){var t=this.__data__=new r(e);this.size=t.size}c.prototype.clear=i,c.prototype.delete=o,c.prototype.get=a,c.prototype.has=s,c.prototype.set=l,e.exports=c},62279:(e,t,n)=>{var r=n(57849).Symbol;e.exports=r},91385:(e,t,n)=>{var r=n(57849).Uint8Array;e.exports=r},20177:(e,t,n)=>{var r=n(72892)(n(57849),"WeakMap");e.exports=r},12539:e=>{e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},38626:e=>{e.exports=function(e,t,n,r){for(var i=-1,o=null==e?0:e.length;++i{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,i=0,o=[];++n{var r=n(34698);e.exports=function(e,t){return!!(null==e?0:e.length)&&r(e,t,0)>-1}},58713:e=>{e.exports=function(e,t,n){for(var r=-1,i=null==e?0:e.length;++r{var r=n(94558),i=n(38492),o=n(46296),a=n(98267),s=n(64764),l=n(34057),c=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=o(e),u=!n&&i(e),d=!n&&!u&&a(e),h=!n&&!u&&!d&&l(e),p=n||u||d||h,f=p?r(e.length,String):[],m=f.length;for(var g in e)!t&&!c.call(e,g)||p&&("length"==g||d&&("offset"==g||"parent"==g)||h&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||s(g,m))||f.push(g);return f}},40341:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,i=Array(r);++n{e.exports=function(e,t){for(var n=-1,r=t.length,i=e.length;++n{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n{e.exports=function(e){return e.split("")}},17509:(e,t,n)=>{var r=n(69519),i=n(83272);e.exports=function(e,t,n){(void 0!==n&&!i(e[t],n)||void 0===n&&!(t in e))&&r(e,t,n)}},49237:(e,t,n)=>{var r=n(69519),i=n(83272),o=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var a=e[t];o.call(e,t)&&i(a,n)&&(void 0!==n||t in e)||r(e,t,n)}},11786:(e,t,n)=>{var r=n(83272);e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},30277:(e,t,n)=>{var r=n(46067);e.exports=function(e,t,n,i){return r(e,(function(e,r,o){t(i,e,n(e),o)})),i}},74671:(e,t,n)=>{var r=n(81742),i=n(25484);e.exports=function(e,t){return e&&r(t,i(t),e)}},67950:(e,t,n)=>{var r=n(81742),i=n(71973);e.exports=function(e,t){return e&&r(t,i(t),e)}},69519:(e,t,n)=>{var r=n(5216);e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},1952:(e,t,n)=>{var r=n(15004),i=n(35219),o=n(49237),a=n(74671),s=n(67950),l=n(78002),c=n(10073),u=n(62877),d=n(5963),h=n(20922),p=n(99970),f=n(5313),m=n(84279),g=n(96579),v=n(93750),y=n(46296),b=n(98267),x=n(92142),w=n(95188),S=n(77411),_=n(25484),C=n(71973),E=1,T=2,O=4,N="[object Arguments]",k="[object Function]",j="[object GeneratorFunction]",I="[object Object]",P={};P[N]=P["[object Array]"]=P["[object ArrayBuffer]"]=P["[object DataView]"]=P["[object Boolean]"]=P["[object Date]"]=P["[object Float32Array]"]=P["[object Float64Array]"]=P["[object Int8Array]"]=P["[object Int16Array]"]=P["[object Int32Array]"]=P["[object Map]"]=P["[object Number]"]=P[I]=P["[object RegExp]"]=P["[object Set]"]=P["[object String]"]=P["[object Symbol]"]=P["[object Uint8Array]"]=P["[object Uint8ClampedArray]"]=P["[object Uint16Array]"]=P["[object Uint32Array]"]=!0,P["[object Error]"]=P[k]=P["[object WeakMap]"]=!1,e.exports=function e(t,n,D,A,R,M){var L,F=n&E,z=n&T,B=n&O;if(D&&(L=R?D(t,A,R,M):D(t)),void 0!==L)return L;if(!w(t))return t;var U=y(t);if(U){if(L=m(t),!F)return c(t,L)}else{var H=f(t),V=H==k||H==j;if(b(t))return l(t,F);if(H==I||H==N||V&&!R){if(L=z||V?{}:v(t),!F)return z?d(t,s(L,t)):u(t,a(L,t))}else{if(!P[H])return R?t:{};L=g(t,H,F)}}M||(M=new r);var G=M.get(t);if(G)return G;M.set(t,L),S(t)?t.forEach((function(r){L.add(e(r,n,D,r,t,M))})):x(t)&&t.forEach((function(r,i){L.set(i,e(r,n,D,i,t,M))}));var W=U?void 0:(B?z?p:h:z?C:_)(t);return i(W||t,(function(r,i){W&&(r=t[i=r]),o(L,i,e(r,n,D,i,t,M))})),L}},16925:(e,t,n)=>{var r=n(95188),i=Object.create,o=function(){function e(){}return function(t){if(!r(t))return{};if(i)return i(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();e.exports=o},46067:(e,t,n)=>{var r=n(56713),i=n(79607)(r);e.exports=i},81601:e=>{e.exports=function(e,t,n,r){for(var i=e.length,o=n+(r?1:-1);r?o--:++o{var r=n(17174),i=n(85157);e.exports=function e(t,n,o,a,s){var l=-1,c=t.length;for(o||(o=i),s||(s=[]);++l0&&o(u)?n>1?e(u,n-1,o,a,s):r(s,u):a||(s[s.length]=u)}return s}},97539:(e,t,n)=>{var r=n(15375)();e.exports=r},56713:(e,t,n)=>{var r=n(97539),i=n(25484);e.exports=function(e,t){return e&&r(e,t,i)}},8013:(e,t,n)=>{var r=n(31534),i=n(6996);e.exports=function(e,t){for(var n=0,o=(t=r(t,e)).length;null!=e&&n{var r=n(17174),i=n(46296);e.exports=function(e,t,n){var o=t(e);return i(e)?o:r(o,n(e))}},59704:(e,t,n)=>{var r=n(62279),i=n(6419),o=n(66949),a="[object Null]",s="[object Undefined]",l=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?s:a:l&&l in Object(e)?i(e):o(e)}},61964:e=>{e.exports=function(e,t){return null!=e&&t in Object(e)}},34698:(e,t,n)=>{var r=n(81601),i=n(49690),o=n(44395);e.exports=function(e,t,n){return t===t?o(e,t,n):r(e,i,n)}},43562:(e,t,n)=>{var r=n(59704),i=n(22542),o="[object Arguments]";e.exports=function(e){return i(e)&&r(e)==o}},94193:(e,t,n)=>{var r=n(17345),i=n(22542);e.exports=function e(t,n,o,a,s){return t===n||(null==t||null==n||!i(t)&&!i(n)?t!==t&&n!==n:r(t,n,o,a,e,s))}},17345:(e,t,n)=>{var r=n(15004),i=n(89886),o=n(63811),a=n(80163),s=n(5313),l=n(46296),c=n(98267),u=n(34057),d=1,h="[object Arguments]",p="[object Array]",f="[object Object]",m=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,g,v,y){var b=l(e),x=l(t),w=b?p:s(e),S=x?p:s(t),_=(w=w==h?f:w)==f,C=(S=S==h?f:S)==f,E=w==S;if(E&&c(e)){if(!c(t))return!1;b=!0,_=!1}if(E&&!_)return y||(y=new r),b||u(e)?i(e,t,n,g,v,y):o(e,t,w,n,g,v,y);if(!(n&d)){var T=_&&m.call(e,"__wrapped__"),O=C&&m.call(t,"__wrapped__");if(T||O){var N=T?e.value():e,k=O?t.value():t;return y||(y=new r),v(N,k,n,g,y)}}return!!E&&(y||(y=new r),a(e,t,n,g,v,y))}},90247:(e,t,n)=>{var r=n(5313),i=n(22542),o="[object Map]";e.exports=function(e){return i(e)&&r(e)==o}},56358:(e,t,n)=>{var r=n(15004),i=n(94193),o=1,a=2;e.exports=function(e,t,n,s){var l=n.length,c=l,u=!s;if(null==e)return!c;for(e=Object(e);l--;){var d=n[l];if(u&&d[2]?d[1]!==e[d[0]]:!(d[0]in e))return!1}for(;++l{e.exports=function(e){return e!==e}},70270:(e,t,n)=>{var r=n(81188),i=n(28502),o=n(95188),a=n(21616),s=/^\[object .+?Constructor\]$/,l=Function.prototype,c=Object.prototype,u=l.toString,d=c.hasOwnProperty,h=RegExp("^"+u.call(d).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!o(e)||i(e))&&(r(e)?h:s).test(a(e))}},81594:(e,t,n)=>{var r=n(5313),i=n(22542),o="[object Set]";e.exports=function(e){return i(e)&&r(e)==o}},77088:(e,t,n)=>{var r=n(59704),i=n(18564),o=n(22542),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1,e.exports=function(e){return o(e)&&i(e.length)&&!!a[r(e)]}},67173:(e,t,n)=>{var r=n(61059),i=n(31451),o=n(5887),a=n(46296),s=n(90310);e.exports=function(e){return"function"==typeof e?e:null==e?o:"object"==typeof e?a(e)?i(e[0],e[1]):r(e):s(e)}},36539:(e,t,n)=>{var r=n(55241),i=n(8848),o=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return i(e);var t=[];for(var n in Object(e))o.call(e,n)&&"constructor"!=n&&t.push(n);return t}},35487:(e,t,n)=>{var r=n(95188),i=n(55241),o=n(97122),a=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return o(e);var t=i(e),n=[];for(var s in e)("constructor"!=s||!t&&a.call(e,s))&&n.push(s);return n}},16484:(e,t,n)=>{var r=n(46067),i=n(75345);e.exports=function(e,t){var n=-1,o=i(e)?Array(e.length):[];return r(e,(function(e,r,i){o[++n]=t(e,r,i)})),o}},61059:(e,t,n)=>{var r=n(56358),i=n(58428),o=n(41452);e.exports=function(e){var t=i(e);return 1==t.length&&t[0][2]?o(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},31451:(e,t,n)=>{var r=n(94193),i=n(63639),o=n(32183),a=n(32014),s=n(62752),l=n(41452),c=n(6996),u=1,d=2;e.exports=function(e,t){return a(e)&&s(t)?l(c(e),t):function(n){var a=i(n,e);return void 0===a&&a===t?o(n,e):r(t,a,u|d)}}},28141:(e,t,n)=>{var r=n(15004),i=n(17509),o=n(97539),a=n(13149),s=n(95188),l=n(71973),c=n(49864);e.exports=function e(t,n,u,d,h){t!==n&&o(n,(function(o,l){if(h||(h=new r),s(o))a(t,n,l,u,e,d,h);else{var p=d?d(c(t,l),o,l+"",t,n,h):void 0;void 0===p&&(p=o),i(t,l,p)}}),l)}},13149:(e,t,n)=>{var r=n(17509),i=n(78002),o=n(39044),a=n(10073),s=n(93750),l=n(38492),c=n(46296),u=n(55109),d=n(98267),h=n(81188),p=n(95188),f=n(39010),m=n(34057),g=n(49864),v=n(78226);e.exports=function(e,t,n,y,b,x,w){var S=g(e,n),_=g(t,n),C=w.get(_);if(C)r(e,n,C);else{var E=x?x(S,_,n+"",e,t,w):void 0,T=void 0===E;if(T){var O=c(_),N=!O&&d(_),k=!O&&!N&&m(_);E=_,O||N||k?c(S)?E=S:u(S)?E=a(S):N?(T=!1,E=i(_,!0)):k?(T=!1,E=o(_,!0)):E=[]:f(_)||l(_)?(E=S,l(S)?E=v(S):p(S)&&!h(S)||(E=s(_))):T=!1}T&&(w.set(_,E),b(E,_,y,x,w),w.delete(_)),r(e,n,E)}}},16076:e=>{e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},9270:(e,t,n)=>{var r=n(8013);e.exports=function(e){return function(t){return r(t,e)}}},55199:e=>{var t=Math.ceil,n=Math.max;e.exports=function(e,r,i,o){for(var a=-1,s=n(t((r-e)/(i||1)),0),l=Array(s);s--;)l[o?s:++a]=e,e+=i;return l}},42872:(e,t,n)=>{var r=n(5887),i=n(60485),o=n(37232);e.exports=function(e,t){return o(i(e,t,r),e+"")}},93848:(e,t,n)=>{var r=n(49237),i=n(31534),o=n(64764),a=n(95188),s=n(6996);e.exports=function(e,t,n,l){if(!a(e))return e;for(var c=-1,u=(t=i(t,e)).length,d=u-1,h=e;null!=h&&++c{var r=n(71715),i=n(5216),o=n(5887),a=i?function(e,t){return i(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:o;e.exports=a},12287:e=>{e.exports=function(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(n=n>i?i:n)<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var o=Array(i);++r{var r=n(46067);e.exports=function(e,t){var n;return r(e,(function(e,r,i){return!(n=t(e,r,i))})),!!n}},94558:e=>{e.exports=function(e,t){for(var n=-1,r=Array(e);++n{var r=n(62279),i=n(40341),o=n(46296),a=n(36197),s=1/0,l=r?r.prototype:void 0,c=l?l.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(o(t))return i(t,e)+"";if(a(t))return c?c.call(t):"";var n=t+"";return"0"==n&&1/t==-s?"-0":n}},10480:(e,t,n)=>{var r=n(86948),i=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(i,""):e}},31702:e=>{e.exports=function(e){return function(t){return e(t)}}},28241:(e,t,n)=>{var r=n(75304),i=n(73784),o=n(58713),a=n(58024),s=n(54289),l=n(35886),c=200;e.exports=function(e,t,n){var u=-1,d=i,h=e.length,p=!0,f=[],m=f;if(n)p=!1,d=o;else if(h>=c){var g=t?null:s(e);if(g)return l(g);p=!1,d=a,m=new r}else m=t?[]:f;e:for(;++u{var r=n(31534),i=n(10207),o=n(25472),a=n(6996);e.exports=function(e,t){return t=r(t,e),null==(e=o(e,t))||delete e[a(i(t))]}},58024:e=>{e.exports=function(e,t){return e.has(t)}},44499:(e,t,n)=>{var r=n(5887);e.exports=function(e){return"function"==typeof e?e:r}},31534:(e,t,n)=>{var r=n(46296),i=n(32014),o=n(18502),a=n(51001);e.exports=function(e,t){return r(e)?e:i(e,t)?[e]:o(a(e))}},94864:(e,t,n)=>{var r=n(12287);e.exports=function(e,t,n){var i=e.length;return n=void 0===n?i:n,!t&&n>=i?e:r(e,t,n)}},83226:(e,t,n)=>{var r=n(91385);e.exports=function(e){var t=new e.constructor(e.byteLength);return new r(t).set(new r(e)),t}},78002:(e,t,n)=>{e=n.nmd(e);var r=n(57849),i=t&&!t.nodeType&&t,o=i&&e&&!e.nodeType&&e,a=o&&o.exports===i?r.Buffer:void 0,s=a?a.allocUnsafe:void 0;e.exports=function(e,t){if(t)return e.slice();var n=e.length,r=s?s(n):new e.constructor(n);return e.copy(r),r}},83544:(e,t,n)=>{var r=n(83226);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}},51970:e=>{var t=/\w*$/;e.exports=function(e){var n=new e.constructor(e.source,t.exec(e));return n.lastIndex=e.lastIndex,n}},16754:(e,t,n)=>{var r=n(62279),i=r?r.prototype:void 0,o=i?i.valueOf:void 0;e.exports=function(e){return o?Object(o.call(e)):{}}},39044:(e,t,n)=>{var r=n(83226);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}},10073:e=>{e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n{var r=n(49237),i=n(69519);e.exports=function(e,t,n,o){var a=!n;n||(n={});for(var s=-1,l=t.length;++s{var r=n(81742),i=n(2760);e.exports=function(e,t){return r(e,i(e),t)}},5963:(e,t,n)=>{var r=n(81742),i=n(68825);e.exports=function(e,t){return r(e,i(e),t)}},81401:(e,t,n)=>{var r=n(57849)["__core-js_shared__"];e.exports=r},81670:(e,t,n)=>{var r=n(38626),i=n(30277),o=n(67173),a=n(46296);e.exports=function(e,t){return function(n,s){var l=a(n)?r:i,c=t?t():{};return l(n,e,o(s,2),c)}}},89490:(e,t,n)=>{var r=n(42872),i=n(10335);e.exports=function(e){return r((function(t,n){var r=-1,o=n.length,a=o>1?n[o-1]:void 0,s=o>2?n[2]:void 0;for(a=e.length>3&&"function"==typeof a?(o--,a):void 0,s&&i(n[0],n[1],s)&&(a=o<3?void 0:a,o=1),t=Object(t);++r{var r=n(75345);e.exports=function(e,t){return function(n,i){if(null==n)return n;if(!r(n))return e(n,i);for(var o=n.length,a=t?o:-1,s=Object(n);(t?a--:++a{e.exports=function(e){return function(t,n,r){for(var i=-1,o=Object(t),a=r(t),s=a.length;s--;){var l=a[e?s:++i];if(!1===n(o[l],l,o))break}return t}}},57918:(e,t,n)=>{var r=n(94864),i=n(98099),o=n(92606),a=n(51001);e.exports=function(e){return function(t){t=a(t);var n=i(t)?o(t):void 0,s=n?n[0]:t.charAt(0),l=n?r(n,1).join(""):t.slice(1);return s[e]()+l}}},77529:(e,t,n)=>{var r=n(55199),i=n(10335),o=n(85850);e.exports=function(e){return function(t,n,a){return a&&"number"!=typeof a&&i(t,n,a)&&(n=a=void 0),t=o(t),void 0===n?(n=t,t=0):n=o(n),a=void 0===a?t{var r=n(57849),i=n(94100),o=n(57630),a=n(51001),s=r.isFinite,l=Math.min;e.exports=function(e){var t=Math[e];return function(e,n){if(e=o(e),(n=null==n?0:l(i(n),292))&&s(e)){var r=(a(e)+"e").split("e"),c=t(r[0]+"e"+(+r[1]+n));return+((r=(a(c)+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}},54289:(e,t,n)=>{var r=n(70607),i=n(91200),o=n(35886),a=r&&1/o(new r([,-0]))[1]==1/0?function(e){return new r(e)}:i;e.exports=a},96274:(e,t,n)=>{var r=n(39010);e.exports=function(e){return r(e)?void 0:e}},5216:(e,t,n)=>{var r=n(72892),i=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();e.exports=i},89886:(e,t,n)=>{var r=n(75304),i=n(7138),o=n(58024),a=1,s=2;e.exports=function(e,t,n,l,c,u){var d=n&a,h=e.length,p=t.length;if(h!=p&&!(d&&p>h))return!1;var f=u.get(e),m=u.get(t);if(f&&m)return f==t&&m==e;var g=-1,v=!0,y=n&s?new r:void 0;for(u.set(e,t),u.set(t,e);++g{var r=n(62279),i=n(91385),o=n(83272),a=n(89886),s=n(69278),l=n(35886),c=1,u=2,d="[object Boolean]",h="[object Date]",p="[object Error]",f="[object Map]",m="[object Number]",g="[object RegExp]",v="[object Set]",y="[object String]",b="[object Symbol]",x="[object ArrayBuffer]",w="[object DataView]",S=r?r.prototype:void 0,_=S?S.valueOf:void 0;e.exports=function(e,t,n,r,S,C,E){switch(n){case w:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case x:return!(e.byteLength!=t.byteLength||!C(new i(e),new i(t)));case d:case h:case m:return o(+e,+t);case p:return e.name==t.name&&e.message==t.message;case g:case y:return e==t+"";case f:var T=s;case v:var O=r&c;if(T||(T=l),e.size!=t.size&&!O)return!1;var N=E.get(e);if(N)return N==t;r|=u,E.set(e,t);var k=a(T(e),T(t),r,S,C,E);return E.delete(e),k;case b:if(_)return _.call(e)==_.call(t)}return!1}},80163:(e,t,n)=>{var r=n(20922),i=1,o=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,a,s,l){var c=n&i,u=r(e),d=u.length;if(d!=r(t).length&&!c)return!1;for(var h=d;h--;){var p=u[h];if(!(c?p in t:o.call(t,p)))return!1}var f=l.get(e),m=l.get(t);if(f&&m)return f==t&&m==e;var g=!0;l.set(e,t),l.set(t,e);for(var v=c;++h{var r=n(83298),i=n(60485),o=n(37232);e.exports=function(e){return o(i(e,void 0,r),e+"")}},46099:(e,t,n)=>{var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=r},20922:(e,t,n)=>{var r=n(49178),i=n(2760),o=n(25484);e.exports=function(e){return r(e,o,i)}},99970:(e,t,n)=>{var r=n(49178),i=n(68825),o=n(71973);e.exports=function(e){return r(e,o,i)}},89511:(e,t,n)=>{var r=n(50565);e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},58428:(e,t,n)=>{var r=n(62752),i=n(25484);e.exports=function(e){for(var t=i(e),n=t.length;n--;){var o=t[n],a=e[o];t[n]=[o,a,r(a)]}return t}},72892:(e,t,n)=>{var r=n(70270),i=n(97453);e.exports=function(e,t){var n=i(e,t);return r(n)?n:void 0}},36842:(e,t,n)=>{var r=n(38007)(Object.getPrototypeOf,Object);e.exports=r},6419:(e,t,n)=>{var r=n(62279),i=Object.prototype,o=i.hasOwnProperty,a=i.toString,s=r?r.toStringTag:void 0;e.exports=function(e){var t=o.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(l){}var i=a.call(e);return r&&(t?e[s]=n:delete e[s]),i}},2760:(e,t,n)=>{var r=n(82169),i=n(92128),o=Object.prototype.propertyIsEnumerable,a=Object.getOwnPropertySymbols,s=a?function(e){return null==e?[]:(e=Object(e),r(a(e),(function(t){return o.call(e,t)})))}:i;e.exports=s},68825:(e,t,n)=>{var r=n(17174),i=n(36842),o=n(2760),a=n(92128),s=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)r(t,o(e)),e=i(e);return t}:a;e.exports=s},5313:(e,t,n)=>{var r=n(22849),i=n(44086),o=n(42115),a=n(70607),s=n(20177),l=n(59704),c=n(21616),u="[object Map]",d="[object Promise]",h="[object Set]",p="[object WeakMap]",f="[object DataView]",m=c(r),g=c(i),v=c(o),y=c(a),b=c(s),x=l;(r&&x(new r(new ArrayBuffer(1)))!=f||i&&x(new i)!=u||o&&x(o.resolve())!=d||a&&x(new a)!=h||s&&x(new s)!=p)&&(x=function(e){var t=l(e),n="[object Object]"==t?e.constructor:void 0,r=n?c(n):"";if(r)switch(r){case m:return f;case g:return u;case v:return d;case y:return h;case b:return p}return t}),e.exports=x},97453:e=>{e.exports=function(e,t){return null==e?void 0:e[t]}},5538:(e,t,n)=>{var r=n(31534),i=n(38492),o=n(46296),a=n(64764),s=n(18564),l=n(6996);e.exports=function(e,t,n){for(var c=-1,u=(t=r(t,e)).length,d=!1;++c{var t=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");e.exports=function(e){return t.test(e)}},29076:(e,t,n)=>{var r=n(18501);e.exports=function(){this.__data__=r?r(null):{},this.size=0}},76009:e=>{e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},86992:(e,t,n)=>{var r=n(18501),i="__lodash_hash_undefined__",o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return n===i?void 0:n}return o.call(t,e)?t[e]:void 0}},59120:(e,t,n)=>{var r=n(18501),i=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:i.call(t,e)}},25899:(e,t,n)=>{var r=n(18501),i="__lodash_hash_undefined__";e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?i:t,this}},84279:e=>{var t=Object.prototype.hasOwnProperty;e.exports=function(e){var n=e.length,r=new e.constructor(n);return n&&"string"==typeof e[0]&&t.call(e,"index")&&(r.index=e.index,r.input=e.input),r}},96579:(e,t,n)=>{var r=n(83226),i=n(83544),o=n(51970),a=n(16754),s=n(39044),l="[object Boolean]",c="[object Date]",u="[object Map]",d="[object Number]",h="[object RegExp]",p="[object Set]",f="[object String]",m="[object Symbol]",g="[object ArrayBuffer]",v="[object DataView]",y="[object Float32Array]",b="[object Float64Array]",x="[object Int8Array]",w="[object Int16Array]",S="[object Int32Array]",_="[object Uint8Array]",C="[object Uint8ClampedArray]",E="[object Uint16Array]",T="[object Uint32Array]";e.exports=function(e,t,n){var O=e.constructor;switch(t){case g:return r(e);case l:case c:return new O(+e);case v:return i(e,n);case y:case b:case x:case w:case S:case _:case C:case E:case T:return s(e,n);case u:return new O;case d:case f:return new O(e);case h:return o(e);case p:return new O;case m:return a(e)}}},93750:(e,t,n)=>{var r=n(16925),i=n(36842),o=n(55241);e.exports=function(e){return"function"!=typeof e.constructor||o(e)?{}:r(i(e))}},85157:(e,t,n)=>{var r=n(62279),i=n(38492),o=n(46296),a=r?r.isConcatSpreadable:void 0;e.exports=function(e){return o(e)||i(e)||!!(a&&e&&e[a])}},64764:e=>{var t=9007199254740991,n=/^(?:0|[1-9]\d*)$/;e.exports=function(e,r){var i=typeof e;return!!(r=null==r?t:r)&&("number"==i||"symbol"!=i&&n.test(e))&&e>-1&&e%1==0&&e{var r=n(83272),i=n(75345),o=n(64764),a=n(95188);e.exports=function(e,t,n){if(!a(n))return!1;var s=typeof t;return!!("number"==s?i(n)&&o(t,n.length):"string"==s&&t in n)&&r(n[t],e)}},32014:(e,t,n)=>{var r=n(46296),i=n(36197),o=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!i(e))||(a.test(e)||!o.test(e)||null!=t&&e in Object(t))}},50565:e=>{e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},28502:(e,t,n)=>{var r=n(81401),i=function(){var e=/[^.]+$/.exec(r&&r.keys&&r.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();e.exports=function(e){return!!i&&i in e}},55241:e=>{var t=Object.prototype;e.exports=function(e){var n=e&&e.constructor;return e===("function"==typeof n&&n.prototype||t)}},62752:(e,t,n)=>{var r=n(95188);e.exports=function(e){return e===e&&!r(e)}},29917:e=>{e.exports=function(){this.__data__=[],this.size=0}},43490:(e,t,n)=>{var r=n(11786),i=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0)&&(n==t.length-1?t.pop():i.call(t,n,1),--this.size,!0)}},64872:(e,t,n)=>{var r=n(11786);e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},21744:(e,t,n)=>{var r=n(11786);e.exports=function(e){return r(this.__data__,e)>-1}},88820:(e,t,n)=>{var r=n(11786);e.exports=function(e,t){var n=this.__data__,i=r(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this}},27161:(e,t,n)=>{var r=n(90145),i=n(18084),o=n(44086);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(o||i),string:new r}}},65317:(e,t,n)=>{var r=n(89511);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},93297:(e,t,n)=>{var r=n(89511);e.exports=function(e){return r(this,e).get(e)}},25771:(e,t,n)=>{var r=n(89511);e.exports=function(e){return r(this,e).has(e)}},633:(e,t,n)=>{var r=n(89511);e.exports=function(e,t){var n=r(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this}},69278:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}},41452:e=>{e.exports=function(e,t){return function(n){return null!=n&&(n[e]===t&&(void 0!==t||e in Object(n)))}}},75103:(e,t,n)=>{var r=n(9161),i=500;e.exports=function(e){var t=r(e,(function(e){return n.size===i&&n.clear(),e})),n=t.cache;return t}},18501:(e,t,n)=>{var r=n(72892)(Object,"create");e.exports=r},8848:(e,t,n)=>{var r=n(38007)(Object.keys,Object);e.exports=r},97122:e=>{e.exports=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}},24542:(e,t,n)=>{e=n.nmd(e);var r=n(46099),i=t&&!t.nodeType&&t,o=i&&e&&!e.nodeType&&e,a=o&&o.exports===i&&r.process,s=function(){try{var e=o&&o.require&&o.require("util").types;return e||a&&a.binding&&a.binding("util")}catch(t){}}();e.exports=s},66949:e=>{var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},38007:e=>{e.exports=function(e,t){return function(n){return e(t(n))}}},60485:(e,t,n)=>{var r=n(12539),i=Math.max;e.exports=function(e,t,n){return t=i(void 0===t?e.length-1:t,0),function(){for(var o=arguments,a=-1,s=i(o.length-t,0),l=Array(s);++a{var r=n(8013),i=n(12287);e.exports=function(e,t){return t.length<2?e:r(e,i(t,0,-1))}},57849:(e,t,n)=>{var r=n(46099),i="object"==typeof self&&self&&self.Object===Object&&self,o=r||i||Function("return this")();e.exports=o},49864:e=>{e.exports=function(e,t){if(("constructor"!==t||"function"!==typeof e[t])&&"__proto__"!=t)return e[t]}},93648:e=>{var t="__lodash_hash_undefined__";e.exports=function(e){return this.__data__.set(e,t),this}},56683:e=>{e.exports=function(e){return this.__data__.has(e)}},35886:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}},37232:(e,t,n)=>{var r=n(24609),i=n(26552)(r);e.exports=i},26552:e=>{var t=800,n=16,r=Date.now;e.exports=function(e){var i=0,o=0;return function(){var a=r(),s=n-(a-o);if(o=a,s>0){if(++i>=t)return arguments[0]}else i=0;return e.apply(void 0,arguments)}}},41662:(e,t,n)=>{var r=n(18084);e.exports=function(){this.__data__=new r,this.size=0}},97368:e=>{e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},87454:e=>{e.exports=function(e){return this.__data__.get(e)}},16596:e=>{e.exports=function(e){return this.__data__.has(e)}},32052:(e,t,n)=>{var r=n(18084),i=n(44086),o=n(47059),a=200;e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var s=n.__data__;if(!i||s.length{e.exports=function(e,t,n){for(var r=n-1,i=e.length;++r{var r=n(58961),i=n(98099),o=n(55412);e.exports=function(e){return i(e)?o(e):r(e)}},18502:(e,t,n)=>{var r=n(75103),i=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,o=/\\(\\)?/g,a=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(i,(function(e,n,r,i){t.push(r?i.replace(o,"$1"):n||e)})),t}));e.exports=a},6996:(e,t,n)=>{var r=n(36197),i=1/0;e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-i?"-0":t}},21616:e=>{var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(n){}try{return e+""}catch(n){}}return""}},86948:e=>{var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},55412:e=>{var t="\\ud800-\\udfff",n="["+t+"]",r="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",i="\\ud83c[\\udffb-\\udfff]",o="[^"+t+"]",a="(?:\\ud83c[\\udde6-\\uddff]){2}",s="[\\ud800-\\udbff][\\udc00-\\udfff]",l="(?:"+r+"|"+i+")"+"?",c="[\\ufe0e\\ufe0f]?",u=c+l+("(?:\\u200d(?:"+[o,a,s].join("|")+")"+c+l+")*"),d="(?:"+[o+r+"?",r,a,s,n].join("|")+")",h=RegExp(i+"(?="+i+")|"+d+u,"g");e.exports=function(e){return e.match(h)||[]}},6381:(e,t,n)=>{var r=n(51001),i=n(17445);e.exports=function(e){return i(r(e).toLowerCase())}},63585:(e,t,n)=>{var r=n(1952),i=1,o=4;e.exports=function(e){return r(e,i|o)}},71715:e=>{e.exports=function(e){return function(){return e}}},57002:(e,t,n)=>{var r=n(95188),i=n(44864),o=n(57630),a="Expected a function",s=Math.max,l=Math.min;e.exports=function(e,t,n){var c,u,d,h,p,f,m=0,g=!1,v=!1,y=!0;if("function"!=typeof e)throw new TypeError(a);function b(t){var n=c,r=u;return c=u=void 0,m=t,h=e.apply(r,n)}function x(e){var n=e-f;return void 0===f||n>=t||n<0||v&&e-m>=d}function w(){var e=i();if(x(e))return S(e);p=setTimeout(w,function(e){var n=t-(e-f);return v?l(n,d-(e-m)):n}(e))}function S(e){return p=void 0,y&&c?b(e):(c=u=void 0,h)}function _(){var e=i(),n=x(e);if(c=arguments,u=this,f=e,n){if(void 0===p)return function(e){return m=e,p=setTimeout(w,t),g?b(e):h}(f);if(v)return clearTimeout(p),p=setTimeout(w,t),b(f)}return void 0===p&&(p=setTimeout(w,t)),h}return t=o(t)||0,r(n)&&(g=!!n.leading,d=(v="maxWait"in n)?s(o(n.maxWait)||0,t):d,y="trailing"in n?!!n.trailing:y),_.cancel=function(){void 0!==p&&clearTimeout(p),m=0,c=f=u=p=void 0},_.flush=function(){return void 0===p?h:S(i())},_}},84142:(e,t,n)=>{e.exports=n(27663)},83272:e=>{e.exports=function(e,t){return e===t||e!==e&&t!==t}},43680:(e,t,n)=>{var r=n(51001),i=/[\\^$.*+?()[\]{}|]/g,o=RegExp(i.source);e.exports=function(e){return(e=r(e))&&o.test(e)?e.replace(i,"\\$&"):e}},83298:(e,t,n)=>{var r=n(54412);e.exports=function(e){return(null==e?0:e.length)?r(e,1):[]}},27663:(e,t,n)=>{var r=n(35219),i=n(46067),o=n(44499),a=n(46296);e.exports=function(e,t){return(a(e)?r:i)(e,o(t))}},63639:(e,t,n)=>{var r=n(8013);e.exports=function(e,t,n){var i=null==e?void 0:r(e,t);return void 0===i?n:i}},46754:(e,t,n)=>{var r=n(69519),i=n(81670),o=Object.prototype.hasOwnProperty,a=i((function(e,t,n){o.call(e,n)?e[n].push(t):r(e,n,[t])}));e.exports=a},32183:(e,t,n)=>{var r=n(61964),i=n(5538);e.exports=function(e,t){return null!=e&&i(e,t,r)}},5887:e=>{e.exports=function(e){return e}},38492:(e,t,n)=>{var r=n(43562),i=n(22542),o=Object.prototype,a=o.hasOwnProperty,s=o.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(e){return i(e)&&a.call(e,"callee")&&!s.call(e,"callee")};e.exports=l},46296:e=>{var t=Array.isArray;e.exports=t},75345:(e,t,n)=>{var r=n(81188),i=n(18564);e.exports=function(e){return null!=e&&i(e.length)&&!r(e)}},55109:(e,t,n)=>{var r=n(75345),i=n(22542);e.exports=function(e){return i(e)&&r(e)}},98267:(e,t,n)=>{e=n.nmd(e);var r=n(57849),i=n(53388),o=t&&!t.nodeType&&t,a=o&&e&&!e.nodeType&&e,s=a&&a.exports===o?r.Buffer:void 0,l=(s?s.isBuffer:void 0)||i;e.exports=l},85198:(e,t,n)=>{var r=n(36539),i=n(5313),o=n(38492),a=n(46296),s=n(75345),l=n(98267),c=n(55241),u=n(34057),d="[object Map]",h="[object Set]",p=Object.prototype.hasOwnProperty;e.exports=function(e){if(null==e)return!0;if(s(e)&&(a(e)||"string"==typeof e||"function"==typeof e.splice||l(e)||u(e)||o(e)))return!e.length;var t=i(e);if(t==d||t==h)return!e.size;if(c(e))return!r(e).length;for(var n in e)if(p.call(e,n))return!1;return!0}},85690:(e,t,n)=>{var r=n(94193);e.exports=function(e,t){return r(e,t)}},81188:(e,t,n)=>{var r=n(59704),i=n(95188),o="[object AsyncFunction]",a="[object Function]",s="[object GeneratorFunction]",l="[object Proxy]";e.exports=function(e){if(!i(e))return!1;var t=r(e);return t==a||t==s||t==o||t==l}},18564:e=>{var t=9007199254740991;e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=t}},92142:(e,t,n)=>{var r=n(90247),i=n(31702),o=n(24542),a=o&&o.isMap,s=a?i(a):r;e.exports=s},95188:e=>{e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},22542:e=>{e.exports=function(e){return null!=e&&"object"==typeof e}},39010:(e,t,n)=>{var r=n(59704),i=n(36842),o=n(22542),a="[object Object]",s=Function.prototype,l=Object.prototype,c=s.toString,u=l.hasOwnProperty,d=c.call(Object);e.exports=function(e){if(!o(e)||r(e)!=a)return!1;var t=i(e);if(null===t)return!0;var n=u.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&c.call(n)==d}},77411:(e,t,n)=>{var r=n(81594),i=n(31702),o=n(24542),a=o&&o.isSet,s=a?i(a):r;e.exports=s},36197:(e,t,n)=>{var r=n(59704),i=n(22542),o="[object Symbol]";e.exports=function(e){return"symbol"==typeof e||i(e)&&r(e)==o}},34057:(e,t,n)=>{var r=n(77088),i=n(31702),o=n(24542),a=o&&o.isTypedArray,s=a?i(a):r;e.exports=s},25484:(e,t,n)=>{var r=n(34087),i=n(36539),o=n(75345);e.exports=function(e){return o(e)?r(e):i(e)}},71973:(e,t,n)=>{var r=n(34087),i=n(35487),o=n(75345);e.exports=function(e){return o(e)?r(e,!0):i(e)}},10207:e=>{e.exports=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},99090:(e,t,n)=>{var r=n(40341),i=n(67173),o=n(16484),a=n(46296);e.exports=function(e,t){return(a(e)?r:o)(e,i(t,3))}},9161:(e,t,n)=>{var r=n(47059),i="Expected a function";function o(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError(i);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=e.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(o.Cache||r),n}o.Cache=r,e.exports=o},3186:(e,t,n)=>{var r=n(28141),i=n(89490)((function(e,t,n){r(e,t,n)}));e.exports=i},51804:(e,t,n)=>{var r=n(28141),i=n(89490)((function(e,t,n,i){r(e,t,n,i)}));e.exports=i},91200:e=>{e.exports=function(){}},44864:(e,t,n)=>{var r=n(57849);e.exports=function(){return r.Date.now()}},87863:(e,t,n)=>{var r=n(40341),i=n(1952),o=n(32684),a=n(31534),s=n(81742),l=n(96274),c=n(65573),u=n(99970),d=c((function(e,t){var n={};if(null==e)return n;var c=!1;t=r(t,(function(t){return t=a(t,e),c||(c=t.length>1),t})),s(e,u(e),n),c&&(n=i(n,7,l));for(var d=t.length;d--;)o(n,t[d]);return n}));e.exports=d},90310:(e,t,n)=>{var r=n(16076),i=n(9270),o=n(32014),a=n(6996);e.exports=function(e){return o(e)?r(a(e)):i(e)}},28925:(e,t,n)=>{var r=n(77529)();e.exports=r},54466:(e,t,n)=>{var r=n(411)("round");e.exports=r},9447:(e,t,n)=>{var r=n(93848);e.exports=function(e,t,n){return null==e?e:r(e,t,n)}},26364:(e,t,n)=>{var r=n(7138),i=n(67173),o=n(40424),a=n(46296),s=n(10335);e.exports=function(e,t,n){var l=a(e)?r:o;return n&&s(e,t,n)&&(t=void 0),l(e,i(t,3))}},92128:e=>{e.exports=function(){return[]}},53388:e=>{e.exports=function(){return!1}},43832:(e,t,n)=>{var r=n(57002),i=n(95188),o="Expected a function";e.exports=function(e,t,n){var a=!0,s=!0;if("function"!=typeof e)throw new TypeError(o);return i(n)&&(a="leading"in n?!!n.leading:a,s="trailing"in n?!!n.trailing:s),r(e,t,{leading:a,maxWait:t,trailing:s})}},85850:(e,t,n)=>{var r=n(57630),i=1/0,o=17976931348623157e292;e.exports=function(e){return e?(e=r(e))===i||e===-i?(e<0?-1:1)*o:e===e?e:0:0===e?e:0}},94100:(e,t,n)=>{var r=n(85850);e.exports=function(e){var t=r(e),n=t%1;return t===t?n?t-n:t:0}},57630:(e,t,n)=>{var r=n(10480),i=n(95188),o=n(36197),a=NaN,s=/^[-+]0x[0-9a-f]+$/i,l=/^0b[01]+$/i,c=/^0o[0-7]+$/i,u=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(o(e))return a;if(i(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=i(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=l.test(e);return n||c.test(e)?u(e.slice(2),n?2:8):s.test(e)?a:+e}},78226:(e,t,n)=>{var r=n(81742),i=n(71973);e.exports=function(e){return r(e,i(e))}},51001:(e,t,n)=>{var r=n(60139);e.exports=function(e){return null==e?"":r(e)}},60619:(e,t,n)=>{var r=n(67173),i=n(28241);e.exports=function(e,t){return e&&e.length?i(e,r(t,2)):[]}},17445:(e,t,n)=>{var r=n(57918)("toUpperCase");e.exports=r},5083:e=>{"use strict";e.exports=function(e){for(var t=function(e){var t,n=1+(e.length+8>>6),r=new Array(16*n);for(t=0;t<16*n;t++)r[t]=0;for(t=0;t>2]|=e.charCodeAt(t)<<(8*e.length+t)%4*8;r[t>>2]|=128<<(8*e.length+t)%4*8;var i=8*e.length;return r[16*n-2]=255&i,r[16*n-2]|=(i>>>8&255)<<8,r[16*n-2]|=(i>>>16&255)<<16,r[16*n-2]|=(i>>>24&255)<<24,r}(e),n=1732584193,r=-271733879,i=-1732584194,s=271733878,h=0;h>>1|t>>>1)<<1|(1&e|1&t)}function r(e,t){return(e>>>1^t>>>1)<<1|1&e^1&t}function i(e,t){return(e>>>1&t>>>1)<<1|1&e&t}function o(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}function a(e){var n,r="";for(n=0;n<=3;n++)r+=t.charAt(e>>8*n+4&15)+t.charAt(e>>8*n&15);return r}function s(e,t,n,r,i,a){return o((s=o(o(t,e),o(r,a)))<<(l=i)|s>>>32-l,n);var s,l}function l(e,t,r,o,a,l,c){return s(n(i(t,r),i(~t,o)),e,t,a,l,c)}function c(e,t,r,o,a,l,c){return s(n(i(t,o),i(r,~o)),e,t,a,l,c)}function u(e,t,n,i,o,a,l){return s(r(r(t,n),i),e,t,o,a,l)}function d(e,t,i,o,a,l,c){return s(r(i,n(t,~o)),e,t,a,l,c)}},40022:function(e,t,n){var r,i,o;i=[n(36453)],void 0===(o="function"===typeof(r=function(e){e.register("locale","bg",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"\u0445\u0438\u043b",million:"\u043c\u043b\u043d",billion:"\u043c\u043b\u0440\u0434",trillion:"\u0442\u0440\u043b\u043d"},ordinal:function(e){return""},currency:{symbol:"\u043b\u0432"}}),e.register("locale","chs",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"\u5343",million:"\u767e\u4e07",billion:"\u5341\u4ebf",trillion:"\u5146"},ordinal:function(e){return"."},currency:{symbol:"\xa5"}}),e.register("locale","cs",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"tis.",million:"mil.",billion:"b",trillion:"t"},ordinal:function(){return"."},currency:{symbol:"K\u010d"}}),e.register("locale","da-dk",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:"k",million:"mio",billion:"mia",trillion:"b"},ordinal:function(e){return"."},currency:{symbol:"DKK"}}),e.register("locale","de-ch",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){return"."},currency:{symbol:"CHF"}}),e.register("locale","de",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){return"."},currency:{symbol:"\u20ac"}}),e.register("locale","en-au",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){var t=e%10;return 1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th"},currency:{symbol:"$"}}),e.register("locale","en-gb",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){var t=e%10;return 1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th"},currency:{symbol:"\xa3"}}),e.register("locale","en-za",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){var t=e%10;return 1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th"},currency:{symbol:"R"}}),e.register("locale","es-es",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:"k",million:"mm",billion:"b",trillion:"t"},ordinal:function(e){var t=e%10;return 1===t||3===t?"er":2===t?"do":7===t||0===t?"mo":8===t?"vo":9===t?"no":"to"},currency:{symbol:"\u20ac"}}),e.register("locale","es",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:"k",million:"mm",billion:"b",trillion:"t"},ordinal:function(e){var t=e%10;return 1===t||3===t?"er":2===t?"do":7===t||0===t?"mo":8===t?"vo":9===t?"no":"to"},currency:{symbol:"$"}}),e.register("locale","et",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:" tuh",million:" mln",billion:" mld",trillion:" trl"},ordinal:function(e){return"."},currency:{symbol:"\u20ac"}}),e.register("locale","fi",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"k",million:"M",billion:"G",trillion:"T"},ordinal:function(e){return"."},currency:{symbol:"\u20ac"}}),e.register("locale","fr-ca",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"k",million:"M",billion:"G",trillion:"T"},ordinal:function(e){return 1===e?"er":"e"},currency:{symbol:"$"}}),e.register("locale","fr-ch",{delimiters:{thousands:"'",decimal:"."},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){return 1===e?"er":"e"},currency:{symbol:"CHF"}}),e.register("locale","fr",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){return 1===e?"er":"e"},currency:{symbol:"\u20ac"}}),e.register("locale","hu",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"E",million:"M",billion:"Mrd",trillion:"T"},ordinal:function(e){return"."},currency:{symbol:" Ft"}}),e.register("locale","it",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:"mila",million:"mil",billion:"b",trillion:"t"},ordinal:function(e){return"\xba"},currency:{symbol:"\u20ac"}}),e.register("locale","ja",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"\u5343",million:"\u767e\u4e07",billion:"\u5341\u5104",trillion:"\u5146"},ordinal:function(e){return"."},currency:{symbol:"\xa5"}}),e.register("locale","lv",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:" t\u016bkst.",million:" milj.",billion:" mljrd.",trillion:" trilj."},ordinal:function(e){return"."},currency:{symbol:"\u20ac"}}),e.register("locale","nl-be",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"k",million:" mln",billion:" mld",trillion:" bln"},ordinal:function(e){var t=e%100;return 0!==e&&t<=1||8===t||t>=20?"ste":"de"},currency:{symbol:"\u20ac "}}),e.register("locale","nl-nl",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:"k",million:"mln",billion:"mrd",trillion:"bln"},ordinal:function(e){var t=e%100;return 0!==e&&t<=1||8===t||t>=20?"ste":"de"},currency:{symbol:"\u20ac "}}),e.register("locale","no",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){return"."},currency:{symbol:"kr"}}),e.register("locale","pl",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"tys.",million:"mln",billion:"mld",trillion:"bln"},ordinal:function(e){return"."},currency:{symbol:"PLN"}}),e.register("locale","pt-br",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:"mil",million:"milh\xf5es",billion:"b",trillion:"t"},ordinal:function(e){return"\xba"},currency:{symbol:"R$"}}),e.register("locale","pt-pt",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){return"\xba"},currency:{symbol:"\u20ac"}}),e.register("locale","ru-ua",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"\u0442\u044b\u0441.",million:"\u043c\u043b\u043d",billion:"b",trillion:"t"},ordinal:function(){return"."},currency:{symbol:"\u20b4"}}),e.register("locale","ru",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"\u0442\u044b\u0441.",million:"\u043c\u043b\u043d.",billion:"\u043c\u043b\u0440\u0434.",trillion:"\u0442\u0440\u043b\u043d."},ordinal:function(){return"."},currency:{symbol:"\u0440\u0443\u0431."}}),e.register("locale","sk",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"tis.",million:"mil.",billion:"b",trillion:"t"},ordinal:function(){return"."},currency:{symbol:"\u20ac"}}),e.register("locale","sl",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:"k",million:"mio",billion:"mrd",trillion:"trilijon"},ordinal:function(){return"."},currency:{symbol:"\u20ac"}}),e.register("locale","th",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"\u0e1e\u0e31\u0e19",million:"\u0e25\u0e49\u0e32\u0e19",billion:"\u0e1e\u0e31\u0e19\u0e25\u0e49\u0e32\u0e19",trillion:"\u0e25\u0e49\u0e32\u0e19\u0e25\u0e49\u0e32\u0e19"},ordinal:function(e){return"."},currency:{symbol:"\u0e3f"}}),function(){var t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'\xfcnc\xfc",4:"'\xfcnc\xfc",100:"'\xfcnc\xfc",6:"'nc\u0131",9:"'uncu",10:"'uncu",30:"'uncu",60:"'\u0131nc\u0131",90:"'\u0131nc\u0131"};e.register("locale","tr",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:"bin",million:"milyon",billion:"milyar",trillion:"trilyon"},ordinal:function(e){if(0===e)return"'\u0131nc\u0131";var n=e%10,r=e%100-n,i=e>=100?100:null;return t[n]||t[r]||t[i]},currency:{symbol:"\u20ba"}})}(),e.register("locale","uk-ua",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"\u0442\u0438\u0441.",million:"\u043c\u043b\u043d",billion:"\u043c\u043b\u0440\u0434",trillion:"\u0431\u043b\u043d"},ordinal:function(){return""},currency:{symbol:"\u20b4"}}),e.register("locale","vi",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:" ngh\xecn",million:" tri\u1ec7u",billion:" t\u1ef7",trillion:" ngh\xecn t\u1ef7"},ordinal:function(){return"."},currency:{symbol:"\u20ab"}})})?r.apply(t,i):r)||(e.exports=o)},36453:function(e,t,n){var r,i;r=function(){var e,t,n="2.0.6",r={},i={},o={currentLocale:"en",zeroFormat:null,nullFormat:null,defaultFormat:"0,0",scalePercentBy100:!0},a={currentLocale:o.currentLocale,zeroFormat:o.zeroFormat,nullFormat:o.nullFormat,defaultFormat:o.defaultFormat,scalePercentBy100:o.scalePercentBy100};function s(e,t){this._input=e,this._value=t}return(e=function(n){var i,o,l,c;if(e.isNumeral(n))i=n.value();else if(0===n||"undefined"===typeof n)i=0;else if(null===n||t.isNaN(n))i=null;else if("string"===typeof n)if(a.zeroFormat&&n===a.zeroFormat)i=0;else if(a.nullFormat&&n===a.nullFormat||!n.replace(/[^0-9]+/g,"").length)i=null;else{for(o in r)if((c="function"===typeof r[o].regexps.unformat?r[o].regexps.unformat():r[o].regexps.unformat)&&n.match(c)){l=r[o].unformat;break}i=(l=l||e._.stringToNumber)(n)}else i=Number(n)||null;return new s(n,i)}).version=n,e.isNumeral=function(e){return e instanceof s},e._=t={numberToFormat:function(t,n,r){var o,a,s,l,c,u,d,h=i[e.options.currentLocale],p=!1,f=!1,m=0,g="",v=1e12,y=1e9,b=1e6,x=1e3,w="",S=!1;if(t=t||0,a=Math.abs(t),e._.includes(n,"(")?(p=!0,n=n.replace(/[\(|\)]/g,"")):(e._.includes(n,"+")||e._.includes(n,"-"))&&(c=e._.includes(n,"+")?n.indexOf("+"):t<0?n.indexOf("-"):-1,n=n.replace(/[\+|\-]/g,"")),e._.includes(n,"a")&&(o=!!(o=n.match(/a(k|m|b|t)?/))&&o[1],e._.includes(n," a")&&(g=" "),n=n.replace(new RegExp(g+"a[kmbt]?"),""),a>=v&&!o||"t"===o?(g+=h.abbreviations.trillion,t/=v):a=y&&!o||"b"===o?(g+=h.abbreviations.billion,t/=y):a=b&&!o||"m"===o?(g+=h.abbreviations.million,t/=b):(a=x&&!o||"k"===o)&&(g+=h.abbreviations.thousand,t/=x)),e._.includes(n,"[.]")&&(f=!0,n=n.replace("[.]",".")),s=t.toString().split(".")[0],l=n.split(".")[1],u=n.indexOf(","),m=(n.split(".")[0].split(",")[0].match(/0/g)||[]).length,l?(e._.includes(l,"[")?(l=(l=l.replace("]","")).split("["),w=e._.toFixed(t,l[0].length+l[1].length,r,l[1].length)):w=e._.toFixed(t,l.length,r),s=w.split(".")[0],w=e._.includes(w,".")?h.delimiters.decimal+w.split(".")[1]:"",f&&0===Number(w.slice(1))&&(w="")):s=e._.toFixed(t,0,r),g&&!o&&Number(s)>=1e3&&g!==h.abbreviations.trillion)switch(s=String(Number(s)/1e3),g){case h.abbreviations.thousand:g=h.abbreviations.million;break;case h.abbreviations.million:g=h.abbreviations.billion;break;case h.abbreviations.billion:g=h.abbreviations.trillion}if(e._.includes(s,"-")&&(s=s.slice(1),S=!0),s.length0;_--)s="0"+s;return u>-1&&(s=s.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1"+h.delimiters.thousands)),0===n.indexOf(".")&&(s=""),d=s+w+(g||""),p?d=(p&&S?"(":"")+d+(p&&S?")":""):c>=0?d=0===c?(S?"-":"+")+d:d+(S?"-":"+"):S&&(d="-"+d),d},stringToNumber:function(e){var t,n,r,o=i[a.currentLocale],s=e,l={thousand:3,million:6,billion:9,trillion:12};if(a.zeroFormat&&e===a.zeroFormat)n=0;else if(a.nullFormat&&e===a.nullFormat||!e.replace(/[^0-9]+/g,"").length)n=null;else{for(t in n=1,"."!==o.delimiters.decimal&&(e=e.replace(/\./g,"").replace(o.delimiters.decimal,".")),l)if(r=new RegExp("[^a-zA-Z]"+o.abbreviations[t]+"(?:\\)|(\\"+o.currency.symbol+")?(?:\\))?)?$"),s.match(r)){n*=Math.pow(10,l[t]);break}n*=(e.split("-").length+Math.min(e.split("(").length-1,e.split(")").length-1))%2?1:-1,e=e.replace(/[^0-9\.]+/g,""),n*=Number(e)}return n},isNaN:function(e){return"number"===typeof e&&isNaN(e)},includes:function(e,t){return-1!==e.indexOf(t)},insert:function(e,t,n){return e.slice(0,n)+t+e.slice(n)},reduce:function(e,t){if(null===this)throw new TypeError("Array.prototype.reduce called on null or undefined");if("function"!==typeof t)throw new TypeError(t+" is not a function");var n,r=Object(e),i=r.length>>>0,o=0;if(3===arguments.length)n=arguments[2];else{for(;o=i)throw new TypeError("Reduce of empty array with no initial value");n=r[o++]}for(;or?e:r}),1)},toFixed:function(e,t,n,r){var i,o,a,s,l=e.toString().split("."),c=t-(r||0);return i=2===l.length?Math.min(Math.max(l[1].length,c),t):c,a=Math.pow(10,i),s=(n(e+"e+"+i)/a).toFixed(i),r>t-i&&(o=new RegExp("\\.?0{1,"+(r-(t-i))+"}$"),s=s.replace(o,"")),s}},e.options=a,e.formats=r,e.locales=i,e.locale=function(e){return e&&(a.currentLocale=e.toLowerCase()),a.currentLocale},e.localeData=function(e){if(!e)return i[a.currentLocale];if(e=e.toLowerCase(),!i[e])throw new Error("Unknown locale : "+e);return i[e]},e.reset=function(){for(var e in o)a[e]=o[e]},e.zeroFormat=function(e){a.zeroFormat="string"===typeof e?e:null},e.nullFormat=function(e){a.nullFormat="string"===typeof e?e:null},e.defaultFormat=function(e){a.defaultFormat="string"===typeof e?e:"0.0"},e.register=function(e,t,n){if(t=t.toLowerCase(),this[e+"s"][t])throw new TypeError(t+" "+e+" already registered.");return this[e+"s"][t]=n,n},e.validate=function(t,n){var r,i,o,a,s,l,c,u;if("string"!==typeof t&&(t+="",console.warn&&console.warn("Numeral.js: Value is not string. It has been co-erced to: ",t)),(t=t.trim()).match(/^\d+$/))return!0;if(""===t)return!1;try{c=e.localeData(n)}catch(d){c=e.localeData(e.locale())}return o=c.currency.symbol,s=c.abbreviations,r=c.delimiters.decimal,i="."===c.delimiters.thousands?"\\.":c.delimiters.thousands,(null===(u=t.match(/^[^\d]+/))||(t=t.substr(1),u[0]===o))&&(null===(u=t.match(/[^\d]+$/))||(t=t.slice(0,-1),u[0]===s.thousand||u[0]===s.million||u[0]===s.billion||u[0]===s.trillion))&&(l=new RegExp(i+"{2}"),!t.match(/[^\d.,]/g)&&!((a=t.split(r)).length>2)&&(a.length<2?!!a[0].match(/^\d+.*\d$/)&&!a[0].match(l):1===a[0].length?!!a[0].match(/^\d+$/)&&!a[0].match(l)&&!!a[1].match(/^\d+$/):!!a[0].match(/^\d+.*\d$/)&&!a[0].match(l)&&!!a[1].match(/^\d+$/)))},e.fn=s.prototype={clone:function(){return e(this)},format:function(t,n){var i,o,s,l=this._value,c=t||a.defaultFormat;if(n=n||Math.round,0===l&&null!==a.zeroFormat)o=a.zeroFormat;else if(null===l&&null!==a.nullFormat)o=a.nullFormat;else{for(i in r)if(c.match(r[i].regexps.format)){s=r[i].format;break}o=(s=s||e._.numberToFormat)(l,c,n)}return o},value:function(){return this._value},input:function(){return this._input},set:function(e){return this._value=Number(e),this},add:function(e){var n=t.correctionFactor.call(null,this._value,e);function r(e,t,r,i){return e+Math.round(n*t)}return this._value=t.reduce([this._value,e],r,0)/n,this},subtract:function(e){var n=t.correctionFactor.call(null,this._value,e);function r(e,t,r,i){return e-Math.round(n*t)}return this._value=t.reduce([e],r,Math.round(this._value*n))/n,this},multiply:function(e){function n(e,n,r,i){var o=t.correctionFactor(e,n);return Math.round(e*o)*Math.round(n*o)/Math.round(o*o)}return this._value=t.reduce([this._value,e],n,1),this},divide:function(e){function n(e,n,r,i){var o=t.correctionFactor(e,n);return Math.round(e*o)/Math.round(n*o)}return this._value=t.reduce([this._value,e],n),this},difference:function(t){return Math.abs(e(this._value).subtract(t).value())}},e.register("locale","en",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){var t=e%10;return 1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th"},currency:{symbol:"$"}}),e.register("format","bps",{regexps:{format:/(BPS)/,unformat:/(BPS)/},format:function(t,n,r){var i,o=e._.includes(n," BPS")?" ":"";return t*=1e4,n=n.replace(/\s?BPS/,""),i=e._.numberToFormat(t,n,r),e._.includes(i,")")?((i=i.split("")).splice(-1,0,o+"BPS"),i=i.join("")):i=i+o+"BPS",i},unformat:function(t){return+(1e-4*e._.stringToNumber(t)).toFixed(15)}}),function(){var t={base:1e3,suffixes:["B","KB","MB","GB","TB","PB","EB","ZB","YB"]},n={base:1024,suffixes:["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"]},r=t.suffixes.concat(n.suffixes.filter((function(e){return t.suffixes.indexOf(e)<0}))).join("|");r="("+r.replace("B","B(?!PS)")+")",e.register("format","bytes",{regexps:{format:/([0\s]i?b)/,unformat:new RegExp(r)},format:function(r,i,o){var a,s,l,c=e._.includes(i,"ib")?n:t,u=e._.includes(i," b")||e._.includes(i," ib")?" ":"";for(i=i.replace(/\s?i?b/,""),a=0;a<=c.suffixes.length;a++)if(s=Math.pow(c.base,a),l=Math.pow(c.base,a+1),null===r||0===r||r>=s&&r0&&(r/=s);break}return e._.numberToFormat(r,i,o)+u},unformat:function(r){var i,o,a=e._.stringToNumber(r);if(a){for(i=t.suffixes.length-1;i>=0;i--){if(e._.includes(r,t.suffixes[i])){o=Math.pow(t.base,i);break}if(e._.includes(r,n.suffixes[i])){o=Math.pow(n.base,i);break}}a*=o||1}return a}})}(),e.register("format","currency",{regexps:{format:/(\$)/},format:function(t,n,r){var i,o,a=e.locales[e.options.currentLocale],s={before:n.match(/^([\+|\-|\(|\s|\$]*)/)[0],after:n.match(/([\+|\-|\)|\s|\$]*)$/)[0]};for(n=n.replace(/\s?\$\s?/,""),i=e._.numberToFormat(t,n,r),t>=0?(s.before=s.before.replace(/[\-\(]/,""),s.after=s.after.replace(/[\-\)]/,"")):t<0&&!e._.includes(s.before,"-")&&!e._.includes(s.before,"(")&&(s.before="-"+s.before),o=0;o=0;o--)switch(s.after[o]){case"$":i=o===s.after.length-1?i+a.currency.symbol:e._.insert(i,a.currency.symbol,-(s.after.length-(1+o)));break;case" ":i=o===s.after.length-1?i+" ":e._.insert(i," ",-(s.after.length-(1+o)+a.currency.symbol.length-1))}return i}}),e.register("format","exponential",{regexps:{format:/(e\+|e-)/,unformat:/(e\+|e-)/},format:function(t,n,r){var i=("number"!==typeof t||e._.isNaN(t)?"0e+0":t.toExponential()).split("e");return n=n.replace(/e[\+|\-]{1}0/,""),e._.numberToFormat(Number(i[0]),n,r)+"e"+i[1]},unformat:function(t){var n=e._.includes(t,"e+")?t.split("e+"):t.split("e-"),r=Number(n[0]),i=Number(n[1]);function o(t,n,r,i){var o=e._.correctionFactor(t,n);return t*o*(n*o)/(o*o)}return i=e._.includes(t,"e-")?i*=-1:i,e._.reduce([r,Math.pow(10,i)],o,1)}}),e.register("format","ordinal",{regexps:{format:/(o)/},format:function(t,n,r){var i=e.locales[e.options.currentLocale],o=e._.includes(n," o")?" ":"";return n=n.replace(/\s?o/,""),o+=i.ordinal(t),e._.numberToFormat(t,n,r)+o}}),e.register("format","percentage",{regexps:{format:/(%)/,unformat:/(%)/},format:function(t,n,r){var i,o=e._.includes(n," %")?" ":"";return e.options.scalePercentBy100&&(t*=100),n=n.replace(/\s?\%/,""),i=e._.numberToFormat(t,n,r),e._.includes(i,")")?((i=i.split("")).splice(-1,0,o+"%"),i=i.join("")):i=i+o+"%",i},unformat:function(t){var n=e._.stringToNumber(t);return e.options.scalePercentBy100?.01*n:n}}),e.register("format","time",{regexps:{format:/(:)/,unformat:/(:)/},format:function(e,t,n){var r=Math.floor(e/60/60),i=Math.floor((e-60*r*60)/60),o=Math.round(e-60*r*60-60*i);return r+":"+(i<10?"0"+i:i)+":"+(o<10?"0"+o:o)},unformat:function(e){var t=e.split(":"),n=0;return 3===t.length?(n+=60*Number(t[0])*60,n+=60*Number(t[1]),n+=Number(t[2])):2===t.length&&(n+=60*Number(t[0]),n+=Number(t[1])),Number(n)}}),e},void 0===(i="function"===typeof r?r.call(t,n,t,e):r)||(e.exports=i)},29335:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(i){return!1}}()?Object.assign:function(e,i){for(var o,a,s=function(e){if(null===e||void 0===e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),l=1;l{var r="function"===typeof Map&&Map.prototype,i=Object.getOwnPropertyDescriptor&&r?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,o=r&&i&&"function"===typeof i.get?i.get:null,a=r&&Map.prototype.forEach,s="function"===typeof Set&&Set.prototype,l=Object.getOwnPropertyDescriptor&&s?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,c=s&&l&&"function"===typeof l.get?l.get:null,u=s&&Set.prototype.forEach,d="function"===typeof WeakMap&&WeakMap.prototype?WeakMap.prototype.has:null,h="function"===typeof WeakSet&&WeakSet.prototype?WeakSet.prototype.has:null,p="function"===typeof WeakRef&&WeakRef.prototype?WeakRef.prototype.deref:null,f=Boolean.prototype.valueOf,m=Object.prototype.toString,g=Function.prototype.toString,v=String.prototype.match,y=String.prototype.slice,b=String.prototype.replace,x=String.prototype.toUpperCase,w=String.prototype.toLowerCase,S=RegExp.prototype.test,_=Array.prototype.concat,C=Array.prototype.join,E=Array.prototype.slice,T=Math.floor,O="function"===typeof BigInt?BigInt.prototype.valueOf:null,N=Object.getOwnPropertySymbols,k="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?Symbol.prototype.toString:null,j="function"===typeof Symbol&&"object"===typeof Symbol.iterator,I="function"===typeof Symbol&&Symbol.toStringTag&&(typeof Symbol.toStringTag===j||"symbol")?Symbol.toStringTag:null,P=Object.prototype.propertyIsEnumerable,D=("function"===typeof Reflect?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(e){return e.__proto__}:null);function A(e,t){if(e===1/0||e===-1/0||e!==e||e&&e>-1e3&&e<1e3||S.call(/e/,t))return t;var n=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if("number"===typeof e){var r=e<0?-T(-e):T(e);if(r!==e){var i=String(r),o=y.call(t,i.length+1);return b.call(i,n,"$&_")+"."+b.call(b.call(o,/([0-9]{3})/g,"$&_"),/_$/,"")}}return b.call(t,n,"$&_")}var R=n(24654),M=R.custom,L=H(M)?M:null;function F(e,t,n){var r="double"===(n.quoteStyle||t)?'"':"'";return r+e+r}function z(e){return b.call(String(e),/"/g,""")}function B(e){return"[object Array]"===W(e)&&(!I||!("object"===typeof e&&I in e))}function U(e){return"[object RegExp]"===W(e)&&(!I||!("object"===typeof e&&I in e))}function H(e){if(j)return e&&"object"===typeof e&&e instanceof Symbol;if("symbol"===typeof e)return!0;if(!e||"object"!==typeof e||!k)return!1;try{return k.call(e),!0}catch(t){}return!1}e.exports=function e(t,r,i,s){var l=r||{};if(G(l,"quoteStyle")&&"single"!==l.quoteStyle&&"double"!==l.quoteStyle)throw new TypeError('option "quoteStyle" must be "single" or "double"');if(G(l,"maxStringLength")&&("number"===typeof l.maxStringLength?l.maxStringLength<0&&l.maxStringLength!==1/0:null!==l.maxStringLength))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var m=!G(l,"customInspect")||l.customInspect;if("boolean"!==typeof m&&"symbol"!==m)throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(G(l,"indent")&&null!==l.indent&&"\t"!==l.indent&&!(parseInt(l.indent,10)===l.indent&&l.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(G(l,"numericSeparator")&&"boolean"!==typeof l.numericSeparator)throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var x=l.numericSeparator;if("undefined"===typeof t)return"undefined";if(null===t)return"null";if("boolean"===typeof t)return t?"true":"false";if("string"===typeof t)return Z(t,l);if("number"===typeof t){if(0===t)return 1/0/t>0?"0":"-0";var S=String(t);return x?A(t,S):S}if("bigint"===typeof t){var T=String(t)+"n";return x?A(t,T):T}var N="undefined"===typeof l.depth?5:l.depth;if("undefined"===typeof i&&(i=0),i>=N&&N>0&&"object"===typeof t)return B(t)?"[Array]":"[Object]";var M=function(e,t){var n;if("\t"===e.indent)n="\t";else{if(!("number"===typeof e.indent&&e.indent>0))return null;n=C.call(Array(e.indent+1)," ")}return{base:n,prev:C.call(Array(t+1),n)}}(l,i);if("undefined"===typeof s)s=[];else if(q(s,t)>=0)return"[Circular]";function V(t,n,r){if(n&&(s=E.call(s)).push(n),r){var o={depth:l.depth};return G(l,"quoteStyle")&&(o.quoteStyle=l.quoteStyle),e(t,o,i+1,s)}return e(t,l,i+1,s)}if("function"===typeof t&&!U(t)){var Y=function(e){if(e.name)return e.name;var t=v.call(g.call(e),/^function\s*([\w$]+)/);if(t)return t[1];return null}(t),ee=J(t,V);return"[Function"+(Y?": "+Y:" (anonymous)")+"]"+(ee.length>0?" { "+C.call(ee,", ")+" }":"")}if(H(t)){var te=j?b.call(String(t),/^(Symbol\(.*\))_[^)]*$/,"$1"):k.call(t);return"object"!==typeof t||j?te:K(te)}if(function(e){if(!e||"object"!==typeof e)return!1;if("undefined"!==typeof HTMLElement&&e instanceof HTMLElement)return!0;return"string"===typeof e.nodeName&&"function"===typeof e.getAttribute}(t)){for(var ne="<"+w.call(String(t.nodeName)),re=t.attributes||[],ie=0;ie"}if(B(t)){if(0===t.length)return"[]";var oe=J(t,V);return M&&!function(e){for(var t=0;t=0)return!1;return!0}(oe)?"["+$(oe,M)+"]":"[ "+C.call(oe,", ")+" ]"}if(function(e){return"[object Error]"===W(e)&&(!I||!("object"===typeof e&&I in e))}(t)){var ae=J(t,V);return"cause"in Error.prototype||!("cause"in t)||P.call(t,"cause")?0===ae.length?"["+String(t)+"]":"{ ["+String(t)+"] "+C.call(ae,", ")+" }":"{ ["+String(t)+"] "+C.call(_.call("[cause]: "+V(t.cause),ae),", ")+" }"}if("object"===typeof t&&m){if(L&&"function"===typeof t[L]&&R)return R(t,{depth:N-i});if("symbol"!==m&&"function"===typeof t.inspect)return t.inspect()}if(function(e){if(!o||!e||"object"!==typeof e)return!1;try{o.call(e);try{c.call(e)}catch(ne){return!0}return e instanceof Map}catch(t){}return!1}(t)){var se=[];return a&&a.call(t,(function(e,n){se.push(V(n,t,!0)+" => "+V(e,t))})),X("Map",o.call(t),se,M)}if(function(e){if(!c||!e||"object"!==typeof e)return!1;try{c.call(e);try{o.call(e)}catch(t){return!0}return e instanceof Set}catch(n){}return!1}(t)){var le=[];return u&&u.call(t,(function(e){le.push(V(e,t))})),X("Set",c.call(t),le,M)}if(function(e){if(!d||!e||"object"!==typeof e)return!1;try{d.call(e,d);try{h.call(e,h)}catch(ne){return!0}return e instanceof WeakMap}catch(t){}return!1}(t))return Q("WeakMap");if(function(e){if(!h||!e||"object"!==typeof e)return!1;try{h.call(e,h);try{d.call(e,d)}catch(ne){return!0}return e instanceof WeakSet}catch(t){}return!1}(t))return Q("WeakSet");if(function(e){if(!p||!e||"object"!==typeof e)return!1;try{return p.call(e),!0}catch(t){}return!1}(t))return Q("WeakRef");if(function(e){return"[object Number]"===W(e)&&(!I||!("object"===typeof e&&I in e))}(t))return K(V(Number(t)));if(function(e){if(!e||"object"!==typeof e||!O)return!1;try{return O.call(e),!0}catch(t){}return!1}(t))return K(V(O.call(t)));if(function(e){return"[object Boolean]"===W(e)&&(!I||!("object"===typeof e&&I in e))}(t))return K(f.call(t));if(function(e){return"[object String]"===W(e)&&(!I||!("object"===typeof e&&I in e))}(t))return K(V(String(t)));if("undefined"!==typeof window&&t===window)return"{ [object Window] }";if(t===n.g)return"{ [object globalThis] }";if(!function(e){return"[object Date]"===W(e)&&(!I||!("object"===typeof e&&I in e))}(t)&&!U(t)){var ce=J(t,V),ue=D?D(t)===Object.prototype:t instanceof Object||t.constructor===Object,de=t instanceof Object?"":"null prototype",he=!ue&&I&&Object(t)===t&&I in t?y.call(W(t),8,-1):de?"Object":"",pe=(ue||"function"!==typeof t.constructor?"":t.constructor.name?t.constructor.name+" ":"")+(he||de?"["+C.call(_.call([],he||[],de||[]),": ")+"] ":"");return 0===ce.length?pe+"{}":M?pe+"{"+$(ce,M)+"}":pe+"{ "+C.call(ce,", ")+" }"}return String(t)};var V=Object.prototype.hasOwnProperty||function(e){return e in this};function G(e,t){return V.call(e,t)}function W(e){return m.call(e)}function q(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,r=e.length;nt.maxStringLength){var n=e.length-t.maxStringLength,r="... "+n+" more character"+(n>1?"s":"");return Z(y.call(e,0,t.maxStringLength),t)+r}return F(b.call(b.call(e,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,Y),"single",t)}function Y(e){var t=e.charCodeAt(0),n={8:"b",9:"t",10:"n",12:"f",13:"r"}[t];return n?"\\"+n:"\\x"+(t<16?"0":"")+x.call(t.toString(16))}function K(e){return"Object("+e+")"}function Q(e){return e+" { ? }"}function X(e,t,n,r){return e+" ("+t+") {"+(r?$(n,r):C.call(n,", "))+"}"}function $(e,t){if(0===e.length)return"";var n="\n"+t.prev+t.base;return n+C.call(e,","+n)+"\n"+t.prev}function J(e,t){var n=B(e),r=[];if(n){r.length=e.length;for(var i=0;i{e.exports=u,e.exports.match=function(e,t){var n=[];return i(u(e,n,t),n)},e.exports.regexpToFunction=i,e.exports.parse=r,e.exports.compile=function(e,t){return o(r(e,t),t)},e.exports.tokensToFunction=o,e.exports.tokensToRegExp=c;var t="/",n=new RegExp(["(\\\\.)","(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?"].join("|"),"g");function r(e,r){for(var i,o=[],l=0,c=0,u="",d=r&&r.delimiter||t,h=r&&r.whitelist||void 0,p=!1;null!==(i=n.exec(e));){var f=i[0],m=i[1],g=i.index;if(u+=e.slice(c,g),c=g+f.length,m)u+=m[1],p=!0;else{var v="",y=i[2],b=i[3],x=i[4],w=i[5];if(!p&&u.length){var S=u.length-1,_=u[S];(!h||h.indexOf(_)>-1)&&(v=_,u=u.slice(0,S))}u&&(o.push(u),u="",p=!1);var C="+"===w||"*"===w,E="?"===w||"*"===w,T=b||x,O=v||d;o.push({name:y||l++,prefix:v,delimiter:O,optional:E,repeat:C,pattern:T?s(T):"[^"+a(O===d?O:O+d)+"]+?"})}}return(u||c{"use strict";var r=n(16630);function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,n,i,o,a){if(a!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return n.PropTypes=n,n}},50134:(e,t,n)=>{e.exports=n(62139)()},16630:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},21777:e=>{"use strict";var t=String.prototype.replace,n=/%20/g,r="RFC1738",i="RFC3986";e.exports={default:i,formatters:{RFC1738:function(e){return t.call(e,n,"+")},RFC3986:function(e){return String(e)}},RFC1738:r,RFC3986:i}},63041:(e,t,n)=>{"use strict";var r=n(84861),i=n(36840),o=n(21777);e.exports={formats:o,parse:i,stringify:r}},36840:(e,t,n)=>{"use strict";var r=n(92113),i=Object.prototype.hasOwnProperty,o=Array.isArray,a={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!0,decoder:r.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},s=function(e){return e.replace(/&#(\d+);/g,(function(e,t){return String.fromCharCode(parseInt(t,10))}))},l=function(e,t){return e&&"string"===typeof e&&t.comma&&e.indexOf(",")>-1?e.split(","):e},c=function(e,t,n,r){if(e){var o=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,a=/(\[[^[\]]*])/g,s=n.depth>0&&/(\[[^[\]]*])/.exec(o),c=s?o.slice(0,s.index):o,u=[];if(c){if(!n.plainObjects&&i.call(Object.prototype,c)&&!n.allowPrototypes)return;u.push(c)}for(var d=0;n.depth>0&&null!==(s=a.exec(o))&&d=0;--o){var a,s=e[o];if("[]"===s&&n.parseArrays)a=n.allowEmptyArrays&&""===i?[]:[].concat(i);else{a=n.plainObjects?Object.create(null):{};var c="["===s.charAt(0)&&"]"===s.charAt(s.length-1)?s.slice(1,-1):s,u=n.decodeDotInKeys?c.replace(/%2E/g,"."):c,d=parseInt(u,10);n.parseArrays||""!==u?!isNaN(d)&&s!==u&&String(d)===u&&d>=0&&n.parseArrays&&d<=n.arrayLimit?(a=[])[d]=i:"__proto__"!==u&&(a[u]=i):a={0:i}}i=a}return i}(u,t,n,r)}};e.exports=function(e,t){var n=function(e){if(!e)return a;if("undefined"!==typeof e.allowEmptyArrays&&"boolean"!==typeof e.allowEmptyArrays)throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if("undefined"!==typeof e.decodeDotInKeys&&"boolean"!==typeof e.decodeDotInKeys)throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");if(null!==e.decoder&&"undefined"!==typeof e.decoder&&"function"!==typeof e.decoder)throw new TypeError("Decoder has to be a function.");if("undefined"!==typeof e.charset&&"utf-8"!==e.charset&&"iso-8859-1"!==e.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var t="undefined"===typeof e.charset?a.charset:e.charset,n="undefined"===typeof e.duplicates?a.duplicates:e.duplicates;if("combine"!==n&&"first"!==n&&"last"!==n)throw new TypeError("The duplicates option must be either combine, first, or last");return{allowDots:"undefined"===typeof e.allowDots?!0===e.decodeDotInKeys||a.allowDots:!!e.allowDots,allowEmptyArrays:"boolean"===typeof e.allowEmptyArrays?!!e.allowEmptyArrays:a.allowEmptyArrays,allowPrototypes:"boolean"===typeof e.allowPrototypes?e.allowPrototypes:a.allowPrototypes,allowSparse:"boolean"===typeof e.allowSparse?e.allowSparse:a.allowSparse,arrayLimit:"number"===typeof e.arrayLimit?e.arrayLimit:a.arrayLimit,charset:t,charsetSentinel:"boolean"===typeof e.charsetSentinel?e.charsetSentinel:a.charsetSentinel,comma:"boolean"===typeof e.comma?e.comma:a.comma,decodeDotInKeys:"boolean"===typeof e.decodeDotInKeys?e.decodeDotInKeys:a.decodeDotInKeys,decoder:"function"===typeof e.decoder?e.decoder:a.decoder,delimiter:"string"===typeof e.delimiter||r.isRegExp(e.delimiter)?e.delimiter:a.delimiter,depth:"number"===typeof e.depth||!1===e.depth?+e.depth:a.depth,duplicates:n,ignoreQueryPrefix:!0===e.ignoreQueryPrefix,interpretNumericEntities:"boolean"===typeof e.interpretNumericEntities?e.interpretNumericEntities:a.interpretNumericEntities,parameterLimit:"number"===typeof e.parameterLimit?e.parameterLimit:a.parameterLimit,parseArrays:!1!==e.parseArrays,plainObjects:"boolean"===typeof e.plainObjects?e.plainObjects:a.plainObjects,strictNullHandling:"boolean"===typeof e.strictNullHandling?e.strictNullHandling:a.strictNullHandling}}(t);if(""===e||null===e||"undefined"===typeof e)return n.plainObjects?Object.create(null):{};for(var u="string"===typeof e?function(e,t){var n,c={__proto__:null},u=t.ignoreQueryPrefix?e.replace(/^\?/,""):e,d=t.parameterLimit===1/0?void 0:t.parameterLimit,h=u.split(t.delimiter,d),p=-1,f=t.charset;if(t.charsetSentinel)for(n=0;n-1&&(g=o(g)?[g]:g);var x=i.call(c,m);x&&"combine"===t.duplicates?c[m]=r.combine(c[m],g):x&&"last"!==t.duplicates||(c[m]=g)}return c}(e,n):e,d=n.plainObjects?Object.create(null):{},h=Object.keys(u),p=0;p{"use strict";var r=n(50810),i=n(92113),o=n(21777),a=Object.prototype.hasOwnProperty,s={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,t){return e+"["+t+"]"},repeat:function(e){return e}},l=Array.isArray,c=Array.prototype.push,u=function(e,t){c.apply(e,l(t)?t:[t])},d=Date.prototype.toISOString,h=o.default,p={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:i.encode,encodeValuesOnly:!1,format:h,formatter:o.formatters[h],indices:!1,serializeDate:function(e){return d.call(e)},skipNulls:!1,strictNullHandling:!1},f={},m=function e(t,n,o,a,s,c,d,h,m,g,v,y,b,x,w,S,_,C){for(var E,T=t,O=C,N=0,k=!1;void 0!==(O=O.get(f))&&!k;){var j=O.get(t);if(N+=1,"undefined"!==typeof j){if(j===N)throw new RangeError("Cyclic object value");k=!0}"undefined"===typeof O.get(f)&&(N=0)}if("function"===typeof g?T=g(n,T):T instanceof Date?T=b(T):"comma"===o&&l(T)&&(T=i.maybeMap(T,(function(e){return e instanceof Date?b(e):e}))),null===T){if(c)return m&&!S?m(n,p.encoder,_,"key",x):n;T=""}if("string"===typeof(E=T)||"number"===typeof E||"boolean"===typeof E||"symbol"===typeof E||"bigint"===typeof E||i.isBuffer(T))return m?[w(S?n:m(n,p.encoder,_,"key",x))+"="+w(m(T,p.encoder,_,"value",x))]:[w(n)+"="+w(String(T))];var I,P=[];if("undefined"===typeof T)return P;if("comma"===o&&l(T))S&&m&&(T=i.maybeMap(T,m)),I=[{value:T.length>0?T.join(",")||null:void 0}];else if(l(g))I=g;else{var D=Object.keys(T);I=v?D.sort(v):D}var A=h?n.replace(/\./g,"%2E"):n,R=a&&l(T)&&1===T.length?A+"[]":A;if(s&&l(T)&&0===T.length)return R+"[]";for(var M=0;M0?x+b:""}},92113:(e,t,n)=>{"use strict";var r=n(21777),i=Object.prototype.hasOwnProperty,o=Array.isArray,a=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),s=function(e,t){for(var n=t&&t.plainObjects?Object.create(null):{},r=0;r1;){var t=e.pop(),n=t.obj[t.prop];if(o(n)){for(var r=[],i=0;i=48&&u<=57||u>=65&&u<=90||u>=97&&u<=122||o===r.RFC1738&&(40===u||41===u)?l+=s.charAt(c):u<128?l+=a[u]:u<2048?l+=a[192|u>>6]+a[128|63&u]:u<55296||u>=57344?l+=a[224|u>>12]+a[128|u>>6&63]+a[128|63&u]:(c+=1,u=65536+((1023&u)<<10|1023&s.charCodeAt(c)),l+=a[240|u>>18]+a[128|u>>12&63]+a[128|u>>6&63]+a[128|63&u])}return l},isBuffer:function(e){return!(!e||"object"!==typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(o(e)){for(var n=[],r=0;r{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var i=s(n(68963)),o=s(n(69886)),a=["text","onCopy","options","children"];function s(e){return e&&e.__esModule?e:{default:e}}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function c(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function d(e,t){for(var n=0;n{"use strict";var r=n(63637).CopyToClipboard;r.CopyToClipboard=r,e.exports=r},9314:(e,t,n)=>{"use strict";var r=n(68963),i=n(29558);function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n",t=ce.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,r){MSApp.execUnsafeLocalFunction((function(){return ue(e,t)}))}:ue);function he(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var pe={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},fe=["Webkit","ms","Moz","O"];function me(e,t,n){return null==t||"boolean"===typeof t||""===t?"":n||"number"!==typeof t||0===t||pe.hasOwnProperty(e)&&pe[e]?(""+t).trim():t+"px"}function ge(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),i=me(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}Object.keys(pe).forEach((function(e){fe.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),pe[t]=pe[e]}))}));var ve=L({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ye(e,t){if(t){if(ve[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(o(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(o(60));if("object"!==typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(o(61))}if(null!=t.style&&"object"!==typeof t.style)throw Error(o(62))}}function be(e,t){if(-1===e.indexOf("-"))return"string"===typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var xe=null;function we(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var Se=null,_e=null,Ce=null;function Ee(e){if(e=bi(e)){if("function"!==typeof Se)throw Error(o(280));var t=e.stateNode;t&&(t=wi(t),Se(e.stateNode,e.type,t))}}function Te(e){_e?Ce?Ce.push(e):Ce=[e]:_e=e}function Oe(){if(_e){var e=_e,t=Ce;if(Ce=_e=null,Ee(e),t)for(e=0;e>>=0,0===e?32:31-(st(e)/lt|0)|0},st=Math.log,lt=Math.LN2;var ct=64,ut=4194304;function dt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ht(e,t){var n=e.pendingLanes;if(0===n)return 0;var r=0,i=e.suspendedLanes,o=e.pingedLanes,a=268435455&n;if(0!==a){var s=a&~i;0!==s?r=dt(s):0!==(o&=a)&&(r=dt(o))}else 0!==(a=n&~i)?r=dt(a):0!==o&&(r=dt(o));if(0===r)return 0;if(0!==t&&t!==r&&0===(t&i)&&((i=r&-r)>=(o=t&-t)||16===i&&0!==(4194240&o)))return t;if(0!==(4&r)&&(r|=16&n),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function vt(e,t,n){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-at(t)]=n}function yt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-at(n),i=1<=Rn),Fn=String.fromCharCode(32),zn=!1;function Bn(e,t){switch(e){case"keyup":return-1!==Dn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Un(e){return"object"===typeof(e=e.detail)&&"data"in e?e.data:null}var Hn=!1;var Vn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Gn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Vn[e.type]:"textarea"===t}function Wn(e,t,n,r){Te(r),0<(t=qr(t,"onChange")).length&&(n=new un("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var qn=null,Zn=null;function Yn(e){Fr(e,0)}function Kn(e){if(Z(xi(e)))return e}function Qn(e,t){if("change"===e)return t}var Xn=!1;if(u){var $n;if(u){var Jn="oninput"in document;if(!Jn){var er=document.createElement("div");er.setAttribute("oninput","return;"),Jn="function"===typeof er.oninput}$n=Jn}else $n=!1;Xn=$n&&(!document.documentMode||9=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=cr(r)}}function dr(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?dr(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function hr(){for(var e=window,t=Y();t instanceof e.HTMLIFrameElement;){try{var n="string"===typeof t.contentWindow.location.href}catch(r){n=!1}if(!n)break;t=Y((e=t.contentWindow).document)}return t}function pr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function fr(e){var t=hr(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&dr(n.ownerDocument.documentElement,n)){if(null!==r&&pr(n))if(t=r.start,void 0===(e=r.end)&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if((e=(t=n.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var i=n.textContent.length,o=Math.min(r.start,i);r=void 0===r.end?o:Math.min(r.end,i),!e.extend&&o>r&&(i=r,r=o,o=i),i=ur(n,o);var a=ur(n,r);i&&a&&(1!==e.rangeCount||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&((t=t.createRange()).setStart(i.node,i.offset),e.removeAllRanges(),o>r?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.offset),e.addRange(t)))}for(t=[],e=n;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"===typeof n.focus&&n.focus(),n=0;n=document.documentMode,gr=null,vr=null,yr=null,br=!1;function xr(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;br||null==gr||gr!==Y(r)||("selectionStart"in(r=gr)&&pr(r)?r={start:r.selectionStart,end:r.selectionEnd}:r={anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},yr&&lr(yr,r)||(yr=r,0<(r=qr(vr,"onSelect")).length&&(t=new un("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=gr)))}function wr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var Sr={animationend:wr("Animation","AnimationEnd"),animationiteration:wr("Animation","AnimationIteration"),animationstart:wr("Animation","AnimationStart"),transitionend:wr("Transition","TransitionEnd")},_r={},Cr={};function Er(e){if(_r[e])return _r[e];if(!Sr[e])return e;var t,n=Sr[e];for(t in n)if(n.hasOwnProperty(t)&&t in Cr)return _r[e]=n[t];return e}u&&(Cr=document.createElement("div").style,"AnimationEvent"in window||(delete Sr.animationend.animation,delete Sr.animationiteration.animation,delete Sr.animationstart.animation),"TransitionEvent"in window||delete Sr.transitionend.transition);var Tr=Er("animationend"),Or=Er("animationiteration"),Nr=Er("animationstart"),kr=Er("transitionend"),jr=new Map,Ir="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Pr(e,t){jr.set(e,t),l(t,[e])}for(var Dr=0;Dr_i||(e.current=Si[_i],Si[_i]=null,_i--)}function Ti(e,t){_i++,Si[_i]=e.current,e.current=t}var Oi={},Ni=Ci(Oi),ki=Ci(!1),ji=Oi;function Ii(e,t){var n=e.type.contextTypes;if(!n)return Oi;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i,o={};for(i in n)o[i]=t[i];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function Pi(e){return null!==(e=e.childContextTypes)&&void 0!==e}function Di(){Ei(ki),Ei(Ni)}function Ai(e,t,n){if(Ni.current!==Oi)throw Error(o(168));Ti(Ni,t),Ti(ki,n)}function Ri(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,"function"!==typeof r.getChildContext)return n;for(var i in r=r.getChildContext())if(!(i in t))throw Error(o(108,V(e)||"Unknown",i));return L({},n,r)}function Mi(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Oi,ji=Ni.current,Ti(Ni,e),Ti(ki,ki.current),!0}function Li(e,t,n){var r=e.stateNode;if(!r)throw Error(o(169));n?(e=Ri(e,t,ji),r.__reactInternalMemoizedMergedChildContext=e,Ei(ki),Ei(Ni),Ti(Ni,e)):Ei(ki),Ti(ki,n)}var Fi=null,zi=!1,Bi=!1;function Ui(e){null===Fi?Fi=[e]:Fi.push(e)}function Hi(){if(!Bi&&null!==Fi){Bi=!0;var e=0,t=bt;try{var n=Fi;for(bt=1;e>=a,i-=a,Qi=1<<32-at(t)+i|n<m?(g=d,d=null):g=d.sibling;var v=p(i,d,s[m],l);if(null===v){null===d&&(d=g);break}e&&d&&null===v.alternate&&t(i,d),o=a(v,o,m),null===u?c=v:u.sibling=v,u=v,d=g}if(m===s.length)return n(i,d),io&&$i(i,m),c;if(null===d){for(;mg?(v=m,m=null):v=m.sibling;var b=p(i,m,y.value,c);if(null===b){null===m&&(m=v);break}e&&m&&null===b.alternate&&t(i,m),s=a(b,s,g),null===d?u=b:d.sibling=b,d=b,m=v}if(y.done)return n(i,m),io&&$i(i,g),u;if(null===m){for(;!y.done;g++,y=l.next())null!==(y=h(i,y.value,c))&&(s=a(y,s,g),null===d?u=y:d.sibling=y,d=y);return io&&$i(i,g),u}for(m=r(i,m);!y.done;g++,y=l.next())null!==(y=f(m,i,g,y.value,c))&&(e&&null!==y.alternate&&m.delete(null===y.key?g:y.key),s=a(y,s,g),null===d?u=y:d.sibling=y,d=y);return e&&m.forEach((function(e){return t(i,e)})),io&&$i(i,g),u}return function e(r,o,a,l){if("object"===typeof a&&null!==a&&a.type===_&&null===a.key&&(a=a.props.children),"object"===typeof a&&null!==a){switch(a.$$typeof){case w:e:{for(var c=a.key,u=o;null!==u;){if(u.key===c){if((c=a.type)===_){if(7===u.tag){n(r,u.sibling),(o=i(u,a.props.children)).return=r,r=o;break e}}else if(u.elementType===c||"object"===typeof c&&null!==c&&c.$$typeof===P&&Ko(c)===u.type){n(r,u.sibling),(o=i(u,a.props)).ref=Zo(r,u,a),o.return=r,r=o;break e}n(r,u);break}t(r,u),u=u.sibling}a.type===_?((o=Mc(a.props.children,r.mode,l,a.key)).return=r,r=o):((l=Rc(a.type,a.key,a.props,null,r.mode,l)).ref=Zo(r,o,a),l.return=r,r=l)}return s(r);case S:e:{for(u=a.key;null!==o;){if(o.key===u){if(4===o.tag&&o.stateNode.containerInfo===a.containerInfo&&o.stateNode.implementation===a.implementation){n(r,o.sibling),(o=i(o,a.children||[])).return=r,r=o;break e}n(r,o);break}t(r,o),o=o.sibling}(o=zc(a,r.mode,l)).return=r,r=o}return s(r);case P:return e(r,o,(u=a._init)(a._payload),l)}if(te(a))return m(r,o,a,l);if(R(a))return g(r,o,a,l);Yo(r,a)}return"string"===typeof a&&""!==a||"number"===typeof a?(a=""+a,null!==o&&6===o.tag?(n(r,o.sibling),(o=i(o,a)).return=r,r=o):(n(r,o),(o=Fc(a,r.mode,l)).return=r,r=o),s(r)):n(r,o)}}var Xo=Qo(!0),$o=Qo(!1),Jo={},ea=Ci(Jo),ta=Ci(Jo),na=Ci(Jo);function ra(e){if(e===Jo)throw Error(o(174));return e}function ia(e,t){switch(Ti(na,t),Ti(ta,e),Ti(ea,Jo),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:le(null,"");break;default:t=le(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Ei(ea),Ti(ea,t)}function oa(){Ei(ea),Ei(ta),Ei(na)}function aa(e){ra(na.current);var t=ra(ea.current),n=le(t,e.type);t!==n&&(Ti(ta,e),Ti(ea,n))}function sa(e){ta.current===e&&(Ei(ea),Ei(ta))}var la=Ci(0);function ca(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!==(128&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ua=[];function da(){for(var e=0;en?n:4,e(!0);var r=pa.transition;pa.transition={};try{e(!1),t()}finally{bt=n,pa.transition=r}}function es(){return Oa().memoizedState}function ts(e,t,n){var r=nc(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},rs(e))is(t,n);else if(null!==(n=ko(e,t,n,r))){rc(n,e,r,tc()),os(n,t,r)}}function ns(e,t,n){var r=nc(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(rs(e))is(t,i);else{var o=e.alternate;if(0===e.lanes&&(null===o||0===o.lanes)&&null!==(o=t.lastRenderedReducer))try{var a=t.lastRenderedState,s=o(a,n);if(i.hasEagerState=!0,i.eagerState=s,sr(s,a)){var l=t.interleaved;return null===l?(i.next=i,No(t)):(i.next=l.next,l.next=i),void(t.interleaved=i)}}catch(c){}null!==(n=ko(e,t,i,r))&&(rc(n,e,r,i=tc()),os(n,t,r))}}function rs(e){var t=e.alternate;return e===ma||null!==t&&t===ma}function is(e,t){ba=ya=!0;var n=e.pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function os(e,t,n){if(0!==(4194240&n)){var r=t.lanes;n|=r&=e.pendingLanes,t.lanes=n,yt(e,n)}}var as={readContext:To,useCallback:Sa,useContext:Sa,useEffect:Sa,useImperativeHandle:Sa,useInsertionEffect:Sa,useLayoutEffect:Sa,useMemo:Sa,useReducer:Sa,useRef:Sa,useState:Sa,useDebugValue:Sa,useDeferredValue:Sa,useTransition:Sa,useMutableSource:Sa,useSyncExternalStore:Sa,useId:Sa,unstable_isNewReconciler:!1},ss={readContext:To,useCallback:function(e,t){return Ta().memoizedState=[e,void 0===t?null:t],e},useContext:To,useEffect:Va,useImperativeHandle:function(e,t,n){return n=null!==n&&void 0!==n?n.concat([e]):null,Ua(4194308,4,Za.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Ua(4194308,4,e,t)},useInsertionEffect:function(e,t){return Ua(4,2,e,t)},useMemo:function(e,t){var n=Ta();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Ta();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=ts.bind(null,ma,e),[r.memoizedState,e]},useRef:function(e){return e={current:e},Ta().memoizedState=e},useState:Fa,useDebugValue:Ka,useDeferredValue:function(e){return Ta().memoizedState=e},useTransition:function(){var e=Fa(!1),t=e[0];return e=Ja.bind(null,e[1]),Ta().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=ma,i=Ta();if(io){if(void 0===n)throw Error(o(407));n=n()}else{if(n=t(),null===jl)throw Error(o(349));0!==(30&fa)||Da(r,t,n)}i.memoizedState=n;var a={value:n,getSnapshot:t};return i.queue=a,Va(Ra.bind(null,r,a,e),[e]),r.flags|=2048,za(9,Aa.bind(null,r,a,n,t),void 0,null),n},useId:function(){var e=Ta(),t=jl.identifierPrefix;if(io){var n=Xi;t=":"+t+"R"+(n=(Qi&~(1<<32-at(Qi)-1)).toString(32)+n),0<(n=xa++)&&(t+="H"+n.toString(32)),t+=":"}else t=":"+t+"r"+(n=wa++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},ls={readContext:To,useCallback:Qa,useContext:To,useEffect:Ga,useImperativeHandle:Ya,useInsertionEffect:Wa,useLayoutEffect:qa,useMemo:Xa,useReducer:ka,useRef:Ba,useState:function(){return ka(Na)},useDebugValue:Ka,useDeferredValue:function(e){return $a(Oa(),ga.memoizedState,e)},useTransition:function(){return[ka(Na)[0],Oa().memoizedState]},useMutableSource:Ia,useSyncExternalStore:Pa,useId:es,unstable_isNewReconciler:!1},cs={readContext:To,useCallback:Qa,useContext:To,useEffect:Ga,useImperativeHandle:Ya,useInsertionEffect:Wa,useLayoutEffect:qa,useMemo:Xa,useReducer:ja,useRef:Ba,useState:function(){return ja(Na)},useDebugValue:Ka,useDeferredValue:function(e){var t=Oa();return null===ga?t.memoizedState=e:$a(t,ga.memoizedState,e)},useTransition:function(){return[ja(Na)[0],Oa().memoizedState]},useMutableSource:Ia,useSyncExternalStore:Pa,useId:es,unstable_isNewReconciler:!1};function us(e,t){try{var n="",r=t;do{n+=U(r),r=r.return}while(r);var i=n}catch(o){i="\nError generating stack: "+o.message+"\n"+o.stack}return{value:e,source:t,stack:i,digest:null}}function ds(e,t,n){return{value:e,source:null,stack:null!=n?n:null,digest:null!=t?t:null}}function hs(e,t){try{console.error(t.value)}catch(n){setTimeout((function(){throw n}))}}var ps="function"===typeof WeakMap?WeakMap:Map;function fs(e,t,n){(n=Ao(-1,n)).tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Wl||(Wl=!0,ql=r),hs(0,t)},n}function ms(e,t,n){(n=Ao(-1,n)).tag=3;var r=e.type.getDerivedStateFromError;if("function"===typeof r){var i=t.value;n.payload=function(){return r(i)},n.callback=function(){hs(0,t)}}var o=e.stateNode;return null!==o&&"function"===typeof o.componentDidCatch&&(n.callback=function(){hs(0,t),"function"!==typeof r&&(null===Zl?Zl=new Set([this]):Zl.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}function gs(e,t,n){var r=e.pingCache;if(null===r){r=e.pingCache=new ps;var i=new Set;r.set(t,i)}else void 0===(i=r.get(t))&&(i=new Set,r.set(t,i));i.has(n)||(i.add(n),e=Tc.bind(null,e,t,n),t.then(e,e))}function vs(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function ys(e,t,n,r,i){return 0===(1&e.mode)?(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,1===n.tag&&(null===n.alternate?n.tag=17:((t=Ao(-1,1)).tag=2,Ro(n,t,1))),n.lanes|=1),e):(e.flags|=65536,e.lanes=i,e)}var bs=x.ReactCurrentOwner,xs=!1;function ws(e,t,n,r){t.child=null===e?$o(t,null,n,r):Xo(t,e.child,n,r)}function Ss(e,t,n,r,i){n=n.render;var o=t.ref;return Eo(t,i),r=Ca(e,t,n,r,o,i),n=Ea(),null===e||xs?(io&&n&&eo(t),t.flags|=1,ws(e,t,r,i),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,Ws(e,t,i))}function _s(e,t,n,r,i){if(null===e){var o=n.type;return"function"!==typeof o||Dc(o)||void 0!==o.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Rc(n.type,null,r,t,t.mode,i)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=o,Cs(e,t,o,r,i))}if(o=e.child,0===(e.lanes&i)){var a=o.memoizedProps;if((n=null!==(n=n.compare)?n:lr)(a,r)&&e.ref===t.ref)return Ws(e,t,i)}return t.flags|=1,(e=Ac(o,r)).ref=t.ref,e.return=t,t.child=e}function Cs(e,t,n,r,i){if(null!==e){var o=e.memoizedProps;if(lr(o,r)&&e.ref===t.ref){if(xs=!1,t.pendingProps=r=o,0===(e.lanes&i))return t.lanes=e.lanes,Ws(e,t,i);0!==(131072&e.flags)&&(xs=!0)}}return Os(e,t,n,r,i)}function Es(e,t,n){var r=t.pendingProps,i=r.children,o=null!==e?e.memoizedState:null;if("hidden"===r.mode)if(0===(1&t.mode))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Ti(Al,Dl),Dl|=n;else{if(0===(1073741824&n))return e=null!==o?o.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Ti(Al,Dl),Dl|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=null!==o?o.baseLanes:n,Ti(Al,Dl),Dl|=r}else null!==o?(r=o.baseLanes|n,t.memoizedState=null):r=n,Ti(Al,Dl),Dl|=r;return ws(e,t,i,n),t.child}function Ts(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Os(e,t,n,r,i){var o=Pi(n)?ji:Ni.current;return o=Ii(t,o),Eo(t,i),n=Ca(e,t,n,r,o,i),r=Ea(),null===e||xs?(io&&r&&eo(t),t.flags|=1,ws(e,t,n,i),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,Ws(e,t,i))}function Ns(e,t,n,r,i){if(Pi(n)){var o=!0;Mi(t)}else o=!1;if(Eo(t,i),null===t.stateNode)Gs(e,t),Go(t,n,r),qo(t,n,r,i),r=!0;else if(null===e){var a=t.stateNode,s=t.memoizedProps;a.props=s;var l=a.context,c=n.contextType;"object"===typeof c&&null!==c?c=To(c):c=Ii(t,c=Pi(n)?ji:Ni.current);var u=n.getDerivedStateFromProps,d="function"===typeof u||"function"===typeof a.getSnapshotBeforeUpdate;d||"function"!==typeof a.UNSAFE_componentWillReceiveProps&&"function"!==typeof a.componentWillReceiveProps||(s!==r||l!==c)&&Wo(t,a,r,c),Io=!1;var h=t.memoizedState;a.state=h,Fo(t,r,a,i),l=t.memoizedState,s!==r||h!==l||ki.current||Io?("function"===typeof u&&(Uo(t,n,u,r),l=t.memoizedState),(s=Io||Vo(t,n,s,r,h,l,c))?(d||"function"!==typeof a.UNSAFE_componentWillMount&&"function"!==typeof a.componentWillMount||("function"===typeof a.componentWillMount&&a.componentWillMount(),"function"===typeof a.UNSAFE_componentWillMount&&a.UNSAFE_componentWillMount()),"function"===typeof a.componentDidMount&&(t.flags|=4194308)):("function"===typeof a.componentDidMount&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),a.props=r,a.state=l,a.context=c,r=s):("function"===typeof a.componentDidMount&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,Do(e,t),s=t.memoizedProps,c=t.type===t.elementType?s:vo(t.type,s),a.props=c,d=t.pendingProps,h=a.context,"object"===typeof(l=n.contextType)&&null!==l?l=To(l):l=Ii(t,l=Pi(n)?ji:Ni.current);var p=n.getDerivedStateFromProps;(u="function"===typeof p||"function"===typeof a.getSnapshotBeforeUpdate)||"function"!==typeof a.UNSAFE_componentWillReceiveProps&&"function"!==typeof a.componentWillReceiveProps||(s!==d||h!==l)&&Wo(t,a,r,l),Io=!1,h=t.memoizedState,a.state=h,Fo(t,r,a,i);var f=t.memoizedState;s!==d||h!==f||ki.current||Io?("function"===typeof p&&(Uo(t,n,p,r),f=t.memoizedState),(c=Io||Vo(t,n,c,r,h,f,l)||!1)?(u||"function"!==typeof a.UNSAFE_componentWillUpdate&&"function"!==typeof a.componentWillUpdate||("function"===typeof a.componentWillUpdate&&a.componentWillUpdate(r,f,l),"function"===typeof a.UNSAFE_componentWillUpdate&&a.UNSAFE_componentWillUpdate(r,f,l)),"function"===typeof a.componentDidUpdate&&(t.flags|=4),"function"===typeof a.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!==typeof a.componentDidUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),"function"!==typeof a.getSnapshotBeforeUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=f),a.props=r,a.state=f,a.context=l,r=c):("function"!==typeof a.componentDidUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),"function"!==typeof a.getSnapshotBeforeUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),r=!1)}return ks(e,t,n,r,o,i)}function ks(e,t,n,r,i,o){Ts(e,t);var a=0!==(128&t.flags);if(!r&&!a)return i&&Li(t,n,!1),Ws(e,t,o);r=t.stateNode,bs.current=t;var s=a&&"function"!==typeof n.getDerivedStateFromError?null:r.render();return t.flags|=1,null!==e&&a?(t.child=Xo(t,e.child,null,o),t.child=Xo(t,null,s,o)):ws(e,t,s,o),t.memoizedState=r.state,i&&Li(t,n,!0),t.child}function js(e){var t=e.stateNode;t.pendingContext?Ai(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Ai(0,t.context,!1),ia(e,t.containerInfo)}function Is(e,t,n,r,i){return fo(),mo(i),t.flags|=256,ws(e,t,n,r),t.child}var Ps,Ds,As,Rs,Ms={dehydrated:null,treeContext:null,retryLane:0};function Ls(e){return{baseLanes:e,cachePool:null,transitions:null}}function Fs(e,t,n){var r,i=t.pendingProps,a=la.current,s=!1,l=0!==(128&t.flags);if((r=l)||(r=(null===e||null!==e.memoizedState)&&0!==(2&a)),r?(s=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(a|=1),Ti(la,1&a),null===e)return co(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(0===(1&t.mode)?t.lanes=1:"$!"===e.data?t.lanes=8:t.lanes=1073741824,null):(l=i.children,e=i.fallback,s?(i=t.mode,s=t.child,l={mode:"hidden",children:l},0===(1&i)&&null!==s?(s.childLanes=0,s.pendingProps=l):s=Lc(l,i,0,null),e=Mc(e,i,n,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Ls(n),t.memoizedState=Ms,e):zs(t,l));if(null!==(a=e.memoizedState)&&null!==(r=a.dehydrated))return function(e,t,n,r,i,a,s){if(n)return 256&t.flags?(t.flags&=-257,Bs(e,t,s,r=ds(Error(o(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(a=r.fallback,i=t.mode,r=Lc({mode:"visible",children:r.children},i,0,null),(a=Mc(a,i,s,null)).flags|=2,r.return=t,a.return=t,r.sibling=a,t.child=r,0!==(1&t.mode)&&Xo(t,e.child,null,s),t.child.memoizedState=Ls(s),t.memoizedState=Ms,a);if(0===(1&t.mode))return Bs(e,t,s,null);if("$!"===i.data){if(r=i.nextSibling&&i.nextSibling.dataset)var l=r.dgst;return r=l,Bs(e,t,s,r=ds(a=Error(o(419)),r,void 0))}if(l=0!==(s&e.childLanes),xs||l){if(null!==(r=jl)){switch(s&-s){case 4:i=2;break;case 16:i=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:i=32;break;case 536870912:i=268435456;break;default:i=0}0!==(i=0!==(i&(r.suspendedLanes|s))?0:i)&&i!==a.retryLane&&(a.retryLane=i,jo(e,i),rc(r,e,i,-1))}return gc(),Bs(e,t,s,r=ds(Error(o(421))))}return"$?"===i.data?(t.flags|=128,t.child=e.child,t=Nc.bind(null,e),i._reactRetry=t,null):(e=a.treeContext,ro=ci(i.nextSibling),no=t,io=!0,oo=null,null!==e&&(Zi[Yi++]=Qi,Zi[Yi++]=Xi,Zi[Yi++]=Ki,Qi=e.id,Xi=e.overflow,Ki=t),t=zs(t,r.children),t.flags|=4096,t)}(e,t,l,i,r,a,n);if(s){s=i.fallback,l=t.mode,r=(a=e.child).sibling;var c={mode:"hidden",children:i.children};return 0===(1&l)&&t.child!==a?((i=t.child).childLanes=0,i.pendingProps=c,t.deletions=null):(i=Ac(a,c)).subtreeFlags=14680064&a.subtreeFlags,null!==r?s=Ac(r,s):(s=Mc(s,l,n,null)).flags|=2,s.return=t,i.return=t,i.sibling=s,t.child=i,i=s,s=t.child,l=null===(l=e.child.memoizedState)?Ls(n):{baseLanes:l.baseLanes|n,cachePool:null,transitions:l.transitions},s.memoizedState=l,s.childLanes=e.childLanes&~n,t.memoizedState=Ms,i}return e=(s=e.child).sibling,i=Ac(s,{mode:"visible",children:i.children}),0===(1&t.mode)&&(i.lanes=n),i.return=t,i.sibling=null,null!==e&&(null===(n=t.deletions)?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=i,t.memoizedState=null,i}function zs(e,t){return(t=Lc({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function Bs(e,t,n,r){return null!==r&&mo(r),Xo(t,e.child,null,n),(e=zs(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Us(e,t,n){e.lanes|=t;var r=e.alternate;null!==r&&(r.lanes|=t),Co(e.return,t,n)}function Hs(e,t,n,r,i){var o=e.memoizedState;null===o?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i)}function Vs(e,t,n){var r=t.pendingProps,i=r.revealOrder,o=r.tail;if(ws(e,t,r.children,n),0!==(2&(r=la.current)))r=1&r|2,t.flags|=128;else{if(null!==e&&0!==(128&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Us(e,n,t);else if(19===e.tag)Us(e,n,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(Ti(la,r),0===(1&t.mode))t.memoizedState=null;else switch(i){case"forwards":for(n=t.child,i=null;null!==n;)null!==(e=n.alternate)&&null===ca(e)&&(i=n),n=n.sibling;null===(n=i)?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),Hs(t,!1,i,n,o);break;case"backwards":for(n=null,i=t.child,t.child=null;null!==i;){if(null!==(e=i.alternate)&&null===ca(e)){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}Hs(t,!0,n,null,o);break;case"together":Hs(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Gs(e,t){0===(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Ws(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),Ll|=t.lanes,0===(n&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(o(153));if(null!==t.child){for(n=Ac(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Ac(e,e.pendingProps)).return=t;n.sibling=null}return t.child}function qs(e,t){if(!io)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?t||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Zs(e){var t=null!==e.alternate&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;null!==i;)n|=i.lanes|i.childLanes,r|=14680064&i.subtreeFlags,r|=14680064&i.flags,i.return=e,i=i.sibling;else for(i=e.child;null!==i;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Ys(e,t,n){var r=t.pendingProps;switch(to(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Zs(t),null;case 1:case 17:return Pi(t.type)&&Di(),Zs(t),null;case 3:return r=t.stateNode,oa(),Ei(ki),Ei(Ni),da(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(ho(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&0===(256&t.flags)||(t.flags|=1024,null!==oo&&(sc(oo),oo=null))),Ds(e,t),Zs(t),null;case 5:sa(t);var i=ra(na.current);if(n=t.type,null!==e&&null!=t.stateNode)As(e,t,n,r,i),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(null===t.stateNode)throw Error(o(166));return Zs(t),null}if(e=ra(ea.current),ho(t)){r=t.stateNode,n=t.type;var a=t.memoizedProps;switch(r[hi]=t,r[pi]=a,e=0!==(1&t.mode),n){case"dialog":zr("cancel",r),zr("close",r);break;case"iframe":case"object":case"embed":zr("load",r);break;case"video":case"audio":for(i=0;i<\/script>",e=e.removeChild(e.firstChild)):"string"===typeof r.is?e=l.createElement(n,{is:r.is}):(e=l.createElement(n),"select"===n&&(l=e,r.multiple?l.multiple=!0:r.size&&(l.size=r.size))):e=l.createElementNS(e,n),e[hi]=t,e[pi]=r,Ps(e,t,!1,!1),t.stateNode=e;e:{switch(l=be(n,r),n){case"dialog":zr("cancel",e),zr("close",e),i=r;break;case"iframe":case"object":case"embed":zr("load",e),i=r;break;case"video":case"audio":for(i=0;iVl&&(t.flags|=128,r=!0,qs(a,!1),t.lanes=4194304)}else{if(!r)if(null!==(e=ca(l))){if(t.flags|=128,r=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),qs(a,!0),null===a.tail&&"hidden"===a.tailMode&&!l.alternate&&!io)return Zs(t),null}else 2*Xe()-a.renderingStartTime>Vl&&1073741824!==n&&(t.flags|=128,r=!0,qs(a,!1),t.lanes=4194304);a.isBackwards?(l.sibling=t.child,t.child=l):(null!==(n=a.last)?n.sibling=l:t.child=l,a.last=l)}return null!==a.tail?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=Xe(),t.sibling=null,n=la.current,Ti(la,r?1&n|2:1&n),t):(Zs(t),null);case 22:case 23:return hc(),r=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==r&&(t.flags|=8192),r&&0!==(1&t.mode)?0!==(1073741824&Dl)&&(Zs(t),6&t.subtreeFlags&&(t.flags|=8192)):Zs(t),null;case 24:case 25:return null}throw Error(o(156,t.tag))}function Ks(e,t){switch(to(t),t.tag){case 1:return Pi(t.type)&&Di(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return oa(),Ei(ki),Ei(Ni),da(),0!==(65536&(e=t.flags))&&0===(128&e)?(t.flags=-65537&e|128,t):null;case 5:return sa(t),null;case 13:if(Ei(la),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(o(340));fo()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Ei(la),null;case 4:return oa(),null;case 10:return _o(t.type._context),null;case 22:case 23:return hc(),null;default:return null}}Ps=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Ds=function(){},As=function(e,t,n,r){var i=e.memoizedProps;if(i!==r){e=t.stateNode,ra(ea.current);var o,a=null;switch(n){case"input":i=K(e,i),r=K(e,r),a=[];break;case"select":i=L({},i,{value:void 0}),r=L({},r,{value:void 0}),a=[];break;case"textarea":i=re(e,i),r=re(e,r),a=[];break;default:"function"!==typeof i.onClick&&"function"===typeof r.onClick&&(e.onclick=Jr)}for(u in ye(n,r),n=null,i)if(!r.hasOwnProperty(u)&&i.hasOwnProperty(u)&&null!=i[u])if("style"===u){var l=i[u];for(o in l)l.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(s.hasOwnProperty(u)?a||(a=[]):(a=a||[]).push(u,null));for(u in r){var c=r[u];if(l=null!=i?i[u]:void 0,r.hasOwnProperty(u)&&c!==l&&(null!=c||null!=l))if("style"===u)if(l){for(o in l)!l.hasOwnProperty(o)||c&&c.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in c)c.hasOwnProperty(o)&&l[o]!==c[o]&&(n||(n={}),n[o]=c[o])}else n||(a||(a=[]),a.push(u,n)),n=c;else"dangerouslySetInnerHTML"===u?(c=c?c.__html:void 0,l=l?l.__html:void 0,null!=c&&l!==c&&(a=a||[]).push(u,c)):"children"===u?"string"!==typeof c&&"number"!==typeof c||(a=a||[]).push(u,""+c):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(s.hasOwnProperty(u)?(null!=c&&"onScroll"===u&&zr("scroll",e),a||l===c||(a=[])):(a=a||[]).push(u,c))}n&&(a=a||[]).push("style",n);var u=a;(t.updateQueue=u)&&(t.flags|=4)}},Rs=function(e,t,n,r){n!==r&&(t.flags|=4)};var Qs=!1,Xs=!1,$s="function"===typeof WeakSet?WeakSet:Set,Js=null;function el(e,t){var n=e.ref;if(null!==n)if("function"===typeof n)try{n(null)}catch(r){Ec(e,t,r)}else n.current=null}function tl(e,t,n){try{n()}catch(r){Ec(e,t,r)}}var nl=!1;function rl(e,t,n){var r=t.updateQueue;if(null!==(r=null!==r?r.lastEffect:null)){var i=r=r.next;do{if((i.tag&e)===e){var o=i.destroy;i.destroy=void 0,void 0!==o&&tl(t,n,o)}i=i.next}while(i!==r)}}function il(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function ol(e){var t=e.ref;if(null!==t){var n=e.stateNode;e.tag,e=n,"function"===typeof t?t(e):t.current=e}}function al(e){var t=e.alternate;null!==t&&(e.alternate=null,al(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(null!==(t=e.stateNode)&&(delete t[hi],delete t[pi],delete t[mi],delete t[gi],delete t[vi])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function sl(e){return 5===e.tag||3===e.tag||4===e.tag}function ll(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||sl(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function cl(e,t,n){var r=e.tag;if(5===r||6===r)e=e.stateNode,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!==(n=n._reactRootContainer)&&void 0!==n||null!==t.onclick||(t.onclick=Jr));else if(4!==r&&null!==(e=e.child))for(cl(e,t,n),e=e.sibling;null!==e;)cl(e,t,n),e=e.sibling}function ul(e,t,n){var r=e.tag;if(5===r||6===r)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==r&&null!==(e=e.child))for(ul(e,t,n),e=e.sibling;null!==e;)ul(e,t,n),e=e.sibling}var dl=null,hl=!1;function pl(e,t,n){for(n=n.child;null!==n;)fl(e,t,n),n=n.sibling}function fl(e,t,n){if(ot&&"function"===typeof ot.onCommitFiberUnmount)try{ot.onCommitFiberUnmount(it,n)}catch(s){}switch(n.tag){case 5:Xs||el(n,t);case 6:var r=dl,i=hl;dl=null,pl(e,t,n),hl=i,null!==(dl=r)&&(hl?(e=dl,n=n.stateNode,8===e.nodeType?e.parentNode.removeChild(n):e.removeChild(n)):dl.removeChild(n.stateNode));break;case 18:null!==dl&&(hl?(e=dl,n=n.stateNode,8===e.nodeType?li(e.parentNode,n):1===e.nodeType&&li(e,n),Ht(e)):li(dl,n.stateNode));break;case 4:r=dl,i=hl,dl=n.stateNode.containerInfo,hl=!0,pl(e,t,n),dl=r,hl=i;break;case 0:case 11:case 14:case 15:if(!Xs&&(null!==(r=n.updateQueue)&&null!==(r=r.lastEffect))){i=r=r.next;do{var o=i,a=o.destroy;o=o.tag,void 0!==a&&(0!==(2&o)||0!==(4&o))&&tl(n,t,a),i=i.next}while(i!==r)}pl(e,t,n);break;case 1:if(!Xs&&(el(n,t),"function"===typeof(r=n.stateNode).componentWillUnmount))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(s){Ec(n,t,s)}pl(e,t,n);break;case 21:pl(e,t,n);break;case 22:1&n.mode?(Xs=(r=Xs)||null!==n.memoizedState,pl(e,t,n),Xs=r):pl(e,t,n);break;default:pl(e,t,n)}}function ml(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new $s),t.forEach((function(t){var r=kc.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))}))}}function gl(e,t){var n=t.deletions;if(null!==n)for(var r=0;ri&&(i=s),r&=~a}if(r=i,10<(r=(120>(r=Xe()-r)?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*El(r/1960))-r)){e.timeoutHandle=ri(Sc.bind(null,e,Ul,Gl),r);break}Sc(e,Ul,Gl);break;default:throw Error(o(329))}}}return ic(e,Xe()),e.callbackNode===n?oc.bind(null,e):null}function ac(e,t){var n=Bl;return e.current.memoizedState.isDehydrated&&(pc(e,t).flags|=256),2!==(e=vc(e,t))&&(t=Ul,Ul=n,null!==t&&sc(t)),e}function sc(e){null===Ul?Ul=e:Ul.push.apply(Ul,e)}function lc(e,t){for(t&=~zl,t&=~Fl,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0e?16:e,null===Kl)var r=!1;else{if(e=Kl,Kl=null,Ql=0,0!==(6&kl))throw Error(o(331));var i=kl;for(kl|=4,Js=e.current;null!==Js;){var a=Js,s=a.child;if(0!==(16&Js.flags)){var l=a.deletions;if(null!==l){for(var c=0;cXe()-Hl?pc(e,0):zl|=n),ic(e,t)}function Oc(e,t){0===t&&(0===(1&e.mode)?t=1:(t=ut,0===(130023424&(ut<<=1))&&(ut=4194304)));var n=tc();null!==(e=jo(e,t))&&(vt(e,t,n),ic(e,n))}function Nc(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),Oc(e,n)}function kc(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;null!==i&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(o(314))}null!==r&&r.delete(t),Oc(e,n)}function jc(e,t){return Ze(e,t)}function Ic(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Pc(e,t,n,r){return new Ic(e,t,n,r)}function Dc(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Ac(e,t){var n=e.alternate;return null===n?((n=Pc(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=14680064&e.flags,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Rc(e,t,n,r,i,a){var s=2;if(r=e,"function"===typeof e)Dc(e)&&(s=1);else if("string"===typeof e)s=5;else e:switch(e){case _:return Mc(n.children,i,a,t);case C:s=8,i|=8;break;case E:return(e=Pc(12,n,t,2|i)).elementType=E,e.lanes=a,e;case k:return(e=Pc(13,n,t,i)).elementType=k,e.lanes=a,e;case j:return(e=Pc(19,n,t,i)).elementType=j,e.lanes=a,e;case D:return Lc(n,i,a,t);default:if("object"===typeof e&&null!==e)switch(e.$$typeof){case T:s=10;break e;case O:s=9;break e;case N:s=11;break e;case I:s=14;break e;case P:s=16,r=null;break e}throw Error(o(130,null==e?e:typeof e,""))}return(t=Pc(s,n,t,i)).elementType=e,t.type=r,t.lanes=a,t}function Mc(e,t,n,r){return(e=Pc(7,e,r,t)).lanes=n,e}function Lc(e,t,n,r){return(e=Pc(22,e,r,t)).elementType=D,e.lanes=n,e.stateNode={isHidden:!1},e}function Fc(e,t,n){return(e=Pc(6,e,null,t)).lanes=n,e}function zc(e,t,n){return(t=Pc(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Bc(e,t,n,r,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function Uc(e,t,n,r,i,o,a,s,l){return e=new Bc(e,t,n,s,l),1===t?(t=1,!0===o&&(t|=8)):t=0,o=Pc(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Po(o),e}function Hc(e){if(!e)return Oi;e:{if(He(e=e._reactInternals)!==e||1!==e.tag)throw Error(o(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Pi(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(o(171))}if(1===e.tag){var n=e.type;if(Pi(n))return Ri(e,n,t)}return t}function Vc(e,t,n,r,i,o,a,s,l){return(e=Uc(n,r,!0,e,0,o,0,s,l)).context=Hc(null),n=e.current,(o=Ao(r=tc(),i=nc(n))).callback=void 0!==t&&null!==t?t:null,Ro(n,o,i),e.current.lanes=i,vt(e,i,r),ic(e,r),e}function Gc(e,t,n,r){var i=t.current,o=tc(),a=nc(i);return n=Hc(n),null===t.context?t.context=n:t.pendingContext=n,(t=Ao(o,a)).payload={element:e},null!==(r=void 0===r?null:r)&&(t.callback=r),null!==(e=Ro(i,t,a))&&(rc(e,i,a,o),Mo(e,i,a)),a}function Wc(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function qc(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n{"use strict";var r=n(38886);t.createRoot=r.createRoot,t.hydrateRoot=r.hydrateRoot},38886:(e,t,n)=>{"use strict";!function e(){if("undefined"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=n(9314)},77808:e=>{var t="undefined"!==typeof Element,n="function"===typeof Map,r="function"===typeof Set,i="function"===typeof ArrayBuffer&&!!ArrayBuffer.isView;function o(e,a){if(e===a)return!0;if(e&&a&&"object"==typeof e&&"object"==typeof a){if(e.constructor!==a.constructor)return!1;var s,l,c,u;if(Array.isArray(e)){if((s=e.length)!=a.length)return!1;for(l=s;0!==l--;)if(!o(e[l],a[l]))return!1;return!0}if(n&&e instanceof Map&&a instanceof Map){if(e.size!==a.size)return!1;for(u=e.entries();!(l=u.next()).done;)if(!a.has(l.value[0]))return!1;for(u=e.entries();!(l=u.next()).done;)if(!o(l.value[1],a.get(l.value[0])))return!1;return!0}if(r&&e instanceof Set&&a instanceof Set){if(e.size!==a.size)return!1;for(u=e.entries();!(l=u.next()).done;)if(!a.has(l.value[0]))return!1;return!0}if(i&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(a)){if((s=e.length)!=a.length)return!1;for(l=s;0!==l--;)if(e[l]!==a[l])return!1;return!0}if(e.constructor===RegExp)return e.source===a.source&&e.flags===a.flags;if(e.valueOf!==Object.prototype.valueOf&&"function"===typeof e.valueOf&&"function"===typeof a.valueOf)return e.valueOf()===a.valueOf();if(e.toString!==Object.prototype.toString&&"function"===typeof e.toString&&"function"===typeof a.toString)return e.toString()===a.toString();if((s=(c=Object.keys(e)).length)!==Object.keys(a).length)return!1;for(l=s;0!==l--;)if(!Object.prototype.hasOwnProperty.call(a,c[l]))return!1;if(t&&e instanceof Element)return!1;for(l=s;0!==l--;)if(("_owner"!==c[l]&&"__v"!==c[l]&&"__o"!==c[l]||!e.$$typeof)&&!o(e[c[l]],a[c[l]]))return!1;return!0}return e!==e&&a!==a}e.exports=function(e,t){try{return o(e,t)}catch(n){if((n.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw n}}},9872:(e,t)=>{"use strict";var n=60103,r=60106,i=60107,o=60108,a=60114,s=60109,l=60110,c=60112,u=60113,d=60120,h=60115,p=60116,f=60121,m=60122,g=60117,v=60129,y=60131;if("function"===typeof Symbol&&Symbol.for){var b=Symbol.for;n=b("react.element"),r=b("react.portal"),i=b("react.fragment"),o=b("react.strict_mode"),a=b("react.profiler"),s=b("react.provider"),l=b("react.context"),c=b("react.forward_ref"),u=b("react.suspense"),d=b("react.suspense_list"),h=b("react.memo"),p=b("react.lazy"),f=b("react.block"),m=b("react.server.block"),g=b("react.fundamental"),v=b("react.debug_trace_mode"),y=b("react.legacy_hidden")}function x(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case i:case a:case o:case u:case d:return e;default:switch(e=e&&e.$$typeof){case l:case c:case p:case h:case s:return e;default:return t}}case r:return t}}}t.isContextConsumer=function(e){return x(e)===l}},60380:(e,t,n)=>{"use strict";e.exports=n(9872)},83326:(e,t,n)=>{var r=n(68963),i=n(77065),o=n(50134),a=n(60305),s=r.createElement,l=n(80254),c=n(62937),u=n(81702),d=n(96243),h=n(53767),p=n(68814);e.exports=i({propTypes:{data:o.any.isRequired,search:o.oneOfType([o.func,o.bool]),searchOptions:o.shape({debounceTime:o.number}),onClick:o.func,validateQuery:o.func,isExpanded:o.func,filterOptions:o.shape({cacheResults:o.bool,ignoreCase:o.bool}),query:o.string,verboseShowOriginal:o.bool},getDefaultProps:function(){return{data:null,search:c,searchOptions:{debounceTime:0},className:"",id:"json-"+Date.now(),onClick:p,filterOptions:{cacheResults:!0,ignoreCase:!1},validateQuery:function(e){return e.length>=2},isExpanded:function(e,t){return!1},verboseShowOriginal:!1}},getInitialState:function(){return{query:this.props.query||""}},render:function(){var e=this.props,t=this.state,n=""!==t.query&&e.validateQuery(t.query),r=n?t.filterer(t.query):e.data,i=n&&d(r);return s("div",{className:"json-inspector "+e.className},this.renderToolbar(),i?s("div",{className:"json-inspector__not-found"},"Nothing found"):s(l,{data:r,onClick:e.onClick,id:e.id,getOriginal:this.getOriginal,query:n?new RegExp(t.query,e.filterOptions.ignoreCase?"i":""):null,label:"root",root:!0,isExpanded:e.isExpanded,interactiveLabel:e.interactiveLabel,verboseShowOriginal:e.verboseShowOriginal}))},renderToolbar:function(){var e=this.props.search;if(e)return s("div",{className:"json-inspector__toolbar"},s(e,{onChange:a(this.search,this.props.searchOptions.debounceTime),data:this.props.data,query:this.state.query}))},search:function(e){this.setState({query:e})},componentWillMount:function(){this.createFilterer(this.props.data,this.props.filterOptions)},componentWillReceiveProps:function(e){this.createFilterer(e.data,e.filterOptions),"string"===typeof e.query&&e.query!==this.state.query&&this.setState({query:e.query})},shouldComponentUpdate:function(e,t){return e.query!==this.props.query||t.query!==this.state.query||e.data!==this.props.data||e.onClick!==this.props.onClick},createFilterer:function(e,t){this.setState({filterer:u(e,t)})},getOriginal:function(e){return h(this.props.data,e)}})},81702:(e,t,n)=>{var r=n(65263),i=Object.keys,o=n(20800),a=n(96243);function s(e,t,n){return i(e).reduce((function(i,c){var u,d=e[c];return o(d)?(l(t,c,n)||l(t,d,n))&&(i[c]=d):l(t,c,n)?i[c]=d:(u=s(d,t,n),a(u)||r(i,function(e,t){var n={};return n[e]=t,n}(c,u))),i}),{})}function l(e,t,n){if(t){var r=String(t),i=e;return n.ignoreCase&&(r=r.toLowerCase(),i=i.toLowerCase()),-1!==r.indexOf(i)}}e.exports=function(e,t){t||(t={cacheResults:!0});var n={};return function(r){if(!t.cacheResults)return s(e,r,t);var i;if(!n[r])for(var o=r.length-1;o>0;o-=1)if(i=r.substr(0,o),n[i]){n[r]=s(n[i],r,t);break}return n[r]||(n[r]=s(e,r,t)),n[r]}}},81139:(e,t,n)=>{var r=n(68963),i=n(77065),o=r.createElement;e.exports=i({getDefaultProps:function(){return{string:"",highlight:""}},shouldComponentUpdate:function(e){return e.highlight!==this.props.highlight},render:function(){var e=this.props,t=e.string.search(e.highlight);if(!e.highlight||-1===t)return o("span",null,e.string);var n=e.highlight.source.length,r=e.string.substr(t,n);return o("span",null,e.string.split(e.highlight).map((function(e,t){return o("span",{key:t},t>0?o("span",{className:"json-inspector__hl"},r):null,e)})))}})},96243:e=>{e.exports=function(e){return 0===Object.keys(e).length}},20800:(e,t,n)=>{var r=n(39032);e.exports=function(e){var t=r(e);return"Object"!==t&&"Array"!==t}},80254:(e,t,n)=>{var r=n(68963),i=n(77065),o=n(5083),a=n(88034),s=n(39032),l=n(20800),c=n(81139),u=r.createElement,d=i({getInitialState:function(){return{expanded:this._isInitiallyExpanded(this.props)}},getDefaultProps:function(){return{root:!1,prefix:""}},render:function(){var e="id_"+a(),t=this.props,n={path:this.keypath(),key:t.label.toString(),value:t.data},r=this._onClick.bind(this,n);return u("div",{className:this.getClassName(),id:"leaf-"+this._rootPath()},u("input",{className:"json-inspector__radio",type:"radio",name:t.id,id:e,tabIndex:-1}),u("label",{className:"json-inspector__line",htmlFor:e,onClick:r},u("div",{className:"json-inspector__flatpath"},n.path),u("span",{className:"json-inspector__key"},this.format(n.key),":",this.renderInteractiveLabel(n.key,!0)),this.renderTitle(),this.renderShowOriginalButton()),this.renderChildren())},renderTitle:function(){var e=this.data(),t=s(e);switch(t){case"Array":return u("span",{className:"json-inspector__value json-inspector__value_helper"},"[] "+h(e.length));case"Object":return u("span",{className:"json-inspector__value json-inspector__value_helper"},"{} "+h(Object.keys(e).length));default:return u("span",{className:"json-inspector__value json-inspector__value_"+t.toLowerCase()},this.format(String(e)),this.renderInteractiveLabel(e,!1))}},renderChildren:function(){var e=this.props,t=this._rootPath(),n=this.data();return this.state.expanded&&!l(n)?Object.keys(n).map((function(r){var i=n[r],o=!this.state.original||!!e.verboseShowOriginal&&e.query;return u(d,{data:i,label:r,prefix:t,onClick:e.onClick,id:e.id,query:e.query,getOriginal:o?e.getOriginal:null,key:p(r,i),isExpanded:e.isExpanded,interactiveLabel:e.interactiveLabel,verboseShowOriginal:e.verboseShowOriginal})}),this):null},renderShowOriginalButton:function(){var e=this.props;return l(e.data)||this.state.original||!e.getOriginal||!e.query||f(this.keypath(),e.query)?null:u("span",{className:"json-inspector__show-original",onClick:this._onShowOriginalClick})},renderInteractiveLabel:function(e,t){return"function"===typeof this.props.interactiveLabel?u(this.props.interactiveLabel,{value:String(e),originalValue:e,isKey:t,keypath:this.keypath()}):null},componentWillReceiveProps:function(e){e.query&&this.setState({expanded:!f(e.label,e.query)}),this.props.query&&!e.query&&this.setState({expanded:this._isInitiallyExpanded(e)})},_rootPath:function(){return this.props.prefix+"."+this.props.label},keypath:function(){return this._rootPath().substr(".root.".length)},data:function(){return this.state.original||this.props.data},format:function(e){return u(c,{string:e,highlight:this.props.query})},getClassName:function(){var e="json-inspector__leaf";return this.props.root&&(e+=" json-inspector__leaf_root"),this.state.expanded&&(e+=" json-inspector__leaf_expanded"),l(this.props.data)||(e+=" json-inspector__leaf_composite"),e},toggle:function(){this.setState({expanded:!this.state.expanded})},_onClick:function(e,t){this.toggle(),this.props.onClick(e),t.stopPropagation()},_onShowOriginalClick:function(e){this.setState({original:this.props.getOriginal(this.keypath())}),e.stopPropagation()},_isInitiallyExpanded:function(e){var t=this.keypath();return!!e.root||(e.query?!f(t,e.query)&&"function"===typeof e.getOriginal:e.isExpanded(t,e.data))}});function h(e){return e+(1===e?" item":" items")}function p(e,t){return l(t)?e+":"+o(String(t)):e+"["+s(t)+"]"}function f(e,t){return-1!==e.indexOf(t)}e.exports=d},53767:(e,t,n)=>{var r=n(39032),i=".";function o(e){return parseInt(e,10)}e.exports=function e(t,n){var a=n.split(i),s=a.shift();if(!s)return t;var l=r(t);return"Array"===l&&t[o(s)]?e(t[o(s)],a.join(i)):"Object"===l&&t[s]?e(t[s],a.join(i)):void 0}},68814:e=>{e.exports=function(){}},62937:(e,t,n)=>{var r=n(68963),i=n(77065),o=r.createElement,a=n(68814);e.exports=i({getDefaultProps:function(){return{onChange:a}},render:function(){return o("input",{className:"json-inspector__search",type:"search",placeholder:"Search",onChange:this.onChange})},onChange:function(e){this.props.onChange(e.target.value)}})},39032:e=>{e.exports=function(e){return Object.prototype.toString.call(e).slice(8,-1)}},88034:e=>{var t=Math.ceil(10*Math.random());e.exports=function(){return++t}},65263:e=>{"use strict";e.exports=Object.assign||function(e,t){for(var n,r,i=function(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),o=1;on&&(a=n),(l=(o="simple"!==i&&o?Math.max(Math.min(o,n-a),0):0)%s)&&(o-=l,a+=l),o===t.from&&a==t.size?t:x(x({},t),{},{from:o,size:a})};e.exports=(i=r=function(e){h(r,e);var t=f(r);function r(e){var n;return c(this,r),(n=t.call(this,e)).state=F(e,{itemsPerRow:1,from:e.initialIndex,size:0}),n.cache={},n.cachedScrollPosition=null,n.prevPrevState={},n.unstable=!1,n.updateCounter=0,n}return d(r,null,[{key:"getDerivedStateFromProps",value:function(e,t){var n=F(e,t);return n===t?null:n}}]),d(r,[{key:"componentDidMount",value:function(){this.updateFrameAndClearCache=this.updateFrameAndClearCache.bind(this),window.addEventListener("resize",this.updateFrameAndClearCache),this.updateFrame(this.scrollTo.bind(this,this.props.initialIndex))}},{key:"componentDidUpdate",value:function(e){var t=this;if(this.props.axis!==e.axis&&this.clearSizeCache(),!this.unstable){if(++this.updateCounter>A)return this.unstable=!0,console.error(D);this.updateCounterTimeoutId||(this.updateCounterTimeoutId=setTimeout((function(){t.updateCounter=0,delete t.updateCounterTimeoutId}),0)),this.updateFrame()}}},{key:"maybeSetState",value:function(e,t){if(R(this.state,e))return t();this.setState(e,t)}},{key:"componentWillUnmount",value:function(){window.removeEventListener("resize",this.updateFrameAndClearCache),this.scrollParent.removeEventListener("scroll",this.updateFrameAndClearCache,P),this.scrollParent.removeEventListener("mousewheel",I,P)}},{key:"getOffset",value:function(e){var t=this.props.axis,n=e[_[t]]||0,r=T[t];do{n+=e[r]||0}while(e=e.offsetParent);return n}},{key:"getEl",value:function(){return this.el||this.items}},{key:"getScrollPosition",value:function(){if("number"===typeof this.cachedScrollPosition)return this.cachedScrollPosition;var e=this.scrollParent,t=this.props.axis,n=k[t],r=e===window?document.body[n]||document.documentElement[n]:e[n],i=this.getScrollSize()-this.props.scrollParentViewportSizeGetter(this),o=Math.max(0,Math.min(r,i)),a=this.getEl();return this.cachedScrollPosition=this.getOffset(e)+o-this.getOffset(a),this.cachedScrollPosition}},{key:"setScroll",value:function(e){var t=this.scrollParent,n=this.props.axis;if(e+=this.getOffset(this.getEl()),t===window)return window.scrollTo(0,e);e-=this.getOffset(this.scrollParent),t[k[n]]=e}},{key:"getScrollSize",value:function(){var e=this.scrollParent,t=document,n=t.body,r=t.documentElement,i=N[this.props.axis];return e===window?Math.max(n[i],r[i]):e[i]}},{key:"hasDeterminateSize",value:function(){var e=this.props,t=e.itemSizeGetter;return"uniform"===e.type||t}},{key:"getStartAndEnd",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props.threshold,t=this.getScrollPosition(),n=Math.max(0,t-e),r=t+this.props.scrollParentViewportSizeGetter(this)+e;return this.hasDeterminateSize()&&(r=Math.min(r,this.getSpaceBefore(this.props.length))),{start:n,end:r}}},{key:"getItemSizeAndItemsPerRow",value:function(){var e=this.props,t=e.axis,n=e.useStaticSize,r=this.state,i=r.itemSize,o=r.itemsPerRow;if(n&&i&&o)return{itemSize:i,itemsPerRow:o};var a=this.items.children;if(!a.length)return{};var s=a[0],l=s[E[t]],c=Math.abs(l-i);if((isNaN(c)||c>=1)&&(i=l),!i)return{};for(var u=T[t],d=s[u],h=a[o=1];h&&h[u]===d;h=a[o])++o;return{itemSize:i,itemsPerRow:o}}},{key:"clearSizeCache",value:function(){this.cachedScrollPosition=null}},{key:"updateFrameAndClearCache",value:function(e){return this.clearSizeCache(),this.updateFrame(e)}},{key:"updateFrame",value:function(e){switch(this.updateScrollParent(),"function"!=typeof e&&(e=I),this.props.type){case"simple":return this.updateSimpleFrame(e);case"variable":return this.updateVariableFrame(e);case"uniform":return this.updateUniformFrame(e)}}},{key:"updateScrollParent",value:function(){var e=this.scrollParent;this.scrollParent=this.props.scrollParentGetter(this),e!==this.scrollParent&&(e&&(e.removeEventListener("scroll",this.updateFrameAndClearCache),e.removeEventListener("mousewheel",I)),this.clearSizeCache(),this.scrollParent.addEventListener("scroll",this.updateFrameAndClearCache,P),this.scrollParent.addEventListener("mousewheel",I,P))}},{key:"updateSimpleFrame",value:function(e){var t=this.getStartAndEnd().end,n=this.items.children,r=0;if(n.length){var i=this.props.axis,o=n[0],a=n[n.length-1];r=this.getOffset(a)+a[E[i]]-this.getOffset(o)}if(r>t)return e();var s=this.props,l=s.pageSize,c=s.length,u=Math.min(this.state.size+l,c);this.maybeSetState({size:u},e)}},{key:"updateVariableFrame",value:function(e){this.props.itemSizeGetter||this.cacheSizes();for(var t=this.getStartAndEnd(),n=t.start,r=t.end,i=this.props,o=i.length,a=i.pageSize,s=0,l=0,c=0,u=o-1;ln)break;s+=d,++l}for(var h=o-l;c1&&void 0!==arguments[1]?arguments[1]:{};if(null!=t[e])return t[e];var n=this.state,r=n.itemSize,i=n.itemsPerRow;if(r)return t[e]=Math.floor(e/i)*r;for(var o=e;o>0&&null==t[--o];);for(var a=t[o]||0,s=o;s=c&&eo?this.setScroll(o):void 0}},{key:"getVisibleRange",value:function(){for(var e,t,n=this.state,r=n.from,i=n.size,o=this.getStartAndEnd(0),a=o.start,s=o.end,l={},c=r;ca&&(e=c),null!=e&&u{var r=n(49099);e.exports=p,e.exports.parse=o,e.exports.compile=function(e,t){return s(o(e,t),t)},e.exports.tokensToFunction=s,e.exports.tokensToRegExp=h;var i=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function o(e,t){for(var n,r=[],o=0,a=0,s="",u=t&&t.delimiter||"/";null!=(n=i.exec(e));){var d=n[0],h=n[1],p=n.index;if(s+=e.slice(a,p),a=p+d.length,h)s+=h[1];else{var f=e[a],m=n[2],g=n[3],v=n[4],y=n[5],b=n[6],x=n[7];s&&(r.push(s),s="");var w=null!=m&&null!=f&&f!==m,S="+"===b||"*"===b,_="?"===b||"*"===b,C=n[2]||u,E=v||y;r.push({name:g||o++,prefix:m||"",delimiter:C,optional:_,repeat:S,partial:w,asterisk:!!x,pattern:E?c(E):x?".*":"[^"+l(C)+"]+?"})}}return a{"use strict";var n="function"===typeof Symbol&&Symbol.for,r=n?Symbol.for("react.element"):60103,i=n?Symbol.for("react.portal"):60106,o=n?Symbol.for("react.fragment"):60107,a=n?Symbol.for("react.strict_mode"):60108,s=n?Symbol.for("react.profiler"):60114,l=n?Symbol.for("react.provider"):60109,c=n?Symbol.for("react.context"):60110,u=n?Symbol.for("react.async_mode"):60111,d=n?Symbol.for("react.concurrent_mode"):60111,h=n?Symbol.for("react.forward_ref"):60112,p=n?Symbol.for("react.suspense"):60113,f=n?Symbol.for("react.suspense_list"):60120,m=n?Symbol.for("react.memo"):60115,g=n?Symbol.for("react.lazy"):60116,v=n?Symbol.for("react.block"):60121,y=n?Symbol.for("react.fundamental"):60117,b=n?Symbol.for("react.responder"):60118,x=n?Symbol.for("react.scope"):60119;function w(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case u:case d:case o:case s:case a:case p:return e;default:switch(e=e&&e.$$typeof){case c:case h:case g:case m:case l:return e;default:return t}}case i:return t}}}function S(e){return w(e)===d}},99898:(e,t,n)=>{"use strict";n(20261)},62685:(e,t,n)=>{"use strict";n.d(t,{Z:()=>S});var r=n(87462),i=n(63366),o=n(51721);function a(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}var s=n(68963),l=n(38886);const c=!1;var u=n(24330),d=function(e){return e.scrollTop},h="unmounted",p="exited",f="entering",m="entered",g="exiting",v=function(e){function t(t,n){var r;r=e.call(this,t,n)||this;var i,o=n&&!n.isMounting?t.enter:t.appear;return r.appearStatus=null,t.in?o?(i=p,r.appearStatus=f):i=m:i=t.unmountOnExit||t.mountOnEnter?h:p,r.state={status:i},r.nextCallback=null,r}(0,o.Z)(t,e),t.getDerivedStateFromProps=function(e,t){return e.in&&t.status===h?{status:p}:null};var n=t.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(e){var t=null;if(e!==this.props){var n=this.state.status;this.props.in?n!==f&&n!==m&&(t=f):n!==f&&n!==m||(t=g)}this.updateStatus(!1,t)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var e,t,n,r=this.props.timeout;return e=t=n=r,null!=r&&"number"!==typeof r&&(e=r.exit,t=r.enter,n=void 0!==r.appear?r.appear:t),{exit:e,enter:t,appear:n}},n.updateStatus=function(e,t){if(void 0===e&&(e=!1),null!==t)if(this.cancelNextCallback(),t===f){if(this.props.unmountOnExit||this.props.mountOnEnter){var n=this.props.nodeRef?this.props.nodeRef.current:l.findDOMNode(this);n&&d(n)}this.performEnter(e)}else this.performExit();else this.props.unmountOnExit&&this.state.status===p&&this.setState({status:h})},n.performEnter=function(e){var t=this,n=this.props.enter,r=this.context?this.context.isMounting:e,i=this.props.nodeRef?[r]:[l.findDOMNode(this),r],o=i[0],a=i[1],s=this.getTimeouts(),u=r?s.appear:s.enter;!e&&!n||c?this.safeSetState({status:m},(function(){t.props.onEntered(o)})):(this.props.onEnter(o,a),this.safeSetState({status:f},(function(){t.props.onEntering(o,a),t.onTransitionEnd(u,(function(){t.safeSetState({status:m},(function(){t.props.onEntered(o,a)}))}))})))},n.performExit=function(){var e=this,t=this.props.exit,n=this.getTimeouts(),r=this.props.nodeRef?void 0:l.findDOMNode(this);t&&!c?(this.props.onExit(r),this.safeSetState({status:g},(function(){e.props.onExiting(r),e.onTransitionEnd(n.exit,(function(){e.safeSetState({status:p},(function(){e.props.onExited(r)}))}))}))):this.safeSetState({status:p},(function(){e.props.onExited(r)}))},n.cancelNextCallback=function(){null!==this.nextCallback&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(e,t){t=this.setNextCallback(t),this.setState(e,t)},n.setNextCallback=function(e){var t=this,n=!0;return this.nextCallback=function(r){n&&(n=!1,t.nextCallback=null,e(r))},this.nextCallback.cancel=function(){n=!1},this.nextCallback},n.onTransitionEnd=function(e,t){this.setNextCallback(t);var n=this.props.nodeRef?this.props.nodeRef.current:l.findDOMNode(this),r=null==e&&!this.props.addEndListener;if(n&&!r){if(this.props.addEndListener){var i=this.props.nodeRef?[this.nextCallback]:[n,this.nextCallback],o=i[0],a=i[1];this.props.addEndListener(o,a)}null!=e&&setTimeout(this.nextCallback,e)}else setTimeout(this.nextCallback,0)},n.render=function(){var e=this.state.status;if(e===h)return null;var t=this.props,n=t.children,r=(t.in,t.mountOnEnter,t.unmountOnExit,t.appear,t.enter,t.exit,t.timeout,t.addEndListener,t.onEnter,t.onEntering,t.onEntered,t.onExit,t.onExiting,t.onExited,t.nodeRef,(0,i.Z)(t,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]));return s.createElement(u.Z.Provider,{value:null},"function"===typeof n?n(e,r):s.cloneElement(s.Children.only(n),r))},t}(s.Component);function y(){}v.contextType=u.Z,v.propTypes={},v.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:y,onEntering:y,onEntered:y,onExit:y,onExiting:y,onExited:y},v.UNMOUNTED=h,v.EXITED=p,v.ENTERING=f,v.ENTERED=m,v.EXITING=g;const b=v;var x=function(e,t){return e&&t&&t.split(" ").forEach((function(t){return r=t,void((n=e).classList?n.classList.remove(r):"string"===typeof n.className?n.className=a(n.className,r):n.setAttribute("class",a(n.className&&n.className.baseVal||"",r)));var n,r}))},w=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),i=0;i{"use strict";n.d(t,{Z:()=>r});const r=n(68963).createContext(null)},74518:(e,t,n)=>{"use strict";var r=n(68963),i=Symbol.for("react.element"),o=Symbol.for("react.fragment"),a=Object.prototype.hasOwnProperty,s=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,l={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var r,o={},c=null,u=null;for(r in void 0!==n&&(c=""+n),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(u=t.ref),t)a.call(t,r)&&!l.hasOwnProperty(r)&&(o[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===o[r]&&(o[r]=t[r]);return{$$typeof:i,type:e,key:c,ref:u,props:o,_owner:s.current}}t.jsx=c,t.jsxs=c},61920:(e,t)=>{"use strict";var n=Symbol.for("react.element"),r=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),s=Symbol.for("react.provider"),l=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),p=Symbol.iterator;var f={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},m=Object.assign,g={};function v(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||f}function y(){}function b(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||f}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if("object"!==typeof e&&"function"!==typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},y.prototype=v.prototype;var x=b.prototype=new y;x.constructor=b,m(x,v.prototype),x.isPureReactComponent=!0;var w=Array.isArray,S=Object.prototype.hasOwnProperty,_={current:null},C={key:!0,ref:!0,__self:!0,__source:!0};function E(e,t,r){var i,o={},a=null,s=null;if(null!=t)for(i in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(a=""+t.key),t)S.call(t,i)&&!C.hasOwnProperty(i)&&(o[i]=t[i]);var l=arguments.length-2;if(1===l)o.children=r;else if(1{"use strict";e.exports=n(61920)},75859:(e,t,n)=>{"use strict";e.exports=n(74518)},94909:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.LOCATION_POP="REDUX-LOCATION-POP-ACTION",t.LOCATION_PUSH="REDUX-LOCATION-PUSH-ACTION",t.OBJECT_KEY_DELIMITER="-"},45715:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t4&&void 0!==arguments[4]?arguments[4]:s.stateToParams;e[o.RLSCONFIG]&&e[o.RLSCONFIG][o.OVERWRITE_ACCESSORS]&&Object.keys(e[o.RLSCONFIG][o.OVERWRITE_ACCESSORS]).forEach((function(t){(0,o.overrideAccessors)(t,e[o.RLSCONFIG][o.OVERWRITE_ACCESSORS][t])}));var u={};return{locationMiddleware:function(t){return function(r){return function(i){var a=t.getState(),s=r(i),l=t.getState(),d=n.location,h=d.pathname!==u.pathname;if(l!==a||h){u=d;var p=c(e,l,d),f=p.shouldPush,m=p.location;(0,o.isEqual)(m,d)||(f&&!h?n.push(m):n.replace(m))}return s}}},reducersWithLocation:function(n,o){var s=function(n,o){var s=o.type,l=o.payload;if(s!==i.LOCATION_POP||!l)return n;var c=r({},l,{query:(0,a.parseQuery)(e,l)});return t(n,c)}(l(n,o),o);return s!==n?s:n}}};var i=n(94909),o=n(58102),a=n(43903),s=n(78103)},58102:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.paramDecoder=t.OVERWRITE_ACCESSORS=t.RLSCONFIG=void 0,t.setParamEncoder=function(e){c=e},t.setParamDecoder=function(e){t.paramDecoder=u=e},t.overrideAccessors=function(e,t){l[e]=t},t.get=function(){return l.get.apply(l,arguments)},t.set=function(){return l.set.apply(l,arguments)},t.isEqual=function(){return l.isEqual.apply(l,arguments)},t.getMatchingDeclaredPath=d,t.createObjectFromConfig=function(e,t){if(!e)return;var n=d(e,t);return e.global?Object.assign({},e.global,e[n]||{}):e[n]},t.getPath=function(){var e=window.location.href,t=e.indexOf("#")+1;if(t&&0===e.substring(t).indexOf("/"))return e.substring(t);return window.location.pathname+window.location.search+window.location.hash},t.createParamsString=function(e){var t=Object.keys(e).reduce((function(t,n){var r=n.toString(),i=e[n];if(function(e){return"undefined"===typeof e||null===e}(i)||Array.isArray(i)&&!i.length)return t;var o=e[n].toString();return[].concat(s(t),[c(r)+"="+c(o)])}),[]);return t.length?"?"+t.join("&"):""},t.parseParams=function(e,t){return e&&e.split("&").reduce((function(e,n){"?"===n[0]&&(n=n.substr(1));var r=t?t(n):n.split("=");return e[u(r[0])]=u(r[1])||"",e}),{})||{}};var r=a(n(63639)),i=a(n(85690)),o=a(n(9447));function a(e){return e&&e.__esModule?e:{default:e}}function s(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t{"use strict";var r=n(45715);Object.defineProperty(t,"zl",{enumerable:!0,get:function(){return r.createReduxLocationActions}});var i=n(28931);Object.defineProperty(t,"C1",{enumerable:!0,get:function(){return i.listenForHistoryChange}});var o=n(58102)},28931:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.listenForHistoryChange=function(e,t){var n=function(e){return{type:r.LOCATION_POP,payload:e}};t.listen((function(){t&&t.action&&"POP"===t.action&&e.dispatch(n(t.location))})),t.listen((function(){t&&t.action&&"PUSH"===t.action&&e.dispatch(function(e){return{type:r.LOCATION_PUSH,payload:e}}(t.location))})),e.dispatch(n(t.location))};var r=n(94909)},43903:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parseQuery=function(e,t){var n=(0,r.createObjectFromConfig)(e,t),o=e[r.RLSCONFIG]&&e[r.RLSCONFIG].queryParser,a=(0,r.parseParams)(t.search,o);if(!n)return t.search;return Object.keys(n).reduce((function(e,t){var o=n[t],s=o.stateKey,l=o.options,c=void 0===l?{}:l,u=o.initialState,d=o.type,h=a[t],p=void 0;return"undefined"===typeof h||null===h?((0,r.set)(e,s,u),e):(p=c.parse?c.parse(h):d?i.typeHandles[d].parse(h,c):h,(0,r.set)(e,s,p),e)}),{})};var r=n(58102),i=n(88639)},78103:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=Object.assign||function(e){for(var t=1;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.typeHandles=void 0;var r=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,i=!1,o=void 0;try{for(var a,s=e[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(l){i=!0,o=l}finally{try{!r&&s.return&&s.return()}finally{if(i)throw o}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")},i=n(94909),o=n(58102);function a(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t{"use strict";function n(e,t){var n=e.length;e.push(t);e:for(;0>>1,i=e[r];if(!(0>>1;ro(l,n))co(u,l)?(e[r]=u,e[c]=n,r=c):(e[r]=l,e[s]=n,r=s);else{if(!(co(u,n)))break e;e[r]=u,e[c]=n,r=c}}}return t}function o(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}if("object"===typeof performance&&"function"===typeof performance.now){var a=performance;t.unstable_now=function(){return a.now()}}else{var s=Date,l=s.now();t.unstable_now=function(){return s.now()-l}}var c=[],u=[],d=1,h=null,p=3,f=!1,m=!1,g=!1,v="function"===typeof setTimeout?setTimeout:null,y="function"===typeof clearTimeout?clearTimeout:null,b="undefined"!==typeof setImmediate?setImmediate:null;function x(e){for(var t=r(u);null!==t;){if(null===t.callback)i(u);else{if(!(t.startTime<=e))break;i(u),t.sortIndex=t.expirationTime,n(c,t)}t=r(u)}}function w(e){if(g=!1,x(e),!m)if(null!==r(c))m=!0,D(S);else{var t=r(u);null!==t&&A(w,t.startTime-e)}}function S(e,n){m=!1,g&&(g=!1,y(T),T=-1),f=!0;var o=p;try{for(x(n),h=r(c);null!==h&&(!(h.expirationTime>n)||e&&!k());){var a=h.callback;if("function"===typeof a){h.callback=null,p=h.priorityLevel;var s=a(h.expirationTime<=n);n=t.unstable_now(),"function"===typeof s?h.callback=s:h===r(c)&&i(c),x(n)}else i(c);h=r(c)}if(null!==h)var l=!0;else{var d=r(u);null!==d&&A(w,d.startTime-n),l=!1}return l}finally{h=null,p=o,f=!1}}"undefined"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var _,C=!1,E=null,T=-1,O=5,N=-1;function k(){return!(t.unstable_now()-Ne||125a?(e.sortIndex=o,n(u,e),null===r(c)&&e===r(u)&&(g?(y(T),T=-1):g=!0,A(w,o-a))):(e.sortIndex=s,n(c,e),m||f||(m=!0,D(S))),e},t.unstable_shouldYield=k,t.unstable_wrapCallback=function(e){var t=p;return function(){var n=p;p=t;try{return e.apply(this,arguments)}finally{p=n}}}},29558:(e,t,n)=>{"use strict";e.exports=n(34812)},18083:(e,t,n)=>{"use strict";var r=n(42780),i=n(10854),o=n(43597)(),a=n(81687),s=n(84968),l=r("%Math.floor%");e.exports=function(e,t){if("function"!==typeof e)throw new s("`fn` is not a function");if("number"!==typeof t||t<0||t>4294967295||l(t)!==t)throw new s("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],r=!0,c=!0;if("length"in e&&a){var u=a(e,"length");u&&!u.configurable&&(r=!1),u&&!u.writable&&(c=!1)}return(r||c||!n)&&(o?i(e,"length",t,!0,!0):i(e,"length",t)),e}},69612:e=>{e.exports=function(e,t,n,r){var i=n?n.call(r,e,t):void 0;if(void 0!==i)return!!i;if(e===t)return!0;if("object"!==typeof e||!e||"object"!==typeof t||!t)return!1;var o=Object.keys(e),a=Object.keys(t);if(o.length!==a.length)return!1;for(var s=Object.prototype.hasOwnProperty.bind(t),l=0;l{"use strict";var r=n(42780),i=n(69039),o=n(68798),a=n(84968),s=r("%WeakMap%",!0),l=r("%Map%",!0),c=i("WeakMap.prototype.get",!0),u=i("WeakMap.prototype.set",!0),d=i("WeakMap.prototype.has",!0),h=i("Map.prototype.get",!0),p=i("Map.prototype.set",!0),f=i("Map.prototype.has",!0),m=function(e,t){for(var n,r=e;null!==(n=r.next);r=n)if(n.key===t)return r.next=n.next,n.next=e.next,e.next=n,n};e.exports=function(){var e,t,n,r={assert:function(e){if(!r.has(e))throw new a("Side channel does not contain "+o(e))},get:function(r){if(s&&r&&("object"===typeof r||"function"===typeof r)){if(e)return c(e,r)}else if(l){if(t)return h(t,r)}else if(n)return function(e,t){var n=m(e,t);return n&&n.value}(n,r)},has:function(r){if(s&&r&&("object"===typeof r||"function"===typeof r)){if(e)return d(e,r)}else if(l){if(t)return f(t,r)}else if(n)return function(e,t){return!!m(e,t)}(n,r);return!1},set:function(r,i){s&&r&&("object"===typeof r||"function"===typeof r)?(e||(e=new s),u(e,r,i)):l?(t||(t=new l),p(t,r,i)):(n||(n={key:{},next:null}),function(e,t,n){var r=m(e,t);r?r.value=n:e.next={key:t,next:e.next,value:n}}(n,r,i))}};return r}},35731:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=!0,i="Invariant failed";function o(e,t){if(!e){if(r)throw new Error(i);var n="function"===typeof t?t():t;throw new Error(n?i+": "+n:i)}}},21034:e=>{e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r= 0x80 (not a basic code point)","invalid-input":"Invalid input"},x=l-c,w=Math.floor,S=String.fromCharCode;function _(e){throw new RangeError(b[e])}function C(e,t){for(var n=e.length,r=[];n--;)r[n]=t(e[n]);return r}function E(e,t){var n=e.split("@"),r="";return n.length>1&&(r=n[0]+"@",e=n[1]),r+C((e=e.replace(y,".")).split("."),t).join(".")}function T(e){for(var t,n,r=[],i=0,o=e.length;i=55296&&t<=56319&&i65535&&(t+=S((e-=65536)>>>10&1023|55296),e=56320|1023&e),t+=S(e)})).join("")}function N(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function k(e,t,n){var r=0;for(e=n?w(e/h):e>>1,e+=w(e/t);e>x*u>>1;r+=l)e=w(e/x);return w(r+(x+1)*e/(e+d))}function j(e){var t,n,r,i,o,a,d,h,g,v,y,b=[],x=e.length,S=0,C=f,E=p;for((n=e.lastIndexOf(m))<0&&(n=0),r=0;r=128&&_("not-basic"),b.push(e.charCodeAt(r));for(i=n>0?n+1:0;i=x&&_("invalid-input"),((h=(y=e.charCodeAt(i++))-48<10?y-22:y-65<26?y-65:y-97<26?y-97:l)>=l||h>w((s-S)/a))&&_("overflow"),S+=h*a,!(h<(g=d<=E?c:d>=E+u?u:d-E));d+=l)a>w(s/(v=l-g))&&_("overflow"),a*=v;E=k(S-o,t=b.length+1,0==o),w(S/t)>s-C&&_("overflow"),C+=w(S/t),S%=t,b.splice(S++,0,C)}return O(b)}function I(e){var t,n,r,i,o,a,d,h,g,v,y,b,x,C,E,O=[];for(b=(e=T(e)).length,t=f,n=0,o=p,a=0;a=t&&yw((s-n)/(x=r+1))&&_("overflow"),n+=(d-t)*x,t=d,a=0;as&&_("overflow"),y==t){for(h=n,g=l;!(h<(v=g<=o?c:g>=o+u?u:g-o));g+=l)E=h-v,C=l-v,O.push(S(N(v+E%C,0))),h=w(E/C);O.push(S(N(h,0))),o=k(n,x,r==i),n=0,++r}++n,++t}return O.join("")}a={version:"1.4.1",ucs2:{decode:T,encode:O},decode:j,encode:I,toASCII:function(e){return E(e,(function(e){return v.test(e)?"xn--"+I(e):e}))},toUnicode:function(e){return E(e,(function(e){return g.test(e)?j(e.slice(4).toLowerCase()):e}))}},void 0===(r=function(){return a}.call(t,n,t,e))||(e.exports=r)}()},92820:(e,t,n)=>{"use strict";var r=n(46392);function i(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}var o=/^([a-z0-9.+-]+:)/i,a=/:[0-9]*$/,s=/^(\/\/?(?!\/)[^?\s]*)(\?[^\s]*)?$/,l=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),c=["'"].concat(l),u=["%","/","?",";","#"].concat(c),d=["/","?","#"],h=/^[+a-z0-9A-Z_-]{0,63}$/,p=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,f={javascript:!0,"javascript:":!0},m={javascript:!0,"javascript:":!0},g={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},v=n(63041);function y(e,t,n){if(e&&"object"===typeof e&&e instanceof i)return e;var r=new i;return r.parse(e,t,n),r}i.prototype.parse=function(e,t,n){if("string"!==typeof e)throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var i=e.indexOf("?"),a=-1!==i&&i127?P+="x":P+=I[D];if(!P.match(h)){var R=k.slice(0,T),M=k.slice(T+1),L=I.match(p);L&&(R.push(L[1]),M.unshift(L[2])),M.length&&(y="/"+M.join(".")+y),this.hostname=R.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),N||(this.hostname=r.toASCII(this.hostname));var F=this.port?":"+this.port:"",z=this.hostname||"";this.host=z+F,this.href+=this.host,N&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==y[0]&&(y="/"+y))}if(!f[w])for(T=0,j=c.length;T0)&&n.host.split("@"))&&(n.auth=N.shift(),n.hostname=N.shift(),n.host=n.hostname);return n.search=e.search,n.query=e.query,null===n.pathname&&null===n.search||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.href=n.format(),n}if(!S.length)return n.pathname=null,n.search?n.path="/"+n.search:n.path=null,n.href=n.format(),n;for(var C=S.slice(-1)[0],E=(n.host||e.host||S.length>1)&&("."===C||".."===C)||""===C,T=0,O=S.length;O>=0;O--)"."===(C=S[O])?S.splice(O,1):".."===C?(S.splice(O,1),T++):T&&(S.splice(O,1),T--);if(!x&&!w)for(;T--;T)S.unshift("..");!x||""===S[0]||S[0]&&"/"===S[0].charAt(0)||S.unshift(""),E&&"/"!==S.join("/").substr(-1)&&S.push("");var N,k=""===S[0]||S[0]&&"/"===S[0].charAt(0);_&&(n.hostname=k?"":S.length?S.shift():"",n.host=n.hostname,(N=!!(n.host&&n.host.indexOf("@")>0)&&n.host.split("@"))&&(n.auth=N.shift(),n.hostname=N.shift(),n.host=n.hostname));return(x=x||n.host&&S.length)&&!k&&S.unshift(""),S.length>0?n.pathname=S.join("/"):(n.pathname=null,n.path=null),null===n.pathname&&null===n.search||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.auth=e.auth||n.auth,n.slashes=n.slashes||e.slashes,n.href=n.format(),n},i.prototype.parseHost=function(){var e=this.host,t=a.exec(e);t&&(":"!==(t=t[0])&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)},t.parse=y,t.resolve=function(e,t){return y(e,!1,!0).resolve(t)},t.resolveObject=function(e,t){return e?y(e,!1,!0).resolveObject(t):t},t.format=function(e){return"string"===typeof e&&(e=y(e)),e instanceof i?e.format():i.prototype.format.call(e)},t.Url=i},28127:(e,t,n)=>{"use strict";var r=n(68963);var i="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},o=r.useSyncExternalStore,a=r.useRef,s=r.useEffect,l=r.useMemo,c=r.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,n,r,u){var d=a(null);if(null===d.current){var h={hasValue:!1,value:null};d.current=h}else h=d.current;d=l((function(){function e(e){if(!s){if(s=!0,o=e,e=r(e),void 0!==u&&h.hasValue){var t=h.value;if(u(t,e))return a=t}return a=e}if(t=a,i(o,e))return t;var n=r(e);return void 0!==u&&u(t,n)?t:(o=e,a=n)}var o,a,s=!1,l=void 0===n?null:n;return[function(){return e(t())},null===l?void 0:function(){return e(l())}]}),[t,n,r,u]);var p=o(e,d[0],d[1]);return s((function(){h.hasValue=!0,h.value=p}),[p]),c(p),p}},29074:(e,t,n)=>{"use strict";e.exports=n(28127)},24960:()=>{},26759:()=>{},56272:()=>{},24654:()=>{},97326:(e,t,n)=>{"use strict";function r(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}n.d(t,{Z:()=>r})},64572:(e,t,n)=>{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function i(e){var t=function(e,t){if("object"!=r(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!=r(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==r(t)?t:String(t)}function o(e,t,n){return(t=i(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}n.d(t,{Z:()=>o})},87462:(e,t,n)=>{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;tr})},51721:(e,t,n)=>{"use strict";function r(e,t){return r=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},r(e,t)}function i(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,r(e,t)}n.d(t,{Z:()=>i})},63366:(e,t,n)=>{"use strict";function r(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}n.d(t,{Z:()=>r})},17095:(e,t,n)=>{"use strict";n.d(t,{CN:()=>j,Tk:()=>M,hF:()=>K,oZ:()=>s});var r=n(38907),i=n(1399),o=n(89900),a=n(36313),s=(e=>(e.uninitialized="uninitialized",e.pending="pending",e.fulfilled="fulfilled",e.rejected="rejected",e))(s||{});var l=e=>[].concat(...e);var c=r.PO;function u(e,t){if(e===t||!(c(e)&&c(t)||Array.isArray(e)&&Array.isArray(t)))return t;const n=Object.keys(t),r=Object.keys(e);let i=n.length===r.length;const o=Array.isArray(t)?[]:{};for(const a of n)o[a]=u(e[a],t[a]),i&&(i=e[a]===o[a]);return i?e:o}var d=class{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;this.value=e,this.meta=t}};var h=(0,i.PH)("__rtkq/focused"),p=(0,i.PH)("__rtkq/unfocused"),f=(0,i.PH)("__rtkq/online"),m=(0,i.PH)("__rtkq/offline");function g(e){return"query"===e.type}function v(e,t,n,r,i,o){return"function"===typeof e?e(t,n,r,i).map(y).map(o):Array.isArray(e)?e.map(y).map(o):[]}function y(e){return"string"===typeof e?{type:e}:e}function b(e){return null!=e}function x(e){let t=0;for(const n in e)t++;return t}var w=Symbol("forceQueryFn"),S=e=>"function"===typeof e[w];function _(e){return e}function C(e,t,n,r){return v(n[e.meta.arg.endpointName][t],(0,i.KD)(e)?e.payload:void 0,(0,i.h_)(e)?e.payload:void 0,e.meta.arg.originalArgs,"baseQueryMeta"in e.meta?e.meta.baseQueryMeta:void 0,r)}function E(e,t,n){const r=e[t];r&&n(r)}function T(e){var t;return null!==(t="arg"in e?e.arg.fixedCacheKey:e.fixedCacheKey)&&void 0!==t?t:e.requestId}function O(e,t,n){const r=e[T(t)];r&&n(r)}var N={};function k(e){let{reducerPath:t,queryThunk:n,mutationThunk:a,context:{endpointDefinitions:s,apiUid:l,extractRehydrationInfo:c,hasRehydrationInfo:d},assertTagType:g,config:v}=e;const y=(0,i.PH)("".concat(t,"/resetApiState")),b=(0,i.oM)({name:"".concat(t,"/queries"),initialState:N,reducers:{removeQueryResult:{reducer(e,t){let{payload:{queryCacheKey:n}}=t;delete e[n]},prepare:(0,i.cw)()},queryResultPatched:{reducer(e,t){let{payload:{queryCacheKey:n,patches:r}}=t;E(e,n,(e=>{e.data=(0,o.QE)(e.data,r.concat())}))},prepare:(0,i.cw)()}},extraReducers(e){e.addCase(n.pending,((e,t)=>{var n,r;let{meta:i,meta:{arg:o}}=t;const a=S(o);null!==(r=e[n=o.queryCacheKey])&&void 0!==r||(e[n]={status:"uninitialized",endpointName:o.endpointName}),E(e,o.queryCacheKey,(e=>{e.status="pending",e.requestId=a&&e.requestId?e.requestId:i.requestId,void 0!==o.originalArgs&&(e.originalArgs=o.originalArgs),e.startedTimeStamp=i.startedTimeStamp}))})).addCase(n.fulfilled,((e,t)=>{let{meta:n,payload:r}=t;E(e,n.arg.queryCacheKey,(e=>{if(e.requestId!==n.requestId&&!S(n.arg))return;const{merge:t}=s[n.arg.endpointName];var i;if(e.status="fulfilled",t)if(void 0!==e.data){const{fulfilledTimeStamp:i,arg:a,baseQueryMeta:s,requestId:l}=n;let c=(0,o.Uy)(e.data,(e=>t(e,r,{arg:a.originalArgs,baseQueryMeta:s,fulfilledTimeStamp:i,requestId:l})));e.data=c}else e.data=r;else e.data=null===(i=s[n.arg.endpointName].structuralSharing)||void 0===i||i?u((0,o.mv)(e.data)?(0,o.Js)(e.data):e.data,r):r;delete e.error,e.fulfilledTimeStamp=n.fulfilledTimeStamp}))})).addCase(n.rejected,((e,t)=>{let{meta:{condition:n,arg:r,requestId:i},error:o,payload:a}=t;E(e,r.queryCacheKey,(e=>{if(n);else{if(e.requestId!==i)return;e.status="rejected",e.error=null!==a&&void 0!==a?a:o}}))})).addMatcher(d,((e,t)=>{const{queries:n}=c(t);for(const[r,i]of Object.entries(n))"fulfilled"!==(null===i||void 0===i?void 0:i.status)&&"rejected"!==(null===i||void 0===i?void 0:i.status)||(e[r]=i)}))}}),x=(0,i.oM)({name:"".concat(t,"/mutations"),initialState:N,reducers:{removeMutationResult:{reducer(e,t){let{payload:n}=t;const r=T(n);r in e&&delete e[r]},prepare:(0,i.cw)()}},extraReducers(e){e.addCase(a.pending,((e,t)=>{let{meta:n,meta:{requestId:r,arg:i,startedTimeStamp:o}}=t;i.track&&(e[T(n)]={requestId:r,status:"pending",endpointName:i.endpointName,startedTimeStamp:o})})).addCase(a.fulfilled,((e,t)=>{let{payload:n,meta:r}=t;r.arg.track&&O(e,r,(e=>{e.requestId===r.requestId&&(e.status="fulfilled",e.data=n,e.fulfilledTimeStamp=r.fulfilledTimeStamp)}))})).addCase(a.rejected,((e,t)=>{let{payload:n,error:r,meta:i}=t;i.arg.track&&O(e,i,(e=>{e.requestId===i.requestId&&(e.status="rejected",e.error=null!==n&&void 0!==n?n:r)}))})).addMatcher(d,((e,t)=>{const{mutations:n}=c(t);for(const[r,i]of Object.entries(n))"fulfilled"!==(null===i||void 0===i?void 0:i.status)&&"rejected"!==(null===i||void 0===i?void 0:i.status)||r===(null===i||void 0===i?void 0:i.requestId)||(e[r]=i)}))}}),w=(0,i.oM)({name:"".concat(t,"/invalidation"),initialState:N,reducers:{updateProvidedBy:{reducer(e,t){const{queryCacheKey:n,providedTags:r}=t.payload;for(const l of Object.values(e))for(const e of Object.values(l)){const t=e.indexOf(n);-1!==t&&e.splice(t,1)}for(const{type:l,id:c}of r){var i,o,a,s;const t=null!==(a=(i=null!==(s=e[l])&&void 0!==s?s:e[l]={})[o=c||"__internal_without_id"])&&void 0!==a?a:i[o]=[];t.includes(n)||t.push(n)}},prepare:(0,i.cw)()}},extraReducers(e){e.addCase(b.actions.removeQueryResult,((e,t)=>{let{payload:{queryCacheKey:n}}=t;for(const r of Object.values(e))for(const e of Object.values(r)){const t=e.indexOf(n);-1!==t&&e.splice(t,1)}})).addMatcher(d,((e,t)=>{const{provided:n}=c(t);for(const[s,l]of Object.entries(n))for(const[t,n]of Object.entries(l)){var r,i,o,a;const l=null!==(o=(r=null!==(a=e[s])&&void 0!==a?a:e[s]={})[i=t||"__internal_without_id"])&&void 0!==o?o:r[i]=[];for(const e of n){l.includes(e)||l.push(e)}}})).addMatcher((0,i.Q)((0,i.KD)(n),(0,i.h_)(n)),((e,t)=>{const n=C(t,"providesTags",s,g),{queryCacheKey:r}=t.meta.arg;w.caseReducers.updateProvidedBy(e,w.actions.updateProvidedBy({queryCacheKey:r,providedTags:n}))}))}}),_=(0,i.oM)({name:"".concat(t,"/subscriptions"),initialState:N,reducers:{updateSubscriptionOptions(e,t){},unsubscribeQueryResult(e,t){},internal_getRTKQSubscriptions(){}}}),k=(0,i.oM)({name:"".concat(t,"/internalSubscriptions"),initialState:N,reducers:{subscriptionsUpdated:{reducer:(e,t)=>(0,o.QE)(e,t.payload),prepare:(0,i.cw)()}}}),j=(0,i.oM)({name:"".concat(t,"/config"),initialState:{online:"undefined"===typeof navigator||void 0===navigator.onLine||navigator.onLine,focused:"undefined"===typeof document||"hidden"!==document.visibilityState,middlewareRegistered:!1,...v},reducers:{middlewareRegistered(e,t){let{payload:n}=t;e.middlewareRegistered="conflict"!==e.middlewareRegistered&&l===n||"conflict"}},extraReducers:e=>{e.addCase(f,(e=>{e.online=!0})).addCase(m,(e=>{e.online=!1})).addCase(h,(e=>{e.focused=!0})).addCase(p,(e=>{e.focused=!1})).addMatcher(d,(e=>({...e})))}}),I=(0,r.UY)({queries:b.reducer,mutations:x.reducer,provided:w.reducer,subscriptions:k.reducer,config:j.reducer});return{reducer:(e,t)=>I(y.match(t)?void 0:e,t),actions:{...j.actions,...b.actions,..._.actions,...k.actions,...x.actions,...w.actions,resetApiState:y}}}var j=Symbol.for("RTKQ/skipToken"),I={status:"uninitialized"},P=(0,o.Uy)(I,(()=>{})),D=(0,o.Uy)(I,(()=>{}));var A=WeakMap?new WeakMap:void 0,R=e=>{let{endpointName:t,queryArgs:n}=e,i="";const o=null===A||void 0===A?void 0:A.get(n);if("string"===typeof o)i=o;else{const e=JSON.stringify(n,((e,t)=>(0,r.PO)(t)?Object.keys(t).sort().reduce(((e,n)=>(e[n]=t[n],e)),{}):t));(0,r.PO)(n)&&(null===A||void 0===A||A.set(n,e)),i=e}return"".concat(t,"(").concat(i,")")};function M(){for(var e=arguments.length,t=new Array(e),n=0;n{var n,r;return null===(n=e.extractRehydrationInfo)||void 0===n?void 0:n.call(e,t,{reducerPath:null!==(r=e.reducerPath)&&void 0!==r?r:"api"})})),r={reducerPath:"api",keepUnusedDataFor:60,refetchOnMountOrArgChange:!1,refetchOnFocus:!1,refetchOnReconnect:!1,invalidationBehavior:"delayed",...e,extractRehydrationInfo:n,serializeQueryArgs(t){let n=R;if("serializeQueryArgs"in t.endpointDefinition){const e=t.endpointDefinition.serializeQueryArgs;n=t=>{const n=e(t);return"string"===typeof n?n:R({...t,queryArgs:n})}}else e.serializeQueryArgs&&(n=e.serializeQueryArgs);return n(t)},tagTypes:[...e.tagTypes||[]]},o={endpointDefinitions:{},batch(e){e()},apiUid:(0,i.x0)(),extractRehydrationInfo:n,hasRehydrationInfo:(0,a.kO)((e=>null!=n(e)))},s={injectEndpoints:function(e){const t=e.endpoints({query:e=>({...e,type:"query"}),mutation:e=>({...e,type:"mutation"})});for(const[n,r]of Object.entries(t))if(!0!==e.overrideExisting&&n in o.endpointDefinitions){if("throw"===e.overrideExisting)throw new Error((0,i.rJ)(39))}else{o.endpointDefinitions[n]=r;for(const e of l)e.injectEndpoint(n,r)}return s},enhanceEndpoints(e){let{addTagTypes:t,endpoints:n}=e;if(t)for(const i of t)r.tagTypes.includes(i)||r.tagTypes.push(i);if(n)for(const[r,i]of Object.entries(n))"function"===typeof i?i(o.endpointDefinitions[r]):Object.assign(o.endpointDefinitions[r]||{},i);return s}},l=t.map((e=>e.init(s,r,o)));return s.injectEndpoints({endpoints:e.endpoints})}}var L=2147482.647,F=e=>{let{reducerPath:t,api:n,queryThunk:r,context:o,internalState:a}=e;const{removeQueryResult:s,unsubscribeQueryResult:l}=n.internalActions,c=(0,i.Q)(l.match,r.fulfilled,r.rejected);function u(e){const t=a.currentSubscriptions[e];return!!t&&!function(e){for(let t in e)return!1;return!0}(t)}const d={};function h(e,t,n,r){var i;const a=o.endpointDefinitions[t],l=null!==(i=null===a||void 0===a?void 0:a.keepUnusedDataFor)&&void 0!==i?i:r.keepUnusedDataFor;if(l===1/0)return;const c=Math.max(0,Math.min(l,L));if(!u(e)){const t=d[e];t&&clearTimeout(t),d[e]=setTimeout((()=>{u(e)||n.dispatch(s({queryCacheKey:e})),delete d[e]}),1e3*c)}}return(e,r,i)=>{if(c(e)){var a;const n=r.getState()[t],{queryCacheKey:i}=l.match(e)?e.payload:e.meta.arg;h(i,null===(a=n.queries[i])||void 0===a?void 0:a.endpointName,r,n.config)}if(n.util.resetApiState.match(e))for(const[t,n]of Object.entries(d))n&&clearTimeout(n),delete d[t];if(o.hasRehydrationInfo(e)){const n=r.getState()[t],{queries:i}=o.extractRehydrationInfo(e);for(const[e,t]of Object.entries(i))h(e,null===t||void 0===t?void 0:t.endpointName,r,n.config)}}},z=e=>{let{reducerPath:t,context:n,context:{endpointDefinitions:r},mutationThunk:o,queryThunk:a,api:s,assertTagType:l,refetchQuery:c,internalState:u}=e;const{removeQueryResult:d}=s.internalActions,h=(0,i.Q)((0,i.KD)(o),(0,i.h_)(o)),p=(0,i.Q)((0,i.KD)(o,a),(0,i.Iv)(o,a));let f=[];function m(e,r){const i=r.getState(),o=i[t];if(f.push(...e),"delayed"===o.config.invalidationBehavior&&function(e){for(const r in e.queries){var t;if("pending"===(null===(t=e.queries[r])||void 0===t?void 0:t.status))return!0}for(const r in e.mutations){var n;if("pending"===(null===(n=e.mutations[r])||void 0===n?void 0:n.status))return!0}return!1}(o))return;const a=f;if(f=[],0===a.length)return;const l=s.util.selectInvalidatedBy(i,a);n.batch((()=>{const e=Array.from(l.values());for(const{queryCacheKey:n}of e){var t;const e=o.queries[n],i=null!==(t=u.currentSubscriptions[n])&&void 0!==t?t:{};e&&(0===x(i)?r.dispatch(d({queryCacheKey:n})):"uninitialized"!==e.status&&r.dispatch(c(e,n)))}}))}return(e,t)=>{h(e)?m(C(e,"invalidatesTags",r,l),t):p(e)?m([],t):s.util.invalidateTags.match(e)&&m(v(e.payload,void 0,void 0,void 0,void 0,l),t)}},B=e=>{let{reducerPath:t,queryThunk:n,api:r,refetchQuery:i,internalState:o}=e;const a={};function s(e,n){let{queryCacheKey:r}=e;const l=n.getState()[t],c=l.queries[r],d=o.currentSubscriptions[r];if(!c||"uninitialized"===c.status)return;const{lowestPollingInterval:h,skipPollingIfUnfocused:p}=u(d);if(!Number.isFinite(h))return;const f=a[r];null!==f&&void 0!==f&&f.timeout&&(clearTimeout(f.timeout),f.timeout=void 0);const m=Date.now()+h;a[r]={nextPollTimestamp:m,pollingInterval:h,timeout:setTimeout((()=>{!l.config.focused&&p||n.dispatch(i(c,r)),s({queryCacheKey:r},n)}),h)}}function l(e,n){let{queryCacheKey:r}=e;const i=n.getState()[t].queries[r],l=o.currentSubscriptions[r];if(!i||"uninitialized"===i.status)return;const{lowestPollingInterval:d}=u(l);if(!Number.isFinite(d))return void c(r);const h=a[r],p=Date.now()+d;(!h||p0&&void 0!==arguments[0]?arguments[0]:{},t=!1,n=Number.POSITIVE_INFINITY;for(let r in e)e[r].pollingInterval&&(n=Math.min(e[r].pollingInterval,n),t=e[r].skipPollingIfUnfocused||t);return{lowestPollingInterval:n,skipPollingIfUnfocused:t}}return(e,t)=>{(r.internalActions.updateSubscriptionOptions.match(e)||r.internalActions.unsubscribeQueryResult.match(e))&&l(e.payload,t),(n.pending.match(e)||n.rejected.match(e)&&e.meta.condition)&&l(e.meta.arg,t),(n.fulfilled.match(e)||n.rejected.match(e)&&!e.meta.condition)&&s(e.meta.arg,t),r.util.resetApiState.match(e)&&function(){for(const e of Object.keys(a))c(e)}()}},U=e=>{let{reducerPath:t,context:n,api:r,refetchQuery:i,internalState:o}=e;const{removeQueryResult:a}=r.internalActions;function s(e,r){const s=e.getState()[t],l=s.queries,c=o.currentSubscriptions;n.batch((()=>{for(const t of Object.keys(c)){const n=l[t],o=c[t];if(!o||!n)continue;(Object.values(o).some((e=>!0===e[r]))||Object.values(o).every((e=>void 0===e[r]))&&s.config[r])&&(0===x(o)?e.dispatch(a({queryCacheKey:t})):"uninitialized"!==n.status&&e.dispatch(i(n,t)))}}))}return(e,t)=>{h.match(e)&&s(t,"refetchOnFocus"),f.match(e)&&s(t,"refetchOnReconnect")}},H=new Error("Promise never resolved before cacheEntryRemoved."),V=e=>{let{api:t,reducerPath:n,context:r,queryThunk:o,mutationThunk:a,internalState:s}=e;const l=(0,i.Gx)(o),c=(0,i.Gx)(a),u=(0,i.KD)(o,a),d={};function h(e,n,i,o,a){const s=r.endpointDefinitions[e],l=null===s||void 0===s?void 0:s.onCacheEntryAdded;if(!l)return;let c={};const u=new Promise((e=>{c.cacheEntryRemoved=e})),h=Promise.race([new Promise((e=>{c.valueResolved=e})),u.then((()=>{throw H}))]);h.catch((()=>{})),d[i]=c;const p=t.endpoints[e].select("query"===s.type?n:i),f=o.dispatch(((e,t,n)=>n)),m={...o,getCacheEntry:()=>p(o.getState()),requestId:a,extra:f,updateCachedData:"query"===s.type?r=>o.dispatch(t.util.updateQueryData(e,n,r)):void 0,cacheDataLoaded:h,cacheEntryRemoved:u},g=l(n,m);Promise.resolve(g).catch((e=>{if(e!==H)throw e}))}return(e,r,i)=>{const s=function(e){return l(e)?e.meta.arg.queryCacheKey:c(e)?null!==(n=e.meta.arg.fixedCacheKey)&&void 0!==n?n:e.meta.requestId:t.internalActions.removeQueryResult.match(e)?e.payload.queryCacheKey:t.internalActions.removeMutationResult.match(e)?T(e.payload):"";var n}(e);if(o.pending.match(e)){const t=i[n].queries[s],o=r.getState()[n].queries[s];!t&&o&&h(e.meta.arg.endpointName,e.meta.arg.originalArgs,s,r,e.meta.requestId)}else if(a.pending.match(e)){r.getState()[n].mutations[s]&&h(e.meta.arg.endpointName,e.meta.arg.originalArgs,s,r,e.meta.requestId)}else if(u(e)){const t=d[s];null!==t&&void 0!==t&&t.valueResolved&&(t.valueResolved({data:e.payload,meta:e.meta.baseQueryMeta}),delete t.valueResolved)}else if(t.internalActions.removeQueryResult.match(e)||t.internalActions.removeMutationResult.match(e)){const e=d[s];e&&(delete d[s],e.cacheEntryRemoved())}else if(t.util.resetApiState.match(e))for(const[t,n]of Object.entries(d))delete d[t],n.cacheEntryRemoved()}},G=e=>{let{api:t,context:n,queryThunk:r,mutationThunk:o}=e;const a=(0,i.zR)(r,o),s=(0,i.Iv)(r,o),l=(0,i.KD)(r,o),c={};return(e,r)=>{if(a(e)){const{requestId:i,arg:{endpointName:o,originalArgs:a}}=e.meta,s=n.endpointDefinitions[o],l=null===s||void 0===s?void 0:s.onQueryStarted;if(l){const e={},n=new Promise(((t,n)=>{e.resolve=t,e.reject=n}));n.catch((()=>{})),c[i]=e;const u=t.endpoints[o].select("query"===s.type?a:i),d=r.dispatch(((e,t,n)=>n)),h={...r,getCacheEntry:()=>u(r.getState()),requestId:i,extra:d,updateCachedData:"query"===s.type?e=>r.dispatch(t.util.updateQueryData(o,a,e)):void 0,queryFulfilled:n};l(a,h)}}else if(l(e)){var i;const{requestId:t,baseQueryMeta:n}=e.meta;null===(i=c[t])||void 0===i||i.resolve({data:e.payload,meta:n}),delete c[t]}else if(s(e)){var o,u;const{requestId:t,rejectedWithValue:n,baseQueryMeta:r}=e.meta;null===(o=c[t])||void 0===o||o.reject({error:null!==(u=e.payload)&&void 0!==u?u:e.error,isUnhandledError:!n,meta:r}),delete c[t]}}},W=e=>{let{api:t,context:{apiUid:n},reducerPath:r}=e;return(e,r)=>{t.util.resetApiState.match(e)&&r.dispatch(t.internalActions.middlewareRegistered(n))}},q=e=>{let{api:t,queryThunk:n,internalState:r}=e;const i="".concat(t.reducerPath,"/subscriptions");let a=null,s=null;const{updateSubscriptionOptions:l,unsubscribeQueryResult:c}=t.internalActions,u=()=>r.currentSubscriptions,d={getSubscriptions:u,getSubscriptionCount:e=>{var t;return x(null!==(t=u()[e])&&void 0!==t?t:{})},isRequestSubscribed:(e,t)=>{var n;const r=u();return!(null===r||void 0===r||null===(n=r[e])||void 0===n||!n[t])}};return(e,u)=>{if(a||(a=JSON.parse(JSON.stringify(r.currentSubscriptions))),t.util.resetApiState.match(e))return a=r.currentSubscriptions={},s=null,[!0,!1];if(t.internalActions.internal_getRTKQSubscriptions.match(e))return[!1,d];const h=((e,r)=>{if(l.match(r)){var i;const{queryCacheKey:t,requestId:n,options:o}=r.payload;return null!==e&&void 0!==e&&null!==(i=e[t])&&void 0!==i&&i[n]&&(e[t][n]=o),!0}if(c.match(r)){const{queryCacheKey:t,requestId:n}=r.payload;return e[t]&&delete e[t][n],!0}if(t.internalActions.removeQueryResult.match(r))return delete e[r.payload.queryCacheKey],!0;if(n.pending.match(r)){var o,a;const{meta:{arg:t,requestId:n}}=r,i=null!==(a=e[o=t.queryCacheKey])&&void 0!==a?a:e[o]={};var s,u;return i["".concat(n,"_running")]={},t.subscribe&&(i[n]=null!==(s=null!==(u=t.subscriptionOptions)&&void 0!==u?u:i[n])&&void 0!==s?s:{}),!0}let d=!1;if(n.fulfilled.match(r)||n.rejected.match(r)){const t=e[r.meta.arg.queryCacheKey]||{},n="".concat(r.meta.requestId,"_running");d||(d=!!t[n]),delete t[n]}if(n.rejected.match(r)){const{meta:{condition:t,arg:n,requestId:i}}=r;if(t&&n.subscribe){var h,p,f,m;const t=null!==(p=e[h=n.queryCacheKey])&&void 0!==p?p:e[h]={};t[i]=null!==(f=null!==(m=n.subscriptionOptions)&&void 0!==m?m:t[i])&&void 0!==f?f:{},d=!0}}return d})(r.currentSubscriptions,e);let p=!0;if(h){s||(s=setTimeout((()=>{const e=JSON.parse(JSON.stringify(r.currentSubscriptions)),[,n]=(0,o.aS)(a,(()=>e));u.next(t.internalActions.subscriptionsUpdated(n)),a=e,s=null}),500));const l="string"==typeof e.type&&!!e.type.startsWith(i),c=n.rejected.match(e)&&e.meta.condition&&!!e.meta.arg.subscribe;p=!l&&!c}return[p,!1]}};function Z(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r0&&void 0!==arguments[0]?arguments[0]:{};return{name:Y,init(t,n,a){let{baseQuery:s,tagTypes:c,reducerPath:u,serializeQueryArgs:C,keepUnusedDataFor:E,refetchOnMountOrArgChange:O,refetchOnFocus:N,refetchOnReconnect:I,invalidationBehavior:A}=n;(0,o.vI)();const R=e=>e;Object.assign(t,{reducerPath:u,endpoints:{},internalActions:{onOnline:f,onOffline:m,onFocus:h,onFocusLost:p},util:{}});const{queryThunk:M,mutationThunk:L,patchQueryData:H,updateQueryData:K,upsertQueryData:Q,prefetch:X,buildMatchThunkActions:$}=function(e){let{reducerPath:t,baseQuery:n,context:{endpointDefinitions:r},serializeQueryArgs:a,api:s,assertTagType:l}=e;const c=async(e,t)=>{let{signal:o,abort:a,rejectWithValue:s,fulfillWithValue:l,dispatch:c,getState:h,extra:p}=t;const f=r[e.endpointName];try{let t,r=_;const s={signal:o,abort:a,dispatch:c,getState:h,extra:p,endpoint:e.endpointName,type:e.type,forced:"query"===e.type?u(e,h()):void 0},m="query"===e.type?e[w]:void 0;if(m?t=m():f.query?(t=await n(f.query(e.originalArgs),s,f.extraOptions),f.transformResponse&&(r=f.transformResponse)):t=await f.queryFn(e.originalArgs,s,f.extraOptions,(e=>n(e,s,f.extraOptions))),t.error)throw new d(t.error,t.meta);return l(await r(t.data,t.meta,e.originalArgs),{fulfilledTimeStamp:Date.now(),baseQueryMeta:t.meta,[i.s4]:!0})}catch(m){let t=m;if(t instanceof d){let n=_;f.query&&f.transformErrorResponse&&(n=f.transformErrorResponse);try{return s(await n(t.value,t.meta,e.originalArgs),{baseQueryMeta:t.meta,[i.s4]:!0})}catch(g){t=g}}throw console.error(t),t}};function u(e,n){var r,i,o,a;const s=null===(r=n[t])||void 0===r||null===(i=r.queries)||void 0===i?void 0:i[e.queryCacheKey],l=null===(o=n[t])||void 0===o?void 0:o.config.refetchOnMountOrArgChange,c=null===s||void 0===s?void 0:s.fulfilledTimeStamp,u=null!==(a=e.forceRefetch)&&void 0!==a?a:e.subscribe&&l;return!!u&&(!0===u||(Number(new Date)-Number(c))/1e3>=u)}const h=(0,i.hg)("".concat(t,"/executeQuery"),c,{getPendingMeta:()=>({startedTimeStamp:Date.now(),[i.s4]:!0}),condition(e,n){var i,o,a;let{getState:s}=n;const l=s(),c=null===(i=l[t])||void 0===i||null===(o=i.queries)||void 0===o?void 0:o[e.queryCacheKey],d=null===c||void 0===c?void 0:c.fulfilledTimeStamp,h=e.originalArgs,p=null===c||void 0===c?void 0:c.originalArgs,f=r[e.endpointName];return!!S(e)||"pending"!==(null===c||void 0===c?void 0:c.status)&&(!!u(e,l)||!(!g(f)||null===f||void 0===f||null===(a=f.forceRefetch)||void 0===a||!a.call(f,{currentArg:h,previousArg:p,endpointState:c,state:l}))||!d)},dispatchConditionRejection:!0}),p=(0,i.hg)("".concat(t,"/executeMutation"),c,{getPendingMeta:()=>({startedTimeStamp:Date.now(),[i.s4]:!0})});function f(e){return t=>{var n,r;return(null===t||void 0===t||null===(n=t.meta)||void 0===n||null===(r=n.arg)||void 0===r?void 0:r.endpointName)===e}}return{queryThunk:h,mutationThunk:p,prefetch:(e,t,n)=>(r,i)=>{const o=(e=>"force"in e)(n)&&n.force,a=(e=>"ifOlderThan"in e)(n)&&n.ifOlderThan,l=function(){const n={forceRefetch:!(arguments.length>0&&void 0!==arguments[0])||arguments[0],isPrefetch:!0};return s.endpoints[e].initiate(t,n)},c=s.endpoints[e].select(t)(i());if(o)r(l());else if(a){const e=null===c||void 0===c?void 0:c.fulfilledTimeStamp;if(!e)return void r(l());(Number(new Date)-Number(new Date(e)))/1e3>=a&&r(l())}else r(l(!1))},updateQueryData:function(e,t,n){let r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];return(i,a)=>{const l=s.endpoints[e].select(t)(a());let c,u={patches:[],inversePatches:[],undo:()=>i(s.util.patchQueryData(e,t,u.inversePatches,r))};if("uninitialized"===l.status)return u;if("data"in l)if((0,o.o$)(l.data)){const[e,t,r]=(0,o.aS)(l.data,n);u.patches.push(...t),u.inversePatches.push(...r),c=e}else c=n(l.data),u.patches.push({op:"replace",path:[],value:c}),u.inversePatches.push({op:"replace",path:[],value:l.data});return 0===u.patches.length||i(s.util.patchQueryData(e,t,u.patches,r)),u}},upsertQueryData:(e,t,n)=>r=>r(s.endpoints[e].initiate(t,{subscribe:!1,forceRefetch:!0,[w]:()=>({data:n})})),patchQueryData:(e,t,n,i)=>(o,c)=>{const u=r[e],d=a({queryArgs:t,endpointDefinition:u,endpointName:e});if(o(s.internalActions.queryResultPatched({queryCacheKey:d,patches:n})),!i)return;const h=s.endpoints[e].select(t)(c()),p=v(u.providesTags,h.data,void 0,t,{},l);o(s.internalActions.updateProvidedBy({queryCacheKey:d,providedTags:p}))},buildMatchThunkActions:function(e,t){return{matchPending:(0,i.A6)((0,i.zR)(e),f(t)),matchFulfilled:(0,i.A6)((0,i.KD)(e),f(t)),matchRejected:(0,i.A6)((0,i.Iv)(e),f(t))}}}}({baseQuery:s,reducerPath:u,context:a,api:t,serializeQueryArgs:C,assertTagType:R}),{reducer:J,actions:ee}=k({context:a,queryThunk:M,mutationThunk:L,reducerPath:u,assertTagType:R,config:{refetchOnFocus:N,refetchOnReconnect:I,refetchOnMountOrArgChange:O,keepUnusedDataFor:E,reducerPath:u,invalidationBehavior:A}});Z(t.util,{patchQueryData:H,updateQueryData:K,upsertQueryData:Q,prefetch:X,resetApiState:ee.resetApiState}),Z(t.internalActions,ee);const{middleware:te,actions:ne}=function(e){const{reducerPath:t,queryThunk:n,api:o,context:a}=e,{apiUid:s}=a,l={invalidateTags:(0,i.PH)("".concat(t,"/invalidateTags"))},c=e=>e.type.startsWith("".concat(t,"/")),u=[W,F,z,B,V,G];return{middleware:n=>{let i=!1;const l={...e,internalState:{currentSubscriptions:{}},refetchQuery:d,isThisApiSliceAction:c},h=u.map((e=>e(l))),p=q(l),f=U(l);return e=>l=>{if(!(0,r.LG)(l))return e(l);i||(i=!0,n.dispatch(o.internalActions.middlewareRegistered(s)));const u={...n,next:e},d=n.getState(),[m,g]=p(l,u,d);let v;if(v=m?e(l):g,n.getState()[t]&&(f(l,u,d),c(l)||a.hasRehydrationInfo(l)))for(let e of h)e(l,u,d);return v}},actions:l};function d(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return n({type:"query",endpointName:e.endpointName,originalArgs:e.originalArgs,subscribe:!1,forceRefetch:!0,queryCacheKey:t,...r})}}({reducerPath:u,context:a,queryThunk:M,mutationThunk:L,api:t,assertTagType:R});Z(t.util,ne),Z(t,{reducer:J,middleware:te});const{buildQuerySelector:re,buildMutationSelector:ie,selectInvalidatedBy:oe,selectCachedArgsForQuery:ae}=function(e){let{serializeQueryArgs:t,reducerPath:n,createSelector:r}=e;const i=e=>P,o=e=>D;return{buildQuerySelector:function(e,n){return o=>{const l=t({queryArgs:o,endpointDefinition:n,endpointName:e});return r(o===j?i:e=>{var t,n,r;return null!==(t=null===(n=s(e))||void 0===n||null===(r=n.queries)||void 0===r?void 0:r[l])&&void 0!==t?t:P},a)}},buildMutationSelector:function(){return e=>{let t;var n;return t="object"===typeof e?null!==(n=T(e))&&void 0!==n?n:j:e,r(t===j?o:e=>{var n,r,i;return null!==(n=null===(r=s(e))||void 0===r||null===(i=r.mutations)||void 0===i?void 0:i[t])&&void 0!==n?n:D},a)}},selectInvalidatedBy:function(e,t){const r=e[n],i=new Set;for(const n of t.map(y)){var o;const e=r.provided[n.type];if(!e)continue;let t=null!==(o=void 0!==n.id?e[n.id]:l(Object.values(e)))&&void 0!==o?o:[];for(const n of t)i.add(n)}return l(Array.from(i.values()).map((e=>{const t=r.queries[e];return t?[{queryCacheKey:e,endpointName:t.endpointName,originalArgs:t.originalArgs}]:[]})))},selectCachedArgsForQuery:function(e,t){return Object.values(e[n].queries).filter((e=>(null===e||void 0===e?void 0:e.endpointName)===t&&"uninitialized"!==e.status)).map((e=>e.originalArgs))}};function a(e){return{...e,...(t=e.status,{status:t,isUninitialized:"uninitialized"===t,isLoading:"pending"===t,isSuccess:"fulfilled"===t,isError:"rejected"===t})};var t}function s(e){return e[n]}}({serializeQueryArgs:C,reducerPath:u,createSelector:e});Z(t.util,{selectInvalidatedBy:oe,selectCachedArgsForQuery:ae});const{buildInitiateQuery:se,buildInitiateMutation:le,getRunningMutationThunk:ce,getRunningMutationsThunk:ue,getRunningQueriesThunk:de,getRunningQueryThunk:he}=function(e){let{serializeQueryArgs:t,queryThunk:n,mutationThunk:r,api:i,context:o}=e;const a=new Map,s=new Map,{unsubscribeQueryResult:l,removeMutationResult:c,updateSubscriptionOptions:u}=i.internalActions;return{buildInitiateQuery:function(e,r){const o=function(s){let{subscribe:c=!0,forceRefetch:h,subscriptionOptions:p,[w]:f,...m}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(g,v)=>{var y;const b=t({queryArgs:s,endpointDefinition:r,endpointName:e}),S=n({...m,type:"query",subscribe:c,forceRefetch:h,subscriptionOptions:p,endpointName:e,originalArgs:s,queryCacheKey:b,[w]:f}),_=i.endpoints[e].select(s),C=g(S),E=_(v());d(g);const{requestId:T,abort:O}=C,N=E.requestId!==T,k=null===(y=a.get(g))||void 0===y?void 0:y[b],j=()=>_(v()),I=Object.assign(f?C.then(j):N&&!k?Promise.resolve(E):Promise.all([k,C]).then(j),{arg:s,requestId:T,subscriptionOptions:p,queryCacheKey:b,abort:O,async unwrap(){const e=await I;if(e.isError)throw e.error;return e.data},refetch:()=>g(o(s,{subscribe:!1,forceRefetch:!0})),unsubscribe(){c&&g(l({queryCacheKey:b,requestId:T}))},updateSubscriptionOptions(t){I.subscriptionOptions=t,g(u({endpointName:e,requestId:T,queryCacheKey:b,options:t}))}});if(!k&&!N&&!f){const e=a.get(g)||{};e[b]=I,a.set(g,e),I.then((()=>{delete e[b],x(e)||a.delete(g)}))}return I}};return o},buildInitiateMutation:function(e){return function(t){let{track:n=!0,fixedCacheKey:i}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(o,a)=>{const l=r({type:"mutation",endpointName:e,originalArgs:t,track:n,fixedCacheKey:i}),u=o(l);d(o);const{requestId:h,abort:p,unwrap:f}=u,m=(g=e=>({error:e}),u.unwrap().then((e=>({data:e}))).catch(g));var g;const v=Object.assign(m,{arg:u.arg,requestId:h,abort:p,unwrap:f,reset:()=>{o(c({requestId:h,fixedCacheKey:i}))}}),y=s.get(o)||{};return s.set(o,y),y[h]=v,v.then((()=>{delete y[h],x(y)||s.delete(o)})),i&&(y[i]=v,v.then((()=>{y[i]===v&&(delete y[i],x(y)||s.delete(o))}))),v}}},getRunningQueryThunk:function(e,n){return r=>{var i;const s=o.endpointDefinitions[e],l=t({queryArgs:n,endpointDefinition:s,endpointName:e});return null===(i=a.get(r))||void 0===i?void 0:i[l]}},getRunningMutationThunk:function(e,t){return e=>{var n;return null===(n=s.get(e))||void 0===n?void 0:n[t]}},getRunningQueriesThunk:function(){return e=>Object.values(a.get(e)||{}).filter(b)},getRunningMutationsThunk:function(){return e=>Object.values(s.get(e)||{}).filter(b)}};function d(e){}}({queryThunk:M,mutationThunk:L,api:t,serializeQueryArgs:C,context:a});return Z(t.util,{getRunningMutationThunk:ce,getRunningMutationsThunk:ue,getRunningQueryThunk:he,getRunningQueriesThunk:de}),{name:Y,injectEndpoint(e,n){var r,i;const o=t;null!==(i=(r=o.endpoints)[e])&&void 0!==i||(r[e]={}),g(n)?Z(o.endpoints[e],{name:e,select:re(e,n),initiate:se(e,n)},$(M,e)):"mutation"===n.type&&Z(o.endpoints[e],{name:e,select:ie(),initiate:le(e)},$(L,e))}}}}};K()},1399:(e,t,n)=>{"use strict";n.d(t,{s4:()=>v,xC:()=>_,PH:()=>h,hg:()=>U,oM:()=>Z,rJ:()=>oe,A6:()=>k,Q:()=>N,Gx:()=>M,KD:()=>R,zR:()=>P,Iv:()=>D,h_:()=>A,x0:()=>T,cw:()=>y});var r=n(64572),i=n(89900),o=n(36313),a=n(38907);function s(e){return t=>{let{dispatch:n,getState:r}=t;return t=>i=>"function"===typeof i?i(n,r,e):t(i)}}var l=s(),c=s,u=(function(){const e=(0,o.wN)(...arguments),t=Object.assign((function(){const t=e(...arguments),n=function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;ot})}(o.kO),"undefined"!==typeof window&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(0!==arguments.length)return"object"===typeof arguments[0]?a.qC:a.qC.apply(null,arguments)}),d=("undefined"!==typeof window&&window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__,e=>e&&"function"===typeof e.match);function h(e,t){function n(){if(t){let n=t(...arguments);if(!n)throw new Error(oe(0));return{type:e,payload:n.payload,..."meta"in n&&{meta:n.meta},..."error"in n&&{error:n.error}}}return{type:e,payload:arguments.length<=0?void 0:arguments[0]}}return n.toString=()=>"".concat(e),n.type=e,n.match=t=>(0,a.LG)(t)&&t.type===e,n}var p=class e extends Array{constructor(){super(...arguments),Object.setPrototypeOf(this,e.prototype)}static get[Symbol.species](){return e}concat(){for(var e=arguments.length,t=new Array(e),n=0;n{})):e}function m(e,t,n){if(e.has(t)){let r=e.get(t);return n.update&&(r=n.update(r,t,e),e.set(t,r)),r}if(!n.insert)throw new Error(oe(10));const r=n.insert(t,e);return e.set(t,r),r}var g=()=>function(e){const{thunk:t=!0,immutableCheck:n=!0,serializableCheck:r=!0,actionCreatorCheck:i=!0}=null!==e&&void 0!==e?e:{};let o=new p;return t&&("boolean"===typeof t?o.push(l):o.push(c(t.extraArgument))),o},v="RTK_autoBatch",y=()=>e=>({payload:e,meta:{[v]:!0}}),b=e=>t=>{setTimeout(t,e)},x="undefined"!==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame:b(10),w=e=>function(t){const{autoBatch:n=!0}=null!==t&&void 0!==t?t:{};let r=new p(e);return n&&r.push(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{type:"raf"};return t=>function(){const n=t(...arguments);let r=!0,i=!1,o=!1;const a=new Set,s="tick"===e.type?queueMicrotask:"raf"===e.type?x:"callback"===e.type?e.queueNotification:b(e.timeout),l=()=>{o=!1,i&&(i=!1,a.forEach((e=>e())))};return Object.assign({},n,{subscribe(e){const t=n.subscribe((()=>r&&e()));return a.add(e),()=>{t(),a.delete(e)}},dispatch(e){try{var t;return r=!(null!==e&&void 0!==e&&null!==(t=e.meta)&&void 0!==t&&t[v]),i=!r,i&&(o||(o=!0,s(l))),n.dispatch(e)}finally{r=!0}}})}}("object"===typeof n?n:void 0)),r},S=!0;function _(e){const t=g(),{reducer:n,middleware:r,devTools:i=!0,preloadedState:o,enhancers:s}=e||{};let l,c;if("function"===typeof n)l=n;else{if(!(0,a.PO)(n))throw new Error(oe(1));l=(0,a.UY)(n)}if(!S&&r&&"function"!==typeof r)throw new Error(oe(2));if("function"===typeof r){if(c=r(t),!S&&!Array.isArray(c))throw new Error(oe(3))}else c=t();if(!S&&c.some((e=>"function"!==typeof e)))throw new Error(oe(4));let d=a.qC;i&&(d=u({trace:!S,..."object"===typeof i&&i}));const h=(0,a.md)(...c),p=w(h);if(!S&&s&&"function"!==typeof s)throw new Error(oe(5));let f="function"===typeof s?s(p):p();if(!S&&!Array.isArray(f))throw new Error(oe(6));if(!S&&f.some((e=>"function"!==typeof e)))throw new Error(oe(7));S||!c.length||f.includes(h)||console.error("middlewares were provided, but middleware enhancer was not included in final enhancers - make sure to call `getDefaultEnhancers`");const m=d(...f);return(0,a.MT)(l,o,m)}function C(e){const t={},n=[];let r;const i={addCase(e,n){const r="string"===typeof e?e:e.type;if(!r)throw new Error(oe(28));if(r in t)throw new Error(oe(29));return t[r]=n,i},addMatcher:(e,t)=>(n.push({matcher:e,reducer:t}),i),addDefaultCase:e=>(r=e,i)};return e(i),[t,n,r]}var E="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",T=function(){let e="",t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:21;for(;t--;)e+=E[64*Math.random()|0];return e},O=(e,t)=>d(e)?e.match(t):e(t);function N(){for(var e=arguments.length,t=new Array(e),n=0;nt.some((t=>O(t,e)))}function k(){for(var e=arguments.length,t=new Array(e),n=0;nt.every((t=>O(t,e)))}function j(e,t){if(!e||!e.meta)return!1;const n="string"===typeof e.meta.requestId,r=t.indexOf(e.meta.requestStatus)>-1;return n&&r}function I(e){return"function"===typeof e[0]&&"pending"in e[0]&&"fulfilled"in e[0]&&"rejected"in e[0]}function P(){for(var e=arguments.length,t=new Array(e),n=0;nj(e,["pending"]):I(t)?e=>N(...t.map((e=>e.pending)))(e):P()(t[0])}function D(){for(var e=arguments.length,t=new Array(e),n=0;nj(e,["rejected"]):I(t)?e=>N(...t.map((e=>e.rejected)))(e):D()(t[0])}function A(){for(var e=arguments.length,t=new Array(e),n=0;ne&&e.meta&&e.meta.rejectedWithValue;return 0===t.length||I(t)?e=>k(D(...t),r)(e):A()(t[0])}function R(){for(var e=arguments.length,t=new Array(e),n=0;nj(e,["fulfilled"]):I(t)?e=>N(...t.map((e=>e.fulfilled)))(e):R()(t[0])}function M(){for(var e=arguments.length,t=new Array(e),n=0;nj(e,["pending","fulfilled","rejected"]):I(t)?e=>{const n=[];for(const r of t)n.push(r.pending,r.rejected,r.fulfilled);return N(...n)(e)}:M()(t[0])}var L=["name","message","stack","code"],F=class{constructor(e,t){(0,r.Z)(this,"_type",void 0),this.payload=e,this.meta=t}},z=class{constructor(e,t){(0,r.Z)(this,"_type",void 0),this.payload=e,this.meta=t}},B=e=>{if("object"===typeof e&&null!==e){const t={};for(const n of L)"string"===typeof e[n]&&(t[n]=e[n]);return t}return{message:String(e)}},U=(()=>{function e(e,t,n){const r=h(e+"/fulfilled",((e,t,n,r)=>({payload:e,meta:{...r||{},arg:n,requestId:t,requestStatus:"fulfilled"}}))),i=h(e+"/pending",((e,t,n)=>({payload:void 0,meta:{...n||{},arg:t,requestId:e,requestStatus:"pending"}}))),o=h(e+"/rejected",((e,t,r,i,o)=>({payload:i,error:(n&&n.serializeError||B)(e||"Rejected"),meta:{...o||{},arg:r,requestId:t,rejectedWithValue:!!i,requestStatus:"rejected",aborted:"AbortError"===(null===e||void 0===e?void 0:e.name),condition:"ConditionError"===(null===e||void 0===e?void 0:e.name)}})));return Object.assign((function(e){return(a,s,l)=>{const c=null!==n&&void 0!==n&&n.idGenerator?n.idGenerator(e):T(),u=new AbortController;let d,h;function p(e){h=e,u.abort()}const f=async function(){let f;try{var m,g;let o=null===n||void 0===n||null===(m=n.condition)||void 0===m?void 0:m.call(n,e,{getState:s,extra:l});if(null!==(v=o)&&"object"===typeof v&&"function"===typeof v.then&&(o=await o),!1===o||u.signal.aborted)throw{name:"ConditionError",message:"Aborted due to condition callback returning false."};const y=new Promise(((e,t)=>{d=()=>{t({name:"AbortError",message:h||"Aborted"})},u.signal.addEventListener("abort",d)}));a(i(c,e,null===n||void 0===n||null===(g=n.getPendingMeta)||void 0===g?void 0:g.call(n,{requestId:c,arg:e},{getState:s,extra:l}))),f=await Promise.race([y,Promise.resolve(t(e,{dispatch:a,getState:s,extra:l,requestId:c,signal:u.signal,abort:p,rejectWithValue:(e,t)=>new F(e,t),fulfillWithValue:(e,t)=>new z(e,t)})).then((t=>{if(t instanceof F)throw t;return t instanceof z?r(t.payload,c,e,t.meta):r(t,c,e)}))])}catch(y){f=y instanceof F?o(null,c,e,y.payload,y.meta):o(y,c,e)}finally{d&&u.signal.removeEventListener("abort",d)}var v;return n&&!n.dispatchConditionRejection&&o.match(f)&&f.meta.condition||a(f),f}();return Object.assign(f,{abort:p,requestId:c,arg:e,unwrap:()=>f.then(H)})}}),{pending:i,rejected:o,fulfilled:r,settled:N(o,r),typePrefix:e})}return e.withTypes=()=>e,e})();function H(e){if(e.meta&&e.meta.rejectedWithValue)throw e.payload;if(e.error)throw e.error;return e.payload}var V=Symbol.for("rtk-slice-createasyncthunk");function G(e,t){return"".concat(e,"/").concat(t)}function W(){var e;let{creators:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const n=null===t||void 0===t||null===(e=t.asyncThunk)||void 0===e?void 0:e[V];return function(e){const{name:t,reducerPath:r=t}=e;if(!t)throw new Error(oe(11));const o=("function"===typeof e.reducers?e.reducers(function(){function e(e,t){return{_reducerDefinitionType:"asyncThunk",payloadCreator:e,...t}}return e.withTypes=()=>e,{reducer:e=>Object.assign({[e.name](){return e(...arguments)}}[e.name],{_reducerDefinitionType:"reducer"}),preparedReducer:(e,t)=>({_reducerDefinitionType:"reducerWithPrepare",prepare:e,reducer:t}),asyncThunk:e}}()):e.reducers)||{},a=Object.keys(o),s={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},l={addCase(e,t){const n="string"===typeof e?e:e.type;if(!n)throw new Error(oe(12));if(n in s.sliceCaseReducersByType)throw new Error(oe(13));return s.sliceCaseReducersByType[n]=t,l},addMatcher:(e,t)=>(s.sliceMatchers.push({matcher:e,reducer:t}),l),exposeAction:(e,t)=>(s.actionCreators[e]=t,l),exposeCaseReducer:(e,t)=>(s.sliceCaseReducersByName[e]=t,l)};function c(){const[t={},n=[],r]="function"===typeof e.extraReducers?C(e.extraReducers):[e.extraReducers],o={...t,...s.sliceCaseReducersByType};return function(e,t){let n,[r,o,a]=C(t);if("function"===typeof e)n=()=>f(e());else{const t=f(e);n=()=>t}function s(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:n(),t=arguments.length>1?arguments[1]:void 0,s=[r[t.type],...o.filter((e=>{let{matcher:n}=e;return n(t)})).map((e=>{let{reducer:t}=e;return t}))];return 0===s.filter((e=>!!e)).length&&(s=[a]),s.reduce(((e,n)=>{if(n){if((0,i.mv)(e)){const r=n(e,t);return void 0===r?e:r}if((0,i.o$)(e))return(0,i.Uy)(e,(e=>n(e,t)));{const r=n(e,t);if(void 0===r){if(null===e)return e;throw new Error(oe(9))}return r}}return e}),e)}return s.getInitialState=n,s}(e.initialState,(e=>{for(let t in o)e.addCase(t,o[t]);for(let t of s.sliceMatchers)e.addMatcher(t.matcher,t.reducer);for(let t of n)e.addMatcher(t.matcher,t.reducer);r&&e.addDefaultCase(r)}))}a.forEach((r=>{const i=o[r],a={reducerName:r,type:G(t,r),createNotation:"function"===typeof e.reducers};!function(e){return"asyncThunk"===e._reducerDefinitionType}(i)?function(e,t,n){let r,i,{type:o,reducerName:a,createNotation:s}=e;if("reducer"in t){if(s&&!function(e){return"reducerWithPrepare"===e._reducerDefinitionType}(t))throw new Error(oe(17));r=t.reducer,i=t.prepare}else r=t;n.addCase(o,r).exposeCaseReducer(a,r).exposeAction(a,i?h(o,i):h(o))}(a,i,l):function(e,t,n,r){let{type:i,reducerName:o}=e;if(!r)throw new Error(oe(18));const{payloadCreator:a,fulfilled:s,pending:l,rejected:c,settled:u,options:d}=t,h=r(i,a,d);n.exposeAction(o,h),s&&n.addCase(h.fulfilled,s);l&&n.addCase(h.pending,l);c&&n.addCase(h.rejected,c);u&&n.addMatcher(h.settled,u);n.exposeCaseReducer(o,{fulfilled:s||Y,pending:l||Y,rejected:c||Y,settled:u||Y})}(a,i,l,n)}));const u=e=>e,d=new Map;let p;function g(e,t){return p||(p=c()),p(e,t)}function v(){return p||(p=c()),p.getInitialState()}function y(t){let n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];function r(e){let r=e[t];return"undefined"===typeof r&&n&&(r=v()),r}function i(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:u;const r=m(d,n,{insert:()=>new WeakMap});return m(r,t,{insert:()=>{const r={};for(const[o,a]of Object.entries(null!==(i=e.selectors)&&void 0!==i?i:{})){var i;r[o]=q(a,t,v,n)}return r}})}return{reducerPath:t,getSelectors:i,get selectors(){return i(r)},selectSlice:r}}const b={name:t,reducer:g,actions:s.actionCreators,caseReducers:s.sliceCaseReducersByName,getInitialState:v,...y(r),injectInto(e){let{reducerPath:t,...n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=null!==t&&void 0!==t?t:r;return e.inject({reducerPath:i,reducer:g},n),{...b,...y(i,!0)}}};return b}}function q(e,t,n,r){function i(i){let o=t(i);"undefined"===typeof o&&r&&(o=n());for(var a=arguments.length,s=new Array(a>1?a-1:0),l=1;l{if("function"!==typeof e)throw new Error(oe(32))});var{assign:J}=Object,ee="listenerMiddleware",te=e=>{let{type:t,actionCreator:n,matcher:r,predicate:i,effect:o}=e;if(t)i=h(t).match;else if(n)t=n.type,i=n.match;else if(r)i=r;else if(!i)throw new Error(oe(21));return $(o,"options.listener"),{predicate:i,type:t,effect:o}},ne=Object.assign((e=>{const{type:t,predicate:n,effect:r}=te(e);return{id:T(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw new Error(oe(22))}}}),{withTypes:()=>ne}),re=Object.assign(h("".concat(ee,"/add")),{withTypes:()=>re}),ie=(h("".concat(ee,"/removeAll")),Object.assign(h("".concat(ee,"/remove")),{withTypes:()=>ie}));Symbol.for("rtk-state-proxy-original");function oe(e){return"Minified Redux Toolkit error #".concat(e,"; visit https://redux-toolkit.js.org/Errors?code=").concat(e," for the full message or use the non-minified dev environment for full errors. ")}},89900:(e,t,n)=>{"use strict";n.d(t,{Js:()=>h,QE:()=>$,Uy:()=>Q,Vk:()=>q,aS:()=>X,mv:()=>l,o$:()=>c,vI:()=>Y});var r=Symbol.for("immer-nothing"),i=Symbol.for("immer-draftable"),o=Symbol.for("immer-state");function a(e){throw new Error("[Immer] minified error nr: ".concat(e,". Full error at: https://bit.ly/3cXEKWf"))}var s=Object.getPrototypeOf;function l(e){return!!e&&!!e[o]}function c(e){var t;return!!e&&(d(e)||Array.isArray(e)||!!e[i]||!(null===(t=e.constructor)||void 0===t||!t[i])||y(e)||b(e))}var u=Object.prototype.constructor.toString();function d(e){if(!e||"object"!==typeof e)return!1;const t=s(e);if(null===t)return!0;const n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;return n===Object||"function"==typeof n&&Function.toString.call(n)===u}function h(e){return l(e)||a(15),e[o].base_}function p(e,t){0===f(e)?Object.entries(e).forEach((n=>{let[r,i]=n;t(r,i,e)})):e.forEach(((n,r)=>t(r,n,e)))}function f(e){const t=e[o];return t?t.type_:Array.isArray(e)?1:y(e)?2:b(e)?3:0}function m(e,t){return 2===f(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function g(e,t){return 2===f(e)?e.get(t):e[t]}function v(e,t,n){const r=f(e);2===r?e.set(t,n):3===r?e.add(n):e[t]=n}function y(e){return e instanceof Map}function b(e){return e instanceof Set}function x(e){return e.copy_||e.base_}function w(e,t){if(y(e))return new Map(e);if(b(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);if(!t&&d(e)){if(!s(e)){const t=Object.create(null);return Object.assign(t,e)}return{...e}}const n=Object.getOwnPropertyDescriptors(e);delete n[o];let r=Reflect.ownKeys(n);for(let i=0;i1&&void 0!==arguments[1]&&arguments[1];return C(e)||l(e)||!c(e)||(f(e)>1&&(e.set=e.add=e.clear=e.delete=_),Object.freeze(e),t&&p(e,((e,t)=>S(t,!0)))),e}function _(){a(2)}function C(e){return Object.isFrozen(e)}var E,T={};function O(e){const t=T[e];return t||a(0),t}function N(e,t){T[e]||(T[e]=t)}function k(){return E}function j(e,t){t&&(O("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function I(e){P(e),e.drafts_.forEach(A),e.drafts_=null}function P(e){e===E&&(E=e.parent_)}function D(e){return E={drafts_:[],parent_:E,immer_:e,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function A(e){const t=e[o];0===t.type_||1===t.type_?t.revoke_():t.revoked_=!0}function R(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];return void 0!==e&&e!==n?(n[o].modified_&&(I(t),a(4)),c(e)&&(e=M(t,e),t.parent_||F(t,e)),t.patches_&&O("Patches").generateReplacementPatches_(n[o].base_,e,t.patches_,t.inversePatches_)):e=M(t,n,[]),I(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==r?e:void 0}function M(e,t,n){if(C(t))return t;const r=t[o];if(!r)return p(t,((i,o)=>L(e,r,t,i,o,n))),t;if(r.scope_!==e)return t;if(!r.modified_)return F(e,r.base_,!0),r.base_;if(!r.finalized_){r.finalized_=!0,r.scope_.unfinalizedDrafts_--;const t=r.copy_;let i=t,o=!1;3===r.type_&&(i=new Set(t),t.clear(),o=!0),p(i,((i,a)=>L(e,r,t,i,a,n,o))),F(e,t,!1),n&&e.patches_&&O("Patches").generatePatches_(r,n,e.patches_,e.inversePatches_)}return r.copy_}function L(e,t,n,r,i,o,a){if(l(i)){const a=M(e,i,o&&t&&3!==t.type_&&!m(t.assigned_,r)?o.concat(r):void 0);if(v(n,r,a),!l(a))return;e.canAutoFreeze_=!1}else a&&n.add(i);if(c(i)&&!C(i)){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1)return;M(e,i),t&&t.scope_.parent_||F(e,i)}}function F(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&S(t,n)}var z={get(e,t){if(t===o)return e;const n=x(e);if(!m(n,t))return function(e,t,n){var r;const i=H(t,n);return i?"value"in i?i.value:null===(r=i.get)||void 0===r?void 0:r.call(e.draft_):void 0}(e,n,t);const r=n[t];return e.finalized_||!c(r)?r:r===U(e.base_,t)?(G(e),e.copy_[t]=W(r,e)):r},has:(e,t)=>t in x(e),ownKeys:e=>Reflect.ownKeys(x(e)),set(e,t,n){const r=H(x(e),t);if(null!==r&&void 0!==r&&r.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const r=U(x(e),t),s=null===r||void 0===r?void 0:r[o];if(s&&s.base_===n)return e.copy_[t]=n,e.assigned_[t]=!1,!0;if(((i=n)===(a=r)?0!==i||1/i===1/a:i!==i&&a!==a)&&(void 0!==n||m(e.base_,t)))return!0;G(e),V(e)}var i,a;return e.copy_[t]===n&&(void 0!==n||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_[t]=!0),!0},deleteProperty:(e,t)=>(void 0!==U(e.base_,t)||t in e.base_?(e.assigned_[t]=!1,G(e),V(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0),getOwnPropertyDescriptor(e,t){const n=x(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r?{writable:!0,configurable:1!==e.type_||"length"!==t,enumerable:r.enumerable,value:n[t]}:r},defineProperty(){a(11)},getPrototypeOf:e=>s(e.base_),setPrototypeOf(){a(12)}},B={};function U(e,t){const n=e[o];return(n?x(n):e)[t]}function H(e,t){if(!(t in e))return;let n=s(e);for(;n;){const e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=s(n)}}function V(e){e.modified_||(e.modified_=!0,e.parent_&&V(e.parent_))}function G(e){e.copy_||(e.copy_=w(e.base_,e.scope_.immer_.useStrictShallowCopy_))}p(z,((e,t)=>{B[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}})),B.deleteProperty=function(e,t){return B.set.call(this,e,t,void 0)},B.set=function(e,t,n){return z.set.call(this,e[0],t,n,e[0])};function W(e,t){const n=y(e)?O("MapSet").proxyMap_(e,t):b(e)?O("MapSet").proxySet_(e,t):function(e,t){const n=Array.isArray(e),r={type_:n?1:0,scope_:t?t.scope_:k(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let i=r,o=z;n&&(i=[r],o=B);const{revoke:a,proxy:s}=Proxy.revocable(i,o);return r.draft_=s,r.revoke_=a,s}(e,t);return(t?t.scope_:k()).drafts_.push(n),n}function q(e){return l(e)||a(10),Z(e)}function Z(e){if(!c(e)||C(e))return e;const t=e[o];let n;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=w(e,t.scope_.immer_.useStrictShallowCopy_)}else n=w(e,!0);return p(n,((e,t)=>{v(n,e,Z(t))})),t&&(t.finalized_=!1),n}function Y(){const e=16;const t="replace",n="add",o="remove";function u(e){if(!c(e))return e;if(Array.isArray(e))return e.map(u);if(y(e))return new Map(Array.from(e.entries()).map((e=>{let[t,n]=e;return[t,u(n)]})));if(b(e))return new Set(Array.from(e).map(u));const t=Object.create(s(e));for(const n in e)t[n]=u(e[n]);return m(e,i)&&(t[i]=e[i]),t}function d(e){return l(e)?u(e):e}N("Patches",{applyPatches_:function(r,i){return i.forEach((i=>{const{path:s,op:l}=i;let c=r;for(let t=0;t{const u=g(s,e),h=g(l,e),p=c?m(s,e)?t:n:o;if(u===h&&p===t)return;const f=r.concat(e);i.push(p===o?{op:p,path:f}:{op:p,path:f,value:h}),a.push(p===n?{op:o,path:f}:p===o?{op:n,path:f,value:d(u)}:{op:t,path:f,value:d(u)})}))}(e,r,i,a);case 1:return function(e,r,i,a){let{base_:s,assigned_:l}=e,c=e.copy_;c.length{if(!s.has(e)){const a=t.concat([l]);r.push({op:o,path:a,value:e}),i.unshift({op:n,path:a,value:e})}l++})),l=0,s.forEach((e=>{if(!a.has(e)){const a=t.concat([l]);r.push({op:n,path:a,value:e}),i.unshift({op:o,path:a,value:e})}l++}))}(e,r,i,a)}},generateReplacementPatches_:function(e,n,i,o){i.push({op:t,path:[],value:n===r?void 0:n}),o.push({op:t,path:[],value:e})}})}var K=new class{constructor(e){var t=this;this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.produce=(e,t,n)=>{if("function"===typeof e&&"function"!==typeof t){const n=t;t=e;const r=this;return function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:n;for(var i=arguments.length,o=new Array(i>1?i-1:0),a=1;at.call(this,e,...o)))}}let i;if("function"!==typeof t&&a(6),void 0!==n&&"function"!==typeof n&&a(7),c(e)){const r=D(this),o=W(e,void 0);let a=!0;try{i=t(o),a=!1}finally{a?I(r):P(r)}return j(r,n),R(i,r)}if(!e||"object"!==typeof e){if(i=t(e),void 0===i&&(i=e),i===r&&(i=void 0),this.autoFreeze_&&S(i,!0),n){const t=[],r=[];O("Patches").generateReplacementPatches_(e,i,t,r),n(t,r)}return i}a(1)},this.produceWithPatches=(e,n)=>{if("function"===typeof e)return function(n){for(var r=arguments.length,i=new Array(r>1?r-1:0),o=1;oe(t,...i)))};let r,i;return[this.produce(e,n,((e,t)=>{r=e,i=t})),r,i]},"boolean"===typeof(null===e||void 0===e?void 0:e.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),"boolean"===typeof(null===e||void 0===e?void 0:e.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy)}createDraft(e){c(e)||a(8),l(e)&&(e=q(e));const t=D(this),n=W(e,void 0);return n[o].isManual_=!0,P(t),n}finishDraft(e,t){const n=e&&e[o];n&&n.isManual_||a(9);const{scope_:r}=n;return j(r,t),R(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){const r=t[n];if(0===r.path.length&&"replace"===r.op){e=r.value;break}}n>-1&&(t=t.slice(n+1));const r=O("Patches").applyPatches_;return l(e)?r(e,t):this.produce(e,(e=>r(e,t)))}},Q=K.produce,X=K.produceWithPatches.bind(K),$=(K.setAutoFreeze.bind(K),K.setUseStrictShallowCopy.bind(K),K.applyPatches.bind(K));K.createDraft.bind(K),K.finishDraft.bind(K)},52369:(e,t,n)=>{"use strict";n.d(t,{IZ:()=>h,uu:()=>m});var r=n(27208);const{Axios:i,AxiosError:o,CanceledError:a,isCancel:s,CancelToken:l,VERSION:c,all:u,Cancel:d,isAxiosError:h,spread:p,toFormData:f,AxiosHeaders:m,HttpStatusCode:g,formToJSON:v,getAdapter:y,mergeConfig:b}=r.Z},27208:(e,t,n)=>{"use strict";n.d(t,{Z:()=>Ke});var r={};function i(e,t){return function(){return e.apply(t,arguments)}}n.r(r),n.d(r,{hasBrowserEnv:()=>ie,hasStandardBrowserEnv:()=>oe,hasStandardBrowserWebWorkerEnv:()=>se});const{toString:o}=Object.prototype,{getPrototypeOf:a}=Object,s=(l=Object.create(null),e=>{const t=o.call(e);return l[t]||(l[t]=t.slice(8,-1).toLowerCase())});var l;const c=e=>(e=e.toLowerCase(),t=>s(t)===e),u=e=>t=>typeof t===e,{isArray:d}=Array,h=u("undefined");const p=c("ArrayBuffer");const f=u("string"),m=u("function"),g=u("number"),v=e=>null!==e&&"object"===typeof e,y=e=>{if("object"!==s(e))return!1;const t=a(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},b=c("Date"),x=c("File"),w=c("Blob"),S=c("FileList"),_=c("URLSearchParams");function C(e,t){let n,r,{allOwnKeys:i=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null!==e&&"undefined"!==typeof e)if("object"!==typeof e&&(e=[e]),d(e))for(n=0,r=e.length;n0;)if(r=n[i],t===r.toLowerCase())return r;return null}const T="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:"undefined"!==typeof window?window:global,O=e=>!h(e)&&e!==T;const N=(k="undefined"!==typeof Uint8Array&&a(Uint8Array),e=>k&&e instanceof k);var k;const j=c("HTMLFormElement"),I=(e=>{let{hasOwnProperty:t}=e;return(e,n)=>t.call(e,n)})(Object.prototype),P=c("RegExp"),D=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};C(n,((n,i)=>{let o;!1!==(o=t(n,i,e))&&(r[i]=o||n)})),Object.defineProperties(e,r)},A="abcdefghijklmnopqrstuvwxyz",R="0123456789",M={DIGIT:R,ALPHA:A,ALPHA_DIGIT:A+A.toUpperCase()+R};const L=c("AsyncFunction"),F={isArray:d,isArrayBuffer:p,isBuffer:function(e){return null!==e&&!h(e)&&null!==e.constructor&&!h(e.constructor)&&m(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"===typeof FormData&&e instanceof FormData||m(e.append)&&("formdata"===(t=s(e))||"object"===t&&m(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&p(e.buffer),t},isString:f,isNumber:g,isBoolean:e=>!0===e||!1===e,isObject:v,isPlainObject:y,isUndefined:h,isDate:b,isFile:x,isBlob:w,isRegExp:P,isFunction:m,isStream:e=>v(e)&&m(e.pipe),isURLSearchParams:_,isTypedArray:N,isFileList:S,forEach:C,merge:function e(){const{caseless:t}=O(this)&&this||{},n={},r=(r,i)=>{const o=t&&E(n,i)||i;y(n[o])&&y(r)?n[o]=e(n[o],r):y(r)?n[o]=e({},r):d(r)?n[o]=r.slice():n[o]=r};for(let i=0,o=arguments.length;i3&&void 0!==arguments[3]?arguments[3]:{};return C(t,((t,r)=>{n&&m(t)?e[r]=i(t,n):e[r]=t}),{allOwnKeys:r}),e},trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,r)=>{let i,o,s;const l={};if(t=t||{},null==e)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)s=i[o],r&&!r(s,e,t)||l[s]||(t[s]=e[s],l[s]=!0);e=!1!==n&&a(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:s,kindOfTest:c,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return-1!==r&&r===n},toArray:e=>{if(!e)return null;if(d(e))return e;let t=e.length;if(!g(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=n.next())&&!r.done;){const n=r.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const r=[];for(;null!==(n=e.exec(t));)r.push(n);return r},isHTMLForm:j,hasOwnProperty:I,hasOwnProp:I,reduceDescriptors:D,freezeMethods:e=>{D(e,((t,n)=>{if(m(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=e[n];m(r)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},r=e=>{e.forEach((e=>{n[e]=!0}))};return d(e)?r(e):r(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>(e=+e,Number.isFinite(e)?e:t),findKey:E,global:T,isContextDefined:O,ALPHABET:M,generateString:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:16,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:M.ALPHA_DIGIT,n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n},isSpecCompliantForm:function(e){return!!(e&&m(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,r)=>{if(v(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[r]=e;const i=d(e)?[]:{};return C(e,((e,t)=>{const o=n(e,r+1);!h(o)&&(i[t]=o)})),t[r]=void 0,i}}return e};return n(e,0)},isAsyncFn:L,isThenable:e=>e&&(v(e)||m(e))&&m(e.then)&&m(e.catch)};function z(e,t,n,r,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),i&&(this.response=i)}F.inherits(z,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:F.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const B=z.prototype,U={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{U[e]={value:e}})),Object.defineProperties(z,U),Object.defineProperty(B,"isAxiosError",{value:!0}),z.from=(e,t,n,r,i,o)=>{const a=Object.create(B);return F.toFlatObject(e,a,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),z.call(a,e.message,t,n,r,i),a.cause=e,a.name=e.name,o&&Object.assign(a,o),a};const H=z,V=null;function G(e){return F.isPlainObject(e)||F.isArray(e)}function W(e){return F.endsWith(e,"[]")?e.slice(0,-2):e}function q(e,t,n){return e?e.concat(t).map((function(e,t){return e=W(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const Z=F.toFlatObject(F,{},null,(function(e){return/^is[A-Z]/.test(e)}));const Y=function(e,t,n){if(!F.isObject(e))throw new TypeError("target must be an object");t=t||new(V||FormData);const r=(n=F.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!F.isUndefined(t[e])}))).metaTokens,i=n.visitor||c,o=n.dots,a=n.indexes,s=(n.Blob||"undefined"!==typeof Blob&&Blob)&&F.isSpecCompliantForm(t);if(!F.isFunction(i))throw new TypeError("visitor must be a function");function l(e){if(null===e)return"";if(F.isDate(e))return e.toISOString();if(!s&&F.isBlob(e))throw new H("Blob is not supported. Use a Buffer instead.");return F.isArrayBuffer(e)||F.isTypedArray(e)?s&&"function"===typeof Blob?new Blob([e]):Buffer.from(e):e}function c(e,n,i){let s=e;if(e&&!i&&"object"===typeof e)if(F.endsWith(n,"{}"))n=r?n:n.slice(0,-2),e=JSON.stringify(e);else if(F.isArray(e)&&function(e){return F.isArray(e)&&!e.some(G)}(e)||(F.isFileList(e)||F.endsWith(n,"[]"))&&(s=F.toArray(e)))return n=W(n),s.forEach((function(e,r){!F.isUndefined(e)&&null!==e&&t.append(!0===a?q([n],r,o):null===a?n:n+"[]",l(e))})),!1;return!!G(e)||(t.append(q(i,n,o),l(e)),!1)}const u=[],d=Object.assign(Z,{defaultVisitor:c,convertValue:l,isVisitable:G});if(!F.isObject(e))throw new TypeError("data must be an object");return function e(n,r){if(!F.isUndefined(n)){if(-1!==u.indexOf(n))throw Error("Circular reference detected in "+r.join("."));u.push(n),F.forEach(n,(function(n,o){!0===(!(F.isUndefined(n)||null===n)&&i.call(t,n,F.isString(o)?o.trim():o,r,d))&&e(n,r?r.concat(o):[o])})),u.pop()}}(e),t};function K(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function Q(e,t){this._pairs=[],e&&Y(e,this,t)}const X=Q.prototype;X.append=function(e,t){this._pairs.push([e,t])},X.toString=function(e){const t=e?function(t){return e.call(this,t,K)}:K;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const $=Q;function J(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function ee(e,t,n){if(!t)return e;const r=n&&n.encode||J,i=n&&n.serialize;let o;if(o=i?i(t,n):F.isURLSearchParams(t)?t.toString():new $(t,n).toString(r),o){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}const te=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){F.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},ne={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},re={isBrowser:!0,classes:{URLSearchParams:"undefined"!==typeof URLSearchParams?URLSearchParams:$,FormData:"undefined"!==typeof FormData?FormData:null,Blob:"undefined"!==typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},ie="undefined"!==typeof window&&"undefined"!==typeof document,oe=(ae="undefined"!==typeof navigator&&navigator.product,ie&&["ReactNative","NativeScript","NS"].indexOf(ae)<0);var ae;const se="undefined"!==typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"===typeof self.importScripts,le={...r,...re};const ce=function(e){function t(e,n,r,i){let o=e[i++];if("__proto__"===o)return!0;const a=Number.isFinite(+o),s=i>=e.length;if(o=!o&&F.isArray(r)?r.length:o,s)return F.hasOwnProp(r,o)?r[o]=[r[o],n]:r[o]=n,!a;r[o]&&F.isObject(r[o])||(r[o]=[]);return t(e,n,r[o],i)&&F.isArray(r[o])&&(r[o]=function(e){const t={},n=Object.keys(e);let r;const i=n.length;let o;for(r=0;r{t(function(e){return F.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),r,n,0)})),n}return null};const ue={transitional:ne,adapter:["xhr","http"],transformRequest:[function(e,t){const n=t.getContentType()||"",r=n.indexOf("application/json")>-1,i=F.isObject(e);i&&F.isHTMLForm(e)&&(e=new FormData(e));if(F.isFormData(e))return r?JSON.stringify(ce(e)):e;if(F.isArrayBuffer(e)||F.isBuffer(e)||F.isStream(e)||F.isFile(e)||F.isBlob(e))return e;if(F.isArrayBufferView(e))return e.buffer;if(F.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return Y(e,new le.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,r){return le.isNode&&F.isBuffer(e)?(this.append(t,e.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((o=F.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return Y(o?{"files[]":e}:e,t&&new t,this.formSerializer)}}return i||r?(t.setContentType("application/json",!1),function(e,t,n){if(F.isString(e))try{return(t||JSON.parse)(e),F.trim(e)}catch(r){if("SyntaxError"!==r.name)throw r}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||ue.transitional,n=t&&t.forcedJSONParsing,r="json"===this.responseType;if(e&&F.isString(e)&&(n&&!this.responseType||r)){const n=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e)}catch(i){if(n){if("SyntaxError"===i.name)throw H.from(i,H.ERR_BAD_RESPONSE,this,null,this.response);throw i}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:le.classes.FormData,Blob:le.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};F.forEach(["delete","get","head","post","put","patch"],(e=>{ue.headers[e]={}}));const de=ue,he=F.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),pe=Symbol("internals");function fe(e){return e&&String(e).trim().toLowerCase()}function me(e){return!1===e||null==e?e:F.isArray(e)?e.map(me):String(e)}function ge(e,t,n,r,i){return F.isFunction(r)?r.call(this,t,n):(i&&(t=n),F.isString(t)?F.isString(r)?-1!==t.indexOf(r):F.isRegExp(r)?r.test(t):void 0:void 0)}class ve{constructor(e){e&&this.set(e)}set(e,t,n){const r=this;function i(e,t,n){const i=fe(t);if(!i)throw new Error("header name must be a non-empty string");const o=F.findKey(r,i);(!o||void 0===r[o]||!0===n||void 0===n&&!1!==r[o])&&(r[o||t]=me(e))}const o=(e,t)=>F.forEach(e,((e,n)=>i(e,n,t)));return F.isPlainObject(e)||e instanceof this.constructor?o(e,t):F.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim())?o((e=>{const t={};let n,r,i;return e&&e.split("\n").forEach((function(e){i=e.indexOf(":"),n=e.substring(0,i).trim().toLowerCase(),r=e.substring(i+1).trim(),!n||t[n]&&he[n]||("set-cookie"===n?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)})),t})(e),t):null!=e&&i(t,e,n),this}get(e,t){if(e=fe(e)){const n=F.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}(e);if(F.isFunction(t))return t.call(this,e,n);if(F.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=fe(e)){const n=F.findKey(this,e);return!(!n||void 0===this[n]||t&&!ge(0,this[n],n,t))}return!1}delete(e,t){const n=this;let r=!1;function i(e){if(e=fe(e)){const i=F.findKey(n,e);!i||t&&!ge(0,n[i],i,t)||(delete n[i],r=!0)}}return F.isArray(e)?e.forEach(i):i(e),r}clear(e){const t=Object.keys(this);let n=t.length,r=!1;for(;n--;){const i=t[n];e&&!ge(0,this[i],i,e,!0)||(delete this[i],r=!0)}return r}normalize(e){const t=this,n={};return F.forEach(this,((r,i)=>{const o=F.findKey(n,i);if(o)return t[o]=me(r),void delete t[i];const a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(i):String(i).trim();a!==i&&delete t[i],t[a]=me(r),n[a]=!0})),this}concat(){for(var e=arguments.length,t=new Array(e),n=0;n{null!=n&&!1!==n&&(t[r]=e&&F.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((e=>{let[t,n]=e;return t+": "+n})).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e){const t=new this(e);for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;it.set(e))),t}static accessor(e){const t=(this[pe]=this[pe]={accessors:{}}).accessors,n=this.prototype;function r(e){const r=fe(e);t[r]||(!function(e,t){const n=F.toCamelCase(" "+t);["get","set","has"].forEach((r=>{Object.defineProperty(e,r+n,{value:function(e,n,i){return this[r].call(this,t,e,n,i)},configurable:!0})}))}(n,e),t[r]=!0)}return F.isArray(e)?e.forEach(r):r(e),this}}ve.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),F.reduceDescriptors(ve.prototype,((e,t)=>{let{value:n}=e,r=t[0].toUpperCase()+t.slice(1);return{get:()=>n,set(e){this[r]=e}}})),F.freezeMethods(ve);const ye=ve;function be(e,t){const n=this||de,r=t||n,i=ye.from(r.headers);let o=r.data;return F.forEach(e,(function(e){o=e.call(n,o,i.normalize(),t?t.status:void 0)})),i.normalize(),o}function xe(e){return!(!e||!e.__CANCEL__)}function we(e,t,n){H.call(this,null==e?"canceled":e,H.ERR_CANCELED,t,n),this.name="CanceledError"}F.inherits(we,H,{__CANCEL__:!0});const Se=we;const _e=le.hasStandardBrowserEnv?{write(e,t,n,r,i,o){const a=[e+"="+encodeURIComponent(t)];F.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),F.isString(r)&&a.push("path="+r),F.isString(i)&&a.push("domain="+i),!0===o&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function Ce(e,t){return e&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const Ee=le.hasStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a");let n;function r(n){let r=n;return e&&(t.setAttribute("href",r),r=t.href),t.setAttribute("href",r),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return n=r(window.location.href),function(e){const t=F.isString(e)?r(e):e;return t.protocol===n.protocol&&t.host===n.host}}():function(){return!0};const Te=function(e,t){e=e||10;const n=new Array(e),r=new Array(e);let i,o=0,a=0;return t=void 0!==t?t:1e3,function(s){const l=Date.now(),c=r[a];i||(i=l),n[o]=s,r[o]=l;let u=a,d=0;for(;u!==o;)d+=n[u++],u%=e;if(o=(o+1)%e,o===a&&(a=(a+1)%e),l-i{const o=i.loaded,a=i.lengthComputable?i.total:void 0,s=o-n,l=r(s);n=o;const c={loaded:o,total:a,progress:a?o/a:void 0,bytes:s,rate:l||void 0,estimated:l&&a&&o<=a?(a-o)/l:void 0,event:i};c[t?"download":"upload"]=!0,e(c)}}const Ne="undefined"!==typeof XMLHttpRequest,ke={http:V,xhr:Ne&&function(e){return new Promise((function(t,n){let r=e.data;const i=ye.from(e.headers).normalize();let o,a,{responseType:s,withXSRFToken:l}=e;function c(){e.cancelToken&&e.cancelToken.unsubscribe(o),e.signal&&e.signal.removeEventListener("abort",o)}if(F.isFormData(r))if(le.hasStandardBrowserEnv||le.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if(!1!==(a=i.getContentType())){const[e,...t]=a?a.split(";").map((e=>e.trim())).filter(Boolean):[];i.setContentType([e||"multipart/form-data",...t].join("; "))}let u=new XMLHttpRequest;if(e.auth){const t=e.auth.username||"",n=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(t+":"+n))}const d=Ce(e.baseURL,e.url);function h(){if(!u)return;const r=ye.from("getAllResponseHeaders"in u&&u.getAllResponseHeaders());!function(e,t,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(new H("Request failed with status code "+n.status,[H.ERR_BAD_REQUEST,H.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}((function(e){t(e),c()}),(function(e){n(e),c()}),{data:s&&"text"!==s&&"json"!==s?u.response:u.responseText,status:u.status,statusText:u.statusText,headers:r,config:e,request:u}),u=null}if(u.open(e.method.toUpperCase(),ee(d,e.params,e.paramsSerializer),!0),u.timeout=e.timeout,"onloadend"in u?u.onloadend=h:u.onreadystatechange=function(){u&&4===u.readyState&&(0!==u.status||u.responseURL&&0===u.responseURL.indexOf("file:"))&&setTimeout(h)},u.onabort=function(){u&&(n(new H("Request aborted",H.ECONNABORTED,e,u)),u=null)},u.onerror=function(){n(new H("Network Error",H.ERR_NETWORK,e,u)),u=null},u.ontimeout=function(){let t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const r=e.transitional||ne;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(new H(t,r.clarifyTimeoutError?H.ETIMEDOUT:H.ECONNABORTED,e,u)),u=null},le.hasStandardBrowserEnv&&(l&&F.isFunction(l)&&(l=l(e)),l||!1!==l&&Ee(d))){const t=e.xsrfHeaderName&&e.xsrfCookieName&&_e.read(e.xsrfCookieName);t&&i.set(e.xsrfHeaderName,t)}void 0===r&&i.setContentType(null),"setRequestHeader"in u&&F.forEach(i.toJSON(),(function(e,t){u.setRequestHeader(t,e)})),F.isUndefined(e.withCredentials)||(u.withCredentials=!!e.withCredentials),s&&"json"!==s&&(u.responseType=e.responseType),"function"===typeof e.onDownloadProgress&&u.addEventListener("progress",Oe(e.onDownloadProgress,!0)),"function"===typeof e.onUploadProgress&&u.upload&&u.upload.addEventListener("progress",Oe(e.onUploadProgress)),(e.cancelToken||e.signal)&&(o=t=>{u&&(n(!t||t.type?new Se(null,e,u):t),u.abort(),u=null)},e.cancelToken&&e.cancelToken.subscribe(o),e.signal&&(e.signal.aborted?o():e.signal.addEventListener("abort",o)));const p=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(d);p&&-1===le.protocols.indexOf(p)?n(new H("Unsupported protocol "+p+":",H.ERR_BAD_REQUEST,e)):u.send(r||null)}))}};F.forEach(ke,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(n){}Object.defineProperty(e,"adapterName",{value:t})}}));const je=e=>"- ".concat(e),Ie=e=>F.isFunction(e)||null===e||!1===e,Pe={getAdapter:e=>{e=F.isArray(e)?e:[e];const{length:t}=e;let n,r;const i={};for(let o=0;o{let[t,n]=e;return"adapter ".concat(t," ")+(!1===n?"is not supported by the environment":"is not available in the build")}));let n=t?e.length>1?"since :\n"+e.map(je).join("\n"):" "+je(e[0]):"as no adapter specified";throw new H("There is no suitable adapter to dispatch the request "+n,"ERR_NOT_SUPPORT")}return r},adapters:ke};function De(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Se(null,e)}function Ae(e){De(e),e.headers=ye.from(e.headers),e.data=be.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return Pe.getAdapter(e.adapter||de.adapter)(e).then((function(t){return De(e),t.data=be.call(e,e.transformResponse,t),t.headers=ye.from(t.headers),t}),(function(t){return xe(t)||(De(e),t&&t.response&&(t.response.data=be.call(e,e.transformResponse,t.response),t.response.headers=ye.from(t.response.headers))),Promise.reject(t)}))}const Re=e=>e instanceof ye?{...e}:e;function Me(e,t){t=t||{};const n={};function r(e,t,n){return F.isPlainObject(e)&&F.isPlainObject(t)?F.merge.call({caseless:n},e,t):F.isPlainObject(t)?F.merge({},t):F.isArray(t)?t.slice():t}function i(e,t,n){return F.isUndefined(t)?F.isUndefined(e)?void 0:r(void 0,e,n):r(e,t,n)}function o(e,t){if(!F.isUndefined(t))return r(void 0,t)}function a(e,t){return F.isUndefined(t)?F.isUndefined(e)?void 0:r(void 0,e):r(void 0,t)}function s(n,i,o){return o in t?r(n,i):o in e?r(void 0,n):void 0}const l={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(e,t)=>i(Re(e),Re(t),!0)};return F.forEach(Object.keys(Object.assign({},e,t)),(function(r){const o=l[r]||i,a=o(e[r],t[r],r);F.isUndefined(a)&&o!==s||(n[r]=a)})),n}const Le="1.6.8",Fe={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{Fe[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const ze={};Fe.transitional=function(e,t,n){function r(e,t){return"[Axios v"+Le+"] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,i,o)=>{if(!1===e)throw new H(r(i," has been removed"+(t?" in "+t:"")),H.ERR_DEPRECATED);return t&&!ze[i]&&(ze[i]=!0,console.warn(r(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,i,o)}};const Be={assertOptions:function(e,t,n){if("object"!==typeof e)throw new H("options must be an object",H.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let i=r.length;for(;i-- >0;){const o=r[i],a=t[o];if(a){const t=e[o],n=void 0===t||a(t,o,e);if(!0!==n)throw new H("option "+o+" must be "+n,H.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new H("Unknown option "+o,H.ERR_BAD_OPTION)}},validators:Fe},Ue=Be.validators;class He{constructor(e){this.defaults=e,this.interceptors={request:new te,response:new te}}async request(e,t){try{return await this._request(e,t)}catch(n){if(n instanceof Error){let e;Error.captureStackTrace?Error.captureStackTrace(e={}):e=new Error;const t=e.stack?e.stack.replace(/^.+\n/,""):"";n.stack?t&&!String(n.stack).endsWith(t.replace(/^.+\n.+\n/,""))&&(n.stack+="\n"+t):n.stack=t}throw n}}_request(e,t){"string"===typeof e?(t=t||{}).url=e:t=e||{},t=Me(this.defaults,t);const{transitional:n,paramsSerializer:r,headers:i}=t;void 0!==n&&Be.assertOptions(n,{silentJSONParsing:Ue.transitional(Ue.boolean),forcedJSONParsing:Ue.transitional(Ue.boolean),clarifyTimeoutError:Ue.transitional(Ue.boolean)},!1),null!=r&&(F.isFunction(r)?t.paramsSerializer={serialize:r}:Be.assertOptions(r,{encode:Ue.function,serialize:Ue.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&F.merge(i.common,i[t.method]);i&&F.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete i[e]})),t.headers=ye.concat(o,i);const a=[];let s=!0;this.interceptors.request.forEach((function(e){"function"===typeof e.runWhen&&!1===e.runWhen(t)||(s=s&&e.synchronous,a.unshift(e.fulfilled,e.rejected))}));const l=[];let c;this.interceptors.response.forEach((function(e){l.push(e.fulfilled,e.rejected)}));let u,d=0;if(!s){const e=[Ae.bind(this),void 0];for(e.unshift.apply(e,a),e.push.apply(e,l),u=e.length,c=Promise.resolve(t);d{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const r=new Promise((e=>{n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e,r,i){n.reason||(n.reason=new Se(e,r,i),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;return{token:new Ge((function(t){e=t})),cancel:e}}}const We=Ge;const qe={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(qe).forEach((e=>{let[t,n]=e;qe[n]=t}));const Ze=qe;const Ye=function e(t){const n=new Ve(t),r=i(Ve.prototype.request,n);return F.extend(r,Ve.prototype,n,{allOwnKeys:!0}),F.extend(r,n,null,{allOwnKeys:!0}),r.create=function(n){return e(Me(t,n))},r}(de);Ye.Axios=Ve,Ye.CanceledError=Se,Ye.CancelToken=We,Ye.isCancel=xe,Ye.VERSION=Le,Ye.toFormData=Y,Ye.AxiosError=H,Ye.Cancel=Ye.CanceledError,Ye.all=function(e){return Promise.all(e)},Ye.spread=function(e){return function(t){return e.apply(null,t)}},Ye.isAxiosError=function(e){return F.isObject(e)&&!0===e.isAxiosError},Ye.mergeConfig=Me,Ye.AxiosHeaders=ye,Ye.formToJSON=e=>ce(F.isHTMLForm(e)?new FormData(e):e),Ye.getAdapter=Pe.getAdapter,Ye.HttpStatusCode=Ze,Ye.default=Ye;const Ke=Ye},87555:(e,t,n)=>{"use strict";n.d(t,{$j:()=>se,I0:()=>pe,dC:()=>fe,oR:()=>ue,v9:()=>g,wU:()=>G,zt:()=>le});var r=n(68963),i=n(29074),o=r,a=Symbol.for("react-redux-context"),s="undefined"!==typeof globalThis?globalThis:{};function l(){var e;if(!o.createContext)return{};const t=null!==(e=s[a])&&void 0!==e?e:s[a]=new Map;let n=t.get(o.createContext);return n||(n=o.createContext(null),t.set(o.createContext,n)),n}var c=l(),u=()=>{throw new Error("uSES not initialized!")};function d(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:c;return function(){return o.useContext(e)}}var h=d(),p=u,f=(e,t)=>e===t;function m(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:c;const t=e===c?h:d(e),n=function(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{equalityFn:r=f,devModeChecks:i={}}="function"===typeof n?{equalityFn:n}:n;const{store:a,subscription:s,getServerState:l,stabilityCheck:c,identityFunctionCheck:u}=t(),d=(o.useRef(!0),o.useCallback({[e.name]:t=>e(t)}[e.name],[e,c,i.stabilityCheck])),h=p(s.addNestedSub,a.getState,l||a.getState,d,r);return o.useDebugValue(h),h};return Object.assign(n,{withTypes:()=>n}),n}var g=m(),v=Symbol.for("react.element"),y=Symbol.for("react.portal"),b=Symbol.for("react.fragment"),x=Symbol.for("react.strict_mode"),w=Symbol.for("react.profiler"),S=Symbol.for("react.provider"),_=Symbol.for("react.context"),C=Symbol.for("react.server_context"),E=Symbol.for("react.forward_ref"),T=Symbol.for("react.suspense"),O=Symbol.for("react.suspense_list"),N=Symbol.for("react.memo"),k=Symbol.for("react.lazy"),j=(Symbol.for("react.offscreen"),Symbol.for("react.client.reference"),E),I=N;function P(e){if("object"===typeof e&&null!==e){const t=e.$$typeof;switch(t){case v:{const n=e.type;switch(n){case b:case w:case x:case T:case O:return n;default:{const e=n&&n.$$typeof;switch(e){case C:case _:case E:case k:case N:case S:return e;default:return t}}}}case y:return t}}}function D(e,t,n,r,i){let o,a,s,l,c,{areStatesEqual:u,areOwnPropsEqual:d,areStatePropsEqual:h}=i,p=!1;function f(i,p){const f=!d(p,a),m=!u(i,o,p,a);return o=i,a=p,f&&m?(s=e(o,a),t.dependsOnOwnProps&&(l=t(r,a)),c=n(s,l,a),c):f?(e.dependsOnOwnProps&&(s=e(o,a)),t.dependsOnOwnProps&&(l=t(r,a)),c=n(s,l,a),c):m?function(){const t=e(o,a),r=!h(t,s);return s=t,r&&(c=n(s,l,a)),c}():c}return function(i,u){return p?f(i,u):(o=i,a=u,s=e(o,a),l=t(r,a),c=n(s,l,a),p=!0,c)}}function A(e){return function(t){const n=e(t);function r(){return n}return r.dependsOnOwnProps=!1,r}}function R(e){return e.dependsOnOwnProps?Boolean(e.dependsOnOwnProps):1!==e.length}function M(e,t){return function(t,n){let{displayName:r}=n;const i=function(e,t){return i.dependsOnOwnProps?i.mapToProps(e,t):i.mapToProps(e,void 0)};return i.dependsOnOwnProps=!0,i.mapToProps=function(t,n){i.mapToProps=e,i.dependsOnOwnProps=R(e);let r=i(t,n);return"function"===typeof r&&(i.mapToProps=r,i.dependsOnOwnProps=R(r),r=i(t,n)),r},i}}function L(e,t){return(n,r)=>{throw new Error("Invalid value of type ".concat(typeof e," for ").concat(t," argument when connecting component ").concat(r.wrappedComponentName,"."))}}function F(e,t,n){return{...n,...e,...t}}function z(e){e()}var B={notify(){},get:()=>[]};function U(e,t){let n,r=B,i=0,o=!1;function a(){c.onStateChange&&c.onStateChange()}function s(){i++,n||(n=t?t.addNestedSub(a):e.subscribe(a),r=function(){let e=null,t=null;return{clear(){e=null,t=null},notify(){z((()=>{let t=e;for(;t;)t.callback(),t=t.next}))},get(){const t=[];let n=e;for(;n;)t.push(n),n=n.next;return t},subscribe(n){let r=!0;const i=t={callback:n,next:null,prev:t};return i.prev?i.prev.next=i:e=i,function(){r&&null!==e&&(r=!1,i.next?i.next.prev=i.prev:t=i.prev,i.prev?i.prev.next=i.next:e=i.next)}}}}())}function l(){i--,n&&0===i&&(n(),n=void 0,r.clear(),r=B)}const c={addNestedSub:function(e){s();const t=r.subscribe(e);let n=!1;return()=>{n||(n=!0,t(),l())}},notifyNestedSubs:function(){r.notify()},handleChangeWrapper:a,isSubscribed:function(){return o},trySubscribe:function(){o||(o=!0,s())},tryUnsubscribe:function(){o&&(o=!1,l())},getListeners:()=>r};return c}var H=!("undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement)?o.useLayoutEffect:o.useEffect;function V(e,t){return e===t?0!==e||0!==t||1/e===1/t:e!==e&&t!==t}function G(e,t){if(V(e,t))return!0;if("object"!==typeof e||null===e||"object"!==typeof t||null===t)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let i=0;i3&&void 0!==arguments[3]?arguments[3]:{};const h=d,p=function(e){return e?"function"===typeof e?M(e):L(e,"mapStateToProps"):A((()=>({})))}(e),f=function(e){return e&&"object"===typeof e?A((t=>function(e,t){const n={};for(const r in e){const i=e[r];"function"===typeof i&&(n[r]=function(){return t(i(...arguments))})}return n}(e,t))):e?"function"===typeof e?M(e):L(e,"mapDispatchToProps"):A((e=>({dispatch:e})))}(t),m=function(e){return e?"function"===typeof e?function(e){return function(t,n){let r,{displayName:i,areMergedPropsEqual:o}=n,a=!1;return function(t,n,i){const s=e(t,n,i);return a?o(s,r)||(r=s):(a=!0,r=s),r}}}(e):L(e,"mergeProps"):()=>F}(n),g=Boolean(e);return e=>{const t=e.displayName||e.name||"Component",n="Connect(".concat(t,")"),r={shouldHandleStateChanges:g,displayName:n,wrappedComponentName:t,WrappedComponent:e,initMapStateToProps:p,initMapDispatchToProps:f,initMergeProps:m,areStatesEqual:i,areStatePropsEqual:s,areOwnPropsEqual:a,areMergedPropsEqual:l};function c(t){const[n,i,a]=o.useMemo((()=>{const{reactReduxForwardedRef:e,...n}=t;return[t.context,e,n]}),[t]),s=o.useMemo((()=>{let e=h;return null!==n&&void 0!==n&&n.Consumer,e}),[n,h]),l=o.useContext(s),c=Boolean(t.store)&&Boolean(t.store.getState)&&Boolean(t.store.dispatch),u=Boolean(l)&&Boolean(l.store);const d=c?t.store:l.store,p=u?l.getServerState:d.getState,f=o.useMemo((()=>function(e,t){let{initMapStateToProps:n,initMapDispatchToProps:r,initMergeProps:i,...o}=t;return D(n(e,o),r(e,o),i(e,o),e,o)}(d.dispatch,r)),[d]),[m,v]=o.useMemo((()=>{if(!g)return ie;const e=U(d,c?void 0:l.subscription),t=e.notifyNestedSubs.bind(e);return[e,t]}),[d,c,l]),y=o.useMemo((()=>c?l:{...l,subscription:m}),[c,l,m]),b=o.useRef(),x=o.useRef(a),w=o.useRef(),S=o.useRef(!1),_=(o.useRef(!1),o.useRef(!1)),C=o.useRef();H((()=>(_.current=!0,()=>{_.current=!1})),[]);const E=o.useMemo((()=>()=>w.current&&a===x.current?w.current:f(d.getState(),a)),[d,a]),T=o.useMemo((()=>e=>m?function(e,t,n,r,i,o,a,s,l,c,u){if(!e)return()=>{};let d=!1,h=null;const p=()=>{if(d||!s.current)return;const e=t.getState();let n,p;try{n=r(e,i.current)}catch(f){p=f,h=f}p||(h=null),n===o.current?a.current||c():(o.current=n,l.current=n,a.current=!0,u())};return n.onStateChange=p,n.trySubscribe(),p(),()=>{if(d=!0,n.tryUnsubscribe(),n.onStateChange=null,h)throw h}}(g,d,m,f,x,b,S,_,w,v,e):()=>{}),[m]);var O,N,k;let j;O=oe,N=[x,b,S,a,w,v],H((()=>O(...N)),k);try{j=re(T,E,p?()=>f(p(),a):E)}catch(P){throw C.current&&(P.message+="\nThe error may be correlated with this previous error:\n".concat(C.current.stack,"\n\n")),P}H((()=>{C.current=void 0,w.current=void 0,b.current=j}));const I=o.useMemo((()=>o.createElement(e,{...j,ref:i})),[i,e,j]);return o.useMemo((()=>g?o.createElement(s.Provider,{value:y},I):I),[s,I,y])}const d=o.memo(c);if(d.WrappedComponent=e,d.displayName=c.displayName=n,u){const t=o.forwardRef((function(e,t){return o.createElement(d,{...e,reactReduxForwardedRef:t})}));return t.displayName=n,t.WrappedComponent=e,ne(t,e)}return ne(d,e)}};var le=function(e){let{store:t,context:n,children:r,serverState:i,stabilityCheck:a="once",identityFunctionCheck:s="once"}=e;const l=o.useMemo((()=>{const e=U(t);return{store:t,subscription:e,getServerState:i?()=>i:void 0,stabilityCheck:a,identityFunctionCheck:s}}),[t,i,a,s]),u=o.useMemo((()=>t.getState()),[t]);H((()=>{const{subscription:e}=l;return e.onStateChange=e.notifyNestedSubs,e.trySubscribe(),u!==t.getState()&&e.notifyNestedSubs(),()=>{e.tryUnsubscribe(),e.onStateChange=void 0}}),[l,u]);const d=n||c;return o.createElement(d.Provider,{value:l},r)};function ce(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:c;const t=e===c?h:d(e),n=()=>{const{store:e}=t();return e};return Object.assign(n,{withTypes:()=>n}),n}var ue=ce();function de(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:c;const t=e===c?ue:ce(e),n=()=>t().dispatch;return Object.assign(n,{withTypes:()=>n}),n}var he,pe=de(),fe=z;he=i.useSyncExternalStoreWithSelector,p=he,(e=>{re=e})(r.useSyncExternalStore)},38907:(e,t,n)=>{"use strict";function r(e){return"Minified Redux error #".concat(e,"; visit https://redux.js.org/Errors?code=").concat(e," for the full message or use the non-minified dev environment for full errors. ")}n.d(t,{DE:()=>d,LG:()=>f,MT:()=>l,PO:()=>s,UY:()=>c,md:()=>p,qC:()=>h});var i=(()=>"function"===typeof Symbol&&Symbol.observable||"@@observable")(),o=()=>Math.random().toString(36).substring(7).split("").join("."),a={INIT:"@@redux/INIT".concat(o()),REPLACE:"@@redux/REPLACE".concat(o()),PROBE_UNKNOWN_ACTION:()=>"@@redux/PROBE_UNKNOWN_ACTION".concat(o())};function s(e){if("object"!==typeof e||null===e)return!1;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||null===Object.getPrototypeOf(e)}function l(e,t,n){if("function"!==typeof e)throw new Error(r(2));if("function"===typeof t&&"function"===typeof n||"function"===typeof n&&"function"===typeof arguments[3])throw new Error(r(0));if("function"===typeof t&&"undefined"===typeof n&&(n=t,t=void 0),"undefined"!==typeof n){if("function"!==typeof n)throw new Error(r(1));return n(l)(e,t)}let o=e,c=t,u=new Map,d=u,h=0,p=!1;function f(){d===u&&(d=new Map,u.forEach(((e,t)=>{d.set(t,e)})))}function m(){if(p)throw new Error(r(3));return c}function g(e){if("function"!==typeof e)throw new Error(r(4));if(p)throw new Error(r(5));let t=!0;f();const n=h++;return d.set(n,e),function(){if(t){if(p)throw new Error(r(6));t=!1,f(),d.delete(n),u=null}}}function v(e){if(!s(e))throw new Error(r(7));if("undefined"===typeof e.type)throw new Error(r(8));if("string"!==typeof e.type)throw new Error(r(17));if(p)throw new Error(r(9));try{p=!0,c=o(c,e)}finally{p=!1}return(u=d).forEach((e=>{e()})),e}v({type:a.INIT});return{dispatch:v,subscribe:g,getState:m,replaceReducer:function(e){if("function"!==typeof e)throw new Error(r(10));o=e,v({type:a.REPLACE})},[i]:function(){const e=g;return{subscribe(t){if("object"!==typeof t||null===t)throw new Error(r(11));function n(){const e=t;e.next&&e.next(m())}n();return{unsubscribe:e(n)}},[i](){return this}}}}}function c(e){const t=Object.keys(e),n={};for(let r=0;r{const n=e[t];if("undefined"===typeof n(void 0,{type:a.INIT}))throw new Error(r(12));if("undefined"===typeof n(void 0,{type:a.PROBE_UNKNOWN_ACTION()}))throw new Error(r(13))}))}(n)}catch(s){o=s}return function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;if(o)throw o;let a=!1;const s={};for(let o=0;oe:1===t.length?t[0]:t.reduce(((e,t)=>function(){return e(t(...arguments))}))}function p(){for(var e=arguments.length,t=new Array(e),n=0;n(n,i)=>{const o=e(n,i);let a=()=>{throw new Error(r(15))};const s={getState:o.getState,dispatch:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;re(s)));return a=h(...l)(o.dispatch),{...o,dispatch:a}}}function f(e){return s(e)&&"type"in e&&"string"===typeof e.type}},36313:(e,t,n)=>{"use strict";n.d(t,{P1:()=>h,kO:()=>u,wN:()=>d});n(64572);function r(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"expected a function, instead received ".concat(typeof e);if("function"!==typeof e)throw new TypeError(t)}var i=e=>Array.isArray(e)?e:[e];function o(e){const t=Array.isArray(e[0])?e[0]:e;return function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"expected all items to be functions, instead received the following types: ";if(!e.every((e=>"function"===typeof e))){const n=e.map((e=>"function"===typeof e?"function ".concat(e.name||"unnamed","()"):typeof e)).join(", ");throw new TypeError("".concat(t,"[").concat(n,"]"))}}(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}Symbol(),Object.getPrototypeOf({});var a="undefined"!==typeof WeakRef?WeakRef:class{constructor(e){this.value=e}deref(){return this.value}},s=0,l=1;function c(){return{s:s,v:void 0,o:null,p:null}}function u(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=c();const{resultEqualityCheck:r}=t;let i,o=0;function s(){let t=n;const{length:s}=arguments;for(let e=0,n=s;e{n=c(),s.resetResultsCount()},s.resultsCount=()=>o,s.resetResultsCount=()=>{o=0},s}function d(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;ac,resetDependencyRecomputations:()=>{c=0},lastResult:()=>a,recomputations:()=>l,resetRecomputations:()=>{l=0},memoize:f,argsMemoize:g})};return Object.assign(l,{withTypes:()=>l}),l}var h=d(u),p=Object.assign((function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:h;!function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"expected an object, instead received ".concat(typeof e);if("object"!==typeof e)throw new TypeError(t)}(e,"createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ".concat(typeof e));const n=Object.keys(e),r=t(n.map((t=>e[t])),(function(){for(var e=arguments.length,t=new Array(e),r=0;r(e[n[r]]=t,e)),{})}));return r}),{withTypes:()=>p})},95097:(e,t,n)=>{"use strict";n.d(t,{_T:()=>r});function r(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i{"use strict";var r,i;n.d(t,{z:()=>bt}),function(e){e.assertEqual=e=>e,e.assertIs=function(e){},e.assertNever=function(e){throw new Error},e.arrayToEnum=e=>{const t={};for(const n of e)t[n]=n;return t},e.getValidEnumValues=t=>{const n=e.objectKeys(t).filter((e=>"number"!==typeof t[t[e]])),r={};for(const e of n)r[e]=t[e];return e.objectValues(r)},e.objectValues=t=>e.objectKeys(t).map((function(e){return t[e]})),e.objectKeys="function"===typeof Object.keys?e=>Object.keys(e):e=>{const t=[];for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t},e.find=(e,t)=>{for(const n of e)if(t(n))return n},e.isInteger="function"===typeof Number.isInteger?e=>Number.isInteger(e):e=>"number"===typeof e&&isFinite(e)&&Math.floor(e)===e,e.joinValues=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:" | ";return e.map((e=>"string"===typeof e?"'".concat(e,"'"):e)).join(t)},e.jsonStringifyReplacer=(e,t)=>"bigint"===typeof t?t.toString():t}(r||(r={})),function(e){e.mergeShapes=(e,t)=>({...e,...t})}(i||(i={}));const o=r.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),a=e=>{switch(typeof e){case"undefined":return o.undefined;case"string":return o.string;case"number":return isNaN(e)?o.nan:o.number;case"boolean":return o.boolean;case"function":return o.function;case"bigint":return o.bigint;case"symbol":return o.symbol;case"object":return Array.isArray(e)?o.array:null===e?o.null:e.then&&"function"===typeof e.then&&e.catch&&"function"===typeof e.catch?o.promise:"undefined"!==typeof Map&&e instanceof Map?o.map:"undefined"!==typeof Set&&e instanceof Set?o.set:"undefined"!==typeof Date&&e instanceof Date?o.date:o.object;default:return o.unknown}},s=r.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class l extends Error{constructor(e){var t;super(),t=this,this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];t.issues=[...t.issues,...e]};const n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(e){return e.message},n={_errors:[]},r=e=>{for(const i of e.issues)if("invalid_union"===i.code)i.unionErrors.map(r);else if("invalid_return_type"===i.code)r(i.returnTypeError);else if("invalid_arguments"===i.code)r(i.argumentsError);else if(0===i.path.length)n._errors.push(t(i));else{let e=n,r=0;for(;r0&&void 0!==arguments[0]?arguments[0]:e=>e.message;const t={},n=[];for(const r of this.issues)r.path.length>0?(t[r.path[0]]=t[r.path[0]]||[],t[r.path[0]].push(e(r))):n.push(e(r));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}}l.create=e=>new l(e);const c=(e,t)=>{let n;switch(e.code){case s.invalid_type:n=e.received===o.undefined?"Required":"Expected ".concat(e.expected,", received ").concat(e.received);break;case s.invalid_literal:n="Invalid literal value, expected ".concat(JSON.stringify(e.expected,r.jsonStringifyReplacer));break;case s.unrecognized_keys:n="Unrecognized key(s) in object: ".concat(r.joinValues(e.keys,", "));break;case s.invalid_union:n="Invalid input";break;case s.invalid_union_discriminator:n="Invalid discriminator value. Expected ".concat(r.joinValues(e.options));break;case s.invalid_enum_value:n="Invalid enum value. Expected ".concat(r.joinValues(e.options),", received '").concat(e.received,"'");break;case s.invalid_arguments:n="Invalid function arguments";break;case s.invalid_return_type:n="Invalid function return type";break;case s.invalid_date:n="Invalid date";break;case s.invalid_string:"object"===typeof e.validation?"includes"in e.validation?(n='Invalid input: must include "'.concat(e.validation.includes,'"'),"number"===typeof e.validation.position&&(n="".concat(n," at one or more positions greater than or equal to ").concat(e.validation.position))):"startsWith"in e.validation?n='Invalid input: must start with "'.concat(e.validation.startsWith,'"'):"endsWith"in e.validation?n='Invalid input: must end with "'.concat(e.validation.endsWith,'"'):r.assertNever(e.validation):n="regex"!==e.validation?"Invalid ".concat(e.validation):"Invalid";break;case s.too_small:n="array"===e.type?"Array must contain ".concat(e.exact?"exactly":e.inclusive?"at least":"more than"," ").concat(e.minimum," element(s)"):"string"===e.type?"String must contain ".concat(e.exact?"exactly":e.inclusive?"at least":"over"," ").concat(e.minimum," character(s)"):"number"===e.type?"Number must be ".concat(e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than ").concat(e.minimum):"date"===e.type?"Date must be ".concat(e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than ").concat(new Date(Number(e.minimum))):"Invalid input";break;case s.too_big:n="array"===e.type?"Array must contain ".concat(e.exact?"exactly":e.inclusive?"at most":"less than"," ").concat(e.maximum," element(s)"):"string"===e.type?"String must contain ".concat(e.exact?"exactly":e.inclusive?"at most":"under"," ").concat(e.maximum," character(s)"):"number"===e.type?"Number must be ".concat(e.exact?"exactly":e.inclusive?"less than or equal to":"less than"," ").concat(e.maximum):"bigint"===e.type?"BigInt must be ".concat(e.exact?"exactly":e.inclusive?"less than or equal to":"less than"," ").concat(e.maximum):"date"===e.type?"Date must be ".concat(e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"," ").concat(new Date(Number(e.maximum))):"Invalid input";break;case s.custom:n="Invalid input";break;case s.invalid_intersection_types:n="Intersection results could not be merged";break;case s.not_multiple_of:n="Number must be a multiple of ".concat(e.multipleOf);break;case s.not_finite:n="Number must be finite";break;default:n=t.defaultError,r.assertNever(e)}return{message:n}};let u=c;function d(){return u}const h=e=>{const{data:t,path:n,errorMaps:r,issueData:i}=e,o=[...n,...i.path||[]],a={...i,path:o};if(void 0!==i.message)return{...i,path:o,message:i.message};let s="";const l=r.filter((e=>!!e)).slice().reverse();for(const c of l)s=c(a,{data:t,defaultError:s}).message;return{...i,path:o,message:s}};function p(e,t){const n=d(),r=h({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===c?void 0:c].filter((e=>!!e))});e.common.issues.push(r)}class f{constructor(){this.value="valid"}dirty(){"valid"===this.value&&(this.value="dirty")}abort(){"aborted"!==this.value&&(this.value="aborted")}static mergeArray(e,t){const n=[];for(const r of t){if("aborted"===r.status)return m;"dirty"===r.status&&e.dirty(),n.push(r.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,t){const n=[];for(const r of t){const e=await r.key,t=await r.value;n.push({key:e,value:t})}return f.mergeObjectSync(e,n)}static mergeObjectSync(e,t){const n={};for(const r of t){const{key:t,value:i}=r;if("aborted"===t.status)return m;if("aborted"===i.status)return m;"dirty"===t.status&&e.dirty(),"dirty"===i.status&&e.dirty(),"__proto__"===t.value||"undefined"===typeof i.value&&!r.alwaysSet||(n[t.value]=i.value)}return{status:e.value,value:n}}}const m=Object.freeze({status:"aborted"}),g=e=>({status:"dirty",value:e}),v=e=>({status:"valid",value:e}),y=e=>"aborted"===e.status,b=e=>"dirty"===e.status,x=e=>"valid"===e.status,w=e=>"undefined"!==typeof Promise&&e instanceof Promise;function S(e,t,n,r){if("a"===n&&!r)throw new TypeError("Private accessor was defined without a getter");if("function"===typeof t?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?r:"a"===n?r.call(e):r?r.value:t.get(e)}function _(e,t,n,r,i){if("m"===r)throw new TypeError("Private method is not writable");if("a"===r&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"===typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===r?i.call(e,n):i?i.value=n:t.set(e,n),n}var C,E,T;"function"===typeof SuppressedError&&SuppressedError,function(e){e.errToObj=e=>"string"===typeof e?{message:e}:e||{},e.toString=e=>"string"===typeof e?e:null===e||void 0===e?void 0:e.message}(C||(C={}));class O{constructor(e,t,n,r){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,this._key=r}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const N=(e,t)=>{if(x(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new l(e.common.issues);return this._error=t,this._error}}};function k(e){if(!e)return{};const{errorMap:t,invalid_type_error:n,required_error:r,description:i}=e;if(t&&(n||r))throw new Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');if(t)return{errorMap:t,description:i};return{errorMap:(t,i)=>{var o,a;const{message:s}=e;return"invalid_enum_value"===t.code?{message:null!==s&&void 0!==s?s:i.defaultError}:"undefined"===typeof i.data?{message:null!==(o=null!==s&&void 0!==s?s:r)&&void 0!==o?o:i.defaultError}:"invalid_type"!==t.code?{message:i.defaultError}:{message:null!==(a=null!==s&&void 0!==s?s:n)&&void 0!==a?a:i.defaultError}},description:i}}class j{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return a(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:a(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new f,ctx:{common:e.parent.common,data:e.data,parsedType:a(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(w(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){var n;const r={common:{issues:[],async:null!==(n=null===t||void 0===t?void 0:t.async)&&void 0!==n&&n,contextualErrorMap:null===t||void 0===t?void 0:t.errorMap},path:(null===t||void 0===t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:a(e)},i=this._parseSync({data:e,path:r.path,parent:r});return N(r,i)}async parseAsync(e,t){const n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){const n={common:{issues:[],contextualErrorMap:null===t||void 0===t?void 0:t.errorMap,async:!0},path:(null===t||void 0===t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:a(e)},r=this._parse({data:e,path:n.path,parent:n}),i=await(w(r)?r:Promise.resolve(r));return N(n,i)}refine(e,t){const n=e=>"string"===typeof t||"undefined"===typeof t?{message:t}:"function"===typeof t?t(e):t;return this._refinement(((t,r)=>{const i=e(t),o=()=>r.addIssue({code:s.custom,...n(t)});return"undefined"!==typeof Promise&&i instanceof Promise?i.then((e=>!!e||(o(),!1))):!!i||(o(),!1)}))}refinement(e,t){return this._refinement(((n,r)=>!!e(n)||(r.addIssue("function"===typeof t?t(n,r):t),!1)))}_refinement(e){return new Ce({schema:this,typeName:Me.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return Ee.create(this,this._def)}nullable(){return Te.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return oe.create(this,this._def)}promise(){return _e.create(this,this._def)}or(e){return le.create([this,e],this._def)}and(e){return he.create(this,e,this._def)}transform(e){return new Ce({...k(this._def),schema:this,typeName:Me.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t="function"===typeof e?e:()=>e;return new Oe({...k(this._def),innerType:this,defaultValue:t,typeName:Me.ZodDefault})}brand(){return new Ie({typeName:Me.ZodBranded,type:this,...k(this._def)})}catch(e){const t="function"===typeof e?e:()=>e;return new Ne({...k(this._def),innerType:this,catchValue:t,typeName:Me.ZodCatch})}describe(e){return new(0,this.constructor)({...this._def,description:e})}pipe(e){return Pe.create(this,e)}readonly(){return De.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const I=/^c[^\s-]{8,}$/i,P=/^[0-9a-z]+$/,D=/^[0-9A-HJKMNP-TV-Z]{26}$/,A=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,R=/^[a-z0-9_-]{21}$/i,M=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,L=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i;let F;const z=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,B=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,U=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,H="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",V=new RegExp("^".concat(H,"$"));function G(e){let t="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return e.precision?t="".concat(t,"\\.\\d{").concat(e.precision,"}"):null==e.precision&&(t="".concat(t,"(\\.\\d+)?")),t}function W(e){let t="".concat(H,"T").concat(G(e));const n=[];return n.push(e.local?"Z?":"Z"),e.offset&&n.push("([+-]\\d{2}:?\\d{2})"),t="".concat(t,"(").concat(n.join("|"),")"),new RegExp("^".concat(t,"$"))}class q extends j{_parse(e){this._def.coerce&&(e.data=String(e.data));if(this._getType(e)!==o.string){const t=this._getOrReturnCtx(e);return p(t,{code:s.invalid_type,expected:o.string,received:t.parsedType}),m}const t=new f;let n;for(const o of this._def.checks)if("min"===o.kind)e.data.lengtho.value&&(n=this._getOrReturnCtx(e,n),p(n,{code:s.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),t.dirty());else if("length"===o.kind){const r=e.data.length>o.value,i=e.data.lengthe.test(t)),{validation:t,code:s.invalid_string,...C.errToObj(n)})}_addCheck(e){return new q({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...C.errToObj(e)})}url(e){return this._addCheck({kind:"url",...C.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...C.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...C.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...C.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...C.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...C.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...C.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...C.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...C.errToObj(e)})}datetime(e){var t,n;return"string"===typeof e?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:"undefined"===typeof(null===e||void 0===e?void 0:e.precision)?null:null===e||void 0===e?void 0:e.precision,offset:null!==(t=null===e||void 0===e?void 0:e.offset)&&void 0!==t&&t,local:null!==(n=null===e||void 0===e?void 0:e.local)&&void 0!==n&&n,...C.errToObj(null===e||void 0===e?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return"string"===typeof e?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:"undefined"===typeof(null===e||void 0===e?void 0:e.precision)?null:null===e||void 0===e?void 0:e.precision,...C.errToObj(null===e||void 0===e?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...C.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...C.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:null===t||void 0===t?void 0:t.position,...C.errToObj(null===t||void 0===t?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...C.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...C.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...C.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...C.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...C.errToObj(t)})}nonempty(e){return this.min(1,C.errToObj(e))}trim(){return new q({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new q({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new q({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((e=>"datetime"===e.kind))}get isDate(){return!!this._def.checks.find((e=>"date"===e.kind))}get isTime(){return!!this._def.checks.find((e=>"time"===e.kind))}get isDuration(){return!!this._def.checks.find((e=>"duration"===e.kind))}get isEmail(){return!!this._def.checks.find((e=>"email"===e.kind))}get isURL(){return!!this._def.checks.find((e=>"url"===e.kind))}get isEmoji(){return!!this._def.checks.find((e=>"emoji"===e.kind))}get isUUID(){return!!this._def.checks.find((e=>"uuid"===e.kind))}get isNANOID(){return!!this._def.checks.find((e=>"nanoid"===e.kind))}get isCUID(){return!!this._def.checks.find((e=>"cuid"===e.kind))}get isCUID2(){return!!this._def.checks.find((e=>"cuid2"===e.kind))}get isULID(){return!!this._def.checks.find((e=>"ulid"===e.kind))}get isIP(){return!!this._def.checks.find((e=>"ip"===e.kind))}get isBase64(){return!!this._def.checks.find((e=>"base64"===e.kind))}get minLength(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.valuer?n:r;return parseInt(e.toFixed(i).replace(".",""))%parseInt(t.toFixed(i).replace(".",""))/Math.pow(10,i)}q.create=e=>{var t;return new q({checks:[],typeName:Me.ZodString,coerce:null!==(t=null===e||void 0===e?void 0:e.coerce)&&void 0!==t&&t,...k(e)})};class Y extends j{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){this._def.coerce&&(e.data=Number(e.data));if(this._getType(e)!==o.number){const t=this._getOrReturnCtx(e);return p(t,{code:s.invalid_type,expected:o.number,received:t.parsedType}),m}let t;const n=new f;for(const i of this._def.checks)if("int"===i.kind)r.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),p(t,{code:s.invalid_type,expected:"integer",received:"float",message:i.message}),n.dirty());else if("min"===i.kind){(i.inclusive?e.datai.value:e.data>=i.value)&&(t=this._getOrReturnCtx(e,t),p(t,{code:s.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),n.dirty())}else"multipleOf"===i.kind?0!==Z(e.data,i.value)&&(t=this._getOrReturnCtx(e,t),p(t,{code:s.not_multiple_of,multipleOf:i.value,message:i.message}),n.dirty()):"finite"===i.kind?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),p(t,{code:s.not_finite,message:i.message}),n.dirty()):r.assertNever(i);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,C.toString(t))}gt(e,t){return this.setLimit("min",e,!1,C.toString(t))}lte(e,t){return this.setLimit("max",e,!0,C.toString(t))}lt(e,t){return this.setLimit("max",e,!1,C.toString(t))}setLimit(e,t,n,r){return new Y({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:C.toString(r)}]})}_addCheck(e){return new Y({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:C.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:C.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:C.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:C.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:C.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:C.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:C.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:C.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:C.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value"int"===e.kind||"multipleOf"===e.kind&&r.isInteger(e.value)))}get isFinite(){let e=null,t=null;for(const n of this._def.checks){if("finite"===n.kind||"int"===n.kind||"multipleOf"===n.kind)return!0;"min"===n.kind?(null===t||n.value>t)&&(t=n.value):"max"===n.kind&&(null===e||n.valuenew Y({checks:[],typeName:Me.ZodNumber,coerce:(null===e||void 0===e?void 0:e.coerce)||!1,...k(e)});class K extends j{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){this._def.coerce&&(e.data=BigInt(e.data));if(this._getType(e)!==o.bigint){const t=this._getOrReturnCtx(e);return p(t,{code:s.invalid_type,expected:o.bigint,received:t.parsedType}),m}let t;const n=new f;for(const i of this._def.checks)if("min"===i.kind){(i.inclusive?e.datai.value:e.data>=i.value)&&(t=this._getOrReturnCtx(e,t),p(t,{code:s.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),n.dirty())}else"multipleOf"===i.kind?e.data%i.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),p(t,{code:s.not_multiple_of,multipleOf:i.value,message:i.message}),n.dirty()):r.assertNever(i);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,C.toString(t))}gt(e,t){return this.setLimit("min",e,!1,C.toString(t))}lte(e,t){return this.setLimit("max",e,!0,C.toString(t))}lt(e,t){return this.setLimit("max",e,!1,C.toString(t))}setLimit(e,t,n,r){return new K({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:C.toString(r)}]})}_addCheck(e){return new K({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:C.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:C.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:C.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:C.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:C.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value{var t;return new K({checks:[],typeName:Me.ZodBigInt,coerce:null!==(t=null===e||void 0===e?void 0:e.coerce)&&void 0!==t&&t,...k(e)})};class Q extends j{_parse(e){this._def.coerce&&(e.data=Boolean(e.data));if(this._getType(e)!==o.boolean){const t=this._getOrReturnCtx(e);return p(t,{code:s.invalid_type,expected:o.boolean,received:t.parsedType}),m}return v(e.data)}}Q.create=e=>new Q({typeName:Me.ZodBoolean,coerce:(null===e||void 0===e?void 0:e.coerce)||!1,...k(e)});class X extends j{_parse(e){this._def.coerce&&(e.data=new Date(e.data));if(this._getType(e)!==o.date){const t=this._getOrReturnCtx(e);return p(t,{code:s.invalid_type,expected:o.date,received:t.parsedType}),m}if(isNaN(e.data.getTime())){return p(this._getOrReturnCtx(e),{code:s.invalid_date}),m}const t=new f;let n;for(const i of this._def.checks)"min"===i.kind?e.data.getTime()i.value&&(n=this._getOrReturnCtx(e,n),p(n,{code:s.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),t.dirty()):r.assertNever(i);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(e){return new X({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:C.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:C.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return null!=e?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.valuenew X({checks:[],coerce:(null===e||void 0===e?void 0:e.coerce)||!1,typeName:Me.ZodDate,...k(e)});class $ extends j{_parse(e){if(this._getType(e)!==o.symbol){const t=this._getOrReturnCtx(e);return p(t,{code:s.invalid_type,expected:o.symbol,received:t.parsedType}),m}return v(e.data)}}$.create=e=>new $({typeName:Me.ZodSymbol,...k(e)});class J extends j{_parse(e){if(this._getType(e)!==o.undefined){const t=this._getOrReturnCtx(e);return p(t,{code:s.invalid_type,expected:o.undefined,received:t.parsedType}),m}return v(e.data)}}J.create=e=>new J({typeName:Me.ZodUndefined,...k(e)});class ee extends j{_parse(e){if(this._getType(e)!==o.null){const t=this._getOrReturnCtx(e);return p(t,{code:s.invalid_type,expected:o.null,received:t.parsedType}),m}return v(e.data)}}ee.create=e=>new ee({typeName:Me.ZodNull,...k(e)});class te extends j{constructor(){super(...arguments),this._any=!0}_parse(e){return v(e.data)}}te.create=e=>new te({typeName:Me.ZodAny,...k(e)});class ne extends j{constructor(){super(...arguments),this._unknown=!0}_parse(e){return v(e.data)}}ne.create=e=>new ne({typeName:Me.ZodUnknown,...k(e)});class re extends j{_parse(e){const t=this._getOrReturnCtx(e);return p(t,{code:s.invalid_type,expected:o.never,received:t.parsedType}),m}}re.create=e=>new re({typeName:Me.ZodNever,...k(e)});class ie extends j{_parse(e){if(this._getType(e)!==o.undefined){const t=this._getOrReturnCtx(e);return p(t,{code:s.invalid_type,expected:o.void,received:t.parsedType}),m}return v(e.data)}}ie.create=e=>new ie({typeName:Me.ZodVoid,...k(e)});class oe extends j{_parse(e){const{ctx:t,status:n}=this._processInputParams(e),r=this._def;if(t.parsedType!==o.array)return p(t,{code:s.invalid_type,expected:o.array,received:t.parsedType}),m;if(null!==r.exactLength){const e=t.data.length>r.exactLength.value,i=t.data.lengthr.maxLength.value&&(p(t,{code:s.too_big,maximum:r.maxLength.value,type:"array",inclusive:!0,exact:!1,message:r.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map(((e,n)=>r.type._parseAsync(new O(t,e,t.path,n))))).then((e=>f.mergeArray(n,e)));const i=[...t.data].map(((e,n)=>r.type._parseSync(new O(t,e,t.path,n))));return f.mergeArray(n,i)}get element(){return this._def.type}min(e,t){return new oe({...this._def,minLength:{value:e,message:C.toString(t)}})}max(e,t){return new oe({...this._def,maxLength:{value:e,message:C.toString(t)}})}length(e,t){return new oe({...this._def,exactLength:{value:e,message:C.toString(t)}})}nonempty(e){return this.min(1,e)}}function ae(e){if(e instanceof se){const t={};for(const n in e.shape){const r=e.shape[n];t[n]=Ee.create(ae(r))}return new se({...e._def,shape:()=>t})}return e instanceof oe?new oe({...e._def,type:ae(e.element)}):e instanceof Ee?Ee.create(ae(e.unwrap())):e instanceof Te?Te.create(ae(e.unwrap())):e instanceof pe?pe.create(e.items.map((e=>ae(e)))):e}oe.create=(e,t)=>new oe({type:e,minLength:null,maxLength:null,exactLength:null,typeName:Me.ZodArray,...k(t)});class se extends j{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(null!==this._cached)return this._cached;const e=this._def.shape(),t=r.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==o.object){const t=this._getOrReturnCtx(e);return p(t,{code:s.invalid_type,expected:o.object,received:t.parsedType}),m}const{status:t,ctx:n}=this._processInputParams(e),{shape:r,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof re&&"strip"===this._def.unknownKeys))for(const o in n.data)i.includes(o)||a.push(o);const l=[];for(const o of i){const e=r[o],t=n.data[o];l.push({key:{status:"valid",value:o},value:e._parse(new O(n,t,n.path,o)),alwaysSet:o in n.data})}if(this._def.catchall instanceof re){const e=this._def.unknownKeys;if("passthrough"===e)for(const t of a)l.push({key:{status:"valid",value:t},value:{status:"valid",value:n.data[t]}});else if("strict"===e)a.length>0&&(p(n,{code:s.unrecognized_keys,keys:a}),t.dirty());else if("strip"!==e)throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const e=this._def.catchall;for(const t of a){const r=n.data[t];l.push({key:{status:"valid",value:t},value:e._parse(new O(n,r,n.path,t)),alwaysSet:t in n.data})}}return n.common.async?Promise.resolve().then((async()=>{const e=[];for(const t of l){const n=await t.key,r=await t.value;e.push({key:n,value:r,alwaysSet:t.alwaysSet})}return e})).then((e=>f.mergeObjectSync(t,e))):f.mergeObjectSync(t,l)}get shape(){return this._def.shape()}strict(e){return C.errToObj,new se({...this._def,unknownKeys:"strict",...void 0!==e?{errorMap:(t,n)=>{var r,i,o,a;const s=null!==(o=null===(i=(r=this._def).errorMap)||void 0===i?void 0:i.call(r,t,n).message)&&void 0!==o?o:n.defaultError;return"unrecognized_keys"===t.code?{message:null!==(a=C.errToObj(e).message)&&void 0!==a?a:s}:{message:s}}}:{}})}strip(){return new se({...this._def,unknownKeys:"strip"})}passthrough(){return new se({...this._def,unknownKeys:"passthrough"})}extend(e){return new se({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new se({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:Me.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new se({...this._def,catchall:e})}pick(e){const t={};return r.objectKeys(e).forEach((n=>{e[n]&&this.shape[n]&&(t[n]=this.shape[n])})),new se({...this._def,shape:()=>t})}omit(e){const t={};return r.objectKeys(this.shape).forEach((n=>{e[n]||(t[n]=this.shape[n])})),new se({...this._def,shape:()=>t})}deepPartial(){return ae(this)}partial(e){const t={};return r.objectKeys(this.shape).forEach((n=>{const r=this.shape[n];e&&!e[n]?t[n]=r:t[n]=r.optional()})),new se({...this._def,shape:()=>t})}required(e){const t={};return r.objectKeys(this.shape).forEach((n=>{if(e&&!e[n])t[n]=this.shape[n];else{let e=this.shape[n];for(;e instanceof Ee;)e=e._def.innerType;t[n]=e}})),new se({...this._def,shape:()=>t})}keyof(){return xe(r.objectKeys(this.shape))}}se.create=(e,t)=>new se({shape:()=>e,unknownKeys:"strip",catchall:re.create(),typeName:Me.ZodObject,...k(t)}),se.strictCreate=(e,t)=>new se({shape:()=>e,unknownKeys:"strict",catchall:re.create(),typeName:Me.ZodObject,...k(t)}),se.lazycreate=(e,t)=>new se({shape:e,unknownKeys:"strip",catchall:re.create(),typeName:Me.ZodObject,...k(t)});class le extends j{_parse(e){const{ctx:t}=this._processInputParams(e),n=this._def.options;if(t.common.async)return Promise.all(n.map((async e=>{const n={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:n}),ctx:n}}))).then((function(e){for(const t of e)if("valid"===t.result.status)return t.result;for(const r of e)if("dirty"===r.result.status)return t.common.issues.push(...r.ctx.common.issues),r.result;const n=e.map((e=>new l(e.ctx.common.issues)));return p(t,{code:s.invalid_union,unionErrors:n}),m}));{let e;const r=[];for(const o of n){const n={...t,common:{...t.common,issues:[]},parent:null},i=o._parseSync({data:t.data,path:t.path,parent:n});if("valid"===i.status)return i;"dirty"!==i.status||e||(e={result:i,ctx:n}),n.common.issues.length&&r.push(n.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;const i=r.map((e=>new l(e)));return p(t,{code:s.invalid_union,unionErrors:i}),m}}get options(){return this._def.options}}le.create=(e,t)=>new le({options:e,typeName:Me.ZodUnion,...k(t)});const ce=e=>e instanceof ye?ce(e.schema):e instanceof Ce?ce(e.innerType()):e instanceof be?[e.value]:e instanceof we?e.options:e instanceof Se?r.objectValues(e.enum):e instanceof Oe?ce(e._def.innerType):e instanceof J?[void 0]:e instanceof ee?[null]:e instanceof Ee?[void 0,...ce(e.unwrap())]:e instanceof Te?[null,...ce(e.unwrap())]:e instanceof Ie||e instanceof De?ce(e.unwrap()):e instanceof Ne?ce(e._def.innerType):[];class ue extends j{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==o.object)return p(t,{code:s.invalid_type,expected:o.object,received:t.parsedType}),m;const n=this.discriminator,r=t.data[n],i=this.optionsMap.get(r);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(p(t,{code:s.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),m)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,n){const r=new Map;for(const i of t){const t=ce(i.shape[e]);if(!t.length)throw new Error("A discriminator value for key `".concat(e,"` could not be extracted from all schema options"));for(const n of t){if(r.has(n))throw new Error("Discriminator property ".concat(String(e)," has duplicate value ").concat(String(n)));r.set(n,i)}}return new ue({typeName:Me.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:r,...k(n)})}}function de(e,t){const n=a(e),i=a(t);if(e===t)return{valid:!0,data:e};if(n===o.object&&i===o.object){const n=r.objectKeys(t),i=r.objectKeys(e).filter((e=>-1!==n.indexOf(e))),o={...e,...t};for(const r of i){const n=de(e[r],t[r]);if(!n.valid)return{valid:!1};o[r]=n.data}return{valid:!0,data:o}}if(n===o.array&&i===o.array){if(e.length!==t.length)return{valid:!1};const n=[];for(let r=0;r{if(y(e)||y(r))return m;const i=de(e.value,r.value);return i.valid?((b(e)||b(r))&&t.dirty(),{status:t.value,value:i.data}):(p(n,{code:s.invalid_intersection_types}),m)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then((e=>{let[t,n]=e;return r(t,n)})):r(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}}he.create=(e,t,n)=>new he({left:e,right:t,typeName:Me.ZodIntersection,...k(n)});class pe extends j{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==o.array)return p(n,{code:s.invalid_type,expected:o.array,received:n.parsedType}),m;if(n.data.lengththis._def.items.length&&(p(n,{code:s.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const r=[...n.data].map(((e,t)=>{const r=this._def.items[t]||this._def.rest;return r?r._parse(new O(n,e,n.path,t)):null})).filter((e=>!!e));return n.common.async?Promise.all(r).then((e=>f.mergeArray(t,e))):f.mergeArray(t,r)}get items(){return this._def.items}rest(e){return new pe({...this._def,rest:e})}}pe.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new pe({items:e,typeName:Me.ZodTuple,rest:null,...k(t)})};class fe extends j{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==o.object)return p(n,{code:s.invalid_type,expected:o.object,received:n.parsedType}),m;const r=[],i=this._def.keyType,a=this._def.valueType;for(const o in n.data)r.push({key:i._parse(new O(n,o,n.path,o)),value:a._parse(new O(n,n.data[o],n.path,o)),alwaysSet:o in n.data});return n.common.async?f.mergeObjectAsync(t,r):f.mergeObjectSync(t,r)}get element(){return this._def.valueType}static create(e,t,n){return new fe(t instanceof j?{keyType:e,valueType:t,typeName:Me.ZodRecord,...k(n)}:{keyType:q.create(),valueType:e,typeName:Me.ZodRecord,...k(t)})}}class me extends j{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==o.map)return p(n,{code:s.invalid_type,expected:o.map,received:n.parsedType}),m;const r=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(((e,t)=>{let[o,a]=e;return{key:r._parse(new O(n,o,n.path,[t,"key"])),value:i._parse(new O(n,a,n.path,[t,"value"]))}}));if(n.common.async){const e=new Map;return Promise.resolve().then((async()=>{for(const n of a){const r=await n.key,i=await n.value;if("aborted"===r.status||"aborted"===i.status)return m;"dirty"!==r.status&&"dirty"!==i.status||t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}}))}{const e=new Map;for(const n of a){const r=n.key,i=n.value;if("aborted"===r.status||"aborted"===i.status)return m;"dirty"!==r.status&&"dirty"!==i.status||t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}}}}me.create=(e,t,n)=>new me({valueType:t,keyType:e,typeName:Me.ZodMap,...k(n)});class ge extends j{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==o.set)return p(n,{code:s.invalid_type,expected:o.set,received:n.parsedType}),m;const r=this._def;null!==r.minSize&&n.data.sizer.maxSize.value&&(p(n,{code:s.too_big,maximum:r.maxSize.value,type:"set",inclusive:!0,exact:!1,message:r.maxSize.message}),t.dirty());const i=this._def.valueType;function a(e){const n=new Set;for(const r of e){if("aborted"===r.status)return m;"dirty"===r.status&&t.dirty(),n.add(r.value)}return{status:t.value,value:n}}const l=[...n.data.values()].map(((e,t)=>i._parse(new O(n,e,n.path,t))));return n.common.async?Promise.all(l).then((e=>a(e))):a(l)}min(e,t){return new ge({...this._def,minSize:{value:e,message:C.toString(t)}})}max(e,t){return new ge({...this._def,maxSize:{value:e,message:C.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}ge.create=(e,t)=>new ge({valueType:e,minSize:null,maxSize:null,typeName:Me.ZodSet,...k(t)});class ve extends j{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==o.function)return p(t,{code:s.invalid_type,expected:o.function,received:t.parsedType}),m;function n(e,n){return h({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,d(),c].filter((e=>!!e)),issueData:{code:s.invalid_arguments,argumentsError:n}})}function r(e,n){return h({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,d(),c].filter((e=>!!e)),issueData:{code:s.invalid_return_type,returnTypeError:n}})}const i={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof _e){const e=this;return v((async function(){for(var t=arguments.length,o=new Array(t),s=0;s{throw c.addIssue(n(o,e)),c})),d=await Reflect.apply(a,this,u);return await e._def.returns._def.type.parseAsync(d,i).catch((e=>{throw c.addIssue(r(d,e)),c}))}))}{const e=this;return v((function(){for(var t=arguments.length,o=new Array(t),s=0;snew ye({getter:e,typeName:Me.ZodLazy,...k(t)});class be extends j{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return p(t,{received:t.data,code:s.invalid_literal,expected:this._def.value}),m}return{status:"valid",value:e.data}}get value(){return this._def.value}}function xe(e,t){return new we({values:e,typeName:Me.ZodEnum,...k(t)})}be.create=(e,t)=>new be({value:e,typeName:Me.ZodLiteral,...k(t)});class we extends j{constructor(){super(...arguments),E.set(this,void 0)}_parse(e){if("string"!==typeof e.data){const t=this._getOrReturnCtx(e),n=this._def.values;return p(t,{expected:r.joinValues(n),received:t.parsedType,code:s.invalid_type}),m}if(S(this,E,"f")||_(this,E,new Set(this._def.values),"f"),!S(this,E,"f").has(e.data)){const t=this._getOrReturnCtx(e),n=this._def.values;return p(t,{received:t.data,code:s.invalid_enum_value,options:n}),m}return v(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._def;return we.create(e,{...this._def,...t})}exclude(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this._def;return we.create(this.options.filter((t=>!e.includes(t))),{...this._def,...t})}}E=new WeakMap,we.create=xe;class Se extends j{constructor(){super(...arguments),T.set(this,void 0)}_parse(e){const t=r.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==o.string&&n.parsedType!==o.number){const e=r.objectValues(t);return p(n,{expected:r.joinValues(e),received:n.parsedType,code:s.invalid_type}),m}if(S(this,T,"f")||_(this,T,new Set(r.getValidEnumValues(this._def.values)),"f"),!S(this,T,"f").has(e.data)){const e=r.objectValues(t);return p(n,{received:n.data,code:s.invalid_enum_value,options:e}),m}return v(e.data)}get enum(){return this._def.values}}T=new WeakMap,Se.create=(e,t)=>new Se({values:e,typeName:Me.ZodNativeEnum,...k(t)});class _e extends j{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==o.promise&&!1===t.common.async)return p(t,{code:s.invalid_type,expected:o.promise,received:t.parsedType}),m;const n=t.parsedType===o.promise?t.data:Promise.resolve(t.data);return v(n.then((e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap}))))}}_e.create=(e,t)=>new _e({type:e,typeName:Me.ZodPromise,...k(t)});class Ce extends j{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===Me.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:n}=this._processInputParams(e),i=this._def.effect||null,o={addIssue:e=>{p(n,e),e.fatal?t.abort():t.dirty()},get path(){return n.path}};if(o.addIssue=o.addIssue.bind(o),"preprocess"===i.type){const e=i.transform(n.data,o);if(n.common.async)return Promise.resolve(e).then((async e=>{if("aborted"===t.value)return m;const r=await this._def.schema._parseAsync({data:e,path:n.path,parent:n});return"aborted"===r.status?m:"dirty"===r.status||"dirty"===t.value?g(r.value):r}));{if("aborted"===t.value)return m;const r=this._def.schema._parseSync({data:e,path:n.path,parent:n});return"aborted"===r.status?m:"dirty"===r.status||"dirty"===t.value?g(r.value):r}}if("refinement"===i.type){const e=e=>{const t=i.refinement(e,o);if(n.common.async)return Promise.resolve(t);if(t instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return e};if(!1===n.common.async){const r=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return"aborted"===r.status?m:("dirty"===r.status&&t.dirty(),e(r.value),{status:t.value,value:r.value})}return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then((n=>"aborted"===n.status?m:("dirty"===n.status&&t.dirty(),e(n.value).then((()=>({status:t.value,value:n.value}))))))}if("transform"===i.type){if(!1===n.common.async){const e=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!x(e))return e;const r=i.transform(e.value,o);if(r instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:r}}return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then((e=>x(e)?Promise.resolve(i.transform(e.value,o)).then((e=>({status:t.value,value:e}))):e))}r.assertNever(i)}}Ce.create=(e,t,n)=>new Ce({schema:e,typeName:Me.ZodEffects,effect:t,...k(n)}),Ce.createWithPreprocess=(e,t,n)=>new Ce({schema:t,effect:{type:"preprocess",transform:e},typeName:Me.ZodEffects,...k(n)});class Ee extends j{_parse(e){return this._getType(e)===o.undefined?v(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Ee.create=(e,t)=>new Ee({innerType:e,typeName:Me.ZodOptional,...k(t)});class Te extends j{_parse(e){return this._getType(e)===o.null?v(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Te.create=(e,t)=>new Te({innerType:e,typeName:Me.ZodNullable,...k(t)});class Oe extends j{_parse(e){const{ctx:t}=this._processInputParams(e);let n=t.data;return t.parsedType===o.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}Oe.create=(e,t)=>new Oe({innerType:e,typeName:Me.ZodDefault,defaultValue:"function"===typeof t.default?t.default:()=>t.default,...k(t)});class Ne extends j{_parse(e){const{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},r=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return w(r)?r.then((e=>({status:"valid",value:"valid"===e.status?e.value:this._def.catchValue({get error(){return new l(n.common.issues)},input:n.data})}))):{status:"valid",value:"valid"===r.status?r.value:this._def.catchValue({get error(){return new l(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}}Ne.create=(e,t)=>new Ne({innerType:e,typeName:Me.ZodCatch,catchValue:"function"===typeof t.catch?t.catch:()=>t.catch,...k(t)});class ke extends j{_parse(e){if(this._getType(e)!==o.nan){const t=this._getOrReturnCtx(e);return p(t,{code:s.invalid_type,expected:o.nan,received:t.parsedType}),m}return{status:"valid",value:e.data}}}ke.create=e=>new ke({typeName:Me.ZodNaN,...k(e)});const je=Symbol("zod_brand");class Ie extends j{_parse(e){const{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}}class Pe extends j{_parse(e){const{status:t,ctx:n}=this._processInputParams(e);if(n.common.async){return(async()=>{const e=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return"aborted"===e.status?m:"dirty"===e.status?(t.dirty(),g(e.value)):this._def.out._parseAsync({data:e.value,path:n.path,parent:n})})()}{const e=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return"aborted"===e.status?m:"dirty"===e.status?(t.dirty(),{status:"dirty",value:e.value}):this._def.out._parseSync({data:e.value,path:n.path,parent:n})}}static create(e,t){return new Pe({in:e,out:t,typeName:Me.ZodPipeline})}}class De extends j{_parse(e){const t=this._def.innerType._parse(e),n=e=>(x(e)&&(e.value=Object.freeze(e.value)),e);return w(t)?t.then((e=>n(e))):n(t)}unwrap(){return this._def.innerType}}function Ae(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return e?te.create().superRefine(((r,i)=>{var o,a;if(!e(r)){const e="function"===typeof t?t(r):"string"===typeof t?{message:t}:t,s=null===(a=null!==(o=e.fatal)&&void 0!==o?o:n)||void 0===a||a,l="string"===typeof e?{message:e}:e;i.addIssue({code:"custom",...l,fatal:s})}})):te.create()}De.create=(e,t)=>new De({innerType:e,typeName:Me.ZodReadonly,...k(t)});const Re={object:se.lazycreate};var Me;!function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"}(Me||(Me={}));const Le=q.create,Fe=Y.create,ze=ke.create,Be=K.create,Ue=Q.create,He=X.create,Ve=$.create,Ge=J.create,We=ee.create,qe=te.create,Ze=ne.create,Ye=re.create,Ke=ie.create,Qe=oe.create,Xe=se.create,$e=se.strictCreate,Je=le.create,et=ue.create,tt=he.create,nt=pe.create,rt=fe.create,it=me.create,ot=ge.create,at=ve.create,st=ye.create,lt=be.create,ct=we.create,ut=Se.create,dt=_e.create,ht=Ce.create,pt=Ee.create,ft=Te.create,mt=Ce.createWithPreprocess,gt=Pe.create,vt={string:e=>q.create({...e,coerce:!0}),number:e=>Y.create({...e,coerce:!0}),boolean:e=>Q.create({...e,coerce:!0}),bigint:e=>K.create({...e,coerce:!0}),date:e=>X.create({...e,coerce:!0})},yt=m;var bt=Object.freeze({__proto__:null,defaultErrorMap:c,setErrorMap:function(e){u=e},getErrorMap:d,makeIssue:h,EMPTY_PATH:[],addIssueToContext:p,ParseStatus:f,INVALID:m,DIRTY:g,OK:v,isAborted:y,isDirty:b,isValid:x,isAsync:w,get util(){return r},get objectUtil(){return i},ZodParsedType:o,getParsedType:a,ZodType:j,datetimeRegex:W,ZodString:q,ZodNumber:Y,ZodBigInt:K,ZodBoolean:Q,ZodDate:X,ZodSymbol:$,ZodUndefined:J,ZodNull:ee,ZodAny:te,ZodUnknown:ne,ZodNever:re,ZodVoid:ie,ZodArray:oe,ZodObject:se,ZodUnion:le,ZodDiscriminatedUnion:ue,ZodIntersection:he,ZodTuple:pe,ZodRecord:fe,ZodMap:me,ZodSet:ge,ZodFunction:ve,ZodLazy:ye,ZodLiteral:be,ZodEnum:we,ZodNativeEnum:Se,ZodPromise:_e,ZodEffects:Ce,ZodTransformer:Ce,ZodOptional:Ee,ZodNullable:Te,ZodDefault:Oe,ZodCatch:Ne,ZodNaN:ke,BRAND:je,ZodBranded:Ie,ZodPipeline:Pe,ZodReadonly:De,custom:Ae,Schema:j,ZodSchema:j,late:Re,get ZodFirstPartyTypeKind(){return Me},coerce:vt,any:qe,array:Qe,bigint:Be,boolean:Ue,date:He,discriminatedUnion:et,effect:ht,enum:ct,function:at,instanceof:function(e){return Ae((t=>t instanceof e),arguments.length>1&&void 0!==arguments[1]?arguments[1]:{message:"Input not instance of ".concat(e.name)})},intersection:tt,lazy:st,literal:lt,map:it,nan:ze,nativeEnum:ut,never:Ye,null:We,nullable:ft,number:Fe,object:Xe,oboolean:()=>Ue().optional(),onumber:()=>Fe().optional(),optional:pt,ostring:()=>Le().optional(),pipeline:gt,preprocess:mt,promise:dt,record:rt,set:ot,strictObject:$e,string:Le,symbol:Ve,transformer:ht,tuple:nt,undefined:Ge,union:Je,unknown:Ze,void:Ke,NEVER:yt,ZodIssueCode:s,quotelessJson:e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),ZodError:l})}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={id:r,loaded:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}n.m=e,n.amdO={},n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},(()=>{var e,t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;n.t=function(r,i){if(1&i&&(r=this(r)),8&i)return r;if("object"===typeof r&&r){if(4&i&&r.__esModule)return r;if(16&i&&"function"===typeof r.then)return r}var o=Object.create(null);n.r(o);var a={};e=e||[null,t({}),t([]),t(t)];for(var s=2&i&&r;"object"==typeof s&&!~e.indexOf(s);s=t(s))Object.getOwnPropertyNames(s).forEach((e=>a[e]=()=>r[e]));return a.default=()=>r,n.d(o,a),o}})(),n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.f={},n.e=e=>Promise.all(Object.keys(n.f).reduce(((t,r)=>(n.f[r](e,t),t)),[])),n.u=e=>"static/js/"+e+"."+{30:"b097cbb4",86:"ad271bdc",96:"6e1bf3f4",115:"2c4de87e",148:"b60f0e5e",163:"eea01641",178:"e0df04cc",185:"7d51fcfa",202:"52f13cd5",214:"99a17949",328:"f24db8bf",337:"b6fc715e",358:"d6300019",383:"4faec08b",425:"c6dd581a",436:"564ff0f8",451:"3b449e79",515:"cd9a8a90",556:"55f00ac6",598:"243fd68d",599:"c58caf58",619:"f27ddcbd",620:"7aea5425",632:"b6c03857",674:"e6536250",678:"b73063ff",704:"45771d88",785:"d2eae69c",919:"53e04507",924:"382f18b1",1148:"3c629236",1150:"2b47004d",1155:"4fce1854",1168:"91d9e2c2",1179:"15d7ac65",1278:"c0717a20",1350:"21b6a9ef",1478:"5044be66",1508:"f0158935",1528:"2a39d066",1551:"2e8e3e50",1616:"8a217b93",1736:"9f4a6b02",1746:"a8ba5c62",1747:"b4331799",1869:"d6661a03",1956:"0205a5bb",2033:"5c6dfca9",2104:"4f22ecac",2118:"bc169874",2141:"26c930aa",2183:"e2318c37",2190:"27f354f5",2194:"38bafdfc",2223:"63ae5a05",2229:"6687fc46",2238:"3cf88b79",2302:"7e7a2fb4",2322:"29255c22",2367:"052e678b",2403:"82cd0025",2435:"092e8d7f",2477:"e6121bfd",2492:"64b7d727",2521:"21bdfab9",2532:"30bb087d",2553:"5faabf5a",2590:"75b6626e",2620:"8e5c52fb",2677:"3d7ea3fc",2701:"86912840",2840:"b69eb597",2876:"afe7e47f",2931:"3ade3bc3",2962:"66e01691",2981:"6d027811",2986:"2100fcad",2994:"e6c77407",3025:"7e536c57",3074:"bbb8aaef",3231:"65396654",3271:"7b005742",3304:"f5897a96",3333:"ceb196e6",3358:"c777fe1f",3397:"9c0005a3",3457:"b193afe6",3466:"98f036ac",3498:"c7d39060",3621:"9b6c61ab",3630:"8eda2d3f",3644:"aeda46ca",3645:"bdd20200",3756:"67bd6b00",3757:"7c534899",3771:"764124c3",3898:"1fec42e6",3920:"11b8c9d7",3926:"8f2c9741",3945:"054c871d",4046:"5dac72a9",4080:"07be3744",4123:"64882a16",4132:"04be158e",4159:"5e0cfd91",4198:"d0671061",4326:"d5c34c54",4345:"9238776d",4347:"adf03999",4388:"edb51304",4535:"5d1c8322",4550:"2e04d705",4583:"1682cf86",4618:"131d9563",4635:"ffa9b6b7",4663:"b893c670",4684:"27f737c4",4789:"d52069de",4812:"73af8448",4814:"11309069",4826:"d2723706",4842:"57182d38",4848:"64f47dc3",4949:"6bf46e71",4964:"c7c75eb0",4983:"f6502102",4985:"991de003",5107:"8cac6a03",5112:"6189bbe0",5117:"896f7ffb",5161:"45b4f520",5168:"6fb23f08",5226:"675d55fb",5311:"a500a1ea",5341:"2c19c723",5352:"3d3187b7",5373:"90c95a6e",5378:"86805fba",5387:"8af1d694",5399:"f9398084",5448:"cef3c129",5450:"f0dcfc15",5491:"a460479e",5643:"00957838",5661:"c83a4eb0",5670:"5c30cef1",5720:"39a954f1",5790:"e3d88e2c",5809:"d78ebebb",5863:"e2cd2452",5868:"be04313a",6044:"2de9962d",6058:"7f474f92",6065:"b08e9640",6142:"b2452554",6144:"e1568f26",6156:"0c562627",6227:"fc562bbf",6230:"8e64216a",6289:"51f8741e",6291:"e7cdf7f2",6300:"dca75d45",6321:"aa3e44de",6329:"d78c1432",6361:"a9f11e7a",6390:"497d0ec8",6392:"134ee5e4",6393:"b0de2d9e",6521:"371403ec",6531:"7eac62d1",6619:"9e1de7a6",6679:"6e0a87d5",6692:"9322b59d",6795:"5ec0c96a",6815:"672badd5",6876:"867b698c",6877:"d2d51d98",6887:"0855fd66",6892:"2c3c2bcb",6898:"5580b941",6919:"84ed9ccc",6954:"e18be130",6961:"f4888ae1",7016:"4a34a027",7119:"e94f8dac",7202:"fefd43ee",7257:"8ce0d045",7276:"47f377a4",7388:"9f447514",7409:"4408962b",7520:"d245d6ac",7522:"1a0f9c02",7529:"ddf87a9a",7543:"3fcfd3ba",7554:"28f3da22",7645:"6565454c",7684:"a3920b72",7779:"9d9b07ae",7803:"a56cfca6",7992:"20690745",7999:"bdf4fe79",8011:"4fed4307",8065:"666ef449",8133:"2afc4db4",8140:"8d8e9309",8167:"b9a90da5",8424:"5b5c42b5",8450:"baf3a89d",8591:"93172fe9",8607:"1e377882",8622:"49f3054c",8695:"f17f8853",8702:"69a3e0d5",8747:"baf63d86",8791:"b209de42",8797:"f8f0ce13",8850:"97635389",8853:"c8f9e9d6",8858:"cd9d49a5",8905:"b8a9fd91",9101:"ce051539",9173:"71d773f2",9204:"77418f94",9207:"5881b206",9212:"870f16f0",9219:"24a20881",9280:"40cff028",9292:"91ed23f7",9297:"eadc4dba",9308:"c72b8585",9319:"40f9e46a",9371:"b42befbc",9411:"96fb3e2f",9413:"b2921c36",9433:"7ce648d0",9526:"10bb1684",9528:"9991c023",9555:"c9b5ee61",9572:"9f83f004",9621:"48073631",9876:"b336d1f5",9917:"67d792e3",9923:"270f0a19"}[e]+".chunk.js",n.miniCssF=e=>"static/css/"+e+"."+{328:"c0ade9c1",1551:"d5e5efc2",4983:"5c3e5de4",8424:"308a04db"}[e]+".chunk.css",n.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={},t="ydb-embedded-ui:";n.l=(r,i,o,a)=>{if(e[r])e[r].push(i);else{var s,l;if(void 0!==o)for(var c=document.getElementsByTagName("script"),u=0;u{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),l&&document.head.appendChild(s)}}})(),n.r=e=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),n.p="./",(()=>{if("undefined"!==typeof document){var e=e=>new Promise(((t,r)=>{var i=n.miniCssF(e),o=n.p+i;if(((e,t)=>{for(var n=document.getElementsByTagName("link"),r=0;r{var o=document.createElement("link");o.rel="stylesheet",o.type="text/css",o.onerror=o.onload=n=>{if(o.onerror=o.onload=null,"load"===n.type)r();else{var a=n&&("load"===n.type?"missing":n.type),s=n&&n.target&&n.target.href||t,l=new Error("Loading CSS chunk "+e+" failed.\n("+s+")");l.code="CSS_CHUNK_LOAD_FAILED",l.type=a,l.request=s,o.parentNode.removeChild(o),i(l)}},o.href=t,n?n.parentNode.insertBefore(o,n.nextSibling):document.head.appendChild(o)})(e,o,null,t,r)})),t={179:0};n.f.miniCss=(n,r)=>{t[n]?r.push(t[n]):0!==t[n]&&{328:1,1551:1,4983:1,8424:1}[n]&&r.push(t[n]=e(n).then((()=>{t[n]=0}),(e=>{throw delete t[n],e})))}}})(),(()=>{var e={179:0};n.f.j=(t,r)=>{var i=n.o(e,t)?e[t]:void 0;if(0!==i)if(i)r.push(i[2]);else if(4983!=t){var o=new Promise(((n,r)=>i=e[t]=[n,r]));r.push(i[2]=o);var a=n.p+n.u(t),s=new Error;n.l(a,(r=>{if(n.o(e,t)&&(0!==(i=e[t])&&(e[t]=void 0),i)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,i[1](s)}}),"chunk-"+t,t)}else e[t]=0};var t=(t,r)=>{var i,o,a=r[0],s=r[1],l=r[2],c=0;if(a.some((t=>0!==e[t]))){for(i in s)n.o(s,i)&&(n.m[i]=s[i]);if(l)l(n)}for(t&&t(r);c{"use strict";var e=n(63609),t=n(36084),r=n(90058),i=n(67510);const{store:o,history:a}=(0,i.xC)();var s=n(75859);!async function(){let r;r=await Promise.resolve().then(n.bind(n,36084)).then((e=>{let{SingleClusterApp:t}=e;return t}));const i=document.getElementById("root");if(!i)throw new Error("Can't find root element");e.createRoot(i).render((0,s.jsx)(t.ErrorBoundary,{children:(0,s.jsx)(r,{store:o,history:a})}))}(),(0,r.Z)()})()})(); \ No newline at end of file diff --git a/ydb/core/viewer/monitoring/static/js/main.9fede0a0.js b/ydb/core/viewer/monitoring/static/js/main.9fede0a0.js new file mode 100644 index 000000000000..1dfa085a7b31 --- /dev/null +++ b/ydb/core/viewer/monitoring/static/js/main.9fede0a0.js @@ -0,0 +1,2 @@ +/*! For license information please see main.9fede0a0.js.LICENSE.txt */ +(()=>{var e={40726:(e,t,n)=>{"use strict";n.d(t,{C:()=>s,t:()=>a});var r=n(68963),o=n(75859);const i=r.createContext(void 0);function a(e){let{children:t,registry:n}=e;return(0,o.jsx)(i.Provider,{value:n,children:t})}function s(e){const t=r.useContext(i);if(void 0===t)throw new Error("useComponent must be used within ComponentsProvider");return t.get(e)}},27710:(e,t,n)=>{"use strict";n.d(t,{SV:()=>M,l2:()=>z,TI:()=>L});var r=n(68963),o=n(70292),i=n(89646);const a=r.createContext(void 0),s=r.createContext(void 0);function l(e){const{size:t,disabled:n,defaultExpanded:o,arrowPosition:l,summary:c,keepMounted:u,onUpdate:d,expanded:f}=e,[p,h]=r.useState((()=>Boolean(o))),m=void 0!==f,g=(0,i.u)(),v="disclosure".concat(g);return r.createElement(a.Provider,{value:{size:t,disabled:n,summary:c,arrowPosition:l,keepMounted:u,expanded:m?f:p,ariaControls:g,ariaLabelledby:v}},r.createElement(s.Provider,{value:()=>{h((e=>!e));d(m?!f:!p)}},e.children))}function c(){const e=r.useContext(a);if(void 0===e)throw new Error("useDisclosureAttributes must be used within DisclosureProvider");return e}var u=n(62685),d=n(31445);const f=(0,n(36951).Ge)("disclosure"),p={SUMMARY:"disclosure-summary",DETAILS:"disclosure-details"};function h(e){let{children:t}=e;const n=r.useRef(null),{ariaControls:o,ariaLabelledby:i,keepMounted:a,expanded:s}=c();return r.createElement(u.Z,{nodeRef:n,in:s,addEndListener:e=>{var t;return null===(t=n.current)||void 0===t?void 0:t.addEventListener("animationend",e)},classNames:(0,d.Y)(f),mountOnEnter:!a,unmountOnExit:!a,appear:!0},r.createElement("div",{ref:n,id:o,role:"region","aria-labelledby":i,className:f("content",{visible:s}),"data-qa":p.DETAILS},t))}h.displayName="DisclosureDetails";var m=n(33569),g=n(12913);const v={m:14,l:16,xl:20};function y(){(0,g.O)('[Disclosure] Physical values (left, right) of "arrowPosition" property are deprecated. Use logical values (start, end) instead.')}function b(e){let{children:t}=e;const n=function(){const e=r.useContext(s);if(void 0===e)throw new Error("useToggleDisclosure must be used within DisclosureProvider");return e}(),{ariaControls:o,ariaLabelledby:i,expanded:a,disabled:l}=c(),u={onClick:n,ariaControls:o,id:i,expanded:a,disabled:l};return t(u,r.createElement(w,Object.assign({},u)))}function w(e){let{onClick:t,ariaControls:n,id:o,expanded:i,disabled:a}=e;const{size:s,summary:l,arrowPosition:u}=c();let d=u;return"left"===d&&(y(),d="start"),"right"===d&&(y(),d="end"),r.createElement("button",{type:"button","aria-expanded":i,className:f("trigger",{disabled:a,arrow:d}),"aria-controls":n,id:o,onClick:t,disabled:a,"data-qa":p.SUMMARY},r.createElement(m.F,{size:v[s],direction:i?"top":"bottom"}),l)}b.displayName="DisclosureSummary";const _=(0,o.s)(b),E=r.forwardRef((function(e,t){const{size:n="m",disabled:o=!1,defaultExpanded:i=!1,arrowPosition:a="start",summary:s="",className:c,keepMounted:u=!0,children:d,onUpdate:p=(()=>{}),expanded:m,qa:g}=e,[v,y]=function(e){const t=r.Children.toArray(e);let n,o;const i=[];for(const r of t){if(_(r)){if(n)throw new Error("Only one component is allowed");n=r}else i.push(r)}i.length>0&&(o=r.createElement(h,null,i));n||(n=r.createElement(b,null,(e=>r.createElement(w,Object.assign({},e)))));return[n,o]}(d);return r.createElement(l,{disabled:o,defaultExpanded:i,expanded:m,keepMounted:u,size:n,summary:s,arrowPosition:a,onUpdate:p},r.createElement("section",{ref:t,className:f({size:n},c),"data-qa":g},v,y))}));E.Summary=b,E.displayName="Disclosure";var x=n(17176);const S=(0,r.createContext)(null),C={didCatch:!1,error:null};class k extends r.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=C}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){const{error:e}=this.state;if(null!==e){for(var t,n,r=arguments.length,o=new Array(r),i=0;i0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e.length!==t.length||e.some(((e,n)=>!Object.is(e,t[n])))}(e.resetKeys,r)&&(null===(o=(i=this.props).onReset)||void 0===o||o.call(i,{next:r,prev:e.resetKeys,reason:"keys"}),this.setState(C))}render(){const{children:e,fallbackRender:t,FallbackComponent:n,fallback:o}=this.props,{didCatch:i,error:a}=this.state;let s=e;if(i){const e={error:a,resetErrorBoundary:this.resetErrorBoundary};if("function"===typeof t)s=t(e);else if(n)s=(0,r.createElement)(n,e);else{if(null!==o&&!(0,r.isValidElement)(o))throw a;s=o}}return(0,r.createElement)(S.Provider,{value:{didCatch:i,error:a,resetErrorBoundary:this.resetErrorBoundary}},s)}}var O=n(24362);var T=n(40726),N=n(56350),I=n(30817);const P=JSON.parse('{"error-title":"Something went wrong","error-description":"We have something broken, but don\'t worry, it won\'t last long","show-details":"Show details","report-problem":"Report a problem","button-reset":"Try again"}'),R=JSON.parse('{"error-title":"\u0427\u0442\u043e-\u0442\u043e \u043f\u043e\u0448\u043b\u043e \u043d\u0435 \u0442\u0430\u043a","error-description":"\u0423 \u043d\u0430\u0441 \u0447\u0442\u043e-\u0442\u043e \u0441\u043b\u043e\u043c\u0430\u043b\u043e\u0441\u044c, \u043d\u043e \u043d\u0435 \u043f\u0435\u0440\u0435\u0436\u0438\u0432\u0430\u0439\u0442\u0435, \u044d\u0442\u043e \u043d\u0435\u043d\u0430\u0434\u043e\u043b\u0433\u043e","show-details":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0434\u0435\u0442\u0430\u043b\u0438","report-problem":"\u0421\u043e\u043e\u0431\u0449\u0438\u0442\u044c \u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0435","button-reset":"\u041f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0441\u043d\u043e\u0432\u0430"}'),D=(0,I.wZ)("ydb-error-boundary",{ru:R,en:P});var A=n(75859);const j=(0,O.cn)("ydb-error-boundary");function M(e){let{children:t}=e;const n=(0,T.C)("ErrorBoundary");return(0,A.jsx)(n,{children:t})}function L(e){let{children:t,useRetry:n=!0,onReportProblem:r}=e;return(0,A.jsx)(k,{onError:(e,t)=>{var n;!function(e,t){var n;let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"error";"undefined"!==typeof window&&null!==(n=window.Ya)&&void 0!==n&&n.Rum?window.Ya.Rum.logError({additional:{url:window.location.href},type:r,message:t,level:window.Ya.Rum.ERROR_LEVEL.ERROR},e):console.error(e)}(e,null!==(n=t.componentStack)&&void 0!==n?n:void 0,"error-boundary")},fallbackRender:e=>{let{error:t,resetErrorBoundary:o}=e;return(0,A.jsx)(z,{error:t,useRetry:n,resetErrorBoundary:o,onReportProblem:r})},children:t})}function z(e){let{error:t,resetErrorBoundary:n,useRetry:r,onReportProblem:o}=e;return(0,A.jsxs)("div",{className:j(),children:[(0,A.jsx)(N.Q,{name:"error",className:j("illustration")}),(0,A.jsxs)("div",{className:j("content"),children:[(0,A.jsx)("h2",{className:j("error-title"),children:D("error-title")}),(0,A.jsx)("div",{className:j("error-description"),children:D("error-description")}),(0,A.jsx)(E,{summary:D("show-details"),className:j("show-details"),size:"m",children:(0,A.jsx)("pre",{className:j("error-details"),children:t.stack})}),(0,A.jsxs)("div",{className:j("actions"),children:[r&&(0,A.jsx)(x.z,{view:"outlined",onClick:n,children:D("button-reset")}),o&&(0,A.jsx)(x.z,{view:"outlined",onClick:()=>o(t),children:D("report-problem")})]})]})]})}},56350:(e,t,n)=>{"use strict";n.d(t,{Q:()=>c});var r=n(68963),o=n(64270),i=n(24362),a=n(75859);const s={light:{403:()=>n.e(3457).then(n.bind(n,73457)),thumbsUp:()=>n.e(6876).then(n.bind(n,36876)),error:()=>n.e(2435).then(n.bind(n,32435))},dark:{403:()=>n.e(7409).then(n.bind(n,77409)),thumbsUp:()=>n.e(8622).then(n.bind(n,28622)),error:()=>n.e(598).then(n.bind(n,40598))}},l=(0,i.cn)("kv-illustration"),c=e=>{let{name:t,className:n,...i}=e;const c=(0,o.C)(),[u,d]=r.useState(""),f=s[c]&&s[c][t];return r.useEffect((()=>{"function"===typeof f&&f().then((e=>d(e.default))).catch((e=>{console.error(e),d("")}))}),[f]),u?(0,a.jsx)("img",{alt:t,src:u,className:l(null,n),...i}):null}},23373:(e,t,n)=>{"use strict";n.d(t,{_:()=>l,Z:()=>c});var r=n(68963),o=n(24362),i=n(31954),a=n(75859);const s=(0,o.cn)("info-viewer"),l=e=>{let{title:t,info:n,dots:o=!0,size:l,className:c,multilineLabels:u,renderEmptyState:d}=e;return n&&n.length||!d?(0,a.jsxs)("div",{className:s({size:l},c),children:[t&&(0,a.jsx)("div",{className:s("title"),children:t}),n&&n.length>0?(0,a.jsx)("div",{className:s("items"),children:n.map(((e,t)=>(0,a.jsxs)("div",{className:s("row"),children:[(0,a.jsxs)("div",{className:s("label"),children:[(0,a.jsx)("div",{className:s("label-text",{multiline:u}),children:e.label}),o&&(0,a.jsx)("div",{className:s("dots")})]}),(0,a.jsx)("div",{className:s("value"),children:e.value})]},t)))}):(0,i.Z)("no-data")]}):(0,a.jsx)(r.Fragment,{children:d({title:t,size:l})})},c=l},31954:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(30817);const o=JSON.parse('{"common.created":"Created","common.type":"Type","no-data":"No data"}'),i=(0,r.wZ)("ydb-components-info-viewer",{en:o})},62206:(e,t,n)=>{"use strict";n.d(t,{Z6:()=>o.Z,_P:()=>r.Z,aE:()=>o.a});var r=n(23373),o=n(93849)},93849:(e,t,n)=>{"use strict";function r(e,t){var n;return null!==(n=t[e])&&void 0!==n?n:e}function o(e,t,n,r){const o=n[e]||r;return o?o(t):t}function i(e){let{values:t,labels:n,defaultValueFormatter:i}=e;return(e,a)=>({label:r(e,n||{}),value:o(e,a,t||{},i)})}n.d(t,{Z:()=>a,a:()=>i});const a=(e,t)=>t?Object.entries(t).map((t=>{let[n,r]=t;return e(n,r)})).filter((e=>{let{value:t}=e;return Boolean(t)})):[]},68036:(e,t,n)=>{"use strict";n.d(t,{h:()=>s});var r=n(83203),o=n(24362),i=n(75859);const a=(0,o.cn)("g-link"),s=e=>{let{className:t,to:n,onClick:o,...s}=e;return n?(0,i.jsx)(r.rU,{to:n,onClick:o,className:a({view:"normal"},t),...s}):(0,i.jsx)("span",{className:t,onClick:o,children:s.children})}},74170:(e,t,n)=>{"use strict";n.d(t,{h:()=>r.h});var r=n(68036)},32270:(e,t,n)=>{"use strict";n.d(t,{j:()=>u});var r=n(68963),o=n(39683),i=n(86017),a=n(24362),s=n(74170),l=n(75859);const c=(0,a.cn)("ydb-link-with-icon"),u=e=>{let{title:t,url:n,external:a=!0}=e;const u=(0,l.jsxs)(r.Fragment,{children:[t,"\xa0",(0,l.jsx)(o.Z,{})]});return a?(0,l.jsx)(i.r,{href:n,target:"_blank",className:c(),children:u}):(0,l.jsx)(s.h,{to:n,className:c(),children:u})}},42784:(e,t,n)=>{"use strict";n.d(t,{v:()=>a});var r=n(24362),o=n(75859);const i=(0,r.cn)("tablet-icon"),a=e=>{let{text:t,className:n}=e;return(0,o.jsx)("div",{className:i(null,n),children:(0,o.jsx)("div",{className:i("type"),children:t||"T"})})}},27506:(e,t,n)=>{"use strict";n.d(t,{bP:()=>s,A8:()=>f,Fb:()=>u});var r=n(24362),o=n(62206),i=n(75859);const a=(0,r.cn)("ydb-node-endpoints-tooltip-content"),s=e=>{let{data:t}=e;const n=[];return null!==t&&void 0!==t&&t.Rack&&n.push({label:"Rack",value:t.Rack}),null!==t&&void 0!==t&&t.Endpoints&&t.Endpoints.length&&t.Endpoints.forEach((e=>{let{Name:t,Address:r}=e;t&&r&&n.push({label:t,value:r})})),(0,i.jsx)(o._P,{className:a(null),info:n,dots:!1,size:"s"})};var l=n(4119);const c=(0,o.aE)({values:{ChangeTime:e=>(0,l.fG)(e)},labels:{TabletId:"Tablet"},defaultValueFormatter:e=>e&&String(e)}),u=e=>{let{data:t={},className:n}=e;const{TabletId:r,NodeId:a,State:s,Type:l,ChangeTime:u,Generation:d}=t,f=(0,o.Z6)(c,{TabletId:r,NodeId:a,State:s,Type:l,ChangeTime:u,Generation:d});return(0,i.jsx)(o._P,{className:n,info:f,dots:!1,size:"s"})},d=(0,o.aE)({values:{Usage:e=>e&&"".concat((100*Number(e)).toFixed(2)," %")},labels:{Name:"Pool"},defaultValueFormatter:e=>e&&String(e)}),f=e=>{let{data:t={},className:n}=e;const r=(0,o.Z6)(d,t);return(0,i.jsx)(o._P,{className:n,info:r,dots:!1,size:"s"})}},81003:(e,t,n)=>{"use strict";n.d(t,{B7:()=>s,V2:()=>a,_Y:()=>i,xu:()=>o});var r=n(54665);const o={overview:"overview",tenants:"tenants",nodes:"nodes",storage:"storage",versions:"versions"},i=[{id:o.overview,title:"Overview"},{id:o.tenants,title:"Databases"},{id:o.nodes,title:"Nodes"},{id:o.storage,title:"Storage"},{id:o.versions,title:"Versions"}];function a(e){return Object.values(o).includes(e)}const s=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(0,r.ax)(r.ZP.cluster,e?{activeTab:e}:void 0,t)}},92398:(e,t,n)=>{"use strict";n.d(t,{IA:()=>i,P_:()=>o,ZJ:()=>l,a3:()=>c,mD:()=>a,pV:()=>s});var r=n(54665);const o="storage",i="tablets",a="overview",s="structure",l=[{id:a,name:"Overview"},{id:o,name:"Storage"},{id:s,name:"Structure"},{id:i,name:"Tablets"}];function c(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(0,r.ax)(r.ZP.node,{id:e,activeTab:a},t)}},95478:(e,t,n)=>{"use strict";n.d(t,{Cc:()=>a,Sj:()=>l,XV:()=>i,c7:()=>s});var r=n(54665),o=n(24015);const i={summaryTab:"summaryTab",queryTab:"queryTab",diagnosticsTab:"diagnosticsTab",metricsTab:"metricsTab"},a=[{id:o.uw.overview,title:"Overview"},{id:o.uw.acl,title:"ACL"}],s=[{id:o.uw.schema,title:"Schema"}],l=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,r.ax)(r.ZP.tenant,void 0,e)}},6523:(e,t,n)=>{"use strict";n.d(t,{$J:()=>T,Jp:()=>v,Sb:()=>C,St:()=>E,TV:()=>d,d:()=>c,dC:()=>m,dw:()=>b,fd:()=>O,lZ:()=>a,uL:()=>k,vp:()=>p,zf:()=>w});var r=n(35638);const o={[r.mR.EPathSubTypeSyncIndexImplTable]:"index_table",[r.mR.EPathSubTypeAsyncIndexImplTable]:"index_table",[r.mR.EPathSubTypeStreamImpl]:void 0,[r.mR.EPathSubTypeEmpty]:void 0},i={[r.gb.EPathTypeInvalid]:void 0,[r.gb.EPathTypeSubDomain]:"database",[r.gb.EPathTypeExtSubDomain]:"database",[r.gb.EPathTypeDir]:"directory",[r.gb.EPathTypeColumnStore]:"directory",[r.gb.EPathTypeTable]:"table",[r.gb.EPathTypeTableIndex]:"index",[r.gb.EPathTypeColumnTable]:"column_table",[r.gb.EPathTypeCdcStream]:"stream",[r.gb.EPathTypePersQueueGroup]:"topic",[r.gb.EPathTypeExternalDataSource]:"external_data_source",[r.gb.EPathTypeExternalTable]:"external_table",[r.gb.EPathTypeView]:"view",[r.gb.EPathTypeReplication]:"async_replication"},a=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r.gb.EPathTypeDir,t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"directory";return t&&o[t]||i[e]||n},s={[r.mR.EPathSubTypeSyncIndexImplTable]:"Secondary Index Table",[r.mR.EPathSubTypeAsyncIndexImplTable]:"Secondary Index Table",[r.mR.EPathSubTypeStreamImpl]:void 0,[r.mR.EPathSubTypeEmpty]:void 0},l={[r.gb.EPathTypeInvalid]:void 0,[r.gb.EPathTypeSubDomain]:"Database",[r.gb.EPathTypeExtSubDomain]:"Database",[r.gb.EPathTypeDir]:"Directory",[r.gb.EPathTypeTable]:"Table",[r.gb.EPathTypeTableIndex]:"Secondary Index",[r.gb.EPathTypeColumnStore]:"Tablestore",[r.gb.EPathTypeColumnTable]:"Columntable",[r.gb.EPathTypeCdcStream]:"Changefeed",[r.gb.EPathTypePersQueueGroup]:"Topic",[r.gb.EPathTypeExternalDataSource]:"External Data Source",[r.gb.EPathTypeExternalTable]:"External Table",[r.gb.EPathTypeView]:"View",[r.gb.EPathTypeReplication]:"Async Replication"},c=(e,t)=>t&&s[t]||e&&l[e],u={UnknownTenantType:"Database",Domain:"Cluster Root",Dedicated:"Dedicated Database",Shared:"Shared Database",Serverless:"Serverless Database"},d=e=>e&&u[e],f={[r.gb.EPathTypeTable]:!0,[r.gb.EPathTypeColumnTable]:!0,[r.gb.EPathTypeExternalTable]:!0,[r.gb.EPathTypeView]:!0,[r.gb.EPathTypeInvalid]:!1,[r.gb.EPathTypeDir]:!1,[r.gb.EPathTypeSubDomain]:!1,[r.gb.EPathTypeTableIndex]:!1,[r.gb.EPathTypeExtSubDomain]:!1,[r.gb.EPathTypeColumnStore]:!1,[r.gb.EPathTypeCdcStream]:!1,[r.gb.EPathTypePersQueueGroup]:!1,[r.gb.EPathTypeExternalDataSource]:!1,[r.gb.EPathTypeReplication]:!1},p=e=>{var t;return null!==(t=e&&f[e])&&void 0!==t&&t},h={[r.mR.EPathSubTypeSyncIndexImplTable]:!0,[r.mR.EPathSubTypeAsyncIndexImplTable]:!0,[r.mR.EPathSubTypeStreamImpl]:!1,[r.mR.EPathSubTypeEmpty]:!1},m=e=>{var t;return null!==(t=e&&h[e])&&void 0!==t&&t},g={[r.gb.EPathTypeColumnStore]:!0,[r.gb.EPathTypeColumnTable]:!0,[r.gb.EPathTypeInvalid]:!1,[r.gb.EPathTypeDir]:!1,[r.gb.EPathTypeTable]:!1,[r.gb.EPathTypeSubDomain]:!1,[r.gb.EPathTypeTableIndex]:!1,[r.gb.EPathTypeExtSubDomain]:!1,[r.gb.EPathTypeCdcStream]:!1,[r.gb.EPathTypePersQueueGroup]:!1,[r.gb.EPathTypeExternalDataSource]:!1,[r.gb.EPathTypeExternalTable]:!1,[r.gb.EPathTypeView]:!1,[r.gb.EPathTypeReplication]:!1},v=e=>{var t;return null!==(t=e&&g[e])&&void 0!==t&&t},y={[r.gb.EPathTypeSubDomain]:!0,[r.gb.EPathTypeExtSubDomain]:!0,[r.gb.EPathTypeInvalid]:!1,[r.gb.EPathTypeDir]:!1,[r.gb.EPathTypeColumnStore]:!1,[r.gb.EPathTypeColumnTable]:!1,[r.gb.EPathTypeTable]:!1,[r.gb.EPathTypeTableIndex]:!1,[r.gb.EPathTypeCdcStream]:!1,[r.gb.EPathTypePersQueueGroup]:!1,[r.gb.EPathTypeExternalDataSource]:!1,[r.gb.EPathTypeExternalTable]:!1,[r.gb.EPathTypeView]:!1,[r.gb.EPathTypeReplication]:!1},b=e=>{var t;return null!==(t=e&&y[e])&&void 0!==t&&t},w=e=>e===r.gb.EPathTypeCdcStream,_={[r.gb.EPathTypeCdcStream]:!0,[r.gb.EPathTypePersQueueGroup]:!1,[r.gb.EPathTypeInvalid]:!1,[r.gb.EPathTypeColumnStore]:!1,[r.gb.EPathTypeColumnTable]:!1,[r.gb.EPathTypeDir]:!1,[r.gb.EPathTypeTable]:!1,[r.gb.EPathTypeSubDomain]:!1,[r.gb.EPathTypeTableIndex]:!1,[r.gb.EPathTypeExtSubDomain]:!1,[r.gb.EPathTypeExternalDataSource]:!1,[r.gb.EPathTypeExternalTable]:!1,[r.gb.EPathTypeView]:!1,[r.gb.EPathTypeReplication]:!1},E=e=>{var t;return null!==(t=e&&_[e])&&void 0!==t&&t},x={[r.mR.EPathSubTypeSyncIndexImplTable]:!0,[r.mR.EPathSubTypeAsyncIndexImplTable]:!0,[r.mR.EPathSubTypeStreamImpl]:!1,[r.mR.EPathSubTypeEmpty]:!1},S={[r.gb.EPathTypeCdcStream]:!0,[r.gb.EPathTypePersQueueGroup]:!0,[r.gb.EPathTypeExternalDataSource]:!0,[r.gb.EPathTypeExternalTable]:!0,[r.gb.EPathTypeView]:!0,[r.gb.EPathTypeReplication]:!0,[r.gb.EPathTypeInvalid]:!1,[r.gb.EPathTypeColumnStore]:!1,[r.gb.EPathTypeColumnTable]:!1,[r.gb.EPathTypeDir]:!1,[r.gb.EPathTypeTable]:!1,[r.gb.EPathTypeSubDomain]:!1,[r.gb.EPathTypeTableIndex]:!1,[r.gb.EPathTypeExtSubDomain]:!1},C=(e,t)=>{var n;return null!==(n=t&&x[t]||e&&S[e])&&void 0!==n&&n},k=(r.gb.EPathTypeCdcStream,r.gb.EPathTypePersQueueGroup,r.gb.EPathTypeInvalid,r.gb.EPathTypeColumnStore,r.gb.EPathTypeColumnTable,r.gb.EPathTypeDir,r.gb.EPathTypeTable,r.gb.EPathTypeSubDomain,r.gb.EPathTypeTableIndex,r.gb.EPathTypeExtSubDomain,r.gb.EPathTypeExternalDataSource,r.gb.EPathTypeExternalTable,r.gb.EPathTypeView,r.gb.EPathTypeReplication,e=>e===r.gb.EPathTypeExternalTable),O=e=>e===r.gb.EPathTypeTable,T=e=>e===r.gb.EPathTypeView},20566:(e,t,n)=>{"use strict";n.r(t),n.d(t,{ASIDE_HEADER_COMPACT_KEY:()=>He.Ac,AUTOCOMPLETE_ON_ENTER:()=>He.XX,AUTO_REFRESH_INTERVAL:()=>He.KU,AUTO_RELOAD_INTERVAL:()=>He.t_,AppSlots:()=>r,BINARY_DATA_IN_PLAIN_TEXT_DISPLAY:()=>He.N1,CLUSTER_DEFAULT_TITLE:()=>He.DO,COLORS_PRIORITY:()=>He.sl,DATA_QA_TUNE_COLUMNS_POPUP:()=>He.KS,DAY_IN_SECONDS:()=>He.ii,DEFAULT_CLUSTER_TAB_KEY:()=>He.S7,DEFAULT_IS_QUERY_RESULT_COLLAPSED:()=>He.eG,DEFAULT_IS_TENANT_COMMON_INFO_COLLAPSED:()=>He.Mn,DEFAULT_IS_TENANT_SUMMARY_COLLAPSED:()=>He.sO,DEFAULT_POLLING_INTERVAL:()=>He.ME,DEFAULT_SIZE_RESULT_PANE_KEY:()=>He.XN,DEFAULT_SIZE_TENANT_KEY:()=>He.z4,DEFAULT_SIZE_TENANT_SUMMARY_KEY:()=>He.wr,DEFAULT_TABLE_SETTINGS:()=>He.LE,DEVELOPER_UI_TITLE:()=>He.Ah,EMPTY_DATA_PLACEHOLDER:()=>He.jX,ENABLE_AUTOCOMPLETE:()=>He.y6,ErrorBoundary:()=>s.TI,ErrorBoundaryFallback:()=>s.l2,GIGABYTE:()=>He.GS,HOUR_IN_SECONDS:()=>He.RQ,INVERTED_DISKS_KEY:()=>He.yT,IS_HOTKEYS_HELP_HIDDEN_KEY:()=>He.RI,KILOBYTE:()=>He.h0,LANGUAGE_KEY:()=>He.Px,LAST_USED_QUERY_ACTION_KEY:()=>He.w7,LOAD_AVERAGE_TIME_INTERVALS:()=>He.x5,Lang:()=>ve.Uo,MEGABYTE:()=>He.nQ,MINUTE_IN_SECONDS:()=>He.sU,MS_IN_NANOSECONDS:()=>He.yD,MultiClusterApp:()=>$i,PARTITIONS_HIDDEN_COLUMNS_KEY:()=>He.ZY,QUERIES_HISTORY_KEY:()=>He.if,QUERY_INITIAL_MODE_KEY:()=>He.Wm,QUERY_USE_MULTI_SCHEMA_KEY:()=>He.Rq,SAVED_QUERIES_KEY:()=>He.DG,SingleClusterApp:()=>Ei,TABLET_COLORS:()=>He.HN,TABLET_SYMBOLS:()=>He.tV,TENANT_DEFAULT_TITLE:()=>He.FU,TENANT_INITIAL_PAGE_KEY:()=>He.pf,TENANT_OVERVIEW_TABLES_LIMIT:()=>He.fl,TENANT_OVERVIEW_TABLES_SETTINGS:()=>He.E6,TERABYTE:()=>He.Bp,THEME_KEY:()=>He.bw,USE_CLUSTER_BALANCER_AS_BACKEND_KEY:()=>He.IG,USE_DIRECTORY_OPERATIONS:()=>He.Tf,USE_NODES_ENDPOINT_IN_DIAGNOSTICS_KEY:()=>He.UF,USE_PAGINATED_TABLES_KEY:()=>He.Qy,USE_SEPARATE_DISKS_PAGES_KEY:()=>He.fo,YdbEmbeddedAPI:()=>Ki.su,YdbWebVersionAPI:()=>Ki.Iy,appRoutes:()=>he.ZP,cn:()=>ge.cn,componentsRegistry:()=>bi,configureStore:()=>Jt.xC,createApi:()=>Ki.LC,getMonitoringClusterLink:()=>Si,getMonitoringLink:()=>xi,getSettingValue:()=>Qi.Cx,getTabletLabel:()=>He.qV,getUserSettings:()=>mt,i18n:()=>ve.ag,registerKeysets:()=>ve.wZ,reportWebVitals:()=>Xi.Z,rootReducer:()=>Jt.QW,setSettingValue:()=>Qi.xI,settingsManager:()=>Yi.r,toaster:()=>Ji.m,useSetting:()=>se.yu,useTypedSelector:()=>se.ix});var r={};n.r(r),n.d(r,{ClusterSlot:()=>Sn,ClustersSlot:()=>xn,NodeSlot:()=>kn,PDiskPageSlot:()=>On,RedirectSlot:()=>Rn,RoutesSlot:()=>Pn,TabletSlot:()=>Nn,TabletsFiltersSlot:()=>In,TenantSlot:()=>Cn,VDiskPageSlot:()=>Tn});var o=n(68963),i=n(49352),a=n(87555),s=n(27710),l=n(40726);function c(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o{let{children:t,closeIconSize:n=23,hasSeparator:r,closeTitle:i=S("button_close"),onClose:a}=e;return o.createElement("div",{className:C({separator:r})},o.createElement(w.x,{className:C("text"),as:"h3",variant:"subheader-3"},t),a&&o.createElement(_.z,{onClick:a,view:"flat",size:"l",extraProps:{"aria-label":i}},o.createElement(u.J,{data:b.Z,size:n})))};function O(e){const t=o.useRef();return o.useEffect((()=>(t.current=e,()=>{t.current=void 0})),[e]),o.useCallback((function(){if("function"===typeof t.current)return t.current(...arguments)}),[])}function T(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function N(e){const t=T(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"").replace(/\s+/g,".*?");return I(e,"",new RegExp(t,"i"))}function I(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0;const r=[],i={};let a=!1,s=!1;return o.Children.forEach(e,(e=>{var l,c;if(o.isValidElement(e))if(e.type===o.Fragment){const{menu:o,pages:a}=I(e.props.children,t,n);r.push(...o),Object.assign(i,a)}else if(e.props.groupTitle){0;const o="".concat(t,"/").concat(null!==(l=e.props.id)&&void 0!==l?l:e.props.groupTitle);a=!0;const{menu:s,pages:c}=I(e.props.children,o,n);0,r.push({groupTitle:e.props.groupTitle,items:s}),Object.assign(i,c)}else{s=!0;const o="".concat(t,"/").concat(null!==(c=e.props.id)&&void 0!==c?c:e.props.title);0,i[o]=P(e.props.children,n),i[o].id=o,r.push({id:o,title:e.props.title,icon:e.props.icon,withBadge:i[o].withBadge,disabled:i[o].hidden})}})),{menu:r,pages:i}}function P(e,t){const n={id:"",sections:[],hidden:!0};return o.Children.forEach(e,(e=>{if(o.isValidElement(e))if(e.type===o.Fragment){const{sections:r,withBadge:o,hidden:i}=P(e.props.children,t);n.sections.push(...r),n.withBadge=o||n.withBadge,n.hidden=i&&n.hidden}else{const{withBadge:r,showTitle:o=!0}=e.props,{items:i,hidden:a}=R(e.props.children,t);n.withBadge=r||n.withBadge,n.hidden=a&&n.hidden,n.sections.push(Object.assign(Object.assign({},e.props),{withBadge:r,items:i,hidden:a,showTitle:o}))}})),n}function R(e,t){let n=!0;const r=[];return o.Children.forEach(e,(e=>{if(o.isValidElement(e))if(e.type===o.Fragment){const o=R(e.props.children,t);r.push(...o.items),n=n&&o.hidden}else{const o=Object.assign(Object.assign({},e.props),{element:e,hidden:!t.test(e.props.title)});r.push(o),n=n&&o.hidden}})),{items:r,hidden:n}}k.displayName="Title";const D=o.createContext({});function A(e,t){const n=o.useRef(null);return o.useMemo((()=>t?Object.assign({selectedRef:n},function(e,t){if(!t.settingId&&!t.section&&!t.page)return{};for(const n of Object.values(e)){if(!t.settingId&&!t.section){if(t.page!==n.id)continue;return{page:n}}for(const e of n.sections)if(t.settingId){for(const r of e.items)if(r.id===t.settingId)return{page:n,section:e,setting:r}}else if(t.section&&("id"in t.section?t.section.id===e.id:t.section.title===e.title))return{page:n,section:e}}return{}}(e,t)):{selectedRef:n}),[e,t])}D.displayName="SettingsSelectionContext";const j=D.Provider;var M=function(e){return e};g('.gn-settings-menu__group-heading{display:inline-block;font-weight:var(--g-text-accent-font-weight);line-height:18px;margin-bottom:12px;padding:0 20px}.gn-settings-menu__group+.gn-settings-menu__group{margin-top:24px}.gn-settings-menu__item{align-items:center;color:var(--g-color-text-primary);cursor:pointer;display:flex;height:40px;padding:0 20px}.gn-settings-menu__item-icon{color:var(--g-color-text-misc);margin-right:5px}.gn-settings-menu__item:hover,.gn-settings-menu__item_focused{background:var(--g-color-base-simple-hover)}.gn-settings-menu__item_selected{background:var(--g-color-base-selection)}.gn-settings-menu__item_selected.gn-settings-menu__item_focused,.gn-settings-menu__item_selected:hover{background:var(--g-color-base-selection-hover)}.gn-settings-menu__item_disabled{color:var(--g-color-text-secondary);cursor:auto}.gn-settings-menu__item_disabled:hover{background:none}.gn-settings-menu__item_disabled .gn-settings-menu__item-icon{color:var(--g-color-base-misc-heavy)}.gn-settings-menu__item_badge{position:relative}.gn-settings-menu__item_badge:after{background-color:var(--g-color-text-danger);border-radius:50%;content:"";display:block;height:6px;position:absolute;right:9px;top:calc(50% - 3px);width:6px}');const L=(0,m.b)("settings-menu"),z=o.forwardRef((function(e,t){let{items:n,onChange:r,activeItemId:i}=e;const[a,s]=o.useState(),l=o.useRef(null),c=O(r),u=function(e){const t=o.useRef(e);return t.current=e,o.useCallback((()=>t.current),[])}(a);return o.useImperativeHandle(t,(()=>({handleKeyDown(e){if(!l.current)return!1;const t=u();return t&&"Enter"===e.key?(c(t),!0):"ArrowDown"===e.key?(s(B(l.current,t,1)),!0):"ArrowUp"===e.key&&(s(B(l.current,t,-1)),!0)},clearFocus(){s(void 0)}})),[u,c]),o.createElement("div",{ref:l,className:L()},n.map((e=>"groupTitle"in e?o.createElement("div",{key:e.groupTitle,className:L("group")},o.createElement("span",{className:L("group-heading")},e.groupTitle),e.items.map((e=>F(e,r,i,a)))):F(e,r,i,a))))}));function F(e,t,n,r){return o.createElement("span",{key:e.title,className:L("item",{selected:n===e.id,disabled:e.disabled,focused:r===e.id,badge:e.withBadge}),onClick:()=>{e.disabled||t(e.id)},"data-id":e.id},e.icon?o.createElement(u.J,Object.assign({size:16},e.icon,{className:L("item-icon")})):void 0,o.createElement("span",null,e.title))}function B(e,t,n){var r;const o=e.querySelectorAll(".".concat(L("item"),":not(.").concat(L("item"),"_disabled)"));if(0===o.length)return;let i=n>0?-1:0;return t&&(i=Array.prototype.findIndex.call(o,(e=>e.getAttribute("data-id")===t))),i=(o.length+i+n)%o.length,null!==(r=o[i].getAttribute("data-id"))&&void 0!==r?r:void 0}g('.gn-settings-menu-mobile.g-tabs_direction_horizontal{-ms-overflow-style:none;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:none;scrollbar-width:none}.gn-settings-menu-mobile.g-tabs_direction_horizontal::-webkit-scrollbar{display:none}.gn-settings-menu-mobile__item_badge{position:relative}.gn-settings-menu-mobile__item_badge:after{background-color:var(--g-color-text-danger);border-radius:50%;content:"";display:block;height:6px;position:absolute;right:-8px;top:11px;width:6px}');const U=(0,m.b)("settings-menu-mobile"),q=e=>{let{items:t,onChange:n,activeItemId:r,className:i}=e;const a=o.useRef(null),s=o.useMemo((()=>{const e=[];return t.forEach((t=>{if("groupTitle"in t)e.push(...t.items.map((e=>{let{id:t,title:n,disabled:r,withBadge:o}=e;return{id:t,title:n,disabled:r,className:U("item",{badge:o})}})));else{const{id:n,title:r,disabled:o,withBadge:i}=t;e.push({id:n,title:r,disabled:o,className:U("item",{badge:i})})}})),e}),[t]);return o.createElement("div",{ref:a,onTouchMove:e=>{e.stopPropagation()}},o.createElement(d.m,{items:s,className:U(null,i),size:"l",activeTab:r,onSelectTab:n}))};var Z={label_title:"Settings","label_filter-placeholder":"Search settings","label_empty-placeholder":"No results found",label_search:"Search"},H={label_title:"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438","label_filter-placeholder":"\u041d\u0430\u0439\u0442\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438","label_empty-placeholder":"\u041d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u043e",label_search:"\u041f\u043e\u0438\u0441\u043a"};var W=(0,y.e)({en:Z,ru:H},"".concat(m.N).concat("Settings"));const V=(0,m.b)("settings-search");function G(e){let{className:t,initialValue:n,onChange:r,debounce:i=200,inputRef:a,inputSize:s,placeholder:l,autoFocus:c=!0}=e;const[u,d]=o.useState(null!==n&&void 0!==n?n:""),p=O((0,v.d)(r,i)),h=O((e=>{d(e),p(e)}));return o.createElement("div",{className:V(null,t)},o.createElement(f.o,{value:u,controlRef:a,hasClear:!0,autoFocus:c,size:s,placeholder:l,onUpdate:h,controlProps:{"aria-label":W("label_search")}}))}g('.gn-settings{display:grid;grid-template-columns:216px 1fr;height:100%;width:834px}.gn-settings_view_mobile{display:block;height:calc(80vh - 56px);overflow-x:hidden;width:auto}@supports (height:90dvh){.gn-settings_view_mobile{height:calc(90dvh - 56px)}}.gn-settings_view_mobile.gn-settings_loading{text-align:center}.gn-settings_view_mobile .gn-settings__loader{margin-top:20px}.gn-settings_view_mobile .gn-settings__search{margin:4px 0 16px;padding:0 20px}.gn-settings_view_mobile .gn-settings__page{overflow-y:visible}.gn-settings_view_mobile .gn-settings__tabs .g-tabs__item:first-child{margin-left:20px}.gn-settings_view_mobile .gn-settings__tabs .g-tabs__item:last-child{margin-right:20px}.gn-settings_view_mobile .gn-settings__section-heading{font-size:var(--g-text-subheader-3-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-3-line-height)}.gn-settings_view_mobile .gn-settings__section-subheader{color:var(--g-color-text-secondary)}.gn-settings_view_mobile .gn-settings__section-heading+.gn-settings-subheader{margin-top:8px}.gn-settings_view_mobile .gn-settings__section-item{margin-top:0}.gn-settings_view_mobile .gn-settings__section-heading+.gn-settings__section-item,.gn-settings_view_mobile .gn-settings__section-subheader+.gn-settings__section-item{margin-top:30px}.gn-settings_view_mobile .gn-settings__section-item+.gn-settings__section-item{margin-top:22px}.gn-settings_view_mobile .gn-settings__item:not(.gn-settings_view_mobile .gn-settings__item_mode_row){gap:8px;grid-template-columns:1fr}.gn-settings_view_mobile .gn-settings__item-heading{font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height)}.gn-settings_view_mobile .gn-settings__item-description{font-size:var(--g-text-body-1-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-1-line-height)}.gn-settings_view_mobile .gn-settings__item_mode_row{grid-template-columns:1fr auto}.gn-settings_view_mobile .gn-settings__item_mode_row .gn-settings__item-heading{padding-right:20px}.gn-settings_view_mobile .gn-settings__item-content{width:100%}.gn-settings_view_mobile .gn-settings__not-found{color:var(--g-color-text-hint);font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);justify-items:start;line-height:var(--g-text-body-2-line-height);margin:20px 0 0 20px}.gn-settings_loading{grid-template-columns:auto}.gn-settings__loader{place-self:center}.gn-settings__not-found{display:grid;height:100%;place-items:center}.gn-settings__menu{border-right:1px solid var(--g-color-line-generic)}.gn-settings__heading{font-size:var(--g-text-subheader-2-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-2-line-height);margin:20px 20px 0}.gn-settings__search{margin:0 20px 16px}.gn-settings__page{overflow-y:auto}.gn-settings__content{padding:20px}.gn-settings__section-right-adornment_hidden{opacity:0;transition:opacity .2s}.gn-settings__section-heading:hover .gn-settings__section-right-adornment_hidden{opacity:1}.gn-settings__section-heading{font-size:var(--g-text-subheader-2-font-size);font-weight:var(--g-text-subheader-font-weight);line-height:var(--g-text-subheader-2-line-height);margin:0}.gn-settings__section-item{margin-top:24px}.gn-settings__section+.gn-settings__section{margin-top:32px}.gn-settings__item{display:grid;grid-template-columns:216px 1fr;justify-items:start}.gn-settings__item_align_top{align-items:start}.gn-settings__item_align_center{align-items:center}.gn-settings__item-title_badge{position:relative}.gn-settings__item-title_badge:after{background-color:var(--g-color-text-danger);border-radius:50%;content:"";display:block;height:6px;position:absolute;right:-8px;top:1px;width:6px}.gn-settings__item-description{color:var(--g-color-text-secondary);display:block;font-size:var(--g-text-caption-2-font-size);font-weight:var(--g-text-caption-font-weight);line-height:var(--g-text-caption-2-line-height);margin-top:2px;padding-right:20px}.gn-settings__item-right-adornment_hidden{opacity:0;transition:opacity .2s}.gn-settings__item:hover .gn-settings__item-right-adornment_hidden{opacity:1}.gn-settings__item_selected,.gn-settings__section_selected{background:var(--g-color-base-selection);border-radius:8px;margin-left:-8px;padding:8px}.gn-settings__found{background:var(--g-color-base-selection);font-weight:var(--g-text-accent-font-weight)}');const $=(0,m.b)("settings"),K=o.createContext({}),Y=()=>o.useContext(K);function Q(e){var{loading:t,renderLoading:n,children:r,view:i="normal",renderRightAdornment:a,renderSectionRightAdornment:s,showRightAdornmentOnHover:l=!0}=e,u=c(e,["loading","renderLoading","children","view","renderRightAdornment","renderSectionRightAdornment","showRightAdornmentOnHover"]);return t?o.createElement("div",{className:$({loading:!0,view:i})},"function"===typeof n?n():o.createElement(p.a,{className:$("loader"),size:"m"})):o.createElement(K.Provider,{value:{renderRightAdornment:a,renderSectionRightAdornment:s,showRightAdornmentOnHover:l}},o.createElement(X,Object.assign({view:i},u),r))}const J=(e,t)=>{for(const n of e)if("groupTitle"in n){for(const e of n.items)if(e.id===t)return e.title}else if(n.id===t)return n.title;return""};function X(e){let{initialPage:t,initialSearch:n,selection:r,children:i,renderNotFound:a,title:s=W("label_title"),filterPlaceholder:l=W("label_filter-placeholder"),emptyPlaceholder:c=W("label_empty-placeholder"),view:u,onPageChange:d,onClose:f}=e;var p,m;const{renderSectionRightAdornment:g,showRightAdornmentOnHover:v}=Y(),[y,b]=o.useState(null!==n&&void 0!==n?n:""),{menu:w,pages:_}=N(i,y),E=A(_,r),x=Object.keys(_),S=E.page&&x.includes(E.page.id)?E.page.id:void 0,[C,O]=o.useState(S||(t&&x.includes(t)?t:void 0)),T=o.useRef(null),I=o.useRef(null),P="mobile"===u;o.useEffect((()=>{var e;null===(e=I.current)||void 0===e||e.clearFocus()}),[y]),o.useEffect((()=>{const e=()=>{var e;null===(e=I.current)||void 0===e||e.clearFocus()};return window.addEventListener("click",e),()=>{window.removeEventListener("click",e)}}),[]);let R=C;R&&!(null===(p=_[R])||void 0===p?void 0:p.hidden)||(R=null===(m=Object.values(_).find((e=>{let{hidden:t}=e;return!t})))||void 0===m?void 0:m.id);const D=e=>{O((t=>(t!==e&&(null===d||void 0===d||d(e)),e)))};o.useEffect((()=>{R!==C&&D(R)})),o.useEffect((()=>{S&&O(S)}),[S]),o.useEffect((()=>{var e;(null===(e=E.selectedRef)||void 0===e?void 0:e.current)&&E.selectedRef.current.scrollIntoView()}),[E.selectedRef]);const M=(e,t)=>{const n=function(e,t,n){var r;return!(!e.section||e.setting)&&(!(!e.section.id||e.section.id!==n.id)||!((null===(r=e.page)||void 0===r?void 0:r.id)!==t||!e.section.title||e.section.title!==n.title))}(E,e,t);return o.createElement("div",{key:t.title,className:$("section",{selected:n}),ref:n?E.selectedRef:void 0},t.showTitle&&o.createElement("h3",{className:$("section-heading")},g?o.createElement(h.k,{gap:2,alignItems:"center"},t.title,o.createElement("div",{className:$("section-right-adornment",{hidden:v})},g(t))):t.title),t.header&&(P?o.createElement("div",{className:$("section-subheader")},t.header):t.header),t.items.map((e=>e.hidden?null:(e=>{let{title:t,element:n}=e;return o.createElement("div",{key:t,className:$("section-item")},o.cloneElement(n,Object.assign(Object.assign({},n.props),{highlightedTitle:y&&t?ee(t,y):t})))})(e))))};return o.createElement(j,{value:E},o.createElement("div",{className:$({view:u})},P?o.createElement(o.Fragment,null,o.createElement(G,{inputRef:T,className:$("search"),initialValue:n,onChange:b,autoFocus:!1,inputSize:"xl"}),o.createElement(q,{items:w,onChange:D,activeItemId:R,className:$("tabs")})):o.createElement("div",{className:$("menu"),onClick:()=>{T.current&&T.current.focus()},onKeyDown:e=>{I.current&&I.current.handleKeyDown(e)&&e.preventDefault()}},o.createElement(k,null,s),o.createElement(G,{inputRef:T,className:$("search"),initialValue:n,onChange:b,placeholder:l,autoFocus:!0}),o.createElement(z,{ref:I,items:w,onChange:D,activeItemId:R})),o.createElement("div",{className:$("page")},(e=>{if(!e)return"function"===typeof a?a():o.createElement("div",{className:$("not-found")},c);const t=_[e].sections.filter((e=>!e.hidden));return o.createElement(o.Fragment,null,!P&&o.createElement(k,{hasSeparator:!0,onClose:f},J(w,e)),o.createElement("div",{className:$("content")},t.map((t=>M(e,t)))))})(R))))}function ee(e,t){let n=e.slice(0);const r=[],i=T(t).split(" ").filter(Boolean);let a=0;for(const s of i){const e=new RegExp(s,"ig").exec(n);if(e){const t=e[0],i=e.index;i>0&&r.push(n.slice(0,i)),r.push(o.createElement("strong",{key:a++,className:$("found")},t)),n=n.slice(i+t.length)}}return n&&r.push(n),r}Q.Group=function(e){let{children:t}=e;return o.createElement(o.Fragment,null,t)},Q.Page=function(e){let{children:t}=e;return o.createElement(o.Fragment,null,t)},Q.Section=function(e){let{children:t}=e;return o.createElement(o.Fragment,null,t)},Q.Item=function(e){const{id:t,labelId:n,highlightedTitle:r,children:i,align:a="center",withBadge:s,renderTitleComponent:l=M,mode:c,description:u}=e,d=o.useContext(D),f=d.setting&&d.setting.id===t,{renderRightAdornment:p,showRightAdornmentOnHover:m}=Y(),g=o.createElement("span",{className:$("item-title",{badge:s})},l(r));return o.createElement("div",{className:$("item",{align:a,mode:c,selected:f}),ref:f?d.selectedRef:void 0},o.createElement("label",{className:$("item-heading"),id:n},p?o.createElement(h.k,{className:$("item-title-wrapper"),gap:3},g,o.createElement("div",{className:$("item-right-adornment",{hidden:m})},p(e))):g,u?o.createElement("span",{className:$("item-description")},u):null),o.createElement("div",{className:$("item-content")},i))};var te=n(33180),ne=n(24288),re=n(36951);const oe=(0,re.Ge)("switch"),ie=o.forwardRef((function(e,t){const{size:n="m",disabled:r=!1,content:i,children:a,title:s,style:l,className:c,qa:u}=e,{checked:d,inputProps:f}=(0,te.O)(Object.assign(Object.assign({},e),{controlProps:Object.assign(Object.assign({},e.controlProps),{role:"switch"})})),p=i||a,h=o.createElement("span",{className:oe("indicator")},o.createElement("input",Object.assign({},f,{className:oe("control")})),o.createElement("span",{className:oe("outline")}),o.createElement("span",{className:oe("slider")}));return o.createElement(ne.J,{ref:t,title:s,style:l,size:n,disabled:r,className:oe({size:n,disabled:r,checked:d},c),labelClassName:oe("text"),qa:u,control:h},p)}));var ae=n(79734),se=n(34051),le=n(75859);const ce=e=>{let{type:t="switch",settingKey:n,options:r,defaultValue:o,onValueUpdate:i}=e;const[a,s]=(0,se.yu)(n,o),l=e=>{s(e),null===i||void 0===i||i()};switch(t){case"switch":return(0,le.jsx)(ie,{checked:Boolean(a),onUpdate:l});case"radio":return r?(0,le.jsx)(ae.E,{value:String(a),onUpdate:l,children:r.map((e=>{let{value:t,content:n}=e;return(0,le.jsx)(ae.E.Option,{value:t,children:n},t)}))}):null;default:return null}},ue=e=>{let{settings:t}=e;return(0,le.jsx)(Q,{children:t.map((e=>{const{id:t,title:n,icon:r,sections:o=[]}=e;return(0,le.jsx)(Q.Page,{id:t,title:n,icon:r,children:o.map((e=>{const{title:n,settings:r=[]}=e;return(0,le.jsx)(Q.Section,{title:n,children:r.map((e=>"info"===e.type?(0,le.jsx)(Q.Item,{...e,children:e.content},e.title):(0,le.jsx)(Q.Item,{...e,children:(0,le.jsx)(ce,{...e})},e.title)))},t)}))},t)}))})},de=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M14.78 7.47a.75.75 0 0 1 0 1.06l-2.5 2.5a.75.75 0 1 1-1.06-1.06l1.22-1.22H4.75a.75.75 0 0 1 0-1.5h7.69l-1.22-1.22a.75.75 0 0 1 1.06-1.06l2.5 2.5ZM9.5 4.25a.75.75 0 0 1-1.5 0V4a1.5 1.5 0 0 0-1.5-1.5H4A1.5 1.5 0 0 0 2.5 4v8A1.5 1.5 0 0 0 4 13.5h2.5A1.5 1.5 0 0 0 8 12v-.25a.75.75 0 0 1 1.5 0V12a3 3 0 0 1-3 3H4a3 3 0 0 1-3-3V4a3 3 0 0 1 3-3h2.5a3 3 0 0 1 3 3v.25Z",clipRule:"evenodd"})),fe=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M11.78 7.47a.75.75 0 0 1 0 1.06l-2.5 2.5a.75.75 0 1 1-1.06-1.06l1.22-1.22H1.75a.75.75 0 0 1 0-1.5h7.69L8.22 6.03a.75.75 0 0 1 1.06-1.06l2.5 2.5ZM4 11.75a.75.75 0 0 1 1.5 0V12A1.5 1.5 0 0 0 7 13.5h5a1.5 1.5 0 0 0 1.5-1.5V4A1.5 1.5 0 0 0 12 2.5H7A1.5 1.5 0 0 0 5.5 4v.25a.75.75 0 0 1-1.5 0V4a3 3 0 0 1 3-3h5a3 3 0 0 1 3 3v8a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3v-.25Z",clipRule:"evenodd"}));var pe=n(86974),he=n(54665),me=n(14146),ge=n(24362),ve=n(30817);const ye=JSON.parse('{"navigation-item.documentation":"Documentation","navigation-item.settings":"Settings","navigation-item.account":"Account","account.user":"YDB User","account.login":"Login","account.logout":"Logout"}'),be=(0,ve.wZ)("ydb-aside-navigation",{en:ye}),we=(0,ge.cn)("kv-ydb-internal-user");function _e(){const{user:e}=(0,se.ix)((e=>e.authentication)),t=(0,pe.k6)(),n=(0,se.zL)();return(0,le.jsxs)("div",{className:we(),children:[(0,le.jsxs)("div",{className:we("user-info-wrapper"),children:[(0,le.jsx)("div",{className:we("ydb-internal-user-title"),children:be("account.user")}),e&&(0,le.jsx)("div",{className:we("username"),children:e})]}),e?(0,le.jsx)(_.z,{view:"flat-secondary",title:be("account.logout"),onClick:()=>{n(me.kS)},children:(0,le.jsx)(u.J,{data:de})}):(0,le.jsx)(_.z,{view:"flat-secondary",title:be("account.login"),onClick:()=>{t.push((0,he.ax)(he.ZP.auth,void 0,{returnUrl:encodeURIComponent(location.href)}))},children:(0,le.jsx)(u.J,{data:fe})})]})}function Ee(e){let{children:t,userSettings:n}=e;const r=(0,l.C)("AsideNavigation");return(0,le.jsx)(r,{settings:(0,le.jsx)(ue,{settings:n}),ydbInternalUser:(0,le.jsx)(_e,{}),content:t})}const xe={top:0,right:0,bottom:0,left:0};var Se=n(44920),Ce=n(3027),ke=n(83326),Oe=n.n(ke),Te=n(27506);const Ne=(0,ge.cn)("node-tootltip"),Ie=e=>{const{data:t}=e;return t&&(0,le.jsx)("div",{className:Ne(),children:(0,le.jsx)("table",{children:(0,le.jsxs)("tbody",{children:[(0,le.jsxs)("tr",{children:[(0,le.jsx)("td",{className:Ne("label"),children:"ID"}),(0,le.jsx)("td",{className:Ne("value"),children:t.nodeId||"?"})]}),(0,le.jsxs)("tr",{children:[(0,le.jsx)("td",{className:Ne("label"),children:"Rack"}),(0,le.jsx)("td",{className:Ne("value"),children:t.rack||"?"})]}),t.connected&&t.capacity?(0,le.jsxs)("tr",{children:[(0,le.jsx)("td",{className:Ne("label"),children:"Net"}),(0,le.jsx)("td",{className:Ne("value"),children:"".concat(t.connected," / ").concat(t.capacity)})]}):null]})})})},Pe=(0,ge.cn)("tabletsOverall-tooltip"),Re=e=>{const{data:t}=e;return t&&(0,le.jsx)("div",{className:Pe(),children:(0,le.jsx)("table",{children:(0,le.jsx)("tbody",{children:t.map(((e,t)=>(0,le.jsxs)("tr",{children:[(0,le.jsxs)("td",{className:Pe("label"),children:[e.color,":"]}),(0,le.jsx)("td",{className:Pe("value"),children:"".concat(e.value,"/").concat(e.total," (").concat(e.percents.toFixed(2),"%)")})]},t)))})})})},De=(0,ge.cn)("histogram-tooltip"),Ae=e=>{const{data:t}=e;return t&&(0,le.jsx)("div",{className:De(),children:(0,le.jsx)("table",{children:(0,le.jsxs)("tbody",{children:[(0,le.jsxs)("tr",{children:[(0,le.jsx)("td",{className:De("label"),children:"Count"}),(0,le.jsx)("td",{className:De("value"),children:t.count||"?"})]}),(0,le.jsxs)("tr",{children:[(0,le.jsx)("td",{className:De("label"),children:"From"}),(0,le.jsx)("td",{className:De("value"),children:t.leftBound||"?"})]}),(0,le.jsxs)("tr",{children:[(0,le.jsx)("td",{className:De("label"),children:"To"}),(0,le.jsx)("td",{className:De("value"),children:t.rightBound||"?"})]})]})})})},je=(0,ge.cn)("cell-tooltip"),Me=(0,ge.cn)("json-tooltip"),Le={pool:e=>(0,le.jsx)(Te.A8,{data:e}),tablet:e=>(0,le.jsx)(Te.Fb,{data:e}),node:e=>(0,le.jsx)(Ie,{data:e}),nodeEndpoints:e=>(0,le.jsx)(Te.bP,{data:e}),tabletsOverall:e=>(0,le.jsx)(Re,{data:e}),histogram:e=>(0,le.jsx)(Ae,{data:e}),cell:e=>(0,le.jsx)("div",{className:je(),children:e}),json:e=>(0,le.jsx)("div",{className:Me(),children:(0,le.jsx)(Oe(),{data:e,search:!1,isExpanded:()=>!0,className:Me("inspector")})})};const ze=(0,a.$j)((e=>{const{toolTipVisible:t,currentHoveredRef:n,data:r,templateType:o,additionalData:i,positions:a}=e.tooltip,{popupClassName:s}=i||{};return{toolTipVisible:t,currentHoveredRef:n,data:r,template:Le[o],additionalData:i,positions:a,popupClassName:s}}),{hideTooltip:Ce.i8})((function(e){var t,n;const r=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{rect:t,contextElement:n}=e,r=o.useRef(xe),i=o.useRef({contextElement:n,getBoundingClientRect(){const{top:e,right:t,bottom:n,left:o}=r.current;return{top:e,right:t,bottom:n,left:o,width:t-o,height:n-e}}});if(i.current.contextElement=n,t){const{top:e=0,left:n=0,right:o=n,bottom:i=e}=t;r.current={top:e,right:o,bottom:i,left:n}}else r.current=xe;return i}({rect:{top:null===(t=e.positions)||void 0===t?void 0:t.top,left:null===(n=e.positions)||void 0===n?void 0:n.left}});o.useEffect((()=>(window.addEventListener("scroll",i,!0),()=>{window.removeEventListener("scroll",i)})),[]);const i=()=>{const{hideTooltip:t,toolTipVisible:n}=e;n&&setTimeout((()=>t()),500)},{className:a="",toolTipVisible:s,currentHoveredRef:l,data:c,additionalData:u,positions:d}=e;return(0,le.jsx)("div",{className:"redux-tooltip ".concat(a),children:d?((t,n,i,a)=>{const{template:s,popupClassName:l,hideTooltip:c}=e;return(0,le.jsx)(o.Fragment,{children:(0,le.jsx)(Se.G,{open:t,placement:["top","bottom","left","right"],contentClassName:l,anchorRef:r,onOutsideClick:c,children:i&&s(i,a)})})})(s,0,c,u):((t,n,r,o)=>{const{template:i,popupClassName:a,hideTooltip:s}=e;return(0,le.jsx)(Se.G,{open:t,anchorRef:{current:n},hasArrow:!0,placement:["top","bottom","left","right"],className:a,onOutsideClick:s,children:r&&i(r,o)})})(s,l,c,u)})})),Fe=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",d:"M6.886.773C7.29-.231 8.71-.231 9.114.773l1.472 3.667 3.943.268c1.08.073 1.518 1.424.688 2.118L12.185 9.36l.964 3.832c.264 1.05-.886 1.884-1.802 1.31L8 12.4l-3.347 2.101c-.916.575-2.066-.26-1.802-1.309l.964-3.832L.783 6.826c-.83-.694-.391-2.045.688-2.118l3.943-.268L6.886.773Z"})),Be=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M11.494 13.2c.837-.482 1.006-.946 1.006-1.2 0-.35-.105-.692-.303-.981L9.072 6.435a1.854 1.854 0 0 1-.322-1.044V2.909C8.518 2.968 8.265 3 8 3s-.518-.032-.75-.09v2.48c0 .373-.112.737-.322 1.045L3.803 11.02c-.198.289-.303.63-.303.981 0 .254.169.718 1.006 1.2.813.468 2.043.8 3.494.8s2.68-.332 3.494-.8ZM8 .5c2 0 2.25 1 2.25 1.5v3.39c0 .072.021.141.062.2l3.125 4.584c.367.538.563 1.175.563 1.826 0 2-2.686 3.5-6 3.5S2 14 2 12c0-.652.196-1.288.563-1.826L5.69 5.59a.354.354 0 0 0 .061-.2V2C5.75 1.5 6 .5 8 .5Zm.084 7.626a.75.75 0 0 1 1.04.208l1.5 2.25a.75.75 0 1 1-1.248.832l-1.5-2.25a.75.75 0 0 1 .208-1.04Z",clipRule:"evenodd"})),Ue=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M6.169 6.331a3 3 0 0 0-.833 1.6l-.338 1.912a1 1 0 0 0 1.159 1.159l1.912-.338a3 3 0 0 0 1.6-.833l3.07-3.07 2-2A.894.894 0 0 0 15 4.13 3.13 3.13 0 0 0 11.87 1a.894.894 0 0 0-.632.262l-2 2-3.07 3.07Zm3.936-1.814L7.229 7.392a1.5 1.5 0 0 0-.416.8L6.6 9.4l1.208-.213.057-.01a1.5 1.5 0 0 0 .743-.406l2.875-2.876a1.63 1.63 0 0 0-1.378-1.378Zm2.558.199a3.143 3.143 0 0 0-1.379-1.38l.82-.82a1.63 1.63 0 0 1 1.38 1.38l-.82.82ZM8 2.25a.75.75 0 0 0-.75-.75H4.5a3 3 0 0 0-3 3v7a3 3 0 0 0 3 3h7a3 3 0 0 0 3-3V8.75a.75.75 0 0 0-1.5 0v2.75a1.5 1.5 0 0 1-1.5 1.5h-7A1.5 1.5 0 0 1 3 11.5v-7A1.5 1.5 0 0 1 4.5 3h2.75A.75.75 0 0 0 8 2.25Z",clipRule:"evenodd"}));var qe=n(68010),Ze=n(89900),He=n(52317);function We(e){let{children:t,mode:n}=e;return(0,se.ix)((e=>"single"===n?e.singleClusterMode:!e.singleClusterMode))?(0,le.jsx)(o.Fragment,{children:t}):null}const Ve=JSON.parse('{"page.general":"General","section.appearance":"Appearance","page.experiments":"Experiments","section.experiments":"Experiments","page.editor":"Editor","section.dev-setting":"Development settings","page.about":"About","section.about":"About","settings.editor.autocomplete.title":"Enable autocomplete","settings.editor.autocomplete.description":"You\u2019re always able to get suggestions by pressing Ctrl+Space.","settings.editor.autocomplete-on-enter.title":"Accept suggestion on Enter","settings.editor.autocomplete-on-enter.description":"Controls whether suggestions should be accepted on Enter, in addition to Tab. Helps to avoid ambiguity between inserting new lines or accepting suggestions.","settings.theme.title":"Interface theme","settings.theme.option-dark":"Dark","settings.theme.option-light":"Light","settings.theme.option-system":"System","settings.language.title":"Interface language","settings.language.option-russian":"Russian","settings.language.option-english":"English","settings.binaryDataInPlainTextDisplay.title":"Display binary data in plain text","settings.binaryDataInPlainTextDisplay.description":"Available starting from version 24.1","settings.invertedDisks.title":"Inverted disks space indicators","settings.useNodesEndpoint.title":"Break the Nodes tab in Diagnostics","settings.useNodesEndpoint.description":"Use /viewer/json/nodes endpoint for Nodes tab in diagnostics. It could return incorrect data on versions before 24-1","settings.usePaginatedTables.title":"Use paginated tables","settings.usePaginatedTables.description":" Use table with data load on scroll for Nodes and Storage tabs. It will increase performance, but could work unstable","settings.queryUseMultiSchema.title":"Allow queries with multiple result sets","settings.queryUseMultiSchema.description":"Use \'multi\' schema for queries. It enables queries with multiple result sets. It returns nothing on versions 23-3 and older","settings.useSeparateDisksPages.title":"Use separate PDisk and VDisk pages","settings.useSeparateDisksPages.description":"Use separate pages instead of node structure tab","settings.useDirectoryOperations.title":"Enable operations with directories","settings.useClusterBalancerAsBackend.title":"Use cluster balancer as backend","settings.useClusterBalancerAsBackend.description":"By default random cluster node is used as backend. It causes saved links to become invalid after some time, when node is restarted. Using balancer as backend fixes it","settings.about.interfaceVersionInfoField.title":"Interface version"}'),Ge=(0,ve.wZ)("ydb-user-settings",{en:Ve}),$e=[{value:"system",content:Ge("settings.theme.option-system")},{value:"light",content:Ge("settings.theme.option-light")},{value:"dark",content:Ge("settings.theme.option-dark")}],Ke={settingKey:He.bw,title:Ge("settings.theme.title"),type:"radio",options:$e},Ye=(ve.Uo.Ru,Ge("settings.language.option-russian"),ve.Uo.En,Ge("settings.language.option-english"),He.Px,Ge("settings.language.title"),ve.Fp,{settingKey:He.N1,title:Ge("settings.binaryDataInPlainTextDisplay.title"),description:(0,le.jsx)(We,{mode:"multi",children:Ge("settings.binaryDataInPlainTextDisplay.description")})}),Qe={settingKey:He.yT,title:Ge("settings.invertedDisks.title")},Je={settingKey:He.UF,title:Ge("settings.useNodesEndpoint.title"),description:Ge("settings.useNodesEndpoint.description")},Xe={settingKey:He.Qy,title:Ge("settings.usePaginatedTables.title"),description:Ge("settings.usePaginatedTables.description")},et={settingKey:He.Rq,title:Ge("settings.queryUseMultiSchema.title"),description:Ge("settings.queryUseMultiSchema.description")},tt={settingKey:He.fo,title:Ge("settings.useSeparateDisksPages.title"),description:Ge("settings.useSeparateDisksPages.description")},nt={settingKey:He.Tf,title:Ge("settings.useDirectoryOperations.title")},rt={settingKey:He.IG,title:Ge("settings.useClusterBalancerAsBackend.title"),description:Ge("settings.useClusterBalancerAsBackend.description")},ot={settingKey:He.y6,title:Ge("settings.editor.autocomplete.title"),description:Ge("settings.editor.autocomplete.description")},it={settingKey:He.XX,title:Ge("settings.editor.autocomplete-on-enter.title"),description:Ge("settings.editor.autocomplete-on-enter.description")},at={title:Ge("settings.about.interfaceVersionInfoField.title"),type:"info",content:"6.11.0"},st={id:"appearanceSection",title:Ge("section.appearance"),settings:[Ke,Qe,Ye]},lt={id:"experimentsSection",title:Ge("section.experiments"),settings:[Je,Xe,et,tt,nt]},ct={id:"devSettingsSection",title:Ge("section.dev-setting"),settings:[ot,it]},ut={id:"aboutSettingsSection",title:Ge("section.about"),settings:[at]},dt={id:"generalPage",title:Ge("page.general"),icon:{data:Fe,height:14,width:14},sections:[st]},ft={id:"experimentsPage",title:Ge("page.experiments"),icon:{data:Be},sections:[lt]},pt={id:"editorPage",title:Ge("page.editor"),icon:{data:Ue},sections:[ct]},ht={id:"aboutPage",title:Ge("page.about"),icon:{data:qe.Z},sections:[ut]};function mt(e){let{singleClusterMode:t}=e;const n=t?ft:(0,Ze.Uy)(ft,(e=>{e.sections[0].settings.push(rt)}));return[dt,pt,n,ht]}function gt(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"unknown";const t=()=>null;return t.displayName="Slot(".concat(e,")"),t.__slotName=e,t}function vt(e){return"function"===typeof e&&"__slotName"in e}class yt{constructor(e){this.children=null,this.slots=void 0;const t=[];this.slots=new Map,o.Children.forEach(e,(e=>{if(n=e,o.isValidElement(n)&&vt(n.type)){const{type:t,props:n,ref:r}=e;if(this.slots.has(t))throw new Error('Duplicate slot elements with name "'.concat(t.__slotName,'" found.'));this.slots.set(t,{name:t.__slotName,props:n,ref:r,rendered:n.children})}else null!==e&&void 0!==e&&""!==e&&t.push(e);var n}));t.length>0&&(this.children=t)}get(e){if(!vt(e))throw new Error('Invalid slot component. Should be a component created using "createSlot".');return this.slots.get(e)}}var bt=n(99337),wt=n(30410);const _t=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M3.03 1.97a.75.75 0 0 0-1.06 1.06l.83.83A8.206 8.206 0 0 0 .5 6.876l-.26.585a1.328 1.328 0 0 0 0 1.079l.26.585a8.208 8.208 0 0 0 11.434 3.87l1.036 1.035a.75.75 0 1 0 1.06-1.06l-11-11Zm7.788 9.908-1.294-1.293a3 3 0 0 1-4.109-4.109L3.866 4.927A6.707 6.707 0 0 0 1.87 7.486L1.641 8l.23.515a6.708 6.708 0 0 0 8.947 3.363ZM6.55 7.611A1.502 1.502 0 0 0 8.389 9.45L6.55 7.611Zm1.658-2.604 2.784 2.784a3 3 0 0 0-2.784-2.784Zm5.92 3.508a6.704 6.704 0 0 1-.915 1.496l1.065 1.066A8.203 8.203 0 0 0 15.5 9.125l.26-.585a1.328 1.328 0 0 0 0-1.08l-.26-.584A8.208 8.208 0 0 0 5.572 2.37L6.81 3.61a6.708 6.708 0 0 1 7.32 3.877l.228.514-.228.515Z",clipRule:"evenodd"})),Et=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M1.87 8.515 1.641 8l.229-.515a6.708 6.708 0 0 1 12.26 0l.228.515-.229.515a6.708 6.708 0 0 1-12.259 0ZM.5 6.876l-.26.585a1.328 1.328 0 0 0 0 1.079l.26.584a8.208 8.208 0 0 0 15 0l.26-.584a1.328 1.328 0 0 0 0-1.08l-.26-.584a8.208 8.208 0 0 0-15 0ZM9.5 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z",clipRule:"evenodd"}));var xt,St,Ct=n(86017);function kt(){return kt=Object.assign?Object.assign.bind():function(e){for(var t=1;te.authentication)),[l,c]=o.useState(""),[d,p]=o.useState(""),[h,m]=o.useState(""),[g,v]=o.useState(""),[y,w]=o.useState(!1);o.useEffect((()=>{var e,t,n,r;null!==s&&void 0!==s&&null!==(e=s.data)&&void 0!==e&&null!==(t=e.error)&&void 0!==t&&t.includes("user")&&m(s.data.error),null!==s&&void 0!==s&&null!==(n=s.data)&&void 0!==n&&null!==(r=n.error)&&void 0!==r&&r.includes("password")&&v(s.data.error)}),[s]);const E=()=>{n((0,me.YR)(l,d)).then((()=>{if(a){const e=decodeURIComponent(a.toString()),t=new URL(e),n=t.pathname+t.search;r.replace(n)}}))},x=e=>{13===e.keyCode&&E()};return(0,le.jsxs)("section",{className:Tt(),children:[(0,le.jsxs)("form",{className:Tt("form-wrapper"),children:[(0,le.jsxs)("div",{className:Tt("header"),children:[(0,le.jsxs)("div",{className:Tt("logo"),children:[(0,le.jsx)(u.J,{data:Ot,size:24}),"YDB"]}),(0,le.jsx)(Ct.r,{href:"http://ydb.tech/docs",target:"_blank",children:"Documentation"})]}),(0,le.jsx)("h2",{className:Tt("title"),children:"Sign in"}),(0,le.jsx)("div",{className:Tt("field-wrapper"),children:(0,le.jsx)(f.o,{value:l,onUpdate:e=>{c(e),m("")},placeholder:"Username",error:h,onKeyDown:x,size:"l",autoFocus:!0})}),(0,le.jsxs)("div",{className:Tt("field-wrapper"),children:[(0,le.jsx)(f.o,{value:d,onUpdate:e=>{p(e),v("")},type:y?"text":"password",placeholder:"Password",error:g,onKeyDown:x,size:"l"}),(0,le.jsx)(_.z,{onClick:()=>{w((e=>!e))},size:"l",className:Tt("show-password-button"),children:(0,le.jsx)(u.J,{data:y?_t:Et,size:16})})]}),(0,le.jsx)(_.z,{view:"action",onClick:E,width:"max",size:"l",disabled:Boolean(!l||h||g),className:Tt("button-sign-in"),children:"Sign in"})]}),t&&r.length>1&&(0,le.jsx)(_.z,{onClick:()=>{r.go(-1)},className:Tt("close"),children:(0,le.jsx)(u.J,{data:b.Z,size:24})})]})};var It=n(81003),Pt=n(43832),Rt=n.n(Pt);const Dt=(0,re.Ge)("breadcrumbs");function At(e){return o.createElement("button",Object.assign({},e,{type:"button",className:Dt("switcher",{more:!0})}))}const jt=(0,re.Ge)("breadcrumbs");const Mt=o.memo((function(e){let{item:t,isCurrent:n,isPrevCurrent:r,renderItemContent:i,renderItem:a}=e;const s=i?i(t,n,r):t.text;if(a)return a({item:t,children:s,isCurrent:n,isPrevCurrent:r});const l=t.title||t.text;return r||!n?void 0!==t.href?o.createElement(Ct.r,{key:t.text,view:"secondary",href:t.href,title:l,onClick:t.action,className:jt("item",{"prev-current":r})},s):o.createElement(At,{key:t.text,title:l,onClick:t.action},s):o.createElement("div",{title:l,className:jt("item",{current:!0})},s)}));Mt.displayName="Breadcrumbs.Item";var Lt=n(30044);const zt=JSON.parse('{"label_more":"Show more"}'),Ft=JSON.parse('{"label_more":"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435"}'),Bt=(0,y.e)({en:zt,ru:Ft},"Breadcrumbs"),Ut=(0,re.Ge)("breadcrumbs");function qt(e){let{popupStyle:t,popupPlacement:n,items:r}=e;return o.createElement(Lt.h,{items:r,popupProps:{className:Ut("popup",{staircase:"staircase"===t}),placement:n},renderSwitcher:e=>{let{onClick:t}=e;return o.createElement(At,{title:Bt("label_more"),onClick:t},"...")}})}qt.displayName="Breadcrumbs.More";const Zt=(0,re.Ge)("breadcrumbs");function Ht(e){let{renderItemDivider:t}=e;return o.createElement("div",{"aria-hidden":!0,className:Zt("divider")},t?t():"/")}Ht.displayName="Breadcrumbs.Separator";const Wt=(0,re.Ge)("breadcrumbs");var Vt,Gt;!function(e){e[e.One=1]="One",e[e.Two=2]="Two"}(Vt||(Vt={})),function(e){e[e.Zero=0]="Zero",e[e.One=1]="One"}(Gt||(Gt={}));class $t extends o.Component{static prepareInitialState(e){const{firstDisplayedItemsCount:t}=e;return{calculated:!1,rootItem:t?e.items[0]:void 0,visibleItems:e.items.slice(t),hiddenItems:[],allItems:e.items}}static getDerivedStateFromProps(e,t){return t.allItems!==e.items?$t.prepareInitialState(e):null}constructor(e){super(e),this.handleResize=()=>{const e=$t.prepareInitialState(this.props);this.setState(e,this.recalculate)},this.handleResize=Rt()(this.handleResize,200),"undefined"!==typeof window&&(this.resizeObserver=new ResizeObserver(this.handleResize)),this.container=o.createRef(),this.state=$t.prepareInitialState(e)}componentDidMount(){var e;this.recalculate(),null===(e=this.resizeObserver)||void 0===e||e.observe(this.container.current)}componentDidUpdate(e){e.items!==this.state.allItems&&this.recalculate()}componentWillUnmount(){var e;null===(e=this.resizeObserver)||void 0===e||e.disconnect()}render(){const{className:e,qa:t}=this.props,{calculated:n}=this.state;return o.createElement("div",{className:Wt({calculated:n?"yes":"no"},e),"data-qa":t},o.createElement("div",{className:Wt("inner"),ref:this.container},this.renderRootItem(),this.renderMoreItem(),this.renderVisibleItems()))}renderItem(e,t,n,r){return o.createElement(Mt,{item:e,isCurrent:t,isPrevCurrent:n,renderItemContent:r||this.props.renderItemContent,renderItem:this.props.renderItem})}renderItemDivider(){const{renderItemDivider:e}=this.props;return o.createElement(Ht,{renderItemDivider:e})}renderRootItem(){const{renderRootContent:e}=this.props,{rootItem:t,visibleItems:n}=this.state,r=0===n.length;return t?this.renderItem(t,r,!1,e):null}renderVisibleItems(){const{visibleItems:e}=this.state;return e.map(((e,t,n)=>{const r=t===n.length-1,i=t===n.length-2;return o.createElement(o.Fragment,{key:t},this.renderItemDivider(),this.renderItem(e,r,i))}))}renderMoreItem(){const{hiddenItems:e}=this.state;if(0===e.length)return null;const{popupStyle:t,popupPlacement:n,renderItemDivider:r}=this.props;return o.createElement(o.Fragment,null,o.createElement(Ht,{renderItemDivider:r}),o.createElement(qt,{items:e,popupPlacement:n,popupStyle:t}))}recalculate(){var e;const{items:t,lastDisplayedItemsCount:n,firstDisplayedItemsCount:r}=this.props;let o=(null===(e=this.container.current)||void 0===e?void 0:e.offsetWidth)||0;if(this.container.current&&o>0){o+=4;const e=Array.from(this.container.current.querySelectorAll(".".concat(Wt("divider")))),i=[...Array.from(this.container.current.querySelectorAll(".".concat(Wt("switcher")))),...Array.from(this.container.current.querySelectorAll(".".concat(Wt("item"))))],a=i.map(((e,t)=>e.scrollWidth+(t===i.length-1?4:8))),s=e.map((e=>e.offsetWidth));let l=a.reduce(((e,t,r,o)=>{const i=o.length-1===r,a=n===Vt.Two&&o.length-2===r;return i||a?e+Math.min(t,200):e+t}),0)+s.reduce(((e,t)=>e+t),0),c=1;for(;l>o&&co.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M11 2.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3ZM14 4a3 3 0 1 0-5.895.79L6.15 5.908a3 3 0 1 0 0 4.185l1.955 1.117A3.003 3.003 0 0 0 11 15a3 3 0 1 0-2.15-5.092L6.895 8.79a3.003 3.003 0 0 0 0-1.58L8.85 6.092A3 3 0 0 0 14 4Zm-3 6.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3ZM2.5 8a1.5 1.5 0 1 1 3 0 1.5 1.5 0 0 1-3 0Z",clipRule:"evenodd"})),tn=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M11.615 4.888c.814-.375.885-.714.885-.888 0-.174-.071-.513-.885-.888C10.8 2.737 9.538 2.5 8 2.5c-1.538 0-2.799.237-3.615.612-.814.375-.885.714-.885.888 0 .174.071.513.885.888C5.2 5.263 6.462 5.5 8 5.5c1.538 0 2.799-.237 3.615-.612Zm.885 1.235C11.4 6.708 9.792 7 8 7c-1.792 0-3.4-.292-4.5-.877V8c0 .174.071.513.885.888C5.2 9.263 6.462 9.5 8 9.5c1.538 0 2.799-.237 3.615-.612.814-.375.885-.714.885-.888V6.123Zm0 4C11.4 10.708 9.792 11 8 11c-1.792 0-3.4-.293-4.5-.877V12c0 .174.071.513.885.887.816.377 2.077.613 3.615.613 1.538 0 2.799-.236 3.615-.613.814-.374.885-.713.885-.887v-1.877ZM14 4c0-2-2.686-3-6-3S2 2 2 4v8c0 2 2.686 3 6 3s6-1 6-3V4Z",clipRule:"evenodd"})),nn=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M12 8.5a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5H4A1.5 1.5 0 0 1 2.5 11v-1A1.5 1.5 0 0 1 4 8.5h8Zm.89-1.366L11.488 4.33a1.5 1.5 0 0 0-1.342-.829H5.854a1.5 1.5 0 0 0-1.342.83L3.11 7.133A3 3 0 0 1 4 7h8a3 3 0 0 1 .89.134ZM15 9.18V11a3 3 0 0 1-3 3H4a3 3 0 0 1-3-3V9.18a5 5 0 0 1 .528-2.236L3.17 3.658A3 3 0 0 1 5.854 2h4.292a3 3 0 0 1 2.683 1.658l1.643 3.286A5 5 0 0 1 15 9.18Zm-6 .57a.75.75 0 0 0 0 1.5h2.5a.75.75 0 0 0 0-1.5H9Z",clipRule:"evenodd"})),rn=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M7 1.25a.75.75 0 0 0-1.5 0V2.5a3 3 0 0 0-3 3H1.25a.75.75 0 0 0 0 1.5H2.5v2H1.25a.75.75 0 0 0 0 1.5H2.5a3 3 0 0 0 3 3v1.25a.75.75 0 0 0 1.5 0V13.5h2v1.25a.75.75 0 0 0 1.5 0V13.5a3 3 0 0 0 3-3h1.25a.75.75 0 1 0 0-1.5H13.5V7h1.25a.75.75 0 1 0 0-1.5H13.5a3 3 0 0 0-3-3V1.25a.75.75 0 0 0-1.5 0V2.5H7V1.25ZM10.5 4h-5A1.5 1.5 0 0 0 4 5.5v5A1.5 1.5 0 0 0 5.5 12h5a1.5 1.5 0 0 0 1.5-1.5v-5A1.5 1.5 0 0 0 10.5 4Zm0 2.25a.75.75 0 0 0-.75-.75h-3.5a.75.75 0 0 0-.75.75v3.5a.75.75 0 0 0 .75.75h3.5a.75.75 0 0 0 .75-.75v-3.5ZM7 7h2v2H7V7Z",clipRule:"evenodd"}));var on=n(42784),an=n(24015),sn=n(92398),ln=n(95478);const cn=JSON.parse('{"breadcrumbs.tenant":"Tenant","breadcrumbs.node":"Node","breadcrumbs.pDisk":"PDisk","breadcrumbs.vDisk":"VDisk","breadcrumbs.tablet":"Tablet","breadcrumbs.tablets":"Tablets"}'),un=(0,ve.wZ)("ydb-header",{en:cn}),dn=e=>e.startsWith("/")?e.slice(1):e,fn=e=>({[an.bS]:an.m2.diagnostics,[ln.XV.diagnosticsTab]:an.qQ[e]}),pn=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{clusterName:n,clusterTab:r}=e;return[{text:n||He.DO,link:(0,It.B7)(r,t),icon:(0,le.jsx)(en,{})}]},hn=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{tenantName:n}=e,r=pn(e,t),o={text:n?dn(n):un("breadcrumbs.tenant"),link:n?(0,ln.Sj)({...t,name:n}):void 0,icon:(0,le.jsx)(tn,{})};return r.push(o),r},mn=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{tenantName:n,nodeId:r}=e,o=!n,i=fn("nodes"),a=o?pn(e,t):hn(e,{...t,...i});let s=un("breadcrumbs.node");r&&(s+=" ".concat(r));const l={text:s,link:r?(0,sn.a3)(r,t):void 0,icon:o?(0,le.jsx)(nn,{}):(0,le.jsx)(rn,{})};return a.push(l),a},gn=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{nodeId:n,pDiskId:r}=e,o=mn({nodeId:n});let i=un("breadcrumbs.pDisk");r&&(i+=" ".concat(r));const a={text:i,link:r&&n?(0,he.ds)(r,n,t):void 0};return o.push(a),o},vn=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{tenantName:n,nodeIds:r}=e,o=fn("tablets"),i=n?hn(e,{...t,...o}):pn(e,t),a=(0,he.ax)(he.ZP.tabletsFilters,void 0,{...t,nodeIds:r,path:n}),s={text:un("breadcrumbs.tablets"),link:a};return i.push(s),i},yn={cluster:pn,node:mn,pDisk:gn,tablet:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{tabletId:n,tabletType:r}=e,o=vn(e,t),i={text:n||un("breadcrumbs.tablet"),icon:(0,le.jsx)(on.v,{text:(0,He.qV)(r)})};return o.push(i),o},tablets:vn,tenant:hn,vDisk:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{vDiskSlotId:n}=e,r=gn(e,t);let o=un("breadcrumbs.vDisk");n&&(o+=" ".concat(n));const i={text:o};return r.push(i),r}},bn=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(!e)return n;const o=(0,yn[e])(t,r);return[...n,...o]},wn=(0,ge.cn)("header"),_n=e=>e&&!Jt.j4?"/internal":Jt.y3+"/internal";const En=function(e){let{mainPage:t}=e;const n=(0,pe.TH)(),r=(0,he.mB)(n),i=(0,se.ix)((e=>e.singleClusterMode)),{page:a,pageBreadcrumbsOptions:s}=(0,se.ix)((e=>e.header)),l=Xt.UM.useGetClusterInfoQuery(r.clusterName?String(r.clusterName):void 0),c=(0,Kt.get)(l,["currentData","clusterData","Name"],r.clusterName),u=o.useMemo((()=>{const e=[];let n=s;t&&e.push(t),c&&(n={...n,clusterName:c});return bn(a,n,e,r).map((e=>({...e,action:()=>{}})))}),[c,t,r,a,s]);return(0,le.jsxs)("header",{className:wn(),children:[(0,le.jsx)($t,{items:u,lastDisplayedItemsCount:1,firstDisplayedItemsCount:1,className:wn("breadcrumbs"),renderItem:e=>{let{item:t,isCurrent:n}=e;const{icon:r,text:o,link:i}=t;return(0,le.jsxs)(Yt.h,{className:wn("breadcrumbs-item",{active:n,link:!n}),to:n?void 0:i,children:[r?(0,le.jsx)("span",{className:wn("breadcrumbs-icon"),children:r}):null,(0,le.jsx)("span",{children:o})]})}}),(0,le.jsx)(Qt.j,{title:He.Ah,url:_n(i)})]})},xn=gt("clusters"),Sn=gt("cluster"),Cn=gt("tenant"),kn=gt("node"),On=gt("pDisk"),Tn=gt("vDisk"),Nn=gt("tablet"),In=gt("tabletsFilters"),Pn=gt("routes"),Rn=gt("redirect"),Dn=JSON.parse('{"pages.clusters":"All clusters"}'),An=JSON.parse('{"pages.clusters":"\u0412\u0441\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u044b"}'),jn=(0,ve.wZ)("ydb-app-content",{ru:An,en:Dn}),Mn=(0,ge.cn)("app"),Ln=[{path:he.ZP.cluster,slot:Sn,component:(0,wt.k)((()=>Promise.all([n.e(2418),n.e(496),n.e(9759),n.e(2180),n.e(2335),n.e(8429)]).then(n.bind(n,33091))),"Cluster")},{path:he.ZP.tenant,slot:Cn,component:(0,wt.k)((()=>Promise.all([n.e(2418),n.e(530),n.e(321),n.e(9759),n.e(2180),n.e(2335),n.e(163)]).then(n.bind(n,23985))),"Tenant")},{path:he.ZP.node,slot:kn,component:(0,wt.k)((()=>Promise.all([n.e(2418),n.e(7418),n.e(9759),n.e(2180),n.e(7045)]).then(n.bind(n,55515))),"Node")},{path:he.ZP.pDisk,slot:On,component:(0,wt.k)((()=>Promise.all([n.e(2418),n.e(9759),n.e(783),n.e(8076)]).then(n.bind(n,25747))),"PDiskPage")},{path:he.ZP.vDisk,slot:Tn,component:(0,wt.k)((()=>Promise.all([n.e(2418),n.e(9759),n.e(783),n.e(5715)]).then(n.bind(n,65915))),"VDiskPage")},{path:he.ZP.tablet,slot:Nn,component:(0,wt.k)((()=>n.e(7542).then(n.bind(n,47542))),"Tablet")},{path:he.ZP.tabletsFilters,slot:In,component:(0,wt.k)((()=>Promise.all([n.e(2418),n.e(5246)]).then(n.bind(n,55246))),"TabletsFilters")}],zn=(0,wt.k)((()=>Promise.all([n.e(2418),n.e(530),n.e(9818)]).then(n.bind(n,76435))),"Clusters");function Fn(e,t){return(0,le.jsx)(pe.AW,{path:t.path,exact:t.exact,render:n=>{const r=e.get(t.slot);let o;if(r)o="function"===typeof r.rendered?r.rendered({component:t.component,...n}):r.rendered;else{const e=t.component;o=(0,le.jsx)(e,{...n})}return(0,le.jsx)("main",{className:Mn("main"),children:o})}},t.path)}function Bn(e){var t;const{singleClusterMode:n}=e,r=function(e){const{children:t}=e;return o.useMemo((()=>new yt(t)),[t])}(e),i=r.get(Pn),a=r.get(Rn),s=null!==(t=null===a||void 0===a?void 0:a.props)&&void 0!==t?t:n?{to:(0,It.B7)()}:{to:he.ZP.clusters};let l;return n||(l={text:jn("pages.clusters"),link:he.ZP.clusters}),(0,le.jsxs)(pe.rs,{children:[n?null:Fn(r,{path:he.ZP.clusters,exact:!0,component:zn,slot:xn}),null===i||void 0===i?void 0:i.rendered,(0,le.jsxs)(pe.AW,{children:[(0,le.jsx)(Un,{}),(0,le.jsx)(qn,{}),(0,le.jsx)(En,{mainPage:l}),(0,le.jsxs)(pe.rs,{children:[Ln.map((e=>Fn(r,e))),(0,le.jsx)(pe.AW,{path:s.from||s.path,exact:s.exact,strict:s.strict,render:()=>(0,le.jsx)(pe.l_,{to:s.to,push:s.push})})]})]},"single-cluster")]})}function Un(){const e=(0,se.zL)(),{isAuthenticated:t,isInternalUser:n}=(0,se.ix)((e=>({isAuthenticated:e.authentication.isAuthenticated,isInternalUser:Boolean(e.authentication.user)})),a.wU);return o.useEffect((()=>{t&&!n&&e((0,me.PR)())}),[e,t,n]),null}function qn(){return bt.W.useGetNodesListQuery(void 0),null}const Zn=(0,a.$j)((function(e){return{isAuthenticated:e.authentication.isAuthenticated,singleClusterMode:e.singleClusterMode}}))((function(e){const{singleClusterMode:t,isAuthenticated:n}=e;return(0,le.jsxs)(pe.rs,{children:[(0,le.jsx)(pe.AW,{path:he.ZP.auth,children:(0,le.jsx)(Nt,{closable:!0})}),(0,le.jsx)(pe.AW,{children:(0,le.jsx)("div",{className:Mn({embedded:t}),children:n?e.children:(0,le.jsx)(Nt,{})})})]})}));var Hn=n(78761),Wn=n(52846);const Vn=e=>{let{children:t}=e;(0,pe.TH)();const n=(0,pe.k6)();return t({replace(e){n.replace(e.search||"?",e.state)},push(e){n.push(e.search||"?",e.state)},get location(){return n.location}})},Gn=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10 4.5a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm1.5 0a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Zm-9 8c0-.204.22-.809 1.32-1.459C4.838 10.44 6.32 10 8 10c1.68 0 3.162.44 4.18 1.041 1.1.65 1.32 1.255 1.32 1.459a1 1 0 0 1-1 1h-9a1 1 0 0 1-1-1Zm5.5-4c-3.85 0-7 2-7 4A2.5 2.5 0 0 0 3.5 15h9a2.5 2.5 0 0 0 2.5-2.5c0-2-3.15-4-7-4Z",clipRule:"evenodd"}));var $n=n(32257),Kn=n(21645),Yn=n(57107),Qn=n(2266),Jn=n(24917);const Xn=o.createContext(void 0);Xn.displayName="AsideHeaderInnerContext";const er=Xn.Provider,tr=()=>{const e=o.useContext(Xn);if(void 0===e)throw new Error("AsideHeaderInnerContext is not initialized.\n Please check if you wrapped your component with AsideHeaderInnerContext.Provider");return e},nr=o.createContext({compact:!1,size:0});nr.displayName="AsideHeaderContext";const rr=nr.Provider,or=()=>{const e=o.useContext(nr);if(void 0===e)throw new Error("AsideHeaderContext is not initialized.\n Please check if you wrapped your component with AsideHeader\n Context.Provider");return e},ir=40;var ar=n(98409);g('.gn-composite-bar-highlighted-item{--_--background-color:var(--g-color-base-background);--_--item-icon-background-size:38px;--_--item-background-color-hover:var(--g-color-base-selection-hover);--_--item-selected-background-color-active:var(--g-color-base-selection);display:flex;justify-content:center;position:absolute;z-index:10000}.gn-composite-bar-highlighted-item__icon{align-items:center;background-color:var(--gn-aside-header-background-color,var(--_--background-color));border-radius:7px;box-shadow:0 8px 20px 0 var(--g-color-sfx-shadow);cursor:pointer;display:flex;height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));justify-content:center;overflow:hidden;position:relative;transform:translateY(1px);width:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size))}.gn-composite-bar-highlighted-item__icon:before{background-color:var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color-active));content:"";height:100%;position:absolute;width:100%;z-index:-1}.gn-composite-bar-highlighted-item__icon:hover:before{background-color:var(--gn-aside-header-item-background-color-hover,var(--_--item-background-color-hover))}');const sr=(0,m.b)("composite-bar-highlighted-item"),lr=e=>{let{iconRef:t,iconNode:n,onClick:r,onClickCapture:i}=e;const{openModalSubscriber:a}=tr(),[{top:s,left:l,width:c,height:u},d]=(0,o.useState)({top:0,left:0,width:0,height:0}),[f,p]=(0,o.useState)(!1),h=(0,o.useMemo)((()=>(0,v.d)((()=>{var e;const{top:n=0,left:r=0,width:o=0,height:i=0}=(null===(e=null===t||void 0===t?void 0:t.current)||void 0===e?void 0:e.getBoundingClientRect())||{};d({top:n+window.scrollY,left:r+window.scrollX,width:o,height:i})}),200,{leading:!0})),[t]),m=(0,o.useCallback)((()=>h()),[h]);return(0,o.useEffect)((()=>{if(f)return m(),window.addEventListener("resize",m),()=>window.removeEventListener("resize",m)}),[m,f]),null===a||void 0===a||a((e=>{p(e)})),n&&f?o.createElement(Yn.h,null,o.createElement("div",{className:sr(),style:{left:l,top:s,width:c,height:u},onClick:r,onClickCapture:i,"data-toast":!0},o.createElement("div",{className:sr("icon")},n))):null};lr.displayName="HighlightedItem";const cr="collapse-item-id",ur=["right-start","right-end","right"],dr=28;function fr(e){if(!mr(e))return ir;switch(e.type){case"action":return 50;case"divider":return 15;default:return ir}}function pr(e){return e.reduce(((e,t)=>e+fr(t)),0)}function hr(e){const t=e.findIndex((e=>{let{current:t}=e;return Boolean(t)}));return-1===t?void 0:t}function mr(e){return void 0!==(null===e||void 0===e?void 0:e.id)}g('.gn-composite-bar-item{--gn-composite-bar-item-action-size:36px;--_--horizontal-divider-line-color:var(--g-color-line-generic);--_--item-background-color-hover:var(--g-color-base-simple-hover);--_--item-general-icon-color:var(--g-color-text-primary);--_--item-icon-color:var(--g-color-text-misc);--_--item-text-color:var(--g-color-text-primary);--_--item-selected-text-color:var(--g-color-text-primary);--_--item-selected-background-color-active:var(--g-color-base-selection);align-items:center;cursor:pointer;display:flex;height:100%;width:100%}.gn-composite-bar-item__icon{color:var(--gn-aside-header-item-icon-color,var(--_--item-icon-color))}.gn-composite-bar-item_current .gn-composite-bar-item__icon{color:var(--gn-aside-header-item-current-icon-color,var(--gn-aside-header-item-icon-color,var(--_--item-icon-color)))}.gn-composite-bar-highlighted-item .gn-composite-bar-item__icon,.gn-composite-bar_subheader .gn-composite-bar-item__icon,.gn-footer-item .gn-composite-bar-item__icon{color:var(--gn-aside-header-general-item-icon-color,var(--_--item-general-icon-color))}.gn-composite-bar-highlighted-item.gn-composite-bar-item_current .gn-composite-bar-item__icon,.gn-composite-bar_subheader .gn-composite-bar-item_current .gn-composite-bar-item__icon,.gn-footer-item.gn-composite-bar-item_current .gn-composite-bar-item__icon{color:var(--gn-aside-header-item-current-icon-color,var(--gn-aside-header-general-item-icon-color,var(--_--item-general-icon-color)))}.gn-composite-bar-item__icon-tooltip .g-action-tooltip__description{color:var(--g-color-text-light-primary);margin-block-start:0}.gn-composite-bar-item__icon-place{align-items:center;display:flex;flex-shrink:0;height:100%;justify-content:center;width:var(--gn-aside-header-min-width)}.gn-composite-bar-item__title{display:flex;overflow:hidden}.gn-composite-bar-item__title-text{color:var(--gn-aside-header-item-text-color,var(--_--item-text-color));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gn-composite-bar-item_current .gn-composite-bar-item__title-text{color:var(--gn-aside-header-item-current-text-color,var(--_--item-selected-text-color))}.gn-composite-bar-item__title-adornment{margin:0 10px}.gn-composite-bar-item__collapse-item{align-items:center;cursor:pointer;display:flex;height:100%;padding:0 16px;width:100%}.gn-composite-bar-item__collapse-item .gn-composite-bar-item__title-adornment{margin-right:0}.gn-composite-bar-item__menu-divider{border-top:1px solid var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));cursor:default;margin:0 8px;width:100%}.gn-composite-bar-item__collapse-items-popup-content{padding:4px 0}.gn-composite-bar-item__link{align-items:center;display:flex;height:100%;width:100%}.gn-composite-bar-item__link,.gn-composite-bar-item__link:active,.gn-composite-bar-item__link:focus,.gn-composite-bar-item__link:hover,.gn-composite-bar-item__link:visited{color:inherit;outline:none;text-decoration:none}.gn-composite-bar-item__btn-icon{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.gn-composite-bar-item_type_action{background:var(--g-color-base-float);border-radius:var(--gn-composite-bar-item-action-size);box-shadow:0 0 0 1px rgba(0,0,0,.03),0 5px 6px rgba(0,0,0,.12);height:var(--gn-composite-bar-item-action-size);justify-content:center;margin:0 10px 8px;transition:transform .1s ease-out,background-color .15s linear}.gn-composite-bar-item_type_action:focus-visible{box-shadow:0 0 0 2px var(--g-color-line-misc)}.gn-composite-bar-item_type_action:hover{background-color:var(--g-color-base-float-hover)}.gn-composite-bar-item_type_action:active{box-shadow:0 1px 2px var(--g-color-sfx-shadow);transform:scale(.96);transition:none}.gn-composite-bar-item_type_action .gn-composite-bar-item__icon-place{width:var(--gn-composite-bar-item-action-size)}.gn-composite-bar-item_type_action .gn-composite-bar-item__title{margin-right:16px}.gn-composite-bar-item__icon-tooltip_item-type_action{margin-left:10px}.gn-composite-bar-item:not(.gn-composite-bar-item_compact).gn-composite-bar-item_current.gn-composite-bar-item_type_regular{background-color:var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color-active))}.gn-composite-bar-item:not(.gn-composite-bar-item_compact):hover.gn-composite-bar-item_type_regular{background-color:var(--gn-aside-header-item-current-background-color-hover,var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color-active)))}.gn-composite-bar-item:not(.gn-composite-bar-item_compact):not(.gn-composite-bar-item_current):hover.gn-composite-bar-item_type_regular{background-color:var(--gn-aside-header-item-background-color-hover,var(--_--item-background-color-hover))}.gn-composite-bar-item_compact.gn-composite-bar-item_type_action{width:var(--gn-composite-bar-item-action-size)}.gn-composite-bar-item_compact.gn-composite-bar-item_type_action .gn-composite-bar-item__title{margin:0}.gn-composite-bar-item_compact.gn-composite-bar-item_current.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon{background-color:transparent;position:relative}.gn-composite-bar-item_compact.gn-composite-bar-item_current.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon:before{background-color:var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color-active));border-radius:7px;content:"";height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));left:50%;margin-left:-19px;margin-top:-19px;position:absolute;top:50%;width:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));z-index:-1}.gn-composite-bar-item_compact:hover.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon{background-color:transparent;position:relative}.gn-composite-bar-item_compact:hover.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon:before{background-color:var(--gn-aside-header-item-current-background-color-hover,var(--gn-aside-header-item-current-background-color,var(--_--item-selected-background-color-active)));border-radius:7px;content:"";height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));left:50%;margin-left:-19px;margin-top:-19px;position:absolute;top:50%;width:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));z-index:-1}.gn-composite-bar-item_compact:not(.gn-composite-bar-item_current):hover.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon{background-color:transparent;position:relative}.gn-composite-bar-item_compact:not(.gn-composite-bar-item_current):hover.gn-composite-bar-item_type_regular .gn-composite-bar-item__btn-icon:before{background-color:var(--gn-aside-header-item-background-color-hover,var(--_--item-background-color-hover));border-radius:7px;content:"";height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));left:50%;margin-left:-19px;margin-top:-19px;position:absolute;top:50%;width:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size));z-index:-1}');const gr=(0,m.b)("composite-bar-item");function vr(e){let t=o.createElement("div",{className:gr("title-text")},e.title);return e.rightAdornment&&(t=o.createElement(o.Fragment,null,t,o.createElement("div",{className:gr("title-adornment")},e.rightAdornment))),t}const yr=["right-end"],br=[-20,8],wr=e=>{const{item:t,className:n,collapseItems:r,onMouseLeave:i,onMouseEnter:a,enableTooltip:s=!0,popupVisible:l=!1,popupAnchor:c,popupPlacement:d=yr,popupOffset:f=br,popupKeepMounted:p,popupContentClassName:h,renderPopupContent:m,onClosePopup:g,onItemClick:v,onItemClickCapture:y,bringForward:b}=e,{compact:w}=or(),[_,E]=o.useState(!1),x=o.useRef(null),S=c||x,C=o.useRef(null),k=t.type||"regular",O=t.current||!1,T=t.tooltipText||t.title,N=t.icon,I=t.iconSize||18,P=t.iconQa,R=t.id===cr,D=o.useMemo((()=>[{name:"compact",enabled:!0,options:{compact:w},phase:"main",fn(){}}]),[w]),A=o.useCallback((e=>{var t;e instanceof MouseEvent&&e.target&&(null===(t=x.current)||void 0===t?void 0:t.contains(e.target))||null===g||void 0===g||g()}),[g]);if("divider"===t.type)return o.createElement("div",{className:gr("menu-divider")});const j=e=>w?o.createElement(Qn.M,{title:"",description:T,disabled:!s||R&&_||l,placement:"right",className:gr("icon-tooltip",{"item-type":k})},o.createElement("div",{onMouseEnter:()=>null===a||void 0===a?void 0:a(),onMouseLeave:()=>null===i||void 0===i?void 0:i(),className:gr("btn-icon")},e)):e,M=e=>{let{icon:r,title:s}=e;const c=o.createElement(o.Fragment,null,o.createElement("div",{className:gr({type:k,current:O,compact:w},n),ref:x,"data-qa":t.qa,onClick:e=>{R?E(!_):null===v||void 0===v||v(t,!1,e)},onClickCapture:y,onMouseEnter:()=>{w||null===a||void 0===a||a()},onMouseLeave:()=>{w||null===i||void 0===i||i()}},o.createElement("div",{className:gr("icon-place"),ref:C},j(r)),o.createElement("div",{className:gr("title"),title:"string"===typeof t.title?t.title:void 0},s)),m&&Boolean(null===S||void 0===S?void 0:S.current)&&o.createElement(Se.G,{contentClassName:gr("popup",h),open:l,keepMounted:p,placement:d,offset:f,anchorRef:S,onClose:A,modifiers:D},m()));return t.link?o.createElement("a",{href:t.link,className:gr("link")},c):c},L=N?o.createElement(u.J,{qa:P,data:N,size:I,className:gr("icon")}):null,z={icon:L,title:vr(t)};let F,B=null;const U={compact:Boolean(w),collapsed:!1,item:t,ref:x};return"function"===typeof t.itemWrapper?(F=t.itemWrapper(z,M,U),B=b&&t.itemWrapper(z,(e=>{let{icon:t}=e;return j(t)}),U)):(F=M(z),B=b&&j(L)),o.createElement(o.Fragment,null,b&&o.createElement(lr,{iconNode:B,iconRef:C,onClick:e=>null===v||void 0===v?void 0:v(t,!1,e),onClickCapture:y}),F,_&&R&&(null===r||void 0===r?void 0:r.length)&&Boolean(null===S||void 0===S?void 0:S.current)&&o.createElement(_r,Object.assign({},e,{anchorRef:x,onClose:()=>E(!1)})))};function _r(e){let{onItemClick:t,collapseItems:n,anchorRef:r,onClose:i}=e;const{compact:a}=or();return(null===n||void 0===n?void 0:n.length)?o.createElement(Se.G,{placement:ur,open:!0,anchorRef:r,onClose:i},o.createElement("div",{className:gr("collapse-items-popup-content")},o.createElement(Jn.a,{itemClassName:gr("root-collapse-item"),items:n,selectedItemIndex:hr(n),itemHeight:dr,itemsHeight:n.length*dr,virtualized:!1,filterable:!1,sortable:!1,onItemClick:i,renderItem:e=>{const n=n=>{let{title:r}=n;const i=o.createElement("div",{className:gr("collapse-item"),onClick:n=>{null===t||void 0===t||t(e,!0,n)}},r);return e.link?o.createElement("a",{href:e.link,className:gr("link")},i):i},i={title:vr(e)},s={compact:Boolean(a),collapsed:!0,item:e,ref:r};return"function"===typeof e.itemWrapper?e.itemWrapper(i,n,s):n(i)}}))):null}wr.displayName="Item";n(5247);g(".gn-footer-item{height:40px;width:100%}");const Er=(0,m.b)("footer-item"),xr=e=>{var{item:t}=e,n=c(e,["item"]);return o.createElement(wr,Object.assign({},n,{item:Object.assign({iconSize:18},t),className:Er({compact:n.compact}),onItemClick:t.onItemClick,onItemClickCapture:t.onItemClickCapture}))},Sr=o.memo((e=>{let{renderContent:t,size:n}=e;return o.createElement(o.Fragment,null,t({size:n}))}));Sr.displayName="RenderContent";const Cr=e=>{let{size:t,className:n,cssSizeVariableName:r="--gn-aside-header-size",renderContent:i,children:a}=e;return o.createElement("div",{className:n,style:Object.assign({},{[r]:"".concat(t,"px")})},"function"===typeof i?o.createElement(Sr,{size:t,renderContent:i}):a)};var kr=n(50528);g('.g-root{--gn-aside-top-panel-height:0px}.gn-aside-header{--gn-aside-header-min-width:56px;--_--item-icon-background-size:38px;--_--background-color:var(--g-color-base-background);--_--decoration-collapsed-background-color:var(--g-color-base-warning-light);--_--decoration-expanded-background-color:var(--g-color-base-warning-light);--_--vertical-divider-line-color:var(--g-color-line-generic);--_--horizontal-divider-line-color:var(--g-color-line-generic);background-color:var(--g-color-base-background);height:100%;position:relative;width:100%}.gn-aside-header__aside{background-color:var(--gn-aside-header-background-color,var(--_--background-color));box-sizing:border-box;display:flex;flex-direction:column;height:100vh;left:0;margin-top:var(--gn-aside-top-panel-height);max-height:calc(100vh - var(--gn-aside-top-panel-height));position:sticky;top:var(--gn-aside-top-panel-height);width:inherit;z-index:var(--gn-aside-header-z-index,100)}.gn-aside-header__aside:after{background-color:var(--gn-aside-header-divider-vertical-color,var(--_--vertical-divider-line-color));content:"";height:100%;position:absolute;right:0;top:0;width:1px;z-index:2}.gn-aside-header__aside-popup-anchor{inset:0;position:absolute;z-index:1}.gn-aside-header__aside-content{--gradient-height:334px;display:flex;flex-direction:column;height:inherit;overflow-x:hidden;position:relative;user-select:none;width:inherit;z-index:2}.gn-aside-header__aside-content>.gn-aside-header-logo{margin:8px 0}.gn-aside-header__aside-content_with-decoration{background:linear-gradient(180deg,var(--gn-aside-header-decoration-expanded-background-color,var(--_--decoration-expanded-background-color)) calc(var(--gradient-height)*.33),transparent calc(var(--gradient-height)*.88))}.gn-aside-header__aside-custom-background{bottom:0;display:flex;position:absolute;top:0;z-index:-1}.gn-aside-header_compact .gn-aside-header__aside-content{background:transparent}.gn-aside-header__header{--gn-aside-header-header-divider-height:29px;box-sizing:border-box;flex:none;padding-bottom:22px;padding-top:8px;position:relative;width:100%;z-index:1}.gn-aside-header__header .gn-aside-header__header-divider{bottom:0;color:var(--gn-aside-header-decoration-collapsed-background-color,var(--_--decoration-collapsed-background-color));display:none;left:0;position:absolute;z-index:-2}.gn-aside-header__header_with-decoration:before{background-color:var(--gn-aside-header-decoration-collapsed-background-color,var(--_--decoration-collapsed-background-color));content:"";display:none;height:calc(100% - var(--gn-aside-header-header-divider-height));left:0;position:absolute;top:0;width:100%;z-index:-2}.gn-aside-header__header:after{background-color:var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));bottom:12px;content:"";height:1px;left:0;position:absolute;width:100%;z-index:-2}.gn-aside-header_compact .gn-aside-header__header:before,.gn-aside-header_compact .gn-aside-header__header_with-decoration .gn-aside-header__header-divider{display:block}.gn-aside-header_compact .gn-aside-header__header_with-decoration:after{display:none}.gn-aside-header__logo-button-wrapper{width:var(--gn-aside-header-min-width)}.gn-aside-header__logo-button[class],.gn-aside-header__logo-button[class] .g-button__icon{height:var(--gn-aside-header-item-icon-background-size,var(--_--item-icon-background-size))}.gn-aside-header__menu-items{flex-grow:1}.gn-aside-header__footer{display:flex;flex-direction:column;flex-shrink:0;margin:8px 0;width:100%}.gn-aside-header__panels{inset:var(--gn-aside-top-panel-height) 0 0;max-height:calc(100vh - var(--gn-aside-top-panel-height));overflow:auto;position:fixed;z-index:var(--gn-aside-header-panel-z-index,98)}.gn-aside-header__panel{height:100%}.gn-aside-header__pane-container{display:flex;flex-direction:row;outline:none;overflow:visible;user-select:text}.gn-aside-header__pane-top-divider{background-color:var(--gn-aside-header-divider-horizontal-color,var(--_--horizontal-divider-line-color));height:1px;margin-top:-1px}.gn-aside-header__pane-top{background:var(--g-color-base-background);position:fixed;top:0;width:100%;z-index:var(--gn-aside-header-pane-top-z-index,98)}.gn-aside-header__pane-top-alert_centered{display:flex;justify-content:space-around}.gn-aside-header__pane-top-alert_dense{padding-bottom:var(--g-spacing-2);padding-top:var(--g-spacing-2)}.gn-aside-header__content{margin-top:var(--gn-aside-top-panel-height);width:calc(100% - var(--gn-aside-header-size));z-index:var(--gn-aside-header-content-z-index,95)}');const Or=o.lazy((()=>n.e(328).then(n.bind(n,30328)).then((e=>({default:e.TopPanel}))))),Tr=Object.assign((e=>{let{compact:t,className:n,children:r,topAlert:i}=e;const a=t?56:236,s=(0,o.useMemo)((()=>({size:a,compact:t})),[t,a]);return o.createElement(rr,{value:s},o.createElement("div",{className:(0,kr.b)({compact:t},n),style:Object.assign({},{"--gn-aside-header-size":"".concat(a,"px")})},i&&o.createElement(o.Suspense,{fallback:null},o.createElement(Or,{topAlert:i})),o.createElement("div",{className:(0,kr.b)("pane-container")},r)))}),{Content:e=>{let{children:t,renderContent:n}=e;const{size:r}=or();return o.createElement(Cr,{size:r,className:(0,kr.b)("content"),renderContent:n},t)}});var Nr=n(9704);const Ir=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10.5 2.255v-.01c.003-.03.013-.157-.361-.35C9.703 1.668 8.966 1.5 8 1.5c-.967 0-1.703.169-2.138.394-.375.194-.365.32-.362.351v.01c-.003.03-.013.157.362.35C6.297 2.832 7.033 3 8 3c.967 0 1.703-.169 2.139-.394.374-.194.364-.32.361-.351ZM8 4.5c.506 0 .99-.04 1.436-.118l.84 2.352.253.707.717.221c.648.2 1.055.44 1.277.65.192.18.227.31.227.438 0 .14-.055.488-.937.878-.869.384-2.2.622-3.813.622s-2.944-.238-3.813-.622c-.882-.39-.937-.738-.937-.878 0-.128.035-.259.227-.439.222-.209.629-.448 1.277-.649l.717-.221.253-.707.84-2.352c.445.079.93.118 1.436.118Zm4-2.25c0 .738-.433 1.294-1.136 1.669l.825 2.31c1.553.48 2.561 1.32 2.561 2.52 0 1.854-2.402 2.848-5.5 2.985V15a.75.75 0 0 1-1.5 0v-3.266c-3.098-.136-5.5-1.131-5.5-2.984 0-1.2 1.008-2.04 2.561-2.52l.825-2.311C4.433 3.544 4 2.988 4 2.25 4 .75 5.79 0 8 0s4 .75 4 2.25Z",clipRule:"evenodd"})),Pr=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10.5 2.255v-.01c.003-.03.013-.157-.361-.35C9.703 1.668 8.966 1.5 8 1.5c-.967 0-1.703.169-2.138.394-.375.194-.365.32-.362.351v.01c-.003.03-.013.157.362.35C6.297 2.832 7.033 3 8 3c.967 0 1.703-.169 2.139-.394.374-.194.364-.32.361-.351ZM12 2.25c0 .738-.433 1.294-1.136 1.669l.825 2.31c1.553.48 2.561 1.32 2.561 2.52 0 1.854-2.402 2.848-5.5 2.985V15a.75.75 0 0 1-1.5 0v-3.266c-3.098-.136-5.5-1.131-5.5-2.984 0-1.2 1.008-2.04 2.561-2.52l.825-2.311C4.433 3.544 4 2.988 4 2.25 4 .75 5.79 0 8 0s4 .75 4 2.25Z",clipRule:"evenodd"}));var Rr;function Dr(){return Dr=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0||(o[n]=e[n]);return o}function Fr(e,t){return Fr=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Fr(e,t)}function Br(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Fr(e,t)}var Ur,qr,Zr,Hr;function Wr(){if(qr)return Ur;qr=1;return Ur="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}function Vr(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}(function(){if(Hr)return Zr;Hr=1;var e=Wr();function t(){}function n(){}return n.resetWarningCache=t,Zr=function(){function r(t,n,r,o,i,a){if(a!==e){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function o(){return r}r.isRequired=r;var i={array:r,bigint:r,bool:r,func:r,number:r,object:r,string:r,symbol:r,any:r,arrayOf:o,element:r,elementType:r,instanceOf:o,node:r,objectOf:o,oneOf:o,oneOfType:o,shape:o,exact:o,checkPropTypes:n,resetWarningCache:t};return i.PropTypes=i,i}})()();var Gr=!1,$r=o.createContext(null),Kr=function(e){return e.scrollTop},Yr="unmounted",Qr="exited",Jr="entering",Xr="entered",eo="exiting",to=function(e){function t(t,n){var r;r=e.call(this,t,n)||this;var o,i=n&&!n.isMounting?t.enter:t.appear;return r.appearStatus=null,t.in?i?(o=Qr,r.appearStatus=Jr):o=Xr:o=t.unmountOnExit||t.mountOnEnter?Yr:Qr,r.state={status:o},r.nextCallback=null,r}Br(t,e),t.getDerivedStateFromProps=function(e,t){return e.in&&t.status===Yr?{status:Qr}:null};var n=t.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(e){var t=null;if(e!==this.props){var n=this.state.status;this.props.in?n!==Jr&&n!==Xr&&(t=Jr):n!==Jr&&n!==Xr||(t=eo)}this.updateStatus(!1,t)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var e,t,n,r=this.props.timeout;return e=t=n=r,null!=r&&"number"!==typeof r&&(e=r.exit,t=r.enter,n=void 0!==r.appear?r.appear:t),{exit:e,enter:t,appear:n}},n.updateStatus=function(e,t){if(void 0===e&&(e=!1),null!==t)if(this.cancelNextCallback(),t===Jr){if(this.props.unmountOnExit||this.props.mountOnEnter){var n=this.props.nodeRef?this.props.nodeRef.current:Mr.findDOMNode(this);n&&Kr(n)}this.performEnter(e)}else this.performExit();else this.props.unmountOnExit&&this.state.status===Qr&&this.setState({status:Yr})},n.performEnter=function(e){var t=this,n=this.props.enter,r=this.context?this.context.isMounting:e,o=this.props.nodeRef?[r]:[Mr.findDOMNode(this),r],i=o[0],a=o[1],s=this.getTimeouts(),l=r?s.appear:s.enter;!e&&!n||Gr?this.safeSetState({status:Xr},(function(){t.props.onEntered(i)})):(this.props.onEnter(i,a),this.safeSetState({status:Jr},(function(){t.props.onEntering(i,a),t.onTransitionEnd(l,(function(){t.safeSetState({status:Xr},(function(){t.props.onEntered(i,a)}))}))})))},n.performExit=function(){var e=this,t=this.props.exit,n=this.getTimeouts(),r=this.props.nodeRef?void 0:Mr.findDOMNode(this);t&&!Gr?(this.props.onExit(r),this.safeSetState({status:eo},(function(){e.props.onExiting(r),e.onTransitionEnd(n.exit,(function(){e.safeSetState({status:Qr},(function(){e.props.onExited(r)}))}))}))):this.safeSetState({status:Qr},(function(){e.props.onExited(r)}))},n.cancelNextCallback=function(){null!==this.nextCallback&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(e,t){t=this.setNextCallback(t),this.setState(e,t)},n.setNextCallback=function(e){var t=this,n=!0;return this.nextCallback=function(r){n&&(n=!1,t.nextCallback=null,e(r))},this.nextCallback.cancel=function(){n=!1},this.nextCallback},n.onTransitionEnd=function(e,t){this.setNextCallback(t);var n=this.props.nodeRef?this.props.nodeRef.current:Mr.findDOMNode(this),r=null==e&&!this.props.addEndListener;if(n&&!r){if(this.props.addEndListener){var o=this.props.nodeRef?[this.nextCallback]:[n,this.nextCallback],i=o[0],a=o[1];this.props.addEndListener(i,a)}null!=e&&setTimeout(this.nextCallback,e)}else setTimeout(this.nextCallback,0)},n.render=function(){var e=this.state.status;if(e===Yr)return null;var t=this.props,n=t.children;t.in,t.mountOnEnter,t.unmountOnExit,t.appear,t.enter,t.exit,t.timeout,t.addEndListener,t.onEnter,t.onEntering,t.onEntered,t.onExit,t.onExiting,t.onExited,t.nodeRef;var r=zr(t,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return o.createElement($r.Provider,{value:null},"function"===typeof n?n(e,r):o.cloneElement(o.Children.only(n),r))},t}(o.Component);function no(){}to.contextType=$r,to.propTypes={},to.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:no,onEntering:no,onEntered:no,onExit:no,onExiting:no,onExited:no},to.UNMOUNTED=Yr,to.EXITED=Qr,to.ENTERING=Jr,to.ENTERED=Xr,to.EXITING=eo;var ro=function(e,t){return e&&t&&t.split(" ").forEach((function(t){return r=t,void((n=e).classList?n.classList.add(r):function(e,t){return e.classList?!!t&&e.classList.contains(t):-1!==(" "+(e.className.baseVal||e.className)+" ").indexOf(" "+t+" ")}(n,r)||("string"===typeof n.className?n.className=n.className+" "+r:n.setAttribute("class",(n.className&&n.className.baseVal||"")+" "+r)));var n,r}))},oo=function(e,t){return e&&t&&t.split(" ").forEach((function(t){return r=t,void((n=e).classList?n.classList.remove(r):"string"===typeof n.className?n.className=Vr(n.className,r):n.setAttribute("class",Vr(n.className&&n.className.baseVal||"",r)));var n,r}))},io=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),o=0;o{let{visible:t,content:n,children:r,direction:i="left",className:a}=e;const s=o.useRef(null),l="left"===i?void 0:i;return o.createElement(io,{in:t,timeout:300,unmountOnExit:!0,classNames:wo("item-transition",{direction:l}),nodeRef:s},o.createElement("div",{ref:s,className:wo("item",{direction:l},a)},null!==r&&void 0!==r?r:n))},Eo=e=>{let{className:t,children:n,style:r,onVeilClick:i,onEscape:a,preventScrollBody:s=!0}=e,l=!1;o.Children.forEach(n,(e=>{if(o.isValidElement(e)&&e.type===_o){Boolean(e.props.visible)&&(l=!0)}})),o.useEffect((()=>{function e(e){"Escape"===e.key&&(null===a||void 0===a||a())}return l&&window.addEventListener("keydown",e),()=>{window.removeEventListener("keydown",e)}}),[a,l]),(0,jr.y)({enabled:s&&l});const c=o.useRef(null),u=o.useRef(null);return o.createElement(to,{in:l,timeout:{enter:0,exit:300},mountOnEnter:!0,unmountOnExit:!0,nodeRef:c},(e=>{const a=l&&"entered"===e;return o.createElement("div",{ref:c,className:wo(null,t),style:r},o.createElement(io,{in:a,timeout:300,unmountOnExit:!0,classNames:wo("veil-transition"),nodeRef:u},o.createElement("div",{ref:u,className:wo("veil"),onClick:i})),o.Children.map(n,(e=>{if(o.isValidElement(e)&&e.type===_o){const t=Boolean(e.props.visible);return o.cloneElement(e,Object.assign(Object.assign({},e.props),{visible:t&&a}))}return e})))}))};g(".gn-all-pages-list-item{align-items:center;column-gap:var(--g-spacing-4);display:flex;height:40px;padding:0 var(--g-spacing-6);width:100%}.gn-all-pages-list-item__text{flex:1}.gn-all-pages-list-item__icon{color:var(--g-color-text-misc)}");const xo=(0,m.b)("all-pages-list-item"),So=e=>{const{item:t,editMode:n,onToggle:r}=e,i=(0,o.useCallback)((e=>{e.stopPropagation(),e.preventDefault(),r()}),[r]);return o.createElement("div",{className:xo(),onClick:e=>{n&&(e.stopPropagation(),e.preventDefault())}},t.icon?o.createElement(u.J,{className:xo("icon"),data:t.icon,size:t.iconSize}):null,o.createElement("span",{className:xo("text")},t.title),n&&o.createElement(_.z,{onClick:i,view:t.hidden?"flat-secondary":"flat-action"},o.createElement(_.z.Icon,null,t.hidden?o.createElement(Ir,null):o.createElement(Pr,null))))};var Co=(0,y.e)({en:{"menu-item.all-pages.title":"All pages","all-panel.menu.category.allOther":"All other","all-panel.resetToDefault":"Reset to default","all-panel.title.editing":"Editing","all-panel.title.main":"All pages"},ru:{"menu-item.all-pages.title":"\u0412\u0441\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b","all-panel.menu.category.allOther":"\u041e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435","all-panel.resetToDefault":"\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e","all-panel.title.editing":"\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435","all-panel.title.main":"\u0412\u0441\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b"}},"".concat(m.N).concat("AllPagesPanel"));const ko="all-pages";g(".gn-all-pages-panel{box-sizing:border-box;height:100%;min-width:300px;padding:var(--g-spacing-4) var(--g-spacing-6)}.gn-all-pages-panel__content{flex:1;margin:0 calc(var(--g-spacing-6)*-1);overflow:auto}.gn-all-pages-panel__category{padding:0 var(--g-spacing-6)}.gn-all-pages-panel__discoverable-feature-wrapper{display:flex}");const Oo=(0,m.b)("all-pages-panel"),To=e=>{const{startEditIcon:t,onEditModeChanged:n,className:r}=e,{menuItems:i,onMenuItemsChanged:a}=tr(),s=(0,o.useRef)(i);s.current=i;const[l,c]=(0,o.useState)(!1),d=(0,o.useCallback)((()=>{c((e=>!e))}),[]),f=(e=>{const t=(0,o.useMemo)((()=>{const t=e.filter((e=>"divider"!==e.type&&e.id!==ko));return t.sort(((e,t)=>"action"===e.type?1:"action"===t.type?-1:0)),t.reduce(((e,t)=>{const n=t.category||Co("all-panel.menu.category.allOther");return e[n]||(e[n]=[]),e[n].push(t),e}),{})}),[e]);return t})(i);(0,o.useEffect)((()=>{null===n||void 0===n||n(l)}),[l,n]);const p=(0,o.useCallback)((e=>{var t;null===(t=e.onItemClick)||void 0===t||t.call(e,e,!1)}),[]),m=(0,o.useCallback)((e=>{if(!a)return;const t=Object.assign(Object.assign({},e),{hidden:!e.hidden}),n=s.current.filter((e=>e.id!==ko));a(n.map((e=>e.id!==t.id?e:t)))}),[a]),g=(0,o.useCallback)(((e,t,n)=>o.createElement(So,{item:e,editMode:l,onToggle:()=>m(e)})),[l,m]),v=(0,o.useCallback)((()=>{if(!a)return;const e=s.current.filter((e=>e.id!==ko));a(e.map((e=>Object.assign(Object.assign({},e),{hidden:!1}))))}),[a]);return o.createElement(h.k,{className:Oo(null,r),gap:"5",direction:"column"},o.createElement(h.k,{gap:"4",alignItems:"center",justifyContent:"space-between"},o.createElement(w.x,{variant:"subheader-2"},Co(l?"all-panel.title.editing":"all-panel.title.main")),o.createElement(_.z,{selected:l,view:"normal",onClick:d},t||o.createElement(u.J,{data:Kn.Z}))),o.createElement(h.k,{className:Oo("content"),gap:"5",direction:"column"},Object.keys(f).map((e=>o.createElement(h.k,{key:e,direction:"column",gap:"3"},o.createElement(w.x,{className:Oo("category"),variant:"body-1",color:"secondary"},e),o.createElement(Jn.a,{virtualized:!1,filterable:!1,items:f[e],onItemClick:p,renderItem:g}))))),l&&o.createElement(_.z,{onClick:v},Co("all-panel.resetToDefault")))};let No;No="undefined"!==typeof window?window:"undefined"!==typeof self?self:n.g;let Io=null,Po=null;const Ro=No.clearTimeout,Do=No.setTimeout,Ao=No.cancelAnimationFrame||No.mozCancelAnimationFrame||No.webkitCancelAnimationFrame,jo=No.requestAnimationFrame||No.mozRequestAnimationFrame||No.webkitRequestAnimationFrame;function Mo(e){let t,n,r,o,i,a,s;const l="undefined"!==typeof document&&document.attachEvent;if(!l){a=function(e){const t=e.__resizeTriggers__,n=t.firstElementChild,r=t.lastElementChild,o=n.firstElementChild;r.scrollLeft=r.scrollWidth,r.scrollTop=r.scrollHeight,o.style.width=n.offsetWidth+1+"px",o.style.height=n.offsetHeight+1+"px",n.scrollLeft=n.scrollWidth,n.scrollTop=n.scrollHeight},i=function(e){return e.offsetWidth!==e.__resizeLast__.width||e.offsetHeight!==e.__resizeLast__.height},s=function(e){if(e.target.className&&"function"===typeof e.target.className.indexOf&&e.target.className.indexOf("contract-trigger")<0&&e.target.className.indexOf("expand-trigger")<0)return;const t=this;a(this),this.__resizeRAF__&&Io(this.__resizeRAF__),this.__resizeRAF__=Po((function(){i(t)&&(t.__resizeLast__.width=t.offsetWidth,t.__resizeLast__.height=t.offsetHeight,t.__resizeListeners__.forEach((function(n){n.call(t,e)})))}))};let e=!1,l="";r="animationstart";const c="Webkit Moz O ms".split(" ");let u="webkitAnimationStart animationstart oAnimationStart MSAnimationStart".split(" "),d="";{const t=document.createElement("fakeelement");if(void 0!==t.style.animationName&&(e=!0),!1===e)for(let n=0;n div, .contract-trigger:before { content: " "; display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; z-index: -1; } .resize-triggers > div { background: #eee; overflow: auto; } .contract-trigger:before { width: 200%; height: 200%; }',i=n.head||n.getElementsByTagName("head")[0],a=n.createElement("style");a.id="detectElementResize",a.type="text/css",null!=e&&a.setAttribute("nonce",e),a.styleSheet?a.styleSheet.cssText=r:a.appendChild(n.createTextNode(r)),i.appendChild(a)}}(l),i.__resizeLast__={},i.__resizeListeners__=[],(i.__resizeTriggers__=l.createElement("div")).className="resize-triggers";const u=l.createElement("div");u.className="expand-trigger",u.appendChild(l.createElement("div"));const d=l.createElement("div");d.className="contract-trigger",i.__resizeTriggers__.appendChild(u),i.__resizeTriggers__.appendChild(d),i.appendChild(i.__resizeTriggers__),a(i),i.addEventListener("scroll",s,!0),r&&(i.__resizeTriggers__.__animationListener__=function(e){e.animationName===n&&a(i)},i.__resizeTriggers__.addEventListener(r,i.__resizeTriggers__.__animationListener__))}i.__resizeListeners__.push(c)}},removeResizeListener:function(e,t){if(l)e.detachEvent("onresize",t);else if(e.__resizeListeners__.splice(e.__resizeListeners__.indexOf(t),1),!e.__resizeListeners__.length){e.removeEventListener("scroll",s,!0),e.__resizeTriggers__.__animationListener__&&(e.__resizeTriggers__.removeEventListener(r,e.__resizeTriggers__.__animationListener__),e.__resizeTriggers__.__animationListener__=null);try{e.__resizeTriggers__=!e.removeChild(e.__resizeTriggers__)}catch(n){}}}}}null==Ao||null==jo?(Io=Ro,Po=function(e){return Do(e,20)}):(Io=function(e){let[t,n]=e;Ao(t),Ro(n)},Po=function(e){const t=jo((function(){Ro(n),e()})),n=Do((function(){Ao(t),e()}),20);return[t,n]});class Lo extends o.Component{constructor(){super(...arguments),this.state={height:this.props.defaultHeight||0,scaledHeight:this.props.defaultHeight||0,scaledWidth:this.props.defaultWidth||0,width:this.props.defaultWidth||0},this._autoSizer=null,this._detectElementResize=null,this._parentNode=null,this._resizeObserver=null,this._timeoutId=null,this._onResize=()=>{this._timeoutId=null;const{disableHeight:e,disableWidth:t,onResize:n}=this.props;if(this._parentNode){const r=window.getComputedStyle(this._parentNode)||{},o=parseFloat(r.paddingLeft||"0"),i=parseFloat(r.paddingRight||"0"),a=parseFloat(r.paddingTop||"0"),s=parseFloat(r.paddingBottom||"0"),l=this._parentNode.getBoundingClientRect(),c=l.height-a-s,u=l.width-o-i,d=this._parentNode.offsetHeight-a-s,f=this._parentNode.offsetWidth-o-i;(e||this.state.height===d&&this.state.scaledHeight===c)&&(t||this.state.width===f&&this.state.scaledWidth===u)||(this.setState({height:d,width:f,scaledHeight:c,scaledWidth:u}),"function"===typeof n&&n({height:d,scaledHeight:c,scaledWidth:u,width:f}))}},this._setRef=e=>{this._autoSizer=e}}componentDidMount(){const{nonce:e}=this.props;this._autoSizer&&this._autoSizer.parentNode&&this._autoSizer.parentNode.ownerDocument&&this._autoSizer.parentNode.ownerDocument.defaultView&&this._autoSizer.parentNode instanceof this._autoSizer.parentNode.ownerDocument.defaultView.HTMLElement&&(this._parentNode=this._autoSizer.parentNode,null!=this._parentNode&&("undefined"!==typeof ResizeObserver?(this._resizeObserver=new ResizeObserver((()=>{this._timeoutId=setTimeout(this._onResize,0)})),this._resizeObserver.observe(this._parentNode)):(this._detectElementResize=Mo(e),this._detectElementResize.addResizeListener(this._parentNode,this._onResize)),this._onResize()))}componentWillUnmount(){this._parentNode&&(this._detectElementResize&&this._detectElementResize.removeResizeListener(this._parentNode,this._onResize),null!==this._timeoutId&&clearTimeout(this._timeoutId),this._resizeObserver&&(this._resizeObserver.observe(this._parentNode),this._resizeObserver.disconnect()))}render(){const{children:e,defaultHeight:t,defaultWidth:n,disableHeight:r=!1,disableWidth:i=!1,nonce:a,onResize:s,style:l={},tagName:c="div",...u}=this.props,{height:d,scaledHeight:f,scaledWidth:p,width:h}=this.state,m={overflow:"visible"},g={};let v=!1;return r||(0===d&&(v=!0),m.height=0,g.height=d,g.scaledHeight=f),i||(0===h&&(v=!0),m.width=0,g.width=h,g.scaledWidth=p),(0,o.createElement)(c,{ref:this._setRef,style:{...m,...l},...u},!v&&e(g))}}const zo={active:!1,activeIndex:void 0,hideCollapseItemTooltip:!1,lastClickedItemIndex:void 0,setValue:()=>{}},Fo=o.createContext(zo);class Bo extends o.PureComponent{constructor(){super(...arguments),this.state=Object.assign({},zo),this.setValue=e=>{this.setState(Object.assign({},e))}}render(){const{children:e}=this.props;return o.createElement(Fo.Provider,{value:Object.assign(Object.assign({},this.state),{setValue:this.setValue})},e)}}g('.g-root_theme_dark .gn-multiple-tooltip,.g-root_theme_dark-hc .gn-multiple-tooltip{--multiple-tooltip-item-bg-color:var(\n --g-color-base-float-medium,var(--g-color-private-white-100-solid)\n );--multiple-tooltip-item-active-bg-color:var(--g-color-base-float-heavy);--multiple-tooltip-backdrop-background:linear-gradient(90deg,var(--g-color-base-background) 50%,transparent);--multiple-tooltip-backdrop-filter:blur(16px)}.g-root_theme_dark-hc .gn-multiple-tooltip{--multiple-tooltip-item-bg-color:var(\n --g-color-base-float-medium,var(--g-color-private-white-150-solid)\n )}.g-root_theme_light .gn-multiple-tooltip,.g-root_theme_light-hc .gn-multiple-tooltip{--multiple-tooltip-item-bg-color:var(\n --g-color-base-float-medium,var(--g-color-private-black-550-solid)\n );--multiple-tooltip-item-active-bg-color:var(--g-color-base-float-heavy);--multiple-tooltip-backdrop-background:linear-gradient(90deg,var(--g-color-base-background) 50%,transparent);--multiple-tooltip-backdrop-filter:blur(12px)}.gn-multiple-tooltip.gn-multiple-tooltip{background-color:transparent;box-shadow:none}.gn-multiple-tooltip:before{background:var(--multiple-tooltip-backdrop-background);box-shadow:none;content:"";filter:var(--multiple-tooltip-backdrop-filter);height:100%;opacity:.7;position:absolute;width:100%;z-index:-1}.gn-multiple-tooltip__items-container{align-items:flex-start;display:flex;flex-direction:column;padding:32px 40px 32px 12px}.gn-multiple-tooltip__item{align-items:center;background-color:var(--multiple-tooltip-item-bg-color);border-radius:5px;box-sizing:border-box;color:var(--g-color-text-light-primary);display:flex;height:30px;margin-bottom:5px;padding:8px 12px;position:relative;transition:transform .1s ease-in-out}.gn-multiple-tooltip__item:first-child,.gn-multiple-tooltip__item:not(.gn-multiple-tooltip__item_divider)+.gn-multiple-tooltip__item:not(.gn-multiple-tooltip__item_divider){margin-top:5px}.gn-multiple-tooltip__item_divider+.gn-multiple-tooltip__item:not(.gn-multiple-tooltip__item_divider){margin-top:4px}.gn-multiple-tooltip__item_active{background-color:var(--multiple-tooltip-item-active-bg-color);transform:translateX(-12px)}.gn-multiple-tooltip__item_divider{height:15px;margin:0;visibility:hidden}');const Uo=(0,m.b)("multiple-tooltip"),qo=[-32,4],Zo=[{name:"preventOverflow",enabled:!1}],Ho=e=>{let{items:t,open:n,anchorRef:r,placement:i}=e;const{activeIndex:a,hideCollapseItemTooltip:s}=o.useContext(Fo),l=void 0===a?null:t[a];return o.createElement(Se.G,{open:n,anchorRef:r,placement:i,offset:qo,contentClassName:Uo(null),modifiers:Zo,disableLayer:!0},o.createElement("div",{className:Uo("items-container")},t.filter((e=>{let{type:t="regular",id:n}=e;return!s||n!==cr&&"action"!==t})).map(((e,t)=>"divider"===e.type?o.createElement("div",{className:Uo("item",{divider:!0}),key:t},e.title):o.createElement("div",{className:Uo("item",{active:e===l}),key:t},e.title)))))};g(".gn-composite-bar{flex:1 0 auto;min-height:40px;width:100%}.gn-composite-bar .gn-composite-bar__root-menu-item[class]{background-color:transparent}");const Wo=(0,m.b)("composite-bar"),Vo=e=>{let{type:t,items:n,onItemClick:r,collapseItems:i,multipleTooltip:a=!1}=e;const s=(0,o.useRef)(null),l=(0,o.useRef)(null),{setValue:c,active:u,activeIndex:d,lastClickedItemIndex:f}=(0,o.useContext)(Fo),{compact:p}=or();o.useEffect((()=>{function e(){a&&u&&c({active:!1})}return window.addEventListener("blur",e),()=>{window.removeEventListener("blur",e)}}),[a,u,c]);const h=(0,o.useCallback)((e=>{a&&p&&!u&&document.hasFocus()&&d!==f&&e.clientX<=56&&(null===c||void 0===c||c({active:!0}))}),[a,p,u,d,f,c]),m=(0,o.useCallback)((()=>{a&&u&&document.hasFocus()&&(null===c||void 0===c||c({active:!1,lastClickedItemIndex:void 0}))}),[a,u,c]),g=(0,o.useCallback)((e=>()=>{if(a&&document.hasFocus()){let t=u;if(u||e===f||(t=!0),d===e&&u===t)return;c({activeIndex:e,active:t})}}),[a,u,f,d,c]),v=(0,o.useCallback)((()=>{var e;p&&document.hasFocus()&&(null===(e=s.current)||void 0===e||e.activateItem(void 0),!a||void 0===d&&void 0===f||c({activeIndex:void 0,lastClickedItemIndex:void 0}))}),[d,p,f,a,c]),y=(0,o.useCallback)((e=>(t,n,o)=>{p&&a&&e!==f&&t.id!==cr&&c({lastClickedItemIndex:e,active:!1}),null===r||void 0===r||r(t,n,o)}),[p,f,a,r,c]);return o.createElement(o.Fragment,null,o.createElement("div",{ref:l,onMouseEnter:h,onMouseLeave:m},o.createElement(Jn.a,{ref:s,items:n,selectedItemIndex:"menu"===t?hr(n):void 0,itemHeight:fr,itemsHeight:pr,itemClassName:Wo("root-menu-item"),virtualized:!1,filterable:!1,sortable:!1,renderItem:(e,t,n)=>{const r=mr(e)?{item:e}:e,s=mr(e)?!a:e.enableTooltip;return o.createElement(wr,Object.assign({},r,{enableTooltip:s,onMouseEnter:g(n),onMouseLeave:v,onItemClick:y(n),collapseItems:i}))}})),"menu"===t&&a&&o.createElement(Ho,{open:p&&u,anchorRef:l,placement:["right-start"],items:n}))},Go=e=>{let t,{type:n,items:r,menuMoreTitle:i,onItemClick:a,multipleTooltip:s=!1}=e;if(0===r.length)return null;if("menu"===n){const e=function(e){const t=function(e){const t=[];for(const n of e)(n.pinned||"divider"===n.type&&t.length>0&&"divider"!==t[t.length-1].type)&&t.push(n);return t}(e),n=e.filter((e=>e.afterMoreButton));return pr(t)+pr(n)+(t.length===e.length?0:ir)}(r),n=function(e){return{id:cr,title:e,icon:ar.Z,iconSize:18}}(i);t=o.createElement("div",{className:Wo({autosizer:!0}),style:{minHeight:e}},0!==r.length&&o.createElement(Lo,null,(e=>{const t=Number.isNaN(e.width)?0:e.width,i=Number.isNaN(e.height)?0:e.height,{listItems:l,collapseItems:c}=function(e,t,n){var r,o,i;const a=e.filter((e=>e.afterMoreButton)),s=e.filter((e=>!e.afterMoreButton)),l=[...s,...a],c=pr(l);if(c<=t)return{listItems:l,collapseItems:[]};const u=fr(n);l.splice(s.length,0,n);const d=[];let f=c+u,p=l.length;for(;f>t&&0!==p;){p--;const e=l[p];e.pinned||e.id===cr||e.afterMoreButton||("divider"!==e.type?(f-=fr(e),d.unshift(...l.splice(p,1))):p+1{let{className:t}=e;const{onChangeCompact:n,compact:r,expandTitle:i,collapseTitle:a}=tr(),s=(0,o.useCallback)((()=>{null===n||void 0===n||n(!r)}),[r,n]),l=r?i||Qo("button_expand"):a||Qo("button_collapse");return o.createElement("button",{className:ei({compact:r},t),onClick:s,title:l},o.createElement(u.J,{data:Xo,className:ei("icon"),width:"16",height:"10"}))};g(".gn-logo{height:40px}.gn-logo,.gn-logo__logo-btn-place{align-items:center;display:flex;flex-shrink:0}.gn-logo__logo-btn-place{cursor:pointer;justify-content:center}.gn-logo__logo-btn-place .g-button:before{background-color:transparent}.gn-logo__logo{cursor:pointer;font-size:var(--g-text-body-2-font-size);font-weight:var(--g-text-body-font-weight);line-height:var(--g-text-body-2-line-height);vertical-align:middle}.gn-logo__logo-link,.gn-logo__logo-link:active,.gn-logo__logo-link:focus,.gn-logo__logo-link:hover,.gn-logo__logo-link:visited{color:inherit;outline:none;text-decoration:none}.g-root .gn-logo__btn-logo.button2_theme_flat.button2_hovered_yes:before{background-color:transparent}");const ni=(0,m.b)("logo"),ri=e=>{let{text:t,icon:n,iconSrc:r,iconClassName:i,iconSize:a=24,textSize:s=15,href:l,target:c="_self",wrapper:d,onClick:f,compact:p,className:h,buttonWrapperClassName:m,buttonClassName:g,"aria-label":v,"aria-labelledby":y}=e;const b="function"===typeof d;let w;r?w=o.createElement(_.z.Icon,{className:i},o.createElement("img",{alt:"logo icon",src:r,width:a,height:a})):n&&(w=o.createElement(u.J,{data:n,size:a,className:i}));const E=o.createElement(_.z,{view:"flat",size:"l",className:ni("btn-logo",g),component:b?"span":void 0,onClick:f,target:c,rel:"_self"===c?void 0:"noreferrer",href:l,extraProps:{"aria-label":v,"aria-labelledby":y}},w);let x;return x="function"===typeof t?t():o.createElement("div",{className:ni("logo"),style:{fontSize:s}},t),o.createElement("div",{className:ni(null,h)},o.createElement("div",{className:ni("logo-btn-place",m)},b?d(E,Boolean(p)):E),!p&&(b?o.createElement("div",{onClick:f},d(x,Boolean(p))):o.createElement("a",{href:null!==l&&void 0!==l?l:"/",target:c,rel:"_self"===c?void 0:"noreferrer",className:ni("logo-link"),onClick:f},x)))},oi=[],ii=()=>{const{logo:e,onItemClick:t,onClosePanel:n,headerDecoration:r,subheaderItems:i}=tr(),{compact:a}=or(),{onClick:s}=e,l=(0,o.useCallback)((e=>{null===n||void 0===n||n(),null===s||void 0===s||s(e)}),[n,s]);return o.createElement("div",{className:(0,kr.b)("header",{"with-decoration":r})},o.createElement(ri,Object.assign({},e,{onClick:l,compact:a,buttonWrapperClassName:(0,kr.b)("logo-button-wrapper"),buttonClassName:(0,kr.b)("logo-button")})),o.createElement(Go,{type:"subheader",items:i||oi,onItemClick:t}),o.createElement(u.J,{data:Ar,className:(0,kr.b)("header-divider"),width:56,height:29}))},ai=()=>{const{panelItems:e,onClosePanel:t,size:n}=tr();return e?o.createElement(Eo,{className:(0,kr.b)("panels"),onVeilClick:t,onEscape:t,style:{left:n}},e.map((e=>o.createElement(_o,Object.assign({key:e.id},e))))):null},si=o.forwardRef(((e,t)=>{const{size:n,onItemClick:r,headerDecoration:i,multipleTooltip:a,menuMoreTitle:s,renderFooter:l,compact:c,customBackground:u,customBackgroundClassName:d,className:f,hideCollapseButton:p,qa:h}=tr(),m=(()=>{const{menuItems:e,allPagesIsAvailable:t}=tr();return(0,o.useMemo)((()=>{if(!t)return e;let n=0;return e.filter(((e,t,r)=>!e.hidden&&(!(t>0&&"divider"===e.type)||"divider"!==r[n].type&&!r[n].hidden)&&(n=t,!0)))}),[t,e])})(),g=(0,o.useRef)(null);return o.useEffect((()=>{(0,Nr.k)(t,g.current)}),[t]),o.createElement(o.Fragment,null,o.createElement("div",{className:(0,kr.b)("aside",f),style:{width:n},"data-qa":h},o.createElement("div",{className:(0,kr.b)("aside-popup-anchor"),ref:g}),o.createElement("div",{className:(0,kr.b)("aside-content",{"with-decoration":i})},u&&o.createElement("div",{className:(0,kr.b)("aside-custom-background",d)},u),o.createElement(ii,null),(null===m||void 0===m?void 0:m.length)?o.createElement(Go,{type:"menu",items:m,menuMoreTitle:null!==s&&void 0!==s?s:Qo("label_more"),onItemClick:r,multipleTooltip:a}):o.createElement("div",{className:(0,kr.b)("menu-items")}),o.createElement("div",{className:(0,kr.b)("footer")},null===l||void 0===l?void 0:l({size:n,compact:Boolean(c),asideRef:g})),!p&&o.createElement(ti,null))),o.createElement(ai,null))}));var li;si.displayName="FirstPanel",function(e){e.AllPages="all-pages"}(li||(li={}));const ci=[],ui=e=>{const{size:t,onClosePanel:n,menuItems:r,panelItems:i,onMenuItemsChanged:a}=e,[s,l]=(0,o.useState)(),c=o.useMemo((()=>({id:ko,title:Co("menu-item.all-pages.title"),tooltipText:Co("menu-item.all-pages.title"),icon:ar.Z})),[]),u=Boolean(a)&&(!r||(null===r||void 0===r?void 0:r.length)>0);(0,o.useEffect)((()=>{(null===i||void 0===i?void 0:i.some((e=>e.visible)))&&l(void 0)}),[i]);const d=(0,o.useCallback)((()=>{l(void 0),null===n||void 0===n||n()}),[n]),f=(0,o.useCallback)(((e,t,n)=>{var r;e.id===c.id?l((e=>e===li.AllPages?void 0:li.AllPages)):d(),null===(r=e.onItemClick)||void 0===r||r.call(e,e,t,n)}),[d,c]),p=(0,o.useMemo)((()=>u?[...r||ci,Object.assign(Object.assign({},c),{current:s===li.AllPages})]:r||ci),[u,r,s,c]),h=(0,o.useMemo)((()=>u?[...i||[],{id:li.AllPages,content:o.createElement(To,null),visible:s===li.AllPages}]:i),[u,i,s]);return Object.assign(Object.assign({},e),{onClosePanel:d,allPagesIsAvailable:u,menuItems:p,panelItems:h,size:t,onItemClick:f})},di=o.forwardRef(((e,t)=>{const{size:n,compact:r}=or(),i=ui(Object.assign({size:n,compact:r},e));return o.createElement(er,{value:i},o.createElement(si,{ref:t}))}));di.displayName="PageLayoutAside";const fi=o.forwardRef(((e,t)=>{var{compact:n,className:r,topAlert:i}=e,a=c(e,["compact","className","topAlert"]);return o.createElement(Tr,{compact:n,className:r,topAlert:i},o.createElement(di,Object.assign({ref:t},a)),o.createElement(Tr.Content,{renderContent:a.renderContent}))}));var pi;function hi(){return hi=Object.assign?Object.assign.bind():function(e){for(var t=1;ts(!0)},enableTooltip:!a,popupAnchor:n,popupVisible:a,onClosePopup:()=>s(!1),renderPopupContent:()=>(0,le.jsx)("div",{className:gi("ydb-user-wrapper"),children:i})})}var yi;!function(e){e.UserSettings="UserSettings"}(yi||(yi={}));const bi=(new class{constructor(){this.type=void 0,this.entities={}}set(e,t){return this.entities[e]=t,this}get(e){return this.entities[e]}register(e,t){return this.entities[e]=t,this}}).register("StaffCard",(function(e){let{children:t}=e;return(0,le.jsx)(o.Fragment,{children:t})})).register("AsideNavigation",(function(e){const t=(0,pe.k6)(),[n,r]=o.useState(),{user:i}=(0,se.ix)((e=>e.authentication)),[a,s]=(0,se.yu)(He.Ac);return(0,le.jsx)(o.Fragment,{children:(0,le.jsx)(fi,{logo:{text:"YDB",icon:Ot,onClick:()=>t.push("/")},menuItems:e.menuItems,compact:a,onChangeCompact:s,className:gi(),renderContent:()=>e.content,renderFooter:t=>{let{compact:a,asideRef:s}=t;return(0,le.jsxs)(o.Fragment,{children:[(0,le.jsx)(xr,{compact:a,item:{id:"documentation",title:be("navigation-item.documentation"),icon:$n.Z,onItemClick:()=>{window.open("https://ydb.tech/docs","_blank","noreferrer")}}}),(0,le.jsx)(xr,{item:{id:"user-settings",title:be("navigation-item.settings"),icon:Kn.Z,current:n===yi.UserSettings,onItemClick:()=>{r(n===yi.UserSettings?void 0:yi.UserSettings)}},compact:a}),(0,le.jsx)(vi,{isCompact:a,popupAnchor:s,ydbUser:{login:i},children:e.ydbInternalUser})]})},panelItems:[{id:"user-settings",visible:n===yi.UserSettings,content:e.settings}],onClosePanel:()=>{r(void 0)}})})})).register("ErrorBoundary",s.TI);function wi(e){let{store:t,history:n,componentsRegistry:r=bi,children:o}=e;return(0,le.jsx)(i.B6,{children:(0,le.jsx)(a.zt,{store:t,children:(0,le.jsx)(pe.F0,{history:n,children:(0,le.jsx)(Wn.QueryParamProvider,{adapter:Vn,children:(0,le.jsx)(_i,{children:(0,le.jsx)(l.t,{registry:r,children:o})})})})})})}function _i(e){let{children:t}=e;const[n]=(0,se.yu)(He.bw);return(0,le.jsx)(Hn.f,{theme:n,children:t})}const Ei=(0,a.$j)((function(e){return{singleClusterMode:e.singleClusterMode}}))((function(e){let{store:t,history:n,singleClusterMode:r,children:o,userSettings:a=mt({singleClusterMode:r})}=e;return(0,le.jsxs)(wi,{store:t,history:n,children:[(0,le.jsx)(i.ql,{defaultTitle:"YDB Monitoring",titleTemplate:"%s \u2014 YDB Monitoring"}),(0,le.jsx)(Zn,{children:(0,le.jsx)(Ee,{userSettings:a,children:(0,le.jsxs)(s.SV,{children:[(0,le.jsx)(Bn,{singleClusterMode:r,children:o}),(0,le.jsx)("div",{id:"fullscreen-root"})]})})}),(0,le.jsx)(ze,{})]})}));function xi(e){let{monitoring:t,dbName:n,dbType:r,clusterName:o}=e;try{const e=Ci(t);if(e){var i,a;const t=null!==(i=e.host)&&void 0!==i?i:"cluster",s=null!==(a=e.slot)&&void 0!==a?a:"static",l=e.cluster_name||o||"",c=new URL(e.monitoring_url);if(!c.search){const t="Serverless"===r?e.serverless_dashboard:e.dedicated_dashboard;c.pathname+="/".concat(t)}return c.searchParams.has("p.cluster")||c.searchParams.set("p.cluster",l),c.searchParams.set("p.host",t),c.searchParams.set("p.slot",s),c.searchParams.set("p.database",n),c.toString()}}catch{}return""}function Si(e,t){try{const n=Ci(e);if(n){const e=n.cluster_dashboard,r=n.cluster_name||t||"",o=new URL(n.monitoring_url);return!o.search&&e&&(o.pathname+="/".concat(e,"/view")),o.searchParams.has("p.cluster")||o.searchParams.set("p.cluster",r),o.searchParams.set("p.database","-"),o.toString()}}catch{}return""}function Ci(e){try{const t=JSON.parse(e);if("object"===typeof t&&"monitoring_url"in t)return t}catch{}}var ki,Oi=n(19797);function Ti(){return Ti=Object.assign?Object.assign.bind():function(e){for(var t=1;t{const n=null!==(r=e)&&void 0!==r&&r.startsWith("vm-")?"u-".concat(r):r;var r;const o=(0,Di.p9)(t).proxy;return o?Ai+o+"/"+n:Ai+n},Mi=(e,t,n)=>{const{Host:r,Endpoints:o,NodeId:i}=e;if(n&&i){const e=(0,Di.M2)(t);return"".concat(e,"/node/").concat(i,"/")}if(r&&o){var a;const e=null===(a=o.find((e=>"http-mon"===e.Name)))||void 0===a?void 0:a.Address;if(!e||!r)return null;return ji(r+e,t)+"/"}return null};var Li=n(20163);const zi=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Jt.y3,t=arguments.length>1?arguments[1]:void 0;return{getNodeRef:function(){return Mi(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},null!==e&&void 0!==e?e:"",t)}}};function Fi(){const e=(0,pe.TH)(),{clusterName:t}=(0,he.mB)(e),{data:n}=Li.W1.useGetClustersListQuery(void 0),r=o.useMemo((()=>(n||[]).find((e=>e.name===t))),[n,t]),{solomon:i,balancer:a,versions:s,cluster:l}=r||{},[c]=(0,se.yu)(He.IG);return{monitoring:i,balancer:a,versions:s,cluster:l,useClusterBalancerAsBackend:c,additionalNodesProps:zi(a,c)}}const Bi=(0,ge.cn)("extended-cluster"),Ui=e=>{const t=(0,Di.q)(e);return{label:"Balancer",value:(0,le.jsxs)("div",{className:Bi("balancer"),children:[t,(0,le.jsx)(Oi.m,{text:t,size:"s",className:Bi("clipboard-button")})]})}},qi=(e,t,n,r)=>{const o={};if(t&&r){const n=r(t,e);n&&(o.links=[{title:"Monitoring",url:n}])}return n&&(o.info=[Ui(n)]),o},Zi=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{getVersionToColorMap:()=>(0,Ri.n$)((0,Ri.kn)(e))}},Hi=(e,t,n,r,o)=>{const i={prepareTenantBackend:e=>{if(n){if(r)return(0,Di.M2)(n);if(e)return ji(e,n)}}};return t&&o&&(i.getMonitoringLink=(n,r)=>{if(n&&r){const i=o({monitoring:t,dbName:n,dbType:r,clusterName:e});return(0,le.jsx)(Pi,{href:i})}return null}),i};function Wi(e){let{component:t,getMonitoringLink:n,getMonitoringClusterLink:r}=e;const{monitoring:o,balancer:i,versions:a,cluster:s,useClusterBalancerAsBackend:l,additionalNodesProps:c}=Fi();return(0,le.jsx)("div",{className:Bi(),children:(0,le.jsx)(t,{additionalClusterProps:qi(null===s||void 0===s?void 0:s.Name,o,i,r),additionalVersionsProps:Zi(a),additionalTenantsProps:Hi(null===s||void 0===s?void 0:s.Name,o,i,l,n),additionalNodesProps:c})})}function Vi(e){let{component:t}=e;const{additionalNodesProps:n}=Fi();return(0,le.jsx)(t,{additionalNodesProps:n})}function Gi(e){let{component:t,getMonitoringLink:n}=e;const{additionalNodesProps:r,cluster:o,monitoring:i}=Fi(),a={getMonitoringLink:(e,t)=>{if(i&&e&&t&&n){const r=n({monitoring:i,dbName:e,dbType:t,clusterName:null===o||void 0===o?void 0:o.Name});return r?(0,le.jsx)(Pi,{href:r,visible:!0}):null}return null}};return(0,le.jsx)(t,{additionalTenantProps:a,additionalNodesProps:r})}function $i(e){let{store:t,history:n,getMonitoringLink:r=xi,getMonitoringClusterLink:o=Si,userSettings:i,children:a}=e;return(0,le.jsxs)(Ei,{store:t,history:n,userSettings:i,children:[(0,le.jsx)(Sn,{children:e=>{let{component:t}=e;return(0,le.jsx)(Wi,{component:t,getMonitoringLink:r,getMonitoringClusterLink:o})}}),(0,le.jsx)(kn,{children:e=>{let{component:t}=e;return(0,le.jsx)(Vi,{component:t})}}),(0,le.jsx)(Cn,{children:e=>{let{component:t}=e;return(0,le.jsx)(Gi,{component:t,getMonitoringLink:r})}}),a]})}var Ki=n(35215),Yi=n(18193),Qi=n(80839),Ji=n(63660),Xi=n(90058)},90058:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});const r=e=>{e&&e instanceof Function&&n.e(599).then(n.bind(n,40599)).then((t=>{let{getCLS:n,getFID:r,getFCP:o,getLCP:i,getTTFB:a}=t;n(e),r(e),o(e),i(e),a(e)}))}},54665:(e,t,n)=>{"use strict";n.d(t,{By:()=>v,Fz:()=>m,ZP:()=>u,ax:()=>p,ds:()=>g,mB:()=>d,vF:()=>h});var r=n(85198),o=n.n(r),i=n(7856),a=n(63041),s=n.n(a),l=n(27102);const c={clusters:"/".concat("clusters"),cluster:"/".concat("cluster","/:activeTab?"),tenant:"/".concat("tenant"),node:"/".concat("node","/:id/:activeTab?"),pDisk:"/".concat("pDisk"),vDisk:"/".concat("vDisk"),tablet:"/".concat("tablet","/:id"),tabletsFilters:"/tabletsFilters",auth:"/auth"},u=c,d=e=>s().parse(e.search,{ignoreQueryPrefix:!0}),f=e=>{let t=e;const n=/:\d{3,5}/g,r=e.match(n);if(r){const o=r[0];t=e.replace(n,":\\"+o.slice(1))}return t};function p(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n;const a=Boolean(n.backend);l.y3&&!a&&l.dx&&(r={...n,backend:l.y3});const c=Boolean(n.clusterName);l.qw&&!c&&l.dx&&(r={...r,clusterName:l.qw});const u=o()(r)?"":"?".concat(s().stringify(r,{encode:!1,arrayFormat:"repeat"})),d=f(e);return"".concat((0,i.compile)(d)(t)).concat(u)}const h=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return p(window.location.pathname,void 0,e)};function m(e){const{pathname:t,search:n,hash:r}=new URL(e,"http://localhost");return{pathname:t,search:n,hash:r}}function g(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return p(c.pDisk,void 0,{...n,nodeId:t,pDiskId:e})}function v(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return p(c.vDisk,void 0,{...r,nodeId:n,pDiskId:t,vDiskSlotId:e})}},35215:(e,t,n)=>{"use strict";n.d(t,{su:()=>T,Iy:()=>N,LC:()=>I});var r=n(63585),o=n.n(r),i=n(52369),a=n(24089);class s{constructor(){var e=this;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.setApiEndpoint=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";"undefined"!==typeof location&&(t=t.replace("%CURRENT_HOST%",location.host)),e.apiEndpoint=t},this.setCSRFToken=e=>{this._axios.defaults.headers.post["X-CSRF-Token"]=e,this._axios.defaults.headers.put["X-CSRF-Token"]=e,this._axios.defaults.headers.delete["X-CSRF-Token"]=e},this.setDefaultHeader=e=>{let{name:t,value:n,methods:r}=e;const o=this._axios.defaults.headers;Array.isArray(r)?r.forEach((e=>{const r=o[e];r&&r instanceof i.uu&&(r[t]=n)})):o.common[t]=n},this.apiPath=e=>"".concat(this.apiEndpoint).concat(e);const{config:n={},apiEndpoint:r="/api",collector:l={}}=t,c=Object.assign({xsrfCookieName:"",timeout:s.DEFAULT_TIMEOUT,withCredentials:!0},n);this._axios=a.Z.create(c),this._axios.defaults.headers=o()(this._axios.defaults.headers),this.requestTokens={},this.setApiEndpoint(r),this.collectorSettings=l,this.collector={errors:[],requests:[]}}collectRequest(e){let{method:t,url:n,data:r,requestStart:o,response:i,responseError:a,error:s=!1,cancelled:l=!1}=e;const{collectErrors:c,collectRequests:u}=this.collectorSettings;if(!c&&!u)return;const{responseText:d="",responseURL:f=n}=i&&i.request||{},p=s&&a instanceof Error?a.message:"",h={method:t,url:f,time:{start:o,end:Number(new Date)},status:i&&i.status,size:d.length,requestData:r&&JSON.stringify(r,null,2)||"",responseData:i&&i.data&&JSON.stringify(i.data,null,2)||p,isError:s,isCancelled:l};c&&s&&(this.collector.errors=[...this.collector.errors,h].slice(-c)),u&&(this.collector.requests=[...this.collector.requests,h].slice(-u))}getCollectedRequests(){return{errors:[...this.collector.errors],requests:[...this.collector.requests]}}async request(e){const{method:t,url:n,data:r=null,params:o,options:i={},retries:s=0}=e,l=i.requestConfig||{},{concurrentId:c,collectRequest:u=!0,timeout:d,headers:f,onDownloadProgress:p}=i;c&&(this.cancelRequest(c),l.cancelToken=this.createRequestToken(c)),f&&(l.headers=f),"undefined"!==typeof d&&(l.timeout=d);const h=Number(new Date),m={method:t,url:n,data:r,params:o,onDownloadProgress:p};try{const e=await this._axios.request(Object.assign(Object.assign({},l),m));return this.clearRequestToken(c),u&&this.collectRequest(Object.assign(Object.assign({},m),{requestStart:h,response:e})),e.data}catch(g){if(a.Z.isCancel(g))throw{isCancelled:!0,error:g};let t;return this.clearRequestToken(c),t=g.response?g.response:"function"===typeof g.toJSON?g.toJSON():g,u&&this.collectRequest(Object.assign(Object.assign({},m),{requestStart:h,response:t,error:!0,cancelled:a.Z.isCancel(g),responseError:g})),this.handleRequestError(t,(()=>this.request(Object.assign(Object.assign({},e),{retries:s+1}))),s,new Error(g instanceof Error?g.message:"Unknown error"))}}cancelRequest(e){e&&this.requestTokens[e]&&this.requestTokens[e].cancel("Concurrent request")}get(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request({method:"GET",url:e,params:t,options:n})}post(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.request({method:"POST",url:e,data:t,params:n,options:r})}put(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.request({method:"PUT",url:e,data:t,params:n,options:r})}patch(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.request({method:"PATCH",url:e,data:t,params:n,options:r})}delete(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.request({method:"DELETE",url:e,data:t,params:n,options:r})}head(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request({method:"HEAD",url:e,params:t,options:n})}handleRequestError(e){throw e}createRequestToken(e){if(e){const t=a.Z.CancelToken.source();return this.requestTokens[e]=t,t.token}}clearRequestToken(e){e&&this.requestTokens[e]&&delete this.requestTokens[e]}}s.DEFAULT_TIMEOUT=6e4;var l=n(36383);const c="axios-retry";function u(e){return!e.response&&(!!e.code&&(!["ERR_CANCELED","ECONNABORTED"].includes(e.code)&&l(e)))}const d=["get","head","options"],f=d.concat(["put","delete"]);function p(e){return"ECONNABORTED"!==e.code&&(!e.response||429===e.response.status||e.response.status>=500&&e.response.status<=599)}function h(e){var t;return!(null===(t=e.config)||void 0===t||!t.method)&&(p(e)&&-1!==f.indexOf(e.config.method))}function m(e){return u(e)||h(e)}function g(){var e;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;const n=null===t||void 0===t||null===(e=t.response)||void 0===e?void 0:e.headers["retry-after"];if(!n)return 0;let r=1e3*(Number(n)||0);return 0===r&&(r=(new Date(n).valueOf()||0)-Date.now()),Math.max(0,r)}const v={retries:3,retryCondition:m,retryDelay:function(){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;return Math.max(0,g(e))},shouldResetTimeout:!1,onRetry:()=>{},onMaxRetryTimesExceeded:()=>{},validateResponse:null};function y(e,t){const n=function(e,t){return{...v,...t,...e[c]}}(e,t||{});return n.retryCount=n.retryCount||0,n.lastRequestTime=n.lastRequestTime||Date.now(),e[c]=n,n}const b=(e,t)=>{const n=e.interceptors.request.use((e=>{var n;return y(e,t),null!==(n=e[c])&&void 0!==n&&n.validateResponse&&(e.validateStatus=()=>!1),e})),r=e.interceptors.response.use(null,(async n=>{var r;const{config:o}=n;if(!o)return Promise.reject(n);const i=y(o,t);return n.response&&null!==(r=i.validateResponse)&&void 0!==r&&r.call(i,n.response)?n.response:await async function(e,t){const{retries:n,retryCondition:r}=e,o=(e.retryCount||0)e],await s(t.retryCount,n,r),null!==(o=r.signal)&&void 0!==o&&o.aborted?Promise.resolve(e(r)):new Promise(((t,n)=>{var o;const i=setTimeout((()=>t(e(r))),l);null!==(o=r.signal)&&void 0!==o&&o.addEventListener&&r.signal.addEventListener("abort",(()=>{clearTimeout(i),t(e(r))}),{once:!0})}))}(e,i,n,o):(await async function(e,t){e.retryCount>=e.retries&&await e.onMaxRetryTimesExceeded(t,e.retryCount)}(i,n),Promise.reject(n))}));return{requestInterceptorId:n,responseInterceptorId:r}};b.isNetworkError=u,b.isSafeRequestError=function(e){var t;return!(null===(t=e.config)||void 0===t||!t.method)&&(p(e)&&-1!==d.indexOf(e.config.method))},b.isIdempotentRequestError=h,b.isNetworkOrIdempotentRequestError=m,b.exponentialDelay=function(){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;const t=2**(arguments.length>0&&void 0!==arguments[0]?arguments[0]:0)*(arguments.length>2&&void 0!==arguments[2]?arguments[2]:100),n=Math.max(t,g(e));return n+.2*n*Math.random()},b.isRetryableError=p;const w=b;var _=n(27102),E=n(52317),x=n(48169),S=n(27070);const C=e=>{const{cluster:t={}}=e,{cluster:n,balancer:r,solomon:o}=t;return{...n,Name:t.title||(null===n||void 0===n?void 0:n.Name),Balancer:r,Solomon:o}},k=e=>({TenantInfo:null===e||void 0===e?void 0:e.databases});var O=n(18193);class T extends s{constructor(e){super(e),w(this._axios,{retries:3,retryDelay:w.exponentialDelay}),this._axios.interceptors.response.use(null,(function(e){var t;const n=e.response;return n&&401===n.status&&null!==(t=n.data)&&void 0!==t&&t.authUrl?window.location.assign(n.data.authUrl):Promise.reject(e)}))}getPath(e){return"".concat(null!==_.y3&&void 0!==_.y3?_.y3:"").concat(e)}getClusterInfo(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/cluster"),{name:e,tablets:!0},{concurrentId:t||"getClusterInfo",requestConfig:{signal:n}})}getClusterNodes(){let{concurrentId:e,signal:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.get(this.getPath("/viewer/json/sysinfo"),{},{concurrentId:e||"getClusterNodes",requestConfig:{signal:t}})}getNodeInfo(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/sysinfo?enums=true"),{node_id:e},{concurrentId:t,requestConfig:{signal:n}})}getTenants(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/tenantinfo"),{tablets:1,storage:1,cluster_name:e},{concurrentId:t,requestConfig:{signal:n}})}getTenantInfo(e){let{path:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/tenantinfo"),{path:t,tablets:!0,storage:!0},{concurrentId:n||"getTenantInfo|".concat(t),requestConfig:{signal:r}})}getNodes(e){let{visibleEntities:t,type:n="any",tablets:r=!0,sortOrder:o,sortValue:i,...a}=e,{concurrentId:s,signal:l}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const c=(0,S.A)(i,o);return this.get(this.getPath("/viewer/json/nodes?enums=true"),{with:t,type:n,tablets:r,sort:c,...a},{concurrentId:s,requestConfig:{signal:l}})}getCompute(e){let{sortOrder:t,sortValue:n,...r}=e,{concurrentId:o,signal:i}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const a=(0,S.A)(n,t);return this.get(this.getPath("/viewer/json/compute?enums=true"),{sort:a,...r},{concurrentId:o,requestConfig:{signal:i}})}getStorageInfo(e){let{tenant:t,visibleEntities:n,nodeId:r,poolName:o,groupId:i,sortOrder:a,sortValue:s,...l}=e,{concurrentId:c,signal:u}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const d=(0,S.A)(s,a);return this.get(this.getPath("/viewer/json/storage?enums=true"),{tenant:t,node_id:r,pool:o,group_id:i,with:n,sort:d,...l},{concurrentId:c,requestConfig:{signal:u}})}getPDiskInfo(e){let{nodeId:t,pDiskId:n}=e,{concurrentId:r,signal:o}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/pdiskinfo?enums=true"),{filter:"(NodeId=".concat(t).concat(n?";PDiskId=".concat(n):"",")")},{concurrentId:r,requestConfig:{signal:o}})}getVDiskInfo(e){let{vDiskSlotId:t,pDiskId:n,nodeId:r}=e,{concurrentId:o,signal:i}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/vdiskinfo?enums=true"),{node_id:r,filter:"(PDiskId=".concat(n,";VDiskSlotId=").concat(t,")")},{concurrentId:o,requestConfig:{signal:i}})}getGroupInfo(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/storage?enums=true"),{group_id:e},{concurrentId:t,requestConfig:{signal:n}})}getHostInfo(){let{concurrentId:e,signal:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.get(this.getPath("/viewer/json/sysinfo?node_id=.&enums=true"),{concurrentId:e,requestConfig:{signal:t}})}getTabletsInfo(e){let{nodes:t=[],path:n}=e,{concurrentId:r,signal:o}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=t.length>0&&"(NodeId=[".concat(t.join(","),"])");return this.get(this.getPath("/viewer/json/tabletinfo"),{filter:i,path:n,enums:!0},{concurrentId:r,requestConfig:{signal:o}})}getSchema(e){let{path:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/describe"),{path:t,enums:!0,backup:!1,private:!0,partition_config:!0,partition_stats:!0,partitioning_info:!0,subs:1},{concurrentId:n,requestConfig:{signal:r}})}getDescribe(e){let{path:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/describe"),{path:t,enums:!0,partition_stats:!0,subs:0},{concurrentId:n||"getDescribe|".concat(t),requestConfig:{signal:r}})}getSchemaAcl(e){let{path:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/acl"),{path:t,merge_rules:!0},{concurrentId:n||"getSchemaAcl",requestConfig:{signal:r}})}getHeatmapData(e){let{path:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/describe"),{path:t,enums:!0,backup:!1,children:!1,partition_config:!1,partition_stats:!0},{concurrentId:n,requestConfig:{signal:r}})}getNetwork(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/netinfo"),{enums:!0,path:e},{concurrentId:t,requestConfig:{signal:n}})}getTopic(e){let{path:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/describe_topic"),{enums:!0,include_stats:!0,path:t},{concurrentId:n,requestConfig:{signal:r}})}getConsumer(e){let{path:t,consumer:n}=e,{concurrentId:r,signal:o}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/describe_consumer"),{enums:!0,include_stats:!0,path:t,consumer:n},{concurrentId:r||"getConsumer",requestConfig:{signal:o}})}getPoolInfo(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/storage"),{pool:e,enums:!0},{concurrentId:t,requestConfig:{signal:n}})}getTablet(e){let{id:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/tabletinfo?filter=(TabletId=".concat(t,")")),{enums:!0},{concurrentId:n,requestConfig:{signal:r}})}getTabletHistory(e){let{id:t}=e,{concurrentId:n,signal:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/tabletinfo?filter=(TabletId=".concat(t,")")),{enums:!0,merge:!1},{concurrentId:n,requestConfig:{signal:r}})}getNodesList(){let{concurrentId:e,signal:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.get(this.getPath("/viewer/json/nodelist"),{enums:!0},{concurrentId:e,requestConfig:{signal:t}})}getTenantsList(){let{concurrentId:e,signal:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.get(this.getPath("/viewer/json/tenants"),{enums:!0,state:0},{concurrentId:e,requestConfig:{signal:t}})}sendQuery(e){let{schema:t,...n}=e,{concurrentId:r,signal:o}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=!O.r.readUserSettingsValue(E.N1,!0);return this.post(this.getPath("/viewer/json/query?timeout=".concat(6e5,"&base64=").concat(i).concat(t?"&schema=".concat(t):"")),n,{},{concurrentId:r,timeout:54e4,requestConfig:{signal:o}})}getExplainQuery(e,t,n,r){return this.post(this.getPath("/viewer/json/query"),{query:e,database:t,action:n||"explain",syntax:r,timeout:6e5},{})}getExplainQueryAst(e,t){return this.post(this.getPath("/viewer/json/query"),{query:e,database:t,action:"explain-ast",timeout:6e5},{})}getHotKeys(e,t){let{concurrentId:n,signal:r}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.get(this.getPath("/viewer/json/hotkeys"),{path:e,enable_sampling:t},{concurrentId:n||"getHotKeys",requestConfig:{signal:r}})}getHealthcheckInfo(e){let{database:t,maxLevel:n}=e,{concurrentId:r,signal:o}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/healthcheck?merge_records=true"),{tenant:t,max_level:n},{concurrentId:r,requestConfig:{signal:o}})}evictVDisk(e){let{groupId:t,groupGeneration:n,failRealmIdx:r,failDomainIdx:o,vDiskIdx:i}=e;return this.post(this.getPath("/tablets/app?TabletID=".concat("72057594037932033","&exec=1")),{Command:{ReassignGroupDisk:{GroupId:t,GroupGeneration:n,FailRealmIdx:r,FailDomainIdx:o,VDiskIdx:i}}},{},{headers:{Accept:"application/json"}})}restartPDisk(e,t){const n=(0,x.ok)({nodeId:e,pDiskId:t,host:this.getPath("")});return this.post(n,"restartPDisk=",{},{headers:{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}})}killTablet(e){return this.get(this.getPath("/tablets?KillTabletID=".concat(e)),{})}stopTablet(e,t){return this.get(this.getPath("/tablets/app?TabletID=".concat(t,"&page=StopTablet&tablet=").concat(e)),{})}resumeTablet(e,t){return this.get(this.getPath("/tablets/app?TabletID=".concat(t,"&page=ResumeTablet&tablet=").concat(e)),{})}getTabletDescribe(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get(this.getPath("/viewer/json/describe"),{schemeshard_id:null===e||void 0===e?void 0:e.SchemeShard,path_id:null===e||void 0===e?void 0:e.PathId},{concurrentId:t,requestConfig:{signal:n}})}getChartData(e){let{target:t,from:n,until:r,maxDataPoints:o,database:i}=e,{concurrentId:a,signal:s}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const l="".concat(t,"&from=").concat(n,"&until=").concat(r,"&maxDataPoints=").concat(o,"&format=json");return this.post(this.getPath("/viewer/json/render?database=".concat(i)),l,{},{concurrentId:a,headers:{"Content-Type":"application/x-www-form-urlencoded"},requestConfig:{signal:s}})}postSetting(e,t,n){return this.request({method:"PATCH",url:e,data:{[t]:n}})}authenticate(e,t){return this.post(this.getPath("/login"),{user:e,password:t},{})}logout(){return this.post(this.getPath("/logout"),{},{})}whoami(){return this.get(this.getPath("/viewer/json/whoami"),{})}autocomplete(e){const{table:t,...n}=e,r=null===t||void 0===t?void 0:t.join(",");return this.get(this.getPath("/viewer/json/autocomplete"),{...n,table:r},{concurrentId:"sql-autocomplete"})}getClustersList(e){let{signal:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get("".concat(_.Vq||"","/meta/clusters"),null,{requestConfig:{signal:t}})}createSchemaDirectory(e,t){let{signal:n}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.post(this.getPath("/scheme/directory"),{},{database:e,path:t},{requestConfig:{signal:n}})}}class N extends T{getClusterInfo(e){let{signal:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get("".concat(_.Vq||"","/meta/cluster"),{name:e},{concurrentId:"getCluster".concat(e),requestConfig:{signal:t}}).then(C)}getTenants(e){let{concurrentId:t,signal:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.get("".concat(_.Vq||"","/meta/cp_databases"),{cluster_name:e},{concurrentId:t,requestConfig:{signal:n}}).then(k)}}function I(){let{webVersion:e=!1,withCredentials:t=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const n={withCredentials:t};return e?new N({config:n}):new T({config:n})}},18193:(e,t,n)=>{"use strict";n.d(t,{r:()=>l,t:()=>s});var r=n(24015),o=n(52317),i=n(39623),a=n(47651);const s={[o.bw]:"system",[o.Px]:void 0,[o.yT]:!1,[o.UF]:!0,[o.Rq]:!0,[o.N1]:!0,[o.DG]:[],[o.pf]:r.m2.query,[o.Wm]:i.wZ.script,[o.w7]:i.Jf.execute,[o.Ac]:!0,[o.ZY]:[],[o.Qy]:!1,[o.IG]:!0,[o.fo]:!1,[o.y6]:!0,[o.XX]:!0,[o.RI]:!1,[o.KU]:0,[o.Tf]:!1};const l=new class{constructor(){this.extractSettingsFromLS=e=>Object.entries(e).reduce(((e,t)=>{let[n,r]=t;return e[n]=this.readUserSettingsValue(n,r),e}),{}),this.readValueFromLS=e=>{try{const t=localStorage.getItem(e);return(0,a.Mo)(t)}catch{return}},this.setValueToLS=(e,t)=>{try{"string"===typeof t?localStorage.setItem(e,t):localStorage.setItem(e,JSON.stringify(t))}catch{}}}readUserSettingsValue(e,t){var n;return null!==(n=this.readValueFromLS(e))&&void 0!==n?n:t}setUserSettingsValue(e,t){return this.setValueToLS(e,t)}}},67510:(e,t,n)=>{"use strict";n.d(t,{y3:()=>T,EZ:()=>N,qw:()=>I,xC:()=>F,j4:()=>M,Vq:()=>L,dx:()=>j});var r=n(1399),o=n(91668),i=n(91087),a=n(35215),s=n(92820);const l=e=>{let{href:t,singleClusterMode:n,customBackend:r}=e;if(n){if(r){const{backend:e}=s.parse(t,!0).query;return{basename:"/",backend:e?String(e):r}}{const e=window.location.pathname.match(/.*(?=\/monitoring)/)||[],t=e.length>0?e[0]:"";return{basename:[t,"monitoring"].filter(Boolean).join("/"),backend:t||""}}}{const{backend:e,clusterName:n}=s.parse(t,!0).query;return{basename:"/",backend:e?String(e):e,clusterName:n?String(n):n}}};var c=n(89795),u=n(905),d=n(80839),f=n(3027),p=n(84142),h=n.n(p),m=n(25484),g=n.n(m),v=n(3186),y=n.n(v),b=n(63041),w=n.n(b),_=n(94909),E=n(58102),x=n(43903),S=n(78103),C=n(93717);const k={global:{problemFilter:{stateKey:"settings.problemFilter",initialState:d.E3.problemFilter}},"/tenant":{sort:{stateKey:"heatmap.sort",initialState:C.E3.sort,type:"bool"},heatmap:{stateKey:"heatmap.heatmap",initialState:C.E3.heatmap,type:"bool"},currentMetric:{stateKey:"heatmap.currentMetric",initialState:C.E3.currentMetric},stateFilter:{stateKey:"tablets.stateFilter",type:"array"},typeFilter:{stateKey:"tablets.typeFilter",type:"array"},tenantPage:{stateKey:"tenant.tenantPage"},queryTab:{stateKey:"tenant.queryTab"},diagnosticsTab:{stateKey:"tenant.diagnosticsTab"},summaryTab:{stateKey:"tenant.summaryTab"},metricsTab:{stateKey:"tenant.metricsTab"},shardsMode:{stateKey:"shardsWorkload.mode"},shardsDateFrom:{stateKey:"shardsWorkload.from",type:"number"},shardsDateTo:{stateKey:"shardsWorkload.to",type:"number"},topQueriesDateFrom:{stateKey:"executeTopQueries.from",type:"number"},topQueriesDateTo:{stateKey:"executeTopQueries.to",type:"number"},selectedConsumer:{stateKey:"partitions.selectedConsumer"}},"/cluster/tenants":{search:{stateKey:"tenants.searchValue"}}};function O(e,t){return y()({},e,t.query)}let T,N,I,P="";function R(e,t,n){const r=(0,S.stateToParams)(e,t,n);let{location:o}=r;if(o.search===P)return{location:n,shouldPush:!1};{const e=/\?\w+/;return P=o.search,e.test(n.search)&&(o=function(e,t){const{search:n,...r}=e,o=w().parse(t.search.slice(1)),i=(0,E.getMatchingDeclaredPath)(k,e),a=i&&k[i];h()(g()(a),(e=>{delete o[e]})),h()(g()(k.global||{}),(e=>{delete o[e]}));const s=w().stringify(o,{encoder:encodeURIComponent}),l=n.startsWith("?")?"&":"?";return{search:"".concat(n).concat(l).concat(s),...r}}(o,n)),{...r,location:o}}}function D(e,t,n){return(r,o)=>{const i=((n,r)=>{const{type:o,payload:i}=r;if(!i)return n;if(_.LOCATION_POP===o||_.LOCATION_PUSH===o){const r=i;return r.query=(0,x.parseQuery)(e,i),t(n,r)}return n})(n(r,o),o);return i!==r?i:r}}function A(e,t,n,o){const{locationMiddleware:a,reducersWithLocation:s}=function(e,t){const{locationMiddleware:n}=(0,i.zl)(k,O,e,t,R);return{locationMiddleware:n,reducersWithLocation:D(k,O,t)}}(t,e),l=(0,r.xC)({reducer:s,preloadedState:n,middleware:e=>e({immutableCheck:{ignoredPaths:["tooltip.currentHoveredRef"]},serializableCheck:{ignoredPaths:["tooltip.currentHoveredRef","api"],ignoredActions:[f.MB,"api/executeQuery/rejected"]}}).concat(a,...o)});return(0,d.vD)(l),l}const j=window.web_version,M=window.custom_backend,L=window.meta_backend,z="undefined"==="".concat(L);function F(){let{aRootReducer:e=c.Z,singleClusterMode:t=z,api:n=(0,a.LC)({webVersion:j,withCredentials:!M})}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};({backend:T,basename:N,clusterName:I}=l({href:window.location.href,singleClusterMode:t,customBackend:M}));const r=(0,o.lX)({basename:N}),s=A(e,r,{singleClusterMode:t},[u.h.middleware]);return(0,i.C1)(s,r),window.api=n,{history:r,store:s}}},27102:(e,t,n)=>{"use strict";n.d(t,{EZ:()=>r.EZ,QW:()=>o.Q,Vq:()=>r.Vq,dx:()=>r.dx,j4:()=>r.j4,qw:()=>r.qw,xC:()=>r.xC,y3:()=>r.y3});var r=n(67510),o=n(89795)},905:(e,t,n)=>{"use strict";n.d(t,{h:()=>w});var r=n(17095),o=n(38907),i=n(1399),a=n(68963),s=n(87555),l=n(36313);function c(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{let{endpointName:t,queryArgs:n}=e,r="";const i=null===d||void 0===d?void 0:d.get(n);if("string"===typeof i)r=i;else{const e=JSON.stringify(n,((e,t)=>(0,o.PO)(t)?Object.keys(t).sort().reduce(((e,n)=>(e[n]=t[n],e)),{}):t));(0,o.PO)(n)&&(null===d||void 0===d||d.set(n,e)),r=e}return"".concat(t,"(").concat(r,")")},p=Symbol();function h(e,t,n,r){const o=(0,a.useMemo)((()=>({queryArgs:e,serialized:"object"==typeof e?t({queryArgs:e,endpointDefinition:n,endpointName:r}):e})),[e,t,n,r]),i=(0,a.useRef)(o);return(0,a.useEffect)((()=>{i.current.serialized!==o.serialized&&(i.current=o)}),[o]),i.current.serialized===o.serialized?i.current.queryArgs:e}function m(e){const t=(0,a.useRef)(e);return(0,a.useEffect)((()=>{(0,s.wU)(t.current,e)||(t.current=e)}),[e]),(0,s.wU)(t.current,e)?t.current:e}var g="undefined"!==typeof window&&window.document&&window.document.createElement?a.useLayoutEffect:a.useEffect,v=e=>e.isUninitialized?{...e,isUninitialized:!1,isFetching:!0,isLoading:void 0===e.data,status:r.oZ.pending}:e;var y=Symbol();var b=(0,r.Tk)((0,r.hF)(),function(){let{batch:e=s.dC,hooks:t={useDispatch:s.I0,useSelector:s.v9,useStore:s.oR},createSelector:n=l.P1,unstable__sideEffectsInRender:o=!1,...d}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{name:y,init(l,d,y){let{serializeQueryArgs:b}=d;const w=l,{buildQueryHooks:_,buildMutationHook:E,usePrefetch:x}=function(e){let{api:t,moduleOptions:{batch:n,hooks:{useDispatch:o,useSelector:l,useStore:c},unstable__sideEffectsInRender:u,createSelector:d},serializeQueryArgs:y,context:b}=e;const w=u?e=>e():a.useEffect;return{buildQueryHooks:function(e){const u=function(n){let{refetchOnReconnect:s,refetchOnFocus:l,refetchOnMountOrArgChange:c,skip:u=!1,pollingInterval:d=0,skipPollingIfUnfocused:p=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{initiate:g}=t.endpoints[e],v=o(),y=(0,a.useRef)();if(!y.current){const e=v(t.internalActions.internal_getRTKQSubscriptions());y.current=e}const _=h(u?r.CN:n,f,b.endpointDefinitions[e],e),E=m({refetchOnReconnect:s,refetchOnFocus:l,pollingInterval:d,skipPollingIfUnfocused:p}),x=(0,a.useRef)(!1),S=(0,a.useRef)();let{queryCacheKey:C,requestId:k}=S.current||{},O=!1;C&&k&&(O=y.current.isRequestSubscribed(C,k));const T=!O&&x.current;return w((()=>{x.current=O})),w((()=>{T&&(S.current=void 0)}),[T]),w((()=>{var e;const t=S.current;if(_===r.CN)return null===t||void 0===t||t.unsubscribe(),void(S.current=void 0);const n=null===(e=S.current)||void 0===e?void 0:e.subscriptionOptions;if(t&&t.arg===_)E!==n&&t.updateSubscriptionOptions(E);else{null===t||void 0===t||t.unsubscribe();const e=v(g(_,{subscriptionOptions:E,forceRefetch:c}));S.current=e}}),[v,g,c,_,E,T]),(0,a.useEffect)((()=>()=>{var e;null===(e=S.current)||void 0===e||e.unsubscribe(),S.current=void 0}),[]),(0,a.useMemo)((()=>({refetch:()=>{var e;if(!S.current)throw new Error((0,i.rJ)(38));return null===(e=S.current)||void 0===e?void 0:e.refetch()}})),[])},E=function(){let{refetchOnReconnect:r,refetchOnFocus:i,pollingInterval:s=0,skipPollingIfUnfocused:l=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{initiate:c}=t.endpoints[e],u=o(),[d,f]=(0,a.useState)(p),h=(0,a.useRef)(),g=m({refetchOnReconnect:r,refetchOnFocus:i,pollingInterval:s,skipPollingIfUnfocused:l});w((()=>{var e;const t=null===(e=h.current)||void 0===e?void 0:e.subscriptionOptions;var n;g!==t&&(null===(n=h.current)||void 0===n||n.updateSubscriptionOptions(g))}),[g]);const v=(0,a.useRef)(g);w((()=>{v.current=g}),[g]);const y=(0,a.useCallback)((function(e){let t,r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return n((()=>{var n;null===(n=h.current)||void 0===n||n.unsubscribe(),h.current=t=u(c(e,{subscriptionOptions:v.current,forceRefetch:!r})),f(e)})),t}),[u,c]);return(0,a.useEffect)((()=>()=>{var e;null===h||void 0===h||null===(e=h.current)||void 0===e||e.unsubscribe()}),[]),(0,a.useEffect)((()=>{d===p||h.current||y(d,!0)}),[d,y]),(0,a.useMemo)((()=>[y,d]),[y,d])},x=function(n){let{skip:o=!1,selectFromResult:i}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{select:u}=t.endpoints[e],f=h(o?r.CN:n,y,b.endpointDefinitions[e],e),p=(0,a.useRef)(),m=(0,a.useMemo)((()=>d([u(f),(e,t)=>t,e=>f],_,{memoizeOptions:{resultEqualityCheck:s.wU}})),[u,f]),v=(0,a.useMemo)((()=>i?d([m],i,{devModeChecks:{identityFunctionCheck:"never"}}):m),[m,i]),w=l((e=>v(e,p.current)),s.wU),E=c(),x=m(E.getState(),p.current);return g((()=>{p.current=x}),[x]),w};return{useQueryState:x,useQuerySubscription:u,useLazyQuerySubscription:E,useLazyQuery(e){const[t,n]=E(e),r=x(n,{...e,skip:n===p}),o=(0,a.useMemo)((()=>({lastArg:n})),[n]);return(0,a.useMemo)((()=>[t,r,o]),[t,r,o])},useQuery(e,t){const n=u(e,t),o=x(e,{selectFromResult:e===r.CN||null!==t&&void 0!==t&&t.skip?void 0:v,...t}),{data:i,status:s,isLoading:l,isSuccess:c,isError:d,error:f}=o;return(0,a.useDebugValue)({data:i,status:s,isLoading:l,isSuccess:c,isError:d,error:f}),(0,a.useMemo)((()=>({...o,...n})),[o,n])}}},buildMutationHook:function(e){return function(){let{selectFromResult:r,fixedCacheKey:i}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{select:c,initiate:u}=t.endpoints[e],f=o(),[p,h]=(0,a.useState)();(0,a.useEffect)((()=>()=>{null!==p&&void 0!==p&&p.arg.fixedCacheKey||null===p||void 0===p||p.reset()}),[p]);const m=(0,a.useCallback)((function(e){const t=f(u(e,{fixedCacheKey:i}));return h(t),t}),[f,u,i]),{requestId:g}=p||{},v=(0,a.useMemo)((()=>c({fixedCacheKey:i,requestId:null===p||void 0===p?void 0:p.requestId})),[i,p,c]),y=(0,a.useMemo)((()=>r?d([v],r):v),[r,v]),b=l(y,s.wU),w=null==i?null===p||void 0===p?void 0:p.arg.originalArgs:void 0,_=(0,a.useCallback)((()=>{n((()=>{p&&h(void 0),i&&f(t.internalActions.removeMutationResult({requestId:g,fixedCacheKey:i}))}))}),[f,i,p,g]),{endpointName:E,data:x,status:S,isLoading:C,isSuccess:k,isError:O,error:T}=b;(0,a.useDebugValue)({endpointName:E,data:x,status:S,isLoading:C,isSuccess:k,isError:O,error:T});const N=(0,a.useMemo)((()=>({...b,originalArgs:w,reset:_})),[b,w,_]);return(0,a.useMemo)((()=>[m,N]),[m,N])}},usePrefetch:function(e,n){const r=o(),i=m(n);return(0,a.useCallback)(((n,o)=>r(t.util.prefetch(e,n,{...i,...o}))),[e,r,i])}};function _(e,t,n){var r,o;if(null!==(r=t)&&void 0!==r&&r.endpointName&&e.isUninitialized){const{endpointName:e}=t,r=b.endpointDefinitions[e];y({queryArgs:t.originalArgs,endpointDefinition:r,endpointName:e})===y({queryArgs:n,endpointDefinition:r,endpointName:e})&&(t=void 0)}let i=e.isSuccess?e.data:null===(o=t)||void 0===o?void 0:o.data;void 0===i&&(i=e.data);const a=void 0!==i,s=e.isLoading,l=!a&&s,c=e.isSuccess||s&&a;return{...e,data:i,currentData:e.data,isFetching:s,isLoading:l,isSuccess:c}}}({api:l,moduleOptions:{batch:e,hooks:t,unstable__sideEffectsInRender:o,createSelector:n},serializeQueryArgs:b,context:y});return c(w,{usePrefetch:x}),c(y,{batch:e}),{injectEndpoint(e,t){if("query"===t.type){const{useQuery:t,useLazyQuery:n,useLazyQuerySubscription:r,useQueryState:o,useQuerySubscription:i}=_(e);c(w.endpoints[e],{useQuery:t,useLazyQuery:n,useLazyQuerySubscription:r,useQueryState:o,useQuerySubscription:i}),l["use".concat(u(e),"Query")]=t,l["useLazy".concat(u(e),"Query")]=n}else if(function(e){return"mutation"===e.type}(t)){const t=E(e);c(w.endpoints[e],{useMutation:t}),l["use".concat(u(e),"Mutation")]=t}}}}}}());const w=b({baseQuery:function(){throw new Error("When using `fakeBaseQuery`, all queries & mutations must use the `queryFn` definition syntax.")},endpoints:()=>({}),invalidationBehavior:"immediately",tagTypes:["All"]});Symbol()},14146:(e,t,n)=>{"use strict";n.d(t,{PR:()=>u,Pq:()=>o,YR:()=>l,ZP:()=>d,kS:()=>c});var r=n(76765);const o=(0,r.U)("authentication","SET_UNAUTHENTICATED"),i=(0,r.U)("authentication","SET_AUTHENTICATED"),a=(0,r.U)("authentication","FETCH_USER"),s={isAuthenticated:!0,user:"",error:void 0},l=(e,t)=>(0,r.Sz)({request:window.api.authenticate(e,t),actions:i}),c=()=>(0,r.Sz)({request:window.api.logout(),actions:o}),u=()=>(0,r.Sz)({request:window.api.whoami(),actions:a,dataHandler:e=>{const{UserSID:t,AuthType:n,IsMonitoringAllowed:r}=e;return{user:"Login"===n?t:void 0,isUserAllowedToMakeChanges:!1!==r}}}),d=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case o.SUCCESS:return{...e,isAuthenticated:!1,user:"",error:void 0};case i.SUCCESS:return{...e,isAuthenticated:!0,error:void 0};case i.FAILURE:return{...e,error:t.error};case a.SUCCESS:{const{user:n,isUserAllowedToMakeChanges:r}=t.data;return{...e,user:n,isUserAllowedToMakeChanges:r}}default:return{...e}}}},77915:(e,t,n)=>{"use strict";n.d(t,{UM:()=>m,ZP:()=>h,LQ:()=>p});var r=n(1399),o=n(81003),i=n(52317),a=n(39623),s=n(905);const l=e=>{const t=(0,a.gY)(e).result,n={};return null===t||void 0===t||t.forEach((e=>{const{PDiskFilter:t,ErasureSpecies:r,CurrentAvailableSize:o,CurrentAllocatedSize:i,CurrentGroupsCreated:a,AvailableGroupsToCreate:s}=e,l=Number(a)||0,c=l+(Number(s)||0),u=Number(i)||0,d=Number(o)||0,f=t&&"string"===typeof t&&(e=>{var t,n;const r=null===(t=e.match(/^Type:(?[A-Za-z]+)/))||void 0===t||null===(n=t.groups)||void 0===n?void 0:n.type;return"ROT"===r?"HDD":r})(t);if(f&&r&&"string"===typeof r&&l){const e={diskType:f,erasure:r,createdGroups:l,totalGroups:c,allocatedSize:u,availableSize:d};if(n[f])if(n[f][r]){const e={...n[f][r]};n[f][r]={diskType:f,erasure:r,createdGroups:e.createdGroups+l,totalGroups:e.totalGroups+c,allocatedSize:e.allocatedSize+u,availableSize:e.availableSize+d}}else n[f][r]=e;else n[f]={[r]:e}}})),n},c=localStorage.getItem(i.S7);let u;u=(0,o.V2)(c)?c:o.xu.overview;const d={defaultClusterTab:u},f=(0,r.oM)({name:"cluster",initialState:d,reducers:{setDefaultClusterTab(e,t){e.defaultClusterTab=t.payload}}});function p(e){return t=>{(0,o.V2)(e)&&(localStorage.setItem(i.S7,e),t(f.actions.setDefaultClusterTab(e)))}}const h=f.reducer,m=s.h.injectEndpoints({endpoints:e=>({getClusterInfo:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{const t=await window.api.getClusterInfo(e,{signal:n}),r=t.Domain;if(!r)return{data:{clusterData:t}};try{const e=(e=>"\nSELECT \n PDiskFilter,\n ErasureSpecies,\n CurrentAvailableSize,\n CurrentAllocatedSize,\n CurrentGroupsCreated,\n AvailableGroupsToCreate\n FROM `".concat(e,"/.sys/ds_storage_stats`\n ORDER BY CurrentGroupsCreated DESC;\n"))(r),n=await window.api.sendQuery({schema:"modern",query:e,database:r,action:"execute-scan"});return(0,a.gW)(n)?{data:{clusterData:t}}:{data:{clusterData:t,groupsStats:l(n)}}}catch{return{data:{clusterData:t}}}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"})},20163:(e,t,n)=>{"use strict";n.d(t,{g_:()=>c,W1:()=>u,ZP:()=>l});var r=n(1399),o=n(905),i=n(90860);const a=e=>{const{clusters:t=[]}=e;let n=new Map;t.forEach((e=>{let{versions:t=[]}=e;n=(0,i.kn)(t,n)}));const r=(0,i.n$)(n);return t.map((e=>({...e,preparedVersions:(0,i.B_)(e.versions,r)})))},s=(0,r.oM)({name:"clusters",initialState:{clusterName:"",status:[],service:[],version:[]},reducers:{changeClustersFilters:(e,t)=>({...e,...t.payload})}}),l=s.reducer,{changeClustersFilters:c}=s.actions,u=o.h.injectEndpoints({endpoints:e=>({getClustersList:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{const e=await window.api.getClustersList(void 0,{signal:n});return{data:a(e)}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"})},83786:(e,t,n)=>{"use strict";n.d(t,{AJ:()=>w,B8:()=>_,K0:()=>E,NU:()=>b,ZP:()=>S,hO:()=>y,mg:()=>v,qV:()=>x});var r=n(18193),o=n(52317),i=n(39623),a=n(76765),s=n(905);const l=20,c=((0,a.U)("query","SEND_QUERY"),"query/CHANGE_USER_INPUT"),u="query/SAVE_QUERY_TO_HISTORY",d="query/GO_TO_PREVIOUS_QUERY",f="query/GO_TO_NEXT_QUERY",p="query/SET_TENANT_PATH",h=r.r.readUserSettingsValue(o.if,[]),m=h.length-l,g={loading:!1,input:"",history:{queries:h.slice(m<0?0:m).map((function(e){if("string"===typeof e)return{queryText:e};return e})),currentIndex:h.length>l?l-1:h.length-1}},v=s.h.injectEndpoints({endpoints:e=>({executeQuery:e.mutation({queryFn:async e=>{let{query:t,database:n,mode:r,schema:o="modern"}=e,a="execute",s=i.jM.yql;"pg"===r?(a="execute-query",s=i.jM.pg):r&&(a="execute-".concat(r));try{const e=await window.api.sendQuery({schema:o,query:t,database:n,action:a,syntax:s,stats:"full"});if((0,i.gW)(e))return{error:e};return{data:(0,i.gY)(e)}}catch(l){return{error:l}}}})}),overrideExisting:"throw"}),y=(e,t)=>({type:u,data:{queryText:e,mode:t}}),b=()=>({type:d}),w=()=>({type:f}),_=e=>{let{input:t}=e;return{type:c,data:{input:t}}},E=e=>({type:p,data:e}),x=e=>e.executeQuery.history.queries;const S=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:g,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case c:return{...e,input:t.data.input};case u:{const n=t.data.queryText,a=t.data.mode===i.wZ.pg?i.jM.pg:void 0,s=[...e.history.queries,{queryText:n,syntax:a}].slice(e.history.queries.length>=l?1:0);r.r.setUserSettingsValue(o.if,s);const c=s.length-1;return{...e,history:{queries:s,currentIndex:c}}}case d:{const t=e.history.currentIndex;if(t<=0)return e;const n=t-1,r=e.history.queries[n];return{...e,history:{...e.history,currentIndex:n},input:r.queryText}}case f:{const t=e.history.queries.length-1,n=e.history.currentIndex;if(n>=t)return e;const r=n+1,o=e.history.queries[r];return{...e,history:{...e.history,currentIndex:r},input:o.queryText}}case p:return{...e,tenantPath:t.data};default:return e}}},30667:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>f,Im:()=>d,MU:()=>h});var r=n(1399),o=n(52317),i=n(39623),a=n(905);const s="EndTime",l="IntervalEnd",c=e=>"(\n SELECT\n MAX(".concat(l,")\n FROM `").concat(e,"/.sys/top_queries_by_cpu_time_one_hour`\n)");const u=(0,r.oM)({name:"executeTopQueries",initialState:{},reducers:{setTopQueriesFilters:(e,t)=>({...e,...t.payload})}}),{setTopQueriesFilters:d}=u.actions,f=u.reducer,p=(e,t)=>{const n=function(e,t){const n=[];if(null!==t&&void 0!==t&&t.from&&null!==t&&void 0!==t&&t.to&&t.from>t.to)throw new Error("Invalid date range");if(null!==t&&void 0!==t&&t.from){const e=t.to===t.from?">=":">";n.push("".concat(s," ").concat(e," Timestamp('").concat(new Date(t.from).toISOString(),"')"))}return null!==t&&void 0!==t&&t.to&&n.push("".concat(s," <= Timestamp('").concat(new Date(t.to).toISOString(),"')")),null!==t&&void 0!==t&&t.from||null!==t&&void 0!==t&&t.to||n.push("".concat(l," IN ").concat(c(e))),null!==t&&void 0!==t&&t.text&&n.push("QueryText ILIKE '%".concat(t.text,"%'")),n.join(" AND ")}(e,t);return"\nSELECT\n CPUTime as CPUTimeUs,\n QueryText,\n IntervalEnd,\n EndTime,\n ReadRows,\n ReadBytes,\n UserSID,\n Duration\nFROM `".concat(e,"/.sys/top_queries_by_cpu_time_one_hour`\nWHERE ").concat(n||"true","\nORDER BY CPUTimeUs DESC\n")},h=a.h.injectEndpoints({endpoints:e=>({getTopQueries:e.query({queryFn:async(e,t)=>{let{database:n,filters:r}=e,{signal:a,dispatch:s}=t;try{const e=await window.api.sendQuery({schema:"modern",query:p(n,r),database:n,action:"execute-scan"},{signal:a});if((0,i.gW)(e))return{error:e};const t=(0,i.gY)(e);if((null===r||void 0===r||!r.from)&&(null===r||void 0===r||!r.to)){var l,c;const e=null===t||void 0===t||null===(l=t.result)||void 0===l||null===(c=l[0])||void 0===c?void 0:c.IntervalEnd;if(e){const t=new Date(e).getTime(),n=new Date(t-1e3*o.RQ).getTime();s(d({from:n,to:t}))}}return{data:t}}catch(u){return{error:u}}}})}),overrideExisting:"throw"})},56963:(e,t,n)=>{"use strict";n.d(t,{Xl:()=>a,ZP:()=>l,vj:()=>s});const r="ENABLE_FULLSCREEN_MODE",o="DISABLE_FULLSCREEN_MODE",i=!1;function a(){return{type:r}}function s(){return{type:o}}const l=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i;switch((arguments.length>1?arguments[1]:void 0).type){case o:return!1;case r:return!0;default:return e}}},79061:(e,t,n)=>{"use strict";n.d(t,{J:()=>i,Z:()=>a});const r="header/SET_HEADER_BREADCRUMBS",o={pageBreadcrumbsOptions:{}};function i(e,t){return{type:r,page:e,options:t}}const a=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o,t=arguments.length>1?arguments[1]:void 0;return t.type===r?{page:t.page,pageBreadcrumbsOptions:t.options}:e}},93717:(e,t,n)=>{"use strict";n.d(t,{E3:()=>i,U_:()=>l,Vc:()=>c,ZP:()=>s});var r=n(1399),o=n(905);const i={currentMetric:void 0,sort:!1,heatmap:!1},a=(0,r.oM)({name:"heatmap",initialState:i,reducers:{setHeatmapOptions:(e,t)=>({...e,...t.payload})}}),s=a.reducer,{setHeatmapOptions:l}=a.actions,c=o.h.injectEndpoints({endpoints:e=>({getHeatmapTabletsInfo:e.query({queryFn:async(e,t)=>{let{nodes:n,path:r}=e,{signal:o,getState:i,dispatch:a}=t;try{var s;const e=function(e){let[t,n]=e;const{TabletStateInfo:r=[]}=t,o=new Map,{PathDescription:i={}}=null!==n&&void 0!==n?n:{},{TablePartitions:a=[],TablePartitionStats:s=[],TablePartitionMetrics:l=[]}=i;r.forEach((e=>{e.TabletId&&o.set(e.TabletId,e)})),a.forEach(((e,t)=>{const n=Object.assign({},s[t],l[t]);e.DatashardId&&o.set(e.DatashardId,{...o.get(e.DatashardId),metrics:n})}));const c=Array.from(o.values()),u=c[0]&&c[0].metrics&&Object.keys(c[0].metrics).map((e=>({value:e,content:e})));return{tablets:c,metrics:u}}(await Promise.all([window.api.getTabletsInfo({nodes:n,path:r},{signal:o}),window.api.getHeatmapData({path:r},{signal:o})]));if(null!==(s=e.metrics)&&void 0!==s&&s.length){const t=i().heatmap.currentMetric;t&&e.metrics.find((e=>e.value===t))||a(l({currentMetric:e.metrics[0].value}))}return{data:e}}catch(c){return{error:c}}},providesTags:["All"]})}),overrideExisting:"throw"})},89795:(e,t,n)=>{"use strict";n.d(t,{Z:()=>S,Q:()=>x});var r=n(38907),o=n(905),i=n(14146),a=n(77915),s=n(20163),l=n(83786),c=n(30667),u=n(56963),d=n(79061),f=n(93717),p=n(42703),h=n(89003),m=n(6748),g=n(80839),v=n(9345);const y=function(){return!(arguments.length>0&&void 0!==arguments[0])||arguments[0]};var b=n(99399),w=n(8511),_=n(53809),E=n(3027);const x={[o.h.reducerPath]:o.h.reducer,singleClusterMode:y,cluster:a.ZP,tenant:w.ZP,tooltip:E.ZP,tablets:b.ZP,schema:m.ZP,tenants:_.ZP,partitions:p.ZP,executeQuery:l.ZP,heatmap:f.ZP,settings:g.ZP,executeTopQueries:c.ZP,shardsWorkload:v.ZP,authentication:i.ZP,header:d.Z,queryActions:h.ZP,fullscreen:u.ZP,clusters:s.ZP},S=(0,r.UY)({...x})},99337:(e,t,n)=>{"use strict";n.d(t,{W:()=>i,d:()=>s});var r=n(36313),o=n(51688);const i=n(905).h.injectEndpoints({endpoints:e=>({getNodesList:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{return{data:await window.api.getNodesList({signal:n})}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"}),a=i.endpoints.getNodesList.select(void 0),s=(0,r.P1)((e=>a(e).data),(e=>(0,o.dn)(e)))},42703:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>d,TB:()=>f,M$:()=>u});var r=n(1399),o=n(905),i=n(81854),a=n(1504),s=n(47651);const l=e=>{const{partition_offsets:t,store_size_bytes:n="0",last_write_time:r,max_write_time_lag:o,bytes_written:s,partition_node_id:l=0}=e||{},{start:c="0",end:u="0"}=t||{};return{storeSize:n,writeSpeed:(0,i.c4)(s),partitionWriteLag:(0,a.DA)(o),partitionWriteIdleTime:(0,a.lE)(r),startOffset:c,endOffset:u,partitionNodeId:l}},c=(0,r.oM)({name:"partitions",initialState:{selectedConsumer:""},reducers:{setSelectedConsumer:(e,t)=>{e.selectedConsumer=t.payload}}}),{setSelectedConsumer:u}=c.actions,d=c.reducer,f=o.h.injectEndpoints({endpoints:e=>({getPartitions:e.query({queryFn:async(e,t)=>{let{path:n,consumerName:r}=e,{signal:o}=t;try{if(r){const e=await window.api.getConsumer({path:n,consumer:r},{signal:o}),t=(e=>null===e||void 0===e?void 0:e.map((e=>{const{partition_id:t="0",partition_stats:n,partition_consumer_stats:r}=e,o=l(n),{endOffset:c}=o,{last_read_offset:u="0",committed_offset:d="0",read_session_id:f,last_read_time:p,max_read_time_lag:h,max_write_time_lag:m,bytes_read:g,reader_name:v,connection_node_id:y=0}=r||{},b=(0,s.kE)(c)&&(0,s.kE)(d)?Number(c)-Number(d):0,w=(0,s.kE)(c)&&(0,s.kE)(u)?Number(c)-Number(u):0;return{...o,partitionId:t,readSpeed:(0,i.c4)(g),consumerWriteLag:(0,a.DA)(m),consumerReadLag:(0,a.DA)(h),consumerReadIdleTime:(0,a.lE)(p),uncommitedMessages:b,unreadMessages:w,commitedOffset:d,readSessionId:f,readerName:v,connectionNodeId:y}})))(e.partitions);return{data:t}}{const e=await window.api.getTopic({path:n},{signal:o}),t=(e=>null===e||void 0===e?void 0:e.map((e=>{const{partition_id:t="0",partition_stats:n}=e;return{partitionId:t,...l(n)}})))(e.partitions);return{data:t}}}catch(c){return{error:c}}},providesTags:["All"]})}),overrideExisting:"throw"})},89003:(e,t,n)=>{"use strict";n.d(t,{GC:()=>l,PM:()=>h,ZP:()=>s,g0:()=>d,lm:()=>u,oK:()=>f,qF:()=>p,y3:()=>c});var r=n(1399),o=n(52317),i=n(80839);const a=(0,r.oM)({name:"queryActions",initialState:{queryName:null,queryAction:"idle"},reducers:{setQueryNameToEdit:(e,t)=>{e.queryName=t.payload},clearQueryNameToEdit:e=>{e.queryName=null},setQueryAction:(e,t)=>{e.queryAction=t.payload}},selectors:{selectQueryName:e=>e.queryName,selectQueryAction:e=>e.queryAction}}),s=a.reducer,{setQueryNameToEdit:l,clearQueryNameToEdit:c,setQueryAction:u}=a.actions,{selectQueryName:d,selectQueryAction:f}=a.selectors;function p(e){return function(t,n){var r;const a=n(),s=(null!==(r=(0,i.Cx)(a,o.DG))&&void 0!==r?r:[]).filter((t=>t.name.toLowerCase()!==e.toLowerCase()));t((0,i.xI)(o.DG,s))}}function h(e){return function(t,n){var r;const a=n(),s=null!==(r=(0,i.Cx)(a,o.DG))&&void 0!==r?r:[],l=a.executeQuery.input;if(null===e)return;const c=[...s],u=c.find((t=>t.name.toLowerCase()===e.toLowerCase()));u?u.body=l:c.push({name:e,body:l}),t((0,i.xI)(o.DG,c))}}},6748:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>u,eU:()=>m,hz:()=>g,m3:()=>d,m7:()=>c});var r=n(68963),o=n(36313),i=n(6523),a=n(905);const s="schema/SET_SHOW_PREVIEW",l={loading:!0,data:{},currentSchemaPath:void 0,showPreview:!1};function c(e){return{type:s,data:e}}const u=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l,t=arguments.length>1?arguments[1]:void 0;return t.type===s?{...e,showPreview:t.data}:e},d=a.h.injectEndpoints({endpoints:e=>({createDirectory:e.mutation({queryFn:async(e,t)=>{let{database:n,path:r}=e,{signal:o}=t;try{return{data:await window.api.createSchemaDirectory(n,r,{signal:o})}}catch(i){return{error:i}}}}),getSchema:e.query({queryFn:async(e,t)=>{let{path:n}=e,{signal:r}=t;try{const e=await window.api.getSchema({path:n},{signal:r});return{data:e?{[n]:e,...f(e)}:{}}}catch(o){return{error:o}}},keepUnusedDataFor:1/0,serializeQueryArgs:e=>{let{queryArgs:{path:t}}=e;const n=t.split("/");return{path:n[0]||n[1]}},merge:(e,t,n)=>{let{arg:{path:r}}=n;const{[r]:o,...i}=t;return o?{...i,...e,[r]:o}:e}})}),overrideExisting:"throw"});function f(e){const t={},{PathDescription:{Children:n=[]}={},Path:r}=e;for(const o of n){const{Name:e=""}=o,n="".concat(r,"/").concat(e);t[n]={PathDescription:{Self:o},Path:n,partial:!0}}return t}const p=(0,o.P1)((e=>e),(e=>d.endpoints.getSchema.select({path:e}))),h=(0,o.P1)((e=>e),((e,t)=>t),((e,t)=>p(t)),((e,t,n)=>{var r;return null===(r=n(e).data)||void 0===r?void 0:r[t]})),m=(0,o.P1)([(e,t)=>t,(e,t,n)=>n,(e,t)=>{var n,r;return null===(n=h(e,t))||void 0===n||null===(r=n.PathDescription)||void 0===r?void 0:r.Children}],((e,t,n)=>(0,i.St)(t)?null===n||void 0===n?void 0:n.map((t=>{let{Name:n}=t;return e+"/"+n})):void 0));function g(e){let{path:t}=e;const{currentData:n,isFetching:o,error:i,refetch:a}=d.useGetSchemaQuery({path:t}),s=null===n||void 0===n?void 0:n[t],l=o&&void 0===s,c=!l&&(!s&&!i||(null===s||void 0===s?void 0:s.partial));return r.useEffect((()=>{c&&a()}),[a,t,c]),{data:s,isLoading:l,error:i}}},80839:(e,t,n)=>{"use strict";n.d(t,{Cx:()=>f,E3:()=>c,M6:()=>d,ZP:()=>g,pu:()=>a,qz:()=>p,vD:()=>m,xI:()=>h});var r=n(1399),o=n(18193),i=n(47651);const a={ALL:"All",PROBLEMS:"With problems"},s=o.r.extractSettingsFromLS(o.t),l=window.systemSettings||{},c={problemFilter:a.ALL,userSettings:s,systemSettings:l},u=(0,r.oM)({name:"settings",initialState:c,reducers:e=>({changeFilter:e.reducer(((e,t)=>{e.problemFilter=t.payload})),setSettingValue:e.reducer(((e,t)=>{e.userSettings[t.payload.name]=t.payload.value}))}),selectors:{getSettingValue:(e,t)=>e.userSettings[t],selectProblemFilter:e=>e.problemFilter}}),{changeFilter:d}=u.actions,{getSettingValue:f,selectProblemFilter:p}=u.selectors,h=(e,t)=>n=>{n(u.actions.setSettingValue({name:e,value:t})),o.r.setUserSettingsValue(e,t)};function m(e){"undefined"!==typeof window&&window.addEventListener("storage",(t=>{if(t.key&&t.key in o.t){const n=t.key;let r=o.t[n];null!==t.newValue&&(r=(0,i.Mo)(t.newValue)),e.dispatch(u.actions.setSettingValue({name:n,value:r}))}}))}const g=u.reducer},9345:(e,t,n)=>{"use strict";n.d(t,{Ag:()=>p,K2:()=>d,ZP:()=>f});var r=n(1399),o=n(39623),i=n(905),a=n(58660);function s(e){let{columnId:t,order:n}=e;return"".concat(t," ").concat(n)}function l(e,t,n,r){const o=r?"CAST(SUBSTRING(CAST(Path AS String), ".concat(r.length,") AS Utf8) AS Path"):"Path";let i="Path='".concat(e,"' OR Path LIKE '").concat(e,"/%'");const a=function(e){const t=[];if(null!==e&&void 0!==e&&e.from&&null!==e&&void 0!==e&&e.to&&e.from>e.to)throw new Error("Invalid date range");if(null!==e&&void 0!==e&&e.from){const n=e.to===e.from?">=":">";t.push("IntervalEnd ".concat(n," Timestamp('").concat(new Date(e.from).toISOString(),"')"))}return null!==e&&void 0!==e&&e.to&&t.push("IntervalEnd <= Timestamp('".concat(new Date(e.to).toISOString(),"')")),t.join(" AND ")}(t);a.length&&(i="(".concat(i,") AND ").concat(a));const l=n?"ORDER BY ".concat(n.map(s).join(", ")):"";return"SELECT\n ".concat(o,",\n TabletId,\n CPUCores,\n DataSize,\n NodeId,\n PeakTime,\n InFlightTxCount,\n IntervalEnd\nFROM `.sys/top_partitions_one_hour`\nWHERE ").concat(i,"\n").concat(l,"\nLIMIT 20")}function c(e,t,n){const r=n?"CAST(SUBSTRING(CAST(Path AS String), ".concat(n.length,") AS Utf8) AS Path"):"Path",o=t?"ORDER BY ".concat(t.map(s).join(", ")):"";return"SELECT\n ".concat(r,",\n TabletId,\n CPUCores,\n DataSize,\n NodeId,\n InFlightTxCount\nFROM `.sys/partition_stats`\nWHERE\n Path='").concat(e,"'\n OR Path LIKE '").concat(e,"/%'\n").concat(o,"\nLIMIT 20")}const u=(0,r.oM)({name:"shardsWorkload",initialState:{},reducers:{setShardsQueryFilters:(e,t)=>({...e,...t.payload})}}),{setShardsQueryFilters:d}=u.actions,f=u.reducer,p=i.h.injectEndpoints({endpoints:e=>({sendShardQuery:e.query({queryFn:async(e,t)=>{let{database:n,path:r="",sortOrder:i,filters:s}=e,{signal:u}=t;try{const e=await window.api.sendQuery({schema:"modern",query:(null===s||void 0===s?void 0:s.mode)===a.F.Immediate?c(r,i,n):l(r,s,i,n),database:n,action:"execute-scan"},{signal:u});if((0,o.gW)(e))return{error:e};return{data:(0,o.gY)(e)}}catch(d){return{error:d}}},providesTags:["All"]})}),overrideExisting:"throw"})},58660:(e,t,n)=>{"use strict";let r;n.d(t,{F:()=>r}),function(e){e.Immediate="immediate",e.History="history"}(r||(r={}))},99399:(e,t,n)=>{"use strict";n.d(t,{Sq:()=>g,ZP:()=>f,em:()=>m,zg:()=>p});var r=n(1399),o=n(36313),i=n(85690),a=n.n(i),s=n(905),l=n(99337);const c=(0,r.oM)({name:"tablets",initialState:{stateFilter:[],typeFilter:[]},reducers:{setStateFilter:(e,t)=>{e.stateFilter=t.payload},setTypeFilter:(e,t)=>{e.typeFilter=t.payload}}}),{setStateFilter:u,setTypeFilter:d}=c.actions,f=c.reducer,p=s.h.injectEndpoints({endpoints:e=>({getTabletsInfo:e.query({queryFn:async(e,t)=>{let{signal:n}=t;try{return{data:await window.api.getTabletsInfo(e,{signal:n})}}catch(r){return{error:r}}},providesTags:["All"]})}),overrideExisting:"throw"}),h=(0,o.P1)((e=>e),(e=>p.endpoints.getTabletsInfo.select(e)),{argsMemoize:o.PP,argsMemoizeOptions:{equalityCheck:a()}}),m=(0,o.P1)((e=>e),((e,t)=>h(t)),((e,t)=>t(e).data)),g=(0,o.P1)(((e,t)=>m(e,t)),(e=>(0,l.d)(e)),((e,t)=>null!==e&&void 0!==e&&e.TabletStateInfo?t?e.TabletStateInfo.map((e=>{const n=void 0===e.NodeId?void 0:t.get(e.NodeId);return{...e,fqdn:n}})):e.TabletStateInfo:[]))},24015:(e,t,n)=>{"use strict";n.d(t,{Xk:()=>l,_0:()=>i,bS:()=>r,m2:()=>o,qQ:()=>a,uw:()=>s});const r="tenantPage",o={query:"query",diagnostics:"diagnostics"},i={newQuery:"newQuery",history:"history",saved:"saved"},a={overview:"overview",schema:"schema",topQueries:"topQueries",topShards:"topShards",nodes:"nodes",tablets:"tablets",storage:"storage",network:"network",describe:"describe",hotKeys:"hotKeys",graph:"graph",consumers:"consumers",partitions:"partitions"},s={overview:"overview",acl:"acl",schema:"schema"},l={cpu:"cpu",storage:"storage",memory:"memory",healthcheck:"healthcheck"}},8511:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>d,$v:()=>h,jk:()=>p,Tu:()=>m,Cs:()=>f,$1:()=>v});var r=n(1399),o=n(18193),i=n(52317),a=n(905),s=n(95408),l=n(24015);const c={tenantPage:s.z.nativeEnum(l.m2).catch(o.t[i.pf]).parse(o.r.readUserSettingsValue(i.pf))},u=(0,r.oM)({name:"tenant",initialState:c,reducers:{setTenantPage:(e,t)=>{e.tenantPage=t.payload},setQueryTab:(e,t)=>{e.queryTab=t.payload},setDiagnosticsTab:(e,t)=>{e.diagnosticsTab=t.payload},setSummaryTab:(e,t)=>{e.summaryTab=t.payload},setMetricsTab:(e,t)=>{e.metricsTab=t.payload}}}),d=u.reducer,{setTenantPage:f,setQueryTab:p,setDiagnosticsTab:h,setSummaryTab:m,setMetricsTab:g}=u.actions,v=a.h.injectEndpoints({endpoints:e=>({getTenantInfo:e.query({queryFn:async(e,t)=>{let{path:n}=e,{signal:r}=t;try{var o,i;return{data:null!==(o=null===(i=(await window.api.getTenantInfo({path:n},{signal:r})).TenantInfo)||void 0===i?void 0:i[0])&&void 0!==o?o:null}}catch(a){return{error:a}}},providesTags:["All"]})}),overrideExisting:"throw"})},35240:(e,t,n)=>{"use strict";n.d(t,{L:()=>r,l:()=>o});const r={Unspecified:"Unspecified",Good:"Good",Warning:"Warning",Danger:"Danger"},o={[r.Unspecified]:0,[r.Good]:1,[r.Warning]:2,[r.Danger]:3}},53809:(e,t,n)=>{"use strict";n.d(t,{Xv:()=>c,ZP:()=>l,gI:()=>s});var r=n(1399),o=n(905),i=n(49687);const a=(0,r.oM)({name:"tenants",initialState:{searchValue:""},reducers:{setSearchValue:(e,t)=>{e.searchValue=t.payload}}}),{setSearchValue:s}=a.actions,l=a.reducer,c=o.h.injectEndpoints({endpoints:e=>({getTenantsInfo:e.query({queryFn:async(e,t)=>{let{clusterName:n}=e,{signal:r,getState:o}=t;try{const e=await window.api.getTenants(n,{signal:r});let t;if(Array.isArray(e.TenantInfo)){const{singleClusterMode:n}=o();t=(0,i.Rp)(e.TenantInfo,n)}else t=[];return{data:t}}catch(a){return{error:a}}},providesTags:["All"]})}),overrideExisting:"throw"})},49687:(e,t,n)=>{"use strict";let r,o,i;n.d(t,{Gz:()=>f,hJ:()=>p,nr:()=>g,B8:()=>v,nD:()=>h,_g:()=>m,HH:()=>c,Vn:()=>y,Lv:()=>w,Rp:()=>u,_W:()=>b}),function(e){e.STATE_UNSPECIFIED="STATE_UNSPECIFIED",e.CREATING="CREATING",e.RUNNING="RUNNING",e.REMOVING="REMOVING",e.PENDING_RESOURCES="PENDING_RESOURCES",e.CONFIGURING="CONFIGURING"}(r||(r={})),function(e){e.TABLET_VOLATILE_STATE_UNKNOWN="TABLET_VOLATILE_STATE_UNKNOWN",e.TABLET_VOLATILE_STATE_STOPPED="TABLET_VOLATILE_STATE_STOPPED",e.TABLET_VOLATILE_STATE_BOOTING="TABLET_VOLATILE_STATE_BOOTING",e.TABLET_VOLATILE_STATE_STARTING="TABLET_VOLATILE_STATE_STARTING",e.TABLET_VOLATILE_STATE_RUNNING="TABLET_VOLATILE_STATE_RUNNING"}(o||(o={})),function(e){e.None="None",e.HDD="HDD",e.SSD="SSD"}(i||(i={}));n(81854),n(4119);var a=n(47651),s=n(35240);const l=e=>{if(e)return e.map((e=>{if(e.Name){const t=Number(e.Usage)||0,n=Number(e.Threads),r=n*t;return{name:e.Name,usage:100*t,limit:n,used:r}}})).filter((e=>void 0!==e))},c=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{CoresUsed:t,MemoryUsed:n,StorageAllocatedSize:r,MemoryLimit:o,StorageAllocatedLimit:s,PoolStats:c,Metrics:u={},DatabaseQuotas:f={},StorageUsage:p,QuotaUsage:h}=e,m=1e6*Number(t)||0,g=Number(n)||0,v=Number(r)||0,y=Number(u.Storage)||0,b=(0,a.kE)(o)?Number(o):void 0,w=(0,a.kE)(s)?Number(s):void 0,_=(0,a.kE)(f.data_size_soft_quota)?Number(f.data_size_soft_quota):void 0,E=l(c);let x,S;x=p?p.map((e=>{const{Type:t,Size:n,Limit:r}=e,o=Number(n),i=Number(r);return{name:t,used:o,limit:i,usage:d(o,i)}})):[{name:i.SSD,used:v,limit:w,usage:d(v,w)}],h?S=h.map((e=>{const{Type:t,Size:n,Limit:r}=e,o=Number(n),i=Number(r);return{name:t,used:o,limit:i,usage:d(o,i)}})):_&&(S=[{name:i.SSD,used:y,limit:_,usage:d(y,_)}]);return{memory:g,blobStorage:v,tabletStorage:y,memoryLimit:b,blobStorageLimit:w,tabletStorageLimit:_,cpu:m,poolsStats:E,memoryStats:[{name:"Process",used:g,limit:b,usage:d(g,b)}],blobStorageStats:x,tabletStorageStats:S}},u=(e,t)=>e.map((n=>{var r;const o=t?(e=>{var t;const n=e.Nodes?e.Nodes[0]:{},r=n.Host&&n.Endpoints?null===(t=n.Endpoints.find((e=>"http-mon"===e.Name)))||void 0===t?void 0:t.Address:void 0;return n.Host?"".concat(n.Host).concat(r||""):void 0})(n):void 0,i=null===(r=e.find((e=>e.Id===n.ResourceId)))||void 0===r?void 0:r.Name,s=(e=>{var t,n;const r=null===(t=e.Name)||void 0===t?void 0:t.split("/"),o=null!==r&&void 0!==r&&r.length?r[r.length-1]:"\u2014",i=null===(n=e.ControlPlane)||void 0===n?void 0:n.name;return null!==i&&void 0!==i?i:o})(n),{cpu:l,memory:u,blobStorage:d}=c(n),{nodesCount:f,groupsCount:p}=(e=>{var t;const{StorageGroups:n,NodeIds:r}=e;return{nodesCount:null!==(t=null===r||void 0===r?void 0:r.length)&&void 0!==t?t:0,groupsCount:(0,a.kE)(n)?Number(n):0}})(n);return{...n,backend:o,sharedTenantName:i,controlPlaneName:s,cpu:l,memory:u,storage:d,nodesCount:f,groupsCount:p}}));function d(e,t){if(e&&t)return 100*e/t}const f=70,p=60,h=85,m=75,g=70,v=60,y=e=>e?e>f?s.L.Danger:e>p?s.L.Warning:s.L.Good:s.L.Unspecified,b=e=>e?e>h?s.L.Danger:e>m?s.L.Warning:s.L.Good:s.L.Unspecified,w=e=>e?e>g?s.L.Danger:e>v?s.L.Warning:s.L.Good:s.L.Unspecified},3027:(e,t,n)=>{"use strict";n.d(t,{MB:()=>a,ZP:()=>u,hJ:()=>c,i8:()=>l});var r=n(85690),o=n.n(r);const i="tooltip/HIDE_TOOLTIP",a="tooltip/UPDATE_REF",s={toolTipVisible:!1,currentHoveredRef:void 0,data:void 0,templateType:"pool"},l=()=>({type:i}),c=(e,t,n,r,o)=>({type:a,node:e,data:t,templateType:n,additionalData:r,positions:o}),u=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case i:return{...e,currentHoveredRef:void 0,toolTipVisible:!1};case a:return"cell"===t.templateType&&o()(t.node,e.currentHoveredRef)?{...e,currentHoveredRef:void 0,toolTipVisible:!1}:{...e,toolTipVisible:!0,currentHoveredRef:t.node,positions:t.positions,data:t.data,additionalData:t.additionalData,templateType:t.templateType};default:return e}}},76765:(e,t,n)=>{"use strict";n.d(t,{Sz:()=>l,U:()=>s});var r=n(80977),o=n(30490),i=n(14146);const a=e=>e;function s(e,t){return{REQUEST:"".concat(e,"/").concat(t,"_REQUEST"),SUCCESS:"".concat(e,"/").concat(t,"_SUCCESS"),FAILURE:"".concat(e,"/").concat(t,"_FAILURE")}}function l(e){let{actions:t,request:n,dataHandler:s=a}=e;return async function(e,a){e({type:t.REQUEST});try{const r=await n,o=s(r,a);return e({type:t.SUCCESS,data:o}),o}catch(l){return(0,o.$)(l)&&401===l.status?e({type:i.Pq.SUCCESS}):(0,o.$)(l)&&l.status>=500&&l.statusText&&(0,r.Z)({name:"Request failure",title:"Request failure",type:"error",content:"".concat(l.status," ").concat(l.statusText)}),void e({type:t.FAILURE,error:l})}}}},75850:(e,t,n)=>{"use strict";let r;n.d(t,{K:()=>r}),function(e){e.Grey="Grey",e.Green="Green",e.Blue="Blue",e.Yellow="Yellow",e.Orange="Orange",e.Red="Red"}(r||(r={}))},35638:(e,t,n)=>{"use strict";var r,o;let i,a;var s;let l,c;var u,d,f,p,h;let m;var g,v,y,b,w,_,E;n.d(t,{C6:()=>l,tB:()=>m,mR:()=>a,gb:()=>i}),function(e){e.StatusSuccess="StatusSuccess",e.StatusAccepted="StatusAccepted",e.StatusPathDoesNotExist="StatusPathDoesNotExist",e.StatusPathIsNotDirectory="StatusPathIsNotDirectory",e.StatusAlreadyExists="StatusAlreadyExists",e.StatusSchemeError="StatusSchemeError",e.StatusNameConflict="StatusNameConflict",e.StatusInvalidParameter="StatusInvalidParameter",e.StatusMultipleModifications="StatusMultipleModifications",e.StatusReadOnly="StatusReadOnly",e.StatusTxIdNotExists="StatusTxIdNotExists",e.StatusTxIsNotCancellable="StatusTxIsNotCancellable",e.StatusAccessDenied="StatusAccessDenied",e.StatusNotAvailable="StatusNotAvailable",e.StatusPreconditionFailed="StatusPreconditionFailed",e.StatusRedirectDomain="StatusRedirectDomain",e.StatusQuotaExceeded="StatusQuotaExceeded",e.StatusResourceExhausted="StatusResourceExhausted"}(r||(r={})),function(e){e.UNKNOWN="UNKNOWN",e.USER="USER",e.GROUP="GROUP"}(o||(o={})),function(e){e.EPathTypeInvalid="EPathTypeInvalid",e.EPathTypeDir="EPathTypeDir",e.EPathTypeTable="EPathTypeTable",e.EPathTypePersQueueGroup="EPathTypePersQueueGroup",e.EPathTypeSubDomain="EPathTypeSubDomain",e.EPathTypeTableIndex="EPathTypeTableIndex",e.EPathTypeExtSubDomain="EPathTypeExtSubDomain",e.EPathTypeColumnStore="EPathTypeColumnStore",e.EPathTypeColumnTable="EPathTypeColumnTable",e.EPathTypeCdcStream="EPathTypeCdcStream",e.EPathTypeExternalDataSource="EPathTypeExternalDataSource",e.EPathTypeExternalTable="EPathTypeExternalTable",e.EPathTypeView="EPathTypeView",e.EPathTypeReplication="EPathTypeReplication"}(i||(i={})),function(e){e.EPathSubTypeEmpty="EPathSubTypeEmpty",e.EPathSubTypeSyncIndexImplTable="EPathSubTypeSyncIndexImplTable",e.EPathSubTypeAsyncIndexImplTable="EPathSubTypeAsyncIndexImplTable",e.EPathSubTypeStreamImpl="EPathSubTypeStreamImpl"}(a||(a={})),function(e){e.EPathStateNotExist="EPathStateNotExist",e.EPathStateNoChanges="EPathStateNoChanges",e.EPathStateCreate="EPathStateCreate",e.EPathStateAlter="EPathStateAlter",e.EPathStateDrop="EPathStateDrop",e.EPathStateCopying="EPathStateCopying",e.EPathStateBackup="EPathStateBackup",e.EPathStateUpgrade="EPathStateUpgrade",e.EPathStateMigrated="EPathStateMigrated",e.EPathStateRestore="EPathStateRestore",e.EPathStateMoving="EPathStateMoving"}(s||(s={})),function(e){e.ColumnCodecPlain="ColumnCodecPlain",e.ColumnCodecLZ4="ColumnCodecLZ4",e.ColumnCodecZSTD="ColumnCodecZSTD"}(l||(l={})),function(e){e.UNIT_AUTO="UNIT_AUTO",e.UNIT_SECONDS="UNIT_SECONDS",e.UNIT_MILLISECONDS="UNIT_MILLISECONDS",e.UNIT_MICROSECONDS="UNIT_MICROSECONDS",e.UNIT_NANOSECONDS="UNIT_NANOSECONDS"}(c||(c={})),function(e){e.ECdcStreamModeInvalid="ECdcStreamModeInvalid",e.ECdcStreamModeKeysOnly="ECdcStreamModeKeysOnly",e.ECdcStreamModeUpdate="ECdcStreamModeUpdate",e.ECdcStreamModeNewImage="ECdcStreamModeNewImage",e.ECdcStreamModeOldImage="ECdcStreamModeOldImage",e.ECdcStreamModeNewAndOldImages="ECdcStreamModeNewAndOldImages"}(u||(u={})),function(e){e.ECdcStreamFormatInvalid="ECdcStreamFormatInvalid",e.ECdcStreamFormatProto="ECdcStreamFormatProto",e.ECdcStreamFormatJson="ECdcStreamFormatJson"}(d||(d={})),function(e){e.ECdcStreamStateInvalid="ECdcStreamStateInvalid",e.ECdcStreamStateReady="ECdcStreamStateReady",e.ECdcStreamStateDisabled="ECdcStreamStateDisabled"}(f||(f={})),function(e){e.HASH_FUNCTION_MODULO_N="HASH_FUNCTION_MODULO_N",e.HASH_FUNCTION_CLOUD_LOGS="HASH_FUNCTION_CLOUD_LOGS"}(p||(p={})),function(e){e.COLUMN_ENGINE_NONE="COLUMN_ENGINE_NONE",e.COLUMN_ENGINE_REPLACING_TIMESERIES="COLUMN_ENGINE_REPLACING_TIMESERIES"}(h||(h={})),function(e){e.METERING_MODE_RESERVED_CAPACITY="METERING_MODE_RESERVED_CAPACITY",e.METERING_MODE_REQUEST_UNITS="METERING_MODE_REQUEST_UNITS"}(m||(m={})),function(e){e.SysLog="SysLog",e.Log="Log",e.Data="Data",e.External="External"}(g||(g={})),function(e){e.Unspecified="Unspecified",e.Freeze="Freeze",e.Unfreeze="Unfreeze"}(v||(v={})),function(e){e.ColumnCacheNone="ColumnCacheNone",e.ColumnCacheOnce="ColumnCacheOnce",e.ColumnCacheEver="ColumnCacheEver"}(y||(y={})),function(e){e.ColumnStorage1="ColumnStorage1",e.ColumnStorage2="ColumnStorage2",e.ColumnStorage1Ext1="ColumnStorage1Ext1",e.ColumnStorage1Ext2="ColumnStorage1Ext2",e.ColumnStorage2Ext1="ColumnStorage2Ext1",e.ColumnStorage2Ext2="ColumnStorage2Ext2",e.ColumnStorage1Med2Ext2="ColumnStorage1Med2Ext2",e.ColumnStorage2Med2Ext2="ColumnStorage2Med2Ext2",e.ColumnStorageTest_1_2_1k="ColumnStorageTest_1_2_1k"}(b||(b={})),function(e){e.CompactionStrategyUnset="CompactionStrategyUnset",e.CompactionStrategyGenerational="CompactionStrategyGenerational",e.CompactionStrategySharded="CompactionStrategySharded"}(w||(w={})),function(e){e.EIndexTypeInvalid="EIndexTypeInvalid",e.EIndexTypeGlobal="EIndexTypeGlobal",e.EIndexTypeGlobalAsync="EIndexTypeGlobalAsync"}(_||(_={})),function(e){e.EIndexStateInvalid="EIndexStateInvalid",e.EIndexStateReady="EIndexStateReady",e.EIndexStateNotReady="EIndexStateNotReady",e.EIndexStateWriteOnly="EIndexStateWriteOnly"}(E||(E={}))},28164:(e,t,n)=>{"use strict";let r,o;n.d(t,{F:()=>r,g:()=>o}),function(e){e.Unknown="Unknown",e.OldSchemeShard="OldSchemeShard",e.OldDataShard="OldDataShard",e.OldHive="OldHive",e.OldCoordinator="OldCoordinator",e.Mediator="Mediator",e.OldTxProxy="OldTxProxy",e.OldBSController="OldBSController",e.Dummy="Dummy",e.RTMRPartition="RTMRPartition",e.OldKeyValue="OldKeyValue",e.KeyValue="KeyValue",e.Coordinator="Coordinator",e.Hive="Hive",e.BSController="BSController",e.SchemeShard="SchemeShard",e.TxProxy="TxProxy",e.DataShard="DataShard",e.PersQueue="PersQueue",e.Cms="Cms",e.NodeBroker="NodeBroker",e.TxAllocator="TxAllocator",e.PersQueueReadBalancer="PersQueueReadBalancer",e.BlockStoreVolume="BlockStoreVolume",e.BlockStorePartition="BlockStorePartition",e.TenantSlotBroker="TenantSlotBroker",e.Console="Console",e.Kesus="Kesus",e.BlockStorePartition2="BlockStorePartition2",e.BlockStoreDiskRegistry="BlockStoreDiskRegistry",e.SysViewProcessor="SysViewProcessor",e.FileStore="FileStore",e.ColumnShard="ColumnShard",e.TestShard="TestShard",e.SequenceShard="SequenceShard",e.ReplicationController="ReplicationController",e.BlobDepot="BlobDepot",e.UserTypeStart="UserTypeStart",e.TypeInvalid="TypeInvalid"}(r||(r={})),function(e){e.Created="Created",e.ResolveStateStorage="ResolveStateStorage",e.Candidate="Candidate",e.BlockBlobStorage="BlockBlobStorage",e.RebuildGraph="RebuildGraph",e.WriteZeroEntry="WriteZeroEntry",e.Restored="Restored",e.Discover="Discover",e.Lock="Lock",e.Dead="Dead",e.Active="Active",e.ResolveLeader="ResolveLeader",e.Deleted="Deleted",e.Stopped="Stopped"}(o||(o={}))},57510:(e,t,n)=>{"use strict";n.d(t,{t:()=>p,d:()=>d});var r=n(52317),o=n(4119),i=n(47651),a=n(30817);const s=JSON.parse('{"b":"B","kb":"KB","mb":"MB","gb":"GB","tb":"TB","perSecond":"/s"}'),l=JSON.parse('{"b":"\u0411","kb":"\u041a\u0411","mb":"\u041c\u0411","gb":"\u0413\u0411","tb":"\u0422\u0411","perSecond":"/\u0441"}'),c=(0,a.wZ)("ydb-bytes-parsers",{ru:l,en:s}),u={b:{value:1,label:c("b")},kb:{value:r.h0,label:c("kb")},mb:{value:r.nQ,label:c("mb")},gb:{value:r.GS,label:c("gb")},tb:{value:r.Bp,label:c("tb")}},d=(e,t)=>{const n=10**t,r=u.tb.value*n,o=u.gb.value*n,i=u.mb.value*n;let a="b";return e>=u.kb.value*n&&(a="kb"),e>=i&&(a="mb"),e>=o&&(a="gb"),e>=r&&(a="tb"),a},f=(e,t)=>e+" ".concat(u[t].label),p=e=>{let{value:t,size:n,withSpeedLabel:r=!1,withSizeLabel:a=!0,significantDigits:s=0,...l}=e;if(!(0,i.kE)(t))return"";const p=Number(t),h=null!==n&&void 0!==n?n:d(p,s),m=(e=>{let{value:t,size:n="mb",precision:r=0}=e;const i=(0,o.W0)(Number(t)/u[n].value,r);return(0,o.uf)(i)})({value:p,size:h,...l});return r?((e,t)=>f(e,t)+c("perSecond"))(m,h):a?f(m,h):m}},81854:(e,t,n)=>{"use strict";n.d(t,{c4:()=>i,td:()=>r.t,dT:()=>r.d});var r=n(57510),o=n(52317);const i=e=>({perMinute:e&&e.per_minute?Math.round(Number(e.per_minute)/o.sU):0,perHour:e&&e.per_hour?Math.round(Number(e.per_hour)/o.RQ):0,perDay:e&&e.per_day?Math.round(Number(e.per_day)/o.ii):0})},90860:(e,t,n)=>{"use strict";n.d(t,{B_:()=>u,kn:()=>l,n$:()=>c});var r=n(60619),o=n.n(r),i=n(30601),a=n(94076);const s="__no_color__",l=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Map;return e.forEach((e=>{var n;let{version:r,version_base_color_index:o=s}=e;const a=(0,i.H)(r);t.has(o)||t.set(o,new Set),null===(n=t.get(o))||void 0===n||n.add(a)})),t},c=e=>{const t=new Map;for(const[n,r]of e)Array.from(r).sort(((e,t)=>(0,a.un)(t)-(0,a.un)(e))).forEach(((e,o)=>{if(n===s)t.set(e,a.HD);else{const i=Number(n)%a.DM.length,s=r.size,l=a.DM[i],c=Math.max(100-o*(100/s),20),u=Math.round(255*c/100).toString(16),d="".concat(l).concat(u);t.set(e,d)}}));return t},u=function(){let e=arguments.length>1?arguments[1]:void 0;const t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).filter((e=>e.version));return o()(t,"version").map((e=>({...e,minorVersion:(0,i.H)(e.version)}))).reduce(((t,n)=>{const r=e.get(n.minorVersion);return t.push({...n,color:r}),t}),[])}},24362:(e,t,n)=>{"use strict";n.d(t,{cn:()=>r});const r=(0,n(5247).withNaming)({e:"__",m:"_"})},52317:(e,t,n)=>{"use strict";n.d(t,{Ac:()=>I,Ah:()=>E,Bp:()=>u,DG:()=>N,DO:()=>x,E6:()=>Z,FU:()=>S,GS:()=>c,HN:()=>m,IG:()=>Y,KS:()=>R,KU:()=>A,LE:()=>q,ME:()=>a,Mn:()=>F,N1:()=>D,Px:()=>k,Qy:()=>$,RI:()=>X,RQ:()=>f,Rq:()=>K,S7:()=>U,Tf:()=>te,UF:()=>T,Wm:()=>H,XN:()=>j,XX:()=>J,ZY:()=>V,bw:()=>C,eG:()=>B,fl:()=>w,fo:()=>ee,h0:()=>s,if:()=>P,ii:()=>p,jX:()=>_,nQ:()=>l,pf:()=>G,qV:()=>v,sO:()=>z,sU:()=>d,sl:()=>b,tV:()=>g,t_:()=>i,w7:()=>W,wr:()=>M,x5:()=>y,y6:()=>Q,yD:()=>h,yT:()=>O,z4:()=>L});var r=n(19812),o=n(28164);const i=1e4,a=3e4,s=1e3,l=1e6,c=1e9,u=1e12,d=60,f=60*d,p=24*f,h=1e6,m={Created:"grey",ResolveStateStorage:"lightgrey",Candidate:"lightgrey",BlockBlobStorage:"lightgrey",RebuildGraph:"yellow",Restored:"yellow",Discover:"orange",Lock:"lightblue",Dead:"black",Active:"lightgreen"},g={[o.F.OldTxProxy]:"P",[o.F.TxProxy]:"P",[o.F.BSController]:"BS",[o.F.Dummy]:"DY",[o.F.RTMRPartition]:"RP",[o.F.PersQueueReadBalancer]:"PB",[o.F.Cms]:"CM",[o.F.BlockStorePartition]:"BP",[o.F.BlockStoreVolume]:"BV",[o.F.Console]:"CN",[o.F.TenantSlotBroker]:"TB",[o.F.BlockStoreDiskRegistry]:"BDR"},v=e=>{var t;if(!e)return;const n=null===(t=e.match(/[A-Z]/g))||void 0===t?void 0:t.join("");return(e=>e in g)(e)?g[e]:n},y=["1 min","5 min","15 min"],b={green:5,yellow:4,orange:3,red:2,blue:1,grey:1},w=5,_="\u2014",E="Developer UI",x="Cluster",S="Database",C="theme",k="language",O="invertedDisks",T="useNodesEndpointInDiagnostics",N="saved_queries",I="asideHeaderCompact",P="queries_history",R="tune-columns-popup",D="binaryDataInPlainTextDisplay",A="auto-refresh-interval",j="default-size-result-pane",M="default-size-tenant-summary-pane",L="default-size-tenant-pane",z="default-is-tenant-summary-collapsed",F="default-is-tenant-common-info-collapsed",B="default-is-query-result-collapsed",U="default-cluster-tab",q={displayIndices:!1,stickyHead:r.ZP.MOVING,syncHeadOnResize:!0,dynamicRender:!0,highlightRows:!0},Z={...q,stickyHead:"fixed",dynamicRender:!1},H="query_initial_mode",W="last_used_query_action",V="partitionsHiddenColumns",G="saved_tenant_initial_tab",$="useBackendParamsForTables",K="queryUseMultiSchema",Y="useClusterBalancerAsBacked",Q="enableAutocomplete",J="autocompleteOnEnter",X="isHotKeysHelpHidden",ee="useSeparateDisksPages",te="useDirectoryOperations"},80977:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(63660);const o=function(e){let{name:t,title:n,type:o,content:i}=e;return r.m.add({name:null!==t&&void 0!==t?t:"Request succeeded",title:null!==n&&void 0!==n?n:"Request succeeded",theme:"error"===o?"danger":"success",content:i,isClosable:!0,autoHiding:"success"===o&&5e3})}},4119:(e,t,n)=>{"use strict";n.d(t,{fG:()=>I,OW:()=>N,t$:()=>h,td:()=>p,SX:()=>m,LO:()=>O,o0:()=>T,gC:()=>b,uf:()=>x,xh:()=>S,QO:()=>w,q3:()=>_,JD:()=>E,CH:()=>v,W0:()=>C,a2:()=>g});var r=n(396),o=n(57510),i=n(52317),a=n(36453),s=n.n(a),l=(n(40022),n(30817));Object.values(l.Uo).forEach((e=>{s().locales[e]&&(s().locales[e].delimiters.thousands=" ")})),s().locale(l.ag.lang);const c=s();var u=n(47651);const d=JSON.parse('{"format-cpu.cores":["core","cores","cores","cores"]}'),f=JSON.parse('{"format-cpu.cores":["\u044f\u0434\u0440\u043e","\u044f\u0434\u0440\u0430","\u044f\u0434\u0435\u0440","\u044f\u0434\u0435\u0440"]}'),p=((0,l.wZ)("ydb-format-cpu",{ru:f,en:d}),e=>(0,u.kE)(e)?c(e).format("0 b"):""),h=e=>{const t=p(e);return t?t+"/s":""},m=e=>"".concat(Math.floor(Number(e)/i.GS)," GB"),g=e=>e?Object.values(e).join("-"):"",v=e=>e.NodeId&&e.PDiskId?"".concat(e.NodeId,"-").concat(e.PDiskId):void 0,y=e=>{const t=Math.floor(e/i.ii),n=e%i.ii;return[t&&"".concat(t,"d"),c(n).format("00:00:00")].filter(Boolean).join(" ")},b=e=>e&&y(e/1e3),w=(e,t,n)=>{let r=(0,o.d)(Number(e),0),i=!0,a=0;(0,u.kE)(t)&&(r=(0,o.d)(Number(t),0),i=!1,a=1);return[(0,o.t)({value:e,withSizeLabel:i,size:n||r,precision:a}),(0,o.t)({value:t,size:n||r})]},_=(e,t)=>w(e,t,"gb"),E=(e,t)=>w(e,t,"tb"),x=e=>(0,u.kE)(e)?c(e).format("0,0.[00000]"):"",S=e=>{const t=(e/i.RQ).toFixed(2);return"".concat(x(t)," hours")},C=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,[n]=String(e).split(".");return Number(e)<1&&(n=""),n.length>=t?Math.round(Number(e)):Number(Number(e).toFixed(t-n.length))},k=e=>{const t=Number(e)/1e6;return C(t,3)},O=e=>{if(void 0!==e)return c(k(e)).format("0.[000]")},T=function(e){var t;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"N/A";if(!(0,u.kE)(e))return"";const o=null===(t=(0,r.J)(Number(e)))||void 0===t?void 0:t.format("YYYY-MM-DD HH:mm");return Number(e)>0&&o?o:n},N=e=>{const t=(new Date).getTime()-Number(e);return t<=0?0:t/1e3},I=e=>y(N(Number(e)))},48169:(e,t,n)=>{"use strict";n.d(t,{ok:()=>a,wq:()=>i,yf:()=>s});var r=n(27102),o=n(47651);const i=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.y3;const n=/\/node\/\d+\/?$/g;return n.test(String(t))?String(t).replace(n,"/node/".concat(e,"/")):"".concat(null!==t&&void 0!==t?t:"","/node/").concat(e,"/")},a=e=>{let{nodeId:t,pDiskId:n,host:r}=e;const a="actors/pdisks/pdisk"+(0,o.bJ)(n);return i(t,r)+a},s=e=>{let{nodeId:t,pDiskId:n,vDiskSlotId:r,host:a}=e;const s="actors/vdisks/vdisk"+(0,o.bJ)(n)+"_"+(0,o.bJ)(r);return i(t,a)+s}},27070:(e,t,n)=>{"use strict";n.d(t,{A:()=>a,Y:()=>s});var r=n(81413),o=n(43680),i=n.n(o);const a=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.hr;return e?t===r.hr?"-"+e:e:""},s=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return new RegExp(i()(e),"i")}},34051:(e,t,n)=>{"use strict";n.d(t,{Rj:()=>g,$6:()=>u,A3:()=>m,yu:()=>l,sC:()=>f,zL:()=>i,ix:()=>o});var r=n(87555);const o=r.v9,i=r.I0;var a=n(68963),s=n(80839);const l=(e,t)=>{const n=i();return[o((n=>{var r;return null!==(r=(0,s.Cx)(n,e))&&void 0!==r?r:t})),a.useCallback((t=>{n((0,s.xI)(e,t))}),[n,e])]};var c=n(52317);const u=()=>l(c.Wm);var d=n(81413);const f=(e,t)=>{let{sortValue:n,sortOrder:r=d.hr}=e;return[a.useMemo((()=>{if(n)return{columnId:n,order:r}}),[n,r]),e=>{const n=Array.isArray(e)?e[0]:e;t({sortValue:null===n||void 0===n?void 0:n.columnId,sortOrder:null===n||void 0===n?void 0:n.order})}]};var p=n(86974),h=n(54665);const m=()=>{const e=(0,p.TH)();return(0,h.mB)(e)};function g(){return l(c.KU,0)}},30817:(e,t,n)=>{"use strict";n.d(t,{Uo:()=>r,Fp:()=>l,ag:()=>u,wZ:()=>d});var r,o=n(31329),i=n(24205),a=n(18193),s=n(52317);!function(e){e.En="en",e.Ru="ru"}(r||(r={}));const l=r.En,c=a.r.readUserSettingsValue(s.Px,l),u=new o.mb({lang:c,fallbackLang:r.En});function d(e,t){for(const n of Object.keys(t))u.registerKeyset(n,e,t[n]);return u.keyset(e)}(0,i.jQ)({lang:c})},5922:(e,t,n)=>{"use strict";n.d(t,{D:()=>o,c:()=>r});const r=e=>[...Array(e).keys()];function o(e){return null!==e&&void 0!==e}},30410:(e,t,n)=>{"use strict";n.d(t,{k:()=>l});var r=n(68963),o=n(2982),i=n(40726),a=n(27710),s=n(75859);function l(e,t,n){const o=r.lazy((()=>e().then((e=>({default:e[t]}))).catch((e=>({default:()=>(0,s.jsx)(a.l2,{error:e})}))))),l=(e,t)=>{const a=(0,i.C)("ErrorBoundary");return(0,s.jsx)(a,{children:(0,s.jsx)(r.Suspense,{fallback:null!==n&&void 0!==n?n:(0,s.jsx)(c,{}),children:(0,s.jsx)(o,{ref:t,...e})})})};return l.displayName=t,r.forwardRef(l)}function c(){return(0,s.jsx)("div",{style:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,s.jsx)(o.a,{size:"l"})})}},51688:(e,t,n)=>{"use strict";n.d(t,{Hk:()=>y,Ns:()=>m,RW:()=>v,TA:()=>f,U8:()=>u,Uu:()=>c,dn:()=>p,eV:()=>g,oh:()=>b,qU:()=>d,y$:()=>h});var r=n(95408),o=n(80839),i=n(75850),a=n(52317),s=n(4119),l=n(5922);let c;!function(e){e.All="All",e.SmallUptime="SmallUptime"}(c||(c={}));const u=r.z.nativeEnum(c).catch(c.All),d={[c.All]:"All",[c.SmallUptime]:"Uptime < 1h"},f=e=>!e.SystemState||e.SystemState===i.K.Grey,p=e=>null===e||void 0===e?void 0:e.reduce(((e,t)=>(t.Id&&t.Host&&e.set(Number(t.Id),t.Host),e)),new Map);function h(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{LoadAverage:t,NumberOfCpus:n}=e;if((0,l.D)(t)&&(0,l.D)(n))return t.map((e=>100*e/n))}const m=function(){var e,t;let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const r=(null===(e=n.Location)||void 0===e?void 0:e.Rack)||n.Rack,o=(null===(t=n.Location)||void 0===t?void 0:t.DataCenter)||n.DataCenter,i=(0,s.fG)(n.StartTime),a=h(n);return{...n,Rack:r,DC:o,Uptime:i,LoadAveragePercents:a}},g=e=>e===o.pu.PROBLEMS,v=e=>e===c.SmallUptime?a.RQ:void 0,y={NodeId:"NodeId",Host:"Host",DC:"DC",Rack:"Rack",Version:"Version",Uptime:"Uptime",Memory:"Memory",CPU:"CPU",LoadAverage:"LoadAverage"},b=e=>Object.values(y).includes(e)},45535:(e,t,n)=>{"use strict";n.d(t,{M2:()=>r,p9:()=>o,q:()=>i});const r=e=>e.replace(/\/viewer\/json/,""),o=e=>{const t=r((e=>e.replace(/http[s]?:\/\//,""))(e)),n=t.split("/");if(1===n.length)return{balancer:n[0],proxy:void 0};const o=n[0];return{balancer:t.replace(o+"/",""),proxy:o}},i=e=>o(e).balancer.replace(/:\d+$/,"")},39623:(e,t,n)=>{"use strict";let r;n.d(t,{Jf:()=>i,wZ:()=>a,U4:()=>s,jM:()=>l,T$:()=>c,gW:()=>f,gY:()=>p,CC:()=>h,dt:()=>v,fV:()=>y,y5:()=>m,Xh:()=>g}),function(e){e.Bool="Bool",e.Int8="Int8",e.Int16="Int16",e.Int32="Int32",e.Int64="Int64",e.Uint8="Uint8",e.Uint16="Uint16",e.Uint32="Uint32",e.Uint64="Uint64",e.Float="Float",e.Double="Double",e.Decimal="Decimal",e.String="String",e.Utf8="Utf8",e.Json="Json",e.JsonDocument="JsonDocument",e.Yson="Yson",e.Uuid="Uuid",e.Date="Date",e.Datetime="Datetime",e.Timestamp="Timestamp",e.Interval="Interval",e.TzDate="TzDate",e.TzDateTime="TzDateTime",e.TzTimestamp="TzTimestamp"}(r||(r={}));var o=n(30490);const i={execute:"execute",explain:"explain"},a={scan:"scan",script:"script",data:"data",query:"query",pg:"pg"},s={scan:"Scan",script:"YQL Script",data:"Data",query:"YQL - QueryService",pg:"PostgreSQL"},l={yql:"yql_v1",pg:"pg"},c=e=>{switch(e.replace(/\?$/,"")){case r.Bool:return"boolean";case r.Int8:case r.Int16:case r.Int32:case r.Int64:case r.Uint8:case r.Uint16:case r.Uint32:case r.Uint64:case r.Float:case r.Double:case r.Decimal:return"number";case r.String:case r.Utf8:case r.Json:case r.JsonDocument:case r.Yson:case r.Uuid:return"string";case r.Date:case r.Datetime:case r.Timestamp:case r.Interval:case r.TzDate:case r.TzDateTime:case r.TzTimestamp:return"date";default:return}},u=(e,t)=>e.map((e=>e.reduce(((e,n,r)=>{const{name:o}=t[r];return e[o]=n,e}),{}))),d=e=>Boolean(!e||"object"!==typeof e||Array.isArray(e)||"result"in e&&!Array.isArray(e.result));function f(e){return Boolean(e&&"object"===typeof e&&"error"in e&&"issues"in e)}const p=e=>d(e)?{}:(e=>Boolean(e&&!Array.isArray(e)&&Array.isArray(e.result)&&"object"===typeof e.result[0]&&"rows"in e.result[0]&&"columns"in e.result[0]))(e)?(e=>{const{result:t,...n}=e;return{resultSets:null===t||void 0===t?void 0:t.map((e=>{const{rows:t,columns:n}=e;let r;return n&&(r=[]),t&&n&&(r=u(t,n)),{columns:n,result:r}})),...n}})(e):(e=>Boolean(e&&!Array.isArray(e)&&Array.isArray(e.result)&&Array.isArray(e.columns)))(e)?(e=>{const{result:t,columns:n,...r}=e;return{result:t&&n&&u(t,n),columns:n,...r}})(e):e,h=e=>d(e)?{}:e,m=e=>(e=>Boolean(e&&"queries"in e))(e)?e.queries&&e.queries.length?{Plan:e.queries[0].Plan,tables:e.queries[0].tables,meta:e.meta}:{meta:e.meta}:e,g=e=>Array.isArray(e)?e.map((e=>{const t={};for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)){const r=typeof e[n];null!==e[n]&&"object"===r||"boolean"===r||Array.isArray(e[n])?t[n]=JSON.stringify(e[n]):t[n]=e[n]}return t})):[],v=e=>"string"===typeof e||f(e)?e:(0,o.e)(e)?e.message:(0,o.$)(e)?"data"in e&&f(e.data)?e.data:e.statusText:void 0,y=e=>{var t;const n=v(e);return"string"===typeof n?n:null===n||void 0===n||null===(t=n.error)||void 0===t?void 0:t.message}},30490:(e,t,n)=>{"use strict";n.d(t,{$:()=>o,e:()=>r});const r=e=>Boolean(e&&"object"===typeof e&&"message"in e&&"Network Error"===e.message),o=e=>Boolean(e&&"object"===typeof e&&"status"in e)},1504:(e,t,n)=>{"use strict";n.d(t,{tt:()=>c,zm:()=>u,DA:()=>p,lE:()=>h,BO:()=>m});var r=n(52317),o=n(4119),i=n(30817);const a=JSON.parse('{"daysHours":"{{days}}\xa0d\xa0{{hours}}\xa0h","hoursMin":"{{hours}}\xa0h\xa0{{minutes}}\xa0m","minSec":"{{minutes}}\xa0m\xa0{{seconds}}\xa0s","secMs":"{{seconds}}\xa0s\xa0{{ms}}\xa0ms","days":"{{days}}\xa0d","hours":"{{hours}}\xa0h","min":"{{minutes}}\xa0m","sec":"{{seconds}}\xa0s","ms":"{{ms}}\xa0ms"}'),s=JSON.parse('{"daysHours":"{{days}}\xa0\u0434\xa0{{hours}}\xa0\u0447","hoursMin":"{{hours}}\xa0\u0447\xa0{{minutes}}\xa0\u043c","minSec":"{{minutes}}\xa0\u043c\xa0{{seconds}}\xa0\u0441","secMs":"{{seconds}}\xa0\u0441\xa0{{ms}}\xa0\u043c\u0441","days":"{{days}}\xa0\u0434","hours":"{{hours}}\xa0\u0447","min":"{{minutes}}\xa0\u043c","sec":"{{seconds}}\xa0\u0441","ms":"{{ms}}\xa0\u043c\u0441"}'),l=(0,i.wZ)("ydb-time-parsers",{ru:s,en:a}),c=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;const n=e%1e3;let o=Math.floor(e/1e3);const i=Math.floor(o/r.ii);o%=r.ii;const a=Math.floor(o/r.RQ);o%=r.RQ;const s=Math.floor(o/60);o%=60;const c=o,u={days:i,hours:a,minutes:s,seconds:c,ms:n};if(2===t){if(i>0)return l("daysHours",u);if(a>0)return l("hoursMin",u);if(s>0)return l("minSec",u);if(c>0)return l("secMs",u)}if(1===t){if(i>0)return l("days",u);if(a>0)return l("hours",u);if(s>0)return l("min",u);if(c>0)return l("sec",u)}return l("ms",u)},u=e=>l("ms",{ms:(0,o.uf)(e)}),d=e=>(e.seconds?1e3*Number(e.seconds):0)+(e.nanos?e.nanos/r.yD:0);var f=n(47651);const p=e=>e?(e=>"string"===typeof e?1e3*parseInt(e,10):d(e))(e):0,h=e=>{if(!e)return 0;const t=Date.now()-(e=>"string"===typeof e?Date.parse(e):d(e))(e);return t<0?0:t},m=e=>e&&(0,f.kE)(e)?Math.round(Number(e)/1e3):0},47651:(e,t,n)=>{"use strict";function r(e){if(e)try{return JSON.parse(e)}catch(t){return e}}n.d(t,{Mo:()=>r,Qt:()=>a,Uz:()=>s,bJ:()=>l,kE:()=>c});const o=[" B"," KB"," MB"," GB"," TB"," PB"," EB"],i=1e3;function a(e){return"".concat(function(e){if(isNaN(e))return"";const t=e/i**2;return t<10?t.toFixed(2)+o[2]:t<100?t.toFixed(1)+o[2]:t.toFixed()+o[2]}(e)).concat(e?"ps":"")}function s(e,t){if(isNaN(e))return"N/A";const n=e/1e9;return t?n.toFixed()+o[3]:n<10?n.toFixed(2)+o[3]:n<100?n.toFixed(1)+o[3]:n.toFixed()+o[3]}function l(e){let t=e;for(let n=String(e).length;n<9;n++)t="0"+t;return t}function c(e){return!isNaN(e)&&!isNaN(parseFloat(e))}},94076:(e,t,n)=>{"use strict";n.d(t,{DM:()=>i,HD:()=>a,ZP:()=>c,un:()=>o});var r=n(30601);const o=e=>e.split("").reduce(((e,t)=>{const n=(e<<5)-e+t.charCodeAt(0);return n&n}),0),i=["#008000","#4169e1","#ffd700","#ff8c00","#808000","#e9967a","#ff1493","#00bfff","#da70d6","#3cb371","#b22222"],a="#bfbfbf",s=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Map;return e.forEach((e=>{var n;const o=(0,r.X)(e),i=(0,r.H)(e);t.has(o)||t.set(o,new Set),null===(n=t.get(o))||void 0===n||n.add(i)})),t},l=e=>{const t=Array.from(e.keys()).map((e=>({version:e,hash:o(e)}))),n=new Map;let r=i.length-1;return t.sort(((e,t)=>e.hash-t.hash)).forEach((t=>{if(/^(\w+-)?stable/.test(t.version)){r=(r+1)%i.length,n.set(t.version,i[r]);const a=Array.from(e.get(t.version)||[]).filter((e=>e!==t.version)).map((e=>({version:e,hash:o(e)}))),s=a.length;a.sort(((e,t)=>t.hash-e.hash)).forEach(((e,t)=>{const o=i[r],a=Math.max(100-t*(100/s),20),l=Math.round(255*a/100).toString(16),c="".concat(o).concat(l);n.set(e.version,c)}))}else n.set(t.version,a)})),n},c=function(){return l(s(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]))}},30601:(e,t,n)=>{"use strict";n.d(t,{H:()=>r,X:()=>o});const r=e=>{let t=e;/\d{1,}-\d{1,}(-\d){0,}(-hotfix-\d{1,}(-\d{1,})?)?\.[0-9a-zA-Z]+$/.test(e)&&(t=t.replace(/(-hotfix-\d{1,}(-\d{1,})?)?\.[0-9a-zA-Z]+$/,""));return/\d{1,}-\d{1,}-\d{1,}-\d{1,}$/.test(e)&&(t=t.replace(/-\d{1,}$/,"")),t},o=e=>{const t=r(e);return/\d{1,}-\d{1,}-\d{1,}/.test(t)?t.replace(/-\d{1,}$/,""):t}},36767:(e,t)=>{"use strict";function n(e){function t(t,o,i,a){var s=o?n+t+e.e+o:n+t,l=s;if(i){var c=" "+l+e.m;for(var u in i)if(i.hasOwnProperty(u)){var d=i[u];!0===d?l+=c+u:d&&(l+=c+u+r+d)}}if(void 0!==a)for(var f=0,p=(a=Array.isArray(a)?a:[a]).length;f{"use strict";e.exports=n(36767)},66857:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.STRICT=void 0,t.STRICT=!0},85688:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HTML5_INPUT_FORMATS=t.englishFormats=t.INVALID_DATE_STRING=t.DEFAULT_SYSTEM_DATE_FORMAT=void 0,t.DEFAULT_SYSTEM_DATE_FORMAT="YYYY-MM-DD",t.INVALID_DATE_STRING="Invalid Date",t.englishFormats={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"},t.HTML5_INPUT_FORMATS={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"}},20843:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),o(n(66857),t),o(n(85688),t),o(n(38346),t)},38346:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UtcTimeZone=void 0,t.UtcTimeZone="UTC"},79376:function(e,t,n){"use strict";var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;nn},e.prototype.isValid=function(){return this._isValid},e.prototype.diff=function(t,n,r){if(!this.isValid())return NaN;var o=e.isDateTime(t)?t.timeZone(this._timeZone):y({ts:b(t,"system")[0],timeZone:this._timeZone,locale:this._locale,offset:this._offset});if(!o.isValid())return NaN;var i=(0,u.normalizeDurationUnit)(n||"millisecond"),a=6e4*(o.utcOffset()-this.utcOffset()),s=0;switch(i){case"years":s=(0,u.monthDiff)(this,o)/12;break;case"quarters":s=(0,u.monthDiff)(this,o)/3;break;case"months":s=(0,u.monthDiff)(this,o);break;case"weeks":s=(this.valueOf()-o.valueOf()-a)/6048e5;break;case"days":s=(this.valueOf()-o.valueOf()-a)/864e5;break;case"hours":s=(this.valueOf()-o.valueOf())/36e5;break;case"minutes":s=(this.valueOf()-o.valueOf())/6e4;break;case"seconds":s=(this.valueOf()-o.valueOf())/1e3;break;default:s=this.valueOf()-o.valueOf()}return r?s:Math.floor(Math.abs(s))*Math.sign(s)||0},e.prototype.fromNow=function(e){return this.from(_({timeZone:this._timeZone,lang:this._locale}),e)},e.prototype.from=function(e,t){return this.isValid()?(0,p.fromTo)(this,e,this._localeData.relativeTime,t,!0):this._localeData.invalidDate||i.INVALID_DATE_STRING},e.prototype.locale=function(e){return e?this.isValid()?y({ts:this.valueOf(),timeZone:this._timeZone,offset:this._offset,locale:a.default.locale(e,void 0,!0)}):this:this._locale},e.prototype.toDate=function(){return new Date(this.valueOf())},e.prototype.unix=function(){return this.isValid()?Math.floor(this.valueOf()/1e3):NaN},e.prototype.utc=function(e){return this.timeZone(i.UtcTimeZone,e)},e.prototype.daysInMonth=function(){return this.isValid()?(0,u.daysInMonth)(this._c.year,this._c.month):NaN},e.prototype.set=function(e,t){var n,o;if(!this.isValid())return this;var a,s=this._c,l=(0,u.normalizeDateComponents)("object"===typeof e?e:((n={})[e]=t,n),u.normalizeComponent),d=void 0!==l.day||void 0!==l.weekNumber||void 0!==l.weekYear||void 0!==l.isoWeekNumber||void 0!==l.weekday||void 0!==l.isoWeekday||void 0!==l.isoWeekYear,f=void 0!==l.dayOfYear,p=void 0!==l.year,h=void 0!==l.month||void 0!==l.date;if(d&&(p||h||f))throw new Error("Can't mix weekYear/weekNumber units with year/month/day");if(f&&h)throw new Error("Can't mix day of year with month/day");if(d){var m=l.weekday,v=l.weekNumber,b=l.weekYear,w=l.isoWeekday,_=l.isoWeekNumber,E=l.isoWeekYear,x=l.day,S=void 0!==m||void 0!==v||void 0!==b;if(S&&(void 0!==w||void 0!==_||void 0!==E||void 0!==x))throw new Error("Can't mix local week with ISO week");var C=this.weekInfo();if(S){var k=g(this._localeData),O=k.minDaysInFirstWeek,T=k.startOfWeek,N={weekday:(null!==m&&void 0!==m?m:C.weekday)+1,weekNumber:null!==v&&void 0!==v?v:C.weekNumber,weekYear:null!==b&&void 0!==b?b:C.weekYear};a=r(r(r({},s),l),(0,u.weekToGregorian)(N,O,T))}else{N={weekday:null!==w&&void 0!==w?w:void 0===x?C.isoWeekday:x||7,weekNumber:null!==_&&void 0!==_?_:C.isoWeekNumber,weekYear:null!==E&&void 0!==E?E:C.isoWeekYear};a=r(r(r({},s),l),(0,u.weekToGregorian)(N,4,1))}}else f?a=r(r(r({},s),l),(0,u.uncomputeOrdinal)(r(r({ordinal:this.dayOfYear()},s),l))):(a=r(r({},s),l),void 0===l.date&&(a.date=Math.min((0,u.daysInMonth)(a.year,a.month),a.date)));var I=(0,u.objToTS)(a),P=this._offset;return this._timeZone===i.UtcTimeZone?I-=60*P*1e3:(I=(o=(0,c.fixOffset)(I,P,this._timeZone))[0],P=o[1]),y({ts:I,timeZone:this._timeZone,offset:P,locale:this._locale})},e.prototype.date=function(e){return"number"===typeof e?this.set("date",e):this.isValid()?this._c.date:NaN},e.prototype.month=function(e){return"number"===typeof e?this.set("month",e):this.isValid()?this._c.month:NaN},e.prototype.quarter=function(e){return"number"===typeof e?this.set("quarter",e):this.isValid()?Math.ceil((this._c.month+1)/3):NaN},e.prototype.year=function(e){return"number"===typeof e?this.set("year",e):this.isValid()?this._c.year:NaN},e.prototype.day=function(e){return"number"===typeof e?this.set("day",e):this.isValid()?this.weekInfo().day:NaN},e.prototype.isoWeekday=function(e){return"number"===typeof e?this.set("isoWeekday",e):this.isValid()?this.weekInfo().isoWeekday:NaN},e.prototype.hour=function(e){return"number"===typeof e?this.set("hour",e):this.isValid()?this._c.hour:NaN},e.prototype.minute=function(e){return"number"===typeof e?this.set("minute",e):this.isValid()?this._c.minute:NaN},e.prototype.second=function(e){return"number"===typeof e?this.set("second",e):this.isValid()?this._c.second:NaN},e.prototype.millisecond=function(e){return"number"===typeof e?this.set("millisecond",e):this.isValid()?this._c.millisecond:NaN},e.prototype.week=function(e){return"number"===typeof e?this.set("week",e):this.isValid()?this.weekInfo().weekNumber:NaN},e.prototype.weekYear=function(e){return"number"===typeof e?this.set("weekYear",e):this.isValid()?this.weekInfo().weekYear:NaN},e.prototype.weeksInYear=function(){var e=g(this._localeData),t=e.minDaysInFirstWeek,n=e.startOfWeek;return this.isValid()?(0,u.weeksInWeekYear)(this.year(),t,n):NaN},e.prototype.isoWeek=function(e){return"number"===typeof e?this.set("isoWeek",e):this.isValid()?this.weekInfo().isoWeekNumber:NaN},e.prototype.isoWeekYear=function(e){return"number"===typeof e?this.set("isoWeekYear",e):this.isValid()?this.weekInfo().isoWeekYear:NaN},e.prototype.isoWeeksInYear=function(){return this.isValid()?(0,u.weeksInWeekYear)(this.year(),4,1):NaN},e.prototype.weekday=function(e){return"number"===typeof e?this.set("weekday",e):this.isValid()?this.weekInfo().weekday:NaN},e.prototype.dayOfYear=function(e){return"number"===typeof e?this.set("dayOfYear",e):this.isValid()?(0,u.computeOrdinal)(this._c):NaN},e.prototype.toString=function(){return this.isValid()?this.toDate().toUTCString():this._localeData.invalidDate||i.INVALID_DATE_STRING},e.prototype.toJSON=function(){return this.isValid()?this.toISOString():null},e.prototype[Symbol.for("nodejs.util.inspect.custom")]=function(){return this.isValid()?"DateTime { ts: ".concat(this.toISOString(),", zone: ").concat(this.timeZone(),", offset: ").concat(this.utcOffset(),", locale: ").concat(this.locale()," }"):"DateTime { ".concat(i.INVALID_DATE_STRING," }")},e.prototype.addSubtract=function(e,t,n){var o;if(!this.isValid())return this;var a=this._timeZone,l=this.valueOf(),d=this._offset,f=(0,s.duration)(e,t),p=(0,u.tsToObject)(l,d),h=v(f.months()+3*f.quarters()+12*f.years()),m=v(f.days()+7*f.weeks()),g=f.milliseconds()+1e3*f.seconds()+60*f.minutes()*1e3+60*f.hours()*60*1e3;if(h||m){var b=p.month+n*h,w=Math.min(p.date,(0,u.daysInMonth)(p.year,b))+n*m;l=(0,u.objToTS)(r(r({},p),{month:b,date:w})),a===i.UtcTimeZone?l-=60*d*1e3:(l=(o=(0,c.fixOffset)(l,d,a))[0],d=o[1])}return g&&(l+=n*g,a!==i.UtcTimeZone&&(d=(0,c.timeZoneOffset)(a,l))),y({ts:l,timeZone:a,offset:d,locale:this._locale})},e.prototype.weekInfo=function(){if(!this._weekInfo){var e=g(this._localeData),t=e.startOfWeek,n=e.minDaysInFirstWeek;this._weekInfo=(0,u.gregorianToWeek)(this._c,n,t)}return this._weekInfo},e}();function g(e){return{startOfWeek:e.weekStart||7,minDaysInFirstWeek:e.yearStart||1}}function v(e){var t=Math.sign(e);return Math.round(t*e)*t}function y(e){var t=e.ts,n=e.timeZone,r=e.offset,o=e.locale||"en",i=a.default.Ls[o],s=!isNaN(Number(new Date(t)));return new m({ts:t,timeZone:n,offset:r,locale:o,localeData:i,isValid:s})}function b(e,t,n,r,o){var s,u,d,p;if(void 0===o&&(o=!1),w(e)||"number"===typeof e||e instanceof Date)d=Number(e);else if(null===e||void 0===e)d=Date.now();else if(Array.isArray(e))d=(s=(0,f.getTimestampFromArray)(e,t))[0],p=s[1];else if("object"===typeof e)d=(u=(0,f.getTimestampFromObject)(e,t))[0],p=u[1];else if(o)d=a.default.utc(e,n,i.STRICT).valueOf();else{var h=a.default.locale(r||l.settings.getLocale(),void 0,!0);d=(n?(0,a.default)(e,n,h,i.STRICT):(0,a.default)(e,void 0,h)).valueOf()}return[d,p=null!==p&&void 0!==p?p:(0,c.timeZoneOffset)(t,d)]}function w(e){return m.isDateTime(e)}function _(e){var t=e||{},n=t.input,r=t.format,o=t.timeZone,i=t.lang,s=(0,c.normalizeTimeZone)(o,l.settings.getDefaultTimeZone()),u=a.default.locale(i||l.settings.getLocale(),void 0,!0),d=b(n,s,r,i);return y({ts:d[0],timeZone:s,offset:d[1],locale:u})}t.isDateTime=w,t.dateTime=_,t.dateTimeUtc=function(e){var t=e||{},n=t.input,r=t.format,o=t.lang,s=a.default.locale(o||l.settings.getLocale(),void 0,!0);return y({ts:b(n,i.UtcTimeZone,r,o,!0)[0],timeZone:i.UtcTimeZone,offset:0,locale:s})}},17935:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formatDate=t.FORMAT_DEFAULT=t.expandFormat=void 0;var r=n(20843),o=n(14783),i=n(87116);function a(e,t){var n;return void 0===t&&(t=null!==(n=o.settings.getLocaleData().formats)&&void 0!==n?n:r.englishFormats),e.replace(/(\[[^\]]*])|(LTS?|l{1,4}|L{1,4})/g,(function(e,n,o){if(o){if(o in r.englishFormats)return t[o]||r.englishFormats[o];var i=o.toUpperCase();return(t[i]||r.englishFormats[i]).replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}return n}))}t.expandFormat=a,t.FORMAT_DEFAULT="YYYY-MM-DDTHH:mm:ssZ";var s=/(\[[^[]*\])|([Hh]mm(ss)?|Mo|M{1,4}|Do|DDDo|D{1,4}|d{2,4}|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|Y{4,6}|YY?|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,l={};function c(e){return e.replace(/^\[([\s\S)]*)\]$/g,"$1")}function u(e){return e%12||12}function d(e){return e||24}function f(e,t,n){var r=e<12?"AM":"PM";return n?r.toLowerCase():r}function p(e){var t=e.date,n=e.format,r=e.data,o=e.index,i=e.fullData,a=e.maxLength,s="";if(r&&(s="function"===typeof r?r(t,n):r[o]),!s&&i&&(s="function"===typeof i?i(t,n):i[o])&&(s=s.slice(0,a)),s)return s;throw new Error("Invalid locale data")}function h(e,t,n){void 0===n&&(n=!1);var r=String(Math.abs(e)),o="";return e<0?o="-":n&&(o="+"),"".concat(o).concat(r.padStart(t,"0"))}t.formatDate=function(e,n,r){void 0===n&&(n=t.FORMAT_DEFAULT),void 0===r&&(r=o.settings.getLocaleData());var i=a(n,r.formats);return i.replace(s,(function(t){return l[t]?l[t](e,r,i):c(t)}))},l.Y=function(e){var t=e.year();return t<=9999?h(t,4):"+"+t},l.YY=function(e){return h(e.year()%100,2)},l.YYYY=function(e){return h(e.year(),4)},l.YYYYY=function(e){return h(e.year(),5)},l.YYYYYY=function(e){return h(e.year(),6,!0)},l.M=function(e){return"".concat(e.month()+1)},l.MM=function(e){return h(e.month()+1,2)},l.Mo=function(e,t){var n;return c("".concat(null===(n=t.ordinal)||void 0===n?void 0:n.call(t,e.month()+1,"M")))},l.MMM=function(e,t,n){var r=e.month();return p({date:e,format:n,data:t.monthsShort,index:r,fullData:t.months,maxLength:3})},l.MMMM=function(e,t,n){var r=e.month();return p({date:e,format:n,data:t.months,index:r})},l.w=function(e){return"".concat(e.week())},l.ww=function(e){return h(e.week(),2)},l.wo=function(e,t){var n;return c("".concat(null===(n=t.ordinal)||void 0===n?void 0:n.call(t,e.week(),"w")))},l.W=function(e){return"".concat(e.isoWeek())},l.WW=function(e){return h(e.isoWeek(),2)},l.Wo=function(e,t){var n;return c("".concat(null===(n=t.ordinal)||void 0===n?void 0:n.call(t,e.isoWeek(),"W")))},l.d=function(e){return"".concat(e.day())},l.do=function(e,t){var n;return c("".concat(null===(n=t.ordinal)||void 0===n?void 0:n.call(t,e.day(),"d")))},l.dd=function(e,t,n){var r=e.day();return p({date:e,format:n,data:t.weekdaysMin,index:r,fullData:t.weekdays,maxLength:2})},l.ddd=function(e,t,n){var r=e.day();return p({date:e,format:n,data:t.weekdaysShort,index:r,fullData:t.weekdays,maxLength:3})},l.dddd=function(e,t,n){var r=e.day();return p({date:e,format:n,data:t.weekdays,index:r})},l.e=function(e){return"".concat(e.weekday())},l.E=function(e){return"".concat(e.isoWeekday())},l.H=function(e){return"".concat(e.hour())},l.HH=function(e){return h(e.hour(),2)},l.h=function(e){return"".concat(u(e.hour()))},l.hh=function(e){return h(u(e.hour()),2)},l.k=function(e){return"".concat(d(e.hour()))},l.kk=function(e){return h(d(e.hour()),2)},l.hmm=function(e){return"".concat(u(e.hour())).concat(h(e.minute(),2))},l.hmmss=function(e){return"".concat(u(e.hour())).concat(h(e.minute(),2)).concat(h(e.second(),2))},l.Hmm=function(e){return"".concat(e.hour()).concat(h(e.minute(),2))},l.Hmmss=function(e){return"".concat(e.hour()).concat(h(e.minute(),2)).concat(h(e.second(),2))},l.a=function(e,t){return(t.meridiem||f)(e.hour(),e.minute(),!0)},l.A=function(e,t){return(t.meridiem||f)(e.hour(),e.minute(),!1)},l.Z=function(e){var t=e.utcOffset(),n="+";return t<0&&(t=-t,n="-"),"".concat(n).concat(h(~~(t/60),2),":").concat(h(~~t%60,2))},l.ZZ=function(e){var t=e.utcOffset(),n="+";return t<0&&(t=-t,n="-"),"".concat(n).concat(h(~~(t/60),2)).concat(h(~~t%60,2))},l.Q=function(e){return"".concat(e.quarter())},l.Qo=function(e,t){var n;return c("".concat(null===(n=t.ordinal)||void 0===n?void 0:n.call(t,e.quarter(),"Q")))},l.D=function(e){return"".concat(e.date())},l.DD=function(e){return h(e.date(),2)},l.Do=function(e,t){var n;return c("".concat(null===(n=t.ordinal)||void 0===n?void 0:n.call(t,e.date(),"D")))},l.m=function(e){return"".concat(e.minute())},l.mm=function(e){return h(e.minute(),2)},l.s=function(e){return"".concat(e.second())},l.ss=function(e){return h(e.second(),2)},l.S=function(e){return"".concat(~~(e.millisecond()/100))},l.SS=function(e){return"".concat(~~(e.millisecond()/10))},l.SSS=function(e){return h(e.millisecond(),3)},l.SSSS=function(e){return h(10*e.millisecond(),4)},l.SSSSS=function(e){return h(100*e.millisecond(),5)},l.SSSSSS=function(e){return h(1e3*e.millisecond(),6)},l.SSSSSSS=function(e){return h(1e4*e.millisecond(),7)},l.SSSSSSSS=function(e){return h(1e5*e.millisecond(),8)},l.SSSSSSSSS=function(e){return h(1e6*e.millisecond(),9)},l.x=function(e){return"".concat(e.valueOf())},l.X=function(e){return"".concat(e.unix())},l.z=function(e){return(0,i.parseZoneInfo)({ts:e.valueOf(),locale:e.locale(),timeZone:e.timeZone(),offsetFormat:"short"})},l.zz=function(e){return(0,i.parseZoneInfo)({ts:e.valueOf(),locale:e.locale(),timeZone:e.timeZone(),offsetFormat:"long"})},l.DDD=function(e){return"".concat(e.dayOfYear())},l.DDDD=function(e){return h(e.dayOfYear(),3)},l.DDDo=function(e,t){var n;return c("".concat(null===(n=t.ordinal)||void 0===n?void 0:n.call(t,e.dayOfYear(),"DDD")))},l.gg=function(e){return h(e.weekYear()%100,2)},l.gggg=function(e){return h(e.weekYear(),4)},l.ggggg=function(e){return h(e.weekYear(),5)},l.GG=function(e){return h(e.isoWeekYear()%100,2)},l.GGGG=function(e){return h(e.isoWeekYear(),4)},l.GGGGG=function(e){return h(e.isoWeekYear(),5)}},18916:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),o(n(79376),t),o(n(17935),t)},71571:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getTimestampFromObject=t.getTimestampFromArray=void 0;var r=n(87116),o=n(59318);t.getTimestampFromArray=function(e,t){if(0===e.length)return s({},t);var n=e.map(Number),r=n[0],o=n[1],i=void 0===o?0:o,a=n[2],l=void 0===a?1:a,c=n[3],u=void 0===c?0:c,d=n[4],f=void 0===d?0:d,p=n[5],h=void 0===p?0:p,m=n[6];return s({year:r,month:i,date:l,hour:u,minute:f,second:h,millisecond:void 0===m?0:m},t)};var i={year:1,month:1,date:1,hour:0,minute:0,second:0,millisecond:0},a=["year","month","date","hour","minute","second","millisecond"];function s(e,t){var n,s=(0,o.normalizeDateComponents)(e,o.normalizeComponent);s.date=null!==(n=s.day)&&void 0!==n?n:s.date;for(var l=(0,o.tsToObject)(Date.now(),(0,r.timeZoneOffset)(t,Date.now())),c=!1,u=0,d=a;u{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fromTo=void 0;var r=n(79376),o=[{l:"s",r:44,d:"second"},{l:"m",r:89},{l:"mm",r:44,d:"minute"},{l:"h",r:89},{l:"hh",r:21,d:"hour"},{l:"d",r:35},{l:"dd",r:25,d:"day"},{l:"M",r:45},{l:"MM",r:10,d:"month"},{l:"y",r:17},{l:"yy",r:1/0,d:"year"}],i={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};t.fromTo=function(e,t,n,a,s){void 0===n&&(n=i),void 0===a&&(a=!1),void 0===s&&(s=!0);for(var l,c=0,u="",d=0;d0,p<=f.r){p<=1&&d>0&&(f=o[d-1]);var h=n[f.l];u="string"===typeof h?h.replace("%d","".concat(p)):h(p,a,f.l,l);break}}if(a)return u;var m=l?n.future:n.past;return"function"===typeof m?m(u):m.replace("%s",u)}},43104:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parseDateMath=t.parse=t.isLikeRelative=void 0;var r=n(18916),o=["y","Q","M","w","d","h","m","s"];function i(e,t,n){for(var r=e.replace(/\s/g,""),i=t,a=0,s=r.length;a10)return;u=parseInt(r.substring(d,a),10)}if(0===c&&1!==u)return;var f=r.charAt(a++);if(!o.includes(f))return;0===c?i=n?i.endOf(f):i.startOf(f):1===c?i=i.add(u,f):2===c&&(i=i.subtract(u,f))}return i}t.isLikeRelative=function(e){return e.startsWith("now")},t.parse=function(e,t){if(void 0===t&&(t={}),e){var n,o,a,s=t.roundUp,l=t.timeZone,c="";if("now"===e.substring(0,3)?(n=(0,r.dateTime)({timeZone:l}),c=e.substring("now".length)):(-1===(o=e.indexOf("||"))?(a=e,c=""):(a=e.substring(0,o),c=e.substring(o+2)),n=(0,r.dateTime)({input:a,timeZone:l})),n.isValid())return c.length?i(c,n,s):n}},t.parseDateMath=i},97553:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),o(n(43104),t)},4796:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=r(n(22877)),i=r(n(52703)),a=r(n(1035)),s=r(n(54591)),l=n(20843);o.default.extend(i.default),o.default.extend(s.default),o.default.extend(a.default),o.default.Ls.en.formats=l.englishFormats,t.default=o.default},48132:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createDuration=void 0;var r=n(39232),o=n(46808),i=n(90390),a=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9]+)(?:[.,]([0-9]+)?)?S)?)?$/;function s(e){var t=e?parseFloat(e.replace(",",".")):0;return isNaN(t)?0:t}t.createDuration=function(e,t,n){void 0===n&&(n={});var l={},c=null,u=(t&&"object"===typeof t?t:n).lang,d="string"===typeof t?t:"milliseconds";if((0,o.isDuration)(e))return e;if(isNaN(Number(e)))if("string"===typeof e&&(c=a.exec(e))){var f="-"===c[1]?-1:1,p=c[8]&&"-"===c[8][0]?-1:1;l=(0,i.removeZeros)({y:s(c[2])*f,M:s(c[3])*f,w:s(c[4])*f,d:s(c[5])*f,h:s(c[6])*f,m:s(c[7])*f,s:s(c[8])*f,ms:Math.floor(1e3*s(c[9]?"0.".concat(c[9]):c[9]))*p*f})}else{if(!e||"object"!==typeof e)throw new Error("Unknown duration: ".concat(e));l=e}else l[d]=Number(e);return new o.DurationImpl({values:(0,r.normalizeDateComponents)(l,r.normalizeDurationUnit),locale:u})}},46808:function(e,t,n){"use strict";var r,o=this&&this.__assign||function(){return o=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0,w=0,_=a;w<_.length;w++){var E=_[w];if(E.literal)p+=E.value;else{var x=f.get(E.unit);if(b){var S=(0,c.getNumberFormat)(this._locale,o(o({useGrouping:!1},y),{minimumIntegerDigits:E.padTo})),C=g?Math.floor(x):x;p+=S.format(C)}else{C=g?Math.floor(x):Math.round(1e3*x)/1e3;p+="".concat(C<0?"-":"").concat(Math.abs(C).toString().padStart(E.padTo,"0"))}}}return p},e.prototype.isValid=function(){return this._isValid},e.prototype.locale=function(t){return t?new e({values:this._values,locale:t}):this._locale},e}();function h(e){switch(e[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"w":return"week";case"M":return"month";case"y":return"year";default:return null}}t.DurationImpl=p,t.isDuration=function(e){return p.isDuration(e)}},98507:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isDuration=t.duration=void 0;var r=n(48132);Object.defineProperty(t,"duration",{enumerable:!0,get:function(){return r.createDuration}});var o=n(46808);Object.defineProperty(t,"isDuration",{enumerable:!0,get:function(){return o.isDuration}})},90390:function(e,t){"use strict";var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,r=arguments.length;n{"use strict";t.J=t.CQ=void 0,n(14783).settings;var r=n(18916);Object.defineProperty(t,"CQ",{enumerable:!0,get:function(){return r.dateTime}});var o=n(97553);var i=n(77757);Object.defineProperty(t,"J",{enumerable:!0,get:function(){return i.dateTimeParse}});var a=n(87116);var s=n(20843);var l=n(98507)},77757:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),o(n(4093),t)},4093:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isValid=t.dateTimeParse=t.isLikeRelative=void 0;var r=n(18916),o=n(14783);function i(e){return"string"===typeof e&&o.settings.getRelativeParser().isLikeRelative(e)}t.isLikeRelative=i;t.dateTimeParse=function(e,t){if(e){var n=function(e,t){var n;if(i(e)){if(null!==(n=null===t||void 0===t?void 0:t.allowRelative)&&void 0!==n&&!n)return;return o.settings.getRelativeParser().parse(e,t)}var a=t||{},s=a.format,l=a.lang,c=(0,r.dateTime)({input:e,format:s,lang:l,timeZone:null===t||void 0===t?void 0:t.timeZone});return c.isValid()?c:void 0}(e,t);return n}},t.isValid=function(e){if((0,r.isDateTime)(e))return e.isValid();var n=(0,t.dateTimeParse)(e,{allowRelative:!0});return!!n&&n.isValid()}},14783:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),o(n(82936),t)},24033:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.localeLoaders=void 0,t.localeLoaders={af:function(){return n.e(6392).then(n.t.bind(n,80246,23))},am:function(){return n.e(4618).then(n.t.bind(n,24618,23))},"ar-dz":function(){return n.e(704).then(n.t.bind(n,704,23))},"ar-iq":function(){return n.e(515).then(n.t.bind(n,60515,23))},"ar-kw":function(){return n.e(8858).then(n.t.bind(n,48858,23))},"ar-ly":function(){return n.e(6887).then(n.t.bind(n,96887,23))},"ar-ma":function(){return n.e(4848).then(n.t.bind(n,94848,23))},"ar-sa":function(){return n.e(4198).then(n.t.bind(n,34198,23))},"ar-tn":function(){return n.e(620).then(n.t.bind(n,20620,23))},ar:function(){return n.e(9204).then(n.t.bind(n,89204,23))},az:function(){return n.e(1736).then(n.t.bind(n,11736,23))},be:function(){return n.e(8747).then(n.t.bind(n,38747,23))},bg:function(){return n.e(1528).then(n.t.bind(n,31528,23))},bi:function(){return n.e(6877).then(n.t.bind(n,36877,23))},bm:function(){return n.e(4814).then(n.t.bind(n,34814,23))},"bn-bd":function(){return n.e(202).then(n.t.bind(n,10202,23))},bn:function(){return n.e(9280).then(n.t.bind(n,9280,23))},bo:function(){return n.e(5863).then(n.t.bind(n,65863,23))},br:function(){return n.e(6058).then(n.t.bind(n,46058,23))},bs:function(){return n.e(632).then(n.t.bind(n,70632,23))},ca:function(){return n.e(7202).then(n.t.bind(n,47202,23))},cs:function(){return n.e(7999).then(n.t.bind(n,47999,23))},cv:function(){return n.e(2367).then(n.t.bind(n,52367,23))},cy:function(){return n.e(5373).then(n.t.bind(n,45373,23))},da:function(){return n.e(6393).then(n.t.bind(n,66393,23))},"de-at":function(){return n.e(5448).then(n.t.bind(n,45448,23))},"de-ch":function(){return n.e(6679).then(n.t.bind(n,96679,23))},de:function(){return n.e(4132).then(n.t.bind(n,84132,23))},dv:function(){return n.e(9219).then(n.t.bind(n,29219,23))},el:function(){return n.e(556).then(n.t.bind(n,20556,23))},"en-au":function(){return n.e(8850).then(n.t.bind(n,98850,23))},"en-ca":function(){return n.e(9297).then(n.t.bind(n,29297,23))},"en-gb":function(){return n.e(3630).then(n.t.bind(n,63630,23))},"en-ie":function(){return n.e(3231).then(n.t.bind(n,83231,23))},"en-il":function(){return n.e(6815).then(n.t.bind(n,6815,23))},"en-in":function(){return n.e(2620).then(n.t.bind(n,12620,23))},"en-nz":function(){return n.e(6961).then(n.t.bind(n,96961,23))},"en-sg":function(){return n.e(7257).then(n.t.bind(n,7257,23))},"en-tt":function(){return n.e(8702).then(n.t.bind(n,58702,23))},en:function(){return n.e(3304).then(n.t.bind(n,73304,23))},eo:function(){return n.e(1508).then(n.t.bind(n,11508,23))},"es-do":function(){return n.e(3271).then(n.t.bind(n,53271,23))},"es-mx":function(){return n.e(30).then(n.t.bind(n,50030,23))},"es-pr":function(){return n.e(5117).then(n.t.bind(n,85117,23))},"es-us":function(){return n.e(5387).then(n.t.bind(n,95387,23))},es:function(){return n.e(5670).then(n.t.bind(n,5670,23))},et:function(){return n.e(7388).then(n.t.bind(n,27388,23))},eu:function(){return n.e(3333).then(n.t.bind(n,3333,23))},fa:function(){return n.e(1278).then(n.t.bind(n,61278,23))},fi:function(){return n.e(178).then(n.t.bind(n,10178,23))},fo:function(){return n.e(6892).then(n.t.bind(n,46892,23))},"fr-ca":function(){return n.e(2229).then(n.t.bind(n,62229,23))},"fr-ch":function(){return n.e(4326).then(n.t.bind(n,94326,23))},fr:function(){return n.e(7276).then(n.t.bind(n,97276,23))},fy:function(){return n.e(7803).then(n.t.bind(n,67803,23))},ga:function(){return n.e(5720).then(n.t.bind(n,85720,23))},gd:function(){return n.e(6954).then(n.t.bind(n,6954,23))},gl:function(){return n.e(9413).then(n.t.bind(n,19413,23))},"gom-latn":function(){return n.e(3945).then(n.t.bind(n,53945,23))},gu:function(){return n.e(2981).then(n.t.bind(n,72981,23))},he:function(){return n.e(1150).then(n.t.bind(n,11150,23))},hi:function(){return n.e(3926).then(n.t.bind(n,3926,23))},hr:function(){return n.e(5643).then(n.t.bind(n,45643,23))},ht:function(){return n.e(5161).then(n.t.bind(n,25161,23))},hu:function(){return n.e(2238).then(n.t.bind(n,42238,23))},"hy-am":function(){return n.e(8133).then(n.t.bind(n,18133,23))},id:function(){return n.e(4949).then(n.t.bind(n,84949,23))},is:function(){return n.e(383).then(n.t.bind(n,20383,23))},"it-ch":function(){return n.e(2701).then(n.t.bind(n,32701,23))},it:function(){return n.e(3645).then(n.t.bind(n,73645,23))},ja:function(){return n.e(2677).then(n.t.bind(n,92677,23))},jv:function(){return n.e(2477).then(n.t.bind(n,22477,23))},ka:function(){return n.e(5399).then(n.t.bind(n,45399,23))},kk:function(){return n.e(4985).then(n.t.bind(n,34985,23))},km:function(){return n.e(674).then(n.t.bind(n,10674,23))},kn:function(){return n.e(9207).then(n.t.bind(n,89207,23))},ko:function(){return n.e(7779).then(n.t.bind(n,77779,23))},ku:function(){return n.e(1148).then(n.t.bind(n,61148,23))},ky:function(){return n.e(8011).then(n.t.bind(n,8011,23))},lb:function(){return n.e(96).then(n.t.bind(n,80096,23))},lo:function(){return n.e(8167).then(n.t.bind(n,68167,23))},lt:function(){return n.e(4347).then(n.t.bind(n,64347,23))},lv:function(){return n.e(2223).then(n.t.bind(n,62223,23))},me:function(){return n.e(2033).then(n.t.bind(n,2033,23))},mi:function(){return n.e(8695).then(n.t.bind(n,68695,23))},mk:function(){return n.e(8140).then(n.t.bind(n,18140,23))},ml:function(){return n.e(6227).then(n.t.bind(n,36227,23))},mn:function(){return n.e(148).then(n.t.bind(n,50148,23))},mr:function(){return n.e(9572).then(n.t.bind(n,59572,23))},"ms-my":function(){return n.e(1179).then(n.t.bind(n,81179,23))},ms:function(){return n.e(1746).then(n.t.bind(n,81746,23))},mt:function(){return n.e(3466).then(n.t.bind(n,33466,23))},my:function(){return n.e(4684).then(n.t.bind(n,44684,23))},nb:function(){return n.e(5226).then(n.t.bind(n,45226,23))},ne:function(){return n.e(115).then(n.t.bind(n,50115,23))},"nl-be":function(){return n.e(4964).then(n.t.bind(n,14964,23))},nl:function(){return n.e(1869).then(n.t.bind(n,11869,23))},nn:function(){return n.e(9917).then(n.t.bind(n,59917,23))},"oc-lnc":function(){return n.e(1343).then(n.t.bind(n,51343,23))},"pa-in":function(){return n.e(3025).then(n.t.bind(n,73025,23))},pl:function(){return n.e(6156).then(n.t.bind(n,26156,23))},"pt-br":function(){return n.e(6361).then(n.t.bind(n,56361,23))},pt:function(){return n.e(4663).then(n.t.bind(n,74663,23))},rn:function(){return n.e(7992).then(n.t.bind(n,17992,23))},ro:function(){return n.e(3756).then(n.t.bind(n,83756,23))},ru:function(){return n.e(678).then(n.t.bind(n,40678,23))},rw:function(){return n.e(436).then(n.t.bind(n,75643,23))},sd:function(){return n.e(5112).then(n.t.bind(n,5112,23))},se:function(){return n.e(9555).then(n.t.bind(n,49555,23))},si:function(){return n.e(5809).then(n.t.bind(n,25809,23))},sk:function(){return n.e(5450).then(n.t.bind(n,95450,23))},sl:function(){return n.e(5491).then(n.t.bind(n,75491,23))},sq:function(){return n.e(8591).then(n.t.bind(n,98591,23))},"sr-cyrl":function(){return n.e(7016).then(n.t.bind(n,77016,23))},sr:function(){return n.e(9308).then(n.t.bind(n,69308,23))},ss:function(){return n.e(9411).then(n.t.bind(n,99411,23))},"sv-fi":function(){return n.e(6521).then(n.t.bind(n,86521,23))},sv:function(){return n.e(4159).then(n.t.bind(n,14159,23))},sw:function(){return n.e(9528).then(n.t.bind(n,99528,23))},ta:function(){return n.e(4826).then(n.t.bind(n,14826,23))},te:function(){return n.e(5352).then(n.t.bind(n,45352,23))},tet:function(){return n.e(9292).then(n.t.bind(n,49292,23))},tg:function(){return n.e(7684).then(n.t.bind(n,77684,23))},th:function(){return n.e(9212).then(n.t.bind(n,89212,23))},tk:function(){return n.e(6065).then(n.t.bind(n,16065,23))},"tl-ph":function(){return n.e(5341).then(n.t.bind(n,45341,23))},tlh:function(){return n.e(4583).then(n.t.bind(n,4583,23))},tr:function(){return n.e(3920).then(n.t.bind(n,33920,23))},tzl:function(){return n.e(7119).then(n.t.bind(n,97119,23))},"tzm-latn":function(){return n.e(6144).then(n.t.bind(n,36144,23))},tzm:function(){return n.e(1350).then(n.t.bind(n,31350,23))},"ug-cn":function(){return n.e(2590).then(n.t.bind(n,92590,23))},uk:function(){return n.e(6291).then(n.t.bind(n,26291,23))},ur:function(){return n.e(3397).then(n.t.bind(n,53397,23))},"uz-latn":function(){return n.e(1168).then(n.t.bind(n,51168,23))},uz:function(){return n.e(8853).then(n.t.bind(n,8853,23))},vi:function(){return n.e(4535).then(n.t.bind(n,44535,23))},"x-pseudo":function(){return n.e(9101).then(n.t.bind(n,79101,23))},yo:function(){return n.e(2986).then(n.t.bind(n,42986,23))},"zh-cn":function(){return n.e(4080).then(n.t.bind(n,4080,23))},"zh-hk":function(){return n.e(3898).then(n.t.bind(n,73898,23))},"zh-tw":function(){return n.e(1616).then(n.t.bind(n,33739,23))},zh:function(){return n.e(7522).then(n.t.bind(n,87522,23))}}},82936:function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{l(r.next(e))}catch(t){i(t)}}function s(e){try{l(r.throw(e))}catch(t){i(t)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,r=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]=0){var v=new Date(g);v.setUTCFullYear(p,h,o.day),g=v.valueOf()}var y=n.valueOf(),b=y%1e3;return(g-(y-=b>=0?b:1e3+b))/6e4}function u(e,t){if(void 0===e||null===e)return t;var n=e.toLowerCase();if("utc"===n||"gmt"===n)return o.UtcTimeZone;if("system"===n)return"system";if("default"===n)return t;if(s(e))return e;throw new Error("InvalidZone: ".concat(e))}t.timeZoneOffset=c,t.normalizeTimeZone=u,t.fixOffset=function(e,t,n){var r=e-60*t*1e3,o=c(n,r);if(t===o)return[r,t];var i=c(n,r-=60*(o-t)*1e3);return o===i?[r,o]:[e-60*Math.min(o,i)*1e3,Math.min(o,i)]},t.parseZoneInfo=function(e){var t=e.timeZone,n=e.ts,o=e.locale,i=e.offsetFormat,a=new Date(n),s={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};t&&(s.timeZone=u(t,t));var l=r({timeZoneName:i},s),c=new Intl.DateTimeFormat(o,l).formatToParts(a).find((function(e){return"timezonename"===e.type.toLowerCase()}));return c?c.value:""}},59318:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),o(n(39232),t)},55353:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getNumberFormat=t.getListFormat=t.getDateTimeFormat=void 0;var n=new Map;t.getDateTimeFormat=function(e,t){void 0===t&&(t={});var r=JSON.stringify([e,t]),o=n.get(r);return o||(o=new Intl.DateTimeFormat(e,t),n.set(r,o)),o};var r=new Map;t.getListFormat=function(e,t){void 0===t&&(t={});var n=JSON.stringify([e,t]),o=r.get(n);return o||(o=new Intl.ListFormat(e,t),r.set(n,o)),o};var o=new Map;t.getNumberFormat=function(e,t){void 0===t&&(t={});var n=JSON.stringify([e,t]),r=o.get(n);return r||(r=new Intl.NumberFormat(e,t),o.set(n,r)),r}},39232:(e,t)=>{"use strict";function n(e,t){return e-t*Math.floor(e/t)}function r(e){return e%4===0&&(e%100!==0||e%400===0)}function o(e){return r(e)?366:365}Object.defineProperty(t,"__esModule",{value:!0}),t.monthDiff=t.weekToGregorian=t.weeksInWeekYear=t.gregorianToWeek=t.isoWeekdayToLocal=t.uncomputeOrdinal=t.computeOrdinal=t.offsetFromString=t.normalizeDateComponents=t.normalizeComponent=t.normalizeDurationUnit=t.objToTS=t.tsToObject=t.daysInMonth=t.daysInYear=t.isLeapYear=t.floorMod=void 0,t.floorMod=n,t.isLeapYear=r,t.daysInYear=o,t.daysInMonth=function(e,t){var o=n(t,12);return 1===o?r(e+(t-o)/12)?29:28:[31,-1,31,30,31,30,31,31,30,31,30,31][o]},t.tsToObject=function(e,t){var n=new Date(e+60*t*1e3);return{year:n.getUTCFullYear(),month:n.getUTCMonth(),date:n.getUTCDate(),hour:n.getUTCHours(),minute:n.getUTCMinutes(),second:n.getUTCSeconds(),millisecond:n.getUTCMilliseconds()}},t.objToTS=function(e){var t=Date.UTC(e.year,e.month,e.date,e.hour,e.minute,e.second,e.millisecond);if(e.year<100&&e.year>=0){var n=new Date(t);return n.setUTCFullYear(e.year,e.month,e.date),n.valueOf()}return t};var i={y:"years",year:"years",years:"years",Q:"quarters",quarter:"quarters",quarters:"quarters",M:"months",month:"months",months:"months",w:"weeks",week:"weeks",weeks:"weeks",d:"days",day:"days",days:"days",h:"hours",hour:"hours",hours:"hours",m:"minutes",minute:"minutes",minutes:"minutes",s:"seconds",second:"seconds",seconds:"seconds",ms:"milliseconds",millisecond:"milliseconds",milliseconds:"milliseconds"};t.normalizeDurationUnit=function(e){var t=["d","D","m","M","w","W","E","Q"].includes(e)?e:e.toLowerCase();if(t in i)return i[t];throw new Error("Invalid unit ".concat(e))};var a={y:"year",year:"year",years:"year",M:"month",month:"month",months:"month",D:"date",date:"date",dates:"date",h:"hour",hour:"hour",hours:"hour",m:"minute",minute:"minute",minutes:"minute",Q:"quarter",quarter:"quarter",quarters:"quarter",s:"second",second:"second",seconds:"second",ms:"millisecond",millisecond:"millisecond",milliseconds:"millisecond",d:"day",day:"day",days:"day",weeknumber:"weekNumber",w:"weekNumber",week:"weekNumber",weeks:"weekNumber",isoweeknumber:"isoWeekNumber",W:"isoWeekNumber",isoweek:"isoWeekNumber",isoweeks:"isoWeekNumber",E:"isoWeekday",isoweekday:"isoWeekday",isoweekdays:"isoWeekday",weekday:"weekday",weekdays:"weekday",e:"weekday",dayOfYear:"dayOfYear",dayOfYears:"dayOfYear",DDD:"dayOfYear",weekyear:"weekYear",isoweekyear:"isoWeekYear"};function s(e){var t=Number(e);if("boolean"===typeof e||""===e||Number.isNaN(t))throw new Error("Invalid unit value ".concat(e));return t}t.normalizeComponent=function(e){var t=["d","D","m","M","w","W","e","E","Q"].includes(e)?e:e.toLowerCase();if(t in a)return a[t];throw new Error("Invalid unit ".concat(e))},t.normalizeDateComponents=function(e,t){for(var n={},r=0,o=Object.entries(e);r=0&&r.setUTCFullYear(r.getUTCFullYear()-1900),r.getUTCDay()}function d(e,t,n){var r=u(e,t,n);return 0===r?7:r}t.offsetFromString=function(e){var t=(e||"").match(l);if(null===t)return null;var n=t[t.length-1]||"",r=String(n).match(c)||["-",0,0],o=r[0],i=r[1],a=r[2],s=Number(60*Number(i))+(isFinite(Number(a))?Number(a):0);return"+"===o?s:-s};var f=[0,31,59,90,120,151,181,212,243,273,304,334],p=[0,31,60,91,121,152,182,213,244,274,305,335];function h(e){var t=e.year,n=e.month;return e.date+(r(t)?p:f)[n]}function m(e){var t=e.year,n=e.ordinal,o=r(t)?p:f,i=o.findIndex((function(e){return eb(o,t,n)?(r=o+1,c=1):r=o,{weekYear:r,weekNumber:c,weekday:s}}function y(e,t,n){return-g(d(e,0,t),n)+t-1}function b(e,t,n){void 0===t&&(t=4),void 0===n&&(n=1);var r=y(e,t,n),i=y(e+1,t,n);return(o(e)-r+i)/7}t.computeOrdinal=h,t.uncomputeOrdinal=m,t.isoWeekdayToLocal=g,t.gregorianToWeek=function(e,t,n){var r=u(e.year,e.month,e.date),o=v(e,t,n),i=o.weekYear,a=o.weekNumber,s=o.weekday,l=v(e,4,1);return{day:r,weekYear:i,weekNumber:a,weekday:s-1,isoWeekYear:l.weekYear,isoWeekNumber:l.weekNumber,isoWeekday:l.weekday}},t.weeksInWeekYear=b,t.weekToGregorian=function(e,t,n){var r,i=e.weekYear,a=e.weekNumber,s=e.weekday,l=g(d(i,0,t),n),c=o(i),u=7*a+s-l-7+t;u<1?u+=o(r=i-1):u>c?(r=i+1,u-=o(i)):r=i;var f=m({year:r,ordinal:u});return{year:r,month:f.month,date:f.date}},t.monthDiff=function e(t,n){if(t.date(){"use strict";n.d(t,{mb:()=>u});const r=/{{(.*?)}}/g;const o={EmptyKeyset:"EMPTY_KEYSET",EmptyLanguageData:"EMPTY_LANGUAGE_DATA",KeysetNotFound:"KEYSET_NOT_FOUND",MissingKey:"MISSING_KEY",MissingKeyFor0:"MISSING_KEY_FOR_0",MissingKeyParamsCount:"MISSING_KEY_PARAMS_COUNT",MissingKeyPlurals:"MISSING_KEY_PLURALS",NoLanguageData:"NO_LANGUAGE_DATA"};Object.values(o);function i(e){const{code:t,fallbackLang:n,lang:r}=e;let i="Using language ".concat(r,". ");switch(t){case o.EmptyKeyset:i+="Keyset is empty.";break;case o.EmptyLanguageData:i+="Language data is empty.";break;case o.KeysetNotFound:i+="Keyset not found.";break;case o.MissingKey:i+="Missing key.";break;case o.MissingKeyFor0:return i+="Missing key for 0",i;case o.MissingKeyParamsCount:i+="Missing params.count for key.";break;case o.MissingKeyPlurals:i+="Missing required plurals.";break;case o.NoLanguageData:i='Language "'.concat(r,'" is not defined, make sure you call setLang for the same language you called registerKeysets for!')}return n&&(i+=' Trying to use fallback language "'.concat(n,'"...')),i}var a;function s(e,t){return 0===e?t.None:1===e||-1===e?t.One:t.Many}function l(e,t){const n=Math.abs(e%10),r=Math.abs(e%100);return 0===e?t.None:1===n&&11!==r?t.One:n>1&&n<5&&(r<10||r>20)?t.Few:t.Many}function c(e){let{value:t,count:n,lang:r,pluralizers:o,log:i,key:s}=e;if(!Array.isArray(t))return function(e,t,n){if(e.zero&&0===t)return e.zero;if(!Intl.PluralRules)throw new Error("Intl.PluralRules is not available. Use polyfill.");const r=new Intl.PluralRules(n).select(t);return"other"===r&&"undefined"===typeof e.other?e.many||e.few:e[r]||e.other}(t,n,r)||s;if(!o)return i("Can not use deprecated plural format without pluralizers"),s;if(o[r]||i("Pluralization is not configured for language '".concat(r,"', falling back to the english ruleset")),t.length<3)return i("Missing required plurals"),s;const l=o[r]||o.en;return l?t[l(n,a)]||t[a.Many]||s:(i("Fallback pluralization is not configured!"),s)}!function(e){e[e.One=0]="One",e[e.Few=1]="Few",e[e.Many=2]="Many",e[e.None=3]="None"}(a||(a={}));class u{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.data={},this.pluralizers={en:s,ru:l},this.logger=null;const{data:t,fallbackLang:n,lang:r,logger:o=null}=e;this.fallbackLang=n,this.lang=r,this.logger=o,t&&Object.entries(t).forEach((e=>{let[t,n]=e;this.registerKeysets(t,n)}))}setLang(e){this.lang=e}setFallbackLang(e){this.fallbackLang=e}configurePluralization(e){this.pluralizers=Object.assign({},this.pluralizers,e)}registerKeyset(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=this.data[e]&&Object.prototype.hasOwnProperty.call(this.data[e],t);if(r)throw new Error("Keyset '".concat(t,"' is already registered, aborting!"));r&&this.warn("Keyset '".concat(t,"' is already registered.")),this.data[e]=Object.assign({},this.data[e],{[t]:n})}registerKeysets(e,t){Object.keys(t).forEach((n=>{this.registerKeyset(e,n,t[n])}))}has(e,t,n){var r;const o=this.getLanguageData(n);return Boolean(o&&o[e]&&(null===(r=o[e])||void 0===r?void 0:r[t]))}i18n(e,t,n){if(!this.lang&&!this.fallbackLang)throw new Error('Language is not specified. You should set at least one of these: "lang", "fallbackLang"');let r,o;if(this.lang){if(({text:r,details:o}=this.getTranslationData({keysetName:e,key:t,params:n,lang:this.lang})),o){const e=i({code:o.code,lang:this.lang,fallbackLang:this.fallbackLang===this.lang?void 0:this.fallbackLang});this.warn(e,o.keysetName,o.key)}}else this.warn("Target language is not specified.");if(void 0===r&&this.fallbackLang&&this.fallbackLang!==this.lang&&(({text:r,details:o}=this.getTranslationData({keysetName:e,key:t,params:n,lang:this.fallbackLang})),o)){const e=i({code:o.code,lang:this.fallbackLang});this.warn(e,o.keysetName,o.key)}return null!==r&&void 0!==r?r:t}keyset(e){return(t,n)=>this.i18n(e,t,n)}warn(e,t,n){var r;let o="";t?(o+=t,n&&(o+=".".concat(n))):o="languageData",null===(r=this.logger)||void 0===r||r.log("I18n: ".concat(e),{level:"info",logger:o,extra:{type:"i18n"}})}getLanguageData(e){const t=e||this.lang;return t?this.data[t]:void 0}getTranslationData(e){const{lang:t,key:n,keysetName:i,params:a}=e,s=this.getLanguageData(t);if("undefined"===typeof s)return{details:{code:o.NoLanguageData}};if(0===Object.keys(s).length)return{details:{code:o.EmptyLanguageData}};const l=s[i];if(!l)return{details:{code:o.KeysetNotFound,keysetName:i}};if(0===Object.keys(l).length)return{details:{code:o.EmptyKeyset,keysetName:i}};const u=l&&l[n],d={};if(void 0===u)return{details:{code:o.MissingKey,keysetName:i,key:n}};if("string"!==typeof u){const e=Number(null===a||void 0===a?void 0:a.count);if(Number.isNaN(e))return{details:{code:o.MissingKeyParamsCount,keysetName:i,key:n}};d.text=c({key:n,value:u,count:e,lang:this.lang||"en",pluralizers:this.pluralizers,log:e=>this.warn(e,i,n)})}else d.text=u;return a&&(d.text=function(e,t){let n,o="",i=r.lastIndex=0;for(;n=r.exec(e);){i!==n.index&&(o+=e.slice(i,n.index)),i=r.lastIndex;const[a,s]=n;s&&Object.prototype.hasOwnProperty.call(t,s)?o+=t[s]:o+=a}return i{"use strict";n.d(t,{Z:()=>o});var r=n(68963);const o=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10 1.5A.75.75 0 0 0 10 3h1.94L6.97 7.97a.75.75 0 0 0 1.06 1.06L13 4.06V6a.75.75 0 0 0 1.5 0V2.25a.75.75 0 0 0-.75-.75H10ZM7.5 3.25a.75.75 0 0 0-.75-.75H4.5a3 3 0 0 0-3 3v6a3 3 0 0 0 3 3h6a3 3 0 0 0 3-3V9.25a.75.75 0 0 0-1.5 0v2.25a1.5 1.5 0 0 1-1.5 1.5h-6A1.5 1.5 0 0 1 3 11.5v-6A1.5 1.5 0 0 1 4.5 4h2.25a.75.75 0 0 0 .75-.75Z",clipRule:"evenodd"}))},57542:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(68963);const o=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M2.97 5.47a.75.75 0 0 1 1.06 0L8 9.44l3.97-3.97a.75.75 0 1 1 1.06 1.06l-4.5 4.5a.75.75 0 0 1-1.06 0l-4.5-4.5a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"}))},96261:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(68963);const o=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M13.5 8a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0ZM15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0Zm-3.9-1.55a.75.75 0 1 0-1.2-.9L7.419 8.858 6.03 7.47a.75.75 0 0 0-1.06 1.06l2 2a.75.75 0 0 0 1.13-.08l3-4Z",clipRule:"evenodd"}))},68010:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(68963);const o=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 13.5a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11ZM8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm1-9.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Zm-.25 3a.75.75 0 0 0-1.5 0V11a.75.75 0 0 0 1.5 0V8.5Z",clipRule:"evenodd"}))},32257:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(68963);const o=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M8 13.5a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11ZM8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14ZM6.44 4.54c.43-.354.994-.565 1.56-.565 1.217 0 2.34.82 2.34 2.14 0 .377-.079.745-.298 1.1-.208.339-.513.614-.875.867-.217.153-.326.257-.379.328-.038.052-.038.07-.038.089a.75.75 0 0 1-1.5 0c0-.794.544-1.286 1.057-1.645.28-.196.4-.332.458-.426a.543.543 0 0 0 .074-.312c0-.3-.243-.641-.839-.641a.997.997 0 0 0-.608.223c-.167.138-.231.287-.231.418a.75.75 0 1 1-1.5 0c0-.674.345-1.22.78-1.577ZM8 12a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z",clipRule:"evenodd"}))},98409:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(68963);const o=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M3 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM9.5 8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Zm5 0a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Z",clipRule:"evenodd"}))},21645:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(68963);const o=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("g",{clipPath:"url(#a)"},r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M7.199 2H8.8a.2.2 0 0 1 .2.2c0 1.808 1.958 2.939 3.524 2.034a.199.199 0 0 1 .271.073l.802 1.388a.199.199 0 0 1-.073.272c-1.566.904-1.566 3.164 0 4.069a.199.199 0 0 1 .073.271l-.802 1.388a.199.199 0 0 1-.271.073C10.958 10.863 9 11.993 9 13.8a.2.2 0 0 1-.199.2H7.2a.199.199 0 0 1-.2-.2c0-1.808-1.958-2.938-3.524-2.034a.199.199 0 0 1-.272-.073l-.8-1.388a.199.199 0 0 1 .072-.271c1.566-.905 1.566-3.165 0-4.07a.199.199 0 0 1-.073-.271l.801-1.388a.199.199 0 0 1 .272-.073C5.042 5.138 7 4.007 7 2.2c0-.11.089-.199.199-.199ZM5.5 2.2c0-.94.76-1.7 1.699-1.7H8.8c.94 0 1.7.76 1.7 1.7a.85.85 0 0 0 1.274.735 1.699 1.699 0 0 1 2.32.622l.802 1.388c.469.813.19 1.851-.622 2.32a.85.85 0 0 0 0 1.472 1.7 1.7 0 0 1 .622 2.32l-.802 1.388a1.699 1.699 0 0 1-2.32.622.85.85 0 0 0-1.274.735c0 .939-.76 1.7-1.699 1.7H7.2a1.7 1.7 0 0 1-1.699-1.7.85.85 0 0 0-1.274-.735 1.698 1.698 0 0 1-2.32-.622l-.802-1.388a1.699 1.699 0 0 1 .622-2.32.85.85 0 0 0 0-1.471 1.699 1.699 0 0 1-.622-2.321l.801-1.388a1.699 1.699 0 0 1 2.32-.622A.85.85 0 0 0 5.5 2.2Zm4 5.8a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z",clipRule:"evenodd"})),r.createElement("defs",null,r.createElement("clipPath",{id:"a"},r.createElement("path",{fill:"currentColor",d:"M0 0h16v16H0z"}))))},20397:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(68963);const o=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M7 3a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0ZM5.5 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm5 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm0-5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM7 13a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Zm3.5 1.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z",clipRule:"evenodd"}))},3442:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(68963);const o=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"m7.835 6 .76-2.027L9.336 2H5.5a.716.716 0 0 0-.664.45L2.513 8.257a.177.177 0 0 0 .164.243h4.965l-.732 2.013-1.082 2.975a.382.382 0 0 0 .637.392l6.956-7.391A.29.29 0 0 0 13.21 6H7.835Zm1.558-4.154ZM10.563 3l.235-.627A1.386 1.386 0 0 0 9.5.5h-4c-.906 0-1.72.552-2.057 1.393L1.12 7.7A1.677 1.677 0 0 0 2.677 10H5.5l-.545 1.5-.537 1.475a1.882 1.882 0 0 0 3.14 1.933l6.956-7.391A1.79 1.79 0 0 0 13.21 4.5H10l.563-1.5Z",clipRule:"evenodd"}))},93316:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(68963);const o=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M7.134 2.994 2.217 11.5a1 1 0 0 0 .866 1.5h9.834a1 1 0 0 0 .866-1.5L8.866 2.993a1 1 0 0 0-1.732 0Zm3.03-.75c-.962-1.665-3.366-1.665-4.328 0L.919 10.749c-.964 1.666.239 3.751 2.164 3.751h9.834c1.925 0 3.128-2.085 2.164-3.751l-4.917-8.505ZM8 5a.75.75 0 0 1 .75.75v2a.75.75 0 0 1-1.5 0v-2A.75.75 0 0 1 8 5Zm1 5.75a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z",clipRule:"evenodd"}))},77280:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(68963);const o=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M3.47 3.47a.75.75 0 0 1 1.06 0L8 6.94l3.47-3.47a.75.75 0 1 1 1.06 1.06L9.06 8l3.47 3.47a.75.75 0 1 1-1.06 1.06L8 9.06l-3.47 3.47a.75.75 0 0 1-1.06-1.06L6.94 8 3.47 4.53a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"}))},5718:(e,t,n)=>{"use strict";n.d(t,{N:()=>o,b:()=>i});var r=n(5247);const o="gn-";(0,r.withNaming)({e:"__",m:"_"});const i=(0,r.withNaming)({n:o,e:"__",m:"_"})},5687:(e,t,n)=>{"use strict";n.d(t,{d:()=>H});var r="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof window?window:"undefined"!==typeof n.g?n.g:"undefined"!==typeof self?self:{};var o=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},i="object"==typeof r&&r&&r.Object===Object&&r,a="object"==typeof self&&self&&self.Object===Object&&self,s=i||a||Function("return this")(),l=s,c=function(){return l.Date.now()},u=/\s/;var d=function(e){for(var t=e.length;t--&&u.test(e.charAt(t)););return t},f=/^\s+/;var p=function(e){return e?e.slice(0,d(e)+1).replace(f,""):e},h=s.Symbol,m=h,g=Object.prototype,v=g.hasOwnProperty,y=g.toString,b=m?m.toStringTag:void 0;var w=function(e){var t=v.call(e,b),n=e[b];try{e[b]=void 0;var r=!0}catch(i){}var o=y.call(e);return r&&(t?e[b]=n:delete e[b]),o},_=Object.prototype.toString;var E=w,x=function(e){return _.call(e)},S="[object Null]",C="[object Undefined]",k=h?h.toStringTag:void 0;var O=function(e){return null==e?void 0===e?C:S:k&&k in Object(e)?E(e):x(e)},T=function(e){return null!=e&&"object"==typeof e},N="[object Symbol]";var I=p,P=o,R=function(e){return"symbol"==typeof e||T(e)&&O(e)==N},D=NaN,A=/^[-+]0x[0-9a-f]+$/i,j=/^0b[01]+$/i,M=/^0o[0-7]+$/i,L=parseInt;var z=o,F=c,B=function(e){if("number"==typeof e)return e;if(R(e))return D;if(P(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=P(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=I(e);var n=j.test(e);return n||M.test(e)?L(e.slice(2),n?2:8):A.test(e)?D:+e},U="Expected a function",q=Math.max,Z=Math.min;var H=function(e,t,n){var r,o,i,a,s,l,c=0,u=!1,d=!1,f=!0;if("function"!=typeof e)throw new TypeError(U);function p(t){var n=r,i=o;return r=o=void 0,c=t,a=e.apply(i,n)}function h(e){var n=e-l;return void 0===l||n>=t||n<0||d&&e-c>=i}function m(){var e=F();if(h(e))return g(e);s=setTimeout(m,function(e){var n=t-(e-l);return d?Z(n,i-(e-c)):n}(e))}function g(e){return s=void 0,f&&r?p(e):(r=o=void 0,a)}function v(){var e=F(),n=h(e);if(r=arguments,o=this,l=e,n){if(void 0===s)return function(e){return c=e,s=setTimeout(m,t),u?p(e):a}(l);if(d)return clearTimeout(s),s=setTimeout(m,t),p(l)}return void 0===s&&(s=setTimeout(m,t)),a}return t=B(t)||0,z(n)&&(u=!!n.leading,i=(d="maxWait"in n)?q(B(n.maxWait)||0,t):i,f="trailing"in n?!!n.trailing:f),v.cancel=function(){void 0!==s&&clearTimeout(s),c=0,r=l=o=s=void 0},v.flush=function(){return void 0===s?a:g(F())},v}},50528:(e,t,n)=>{"use strict";n.d(t,{b:()=>r});const r=(0,n(5718).b)("aside-header")},81413:(e,t,n)=>{"use strict";n.d(t,{RL:()=>i,dv:()=>a,hA:()=>l,hr:()=>o,oc:()=>u,pX:()=>s,qA:()=>c,zE:()=>r});const r=1,o=-1,i="left",a="center",s="right",l="fixed",c="moving",u="__index__"},19812:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>D});var r=n(95097),o=n(68963),i=n(83570),a=n.n(i),s=n(5247),l=n(81413);const c=(0,s.withNaming)({e:"__",m:"_"})("data-table");function u(e,t){let{name:n,defaultOrder:o}=e,{sortOrder:i={},sortColumns:a=[]}=t,s=arguments.length>2&&void 0!==arguments[2]&&arguments[2],{defaultOrder:c,disableSortReset:u}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const d=o||c,f={sortOrder:{},sortColumns:[]};if(!n)return s?{sortOrder:i,sortColumns:a}:f;let p=a;const h=i[n];let m=d;if(h&&(m=h===d||u?h===l.zE?l.hr:l.zE:void 0),!s)return m?{sortOrder:{[n]:m},sortColumns:[n]}:f;const g=i,v=n,y=(g[v],(0,r._T)(g,["symbol"===typeof v?v:v+""]));return m?(y[n]=m,new Set(a).has(n)||(p=[...a,n])):p=a.filter((e=>e!==n)),{sortOrder:y,sortColumns:p}}function d(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const r=t,{sortAscending:o}=e;return"function"===typeof o?(e,t)=>r*o(e,t):(t,o)=>{const i=e._getSortValue(t.row),a=e._getSortValue(o.row);return null==i&&null!=a?n.nullBeforeNumbers?-r:1:null==a&&null!=i?n.nullBeforeNumbers?r:-1:ia?Number(r):0}}function f(e,t,n,r){let{sortOrder:o,sortColumns:i}=n;const a={};t.forEach((e=>{o[e.name]?a[e.name]=d(e,o[e.name],r):e.group&&e.autogroup&&(a[e.name]=d(e,l.zE,r))}));const s=t.filter((e=>e.group)),c=s.length>0,u=[...s.map((e=>a[e.name])).filter(Boolean),...i.map((e=>a[e])).filter(Boolean)],f=e.map(((e,t)=>c?{row:e,index:t,span:{}}:{row:e,index:t}));if(u.length&&!r.externalSort&&f.sort(((e,t)=>{let n=0;return u.some((r=>(n=r(e,t),Boolean(n)))),n||e.index-t.index})),f.length>1&&c){const e=[],t=[];f.forEach((n=>{s.every(((r,o)=>{const i=r._getValue(n.row);return e[o]&&i===t[o]?(e[o].span[r.name]+=1,n.span[r.name]=0,!0):(s.slice(o).forEach(((r,i)=>{e[o+i]=n,t[o+i]=r._getValue(n.row),n.span[r.name]=1})),!1)}))}))}return f}function p(e,t){return(Array.isArray(e)?e:[e]).reduce(((e,n)=>{let{columnId:r,order:o}=n;return u({name:r,defaultOrder:o},e,!0,t)}),{sortOrder:{},sortColumns:[]})}function h(e){let{getColumn:t,columnIndex:n,columnId:r,minWidth:i,maxWidth:a,onResize:s}=e;const l=o.useRef(null),[u,d]=o.useState(!1);return o.useEffect((()=>{const e=l.current;if(!e)return;let o,c,u;const f=function(e){let t,n=null;return function(){for(var r=arguments.length,o=new Array(r),i=0;i{e(...t),n=null})))}}((e=>{if(m(e),"number"!==typeof o||"number"!==typeof c)return;const t=e.clientX-o,n=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:40,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1/0;return Math.max(t,Math.min(e,n))}(c+t,i,a);n!==u&&(u=n,null===s||void 0===s||s(r,u))})),p=e=>{m(e),void 0!==u&&(null===s||void 0===s||s(r,u)),d(!1),o=void 0,document.removeEventListener("mousemove",f),document.removeEventListener("mouseup",p)},h=e=>{var r;c=null===(r=t(n))||void 0===r?void 0:r.getBoundingClientRect().width,m(e),o=e.clientX,d(!0),document.addEventListener("mousemove",f),document.addEventListener("mouseup",p)};return e.addEventListener("mousedown",h),()=>{e.removeEventListener("mousedown",h),document.removeEventListener("mousemove",f),document.removeEventListener("mouseup",p)}}),[r,s,i,a,t,n]),o.createElement("span",{ref:l,className:c("resize-handler",{resizing:u}),onClick:e=>m(e)})}function m(e){e.preventDefault(),e.stopPropagation()}const g=function(){const e=document.createElement("a").style;return e.cssText="position:sticky; position:-webkit-sticky;",-1!==e.position.indexOf("sticky")}(),v={getSrcElement:()=>null,onHeightChange:()=>{}};class y{constructor(e){this.prevHeight=0,this.params=v,this.checkAndUpdateHeight=()=>{this.node?requestAnimationFrame((()=>{const e=this.node;e?this.updateHeight(e.offsetHeight):this.updateHeight(0)})):this.updateHeight(0)},this.params=Object.assign({},e)}destroy(){this.updateHeight(0),this.params=v}get node(){return this.params.getSrcElement()}updateHeight(e){this.prevHeight!==e&&(this.prevHeight=e,this.params.onHeightChange(e))}}const b=o.createElement("svg",{className:c("icon"),viewBox:"0 0 10 6",width:"10",height:"6"},o.createElement("path",{fill:"currentColor",d:"M0 5h10l-5 -5z"})),w=o.createElement("svg",{className:c("icon"),viewBox:"0 0 10 6",width:"10",height:"6"},o.createElement("path",{fill:"currentColor",d:"M0 1h10l-5 5z"})),_={ICON_ASC:b,ICON_DESC:w};const E=e=>{let{sortOrder:t,sortIndex:n,sortable:r,defaultOrder:i}=e;return r?o.createElement("span",{className:c("sort-icon",{shadow:!t}),"data-index":n},function(e){switch(e){case l.zE:return _.ICON_ASC;case l.hr:return _.ICON_DESC;default:return!1}}(t||i)):null};class x extends o.PureComponent{constructor(){super(...arguments),this.onClick=e=>{if(this.props.onClick){const{row:t,index:n}=this.props;this.props.onClick(t,n,e)}}}render(){const{className:e,columns:t,row:n,index:r,odd:i,footer:a,span:s,getColSpansOfRow:l,headerData:u}=this.props,d=l?l(this.props):void 0;let f=0;return o.createElement("tr",{className:c("row",{odd:i,footer:a,"header-data":u},e),onClick:this.onClick},t.map(((e,t)=>{if(d){if(--f>0)return null;d[e.name]>1&&(f=d[e.name])}let i;if(s){if(0===s[e.name])return null;i=s[e.name]}const l=e._getValue(n);let c=e.customStyle({row:n,index:r,name:e.name,header:!1,footer:a,headerData:u});return e.resizeable&&(c=Object.assign(Object.assign({},c),{width:e.width,maxWidth:e.width})),o.createElement("td",{key:t,className:e._className,title:e._getTitle(n),style:c,colSpan:d?d[e.name]:void 0,rowSpan:i,onClick:e._getOnClick({row:n,index:r,footer:a,headerData:u})},e._renderValue({value:l,row:n,index:r,footer:a,headerData:u}))})))}}x.defaultProps={footer:!1};class S extends o.Component{constructor(){super(...arguments),this._dataRowsRef=null,this.renderedColumns=[],this.renderHeadCell=e=>{var t;const{onResize:n}=this.props,{column:r,rowSpan:i,colSpan:a}=e,{sortable:s=!1,header:l=r.name,className:u,index:d,columnIndex:f,align:p,name:m,width:g,resizeable:v,resizeMinWidth:y,resizeMaxWidth:b}=r,{headerTitle:w="string"===typeof l&&l||void 0}=r;let _=null===(t=r.customStyle)||void 0===t?void 0:t.call(r,{header:!0,name:m});return v&&(_=Object.assign(Object.assign({},_),{width:g,maxWidth:g})),o.createElement("th",{ref:r.dataColumn?this._getColumnRef(f):null,className:c("th",{sortable:s,align:p},u),key:m,title:w,"data-index":d,colSpan:a,rowSpan:i,style:_,onClick:this._getOnSortClick(r)},o.createElement("div",{className:c("head-cell")},l,o.createElement(E,Object.assign({},r))),v&&o.createElement(h,{getColumn:this._getRenderedColumn,columnIndex:f,onResize:n,columnId:m,minWidth:y,maxWidth:b}))},this.renderHeadLevel=(e,t)=>o.createElement("tr",{key:t,className:c("head-row")},e.map(this.renderHeadCell)),this.dataRowsRef=e=>{var t;this._dataRowsRef=e,e&&(null===(t=this.dataRowsHeightObserver)||void 0===t||t.checkAndUpdateHeight())},this._getColumnRef=e=>t=>{this.renderedColumns[e]=t},this._getRenderedColumn=e=>{if(void 0!==e)return this.renderedColumns[e]}}componentDidMount(){this._calculateColumnsWidth(),"function"===typeof this.props.onDataRowsHeightChange&&(this.dataRowsHeightObserver=new y({getSrcElement:()=>this._dataRowsRef,onHeightChange:e=>{"function"===typeof this.props.onDataRowsHeightChange&&this.props.onDataRowsHeightChange(e)}}))}componentDidUpdate(){var e;this._calculateColumnsWidth(),null===(e=this.dataRowsHeightObserver)||void 0===e||e.checkAndUpdateHeight()}componentWillUnmount(){var e;null===(e=this.dataRowsHeightObserver)||void 0===e||e.destroy()}render(){const{headColumns:e,dataColumns:t,renderedDataRows:n}=this.props;return this.renderedColumns.length=t.length,o.createElement(o.Fragment,null,o.createElement("thead",{className:c("head")},e.map(this.renderHeadLevel)),void 0===n?null:o.createElement("tbody",{ref:this.dataRowsRef},n))}_calculateColumnsWidth(){const{onColumnsUpdated:e}=this.props;"function"===typeof e&&requestAnimationFrame((()=>{const t=this.renderedColumns.map((e=>e&&e.getBoundingClientRect().width));e(t)}))}onSort(e,t){const{onSort:n}=this.props;"function"===typeof n&&n(e,t)}_getOnSortClick(e){const{sortable:t=!1,name:n}=e;return n===l.oc?()=>{this.onSort()}:t?t=>{this.onSort(e,t.ctrlKey||t.metaKey)}:void 0}}class C extends o.Component{constructor(){super(...arguments),this.state={style:{top:C.defaultProps.top}},this.onDataRowsHeightChange=e=>{this.props.onDataRowsHeightChange(e+1)},this._nodeRef=e=>{this._node=e}}static getDerivedStateFromProps(e,t){var n;return e.top!==(null===(n=t.style)||void 0===n?void 0:n.top)?void 0===e.top?null:{style:{top:e.top}}:null}render(){const e=this.props,{mode:t,top:n}=e,i=(0,r._T)(e,["mode","top"]);if(t===l.qA){const{style:e}=this.state;return o.createElement("div",{className:c("sticky",{moving:!0,head:!0}),style:e},this.renderHeader(i))}{const{widths:e=[],right:t=0}=this.state,n=e.reduce(((e,t)=>e+t),0);return o.createElement("div",{ref:this._nodeRef,className:c("sticky",{fixed:!0,head:!0}),style:{right:t,display:n?void 0:"none"}},this.renderHeader(i))}}setScrollLeft(e){requestAnimationFrame((()=>{this._node&&(this._node.scrollLeft=e)}))}setRightPosition(e){this.state.right===e||this.props.top||this.props.mode===l.qA||this.setState({right:e})}renderHeader(e){const{widths:t=[]}=this.state,n=t.reduce(((e,t)=>e+t),0);return o.createElement("div",{className:c("table-wrapper",{sticky:!0})},o.createElement("table",{className:c("table",{sticky:!0}),style:{width:n||"auto"}},o.createElement("colgroup",null,t.map(((e,t)=>o.createElement("col",{key:t,style:{width:e}})))),o.createElement(S,Object.assign({},e,{onDataRowsHeightChange:this.onDataRowsHeightChange}))))}updateWidths(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];const{widths:t=[]}=this.state;e.some(((e,n)=>e!==t[n]))&&this.setState({widths:e})}}C.defaultProps={top:0};class k extends o.PureComponent{constructor(){super(...arguments),this.state={style:{bottom:0}},this._nodeFixed=null,this._nodeMoving=null,this._nodeFixedRef=e=>{this._nodeFixed=e},this._nodeMovingRef=e=>{var t;this._nodeMoving=e,e&&(null===(t=this.heightObserver)||void 0===t||t.checkAndUpdateHeight())}}static getDerivedStateFromProps(e,t){var n;return e.bottom!==(null===(n=t.style)||void 0===n?void 0:n.bottom)?void 0===e.bottom?null:{style:{bottom:e.bottom}}:null}componentDidMount(){this.heightObserver=new y({getSrcElement:()=>this._nodeMoving,onHeightChange:this.props.onMovingHeightChange})}componentDidUpdate(){var e;null===(e=this.heightObserver)||void 0===e||e.checkAndUpdateHeight()}componentWillUnmount(){var e;null===(e=this.heightObserver)||void 0===e||e.destroy()}render(){if(!this.props.renderedRows)return null;const{mode:e,renderedRows:t}=this.props;if(e===l.qA){const{style:e}=this.state;return o.createElement("div",{ref:this._nodeMovingRef,className:c("sticky",{footer:!0,moving:!0}),style:e},this.renderFooter(t))}{const{widths:e=[],right:n=0}=this.state,r=e.reduce(((e,t)=>e+t),0);return o.createElement("div",{ref:this._nodeFixedRef,className:c("sticky",{footer:!0,fixed:!0}),style:{right:n,display:r?void 0:"none"}},this.renderFooter(t))}}setScrollLeft(e){requestAnimationFrame((()=>{this._nodeFixed&&(this._nodeFixed.scrollLeft=e)}))}setRightPosition(e){this.state.right!==e&&!this.props.bottom&&this._nodeFixed&&this.setState({right:e})}renderFooter(e){const{widths:t=[]}=this.state,n=t.reduce(((e,t)=>e+t),0);return o.createElement("div",{className:c("table-wrapper",{sticky:!0})},o.createElement("table",{className:c("table",{sticky:!0}),style:{width:n||"auto"}},o.createElement("colgroup",null,t.map(((e,t)=>o.createElement("col",{key:t,style:{width:e}})))),o.createElement("tbody",null,e)))}updateWidths(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];const{widths:t=[]}=this.state;e.some(((e,n)=>e!==t[n]))&&this.setState({widths:e})}}k.defaultProps={bottom:0};class O extends o.PureComponent{constructor(){var e;super(...arguments),e=this,this.state={},this._refBody=e=>{this._body=e},this._refBox=e=>{this._box=e},this._refHead=e=>{this._head=e},this._refStickyHead=e=>{this._stickyHead=e},this._refStickyFooter=e=>{this._stickyFooter=e},this._onBoxScroll=()=>{this._updateBoxConstraints()},this._onColumnsUpdated=e=>{this._stickyHead&&this._stickyHead.updateWidths(e),this._stickyFooter&&this._stickyFooter.updateWidths(e)},this.onMovingHeaderDataRowsHeightChange=e=>{var t;-e!==(null===(t=this.state.movingHeaderStyle)||void 0===t?void 0:t.marginTop)&&this.setState({movingHeaderStyle:{marginTop:-e}})},this.onMovingFooterHeightChange=e=>{var t;-e!==(null===(t=this.state.movingFooterStyle)||void 0===t?void 0:t.marginBottom)&&this.setState({movingFooterStyle:{marginBottom:-e}})},this.renderRow=e=>{const{data:t,onRowClick:n}=this.props,{row:r,index:o,span:i}=t[e];return this.renderRowImpl(r,o,{onRowClick:n,odd:e%2===0,span:i})},this.renderFooterRow=(e,t)=>this.renderRowImpl(e,t,{footer:!0}),this.renderHeaderRow=(e,t)=>this.renderRowImpl(e,t,{headerData:!0}),this.renderRowImpl=function(t,n){let{onRowClick:r,odd:i,span:a,footer:s,headerData:l}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{columns:{dataColumns:c},rowClassName:u,rowKey:d,getColSpansOfRow:f}=e.props,p="function"===typeof u?u(t,n,s,l):"";return o.createElement(x,{getColSpansOfRow:f,key:d(t,n),className:p,columns:c,row:t,index:n,span:a,odd:i,onClick:r,footer:s,headerData:l})},this.renderTable=(e,t)=>{const{footerData:n,columns:{dataColumns:r},settings:{stickyHead:i}}=this.props,{movingHeaderStyle:a,movingFooterStyle:s}=this.state,u=this.getStickyFooterMode();return o.createElement("div",{className:c("table-wrapper"),style:u===l.qA?s:void 0},o.createElement("table",{className:c("table"),style:i===l.qA?a:void 0},o.createElement("colgroup",null,r.map(((e,t)=>{let{width:n}=e;return o.createElement("col",{key:t,width:n})}))),this.renderHead(),o.createElement("tbody",{ref:t},e.length?e:this._getEmptyRow()),n&&o.createElement("tfoot",{className:c("foot",{"has-sticky-footer":u})},n.map(this.renderFooterRow))))}}componentDidMount(){const{stickyHead:e,syncHeadOnResize:t}=this.props.settings;this._updateBoxConstraints(),e&&t&&!this._onWindowResize&&(this._onWindowResize=()=>{this.syncHeadWidths()},window.addEventListener("resize",this._onWindowResize))}componentDidUpdate(){this._updateBoxConstraints()}componentWillUnmount(){this._onWindowResize&&(window.removeEventListener("resize",this._onWindowResize),delete this._onWindowResize)}render(){const{className:e}=this.props,{stickyHead:t,dynamicRender:n}=this.props.settings,r=this.getStickyFooterMode();return o.createElement("div",{className:e,ref:this._refBody},t&&this.renderStickyHead(),o.createElement("div",{ref:this._refBox,className:c("box",{"sticky-head":t,"sticky-footer":r}),onScroll:this._onBoxScroll},n?this.renderTableDynamic():this.renderTableSimple()),r&&this.renderStickyFooter())}_updateBoxConstraints(){const e=this._stickyHead||this._stickyFooter;if(this._box&&e){const e=this._box.offsetWidth-this._box.clientWidth;this._stickyHead&&(this._stickyHead.setRightPosition(e),this._stickyHead.setScrollLeft(this._box.scrollLeft)),this._stickyFooter&&(this._stickyFooter.setRightPosition(e),this._stickyFooter.setScrollLeft(this._box.scrollLeft))}}syncHeadWidths(){this._head&&this._head._calculateColumnsWidth()}_getEmptyRow(){const{columns:{dataColumns:e},emptyDataMessage:t,renderEmptyRow:n}=this.props;return"function"===typeof n?n(e):o.createElement("tr",{className:c("row")},o.createElement("td",{className:c("td",c("no-data")),colSpan:e.length},t))}renderHead(){const{columns:e,onSort:t,onResize:n}=this.props,{displayIndices:r}=this.props.settings,i=this.renderHeaderRows();return o.createElement(S,Object.assign({ref:this._refHead},e,{displayIndices:Boolean(r),onSort:t,onResize:n,onColumnsUpdated:this._onColumnsUpdated,renderedDataRows:i}))}renderStickyHead(){const{columns:e,onSort:t,onResize:n}=this.props,{displayIndices:r,stickyTop:i,stickyHead:a}=this.props.settings,s="auto"===i&&this._body&&this._body.parentNode?this._body.parentNode.offsetTop:Number(i)||0,l=this.renderHeaderRows();return o.createElement(C,Object.assign({mode:a,top:s,ref:this._refStickyHead},e,{displayIndices:r,onSort:t,onResize:n,renderedDataRows:l,onDataRowsHeightChange:this.onMovingHeaderDataRowsHeightChange}))}renderStickyFooter(){const{columns:e}=this.props,{stickyBottom:t}=this.props.settings;let n=Number(t)||0;if("auto"===t&&this._body&&this._body.parentNode){const e=this._body.parentNode;n=e.offsetTop+e.offsetHeight}const r=this.renderFooterRows();return o.createElement(k,{ref:this._refStickyFooter,mode:this.getStickyFooterMode(),bottom:n,dataColumns:e.dataColumns,renderedRows:r,onMovingHeightChange:this.onMovingFooterHeightChange})}renderTableDynamic(){const{data:e,settings:{dynamicInnerRef:t,dynamicRenderType:n="uniform",dynamicRenderUseStaticSize:r,dynamicRenderThreshold:i,dynamicRenderMinSize:s,dynamicRenderScrollParentGetter:l,dynamicRenderScrollParentViewportSizeGetter:c,dynamicItemSizeEstimator:u,dynamicItemSizeGetter:d}={}}=this.props;return o.createElement(a(),{ref:t,type:n,useStaticSize:r,threshold:i,minSize:s,itemSizeEstimator:u,itemSizeGetter:d,length:e.length,itemRenderer:this.renderRow,itemsRenderer:this.renderTable,scrollParentGetter:l,scrollParentViewportSizeGetter:c})}renderTableSimple(){const{data:e}=this.props,t=e.map(((e,t)=>this.renderRow(t)));return this.renderTable(t,null)}renderHeaderRows(){const{headerData:e}=this.props;return e&&e.map(this.renderHeaderRow)}renderFooterRows(){const{footerData:e}=this.props;return null===e||void 0===e?void 0:e.map(this.renderFooterRow)}getStickyFooterMode(){const{footerData:e}=this.props;if(!(null===e||void 0===e?void 0:e.length))return!1;const{stickyFooter:t}=this.props.settings;return t}}const T=o.memo((function(e){const{column:t,value:n,row:r,index:i,footer:a,headerData:s}=e;return o.createElement(o.Fragment,null,t.render({value:n,row:r,index:i,footer:a,headerData:s}))}));class N extends o.Component{constructor(){super(...arguments),this.state=Object.assign({settings:{}},p(this.props.initialSortOrder,this.props.settings)),this._tableRef=e=>{this.table=e},this.renderMemoizedCell=e=>{let{column:t,value:n,row:r,index:i,footer:a,headerData:s}=e;return o.createElement(T,{column:t,value:n,row:r,index:i,footer:a,headerData:s})},this.getColumn=(e,t)=>{var n;const{onResize:r}=this.props,{settings:o}=this.state,{defaultOrder:i}=o,{sortOrder:a={},sortColumns:s,indexColumn:l}=this.state,u=Number(Boolean(l)),d=this.isSortEnabled(),{name:f,accessor:p=e.name,align:h,sortable:m=o.sortable,group:g,autogroup:v=!0}=e,{sortAccessor:y,onClick:b}=e,w=c("td",{align:h},e.className),_=(null!==(n=e.resizeable)&&void 0!==n?n:o.defaultResizeable)&&Boolean(r),E="function"===typeof p?e=>p(e):e=>Object.prototype.hasOwnProperty.call(e,p)?e[p]:void 0,x="function"===typeof e.title?t=>e.title(t):()=>"string"===typeof e.title&&e.title||void 0,S="function"===typeof y?e=>y(e):E,C="function"===typeof e.render?t=>{let{value:n,row:r,index:o,footer:i,headerData:a}=t;return this.renderMemoizedCell({column:e,value:n,row:r,index:o,footer:i,headerData:a})}:e=>{let{value:t}=e;return t},k="function"===typeof e.customStyle?e.customStyle:()=>{},O="function"===typeof b?t=>n=>b(t,e,n):()=>{};return Object.assign(Object.assign({index:t-u,columnIndex:t,dataColumn:!0,defaultOrder:i},e),{resizeable:_,sortable:m&&d,_className:w,_getValue:E,_getTitle:x,_getSortValue:S,_renderValue:C,_getOnClick:O,customStyle:k,group:g,autogroup:v,sortOrder:a[f]||void 0,sortIndex:s.length>1?s.indexOf(f)+1:void 0})},this.isSortEnabled=()=>{const{data:e}=this.props;return Array.isArray(e)&&e.length>1},this.onSort=(e,t)=>{if(e){const{sortOrder:n,sortColumns:r}=u(e,this.state,t,this.props.settings);this.setState({sortOrder:n,sortColumns:r});const{onSort:o}=this.props;if("function"===typeof o){const e=function(e){return Object.keys(e).map((t=>({columnId:t,order:e[t]})))}(n);o(e)}}else{this.setState({sortOrder:{},sortColumns:[]});const{onSort:e}=this.props;"function"===typeof e&&e([])}}}static normalizeStickyHead(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return e!==l.qA||g?e:(console.warn("Your browser does not support position: sticky, moving sticky headers will be disabled."),!1)}static calculateSettings(e){return Object.assign(Object.assign(Object.assign({},N.defaultProps.settings),e),{stickyHead:N.normalizeStickyHead(e.stickyHead),stickyFooter:N.normalizeStickyHead(e.stickyFooter)})}static getIndexColumn(e){let{startIndex:t,data:n,visibleRowIndex:r}=e;const o=t+n.length+1;return{name:l.oc,header:"#",className:c("index"),render:e=>{let{row:n,index:o,footer:i,headerData:a}=e;var s,l;return a?null!==(s=n.headerIndex)&&void 0!==s?s:t+o:i?null!==(l=n.footerIndex)&&void 0!==l?l:t+o:"function"===typeof r?r(n,o):t+o},sortable:!1,resizeable:!1,width:20+10*Math.ceil(Math.log10(o))}}static getDerivedStateFromProps(e){const t=N.calculateSettings(e.settings);return Object.assign({settings:t,indexColumn:Boolean(t.displayIndices)&&N.getIndexColumn(e)},e.sortOrder?Object.assign({},p(e.sortOrder,e.settings)):void 0)}render(){const{getColSpansOfRow:e,headerData:t,data:n,footerData:r,columns:i,startIndex:a,emptyDataMessage:s,rowClassName:l,rowKey:u,onRowClick:d,onResize:p,theme:h,renderEmptyRow:m,nullBeforeNumbers:g}=this.props,{settings:v,sortOrder:y,sortColumns:b}=this.state,{highlightRows:w=!1,stripedRows:_=!1,headerMod:E=!1}=v,x=c({"highlight-rows":w,"striped-rows":_,header:E,theme:h}),S=this.getComplexColumns(i);return v.dynamicRender&&S.dataColumns.some((e=>e.group))&&console.warn("Simultaneously used grouping cells and dynamic render. The table will render unpredictable."),o.createElement(O,{ref:this._tableRef,getColSpansOfRow:e,className:x,settings:v,startIndex:a,columns:S,emptyDataMessage:s,renderEmptyRow:m,rowClassName:l,rowKey:u||N.defaultProps.rowKey,onRowClick:d,headerData:t,data:f(n,S.dataColumns,{sortOrder:y,sortColumns:b},{nullBeforeNumbers:g,externalSort:null===v||void 0===v?void 0:v.externalSort}),footerData:r,onSort:this.onSort,onResize:p})}getComplexColumns(e){const t=[],n=[],r=[],{indexColumn:o}=this.state,i=o?[o,...e]:e,a=(e,o)=>{t[o]||(t[o]=[]);const i=t[o];return e.reduce(((e,t)=>{let s=1,l=-1,c=t;if(Array.isArray(t.sub))s=a(t.sub,o+1);else{const e=this.getColumn(t,n.length);n.push(e),l=o,c=e}const u={column:c,itemLevel:l,colSpan:s,rowSpan:0};return r.push(u),i.push(u),s+e}),0)};return a(i,0),r.forEach((e=>{e.rowSpan=e.itemLevel<0?1:t.length-e.itemLevel})),{headColumns:t,dataColumns:n}}resize(){this.table&&this.table.syncHeadWidths()}}function I(e){return new Set(e.map((e=>e.name))).size!==e.length}N.defaultProps={startIndex:0,emptyDataMessage:"No data",settings:{displayIndices:!0,dynamicRenderMinSize:1,stickyHead:!1,stickyFooter:!1,sortable:!0,externalSort:!1,defaultOrder:l.zE,defaultResizeable:!1},rowKey:(e,t)=>Object.prototype.hasOwnProperty.call(e,"id")?e.id:t,initialSortOrder:{},initialSortColumns:[],theme:"yandex-cloud"},N.getSortedData=f;const P="It is strongly recommended against using duplicate column names. They act as default accessors and titles, so doing so may lead to confusing titles and the wrong data being extracted.";class R extends o.PureComponent{constructor(){super(...arguments),this.state={},this._tableRef=e=>{this.table=e}}static setCustomIcons(e){_.ICON_ASC=e.ICON_ASC||b,_.ICON_DESC=e.ICON_DESC||w}componentDidMount(){I(this.props.columns)&&console.warn(P)}componentDidUpdate(e){const{columns:t}=this.props;t!==e.columns&&I(t)&&console.warn(P)}componentDidCatch(e){console.error(e),this.setState({error:e});const{onError:t}=this.props;"function"===typeof t&&t(e)}render(){const{error:e}=this.state;return e?o.createElement("pre",{className:c("error")},"DataTable got stuck in invalid state. Please tell developers about it.","\n\n",e.stack&&String(e.stack)||String(e)):o.createElement(N,Object.assign({ref:this._tableRef},this.props))}resize(){this.table&&this.table.resize()}}R.FIXED=l.hA,R.MOVING=l.qA,R.ASCENDING=l.zE,R.DESCENDING=l.hr,R.LEFT=l.RL,R.CENTER=l.dv,R.RIGHT=l.pX;const D=R},2266:(e,t,n)=>{"use strict";n.d(t,{M:()=>C});var r=n(95097),o=n(68963),i=n(48027),a=n(79004),s=n(36951);const l={pc:{NormalizeMap:{arrowup:"up",arrowdown:"down",arrowleft:"left",arrowright:"right",esc:"escape",return:"enter",mod:"ctrl",control:"ctrl",opt:"alt",option:"alt",cmd:"ctrl",command:"ctrl"},Priority:{shift:200,alt:300,ctrl:400},DisplayName:{up:"\u2191",down:"\u2193",left:"\u2190",right:"\u2192",escape:"Esc",plus:"\uff0b",enter:"Enter",ctrl:"Ctrl",alt:"Alt",shift:"Shift",tab:"Tab",backspace:"Backspace"}},mac:{NormalizeMap:{arrowup:"up",arrowdown:"down",arrowleft:"left",arrowright:"right",esc:"escape",enter:"return",mod:"command",ctrl:"control",alt:"option",opt:"option",cmd:"command"},Priority:{command:100,shift:200,option:300,control:400},DisplayName:{up:"\u25b2",down:"\u25bc",left:"\u25c0",right:"\u25b6",escape:"\u238b",plus:"\uff0b",return:"\u23ce",command:"\u2318",option:"\u2325",control:"\u2303",shift:"\u21e7",backspace:"\u232b",tab:"\u21e5"}}};var c=n(6381),u=n.n(c),d=n(60619),f=n.n(d);const p=()=>"undefined"!==typeof navigator&&/Mac|iP(hone|[oa]d)/.test(navigator.platform);function h(e,t){return e.trim().split(t).filter(Boolean)}const m=/\s/,g="+";function v(e,t){return h(t,m).map((t=>f()(h(t,g).map(function(e){return function(t){var n;const r=function(e,t){var n;return t=t.toLowerCase(),null!==(n=e.NormalizeMap[t])&&void 0!==n?n:t}(e,t);return{raw:t,id:r,priority:null!==(n=e.Priority[r])&&void 0!==n?n:0,displayName:e.DisplayName[r]}}}(e)).sort(((e,t)=>t.priority-e.priority)),(e=>e.id)).map(y)))}function y(e){var t;return null!==(t=e.displayName)&&void 0!==t?t:u()(e.id)}const b=(0,s.Ge)("hotkey"),w={BetweenGroups:String.fromCharCode(160),BetweenKeys:String.fromCharCode(8239)},_=o.forwardRef((function(e,t){const{value:n,platform:r,view:i="light",qa:a,style:s,className:c}=e,u=function(e,t){var n;const r=null!==(n=t.platform)&&void 0!==n?n:p()?"mac":"pc",o=l[r];return v(o,e)}(n,{platform:r}),d=[];let f=!1;return u.forEach(((e,t)=>{0!==e.length&&(f?d.push(w.BetweenGroups):f=!0,e.forEach(((e,n)=>{0===n||d.push(w.BetweenKeys,o.createElement("span",{key:"".concat(e,"_").concat(t,"_").concat(n,"_plus"),className:b("plus")},"+"),w.BetweenKeys),d.push(o.createElement("kbd",{key:"".concat(e,"_").concat(t,"_").concat(n)},e))})))})),0===d.length?null:o.createElement("kbd",{ref:t,style:s,"data-qa":a,className:b({view:i},c)},d)}));var E=n(44920);const x=["bottom","top"],S=(0,s.Ge)("action-tooltip");function C(e){const{placement:t=x,title:n,hotkey:s,children:l,className:c,contentClassName:u,description:d,disabled:f=!1,style:p,qa:h,id:m,disablePortal:g}=e,v=(0,r._T)(e,["placement","title","hotkey","children","className","contentClassName","description","disabled","style","qa","id","disablePortal"]),[y,b]=o.useState(null),w=(0,a.p)(y,v),C=o.Children.only(l),k=C.ref,O=(0,i.c)(b,k);return o.createElement(o.Fragment,null,o.cloneElement(C,{ref:O}),y?o.createElement(E.G,{id:m,disablePortal:g,role:"tooltip",className:S(null,c),style:p,open:w&&!f,placement:t,anchorRef:{current:y},disableEscapeKeyDown:!0,disableOutsideClick:!0,disableLayer:!0,qa:h},o.createElement("div",{className:S("content",u)},o.createElement("div",{className:S("heading")},o.createElement("div",{className:S("title")},n),s&&o.createElement(_,{view:"dark",value:s,className:S("hotkey")})),d&&o.createElement("div",{className:S("description")},d))):null)}},33569:(e,t,n)=>{"use strict";n.d(t,{F:()=>s});var r=n(68963),o=n(57542),i=n(88776);const a=(0,n(36951).Ge)("arrow-toggle");function s(e){let{size:t=16,direction:n="bottom",className:s,qa:l}=e;return r.createElement("span",{style:{width:t,height:t},className:a({direction:n},s),"data-qa":l},r.createElement(i.J,{data:o.Z,size:t}))}},17176:(e,t,n)=>{"use strict";n.d(t,{z:()=>m});var r=n(68963),o=n(36951),i=n(99742),a=n(93404),s=n(70292),l=n(12913);const c=(0,o.Ge)("button");function u(){(0,l.O)('[Button.Icon] Physical values (left, right) of "side" property are deprecated. Use logical values (start, end) instead.')}const d=e=>{let{side:t,className:n,children:o}=e;return r.createElement("span",{className:c("icon",{side:f(t)},n)},r.createElement("span",{className:c("icon-inner")},o))};function f(e){let t=e;return"left"===t&&(u(),t="start"),"right"===t&&(u(),t="end"),t}d.displayName="Button.Icon";const p=(0,o.Ge)("button"),h=r.forwardRef((function(e,t){let{view:n="normal",size:o="m",pin:i="round-round",selected:s,disabled:l=!1,loading:c=!1,width:u,title:d,tabIndex:f,type:h="button",component:m,href:g,target:v,rel:y,extraProps:w,onClick:_,onMouseEnter:E,onMouseLeave:x,onFocus:S,onBlur:C,children:k,id:O,style:T,className:N,qa:I}=e;const P={title:d,tabIndex:f,onClick:_,onClickCapture:r.useCallback((e=>{a.P.publish({componentId:"Button",eventId:"click",domEvent:e,meta:{content:e.currentTarget.textContent,view:n}})}),[n]),onMouseEnter:E,onMouseLeave:x,onFocus:S,onBlur:C,id:O,style:T,className:p({view:n,size:o,pin:i,selected:s,disabled:l||c,loading:c,width:u},N),"data-qa":I};if("string"===typeof g||m){const e={href:g,target:v,rel:"_blank"!==v||y?y:"noopener noreferrer"};return r.createElement(m||"a",Object.assign(Object.assign(Object.assign(Object.assign({},w),P),m?{}:e),{ref:t,"aria-disabled":l||c}),b(k))}return r.createElement("button",Object.assign({},w,P,{ref:t,type:h,disabled:l||c,"aria-pressed":s}),b(k))}));h.displayName="Button";const m=Object.assign(h,{Icon:d}),g=(0,s.s)(d),v=(0,s.s)("span"),y=RegExp("^".concat(p("icon"),"($|\\s+\\w)"));function b(e){const t=r.Children.toArray(e);if(1===t.length){const e=t[0];return g(e)||v(e)&&y.test(e.props.className||"")?e:(0,i.yb)(e)||(0,i.Dc)(e)?r.createElement(m.Icon,{key:"icon"},e):r.createElement("span",{key:"text",className:p("text")},e)}{let e,n,o;const a=[];for(const s of t){const t=(0,i.yb)(s)||(0,i.Dc)(s),o=g(s),l=v(s)&&y.test(s.props.className||"");if(t||o||l)if(e||0!==a.length){if(!n&&0!==a.length){const e="icon-end",i="end";n=t?r.createElement(m.Icon,{key:e,side:i},s):o?r.cloneElement(s,{side:i}):r.cloneElement(s,{className:p("icon",{side:f(i)},s.props.className)})}}else{const n="icon-start",i="start";e=t?r.createElement(m.Icon,{key:n,side:i},s):o?r.cloneElement(s,{side:i}):r.cloneElement(s,{className:p("icon",{side:f(i)},s.props.className)})}else a.push(s)}return a.length>0&&(o=r.createElement("span",{key:"text",className:p("text")},a)),[e,n,o]}}},19797:(e,t,n)=>{"use strict";n.d(t,{m:()=>g});var r=n(95097),o=n(68963),i=n(2266),a=n(17176),s=n(11050),l=n(81434),c=n(54973);const u=JSON.parse('{"startCopy":"Copy","endCopy":"Copied!"}'),d=JSON.parse('{"startCopy":"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c","endCopy":"\u0421\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043e!"}'),f=(0,c.e)({en:u,ru:d},"ClipboardButton"),p=1e3,h={xs:12,s:16,m:16,l:16,xl:20},m=e=>{const{size:t="m",hasTooltip:n=!0,tooltipInitialText:l=f("startCopy"),tooltipSuccessText:c=f("endCopy"),status:u,view:d="flat",extraProps:p={}}=e,m=(0,r._T)(e,["size","hasTooltip","tooltipInitialText","tooltipSuccessText","status","view","extraProps"]);return o.createElement(i.M,{disabled:!n,title:"success"===u?c:l},o.createElement(a.z,Object.assign({view:d,size:t,extraProps:Object.assign({"aria-label":l},p)},m),o.createElement(a.z.Icon,null,o.createElement(s.K,{size:h[t],status:u}))))};function g(e){const{text:t,timeout:n=p,onCopy:i,options:a}=e,s=(0,r._T)(e,["text","timeout","onCopy","options"]);return o.createElement(l.h,{text:t,timeout:n,onCopy:i,options:a},(e=>o.createElement(m,Object.assign({},s,{status:e}))))}},11050:(e,t,n)=>{"use strict";n.d(t,{K:()=>c});var r=n(95097),o=n(68963);const i=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M9.5 12c0 .414-.168.79-.44 1.06A1.49 1.49 0 0 1 8 13.5H4a1.49 1.49 0 0 1-1.06-.44A1.496 1.496 0 0 1 2.5 12V8c0-.414.168-.79.44-1.06A1.49 1.49 0 0 1 4 6.5h4c.414 0 .79.168 1.06.44.272.27.44.646.44 1.06v4Zm-1.47-1.03s.001 0 0 0L7.06 10l.97-.97a.75.75 0 0 0-1.06-1.06L6 8.94l-.97-.97a.75.75 0 0 0-1.06 1.06l.97.97-.97.97a.75.75 0 0 0 1.06 1.06c0 .001 0 0 0 0l.97-.97.97.97a.75.75 0 0 0 1.06-1.06ZM6.5 5H8a3 3 0 0 1 3 3v1.5h1A1.498 1.498 0 0 0 13.5 8V4A1.5 1.5 0 0 0 12 2.5H8A1.5 1.5 0 0 0 6.5 4v1ZM5 4a3 3 0 0 1 3-3h4a3 3 0 0 1 3 3v4a3 3 0 0 1-3 3h-1v1a3 3 0 0 1-3 3H4a3 3 0 0 1-3-3V8a3 3 0 0 1 3-3h1V4Z",clipRule:"evenodd"})),a=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("g",{fill:"currentColor"},o.createElement("path",{d:"m8 9.076.085-.107a.751.751 0 1 0-1.171-.937L5.438 9.877 5.03 9.47a.747.747 0 0 0-1.06 0 .75.75 0 0 0 0 1.06l.407.408.593.592a.75.75 0 0 0 1.116-.061l.522-.654h.001L8 9.074Z"}),o.createElement("path",{fillRule:"evenodd",d:"M12 11a3 3 0 0 0 3-3V4a3 3 0 0 0-3-3H8a3 3 0 0 0-3 3v1H4a3 3 0 0 0-3 3v4a3 3 0 0 0 3 3h4a3 3 0 0 0 3-3v-1h1ZM4 6.5A1.5 1.5 0 0 0 2.5 8v4A1.5 1.5 0 0 0 4 13.5h4A1.5 1.5 0 0 0 9.5 12V8A1.498 1.498 0 0 0 8 6.5H4ZM13.5 4A1.5 1.5 0 0 0 12 2.5H8A1.5 1.5 0 0 0 6.5 4v1H8a3 3 0 0 1 3 3v1.5h1A1.498 1.498 0 0 0 13.5 8V4Z",clipRule:"evenodd"}))),s=e=>o.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),o.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M12 2.5H8A1.5 1.5 0 0 0 6.5 4v1H8a3 3 0 0 1 3 3v1.5h1A1.5 1.5 0 0 0 13.5 8V4A1.5 1.5 0 0 0 12 2.5ZM11 11h1a3 3 0 0 0 3-3V4a3 3 0 0 0-3-3H8a3 3 0 0 0-3 3v1H4a3 3 0 0 0-3 3v4a3 3 0 0 0 3 3h4a3 3 0 0 0 3-3v-1ZM4 6.5h4A1.5 1.5 0 0 1 9.5 8v4A1.5 1.5 0 0 1 8 13.5H4A1.5 1.5 0 0 1 2.5 12V8A1.5 1.5 0 0 1 4 6.5Z",clipRule:"evenodd"}));var l=n(88776);function c(e){var{status:t}=e,n=(0,r._T)(e,["status"]);return"error"===t?o.createElement(l.J,Object.assign({data:i},n)):"success"===t?o.createElement(l.J,Object.assign({data:a},n)):o.createElement(l.J,Object.assign({data:s},n))}},24288:(e,t,n)=>{"use strict";n.d(t,{J:()=>i});var r=n(68963);const o=(0,n(36951).Ge)("control-label"),i=r.forwardRef(((e,t)=>{let{children:n,className:i,labelClassName:a,title:s,style:l,disabled:c=!1,control:u,size:d="m",qa:f}=e;const p=r.cloneElement(u,{className:o("indicator",u.props.className)});return r.createElement("label",{ref:t,title:s,style:l,className:o({size:d,disabled:c},i),"data-qa":f},p,n?r.createElement("span",{className:o("text",a)},n):null)}));i.displayName="ControlLabel"},81434:(e,t,n)=>{"use strict";n.d(t,{h:()=>s});var r=n(68963),o=n(15942),i=n.n(o);const a="pending";function s(e){const{children:t,text:n,options:o,timeout:s,onCopy:l}=e,[c,u]=r.useState(a),d=r.useRef(),f=r.useMemo((()=>t(c)),[t,c]),p=r.useCallback(((e,t)=>{u(t?"success":"error"),window.clearTimeout(d.current),d.current=window.setTimeout((()=>u(a)),s),null===l||void 0===l||l(e,t)}),[l,s]);if(r.useEffect((()=>()=>window.clearTimeout(d.current)),[]),!r.isValidElement(f))throw new Error("Content must be a valid react element");return r.createElement(i(),{text:n,onCopy:p,options:o},f)}},30044:(e,t,n)=>{"use strict";n.d(t,{h:()=>B});var r=n(68963),o=n(98409),i=n(68512),a=n(17176),s=n(88776),l=n(36951);const c=(0,l.Ge)("dropdown-menu"),u=r.createContext({toggle(){},data:void 0});u.displayName="DropdownMenu.Context";var d=n(95097);const f=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M10.53 2.97a.75.75 0 0 1 0 1.06L6.56 8l3.97 3.97a.75.75 0 1 1-1.06 1.06l-4.5-4.5a.75.75 0 0 1 0-1.06l4.5-4.5a.75.75 0 0 1 1.06 0Z",clipRule:"evenodd"})),p=e=>r.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",width:16,height:16,fill:"none",viewBox:"0 0 16 16"},e),r.createElement("path",{fill:"currentColor",fillRule:"evenodd",d:"M5.47 13.03a.75.75 0 0 1 0-1.06L9.44 8 5.47 4.03a.75.75 0 0 1 1.06-1.06l4.5 4.5a.75.75 0 0 1 0 1.06l-4.5 4.5a.75.75 0 0 1-1.06 0Z",clipRule:"evenodd"}));var h=n(89646);const m=(0,l.Ge)("menu"),g=r.forwardRef((function(e,t){let{label:n,children:o,style:i,className:a,qa:s}=e;const l=(0,h.u)();return r.createElement("li",{ref:t,className:m("list-group-item")},r.createElement("div",{style:i,className:m("group",a),"data-qa":s},n&&r.createElement("div",{id:l,className:m("group-label")},n),r.createElement("ul",{role:"group","aria-labelledby":l,className:m("group-list")},o)))}));var v=n(93404);const y=(0,l.Ge)("menu"),b=r.forwardRef((function(e,t){let{icon:n,iconStart:o=n,iconEnd:a,title:s,disabled:l,active:c,selected:u,href:d,target:f,rel:p,onClick:h,style:m,className:g,theme:b,extraProps:w,children:_,qa:E}=e;const{onKeyDown:x}=(0,i.b)(h),S=r.useCallback((e=>{v.P.publish({componentId:"MenuItem",eventId:"click",domEvent:e})}),[]),C={role:"menuitem",onKeyDown:h&&!l?x:void 0},k={title:s,onClick:l?void 0:h,onClickCapture:l?void 0:S,style:m,tabIndex:l?-1:0,className:y("item",{disabled:l,active:c,selected:u,theme:b,interactive:Boolean(h)||Boolean(d)},g),"data-qa":E},O=[o&&r.createElement("div",{key:"icon-start",className:y("item-icon")},o),r.createElement("div",{key:"content",className:y("item-content")},_),a&&r.createElement("div",{key:"icon-end",className:y("item-icon-end")},a)];let T;return T=d?r.createElement("a",Object.assign({},C,w,k,{href:d,target:f,rel:p}),O):r.createElement("div",Object.assign({},C,w,k),O),r.createElement("li",{ref:t,className:y("list-item")},T)})),w=(0,l.Ge)("menu"),_=r.forwardRef((function(e,t){let{size:n="m",children:o,style:i,className:a,qa:s}=e;return r.createElement("ul",{ref:t,role:"menu",style:i,className:w({size:n},a),"data-qa":s},o)}));_.Item=b,_.Group=g;var E=n(72644);function x(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,r=arguments.length>3?arguments[3]:void 0;const o=(e.length+t-n%e.length)%e.length;return r&&r(e[o])?x(e,o,1,r):o}function S(e,t){let n=arguments.length>3?arguments[3]:void 0;const r=(t+(arguments.length>2&&void 0!==arguments[2]?arguments[2]:1))%e.length;return n&&n(e[r])?S(e,r,1,n):r}var C=n(44920);const k=[],O=r.createContext({activeMenuPath:k,setActiveMenuPath:()=>{},anchorRef:{current:null}}),T=e=>{let{anchorRef:t,children:n,disabled:o}=e;const[i,a]=r.useState(k);r.useEffect((()=>{o&&a(k)}),[o]);const s=r.useMemo((()=>({activeMenuPath:i,setActiveMenuPath:a,anchorRef:t})),[i,t]);return r.createElement(O.Provider,{value:s},n)},N={text:"",action:()=>{},path:[]};function I(e){return e===N}function P(e){return e.disabled||I(e)}function R(e){var t;return null!==(t=null===e||void 0===e?void 0:e.join(" "))&&void 0!==t?t:""}const D=e=>{let{items:t,open:n,anchorRef:o,onClose:i,size:a,menuProps:s,children:l,popupProps:d,path:f=[]}=e;const{toggle:p,data:h}=r.useContext(u),{activeMenuPath:m,setActiveMenuPath:g,anchorRef:v}=r.useContext(O),y=f.length>0,b=r.useCallback((()=>{g(f.slice(0,f.length-1))}),[g,f]),w=r.useCallback((e=>{var t;g(f),null===(t=null===d||void 0===d?void 0:d.onMouseEnter)||void 0===t||t.call(d,e)}),[f,d,g]),E=r.useCallback((e=>{var t;b(),null===(t=null===d||void 0===d?void 0:d.onMouseLeave)||void 0===t||t.call(d,e)}),[b,d]),k=r.useCallback(((e,t)=>{var n;e.items&&e.path?g(e.path):(null===(n=e.action)||void 0===n||n.call(e,t,h),p(!1))}),[h,g,p]),T=r.useCallback(((e,n)=>{switch(n.key){case"Escape":return y&&(n.stopPropagation(),null===b||void 0===b||b()),!1;case"Enter":case" ":{const r=t[e],o=null===r||void 0===r?void 0:r.items;return(y||o)&&(n.stopPropagation(),n.preventDefault()),r&&k(r,n),!1}}return!0}),[b,k,y,t]),N=n&&R(f)===R(m),{activeItemIndex:D,setActiveItemIndex:A,reset:j}=function(e){let{items:t,skip:n,pageSize:o,processHomeKey:i=!0,processEndKey:a=!0,anchorRef:s,disabled:l=!1,initialValue:c=-1,onAnchorKeyDown:u}=e;const[d,f]=r.useState(c),p=r.useCallback((()=>{f(c)}),[c]);return r.useEffect((()=>{t&&p()}),[t,p]),r.useLayoutEffect((()=>{if(l)return;if(!t.some((e=>!(null===n||void 0===n?void 0:n(e)))))return;const e=null===s||void 0===s?void 0:s.current;if(!e)return;const r=e=>{if(!1!==(null===u||void 0===u?void 0:u(d,e)))switch(e.key){case"ArrowDown":e.preventDefault(),f((e=>S(t,e,1,n)));break;case"ArrowUp":e.preventDefault(),f((e=>x(t,e,1,n)));break;case"PageDown":if(!o)return;e.preventDefault(),f((e=>S(t,e,o,n)));break;case"PageUp":if(!o)return;e.preventDefault(),f((e=>x(t,e,o,n)));break;case"Home":if(!i)return;e.preventDefault(),f((e=>x(t,e,e,n)));break;case"End":if(!a)return;e.preventDefault(),f((e=>x(t,e,e+1,n)))}};return e.addEventListener("keydown",r),()=>{e.removeEventListener("keydown",r)}}),[d,s,l,t,u,o,a,i,n]),{activeItemIndex:d,setActiveItemIndex:f,reset:p}}({items:t,skip:P,anchorRef:v,onAnchorKeyDown:T,disabled:!N,initialValue:y?0:-1});return r.useEffect((()=>{n||j()}),[n,j]),r.createElement(C.G,Object.assign({open:n,anchorRef:o,onClose:i},d,{onMouseEnter:w,onMouseLeave:E}),l||r.createElement(_,Object.assign({className:c("menu"),size:a},s),t.map(((e,t)=>{var o;const a=N&&D===t,s=n&&!a&&0!==m.length&&R(e.path)===R(m.slice(0,e.path.length)),l=Object.assign(Object.assign({},e.extraProps),{onMouseEnter:()=>A(t)});return r.createElement(M,Object.assign({key:t,className:c("menu-item",{separator:I(e),"active-parent":s,"with-submenu":Boolean(null===(o=e.items)||void 0===o?void 0:o.length)},e.className),selected:a,popupProps:d,closeMenu:i},e,{extraProps:l}))}))))};function A(e,t){var n;return null!==(n=null===e||void 0===e?void 0:e.every(((e,n)=>e===(null===t||void 0===t?void 0:t[n]))))&&void 0!==n&&n}function j(e){let{items:t,path:n}=e;const{activeMenuPath:o,setActiveMenuPath:i}=r.useContext(O),a=Boolean(n)&&Boolean(null===t||void 0===t?void 0:t.length),s=r.useCallback((()=>{n&&i(n.slice(0,n.length-1))}),[n,i]),l=r.useCallback((()=>{n&&i(n)}),[n,i]);return{hasSubmenu:a,isSubmenuOpen:A(n,o),openSubmenu:l,closeSubmenu:s}}const M=e=>{var{text:t,action:n,items:o,popupProps:i,closeMenu:a,children:l,path:h}=e,m=(0,d._T)(e,["text","action","items","popupProps","closeMenu","children","path"]);const{toggle:g,data:v}=r.useContext(u),y=r.useRef(null),b=(0,E.g)(),{hasSubmenu:w,isSubmenuOpen:x,closeSubmenu:S,openSubmenu:C}=j({items:o,path:h}),k=r.useCallback((()=>{const e=()=>{a?a():g(!1)};w?(S(),requestAnimationFrame(e)):e()}),[a,S,w,g]),O=r.useCallback((e=>{w||(null===n||void 0===n||n(e,v),k())}),[n,v,k,w]),T=r.useMemo((()=>Object.assign(Object.assign({},m.extraProps),{onMouseEnter:e=>{var t,n;null===(n=null===(t=m.extraProps)||void 0===t?void 0:t.onMouseEnter)||void 0===n||n.call(t,e),w&&C()},onMouseLeave:e=>{var t,n;null===(n=null===(t=m.extraProps)||void 0===t?void 0:t.onMouseLeave)||void 0===n||n.call(t,e),w&&S()}})),[m.extraProps,S,w,C]),N=r.useMemo((()=>"rtl"===b?["left-start","right-start"]:["right-start","left-start"]),[b]),I=r.useMemo((()=>w?r.createElement(s.J,{data:"rtl"===b?f:p,size:10,className:c("sub-menu-arrow")}):m.iconEnd),[w,b,m.iconEnd]);return r.createElement(r.Fragment,null,r.createElement(_.Item,Object.assign({ref:y},m,{extraProps:T,onClick:O,iconEnd:I}),t||l),w&&o&&r.createElement(D,{popupProps:Object.assign(Object.assign({},i),{className:c("sub-menu",null===i||void 0===i?void 0:i.className),placement:N}),items:o,path:h,open:x,anchorRef:y,onClose:k}))},L=e=>"function"===typeof e;function z(e,t,n){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0!==e&&void 0!==t;const i=function(e,t){const[n,o]=r.useState(e);return[n,r.useCallback((e=>{L(e)?o((n=>{const r=e(n);return null===t||void 0===t||t(r),r})):(null===t||void 0===t||t(e),o(e))}),[t])]}(e||n,t);return o?[e,t]:i}function F(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];const r=[];let o=!1,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;for(const a of e)if(Array.isArray(a)){const e=F(a,t,n,i);0!==r.length&&r.push(t),r.push(...e),i+=e.length,o=!0}else{if(a.hidden)continue;o&&r.push(t);const e=Object.assign(Object.assign({},a),{path:[...n,i++]});a.items&&(e.items=F(a.items,t,e.path)),r.push(e),o=!1}return r}const B=Object.assign((e=>{let{items:t=[],size:n="m",icon:l=r.createElement(s.J,{data:o.Z}),open:d,onOpenToggle:f,hideOnScroll:p=!0,data:h,disabled:m,switcher:g,renderSwitcher:v,switcherWrapperClassName:y,defaultSwitcherProps:b,defaultSwitcherClassName:w,onSwitcherClick:_,menuProps:E,popupProps:x,children:S}=e;const C=r.useRef(null),{isPopupShown:k,togglePopup:O,closePopup:I}=function(e,t,n){const[o,i]=z(e,t,!1),a=r.useCallback((e=>{i((t=>"boolean"===typeof e?e:!t))}),[i]),s=r.useCallback((()=>{i(!1)}),[i]);return r.useEffect((()=>{n&&o&&s()}),[s,n,o]),{isPopupShown:o,togglePopup:a,closePopup:s}}(d,f,m);!function(e,t,n){r.useEffect((()=>{if(n)return;const r=n=>{n.target.contains(t.current)&&e(n)};return document.addEventListener("scroll",r,!0),()=>{document.removeEventListener("scroll",r,!0)}}),[t,e,n])}(I,C,!k||!p);const P=r.useMemo((()=>({toggle:O,data:h})),[h,O]),R=r.useMemo((()=>F(t,N)),[t]),A=r.useCallback((e=>{m||(null===_||void 0===_||_(e),O())}),[m,_,O]),{onKeyDown:j}=(0,i.b)(A),M=r.useMemo((()=>({onClick:A,onKeyDown:j})),[A,j]);return r.createElement(u.Provider,{value:P},r.createElement("div",Object.assign({ref:C,className:c("switcher-wrapper",y)},v?{}:M),(null===v||void 0===v?void 0:v(M))||g||r.createElement(a.z,Object.assign({view:"flat",size:n},b,{className:c("switcher-button",w),disabled:m}),l)),r.createElement(T,{anchorRef:C,disabled:!k},r.createElement(D,{items:R,open:k,size:n,menuProps:E,anchorRef:C,onClose:I,popupProps:x},S)))}),{Item:M})},88776:(e,t,n)=>{"use strict";n.d(t,{J:()=>c});var r=n(68963),o=n(36951);const i={"aria-hidden":!0};function a(e){return"object"===typeof e}function s(e){return"string"===typeof e}const l=(0,o.Ge)("icon"),c=r.forwardRef(((e,t)=>{let n,o,u,{data:d,width:f,height:p,size:h,className:m,fill:g="currentColor",stroke:v="none",qa:y}=e;if(h&&(n=h,o=h),f&&(n=f),p&&(o=p),a(d))({viewBox:u}=d);else if(s(d))u=function(e){const t=e.match(/viewBox=(["']?)([\d\s,-]+)\1/);return t?t[2]:void 0}(d);else if(function(e){return"object"===typeof e&&"defaultProps"in e}(d))({viewBox:u}=d.defaultProps);else if(function(e){return"function"===typeof e&&(!e.prototype||!e.prototype.render)}(d)){const e=d({});e&&({viewBox:u}=e.props)}if(u&&(!n||!o)){const e=u.split(/\s+|\s*,\s*/);n||(n=e[2]),o||(o=e[3])}const b=Object.assign({xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",width:n,height:o,className:l(null,m),fill:g,stroke:v,"data-qa":y},i);if(s(d)){const e=function(e){return e.replace(/]*>/,(e=>e.replace(/(width|height)=(["']?)\d+\2/g,"").replace(/(\s){2,}\b/g,"$1").replace(/(\s)+>/g,">")))}(d);return r.createElement("svg",Object.assign({},b,{ref:t,dangerouslySetInnerHTML:{__html:e}}))}if(a(d)){const e=c.prefix+(d.url||"#".concat(d.id));return r.createElement("svg",Object.assign({},b,{viewBox:u,ref:t}),r.createElement("use",{href:e,xlinkHref:e}))}const w=d;return w.defaultProps&&(w.defaultProps.width=w.defaultProps.height=void 0),r.createElement("svg",Object.assign({},b,{ref:t}),r.createElement(w,{width:void 0,height:void 0}))}));c.displayName="Icon",c.prefix=""},14979:(e,t,n)=>{"use strict";n.d(t,{_:()=>u});var r=n(68963),o=n(77280),i=n(11050),a=n(81434),s=n(88776);const l=(0,n(36951).Ge)("label"),c={xs:{copyIconSize:12,closeIconSize:12},s:{copyIconSize:14,closeIconSize:14},m:{copyIconSize:16,closeIconSize:16}},u=r.forwardRef((function(e,t){const{type:n="default",theme:u="normal",size:d="xs",icon:f,children:p,onCloseClick:h,className:m,disabled:g,copyText:v,closeButtonLabel:y,copyButtonLabel:b,interactive:w=!1,value:_,onCopy:E,onClick:x,qa:S}=e,C=Boolean(""!==p&&r.Children.count(p)>0),k="close"===n&&C,O="copy"===n&&C,T="function"===typeof x,N=Boolean(O&&v),I=(T||N||w)&&!g,{copyIconSize:P,closeIconSize:R}=c[d],D=f&&r.createElement("div",{className:l("addon",{side:C?"start":void 0,type:"icon"})},f),A=C&&r.createElement("div",{className:l("text")},r.createElement("div",{className:l("content")},p),Boolean(_)&&r.createElement("div",{className:l("value")},r.createElement("div",{className:l("separator")},":"),r.createElement("div",{className:l("key")},_))),j=e=>{let n;return O?n=r.createElement("button",{type:"button","aria-label":b||void 0,onClick:T?x:void 0,disabled:g,className:l("addon",{side:"end",type:"button"})},r.createElement(i.K,{status:e||"pending",size:P})):k&&(n=r.createElement("button",{type:"button",onClick:h,"aria-label":y||void 0,disabled:g,className:l("addon",{side:"end",type:"button"})},r.createElement(s.J,{size:R,data:o.Z}))),r.createElement("div",{ref:t,className:l({theme:u,size:d,interactive:I,disabled:g},m),"data-qa":S},D,T?r.createElement("button",{disabled:g,type:"button",onClick:x,className:l("main-button")},A):A,n)};return N&&v&&!T?r.createElement(a.h,{text:v,onCopy:E,timeout:1e3},(e=>j(e))):j()}))},86017:(e,t,n)=>{"use strict";n.d(t,{r:()=>s});var r=n(68963),o=n(36951),i=n(93404);const a=(0,o.Ge)("link"),s=r.forwardRef((function(e,t){let{view:n="normal",visitable:o,underline:s,href:l,target:c,rel:u,title:d,children:f,extraProps:p,onClick:h,onFocus:m,onBlur:g,id:v,style:y,className:b,qa:w}=e;const _={title:d,onClick:h,onClickCapture:r.useCallback((e=>{i.P.publish({componentId:"Link",eventId:"click",domEvent:e})}),[]),onFocus:m,onBlur:g,id:v,style:y,className:a({view:n,visitable:o,underline:s},b),"data-qa":w},E="_blank"!==c||u?u:"noopener noreferrer";return r.createElement("a",Object.assign({},p,_,{ref:t,href:l,target:c,rel:E}),f)}))},24917:(e,t,n)=>{"use strict";n.d(t,{a:()=>ce});var r=n(68963),o=n(85690),i=n.n(o),a=n(95188),s=n.n(a),l=n(90966);let c;c="undefined"!==typeof window?window:"undefined"!==typeof self?self:n.g;let u=null,d=null;const f=c.clearTimeout,p=c.setTimeout,h=c.cancelAnimationFrame||c.mozCancelAnimationFrame||c.webkitCancelAnimationFrame,m=c.requestAnimationFrame||c.mozRequestAnimationFrame||c.webkitRequestAnimationFrame;function g(e){let t,n,r,o,i,a,s;const l="undefined"!==typeof document&&document.attachEvent;if(!l){a=function(e){const t=e.__resizeTriggers__,n=t.firstElementChild,r=t.lastElementChild,o=n.firstElementChild;r.scrollLeft=r.scrollWidth,r.scrollTop=r.scrollHeight,o.style.width=n.offsetWidth+1+"px",o.style.height=n.offsetHeight+1+"px",n.scrollLeft=n.scrollWidth,n.scrollTop=n.scrollHeight},i=function(e){return e.offsetWidth!==e.__resizeLast__.width||e.offsetHeight!==e.__resizeLast__.height},s=function(e){if(e.target.className&&"function"===typeof e.target.className.indexOf&&e.target.className.indexOf("contract-trigger")<0&&e.target.className.indexOf("expand-trigger")<0)return;const t=this;a(this),this.__resizeRAF__&&u(this.__resizeRAF__),this.__resizeRAF__=d((function(){i(t)&&(t.__resizeLast__.width=t.offsetWidth,t.__resizeLast__.height=t.offsetHeight,t.__resizeListeners__.forEach((function(n){n.call(t,e)})))}))};let e=!1,l="";r="animationstart";const c="Webkit Moz O ms".split(" ");let f="webkitAnimationStart animationstart oAnimationStart MSAnimationStart".split(" "),p="";{const t=document.createElement("fakeelement");if(void 0!==t.style.animationName&&(e=!0),!1===e)for(let n=0;n div, .contract-trigger:before { content: " "; display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; z-index: -1; } .resize-triggers > div { background: #eee; overflow: auto; } .contract-trigger:before { width: 200%; height: 200%; }',i=n.head||n.getElementsByTagName("head")[0],a=n.createElement("style");a.id="detectElementResize",a.type="text/css",null!=e&&a.setAttribute("nonce",e),a.styleSheet?a.styleSheet.cssText=r:a.appendChild(n.createTextNode(r)),i.appendChild(a)}}(l),i.__resizeLast__={},i.__resizeListeners__=[],(i.__resizeTriggers__=l.createElement("div")).className="resize-triggers";const d=l.createElement("div");d.className="expand-trigger",d.appendChild(l.createElement("div"));const f=l.createElement("div");f.className="contract-trigger",i.__resizeTriggers__.appendChild(d),i.__resizeTriggers__.appendChild(f),i.appendChild(i.__resizeTriggers__),a(i),i.addEventListener("scroll",s,!0),r&&(i.__resizeTriggers__.__animationListener__=function(e){e.animationName===n&&a(i)},i.__resizeTriggers__.addEventListener(r,i.__resizeTriggers__.__animationListener__))}i.__resizeListeners__.push(u)}},removeResizeListener:function(e,t){if(l)e.detachEvent("onresize",t);else if(e.__resizeListeners__.splice(e.__resizeListeners__.indexOf(t),1),!e.__resizeListeners__.length){e.removeEventListener("scroll",s,!0),e.__resizeTriggers__.__animationListener__&&(e.__resizeTriggers__.removeEventListener(r,e.__resizeTriggers__.__animationListener__),e.__resizeTriggers__.__animationListener__=null);try{e.__resizeTriggers__=!e.removeChild(e.__resizeTriggers__)}catch(n){}}}}}null==h||null==m?(u=f,d=function(e){return p(e,20)}):(u=function(e){let[t,n]=e;h(t),f(n)},d=function(e){const t=m((function(){f(n),e()})),n=p((function(){h(t),e()}),20);return[t,n]});class v extends r.Component{constructor(){super(...arguments),this.state={height:this.props.defaultHeight||0,scaledHeight:this.props.defaultHeight||0,scaledWidth:this.props.defaultWidth||0,width:this.props.defaultWidth||0},this._autoSizer=null,this._detectElementResize=null,this._parentNode=null,this._resizeObserver=null,this._timeoutId=null,this._onResize=()=>{this._timeoutId=null;const{disableHeight:e,disableWidth:t,onResize:n}=this.props;if(this._parentNode){const r=window.getComputedStyle(this._parentNode)||{},o=parseFloat(r.paddingLeft||"0"),i=parseFloat(r.paddingRight||"0"),a=parseFloat(r.paddingTop||"0"),s=parseFloat(r.paddingBottom||"0"),l=this._parentNode.getBoundingClientRect(),c=l.height-a-s,u=l.width-o-i,d=this._parentNode.offsetHeight-a-s,f=this._parentNode.offsetWidth-o-i;(e||this.state.height===d&&this.state.scaledHeight===c)&&(t||this.state.width===f&&this.state.scaledWidth===u)||(this.setState({height:d,width:f,scaledHeight:c,scaledWidth:u}),"function"===typeof n&&n({height:d,scaledHeight:c,scaledWidth:u,width:f}))}},this._setRef=e=>{this._autoSizer=e}}componentDidMount(){const{nonce:e}=this.props,t=this._autoSizer?this._autoSizer.parentNode:null;if(null!=t&&t.ownerDocument&&t.ownerDocument.defaultView&&t instanceof t.ownerDocument.defaultView.HTMLElement){this._parentNode=t;const n=t.ownerDocument.defaultView.ResizeObserver;null!=n?(this._resizeObserver=new n((()=>{this._timeoutId=setTimeout(this._onResize,0)})),this._resizeObserver.observe(t)):(this._detectElementResize=g(e),this._detectElementResize.addResizeListener(t,this._onResize)),this._onResize()}}componentWillUnmount(){this._parentNode&&(this._detectElementResize&&this._detectElementResize.removeResizeListener(this._parentNode,this._onResize),null!==this._timeoutId&&clearTimeout(this._timeoutId),this._resizeObserver&&this._resizeObserver.disconnect())}render(){const{children:e,defaultHeight:t,defaultWidth:n,disableHeight:o=!1,disableWidth:i=!1,doNotBailOutOnEmptyChildren:a=!1,nonce:s,onResize:l,style:c={},tagName:u="div",...d}=this.props,{height:f,scaledHeight:p,scaledWidth:h,width:m}=this.state,g={overflow:"visible"},v={};let y=!1;return o||(0===f&&(y=!0),g.height=0,v.height=f,v.scaledHeight=p),i||(0===m&&(y=!0),g.width=0,v.width=m,v.scaledWidth=h),a&&(y=!1),(0,r.createElement)(u,{ref:this._setRef,style:{...g,...c},...d},!y&&e(v))}}var y=n(87462),b=n(97326),w=n(51721),_=n(90083),E="object"===typeof performance&&"function"===typeof performance.now?function(){return performance.now()}:function(){return Date.now()};function x(e){cancelAnimationFrame(e.id)}function S(e,t){var n=E();var r={id:requestAnimationFrame((function o(){E()-n>=t?e.call(null):r.id=requestAnimationFrame(o)}))};return r}var C=-1;function k(e){if(void 0===e&&(e=!1),-1===C||e){var t=document.createElement("div"),n=t.style;n.width="50px",n.height="50px",n.overflow="scroll",document.body.appendChild(t),C=t.offsetWidth-t.clientWidth,document.body.removeChild(t)}return C}var O=null;function T(e){if(void 0===e&&(e=!1),null===O||e){var t=document.createElement("div"),n=t.style;n.width="50px",n.height="50px",n.overflow="scroll",n.direction="rtl";var r=document.createElement("div"),o=r.style;return o.width="100px",o.height="100px",t.appendChild(r),document.body.appendChild(t),t.scrollLeft>0?O="positive-descending":(t.scrollLeft=1,O=0===t.scrollLeft?"negative":"positive-ascending"),document.body.removeChild(t),O}return O}var N=150,I=function(e,t){return e};function P(e){var t,n=e.getItemOffset,o=e.getEstimatedTotalSize,i=e.getItemSize,a=e.getOffsetForIndexAndAlignment,s=e.getStartIndexForOffset,l=e.getStopIndexForStartIndex,c=e.initInstanceProps,u=e.shouldResetStyleCacheOnItemSizeChange,d=e.validateProps;return t=function(e){function t(t){var r;return(r=e.call(this,t)||this)._instanceProps=c(r.props,(0,b.Z)(r)),r._outerRef=void 0,r._resetIsScrollingTimeoutId=null,r.state={instance:(0,b.Z)(r),isScrolling:!1,scrollDirection:"forward",scrollOffset:"number"===typeof r.props.initialScrollOffset?r.props.initialScrollOffset:0,scrollUpdateWasRequested:!1},r._callOnItemsRendered=void 0,r._callOnItemsRendered=(0,_.Z)((function(e,t,n,o){return r.props.onItemsRendered({overscanStartIndex:e,overscanStopIndex:t,visibleStartIndex:n,visibleStopIndex:o})})),r._callOnScroll=void 0,r._callOnScroll=(0,_.Z)((function(e,t,n){return r.props.onScroll({scrollDirection:e,scrollOffset:t,scrollUpdateWasRequested:n})})),r._getItemStyle=void 0,r._getItemStyle=function(e){var t,o=r.props,a=o.direction,s=o.itemSize,l=o.layout,c=r._getItemStyleCache(u&&s,u&&l,u&&a);if(c.hasOwnProperty(e))t=c[e];else{var d=n(r.props,e,r._instanceProps),f=i(r.props,e,r._instanceProps),p="horizontal"===a||"horizontal"===l,h="rtl"===a,m=p?d:0;c[e]=t={position:"absolute",left:h?void 0:m,right:h?m:void 0,top:p?0:d,height:p?"100%":f,width:p?f:"100%"}}return t},r._getItemStyleCache=void 0,r._getItemStyleCache=(0,_.Z)((function(e,t,n){return{}})),r._onScrollHorizontal=function(e){var t=e.currentTarget,n=t.clientWidth,o=t.scrollLeft,i=t.scrollWidth;r.setState((function(e){if(e.scrollOffset===o)return null;var t=r.props.direction,a=o;if("rtl"===t)switch(T()){case"negative":a=-o;break;case"positive-descending":a=i-n-o}return a=Math.max(0,Math.min(a,i-n)),{isScrolling:!0,scrollDirection:e.scrollOffsetl.clientWidth?k():0:l.scrollHeight>l.clientHeight?k():0}this.scrollTo(a(this.props,e,t,i,this._instanceProps,s))},f.componentDidMount=function(){var e=this.props,t=e.direction,n=e.initialScrollOffset,r=e.layout;if("number"===typeof n&&null!=this._outerRef){var o=this._outerRef;"horizontal"===t||"horizontal"===r?o.scrollLeft=n:o.scrollTop=n}this._callPropsCallbacks()},f.componentDidUpdate=function(){var e=this.props,t=e.direction,n=e.layout,r=this.state,o=r.scrollOffset;if(r.scrollUpdateWasRequested&&null!=this._outerRef){var i=this._outerRef;if("horizontal"===t||"horizontal"===n)if("rtl"===t)switch(T()){case"negative":i.scrollLeft=-o;break;case"positive-ascending":i.scrollLeft=o;break;default:var a=i.clientWidth,s=i.scrollWidth;i.scrollLeft=s-a-o}else i.scrollLeft=o;else i.scrollTop=o}this._callPropsCallbacks()},f.componentWillUnmount=function(){null!==this._resetIsScrollingTimeoutId&&x(this._resetIsScrollingTimeoutId)},f.render=function(){var e=this.props,t=e.children,n=e.className,i=e.direction,a=e.height,s=e.innerRef,l=e.innerElementType,c=e.innerTagName,u=e.itemCount,d=e.itemData,f=e.itemKey,p=void 0===f?I:f,h=e.layout,m=e.outerElementType,g=e.outerTagName,v=e.style,b=e.useIsScrolling,w=e.width,_=this.state.isScrolling,E="horizontal"===i||"horizontal"===h,x=E?this._onScrollHorizontal:this._onScrollVertical,S=this._getRangeToRender(),C=S[0],k=S[1],O=[];if(u>0)for(var T=C;T<=k;T++)O.push((0,r.createElement)(t,{data:d,key:p(T,d),index:T,isScrolling:b?_:void 0,style:this._getItemStyle(T)}));var N=o(this.props,this._instanceProps);return(0,r.createElement)(m||g||"div",{className:n,onScroll:x,ref:this._outerRefSetter,style:(0,y.Z)({position:"relative",height:a,width:w,overflow:"auto",WebkitOverflowScrolling:"touch",willChange:"transform",direction:i},v)},(0,r.createElement)(l||c||"div",{children:O,ref:s,style:{height:E?"100%":N,pointerEvents:_?"none":void 0,width:E?N:"100%"}}))},f._callPropsCallbacks=function(){if("function"===typeof this.props.onItemsRendered&&this.props.itemCount>0){var e=this._getRangeToRender(),t=e[0],n=e[1],r=e[2],o=e[3];this._callOnItemsRendered(t,n,r,o)}if("function"===typeof this.props.onScroll){var i=this.state,a=i.scrollDirection,s=i.scrollOffset,l=i.scrollUpdateWasRequested;this._callOnScroll(a,s,l)}},f._getRangeToRender=function(){var e=this.props,t=e.itemCount,n=e.overscanCount,r=this.state,o=r.isScrolling,i=r.scrollDirection,a=r.scrollOffset;if(0===t)return[0,0,0,0];var c=s(this.props,a,this._instanceProps),u=l(this.props,c,a,this._instanceProps),d=o&&"backward"!==i?1:Math.max(1,n),f=o&&"forward"!==i?1:Math.max(1,n);return[Math.max(0,c-d),Math.max(0,Math.min(t-1,u+f)),c,u]},t}(r.PureComponent),t.defaultProps={direction:"ltr",itemData:void 0,layout:"vertical",overscanCount:2,useIsScrolling:!1},t}var R=function(e,t){e.children,e.direction,e.height,e.layout,e.innerTagName,e.outerTagName,e.width,t.instance},D=function(e,t,n){var r=e.itemSize,o=n.itemMetadataMap,i=n.lastMeasuredIndex;if(t>i){var a=0;if(i>=0){var s=o[i];a=s.offset+s.size}for(var l=i+1;l<=t;l++){var c=r(l);o[l]={offset:a,size:c},a+=c}n.lastMeasuredIndex=t}return o[t]},A=function(e,t,n,r,o){for(;r<=n;){var i=r+Math.floor((n-r)/2),a=D(e,i,t).offset;if(a===o)return i;ao&&(n=i-1)}return r>0?r-1:0},j=function(e,t,n,r){for(var o=e.itemCount,i=1;n=n&&(i=n-1),i>=0){var s=r[i];a=s.offset+s.size}return a+(n-i-1)*o},L=P({getItemOffset:function(e,t,n){return D(e,t,n).offset},getItemSize:function(e,t,n){return n.itemMetadataMap[t].size},getEstimatedTotalSize:M,getOffsetForIndexAndAlignment:function(e,t,n,r,o,i){var a=e.direction,s=e.height,l=e.layout,c=e.width,u="horizontal"===a||"horizontal"===l?c:s,d=D(e,t,o),f=M(e,o),p=Math.max(0,Math.min(f-u,d.offset)),h=Math.max(0,d.offset-u+d.size+i);switch("smart"===n&&(n=r>=h-u&&r<=p+u?"auto":"center"),n){case"start":return p;case"end":return h;case"center":return Math.round(h+(p-h)/2);default:return r>=h&&r<=p?r:r0?r[o].offset:0)>=n?A(e,t,o,0,n):j(e,t,Math.max(0,o),n)}(e,n,t)},getStopIndexForStartIndex:function(e,t,n,r){for(var o=e.direction,i=e.height,a=e.itemCount,s=e.layout,l=e.width,c="horizontal"===o||"horizontal"===s?l:i,u=D(e,t,r),d=n+c,f=u.offset+u.size,p=t;p{const t=r.useRef(null);return(0,Z.s)({element:t.current,onIntersect:null===e||void 0===e?void 0:e.onIntersect}),r.createElement("div",{ref:t,className:W("loading-indicator")},r.createElement(H.a,{qa:"list-loader"}))};var G=n(20397),$=n(88776),K=n(93404),Y=n(59926);const Q="list-active-item",J=[Y.V.TAB],X=(0,U.Ge)("list"),ee=e=>String(e);function te(e,t){return t?Object.assign(Object.assign({},null===e||void 0===e?void 0:e.draggableProps.style),t):null===e||void 0===e?void 0:e.draggableProps.style}class ne extends r.Component{constructor(){super(...arguments),this.node=null,this.getNode=()=>this.node,this.setRef=e=>{var t;this.node=e,null===(t=this.props.provided)||void 0===t||t.innerRef(e)},this.onClick=e=>{this.props.onClick&&this.props.onClick(this.props.item,this.props.itemIndex,!1,e)},this.onClickCapture=e=>{ne.publishEvent({domEvent:e,eventId:"click"})},this.onMouseEnter=()=>!this.props.item.disabled&&this.props.onActivate(this.props.itemIndex),this.onMouseLeave=()=>this.props.onActivate(void 0)}render(){var e,t;const{item:n,style:o,sortable:i,sortHandleAlign:a,itemClassName:s,selected:l,active:c,role:u="listitem",isDragging:d=!1}=this.props,f=Object.assign(Object.assign({},o),{right:void 0});return r.createElement("div",Object.assign({role:u,"aria-selected":l,"data-qa":c?Q:void 0,className:X("item",{sortable:i,active:c,selected:l,inactive:n.disabled,"sort-handle-align":a,dragging:d},s)},null===(e=this.props.provided)||void 0===e?void 0:e.draggableProps,null===(t=this.props.provided)||void 0===t?void 0:t.dragHandleProps,{style:te(this.props.provided,f),onClick:n.disabled?void 0:this.onClick,onClickCapture:n.disabled?void 0:this.onClickCapture,onMouseEnter:this.onMouseEnter,onMouseLeave:this.onMouseLeave,ref:this.setRef,id:"".concat(this.props.listId,"-item-").concat(this.props.itemIndex)}),this.renderSortIcon(),this.renderContent())}renderSortIcon(){const{sortable:e}=this.props;return e?r.createElement("div",{className:X("item-sort-icon")},r.createElement($.J,{data:G.Z,size:12})):null}renderContent(){const{renderItem:e=ee,item:t,active:n,itemIndex:o}=this.props;return r.createElement("div",{className:X("item-content")},e(t,n,o))}}ne.publishEvent=K.P.withEventPublisher("List");var re=n(28925),oe=n.n(re);function ie(e){return oe()(e).reduce(((e,t)=>(e[t]=r.createRef(),e)),{})}class ae extends r.Component{static getDerivedStateFromProps(e,t){let{itemCount:n}=e;return n===Object.keys(t.refsList).length?t:{refsList:ie(n)}}constructor(e){super(e),this.node=null,this.setRef=e=>{var t;this.node=e,null===(t=this.props.provided)||void 0===t||t.innerRef(e)},this.state={refsList:ie(e.itemCount)}}render(){const e=r.Children.map(this.props.children,((e,t)=>r.cloneElement(e,{ref:this.state.refsList[t]})));return r.createElement("div",{ref:this.setRef},e)}scrollToItem(e){var t,n;const r=null===(t=this.state.refsList[e])||void 0===t?void 0:t.current;if(r&&"function"===typeof r.getNode){const e=r.getNode();e&&(null===(n=e.scrollIntoView)||void 0===n||n.call(e,{block:"nearest"}))}}}const se=(0,U.Ge)("list"),le=r.forwardRef(((e,t)=>r.createElement(L,Object.assign({ref:t},e,{direction:(0,B.g)()}))));le.displayName="ListContainer";class ce extends r.Component{constructor(){super(...arguments),this.state={items:this.props.items,filter:""},this.refFilter=r.createRef(),this.refContainer=r.createRef(),this.blurTimer=null,this.loadingItem={value:"__LIST_ITEM_LOADING__",disabled:!1},this.uniqId=(0,q.xA)(),this.onKeyDown=e=>{const{activeItem:t,pageSize:n}=this.state;if(J.includes(e.key))return;const r=e.target instanceof HTMLInputElement;switch(e.key){case"ArrowDown":this.handleKeyMove(e,1,-1);break;case"ArrowUp":this.handleKeyMove(e,-1);break;case"PageDown":this.handleKeyMove(e,n);break;case"PageUp":this.handleKeyMove(e,-n);break;case"Home":if(r)return;this.handleKeyMove(e,this.state.items.length-(t||0));break;case"End":if(r)return;this.handleKeyMove(e,-(t||0)-1);break;case"Enter":"number"===typeof t&&this.props.onItemClick&&this.props.onItemClick(this.state.items[t],t,!0,e);break;default:this.refFilter.current&&this.refFilter.current.focus()}},this.renderItemContent=(e,t,n)=>{const{onLoadMore:o}=this.props;return s()(e)&&"value"in e&&e.value===this.loadingItem.value?r.createElement(V,{onIntersect:0===n?void 0:o}):this.props.renderItem?this.props.renderItem(e,t,n):ee(e)},this.renderItem=e=>{let{index:t,style:n,provided:o,isDragging:i}=e;var a;const{sortHandleAlign:s,role:l}=this.props,{items:c,activeItem:u}=this.state,d=this.getItemsWithLoading()[t],f=this.props.sortable&&c.length>1&&!this.getFilter(),p=t===u||t===this.props.activeItemIndex,h=Array.isArray(this.props.selectedItemIndex)?this.props.selectedItemIndex.includes(t):t===this.props.selectedItemIndex;return r.createElement(ne,{key:t,style:n,itemIndex:t,item:d,sortable:f,sortHandleAlign:s,renderItem:this.renderItemContent,itemClassName:this.props.itemClassName,active:p,selected:h,onActivate:this.onItemActivate,onClick:this.props.onItemClick,role:"listbox"===l?"option":"listitem",listId:null!==(a=this.props.id)&&void 0!==a?a:this.uniqId,provided:o,isDragging:i})},this.renderVirtualizedItem=e=>{let{index:t,style:n}=e;return r.createElement(l._l,{draggableId:String(t),index:t,key:"item-key-".concat(t)},(e=>this.renderItem({index:t,style:n,provided:e})))},this.filterItem=e=>t=>String(t).includes(e),this.scrollToIndex=e=>{const t=this.refContainer.current;t&&t.scrollToItem(e)},this.deactivate=()=>{this.blurTimer&&this.props.deactivateOnLeave&&this.setState({activeItem:void 0})},this.handleFocus=()=>{this.blurTimer&&(clearTimeout(this.blurTimer),this.blurTimer=null)},this.handleBlur=()=>{this.blurTimer||(this.blurTimer=setTimeout(this.deactivate,50))},this.onUpdateFilterInternal=e=>{const{items:t,filterItem:n=this.filterItem,onFilterEnd:r}=this.props;this.setState({filter:e,items:e?t.filter(n(e)):t},(()=>{r&&r({items:this.state.items})}))},this.onFilterUpdate=e=>{this.props.onFilterUpdate?this.props.onFilterUpdate(e):this.onUpdateFilterInternal(e)},this.onItemsRendered=e=>{let{visibleStartIndex:t,visibleStopIndex:n}=e;this.setState({pageSize:n-t})},this.onItemActivate=e=>{this.state.sorting||this.activateItem(e,!1)},this.onMouseLeave=()=>{this.deactivate()},this.onSortStart=()=>{this.setState({sorting:!0})},this.onSortEnd=e=>{if(!e.destination)return void this.setState({sorting:!1});if(e.source.index===e.destination.index)return void this.setState({sorting:!1});const t=e.source.index,n=e.destination.index;this.props.onSortEnd&&this.props.onSortEnd({oldIndex:t,newIndex:n});const r=((e,t,n)=>{const r=Array.from(e),[o]=r.splice(t,1);return r.splice(n,0,o),r})(this.getItems(),t,n);this.setState({activeItem:n,items:r,sorting:!1})},this.getItemHeight=e=>{const{itemHeight:t}=this.props;if("function"===typeof t){const{items:n}=this.state;return t(n[e],e)}return t},this.getVirtualizedItemHeight=e=>this.getItemHeight(e)||28}static moveListElement(e,t,n){if(t!==n){const[r]=e.splice(t,1);e.splice(n,0,r)}return e}static findNextIndex(e,t,n){const r=e.length;let o=(t+r)%r;for(let i=0;i{let{mobile:u}=c;return r.createElement("div",{className:se({mobile:u},o),"data-qa":a,tabIndex:-1,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.onKeyDown},this.renderFilter(),r.createElement("div",{id:e,className:se("items",{virtualized:n},i),style:this.getItemsStyle(),onMouseLeave:this.onMouseLeave,role:s},this.renderItems(),0===l.length&&Boolean(t)&&r.createElement("div",{className:se("empty-placeholder")},t)))}))}getItems(){return this.state.items}getItemsWithLoading(){return this.props.sortable?this.getItems():this.props.loading?[...this.state.items,this.loadingItem]:this.getItems()}getActiveItem(){return"number"===typeof this.state.activeItem?this.state.activeItem:null}activateItem(e){"number"===typeof e&&(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])&&this.scrollToIndex(e),this.setState({activeItem:e})}renderFilter(){const{size:e,filterable:t,filter:n=this.state.filter,filterPlaceholder:o,filterClassName:i="",autoFocus:a}=this.props;return t?r.createElement("div",{className:se("filter",i)},r.createElement(z.o,{controlRef:this.refFilter,size:e,placeholder:o,value:n,hasClear:!0,onUpdate:this.onFilterUpdate,autoFocus:a})):null}renderSimpleContainer(){const{sortable:e}=this.props,t=this.getItemsWithLoading();return e?r.createElement(l.Z5,{onDragStart:this.onSortStart,onDragEnd:this.onSortEnd},r.createElement(l.bK,{droppableId:"droppable",renderClone:(e,t,n)=>this.renderItem({index:n.source.index,provided:e,isDragging:t.isDragging})},(e=>r.createElement(ae,{ref:this.refContainer,itemCount:t.length,provided:e},t.map(((e,t)=>r.createElement(l._l,{draggableId:String(t),index:t,key:"item-key-".concat(t)},((e,n)=>this.renderItem({index:t,isDragging:n.isDragging,provided:e,style:{height:this.getItemHeight(t)}}))))))))):r.createElement(ae,{itemCount:t.length,ref:this.refContainer},t.map(((e,t)=>this.renderItem({index:t,style:{height:this.getItemHeight(t)}}))))}renderVirtualizedContainer(){const e=[...this.getItemsWithLoading()];return this.props.sortable?r.createElement(l.Z5,{onDragStart:this.onSortStart,onDragEnd:this.onSortEnd},r.createElement(l.bK,{droppableId:"droppable",mode:"virtual",renderClone:(e,t,n)=>this.renderItem({index:n.source.index,provided:e,isDragging:t.isDragging})},(t=>r.createElement(v,null,(n=>{let{width:o,height:i}=n;return r.createElement(le,{ref:this.refContainer,outerRef:t.innerRef,width:o,height:i,itemSize:this.getVirtualizedItemHeight,itemData:e,itemCount:e.length,overscanCount:10,onItemsRendered:this.onItemsRendered,activeItem:this.state.activeItem},this.renderVirtualizedItem)}))))):r.createElement(v,null,(t=>{let{width:n,height:o}=t;return r.createElement(le,{ref:this.refContainer,width:n,height:o,itemSize:this.getVirtualizedItemHeight,itemData:e,itemCount:e.length,overscanCount:10,onItemsRendered:this.onItemsRendered,activeItem:this.state.activeItem},this.renderItem)}))}renderItems(){return this.props.virtualized?this.renderVirtualizedContainer():this.renderSimpleContainer()}getFilter(){const{filter:e=this.state.filter}=this.props;return e}getItemsStyle(){let{itemsHeight:e}=this.props;return"function"===typeof e&&(e=e(this.state.items)),e?{height:e}:void 0}handleKeyMove(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;const{activeItem:r=n}=this.state;e.preventDefault();const o=this.getItemsWithLoading();this.activateItem(ce.findNextIndex(o,r+t,Math.sign(t)))}}ce.defaultProps={items:[],itemClassName:"",filterable:!0,sortable:!1,virtualized:!0,deactivateOnLeave:!0}},2982:(e,t,n)=>{"use strict";n.d(t,{a:()=>i});var r=n(68963);const o=(0,n(36951).Ge)("loader");function i(e){let{size:t="s",className:n,qa:i}=e;return r.createElement("div",{className:o({size:t},n),"data-qa":i},r.createElement("div",{className:o("left")}),r.createElement("div",{className:o("center")}),r.createElement("div",{className:o("right")}))}},68330:(e,t,n)=>{"use strict";n.d(t,{J:()=>w});var r=n(68963),o=n(77280),i=n(17176),a=n(88776),s=n(44920),l=n(72644),c=n(12913);const u=(0,n(36951).Ge)("popover"),d=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];switch(e){case"special":return t?"normal-contrast":"flat-contrast";case"announcement":return t?"normal-contrast":"outlined";default:return t?"normal":"flat"}},f=e=>{let{theme:t,tooltipActionButton:n,tooltipCancelButton:o}=e;return n||o?r.createElement("div",{className:u("tooltip-buttons")},n&&r.createElement(i.z,{view:d(t,!0),width:"max",onClick:n.onClick,className:u("tooltip-button")},n.text),o&&r.createElement(i.z,{view:d(t,!1),width:"max",onClick:o.onClick,className:u("tooltip-button")},o.text)):null},p=e=>{let{secondary:t,htmlContent:n,content:o,className:i}=e;return n||o?n?r.createElement("div",{className:u("tooltip-content",{secondary:t},i),dangerouslySetInnerHTML:{__html:n}}):o?r.createElement("div",{className:u("tooltip-content",{secondary:t},i)},o):null:null};var h=n(86017);const m=e=>{let{links:t}=e;return 0===t.length?null:r.createElement("div",{className:u("tooltip-links")},t.map(((e,t)=>{const{text:n,href:o,target:i="_blank",onClick:a}=e;return r.createElement(r.Fragment,{key:"link-".concat(t)},r.createElement(h.r,{href:o,target:i,onClick:a,className:u("tooltip-link")},n),r.createElement("br",null))})))};var g=n(68512);const v=e=>{let{open:t,openOnHover:n,disabled:o,className:i,openTooltip:a,closeTooltip:s,closedManually:l,onClick:c,children:u}=e;const d=async e=>{if(o||t&&n)return;if(!(!c||await c(e)))return;t?(s(),l.current=!0):(a(),l.current=!1)},{onKeyDown:f}=(0,g.b)(d);return"function"===typeof u?r.createElement(r.Fragment,null,u({onClick:d,onKeyDown:f,open:t})):r.createElement("div",{className:i,onClick:d,onKeyDown:c?f:void 0},u)};var y=n(10502);const b=e=>{let{initialOpen:t,disabled:n,autoclosable:o,onOpenChange:i,delayOpening:a,delayClosing:s,behavior:l,shouldBeOpen:c}=e;const u=r.useRef(null),d=r.useRef(null),[f,p]=r.useState(t),h=r.useCallback((()=>{u.current&&(clearTimeout(u.current),u.current=null)}),[]),m=r.useCallback((()=>{d.current&&(clearTimeout(d.current),d.current=null)}),[]);r.useEffect((()=>()=>{h(),m()}),[m,h]);const g=r.useCallback((e=>{p(e),c.current=e,null===i||void 0===i||i(e)}),[i,c]),v=r.useCallback((()=>{h(),g(!0)}),[g,h]),b=r.useCallback((()=>{m(),g(!1)}),[g,m]);r.useEffect((()=>{n&&b()}),[n,b]),((e,t)=>{const n=r.useRef(!0);r.useEffect((()=>{n.current?n.current=!1:e()}),t)})((()=>{o&&!c.current&&b()}),[o,b,c]);const[w,_]=y.q[l],E=r.useCallback((()=>{u.current=setTimeout((()=>{u.current=null,v()}),null!==a&&void 0!==a?a:w)}),[w,a,v]),x=r.useCallback((()=>{d.current=setTimeout((()=>{d.current=null,b()}),null!==s&&void 0!==s?s:_)}),[b,_,s]);return{isOpen:f,closingTimeout:d,openTooltip:v,openTooltipDelayed:E,unsetOpeningTimeout:h,closeTooltip:b,closeTooltipDelayed:x,unsetClosingTimeout:m}},w=r.forwardRef((function(e,t){let{initialOpen:n=!1,disabled:d=!1,autoclosable:h=!0,openOnHover:g=!0,delayOpening:w,delayClosing:_,behavior:E=y.x.Delayed,placement:x,offset:S={},tooltipOffset:C,tooltipClassName:k,tooltipContentClassName:O,theme:T="info",size:N="s",hasArrow:I=!0,hasClose:P=!1,className:R,children:D,title:A,content:j,htmlContent:M,contentClassName:L,links:z,forceLinksAppearance:F=!1,tooltipActionButton:B,tooltipCancelButton:U,onOpenChange:q,onCloseClick:Z,onClick:H,anchorRef:W,strategy:V,qa:G,disablePortal:$=!1,tooltipId:K,focusTrap:Y,autoFocus:Q,restoreFocusRef:J,modifiers:X}=e;const ee=(0,l.g)(),te=r.useRef(null),ne=r.useRef(!1),re=r.useRef(n),{isOpen:oe,closingTimeout:ie,openTooltip:ae,openTooltipDelayed:se,unsetOpeningTimeout:le,closeTooltip:ce,closeTooltipDelayed:ue,unsetClosingTimeout:de}=b({initialOpen:n,disabled:d,autoclosable:h,onOpenChange:q,delayOpening:w,delayClosing:_,behavior:E,shouldBeOpen:re}),fe=r.useMemo((()=>x||("rtl"===ee?["left","bottom"]:["right","bottom"])),[ee,x]);r.useImperativeHandle(t,(()=>({openTooltip:ae,closeTooltip:ce})),[ae,ce]);const pe=Boolean(A),he=r.createElement(s.G,{id:K,role:g?"tooltip":"dialog",strategy:V,anchorRef:W||te,className:u("tooltip",{theme:T,size:N,"with-close":P,"force-links-appearance":F},k),contentClassName:u("tooltip-popup-content",O),open:oe,placement:fe,hasArrow:I,offset:C,onClose:W?void 0:ce,qa:G?"".concat(G,"-tooltip"):"",disablePortal:$,focusTrap:Y,autoFocus:Q,restoreFocus:!0,restoreFocusRef:J||te,modifiers:X},r.createElement(r.Fragment,null,A&&r.createElement("h3",{className:u("tooltip-title")},A),r.createElement(p,{secondary:!!pe&&"announcement"!==T,content:j,htmlContent:M,className:L}),z&&r.createElement(m,{links:z}),r.createElement(f,{theme:T,tooltipActionButton:B,tooltipCancelButton:U}),P&&r.createElement("div",{className:u("tooltip-close")},r.createElement(i.z,{size:"s",view:"flat-secondary",onClick:async e=>{ce(),null===Z||void 0===Z||Z(e)},extraProps:{"aria-label":"Close"}},r.createElement(a.J,{data:o.Z,size:16})))));if(W)return he;const me=()=>{de(),oe||d||ne.current?re.current=!0:se()},ge=()=>{!h||ne.current||ie.current?re.current=!1:(le(),ue()),ne.current=!1};return!S||"number"!==typeof S.top&&"number"!==typeof S.left||(0,c.O)('[Popover] Physical names (top, left) of "offset" property are deprecated. Use logical names (block, inline) instead.'),r.createElement("div",{ref:te,className:u({disabled:d},R),onMouseEnter:g?me:void 0,onMouseLeave:g?ge:void 0,onFocus:g?me:void 0,onBlur:g?ge:void 0,style:{top:S.top,left:S.left,insetBlockStart:S.block,insetInlineStart:S.inline},"data-qa":G},r.createElement(v,{closeTooltip:ce,openTooltip:ae,open:oe,openOnHover:g,className:u("handler"),disabled:d,onClick:H,closedManually:ne},D),he)}));w.displayName="Popover"},10502:(e,t,n)=>{"use strict";var r;n.d(t,{q:()=>o,x:()=>r}),function(e){e.Immediate="immediate",e.Delayed="delayed",e.DelayedClosing="delayedClosing"}(r||(r={}));const o={[r.Immediate]:[0,0],[r.Delayed]:[300,300],[r.DelayedClosing]:[0,300]}},44920:(e,t,n)=>{"use strict";n.d(t,{G:()=>Ze});var r=n(68963),o=n(62685),i=n(48027),a=n(38886);function s(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function l(e){return e instanceof s(e).Element||e instanceof Element}function c(e){return e instanceof s(e).HTMLElement||e instanceof HTMLElement}function u(e){return"undefined"!==typeof ShadowRoot&&(e instanceof s(e).ShadowRoot||e instanceof ShadowRoot)}var d=Math.max,f=Math.min,p=Math.round;function h(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function m(){return!/^((?!chrome|android).)*safari/i.test(h())}function g(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!1);var r=e.getBoundingClientRect(),o=1,i=1;t&&c(e)&&(o=e.offsetWidth>0&&p(r.width)/e.offsetWidth||1,i=e.offsetHeight>0&&p(r.height)/e.offsetHeight||1);var a=(l(e)?s(e):window).visualViewport,u=!m()&&n,d=(r.left+(u&&a?a.offsetLeft:0))/o,f=(r.top+(u&&a?a.offsetTop:0))/i,h=r.width/o,g=r.height/i;return{width:h,height:g,top:f,right:d+h,bottom:f+g,left:d,x:d,y:f}}function v(e){var t=s(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function y(e){return e?(e.nodeName||"").toLowerCase():null}function b(e){return((l(e)?e.ownerDocument:e.document)||window.document).documentElement}function w(e){return g(b(e)).left+v(e).scrollLeft}function _(e){return s(e).getComputedStyle(e)}function E(e){var t=_(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function x(e,t,n){void 0===n&&(n=!1);var r=c(t),o=c(t)&&function(e){var t=e.getBoundingClientRect(),n=p(t.width)/e.offsetWidth||1,r=p(t.height)/e.offsetHeight||1;return 1!==n||1!==r}(t),i=b(t),a=g(e,o,n),l={scrollLeft:0,scrollTop:0},u={x:0,y:0};return(r||!r&&!n)&&(("body"!==y(t)||E(i))&&(l=function(e){return e!==s(e)&&c(e)?{scrollLeft:(t=e).scrollLeft,scrollTop:t.scrollTop}:v(e);var t}(t)),c(t)?((u=g(t,!0)).x+=t.clientLeft,u.y+=t.clientTop):i&&(u.x=w(i))),{x:a.left+l.scrollLeft-u.x,y:a.top+l.scrollTop-u.y,width:a.width,height:a.height}}function S(e){var t=g(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function C(e){return"html"===y(e)?e:e.assignedSlot||e.parentNode||(u(e)?e.host:null)||b(e)}function k(e){return["html","body","#document"].indexOf(y(e))>=0?e.ownerDocument.body:c(e)&&E(e)?e:k(C(e))}function O(e,t){var n;void 0===t&&(t=[]);var r=k(e),o=r===(null==(n=e.ownerDocument)?void 0:n.body),i=s(r),a=o?[i].concat(i.visualViewport||[],E(r)?r:[]):r,l=t.concat(a);return o?l:l.concat(O(C(a)))}function T(e){return["table","td","th"].indexOf(y(e))>=0}function N(e){return c(e)&&"fixed"!==_(e).position?e.offsetParent:null}function I(e){for(var t=s(e),n=N(e);n&&T(n)&&"static"===_(n).position;)n=N(n);return n&&("html"===y(n)||"body"===y(n)&&"static"===_(n).position)?t:n||function(e){var t=/firefox/i.test(h());if(/Trident/i.test(h())&&c(e)&&"fixed"===_(e).position)return null;var n=C(e);for(u(n)&&(n=n.host);c(n)&&["html","body"].indexOf(y(n))<0;){var r=_(n);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||t&&"filter"===r.willChange||t&&r.filter&&"none"!==r.filter)return n;n=n.parentNode}return null}(e)||t}var P="top",R="bottom",D="right",A="left",j="auto",M=[P,R,D,A],L="start",z="end",F="clippingParents",B="viewport",U="popper",q="reference",Z=M.reduce((function(e,t){return e.concat([t+"-"+L,t+"-"+z])}),[]),H=[].concat(M,[j]).reduce((function(e,t){return e.concat([t,t+"-"+L,t+"-"+z])}),[]),W=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function V(e){var t=new Map,n=new Set,r=[];function o(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&o(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||o(e)})),r}function G(e){var t;return function(){return t||(t=new Promise((function(n){Promise.resolve().then((function(){t=void 0,n(e())}))}))),t}}var $={placement:"bottom",modifiers:[],strategy:"absolute"};function K(){for(var e=arguments.length,t=new Array(e),n=0;n=0?"x":"y"}function te(e){var t,n=e.reference,r=e.element,o=e.placement,i=o?J(o):null,a=o?X(o):null,s=n.x+n.width/2-r.width/2,l=n.y+n.height/2-r.height/2;switch(i){case P:t={x:s,y:n.y-r.height};break;case R:t={x:s,y:n.y+n.height};break;case D:t={x:n.x+n.width,y:l};break;case A:t={x:n.x-r.width,y:l};break;default:t={x:n.x,y:n.y}}var c=i?ee(i):null;if(null!=c){var u="y"===c?"height":"width";switch(a){case L:t[c]=t[c]-(n[u]/2-r[u]/2);break;case z:t[c]=t[c]+(n[u]/2-r[u]/2)}}return t}var ne={top:"auto",right:"auto",bottom:"auto",left:"auto"};function re(e){var t,n=e.popper,r=e.popperRect,o=e.placement,i=e.variation,a=e.offsets,l=e.position,c=e.gpuAcceleration,u=e.adaptive,d=e.roundOffsets,f=e.isFixed,h=a.x,m=void 0===h?0:h,g=a.y,v=void 0===g?0:g,y="function"===typeof d?d({x:m,y:v}):{x:m,y:v};m=y.x,v=y.y;var w=a.hasOwnProperty("x"),E=a.hasOwnProperty("y"),x=A,S=P,C=window;if(u){var k=I(n),O="clientHeight",T="clientWidth";if(k===s(n)&&"static"!==_(k=b(n)).position&&"absolute"===l&&(O="scrollHeight",T="scrollWidth"),o===P||(o===A||o===D)&&i===z)S=R,v-=(f&&k===C&&C.visualViewport?C.visualViewport.height:k[O])-r.height,v*=c?1:-1;if(o===A||(o===P||o===R)&&i===z)x=D,m-=(f&&k===C&&C.visualViewport?C.visualViewport.width:k[T])-r.width,m*=c?1:-1}var N,j=Object.assign({position:l},u&&ne),M=!0===d?function(e,t){var n=e.x,r=e.y,o=t.devicePixelRatio||1;return{x:p(n*o)/o||0,y:p(r*o)/o||0}}({x:m,y:v},s(n)):{x:m,y:v};return m=M.x,v=M.y,c?Object.assign({},j,((N={})[S]=E?"0":"",N[x]=w?"0":"",N.transform=(C.devicePixelRatio||1)<=1?"translate("+m+"px, "+v+"px)":"translate3d("+m+"px, "+v+"px, 0)",N)):Object.assign({},j,((t={})[S]=E?v+"px":"",t[x]=w?m+"px":"",t.transform="",t))}const oe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.offset,i=void 0===o?[0,0]:o,a=H.reduce((function(e,n){return e[n]=function(e,t,n){var r=J(e),o=[A,P].indexOf(r)>=0?-1:1,i="function"===typeof n?n(Object.assign({},t,{placement:e})):n,a=i[0],s=i[1];return a=a||0,s=(s||0)*o,[A,D].indexOf(r)>=0?{x:s,y:a}:{x:a,y:s}}(n,t.rects,i),e}),{}),s=a[t.placement],l=s.x,c=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=c),t.modifiersData[r]=a}};var ie={left:"right",right:"left",bottom:"top",top:"bottom"};function ae(e){return e.replace(/left|right|bottom|top/g,(function(e){return ie[e]}))}var se={start:"end",end:"start"};function le(e){return e.replace(/start|end/g,(function(e){return se[e]}))}function ce(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&u(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function ue(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function de(e,t,n){return t===B?ue(function(e,t){var n=s(e),r=b(e),o=n.visualViewport,i=r.clientWidth,a=r.clientHeight,l=0,c=0;if(o){i=o.width,a=o.height;var u=m();(u||!u&&"fixed"===t)&&(l=o.offsetLeft,c=o.offsetTop)}return{width:i,height:a,x:l+w(e),y:c}}(e,n)):l(t)?function(e,t){var n=g(e,!1,"fixed"===t);return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}(t,n):ue(function(e){var t,n=b(e),r=v(e),o=null==(t=e.ownerDocument)?void 0:t.body,i=d(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),a=d(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),s=-r.scrollLeft+w(e),l=-r.scrollTop;return"rtl"===_(o||n).direction&&(s+=d(n.clientWidth,o?o.clientWidth:0)-i),{width:i,height:a,x:s,y:l}}(b(e)))}function fe(e,t,n,r){var o="clippingParents"===t?function(e){var t=O(C(e)),n=["absolute","fixed"].indexOf(_(e).position)>=0&&c(e)?I(e):e;return l(n)?t.filter((function(e){return l(e)&&ce(e,n)&&"body"!==y(e)})):[]}(e):[].concat(t),i=[].concat(o,[n]),a=i[0],s=i.reduce((function(t,n){var o=de(e,n,r);return t.top=d(o.top,t.top),t.right=f(o.right,t.right),t.bottom=f(o.bottom,t.bottom),t.left=d(o.left,t.left),t}),de(e,a,r));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function pe(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function he(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}function me(e,t){void 0===t&&(t={});var n=t,r=n.placement,o=void 0===r?e.placement:r,i=n.strategy,a=void 0===i?e.strategy:i,s=n.boundary,c=void 0===s?F:s,u=n.rootBoundary,d=void 0===u?B:u,f=n.elementContext,p=void 0===f?U:f,h=n.altBoundary,m=void 0!==h&&h,v=n.padding,y=void 0===v?0:v,w=pe("number"!==typeof y?y:he(y,M)),_=p===U?q:U,E=e.rects.popper,x=e.elements[m?_:p],S=fe(l(x)?x:x.contextElement||b(e.elements.popper),c,d,a),C=g(e.elements.reference),k=te({reference:C,element:E,strategy:"absolute",placement:o}),O=ue(Object.assign({},E,k)),T=p===U?O:C,N={top:S.top-T.top+w.top,bottom:T.bottom-S.bottom+w.bottom,left:S.left-T.left+w.left,right:T.right-S.right+w.right},I=e.modifiersData.offset;if(p===U&&I){var A=I[o];Object.keys(N).forEach((function(e){var t=[D,R].indexOf(e)>=0?1:-1,n=[P,R].indexOf(e)>=0?"y":"x";N[e]+=A[n]*t}))}return N}const ge={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var o=n.mainAxis,i=void 0===o||o,a=n.altAxis,s=void 0===a||a,l=n.fallbackPlacements,c=n.padding,u=n.boundary,d=n.rootBoundary,f=n.altBoundary,p=n.flipVariations,h=void 0===p||p,m=n.allowedAutoPlacements,g=t.options.placement,v=J(g),y=l||(v===g||!h?[ae(g)]:function(e){if(J(e)===j)return[];var t=ae(e);return[le(e),t,le(t)]}(g)),b=[g].concat(y).reduce((function(e,n){return e.concat(J(n)===j?function(e,t){void 0===t&&(t={});var n=t,r=n.placement,o=n.boundary,i=n.rootBoundary,a=n.padding,s=n.flipVariations,l=n.allowedAutoPlacements,c=void 0===l?H:l,u=X(r),d=u?s?Z:Z.filter((function(e){return X(e)===u})):M,f=d.filter((function(e){return c.indexOf(e)>=0}));0===f.length&&(f=d);var p=f.reduce((function(t,n){return t[n]=me(e,{placement:n,boundary:o,rootBoundary:i,padding:a})[J(n)],t}),{});return Object.keys(p).sort((function(e,t){return p[e]-p[t]}))}(t,{placement:n,boundary:u,rootBoundary:d,padding:c,flipVariations:h,allowedAutoPlacements:m}):n)}),[]),w=t.rects.reference,_=t.rects.popper,E=new Map,x=!0,S=b[0],C=0;C=0,I=N?"width":"height",z=me(t,{placement:k,boundary:u,rootBoundary:d,altBoundary:f,padding:c}),F=N?T?D:A:T?R:P;w[I]>_[I]&&(F=ae(F));var B=ae(F),U=[];if(i&&U.push(z[O]<=0),s&&U.push(z[F]<=0,z[B]<=0),U.every((function(e){return e}))){S=k,x=!1;break}E.set(k,U)}if(x)for(var q=function(e){var t=b.find((function(t){var n=E.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return S=t,"break"},W=h?3:1;W>0;W--){if("break"===q(W))break}t.placement!==S&&(t.modifiersData[r]._skip=!0,t.placement=S,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function ve(e,t,n){return d(e,f(t,n))}const ye={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.mainAxis,i=void 0===o||o,a=n.altAxis,s=void 0!==a&&a,l=n.boundary,c=n.rootBoundary,u=n.altBoundary,p=n.padding,h=n.tether,m=void 0===h||h,g=n.tetherOffset,v=void 0===g?0:g,y=me(t,{boundary:l,rootBoundary:c,padding:p,altBoundary:u}),b=J(t.placement),w=X(t.placement),_=!w,E=ee(b),x="x"===E?"y":"x",C=t.modifiersData.popperOffsets,k=t.rects.reference,O=t.rects.popper,T="function"===typeof v?v(Object.assign({},t.rects,{placement:t.placement})):v,N="number"===typeof T?{mainAxis:T,altAxis:T}:Object.assign({mainAxis:0,altAxis:0},T),j=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,M={x:0,y:0};if(C){if(i){var z,F="y"===E?P:A,B="y"===E?R:D,U="y"===E?"height":"width",q=C[E],Z=q+y[F],H=q-y[B],W=m?-O[U]/2:0,V=w===L?k[U]:O[U],G=w===L?-O[U]:-k[U],$=t.elements.arrow,K=m&&$?S($):{width:0,height:0},Y=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},Q=Y[F],te=Y[B],ne=ve(0,k[U],K[U]),re=_?k[U]/2-W-ne-Q-N.mainAxis:V-ne-Q-N.mainAxis,oe=_?-k[U]/2+W+ne+te+N.mainAxis:G+ne+te+N.mainAxis,ie=t.elements.arrow&&I(t.elements.arrow),ae=ie?"y"===E?ie.clientTop||0:ie.clientLeft||0:0,se=null!=(z=null==j?void 0:j[E])?z:0,le=q+oe-se,ce=ve(m?f(Z,q+re-se-ae):Z,q,m?d(H,le):H);C[E]=ce,M[E]=ce-q}if(s){var ue,de="x"===E?P:A,fe="x"===E?R:D,pe=C[x],he="y"===x?"height":"width",ge=pe+y[de],ye=pe-y[fe],be=-1!==[P,A].indexOf(b),we=null!=(ue=null==j?void 0:j[x])?ue:0,_e=be?ge:pe-k[he]-O[he]-we+N.altAxis,Ee=be?pe+k[he]+O[he]-we-N.altAxis:ye,xe=m&&be?function(e,t,n){var r=ve(e,t,n);return r>n?n:r}(_e,pe,Ee):ve(m?_e:ge,pe,m?Ee:ye);C[x]=xe,M[x]=xe-pe}t.modifiersData[r]=M}},requiresIfExists:["offset"]};var be=function(e,t){return pe("number"!==typeof(e="function"===typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:he(e,M))};const we={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,r=e.name,o=e.options,i=n.elements.arrow,a=n.modifiersData.popperOffsets,s=J(n.placement),l=ee(s),c=[A,D].indexOf(s)>=0?"height":"width";if(i&&a){var u=be(o.padding,n),d=S(i),f="y"===l?P:A,p="y"===l?R:D,h=n.rects.reference[c]+n.rects.reference[l]-a[l]-n.rects.popper[c],m=a[l]-n.rects.reference[l],g=I(i),v=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,y=h/2-m/2,b=u[f],w=v-d[c]-u[p],_=v/2-d[c]/2+y,E=ve(b,_,w),x=l;n.modifiersData[r]=((t={})[x]=E,t.centerOffset=E-_,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!==typeof r||(r=t.elements.popper.querySelector(r)))&&ce(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function _e(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function Ee(e){return[P,D,R,A].some((function(t){return e[t]>=0}))}var xe=Y({defaultModifiers:[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,n=e.instance,r=e.options,o=r.scroll,i=void 0===o||o,a=r.resize,l=void 0===a||a,c=s(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return i&&u.forEach((function(e){e.addEventListener("scroll",n.update,Q)})),l&&c.addEventListener("resize",n.update,Q),function(){i&&u.forEach((function(e){e.removeEventListener("scroll",n.update,Q)})),l&&c.removeEventListener("resize",n.update,Q)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=te({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=void 0===r||r,i=n.adaptive,a=void 0===i||i,s=n.roundOffsets,l=void 0===s||s,c={placement:J(t.placement),variation:X(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,re(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,re(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}},{name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},r=t.attributes[e]||{},o=t.elements[e];c(o)&&y(o)&&(Object.assign(o.style,n),Object.keys(r).forEach((function(e){var t=r[e];!1===t?o.removeAttribute(e):o.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var r=t.elements[e],o=t.attributes[e]||{},i=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});c(r)&&y(r)&&(Object.assign(r.style,i),Object.keys(o).forEach((function(e){r.removeAttribute(e)})))}))}},requires:["computeStyles"]},oe,ge,ye,we,{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,i=t.modifiersData.preventOverflow,a=me(t,{elementContext:"reference"}),s=me(t,{altBoundary:!0}),l=_e(a,r),c=_e(s,o,i),u=Ee(l),d=Ee(c);t.modifiersData[n]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:u,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}}]}),Se=n(77808),Ce=n.n(Se),ke=function(e){return e.reduce((function(e,t){var n=t[0],r=t[1];return e[n]=r,e}),{})},Oe="undefined"!==typeof window&&window.document&&window.document.createElement?r.useLayoutEffect:r.useEffect,Te=[],Ne=function(e,t,n){void 0===n&&(n={});var o=r.useRef(null),i={onFirstUpdate:n.onFirstUpdate,placement:n.placement||"bottom",strategy:n.strategy||"absolute",modifiers:n.modifiers||Te},s=r.useState({styles:{popper:{position:i.strategy,left:"0",top:"0"},arrow:{position:"absolute"}},attributes:{}}),l=s[0],c=s[1],u=r.useMemo((function(){return{name:"updateState",enabled:!0,phase:"write",fn:function(e){var t=e.state,n=Object.keys(t.elements);a.flushSync((function(){c({styles:ke(n.map((function(e){return[e,t.styles[e]||{}]}))),attributes:ke(n.map((function(e){return[e,t.attributes[e]]})))})}))},requires:["computeStyles"]}}),[]),d=r.useMemo((function(){var e={onFirstUpdate:i.onFirstUpdate,placement:i.placement,strategy:i.strategy,modifiers:[].concat(i.modifiers,[u,{name:"applyStyles",enabled:!1}])};return Ce()(o.current,e)?o.current||e:(o.current=e,e)}),[i.onFirstUpdate,i.placement,i.strategy,i.modifiers,u]),f=r.useRef();return Oe((function(){f.current&&f.current.setOptions(d)}),[d]),Oe((function(){if(null!=e&&null!=t){var r=(n.createPopper||xe)(e,t,d);return f.current=r,function(){r.destroy(),f.current=null}}}),[e,t,n.createPopper]),{state:f.current?f.current.state:null,styles:l.styles,attributes:l.attributes,update:f.current?f.current.update:null,forceUpdate:f.current?f.current.forceUpdate:null}},Ie=n(72644);const Pe=["bottom-start","bottom","bottom-end","top-start","top","top-end","right-start","right","right-end","left-start","left","left-end"],Re={name:"rtlOffsetFix",enabled:!0,phase:"main",requires:["offset"],fn(e){let{state:t}=e;var n;if(!t.placement.startsWith("top")&&!t.placement.startsWith("bottom"))return;const r=null===(n=t.modifiersData.offset)||void 0===n?void 0:n[t.placement];r&&(t.modifiersData.popperOffsets.x-=2*r.x)}};var De=n(95753),Ae=n(57107),je=n(89459),Me=n(36951),Le=n(3262),ze=n(31445);const Fe=(0,Me.Ge)("popup");function Be(e){let{styles:t,attributes:n,setArrowRef:o}=e;return r.createElement("div",Object.assign({"data-popper-arrow":!0,ref:o,className:Fe("arrow"),style:t},n),r.createElement("div",{className:Fe("arrow-content")},r.createElement("div",{className:Fe("arrow-circle-wrapper")},r.createElement("div",{className:Fe("arrow-circle",{left:!0})})),r.createElement("div",{className:Fe("arrow-circle-wrapper")},r.createElement("div",{className:Fe("arrow-circle",{right:!0})}))))}const Ue=(0,Me.Ge)("popup"),qe=8;function Ze(e){let{keepMounted:t=!1,hasArrow:n=!1,offset:a=[0,4],open:s,placement:l,anchorRef:c,disableEscapeKeyDown:u,disableOutsideClick:d,disableLayer:f,style:p,className:h,contentClassName:m,modifiers:g=[],children:v,onEscapeKeyDown:y,onOutsideClick:b,onClose:w,onClick:_,onMouseEnter:E,onMouseLeave:x,onFocus:S,onBlur:C,onTransitionEnter:k,onTransitionEntered:O,onTransitionExit:T,onTransitionExited:N,disablePortal:I,container:P,strategy:R,qa:D,restoreFocus:A,restoreFocusRef:j,"aria-label":M,"aria-labelledby":L,role:z,id:F,focusTrap:B=!1,autoFocus:U=!1}=e;const q=r.useRef(null);(0,Le.s)({open:s,disableEscapeKeyDown:u,disableOutsideClick:d,onEscapeKeyDown:y,onOutsideClick:b,onClose:w,contentRefs:[c,q],enabled:!f,type:"popup"});const{attributes:Z,styles:H,setPopperRef:W,setArrowRef:V}=function(e){let{anchorRef:t,placement:n=Pe,offset:o,modifiers:i=[],strategy:a,altBoundary:s}=e;const[l,c]=r.useState(null),[u,d]=r.useState(null),f=(0,Ie.g)(),p=r.useMemo((()=>{let e=Array.isArray(n)?n:[n];return"rtl"===f&&(e=e.map((e=>e.replace(/(top|bottom)-(start|end)/g,((e,t,n)=>"start"===n?t+"-end":"end"===n?t+"-start":e))))),e}),[n,f]),{attributes:h,styles:m}=Ne(null===t||void 0===t?void 0:t.current,l,{strategy:a,modifiers:[{name:"arrow",options:{element:u}},{name:"offset",options:{offset:o,altBoundary:s}},{name:"flip",options:{fallbackPlacements:p.slice(1),altBoundary:s}},..."rtl"===f?[Re]:[],...i],placement:p[0]});return{attributes:h,styles:m,setPopperRef:c,setArrowRef:d}}({anchorRef:c,placement:l,offset:n?[a[0],a[1]+qe]:a,strategy:R,altBoundary:I,modifiers:[{name:"arrow",options:{enabled:n,padding:4}},{name:"preventOverflow",options:{padding:1,altBoundary:I}},...g]}),G=(0,i.c)(W,q,(0,je.e)()),$=(0,De.H)({enabled:Boolean(A&&s),restoreFocusRef:j});return r.createElement(o.Z,{nodeRef:q,in:s,addEndListener:e=>{var t;return null===(t=q.current)||void 0===t?void 0:t.addEventListener("animationend",e)},classNames:(0,ze.Y)(Ue),mountOnEnter:!t,unmountOnExit:!t,appear:!0,onEnter:()=>{null===k||void 0===k||k()},onEntered:()=>{null===O||void 0===O||O()},onExit:()=>{null===T||void 0===T||T()},onExited:()=>{null===N||void 0===N||N()}},r.createElement(Ae.h,{container:P,disablePortal:I},r.createElement("div",Object.assign({ref:G,style:H.popper},Z.popper,$,{className:Ue({open:s},h),"data-qa":D,id:F,role:z,"aria-label":M,"aria-labelledby":L}),r.createElement(je.i,{enabled:B&&s,disableAutoFocus:!U},r.createElement("div",{onClick:_,onMouseEnter:E,onMouseLeave:x,onFocus:S,onBlur:C,className:Ue("content",m),style:p,tabIndex:-1},n&&r.createElement(Be,{styles:H.arrow,attributes:Z.arrow,setArrowRef:V}),v)))))}},57107:(e,t,n)=>{"use strict";n.d(t,{h:()=>c});var r=n(68963),o=n(38886);const i=r.createContext({current:null});i.displayName="PortalContext";var a=n(78761),s=n(40797);const l=(0,n(36951).Ge)("portal");function c(e){let{container:t,children:n,disablePortal:c}=e;const u=function(){var e;const t=r.useContext(i);let n=null;return"object"===typeof window&&(n=window.document.body),null!==(e=t.current)&&void 0!==e?e:n}(),{scoped:d}=(0,s.T)(),f=null!==t&&void 0!==t?t:u;return c?r.createElement(r.Fragment,null,n):f?o.createPortal(d?r.createElement(a.f,{rootClassName:l("theme-wrapper"),scoped:!0},n):n,f):null}},79734:(e,t,n)=>{"use strict";n.d(t,{E:()=>y});var r=n(68963),o=n(89646),i=n(56407);const a=new Set(["id"]),s=new Set(["aria-label","aria-labelledby","aria-describedby","aria-details"]),l=/^(data-.*)$/;var c=n(92006);function u(e){var t,n;const{name:r,value:u,defaultValue:d,options:f=[],disabled:p,onUpdate:h,onChange:m,onFocus:g,onBlur:v}=e,y=(0,o.u)(),[b,w]=(0,i.z)(u,null!==(n=null!==d&&void 0!==d?d:null===(t=f[0])||void 0===t?void 0:t.value)&&void 0!==n?n:null,h),_=(0,c.q)({initialValue:b,onReset:w}),E=e=>{w(e.target.value),m&&m(e)},x=Object.assign(Object.assign({},function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{labelable:n,propNames:r}=t,o={};for(const i in e)Object.prototype.hasOwnProperty.call(e,i)&&(a.has(i)||n&&s.has(i)||(null===r||void 0===r?void 0:r.has(i))||l.test(i))&&(o[i]=e[i]);return o}(e,{labelable:!0})),{role:"radiogroup","aria-disabled":p});return{containerProps:x,optionsProps:f.map((e=>({name:r||y,value:e.value,content:e.content,title:e.title,checked:b===String(e.value),disabled:p||e.disabled,onChange:E,onFocus:g,onBlur:v,ref:_})))}}var d=n(36951),f=n(48027),p=n(93404);var h=n(99742);const m=(0,d.Ge)("radio-button"),g=r.forwardRef((function(e,t){const{disabled:n=!1,content:a,children:s,title:l}=e,{checked:u,inputProps:d}=function(e){let{name:t,value:n,checked:a,defaultChecked:s,disabled:l,controlRef:u,controlProps:d,onUpdate:h,onChange:m,onFocus:g,onBlur:v,id:y}=e;const b=(0,o.u)(),w=r.useRef(null),[_,E]=(0,i.z)(a,null!==s&&void 0!==s&&s,h),x=(0,c.q)({initialValue:_,onReset:E}),S=(0,f.c)(u,w,x);return{checked:_,inputProps:Object.assign(Object.assign({},d),{name:t||b,value:n,id:y,onFocus:g,onBlur:v,disabled:l,type:"radio",onChange:e=>{E(e.target.checked),m&&m(e)},onChangeCapture:e=>{p.P.publish({componentId:"Radio",eventId:"click",domEvent:e})},checked:a,defaultChecked:s,"aria-checked":_,ref:S})}}(e),g=a||s,v=(0,h.yb)(g)||(0,h.Dc)(g);return r.createElement("label",{className:m("option",{disabled:n,checked:u}),ref:t,title:l},r.createElement("input",Object.assign({},d,{className:m("option-control")})),r.createElement("span",{className:m("option-outline")}),g&&r.createElement("span",{className:m("option-text",{icon:v})},g))})),v=(0,d.Ge)("radio-button"),y=r.forwardRef((function(e,t){const{size:n="m",width:o,style:i,className:a,qa:s,children:l}=e;let c=e.options;c||(c=r.Children.toArray(l).map((e=>{let{props:t}=e;return{value:t.value,content:t.content||t.children,disabled:t.disabled,title:t.title}})));const d=r.useRef(null),f=r.useRef(),p=r.useCallback((e=>{if(!e)return;const t=d.current;if(!t)return;const n=f.current;if(n&&n!==e){const r=e=>{t.style.left="".concat(e.offsetLeft,"px"),t.style.width="".concat(e.offsetWidth,"px")};r(n),t.hidden=!1,r(e)}f.current=e}),[]),{containerProps:h,optionsProps:m}=u(Object.assign(Object.assign({},e),{options:c}));return r.createElement("div",Object.assign({},h,{ref:t,style:i,className:v({size:n,width:o},a),"data-qa":s}),r.createElement("div",{ref:d,className:v("plate"),onTransitionEnd:e=>{e.currentTarget.hidden=!0},hidden:!0}),m.map((e=>r.createElement(g,Object.assign({},e,{key:e.value,ref:e.checked?p:void 0})))))}));y.Option=g},8179:(e,t,n)=>{"use strict";n.d(t,{m:()=>p});var r=n(68963),o=n(36951);const i=r.createContext({activeTabId:void 0});i.displayName="TabsContext";var a=n(14979);const s=(0,o.Ge)("tabs");function l(e){let{id:t,className:n,title:o,meta:l,hint:c,icon:u,counter:d,label:f,active:p,disabled:h,hasOverflow:m,extraProps:g,onClick:v}=e;const{activeTabId:y}=r.useContext(i),b="boolean"===typeof p?p:y===t,w=r.useMemo((()=>void 0!==c?c:"string"===typeof o?o:void 0),[c,o]);return r.createElement("div",Object.assign({},g,{role:"tab","aria-selected":b,"aria-disabled":!0===h,tabIndex:h?-1:0,className:s("item",{active:b,disabled:h,overflow:Boolean(m)},n),title:w,onClick:()=>{v(t)},onKeyDown:e=>{" "===e.key&&v(t)}}),r.createElement("div",{className:s("item-content")},u&&r.createElement("div",{className:s("item-icon")},u),r.createElement("div",{className:s("item-title")},o||t),"number"===typeof d&&r.createElement("div",{className:s("item-counter")},d),f&&r.createElement(a._,{className:s("item-label"),theme:f.theme},f.content)),l&&r.createElement("div",{className:s("item-meta")},l))}l.displayName="Tabs.Item";const c=(0,o.Ge)("tabs");var u;!function(e){e.Horizontal="horizontal",e.Vertical="vertical"}(u||(u={}));const d=[],f=r.forwardRef(((e,t)=>{let{direction:n=u.Horizontal,size:o="m",activeTab:a,allowNotSelected:s=!1,items:f=d,children:p,className:h,onSelectTab:m,wrapTo:g,qa:v}=e;const y=((e,t,n)=>{var r;return e||(t||0===(null===n||void 0===n?void 0:n.length)||null===(r=null===n||void 0===n?void 0:n[0])||void 0===r?void 0:r.id)})(a,s,f),b=r.useMemo((()=>({activeTabId:y})),[y]),w=r.useMemo((()=>{const e=e=>{m&&m(e)};return f.map(((t,n)=>{const o=r.createElement(l,Object.assign({key:t.id},t,{onClick:e}));return g?g(t,o,n):o}))}),[f,m,g]);return r.createElement("div",{role:"tablist",className:c({direction:n,size:o},h),"data-qa":v,ref:t},r.createElement(i.Provider,{value:b},p||w))}));f.displayName="Tabs";const p=Object.assign(f,{Item:l})},10288:(e,t,n)=>{"use strict";n.d(t,{x:()=>l});var r=n(95097),o=n(68963),i=n(39137);const a=(0,n(36951).Ge)("text"),s=(e,t)=>{let{variant:n="body-1",ellipsis:r,ellipsisLines:o,whiteSpace:i,wordBreak:s}=e;return a({variant:n,ellipsis:r,ws:i,wb:s,"ellipsis-lines":o},t)},l=o.forwardRef((function(e,t){var{as:n,children:a,variant:l,className:c,ellipsis:u,color:d,whiteSpace:f,wordBreak:p,ellipsisLines:h,style:m,qa:g}=e,v=(0,r._T)(e,["as","children","variant","className","ellipsis","color","whiteSpace","wordBreak","ellipsisLines","style","qa"]);const y=n||"span",b=Object.assign({},m);return"number"===typeof h&&(b.WebkitLineClamp=h),o.createElement(y,Object.assign({ref:t,className:s({variant:l,ellipsis:u,whiteSpace:f,wordBreak:p,ellipsisLines:"number"===typeof h},d?(0,i.V)({color:d},c):c),style:b,"data-qa":g},v),a)}));l.displayName="Text"},39137:(e,t,n)=>{"use strict";n.d(t,{V:()=>o});const r=(0,n(36951).Ge)("color-text"),o=(e,t)=>{let{color:n}=e;return r({color:n},t)}},77264:(e,t,n)=>{"use strict";n.d(t,{o:()=>j});var r=n(68963),o=n(93316),i=n(56407),a=n(48027),s=n(89646),l=n(92006),c=n(54466),u=n.n(c),d=n(43832),f=n.n(d);const p=16,h=2;function m(e,t){const[n,o]=r.useState({width:0,height:0});return r.useLayoutEffect((()=>{if(!(null===e||void 0===e?void 0:e.current))return;const t=new ResizeObserver(f()((e=>{if(!Array.isArray(e))return;const t=e[0];if(t.borderBoxSize){const e=t.borderBoxSize[0]?t.borderBoxSize[0]:t.borderBoxSize;o({width:u()(e.inlineSize,h),height:u()(e.blockSize,h)})}else{const e=t.target;o({width:u()(e.offsetWidth,h),height:u()(e.offsetHeight,h)})}}),p));return t.observe(e.current),()=>{t.disconnect()}}),[e,t]),n}var g=n(88776),v=n(68330),y=n(36951),b=n(77280),w=n(17176),_=n(54973);const E=JSON.parse('{"label_clear-button":"Clear"}'),x=JSON.parse('{"label_clear-button":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c"}'),S=(0,_.e)({en:E,ru:x},"".concat(y.A7,"clear-button")),C=(0,y.Ge)("clear-button"),k=e=>{switch(e){case"s":return"xs";case"m":return"s";case"l":return"m";case"xl":return"l";default:throw new Error('Unknown text input size "'.concat(e,'"'))}},O=e=>{const{size:t,className:n,onClick:o}=e;return r.createElement(w.z,{size:t,className:C(null,n),onClick:o,extraProps:{onMouseDown:e=>{e.preventDefault()},"aria-label":S("label_clear-button")}},r.createElement(g.J,{data:b.Z,size:16}))};var T=n(85636),N=n(97908);const I=(0,y.Ge)("text-input"),P=r.forwardRef((function(e,t){let{placement:n,children:o,onClick:i}=e;return o?r.createElement("div",{ref:t,className:I("additional-content",{placement:n}),onClick:i},o):null})),R=(0,y.Ge)("text-input");function D(e){const{controlProps:t,controlRef:n,type:o,name:i,id:a,tabIndex:s,autoComplete:l,placeholder:c,value:u,defaultValue:d,autoFocus:f,disabled:p,onChange:h,onFocus:m,onBlur:g,onKeyDown:v,onKeyUp:y,onKeyPress:b}=e;return r.createElement("input",Object.assign({},t,{ref:n,className:R("control",{type:"input"},t.className),type:o,name:i,id:a,tabIndex:s,placeholder:c,value:u,defaultValue:d,autoFocus:f,autoComplete:l,onChange:h,onFocus:m,onBlur:g,onKeyDown:v,onKeyUp:y,onKeyPress:b,disabled:null!==p&&void 0!==p?p:t.disabled}))}const A=(0,y.Ge)("text-input"),j=r.forwardRef((function(e,t){const{view:n="normal",size:c="m",pin:u="round-round",name:d,value:f,defaultValue:p,label:h,disabled:y=!1,hasClear:b=!1,error:w,errorMessage:_,errorPlacement:E="outside",validationState:x,autoComplete:S,id:C,tabIndex:I,style:R,className:j,qa:M,controlProps:L,leftContent:z,rightContent:F,startContent:B=z,endContent:U=F,note:q,onUpdate:Z,onChange:H}=e,{errorMessage:W,errorPlacement:V,validationState:G}=(0,N.II)({error:w,errorMessage:_,errorPlacement:E,validationState:x}),[$,K]=(0,i.z)(f,null!==p&&void 0!==p?p:"",Z),Y=r.useRef(null),Q=(0,l.q)({initialValue:$,onReset:K}),J=(0,a.c)(e.controlRef,Y,Q),X=r.useRef(null),ee=r.useRef(null),te=(0,N.O_)(G),ne=Boolean(h),re="invalid"===G&&Boolean(W)&&"outside"===V,oe="invalid"===G&&Boolean(W)&&"inside"===V,ie=Boolean(b&&!y&&$),ae=Boolean(B),se=Boolean(U),le=ne&&!C&&!d&&"undefined"===typeof S,ce=(0,s.u)(),ue=ne?C||ce:C,de=m(ne?X:null,c),fe=m(ae?ee:null,c),pe=(0,s.u)(),he=(0,s.u)(),me=[null===L||void 0===L?void 0:L["aria-describedby"],q?he:void 0,re?pe:void 0].filter(Boolean).join(" "),ge=Object.assign(Object.assign({},L),{style:Object.assign(Object.assign({},null===L||void 0===L?void 0:L.style),ne&&de.width?{paddingInlineStart:"".concat(de.width,"px")}:{}),"aria-invalid":"invalid"===G||void 0,"aria-describedby":me||void 0}),ve={id:ue,tabIndex:I,name:d,onChange(e){K(e.target.value),H&&H(e)},autoComplete:le?"off":(0,N.xp)(S),controlProps:ge},ye=e=>{var t,n;const r=!e.currentTarget.contains(document.activeElement)&&e.currentTarget.contains(e.target),o=Boolean(null===(t=document.getSelection())||void 0===t?void 0:t.toString());r&&!o&&(null===(n=Y.current)||void 0===n||n.focus())};return r.createElement("span",{ref:t,style:R,className:A({view:n,size:c,disabled:y,state:te,pin:"clear"===n?void 0:u,"has-clear":ie,"has-start-content":ae,"has-end-content":ie||se},j),"data-qa":M},r.createElement("span",{className:A("content")},ae&&r.createElement(P,{ref:ee,placement:"start",onClick:ye},B),ne&&r.createElement("label",{ref:X,style:{insetInlineStart:ae?fe.width:void 0,maxWidth:"calc(50% - ".concat(fe.width,"px)")},className:A("label"),title:h,htmlFor:ue},"".concat(h)),r.createElement(D,Object.assign({},e,ve,{controlRef:J})),ie&&r.createElement(O,{size:k(c),onClick:e=>{K("");const t=Y.current;if(t){const n=Object.create(e);n.target=t,n.currentTarget=t,t.value="",H&&H(n)}},className:A("clear",{size:c})}),se&&r.createElement(P,{placement:"end",onClick:ye},U),oe&&r.createElement(v.J,{content:W},r.createElement("span",{"data-qa":N.eP},r.createElement(g.J,{data:o.Z,className:A("error-icon"),size:"s"===c?12:16})))),r.createElement(T.Z,{note:q,errorMessage:re?W:null,noteId:he,errorMessageId:pe}))}))},85636:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(68963),o=n(36951),i=n(97908);const a=(0,o.Ge)("outer-additional-content"),s=e=>{let{errorMessage:t,note:n,noteId:o,errorMessageId:s}=e;return t||n?r.createElement("div",{className:a()},t&&r.createElement("div",{className:a("error"),id:s,"data-qa":i.fz},t),n&&r.createElement("div",{className:a("note"),id:o},n)):null}},97908:(e,t,n)=>{"use strict";n.d(t,{II:()=>s,O_:()=>a,eP:()=>o,fz:()=>r,xp:()=>i});const r="control-error-message-qa",o="control-error-icon-qa",i=e=>"boolean"===typeof e?e?"on":"off":e,a=e=>"invalid"===e?"error":void 0,s=e=>{const{error:t,errorMessage:n,errorPlacement:r,validationState:o}=e;let i,a;return"string"===typeof t&&(i=t),n&&(i=n),("invalid"===o||Boolean(t))&&(a="invalid"),{errorMessage:i,errorPlacement:r,validationState:a}}},28989:(e,t,n)=>{"use strict";n.d(t,{x:()=>l});var r=n(95097),o=n(68963),i=n(36951),a=n(95216);const s=(0,i.Ge)("box"),l=o.forwardRef((function(e,t){var{as:n,children:i,qa:l,className:c,width:u,height:d,minWidth:f,minHeight:p,maxHeight:h,maxWidth:m,position:g,style:v,spacing:y,overflow:b}=e,w=(0,r._T)(e,["as","children","qa","className","width","height","minWidth","minHeight","maxHeight","maxWidth","position","style","spacing","overflow"]);const _=n||"div",E=Object.assign({width:u,height:d,minWidth:f,minHeight:p,maxHeight:h,maxWidth:m,position:g},v);return o.createElement(_,Object.assign({},w,{"data-qa":l,style:E,ref:t,className:s({overflow:b},y?(0,a.sp)(y,c):c)}),i)}))},77796:(e,t,n)=>{"use strict";n.d(t,{k:()=>u});var r=n(95097),o=n(68963),i=n(36951),a=n(28989),s=n(35490),l=n(34293);const c=(0,i.Ge)("flex"),u=o.forwardRef((function(e,t){const{as:n,direction:i,grow:u,basis:d,children:f,style:p,alignContent:h,alignItems:m,alignSelf:g,justifyContent:v,justifyItems:y,justifySelf:b,shrink:w,wrap:_,inline:E,gap:x,gapRow:S,className:C,space:k,centerContent:O}=e,T=(0,r._T)(e,["as","direction","grow","basis","children","style","alignContent","alignItems","alignSelf","justifyContent","justifyItems","justifySelf","shrink","wrap","inline","gap","gapRow","className","space","centerContent"]),N=n||"div",{getClosestMediaProps:I,theme:{spaceBaseSize:P}}=(()=>{const{activeMediaQuery:e,theme:t}=o.useContext(s.V),{isMediaActive:n,getClosestMediaProps:r}=o.useMemo((()=>({isMediaActive:(0,l.ur)(e),getClosestMediaProps:(0,l.GD)(e)})),[e]);return{theme:t,activeMediaQuery:e,isMediaActive:n,getClosestMediaProps:r}})(),R=e=>"object"===typeof e&&null!==e?I(e):e,D=R(x),A=D?P*Number(D):void 0,j=R(S)||D,M=j?P*Number(j):void 0,L=R(k),z=x||S||!L?void 0:(0,l.cA)(L);return o.createElement(a.x,Object.assign({as:N,className:c({"center-content":O,inline:E,s:z},C),ref:t,style:Object.assign({flexDirection:R(i),flexGrow:!0===u?1:u,flexWrap:!0===_?"wrap":_,flexBasis:d,flexShrink:w,columnGap:A,rowGap:M,alignContent:R(h),alignItems:R(m),alignSelf:R(g),justifyContent:R(v),justifyItems:R(y),justifySelf:R(b)},p)},T),k?o.Children.map(f,(e=>e?o.createElement("div",{className:c("wr")},e):e)):f)}))},14399:(e,t,n)=>{"use strict";n.d(t,{A:()=>o,Q:()=>r});const r={.5:"half"},o={breakpoints:{s:576,m:768,l:1080,xl:1200,xxl:1400,xxxl:1920},spaceBaseSize:4,components:{container:{gutters:"3",media:{l:{gutters:"5"}}}}}},35490:(e,t,n)=>{"use strict";n.d(t,{V:()=>i});var r=n(68963),o=n(14399);const i=r.createContext({theme:o.A,activeMediaQuery:"s"})},95216:(e,t,n)=>{"use strict";n.d(t,{sp:()=>s,W:()=>a});var r=n(36951),o=n(34293);const i=(0,r.Ge)("s"),a=(e,t)=>{const n=[];for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)){const t=e[r];"undefined"!==typeof t&&n.push(i("".concat(r,"_").concat((0,o.cA)(t))))}return t&&n.push(t),n.join(" ")},s=a},34293:(e,t,n)=>{"use strict";n.d(t,{GD:()=>s,cA:()=>l,ur:()=>i});var r=n(14399);const o={s:0,m:1,l:2,xl:3,xxl:4,xxxl:5},i=e=>t=>e in o&&o[e]-o[t]>=0,a=["s","m","l","xl","xxl","xxxl"],s=e=>function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!e)return;let n=e;for(;n;){if(t[n])return t[n];n=a[o[n]-1]}},l=e=>e in r.Q?r.Q[e]:String(e)},84584:(e,t,n)=>{"use strict";n.d(t,{z:()=>i});var r=n(68963);const o={mobile:!1,platform:n(66573).t.BROWSER,useHistory:()=>({action:"",replace(){},push(){},goBack(){}}),useLocation:()=>({pathname:"",search:"",hash:""})},i=r.createContext(o)},66573:(e,t,n)=>{"use strict";n.d(t,{t:()=>r});var r,o=n(36951);!function(e){e.IOS="ios",e.ANDROID="android",e.BROWSER="browser"}(r||(r={}));(0,o.Ge)("root")({mobile:!0}).split(/\s+/)[1]},79805:(e,t,n)=>{"use strict";n.d(t,{X:()=>i});var r=n(68963),o=n(84584);function i(){return r.useContext(o.z).mobile}},57840:(e,t,n)=>{"use strict";n.d(t,{N:()=>r});const r=n(68963).createContext(void 0);r.displayName="ThemeContext"},78761:(e,t,n)=>{"use strict";n.d(t,{f:()=>O});var r=n(68963),o=n(35490);const i={media:"",matches:!1,onchange:()=>{},addListener:()=>{},removeListener:()=>{},addEventListener:()=>{},removeEventListener:()=>{},dispatchEvent:e=>!0},a=e=>"undefined"===typeof window||"function"!==typeof window.matchMedia?i:window.matchMedia(e);class s{constructor(e){this.queryListsDecl=[];const t={s:"(max-width: ".concat((n=e).m-1,"px)"),m:"(min-width: ".concat(n.m,"px) and (max-width: ").concat(n.l-1,"px)"),l:"(min-width: ".concat(n.l,"px) and (max-width: ").concat(n.xl-1,"px)"),xl:"(min-width: ".concat(n.xl,"px) and (max-width: ").concat(n.xxl-1,"px)"),xxl:"(min-width: ".concat(n.xxl,"px) and (max-width: ").concat(n.xxxl-1,"px)"),xxxl:"(min-width: ".concat(n.xxxl,"px)")};var n;this.queryListsDecl=[["s",a(t.s)],["m",a(t.m)],["l",a(t.l)],["xl",a(t.xl)],["xxl",a(t.xxl)],["xxxl",a(t.xxxl)]]}getCurrentActiveMedia(){const e=this.queryListsDecl.find((e=>{let[t,n]=e;return n.matches}));return e?e[0]:"s"}addListeners(e){this.queryListsDecl.forEach((t=>{let[n,r]=t;return r.addEventListener("change",e)}))}removeListeners(e){this.queryListsDecl.forEach((t=>{let[n,r]=t;return r.removeEventListener("change",e)}))}}const l=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"s";const[n,o]=r.useState(t);return r.useLayoutEffect((()=>{const t=new s(e),n=()=>{o(t.getCurrentActiveMedia())};return t.addListeners(n),n(),()=>{t.removeListeners(n)}}),[e]),n};var c=n(3186),u=n.n(c);function d(e){let{children:t,config:n,initialMediaQuery:i}=e;const a=r.useContext(o.V),s=r.useMemo((()=>function(e){let{theme:t,override:n}=e;return u()(t,n)}({theme:a.theme,override:n})),[n,a.theme]),c=l(s.breakpoints,i),d=r.useMemo((()=>({activeMediaQuery:c,theme:s})),[c,s]);return r.createElement(o.V.Provider,{value:d},t)}var f=n(36951),p=n(57840);const h=r.createContext(void 0);h.displayName="ThemeSettingsContext";const m="system",g="light",v="dark",y="root",b="ltr",w=(0,f.Ge)(y),_=w();function E(e){let{theme:t,nativeScrollbar:n=!1,className:r,prevClassName:o}=e;const i=document.body;if(i.classList.contains(_)||i.classList.add(_),o){o.split(" ").forEach((e=>{e&&i.classList.remove(e)}))}if(r){r.split(" ").forEach((e=>{e&&!i.classList.contains(e)&&i.classList.add(e)}))}[...i.classList].forEach((e=>{e.startsWith((0,f.Ui)(w({theme:!0})))&&i.classList.remove(e)})),i.classList.add((0,f.Ui)(w({theme:t})));const a={"native-scrollbar":n};for(const[s,l]of Object.entries(a))i.classList.toggle((0,f.Ui)(w({[s]:!0})),l)}const x="undefined"!==typeof window&&"function"===typeof window.matchMedia,S=()=>window.matchMedia("(prefers-color-scheme: dark)");function C(){const[e,t]=r.useState(x&&S().matches?"dark":"light");return r.useEffect((()=>{if(!x)return;const e=function(e,t){const n="function"!==typeof e.addEventListener;return n?e.addListener(t):e.addEventListener("change",t),()=>{n?e.removeListener(t):e.removeEventListener("change",t)}}(S(),(function(e){t(e.matches?"dark":"light")}));return()=>e()}),[]),e}const k=(0,f.Ge)(y);function O(e){let{theme:t,systemLightTheme:n,systemDarkTheme:o,direction:i,nativeScrollbar:a,scoped:s=!1,rootClassName:l="",children:c,layout:u}=e;var f,y,w,_;const x=r.useContext(p.N),S=r.useContext(h),O=void 0!==x||s,T=null!==(f=null===x||void 0===x?void 0:x.theme)&&void 0!==f?f:m,N=null!==t&&void 0!==t?t:T,I=null!==(y=null!==n&&void 0!==n?n:null===S||void 0===S?void 0:S.systemLightTheme)&&void 0!==y?y:g,P=null!==(w=null!==o&&void 0!==o?o:null===S||void 0===S?void 0:S.systemDarkTheme)&&void 0!==w?w:v,R=null!==(_=null===x||void 0===x?void 0:x.direction)&&void 0!==_?_:b,D=null!==i&&void 0!==i?i:R,A="light"===C()?I:P,j="system"===N?A:N,M=r.useRef("");r.useLayoutEffect((()=>{O||(E({theme:j,nativeScrollbar:a,className:l,prevClassName:M.current}),function(e){const t=document.body;e===b?t.removeAttribute("dir"):t.setAttribute("dir",e)}(D),M.current=l)}),[O,j,D,a,l]);const L=r.useMemo((()=>({theme:N,themeValue:j,direction:D,scoped:O})),[N,j,D,O]),z=r.useMemo((()=>({systemLightTheme:I,systemDarkTheme:P})),[I,P]);return r.createElement(d,Object.assign({},u),r.createElement(p.N.Provider,{value:L},r.createElement(h.Provider,{value:z},O?r.createElement("div",{className:k({theme:j,"native-scrollbar":!1!==a},l),dir:D},c):c)))}O.displayName="ThemeProvider"},72644:(e,t,n)=>{"use strict";n.d(t,{g:()=>o});var r=n(40797);function o(){return(0,r.T)().direction}},40797:(e,t,n)=>{"use strict";n.d(t,{T:()=>i});var r=n(68963),o=n(57840);function i(){const e=r.useContext(o.N);if(void 0===e)throw new Error("useTheme* hooks must be used within ThemeProvider");return e}},64270:(e,t,n)=>{"use strict";n.d(t,{C:()=>o});var r=n(40797);function o(){return(0,r.T)().themeValue}},89459:(e,t,n)=>{"use strict";n.d(t,{i:()=>E,e:()=>x});var r=n(68963),o=n(35503);function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t0){var n=e[e.length-1];n!==t&&n.pause()}var r=e.indexOf(t);-1===r||e.splice(r,1),e.push(t)},c=function(e,t){var n=e.indexOf(t);-1!==n&&e.splice(n,1),e.length>0&&e[e.length-1].unpause()},u=function(e){return"Tab"===(null===e||void 0===e?void 0:e.key)||9===(null===e||void 0===e?void 0:e.keyCode)},d=function(e){return u(e)&&!e.shiftKey},f=function(e){return u(e)&&e.shiftKey},p=function(e){return setTimeout(e,0)},h=function(e,t){var n=-1;return e.every((function(e,r){return!t(e)||(n=r,!1)})),n},m=function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r1?n-1:0),i=1;i=0)e=r.activeElement;else{var t=y.tabbableGroups[0];e=t&&t.firstTabbableNode||_("fallbackFocus")}if(!e)throw new Error("Your focus-trap needs to have at least one focusable element");return e},x=function(){if(y.containerGroups=y.containers.map((function(e){var t=(0,o.ht)(e,s.tabbableOptions),n=(0,o.KW)(e,s.tabbableOptions),r=t.length>0?t[0]:void 0,i=t.length>0?t[t.length-1]:void 0,a=n.find((function(e){return(0,o.Wq)(e)})),l=n.slice().reverse().find((function(e){return(0,o.Wq)(e)})),c=!!t.find((function(e){return(0,o.pN)(e)>0}));return{container:e,tabbableNodes:t,focusableNodes:n,posTabIndexesFound:c,firstTabbableNode:r,lastTabbableNode:i,firstDomTabbableNode:a,lastDomTabbableNode:l,nextTabbableNode:function(e){var r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=t.indexOf(e);return i<0?r?n.slice(n.indexOf(e)+1).find((function(e){return(0,o.Wq)(e)})):n.slice(0,n.indexOf(e)).reverse().find((function(e){return(0,o.Wq)(e)})):t[i+(r?1:-1)]}}})),y.tabbableGroups=y.containerGroups.filter((function(e){return e.tabbableNodes.length>0})),y.tabbableGroups.length<=0&&!_("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(y.containerGroups.find((function(e){return e.posTabIndexesFound}))&&y.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},S=function e(t){var n=t.activeElement;if(n)return n.shadowRoot&&null!==n.shadowRoot.activeElement?e(n.shadowRoot):n},C=function e(t){!1!==t&&t!==S(document)&&(t&&t.focus?(t.focus({preventScroll:!!s.preventScroll}),y.mostRecentlyFocusedNode=t,function(e){return e.tagName&&"input"===e.tagName.toLowerCase()&&"function"===typeof e.select}(t)&&t.select()):e(E()))},k=function(e){var t=_("setReturnFocus",e);return t||!1!==t&&e},O=function(e){var t=e.target,n=e.event,r=e.isBackward,i=void 0!==r&&r;t=t||g(n),x();var a=null;if(y.tabbableGroups.length>0){var l=w(t,n),c=l>=0?y.containerGroups[l]:void 0;if(l<0)a=i?y.tabbableGroups[y.tabbableGroups.length-1].lastTabbableNode:y.tabbableGroups[0].firstTabbableNode;else if(i){var d=h(y.tabbableGroups,(function(e){var n=e.firstTabbableNode;return t===n}));if(d<0&&(c.container===t||(0,o.EB)(t,s.tabbableOptions)&&!(0,o.Wq)(t,s.tabbableOptions)&&!c.nextTabbableNode(t,!1))&&(d=l),d>=0){var f=0===d?y.tabbableGroups.length-1:d-1,p=y.tabbableGroups[f];a=(0,o.pN)(t)>=0?p.lastTabbableNode:p.lastDomTabbableNode}else u(n)||(a=c.nextTabbableNode(t,!1))}else{var m=h(y.tabbableGroups,(function(e){var n=e.lastTabbableNode;return t===n}));if(m<0&&(c.container===t||(0,o.EB)(t,s.tabbableOptions)&&!(0,o.Wq)(t,s.tabbableOptions)&&!c.nextTabbableNode(t))&&(m=l),m>=0){var v=m===y.tabbableGroups.length-1?0:m+1,b=y.tabbableGroups[v];a=(0,o.pN)(t)>=0?b.firstTabbableNode:b.firstDomTabbableNode}else u(n)||(a=c.nextTabbableNode(t))}}else a=_("fallbackFocus");return a},T=function(e){var t=g(e);w(t,e)>=0||(m(s.clickOutsideDeactivates,e)?n.deactivate({returnFocus:s.returnFocusOnDeactivate}):m(s.allowOutsideClick,e)||e.preventDefault())},N=function(e){var t=g(e),n=w(t,e)>=0;if(n||t instanceof Document)n&&(y.mostRecentlyFocusedNode=t);else{var r;e.stopImmediatePropagation();var i=!0;if(y.mostRecentlyFocusedNode)if((0,o.pN)(y.mostRecentlyFocusedNode)>0){var a=w(y.mostRecentlyFocusedNode),l=y.containerGroups[a].tabbableNodes;if(l.length>0){var c=l.findIndex((function(e){return e===y.mostRecentlyFocusedNode}));c>=0&&(s.isKeyForward(y.recentNavEvent)?c+1=0&&(r=l[c-1],i=!1))}}else y.containerGroups.some((function(e){return e.tabbableNodes.some((function(e){return(0,o.pN)(e)>0}))}))||(i=!1);else i=!1;i&&(r=O({target:y.mostRecentlyFocusedNode,isBackward:s.isKeyBackward(y.recentNavEvent)})),C(r||(y.mostRecentlyFocusedNode||E()))}y.recentNavEvent=void 0},I=function(e){if(("Escape"===(null===(t=e)||void 0===t?void 0:t.key)||"Esc"===(null===t||void 0===t?void 0:t.key)||27===(null===t||void 0===t?void 0:t.keyCode))&&!1!==m(s.escapeDeactivates,e))return e.preventDefault(),void n.deactivate();var t;(s.isKeyForward(e)||s.isKeyBackward(e))&&function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];y.recentNavEvent=e;var n=O({event:e,isBackward:t});n&&(u(e)&&e.preventDefault(),C(n))}(e,s.isKeyBackward(e))},P=function(e){var t=g(e);w(t,e)>=0||m(s.clickOutsideDeactivates,e)||m(s.allowOutsideClick,e)||(e.preventDefault(),e.stopImmediatePropagation())},R=function(){if(y.active)return l(i,n),y.delayInitialFocusTimer=s.delayInitialFocus?p((function(){C(E())})):C(E()),r.addEventListener("focusin",N,!0),r.addEventListener("mousedown",T,{capture:!0,passive:!1}),r.addEventListener("touchstart",T,{capture:!0,passive:!1}),r.addEventListener("click",P,{capture:!0,passive:!1}),r.addEventListener("keydown",I,{capture:!0,passive:!1}),n},D=function(){if(y.active)return r.removeEventListener("focusin",N,!0),r.removeEventListener("mousedown",T,!0),r.removeEventListener("touchstart",T,!0),r.removeEventListener("click",P,!0),r.removeEventListener("keydown",I,!0),n},A="undefined"!==typeof window&&"MutationObserver"in window?new MutationObserver((function(e){e.some((function(e){return Array.from(e.removedNodes).some((function(e){return e===y.mostRecentlyFocusedNode}))}))&&C(E())})):void 0,j=function(){A&&(A.disconnect(),y.active&&!y.paused&&y.containers.map((function(e){A.observe(e,{subtree:!0,childList:!0})})))};return(n={get active(){return y.active},get paused(){return y.paused},activate:function(e){if(y.active)return this;var t=b(e,"onActivate"),n=b(e,"onPostActivate"),o=b(e,"checkCanFocusTrap");o||x(),y.active=!0,y.paused=!1,y.nodeFocusedBeforeActivation=r.activeElement,null===t||void 0===t||t();var i=function(){o&&x(),R(),j(),null===n||void 0===n||n()};return o?(o(y.containers.concat()).then(i,i),this):(i(),this)},deactivate:function(e){if(!y.active)return this;var t=a({onDeactivate:s.onDeactivate,onPostDeactivate:s.onPostDeactivate,checkCanReturnFocus:s.checkCanReturnFocus},e);clearTimeout(y.delayInitialFocusTimer),y.delayInitialFocusTimer=void 0,D(),y.active=!1,y.paused=!1,j(),c(i,n);var r=b(t,"onDeactivate"),o=b(t,"onPostDeactivate"),l=b(t,"checkCanReturnFocus"),u=b(t,"returnFocus","returnFocusOnDeactivate");null===r||void 0===r||r();var d=function(){p((function(){u&&C(k(y.nodeFocusedBeforeActivation)),null===o||void 0===o||o()}))};return u&&l?(l(k(y.nodeFocusedBeforeActivation)).then(d,d),this):(d(),this)},pause:function(e){if(y.paused||!y.active)return this;var t=b(e,"onPause"),n=b(e,"onPostPause");return y.paused=!0,null===t||void 0===t||t(),D(),j(),null===n||void 0===n||n(),this},unpause:function(e){if(!y.paused||!y.active)return this;var t=b(e,"onUnpause"),n=b(e,"onPostUnpause");return y.paused=!1,null===t||void 0===t||t(),x(),R(),j(),null===n||void 0===n||n(),this},updateContainerElements:function(e){var t=[].concat(e).filter(Boolean);return y.containers=t.map((function(e){return"string"===typeof e?r.querySelector(e):e})),y.active&&x(),j(),this}}).updateContainerElements(e),n},b=n(48027),w=n(89646);const _=r.createContext(void 0);function E(e){let{children:t,enabled:n=!0,disableAutoFocus:o,autoFocus:i=!0}=e;const a=r.useRef(null),s=r.useRef(!o&&i);r.useEffect((()=>{s.current=!o&&i}));const l=r.useRef(),c=r.useRef({}),u=r.useCallback((()=>{var e;null===(e=l.current)||void 0===e||e.updateContainerElements([a.current,...Object.values(c.current)])}),[]),d=r.useMemo((()=>({addNode(e,t){var n;c.current[e]===t||(null===(n=a.current)||void 0===n?void 0:n.contains(t))||(c.current[e]=t,u())},removeNode(e){c.current[e]&&(delete c.current[e],u())}})),[u]),f=r.useCallback((e=>{var t;n&&e?(a.current=e,l.current||(l.current=y([],{initialFocus:()=>s.current&&function(e){if(!(document.activeElement instanceof HTMLElement)||!e.contains(document.activeElement))return e.hasAttribute("tabIndex")||e.setAttribute("tabIndex","-1"),e;return document.activeElement}(e),fallbackFocus:()=>e,returnFocusOnDeactivate:!1,escapeDeactivates:!1,clickOutsideDeactivates:!1,allowOutsideClick:!0})),u(),l.current.activate()):(null===(t=l.current)||void 0===t||t.deactivate(),a.current=null)}),[n,u]),p=r.Children.only(t);if(!r.isValidElement(p))throw new Error("Children must contain only one valid element");const h=p.ref,m=(0,b.c)(f,h);return r.createElement(_.Provider,{value:d},r.cloneElement(p,{ref:m}))}function x(){const e=r.useContext(_),t=(0,w.u)();return r.useMemo((()=>{if(e)return n=>{n?e.addNode(t,n):e.removeNode(t)}}),[e,t])}},54973:(e,t,n)=>{"use strict";n.d(t,{e:()=>s});var r=n(31329),o=n(24205);const i=(0,o.iE)().lang,a=new r.mb({lang:i,fallbackLang:i});function s(e,t){return Object.entries(e).forEach((e=>{let[n,r]=e;return a.registerKeyset(n,t,r)})),a.keyset(t)}(0,o.Pe)((e=>{a.setLang(e.lang)}))},36951:(e,t,n)=>{"use strict";n.d(t,{A7:()=>o,Ge:()=>i,Ui:()=>a});var r=n(5247);const o="g-",i=((0,r.withNaming)({e:"__",m:"_"}),(0,r.withNaming)({n:o,e:"__",m:"_"}));function a(e){return e.split(/\s(.*)/)[1]}},99742:(e,t,n)=>{"use strict";n.d(t,{Dc:()=>l,xA:()=>s,yb:()=>c});var r=n(88776),o=n(36951),i=n(70292);let a=1;function s(){return"".concat(o.A7,"uniq-").concat(a++)}const l=(0,i.s)("svg"),c=(0,i.s)(r.J)},24205:(e,t,n)=>{"use strict";var r;n.d(t,{Pe:()=>s,iE:()=>l,jQ:()=>a}),function(e){e.Ru="ru",e.En="en"}(r||(r={}));let o=[];const i={lang:r.En},a=e=>{Object.assign(i,e),o.forEach((e=>{e(i)}))},s=e=>(o.push(e),()=>{o=o.filter((t=>t!==e))}),l=()=>i},93404:(e,t,n)=>{"use strict";n.d(t,{P:()=>i});var r=n(95097),o=n(36951);const i=new class{constructor(e){this.subscriptions=[],this.componentPrefix=e}subscribe(e){this.subscriptions.push(e)}unsubscribe(e){const t=this.subscriptions.indexOf(e);t>-1&&this.subscriptions.splice(t,1)}publish(e){var{componentId:t}=e,n=(0,r._T)(e,["componentId"]);this.subscriptions.forEach((e=>e(Object.assign(Object.assign({},n),{componentId:this.componentPrefix?"".concat(this.componentPrefix).concat(t):t}))))}withEventPublisher(e,t){return n=>{this.publish(Object.assign(Object.assign({},n),{componentId:e,qa:t}))}}}(o.A7)},70292:(e,t,n)=>{"use strict";n.d(t,{s:()=>o});var r=n(68963);function o(e){return function(t){if(!r.isValidElement(t))return!1;const{type:n}=t;if(n===e)return!0;if("string"===typeof e||"string"===typeof n)return!1;const o=n.displayName;return Boolean(o&&o===e.displayName)}}},3262:(e,t,n)=>{"use strict";n.d(t,{s:()=>s});var r=n(68963),o=n(59926),i=n(93404);const a=new class{constructor(){this.stack=[],this.handleDocumentKeyDown=e=>{var t,n,r;if(e.code===o.V.ESCAPE){const r=this.getTopLayer();r.disableEscapeKeyDown||(null===(t=r.onEscapeKeyDown)||void 0===t||t.call(r,e),null===(n=r.onClose)||void 0===n||n.call(r,e,"escapeKeyDown"))}if("Enter"===e.code){const t=this.getTopLayer();null===(r=t.onEnterKeyDown)||void 0===r||r.call(t,e)}},this.handleDocumentClick=e=>{var t,n;if(this.isToastClick(e))return;let r,o=null;if(this.mouseDownLayerTarget){if(r=this.mouseDownLayerTarget.layer,o=this.mouseDownLayerTarget.target,this.mouseDownLayerTarget=void 0,!this.stack.includes(r))return}else r=this.getTopLayer();!r.disableOutsideClick&&this.isOutsideClick(r,e,o)&&(null===(t=r.onOutsideClick)||void 0===t||t.call(r,e),null===(n=r.onClose)||void 0===n||n.call(r,e,"outsideClick"))},this.handleDocumentMouseDown=e=>{const t=this.getTopLayer();t&&(this.mouseDownLayerTarget={layer:t,target:e.target})}}add(e){this.stack.push(e),1===this.stack.length&&this.addListeners(),this.notifyLayersChange()}remove(e){const t=this.stack.indexOf(e);this.stack.splice(t,1),0===this.stack.length&&this.removeListeners(),this.notifyLayersChange()}getLayersCount(){return this.stack.length}getLayers(){return this.stack.map((e=>{let{type:t}=e;return{type:t}}))}addListeners(){document.addEventListener("keydown",this.handleDocumentKeyDown),document.addEventListener("click",this.handleDocumentClick,!0),document.addEventListener("mousedown",this.handleDocumentMouseDown,!0)}removeListeners(){document.removeEventListener("keydown",this.handleDocumentKeyDown),document.removeEventListener("click",this.handleDocumentClick,!0),document.removeEventListener("mousedown",this.handleDocumentMouseDown,!0)}notifyLayersChange(){i.P.publish({componentId:"LayerManager",eventId:"layerschange",meta:{layersCount:this.getLayersCount(),layers:this.getLayers()}})}getTopLayer(){return this.stack[this.stack.length-1]}isOutsideClick(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;const r=e.contentRefs||[],{target:o}=t,i="function"===typeof t.composedPath?t.composedPath():[];if(r.length>0){return!r.some((e=>{var t,r,a,s;return(null===(r=null===(t=null===e||void 0===e?void 0:e.current)||void 0===t?void 0:t.contains)||void 0===r?void 0:r.call(t,o))||(null===(s=null===(a=null===e||void 0===e?void 0:e.current)||void 0===a?void 0:a.contains)||void 0===s?void 0:s.call(a,n))||i.includes(null===e||void 0===e?void 0:e.current)}))}return!1}isToastClick(e){return("function"===typeof e.composedPath?e.composedPath():[]).some((e=>{var t;return Boolean(null===(t=null===e||void 0===e?void 0:e.dataset)||void 0===t?void 0:t.toast)}))}};function s(e){let{open:t,disableEscapeKeyDown:n,disableOutsideClick:o,onEscapeKeyDown:i,onEnterKeyDown:s,onOutsideClick:l,onClose:c,contentRefs:u,enabled:d=!0,type:f}=e;const p=r.useRef({disableEscapeKeyDown:n,disableOutsideClick:o,onEscapeKeyDown:i,onEnterKeyDown:s,onOutsideClick:l,onClose:c,contentRefs:u,type:f});r.useEffect((()=>{Object.assign(p.current,{disableEscapeKeyDown:n,disableOutsideClick:o,onEscapeKeyDown:i,onEnterKeyDown:s,onOutsideClick:l,onClose:c,contentRefs:u,enabled:d})}),[n,o,i,s,l,c,u,d]),r.useEffect((()=>{if(t&&d){const e=p.current;return a.add(e),()=>{a.remove(e)}}}),[t,d])}},31445:(e,t,n)=>{"use strict";n.d(t,{Y:()=>o});var r=n(36951);function o(e){return{appear:(0,r.Ui)(e({appear:!0})),appearActive:(0,r.Ui)(e({appear:"active"})),appearDone:(0,r.Ui)(e({appear:"done"})),enter:(0,r.Ui)(e({enter:!0})),enterActive:(0,r.Ui)(e({enter:"active"})),enterDone:(0,r.Ui)(e({enter:"done"})),exit:(0,r.Ui)(e({exit:!0})),exitActive:(0,r.Ui)(e({exit:"active"})),exitDone:(0,r.Ui)(e({exit:"done"}))}}},12913:(e,t,n)=>{"use strict";n.d(t,{O:()=>o});const r=new Map;function o(e){!e||r.has(e)}},59926:(e,t,n)=>{"use strict";n.d(t,{V:()=>r});const r={BACKSPACE:"Backspace",ENTER:"Enter",TAB:"Tab",SPACEBAR:" ",SPACEBAR_OLD:"Spacebar",ESCAPE:"Escape",ARROW_UP:"ArrowUp",ARROW_DOWN:"ArrowDown",ARROW_LEFT:"ArrowLeft",ARROW_RIGHT:"ArrowRight"}},33180:(e,t,n)=>{"use strict";n.d(t,{O:()=>l});var r=n(68963),o=n(56407),i=n(48027),a=n(93404),s=n(92006);function l(e){let{name:t,value:n,id:l,defaultChecked:c,checked:u,indeterminate:d,onUpdate:f,onChange:p,controlRef:h,controlProps:m,onFocus:g,onBlur:v,disabled:y}=e;const b=r.useRef(null),[w,_]=(0,o.z)(u,null!==c&&void 0!==c&&c,f),E=!d&&u,x=d?"mixed":w,S=(0,s.q)({initialValue:w,onReset:_}),C=(0,i.c)(h,b,S);r.useLayoutEffect((()=>{b.current&&(b.current.indeterminate=Boolean(d))}),[d]);const k=r.useCallback((e=>{a.P.publish({componentId:"Checkbox",eventId:"click",domEvent:e,meta:{checked:e.target.checked}})}),[]);return{checked:w,inputProps:Object.assign(Object.assign({},m),{name:t,value:n,id:l,onFocus:g,onBlur:v,disabled:y,type:"checkbox",onChange:e=>{_(e.target.checked),p&&p(e)},onClickCapture:k,defaultChecked:c,checked:E,"aria-checked":x,ref:C})}}},92006:(e,t,n)=>{"use strict";n.d(t,{q:()=>o});var r=n(68963);function o(e){let{initialValue:t,onReset:n}=e;const[o,i]=r.useState(null),a=r.useRef(t);r.useEffect((()=>{if(!o)return;const e=()=>{n(a.current)};return o.addEventListener("reset",e),()=>{o.removeEventListener("reset",e)}}),[o,n]);return r.useCallback((e=>{var t;i(null!==(t=null===e||void 0===e?void 0:e.form)&&void 0!==t?t:null)}),[])}},95753:(e,t,n)=>{"use strict";n.d(t,{H:()=>i});var r=n(68963),o=n(35503);function i(e){let{enabled:t,restoreFocusRef:n,focusTrapped:i}=e;const a=r.useRef(null),s=r.useRef(null),l=r.useRef(null);return r.useEffect((()=>{if(!t)return;const e=e=>{const t=e.target;!i&&t instanceof HTMLElement&&(0,o.Wq)(t)&&(l.current=t)},n=e=>{const t=e.target;t instanceof HTMLElement&&(0,o.Wq)(t)?l.current=t:l.current=null};return window.addEventListener("focusin",e),window.addEventListener("mousedown",n),window.addEventListener("touchstart",n),()=>{window.removeEventListener("focusin",e),window.removeEventListener("mousedown",n),window.removeEventListener("touchstart",n)}}),[t,i]),r.useEffect((()=>{var e;a.current=t&&null!==(e=(null===n||void 0===n?void 0:n.current)||s.current)&&void 0!==e?e:null})),r.useEffect((()=>{if(t)return()=>{let e=a.current;const t=l.current;t&&document.contains(t)&&(0,o.Wq)(t)&&(e=t),e&&"function"===typeof e.focus&&document.contains(e)&&(0,o.EB)(e)&&(e!==document.activeElement&&setTimeout((()=>{null===e||void 0===e||e.focus()}),0),s.current=null,l.current=null)}}),[t]),{onFocus:e=>{var r;t&&null===s.current&&(s.current=e.relatedTarget,l.current=s.current,a.current=null!==(r=(null===n||void 0===n?void 0:n.current)||s.current)&&void 0!==r?r:null)}}}},79004:(e,t,n)=>{"use strict";n.d(t,{p:()=>i});var r=n(68963),o=n(59926);const i=(e,t)=>{let{openDelay:n=250,closeDelay:i,preventTriggerOnFocus:a=!1}=t;const[s,l,c]=function(e){const[t,n]=r.useState(e);return[t,r.useCallback((()=>n(!0)),[]),r.useCallback((()=>n(!1)),[]),r.useCallback((()=>n((e=>!e))),[])]}(!1),u=r.useRef(),d=r.useRef(!1);return r.useEffect((()=>{if(e)return e.addEventListener("mouseenter",t),e.addEventListener("mouseleave",r),e.addEventListener("keydown",p),a||(e.addEventListener("focus",s),e.addEventListener("blur",f)),()=>{e.removeEventListener("mouseenter",t),e.removeEventListener("mouseleave",r),e.removeEventListener("focus",s),e.removeEventListener("blur",f),e.removeEventListener("keydown",p)};function t(){clearTimeout(u.current),u.current=window.setTimeout(l,n)}function r(){clearTimeout(u.current),u.current=window.setTimeout(c,i)}function s(e){d.current||document.activeElement!==e.target||(d.current=!0,clearTimeout(u.current),l())}function f(e){d.current&&!e.currentTarget.contains(e.relatedTarget)&&(d.current=!1,clearTimeout(u.current),c())}function p(e){e.key===o.V.ESCAPE&&(clearTimeout(u.current),c())}}),[e,l,c,n,i,a]),s}},68512:(e,t,n)=>{"use strict";n.d(t,{S:()=>i,b:()=>a});var r=n(68963),o=n(59926);function i(e){return t=>{e&&[o.V.ENTER,o.V.SPACEBAR,o.V.SPACEBAR_OLD].includes(t.key)&&(t.preventDefault(),e(t))}}function a(e){return{onKeyDown:r.useMemo((()=>i(e)),[e])}}},74100:(e,t,n)=>{"use strict";n.d(t,{y:()=>a});var r=n(68963);let o,i=0;function a(e){let{enabled:t}=e;r.useLayoutEffect((()=>{if(t)return i++,1===i&&function(){const e=window.innerWidth-document.documentElement.clientWidth,t=window.innerHeight-document.documentElement.clientHeight,n=function(){const e=window.getComputedStyle(document.body);return{top:Number.parseFloat(e.paddingTop),right:Number.parseFloat(e.paddingRight),bottom:Number.parseFloat(e.paddingBottom),left:Number.parseFloat(e.paddingLeft)}}();o=document.body.style.cssText,document.body.style.overflow="hidden",e&&(document.body.style.paddingRight="".concat(n.right+e,"px"));t&&(document.body.style.paddingBottom="".concat(n.bottom+t,"px"))}(),()=>{i--,0===i&&(o?document.body.style.cssText=o:document.body.removeAttribute("style"))}}),[t])}},56407:(e,t,n)=>{"use strict";n.d(t,{z:()=>o});var r=n(68963);function o(e,t,n){const[o,i]=r.useState(null!==e&&void 0!==e?e:t),a=r.useRef(void 0!==e),s=void 0!==e;r.useEffect((()=>{const e=a.current;e!==s&&console.error("[useControlledState] A component changed from ".concat(e?"controlled":"uncontrolled"," to ").concat(s?"controlled":"uncontrolled",".")),a.current=s}),[s]);let l=s?e:o;const c=r.useCallback((function(e){if(!Object.is(l,e)){for(var t=arguments.length,r=new Array(t>1?t-1:0),o=1;o{"use strict";function r(e,t){"function"===typeof e?e(t):e&&(e.current=t)}n.d(t,{k:()=>r})},48027:(e,t,n)=>{"use strict";n.d(t,{c:()=>i});var r=n(68963),o=n(9704);function i(){for(var e=arguments.length,t=new Array(e),n=0;nt.every((e=>null===e||void 0===e))?null:e=>{for(const n of t)(0,o.k)(n,e)}),t)}},63096:(e,t,n)=>{"use strict";n.d(t,{s:()=>o});var r=n(68963);const o=e=>{let{element:t,options:n,onIntersect:o}=e;r.useEffect((()=>{const e=new IntersectionObserver((e=>{let[t]=e;t.isIntersecting&&(null===o||void 0===o||o())}),n);return t&&e.observe(t),()=>null===t?void 0:e.unobserve(t)}),[t,n,o])}},89646:(e,t,n)=>{"use strict";n.d(t,{u:()=>a});var r=n(68963),o=n(36951),i=n(99742);const a="function"===typeof r.useId?function(){return"".concat(o.A7).concat(r.useId())}:function(){const e=r.useRef();return void 0===e.current&&(e.current=(0,i.xA)()),e.current}},63660:(e,t,n)=>{"use strict";n.d(t,{m:()=>re});var r=n(63609),o=n(68963),i=n(63639),a=n.n(i),s=n(38886),l=n(36951);function c(e,t){return e.findIndex((e=>e.name===t))}function u(e,t){return-1!==c(e,t)}function d(e,t){return u(e,t)?e.filter((e=>e.name!==t)):e}const f=o.createContext(null);f.displayName="ToasterContext";const p=o.createContext([]);p.displayName="ToastsContext";const h=o.forwardRef((function(e,t){let{children:n}=e;const[r,i]=o.useState([]),a=o.useCallback((e=>{const{name:t}=e;i((n=>{let r=n;return u(n,t)&&(r=d(n,t)),[...r,Object.assign(Object.assign({},e),{addedAt:Date.now(),ref:o.createRef()})]}))}),[]),s=o.useCallback((e=>{i((t=>d(t,e)))}),[]),l=o.useCallback((()=>{i((()=>[]))}),[]),h=o.useCallback(((e,t)=>{i((n=>{if(!u(n,e))return n;const r=c(n,e);return[...n.slice(0,r),Object.assign(Object.assign({},n[r]),t),...n.slice(r+1)]}))}),[]),m=o.useRef(r);o.useEffect((()=>{m.current=r}),[r]);const g=o.useCallback((e=>!!m.current&&u(m.current,e)),[]),v=o.useMemo((()=>({add:a,remove:s,removeAll:l,update:h,has:g})),[a,s,l,h,g]);return o.useImperativeHandle(t,(()=>({add:a,remove:s,removeAll:l,update:h,has:g}))),o.createElement(f.Provider,{value:v},o.createElement(p.Provider,{value:r},n))}));h.displayName="ToasterProvider";var m=n(79805),g=n(63366),v=n(87462),y=n(97326),b=n(51721),w=n(24330);function _(e,t){var n=Object.create(null);return e&&o.Children.map(e,(function(e){return e})).forEach((function(e){n[e.key]=function(e){return t&&(0,o.isValidElement)(e)?t(e):e}(e)})),n}function E(e,t,n){return null!=n[t]?n[t]:e.props[t]}function x(e,t,n){var r=_(e.children),i=function(e,t){function n(n){return n in t?t[n]:e[n]}e=e||{},t=t||{};var r,o=Object.create(null),i=[];for(var a in e)a in t?i.length&&(o[a]=i,i=[]):i.push(a);var s={};for(var l in t){if(o[l])for(r=0;r{t(!0)}),[]),o.useCallback((()=>{t(!1)}),[]),e]}();var s,l;return s=t,l=a?null:n,o.useEffect((()=>{if("number"!==typeof l)return;const e=setTimeout((()=>{s()}),l);return()=>{clearTimeout(e)}}),[s,l]),{onMouseOver:r,onMouseLeave:i}}var j=n(17176),M=n(88776),L=n(54973);const z=JSON.parse('{"label_close-button":"Close"}'),F=JSON.parse('{"label_close-button":"\u0417\u0430\u043a\u0440\u044b\u0442\u044c"}'),B=(0,L.e)({en:z,ru:F},"Toaster"),U=(0,l.Ge)("toast"),q=5e3,Z={normal:null,info:N.Z,success:I.Z,warning:P.Z,danger:P.Z,utility:R.Z};const H=o.forwardRef((function(e,t){const{name:n,content:r,actions:i,title:a,className:s,theme:l="normal",renderIcon:c,autoHiding:u=q,isClosable:d=!0,mobile:f=!1,removeCallback:p}=e,h=o.useCallback((()=>p(n)),[p,n]),m=A({onClose:h,timeout:"number"===typeof u?u:void 0}),g={mobile:f,theme:l},v=Boolean(a),y=Boolean(r),b=c?c(e):function(e){let{theme:t}=e;return t&&Z[t]?o.createElement(M.J,{data:Z[t],size:20,className:U("icon",{[t]:!0})}):null}({theme:l});return o.createElement("div",Object.assign({ref:t,className:U(g,s)},m,{"data-toast":!0}),b&&o.createElement("div",{className:U("icon-container")},b),o.createElement("div",{className:U("container")},v&&o.createElement("h3",{className:U("title")},a),d&&o.createElement(j.z,{size:"s",view:"flat",className:U("btn-close"),onClick:h,extraProps:{"aria-label":B("label_close-button")}},o.createElement(M.J,{data:D.Z})),y&&o.createElement("div",{className:U("content",{"without-title":!v})},r),function(e){let{actions:t,onClose:n}=e;return t&&t.length?o.createElement("div",{className:U("actions")},t.map(((e,t)=>{let{label:r,onClick:i,view:a="outlined",removeAfterClick:s=!0}=e;return o.createElement(j.z,{key:"".concat(r,"__").concat(t),className:U("action"),onClick:()=>{i(),s&&n()},type:"button",size:"l",view:a,width:"auto"},r)}))):null}({actions:i,onClose:h})))})),W=(0,T.Y)((0,l.Ge)("toast-animation-desktop")),V=(0,T.Y)((0,l.Ge)("toast-animation-mobile"));function G(e){const{toasts:t,mobile:n,removeCallback:r}=e;return o.createElement(k,{component:null},t.map((e=>o.createElement(O.Z,{key:"".concat(e.name,"_").concat(e.addedAt),nodeRef:e.ref,classNames:n?V:W,addEndListener:t=>{var n,r;return null===(r=null===(n=e.ref)||void 0===n?void 0:n.current)||void 0===r?void 0:r.addEventListener("animationend",t)},onEnter:()=>$(e),onExit:()=>$(e)},o.createElement(H,Object.assign({},e,{mobile:n,removeCallback:r}))))))}function $(e){var t;(null===(t=e.ref)||void 0===t?void 0:t.current)&&e.ref.current.style.setProperty("--_--item-height","".concat(e.ref.current.offsetHeight,"px"))}var K=n(57107);const Y=(0,l.Ge)("toaster");function Q(e){let{children:t,className:n,mobile:r}=e;const i=o.useRef("undefined"===typeof document?void 0:document.createElement("div"));return o.useEffect((()=>{const e=i.current;if(e)return document.body.appendChild(e),()=>{document.body.removeChild(e)}}),[]),o.useEffect((()=>{i.current&&(i.current.className=Y({mobile:r},n))}),[n,r]),o.createElement(K.h,{container:i.current},t)}function J(e){let{className:t,mobile:n,hasPortal:r=!0}=e;const i=(0,m.X)(),{remove:a}=function(){const e=o.useContext(f);if(null===e)throw new Error("Toaster: `useToaster` hook is used out of context");return o.useMemo((()=>e),[e])}(),s=o.useContext(p),l=o.createElement(G,{toasts:s,removeCallback:a,mobile:null!==n&&void 0!==n?n:i});return r?o.createElement(Q,{className:t||"",mobile:null!==n&&void 0!==n?n:i},l):l}Q.displayName="ToasterPortal",J.displayName="ToasterComponent";const X=Symbol("Toaster instance key"),ee=(0,l.Ge)("toaster");let te;class ne{static injectReactDOMClient(e){te=e}constructor(e){this.className="",this.mobile=!1,this.componentAPI=null,this.add=e=>{var t;null===(t=this.componentAPI)||void 0===t||t.add(e)},this.remove=e=>{var t;null===(t=this.componentAPI)||void 0===t||t.remove(e)},this.removeAll=()=>{var e;null===(e=this.componentAPI)||void 0===e||e.removeAll()},this.update=(e,t)=>{var n;null===(n=this.componentAPI)||void 0===n||n.update(e,t)},this.has=e=>{var t,n;return null!==(n=null===(t=this.componentAPI)||void 0===t?void 0:t.has(e))&&void 0!==n&&n};const t=a()(e,["className"],""),n=a()(e,["mobile"],!1);if(window[X]instanceof ne){const e=window[X];return e.className=t,e.mobile=n,e.setRootNodeClassName(),e}this.className=t,this.mobile=n,this.createRootNode(),this.createReactRoot(),this.render(),window[X]=this}destroy(){s.unmountComponentAtNode(this.rootNode),document.body.removeChild(this.rootNode)}createRootNode(){this.rootNode=document.createElement("div"),this.setRootNodeClassName(),document.body.appendChild(this.rootNode)}createReactRoot(){te&&(this.reactRoot=te.createRoot(this.rootNode))}render(){const e=o.createElement(h,{ref:e=>{this.componentAPI=e}},o.createElement(J,{hasPortal:!1,mobile:this.mobile}));this.reactRoot?this.reactRoot.render(e):s.render(e,this.rootNode,(()=>Promise.resolve()))}setRootNodeClassName(){this.rootNode.className=ee({mobile:this.mobile},this.className)}}ne.injectReactDOMClient(r);const re="object"===typeof window?new ne:{}},69039:(e,t,n)=>{"use strict";var r=n(42780),o=n(9371),i=o(r("String.prototype.indexOf"));e.exports=function(e,t){var n=r(e,!!t);return"function"===typeof n&&i(e,".prototype.")>-1?o(n):n}},9371:(e,t,n)=>{"use strict";var r=n(88050),o=n(42780),i=n(18083),a=n(84968),s=o("%Function.prototype.apply%"),l=o("%Function.prototype.call%"),c=o("%Reflect.apply%",!0)||r.call(l,s),u=n(85122),d=o("%Math.max%");e.exports=function(e){if("function"!==typeof e)throw new a("a function is required");var t=c(r,l,arguments);return i(t,1+d(0,e.length-(arguments.length-1)),!0)};var f=function(){return c(r,s,arguments)};u?u(e.exports,"apply",{value:f}):e.exports.apply=f},69886:(e,t,n)=>{"use strict";var r=n(21034),o={"text/plain":"Text","text/html":"Url",default:"Text"},i="Copy to clipboard: #{key}, Enter";e.exports=function(e,t){var n,a,s,l,c,u,d=!1;t||(t={}),n=t.debug||!1;try{if(s=r(),l=document.createRange(),c=document.getSelection(),(u=document.createElement("span")).textContent=e,u.ariaHidden="true",u.style.all="unset",u.style.position="fixed",u.style.top=0,u.style.clip="rect(0, 0, 0, 0)",u.style.whiteSpace="pre",u.style.webkitUserSelect="text",u.style.MozUserSelect="text",u.style.msUserSelect="text",u.style.userSelect="text",u.addEventListener("copy",(function(r){if(r.stopPropagation(),t.format)if(r.preventDefault(),"undefined"===typeof r.clipboardData){n&&console.warn("unable to use e.clipboardData"),n&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var i=o[t.format]||o.default;window.clipboardData.setData(i,e)}else r.clipboardData.clearData(),r.clipboardData.setData(t.format,e);t.onCopy&&(r.preventDefault(),t.onCopy(r.clipboardData))})),document.body.appendChild(u),l.selectNodeContents(u),c.addRange(l),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");d=!0}catch(f){n&&console.error("unable to copy using execCommand: ",f),n&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),d=!0}catch(f){n&&console.error("unable to copy using clipboardData: ",f),n&&console.error("falling back to prompt"),a=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:i),window.prompt(a,e)}}finally{c&&("function"==typeof c.removeRange?c.removeRange(l):c.removeAllRanges()),u&&document.body.removeChild(u),s()}return d}},44937:(e,t,n)=>{"use strict";var r=n(29335),o={};var i=function(e){};function a(e,t,n,r,o,a,s,l){if(i(t),!e){var c;if(void 0===t)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[n,r,o,a,s,l],d=0;(c=new Error(t.replace(/%s/g,(function(){return u[d++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}var s="mixins";e.exports=function(e,t,n){var i=[],l={mixins:"DEFINE_MANY",statics:"DEFINE_MANY",propTypes:"DEFINE_MANY",contextTypes:"DEFINE_MANY",childContextTypes:"DEFINE_MANY",getDefaultProps:"DEFINE_MANY_MERGED",getInitialState:"DEFINE_MANY_MERGED",getChildContext:"DEFINE_MANY_MERGED",render:"DEFINE_ONCE",componentWillMount:"DEFINE_MANY",componentDidMount:"DEFINE_MANY",componentWillReceiveProps:"DEFINE_MANY",shouldComponentUpdate:"DEFINE_ONCE",componentWillUpdate:"DEFINE_MANY",componentDidUpdate:"DEFINE_MANY",componentWillUnmount:"DEFINE_MANY",UNSAFE_componentWillMount:"DEFINE_MANY",UNSAFE_componentWillReceiveProps:"DEFINE_MANY",UNSAFE_componentWillUpdate:"DEFINE_MANY",updateComponent:"OVERRIDE_BASE"},c={getDerivedStateFromProps:"DEFINE_MANY_MERGED"},u={displayName:function(e,t){e.displayName=t},mixins:function(e,t){if(t)for(var n=0;n{"use strict";var r=n(68963),o=n(44937);if("undefined"===typeof r)throw Error("create-react-class could not find the React object. If you are using script tags, make sure that React is being loaded before create-react-class.");var i=(new r.Component).updater;e.exports=o(r.Component,r.isValidElement,i)},75812:e=>{e.exports=Date.now||function(){return(new Date).getTime()}},22877:function(e){e.exports=function(){"use strict";var e=1e3,t=6e4,n=36e5,r="millisecond",o="second",i="minute",a="hour",s="day",l="week",c="month",u="quarter",d="year",f="date",p="Invalid Date",h=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],n=e%100;return"["+e+(t[(n-20)%10]||t[n]||t[0])+"]"}},v=function(e,t,n){var r=String(e);return!r||r.length>=t?e:""+Array(t+1-r.length).join(n)+e},y={s:v,z:function(e){var t=-e.utcOffset(),n=Math.abs(t),r=Math.floor(n/60),o=n%60;return(t<=0?"+":"-")+v(r,2,"0")+":"+v(o,2,"0")},m:function e(t,n){if(t.date()1)return e(a[0])}else{var s=t.name;w[s]=t,o=s}return!r&&o&&(b=o),o||!r&&b},S=function(e,t){if(E(e))return e.clone();var n="object"==typeof t?t:{};return n.date=e,n.args=arguments,new k(n)},C=y;C.l=x,C.i=E,C.w=function(e,t){return S(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var k=function(){function g(e){this.$L=x(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[_]=!0}var v=g.prototype;return v.parse=function(e){this.$d=function(e){var t=e.date,n=e.utc;if(null===t)return new Date(NaN);if(C.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var r=t.match(h);if(r){var o=r[2]-1||0,i=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],o,r[3]||1,r[4]||0,r[5]||0,r[6]||0,i)):new Date(r[1],o,r[3]||1,r[4]||0,r[5]||0,r[6]||0,i)}}return new Date(t)}(e),this.init()},v.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},v.$utils=function(){return C},v.isValid=function(){return!(this.$d.toString()===p)},v.isSame=function(e,t){var n=S(e);return this.startOf(t)<=n&&n<=this.endOf(t)},v.isAfter=function(e,t){return S(e)68?1900:2e3)},s=function(e){return function(t){this[e]=+t}},l=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if("Z"===e)return 0;var t=e.match(/([+-]|\d\d)/g),n=60*t[1]+(+t[2]||0);return 0===n?0:"+"===t[0]?-n:n}(e)}],c=function(e){var t=i[e];return t&&(t.indexOf?t:t.s.concat(t.f))},u=function(e,t){var n,r=i.meridiem;if(r){for(var o=1;o<=24;o+=1)if(e.indexOf(r(o,0,t))>-1){n=o>12;break}}else n=e===(t?"pm":"PM");return n},d={A:[o,function(e){this.afternoon=u(e,!1)}],a:[o,function(e){this.afternoon=u(e,!0)}],S:[/\d/,function(e){this.milliseconds=100*+e}],SS:[n,function(e){this.milliseconds=10*+e}],SSS:[/\d{3}/,function(e){this.milliseconds=+e}],s:[r,s("seconds")],ss:[r,s("seconds")],m:[r,s("minutes")],mm:[r,s("minutes")],H:[r,s("hours")],h:[r,s("hours")],HH:[r,s("hours")],hh:[r,s("hours")],D:[r,s("day")],DD:[n,s("day")],Do:[o,function(e){var t=i.ordinal,n=e.match(/\d+/);if(this.day=n[0],t)for(var r=1;r<=31;r+=1)t(r).replace(/\[|\]/g,"")===e&&(this.day=r)}],M:[r,s("month")],MM:[n,s("month")],MMM:[o,function(e){var t=c("months"),n=(c("monthsShort")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(n<1)throw new Error;this.month=n%12||n}],MMMM:[o,function(e){var t=c("months").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],Y:[/[+-]?\d+/,s("year")],YY:[n,function(e){this.year=a(e)}],YYYY:[/\d{4}/,s("year")],Z:l,ZZ:l};function f(n){var r,o;r=n,o=i&&i.formats;for(var a=(n=r.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var i=r&&r.toUpperCase();return n||o[r]||e[r]||o[i].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}))).match(t),s=a.length,l=0;l-1)return new Date(("X"===t?1e3:1)*e);var r=f(t)(e),o=r.year,i=r.month,a=r.day,s=r.hours,l=r.minutes,c=r.seconds,u=r.milliseconds,d=r.zone,p=new Date,h=a||(o||i?1:p.getDate()),m=o||p.getFullYear(),g=0;o&&!i||(g=i>0?i-1:p.getMonth());var v=s||0,y=l||0,b=c||0,w=u||0;return d?new Date(Date.UTC(m,g,h,v,y,b,w+60*d.offset*1e3)):n?new Date(Date.UTC(m,g,h,v,y,b,w)):new Date(m,g,h,v,y,b,w)}catch(e){return new Date("")}}(t,s,r),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(s)&&(this.$d=new Date("")),i={}}else if(s instanceof Array)for(var p=s.length,h=1;h<=p;h+=1){a[1]=s[h-1];var m=n.apply(this,a);if(m.isValid()){this.$d=m.$d,this.$L=m.$L,this.init();break}h===p&&(this.$d=new Date(""))}else o.call(this,e)}}}()},1035:function(e){e.exports=function(){"use strict";return function(e,t,n){n.updateLocale=function(e,t){var r=n.Ls[e];if(r)return(t?Object.keys(t):[]).forEach((function(e){r[e]=t[e]})),r}}}()},54591:function(e){e.exports=function(){"use strict";var e="minute",t=/[+-]\d\d(?::?\d\d)?/g,n=/([+-]|\d\d)/g;return function(r,o,i){var a=o.prototype;i.utc=function(e){return new o({date:e,utc:!0,args:arguments})},a.utc=function(t){var n=i(this.toDate(),{locale:this.$L,utc:!0});return t?n.add(this.utcOffset(),e):n},a.local=function(){return i(this.toDate(),{locale:this.$L,utc:!1})};var s=a.parse;a.parse=function(e){e.utc&&(this.$u=!0),this.$utils().u(e.$offset)||(this.$offset=e.$offset),s.call(this,e)};var l=a.init;a.init=function(){if(this.$u){var e=this.$d;this.$y=e.getUTCFullYear(),this.$M=e.getUTCMonth(),this.$D=e.getUTCDate(),this.$W=e.getUTCDay(),this.$H=e.getUTCHours(),this.$m=e.getUTCMinutes(),this.$s=e.getUTCSeconds(),this.$ms=e.getUTCMilliseconds()}else l.call(this)};var c=a.utcOffset;a.utcOffset=function(r,o){var i=this.$utils().u;if(i(r))return this.$u?0:i(this.$offset)?c.call(this):this.$offset;if("string"==typeof r&&(r=function(e){void 0===e&&(e="");var r=e.match(t);if(!r)return null;var o=(""+r[0]).match(n)||["-",0,0],i=o[0],a=60*+o[1]+ +o[2];return 0===a?0:"+"===i?a:-a}(r),null===r))return this;var a=Math.abs(r)<=16?60*r:r,s=this;if(o)return s.$offset=a,s.$u=0===r,s;if(0!==r){var l=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(s=this.local().add(a+l,e)).$offset=a,s.$x.$localOffset=l}else s=this.utc();return s};var u=a.format;a.format=function(e){var t=e||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return u.call(this,t)},a.valueOf=function(){var e=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*e},a.isUTC=function(){return!!this.$u},a.toISOString=function(){return this.toDate().toISOString()},a.toString=function(){return this.toDate().toUTCString()};var d=a.toDate;a.toDate=function(e){return"s"===e&&this.$offset?i(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():d.call(this)};var f=a.diff;a.diff=function(e,t,n){if(e&&this.$u===e.$u)return f.call(this,e,t,n);var r=this.local(),o=i(e).local();return f.call(r,o,t,n)}}}()},60305:(e,t,n)=>{var r=n(75812);e.exports=function(e,t,n){var o,i,a,s,l;function c(){var u=r()-s;u0?o=setTimeout(c,t-u):(o=null,n||(l=e.apply(a,i),o||(a=i=null)))}return null==t&&(t=100),function(){a=this,i=arguments,s=r();var u=n&&!o;return o||(o=setTimeout(c,t)),u&&(l=e.apply(a,i),a=i=null),l}}},10854:(e,t,n)=>{"use strict";var r=n(85122),o=n(47849),i=n(84968),a=n(81687);e.exports=function(e,t,n){if(!e||"object"!==typeof e&&"function"!==typeof e)throw new i("`obj` must be an object or a function`");if("string"!==typeof t&&"symbol"!==typeof t)throw new i("`property` must be a string or a symbol`");if(arguments.length>3&&"boolean"!==typeof arguments[3]&&null!==arguments[3])throw new i("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!==typeof arguments[4]&&null!==arguments[4])throw new i("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!==typeof arguments[5]&&null!==arguments[5])throw new i("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!==typeof arguments[6])throw new i("`loose`, if provided, must be a boolean");var s=arguments.length>3?arguments[3]:null,l=arguments.length>4?arguments[4]:null,c=arguments.length>5?arguments[5]:null,u=arguments.length>6&&arguments[6],d=!!a&&a(e,t);if(r)r(e,t,{configurable:null===c&&d?d.configurable:!c,enumerable:null===s&&d?d.enumerable:!s,value:n,writable:null===l&&d?d.writable:!l});else{if(!u&&(s||l||c))throw new o("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");e[t]=n}}},85122:(e,t,n)=>{"use strict";var r=n(42780)("%Object.defineProperty%",!0)||!1;if(r)try{r({},"a",{value:1})}catch(o){r=!1}e.exports=r},16101:e=>{"use strict";e.exports=EvalError},41830:e=>{"use strict";e.exports=Error},69715:e=>{"use strict";e.exports=RangeError},64546:e=>{"use strict";e.exports=ReferenceError},47849:e=>{"use strict";e.exports=SyntaxError},84968:e=>{"use strict";e.exports=TypeError},68344:e=>{"use strict";e.exports=URIError},12406:e=>{"use strict";var t="Function.prototype.bind called on incompatible ",n=Object.prototype.toString,r=Math.max,o="[object Function]",i=function(e,t){for(var n=[],r=0;r{"use strict";var r=n(12406);e.exports=Function.prototype.bind||r},42780:(e,t,n)=>{"use strict";var r,o=n(41830),i=n(16101),a=n(69715),s=n(64546),l=n(47849),c=n(84968),u=n(68344),d=Function,f=function(e){try{return d('"use strict"; return ('+e+").constructor;")()}catch(t){}},p=Object.getOwnPropertyDescriptor;if(p)try{p({},"")}catch(M){p=null}var h=function(){throw new c},m=p?function(){try{return h}catch(e){try{return p(arguments,"callee").get}catch(t){return h}}}():h,g=n(83895)(),v=n(29571)(),y=Object.getPrototypeOf||(v?function(e){return e.__proto__}:null),b={},w="undefined"!==typeof Uint8Array&&y?y(Uint8Array):r,_={__proto__:null,"%AggregateError%":"undefined"===typeof AggregateError?r:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"===typeof ArrayBuffer?r:ArrayBuffer,"%ArrayIteratorPrototype%":g&&y?y([][Symbol.iterator]()):r,"%AsyncFromSyncIteratorPrototype%":r,"%AsyncFunction%":b,"%AsyncGenerator%":b,"%AsyncGeneratorFunction%":b,"%AsyncIteratorPrototype%":b,"%Atomics%":"undefined"===typeof Atomics?r:Atomics,"%BigInt%":"undefined"===typeof BigInt?r:BigInt,"%BigInt64Array%":"undefined"===typeof BigInt64Array?r:BigInt64Array,"%BigUint64Array%":"undefined"===typeof BigUint64Array?r:BigUint64Array,"%Boolean%":Boolean,"%DataView%":"undefined"===typeof DataView?r:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":o,"%eval%":eval,"%EvalError%":i,"%Float32Array%":"undefined"===typeof Float32Array?r:Float32Array,"%Float64Array%":"undefined"===typeof Float64Array?r:Float64Array,"%FinalizationRegistry%":"undefined"===typeof FinalizationRegistry?r:FinalizationRegistry,"%Function%":d,"%GeneratorFunction%":b,"%Int8Array%":"undefined"===typeof Int8Array?r:Int8Array,"%Int16Array%":"undefined"===typeof Int16Array?r:Int16Array,"%Int32Array%":"undefined"===typeof Int32Array?r:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":g&&y?y(y([][Symbol.iterator]())):r,"%JSON%":"object"===typeof JSON?JSON:r,"%Map%":"undefined"===typeof Map?r:Map,"%MapIteratorPrototype%":"undefined"!==typeof Map&&g&&y?y((new Map)[Symbol.iterator]()):r,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"===typeof Promise?r:Promise,"%Proxy%":"undefined"===typeof Proxy?r:Proxy,"%RangeError%":a,"%ReferenceError%":s,"%Reflect%":"undefined"===typeof Reflect?r:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"===typeof Set?r:Set,"%SetIteratorPrototype%":"undefined"!==typeof Set&&g&&y?y((new Set)[Symbol.iterator]()):r,"%SharedArrayBuffer%":"undefined"===typeof SharedArrayBuffer?r:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":g&&y?y(""[Symbol.iterator]()):r,"%Symbol%":g?Symbol:r,"%SyntaxError%":l,"%ThrowTypeError%":m,"%TypedArray%":w,"%TypeError%":c,"%Uint8Array%":"undefined"===typeof Uint8Array?r:Uint8Array,"%Uint8ClampedArray%":"undefined"===typeof Uint8ClampedArray?r:Uint8ClampedArray,"%Uint16Array%":"undefined"===typeof Uint16Array?r:Uint16Array,"%Uint32Array%":"undefined"===typeof Uint32Array?r:Uint32Array,"%URIError%":u,"%WeakMap%":"undefined"===typeof WeakMap?r:WeakMap,"%WeakRef%":"undefined"===typeof WeakRef?r:WeakRef,"%WeakSet%":"undefined"===typeof WeakSet?r:WeakSet};if(y)try{null.error}catch(M){var E=y(y(M));_["%Error.prototype%"]=E}var x=function e(t){var n;if("%AsyncFunction%"===t)n=f("async function () {}");else if("%GeneratorFunction%"===t)n=f("function* () {}");else if("%AsyncGeneratorFunction%"===t)n=f("async function* () {}");else if("%AsyncGenerator%"===t){var r=e("%AsyncGeneratorFunction%");r&&(n=r.prototype)}else if("%AsyncIteratorPrototype%"===t){var o=e("%AsyncGenerator%");o&&y&&(n=y(o.prototype))}return _[t]=n,n},S={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},C=n(88050),k=n(17652),O=C.call(Function.call,Array.prototype.concat),T=C.call(Function.apply,Array.prototype.splice),N=C.call(Function.call,String.prototype.replace),I=C.call(Function.call,String.prototype.slice),P=C.call(Function.call,RegExp.prototype.exec),R=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,D=/\\(\\)?/g,A=function(e){var t=I(e,0,1),n=I(e,-1);if("%"===t&&"%"!==n)throw new l("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==t)throw new l("invalid intrinsic syntax, expected opening `%`");var r=[];return N(e,R,(function(e,t,n,o){r[r.length]=n?N(o,D,"$1"):t||e})),r},j=function(e,t){var n,r=e;if(k(S,r)&&(r="%"+(n=S[r])[0]+"%"),k(_,r)){var o=_[r];if(o===b&&(o=x(r)),"undefined"===typeof o&&!t)throw new c("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:n,name:r,value:o}}throw new l("intrinsic "+e+" does not exist!")};e.exports=function(e,t){if("string"!==typeof e||0===e.length)throw new c("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!==typeof t)throw new c('"allowMissing" argument must be a boolean');if(null===P(/^%?[^%]*%?$/,e))throw new l("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=A(e),r=n.length>0?n[0]:"",o=j("%"+r+"%",t),i=o.name,a=o.value,s=!1,u=o.alias;u&&(r=u[0],T(n,O([0,1],u)));for(var d=1,f=!0;d=n.length){var v=p(a,h);a=(f=!!v)&&"get"in v&&!("originalValue"in v.get)?v.get:a[h]}else f=k(a,h),a=a[h];f&&!s&&(_[i]=a)}}return a}},81687:(e,t,n)=>{"use strict";var r=n(42780)("%Object.getOwnPropertyDescriptor%",!0);if(r)try{r([],"length")}catch(o){r=null}e.exports=r},43597:(e,t,n)=>{"use strict";var r=n(85122),o=function(){return!!r};o.hasArrayLengthDefineBug=function(){if(!r)return null;try{return 1!==r([],"length",{value:1}).length}catch(e){return!0}},e.exports=o},29571:e=>{"use strict";var t={__proto__:null,foo:{}},n=Object;e.exports=function(){return{__proto__:t}.foo===t.foo&&!(t instanceof n)}},83895:(e,t,n)=>{"use strict";var r="undefined"!==typeof Symbol&&Symbol,o=n(75687);e.exports=function(){return"function"===typeof r&&("function"===typeof Symbol&&("symbol"===typeof r("foo")&&("symbol"===typeof Symbol("bar")&&o())))}},75687:e=>{"use strict";e.exports=function(){if("function"!==typeof Symbol||"function"!==typeof Object.getOwnPropertySymbols)return!1;if("symbol"===typeof Symbol.iterator)return!0;var e={},t=Symbol("test"),n=Object(t);if("string"===typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(t in e[t]=42,e)return!1;if("function"===typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"===typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;var r=Object.getOwnPropertySymbols(e);if(1!==r.length||r[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"===typeof Object.getOwnPropertyDescriptor){var o=Object.getOwnPropertyDescriptor(e,t);if(42!==o.value||!0!==o.enumerable)return!1}return!0}},17652:(e,t,n)=>{"use strict";var r=Function.prototype.call,o=Object.prototype.hasOwnProperty,i=n(88050);e.exports=i.call(r,o)},91668:(e,t,n)=>{"use strict";n.d(t,{lX:()=>x,q_:()=>N,ob:()=>m,PP:()=>P,Ep:()=>h,Hp:()=>g});var r=n(87462);function o(e){return"/"===e.charAt(0)}function i(e,t){for(var n=t,r=n+1,o=e.length;r=0;f--){var p=a[f];"."===p?i(a,f):".."===p?(i(a,f),d++):d&&(i(a,f),d--)}if(!c)for(;d--;d)a.unshift("..");!c||""===a[0]||a[0]&&o(a[0])||a.unshift("");var h=a.join("/");return n&&"/"!==h.substr(-1)&&(h+="/"),h};function s(e){return e.valueOf?e.valueOf():Object.prototype.valueOf.call(e)}const l=function e(t,n){if(t===n)return!0;if(null==t||null==n)return!1;if(Array.isArray(t))return Array.isArray(n)&&t.length===n.length&&t.every((function(t,r){return e(t,n[r])}));if("object"===typeof t||"object"===typeof n){var r=s(t),o=s(n);return r!==t||o!==n?e(r,o):Object.keys(Object.assign({},t,n)).every((function(r){return e(t[r],n[r])}))}return!1};var c=n(35731);function u(e){return"/"===e.charAt(0)?e:"/"+e}function d(e){return"/"===e.charAt(0)?e.substr(1):e}function f(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function p(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function h(e){var t=e.pathname,n=e.search,r=e.hash,o=t||"/";return n&&"?"!==n&&(o+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(o+="#"===r.charAt(0)?r:"#"+r),o}function m(e,t,n,o){var i;"string"===typeof e?(i=function(e){var t=e||"/",n="",r="",o=t.indexOf("#");-1!==o&&(r=t.substr(o),t=t.substr(0,o));var i=t.indexOf("?");return-1!==i&&(n=t.substr(i),t=t.substr(0,i)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),i.state=t):(void 0===(i=(0,r.Z)({},e)).pathname&&(i.pathname=""),i.search?"?"!==i.search.charAt(0)&&(i.search="?"+i.search):i.search="",i.hash?"#"!==i.hash.charAt(0)&&(i.hash="#"+i.hash):i.hash="",void 0!==t&&void 0===i.state&&(i.state=t));try{i.pathname=decodeURI(i.pathname)}catch(s){throw s instanceof URIError?new URIError('Pathname "'+i.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):s}return n&&(i.key=n),o?i.pathname?"/"!==i.pathname.charAt(0)&&(i.pathname=a(i.pathname,o.pathname)):i.pathname=o.pathname:i.pathname||(i.pathname="/"),i}function g(e,t){return e.pathname===t.pathname&&e.search===t.search&&e.hash===t.hash&&e.key===t.key&&l(e.state,t.state)}function v(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,o){if(null!=e){var i="function"===typeof e?e(t,n):e;"string"===typeof i?"function"===typeof r?r(i,o):o(!0):o(!1!==i)}else o(!0)},appendListener:function(e){var n=!0;function r(){n&&e.apply(void 0,arguments)}return t.push(r),function(){n=!1,t=t.filter((function(e){return e!==r}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),r=0;rt?n.splice(t,n.length-t,o):n.push(o),d({action:r,location:o,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",o=m(e,t,f(),w.location);u.confirmTransitionTo(o,r,n,(function(e){e&&(w.entries[w.index]=o,d({action:r,location:o}))}))},go:b,goBack:function(){b(-1)},goForward:function(){b(1)},canGo:function(e){var t=w.index+e;return t>=0&&t{"use strict";var r=n(70248),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},i={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},a={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return r.isMemo(e)?a:s[e.$$typeof]||o}s[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[r.Memo]=a;var c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,f=Object.getOwnPropertyDescriptor,p=Object.getPrototypeOf,h=Object.prototype;e.exports=function e(t,n,r){if("string"!==typeof n){if(h){var o=p(n);o&&o!==h&&e(t,o,r)}var a=u(n);d&&(a=a.concat(d(n)));for(var s=l(t),m=l(n),g=0;g{"use strict";var n="function"===typeof Symbol&&Symbol.for,r=n?Symbol.for("react.element"):60103,o=n?Symbol.for("react.portal"):60106,i=n?Symbol.for("react.fragment"):60107,a=n?Symbol.for("react.strict_mode"):60108,s=n?Symbol.for("react.profiler"):60114,l=n?Symbol.for("react.provider"):60109,c=n?Symbol.for("react.context"):60110,u=n?Symbol.for("react.async_mode"):60111,d=n?Symbol.for("react.concurrent_mode"):60111,f=n?Symbol.for("react.forward_ref"):60112,p=n?Symbol.for("react.suspense"):60113,h=n?Symbol.for("react.suspense_list"):60120,m=n?Symbol.for("react.memo"):60115,g=n?Symbol.for("react.lazy"):60116,v=n?Symbol.for("react.block"):60121,y=n?Symbol.for("react.fundamental"):60117,b=n?Symbol.for("react.responder"):60118,w=n?Symbol.for("react.scope"):60119;function _(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case u:case d:case i:case s:case a:case p:return e;default:switch(e=e&&e.$$typeof){case c:case f:case g:case m:case l:return e;default:return t}}case o:return t}}}function E(e){return _(e)===d}t.AsyncMode=u,t.ConcurrentMode=d,t.ContextConsumer=c,t.ContextProvider=l,t.Element=r,t.ForwardRef=f,t.Fragment=i,t.Lazy=g,t.Memo=m,t.Portal=o,t.Profiler=s,t.StrictMode=a,t.Suspense=p,t.isAsyncMode=function(e){return E(e)||_(e)===u},t.isConcurrentMode=E,t.isContextConsumer=function(e){return _(e)===c},t.isContextProvider=function(e){return _(e)===l},t.isElement=function(e){return"object"===typeof e&&null!==e&&e.$$typeof===r},t.isForwardRef=function(e){return _(e)===f},t.isFragment=function(e){return _(e)===i},t.isLazy=function(e){return _(e)===g},t.isMemo=function(e){return _(e)===m},t.isPortal=function(e){return _(e)===o},t.isProfiler=function(e){return _(e)===s},t.isStrictMode=function(e){return _(e)===a},t.isSuspense=function(e){return _(e)===p},t.isValidElementType=function(e){return"string"===typeof e||"function"===typeof e||e===i||e===d||e===s||e===a||e===p||e===h||"object"===typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===m||e.$$typeof===l||e.$$typeof===c||e.$$typeof===f||e.$$typeof===y||e.$$typeof===b||e.$$typeof===w||e.$$typeof===v)},t.typeOf=_},70248:(e,t,n)=>{"use strict";e.exports=n(17943)},32733:e=>{"use strict";e.exports=function(e,t,n,r,o,i,a,s){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,i,a,s],u=0;(l=new Error(t.replace(/%s/g,(function(){return c[u++]})))).name="Invariant Violation"}throw l.framesToPop=1,l}}},36383:e=>{"use strict";const t=new Set(["ENOTFOUND","ENETUNREACH","UNABLE_TO_GET_ISSUER_CERT","UNABLE_TO_GET_CRL","UNABLE_TO_DECRYPT_CERT_SIGNATURE","UNABLE_TO_DECRYPT_CRL_SIGNATURE","UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY","CERT_SIGNATURE_FAILURE","CRL_SIGNATURE_FAILURE","CERT_NOT_YET_VALID","CERT_HAS_EXPIRED","CRL_NOT_YET_VALID","CRL_HAS_EXPIRED","ERROR_IN_CERT_NOT_BEFORE_FIELD","ERROR_IN_CERT_NOT_AFTER_FIELD","ERROR_IN_CRL_LAST_UPDATE_FIELD","ERROR_IN_CRL_NEXT_UPDATE_FIELD","OUT_OF_MEM","DEPTH_ZERO_SELF_SIGNED_CERT","SELF_SIGNED_CERT_IN_CHAIN","UNABLE_TO_GET_ISSUER_CERT_LOCALLY","UNABLE_TO_VERIFY_LEAF_SIGNATURE","CERT_CHAIN_TOO_LONG","CERT_REVOKED","INVALID_CA","PATH_LENGTH_EXCEEDED","INVALID_PURPOSE","CERT_UNTRUSTED","CERT_REJECTED","HOSTNAME_MISMATCH"]);e.exports=e=>!t.has(e&&e.code)},49099:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},22849:(e,t,n)=>{var r=n(72892)(n(57849),"DataView");e.exports=r},90145:(e,t,n)=>{var r=n(29076),o=n(76009),i=n(86992),a=n(59120),s=n(25899);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var r=n(29917),o=n(43490),i=n(64872),a=n(21744),s=n(88820);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var r=n(72892)(n(57849),"Map");e.exports=r},47059:(e,t,n)=>{var r=n(27161),o=n(65317),i=n(93297),a=n(25771),s=n(633);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var r=n(72892)(n(57849),"Promise");e.exports=r},70607:(e,t,n)=>{var r=n(72892)(n(57849),"Set");e.exports=r},75304:(e,t,n)=>{var r=n(47059),o=n(93648),i=n(56683);function a(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t{var r=n(18084),o=n(41662),i=n(97368),a=n(87454),s=n(16596),l=n(32052);function c(e){var t=this.__data__=new r(e);this.size=t.size}c.prototype.clear=o,c.prototype.delete=i,c.prototype.get=a,c.prototype.has=s,c.prototype.set=l,e.exports=c},62279:(e,t,n)=>{var r=n(57849).Symbol;e.exports=r},91385:(e,t,n)=>{var r=n(57849).Uint8Array;e.exports=r},20177:(e,t,n)=>{var r=n(72892)(n(57849),"WeakMap");e.exports=r},12539:e=>{e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},35219:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,o=0,i=[];++n{var r=n(34698);e.exports=function(e,t){return!!(null==e?0:e.length)&&r(e,t,0)>-1}},58713:e=>{e.exports=function(e,t,n){for(var r=-1,o=null==e?0:e.length;++r{var r=n(94558),o=n(38492),i=n(46296),a=n(98267),s=n(64764),l=n(34057),c=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=i(e),u=!n&&o(e),d=!n&&!u&&a(e),f=!n&&!u&&!d&&l(e),p=n||u||d||f,h=p?r(e.length,String):[],m=h.length;for(var g in e)!t&&!c.call(e,g)||p&&("length"==g||d&&("offset"==g||"parent"==g)||f&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||s(g,m))||h.push(g);return h}},40341:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,o=Array(r);++n{e.exports=function(e,t){for(var n=-1,r=t.length,o=e.length;++n{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n{e.exports=function(e){return e.split("")}},17509:(e,t,n)=>{var r=n(69519),o=n(83272);e.exports=function(e,t,n){(void 0!==n&&!o(e[t],n)||void 0===n&&!(t in e))&&r(e,t,n)}},49237:(e,t,n)=>{var r=n(69519),o=n(83272),i=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){var a=e[t];i.call(e,t)&&o(a,n)&&(void 0!==n||t in e)||r(e,t,n)}},11786:(e,t,n)=>{var r=n(83272);e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},74671:(e,t,n)=>{var r=n(81742),o=n(25484);e.exports=function(e,t){return e&&r(t,o(t),e)}},67950:(e,t,n)=>{var r=n(81742),o=n(71973);e.exports=function(e,t){return e&&r(t,o(t),e)}},69519:(e,t,n)=>{var r=n(5216);e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},1952:(e,t,n)=>{var r=n(15004),o=n(35219),i=n(49237),a=n(74671),s=n(67950),l=n(78002),c=n(10073),u=n(62877),d=n(5963),f=n(20922),p=n(99970),h=n(5313),m=n(84279),g=n(96579),v=n(93750),y=n(46296),b=n(98267),w=n(92142),_=n(95188),E=n(77411),x=n(25484),S=n(71973),C=1,k=2,O=4,T="[object Arguments]",N="[object Function]",I="[object GeneratorFunction]",P="[object Object]",R={};R[T]=R["[object Array]"]=R["[object ArrayBuffer]"]=R["[object DataView]"]=R["[object Boolean]"]=R["[object Date]"]=R["[object Float32Array]"]=R["[object Float64Array]"]=R["[object Int8Array]"]=R["[object Int16Array]"]=R["[object Int32Array]"]=R["[object Map]"]=R["[object Number]"]=R[P]=R["[object RegExp]"]=R["[object Set]"]=R["[object String]"]=R["[object Symbol]"]=R["[object Uint8Array]"]=R["[object Uint8ClampedArray]"]=R["[object Uint16Array]"]=R["[object Uint32Array]"]=!0,R["[object Error]"]=R[N]=R["[object WeakMap]"]=!1,e.exports=function e(t,n,D,A,j,M){var L,z=n&C,F=n&k,B=n&O;if(D&&(L=j?D(t,A,j,M):D(t)),void 0!==L)return L;if(!_(t))return t;var U=y(t);if(U){if(L=m(t),!z)return c(t,L)}else{var q=h(t),Z=q==N||q==I;if(b(t))return l(t,z);if(q==P||q==T||Z&&!j){if(L=F||Z?{}:v(t),!z)return F?d(t,s(L,t)):u(t,a(L,t))}else{if(!R[q])return j?t:{};L=g(t,q,z)}}M||(M=new r);var H=M.get(t);if(H)return H;M.set(t,L),E(t)?t.forEach((function(r){L.add(e(r,n,D,r,t,M))})):w(t)&&t.forEach((function(r,o){L.set(o,e(r,n,D,o,t,M))}));var W=U?void 0:(B?F?p:f:F?S:x)(t);return o(W||t,(function(r,o){W&&(r=t[o=r]),i(L,o,e(r,n,D,o,t,M))})),L}},16925:(e,t,n)=>{var r=n(95188),o=Object.create,i=function(){function e(){}return function(t){if(!r(t))return{};if(o)return o(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();e.exports=i},46067:(e,t,n)=>{var r=n(56713),o=n(79607)(r);e.exports=o},81601:e=>{e.exports=function(e,t,n,r){for(var o=e.length,i=n+(r?1:-1);r?i--:++i{var r=n(15375)();e.exports=r},56713:(e,t,n)=>{var r=n(97539),o=n(25484);e.exports=function(e,t){return e&&r(e,t,o)}},8013:(e,t,n)=>{var r=n(31534),o=n(6996);e.exports=function(e,t){for(var n=0,i=(t=r(t,e)).length;null!=e&&n{var r=n(17174),o=n(46296);e.exports=function(e,t,n){var i=t(e);return o(e)?i:r(i,n(e))}},59704:(e,t,n)=>{var r=n(62279),o=n(6419),i=n(66949),a="[object Null]",s="[object Undefined]",l=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?s:a:l&&l in Object(e)?o(e):i(e)}},61964:e=>{e.exports=function(e,t){return null!=e&&t in Object(e)}},34698:(e,t,n)=>{var r=n(81601),o=n(49690),i=n(44395);e.exports=function(e,t,n){return t===t?i(e,t,n):r(e,o,n)}},43562:(e,t,n)=>{var r=n(59704),o=n(22542),i="[object Arguments]";e.exports=function(e){return o(e)&&r(e)==i}},94193:(e,t,n)=>{var r=n(17345),o=n(22542);e.exports=function e(t,n,i,a,s){return t===n||(null==t||null==n||!o(t)&&!o(n)?t!==t&&n!==n:r(t,n,i,a,e,s))}},17345:(e,t,n)=>{var r=n(15004),o=n(89886),i=n(63811),a=n(80163),s=n(5313),l=n(46296),c=n(98267),u=n(34057),d=1,f="[object Arguments]",p="[object Array]",h="[object Object]",m=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,g,v,y){var b=l(e),w=l(t),_=b?p:s(e),E=w?p:s(t),x=(_=_==f?h:_)==h,S=(E=E==f?h:E)==h,C=_==E;if(C&&c(e)){if(!c(t))return!1;b=!0,x=!1}if(C&&!x)return y||(y=new r),b||u(e)?o(e,t,n,g,v,y):i(e,t,_,n,g,v,y);if(!(n&d)){var k=x&&m.call(e,"__wrapped__"),O=S&&m.call(t,"__wrapped__");if(k||O){var T=k?e.value():e,N=O?t.value():t;return y||(y=new r),v(T,N,n,g,y)}}return!!C&&(y||(y=new r),a(e,t,n,g,v,y))}},90247:(e,t,n)=>{var r=n(5313),o=n(22542),i="[object Map]";e.exports=function(e){return o(e)&&r(e)==i}},56358:(e,t,n)=>{var r=n(15004),o=n(94193),i=1,a=2;e.exports=function(e,t,n,s){var l=n.length,c=l,u=!s;if(null==e)return!c;for(e=Object(e);l--;){var d=n[l];if(u&&d[2]?d[1]!==e[d[0]]:!(d[0]in e))return!1}for(;++l{e.exports=function(e){return e!==e}},70270:(e,t,n)=>{var r=n(81188),o=n(28502),i=n(95188),a=n(21616),s=/^\[object .+?Constructor\]$/,l=Function.prototype,c=Object.prototype,u=l.toString,d=c.hasOwnProperty,f=RegExp("^"+u.call(d).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!i(e)||o(e))&&(r(e)?f:s).test(a(e))}},81594:(e,t,n)=>{var r=n(5313),o=n(22542),i="[object Set]";e.exports=function(e){return o(e)&&r(e)==i}},77088:(e,t,n)=>{var r=n(59704),o=n(18564),i=n(22542),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1,e.exports=function(e){return i(e)&&o(e.length)&&!!a[r(e)]}},67173:(e,t,n)=>{var r=n(61059),o=n(31451),i=n(5887),a=n(46296),s=n(90310);e.exports=function(e){return"function"==typeof e?e:null==e?i:"object"==typeof e?a(e)?o(e[0],e[1]):r(e):s(e)}},36539:(e,t,n)=>{var r=n(55241),o=n(8848),i=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return o(e);var t=[];for(var n in Object(e))i.call(e,n)&&"constructor"!=n&&t.push(n);return t}},35487:(e,t,n)=>{var r=n(95188),o=n(55241),i=n(97122),a=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return i(e);var t=o(e),n=[];for(var s in e)("constructor"!=s||!t&&a.call(e,s))&&n.push(s);return n}},61059:(e,t,n)=>{var r=n(56358),o=n(58428),i=n(41452);e.exports=function(e){var t=o(e);return 1==t.length&&t[0][2]?i(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},31451:(e,t,n)=>{var r=n(94193),o=n(63639),i=n(32183),a=n(32014),s=n(62752),l=n(41452),c=n(6996),u=1,d=2;e.exports=function(e,t){return a(e)&&s(t)?l(c(e),t):function(n){var a=o(n,e);return void 0===a&&a===t?i(n,e):r(t,a,u|d)}}},28141:(e,t,n)=>{var r=n(15004),o=n(17509),i=n(97539),a=n(13149),s=n(95188),l=n(71973),c=n(49864);e.exports=function e(t,n,u,d,f){t!==n&&i(n,(function(i,l){if(f||(f=new r),s(i))a(t,n,l,u,e,d,f);else{var p=d?d(c(t,l),i,l+"",t,n,f):void 0;void 0===p&&(p=i),o(t,l,p)}}),l)}},13149:(e,t,n)=>{var r=n(17509),o=n(78002),i=n(39044),a=n(10073),s=n(93750),l=n(38492),c=n(46296),u=n(55109),d=n(98267),f=n(81188),p=n(95188),h=n(39010),m=n(34057),g=n(49864),v=n(78226);e.exports=function(e,t,n,y,b,w,_){var E=g(e,n),x=g(t,n),S=_.get(x);if(S)r(e,n,S);else{var C=w?w(E,x,n+"",e,t,_):void 0,k=void 0===C;if(k){var O=c(x),T=!O&&d(x),N=!O&&!T&&m(x);C=x,O||T||N?c(E)?C=E:u(E)?C=a(E):T?(k=!1,C=o(x,!0)):N?(k=!1,C=i(x,!0)):C=[]:h(x)||l(x)?(C=E,l(E)?C=v(E):p(E)&&!f(E)||(C=s(x))):k=!1}k&&(_.set(x,C),b(C,x,y,w,_),_.delete(x)),r(e,n,C)}}},16076:e=>{e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},9270:(e,t,n)=>{var r=n(8013);e.exports=function(e){return function(t){return r(t,e)}}},55199:e=>{var t=Math.ceil,n=Math.max;e.exports=function(e,r,o,i){for(var a=-1,s=n(t((r-e)/(o||1)),0),l=Array(s);s--;)l[i?s:++a]=e,e+=o;return l}},42872:(e,t,n)=>{var r=n(5887),o=n(60485),i=n(37232);e.exports=function(e,t){return i(o(e,t,r),e+"")}},93848:(e,t,n)=>{var r=n(49237),o=n(31534),i=n(64764),a=n(95188),s=n(6996);e.exports=function(e,t,n,l){if(!a(e))return e;for(var c=-1,u=(t=o(t,e)).length,d=u-1,f=e;null!=f&&++c{var r=n(71715),o=n(5216),i=n(5887),a=o?function(e,t){return o(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:i;e.exports=a},12287:e=>{e.exports=function(e,t,n){var r=-1,o=e.length;t<0&&(t=-t>o?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var i=Array(o);++r{e.exports=function(e,t){for(var n=-1,r=Array(e);++n{var r=n(62279),o=n(40341),i=n(46296),a=n(36197),s=1/0,l=r?r.prototype:void 0,c=l?l.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(i(t))return o(t,e)+"";if(a(t))return c?c.call(t):"";var n=t+"";return"0"==n&&1/t==-s?"-0":n}},10480:(e,t,n)=>{var r=n(86948),o=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(o,""):e}},31702:e=>{e.exports=function(e){return function(t){return e(t)}}},28241:(e,t,n)=>{var r=n(75304),o=n(73784),i=n(58713),a=n(58024),s=n(54289),l=n(35886),c=200;e.exports=function(e,t,n){var u=-1,d=o,f=e.length,p=!0,h=[],m=h;if(n)p=!1,d=i;else if(f>=c){var g=t?null:s(e);if(g)return l(g);p=!1,d=a,m=new r}else m=t?[]:h;e:for(;++u{e.exports=function(e,t){return e.has(t)}},44499:(e,t,n)=>{var r=n(5887);e.exports=function(e){return"function"==typeof e?e:r}},31534:(e,t,n)=>{var r=n(46296),o=n(32014),i=n(18502),a=n(51001);e.exports=function(e,t){return r(e)?e:o(e,t)?[e]:i(a(e))}},94864:(e,t,n)=>{var r=n(12287);e.exports=function(e,t,n){var o=e.length;return n=void 0===n?o:n,!t&&n>=o?e:r(e,t,n)}},83226:(e,t,n)=>{var r=n(91385);e.exports=function(e){var t=new e.constructor(e.byteLength);return new r(t).set(new r(e)),t}},78002:(e,t,n)=>{e=n.nmd(e);var r=n(57849),o=t&&!t.nodeType&&t,i=o&&e&&!e.nodeType&&e,a=i&&i.exports===o?r.Buffer:void 0,s=a?a.allocUnsafe:void 0;e.exports=function(e,t){if(t)return e.slice();var n=e.length,r=s?s(n):new e.constructor(n);return e.copy(r),r}},83544:(e,t,n)=>{var r=n(83226);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}},51970:e=>{var t=/\w*$/;e.exports=function(e){var n=new e.constructor(e.source,t.exec(e));return n.lastIndex=e.lastIndex,n}},16754:(e,t,n)=>{var r=n(62279),o=r?r.prototype:void 0,i=o?o.valueOf:void 0;e.exports=function(e){return i?Object(i.call(e)):{}}},39044:(e,t,n)=>{var r=n(83226);e.exports=function(e,t){var n=t?r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}},10073:e=>{e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n{var r=n(49237),o=n(69519);e.exports=function(e,t,n,i){var a=!n;n||(n={});for(var s=-1,l=t.length;++s{var r=n(81742),o=n(2760);e.exports=function(e,t){return r(e,o(e),t)}},5963:(e,t,n)=>{var r=n(81742),o=n(68825);e.exports=function(e,t){return r(e,o(e),t)}},81401:(e,t,n)=>{var r=n(57849)["__core-js_shared__"];e.exports=r},89490:(e,t,n)=>{var r=n(42872),o=n(10335);e.exports=function(e){return r((function(t,n){var r=-1,i=n.length,a=i>1?n[i-1]:void 0,s=i>2?n[2]:void 0;for(a=e.length>3&&"function"==typeof a?(i--,a):void 0,s&&o(n[0],n[1],s)&&(a=i<3?void 0:a,i=1),t=Object(t);++r{var r=n(75345);e.exports=function(e,t){return function(n,o){if(null==n)return n;if(!r(n))return e(n,o);for(var i=n.length,a=t?i:-1,s=Object(n);(t?a--:++a{e.exports=function(e){return function(t,n,r){for(var o=-1,i=Object(t),a=r(t),s=a.length;s--;){var l=a[e?s:++o];if(!1===n(i[l],l,i))break}return t}}},57918:(e,t,n)=>{var r=n(94864),o=n(98099),i=n(92606),a=n(51001);e.exports=function(e){return function(t){t=a(t);var n=o(t)?i(t):void 0,s=n?n[0]:t.charAt(0),l=n?r(n,1).join(""):t.slice(1);return s[e]()+l}}},77529:(e,t,n)=>{var r=n(55199),o=n(10335),i=n(85850);e.exports=function(e){return function(t,n,a){return a&&"number"!=typeof a&&o(t,n,a)&&(n=a=void 0),t=i(t),void 0===n?(n=t,t=0):n=i(n),a=void 0===a?t{var r=n(57849),o=n(94100),i=n(57630),a=n(51001),s=r.isFinite,l=Math.min;e.exports=function(e){var t=Math[e];return function(e,n){if(e=i(e),(n=null==n?0:l(o(n),292))&&s(e)){var r=(a(e)+"e").split("e"),c=t(r[0]+"e"+(+r[1]+n));return+((r=(a(c)+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}},54289:(e,t,n)=>{var r=n(70607),o=n(91200),i=n(35886),a=r&&1/i(new r([,-0]))[1]==1/0?function(e){return new r(e)}:o;e.exports=a},5216:(e,t,n)=>{var r=n(72892),o=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();e.exports=o},89886:(e,t,n)=>{var r=n(75304),o=n(7138),i=n(58024),a=1,s=2;e.exports=function(e,t,n,l,c,u){var d=n&a,f=e.length,p=t.length;if(f!=p&&!(d&&p>f))return!1;var h=u.get(e),m=u.get(t);if(h&&m)return h==t&&m==e;var g=-1,v=!0,y=n&s?new r:void 0;for(u.set(e,t),u.set(t,e);++g{var r=n(62279),o=n(91385),i=n(83272),a=n(89886),s=n(69278),l=n(35886),c=1,u=2,d="[object Boolean]",f="[object Date]",p="[object Error]",h="[object Map]",m="[object Number]",g="[object RegExp]",v="[object Set]",y="[object String]",b="[object Symbol]",w="[object ArrayBuffer]",_="[object DataView]",E=r?r.prototype:void 0,x=E?E.valueOf:void 0;e.exports=function(e,t,n,r,E,S,C){switch(n){case _:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case w:return!(e.byteLength!=t.byteLength||!S(new o(e),new o(t)));case d:case f:case m:return i(+e,+t);case p:return e.name==t.name&&e.message==t.message;case g:case y:return e==t+"";case h:var k=s;case v:var O=r&c;if(k||(k=l),e.size!=t.size&&!O)return!1;var T=C.get(e);if(T)return T==t;r|=u,C.set(e,t);var N=a(k(e),k(t),r,E,S,C);return C.delete(e),N;case b:if(x)return x.call(e)==x.call(t)}return!1}},80163:(e,t,n)=>{var r=n(20922),o=1,i=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,a,s,l){var c=n&o,u=r(e),d=u.length;if(d!=r(t).length&&!c)return!1;for(var f=d;f--;){var p=u[f];if(!(c?p in t:i.call(t,p)))return!1}var h=l.get(e),m=l.get(t);if(h&&m)return h==t&&m==e;var g=!0;l.set(e,t),l.set(t,e);for(var v=c;++f{var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=r},20922:(e,t,n)=>{var r=n(49178),o=n(2760),i=n(25484);e.exports=function(e){return r(e,i,o)}},99970:(e,t,n)=>{var r=n(49178),o=n(68825),i=n(71973);e.exports=function(e){return r(e,i,o)}},89511:(e,t,n)=>{var r=n(50565);e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},58428:(e,t,n)=>{var r=n(62752),o=n(25484);e.exports=function(e){for(var t=o(e),n=t.length;n--;){var i=t[n],a=e[i];t[n]=[i,a,r(a)]}return t}},72892:(e,t,n)=>{var r=n(70270),o=n(97453);e.exports=function(e,t){var n=o(e,t);return r(n)?n:void 0}},36842:(e,t,n)=>{var r=n(38007)(Object.getPrototypeOf,Object);e.exports=r},6419:(e,t,n)=>{var r=n(62279),o=Object.prototype,i=o.hasOwnProperty,a=o.toString,s=r?r.toStringTag:void 0;e.exports=function(e){var t=i.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(l){}var o=a.call(e);return r&&(t?e[s]=n:delete e[s]),o}},2760:(e,t,n)=>{var r=n(82169),o=n(92128),i=Object.prototype.propertyIsEnumerable,a=Object.getOwnPropertySymbols,s=a?function(e){return null==e?[]:(e=Object(e),r(a(e),(function(t){return i.call(e,t)})))}:o;e.exports=s},68825:(e,t,n)=>{var r=n(17174),o=n(36842),i=n(2760),a=n(92128),s=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)r(t,i(e)),e=o(e);return t}:a;e.exports=s},5313:(e,t,n)=>{var r=n(22849),o=n(44086),i=n(42115),a=n(70607),s=n(20177),l=n(59704),c=n(21616),u="[object Map]",d="[object Promise]",f="[object Set]",p="[object WeakMap]",h="[object DataView]",m=c(r),g=c(o),v=c(i),y=c(a),b=c(s),w=l;(r&&w(new r(new ArrayBuffer(1)))!=h||o&&w(new o)!=u||i&&w(i.resolve())!=d||a&&w(new a)!=f||s&&w(new s)!=p)&&(w=function(e){var t=l(e),n="[object Object]"==t?e.constructor:void 0,r=n?c(n):"";if(r)switch(r){case m:return h;case g:return u;case v:return d;case y:return f;case b:return p}return t}),e.exports=w},97453:e=>{e.exports=function(e,t){return null==e?void 0:e[t]}},5538:(e,t,n)=>{var r=n(31534),o=n(38492),i=n(46296),a=n(64764),s=n(18564),l=n(6996);e.exports=function(e,t,n){for(var c=-1,u=(t=r(t,e)).length,d=!1;++c{var t=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");e.exports=function(e){return t.test(e)}},29076:(e,t,n)=>{var r=n(18501);e.exports=function(){this.__data__=r?r(null):{},this.size=0}},76009:e=>{e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},86992:(e,t,n)=>{var r=n(18501),o="__lodash_hash_undefined__",i=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return n===o?void 0:n}return i.call(t,e)?t[e]:void 0}},59120:(e,t,n)=>{var r=n(18501),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:o.call(t,e)}},25899:(e,t,n)=>{var r=n(18501),o="__lodash_hash_undefined__";e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?o:t,this}},84279:e=>{var t=Object.prototype.hasOwnProperty;e.exports=function(e){var n=e.length,r=new e.constructor(n);return n&&"string"==typeof e[0]&&t.call(e,"index")&&(r.index=e.index,r.input=e.input),r}},96579:(e,t,n)=>{var r=n(83226),o=n(83544),i=n(51970),a=n(16754),s=n(39044),l="[object Boolean]",c="[object Date]",u="[object Map]",d="[object Number]",f="[object RegExp]",p="[object Set]",h="[object String]",m="[object Symbol]",g="[object ArrayBuffer]",v="[object DataView]",y="[object Float32Array]",b="[object Float64Array]",w="[object Int8Array]",_="[object Int16Array]",E="[object Int32Array]",x="[object Uint8Array]",S="[object Uint8ClampedArray]",C="[object Uint16Array]",k="[object Uint32Array]";e.exports=function(e,t,n){var O=e.constructor;switch(t){case g:return r(e);case l:case c:return new O(+e);case v:return o(e,n);case y:case b:case w:case _:case E:case x:case S:case C:case k:return s(e,n);case u:return new O;case d:case h:return new O(e);case f:return i(e);case p:return new O;case m:return a(e)}}},93750:(e,t,n)=>{var r=n(16925),o=n(36842),i=n(55241);e.exports=function(e){return"function"!=typeof e.constructor||i(e)?{}:r(o(e))}},64764:e=>{var t=9007199254740991,n=/^(?:0|[1-9]\d*)$/;e.exports=function(e,r){var o=typeof e;return!!(r=null==r?t:r)&&("number"==o||"symbol"!=o&&n.test(e))&&e>-1&&e%1==0&&e{var r=n(83272),o=n(75345),i=n(64764),a=n(95188);e.exports=function(e,t,n){if(!a(n))return!1;var s=typeof t;return!!("number"==s?o(n)&&i(t,n.length):"string"==s&&t in n)&&r(n[t],e)}},32014:(e,t,n)=>{var r=n(46296),o=n(36197),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!o(e))||(a.test(e)||!i.test(e)||null!=t&&e in Object(t))}},50565:e=>{e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},28502:(e,t,n)=>{var r=n(81401),o=function(){var e=/[^.]+$/.exec(r&&r.keys&&r.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();e.exports=function(e){return!!o&&o in e}},55241:e=>{var t=Object.prototype;e.exports=function(e){var n=e&&e.constructor;return e===("function"==typeof n&&n.prototype||t)}},62752:(e,t,n)=>{var r=n(95188);e.exports=function(e){return e===e&&!r(e)}},29917:e=>{e.exports=function(){this.__data__=[],this.size=0}},43490:(e,t,n)=>{var r=n(11786),o=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0)&&(n==t.length-1?t.pop():o.call(t,n,1),--this.size,!0)}},64872:(e,t,n)=>{var r=n(11786);e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},21744:(e,t,n)=>{var r=n(11786);e.exports=function(e){return r(this.__data__,e)>-1}},88820:(e,t,n)=>{var r=n(11786);e.exports=function(e,t){var n=this.__data__,o=r(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}},27161:(e,t,n)=>{var r=n(90145),o=n(18084),i=n(44086);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},65317:(e,t,n)=>{var r=n(89511);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},93297:(e,t,n)=>{var r=n(89511);e.exports=function(e){return r(this,e).get(e)}},25771:(e,t,n)=>{var r=n(89511);e.exports=function(e){return r(this,e).has(e)}},633:(e,t,n)=>{var r=n(89511);e.exports=function(e,t){var n=r(this,e),o=n.size;return n.set(e,t),this.size+=n.size==o?0:1,this}},69278:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}},41452:e=>{e.exports=function(e,t){return function(n){return null!=n&&(n[e]===t&&(void 0!==t||e in Object(n)))}}},75103:(e,t,n)=>{var r=n(9161),o=500;e.exports=function(e){var t=r(e,(function(e){return n.size===o&&n.clear(),e})),n=t.cache;return t}},18501:(e,t,n)=>{var r=n(72892)(Object,"create");e.exports=r},8848:(e,t,n)=>{var r=n(38007)(Object.keys,Object);e.exports=r},97122:e=>{e.exports=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}},24542:(e,t,n)=>{e=n.nmd(e);var r=n(46099),o=t&&!t.nodeType&&t,i=o&&e&&!e.nodeType&&e,a=i&&i.exports===o&&r.process,s=function(){try{var e=i&&i.require&&i.require("util").types;return e||a&&a.binding&&a.binding("util")}catch(t){}}();e.exports=s},66949:e=>{var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},38007:e=>{e.exports=function(e,t){return function(n){return e(t(n))}}},60485:(e,t,n)=>{var r=n(12539),o=Math.max;e.exports=function(e,t,n){return t=o(void 0===t?e.length-1:t,0),function(){for(var i=arguments,a=-1,s=o(i.length-t,0),l=Array(s);++a{var r=n(46099),o="object"==typeof self&&self&&self.Object===Object&&self,i=r||o||Function("return this")();e.exports=i},49864:e=>{e.exports=function(e,t){if(("constructor"!==t||"function"!==typeof e[t])&&"__proto__"!=t)return e[t]}},93648:e=>{var t="__lodash_hash_undefined__";e.exports=function(e){return this.__data__.set(e,t),this}},56683:e=>{e.exports=function(e){return this.__data__.has(e)}},35886:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}},37232:(e,t,n)=>{var r=n(24609),o=n(26552)(r);e.exports=o},26552:e=>{var t=800,n=16,r=Date.now;e.exports=function(e){var o=0,i=0;return function(){var a=r(),s=n-(a-i);if(i=a,s>0){if(++o>=t)return arguments[0]}else o=0;return e.apply(void 0,arguments)}}},41662:(e,t,n)=>{var r=n(18084);e.exports=function(){this.__data__=new r,this.size=0}},97368:e=>{e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},87454:e=>{e.exports=function(e){return this.__data__.get(e)}},16596:e=>{e.exports=function(e){return this.__data__.has(e)}},32052:(e,t,n)=>{var r=n(18084),o=n(44086),i=n(47059),a=200;e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var s=n.__data__;if(!o||s.length{e.exports=function(e,t,n){for(var r=n-1,o=e.length;++r{var r=n(58961),o=n(98099),i=n(55412);e.exports=function(e){return o(e)?i(e):r(e)}},18502:(e,t,n)=>{var r=n(75103),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,a=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(o,(function(e,n,r,o){t.push(r?o.replace(i,"$1"):n||e)})),t}));e.exports=a},6996:(e,t,n)=>{var r=n(36197),o=1/0;e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-o?"-0":t}},21616:e=>{var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(n){}try{return e+""}catch(n){}}return""}},86948:e=>{var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},55412:e=>{var t="\\ud800-\\udfff",n="["+t+"]",r="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",o="\\ud83c[\\udffb-\\udfff]",i="[^"+t+"]",a="(?:\\ud83c[\\udde6-\\uddff]){2}",s="[\\ud800-\\udbff][\\udc00-\\udfff]",l="(?:"+r+"|"+o+")"+"?",c="[\\ufe0e\\ufe0f]?",u=c+l+("(?:\\u200d(?:"+[i,a,s].join("|")+")"+c+l+")*"),d="(?:"+[i+r+"?",r,a,s,n].join("|")+")",f=RegExp(o+"(?="+o+")|"+d+u,"g");e.exports=function(e){return e.match(f)||[]}},6381:(e,t,n)=>{var r=n(51001),o=n(17445);e.exports=function(e){return o(r(e).toLowerCase())}},63585:(e,t,n)=>{var r=n(1952),o=1,i=4;e.exports=function(e){return r(e,o|i)}},71715:e=>{e.exports=function(e){return function(){return e}}},57002:(e,t,n)=>{var r=n(95188),o=n(44864),i=n(57630),a="Expected a function",s=Math.max,l=Math.min;e.exports=function(e,t,n){var c,u,d,f,p,h,m=0,g=!1,v=!1,y=!0;if("function"!=typeof e)throw new TypeError(a);function b(t){var n=c,r=u;return c=u=void 0,m=t,f=e.apply(r,n)}function w(e){var n=e-h;return void 0===h||n>=t||n<0||v&&e-m>=d}function _(){var e=o();if(w(e))return E(e);p=setTimeout(_,function(e){var n=t-(e-h);return v?l(n,d-(e-m)):n}(e))}function E(e){return p=void 0,y&&c?b(e):(c=u=void 0,f)}function x(){var e=o(),n=w(e);if(c=arguments,u=this,h=e,n){if(void 0===p)return function(e){return m=e,p=setTimeout(_,t),g?b(e):f}(h);if(v)return clearTimeout(p),p=setTimeout(_,t),b(h)}return void 0===p&&(p=setTimeout(_,t)),f}return t=i(t)||0,r(n)&&(g=!!n.leading,d=(v="maxWait"in n)?s(i(n.maxWait)||0,t):d,y="trailing"in n?!!n.trailing:y),x.cancel=function(){void 0!==p&&clearTimeout(p),m=0,c=h=u=p=void 0},x.flush=function(){return void 0===p?f:E(o())},x}},84142:(e,t,n)=>{e.exports=n(27663)},83272:e=>{e.exports=function(e,t){return e===t||e!==e&&t!==t}},43680:(e,t,n)=>{var r=n(51001),o=/[\\^$.*+?()[\]{}|]/g,i=RegExp(o.source);e.exports=function(e){return(e=r(e))&&i.test(e)?e.replace(o,"\\$&"):e}},27663:(e,t,n)=>{var r=n(35219),o=n(46067),i=n(44499),a=n(46296);e.exports=function(e,t){return(a(e)?r:o)(e,i(t))}},63639:(e,t,n)=>{var r=n(8013);e.exports=function(e,t,n){var o=null==e?void 0:r(e,t);return void 0===o?n:o}},32183:(e,t,n)=>{var r=n(61964),o=n(5538);e.exports=function(e,t){return null!=e&&o(e,t,r)}},5887:e=>{e.exports=function(e){return e}},38492:(e,t,n)=>{var r=n(43562),o=n(22542),i=Object.prototype,a=i.hasOwnProperty,s=i.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(e){return o(e)&&a.call(e,"callee")&&!s.call(e,"callee")};e.exports=l},46296:e=>{var t=Array.isArray;e.exports=t},75345:(e,t,n)=>{var r=n(81188),o=n(18564);e.exports=function(e){return null!=e&&o(e.length)&&!r(e)}},55109:(e,t,n)=>{var r=n(75345),o=n(22542);e.exports=function(e){return o(e)&&r(e)}},98267:(e,t,n)=>{e=n.nmd(e);var r=n(57849),o=n(53388),i=t&&!t.nodeType&&t,a=i&&e&&!e.nodeType&&e,s=a&&a.exports===i?r.Buffer:void 0,l=(s?s.isBuffer:void 0)||o;e.exports=l},85198:(e,t,n)=>{var r=n(36539),o=n(5313),i=n(38492),a=n(46296),s=n(75345),l=n(98267),c=n(55241),u=n(34057),d="[object Map]",f="[object Set]",p=Object.prototype.hasOwnProperty;e.exports=function(e){if(null==e)return!0;if(s(e)&&(a(e)||"string"==typeof e||"function"==typeof e.splice||l(e)||u(e)||i(e)))return!e.length;var t=o(e);if(t==d||t==f)return!e.size;if(c(e))return!r(e).length;for(var n in e)if(p.call(e,n))return!1;return!0}},85690:(e,t,n)=>{var r=n(94193);e.exports=function(e,t){return r(e,t)}},81188:(e,t,n)=>{var r=n(59704),o=n(95188),i="[object AsyncFunction]",a="[object Function]",s="[object GeneratorFunction]",l="[object Proxy]";e.exports=function(e){if(!o(e))return!1;var t=r(e);return t==a||t==s||t==i||t==l}},18564:e=>{var t=9007199254740991;e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=t}},92142:(e,t,n)=>{var r=n(90247),o=n(31702),i=n(24542),a=i&&i.isMap,s=a?o(a):r;e.exports=s},95188:e=>{e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},22542:e=>{e.exports=function(e){return null!=e&&"object"==typeof e}},39010:(e,t,n)=>{var r=n(59704),o=n(36842),i=n(22542),a="[object Object]",s=Function.prototype,l=Object.prototype,c=s.toString,u=l.hasOwnProperty,d=c.call(Object);e.exports=function(e){if(!i(e)||r(e)!=a)return!1;var t=o(e);if(null===t)return!0;var n=u.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&c.call(n)==d}},77411:(e,t,n)=>{var r=n(81594),o=n(31702),i=n(24542),a=i&&i.isSet,s=a?o(a):r;e.exports=s},36197:(e,t,n)=>{var r=n(59704),o=n(22542),i="[object Symbol]";e.exports=function(e){return"symbol"==typeof e||o(e)&&r(e)==i}},34057:(e,t,n)=>{var r=n(77088),o=n(31702),i=n(24542),a=i&&i.isTypedArray,s=a?o(a):r;e.exports=s},25484:(e,t,n)=>{var r=n(34087),o=n(36539),i=n(75345);e.exports=function(e){return i(e)?r(e):o(e)}},71973:(e,t,n)=>{var r=n(34087),o=n(35487),i=n(75345);e.exports=function(e){return i(e)?r(e,!0):o(e)}},84433:function(e,t,n){var r;e=n.nmd(e),function(){var o,i=200,a="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",s="Expected a function",l="Invalid `variable` option passed into `_.template`",c="__lodash_hash_undefined__",u=500,d="__lodash_placeholder__",f=1,p=2,h=4,m=1,g=2,v=1,y=2,b=4,w=8,_=16,E=32,x=64,S=128,C=256,k=512,O=30,T="...",N=800,I=16,P=1,R=2,D=1/0,A=9007199254740991,j=17976931348623157e292,M=NaN,L=4294967295,z=L-1,F=L>>>1,B=[["ary",S],["bind",v],["bindKey",y],["curry",w],["curryRight",_],["flip",k],["partial",E],["partialRight",x],["rearg",C]],U="[object Arguments]",q="[object Array]",Z="[object AsyncFunction]",H="[object Boolean]",W="[object Date]",V="[object DOMException]",G="[object Error]",$="[object Function]",K="[object GeneratorFunction]",Y="[object Map]",Q="[object Number]",J="[object Null]",X="[object Object]",ee="[object Promise]",te="[object Proxy]",ne="[object RegExp]",re="[object Set]",oe="[object String]",ie="[object Symbol]",ae="[object Undefined]",se="[object WeakMap]",le="[object WeakSet]",ce="[object ArrayBuffer]",ue="[object DataView]",de="[object Float32Array]",fe="[object Float64Array]",pe="[object Int8Array]",he="[object Int16Array]",me="[object Int32Array]",ge="[object Uint8Array]",ve="[object Uint8ClampedArray]",ye="[object Uint16Array]",be="[object Uint32Array]",we=/\b__p \+= '';/g,_e=/\b(__p \+=) '' \+/g,Ee=/(__e\(.*?\)|\b__t\)) \+\n'';/g,xe=/&(?:amp|lt|gt|quot|#39);/g,Se=/[&<>"']/g,Ce=RegExp(xe.source),ke=RegExp(Se.source),Oe=/<%-([\s\S]+?)%>/g,Te=/<%([\s\S]+?)%>/g,Ne=/<%=([\s\S]+?)%>/g,Ie=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Pe=/^\w*$/,Re=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,De=/[\\^$.*+?()[\]{}|]/g,Ae=RegExp(De.source),je=/^\s+/,Me=/\s/,Le=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ze=/\{\n\/\* \[wrapped with (.+)\] \*/,Fe=/,? & /,Be=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Ue=/[()=,{}\[\]\/\s]/,qe=/\\(\\)?/g,Ze=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,He=/\w*$/,We=/^[-+]0x[0-9a-f]+$/i,Ve=/^0b[01]+$/i,Ge=/^\[object .+?Constructor\]$/,$e=/^0o[0-7]+$/i,Ke=/^(?:0|[1-9]\d*)$/,Ye=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Qe=/($^)/,Je=/['\n\r\u2028\u2029\\]/g,Xe="\\ud800-\\udfff",et="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",tt="\\u2700-\\u27bf",nt="a-z\\xdf-\\xf6\\xf8-\\xff",rt="A-Z\\xc0-\\xd6\\xd8-\\xde",ot="\\ufe0e\\ufe0f",it="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",at="['\u2019]",st="["+Xe+"]",lt="["+it+"]",ct="["+et+"]",ut="\\d+",dt="["+tt+"]",ft="["+nt+"]",pt="[^"+Xe+it+ut+tt+nt+rt+"]",ht="\\ud83c[\\udffb-\\udfff]",mt="[^"+Xe+"]",gt="(?:\\ud83c[\\udde6-\\uddff]){2}",vt="[\\ud800-\\udbff][\\udc00-\\udfff]",yt="["+rt+"]",bt="\\u200d",wt="(?:"+ft+"|"+pt+")",_t="(?:"+yt+"|"+pt+")",Et="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",xt="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",St="(?:"+ct+"|"+ht+")"+"?",Ct="["+ot+"]?",kt=Ct+St+("(?:"+bt+"(?:"+[mt,gt,vt].join("|")+")"+Ct+St+")*"),Ot="(?:"+[dt,gt,vt].join("|")+")"+kt,Tt="(?:"+[mt+ct+"?",ct,gt,vt,st].join("|")+")",Nt=RegExp(at,"g"),It=RegExp(ct,"g"),Pt=RegExp(ht+"(?="+ht+")|"+Tt+kt,"g"),Rt=RegExp([yt+"?"+ft+"+"+Et+"(?="+[lt,yt,"$"].join("|")+")",_t+"+"+xt+"(?="+[lt,yt+wt,"$"].join("|")+")",yt+"?"+wt+"+"+Et,yt+"+"+xt,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",ut,Ot].join("|"),"g"),Dt=RegExp("["+bt+Xe+et+ot+"]"),At=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,jt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Mt=-1,Lt={};Lt[de]=Lt[fe]=Lt[pe]=Lt[he]=Lt[me]=Lt[ge]=Lt[ve]=Lt[ye]=Lt[be]=!0,Lt[U]=Lt[q]=Lt[ce]=Lt[H]=Lt[ue]=Lt[W]=Lt[G]=Lt[$]=Lt[Y]=Lt[Q]=Lt[X]=Lt[ne]=Lt[re]=Lt[oe]=Lt[se]=!1;var zt={};zt[U]=zt[q]=zt[ce]=zt[ue]=zt[H]=zt[W]=zt[de]=zt[fe]=zt[pe]=zt[he]=zt[me]=zt[Y]=zt[Q]=zt[X]=zt[ne]=zt[re]=zt[oe]=zt[ie]=zt[ge]=zt[ve]=zt[ye]=zt[be]=!0,zt[G]=zt[$]=zt[se]=!1;var Ft={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Bt=parseFloat,Ut=parseInt,qt="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,Zt="object"==typeof self&&self&&self.Object===Object&&self,Ht=qt||Zt||Function("return this")(),Wt=t&&!t.nodeType&&t,Vt=Wt&&e&&!e.nodeType&&e,Gt=Vt&&Vt.exports===Wt,$t=Gt&&qt.process,Kt=function(){try{var e=Vt&&Vt.require&&Vt.require("util").types;return e||$t&&$t.binding&&$t.binding("util")}catch(t){}}(),Yt=Kt&&Kt.isArrayBuffer,Qt=Kt&&Kt.isDate,Jt=Kt&&Kt.isMap,Xt=Kt&&Kt.isRegExp,en=Kt&&Kt.isSet,tn=Kt&&Kt.isTypedArray;function nn(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function rn(e,t,n,r){for(var o=-1,i=null==e?0:e.length;++o-1}function un(e,t,n){for(var r=-1,o=null==e?0:e.length;++r-1;);return n}function Dn(e,t){for(var n=e.length;n--&&bn(t,e[n],0)>-1;);return n}var An=Sn({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),jn=Sn({"&":"&","<":"<",">":">",'"':""","'":"'"});function Mn(e){return"\\"+Ft[e]}function Ln(e){return Dt.test(e)}function zn(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function Fn(e,t){return function(n){return e(t(n))}}function Bn(e,t){for(var n=-1,r=e.length,o=0,i=[];++n",""":'"',"'":"'"});var Gn=function e(t){var n=(t=null==t?Ht:Gn.defaults(Ht.Object(),t,Gn.pick(Ht,jt))).Array,r=t.Date,Me=t.Error,Xe=t.Function,et=t.Math,tt=t.Object,nt=t.RegExp,rt=t.String,ot=t.TypeError,it=n.prototype,at=Xe.prototype,st=tt.prototype,lt=t["__core-js_shared__"],ct=at.toString,ut=st.hasOwnProperty,dt=0,ft=function(){var e=/[^.]+$/.exec(lt&<.keys&<.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),pt=st.toString,ht=ct.call(tt),mt=Ht._,gt=nt("^"+ct.call(ut).replace(De,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),vt=Gt?t.Buffer:o,yt=t.Symbol,bt=t.Uint8Array,wt=vt?vt.allocUnsafe:o,_t=Fn(tt.getPrototypeOf,tt),Et=tt.create,xt=st.propertyIsEnumerable,St=it.splice,Ct=yt?yt.isConcatSpreadable:o,kt=yt?yt.iterator:o,Ot=yt?yt.toStringTag:o,Tt=function(){try{var e=Ui(tt,"defineProperty");return e({},"",{}),e}catch(t){}}(),Pt=t.clearTimeout!==Ht.clearTimeout&&t.clearTimeout,Dt=r&&r.now!==Ht.Date.now&&r.now,Ft=t.setTimeout!==Ht.setTimeout&&t.setTimeout,qt=et.ceil,Zt=et.floor,Wt=tt.getOwnPropertySymbols,Vt=vt?vt.isBuffer:o,$t=t.isFinite,Kt=it.join,gn=Fn(tt.keys,tt),Sn=et.max,$n=et.min,Kn=r.now,Yn=t.parseInt,Qn=et.random,Jn=it.reverse,Xn=Ui(t,"DataView"),er=Ui(t,"Map"),tr=Ui(t,"Promise"),nr=Ui(t,"Set"),rr=Ui(t,"WeakMap"),or=Ui(tt,"create"),ir=rr&&new rr,ar={},sr=pa(Xn),lr=pa(er),cr=pa(tr),ur=pa(nr),dr=pa(rr),fr=yt?yt.prototype:o,pr=fr?fr.valueOf:o,hr=fr?fr.toString:o;function mr(e){if(Is(e)&&!bs(e)&&!(e instanceof br)){if(e instanceof yr)return e;if(ut.call(e,"__wrapped__"))return ha(e)}return new yr(e)}var gr=function(){function e(){}return function(t){if(!Ns(t))return{};if(Et)return Et(t);e.prototype=t;var n=new e;return e.prototype=o,n}}();function vr(){}function yr(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=o}function br(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=L,this.__views__=[]}function wr(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t=t?e:t)),e}function Lr(e,t,n,r,i,a){var s,l=t&f,c=t&p,u=t&h;if(n&&(s=i?n(e,r,i,a):n(e)),s!==o)return s;if(!Ns(e))return e;var d=bs(e);if(d){if(s=function(e){var t=e.length,n=new e.constructor(t);t&&"string"==typeof e[0]&&ut.call(e,"index")&&(n.index=e.index,n.input=e.input);return n}(e),!l)return ii(e,s)}else{var m=Hi(e),g=m==$||m==K;if(xs(e))return Xo(e,l);if(m==X||m==U||g&&!i){if(s=c||g?{}:Vi(e),!l)return c?function(e,t){return ai(e,Zi(e),t)}(e,function(e,t){return e&&ai(t,sl(t),e)}(s,e)):function(e,t){return ai(e,qi(e),t)}(e,Dr(s,e))}else{if(!zt[m])return i?e:{};s=function(e,t,n){var r=e.constructor;switch(t){case ce:return ei(e);case H:case W:return new r(+e);case ue:return function(e,t){var n=t?ei(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case de:case fe:case pe:case he:case me:case ge:case ve:case ye:case be:return ti(e,n);case Y:return new r;case Q:case oe:return new r(e);case ne:return function(e){var t=new e.constructor(e.source,He.exec(e));return t.lastIndex=e.lastIndex,t}(e);case re:return new r;case ie:return o=e,pr?tt(pr.call(o)):{}}var o}(e,m,l)}}a||(a=new Sr);var v=a.get(e);if(v)return v;a.set(e,s),js(e)?e.forEach((function(r){s.add(Lr(r,t,n,r,e,a))})):Ps(e)&&e.forEach((function(r,o){s.set(o,Lr(r,t,n,o,e,a))}));var y=d?o:(u?c?Ai:Di:c?sl:al)(e);return on(y||e,(function(r,o){y&&(r=e[o=r]),Ir(s,o,Lr(r,t,n,o,e,a))})),s}function zr(e,t,n){var r=n.length;if(null==e)return!r;for(e=tt(e);r--;){var i=n[r],a=t[i],s=e[i];if(s===o&&!(i in e)||!a(s))return!1}return!0}function Fr(e,t,n){if("function"!=typeof e)throw new ot(s);return aa((function(){e.apply(o,n)}),t)}function Br(e,t,n,r){var o=-1,a=cn,s=!0,l=e.length,c=[],u=t.length;if(!l)return c;n&&(t=dn(t,Nn(n))),r?(a=un,s=!1):t.length>=i&&(a=Pn,s=!1,t=new xr(t));e:for(;++o-1},_r.prototype.set=function(e,t){var n=this.__data__,r=Pr(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Er.prototype.clear=function(){this.size=0,this.__data__={hash:new wr,map:new(er||_r),string:new wr}},Er.prototype.delete=function(e){var t=Fi(this,e).delete(e);return this.size-=t?1:0,t},Er.prototype.get=function(e){return Fi(this,e).get(e)},Er.prototype.has=function(e){return Fi(this,e).has(e)},Er.prototype.set=function(e,t){var n=Fi(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},xr.prototype.add=xr.prototype.push=function(e){return this.__data__.set(e,c),this},xr.prototype.has=function(e){return this.__data__.has(e)},Sr.prototype.clear=function(){this.__data__=new _r,this.size=0},Sr.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Sr.prototype.get=function(e){return this.__data__.get(e)},Sr.prototype.has=function(e){return this.__data__.has(e)},Sr.prototype.set=function(e,t){var n=this.__data__;if(n instanceof _r){var r=n.__data__;if(!er||r.length0&&n(s)?t>1?Vr(s,t-1,n,r,o):fn(o,s):r||(o[o.length]=s)}return o}var Gr=ui(),$r=ui(!0);function Kr(e,t){return e&&Gr(e,t,al)}function Yr(e,t){return e&&$r(e,t,al)}function Qr(e,t){return ln(t,(function(t){return ks(e[t])}))}function Jr(e,t){for(var n=0,r=(t=Ko(t,e)).length;null!=e&&nt}function no(e,t){return null!=e&&ut.call(e,t)}function ro(e,t){return null!=e&&t in tt(e)}function oo(e,t,r){for(var i=r?un:cn,a=e[0].length,s=e.length,l=s,c=n(s),u=1/0,d=[];l--;){var f=e[l];l&&t&&(f=dn(f,Nn(t))),u=$n(f.length,u),c[l]=!r&&(t||a>=120&&f.length>=120)?new xr(l&&f):o}f=e[0];var p=-1,h=c[0];e:for(;++p=s?l:l*("desc"==n[r]?-1:1)}return e.index-t.index}(e,t,n)}))}function _o(e,t,n){for(var r=-1,o=t.length,i={};++r-1;)s!==e&&St.call(s,l,1),St.call(e,l,1);return e}function xo(e,t){for(var n=e?t.length:0,r=n-1;n--;){var o=t[n];if(n==r||o!==i){var i=o;$i(o)?St.call(e,o,1):Uo(e,o)}}return e}function So(e,t){return e+Zt(Qn()*(t-e+1))}function Co(e,t){var n="";if(!e||t<1||t>A)return n;do{t%2&&(n+=e),(t=Zt(t/2))&&(e+=e)}while(t);return n}function ko(e,t){return sa(na(e,t,Rl),e+"")}function Oo(e){return kr(ml(e))}function To(e,t){var n=ml(e);return ua(n,Mr(t,0,n.length))}function No(e,t,n,r){if(!Ns(e))return e;for(var i=-1,a=(t=Ko(t,e)).length,s=a-1,l=e;null!=l&&++ii?0:i+t),(r=r>i?i:r)<0&&(r+=i),i=t>r?0:r-t>>>0,t>>>=0;for(var a=n(i);++o>>1,a=e[i];null!==a&&!Ls(a)&&(n?a<=t:a=i){var u=t?null:Ci(e);if(u)return Un(u);s=!1,o=Pn,c=new xr}else c=t?[]:l;e:for(;++r=r?e:Do(e,t,n)}var Jo=Pt||function(e){return Ht.clearTimeout(e)};function Xo(e,t){if(t)return e.slice();var n=e.length,r=wt?wt(n):new e.constructor(n);return e.copy(r),r}function ei(e){var t=new e.constructor(e.byteLength);return new bt(t).set(new bt(e)),t}function ti(e,t){var n=t?ei(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function ni(e,t){if(e!==t){var n=e!==o,r=null===e,i=e===e,a=Ls(e),s=t!==o,l=null===t,c=t===t,u=Ls(t);if(!l&&!u&&!a&&e>t||a&&s&&c&&!l&&!u||r&&s&&c||!n&&c||!i)return 1;if(!r&&!a&&!u&&e1?n[i-1]:o,s=i>2?n[2]:o;for(a=e.length>3&&"function"==typeof a?(i--,a):o,s&&Ki(n[0],n[1],s)&&(a=i<3?o:a,i=1),t=tt(t);++r-1?i[a?t[s]:s]:o}}function mi(e){return Ri((function(t){var n=t.length,r=n,i=yr.prototype.thru;for(e&&t.reverse();r--;){var a=t[r];if("function"!=typeof a)throw new ot(s);if(i&&!l&&"wrapper"==Mi(a))var l=new yr([],!0)}for(r=l?r:n;++r1&&w.reverse(),f&&ul))return!1;var u=a.get(e),d=a.get(t);if(u&&d)return u==t&&d==e;var f=-1,p=!0,h=n&g?new xr:o;for(a.set(e,t),a.set(t,e);++f-1&&e%1==0&&e1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(Le,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return on(B,(function(n){var r="_."+n[0];t&n[1]&&!cn(e,r)&&e.push(r)})),e.sort()}(function(e){var t=e.match(ze);return t?t[1].split(Fe):[]}(r),n)))}function ca(e){var t=0,n=0;return function(){var r=Kn(),i=I-(r-n);if(n=r,i>0){if(++t>=N)return arguments[0]}else t=0;return e.apply(o,arguments)}}function ua(e,t){var n=-1,r=e.length,i=r-1;for(t=t===o?r:t;++n1?e[t-1]:o;return n="function"==typeof n?(e.pop(),n):o,Aa(e,n)}));function Ua(e){var t=mr(e);return t.__chain__=!0,t}function qa(e,t){return t(e)}var Za=Ri((function(e){var t=e.length,n=t?e[0]:0,r=this.__wrapped__,i=function(t){return jr(t,e)};return!(t>1||this.__actions__.length)&&r instanceof br&&$i(n)?((r=r.slice(n,+n+(t?1:0))).__actions__.push({func:qa,args:[i],thisArg:o}),new yr(r,this.__chain__).thru((function(e){return t&&!e.length&&e.push(o),e}))):this.thru(i)}));var Ha=si((function(e,t,n){ut.call(e,n)?++e[n]:Ar(e,n,1)}));var Wa=hi(ya),Va=hi(ba);function Ga(e,t){return(bs(e)?on:Ur)(e,zi(t,3))}function $a(e,t){return(bs(e)?an:qr)(e,zi(t,3))}var Ka=si((function(e,t,n){ut.call(e,n)?e[n].push(t):Ar(e,n,[t])}));var Ya=ko((function(e,t,r){var o=-1,i="function"==typeof t,a=_s(e)?n(e.length):[];return Ur(e,(function(e){a[++o]=i?nn(t,e,r):io(e,t,r)})),a})),Qa=si((function(e,t,n){Ar(e,n,t)}));function Ja(e,t){return(bs(e)?dn:mo)(e,zi(t,3))}var Xa=si((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]}));var es=ko((function(e,t){if(null==e)return[];var n=t.length;return n>1&&Ki(e,t[0],t[1])?t=[]:n>2&&Ki(t[0],t[1],t[2])&&(t=[t[0]]),wo(e,Vr(t,1),[])})),ts=Dt||function(){return Ht.Date.now()};function ns(e,t,n){return t=n?o:t,t=e&&null==t?e.length:t,Oi(e,S,o,o,o,o,t)}function rs(e,t){var n;if("function"!=typeof t)throw new ot(s);return e=Zs(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=o),n}}var os=ko((function(e,t,n){var r=v;if(n.length){var o=Bn(n,Li(os));r|=E}return Oi(e,r,t,n,o)})),is=ko((function(e,t,n){var r=v|y;if(n.length){var o=Bn(n,Li(is));r|=E}return Oi(t,r,e,n,o)}));function as(e,t,n){var r,i,a,l,c,u,d=0,f=!1,p=!1,h=!0;if("function"!=typeof e)throw new ot(s);function m(t){var n=r,a=i;return r=i=o,d=t,l=e.apply(a,n)}function g(e){var n=e-u;return u===o||n>=t||n<0||p&&e-d>=a}function v(){var e=ts();if(g(e))return y(e);c=aa(v,function(e){var n=t-(e-u);return p?$n(n,a-(e-d)):n}(e))}function y(e){return c=o,h&&r?m(e):(r=i=o,l)}function b(){var e=ts(),n=g(e);if(r=arguments,i=this,u=e,n){if(c===o)return function(e){return d=e,c=aa(v,t),f?m(e):l}(u);if(p)return Jo(c),c=aa(v,t),m(u)}return c===o&&(c=aa(v,t)),l}return t=Ws(t)||0,Ns(n)&&(f=!!n.leading,a=(p="maxWait"in n)?Sn(Ws(n.maxWait)||0,t):a,h="trailing"in n?!!n.trailing:h),b.cancel=function(){c!==o&&Jo(c),d=0,r=u=i=c=o},b.flush=function(){return c===o?l:y(ts())},b}var ss=ko((function(e,t){return Fr(e,1,t)})),ls=ko((function(e,t,n){return Fr(e,Ws(t)||0,n)}));function cs(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new ot(s);var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var a=e.apply(this,r);return n.cache=i.set(o,a)||i,a};return n.cache=new(cs.Cache||Er),n}function us(e){if("function"!=typeof e)throw new ot(s);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}cs.Cache=Er;var ds=Yo((function(e,t){var n=(t=1==t.length&&bs(t[0])?dn(t[0],Nn(zi())):dn(Vr(t,1),Nn(zi()))).length;return ko((function(r){for(var o=-1,i=$n(r.length,n);++o=t})),ys=ao(function(){return arguments}())?ao:function(e){return Is(e)&&ut.call(e,"callee")&&!xt.call(e,"callee")},bs=n.isArray,ws=Yt?Nn(Yt):function(e){return Is(e)&&eo(e)==ce};function _s(e){return null!=e&&Ts(e.length)&&!ks(e)}function Es(e){return Is(e)&&_s(e)}var xs=Vt||Wl,Ss=Qt?Nn(Qt):function(e){return Is(e)&&eo(e)==W};function Cs(e){if(!Is(e))return!1;var t=eo(e);return t==G||t==V||"string"==typeof e.message&&"string"==typeof e.name&&!Ds(e)}function ks(e){if(!Ns(e))return!1;var t=eo(e);return t==$||t==K||t==Z||t==te}function Os(e){return"number"==typeof e&&e==Zs(e)}function Ts(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=A}function Ns(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Is(e){return null!=e&&"object"==typeof e}var Ps=Jt?Nn(Jt):function(e){return Is(e)&&Hi(e)==Y};function Rs(e){return"number"==typeof e||Is(e)&&eo(e)==Q}function Ds(e){if(!Is(e)||eo(e)!=X)return!1;var t=_t(e);if(null===t)return!0;var n=ut.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&ct.call(n)==ht}var As=Xt?Nn(Xt):function(e){return Is(e)&&eo(e)==ne};var js=en?Nn(en):function(e){return Is(e)&&Hi(e)==re};function Ms(e){return"string"==typeof e||!bs(e)&&Is(e)&&eo(e)==oe}function Ls(e){return"symbol"==typeof e||Is(e)&&eo(e)==ie}var zs=tn?Nn(tn):function(e){return Is(e)&&Ts(e.length)&&!!Lt[eo(e)]};var Fs=Ei(ho),Bs=Ei((function(e,t){return e<=t}));function Us(e){if(!e)return[];if(_s(e))return Ms(e)?Hn(e):ii(e);if(kt&&e[kt])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[kt]());var t=Hi(e);return(t==Y?zn:t==re?Un:ml)(e)}function qs(e){return e?(e=Ws(e))===D||e===-D?(e<0?-1:1)*j:e===e?e:0:0===e?e:0}function Zs(e){var t=qs(e),n=t%1;return t===t?n?t-n:t:0}function Hs(e){return e?Mr(Zs(e),0,L):0}function Ws(e){if("number"==typeof e)return e;if(Ls(e))return M;if(Ns(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Ns(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Tn(e);var n=Ve.test(e);return n||$e.test(e)?Ut(e.slice(2),n?2:8):We.test(e)?M:+e}function Vs(e){return ai(e,sl(e))}function Gs(e){return null==e?"":Fo(e)}var $s=li((function(e,t){if(Xi(t)||_s(t))ai(t,al(t),e);else for(var n in t)ut.call(t,n)&&Ir(e,n,t[n])})),Ks=li((function(e,t){ai(t,sl(t),e)})),Ys=li((function(e,t,n,r){ai(t,sl(t),e,r)})),Qs=li((function(e,t,n,r){ai(t,al(t),e,r)})),Js=Ri(jr);var Xs=ko((function(e,t){e=tt(e);var n=-1,r=t.length,i=r>2?t[2]:o;for(i&&Ki(t[0],t[1],i)&&(r=1);++n1),t})),ai(e,Ai(e),n),r&&(n=Lr(n,f|p|h,Ii));for(var o=t.length;o--;)Uo(n,t[o]);return n}));var dl=Ri((function(e,t){return null==e?{}:function(e,t){return _o(e,t,(function(t,n){return nl(e,n)}))}(e,t)}));function fl(e,t){if(null==e)return{};var n=dn(Ai(e),(function(e){return[e]}));return t=zi(t),_o(e,n,(function(e,n){return t(e,n[0])}))}var pl=ki(al),hl=ki(sl);function ml(e){return null==e?[]:In(e,al(e))}var gl=fi((function(e,t,n){return t=t.toLowerCase(),e+(n?vl(t):t)}));function vl(e){return Cl(Gs(e).toLowerCase())}function yl(e){return(e=Gs(e))&&e.replace(Ye,An).replace(It,"")}var bl=fi((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),wl=fi((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),_l=di("toLowerCase");var El=fi((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()}));var xl=fi((function(e,t,n){return e+(n?" ":"")+Cl(t)}));var Sl=fi((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),Cl=di("toUpperCase");function kl(e,t,n){return e=Gs(e),(t=n?o:t)===o?function(e){return At.test(e)}(e)?function(e){return e.match(Rt)||[]}(e):function(e){return e.match(Be)||[]}(e):e.match(t)||[]}var Ol=ko((function(e,t){try{return nn(e,o,t)}catch(n){return Cs(n)?n:new Me(n)}})),Tl=Ri((function(e,t){return on(t,(function(t){t=fa(t),Ar(e,t,os(e[t],e))})),e}));function Nl(e){return function(){return e}}var Il=mi(),Pl=mi(!0);function Rl(e){return e}function Dl(e){return uo("function"==typeof e?e:Lr(e,f))}var Al=ko((function(e,t){return function(n){return io(n,e,t)}})),jl=ko((function(e,t){return function(n){return io(e,n,t)}}));function Ml(e,t,n){var r=al(t),o=Qr(t,r);null!=n||Ns(t)&&(o.length||!r.length)||(n=t,t=e,e=this,o=Qr(t,al(t)));var i=!(Ns(n)&&"chain"in n)||!!n.chain,a=ks(e);return on(o,(function(n){var r=t[n];e[n]=r,a&&(e.prototype[n]=function(){var t=this.__chain__;if(i||t){var n=e(this.__wrapped__);return(n.__actions__=ii(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,fn([this.value()],arguments))})})),e}function Ll(){}var zl=bi(dn),Fl=bi(sn),Bl=bi(mn);function Ul(e){return Yi(e)?xn(fa(e)):function(e){return function(t){return Jr(t,e)}}(e)}var ql=_i(),Zl=_i(!0);function Hl(){return[]}function Wl(){return!1}var Vl=yi((function(e,t){return e+t}),0),Gl=Si("ceil"),$l=yi((function(e,t){return e/t}),1),Kl=Si("floor");var Yl=yi((function(e,t){return e*t}),1),Ql=Si("round"),Jl=yi((function(e,t){return e-t}),0);return mr.after=function(e,t){if("function"!=typeof t)throw new ot(s);return e=Zs(e),function(){if(--e<1)return t.apply(this,arguments)}},mr.ary=ns,mr.assign=$s,mr.assignIn=Ks,mr.assignInWith=Ys,mr.assignWith=Qs,mr.at=Js,mr.before=rs,mr.bind=os,mr.bindAll=Tl,mr.bindKey=is,mr.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return bs(e)?e:[e]},mr.chain=Ua,mr.chunk=function(e,t,r){t=(r?Ki(e,t,r):t===o)?1:Sn(Zs(t),0);var i=null==e?0:e.length;if(!i||t<1)return[];for(var a=0,s=0,l=n(qt(i/t));ai?0:i+n),(r=r===o||r>i?i:Zs(r))<0&&(r+=i),r=n>r?0:Hs(r);n>>0)?(e=Gs(e))&&("string"==typeof t||null!=t&&!As(t))&&!(t=Fo(t))&&Ln(e)?Qo(Hn(e),0,n):e.split(t,n):[]},mr.spread=function(e,t){if("function"!=typeof e)throw new ot(s);return t=null==t?0:Sn(Zs(t),0),ko((function(n){var r=n[t],o=Qo(n,0,t);return r&&fn(o,r),nn(e,this,o)}))},mr.tail=function(e){var t=null==e?0:e.length;return t?Do(e,1,t):[]},mr.take=function(e,t,n){return e&&e.length?Do(e,0,(t=n||t===o?1:Zs(t))<0?0:t):[]},mr.takeRight=function(e,t,n){var r=null==e?0:e.length;return r?Do(e,(t=r-(t=n||t===o?1:Zs(t)))<0?0:t,r):[]},mr.takeRightWhile=function(e,t){return e&&e.length?Zo(e,zi(t,3),!1,!0):[]},mr.takeWhile=function(e,t){return e&&e.length?Zo(e,zi(t,3)):[]},mr.tap=function(e,t){return t(e),e},mr.throttle=function(e,t,n){var r=!0,o=!0;if("function"!=typeof e)throw new ot(s);return Ns(n)&&(r="leading"in n?!!n.leading:r,o="trailing"in n?!!n.trailing:o),as(e,t,{leading:r,maxWait:t,trailing:o})},mr.thru=qa,mr.toArray=Us,mr.toPairs=pl,mr.toPairsIn=hl,mr.toPath=function(e){return bs(e)?dn(e,fa):Ls(e)?[e]:ii(da(Gs(e)))},mr.toPlainObject=Vs,mr.transform=function(e,t,n){var r=bs(e),o=r||xs(e)||zs(e);if(t=zi(t,4),null==n){var i=e&&e.constructor;n=o?r?new i:[]:Ns(e)&&ks(i)?gr(_t(e)):{}}return(o?on:Kr)(e,(function(e,r,o){return t(n,e,r,o)})),n},mr.unary=function(e){return ns(e,1)},mr.union=Ia,mr.unionBy=Pa,mr.unionWith=Ra,mr.uniq=function(e){return e&&e.length?Bo(e):[]},mr.uniqBy=function(e,t){return e&&e.length?Bo(e,zi(t,2)):[]},mr.uniqWith=function(e,t){return t="function"==typeof t?t:o,e&&e.length?Bo(e,o,t):[]},mr.unset=function(e,t){return null==e||Uo(e,t)},mr.unzip=Da,mr.unzipWith=Aa,mr.update=function(e,t,n){return null==e?e:qo(e,t,$o(n))},mr.updateWith=function(e,t,n,r){return r="function"==typeof r?r:o,null==e?e:qo(e,t,$o(n),r)},mr.values=ml,mr.valuesIn=function(e){return null==e?[]:In(e,sl(e))},mr.without=ja,mr.words=kl,mr.wrap=function(e,t){return fs($o(t),e)},mr.xor=Ma,mr.xorBy=La,mr.xorWith=za,mr.zip=Fa,mr.zipObject=function(e,t){return Vo(e||[],t||[],Ir)},mr.zipObjectDeep=function(e,t){return Vo(e||[],t||[],No)},mr.zipWith=Ba,mr.entries=pl,mr.entriesIn=hl,mr.extend=Ks,mr.extendWith=Ys,Ml(mr,mr),mr.add=Vl,mr.attempt=Ol,mr.camelCase=gl,mr.capitalize=vl,mr.ceil=Gl,mr.clamp=function(e,t,n){return n===o&&(n=t,t=o),n!==o&&(n=(n=Ws(n))===n?n:0),t!==o&&(t=(t=Ws(t))===t?t:0),Mr(Ws(e),t,n)},mr.clone=function(e){return Lr(e,h)},mr.cloneDeep=function(e){return Lr(e,f|h)},mr.cloneDeepWith=function(e,t){return Lr(e,f|h,t="function"==typeof t?t:o)},mr.cloneWith=function(e,t){return Lr(e,h,t="function"==typeof t?t:o)},mr.conformsTo=function(e,t){return null==t||zr(e,t,al(t))},mr.deburr=yl,mr.defaultTo=function(e,t){return null==e||e!==e?t:e},mr.divide=$l,mr.endsWith=function(e,t,n){e=Gs(e),t=Fo(t);var r=e.length,i=n=n===o?r:Mr(Zs(n),0,r);return(n-=t.length)>=0&&e.slice(n,i)==t},mr.eq=ms,mr.escape=function(e){return(e=Gs(e))&&ke.test(e)?e.replace(Se,jn):e},mr.escapeRegExp=function(e){return(e=Gs(e))&&Ae.test(e)?e.replace(De,"\\$&"):e},mr.every=function(e,t,n){var r=bs(e)?sn:Zr;return n&&Ki(e,t,n)&&(t=o),r(e,zi(t,3))},mr.find=Wa,mr.findIndex=ya,mr.findKey=function(e,t){return vn(e,zi(t,3),Kr)},mr.findLast=Va,mr.findLastIndex=ba,mr.findLastKey=function(e,t){return vn(e,zi(t,3),Yr)},mr.floor=Kl,mr.forEach=Ga,mr.forEachRight=$a,mr.forIn=function(e,t){return null==e?e:Gr(e,zi(t,3),sl)},mr.forInRight=function(e,t){return null==e?e:$r(e,zi(t,3),sl)},mr.forOwn=function(e,t){return e&&Kr(e,zi(t,3))},mr.forOwnRight=function(e,t){return e&&Yr(e,zi(t,3))},mr.get=tl,mr.gt=gs,mr.gte=vs,mr.has=function(e,t){return null!=e&&Wi(e,t,no)},mr.hasIn=nl,mr.head=_a,mr.identity=Rl,mr.includes=function(e,t,n,r){e=_s(e)?e:ml(e),n=n&&!r?Zs(n):0;var o=e.length;return n<0&&(n=Sn(o+n,0)),Ms(e)?n<=o&&e.indexOf(t,n)>-1:!!o&&bn(e,t,n)>-1},mr.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var o=null==n?0:Zs(n);return o<0&&(o=Sn(r+o,0)),bn(e,t,o)},mr.inRange=function(e,t,n){return t=qs(t),n===o?(n=t,t=0):n=qs(n),function(e,t,n){return e>=$n(t,n)&&e=-A&&e<=A},mr.isSet=js,mr.isString=Ms,mr.isSymbol=Ls,mr.isTypedArray=zs,mr.isUndefined=function(e){return e===o},mr.isWeakMap=function(e){return Is(e)&&Hi(e)==se},mr.isWeakSet=function(e){return Is(e)&&eo(e)==le},mr.join=function(e,t){return null==e?"":Kt.call(e,t)},mr.kebabCase=bl,mr.last=Ca,mr.lastIndexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=r;return n!==o&&(i=(i=Zs(n))<0?Sn(r+i,0):$n(i,r-1)),t===t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,i):yn(e,_n,i,!0)},mr.lowerCase=wl,mr.lowerFirst=_l,mr.lt=Fs,mr.lte=Bs,mr.max=function(e){return e&&e.length?Hr(e,Rl,to):o},mr.maxBy=function(e,t){return e&&e.length?Hr(e,zi(t,2),to):o},mr.mean=function(e){return En(e,Rl)},mr.meanBy=function(e,t){return En(e,zi(t,2))},mr.min=function(e){return e&&e.length?Hr(e,Rl,ho):o},mr.minBy=function(e,t){return e&&e.length?Hr(e,zi(t,2),ho):o},mr.stubArray=Hl,mr.stubFalse=Wl,mr.stubObject=function(){return{}},mr.stubString=function(){return""},mr.stubTrue=function(){return!0},mr.multiply=Yl,mr.nth=function(e,t){return e&&e.length?bo(e,Zs(t)):o},mr.noConflict=function(){return Ht._===this&&(Ht._=mt),this},mr.noop=Ll,mr.now=ts,mr.pad=function(e,t,n){e=Gs(e);var r=(t=Zs(t))?Zn(e):0;if(!t||r>=t)return e;var o=(t-r)/2;return wi(Zt(o),n)+e+wi(qt(o),n)},mr.padEnd=function(e,t,n){e=Gs(e);var r=(t=Zs(t))?Zn(e):0;return t&&rt){var r=e;e=t,t=r}if(n||e%1||t%1){var i=Qn();return $n(e+i*(t-e+Bt("1e-"+((i+"").length-1))),t)}return So(e,t)},mr.reduce=function(e,t,n){var r=bs(e)?pn:Cn,o=arguments.length<3;return r(e,zi(t,4),n,o,Ur)},mr.reduceRight=function(e,t,n){var r=bs(e)?hn:Cn,o=arguments.length<3;return r(e,zi(t,4),n,o,qr)},mr.repeat=function(e,t,n){return t=(n?Ki(e,t,n):t===o)?1:Zs(t),Co(Gs(e),t)},mr.replace=function(){var e=arguments,t=Gs(e[0]);return e.length<3?t:t.replace(e[1],e[2])},mr.result=function(e,t,n){var r=-1,i=(t=Ko(t,e)).length;for(i||(i=1,e=o);++rA)return[];var n=L,r=$n(e,L);t=zi(t),e-=L;for(var o=On(r,t);++n=a)return e;var l=n-Zn(r);if(l<1)return r;var c=s?Qo(s,0,l).join(""):e.slice(0,l);if(i===o)return c+r;if(s&&(l+=c.length-l),As(i)){if(e.slice(l).search(i)){var u,d=c;for(i.global||(i=nt(i.source,Gs(He.exec(i))+"g")),i.lastIndex=0;u=i.exec(d);)var f=u.index;c=c.slice(0,f===o?l:f)}}else if(e.indexOf(Fo(i),l)!=l){var p=c.lastIndexOf(i);p>-1&&(c=c.slice(0,p))}return c+r},mr.unescape=function(e){return(e=Gs(e))&&Ce.test(e)?e.replace(xe,Vn):e},mr.uniqueId=function(e){var t=++dt;return Gs(e)+t},mr.upperCase=Sl,mr.upperFirst=Cl,mr.each=Ga,mr.eachRight=$a,mr.first=_a,Ml(mr,function(){var e={};return Kr(mr,(function(t,n){ut.call(mr.prototype,n)||(e[n]=t)})),e}(),{chain:!1}),mr.VERSION="4.17.21",on(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){mr[e].placeholder=mr})),on(["drop","take"],(function(e,t){br.prototype[e]=function(n){n=n===o?1:Sn(Zs(n),0);var r=this.__filtered__&&!t?new br(this):this.clone();return r.__filtered__?r.__takeCount__=$n(n,r.__takeCount__):r.__views__.push({size:$n(n,L),type:e+(r.__dir__<0?"Right":"")}),r},br.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),on(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=n==P||3==n;br.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:zi(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),on(["head","last"],(function(e,t){var n="take"+(t?"Right":"");br.prototype[e]=function(){return this[n](1).value()[0]}})),on(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");br.prototype[e]=function(){return this.__filtered__?new br(this):this[n](1)}})),br.prototype.compact=function(){return this.filter(Rl)},br.prototype.find=function(e){return this.filter(e).head()},br.prototype.findLast=function(e){return this.reverse().find(e)},br.prototype.invokeMap=ko((function(e,t){return"function"==typeof e?new br(this):this.map((function(n){return io(n,e,t)}))})),br.prototype.reject=function(e){return this.filter(us(zi(e)))},br.prototype.slice=function(e,t){e=Zs(e);var n=this;return n.__filtered__&&(e>0||t<0)?new br(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==o&&(n=(t=Zs(t))<0?n.dropRight(-t):n.take(t-e)),n)},br.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},br.prototype.toArray=function(){return this.take(L)},Kr(br.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),i=mr[r?"take"+("last"==t?"Right":""):t],a=r||/^find/.test(t);i&&(mr.prototype[t]=function(){var t=this.__wrapped__,s=r?[1]:arguments,l=t instanceof br,c=s[0],u=l||bs(t),d=function(e){var t=i.apply(mr,fn([e],s));return r&&f?t[0]:t};u&&n&&"function"==typeof c&&1!=c.length&&(l=u=!1);var f=this.__chain__,p=!!this.__actions__.length,h=a&&!f,m=l&&!p;if(!a&&u){t=m?t:new br(this);var g=e.apply(t,s);return g.__actions__.push({func:qa,args:[d],thisArg:o}),new yr(g,f)}return h&&m?e.apply(this,s):(g=this.thru(d),h?r?g.value()[0]:g.value():g)})})),on(["pop","push","shift","sort","splice","unshift"],(function(e){var t=it[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);mr.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var o=this.value();return t.apply(bs(o)?o:[],e)}return this[n]((function(n){return t.apply(bs(n)?n:[],e)}))}})),Kr(br.prototype,(function(e,t){var n=mr[t];if(n){var r=n.name+"";ut.call(ar,r)||(ar[r]=[]),ar[r].push({name:t,func:n})}})),ar[gi(o,y).name]=[{name:"wrapper",func:o}],br.prototype.clone=function(){var e=new br(this.__wrapped__);return e.__actions__=ii(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=ii(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=ii(this.__views__),e},br.prototype.reverse=function(){if(this.__filtered__){var e=new br(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},br.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=bs(e),r=t<0,o=n?e.length:0,i=function(e,t,n){var r=-1,o=n.length;for(;++r=this.__values__.length;return{done:e,value:e?o:this.__values__[this.__index__++]}},mr.prototype.plant=function(e){for(var t,n=this;n instanceof vr;){var r=ha(n);r.__index__=0,r.__values__=o,t?i.__wrapped__=r:t=r;var i=r;n=n.__wrapped__}return i.__wrapped__=e,t},mr.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof br){var t=e;return this.__actions__.length&&(t=new br(this)),(t=t.reverse()).__actions__.push({func:qa,args:[Na],thisArg:o}),new yr(t,this.__chain__)}return this.thru(Na)},mr.prototype.toJSON=mr.prototype.valueOf=mr.prototype.value=function(){return Ho(this.__wrapped__,this.__actions__)},mr.prototype.first=mr.prototype.head,kt&&(mr.prototype[kt]=function(){return this}),mr}();Ht._=Gn,(r=function(){return Gn}.call(t,n,t,e))===o||(e.exports=r)}.call(this)},9161:(e,t,n)=>{var r=n(47059),o="Expected a function";function i(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError(o);var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var a=e.apply(this,r);return n.cache=i.set(o,a)||i,a};return n.cache=new(i.Cache||r),n}i.Cache=r,e.exports=i},3186:(e,t,n)=>{var r=n(28141),o=n(89490)((function(e,t,n){r(e,t,n)}));e.exports=o},91200:e=>{e.exports=function(){}},44864:(e,t,n)=>{var r=n(57849);e.exports=function(){return r.Date.now()}},90310:(e,t,n)=>{var r=n(16076),o=n(9270),i=n(32014),a=n(6996);e.exports=function(e){return i(e)?r(a(e)):o(e)}},28925:(e,t,n)=>{var r=n(77529)();e.exports=r},54466:(e,t,n)=>{var r=n(411)("round");e.exports=r},9447:(e,t,n)=>{var r=n(93848);e.exports=function(e,t,n){return null==e?e:r(e,t,n)}},92128:e=>{e.exports=function(){return[]}},53388:e=>{e.exports=function(){return!1}},43832:(e,t,n)=>{var r=n(57002),o=n(95188),i="Expected a function";e.exports=function(e,t,n){var a=!0,s=!0;if("function"!=typeof e)throw new TypeError(i);return o(n)&&(a="leading"in n?!!n.leading:a,s="trailing"in n?!!n.trailing:s),r(e,t,{leading:a,maxWait:t,trailing:s})}},85850:(e,t,n)=>{var r=n(57630),o=1/0,i=17976931348623157e292;e.exports=function(e){return e?(e=r(e))===o||e===-o?(e<0?-1:1)*i:e===e?e:0:0===e?e:0}},94100:(e,t,n)=>{var r=n(85850);e.exports=function(e){var t=r(e),n=t%1;return t===t?n?t-n:t:0}},57630:(e,t,n)=>{var r=n(10480),o=n(95188),i=n(36197),a=NaN,s=/^[-+]0x[0-9a-f]+$/i,l=/^0b[01]+$/i,c=/^0o[0-7]+$/i,u=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(i(e))return a;if(o(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=o(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=l.test(e);return n||c.test(e)?u(e.slice(2),n?2:8):s.test(e)?a:+e}},78226:(e,t,n)=>{var r=n(81742),o=n(71973);e.exports=function(e){return r(e,o(e))}},51001:(e,t,n)=>{var r=n(60139);e.exports=function(e){return null==e?"":r(e)}},60619:(e,t,n)=>{var r=n(67173),o=n(28241);e.exports=function(e,t){return e&&e.length?o(e,r(t,2)):[]}},17445:(e,t,n)=>{var r=n(57918)("toUpperCase");e.exports=r},5083:e=>{"use strict";e.exports=function(e){for(var t=function(e){var t,n=1+(e.length+8>>6),r=new Array(16*n);for(t=0;t<16*n;t++)r[t]=0;for(t=0;t>2]|=e.charCodeAt(t)<<(8*e.length+t)%4*8;r[t>>2]|=128<<(8*e.length+t)%4*8;var o=8*e.length;return r[16*n-2]=255&o,r[16*n-2]|=(o>>>8&255)<<8,r[16*n-2]|=(o>>>16&255)<<16,r[16*n-2]|=(o>>>24&255)<<24,r}(e),n=1732584193,r=-271733879,o=-1732584194,s=271733878,f=0;f>>1|t>>>1)<<1|(1&e|1&t)}function r(e,t){return(e>>>1^t>>>1)<<1|1&e^1&t}function o(e,t){return(e>>>1&t>>>1)<<1|1&e&t}function i(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}function a(e){var n,r="";for(n=0;n<=3;n++)r+=t.charAt(e>>8*n+4&15)+t.charAt(e>>8*n&15);return r}function s(e,t,n,r,o,a){return i((s=i(i(t,e),i(r,a)))<<(l=o)|s>>>32-l,n);var s,l}function l(e,t,r,i,a,l,c){return s(n(o(t,r),o(~t,i)),e,t,a,l,c)}function c(e,t,r,i,a,l,c){return s(n(o(t,i),o(r,~i)),e,t,a,l,c)}function u(e,t,n,o,i,a,l){return s(r(r(t,n),o),e,t,i,a,l)}function d(e,t,o,i,a,l,c){return s(r(o,n(t,~i)),e,t,a,l,c)}},90083:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=Number.isNaN||function(e){return"number"===typeof e&&e!==e};function o(e,t){if(e.length!==t.length)return!1;for(var n=0;n=20?"ste":"de"},currency:{symbol:"\u20ac "}}),e.register("locale","nl-nl",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:"k",million:"mln",billion:"mrd",trillion:"bln"},ordinal:function(e){var t=e%100;return 0!==e&&t<=1||8===t||t>=20?"ste":"de"},currency:{symbol:"\u20ac "}}),e.register("locale","no",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){return"."},currency:{symbol:"kr"}}),e.register("locale","pl",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"tys.",million:"mln",billion:"mld",trillion:"bln"},ordinal:function(e){return"."},currency:{symbol:"PLN"}}),e.register("locale","pt-br",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:"mil",million:"milh\xf5es",billion:"b",trillion:"t"},ordinal:function(e){return"\xba"},currency:{symbol:"R$"}}),e.register("locale","pt-pt",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){return"\xba"},currency:{symbol:"\u20ac"}}),e.register("locale","ru-ua",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"\u0442\u044b\u0441.",million:"\u043c\u043b\u043d",billion:"b",trillion:"t"},ordinal:function(){return"."},currency:{symbol:"\u20b4"}}),e.register("locale","ru",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"\u0442\u044b\u0441.",million:"\u043c\u043b\u043d.",billion:"\u043c\u043b\u0440\u0434.",trillion:"\u0442\u0440\u043b\u043d."},ordinal:function(){return"."},currency:{symbol:"\u0440\u0443\u0431."}}),e.register("locale","sk",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"tis.",million:"mil.",billion:"b",trillion:"t"},ordinal:function(){return"."},currency:{symbol:"\u20ac"}}),e.register("locale","sl",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:"k",million:"mio",billion:"mrd",trillion:"trilijon"},ordinal:function(){return"."},currency:{symbol:"\u20ac"}}),e.register("locale","th",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"\u0e1e\u0e31\u0e19",million:"\u0e25\u0e49\u0e32\u0e19",billion:"\u0e1e\u0e31\u0e19\u0e25\u0e49\u0e32\u0e19",trillion:"\u0e25\u0e49\u0e32\u0e19\u0e25\u0e49\u0e32\u0e19"},ordinal:function(e){return"."},currency:{symbol:"\u0e3f"}}),function(){var t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'\xfcnc\xfc",4:"'\xfcnc\xfc",100:"'\xfcnc\xfc",6:"'nc\u0131",9:"'uncu",10:"'uncu",30:"'uncu",60:"'\u0131nc\u0131",90:"'\u0131nc\u0131"};e.register("locale","tr",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:"bin",million:"milyon",billion:"milyar",trillion:"trilyon"},ordinal:function(e){if(0===e)return"'\u0131nc\u0131";var n=e%10,r=e%100-n,o=e>=100?100:null;return t[n]||t[r]||t[o]},currency:{symbol:"\u20ba"}})}(),e.register("locale","uk-ua",{delimiters:{thousands:" ",decimal:","},abbreviations:{thousand:"\u0442\u0438\u0441.",million:"\u043c\u043b\u043d",billion:"\u043c\u043b\u0440\u0434",trillion:"\u0431\u043b\u043d"},ordinal:function(){return""},currency:{symbol:"\u20b4"}}),e.register("locale","vi",{delimiters:{thousands:".",decimal:","},abbreviations:{thousand:" ngh\xecn",million:" tri\u1ec7u",billion:" t\u1ef7",trillion:" ngh\xecn t\u1ef7"},ordinal:function(){return"."},currency:{symbol:"\u20ab"}})})?r.apply(t,o):r)||(e.exports=i)},36453:function(e,t,n){var r,o;r=function(){var e,t,n="2.0.6",r={},o={},i={currentLocale:"en",zeroFormat:null,nullFormat:null,defaultFormat:"0,0",scalePercentBy100:!0},a={currentLocale:i.currentLocale,zeroFormat:i.zeroFormat,nullFormat:i.nullFormat,defaultFormat:i.defaultFormat,scalePercentBy100:i.scalePercentBy100};function s(e,t){this._input=e,this._value=t}return(e=function(n){var o,i,l,c;if(e.isNumeral(n))o=n.value();else if(0===n||"undefined"===typeof n)o=0;else if(null===n||t.isNaN(n))o=null;else if("string"===typeof n)if(a.zeroFormat&&n===a.zeroFormat)o=0;else if(a.nullFormat&&n===a.nullFormat||!n.replace(/[^0-9]+/g,"").length)o=null;else{for(i in r)if((c="function"===typeof r[i].regexps.unformat?r[i].regexps.unformat():r[i].regexps.unformat)&&n.match(c)){l=r[i].unformat;break}o=(l=l||e._.stringToNumber)(n)}else o=Number(n)||null;return new s(n,o)}).version=n,e.isNumeral=function(e){return e instanceof s},e._=t={numberToFormat:function(t,n,r){var i,a,s,l,c,u,d,f=o[e.options.currentLocale],p=!1,h=!1,m=0,g="",v=1e12,y=1e9,b=1e6,w=1e3,_="",E=!1;if(t=t||0,a=Math.abs(t),e._.includes(n,"(")?(p=!0,n=n.replace(/[\(|\)]/g,"")):(e._.includes(n,"+")||e._.includes(n,"-"))&&(c=e._.includes(n,"+")?n.indexOf("+"):t<0?n.indexOf("-"):-1,n=n.replace(/[\+|\-]/g,"")),e._.includes(n,"a")&&(i=!!(i=n.match(/a(k|m|b|t)?/))&&i[1],e._.includes(n," a")&&(g=" "),n=n.replace(new RegExp(g+"a[kmbt]?"),""),a>=v&&!i||"t"===i?(g+=f.abbreviations.trillion,t/=v):a=y&&!i||"b"===i?(g+=f.abbreviations.billion,t/=y):a=b&&!i||"m"===i?(g+=f.abbreviations.million,t/=b):(a=w&&!i||"k"===i)&&(g+=f.abbreviations.thousand,t/=w)),e._.includes(n,"[.]")&&(h=!0,n=n.replace("[.]",".")),s=t.toString().split(".")[0],l=n.split(".")[1],u=n.indexOf(","),m=(n.split(".")[0].split(",")[0].match(/0/g)||[]).length,l?(e._.includes(l,"[")?(l=(l=l.replace("]","")).split("["),_=e._.toFixed(t,l[0].length+l[1].length,r,l[1].length)):_=e._.toFixed(t,l.length,r),s=_.split(".")[0],_=e._.includes(_,".")?f.delimiters.decimal+_.split(".")[1]:"",h&&0===Number(_.slice(1))&&(_="")):s=e._.toFixed(t,0,r),g&&!i&&Number(s)>=1e3&&g!==f.abbreviations.trillion)switch(s=String(Number(s)/1e3),g){case f.abbreviations.thousand:g=f.abbreviations.million;break;case f.abbreviations.million:g=f.abbreviations.billion;break;case f.abbreviations.billion:g=f.abbreviations.trillion}if(e._.includes(s,"-")&&(s=s.slice(1),E=!0),s.length0;x--)s="0"+s;return u>-1&&(s=s.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1"+f.delimiters.thousands)),0===n.indexOf(".")&&(s=""),d=s+_+(g||""),p?d=(p&&E?"(":"")+d+(p&&E?")":""):c>=0?d=0===c?(E?"-":"+")+d:d+(E?"-":"+"):E&&(d="-"+d),d},stringToNumber:function(e){var t,n,r,i=o[a.currentLocale],s=e,l={thousand:3,million:6,billion:9,trillion:12};if(a.zeroFormat&&e===a.zeroFormat)n=0;else if(a.nullFormat&&e===a.nullFormat||!e.replace(/[^0-9]+/g,"").length)n=null;else{for(t in n=1,"."!==i.delimiters.decimal&&(e=e.replace(/\./g,"").replace(i.delimiters.decimal,".")),l)if(r=new RegExp("[^a-zA-Z]"+i.abbreviations[t]+"(?:\\)|(\\"+i.currency.symbol+")?(?:\\))?)?$"),s.match(r)){n*=Math.pow(10,l[t]);break}n*=(e.split("-").length+Math.min(e.split("(").length-1,e.split(")").length-1))%2?1:-1,e=e.replace(/[^0-9\.]+/g,""),n*=Number(e)}return n},isNaN:function(e){return"number"===typeof e&&isNaN(e)},includes:function(e,t){return-1!==e.indexOf(t)},insert:function(e,t,n){return e.slice(0,n)+t+e.slice(n)},reduce:function(e,t){if(null===this)throw new TypeError("Array.prototype.reduce called on null or undefined");if("function"!==typeof t)throw new TypeError(t+" is not a function");var n,r=Object(e),o=r.length>>>0,i=0;if(3===arguments.length)n=arguments[2];else{for(;i=o)throw new TypeError("Reduce of empty array with no initial value");n=r[i++]}for(;ir?e:r}),1)},toFixed:function(e,t,n,r){var o,i,a,s,l=e.toString().split("."),c=t-(r||0);return o=2===l.length?Math.min(Math.max(l[1].length,c),t):c,a=Math.pow(10,o),s=(n(e+"e+"+o)/a).toFixed(o),r>t-o&&(i=new RegExp("\\.?0{1,"+(r-(t-o))+"}$"),s=s.replace(i,"")),s}},e.options=a,e.formats=r,e.locales=o,e.locale=function(e){return e&&(a.currentLocale=e.toLowerCase()),a.currentLocale},e.localeData=function(e){if(!e)return o[a.currentLocale];if(e=e.toLowerCase(),!o[e])throw new Error("Unknown locale : "+e);return o[e]},e.reset=function(){for(var e in i)a[e]=i[e]},e.zeroFormat=function(e){a.zeroFormat="string"===typeof e?e:null},e.nullFormat=function(e){a.nullFormat="string"===typeof e?e:null},e.defaultFormat=function(e){a.defaultFormat="string"===typeof e?e:"0.0"},e.register=function(e,t,n){if(t=t.toLowerCase(),this[e+"s"][t])throw new TypeError(t+" "+e+" already registered.");return this[e+"s"][t]=n,n},e.validate=function(t,n){var r,o,i,a,s,l,c,u;if("string"!==typeof t&&(t+="",console.warn&&console.warn("Numeral.js: Value is not string. It has been co-erced to: ",t)),(t=t.trim()).match(/^\d+$/))return!0;if(""===t)return!1;try{c=e.localeData(n)}catch(d){c=e.localeData(e.locale())}return i=c.currency.symbol,s=c.abbreviations,r=c.delimiters.decimal,o="."===c.delimiters.thousands?"\\.":c.delimiters.thousands,(null===(u=t.match(/^[^\d]+/))||(t=t.substr(1),u[0]===i))&&(null===(u=t.match(/[^\d]+$/))||(t=t.slice(0,-1),u[0]===s.thousand||u[0]===s.million||u[0]===s.billion||u[0]===s.trillion))&&(l=new RegExp(o+"{2}"),!t.match(/[^\d.,]/g)&&!((a=t.split(r)).length>2)&&(a.length<2?!!a[0].match(/^\d+.*\d$/)&&!a[0].match(l):1===a[0].length?!!a[0].match(/^\d+$/)&&!a[0].match(l)&&!!a[1].match(/^\d+$/):!!a[0].match(/^\d+.*\d$/)&&!a[0].match(l)&&!!a[1].match(/^\d+$/)))},e.fn=s.prototype={clone:function(){return e(this)},format:function(t,n){var o,i,s,l=this._value,c=t||a.defaultFormat;if(n=n||Math.round,0===l&&null!==a.zeroFormat)i=a.zeroFormat;else if(null===l&&null!==a.nullFormat)i=a.nullFormat;else{for(o in r)if(c.match(r[o].regexps.format)){s=r[o].format;break}i=(s=s||e._.numberToFormat)(l,c,n)}return i},value:function(){return this._value},input:function(){return this._input},set:function(e){return this._value=Number(e),this},add:function(e){var n=t.correctionFactor.call(null,this._value,e);function r(e,t,r,o){return e+Math.round(n*t)}return this._value=t.reduce([this._value,e],r,0)/n,this},subtract:function(e){var n=t.correctionFactor.call(null,this._value,e);function r(e,t,r,o){return e-Math.round(n*t)}return this._value=t.reduce([e],r,Math.round(this._value*n))/n,this},multiply:function(e){function n(e,n,r,o){var i=t.correctionFactor(e,n);return Math.round(e*i)*Math.round(n*i)/Math.round(i*i)}return this._value=t.reduce([this._value,e],n,1),this},divide:function(e){function n(e,n,r,o){var i=t.correctionFactor(e,n);return Math.round(e*i)/Math.round(n*i)}return this._value=t.reduce([this._value,e],n),this},difference:function(t){return Math.abs(e(this._value).subtract(t).value())}},e.register("locale","en",{delimiters:{thousands:",",decimal:"."},abbreviations:{thousand:"k",million:"m",billion:"b",trillion:"t"},ordinal:function(e){var t=e%10;return 1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th"},currency:{symbol:"$"}}),e.register("format","bps",{regexps:{format:/(BPS)/,unformat:/(BPS)/},format:function(t,n,r){var o,i=e._.includes(n," BPS")?" ":"";return t*=1e4,n=n.replace(/\s?BPS/,""),o=e._.numberToFormat(t,n,r),e._.includes(o,")")?((o=o.split("")).splice(-1,0,i+"BPS"),o=o.join("")):o=o+i+"BPS",o},unformat:function(t){return+(1e-4*e._.stringToNumber(t)).toFixed(15)}}),function(){var t={base:1e3,suffixes:["B","KB","MB","GB","TB","PB","EB","ZB","YB"]},n={base:1024,suffixes:["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"]},r=t.suffixes.concat(n.suffixes.filter((function(e){return t.suffixes.indexOf(e)<0}))).join("|");r="("+r.replace("B","B(?!PS)")+")",e.register("format","bytes",{regexps:{format:/([0\s]i?b)/,unformat:new RegExp(r)},format:function(r,o,i){var a,s,l,c=e._.includes(o,"ib")?n:t,u=e._.includes(o," b")||e._.includes(o," ib")?" ":"";for(o=o.replace(/\s?i?b/,""),a=0;a<=c.suffixes.length;a++)if(s=Math.pow(c.base,a),l=Math.pow(c.base,a+1),null===r||0===r||r>=s&&r0&&(r/=s);break}return e._.numberToFormat(r,o,i)+u},unformat:function(r){var o,i,a=e._.stringToNumber(r);if(a){for(o=t.suffixes.length-1;o>=0;o--){if(e._.includes(r,t.suffixes[o])){i=Math.pow(t.base,o);break}if(e._.includes(r,n.suffixes[o])){i=Math.pow(n.base,o);break}}a*=i||1}return a}})}(),e.register("format","currency",{regexps:{format:/(\$)/},format:function(t,n,r){var o,i,a=e.locales[e.options.currentLocale],s={before:n.match(/^([\+|\-|\(|\s|\$]*)/)[0],after:n.match(/([\+|\-|\)|\s|\$]*)$/)[0]};for(n=n.replace(/\s?\$\s?/,""),o=e._.numberToFormat(t,n,r),t>=0?(s.before=s.before.replace(/[\-\(]/,""),s.after=s.after.replace(/[\-\)]/,"")):t<0&&!e._.includes(s.before,"-")&&!e._.includes(s.before,"(")&&(s.before="-"+s.before),i=0;i=0;i--)switch(s.after[i]){case"$":o=i===s.after.length-1?o+a.currency.symbol:e._.insert(o,a.currency.symbol,-(s.after.length-(1+i)));break;case" ":o=i===s.after.length-1?o+" ":e._.insert(o," ",-(s.after.length-(1+i)+a.currency.symbol.length-1))}return o}}),e.register("format","exponential",{regexps:{format:/(e\+|e-)/,unformat:/(e\+|e-)/},format:function(t,n,r){var o=("number"!==typeof t||e._.isNaN(t)?"0e+0":t.toExponential()).split("e");return n=n.replace(/e[\+|\-]{1}0/,""),e._.numberToFormat(Number(o[0]),n,r)+"e"+o[1]},unformat:function(t){var n=e._.includes(t,"e+")?t.split("e+"):t.split("e-"),r=Number(n[0]),o=Number(n[1]);function i(t,n,r,o){var i=e._.correctionFactor(t,n);return t*i*(n*i)/(i*i)}return o=e._.includes(t,"e-")?o*=-1:o,e._.reduce([r,Math.pow(10,o)],i,1)}}),e.register("format","ordinal",{regexps:{format:/(o)/},format:function(t,n,r){var o=e.locales[e.options.currentLocale],i=e._.includes(n," o")?" ":"";return n=n.replace(/\s?o/,""),i+=o.ordinal(t),e._.numberToFormat(t,n,r)+i}}),e.register("format","percentage",{regexps:{format:/(%)/,unformat:/(%)/},format:function(t,n,r){var o,i=e._.includes(n," %")?" ":"";return e.options.scalePercentBy100&&(t*=100),n=n.replace(/\s?\%/,""),o=e._.numberToFormat(t,n,r),e._.includes(o,")")?((o=o.split("")).splice(-1,0,i+"%"),o=o.join("")):o=o+i+"%",o},unformat:function(t){var n=e._.stringToNumber(t);return e.options.scalePercentBy100?.01*n:n}}),e.register("format","time",{regexps:{format:/(:)/,unformat:/(:)/},format:function(e,t,n){var r=Math.floor(e/60/60),o=Math.floor((e-60*r*60)/60),i=Math.round(e-60*r*60-60*o);return r+":"+(o<10?"0"+o:o)+":"+(i<10?"0"+i:i)},unformat:function(e){var t=e.split(":"),n=0;return 3===t.length?(n+=60*Number(t[0])*60,n+=60*Number(t[1]),n+=Number(t[2])):2===t.length&&(n+=60*Number(t[0]),n+=Number(t[1])),Number(n)}}),e},void 0===(o="function"===typeof r?r.call(t,n,t,e):r)||(e.exports=o)},29335:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(o){return!1}}()?Object.assign:function(e,o){for(var i,a,s=function(e){if(null===e||void 0===e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),l=1;l{var r="function"===typeof Map&&Map.prototype,o=Object.getOwnPropertyDescriptor&&r?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,i=r&&o&&"function"===typeof o.get?o.get:null,a=r&&Map.prototype.forEach,s="function"===typeof Set&&Set.prototype,l=Object.getOwnPropertyDescriptor&&s?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,c=s&&l&&"function"===typeof l.get?l.get:null,u=s&&Set.prototype.forEach,d="function"===typeof WeakMap&&WeakMap.prototype?WeakMap.prototype.has:null,f="function"===typeof WeakSet&&WeakSet.prototype?WeakSet.prototype.has:null,p="function"===typeof WeakRef&&WeakRef.prototype?WeakRef.prototype.deref:null,h=Boolean.prototype.valueOf,m=Object.prototype.toString,g=Function.prototype.toString,v=String.prototype.match,y=String.prototype.slice,b=String.prototype.replace,w=String.prototype.toUpperCase,_=String.prototype.toLowerCase,E=RegExp.prototype.test,x=Array.prototype.concat,S=Array.prototype.join,C=Array.prototype.slice,k=Math.floor,O="function"===typeof BigInt?BigInt.prototype.valueOf:null,T=Object.getOwnPropertySymbols,N="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?Symbol.prototype.toString:null,I="function"===typeof Symbol&&"object"===typeof Symbol.iterator,P="function"===typeof Symbol&&Symbol.toStringTag&&(typeof Symbol.toStringTag===I||"symbol")?Symbol.toStringTag:null,R=Object.prototype.propertyIsEnumerable,D=("function"===typeof Reflect?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(e){return e.__proto__}:null);function A(e,t){if(e===1/0||e===-1/0||e!==e||e&&e>-1e3&&e<1e3||E.call(/e/,t))return t;var n=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if("number"===typeof e){var r=e<0?-k(-e):k(e);if(r!==e){var o=String(r),i=y.call(t,o.length+1);return b.call(o,n,"$&_")+"."+b.call(b.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return b.call(t,n,"$&_")}var j=n(24654),M=j.custom,L=q(M)?M:null;function z(e,t,n){var r="double"===(n.quoteStyle||t)?'"':"'";return r+e+r}function F(e){return b.call(String(e),/"/g,""")}function B(e){return"[object Array]"===W(e)&&(!P||!("object"===typeof e&&P in e))}function U(e){return"[object RegExp]"===W(e)&&(!P||!("object"===typeof e&&P in e))}function q(e){if(I)return e&&"object"===typeof e&&e instanceof Symbol;if("symbol"===typeof e)return!0;if(!e||"object"!==typeof e||!N)return!1;try{return N.call(e),!0}catch(t){}return!1}e.exports=function e(t,r,o,s){var l=r||{};if(H(l,"quoteStyle")&&"single"!==l.quoteStyle&&"double"!==l.quoteStyle)throw new TypeError('option "quoteStyle" must be "single" or "double"');if(H(l,"maxStringLength")&&("number"===typeof l.maxStringLength?l.maxStringLength<0&&l.maxStringLength!==1/0:null!==l.maxStringLength))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var m=!H(l,"customInspect")||l.customInspect;if("boolean"!==typeof m&&"symbol"!==m)throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(H(l,"indent")&&null!==l.indent&&"\t"!==l.indent&&!(parseInt(l.indent,10)===l.indent&&l.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(H(l,"numericSeparator")&&"boolean"!==typeof l.numericSeparator)throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var w=l.numericSeparator;if("undefined"===typeof t)return"undefined";if(null===t)return"null";if("boolean"===typeof t)return t?"true":"false";if("string"===typeof t)return G(t,l);if("number"===typeof t){if(0===t)return 1/0/t>0?"0":"-0";var E=String(t);return w?A(t,E):E}if("bigint"===typeof t){var k=String(t)+"n";return w?A(t,k):k}var T="undefined"===typeof l.depth?5:l.depth;if("undefined"===typeof o&&(o=0),o>=T&&T>0&&"object"===typeof t)return B(t)?"[Array]":"[Object]";var M=function(e,t){var n;if("\t"===e.indent)n="\t";else{if(!("number"===typeof e.indent&&e.indent>0))return null;n=S.call(Array(e.indent+1)," ")}return{base:n,prev:S.call(Array(t+1),n)}}(l,o);if("undefined"===typeof s)s=[];else if(V(s,t)>=0)return"[Circular]";function Z(t,n,r){if(n&&(s=C.call(s)).push(n),r){var i={depth:l.depth};return H(l,"quoteStyle")&&(i.quoteStyle=l.quoteStyle),e(t,i,o+1,s)}return e(t,l,o+1,s)}if("function"===typeof t&&!U(t)){var $=function(e){if(e.name)return e.name;var t=v.call(g.call(e),/^function\s*([\w$]+)/);if(t)return t[1];return null}(t),ee=X(t,Z);return"[Function"+($?": "+$:" (anonymous)")+"]"+(ee.length>0?" { "+S.call(ee,", ")+" }":"")}if(q(t)){var te=I?b.call(String(t),/^(Symbol\(.*\))_[^)]*$/,"$1"):N.call(t);return"object"!==typeof t||I?te:K(te)}if(function(e){if(!e||"object"!==typeof e)return!1;if("undefined"!==typeof HTMLElement&&e instanceof HTMLElement)return!0;return"string"===typeof e.nodeName&&"function"===typeof e.getAttribute}(t)){for(var ne="<"+_.call(String(t.nodeName)),re=t.attributes||[],oe=0;oe"}if(B(t)){if(0===t.length)return"[]";var ie=X(t,Z);return M&&!function(e){for(var t=0;t=0)return!1;return!0}(ie)?"["+J(ie,M)+"]":"[ "+S.call(ie,", ")+" ]"}if(function(e){return"[object Error]"===W(e)&&(!P||!("object"===typeof e&&P in e))}(t)){var ae=X(t,Z);return"cause"in Error.prototype||!("cause"in t)||R.call(t,"cause")?0===ae.length?"["+String(t)+"]":"{ ["+String(t)+"] "+S.call(ae,", ")+" }":"{ ["+String(t)+"] "+S.call(x.call("[cause]: "+Z(t.cause),ae),", ")+" }"}if("object"===typeof t&&m){if(L&&"function"===typeof t[L]&&j)return j(t,{depth:T-o});if("symbol"!==m&&"function"===typeof t.inspect)return t.inspect()}if(function(e){if(!i||!e||"object"!==typeof e)return!1;try{i.call(e);try{c.call(e)}catch(ne){return!0}return e instanceof Map}catch(t){}return!1}(t)){var se=[];return a&&a.call(t,(function(e,n){se.push(Z(n,t,!0)+" => "+Z(e,t))})),Q("Map",i.call(t),se,M)}if(function(e){if(!c||!e||"object"!==typeof e)return!1;try{c.call(e);try{i.call(e)}catch(t){return!0}return e instanceof Set}catch(n){}return!1}(t)){var le=[];return u&&u.call(t,(function(e){le.push(Z(e,t))})),Q("Set",c.call(t),le,M)}if(function(e){if(!d||!e||"object"!==typeof e)return!1;try{d.call(e,d);try{f.call(e,f)}catch(ne){return!0}return e instanceof WeakMap}catch(t){}return!1}(t))return Y("WeakMap");if(function(e){if(!f||!e||"object"!==typeof e)return!1;try{f.call(e,f);try{d.call(e,d)}catch(ne){return!0}return e instanceof WeakSet}catch(t){}return!1}(t))return Y("WeakSet");if(function(e){if(!p||!e||"object"!==typeof e)return!1;try{return p.call(e),!0}catch(t){}return!1}(t))return Y("WeakRef");if(function(e){return"[object Number]"===W(e)&&(!P||!("object"===typeof e&&P in e))}(t))return K(Z(Number(t)));if(function(e){if(!e||"object"!==typeof e||!O)return!1;try{return O.call(e),!0}catch(t){}return!1}(t))return K(Z(O.call(t)));if(function(e){return"[object Boolean]"===W(e)&&(!P||!("object"===typeof e&&P in e))}(t))return K(h.call(t));if(function(e){return"[object String]"===W(e)&&(!P||!("object"===typeof e&&P in e))}(t))return K(Z(String(t)));if("undefined"!==typeof window&&t===window)return"{ [object Window] }";if(t===n.g)return"{ [object globalThis] }";if(!function(e){return"[object Date]"===W(e)&&(!P||!("object"===typeof e&&P in e))}(t)&&!U(t)){var ce=X(t,Z),ue=D?D(t)===Object.prototype:t instanceof Object||t.constructor===Object,de=t instanceof Object?"":"null prototype",fe=!ue&&P&&Object(t)===t&&P in t?y.call(W(t),8,-1):de?"Object":"",pe=(ue||"function"!==typeof t.constructor?"":t.constructor.name?t.constructor.name+" ":"")+(fe||de?"["+S.call(x.call([],fe||[],de||[]),": ")+"] ":"");return 0===ce.length?pe+"{}":M?pe+"{"+J(ce,M)+"}":pe+"{ "+S.call(ce,", ")+" }"}return String(t)};var Z=Object.prototype.hasOwnProperty||function(e){return e in this};function H(e,t){return Z.call(e,t)}function W(e){return m.call(e)}function V(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,r=e.length;nt.maxStringLength){var n=e.length-t.maxStringLength,r="... "+n+" more character"+(n>1?"s":"");return G(y.call(e,0,t.maxStringLength),t)+r}return z(b.call(b.call(e,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,$),"single",t)}function $(e){var t=e.charCodeAt(0),n={8:"b",9:"t",10:"n",12:"f",13:"r"}[t];return n?"\\"+n:"\\x"+(t<16?"0":"")+w.call(t.toString(16))}function K(e){return"Object("+e+")"}function Y(e){return e+" { ? }"}function Q(e,t,n,r){return e+" ("+t+") {"+(r?J(n,r):S.call(n,", "))+"}"}function J(e,t){if(0===e.length)return"";var n="\n"+t.prev+t.base;return n+S.call(e,","+n)+"\n"+t.prev}function X(e,t){var n=B(e),r=[];if(n){r.length=e.length;for(var o=0;o{e.exports=u,e.exports.match=function(e,t){var n=[];return o(u(e,n,t),n)},e.exports.regexpToFunction=o,e.exports.parse=r,e.exports.compile=function(e,t){return i(r(e,t),t)},e.exports.tokensToFunction=i,e.exports.tokensToRegExp=c;var t="/",n=new RegExp(["(\\\\.)","(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?"].join("|"),"g");function r(e,r){for(var o,i=[],l=0,c=0,u="",d=r&&r.delimiter||t,f=r&&r.whitelist||void 0,p=!1;null!==(o=n.exec(e));){var h=o[0],m=o[1],g=o.index;if(u+=e.slice(c,g),c=g+h.length,m)u+=m[1],p=!0;else{var v="",y=o[2],b=o[3],w=o[4],_=o[5];if(!p&&u.length){var E=u.length-1,x=u[E];(!f||f.indexOf(x)>-1)&&(v=x,u=u.slice(0,E))}u&&(i.push(u),u="",p=!1);var S="+"===_||"*"===_,C="?"===_||"*"===_,k=b||w,O=v||d;i.push({name:y||l++,prefix:v,delimiter:O,optional:C,repeat:S,pattern:k?s(k):"[^"+a(O===d?O:O+d)+"]+?"})}}return(u||c{"use strict";var r=n(16630);function o(){}function i(){}i.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,i,a){if(a!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:o};return n.PropTypes=n,n}},50134:(e,t,n)=>{e.exports=n(62139)()},16630:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},21777:e=>{"use strict";var t=String.prototype.replace,n=/%20/g,r="RFC1738",o="RFC3986";e.exports={default:o,formatters:{RFC1738:function(e){return t.call(e,n,"+")},RFC3986:function(e){return String(e)}},RFC1738:r,RFC3986:o}},63041:(e,t,n)=>{"use strict";var r=n(84861),o=n(36840),i=n(21777);e.exports={formats:i,parse:o,stringify:r}},36840:(e,t,n)=>{"use strict";var r=n(92113),o=Object.prototype.hasOwnProperty,i=Array.isArray,a={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!0,decoder:r.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},s=function(e){return e.replace(/&#(\d+);/g,(function(e,t){return String.fromCharCode(parseInt(t,10))}))},l=function(e,t){return e&&"string"===typeof e&&t.comma&&e.indexOf(",")>-1?e.split(","):e},c=function(e,t,n,r){if(e){var i=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,a=/(\[[^[\]]*])/g,s=n.depth>0&&/(\[[^[\]]*])/.exec(i),c=s?i.slice(0,s.index):i,u=[];if(c){if(!n.plainObjects&&o.call(Object.prototype,c)&&!n.allowPrototypes)return;u.push(c)}for(var d=0;n.depth>0&&null!==(s=a.exec(i))&&d=0;--i){var a,s=e[i];if("[]"===s&&n.parseArrays)a=n.allowEmptyArrays&&""===o?[]:[].concat(o);else{a=n.plainObjects?Object.create(null):{};var c="["===s.charAt(0)&&"]"===s.charAt(s.length-1)?s.slice(1,-1):s,u=n.decodeDotInKeys?c.replace(/%2E/g,"."):c,d=parseInt(u,10);n.parseArrays||""!==u?!isNaN(d)&&s!==u&&String(d)===u&&d>=0&&n.parseArrays&&d<=n.arrayLimit?(a=[])[d]=o:"__proto__"!==u&&(a[u]=o):a={0:o}}o=a}return o}(u,t,n,r)}};e.exports=function(e,t){var n=function(e){if(!e)return a;if("undefined"!==typeof e.allowEmptyArrays&&"boolean"!==typeof e.allowEmptyArrays)throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if("undefined"!==typeof e.decodeDotInKeys&&"boolean"!==typeof e.decodeDotInKeys)throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");if(null!==e.decoder&&"undefined"!==typeof e.decoder&&"function"!==typeof e.decoder)throw new TypeError("Decoder has to be a function.");if("undefined"!==typeof e.charset&&"utf-8"!==e.charset&&"iso-8859-1"!==e.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var t="undefined"===typeof e.charset?a.charset:e.charset,n="undefined"===typeof e.duplicates?a.duplicates:e.duplicates;if("combine"!==n&&"first"!==n&&"last"!==n)throw new TypeError("The duplicates option must be either combine, first, or last");return{allowDots:"undefined"===typeof e.allowDots?!0===e.decodeDotInKeys||a.allowDots:!!e.allowDots,allowEmptyArrays:"boolean"===typeof e.allowEmptyArrays?!!e.allowEmptyArrays:a.allowEmptyArrays,allowPrototypes:"boolean"===typeof e.allowPrototypes?e.allowPrototypes:a.allowPrototypes,allowSparse:"boolean"===typeof e.allowSparse?e.allowSparse:a.allowSparse,arrayLimit:"number"===typeof e.arrayLimit?e.arrayLimit:a.arrayLimit,charset:t,charsetSentinel:"boolean"===typeof e.charsetSentinel?e.charsetSentinel:a.charsetSentinel,comma:"boolean"===typeof e.comma?e.comma:a.comma,decodeDotInKeys:"boolean"===typeof e.decodeDotInKeys?e.decodeDotInKeys:a.decodeDotInKeys,decoder:"function"===typeof e.decoder?e.decoder:a.decoder,delimiter:"string"===typeof e.delimiter||r.isRegExp(e.delimiter)?e.delimiter:a.delimiter,depth:"number"===typeof e.depth||!1===e.depth?+e.depth:a.depth,duplicates:n,ignoreQueryPrefix:!0===e.ignoreQueryPrefix,interpretNumericEntities:"boolean"===typeof e.interpretNumericEntities?e.interpretNumericEntities:a.interpretNumericEntities,parameterLimit:"number"===typeof e.parameterLimit?e.parameterLimit:a.parameterLimit,parseArrays:!1!==e.parseArrays,plainObjects:"boolean"===typeof e.plainObjects?e.plainObjects:a.plainObjects,strictNullHandling:"boolean"===typeof e.strictNullHandling?e.strictNullHandling:a.strictNullHandling}}(t);if(""===e||null===e||"undefined"===typeof e)return n.plainObjects?Object.create(null):{};for(var u="string"===typeof e?function(e,t){var n,c={__proto__:null},u=t.ignoreQueryPrefix?e.replace(/^\?/,""):e,d=t.parameterLimit===1/0?void 0:t.parameterLimit,f=u.split(t.delimiter,d),p=-1,h=t.charset;if(t.charsetSentinel)for(n=0;n-1&&(g=i(g)?[g]:g);var w=o.call(c,m);w&&"combine"===t.duplicates?c[m]=r.combine(c[m],g):w&&"last"!==t.duplicates||(c[m]=g)}return c}(e,n):e,d=n.plainObjects?Object.create(null):{},f=Object.keys(u),p=0;p{"use strict";var r=n(50810),o=n(92113),i=n(21777),a=Object.prototype.hasOwnProperty,s={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,t){return e+"["+t+"]"},repeat:function(e){return e}},l=Array.isArray,c=Array.prototype.push,u=function(e,t){c.apply(e,l(t)?t:[t])},d=Date.prototype.toISOString,f=i.default,p={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:o.encode,encodeValuesOnly:!1,format:f,formatter:i.formatters[f],indices:!1,serializeDate:function(e){return d.call(e)},skipNulls:!1,strictNullHandling:!1},h={},m=function e(t,n,i,a,s,c,d,f,m,g,v,y,b,w,_,E,x,S){for(var C,k=t,O=S,T=0,N=!1;void 0!==(O=O.get(h))&&!N;){var I=O.get(t);if(T+=1,"undefined"!==typeof I){if(I===T)throw new RangeError("Cyclic object value");N=!0}"undefined"===typeof O.get(h)&&(T=0)}if("function"===typeof g?k=g(n,k):k instanceof Date?k=b(k):"comma"===i&&l(k)&&(k=o.maybeMap(k,(function(e){return e instanceof Date?b(e):e}))),null===k){if(c)return m&&!E?m(n,p.encoder,x,"key",w):n;k=""}if("string"===typeof(C=k)||"number"===typeof C||"boolean"===typeof C||"symbol"===typeof C||"bigint"===typeof C||o.isBuffer(k))return m?[_(E?n:m(n,p.encoder,x,"key",w))+"="+_(m(k,p.encoder,x,"value",w))]:[_(n)+"="+_(String(k))];var P,R=[];if("undefined"===typeof k)return R;if("comma"===i&&l(k))E&&m&&(k=o.maybeMap(k,m)),P=[{value:k.length>0?k.join(",")||null:void 0}];else if(l(g))P=g;else{var D=Object.keys(k);P=v?D.sort(v):D}var A=f?n.replace(/\./g,"%2E"):n,j=a&&l(k)&&1===k.length?A+"[]":A;if(s&&l(k)&&0===k.length)return j+"[]";for(var M=0;M0?w+b:""}},92113:(e,t,n)=>{"use strict";var r=n(21777),o=Object.prototype.hasOwnProperty,i=Array.isArray,a=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),s=function(e,t){for(var n=t&&t.plainObjects?Object.create(null):{},r=0;r1;){var t=e.pop(),n=t.obj[t.prop];if(i(n)){for(var r=[],o=0;o=48&&u<=57||u>=65&&u<=90||u>=97&&u<=122||i===r.RFC1738&&(40===u||41===u)?l+=s.charAt(c):u<128?l+=a[u]:u<2048?l+=a[192|u>>6]+a[128|63&u]:u<55296||u>=57344?l+=a[224|u>>12]+a[128|u>>6&63]+a[128|63&u]:(c+=1,u=65536+((1023&u)<<10|1023&s.charCodeAt(c)),l+=a[240|u>>18]+a[128|u>>12&63]+a[128|u>>6&63]+a[128|63&u])}return l},isBuffer:function(e){return!(!e||"object"!==typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(i(e)){for(var n=[],r=0;r{"use strict";n.d(t,{Z5:()=>zo,_l:()=>Ei,bK:()=>ki});var r=n(68963),o=n(51721),i=n(87462),a=n(38907),s=r.createContext(null);var l=function(e){e()},c=function(){return l};var u={notify:function(){},get:function(){return[]}};function d(e,t){var n,r=u;function o(){a.onStateChange&&a.onStateChange()}function i(){n||(n=t?t.addNestedSub(o):e.subscribe(o),r=function(){var e=c(),t=null,n=null;return{clear:function(){t=null,n=null},notify:function(){e((function(){for(var e=t;e;)e.callback(),e=e.next}))},get:function(){for(var e=[],n=t;n;)e.push(n),n=n.next;return e},subscribe:function(e){var r=!0,o=n={callback:e,next:null,prev:n};return o.prev?o.prev.next=o:t=o,function(){r&&null!==t&&(r=!1,o.next?o.next.prev=o.prev:n=o.prev,o.prev?o.prev.next=o.next:t=o.next)}}}}())}var a={addNestedSub:function(e){return i(),r.subscribe(e)},notifyNestedSubs:function(){r.notify()},handleChangeWrapper:o,isSubscribed:function(){return Boolean(n)},trySubscribe:i,tryUnsubscribe:function(){n&&(n(),n=void 0,r.clear(),r=u)},getListeners:function(){return r}};return a}var f="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement?r.useLayoutEffect:r.useEffect;const p=function(e){var t=e.store,n=e.context,o=e.children,i=(0,r.useMemo)((function(){var e=d(t);return{store:t,subscription:e}}),[t]),a=(0,r.useMemo)((function(){return t.getState()}),[t]);f((function(){var e=i.subscription;return e.onStateChange=e.notifyNestedSubs,e.trySubscribe(),a!==t.getState()&&e.notifyNestedSubs(),function(){e.tryUnsubscribe(),e.onStateChange=null}}),[i,a]);var l=n||s;return r.createElement(l.Provider,{value:i},o)};var h=n(63366),m=n(15170),g=n.n(m),v=n(60380),y=["getDisplayName","methodName","renderCountProp","shouldHandleStateChanges","storeKey","withRef","forwardRef","context"],b=["reactReduxForwardedRef"],w=[],_=[null,null];function E(e,t){var n=e[1];return[t.payload,n+1]}function x(e,t,n){f((function(){return e.apply(void 0,t)}),n)}function S(e,t,n,r,o,i,a){e.current=r,t.current=o,n.current=!1,i.current&&(i.current=null,a())}function C(e,t,n,r,o,i,a,s,l,c){if(e){var u=!1,d=null,f=function(){if(!u){var e,n,f=t.getState();try{e=r(f,o.current)}catch(p){n=p,d=p}n||(d=null),e===i.current?a.current||l():(i.current=e,s.current=e,a.current=!0,c({type:"STORE_UPDATED",payload:{error:n}}))}};n.onStateChange=f,n.trySubscribe(),f();return function(){if(u=!0,n.tryUnsubscribe(),n.onStateChange=null,d)throw d}}}var k=function(){return[null,0]};function O(e,t){void 0===t&&(t={});var n=t,o=n.getDisplayName,a=void 0===o?function(e){return"ConnectAdvanced("+e+")"}:o,l=n.methodName,c=void 0===l?"connectAdvanced":l,u=n.renderCountProp,f=void 0===u?void 0:u,p=n.shouldHandleStateChanges,m=void 0===p||p,O=n.storeKey,T=void 0===O?"store":O,N=(n.withRef,n.forwardRef),I=void 0!==N&&N,P=n.context,R=void 0===P?s:P,D=(0,h.Z)(n,y),A=R;return function(t){var n=t.displayName||t.name||"Component",o=a(n),s=(0,i.Z)({},D,{getDisplayName:a,methodName:c,renderCountProp:f,shouldHandleStateChanges:m,storeKey:T,displayName:o,wrappedComponentName:n,WrappedComponent:t}),l=D.pure;var u=l?r.useMemo:function(e){return e()};function p(n){var o=(0,r.useMemo)((function(){var e=n.reactReduxForwardedRef,t=(0,h.Z)(n,b);return[n.context,e,t]}),[n]),a=o[0],l=o[1],c=o[2],f=(0,r.useMemo)((function(){return a&&a.Consumer&&(0,v.isContextConsumer)(r.createElement(a.Consumer,null))?a:A}),[a,A]),p=(0,r.useContext)(f),g=Boolean(n.store)&&Boolean(n.store.getState)&&Boolean(n.store.dispatch);Boolean(p)&&Boolean(p.store);var y=g?n.store:p.store,O=(0,r.useMemo)((function(){return function(t){return e(t.dispatch,s)}(y)}),[y]),T=(0,r.useMemo)((function(){if(!m)return _;var e=d(y,g?null:p.subscription),t=e.notifyNestedSubs.bind(e);return[e,t]}),[y,g,p]),N=T[0],I=T[1],P=(0,r.useMemo)((function(){return g?p:(0,i.Z)({},p,{subscription:N})}),[g,p,N]),R=(0,r.useReducer)(E,w,k),D=R[0][0],j=R[1];if(D&&D.error)throw D.error;var M=(0,r.useRef)(),L=(0,r.useRef)(c),z=(0,r.useRef)(),F=(0,r.useRef)(!1),B=u((function(){return z.current&&c===L.current?z.current:O(y.getState(),c)}),[y,D,c]);x(S,[L,M,F,c,B,z,I]),x(C,[m,y,N,O,L,M,F,z,I,j],[y,N,O]);var U=(0,r.useMemo)((function(){return r.createElement(t,(0,i.Z)({},B,{ref:l}))}),[l,t,B]);return(0,r.useMemo)((function(){return m?r.createElement(f.Provider,{value:P},U):U}),[f,U,P])}var y=l?r.memo(p):p;if(y.WrappedComponent=t,y.displayName=p.displayName=o,I){var O=r.forwardRef((function(e,t){return r.createElement(y,(0,i.Z)({},e,{reactReduxForwardedRef:t}))}));return O.displayName=o,O.WrappedComponent=t,g()(O,t)}return g()(y,t)}}function T(e,t){return e===t?0!==e||0!==t||1/e===1/t:e!==e&&t!==t}function N(e,t){if(T(e,t))return!0;if("object"!==typeof e||null===e||"object"!==typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(var o=0;o=0;r--){var o=t[r](e);if(o)return o}return function(t,r){throw new Error("Invalid value of type "+typeof e+" for "+n+" argument when connecting component "+r.wrappedComponentName+".")}}function Z(e,t){return e===t}function H(e){var t=void 0===e?{}:e,n=t.connectHOC,r=void 0===n?O:n,o=t.mapStateToPropsFactories,a=void 0===o?A:o,s=t.mapDispatchToPropsFactories,l=void 0===s?D:s,c=t.mergePropsFactories,u=void 0===c?M:c,d=t.selectorFactory,f=void 0===d?B:d;return function(e,t,n,o){void 0===o&&(o={});var s=o,c=s.pure,d=void 0===c||c,p=s.areStatesEqual,m=void 0===p?Z:p,g=s.areOwnPropsEqual,v=void 0===g?N:g,y=s.areStatePropsEqual,b=void 0===y?N:y,w=s.areMergedPropsEqual,_=void 0===w?N:w,E=(0,h.Z)(s,U),x=q(e,a,"mapStateToProps"),S=q(t,l,"mapDispatchToProps"),C=q(n,u,"mergeProps");return r(f,(0,i.Z)({methodName:"connect",getDisplayName:function(e){return"Connect("+e+")"},shouldHandleStateChanges:Boolean(e),initMapStateToProps:x,initMapDispatchToProps:S,initMergeProps:C,pure:d,areStatesEqual:m,areOwnPropsEqual:v,areStatePropsEqual:b,areMergedPropsEqual:_},E))}}const W=H();var V,G=n(38886);function $(e,t){var n=(0,r.useState)((function(){return{inputs:t,result:e()}}))[0],o=(0,r.useRef)(!0),i=(0,r.useRef)(n),a=o.current||Boolean(t&&i.current.inputs&&function(e,t){if(e.length!==t.length)return!1;for(var n=0;n");return t.callbacks},t.setCallbacks=function(e){t.callbacks=e},t}(0,o.Z)(t,e);var n=t.prototype;return n.componentDidMount=function(){this.unbind=be(window,[{eventName:"error",fn:this.onWindowError}])},n.componentDidCatch=function(e){if(!(e instanceof Ee))throw e;this.setState({})},n.componentWillUnmount=function(){this.unbind()},n.render=function(){return this.props.children(this.setCallbacks)},t}(r.Component),Ce=function(e){return e+1},ke=function(e,t){var n=e.droppableId===t.droppableId,r=Ce(e.index),o=Ce(t.index);return n?"\n You have moved the item from position "+r+"\n to position "+o+"\n ":"\n You have moved the item from position "+r+"\n in list "+e.droppableId+"\n to list "+t.droppableId+"\n in position "+o+"\n "},Oe=function(e,t,n){return t.droppableId===n.droppableId?"\n The item "+e+"\n has been combined with "+n.draggableId:"\n The item "+e+"\n in list "+t.droppableId+"\n has been combined with "+n.draggableId+"\n in list "+n.droppableId+"\n "},Te=function(e){return"\n The item has returned to its starting position\n of "+Ce(e.index)+"\n"},Ne={dragHandleUsageInstructions:"\n Press space bar to start a drag.\n When dragging you can use the arrow keys to move the item around and escape to cancel.\n Some screen readers may require you to be in focus mode or to use your pass through key\n",onDragStart:function(e){return"\n You have lifted an item in position "+Ce(e.source.index)+"\n"},onDragUpdate:function(e){var t=e.destination;if(t)return ke(e.source,t);var n=e.combine;return n?Oe(e.draggableId,e.source,n):"You are over an area that cannot be dropped on"},onDragEnd:function(e){if("CANCEL"===e.reason)return"\n Movement cancelled.\n "+Te(e.source)+"\n ";var t=e.destination,n=e.combine;return t?"\n You have dropped the item.\n "+ke(e.source,t)+"\n ":n?"\n You have dropped the item.\n "+Oe(e.draggableId,e.source,n)+"\n ":"\n The item has been dropped while not over a drop area.\n "+Te(e.source)+"\n "}},Ie={x:0,y:0},Pe=function(e,t){return{x:e.x+t.x,y:e.y+t.y}},Re=function(e,t){return{x:e.x-t.x,y:e.y-t.y}},De=function(e,t){return e.x===t.x&&e.y===t.y},Ae=function(e){return{x:0!==e.x?-e.x:0,y:0!==e.y?-e.y:0}},je=function(e,t,n){var r;return void 0===n&&(n=0),(r={})[e]=t,r["x"===e?"y":"x"]=n,r},Me=function(e,t){return Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))},Le=function(e,t){return Math.min.apply(Math,t.map((function(t){return Me(e,t)})))},ze=function(e){return function(t){return{x:e(t.x),y:e(t.y)}}},Fe=function(e,t){return{top:e.top+t.y,left:e.left+t.x,bottom:e.bottom+t.y,right:e.right+t.x}},Be=function(e){return[{x:e.left,y:e.top},{x:e.right,y:e.top},{x:e.left,y:e.bottom},{x:e.right,y:e.bottom}]},Ue=function(e,t){return t&&t.shouldClipSubject?function(e,t){var n=J({top:Math.max(t.top,e.top),right:Math.min(t.right,e.right),bottom:Math.min(t.bottom,e.bottom),left:Math.max(t.left,e.left)});return n.width<=0||n.height<=0?null:n}(t.pageMarginBox,e):J(e)},qe=function(e){var t=e.page,n=e.withPlaceholder,r=e.axis,o=e.frame,a=function(e,t){return t?Fe(e,t.scroll.diff.displacement):e}(t.marginBox,o),s=function(e,t,n){var r;return n&&n.increasedBy?(0,i.Z)({},e,((r={})[t.end]=e[t.end]+n.increasedBy[t.line],r)):e}(a,r,n);return{page:t,withPlaceholder:n,active:Ue(s,o)}},Ze=function(e,t){e.frame||xe(!1);var n=e.frame,r=Re(t,n.scroll.initial),o=Ae(r),a=(0,i.Z)({},n,{scroll:{initial:n.scroll.initial,current:t,diff:{value:r,displacement:o},max:n.scroll.max}}),s=qe({page:e.subject.page,withPlaceholder:e.subject.withPlaceholder,axis:e.axis,frame:a});return(0,i.Z)({},e,{frame:a,subject:s})};function He(e){return Object.values?Object.values(e):Object.keys(e).map((function(t){return e[t]}))}function We(e,t){if(e.findIndex)return e.findIndex(t);for(var n=0;ne.bottom,s=r.lefte.right;return!(!a||!s)||(a&&i||s&&o)}},lt=function(e){var t=at(e.top,e.bottom),n=at(e.left,e.right);return function(e){return t(e.top)&&t(e.bottom)&&n(e.left)&&n(e.right)}},ct={direction:"vertical",line:"y",crossAxisLine:"x",start:"top",end:"bottom",size:"height",crossAxisStart:"left",crossAxisEnd:"right",crossAxisSize:"width"},ut={direction:"horizontal",line:"x",crossAxisLine:"y",start:"left",end:"right",size:"width",crossAxisStart:"top",crossAxisEnd:"bottom",crossAxisSize:"height"},dt=function(e){var t=e.target,n=e.destination,r=e.viewport,o=e.withDroppableDisplacement,i=e.isVisibleThroughFrameFn,a=o?function(e,t){var n=t.frame?t.frame.scroll.diff.displacement:Ie;return Fe(e,n)}(t,n):t;return function(e,t,n){return!!t.subject.active&&n(t.subject.active)(e)}(a,n,i)&&function(e,t,n){return n(t)(e)}(a,r,i)},ft=function(e){return dt((0,i.Z)({},e,{isVisibleThroughFrameFn:st}))},pt=function(e){return dt((0,i.Z)({},e,{isVisibleThroughFrameFn:lt}))},ht=function(e,t,n){if("boolean"===typeof n)return n;if(!t)return!0;var r=t.invisible,o=t.visible;if(r[e])return!1;var i=o[e];return!i||i.shouldAnimate};function mt(e){var t=e.afterDragging,n=e.destination,r=e.displacedBy,o=e.viewport,i=e.forceShouldAnimate,a=e.last;return t.reduce((function(e,t){var s=function(e,t){var n=e.page.marginBox,r={top:t.point.y,right:0,bottom:0,left:t.point.x};return J(X(n,r))}(t,r),l=t.descriptor.id;if(e.all.push(l),!ft({target:s,destination:n,viewport:o,withDroppableDisplacement:!0}))return e.invisible[t.descriptor.id]=!0,e;var c={draggableId:l,shouldAnimate:ht(l,a,i)};return e.visible[l]=c,e}),{all:[],visible:{},invisible:{}})}function gt(e){var t=e.insideDestination,n=e.inHomeList,r=e.displacedBy,o=e.destination,i=function(e,t){if(!e.length)return 0;var n=e[e.length-1].descriptor.index;return t.inHomeList?n:n+1}(t,{inHomeList:n});return{displaced:ot,displacedBy:r,at:{type:"REORDER",destination:{droppableId:o.descriptor.id,index:i}}}}function vt(e){var t=e.draggable,n=e.insideDestination,r=e.destination,o=e.viewport,i=e.displacedBy,a=e.last,s=e.index,l=e.forceShouldAnimate,c=nt(t,r);if(null==s)return gt({insideDestination:n,inHomeList:c,displacedBy:i,destination:r});var u=Ve(n,(function(e){return e.descriptor.index===s}));if(!u)return gt({insideDestination:n,inHomeList:c,displacedBy:i,destination:r});var d=tt(t,n),f=n.indexOf(u);return{displaced:mt({afterDragging:d.slice(f),destination:r,displacedBy:i,last:a,viewport:o.frame,forceShouldAnimate:l}),displacedBy:i,at:{type:"REORDER",destination:{droppableId:r.descriptor.id,index:s}}}}function yt(e,t){return Boolean(t.effected[e])}var bt=function(e){var t=e.isMovingForward,n=e.isInHomeList,r=e.draggable,o=e.draggables,i=e.destination,a=e.insideDestination,s=e.previousImpact,l=e.viewport,c=e.afterCritical,u=s.at;if(u||xe(!1),"REORDER"===u.type){var d=function(e){var t=e.isMovingForward,n=e.isInHomeList,r=e.insideDestination,o=e.location;if(!r.length)return null;var i=o.index,a=t?i+1:i-1,s=r[0].descriptor.index,l=r[r.length-1].descriptor.index;return a(n?l:l+1)?null:a}({isMovingForward:t,isInHomeList:n,location:u.destination,insideDestination:a});return null==d?null:vt({draggable:r,insideDestination:a,destination:i,viewport:l,last:s.displaced,displacedBy:s.displacedBy,index:d})}var f=function(e){var t=e.isMovingForward,n=e.destination,r=e.draggables,o=e.combine,i=e.afterCritical;if(!n.isCombineEnabled)return null;var a=o.draggableId,s=r[a].descriptor.index;return yt(a,i)?t?s:s-1:t?s+1:s}({isMovingForward:t,destination:i,displaced:s.displaced,draggables:o,combine:u.combine,afterCritical:c});return null==f?null:vt({draggable:r,insideDestination:a,destination:i,viewport:l,last:s.displaced,displacedBy:s.displacedBy,index:f})},wt=function(e){var t=e.afterCritical,n=e.impact,r=e.draggables,o=et(n);o||xe(!1);var i=o.draggableId,a=r[i].page.borderBox.center,s=function(e){var t=e.displaced,n=e.afterCritical,r=e.combineWith,o=e.displacedBy,i=Boolean(t.visible[r]||t.invisible[r]);return yt(r,n)?i?Ie:Ae(o.point):i?o.point:Ie}({displaced:n.displaced,afterCritical:t,combineWith:i,displacedBy:n.displacedBy});return Pe(a,s)},_t=function(e,t){return t.margin[e.start]+t.borderBox[e.size]/2},Et=function(e,t,n){return t[e.crossAxisStart]+n.margin[e.crossAxisStart]+n.borderBox[e.crossAxisSize]/2},xt=function(e){var t=e.axis,n=e.moveRelativeTo,r=e.isMoving;return je(t.line,n.marginBox[t.end]+_t(t,r),Et(t,n.marginBox,r))},St=function(e){var t=e.axis,n=e.moveRelativeTo,r=e.isMoving;return je(t.line,n.marginBox[t.start]-function(e,t){return t.margin[e.end]+t.borderBox[e.size]/2}(t,r),Et(t,n.marginBox,r))},Ct=function(e){var t=e.impact,n=e.draggable,r=e.draggables,o=e.droppable,i=e.afterCritical,a=Je(o.descriptor.id,r),s=n.page,l=o.axis;if(!a.length)return function(e){var t=e.axis,n=e.moveInto,r=e.isMoving;return je(t.line,n.contentBox[t.start]+_t(t,r),Et(t,n.contentBox,r))}({axis:l,moveInto:o.page,isMoving:s});var c=t.displaced,u=t.displacedBy,d=c.all[0];if(d){var f=r[d];if(yt(d,i))return St({axis:l,moveRelativeTo:f.page,isMoving:s});var p=oe(f.page,u.point);return St({axis:l,moveRelativeTo:p,isMoving:s})}var h=a[a.length-1];if(h.descriptor.id===n.descriptor.id)return s.borderBox.center;if(yt(h.descriptor.id,i)){var m=oe(h.page,Ae(i.displacedBy.point));return xt({axis:l,moveRelativeTo:m,isMoving:s})}return xt({axis:l,moveRelativeTo:h.page,isMoving:s})},kt=function(e,t){var n=e.frame;return n?Pe(t,n.scroll.diff.displacement):t},Ot=function(e){var t=function(e){var t=e.impact,n=e.draggable,r=e.droppable,o=e.draggables,i=e.afterCritical,a=n.page.borderBox.center,s=t.at;return r&&s?"REORDER"===s.type?Ct({impact:t,draggable:n,draggables:o,droppable:r,afterCritical:i}):wt({impact:t,draggables:o,afterCritical:i}):a}(e),n=e.droppable;return n?kt(n,t):t},Tt=function(e,t){var n=Re(t,e.scroll.initial),r=Ae(n);return{frame:J({top:t.y,bottom:t.y+e.frame.height,left:t.x,right:t.x+e.frame.width}),scroll:{initial:e.scroll.initial,max:e.scroll.max,current:t,diff:{value:n,displacement:r}}}};function Nt(e,t){return e.map((function(e){return t[e]}))}var It=function(e){var t=e.pageBorderBoxCenter,n=e.draggable,r=function(e,t){return Pe(e.scroll.diff.displacement,t)}(e.viewport,t),o=Re(r,n.page.borderBox.center);return Pe(n.client.borderBox.center,o)},Pt=function(e){var t=e.draggable,n=e.destination,r=e.newPageBorderBoxCenter,o=e.viewport,a=e.withDroppableDisplacement,s=e.onlyOnMainAxis,l=void 0!==s&&s,c=Re(r,t.page.borderBox.center),u={target:Fe(t.page.borderBox,c),destination:n,withDroppableDisplacement:a,viewport:o};return l?function(e){return dt((0,i.Z)({},e,{isVisibleThroughFrameFn:(t=e.destination.axis,function(e){var n=at(e.top,e.bottom),r=at(e.left,e.right);return function(e){return t===ct?n(e.top)&&n(e.bottom):r(e.left)&&r(e.right)}})}));var t}(u):pt(u)},Rt=function(e){var t=e.isMovingForward,n=e.draggable,r=e.destination,o=e.draggables,a=e.previousImpact,s=e.viewport,l=e.previousPageBorderBoxCenter,c=e.previousClientSelection,u=e.afterCritical;if(!r.isEnabled)return null;var d=Je(r.descriptor.id,o),f=nt(n,r),p=function(e){var t=e.isMovingForward,n=e.draggable,r=e.destination,o=e.insideDestination,a=e.previousImpact;if(!r.isCombineEnabled)return null;if(!Xe(a))return null;function s(e){var t={type:"COMBINE",combine:{draggableId:e,droppableId:r.descriptor.id}};return(0,i.Z)({},a,{at:t})}var l=a.displaced.all,c=l.length?l[0]:null;if(t)return c?s(c):null;var u=tt(n,o);if(!c)return u.length?s(u[u.length-1].descriptor.id):null;var d=We(u,(function(e){return e.descriptor.id===c}));-1===d&&xe(!1);var f=d-1;return f<0?null:s(u[f].descriptor.id)}({isMovingForward:t,draggable:n,destination:r,insideDestination:d,previousImpact:a})||bt({isMovingForward:t,isInHomeList:f,draggable:n,draggables:o,destination:r,insideDestination:d,previousImpact:a,viewport:s,afterCritical:u});if(!p)return null;var h=Ot({impact:p,draggable:n,droppable:r,draggables:o,afterCritical:u});if(Pt({draggable:n,destination:r,newPageBorderBoxCenter:h,viewport:s.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0}))return{clientSelection:It({pageBorderBoxCenter:h,draggable:n,viewport:s}),impact:p,scrollJumpRequest:null};var m=Re(h,l),g=function(e){var t=e.impact,n=e.viewport,r=e.destination,o=e.draggables,a=e.maxScrollChange,s=Tt(n,Pe(n.scroll.current,a)),l=r.frame?Ze(r,Pe(r.frame.scroll.current,a)):r,c=t.displaced,u=mt({afterDragging:Nt(c.all,o),destination:r,displacedBy:t.displacedBy,viewport:s.frame,last:c,forceShouldAnimate:!1}),d=mt({afterDragging:Nt(c.all,o),destination:l,displacedBy:t.displacedBy,viewport:n.frame,last:c,forceShouldAnimate:!1}),f={},p={},h=[c,u,d];return c.all.forEach((function(e){var t=function(e,t){for(var n=0;n1?u.sort((function(e,t){return Dt(e)[s.start]-Dt(t)[s.start]}))[0]:c.sort((function(e,t){var r=Le(n,Be(Dt(e))),o=Le(n,Be(Dt(t)));return r!==o?r-o:Dt(e)[s.start]-Dt(t)[s.start]}))[0]}({isMovingForward:t,pageBorderBoxCenter:n,source:o,droppables:a,viewport:s});if(!c)return null;var u=Je(c.descriptor.id,i),d=function(e){var t=e.pageBorderBoxCenter,n=e.viewport,r=e.destination,o=e.insideDestination,i=e.afterCritical,a=o.filter((function(e){return pt({target:jt(e,i),destination:r,viewport:n.frame,withDroppableDisplacement:!0})})).sort((function(e,n){var o=Me(t,kt(r,At(e,i))),a=Me(t,kt(r,At(n,i)));return or.left&&n.topr.top))return!1;if(Zt(o)(t.center))return!0;var i=e.axis,a=o.center[i.crossAxisLine],s=t[i.crossAxisStart],l=t[i.crossAxisEnd],c=at(o[i.crossAxisStart],o[i.crossAxisEnd]),u=c(s),d=c(l);return!u&&!d||(u?sa)}));return o.length?1===o.length?o[0].descriptor.id:function(e){var t=e.pageBorderBox,n=e.draggable,r=e.candidates,o=n.page.borderBox.center,i=r.map((function(e){var n=e.axis,r=je(e.axis.line,t.center[n.line],e.page.borderBox.center[n.crossAxisLine]);return{id:e.descriptor.id,distance:Me(o,r)}})).sort((function(e,t){return t.distance-e.distance}));return i[0]?i[0].id:null}({pageBorderBox:t,draggable:n,candidates:o}):null}var Wt=function(e,t){return J(Fe(e,t))};function Vt(e){var t=e.displaced,n=e.id;return Boolean(t.visible[n]||t.invisible[n])}var Gt=function(e){var t=e.pageOffset,n=e.draggable,r=e.draggables,o=e.droppables,i=e.previousImpact,a=e.viewport,s=e.afterCritical,l=Wt(n.page.borderBox,t),c=Ht({pageBorderBox:l,draggable:n,droppables:o});if(!c)return it;var u=o[c],d=Je(u.descriptor.id,r),f=function(e,t){var n=e.frame;return n?Wt(t,n.scroll.diff.value):t}(u,l);return function(e){var t=e.draggable,n=e.pageBorderBoxWithDroppableScroll,r=e.previousImpact,o=e.destination,i=e.insideDestination,a=e.afterCritical;if(!o.isCombineEnabled)return null;var s=o.axis,l=Mt(o.axis,t.displaceBy),c=l.value,u=n[s.start],d=n[s.end],f=Ve(tt(t,i),(function(e){var t=e.descriptor.id,n=e.page.borderBox,o=n[s.size]/4,i=yt(t,a),l=Vt({displaced:r.displaced,id:t});return i?l?d>n[s.start]+o&&dn[s.start]-c+o&&un[s.start]+c+o&&dn[s.start]+o&&ut.descriptor.index?n.descriptor.index-1:n.descriptor.index:null}({draggable:n,closest:Ve(tt(n,o),(function(e){var t=e.descriptor.id,n=e.page.borderBox.center[l.line],r=yt(t,s),o=Vt({displaced:i,id:t});return r?o?f<=n:d=1500)return An;var i=Dn+jn*(o/1500);return Number(("CANCEL"===r?.6*i:i).toFixed(2))}({current:o.current.client.offset,destination:v,reason:a});n(function(e){return{type:"DROP_ANIMATE",payload:e}}({newHomeClientOffset:v,dropDuration:b,completed:y}))}else n(En({completed:y}))}}else n(function(e){return{type:"DROP_PENDING",payload:e}}({reason:a}))}else e(r)}}},Ln=function(){return{x:window.pageXOffset,y:window.pageYOffset}};function zn(e){var t=e.onWindowScroll;var n=ce((function(){t(Ln())})),r=function(e){return{eventName:"scroll",options:{passive:!0,capture:!1},fn:function(t){t.target!==window&&t.target!==window.document||e()}}}(n),o=ye;function i(){return o!==ye}return{start:function(){i()&&xe(!1),o=be(window,[r])},stop:function(){i()||xe(!1),n.cancel(),o(),o=ye},isActive:i}}var Fn=function(e){var t=zn({onWindowScroll:function(t){e.dispatch({type:"MOVE_BY_WINDOW_SCROLL",payload:{newScroll:t}})}});return function(e){return function(n){t.isActive()||"INITIAL_PUBLISH"!==n.type||t.start(),t.isActive()&&function(e){return"DROP_COMPLETE"===e.type||"DROP_ANIMATE"===e.type||"FLUSH"===e.type}(n)&&t.stop(),e(n)}}},Bn=function(){var e=[];return{add:function(t){var n=setTimeout((function(){return function(t){var n=We(e,(function(e){return e.timerId===t}));-1===n&&xe(!1),e.splice(n,1)[0].callback()}(n)})),r={timerId:n,callback:t};e.push(r)},flush:function(){if(e.length){var t=[].concat(e);e.length=0,t.forEach((function(e){clearTimeout(e.timerId),e.callback()}))}}}},Un=function(e,t){tn(),t(),nn()},qn=function(e,t){return{draggableId:e.draggable.id,type:e.droppable.type,source:{droppableId:e.droppable.id,index:e.draggable.index},mode:t}},Zn=function(e,t,n,r){if(e){var o=function(e){var t=!1,n=!1,r=setTimeout((function(){n=!0})),o=function(o){t||n||(t=!0,e(o),clearTimeout(r))};return o.wasCalled=function(){return t},o}(n);e(t,{announce:o}),o.wasCalled()||n(r(t))}else n(r(t))},Hn=function(e,t){var n=function(e,t){var n=Bn(),r=null,o=function(n){r||xe(!1),r=null,Un(0,(function(){return Zn(e().onDragEnd,n,t,Ne.onDragEnd)}))};return{beforeCapture:function(t,n){r&&xe(!1),Un(0,(function(){var r=e().onBeforeCapture;r&&r({draggableId:t,mode:n})}))},beforeStart:function(t,n){r&&xe(!1),Un(0,(function(){var r=e().onBeforeDragStart;r&&r(qn(t,n))}))},start:function(o,i){r&&xe(!1);var a=qn(o,i);r={mode:i,lastCritical:o,lastLocation:a.source,lastCombine:null},n.add((function(){Un(0,(function(){return Zn(e().onDragStart,a,t,Ne.onDragStart)}))}))},update:function(o,a){var s=Xe(a),l=et(a);r||xe(!1);var c=!function(e,t){if(e===t)return!0;var n=e.draggable.id===t.draggable.id&&e.draggable.droppableId===t.draggable.droppableId&&e.draggable.type===t.draggable.type&&e.draggable.index===t.draggable.index,r=e.droppable.id===t.droppable.id&&e.droppable.type===t.droppable.type;return n&&r}(o,r.lastCritical);c&&(r.lastCritical=o);var u,d,f=(d=s,!(null==(u=r.lastLocation)&&null==d||null!=u&&null!=d&&u.droppableId===d.droppableId&&u.index===d.index));f&&(r.lastLocation=s);var p=!function(e,t){return null==e&&null==t||null!=e&&null!=t&&e.draggableId===t.draggableId&&e.droppableId===t.droppableId}(r.lastCombine,l);if(p&&(r.lastCombine=l),c||f||p){var h=(0,i.Z)({},qn(o,r.mode),{combine:l,destination:s});n.add((function(){Un(0,(function(){return Zn(e().onDragUpdate,h,t,Ne.onDragUpdate)}))}))}},flush:function(){r||xe(!1),n.flush()},drop:o,abort:function(){if(r){var e=(0,i.Z)({},qn(r.lastCritical,r.mode),{combine:null,destination:null,reason:"CANCEL"});o(e)}}}}(e,t);return function(e){return function(t){return function(r){if("BEFORE_INITIAL_CAPTURE"!==r.type){if("INITIAL_PUBLISH"===r.type){var o=r.payload.critical;return n.beforeStart(o,r.payload.movementMode),t(r),void n.start(o,r.payload.movementMode)}if("DROP_COMPLETE"===r.type){var i=r.payload.completed.result;return n.flush(),t(r),void n.drop(i)}if(t(r),"FLUSH"!==r.type){var a=e.getState();"DRAGGING"===a.phase&&n.update(a.critical,a.impact)}else n.abort()}else n.beforeCapture(r.payload.draggableId,r.payload.movementMode)}}}},Wn=function(e){return function(t){return function(n){if("DROP_ANIMATION_FINISHED"===n.type){var r=e.getState();"DROP_ANIMATING"!==r.phase&&xe(!1),e.dispatch(En({completed:r.completed}))}else t(n)}}},Vn=function(e){var t=null,n=null;return function(r){return function(o){if("FLUSH"!==o.type&&"DROP_COMPLETE"!==o.type&&"DROP_ANIMATION_FINISHED"!==o.type||(n&&(cancelAnimationFrame(n),n=null),t&&(t(),t=null)),r(o),"DROP_ANIMATE"===o.type){var i={eventName:"scroll",options:{capture:!0,passive:!1,once:!0},fn:function(){"DROP_ANIMATING"===e.getState().phase&&e.dispatch({type:"DROP_ANIMATION_FINISHED",payload:null})}};n=requestAnimationFrame((function(){n=null,t=be(window,[i])}))}}}},Gn=function(e){return function(t){return function(n){if(t(n),"PUBLISH_WHILE_DRAGGING"===n.type){var r=e.getState();"DROP_PENDING"===r.phase&&(r.isWaiting||e.dispatch(xn({reason:r.reason})))}}}},$n=a.qC,Kn=function(e){var t,n=e.dimensionMarshal,r=e.focusMarshal,o=e.styleMarshal,i=e.getResponders,s=e.announce,l=e.autoScroller;return(0,a.MT)(cn,$n((0,a.md)((t=o,function(){return function(e){return function(n){"INITIAL_PUBLISH"===n.type&&t.dragging(),"DROP_ANIMATE"===n.type&&t.dropping(n.payload.completed.result.reason),"FLUSH"!==n.type&&"DROP_COMPLETE"!==n.type||t.resting(),e(n)}}}),function(e){return function(){return function(t){return function(n){"DROP_COMPLETE"!==n.type&&"FLUSH"!==n.type&&"DROP_ANIMATE"!==n.type||e.stopPublishing(),t(n)}}}}(n),function(e){return function(t){var n=t.getState,r=t.dispatch;return function(t){return function(o){if("LIFT"===o.type){var i=o.payload,a=i.id,s=i.clientSelection,l=i.movementMode,c=n();"DROP_ANIMATING"===c.phase&&r(En({completed:c.completed})),"IDLE"!==n().phase&&xe(!1),r(_n()),r({type:"BEFORE_INITIAL_CAPTURE",payload:{draggableId:a,movementMode:l}});var u={draggableId:a,scrollOptions:{shouldPublishImmediately:"SNAP"===l}},d=e.startPublishing(u),f=d.critical,p=d.dimensions,h=d.viewport;r({type:"INITIAL_PUBLISH",payload:{critical:f,dimensions:p,clientSelection:s,movementMode:l,viewport:h}})}else t(o)}}}}(n),Mn,Wn,Vn,Gn,function(e){return function(t){return function(n){return function(r){if(function(e){return"DROP_COMPLETE"===e.type||"DROP_ANIMATE"===e.type||"FLUSH"===e.type}(r))return e.stop(),void n(r);if("INITIAL_PUBLISH"===r.type){n(r);var o=t.getState();return"DRAGGING"!==o.phase&&xe(!1),void e.start(o)}n(r),e.scroll(t.getState())}}}}(l),Fn,function(e){var t=!1;return function(){return function(n){return function(r){if("INITIAL_PUBLISH"===r.type)return t=!0,e.tryRecordFocus(r.payload.critical.draggable.id),n(r),void e.tryRestoreFocusRecorded();if(n(r),t){if("FLUSH"===r.type)return t=!1,void e.tryRestoreFocusRecorded();if("DROP_COMPLETE"===r.type){t=!1;var o=r.payload.completed.result;o.combine&&e.tryShiftRecord(o.draggableId,o.combine.draggableId),e.tryRestoreFocusRecorded()}}}}}}(r),Hn(i,s))))},Yn=function(){return{additions:{},removals:{},modified:{}}};var Qn=function(e){var t=e.scrollHeight,n=e.scrollWidth,r=e.height,o=e.width,i=Re({x:n,y:t},{x:o,y:r});return{x:Math.max(0,i.x),y:Math.max(0,i.y)}},Jn=function(){var e=document.documentElement;return e||xe(!1),e},Xn=function(){var e=Jn();return Qn({scrollHeight:e.scrollHeight,scrollWidth:e.scrollWidth,width:e.clientWidth,height:e.clientHeight})},er=function(e){var t=e.critical,n=e.scrollOptions,r=e.registry;tn();var o=function(){var e=Ln(),t=Xn(),n=e.y,r=e.x,o=Jn(),i=o.clientWidth,a=o.clientHeight;return{frame:J({top:n,left:r,right:r+i,bottom:n+a}),scroll:{initial:e,current:e,max:t,diff:{value:Ie,displacement:Ie}}}}(),i=o.scroll.current,a=t.droppable,s=r.droppable.getAllByType(a.type).map((function(e){return e.callbacks.getDimensionAndWatchScroll(i,n)})),l=r.draggable.getAllByType(t.draggable.type).map((function(e){return e.getDimension(i)})),c={draggables:Ke(l),droppables:$e(s)};return nn(),{dimensions:c,critical:t,viewport:o}};function tr(e,t,n){return n.descriptor.id!==t.id&&(n.descriptor.type===t.type&&"virtual"===e.droppable.getById(n.descriptor.droppableId).descriptor.mode)}var nr=function(e,t){var n=null,r=function(e){var t=e.registry,n=e.callbacks,r=Yn(),o=null,i=function(){o||(n.collectionStarting(),o=requestAnimationFrame((function(){o=null,tn();var e=r,i=e.additions,a=e.removals,s=e.modified,l=Object.keys(i).map((function(e){return t.draggable.getById(e).getDimension(Ie)})).sort((function(e,t){return e.descriptor.index-t.descriptor.index})),c=Object.keys(s).map((function(e){return{droppableId:e,scroll:t.droppable.getById(e).callbacks.getScrollWhileDragging()}})),u={additions:l,removals:Object.keys(a),modified:c};r=Yn(),nn(),n.publish(u)})))};return{add:function(e){var t=e.descriptor.id;r.additions[t]=e,r.modified[e.descriptor.droppableId]=!0,r.removals[t]&&delete r.removals[t],i()},remove:function(e){var t=e.descriptor;r.removals[t.id]=!0,r.modified[t.droppableId]=!0,r.additions[t.id]&&delete r.additions[t.id],i()},stop:function(){o&&(cancelAnimationFrame(o),o=null,r=Yn())}}}({callbacks:{publish:t.publishWhileDragging,collectionStarting:t.collectionStarting},registry:e}),o=function(t){n||xe(!1);var o=n.critical.draggable;"ADDITION"===t.type&&tr(e,o,t.value)&&r.add(t.value),"REMOVAL"===t.type&&tr(e,o,t.value)&&r.remove(t.value)},i={updateDroppableIsEnabled:function(r,o){e.droppable.exists(r)||xe(!1),n&&t.updateDroppableIsEnabled({id:r,isEnabled:o})},updateDroppableIsCombineEnabled:function(r,o){n&&(e.droppable.exists(r)||xe(!1),t.updateDroppableIsCombineEnabled({id:r,isCombineEnabled:o}))},scrollDroppable:function(t,r){n&&e.droppable.getById(t).callbacks.scroll(r)},updateDroppableScroll:function(r,o){n&&(e.droppable.exists(r)||xe(!1),t.updateDroppableScroll({id:r,newScroll:o}))},startPublishing:function(t){n&&xe(!1);var r=e.draggable.getById(t.draggableId),i=e.droppable.getById(r.descriptor.droppableId),a={draggable:r.descriptor,droppable:i.descriptor},s=e.subscribe(o);return n={critical:a,unsubscribe:s},er({critical:a,registry:e,scrollOptions:t.scrollOptions})},stopPublishing:function(){if(n){r.stop();var t=n.critical.droppable;e.droppable.getAllByType(t.type).forEach((function(e){return e.callbacks.dragStopped()})),n.unsubscribe(),n=null}}};return i},rr=function(e,t){return"IDLE"===e.phase||"DROP_ANIMATING"===e.phase&&(e.completed.result.draggableId!==t&&"DROP"===e.completed.result.reason)},or=function(e){window.scrollBy(e.x,e.y)},ir=(0,le.Z)((function(e){return Ye(e).filter((function(e){return!!e.isEnabled&&!!e.frame}))})),ar=function(e){var t=e.center,n=e.destination,r=e.droppables;if(n){var o=r[n];return o.frame?o:null}var i=function(e,t){var n=Ve(ir(t),(function(t){return t.frame||xe(!1),Zt(t.frame.pageMarginBox)(e)}));return n}(t,r);return i},sr=.25,lr=.05,cr=28,ur=function(e){return Math.pow(e,2)},dr={stopDampeningAt:1200,accelerateAt:360},fr=function(e){var t=e.startOfRange,n=e.endOfRange,r=e.current,o=n-t;return 0===o?0:(r-t)/o},pr=dr.accelerateAt,hr=dr.stopDampeningAt,mr=function(e){var t=e.distanceToEdge,n=e.thresholds,r=e.dragStartTime,o=e.shouldUseTimeDampening,i=function(e,t){if(e>t.startScrollingFrom)return 0;if(e<=t.maxScrollValueAt)return cr;if(e===t.startScrollingFrom)return 1;var n=fr({startOfRange:t.maxScrollValueAt,endOfRange:t.startScrollingFrom,current:e}),r=cr*ur(1-n);return Math.ceil(r)}(t,n);return 0===i?0:o?Math.max(function(e,t){var n=t,r=hr,o=Date.now()-n;if(o>=hr)return e;if(ot.height,i=n.width>t.width;return i||o?i&&o?null:{x:i?0:r.x,y:o?0:r.y}:r}({container:n,subject:r,proposedScroll:c});return u?De(u,Ie)?null:u:null},br=ze((function(e){return 0===e?0:e>0?1:-1})),wr=function(){var e=function(e,t){return e<0?e:e>t?e-t:0};return function(t){var n=t.current,r=t.max,o=t.change,i=Pe(n,o),a={x:e(i.x,r.x),y:e(i.y,r.y)};return De(a,Ie)?null:a}}(),_r=function(e){var t=e.max,n=e.current,r=e.change,o={x:Math.max(n.x,t.x),y:Math.max(n.y,t.y)},i=br(r),a=wr({max:o,current:n,change:i});return!a||(0!==i.x&&0===a.x||0!==i.y&&0===a.y)},Er=function(e,t){return _r({current:e.scroll.current,max:e.scroll.max,change:t})},xr=function(e,t){var n=e.frame;return!!n&&_r({current:n.scroll.current,max:n.scroll.max,change:t})},Sr=function(e){var t=e.state,n=e.dragStartTime,r=e.shouldUseTimeDampening,o=e.scrollWindow,i=e.scrollDroppable,a=t.current.page.borderBoxCenter,s=t.dimensions.draggables[t.critical.draggable.id].page.marginBox;if(t.isWindowScrollAllowed){var l=function(e){var t=e.viewport,n=e.subject,r=e.center,o=e.dragStartTime,i=e.shouldUseTimeDampening,a=yr({dragStartTime:o,container:t.frame,subject:n,center:r,shouldUseTimeDampening:i});return a&&Er(t,a)?a:null}({dragStartTime:n,viewport:t.viewport,subject:s,center:a,shouldUseTimeDampening:r});if(l)return void o(l)}var c=ar({center:a,destination:Bt(t.impact),droppables:t.dimensions.droppables});if(c){var u=function(e){var t=e.droppable,n=e.subject,r=e.center,o=e.dragStartTime,i=e.shouldUseTimeDampening,a=t.frame;if(!a)return null;var s=yr({dragStartTime:o,container:a.pageMarginBox,subject:n,center:r,shouldUseTimeDampening:i});return s&&xr(t,s)?s:null}({dragStartTime:n,droppable:c,subject:s,center:a,shouldUseTimeDampening:r});u&&i(c.descriptor.id,u)}},Cr=function(e){var t=e.move,n=e.scrollDroppable,r=e.scrollWindow,o=function(e,t){if(!xr(e,t))return t;var r=function(e,t){var n=e.frame;return n&&xr(e,t)?wr({current:n.scroll.current,max:n.scroll.max,change:t}):null}(e,t);if(!r)return n(e.descriptor.id,t),null;var o=Re(t,r);return n(e.descriptor.id,o),Re(t,o)},i=function(e,t,n){if(!e)return n;if(!Er(t,n))return n;var o=function(e,t){if(!Er(e,t))return null;var n=e.scroll.max,r=e.scroll.current;return wr({current:r,max:n,change:t})}(t,n);if(!o)return r(n),null;var i=Re(n,o);return r(i),Re(n,i)};return function(e){var n=e.scrollJumpRequest;if(n){var r=Bt(e.impact);r||xe(!1);var a=o(e.dimensions.droppables[r],n);if(a){var s=e.viewport,l=i(e.isWindowScrollAllowed,s,a);l&&function(e,n){var r=Pe(e.current.client.selection,n);t({client:r})}(e,l)}}}},kr=function(e){var t=e.scrollDroppable,n=e.scrollWindow,r=e.move,o=function(e){var t=e.scrollWindow,n=e.scrollDroppable,r=ce(t),o=ce(n),i=null,a=function(e){i||xe(!1);var t=i,n=t.shouldUseTimeDampening,a=t.dragStartTime;Sr({state:e,scrollWindow:r,scrollDroppable:o,dragStartTime:a,shouldUseTimeDampening:n})};return{start:function(e){tn(),i&&xe(!1);var t=Date.now(),n=!1,r=function(){n=!0};Sr({state:e,dragStartTime:0,shouldUseTimeDampening:!1,scrollWindow:r,scrollDroppable:r}),i={dragStartTime:t,shouldUseTimeDampening:n},nn(),n&&a(e)},stop:function(){i&&(r.cancel(),o.cancel(),i=null)},scroll:a}}({scrollWindow:n,scrollDroppable:t}),i=Cr({move:r,scrollWindow:n,scrollDroppable:t});return{scroll:function(e){"DRAGGING"===e.phase&&("FLUID"!==e.movementMode?e.scrollJumpRequest&&i(e):o.scroll(e))},start:o.start,stop:o.stop}},Or="data-rbd",Tr=function(){var e=Or+"-drag-handle";return{base:e,draggableId:e+"-draggable-id",contextId:e+"-context-id"}}(),Nr=function(){var e=Or+"-draggable";return{base:e,contextId:e+"-context-id",id:e+"-id"}}(),Ir=function(){var e=Or+"-droppable";return{base:e,contextId:e+"-context-id",id:e+"-id"}}(),Pr={contextId:Or+"-scroll-container-context-id"},Rr=function(e,t){return e.map((function(e){var n=e.styles[t];return n?e.selector+" { "+n+" }":""})).join(" ")},Dr=function(e){var t,n=(t=e,function(e){return"["+e+'="'+t+'"]'}),r=function(){var e="\n cursor: -webkit-grab;\n cursor: grab;\n ";return{selector:n(Tr.contextId),styles:{always:"\n -webkit-touch-callout: none;\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n touch-action: manipulation;\n ",resting:e,dragging:"pointer-events: none;",dropAnimating:e}}}(),o=[function(){var e="\n transition: "+In.outOfTheWay+";\n ";return{selector:n(Nr.contextId),styles:{dragging:e,dropAnimating:e,userCancel:e}}}(),r,{selector:n(Ir.contextId),styles:{always:"overflow-anchor: none;"}},{selector:"body",styles:{dragging:"\n cursor: grabbing;\n cursor: -webkit-grabbing;\n user-select: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n overflow-anchor: none;\n "}}];return{always:Rr(o,"always"),resting:Rr(o,"resting"),dragging:Rr(o,"dragging"),dropAnimating:Rr(o,"dropAnimating"),userCancel:Rr(o,"userCancel")}},Ar="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement?r.useLayoutEffect:r.useEffect,jr=function(){var e=document.querySelector("head");return e||xe(!1),e},Mr=function(e){var t=document.createElement("style");return e&&t.setAttribute("nonce",e),t.type="text/css",t};var Lr=function(e){return e&&e.ownerDocument?e.ownerDocument.defaultView:window};function zr(e){return e instanceof Lr(e).HTMLElement}function Fr(e,t){var n="["+Tr.contextId+'="'+e+'"]',r=Ge(document.querySelectorAll(n));if(!r.length)return null;var o=Ve(r,(function(e){return e.getAttribute(Tr.draggableId)===t}));return o&&zr(o)?o:null}function Br(){var e={draggables:{},droppables:{}},t=[];function n(e){t.length&&t.forEach((function(t){return t(e)}))}function r(t){return e.draggables[t]||null}function o(t){return e.droppables[t]||null}return{draggable:{register:function(t){e.draggables[t.descriptor.id]=t,n({type:"ADDITION",value:t})},update:function(t,n){var r=e.draggables[n.descriptor.id];r&&r.uniqueId===t.uniqueId&&(delete e.draggables[n.descriptor.id],e.draggables[t.descriptor.id]=t)},unregister:function(t){var o=t.descriptor.id,i=r(o);i&&t.uniqueId===i.uniqueId&&(delete e.draggables[o],n({type:"REMOVAL",value:t}))},getById:function(e){var t=r(e);return t||xe(!1),t},findById:r,exists:function(e){return Boolean(r(e))},getAllByType:function(t){return He(e.draggables).filter((function(e){return e.descriptor.type===t}))}},droppable:{register:function(t){e.droppables[t.descriptor.id]=t},unregister:function(t){var n=o(t.descriptor.id);n&&t.uniqueId===n.uniqueId&&delete e.droppables[t.descriptor.id]},getById:function(e){var t=o(e);return t||xe(!1),t},findById:o,exists:function(e){return Boolean(o(e))},getAllByType:function(t){return He(e.droppables).filter((function(e){return e.descriptor.type===t}))}},subscribe:function(e){return t.push(e),function(){var n=t.indexOf(e);-1!==n&&t.splice(n,1)}},clean:function(){e.draggables={},e.droppables={},t.length=0}}}var Ur=r.createContext(null),qr=function(){var e=document.body;return e||xe(!1),e},Zr={position:"absolute",width:"1px",height:"1px",margin:"-1px",border:"0",padding:"0",overflow:"hidden",clip:"rect(0 0 0 0)","clip-path":"inset(100%)"},Hr=function(e){return"rbd-announcement-"+e};var Wr=0,Vr={separator:"::"};function Gr(e,t){return void 0===t&&(t=Vr),K((function(){return""+e+t.separator+Wr++}),[t.separator,e])}var $r=r.createContext(null);function Kr(e){0}function Yr(e,t){Kr()}function Qr(e){var t=(0,r.useRef)(e);return(0,r.useEffect)((function(){t.current=e})),t}var Jr,Xr=27,eo=32,to=37,no=38,ro=39,oo=40,io=((Jr={})[13]=!0,Jr[9]=!0,Jr),ao=function(e){io[e.keyCode]&&e.preventDefault()},so=function(){var e="visibilitychange";return"undefined"===typeof document?e:Ve([e,"ms"+e,"webkit"+e,"moz"+e,"o"+e],(function(e){return"on"+e in document}))||e}(),lo=0,co=5;var uo,fo={type:"IDLE"};function po(e){var t=e.cancel,n=e.completed,r=e.getPhase,o=e.setPhase;return[{eventName:"mousemove",fn:function(e){var t=e.button,n=e.clientX,i=e.clientY;if(t===lo){var a={x:n,y:i},s=r();if("DRAGGING"===s.type)return e.preventDefault(),void s.actions.move(a);"PENDING"!==s.type&&xe(!1);var l=s.point;if(c=l,u=a,Math.abs(u.x-c.x)>=co||Math.abs(u.y-c.y)>=co){var c,u;e.preventDefault();var d=s.actions.fluidLift(a);o({type:"DRAGGING",actions:d})}}}},{eventName:"mouseup",fn:function(e){var o=r();"DRAGGING"===o.type?(e.preventDefault(),o.actions.drop({shouldBlockNextClick:!0}),n()):t()}},{eventName:"mousedown",fn:function(e){"DRAGGING"===r().type&&e.preventDefault(),t()}},{eventName:"keydown",fn:function(e){if("PENDING"!==r().type)return e.keyCode===Xr?(e.preventDefault(),void t()):void ao(e);t()}},{eventName:"resize",fn:t},{eventName:"scroll",options:{passive:!0,capture:!1},fn:function(){"PENDING"===r().type&&t()}},{eventName:"webkitmouseforcedown",fn:function(e){var n=r();"IDLE"===n.type&&xe(!1),n.actions.shouldRespectForcePress()?t():e.preventDefault()}},{eventName:so,fn:t}]}function ho(){}var mo=((uo={})[34]=!0,uo[33]=!0,uo[36]=!0,uo[35]=!0,uo);function go(e,t){function n(){t(),e.cancel()}return[{eventName:"keydown",fn:function(r){return r.keyCode===Xr?(r.preventDefault(),void n()):r.keyCode===eo?(r.preventDefault(),t(),void e.drop()):r.keyCode===oo?(r.preventDefault(),void e.moveDown()):r.keyCode===no?(r.preventDefault(),void e.moveUp()):r.keyCode===ro?(r.preventDefault(),void e.moveRight()):r.keyCode===to?(r.preventDefault(),void e.moveLeft()):void(mo[r.keyCode]?r.preventDefault():ao(r))}},{eventName:"mousedown",fn:n},{eventName:"mouseup",fn:n},{eventName:"click",fn:n},{eventName:"touchstart",fn:n},{eventName:"resize",fn:n},{eventName:"wheel",fn:n,options:{passive:!0}},{eventName:so,fn:n}]}var vo={type:"IDLE"},yo=120,bo=.15;var wo={input:!0,button:!0,textarea:!0,select:!0,option:!0,optgroup:!0,video:!0,audio:!0};function _o(e,t){if(null==t)return!1;if(Boolean(wo[t.tagName.toLowerCase()]))return!0;var n=t.getAttribute("contenteditable");return"true"===n||""===n||t!==e&&_o(e,t.parentElement)}function Eo(e,t){var n=t.target;return!!zr(n)&&_o(e,n)}var xo=function(e){return J(e.getBoundingClientRect()).center};var So=function(){var e="matches";return"undefined"===typeof document?e:Ve([e,"msMatchesSelector","webkitMatchesSelector"],(function(e){return e in Element.prototype}))||e}();function Co(e,t){return null==e?null:e[So](t)?e:Co(e.parentElement,t)}function ko(e,t){return e.closest?e.closest(t):Co(e,t)}function Oo(e,t){var n,r=t.target;if(!((n=r)instanceof Lr(n).Element))return null;var o=function(e){return"["+Tr.contextId+'="'+e+'"]'}(e),i=ko(r,o);return i&&zr(i)?i:null}function To(e){e.preventDefault()}function No(e){var t=e.expected,n=e.phase,r=e.isLockActive;e.shouldWarn;return!!r()&&t===n}function Io(e){var t=e.lockAPI,n=e.store,r=e.registry,o=e.draggableId;if(t.isClaimed())return!1;var i=r.draggable.findById(o);return!!i&&(!!i.options.isEnabled&&!!rr(n.getState(),o))}function Po(e){var t=e.lockAPI,n=e.contextId,r=e.store,o=e.registry,a=e.draggableId,s=e.forceSensorStop,l=e.sourceEvent;if(!Io({lockAPI:t,store:r,registry:o,draggableId:a}))return null;var c=o.draggable.getById(a),u=function(e,t){var n="["+Nr.contextId+'="'+e+'"]',r=Ve(Ge(document.querySelectorAll(n)),(function(e){return e.getAttribute(Nr.id)===t}));return r&&zr(r)?r:null}(n,c.descriptor.id);if(!u)return null;if(l&&!c.options.canDragInteractiveElements&&Eo(u,l))return null;var d=t.claim(s||ye),f="PRE_DRAG";function p(){return c.options.shouldRespectForcePress}function h(){return t.isActive(d)}var m=function(e,t){No({expected:e,phase:f,isLockActive:h,shouldWarn:!0})&&r.dispatch(t())}.bind(null,"DRAGGING");function g(e){function n(){t.release(),f="COMPLETED"}function o(t,o){if(void 0===o&&(o={shouldBlockNextClick:!1}),e.cleanup(),o.shouldBlockNextClick){var i=be(window,[{eventName:"click",fn:To,options:{once:!0,passive:!1,capture:!0}}]);setTimeout(i)}n(),r.dispatch(xn({reason:t}))}return"PRE_DRAG"!==f&&(n(),"PRE_DRAG"!==f&&xe(!1)),r.dispatch(un(e.liftActionArgs)),f="DRAGGING",(0,i.Z)({isActive:function(){return No({expected:"DRAGGING",phase:f,isLockActive:h,shouldWarn:!1})},shouldRespectForcePress:p,drop:function(e){return o("DROP",e)},cancel:function(e){return o("CANCEL",e)}},e.actions)}return{isActive:function(){return No({expected:"PRE_DRAG",phase:f,isLockActive:h,shouldWarn:!1})},shouldRespectForcePress:p,fluidLift:function(e){var t=ce((function(e){m((function(){return gn({client:e})}))})),n=g({liftActionArgs:{id:a,clientSelection:e,movementMode:"FLUID"},cleanup:function(){return t.cancel()},actions:{move:t}});return(0,i.Z)({},n,{move:t})},snapLift:function(){var e={moveUp:function(){return m(vn)},moveRight:function(){return m(bn)},moveDown:function(){return m(yn)},moveLeft:function(){return m(wn)}};return g({liftActionArgs:{id:a,clientSelection:xo(u),movementMode:"SNAP"},cleanup:ye,actions:e})},abort:function(){No({expected:"PRE_DRAG",phase:f,isLockActive:h,shouldWarn:!0})&&t.release()}}}var Ro=[function(e){var t=(0,r.useRef)(fo),n=(0,r.useRef)(ye),o=K((function(){return{eventName:"mousedown",fn:function(t){if(!t.defaultPrevented&&t.button===lo&&!(t.ctrlKey||t.metaKey||t.shiftKey||t.altKey)){var r=e.findClosestDraggableId(t);if(r){var o=e.tryGetLock(r,s,{sourceEvent:t});if(o){t.preventDefault();var i={x:t.clientX,y:t.clientY};n.current(),u(o,i)}}}}}}),[e]),i=K((function(){return{eventName:"webkitmouseforcewillbegin",fn:function(t){if(!t.defaultPrevented){var n=e.findClosestDraggableId(t);if(n){var r=e.findOptionsForDraggable(n);r&&(r.shouldRespectForcePress||e.canGetLock(n)&&t.preventDefault())}}}}}),[e]),a=Y((function(){n.current=be(window,[i,o],{passive:!1,capture:!0})}),[i,o]),s=Y((function(){"IDLE"!==t.current.type&&(t.current=fo,n.current(),a())}),[a]),l=Y((function(){var e=t.current;s(),"DRAGGING"===e.type&&e.actions.cancel({shouldBlockNextClick:!0}),"PENDING"===e.type&&e.actions.abort()}),[s]),c=Y((function(){var e=po({cancel:l,completed:s,getPhase:function(){return t.current},setPhase:function(e){t.current=e}});n.current=be(window,e,{capture:!0,passive:!1})}),[l,s]),u=Y((function(e,n){"IDLE"!==t.current.type&&xe(!1),t.current={type:"PENDING",point:n,actions:e},c()}),[c]);Ar((function(){return a(),function(){n.current()}}),[a])},function(e){var t=(0,r.useRef)(ho),n=K((function(){return{eventName:"keydown",fn:function(n){if(!n.defaultPrevented&&n.keyCode===eo){var r=e.findClosestDraggableId(n);if(r){var i=e.tryGetLock(r,l,{sourceEvent:n});if(i){n.preventDefault();var a=!0,s=i.snapLift();t.current(),t.current=be(window,go(s,l),{capture:!0,passive:!1})}}}function l(){a||xe(!1),a=!1,t.current(),o()}}}}),[e]),o=Y((function(){t.current=be(window,[n],{passive:!1,capture:!0})}),[n]);Ar((function(){return o(),function(){t.current()}}),[o])},function(e){var t=(0,r.useRef)(vo),n=(0,r.useRef)(ye),o=Y((function(){return t.current}),[]),i=Y((function(e){t.current=e}),[]),a=K((function(){return{eventName:"touchstart",fn:function(t){if(!t.defaultPrevented){var r=e.findClosestDraggableId(t);if(r){var o=e.tryGetLock(r,l,{sourceEvent:t});if(o){var i=t.touches[0],a={x:i.clientX,y:i.clientY};n.current(),f(o,a)}}}}}}),[e]),s=Y((function(){n.current=be(window,[a],{capture:!0,passive:!1})}),[a]),l=Y((function(){var e=t.current;"IDLE"!==e.type&&("PENDING"===e.type&&clearTimeout(e.longPressTimerId),i(vo),n.current(),s())}),[s,i]),c=Y((function(){var e=t.current;l(),"DRAGGING"===e.type&&e.actions.cancel({shouldBlockNextClick:!0}),"PENDING"===e.type&&e.actions.abort()}),[l]),u=Y((function(){var e={capture:!0,passive:!1},t={cancel:c,completed:l,getPhase:o},r=be(window,function(e){var t=e.cancel,n=e.completed,r=e.getPhase;return[{eventName:"touchmove",options:{capture:!1},fn:function(e){var n=r();if("DRAGGING"===n.type){n.hasMoved=!0;var o=e.touches[0],i={x:o.clientX,y:o.clientY};e.preventDefault(),n.actions.move(i)}else t()}},{eventName:"touchend",fn:function(e){var o=r();"DRAGGING"===o.type?(e.preventDefault(),o.actions.drop({shouldBlockNextClick:!0}),n()):t()}},{eventName:"touchcancel",fn:function(e){"DRAGGING"===r().type?(e.preventDefault(),t()):t()}},{eventName:"touchforcechange",fn:function(e){var n=r();"IDLE"===n.type&&xe(!1);var o=e.touches[0];if(o&&o.force>=bo){var i=n.actions.shouldRespectForcePress();if("PENDING"!==n.type)return i?n.hasMoved?void e.preventDefault():void t():void e.preventDefault();i&&t()}}},{eventName:so,fn:t}]}(t),e),i=be(window,function(e){var t=e.cancel,n=e.getPhase;return[{eventName:"orientationchange",fn:t},{eventName:"resize",fn:t},{eventName:"contextmenu",fn:function(e){e.preventDefault()}},{eventName:"keydown",fn:function(e){"DRAGGING"===n().type?(e.keyCode===Xr&&e.preventDefault(),t()):t()}},{eventName:so,fn:t}]}(t),e);n.current=function(){r(),i()}}),[c,o,l]),d=Y((function(){var e=o();"PENDING"!==e.type&&xe(!1);var t=e.actions.fluidLift(e.point);i({type:"DRAGGING",actions:t,hasMoved:!1})}),[o,i]),f=Y((function(e,t){"IDLE"!==o().type&&xe(!1);var n=setTimeout(d,yo);i({type:"PENDING",point:t,actions:e,longPressTimerId:n}),u()}),[u,o,i,d]);Ar((function(){return s(),function(){n.current();var e=o();"PENDING"===e.type&&(clearTimeout(e.longPressTimerId),i(vo))}}),[o,s,i]),Ar((function(){return be(window,[{eventName:"touchmove",fn:function(){},options:{capture:!1,passive:!1}}])}),[])}];function Do(e){var t=e.contextId,n=e.store,o=e.registry,i=e.customSensors,a=e.enableDefaultSensors,s=[].concat(a?Ro:[],i||[]),l=(0,r.useState)((function(){return function(){var e=null;function t(){e||xe(!1),e=null}return{isClaimed:function(){return Boolean(e)},isActive:function(t){return t===e},claim:function(t){e&&xe(!1);var n={abandon:t};return e=n,n},release:t,tryAbandon:function(){e&&(e.abandon(),t())}}}()}))[0],c=Y((function(e,t){e.isDragging&&!t.isDragging&&l.tryAbandon()}),[l]);Ar((function(){var e=n.getState();return n.subscribe((function(){var t=n.getState();c(e,t),e=t}))}),[l,n,c]),Ar((function(){return l.tryAbandon}),[l.tryAbandon]);var u=Y((function(e){return Io({lockAPI:l,registry:o,store:n,draggableId:e})}),[l,o,n]),d=Y((function(e,r,i){return Po({lockAPI:l,registry:o,contextId:t,store:n,draggableId:e,forceSensorStop:r,sourceEvent:i&&i.sourceEvent?i.sourceEvent:null})}),[t,l,o,n]),f=Y((function(e){return function(e,t){var n=Oo(e,t);return n?n.getAttribute(Tr.draggableId):null}(t,e)}),[t]),p=Y((function(e){var t=o.draggable.findById(e);return t?t.options:null}),[o.draggable]),h=Y((function(){l.isClaimed()&&(l.tryAbandon(),"IDLE"!==n.getState().phase&&n.dispatch(_n()))}),[l,n]),m=Y(l.isClaimed,[l]),g=K((function(){return{canGetLock:u,tryGetLock:d,findClosestDraggableId:f,findOptionsForDraggable:p,tryReleaseLock:h,isLockClaimed:m}}),[u,d,f,p,h,m]);Kr();for(var v=0;v{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var o=s(n(68963)),i=s(n(69886)),a=["text","onCopy","options","children"];function s(e){return e&&e.__esModule?e:{default:e}}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function c(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function d(e,t){for(var n=0;n{"use strict";var r=n(63637).CopyToClipboard;r.CopyToClipboard=r,e.exports=r},9314:(e,t,n)=>{"use strict";var r=n(68963),o=n(29558);function i(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n