@speleotica/frcsdata 4.0.2 → 4.0.4
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/FrcsPlotFile.d.ts +1 -1
- package/FrcsPlotShot.d.ts +1 -1
- package/FrcsShot.d.ts +1 -1
- package/FrcsShot.js +2 -3
- package/FrcsSurveyFile.d.ts +1 -1
- package/FrcsTrip.d.ts +2 -2
- package/FrcsTripSummary.d.ts +1 -1
- package/FrcsTripSummaryFile.d.ts +1 -1
- package/formatFrcsShot.js +7 -6
- package/index.js +11 -11
- package/node/index.js +6 -9
- package/package.json +26 -124
- package/parseFrcsPlotFile.js +4 -3
- package/parseFrcsSurveyFile.js +126 -107
- package/parseFrcsTripSummaryFile.js +5 -4
- package/string/index.js +8 -11
- package/es/FrcsPlotFile.js +0 -6
- package/es/FrcsPlotShot.js +0 -6
- package/es/FrcsShot.js +0 -14
- package/es/FrcsSurveyFile.js +0 -6
- package/es/FrcsTrip.js +0 -6
- package/es/FrcsTripSummary.js +0 -6
- package/es/FrcsTripSummaryFile.js +0 -6
- package/es/formatFrcsShot.js +0 -75
- package/es/formatFrcsShot.spec.js +0 -141
- package/es/index.js +0 -96
- package/es/node/index.js +0 -20
- package/es/node/parseFrcsPlotFile.spec.js +0 -167
- package/es/node/parseFrcsSurveyFile.spec.js +0 -314
- package/es/node/parseFrcsTripSummaryFile.spec.js +0 -78
- package/es/parseFrcsPlotFile.js +0 -135
- package/es/parseFrcsSurveyFile.js +0 -485
- package/es/parseFrcsTripSummaryFile.js +0 -73
- package/es/string/index.js +0 -21
- package/es/string/parseFrcsPlotFile.spec.js +0 -179
- package/es/string/parseFrcsSurveyFile.spec.js +0 -644
- package/formatFrcsShot.spec.js +0 -139
- package/node/parseFrcsPlotFile.spec.js +0 -181
- package/node/parseFrcsSurveyFile.spec.js +0 -328
- package/node/parseFrcsTripSummaryFile.spec.js +0 -104
- package/string/parseFrcsPlotFile.spec.js +0 -182
- package/string/parseFrcsSurveyFile.spec.js +0 -673
- package/yarn.lock +0 -9542
|
@@ -1,314 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _mocha = require("mocha");
|
|
4
|
-
var _index = require("./index");
|
|
5
|
-
var _unitized = require("@speleotica/unitized");
|
|
6
|
-
var _chai = require("chai");
|
|
7
|
-
var _FrcsShot = require("../FrcsShot");
|
|
8
|
-
/* eslint-env node */
|
|
9
|
-
|
|
10
|
-
(0, _mocha.describe)('parseFrcsSurveyFile', () => {
|
|
11
|
-
(0, _mocha.it)('basic test', async function () {
|
|
12
|
-
const parsed = await (0, _index.parseFrcsSurveyFile)(require.resolve('./cdata.fr'));
|
|
13
|
-
(0, _chai.expect)(parsed).to.deep.equal({
|
|
14
|
-
cave: 'Fisher Ridge Cave System',
|
|
15
|
-
errors: [],
|
|
16
|
-
location: 'Hart Co., KY',
|
|
17
|
-
trips: [{
|
|
18
|
-
header: {
|
|
19
|
-
name: 'ENTRANCE DROPS, JOE\'S "I LOVE MY WIFE TRAVERSE", TRICKY TRAVERSE',
|
|
20
|
-
comment: 'This File has Crumps test connected. 11/20/12',
|
|
21
|
-
section: undefined,
|
|
22
|
-
date: undefined,
|
|
23
|
-
team: undefined,
|
|
24
|
-
distanceUnit: _unitized.Length.feet,
|
|
25
|
-
azimuthUnit: _unitized.Angle.degrees,
|
|
26
|
-
inclinationUnit: _unitized.Angle.degrees,
|
|
27
|
-
backsightAzimuthCorrected: true,
|
|
28
|
-
backsightInclinationCorrected: false,
|
|
29
|
-
hasBacksightAzimuth: true,
|
|
30
|
-
hasBacksightInclination: false
|
|
31
|
-
},
|
|
32
|
-
shots: [{
|
|
33
|
-
backsightAzimuth: null,
|
|
34
|
-
backsightInclination: null,
|
|
35
|
-
comment: null,
|
|
36
|
-
distance: _unitized.Unitize.feet(0),
|
|
37
|
-
excludeDistance: true,
|
|
38
|
-
from: 'AE20',
|
|
39
|
-
frontsightAzimuth: null,
|
|
40
|
-
frontsightInclination: null,
|
|
41
|
-
kind: _FrcsShot.FrcsShotKind.Normal,
|
|
42
|
-
to: null,
|
|
43
|
-
fromLruds: {
|
|
44
|
-
left: _unitized.Unitize.feet(1),
|
|
45
|
-
right: _unitized.Unitize.feet(3),
|
|
46
|
-
up: _unitized.Unitize.feet(0),
|
|
47
|
-
down: _unitized.Unitize.feet(2)
|
|
48
|
-
}
|
|
49
|
-
}, {
|
|
50
|
-
from: 'AE20',
|
|
51
|
-
to: 'AE19',
|
|
52
|
-
kind: _FrcsShot.FrcsShotKind.Normal,
|
|
53
|
-
distance: _unitized.Unitize.feet(9.3),
|
|
54
|
-
frontsightAzimuth: _unitized.Unitize.degrees(60),
|
|
55
|
-
backsightAzimuth: _unitized.Unitize.degrees(60),
|
|
56
|
-
frontsightInclination: _unitized.Unitize.degrees(-36),
|
|
57
|
-
backsightInclination: null,
|
|
58
|
-
excludeDistance: false,
|
|
59
|
-
comment: "AE20 0 0 0 Bug-can't put before so put after-so can't make 2 fixed 10/28/12",
|
|
60
|
-
toLruds: {
|
|
61
|
-
left: _unitized.Unitize.feet(2),
|
|
62
|
-
right: _unitized.Unitize.feet(12),
|
|
63
|
-
up: _unitized.Unitize.feet(0),
|
|
64
|
-
down: _unitized.Unitize.feet(20)
|
|
65
|
-
}
|
|
66
|
-
}, {
|
|
67
|
-
from: 'AE19',
|
|
68
|
-
to: 'AE18',
|
|
69
|
-
kind: _FrcsShot.FrcsShotKind.Normal,
|
|
70
|
-
distance: _unitized.Unitize.feet(24.5),
|
|
71
|
-
frontsightAzimuth: _unitized.Unitize.degrees(0),
|
|
72
|
-
backsightAzimuth: _unitized.Unitize.degrees(0),
|
|
73
|
-
frontsightInclination: _unitized.Unitize.degrees(-90),
|
|
74
|
-
backsightInclination: null,
|
|
75
|
-
excludeDistance: false,
|
|
76
|
-
comment: null,
|
|
77
|
-
toLruds: {
|
|
78
|
-
left: _unitized.Unitize.feet(6),
|
|
79
|
-
right: _unitized.Unitize.feet(10),
|
|
80
|
-
up: _unitized.Unitize.feet(25),
|
|
81
|
-
down: _unitized.Unitize.feet(0)
|
|
82
|
-
}
|
|
83
|
-
}, {
|
|
84
|
-
from: 'AE18',
|
|
85
|
-
to: 'AE17',
|
|
86
|
-
kind: _FrcsShot.FrcsShotKind.Normal,
|
|
87
|
-
distance: _unitized.Unitize.feet(8),
|
|
88
|
-
frontsightAzimuth: _unitized.Unitize.degrees(350.5),
|
|
89
|
-
backsightAzimuth: _unitized.Unitize.degrees(350.5),
|
|
90
|
-
frontsightInclination: _unitized.Unitize.degrees(17),
|
|
91
|
-
backsightInclination: null,
|
|
92
|
-
excludeDistance: false,
|
|
93
|
-
comment: null,
|
|
94
|
-
toLruds: {
|
|
95
|
-
left: _unitized.Unitize.feet(3),
|
|
96
|
-
right: _unitized.Unitize.feet(5),
|
|
97
|
-
up: _unitized.Unitize.feet(0),
|
|
98
|
-
down: _unitized.Unitize.feet(0)
|
|
99
|
-
}
|
|
100
|
-
}, {
|
|
101
|
-
from: 'AE17',
|
|
102
|
-
to: 'AE16',
|
|
103
|
-
kind: _FrcsShot.FrcsShotKind.Normal,
|
|
104
|
-
distance: _unitized.Unitize.feet(6.7),
|
|
105
|
-
frontsightAzimuth: _unitized.Unitize.degrees(0),
|
|
106
|
-
backsightAzimuth: _unitized.Unitize.degrees(0),
|
|
107
|
-
frontsightInclination: _unitized.Unitize.degrees(-90),
|
|
108
|
-
backsightInclination: null,
|
|
109
|
-
excludeDistance: false,
|
|
110
|
-
comment: null,
|
|
111
|
-
toLruds: {
|
|
112
|
-
left: _unitized.Unitize.feet(3),
|
|
113
|
-
right: _unitized.Unitize.feet(5),
|
|
114
|
-
up: _unitized.Unitize.feet(6),
|
|
115
|
-
down: _unitized.Unitize.feet(1)
|
|
116
|
-
}
|
|
117
|
-
}, {
|
|
118
|
-
from: 'AE16',
|
|
119
|
-
to: 'AE15',
|
|
120
|
-
kind: _FrcsShot.FrcsShotKind.Normal,
|
|
121
|
-
distance: _unitized.Unitize.feet(12.6),
|
|
122
|
-
frontsightAzimuth: _unitized.Unitize.degrees(70.5),
|
|
123
|
-
backsightAzimuth: _unitized.Unitize.degrees(71),
|
|
124
|
-
frontsightInclination: _unitized.Unitize.degrees(-18),
|
|
125
|
-
backsightInclination: null,
|
|
126
|
-
excludeDistance: false,
|
|
127
|
-
comment: null,
|
|
128
|
-
toLruds: {
|
|
129
|
-
left: _unitized.Unitize.feet(4),
|
|
130
|
-
right: _unitized.Unitize.feet(0),
|
|
131
|
-
up: _unitized.Unitize.feet(2),
|
|
132
|
-
down: _unitized.Unitize.feet(1)
|
|
133
|
-
}
|
|
134
|
-
}, {
|
|
135
|
-
from: 'AE15',
|
|
136
|
-
to: 'AE14',
|
|
137
|
-
kind: _FrcsShot.FrcsShotKind.Normal,
|
|
138
|
-
distance: _unitized.Unitize.feet(10),
|
|
139
|
-
frontsightAzimuth: _unitized.Unitize.degrees(21.5),
|
|
140
|
-
backsightAzimuth: _unitized.Unitize.degrees(20),
|
|
141
|
-
frontsightInclination: _unitized.Unitize.degrees(6),
|
|
142
|
-
backsightInclination: null,
|
|
143
|
-
excludeDistance: false,
|
|
144
|
-
comment: null,
|
|
145
|
-
toLruds: {
|
|
146
|
-
left: _unitized.Unitize.feet(5),
|
|
147
|
-
right: _unitized.Unitize.feet(5),
|
|
148
|
-
up: _unitized.Unitize.feet(0),
|
|
149
|
-
down: _unitized.Unitize.feet(3)
|
|
150
|
-
}
|
|
151
|
-
}, {
|
|
152
|
-
from: 'AE14',
|
|
153
|
-
to: 'AE13',
|
|
154
|
-
kind: _FrcsShot.FrcsShotKind.Normal,
|
|
155
|
-
distance: _unitized.Unitize.feet(26.8),
|
|
156
|
-
frontsightAzimuth: _unitized.Unitize.degrees(288),
|
|
157
|
-
backsightAzimuth: _unitized.Unitize.degrees(286),
|
|
158
|
-
frontsightInclination: _unitized.Unitize.degrees(-50),
|
|
159
|
-
backsightInclination: null,
|
|
160
|
-
excludeDistance: false,
|
|
161
|
-
comment: null,
|
|
162
|
-
toLruds: {
|
|
163
|
-
left: _unitized.Unitize.feet(0),
|
|
164
|
-
right: _unitized.Unitize.feet(7),
|
|
165
|
-
up: _unitized.Unitize.feet(20),
|
|
166
|
-
down: _unitized.Unitize.feet(5)
|
|
167
|
-
}
|
|
168
|
-
}, {
|
|
169
|
-
from: 'AE13',
|
|
170
|
-
to: 'AE12',
|
|
171
|
-
kind: _FrcsShot.FrcsShotKind.Normal,
|
|
172
|
-
distance: _unitized.Unitize.feet(20.7),
|
|
173
|
-
frontsightAzimuth: _unitized.Unitize.degrees(236),
|
|
174
|
-
backsightAzimuth: _unitized.Unitize.degrees(236),
|
|
175
|
-
frontsightInclination: _unitized.Unitize.degrees(34),
|
|
176
|
-
backsightInclination: null,
|
|
177
|
-
excludeDistance: false,
|
|
178
|
-
comment: 'SHORT CANYON AT THE BASE OF THE SECOND DROP',
|
|
179
|
-
toLruds: {
|
|
180
|
-
left: _unitized.Unitize.feet(3),
|
|
181
|
-
right: _unitized.Unitize.feet(5),
|
|
182
|
-
up: _unitized.Unitize.feet(4),
|
|
183
|
-
down: _unitized.Unitize.feet(4)
|
|
184
|
-
}
|
|
185
|
-
}]
|
|
186
|
-
}, {
|
|
187
|
-
header: {
|
|
188
|
-
name: 'TRICKY TRAVERSE AND THEN FIRST SURVEY IN UPPER CROWLWAY',
|
|
189
|
-
comment: null,
|
|
190
|
-
section: undefined,
|
|
191
|
-
date: undefined,
|
|
192
|
-
team: undefined,
|
|
193
|
-
distanceUnit: _unitized.Length.inches,
|
|
194
|
-
azimuthUnit: _unitized.Angle.degrees,
|
|
195
|
-
inclinationUnit: _unitized.Angle.degrees,
|
|
196
|
-
backsightAzimuthCorrected: false,
|
|
197
|
-
backsightInclinationCorrected: false,
|
|
198
|
-
hasBacksightAzimuth: true,
|
|
199
|
-
hasBacksightInclination: false
|
|
200
|
-
},
|
|
201
|
-
shots: [{
|
|
202
|
-
from: 'A1',
|
|
203
|
-
to: 'A2',
|
|
204
|
-
kind: _FrcsShot.FrcsShotKind.Normal,
|
|
205
|
-
distance: _unitized.Unitize.inches(48 * 12 + 10),
|
|
206
|
-
frontsightAzimuth: _unitized.Unitize.degrees(292),
|
|
207
|
-
backsightAzimuth: _unitized.Unitize.degrees(110),
|
|
208
|
-
frontsightInclination: _unitized.Unitize.degrees(-42),
|
|
209
|
-
backsightInclination: null,
|
|
210
|
-
excludeDistance: false,
|
|
211
|
-
comment: null,
|
|
212
|
-
fromLruds: {
|
|
213
|
-
left: _unitized.Unitize.feet(2),
|
|
214
|
-
right: _unitized.Unitize.feet(7),
|
|
215
|
-
up: _unitized.Unitize.feet(3),
|
|
216
|
-
down: _unitized.Unitize.feet(4.5)
|
|
217
|
-
},
|
|
218
|
-
toLruds: {
|
|
219
|
-
left: _unitized.Unitize.feet(5),
|
|
220
|
-
right: _unitized.Unitize.feet(10),
|
|
221
|
-
up: _unitized.Unitize.feet(35),
|
|
222
|
-
down: _unitized.Unitize.feet(5)
|
|
223
|
-
}
|
|
224
|
-
}, {
|
|
225
|
-
from: 'A2',
|
|
226
|
-
to: 'A3',
|
|
227
|
-
kind: _FrcsShot.FrcsShotKind.Normal,
|
|
228
|
-
distance: _unitized.Unitize.inches(12 * 12 + 5),
|
|
229
|
-
frontsightAzimuth: _unitized.Unitize.degrees(333.5),
|
|
230
|
-
backsightAzimuth: _unitized.Unitize.degrees(153.5),
|
|
231
|
-
frontsightInclination: _unitized.Unitize.degrees(35),
|
|
232
|
-
backsightInclination: null,
|
|
233
|
-
excludeDistance: false,
|
|
234
|
-
comment: null,
|
|
235
|
-
toLruds: {
|
|
236
|
-
left: _unitized.Unitize.feet(3),
|
|
237
|
-
right: _unitized.Unitize.feet(1),
|
|
238
|
-
up: _unitized.Unitize.feet(15),
|
|
239
|
-
down: _unitized.Unitize.feet(5)
|
|
240
|
-
}
|
|
241
|
-
}, {
|
|
242
|
-
from: 'A3',
|
|
243
|
-
to: 'A4',
|
|
244
|
-
kind: _FrcsShot.FrcsShotKind.Normal,
|
|
245
|
-
distance: _unitized.Unitize.inches(4 * 12 + 2),
|
|
246
|
-
frontsightAzimuth: _unitized.Unitize.degrees(0),
|
|
247
|
-
backsightAzimuth: _unitized.Unitize.degrees(0),
|
|
248
|
-
frontsightInclination: _unitized.Unitize.degrees(90),
|
|
249
|
-
backsightInclination: null,
|
|
250
|
-
excludeDistance: false,
|
|
251
|
-
comment: null,
|
|
252
|
-
toLruds: {
|
|
253
|
-
left: _unitized.Unitize.feet(3),
|
|
254
|
-
right: _unitized.Unitize.feet(1),
|
|
255
|
-
up: _unitized.Unitize.feet(10),
|
|
256
|
-
down: _unitized.Unitize.feet(10)
|
|
257
|
-
}
|
|
258
|
-
}]
|
|
259
|
-
}, {
|
|
260
|
-
header: {
|
|
261
|
-
azimuthUnit: _unitized.Angle.degrees,
|
|
262
|
-
backsightAzimuthCorrected: true,
|
|
263
|
-
backsightInclinationCorrected: false,
|
|
264
|
-
comment: null,
|
|
265
|
-
date: undefined,
|
|
266
|
-
distanceUnit: _unitized.Length.feet,
|
|
267
|
-
hasBacksightAzimuth: true,
|
|
268
|
-
hasBacksightInclination: false,
|
|
269
|
-
inclinationUnit: _unitized.Angle.degrees,
|
|
270
|
-
name: "DOUG'S DEMISE (50 FT DROP), CHRIS CROSS, CRAWL ABOVE DROP",
|
|
271
|
-
section: undefined,
|
|
272
|
-
team: undefined
|
|
273
|
-
},
|
|
274
|
-
shots: [{
|
|
275
|
-
backsightAzimuth: _unitized.Unitize.degrees(0),
|
|
276
|
-
backsightInclination: null,
|
|
277
|
-
comment: null,
|
|
278
|
-
distance: _unitized.Unitize.feet(13.7),
|
|
279
|
-
excludeDistance: false,
|
|
280
|
-
from: 'B30',
|
|
281
|
-
frontsightAzimuth: _unitized.Unitize.degrees(0),
|
|
282
|
-
frontsightInclination: _unitized.Unitize.degrees(40),
|
|
283
|
-
kind: ' ',
|
|
284
|
-
to: 'B31',
|
|
285
|
-
toLruds: {
|
|
286
|
-
left: _unitized.Unitize.feet(2),
|
|
287
|
-
right: _unitized.Unitize.feet(4),
|
|
288
|
-
up: _unitized.Unitize.feet(6),
|
|
289
|
-
down: null
|
|
290
|
-
}
|
|
291
|
-
}, {
|
|
292
|
-
backsightAzimuth: _unitized.Unitize.degrees(0),
|
|
293
|
-
backsightInclination: null,
|
|
294
|
-
comment: null,
|
|
295
|
-
distance: _unitized.Unitize.feet(13.7),
|
|
296
|
-
excludeDistance: true,
|
|
297
|
-
isSplay: true,
|
|
298
|
-
from: 'B30',
|
|
299
|
-
frontsightAzimuth: _unitized.Unitize.degrees(0),
|
|
300
|
-
frontsightInclination: _unitized.Unitize.degrees(40),
|
|
301
|
-
kind: ' ',
|
|
302
|
-
to: 'B30sp',
|
|
303
|
-
toLruds: {
|
|
304
|
-
left: _unitized.Unitize.feet(2),
|
|
305
|
-
right: _unitized.Unitize.feet(4),
|
|
306
|
-
up: _unitized.Unitize.feet(6),
|
|
307
|
-
down: null
|
|
308
|
-
}
|
|
309
|
-
}]
|
|
310
|
-
}]
|
|
311
|
-
});
|
|
312
|
-
});
|
|
313
|
-
});
|
|
314
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9jaGEiLCJyZXF1aXJlIiwiX2luZGV4IiwiX3VuaXRpemVkIiwiX2NoYWkiLCJfRnJjc1Nob3QiLCJkZXNjcmliZSIsIml0IiwicGFyc2VkIiwicGFyc2VGcmNzU3VydmV5RmlsZSIsInJlc29sdmUiLCJleHBlY3QiLCJ0byIsImRlZXAiLCJlcXVhbCIsImNhdmUiLCJlcnJvcnMiLCJsb2NhdGlvbiIsInRyaXBzIiwiaGVhZGVyIiwibmFtZSIsImNvbW1lbnQiLCJzZWN0aW9uIiwidW5kZWZpbmVkIiwiZGF0ZSIsInRlYW0iLCJkaXN0YW5jZVVuaXQiLCJMZW5ndGgiLCJmZWV0IiwiYXppbXV0aFVuaXQiLCJBbmdsZSIsImRlZ3JlZXMiLCJpbmNsaW5hdGlvblVuaXQiLCJiYWNrc2lnaHRBemltdXRoQ29ycmVjdGVkIiwiYmFja3NpZ2h0SW5jbGluYXRpb25Db3JyZWN0ZWQiLCJoYXNCYWNrc2lnaHRBemltdXRoIiwiaGFzQmFja3NpZ2h0SW5jbGluYXRpb24iLCJzaG90cyIsImJhY2tzaWdodEF6aW11dGgiLCJiYWNrc2lnaHRJbmNsaW5hdGlvbiIsImRpc3RhbmNlIiwiVW5pdGl6ZSIsImV4Y2x1ZGVEaXN0YW5jZSIsImZyb20iLCJmcm9udHNpZ2h0QXppbXV0aCIsImZyb250c2lnaHRJbmNsaW5hdGlvbiIsImtpbmQiLCJGcmNzU2hvdEtpbmQiLCJOb3JtYWwiLCJmcm9tTHJ1ZHMiLCJsZWZ0IiwicmlnaHQiLCJ1cCIsImRvd24iLCJ0b0xydWRzIiwiaW5jaGVzIiwiaXNTcGxheSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL3BhcnNlRnJjc1N1cnZleUZpbGUuc3BlYy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZW52IG5vZGUgKi9cblxuaW1wb3J0IHsgZGVzY3JpYmUsIGl0IH0gZnJvbSAnbW9jaGEnXG5pbXBvcnQgeyBwYXJzZUZyY3NTdXJ2ZXlGaWxlIH0gZnJvbSAnLi9pbmRleCdcbmltcG9ydCB7IExlbmd0aCwgQW5nbGUsIFVuaXRpemUgfSBmcm9tICdAc3BlbGVvdGljYS91bml0aXplZCdcbmltcG9ydCB7IGV4cGVjdCB9IGZyb20gJ2NoYWknXG5pbXBvcnQgeyBGcmNzU2hvdEtpbmQgfSBmcm9tICcuLi9GcmNzU2hvdCdcblxuZGVzY3JpYmUoJ3BhcnNlRnJjc1N1cnZleUZpbGUnLCAoKSA9PiB7XG4gIGl0KCdiYXNpYyB0ZXN0JywgYXN5bmMgZnVuY3Rpb24oKSB7XG4gICAgY29uc3QgcGFyc2VkID0gYXdhaXQgcGFyc2VGcmNzU3VydmV5RmlsZShyZXF1aXJlLnJlc29sdmUoJy4vY2RhdGEuZnInKSlcbiAgICBleHBlY3QocGFyc2VkKS50by5kZWVwLmVxdWFsKHtcbiAgICAgIGNhdmU6ICdGaXNoZXIgUmlkZ2UgQ2F2ZSBTeXN0ZW0nLFxuICAgICAgZXJyb3JzOiBbXSxcbiAgICAgIGxvY2F0aW9uOiAnSGFydCBDby4sIEtZJyxcbiAgICAgIHRyaXBzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICAgIG5hbWU6XG4gICAgICAgICAgICAgICdFTlRSQU5DRSBEUk9QUywgSk9FXFwnUyBcIkkgTE9WRSBNWSBXSUZFIFRSQVZFUlNFXCIsIFRSSUNLWSBUUkFWRVJTRScsXG4gICAgICAgICAgICBjb21tZW50OiAnVGhpcyBGaWxlIGhhcyBDcnVtcHMgdGVzdCBjb25uZWN0ZWQuICAxMS8yMC8xMicsXG4gICAgICAgICAgICBzZWN0aW9uOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBkYXRlOiB1bmRlZmluZWQsXG4gICAgICAgICAgICB0ZWFtOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBkaXN0YW5jZVVuaXQ6IExlbmd0aC5mZWV0LFxuICAgICAgICAgICAgYXppbXV0aFVuaXQ6IEFuZ2xlLmRlZ3JlZXMsXG4gICAgICAgICAgICBpbmNsaW5hdGlvblVuaXQ6IEFuZ2xlLmRlZ3JlZXMsXG4gICAgICAgICAgICBiYWNrc2lnaHRBemltdXRoQ29ycmVjdGVkOiB0cnVlLFxuICAgICAgICAgICAgYmFja3NpZ2h0SW5jbGluYXRpb25Db3JyZWN0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgaGFzQmFja3NpZ2h0QXppbXV0aDogdHJ1ZSxcbiAgICAgICAgICAgIGhhc0JhY2tzaWdodEluY2xpbmF0aW9uOiBmYWxzZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNob3RzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGJhY2tzaWdodEF6aW11dGg6IG51bGwsXG4gICAgICAgICAgICAgIGJhY2tzaWdodEluY2xpbmF0aW9uOiBudWxsLFxuICAgICAgICAgICAgICBjb21tZW50OiBudWxsLFxuICAgICAgICAgICAgICBkaXN0YW5jZTogVW5pdGl6ZS5mZWV0KDApLFxuICAgICAgICAgICAgICBleGNsdWRlRGlzdGFuY2U6IHRydWUsXG4gICAgICAgICAgICAgIGZyb206ICdBRTIwJyxcbiAgICAgICAgICAgICAgZnJvbnRzaWdodEF6aW11dGg6IG51bGwsXG4gICAgICAgICAgICAgIGZyb250c2lnaHRJbmNsaW5hdGlvbjogbnVsbCxcbiAgICAgICAgICAgICAga2luZDogRnJjc1Nob3RLaW5kLk5vcm1hbCxcbiAgICAgICAgICAgICAgdG86IG51bGwsXG5cbiAgICAgICAgICAgICAgZnJvbUxydWRzOiB7XG4gICAgICAgICAgICAgICAgbGVmdDogVW5pdGl6ZS5mZWV0KDEpLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiBVbml0aXplLmZlZXQoMyksXG4gICAgICAgICAgICAgICAgdXA6IFVuaXRpemUuZmVldCgwKSxcbiAgICAgICAgICAgICAgICBkb3duOiBVbml0aXplLmZlZXQoMiksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBmcm9tOiAnQUUyMCcsXG4gICAgICAgICAgICAgIHRvOiAnQUUxOScsXG4gICAgICAgICAgICAgIGtpbmQ6IEZyY3NTaG90S2luZC5Ob3JtYWwsXG4gICAgICAgICAgICAgIGRpc3RhbmNlOiBVbml0aXplLmZlZXQoOS4zKSxcbiAgICAgICAgICAgICAgZnJvbnRzaWdodEF6aW11dGg6IFVuaXRpemUuZGVncmVlcyg2MCksXG4gICAgICAgICAgICAgIGJhY2tzaWdodEF6aW11dGg6IFVuaXRpemUuZGVncmVlcyg2MCksXG4gICAgICAgICAgICAgIGZyb250c2lnaHRJbmNsaW5hdGlvbjogVW5pdGl6ZS5kZWdyZWVzKC0zNiksXG4gICAgICAgICAgICAgIGJhY2tzaWdodEluY2xpbmF0aW9uOiBudWxsLFxuICAgICAgICAgICAgICBleGNsdWRlRGlzdGFuY2U6IGZhbHNlLFxuICAgICAgICAgICAgICBjb21tZW50OlxuICAgICAgICAgICAgICAgIFwiQUUyMCAgICAgMCAgICAgICAgMCAgICAgICAgMCAgICAgICAgQnVnLWNhbid0IHB1dCBiZWZvcmUgc28gcHV0IGFmdGVyLXNvIGNhbid0IG1ha2UgMiBmaXhlZCAxMC8yOC8xMlwiLFxuXG4gICAgICAgICAgICAgIHRvTHJ1ZHM6IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBVbml0aXplLmZlZXQoMiksXG4gICAgICAgICAgICAgICAgcmlnaHQ6IFVuaXRpemUuZmVldCgxMiksXG4gICAgICAgICAgICAgICAgdXA6IFVuaXRpemUuZmVldCgwKSxcbiAgICAgICAgICAgICAgICBkb3duOiBVbml0aXplLmZlZXQoMjApLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZnJvbTogJ0FFMTknLFxuICAgICAgICAgICAgICB0bzogJ0FFMTgnLFxuICAgICAgICAgICAgICBraW5kOiBGcmNzU2hvdEtpbmQuTm9ybWFsLFxuICAgICAgICAgICAgICBkaXN0YW5jZTogVW5pdGl6ZS5mZWV0KDI0LjUpLFxuICAgICAgICAgICAgICBmcm9udHNpZ2h0QXppbXV0aDogVW5pdGl6ZS5kZWdyZWVzKDApLFxuICAgICAgICAgICAgICBiYWNrc2lnaHRBemltdXRoOiBVbml0aXplLmRlZ3JlZXMoMCksXG4gICAgICAgICAgICAgIGZyb250c2lnaHRJbmNsaW5hdGlvbjogVW5pdGl6ZS5kZWdyZWVzKC05MCksXG4gICAgICAgICAgICAgIGJhY2tzaWdodEluY2xpbmF0aW9uOiBudWxsLFxuICAgICAgICAgICAgICBleGNsdWRlRGlzdGFuY2U6IGZhbHNlLFxuICAgICAgICAgICAgICBjb21tZW50OiBudWxsLFxuXG4gICAgICAgICAgICAgIHRvTHJ1ZHM6IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBVbml0aXplLmZlZXQoNiksXG4gICAgICAgICAgICAgICAgcmlnaHQ6IFVuaXRpemUuZmVldCgxMCksXG4gICAgICAgICAgICAgICAgdXA6IFVuaXRpemUuZmVldCgyNSksXG4gICAgICAgICAgICAgICAgZG93bjogVW5pdGl6ZS5mZWV0KDApLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZnJvbTogJ0FFMTgnLFxuICAgICAgICAgICAgICB0bzogJ0FFMTcnLFxuICAgICAgICAgICAgICBraW5kOiBGcmNzU2hvdEtpbmQuTm9ybWFsLFxuICAgICAgICAgICAgICBkaXN0YW5jZTogVW5pdGl6ZS5mZWV0KDgpLFxuICAgICAgICAgICAgICBmcm9udHNpZ2h0QXppbXV0aDogVW5pdGl6ZS5kZWdyZWVzKDM1MC41KSxcbiAgICAgICAgICAgICAgYmFja3NpZ2h0QXppbXV0aDogVW5pdGl6ZS5kZWdyZWVzKDM1MC41KSxcbiAgICAgICAgICAgICAgZnJvbnRzaWdodEluY2xpbmF0aW9uOiBVbml0aXplLmRlZ3JlZXMoMTcpLFxuICAgICAgICAgICAgICBiYWNrc2lnaHRJbmNsaW5hdGlvbjogbnVsbCxcbiAgICAgICAgICAgICAgZXhjbHVkZURpc3RhbmNlOiBmYWxzZSxcbiAgICAgICAgICAgICAgY29tbWVudDogbnVsbCxcblxuICAgICAgICAgICAgICB0b0xydWRzOiB7XG4gICAgICAgICAgICAgICAgbGVmdDogVW5pdGl6ZS5mZWV0KDMpLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiBVbml0aXplLmZlZXQoNSksXG4gICAgICAgICAgICAgICAgdXA6IFVuaXRpemUuZmVldCgwKSxcbiAgICAgICAgICAgICAgICBkb3duOiBVbml0aXplLmZlZXQoMCksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBmcm9tOiAnQUUxNycsXG4gICAgICAgICAgICAgIHRvOiAnQUUxNicsXG4gICAgICAgICAgICAgIGtpbmQ6IEZyY3NTaG90S2luZC5Ob3JtYWwsXG4gICAgICAgICAgICAgIGRpc3RhbmNlOiBVbml0aXplLmZlZXQoNi43KSxcbiAgICAgICAgICAgICAgZnJvbnRzaWdodEF6aW11dGg6IFVuaXRpemUuZGVncmVlcygwKSxcbiAgICAgICAgICAgICAgYmFja3NpZ2h0QXppbXV0aDogVW5pdGl6ZS5kZWdyZWVzKDApLFxuICAgICAgICAgICAgICBmcm9udHNpZ2h0SW5jbGluYXRpb246IFVuaXRpemUuZGVncmVlcygtOTApLFxuICAgICAgICAgICAgICBiYWNrc2lnaHRJbmNsaW5hdGlvbjogbnVsbCxcbiAgICAgICAgICAgICAgZXhjbHVkZURpc3RhbmNlOiBmYWxzZSxcbiAgICAgICAgICAgICAgY29tbWVudDogbnVsbCxcblxuICAgICAgICAgICAgICB0b0xydWRzOiB7XG4gICAgICAgICAgICAgICAgbGVmdDogVW5pdGl6ZS5mZWV0KDMpLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiBVbml0aXplLmZlZXQoNSksXG4gICAgICAgICAgICAgICAgdXA6IFVuaXRpemUuZmVldCg2KSxcbiAgICAgICAgICAgICAgICBkb3duOiBVbml0aXplLmZlZXQoMSksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBmcm9tOiAnQUUxNicsXG4gICAgICAgICAgICAgIHRvOiAnQUUxNScsXG4gICAgICAgICAgICAgIGtpbmQ6IEZyY3NTaG90S2luZC5Ob3JtYWwsXG4gICAgICAgICAgICAgIGRpc3RhbmNlOiBVbml0aXplLmZlZXQoMTIuNiksXG4gICAgICAgICAgICAgIGZyb250c2lnaHRBemltdXRoOiBVbml0aXplLmRlZ3JlZXMoNzAuNSksXG4gICAgICAgICAgICAgIGJhY2tzaWdodEF6aW11dGg6IFVuaXRpemUuZGVncmVlcyg3MSksXG4gICAgICAgICAgICAgIGZyb250c2lnaHRJbmNsaW5hdGlvbjogVW5pdGl6ZS5kZWdyZWVzKC0xOCksXG4gICAgICAgICAgICAgIGJhY2tzaWdodEluY2xpbmF0aW9uOiBudWxsLFxuICAgICAgICAgICAgICBleGNsdWRlRGlzdGFuY2U6IGZhbHNlLFxuICAgICAgICAgICAgICBjb21tZW50OiBudWxsLFxuXG4gICAgICAgICAgICAgIHRvTHJ1ZHM6IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBVbml0aXplLmZlZXQoNCksXG4gICAgICAgICAgICAgICAgcmlnaHQ6IFVuaXRpemUuZmVldCgwKSxcbiAgICAgICAgICAgICAgICB1cDogVW5pdGl6ZS5mZWV0KDIpLFxuICAgICAgICAgICAgICAgIGRvd246IFVuaXRpemUuZmVldCgxKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGZyb206ICdBRTE1JyxcbiAgICAgICAgICAgICAgdG86ICdBRTE0JyxcbiAgICAgICAgICAgICAga2luZDogRnJjc1Nob3RLaW5kLk5vcm1hbCxcbiAgICAgICAgICAgICAgZGlzdGFuY2U6IFVuaXRpemUuZmVldCgxMCksXG4gICAgICAgICAgICAgIGZyb250c2lnaHRBemltdXRoOiBVbml0aXplLmRlZ3JlZXMoMjEuNSksXG4gICAgICAgICAgICAgIGJhY2tzaWdodEF6aW11dGg6IFVuaXRpemUuZGVncmVlcygyMCksXG4gICAgICAgICAgICAgIGZyb250c2lnaHRJbmNsaW5hdGlvbjogVW5pdGl6ZS5kZWdyZWVzKDYpLFxuICAgICAgICAgICAgICBiYWNrc2lnaHRJbmNsaW5hdGlvbjogbnVsbCxcbiAgICAgICAgICAgICAgZXhjbHVkZURpc3RhbmNlOiBmYWxzZSxcbiAgICAgICAgICAgICAgY29tbWVudDogbnVsbCxcblxuICAgICAgICAgICAgICB0b0xydWRzOiB7XG4gICAgICAgICAgICAgICAgbGVmdDogVW5pdGl6ZS5mZWV0KDUpLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiBVbml0aXplLmZlZXQoNSksXG4gICAgICAgICAgICAgICAgdXA6IFVuaXRpemUuZmVldCgwKSxcbiAgICAgICAgICAgICAgICBkb3duOiBVbml0aXplLmZlZXQoMyksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBmcm9tOiAnQUUxNCcsXG4gICAgICAgICAgICAgIHRvOiAnQUUxMycsXG4gICAgICAgICAgICAgIGtpbmQ6IEZyY3NTaG90S2luZC5Ob3JtYWwsXG4gICAgICAgICAgICAgIGRpc3RhbmNlOiBVbml0aXplLmZlZXQoMjYuOCksXG4gICAgICAgICAgICAgIGZyb250c2lnaHRBemltdXRoOiBVbml0aXplLmRlZ3JlZXMoMjg4KSxcbiAgICAgICAgICAgICAgYmFja3NpZ2h0QXppbXV0aDogVW5pdGl6ZS5kZWdyZWVzKDI4NiksXG4gICAgICAgICAgICAgIGZyb250c2lnaHRJbmNsaW5hdGlvbjogVW5pdGl6ZS5kZWdyZWVzKC01MCksXG4gICAgICAgICAgICAgIGJhY2tzaWdodEluY2xpbmF0aW9uOiBudWxsLFxuICAgICAgICAgICAgICBleGNsdWRlRGlzdGFuY2U6IGZhbHNlLFxuICAgICAgICAgICAgICBjb21tZW50OiBudWxsLFxuXG4gICAgICAgICAgICAgIHRvTHJ1ZHM6IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBVbml0aXplLmZlZXQoMCksXG4gICAgICAgICAgICAgICAgcmlnaHQ6IFVuaXRpemUuZmVldCg3KSxcbiAgICAgICAgICAgICAgICB1cDogVW5pdGl6ZS5mZWV0KDIwKSxcbiAgICAgICAgICAgICAgICBkb3duOiBVbml0aXplLmZlZXQoNSksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBmcm9tOiAnQUUxMycsXG4gICAgICAgICAgICAgIHRvOiAnQUUxMicsXG4gICAgICAgICAgICAgIGtpbmQ6IEZyY3NTaG90S2luZC5Ob3JtYWwsXG4gICAgICAgICAgICAgIGRpc3RhbmNlOiBVbml0aXplLmZlZXQoMjAuNyksXG4gICAgICAgICAgICAgIGZyb250c2lnaHRBemltdXRoOiBVbml0aXplLmRlZ3JlZXMoMjM2KSxcbiAgICAgICAgICAgICAgYmFja3NpZ2h0QXppbXV0aDogVW5pdGl6ZS5kZWdyZWVzKDIzNiksXG4gICAgICAgICAgICAgIGZyb250c2lnaHRJbmNsaW5hdGlvbjogVW5pdGl6ZS5kZWdyZWVzKDM0KSxcbiAgICAgICAgICAgICAgYmFja3NpZ2h0SW5jbGluYXRpb246IG51bGwsXG4gICAgICAgICAgICAgIGV4Y2x1ZGVEaXN0YW5jZTogZmFsc2UsXG4gICAgICAgICAgICAgIGNvbW1lbnQ6ICdTSE9SVCBDQU5ZT04gQVQgVEhFIEJBU0UgT0YgVEhFIFNFQ09ORCBEUk9QJyxcblxuICAgICAgICAgICAgICB0b0xydWRzOiB7XG4gICAgICAgICAgICAgICAgbGVmdDogVW5pdGl6ZS5mZWV0KDMpLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiBVbml0aXplLmZlZXQoNSksXG4gICAgICAgICAgICAgICAgdXA6IFVuaXRpemUuZmVldCg0KSxcbiAgICAgICAgICAgICAgICBkb3duOiBVbml0aXplLmZlZXQoNCksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICAgIG5hbWU6ICdUUklDS1kgVFJBVkVSU0UgQU5EIFRIRU4gRklSU1QgU1VSVkVZIElOIFVQUEVSIENST1dMV0FZJyxcbiAgICAgICAgICAgIGNvbW1lbnQ6IG51bGwsXG4gICAgICAgICAgICBzZWN0aW9uOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBkYXRlOiB1bmRlZmluZWQsXG4gICAgICAgICAgICB0ZWFtOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBkaXN0YW5jZVVuaXQ6IExlbmd0aC5pbmNoZXMsXG4gICAgICAgICAgICBhemltdXRoVW5pdDogQW5nbGUuZGVncmVlcyxcbiAgICAgICAgICAgIGluY2xpbmF0aW9uVW5pdDogQW5nbGUuZGVncmVlcyxcbiAgICAgICAgICAgIGJhY2tzaWdodEF6aW11dGhDb3JyZWN0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgYmFja3NpZ2h0SW5jbGluYXRpb25Db3JyZWN0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgaGFzQmFja3NpZ2h0QXppbXV0aDogdHJ1ZSxcbiAgICAgICAgICAgIGhhc0JhY2tzaWdodEluY2xpbmF0aW9uOiBmYWxzZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNob3RzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGZyb206ICdBMScsXG4gICAgICAgICAgICAgIHRvOiAnQTInLFxuICAgICAgICAgICAgICBraW5kOiBGcmNzU2hvdEtpbmQuTm9ybWFsLFxuICAgICAgICAgICAgICBkaXN0YW5jZTogVW5pdGl6ZS5pbmNoZXMoNDggKiAxMiArIDEwKSxcbiAgICAgICAgICAgICAgZnJvbnRzaWdodEF6aW11dGg6IFVuaXRpemUuZGVncmVlcygyOTIpLFxuICAgICAgICAgICAgICBiYWNrc2lnaHRBemltdXRoOiBVbml0aXplLmRlZ3JlZXMoMTEwKSxcbiAgICAgICAgICAgICAgZnJvbnRzaWdodEluY2xpbmF0aW9uOiBVbml0aXplLmRlZ3JlZXMoLTQyKSxcbiAgICAgICAgICAgICAgYmFja3NpZ2h0SW5jbGluYXRpb246IG51bGwsXG4gICAgICAgICAgICAgIGV4Y2x1ZGVEaXN0YW5jZTogZmFsc2UsXG4gICAgICAgICAgICAgIGNvbW1lbnQ6IG51bGwsXG4gICAgICAgICAgICAgIGZyb21McnVkczoge1xuICAgICAgICAgICAgICAgIGxlZnQ6IFVuaXRpemUuZmVldCgyKSxcbiAgICAgICAgICAgICAgICByaWdodDogVW5pdGl6ZS5mZWV0KDcpLFxuICAgICAgICAgICAgICAgIHVwOiBVbml0aXplLmZlZXQoMyksXG4gICAgICAgICAgICAgICAgZG93bjogVW5pdGl6ZS5mZWV0KDQuNSksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHRvTHJ1ZHM6IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBVbml0aXplLmZlZXQoNSksXG4gICAgICAgICAgICAgICAgcmlnaHQ6IFVuaXRpemUuZmVldCgxMCksXG4gICAgICAgICAgICAgICAgdXA6IFVuaXRpemUuZmVldCgzNSksXG4gICAgICAgICAgICAgICAgZG93bjogVW5pdGl6ZS5mZWV0KDUpLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZnJvbTogJ0EyJyxcbiAgICAgICAgICAgICAgdG86ICdBMycsXG4gICAgICAgICAgICAgIGtpbmQ6IEZyY3NTaG90S2luZC5Ob3JtYWwsXG4gICAgICAgICAgICAgIGRpc3RhbmNlOiBVbml0aXplLmluY2hlcygxMiAqIDEyICsgNSksXG4gICAgICAgICAgICAgIGZyb250c2lnaHRBemltdXRoOiBVbml0aXplLmRlZ3JlZXMoMzMzLjUpLFxuICAgICAgICAgICAgICBiYWNrc2lnaHRBemltdXRoOiBVbml0aXplLmRlZ3JlZXMoMTUzLjUpLFxuICAgICAgICAgICAgICBmcm9udHNpZ2h0SW5jbGluYXRpb246IFVuaXRpemUuZGVncmVlcygzNSksXG4gICAgICAgICAgICAgIGJhY2tzaWdodEluY2xpbmF0aW9uOiBudWxsLFxuICAgICAgICAgICAgICBleGNsdWRlRGlzdGFuY2U6IGZhbHNlLFxuICAgICAgICAgICAgICBjb21tZW50OiBudWxsLFxuXG4gICAgICAgICAgICAgIHRvTHJ1ZHM6IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBVbml0aXplLmZlZXQoMyksXG4gICAgICAgICAgICAgICAgcmlnaHQ6IFVuaXRpemUuZmVldCgxKSxcbiAgICAgICAgICAgICAgICB1cDogVW5pdGl6ZS5mZWV0KDE1KSxcbiAgICAgICAgICAgICAgICBkb3duOiBVbml0aXplLmZlZXQoNSksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBmcm9tOiAnQTMnLFxuICAgICAgICAgICAgICB0bzogJ0E0JyxcbiAgICAgICAgICAgICAga2luZDogRnJjc1Nob3RLaW5kLk5vcm1hbCxcbiAgICAgICAgICAgICAgZGlzdGFuY2U6IFVuaXRpemUuaW5jaGVzKDQgKiAxMiArIDIpLFxuICAgICAgICAgICAgICBmcm9udHNpZ2h0QXppbXV0aDogVW5pdGl6ZS5kZWdyZWVzKDApLFxuICAgICAgICAgICAgICBiYWNrc2lnaHRBemltdXRoOiBVbml0aXplLmRlZ3JlZXMoMCksXG4gICAgICAgICAgICAgIGZyb250c2lnaHRJbmNsaW5hdGlvbjogVW5pdGl6ZS5kZWdyZWVzKDkwKSxcbiAgICAgICAgICAgICAgYmFja3NpZ2h0SW5jbGluYXRpb246IG51bGwsXG4gICAgICAgICAgICAgIGV4Y2x1ZGVEaXN0YW5jZTogZmFsc2UsXG4gICAgICAgICAgICAgIGNvbW1lbnQ6IG51bGwsXG5cbiAgICAgICAgICAgICAgdG9McnVkczoge1xuICAgICAgICAgICAgICAgIGxlZnQ6IFVuaXRpemUuZmVldCgzKSxcbiAgICAgICAgICAgICAgICByaWdodDogVW5pdGl6ZS5mZWV0KDEpLFxuICAgICAgICAgICAgICAgIHVwOiBVbml0aXplLmZlZXQoMTApLFxuICAgICAgICAgICAgICAgIGRvd246IFVuaXRpemUuZmVldCgxMCksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICAgIGF6aW11dGhVbml0OiBBbmdsZS5kZWdyZWVzLFxuICAgICAgICAgICAgYmFja3NpZ2h0QXppbXV0aENvcnJlY3RlZDogdHJ1ZSxcbiAgICAgICAgICAgIGJhY2tzaWdodEluY2xpbmF0aW9uQ29ycmVjdGVkOiBmYWxzZSxcbiAgICAgICAgICAgIGNvbW1lbnQ6IG51bGwsXG4gICAgICAgICAgICBkYXRlOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBkaXN0YW5jZVVuaXQ6IExlbmd0aC5mZWV0LFxuICAgICAgICAgICAgaGFzQmFja3NpZ2h0QXppbXV0aDogdHJ1ZSxcbiAgICAgICAgICAgIGhhc0JhY2tzaWdodEluY2xpbmF0aW9uOiBmYWxzZSxcbiAgICAgICAgICAgIGluY2xpbmF0aW9uVW5pdDogQW5nbGUuZGVncmVlcyxcbiAgICAgICAgICAgIG5hbWU6IFwiRE9VRydTIERFTUlTRSAoNTAgRlQgRFJPUCksIENIUklTIENST1NTLCBDUkFXTCBBQk9WRSBEUk9QXCIsXG4gICAgICAgICAgICBzZWN0aW9uOiB1bmRlZmluZWQsXG4gICAgICAgICAgICB0ZWFtOiB1bmRlZmluZWQsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBzaG90czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBiYWNrc2lnaHRBemltdXRoOiBVbml0aXplLmRlZ3JlZXMoMCksXG4gICAgICAgICAgICAgIGJhY2tzaWdodEluY2xpbmF0aW9uOiBudWxsLFxuICAgICAgICAgICAgICBjb21tZW50OiBudWxsLFxuICAgICAgICAgICAgICBkaXN0YW5jZTogVW5pdGl6ZS5mZWV0KDEzLjcpLFxuICAgICAgICAgICAgICBleGNsdWRlRGlzdGFuY2U6IGZhbHNlLFxuICAgICAgICAgICAgICBmcm9tOiAnQjMwJyxcbiAgICAgICAgICAgICAgZnJvbnRzaWdodEF6aW11dGg6IFVuaXRpemUuZGVncmVlcygwKSxcbiAgICAgICAgICAgICAgZnJvbnRzaWdodEluY2xpbmF0aW9uOiBVbml0aXplLmRlZ3JlZXMoNDApLFxuICAgICAgICAgICAgICBraW5kOiAnICcsXG4gICAgICAgICAgICAgIHRvOiAnQjMxJyxcblxuICAgICAgICAgICAgICB0b0xydWRzOiB7XG4gICAgICAgICAgICAgICAgbGVmdDogVW5pdGl6ZS5mZWV0KDIpLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiBVbml0aXplLmZlZXQoNCksXG4gICAgICAgICAgICAgICAgdXA6IFVuaXRpemUuZmVldCg2KSxcbiAgICAgICAgICAgICAgICBkb3duOiBudWxsLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgYmFja3NpZ2h0QXppbXV0aDogVW5pdGl6ZS5kZWdyZWVzKDApLFxuICAgICAgICAgICAgICBiYWNrc2lnaHRJbmNsaW5hdGlvbjogbnVsbCxcbiAgICAgICAgICAgICAgY29tbWVudDogbnVsbCxcbiAgICAgICAgICAgICAgZGlzdGFuY2U6IFVuaXRpemUuZmVldCgxMy43KSxcbiAgICAgICAgICAgICAgZXhjbHVkZURpc3RhbmNlOiB0cnVlLFxuICAgICAgICAgICAgICBpc1NwbGF5OiB0cnVlLFxuICAgICAgICAgICAgICBmcm9tOiAnQjMwJyxcbiAgICAgICAgICAgICAgZnJvbnRzaWdodEF6aW11dGg6IFVuaXRpemUuZGVncmVlcygwKSxcbiAgICAgICAgICAgICAgZnJvbnRzaWdodEluY2xpbmF0aW9uOiBVbml0aXplLmRlZ3JlZXMoNDApLFxuICAgICAgICAgICAgICBraW5kOiAnICcsXG4gICAgICAgICAgICAgIHRvOiAnQjMwc3AnLFxuICAgICAgICAgICAgICB0b0xydWRzOiB7XG4gICAgICAgICAgICAgICAgbGVmdDogVW5pdGl6ZS5mZWV0KDIpLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiBVbml0aXplLmZlZXQoNCksXG4gICAgICAgICAgICAgICAgdXA6IFVuaXRpemUuZmVldCg2KSxcbiAgICAgICAgICAgICAgICBkb3duOiBudWxsLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KVxuICB9KVxufSlcbiJdLCJtYXBwaW5ncyI6Ijs7QUFFQSxJQUFBQSxNQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxTQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxLQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxTQUFBLEdBQUFKLE9BQUE7QUFOQTs7QUFRQSxJQUFBSyxlQUFRLEVBQUMscUJBQXFCLEVBQUUsTUFBTTtFQUNwQyxJQUFBQyxTQUFFLEVBQUMsWUFBWSxFQUFFLGtCQUFpQjtJQUNoQyxNQUFNQyxNQUFNLEdBQUcsTUFBTSxJQUFBQywwQkFBbUIsRUFBQ1IsT0FBTyxDQUFDUyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdkUsSUFBQUMsWUFBTSxFQUFDSCxNQUFNLENBQUMsQ0FBQ0ksRUFBRSxDQUFDQyxJQUFJLENBQUNDLEtBQUssQ0FBQztNQUMzQkMsSUFBSSxFQUFFLDBCQUEwQjtNQUNoQ0MsTUFBTSxFQUFFLEVBQUU7TUFDVkMsUUFBUSxFQUFFLGNBQWM7TUFDeEJDLEtBQUssRUFBRSxDQUNMO1FBQ0VDLE1BQU0sRUFBRTtVQUNOQyxJQUFJLEVBQ0YsbUVBQW1FO1VBQ3JFQyxPQUFPLEVBQUUsZ0RBQWdEO1VBQ3pEQyxPQUFPLEVBQUVDLFNBQVM7VUFDbEJDLElBQUksRUFBRUQsU0FBUztVQUNmRSxJQUFJLEVBQUVGLFNBQVM7VUFDZkcsWUFBWSxFQUFFQyxnQkFBTSxDQUFDQyxJQUFJO1VBQ3pCQyxXQUFXLEVBQUVDLGVBQUssQ0FBQ0MsT0FBTztVQUMxQkMsZUFBZSxFQUFFRixlQUFLLENBQUNDLE9BQU87VUFDOUJFLHlCQUF5QixFQUFF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
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _mocha = require("mocha");
|
|
4
|
-
var _chai = require("chai");
|
|
5
|
-
var _index = require("./index");
|
|
6
|
-
var _unitized = require("@speleotica/unitized");
|
|
7
|
-
(0, _mocha.describe)('parseFrcsTripSummaryFile', function () {
|
|
8
|
-
(0, _mocha.it)('basic test', async function () {
|
|
9
|
-
const parsed = await (0, _index.parseFrcsTripSummaryFile)(require.resolve('./STAT_sum.txt'));
|
|
10
|
-
(0, _chai.expect)(parsed).to.deep.equal({
|
|
11
|
-
errors: [],
|
|
12
|
-
tripSummaries: [{
|
|
13
|
-
tripNumber: 1,
|
|
14
|
-
tripIndex: 0,
|
|
15
|
-
date: new Date(81, 1, 15),
|
|
16
|
-
totalLength: _unitized.Unitize.feet(258.6),
|
|
17
|
-
numShots: 17,
|
|
18
|
-
name: 'ENTRANCE DROPS, JOE\'S "I LOVE MY WIFE TRAVERSE", TRICKY TRAVERSE',
|
|
19
|
-
excludedLength: _unitized.Unitize.feet(0),
|
|
20
|
-
numExcludedShots: 0,
|
|
21
|
-
team: ['Peter Quick', 'Keith Ortiz'],
|
|
22
|
-
shots: ['A1', 'AD1-AD3', 'AE1', 'AE1 SIDE', 'AE9 SIDE', 'AE10-AE9', 'AE13 SIDE', 'AE15 SIDE', 'AE20-AE11']
|
|
23
|
-
}, {
|
|
24
|
-
tripNumber: 2,
|
|
25
|
-
tripIndex: 1,
|
|
26
|
-
date: new Date(81, 1, 14),
|
|
27
|
-
totalLength: _unitized.Unitize.feet(1133.75),
|
|
28
|
-
numShots: 55,
|
|
29
|
-
name: 'TRICKY TRAVERSE AND THEN FIRST SURVEY IN UPPER CROWLWAY',
|
|
30
|
-
excludedLength: _unitized.Unitize.feet(0),
|
|
31
|
-
numExcludedShots: 0,
|
|
32
|
-
team: ['Dan Crowl', 'Keith Ortiz', 'Chip Hopper', 'Peter Quick', 'Larry Bean'],
|
|
33
|
-
shots: ['A1-A56']
|
|
34
|
-
}, {
|
|
35
|
-
tripNumber: 3,
|
|
36
|
-
tripIndex: 2,
|
|
37
|
-
date: new Date(81, 2, 6),
|
|
38
|
-
totalLength: _unitized.Unitize.feet(2371.2),
|
|
39
|
-
numShots: 61,
|
|
40
|
-
name: "DOUG'S DEMISE (50 FT DROP), CHRIS CROSS, CRAWL ABOVE DROP",
|
|
41
|
-
excludedLength: _unitized.Unitize.feet(0),
|
|
42
|
-
numExcludedShots: 0,
|
|
43
|
-
team: ['Peter Quick', 'Chris Gerace', 'Phil Oden', 'Chip Hopper'],
|
|
44
|
-
shots: ['A13 SIDE', 'B1-B5', 'B2 SIDE', 'B3 SIDE', 'B6-B18', 'B17 SIDE', 'B19-B38', 'B32 SIDE', 'BS1-BS5', 'C1-C18']
|
|
45
|
-
}]
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
|
-
(0, _mocha.it)('old format', async function () {
|
|
49
|
-
const parsed = await (0, _index.parseFrcsTripSummaryFile)(require.resolve('./STAT_sum_old.txt'));
|
|
50
|
-
(0, _chai.expect)(parsed).to.deep.equal({
|
|
51
|
-
errors: [],
|
|
52
|
-
tripSummaries: [{
|
|
53
|
-
tripNumber: 1,
|
|
54
|
-
tripIndex: 0,
|
|
55
|
-
date: new Date(81, 1, 15),
|
|
56
|
-
totalLength: _unitized.Unitize.feet(258.6),
|
|
57
|
-
numShots: 17,
|
|
58
|
-
name: 'ENTRANCE DROPS, JOE\'S "I LOVE MY WIFE TRAVERSE", TRICKY TRAVERSE',
|
|
59
|
-
excludedLength: _unitized.Unitize.feet(0),
|
|
60
|
-
numExcludedShots: 0,
|
|
61
|
-
team: ['Peter Quick', 'Keith Ortiz'],
|
|
62
|
-
shots: ['A1', 'AD1-AD3', 'AE1', 'AE1 SIDE', 'AE9 SIDE', 'AE10-AE9', 'AE13 SIDE', 'AE15 SIDE', 'AE20-AE11']
|
|
63
|
-
}, undefined, {
|
|
64
|
-
tripNumber: 3,
|
|
65
|
-
tripIndex: 2,
|
|
66
|
-
date: new Date(81, 2, 6),
|
|
67
|
-
totalLength: _unitized.Unitize.feet(2371.2),
|
|
68
|
-
numShots: 61,
|
|
69
|
-
name: "DOUG'S DEMISE (50 FT DROP), CHRIS CROSS, CRAWL ABOVE DROP",
|
|
70
|
-
excludedLength: _unitized.Unitize.feet(0),
|
|
71
|
-
numExcludedShots: 0,
|
|
72
|
-
team: ['Peter Quick', 'Chris Gerace', 'Phil Oden', 'Chip Hopper'],
|
|
73
|
-
shots: ['A13 SIDE', 'B1-B5', 'B2 SIDE', 'B3 SIDE', 'B6-B18', 'B17 SIDE', 'B19-B38', 'B32 SIDE', 'BS1-BS5', 'C1-C18']
|
|
74
|
-
}]
|
|
75
|
-
});
|
|
76
|
-
});
|
|
77
|
-
});
|
|
78
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9jaGEiLCJyZXF1aXJlIiwiX2NoYWkiLCJfaW5kZXgiLCJfdW5pdGl6ZWQiLCJkZXNjcmliZSIsIml0IiwicGFyc2VkIiwicGFyc2VGcmNzVHJpcFN1bW1hcnlGaWxlIiwicmVzb2x2ZSIsImV4cGVjdCIsInRvIiwiZGVlcCIsImVxdWFsIiwiZXJyb3JzIiwidHJpcFN1bW1hcmllcyIsInRyaXBOdW1iZXIiLCJ0cmlwSW5kZXgiLCJkYXRlIiwiRGF0ZSIsInRvdGFsTGVuZ3RoIiwiVW5pdGl6ZSIsImZlZXQiLCJudW1TaG90cyIsIm5hbWUiLCJleGNsdWRlZExlbmd0aCIsIm51bUV4Y2x1ZGVkU2hvdHMiLCJ0ZWFtIiwic2hvdHMiLCJ1bmRlZmluZWQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbm9kZS9wYXJzZUZyY3NUcmlwU3VtbWFyeUZpbGUuc3BlYy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkZXNjcmliZSwgaXQgfSBmcm9tICdtb2NoYSdcbmltcG9ydCB7IGV4cGVjdCB9IGZyb20gJ2NoYWknXG5pbXBvcnQgeyBwYXJzZUZyY3NUcmlwU3VtbWFyeUZpbGUgfSBmcm9tICcuL2luZGV4J1xuaW1wb3J0IHsgVW5pdGl6ZSB9IGZyb20gJ0BzcGVsZW90aWNhL3VuaXRpemVkJ1xuXG5kZXNjcmliZSgncGFyc2VGcmNzVHJpcFN1bW1hcnlGaWxlJywgZnVuY3Rpb24oKSB7XG4gIGl0KCdiYXNpYyB0ZXN0JywgYXN5bmMgZnVuY3Rpb24oKSB7XG4gICAgY29uc3QgcGFyc2VkID0gYXdhaXQgcGFyc2VGcmNzVHJpcFN1bW1hcnlGaWxlKFxuICAgICAgcmVxdWlyZS5yZXNvbHZlKCcuL1NUQVRfc3VtLnR4dCcpXG4gICAgKVxuICAgIGV4cGVjdChwYXJzZWQpLnRvLmRlZXAuZXF1YWwoe1xuICAgICAgZXJyb3JzOiBbXSxcbiAgICAgIHRyaXBTdW1tYXJpZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHRyaXBOdW1iZXI6IDEsXG4gICAgICAgICAgdHJpcEluZGV4OiAwLFxuICAgICAgICAgIGRhdGU6IG5ldyBEYXRlKDgxLCAxLCAxNSksXG4gICAgICAgICAgdG90YWxMZW5ndGg6IFVuaXRpemUuZmVldCgyNTguNiksXG4gICAgICAgICAgbnVtU2hvdHM6IDE3LFxuICAgICAgICAgIG5hbWU6XG4gICAgICAgICAgICAnRU5UUkFOQ0UgRFJPUFMsIEpPRVxcJ1MgXCJJIExPVkUgTVkgV0lGRSBUUkFWRVJTRVwiLCBUUklDS1kgVFJBVkVSU0UnLFxuICAgICAgICAgIGV4Y2x1ZGVkTGVuZ3RoOiBVbml0aXplLmZlZXQoMCksXG4gICAgICAgICAgbnVtRXhjbHVkZWRTaG90czogMCxcbiAgICAgICAgICB0ZWFtOiBbJ1BldGVyIFF1aWNrJywgJ0tlaXRoIE9ydGl6J10sXG4gICAgICAgICAgc2hvdHM6IFtcbiAgICAgICAgICAgICdBMScsXG4gICAgICAgICAgICAnQUQxLUFEMycsXG4gICAgICAgICAgICAnQUUxJyxcbiAgICAgICAgICAgICdBRTEgU0lERScsXG4gICAgICAgICAgICAnQUU5IFNJREUnLFxuICAgICAgICAgICAgJ0FFMTAtQUU5JyxcbiAgICAgICAgICAgICdBRTEzIFNJREUnLFxuICAgICAgICAgICAgJ0FFMTUgU0lERScsXG4gICAgICAgICAgICAnQUUyMC1BRTExJyxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHJpcE51bWJlcjogMixcbiAgICAgICAgICB0cmlwSW5kZXg6IDEsXG4gICAgICAgICAgZGF0ZTogbmV3IERhdGUoODEsIDEsIDE0KSxcbiAgICAgICAgICB0b3RhbExlbmd0aDogVW5pdGl6ZS5mZWV0KDExMzMuNzUpLFxuICAgICAgICAgIG51bVNob3RzOiA1NSxcbiAgICAgICAgICBuYW1lOiAnVFJJQ0tZIFRSQVZFUlNFIEFORCBUSEVOIEZJUlNUIFNVUlZFWSBJTiBVUFBFUiBDUk9XTFdBWScsXG4gICAgICAgICAgZXhjbHVkZWRMZW5ndGg6IFVuaXRpemUuZmVldCgwKSxcbiAgICAgICAgICBudW1FeGNsdWRlZFNob3RzOiAwLFxuICAgICAgICAgIHRlYW06IFtcbiAgICAgICAgICAgICdEYW4gQ3Jvd2wnLFxuICAgICAgICAgICAgJ0tlaXRoIE9ydGl6JyxcbiAgICAgICAgICAgICdDaGlwIEhvcHBlcicsXG4gICAgICAgICAgICAnUGV0ZXIgUXVpY2snLFxuICAgICAgICAgICAgJ0xhcnJ5IEJlYW4nLFxuICAgICAgICAgIF0sXG4gICAgICAgICAgc2hvdHM6IFsnQTEtQTU2J10sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0cmlwTnVtYmVyOiAzLFxuICAgICAgICAgIHRyaXBJbmRleDogMixcbiAgICAgICAgICBkYXRlOiBuZXcgRGF0ZSg4MSwgMiwgNiksXG4gICAgICAgICAgdG90YWxMZW5ndGg6IFVuaXRpemUuZmVldCgyMzcxLjIpLFxuICAgICAgICAgIG51bVNob3RzOiA2MSxcbiAgICAgICAgICBuYW1lOiBcIkRPVUcnUyBERU1JU0UgKDUwIEZUIERST1ApLCBDSFJJUyBDUk9TUywgQ1JBV0wgQUJPVkUgRFJPUFwiLFxuICAgICAgICAgIGV4Y2x1ZGVkTGVuZ3RoOiBVbml0aXplLmZlZXQoMCksXG4gICAgICAgICAgbnVtRXhjbHVkZWRTaG90czogMCxcbiAgICAgICAgICB0ZWFtOiBbJ1BldGVyIFF1aWNrJywgJ0NocmlzIEdlcmFjZScsICdQaGlsIE9kZW4nLCAnQ2hpcCBIb3BwZXInXSxcbiAgICAgICAgICBzaG90czogW1xuICAgICAgICAgICAgJ0ExMyBTSURFJyxcbiAgICAgICAgICAgICdCMS1CNScsXG4gICAgICAgICAgICAnQjIgU0lERScsXG4gICAgICAgICAgICAnQjMgU0lERScsXG4gICAgICAgICAgICAnQjYtQjE4JyxcbiAgICAgICAgICAgICdCMTcgU0lERScsXG4gICAgICAgICAgICAnQjE5LUIzOCcsXG4gICAgICAgICAgICAnQjMyIFNJREUnLFxuICAgICAgICAgICAgJ0JTMS1CUzUnLFxuICAgICAgICAgICAgJ0MxLUMxOCcsXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSlcbiAgfSlcbiAgaXQoJ29sZCBmb3JtYXQnLCBhc3luYyBmdW5jdGlvbigpIHtcbiAgICBjb25zdCBwYXJzZWQgPSBhd2FpdCBwYXJzZUZyY3NUcmlwU3VtbWFyeUZpbGUoXG4gICAgICByZXF1aXJlLnJlc29sdmUoJy4vU1RBVF9zdW1fb2xkLnR4dCcpXG4gICAgKVxuICAgIGV4cGVjdChwYXJzZWQpLnRvLmRlZXAuZXF1YWwoe1xuICAgICAgZXJyb3JzOiBbXSxcbiAgICAgIHRyaXBTdW1tYXJpZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHRyaXBOdW1iZXI6IDEsXG4gICAgICAgICAgdHJpcEluZGV4OiAwLFxuICAgICAgICAgIGRhdGU6IG5ldyBEYXRlKDgxLCAxLCAxNSksXG4gICAgICAgICAgdG90YWxMZW5ndGg6IFVuaXRpemUuZmVldCgyNTguNiksXG4gICAgICAgICAgbnVtU2hvdHM6IDE3LFxuICAgICAgICAgIG5hbWU6XG4gICAgICAgICAgICAnRU5UUkFOQ0UgRFJPUFMsIEpPRVxcJ1MgXCJJIExPVkUgTVkgV0lGRSBUUkFWRVJTRVwiLCBUUklDS1kgVFJBVkVSU0UnLFxuICAgICAgICAgIGV4Y2x1ZGVkTGVuZ3RoOiBVbml0aXplLmZlZXQoMCksXG4gICAgICAgICAgbnVtRXhjbHVkZWRTaG90czogMCxcbiAgICAgICAgICB0ZWFtOiBbJ1BldGVyIFF1aWNrJywgJ0tlaXRoIE9ydGl6J10sXG4gICAgICAgICAgc2hvdHM6IFtcbiAgICAgICAgICAgICdBMScsXG4gICAgICAgICAgICAnQUQxLUFEMycsXG4gICAgICAgICAgICAnQUUxJyxcbiAgICAgICAgICAgICdBRTEgU0lERScsXG4gICAgICAgICAgICAnQUU5IFNJREUnLFxuICAgICAgICAgICAgJ0FFMTAtQUU5JyxcbiAgICAgICAgICAgICdBRTEzIFNJREUnLFxuICAgICAgICAgICAgJ0FFMTUgU0lERScsXG4gICAgICAgICAgICAnQUUyMC1BRTExJyxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgIHtcbiAgICAgICAgICB0cmlwTnVtYmVyOiAzLFxuICAgICAgICAgIHRyaXBJbmRleDogMixcbiAgICAgICAgICBkYXRlOiBuZXcgRGF0ZSg4MSwgMiwgNiksXG4gICAgICAgICAgdG90YWxMZW5ndGg6IFVuaXRpemUuZmVldCgyMzcxLjIpLFxuICAgICAgICAgIG51bVNob3RzOiA2MSxcbiAgICAgICAgICBuYW1lOiBcIkRPVUcnUyBERU1JU0UgKDUwIEZUIERST1ApLCBDSFJJUyBDUk9TUywgQ1JBV0wgQUJPVkUgRFJPUFwiLFxuICAgICAgICAgIGV4Y2x1ZGVkTGVuZ3RoOiBVbml0aXplLmZlZXQoMCksXG4gICAgICAgICAgbnVtRXhjbHVkZWRTaG90czogMCxcbiAgICAgICAgICB0ZWFtOiBbJ1BldGVyIFF1aWNrJywgJ0NocmlzIEdlcmFjZScsICdQaGlsIE9kZW4nLCAnQ2hpcCBIb3BwZXInXSxcbiAgICAgICAgICBzaG90czogW1xuICAgICAgICAgICAgJ0ExMyBTSURFJyxcbiAgICAgICAgICAgICdCMS1CNScsXG4gICAgICAgICAgICAnQjIgU0lERScsXG4gICAgICAgICAgICAnQjMgU0lERScsXG4gICAgICAgICAgICAnQjYtQjE4JyxcbiAgICAgICAgICAgICdCMTcgU0lERScsXG4gICAgICAgICAgICAnQjE5LUIzOCcsXG4gICAgICAgICAgICAnQjMyIFNJREUnLFxuICAgICAgICAgICAgJ0JTMS1CUzUnLFxuICAgICAgICAgICAgJ0MxLUMxOCcsXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSlcbiAgfSlcbn0pXG4iXSwibWFwcGluZ3MiOiI7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsS0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsTUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsU0FBQSxH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
|
package/es/parseFrcsPlotFile.js
DELETED
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = parseFrcsPlotFile;
|
|
7
|
-
var _unitized = require("@speleotica/unitized");
|
|
8
|
-
var _parseSegment = require("parse-segment");
|
|
9
|
-
/**
|
|
10
|
-
* Parses data from a calculated survey file. These look like so:
|
|
11
|
-
<pre> 123.182259
|
|
12
|
-
AE20 1 1 0 0 0 153 -257 -51 85 0 20 1
|
|
13
|
-
AE19 1 2 653 402 -548 1046 -587 -174 97 0 200 1
|
|
14
|
-
AE18 2 3 669 449 -3002 995 94 -597 -56 250 0 1
|
|
15
|
-
AE17 3 4 539 1217 -2770 497 47 -298 -28 0 0 1
|
|
16
|
-
AE16 4 5 544 1230 -3441 411 -284 -246 170 60 10 1
|
|
17
|
-
AE15 5 6 1679 1663 -3833 0 0 -282 283 20 10 1
|
|
18
|
-
AE14 6 7 2026 2617 -3730 446 225 -446 -225 0 30 1
|
|
19
|
-
AE13 7 8 391 3152 -5788 -111 691 0 0 200 50 1
|
|
20
|
-
AE12 8 9 -1019 2175 -4630 -369 336 221 -201 40 40 1
|
|
21
|
-
AE11 9 10 -1516 1289 -3919 -348 195 610 -342 50 10 1</pre>
|
|
22
|
-
*/
|
|
23
|
-
async function parseFrcsPlotFile(file, lines) {
|
|
24
|
-
let totalLength = _unitized.Unitize.feet(NaN);
|
|
25
|
-
const shots = [];
|
|
26
|
-
const errors = [];
|
|
27
|
-
let lineNumber = 0;
|
|
28
|
-
const error = (message, line, startColumn, endColumn) => {
|
|
29
|
-
errors.push(new _parseSegment.SegmentParseError(message, new _parseSegment.Segment({
|
|
30
|
-
value: line,
|
|
31
|
-
source: file,
|
|
32
|
-
startLine: lineNumber - 1,
|
|
33
|
-
startCol: 0
|
|
34
|
-
}).substring(startColumn, endColumn)));
|
|
35
|
-
};
|
|
36
|
-
function parseUint(line, startColumn, endColumn, fieldName) {
|
|
37
|
-
const str = line.substring(startColumn, endColumn);
|
|
38
|
-
if (!/\S/.test(str)) {
|
|
39
|
-
error(`Missing ${fieldName}`, line, startColumn, endColumn);
|
|
40
|
-
return null;
|
|
41
|
-
}
|
|
42
|
-
if (!/^\s*\d+\s*$/.test(str)) {
|
|
43
|
-
error(`Invalid ${fieldName}`, line, startColumn, endColumn);
|
|
44
|
-
return null;
|
|
45
|
-
}
|
|
46
|
-
return parseInt(str);
|
|
47
|
-
}
|
|
48
|
-
function parseOptionalUint(line, startColumn, endColumn, fieldName) {
|
|
49
|
-
const str = line.substring(startColumn, endColumn);
|
|
50
|
-
if (!/\S/.test(str)) {
|
|
51
|
-
return null;
|
|
52
|
-
}
|
|
53
|
-
if (!/^\s*\d+\s*$/.test(str)) {
|
|
54
|
-
error(`Invalid ${fieldName}`, line, startColumn, endColumn);
|
|
55
|
-
return null;
|
|
56
|
-
}
|
|
57
|
-
return parseInt(str);
|
|
58
|
-
}
|
|
59
|
-
function parseLength(line, startColumn, endColumn, fieldName, divisor) {
|
|
60
|
-
const str = line.substring(startColumn, endColumn);
|
|
61
|
-
if (!/^\s*-?\d+\s*$/.test(str)) {
|
|
62
|
-
error(`Invalid ${fieldName}`, line, startColumn, endColumn);
|
|
63
|
-
return null;
|
|
64
|
-
}
|
|
65
|
-
const value = parseFloat(str);
|
|
66
|
-
if (isNaN(value)) {
|
|
67
|
-
error(`Missing ${fieldName}`, line, startColumn, endColumn);
|
|
68
|
-
return null;
|
|
69
|
-
}
|
|
70
|
-
return _unitized.Unitize.feet(value / divisor);
|
|
71
|
-
}
|
|
72
|
-
for await (const line of lines) {
|
|
73
|
-
lineNumber++;
|
|
74
|
-
if (lineNumber === 1) {
|
|
75
|
-
totalLength = _unitized.Unitize.feet(parseFloat(line));
|
|
76
|
-
continue;
|
|
77
|
-
}
|
|
78
|
-
if (!/\S/.test(line)) continue;
|
|
79
|
-
const toName = line.substring(0, 6).trim();
|
|
80
|
-
if (!toName) {
|
|
81
|
-
error('Invalid to station name', line, 0, 6);
|
|
82
|
-
continue;
|
|
83
|
-
}
|
|
84
|
-
if (/[^ S]/.test(line[6])) {
|
|
85
|
-
error('Invalid flag', line, 6, 7);
|
|
86
|
-
continue;
|
|
87
|
-
}
|
|
88
|
-
const isSurface = line[6] === 'S';
|
|
89
|
-
const fromNumber = parseUint(line, 7, 12, 'from station number');
|
|
90
|
-
if (fromNumber == null) continue;
|
|
91
|
-
const toNumber = parseUint(line, 12, 17, 'to station number');
|
|
92
|
-
if (toNumber == null) continue;
|
|
93
|
-
const easting = parseLength(line, 17, 25, 'easting', 100);
|
|
94
|
-
if (!easting) continue;
|
|
95
|
-
const northing = parseLength(line, 25, 33, 'northing', 100);
|
|
96
|
-
if (!northing) continue;
|
|
97
|
-
const elevation = parseLength(line, 33, 40, 'elevation', 100);
|
|
98
|
-
if (!elevation) continue;
|
|
99
|
-
const leftEasting = parseLength(line, 40, 46, 'left wall easting', 100);
|
|
100
|
-
if (!leftEasting) continue;
|
|
101
|
-
const leftNorthing = parseLength(line, 46, 52, 'left wall northing', 100);
|
|
102
|
-
if (!leftNorthing) continue;
|
|
103
|
-
const rightEasting = parseLength(line, 52, 58, 'right wall easting', 100);
|
|
104
|
-
if (!rightEasting) continue;
|
|
105
|
-
const rightNorthing = parseLength(line, 58, 64, 'right wall northing', 100);
|
|
106
|
-
if (!rightNorthing) continue;
|
|
107
|
-
const up = parseLength(line, 64, 68, 'up', 10);
|
|
108
|
-
if (!up) continue;
|
|
109
|
-
const down = parseLength(line, 68, 72, 'down', 10);
|
|
110
|
-
if (!down) continue;
|
|
111
|
-
const tripNumber = parseOptionalUint(line, 72, 78, 'trip number');
|
|
112
|
-
shots.push({
|
|
113
|
-
toName,
|
|
114
|
-
isSurface,
|
|
115
|
-
fromNumber,
|
|
116
|
-
toNumber,
|
|
117
|
-
easting,
|
|
118
|
-
northing,
|
|
119
|
-
elevation,
|
|
120
|
-
leftEasting,
|
|
121
|
-
leftNorthing,
|
|
122
|
-
rightEasting,
|
|
123
|
-
rightNorthing,
|
|
124
|
-
up,
|
|
125
|
-
down,
|
|
126
|
-
tripNumber
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
|
-
return {
|
|
130
|
-
totalLength,
|
|
131
|
-
shots,
|
|
132
|
-
errors
|
|
133
|
-
};
|
|
134
|
-
}
|
|
135
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdW5pdGl6ZWQiLCJyZXF1aXJlIiwiX3BhcnNlU2VnbWVudCIsInBhcnNlRnJjc1Bsb3RGaWxlIiwiZmlsZSIsImxpbmVzIiwidG90YWxMZW5ndGgiLCJVbml0aXplIiwiZmVldCIsIk5hTiIsInNob3RzIiwiZXJyb3JzIiwibGluZU51bWJlciIsImVycm9yIiwibWVzc2FnZSIsImxpbmUiLCJzdGFydENvbHVtbiIsImVuZENvbHVtbiIsInB1c2giLCJTZWdtZW50UGFyc2VFcnJvciIsIlNlZ21lbnQiLCJ2YWx1ZSIsInNvdXJjZSIsInN0YXJ0TGluZSIsInN0YXJ0Q29sIiwic3Vic3RyaW5nIiwicGFyc2VVaW50IiwiZmllbGROYW1lIiwic3RyIiwidGVzdCIsInBhcnNlSW50IiwicGFyc2VPcHRpb25hbFVpbnQiLCJwYXJzZUxlbmd0aCIsImRpdmlzb3IiLCJwYXJzZUZsb2F0IiwiaXNOYU4iLCJ0b05hbWUiLCJ0cmltIiwiaXNTdXJmYWNlIiwiZnJvbU51bWJlciIsInRvTnVtYmVyIiwiZWFzdGluZyIsIm5vcnRoaW5nIiwiZWxldmF0aW9uIiwibGVmdEVhc3RpbmciLCJsZWZ0Tm9ydGhpbmciLCJyaWdodEVhc3RpbmciLCJyaWdodE5vcnRoaW5nIiwidXAiLCJkb3duIiwidHJpcE51bWJlciJdLCJzb3VyY2VzIjpbIi4uL3NyYy9wYXJzZUZyY3NQbG90RmlsZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGcmNzUGxvdFNob3QgfSBmcm9tICcuL0ZyY3NQbG90U2hvdCdcbmltcG9ydCB7IEZyY3NQbG90RmlsZSB9IGZyb20gJy4vRnJjc1Bsb3RGaWxlJ1xuaW1wb3J0IHsgTGVuZ3RoLCBVbml0aXplZE51bWJlciwgVW5pdGl6ZSB9IGZyb20gJ0BzcGVsZW90aWNhL3VuaXRpemVkJ1xuaW1wb3J0IHsgU2VnbWVudCwgU2VnbWVudFBhcnNlRXJyb3IgfSBmcm9tICdwYXJzZS1zZWdtZW50J1xuXG4vKipcbiAqIFBhcnNlcyBkYXRhIGZyb20gYSBjYWxjdWxhdGVkIHN1cnZleSBmaWxlLiAgVGhlc2UgbG9vayBsaWtlIHNvOlxuPHByZT4gIDEyMy4xODIyNTlcbiAgQUUyMCAgICAgMSAgICAxICAgICAgIDAgICAgICAgMCAgICAgIDAgICAxNTMgIC0yNTcgICAtNTEgICAgODUgICAwICAyMCAgICAgMVxuICBBRTE5ICAgICAxICAgIDIgICAgIDY1MyAgICAgNDAyICAgLTU0OCAgMTA0NiAgLTU4NyAgLTE3NCAgICA5NyAgIDAgMjAwICAgICAxXG4gIEFFMTggICAgIDIgICAgMyAgICAgNjY5ICAgICA0NDkgIC0zMDAyICAgOTk1ICAgIDk0ICAtNTk3ICAgLTU2IDI1MCAgIDAgICAgIDFcbiAgQUUxNyAgICAgMyAgICA0ICAgICA1MzkgICAgMTIxNyAgLTI3NzAgICA0OTcgICAgNDcgIC0yOTggICAtMjggICAwICAgMCAgICAgMVxuICBBRTE2ICAgICA0ICAgIDUgICAgIDU0NCAgICAxMjMwICAtMzQ0MSAgIDQxMSAgLTI4NCAgLTI0NiAgIDE3MCAgNjAgIDEwICAgICAxXG4gIEFFMTUgICAgIDUgICAgNiAgICAxNjc5ICAgIDE2NjMgIC0zODMzICAgICAwICAgICAwICAtMjgyICAgMjgzICAyMCAgMTAgICAgIDFcbiAgQUUxNCAgICAgNiAgICA3ICAgIDIwMjYgICAgMjYxNyAgLTM3MzAgICA0NDYgICAyMjUgIC00NDYgIC0yMjUgICAwICAzMCAgICAgMVxuICBBRTEzICAgICA3ICAgIDggICAgIDM5MSAgICAzMTUyICAtNTc4OCAgLTExMSAgIDY5MSAgICAgMCAgICAgMCAyMDAgIDUwICAgICAxXG4gIEFFMTIgICAgIDggICAgOSAgIC0xMDE5ICAgIDIxNzUgIC00NjMwICAtMzY5ICAgMzM2ICAgMjIxICAtMjAxICA0MCAgNDAgICAgIDFcbiAgQUUxMSAgICAgOSAgIDEwICAgLTE1MTYgICAgMTI4OSAgLTM5MTkgIC0zNDggICAxOTUgICA2MTAgIC0zNDIgIDUwICAxMCAgICAgMTwvcHJlPlxuICovXG5leHBvcnQgZGVmYXVsdCBhc3luYyBmdW5jdGlvbiBwYXJzZUZyY3NQbG90RmlsZShcbiAgZmlsZTogc3RyaW5nLFxuICBsaW5lczogQXN5bmNJdGVyYWJsZTxzdHJpbmc+XG4pOiBQcm9taXNlPEZyY3NQbG90RmlsZT4ge1xuICBsZXQgdG90YWxMZW5ndGg6IFVuaXRpemVkTnVtYmVyPExlbmd0aD4gPSBVbml0aXplLmZlZXQoTmFOKVxuICBjb25zdCBzaG90czogQXJyYXk8RnJjc1Bsb3RTaG90PiA9IFtdXG4gIGNvbnN0IGVycm9yczogQXJyYXk8U2VnbWVudFBhcnNlRXJyb3I+ID0gW11cblxuICBsZXQgbGluZU51bWJlciA9IDBcblxuICBjb25zdCBlcnJvciA9IChcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgbGluZTogc3RyaW5nLFxuICAgIHN0YXJ0Q29sdW1uOiBudW1iZXIsXG4gICAgZW5kQ29sdW1uOiBudW1iZXJcbiAgKTogdm9pZCA9PiB7XG4gICAgZXJyb3JzLnB1c2goXG4gICAgICBuZXcgU2VnbWVudFBhcnNlRXJyb3IoXG4gICAgICAgIG1lc3NhZ2UsXG4gICAgICAgIG5ldyBTZWdtZW50KHtcbiAgICAgICAgICB2YWx1ZTogbGluZSxcbiAgICAgICAgICBzb3VyY2U6IGZpbGUsXG4gICAgICAgICAgc3RhcnRMaW5lOiBsaW5lTnVtYmVyIC0gMSxcbiAgICAgICAgICBzdGFydENvbDogMCxcbiAgICAgICAgfSkuc3Vic3RyaW5nKHN0YXJ0Q29sdW1uLCBlbmRDb2x1bW4pXG4gICAgICApXG4gICAgKVxuICB9XG5cbiAgZnVuY3Rpb24gcGFyc2VVaW50KFxuICAgIGxpbmU6IHN0cmluZyxcbiAgICBzdGFydENvbHVtbjogbnVtYmVyLFxuICAgIGVuZENvbHVtbjogbnVtYmVyLFxuICAgIGZpZWxkTmFtZTogc3RyaW5nXG4gICk6IG51bWJlciB8IG51bGwge1xuICAgIGNvbnN0IHN0ciA9IGxpbmUuc3Vic3RyaW5nKHN0YXJ0Q29sdW1uLCBlbmRDb2x1bW4pXG4gICAgaWYgKCEvXFxTLy50ZXN0KHN0cikpIHtcbiAgICAgIGVycm9yKGBNaXNzaW5nICR7ZmllbGROYW1lfWAsIGxpbmUsIHN0YXJ0Q29sdW1uLCBlbmRDb2x1bW4pXG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgICBpZiAoIS9eXFxzKlxcZCtcXHMqJC8udGVzdChzdHIpKSB7XG4gICAgICBlcnJvcihgSW52YWxpZCAke2ZpZWxkTmFtZX1gLCBsaW5lLCBzdGFydENvbHVtbiwgZW5kQ29sdW1uKVxuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gICAgcmV0dXJuIHBhcnNlSW50KHN0cilcbiAgfVxuXG4gIGZ1bmN0aW9uIHBhcnNlT3B0aW9uYWxVaW50KFxuICAgIGxpbmU6IHN0cmluZyxcbiAgICBzdGFydENvbHVtbjogbnVtYmVyLFxuICAgIGVuZENvbHVtbjogbnVtYmVyLFxuICAgIGZpZWxkTmFtZTogc3RyaW5nXG4gICk6IG51bWJlciB8IG51bGwge1xuICAgIGNvbnN0IHN0ciA9IGxpbmUuc3Vic3RyaW5nKHN0YXJ0Q29sdW1uLCBlbmRDb2x1bW4pXG4gICAgaWYgKCEvXFxTLy50ZXN0KHN0cikpIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICAgIGlmICghL15cXHMqXFxkK1xccyokLy50ZXN0KHN0cikpIHtcbiAgICAgIGVycm9yKGBJbnZhbGlkICR7ZmllbGROYW1lfWAsIGxpbmUsIHN0YXJ0Q29sdW1uLCBlbmRDb2x1bW4pXG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgICByZXR1cm4gcGFyc2VJbnQoc3RyKVxuICB9XG5cbiAgZnVuY3Rpb24gcGFyc2VMZW5ndGgoXG4gICAgbGluZTogc3RyaW5nLFxuICAgIHN0YXJ0Q29sdW1uOiBudW1iZXIsXG4gICAgZW5kQ29sdW1uOiBudW1iZXIsXG4gICAgZmllbGROYW1lOiBzdHJpbmcsXG4gICAgZGl2aXNvcjogbnVtYmVyXG4gICk6IFVuaXRpemVkTnVtYmVyPExlbmd0aD4gfCBudWxsIHtcbiAgICBjb25zdCBzdHIgPSBsaW5lLnN1YnN0cmluZyhzdGFydENvbHVtbiwgZW5kQ29sdW1uKVxuICAgIGlmICghL15cXHMqLT9cXGQrXFxzKiQvLnRlc3Qoc3RyKSkge1xuICAgICAgZXJyb3IoYEludmFsaWQgJHtmaWVsZE5hbWV9YCwgbGluZSwgc3RhcnRDb2x1bW4sIGVuZENvbHVtbilcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICAgIGNvbnN0IHZhbHVlID0gcGFyc2VGbG9hdChzdHIpXG4gICAgaWYgKGlzTmFOKHZhbHVlKSkge1xuICAgICAgZXJyb3IoYE1pc3NpbmcgJHtmaWVsZE5hbWV9YCwgbGluZSwgc3RhcnRDb2x1bW4sIGVuZENvbHVtbilcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICAgIHJldHVybiBVbml0aXplLmZlZXQodmFsdWUgLyBkaXZpc29yKVxuICB9XG5cbiAgZm9yIGF3YWl0IChjb25zdCBsaW5lIG9mIGxpbmVzKSB7XG4gICAgbGluZU51bWJlcisrXG4gICAgaWYgKGxpbmVOdW1iZXIgPT09IDEpIHtcbiAgICAgIHRvdGFsTGVuZ3RoID0gVW5pdGl6ZS5mZWV0KHBhcnNlRmxvYXQobGluZSkpXG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBpZiAoIS9cXFMvLnRlc3QobGluZSkpIGNvbnRpbnVlXG4gICAgY29uc3QgdG9OYW1lID0gbGluZS5zdWJzdHJpbmcoMCwgNikudHJpbSgpXG4gICAgaWYgKCF0b05hbWUpIHtcbiAgICAgIGVycm9yKCdJbnZhbGlkIHRvIHN0YXRpb24gbmFtZScsIGxpbmUsIDAsIDYpXG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBpZiAoL1teIFNdLy50ZXN0KGxpbmVbNl0pKSB7XG4gICAgICBlcnJvcignSW52YWxpZCBmbGFnJywgbGluZSwgNiwgNylcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuICAgIGNvbnN0IGlzU3VyZmFjZSA9IGxpbmVbNl0gPT09ICdTJ1xuICAgIGNvbnN0IGZyb21OdW1iZXIgPSBwYXJzZVVpbnQobGluZSwgNywgMTIsICdmcm9tIHN0YXRpb24gbnVtYmVyJylcbiAgICBpZiAoZnJvbU51bWJlciA9PSBudWxsKSBjb250aW51ZVxuICAgIGNvbnN0IHRvTnVtYmVyID0gcGFyc2VVaW50KGxpbmUsIDEyLCAxNywgJ3RvIHN0YXRpb24gbnVtYmVyJylcbiAgICBpZiAodG9OdW1iZXIgPT0gbnVsbCkgY29udGludWVcbiAgICBjb25zdCBlYXN0aW5nID0gcGFyc2VMZW5ndGgobGluZSwgMTcsIDI1LCAnZWFzdGluZycsIDEwMClcbiAgICBpZiAoIWVhc3RpbmcpIGNvbnRpbnVlXG4gICAgY29uc3Qgbm9ydGhpbmcgPSBwYXJzZUxlbmd0aChsaW5lLCAyNSwgMzMsICdub3J0aGluZycsIDEwMClcbiAgICBpZiAoIW5vcnRoaW5nKSBjb250aW51ZVxuICAgIGNvbnN0IGVsZXZhdGlvbiA9IHBhcnNlTGVuZ3RoKGxpbmUsIDMzLCA0MCwgJ2VsZXZhdGlvbicsIDEwMClcbiAgICBpZiAoIWVsZXZhdGlvbikgY29udGludWVcbiAgICBjb25zdCBsZWZ0RWFzdGluZyA9IHBhcnNlTGVuZ3RoKGxpbmUsIDQwLCA0NiwgJ2xlZnQgd2FsbCBlYXN0aW5nJywgMTAwKVxuICAgIGlmICghbGVmdEVhc3RpbmcpIGNvbnRpbnVlXG4gICAgY29uc3QgbGVmdE5vcnRoaW5nID0gcGFyc2VMZW5ndGgobGluZSwgNDYsIDUyLCAnbGVmdCB3YWxsIG5vcnRoaW5nJywgMTAwKVxuICAgIGlmICghbGVmdE5vcnRoaW5nKSBjb250aW51ZVxuICAgIGNvbnN0IHJpZ2h0RWFzdGluZyA9IHBhcnNlTGVuZ3RoKGxpbmUsIDUyLCA1OCwgJ3JpZ2h0IHdhbGwgZWFzdGluZycsIDEwMClcbiAgICBpZiAoIXJpZ2h0RWFzdGluZykgY29udGludWVcbiAgICBjb25zdCByaWdodE5vcnRoaW5nID0gcGFyc2VMZW5ndGgobGluZSwgNTgsIDY0LCAncmlnaHQgd2FsbCBub3J0aGluZycsIDEwMClcbiAgICBpZiAoIXJpZ2h0Tm9ydGhpbmcpIGNvbnRpbnVlXG4gICAgY29uc3QgdXAgPSBwYXJzZUxlbmd0aChsaW5lLCA2NCwgNjgsICd1cCcsIDEwKVxuICAgIGlmICghdXApIGNvbnRpbnVlXG4gICAgY29uc3QgZG93biA9IHBhcnNlTGVuZ3RoKGxpbmUsIDY4LCA3MiwgJ2Rvd24nLCAxMClcbiAgICBpZiAoIWRvd24pIGNvbnRpbnVlXG4gICAgY29uc3QgdHJpcE51bWJlciA9IHBhcnNlT3B0aW9uYWxVaW50KGxpbmUsIDcyLCA3OCwgJ3RyaXAgbnVtYmVyJylcblxuICAgIHNob3RzLnB1c2goe1xuICAgICAgdG9OYW1lLFxuICAgICAgaXNTdXJmYWNlLFxuICAgICAgZnJvbU51bWJlcixcbiAgICAgIHRvTnVtYmVyLFxuICAgICAgZWFzdGluZyxcbiAgICAgIG5vcnRoaW5nLFxuICAgICAgZWxldmF0aW9uLFxuICAgICAgbGVmdEVhc3RpbmcsXG4gICAgICBsZWZ0Tm9ydGhpbmcsXG4gICAgICByaWdodEVhc3RpbmcsXG4gICAgICByaWdodE5vcnRoaW5nLFxuICAgICAgdXAsXG4gICAgICBkb3duLFxuICAgICAgdHJpcE51bWJlcixcbiAgICB9KVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB0b3RhbExlbmd0aCxcbiAgICBzaG90cyxcbiAgICBlcnJvcnMsXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsSUFBQUEsU0FBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsYUFBQSxHQUFBRCxPQUFBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNlLGVBQWVFLGlCQUFpQkEsQ0FDN0NDLElBQVksRUFDWkMsS0FBNEIsRUFDTDtFQUN2QixJQUFJQyxXQUFtQyxHQUFHQyxpQkFBTyxDQUFDQyxJQUFJLENBQUNDLEdBQUcsQ0FBQztFQUMzRCxNQUFNQyxLQUEwQixHQUFHLEVBQUU7RUFDckMsTUFBTUMsTUFBZ0MsR0FBRyxFQUFFO0VBRTNDLElBQUlDLFVBQVUsR0FBRyxDQUFDO0VBRWxCLE1BQU1DLEtBQUssR0FBR0EsQ0FDWkMs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
|