@kando-env/kando-ui 1.2.30 → 1.2.32
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/lib/i18n/en.json +14 -1
- package/lib/i18n/he.json +6 -1
- package/lib/macros/getVersion.js +1 -1
- package/lib/pages/EventsPage/events/EventsStyle.scss +0 -281
- package/lib/pages/EventsPage/events/events_list/EventsList.js +3 -2
- package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +5 -3
- package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +52 -24
- package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +13 -1
- package/lib/pages/EventsPage/events/events_list/Filter/FilterStyle.scss +289 -0
- package/lib/pages/SamplingsPage/FilterStyle.scss +29 -0
- package/lib/pages/SamplingsPage/SamplingsMobileList.js +12 -5
- package/lib/pages/SamplingsPage/SamplingsPage.js +18 -14
- package/lib/pages/SamplingsPage/SamplingsPageContainer.js +23 -5
- package/lib/styles.scss +1 -0
- package/lib/ui-kit/KandoTable/KandoTable.js +2 -2
- package/lib/utilities/kql.js +2 -2
- package/lib/utilities/urls.js +2 -2
- package/package.json +1 -1
package/lib/i18n/en.json
CHANGED
|
@@ -2987,7 +2987,11 @@
|
|
|
2987
2987
|
"damage_type_filter_item": "Damage Type",
|
|
2988
2988
|
"sampling_filter_item": "Sampling",
|
|
2989
2989
|
"area_filter_item": "Area",
|
|
2990
|
-
"sector_filter_item": "Sector"
|
|
2990
|
+
"sector_filter_item": "Sector",
|
|
2991
|
+
"sampling_status_filter_item": "Status",
|
|
2992
|
+
"sampling_id_filter_item": "ID",
|
|
2993
|
+
"site_filter_item": "Site",
|
|
2994
|
+
"lab_filter_item": "Lab"
|
|
2991
2995
|
},
|
|
2992
2996
|
"filter": "Filter",
|
|
2993
2997
|
"apply": "Apply",
|
|
@@ -3009,6 +3013,14 @@
|
|
|
3009
3013
|
"ended": "Ended",
|
|
3010
3014
|
"discharging": "Discharging"
|
|
3011
3015
|
},
|
|
3016
|
+
"samplings_status": {
|
|
3017
|
+
"planned": "Planned",
|
|
3018
|
+
"canceled": "Canceled",
|
|
3019
|
+
"taken": "Taken",
|
|
3020
|
+
"lab_result": "Lab result",
|
|
3021
|
+
"sampler_finished": "Sampler finished",
|
|
3022
|
+
"sampler_started": "Sampler started"
|
|
3023
|
+
},
|
|
3012
3024
|
"samplings_options": {
|
|
3013
3025
|
"with": "With",
|
|
3014
3026
|
"without": "Without"
|
|
@@ -3604,6 +3616,7 @@
|
|
|
3604
3616
|
"create_button": "Create",
|
|
3605
3617
|
"add_new_sampling": "Add New Sampling",
|
|
3606
3618
|
"site_placeholder": "Select or type...",
|
|
3619
|
+
"no_data": "No data available",
|
|
3607
3620
|
"manhole_navigation": {
|
|
3608
3621
|
"waze": "Waze",
|
|
3609
3622
|
"google_maps": "Google Maps",
|
package/lib/i18n/he.json
CHANGED
|
@@ -2949,7 +2949,11 @@
|
|
|
2949
2949
|
"damage_type_filter_item": "סוג נזק",
|
|
2950
2950
|
"sampling_filter_item": "דגימות",
|
|
2951
2951
|
"area_filter_item": "איזור",
|
|
2952
|
-
"sector_filter_item": "סקטור"
|
|
2952
|
+
"sector_filter_item": "סקטור",
|
|
2953
|
+
"sampling_status_filter_item": "סטטוס",
|
|
2954
|
+
"sampling_id_filter_item": "ID",
|
|
2955
|
+
"site_filter_item": "שם אתר",
|
|
2956
|
+
"lab_filter_item": "מעבדה"
|
|
2953
2957
|
},
|
|
2954
2958
|
"filter": "סינון",
|
|
2955
2959
|
"apply": "סנן",
|
|
@@ -3511,6 +3515,7 @@
|
|
|
3511
3515
|
"sampling_not_created": "יצירת דיגום חדש נכשלה",
|
|
3512
3516
|
"date_required": "יש למלא תאריך דיגום",
|
|
3513
3517
|
"site_required": "יש למלא שם אתר",
|
|
3518
|
+
"no_data": "לא נמצאו נתונים",
|
|
3514
3519
|
"samplings_table_cols": {
|
|
3515
3520
|
"sampling_date": "תאריך דגימה",
|
|
3516
3521
|
"sampling_id": "מס׳ דגימה",
|
package/lib/macros/getVersion.js
CHANGED
|
@@ -484,287 +484,6 @@
|
|
|
484
484
|
}
|
|
485
485
|
}
|
|
486
486
|
|
|
487
|
-
.filter-container {
|
|
488
|
-
z-index: 9;
|
|
489
|
-
position: absolute;
|
|
490
|
-
top: 0;
|
|
491
|
-
left: 100%;
|
|
492
|
-
min-height: 7em;
|
|
493
|
-
width: calc(100vw - 480px);
|
|
494
|
-
background: white;
|
|
495
|
-
box-shadow: 0px 2px 27px rgba(0, 0, 0, 0.2);
|
|
496
|
-
padding: 1em;
|
|
497
|
-
|
|
498
|
-
&--hidden {
|
|
499
|
-
display: none;
|
|
500
|
-
}
|
|
501
|
-
|
|
502
|
-
[dir='rtl'] & {
|
|
503
|
-
right: 100%;
|
|
504
|
-
left: unset;
|
|
505
|
-
padding: 2em;
|
|
506
|
-
}
|
|
507
|
-
|
|
508
|
-
.preset-icon,
|
|
509
|
-
.save-icon {
|
|
510
|
-
margin: 0 5px;
|
|
511
|
-
vertical-align: baseline;
|
|
512
|
-
}
|
|
513
|
-
|
|
514
|
-
&::before {
|
|
515
|
-
content: '◀';
|
|
516
|
-
display: none;
|
|
517
|
-
position: absolute;
|
|
518
|
-
top: 18px;
|
|
519
|
-
color: white;
|
|
520
|
-
|
|
521
|
-
.rtl & {
|
|
522
|
-
right: -10px;
|
|
523
|
-
transform: rotate(180deg);
|
|
524
|
-
}
|
|
525
|
-
|
|
526
|
-
.ltr & {
|
|
527
|
-
left: -10px;
|
|
528
|
-
}
|
|
529
|
-
}
|
|
530
|
-
|
|
531
|
-
.apply-button-container {
|
|
532
|
-
cursor: pointer;
|
|
533
|
-
|
|
534
|
-
.apply-button {
|
|
535
|
-
background-color: #f6004f;
|
|
536
|
-
border: 1px solid #f6004f;
|
|
537
|
-
padding: 6px 29px;
|
|
538
|
-
font-size: 14px;
|
|
539
|
-
|
|
540
|
-
border-radius: 12px;
|
|
541
|
-
color: white;
|
|
542
|
-
text-decoration: none;
|
|
543
|
-
}
|
|
544
|
-
}
|
|
545
|
-
|
|
546
|
-
#dropdown-basic {
|
|
547
|
-
background: white;
|
|
548
|
-
color: black;
|
|
549
|
-
font-size: 1em;
|
|
550
|
-
border: none;
|
|
551
|
-
padding: 0;
|
|
552
|
-
|
|
553
|
-
&:focus {
|
|
554
|
-
box-shadow: none !important;
|
|
555
|
-
border: none !important;
|
|
556
|
-
}
|
|
557
|
-
}
|
|
558
|
-
|
|
559
|
-
.dropdown-menu.show {
|
|
560
|
-
width: max-content;
|
|
561
|
-
|
|
562
|
-
.filter-dropdown-item {
|
|
563
|
-
display: flex;
|
|
564
|
-
justify-content: space-between;
|
|
565
|
-
padding: 0 20px;
|
|
566
|
-
|
|
567
|
-
&:hover {
|
|
568
|
-
.filter-actions {
|
|
569
|
-
opacity: 1;
|
|
570
|
-
transition: ease-in 0.1s;
|
|
571
|
-
}
|
|
572
|
-
}
|
|
573
|
-
|
|
574
|
-
.filter-actions {
|
|
575
|
-
font-size: 0.7em;
|
|
576
|
-
display: flex;
|
|
577
|
-
align-items: center;
|
|
578
|
-
opacity: 0;
|
|
579
|
-
}
|
|
580
|
-
}
|
|
581
|
-
}
|
|
582
|
-
|
|
583
|
-
&__content {
|
|
584
|
-
&__header {
|
|
585
|
-
display: flex;
|
|
586
|
-
justify-content: space-between;
|
|
587
|
-
|
|
588
|
-
.title {
|
|
589
|
-
h4 {
|
|
590
|
-
margin: 0;
|
|
591
|
-
font-size: 18px;
|
|
592
|
-
font-weight: 700;
|
|
593
|
-
}
|
|
594
|
-
}
|
|
595
|
-
|
|
596
|
-
.actions {
|
|
597
|
-
display: flex;
|
|
598
|
-
|
|
599
|
-
.action {
|
|
600
|
-
padding: 0 5px;
|
|
601
|
-
cursor: pointer;
|
|
602
|
-
color: black;
|
|
603
|
-
margin: 0 3px;
|
|
604
|
-
text-decoration: none;
|
|
605
|
-
|
|
606
|
-
.dropdown-item {
|
|
607
|
-
color: black;
|
|
608
|
-
a {
|
|
609
|
-
color: black;
|
|
610
|
-
}
|
|
611
|
-
}
|
|
612
|
-
|
|
613
|
-
.dropdown-item.disabled {
|
|
614
|
-
color: #6c757d !important;
|
|
615
|
-
}
|
|
616
|
-
|
|
617
|
-
&--save {
|
|
618
|
-
margin: 0;
|
|
619
|
-
padding: 0.25rem 1.5rem;
|
|
620
|
-
|
|
621
|
-
&:hover {
|
|
622
|
-
text-decoration: none;
|
|
623
|
-
background-color: #f8f9fa;
|
|
624
|
-
}
|
|
625
|
-
}
|
|
626
|
-
|
|
627
|
-
span {
|
|
628
|
-
padding: 0 6px;
|
|
629
|
-
min-width: 6em;
|
|
630
|
-
}
|
|
631
|
-
|
|
632
|
-
.new-filter-popup {
|
|
633
|
-
text-align: center;
|
|
634
|
-
padding: 15px;
|
|
635
|
-
cursor: text;
|
|
636
|
-
|
|
637
|
-
button {
|
|
638
|
-
width: 100%;
|
|
639
|
-
}
|
|
640
|
-
}
|
|
641
|
-
}
|
|
642
|
-
}
|
|
643
|
-
}
|
|
644
|
-
|
|
645
|
-
&__body {
|
|
646
|
-
display: flex;
|
|
647
|
-
align-items: center;
|
|
648
|
-
|
|
649
|
-
.input-group {
|
|
650
|
-
width: 15em;
|
|
651
|
-
position: absolute;
|
|
652
|
-
z-index: 9;
|
|
653
|
-
top: 0.5em;
|
|
654
|
-
background: white;
|
|
655
|
-
|
|
656
|
-
.rtl & {
|
|
657
|
-
left: 5em;
|
|
658
|
-
}
|
|
659
|
-
|
|
660
|
-
.ltr & {
|
|
661
|
-
right: 6em;
|
|
662
|
-
}
|
|
663
|
-
}
|
|
664
|
-
|
|
665
|
-
.filter {
|
|
666
|
-
display: flex;
|
|
667
|
-
align-items: center;
|
|
668
|
-
|
|
669
|
-
.custom-dropdown {
|
|
670
|
-
display: flex;
|
|
671
|
-
flex-direction: column;
|
|
672
|
-
position: relative;
|
|
673
|
-
background: #ffffff;
|
|
674
|
-
border: 1px solid #dddddd;
|
|
675
|
-
color: #666666;
|
|
676
|
-
width: 13.2em;
|
|
677
|
-
&.custom-container {
|
|
678
|
-
width: 29rem;
|
|
679
|
-
padding: 23px;
|
|
680
|
-
}
|
|
681
|
-
overflow: hidden;
|
|
682
|
-
padding: 10px;
|
|
683
|
-
|
|
684
|
-
.option {
|
|
685
|
-
margin: 5px 0;
|
|
686
|
-
|
|
687
|
-
input {
|
|
688
|
-
margin: 0 3px;
|
|
689
|
-
cursor: pointer !important;
|
|
690
|
-
}
|
|
691
|
-
|
|
692
|
-
label {
|
|
693
|
-
cursor: pointer !important;
|
|
694
|
-
}
|
|
695
|
-
}
|
|
696
|
-
}
|
|
697
|
-
}
|
|
698
|
-
|
|
699
|
-
.filter_items {
|
|
700
|
-
display: flex;
|
|
701
|
-
flex-wrap: wrap;
|
|
702
|
-
margin: 12px 0;
|
|
703
|
-
|
|
704
|
-
.fixed-action {
|
|
705
|
-
padding: 12px;
|
|
706
|
-
.plus-icon {
|
|
707
|
-
margin: 0 5px;
|
|
708
|
-
vertical-align: baseline;
|
|
709
|
-
}
|
|
710
|
-
}
|
|
711
|
-
|
|
712
|
-
.filter_item {
|
|
713
|
-
padding: 6px 12px;
|
|
714
|
-
background: rgba(0, 0, 0, 0.1);
|
|
715
|
-
border-radius: 12px;
|
|
716
|
-
margin: 6px 12px;
|
|
717
|
-
display: flex;
|
|
718
|
-
justify-content: space-between;
|
|
719
|
-
align-items: center;
|
|
720
|
-
position: relative;
|
|
721
|
-
min-height: 33px;
|
|
722
|
-
cursor: pointer;
|
|
723
|
-
margin-left: 0;
|
|
724
|
-
|
|
725
|
-
&__content {
|
|
726
|
-
display: flex;
|
|
727
|
-
align-items: center;
|
|
728
|
-
|
|
729
|
-
&__selections {
|
|
730
|
-
display: flex;
|
|
731
|
-
flex-wrap: wrap;
|
|
732
|
-
|
|
733
|
-
&__selection {
|
|
734
|
-
margin: 0 5px;
|
|
735
|
-
font-weight: bold;
|
|
736
|
-
}
|
|
737
|
-
}
|
|
738
|
-
}
|
|
739
|
-
|
|
740
|
-
a {
|
|
741
|
-
cursor: pointer;
|
|
742
|
-
.rtl & {
|
|
743
|
-
margin-right: 15px;
|
|
744
|
-
}
|
|
745
|
-
|
|
746
|
-
.ltr & {
|
|
747
|
-
margin-left: 15px;
|
|
748
|
-
}
|
|
749
|
-
}
|
|
750
|
-
|
|
751
|
-
.filter-items-options-popup-container {
|
|
752
|
-
position: absolute;
|
|
753
|
-
bottom: 0;
|
|
754
|
-
transform: translateY(100%);
|
|
755
|
-
left: 0;
|
|
756
|
-
z-index: 9;
|
|
757
|
-
|
|
758
|
-
.filter-items-options-popup {
|
|
759
|
-
width: 200px;
|
|
760
|
-
}
|
|
761
|
-
}
|
|
762
|
-
}
|
|
763
|
-
}
|
|
764
|
-
}
|
|
765
|
-
}
|
|
766
|
-
}
|
|
767
|
-
|
|
768
487
|
.sort {
|
|
769
488
|
display: flex;
|
|
770
489
|
align-items: center;
|
|
@@ -325,7 +325,8 @@ var EventsList = function EventsList(_ref) {
|
|
|
325
325
|
height: "17px",
|
|
326
326
|
fill: "#f6004f"
|
|
327
327
|
})))), points_data.items.length !== 0 && /*#__PURE__*/_react.default.createElement(_FilterContainer.default, {
|
|
328
|
-
filterPopupOpen: filterPopupOpen
|
|
328
|
+
filterPopupOpen: filterPopupOpen,
|
|
329
|
+
fetchType: 'EventFilter'
|
|
329
330
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
330
331
|
className: "events-container scrollbar "
|
|
331
332
|
}, loader(), !isFetching && items.length === 0 && !points_data.isFetching && !edges_data.isFetching && /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -359,4 +360,4 @@ var connector = (0, _reactRedux.connect)(mapStateToProps);
|
|
|
359
360
|
var _default = connector(EventsList);
|
|
360
361
|
|
|
361
362
|
exports.default = _default;
|
|
362
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudHNfbGlzdC9FdmVudHNMaXN0LnRzeCJdLCJuYW1lcyI6WyJtYXBTdGF0ZVRvUHJvcHMiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJlZGdlc19kYXRhIiwicG9pbnRzX2RhdGEiLCJhcmVhc19kYXRhIiwibmF2X2NvbnRleHRfZGF0YSIsIkV2ZW50c0xpc3QiLCJzaWRlbmF2RXhwYW5kZWQiLCJkaXNwYXRjaCIsIml0ZW1zIiwiaXNGZXRjaGluZyIsImZvY3VzZWRFdmVudCIsImhvdmVyZWRFdmVudCIsImhvdmVyZWRFdmVudFBhdGhzIiwid2F0ZXJBdXRob3JpdHlJZCIsIm1hcCIsImZpbHRlclBvcHVwT3BlbiIsInNldEZpbHRlclBvcHVwT3BlbiIsImxhc3RWaXNpdGVkIiwidXNlUXVlcnkiLCJVUkxTZWFyY2hQYXJhbXMiLCJzZWFyY2giLCJoaXN0b3J5IiwicXVlcnkiLCJnZXRLUUxWYWx1ZXNGcm9tVVJMIiwiZ2V0IiwiZ2V0RXZlbnRJZEZyb21VUkwiLCJsb2FkZXIiLCJsZW5ndGgiLCJuZXdBcmVhcyIsImhhbmRsZUV4cGFuc2lvblRvZ2dsZSIsImFwcGx5RGVmYXVsdEZpbHRlciIsInB1c2giLCJuYXZDb250ZXh0IiwibmFtZSIsImxvY2FsZSIsInZhbGlkYXRlRXZlbnQiLCJldmVudCIsImludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlcyIsIm9ic2VydmF0aW9ucyIsImZvckVhY2giLCJvYnNlcnZhdGlvbiIsInBvaW50X2lzX3Jvb3QiLCJlZGdlIiwiZmluZCIsInNvdXJjZV9wb2ludF9pZCIsInBvaW50X2lkIiwidW5kZWZpbmVkIiwicG9pbnRfbmFtZSIsImFsZXJ0IiwiaW52YWxpZFBhdGhNZXNzYWdlcyIsInBhdGgiLCJpZCIsImVkZ2VfaWQiLCJjb25zb2xlIiwiZXJyb3IiLCJsYXN0X29ic2VydmF0aW9uX2lkIiwibGFzdE9ic2VydmF0aW9uUG9pbnQiLCJoYW5kbGVFdmVudEl0ZW1DbGljayIsInJlZiIsIm9uTW91c2VMZWF2ZUV2ZW50IiwiZXZlbnRGaWx0ZXJQYXJhbSIsIm9uTW91c2VFbnRlckV2ZW50IiwicmVtb3ZlTGF5ZXIiLCJsYXllcnMiLCJfbGF5ZXJzIiwicHJvcGVydHkiLCJrYW5kb19vYmplY3QiLCJpbmNsdWRlcyIsInNldEZvY3VzZWRFdmVudElmRm91bmRJblBhcmFtcyIsImUiLCJwYXJzZUludCIsInRyaWdnZXJTb3J0Iiwic29ydCIsImFjdGl2ZUZpbHRlciIsIktRTCIsIlVSTCIsIm1vcmVJbmZvIiwiYWN0aXZlIiwiZmFDYXJldExlZnQiLCJmYUNhcmV0UmlnaHQiLCJmYUFycm93TGVmdCIsImkxOG4iLCJ0IiwiTGVmdEFycm93SWNvbiIsIk5vRXZlbnRzSW1hZ2UiLCJjb25uZWN0b3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFDQTs7QUFLQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFJQTs7QUFFQTs7QUFDQTs7QUFPQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBOUJBO0FBZ0NBLFNBQVNBLGVBQVQsQ0FBeUJDLEtBQXpCLEVBQTJDO0FBQ3pDLE1BQ0VDLFdBREYsR0FPSUQsS0FQSixDQUNFQyxXQURGO0FBQUEsTUFFRUMsV0FGRixHQU9JRixLQVBKLENBRUVFLFdBRkY7QUFBQSxNQUdFQyxVQUhGLEdBT0lILEtBUEosQ0FHRUcsVUFIRjtBQUFBLE1BSUVDLFdBSkYsR0FPSUosS0FQSixDQUlFSSxXQUpGO0FBQUEsTUFLRUMsVUFMRixHQU9JTCxLQVBKLENBS0VLLFVBTEY7QUFBQSxNQU1FQyxnQkFORixHQU9JTixLQVBKLENBTUVNLGdCQU5GO0FBU0EsU0FBTztBQUNMTCxJQUFBQSxXQUFXLEVBQVhBLFdBREs7QUFFTEMsSUFBQUEsV0FBVyxFQUFYQSxXQUZLO0FBR0xDLElBQUFBLFVBQVUsRUFBVkEsVUFISztBQUlMQyxJQUFBQSxXQUFXLEVBQVhBLFdBSks7QUFLTEMsSUFBQUEsVUFBVSxFQUFWQSxVQUxLO0FBTUxDLElBQUFBLGdCQUFnQixFQUFoQkE7QUFOSyxHQUFQO0FBUUQ7O0FBTUQsSUFBTUMsVUFBNEIsR0FBRyxTQUEvQkEsVUFBK0IsT0FRL0I7QUFBQSxNQVBKRixVQU9JLFFBUEpBLFVBT0k7QUFBQSxNQU5KRCxXQU1JLFFBTkpBLFdBTUk7QUFBQSxNQUxKRCxVQUtJLFFBTEpBLFVBS0k7QUFBQSxNQUpKRCxXQUlJLFFBSkpBLFdBSUk7QUFBQSxNQUhKTSxlQUdJLFFBSEpBLGVBR0k7QUFBQSxNQUZKUCxXQUVJLFFBRkpBLFdBRUk7QUFBQSxNQURKSyxnQkFDSSxRQURKQSxnQkFDSTtBQUNKLE1BQU1HLFFBQVEsR0FBRyw4QkFBakI7QUFDQSxNQUFRQyxLQUFSLEdBQ0VULFdBREYsQ0FBUVMsS0FBUjtBQUFBLE1BQWVDLFVBQWYsR0FDRVYsV0FERixDQUFlVSxVQUFmO0FBQUEsTUFBMkJDLFlBQTNCLEdBQ0VYLFdBREYsQ0FBMkJXLFlBQTNCO0FBQUEsTUFBeUNDLFlBQXpDLEdBQ0VaLFdBREYsQ0FBeUNZLFlBQXpDO0FBQUEsTUFBdURDLGlCQUF2RCxHQUNFYixXQURGLENBQXVEYSxpQkFBdkQ7QUFFQSxNQUFRQyxnQkFBUixHQUFrQ2IsV0FBbEMsQ0FBUWEsZ0JBQVI7QUFBQSxNQUEwQkMsR0FBMUIsR0FBa0NkLFdBQWxDLENBQTBCYyxHQUExQjs7QUFDQSxrQkFBOEMscUJBQVMsSUFBVCxDQUE5QztBQUFBO0FBQUEsTUFBT0MsZUFBUDtBQUFBLE1BQXdCQyxrQkFBeEI7O0FBQ0EsTUFBTUMsV0FBVyxHQUFHLGlDQUFwQjs7QUFFQSxNQUFNQyxRQUFRLEdBQUcsU0FBWEEsUUFBVyxHQUFNO0FBQ3JCLFdBQU8sSUFBSUMsZUFBSixDQUFvQixtQ0FBY0MsTUFBbEMsQ0FBUDtBQUNELEdBRkQ7O0FBR0EsTUFBTUMsT0FBTyxHQUFHLGlDQUFoQjtBQUNBLE1BQU1DLEtBQUssR0FBR0osUUFBUSxFQUF0Qjs7QUFDQSxNQUFNSyxtQkFBbUIsR0FBRyxTQUF0QkEsbUJBQXNCLEdBQU07QUFDaEMsV0FBT0QsS0FBSyxDQUFDRSxHQUFOLENBQVUsZUFBVixDQUFQO0FBQ0QsR0FGRDs7QUFHQSxNQUFNQyxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQW9CLEdBQU07QUFDOUIsV0FBT0gsS0FBSyxDQUFDRSxHQUFOLENBQVUsU0FBVixDQUFQO0FBQ0QsR0FGRDs7QUFJQSxNQUFNRSxNQUFNLEdBQUcsU0FBVEEsTUFBUyxHQUFNO0FBQ25CLFFBQ0dqQixVQUFVLElBQUlELEtBQUssQ0FBQ21CLE1BQU4sS0FBaUIsQ0FBaEMsSUFDQXhCLFVBQVUsQ0FBQ3lCLFFBQVgsQ0FBb0JELE1BQXBCLEtBQStCLENBRC9CLElBRUF6QixXQUFXLENBQUNPLFVBRlosSUFHQVIsVUFBVSxDQUFDUSxVQUpiLEVBS0U7QUFDQSwwQkFBTztBQUFLLFFBQUEsU0FBUyxFQUFFO0FBQWhCLFFBQVA7QUFDRCxLQVBELE1BT087QUFDTCxhQUFPLElBQVA7QUFDRDtBQUNGLEdBWEQ7O0FBYUEsTUFBTW9CLHFCQUFxQixHQUFHLFNBQXhCQSxxQkFBd0IsR0FBTTtBQUNsQ3RCLElBQUFBLFFBQVEsQ0FBQywrQkFBZ0IsQ0FBQ0QsZUFBakIsQ0FBRCxDQUFSO0FBQ0QsR0FGRDs7QUFJQSxNQUFNd0Isa0JBQWtCLEdBQUcsU0FBckJBLGtCQUFxQixHQUFNO0FBQy9CVCxJQUFBQSxPQUFPLENBQUNVLElBQVIsWUFDTTNCLGdCQUFnQixDQUFDNEIsVUFBakIsQ0FBNEJDLElBRGxDLHVDQUNtRWpDLFdBQVcsQ0FBQ2EsZ0JBRC9FLHFCQUMwR1QsZ0JBQWdCLENBQUM0QixVQUFqQixDQUE0QkUsTUFEdEk7QUFHQTNCLElBQUFBLFFBQVEsQ0FBQyxtQ0FBb0IsRUFBcEIsQ0FBRCxDQUFSO0FBQ0QsR0FMRDs7QUFPQSxNQUFNNEIsYUFBYSxHQUFHLFNBQWhCQSxhQUFnQixDQUFDQyxLQUFELEVBQW1CO0FBQ3ZDO0FBQ0E7QUFDQSxRQUFJQywyQkFBZ0MsR0FBRyxFQUF2QztBQUNBRCxJQUFBQSxLQUFLLENBQUNFLFlBQU4sQ0FBbUJDLE9BQW5CLENBQTJCLFVBQUNDLFdBQUQsRUFBc0I7QUFDL0M7QUFDQSxVQUFJLENBQUNBLFdBQVcsQ0FBQ0MsYUFBakIsRUFBZ0M7QUFDOUIsWUFBSUMsSUFBSSxHQUFHekMsVUFBVSxDQUFDTyxLQUFYLENBQWlCbUMsSUFBakIsQ0FDVCxVQUFDRCxJQUFEO0FBQUEsaUJBQVVBLElBQUksQ0FBQ0UsZUFBTCxLQUF5QkosV0FBVyxDQUFDSyxRQUEvQztBQUFBLFNBRFMsQ0FBWDs7QUFHQSxZQUFJSCxJQUFJLEtBQUtJLFNBQWIsRUFBd0I7QUFDdEJULFVBQUFBLDJCQUEyQixDQUFDTixJQUE1QixXQUNLUyxXQUFXLENBQUNPLFVBRGpCLGVBQ2dDUCxXQUFXLENBQUNLLFFBRDVDO0FBR0Q7QUFDRjtBQUNGLEtBWkQ7O0FBY0EsUUFBSVIsMkJBQTJCLENBQUNWLE1BQTVCLEtBQXVDLENBQTNDLEVBQThDO0FBQzVDcUIsTUFBQUEsS0FBSyxtSEFDd0dYLDJCQUR4RyxFQUFMO0FBR0EsYUFBTyxLQUFQO0FBQ0QsS0F2QnNDLENBeUJ2QztBQUNBOzs7QUFDQSxRQUFJWSxtQkFBd0IsR0FBRyxFQUEvQjtBQUNBYixJQUFBQSxLQUFLLENBQUNjLElBQU4sQ0FBV1gsT0FBWCxDQUFtQixVQUFDVyxJQUFELEVBQWU7QUFDaEMsVUFBSVIsSUFBSSxHQUFHekMsVUFBVSxDQUFDTyxLQUFYLENBQWlCbUMsSUFBakIsQ0FBc0IsVUFBQ0QsSUFBRDtBQUFBLGVBQVVBLElBQUksQ0FBQ1MsRUFBTCxLQUFZRCxJQUFJLENBQUNFLE9BQTNCO0FBQUEsT0FBdEIsQ0FBWDs7QUFDQSxVQUFJVixJQUFJLEtBQUtJLFNBQWIsRUFBd0I7QUFDdEJPLFFBQUFBLE9BQU8sQ0FBQ0MsS0FBUixnQkFBc0JKLElBQUksQ0FBQ0UsT0FBM0I7QUFDQSxZQUFJWixXQUFXLEdBQUdKLEtBQUssQ0FBQ0UsWUFBTixDQUFtQkssSUFBbkIsQ0FDaEIsVUFBQ0gsV0FBRDtBQUFBLGlCQUFpQkEsV0FBVyxDQUFDVyxFQUFaLEtBQW1CRCxJQUFJLENBQUNLLG1CQUF6QztBQUFBLFNBRGdCLENBQWxCO0FBR0EsWUFBSUMsb0JBQW9CLEdBQUcsV0FBM0I7O0FBQ0EsWUFBSWhCLFdBQUosRUFBaUI7QUFDZmdCLFVBQUFBLG9CQUFvQixHQUFHaEIsV0FBVyxDQUFDTyxVQUFuQztBQUNEOztBQUVERSxRQUFBQSxtQkFBbUIsQ0FBQ2xCLElBQXBCLFdBQTRCeUIsb0JBQTVCO0FBQ0Q7QUFDRixLQWREOztBQWdCQSxRQUFJUCxtQkFBbUIsQ0FBQ3RCLE1BQXBCLEtBQStCLENBQW5DLEVBQXNDO0FBQ3BDcUIsTUFBQUEsS0FBSyxrSEFDdUdDLG1CQUR2RyxFQUFMO0FBR0EsYUFBTyxLQUFQO0FBQ0Q7O0FBRUQsV0FBTyxJQUFQO0FBQ0QsR0FwREQ7O0FBc0RBLE1BQU1RLG9CQUFvQixHQUFHLFNBQXZCQSxvQkFBdUIsQ0FBQ3JCLEtBQUQsRUFBZ0JzQixHQUFoQixFQUFnRDtBQUMzRUMsSUFBQUEsaUJBQWlCLEdBRDBELENBRTNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUNBLFFBQUl4QixhQUFhLENBQUNDLEtBQUQsQ0FBakIsRUFBMEI7QUFDeEI3QixNQUFBQSxRQUFRLENBQUMsOEJBQWdCNkIsS0FBaEIsQ0FBRCxDQUFSO0FBQ0FwQixNQUFBQSxrQkFBa0IsQ0FBQyxLQUFELENBQWxCO0FBQ0FLLE1BQUFBLE9BQU8sQ0FBQ1UsSUFBUixZQUNNM0IsZ0JBQWdCLENBQUM0QixVQUFqQixDQUE0QkMsSUFEbEMsdUNBQ21FakMsV0FBVyxDQUFDYSxnQkFEL0UscUJBQzBHVCxnQkFBZ0IsQ0FBQzRCLFVBQWpCLENBQTRCRSxNQUR0SSxzQkFDd0pFLEtBQUssQ0FBQ2UsRUFEOUosNEJBQ2tMbkQsV0FBVyxDQUFDNEQsZ0JBRDlMO0FBR0Q7QUFDRixHQWhCRDs7QUFrQkEsTUFBTUMsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFvQixDQUFDekIsS0FBRCxFQUFXO0FBQ25DLFFBQUksQ0FBQzFCLFlBQUQsSUFBaUIsQ0FBQ0MsWUFBbEIsSUFBa0N3QixhQUFhLENBQUNDLEtBQUQsQ0FBbkQsRUFBNEQ7QUFDMUQ3QixNQUFBQSxRQUFRLENBQUMsOEJBQWdCNkIsS0FBaEIsQ0FBRCxDQUFSO0FBQ0Q7QUFDRixHQUpEOztBQU1BLE1BQU11QixpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQW9CLEdBQU07QUFDOUIsUUFBSWhELFlBQVksSUFBSUMsaUJBQWhCLElBQXFDRSxHQUF6QyxFQUE4QztBQUM1Q0YsTUFBQUEsaUJBQWlCLENBQUMyQixPQUFsQixDQUEwQixVQUFDVyxJQUFELEVBQVU7QUFDbENwQyxRQUFBQSxHQUFHLENBQUNnRCxXQUFKLENBQWdCWixJQUFoQjtBQUNELE9BRkQ7QUFJQSxVQUFJYSxNQUFNLEdBQUdqRCxHQUFHLENBQUNrRCxPQUFqQjs7QUFDQSxXQUFLLElBQU1DLFFBQVgsSUFBdUJGLE1BQXZCLEVBQStCO0FBQzdCLFlBQU1HLFlBQVksR0FBR0gsTUFBTSxDQUFDRSxRQUFELENBQU4sQ0FBaUJDLFlBQXRDOztBQUNBLFlBQ0UsQ0FBQUEsWUFBWSxTQUFaLElBQUFBLFlBQVksV0FBWixZQUFBQSxZQUFZLENBQUVDLFFBQWQsQ0FBdUIsV0FBdkIsTUFDQSxDQUFDLFdBQUQsRUFBYyxlQUFkLEVBQStCLFdBQS9CLEVBQTRDQSxRQUE1QyxDQUFxREQsWUFBckQsQ0FGRixFQUdFO0FBQ0FwRCxVQUFBQSxHQUFHLENBQUNnRCxXQUFKLENBQWdCQyxNQUFNLENBQUNFLFFBQUQsQ0FBdEI7QUFDRDtBQUNGO0FBQ0Y7O0FBQ0QxRCxJQUFBQSxRQUFRLENBQUMsOEJBQWdCLElBQWhCLENBQUQsQ0FBUjtBQUNBQSxJQUFBQSxRQUFRLENBQUMsbUNBQXFCLEVBQXJCLENBQUQsQ0FBUixDQWxCOEIsQ0FtQjlCO0FBQ0QsR0FwQkQ7O0FBc0JBLE1BQU02RCw4QkFBOEIsR0FBRyxTQUFqQ0EsOEJBQWlDLEdBQU07QUFDM0MsUUFDRTNDLGlCQUFpQixPQUFPLElBQXhCLElBQ0FBLGlCQUFpQixPQUFPLE1BRHhCLElBRUFmLFlBQVksS0FBSyxJQUZqQixJQUdBRixLQUFLLENBQUNtQixNQUFOLEtBQWlCLENBSGpCLElBSUEsQ0FBQ2xCLFVBSkQsSUFLQSxDQUFDTixVQUFVLENBQUNNLFVBTFosSUFNQSxDQUFDUCxXQUFXLENBQUNPLFVBTmIsSUFPQSxDQUFDUixVQUFVLENBQUNRLFVBUmQsRUFTRTtBQUNBLFVBQUkyQixLQUFLLEdBQUdyQyxXQUFXLENBQUNTLEtBQVosQ0FBa0JtQyxJQUFsQixDQUNWLFVBQUMwQixDQUFEO0FBQUEsZUFBZUEsQ0FBQyxDQUFDbEIsRUFBRixLQUFTbUIsUUFBUSxDQUFDN0MsaUJBQWlCLEVBQWxCLENBQWhDO0FBQUEsT0FEVSxDQUFaOztBQUdBLFVBQUlXLEtBQUssS0FBS1UsU0FBZCxFQUF5QjtBQUN2QnZDLFFBQUFBLFFBQVEsQ0FBQyw4QkFBZ0I2QixLQUFoQixDQUFELENBQVI7QUFDRDtBQUNGO0FBQ0YsR0FsQkQ7O0FBb0JBLE1BQU1tQyxXQUFXLEdBQUcsU0FBZEEsV0FBYyxDQUFDQyxJQUFELEVBQWtCO0FBQ3BDLFFBQUl4RSxXQUFXLENBQUN5RSxZQUFaLEtBQTZCLElBQWpDLEVBQXVDO0FBQ3JDLFVBQUlDLEdBQUo7QUFDQSxVQUFJQyxHQUFKOztBQUNBLGNBQVFILElBQVI7QUFDRSxhQUFLLENBQUw7QUFDRUUsVUFBQUEsR0FBRyxhQUFNLHdCQUFjMUUsV0FBVyxDQUFDeUUsWUFBMUIsRUFBd0MsUUFBeEMsQ0FBTixDQUFIO0FBQ0FFLFVBQUFBLEdBQUcsY0FBT3ZFLGdCQUFnQixDQUFDNEIsVUFBakIsQ0FBNEJDLElBQW5DLHVDQUFvRWpDLFdBQVcsQ0FBQ2EsZ0JBQWhGLHFCQUEyR1QsZ0JBQWdCLENBQUM0QixVQUFqQixDQUE0QkUsTUFBdkksNEJBQStKd0MsR0FBL0osQ0FBSDtBQUNBckQsVUFBQUEsT0FBTyxDQUFDVSxJQUFSLENBQWE0QyxHQUFiO0FBQ0FwRSxVQUFBQSxRQUFRLENBQUMsbUNBQW9CbUUsR0FBcEIsQ0FBRCxDQUFSO0FBQ0E7O0FBQ0YsYUFBSyxDQUFMO0FBQ0VBLFVBQUFBLEdBQUcsYUFBTSx3QkFBYzFFLFdBQVcsQ0FBQ3lFLFlBQTFCLEVBQXdDLFFBQXhDLENBQU4sQ0FBSDtBQUNBRSxVQUFBQSxHQUFHLGNBQU92RSxnQkFBZ0IsQ0FBQzRCLFVBQWpCLENBQTRCQyxJQUFuQyx1Q0FBb0VqQyxXQUFXLENBQUNhLGdCQUFoRixxQkFBMkdULGdCQUFnQixDQUFDNEIsVUFBakIsQ0FBNEJFLE1BQXZJLDRCQUErSndDLEdBQS9KLENBQUg7QUFDQXJELFVBQUFBLE9BQU8sQ0FBQ1UsSUFBUixDQUFhNEMsR0FBYjtBQUNBcEUsVUFBQUEsUUFBUSxDQUFDLG1DQUFvQm1FLEdBQXBCLENBQUQsQ0FBUjtBQUNBOztBQUNGLGFBQUssQ0FBTDtBQUNFQSxVQUFBQSxHQUFHLGFBQU0sd0JBQWMxRSxXQUFXLENBQUN5RSxZQUExQixFQUF3QyxVQUF4QyxDQUFOLENBQUg7QUFDQUUsVUFBQUEsR0FBRyxjQUFPdkUsZ0JBQWdCLENBQUM0QixVQUFqQixDQUE0QkMsSUFBbkMsdUNBQW9FakMsV0FBVyxDQUFDYSxnQkFBaEYscUJBQTJHVCxnQkFBZ0IsQ0FBQzRCLFVBQWpCLENBQTRCRSxNQUF2SSw0QkFBK0p3QyxHQUEvSixDQUFIO0FBQ0FyRCxVQUFBQSxPQUFPLENBQUNVLElBQVIsQ0FBYTRDLEdBQWI7QUFDQXBFLFVBQUFBLFFBQVEsQ0FBQyxtQ0FBb0JtRSxHQUFwQixDQUFELENBQVI7QUFDQTtBQWxCSjtBQW9CRDtBQUNGLEdBekJEOztBQTJCQSx3QkFBVSxZQUFNO0FBQ2RuRSxJQUFBQSxRQUFRLENBQUMsMEJBQVlNLGdCQUFaLEVBQThCVSxtQkFBbUIsTUFBTSxTQUF2RCxDQUFELENBQVI7QUFDRCxHQUZELEVBRUcsQ0FBQ3ZCLFdBQVcsQ0FBQ2EsZ0JBQWIsRUFBK0JiLFdBQVcsQ0FBQzRELGdCQUEzQyxDQUZIO0FBSUEsc0JBQ0U7QUFBSyxJQUFBLFNBQVMsRUFBRSxjQUFjdEQsZUFBZSxHQUFHLEVBQUgsR0FBUSxvQkFBckM7QUFBaEIsS0FDRzhELDhCQUE4QixFQURqQyxFQUVHcEUsV0FBVyxDQUFDNEUsUUFBWixLQUF5QjlCLFNBQXpCLElBQXNDOUMsV0FBVyxDQUFDNEUsUUFBWixDQUFxQkMsTUFBM0QsaUJBQ0MsNkJBQUMsaUJBQUQsT0FISixlQU1FO0FBQ0UsSUFBQSxTQUFTLEVBQ1AsaUJBQ0MsQ0FBQ2xFLFlBQUQsSUFBaUJELFlBQVksS0FBSyxJQUFsQyxHQUNHLEVBREgsR0FFRyx1QkFISjtBQUZKLEtBUUcsQ0FBQ0MsWUFBRCxJQUFpQkQsWUFBWSxLQUFLLElBQWxDLGlCQUNDLDZCQUFDLGtCQUFEO0FBQ0UsSUFBQSxLQUFLLEVBQUVBLFlBRFQ7QUFFRSxJQUFBLFlBQVksRUFBRTtBQUFBLGFBQU1NLGtCQUFrQixDQUFDLElBQUQsQ0FBeEI7QUFBQTtBQUZoQixJQVRKLENBTkYsZUFxQkU7QUFDRSxJQUFBLFNBQVMsRUFBQyx5QkFEWjtBQUVFLElBQUEsT0FBTyxFQUFFLG1CQUFNO0FBQ2JhLE1BQUFBLHFCQUFxQjtBQUN0QjtBQUpILGtCQU1FO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixrQkFDRSw2QkFBQyxpQ0FBRDtBQUNFLElBQUEsSUFBSSxFQUFFdkIsZUFBZSxHQUFHd0UsOEJBQUgsR0FBaUJDO0FBRHhDLElBREYsQ0FORixDQXJCRixlQWlDRTtBQUNFLElBQUEsU0FBUyxFQUFFLGdDQURiO0FBRUUsSUFBQSxPQUFPLEVBQUUsbUJBQU07QUFDYmxELE1BQUFBLHFCQUFxQjtBQUN0QjtBQUpILGtCQU1FO0FBQUcsSUFBQSxJQUFJLEVBQUM7QUFBUixrQkFDRSw2QkFBQyxpQ0FBRDtBQUFpQixJQUFBLElBQUksRUFBRW1EO0FBQXZCLElBREYsZUFFRSxnREFBUUMsY0FBS0MsQ0FBTCxDQUFPLGlDQUFQLENBQVIsQ0FGRixDQU5GLENBakNGLGVBNENFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixLQUNHakUsV0FBVyxJQUFJLENBQUNSLFVBQWhCLGlCQUNDLDZCQUFDLG9CQUFEO0FBQU0sSUFBQSxTQUFTLEVBQUMsTUFBaEI7QUFBdUIsSUFBQSxFQUFFLEVBQUVRO0FBQTNCLEtBQ0csR0FESCxlQUVFO0FBQ0UsSUFBQSxHQUFHLEVBQUVrRSxrQkFEUDtBQUVFLElBQUEsTUFBTSxFQUFDLE1BRlQ7QUFHRSxJQUFBLEtBQUssRUFBQyxNQUhSO0FBSUUsSUFBQSxHQUFHLEVBQUM7QUFKTixJQUZGLEVBT0ssR0FQTCxFQVFHRixjQUFLQyxDQUFMLENBQU8sa0JBQVAsQ0FSSCxDQUZKLGVBYUUseUNBQ0dELGNBQUtDLENBQUwsQ0FBTyw2QkFBUCxDQURILFFBQzRDbkYsV0FBVyxDQUFDUyxLQUFaLENBQWtCbUIsTUFEOUQsTUFiRixlQWdCRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsS0FDRzVCLFdBQVcsQ0FBQ1MsS0FBWixDQUFrQm1CLE1BQWxCLEtBQTZCLENBQTdCLGlCQUNDLDZCQUFDLGFBQUQ7QUFDRSxJQUFBLFdBQVcsRUFBRTRDLFdBRGY7QUFFRSxJQUFBLE1BQU0sRUFBRXhFLFdBQVcsQ0FBQ1MsS0FGdEI7QUFHRSxJQUFBLGNBQWMsRUFBRVQsV0FBVyxDQUFDVSxVQUg5QjtBQUlFLElBQUEsWUFBWSxFQUFFVCxXQUFXLENBQUN5RTtBQUo1QixJQUZKLGVBU0U7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLGtCQUNFO0FBQ0UsSUFBQSxTQUFTLEVBQUMsUUFEWjtBQUVFLElBQUEsT0FBTyxFQUFFO0FBQUEsYUFBTXpELGtCQUFrQixDQUFDLENBQUNELGVBQUYsQ0FBeEI7QUFBQTtBQUZYLGtCQUlFLDZCQUFDLHNCQUFEO0FBQVksSUFBQSxLQUFLLEVBQUMsTUFBbEI7QUFBeUIsSUFBQSxNQUFNLEVBQUMsTUFBaEM7QUFBdUMsSUFBQSxJQUFJLEVBQUM7QUFBNUMsSUFKRixDQURGLENBVEYsQ0FoQkYsRUFtQ0diLFdBQVcsQ0FBQ00sS0FBWixDQUFrQm1CLE1BQWxCLEtBQTZCLENBQTdCLGlCQUNDLDZCQUFDLHdCQUFEO0FBQWlCLElBQUEsZUFBZSxFQUFFWjtBQUFsQyxJQXBDSixDQTVDRixlQW1GRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsS0FDR1csTUFBTSxFQURULEVBRUcsQ0FBQ2pCLFVBQUQsSUFDQ0QsS0FBSyxDQUFDbUIsTUFBTixLQUFpQixDQURsQixJQUVDLENBQUN6QixXQUFXLENBQUNPLFVBRmQsSUFHQyxDQUFDUixVQUFVLENBQUNRLFVBSGIsaUJBSUc7QUFBSyxJQUFBLFNBQVMsRUFBRTtBQUFoQixrQkFDRTtBQUFLLElBQUEsR0FBRyxFQUFFMkUsa0JBQVY7QUFBeUIsSUFBQSxHQUFHLEVBQUM7QUFBN0IsSUFERixlQUVFLHlDQUFLSCxjQUFLQyxDQUFMLENBQU8sMENBQVAsQ0FBTCxDQUZGLGVBR0Usd0NBQUlELGNBQUtDLENBQUwsQ0FBTyx3Q0FBUCxDQUFKLENBSEYsZUFJRTtBQUNFLElBQUEsU0FBUyxFQUFFLDZCQURiO0FBRUUsSUFBQSxPQUFPLEVBQUU7QUFBQSxhQUFNcEQsa0JBQWtCLEVBQXhCO0FBQUE7QUFGWCxLQUlHbUQsY0FBS0MsQ0FBTCxDQUFPLDBDQUFQLENBSkgsQ0FKRixDQU5OLEVBa0JHMUUsS0FBSyxDQUFDbUIsTUFBTixLQUFpQixDQUFqQixJQUNDLENBQUN4QixVQUFVLENBQUNNLFVBRGIsSUFFQyxDQUFDUCxXQUFXLENBQUNPLFVBRmQsSUFHQyxDQUFDUixVQUFVLENBQUNRLFVBSGIsaUJBSUc7QUFBSSxJQUFBLFNBQVMsRUFBQztBQUFkLEtBQ0dELEtBQUssQ0FBQ00sR0FBTixDQUFVLFVBQUNzQixLQUFEO0FBQUEsd0JBQ1Q7QUFBSSxNQUFBLEdBQUcsRUFBRUEsS0FBSyxDQUFDZSxFQUFmO0FBQW1CLE1BQUEsU0FBUyxFQUFDLE9BQTdCO0FBQXFDLHVCQUFlZixLQUFLLENBQUNlO0FBQTFELG9CQUNFLDZCQUFDLHdCQUFEO0FBQ0UsTUFBQSxLQUFLLEVBQUVmLEtBRFQ7QUFFRSxNQUFBLFdBQVcsRUFBRXFCLG9CQUZmO0FBR0UsTUFBQSxpQkFBaUIsRUFBRUksaUJBSHJCO0FBSUUsTUFBQSxpQkFBaUIsRUFBRUY7QUFKckIsTUFERixDQURTO0FBQUEsR0FBVixDQURILENBdEJOLENBbkZGLENBREY7QUEwSEQsQ0FyVUQ7O0FBdVVBLElBQU0wQixTQUFTLEdBQUcseUJBQVF4RixlQUFSLENBQWxCOztlQUNld0YsU0FBUyxDQUFDaEYsVUFBRCxDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgZXRjL25vLWNvbW1lbnRlZC1vdXQtY29kZSAqL1xuaW1wb3J0IHtcbiAgZmFBcnJvd0xlZnQsXG4gIGZhQ2FyZXRMZWZ0LFxuICBmYUNhcmV0UmlnaHQsXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IFJlYWN0LCB7IFJlZk9iamVjdCwgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNvbm5lY3QsIENvbm5lY3RlZFByb3BzLCB1c2VEaXNwYXRjaCB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IExpbmssIHVzZUhpc3RvcnksIHVzZUxvY2F0aW9uIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgTGVmdEFycm93SWNvbiBmcm9tICdzcmMvYXNzZXRzL2ljb25zL2Fycm93LWxlZnQuc3ZnJztcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIEZpbHRlckljb24gfSBmcm9tICdzcmMvYXNzZXRzL2ljb25zL2Z1bm5lbC5zdmcnO1xuaW1wb3J0IE5vRXZlbnRzSW1hZ2UgZnJvbSAnc3JjL2Fzc2V0cy9ub19ldmVudHMuc3ZnJztcbmltcG9ydCB7IFNldmVyZUV2ZW50IH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvU2V2ZXJlRXZlbnQvU2V2ZXJlRXZlbnQnO1xuaW1wb3J0IHsgSUFwcFN0YXRlIH0gZnJvbSAnc3JjL21vZGVscy9JQXBwU3RhdGUnO1xuaW1wb3J0IHsgdXNlTGFzdFZpc2l0ZWQgfSBmcm9tICdzcmMvcHJvdmlkZXJzL1VybEhpc3RvcnknO1xuaW1wb3J0IHtcbiAgZmV0Y2hFdmVudHMsXG4gIHNldEZvY3VzZWRFdmVudCxcbiAgc2V0SG92ZXJlZEV2ZW50LFxuICBzZXRIb3ZlcmVkRXZlbnRQYXRocyxcbn0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9hY3Rpb25zJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBzZXRFdmVudEZpbHRlclBhcmFtLCBzaWRlTmF2RXhwYW5kZWQgfSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IGJ1aWxkS1FMUXVlcnkgfSBmcm9tICdzcmMvdXRpbGl0aWVzL2txbCc7XG5pbXBvcnQgJy4uL0V2ZW50c1N0eWxlLnNjc3MnO1xuaW1wb3J0IEV2ZW50SW5mbyBmcm9tICcuLi9ldmVudF9pbmZvL0V2ZW50SW5mbyc7XG5pbXBvcnQgTW9yZUluZm8gZnJvbSAnLi4vTW9yZUluZm8nO1xuaW1wb3J0IEZpbHRlckNvbnRhaW5lciBmcm9tICcuL0ZpbHRlci9GaWx0ZXJDb250YWluZXInO1xuaW1wb3J0IFNvcnQgZnJvbSAnLi9Tb3J0JztcblxuZnVuY3Rpb24gbWFwU3RhdGVUb1Byb3BzKHN0YXRlOiBJQXBwU3RhdGUpIHtcbiAgY29uc3Qge1xuICAgIGV2ZW50c19kYXRhLFxuICAgIGdsb2JhbF9kYXRhLFxuICAgIGVkZ2VzX2RhdGEsXG4gICAgcG9pbnRzX2RhdGEsXG4gICAgYXJlYXNfZGF0YSxcbiAgICBuYXZfY29udGV4dF9kYXRhLFxuICB9ID0gc3RhdGU7XG5cbiAgcmV0dXJuIHtcbiAgICBldmVudHNfZGF0YSxcbiAgICBnbG9iYWxfZGF0YSxcbiAgICBlZGdlc19kYXRhLFxuICAgIHBvaW50c19kYXRhLFxuICAgIGFyZWFzX2RhdGEsXG4gICAgbmF2X2NvbnRleHRfZGF0YSxcbiAgfTtcbn1cblxudHlwZSBJUHJvcHMgPSBDb25uZWN0ZWRQcm9wczx0eXBlb2YgY29ubmVjdG9yPiAmIHtcbiAgc2lkZW5hdkV4cGFuZGVkOiBib29sZWFuO1xufTtcblxuY29uc3QgRXZlbnRzTGlzdDogUmVhY3QuRkM8SVByb3BzPiA9ICh7XG4gIGFyZWFzX2RhdGEsXG4gIHBvaW50c19kYXRhLFxuICBlZGdlc19kYXRhLFxuICBnbG9iYWxfZGF0YSxcbiAgc2lkZW5hdkV4cGFuZGVkLFxuICBldmVudHNfZGF0YSxcbiAgbmF2X2NvbnRleHRfZGF0YSxcbn0pID0+IHtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCB7IGl0ZW1zLCBpc0ZldGNoaW5nLCBmb2N1c2VkRXZlbnQsIGhvdmVyZWRFdmVudCwgaG92ZXJlZEV2ZW50UGF0aHMgfSA9XG4gICAgZXZlbnRzX2RhdGE7XG4gIGNvbnN0IHsgd2F0ZXJBdXRob3JpdHlJZCwgbWFwIH0gPSBnbG9iYWxfZGF0YTtcbiAgY29uc3QgW2ZpbHRlclBvcHVwT3Blbiwgc2V0RmlsdGVyUG9wdXBPcGVuXSA9IHVzZVN0YXRlKHRydWUpO1xuICBjb25zdCBsYXN0VmlzaXRlZCA9IHVzZUxhc3RWaXNpdGVkKCk7XG5cbiAgY29uc3QgdXNlUXVlcnkgPSAoKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBVUkxTZWFyY2hQYXJhbXModXNlTG9jYXRpb24oKS5zZWFyY2gpO1xuICB9O1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5KCk7XG4gIGNvbnN0IGdldEtRTFZhbHVlc0Zyb21VUkwgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHF1ZXJ5LmdldCgndmFsdWVzRnJvbUtRTCcpO1xuICB9O1xuICBjb25zdCBnZXRFdmVudElkRnJvbVVSTCA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCdldmVudElkJyk7XG4gIH07XG5cbiAgY29uc3QgbG9hZGVyID0gKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIChpc0ZldGNoaW5nICYmIGl0ZW1zLmxlbmd0aCA9PT0gMCkgfHxcbiAgICAgIGFyZWFzX2RhdGEubmV3QXJlYXMubGVuZ3RoID09PSAwIHx8XG4gICAgICBwb2ludHNfZGF0YS5pc0ZldGNoaW5nIHx8XG4gICAgICBlZGdlc19kYXRhLmlzRmV0Y2hpbmdcbiAgICApIHtcbiAgICAgIHJldHVybiA8ZGl2IGNsYXNzTmFtZT17J2xvYWRlcid9PjwvZGl2PjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUV4cGFuc2lvblRvZ2dsZSA9ICgpID0+IHtcbiAgICBkaXNwYXRjaChzaWRlTmF2RXhwYW5kZWQoIXNpZGVuYXZFeHBhbmRlZCkpO1xuICB9O1xuXG4gIGNvbnN0IGFwcGx5RGVmYXVsdEZpbHRlciA9ICgpID0+IHtcbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9YCxcbiAgICApO1xuICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oJycpKTtcbiAgfTtcblxuICBjb25zdCB2YWxpZGF0ZUV2ZW50ID0gKGV2ZW50OiBJRXZlbnQpID0+IHtcbiAgICAvLyBjaGVjayB0aGF0IGFsbCBvYnNlcnZhdGlvbnMnIGVkZ2VzIGV4aXN0cy4gSWYgdGhleSBhcmUgbm90IGV4aXN0cyBpdCdzIGluZGljYXRlcyB0aGF0IHRoZWlyIHBvaW50cyBhcmVcbiAgICAvLyBub3QgaW4gdGhlIGhpZXJhcmNoeSBvciBkb2Vzbid0IGhhdmUgbGF0L2xuZy5cbiAgICBsZXQgaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzOiBhbnkgPSBbXTtcbiAgICBldmVudC5vYnNlcnZhdGlvbnMuZm9yRWFjaCgob2JzZXJ2YXRpb246IGFueSkgPT4ge1xuICAgICAgLy8gaWYgb2JzZXJ2YXRpb24gaXMgcm9vdCAoZXguIFdXVFApIHRoZXJlIGlzIG5vIGVkZ2UgdGhhdCBpdHMgYSBzb3VyY2UuIHNvIHdlIGNhbiBza2lwIHRoaXMgY2hlY2tcbiAgICAgIGlmICghb2JzZXJ2YXRpb24ucG9pbnRfaXNfcm9vdCkge1xuICAgICAgICBsZXQgZWRnZSA9IGVkZ2VzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgICAgICAoZWRnZSkgPT4gZWRnZS5zb3VyY2VfcG9pbnRfaWQgPT09IG9ic2VydmF0aW9uLnBvaW50X2lkLFxuICAgICAgICApO1xuICAgICAgICBpZiAoZWRnZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzLnB1c2goXG4gICAgICAgICAgICBgJHtvYnNlcnZhdGlvbi5wb2ludF9uYW1lfSAoJHtvYnNlcnZhdGlvbi5wb2ludF9pZH0pYCxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgYWxlcnQoXG4gICAgICAgIGBQbGVhc2UgbWFrZSBzdXJlIHRoYXQgdGhlIGZvbGxvd2luZyBzaXRlcyBhcmUgaW4gdGhlIGhpZXJhcmNoeSBhbmQgdGhlaXIgbGF0ICYgbG5nIGNvb3JkaW5hdGVzIGV4aXN0IFxcbiAke2ludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlc31gLFxuICAgICAgKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBzYW1lIGNoZWNrIGFzIGFib3ZlIGJ1dCB0aGlzIHRpbWUgZm9yIHRoZSBldmVudCBwYXRoLiBJZiBlZGdlIGRvZXNuJ3QgZXhpc3QsIGl0J3MgaW5kaWNhdGVzIHRoYXQgb25lIG9mIHRoZVxuICAgIC8vIHBvaW50cyBkb3duc3RyZWFtIGRvZXNuJ3QgaGF2ZSBsYXQvbG5nLlxuICAgIGxldCBpbnZhbGlkUGF0aE1lc3NhZ2VzOiBhbnkgPSBbXTtcbiAgICBldmVudC5wYXRoLmZvckVhY2goKHBhdGg6IGFueSkgPT4ge1xuICAgICAgbGV0IGVkZ2UgPSBlZGdlc19kYXRhLml0ZW1zLmZpbmQoKGVkZ2UpID0+IGVkZ2UuaWQgPT09IHBhdGguZWRnZV9pZCk7XG4gICAgICBpZiAoZWRnZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYGVkZ2UgJHtwYXRoLmVkZ2VfaWR9IGNhbiBub3QgYmUgZm91bmRgKTtcbiAgICAgICAgbGV0IG9ic2VydmF0aW9uID0gZXZlbnQub2JzZXJ2YXRpb25zLmZpbmQoXG4gICAgICAgICAgKG9ic2VydmF0aW9uKSA9PiBvYnNlcnZhdGlvbi5pZCA9PT0gcGF0aC5sYXN0X29ic2VydmF0aW9uX2lkLFxuICAgICAgICApO1xuICAgICAgICBsZXQgbGFzdE9ic2VydmF0aW9uUG9pbnQgPSAnTm90IGZvdW5kJztcbiAgICAgICAgaWYgKG9ic2VydmF0aW9uKSB7XG4gICAgICAgICAgbGFzdE9ic2VydmF0aW9uUG9pbnQgPSBvYnNlcnZhdGlvbi5wb2ludF9uYW1lO1xuICAgICAgICB9XG5cbiAgICAgICAgaW52YWxpZFBhdGhNZXNzYWdlcy5wdXNoKGAke2xhc3RPYnNlcnZhdGlvblBvaW50fSBgKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChpbnZhbGlkUGF0aE1lc3NhZ2VzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgYWxlcnQoXG4gICAgICAgIGBQbGVhc2UgbWFrZSBzdXJlIHRoYXQgdGhlIGZvbGxvd2luZyBzaXRlcyBhbmQgdGhlaXIgZG93bnN0cmVhbSBzaXRlcyBhbGwgaGF2ZSBsYXQgJiBsbmcgY29vcmRpbmF0ZXMgXFxuICR7aW52YWxpZFBhdGhNZXNzYWdlc31gLFxuICAgICAgKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVFdmVudEl0ZW1DbGljayA9IChldmVudDogSUV2ZW50LCByZWY6IFJlZk9iamVjdDxIVE1MRWxlbWVudD4pID0+IHtcbiAgICBvbk1vdXNlTGVhdmVFdmVudCgpO1xuICAgIC8vIGlmIChob3ZlcmVkRXZlbnRQYXRocyAmJiBtYXApIHtcbiAgICAvLyAgICAgaG92ZXJlZEV2ZW50UGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgIC8vICAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBhdGgpO1xuICAgIC8vICAgICB9KTtcbiAgICAvLyB9XG4gICAgLy8gZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50UGF0aHMoW10pKTtcbiAgICAvLyBkaXNwYXRjaChzZXRIb3ZlckV2ZW50SW5kaWNhdG9yKG51bGwpKTtcbiAgICBpZiAodmFsaWRhdGVFdmVudChldmVudCkpIHtcbiAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRFdmVudChldmVudCkpO1xuICAgICAgc2V0RmlsdGVyUG9wdXBPcGVuKGZhbHNlKTtcbiAgICAgIGhpc3RvcnkucHVzaChcbiAgICAgICAgYC8ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkfSZsb2NhbGU9JHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlfSZldmVudElkPSR7ZXZlbnQuaWR9JnZhbHVlc0Zyb21LUUw9JHtnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtfWAsXG4gICAgICApO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlRW50ZXJFdmVudCA9IChldmVudCkgPT4ge1xuICAgIGlmICghZm9jdXNlZEV2ZW50ICYmICFob3ZlcmVkRXZlbnQgJiYgdmFsaWRhdGVFdmVudChldmVudCkpIHtcbiAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudChldmVudCkpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlTGVhdmVFdmVudCA9ICgpID0+IHtcbiAgICBpZiAoaG92ZXJlZEV2ZW50ICYmIGhvdmVyZWRFdmVudFBhdGhzICYmIG1hcCkge1xuICAgICAgaG92ZXJlZEV2ZW50UGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgICBtYXAucmVtb3ZlTGF5ZXIocGF0aCk7XG4gICAgICB9KTtcblxuICAgICAgbGV0IGxheWVycyA9IG1hcC5fbGF5ZXJzO1xuICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBsYXllcnMpIHtcbiAgICAgICAgY29uc3Qga2FuZG9fb2JqZWN0ID0gbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3Q7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBrYW5kb19vYmplY3Q/LmluY2x1ZGVzKCdFdmVudEJvZHknKSB8fFxuICAgICAgICAgIFsnRXZlbnRUYWlsJywgJ1NhbXBsaW5nUG9pbnQnLCAnRGVjb3JhdG9yJ10uaW5jbHVkZXMoa2FuZG9fb2JqZWN0KVxuICAgICAgICApIHtcbiAgICAgICAgICBtYXAucmVtb3ZlTGF5ZXIobGF5ZXJzW3Byb3BlcnR5XSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50KG51bGwpKTtcbiAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRXZlbnRQYXRocyhbXSkpO1xuICAgIC8vIGRpc3BhdGNoKHNldEhvdmVyRXZlbnRJbmRpY2F0b3IobnVsbCkpO1xuICB9O1xuXG4gIGNvbnN0IHNldEZvY3VzZWRFdmVudElmRm91bmRJblBhcmFtcyA9ICgpID0+IHtcbiAgICBpZiAoXG4gICAgICBnZXRFdmVudElkRnJvbVVSTCgpICE9PSBudWxsICYmXG4gICAgICBnZXRFdmVudElkRnJvbVVSTCgpICE9PSAnbnVsbCcgJiZcbiAgICAgIGZvY3VzZWRFdmVudCA9PT0gbnVsbCAmJlxuICAgICAgaXRlbXMubGVuZ3RoICE9PSAwICYmXG4gICAgICAhaXNGZXRjaGluZyAmJlxuICAgICAgIWFyZWFzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmdcbiAgICApIHtcbiAgICAgIGxldCBldmVudCA9IGV2ZW50c19kYXRhLml0ZW1zLmZpbmQoXG4gICAgICAgIChlOiBJRXZlbnQpID0+IGUuaWQgPT09IHBhcnNlSW50KGdldEV2ZW50SWRGcm9tVVJMKCkhKSxcbiAgICAgICk7XG4gICAgICBpZiAoZXZlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBkaXNwYXRjaChzZXRGb2N1c2VkRXZlbnQoZXZlbnQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgdHJpZ2dlclNvcnQgPSAoc29ydDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciAhPT0gbnVsbCkge1xuICAgICAgbGV0IEtRTDtcbiAgICAgIGxldCBVUkw7XG4gICAgICBzd2l0Y2ggKHNvcnQpIHtcbiAgICAgICAgY2FzZSAxOlxuICAgICAgICAgIEtRTCA9IGAke2J1aWxkS1FMUXVlcnkoZ2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyLCAnbmV3ZXN0Jyl9YDtcbiAgICAgICAgICBVUkwgPSBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9JHtLUUx9YDtcbiAgICAgICAgICBoaXN0b3J5LnB1c2goVVJMKTtcbiAgICAgICAgICBkaXNwYXRjaChzZXRFdmVudEZpbHRlclBhcmFtKEtRTCkpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIDI6XG4gICAgICAgICAgS1FMID0gYCR7YnVpbGRLUUxRdWVyeShnbG9iYWxfZGF0YS5hY3RpdmVGaWx0ZXIsICdvbGRlc3QnKX1gO1xuICAgICAgICAgIFVSTCA9IGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7Z2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZH0mbG9jYWxlPSR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZX0mdmFsdWVzRnJvbUtRTD0ke0tRTH1gO1xuICAgICAgICAgIGhpc3RvcnkucHVzaChVUkwpO1xuICAgICAgICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oS1FMKSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgMzpcbiAgICAgICAgICBLUUwgPSBgJHtidWlsZEtRTFF1ZXJ5KGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciwgJ3NldmVyaXR5Jyl9YDtcbiAgICAgICAgICBVUkwgPSBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9JHtLUUx9YDtcbiAgICAgICAgICBoaXN0b3J5LnB1c2goVVJMKTtcbiAgICAgICAgICBkaXNwYXRjaChzZXRFdmVudEZpbHRlclBhcmFtKEtRTCkpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGRpc3BhdGNoKGZldGNoRXZlbnRzKHdhdGVyQXV0aG9yaXR5SWQsIGdldEtRTFZhbHVlc0Zyb21VUkwoKSB8fCAnREVGQVVMVCcpKTtcbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIGdsb2JhbF9kYXRhLmV2ZW50RmlsdGVyUGFyYW1dKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXsnc2lkZW5hdiAnICsgKHNpZGVuYXZFeHBhbmRlZCA/ICcnIDogJ3NpZGVuYXYtLWNvbGxhcHNlZCcpfT5cbiAgICAgIHtzZXRGb2N1c2VkRXZlbnRJZkZvdW5kSW5QYXJhbXMoKX1cbiAgICAgIHtnbG9iYWxfZGF0YS5tb3JlSW5mbyAhPT0gdW5kZWZpbmVkICYmIGdsb2JhbF9kYXRhLm1vcmVJbmZvLmFjdGl2ZSAmJiAoXG4gICAgICAgIDxNb3JlSW5mbyAvPlxuICAgICAgKX1cblxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e1xuICAgICAgICAgICdldmVudC1pbmZvICcgK1xuICAgICAgICAgICghaG92ZXJlZEV2ZW50ICYmIGZvY3VzZWRFdmVudCAhPT0gbnVsbFxuICAgICAgICAgICAgPyAnJ1xuICAgICAgICAgICAgOiAnZXZlbnQtaW5mby0tY29sbGFwc2VkJylcbiAgICAgICAgfVxuICAgICAgPlxuICAgICAgICB7IWhvdmVyZWRFdmVudCAmJiBmb2N1c2VkRXZlbnQgIT09IG51bGwgJiYgKFxuICAgICAgICAgIDxFdmVudEluZm9cbiAgICAgICAgICAgIGV2ZW50PXtmb2N1c2VkRXZlbnR9XG4gICAgICAgICAgICByZU9wZW5GaWx0ZXI9eygpID0+IHNldEZpbHRlclBvcHVwT3Blbih0cnVlKX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT1cInRvZ2dsZS1leHBhbnNpb24tYnV0dG9uXCJcbiAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUV4cGFuc2lvblRvZ2dsZSgpO1xuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm5hdi1leHBhbnNpb24taWNvblwiPlxuICAgICAgICAgIDxGb250QXdlc29tZUljb25cbiAgICAgICAgICAgIGljb249e3NpZGVuYXZFeHBhbmRlZCA/IGZhQ2FyZXRMZWZ0IDogZmFDYXJldFJpZ2h0fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17J3RvZ2dsZS1leHBhbnNpb24tYnV0dG9uLW1vYmlsZSd9XG4gICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICBoYW5kbGVFeHBhbnNpb25Ub2dnbGUoKTtcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPGEgaHJlZj1cIiNcIj5cbiAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIGljb249e2ZhQXJyb3dMZWZ0fSAvPlxuICAgICAgICAgIDxzcGFuPiB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuYmFja190b19kZXRhaWxzJyl9PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXZlbnRzLWhlYWRlclwiPlxuICAgICAgICB7bGFzdFZpc2l0ZWQgJiYgIWlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgIDxMaW5rIGNsYXNzTmFtZT1cImJhY2tcIiB0bz17bGFzdFZpc2l0ZWR9PlxuICAgICAgICAgICAgeycgJ31cbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgc3JjPXtMZWZ0QXJyb3dJY29ufVxuICAgICAgICAgICAgICBoZWlnaHQ9XCIxMHB4XCJcbiAgICAgICAgICAgICAgd2lkdGg9XCIxMnB4XCJcbiAgICAgICAgICAgICAgYWx0PVwiYmFja1wiXG4gICAgICAgICAgICAvPnsnICd9XG4gICAgICAgICAgICB7aTE4bi50KCdhcmVhX3NjcmVlbi5iYWNrJyl9XG4gICAgICAgICAgPC9MaW5rPlxuICAgICAgICApfVxuICAgICAgICA8aDQ+XG4gICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmV2ZW50c19saXN0Jyl9ICh7ZXZlbnRzX2RhdGEuaXRlbXMubGVuZ3RofSlcbiAgICAgICAgPC9oND5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWx0ZXJpbmdcIj5cbiAgICAgICAgICB7ZXZlbnRzX2RhdGEuaXRlbXMubGVuZ3RoICE9PSAwICYmIChcbiAgICAgICAgICAgIDxTb3J0XG4gICAgICAgICAgICAgIHRyaWdnZXJTb3J0PXt0cmlnZ2VyU29ydH1cbiAgICAgICAgICAgICAgZXZlbnRzPXtldmVudHNfZGF0YS5pdGVtc31cbiAgICAgICAgICAgICAgZXZlbnRzRmV0Y2hpbmc9e2V2ZW50c19kYXRhLmlzRmV0Y2hpbmd9XG4gICAgICAgICAgICAgIGFjdGl2ZUZpbHRlcj17Z2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaWNvbnNcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZmlsdGVyXCJcbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0RmlsdGVyUG9wdXBPcGVuKCFmaWx0ZXJQb3B1cE9wZW4pfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8RmlsdGVySWNvbiB3aWR0aD1cIjE3cHhcIiBoZWlnaHQ9XCIxN3B4XCIgZmlsbD1cIiNmNjAwNGZcIiAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIHtwb2ludHNfZGF0YS5pdGVtcy5sZW5ndGggIT09IDAgJiYgKFxuICAgICAgICAgIDxGaWx0ZXJDb250YWluZXIgZmlsdGVyUG9wdXBPcGVuPXtmaWx0ZXJQb3B1cE9wZW59IC8+XG4gICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXZlbnRzLWNvbnRhaW5lciBzY3JvbGxiYXIgXCI+XG4gICAgICAgIHtsb2FkZXIoKX1cbiAgICAgICAgeyFpc0ZldGNoaW5nICYmXG4gICAgICAgICAgaXRlbXMubGVuZ3RoID09PSAwICYmXG4gICAgICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nICYmIChcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZXZlbnRzX19ibGFua3NsYXRlJ30+XG4gICAgICAgICAgICAgIDxpbWcgc3JjPXtOb0V2ZW50c0ltYWdlfSBhbHQ9XCJOb0V2ZW50c0ljb25cIiAvPlxuICAgICAgICAgICAgICA8aDI+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5ibGFua3NsYXRlLmhlYWRlcicpfTwvaDI+XG4gICAgICAgICAgICAgIDxwPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuYmxhbmtzbGF0ZS5ib2R5Jyl9PC9wPlxuICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17J2FwcGx5X2RlZmF1bHRfZmlsdGVyX2J1dHRvbid9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gYXBwbHlEZWZhdWx0RmlsdGVyKCl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmJsYW5rc2xhdGUuYnV0dG9uJyl9XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG4gICAgICAgIHtpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nICYmIChcbiAgICAgICAgICAgIDx1bCBjbGFzc05hbWU9XCJldmVudHMgXCI+XG4gICAgICAgICAgICAgIHtpdGVtcy5tYXAoKGV2ZW50OiBhbnkpID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXtldmVudC5pZH0gY2xhc3NOYW1lPVwiZXZlbnRcIiBkYXRhLWV2ZW50LWlkPXtldmVudC5pZH0+XG4gICAgICAgICAgICAgICAgICA8U2V2ZXJlRXZlbnRcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQ9e2V2ZW50fVxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbGljaz17aGFuZGxlRXZlbnRJdGVtQ2xpY2t9XG4gICAgICAgICAgICAgICAgICAgIG9uTW91c2VFbnRlckV2ZW50PXtvbk1vdXNlRW50ZXJFdmVudH1cbiAgICAgICAgICAgICAgICAgICAgb25Nb3VzZUxlYXZlRXZlbnQ9e29uTW91c2VMZWF2ZUV2ZW50fVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuY29uc3QgY29ubmVjdG9yID0gY29ubmVjdChtYXBTdGF0ZVRvUHJvcHMpO1xuZXhwb3J0IGRlZmF1bHQgY29ubmVjdG9yKEV2ZW50c0xpc3QpO1xuIl19
|
|
363
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudHNfbGlzdC9FdmVudHNMaXN0LnRzeCJdLCJuYW1lcyI6WyJtYXBTdGF0ZVRvUHJvcHMiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJlZGdlc19kYXRhIiwicG9pbnRzX2RhdGEiLCJhcmVhc19kYXRhIiwibmF2X2NvbnRleHRfZGF0YSIsIkV2ZW50c0xpc3QiLCJzaWRlbmF2RXhwYW5kZWQiLCJkaXNwYXRjaCIsIml0ZW1zIiwiaXNGZXRjaGluZyIsImZvY3VzZWRFdmVudCIsImhvdmVyZWRFdmVudCIsImhvdmVyZWRFdmVudFBhdGhzIiwid2F0ZXJBdXRob3JpdHlJZCIsIm1hcCIsImZpbHRlclBvcHVwT3BlbiIsInNldEZpbHRlclBvcHVwT3BlbiIsImxhc3RWaXNpdGVkIiwidXNlUXVlcnkiLCJVUkxTZWFyY2hQYXJhbXMiLCJzZWFyY2giLCJoaXN0b3J5IiwicXVlcnkiLCJnZXRLUUxWYWx1ZXNGcm9tVVJMIiwiZ2V0IiwiZ2V0RXZlbnRJZEZyb21VUkwiLCJsb2FkZXIiLCJsZW5ndGgiLCJuZXdBcmVhcyIsImhhbmRsZUV4cGFuc2lvblRvZ2dsZSIsImFwcGx5RGVmYXVsdEZpbHRlciIsInB1c2giLCJuYXZDb250ZXh0IiwibmFtZSIsImxvY2FsZSIsInZhbGlkYXRlRXZlbnQiLCJldmVudCIsImludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlcyIsIm9ic2VydmF0aW9ucyIsImZvckVhY2giLCJvYnNlcnZhdGlvbiIsInBvaW50X2lzX3Jvb3QiLCJlZGdlIiwiZmluZCIsInNvdXJjZV9wb2ludF9pZCIsInBvaW50X2lkIiwidW5kZWZpbmVkIiwicG9pbnRfbmFtZSIsImFsZXJ0IiwiaW52YWxpZFBhdGhNZXNzYWdlcyIsInBhdGgiLCJpZCIsImVkZ2VfaWQiLCJjb25zb2xlIiwiZXJyb3IiLCJsYXN0X29ic2VydmF0aW9uX2lkIiwibGFzdE9ic2VydmF0aW9uUG9pbnQiLCJoYW5kbGVFdmVudEl0ZW1DbGljayIsInJlZiIsIm9uTW91c2VMZWF2ZUV2ZW50IiwiZXZlbnRGaWx0ZXJQYXJhbSIsIm9uTW91c2VFbnRlckV2ZW50IiwicmVtb3ZlTGF5ZXIiLCJsYXllcnMiLCJfbGF5ZXJzIiwicHJvcGVydHkiLCJrYW5kb19vYmplY3QiLCJpbmNsdWRlcyIsInNldEZvY3VzZWRFdmVudElmRm91bmRJblBhcmFtcyIsImUiLCJwYXJzZUludCIsInRyaWdnZXJTb3J0Iiwic29ydCIsImFjdGl2ZUZpbHRlciIsIktRTCIsIlVSTCIsIm1vcmVJbmZvIiwiYWN0aXZlIiwiZmFDYXJldExlZnQiLCJmYUNhcmV0UmlnaHQiLCJmYUFycm93TGVmdCIsImkxOG4iLCJ0IiwiTGVmdEFycm93SWNvbiIsIk5vRXZlbnRzSW1hZ2UiLCJjb25uZWN0b3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFDQTs7QUFLQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFJQTs7QUFFQTs7QUFDQTs7QUFPQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBOUJBO0FBZ0NBLFNBQVNBLGVBQVQsQ0FBeUJDLEtBQXpCLEVBQTJDO0FBQ3pDLE1BQ0VDLFdBREYsR0FPSUQsS0FQSixDQUNFQyxXQURGO0FBQUEsTUFFRUMsV0FGRixHQU9JRixLQVBKLENBRUVFLFdBRkY7QUFBQSxNQUdFQyxVQUhGLEdBT0lILEtBUEosQ0FHRUcsVUFIRjtBQUFBLE1BSUVDLFdBSkYsR0FPSUosS0FQSixDQUlFSSxXQUpGO0FBQUEsTUFLRUMsVUFMRixHQU9JTCxLQVBKLENBS0VLLFVBTEY7QUFBQSxNQU1FQyxnQkFORixHQU9JTixLQVBKLENBTUVNLGdCQU5GO0FBU0EsU0FBTztBQUNMTCxJQUFBQSxXQUFXLEVBQVhBLFdBREs7QUFFTEMsSUFBQUEsV0FBVyxFQUFYQSxXQUZLO0FBR0xDLElBQUFBLFVBQVUsRUFBVkEsVUFISztBQUlMQyxJQUFBQSxX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QUFKckIsTUFERixDQURTO0FBQUEsR0FBVixDQURILENBdEJOLENBdEZGLENBREY7QUE2SEQsQ0F4VUQ7O0FBMFVBLElBQU0wQixTQUFTLEdBQUcseUJBQVF4RixlQUFSLENBQWxCOztlQUNld0YsU0FBUyxDQUFDaEYsVUFBRCxDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgZXRjL25vLWNvbW1lbnRlZC1vdXQtY29kZSAqL1xuaW1wb3J0IHtcbiAgZmFBcnJvd0xlZnQsXG4gIGZhQ2FyZXRMZWZ0LFxuICBmYUNhcmV0UmlnaHQsXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IFJlYWN0LCB7IFJlZk9iamVjdCwgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNvbm5lY3QsIENvbm5lY3RlZFByb3BzLCB1c2VEaXNwYXRjaCB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IExpbmssIHVzZUhpc3RvcnksIHVzZUxvY2F0aW9uIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgTGVmdEFycm93SWNvbiBmcm9tICdzcmMvYXNzZXRzL2ljb25zL2Fycm93LWxlZnQuc3ZnJztcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIEZpbHRlckljb24gfSBmcm9tICdzcmMvYXNzZXRzL2ljb25zL2Z1bm5lbC5zdmcnO1xuaW1wb3J0IE5vRXZlbnRzSW1hZ2UgZnJvbSAnc3JjL2Fzc2V0cy9ub19ldmVudHMuc3ZnJztcbmltcG9ydCB7IFNldmVyZUV2ZW50IH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvU2V2ZXJlRXZlbnQvU2V2ZXJlRXZlbnQnO1xuaW1wb3J0IHsgSUFwcFN0YXRlIH0gZnJvbSAnc3JjL21vZGVscy9JQXBwU3RhdGUnO1xuaW1wb3J0IHsgdXNlTGFzdFZpc2l0ZWQgfSBmcm9tICdzcmMvcHJvdmlkZXJzL1VybEhpc3RvcnknO1xuaW1wb3J0IHtcbiAgZmV0Y2hFdmVudHMsXG4gIHNldEZvY3VzZWRFdmVudCxcbiAgc2V0SG92ZXJlZEV2ZW50LFxuICBzZXRIb3ZlcmVkRXZlbnRQYXRocyxcbn0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9hY3Rpb25zJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBzZXRFdmVudEZpbHRlclBhcmFtLCBzaWRlTmF2RXhwYW5kZWQgfSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IGJ1aWxkS1FMUXVlcnkgfSBmcm9tICdzcmMvdXRpbGl0aWVzL2txbCc7XG5pbXBvcnQgJy4uL0V2ZW50c1N0eWxlLnNjc3MnO1xuaW1wb3J0IEV2ZW50SW5mbyBmcm9tICcuLi9ldmVudF9pbmZvL0V2ZW50SW5mbyc7XG5pbXBvcnQgTW9yZUluZm8gZnJvbSAnLi4vTW9yZUluZm8nO1xuaW1wb3J0IEZpbHRlckNvbnRhaW5lciBmcm9tICcuL0ZpbHRlci9GaWx0ZXJDb250YWluZXInO1xuaW1wb3J0IFNvcnQgZnJvbSAnLi9Tb3J0JztcblxuZnVuY3Rpb24gbWFwU3RhdGVUb1Byb3BzKHN0YXRlOiBJQXBwU3RhdGUpIHtcbiAgY29uc3Qge1xuICAgIGV2ZW50c19kYXRhLFxuICAgIGdsb2JhbF9kYXRhLFxuICAgIGVkZ2VzX2RhdGEsXG4gICAgcG9pbnRzX2RhdGEsXG4gICAgYXJlYXNfZGF0YSxcbiAgICBuYXZfY29udGV4dF9kYXRhLFxuICB9ID0gc3RhdGU7XG5cbiAgcmV0dXJuIHtcbiAgICBldmVudHNfZGF0YSxcbiAgICBnbG9iYWxfZGF0YSxcbiAgICBlZGdlc19kYXRhLFxuICAgIHBvaW50c19kYXRhLFxuICAgIGFyZWFzX2RhdGEsXG4gICAgbmF2X2NvbnRleHRfZGF0YSxcbiAgfTtcbn1cblxudHlwZSBJUHJvcHMgPSBDb25uZWN0ZWRQcm9wczx0eXBlb2YgY29ubmVjdG9yPiAmIHtcbiAgc2lkZW5hdkV4cGFuZGVkOiBib29sZWFuO1xufTtcblxuY29uc3QgRXZlbnRzTGlzdDogUmVhY3QuRkM8SVByb3BzPiA9ICh7XG4gIGFyZWFzX2RhdGEsXG4gIHBvaW50c19kYXRhLFxuICBlZGdlc19kYXRhLFxuICBnbG9iYWxfZGF0YSxcbiAgc2lkZW5hdkV4cGFuZGVkLFxuICBldmVudHNfZGF0YSxcbiAgbmF2X2NvbnRleHRfZGF0YSxcbn0pID0+IHtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCB7IGl0ZW1zLCBpc0ZldGNoaW5nLCBmb2N1c2VkRXZlbnQsIGhvdmVyZWRFdmVudCwgaG92ZXJlZEV2ZW50UGF0aHMgfSA9XG4gICAgZXZlbnRzX2RhdGE7XG4gIGNvbnN0IHsgd2F0ZXJBdXRob3JpdHlJZCwgbWFwIH0gPSBnbG9iYWxfZGF0YTtcbiAgY29uc3QgW2ZpbHRlclBvcHVwT3Blbiwgc2V0RmlsdGVyUG9wdXBPcGVuXSA9IHVzZVN0YXRlKHRydWUpO1xuICBjb25zdCBsYXN0VmlzaXRlZCA9IHVzZUxhc3RWaXNpdGVkKCk7XG5cbiAgY29uc3QgdXNlUXVlcnkgPSAoKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBVUkxTZWFyY2hQYXJhbXModXNlTG9jYXRpb24oKS5zZWFyY2gpO1xuICB9O1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5KCk7XG4gIGNvbnN0IGdldEtRTFZhbHVlc0Zyb21VUkwgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHF1ZXJ5LmdldCgndmFsdWVzRnJvbUtRTCcpO1xuICB9O1xuICBjb25zdCBnZXRFdmVudElkRnJvbVVSTCA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCdldmVudElkJyk7XG4gIH07XG5cbiAgY29uc3QgbG9hZGVyID0gKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIChpc0ZldGNoaW5nICYmIGl0ZW1zLmxlbmd0aCA9PT0gMCkgfHxcbiAgICAgIGFyZWFzX2RhdGEubmV3QXJlYXMubGVuZ3RoID09PSAwIHx8XG4gICAgICBwb2ludHNfZGF0YS5pc0ZldGNoaW5nIHx8XG4gICAgICBlZGdlc19kYXRhLmlzRmV0Y2hpbmdcbiAgICApIHtcbiAgICAgIHJldHVybiA8ZGl2IGNsYXNzTmFtZT17J2xvYWRlcid9PjwvZGl2PjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUV4cGFuc2lvblRvZ2dsZSA9ICgpID0+IHtcbiAgICBkaXNwYXRjaChzaWRlTmF2RXhwYW5kZWQoIXNpZGVuYXZFeHBhbmRlZCkpO1xuICB9O1xuXG4gIGNvbnN0IGFwcGx5RGVmYXVsdEZpbHRlciA9ICgpID0+IHtcbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9YCxcbiAgICApO1xuICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oJycpKTtcbiAgfTtcblxuICBjb25zdCB2YWxpZGF0ZUV2ZW50ID0gKGV2ZW50OiBJRXZlbnQpID0+IHtcbiAgICAvLyBjaGVjayB0aGF0IGFsbCBvYnNlcnZhdGlvbnMnIGVkZ2VzIGV4aXN0cy4gSWYgdGhleSBhcmUgbm90IGV4aXN0cyBpdCdzIGluZGljYXRlcyB0aGF0IHRoZWlyIHBvaW50cyBhcmVcbiAgICAvLyBub3QgaW4gdGhlIGhpZXJhcmNoeSBvciBkb2Vzbid0IGhhdmUgbGF0L2xuZy5cbiAgICBsZXQgaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzOiBhbnkgPSBbXTtcbiAgICBldmVudC5vYnNlcnZhdGlvbnMuZm9yRWFjaCgob2JzZXJ2YXRpb246IGFueSkgPT4ge1xuICAgICAgLy8gaWYgb2JzZXJ2YXRpb24gaXMgcm9vdCAoZXguIFdXVFApIHRoZXJlIGlzIG5vIGVkZ2UgdGhhdCBpdHMgYSBzb3VyY2UuIHNvIHdlIGNhbiBza2lwIHRoaXMgY2hlY2tcbiAgICAgIGlmICghb2JzZXJ2YXRpb24ucG9pbnRfaXNfcm9vdCkge1xuICAgICAgICBsZXQgZWRnZSA9IGVkZ2VzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgICAgICAoZWRnZSkgPT4gZWRnZS5zb3VyY2VfcG9pbnRfaWQgPT09IG9ic2VydmF0aW9uLnBvaW50X2lkLFxuICAgICAgICApO1xuICAgICAgICBpZiAoZWRnZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzLnB1c2goXG4gICAgICAgICAgICBgJHtvYnNlcnZhdGlvbi5wb2ludF9uYW1lfSAoJHtvYnNlcnZhdGlvbi5wb2ludF9pZH0pYCxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgYWxlcnQoXG4gICAgICAgIGBQbGVhc2UgbWFrZSBzdXJlIHRoYXQgdGhlIGZvbGxvd2luZyBzaXRlcyBhcmUgaW4gdGhlIGhpZXJhcmNoeSBhbmQgdGhlaXIgbGF0ICYgbG5nIGNvb3JkaW5hdGVzIGV4aXN0IFxcbiAke2ludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlc31gLFxuICAgICAgKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBzYW1lIGNoZWNrIGFzIGFib3ZlIGJ1dCB0aGlzIHRpbWUgZm9yIHRoZSBldmVudCBwYXRoLiBJZiBlZGdlIGRvZXNuJ3QgZXhpc3QsIGl0J3MgaW5kaWNhdGVzIHRoYXQgb25lIG9mIHRoZVxuICAgIC8vIHBvaW50cyBkb3duc3RyZWFtIGRvZXNuJ3QgaGF2ZSBsYXQvbG5nLlxuICAgIGxldCBpbnZhbGlkUGF0aE1lc3NhZ2VzOiBhbnkgPSBbXTtcbiAgICBldmVudC5wYXRoLmZvckVhY2goKHBhdGg6IGFueSkgPT4ge1xuICAgICAgbGV0IGVkZ2UgPSBlZGdlc19kYXRhLml0ZW1zLmZpbmQoKGVkZ2UpID0+IGVkZ2UuaWQgPT09IHBhdGguZWRnZV9pZCk7XG4gICAgICBpZiAoZWRnZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYGVkZ2UgJHtwYXRoLmVkZ2VfaWR9IGNhbiBub3QgYmUgZm91bmRgKTtcbiAgICAgICAgbGV0IG9ic2VydmF0aW9uID0gZXZlbnQub2JzZXJ2YXRpb25zLmZpbmQoXG4gICAgICAgICAgKG9ic2VydmF0aW9uKSA9PiBvYnNlcnZhdGlvbi5pZCA9PT0gcGF0aC5sYXN0X29ic2VydmF0aW9uX2lkLFxuICAgICAgICApO1xuICAgICAgICBsZXQgbGFzdE9ic2VydmF0aW9uUG9pbnQgPSAnTm90IGZvdW5kJztcbiAgICAgICAgaWYgKG9ic2VydmF0aW9uKSB7XG4gICAgICAgICAgbGFzdE9ic2VydmF0aW9uUG9pbnQgPSBvYnNlcnZhdGlvbi5wb2ludF9uYW1lO1xuICAgICAgICB9XG5cbiAgICAgICAgaW52YWxpZFBhdGhNZXNzYWdlcy5wdXNoKGAke2xhc3RPYnNlcnZhdGlvblBvaW50fSBgKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChpbnZhbGlkUGF0aE1lc3NhZ2VzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgYWxlcnQoXG4gICAgICAgIGBQbGVhc2UgbWFrZSBzdXJlIHRoYXQgdGhlIGZvbGxvd2luZyBzaXRlcyBhbmQgdGhlaXIgZG93bnN0cmVhbSBzaXRlcyBhbGwgaGF2ZSBsYXQgJiBsbmcgY29vcmRpbmF0ZXMgXFxuICR7aW52YWxpZFBhdGhNZXNzYWdlc31gLFxuICAgICAgKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVFdmVudEl0ZW1DbGljayA9IChldmVudDogSUV2ZW50LCByZWY6IFJlZk9iamVjdDxIVE1MRWxlbWVudD4pID0+IHtcbiAgICBvbk1vdXNlTGVhdmVFdmVudCgpO1xuICAgIC8vIGlmIChob3ZlcmVkRXZlbnRQYXRocyAmJiBtYXApIHtcbiAgICAvLyAgICAgaG92ZXJlZEV2ZW50UGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgIC8vICAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBhdGgpO1xuICAgIC8vICAgICB9KTtcbiAgICAvLyB9XG4gICAgLy8gZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50UGF0aHMoW10pKTtcbiAgICAvLyBkaXNwYXRjaChzZXRIb3ZlckV2ZW50SW5kaWNhdG9yKG51bGwpKTtcbiAgICBpZiAodmFsaWRhdGVFdmVudChldmVudCkpIHtcbiAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRFdmVudChldmVudCkpO1xuICAgICAgc2V0RmlsdGVyUG9wdXBPcGVuKGZhbHNlKTtcbiAgICAgIGhpc3RvcnkucHVzaChcbiAgICAgICAgYC8ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkfSZsb2NhbGU9JHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlfSZldmVudElkPSR7ZXZlbnQuaWR9JnZhbHVlc0Zyb21LUUw9JHtnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtfWAsXG4gICAgICApO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlRW50ZXJFdmVudCA9IChldmVudCkgPT4ge1xuICAgIGlmICghZm9jdXNlZEV2ZW50ICYmICFob3ZlcmVkRXZlbnQgJiYgdmFsaWRhdGVFdmVudChldmVudCkpIHtcbiAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudChldmVudCkpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlTGVhdmVFdmVudCA9ICgpID0+IHtcbiAgICBpZiAoaG92ZXJlZEV2ZW50ICYmIGhvdmVyZWRFdmVudFBhdGhzICYmIG1hcCkge1xuICAgICAgaG92ZXJlZEV2ZW50UGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgICBtYXAucmVtb3ZlTGF5ZXIocGF0aCk7XG4gICAgICB9KTtcblxuICAgICAgbGV0IGxheWVycyA9IG1hcC5fbGF5ZXJzO1xuICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBsYXllcnMpIHtcbiAgICAgICAgY29uc3Qga2FuZG9fb2JqZWN0ID0gbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3Q7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBrYW5kb19vYmplY3Q/LmluY2x1ZGVzKCdFdmVudEJvZHknKSB8fFxuICAgICAgICAgIFsnRXZlbnRUYWlsJywgJ1NhbXBsaW5nUG9pbnQnLCAnRGVjb3JhdG9yJ10uaW5jbHVkZXMoa2FuZG9fb2JqZWN0KVxuICAgICAgICApIHtcbiAgICAgICAgICBtYXAucmVtb3ZlTGF5ZXIobGF5ZXJzW3Byb3BlcnR5XSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50KG51bGwpKTtcbiAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRXZlbnRQYXRocyhbXSkpO1xuICAgIC8vIGRpc3BhdGNoKHNldEhvdmVyRXZlbnRJbmRpY2F0b3IobnVsbCkpO1xuICB9O1xuXG4gIGNvbnN0IHNldEZvY3VzZWRFdmVudElmRm91bmRJblBhcmFtcyA9ICgpID0+IHtcbiAgICBpZiAoXG4gICAgICBnZXRFdmVudElkRnJvbVVSTCgpICE9PSBudWxsICYmXG4gICAgICBnZXRFdmVudElkRnJvbVVSTCgpICE9PSAnbnVsbCcgJiZcbiAgICAgIGZvY3VzZWRFdmVudCA9PT0gbnVsbCAmJlxuICAgICAgaXRlbXMubGVuZ3RoICE9PSAwICYmXG4gICAgICAhaXNGZXRjaGluZyAmJlxuICAgICAgIWFyZWFzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmdcbiAgICApIHtcbiAgICAgIGxldCBldmVudCA9IGV2ZW50c19kYXRhLml0ZW1zLmZpbmQoXG4gICAgICAgIChlOiBJRXZlbnQpID0+IGUuaWQgPT09IHBhcnNlSW50KGdldEV2ZW50SWRGcm9tVVJMKCkhKSxcbiAgICAgICk7XG4gICAgICBpZiAoZXZlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBkaXNwYXRjaChzZXRGb2N1c2VkRXZlbnQoZXZlbnQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgdHJpZ2dlclNvcnQgPSAoc29ydDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciAhPT0gbnVsbCkge1xuICAgICAgbGV0IEtRTDtcbiAgICAgIGxldCBVUkw7XG4gICAgICBzd2l0Y2ggKHNvcnQpIHtcbiAgICAgICAgY2FzZSAxOlxuICAgICAgICAgIEtRTCA9IGAke2J1aWxkS1FMUXVlcnkoZ2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyLCAnbmV3ZXN0Jyl9YDtcbiAgICAgICAgICBVUkwgPSBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9JHtLUUx9YDtcbiAgICAgICAgICBoaXN0b3J5LnB1c2goVVJMKTtcbiAgICAgICAgICBkaXNwYXRjaChzZXRFdmVudEZpbHRlclBhcmFtKEtRTCkpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIDI6XG4gICAgICAgICAgS1FMID0gYCR7YnVpbGRLUUxRdWVyeShnbG9iYWxfZGF0YS5hY3RpdmVGaWx0ZXIsICdvbGRlc3QnKX1gO1xuICAgICAgICAgIFVSTCA9IGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7Z2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZH0mbG9jYWxlPSR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZX0mdmFsdWVzRnJvbUtRTD0ke0tRTH1gO1xuICAgICAgICAgIGhpc3RvcnkucHVzaChVUkwpO1xuICAgICAgICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oS1FMKSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgMzpcbiAgICAgICAgICBLUUwgPSBgJHtidWlsZEtRTFF1ZXJ5KGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciwgJ3NldmVyaXR5Jyl9YDtcbiAgICAgICAgICBVUkwgPSBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9JHtLUUx9YDtcbiAgICAgICAgICBoaXN0b3J5LnB1c2goVVJMKTtcbiAgICAgICAgICBkaXNwYXRjaChzZXRFdmVudEZpbHRlclBhcmFtKEtRTCkpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGRpc3BhdGNoKGZldGNoRXZlbnRzKHdhdGVyQXV0aG9yaXR5SWQsIGdldEtRTFZhbHVlc0Zyb21VUkwoKSB8fCAnREVGQVVMVCcpKTtcbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIGdsb2JhbF9kYXRhLmV2ZW50RmlsdGVyUGFyYW1dKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXsnc2lkZW5hdiAnICsgKHNpZGVuYXZFeHBhbmRlZCA/ICcnIDogJ3NpZGVuYXYtLWNvbGxhcHNlZCcpfT5cbiAgICAgIHtzZXRGb2N1c2VkRXZlbnRJZkZvdW5kSW5QYXJhbXMoKX1cbiAgICAgIHtnbG9iYWxfZGF0YS5tb3JlSW5mbyAhPT0gdW5kZWZpbmVkICYmIGdsb2JhbF9kYXRhLm1vcmVJbmZvLmFjdGl2ZSAmJiAoXG4gICAgICAgIDxNb3JlSW5mbyAvPlxuICAgICAgKX1cblxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e1xuICAgICAgICAgICdldmVudC1pbmZvICcgK1xuICAgICAgICAgICghaG92ZXJlZEV2ZW50ICYmIGZvY3VzZWRFdmVudCAhPT0gbnVsbFxuICAgICAgICAgICAgPyAnJ1xuICAgICAgICAgICAgOiAnZXZlbnQtaW5mby0tY29sbGFwc2VkJylcbiAgICAgICAgfVxuICAgICAgPlxuICAgICAgICB7IWhvdmVyZWRFdmVudCAmJiBmb2N1c2VkRXZlbnQgIT09IG51bGwgJiYgKFxuICAgICAgICAgIDxFdmVudEluZm9cbiAgICAgICAgICAgIGV2ZW50PXtmb2N1c2VkRXZlbnR9XG4gICAgICAgICAgICByZU9wZW5GaWx0ZXI9eygpID0+IHNldEZpbHRlclBvcHVwT3Blbih0cnVlKX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT1cInRvZ2dsZS1leHBhbnNpb24tYnV0dG9uXCJcbiAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUV4cGFuc2lvblRvZ2dsZSgpO1xuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm5hdi1leHBhbnNpb24taWNvblwiPlxuICAgICAgICAgIDxGb250QXdlc29tZUljb25cbiAgICAgICAgICAgIGljb249e3NpZGVuYXZFeHBhbmRlZCA/IGZhQ2FyZXRMZWZ0IDogZmFDYXJldFJpZ2h0fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17J3RvZ2dsZS1leHBhbnNpb24tYnV0dG9uLW1vYmlsZSd9XG4gICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICBoYW5kbGVFeHBhbnNpb25Ub2dnbGUoKTtcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPGEgaHJlZj1cIiNcIj5cbiAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIGljb249e2ZhQXJyb3dMZWZ0fSAvPlxuICAgICAgICAgIDxzcGFuPiB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuYmFja190b19kZXRhaWxzJyl9PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXZlbnRzLWhlYWRlclwiPlxuICAgICAgICB7bGFzdFZpc2l0ZWQgJiYgIWlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgIDxMaW5rIGNsYXNzTmFtZT1cImJhY2tcIiB0bz17bGFzdFZpc2l0ZWR9PlxuICAgICAgICAgICAgeycgJ31cbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgc3JjPXtMZWZ0QXJyb3dJY29ufVxuICAgICAgICAgICAgICBoZWlnaHQ9XCIxMHB4XCJcbiAgICAgICAgICAgICAgd2lkdGg9XCIxMnB4XCJcbiAgICAgICAgICAgICAgYWx0PVwiYmFja1wiXG4gICAgICAgICAgICAvPnsnICd9XG4gICAgICAgICAgICB7aTE4bi50KCdhcmVhX3NjcmVlbi5iYWNrJyl9XG4gICAgICAgICAgPC9MaW5rPlxuICAgICAgICApfVxuICAgICAgICA8aDQ+XG4gICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmV2ZW50c19saXN0Jyl9ICh7ZXZlbnRzX2RhdGEuaXRlbXMubGVuZ3RofSlcbiAgICAgICAgPC9oND5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWx0ZXJpbmdcIj5cbiAgICAgICAgICB7ZXZlbnRzX2RhdGEuaXRlbXMubGVuZ3RoICE9PSAwICYmIChcbiAgICAgICAgICAgIDxTb3J0XG4gICAgICAgICAgICAgIHRyaWdnZXJTb3J0PXt0cmlnZ2VyU29ydH1cbiAgICAgICAgICAgICAgZXZlbnRzPXtldmVudHNfZGF0YS5pdGVtc31cbiAgICAgICAgICAgICAgZXZlbnRzRmV0Y2hpbmc9e2V2ZW50c19kYXRhLmlzRmV0Y2hpbmd9XG4gICAgICAgICAgICAgIGFjdGl2ZUZpbHRlcj17Z2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaWNvbnNcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZmlsdGVyXCJcbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0RmlsdGVyUG9wdXBPcGVuKCFmaWx0ZXJQb3B1cE9wZW4pfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8RmlsdGVySWNvbiB3aWR0aD1cIjE3cHhcIiBoZWlnaHQ9XCIxN3B4XCIgZmlsbD1cIiNmNjAwNGZcIiAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIHtwb2ludHNfZGF0YS5pdGVtcy5sZW5ndGggIT09IDAgJiYgKFxuICAgICAgICAgIDxGaWx0ZXJDb250YWluZXJcbiAgICAgICAgICAgIGZpbHRlclBvcHVwT3Blbj17ZmlsdGVyUG9wdXBPcGVufVxuICAgICAgICAgICAgZmV0Y2hUeXBlPXsnRXZlbnRGaWx0ZXInfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXZlbnRzLWNvbnRhaW5lciBzY3JvbGxiYXIgXCI+XG4gICAgICAgIHtsb2FkZXIoKX1cbiAgICAgICAgeyFpc0ZldGNoaW5nICYmXG4gICAgICAgICAgaXRlbXMubGVuZ3RoID09PSAwICYmXG4gICAgICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nICYmIChcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZXZlbnRzX19ibGFua3NsYXRlJ30+XG4gICAgICAgICAgICAgIDxpbWcgc3JjPXtOb0V2ZW50c0ltYWdlfSBhbHQ9XCJOb0V2ZW50c0ljb25cIiAvPlxuICAgICAgICAgICAgICA8aDI+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5ibGFua3NsYXRlLmhlYWRlcicpfTwvaDI+XG4gICAgICAgICAgICAgIDxwPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuYmxhbmtzbGF0ZS5ib2R5Jyl9PC9wPlxuICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17J2FwcGx5X2RlZmF1bHRfZmlsdGVyX2J1dHRvbid9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gYXBwbHlEZWZhdWx0RmlsdGVyKCl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmJsYW5rc2xhdGUuYnV0dG9uJyl9XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG4gICAgICAgIHtpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nICYmIChcbiAgICAgICAgICAgIDx1bCBjbGFzc05hbWU9XCJldmVudHMgXCI+XG4gICAgICAgICAgICAgIHtpdGVtcy5tYXAoKGV2ZW50OiBhbnkpID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXtldmVudC5pZH0gY2xhc3NOYW1lPVwiZXZlbnRcIiBkYXRhLWV2ZW50LWlkPXtldmVudC5pZH0+XG4gICAgICAgICAgICAgICAgICA8U2V2ZXJlRXZlbnRcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQ9e2V2ZW50fVxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbGljaz17aGFuZGxlRXZlbnRJdGVtQ2xpY2t9XG4gICAgICAgICAgICAgICAgICAgIG9uTW91c2VFbnRlckV2ZW50PXtvbk1vdXNlRW50ZXJFdmVudH1cbiAgICAgICAgICAgICAgICAgICAgb25Nb3VzZUxlYXZlRXZlbnQ9e29uTW91c2VMZWF2ZUV2ZW50fVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuY29uc3QgY29ubmVjdG9yID0gY29ubmVjdChtYXBTdGF0ZVRvUHJvcHMpO1xuZXhwb3J0IGRlZmF1bHQgY29ubmVjdG9yKEV2ZW50c0xpc3QpO1xuIl19
|
|
@@ -90,11 +90,13 @@ var Filter = function Filter(props) {
|
|
|
90
90
|
});
|
|
91
91
|
};
|
|
92
92
|
|
|
93
|
-
(0, _react.useEffect)(function () {
|
|
93
|
+
(0, _react.useEffect)(function () {
|
|
94
|
+
applyFilter();
|
|
95
|
+
}, []);
|
|
94
96
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
95
97
|
className: 'filter'
|
|
96
98
|
}, /*#__PURE__*/_react.default.createElement("ul", {
|
|
97
|
-
className: 'filter_items'
|
|
99
|
+
className: "filter_items ".concat(activeFilterCopy.filter_items.length === availableFilterItems.length ? 'filter_items--disabled' : '')
|
|
98
100
|
}, activeFilterCopy !== undefined && activeFilterCopy.filter_items !== undefined && activeFilterCopy.filter_items.length !== 0 && activeFilterCopy.filter_items.map(function (filter_item) {
|
|
99
101
|
return /*#__PURE__*/_react.default.createElement("li", {
|
|
100
102
|
className: 'filter_item',
|
|
@@ -135,4 +137,4 @@ var Filter = function Filter(props) {
|
|
|
135
137
|
|
|
136
138
|
var _default = Filter;
|
|
137
139
|
exports.default = _default;
|
|
138
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudHNfbGlzdC9GaWx0ZXIvRmlsdGVyLnRzeCJdLCJuYW1lcyI6WyJGaWx0ZXIiLCJwcm9wcyIsImFjdGl2ZUZpbHRlckNvcHkiLCJzZXRBY3RpdmVGaWx0ZXJDb3B5IiwicGFyc2VTZWxlY3RlZEl0ZW1zIiwiYXZhaWxhYmxlRmlsdGVySXRlbXMiLCJhcHBseUZpbHRlciIsImZpbHRlckl0ZW1JZCIsInNob3ciLCJzaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cCIsInNldFNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwIiwiY2FtZWxUb1NuYWtlQ2FzZSIsInN0ciIsInRvTG93ZXJDYXNlIiwic2xpY2UiLCJsZW5ndGgiLCJyZXBsYWNlIiwibGV0dGVyIiwidHJhbnNsYXRlRmlsdGVySXRlbVR5cGUiLCJmaWx0ZXJJdGVtVHlwZSIsImkxOG4iLCJ0IiwiYnVpbGRVbnNlbGVjdGVkSXRlbXMiLCJmaWx0ZXJfaXRlbSIsImZpbHRlcl9pdGVtcyIsInVuZGVmaW5lZCIsImZpbmQiLCJzZWxlY3RlZF9pdGVtIiwidHlwZSIsImFkZEZpbHRlckl0ZW0iLCJmaWx0ZXJJdGVtIiwicHVzaCIsImlkIiwiZmlsdGVyX2lkIiwiYXZhaWxhYmxlX29wdGlvbnMiLCJvcHRpb25zIiwic2VsZWN0ZWRfb3B0aW9ucyIsImFjdGl2ZUZpbHRlckR1cGxpY2F0ZSIsIk9iamVjdCIsImFzc2lnbiIsImhhbmRsZUFwcGx5RmlsdGVyIiwibWFwIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7Ozs7QUFHQTs7QUFDQTs7QUFDQTs7Ozs7O0FBVUEsSUFBTUEsTUFBd0IsR0FBRyxTQUEzQkEsTUFBMkIsQ0FBQ0MsS0FBRCxFQUFXO0FBQzFDLE1BQ0VDLGdCQURGLEdBTUlELEtBTkosQ0FDRUMsZ0JBREY7QUFBQSxNQUVFQyxtQkFGRixHQU1JRixLQU5KLENBRUVFLG1C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QXJCLEtBQWdDLENBQWhDLElBQ0NWLG9CQUFvQixDQUFDb0MsR0FBckIsQ0FBeUIsVUFBQ2xCLFdBQUQ7QUFBQSxXQUN2QkQsb0JBQW9CLENBQUNDLFdBQUQsQ0FERztBQUFBLEdBQXpCLENBRkosQ0FERixDQVJGLENBREYsQ0FqQkYsZUFvQ0U7QUFBSSxJQUFBLFNBQVMsRUFBRTtBQUFmLGtCQUNFO0FBQUssSUFBQSxTQUFTLEVBQUU7QUFBaEIsa0JBQ0U7QUFDRSxJQUFBLFNBQVMsRUFBRSxjQURiO0FBRUUsSUFBQSxPQUFPLEVBQUUsbUJBQU07QUFDYmlCLE1BQUFBLGlCQUFpQjtBQUNsQjtBQUpILEtBTUdwQixjQUFLQyxDQUFMLENBQU8sOEJBQVAsQ0FOSCxDQURGLENBREYsQ0FwQ0YsQ0FERixDQURGO0FBcURELENBcEhEOztlQXNIZXJCLE0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ0BrZW5zaG9vdWkvcmVhY3QtbXVsdGktc2VsZWN0L2Rpc3Qvc3R5bGUuY3NzJztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IERyb3Bkb3duIGZyb20gJ3JlYWN0LWJvb3RzdHJhcC9Ecm9wZG93bic7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBQbHVzSWNvbiB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvYWRkLnN2Zyc7XG5pbXBvcnQgeyBJRmlsdGVySXRlbSB9IGZyb20gJ3NyYy9zdG9yZS9maWx0ZXJzL0lGaWx0ZXJJdGVtJztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgJy4uLy4uL0V2ZW50c1N0eWxlLnNjc3MnO1xuaW1wb3J0IEZpbHRlckl0ZW0gZnJvbSAnLi9GaWx0ZXJJdGVtJztcblxudHlwZSBJUHJvcHMgPSB7XG4gIGFjdGl2ZUZpbHRlckNvcHk6IGFueTtcbiAgc2V0QWN0aXZlRmlsdGVyQ29weTogUmVhY3QuRGlzcGF0Y2g8YW55PjtcbiAgcGFyc2VTZWxlY3RlZEl0ZW1zOiBhbnk7XG4gIGF2YWlsYWJsZUZpbHRlckl0ZW1zOiBhbnk7XG4gIGFwcGx5RmlsdGVyOiBhbnk7XG59O1xuXG5jb25zdCBGaWx0ZXI6IFJlYWN0LkZDPElQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3Qge1xuICAgIGFjdGl2ZUZpbHRlckNvcHksXG4gICAgc2V0QWN0aXZlRmlsdGVyQ29weSxcbiAgICBwYXJzZVNlbGVjdGVkSXRlbXMsXG4gICAgYXZhaWxhYmxlRmlsdGVySXRlbXMsXG4gICAgYXBwbHlGaWx0ZXIsXG4gIH0gPSBwcm9wcztcbiAgY29uc3QgW3Nob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwLCBzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cF0gPSB1c2VTdGF0ZSh7XG4gICAgZmlsdGVySXRlbUlkOiBudWxsLFxuICAgIHNob3c6IGZhbHNlLFxuICB9KTtcbiAgY29uc3QgY2FtZWxUb1NuYWtlQ2FzZSA9IChzdHI6IHN0cmluZykgPT5cbiAgICBzdHJbMF0udG9Mb3dlckNhc2UoKSArXG4gICAgc3RyXG4gICAgICAuc2xpY2UoMSwgc3RyLmxlbmd0aClcbiAgICAgIC5yZXBsYWNlKC9bQS1aXS9nLCAobGV0dGVyKSA9PiBgXyR7bGV0dGVyLnRvTG93ZXJDYXNlKCl9YCk7XG4gIGNvbnN0IHRyYW5zbGF0ZUZpbHRlckl0ZW1UeXBlID0gKGZpbHRlckl0ZW1UeXBlOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gaTE4bi50KFxuICAgICAgYGV2ZW50c19vdmVydmlldy5maWx0ZXIuZmlsdGVyX3R5cGVzLiR7Y2FtZWxUb1NuYWtlQ2FzZShmaWx0ZXJJdGVtVHlwZSl9YCxcbiAgICApO1xuICB9O1xuICBjb25zdCBidWlsZFVuc2VsZWN0ZWRJdGVtcyA9IChmaWx0ZXJfaXRlbTogSUZpbHRlckl0ZW0pID0+IHtcbiAgICBpZiAoXG4gICAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcy5maW5kKFxuICAgICAgICAoc2VsZWN0ZWRfaXRlbTogSUZpbHRlckl0ZW0pID0+IHNlbGVjdGVkX2l0ZW0udHlwZSA9PT0gZmlsdGVyX2l0ZW0udHlwZSxcbiAgICAgICkgPT09IHVuZGVmaW5lZFxuICAgICkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPERyb3Bkb3duLkl0ZW1cbiAgICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgICAga2V5PXtmaWx0ZXJfaXRlbS50eXBlfVxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGFkZEZpbHRlckl0ZW0oZmlsdGVyX2l0ZW0sIGFjdGl2ZUZpbHRlckNvcHkpfVxuICAgICAgICA+XG4gICAgICAgICAge3RyYW5zbGF0ZUZpbHRlckl0ZW1UeXBlKGZpbHRlcl9pdGVtLnR5cGUpfVxuICAgICAgICA8L0Ryb3Bkb3duLkl0ZW0+XG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGFkZEZpbHRlckl0ZW0gPSAoZmlsdGVySXRlbTogYW55LCBhY3RpdmVGaWx0ZXJDb3B5OiBhbnkpID0+IHtcbiAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcy5wdXNoKHtcbiAgICAgIGlkOiBmaWx0ZXJJdGVtLnR5cGUsXG4gICAgICB0eXBlOiBmaWx0ZXJJdGVtLnR5cGUsXG4gICAgICBmaWx0ZXJfaWQ6IGFjdGl2ZUZpbHRlckNvcHkuaWQsXG4gICAgICBhdmFpbGFibGVfb3B0aW9uczogZmlsdGVySXRlbS5vcHRpb25zLFxuICAgICAgc2VsZWN0ZWRfb3B0aW9uczogW10sXG4gICAgfSk7XG5cbiAgICBsZXQgYWN0aXZlRmlsdGVyRHVwbGljYXRlID0gT2JqZWN0LmFzc2lnbih7fSwgYWN0aXZlRmlsdGVyQ29weSk7XG4gICAgc2V0QWN0aXZlRmlsdGVyQ29weShhY3RpdmVGaWx0ZXJEdXBsaWNhdGUpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUFwcGx5RmlsdGVyID0gKCkgPT4ge1xuICAgIGFwcGx5RmlsdGVyKCk7XG4gICAgc2V0U2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAoeyBmaWx0ZXJJdGVtSWQ6IG51bGwsIHNob3c6IGZhbHNlIH0pO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7fSwgW10pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9eydmaWx0ZXInfT5cbiAgICAgIDx1bCBjbGFzc05hbWU9eydmaWx0ZXJfaXRlbXMnfT5cbiAgICAgICAge2FjdGl2ZUZpbHRlckNvcHkgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgIGFjdGl2ZUZpbHRlckNvcHkuZmlsdGVyX2l0ZW1zICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcy5tYXAoKGZpbHRlcl9pdGVtOiBJRmlsdGVySXRlbSkgPT4gKFxuICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT17J2ZpbHRlcl9pdGVtJ30ga2V5PXtmaWx0ZXJfaXRlbS5pZH0+XG4gICAgICAgICAgICAgIDxGaWx0ZXJJdGVtXG4gICAgICAgICAgICAgICAgYWN0aXZlRmlsdGVyQ29weT17YWN0aXZlRmlsdGVyQ29weX1cbiAgICAgICAgICAgICAgICBzZXRBY3RpdmVGaWx0ZXJDb3B5PXtzZXRBY3RpdmVGaWx0ZXJDb3B5fVxuICAgICAgICAgICAgICAgIGZpbHRlcl9pdGVtPXtmaWx0ZXJfaXRlbX1cbiAgICAgICAgICAgICAgICBwYXJzZVNlbGVjdGVkSXRlbXM9e3BhcnNlU2VsZWN0ZWRJdGVtc31cbiAgICAgICAgICAgICAgICBhdmFpbGFibGVGaWx0ZXJJdGVtcz17YXZhaWxhYmxlRmlsdGVySXRlbXN9XG4gICAgICAgICAgICAgICAgc2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXA9e3Nob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwfVxuICAgICAgICAgICAgICAgIHNldFNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwPXtzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgKSl9XG4gICAgICAgIDxsaSBjbGFzc05hbWU9eydmaXhlZC1hY3Rpb24nfT5cbiAgICAgICAgICA8RHJvcGRvd24gY2xhc3NOYW1lPXsnYXZhaWxhYmxlLWZpbHRlci1pdGVtcyd9PlxuICAgICAgICAgICAgPERyb3Bkb3duLlRvZ2dsZSB2YXJpYW50PVwic3VjY2Vzc1wiIGlkPVwiZHJvcGRvd24tYmFzaWNcIj5cbiAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgPFBsdXNJY29uIGNsYXNzTmFtZT1cInBsdXMtaWNvblwiIGhlaWdodD1cIjE1cHhcIiB3aWR0aD1cIjE1cHhcIiAvPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuYWRkX2ZpbHRlcl9pdGVtJyl9XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvRHJvcGRvd24uVG9nZ2xlPlxuXG4gICAgICAgICAgICA8RHJvcGRvd24uTWVudT5cbiAgICAgICAgICAgICAgPHVsPlxuICAgICAgICAgICAgICAgIHthdmFpbGFibGVGaWx0ZXJJdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZUZpbHRlckl0ZW1zLm1hcCgoZmlsdGVyX2l0ZW06IElGaWx0ZXJJdGVtKSA9PlxuICAgICAgICAgICAgICAgICAgICBidWlsZFVuc2VsZWN0ZWRJdGVtcyhmaWx0ZXJfaXRlbSksXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgPC9Ecm9wZG93bi5NZW51PlxuICAgICAgICAgIDwvRHJvcGRvd24+XG4gICAgICAgIDwvbGk+XG4gICAgICAgIDxsaSBjbGFzc05hbWU9eydmaXhlZC1hY3Rpb24nfT5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2FwcGx5LWJ1dHRvbi1jb250YWluZXInfT5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17J2FwcGx5LWJ1dHRvbid9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICBoYW5kbGVBcHBseUZpbHRlcigpO1xuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmFwcGx5Jyl9XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgRmlsdGVyO1xuIl19
|
|
140
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudHNfbGlzdC9GaWx0ZXIvRmlsdGVyLnRzeCJdLCJuYW1lcyI6WyJGaWx0ZXIiLCJwcm9wcyIsImFjdGl2ZUZpbHRlckNvcHkiLCJzZXRBY3RpdmVGaWx0ZXJDb3B5IiwicGFyc2VTZWxlY3RlZEl0ZW1zIiwiYXZhaWxhYmxlRmlsdGVySXRlbXMiLCJhcHBseUZpbHRlciIsImZpbHRlckl0ZW1JZCIsInNob3ciLCJzaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cCIsInNldFNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwIiwiY2FtZWxUb1NuYWtlQ2FzZSIsInN0ciIsInRvTG93ZXJDYXNlIiwic2xpY2UiLCJsZW5ndGgiLCJyZXBsYWNlIiwibGV0dGVyIiwidHJhbnNsYXRlRmlsdGVySXRlbVR5cGUiLCJmaWx0ZXJJdGVtVHlwZSIsImkxOG4iLCJ0IiwiYnVpbGRVbnNlbGVjdGVkSXRlbXMiLCJmaWx0ZXJfaXRlbSIsImZpbHRlcl9pdGVtcyIsInVuZGVmaW5lZCIsImZpbmQiLCJzZWxlY3RlZF9pdGVtIiwidHlwZSIsImFkZEZpbHRlckl0ZW0iLCJmaWx0ZXJJdGVtIiwicHVzaCIsImlkIiwiZmlsdGVyX2lkIiwiYXZhaWxhYmxlX29wdGlvbnMiLCJvcHRpb25zIiwic2VsZWN0ZWRfb3B0aW9ucyIsImFjdGl2ZUZpbHRlckR1cGxpY2F0ZSIsIk9iamVjdCIsImFzc2lnbiIsImhhbmRsZUFwcGx5RmlsdGVyIiwibWFwIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7Ozs7QUFHQTs7QUFDQTs7QUFDQTs7Ozs7O0FBVUEsSUFBTUEsTUFBd0IsR0FBRyxTQUEzQkEsTUFBMkIsQ0FBQ0MsS0FBRCxFQUFXO0FBQzFDLE1BQ0VDLGdCQURGLEdBTUlELEtBTkosQ0FDRUMsZ0JBREY7QUFBQSxNQUVFQyxtQkFGRixHQU1JRixLQU5KLENBRUVFLG1C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R1UsY0FBS0MsQ0FBTCxDQUFPLHdDQUFQLENBRkgsQ0FERixDQURGLGVBUUUsNkJBQUMsaUJBQUQsQ0FBVSxJQUFWLHFCQUNFLHlDQUNHaEIsb0JBQW9CLENBQUNVLE1BQXJCLEtBQWdDLENBQWhDLElBQ0NWLG9CQUFvQixDQUFDb0MsR0FBckIsQ0FBeUIsVUFBQ2xCLFdBQUQ7QUFBQSxXQUN2QkQsb0JBQW9CLENBQUNDLFdBQUQsQ0FERztBQUFBLEdBQXpCLENBRkosQ0FERixDQVJGLENBREYsQ0F2QkYsZUEwQ0U7QUFBSSxJQUFBLFNBQVMsRUFBRTtBQUFmLGtCQUNFO0FBQUssSUFBQSxTQUFTLEVBQUU7QUFBaEIsa0JBQ0U7QUFDRSxJQUFBLFNBQVMsRUFBRSxjQURiO0FBRUUsSUFBQSxPQUFPLEVBQUUsbUJBQU07QUFDYmlCLE1BQUFBLGlCQUFpQjtBQUNsQjtBQUpILEtBTUdwQixjQUFLQyxDQUFMLENBQU8sOEJBQVAsQ0FOSCxDQURGLENBREYsQ0ExQ0YsQ0FERixDQURGO0FBMkRELENBNUhEOztlQThIZXJCLE0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ0BrZW5zaG9vdWkvcmVhY3QtbXVsdGktc2VsZWN0L2Rpc3Qvc3R5bGUuY3NzJztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IERyb3Bkb3duIGZyb20gJ3JlYWN0LWJvb3RzdHJhcC9Ecm9wZG93bic7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBQbHVzSWNvbiB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvYWRkLnN2Zyc7XG5pbXBvcnQgeyBJRmlsdGVySXRlbSB9IGZyb20gJ3NyYy9zdG9yZS9maWx0ZXJzL0lGaWx0ZXJJdGVtJztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgJy4uLy4uL0V2ZW50c1N0eWxlLnNjc3MnO1xuaW1wb3J0IEZpbHRlckl0ZW0gZnJvbSAnLi9GaWx0ZXJJdGVtJztcblxudHlwZSBJUHJvcHMgPSB7XG4gIGFjdGl2ZUZpbHRlckNvcHk6IGFueTtcbiAgc2V0QWN0aXZlRmlsdGVyQ29weTogUmVhY3QuRGlzcGF0Y2g8YW55PjtcbiAgcGFyc2VTZWxlY3RlZEl0ZW1zOiBhbnk7XG4gIGF2YWlsYWJsZUZpbHRlckl0ZW1zOiBhbnk7XG4gIGFwcGx5RmlsdGVyOiBhbnk7XG59O1xuXG5jb25zdCBGaWx0ZXI6IFJlYWN0LkZDPElQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3Qge1xuICAgIGFjdGl2ZUZpbHRlckNvcHksXG4gICAgc2V0QWN0aXZlRmlsdGVyQ29weSxcbiAgICBwYXJzZVNlbGVjdGVkSXRlbXMsXG4gICAgYXZhaWxhYmxlRmlsdGVySXRlbXMsXG4gICAgYXBwbHlGaWx0ZXIsXG4gIH0gPSBwcm9wcztcbiAgY29uc3QgW3Nob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwLCBzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cF0gPSB1c2VTdGF0ZSh7XG4gICAgZmlsdGVySXRlbUlkOiBudWxsLFxuICAgIHNob3c6IGZhbHNlLFxuICB9KTtcbiAgY29uc3QgY2FtZWxUb1NuYWtlQ2FzZSA9IChzdHI6IHN0cmluZykgPT5cbiAgICBzdHJbMF0udG9Mb3dlckNhc2UoKSArXG4gICAgc3RyXG4gICAgICAuc2xpY2UoMSwgc3RyLmxlbmd0aClcbiAgICAgIC5yZXBsYWNlKC9bQS1aXS9nLCAobGV0dGVyKSA9PiBgXyR7bGV0dGVyLnRvTG93ZXJDYXNlKCl9YCk7XG4gIGNvbnN0IHRyYW5zbGF0ZUZpbHRlckl0ZW1UeXBlID0gKGZpbHRlckl0ZW1UeXBlOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gaTE4bi50KFxuICAgICAgYGV2ZW50c19vdmVydmlldy5maWx0ZXIuZmlsdGVyX3R5cGVzLiR7Y2FtZWxUb1NuYWtlQ2FzZShmaWx0ZXJJdGVtVHlwZSl9YCxcbiAgICApO1xuICB9O1xuICBjb25zdCBidWlsZFVuc2VsZWN0ZWRJdGVtcyA9IChmaWx0ZXJfaXRlbTogSUZpbHRlckl0ZW0pID0+IHtcbiAgICBpZiAoXG4gICAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcy5maW5kKFxuICAgICAgICAoc2VsZWN0ZWRfaXRlbTogSUZpbHRlckl0ZW0pID0+IHNlbGVjdGVkX2l0ZW0udHlwZSA9PT0gZmlsdGVyX2l0ZW0udHlwZSxcbiAgICAgICkgPT09IHVuZGVmaW5lZFxuICAgICkge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPERyb3Bkb3duLkl0ZW1cbiAgICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgICAga2V5PXtmaWx0ZXJfaXRlbS50eXBlfVxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGFkZEZpbHRlckl0ZW0oZmlsdGVyX2l0ZW0sIGFjdGl2ZUZpbHRlckNvcHkpfVxuICAgICAgICA+XG4gICAgICAgICAge3RyYW5zbGF0ZUZpbHRlckl0ZW1UeXBlKGZpbHRlcl9pdGVtLnR5cGUpfVxuICAgICAgICA8L0Ryb3Bkb3duLkl0ZW0+XG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGFkZEZpbHRlckl0ZW0gPSAoZmlsdGVySXRlbTogYW55LCBhY3RpdmVGaWx0ZXJDb3B5OiBhbnkpID0+IHtcbiAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcy5wdXNoKHtcbiAgICAgIGlkOiBmaWx0ZXJJdGVtLnR5cGUsXG4gICAgICB0eXBlOiBmaWx0ZXJJdGVtLnR5cGUsXG4gICAgICBmaWx0ZXJfaWQ6IGFjdGl2ZUZpbHRlckNvcHkuaWQsXG4gICAgICBhdmFpbGFibGVfb3B0aW9uczogZmlsdGVySXRlbS5vcHRpb25zLFxuICAgICAgc2VsZWN0ZWRfb3B0aW9uczogW10sXG4gICAgfSk7XG5cbiAgICBsZXQgYWN0aXZlRmlsdGVyRHVwbGljYXRlID0gT2JqZWN0LmFzc2lnbih7fSwgYWN0aXZlRmlsdGVyQ29weSk7XG4gICAgc2V0QWN0aXZlRmlsdGVyQ29weShhY3RpdmVGaWx0ZXJEdXBsaWNhdGUpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUFwcGx5RmlsdGVyID0gKCkgPT4ge1xuICAgIGFwcGx5RmlsdGVyKCk7XG4gICAgc2V0U2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXAoeyBmaWx0ZXJJdGVtSWQ6IG51bGwsIHNob3c6IGZhbHNlIH0pO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgYXBwbHlGaWx0ZXIoKTtcbiAgfSwgW10pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9eydmaWx0ZXInfT5cbiAgICAgIDx1bFxuICAgICAgICBjbGFzc05hbWU9e2BmaWx0ZXJfaXRlbXMgJHtcbiAgICAgICAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcy5sZW5ndGggPT09IGF2YWlsYWJsZUZpbHRlckl0ZW1zLmxlbmd0aFxuICAgICAgICAgICAgPyAnZmlsdGVyX2l0ZW1zLS1kaXNhYmxlZCdcbiAgICAgICAgICAgIDogJydcbiAgICAgICAgfWB9XG4gICAgICA+XG4gICAgICAgIHthY3RpdmVGaWx0ZXJDb3B5ICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICBhY3RpdmVGaWx0ZXJDb3B5LmZpbHRlcl9pdGVtcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgYWN0aXZlRmlsdGVyQ29weS5maWx0ZXJfaXRlbXMubGVuZ3RoICE9PSAwICYmXG4gICAgICAgICAgYWN0aXZlRmlsdGVyQ29weS5maWx0ZXJfaXRlbXMubWFwKChmaWx0ZXJfaXRlbTogSUZpbHRlckl0ZW0pID0+IChcbiAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9eydmaWx0ZXJfaXRlbSd9IGtleT17ZmlsdGVyX2l0ZW0uaWR9PlxuICAgICAgICAgICAgICA8RmlsdGVySXRlbVxuICAgICAgICAgICAgICAgIGFjdGl2ZUZpbHRlckNvcHk9e2FjdGl2ZUZpbHRlckNvcHl9XG4gICAgICAgICAgICAgICAgc2V0QWN0aXZlRmlsdGVyQ29weT17c2V0QWN0aXZlRmlsdGVyQ29weX1cbiAgICAgICAgICAgICAgICBmaWx0ZXJfaXRlbT17ZmlsdGVyX2l0ZW19XG4gICAgICAgICAgICAgICAgcGFyc2VTZWxlY3RlZEl0ZW1zPXtwYXJzZVNlbGVjdGVkSXRlbXN9XG4gICAgICAgICAgICAgICAgYXZhaWxhYmxlRmlsdGVySXRlbXM9e2F2YWlsYWJsZUZpbHRlckl0ZW1zfVxuICAgICAgICAgICAgICAgIHNob3dGaWx0ZXJJdGVtT3B0aW9uc1BvcHVwPXtzaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cH1cbiAgICAgICAgICAgICAgICBzZXRTaG93RmlsdGVySXRlbU9wdGlvbnNQb3B1cD17c2V0U2hvd0ZpbHRlckl0ZW1PcHRpb25zUG9wdXB9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICkpfVxuICAgICAgICA8bGkgY2xhc3NOYW1lPXsnZml4ZWQtYWN0aW9uJ30+XG4gICAgICAgICAgPERyb3Bkb3duIGNsYXNzTmFtZT17J2F2YWlsYWJsZS1maWx0ZXItaXRlbXMnfT5cbiAgICAgICAgICAgIDxEcm9wZG93bi5Ub2dnbGUgdmFyaWFudD1cInN1Y2Nlc3NcIiBpZD1cImRyb3Bkb3duLWJhc2ljXCI+XG4gICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgIDxQbHVzSWNvbiBjbGFzc05hbWU9XCJwbHVzLWljb25cIiBoZWlnaHQ9XCIxNXB4XCIgd2lkdGg9XCIxNXB4XCIgLz5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmFkZF9maWx0ZXJfaXRlbScpfVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L0Ryb3Bkb3duLlRvZ2dsZT5cblxuICAgICAgICAgICAgPERyb3Bkb3duLk1lbnU+XG4gICAgICAgICAgICAgIDx1bD5cbiAgICAgICAgICAgICAgICB7YXZhaWxhYmxlRmlsdGVySXRlbXMubGVuZ3RoICE9PSAwICYmXG4gICAgICAgICAgICAgICAgICBhdmFpbGFibGVGaWx0ZXJJdGVtcy5tYXAoKGZpbHRlcl9pdGVtOiBJRmlsdGVySXRlbSkgPT5cbiAgICAgICAgICAgICAgICAgICAgYnVpbGRVbnNlbGVjdGVkSXRlbXMoZmlsdGVyX2l0ZW0pLFxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgIDwvRHJvcGRvd24uTWVudT5cbiAgICAgICAgICA8L0Ryb3Bkb3duPlxuICAgICAgICA8L2xpPlxuICAgICAgICA8bGkgY2xhc3NOYW1lPXsnZml4ZWQtYWN0aW9uJ30+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydhcHBseS1idXR0b24tY29udGFpbmVyJ30+XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICBjbGFzc05hbWU9eydhcHBseS1idXR0b24nfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgaGFuZGxlQXBwbHlGaWx0ZXIoKTtcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5hcHBseScpfVxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IEZpbHRlcjtcbiJdfQ==
|