@bizdoc/core 1.16.9 → 1.16.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/system/{Microsoft_Azure.svg → Azure.svg} +0 -0
- package/assets/system/QAD.svg +12 -358
- package/assets/system/priority.svg +19 -0
- package/esm2020/lib/admin/configuration-designer/cube-axes-filter.component.mjs +2 -2
- package/esm2020/lib/admin/configuration-designer/declarations.mjs +108 -0
- package/esm2020/lib/admin/configuration-designer/designer-element.component.mjs +125 -224
- package/esm2020/lib/admin/configuration-designer/designer.base.mjs +23 -82
- package/esm2020/lib/admin/configuration-designer/designer.component.mjs +5 -3
- package/esm2020/lib/admin/configuration-designer/elements/action.component.mjs +3 -3
- package/esm2020/lib/admin/configuration-designer/elements/analysis-view.component.mjs +13 -12
- package/esm2020/lib/admin/configuration-designer/elements/analysis-widget.component.mjs +13 -12
- package/esm2020/lib/admin/configuration-designer/elements/cube.component.mjs +89 -75
- package/esm2020/lib/admin/configuration-designer/elements/documents-widget.component.mjs +4 -3
- package/esm2020/lib/admin/configuration-designer/elements/folder.component.mjs +3 -3
- package/esm2020/lib/admin/configuration-designer/elements/form.component.mjs +6 -5
- package/esm2020/lib/admin/configuration-designer/elements/guide.component.mjs +3 -3
- package/esm2020/lib/admin/configuration-designer/elements/report.component.mjs +3 -3
- package/esm2020/lib/admin/configuration-designer/elements/return-to-role-action.component.mjs +1 -1
- package/esm2020/lib/admin/configuration-designer/elements/role.component.mjs +6 -12
- package/esm2020/lib/admin/configuration-designer/elements/rule.component.mjs +3 -3
- package/esm2020/lib/admin/configuration-designer/elements/state.component.mjs +3 -3
- package/esm2020/lib/admin/configuration-designer/elements/tasks-report.component.mjs +1 -1
- package/esm2020/lib/admin/configuration-designer/elements/type.component.mjs +3 -3
- package/esm2020/lib/admin/configuration-designer/elements/utility.component.mjs +5 -11
- package/esm2020/lib/admin/configuration-designer/elements/view.component.mjs +3 -3
- package/esm2020/lib/admin/configuration-designer/elements/widget.component.mjs +3 -3
- package/esm2020/lib/core/translations.mjs +10 -4
- package/esm2020/lib/home/sign/sign.component.mjs +6 -1
- package/esm2020/lib/system.module.mjs +6 -6
- package/esm2020/public-api.mjs +2 -2
- package/fesm2015/bizdoc-core.mjs +478 -522
- package/fesm2015/bizdoc-core.mjs.map +1 -1
- package/fesm2020/bizdoc-core.mjs +473 -509
- package/fesm2020/bizdoc-core.mjs.map +1 -1
- package/lib/admin/configuration-designer/cube-axes-filter.component.d.ts +1 -1
- package/lib/admin/configuration-designer/declarations.d.ts +203 -0
- package/lib/admin/configuration-designer/designer-element.component.d.ts +48 -66
- package/lib/admin/configuration-designer/designer.base.d.ts +5 -197
- package/lib/admin/configuration-designer/designer.component.d.ts +1 -1
- package/lib/admin/configuration-designer/elements/analysis-view.component.d.ts +1 -1
- package/lib/admin/configuration-designer/elements/analysis-widget.component.d.ts +1 -1
- package/lib/admin/configuration-designer/elements/cube.component.d.ts +30 -26
- package/lib/admin/configuration-designer/elements/documents-widget.component.d.ts +2 -1
- package/lib/admin/configuration-designer/elements/folder.component.d.ts +2 -1
- package/lib/admin/configuration-designer/elements/form.component.d.ts +2 -1
- package/lib/admin/configuration-designer/elements/report.component.d.ts +2 -1
- package/lib/admin/configuration-designer/elements/return-to-role-action.component.d.ts +2 -1
- package/lib/admin/configuration-designer/elements/role.component.d.ts +2 -1
- package/lib/admin/configuration-designer/elements/rule.component.d.ts +1 -1
- package/lib/admin/configuration-designer/elements/tasks-report.component.d.ts +2 -1
- package/lib/admin/configuration-designer/elements/view.component.d.ts +1 -1
- package/lib/admin/configuration-designer/elements/widget.component.d.ts +3 -2
- package/lib/core/translations.d.ts +9 -3
- package/lib/system.module.d.ts +16 -16
- package/package.json +1 -1
- package/public-api.d.ts +2 -2
@@ -1,58 +1,10 @@
|
|
1
|
-
import { Directive,
|
2
|
-
import { isArray
|
3
|
-
import {
|
1
|
+
import { Directive, Inject, ViewChild } from "@angular/core";
|
2
|
+
import { isArray } from "../../core/functions";
|
3
|
+
import { DesignerRef } from "./declarations";
|
4
|
+
import { DesignerItemComponent } from "./designer-element.component";
|
4
5
|
import * as i0 from "@angular/core";
|
5
6
|
import * as i1 from "@angular/forms";
|
6
|
-
|
7
|
-
"Azure": `<svg width="34" height="34" viewBox="0 0 96 96" xmlns="http://www.w3.org/2000/svg">
|
8
|
-
<defs>
|
9
|
-
<linearGradient id="e399c19f-b68f-429d-b176-18c2117ff73c" x1="-1032.172" x2="-1059.213" y1="145.312" y2="65.426" gradientTransform="matrix(1 0 0 -1 1075 158)" gradientUnits="userSpaceOnUse">
|
10
|
-
<stop offset="0" stop-color="#114a8b"/>
|
11
|
-
<stop offset="1" stop-color="#0669bc"/>
|
12
|
-
</linearGradient>
|
13
|
-
<linearGradient id="ac2a6fc2-ca48-4327-9a3c-d4dcc3256e15" x1="-1023.725" x2="-1029.98" y1="108.083" y2="105.968" gradientTransform="matrix(1 0 0 -1 1075 158)" gradientUnits="userSpaceOnUse">
|
14
|
-
<stop offset="0" stop-opacity=".3"/>
|
15
|
-
<stop offset=".071" stop-opacity=".2"/>
|
16
|
-
<stop offset=".321" stop-opacity=".1"/>
|
17
|
-
<stop offset=".623" stop-opacity=".05"/>
|
18
|
-
<stop offset="1" stop-opacity="0"/>
|
19
|
-
</linearGradient>
|
20
|
-
<linearGradient id="a7fee970-a784-4bb1-af8d-63d18e5f7db9" x1="-1027.165" x2="-997.482" y1="147.642" y2="68.561" gradientTransform="matrix(1 0 0 -1 1075 158)" gradientUnits="userSpaceOnUse">
|
21
|
-
<stop offset="0" stop-color="#3ccbf4"/>
|
22
|
-
<stop offset="1" stop-color="#2892df"/>
|
23
|
-
</linearGradient>
|
24
|
-
</defs>
|
25
|
-
<path fill="url(#e399c19f-b68f-429d-b176-18c2117ff73c)" d="M33.338 6.544h26.038l-27.03 80.087a4.152 4.152 0 0 1-3.933 2.824H8.149a4.145 4.145 0 0 1-3.928-5.47L29.404 9.368a4.152 4.152 0 0 1 3.934-2.825z"/>
|
26
|
-
<path fill="#0078d4" d="M71.175 60.261h-41.29a1.911 1.911 0 0 0-1.305 3.309l26.532 24.764a4.171 4.171 0 0 0 2.846 1.121h23.38z"/>
|
27
|
-
<path fill="url(#ac2a6fc2-ca48-4327-9a3c-d4dcc3256e15)" d="M33.338 6.544a4.118 4.118 0 0 0-3.943 2.879L4.252 83.917a4.14 4.14 0 0 0 3.908 5.538h20.787a4.443 4.443 0 0 0 3.41-2.9l5.014-14.777 17.91 16.705a4.237 4.237 0 0 0 2.666.972H81.24L71.024 60.261l-29.781.007L59.47 6.544z"/>
|
28
|
-
<path fill="url(#a7fee970-a784-4bb1-af8d-63d18e5f7db9)" d="M66.595 9.364a4.145 4.145 0 0 0-3.928-2.82H33.648a4.146 4.146 0 0 1 3.928 2.82l25.184 74.62a4.146 4.146 0 0 1-3.928 5.472h29.02a4.146 4.146 0 0 0 3.927-5.472z"/>
|
29
|
-
</svg>`,
|
30
|
-
'SAP': '<svg xmlns="http://www.w3.org/2000/svg" width="92" height="34" viewBox="0 0 92 45"><linearGradient id="a" gradientUnits="userSpaceOnUse" x1="45.483" x2="45.483" y2="45.001"><stop offset="0" stop-color="#00AEEF"/><stop offset=".212" stop-color="#0097DC"/><stop offset=".519" stop-color="#007CC5"/><stop offset=".792" stop-color="#006CB8"/><stop offset="1" stop-color="#0066B3"/></linearGradient><path fill-rule="evenodd" clip-rule="evenodd" fill="url(#a)" d="M0 45h45.974L90.966 0H0v45"/><path fill-rule="evenodd" clip-rule="evenodd" fill="#fff" d="M53.984 9H45l.03 21.13-7.823-21.137H29.45l-6.678 17.653c-.71-4.492-5.354-6.042-9.008-7.203-2.413-.775-4.974-1.915-4.948-3.175.02-1.034 1.37-1.993 4.053-1.85 1.8.097 3.39.242 6.553 1.77l3.11-5.42C19.648 9.3 15.66 8.373 12.39 8.37h-.02c-3.813 0-6.988 1.235-8.956 3.27-1.372 1.42-2.112 3.226-2.142 5.223-.05 2.748.957 4.696 3.073 6.253 1.788 1.31 4.075 2.16 6.09 2.784 2.485.77 4.515 1.44 4.49 2.866-.02.52-.216 1.006-.59 1.398-.62.64-1.57.88-2.885.906-2.537.054-4.417-.345-7.413-2.116L1.27 34.444C4.263 36.146 7.44 37 11.05 37l.812-.006c3.142-.057 5.692-.81 7.718-2.44.116-.093.22-.187.328-.282l-.34 1.752 7.58-.024 1.36-3.482c1.43.488 3.056.758 4.782.758 1.682 0 3.264-.256 4.667-.716l.948 3.44 13.6.013.033-7.938h2.894c6.995 0 11.13-3.56 11.13-9.53C66.56 11.896 62.54 9 53.984 9zM33.29 27.062c-1.045 0-2.025-.182-2.868-.502l2.836-8.955h.055l2.79 8.98c-.84.3-1.797.477-2.814.477zm21.22-5.145h-1.974V14.7h1.975c2.63 0 4.73.876 4.73 3.562-.002 2.78-2.1 3.655-4.73 3.655"/><path fill="none" d="M0 0h92v45H0z"/></svg>',
|
31
|
-
// 'Mfg': '<svg xmlns="http://www.w3.org/2000/svg" width="34" height="34" viewBox="0 0 316 316" xmlns:v="https://vecta.io/nano"><path fill="#5987c6" d="M216 317H1V1h316v316H216m-77.47-177.333l4.031-4.007 5.991-5.99 3.987-4.054c2.766-2.149 5.532-4.299 8.657-5.913 1.578 1.47 3.157 2.941 5.068 4.914.885.828 1.769 1.656 3.015 3.004 1.237 1.14 2.475 2.28 3.967 4.001 1.633 2.588 3.698 2.278 5.257.252 3.314-4.309 7.455-8.449 9.204-13.386 2.736-7.719 3.77-16.042 6.079-23.639 12.637 18.805 10.656 36.859-3.186 54.454l22.712 22.682c5.602 5.598 9.119 5.468 13.429-1.412 1.839-2.935 3.026-6.805 3.057-10.263l.112-80.96c-.026-10.421-6.832-17.24-17.248-17.258l-105.95-.001c-10.216.017-16.88 6.555-17.252 16.776-.176 4.825-.047 9.661-.047 14.492l-.019 65.969c-.019 7.052 2.351 12.759 8.745 16.191 1.185.636 3.601.866 4.35.144l26.872-26.622c-1.687-2.624-3.11-4.838-3.698-7.045 1.629.236 3.373.179 4.864.766 3.433 1.353 5.741.235 8.003-3.095m-28.629 104.622c16.81-12.977 13.985-34.878-5.713-42.848-11.526-4.664-23.187-4.121-34.385 1.248-8.953 4.293-14.261 11.465-14.312 21.649s5.271 17.245 14.093 21.813c7.806 4.042 16.217 4.961 24.775 3.813 3.487-.468 6.208.096 8.525 2.601 4.52 4.887 10.052 3.331 16.678 2.999-3.925-3.14-6.966-5.43-9.796-7.957-.557-.497-.3-1.905.135-3.317m152.202-15.717c1.905-14.393-7.117-26.47-22.892-28.378-10.464-1.266-21.205-.24-32.11-.24v49.662c9.41 0 18.436.62 27.343-.147 12.945-1.114 23.348-6.565 27.659-20.897m-97.214-24.007l-4.715-7.141-31.908 52.248c4.683-.513 9.413 2.295 11.215-2.513 3.753-10.017 11.014-12.053 20.44-10.681 1.957.285 4.046.342 5.979-.012 7.088-1.299 11.85 1.42 14.482 7.994 2.41 6.019 7.084 5.836 13.035 4.783l-28.529-44.677z"/><path fill="#fdfefe" d="M124.828 141.989l4.533 7.052-26.872 26.622c-.749.722-3.164.493-4.35-.144-6.393-3.433-8.763-9.139-8.745-16.191l.019-65.969c0-4.831-.129-9.667.047-14.492.373-10.222 7.036-16.759 17.252-16.776l105.95.001c10.416.018 17.221 6.837 17.248 17.258l-.112 80.96c-.031 3.458-1.218 7.328-3.057 10.263-4.309 6.88-7.827 7.01-13.429 1.412L190.6 149.302c13.841-17.595 15.823-35.648 2.791-54.982l-7.352-7.362c-2.502-1.664-4.808-3.078-7.363-4.678-2.051-.857-3.854-1.531-6.017-2.392-4.116-.716-7.872-1.243-12.052-1.83-3.155.271-5.887.6-8.954.932-1.191.256-2.047.509-3.277.793-8.513 2.465-15.507 6.575-20.703 13.946l-3.999 5.419c-.742 1.915-1.234 3.605-2.041 5.539-1.026 3.947-1.738 7.651-2.494 11.762-.105 1.773-.165 3.139-.523 4.742.424 4.07 1.145 7.903 1.951 12.112 1.476 3.147 2.868 5.917 4.261 8.687z"/><path d="M109.624 244.501c-.158 1.2-.415 2.608.141 3.105 2.83 2.527 5.871 4.818 9.796 7.957-6.626.332-12.158 1.889-16.678-2.999-2.317-2.505-5.038-3.068-8.525-2.601-8.558 1.148-16.969.229-24.775-3.813-8.822-4.568-14.144-11.625-14.093-21.813s5.359-17.356 14.312-21.649c11.198-5.369 22.859-5.912 34.385-1.248 19.698 7.97 22.522 29.87 5.436 43.06m-43.211-11.824c5.503 11.646 25.725 14.234 36.707 7.078 11.682-7.612 11.708-23.151-.138-30.585-7.671-4.814-16.021-5.134-24.472-2.448-11.458 3.643-16.387 13.817-12.098 25.954zm195.62-3.707c-4.241 13.935-14.644 19.386-27.589 20.501-8.907.767-17.933.147-27.343.147v-49.662c10.906 0 21.646-1.026 32.11.24 15.774 1.908 24.797 13.985 22.822 28.774m-31.807-23.207h-15.008l.076 34.867c.008.802 1.108 1.594 2.634 2.477 3.321.009 6.672.302 9.956-.04 4.744-.493 9.672-.788 14.104-2.352 7.419-2.618 11.717-9.693 11.457-17.028-.263-7.411-4.566-13.29-12.235-15.873-3.241-1.091-6.792-1.259-10.985-2.052z" fill="#fafbfd"/><path fill="#f8fafc" d="M165.072 204.877l28.345 44.366c-5.951 1.053-10.625 1.236-13.035-4.783-2.632-6.574-7.394-9.293-14.482-7.994-1.933.354-4.022.297-5.979.012-9.427-1.372-16.687.664-20.44 10.681-1.802 4.808-6.532 2-11.215 2.513l31.908-52.248 4.898 7.453m3.625 25.011c.181-.854.804-1.972.475-2.52-2.716-4.53-5.608-8.954-8.915-14.146l-9.939 16.701 18.379-.035z"/><path fill="#a9bbe1" d="M151.989 78.988l8.714-.61 3.468 4.295c10.255 11.79 8.907 26.675-3.335 36.494-2.766 2.149-5.532 4.299-8.914 6.499-5.6-.769-10.768-1.013-15.527-2.538-8.265-2.648-14.695-11.515-14.448-18.686.493-1.69.985-3.381 1.919-4.963.804 1.722 1.144 3.341 1.535 4.948 2.311 9.518 11.655 16.819 21.133 16.525 9.971-.309 18.447-7.468 20.434-17.26 2.198-10.826-3.58-20.354-14.98-24.705z"/><path fill="#98b0db" d="M161.016 119.435c12.063-10.087 13.411-24.972 3.156-36.762-1.07-1.23-1.971-2.607-3.045-4.236 3.661.208 7.417.735 11.562 1.822 1.073 2.421 1.679 4.316 2.456 6.139 5.914 13.884 2.482 27.987-9.214 37.715l-4.915-4.678z"/><path fill="#678fca" d="M186.235 87.207l6.879 6.879c-1.637 8.36-2.671 16.683-5.407 24.402-1.75 4.937-5.89 9.077-9.204 13.386-1.558 2.026-3.624 2.336-5.206-.832 6.746-8.411 12.446-16.82 13.194-27.454.382-5.427-.141-10.918-.256-16.381z"/><path fill="#7598cf" d="M186.039 86.958c.31 5.711.833 11.202.451 16.63-.748 10.634-6.448 19.043-13.321 27.163-1.416-.851-2.653-1.991-3.788-3.591 10.391-9.621 14.386-20.958 11.805-34.524-.649-3.41-1.502-6.782-2.261-10.171l7.114 4.493z"/><path d="M118.914 120.953c.06-1.365.12-2.731.568-4.465 2.366 1.037 4.258 2.59 6.341 3.818 4.618 2.723 9.22 5.52 14.054 7.81 2.469 1.17 5.424 1.313 8.159 1.921-1.825 1.874-3.65 3.748-6.092 5.659-2.659-.583-4.781-1.019-6.731-1.855-6.578-2.819-13.754-4.948-16.299-12.889zm59.762-38.672c1.008 3.574 1.861 6.945 2.509 10.355 2.581 13.566-1.414 24.903-11.985 34.264-1.168-.628-2.052-1.456-3.103-2.535 11.529-9.98 14.961-24.083 9.047-37.967-.776-1.823-1.382-3.718-2.096-5.95 1.774.302 3.577.975 5.628 1.833z" fill="#83a1d4"/><path fill="#98b0db" d="M148.294 129.853c-2.993-.423-5.948-.567-8.417-1.737-4.834-2.291-9.436-5.088-14.054-7.81-2.083-1.228-3.975-2.781-6.296-4.226.369-3.742 1.081-7.446 2.106-11.393.067 6.927 6.497 15.794 14.762 18.442 4.759 1.525 9.927 1.769 15.244 2.718-.807 1.36-1.948 2.591-3.346 4.006z"/><path fill="#7598cf" d="M118.617 121.19c2.843 7.703 10.019 9.832 16.597 12.651 1.95.836 4.072 1.272 6.46 2.038-.818 1.36-1.981 2.574-3.697 3.761-6.2-2.256-11.847-4.485-17.493-6.715-.721-3.832-1.443-7.665-1.866-11.735z"/><path fill="#678fca" d="M120.567 133.302c5.562 1.853 11.209 4.082 17.145 6.515-1.445 3.18-3.752 4.298-7.186 2.945-1.491-.587-3.235-.53-5.281-.769-1.809-2.773-3.201-5.544-4.678-8.69z"/><path fill="#c3cfea" d="M127.94 93.496c4.929-7.138 11.924-11.248 20.669-13.425 2.406 1.432 4.174 2.658 6.01 3.771 7.596 4.603 10.968 12.457 8.739 20.456-2.223 7.979-9.499 13.565-17.31 13.291-8.557-.3-15.316-5.906-17.234-14.678-.668-3.056-.603-6.272-.873-9.415m28.038-4.008c-5.92-4.925-15.687-4.683-20.351.505-4.944 5.5-4.696 14.06.565 19.502 5.366 5.551 13.493 5.768 19.278.516 5.995-5.444 6.418-13.527.508-20.523z"/><path fill="#b5c4e5" d="M127.674 93.729c.536 2.909.471 6.125 1.139 9.181 1.918 8.772 8.677 14.378 17.234 14.678 7.812.274 15.087-5.312 17.31-13.291 2.229-7.999-1.143-15.853-8.739-20.456-1.836-1.113-3.604-2.339-5.635-3.8.624-.541 1.479-.795 2.67-1.051 11.735 4.349 17.513 13.877 15.315 24.703-1.988 9.791-10.463 16.95-20.434 17.26-9.479.294-18.823-7.007-21.133-16.525-.39-1.607-.73-3.226-1.286-5.172.969-1.986 2.13-3.639 3.558-5.527z"/><path fill="#5b88c7" d="M66.244 232.314c-4.12-11.774.809-21.949 12.267-25.591 8.451-2.687 16.801-2.366 24.472 2.448 11.846 7.434 11.82 22.973.138 30.585-10.982 7.156-31.205 4.568-36.877-7.441z"/><path fill="#5987c6" d="M231.007 205.966c3.41.588 6.962.756 10.202 1.847 7.669 2.583 11.972 8.462 12.235 15.873.26 7.335-4.037 14.41-11.457 17.028-4.432 1.564-9.36 1.859-14.104 2.352-3.285.342-6.635.049-10.457-.472-.514-10.475-.452-20.438-.579-30.399-.048-3.815 1.51-5.388 5.334-5.366 2.94.017 5.883-.553 8.825-.862z"/><path fill="#7598cf" d="M230.616 205.864c-2.551.411-5.494.982-8.434.965-3.824-.022-5.382 1.551-5.334 5.366l.112 30.356c-.558-.328-1.658-1.119-1.666-1.922l-.076-34.867 15.399.102z"/><path fill="#5b88c7" d="M168.268 229.906l-17.95.018 9.939-16.701 8.915 14.146c.329.548-.293 1.666-.904 2.538z"/><path fill="#d1daef" d="M156.245 89.755c5.642 6.728 5.219 14.811-.776 20.255-5.784 5.252-13.912 5.035-19.278-.516-5.26-5.442-5.508-14.002-.565-19.502 4.663-5.188 14.431-5.43 20.619-.237M141.22 109.5c7.52 2.499 13.571.015 15.388-6.317 1.959-6.827-1.127-12.474-7.878-14.415-4.788-1.376-9.851 1.111-12.38 6.082-2.637 5.182-1.152 10.277 4.869 14.65z"/><path fill="#dde4f3" d="M140.873 109.339c-5.674-4.212-7.159-9.307-4.523-14.489 2.529-4.971 7.592-7.458 12.38-6.082 6.751 1.941 9.837 7.588 7.878 14.415-1.817 6.331-7.869 8.816-15.735 6.156m-.335-13.291c-2.689 3.582-1.067 6.858 1.949 8.42 2.184 1.131 6.138 1.123 8.042-.196 1.553-1.076 2.432-5.544 1.441-7.24-1.166-1.996-4.583-2.944-7.211-3.679-.964-.27-2.462 1.368-4.222 2.695z"/><path fill="#f8fafc" d="M140.791 95.768c1.507-1.047 3.005-2.685 3.969-2.415 2.628.735 6.045 1.683 7.211 3.679.991 1.697.112 6.165-1.441 7.24-1.904 1.319-5.858 1.327-8.042.196-3.016-1.562-4.639-4.839-1.697-8.7m3.542-.034c-2.887 3.592-2.602 7.036.84 7.763 1.378.291 3.525-.233 4.408-1.212s1.371-3.706.71-4.391c-1.257-1.303-3.457-1.696-5.958-2.161z"/><path fill="#fdfefe" d="M144.68 95.581c2.155.618 4.354 1.011 5.612 2.313.661.685.174 3.412-.71 4.391s-3.03 1.503-4.408 1.212c-3.443-.727-3.727-4.171-.494-7.916z"/></svg>'
|
32
|
-
};
|
33
|
-
/** */
|
34
|
-
export class DesignerRef {
|
35
|
-
constructor(_designer, _element, mode) {
|
36
|
-
this._designer = _designer;
|
37
|
-
this._element = _element;
|
38
|
-
this.mode = mode;
|
39
|
-
this._lock$ = new Subject();
|
40
|
-
this._state$ = new Subject();
|
41
|
-
}
|
42
|
-
get designer() { return this._designer; }
|
43
|
-
get model() { return this._element; }
|
44
|
-
get unlock() { return this._lock$.asObservable(); }
|
45
|
-
get state() { return this._state$.asObservable(); }
|
46
|
-
create(element, template) {
|
47
|
-
const ref = new DesignerRef(this._designer, element, 'widget');
|
48
|
-
const injector = Injector.create([{
|
49
|
-
provide: DesignerRef, useValue: ref
|
50
|
-
}], this._element.injector);
|
51
|
-
element.template = template;
|
52
|
-
element.injector = injector;
|
53
|
-
return element;
|
54
|
-
}
|
55
|
-
}
|
7
|
+
import * as i2 from "./declarations";
|
56
8
|
/** */
|
57
9
|
export class DesignerElementComponentBase {
|
58
10
|
constructor(_fb, _ref) {
|
@@ -76,13 +28,10 @@ DesignerElementComponentBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0
|
|
76
28
|
DesignerElementComponentBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.6", type: DesignerElementComponentBase, ngImport: i0 });
|
77
29
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: DesignerElementComponentBase, decorators: [{
|
78
30
|
type: Directive
|
79
|
-
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: DesignerRef, decorators: [{
|
31
|
+
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.DesignerRef, decorators: [{
|
80
32
|
type: Inject,
|
81
33
|
args: [DesignerRef]
|
82
34
|
}] }]; } });
|
83
|
-
export function clone(element) {
|
84
|
-
return JSON.parse(JSON.stringify(element));
|
85
|
-
}
|
86
35
|
export class DesignerTypeElementComponent extends DesignerElementComponentBase {
|
87
36
|
constructor(_fb, _ref) {
|
88
37
|
super(_fb, _ref);
|
@@ -90,36 +39,19 @@ export class DesignerTypeElementComponent extends DesignerElementComponentBase {
|
|
90
39
|
this._ref = _ref;
|
91
40
|
this.mode = _ref.mode;
|
92
41
|
this.model = _ref.model;
|
93
|
-
if (_ref.mode !== 'widget')
|
94
|
-
this.save = new EventEmitter();
|
95
42
|
}
|
96
43
|
}
|
97
44
|
DesignerTypeElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: DesignerTypeElementComponent, deps: [{ token: i1.FormBuilder }, { token: DesignerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
98
|
-
DesignerTypeElementComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.6", type: DesignerTypeElementComponent, usesInheritance: true, ngImport: i0 });
|
45
|
+
DesignerTypeElementComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.6", type: DesignerTypeElementComponent, viewQueries: [{ propertyName: "designer", first: true, predicate: DesignerItemComponent, descendants: true }], usesInheritance: true, ngImport: i0 });
|
99
46
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: DesignerTypeElementComponent, decorators: [{
|
100
47
|
type: Directive
|
101
|
-
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: DesignerRef, decorators: [{
|
48
|
+
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.DesignerRef, decorators: [{
|
102
49
|
type: Inject,
|
103
50
|
args: [DesignerRef]
|
104
|
-
}] }]; }
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
if (isString(val))
|
109
|
-
return [val];
|
110
|
-
return val;
|
111
|
-
}
|
112
|
-
const NAME_CHAR = /[A-Z]+/g, NON_NAME_CHAR = /[^\w]+/g;
|
113
|
-
/**
|
114
|
-
*
|
115
|
-
* @param name
|
116
|
-
*/
|
117
|
-
export function programName(name) {
|
118
|
-
return name.
|
119
|
-
replace(' ', '-').
|
120
|
-
replace(NAME_CHAR, (c, i) => (i > 0 && name.charAt(i - 1) !== '-' ? '-' : '') + c.toLowerCase()).
|
121
|
-
replace(NON_NAME_CHAR, '_');
|
122
|
-
}
|
51
|
+
}] }]; }, propDecorators: { designer: [{
|
52
|
+
type: ViewChild,
|
53
|
+
args: [DesignerItemComponent]
|
54
|
+
}] } });
|
123
55
|
/** */
|
124
56
|
export class DesignerCubeElementComponent extends DesignerElementComponentBase {
|
125
57
|
constructor(fb, ref) {
|
@@ -167,8 +99,17 @@ DesignerCubeElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0
|
|
167
99
|
DesignerCubeElementComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.6", type: DesignerCubeElementComponent, usesInheritance: true, ngImport: i0 });
|
168
100
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: DesignerCubeElementComponent, decorators: [{
|
169
101
|
type: Directive
|
170
|
-
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: DesignerRef, decorators: [{
|
102
|
+
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.DesignerRef, decorators: [{
|
171
103
|
type: Inject,
|
172
104
|
args: [DesignerRef]
|
173
105
|
}] }]; } });
|
174
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzaWduZXIuYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvYWRtaW4vY29uZmlndXJhdGlvbi1kZXNpZ25lci9kZXNpZ25lci5iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFLbEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFDL0IsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLE9BQU8sRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQXNCSjtJQUNMLEtBQUssRUFBRSwwaERBQTBoRDtJQUNqaUQseXpSQUF5elI7Q0FDMXpSLENBQUM7QUFDRixNQUFNO0FBQ04sTUFBTSxPQUFPLFdBQVc7SUFHdEIsWUFBb0IsU0FBd0IsRUFDbEMsUUFBc0IsRUFDdkIsSUFBZ0I7UUFGTCxjQUFTLEdBQVQsU0FBUyxDQUFlO1FBQ2xDLGFBQVEsR0FBUixRQUFRLENBQWM7UUFDdkIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUp6QixXQUFNLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUNoQyxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQU8sQ0FBQztJQUdBLENBQUM7SUFDOUIsSUFBSSxRQUFRLEtBQW1CLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDdkQsSUFBSSxLQUFLLEtBQXFCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDckQsSUFBSSxNQUFNLEtBQUssT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNuRCxJQUFJLEtB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bmplY3QsIEluamVjdG9yLCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBGb3JtQXJyYXksIEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgQ2RrRHJhZ0Ryb3AgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2RyYWctZHJvcFwiO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3RDaGFuZ2UgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0XCI7XHJcbmltcG9ydCB7IFNjb3BlVHlwZSB9IGZyb20gXCIuLi8uLi9jb3JlL2NvbmZpZ3VyYXRpb25cIjtcclxuaW1wb3J0IHsgaXNBcnJheSwgaXNTdHJpbmcgfSBmcm9tIFwiLi4vLi4vY29yZS9mdW5jdGlvbnNcIjtcclxuaW1wb3J0IHsgQXhlc01hcCwgQ2hhcnRUeXBlLCBDdWJlRmlsdGVyLCBGaWVsZEluZm8sIEZvbGRlckNvbHVtbiwgR3VpZGVTdGVwLCBQb3NpdGlvblBvbGljeSwgVmlld1R5cGUgfSBmcm9tIFwiLi4vLi4vY29yZS9tb2RlbHNcIjtcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XHJcbmV4cG9ydCBjb25zdCBGQU1JTFlfU1ZHID0ge1xyXG4gIFwiQXp1cmVcIjogYDxzdmcgd2lkdGg9XCIzNFwiIGhlaWdodD1cIjM0XCIgdmlld0JveD1cIjAgMCA5NiA5NlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgIDxkZWZzPlxyXG4gICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD1cImUzOTljMTlmLWI2OGYtNDI5ZC1iMTc2LTE4YzIxMTdmZjczY1wiIHgxPVwiLTEwMzIuMTcyXCIgeDI9XCItMTA1OS4yMTNcIiB5MT1cIjE0NS4zMTJcIiB5Mj1cIjY1LjQyNlwiIGdyYWRpZW50VHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIC0xIDEwNzUgMTU4KVwiIGdyYWRpZW50VW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgICAgICA8c3RvcCBvZmZzZXQ9XCIwXCIgc3RvcC1jb2xvcj1cIiMxMTRhOGJcIi8+XHJcbiAgICAgICAgICAgIDxzdG9wIG9mZnNldD1cIjFcIiBzdG9wLWNvbG9yPVwiIzA2NjliY1wiLz5cclxuICAgICAgICA8L2xpbmVhckdyYWRpZW50PlxyXG4gICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD1cImFjMmE2ZmMyLWNhNDgtNDMyNy05YTNjLWQ0ZGNjMzI1NmUxNVwiIHgxPVwiLTEwMjMuNzI1XCIgeDI9XCItMTAyOS45OFwiIHkxPVwiMTA4LjA4M1wiIHkyPVwiMTA1Ljk2OFwiIGdyYWRpZW50VHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIC0xIDEwNzUgMTU4KVwiIGdyYWRpZW50VW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgICAgICA8c3RvcCBvZmZzZXQ9XCIwXCIgc3RvcC1vcGFjaXR5PVwiLjNcIi8+XHJcbiAgICAgICAgICAgIDxzdG9wIG9mZnNldD1cIi4wNzFcIiBzdG9wLW9wYWNpdHk9XCIuMlwiLz5cclxuICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PVwiLjMyMVwiIHN0b3Atb3BhY2l0eT1cIi4xXCIvPlxyXG4gICAgICAgICAgICA8c3RvcCBvZmZzZXQ9XCIuNjIzXCIgc3RvcC1vcGFjaXR5PVwiLjA1XCIvPlxyXG4gICAgICAgICAgICA8c3RvcCBvZmZzZXQ9XCIxXCIgc3RvcC1vcGFjaXR5PVwiMFwiLz5cclxuICAgICAgICA8L2xpbmVhckdyYWRpZW50PlxyXG4gICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD1cImE3ZmVlOTcwLWE3ODQtNGJiMS1hZjhkLTYzZDE4ZTVmN2RiOVwiIHgxPVwiLTEwMjcuMTY1XCIgeDI9XCItOTk3LjQ4MlwiIHkxPVwiMTQ3LjY0MlwiIHkyPVwiNjguNTYxXCIgZ3JhZGllbnRUcmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgLTEgMTA3NSAxNTgpXCIgZ3JhZGllbnRVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgICAgIDxzdG9wIG9mZnNldD1cIjBcIiBzdG9wLWNvbG9yPVwiIzNjY2JmNFwiLz5cclxuICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PVwiMVwiIHN0b3AtY29sb3I9XCIjMjg5MmRmXCIvPlxyXG4gICAgICAgIDwvbGluZWFyR3JhZGllbnQ+XHJcbiAgICA8L2RlZnM+XHJcbiAgICA8cGF0aCBmaWxsPVwidXJsKCNlMzk5YzE5Zi1iNjhmLTQyOWQtYjE3Ni0xOGMyMTE3ZmY3M2MpXCIgZD1cIk0zMy4zMzggNi41NDRoMjYuMDM4bC0yNy4wMyA4MC4wODdhNC4xNTIgNC4xNTIgMCAwIDEtMy45MzMgMi44MjRIOC4xNDlhNC4xNDUgNC4xNDUgMCAwIDEtMy45MjgtNS40N0wyOS40MDQgOS4zNjhhNC4xNTIgNC4xNTIgMCAwIDEgMy45MzQtMi44MjV6XCIvPlxyXG4gICAgPHBhdGggZmlsbD1cIiMwMDc4ZDRcIiBkPVwiTTcxLjE3NSA2MC4yNjFoLTQxLjI5YTEuOTExIDEuOTExIDAgMCAwLTEuMzA1IDMuMzA5bDI2LjUzMiAyNC43NjRhNC4xNzEgNC4xNzEgMCAwIDAgMi44NDYgMS4xMjFoMjMuMzh6XCIvPlxyXG4gICAgPHBhdGggZmlsbD1cInVybCgjYWMyYTZmYzItY2E0OC00MzI3LTlhM2MtZDRkY2MzMjU2ZTE1KVwiIGQ9XCJNMzMuMzM4IDYuNTQ0YTQuMTE4IDQuMTE4IDAgMCAwLTMuOTQzIDIuODc5TDQuMjUyIDgzLjkxN2E0LjE0IDQuMTQgMCAwIDAgMy45MDggNS41MzhoMjAuNzg3YTQuNDQzIDQuNDQzIDAgMCAwIDMuNDEtMi45bDUuMDE0LTE0Ljc3NyAxNy45MSAxNi43MDVhNC4yMzcgNC4yMzcgMCAwIDAgMi42NjYuOTcySDgxLjI0TDcxLjAyNCA2MC4yNjFsLTI5Ljc4MS4wMDdMNTkuNDcgNi41NDR6XCIvPlxyXG4gICAgPHBhdGggZmlsbD1cInVybCgjYTdmZWU5NzAtYTc4NC00YmIxLWFmOGQtNjNkMThlNWY3ZGI5KVwiIGQ9XCJNNjYuNTk1IDkuMzY0YTQuMTQ1IDQuMTQ1IDAgMCAwLTMuOTI4LTIuODJIMzMuNjQ4YTQuMTQ2IDQuMTQ2IDAgMCAxIDMuOTI4IDIuODJsMjUuMTg0IDc0LjYyYTQuMTQ2IDQuMTQ2IDAgMCAxLTMuOTI4IDUuNDcyaDI5LjAyYTQuMTQ2IDQuMTQ2IDAgMCAwIDMuOTI3LTUuNDcyelwiLz5cclxuPC9zdmc+YCxcclxuICAnU0FQJzogJzxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiOTJcIiBoZWlnaHQ9XCIzNFwiIHZpZXdCb3g9XCIwIDAgOTIgNDVcIj48bGluZWFyR3JhZGllbnQgaWQ9XCJhXCIgZ3JhZGllbnRVbml0cz1cInVzZXJTcGFjZU9uVXNlXCIgeDE9XCI0NS40ODNcIiB4Mj1cIjQ1LjQ4M1wiIHkyPVwiNDUuMDAxXCI+PHN0b3Agb2Zmc2V0PVwiMFwiIHN0b3AtY29sb3I9XCIjMDBBRUVGXCIvPjxzdG9wIG9mZnNldD1cIi4yMTJcIiBzdG9wLWNvbG9yPVwiIzAwOTdEQ1wiLz48c3RvcCBvZmZzZXQ9XCIuNTE5XCIgc3RvcC1jb2xvcj1cIiMwMDdDQzVcIi8+PHN0b3Agb2Zmc2V0PVwiLjc5MlwiIHN0b3AtY29sb3I9XCIjMDA2Q0I4XCIvPjxzdG9wIG9mZnNldD1cIjFcIiBzdG9wLWNvbG9yPVwiIzAwNjZCM1wiLz48L2xpbmVhckdyYWRpZW50PjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZmlsbD1cInVybCgjYSlcIiBkPVwiTTAgNDVoNDUuOTc0TDkwLjk2NiAwSDB2NDVcIi8+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBmaWxsPVwiI2ZmZlwiIGQ9XCJNNTMuOTg0IDlINDVsLjAzIDIxLjEzLTcuODIzLTIxLjEzN0gyOS40NWwtNi42NzggMTcuNjUzYy0uNzEtNC40OTItNS4zNTQtNi4wNDItOS4wMDgtNy4yMDMtMi40MTMtLjc3NS00Ljk3NC0xLjkxNS00Ljk0OC0zLjE3NS4wMi0xLjAzNCAxLjM3LTEuOTkzIDQuMDUzLTEuODUgMS44LjA5NyAzLjM5LjI0MiA2LjU1MyAxLjc3bDMuMTEtNS40MkMxOS42NDggOS4zIDE1LjY2IDguMzczIDEyLjM5IDguMzdoLS4wMmMtMy44MTMgMC02Ljk4OCAxLjIzNS04Ljk1NiAzLjI3LTEuMzcyIDEuNDItMi4xMTIgMy4yMjYtMi4xNDIgNS4yMjMtLjA1IDIuNzQ4Ljk1NyA0LjY5NiAzLjA3MyA2LjI1MyAxLjc4OCAxLjMxIDQuMDc1IDIuMTYgNi4wOSAyLjc4NCAyLjQ4NS43NyA0LjUxNSAxLjQ0IDQuNDkgMi44NjYtLjAyLjUyLS4yMTYgMS4wMDYtLjU5IDEuMzk4LS42Mi42NC0xLjU3Ljg4LTIuODg1LjkwNi0yLjUzNy4wNTQtNC40MTctLjM0NS03LjQxMy0yLjExNkwxLjI3IDM0LjQ0NEM0LjI2MyAzNi4xNDYgNy40NCAzNyAxMS4wNSAzN2wuODEyLS4wMDZjMy4xNDItLjA1NyA1LjY5Mi0uODEgNy43MTgtMi40NC4xMTYtLjA5My4yMi0uMTg3LjMyOC0uMjgybC0uMzQgMS43NTIgNy41OC0uMDI0IDEuMzYtMy40ODJjMS40My40ODggMy4wNTYuNzU4IDQuNzgyLjc1OCAxLjY4MiAwIDMuMjY0LS4yNTYgNC42NjctLjcxNmwuOTQ4IDMuNDQgMTMuNi4wMTMuMDMzLTcuOTM4aDIuODk0YzYuOTk1IDAgMTEuMTMtMy41NiAxMS4xMy05LjUzQzY2LjU2IDExLjg5NiA2Mi41NCA5IDUzLjk4NCA5ek0zMy4yOSAyNy4wNjJjLTEuMDQ1IDAtMi4wMjUtLjE4Mi0yLjg2OC0uNTAybDIuODM2LTguOTU1aC4wNTVsMi43OSA4Ljk4Yy0uODQuMy0xLjc5Ny40NzctMi44MTQuNDc3em0yMS4yMi01LjE0NWgtMS45NzRWMTQuN2gxLjk3NWMyLjYzIDAgNC43My44NzYgNC43MyAzLjU2Mi0uMDAyIDIuNzgtMi4xIDMuNjU1LTQuNzMgMy42NTVcIi8+PHBhdGggZmlsbD1cIm5vbmVcIiBkPVwiTTAgMGg5MnY0NUgwelwiLz48L3N2Zz4nLFxyXG4gIC8vICAnTWZnJzogJzxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMzRcIiBoZWlnaHQ9XCIzNFwiIHZpZXdCb3g9XCIwIDAgMzE2IDMxNlwiIHhtbG5zOnY9XCJodHRwczovL3ZlY3RhLmlvL25hbm9cIj48cGF0aCBmaWxsPVwiIzU5ODdjNlwiIGQ9XCJNMjE2IDMxN0gxVjFoMzE2djMxNkgyMTZtLTc3LjQ3LTE3Ny4zMzNsNC4wMzEtNC4wMDcgNS45OTEtNS45OSAzLjk4Ny00LjA1NGMyLjc2Ni0yLjE0OSA1LjUzMi00LjI5OSA4LjY1Ny01LjkxMyAxLjU3OCAxLjQ3IDMuMTU3IDIuOTQxIDUuMDY4IDQuOTE0Ljg4NS44MjggMS43NjkgMS42NTYgMy4wMTUgMy4wMDQgMS4yMzcgMS4xNCAyLjQ3NSAyLjI4IDMuOTY3IDQuMDAxIDEuNjMzIDIuNTg4IDMuNjk4IDIuMjc4IDUuMjU3LjI1MiAzLjMxNC00LjMwOSA3LjQ1NS04LjQ0OSA5LjIwNC0xMy4zODYgMi43MzYtNy43MTkgMy43Ny0xNi4wNDIgNi4wNzktMjMuNjM5IDEyLjYzNyAxOC44MDUgMTAuNjU2IDM2Ljg1OS0zLjE4NiA1NC40NTRsMjIuNzEyIDIyLjY4MmM1LjYwMiA1LjU5OCA5LjExOSA1LjQ2OCAxMy40MjktMS40MTIgMS44MzktMi45MzUgMy4wMjYtNi44MDUgMy4wNTctMTAuMjYzbC4xMTItODAuOTZjLS4wMjYtMTAuNDIxLTYuODMyLTE3LjI0LTE3LjI0OC0xNy4yNThsLTEwNS45NS0uMDAxYy0xMC4yMTYuMDE3LTE2Ljg4IDYuNTU1LTE3LjI1MiAxNi43NzYtLjE3NiA0LjgyNS0uMDQ3IDkuNjYxLS4wNDcgMTQuNDkybC0uMDE5IDY1Ljk2OWMtLjAxOSA3LjA1MiAyLjM1MSAxMi43NTkgOC43NDUgMTYuMTkxIDEuMTg1LjYzNiAzLjYwMS44NjYgNC4zNS4xNDRsMjYuODcyLTI2LjYyMmMtMS42ODctMi42MjQtMy4xMS00LjgzOC0zLjY5OC03LjA0NSAxLjYyOS4yMzYgMy4zNzMuMTc5IDQuODY0Ljc2NiAzLjQzMyAxLjM1MyA1Ljc0MS4yMzUgOC4wMDMtMy4wOTVtLTI4LjYyOSAxMDQuNjIyYzE2LjgxLTEyLjk3NyAxMy45ODUtMzQuODc4LTUuNzEzLTQyLjg0OC0xMS41MjYtNC42NjQtMjMuMTg3LTQuMTIxLTM0LjM4NSAxLjI0OC04Ljk1MyA0LjI5My0xNC4yNjEgMTEuNDY1LTE0LjMxMiAyMS42NDlzNS4yNzEgMTcuMjQ1IDE0LjA5MyAyMS44MTNjNy44MDYgNC4wNDIgMTYuMjE3IDQuOTYxIDI0Ljc3NSAzLjgxMyAzLjQ4Ny0uNDY4IDYuMjA4LjA5NiA4LjUyNSAyLjYwMSA0LjUyIDQuODg3IDEwLjA1MiAzLjMzMSAxNi42NzggMi45OTktMy45MjUtMy4xNC02Ljk2Ni01LjQzLTkuNzk2LTcuOTU3LS41NTctLjQ5Ny0uMy0xLjkwNS4xMzUtMy4zMTdtMTUyLjIwMi0xNS43MTdjMS45MDUtMTQuMzkzLTcuMTE3LTI2LjQ3LTIyLjg5Mi0yOC4zNzgtMTAuNDY0LTEuMjY2LTIxLjIwNS0uMjQtMzIuMTEtLjI0djQ5LjY2MmM5LjQxIDAgMTguNDM2LjYyIDI3LjM0My0uMTQ3IDEyLjk0NS0xLjExNCAyMy4zNDgtNi41NjUgMjcuNjU5LTIwLjg5N20tOTcuMjE0LTI0LjAwN2wtNC43MTUtNy4xNDEtMzEuOTA4IDUyLjI0OGM0LjY4My0uNTEzIDkuNDEzIDIuMjk1IDExLjIxNS0yLjUxMyAzLjc1My0xMC4wMTcgMTEuMDE0LTEyLjA1MyAyMC40NC0xMC42ODEgMS45NTcuMjg1IDQuMDQ2LjM0MiA1Ljk3OS0uMDEyIDcuMDg4LTEuMjk5IDExLjg1IDEuNDIgMTQuNDgyIDcuOTk0IDIuNDEgNi4wMTkgNy4wODQgNS44MzYgMTMuMDM1IDQuNzgzbC0yOC41MjktNDQuNjc3elwiLz48cGF0aCBmaWxsPVwiI2ZkZmVmZVwiIGQ9XCJNMTI0LjgyOCAxNDEuOTg5bDQuNTMzIDcuMDUyLTI2Ljg3MiAyNi42MjJjLS43NDkuNzIyLTMuMTY0LjQ5My00LjM1LS4xNDQtNi4zOTMtMy40MzMtOC43NjMtOS4xMzktOC43NDUtMTYuMTkxbC4wMTktNjUuOTY5YzAtNC44MzEtLjEyOS05LjY2Ny4wNDctMTQuNDkyLjM3My0xMC4yMjIgNy4wMzYtMTYuNzU5IDE3LjI1Mi0xNi43NzZsMTA1Ljk1LjAwMWMxMC40MTYuMDE4IDE3LjIyMSA2LjgzNyAxNy4yNDggMTcuMjU4bC0uMTEyIDgwLjk2Yy0uMDMxIDMuNDU4LTEuMjE4IDcuMzI4LTMuMDU3IDEwLjI2My00LjMwOSA2Ljg4LTcuODI3IDcuMDEtMTMuNDI5IDEuNDEyTDE5MC42IDE0OS4zMDJjMTMuODQxLTE3LjU5NSAxNS44MjMtMzUuNjQ4IDIuNzkxLTU0Ljk4MmwtNy4zNTItNy4zNjJjLTIuNTAyLTEuNjY0LTQuODA4LTMuMDc4LTcuMzYzLTQuNjc4LTIuMDUxLS44NTctMy44NTQtMS41MzEtNi4wMTctMi4zOTItNC4xMTYtLjcxNi03Ljg3Mi0xLjI0My0xMi4wNTItMS44My0zLjE1NS4yNzEtNS44ODcuNi04Ljk1NC45MzItMS4xOTEuMjU2LTIuMDQ3LjUwOS0zLjI3Ny43OTMtOC41MTMgMi40NjUtMTUuNTA3IDYuNTc1LTIwLjcwMyAxMy45NDZsLTMuOTk5IDUuNDE5Yy0uNzQyIDEuOTE1LTEuMjM0IDMuNjA1LTIuMDQxIDUuNTM5LTEuMDI2IDMuOTQ3LTEuNzM4IDcuNjUxLTIuNDk0IDExLjc2Mi0uMTA1IDEuNzczLS4xNjUgMy4xMzktLjUyMyA0Ljc0Mi40MjQgNC4wNyAxLjE0NSA3LjkwMyAxLjk1MSAxMi4xMTIgMS40NzYgMy4xNDcgMi44NjggNS45MTcgNC4yNjEgOC42ODd6XCIvPjxwYXRoIGQ9XCJNMTA5LjYyNCAyNDQuNTAxYy0uMTU4IDEuMi0uNDE1IDIuNjA4LjE0MSAzLjEwNSAyLjgzIDIuNTI3IDUuODcxIDQuODE4IDkuNzk2IDcuOTU3LTYuNjI2LjMzMi0xMi4xNTggMS44ODktMTYuNjc4LTIuOTk5LTIuMzE3LTIuNTA1LTUuMDM4LTMuMDY4LTguNTI1LTIuNjAxLTguNTU4IDEuMTQ4LTE2Ljk2OS4yMjktMjQuNzc1LTMuODEzLTguODIyLTQuNTY4LTE0LjE0NC0xMS42MjUtMTQuMDkzLTIxLjgxM3M1LjM1OS0xNy4zNTYgMTQuMzEyLTIxLjY0OWMxMS4xOTgtNS4zNjkgMjIuODU5LTUuOTEyIDM0LjM4NS0xLjI0OCAxOS42OTggNy45NyAyMi41MjIgMjkuODcgNS40MzYgNDMuMDZtLTQzLjIxMS0xMS44MjRjNS41MDMgMTEuNjQ2IDI1LjcyNSAxNC4yMzQgMzYuNzA3IDcuMDc4IDExLjY4Mi03LjYxMiAxMS43MDgtMjMuMTUxLS4xMzgtMzAuNTg1LTcuNjcxLTQuODE0LTE2LjAyMS01LjEzNC0yNC40NzItMi40NDgtMTEuNDU4IDMuNjQzLTE2LjM4NyAxMy44MTctMTIuMDk4IDI1Ljk1NHptMTk1LjYyLTMuNzA3Yy00LjI0MSAxMy45MzUtMTQuNjQ0IDE5LjM4Ni0yNy41ODkgMjAuNTAxLTguOTA3Ljc2Ny0xNy45MzMuMTQ3LTI3LjM0My4xNDd2LTQ5LjY2MmMxMC45MDYgMCAyMS42NDYtMS4wMjYgMzIuMTEuMjQgMTUuNzc0IDEuOTA4IDI0Ljc5NyAxMy45ODUgMjIuODIyIDI4Ljc3NG0tMzEuODA3LTIzLjIwN2gtMTUuMDA4bC4wNzYgMzQuODY3Yy4wMDguODAyIDEuMTA4IDEuNTk0IDIuNjM0IDIuNDc3IDMuMzIxLjAwOSA2LjY3Mi4zMDIgOS45NTYtLjA0IDQuNzQ0LS40OTMgOS42NzItLjc4OCAxNC4xMDQtMi4zNTIgNy40MTktMi42MTggMTEuNzE3LTkuNjkzIDExLjQ1Ny0xNy4wMjgtLjI2My03LjQxMS00LjU2Ni0xMy4yOS0xMi4yMzUtMTUuODczLTMuMjQxLTEuMDkxLTYuNzkyLTEuMjU5LTEwLjk4NS0yLjA1MnpcIiBmaWxsPVwiI2ZhZmJmZFwiLz48cGF0aCBmaWxsPVwiI2Y4ZmFmY1wiIGQ9XCJNMTY1LjA3MiAyMDQuODc3bDI4LjM0NSA0NC4zNjZjLTUuOTUxIDEuMDUzLTEwLjYyNSAxLjIzNi0xMy4wMzUtNC43ODMtMi42MzItNi41NzQtNy4zOTQtOS4yOTMtMTQuNDgyLTcuOTk0LTEuOTMzLjM1NC00LjAyMi4yOTctNS45NzkuMDEyLTkuNDI3LTEuMzcyLTE2LjY4Ny42NjQtMjAuNDQgMTAuNjgxLTEuODAyIDQuODA4LTYuNTMyIDItMTEuMjE1IDIuNTEzbDMxLjkwOC01Mi4yNDggNC44OTggNy40NTNtMy42MjUgMjUuMDExYy4xODEtLjg1NC44MDQtMS45NzIuNDc1LTIuNTItMi43MTYtNC41My01LjYwOC04Ljk1NC04LjkxNS0xNC4xNDZsLTkuOTM5IDE2LjcwMSAxOC4zNzktLjAzNXpcIi8+PHBhdGggZmlsbD1cIiNhOWJiZTFcIiBkPVwiTTE1MS45ODkgNzguOTg4bDguNzE0LS42MSAzLjQ2OCA0LjI5NWMxMC4yNTUgMTEuNzkgOC45MDcgMjYuNjc1LTMuMzM1IDM2LjQ5NC0yLjc2NiAyLjE0OS01LjUzMiA0LjI5OS04LjkxNCA2LjQ5OS01LjYtLjc2OS0xMC43NjgtMS4wMTMtMTUuNTI3LTIuNTM4LTguMjY1LTIuNjQ4LTE0LjY5NS0xMS41MTUtMTQuNDQ4LTE4LjY4Ni40OTMtMS42OS45ODUtMy4zODEgMS45MTktNC45NjMuODA0IDEuNzIyIDEuMTQ0IDMuMzQxIDEuNTM1IDQuOTQ4IDIuMzExIDkuNTE4IDExLjY1NSAxNi44MTkgMjEuMTMzIDE2LjUyNSA5Ljk3MS0uMzA5IDE4LjQ0Ny03LjQ2OCAyMC40MzQtMTcuMjYgMi4xOTgtMTAuODI2LTMuNTgtMjAuMzU0LTE0Ljk4LTI0LjcwNXpcIi8+PHBhdGggZmlsbD1cIiM5OGIwZGJcIiBkPVwiTTE2MS4wMTYgMTE5LjQzNWMxMi4wNjMtMTAuMDg3IDEzLjQxMS0yNC45NzIgMy4xNTYtMzYuNzYyLTEuMDctMS4yMy0xLjk3MS0yLjYwNy0zLjA0NS00LjIzNiAzLjY2MS4yMDggNy40MTcuNzM1IDExLjU2MiAxLjgyMiAxLjA3MyAyLjQyMSAxLjY3OSA0LjMxNiAyLjQ1NiA2LjEzOSA1LjkxNCAxMy44ODQgMi40ODIgMjcuOTg3LTkuMjE0IDM3LjcxNWwtNC45MTUtNC42Nzh6XCIvPjxwYXRoIGZpbGw9XCIjNjc4ZmNhXCIgZD1cIk0xODYuMjM1IDg3LjIwN2w2Ljg3OSA2Ljg3OWMtMS42MzcgOC4zNi0yLjY3MSAxNi42ODMtNS40MDcgMjQuNDAyLTEuNzUgNC45MzctNS44OSA5LjA3Ny05LjIwNCAxMy4zODYtMS41NTggMi4wMjYtMy42MjQgMi4zMzYtNS4yMDYtLjgzMiA2Ljc0Ni04LjQxMSAxMi40NDYtMTYuODIgMTMuMTk0LTI3LjQ1NC4zODItNS40MjctLjE0MS0xMC45MTgtLjI1Ni0xNi4zODF6XCIvPjxwYXRoIGZpbGw9XCIjNzU5OGNmXCIgZD1cIk0xODYuMDM5IDg2Ljk1OGMuMzEgNS43MTEuODMzIDExLjIwMi40NTEgMTYuNjMtLjc0OCAxMC42MzQtNi40NDggMTkuMDQzLTEzLjMyMSAyNy4xNjMtMS40MTYtLjg1MS0yLjY1My0xLjk5MS0zLjc4OC0zLjU5MSAxMC4zOTEtOS42MjEgMTQuMzg2LTIwLjk1OCAxMS44MDUtMzQuNTI0LS42NDktMy40MS0xLjUwMi02Ljc4Mi0yLjI2MS0xMC4xNzFsNy4xMTQgNC40OTN6XCIvPjxwYXRoIGQ9XCJNMTE4LjkxNCAxMjAuOTUzYy4wNi0xLjM2NS4xMi0yLjczMS41NjgtNC40NjUgMi4zNjYgMS4wMzcgNC4yNTggMi41OSA2LjM0MSAzLjgxOCA0LjYxOCAyLjcyMyA5LjIyIDUuNTIgMTQuMDU0IDcuODEgMi40NjkgMS4xNyA1LjQyNCAxLjMxMyA4LjE1OSAxLjkyMS0xLjgyNSAxLjg3NC0zLjY1IDMuNzQ4LTYuMDkyIDUuNjU5LTIuNjU5LS41ODMtNC43ODEtMS4wMTktNi43MzEtMS44NTUtNi41NzgtMi44MTktMTMuNzU0LTQuOTQ4LTE2LjI5OS0xMi44ODl6bTU5Ljc2Mi0zOC42NzJjMS4wMDggMy41NzQgMS44NjEgNi45NDUgMi41MDkgMTAuMzU1IDIuNTgxIDEzLjU2Ni0xLjQxNCAyNC45MDMtMTEuOTg1IDM0LjI2NC0xLjE2OC0uNjI4LTIuMDUyLTEuNDU2LTMuMTAzLTIuNTM1IDExLjUyOS05Ljk4IDE0Ljk2MS0yNC4wODMgOS4wNDctMzcuOTY3LS43NzYtMS44MjMtMS4zODItMy43MTgtMi4wOTYtNS45NSAxLjc3NC4zMDIgMy41NzcuOTc1IDUuNjI4IDEuODMzelwiIGZpbGw9XCIjODNhMWQ0XCIvPjxwYXRoIGZpbGw9XCIjOThiMGRiXCIgZD1cIk0xNDguMjk0IDEyOS44NTNjLTIuOTkzLS40MjMtNS45NDgtLjU2Ny04LjQxNy0xLjczNy00LjgzNC0yLjI5MS05LjQzNi01LjA4OC0xNC4wNTQtNy44MS0yLjA4My0xLjIyOC0zLjk3NS0yLjc4MS02LjI5Ni00LjIyNi4zNjktMy43NDIgMS4wODEtNy40NDYgMi4xMDYtMTEuMzkzLjA2NyA2LjkyNyA2LjQ5NyAxNS43OTQgMTQuNzYyIDE4LjQ0MiA0Ljc1OSAxLjUyNSA5LjkyNyAxLjc2OSAxNS4yNDQgMi43MTgtLjgwNyAxLjM2LTEuOTQ4IDIuNTkxLTMuMzQ2IDQuMDA2elwiLz48cGF0aCBmaWxsPVwiIzc1OThjZlwiIGQ9XCJNMTE4LjYxNyAxMjEuMTljMi44NDMgNy43MDMgMTAuMDE5IDkuODMyIDE2LjU5NyAxMi42NTEgMS45NS44MzYgNC4wNzIgMS4yNzIgNi40NiAyLjAzOC0uODE4IDEuMzYtMS45ODEgMi41NzQtMy42OTcgMy43NjEtNi4yLTIuMjU2LTExLjg0Ny00LjQ4NS0xNy40OTMtNi43MTUtLjcyMS0zLjgzMi0xLjQ0My03LjY2NS0xLjg2Ni0xMS43MzV6XCIvPjxwYXRoIGZpbGw9XCIjNjc4ZmNhXCIgZD1cIk0xMjAuNTY3IDEzMy4zMDJjNS41NjIgMS44NTMgMTEuMjA5IDQuMDgyIDE3LjE0NSA2LjUxNS0xLjQ0NSAzLjE4LTMuNzUyIDQuMjk4LTcuMTg2IDIuOTQ1LTEuNDkxLS41ODctMy4yMzUtLjUzLTUuMjgxLS43NjktMS44MDktMi43NzMtMy4yMDEtNS41NDQtNC42NzgtOC42OXpcIi8+PHBhdGggZmlsbD1cIiNjM2NmZWFcIiBkPVwiTTEyNy45NCA5My40OTZjNC45MjktNy4xMzggMTEuOTI0LTExLjI0OCAyMC42NjktMTMuNDI1IDIuNDA2IDEuNDMyIDQuMTc0IDIuNjU4IDYuMDEgMy43NzEgNy41OTYgNC42MDMgMTAuOTY4IDEyLjQ1NyA4LjczOSAyMC40NTYtMi4yMjMgNy45NzktOS40OTkgMTMuNTY1LTE3LjMxIDEzLjI5MS04LjU1Ny0uMy0xNS4zMTYtNS45MDYtMTcuMjM0LTE0LjY3OC0uNjY4LTMuMDU2LS42MDMtNi4yNzItLjg3My05LjQxNW0yOC4wMzgtNC4wMDhjLTUuOTItNC45MjUtMTUuNjg3LTQuNjgzLTIwLjM1MS41MDUtNC45NDQgNS41LTQuNjk2IDE0LjA2LjU2NSAxOS41MDIgNS4zNjYgNS41NTEgMTMuNDkzIDUuNzY4IDE5LjI3OC41MTYgNS45OTUtNS40NDQgNi40MTgtMTMuNTI3LjUwOC0yMC41MjN6XCIvPjxwYXRoIGZpbGw9XCIjYjVjNGU1XCIgZD1cIk0xMjcuNjc0IDkzLjcyOWMuNTM2IDIuOTA5LjQ3MSA2LjEyNSAxLjEzOSA5LjE4MSAxLjkxOCA4Ljc3MiA4LjY3NyAxNC4zNzggMTcuMjM0IDE0LjY3OCA3LjgxMi4yNzQgMTUuMDg3LTUuMzEyIDE3LjMxLTEzLjI5MSAyLjIyOS03Ljk5OS0xLjE0My0xNS44NTMtOC43MzktMjAuNDU2LTEuODM2LTEuMTEzLTMuNjA0LTIuMzM5LTUuNjM1LTMuOC42MjQtLjU0MSAxLjQ3OS0uNzk1IDIuNjctMS4wNTEgMTEuNzM1IDQuMzQ5IDE3LjUxMyAxMy44NzcgMTUuMzE1IDI0LjcwMy0xLjk4OCA5Ljc5MS0xMC40NjMgMTYuOTUtMjAuNDM0IDE3LjI2LTkuNDc5LjI5NC0xOC44MjMtNy4wMDctMjEuMTMzLTE2LjUyNS0uMzktMS42MDctLjczLTMuMjI2LTEuMjg2LTUuMTcyLjk2OS0xLjk4NiAyLjEzLTMuNjM5IDMuNTU4LTUuNTI3elwiLz48cGF0aCBmaWxsPVwiIzViODhjN1wiIGQ9XCJNNjYuMjQ0IDIzMi4zMTRjLTQuMTItMTEuNzc0LjgwOS0yMS45NDkgMTIuMjY3LTI1LjU5MSA4LjQ1MS0yLjY4NyAxNi44MDEtMi4zNjYgMjQuNDcyIDIuNDQ4IDExLjg0NiA3LjQzNCAxMS44MiAyMi45NzMuMTM4IDMwLjU4NS0xMC45ODIgNy4xNTYtMzEuMjA1IDQuNTY4LTM2Ljg3Ny03LjQ0MXpcIi8+PHBhdGggZmlsbD1cIiM1OTg3YzZcIiBkPVwiTTIzMS4wMDcgMjA1Ljk2NmMzLjQxLjU4OCA2Ljk2Mi43NTYgMTAuMjAyIDEuODQ3IDcuNjY5IDIuNTgzIDExLjk3MiA4LjQ2MiAxMi4yMzUgMTUuODczLjI2IDcuMzM1LTQuMDM3IDE0LjQxLTExLjQ1NyAxNy4wMjgtNC40MzIgMS41NjQtOS4zNiAxLjg1OS0xNC4xMDQgMi4zNTItMy4yODUuMzQyLTYuNjM1LjA0OS0xMC40NTctLjQ3Mi0uNTE0LTEwLjQ3NS0uNDUyLTIwLjQzOC0uNTc5LTMwLjM5OS0uMDQ4LTMuODE1IDEuNTEtNS4zODggNS4zMzQtNS4zNjYgMi45NC4wMTcgNS44ODMtLjU1MyA4LjgyNS0uODYyelwiLz48cGF0aCBmaWxsPVwiIzc1OThjZlwiIGQ9XCJNMjMwLjYxNiAyMDUuODY0Yy0yLjU1MS40MTEtNS40OTQuOTgyLTguNDM0Ljk2NS0zLjgyNC0uMDIyLTUuMzgyIDEuNTUxLTUuMzM0IDUuMzY2bC4xMTIgMzAuMzU2Yy0uNTU4LS4zMjgtMS42NTgtMS4xMTktMS42NjYtMS45MjJsLS4wNzYtMzQuODY3IDE1LjM5OS4xMDJ6XCIvPjxwYXRoIGZpbGw9XCIjNWI4OGM3XCIgZD1cIk0xNjguMjY4IDIyOS45MDZsLTE3Ljk1LjAxOCA5LjkzOS0xNi43MDEgOC45MTUgMTQuMTQ2Yy4zMjkuNTQ4LS4yOTMgMS42NjYtLjkwNCAyLjUzOHpcIi8+PHBhdGggZmlsbD1cIiNkMWRhZWZcIiBkPVwiTTE1Ni4yNDUgODkuNzU1YzUuNjQyIDYuNzI4IDUuMjE5IDE0LjgxMS0uNzc2IDIwLjI1NS01Ljc4NCA1LjI1Mi0xMy45MTIgNS4wMzUtMTkuMjc4LS41MTYtNS4yNi01LjQ0Mi01LjUwOC0xNC4wMDItLjU2NS0xOS41MDIgNC42NjMtNS4xODggMTQuNDMxLTUuNDMgMjAuNjE5LS4yMzdNMTQxLjIyIDEwOS41YzcuNTIgMi40OTkgMTMuNTcxLjAxNSAxNS4zODgtNi4zMTcgMS45NTktNi44MjctMS4xMjctMTIuNDc0LTcuODc4LTE0LjQxNS00Ljc4OC0xLjM3Ni05Ljg1MSAxLjExMS0xMi4zOCA2LjA4Mi0yLjYzNyA1LjE4Mi0xLjE1MiAxMC4yNzcgNC44NjkgMTQuNjV6XCIvPjxwYXRoIGZpbGw9XCIjZGRlNGYzXCIgZD1cIk0xNDAuODczIDEwOS4zMzljLTUuNjc0LTQuMjEyLTcuMTU5LTkuMzA3LTQuNTIzLTE0LjQ4OSAyLjUyOS00Ljk3MSA3LjU5Mi03LjQ1OCAxMi4zOC02LjA4MiA2Ljc1MSAxLjk0MSA5LjgzNyA3LjU4OCA3Ljg3OCAxNC40MTUtMS44MTcgNi4zMzEtNy44NjkgOC44MTYtMTUuNzM1IDYuMTU2bS0uMzM1LTEzLjI5MWMtMi42ODkgMy41ODItMS4wNjcgNi44NTggMS45NDkgOC40MiAyLjE4NCAxLjEzMSA2LjEzOCAxLjEyMyA4LjA0Mi0uMTk2IDEuNTUzLTEuMDc2IDIuNDMyLTUuNTQ0IDEuNDQxLTcuMjQtMS4xNjYtMS45OTYtNC41ODMtMi45NDQtNy4yMTEtMy42NzktLjk2NC0uMjctMi40NjIgMS4zNjgtNC4yMjIgMi42OTV6XCIvPjxwYXRoIGZpbGw9XCIjZjhmYWZjXCIgZD1cIk0xNDAuNzkxIDk1Ljc2OGMxLjUwNy0xLjA0NyAzLjAwNS0yLjY4NSAzLjk2OS0yLjQxNSAyLjYyOC43MzUgNi4wNDUgMS42ODMgNy4yMTEgMy42NzkuOTkxIDEuNjk3LjExMiA2LjE2NS0xLjQ0MSA3LjI0LTEuOTA0IDEuMzE5LTUuODU4IDEuMzI3LTguMDQyLjE5Ni0zLjAxNi0xLjU2Mi00LjYzOS00LjgzOS0xLjY5Ny04LjdtMy41NDItLjAzNGMtMi44ODcgMy41OTItMi42MDIgNy4wMzYuODQgNy43NjMgMS4zNzguMjkxIDMuNTI1LS4yMzMgNC40MDgtMS4yMTJzMS4zNzEtMy43MDYuNzEtNC4zOTFjLTEuMjU3LTEuMzAzLTMuNDU3LTEuNjk2LTUuOTU4LTIuMTYxelwiLz48cGF0aCBmaWxsPVwiI2ZkZmVmZVwiIGQ9XCJNMTQ0LjY4IDk1LjU4MWMyLjE1NS42MTggNC4zNTQgMS4wMTEgNS42MTIgMi4zMTMuNjYxLjY4NS4xNzQgMy40MTItLjcxIDQuMzkxcy0zLjAzIDEuNTAzLTQuNDA4IDEuMjEyYy0zLjQ0My0uNzI3LTMuNzI3LTQuMTcxLS40OTQtNy45MTZ6XCIvPjwvc3ZnPidcclxufTtcclxuLyoqICovXHJcbmV4cG9ydCBjbGFzcyBEZXNpZ25lclJlZjxPID0gYW55PiB7XHJcbiAgX2xvY2skID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuICBfc3RhdGUkID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2Rlc2lnbmVyOiBEZXNpZ25lck1vZGVsLFxyXG4gICAgcHJpdmF0ZSBfZWxlbWVudDogRWxlbWVudE1vZGVsLFxyXG4gICAgcHVibGljIG1vZGU6IERlc2lnbk1vZGUpIHsgfVxyXG4gIGdldCBkZXNpZ25lcigpOiBEZXNpZ25lckluZm8geyByZXR1cm4gdGhpcy5fZGVzaWduZXI7IH1cclxuICBnZXQgbW9kZWwoKTogRWxlbWVudEluZm88Tz4geyByZXR1cm4gdGhpcy5fZWxlbWVudDsgfVxyXG4gIGdldCB1bmxvY2soKSB7IHJldHVybiB0aGlzLl9sb2NrJC5hc09ic2VydmFibGUoKTsgfVxyXG4gIGdldCBzdGF0ZSgpIHsgcmV0dXJuIHRoaXMuX3N0YXRlJC5hc09ic2VydmFibGUoKTsgfVxyXG4gIGNyZWF0ZShlbGVtZW50OiBFbGVtZW50SW5mbywgdGVtcGxhdGU/OiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHJlZiA9IG5ldyBEZXNpZ25lclJlZih0aGlzLl9kZXNpZ25lciwgZWxlbWVudCBhcyBFbGVtZW50TW9kZWwsICd3aWRnZXQnKTtcclxuICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKFt7XHJcbiAgICAgIHByb3ZpZGU6IERlc2lnbmVyUmVmLCB1c2VWYWx1ZTogcmVmXHJcbiAgICB9XSwgKHRoaXMuX2VsZW1lbnQgYXMgRWxlbWVudE1vZGVsKS5pbmplY3Rvcik7XHJcbiAgICAoZWxlbWVudCBhcyBFbGVtZW50TW9kZWwpLnRlbXBsYXRlID0gdGVtcGxhdGU7XHJcbiAgICAoZWxlbWVudCBhcyBFbGVtZW50TW9kZWwpLmluamVjdG9yID0gaW5qZWN0b3I7XHJcbiAgICByZXR1cm4gZWxlbWVudDtcclxuICB9XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBEZXNpZ25lckVsZW1lbnRDb21wb25lbnQ8VD4ge1xyXG4gIG1vZGVsOiBFbGVtZW50SW5mbzxUPjtcclxuICBtb2RlOiBEZXNpZ25Nb2RlO1xyXG4gIGZvcm06IEZvcm1Hcm91cDtcclxuICAvL29uQWRkPygpO1xyXG59XHJcbmV4cG9ydCBkZWNsYXJlIHR5cGUgRGVzaWduTW9kZSA9ICdhZGQnIHwgJ2VkaXQnIHwgJ3dpZGdldCc7XHJcbi8qKiAqL1xyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERlc2lnbmVyRWxlbWVudENvbXBvbmVudEJhc2U8VCA9IGFueT4gaW1wbGVtZW50cyBEZXNpZ25lckVsZW1lbnRDb21wb25lbnQ8VD4ge1xyXG4gIG1vZGU6IERlc2lnbk1vZGU7XHJcbiAgbW9kZWw6IEVsZW1lbnRNb2RlbDxUPjtcclxuICBnZXQgb3B0aW9ucygpOiBUIHsgcmV0dXJuIHRoaXMubW9kZWwub3B0aW9ucyB9XHJcbiAgYWJzdHJhY3QgZm9ybTogRm9ybUdyb3VwO1xyXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgQEluamVjdChEZXNpZ25lclJlZikgcHJvdGVjdGVkIF9yZWY6IERlc2lnbmVyUmVmPFQ+KSB7XHJcbiAgfVxyXG4gIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPEZvcm1Hcm91cD4sIGNvbGxlY3Rpb246IEZvcm1BcnJheSkge1xyXG4gICAgY29uc3QgZWxlbWVudCA9IGNvbGxlY3Rpb24uYXQoZXZlbnQucHJldmlvdXNJbmRleCk7XHJcbiAgICBjb2xsZWN0aW9uLnJlbW92ZUF0KGV2ZW50LnByZXZpb3VzSW5kZXgpO1xyXG4gICAgY29sbGVjdGlvbi5pbnNlcnQoZXZlbnQuY3VycmVudEluZGV4LCBlbGVtZW50KTtcclxuICB9XHJcbiAgZGlzYWJsZSguLi5uYW1lczogc3RyaW5nW10pIHtcclxuICAgIG5hbWVzLmZvckVhY2gobiA9PiB0aGlzLmZvcm0uZ2V0KG4pLmRpc2FibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pKTtcclxuICB9XHJcbiAgZW5hYmxlKC4uLm5hbWVzOiBzdHJpbmdbXSkge1xyXG4gICAgbmFtZXMuZm9yRWFjaChuID0+IHRoaXMuZm9ybS5nZXQobikuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KSk7XHJcbiAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBjbG9uZShlbGVtZW50OiBFbGVtZW50TW9kZWwpIHtcclxuICByZXR1cm4gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShlbGVtZW50KSk7XHJcbn1cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEZXNpZ25lclR5cGVFbGVtZW50Q29tcG9uZW50PFQgPSBhbnk+IGV4dGVuZHMgRGVzaWduZXJFbGVtZW50Q29tcG9uZW50QmFzZTxUPiB7XHJcbiAgc2F2ZTogRXZlbnRFbWl0dGVyPEVsZW1lbnRNb2RlbD47XHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIF9mYjogRm9ybUJ1aWxkZXIsXHJcbiAgICBASW5qZWN0KERlc2lnbmVyUmVmKSBwcm90ZWN0ZWQgX3JlZjogRGVzaWduZXJSZWY8VD4pIHtcclxuICAgIHN1cGVyKF9mYiwgX3JlZik7XHJcbiAgICB0aGlzLm1vZGUgPSBfcmVmLm1vZGU7XHJcbiAgICB0aGlzLm1vZGVsID0gX3JlZi5tb2RlbCBhcyBFbGVtZW50TW9kZWw7XHJcbiAgICBpZiAoX3JlZi5tb2RlICE9PSAnd2lkZ2V0JylcclxuICAgICAgdGhpcy5zYXZlID0gbmV3IEV2ZW50RW1pdHRlcjxFbGVtZW50TW9kZWw+KCk7XHJcbiAgfVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBhcnJheU9mKHZhbDogc3RyaW5nIHwgc3RyaW5nW10pIHtcclxuICBpZiAoIXZhbCkgcmV0dXJuIFtdO1xyXG4gIGlmIChpc1N0cmluZyh2YWwpKSByZXR1cm4gW3ZhbF07XHJcbiAgcmV0dXJuIHZhbDtcclxufVxyXG5cclxuY29uc3QgTkFNRV9DSEFSID0gL1tBLVpdKy9nLFxyXG4gIE5PTl9OQU1FX0NIQVIgPSAvW15cXHddKy9nO1xyXG4vKipcclxuICogXHJcbiAqIEBwYXJhbSBuYW1lXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gcHJvZ3JhbU5hbWUobmFtZTogc3RyaW5nKSB7XHJcbiAgcmV0dXJuIG5hbWUuXHJcbiAgICByZXBsYWNlKCcgJywgJy0nKS5cclxuICAgIHJlcGxhY2UoTkFNRV9DSEFSLCAoYywgaSkgPT4gKGkgPiAwICYmIG5hbWUuY2hhckF0KGkgLSAxKSAhPT0gJy0nID8gJy0nIDogJycpICsgYy50b0xvd2VyQ2FzZSgpKS5cclxuICAgIHJlcGxhY2UoTk9OX05BTUVfQ0hBUiwgJ18nKTtcclxufVxyXG5cclxuLyoqICovXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGVzaWduZXJDdWJlRWxlbWVudENvbXBvbmVudDxUID0gYW55PiBleHRlbmRzIERlc2lnbmVyRWxlbWVudENvbXBvbmVudEJhc2U8VD4gaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHJlYWRvbmx5IGN1YmVzOiBFbGVtZW50TW9kZWxbXTtcclxuICBjdWJlOiBFbGVtZW50TW9kZWw7XHJcbiAgc2Vjb25kYXJ5QXhlczogQ3ViZUF4aXNNb2RlbFtdO1xyXG4gIHRoaXJkQXhlczogQ3ViZUF4aXNNb2RlbFtdO1xyXG4gIGZvcnRoQXhlczogQ3ViZUF4aXNNb2RlbFtdO1xyXG4gIHByb3RlY3RlZCBfc2Vjb25kYXJ5QXhlcyhheGlzOiBzdHJpbmdbXSB8IHN0cmluZykge1xyXG4gICAgaWYgKCFheGlzKSByZXR1cm47XHJcbiAgICB0aGlzLnNlY29uZGFyeUF4ZXMgPSB0aGlzLmN1YmUuYXhlcy5maWx0ZXIoYSA9PiBpc0FycmF5KGF4aXMpID8gYXhpcy5pbmRleE9mKGEubmFtZSkgPCAwIDogYXhpcyAhPT0gYS5uYW1lKTtcclxuICB9XHJcbiAgcHJvdGVjdGVkIF90aGlyZEF4ZXMoYXhpczogc3RyaW5nW10gfCBzdHJpbmcpIHtcclxuICAgIGlmICghYXhpcykgcmV0dXJuO1xyXG4gICAgdGhpcy50aGlyZEF4ZXMgPSB0aGlzLnNlY29uZGFyeUF4ZXMuZmlsdGVyKGEgPT4gaXNBcnJheShheGlzKSA/IGF4aXMuaW5kZXhPZihhLm5hbWUpIDwgMCA6IGEubmFtZSAhPT0gYXhpcyk7XHJcbiAgfVxyXG4gIHByb3RlY3RlZCBfZm9ydGhBeGVzKGF4aXM6IHN0cmluZ1tdIHwgc3RyaW5nKSB7XHJcbiAgICBpZiAoIWF4aXMpIHJldHVybjtcclxuICAgIHRoaXMuZm9ydGhBeGVzID0gdGhpcy50aGlyZEF4ZXMuZmlsdGVyKGEgPT4gaXNBcnJheShheGlzKSA/IGF4aXMuaW5kZXhPZihhLm5hbWUpIDwgMCA6IGEubmFtZSAhPT0gYXhpcyk7XHJcbiAgfVxyXG4gIGN1YmVTZWxlY3RlZChldnQ6IE1hdFNlbGVjdENoYW5nZSkge1xyXG4gICAgdGhpcy5jdWJlID0gZXZ0LnZhbHVlO1xyXG4gICAgdGhpcy5mb3JtLmdldCgnY3ViZScpLnNldFZhbHVlKChldnQudmFsdWUgYXMgRWxlbWVudE1vZGVsKS5uYW1lKTtcclxuICB9XHJcbiAgeEF4aXNTZWxlY3RlZChldnQ6IE1hdFNlbGVjdENoYW5nZSkge1xyXG4gICAgdGhpcy5fc2Vjb25kYXJ5QXhlcyhldnQudmFsdWUpO1xyXG4gIH1cclxuICBzZXJpZXNTZWxlY3RlZChldnQ6IE1hdFNlbGVjdENoYW5nZSkge1xyXG4gICAgdGhpcy5fdGhpcmRBeGVzKGV2dC52YWx1ZSk7XHJcbiAgfVxyXG4gIGZvcnRoU2VsZWN0ZWQoZXZ0OiBNYXRTZWxlY3RDaGFuZ2UpIHtcclxuICAgIHRoaXMuX2ZvcnRoQXhlcyhldnQudmFsdWUpO1xyXG4gIH1cclxuICBjb25zdHJ1Y3RvcihmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICBASW5qZWN0KERlc2lnbmVyUmVmKSByZWY6IERlc2lnbmVyUmVmKSB7XHJcbiAgICBzdXBlcihmYiwgcmVmKTtcclxuICAgIHRoaXMuY3ViZXMgPSByZWYuZGVzaWduZXIuY3ViZXMgYXMgRWxlbWVudE1vZGVsW107XHJcbiAgfVxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgY29uc3QgY3ViZUlkID0gdGhpcy5vcHRpb25zWydjdWJlJ107XHJcbiAgICB0aGlzLmN1YmUgPSAhY3ViZUlkID8gdGhpcy5jdWJlc1swXSBhcyBFbGVtZW50TW9kZWwgOiB0aGlzLmN1YmVzLmZpbmQoYyA9PiBjLm5hbWUgPT09IGN1YmVJZCkgYXMgRWxlbWVudE1vZGVsO1xyXG4gICAgaWYgKHRoaXMub3B0aW9uc1sneEF4aXMnXSkge1xyXG4gICAgICB0aGlzLl9zZWNvbmRhcnlBeGVzKHRoaXMub3B0aW9uc1sneEF4aXMnXSk7XHJcbiAgICAgIHRoaXMub3B0aW9uc1snc2VyaWVzJ10gJiYgdGhpcy5fdGhpcmRBeGVzKHRoaXMub3B0aW9uc1snc2VyaWVzJ10pO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIERlc2lnbmVyTW9kZWwge1xyXG4gIHR5cGVzOiBFbGVtZW50TW9kZWw8YW55PltdO1xyXG4gIHRUeXBlczogVGVtcGxhdGVJbmZvW107XHJcbiAgZ3VpZGVzOiBFbGVtZW50TW9kZWw8YW55PltdO1xyXG4gIHJlcG9ydHM6IEVsZW1lbnRNb2RlbDxhbnk+W107XHJcbiAgdFJlcG9ydHM6IFRlbXBsYXRlSW5mb1tdO1xyXG4gIGZvcm1zOiBFbGVtZW50TW9kZWw8YW55PltdO1xyXG4gIHRGb3JtczogVGVtcGxhdGVJbmZvW107XHJcbiAgY3ViZXM6IEVsZW1lbnRNb2RlbDxhbnk+W107XHJcbiAgdEN1YmVzOiBUZW1wbGF0ZUluZm9bXTtcclxuICB1dGlsaXRpZXM6IEVsZW1lbnRNb2RlbDxhbnk+W107XHJcbiAgdFV0aWxpdGllczogVGVtcGxhdGVJbmZvW107XHJcbiAgZm9sZGVyczogRWxlbWVudE1vZGVsPGFueT5bXTtcclxuICByb2xlczogRWxlbWVudE1vZGVsPGFueT5bXTtcclxuICBydWxlczogRWxlbWVudE1vZGVsPGFueT5bXTtcclxuICB0UnVsZXM6IFRlbXBsYXRlSW5mb1tdO1xyXG4gIHZpZXdzOiBFbGVtZW50TW9kZWw8YW55PltdO1xyXG4gIHRWaWV3czogVGVtcGxhdGVJbmZvW107XHJcbiAgd2lkZ2V0czogRWxlbWVudE1vZGVsPGFueT5bXTtcclxuICB0V2lkZ2V0czogVGVtcGxhdGVJbmZvW107XHJcbiAgYWN0aW9uczogRWxlbWVudE1vZGVsPGFueT5bXTtcclxuICB0QWN0aW9uczogVGVtcGxhdGVJbmZvW107XHJcbiAgc3RhdGVzOiBFbGVtZW50TW9kZWw8YW55PltdO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgVGVtcGxhdGVJbmZvIHtcclxuICB0ZW1wbGF0ZT86IHN0cmluZztcclxuICB0aXRsZT86IHN0cmluZztcclxuICBpY29uPzogc3RyaW5nO1xyXG4gIGZhbWlseT86IHN0cmluZztcclxuICBoZWxwPzogc3RyaW5nO1xyXG4gIHR5cGU/OiBzdHJpbmc7XHJcbiAgYXJndW1lbnRzPzogRmllbGRJbmZvW107XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBFbGVtZW50TW9kZWw8VCA9IGFueT4ge1xyXG4gIGluamVjdG9yOiBJbmplY3RvcjtcclxuICBvcmRpbmFsPzogbnVtYmVyO1xyXG4gIGhlbHA/OiBzdHJpbmc7XHJcbiAgY29uZmlndXJhdGlvbkZpbGU/OiBzdHJpbmc7XHJcbiAgdGVtcGxhdGU/OiBzdHJpbmc7XHJcbiAgaWNvbj86IHN0cmluZztcclxuICByZXNvdXJjZT86IHN0cmluZztcclxuICBjb3B5T2Y/OiBzdHJpbmc7XHJcbiAgZmFtaWx5Pzogc3RyaW5nO1xyXG4gIHR5cGU/OiBzdHJpbmc7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIGRyYWZ0PzogYm9vbGVhbjtcclxuICBlbXB0eT86IGJvb2xlYW47XHJcbiAgb3B0aW9ucz86IFQ7XHJcbiAgYXJndW1lbnRzPzogRmllbGRJbmZvW107XHJcbiAgcHJpdmlsZWdlcz86IFByaXZpbGVnZXNNb2RlbDtcclxuICBmaWx0ZXJzPzogQ3ViZUZpbHRlcjtcclxuICBjb2x1bW5zPzogRm9sZGVyQ29sdW1uW107XHJcbiAgYW5vbWFseT86IEFub21hbHlQb2xpY3k7XHJcbiAgdmVyYj86IHN0cmluZztcclxuICB5b3U/OiBzdHJpbmc7XHJcbiAgeW91TWFsZT86IHN0cmluZztcclxuICB5b3VGZW1hbGU/OiBzdHJpbmc7XHJcbiAgcGFzdD86IHN0cmluZztcclxuICBwYXN0TWFsZT86IHN0cmluZztcclxuICBwYXN0RmVtYWxlPzogc3RyaW5nO1xyXG4gIGFkamVjdGl2ZT86IHN0cmluZztcclxuICBsb2dnYWJsZT86IGJvb2xlYW47XHJcbiAgYWRqZWN0aXZlUGx1cmFsPzogc3RyaW5nO1xyXG4gIGFzc2lnbmFibGU/OiBib29sZWFuO1xyXG4gIHBvc2l0aW9uPzogUG9zaXRpb25Qb2xpY3k7XHJcbiAgbXVsdGlwbGU/OiBib29sZWFuO1xyXG4gIHNoYXBlPzogc3RyaW5nO1xyXG4gIGdyb3VwPzogbnVtYmVyO1xyXG4gIGRhdGFUeXBlPzogc3RyaW5nO1xyXG4gIHN0ZXBzPzogR3VpZGVTdGVwW107XHJcbiAgY3VycmVuY3lDb2RlPzogc3RyaW5nO1xyXG4gIGF4ZXM/OiBDdWJlQXhpc01vZGVsW107XHJcbiAgdmlld3M/OiBDdWJlVmlld01vZGVsW107XHJcbiAgaW5kaWNlcz86IEN1YmVJbmRleE1vZGVsW107XHJcbiAgc2NvcGU/OiBTY29wZVR5cGU7XHJcbiAgY29sb3I/OiBzdHJpbmc7XHJcbiAgYmFja2dyb3VuZENvbG9yPzogc3RyaW5nO1xyXG4gIHJ1bGVzPzogUGVybWlzc2lvbk1vZGVsW107XHJcbiAgcG9zaXRpb25zPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmdbXSB9O1xyXG4gIHBhdHRlcm5zPzogUGF0dGVybk1vZGVsW107XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBDdWJlSW5kZXhNb2RlbCB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGFjY3VtdWxhdGU/OiBib29sZWFuO1xyXG4gIGhpZGRlbj86IGJvb2xlYW47XHJcbiAgdGl0bGU6IHN0cmluZztcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIEN1YmVWaWV3TW9kZWwge1xyXG4gIHByaXZpbGVnZXM/OiBQcml2aWxlZ2VzTW9kZWw7XHJcbiAgeEF4aXM6IHN0cmluZ1tdO1xyXG4gIHNlcmllcz86IHN0cmluZ1tdO1xyXG4gIGZpbHRlcnM/OiBBeGVzTWFwO1xyXG4gIGluZGljZXM/OiBzdHJpbmdbXTtcclxuICBpY29uPzogc3RyaW5nO1xyXG4gIGd1aWRlPzogc3RyaW5nO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICB0aXRsZTogc3RyaW5nO1xyXG4gIHR5cGU6IFZpZXdUeXBlO1xyXG4gIGNoYXJ0VHlwZT86IENoYXJ0VHlwZTtcclxuICBpbmRpY2VzQ2hhcnRUeXBlPzogQ2hhcnRUeXBlO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3ViZUF4aXNNb2RlbCB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgZGF0YVR5cGU6IHN0cmluZztcclxuICBoaWRkZW4/OiBib29sZWFuO1xyXG4gIGNvbWJpbmF0aW9uPzogYm9vbGVhbjtcclxuICBpbmRleGFibGU/OiBib29sZWFuO1xyXG4gIHNlbnNpdGl2ZT86IGJvb2xlYW47XHJcbiAgcmVzb3VyY2VUeXBlPzogc3RyaW5nO1xyXG4gIHNlbGVjdGlvbk1vZGU/OiAnU2luZ2xlJyB8ICdQYXR0ZXJuJyB8ICdNdWx0aXBsZScgfCAnU2VhcmNoJyB8ICdOb25lJztcclxuICBkZXNjZW5kZW50T2Y/OiBzdHJpbmc7XHJcbn1cclxuZXhwb3J0IHR5cGUgQW5vbWFseVBvbGljeSA9ICdQb3NpdGlvbnMnIHwgJ1JlY2lwaWVudHMnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBQYXR0ZXJuTW9kZWwge1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgcmVzb3VyY2VUeXBlPzogc3RyaW5nO1xyXG4gIGF4ZXM6IEF4ZXNNYXA7XHJcbiAgcnVsZT86IHN0cmluZztcclxuICByb2xlcz86IHN0cmluZ1tdO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgUGVybWlzc2lvbk1vZGVsIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgdGl0bGU6IHN0cmluZztcclxuICBydWxlPzogc3RyaW5nO1xyXG4gIHJvbGVzPzogc3RyaW5nW107XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBQcml2aWxlZ2VzTW9kZWwge1xyXG4gIHJ1bGU/OiBzdHJpbmc7XHJcbiAgcm9sZXM/OiBzdHJpbmdbXTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIERlc2lnbmVySW5mbyB7XHJcbiAgdHlwZXM6IEVsZW1lbnRJbmZvW107XHJcbiAgZ3VpZGVzOiBFbGVtZW50SW5mb1tdO1xyXG4gIHJlcG9ydHM6IEVsZW1lbnRJbmZvW107XHJcbiAgdFJlcG9ydHM6IFRlbXBsYXRlSW5mb1tdO1xyXG4gIGZvcm1zOiBFbGVtZW50SW5mb1tdO1xyXG4gIGN1YmVzOiBFbGVtZW50SW5mb1tdO1xyXG4gIHV0aWxpdGllczogRWxlbWVudEluZm9bXTtcclxuICBmb2xkZXJzOiBFbGVtZW50SW5mb1tdO1xyXG4gIHJvbGVzOiBFbGVtZW50SW5mb1tdO1xyXG4gIHJ1bGVzOiBFbGVtZW50SW5mb1tdO1xyXG4gIHZpZXdzOiBFbGVtZW50SW5mb1tdO1xyXG4gIHdpZGdldHM6IEVsZW1lbnRJbmZvW107XHJcbiAgYWN0aW9uczogRWxlbWVudEluZm9bXTtcclxuICBzdGF0ZXM6IEVsZW1lbnRJbmZvW107XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBFbGVtZW50SW5mbzxUID0gYW55PiB7XHJcbiAgZmFtaWx5Pzogc3RyaW5nO1xyXG4gIHR5cGU/OiBzdHJpbmc7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIGRyYWZ0PzogYm9vbGVhbjtcclxuICBlbXB0eT86IGJvb2xlYW47XHJcbiAgb3B0aW9ucz86IFQ7XHJcbn1cclxuIl19
|
106
|
+
export function isAccum(chartType) {
|
107
|
+
switch (chartType) {
|
108
|
+
case 'Pie':
|
109
|
+
case 'Doughnut':
|
110
|
+
case 'HalfDoughnut':
|
111
|
+
case 'Funnel':
|
112
|
+
return true;
|
113
|
+
}
|
114
|
+
}
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzaWduZXIuYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvYWRtaW4vY29uZmlndXJhdGlvbi1kZXNpZ25lci9kZXNpZ25lci5iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUlyRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0MsT0FBTyxFQUFzRCxXQUFXLEVBQWlCLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEgsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7QUFDckUsTUFBTTtBQUVOLE1BQU0sT0FBZ0IsNEJBQTRCO0lBS2hELFlBQXNCLEdBQWdCLEVBQ0wsSUFBb0I7UUFEL0IsUUFBRyxHQUFILEdBQUcsQ0FBYTtRQUNMLFNBQUksR0FBSixJQUFJLENBQWdCO0lBQ3JELENBQUM7SUFKRCxJQUFJLE9BQU8sS0FBUSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFBLENBQUMsQ0FBQztJQUs5QyxJQUFJLENBQUMsS0FBNkIsRUFBRSxVQUFxQjtRQUN2RCxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNuRCxVQUFVLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6QyxVQUFVLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUNELE9BQU8sQ0FBQyxHQUFHLEtBQWU7UUFDeEIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxD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QkFBNEI7a0JBRGpELFNBQVM7OzBCQWlDTCxNQUFNOzJCQUFDLFdBQVc7O0FBYXZCLE1BQU0sVUFBVSxPQUFPLENBQUMsU0FBUztJQUMvQixRQUFRLFNBQVMsRUFBRTtRQUNqQixLQUFLLEtBQUssQ0FBQztRQUNYLEtBQUssVUFBVSxDQUFDO1FBQ2hCLEtBQUssY0FBYyxDQUFDO1FBQ3BCLEtBQUssUUFBUTtZQUNYLE9BQU8sSUFBSSxDQUFDO0tBQ2Y7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbmplY3QsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUFycmF5LCBGb3JtQnVpbGRlciwgRm9ybUdyb3VwIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IENka0RyYWdEcm9wIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9kcmFnLWRyb3BcIjtcclxuaW1wb3J0IHsgTWF0U2VsZWN0Q2hhbmdlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NlbGVjdFwiO1xyXG5pbXBvcnQgeyBpc0FycmF5IH0gZnJvbSBcIi4uLy4uL2NvcmUvZnVuY3Rpb25zXCI7XHJcbmltcG9ydCB7IERlc2lnbmVyRWxlbWVudENvbXBvbmVudCwgRGVzaWduTW9kZSwgRWxlbWVudE1vZGVsLCBEZXNpZ25lclJlZiwgQ3ViZUF4aXNNb2RlbCB9IGZyb20gXCIuL2RlY2xhcmF0aW9uc1wiO1xyXG5pbXBvcnQgeyBEZXNpZ25lckl0ZW1Db21wb25lbnQgfSBmcm9tIFwiLi9kZXNpZ25lci1lbGVtZW50LmNvbXBvbmVudFwiO1xyXG4vKiogKi9cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEZXNpZ25lckVsZW1lbnRDb21wb25lbnRCYXNlPFQgPSBhbnk+IGltcGxlbWVudHMgRGVzaWduZXJFbGVtZW50Q29tcG9uZW50PFQ+IHtcclxuICBtb2RlOiBEZXNpZ25Nb2RlO1xyXG4gIG1vZGVsOiBFbGVtZW50TW9kZWw8VD47XHJcbiAgZ2V0IG9wdGlvbnMoKTogVCB7IHJldHVybiB0aGlzLm1vZGVsLm9wdGlvbnMgfVxyXG4gIGFic3RyYWN0IGZvcm06IEZvcm1Hcm91cDtcclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX2ZiOiBGb3JtQnVpbGRlcixcclxuICAgIEBJbmplY3QoRGVzaWduZXJSZWYpIHByb3RlY3RlZCBfcmVmOiBEZXNpZ25lclJlZjxUPikge1xyXG4gIH1cclxuICBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxGb3JtR3JvdXA+LCBjb2xsZWN0aW9uOiBGb3JtQXJyYXkpIHtcclxuICAgIGNvbnN0IGVsZW1lbnQgPSBjb2xsZWN0aW9uLmF0KGV2ZW50LnByZXZpb3VzSW5kZXgpO1xyXG4gICAgY29sbGVjdGlvbi5yZW1vdmVBdChldmVudC5wcmV2aW91c0luZGV4KTtcclxuICAgIGNvbGxlY3Rpb24uaW5zZXJ0KGV2ZW50LmN1cnJlbnRJbmRleCwgZWxlbWVudCk7XHJcbiAgfVxyXG4gIGRpc2FibGUoLi4ubmFtZXM6IHN0cmluZ1tdKSB7XHJcbiAgICBuYW1lcy5mb3JFYWNoKG4gPT4gdGhpcy5mb3JtLmdldChuKS5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KSk7XHJcbiAgfVxyXG4gIGVuYWJsZSguLi5uYW1lczogc3RyaW5nW10pIHtcclxuICAgIG5hbWVzLmZvckVhY2gobiA9PiB0aGlzLmZvcm0uZ2V0KG4pLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSkpO1xyXG4gIH1cclxufVxyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERlc2lnbmVyVHlwZUVsZW1lbnRDb21wb25lbnQ8VCA9IGFueT4gZXh0ZW5kcyBEZXNpZ25lckVsZW1lbnRDb21wb25lbnRCYXNlPFQ+IHtcclxuICBAVmlld0NoaWxkKERlc2lnbmVySXRlbUNvbXBvbmVudCkgZGVzaWduZXI6IERlc2lnbmVySXRlbUNvbXBvbmVudDtcclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX2ZiOiBGb3JtQnVpbGRlcixcclxuICAgIEBJbmplY3QoRGVzaWduZXJSZWYpIHByb3RlY3RlZCBfcmVmOiBEZXNpZ25lclJlZjxUPikge1xyXG4gICAgc3VwZXIoX2ZiLCBfcmVmKTtcclxuICAgIHRoaXMubW9kZSA9IF9yZWYubW9kZTtcclxuICAgIHRoaXMubW9kZWwgPSBfcmVmLm1vZGVsIGFzIEVsZW1lbnRNb2RlbDtcclxuICB9XHJcbn1cclxuLyoqICovXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGVzaWduZXJDdWJlRWxlbWVudENvbXBvbmVudDxUID0gYW55PiBleHRlbmRzIERlc2lnbmVyRWxlbWVudENvbXBvbmVudEJhc2U8VD4gaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHJlYWRvbmx5IGN1YmVzOiBFbGVtZW50TW9kZWxbXTtcclxuICBjdWJlOiBFbGVtZW50TW9kZWw7XHJcbiAgc2Vjb25kYXJ5QXhlczogQ3ViZUF4aXNNb2RlbFtdO1xyXG4gIHRoaXJkQXhlczogQ3ViZUF4aXNNb2RlbFtdO1xyXG4gIGZvcnRoQXhlczogQ3ViZUF4aXNNb2RlbFtdO1xyXG4gIHByb3RlY3RlZCBfc2Vjb25kYXJ5QXhlcyhheGlzOiBzdHJpbmdbXSB8IHN0cmluZykge1xyXG4gICAgaWYgKCFheGlzKSByZXR1cm47XHJcbiAgICB0aGlzLnNlY29uZGFyeUF4ZXMgPSB0aGlzLmN1YmUuYXhlcy5maWx0ZXIoYSA9PiBpc0FycmF5KGF4aXMpID8gYXhpcy5pbmRleE9mKGEubmFtZSkgPCAwIDogYXhpcyAhPT0gYS5uYW1lKTtcclxuICB9XHJcbiAgcHJvdGVjdGVkIF90aGlyZEF4ZXMoYXhpczogc3RyaW5nW10gfCBzdHJpbmcpIHtcclxuICAgIGlmICghYXhpcykgcmV0dXJuO1xyXG4gICAgdGhpcy50aGlyZEF4ZXMgPSB0aGlzLnNlY29uZGFyeUF4ZXMuZmlsdGVyKGEgPT4gaXNBcnJheShheGlzKSA/IGF4aXMuaW5kZXhPZihhLm5hbWUpIDwgMCA6IGEubmFtZSAhPT0gYXhpcyk7XHJcbiAgfVxyXG4gIHByb3RlY3RlZCBfZm9ydGhBeGVzKGF4aXM6IHN0cmluZ1tdIHwgc3RyaW5nKSB7XHJcbiAgICBpZiAoIWF4aXMpIHJldHVybjtcclxuICAgIHRoaXMuZm9ydGhBeGVzID0gdGhpcy50aGlyZEF4ZXMuZmlsdGVyKGEgPT4gaXNBcnJheShheGlzKSA/IGF4aXMuaW5kZXhPZihhLm5hbWUpIDwgMCA6IGEubmFtZSAhPT0gYXhpcyk7XHJcbiAgfVxyXG4gIGN1YmVTZWxlY3RlZChldnQ6IE1hdFNlbGVjdENoYW5nZSkge1xyXG4gICAgdGhpcy5jdWJlID0gZXZ0LnZhbHVlO1xyXG4gICAgdGhpcy5mb3JtLmdldCgnY3ViZScpLnNldFZhbHVlKChldnQudmFsdWUgYXMgRWxlbWVudE1vZGVsKS5uYW1lKTtcclxuICB9XHJcbiAgeEF4aXNTZWxlY3RlZChldnQ6IE1hdFNlbGVjdENoYW5nZSkge1xyXG4gICAgdGhpcy5fc2Vjb25kYXJ5QXhlcyhldnQudmFsdWUpO1xyXG4gIH1cclxuICBzZXJpZXNTZWxlY3RlZChldnQ6IE1hdFNlbGVjdENoYW5nZSkge1xyXG4gICAgdGhpcy5fdGhpcmRBeGVzKGV2dC52YWx1ZSk7XHJcbiAgfVxyXG4gIGZvcnRoU2VsZWN0ZWQoZXZ0OiBNYXRTZWxlY3RDaGFuZ2UpIHtcclxuICAgIHRoaXMuX2ZvcnRoQXhlcyhldnQudmFsdWUpO1xyXG4gIH1cclxuICBjb25zdHJ1Y3RvcihmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICBASW5qZWN0KERlc2lnbmVyUmVmKSByZWY6IERlc2lnbmVyUmVmKSB7XHJcbiAgICBzdXBlcihmYiwgcmVmKTtcclxuICAgIHRoaXMuY3ViZXMgPSByZWYuZGVzaWduZXIuY3ViZXMgYXMgRWxlbWVudE1vZGVsW107XHJcbiAgfVxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgY29uc3QgY3ViZUlkID0gdGhpcy5vcHRpb25zWydjdWJlJ107XHJcbiAgICB0aGlzLmN1YmUgPSAhY3ViZUlkID8gdGhpcy5jdWJlc1swXSBhcyBFbGVtZW50TW9kZWwgOiB0aGlzLmN1YmVzLmZpbmQoYyA9PiBjLm5hbWUgPT09IGN1YmVJZCkgYXMgRWxlbWVudE1vZGVsO1xyXG4gICAgaWYgKHRoaXMub3B0aW9uc1sneEF4aXMnXSkge1xyXG4gICAgICB0aGlzLl9zZWNvbmRhcnlBeGVzKHRoaXMub3B0aW9uc1sneEF4aXMnXSk7XHJcbiAgICAgIHRoaXMub3B0aW9uc1snc2VyaWVzJ10gJiYgdGhpcy5fdGhpcmRBeGVzKHRoaXMub3B0aW9uc1snc2VyaWVzJ10pO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5leHBvcnQgZnVuY3Rpb24gaXNBY2N1bShjaGFydFR5cGUpIHtcclxuICBzd2l0Y2ggKGNoYXJ0VHlwZSkge1xyXG4gICAgY2FzZSAnUGllJzpcclxuICAgIGNhc2UgJ0RvdWdobnV0JzpcclxuICAgIGNhc2UgJ0hhbGZEb3VnaG51dCc6XHJcbiAgICBjYXNlICdGdW5uZWwnOlxyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcbn1cclxuIl19
|
@@ -5,7 +5,7 @@ import { itemAnimation } from "../../core/animations";
|
|
5
5
|
import { OpenPolicy } from "../../core/configuration";
|
6
6
|
import { BizDoc } from "../../core/decorators";
|
7
7
|
import { cleanup } from "../../core/functions";
|
8
|
-
import { programName, DesignerRef, clone } from "./
|
8
|
+
import { programName, DesignerRef, clone } from "./declarations";
|
9
9
|
import { ActionDesignerComponent } from "./elements/action.component";
|
10
10
|
import { CubeDesignComponent } from "./elements/cube.component";
|
11
11
|
import { FolderDesignComponent } from "./elements/folder.component";
|
@@ -125,7 +125,7 @@ let ConfigurationDesignerComponent = class ConfigurationDesignerComponent {
|
|
125
125
|
group: this._translate.get(section.type),
|
126
126
|
//title,
|
127
127
|
injector: injector
|
128
|
-
}).then(e => e.instance.
|
128
|
+
}).then(e => e.instance.designer.onSave.subscribe(e => {
|
129
129
|
if (e) {
|
130
130
|
Object.assign(element, e);
|
131
131
|
this.dirty = true;
|
@@ -157,6 +157,8 @@ let ConfigurationDesignerComponent = class ConfigurationDesignerComponent {
|
|
157
157
|
draft: true,
|
158
158
|
options: {}
|
159
159
|
};
|
160
|
+
if (section.privileges)
|
161
|
+
element.privileges = {};
|
160
162
|
this._insert(section, element, section.elements.length);
|
161
163
|
}
|
162
164
|
copy(section, element) {
|
@@ -207,4 +209,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
|
|
207
209
|
type: HostListener,
|
208
210
|
args: ['document:keydown', ['$event']]
|
209
211
|
}] } });
|
210
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzaWduZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9hZG1pbi9jb25maWd1cmF0aW9uLWRlc2lnbmVyL2Rlc2lnbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvYWRtaW4vY29uZmlndXJhdGlvbi1kZXNpZ25lci9kZXNpZ25lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXRFLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFLL0MsT0FBTyxFQUE2QyxXQUFXLEVBQUUsV0FBVyxFQUFnQyxLQUFLLEVBQWMsTUFBTSxpQkFBaUIsQ0FBQztBQUN2SixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0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LCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtEcmFnRHJvcCwgbW92ZUl0ZW1JbkFycmF5IH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9kcmFnLWRyb3BcIjtcclxuaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gXCJAYW5ndWxhci9jZGsvcG9ydGFsXCI7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbmplY3RvciwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgTWF0TWVudVRyaWdnZXIgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudVwiO1xyXG5pbXBvcnQgeyBpdGVtQW5pbWF0aW9uIH0gZnJvbSBcIi4uLy4uL2NvcmUvYW5pbWF0aW9uc1wiO1xyXG5pbXBvcnQgeyBVdGlsaXR5Q29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NvcmUvYmFzZVwiO1xyXG5pbXBvcnQgeyBPcGVuUG9saWN5IH0gZnJvbSBcIi4uLy4uL2NvcmUvY29uZmlndXJhdGlvblwiO1xyXG5pbXBvcnQgeyBCaXpEb2MgfSBmcm9tIFwiLi4vLi4vY29yZS9kZWNvcmF0b3JzXCI7XHJcbmltcG9ydCB7IGNsZWFudXAgfSBmcm9tIFwiLi4vLi4vY29yZS9mdW5jdGlvbnNcIjtcclxuaW1wb3J0IHsgUHJvbXB0U2VydmljZSB9IGZyb20gXCIuLi8uLi9jb3JlL3Byb21wdC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFBhbmVzUm91dGVyIH0gZnJvbSBcIi4uLy4uL2NvcmUvc2xvdHMvcm91dGVyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCIuLi8uLi9jb3JlL3RyYW5zbGF0ZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFV0aWxpdHlSZWYgfSBmcm9tIFwiLi4vdXRpbGl0eS1yZWZcIjtcclxuaW1wb3J0IHsgRWxlbWVudE1vZGVsLCBEZXNpZ25lck1vZGVsLCBUZW1wbGF0ZUluZm8sIHByb2dyYW1OYW1lLCBEZXNpZ25lclJlZiwgRGVzaWduZXJUeXBlRWxlbWVudENvbXBvbmVudCwgY2xvbmUsIERlc2lnbk1vZGUgfSBmcm9tIFwiLi9kZXNpZ25lci5iYXNlXCI7XHJcbmltcG9ydCB7IEFjdGlvbkRlc2lnbmVyQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvYWN0aW9uLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBDdWJlRGVzaWduQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvY3ViZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRm9sZGVyRGVzaWduQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvZm9sZGVyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBGb3JtRGVzaWduQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvZm9ybS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgR3VpZGVEZXNpZ25Db21wb25lbnQgfSBmcm9tIFwiLi9lbGVtZW50cy9ndWlkZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUmVwb3J0RGVzaWduZXJDb21wb25lbnQgfSBmcm9tIFwiLi9lbGVtZW50cy9yZXBvcnQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFJvbGVEZXNpZ25Db21wb25lbnQgfSBmcm9tIFwiLi9lbGVtZW50cy9yb2xlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBSdWxlRGVzaWduQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvcnVsZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU3RhdGVEZXNpZ25Db21wb25lbnQgfSBmcm9tIFwiLi9lbGVtZW50cy9zdGF0ZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgVHlwZURlc2lnbkNvbXBvbmVudCB9IGZyb20gXCIuL2VsZW1lbnRzL3R5cGUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFV0aWxpdHlEZXNpZ25Db21wb25lbnQgfSBmcm9tIFwiLi9lbGVtZW50cy91dGlsaXR5LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBWaWV3RGVzaWduQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvdmlldy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgV2lkZ2V0RGVzaWduQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvd2lkZ2V0LmNvbXBvbmVudFwiO1xyXG4vKiogKi9cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGVVcmw6ICdkZXNpZ25lci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJ2Rlc2lnbmVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgYW5pbWF0aW9uczogW2l0ZW1BbmltYXRpb25dXHJcbn0pXHJcbkBCaXpEb2MoeyBzZWxlY3RvcjogJ2JpemRvYy1jb25maWd1cmF0aW9uLWRlc2lnbmVyJyB9KVxyXG5leHBvcnQgY2xhc3MgQ29uZmlndXJhdGlvbkRlc2lnbmVyQ29tcG9uZW50IGltcGxlbWVudHMgVXRpbGl0eUNvbXBvbmVudCwgT25Jbml0IHtcclxuICBsb2FkaW5nID0gdHJ1ZTtcclxuICBzYXZpbmcgPSBmYWxzZTtcclxuICBkaXJ0eSA9IGZhbHNlO1xyXG4gIHNlY3Rpb25zOiBTZWN0aW9uW107XHJcbiAgbW9kZWw6IERlc2lnbmVyTW9kZWw7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9wYW5lczogUGFuZXNSb3V0ZXIsXHJcbiAgICBwcml2YXRlIF90cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9wczogUHJvbXB0U2VydmljZSxcclxuICAgIHByaXZhdGUgX2luamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgX3JlZjogVXRpbGl0eVJlZjxib29sZWFuLCBEZXNpZ25lck1vZGVsLCBEZXNpZ25lck1vZGVsPikgeyB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9yZWYucG9wdWxhdGUoKS5zdWJzY3JpYmUociA9PiB7XHJcbiAgICAgIHRoaXMubW9kZWwgPSByO1xyXG4gICAgICB0aGlzLnNlY3Rpb25zID0gW1xyXG4gICAgICAgIHsgZWxlbWVudHM6IHIuZm9ybXMsIHR5cGU6ICdGb3JtcycsIGNvbXA6IEZvcm1EZXNpZ25Db21wb25lbnQsIHRlbXBsYXRlczogci50Rm9ybXMsIHByaXZpbGVnZXM6IHRydWUgfSxcclxuICAgICAgICB7IGVsZW1lbnRzOiByLmFjdGlvbnMsIHR5cGU6ICdBY3Rpb25zJywgY29tcDogQWN0aW9uRGVzaWduZXJDb21wb25lbnQsIHRlbXBsYXRlczogci50QWN0aW9ucyB9LFxyXG4gICAgICAgIHsgZWxlbWVudHM6IHIucmVwb3J0cywgdHlwZTogJ1JlcG9ydHMnLCBjb21wOiBSZXBvcnREZXNpZ25lckNvbXBvbmVudCwgdGVtcGxhdGVzOiByLnRSZXBvcnRzLCBwcml2aWxlZ2VzOiB0cnVlIH0sXHJcbiAgICAgICAgeyBlbGVtZW50czogci53aWRnZXRzLCB0eXBlOiAnV2lkZ2V0cycsIGNvbXA6IFdpZGdldERlc2lnbkNvbXBvbmVudCwgdGVtcGxhdGVzOiByLnRXaWRnZXRzLCBwcml2aWxlZ2VzOiB0cnVlIH0sXHJcbiAgICAgICAgeyBlbGVtZW50czogci52aWV3cywgdHlwZTogJ1ZpZXdzJywgY29tcDogVmlld0Rlc2lnbkNvbXBvbmVudCwgdGVtcGxhdGVzOiByLnRWaWV3cywgcHJpdmlsZWdlczogdHJ1ZSB9LFxyXG4gICAgICAgIHsgZWxlbWVudHM6IHIuZ3VpZGVzLCB0eXBlOiAnR3VpZGVzJywgY29tcDogR3VpZGVEZXNpZ25Db21wb25lbnQsIHRlbXBsYXRlczogW3sgdGl0bGU6IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ0d1aWRlJykgfV0sIHByaXZpbGVnZXM6IHRydWUgfSxcclxuICAgICAgICB7IGVsZW1lbnRzOiByLmN1YmVzLCB0eXBlOiAnQ3ViZXMnLCBjb21wOiBDdWJlRGVzaWduQ29tcG9uZW50LCB0ZW1wbGF0ZXM6IHIudEN1YmVzLCBwcml2aWxlZ2VzOiB0cnVlIH0sXHJcbiAgICAgICAgeyBlbGVtZW50czogci5mb2xkZXJzLCB0eXBlOiAnRm9sZGVycycsIGNvbXA6IEZvbGRlckRlc2lnbkNvbXBvbmVudCwgdGVtcGxhdGVzOiBbeyB0aXRsZTogdGhpcy5fdHJhbnNsYXRlLmdldCgnRm9sZGVyJykgfV0sIHByaXZpbGVnZXM6IHRydWUgfSxcclxuICAgICAgICB7IGVsZW1lbnRzOiByLnJvbGVzLCB0eXBlOiAnUm9sZXMnLCBjb21wOiBSb2xlRGVzaWduQ29tcG9uZW50LCB0ZW1wbGF0ZXM6IFt7IHRpdGxlOiB0aGlzLl90cmFuc2xhdGUuZ2V0KCdSb2xlJykgfV0gfSxcclxuICAgICAgICB7IGVsZW1lbnRzOiByLnN0YXRlcywgdHlwZTogJ1N0YXRlcycsIGNvbXA6IFN0YXRlRGVzaWduQ29tcG9uZW50LCB0ZW1wbGF0ZXM6IFt7IHRpdGxlOiB0aGlzLl90cmFuc2xhdGUuZ2V0KCdTdGF0ZScpIH1dIH0sXHJcbiAgICAgICAgeyBlbGVtZW50czogci51dGlsaXRpZXMsIHR5cGU6ICdVdGlsaXRpZXMnLCBjb21wOiBVdGlsaXR5RGVzaWduQ29tcG9uZW50LCB0ZW1wbGF0ZXM6IHIudFV0aWxpdGllcywgcHJpdmlsZWdlczogdHJ1ZSB9LFxyXG4gICAgICAgIHsgZWxlbWVudHM6IHIudHlwZXMsIHR5cGU6ICdUeXBlcycsIGNvbXA6IFR5cGVEZXNpZ25Db21wb25lbnQsIHRlbXBsYXRlczogci50VHlwZXMgfSxcclxuICAgICAgICB7IGVsZW1lbnRzOiByLnJ1bGVzLCB0eXBlOiAnUnVsZXMnLCBjb21wOiBSdWxlRGVzaWduQ29tcG9uZW50LCB0ZW1wbGF0ZXM6IHIudFJ1bGVzIH0sXHJcbiAgICAgIF07XHJcbiAgICAgIHRoaXMuc2VjdGlvbnMuZm9yRWFjaChzID0+XHJcbiAgICAgICAgcy5lbGVtZW50cy5mb3JFYWNoKGUgPT4ge1xyXG4gICAgICAgICAgaWYgKHMucHJpdmlsZWdlcyAmJiAhZS5wcml2aWxlZ2VzKSBlLnByaXZpbGVnZXMgPSB7fTtcclxuICAgICAgICAgIGlmICghZS5vcHRpb25zKSBlLm9wdGlvbnMgPSB7fTtcclxuXHJcbiAgICAgICAgICBlLmluamVjdG9yID0gdGhpcy5fY3JlYXRlSW5qZWN0b3IoZSwgJ3dpZGdldCcpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPEVsZW1lbnRNb2RlbFtdPikge1xyXG4gICAgY29uc3QgcmFuZ2UgPSBldmVudC5jb250YWluZXIuZGF0YS5zbGljZShcclxuICAgICAgTWF0aC5taW4oZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KSxcclxuICAgICAgTWF0aC5tYXgoZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KVxyXG4gICAgKSwgZmlsZSA9IHJhbmdlWzBdLmNvbmZpZ3VyYXRpb25GaWxlO1xyXG4gICAgaWZcclxuICAgICAgLy8gYWNyb3NzIGZpbGVzXHJcbiAgICAgIChyYW5nZS5zbGljZSgxKS5zb21lKGUgPT4gZS5jb25maWd1cmF0aW9uRmlsZSAhPT0gZmlsZSkpIHtcclxuICAgICAgLy8gc3RhcnQgb3JkaW5hbFxyXG4gICAgICBsZXQgaSA9IGV2ZW50LmNvbnRhaW5lci5kYXRhW2V2ZW50LmN1cnJlbnRJbmRleF0ub3JkaW5hbCB8fCAtMTtcclxuICAgICAgLy8gc2V0IG9yZGluYWwgdG8gaXRlbXMgaW4gcmFuZ2VcclxuICAgICAgcmFuZ2UuZm9yRWFjaChlID0+IGUub3JkaW5hbCA9IGkrKyk7XHJcbiAgICAgIC8vIGluY3JlYXNlIG90aGVyIGhpZ2hlciB0aGFuIGxhc3QgaW4gcmFuZ2VcclxuICAgICAgZXZlbnQuY29udGFpbmVyLmRhdGEuZmlsdGVyKGUgPT4gZS5vcmRpbmFsICYmIGUub3JkaW5hbCA+IGkpLmZvckVhY2goZSA9PiBlLm9yZGluYWwgKz0gMSk7XHJcbiAgICB9IGVsc2UgLy8gbmF0aXZlIG9yZGVyIGluIGNvbGxlY3Rpb25cclxuICAgICAgcmFuZ2UuZm9yRWFjaChlID0+IGUub3JkaW5hbCA9IG51bGwpO1xyXG4gICAgbW92ZUl0ZW1JbkFycmF5KGV2ZW50LmNvbnRhaW5lci5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBDdHJsLXMgc2F2ZVxyXG4gICAqIEBwYXJhbSBldmVudFxyXG4gICAqL1xyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24nLCBbJyRldmVudCddKVxyXG4gIGhhbmRsZUtleWJvYXJkRXZlbnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIGlmICh0aGlzLmRpcnR5ICYmIGV2ZW50LmN0cmxLZXkgJiYgKGV2ZW50LndoaWNoID09PSA4MyB8fCBldmVudC53aGljaCA9PT0gMTE1KSkge1xyXG4gICAgICB0aGlzLnNhdmUoKTtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG4gIGRpc2NhcmQoc2VjdGlvbjogU2VjdGlvbiwgZWxlbWVudDogRWxlbWVudE1vZGVsKSB7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2luc2VydChzZWN0aW9uOiBTZWN0aW9uLCBlbGVtZW50OiBFbGVtZW50TW9kZWwsIGluZGV4OiBudW1iZXIpIHtcclxuICAgIGxldCBpID0gZWxlbWVudC5uYW1lLmxhc3RJbmRleE9mKCdfJyksXHJcbiAgICAgIGogPSBlbGVtZW50LnRpdGxlLmxhc3RJbmRleE9mKCcgJyksXHJcbiAgICAgIG4gPSAwLCBuYW1lLCB0aXRsZTtcclxuICAgIGRvIHtcclxuICAgICAgbisrO1xyXG4gICAgICBuYW1lID0gKGkgPCAwIHx8IGlzTmFOKHBhcnNlSW50KGVsZW1lbnQubmFtZS5zdWJzdHIoaSArIDEpKSkgPyBlbGVtZW50Lm5hbWUgOiBlbGVtZW50Lm5hbWUuc3Vic3RyKDAsIGkpKSArICdfJyArIG47XHJcbiAgICAgIHRpdGxlID0gKGogPCAwIHx8IGlzTmFOKHBhcnNlSW50KGVsZW1lbnQudGl0bGUuc3Vic3RyKGogKyAxKSkpID8gZWxlbWVudC50aXRsZSA6IGVsZW1lbnQudGl0bGUuc3Vic3RyKDAsIGopKSArICcgJyArIG47XHJcbiAgICB9XHJcbiAgICB3aGlsZSAoc2VjdGlvbi5lbGVtZW50cy5maW5kKGUgPT4gZS5uYW1lID09PSBuYW1lIHx8IGUudGl0bGUgPT09IHRpdGxlKSk7XHJcbiAgICBlbGVtZW50Lm5hbWUgPSBuYW1lLCBlbGVtZW50LnRpdGxlID0gdGl0bGU7XHJcblxyXG4gICAgY29uc3QgaW5qZWN0b3IgPSB0aGlzLl9jcmVhdGVJbmplY3RvcihlbGVtZW50LCAnd2lkZ2V0Jyk7XHJcbiAgICBlbGVtZW50LmluamVjdG9yID0gaW5qZWN0b3I7XHJcbiAgICB0aGlzLl9vcGVuKGVsZW1lbnQsIHNlY3Rpb24sICdhZGQnKS50aGVuKCgpID0+XHJcbiAgICAgIHNlY3Rpb24uZWxlbWVudHMuc3BsaWNlKGluZGV4ICsgMSwgMCwgZWxlbWVudClcclxuICAgICk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX29wZW4oZWxlbWVudDogRWxlbWVudE1vZGVsLFxyXG4gICAgc2VjdGlvbjogU2VjdGlvbixcclxuICAgIG1vZGU6IERlc2lnbk1vZGUsIHRpdGxlPzogc3RyaW5nKSB7XHJcbiAgICBsZXQgZWNsb25lID0geyAuLi5lbGVtZW50IH07XHJcbiAgICBkZWxldGUgZWNsb25lLmluamVjdG9yO1xyXG4gICAgZWNsb25lID0gY2xvbmUoZWNsb25lKTsgLy8gZGVlcFxyXG4gICAgY29uc3QgaW5qZWN0b3IgPSB0aGlzLl9jcmVhdGVJbmplY3RvcihlY2xvbmUsIG1vZGUpO1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHRoaXMuX3BhbmVzLm5hdmlnYXRlPERlc2lnbmVyVHlwZUVsZW1lbnRDb21wb25lbnQ+KHNlY3Rpb24uY29tcCwge1xyXG4gICAgICBwb2xpY3k6IE9wZW5Qb2xpY3kuRGlhbG9nLFxyXG4gICAgICBncm91cDogdGhpcy5fdHJhbnNsYXRlLmdldChzZWN0aW9uLnR5cGUpLFxyXG4gICAgICAvL3RpdGxlLFxyXG4gICAgICBpbmplY3RvcjogaW5qZWN0b3JcclxuICAgIH0pLnRoZW4oZSA9PlxyXG4gICAgICBlLmluc3RhbmNlLnNhdmUuc3Vic2NyaWJlKGUgPT4ge1xyXG4gICAgICAgIGlmIChlKSB7XHJcbiAgICAgICAgICBPYmplY3QuYXNzaWduKGVsZW1lbnQsIGUpO1xyXG4gICAgICAgICAgdGhpcy5kaXJ0eSA9IHRydWU7XHJcbiAgICAgICAgICByZXNvbHZlKGUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHJlamVjdCgpO1xyXG4gICAgICB9KVxyXG4gICAgKSk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2NyZWF0ZUluamVjdG9yKGVsZW1lbnQ6IEVsZW1lbnRNb2RlbDxhbnk+LCBtb2RlOiBEZXNpZ25Nb2RlKSB7XHJcbiAgICBjb25zdCByZWYgPSBuZXcgRGVzaWduZXJSZWYodGhpcy5tb2RlbCwgZWxlbWVudCwgbW9kZSk7XHJcblxyXG4gICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoW3tcclxuICAgICAgcHJvdmlkZTogRGVzaWduZXJSZWYsIHVzZVZhbHVlOiByZWZcclxuICAgIH1dLCB0aGlzLl9pbmplY3Rvcik7XHJcbiAgICByZXR1cm4gaW5qZWN0b3I7XHJcbiAgfVxyXG4gIGFkZChzZWN0aW9uOiBTZWN0aW9uLCBtZW51OiBNYXRNZW51VHJpZ2dlciwgZXZ0OiBFdmVudCkge1xyXG4gICAgaWYgKHNlY3Rpb24udGVtcGxhdGVzLmxlbmd0aCA+IDEpXHJcbiAgICAgIG1lbnUub3Blbk1lbnUoKTtcclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLmNyZWF0ZShzZWN0aW9uLCBzZWN0aW9uLnRlbXBsYXRlc1swXSk7XHJcbiAgICB9XHJcbiAgICBldnQucHJldmVudERlZmF1bHQoKTtcclxuICB9XHJcbiAgY3JlYXRlKHNlY3Rpb246IFNlY3Rpb24sIHRlbXBsYXRlOiBUZW1wbGF0ZUluZm8pIHtcclxuICAgIGNvbnN0IGVsZW1lbnQgPSB7XHJcbiAgICAgIC4uLnRlbXBsYXRlLFxyXG4gICAgICBuYW1lOiBwcm9ncmFtTmFtZSh0ZW1wbGF0ZS50aXRsZSksXHJcbiAgICAgIGRyYWZ0OiB0cnVlLFxyXG4gICAgICBvcHRpb25zOiB7fVxyXG4gICAgfSBhcyBFbGVtZW50TW9kZWw7XHJcbiAgICB0aGlzLl9pbnNlcnQoc2VjdGlvbiwgZWxlbWVudCwgc2VjdGlvbi5lbGVtZW50cy5sZW5ndGgpO1xyXG4gIH1cclxuICBjb3B5KHNlY3Rpb246IFNlY3Rpb24sIGVsZW1lbnQ6IEVsZW1lbnRNb2RlbCkge1xyXG4gICAgbGV0IGVjbG9uZSA9IHtcclxuICAgICAgLi4uZWxlbWVudCxcclxuICAgICAgY29weU9mOiBlbGVtZW50Lm5hbWUsXHJcbiAgICAgIGRyYWZ0OiB0cnVlXHJcbiAgICB9O1xyXG4gICAgZGVsZXRlIGVjbG9uZS5pbmplY3RvcjtcclxuICAgIGRlbGV0ZSBlY2xvbmUucmVzb3VyY2U7XHJcbiAgICBlY2xvbmUgPSBjbG9uZShlY2xvbmUpOyAvLyBkZWVwXHJcbiAgICB0aGlzLl9pbnNlcnQoc2VjdGlvbiwgZWNsb25lLCBzZWN0aW9uLmVsZW1lbnRzLmluZGV4T2YoZWxlbWVudCkpO1xyXG4gIH1cclxuICBlZGl0KGVsZW1lbnQ6IEVsZW1lbnRNb2RlbCwgc2VjdGlvbjogU2VjdGlvbikge1xyXG4gICAgdGhpcy5fb3BlbihlbGVtZW50LCBzZWN0aW9uLCAnZWRpdCcpO1xyXG4gIH1cclxuICB0b2dnbGVEaXNhYmxlZChlbGVtZW50OiBFbGVtZW50TW9kZWwpIHtcclxuICAgIGVsZW1lbnQuZGlzYWJsZWQgPSAhZWxlbWVudC5kaXNhYmxlZDtcclxuICAgIHRoaXMuZGlydHkgPSB0cnVlO1xyXG4gIH1cclxuICBzYXZlKCkge1xyXG4gICAgdGhpcy5zYXZpbmcgPSB0cnVlO1xyXG4gICAgY29uc3QgeyBhY3Rpb25zLCBjdWJlcywgZm9sZGVycywgZm9ybXMsIGd1aWRlcywgcmVwb3J0cywgcm9sZXMsIHJ1bGVzLCBzdGF0ZXMsIHR5cGVzLCB1dGlsaXRpZXMsIHZpZXdzLCB3aWRnZXRzIH0gPSB0aGlzLm1vZGVsO1xyXG4gICAgcmV0dXJuIHRoaXMuX3JlZi5leGVjdXRlKGNsZWFudXAoeyBhY3Rpb25zLCBjdWJlcywgZm9sZGVycywgZm9ybXMsIGd1aWRlcywgcmVwb3J0cywgcm9sZXMsIHJ1bGVzLCBzdGF0ZXMsIHR5cGVzLCB1dGlsaXRpZXMsIHZpZXdzLCB3aWRnZXRzIH0pKS50b1Byb21pc2UoKS50aGVuKCgpID0+IHtcclxuICAgICAgdGhpcy5fcHMudG9hc3QoJ0NoYW5nZXNTYXZlZCcpO1xyXG4gICAgICBhcHBseShhY3Rpb25zLCBjdWJlcywgZm9sZGVycywgZm9ybXMsIGd1aWRlcywgcmVwb3J0cywgcm9sZXMsIHJ1bGVzLCBzdGF0ZXMsIHR5cGVzLCB1dGlsaXRpZXMsIHZpZXdzLCB3aWRnZXRzKTtcclxuICAgICAgdGhpcy5zYXZpbmcgPSBmYWxzZTtcclxuICAgICAgdGhpcy5kaXJ0eSA9IGZhbHNlXHJcbiAgICB9LCAoKSA9PiB7XHJcbiAgICAgIHRoaXMuX3BzLmVycm9yKCk7XHJcbiAgICAgIHRoaXMuc2F2aW5nID0gZmFsc2VcclxuICAgIH0pO1xyXG4gICAgZnVuY3Rpb24gYXBwbHkoLi4uY29sbGVjdGlvbjogRWxlbWVudE1vZGVsW11bXSkge1xyXG4gICAgICBjb2xsZWN0aW9uLmZvckVhY2gocyA9PiBzLmZvckVhY2goZSA9PiBkZWxldGUgZS5kcmFmdCkpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5pbnRlcmZhY2UgU2VjdGlvbiB7XHJcbiAgY29tcDogQ29tcG9uZW50VHlwZTxhbnk+O1xyXG4gIHR5cGU6IHN0cmluZztcclxuICBlbGVtZW50czogRWxlbWVudE1vZGVsW107XHJcbiAgdGVtcGxhdGVzOiBUZW1wbGF0ZUluZm9bXTtcclxuICBwcml2aWxlZ2VzPzogYm9vbGVhbjtcclxufVxyXG4iLCI8bWF0LXRvb2xiYXI+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInNhdmUoKVwiIFtkaXNhYmxlZF09XCIhZGlydHkgfHwgbG9hZGluZyB8fCBzYXZpbmdcIiBbYml6ZG9jVG9vbHRpcF09XCInU2F2ZSd8dHJhbnNsYXRlXCI+PG1hdC1pY29uPnNhdmU8L21hdC1pY29uPjwvYnV0dG9uPlxyXG48L21hdC10b29sYmFyPlxyXG48c2VjdGlvbiAqbmdGb3I9XCJsZXQgcyBvZiBzZWN0aW9uc1wiPlxyXG4gIDxoMiBjbGFzcz1cIm1hdC10aXRsZVwiPnt7cy50eXBlIHwgdHJhbnNsYXRlfX08L2gyPlxyXG4gIDxkaXYgY2xhc3M9XCJlbGVtZW50c1wiIGNka0Ryb3BMaXN0IGNka0Ryb3BMaXN0T3JpZW50YXRpb249XCJob3Jpem9udGFsXCIgW2Nka0Ryb3BMaXN0RGF0YV09XCJzLmVsZW1lbnRzXCIgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIj5cclxuICAgIDxtYXQtY2FyZCAqbmdGb3I9XCJsZXQgZSBvZiBzLmVsZW1lbnRzXCIgW2NsYXNzLmRpc2FibGVkXT1cImUuZGlzYWJsZWRcIiBjZGtEcmFnIGNka0RyYWdSb290RWxlbWVudD1cIi5tYXQtY2FyZC10aXRsZVwiPlxyXG4gICAgICA8IS0tIEBpdGVtLS0+XHJcbiAgICAgIDxtYXQtY2FyZC10aXRsZT5cclxuICAgICAgICB7e2UudGl0bGV9fVxyXG4gICAgICA8L21hdC1jYXJkLXRpdGxlPlxyXG4gICAgICA8bWF0LWNhcmQtc3VidGl0bGU+XHJcbiAgICAgICAge3tlLm5hbWV9fVxyXG4gICAgICA8L21hdC1jYXJkLXN1YnRpdGxlPlxyXG4gICAgICA8bWF0LWNhcmQtY29udGVudD5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0NvbXBvbmVudE91dGxldD1cInMuY29tcDsgaW5qZWN0b3I6IGUuaW5qZWN0b3JcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9tYXQtY2FyZC1jb250ZW50PlxyXG4gICAgICA8bWF0LWNhcmQtYWN0aW9ucyBmeExheW91dD1cInJvd1wiPlxyXG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJjb3B5KHMsIGUpXCIgKm5nSWY9XCIhZS5jb3B5T2ZcIiBbYml6ZG9jVG9vbHRpcF09XCInQ29weSd8dHJhbnNsYXRlXCI+PG1hdC1pY29uPmZpbGVfY29weTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInMuZWxlbWVudHMucmVtb3ZlKGUpXCIgKm5nSWY9XCJlLmRyYWZ0IHx8IGUuZW1wdHlcIiBbYml6ZG9jVG9vbHRpcF09XCInRGlzY2FyZCd8dHJhbnNsYXRlXCI+PG1hdC1pY29uPmRlbGV0ZTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInRvZ2dsZURpc2FibGVkKGUpXCIgW2JpemRvY1Rvb2x0aXBdPVwiKGUuZGlzYWJsZWQgPyAnRW5hYmxlJyA6ICdEaXNhYmxlJyl8dHJhbnNsYXRlXCI+PG1hdC1pY29uPnt7ZS5kaXNhYmxlZCA/ICd2aXNpYmlsaXR5JyA6ICd2aXNpYmlsaXR5X29mZid9fTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJkaXZpZGVyXCI+PC9zcGFuPlxyXG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJlZGl0KGUsIHMpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ1NldHRpbmdzJ3x0cmFuc2xhdGVcIj48bWF0LWljb24+c2V0dGluZ3M8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICA8L21hdC1jYXJkLWFjdGlvbnM+XHJcbiAgICA8L21hdC1jYXJkPlxyXG4gICAgPGRpdiBjbGFzcz1cImFkZC1lbGVtZW50XCIgbWF0UmlwcGxlIChjbGljayk9XCJhZGQocywgbWVudVRyaWdnZXIsICRldmVudClcIiAqbmdJZj1cInMudGVtcGxhdGVzPy5sZW5ndGhcIj5cclxuICAgICAgPHNwYW4gW21hdE1lbnVUcmlnZ2VyRm9yXT1cInRlbXBsYXRlTWVudVwiICNtZW51VHJpZ2dlcj1cIm1hdE1lbnVUcmlnZ2VyXCI+PC9zcGFuPlxyXG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbj48bWF0LWljb24gW2JpemRvY1Rvb2x0aXBdPVwiJ05ldyd8dHJhbnNsYXRlXCIgZGlzYWJsZVJpcHBsZT1cInRydWVcIj5hZGQ8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICA8bWF0LW1lbnUgI3RlbXBsYXRlTWVudT5cclxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKm5nRm9yPVwibGV0IHQgb2Ygcy50ZW1wbGF0ZXNcIiAoY2xpY2spPVwiY3JlYXRlKHMsIHQpXCI+XHJcbiAgICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgICAge3t0LmZhbWlseX19XHJcbiAgICAgICAgICAgIHt7dC50aXRsZX19XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvbWF0LW1lbnU+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9zZWN0aW9uPlxyXG4iXX0=
|
212
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzaWduZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9hZG1pbi9jb25maWd1cmF0aW9uLWRlc2lnbmVyL2Rlc2lnbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvYWRtaW4vY29uZmlndXJhdGlvbi1kZXNpZ25lci9kZXNpZ25lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXRFLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFLL0MsT0FBTyxFQUE2QyxXQUFXLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBYyxNQUFNLGdCQUFnQixDQUFDO0FBRXhILE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RF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QUFDLEdBQUcsQ0FBQyxFQUNsQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUM7UUFDckIsR0FBRztZQUNELENBQUMsRUFBRSxDQUFDO1lBQ0osSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDbkgsS0FBSyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUM7U0FDeEgsUUFDTSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLEVBQUU7UUFDekUsT0FBTyxDQUFDLElBQUksR0FBRyxJQUFJLEVBQUUsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFM0MsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDekQsT0FBTyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDNUIsSUFBSSxDQUFDLEtBQUssQ0FB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YUFBYSxDQUFDOzZNQW1FM0IsbUJBQW1CO3NCQURsQixZQUFZO3VCQUFDLGtCQUFrQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrRHJhZ0Ryb3AsIG1vdmVJdGVtSW5BcnJheSB9IGZyb20gXCJAYW5ndWxhci9jZGsvZHJhZy1kcm9wXCI7XHJcbmltcG9ydCB7IENvbXBvbmVudFR5cGUgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL3BvcnRhbFwiO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5qZWN0b3IsIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IE1hdE1lbnVUcmlnZ2VyIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL21lbnVcIjtcclxuaW1wb3J0IHsgaXRlbUFuaW1hdGlvbiB9IGZyb20gXCIuLi8uLi9jb3JlL2FuaW1hdGlvbnNcIjtcclxuaW1wb3J0IHsgVXRpbGl0eUNvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9jb3JlL2Jhc2VcIjtcclxuaW1wb3J0IHsgT3BlblBvbGljeSB9IGZyb20gXCIuLi8uLi9jb3JlL2NvbmZpZ3VyYXRpb25cIjtcclxuaW1wb3J0IHsgQml6RG9jIH0gZnJvbSBcIi4uLy4uL2NvcmUvZGVjb3JhdG9yc1wiO1xyXG5pbXBvcnQgeyBjbGVhbnVwIH0gZnJvbSBcIi4uLy4uL2NvcmUvZnVuY3Rpb25zXCI7XHJcbmltcG9ydCB7IFByb21wdFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vY29yZS9wcm9tcHQuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBQYW5lc1JvdXRlciB9IGZyb20gXCIuLi8uLi9jb3JlL3Nsb3RzL3JvdXRlci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vY29yZS90cmFuc2xhdGUuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBVdGlsaXR5UmVmIH0gZnJvbSBcIi4uL3V0aWxpdHktcmVmXCI7XHJcbmltcG9ydCB7IEVsZW1lbnRNb2RlbCwgRGVzaWduZXJNb2RlbCwgVGVtcGxhdGVJbmZvLCBwcm9ncmFtTmFtZSwgRGVzaWduZXJSZWYsIGNsb25lLCBEZXNpZ25Nb2RlIH0gZnJvbSBcIi4vZGVjbGFyYXRpb25zXCI7XHJcbmltcG9ydCB7IERlc2lnbmVyVHlwZUVsZW1lbnRDb21wb25lbnQgfSBmcm9tIFwiLi9kZXNpZ25lci5iYXNlXCI7XHJcbmltcG9ydCB7IEFjdGlvbkRlc2lnbmVyQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvYWN0aW9uLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBDdWJlRGVzaWduQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvY3ViZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRm9sZGVyRGVzaWduQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvZm9sZGVyLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBGb3JtRGVzaWduQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvZm9ybS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgR3VpZGVEZXNpZ25Db21wb25lbnQgfSBmcm9tIFwiLi9lbGVtZW50cy9ndWlkZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgUmVwb3J0RGVzaWduZXJDb21wb25lbnQgfSBmcm9tIFwiLi9lbGVtZW50cy9yZXBvcnQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFJvbGVEZXNpZ25Db21wb25lbnQgfSBmcm9tIFwiLi9lbGVtZW50cy9yb2xlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBSdWxlRGVzaWduQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvcnVsZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU3RhdGVEZXNpZ25Db21wb25lbnQgfSBmcm9tIFwiLi9lbGVtZW50cy9zdGF0ZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgVHlwZURlc2lnbkNvbXBvbmVudCB9IGZyb20gXCIuL2VsZW1lbnRzL3R5cGUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFV0aWxpdHlEZXNpZ25Db21wb25lbnQgfSBmcm9tIFwiLi9lbGVtZW50cy91dGlsaXR5LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBWaWV3RGVzaWduQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvdmlldy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgV2lkZ2V0RGVzaWduQ29tcG9uZW50IH0gZnJvbSBcIi4vZWxlbWVudHMvd2lkZ2V0LmNvbXBvbmVudFwiO1xyXG4vKiogKi9cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGVVcmw6ICdkZXNpZ25lci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJ2Rlc2lnbmVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgYW5pbWF0aW9uczogW2l0ZW1BbmltYXRpb25dXHJcbn0pXHJcbkBCaXpEb2MoeyBzZWxlY3RvcjogJ2JpemRvYy1jb25maWd1cmF0aW9uLWRlc2lnbmVyJyB9KVxyXG5leHBvcnQgY2xhc3MgQ29uZmlndXJhdGlvbkRlc2lnbmVyQ29tcG9uZW50IGltcGxlbWVudHMgVXRpbGl0eUNvbXBvbmVudCwgT25Jbml0IHtcclxuICBsb2FkaW5nID0gdHJ1ZTtcclxuICBzYXZpbmcgPSBmYWxzZTtcclxuICBkaXJ0eSA9IGZhbHNlO1xyXG4gIHNlY3Rpb25zOiBTZWN0aW9uW107XHJcbiAgbW9kZWw6IERlc2lnbmVyTW9kZWw7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9wYW5lczogUGFuZXNSb3V0ZXIsXHJcbiAgICBwcml2YXRlIF90cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9wczogUHJvbXB0U2VydmljZSxcclxuICAgIHByaXZhdGUgX2luamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgX3JlZjogVXRpbGl0eVJlZjxib29sZWFuLCBEZXNpZ25lck1vZGVsLCBEZXNpZ25lck1vZGVsPikgeyB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9yZWYucG9wdWxhdGUoKS5zdWJzY3JpYmUociA9PiB7XHJcbiAgICAgIHRoaXMubW9kZWwgPSByO1xyXG4gICAgICB0aGlzLnNlY3Rpb25zID0gW1xyXG4gICAgICAgIHsgZWxlbWVudHM6IHIuZm9ybXMsIHR5cGU6ICdGb3JtcycsIGNvbXA6IEZvcm1EZXNpZ25Db21wb25lbnQsIHRlbXBsYXRlczogci50Rm9ybXMsIHByaXZpbGVnZXM6IHRydWUgfSxcclxuICAgICAgICB7IGVsZW1lbnRzOiByLmFjdGlvbnMsIHR5cGU6ICdBY3Rpb25zJywgY29tcDogQWN0aW9uRGVzaWduZXJDb21wb25lbnQsIHRlbXBsYXRlczogci50QWN0aW9ucyB9LFxyXG4gICAgICAgIHsgZWxlbWVudHM6IHIucmVwb3J0cywgdHlwZTogJ1JlcG9ydHMnLCBjb21wOiBSZXBvcnREZXNpZ25lckNvbXBvbmVudCwgdGVtcGxhdGVzOiByLnRSZXBvcnRzLCBwcml2aWxlZ2VzOiB0cnVlIH0sXHJcbiAgICAgICAgeyBlbGVtZW50czogci53aWRnZXRzLCB0eXBlOiAnV2lkZ2V0cycsIGNvbXA6IFdpZGdldERlc2lnbkNvbXBvbmVudCwgdGVtcGxhdGVzOiByLnRXaWRnZXRzLCBwcml2aWxlZ2VzOiB0cnVlIH0sXHJcbiAgICAgICAgeyBlbGVtZW50czogci52aWV3cywgdHlwZTogJ1ZpZXdzJywgY29tcDogVmlld0Rlc2lnbkNvbXBvbmVudCwgdGVtcGxhdGVzOiByLnRWaWV3cywgcHJpdmlsZWdlczogdHJ1ZSB9LFxyXG4gICAgICAgIHsgZWxlbWVudHM6IHIuZ3VpZGVzLCB0eXBlOiAnR3VpZGVzJywgY29tcDogR3VpZGVEZXNpZ25Db21wb25lbnQsIHRlbXBsYXRlczogW3sgdGl0bGU6IHRoaXMuX3RyYW5zbGF0ZS5nZXQoJ0d1aWRlJykgfV0sIHByaXZpbGVnZXM6IHRydWUgfSxcclxuICAgICAgICB7IGVsZW1lbnRzOiByLmN1YmVzLCB0eXBlOiAnQ3ViZXMnLCBjb21wOiBDdWJlRGVzaWduQ29tcG9uZW50LCB0ZW1wbGF0ZXM6IHIudEN1YmVzLCBwcml2aWxlZ2VzOiB0cnVlIH0sXHJcbiAgICAgICAgeyBlbGVtZW50czogci5mb2xkZXJzLCB0eXBlOiAnRm9sZGVycycsIGNvbXA6IEZvbGRlckRlc2lnbkNvbXBvbmVudCwgdGVtcGxhdGVzOiBbeyB0aXRsZTogdGhpcy5fdHJhbnNsYXRlLmdldCgnRm9sZGVyJykgfV0sIHByaXZpbGVnZXM6IHRydWUgfSxcclxuICAgICAgICB7IGVsZW1lbnRzOiByLnJvbGVzLCB0eXBlOiAnUm9sZXMnLCBjb21wOiBSb2xlRGVzaWduQ29tcG9uZW50LCB0ZW1wbGF0ZXM6IFt7IHRpdGxlOiB0aGlzLl90cmFuc2xhdGUuZ2V0KCdSb2xlJykgfV0gfSxcclxuICAgICAgICB7IGVsZW1lbnRzOiByLnN0YXRlcywgdHlwZTogJ1N0YXRlcycsIGNvbXA6IFN0YXRlRGVzaWduQ29tcG9uZW50LCB0ZW1wbGF0ZXM6IFt7IHRpdGxlOiB0aGlzLl90cmFuc2xhdGUuZ2V0KCdTdGF0ZScpIH1dIH0sXHJcbiAgICAgICAgeyBlbGVtZW50czogci51dGlsaXRpZXMsIHR5cGU6ICdVdGlsaXRpZXMnLCBjb21wOiBVdGlsaXR5RGVzaWduQ29tcG9uZW50LCB0ZW1wbGF0ZXM6IHIudFV0aWxpdGllcywgcHJpdmlsZWdlczogdHJ1ZSB9LFxyXG4gICAgICAgIHsgZWxlbWVudHM6IHIudHlwZXMsIHR5cGU6ICdUeXBlcycsIGNvbXA6IFR5cGVEZXNpZ25Db21wb25lbnQsIHRlbXBsYXRlczogci50VHlwZXMgfSxcclxuICAgICAgICB7IGVsZW1lbnRzOiByLnJ1bGVzLCB0eXBlOiAnUnVsZXMnLCBjb21wOiBSdWxlRGVzaWduQ29tcG9uZW50LCB0ZW1wbGF0ZXM6IHIudFJ1bGVzIH0sXHJcbiAgICAgIF07XHJcbiAgICAgIHRoaXMuc2VjdGlvbnMuZm9yRWFjaChzID0+XHJcbiAgICAgICAgcy5lbGVtZW50cy5mb3JFYWNoKGUgPT4ge1xyXG4gICAgICAgICAgaWYgKHMucHJpdmlsZWdlcyAmJiAhZS5wcml2aWxlZ2VzKSBlLnByaXZpbGVnZXMgPSB7fTtcclxuICAgICAgICAgIGlmICghZS5vcHRpb25zKSBlLm9wdGlvbnMgPSB7fTtcclxuXHJcbiAgICAgICAgICBlLmluamVjdG9yID0gdGhpcy5fY3JlYXRlSW5qZWN0b3IoZSwgJ3dpZGdldCcpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPEVsZW1lbnRNb2RlbFtdPikge1xyXG4gICAgY29uc3QgcmFuZ2UgPSBldmVudC5jb250YWluZXIuZGF0YS5zbGljZShcclxuICAgICAgTWF0aC5taW4oZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KSxcclxuICAgICAgTWF0aC5tYXgoZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KVxyXG4gICAgKSwgZmlsZSA9IHJhbmdlWzBdLmNvbmZpZ3VyYXRpb25GaWxlO1xyXG4gICAgaWZcclxuICAgICAgLy8gYWNyb3NzIGZpbGVzXHJcbiAgICAgIChyYW5nZS5zbGljZSgxKS5zb21lKGUgPT4gZS5jb25maWd1cmF0aW9uRmlsZSAhPT0gZmlsZSkpIHtcclxuICAgICAgLy8gc3RhcnQgb3JkaW5hbFxyXG4gICAgICBsZXQgaSA9IGV2ZW50LmNvbnRhaW5lci5kYXRhW2V2ZW50LmN1cnJlbnRJbmRleF0ub3JkaW5hbCB8fCAtMTtcclxuICAgICAgLy8gc2V0IG9yZGluYWwgdG8gaXRlbXMgaW4gcmFuZ2VcclxuICAgICAgcmFuZ2UuZm9yRWFjaChlID0+IGUub3JkaW5hbCA9IGkrKyk7XHJcbiAgICAgIC8vIGluY3JlYXNlIG90aGVyIGhpZ2hlciB0aGFuIGxhc3QgaW4gcmFuZ2VcclxuICAgICAgZXZlbnQuY29udGFpbmVyLmRhdGEuZmlsdGVyKGUgPT4gZS5vcmRpbmFsICYmIGUub3JkaW5hbCA+IGkpLmZvckVhY2goZSA9PiBlLm9yZGluYWwgKz0gMSk7XHJcbiAgICB9IGVsc2UgLy8gbmF0aXZlIG9yZGVyIGluIGNvbGxlY3Rpb25cclxuICAgICAgcmFuZ2UuZm9yRWFjaChlID0+IGUub3JkaW5hbCA9IG51bGwpO1xyXG4gICAgbW92ZUl0ZW1JbkFycmF5KGV2ZW50LmNvbnRhaW5lci5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBDdHJsLXMgc2F2ZVxyXG4gICAqIEBwYXJhbSBldmVudFxyXG4gICAqL1xyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24nLCBbJyRldmVudCddKVxyXG4gIGhhbmRsZUtleWJvYXJkRXZlbnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIGlmICh0aGlzLmRpcnR5ICYmIGV2ZW50LmN0cmxLZXkgJiYgKGV2ZW50LndoaWNoID09PSA4MyB8fCBldmVudC53aGljaCA9PT0gMTE1KSkge1xyXG4gICAgICB0aGlzLnNhdmUoKTtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG4gIGRpc2NhcmQoc2VjdGlvbjogU2VjdGlvbiwgZWxlbWVudDogRWxlbWVudE1vZGVsKSB7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2luc2VydChzZWN0aW9uOiBTZWN0aW9uLCBlbGVtZW50OiBFbGVtZW50TW9kZWwsIGluZGV4OiBudW1iZXIpIHtcclxuICAgIGxldCBpID0gZWxlbWVudC5uYW1lLmxhc3RJbmRleE9mKCdfJyksXHJcbiAgICAgIGogPSBlbGVtZW50LnRpdGxlLmxhc3RJbmRleE9mKCcgJyksXHJcbiAgICAgIG4gPSAwLCBuYW1lLCB0aXRsZTtcclxuICAgIGRvIHtcclxuICAgICAgbisrO1xyXG4gICAgICBuYW1lID0gKGkgPCAwIHx8IGlzTmFOKHBhcnNlSW50KGVsZW1lbnQubmFtZS5zdWJzdHIoaSArIDEpKSkgPyBlbGVtZW50Lm5hbWUgOiBlbGVtZW50Lm5hbWUuc3Vic3RyKDAsIGkpKSArICdfJyArIG47XHJcbiAgICAgIHRpdGxlID0gKGogPCAwIHx8IGlzTmFOKHBhcnNlSW50KGVsZW1lbnQudGl0bGUuc3Vic3RyKGogKyAxKSkpID8gZWxlbWVudC50aXRsZSA6IGVsZW1lbnQudGl0bGUuc3Vic3RyKDAsIGopKSArICcgJyArIG47XHJcbiAgICB9XHJcbiAgICB3aGlsZSAoc2VjdGlvbi5lbGVtZW50cy5maW5kKGUgPT4gZS5uYW1lID09PSBuYW1lIHx8IGUudGl0bGUgPT09IHRpdGxlKSk7XHJcbiAgICBlbGVtZW50Lm5hbWUgPSBuYW1lLCBlbGVtZW50LnRpdGxlID0gdGl0bGU7XHJcblxyXG4gICAgY29uc3QgaW5qZWN0b3IgPSB0aGlzLl9jcmVhdGVJbmplY3RvcihlbGVtZW50LCAnd2lkZ2V0Jyk7XHJcbiAgICBlbGVtZW50LmluamVjdG9yID0gaW5qZWN0b3I7XHJcbiAgICB0aGlzLl9vcGVuKGVsZW1lbnQsIHNlY3Rpb24sICdhZGQnKS50aGVuKCgpID0+XHJcbiAgICAgIHNlY3Rpb24uZWxlbWVudHMuc3BsaWNlKGluZGV4ICsgMSwgMCwgZWxlbWVudClcclxuICAgICk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX29wZW4oZWxlbWVudDogRWxlbWVudE1vZGVsLFxyXG4gICAgc2VjdGlvbjogU2VjdGlvbixcclxuICAgIG1vZGU6IERlc2lnbk1vZGUsIHRpdGxlPzogc3RyaW5nKSB7XHJcbiAgICBsZXQgZWNsb25lID0geyAuLi5lbGVtZW50IH07XHJcbiAgICBkZWxldGUgZWNsb25lLmluamVjdG9yO1xyXG4gICAgZWNsb25lID0gY2xvbmUoZWNsb25lKTsgLy8gZGVlcFxyXG4gICAgY29uc3QgaW5qZWN0b3IgPSB0aGlzLl9jcmVhdGVJbmplY3RvcihlY2xvbmUsIG1vZGUpO1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHRoaXMuX3BhbmVzLm5hdmlnYXRlPERlc2lnbmVyVHlwZUVsZW1lbnRDb21wb25lbnQ+KHNlY3Rpb24uY29tcCwge1xyXG4gICAgICBwb2xpY3k6IE9wZW5Qb2xpY3kuRGlhbG9nLFxyXG4gICAgICBncm91cDogdGhpcy5fdHJhbnNsYXRlLmdldChzZWN0aW9uLnR5cGUpLFxyXG4gICAgICAvL3RpdGxlLFxyXG4gICAgICBpbmplY3RvcjogaW5qZWN0b3JcclxuICAgIH0pLnRoZW4oZSA9PlxyXG4gICAgICBlLmluc3RhbmNlLmRlc2lnbmVyLm9uU2F2ZS5zdWJzY3JpYmUoZSA9PiB7XHJcbiAgICAgICAgaWYgKGUpIHtcclxuICAgICAgICAgIE9iamVjdC5hc3NpZ24oZWxlbWVudCwgZSk7XHJcbiAgICAgICAgICB0aGlzLmRpcnR5ID0gdHJ1ZTtcclxuICAgICAgICAgIHJlc29sdmUoZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgcmVqZWN0KCk7XHJcbiAgICAgIH0pXHJcbiAgICApKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfY3JlYXRlSW5qZWN0b3IoZWxlbWVudDogRWxlbWVudE1vZGVsPGFueT4sIG1vZGU6IERlc2lnbk1vZGUpIHtcclxuICAgIGNvbnN0IHJlZiA9IG5ldyBEZXNpZ25lclJlZih0aGlzLm1vZGVsLCBlbGVtZW50LCBtb2RlKTtcclxuXHJcbiAgICBjb25zdCBpbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZShbe1xyXG4gICAgICBwcm92aWRlOiBEZXNpZ25lclJlZiwgdXNlVmFsdWU6IHJlZlxyXG4gICAgfV0sIHRoaXMuX2luamVjdG9yKTtcclxuICAgIHJldHVybiBpbmplY3RvcjtcclxuICB9XHJcbiAgYWRkKHNlY3Rpb246IFNlY3Rpb24sIG1lbnU6IE1hdE1lbnVUcmlnZ2VyLCBldnQ6IEV2ZW50KSB7XHJcbiAgICBpZiAoc2VjdGlvbi50ZW1wbGF0ZXMubGVuZ3RoID4gMSlcclxuICAgICAgbWVudS5vcGVuTWVudSgpO1xyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuY3JlYXRlKHNlY3Rpb24sIHNlY3Rpb24udGVtcGxhdGVzWzBdKTtcclxuICAgIH1cclxuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gIH1cclxuICBjcmVhdGUoc2VjdGlvbjogU2VjdGlvbiwgdGVtcGxhdGU6IFRlbXBsYXRlSW5mbykge1xyXG4gICAgY29uc3QgZWxlbWVudCA9IHtcclxuICAgICAgLi4udGVtcGxhdGUsXHJcbiAgICAgIG5hbWU6IHByb2dyYW1OYW1lKHRlbXBsYXRlLnRpdGxlKSxcclxuICAgICAgZHJhZnQ6IHRydWUsXHJcbiAgICAgIG9wdGlvbnM6IHt9XHJcbiAgICB9IGFzIEVsZW1lbnRNb2RlbDtcclxuICAgIGlmIChzZWN0aW9uLnByaXZpbGVnZXMpIGVsZW1lbnQucHJpdmlsZWdlcyA9IHt9O1xyXG4gICAgdGhpcy5faW5zZXJ0KHNlY3Rpb24sIGVsZW1lbnQsIHNlY3Rpb24uZWxlbWVudHMubGVuZ3RoKTtcclxuICB9XHJcbiAgY29weShzZWN0aW9uOiBTZWN0aW9uLCBlbGVtZW50OiBFbGVtZW50TW9kZWwpIHtcclxuICAgIGxldCBlY2xvbmUgPSB7XHJcbiAgICAgIC4uLmVsZW1lbnQsXHJcbiAgICAgIGNvcHlPZjogZWxlbWVudC5uYW1lLFxyXG4gICAgICBkcmFmdDogdHJ1ZVxyXG4gICAgfTtcclxuICAgIGRlbGV0ZSBlY2xvbmUuaW5qZWN0b3I7XHJcbiAgICBkZWxldGUgZWNsb25lLnJlc291cmNlO1xyXG4gICAgZWNsb25lID0gY2xvbmUoZWNsb25lKTsgLy8gZGVlcFxyXG4gICAgdGhpcy5faW5zZXJ0KHNlY3Rpb24sIGVjbG9uZSwgc2VjdGlvbi5lbGVtZW50cy5pbmRleE9mKGVsZW1lbnQpKTtcclxuICB9XHJcbiAgZWRpdChlbGVtZW50OiBFbGVtZW50TW9kZWwsIHNlY3Rpb246IFNlY3Rpb24pIHtcclxuICAgIHRoaXMuX29wZW4oZWxlbWVudCwgc2VjdGlvbiwgJ2VkaXQnKTtcclxuICB9XHJcbiAgdG9nZ2xlRGlzYWJsZWQoZWxlbWVudDogRWxlbWVudE1vZGVsKSB7XHJcbiAgICBlbGVtZW50LmRpc2FibGVkID0gIWVsZW1lbnQuZGlzYWJsZWQ7XHJcbiAgICB0aGlzLmRpcnR5ID0gdHJ1ZTtcclxuICB9XHJcbiAgc2F2ZSgpIHtcclxuICAgIHRoaXMuc2F2aW5nID0gdHJ1ZTtcclxuICAgIGNvbnN0IHsgYWN0aW9ucywgY3ViZXMsIGZvbGRlcnMsIGZvcm1zLCBndWlkZXMsIHJlcG9ydHMsIHJvbGVzLCBydWxlcywgc3RhdGVzLCB0eXBlcywgdXRpbGl0aWVzLCB2aWV3cywgd2lkZ2V0cyB9ID0gdGhpcy5tb2RlbDtcclxuICAgIHJldHVybiB0aGlzLl9yZWYuZXhlY3V0ZShjbGVhbnVwKHsgYWN0aW9ucywgY3ViZXMsIGZvbGRlcnMsIGZvcm1zLCBndWlkZXMsIHJlcG9ydHMsIHJvbGVzLCBydWxlcywgc3RhdGVzLCB0eXBlcywgdXRpbGl0aWVzLCB2aWV3cywgd2lkZ2V0cyB9KSkudG9Qcm9taXNlKCkudGhlbigoKSA9PiB7XHJcbiAgICAgIHRoaXMuX3BzLnRvYXN0KCdDaGFuZ2VzU2F2ZWQnKTtcclxuICAgICAgYXBwbHkoYWN0aW9ucywgY3ViZXMsIGZvbGRlcnMsIGZvcm1zLCBndWlkZXMsIHJlcG9ydHMsIHJvbGVzLCBydWxlcywgc3RhdGVzLCB0eXBlcywgdXRpbGl0aWVzLCB2aWV3cywgd2lkZ2V0cyk7XHJcbiAgICAgIHRoaXMuc2F2aW5nID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuZGlydHkgPSBmYWxzZVxyXG4gICAgfSwgKCkgPT4ge1xyXG4gICAgICB0aGlzLl9wcy5lcnJvcigpO1xyXG4gICAgICB0aGlzLnNhdmluZyA9IGZhbHNlXHJcbiAgICB9KTtcclxuICAgIGZ1bmN0aW9uIGFwcGx5KC4uLmNvbGxlY3Rpb246IEVsZW1lbnRNb2RlbFtdW10pIHtcclxuICAgICAgY29sbGVjdGlvbi5mb3JFYWNoKHMgPT4gcy5mb3JFYWNoKGUgPT4gZGVsZXRlIGUuZHJhZnQpKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuaW50ZXJmYWNlIFNlY3Rpb24ge1xyXG4gIGNvbXA6IENvbXBvbmVudFR5cGU8YW55PjtcclxuICB0eXBlOiBzdHJpbmc7XHJcbiAgZWxlbWVudHM6IEVsZW1lbnRNb2RlbFtdO1xyXG4gIHRlbXBsYXRlczogVGVtcGxhdGVJbmZvW107XHJcbiAgcHJpdmlsZWdlcz86IGJvb2xlYW47XHJcbn1cclxuIiwiPG1hdC10b29sYmFyPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJzYXZlKClcIiBbZGlzYWJsZWRdPVwiIWRpcnR5IHx8IGxvYWRpbmcgfHwgc2F2aW5nXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ1NhdmUnfHRyYW5zbGF0ZVwiPjxtYXQtaWNvbj5zYXZlPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuPC9tYXQtdG9vbGJhcj5cclxuPHNlY3Rpb24gKm5nRm9yPVwibGV0IHMgb2Ygc2VjdGlvbnNcIj5cclxuICA8aDIgY2xhc3M9XCJtYXQtdGl0bGVcIj57e3MudHlwZSB8IHRyYW5zbGF0ZX19PC9oMj5cclxuICA8ZGl2IGNsYXNzPVwiZWxlbWVudHNcIiBjZGtEcm9wTGlzdCBjZGtEcm9wTGlzdE9yaWVudGF0aW9uPVwiaG9yaXpvbnRhbFwiIFtjZGtEcm9wTGlzdERhdGFdPVwicy5lbGVtZW50c1wiIChjZGtEcm9wTGlzdERyb3BwZWQpPVwiZHJvcCgkZXZlbnQpXCI+XHJcbiAgICA8bWF0LWNhcmQgKm5nRm9yPVwibGV0IGUgb2Ygcy5lbGVtZW50c1wiIFtjbGFzcy5kaXNhYmxlZF09XCJlLmRpc2FibGVkXCIgY2RrRHJhZyBjZGtEcmFnUm9vdEVsZW1lbnQ9XCIubWF0LWNhcmQtdGl0bGVcIj5cclxuICAgICAgPCEtLSBAaXRlbS0tPlxyXG4gICAgICA8bWF0LWNhcmQtdGl0bGU+XHJcbiAgICAgICAge3tlLnRpdGxlfX1cclxuICAgICAgPC9tYXQtY2FyZC10aXRsZT5cclxuICAgICAgPG1hdC1jYXJkLXN1YnRpdGxlPlxyXG4gICAgICAgIHt7ZS5uYW1lfX1cclxuICAgICAgPC9tYXQtY2FyZC1zdWJ0aXRsZT5cclxuICAgICAgPG1hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdDb21wb25lbnRPdXRsZXQ9XCJzLmNvbXA7IGluamVjdG9yOiBlLmluamVjdG9yXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbWF0LWNhcmQtY29udGVudD5cclxuICAgICAgPG1hdC1jYXJkLWFjdGlvbnMgZnhMYXlvdXQ9XCJyb3dcIj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiY29weShzLCBlKVwiICpuZ0lmPVwiIWUuY29weU9mXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0NvcHknfHRyYW5zbGF0ZVwiPjxtYXQtaWNvbj5maWxlX2NvcHk8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJzLmVsZW1lbnRzLnJlbW92ZShlKVwiICpuZ0lmPVwiZS5kcmFmdCB8fCBlLmVtcHR5XCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0Rpc2NhcmQnfHRyYW5zbGF0ZVwiPjxtYXQtaWNvbj5kZWxldGU8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ0b2dnbGVEaXNhYmxlZChlKVwiIFtiaXpkb2NUb29sdGlwXT1cIihlLmRpc2FibGVkID8gJ0VuYWJsZScgOiAnRGlzYWJsZScpfHRyYW5zbGF0ZVwiPjxtYXQtaWNvbj57e2UuZGlzYWJsZWQgPyAndmlzaWJpbGl0eScgOiAndmlzaWJpbGl0eV9vZmYnfX08L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZGl2aWRlclwiPjwvc3Bhbj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZWRpdChlLCBzKVwiIFtiaXpkb2NUb29sdGlwXT1cIidTZXR0aW5ncyd8dHJhbnNsYXRlXCI+PG1hdC1pY29uPnNldHRpbmdzPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgICAgPC9tYXQtY2FyZC1hY3Rpb25zPlxyXG4gICAgPC9tYXQtY2FyZD5cclxuICAgIDxkaXYgY2xhc3M9XCJhZGQtZWxlbWVudFwiIG1hdFJpcHBsZSAoY2xpY2spPVwiYWRkKHMsIG1lbnVUcmlnZ2VyLCAkZXZlbnQpXCIgKm5nSWY9XCJzLnRlbXBsYXRlcz8ubGVuZ3RoXCI+XHJcbiAgICAgIDxzcGFuIFttYXRNZW51VHJpZ2dlckZvcl09XCJ0ZW1wbGF0ZU1lbnVcIiAjbWVudVRyaWdnZXI9XCJtYXRNZW51VHJpZ2dlclwiPjwvc3Bhbj5cclxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24+PG1hdC1pY29uIFtiaXpkb2NUb29sdGlwXT1cIidOZXcnfHRyYW5zbGF0ZVwiIGRpc2FibGVSaXBwbGU9XCJ0cnVlXCI+YWRkPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgICAgPG1hdC1tZW51ICN0ZW1wbGF0ZU1lbnU+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCB0IG9mIHMudGVtcGxhdGVzXCIgKGNsaWNrKT1cImNyZWF0ZShzLCB0KVwiPlxyXG4gICAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICAgIHt7dC5mYW1pbHl9fVxyXG4gICAgICAgICAgICB7e3QudGl0bGV9fVxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L21hdC1tZW51PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvc2VjdGlvbj5cclxuIl19
|
@@ -36,9 +36,9 @@ export class ActionDesignerComponent extends DesignerTypeElementComponent {
|
|
36
36
|
}
|
37
37
|
ActionDesignerComponent.resources = ['you', 'youMale', 'youFemale', 'verb', 'past', 'pastMale', 'pastFemale', 'adjective', 'adjectivePlural'];
|
38
38
|
ActionDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ActionDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
39
|
-
ActionDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: ActionDesignerComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element
|
39
|
+
ActionDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.6", type: ActionDesignerComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <div>\r\n <mat-checkbox formControlName=\"multiple\">{{'EnableMultipleSelection'|translate}}</mat-checkbox>\r\n </div>\r\n <h2 class=\"mat-title\">{{'Labels'|translate}}</h2>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Past'|translate}}</mat-label>\r\n <input matInput formControlName=\"past\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Verb'|translate}}</mat-label>\r\n <input matInput formControlName=\"verb\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Adjective'|translate}}</mat-label>\r\n <input matInput formControlName=\"adjective\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'AdjectivePlural'|translate}}</mat-label>\r\n <input matInput formControlName=\"adjectivePlural\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'You'|translate}}</mat-label>\r\n <input matInput formControlName=\"you\" />\r\n </mat-form-field>\r\n <div>\r\n <bizdoc-color-picker formControlName=\"color\" [label]=\"'Color'|translate\" class=\"flex\"></bizdoc-color-picker>\r\n </div>\r\n </form>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n", dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i5.EditContentDirective, selector: "[bizdocEditContent]" }, { kind: "component", type: i5.DesignerItemComponent, selector: "bizdoc-designer-element", inputs: ["form"], outputs: ["continue", "save"] }, { kind: "component", type: i6.ColorPicker, selector: "bizdoc-color-picker", inputs: ["label", "value", "required", "disabled"], outputs: ["valueChanges"] }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] });
|
40
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ActionDesignerComponent, decorators: [{
|
41
41
|
type: Component,
|
42
|
-
args: [{ template: "<bizdoc-designer-element
|
42
|
+
args: [{ template: "<bizdoc-designer-element [form]=\"form\">\r\n <ng-template bizdocEditContent>\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <div>\r\n <mat-checkbox formControlName=\"multiple\">{{'EnableMultipleSelection'|translate}}</mat-checkbox>\r\n </div>\r\n <h2 class=\"mat-title\">{{'Labels'|translate}}</h2>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Past'|translate}}</mat-label>\r\n <input matInput formControlName=\"past\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Verb'|translate}}</mat-label>\r\n <input matInput formControlName=\"verb\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Adjective'|translate}}</mat-label>\r\n <input matInput formControlName=\"adjective\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'AdjectivePlural'|translate}}</mat-label>\r\n <input matInput formControlName=\"adjectivePlural\" />\r\n </mat-form-field>\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'You'|translate}}</mat-label>\r\n <input matInput formControlName=\"you\" />\r\n </mat-form-field>\r\n <div>\r\n <bizdoc-color-picker formControlName=\"color\" [label]=\"'Color'|translate\" class=\"flex\"></bizdoc-color-picker>\r\n </div>\r\n </form>\r\n </ng-template>\r\n</bizdoc-designer-element>\r\n" }]
|
43
43
|
}] });
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvYWRtaW4vY29uZmlndXJhdGlvbi1kZXNpZ25lci9lbGVtZW50cy9hY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9hZG1pbi9jb25maWd1cmF0aW9uLWRlc2lnbmVyL2VsZW1lbnRzL2FjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7Ozs7QUFHaEUsTUFBTSxPQUFPLHVCQUF3QixTQUFRLDRCQUE0QjtJQUR6RTs7UUFHRSxTQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7WUFDcEIsUUFBUSxFQUFFLElBQUk7WUFDZCxLQUFLLEVBQUUsSUFBSTtZQUNYLElBQUksRUFBRSxJQUFJO1lBQ1YsR0FBRyxFQUFFLElBQUk7WUFDVCxPQUFPLEVBQUUsSUFBSTtZQUNiLFNBQVMsRUFBRSxJQUFJO1lBQ2Ysa0JBQWtCO1lBQ2xCLG9CQUFvQjtZQUNwQixJQUFJLEVBQUUsSUFBSTtZQUNWLFFBQVEsRUFBRSxJQUFJO1lBQ2QsVUFBVSxFQUFFLElBQUk7WUFDaEIsU0FBUyxFQUFFLElBQUk7WUFDZixlQUFlLEVBQUUsSUFBSTtTQUN0QixDQUFDLENBQUM7S0FPSjtJQU5DLFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO1lBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyx1QkFBdUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMxRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDckY7SUFDSCxDQUFDOztBQXJCYyxpQ0FBUyxHQUFHLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsQ0FBRSxDQUFBO29IQUQxSCx1QkFBdUI7d0dBQXZCLHVCQUF1QiwyRUNMcEMsNDlDQWlDQTsyRkQ1QmEsdUJBQXVCO2tCQURuQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IERlc2lnbmVyVHlwZUVsZW1lbnRDb21wb25lbnQgfSBmcm9tIFwiLi4vZGVzaWduZXIuYmFzZVwiO1xyXG5cclxuQENvbXBvbmVudCh7IHRlbXBsYXRlVXJsOiAnYWN0aW9uLmNvbXBvbmVudC5odG1sJyB9KVxyXG5leHBvcnQgY2xhc3MgQWN0aW9uRGVzaWduZXJDb21wb25lbnQgZXh0ZW5kcyBEZXNpZ25lclR5cGVFbGVtZW50Q29tcG9uZW50IHtcclxuICBwcml2YXRlIHN0YXRpYyByZXNvdXJjZXMgPSBbJ3lvdScsICd5b3VNYWxlJywgJ3lvdUZlbWFsZScsICd2ZXJiJywgJ3Bhc3QnLCAncGFzdE1hbGUnLCAncGFzdEZlbWFsZScsICdhZGplY3RpdmUnLCAnYWRqZWN0aXZlUGx1cmFsJ107XHJcbiAgZm9ybSA9IHRoaXMuX2ZiLmdyb3VwKHtcclxuICAgIG11bHRpcGxlOiBudWxsLFxyXG4gICAgY29sb3I6IG51bGwsXHJcbiAgICB2ZXJiOiBudWxsLFxyXG4gICAgeW91OiBudWxsLFxyXG4gICAgeW91TWFsZTogbnVsbCxcclxuICAgIHlvdUZlbWFsZTogbnVsbCxcclxuICAgIC8vdGl0bGVNYWxlOiBudWxsLFxyXG4gICAgLy90aXRsZUZlbWFsZTogbnVsbCxcclxuICAgIHBhc3Q6IG51bGwsXHJcbiAgICBwYXN0TWFsZTogbnVsbCxcclxuICAgIHBhc3RGZW1hbGU6IG51bGwsXHJcbiAgICBhZGplY3RpdmU6IG51bGwsXHJcbiAgICBhZGplY3RpdmVQbHVyYWw6IG51bGwsXHJcbiAgfSk7XHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAodGhpcy5tb2RlICE9PSAnd2lkZ2V0Jykge1xyXG4gICAgICB0aGlzLm1vZGVsLnJlc291cmNlICYmIHRoaXMuZGlzYWJsZSguLi5BY3Rpb25EZXNpZ25lckNvbXBvbmVudC5yZXNvdXJjZXMpO1xyXG4gICAgICB0aGlzLl9yZWYudW5sb2NrLnN1YnNjcmliZSgoKSA9PiB0aGlzLmVuYWJsZSguLi5BY3Rpb25EZXNpZ25lckNvbXBvbmVudC5yZXNvdXJjZXMpKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGJpemRvYy1kZXNpZ25lci1lbGVtZW50IFtmb3JtXT1cImZvcm1cIj5cclxuICA8bmctdGVtcGxhdGUgYml6ZG9jRWRpdENvbnRlbnQ+XHJcbiAgICA8Zm9ybSBhdXRvY29tcGxldGU9XCJvZmZcIiBbZm9ybUdyb3VwXT1cImZvcm1cIiBjbGFzcz1cImNvbHVtblwiPlxyXG4gICAgICA8ZGl2PlxyXG4gICAgICAgIDxtYXQtY2hlY2tib3ggZm9ybUNvbnRyb2xOYW1lPVwibXVsdGlwbGVcIj57eydFbmFibGVNdWx0aXBsZVNlbGVjdGlvbid8dHJhbnNsYXRlfX08L21hdC1jaGVja2JveD5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxoMiBjbGFzcz1cIm1hdC10aXRsZVwiPnt7J0xhYmVscyd8dHJhbnNsYXRlfX08L2gyPlxyXG4gICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4XCI+XHJcbiAgICAgICAgPG1hdC1sYWJlbD57eydQYXN0J3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgIDxpbnB1dCBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJwYXN0XCIgLz5cclxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxyXG4gICAgICAgIDxtYXQtbGFiZWw+e3snVmVyYid8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwidmVyYlwiIC8+XHJcbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZsZXhcIj5cclxuICAgICAgICA8bWF0LWxhYmVsPnt7J0FkamVjdGl2ZSd8dHJhbnNsYXRlfX08L21hdC1sYWJlbD5cclxuICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiYWRqZWN0aXZlXCIgLz5cclxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZmxleFwiPlxyXG4gICAgICAgIDxtYXQtbGFiZWw+e3snQWRqZWN0aXZlUGx1cmFsJ3x0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgIDxpbnB1dCBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJhZGplY3RpdmVQbHVyYWxcIiAvPlxyXG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmbGV4XCI+XHJcbiAgICAgICAgPG1hdC1sYWJlbD57eydZb3UnfHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cInlvdVwiIC8+XHJcbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDxkaXY+XHJcbiAgICAgICAgPGJpemRvYy1jb2xvci1waWNrZXIgZm9ybUNvbnRyb2xOYW1lPVwiY29sb3JcIiBbbGFiZWxdPVwiJ0NvbG9yJ3x0cmFuc2xhdGVcIiBjbGFzcz1cImZsZXhcIj48L2JpemRvYy1jb2xvci1waWNrZXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9mb3JtPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvYml6ZG9jLWRlc2lnbmVyLWVsZW1lbnQ+XHJcbiJdfQ==
|