@tricoteuses/assemblee 1.0.0-next.2 → 1.0.2
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/README.md +2 -0
- package/lib/api.js +23 -7
- package/lib/api.mjs +41 -0
- package/lib/bugs/acteur-00010/plugin.test.js +139 -33
- package/lib/bugs/acteur-00010/plugin.test.mjs +33 -0
- package/lib/bugs/acteur-00010.js +166 -24
- package/lib/bugs/acteur-00010.mjs +31 -0
- package/lib/bugs/agenda-00002/plugin.test.js +178 -52
- package/lib/bugs/agenda-00002/plugin.test.mjs +52 -0
- package/lib/bugs/agenda-00002.js +507 -143
- package/lib/bugs/agenda-00002.mjs +197 -0
- package/lib/bugs/agenda-00008/plugin.test.js +143 -31
- package/lib/bugs/agenda-00008/plugin.test.mjs +31 -0
- package/lib/bugs/agenda-00008.js +180 -25
- package/lib/bugs/agenda-00008.mjs +30 -0
- package/lib/bugs/agenda-00011/plugin.test.js +371 -156
- package/lib/bugs/agenda-00011/plugin.test.mjs +156 -0
- package/lib/bugs/agenda-00011.js +416 -117
- package/lib/bugs/agenda-00011.mjs +150 -0
- package/lib/bugs.js +591 -54
- package/lib/bugs.mjs +93 -0
- package/lib/cleaners/actes_legislatifs.js +149 -61
- package/lib/cleaners/actes_legislatifs.mjs +311 -0
- package/lib/cleaners/acteurs.js +255 -123
- package/lib/cleaners/acteurs.mjs +211 -0
- package/lib/cleaners/amendements.js +242 -117
- package/lib/cleaners/amendements.mjs +292 -0
- package/lib/cleaners/documents.js +147 -62
- package/lib/cleaners/documents.mjs +162 -0
- package/lib/cleaners/dossiers_legislatifs.js +132 -45
- package/lib/cleaners/dossiers_legislatifs.mjs +123 -0
- package/lib/cleaners/index.js +64 -8
- package/lib/cleaners/index.mjs +8 -0
- package/lib/cleaners/organes.js +54 -21
- package/lib/cleaners/organes.mjs +64 -0
- package/lib/cleaners/reunions.js +237 -127
- package/lib/cleaners/reunions.mjs +318 -0
- package/lib/cleaners/scrutins.js +261 -99
- package/lib/cleaners/scrutins.mjs +254 -0
- package/lib/cleaners/xml.js +81 -16
- package/lib/cleaners/xml.mjs +42 -0
- package/lib/datasets.js +284 -153
- package/lib/datasets.mjs +596 -0
- package/lib/dates.js +93 -34
- package/lib/dates.mjs +98 -0
- package/lib/dossiers_legislatifs.js +107 -33
- package/lib/dossiers_legislatifs.mjs +215 -0
- package/lib/file_systems.js +203 -35
- package/lib/file_systems.mjs +64 -0
- package/lib/git.js +139 -41
- package/lib/git.mjs +114 -0
- package/lib/index.js +310 -16
- package/lib/index.mjs +16 -0
- package/lib/inserters.js +355 -131
- package/lib/inserters.mjs +413 -0
- package/lib/loaders.js +900 -440
- package/lib/loaders.mjs +678 -0
- package/lib/organes.js +15 -5
- package/lib/organes.mjs +18 -0
- package/lib/parsers/documents.js +241 -89
- package/lib/parsers/documents.mjs +433 -0
- package/lib/parsers/index.js +36 -3
- package/lib/parsers/index.mjs +3 -0
- package/lib/parsers/recherche_amendements.js +616 -173
- package/lib/parsers/recherche_amendements.mjs +189 -0
- package/lib/raw_types/acteurs_et_organes.d.ts +36 -148
- package/lib/raw_types/acteurs_et_organes.js +228 -506
- package/lib/raw_types/acteurs_et_organes.mjs +1240 -0
- package/lib/raw_types/agendas.js +165 -75
- package/lib/raw_types/agendas.mjs +944 -0
- package/lib/raw_types/amendements.js +165 -77
- package/lib/raw_types/amendements.mjs +1040 -0
- package/lib/raw_types/dossiers_legislatifs.d.ts +1 -43
- package/lib/raw_types/dossiers_legislatifs.js +181 -143
- package/lib/raw_types/dossiers_legislatifs.mjs +1792 -0
- package/lib/raw_types/scrutins.js +144 -61
- package/lib/raw_types/scrutins.mjs +645 -0
- package/lib/scripts/bugs_helper.js +657 -155
- package/lib/scripts/bugs_helper.mjs +286 -0
- package/lib/scripts/clean_data.js +380 -145
- package/lib/scripts/clean_data.mjs +190 -0
- package/lib/scripts/clean_reorganized_data.js +627 -331
- package/lib/scripts/clean_reorganized_data.mjs +520 -0
- package/lib/scripts/diff_amendements.js +159 -73
- package/lib/scripts/diff_amendements.mjs +234 -0
- package/lib/scripts/document_dossiers_legislatifs.js +570 -288
- package/lib/scripts/document_dossiers_legislatifs.mjs +494 -0
- package/lib/scripts/get_today_reunions.js +37 -20
- package/lib/scripts/get_today_reunions.mjs +41 -0
- package/lib/scripts/merge_scrutins.js +121 -39
- package/lib/scripts/merge_scrutins.mjs +69 -0
- package/lib/scripts/parse_textes_lois.js +179 -125
- package/lib/scripts/parse_textes_lois.mjs +215 -0
- package/lib/scripts/raw_types_from_amendements.js +276 -77
- package/lib/scripts/raw_types_from_amendements.mjs +118 -0
- package/lib/scripts/reorganize_data.js +867 -446
- package/lib/scripts/reorganize_data.mjs +712 -0
- package/lib/scripts/retrieve_deputes_photos.js +378 -157
- package/lib/scripts/retrieve_deputes_photos.mjs +230 -0
- package/lib/scripts/retrieve_documents.js +648 -172
- package/lib/scripts/retrieve_documents.mjs +292 -0
- package/lib/scripts/retrieve_open_data.js +286 -85
- package/lib/scripts/retrieve_open_data.mjs +125 -0
- package/lib/scripts/retrieve_pending_amendments.js +302 -69
- package/lib/scripts/retrieve_pending_amendments.mjs +130 -0
- package/lib/scripts/retrieve_senateurs_photos.js +374 -198
- package/lib/scripts/retrieve_senateurs_photos.mjs +277 -0
- package/lib/scripts/retrieve_textes_lois.js +343 -89
- package/lib/scripts/retrieve_textes_lois.mjs +168 -0
- package/lib/scripts/test_load.js +30 -11
- package/lib/scripts/test_load.mjs +26 -0
- package/lib/scripts/test_load_big_files.js +30 -11
- package/lib/scripts/test_load_big_files.mjs +26 -0
- package/lib/scripts/validate_json.js +370 -120
- package/lib/scripts/validate_json.mjs +216 -0
- package/lib/shared_types/codes_actes.js +50 -15
- package/lib/shared_types/codes_actes.mjs +228 -0
- package/lib/strings.js +16 -3
- package/lib/strings.mjs +7 -0
- package/lib/types/acteurs_et_organes.js +156 -71
- package/lib/types/acteurs_et_organes.mjs +918 -0
- package/lib/types/agendas.js +154 -67
- package/lib/types/agendas.mjs +623 -0
- package/lib/types/amendements.js +166 -77
- package/lib/types/amendements.mjs +885 -0
- package/lib/types/dossiers_legislatifs.d.ts +1 -42
- package/lib/types/dossiers_legislatifs.js +182 -143
- package/lib/types/dossiers_legislatifs.mjs +1120 -0
- package/lib/types/legislatures.js +12 -3
- package/lib/types/legislatures.mjs +9 -0
- package/lib/types/scrutins.js +144 -61
- package/lib/types/scrutins.mjs +528 -0
- package/lib/urls.js +44 -25
- package/lib/urls.mjs +201 -0
- package/package.json +33 -12
package/lib/cleaners/scrutins.js
CHANGED
|
@@ -1,35 +1,103 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.array.slice.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/es.function.name.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/es.array.from.js");
|
|
8
|
+
|
|
9
|
+
require("core-js/modules/es.string.iterator.js");
|
|
10
|
+
|
|
11
|
+
require("core-js/modules/es.regexp.exec.js");
|
|
12
|
+
|
|
13
|
+
require("core-js/modules/es.symbol.js");
|
|
14
|
+
|
|
15
|
+
require("core-js/modules/es.symbol.description.js");
|
|
16
|
+
|
|
17
|
+
require("core-js/modules/es.symbol.iterator.js");
|
|
18
|
+
|
|
19
|
+
require("core-js/modules/es.array.iterator.js");
|
|
20
|
+
|
|
21
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
22
|
+
|
|
23
|
+
require("core-js/modules/es.object.define-property.js");
|
|
24
|
+
|
|
25
|
+
Object.defineProperty(exports, "__esModule", {
|
|
26
|
+
value: true
|
|
27
|
+
});
|
|
28
|
+
exports.cleanScrutin = cleanScrutin;
|
|
29
|
+
|
|
30
|
+
require("core-js/modules/es.array.is-array.js");
|
|
31
|
+
|
|
32
|
+
require("core-js/modules/es.array.filter.js");
|
|
33
|
+
|
|
34
|
+
require("core-js/modules/es.object.to-string.js");
|
|
35
|
+
|
|
36
|
+
require("core-js/modules/es.object.values.js");
|
|
37
|
+
|
|
38
|
+
var _assert = _interopRequireDefault(require("assert"));
|
|
39
|
+
|
|
40
|
+
var _xml = require("./xml");
|
|
41
|
+
|
|
42
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
43
|
+
|
|
44
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
45
|
+
|
|
46
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
47
|
+
|
|
48
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
49
|
+
|
|
50
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
51
|
+
|
|
52
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
|
|
53
|
+
|
|
54
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
55
|
+
|
|
56
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
3
57
|
|
|
4
58
|
function cleanDecompteNominatif(decompteNominatif) {
|
|
5
|
-
cleanXmlArtefacts(decompteNominatif);
|
|
6
|
-
|
|
59
|
+
(0, _xml.cleanXmlArtefacts)(decompteNominatif);
|
|
60
|
+
var nonVotants = decompteNominatif.nonVotants;
|
|
7
61
|
|
|
8
62
|
if (nonVotants !== undefined) {
|
|
9
63
|
if (typeof nonVotants === "string") {
|
|
10
|
-
|
|
64
|
+
_assert["default"].strictEqual(nonVotants, "0");
|
|
65
|
+
|
|
11
66
|
nonVotants = [];
|
|
12
67
|
} else if (!Array.isArray(nonVotants)) {
|
|
13
|
-
|
|
68
|
+
(0, _assert["default"])(nonVotants);
|
|
14
69
|
nonVotants = [nonVotants];
|
|
15
70
|
}
|
|
16
71
|
|
|
17
|
-
|
|
72
|
+
var nonVotantsArray = nonVotants;
|
|
18
73
|
nonVotants = [];
|
|
19
74
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
75
|
+
var _iterator = _createForOfIteratorHelper(nonVotantsArray),
|
|
76
|
+
_step;
|
|
77
|
+
|
|
78
|
+
try {
|
|
79
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
80
|
+
var nonVotant = _step.value;
|
|
81
|
+
|
|
82
|
+
if (nonVotant === null) {
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
24
85
|
|
|
25
|
-
|
|
86
|
+
nonVotant = nonVotant.votant;
|
|
26
87
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
88
|
+
if (Array.isArray(nonVotant)) {
|
|
89
|
+
var _nonVotants;
|
|
90
|
+
|
|
91
|
+
(_nonVotants = nonVotants).push.apply(_nonVotants, _toConsumableArray(nonVotant));
|
|
92
|
+
} else {
|
|
93
|
+
(0, _assert["default"])(nonVotant);
|
|
94
|
+
nonVotants.push(nonVotant);
|
|
95
|
+
}
|
|
32
96
|
}
|
|
97
|
+
} catch (err) {
|
|
98
|
+
_iterator.e(err);
|
|
99
|
+
} finally {
|
|
100
|
+
_iterator.f();
|
|
33
101
|
}
|
|
34
102
|
|
|
35
103
|
if (nonVotants.length === 0) {
|
|
@@ -37,25 +105,35 @@ function cleanDecompteNominatif(decompteNominatif) {
|
|
|
37
105
|
} else {
|
|
38
106
|
decompteNominatif.nonVotants = nonVotants;
|
|
39
107
|
|
|
40
|
-
|
|
41
|
-
|
|
108
|
+
var _iterator2 = _createForOfIteratorHelper(nonVotants),
|
|
109
|
+
_step2;
|
|
110
|
+
|
|
111
|
+
try {
|
|
112
|
+
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
113
|
+
var votant = _step2.value;
|
|
114
|
+
cleanVotant(votant);
|
|
115
|
+
}
|
|
116
|
+
} catch (err) {
|
|
117
|
+
_iterator2.e(err);
|
|
118
|
+
} finally {
|
|
119
|
+
_iterator2.f();
|
|
42
120
|
}
|
|
43
121
|
}
|
|
44
122
|
}
|
|
45
123
|
|
|
46
|
-
|
|
124
|
+
var pour = decompteNominatif.pour;
|
|
47
125
|
|
|
48
126
|
if (pour === undefined) {
|
|
49
127
|
pour = decompteNominatif.pours;
|
|
50
128
|
} else {
|
|
51
|
-
|
|
129
|
+
_assert["default"].strictEqual(decompteNominatif.pours, undefined);
|
|
52
130
|
}
|
|
53
131
|
|
|
54
132
|
if (pour !== undefined) {
|
|
55
133
|
pour = pour.votant;
|
|
56
134
|
|
|
57
135
|
if (!Array.isArray(pour)) {
|
|
58
|
-
|
|
136
|
+
(0, _assert["default"])(pour);
|
|
59
137
|
pour = [pour];
|
|
60
138
|
}
|
|
61
139
|
|
|
@@ -64,27 +142,37 @@ function cleanDecompteNominatif(decompteNominatif) {
|
|
|
64
142
|
} else {
|
|
65
143
|
decompteNominatif.pour = pour;
|
|
66
144
|
|
|
67
|
-
|
|
68
|
-
|
|
145
|
+
var _iterator3 = _createForOfIteratorHelper(pour),
|
|
146
|
+
_step3;
|
|
147
|
+
|
|
148
|
+
try {
|
|
149
|
+
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
150
|
+
var _votant = _step3.value;
|
|
151
|
+
cleanVotant(_votant);
|
|
152
|
+
}
|
|
153
|
+
} catch (err) {
|
|
154
|
+
_iterator3.e(err);
|
|
155
|
+
} finally {
|
|
156
|
+
_iterator3.f();
|
|
69
157
|
}
|
|
70
158
|
}
|
|
71
159
|
|
|
72
160
|
delete decompteNominatif.pours;
|
|
73
161
|
}
|
|
74
162
|
|
|
75
|
-
|
|
163
|
+
var contre = decompteNominatif.contre;
|
|
76
164
|
|
|
77
165
|
if (contre === undefined) {
|
|
78
166
|
contre = decompteNominatif.contres;
|
|
79
167
|
} else {
|
|
80
|
-
|
|
168
|
+
_assert["default"].strictEqual(decompteNominatif.contres, undefined);
|
|
81
169
|
}
|
|
82
170
|
|
|
83
171
|
if (contre !== undefined) {
|
|
84
172
|
contre = contre.votant;
|
|
85
173
|
|
|
86
174
|
if (!Array.isArray(contre)) {
|
|
87
|
-
|
|
175
|
+
(0, _assert["default"])(contre);
|
|
88
176
|
contre = [contre];
|
|
89
177
|
}
|
|
90
178
|
|
|
@@ -93,37 +181,60 @@ function cleanDecompteNominatif(decompteNominatif) {
|
|
|
93
181
|
} else {
|
|
94
182
|
decompteNominatif.contre = contre;
|
|
95
183
|
|
|
96
|
-
|
|
97
|
-
|
|
184
|
+
var _iterator4 = _createForOfIteratorHelper(contre),
|
|
185
|
+
_step4;
|
|
186
|
+
|
|
187
|
+
try {
|
|
188
|
+
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
189
|
+
var _votant2 = _step4.value;
|
|
190
|
+
cleanVotant(_votant2);
|
|
191
|
+
}
|
|
192
|
+
} catch (err) {
|
|
193
|
+
_iterator4.e(err);
|
|
194
|
+
} finally {
|
|
195
|
+
_iterator4.f();
|
|
98
196
|
}
|
|
99
197
|
}
|
|
100
198
|
|
|
101
199
|
delete decompteNominatif.contres;
|
|
102
200
|
}
|
|
103
201
|
|
|
104
|
-
|
|
202
|
+
var abstentions = decompteNominatif.abstentions;
|
|
105
203
|
|
|
106
204
|
if (abstentions !== undefined) {
|
|
107
205
|
if (!Array.isArray(abstentions)) {
|
|
108
206
|
abstentions = [abstentions];
|
|
109
207
|
}
|
|
110
208
|
|
|
111
|
-
|
|
209
|
+
var abstentionsArray = abstentions;
|
|
112
210
|
abstentions = [];
|
|
113
211
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
212
|
+
var _iterator5 = _createForOfIteratorHelper(abstentionsArray),
|
|
213
|
+
_step5;
|
|
214
|
+
|
|
215
|
+
try {
|
|
216
|
+
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
217
|
+
var absentionsItem = _step5.value;
|
|
218
|
+
|
|
219
|
+
if (absentionsItem === null) {
|
|
220
|
+
continue;
|
|
221
|
+
}
|
|
118
222
|
|
|
119
|
-
|
|
223
|
+
absentionsItem = absentionsItem.votant;
|
|
120
224
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
225
|
+
if (Array.isArray(absentionsItem)) {
|
|
226
|
+
var _abstentions;
|
|
227
|
+
|
|
228
|
+
(_abstentions = abstentions).push.apply(_abstentions, _toConsumableArray(absentionsItem));
|
|
229
|
+
} else {
|
|
230
|
+
(0, _assert["default"])(absentionsItem);
|
|
231
|
+
abstentions.push(absentionsItem);
|
|
232
|
+
}
|
|
126
233
|
}
|
|
234
|
+
} catch (err) {
|
|
235
|
+
_iterator5.e(err);
|
|
236
|
+
} finally {
|
|
237
|
+
_iterator5.f();
|
|
127
238
|
}
|
|
128
239
|
|
|
129
240
|
if (abstentions.length === 0) {
|
|
@@ -131,35 +242,58 @@ function cleanDecompteNominatif(decompteNominatif) {
|
|
|
131
242
|
} else {
|
|
132
243
|
decompteNominatif.abstentions = abstentions;
|
|
133
244
|
|
|
134
|
-
|
|
135
|
-
|
|
245
|
+
var _iterator6 = _createForOfIteratorHelper(abstentions),
|
|
246
|
+
_step6;
|
|
247
|
+
|
|
248
|
+
try {
|
|
249
|
+
for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
|
|
250
|
+
var _votant3 = _step6.value;
|
|
251
|
+
cleanVotant(_votant3);
|
|
252
|
+
}
|
|
253
|
+
} catch (err) {
|
|
254
|
+
_iterator6.e(err);
|
|
255
|
+
} finally {
|
|
256
|
+
_iterator6.f();
|
|
136
257
|
}
|
|
137
258
|
}
|
|
138
259
|
}
|
|
139
260
|
|
|
140
|
-
|
|
261
|
+
var nonVotantsVolontaires = decompteNominatif.nonVotantsVolontaires;
|
|
141
262
|
|
|
142
263
|
if (nonVotantsVolontaires !== undefined) {
|
|
143
264
|
if (!Array.isArray(nonVotantsVolontaires)) {
|
|
144
265
|
nonVotantsVolontaires = [nonVotantsVolontaires];
|
|
145
266
|
}
|
|
146
267
|
|
|
147
|
-
|
|
268
|
+
var nonVotantsVolontairesArray = nonVotantsVolontaires;
|
|
148
269
|
nonVotantsVolontaires = [];
|
|
149
270
|
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
271
|
+
var _iterator7 = _createForOfIteratorHelper(nonVotantsVolontairesArray),
|
|
272
|
+
_step7;
|
|
273
|
+
|
|
274
|
+
try {
|
|
275
|
+
for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
|
|
276
|
+
var _absentionsItem = _step7.value;
|
|
277
|
+
|
|
278
|
+
if (_absentionsItem === null) {
|
|
279
|
+
continue;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
_absentionsItem = _absentionsItem.votant;
|
|
154
283
|
|
|
155
|
-
|
|
284
|
+
if (Array.isArray(_absentionsItem)) {
|
|
285
|
+
var _nonVotantsVolontaire;
|
|
156
286
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
287
|
+
(_nonVotantsVolontaire = nonVotantsVolontaires).push.apply(_nonVotantsVolontaire, _toConsumableArray(_absentionsItem));
|
|
288
|
+
} else {
|
|
289
|
+
(0, _assert["default"])(_absentionsItem);
|
|
290
|
+
nonVotantsVolontaires.push(_absentionsItem);
|
|
291
|
+
}
|
|
162
292
|
}
|
|
293
|
+
} catch (err) {
|
|
294
|
+
_iterator7.e(err);
|
|
295
|
+
} finally {
|
|
296
|
+
_iterator7.f();
|
|
163
297
|
}
|
|
164
298
|
|
|
165
299
|
if (nonVotantsVolontaires.length === 0) {
|
|
@@ -167,88 +301,116 @@ function cleanDecompteNominatif(decompteNominatif) {
|
|
|
167
301
|
} else {
|
|
168
302
|
decompteNominatif.nonVotantsVolontaires = nonVotantsVolontaires;
|
|
169
303
|
|
|
170
|
-
|
|
171
|
-
|
|
304
|
+
var _iterator8 = _createForOfIteratorHelper(nonVotantsVolontaires),
|
|
305
|
+
_step8;
|
|
306
|
+
|
|
307
|
+
try {
|
|
308
|
+
for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) {
|
|
309
|
+
var _votant4 = _step8.value;
|
|
310
|
+
cleanVotant(_votant4);
|
|
311
|
+
}
|
|
312
|
+
} catch (err) {
|
|
313
|
+
_iterator8.e(err);
|
|
314
|
+
} finally {
|
|
315
|
+
_iterator8.f();
|
|
172
316
|
}
|
|
173
317
|
}
|
|
174
318
|
}
|
|
175
319
|
}
|
|
176
320
|
|
|
177
|
-
|
|
178
|
-
cleanXmlArtefacts(scrutin);
|
|
179
|
-
|
|
180
|
-
|
|
321
|
+
function cleanScrutin(scrutin) {
|
|
322
|
+
(0, _xml.cleanXmlArtefacts)(scrutin);
|
|
323
|
+
var demandeur = scrutin.demandeur;
|
|
324
|
+
(0, _assert["default"])(demandeur);
|
|
181
325
|
{
|
|
182
|
-
cleanXmlArtefacts(demandeur);
|
|
183
|
-
|
|
326
|
+
(0, _xml.cleanXmlArtefacts)(demandeur);
|
|
327
|
+
|
|
328
|
+
_assert["default"].strictEqual(demandeur.referenceLegislative, undefined);
|
|
184
329
|
}
|
|
185
|
-
|
|
186
|
-
|
|
330
|
+
var objet = scrutin.objet;
|
|
331
|
+
(0, _assert["default"])(objet);
|
|
187
332
|
{
|
|
188
|
-
cleanXmlArtefacts(objet);
|
|
189
|
-
|
|
333
|
+
(0, _xml.cleanXmlArtefacts)(objet);
|
|
334
|
+
|
|
335
|
+
_assert["default"].strictEqual(objet.referenceLegislative, undefined);
|
|
190
336
|
}
|
|
191
|
-
|
|
192
|
-
|
|
337
|
+
var ventilationVotes = scrutin.ventilationVotes;
|
|
338
|
+
(0, _assert["default"])(ventilationVotes);
|
|
193
339
|
{
|
|
194
340
|
ventilationVotes = ventilationVotes.organe;
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
341
|
+
(0, _assert["default"])(ventilationVotes);
|
|
342
|
+
var groupes = ventilationVotes.groupes;
|
|
343
|
+
(0, _assert["default"])(groupes);
|
|
198
344
|
{
|
|
199
345
|
groupes = groupes.groupe;
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
assert(vote);
|
|
205
|
-
{
|
|
206
|
-
const decompteVoix = vote.decompteVoix;
|
|
207
|
-
assert(decompteVoix);
|
|
208
|
-
{
|
|
209
|
-
if (decompteVoix.abstention !== undefined) {
|
|
210
|
-
assert.strictEqual(decompteVoix.abstentions, undefined);
|
|
211
|
-
decompteVoix.abstentions = decompteVoix.abstention;
|
|
212
|
-
delete decompteVoix.abstention;
|
|
213
|
-
}
|
|
346
|
+
(0, _assert["default"])(Array.isArray(groupes));
|
|
347
|
+
|
|
348
|
+
var _iterator9 = _createForOfIteratorHelper(groupes),
|
|
349
|
+
_step9;
|
|
214
350
|
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
351
|
+
try {
|
|
352
|
+
for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) {
|
|
353
|
+
var groupe = _step9.value;
|
|
354
|
+
var vote = groupe.vote;
|
|
355
|
+
(0, _assert["default"])(vote);
|
|
356
|
+
{
|
|
357
|
+
var decompteVoix = vote.decompteVoix;
|
|
358
|
+
(0, _assert["default"])(decompteVoix);
|
|
359
|
+
{
|
|
360
|
+
if (decompteVoix.abstention !== undefined) {
|
|
361
|
+
_assert["default"].strictEqual(decompteVoix.abstentions, undefined);
|
|
362
|
+
|
|
363
|
+
decompteVoix.abstentions = decompteVoix.abstention;
|
|
364
|
+
delete decompteVoix.abstention;
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
if (decompteVoix.nonVotant !== undefined) {
|
|
368
|
+
_assert["default"].strictEqual(decompteVoix.nonVotants, undefined);
|
|
369
|
+
|
|
370
|
+
decompteVoix.nonVotants = decompteVoix.nonVotant;
|
|
371
|
+
delete decompteVoix.nonVotant;
|
|
372
|
+
}
|
|
219
373
|
}
|
|
374
|
+
var decompteNominatif = vote.decompteNominatif;
|
|
375
|
+
(0, _assert["default"])(decompteNominatif);
|
|
376
|
+
cleanDecompteNominatif(decompteNominatif);
|
|
220
377
|
}
|
|
221
|
-
const decompteNominatif = vote.decompteNominatif;
|
|
222
|
-
assert(decompteNominatif);
|
|
223
|
-
cleanDecompteNominatif(decompteNominatif);
|
|
224
378
|
}
|
|
379
|
+
} catch (err) {
|
|
380
|
+
_iterator9.e(err);
|
|
381
|
+
} finally {
|
|
382
|
+
_iterator9.f();
|
|
225
383
|
}
|
|
226
384
|
|
|
227
385
|
ventilationVotes.groupes = groupes;
|
|
228
386
|
}
|
|
229
387
|
scrutin.ventilationVotes = ventilationVotes;
|
|
230
388
|
}
|
|
231
|
-
|
|
389
|
+
var miseAuPoint = scrutin.miseAuPoint;
|
|
232
390
|
|
|
233
391
|
if (miseAuPoint !== undefined) {
|
|
234
392
|
cleanDecompteNominatif(miseAuPoint);
|
|
235
|
-
|
|
393
|
+
var dysfonctionnement = miseAuPoint.dysfonctionnement;
|
|
236
394
|
|
|
237
395
|
if (dysfonctionnement !== undefined) {
|
|
238
396
|
cleanDecompteNominatif(dysfonctionnement);
|
|
239
397
|
|
|
240
|
-
if (Object.values(dysfonctionnement).filter(
|
|
398
|
+
if (Object.values(dysfonctionnement).filter(function (value) {
|
|
399
|
+
return value !== undefined;
|
|
400
|
+
}).length === 0) {
|
|
241
401
|
delete miseAuPoint.dysfonctionnement;
|
|
242
402
|
}
|
|
243
403
|
}
|
|
244
404
|
|
|
245
|
-
if (Object.values(miseAuPoint).filter(
|
|
405
|
+
if (Object.values(miseAuPoint).filter(function (value) {
|
|
406
|
+
return value !== undefined;
|
|
407
|
+
}).length === 0) {
|
|
246
408
|
delete scrutin.miseAuPoint;
|
|
247
409
|
}
|
|
248
410
|
}
|
|
249
411
|
}
|
|
250
412
|
|
|
251
413
|
function cleanVotant(votant) {
|
|
252
|
-
cleanBooleanAttribute(votant, "parDelegation");
|
|
414
|
+
(0, _xml.cleanBooleanAttribute)(votant, "parDelegation");
|
|
253
415
|
}
|
|
254
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhc3NlcnQiLCJjbGVhbkJvb2xlYW5BdHRyaWJ1dGUiLCJjbGVhblhtbEFydGVmYWN0cyIsImNsZWFuRGVjb21wdGVOb21pbmF0aWYiLCJkZWNvbXB0ZU5vbWluYXRpZiIsIm5vblZvdGFudHMiLCJ1bmRlZmluZWQiLCJzdHJpY3RFcXVhbCIsIkFycmF5IiwiaXNBcnJheSIsIm5vblZvdGFudHNBcnJheSIsIm5vblZvdGFudCIsInZvdGFudCIsInB1c2giLCJsZW5ndGgiLCJjbGVhblZvdGFudCIsInBvdXIiLCJwb3VycyIsImNvbnRyZSIsImNvbnRyZXMiLCJhYnN0ZW50aW9ucyIsImFic3RlbnRpb25zQXJyYXkiLCJhYnNlbnRpb25zSXRlbSIsIm5vblZvdGFudHNWb2xvbnRhaXJlcyIsIm5vblZvdGFudHNWb2xvbnRhaXJlc0FycmF5IiwiY2xlYW5TY3J1dGluIiwic2NydXRpbiIsImRlbWFuZGV1ciIsInJlZmVyZW5jZUxlZ2lzbGF0aXZlIiwib2JqZXQiLCJ2ZW50aWxhdGlvblZvdGVzIiwib3JnYW5lIiwiZ3JvdXBlcyIsImdyb3VwZSIsInZvdGUiLCJkZWNvbXB0ZVZvaXgiLCJhYnN0ZW50aW9uIiwibWlzZUF1UG9pbnQiLCJkeXNmb25jdGlvbm5lbWVudCIsIk9iamVjdCIsInZhbHVlcyIsImZpbHRlciIsInZhbHVlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsZWFuZXJzL3NjcnV0aW5zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSBcImFzc2VydFwiXG5cbmltcG9ydCB7IGNsZWFuQm9vbGVhbkF0dHJpYnV0ZSwgY2xlYW5YbWxBcnRlZmFjdHMgfSBmcm9tIFwiLi94bWxcIlxuXG5mdW5jdGlvbiBjbGVhbkRlY29tcHRlTm9taW5hdGlmKGRlY29tcHRlTm9taW5hdGlmOiBhbnkpIHtcbiAgY2xlYW5YbWxBcnRlZmFjdHMoZGVjb21wdGVOb21pbmF0aWYpXG5cbiAgbGV0IG5vblZvdGFudHMgPSBkZWNvbXB0ZU5vbWluYXRpZi5ub25Wb3RhbnRzXG4gIGlmIChub25Wb3RhbnRzICE9PSB1bmRlZmluZWQpIHtcbiAgICBpZiAodHlwZW9mIG5vblZvdGFudHMgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChub25Wb3RhbnRzLCBcIjBcIilcbiAgICAgIG5vblZvdGFudHMgPSBbXVxuICAgIH0gZWxzZSBpZiAoIUFycmF5LmlzQXJyYXkobm9uVm90YW50cykpIHtcbiAgICAgIGFzc2VydChub25Wb3RhbnRzKVxuICAgICAgbm9uVm90YW50cyA9IFtub25Wb3RhbnRzXVxuICAgIH1cbiAgICBjb25zdCBub25Wb3RhbnRzQXJyYXkgPSBub25Wb3RhbnRzXG4gICAgbm9uVm90YW50cyA9IFtdXG4gICAgZm9yIChsZXQgbm9uVm90YW50IG9mIG5vblZvdGFudHNBcnJheSkge1xuICAgICAgaWYgKG5vblZvdGFudCA9PT0gbnVsbCkge1xuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgICAgbm9uVm90YW50ID0gbm9uVm90YW50LnZvdGFudFxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkobm9uVm90YW50KSkge1xuICAgICAgICBub25Wb3RhbnRzLnB1c2goLi4ubm9uVm90YW50KVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYXNzZXJ0KG5vblZvdGFudClcbiAgICAgICAgbm9uVm90YW50cy5wdXNoKG5vblZvdGFudClcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKG5vblZvdGFudHMubGVuZ3RoID09PSAwKSB7XG4gICAgICBkZWxldGUgZGVjb21wdGVOb21pbmF0aWYubm9uVm90YW50c1xuICAgIH0gZWxzZSB7XG4gICAgICBkZWNvbXB0ZU5vbWluYXRpZi5ub25Wb3RhbnRzID0gbm9uVm90YW50c1xuICAgICAgZm9yIChjb25zdCB2b3RhbnQgb2Ygbm9uVm90YW50cykge1xuICAgICAgICBjbGVhblZvdGFudCh2b3RhbnQpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbGV0IHBvdXIgPSBkZWNvbXB0ZU5vbWluYXRpZi5wb3VyXG4gIGlmIChwb3VyID09PSB1bmRlZmluZWQpIHtcbiAgICBwb3VyID0gZGVjb21wdGVOb21pbmF0aWYucG91cnNcbiAgfSBlbHNlIHtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZGVjb21wdGVOb21pbmF0aWYucG91cnMsIHVuZGVmaW5lZClcbiAgfVxuICBpZiAocG91ciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcG91ciA9IHBvdXIudm90YW50XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHBvdXIpKSB7XG4gICAgICBhc3NlcnQocG91cilcbiAgICAgIHBvdXIgPSBbcG91cl1cbiAgICB9XG4gICAgaWYgKHBvdXIubGVuZ3RoID09PSAwKSB7XG4gICAgICBkZWxldGUgZGVjb21wdGVOb21pbmF0aWYucG91clxuICAgIH0gZWxzZSB7XG4gICAgICBkZWNvbXB0ZU5vbWluYXRpZi5wb3VyID0gcG91clxuICAgICAgZm9yIChjb25zdCB2b3RhbnQgb2YgcG91cikge1xuICAgICAgICBjbGVhblZvdGFudCh2b3RhbnQpXG4gICAgICB9XG4gICAgfVxuICAgIGRlbGV0ZSBkZWNvbXB0ZU5vbWluYXRpZi5wb3Vyc1xuICB9XG5cbiAgbGV0IGNvbnRyZSA9IGRlY29tcHRlTm9taW5hdGlmLmNvbnRyZVxuICBpZiAoY29udHJlID09PSB1bmRlZmluZWQpIHtcbiAgICBjb250cmUgPSBkZWNvbXB0ZU5vbWluYXRpZi5jb250cmVzXG4gIH0gZWxzZSB7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKGRlY29tcHRlTm9taW5hdGlmLmNvbnRyZXMsIHVuZGVmaW5lZClcbiAgfVxuICBpZiAoY29udHJlICE9PSB1bmRlZmluZWQpIHtcbiAgICBjb250cmUgPSBjb250cmUudm90YW50XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KGNvbnRyZSkpIHtcbiAgICAgIGFzc2VydChjb250cmUpXG4gICAgICBjb250cmUgPSBbY29udHJlXVxuICAgIH1cbiAgICBpZiAoY29udHJlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgZGVsZXRlIGRlY29tcHRlTm9taW5hdGlmLmNvbnRyZVxuICAgIH0gZWxzZSB7XG4gICAgICBkZWNvbXB0ZU5vbWluYXRpZi5jb250cmUgPSBjb250cmVcbiAgICAgIGZvciAoY29uc3Qgdm90YW50IG9mIGNvbnRyZSkge1xuICAgICAgICBjbGVhblZvdGFudCh2b3RhbnQpXG4gICAgICB9XG4gICAgfVxuICAgIGRlbGV0ZSBkZWNvbXB0ZU5vbWluYXRpZi5jb250cmVzXG4gIH1cblxuICBsZXQgYWJzdGVudGlvbnMgPSBkZWNvbXB0ZU5vbWluYXRpZi5hYnN0ZW50aW9uc1xuICBpZiAoYWJzdGVudGlvbnMgIT09IHVuZGVmaW5lZCkge1xuICAgIGlmICghQXJyYXkuaXNBcnJheShhYnN0ZW50aW9ucykpIHtcbiAgICAgIGFic3RlbnRpb25zID0gW2Fic3RlbnRpb25zXVxuICAgIH1cbiAgICBjb25zdCBhYnN0ZW50aW9uc0FycmF5ID0gYWJzdGVudGlvbnNcbiAgICBhYnN0ZW50aW9ucyA9IFtdXG4gICAgZm9yIChsZXQgYWJzZW50aW9uc0l0ZW0gb2YgYWJzdGVudGlvbnNBcnJheSkge1xuICAgICAgaWYgKGFic2VudGlvbnNJdGVtID09PSBudWxsKSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgICBhYnNlbnRpb25zSXRlbSA9IGFic2VudGlvbnNJdGVtLnZvdGFudFxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYWJzZW50aW9uc0l0ZW0pKSB7XG4gICAgICAgIGFic3RlbnRpb25zLnB1c2goLi4uYWJzZW50aW9uc0l0ZW0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhc3NlcnQoYWJzZW50aW9uc0l0ZW0pXG4gICAgICAgIGFic3RlbnRpb25zLnB1c2goYWJzZW50aW9uc0l0ZW0pXG4gICAgICB9XG4gICAgfVxuICAgIGlmIChhYnN0ZW50aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIGRlbGV0ZSBkZWNvbXB0ZU5vbWluYXRpZi5hYnN0ZW50aW9uc1xuICAgIH0gZWxzZSB7XG4gICAgICBkZWNvbXB0ZU5vbWluYXRpZi5hYnN0ZW50aW9ucyA9IGFic3RlbnRpb25zXG4gICAgICBmb3IgKGNvbnN0IHZvdGFudCBvZiBhYnN0ZW50aW9ucykge1xuICAgICAgICBjbGVhblZvdGFudCh2b3RhbnQpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbGV0IG5vblZvdGFudHNWb2xvbnRhaXJlcyA9IGRlY29tcHRlTm9taW5hdGlmLm5vblZvdGFudHNWb2xvbnRhaXJlc1xuICBpZiAobm9uVm90YW50c1ZvbG9udGFpcmVzICE9PSB1bmRlZmluZWQpIHtcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkobm9uVm90YW50c1ZvbG9udGFpcmVzKSkge1xuICAgICAgbm9uVm90YW50c1ZvbG9udGFpcmVzID0gW25vblZvdGFudHNWb2xvbnRhaXJlc11cbiAgICB9XG4gICAgY29uc3Qgbm9uVm90YW50c1ZvbG9udGFpcmVzQXJyYXkgPSBub25Wb3RhbnRzVm9sb250YWlyZXNcbiAgICBub25Wb3RhbnRzVm9sb250YWlyZXMgPSBbXVxuICAgIGZvciAobGV0IGFic2VudGlvbnNJdGVtIG9mIG5vblZvdGFudHNWb2xvbnRhaXJlc0FycmF5KSB7XG4gICAgICBpZiAoYWJzZW50aW9uc0l0ZW0gPT09IG51bGwpIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGFic2VudGlvbnNJdGVtID0gYWJzZW50aW9uc0l0ZW0udm90YW50XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShhYnNlbnRpb25zSXRlbSkpIHtcbiAgICAgICAgbm9uVm90YW50c1ZvbG9udGFpcmVzLnB1c2goLi4uYWJzZW50aW9uc0l0ZW0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhc3NlcnQoYWJzZW50aW9uc0l0ZW0pXG4gICAgICAgIG5vblZvdGFudHNWb2xvbnRhaXJlcy5wdXNoKGFic2VudGlvbnNJdGVtKVxuICAgICAgfVxuICAgIH1cbiAgICBpZiAobm9uVm90YW50c1ZvbG9udGFpcmVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgZGVsZXRlIGRlY29tcHRlTm9taW5hdGlmLm5vblZvdGFudHNWb2xvbnRhaXJlc1xuICAgIH0gZWxzZSB7XG4gICAgICBkZWNvbXB0ZU5vbWluYXRpZi5ub25Wb3RhbnRzVm9sb250YWlyZXMgPSBub25Wb3RhbnRzVm9sb250YWlyZXNcbiAgICAgIGZvciAoY29uc3Qgdm90YW50IG9mIG5vblZvdGFudHNWb2xvbnRhaXJlcykge1xuICAgICAgICBjbGVhblZvdGFudCh2b3RhbnQpXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhblNjcnV0aW4oc2NydXRpbjogYW55KTogdm9pZCB7XG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKHNjcnV0aW4pXG5cbiAgY29uc3QgZGVtYW5kZXVyID0gc2NydXRpbi5kZW1hbmRldXJcbiAgYXNzZXJ0KGRlbWFuZGV1cilcbiAge1xuICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGRlbWFuZGV1cilcblxuICAgIGFzc2VydC5zdHJpY3RFcXVhbChkZW1hbmRldXIucmVmZXJlbmNlTGVnaXNsYXRpdmUsIHVuZGVmaW5lZClcbiAgfVxuXG4gIGNvbnN0IG9iamV0ID0gc2NydXRpbi5vYmpldFxuICBhc3NlcnQob2JqZXQpXG4gIHtcbiAgICBjbGVhblhtbEFydGVmYWN0cyhvYmpldClcblxuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmpldC5yZWZlcmVuY2VMZWdpc2xhdGl2ZSwgdW5kZWZpbmVkKVxuICB9XG5cbiAgbGV0IHZlbnRpbGF0aW9uVm90ZXMgPSBzY3J1dGluLnZlbnRpbGF0aW9uVm90ZXNcbiAgYXNzZXJ0KHZlbnRpbGF0aW9uVm90ZXMpXG4gIHtcbiAgICB2ZW50aWxhdGlvblZvdGVzID0gdmVudGlsYXRpb25Wb3Rlcy5vcmdhbmVcbiAgICBhc3NlcnQodmVudGlsYXRpb25Wb3RlcylcblxuICAgIGxldCBncm91cGVzID0gdmVudGlsYXRpb25Wb3Rlcy5ncm91cGVzXG4gICAgYXNzZXJ0KGdyb3VwZXMpXG4gICAge1xuICAgICAgZ3JvdXBlcyA9IGdyb3VwZXMuZ3JvdXBlXG4gICAgICBhc3NlcnQoQXJyYXkuaXNBcnJheShncm91cGVzKSlcbiAgICAgIGZvciAoY29uc3QgZ3JvdXBlIG9mIGdyb3VwZXMpIHtcbiAgICAgICAgY29uc3Qgdm90ZSA9IGdyb3VwZS52b3RlXG4gICAgICAgIGFzc2VydCh2b3RlKVxuICAgICAgICB7XG4gICAgICAgICAgY29uc3QgZGVjb21wdGVWb2l4ID0gdm90ZS5kZWNvbXB0ZVZvaXhcbiAgICAgICAgICBhc3NlcnQoZGVjb21wdGVWb2l4KVxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGlmIChkZWNvbXB0ZVZvaXguYWJzdGVudGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChkZWNvbXB0ZVZvaXguYWJzdGVudGlvbnMsIHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgZGVjb21wdGVWb2l4LmFic3RlbnRpb25zID0gZGVjb21wdGVWb2l4LmFic3RlbnRpb25cbiAgICAgICAgICAgICAgZGVsZXRlIGRlY29tcHRlVm9peC5hYnN0ZW50aW9uXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChkZWNvbXB0ZVZvaXgubm9uVm90YW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGRlY29tcHRlVm9peC5ub25Wb3RhbnRzLCB1bmRlZmluZWQpXG4gICAgICAgICAgICAgIGRlY29tcHRlVm9peC5ub25Wb3RhbnRzID0gZGVjb21wdGVWb2l4Lm5vblZvdGFudFxuICAgICAgICAgICAgICBkZWxldGUgZGVjb21wdGVWb2l4Lm5vblZvdGFudFxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGRlY29tcHRlTm9taW5hdGlmID0gdm90ZS5kZWNvbXB0ZU5vbWluYXRpZlxuICAgICAgICAgIGFzc2VydChkZWNvbXB0ZU5vbWluYXRpZilcbiAgICAgICAgICBjbGVhbkRlY29tcHRlTm9taW5hdGlmKGRlY29tcHRlTm9taW5hdGlmKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICB2ZW50aWxhdGlvblZvdGVzLmdyb3VwZXMgPSBncm91cGVzXG4gICAgfVxuXG4gICAgc2NydXRpbi52ZW50aWxhdGlvblZvdGVzID0gdmVudGlsYXRpb25Wb3Rlc1xuICB9XG5cbiAgY29uc3QgbWlzZUF1UG9pbnQgPSBzY3J1dGluLm1pc2VBdVBvaW50XG4gIGlmIChtaXNlQXVQb2ludCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgY2xlYW5EZWNvbXB0ZU5vbWluYXRpZihtaXNlQXVQb2ludClcblxuICAgIGxldCBkeXNmb25jdGlvbm5lbWVudCA9IG1pc2VBdVBvaW50LmR5c2ZvbmN0aW9ubmVtZW50XG4gICAgaWYgKGR5c2ZvbmN0aW9ubmVtZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNsZWFuRGVjb21wdGVOb21pbmF0aWYoZHlzZm9uY3Rpb25uZW1lbnQpXG4gICAgICBpZiAoXG4gICAgICAgIE9iamVjdC52YWx1ZXMoZHlzZm9uY3Rpb25uZW1lbnQpLmZpbHRlcigodmFsdWUpID0+IHZhbHVlICE9PSB1bmRlZmluZWQpXG4gICAgICAgICAgLmxlbmd0aCA9PT0gMFxuICAgICAgKSB7XG4gICAgICAgIGRlbGV0ZSBtaXNlQXVQb2ludC5keXNmb25jdGlvbm5lbWVudFxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChcbiAgICAgIE9iamVjdC52YWx1ZXMobWlzZUF1UG9pbnQpLmZpbHRlcigodmFsdWUpID0+IHZhbHVlICE9PSB1bmRlZmluZWQpXG4gICAgICAgIC5sZW5ndGggPT09IDBcbiAgICApIHtcbiAgICAgIGRlbGV0ZSBzY3J1dGluLm1pc2VBdVBvaW50XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGNsZWFuVm90YW50KHZvdGFudDogYW55KSB7XG4gIGNsZWFuQm9vbGVhbkF0dHJpYnV0ZSh2b3RhbnQs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
|
|
416
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjbGVhbkRlY29tcHRlTm9taW5hdGlmIiwiZGVjb21wdGVOb21pbmF0aWYiLCJjbGVhblhtbEFydGVmYWN0cyIsIm5vblZvdGFudHMiLCJ1bmRlZmluZWQiLCJhc3NlcnQiLCJzdHJpY3RFcXVhbCIsIkFycmF5IiwiaXNBcnJheSIsIm5vblZvdGFudHNBcnJheSIsIm5vblZvdGFudCIsInZvdGFudCIsInB1c2giLCJsZW5ndGgiLCJjbGVhblZvdGFudCIsInBvdXIiLCJwb3VycyIsImNvbnRyZSIsImNvbnRyZXMiLCJhYnN0ZW50aW9ucyIsImFic3RlbnRpb25zQXJyYXkiLCJhYnNlbnRpb25zSXRlbSIsIm5vblZvdGFudHNWb2xvbnRhaXJlcyIsIm5vblZvdGFudHNWb2xvbnRhaXJlc0FycmF5IiwiY2xlYW5TY3J1dGluIiwic2NydXRpbiIsImRlbWFuZGV1ciIsInJlZmVyZW5jZUxlZ2lzbGF0aXZlIiwib2JqZXQiLCJ2ZW50aWxhdGlvblZvdGVzIiwib3JnYW5lIiwiZ3JvdXBlcyIsImdyb3VwZSIsInZvdGUiLCJkZWNvbXB0ZVZvaXgiLCJhYnN0ZW50aW9uIiwibWlzZUF1UG9pbnQiLCJkeXNmb25jdGlvbm5lbWVudCIsIk9iamVjdCIsInZhbHVlcyIsImZpbHRlciIsInZhbHVlIiwiY2xlYW5Cb29sZWFuQXR0cmlidXRlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsZWFuZXJzL3NjcnV0aW5zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSBcImFzc2VydFwiXG5cbmltcG9ydCB7IGNsZWFuQm9vbGVhbkF0dHJpYnV0ZSwgY2xlYW5YbWxBcnRlZmFjdHMgfSBmcm9tIFwiLi94bWxcIlxuXG5mdW5jdGlvbiBjbGVhbkRlY29tcHRlTm9taW5hdGlmKGRlY29tcHRlTm9taW5hdGlmOiBhbnkpIHtcbiAgY2xlYW5YbWxBcnRlZmFjdHMoZGVjb21wdGVOb21pbmF0aWYpXG5cbiAgbGV0IG5vblZvdGFudHMgPSBkZWNvbXB0ZU5vbWluYXRpZi5ub25Wb3RhbnRzXG4gIGlmIChub25Wb3RhbnRzICE9PSB1bmRlZmluZWQpIHtcbiAgICBpZiAodHlwZW9mIG5vblZvdGFudHMgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChub25Wb3RhbnRzLCBcIjBcIilcbiAgICAgIG5vblZvdGFudHMgPSBbXVxuICAgIH0gZWxzZSBpZiAoIUFycmF5LmlzQXJyYXkobm9uVm90YW50cykpIHtcbiAgICAgIGFzc2VydChub25Wb3RhbnRzKVxuICAgICAgbm9uVm90YW50cyA9IFtub25Wb3RhbnRzXVxuICAgIH1cbiAgICBjb25zdCBub25Wb3RhbnRzQXJyYXkgPSBub25Wb3RhbnRzXG4gICAgbm9uVm90YW50cyA9IFtdXG4gICAgZm9yIChsZXQgbm9uVm90YW50IG9mIG5vblZvdGFudHNBcnJheSkge1xuICAgICAgaWYgKG5vblZvdGFudCA9PT0gbnVsbCkge1xuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgICAgbm9uVm90YW50ID0gbm9uVm90YW50LnZvdGFudFxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkobm9uVm90YW50KSkge1xuICAgICAgICBub25Wb3RhbnRzLnB1c2goLi4ubm9uVm90YW50KVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYXNzZXJ0KG5vblZvdGFudClcbiAgICAgICAgbm9uVm90YW50cy5wdXNoKG5vblZvdGFudClcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKG5vblZvdGFudHMubGVuZ3RoID09PSAwKSB7XG4gICAgICBkZWxldGUgZGVjb21wdGVOb21pbmF0aWYubm9uVm90YW50c1xuICAgIH0gZWxzZSB7XG4gICAgICBkZWNvbXB0ZU5vbWluYXRpZi5ub25Wb3RhbnRzID0gbm9uVm90YW50c1xuICAgICAgZm9yIChjb25zdCB2b3RhbnQgb2Ygbm9uVm90YW50cykge1xuICAgICAgICBjbGVhblZvdGFudCh2b3RhbnQpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbGV0IHBvdXIgPSBkZWNvbXB0ZU5vbWluYXRpZi5wb3VyXG4gIGlmIChwb3VyID09PSB1bmRlZmluZWQpIHtcbiAgICBwb3VyID0gZGVjb21wdGVOb21pbmF0aWYucG91cnNcbiAgfSBlbHNlIHtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZGVjb21wdGVOb21pbmF0aWYucG91cnMsIHVuZGVmaW5lZClcbiAgfVxuICBpZiAocG91ciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcG91ciA9IHBvdXIudm90YW50XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHBvdXIpKSB7XG4gICAgICBhc3NlcnQocG91cilcbiAgICAgIHBvdXIgPSBbcG91cl1cbiAgICB9XG4gICAgaWYgKHBvdXIubGVuZ3RoID09PSAwKSB7XG4gICAgICBkZWxldGUgZGVjb21wdGVOb21pbmF0aWYucG91clxuICAgIH0gZWxzZSB7XG4gICAgICBkZWNvbXB0ZU5vbWluYXRpZi5wb3VyID0gcG91clxuICAgICAgZm9yIChjb25zdCB2b3RhbnQgb2YgcG91cikge1xuICAgICAgICBjbGVhblZvdGFudCh2b3RhbnQpXG4gICAgICB9XG4gICAgfVxuICAgIGRlbGV0ZSBkZWNvbXB0ZU5vbWluYXRpZi5wb3Vyc1xuICB9XG5cbiAgbGV0IGNvbnRyZSA9IGRlY29tcHRlTm9taW5hdGlmLmNvbnRyZVxuICBpZiAoY29udHJlID09PSB1bmRlZmluZWQpIHtcbiAgICBjb250cmUgPSBkZWNvbXB0ZU5vbWluYXRpZi5jb250cmVzXG4gIH0gZWxzZSB7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKGRlY29tcHRlTm9taW5hdGlmLmNvbnRyZXMsIHVuZGVmaW5lZClcbiAgfVxuICBpZiAoY29udHJlICE9PSB1bmRlZmluZWQpIHtcbiAgICBjb250cmUgPSBjb250cmUudm90YW50XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KGNvbnRyZSkpIHtcbiAgICAgIGFzc2VydChjb250cmUpXG4gICAgICBjb250cmUgPSBbY29udHJlXVxuICAgIH1cbiAgICBpZiAoY29udHJlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgZGVsZXRlIGRlY29tcHRlTm9taW5hdGlmLmNvbnRyZVxuICAgIH0gZWxzZSB7XG4gICAgICBkZWNvbXB0ZU5vbWluYXRpZi5jb250cmUgPSBjb250cmVcbiAgICAgIGZvciAoY29uc3Qgdm90YW50IG9mIGNvbnRyZSkge1xuICAgICAgICBjbGVhblZvdGFudCh2b3RhbnQpXG4gICAgICB9XG4gICAgfVxuICAgIGRlbGV0ZSBkZWNvbXB0ZU5vbWluYXRpZi5jb250cmVzXG4gIH1cblxuICBsZXQgYWJzdGVudGlvbnMgPSBkZWNvbXB0ZU5vbWluYXRpZi5hYnN0ZW50aW9uc1xuICBpZiAoYWJzdGVudGlvbnMgIT09IHVuZGVmaW5lZCkge1xuICAgIGlmICghQXJyYXkuaXNBcnJheShhYnN0ZW50aW9ucykpIHtcbiAgICAgIGFic3RlbnRpb25zID0gW2Fic3RlbnRpb25zXVxuICAgIH1cbiAgICBjb25zdCBhYnN0ZW50aW9uc0FycmF5ID0gYWJzdGVudGlvbnNcbiAgICBhYnN0ZW50aW9ucyA9IFtdXG4gICAgZm9yIChsZXQgYWJzZW50aW9uc0l0ZW0gb2YgYWJzdGVudGlvbnNBcnJheSkge1xuICAgICAgaWYgKGFic2VudGlvbnNJdGVtID09PSBudWxsKSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgICBhYnNlbnRpb25zSXRlbSA9IGFic2VudGlvbnNJdGVtLnZvdGFudFxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYWJzZW50aW9uc0l0ZW0pKSB7XG4gICAgICAgIGFic3RlbnRpb25zLnB1c2goLi4uYWJzZW50aW9uc0l0ZW0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhc3NlcnQoYWJzZW50aW9uc0l0ZW0pXG4gICAgICAgIGFic3RlbnRpb25zLnB1c2goYWJzZW50aW9uc0l0ZW0pXG4gICAgICB9XG4gICAgfVxuICAgIGlmIChhYnN0ZW50aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIGRlbGV0ZSBkZWNvbXB0ZU5vbWluYXRpZi5hYnN0ZW50aW9uc1xuICAgIH0gZWxzZSB7XG4gICAgICBkZWNvbXB0ZU5vbWluYXRpZi5hYnN0ZW50aW9ucyA9IGFic3RlbnRpb25zXG4gICAgICBmb3IgKGNvbnN0IHZvdGFudCBvZiBhYnN0ZW50aW9ucykge1xuICAgICAgICBjbGVhblZvdGFudCh2b3RhbnQpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbGV0IG5vblZvdGFudHNWb2xvbnRhaXJlcyA9IGRlY29tcHRlTm9taW5hdGlmLm5vblZvdGFudHNWb2xvbnRhaXJlc1xuICBpZiAobm9uVm90YW50c1ZvbG9udGFpcmVzICE9PSB1bmRlZmluZWQpIHtcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkobm9uVm90YW50c1ZvbG9udGFpcmVzKSkge1xuICAgICAgbm9uVm90YW50c1ZvbG9udGFpcmVzID0gW25vblZvdGFudHNWb2xvbnRhaXJlc11cbiAgICB9XG4gICAgY29uc3Qgbm9uVm90YW50c1ZvbG9udGFpcmVzQXJyYXkgPSBub25Wb3RhbnRzVm9sb250YWlyZXNcbiAgICBub25Wb3RhbnRzVm9sb250YWlyZXMgPSBbXVxuICAgIGZvciAobGV0IGFic2VudGlvbnNJdGVtIG9mIG5vblZvdGFudHNWb2xvbnRhaXJlc0FycmF5KSB7XG4gICAgICBpZiAoYWJzZW50aW9uc0l0ZW0gPT09IG51bGwpIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGFic2VudGlvbnNJdGVtID0gYWJzZW50aW9uc0l0ZW0udm90YW50XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShhYnNlbnRpb25zSXRlbSkpIHtcbiAgICAgICAgbm9uVm90YW50c1ZvbG9udGFpcmVzLnB1c2goLi4uYWJzZW50aW9uc0l0ZW0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhc3NlcnQoYWJzZW50aW9uc0l0ZW0pXG4gICAgICAgIG5vblZvdGFudHNWb2xvbnRhaXJlcy5wdXNoKGFic2VudGlvbnNJdGVtKVxuICAgICAgfVxuICAgIH1cbiAgICBpZiAobm9uVm90YW50c1ZvbG9udGFpcmVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgZGVsZXRlIGRlY29tcHRlTm9taW5hdGlmLm5vblZvdGFudHNWb2xvbnRhaXJlc1xuICAgIH0gZWxzZSB7XG4gICAgICBkZWNvbXB0ZU5vbWluYXRpZi5ub25Wb3RhbnRzVm9sb250YWlyZXMgPSBub25Wb3RhbnRzVm9sb250YWlyZXNcbiAgICAgIGZvciAoY29uc3Qgdm90YW50IG9mIG5vblZvdGFudHNWb2xvbnRhaXJlcykge1xuICAgICAgICBjbGVhblZvdGFudCh2b3RhbnQpXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhblNjcnV0aW4oc2NydXRpbjogYW55KTogdm9pZCB7XG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKHNjcnV0aW4pXG5cbiAgY29uc3QgZGVtYW5kZXVyID0gc2NydXRpbi5kZW1hbmRldXJcbiAgYXNzZXJ0KGRlbWFuZGV1cilcbiAge1xuICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGRlbWFuZGV1cilcblxuICAgIGFzc2VydC5zdHJpY3RFcXVhbChkZW1hbmRldXIucmVmZXJlbmNlTGVnaXNsYXRpdmUsIHVuZGVmaW5lZClcbiAgfVxuXG4gIGNvbnN0IG9iamV0ID0gc2NydXRpbi5vYmpldFxuICBhc3NlcnQob2JqZXQpXG4gIHtcbiAgICBjbGVhblhtbEFydGVmYWN0cyhvYmpldClcblxuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmpldC5yZWZlcmVuY2VMZWdpc2xhdGl2ZSwgdW5kZWZpbmVkKVxuICB9XG5cbiAgbGV0IHZlbnRpbGF0aW9uVm90ZXMgPSBzY3J1dGluLnZlbnRpbGF0aW9uVm90ZXNcbiAgYXNzZXJ0KHZlbnRpbGF0aW9uVm90ZXMpXG4gIHtcbiAgICB2ZW50aWxhdGlvblZvdGVzID0gdmVudGlsYXRpb25Wb3Rlcy5vcmdhbmVcbiAgICBhc3NlcnQodmVudGlsYXRpb25Wb3RlcylcblxuICAgIGxldCBncm91cGVzID0gdmVudGlsYXRpb25Wb3Rlcy5ncm91cGVzXG4gICAgYXNzZXJ0KGdyb3VwZXMpXG4gICAge1xuICAgICAgZ3JvdXBlcyA9IGdyb3VwZXMuZ3JvdXBlXG4gICAgICBhc3NlcnQoQXJyYXkuaXNBcnJheShncm91cGVzKSlcbiAgICAgIGZvciAoY29uc3QgZ3JvdXBlIG9mIGdyb3VwZXMpIHtcbiAgICAgICAgY29uc3Qgdm90ZSA9IGdyb3VwZS52b3RlXG4gICAgICAgIGFzc2VydCh2b3RlKVxuICAgICAgICB7XG4gICAgICAgICAgY29uc3QgZGVjb21wdGVWb2l4ID0gdm90ZS5kZWNvbXB0ZVZvaXhcbiAgICAgICAgICBhc3NlcnQoZGVjb21wdGVWb2l4KVxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGlmIChkZWNvbXB0ZVZvaXguYWJzdGVudGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChkZWNvbXB0ZVZvaXguYWJzdGVudGlvbnMsIHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgZGVjb21wdGVWb2l4LmFic3RlbnRpb25zID0gZGVjb21wdGVWb2l4LmFic3RlbnRpb25cbiAgICAgICAgICAgICAgZGVsZXRlIGRlY29tcHRlVm9peC5hYnN0ZW50aW9uXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChkZWNvbXB0ZVZvaXgubm9uVm90YW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGRlY29tcHRlVm9peC5ub25Wb3RhbnRzLCB1bmRlZmluZWQpXG4gICAgICAgICAgICAgIGRlY29tcHRlVm9peC5ub25Wb3RhbnRzID0gZGVjb21wdGVWb2l4Lm5vblZvdGFudFxuICAgICAgICAgICAgICBkZWxldGUgZGVjb21wdGVWb2l4Lm5vblZvdGFudFxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGRlY29tcHRlTm9taW5hdGlmID0gdm90ZS5kZWNvbXB0ZU5vbWluYXRpZlxuICAgICAgICAgIGFzc2VydChkZWNvbXB0ZU5vbWluYXRpZilcbiAgICAgICAgICBjbGVhbkRlY29tcHRlTm9taW5hdGlmKGRlY29tcHRlTm9taW5hdGlmKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICB2ZW50aWxhdGlvblZvdGVzLmdyb3VwZXMgPSBncm91cGVzXG4gICAgfVxuXG4gICAgc2NydXRpbi52ZW50aWxhdGlvblZvdGVzID0gdmVudGlsYXRpb25Wb3Rlc1xuICB9XG5cbiAgY29uc3QgbWlzZUF1UG9pbnQgPSBzY3J1dGluLm1pc2VBdVBvaW50XG4gIGlmIChtaXNlQXVQb2ludCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgY2xlYW5EZWNvbXB0ZU5vbWluYXRpZihtaXNlQXVQb2ludClcblxuICAgIGxldCBkeXNmb25jdGlvbm5lbWVudCA9IG1pc2VBdVBvaW50LmR5c2ZvbmN0aW9ubmVtZW50XG4gICAgaWYgKGR5c2ZvbmN0aW9ubmVtZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNsZWFuRGVjb21wdGVOb21pbmF0aWYoZHlzZm9uY3Rpb25uZW1lbnQpXG4gICAgICBpZiAoXG4gICAgICAgIE9iamVjdC52YWx1ZXMoZHlzZm9uY3Rpb25uZW1lbnQpLmZpbHRlcigodmFsdWUpID0+IHZhbHVlICE9PSB1bmRlZmluZWQpXG4gICAgICAgICAgLmxlbmd0aCA9PT0gMFxuICAgICAgKSB7XG4gICAgICAgIGRlbGV0ZSBtaXNlQXVQb2ludC5keXNmb25jdGlvbm5lbWVudFxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChcbiAgICAgIE9iamVjdC52YWx1ZXMobWlzZUF1UG9pbnQpLmZpbHRlcigodmFsdWUpID0+IHZhbHVlICE9PSB1bmRlZmluZWQpXG4gICAgICAgIC5sZW5ndGggPT09IDBcbiAgICApIHtcbiAgICAgIGRlbGV0ZSBzY3J1dGluLm1pc2VBdVBvaW50XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGNsZWFuVm90YW50KHZvdGFudDogYW55KSB7XG4gIGNsZWFuQm9vbGVhbkF0dHJpYnV0ZSh2b3RhbnQs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
|